ELF>0@>W@8 @"BB QtdPtdPPP$$PPP` PPP0RtdPPP@@6s6s ;Q;; `8d8d d`dd$$XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                     Yo (Yo 99 ii 910ti 9ui :g9 ui :9 P&y :90:ui : 9wѯ $:p1: @:yѯ N:h[:)j:ax:ӯk:d:q :uѯ :e:t):1 y19`si :::ii 9ui :r9ri :ui :`0V` W`p` `(``0`;8`U@`PnH`P`X```h` p`F x` `8 `8 `W `q `@ ` ` ` `@ `P ` ` ` ` ` ` ap a a aP a (ap 0a` 8ap @a Ha Pap Xa `a ha pa xa a0 a@ a a# a$ a ) a+ a0+ a`. a. a1 a 2 a5 a5 a5 a@9 bp9 b9 b< b= b`@ (b@ 0bC 8bE @b0I HbL PbL XbL `b@P hbQ pbR xbT b W bW b[ b` bd b0h bPl b b b bp b b b b b` c` c c0 c` c` (c 0c 8c @c Hc Pc` Xc `c hcpcxc`!c(c)c08cEcRcYcYcic@zcpcc cc`ccd@ddpdP d(d0d8d.@d7HdLPdOXdO`dPhd`ipdxddddd@dpdd d d dd dddd#d#e$e@$e4e@B eI(epM0eQ8e`W@e\He]Pe^Xe_`e_he`pe axeaevePwe`we`xexe0ye`yeyeye@zep|e|e}e`}e}e}f`~f0f`f f(f 0f`8f@fHf0PfXfЃ`fhfPpfxff f`fff0ffff@ffff@fffgPgg`gP g`(g0g@8gp@gHgPg XgP`ghg pgpxgg g g ggg gg &g0&g)gP7g`7g ;gJgJg KhPKhKhKhT hT(hPU0hU8hU@hVHh`h`hh_OhSh`Th Ui]8iXaXiexi miXqi@uit}iԁj=j=jp=jг= j0=(j=0j=8jP=@j=HjP=Pj=Xj=`jp=hjи=pj0=xj=j0=j=j=jP=j=j=jp=jн=jp=j=j0=j=j=jP=j=j=k=k=kp=k= k0=(k=0k=8kP=@k=HkP=Pk=Xk=`kp=hk=pk0=xk=k0=k=k=kP=k=k=kp=k=kp=k=k0=k=k=kP=k=k=l=l=lp=l= l0=(l=0l=8lP=@lЧ=Hl=PlP=Xl=`lІ=hl~=plPv=xln=le=l=>l =>l<>l;>l@;>l:>l:>l`9>lB>l B>lA>l@>m@@>m?>m?>m`>> mG>(m G>0mF>8mE>@m@E>HmD>PmD>Xm`C>`mL>hm L>pmK>xmJ>m@J>mI>mI>m`H>mQ>m Q>mP>mO>m@O>mN>mN>m`M>mV>m V>mU>mT>n@T>nS>nS>n`R> n[>(n [>0nZ>8nY>@n@Y>HnX>PnX>Xn`W>`n`>hn `>pn_>xn^>n@^>n]>n]>n`\>ne>n e>nd>nc>n@c>nb>nb>n`a>n01>n)>n >n>op>o@>o>o= o=@oy>Ho x>Pov>Xo u>`os>ho r>pop>xo o>om>oDoDoDoDoDoooVop pp(pn0pn8pnHpPnXpn`ppp lp5lpKlp^lpvlql(ql@qlXqlpqlqlqlq mqmq.mrDmrRm0r`mHrtm`rmxrmrmrmrmrmrmsm sm8s nPsnhs,ns7nsDnsVnsjns~nsntn(tn@tnXtnptntot,ot>otWotrououo0uoHuo`uoxuououpupu'pu>pvPp vnp8vpPvphvpvpvpvpvqv-qvKqwfq(wq@wqXwqpwxwwqwqwwਨxrxr0xHx0`x,rxx?rxSrxXxnrxrxry yr8yrPyrhyrysyyЩyyy8z1s(zCs@zVsXzpspzXzszszszszs{{0{ȪH{t`{x{$t{2t{>t{{[t{st|t |t8|tP|th|t|t|u|u|'u|=u|Mu}]u(}vu@}uX}up}u}u}u}u}u}u~v~v0~-vH~Fv`~Zvx~uv~v~v~v~v~vv w85wPFwhYwrwwwwwww(w@xX!xp:xQxcxtxЀxxxx0xHx` yxy0yKyhy؁yy0 X8yPyhxyzzȂ2zHz(@bzXupyzzzЃz@zz0@Hz` {x{/{E{U{؄g{~{{ {8{P{h||7|L|ȅh|||p(|@X|p||}&}ІA}Y}t}}0}H}`}x}}~'~؇B~X~ s~8~P~h~~~謨Ȉ0X(x@Xȭp!:TЉp@0Hh`x讨؊0  8P7hGdȋ̀逨(@:XOpjXЌÁ؁0xH `$x@Ujz؍ ̂8肨Ph.HcȎu(@诨Xpу@hЏ部0Hذ`x/Hf}ؐ ̄8܄P@h`ȑر(X( @Xp'вCВ @`0]Hv`xՅㅨؓ 88MP_htȔسÆ܆(@ Xp(XЕش8`0H`x0*B_ؖvX 8Ph҇쇨ȗ%ض>V(t@Xp8XИψ0舨Hȷ`x'ؙBRU g8vPhʉ≨Ț8`(-@XpBи^rЛ@p0H`x蹨ϊ؜ከ !8?PYhuȝы苨HP(`1hGxXr$sˌȞ0؞h匨ຨ (,8J@PfX8hxp`ٍȟПл8)@(P0g@`HX`pxŎَ,༨РFؠ`8x| 0н8HP`ʏhXxྨ(Pȡء珨' 8(`8@P6XhpOg }XȢТҐ㐨(¨08¨@`¨H¨X0`¨pNx¨jȑèУ0èأXèèèޑ Ĩ0+8FHYP(Ĩ`vhx`ĨĨӒĨ풨Ȥؤ1Ia|Ĩ Ũ(@Ũ8@xŨPXŨhΓpƨ铨Xƨƨƨ(Ǩȥ$Х`Ǩ=ǨȨ8ȨpȨȨ(Y0Ȩ@ɨH0ɨXhɨ`ɨpɨxɨʨ(ʨuxʨʨʨЦئ8˨X˨˨Δ ̨0ꔨ8`̨HP̨`ͨh0ͨx"3Aͨ_ͨͨȧ{اΨ̕㕨 (,8A@_PvXh Ψp@ΨhΨΨΨÖޖȨШ0ΨIϨg0Ϩ(0hϨ@HϨX`ڗpxϨШXШШ/GЩШةШaѨ@ѨpѨ 0Ѩ8ѨHPѨ`֘hXҨxҨ ӨHӨӨ'Ȫ?ت`rrЪr r(`r@rXrp`rxrr`rЫr r`rr0 r8H`r`rx rrr rج`rrr `r8r@P rXhrp rr@rȭrЭ`rr`r(r0@`rHXr`prx rr`rЮrخr@rr 0r8H rP`rhx`rrrp 8Ј@HPX`h 0@0@PȰ`аpذЊ (08@HPЈX`h`px`pк0ȱб ر@P`Ц`@{ z088@0HP`X`hЈpxPP@@0  ȲPв0ز0Pp 0z8@yHPPX`hpxЈ @ȳгس0P@` (08HxPx`hhpxp.p..Ј.ȴ`.д ش  0.0 (`0p8@HP@_Xo`ZhXpo00>Јȵеص+@pB0 (08@HPpX`hpmxr0lkNо ȶ0Gж0ضЈP> (08@PHPX`ph`ppxm`ZkPjDȷзط0`0PЈ (`0R8F@HpPX`0hpxP@p`p`mЎiȸ iи`;ȫм@0YЈ (08@0H@PfX_`ПhPp`x@0 p@Pȹй@mعYhg1p @/(P/0/8Ј@HPX`/h/px 0/0 Ⱥ`кpغ0@_nZXPo (08`@ЖH0bPPXЈ`hpxDȻлػp 0p mpq pg(f0@(@HP`X`h0kpxЈ0@ȼмЕؼp (P0m8`Y@@fHeP`(hpxp.p..Ј.Ƚ`.нpؽ@  0.0 (`0p8@HP@_Xo`ZhXpo@P@0tЈȾоؾ`DpP `(08@H0PpX`h0plxre`d XP@ ȿ0}пpؿЈ NJ P(00@8@HPX@`hPppx 0ltc0c p000Ј `(0c8 [@0HP X`ГhpxplXbbp@/P//Ј (08@/H/PpX0` h0p/x0 `p0@_nZXPo  (0008Ј@HPX`кh pxAВpplpa`p (p08@pH0PXЈ`hpx@ `?@`pp`l`X P`(_0@ЬHPXP`h0pxЈpCОp @@pP `(0@l8 s@ _Hp^PP`hpxP0PЈ sn А(0p8@HpP lXv`]h@]pнp0ЈjVЎ (08@HPpX`ЏhPplxW\\0p@P0Ј|@E p(`008@pHPX`hppx0k[Z0@PpH `0Ш 00`8@pHPXphxpx@Ѝ0 ( 08pHحPX`hppР``pP0 @P@p(80 8@0H0P`Phpx h 00Ќp@ (0@HPPX`hxȮ``pЧ0@pPp 0 (08@HX(`hpx0@ЋpXppС `(8@`HPpXP`0px@P@prpЈ (@ H0P@X`0hpxg`p@_ZXh`ssssss(ss@ssXtsp@tststsususyzpPg z @z(08@@KHPbXO`@]h p0x@0gi`p@_ZXh0ipi @i(`i0i@HiPiX i`Pihixspp0!Рq8! F! 0 @(008@HgPPF!X``php`F!x@_ZXht@tstt `t(8t@Pp$xМ$8$ $$h`}$@|$`|$P$$$|$}$@|$0`|$@HPXp`hw$p\!x\!#Z"_$0m$ 0@0g|$`p |$(0@_8#@ZHXPh`h@}$p}$xP}$}$ ~$ }$}$0}$}$`~$}$~$$}$~$0|$~$ }$(}$0~$@@DtPDtXhHpxp %@%ЈpJ% i%`% % 0@0 %(0`8p@H%PX@_`%hZpXxhtt t`ttt@t 0t8HP@(XP(`(h(pЧ(x@|$`|$@(((((@|$`|$0((( ( 0((@|$@`|$`@(0(Щ(( (p08(@%H%PX`hp&px`&(P( 0@0g@(`p@_ZX h08(@(H(PШ(X(hpp(x(((P((P((`((( up* `(((08@H@*)PX`G)`*hp*p x0@0gP)*`p@_ZXhQu(08@pHP*X4*`Јhpx@*P** 0@0@P`p0*(Њ0@ wP`w`wh8xwX@wXwXwwH w,,x,@,`y,,p,,PM, ,,@t,X R,08,@,H`,PR,`ph,pЅ,xa,R,,,@,R,w--@,,,,,PM,  ,(,0@t,8Л,@,P wXhHp+-x2-@,-,-,PM, ,+-@t,Л,,`we-l-@,K- ,(>-0C-8PM,@ ,H d-P@t,XЛ,`,p@wxh--@,0~-,-,PM, ,,@t,u-p{-w -(-0@,8-@,H-P-XPM,` ,h-p@t,x`--@(xp>.@;.9.Ј@:.:.0@. `K.( 008@@H0PX`>.hp`xp@_ZX?.Ox Pxp...`\.(.HP.X.`.hP].x.Qxp.p..Ј.`. .(.0 80@.HP0X`hpx`p@_oZXobxp@/P// Ј(08@H/P/XP/`/h p0x/0 `p0@_nZXPox x8 x@P0X`hpp/xP0п/Ј/0 0n0z0 00/0-0` p(0-08@@_H 90PZXX`@80px/080.0.@0070.0.x(08@pH0P0X`0`Јhpx@0001 000`0`pp0@_ 0(Z0X80HxP`@hpxp`111Ј1110$1 0@0p1 (`0p8@HP@_`ZhXp1xxp11`/1Ј91W1 01(10 80@@HP0X`h 1px`p@_ZXh`oyp0N2N2PM2 Ј(08@HM2PL2XІ2`x2h p0x@0@`2`pP`2@_h2ZXf2@}y (08p@2Hp2P02XЈ`hpx2222 0@002`p@2@_2 Z(X0P2@ yHX8`hppx02132Јp2`%3x3i3 0@0T3 `(p08T3@H@_P]3XZ`XhT3x@pzpp;474`64Ј5454l4^4 0 @(008@HX4PX``phpx@_ZXX4}zp4P|4@{4Ј (z40z484@4H P0X@`h0pxН4`p@_ZX4 zp  5( 50`48Ј@HPX`04h!5p^5xP5 0@0E5`p@_ZXE5  }(8`}@P0X`hppP5xp505ЈЂ5555 0@0@5` p(08@@_PZXX`P5pxp5`5Pt5Ј055`55 0@0 ( 508`@pHPX`@_pZxX`5}@}pP6B66Ј 6(@v60p16846@ H0P@X`0hpx6`p@_ZX#6p6966Ј (08@6H l6P06X`36` h0p@x06`p@_ZX*6 !} (0p86@6H6PЈX`hpx 6Ц6066 0@06`p@_Z X(68"}@P@"}Xh0pxp6P76Ј60B7 7 7 0@0 6(0`8p@HPX@_hZpXx7Hp6@76Ј@687` 7 7 0@ (008@6HP`Xp`hpx@_ZX6)}p`R7^7K7Ј T7(Pm70078`7@ H0P@X`0hpx0~7`p@_ZX@~7@/}pp7 7(70Ј8@HPX@7`@7hP7p7x 0@07`p@_ZX7@2} 08@HpP8X,8` 8hЈpx8<8PK8V8@80@008`p @_0Z8X@8P<}XhHpxpb8u8b8Јp88`88 0@0 8(0`8p@HPX@_hZpXx8 E}p8 88Ј88P 99  (00@8@0HPXP8`h`ppx@_ZX`8O}pP.999 +9Ј (08/9@X9H PP Xi9`0h@px0i9`p@_ZXj9@R}`R}(R}08@R}HX`9h9p9x 999 99099 p99п98@999 9(98@ P0X?` ?h1?pBx BPBBBBBpB0_CBB\CBBBBBB 0WC B  B YC aC( pC0 @B8 pB@ BH BP BX 0B` `Bh Bp ВCx B B qC PcC RC QC B B B  B @B `B PB B PB 0B 0C pB B B B B( B0 TC8 :?@ /?H BP BX P a` dh @Bp 00?x ? B ha B 0? ? B @ a B pX? ? B B B B .a d  IC y? ? B B( @8 ,@  P 0 X E@` F@h p@p Bx  B PB B B B B pB 0_C B B \C B B B B B B 0WC B  B YC aC( pC0 @B8 pB@ BH BP BX 0B` `Bh Bp ВCx B B qC PcC RC QC B B B  B @B `B PB B PB 0B 0C pB B B B B( B0 TC8 @@ BH BP BX B` Bh @Bp Bx B B B B @ B B B B &@ B B B B B B B IC.CsCB B(F@0 J@@KH X8`@h @pPi@xB BPBBBBBpB0_CBB\CBBBBBB0WCB B YC(aC0pC8@B@pBHBPBXB`0Bh`BpBxВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBB B(B0B8TC@@HBPBXB`BhBp@Bx0h@@BB>c @@@BB0@c`@@BBBBBDc IC@p@ B(B8z@ P0XB`BhApBx BPBBBBBpB0_CBB\CBBBBBB0WCB BYC aC(pC0@B8pB@BHBPBX0B``BhBpВCxBBqCPcCRCQCBBB B@B`BPBBA0B0CpBBBB B(B0TC8p%A@BHBPBXB`Bh@BpBxBBBBFABBBBwABBBBBBB ICAAB B0`8 H(PABXBB``BhBp BxPBBBBBpB0_CBB\CBBBBBB0WCB BYCaC pC(@B0pB8B@BHBP0BX`B`BhВCpBxBqCPcCRCQCBBB B@B`BPBBB0B0CpBBBBB B(TC0B8$B@BHBPBXB`@BhBpBxBBB&BBBBBBBBBBBBB IC+B2BBB( 8 @PCH`'CPBXB` BhPBpBxBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@B pB(B0B8B@0BH`BPBXВC`BhBpqCxPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTC B(B0B8B@BHBP@BXB`BhBpBxBBBBBBBBBBBBBB IC.CsCBB@  08C@пCHCPBX B`PBhBpBxBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpB B(B0B80B@`BHBPВCXB`BhqCpPcCxRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCC B(B0B8B@BH@BPPCXB`BhBpBxCBBBBCBBBBBBB ICCCBB͉ (0`C8C@CHBP BXPB`BhBpBxBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBB B(B00B8`B@BHВCPBXB`qChPcCpRCxQCBBB B@B`BPBBPB0B0CpBBBBBBTCCB B(B0B8B@@BHBPBXB`BhBp@CxBBBB CBBBBBBB IC@CPCBB      ( @D0 D8 0C@ BH  BP PBX B` Bh Bp Bx pB 0_C B B \C B B B B B B 0WC B  B YC aC pC!@B!pB!B!B !B(!0B0!`B8!B@!ВCH!BP!BX!qC`!PcCh!RCp!QCx!B!B!B! B!@B!`B!PB!B!PB!0B!0C!pB!B!B!B!B!B"TC"C"C"D "B("`^0"c8"@B@"CH"DP"BX"P^`"ch"'Dp"Dx"B"^" c"C"D"B"B"B"B"^"!c" IC"yD"D"B"B"C#D#C#C#?D #pD(#bD0#hD8#D@#9EH#p:EP#pIEX#CE`#`Dh#0Ep# Dx#D#&E# D#0D#^#_#P_#@L_## ###SF#SF#\E#B$ B$PB$B$B $B($B0$pB8$0_C@$BH$BP$\CX$B`$Bh$Bp$Bx$B$B$0WC$B$ B$YC$aC$pC$@B$pB$B$B$B$0B$`B$B$ВC%B%B%qC%PcC %RC(%QC0%B8%B@%BH% BP%@BX%`B`%PBh%Bp%ZEx%0B%0C%pB%B%ZE%B%B%B%TC%YE% ^E%TF%B%0H)fH)B)]*c* IC*G*дG *B(*B0*5G8*p@G@*KGH*^GP*uGX*`G`*ЅGh*Hp*P.Hx*"H* H*LH*H* H*H*H*H*@H*]*]*)^*^** +*+ BI+?I+ I +B(+ B0+PB8+B@+BH+BP+BX+pB`+0_Ch+Bp+Bx+\C+B+B+B+B+B+B+0WC+B+ B+YC+aC+pC+@B+pB+B+B,B,0B,`B,B ,ВC(,B0,B8,qC@,PcCH,RCP,QCX,B`,Bh,Bp, Bx,@B,`B,PB,B, I,0B,0C,pB,B,B,B,B,B,TC, I,I,B-B-B-B-@B -pI(-B0-B8-B@-BH-IP-BX-B`-Bh-Bp-Ix-B-B-B-B-B-B-B- IC-I-.I- I- I-8- --.`mI.mI.EI.B . B(.PB0.B8.B@.BH.BP.pBX.0_C`.Bh.Bp.\Cx.B.B.B.B.B.B.0WC.B. B.YC.aC.pC.@B.pB.B.B.B/0B/`B/B/ВC /B(/B0/qC8/PcC@/RCH/QCP/BX/B`/Bh/ Bp/@Bx/`B/PB/B/PB/0B/0C/pB/B/B/B/B/B/TC/DI/EI/B/B0Џb0B0@B0@EI 0B(0B00Pb80B@0pIIH0IIP0BX0@b`0Bh0GIp0IIx0B0B0B0B0pb0B0 IC0JI0UI0B0B0mI00wI00 101$J1$J1PI 1B(1 B01PB81B@1BH1BP1BX1pB`10_Ch1Bp1Bx1\C1B1B1B1B1B1B10WC1B1 B1YC1aC1pC1@B1pB1B1B2B20B2`B2B 2ВC(2B02B82qC@2PcCH2RCP2QCX2B`2Bh2Bp2 Bx2@B2`B2PB2B2`I20B20C2pB2B2B2B2B2B2TC2pI20I2B3B3T3B3@B 30I(3B03B83 T@3BH3PIP3BX3B`3Th3Bp3Ix3 &J3B3B3B3B3`V3B3 IC30I3PI3@I3PI32J3&J3@*J30T3T4@T4T4T4U 4kU(4^X04@Y84 GW@4`2VH4PWP4XX4PX`4`Xp4x4 4h44 {J4@{J4PRJ4B4 B4PB4B4B4B4B4pB40_C4B4B5\C5B5B5B 5B(5B05B850WC@5BH5 BP5YCX5aC`5pCh5@Bp5pBx5B5B5B50B5`B5B5ВC5B5B5qC5PcC5RC5QC5B5B5B5 B6@B6`B6PB6B 6PB(60B06yJ86pB@6BH6BP6BX6B`6Bh6TCp6QJx6@vJ60J6B6Z[6B6@B6kJ6{J6B6@[6B6XJ6`J6B6[6B6`J7J7B7B7B 7B(7\07B87 IC@7.CH7sCP7BX7B`7Jh7Jp7Jx7ТJ70J7pJ75\7@[[7~[7 7 777K7K7J7B7 B7PB8B8B8B8B 8pB(80_C08B88B@8\CH8BP8BX8B`8Bh8Bp8Bx80WC8B8 B8YC8aC8pC8@B8pB8B8B8B80B8`B8B8ВC8B8B9qC9PcC9RC9QC 9B(9B09B89 B@9@BH9`BP9PBX9B`9 Jh9Sp9Jx9pB9B9B9B9B9B9TC9J9J9K9B9S9B9J9pJ9L9B:`S:B:@J:pK :B(::T0:B8:J@:KH:BP:BX:B`:Bh:0Sp:Bx: IC:J:`6K:J:J:PK:=L:K:K:~L:PL:~L: L:L:L:L: L;jČ;  ;;(;L0;ЖL8;pL@;BH; BP;PBX;B`;Bh;Bp;Bx;pB;0_C;B;B;\C;B;B;B;B;B;B;0WC;B; B;YC;aC;pC<@B<pB<B<B <B(<0B0<`B8<B@<ВCH<BP<BX<qC`<PcCh<RCp<QCx<B<B<B< B<@B<`B<PB<B<PB<0B<0C<pB<B<B<B<B<B=TC=B=B=B =B(=B0=B8=@B@=BH=BP=BX=B`=Bh=Bp=Bx=B=B=B=B=B=B=B=B=B=B=B= IC=.C=sC=B=B> Ό> >= >L(>L0>pL8>B@> BH>PBP>BX>B`>Bh>Bp>pBx>0_C>B>B>\C>B>B>B>B>B>B>0WC>B> B>YC>aC>pC>@B?pB?B?B?B ?0B(?`B0?B8?ВC@?BH?BP?qCX?PcC`?RCh?QCp?Bx?B?B? B?@B?`B?PB?B?0L?0B?0C?pB?B?B?B?B?B?TC@L@pL@`L@B @@Y(@B0@`L8@@L@@MH@BP@YX@B`@Lh@0Lp@Bx@pY@B@`L@PL@B@B@B@B@Y@B@ IC@PL@L@L@ L@@M@`!MAMA0%MA5MA@5M A6M(A9M0A+M8A3M@A+MHA0/MXA`A pAPAxAP1NA1NA0GMABA BAPBABABABABApBA0_CABABA\CABABBBBBBBBB B0WC(BB0B B8BYC@BaCHBpCPB@BXBpB`BBhBBpBBxB0BB`BBBBВCBBBBBqCBPcCBRCBQCBBBBBBB BB@BB`BBPBCMCPBC0BC0C CpB(CB0CB8CB@CBHCBPCTCXCQM`CEMhCBpCBxCA`CBC@BCPDMC`_NCBCB`CBCDMCp\NCBCpU`CBCMCbNCBCBDBDBD@`DPc D IC(DPM0DM8DB@DBHD`~NPD`NXDN`D NhD `pDo`xDcD0?D DDDnODkOD@NDBD BDPBDBDBDBDBDpBE0_CEBEBE\C EB(EB0EB8EB@EBHEBPE0WCXEB`E BhEYCpEaCxEpCE@BEpBEBEBEBE0BE`BEBEВCEBEBEqCEPcCERCEQCEBFBFBF BF@B F`B(FPB0FB8FN@F0BHF0CPFpBXFB`FBhFBpFBxFBFTCFNFNFuOFBFSFcF@BFNFxOFBFSFcFNFPuOFBGSGcG`NGvO GB(GB0GB8GB@GSHGPcPG ICXGN`GOhG`NpGpNxGOGpOGOG0OG@OGpOGpOG@OGOG@OG@OGЖOG8G GGH9PH 9PH!PHB H B(HPB0HB8HB@HBHHBPHpBXH0_C`HBhHBpH\CxHBHBHBHBHBHBH0WCHBH BHYCHaCHpCH@BHpBHBHBHBI0BI`BIBIВC IB(IB0IqC8IPcC@IRCHIQCPIBXIB`IBhI BpI@BxI`BIPBIBIPBI0BI0CIpBIBIBIBI !PIBITCI0!PI"PI:PIBJBJBJ@BJ0P JdhtBptBxtBtBt?dtBtBtBtBt@dtBtBtBtBtBtBtBt ICtOduXduBuB u0u08uuPundputdxutdu@tdundunduodu tdu0tduodvdvd vd(vd@vdHv@d`vdhvdpv exv evdv0dv dvdvdvdvPdvPdvdvdwP9w9 w@ e(w%e0w&eHwP ePwdXwdpwexw&ew &ew ewdwdw0ZewYew Sewewpew Sexndxod x@g(xPg0xodHxndPxodXxg`xghxodxndxodx"gx"gx"gxp5gxDgxdxЬdx0Agx`$gx@tdx"gx%gyp#gy$g ypUg(yYg0yd8yd@y0AgHy`$gPy@tdXy"g`yUghyp#gpy$gyp5gyDgy@zgy|gy0Agyqgy@tdy"gy%gyp#gy$gyndztdztd z@td(z~g0zg8z`g@z}gHzЂgPzgXzg`z0ghzpgpzgxzgz0gzndzgzgzgztdztdz@tdz~gzgz`gz}gzЂgzg{g{0g{pg{g {g({0g@{ndH{gP{gX{g`{tdh{tdp{@tdx{~g{g{`g{g{0g{g{g{0g{pg{g{g{0g{nd{g{d|0d|g|g|@td0|p5g8|Dg@|gH|gP|0AgX|qg`|@tdh| gp|gx|p#g|$g|9h|9h|8h|8hX}8h`}8hh}h}p9h}9h}h} h} h}h}Ph}h}`9h}9h}h}h}h}h~`h~h ~P9h(~9h0~ h8~ hP~@9hX~9h`~` hh~ h~09h~9h~ph~ 9h~9h~h~h~ h~h~ph~h~h9h9h hh @ h(8h08hHGhPGhX:hpFhx Ghhh hhphh:h Ph0PhphPhPPhIh0Ghhh `h(h@PhH@PhPhX0Hh` hhhpphxPHh Ih{h{hh`Ph hhȀphЀh؀h8h 8h(hHhPhXh` hhPhp8hx8hh hhhPh hhȁ8hЁ8h؁hh`h`h(i@iXЧd``dh Se@  p0 @p ȂPp@uȅ ؅` >0%( p0 |>`>h>p>x`~>@;|$>@tdȆ>e@!`>%0|;p p|$(08>@%HX>`>hx`>0<p%P<@>>Vu@>|$(;0>@Xph p@1N>>`>@ >Ȉ@؈Wu>:<@(`%8<@@>H@>PP^<h(p> >h>p(> Itȉ0eЉ>؉>mu@|$ `>8 ,@ >HpPe`hhex@YuP% r>@H;|$Ȋ`>sp!$(: P00_<80H>Xhp`[ux@}>uH P@`Ԩx `Exxǩfപ x8RPhp2@H^s(ȸ@άXHOpt Q(0xH5`xcjh wh W8P`Ъ88H u 8Phȫ(@XpЬ0H`xح 8PhȮ(@Xp 8Php0H(XpHh0@x8p00HH 800 80( #8'*-0h47;=PADGJNQTWZ]0`Hc@f8i0l(o r(u0H`ث PhȬ(ȯЯد(0Xuuy|||}}@}H}P}0(@ XHh`(`0H`xX'`hL LLL0L(8rXrr 0(0:8/@6HPX`1h p( p08 Ѕ (8!@$H&P(X+:;BDІG؆HQ0[Papjlpw{ȇЇ؇ 8HP`xЈ 0X`x $&((008XKpNTVYfЊn؊owy(@P`@e (08@H P X `hpx"Ȑ#А%ؐ)*,-./234 5(60788@9H<P=X>`?h@pAxCEFHIJKLMNȑOБPؑRSTUVWXYZ \(]0^8_@`HbPcXd`ehfpgxhikmnoqrstȒuВvؒwxyz|}~ (08@HPX`hpxȓГؓ (08@HPX`hpxȔДؔ (08@HPX`hpxȕЕؕ (08@HP X ` h p xȖЖؖ!"#%')* +(,0-8.@1H2P3X4`5h7p9x;<=>?@ABCDȗEЗFؗGHIJMOPQR S(U0W8X@ZH[P\X]`^h_p`xabcdghijklȘmИpؘqstuvxz{| }(~08@HPX`hpxșЙؙHHY HtH5%@%h%h%h%h%h%h%h%hp%h`%h P%h @%h 0%h %h %h%zh%rh%jh%bh%Zh%Rh%Jh%Bh%:hp%2h`%*hP%"h@%h0%h % h%h%h%h %h!%h"%h#%h$%h%%h&%h'p%h(`%h)P%h*@%h+0%h, %h-%h.%zh/%rh0%jh1%bh2%Zh3%Rh4%Jh5%Bh6%:h7p%2h8`%*h9P%"h:@%h;0%h< % h=%h>% h?% h@% hA% hB% hC% hD% hE% hF% hGp% hH`% hIP% hJ@% hK0% hL % hM% hN%z hO%r hP%j hQ%b hR%Z hS%R hT%J hU%B hV%: hWp%2 hX`%* hYP%" hZ@% h[0% h\ % h]% h^% h_% h`% ha% hb% hc% hd% he% hf% hgp% hh`% hiP% hj@% hk0% hl % hm% hn%z ho%r hp%j hq%b hr%Z hs%R ht%J hu%B hv%: hwp%2 hx`%* hyP%" hz@% h{0% h| % h}% h~% h% h% h% h% h% h% h% h% hp% h`% hP% h@% h0% h % h% h%z h%r h%j h%b h%Z h%R h%J h%B h%: hp%2 h`%* hP%" h@% h0% h % h% h% h% h% h% h% h% h% h% h% hp% h`% hP% h@% h0% h % h% h%z h%r h%j h%b h%Z h%R h%J h%B h%: hp%2 h`%* hP%" h@% h0% h % h% h% h% h% h% h% h% h% h% h% hp% h`% hP% h@% h0% h % h% h%z h%r h%j h%b h%Z h%R h%J h%B h%: hp%2 h`%* hP%" h@% h0% h % h% h%h%h%h%h%h%h%h%h%hp%h`%hP%h@%h0%h %h%h%zh%rh%jh%bh%Zh%Rh%Jh%Bh%:hp%2h`%*hP%"h@%h0%h % h%h%h%h%h%h%h%h%h%h%hp%h`%h P%h @%h 0%h  %h %h%zh%rh%jh%bh%Zh%Rh%Jh%Bh%:hp%2h`%*hP%"h@%h0%h % h%h%h%h %h!%h"%h#%h$%h%%h&%h'p%h(`%h)P%h*@%h+0%h, %h-%h.%zh/%rh0%jh1%bh2%Zh3%Rh4%Jh5%Bh6%:h7p%2h8`%*h9P%"h:@%h;0%h< % h=%h>%h?%h@HLHLHLHLHhMt$(HFI|$HuYM\$I<$1JI<$ID$ID$H9}u2H@HHL3L/ LǐHMu( HHH}ILHwLHHHaHH`HxH;HsL[HcLKHSH}wL2L:L"H*H}HtlLLLLLLLH}wLLH}rwLLH}YwLHH}@wLxHH}'wL_HgH}wLFLNL6H>H}vLL%H}vLH H}vLHH}vLLH}vLLH}hvLLH}OvLHH}6vLnLvL^HfMtL詿H}Ht蛿HCH H"=HHH}Ht^Mt H}LH}HtLLH HtLH HtLH߾ +LHZMt$(H8I|$HuYM\$I<$1JI<$ID$ID$H9}u2H2HHL %L/LǐH{ I9t{xLH;HtH}HtH}HtLLHH}HtLH}Ht̽H}Ht辽LfH}Ht訽HPH}Ht蒽L:H}Ht|L$H}HtfLH}HtPHH}Ht:HH}IL9tH}HtLH}HuHPH}HH9tLXH}IL9tlH8HpHH9tPLXH}IL9t6H>H}IL9uH)H} LH}IL9tHhH}HH9tHpIL9tLH}IL9tLhH}IL9tHpIL9txLLHIL9tSHHH9t>LFMtL艻LM辀HHhyHHtLH}HtBH}HtH}HtLH}HtLH}HtH}HH9tLH}HH9tlH}HH9tXH=9 HRH}HH9t0H}HH9tH}HH9tH}HH9oeH}HH9TJH}HH99/H}HH9H}HH9H}HH9iH}HH9NH}HH93H}HH9H}HH9|rH}HH9aWH}HH9FHFiHIL9tH0HH9t|LGϣHHHhLH0IL9HHuTHhH0IL9HHtJHIL9,HHu*HRhHH0HH9t&HHuLH hLH0IL9tNLHIL9t2H:腢HXHtrH߾8L H}IL9tH}Ht:LH}IL9tH}HtLHp9LL $LH}IL9tjH}Ht輡HdHHsHfH`IuH9t#LH@IL9tLH IL9tLHHt2LHHtHL DLLHIL9tH8HtϠLwLHIL9tKH8Ht蚠LBLH-HHHHHLHH6,HHtHJeH`MUL9nnH8HH(eH`HH9t_LLxHIL9t@LH@IL9t$H,H(dH`HH9tLQlL(HIL9tH8Ht"H(VdHXHdZHPMvL9AAH(dH`HH9t`LH8Ht觞H(cL(HIL9HPMnL9tHHPH8Hu4L{cH`HH9u#LHIL9oo H(5cH8HtߝH(c H(cHxH`HH9tIHHH9t4LHHHbLpHIL9tHIL9tLxHIL9tLHHH9uhMH(HtsL'bLPHIL9tgjHHt豜LaBH IL9DDHINH9tHIUH9tHHLHIL9tLHIL9tLHIL9tHH 8LaHMvL9t]LHH0IL9ATL`H@HPHH9tHMNL9tHH` L`L@HPIL9uHXHLZ`HIvH9tHHH0HH9tLL`L@HPIL9UUHXHt訚L_L_H@HPHH9L_L_HINH9Lt_L@HPIL9 HHL#_L_HXHuDL^HM^L9DHIVH9&|L^L@HPIL9L^L^Lv^Ll^Lb^L@HPIL9L5^H@HPHH9auWL^L@HPIL94H*L]HIvH9t!HXHu,H(I}NHHHXHNDHMfL9t몾 L^H߾LLHIFH9ukLHPIL9\lRHIMH9NNDHMML9t4HHL\HMvL9tL@HPIL9tL(H0IL9LY\;HHL2\0L%\L\H8Ht–L[L[HPIL9t;HMvL9&9L[H@HPHH9L[L@HPIL9L`[BLS[LF[L9[L,[uL[hL[[L[uLZALZ[LZNLZH@HPHH9LZL@HPIL9LwZL@HPIL9LJZL@HPIL9vlLZfLZYHHL8HpIL9t=HEH@H}HH9tH}HtnHHL@H}IL9tH}Hx,nHhHtL@H}IL9tH0H}HH9,"H@H}HH9tbH}H谓HHLH}IL9tLLH0XH8H}HH9tLH}IL9tH(XGH0H}HH9uH0( H}IL9tlHxHo跒eH0OHHt+H3HHHH9tHIL9tHIL9tHIL9tHHpHH9tLH0IL9tLHIL9ttLHIL9tXLHIL9tMHIL9t&L.LNHHhqXHHtLH}HHMH}1HDLH}HEHEI0L9t蛺H`HugHXHPH1HHPHDžhHDž`H0H9t@HHL'0LDL/ L뇐L0H}IL9tHHHtPMtLCH7nHpHtƹHPHt赹LH}HtLH}Ht밐H}HH9ttLHpIL9t\H(HPHH9t@HH0HH9t$H}IL9tHH}HH9tLH=褵H}HH9tиH}IL9uH}HH9uaLH}IL9t蟸HpIL9t芸H(HPHH9XXH}HK踆ANH}Ht螆HFH}Ht舆H0H}HtrLHHuBLKHIL9tHH IL9tķL뷐H߾GLH߾1LH}HtzHuLTLvH}HtXL`HuL;H t H 莅H`HtH%H}HtLH(I|$;HXI~;LHH(Hm;HXI|$\;L贿H}HtL螿H}HtL舿H}HtʄH}Ht輄LdH}Ht覄LNH}Ht萄L8H}HtzH"H}HtdH MtLOHILMtL1HiILѾHHtHIL9t蚵LpHIL9t~LxHIL9tbH(I~:LZLxݵHEHIL9t L(HHtgLHIL9mcH}IL9tδHֽL(YHHMH}HH9t蚴L袽H}Ht脴L茽L8HwHHt赂H`GLH0IL9t-LHIL9tHHHH9tLxHIL9tٳHpHHH9t轳LżHHtHHe[HINH9BBHIFH9))HHt襁H`FHH3HFHPH`HH9tLXH@IL9tLHH IL9tȲLлHxHtHHH9LLPH`IL9t|LXH@IL9t`LHH IL9tDL(HIL9t(H0HM~L92(HHHEHPH`HH9tαLXH@IL9t貱HHH HH9t薱L螺Lp!L艺HHtHpHHtHDHPH`HH9t+LXH@IL9tHHH HH9tLHHt:H HHH9t辰L(H`IL9t袰H@H@HH9t膰L莹HHHt~HLDHPH`HH9BHHHHLCHPH`HH9HHtL~LHHt3~HMhCHPH`HH9t謯HXH@HH9t萯LHH IL9ttL|HHt}LcHH}HH}z}HHtd}L W}MHHHHLmBLPH`IL9R譮HHHHt|HL,BLPH`IL9-l#HH||kHHY|OHIvH9;1HH!V|L|HxH(2|H}Ht|H8H}HH9t襭HpIL9t萭HPIL9t{H胶H}HH9taLHpIL9tG뵐HHt{LHIL9tLHHt^{L@HH0HH9tڬHHu6H`@H0INH9uxH߾H>L覵zHHHH9tsHXH++HHuAH?H0IL9t1LHPIL97lzHHtYzH?H0IL9HHt#zHW?HH2H6?H0IL9t聫LHIL9teHHHH9tILHpIL9t-LHPIL9tHH(HH>LH0IL9tѪHHHH9t赪HHHH9t虪LHIL9yHHtxHIL9JHHu&H=H0IL9tznxHXHcWxYHHurHz=HIL9tũH0HH9t谩LCHXHwHHwwwjHHu+H<H0MT$L91wHHHH9t HXHTwHHHs<HH0HH9U賨KHHu+H6<H0M\$L9|vvH߾pLHXHvHHu;H;LH0IL9UvKv뾐L;HIL9t˧HHHH9t诧LpH`IL9t蓧LXH@IL9twL`H IL9t[HcHHtuL:HMD$L9t$HhHHH9UUHHtSuL:HIL9t֦HHt#uL[:H M~L9ts衦lHHL':LHIL9tkLHIL9tOLHIL9t3LxHIL9H9HIL9tHIL9%%HHHX9HIL9t裥HHuYL-9HIL9FtHHtIXH}HHt'XH[|HJH8H0HH9t胉LHIL9tgLoHHtWHHHtWL7HHuALLHPIL9tH0HH9tL5WHHt"WHV HHH0HH9t蓈LHIL9twLLLHPIL9tKH0HH9t6L>HIL9tHXHthVHHIL9tHXHt:VLLjHXHtVL輐HIL9t藇HXHtUL莐HHtULHIL9tKHXHtULBH}HH9LHpIL9t L(HPIL9tLH0IL9tцH}IL9t迆HǏH}HH9t襆L譏H}HH9t苆L蓏H}HH9tqLyH}HH9tWL_H}HH9t=LEH}HH9t#L+H}HH9t LH}HH9tLH}HH9tՅLݎH}HH9t軅LÎH}HH9t衅L詎H}HH9t臅L菎H}HH9MH}IL9tYHpIL9tDL(HPIL9t(L0H}HH9tH}IL9tLH}HH9tLH}HH9tȄLH}IL9t賄H軍H}HH9t虄L衍茄H}HH9tuL}H}HH9t[LcH}HH9tALIH}HH9t'L/H}HH9t LH}HH9tLH}HH9tكLH}HH9t迃LnjH}HH9t襃L譌H}HH9t苃L蓌~XH}HH9tgLoH}HH9tMLUH}HsQiH}HtQL(H}HtjQHH}HtTQHH}Ht>QLH IL9tLɋHHtQL@HIL9t苂H蓋H߾L}H@HH9tWMH IL9t?HHHH9t#HHHH9tHHHH9tHH(HHHXHmHHHVL變LHIL9t肁LHIL9tfLH`IL9tJHH@HH9t.LH IL9tHH(HHHXHHHH}HHHfHHHOH觉HHHH9tzLHIL9t^LHIL9tBH(I~HXI}L*LHIL9tLHIL9tHIL9tHH(HfHXI~VL讈LHIL9tLHIL9tfLHIL9tJHH(HHXI~L+H}HH9tLH}IL9t~HH}HH9t~L܇H}HH9t~L‡LEH譇H}HH9t~L蓇LL~H$HH9tX~MHL$@H$HH9t:~LBH$ IL9t~LL$8H$IL9t~H$HH9t}MH$Ht2LH$HH9t}MHMH$ IL9t}MsH|$XHtKHH$XHtKLt$`H$IL9E}H$XHtKH$PM~L9t}H$HutLH$IL9t|H$XHr1KhH$PIvH9t|L\$hH$IL9t|H装JH(HtJH(HtJHHHH9tL|HHpHH9t0|L8H(H HH9t |H(H HH9t{HHv9JlL(H IL9t{HH@J6L HIL9~{H(HIHXHu1H(L HIL9'{}IL(H IL9zH(HtEIH(Ht2IHHHH9tzHHpHH9tzH袃H(HtHH HH9tjzLHXHtHHL L(HIL9\)zRL(HIL97z-H HH9tyLHH2HH HH9tyLH HH9tyLHHGH LHIL9tZyLHHpHH9t;yHHPHH9tyH'H HH9uH(HtTGH qH HH9txLHHhG^H(Hu_HL> LHIL9,~x"H(HuH(HtFH FH HH9t.xLH HH9txL:H HHtKFL HIL9twHIL9twLHHtFL8 HIL9twHIL9tnwHvHHtEL HIL9t8wHIL9t#wL+HHtiEL LHIL9tvHIL9tvHHHtELO LHIL9tvHIL9t~vLHHtDL LHIL9tAvHIL9t,vL4HHL HHH9tuHIL9tuL~HHt)DLa HHH9tuHIL9tuL~HHuDL HHH9tfuHIL9tQuLY~C+CH IL9t#uHHtrCL~H IL9ttHHtDCL}H}IL9ttL}H}HtCL}H}IL9ttL}H}IL9ttL}H}HtBHr}H}IL9tPtLX}H}HtBLB}H}IL9t tL(}H}IL9ttL}H}HtPBH|MtL;BHsL|H}Ht*B#H}IL9tsHHHtAH8H}HH9t~sH HpHH9tbsH(HPHH9tFsLN|H}IL9t,sHHHt{AH}HugAkH}H^PATH}HG9A=MtL'AH_L{H}HtAH}IL9trL8HpIL9tzrHPIL9terLm{H}HH9tKrMLHrHA{XLrH}IL9trH{ LrH}rǾL}r븐LmrH}IL9tqHzH}Ht@H}HH9tqLzH}HH9txqLzH}Ht?H}HH9tNqLVzHh8qH=zH}HH9tqL#zH}Hba?XH}HKJ?AH@H}HH9tpHPHtpHyH@H}HH9tpLH}IL9t~pHHHpHH9tbpLH}IL9tGpwL(pH=yH@H}HH9Jp@L@H}IL9(oL@H}IL9oLXZpLxLEpHxHHt=L#HIL9tnoHIL9tYoHHHH9t=oHExHHt=LHIL9toHHJLHIL9knaHHt=LVHIL94n*HHL HpHHH9`nHHt<LHpHHH9"nH IL9tnHHS<HHuzLzLpHIL9QmG<#<HHu7L-LpHIL9mm;|;H IL9tAmLIvHHt;LLHIL9tmHIL9tlLuHHt6;LnLHIL9tlHIL9tlHuHHt:LHHHH9t`lHIL9tKlHSuHHt:L LHIL9tlHIL9tkHuHHt@:Lx LHIL9tkHIL9tkLtHHt9L& LHIL9tjkHIL9tUkH]tHHt9L LHIL9tkHIL9tkL tHHtJ9L LHIL9tjHIL9tjLsH IL9tjHHt8LsHHt8L HHHH9tFjHIL9t1jL9sHHtx8L HHHH9tiHIL9tiLrH IL9tiLrHHt8L@ LHIL9tiHIL9toiLwrHHt7L LHIL9t2iHIL9tiH%rHHtd7L HHHH9thHIL9thHqHHt7LJ LHIL9thHIL9tyhHqHHt6L HHHH9tdHHt})HHtl)Ld)HHtZLcHHtZHiZIHI* I Lvf LZHg H| sHCf HHtbZHjcHNZH| L(L-YIM}L I~ LIEH I` IT IULHPI6 I* H(L(.HPHtYH HvYH | HPHtWYH H'Hd H}HtYL"bHuH@rH}HtXLaH}HtXLaH}HtXLaHuH@ H}HtXLaH}HtXLaLWHapLYH}HtYXHHH8 HHt5XHxfH I9tXH` HP M"H0 H L MtLWH HtWH HtWH}fHL`pL3X'LWHHt%L}`HAhHi`HHt%H}Ht%L@`H}Ht%H*`H}Htl%H`H}HtV%L_H}Ht@%L_H߾HkWL_H߾XUWL_H߾ ?WL_HnPMt$([HL^I|$HuYM\$I<$1JQI<$ID$ID$H9}u2HF_H]HPLV9[L/VLVǐ  H}HtUL^H}HtUL^H}Ht&$L^H}Ht$L^H}Ht#H^H}Ht#L^H}Ht#Lv^H}Ht#L`^HHt#HHt.UHHtUL%^HHtd#HHtQ#HHt>#H}HH90MHpIL9tTL HPIL9tTLH0IL9t{TH}IL9tiTLq]H}HH9tOTHpIL9t:TH}IL9t(TL0]H}HH9uqLHpIL9tSH}IL9tSH\H}HH9uxMHpIL9tSH}IL9tSL\SH}HH9uxMHpIL9tvSH}IL9tdSLl\WSH}HH9u9LHpIL9t0SH}IL9tSH&\S SH}HH9tRHpIL9tRH}IL9tRL[H}HH9tRL[H}HH9tRL[H}HH9tRL[H}HH9tgRHpIL9tRRH}IL9t@RLH[H}HH9LH}IL9tRHpIL9tQL HPIL9tQHZH}Ht+ LZH}HH9tQLZH}HH9LHpIL9tQH}IL9tnQHvZH}HtL`ZH}HH9t>QHpIL9t)QH}IL9tQLZH}HH9tPH}IL9tPLYH}HH9tPLYH}HH9tPLYP PtPH}HtHYH}HtLtYH}HtL^YHLPH}Ht3PL;YHLPH(HtkH L YH(HtIH LXH}H&HPIL9tOLH0IL9tOHXH}IL9tvOLHpIL9tZOHPIL9tEOH}HtHH}HH9tOH}HtlHXOLHIL9tNHHtNLWH}I^H9tNHHpHH9uH(&OHHujL HIL9t[NLcWH(HtH IL9t+NHIL9tNLWi돐H}IL9tMHVH}IL9tMLVH}IL9tMLVH}IL9tMH}IL9tMLVH}IL9tzMH}IL9thMLpVH}IL9tNMLVVH}IL9t4MHLGH}HH9t>LGH}HH9t>LGH}HH9t>LGH}HH9t>LGH}HH9MH}IL9tQ>HpIL9t<>L(HPIL9t >L(GH}HH9t>LGH}HH9t=LFH=:H}IL9t=HFH}HH9t=LFH}HH9t=LFH}HH9tx=LFH}HH9t^=LfFH}HH9tD=LLFH}HH9t*=L2FH}HH9t=LFH}HH9tL}6L>H08 L>LxL5J5IIL I H>HIL9tq5HHHH9tU5L]>L HM>HIL9t(5LxH54IHHs Ig H=HHt>LHIL9t4HHHH9t4yHHtL( HIL9tq4뭐LH`IL9tR4HMFL9t=4LL 3I$IL I$z LHIL9t3HHHH9t3HHHH9t3H1HHHHH9t"1L*:u HHt_ HP H@HHH9t0LHHIL9t0L9LPH IL9t0L9HPH HH9ts0L{9LHHIL9tO0LPH IL9t30L;9LPH IL9t0L9HHHHH9t/HPH HH9t/L8LHHIL9t/HPH HH9t/L8LPH IL9tk/Hs8LHHIL9tG/HPH HH9t+/L38HPH HH9t/L8LHHIL9t.LPH IL9t.L7HHuLHPG L@HIL9t.HHHHH9to.Lw7 HHt HP L@HIL9t'.LHHIL9t .L7HHHP L@HIL9t-LHHIL9t-L6HPH HH9t-H6HHHP H@HHH9tK-HHHHH9t/-L76 *HHuVHP L@HIL9t,LHHIL9t,L5 H LHHIL9t,HPH HH9t|,H5LPH IL9tX,L`5LHHIL9t4,LPH IL9t,L 5HPH HH9t+L4HHt; HPo H@HHH9t+LHHIL9t+L4LPH IL9ts+H{4LHHIL9tO+HPH HH9t3+L;4LHHIL9t+HPH HH9t*H3HHt: HPn oLHHIL9t*HHt*H3HHt HP H@HHH9t[*LHHIL9t?*LG3HHuLHP追 L@HIL9t*LHHIL9t)L2: LPH IL9t)H2LHHIL9t)LPH IL9t|)L2H߾*Lo2H}IL9tM)HU2H}IL9t3)H;2H}IL9t)L!2H Ht)H|$HY$L1H}Ht(H}Ht(H1HM(I$HH I$ L1L H1L (IIL I LV1L LF1H}Ht((L01H}Ht(L1H}Ht'L1H}Ht'L0LHIL9t/'(HHO(HH(HHHHt'L0H((Hv0LHIL9tJ'HIL9t5'HIL9ZHX'L0Ln L0HHt&L/LE L/H}Ht&H@Ht&H Ht&H/H}Ht&HHtv&L~/H}Ht`&Lh/HuHH@Ht7&H?/H Ht&Hz$LV$H Ht%HW$L.HJ L.Lc%IIL$ I H.HIL9t%L.HIL9tn%Lv.HIL9tQ%HY.H $IHH I L'.H L.H`IL9t$H(HHH9ubL8L d$IIL% I MtL$LPHIL9t$H-s$HMML9t\$L8L#IIL I HH?t 5HHVZ LL8HIL9>#4HH$ HHH9t#LL0HIL9uL HHH9t`#LH( L "HIL HL yHHH9LHHMHHH9t"LHMfL9H`HKH9t"LHMuL90"&HH H`HCH9tS"LHMmL97"HH} H8HHH9T!JHLX GHHt2 L@H \!IHH I H`IL9t!HHH9tr!LHHH9tX!LHH 4!.HIUH9!H@HHH9UH`IL9 HHH9_UHHN DH0 H}Ht H)H}Ht Lr)H}Ht L\)H}Ht> HF)H}Ht( L0)H}Ht L)H}HtL)H}HtL(H}HtL(H}Ht L(H}Ht L(H}HH9tL(H}HH9tpLLHpIL9tQHPIL9t<HIL9t'LxHIL9t LHIL9tL0HIL9tH@HPHH9tHPH0HH9tLhHIL9tLpHIL9tcLHIL9tGH(HpHH9t+H8H0HH9tLHHIL9tL`HIL9tLXHIL9tLHPIL9tHHHH9tHHHH9tgLHpIL9tKLHIL9t/LH0IL9tH}MvL9tH &H}IFH9tH%H{8HtH{ HtHLLR$Hq$Hpq$HHtH%HHt HL HPHtPHHt HL /H{8Ht"H{ HtHL LAR$H5q$H@HtH$HHtH{8HtH{ HtHMLP$H@HtL$HHt HM HHtRHHt?H`Ht.H@HtH Ht HHtHHtL#HHt1 HM& HHtH`HtHMLR$ǐH}Ht~L#H}HthLp#pLMH}HH HH HHh I9HP (H0 H H H 聸H HtHL"LH"ciouLLIL@$HB*Lj"L%SqIIL(LH IHH(LL L!I`IIL HL9tIX;$^LpIIL H_IHH @HHHIXIHHHL9KH}Ht8L@!HHtL'!H}Hti L!H߾L H߾8}L H߾gL H߾HQL H߾;L H߾%L H߾Lw H߾La H߾XLK H߾ L5 H߾(L H!ILH;HHCHHHMt$(HzI|$HuYM\$I<$1JI<$ID$ID$H9}u2HtH,H4LLgL/?L5ǐH}Ht$L,H}HtLH}HtX LH}HtB H}Ht4 HH}Ht LH}Ht HH}Ht LH}Ht LH}Ht HnH}Ht LXHHukHLѨ HIL9tHIL9tHH HH9tHHt9 L, H@H0H9tL〽8tH HdZHHuyHL HHHH9tWLHIL9t;HCH HH9tHHtm L` H@H0H9tL〽8fH HVLH}Ht LhL9euTHht HhLXL;uuHXt HXjHrI>HtUII<$HtAI뒐HpI0L9t%hy'HPHt HHugL蕦 LH0IL9tHHH9tLHXHt HXHt HIL9tzHH}HH9t`LhH}HH9tFH}IL9t4L<H}HH9tL"H}HH9tLH}HH9tLH}HH9tLH}HH9tLH}HH9tLH}HH9t~LH=f*H}IL9tXH`H}HH9t>LH}HH9t'L/H}HH9t LH}HH9tLH}HH9gMH}IL9tHpIL9tL(HPIL9tLH}H H}HH9tcLkH}HH9tILQH}HH9t/L7H}HH9tLH}HH9tLH}HH9tLH}HH9tLH}HH9tLH}HH9tLH}HH9tyLH}HH9t_LgH}HH9tELMH}HH9t+L3H}HH9tLH}HH9tLHpIL9tHPIL9tL H0IL9tL(H}IL9tHH}HH9t{LnH}HH9tWL_MtL LIH}Ht L3H}Htu HH߾LHpI0L9t hy'HPHt HHugLQ LH0IL9t HHH9t LHXHt HXHt HIL9t6 H>H(Ht} H赠 LH(Ht[ H蓠 LHpIL9t L8HPIL9t HH}Ht H}IL9t HpIL9t| H}IL9th H߾8 LaH}IL9t> L0H}IL9t% H(HpHH9t L HPIL9t HH}Ht7 H(HpHH9t 뮐LI LH}Ht H`H}HH9tz LPH}IL9ta LiH}Ht H`H}HH9t2 H}IL9t L(H}Htj L( HH}HSA ILo LH0V HLA HH`H}HH9t LH}Htj HrL8 H]H Ht< H ^$H:$L,H}Ht HMtL HHXHt? H}IL9t LH}IL9t LHpIL9t L LIMtL LyH}Ht[ H}HtK HpHt: LBH%X H}IL9t HH% HxHtS H}IL9tH}HH9tLHxHt HxHt H}IL9tH}HH9tLHxHt H}HH9tRLZH}HH9t8LLHpIL9tHPIL9tHIL9tL0HIL9tL@HIL9tLPHIL9tH`HPHH9tHpH0HH9tcLHIL9tGL(HIL9t+L8HIL9tHHHpHH9tHXH0HH9tLhHIL9tLHIL9tLxHIL9tLHPIL9tgHHHH9tKHHHH9t/LHpIL9tLHIL9tLH0IL9tH}MvL9tHH}IFH9tHH}HtH@HtH HtwHH}HtaHHtPLXH}Ht:LBHuH҉H@HtHH HtHX$L5$H HtH6$L LH pLM<H}HtH Ht}Hx HtlHX I9t[H@ H H \H H ɢH HtH0vL LLIL*$LH HIL9tIX%$HIL9tH}HtL H}Ht L HHtgLo H% I|$HupM\$I<$1JI<$ID$ID$H9}tH HMt$(H HLL/L{I<$HtL H}HtH HHH9tL HHH9tlLt HHH9tOLW HHH9t2L: HHH9tL HHH9tL HHH9tL HHH9tL HHH9tL HHH9tL HHH9tgLo HHH9tJLR HHH9t-L5 HHH9tL HHH9tL HHH9tL HHH9tL HHH9tL HHH9tL HHH9tbLj HHH9tELM HHH9t(L0 HHH9t L HHH9tLHHH9tLHHH9tLHHH9tLHHH9tzLHHH9t]LeHHH9t@LHHHH9t#L+HHH9tLHHH9tLHHH9tLHHH9tLHHH9tLHHH9tuL}HxH}HH9tSH}IL9tALIH}IL9t'H/HHH9t LIIL[ IO LH? LHHH9tH=BHHI I LH LH}Ht`H}HtRHpHtAHIH}Ht+H}HtL%H}HtH}HtLH}HtH}HtLH}HtH}HtLH}IL9tHH}IL9t|LH}HtfH}HtXL`H}HtBLJH}Ht,H}HtL&H}IL9tH}IL9tLH}HtH}HtLH}HtLH}HtHH}HtLH}IL9trH}HH9t`LhH}HH9tFLNH}IL9t,H}HH9tL"H}IL9tH}HH9tLH}HH9tLH}HtHH}HtL%  L0HPIL9L% IID$H̗ I L@IT$HpI街 I蕗 H-%  HHtH HIL9tLXH07 L%XkL0HPIL9%L LHIL9tqH=HHI$– I$赖 LML襖 L=HIL9tHIL9tHIL9tLHHtHHIL9tHHPHH9tHH0HH9uWHI$HCHҕ I$ŕ ILcLp讕 I袕 L:%HIL9tHpIL9tLLY LHHtLH0 HQ_HHH9tHIL9tLHHtqLyLє HiHHH9tDLLHIL9t'LHILy Hm LH}HtLH}HtwtH}HtLH}HtLH}HtLH}HtvL~H}Ht`LhH}HtJH}HtLFH;Ht)L1H;HtLH}MVL9tLH}IVH9tHH}M^L9tLH}INH9tLHHtLH}Ht|LHLMt$(H*I|$HuYM\$I<$1JI<$ID$ID$H9}u2H$HHLL/LǐH;HtLH;HtLH;HtLH;HtLH;HtLH;HtlLtH;HtWL_H;HtBLJH;Ht-L5H;HtL H}HtL H^| LH}IL9tH}IL9tMHpHH9tHPIL9tLH}IL9t{H}IL9tiMH}IL9tRH}IL9t@MyH}IL9t&H}IL9tMMH}IL9tH}IL9tM!H}IL9tH}IL9tMH}IL9tH}IL9tMH}IL9tvH}IL9tdMH}IL9tJH}IL9t8MqH}IL9tH}IL9t MEH}IL9tH}IL9tMH}IL9tH}IL9tMH}IL9tH}IL9tMH}IL9tnH}IL9t\MH}HH9LL(HpIL9t$L HPIL9tLH0IL9tH}IL9tHH}HH9tH}IL9tLYH}HH9tLH}HH9tpLxH}HH9tVL^H}HH9tHFH}IL9t$H,H}IL9t LH}IL9?5H}IL9tHH}IL9tLH}IL9tLLHLHH0 *H=Ll  H}HtJLRH}Ht4LHuH|>HPLm>HHuLX>HXHuH>LH}Ht LH}Hṫ HtL|HdLHd+LLI<$Ht.L6H0HtLHHuLLH% HٸLH% L迸HH}IL9t襸HH}IL9t苸HH}IL9tqLyH}IL9tWHpIL9tBHHPHH9t&H H0HH9t H}IL9tHH}IL9t޷HH}IL9tķLH}IL9t誷HH}IL9t萷LH}IL9tvH~H}IL9t\LdH}IL9tBLJHpHH9LHPIL9tLH0IL9tLHIL9tֶLH0IL9t躶HxHHH9t螶LpHIL9t肶LhHIL9tfLHIL9tJHRH}IL9t0HpHH9tLHPIL9.$H}IL9tHpHH9LLH0IL9t赵LHIL9t虵HPIL9耵H}IL9tiHpHH9LHPIL9h9^H}IL9t"HpHH9LHH0HH9tHHHH9tӴLHIL9t跴HHHH9t蛴HPIL9肴H}IL9tkHpHH9tVLHPIL9i:_0H}IL9tHpHH9tLHPIL9 H}IL9tѳHpHH9t輳LHPIL9蠳H}IL9t艳HpHH9LHPIL9Y~OvH}IL94uH}IL9tHpHH9tL*H}IL9tHpHH9tٲLH}IL9t迲HpHH9u!LHPIL9蓲色H}IL9tuHpHH9t`LHH0HH9tAHHHH9t%LHIL9t HHHH9tL@HIL9tѱHHHHH9t赱LPHpIL9t虱LXHPIL9t}HPIL9dHpHH96LHPIL9t3LH0IL9& H}IL9tHpHH9LLH0IL9t述HHHH9t裰LHIL9t臰HHHH9tkL@HIL9tOLHHIL9t3HPHpHH9tLXHPIL9tHPIL9HPIL9įH}IL9t譯HpHH9t蘯LH}IL9t~HpHH9uiLHPIL9RwH}IL9t;HpHH9t&LHPIL99 /H}IL9tHpHH9tͮLfH}IL9t詮HpHH9u+LHPIL9}siHpHH9tRLHPIL9t:HH0HH9-#HpHH9LHPIL9t߭LH0IL9迭HpHH9t襭LHPIL9t荭LH0IL9mvHpHH9tSLHPIL9J7@HpHH9uGLHPIL9t LH0IL9֬H`蘻LeI I<$ID$H9t譬M9uH谵AAIM)IMM9u`L芵AHJLhI9u yAI>MNL9t@I AAAI I?M_L9t HӳHH+!LHH}H}-HLƴLΪH趴H}轪H}-HL蔴I<$HtvL~H0Ht]LeH0HtDLLHPHt+L3H0HtLH0HtLHPHtLHPHtǪHϳH0Ht讪H足H0Ht蕪L蝳H0Ht|H脳H}HtfLnH}HtPLXH}IL9t6LPH@IL9tHpH HH9tHxHHH9tHHHH9tƩHβH`HH9t詩LHH`HH9U膩KH`HH9tlLH}IL9tUH`HH9t@LH@IL9t(H}IL9tH`HH9tLQH}IL9tH`HH9tШL"H}IL9t趨H`HH9t表LH}IL9t臨H`HH9LH IL9t[LHIL9t?LHIL9t#HHHH9tLH`IL9tHH@HH9tϧHH HH9t賧HHHH9t藧LHIL9t{LXHIL9t_L`HIL9tCLhHIL9t'LHIL9t LHIL9tH@IL95֦+H}IL9t迦H`HH9t誦LH IL9t蒦LHIL9tvLHIL9tZLHIL9t>LH`IL9t"HH@HH9tLH IL9tHHHH9tΥHHHH9t貥HXHHH9t薥L`HIL9tzLhHIL9t^LHIL9tBLHIL9t&H@IL9l bH}IL9tH`HH9tLH@IL9$ŤH}IL9t认H`HH9t虤LH@IL9}H}IL9tfH`HH9tQLH@IL95H}IL9tH`HH9t LH@IL9LBH}IL9t֣H`HH9tLH@IL9襣H}IL9t莣H`HH9tyLH@IL9]H}IL9tFH`HH9t1LH@IL9tjH}IL9tH`HH9tLH@IL9,͢"H}IL9t趢H`HH9uiLH@IL9芢H}IL9tsH`HH9t^LH@IL9B8H}IL9t$H`HH9tLH IL9tLHIL9tۡLHIL9t迡HHHH9t裡LHIL9t臡HH`HH9tkHH@HH9tOHH HH9t3LHIL9tLHIL9tLHIL9tߠH@IL9%Ơ輠DH}HH9t襠MHHpHH9t膠H(HPHH9tjH H0HH9tNH}IL9tA3A(AAAHHL0H}7H}n.L&LLLLHL֝LަLƝLΦHp貝L躦L袝L誦L蒝L蚦L肝H芦LrLzLbLjHF/LZH"HXL9u.QH)L1HLXM9u=(H;L{L9tH I蹤H Ht؜LI?MwL9t远I I聤H HuH}IL9t葜H}IL9tH臥H}IL9teH HpHH9tIHPIL9t4LH0IL9tH}IL9tHH}IL9tH}IL9tڛLH}IL9tLȤH}IL9t覛H认H}IL9t茛H蔤H}IL9trHzH}IL9tXL`H}IL9t>HpHH9t)LHPIL9tHHHH9tLHIL9tٚHHHH9t轚HţH}IL9t裚HpHH9t莚LuH}IL9ttHpHH9t_LHPIL9tGLH0IL9'H}IL9tHpHH9tLHPIL9ߙH}IL9ęH}IL9t譙HpHH9t蘙LHPIL9t耙LH0IL9T`JH}IL9tIHpHH9t4LHPIL9tLH0IL9H}IL9tHpHH9tИLHPIL9贘H}IL9t蝘HpHH9t舘LHPIL9tpHH0HH9DP:AAIM)IMM9L1AAAAHɟHHtLeI I<$MT$L9t͗M9uHРE1sHX|H肑H`H;u譜H;HSH9t|H A&I I>IvH9%RAH}HuALMH}1H0J螒H}HEHEH9tLL/L뭐HLH}Hx@/LLşH`HuPLXHP1H0JHPHDžhHDž`H9t`LhL/PL랐HbLJH}QHxe?/L=L%I<$HtLHpHtLHpHtԕLܞHpHt軕LÞHpHt袕H語HpHt艕L葞HpHtpLxHpHtWL_HpHt>LFHpHt%L-HpHt LH}HtLH}HtLH}HtʔLҝH`HuPLXHP1I0JHPHDžhHDž`L9tnLvL/^LH}IL9tGH`HH9t2LHIL9tLHIL9tHHHH9tHH}IL9tȓH`HH9t賓LH@IL9t蛓HH HH9Q{GH}IL9tdH`HH9tOLH@IL9 3H}IL9tH`HH9tLH}IL9H}IL9tҒH`HH9uiLH@IL9|覒rH}IL9t菒H`HH9tzLH@IL94^*TH}HH9KMH(HpHH9t"LHPIL9tL H0IL9tH}IL9tؑLH}HH9t辑H}IL9t謑L贚H}HH9t蒑L蚚H}HH9txL耚H}HH9t^H}IL9tLLTH}HH9t2L:H}HH9tL H}HH9tLHh谟LmI I}IUH9tƐI9uLəH葊L`M9uI}MML9t莐I ޾AII)III9u*LsI+HHkFaI I<$MD$L9t*1롾뚾듾댾녾{qgHLH}Hx%S0LLŘH}IL9t袏L誘H}IL9t舏L萘H}HH9tnLvAI)III9u LT1I I<$It$H9t)֐  LH"L LH}IL9tLH}IL9t֎LޗH}IL9t輎LėH}IL9t袎L誗H}HH9t舎H}IL9tvHpIL9taI>IL9tPH HPHH9t4H(H0HH9tL H}HH9tH}IL9tHpIL9wӍmH}HH9t輍MH}IL9G裍=H}HH9t茍M4H}IL9trLHPIL9tVLH0IL9t:HBH}IL9t H}HH9tLHpIL9tI>IL9tjH}IL9tʌH}HH9t踌LHpIL9t蠌H}IL9t茌H}HH9tzL|H}IL9t`H}HH9tNLHpIL9A27H}IL9tH}HH9t LHpIL9H}IL9t֋H}HH9tċLHpIL9訋H}IL9t葋H}HH9tLHpIL9rchH}IL9tLH}HH9t:LHpIL9-#H}IL9tH}HH9tLHpIL9يH}IL9tŠH}HH9t谊LHpIL9蔊H}IL9t}H}HH9tkLHpIL9^OTHuHM0HuH0HHPHH9tLHM̘H҃H;uLI<$IL9tˉH I艑H0Hn褉dHvH;uU討HMMHuH0HHPHH9tQLYHuHM0LI<$IL9tH |IڐH0HtwL HHLLHԑHLđH}ˇLLI$HtL'AT$pL蓑LH}萇HuLԄLzHPLXH@LHH}HH9t&L.H}HH9t LH}IL9tH}HH9tLHpIL9tȇI>IL9t跇LHPIL9t蛇LH0IL9tHHHH9tcHHHH9tGHHHH9t+H3H}IL9tH}HH9tLHpIL9 H}IL9t̆H}HH9t躆LHpIL9螆H}IL9t臆H}HH9tuLHpIL9YH}IL9tBH}HH9t0LHpIL9QGH}IL9tH}HH9tLHpIL9 υH}IL9t踅H}HH9t覅LHpIL9芅H}IL9tsH}HH9taLH}IL9tGH}HH9t5LeH}IL9tH}HH9t L9H}IL9tH}HH9t݄LHpIL9H}IL9t誄H}HH9t蘄LH}IL9zH}IL9tcH}HH9tQLHpIL9r5hH}IL9tH}HH9t LHpIL9-#H讒HuH>0HHPHH9t貃L躌HuL0Ht}HI9u裈H;LkL9trH I4H0HvOlLbHJHRL:AI)III9u L1I I<$It$H9t֐H}LLFI$HtL'AT$pLɋH}ЁHuLLLL膂L莋H}IL9tlLtH}IL9tRLZH}IL9t8LHPIL9tLH0IL9tHH}IL9tH}HH9tԁLHpIL9t輁I>IL9t见jH}IL9t萁H}HH9t~LHpIL9tfH}IL9tRH}HH9t@L|H}IL9t&H}HH9LHpIL9B8H}IL9tH}HH9tЀLHpIL9贀H}IL9t蝀H}HH9t苀LHpIL9oH}IL9tXH}HH9tFLHpIL9s*iH}IL9tH}HH9tLHpIL9.$H}IL9tH}HH9tLHpIL9H}IL9tH}HH9twLHpIL9[Q7H}IL9t:H}HH9u!LHpIL9ZPؐHuHLe0HuHU0HHPHH9t~HчHxH9u˃HLpLI<$IL9t~H HCH0Hn^~dLp}HXH`LHH0~L8H}HH9t~LH}HH9t}LH}IL9t}LHPIL9t}HH0HH9t}LHIL9t}H薆H}IL9tt}H}HH9tb}LHpIL9tJ}I>IL9X5}NH}IL9t}H}HH9t }LHpIL9t|H}IL9t|H}HH9t|LHpIL9m|cH}IL9t|H}HH9t|LHpIL9(m|H}IL9tV|H}HH9tD|LH}IL9t*|H}HH9t|LH}IL9t{H}HH9t{LHpIL9{H}IL9t{H}HH9t{LHpIL9F{H;tyLHPIL9tyHH0HH9tyH赂H}IL9tyH}HH9uaLHpIL9yjyoH}IL9tSyH}HH9uCLHpIL99*y/ yH}IL9(yxH}IL9txH}HH9txLAI)III9u L辁1I I<$It$H9tx֐HxL萁HxxL老HhxLpH}HH9tNxLVH}HH9t4xLIL9mwcH}IL9tkwH}HH9tYwLHpIL9tAwH}IL9t-wH}HH9twLHpIL9mvcH}IL9tvH}HH9tvLHpIL9(vH}IL9tvH}HH9tvLHpIL9uvH}IL9t^vH}HH9tLvLHpIL90vH}IL9tvH}HH9tvLHpIL9YuOH}IL9tuH}HH9tuL#H}IL9tuH}HH9tuLHpIL9zuH}IL9tcuH}HH9tQuLH}IL9t7uH}HH9t%uLAI)III9u L ~1I I<$It$H9ttLtH}LtL}H}HH9ttL}H}HH9ttL}H}IL9txtH}HH9tftLHpIL9tNtI>H;t=tLHPIL9t!tL H0IL9ttH }H}IL9tsH}HH9tsLH}IL9tsH}HH9LHpIL9LsBH}IL9t~sH}HH9tlsLHpIL9PsH}IL9t9sH}HH9 LHpIL9 sH}IL9trH}HH9trLHpIL9~rtH}IL9trH}HH9trLHpIL99r/H}IL9tkrH}HH9tYrLHpIL9=rH}IL9"rrH}IL9trH}HH9tqLHpIL9qH}IL9tqH}HH9tqLHpIL9Eq;H}IL9twqH}HH9teqLHpIL9IqH}IL9t2qH}HH9t qLHpIL9qpDAI)III9u Ly1I I<$It$H9tpLHuLmI$HtL'AT$pLyH}oLLlH}oHuLlHuLlLbLXH}MozH pL(yH}IL9tpLyH}IL9toLxH}IL9toH}HH9toLHpIL9toI>IL9toLHPIL9t{oHH0HH9t_oHgxH}IL9tEoH}HH9t3oLHpIL9tojH}IL9toH}HH9tnLHpIL9/n%H}IL9tnH}HH9tnLHpIL9nH}IL9tvnH}HH9tdnLHpIL9HnH}IL9t1nH}HH9tnLHpIL9`nVH}IL9tmH}HH9tmLHpIL9mH}IL9tmH}HH9tmLHpIL9ymH}IL9tbmH}HH9tPmLHpIL94mH}IL9tmH}HH9t mLHpIL9LlBH}IL9tlH}HH9tlLHpIL9lH}IL9tlH}HH9tlLHpIL9elH}IL9tNlH}HH9tMUI}1JeIEI}IEH9}t[jHcsL'KjLHpIL9t1jH0U4LXLPM9uLHPHtjL sLHHIL9tiHpIL9tiM$LI` API}HHt8 I}8Hf7 \HxHt7 HHG7 =HHu?HNiHHt=iH@Ht,iMtL7 L'riHHthHMhHHthHhH`Hu LhE1hLeII $LQI9\HHHt6 HqHuhL}qHXhHt6 H(hHt6 HhHt6 LBqHXhHt6 HgHH0hHHhHt^6 렐IoH=|Hu}HhH=Y1HNcH=GHTHAH;tgLpHsaL54lIOoLWaLoglL'bgLn%x IoH=Hu}HH=1HbH=|HHvH;0tfLpH`L5ikInL`LfkL'fLn%x ImnH=f Hu}HR H=C 1HaH=1 H> H+ H;tMfLUoH`L5 QkImL`Lf4kL' fLn%x ImH= Hu}H H= 1HMaH= H H H;0teLnHr_L5s jINmLV_LnejL'aeLn%x H Ht?eLGnH0Ht&eL.nH Ht eLnH@HtdLmH@HtdLmH@HtdLmH@HtdLmH@HtdHmH HtwdLmHHt^dLfm%x IlH=Hu}HH=1H_H=HHH;HtcLlH]L5hHkH]LchL?cLn%x IikH=Hu}HnH=_1H^H=MHZHGH;HtIcLQlH]L5:MhHjH\Lc0hL/cLn%x IjH=Hu}HH=1HI^H=HHH;HtbLkHn\L5gHJjHR\LjbgL']bLn%x IjH=#Hu}H#H=#1H]H=#H#H#H;HtaLjH[L5#fHiH[LafL?aLn%x IhiH=5Hu}H5H=~51H\H=l5Hy5Hf5H;HtHaLPjH[L5Y5LfHhHZLa/fL/aLn%x IhH=67Hu}H"7H=71HH\H=7H7H6H;Ht`LiHmZL56eHIhHQZLi`eL'\`Ln%x IhH=>Hu}H>H=>1H[H=v>H>Hp>H;Ht_LhHYL5c>dHgHYL_dL?_Ln%x IggH=PHu}HlPH=]P1HZH=KPHXPHEPH;HtG_LOhHYL58PKdHfHXL_.dL/_Ln%x IfH=QHu}HQH=rQ1HGZH=`QHmQHZQH;Ht^LgHlXL5MQcHHfHPXLh^cL'[^Ln%x IfH=YHu}HYH=Y1HYH=YHYHYH;Ht]LfHWL5YbHeHWL]bL/]Ln%x IfeH=bHu}HbH=|b1HXH=jbHwbHdbH;HtF]LNfHWL5WbJbHdHVL]-bL/]Ln%x IdH=cHu}HcH=c1HFXH=cHcHcH;Ht\LeHkVL5caHGdHOVLg\aL'Z\Ln%x IdH=ilHu}HUlH=Fl1HWH=4lHAlH.lH;Ht[LdHUL5!l`HcHUL[`L/[Ln%x IecH=Hu}HH={1HVH=iHvHcH;HtE[LMdHUL5VI`HbHTL[,`L/[Ln%x IbH=Hu}H߁H=Ё1HEVH=HˁHH;HtZLcHjTL5_HFbHNTLfZ_L'YZLn%x IbH=hHu}HTH=E1HUH=3H@H-H;HtYLbHSL5 ^HaHSLY^L/YLn%x HdaH=Hu}HH=1HTH=HHH;HtDYHLbHSL5uH^H`HRLY+^L'YLn%x I`H=ҞHu}HH=1HDTH=HHH;HtXLaHiRL5]HE`HMRLeX]L'XXLn%x I`H=Hu}HH=1HSH=rHHlH;HtWL`HQL5_\H_HQLW\L/WLn%x Ic_H=Hu}HH=y1HRH=gHtHaH;HtCWLK`HQL5TG\H^HPLW*\L/WLn%x I^H=Hu}HH=1HCRH=HHH;HtVL_HhPL5[HD^HLPLdV[L/WVLn%x I ^H=Hu}HH=1HQH=HHH;HtUL^HOL5~ZH]HOLUZL/ULn%x Ib]H=Hu}HH=x1HPH=fHsH`H;HtBULJ^HOL5SFZH\HNLU)ZL/ULn%x I\H=0Hu}HH= 1HBPH=HHH;HtTL]HgNL5YHC\HKNLcT~YL/VTLn%x I \H=%Hu}HH=1HOH=HHH;HtSL\HML5XH[HMLSXL/SLn%x Ia[H= Hu}H H= 1HNH= H H H;HtASLI\HML5r EXHZHLL S(XL/SLn%x IZH=o Hu}H[ H=L 1HANH=: HG H4 H;HtRL[HfLL5' WHBZHJLLbR}WL/URLn%x I ZH=Hu}HH=1HMH=HHH;HtQLZHKL5VHYHKLQVL/QLn%x I`YH=9)Hu}H%)H=)1HLH=)H)H(H;Ht@QLHZHKL5(DVHXHJL Q'VL/PLn%x IXH=3Hu}H3H=31H@LH=y3H3Hs3H;HtPLYHeJL5f3UHAXHIJLaP|UL/TPLn%x I XH=BHu}HBH=B1HKH=BHBHBH;HtOLXHIL5{BTHWHILOTL'OLn%x H_WH=xHHu}HdHH=UH1HJH=CHHPHH=HH;Ht?OHGXHIL50HCTHVHHL O&TL/NLn%x IVH=NHu}HyNH=jN1H?JH=XNHeNHRNH;HtNLWHdHL5ENSH@VHHHL`N{SL/SNLnI<$HtMNL9t^GI H@IL9tCGH IL9t.GH6PH@IL9tGHHHH9tFHOH IL9tFHIL9tFLPHIL9tFH HHH9tFL(HIL9tmFL0HIL9tQFL8HIL9t5FLHpIL9tFLXHPIL9tEHpH0HH9tEL`HIL9tEHhHHH9tEL@HIL9tEHNHMvL9H4MHHtSEHM^0L9t>EHIvH9ddLH>L;u/(JHIL9..HSI}I]H9tDI HpHH9tDLML=HMHIL9tDHIL9tnDHIL9tYDLHIL9t=DLHpIL9t!DHHPHH9tDLH0IL9tCLHIL9tCHLH`Md$L9tCLHpIL9tCLHIL9tvCHHHH9tZCLHPIL9t>CHHHH9t"CLHIL9tCLH`IL9tBLH@IL9tBLH IL9tBLHIL9tBHKHIL9tyBLHIL9t]BLHIL9 =BHIL9t#BLHIL9tBLHIL9tALHIL9AHIL9SSHIL9::LHpIL9tALH`IL91OA'HHH9t5AH`IL9t AH@IL9t AH IL9t@LHIL9t@LILHIL9t@LHIL9t@LHIL9t~@LH0IL9tb@MHHH9tH@HHHH9LHIMH9t@LHIL9t?LH`IL9t?LH@IL9t?LH IL9t?LHIL9t?HHHIL9tl?HHH9tW?L:HHH9t:?L-?H;I9t?H{ I9t ?H?L HH HI8L; uECIFH>H}I\$0H9t>H`IL9t>LGI}IuH9t>I 뚐H=LGH߾?LoGHMfL9tI>LHIL9t->HIL9t>HHpHH9t=LHIL9t=LHIL9t=LHIL9t=HHpHH9t=HHPHH9tp=LH0IL9tT=H\FH0IL9t7=L(HIL9H0HHH9t=LHH IL9tHIL9t5LPHIL9t5LXHIL9<52HIL9tg5HIL9tP5I<$H;xt>5L0HIL9t"5H*>HHH9t5LH0IL9t4L(HIL9t4zLH}IL9t4HPIL9t4HH HH9t4HHHH9td4HH9H;tL4HT=HPIL9t/4LH}IL9t4LH}IL9t3HPIL9t3LILH IL9UULH}IL9t3HPHH9t3LLH}IL9tj3HH}HH9LH IL9t.3HIL9t3HHPHH9t2LHIL9t2LHHIL9t2HPHHH9t2HXHHH9t2L`HIL9tq2LHpIL9tU2LxHPIL9t92HHHH9t2LHIL9t2LHIL9t1LhHIL9t1HpHpHH9t1LHPIL9t1LH0IL9tu1H}:LH IL99M1/LH IL9t,1LH@IL9t1LHIL9t0LHIL90LH IL9{0qHpIL9j0`LH IL9al0WLH IL9OG0ELH IL9*"0 LH}IL9t0L 9HH}HH9t/L8LMH}IL9t/L8HMH}HH9t/L8H=L8LHpIL9tr/HIL9t]/LHIL9tA/HI8HpIL9t#/L+8HIL9t/H 8H}HH9t.L7H}IL9t.L7H;I9t.L7H;I9t.L7H HH9ujLHHHH9tp.HMfL9t[.I}H9tI.LHIL9t-.H57 .H}IL9t .LH}IL9t-HHHH9t-HHHH9t-LHIL9t-H6H}HH9LH0HpHH9tg-HHHHH9tK-LHIL9t/-L8HIL9t-H@HpHH9t,L HPIL9t,H5,CH`IL9t,HIL9t,HHpHH9t,HHPHH9tg,LHIL9tK,LHIL9t/,H75LH0IL9t ,HIL9t+LHIL9t+HIVH9t+HHHH9t+LHIL9t+H4HHH9tp+LH`IL9tV+LH0IL9t:+HIL9t%+LHIL9++H}M~L9t*H}MnL9t*HxH`HH9t*LH@IL9t*HHHH9t*LHIL9to*Hw3H}HH9tU*LnH}IL9t;*HPIL9H"*>H}HH9t *L$H}HH9t)L L`H}IL9)L`H}IL9)H}HH9t)LLH}IL9tr)H}IL9t`)LH`IL9uqH@IvH9t4)HH HH9t)HHHH9t(LHIL9t(L1(Ld)H1H"LeI9u-H~"LeI9uD-I|$ID$H9t|(I(I>0Hx6>H}5>La1I|$ML$L9t=(I(H/H"LpL;muHpt Hp(-I}MUL9t'I(I/lH}MML9t'L0H}IEH9t'L0H}M]L9t'H0H}MUL9tz'L0H}MmL9t`'Hh0H}IUH9tF'LN0HHq=HHp=HHH86>HL7>HI9t&HHx~ HXHH} H(H,p=HHIq=HH6>H{Htx&L/H}IL9t^&Hf/pL&H}IL9t7&L?/L]H}IL9t&ξ`L&뿾L&밾8L&롾 L}&뒾(Ln&냾8L_&qHLM&_pL;&ML)&;L&)xL&LUH}IL9tJ%LR.HEH}HH9t,%L4.HUH}HH9t%L.L]H}IL9t$H-HuH}HH9t$L-L=L-H߾M%L-LhHIL9t$LXHIL9tl$L`HIL9tP$HIL9t;$HC-HpIL9t$L%-HIL9t#HIL9t#HxHHH9t#L,HpIL9t#L,HpIL9t#LhHIL9tw#LXHIL9t[#H`HHH9t?#HIL9t*#H2,Lj=L",H߾#L ,H߾H#L+H}HH9t"H}IL9t"L+HIL9t"LHIL9t"HHHH9tm"HHPHH9tQ"LHIL9t5"LHIL9t"H!+HIL9t!LHIL9t!LHIL9t!HH HH9t!LHIL9t!LHIL9MNL9tI =HHH9vLpH0IL9tLhHIL9tH`IL9MHIL9t\HHH9HMd$L9t-MLhHIL9t L`H0IL9tHpHHH9tH`IL9u1MHIL9tH@HH9bb H}IL9tlLtHuH}HH9tNLVH`IL9t1HIL9tH$H`IL9tH`IL9tHIL9tLHIL9uHIL9tHIL9tHIL9txLPHIL9t\HXHHH9t@HIL9t+H3H0IL9uILHIL9u9HIL9tHIL9tHLH`IL9tLHIL9tHIL9tmHIL9tXHIL9tCHKLHIL9tHxHHH9tHIL9t HH IL9t LHIL9t LHIL9t H@HHH9tz HHHpHH9t^ H(HPHH9tB L0H0IL9t& L8HIL9t LXHIL9t L`HIL9t LhHIL9t HpHHH9t HH IL9y LhH IL9tX HpH@HH9t< LxHIL9t HIL9t HIL9t HLpHIL9t LhHIL9t HxHHH9t L`HIL9_z UHHH9LH IL9tH H`IL9t3 LxHIL9t LHIL9t LHIL9t HHIL9t HIL9t H`IL9t | )H}IL9tv L~H0IL9tY LaHpHH9t; LCH IL9t LH`IL9t HIL9t HLpHIL9t HH`HH9t LHIL9t LxHIL9tt HIL9_[ ULH IL9t: HIL9%! LH IL9t HIL9H}IL9tLHIL9tHHIL9tLH IL9u2HIL9tgHIL9tRHZEǐLH@IL9t&LH IL9t H0HHH9tH8HHH9tHHHH9tLHIL9tLHIL9t~H(H`HH9tbH@IL9tMHULHIL9t(LHIL9t HHHH9tHHHH9tLHIL9tLHIL9tHHpHH9tLHPIL9tdHH0HH9tHHIL9t3H;LH`IL9tHHHH9tHIL9tLHIL9LHpIL9tH IL9tLHIL9tkL(HIL9tOLHIL9t3LHpIL9tLHIL9tHHHH9tH HHH9tH H IL9tLH@IL9tHHHH9tnHHHH9XNNH IL9t4HHHH9tL(HpIL9WMLHpIL9tH IL9tH IL9tLH IL9tLHIL9H IL9tZLHpIL9t>LH IL9(H IL9H IL9H IL9zpLHpIL9tLH IL9tLHIL98g.H}IL9tPLX LEH}IL9t2L: HpIL9tH H}IL9tH H}IL9tH H}IL9tH HpIL9tHPIL9tH H@IL9twH IL9tbHIL9tMHU HpHH9t/HPIL9tL" H}INH9tLHH@IL9tH@HHH9tH8HHH9tHIL9tL(HpIL9tyL LHH@IL9tQjLHH@IL9t0HH0HH9tHHHH9tLHIL9tLHIL9LHH@IL9uL HIL9u덐LHHIL9H IL9tTHpINH9t?LhHPIL9t#HXH0HH9tH`HHH9tHL@HIL9tL8HpIL9tLHHIL9<2H IL9tgHHHH9tKLHIL9t/LHIL9tLH}IL9tLH}IL9tHIL9tHHpIL9uH}IL9tH`IL9uHpIL9uHpIL9uʐHIL9tQL8HIL9t5LHIL9tHHHH9tH HHH9tH(H`HH9tL0H@IL9tHHIL9tHHIL9kH@IL9tSQLHHH9t:LBHHH9tMH@IL9tL HIL9tLHIL9tHHHH9tLHIL9tLHIL9twHH`HH9t[LH@IL9t?LGH;L9t)H{ L9tHLH HIL; uE IHH}I\$0H9tH`IL9tLI}IEH9tI 뚐H}IL9tLH=LxH`IL9tSHIL9t>LH IL9t"H(HHH9HHHH9tLHIL9tLHIL9tHHHH9tLH`IL9t{HH IL9!ZPDLH`IL9t/HIL9H`IL9ttL@LLH@IL9t또HIL9tHH`HH9tLH@IL9tyLH IL9t]LHIL9tALHIL9t%H-HIL9XNL`HIL9tHIL9tLpHIL9H@IL9tHIL9yH@IL9[L@HIL9t:HIL9MHIL9tL(HIL9tL0H`IL9tH8H@HH9tHPH HH9tLXHIL9tH`HHH9tfHhHHH9tJHHH9t5L=HIL9_UHIL9A7HIL9#HIL9HIL9HIL9~tIH`IL9tYLH`IL9t=LH@IL9t!LH IL9tLHIL9tHHHH9tHHHH9tHHHH9tH`IvH9tHHIL9tcHHH9tNLLH IL9+LHPIL9t HIL9tLHPIL9tLH IL9cYHHH9tLHHPHH9t"HH0HH9tHHHH9tLHpIL9tLHIL9tLXHIL9tLHIL9tzLHIL9t^L HIL9tBLxHIL9bbLHPIL9tHMvL9tL`H`IL9tH0HHH9tHXHHH9tHHHH9$}LHIL9t\HHPHH9t@HMvL9HHHH9t HHPHH9tLHIL9UUHIL9H`MvL9tH0IL9tLHIL9tpLHIL9tTLHIL9t8HHHH9tLHIL9tLHpIL9tLHPIL9tHH0HH9tHHPHH9tLH0HH9trLHPIL9tUHpIL9HIL9t'HIL9tMHHHH9tHH`HH9tH@HH9tHH HH9tLHIL9cYLXH@IL9tdHIL9tOL@HIL9t3LPHIL9tL0HIL9tH8HpHH9tLHHPIL9tLH0IL9tHHHH9tLHIL9toHHHH9tSH HHH9t7L(HIL9tH#LXH@IL9tHpIL9HHH9tLȐHIL9tLHIL9tHIL9txLxHIL9t\HHHH9t@HHHPIL9t#LHIL9tHIL9{qHIL9tHPIL9H>H}IL9tHLMH}IL9tLH;I9tqH{ I9tcH[LcH HI!L; uESIH#H}I\$0H9tH`IL9tLI}IuH9tI 뚐HPIL9tHHPIL9tLH0HH9tLHHH9tmHIL9LHpIL9t=LHPIL9t!H0IL9t LHIL9tLHIL9tLiLHIL9tHIL9tLHpIL9tsHPIL9t^L(H0IL9tBHJL0HIL9tL HIL9tHpINH9tL(HPIL9tLHpIL9tMLHPIL9tH0HH9tLLXHIL9t`H`HHH9tDLhHIL9t(HpHHH9t HHpMvL9tHPHH9tH0IL9tHIL9tLLH`IL9tHHHH9tpLHIL9tTHHHH9t8LHIL9tHHHH9tH`IL9tH@IL9tHH HH9tLHIL9tHLHpIL9vLHIL9tTLxHIL9t8LPHpIL9tLHPIL9tLH0IL9tLXHIL9tH`HHH9tLhHIL9tHH@IL9tsLHIL9tWLHIL9t;HHPHH9tHIVH9H@IL9zpLHIL9tHH`HH9tLH IL9tHHHH9trLHIL9tVLHIL9t:LHIL9tLHIL9tLH`IL9tHH@HH9tLH IL9tLHHHH9tHH0HH9tnHHH9tYMHIL9=LHIL9tH0HH9tMLHIL9tLH IL9tLHIL9tHH@HH9tLH IL9txHpHHH9t\HxHHH9{HIL9uHH@HH9tHIL9tHIL9tL8HIL9tLH0IL9tHHHH9tH(HHH9tvLHIL9tZL`HpIL9t>HHPHH9t"L HIL9tHHHH9tHHHH9tLpHIL9tLhHPIL9tLH0IL9tzL@HIL9t^LPHIL9tBHHHHH9t&LXHIL9t HL0HIL9HH@HH9 HH@HH9''LH@IL9HH@HH9R]HHH@HH98HH@HH9HH@HH9HH@HH9HH@HH9LH@IL9HH@HH9yZoHH@HH9P5FLH@IL9H}HH9tLLhHIL9tH IL9tHIL9tHLhHIL9tLhHIL9thH߾LaH}IL9t>HFHIL9t!L)HIL9tH H}HH9tLLhHIL9tH`HHH9tHpIL9tLL`H IL9tnHHHHH9tRLhHIL9t6HXH@HH9tHpHHH9tHIL9tHxHHH9tLHIL9tL@HIL9tH0HHH9twL8HIL9t[LhHIL9t?LHIL9t#HHHH9tLHIL9tLpHIL9tLxH`IL9tHH@HH9tHH HH9t{HMvL9tfHIL9tQLHIL9t5H=LHIL9c YLHIL9LHIL9H@IL9tH@IL9tLHIL9tvLHIL9tZH IL9tELHIL9t)L1H@IL9{qH@IL9]SH@IL9?5H@IL9!H@IL9H@IL9rH}IL9tZLbH}IL9t@LHH`IL9t#L+H}IL9tHH`IL9uHXH}HH9tHpLEL9tLH}HH9tLL@H}IL9tH`LpL9tmHuH}IL9tRHZH}IL9t8L@HhH}HH9tLH`IL9tH@IL9tHH`IL9uHI9tHY=LH߾X;LHHdH;uH:LrH;LsL9tQH IHHt2H}MD$0L9tH`IL9t LHLHƼM9uDIHHtI]`H H;LKL9tL9uLI>MNL9tI H;I9tyLL(H IL9tTHIL9t=HEHxH{H9tL8HIL9tMLpHIL9tLHIL9tHHXL(L9LI9HtLLhL`L@Mt$IN5@HDžHL0HILt H MvL9t*H2I}H9(tLPHIL9tM'H{iHH`HpLXLH@HHLhHxL @HPLFNPL@I{H=@HDžHLHHIL臹0LLxL@MFN@IHDžHI}IMH9tI(OH MvL9H{hHHHHXL@LhH@HHLPH`L @HPLFNPL@I{H=@HDžH HH@HH9tPLHIL9t4HIL9HH`HH9tHHHH9tHpMvL9tӾLHPIL9t跾LHIL9t蛾LHIL9tHHpHH9tcHHPHH9tGHHHH9t+LHIL9tLHIL9tHHHH9t׽LHpIL9t軽HHIL9t螽HIL9t艽HHHH9tmHH@HH9tQLH0IL9t5LHIL9--HIL9H@IL9HIL9tμHIL9t蹼HHHH9t蝼HHHH9t聼HxH`HH9teLHIL9tILHIL9t-HHHH9 LH@IL9޻LH@IL9蹻HUH}HH9t螻HLEH}IL9t耻LHMH}HH9tbLjHMH}HH9tDLLLuH}IL9t&H.LEH}IL9tLMM9u}LH(H(HL貴L9u;IL踺Mu`I I>IvH9t蟺M9uLH;LCL9t聺H I}MUL9tH(bH(I UH@IL9t=H IL9t(H0H@IL9t HHHH9tHH IL9tҹHIL9t軹LpH IL9WHxHHH9FLPHIL9tiLXHIL9tMH`HHH9t1HH@HH9tLHIL9tLhHIL9tݸLHIL9tLH`IL9t襸LH@IL9t艸HH HH9tmLHHIL9tQHYD:HPHH9uRLHIL9S IHIL9tHHH9tطLηLXHIL9t谷H;I9t裷LLXH IL9t͐H`HH9tgH@IL9tRLZH`HH9t5H@IL9t L(H}HH9tLH}IL9tHH@HH9t϶L׿HHc=HH H`HP H0L.=HI9tmHK=LmH}HH9tJH}IL9t8L@H}HH9tH}IL9t LL@HIL9tLXH`IL9tʵHҾHIL9t譵HIL9t蘵L@HIL9tzHIL9tc봐H`M|$L9tJLHIL9t.LHPIL9tLH IL9tLHIL9tڴLHIL9t辴HH`HH9t袴LH@IL9t膴HH HH9tjLHIL9tNLHIL9t2H:HHH9tLH`M|$L9tMHHHH9tسLHIuH9輳H`Md$L9t衳ʐH}IL9t茳L蔼H}HH9trLzL8HPIL9tNHIL9t9HIL9t$HpIL9tHH8HHH9uH(HHH9uH(HHH9t蹲L(HIL9IIH(HHH9t{H8H HH9 L(HIL9;H}HH9t$L,H}HH9t H}IL9tLHIL9t۱HIL9tƱHHH9t豱L蹺HIL9t蔱LHIL9tvHHHH9tZLXH@IL9t>LH IL9t"H*HHHH9tL8H@IL9mްcLH IL98L`HIL9'LHIL9t臰LhHIL9HHHH9LpH`IL9L(H@IL9HH HH9tL@HIL9tLHHIL9tǯLPHIL9t諯H0H`HH9苯聯wmc YO/H`IL9t5H8HHH9LHIL9 LH@IL9LHIL9HHHH9L@HPIL9HHHH9L(HIL9t\LHH`IL9t@LHIL9t$LHIL9tLݭӭ ɭ1迭BH`IL9t襭L(HIL9t艭HhHHH9tmLH@IL9tQH8HHH9t5L@HIL9tHHHHH9tLHpIL9tLHPIL9tŬHH0HH9t詬HHHH9t荬LHIL92m(H`IL9tSHHH9:L H@IL9tHH0HH9YOH`IL9t߫LhHIL9轫H}IL9t覫L讴LXHIL9t肫H`IL9tmLuHpIL9tOLWHIL9u@LHpIL9tLHPIL9tL빐H}IL9tܪHHpIL9t迪HPIL9t說L貳H`HH9t荪LHIL9tuLHIL9tYLHpIL9t=H IL9t(HHPHH9t LH0IL9tHMfL9t۩HH IL9t辩LHIL9{螩qHIL9]耩SH}IL9thLpHPIL9tKLSLXHIL9t&H`IL9tHHIL9tL`HIL9tרH߱H}IL9t輨LıHpIL9t蟨L觱H`IL9t聨H@H0HH9teL8HpIL9tIHPIL9t4HMnL9tJI H IL9t/HIL9tH"HHH9tLHPIL9tH0IL9tΡH֪HIL9t象LH`IL9t蕡HHHH9tyHHHH9t]LH0IL9tAHHHH9t%LHIL9t LHpIL9tHHPHH9tѠLH0IL9t赠LHIL9t虠LHIL9t}H腩HIL9t\jH;I9tIH{ I9t;H3L;H HIL; uE+IӧHH}I\$0H9tH`IL9tӟLۨI}IuH9t蹟I 뚐HIL9t蝟LHIL9t聟H艨LHIL9t]HIL9tHHIL9t3HIL9tLpHIL9uHIL9tHPIL9tٞHMuL9tĞLpHIL9t訞H`HHH9t茞LhHPIL9lLHIL9HIL9. LHIL9f \H;I9tH{ I9tHLI补HɝH}I\$0H9t趝H`IL9t衝L試H HIgL; u虢I?IOH9thI L2=LbH߾LMHMfL9t'L`H0IL9t HIL9tHHHH9tڜLHPIL9t辜LhH0IL9t袜HHHH9t膜LpHIL9tjLxHIL9tNHVHIL9t1H0M~L9tL0H@IL9tLHHIL9tH8HPHH9tțLHIL9t講LXHIL9t萛HHHH9ttL`HpIL9tXLHPIL9tLHIL9siHIL9tH0MVL9tHHHH9$ϙLHPIL9t讙L`H0IL9t蒙HhHHH9tvLxHIL9tZHHHH9t>HFHIL9t!H@IL9t HMfL9tHHHH9tۘLpH0IL9軘H}IL9t褘H謡L]H}IL9t膘L莡L`HIL9tbHPHHH9tFHXHHH9t*LpHIL9tHMnL9tHI}H98tߗI} H90t͗Lŗ^LHHL莑H9Hu{LxH IL9?耗5HCLkHxH@H0H9tOLxH IL9/H;LKL9tH bHPIL9tH0IL9tHHIL9tɖHIL9t贖HIL9t蟖L觟H߾)L葟H}IL9tnLvH IL9tQLYH}IL9t6L>H}IL9tL$H}IL9tH LMH}IL9tLH}IL9tʕLҞH}IL9t谕HPIL9t蛕L裞HpIL9t~LH@IL9t`H@IL9tIHHHH9t-LHIL9tHH@IL9tH@IL9tݔHH@HH9w軔mHIL9t衔HIL9D舔:LH@IL9tgHIL9 NLH@IL9t-HIL9H@IL9LH IL9tԓLHHIL9t踓HLH IL9t蔓HIL9uLPHIL9tdHIL9tMHIL9u냐H IL9t%HIL9tL@HIL9tLLhHIL9tВH IL9t軒HIL9t覒L`H IL9{膒qH IL9tlLhHIL9AL7LHIL9t*H2LxHIL9uߐL(HIL9tHIL9tבL0H`IL9t軑L8H@IL9t蟑H觚HPIL9t聑H艚HIL9tcLkHHH9tFLNH IL9t)H`IL9tHLPHpIL9uHpHH9tސLLPH IL9t轐HPIL9t訐HXHHH9__HIL9tsLHIL9tWHIL9tBLHpIL9t&HM~L9tHH`HH9tLH@IL9tُLH IL9t轏LHIL9t衏H詘LHpIL9t}HHHH9taLHIL95A+LHIL9t HpIL9t H`M^L9tLLHIL9tҎHHHH9t趎H}IL9t袎L誗H}HH9t舎L萗H}IL9tnH0IL9tYHaH}IL9t?H}IL9t+L(H0IL9t H}IL9tH}IL9xnH}IL9]ƍSH0IL9OOH}IL9)蒍H`IL9twHHH9tbLjHIL9uHHH9uH}IL9t$L,L`HIL9tLhHIL9tHHIL9tnjLhHIL9uHIL9t虌АH`HH9t职L艕HIL9tcHIL9tNHVH`IL9t1H@HH9tL$H}IL9tL H`HH9tLH`HH9tNjLϔH@IL9t詋H豔H0IL9t苋LHIL9toLHIL9tSLH`IL9t7LH@IL9tHH HH9tLL> =LH߾yLH IL9t車LHIL9t蟊HIL9t芊L蒓L=L肓H߾LmHIL9tGHpIL9t2HHPHH9tLH0IL9tHHHH9tމLHIL9t‰HʒHIL9t襉LPHIL9t艉LXHIL9tmH`IL9tXL`L=LPH߾ӉL;H}IL9tH L]H}IL9tLL:=LH߾uLݑH}IL9t躈L‘H`HH9t蝈H@IL9t興L萑H}IL9tnLvHIL9tQH`IL9tLH0IL9t{LpHIL9tn{HHHH9tR{H`HH9t={HMvL9t({LLpHIL9{HpHHH9zHpHHH9zzLpHIL9tzHHH9JJLpHIL9RzLpHIL9-zLpHIL9t zH0IL9tyHHH9tyLH`MNL9iiHpHHH9tyHIL9tyH0HH9tyLLpHIL9t\yH0HH9LpHIL9#yLpHIL9tyL LH0IL9txLpHIL9UxKHpHH9txLLXHIL9txHIL9toxHIL9tZxHbH IL9t=xLHHIL9t!xLPHIL9txH IL9twH IL9twH IL9twH IL9&wH}IL9twL薀H}IL9ttwL|H IL9tWwL0HPIL9t;wHCHpIL9twH IL9twL`HIL9tvHHIL9uH IL9tvL0HIL9uHIL9tH IL9t|vLHHIL9t`vL0HIL999H IL9t+vL8HIL9tvL0H@IL9HHHH9tuLPHIL9tuLXHIL9tuHH`HH9t~uHH@HH9tbuLH IL9tFuLHIL9t*uLHIL9tuLHIL9ttHHHH9ttLHIL9ttH8H`HH9ttLHH@IL9ttLH IL9tftLHIL9tJtHHHH9t.tHHHHH9ttL`HIL9tsLHIL9tsLPH`IL9tsLhH@IL9tsH H HH9tsLHIL9tjsHr|LHIL9uBskHIL9t(sH`HH9eLHH HH9trHIL9trLHIL9trLpHIL9trHH`HH9trHH@HH9tprLHIL9tTrLHIL9t8rH HHH9trLHIL9trL(H@IL9tqLH IL9tqL0HIL9tqHHHH9tqL8HIL9ttqLH`IL9tXqH@H HH9tHLHIL9t"HHHHH9tHLXHIL9tGLH IL9HIL9tGLHIL9tGLHIL9t}GLH`IL9taGHHHH9tEGLHPIL9t)GHHHH9t GLH`IL9tFHHHH9tFLHpIL9tFLH@IL9tFHHHH9tFLHIL9teFLHIL9tIFHhHHH9t-FEELLHHIL9EHIL9HIL9EHIL9zEpHIL9\ERHIL9>aE4HIL9 CEHIL9t)EHHHHH9t EHPHHH9tDDkHIL9tDLHHIL9tDLPHIL9PDFHIL9ttDHHHHH9tXDLPHIL98DGE1@E.E1ƅEH`IL9tCLHIL9tCH IL9tCLHIL9tCHHtCHHtCHHtyCHHthCHHtWCH`HtFCH@Ht5CLH`IL9tCLH@IL9tBLH IL9tBHHHH9tBL`HIL9tBHHHH9tBL0HIL9tqBLHIL9tUBHH`HH9t9BHH@HH9tBLH IL9tBLHIL9tALHIL9tAL(HIL9tALHIL9tAHHHH9tuALH`IL9tYAHH@HH9t=ALH IL9t!AH)JH`HH9tALHHHH9t@H IL9t@HIL9 H`IL9t@LHIL9t@H IL9m@H`HH9tS@LLHIL9t4@H IL9P@FLH`IL9t?LHIL9t?H IL9t?HIL9t?LHIL9H`IL9LH`IL9t_?LH IL9tC?HMuL9t.?LHIL9t?LHIL9t>LH0IL9t>HHHH9t>LPH IL9t>HHHH9t>HXHpHH9tj>HpHHH9tN>LxHIL9t2>L8HpIL9t>LHHIL9t=L(H IL9t=LHIL9t=L@HIL9t=LHPIL9t=HhHHH9tn=LHIL9tR=HHHH9t6=HHHH9t=HHHH9t;LHIL9t";HH`HH9t;LH@IL9t:HH HH9t:LHIL9t:HHHH9t:LHIL9tz:LHIL9t^:H HHH9tB:L(H`IL9t&:L0H@IL9t :L8H IL9t9L@HIL9t9HHHHH9t9LPHIL9t9HXHHH9t~9L`HIL9tb9HH`HH9tF9LH@IL9t*9LH IL9t9HhHHH9t8LpHIL9t8LxHIL9t8LHIL9t8LHIL9H`Mt$L9th8LXH IL9tL8HIuH9t78LHIL9t8LHIL9OOLH`IL9t7LH`IL9t7HHHH9t7H IL97H`IL9LH`IL9LHIL96.7,LH`IL9t 7LHIL9t6LH IL9t6HMeL9LHIL9t6LH`IL9t6LHIL9th6LHPIL9tL6LXHIL9t06LH`IL9t6LHIL9t5LHpIL9t5H@IL9t5L(HIL9t5H8HHH9t5LxHPIL9ts5HH HH9tW5HPHHH9t;5HXHHH9t5L`HIL9t5LhHIL9t4LpH@IL9t4LxH IL9t4LHIL9t4LHIL9tw4L0HIL9t[4HHHH9t?4LH`IL9t#4HHHH9t4H@HHH9t3HHHH9t3L@HIL9t3LHIL9t3LHIL9t{3LHIL9t_3LH@IL9AALH`IL9t#3LHIL9t3LH IL9t2HHHH9t2LHIL9t2HHHH9t2HH0HH9t{2HHHH9t_2LPH IL9tC2LhHIL9t'2LXHpIL9t 2LpHIL9t1LHPIL9t1L8HpIL9t1L@HIL9t1HHHHH9t1LxHIL9tc1HHHH9tG1HHHH9t+1HHHH9t1LHIL9ӄtHHH9t0tHHH9t0tHLL9t0L LH`IL9t^0LHIL9tB0LH IL9R"0HLH`IL9t0HHHH9--ƅƅLH`IL9/LH`IL9JJH`IL9Uk/KHH`HH9)F/LH`IL9!/À H L0L9t.HLL9.LH`IL9}.sLH`IL9Xu.NHH`HH93P.)LH`IL9t/.LHIL9t.@HH`HH9-ƅƅHH`HH9-LH`IL9t-HHHH9tk-HIUH9tV-LHIL9t:-LHIL9t-LHIL9t-LHIL9t,LHIL9t,LH IL9,LH`IL9h,^LH`IL9C`,9LH`IL9;,LH`IL9,LH`IL9+LH`IL9+ˈLH`IL9t+LH IL9t{+HIuH9tf+LHIL9tJ+HHHH9t.+HHHH9t+HH0HH9t*LHIL9t*LPH IL9t*LhHIL9t*LXHpIL9t*LHPIL9tj*LxHIL9tN*L@HIL9t2*HHHHH9t*L(H IL9t)H8HpHH9t)HpHHH9t)HHHH9t)LHIL9t)LHIL9`j)VLH`IL9tI)LHIL9t-)HM]L9t)LHIL9t(LHIL9t(LHIL9t(LH0IL9t(LHIL9t(LHIL9bl(XLH`IL9tK(LHIL9t/(LH IL9t(LHIL9t'LHIL9t'HHHH9t'HMmL9'LH`IL9'LH`IL9\'H`IT$H9HH`HH9iiDƅD>DD*HMvL9t&LHIL9t&HHt&H`Ht&H@Ht&L0HIL9tn&LHIL9tR&HHHH9t6&HHHH9t&LH`IL9t%L8H@IL9t%LhH IL9t%HXHHH9t%LHIL9t%LxHIL9tr%H`HHH9tV%HHHH9t:%LH`IL9t%LH@IL9t%HH HH9t$HHHH9t$LHIL9t$LHIL9t$LHIL9tv$HHHH9tZ$LPH`IL9t>$LXH@IL9t"$H`H HH9t$HhHHH9t#LpHIL9t#LxHIL9t#HHHH9t#HHHH9tz#LH`IL9t^#L@H@IL9tB#L(HIL9t&#MLHIL9t#L,HLsL9t"HIL9t"HIL9HMVL9t"L HIL9vLHIL9eLH`IL9THH@HH9CL H IL92H(HHH9t"HHHH9t!HH`HH9t!HHH@HH9t!LH IL9t!LHIL9tx!LHIL9t\!LHIL9t@!LHIL9t$!HHHH9t!LH`IL9t HH@HH9t HH HH9t HH@HH9t HH HH9t| LHIL9HMvL9tG H HHH9o' eHMvL9Q GHMfL93)HI^H9 HMNL9HMnL9HIVH9sHHHH9tRHM^L99HIVH9~HMvL98.HMvL9tLHIL9tLpH`IL9tyLHH@IL9t]LPH IL9=HHH9HMvL9RHHMvL9PFHIL9 HMvL9..tHIL9TMdHMvL9nHMvL9tTHIL9t?MHHH9t'H HHH9t MOLHIL9tLHIL9tHI^H9tLHIL9tHH`HH9tHH@HH9tcHH HH9tGHHHH9t+LHIL9tLHIL9ZZHMvL9$HMvL9HMfL9HI^H9|HMvL9^HMfL9@6HIL9`VHINH9B8HHH9tL{HHH9]LHIL9tLHIL9tL@HIL9tsLHHIL9tWHPHHH9t;LHIL9tLxH@IL9jLtHIL9pLpH0IL9tLPLHIL9tH(HPHH9txHXHHH9t\LxHIL9t@LHIL9t$LHIL9tLH`IL9tLH@IL9tLH IL9tHHHH9tHHHH9t|LHIL9t`LHIL9tDHHHH9t(HH`HH9t LH@IL9tL(H IL9tLHIL9tLHIL9tL`HIL9tLhHIL9tdHXHHH9tHH`H`HH9t,LhH@IL9tLpH IL9tHHHH9tH HHH9tLHIL9tLHIL9tLHIL9thLH`IL9tLLH@IL9t0LH IL9tHHHH9tHHHH9tLHIL9tHHPIL9HHPHH9kaHIL9LHHIL9HIL9tLHPIL9tLHIL9vvHHHH9tL8HIL9tHMmL9tH@HHH9tiHHHH9tMHPIL9t8LHHIL9tLPH@IL9tLpHPIL9tH HHH9tLHIL9itLHIL9YLHIL9 0tLHIL9LHIL9t.HH0HH9tLHIL9tL(HPIL9tH HHH9tHH@HH9tL0H IL9tL8HIL9tjL@HIL9tNHHHHH9t2LPHIL9tLXHIL9tHH HH9tHxH@HH9tLH IL9tLHIL9tL(HIL9tnHHHH9I?5+HHH9u(LL(HPIL9:0HHH9tL L(HPIL9tLHIL9tHHH9t}LHHH9t`L^HIL9j?`HHH9t%LHHH9u(LH(HPHH91'H0HH9tHHHHH9}HHHH9lLH`HH@H{H HuHHoLHIL9^LHIL9MHHHH9<LH`IL9+LH@IL9LH IL9tL HIL9tH`HHH9tuHhHHH9tYLpHIL9t=L(HIL9t!H0H`HH9tLH@IL9t LH IL9t HHHH9t LHIL9t L@HIL9ty LHHIL9t] LHIL9tA HPH`HH9t% HH@HH9t LH IL9t LXHIL9t HPHHH9t L(HIL9t L@HIL9t} HHHH9ta LH`IL9tE LH@IL9t) LH IL9t LHIL9t HHHH9t H0HHH9t L8HIL9t LHIL9t HH`HH9te LH@IL9tI LH IL9t- HHHH9t L HIL9t L(HIL9t L0HIL9t L8HIL9t HH0HH9t HIL9to HHPHH9tS MHH`HH9t4 HHHH9t LHIL9t H`HHH9t LhHIL9t LpH`IL9t HxH@HH9t LXH IL9tp LHIL9tT LHIL9t8 L8HIL9t MLxH@IL9tHHHH9HIL9tLHIL9tjL@H`IL9tHIL9tmH0HH9TH0HH9"6,y"H0HH9@6u{H0HH9 HIL9?n5H0HH9PH0HH955H0HH9H0HH9HHH9tHHH9tHPIL9tLHIL9tLPHPIL9tLXH0IL9teLHPIL9tIHH0HH9t-LHIL9tLHIL9tHHHH9tLHIL9tLHIL9tLHpIL9tLHPIL9tiHH0HH9tMHHHH9t1LHIL9tLHIL9tHHHH9tLHIL9tLHpIL9tHxHPHH9tLH0IL9tmLHIL9tQLHIL9t5LHIL9tH HHH9tHHHH9tH L(HIL9wL(HIL94*L(HIL9oL(HIL9tNHPIL9t9L(HIL9tL8HIL9tL@HIL9tHHHHH9tH`HpHH9tLhHPIL9tLH0IL9tuLHIL9tYLHIL9t=HHHH9t!H0HHH9i_HIL9tHPHH9+LH0IL9tLpHIL9tLHpIL9tH HHH9**L(HIL9 L(HIL9#L(HIL9H(HHH9yoH(HHH9TJL(HIL9/%L(HIL9tnLpHIL9L(HIL9.L(HIL9 HPIL9 H(HHH9CCHIL9MCHIL9%L(HIL9`AHLL9tLhH@IL9t"HH HH9tLHIL9tLHIL9tHHHH9tLHIL9tLHIL9tzLH`IL9t^LpH@IL9tBHJHHH9I!?HIL9+HIL9H}IL9tLH@IL9tHIL9tHLXHIL9tH`IL9uLPH@IL9tRL0HIL9t6H@HHH9tLHHIL9tHpIL9tHHHH9tLLPH@IL9qqLPH@IL9tH8HHH955LPH@IL9L`HPIL9t.H0IL9tHHH9tLHIL9tLHPIL9tH H0HH9tL(HIL9tL0HIL9t|HHHH9t`LHIL9tDHHHH9t(LHpIL9t LHPIL9tHH0HH9tLHIL9tLHIL9tHL`HPIL9txL`H0IL9t\LHHIL9t@LPHIL9t$HH HH9tLHIL9tHHHH9tLHpIL9LXH0IL9tHLL9t|HIL9wwL`HPIL9tGH0IL9t2HIL9--L`HPIL9 H0IL9t81L`HPIL9tH0IL9tLHpIL9L`HPIL9tpLHHIL9tTLPHIL9t8LH0IL9tHXHHH9tLHIL9tH`HHH9tLhHIL9tLpHIL9tLxHpIL9ttH8HPHH9tXLH0IL9tHHH9uLLHIL9t~LHIL9^HHH9@HHH9t&LwHHH9tLHIL9ްHHH9@6H~L趹HHwH;uN詵IQHHtpH}ML$0L9t]H`IL9tHLPH;LKL9t/H HL%HHH;uNIHHt߯H}ML$0L9t̯H`IL9t路L迸H;LKL9t螯H H}IL9t膯H莸HIL9tiH0IL9tTL\HIL9t7HIL9t HIL9t HIL9tHIL9s׮iHIL9U蹮KH0HH9t蟮M.LH@IL9tzLHIL9t^LH`IL9tBHH@HH9t&HH HH9t LHIL9tLHIL9tҭLHIL9t趭LHIL9t蚭H袶LH@IL9tvHHKH9taLHH@HH9t=HHH9t(LHIL9LH@IL9{qLH@IL9VǬLLH@IL91袬'LH@IL9 }H`M|$L9tbLHpIL9tFHM^L9t1HH0HH9tHMuL9tHH`Md$L9tHpIvH9uHpHH9JLHHHH9t蝫LHIL9t聫HIL9tlLHPIL9tPLHIL9t4LH0IL9tLHIL9H`Md$L9tLHpIL9tƪLHIL9t說LHIL9YYH`M|$L9ttmH`M|$L9tRLHIL9H`Md$L9;1H`Md$L9H`M|$L9ߩH`M|$L9H`M|$L9t襩LHpIL9D腩:H`M|$L9fH`M\$L9G|LHH`IL9t&HIL9tHHPHH9tL8HPIL9t٨HH0HH9t轨HHHH9t表LHIL9t腨H HHH9tiH(HHH9tMLHIL9t1LHpIL9tL0HPIL9tL@H0IL9tݧHLHH`IL9t蹧LHIL9t蝧LHIL9t聧H0IL9tlHH HH9tPLH0IL9t4LH`IL9tHH@HH9tLHPIL9tHH`HH9tĦHHHH9t訦HIL9t蓦LHIL9twLHIL9t[LHIL9FFLHH`IL9tHIL9t HIL9tLHIL9եLHH`IL9t败HIL9t蟥HIL9t芥H`IL9tuLH0IL9tYHH HH9HHKH9LHIL9HIL9tH`IL9LHH`IL9t迤HIL9LHH`IL9t芤HIL9LHH`IL9EQ;LHH`IL9 ,LHH`IL9}HHH`HH9LHH`IL9LHH`IL9LHH`IL9t聣HIL9tlHHHH9tPLHIL9$0HHH`HH9 HIL9tLHH`IL9ѢLHH`IL9t谢HIL9藢LHH`IL9fr\LHH`IL9AM7LHH`IL9t,HIL9LHH`IL9LHH`IL9gΡ]HIL9t贡LHH`IL9t蘡HIL9zPLHH`IL9IU?LHH`IL9$0LHH`IL9 LHH`IL9ܠLHH`IL9t軠HIL9袠MHrM9u訥HLfI<$It$H9tdI H&HHtELHHI0L9t)LHH`IL9 LHH`IL9tHIL9ϟLH`IL9t讟LhHIL9t蒟HH0HH9tvLxHIL9tZLHIL9t>LH IL9t"HHpHH9tHHHH9tH`IL9t՞HIL9tHHPHH9t褞LH0IL9t舞LHIL9tlHtHH`HH9tHHIL9t3HIL9tHHH9t LLHIL9tHH0HH9ʝHH`HH9HIL9t萝L`HIL9ttHhHHH9tXHHH9tCLLH`IL9tHIL9t HIL9tHIL9!ܜHH`HH9t軜HHH9t覜LHIL9t莜LH0IL9trLxHIL9tVLHIL9t:HHHH9tLH IL9tHpIL9tLhHIL9͛HH`HH9訛LH`IL9i胛_LH`IL9tbHIL9tMHIL9y4oLH`IL9tHHH9tLHxHHH9tߚLXHIL9tÚHHH0HH9t觚LHIL9t苚LPHIL9toL`H IL9tSLhHpIL9t7HHHH9tLHIL9tHHHH9$ߙLH`IL9P躙FHH`HH9t虙HIL9耙HH`HH9t_HHH9tJLLHIL9t"L HIL9tL(HIL9tL0HIL9tΊLH IL9t貊LpHPIL9t薊LhHIL9tzHHH`HH9hhH`IL9OOH`IL9t,LHIL9 H`IL9tHIL9$ىH`IL9 HIL9t覉H0HHH9t芉L8HIL9tnHHHH9tRLH IL9H`IL9tL`HIL9\RH`IL9tHIL9tΈLHIL9H`IL9蕈H`IL9wH`IL9AY7H`IL9#;H`IL9H`IL9tHIL9tLHIL9H`IL9赇H`IL9H`IL9t肇HIL9iH`IL9KxH`IL9x-nHMvL9tLHpIL9tLHIL9tۆHIL9tƆHΏHMfL9t詆LH0IL9vvHMvL9ttHMfL9t]HHHH9tAHHHH9K!AHMvL9tLHIL9tLHIL9˅HMvL9t豅LH0IL9uHMvL9uHMvL9tqLH0IL9ffHMfL9b8XH0HH9tLHMvL9tLH0IL9 HMfL9tDŽLH0IL9HMvL9莄HMvL9~ptHMvL9tVHMfL9?;5HMvL9G=HMfL9)HMfL9HMvL9ÃH肒L躌H}M9uF踈I`HHtMe`I I<$ML$L9tdM9uLgI>MNL9tFI HLMNL9tʂI H}IL9t貂H躋HMmL9t蕂LHIL9tyHHHH9t]HIL9tHH IFH9t3H;HMmL9tHH`HH9tLH@IL9tށHM}L9tǁH0IL9uH0HH9t蠁LHIL9A脁7HH@HH9tbLHIL9tFLNLH@IL9t"LH@IL9tLH@IL9tH`IL9tрHIL9[踀QLH@IL9t藀LH@IL9uLH@IL9PHH@HH9+HHH9tM#LH@IL9tH@IL9tLHIL9[QLH@IL96,LH@IL9nHH@HH9hI^H@MvL9t/HH@HH9tHM]L9t~LH IL9t~LHIL9t~L(HIL9t~L8HIL9t~HHHH9tr~LXHIL9tV~HHHH9t:~H`H`HH9t~HhH@HH9t~H H HH9t}LHIL9t}L@HIL9t}LHHIL9t}LHIL9tv}LHIL9tZ}LxH`IL9t>}HFH@MvL9}H0HHH9t|LH@IL9t|LpHIL9t|LH@IL9t|HMmL9t|LH IL9tw|H@MNL9tb|LHIL9B|H@IvH9t(|HHHH9|uLHIL9{HMvL9t{H0IL9t{H`IL9t{LHIL9t{LH IL9tg{LHIL9tK{HHHH9t/{LxH`IL9t{L H@IL9tzH(H HH9tzHLH`IL9tzLHpIL9tzHHHH9tzLpHIL9tczHIL9tNzHPIL9t9zHIvH9t$zLH0IL9tzLxH`IL9tyLH@IL9tyLHIL9tyLHIL9tyHHHH9t|yHHHH9t`yLHIL9tDyLHIL9t(yHHHH9t yLH IL9txHHHH9txLHIL9txLHIL9txLHIL9txLHIL9R`xHHMvL9tFxLH`IL9t*xLHIL9txLHIL9twHHHH9twLHIL9twLH`IL9twLH0IL9twHHHH9tfwHH`HH9tJwLH@IL9t.wLHIL9twLHIL9tvLHIL9tvHHHH9tvLH`IL9tvHH@HH9vHXH`HH9tavHpIL9tLvHIL9t7vH`HHH9tvLhHIL9tuLHPIL9tuHMvL9tuLpH0IL9tuHH`HH9HMFL9t}uLH0IL9tauLH`IL9tEuHHpHH9t)uHHHH9" uHMvL9stiHH`HH9ttHpIL9ttHIL9ttLHIL9ttLXHIL9thtL`HPIL9tLtHMvL9t7tLhH0IL9ttHpH`HH9HMvL9js`HINH9LsBH0HH9tsLH`IL9tsLHIL9ddHMNL9YsHINH9;sHINH9sHMvL9r}HMvL9ir_HMvL9KrAHMNL9-r#HINH9rHMvL9irHH`HH9tHrLHpIL9t,rLHIL9trHIL9tqHIL9tqLpHPIL9tqHMvL9tqHH0HH9tqLxH`IL9yqHMvL9[qH@LRzH0HkH90uFEvIxH@Ht qMl$`I I}IUH9tpM9uLyH;HKH9tpH H@LyH(HjH9(uMuHdxH@HtpH}IU0H9tqpH`IL9t\pHdyH;HKH9tCpH 듐H}IL9t*pH2yLH@IL9tMpFLH@IL9toH`IL9toHIL9toLH IL9toHxLH@IL9t~oH@IL9tioHIL9tToLH@IL9O2oELH@IL9T oJHH@HH9/n%HIL9nLH@IL9nLH@IL9nLH@IL9x[nnLH@IL9}6nsLH@IL9XnNH@HH9ZLHIL9tmHXH@HH9H MnL9tmL@HIL9tmLHHIL9txmHHHH9t\mLPHIL9t@mHHHH9t$mLH`IL9tmL H@IL9tlH(H HH9tlL0HIL9tlL8HIL9tlHuLH@IL9plvHHH9LLH`IL9t8lLHIL9tlLHIL9u LH@IL9tkHH`HH9tkHHHH98kkk3HMmL9tukLH`IL9tYkHH@HH9t=kH IFH9t(kH0tHMmL9t kH0IL9tj|HMmL9tjLHIL9tjHHHH9tjHIL9SjIHM}L9mjH0HH9u!LHIL9ZLpHIL9t"ZLxH0IL9tZLXHIL9tYH`HHH9tYHhHHH9tYLHIL9YYLHIL9bcYXLHIL9=>Y3LHIL9Y}H}IL9tYH bH}IL9tXHaLHIL9tXHIL9tXHHH9tXLHH@HH9tg{X`HIL9tdXH HH9tMXLLHIL9t.XHIL9tXLHIL9tWHHHH9tWH`LHIL9tWHIL9WHHHH9WH`HH9teWLHHHH9tFWHIL9-WLHIL9^WTHIL9tVLPH`IL9tVL8HIL9tVHHHHH9tVL@HPIL9t}VHIL9thVHp_HIL9uH0IL9t9VL@H`IL9tVLPHIL9tVLHH IL9ddHIL9tUHIL9UH}IL9tUH}IL9tUL^H}IL9tnUH}IL9t\ULd^H}IL9tBULJ^LHIL9tUHPIL9t ULxHIL9tTHHHH9tTHpHHH9tTH]HHpHH9tTjLH0IL9tlTHPIL9tWTLHpIL9t;TLHIL93T)H}IL9tTL ]H}IL9tSL\HIL9tSHIL9tSLH@IL9tSHH HH9tSHHHH9tdSHl\H@IL9{CSqLHIL9t"SHH HH9tSHH@HH9tRHHHH9tRLH`IL9tRLH@IL9tRHH HH9tzRLHIL9t^RLHIL9tBRHJ[HIL9 !RLHIL9QH}IL9tQLZH}IL9tQH`IL9tQHZHIL9tQLHIL9t{QHHH9tfQMHHtRQH`H@=\HXH0HH9t#QL HIL9tQLHHIL9tPLPHIL9tPHH0HH9tPLHIL9tPLHIL9t{PLYHIL9ZPHIL9t@PMHHHH9tPHpHHH9tPLhH@IL9tOHsHObLHIL9tOLHIL9tOLH0IL9toOLH IL98OO.LHIL9t.OLHIL9tOH}IL9tNLXH}IL9tNLWH0IL9tNLHIL9tNLHIL9tNHWLH`IL9tiN뾐HIL9tQNLHIL9t5NHH`HH9tNLH@IL9tMH IL9tMLHIL9tMLHIL9tMHVHIL9tMLHPIL9""LHIL9LHIL9HLIL/VH}IL9t MLVHPIL9tLHHHH9tLHIL9tLLHIL9tLLULhH`IL9t~LHIL9tiLHHHHH9tMLHIL9t8LHPHHH9tLLXHIL9tLL`HpIL9tKLTH}IL9tKLTH}IL9tKLTH}IL9tKLTLXH@IL9trKLhHIL9uNHIL9tFKL`HIL9t*KHpIL9tKHTKH}IL9tJLSH}IL9tJH}IL9tJHSH@IL9tJLH IL9tJLSIMRHuJI]`H H;HKH9t\JL9uL_SH HIDL9 uOOI<$M\$L9tJI IM9uHH(IH(SI?MoL9tH(IH(I LH}IL9tIH;I9tILRHIL9tILHIL9toIHH`HH9tSILH@IL9t7ILH IL9tILHIL9tHLHIL9tHLHIL9tHHHHH9tHHHHH9tHLH`IL9tsHLH@IL9tWHH_QHH HH9/HH}IL9tHH QI<$H;tGI|$ H;tGLGHMnL9tGHHpHH9tGHHPHH9tGLH0IL9tzGLHIL9t^GHHHH9tBGHJPLHMAL;uV:LHNL GHH@H0H9tFLH IL9FI?I_H9tFI HLCLOH}IL9tFLOH}IL9trFLzOH`IL9tUFH@IL9t@FHHOH@M~L9t#FLHPIL9tFHH0HH9tELHIL9tELHIL9tEHNLHIL9tELHIL9tsEHHpHH95SE+H%` H@M~L9uH%` H%` H@MvL9vvH|$XHtDH|$0HtDHtHDHMHHDH50LVML^BHeDH50L6MI|$HtDHMMtLrDHu!E>HHR_bHYb[L$>_bHYbL/]HCH5F0HLHAHMHCH5 0HLHHAH|$(HtCHLH<$IL9tCHHHu'=HHR;_bHcXb^K1 3]b=_bHEXb@K13]H"CH5/HKH CH5m/HKHBH5W/HKH@H'LH@HLH05LHH$c]HKLk]HKHCLH$c]HKH`@HKLd]HKL0h]HKHABH5.HKH+BH5.HJHBH5v.HJH?HFKH?H6KH?H&KH2LHH$c]HKHd2LHH$c]HJHAH5-HZJHsAH5-HDJH]AH5-H.JH6?HJH&?H~JH?HnJHAH5x-LIHAH5b-LIHL>LM8(H II|$0HtAI|$Ht@IHM9uHIHu*:HHRj\bHUbH ]]:I\bHqUblH ]]H;I9t@HIH6@H5,HIHH >H|$@IL9tG@HOIH߾L@H}Ht @H(IH?H52,HHH=HIHGH=HHژH=˘1H<;H=HޘHHH9t?HHH^9L=_DH:GHB9LZ?uDH/M?HcH GH=HHH=ߗ1H:H=ɗHHϗHH9t>HGH8L=CHFH8H>CH/>HcHQ>H5*H"GH*H5*HFH>H5v*HFH;HFGH;H6GH=H5@*HFH=H5**HFH;HFH;HFH;HFH=H5)HTFHm=H5)H>FHW=H5)H(FH0;HFH ;HxFH;HhFH=H5r)HEH<H5\)HEH<H5F)HEH:HFH:HFH:HEH<H5)HpEH<H5(HZEHb:HEHR:HEHS<H5(H$EH,:HEH-<H5(HDH<H5x(HDH9HHEH9H8EH;H5B(HDH9HEH;H5(HDH9HDH;H5'HfDH;H5'HPDHX9HDHH9HDHI;H5'HDH3;H5'HDH 9HdDH8HTDH:H5^'HCH8H.DH:H58'HCH8HDH|$Ht:HCH:H5&HjCHr8HCH}8a]Hٜ]Ha7LCI}8?]L跜]H?7HCH/:H5&HCH:H5z&HBH7HJCH7H:CH9H5D&LBHL7HHt9HHt9HHt9HHt9HHt9HHt9H&H{PHHHt  :HBHHx8]H=茛]L6H{PHt 9HIBH8H5S%LAH8H5=%LAH8H5'%LAH8H5%LAH8H5$LkAL^9HAHo8H5$L@AHY8H5$L*AHC8H5$LAH-8H5$L@H8H5x$L@H8H5b$L@H7H5L$L@H7H56$L@H7H5 $L@H7H5 $Hz@H7H5#Hd@H}7H5#HN@HV5H@HF5H@H65H@H77H5#H@H5Hh@H7H5r#H?H6H5\#H?H4H,@H4H@H6H5&#H?H6H5#H?H4H?Hx4H?Hy6H5"HJ?Hc6H5"H4?H<4H?H,4H?H-6H5"H>H6H5x"H>H3HH?H3H8?H5H5B"H>H5H5,"H>H3H>H3H>H5H5!Hf>H5H5!HP>HX3H>HH3H>HI5H5!H>H35H5!H>H5H5~!H=H5H5h!H=H2H8>H2H(>H4H52!H=H2H>H2H=H2H=H4H5 H\=Hu4H5 HF=HN2H=H>2H=H?4H5 H=H)4H5 H H8H.H5HH7H.H52H7H,H8H,H7H.H5Hl7H.H5HV7H^,H7HN,H7HO.H5H 7H9.H5H 7H,Hj7H,HZ7H.H5dH6H-H5NH6H+H7H+H7H-H5L6HL+HtH-H6H-H5LP6Hi-H5L:6HS-H5L$6H=-H5L6H'-H5L5H-H5rL5H,H5\L5H,H5FL5H,H50L5H,H5L5H,H5Lt5H,H5L^5Hw,H5LH5Ha,H5L25HK,H5H5H5,H5H5H*Hf5H)HV5H+H5`H4H+H5JH4H)H5H)H 5H+H5H4H+H5Hn4Hv)H4Hf)H4Hg+H5H84HQ+H5H"4H*)H4H)Hr4H+H5|H3H+H5fH3H(H64H(H&4H*H50H3H*H5H3H(H3H(H3H*H5HT3Hm*H5H>3HF(H3H6(H3H7*H5H3H!*H5H2H'HR3H'HB3H)H5LH2H)H56H2H'H3H'H2H)H5Hp2H)H5HZ2Hb'H2HR'H2HS)H5H$2H=)H5H2H'Hn2H'H^2H)H5hH1H(H5RH1H&H"2H&H2H(H5H1H(H5Hv1H~&H1Hn&H1Ho(H5H@1HY(H5H*1H2&H1H"&Hz1H#(H5H0H (H5nH0H%H>1H%H.1H'H58H0H%H1H'H5H0H%H0H'H5H\0Hu'H5HF0HN%H0H>%H0H?'H5H0HH%H|$hHtT'H\0H'H5fH/H&H5PH/H&H5:H/H&H5$H/H&H5H~/H&H5Hh/H&H5HR/Hk&H5HH'H.H'HCHt HHHh'HCHt HHHJ'HCHt HHH,'HCHt HHH'HCHt HHH&HCHt HHH&H{H5 HL&HTH&HUH5 H&&H.H&H/H5 H&HH`&H H5j H%HH:&HH5D H%HH&HH5 H%HH5 Hx%HH%HpH%HqH5HB%HJH%HKH5H%H$H|%H%H5H$HHV%HH5`H$HH5JH$HH%HH %HH5H$HH5Hn$HvH$HfH$HgH5H8$H@H$HAH5H$HHr$HH5|H#HHL$HH5VH#HH&$HH50H#HH5H#HH#HH#HH5HT#H\H#H]H5H.#HGH5H#I8}]L|]H=sHc#HHS#HH5]H"HH5GH"HH51H"HH#HH"HH"HH5H["HtH5HE"HMH"H=H"H>H5H"H(H5H!HHY"HHI"HH5SH!HH#"HH5-H!HH5H!HH!HH!HH5HQ!HjH5H;!HCH!H3H!H4H5H!H He!HHU!HHE!H}8z]HSz]HL#!HH5,H H}8z]Hz]HL HH HH5HT HmH5H> HD$Hx8@z]H|$y]H=p:H HHr H Hb H H5lHHH5VHHH& HH HH5 HHHHH5HjHrHHsH5HDH]H5H.H6HH&H~HD$PHx8y]H|$Px]H=o HRHH5\HHH,HHHH5&HHH5HHHHxHHyH5HJHcH5H4H<HH,HH-H5HHH5xHHHHHH8HH5BHHH5,HHHHHHH5HfHH5HPHXHHHHHIH5HH3H5HH HdHHTHH5^HHH.HH9t LHH5LHH5LxHH5LbHLeH{H HHTH5L%H=H5LH'H5LHH5rLHLH{H H+HH55LI<$HtHHHuxLH{Hu_HCH;1HDHCH;HCH9|$(tHHu LIPHL'sLL/fLsLHuuH{Hu_HCH;1H HCH;HCH9|$(tH H LHLL'LL/LvHHuAIHuEIGI?1H) IGI?IGH9|$u"HL'LH/rHhאH-LcMHCH;1H H;HC0HCHCH9tHT$H|$ HH9tH H HD$HC(H HIL H}I9tHHk9I|$ID$M,$H9t~LMsH5LcMHCH;1H H;HC0HCHCH9t!HT$H|$ HH9t HH HD$HC( H HIL H}I9tHHs9I|$ID$M,$H9tLM{HN LfI)LmMHEH}1H H}HE0HEHEH9tH( H(H}HEH9tH9uLHLu(ILI}H9|$tLI}IEMuH9tLM0IMH?LcMHCH;1H H;HC0HCHCH9t+HT$H|$ HH9tHHHD$HC(HH ILH}I9t H H}9I|$ID$M,$H9t LM HGLcMHCH;1HH;HC0HCHCH9t3 HT$H|$ HH9t H#HHD$HC(HH ILH}I9t H H9I|$ID$M,$H9t LM IOLkMHCH;1HH;HC0HCHCH9t; HH(H;HCH9t H9uL"HLs(!HL ILI}H9|$t L I3I}IEMuH9t LM HSLcMHCH;1HH;HC0HCHCH9t? HT$H|$ HH9t' H/HHD$HC()HH ILH}I9t H H9I|$ID$M,$H9t LM H[LcMHCH;1HH;HC0HCHCH9tG HT$H|$ HH9t/ H7HHD$HC(1HH ILH}I9t H H9I|$ID$M,$H9t LM HtL IOLkMHCH;1HH;HC0HCHCH9t; HH(H;HCH9t H9uL"HLs(!ILI}H9|$tL I}IEMuH9tLM3Iv"HYH5H*HCH5HHHtH HdHHTHH5^HHH5HLH|$HHt H|$ HtD=HLHu+HHHH5LcLkHHjH5L;HSH5H$H,HH-H5HHH^HH5hHHH5RHHH"HHHH5HHH5HvH~HHnHHoH5H@HYH5H*H2HH"HzH#H5HH H5nHHH>HH.HH58HHHHH5HHHHH5H\HuH5HFHNHH>HH?H5HH)H5H HHZHHJHH5TH HH5>H HHHH HH5Hx H|$HtH HiH HiH5H: HBH HCH5H HHt H@HtSH HtBHHt1HHt H HtL%H ID$H H H9tID$H Hx H H9tID$H@ H0 HP H9tID$HHH H9txID$HHHH9tTMHHHHHHHCHt#HHtLcXLkHMu$H{0HtH{HtL It$Ld!]Mt$LMI|$_H HiH5H: HH|$8HtH$HtvL|$PL$I|$_I_H^ HH|$8Ht7H$Ht%L|$PL$MtL HHH5H HHH|$8HuHH5H_ HHbH HcH5H4 HL|$PL$/bH3H5H HH5~H HHHA I~h_ HH5<H MtLH HH HH5Hp HxH HyH5HL$B HH$L$0H$H|$xHt|L$H<$H_I_H|$ H_H|$H_H|$0Ht_H|$(Hf_H$Y_H|$XHuKH$XB_H$5_I},_HHhHL$HyPHvH5HGHH$HHH3H:H5H H$H5HHHUHHEHH5OHHMoL bHHHH5HHL$0H$H$7H$H&HhHtH ]HH=H5HH'H5HHHXHHHHH5RHHH5<HHH HHHH5HvHH5H`HhHHXHHYH5H*HCH5HHHtH HdH H5nHHH>H&]H.HH$H HH$H9tHHH$ H HHD$H9tHHH$ H HHD$H9tHHsH$H HH$H9tbHjHCH$H HH$H9t2H:HH$H HH$H9tH HH$H HH$H9tHHH$H HH$H9tHHH$H HH$H9trHzH#H5HH H5nHHH5XHHH5BHHH$HHHHH|$8HtHHL$eH$HtI}_H$HtH$8_H$HudH$_H|$xHtRH$_H$Hx_H|$XHt)H$\_;HHHH5HHH5HoHH5HYHPHY)H]H5H.HL$H&9HHI~_HHH5eHHH5OHHHH5,HHUHH5 HyHH5HcH|H5HMHfH5H7HPH5H!H:H5H H$H5HHH5oHHH5YHHH5CHHH5-HHH5HHH$_H|$xHtH|$XHtH|$8HtH$_HHH7MtLzH1H5HHH5|HHHLHLHH5IHHH51HHH$0HD$H$HD$H|$H_H|$H_AHkH$0HD$H$HD$HXH5H)HH)H-H5HHHH$0HD$H$HD$MJL&=HH5;HHH5%HHH$H}!_ZHH$|HHmH$Mt6HgH5H8I_H}_SI_LpH'H5LHH5rLL-+H}I IEHL9tHIUHL9tH8HHHHHHCHtHHtLcXLkHMuXH{0HtH{HtLLML-L-fVILL-P@It$L]Mt$LAMHH5VLHH5@LHH5*LHH5HHH5HnHH5HXH`HHPHH@HHAH5HHHrHH5|HHH5fHHH6HH&HH50HHH5HHHHHHH5LTILWL%HID$HH H9t|ID$HHHH9tXID$HhHXHxH9t4ID$H HH0H9tH@HtHHtHHtHHHHHqHHCHtHHtLcXLkHMMuSH{0MHt}H{HtoLwH H5LH H5kLIt$L]Mt$L!MHH56LI|$<_H|$H._H|$HH _H|$XH_H|$pH_H|$xH_HH|$H_H|$HҼ_HHCH5HHHtL HHHHF]HNHH>HH5HHHHHH5"HHHHHHH5H\HdHHeH5H6H>HH?H5HHHpHH5zHHHJHH5THHH$HH5.HHHHH5HxHHHH5HRHkH5HHFHH5PHHHMtLHHH5HHtHHH{HI~_L8(H LIH߰_L9uHH|$HtȐH|$HtqL8(H LIH藰_L9uHZH|$Ht;HCHH3H|$8HuH|$XHuHH5%HHH5HHH5HiHqHHaHHbH5H3HLH5HH%H}HHmHH5wHHH5aHHH1HH!HH5*HHH5HHHH|HH}H5HNHgH5H8H@HH0HH1H5HHH5|HHHLHHHHH5(HHHHHHH5HbH{H5HLHTHHDHHEH5HH/H5HHH5zHHH5dHHH4HH$HH5.HHHHHHHHH5HXHqH5HBHJHH:HH;H5H H%H5HHHVHHFHH5PHHH5:HHH HHHH5HtHH5H^HfHHVHHWH5H(H0HH1H5HHH5|HHHLHHHWH5H(H0HH HxH!H5HH H5lHHHHH?H5HHHpHH5zHHHJHH5THHH$HH5.HHHHH5HxHHHH5HRHZHH[H5H,H4HH5H5HHHfHH5pHHH@HH5JHHHHH5$HHHHH5HnHvHHwH5ذHHHPHHQH5H"H*HH+H5HHH\HH5fHHH6HH5@HHHHH5HHHHH5HdHlHHmH5ίH>HFHHGH5HH HxH!H5HHHRHH5\HHH,HH56HHHHH5HHHHH5HZHbHHcH5ĮH4HHH5HHHHHH5"HH蚾HHH5HlHtHHuH5֬HFHNHHOH5H H(HH)H5HHHZHH5dHHܽH4HݿH5>HH趽HHH5HH落HHH5HbHjHHkH5̫HjEf/6H,H9I|$ HBIfIt$IH9vIHHH92L4Lh1HLdHMl$I4$LH9]ML$LMDSHcD[Dk IcIDsHHIcD{IcHH1HIcH1HD}McH1II $H11L1IHHH5oL^foj1fofDoLfo=jHfo)@fDopH=߰fo) foL-2fDofoPj)`fDofo Hj)pfDoHjfo%`j)fDo%pj)D)0)P)D))D))D)D)D)))fofDofDofoD)@fofo)Pfo)`fo5jfDo)pfDo jfDoj)fDojfo=jD) fDo̬jfDoD)0D))D)))))D)D)D)D) fo fDofopfDo VjD)Pfofjfo-jD)@fDo]jfo5jD)0fDo-jfojD)fo=\jD)D)D)D)0)@D)PD)@))`D)MD)u)M)UD)]LuL LHH5a fo`1fDofDofopLHfDofo)H=#afo)@fo-|[jfDofo[jD) fDoj[jfo)fDo)`fDo)0D)PD)`D)pD)pD))D)D)D)))D))fofDo fDo)fDofo foD)fDoZjfo=ZjD)`fo-Zj)fo@fDo ZjD)`fDo%ZjD)D)D) )0)p)@))PD)D)p)D)D)D)D))foPfDo0fo@foD)PfDo5ZjfoD)fDoZj)foPfo) fDo%Yjfo0D)fDo-YjD))0D)@D)`D))p))))D)D))D)D)fDo }YjD)fDo=|YjD)D)D))XLHNH5^BfoJYj1fDo`fDofoLHfDo5?YjfoGYj)H=y]fo%QYj)fofoXj)PfDoYjfo=2Yjfo5JYjD)fDo%)YjD) )0D)@D))`) D)pD)))0))D)D))fDofofofoD)foXjfo=YjD)`fDo)@fDofDo vXjfoXjD)@fDo=mXj)fDofDodXjfo%XjD)D)D) D)0)PD)pD)))PD))))`)fofDo%2Xjfofo52XjD)fDo-1Xj)fDo=AXjfDo (Xj)fDo8Xjfo@Xjfo hXjD)fDo7Xjfo%_XjD)fDo5.XjD) D)D)0D)@D)0D)`)pD)D))))D)PD)D)fo=WjD)PfDoWj)D))LHH5eZfo@LfofDoHfDo`1fDo)fDoH=YfopfoD)fDofo0) fDo foD)0fDo$Wjfo,WjD)@fDo+WjD)PD)`)p))D)D)))))D))foPfofDo`fo)`fDo ) fofDop)fDofo) fDofDo@foD)fDoPfo PVjD)fo-0VjD)@))0D)P)pD)D)D))))fDofofo)PfDofofo)fDo)fDo0foD)0fDo-UjfDo Uj)@)`)pD)D))D)D)D)))LHH5+WHp[A\A]A^]fDf.U1H=6YHAVI AUATSHLHLHpfo-KjfDoKjfo=KjfovKjfDoKjfo KjD)fDo5Kjfo|Kj)foKjfo%Kj) )0D)@)P)`)p))D)D)pD)D)D)D))foKjfDo=KjfDo-[Kjfo Kj)fDo%SKjfoKjD)fDoKj)0fo5 KjfDo2KjD)fDo AKjfDoKj)D)D)D)D) D)@D)))PD)`D))p)))D)D)D)fo5WKjfDo=KjfoJjfo-KjfDo Kj)fo=KjfDo5 Kjfo%Jj)fDo%%Kjfo]Kj)fDoKj)fDo-JjfDoDKj))))D)D)D)D)D) D)D)0D)@D)P)`D)D)pfo JjfoJjfo=!Kj)fDo5!KjfDo-8Kj)foJjfo5Kjfo%Jj)fDoJjfo-Jj)D)D))D))))D)D) ))p)D)D) )`)0D)D)@fDo%zJjfoKjfo JjfoJjfDoJjfo-Kj)fDoJjfoJj)0fo%Jj)fo=JjfDo"Jj)fDo="JjfDo )Jj) )D)))`))D)PD)PD)`D)@D)pD)pD)D))fo5XJjfDo-_JjfDo=Jj)]fDo5)JjfDo%PJjD)0fDoOJjfDo fJjD)@fDoeJjD) D)0D)@)PD)D)`D)p)PD)ED)D)}D)MD)D)ULu!L%: HH5USLfoJj1fofDoLfo=JjHfo)@fDopH=Rfo) fofDofo}Ij)`fDofo uIj)pfDouIjfo%Ij)fDo%Ij)D)0)P)D))D))D)D)D)))fofDofDofoD)@fofo)Pfo)`fo54IjfDo)pfDo HjfDoHj)fDoHjfo=HjD) fDoHjfDoD)0D))D)))))D)D)D)D) fo fDofopfDo HjD)PfoHjfo-HjD)@fDoHjfo5HjD)0fDo-HjfoIHjD)fo=iHj)p)`))D)D)))))))D)D)))D)fDo%$Hjfo@fo`fo5LHjfDo0)fo=$HjfDo)fDofDo`foP)fDofoGj)fDopfoGj)D))) D)D) D)0D)@)P)`)p)D)D)fDo%xGjfoGjfDoP) fDofDo=^Gj)0fDonGjfo0foNGjD)pfDofouGjD)fDo5TGjD)D)D)D)0)@D)PD)@))`D)MD)u)M)UD)]LuL !LHH5Nfo`1fDofDofopLHfDofo)H=yMfo)@fo-FjfDofoFjD) fDoFjfo)fDo)`fDo)0D)PD)`D)pD)pD))D)D)D)))D))fofDo fDo)fDofo foD)fDoEjfo=EjD)`fo-Ej)fo@fDo EjD)`fDo%EjD)D)D) )0)p)@))PD)D)p)D)D)D)D))foPfDo0fo@foD)PfDo5&EjfoD)fDoEj)foPfo) fDo%Ejfo0D)fDo-DjD))0D)@D)`D))p))))D)D))D)D)fDo DjD)fDo=DjD)D)D))~!LHdH5]JXfo`Dj1fDo`fDofoLHfDo5UDjfo]Dj)H=Ifo%gDj)fofoDj)PfDo0Djfo=HDjfo5`DjD)fDo%?DjD) )0D)@D))`) D)pD)))0))D)D))fDofofofoD)foCjfo=DjD)`fDo)@fDofDo CjfoCjD)@fDo=Cj)fDofDozCjfo%CjD)D)D) D)0)PD)pD)))PD))))`)fofDo%HCjfofo5HCjD)fDo-GCj)fDo=WCjfDo >Cj)fDoNCjfoVCjfo ~CjD)fDoMCjfo%uCjD)fDo5DCjD) D)D)0D)@D)0D)`)pD)D))))D)PD)D)fo=CjD)PfDoBj)D))!LHH5Ffo@LfofDoHfDo`1fDo)fDoH=,FfopfoD)fDofo0) fDo foD)0fDo:BjfoBBjD)@fDoABjD)PD)`)p))D)D)))))D))foPfofDo`fo)`fDo ) fofDop)fDofo) fDofDo@foD)fDoPfo fAjD)fo-FAjD)@))0D)P)pD)D)D))))fDofofo)PfDofofo)fDo)fDo0foD)0fDo-@jfDo @j)@)`)pD)D))D)D)D)))"!LHH5CHp[A\A]A^]ff.f.UH=DHH= H]H5bDDUH=3HKcjE1AjH $lH5I"HjHjH$D/McH=DH oKcH=I"ifUH=H3H KcjE1AjH lH55O"HjHjHCLcH=CH KcH=xK"ifUHhDHHzHAWAVAUATSHHDžHHCHCHCHCC?HCHC]H;CHvKHqHH9uL$L1HL'HH5]CH^CHL=HCLC ILf.IcH .C1MIHHMIMME9ktQI3HHcF1HHL9t/ifH6HTHcF1HHI9?D9uIL;iH=W"H+H5BHH5->m@M"H{(H5E>mDž&M"H{PH5S>mDž8 M"H{xH5a>mDž`L"HH5l>mDž L"HH5o>mDž L"HH5z>mDžL"HH5>mDž~L"H@H5>mDž( aL"HhH5>mDžP DL"HH5>mDžx 'L"HH5>mDž L"HH5>mDž K"HH5>mDžK"H0H5>mDž K"HXH5>mDž@K"HH5>mDžh yK"HH5;nDž\K"HH5>mDž ?K"HH5>mDž"K"H H5>mDžK"HHH5>mDž0J"HpH5>mDžXJ"HH5>mDžJ"HH5>mDž J"HH5>mDž tJ"HH5>mDžWJ"H8H5>mDž :J"H`H5>mDžHJ"HH5>mDžp J"HH5>mDžI"HH5>mDžI"HH5nDž I"H(H5>mDžI"HPH5>mDž8oI"HxH5>mDž` RI"HH5>mDž5I"HH50nDžI"HH5>mDžH"HH5>mDžH"H@H5>mDž( H"HhH5>mDžPH"HH5>mDžxH"HH5>mDžjH"HH5>mDžMH"HH5>mDž0H"H0H5>mDžH"HXH5>mDž@ G"HH5?mDžhG"HH5?mDž G"HH5?mDžG"HH5 ?mDžG"H H5 ?mDžeG"HHH5?mDž0HG"HpH5anDžX+G"HH5>mDžG"HH5?mDžF"HH5?mDžF"H H5?mDžF"H8 H5 ?mDž F"H` H5 ?mDžH}F"H H5?mDžp`F"H H5?mDžCF"H H5?mDž&F"H H5?mDž F"H( H5?mDžE"HP H5?mDž8E"Hx H5!?mDž`E"H H5$?mDžE"H H5'?mDžxE"H H5*?mDž[E"H H5-?mDž>E"H@ H50?mDž(!E"Hh H53?mDžPE"H H56?mDžxD"H H59?mDž D"H H5D?mDžD"H H5G?mDžD"H0 H5J?mDžsD"HX H5M?mDž@VD"H H5P?mDžh$9D"H H5mnDž D"H H56?mDž$C"H H5A?mDž C"H H5D?mDžC"HH H5G?mDž0C"Hp H5R?mDžXC"H H5]?mDžnC"H H5`?mDžQC"H H5k?mDž4C"HH5v?mDž C"H8H5y?mDž B"H`H5|?mDžHB"HH5/nDžpB"HH50nDžB"HH51nDžB"HH5(?mDžiB"H(H5nDž LB"HPH5nDž8 /B"HxH5nDž`B"HH5>mDžA"HH5>mDžA"HH5>mDžA"HH5>mDžA"H@H5>mDž(A"HhH5>mDžP dA"HH5>mDžxGA"HH5>mDž *A"HH50nDž A"HH5>mDž @"H0H5>mDž@"HXH5>mDž@ @"HH5>mDžh@"HH5>mDž|@"HH5nDž_@"HH5nDžB@"H H5>mDž %@"HHH5>mDž0@"HpH5>mDžX?"HH5>mDž?"HH5>mDž?"HH5>mDž?"HH5>mDžw?"H8H5>mDž Z?"H`H5>mDžH =?"HH5>mDžp ?"HH5>mDž?"HH5>mDž>"HH5>mDž>"H(H5>mDž >"HPH5>mDž8 >"HxH5>mDž`r>"HH5nDž U>"HH5nDž 8>"HH5nDž >"HH5nDž ="H@H5x>mDž(="HhH5>mDžP="HH5>mDžx="HH5>mDž="HH5>mDžm="HH5>mDžP="H0H5>mDž 3="HXH5>mDž@="HH5>mDžh<"HH5>mDž<"HH5>mDž<"HH5>mDž<"H H5>mDž <"HHH5>mDž0h<"HpH5>mDžX K<"HH5>mDž.<"HH5>mDž<"HH5>mDž;"HH5>mDž;"H8H5>mDž ;"H`H5>mDžH;"HH5>mDžp;"HH5?mDžc;"HH5 ?mDžF;"HH5?mDž);"H(H5#?mDž ;"HPH5.?mDž8:"HxH59?mDž`:"HH5D?mDž:"HH5O?mDž:"HH5Z?mDž{:"HH5e?mDž^:"H@H5p?mDž(A:"HhH5{?mDžP$:"HH5?mDžx:"HH5?mDž9"HH5?mDž9"HH5?mDž9"H0H5?mDž9"HXH5?mDž@v9"HH5?mDžhY9"HH5?mDž<9"HH5?mDž9"HH5?mDž9"H H5?mDž8"HHH5?mDž08"HpH5 @mDžX 8"HH5@mDž8"HH5 @mDžq8"HH5+@mDžT8"HH56@mDž78"H8H5A@mDž 8"H`H5L@mDžH 7"HH5W@mDžp 7"HH5b@mDž 7"HH5m@mDž 7"HH5x@mDž 7"H(H5@mDž l7"HPH5@mDž8 O7"HxH5@mDž` 27"HH5@mDž 7"HH5@mDž 6"HH5@mDž 6"HH5@mDž 6"H@H5@mDž( 6"HhH5@mDžP 6"HH5@mDžx g6"HH5@mDž J6"HH5@mDž -6"H H5@mDž 6"H0 H5@mDž 5"HX H5@mDž@ 5"H H5@mDžh 5"H H5@mDž 5"H H5@mDž 5"H H5@mDž b5"H !H5@mDž E5"HH!H5@mDž0 (5"Hp!H5AmDžX  5"H!H5 AmDž 4"H!H5AmDž 4"H!H5AmDž 4"H"H5AmDž 4"H8"H5!AmDž z4"H`"H5,AmDžH]4"H"H5/AmDžp@4"H"H52AmDž#4"H"H5=AmDž4"H#H5HAmDž3"H(#H5SAmDž3"HP#H5^AmDž83"Hx#H5iAmDž`3"H#H5tAmDžu3"H#H5wAmDžX3"H#H5AmDž ;3"H$H5AmDž3"H@$H5AmDž(3"Hh$H5AmDžP2"H$H5AmDžx 2"H$H5AmDž2"H$H5AmDž 2"H%H5AmDžp2"H0%H5AmDžS2"HX%H5AmDž@62"H%H5AmDžh 2"H%H5AmDž1"H%H5AmDž1"H%H5BmDž1"H &H5 BmDž 1"HH&H5BmDž01"Hp&H5BmDžXk1"H&H5%BmDžN1"H&H5(BmDž11"H&H53BmDž1"H'H5>BmDž0"H8'H5IBmDž 0"H`'H5TBmDžH0"H'H5_BmDžp0"H'H5jBmDž0"H'H5uBmDž f0"H(H5BmDžI0"H((H5BmDž,0"HP(H5BmDž80"Hx(H5BmDž`/"H(H5BmDž/"H(H5BmDž/"H(H5BmDž/"H)H5BmDž~/"H@)H5BmDž(a/"Hh)H5BmDžPD/"H)H5BmDžx'/"H)H5BmDž /"H)H5BmDž."H*H5BmDž ."H0*H5BmDž."HX*H5BmDž@."H*H5BmDžhy."H*H5BmDž\."H*H5BmDž?."H*H5BmDž"."H +H5CmDž."HH+H5CmDž0-"Hp+H5 CmDžX-"H+H5CmDž-"H+H5CmDž -"H+H5CmDž t-"H,H5&CmDžW-"H8,H51CmDž :-"H`,H54CmDžH-"H,H5?CmDžp-"H,H5BCmDž,"H,H5MCmDž,"H-H5PCmDž,"H(-H5SCmDž,"HP-H5^CmDž8o,"Hx-H5aCmDž`R,"H-H5lCmDž5,"H-H5oCmDž,"H-H5rCmDž+"H.H5uCmDž+"H@.H5xCmDž(+"Hh.H5{CmDžP+"H.H5CmDžx+"H.H5CmDžj+"H.H5CmDžM+"H/H5CmDž0+"H0/H5CmDž+"HX/H5CmDž@*"H/H5CmDžh*"H/H5CmDž*"H/H5CmDž*"H/H5CmDž*"H 0H5CmDže*"HH0H5CmDž0H*"Hp0H5CmDžX+*"H0H5CmDž*"H0H5CmDž)"H0H5CmDž)"H1H5DmDž)"H81H5 DmDž )"H`1H5 DmDžH})"H1H5DmDžp`)"H1H5"DmDžC)"H1H5%DmDž&)"H2H5(DmDž )"H(2H5+DmDž("HP2H5.DmDž8("Hx2H59DmDž`("H2H5("H@3H5`DmDž(!("Hh3H5cDmDžP("H3H5fDmDžx'"H3H5qDmDž'"H3H5tDmDž'"HH5wDmDžH4'"H04H5sDmDž l'"HX4H5vDmDž@ O'"H4H5DmDžh 2'"H4H5DmDž '"H4H5DmDž &"H4H5DmDž &"H 5H5DmDž!&"HH5H5DmDž0!&"Hp5H5DmDžX!&"H5H5DmDž!g&"H5H5DmDž!J&"H5H5DmDž!-&"H6H5DmDž!&"H86H5DmDž "%"H`6H5DmDžH" %"H6H5DmDžp"%"H6H5DmDž"%"H6H5DmDž"%"H7H5DmDž" b%"H(7H5DmDž#E%"HP7H5DmDž8#(%"Hx7H5EmDž`# %"H7H5 EmDž#$"H7H5EmDž#$"H7H5EmDž#$"H8H5&EmDž$$"H@8H51EmDž($z$"Hh8H5H50FmDž)I "H0>H53FmDž*, "HX>H56FmDž@* "H>H59FmDžh*"H>H5DFmDž*"H>H5OFmDž*"H>H5ZFmDž*"H ?H5eFmDž+ ~"HH?H5hFmDž0+a"Hp?H5kFmDžX+D"H?H5nFmDž+'"H?H5yFmDž+ "H?H5FmDž+ "H@H5FmDž+"H8@H5FmDž ,"H`@H5FmDžH,"H@H5FmDžp, y"H@H5FmDž,\"H@H5FmDž,?"HAH5FmDž,""H(AH5FmDž-"HPAH5FmDž8-"HxAH5FmDž`- "HAH5FmDž- "HAH5FmDž-"HAH5FmDž-t"HBH5FmDž.W"H@BH5FmDž(.:"HhBH5FmDžP."HBH5nDžx. "HBH5FmDž. "HBH5FmDž."HCH5GmDž."H0CH5GmDž/"HXCH5GmDž@/o"HCH5 GmDžh/R"HCH5 GmDž/ 5"HCH5GmDž/"HCH5"GmDž/ "H DH5%GmDž0 "HHDH50GmDž00"HpDH53GmDžX0 "HDH5>GmDž0"HDH5IGmDž0j"HDH5TGmDž0M"HEH5WGmDž00"H8EH5ZGmDž 1"H`EH5eGmDžH1"HEH5pGmDžp1"HEH5{GmDž1"HEH5GmDž1"HFH5GmDž1"H(FH5GmDž2e"HPFH5GmDž82 H"HxFH5GmDž`2+"HFH5GmDž2 "HFH5GmDž2"HFH5GmDž2"HGH5GmDž3"H@GH5GmDž(3"HhGH5GmDžP3 }"HGH5GmDžx3 `"HGH5GmDž3C"HGH5GmDž3 &"HHH5GmDž3 "H0HH5GmDž4"HXHH5GmDž@4"HHH5GmDžh4 "HHH5GmDž4"HHH5HmDž4x"HHH5 HmDž4["H IH5 HmDž5>"HHIH5HmDž05!"HpIH5HmDžX5"HIH5HmDž5"HIH5!HmDž5"HIH5,HmDž5"HJH5/HmDž5"H8JH52HmDž 6s"H`JH55HmDžH6V"HJH58HmDžp69"HJH5CHmDž6"HJH5FHmDž6 "HKH5QHmDž6"H(KH5THmDž7"HPKH5WHmDž87"HxKH5ZHmDž`7"HKH5]HmDž7n"HKH5hHmDž7Q"HKH5kHmDž74"HLH5nHmDž8"H@LH5yHmDž(8"HhLH5|HmDžP8"HLH5HmDžx8"HLH5HmDž8"HLH5HmDž8"HMH5HmDž8i"H0MH5HmDž9$L"HXMH5HmDž@9/"HMH5HmDžh9"HMH5HmDž9"HMH5nDž9"HMH5HmDž9"H NH5HmDž:"HHNH5HmDž0:"HpNH5HmDžX:d"HNH5HmDž:G"HNH5HmDž:*"HNH5HmDž: "HOH5HmDž:"H8OH5HmDž ;"H`OH5HmDžH;"HOH5HmDžp; "HOH5HmDž;|"HOH5HmDž;_"HPH5HmDž;B"H(PH5HmDž<%"HPPH5HmDž8< "HxPH5HmDž`<"HPH5HmDž<"HPH5HmDž< "HPH5ImDž< "HQH5ImDž=w"H@QH5ImDž(= Z"HhQH5ImDžP= ="HQH5ImDžx= "HQH5*ImDž= "HQH55ImDž="HRH58ImDž="H0RH5;ImDž>"HXRH5>ImDž@>"HRH5AImDžh>r"HRH5LImDž> U"HRH5WImDž>8"HRH5bImDž>"H SH5eImDž?"HHSH5pImDž0? "HpSH5{ImDžX?"HSH5ImDž?"HSH5ImDž?"HSH5ImDž?m"HTH5ImDž?P"H8TH5ImDž @3"H`TH5ImDžH@"HTH5ImDžp@ "HTH5ImDž@"HTH5ImDž@"HUH5ImDž@ "H(UH5ImDžA "HPUH5ImDž8Ah"HxUH5ImDž`AK"HUH5ImDžA."HUH5ImDžA"HUH5ImDžA "HVH5ImDžB"H@VH5ImDž(B "HhVH5ImDžPB"HVH5ImDžxB"HVH5ImDžBc"HVH5ImDžBF"HWH5JmDžB)"H0WH5=nDžC "HXWH5ImDž@C "HWH5ImDžhC "HWH5ImDžC "HWH5JmDžC "HWH5JmDžC{ "H XH5JmDžD ^ "HHXH5nDž0DA "HpXH5JmDžXD $ "HXH5JmDžD  "HXH5JmDžD "HXH5JmDžD "HYH5'JmDžD "H8YH5*JmDž E "H`YH55JmDžHEv "HYH58JmDžpE Y "HYH5;JmDžE< "HYH5>JmDžE  "HZH5AJmDžE  "H(ZH5DJmDžF "HPZH5GJmDž8F "HxZH5JJmDž`F "HZH5MJmDžF "HZH5XJmDžFq "HZH5[JmDžFT "H[H5^JmDžG7 "H@[H5aJmDž(G  "Hh[H5dJmDžPG "H[H5oJmDžxG "H[H5rJmDžG "H[H5uJmDžG "H\H5JmDžG "H0\H5JmDžHl "HX\H5JmDž@HO "H\H5JmDžhH2 "H\H5JmDžH "H\H5JmDžH "H\H5JmDžH "H ]H5JmDžI "HH]H5JmDž0I "Hp]H5JmDžXI "H]H5JmDžI g "H]H5JmDžIJ "H]H5JmDžI- "H^H5JmDžI  "H8^H5JmDž J"H`^H5JmDžHJ "H^H5JmDžpJ"H^H5JmDžJ"H^H5JmDžJ"H_H5JmDžJ b"H(_H5JmDžKE"HP_H5JmDž8K("Hx_H5JmDž`K "H_H5JmDžK"H_H5JmDžK "H_H5JmDžK"H`H5JmDžL"H@`H5JmDž(L z"Hh`H5JmDžPL]"H`H5JmDžxL@"H`H5JmDžL #"H`H5KmDžL"HaH5KmDžL "H0aH5KmDžM"HXaH5KmDž@M "HaH5nDžhM"HaH5KmDžM u"HaH5KmDžMX"HaH5 KmDžM;"H bH5 KmDžN"HHbH5KmDž0N"HpbH5KmDžXN "HbH5KmDžN"HbH5KmDžN "HbH5KmDžN"HcH5'KmDžNp"H8cH52KmDž O S"H`cH55KmDžHO6"HcH58KmDžpO"HcH5;KmDžO"HcH5>KmDžO "HdH5AKmDžO"H(dH5DKmDžP"HPdH5OKmDž8P"HxdH5ZKmDž`Pk"HdH5]KmDžPN"HdH5`KmDžP1"HdH5cKmDžP"HeH5fKmDžQ"H@eH5iKmDž(Q"HheH5tKmDžPQ "HeH5wKmDžxQ"HeH5KmDžQ"HeH5KmDžQf"HfH5KmDžQ I"H0fH5KmDžR,"HXfH5KmDž@R"HfH5KmDžhR"HfH5KmDžR"HfH5KmDžR"HfH5KmDžR"H gH5KmDžS ~"HHgH5KmDž0Sa"HpgH5KmDžXS D"HgH5KmDžS'"HgH5KmDžS "HgH5KmDžS"HhH5KmDžS"H8hH5KmDž T "H`hH5KmDžHT"HhH5KmDžpTy"HhH5KmDžT \"HhH5KmDžT?"HiH5KmDžT ""H(iH5KmDžU"HPiH5KmDž8U"HxiH5KmDž`U "HiH5KmDžU"HiH5KmDžU "HiH5KmDžUt"HjH5KmDžV W"H@jH5KmDž(V:"HhjH5KmDžPV "HjH5KmDžxV"HjH5KmDžV!HjH5KmDžV !HkH5LmDžV !H0kH5 LmDžW!HXkH5LmDž@Wo!HkH5LmDžhWR!HkH5LmDžW5!HkH5LmDžW!HkH5"LmDžW!H lH5%LmDžX!HHlH50LmDž0X!HplH5;LmDžXX!HlH5>LmDžX!HlH5ALmDžXj!HlH5LLmDžXM!HmH5WLmDžX0!H8mH5ZLmDž Y!H`mH5eLmDžHY!HmH5hLmDžpY !HmH5kLmDžY!HmH5nLmDžY!HnH5qLmDžY!H(nH5tLmDžZe!HPnH5wLmDž8ZH!HxnH5zLmDž`Z+!HnH5}LmDžZ!HnH5LmDžZ!HnH5LmDžZ!HoH5LmDž[!H@oH5LmDž([ !HhoH5LmDžP[}!HoH5LmDžx[`!HoH5LmDž[C!HoH5LmDž[&!HpH5LmDž[ !H0pH5LmDž\!HXpH5LmDž@\!HpH5LmDžh\!HpH5LmDž\!HpH5LmDž\x!HpH5LmDž\[!H qH5LmDž]>!HHqH5LmDž0]!!HpqH5LmDžX] !HqH5LmDž] !HqH5LmDž]!HqH5LmDž] !HrH5LmDž]!H8rH5LmDž ^s!H`rH5LmDžH^V!HrH5MmDžp^9!HrH5MmDž^!HrH5MmDž^!HsH5MmDž^!H(sH5MmDž_!HPsH5MmDž8_ !HxsH5"MmDž`_!HsH5-MmDž_n!HsH58MmDž_ Q!HsH5;MmDž_4!HtH5>MmDž`!H@tH5IMmDž(`!HhtH5LMmDžP`!HtH5OMmDžx` !HtH5RMmDž`!HtH5UMmDž`!HuH5XMmDž`i!H0uH5[MmDžaL!HXuH5^MmDž@a/!HuH5iMmDžha!HuH5lMmDža!HuH5oMmDža!HuH5rMmDža!H vH5uMmDžb!HHvH5xMmDž0b!HpvH5MmDžXbd!HvH5MmDžbG!HvH5MmDžb*!HvH5MmDžb !HwH5MmDžb!H8wH5MmDž c!H`wH5MmDžHc!HwH5MmDžpc!HwH5MmDžc|!HwH5MmDžc_!HxH5MmDžc B!H(xH5MmDžd%!HPxH5MmDž8d !HxxH5MmDž`d!HxH5MmDžd!HxH5MmDžd!HxH5MmDžd!HyH5MmDžew!H@yH5MmDž(eZ!HhyH5MmDžPe=!HyH5MmDžxe !HyH5NmDže!HyH5 NmDže!HzH5NmDže!H0zH5NmDžf !HXzH5NmDž@f$!HzH5!NmDžhfr!HzH5$NmDžfU!HzH5'NmDžf 8!HzH52NmDžf!H {H55NmDžg!HH{H58NmDž0g!Hp{H5;NmDžXg!H{H5>NmDžg!H{H5ANmDžg!H{H5DNmDžg m!H|H5ۍnDžg P!H8|H5*NmDž h$3!H`|H5-NmDžHh!H|H50NmDžph!H|H5;NmDžh !H|H5>NmDžh !H}H5KnDžh !H(}H5,NmDži$!HP}H5/nDž8i$h!Hx}H5NmDž`i$K!H}H5NmDži .!H}H5 NmDži$!H}H5#NmDži !H~H5.NmDžj!H@~H5nDž(j!Hh~H5NmDžPj !H~H5NmDžxj !H~H5NmDžj c!H~H5NmDžj$F!HH5 NmDžj )!H0H5#NmDžk !HXH5&NmDž@k !HH5)NmDžhk!HH5,NmDžk!HH5/NmDžk !HH52NmDžk {!H H5=NmDžl ^!HHH5@NmDž0lA!HpH5CNmDžXl$!HH5NNmDžl !HH5QNmDžl!HH5\NmDžl!HH5gNmDžl!H8H5jNmDž m!H`H5mNmDžHmv!HH5pNmDžpmY!HH5sNmDžm!HHH5 PmDž0!!HpH5+PmDžX !HH5.PmDž !HH51PmDž!HH54PmDžЅ!HH57PmDž!H8H5:PmDž s!H`H5=PmDžH V!HH5HPmDžp 9!HH5KPmDž !HؚH5VPmDž !HH5YPmDž !H(H5\PmDž !HPH5_PmDž8 !HxH5jPmDž`!HH5uPmDž n!HțH5xPmDž Q!HH5{PmDž؇ 4!HH5~PmDž !H@H5PmDž( !HhH5PmDžP !HH5PmDžx!HH5PmDž!HH5PmDžȈ!HH5PmDž i!H0H5{wnDž L!HXH5PmDž@ /!HH5PmDžh !HH5PmDž!HНH5PmDž!HH5PmDž !H H5PmDž!HHH5PmDž0!HpH5PmDžX d!HH5PmDž G!HH5PmDž*!HH5PmDžЊ !HH5PmDž!H8H5PmDž !H`H5PmDžH !HH5PmDžp !HH5PmDž|!H؟H5PmDž_!HH5PmDž B!H(H5PmDž%!HPH5PmDž8 !HxH5PmDž`!HH5PmDž !HȠH5PmDž !HH5QmDž،!HH5QmDžw!H@H5 QmDž( Z!HhH5tnDžP =!HH5PmDžx !HH5PmDž !HH5PmDžȍ!HH5PmDž !H0H5PmDž!HXH5PmDž@ !HH5QmDžh r!HH5 QmDžU!HТH5QmDž8!HH5QmDž!H H5QmDž !HHH5 QmDž0!HpH5#QmDžX !HH5&QmDž !HH5)QmDž!HH5,QmDžЏ m!HH5/QmDžP!H8H5:QmDž 3!H`H5=QmDžH !HH5@QmDžp!HH5KQmDž!HؤH5NQmDž !HH5QQmDž !H(H5TQmDž !HPH5WQmDž8 h!HxH5ZQmDž`K!HH5]QmDž.!HȥH5`QmDž !HH5cQmDžؑ!HH5fQmDž!H@H5iQmDž(!HhH5lQmDžP !HH5oQmDžx!HH5rQmDž c!HH5uQmDžȒF!HH5xQmDž )!H0H5{QmDž !HXH5~QmDž@!HH5QmDžh!HH5QmDž !HЧH5QmDž!HH5QmDž {!H H5QmDž ^!HHH5QmDž0 A!HpH5QmDžX $!HH5QmDž !HH5QmDž !HH5QmDžД !HH5QmDž !H8H5QmDž !H`H5QmDžHv!HH5QmDžp Y!HH5QmDž SmDž !H@H5ASmDž( !HhH5DSmDžP}!HH5GSmDžx `!HH5JSmDžC!HH5USmDžȫ&!HH5XSmDž !H0H5[SmDž!HXH5^SmDž@!HH5iSmDžh !HH5tSmDž !HH5wSmDžx!HH5SmDž [!H H5SmDž>!HHH5SmDž0 !!HpH5SmDžX!HH5SmDž!HH5SmDž!HH5SmDžЭ!HH5SmDž!H8H5SmDž s!H`H5SmDžHV!HH5SmDžp9!HH5SmDž !HH5SmDž!HH5SmDž !H(H5SmDž ſ!HPH5SmDž8訿!HxH5SmDž` 苿!HH5\nDž n!HH5SmDžQ!HH5SmDžد 4!HH5SmDž!H@H5SmDž( !HhH5SmDžP ݾ!HH5SmDžx !HH5SmDž裾!HH5SmDžȰ 膾!HH5SmDž i!H0H5SmDž L!HXH5SmDž@/!HH5TmDžh !HH5TmDž!HH5TmDž ؽ!HH5 TmDž軽!H H5 TmDž 螽!HHH5TmDž0 聽!HpH5TmDžXd!HH5TmDž G!HH5TmDž*!HH5TmDžв !HH5TmDž!H8H5"TmDž Ӽ!H`H5%TmDžH 趼!HH5(TmDžp虼!HH5+TmDž |!HH5.TmDž_!HH51TmDž$B!H(H54TmDž %!HPH5YnDž8 !HxH5TmDž` !HH5TmDžλ!HH5 TmDž 豻!HH5+TmDžش蔻!HH5.TmDž w!H@H51TmDž(Z!HhH5WnDž觹!HH5QTmDž 芹!HH5TTmDžз$m!HH5WTmDžP!H8H5ZTmDž 3!H`H5]TmDžH !HH5`TmDžp !HH5kTmDžܸ!HH5nTmDž迸!HH5qTmDž 袸!H(H5tTmDž 腸!HPH5wTmDž8h!HxH5zTmDž` K!HH5}TmDž .!HH5TmDž !HH5TmDžع !HH5TmDž׷!H@H5TmDž(躷!HhH5TmDžP蝷!HH5TmDžx 耷!HH5TmDž c!HH5TmDžȺ F!HH5TmDž )!H0H5TmDž !HXH5TmDž@!HH5TmDžh Ҷ!HH5TmDž 赶!HH5TmDž 蘶!HH5TmDž {!H H5TmDž ^!HHH5TmDž0A!HpH5TmDžX $!HH5TmDž !HH5SnDž!HH5TmDžм ͵!HH5TmDž 谵!H8H5TmDž 蓵!H`H5TmDžH v!HH5,SnDžp Y!HH5TmDž TmDž 蟦!HH5ATmDž肦!H(H5DTmDže!HPH5GTmDž8H!HxH5JTmDž`+!HH5MTmDž!HH5PTmDž !HH5STmDž ԥ!HH5VTmDž 跥!H@H5YTmDž(蚥!HhH5\TmDžP}!HH5_TmDžx`!HH5bTmDžC!HH5eTmDž&!HH5hTmDž !H0H5kTmDž !HXH5nTmDž@Ϥ!HH5qTmDžh貤!HH5tTmDž蕤!HH5wTmDžx!HH5zTmDž[!H H5}TmDž>!HHH5TmDž0!!HpH5TmDžX!HH5TmDž!HH5TmDž ʣ!HH5TmDž 譣!HH5TmDž 萣!H8H5TmDž s!H`H5TmDžH V!HH5TmDžp 9!HH5TmDž!HH5TmDž!HH5TmDž !H(H5TmDž Ţ!HPH5CnDž8訢!HxH5TmDž`苢!HH5TmDž n!HH5TmDžQ!HH5BnDž 4!HH5~TmDž !H@H5TmDž( !HhH5TmDžPݡ!HH5TmDžx !HH5TmDž裡!HH5TmDž膡!HH5TmDži!H0H5TmDžL!HXH5TmDž@/!HH5TmDžh!HH5TmDž !HH5TmDžؠ!HH5TmDž 軠!H H5TmDž 螠!HHH5TmDž0聠!HpH5TmDžXd!HH5TmDž G!HH5TmDž*!HH5TmDž !HH5@nDž!H8H5TmDž ӟ!H`H5TmDžH 趟!HH5TmDžp號!HH5TmDž|!HH5TmDž _!HH5TmDž B!H(H5?nDž%!HPH5TmDž8 !HxH5TmDž`!HH5?nDž Ξ!HH5TmDž 豞!HH5TmDž蔞!HH5TmDžw!H@H5V?nDž(Z!HhH5W?nDžP$=!HH5oTmDžx !HH5rTmDž!HH5}TmDž !HH5TmDž ɝ!H0H5TmDž 謝!HXH5TmDž@ 菝!HH5TmDžh r!HH5>nDžU!HH5wTmDž 8!HH5TmDž !H H5TmDž !HHH5TmDž0!HpH5TmDžXĜ!HH5TmDž觜!HH5TmDž 芜!HH5TmDžm!HH5TmDž P!H8H5TmDž 3!H`H5TmDžH!HH5TmDžp !HH5TmDžܛ!HH5TmDž进!HH5TmDž袛!H(H5TmDž腛!HPH5TmDž8h!HxH5TmDž`K!HH5TmDž.!HH5TmDž !HH5TmDž!HH5TmDžך!H@H5TmDž( 躚!HhH5TmDžP蝚!HH5TmDžx耚!HH5TmDž c!HH5TmDž F!HH5TmDž)!H0H5TmDž !HXH5TmDž@ !HH5UmDžhҙ!HH5UmDž赙!HH5UmDž蘙!HH5 UmDž {!H H5 UmDž ^!HHH5:nDž0 A!HpH5TmDžX$!HH5TmDž !HH5UmDž!HH5UmDž͘!HH5UmDž谘!H8H5 UmDž 蓘!H`H5UmDžHv!HH5UmDžpY!HH5UmDž UmDž@ O!HH5AUmDžh 2!HH5DUmDž !HH5GUmDž!HH5RUmDžە!H H5]UmDž 辕!HHH5`UmDž0衕!HpH5cUmDžX 脕!HH5fUmDžg!HH5iUmDžJ!HH5lUmDž -!HH5wUmDž!H8H5zUmDž !H`H5}UmDžH ֔!HH5UmDžp蹔!HH5UmDž蜔!HH5UmDž !HH5UmDž b!H(H5UmDžE!HPH5UmDž8(!HxH5UmDž` !HH5UmDž!HH5UmDž ѓ!HH5F5nDž贓!HH5UmDž藓!H@H5UmDž( z!HhH5UmDžP ]!HH5UmDžx@!HH5UmDž#!HH5UmDž !HH5UmDž!H0H5UmDž ̒!HXH5UmDž@ 诒!HH5UmDžh蒒!HH5UmDžu!HH5UmDžX!HH5UmDž;!H H5UmDž !HHH5UmDž0!HpH5UmDžX!HH5UmDžǑ!HH5UmDž誑!HH5UmDž 荑!HH5UmDžp!H8H5UmDž S!H`H52nDžH 6!HH5UmDžp!HH5UmDž !HH5UmDžߐ!HH5UmDž!H(H5UmDž 襐!HPH5V2nDž8舐!HxH5UmDž` k!HH5UmDžN!HH5UmDž 1!HH5UmDž !HH51nDž !H@H5UmDž(ڏ!HhH51nDžP轏!HH5UmDžx 蠏!HH5UmDž胏!HH5UmDžf!HH5UmDž I!H0H5S1nDž ,!HXH5UmDž@ !HH571nDžh!HH5UmDžՎ!HH5UmDž踎!HH5UmDž蛎!H H5UmDž ~!HHH5UmDž0a!HpH5UmDžXD!HH5UmDž'!HH5UmDž !HH5UmDž!HH5UmDžЍ!H8H5UmDž 賍!H`H5/nDžH薍!HH5UmDžp y!HH5UmDž\!HH5UmDž?!H H5UmDž"!H( H5/nDž!HP H5/nDž8 !Hx H5/nDž` ˌ!H H5eUmDž讌!H H5hUmDž 葌!H H5kUmDžt!H H5nUmDž W!H@ H5qUmDž( :!Hh H5.nDžP!H H5.nDžx !H H5.nDž !H H5UmDž Ƌ!H H5(UmDž詋!H0 H5.nDž茋!HX H5UmDž@ o!H H5UmDžh R!H H5UmDž5!H H5UmDž!H H5UmDž!H H5UmDž ފ!HH H5 UmDž0 !Hp H5#UmDžX褊!H H5&UmDž臊!H H51UmDžj!H H54UmDž M!H H5-nDž0!H8 H5UmDž !H` H5UmDžH!H H5 UmDžpى!H H5#UmDž載!H H5&UmDž 蟉!HH5,nDž 肉!H(H5 UmDž e!HPH5,nDž8H!HxH5TmDž` +!HH5TmDž !HH5TmDž!HH5TmDž Ԉ!HH5TmDž 跈!H@H5UmDž( 蚈!HhH5UmDžP }!HH5 ,nDžx`!HH5TmDž C!HH5TmDž&!HH5UmDž !H0H5UmDž !HXH5UmDž@χ!HH5}+nDžh 貇!HH5TmDž 蕇!HH5TmDžx!HH5TmDž[!H H5TmDž >!HHH5 +nDž0!!HpH5 +nDžX!HH5TmDž!HH5TmDžʆ!HH5TmDž譆!HH5*nDž萆!H8H5*nDž s!H`H5TmDžHV!HH5TmDžp9!HH5TmDž!HH5`*nDž!HH5TmDž!H(H5TmDž Ņ!HPH5TmDž8訅!HxH5TmDž`苅!HH5TmDžn!HH5TmDž Q!HH5TmDž 4!HH5TmDž!H@H5y)nDž(!HhH5z)nDžP ݄!HH5gTmDžx !HH5jTmDž裄!HH5uTmDž膄!HH5TmDži!H0H5TmDžL!HXH5TmDž@ /!HH5TmDžh!HH5TmDž!HH5TmDž ؃!HH5TmDž軃!H H5Y(nDž 螃!HHH5TmDž0聃!HpH5TmDžX d!HH5TmDž G!HH5TmDž*!HH5'nDž !HH5TmDž!H8H5TmDž ӂ!H`H5TmDžH 趂!HH5TmDžp 虂!HH5TmDž |!HH5TmDž_!HH5TmDž B!H(H5TmDž%!HPH5TmDž8 !HxH5TmDž` !HH5TmDž ΁!HH5TmDž 豁!HH5TmDž 蔁!HH5TmDž w!H@H5TmDž(Z!HhH5TmDžP=!HH5TmDžx !HH5%nDž!HH5TmDž!HH5%nDž ɀ!H0H5TmDž謀!HXH5TmDž@菀!HH5TmDžhr!HH5TmDž U!HH5TmDž8!HH5TmDž !H H5TmDž !HHH5TmDž0 !HpH5TmDžX!HH5TmDž!HH5TmDž!HH5TmDž m!HH5TmDž P!H8H5f$nDž 3!H`H5TmDžH !HH5J$nDžp ~!HH5TmDž ~!HH5TmDž~!HH5TmDž~!H(H5TmDž ~!HPH5TmDž8 h~!HxH5TmDž` K~!HH5TmDž .~!HH5TmDž ~!HH5TmDž }!HH5TmDž }!H@H5TmDž( }!HhH5TmDžP }!HH5TmDžx }!HH5TmDž c}!HH5TmDž F}!HH5TmDž )}!H0H5TmDž  }!HXH5TmDž@ |!HH5TmDžh |!HH5TmDž |!HH5UmDž |!HH5 UmDž {|!H H5 UmDž ^|!HH H5UmDž0 A|!Hp H5UmDžX $|!H H5UmDž |!H H5!UmDž {!H H5$UmDž {!H!H5/UmDž {!H8!H52UmDž {!H`!H5 nDžH $v{!H!H5UmDžp Y{!H!H5UmDž <{!H!H5&UmDž {!H"H51UmDž {!H("H5UmDž@u!H)H5AUmDžhu!H)H5LUmDžuu!H)H5WUmDžXu!H)H5ZUmDž ;u!H *H5]UmDž u!HH*H5?nDž0 u!Hp*H5CUmDžXt!H*H5NUmDžt!H*H5nDžt!H*H54UmDž t!H+H5nDžpt!H8+H5UmDž  St!H`+H5UmDžH 6t!H+H5 UmDžpt!H+H5nDž s!H+H5UmDž s!H,H5xnDžs!H(,H5TmDžs!HP,H5TmDž8 s!Hx,H5TmDž`ks!H,H5UmDžNs!H,H5nDž1s!H,H5TmDž s!H-H5TmDžr!H@-H5UmDž( r!Hh-H5nDžP$r!H-H5TmDžx r!H-H5TmDž r!H-H5TmDžfr!H.H5UmDžIr!H0.H5UmDž,r!HX.H5UmDž@ r!H.H5 UmDžh q!H.H5 UmDž q!H.H5UmDžq!H.H5UmDž q!H /H5nDž~q!HH/H5UmDž0aq!Hp/H5 UmDžXDq!H/H5UmDž'q!H/H57nDž q!H/H58nDž p!H0H5TmDž p!H80H5TmDž  p!H`0H5TmDžHp!H0H5TmDžpyp!H0H5TmDž \p!H0H5TmDž?p!H1H5UmDž"p!H(1H5UmDžp!HP1H5UmDž8o!Hx1H5 UmDž`o!H1H5 UmDžo!H1H5UmDž o!H1H5UmDžto!H2H5UmDžWo!H@2H5UmDž(:o!Hh2H5UmDžPo!H2H5UmDžxo!H2H5KnDž n!H2H5LnDž n!H3H5TmDžn!H03H50nDžn!HX3H5TmDž@ on!H3H5TmDžhRn!H3H5TmDž 5n!H3H5TmDžn!H3H5nDžm!H 4H5nDž m!HH4H5nDž0 m!Hp4H5nDžX m!H4H5nTmDž m!H4H5nDž jm!H4H5TTmDž Mm!H5H5WTmDž 0m!H85H5ZTmDž !m!H`5H5]TmDžH! l!H5H5`TmDžp! l!H5H5kTmDž!l!H5H5nTmDž! l!H6H5qTmDž!l!H(6H5nDž"el!HP6H5WTmDž8" Hl!Hx6H5ZTmDž`"+l!H6H5]TmDž"l!H6H5`TmDž"k!H6H5kTmDž"k!H7H5vTmDž#k!H@7H5yTmDž(# k!Hh7H5|TmDžP# }k!H7H5TmDžx# `k!H7H5TmDž# Ck!H7H5nDž# &k!H8H5hTmDž# k!H08H5sTmDž$ j!HX8H5vTmDž@$ j!H8H5DnDžh$ j!H8H5\TmDž$ j!H8H5gTmDž$ xj!H8H5jTmDž$[j!H 9H5uTmDž%>j!HH9H5xTmDž0% !j!Hp9H5{TmDžX%j!H9H5TmDž% i!H9H5TmDž%i!H9H5TmDž%i!H:H5TmDž% i!H8:H5TmDž & si!H`:H5TmDžH&Vi!H:H5TmDžp& 9i!H:H5TmDž& i!H:H5TmDž&h!H;H5TmDž&h!H(;H5unDž'h!HP;H5TmDž8' h!Hx;H5TmDž`' h!H;H5TmDž'nh!H;H5TmDž'Qh!H;H5nDž' 4h!H<H5vTmDž( h!H@<H5TmDž((g!Hh<H5TmDžP(g!H<H5TmDžx(g!H<H5TmDž( g!H<H5TmDž( g!H=H5TmDž( ig!H0=H5TmDž)Lg!HX=H5TmDž@) /g!H=H5TmDžh)g!H=H5TmDž)f!H=H5TmDž) f!H=H5TmDž) f!H >H5TmDž*f!HH>H5TmDž0*f!Hp>H5TmDžX* df!H>H5TmDž* Gf!H>H5TmDž* *f!H>H5TmDž* f!H?H5TmDž*e!H8?H5TmDž + e!H`?H5TmDžH+e!H?H5TmDžp+e!H?H5TmDž+|e!H?H5TmDž+_e!H@H5-nDž+Be!H(@H5.nDž,%e!HP@H5/nDž8,e!Hx@H5TmDž`,d!H@H5TmDž,d!H@H5TmDž,d!H@H5TmDž, d!HAH5TmDž-wd!H@AH5TmDž(-Zd!HhAH5TmDžP-=d!HAH5TmDžx- d!HAH5TmDž- d!HAH5TmDž-c!HBH5TmDž-c!H0BH5TmDž.c!HXBH5TmDž@. c!HBH5 nDžh. rc!HBH5 nDž. Uc!HBH5TmDž.8c!HBH5TmDž. c!H CH5TmDž/ b!HHCH5TmDž0/b!HpCH5TmDžX/b!HCH5TmDž/ b!HCH5 nDž/ b!HCH5TmDž/ mb!HDH5TmDž/Pb!H8DH5 nDž 03b!H`DH5TmDžH0b!HDH5TmDžp0 a!HDH5TmDž0a!HDH5TmDž0 a!HEH5TmDž0a!H(EH5? nDž1 a!HPEH5TmDž81 ha!HxEH5TmDž`1Ka!HEH5 nDž1.a!HEH5 nDž1a!HEH5[TmDž1`!HFH5^TmDž2 `!H@FH5aTmDž(2`!HhFH5dTmDžP2`!HFH5oTmDžx2`!HFH5rTmDž2c`!HFH5uTmDž2F`!HGH5TmDž2 )`!H0GH5TmDž3 `!HXGH5TmDž@3_!HGH5TmDžh3_!HGH5TmDž3_!HGH5TmDž3_!HGH5TmDž3 {_!H HH5r nDž4 ^_!HHHH5s nDž04A_!HpHH5t nDžX4$_!HHH5s nDž4_!HHH59TmDž4^!HHH5DTmDž4^!HIH5OTmDž4^!H8IH5ZTmDž 5 ^!H`IH5nDžH5 v^!HIH5nDžp5 Y^!HIH5#TmDž5 <^!HIH5&TmDž5^!HJH5)TmDž5 ^!H(JH54TmDž6]!HPJH57TmDž86]!HxJH5:TmDž`6 ]!HJH5ETmDž6]!HJH5HTmDž6q]!HJH5KTmDž6 T]!HKH5NTmDž77]!H@KH5QTmDž(7 ]!HhKH5nDžP7\!HKH57TmDžx7\!HKH5:TmDž7\!HKH5=TmDž7\!HLH5@TmDž7 \!H0LH5NnDž8l\!HXLH5.TmDž@8 O\!HLH51TmDžh8 2\!HLH54TmDž8\!HLH5?TmDž8 [!HLH5BTmDž8[!H MH5ETmDž9[!HHMH5HTmDž09 [!HpMH5KTmDžX9 [!HMH5NTmDž9 g[!HMH5QTmDž9J[!HMH5-nDž9 -[!HNH57TmDž9[!H8NH5:TmDž :Z!H`NH5=TmDžH:Z!HNH5@TmDžp: Z!HNH5CTmDž: Z!HNH5NTmDž:Z!HOH5QTmDž:bZ!H(OH5TTmDž;EZ!HPOH5WTmDž8;(Z!HxOH5ZTmDž`; Z!HOH5]TmDž; Y!HOH5`TmDž; Y!HOH5cTmDž;Y!HPH5fTmDž<Y!H@PH5iTmDž(<zY!HhPH5tTmDžP< ]Y!HPH5TmDžx< @Y!HPH5?nDž<#Y!HPH5eTmDž< Y!HQH5#nDž<X!H0QH5KTmDž=X!HXQH5NTmDž@=X!HQH5nDžh= X!HQH5X!HHRH5TmDž0>X!HpRH5 TmDžX>W!HRH5TmDž>W!HRH5TmDž>W!HRH5TmDž> W!HSH5"nDž> pW!H8SH5TmDž ?SW!H`SH5TmDžH? 6W!HSH5TmDžp? W!HSH5TmDž?V!HSH5nDž? V!HTH5SmDž?V!H(TH5TmDž@ V!HPTH5TmDž8@ V!HxTH5 TmDž`@ kV!HTH5 TmDž@NV!HTH5TmDž@1V!HTH5TmDž@V!HUH5&TmDžAU!H@UH5)TmDž(A U!HhUH5nDžPA U!HUH5TmDžxAU!HUH5TmDžAU!HUH5TmDžAfU!HVH5 TmDžAIU!H0VH5#TmDžB,U!HXVH5nDž@B U!HVH5nDžhBT!HVH5SmDžB T!HVH5nDžB T!HVH5SmDžBT!H WH5SmDžC ~T!HHWH5SmDž0C aT!HpWH5SmDžXCDT!HWH5SmDžC'T!HWH5lnDžC T!HWH5knDžCS!HXH5SmDžC S!H8XH5SmDž DS!H`XH5SmDžHDS!HXH5SmDžpD yS!HXH5mDžD\S!HXH5SmDžD?S!HYH5SmDžD"S!H(YH5SmDžE S!HPYH5mDž8E R!HxYH5SmDž`E R!HYH5SmDžE R!HYH5imDžE R!HYH5{SmDžEtR!HZH5SmDžFWR!H@ZH5SmDž(F:R!HhZH5SmDžPFR!HZH5SmDžxFR!HZH5SmDžFQ!HZH5SmDžFQ!H[H5SmDžF Q!H0[H5SmDžGQ!HX[H5SmDž@GoQ!H[H5SmDžhGRQ!H[H5)mDžG5Q!H[H5)mDžGQ!H[H5rSmDžGP!H \H5uSmDžH P!HH\H5xSmDž0HP!Hp\H5{SmDžXHP!H\H5~SmDžHP!H\H5SmDžHjP!H\H5{mDžHMP!H]H5gSmDžH 0P!H8]H5jSmDž IP!H`]H5BmDžHI O!H]H5PSmDžpI O!H]H5&mDžI O!H]H56SmDžIO!H^H59SmDžIO!H(^H5mDžJeO!HP^H5SmDž8J HO!Hx^H5"SmDž`J+O!H^H5mDžJO!H^H5mDžJN!H^H5mDžJ N!H_H5RmDžK N!H@_H5mDž(K N!Hh_H5mDžPK}N!H_H5RmDžxK`N!H_H5RmDžK CN!H_H5RmDžK&N!H`H5RmDžK N!H0`H5RmDžLM!HX`H5 mDž@LM!H`H5RmDžhLM!H`H5RmDžLM!H`H5RmDžLxM!H`H5RmDžL[M!H aH5RmDžM>M!HHaH5RmDž0M!M!HpaH5RmDžXM M!HaH5RmDžML!HaH5RmDžML!HaH5RmDžML!HbH5RmDžM L!H8bH5RmDž N sL!H`bH5RmDžHNVL!HbH5mDžpN9L!HbH5RmDžNL!HbH5RmDžNK!HcH5RmDžNK!H(cH5RmDžO K!HPcH5RmDž8OK!HxcH5RmDž`OK!HcH5RmDžOnK!HcH5RmDžOQK!HcH5RmDžO 4K!HdH5mDžPK!H@dH5RmDž(PJ!HhdH5RmDžPP J!HdH5RmDžxPJ!HdH5RmDžPJ!HdH5mDžP J!HeH5mDžPiJ!H0eH5mDžQLJ!HXeH5mDž@Q /J!HeH5yRmDžhQ J!HeH5|RmDžQ I!HeH5RmDžQI!HeH5RmDžQI!H fH5RmDžRI!HHfH5RmDž0RI!HpfH5RmDžXR dI!HfH5RmDžRGI!HfH5RmDžR*I!HfH5RmDžR I!HgH5RmDžRH!H8gH5RmDž SH!H`gH5RmDžHS H!HgH5RmDžpS H!HgH5RmDžS |H!HgH5RmDžS _H!HhH5RmDžSBH!H(hH5RmDžT%H!HPhH5RmDž8TH!HxhH5mDž`TG!HhH5mDžT G!HhH5RmDžTG!HhH5RmDžTG!HiH5RmDžUwG!H@iH5RmDž(UZG!HhiH5RmDžPU =G!HiH5RmDžxU G!HiH5RmDžUG!HiH5RmDžU F!HjH5RmDžUF!H0jH5mDžVF!HXjH5RmDž@VF!HjH5RmDžhV rF!HjH5RmDžV UF!HjH5mDžV8F!HjH5RmDžV F!H kH5RmDžWE!HHkH5RmDž0WE!HpkH5RmDžXWE!HkH5RmDžW E!HkH5RmDžWE!HkH5RmDžWmE!HlH5RmDžWPE!H8lH5RmDž X3E!H`lH5RmDžHXE!HlH5RmDžpXD!HlH5RmDžXD!HlH5RmDžXD!HmH5RmDžXD!H(mH5RmDžYD!HPmH5mDž8YhD!HxmH5RmDž`YKD!HmH5RmDžY.D!HmH5RmDžYD!HmH5mDžYC!HnH5RmDžZ C!H@nH5RmDž(ZC!HhnH5ZmDžPZC!HnH5RmDžxZ C!HnH5RmDžZcC!HnH5RmDžZ FC!HoH5RmDžZ)C!H0oH5RmDž[ C!HXoH5RmDž@[B!HoH5RmDžh[B!HoH5RmDž[B!HoH5RmDž[B!HoH5RmDž[ {B!H pH5RmDž\^B!HHpH5RmDž0\ AB!HppH5RmDžX\ $B!HpH5RmDž\ B!HpH5RmDž\A!HpH5RmDž\A!HqH5RmDž\ A!H8qH5RmDž ]A!H`qH5RmDžH]vA!HqH5RmDžp]YA!HqH5RmDž] !HtH5RmDž`>!H uH5 mDža>!HHuH5 mDž0a>!HpuH5RmDžXa>!HuH5RmDža g>!HuH5RmDžaJ>!HuH5mDža->!HvH5RmDža >!H8vH5RmDž b=!H`vH5RmDžHb =!HvH5RmDžpb=!HvH5BmDžb=!HvH5~RmDžb=!HwH5RmDžb b=!H(wH5RmDžcE=!HPwH5mDž8c (=!HxwH5zRmDž`c =!HwH5}RmDžc RmDžp3!HH5ARmDžpj3!HH5DRmDžpM3!HH5ORmDžp03!H8H5RRmDž q 3!H`H5URmDžHq 2!HH5XRmDžpq2!HH5cRmDžq2!H؅H5fRmDžq 2!HH5mDžq2!H(H5mDžre2!HPH5/RmDž8rH2!HxH52RmDž`r+2!HH55RmDžr!2!HȆH5@RmDžr1!HH5CRmDžr 1!HH5FRmDžs 1!H@H5IRmDž(s1!HhH5LRmDžPs}1!HH5ORmDžxs `1!HH5ZRmDžs C1!HH5eRmDžs&1!HH5hRmDžs 1!H0H5sRmDžt0!HXH5mDž@t0!HH5mDžht0!HH5DRmDžt0!HЈH5GRmDžtx0!HH5QmDžt [0!H H55RmDžu>0!HHH55mDž0u!0!HpH56mDžXu0!HH5RmDžu /!HH5 RmDžu/!HH5RmDžu/!HH5RmDžu /!H8H5mDž v s/!H`H5QmDžHv V/!HH5RmDžpv9/!HH5 RmDžv/!H؊H5RmDžv.!HH5RmDžv.!H(H5RmDžw.!HPH5RmDž8w.!HxH5mDž`w.!HH5QmDžwn.!HȋH5mDžwQ.!HH5mDžw4.!HH5QmDžx.!H@H5QmDž(x -!HhH5mDžPx-!HH5QmDžxx-!HH5QmDžx -!HH5QmDžx-!HH5OmDžxi-!H0H5QmDžyL-!HXH5QmDž@y/-!HH5mDžhy -!HH5mDžy ,!HЍH5mDžy,!HH5JQmDžy,!H H5mDžz,!HHH50QmDž0z,!HpH53QmDžXzd,!HH56QmDžz G,!HH5mDžz*,!HH5QmDžz ,!HH5QmDžz+!H8H5"QmDž {+!H`H5%QmDžH{ +!HH5(QmDžp{ +!HH5+QmDž{|+!H؏H5.QmDž{_+!HH51QmDž{ B+!H(H54QmDž| %+!HPH5mDž8|+!HxH5mDž`| *!HH5PmDž| *!HȐH5mDž|*!HH5mDž|*!HH5mDž}w*!H@H5PmDž(}Z*!HhH5PmDžP}=*!HH5PmDžx} *!HH5PmDž}*!HH5PmDž})!HH5PmDž})!H0H5PmDž~)!HXH5PmDž@~ )!HH5PmDžh~r)!HH5PmDž~U)!HВH5fmDž~ 8)!HH5emDž~)!H H5PmDž(!HHH5PmDž0(!HpH5*mDžX(!HH5~PmDž (!HH5mDž (!HH5mDžm(!HH5mDžP(!H8H5mDž 3(!H`H5 PmDžH(!HH5PmDžp'!HH5PmDž'!HؔH5&PmDž'!HH5mDž'!H(H5PmDž '!HPH5PmDž8h'!HxH5cmDž` K'!HH5OmDž .'!HȕH5PmDž '!HH5PmDž؁&!HH5PmDž&!H@H5PmDž(&!HhH5PmDžP&!HH5PmDžx &!HH5*PmDžc&!HH5-PmDžȂF&!HH50PmDž)&!H0H53PmDž &!HXH56PmDž@%!HH5APmDžh%!HH5DPmDž%!HЗH5OPmDž%!HH5RPmDž{%!H H5]PmDž^%!HHH5hPmDž0A%!HpH5kPmDžX$%!HH5vPmDž%!HH5yPmDž$!HH5|PmDžЄ$!HH5PmDž$!H8H5PmDž $!H`H5PmDžHv$!HH5PmDžpY$!HH5rmDž<$!HؙH5smDž $!HH5tmDž $!H(H5DPmDž #!HPH5GPmDž8 #!HxH5JPmDž` #!HH5UPmDž#!HȚH5mDžq#!HH5;PmDž؆ T#!HH5>PmDž7#!H@H5mDž(#!HhH5mDžP "!HH5PmDžx "!HH5 PmDž"!HH5 PmDžȇ"!HH5PmDž"!H0H5PmDž l"!HXH5&PmDž@O"!HH5)PmDžh 2"!HH5,PmDž"!HМH5mDž!!HH5PmDž!!H H5mDž!!HHH5PmDž0 !!HpH5 PmDžX !!HH5PmDžg!!HH5PmDžJ!!HH5$PmDžЉ-!!HH56mDž!!H8H57mDž  !H`H5OmDžH !HH5OmDžp !HH5OmDž !H؞H5OmDž !HH5PmDžb !H(H5PmDžE !HPH5PmDž8( !HxH5mmDž` !HH5nmDž !HȟH5omDž !HH5OmDž؋ !HH5OmDž !H@H5OmDž(z!HhH5OmDžP ]!HH5mDžx @!HH5mDž #!HH5mDžȌ !HH5mDž !H0H5KOmDž!HXH5NOmDž@!HH5QOmDžh !HH5TOmDž u!HСH5WOmDžX!HH5ZOmDž ;!H H5]OmDž !HHH5`OmDž0!HpH5mDžX!HH5mDž !HH51OmDž !HH5mDžЎ!HH5mDžp!H8H5OmDž S!H`H5 OmDžH6!HH5mDžp!HH5mDž !HأH5NmDž !HH5NmDž!H(H5mDž!HPH5mDž8 !HxH5NmDž`k!HH5NmDžN!HȤH5NmDž 1!HH58mDžؐ!HH59mDž !H@H5yNmDž( !HhH5NmDžP!HH5NmDžx !HH5NmDž!HH5NmDžȑf!HH5NmDž I!H0H5mDž,!HXH5~NmDž@!HH5NmDžh!HH5NmDž!HЦH5NmDž!HH5mDž!H H5mDž~!HHH5`NmDž0a!HpH5cNmDžXD!HH5nNmDž'!HH5qNmDž !HH5mDžГ !HH5mDž !H8H5:NmDž !H`H5ENmDžH !HH5HNmDžpy!HH5KNmDž\!HبH5NNmDž ?!HH5QNmDž"!H(H5TNmDž!HPH5WNmDž8 !HxH5ZNmDž`!HH5]NmDž !HȩH5`NmDž !HH5hmDžؕt!HH5gmDžW!H@H5hmDž( :!HhH5imDžP !HH5jmDžx !HH5kmDž !HH5lmDžȖ !HH5MmDž !H0H5MmDž !HXH5MmDž@o!HH5MmDžh R!HH5MmDž5!HЫH5MmDž!HH5mDž!H H5MmDž!HHH5MmDž0 !HpH5MmDžX !HH5MmDž!HH5MmDž j!HH5MmDžИM!HH5MmDž0!H8H5MmDž !H`H5MmDžH !HH5MmDžp!HH5mDž!HحH5MmDž !HH5MmDž !H(H5MmDž e!HPH5GmDž8 H!HxH5MmDž`+!HH5MmDž !HȮH5 mDž!HH5MmDžؚ!HH5mDž !H@H5MmDž( !HhH5MmDžP}!HH5MmDžx`!HH5MmDžC!HH5MmDžț&!HH5MmDž !H0H5AmDž !HXH5AmDž@ !HH5iMmDžh!HH5lMmDž !HаH5oMmDžx!HH5rMmDž[!H H5mDž >!HHH5mDž0 !!HpH5mDžX !HH5mDž !HH5MmDž!HH5MmDžН!HH5MmDž !H8H5MmDž s!H`H5MmDžH V!HH5AmDžp9!HH5LmDž!HزH5LmDž !HH5MmDž !H(H5 MmDž !HPH5MmDž8!HxH5MmDž`!HH5MmDžn!HȳH5umDž Q!HH5LmDž؟ 4!HH5LmDž !H@H5MmDž(!HhH5MmDžP!HH5MmDžx!HH5 MmDž!HH5 MmDžȠ !HH5MmDž i!H0H5MmDžL!HXH5MmDž@/!HH5MmDžh!HH5MmDž !HеH5'MmDž !HH5*MmDž !H H5-MmDž!HHH50MmDž0!HpH53MmDžXd!HH56MmDž G!HH59MmDž *!HH5DMmDžТ !HH5OMmDž!H8H5RMmDž !H`H5UMmDžH !HH5XMmDžp !HH5[MmDž |!HطH5^MmDž _!HH5aMmDžB!H(H5dMmDž %!HPH5gMmDž8 !HxH5jMmDž` !HH5mMmDž !HȸH5pMmDž !HH5sMmDžؤ !HH5vMmDž w !H@H5yMmDž( Z !HhH5|MmDžP= !HH5MmDžx !HH5MmDž  !HH5MmDžȥ !HH5MmDž !H0H5MmDž !HXH5MmDž@ !HH5MmDžhr !HH5MmDž U !HкH5MmDž 8 !HH5MmDž !H H5MmDž !HHH5MmDž0 !HpH5MmDžX !HH5MmDž !HH5MmDž !HH5MmDžЧ m !HH5MmDž P !H8H5MmDž 3 !H`H5MmDžH  !HH5NmDžp !HH5mDž !HؼH5mDž !HH5mDž !H(H5mDž !HPH5MmDž8h !HxH5MmDž` K !HH5mDž . !HȽH5mDž !HH5mDžة !HH5mDž !H@H5mDž( !HhH5mDžP !HH5mDžx !HH5mDžc !HH5mDžȪF !HH5mDž ) !H0H5{LmDž !HXH5~LmDž@ !HH5LmDžh !HH5LmDž!HпH5omDž!HH5omDž {!H H5MLmDž^!HHH5PLmDž0 A!HpH55mDžX $!HH55mDž !HH5LmDž !HH5LmDžЬ!HH5mDž!H8H5mDž !H`H5mDžHv!HH5mDžpY!HH5mDž<!HH5mDž!HH5mDž!H(H5mDž!HPH5mDž8!HxH5mDž`!HH5JmDž!HH5KmDžq!HH5 KmDžخT!HH5KmDž7!H@H5!KmDž(!HhH5,KmDžP!HH57KmDžx!HH5BKmDž!HH5MKmDžȯ!HH5PKmDž!H0H5[KmDžl!HXH5fKmDž@O!HH5qKmDžh2!HH5tKmDž!HH5wKmDž!HH5KmDž!H H5KmDž!HHH5KmDž0!HpH5KmDžX!HH5KmDžg!HH5KmDž J!HH5KmDžб-!HH5KmDž!H8H5KmDž !H`H5KmDžH!HH5KmDžp!HH5KmDž!HH5KmDž!HH5KmDžb!H(H5KmDžE!HPH5KmDž8(!HxH5LmDž` !HH5 LmDž!HH5LmDž!HH5LmDžس!HH5LmDž !H@H5)LmDž(z!HhH54LmDžP]!HH5?LmDžx@!HH5JLmDž#!HH5MLmDžȴ!HH5XLmDž!H0H5[LmDž!HXH5^LmDž@!HH5iLmDžh$!HH5tLmDžu!HH5LmDžX!HH5LmDž;!H H5LmDž !HHH5LmDž0!HpH5LmDžX!HH5LmDž!HH5LmDž!HH5LmDžж!HH5LmDžp!H8H5LmDž S!H`H5LmDžH6!HH5LmDžp!HH5LmDž HH5LmDž HH5LmDž H(H5LmDž HPH5LmDž8 HxH5LmDž`k HH5LmDžN HH5LmDž1 HH5LmDžظ HH5LmDž H@H5LmDž( HhH5LmDžP HH5LmDžx HH5LmDž HH5MmDžȹf HH5MmDžI H0H5MmDž, HXH5MmDž@ HH5!MmDžh HH5$MmDž HH5/MmDž HH5:MmDž H H5EMmDž~ HHH5HMmDž0a HpH5SMmDžXD HH5^MmDž' HH5aMmDž HH5dMmDžл HH5oMmDž H8H5zMmDž  H`H5MmDžH HH5MmDžpy HH5MmDž\ HH5MmDž? HH5MmDž" H(H5MmDž HPH5MmDž8 HxH5MmDž` HH5MmDž HH5MmDž HH5MmDžؽ t HH5MmDžW H@H5MmDž(: HhH5MmDžP HH5MmDžx HH5MmDž HH5MmDžȾ HH5MmDž H0H5MmDž HXH5MmDž@o HH5NmDžhR HH5 NmDž5 HH5NmDž HH5NmDž H H5QmDž HHH5NmDž0$ HpH5 NmDžX HH5NmDž HH5NmDž$j HH5NmDžM HH5'NmDž0 H8H52NmDž  H`H5mDžH HH5mDžp$ HH5NmDž$ HH5NmDž HH5NmDž H(H5$NmDž e HPH5'NmDž8$H HxH5*NmDž`+ HH55NmDž  HH5@NmDž HH5CNmDž HH5FNmDž$ H@H5QNmDž( HhH5TNmDžP} HH5_NmDžx` HH5bNmDžC HH5mNmDž& HH5pNmDž H0H5{NmDž HXH5~NmDž@ HH5NmDžh HH5NmDž HH5NmDžx HH5NmDž[ H H5NmDž> HHH5NmDž0 ! HpH5NmDžX HH5NmDž HH5NmDž HH5NmDž HH5NmDž H8H5NmDž s H`H5NmDžHV HH5NmDžp9 HH5NmDž HH5NmDž HH5OmDž H(H5 OmDž HPH5OmDž8 HxH5OmDž` HH5OmDž n HH5(OmDžQ HH53OmDž4 HH5mDž  H@H5!OmDž($ HhH5$OmDžP HH5'OmDžx HH5*OmDž HH5-OmDž HH50OmDži H0H53OmDžL HXH56OmDž@/ HH59OmDžh HH5DOmDž HH5OOmDž HH5ZOmDž H H5eOmDž HHH5pOmDž0 HpH5sOmDžX$d HH5~OmDž G HH5OmDž * HH5OmDž HH5OmDž H8H5OmDž  H`H5OmDžH HH5OmDžp HH5OmDž| HH5OmDž_ HH5OmDžB H(H5OmDž% HPH5OmDž8  HxH5OmDž` HH5OmDž HH5OmDž HH5OmDž HH5OmDžw H@H5OmDž(Z HhH5OmDžP= HH5PmDžx HH5PmDž HH5PmDž HH5 PmDž H0H5#PmDž HXH5&PmDž@ HH5)PmDžhr HH54PmDžU HH57PmDž8 HH5:PmDž H H5EPmDž HHH5HPmDž0 HpH5SPmDžX HH5^PmDž HH5aPmDž HH5dPmDžm HH5oPmDžP H8H5rPmDž 3 H`H5uPmDžH  HH5PmDžp HH5PmDž$ HH5PmDž HH5PmDž H(H5PmDž HPH5PmDž8h HxH5PmDž`K HH5PmDž . HH5PmDž HH5PmDž HH5PmDž H@H5PmDž( HhH5PmDžP HH5PmDžx HH5PmDžc HH5PmDžF HH5PmDž) H0H5PmDž HXH5PmDž@ HH5PmDžh HH5QmDž HH5QmDž HH5 QmDž{ H H5 QmDž^ HHH5QmDž0A HpH5QmDžX$ HH5QmDž HH5!QmDž HH5$QmDž HH5/QmDž H8H5:QmDž H`H5=QmDžHv HH5@QmDžpY HH5KQmDž< HH5NQmDž HH5QQmDž H(H5\QmDž HPH5gQmDž8 HxH5jQmDž` HH5uQmDž HH5xQmDžq HH5QmDžT HH5QmDž7 H@H5QmDž( HhH5QmDžP HH5ɨmDžx HH5rQmDž$ HH5uQmDž HH5QmDž H0H5QmDžl HXH5QmDž@O HH5QmDžh2 HH5QmDž HH5QmDž HH5QmDž H H5QmDž HHH5QmDž0 HpH5QmDžX HH5QmDžg HH5QmDžJ HH5QmDž- HH5QmDž H8H5QmDž  H`H5RmDžH HH5RmDžp HH5 RmDž HH5RmDž HH5!RmDžb H(H5,RmDžE HPH57RmDž8 ( HxH5:RmDž` HH5ERmDž HH5PRmDž HH5SRmDž HH5^RmDž H@H5iRmDž(z HhH5tRmDžP] HH5wRmDžx@ HH5zRmDž# HH5RmDž HH5RmDž H0H5RmDž HXH5RmDž@$ HH5RmDžh$ HH5RmDž u HH5RmDžX HH5RmDž; H H5RmDž HHH5RmDž0 HpH5RmDžX HH5RmDž HH5RmDž HH5RmDž HH5RmDžp H8H5SmDž $S H`H5 SmDžH6 HH5SmDžp  HH5SmDž HH5SmDž HH5ɢmDž H(H5ʢmDž$ HPH5ˢmDž8$ HxH5RmDž`$k HH5mDžN HH5RmDž$1 HH5RmDž HH5RmDž H@H5RmDž( HhH5SmDž? HH5ISmDž" H(H5TSmDž  HPH5_SmDž8 HxH5jSmDž` HH5mDž HH5XSmDž$ HH5cSmDžt HH5nSmDžW H@H5ySmDž(: HhH5SmDžP HH5SmDžx HH5SmDž HH5mDž HH5SmDž$ H0H5SmDž HXH5SmDž@o HH5SmDžhR HH5SmDž5 HH5SmDž HH5SmDž H H5SmDž HHH5SmDž0 HpH5SmDžX HH5SmDž HH5SmDžj HH5SmDžM HH5SmDž 0 H8H5SmDž  H`H5SmDžH HH5SmDžp HH5ΜmDž HH5SmDž HH5SmDž H(H5SmDž$e HPH5SmDž8H HxH5SmDž`+ HH5TmDž HH5TmDž HH5TmDž$ HH5TmDž H@H5)TmDž( HhH5,TmDžP} HH5/TmDžx` HH5smDžC HH5TmDž & HH5 TmDž H0H5#TmDž HXH5&TmDž@ HH51TmDžh HH5 HHH5hTmDž0 ! HpH5sTmDžX HH5~TmDž HH5TmDž HH5mDž$ HH5oTmDž$ H8H5rTmDž s H`H5uTmDžH$V HH5TmDžp9 HH5TmDž$ HH5kmDž$ HH5iTmDž$ H(H5tTmDž HPH5wTmDž8$ HxH5TmDž` HH5TmDž n HH5TmDžQ HH5TmDž4 HH5mDž H@H5TmDž($ HhH5TmDžP HH5TmDžx$ HH5TmDž HH5TmDž HH5TmDži H0H5TmDžL HXH5TmDž@/ HH5TmDžh HH5TmDž HH5TmDž HH5TmDž H H5TmDž$ HHH5UmDž0 HpH5 UmDžXd HH5UmDžG HH5!UmDž* HH5,UmDž HH5/UmDž$ H8H5:UmDž  H`H5EUmDžH HH5PUmDžp HH5[UmDž| HH5fUmDž_ HH5qUmDž B H(H5|UmDž% HPH5UmDž8$ HxH5UmDž` HH5UmDž$ HH5UmDž HH5;mDž H H5~UmDž$w H@ H5UmDž(Z Hh H5UmDžP= H H5UmDžx H H5UmDž H H5UmDž H H5UmDž H0 H5UmDž$ HX H5UmDž@ H H5UmDžhr H H5UmDžU H H5UmDž8 H H5UmDž H H5UmDž HH H5UmDž0 Hp H5UmDžX H H5VmDž H H5VmDž H H5VmDž$m H H5VmDžP H8 H5*VmDž 3 H` H55VmDžH  H H5@VmDžp$ H H5KVmDž H H5VVmDž H H5YVmDž$ H( H5JmDž HP H5GVmDž8$h Hx H5JVmDž`K H H5MVmDž!. H H5XVmDž  H H5[VmDž$ HH5^VmDž$ H@H5aVmDž($ HhH5lVmDžP HH5oVmDžx HH5zVmDžc HH5}VmDž$F HH5VmDž) H0H5VmDž HXH5ҐmDž@ HH5yVmDžh$ HH5VmDž$ HH5VmDž$ HH5VmDž { H H5VmDž^ HHH5VmDž0A HpH5VmDžX$ HH5mDž HH5VmDž" HH5VmDž HH5VmDž H8H5VmDž  H`H5VmDžHv HH5VmDžpY HH5VmDž < HH5VmDž HH5VmDž H(H5VmDž HPH5VmDž8 HxH5VmDž` HH5VmDž HH5VmDžq HH5VmDž T HH5VmDž$7 H@H5VmDž(  HhH5VmDžP HH5VmDžx HH5VmE H޺L H=E[ Lf hMVI9tMI>MNL9uMVI9uL= H H0H5kDž! HXH5kDž@ HH5NSmDžh HH5kDž HH5lDž HH5o lDž H H5ʘlDžs HHH5M)lDž0V HpH5 mDžX9 HH5s%mDž HH56$mDž HH5mDž H H5-mDž H8 H5kDž  H` H5 wmDžH H H5QmDžpn H H5PkDž Q H H5QmDž4 H H55mDž  H( H5vmDž HP H5ԾkDž8 Hx H5lDž`$ H H57lDž H H5lDž H H5N^mDž$i H H5}]mDžL H@ H5~]mDž(/ Hh H5!lDžP H H5,lDžx H H5PmDž H H5kDž H H5!lDž H0 H5lDž! HX H5vlDž@ d H H5lDžh G H H5xlDž * H H5lDž H H5AZmDž$ H H5OmDž$ HH H5&lDž0 Hp H5OmDžX H H5lDž| H H5lDž_ H H5OmDž B HH5lDž% H8H5߉lDž  H`H5lDžH HH5lDžp HH5@kDž HH5kDž HH5NmDžw H(H57lDž Z HPH5lDž8= HxH57kDž` HH5"lDž  HH5kDž HH5lDžɿ HH5 mDž謿 H@H5NmDž(菿 HhH5NmDžPr HH5NmDžxU HH5NmDž8 HH5NmDž HH5NmDž H0H5 NmDž HXH5[kDž@ľ HH5f*mDžh 觾 HH5MmDž芾 HH5MmDž m HH5G4mDžP H H5MmDž 3 HHH5mDž0 HpH5MmDžX HH5MmDžܽ HH5MmDž追 HH5MmDž袽 HH5lDž$7 H(H5!mDž HPH5kDž8! HxH5kDž` HH5lDž ø HH5%kDž$覸 HH54mDž艸 HH5JmDž$He H@H59mDž( H HhH5JmDžP$+ HH5kDžx  HH5p7mDž! HH5kJmDžԷ HH53mDž!跷 H0H5q1lDž$蚷 HXH5slDž@} HH58mDžh` HH5JmDž!C HH5JmDž& HH5 kDž H H5ImDž HHH5ImDž0 ϶ HpH59;mDžX貶 HH5ImDž$蕶 HH5G1mDžx HH5J=mDž![ HH5ݡlDž> H8H5kDž ! H`H5wmDžH  HH5kDžp $ HH59ImDž ʵ HH5DImDž 譵 HH5swmDž 萵 H(H52ImDž $s HPH5mlDžp$g H1H5>mDžJ H1H5$mDž - H2H5imDž  H(2H5>mDž$ HP2H5XlDž8$֦ Hx2H5]lDž`$蹦 H޺DH=ZDž$K Lx2fBIvL9tII>INH9uIvL9uLH0"H5 $BH[A\A]A^A_]fCDhAHLHHH=A IL;WXHKH5DW;HvQIQIQfVf.UHțHHzHAWAVAUATSHH Dž H HSHPHMHJH?HEHB>H;HvKH!HH9%L$LA1HLkDž $ HH5AkDž  H H5DkDž  HHH5GkDž0 h HpH5JkDžX K HH5UkDž . HH5XkDž $ HH5ckDž  HH5nkDž H8H5ykDž  H`H5|kDžH HH5kDžp HH5kDžc HH5kDžF HH5F8mDž$) H(H5kkDž HPH5vkDž8 HxH5ykDž`$ HH5kDž HH57mDž HH5rkDž{ HH5}kDž^ H@H5kDž(A HhH5kDžP$ HH5kDžx HH5kDž HH5kDž HH5kDž H0H5kDž HXH5kDž@ v HH5kDžhY HH5kDž< HH5kDž HH5kDž H H5kDž HHH5kDž0 HpH56mDžX HH5kDž$ HH5kDžq HH5kDžT H H5kDž7 H8 H5kDž  H` H5kDžH H H5kDžp H H5kDžÿ H H5kDž覿 H H5kDž艿 H( H5kDžl HP H5kDž8 O Hx H5kDž`2 H H5ĕkDž H H5ǕkDž H H5ʕkDž۾ H H5͕kDž达 H@ H5ЕkDž(衾 Hh H5ӕkDžP脾 H H5֕kDžxg H H5ٕkDž$J H H5kDž- H H5kDž H0 H5kDž HX H5kDž@ֽ H H5kDžh 蹽 H H5 3mDž蜽 H H5֕kDž$ H H5kDžb H H5kDžE HH H5kDž0( Hp H5kDžX H H5kDž H H5kDžѼ H H5 kDž贼 HH5kDž藼 H8H5kDž  z H`H5kDžH] HH51mDžp@ HH51mDž# HH51mDž  HH5ȕkDž H(H51mDž$̻ HPH51mDž8$读 HxH51mDž`$蒻 HH5tkDžu HH5wkDž$X HH5zkDž$; HH5}kDž H@H5kDž( HhH5kDžP HH5kDžxǺ HH5kDž$誺 HH50mDž荺 HH5okDž$p H0H5rkDž S HXH5}kDž@6 HH5kDžh HH5kDž HH5@0mDž߹ HH5A0mDž¹ H H5TkDž 襹 HHH5_kDž0船 HpH5bkDžXk HH5ekDžN HH5hkDž1 HH5kkDž HH5nkDž H8H5qkDž ڸ H`H5tkDžH$轸 HH5wkDžp蠸 HH5zkDž胸 HH5}kDžf HH5kDžI H(H5kDž$, HPH5kDž8  HxH5kDž` HH5r.mDž շ HH5s.mDž$踷 HH5t.mDž$蛷 HH5u.mDž ~ H@H5kDž(a HhH5#kDžPD HH5&kDžx' HH5)kDž HH54kDž HH57kDžж H0H5:kDž 賶 HXH5=kDž@ 薶 HH5@kDžh y HH5CkDž \ HH5FkDž ? HH5IkDž " H H5LkDž! HHH5OkDž0! HpH5RkDžX!˵ HH5UkDž!讵 HH5`kDž!葵 HH5kkDž!t HH5vkDž!W H8H5kDž ": H`H5kDžH" HH5UmDžp" HH5zkDž" HH5kDž"ƴ HH5kDž"詴 H(H5kDž#茴 HPH5kDž8#o HxH5kDž`#R HH5kDž#5 HH5ǕkDž# HH5ҕkDž# HH5ݕkDž$޳ H@H5kDž($ HhH5kDžP$褳 HH5kDžx$至 HH5 kDž$j HH5kDž$M HH5kDž$0 H0H5*kDž% HXH55kDž@% HH5@kDžh%ٲ HH5KkDž%輲 HH5VkDž%蟲 HH5akDž%育 H H5lkDž&e HHH5wkDž0&H HpH5kDžX&+ HH5kDž&  HH5kDž& HH5kDž&Ա HH5kDž&跱 H8H5kDž '蚱 H`H5ĖkDžH'} HH5ϖkDžp'` HH5ږkDž'C HH5kDž'& HH5kDž' H(H5kDž( HPH5kDž8(ϰ HxH5kDž`(貰 HH5kDž(蕰 HH5kDž(x HH5"kDž([ HH5%kDž)> H@H5(kDž()! HhH53kDžP) HH56kDžx) HH59kDž)ʯ HH5kDž9 H/H5IkDž9 H 0H5LkDž: HH0H5WkDž0:ȣ Hp0H5bkDžX:諣 H0H5ekDž:莣 H0H5hkDž:q H0H5skDž: T H1H5~kDž: 7 H81H5kDž ; H`1H5kDžH; H1H5kDžp; H1H5kDž;â H1H5kDž;覢 H2H5kDž;艢 H(2H5kDž<l HP2H5kDž8<O Hx2H5kDž`<2 H2H5kDž< H2H5kDž< H2H5škDž<ۡ H3H5͚kDž=辡 H@3H5ؚkDž(=衡 Hh3H5kDžP=脡 H3H5kDžx=g H3H5kDž=J H3H5kDž=- H H5kDž=H4 H04H5kDž> HX4H5kDž@>Ϡ H4H5kDžh>負 H4H5kDž>$蕠 H4H5kDž>x H4H5kDž>[ H 5H5kDž?> HH5H5 kDž0?! Hp5H5+kDžX? H5H56kDž? H5H59kDž?ʟ H5H5DkDž?譟 H6H5OkDž?萟 H86H5ZkDž @s H`6H5ekDžH@V H6H5pkDžp@9 H6H5skDž@ H6H5vkDž@ H7H5ykDž@ H(7H5|kDžAŞ HP7H5kDž8A訞 Hx7H5kDž`A苞 H7H5kDžAn H7H5kDžAQ H7H5kDžA4 H8H5kDžB H@8H5kDž(B Hh8H5kDžPBݝ H8H5kDžxB H8H5›kDžB裝 H8H5͛kDžB膝 H9H5ЛkDžBi H09H5ӛkDžCL HX9H5֛kDž@C/ H9H5kDžhC  H9H5kDžC H9H5kDžC؜ H9H5kDžC軜 H :H5kDžD螜 HH:H5kDž0D聜 Hp:H5kDžXD d H:H5kDžDG H:H5kDžD* H:H5$kDžD H;H5/kDžD H8;H5:kDž Eӛ H`;H5=kDžHE趛 H;H5@kDžpE虛 H;H5CkDžE| H;H5NkDžE_ H<H5QkDžEB H(<H5\kDžF% HP<H5gkDž8F Hx<H5jkDž`F H<H5ukDžFΚ H<H5kDžF豚 H<H5kDžF 蔚 H=H5kDžGw H@=H5kDž(GZ Hh=H5kDžPG= H=H5kDžxG H=H5kDžG H=H5kDžG H>H5kDžGə H0>H5kDžH謙 HX>H5kDž@H菙 H>H5kDžhHr H>H5kDžHU H>H5ǜkDžH8 H>H5ҜkDžH H ?H5ݜkDžI HH?H5kDž0I Hp?H5kDžXIĘ H?H5kDžI觘 H?H5kDžI芘 H?H5kDžIm H@H5kDžIP H8@H5kDž J3 H`@H5kDžHJ H@H5(kDžpJ H@H53kDžJ ܗ H@H56kDžJ迗 HAH59kDžJ袗 H(AH5DkDžK腗 HPAH5OkDž8Kh HxAH5RkDž`KK HAH5UkDžK . HAH5XkDžK HAH5ckDžK HBH5nkDžLז H@BH5qkDž(L躖 HhBH5|kDžPL蝖 HBH5kDžxL耖 HBH5x mDžLc HBH5mkDžL$F HCH5xkDžL) H0CH5kDžM HXCH5kDž@M HCH5kDžhMҕ HCH5kDžM赕 HCH5kDžM蘕 HCH5kDžM{ H DH5kDžN^ HHDH5kDž0N A HpDH5kDžXN$ HDH5kDžN  HDH5kDžN HDH5̝kDžN͔ HEH5םkDžN谔 H8EH5ڝkDž O蓔 H`EH5ݝkDžHOv HEH5kDžpOY HEH5kDžO< HEH5kDžO HFH5 kDžO H(FH5kDžP HPFH5kDž8Pȓ HxFH5*kDž`P 諓 HFH5-kDžP莓 HFH50kDžP q HFH53kDžPT HGH56kDžQ$7 H@GH59kDž(Q HhGH5 HH]H58kDž0g! Hp]H5;kDžXg H]H5>kDžg H]H5AkDžgʂ H]H5DkDžg譂 H^H5GkDžg萂 H8^H5JkDž h s H`^H5MkDžHhV H^H5PkDžph9 H^H5SkDžh H^H5VkDžh H_H5YkDžh H(_H5\kDži Ł HP_H5_kDž8i訁 Hx_H5bkDž`i苁 H_H5ekDžin H_H5hkDžiQ H_H5kkDži4 H`H5nkDžj H@`H5qkDž(j Hh`H5tkDžPj ݀ H`H5wkDžxj H`H5zkDžj裀 H`H5}kDžj 膀 HaH5kDžji H0aH5kDžkL HXaH5kDž@k/ HaH5kDžhk HaH5lDžk HaH5kDžk$ HaH5kDžk H bH5kDžl HHbH5kDž0l HpbH5kDžXld HbH5kDžlG HbH5kDžl* HbH5kDžl  HcH5kDžl~ H8cH5kDž m~ H`cH5kDžHm~ HcH5kDžpm~ HcH5kDžm|~ HcH5kDžm_~ HdH5kDžm$B~ H(dH5ġkDžn%~ HPdH5ǡkDž8n~ HxdH5ҡkDž`n} HdH5ݡkDžn} HdH5kDžn} HdH5kDžn} HeH5kDžow} H@eH5kDž(oZ} HheH5kDžPo=} HeH5kDžxo } HeH5kDžo} HeH5kDžo| HfH5kDžo| H0fH5 kDžp$| HXfH5kDž@p| HfH5kDžhpr| HfH5kDžp U| HfH5kDžp8| HfH5"kDžp| H gH5%kDžq{ HHgH5(kDž0q { HpgH5+kDžXq{ HgH5.kDžq{ HgH51kDžq{ HgH54kDžq$m{ HhH5?kDžqP{ H8hH5BkDž r3{ H`hH5EkDžHr { HhH5HkDžprz HhH5KkDžrz HhH5NkDžrz HiH5QkDžrz H(iH5TkDžs z HPiH5WkDž8shz HxiH5ZkDž`sKz HiH5ekDžs.z HiH5hkDžsz HiH5kkDžs y HjH5nkDžty H@jH5qkDž(t y HhjH5tkDžPty HjH5wkDžxt y HjH5zkDžtcy HjH5}kDžtFy HkH5kDžt )y H0kH5kDžu$ y HXkH5kDž@ux HkH5kDžhux HkH5kDžux HkH5kDžux HkH5kDžu{x H lH5kDžv^x HHlH5kDž0vAx HplH5kDžXv$x HlH5kDžvx HlH5kDžvw HlH5ĢkDžvw HmH5ϢkDžvw H8mH5ڢkDž ww H`mH5ݢkDžHwvw HmH5kDžpwYw HmH5kDžw kDžo HxH5AkDžo H(xH5DkDžo HPxH5GkDž8o HxxH5RkDž`ko HxH5UkDžNo HxH5XkDž1o HxH5ckDž؂o HyH5fkDžn H@yH5ikDž(n HhyH5lkDžPn HyH5okDžxn HyH5zkDžn HyH5kDžȃfn HzH5kDžIn H0zH5kDž,n HXzH5kDž@n HzH5kDžh$m HzH5kDžm HzH5kDžm HzH5kDž$m H {H5kDž~m HH{H5kDž0am Hp{H5kDžXDm H{H5kDž'm H{H5kDž m H{H5ĤkDžЅl H|H5ǤkDž$l H8|H5^lDž $l H`|H5kDžH$l H|H5kDžpyl H|H5kDž\l H|H5kDž?l H}H5kDž$"l H(}H5lDžl HP}H5kDž8$k Hx}H5lDž`$k H}H5kDž$k H}H5kDžk H}H5kDž؇$tk H~H5kDž$Wk H@~H5kDž(:k Hh~H5kDžPk H~H5kDžx k H~H5kDž$j H~H5kDžȈ j HH5kDžj H0H5äkDžj HXH5ƤkDž@ oj HH5ɤkDžhRj HH5̤kDž5j HH5ϤkDžj HH5ҤkDž$i H H5ݤkDži HHH5kDž0i HpH5kDžXi HH5kDži HH5kDžji HH5kDžЊMi HH5kDž0i H8H5 kDž i H`H5 kDžHh HH5kDžph HH5kDžh H؁H5kDž h HH5kDžh H(H5kDžeh HPH5kDž8 Hh HxH5"kDž`+h HH5-kDžh HȂH50kDžg HH53kDž،$g HH5lDž$g H@H5kDž($g HhH5kDžP}g HH5kDžx `g HH5"kDž Cg HH5%kDžȍ$&g HH5(kDž g H0H53kDžf HXH56kDž@f HH59kDžh f HH5f HHH5XkDž0!f HpH5[kDžXf HH5^kDž e HH5ikDže HH5tkDžЏe HH5lDže H8H5bkDž $se H`H5ekDžH$Ve HH5hkDžp$9e HH5kkDž e H؆H5nkDž$d HH5qkDž$d H(H5tkDž d HPH5lDž8 d HxH5ZkDž`$d HH5ekDž nd HȇH5hkDžQd HH5kkDžؑ4d HH5lDž d H@H5QkDž($c HhH5TkDžP$c HH5WkDžx$c HH5bkDžc HH5ekDžȒ c HH5pkDžic H0H5skDž$Lc HXH5~kDž@/c HH5kDžhc HH5kDžb HЉH5kDž b HH5kDž b H H5kDžb HHH5kDž0b HpH5kDžXdb HH5kDžGb HH5kDž*b HH5kDžД b HH5kDža H8H5¥kDž a H`H5ťkDžHa HH5ȥkDžp a HH5lDž |a H؋H5kDž$_a HH5kDžBa H(H5kDž%a HPH5kDž8 a HxH5¥kDž`` HH5ťkDž` HȌH5ȥkDž ` HH5MlDžؖ ` HH5kDž$w` H@H5kDž(Z` HhH5kDžP =` HH5ǥkDžx ` HH5ʥkDž ` HH5ͥkDžȗ_ HH5إkDž_ H0H5kDž_ HXH5kDž@ _ HH5kDžhr_ HH5kDžU_ HЎH5lDž$8_ HH5kDž!_ H H5kDž ^ HHH5kDž0^ HpH5kDžX$^ HH5kDž^ HH5kDž^ HH5kDžЙm^ HH5kDž P^ H8H5kDž $3^ H`H5kDžH$^ HH5kDžp] HH5kDž] HؐH5kDž] HH5kDž ] H(H5kDž] HPH5kDž8h] HxH5@lDž`K] HH5kDž$.] HȑH5kDž$] HH5 kDž؛ \ HH5kDž\ H@H5!kDž(\ HhH5$kDžP$\ HH5'kDžx$\ HH5*kDž c\ HH5-kDžȜF\ HH50kDž)\ H0H53kDž$ \ HXH5>kDž@[ HH5lDžh[ HH5,kDž$[ HГH5/kDž [ HH52kDž{[ H H55kDž ^[ HHH58kDž0A[ HpH5;kDžX$[ HH5>kDž[ HH5AkDžZ HH5DkDžОZ HH5GkDž Z H8H5JkDž Z H`H5UkDžHvZ HH5XkDžp YZ HH5[kDž kDž L HH5AkDžjL HH5DkDžв ML HH5GkDž0L H8H5JkDž L H`H5MkDžHK HH5PkDžp K HH5SkDž$K HةH5VkDž K HH5YkDžK H(H5\kDž$eK HPH5_kDž8HK HxH5jkDž`+K HH5ukDžK HȪH5kDžJ HH5kDžش$J HH5kDžJ H@H5kDž($J HhH5kDžP}J HH5kDžx`J HH5lDžCJ HH5kDžȵ$&J HH5kDž J H0H5kDž I HXH5kDž@ I HH5kDžh I HH5kDžI HЬH5kDž$xI HH5kDž[I H H5kDž >I HHH5kDž0!I HpH5kDžX I HH5kDž H HH5kDžH HH5kDžз H HH5kDžH H8H5¨kDž sH H`H5ŨkDžH VH HH5ȨkDžp9H HH5˨kDž$H HخH5ΨkDžG HH5ѨkDžG H(H5ԨkDž G HPH5QlDž8G HxH5¨kDž` G HH5ͨkDžnG HȯH5ШkDž QG HH5ӨkDžع 4G HH5֨kDž G H@H5٨kDž(F HhH5ܨkDžPF HH5ߨkDžx$F HH5kDžF HH5kDžȺ F HH5kDžiF H0H5lDžLF HXH5kDž@$/F HH5kDžh F HH5ڿlDžE HбH5רkDžE HH5ڨkDžE H H5lDžE HHH5ȨkDž0$E HpH5ӨkDžXdE HH5֨kDžGE HH5KlDž *E HH5kDžм$ E HH5kDž D H8H5¨kDž D H`H5ŨkDžHD HH5ȨkDžpD HH5˨kDž|D HسH5֨kDž_D HH5kDžBD H(H5kDž%D HPH5kDž8D HxH5kDž`C HH5kDžC HȴH5kDž C HH5kDžؾC HH5kDžwC H@H5 kDž(ZC HhH5kDžP=C HH5kDžx C HH5kDžC HH5kDžȿB HH5lDžB H0H5kDžB HXH5kDž@B HH5 kDžhrB HH5 kDž UB HжH5kDž 8B HH5kDžB H H5kDž A HHH5kDž0A HpH5kDžXA HH5kDž A HH5)kDžA HH5,kDžmA HH5/kDžPA H8H52kDž 3A H`H55kDžH$A HH58kDžp@ HH5;kDž@ HظH5>kDž @ HH5AkDž@ H(H5LkDž@ HPH5OkDž8h@ HxH5RkDž`K@ HH5UkDž.@ HȹH5`kDž@ HH5ckDž? HH5fkDž? H@H5ikDž(? HhH5lkDžP ? HH5okDžx? HH5rkDžc? HH5ukDž F? HH5xkDž )? H0H5{kDž ? HXH5~kDž@> HH5kDžh> HH5kDž$> HлH5kDž> HH5kDž{> H H5kDž^> HHH5kDž0A> HpH5kDžX$> HH5kDž> HH5kDž$= HH5kDž= HH5kDž$= H8H5kDž = H`H5kDžHv= HH5kDžpY= HH5kDž <= HؽH5ƩkDž= HH5ɩkDž= H(H5ԩkDž< HPH5%lDž8< HxH5©kDž`< HH5ͩkDž < HȾH5ЩkDžq< HH5۩kDžT< HH5ީkDž$7< H@H5kDž( < HhH5kDžP; HH5kDžx$; HH5kDž; HH5kDž; HH5kDž; H0H5kDžl; HXH5kDž@O; HH5 kDžh2; HH5kDž; HH5kDž: HH5"kDž: H H5-kDž: HHH50kDž0: HpH5;kDžX: HH5FkDžg: HH5IkDžJ: HH5LkDž-: HH5OkDž: H8H5ZkDž 9 H`H5]kDžH9 HH5`kDžp9 HH5ckDž 9 HH5fkDž9 HH5qkDžb9 H(H5tkDžE9 HPH5wkDž8(9 HxH5zkDž` 9 HH5ilDž8 HH5`kDž$8 HH5ckDž8 HH5fkDž8 H@H5qkDž(z8 HhH5tkDžP ]8 HH5wkDžx @8 HH5zkDž#8 HH5kDž8 HH5kDž 7 H0H5kDž 7 HXH5kDž@7 HH5kDžh7 HH5kDžu7 HH5kDž X7 HH5kDž ;7 H H5kDž$7 HHH5kDž0 7 HpH5kDžX6 HH5kDž 6 HH5kDž6 HH5kDž6 HH5kDž p6 H8H5ªkDž S6 H`H5ŪkDžH66 HH5ȪkDžp6 HH5˪kDž 5 HH5ΪkDž5 HH5ѪkDž$5 H(H5ԪkDž5 HPH5!lDž8 5 HxH5kDž`k5 HH5kDžN5 HH5kDž!15 HH5˪kDž5 HH5ΪkDž 4 H@H5ѪkDž(4 HhH5ܪkDžP4 HH5ߪkDžx4 HH5kDž4 HH5kDž f4 HH5kDžI4 H0H5kDž,4 HXH5kDž@4 HH5kDžh3 HH5kDž3 HH5kDž$3 HH5kDž3 H H5kDž ~3 HHH5kDž0a3 HpH5 kDžXD3 HH5ޭlDž'3 HH5kDž$ 3 HH5kDž$2 HH5kDž2 H8H5kDž 2 H`H5kDžH 2 HH5kDžp$y2 HH5 kDž\2 HH5kDž ?2 HH5kDž "2 H(H5kDž$2 HPH5kDž81 HxH5kDž`$1 HH5kDž1 HH5 kDž$1 HH5#kDž$t1 HH5&kDžW1 H@H5)kDž(:1 HhH5,kDžP1 HH5/kDžx$1 HH52kDž$0 HH55kDž 0 HH58kDž$0 H0H5;kDž 0 HXH5>kDž@o0 HH5AkDžh$R0 HH5LkDž50 HH5OkDž0 HH5RkDž / H H5UkDž / HHH5XkDž0 / HpH5[kDžX / HH5^kDž/ HH5?lDž j/ HH5DkDž$M/ HH5GkDž!0/ H8H5JkDž / H`H5MkDžH$. HH5̩lDžp$. HH53kDž$. HH56kDž. HH59kDž. H(H5DkDže. HPH5OkDž8H. HxH5ZkDž`+. HH5lDž$. HH5@kDž$- HH5CkDž$- HH5FkDž - H@H5IkDž($- HhH5LkDžP}- HH5OkDžx`- HH5RkDž$C- HH5UkDž &- HH5XkDž - H0H5[kDž$, HXH5^kDž@ , HH5ikDžh, HH5tkDž, HH5wkDž$x, HH5lDž[, H H5]kDž$>, HHH5`kDž0$!, HpH5ckDžX , HH5fkDž+ HH5ikDž + HH5tkDž+ HH5wkDž+ H8H5kDž s+ H`H5kDžH$V+ HH5lDžp 9+ HH5kkDž$+ HH5nkDž* HH5qkDž* H(H5tkDž* HPH5lDž8* HxH5ZkDž`$* HH5]kDž$n* HH5hkDžQ* HH5kkDž 4* HH5nkDž * H@H5qkDž() HhH5tkDžP$) HH5wkDžx$) HH5zkDž$) HH5}kDž) HH5kDž$i) H0H5kDž$L) HXH5kDž@/) HH5kDžh$) HH5~lDž( HH5wkDž$( HH5blDž$( H H5]kDž$( HHH5FlDž0( HpH5GlDžX$d( HH5HlDž$G( HH5kDž$*( HH5kDž ( HH5lDž' H8H5lDž $' H`H5lDžH$' HH5lDžp$' HH5lDž$|' HH5kDž$_' HH5lDž$B' H(H5lDž$%' HPH5lDž8$' HxH5lDž`$& HH5kDž$& HH5 kDž& HH5+kDž& HH56kDžw& H@H5lDž( Z& HhH5lDžP$=& HH5kDžx$ & HH5 kDž& HH5 kDž$% HH5kDž$% H0H5kDž% HXH5kDž@$% HH5kDžhr% HH5kDž$U% HH5kDž$8% HH5*kDž% H H5-kDž$ HHH50kDž0$ HpH53kDžX$ HH5>kDž$ HH5AkDž$$ HH5DkDžm$ HH5GkDžP$ H8H5JkDž 3$ H`H5lDžH$$ HH50kDžp# HH5;kDž# HH5>kDž$# HH5AkDž$# H(H5DkDž# HPH5OkDž8h# HxH5ZkDž`$K# HH5]kDž.# HH5`kDž# HH5ckDž" HH5nkDž" H@H5qkDž(" HhH5tkDžP$" HH5kDžx " HH5kDžc" HH5kDžF" HH5kDž)" H0H5kDž " HXH5kDž@! HH5kDžh! HH5kDž! HH5kDž! HH5kDž {! H H5kDž^! HHH5kDž0$A! HpH5kDžX$! HH5kDž$! HH5kDž HH5kDž HH5ǪkDž H8H5ʪkDž H`H5ͪkDžH v HH5ЪkDžp Y HH5۪kDž < HH5ުkDž  HH5kDž H(H5kDž  HPH5kDž8 HxH5kDž` HH5kDž  HH5kDž$q HH5kDž T HH5kDž 7 H@H5kDž( HhH5kDžP HH5kDžx HH5kDž HH5kDž HH5kDž  H0H5 kDž$l HXH5kDž@$O HH5kDžh2 HH5kDž HH5kDž HH5kDž H H5kDž HHH5 kDž0 HpH5#kDžX HH5&kDžg HH5)kDžJ HH5,kDž- HH5/kDž$ H8H5:kDž  H`H5=kDžH$ HH5@kDžp HH5CkDž HH5FkDž HH5IkDž$b H(H5LkDžE HPH5lDž8( HxH52kDž`$  HH55kDž$ HH58kDž$ HH5YlDž HH5kDž$ H@H5!kDž( z HhH5$kDžP] HH5'kDžx@ HH52kDž# HH55kDž HH58kDž H0H5;kDž HXH5FkDž@ HH5IkDžh  HH5LkDž u HH5OkDžX HH5ZkDž$; H H5ekDž HHH5hkDž0 HpH5kkDžX HH5nkDž  HH5ykDž HH5|kDž  HH52lDžp H8H5bkDž $S H`H5ekDžH 6 HH5hkDžp HH5kkDž HH5nkDž HH5qkDž$ H(H5lDž HPH5WkDž8$ HxH5ZkDž`$k HH5LlDžN HH5@kDž$1 HH5CkDž HH5FkDž H@H5lDž( HhH5lDžP$ HH5kDžx$ HH5kDž HH5kDžf HH5 kDž$I H0H5#kDž, HXH5&kDž@ HH5)kDžh$ HH5-lDž HH5kDž$ HH5"kDž  H H5%kDž$~ HHH5(kDž0a HpH5+kDžXD HH5.kDž' HH51kDž  HH54kDž HH57kDž  H8H5:kDž  H`H5=kDžH HH5@kDžp$y HH5CkDž\ HH5FkDž? HH5IkDž" H(H5LkDž HPH5OkDž8 HxH5RkDž` HH5]kDž HH5`kDž$ HH5ckDžt HH5fkDžW H@H5ikDž( : HhH5tkDžP HH5wkDžx HH5kDž  HH5kDž HH5kDž H0H5kDž  HXH5kDž@ o HH5kDžhR HH5kDž5 HH5kDž HH5kDž H H5kDž  HHH57lDž0  HpH5kDžX HH5kDž$ HH5kDžj HH5kDž M HH5kDž0 H8H5kDž   H`H5kDžH HH5kDžp HH5kDž  HH5kDž$ HH5kDž  H(H5īkDž$e HPH5ǫkDž8H HxH5lDž`+ HH5kDž$ HH5kDž HH5kDž HH5kDž H@H5kDž( HhH5īkDžP} HH5ǫkDžx` HH5ʫkDžC HH5ͫkDž& HH5ЫkDž  H0H5۫kDž HXH5ޫkDž@  HH5kDžh  HH5kDž HH5kDžx HH5kDž[ H H5kDž> HHH5kDž0! HpH5kDžX  HH5kDž HH5 kDž$ HH5 kDž HH5kDž H8H5kDž  s H`H5kDžHV HH5 kDžp 9 HH5#kDž HH5&kDž HH5)kDž H(H5,kDž  HPH5/kDž8 $ HxH5:kDž` HH5=kDž n HH5@kDž Q HH5lDž 4 HH5.kDž  H@H59kDž( HhH5DkDžP HH5GkDžx  HH5JkDž  HH5MkDž HH5PkDž i H0H5SkDž L HXH5VkDž@ / HH5akDžh  HH5dkDž  HH5gkDž  HH5jkDž H H5ukDž HHH5kDž0  HpH5kDžX d HH5kDž G HH5kDž * HH5kDž  HH5kDž  H8H5kDž  H`H5lDžH HH5kDžp  HH5kDž | HH5kDž _ HH5kDž B H(H5kDž% HPH5lDž8 HxH5kDž`$ HH5kDž HH5kDž HH5kDž HH5lDž w H@H5qkDž($Z HhH5flDžP= HH5WkDžx$ HH5ZkDž HH5]kDž HH5`kDž H0H5lDž  HXH5FkDž@$ HH5ׇlDžh$r HH5,kDžU HH5/kDž8 HH52kDž H H55kDž HHH5@kDž0 HpH5KkDžX HH5NkDž HH5QkDž HH5TkDžm HH5WkDžP H8H5bkDž 3 H`H5lDžH HH5HkDžp$ HH5KkDž HH5NkDž H H5QkDž H( H5&lDž HP H5'lDž8$h Hx H5(lDž`$K H H5kDž. H H5kDž$ H H5 kDž H H5kDž H@ H5kDž($ Hh H5lDžP H H5lDžx$ H H5lDž$c H H5kDž$F H H5ȫkDž ) H0 H5alDž$  HX H5kDž@$ H H5kDžh H H5kDž H H5kDž H H5kDž{ H H5kDž$^ HH H5kDž0$A Hp H5ëkDžX$ H H5ƫkDž H H5ѫkDž H H5ԫkDž H H5#lDž  H8 H5kDž $ H` H5kDžHv H H5kDžpY H H5ëkDž< H H5ƫkDž  HH5lDž$ H(H5kDž$ HPH5wlDž8 HxH5kDž`$ HH5kDž$ HH5kDžq HH5kDž$T HH5kDž7 H@H5kDž($ HhH5kDžP HH5lDžx HH5kDž$ HH5kDž HH5kDž H0H5kDž$l HXH5kDž@O HH5lDžh 2 HH5kDž  HH5kDž HH5kDž H H5kDž HHH5lDž0 HpH5lDžX HH5fkDž$g HH5ikDžJ HH5lkDž- HH5UlDž H8H5VlDž $H`H55kDžH$HH58kDžpHH5CkDžHH5lDžHH5)kDžbH(H5,kDž$EHPH5/kDž8(HxH52kDž` HH55kDž HH58kDžHH5;kDžHH5>kDžH@H5lDž(zHhH5lDžP$]HH5kDžx$@HH5 kDž#HH5kDžHH5 kDžH0H5#kDžHXH5&kDž@HH51kDžhHH5HH%H5@kDž0/!Hp%H5CkDžX/ H%H5tlDž/H%H5tlDž/$H%H5kDž/$H&H5kDž/H8&H5kDž 0$sH`&H5kDžH0VH&H5 kDžp09H&H5#kDž0H&H5&kDž0 H'H5slDž0$H('H5kDž1$HP'H5slDž81Hx'H5kDž`1$H'H5kDž1nH'H5kDž1QH'H5kDž14H(H5:slDž2$H@(H5kDž(2$Hh(H5kDžP2H(H5slDžx2 H(H5ҫkDž2H(H5իkDž2H)H5ثkDž2 iH0)H5۫kDž3 LHX)H5ޫkDž@3/H)H5kDžh3$H)H5kDž3H)H5kDž3H)H5kDž3$H *H5kDž4$HH*H5qlDž04 Hp*H5kDžX4dH*H5kDž4GH*H5qlDž4*H*H5ԫkDž4$ H+H5qlDž4H8+H5kDž 5$H`+H5kDžH5 H+H5kDžp5H+H54qlDž5 |H+H5kDž5$_H,H5qlDž5BH(,H5kDž6%HP,H5kDž86Hx,H5kDž`6H,H5kDž6H,H5plDž6H,H5kDž6$H-H5kDž7wH@-H5kDž(7 ZHh-H5OplDžP7$=H-H5kDžx7$ H-H5kDž7H-H5kDž7H.H5kDž7H0.H5kDž8HX.H5kDž@8 H.H5kDžh8$rH.H5kDž8$UH.H5kDž88H.H5kDž8H /H5-olDž9HH/H5kDž09$Hp/H5kDžX9H/H5kDž9H/H5nlDž9H/H5nlDž9$mH0H5kDž9$PH80H5kDž : 3H`0H5kDžH:H0H5kDžp:H0H5kDž:$H0H5kDž:H1H5kDž:H(1H5kDž;HP1H5kDž8;hHx1H5kDž`;KH1H5kDž;.H1H5kDž;H1H5kDž;H2H5kDž<H@2H5kDž(<Hh2H5kDžP<H2H5kDžx<H2H5llDž< cH2H5llDž<$FH3H5kDž<)H03H5llDž= HX3H5nkDž@=$H3H5ykDžh=H3H5|kDž=$H3H5kDž=H3H5\llDž= {H 4H5]llDž>^HH4H5^llDž0>AHp4H5_llDžX>$H4H5kDž>H4H5CllDž>H4H5kDž>$H5H5kDž>$H85H5kDž ?H`5H5kDžH?$vH5H5kDžp? YH5H5 kDž?<H5H5kDž? H6H5kDž?H(6H5\klDž@HP6H5kDž8@$Hx6H5kDž`@H6H5kDž@H6H5kDž@qH6H5 kDž@TH7H5kDžA7H@7H5kDž(AHh7H5kDžPAH7H5kDžxA$H7H5"kDžA H7H5;jlDžA$H8H5kDžA$H08H5kDžB lHX8H5kDž@B$OH8H5ilDžhB 2H8H5kDžB$H8H5kDžB H8H5 kDžB$H 9H5kDžCHH9H5kDž0C Hp9H5kDžXCH9H5&kDžCgH9H5)kDžCJH9H5,kDžC-H:H5/kDžC H8:H52kDž D$H`:H55kDžHDH:H58kDžpDH:H5;kDžD H:H5>kDžDH;H5AkDžDbH(;H5hlDžEEHP;H5'kDž8E$(Hx;H5*kDž`E$ H;H5-kDžEH;H50kDžEH;H5glDžE H<H5kDžF$H@<H5!kDž(F zHh<H5$kDžPF]H<H5'kDžxF@H<H52kDžF #H<H5=kDžF$H=H5@kDžF H0=H5KkDžGHX=H5NkDž@GH=H5QkDžhGH=H5TkDžG uH=H5WkDžG XH=H5ZkDžG ;H >H5]kDžHHH>H5`kDž0HHp>H5ckDžXH$H>H5nkDžHH>H5qkDžH H>H5tkDžHH?H5wkDžHpH8?H5zkDž I SH`?H5kDžHI6H?H5kDžpIH?H5kDžI H?H5kDžIH@H5dlDžIH(@H5dlDžJHP@H5dlDž8JHx@H5BkDž`JkH@H5EkDžJNH@H5HkDžJ1H@H5KkDžJHAH5NkDžKH@AH5QkDž(K$HhAH5\kDžPKHAH5gkDžxKHAH5jkDžK HAH5mkDžKfHBH5pkDžKIH0BH5skDžL,HXBH5vkDž@L$HBH5tclDžhLHBH5\kDžL$HBH5_kDžL HBH5bkDžLH CH5mkDžM~HHCH5pkDž0MaHpCH5{kDžXMDHCH5blDžM 'HCH5akDžM$ HCH5dkDžMHDH5blDžM H8DH5JkDž NH`DH5MkDžHN HDH5XkDžpNyHDH5[kDžN \HDH5fkDžN?HEH5alDžN$"H(EH5LkDžO$HPEH5OkDž8O HxEH5alDž`OHEH5alDžOHEH5kDžOHEH5kDžO tHFH5kDžP$WH@FH5!kDž(P$:HhFH5,kDžPPHFH5/kDžxPHFH52kDžPHFH5=kDžPHGH5HkDžPH0GH5KkDžQHXGH5NkDž@QoHGH5QkDžhQRHGH5\kDžQ5HGH5gkDžQ HGH5/`lDžQ$H HH50`lDžRHHHH51`lDž0RHpHH50`lDžXRHHH5kDžRHHH5kDžRjHHH5 kDžRMHIH5kDžR0H8IH5_lDž SH`IH5_lDžHS$HIH5kDžpS$HIH5kDžSHIH5kDžS HJH5kDžSH(JH5kDžTeHPJH5kDž8T HHxJH5kDž`T+HJH5kDžTHJH5kDžT$HJH5 kDžTHKH5kDžU$H@KH5~^lDž(U$HhKH5kDžPU$}HKH5kDžxU`HKH5kDžUCHKH5kDžU&HLH5 ^lDžU H0LH5kDžV$HXLH5kDž@V HLH5kDžhVHLH5kDžV HLH5kDžVxHLH5kDžV[H MH5kDžW$>HHMH5kDž0W$!HpMH5 kDžXW HMH5kDžWHMH5\lDžW HMH5kDžW$HNH5kDžWH8NH5kDž XsH`NH5kDžHX$VHNH5kDžpX$9HNH5 kDžXHNH5kDžXHOH5kDžXH(OH5kDžYHPOH5kDž8Y$HxOH5kDž`Y HOH5kDžYnHOH5 kDžYQHOH5#kDžY4HPH5&kDžZH@PH51kDž(ZHhPH5kDžfH\H58TlDžfH\H5$kDžf$H]H5'kDžfH8]H5SlDž gH`]H5 kDžHg$vH]H5SlDžpgYH]H5kDžg<H]H5kDžgH^H5SlDžgH(^H5ܩkDžh$HP^H5ߩkDž8hHx^H5qSlDž`hH^H5rSlDžh$H^H5rSlDžh$qH^H5kDžh$TH_H5VSlDži7H@_H5WSlDž(i$Hh_H5\kDžPiH_H5_kDžxi$H_H5jkDžiH_H5ukDžiH`H5xkDžiH0`H5RlDžjlHX`H5^kDž@j$OH`H5akDžhj2H`H5dkDžjH`H5gkDžjH`H5jkDžjH aH5mkDžkHHaH5pkDž0kHpaH5skDžXkHaH5vkDžkgHaH5kDžkJHaH5kDžk$-HbH5kDžk$H8bH5kDž lH`bH5OQlDžHlHbH5pkDžplHbH5{kDžlHbH5~kDžlHcH5kDžl bH(cH5kDžmEHPcH5kDž8m(HxcH5kDž`m HcH5kDžmHcH5kDžm HcH5KPlDžm HdH5kDžn$H@dH5kDž(nzHhdH5kDžPn]HdH5kDžxn@HdH5OlDžn#HdH5OlDžn$HeH5OlDžnH0eH5OlDžo$HXeH56kDž@oHeH59kDžhoHeH5HHuH5xkDž0 !HpuH5{kDžXHuH5ElDžHuH5akDž$ʷHuH5lkDž護HvH5okDž 萷H8vH5rkDž sH`vH5ElDžHVHvH5XkDžp$9HvH5ckDžHvH5nkDžHwH5DlDž$H(wH5TkDžŶHPwH5WkDž8 訶HxwH5ZkDž`苶HwH5ekDžnHwH5hkDž$QHwH5kkDž؁ 4HxH5nkDžH@xH5ykDž(HhxH5|kDžPݵHxH5kDžxHxH5kDž裵HxH5ClDžȂ$膵HyH5pkDž$iH0yH5{kDžLHXyH5kDž@/HyH5kDžh HyH5kDžHyH5kDžشHyH5kDž軴H zH5kDž螴HHzH5kDž0聴HpzH5kDžX$dHzH5kDžGHzH5kDž*HzH5+BlDžЄ H{H5kDžH8{H5BlDž ӳH`{H5kDžH足H{H5kDžp虳H{H5kDž|H{H5kDž_H|H5kDž BH(|H5kDž%HP|H5kDž8Hx|H5DAlDž` H|H5kDžβH|H5kDž$豲H|H5kDž؆蔲H}H5kDžwH@}H5kDž(ZHh}H5kDžP =H}H5kDžx H}H5y@lDžH}H5z@lDžȇ H~H5{@lDž$ɱH0~H5z@lDž$謱HX~H5{@lDž@菱H~H5kDžhrH~H5kDžUH~H5kDž8H~H5%@lDžH H5kDž HHH5kDž0HpH5 kDžXİHH5kDž觰HH5kDž芰HH5kDžЉmHH5kDžPH8H5"kDž 3H`H5>?lDžHHH5kDžp$HH5"?lDž$ܯH؀H5kDž$迯HH5kDž$袯H(H5kDž腯HPH5kDž8hHxH5 kDž`KHH5 kDž.HȁH5kDžHH5kDž؋HH5:>lDž ׮H@H5;>lDž($躮HhH5ܨkDžP蝮HH5ߨkDžx耮HH5kDž$cHH5kDžȌFHH5kDž)H0H5kDž HXH5kDž@HH5 kDžhҭHH5 kDž赭HЃH5kDž$蘭HH5kDž {H H5kDž^HHH5kDž0AHpH5kDžX$HH5kDžHH5)kDžHH5,kDžЎͬHH5/kDž谬H8H52kDž 蓬H`H5=kDžHvHH5@kDžpYHH5;lDž<H؅H5;lDžHH5 kDžH(H5 kDžHPH5kDž8ȫHxH5kDž`諫HH5kDž 莫HȆH5 kDž qHH5#kDžؐTHH5&kDž7H@H5)kDž($HhH54kDžPHH5?kDžxHH5BkDž êHH5MkDžȑ親HH5d:lDž艪H0H5e:lDž$lHXH5kDž@$OHH5!kDžh2HH5+:lDž HЈH5kDžHH5:lDž۩H H5:lDž辩HHH5kDž0$衩HpH5kDžX脩HH5kDžgHH5kDž$JHH59lDžГ$-HH5רkDž H8H5kDž H`H5kDžH֨HH5kDžp蹨HH5kDž蜨H؊H5kDžHH5kDžbH(H58lDžEHPH5רkDž8(HxH58lDž` HH58lDžHȋH5kDžѧHH5kDžؕ$货HH58lDž藧H@H5kDž(zHhH5kDžP$]HH5kDžx@HH5)8lDž$#HH5ukDžȖ$HH5xkDžH0H57lDž ̦HXH57lDž@$详HH57lDžh$蒦HH5$kDžuHЍH57lDžXHH5 kDž$;H H5 kDžHHH5kDž0HpH57lDžXHH5kDžǥHH5kDž誥HH5kDžИ荥HH5kDž pH8H5kDž SH`H5kDžH6HH5kDžpHH5 kDžH؏H5kDžߤHH5{6lDž¤H(H5|6lDž$襤HPH5קkDž8 舤HxH5`6lDž`kHH5`6lDž$NHȐH5a6lDž$1HH5kDžؚHH5kDžH@H5kDž(ڣHhH5kDžP轣HH5kDžx蠣HH5kDž$胣HH5kDžțfHH5kDž IH0H5kDž,HXH5kDž@ HH5@5lDžh$HH5?5lDžբHВH5okDž踢HH5rkDž蛢H H55lDž~HHH5XkDž0$aHpH54lDžXDHH54lDž 'HH54lDž$ HH54lDžНHH5kDž$СH8H5kDž 賡H`H5kDžH薡HH5kDžpyHH5v4lDž\HؔH5kDž?HH5kDž"H(H5=4lDž$HPH5kDž8HxH5kDž`ˠHH5kDž讠HȕH5kDž葠HH5kDž؟tHH5kDž$WH@H5!kDž( :HhH5$kDžPHH5'kDžxHH5*kDžHH5-kDžȠƟHH58kDž詟H0H5;kDž茟HXH5FkDž@oHH5IkDžhRHH5TkDž5HЗH5_kDžHH5bkDžH H5mkDžޞHHH5pkDž0HpH5skDžX褞HH5vkDž臞HH5kDžjHH5kDžТMHH5kDž0H8H5i1lDž H`H5j1lDžH HH5k1lDžp ٝHH5;kDž 輝HؙH5>kDž 蟝HH5AkDž$肝H(H5LkDžeHPH50lDž8HHxH52kDž`$+HH55kDžHȚH50lDžHH50lDžؤ$ԜHH5kDž$跜H@H5kDž(蚜HhH5kDžP}HH5kDžx`HH5kDžCHH5kDžȥ&HH5 kDž H0H5#kDžHXH5/lDž@ϛHH5kDžh貛HH5/lDž蕛HМH5kDžxHH5kDž [H H5 kDž>HHH5kDž0!HpH5kDžXHH5-/lDžHH5./lDžʚHH5kDžЧ譚HH5kDž萚H8H5kDž sH`H5kDžHVHH5kDžp9HH5kDžH؞H5kDžHH5d.lDžH(H5e.lDžřHPH5f.lDž8$訙HxH5kDž` 苙HH5kDžnHȟH5kDžQHH5kDžة 4HH5-lDž$H@H5-lDž(HhH5-lDžPݘHH5-lDžxHH5BkDž 裘HH5EkDžȪ膘HH5HkDž iH0H5KkDž LHXH5NkDž@/HH5QkDžh HH5TkDž$HСH5WkDžؗHH5-lDž軗H H5-lDž螗HHH5(kDž0聗HpH5,lDžXdHH5,lDžGHH5kDž *HH5kDžЬ HH5,lDžH8H5,lDž ӖH`H5եkDžH$趖HH5إkDžp虖HH5,lDž|HأH5,lDž$_HH5kDž$BH(H5kDž%HPH5kDž8HxH5/,lDž`HH50,lDžΕHȤH5pkDž 豕HH5{kDžخ蔕HH5~kDžwH@H5kDž(ZHhH5kDžP=HH5kDžx HH5+lDžHH5ukDžȯHH5kDžɔH0H5kDž謔HXH5kDž@菔HH5+lDžhrHH5+lDžUHЦH5WkDž8HH5ZkDžH H5ekDžHHH5hkDž0HpH5*lDžX ēHH5*lDž$觓HH51kDž芓HH5'lDž HH5kDžH(H5kDžHPH5'lDž8ȎHxH5kDž`$諎HH5&lDž$莎HȮH5xkDž$qHH5{kDžظTHH5~kDž7H@H5kDž(HhH5kDžPHH5kDžxHH58&lDžÍHH58&lDžȹ$覍HH5`kDž$艍H0H5ckDžlHXH5fkDž@OHH5ikDžh2HH5%lDžHаH5%lDž HH5%lDž یH H5%lDž$辌HHH5kDž0行HpH5kDžX脌HH5kDžgHH5 kDžJHH5 kDžл$-HH58%lDžH8H5kDž $H`H5kDžH$֋HH5kDžp蹋HH5kDž蜋HزH5kDžHH5 kDžbH(H5 kDžEHPH5l$lDž8$(HxH5kDž`$ HH5kDž HȳH5kDžъHH5kDžؽ贊HH5kDž藊H@H5kDž(zHhH5kDžP$]HH5kDžx$@HH5 kDž$#HH5 kDžȾHH5kDžH0H5kDž̉HXH5kDž@诉HH5!kDžh$蒉HH5$kDž uHеH5'kDžXHH5*kDž;H H5-kDž$HHH50kDž0 HpH5;kDžXHH5FkDžLjHH5IkDž$誈HH5LkDž$荈HH5OkDž pH8H5RkDž SH`H5UkDžH6HH5XkDžpHH5[kDž$HطH5^kDž$߇HH5akDž ‡H(H5dkDž 襇HPH5gkDž8$與HxH5jkDž`$kHH5mkDž$NHȸH5pkDž$1HH5skDž$HH5vkDž$H@H5ykDž($چHhH5|kDžP$轆HH5kDžx蠆HH5kDž胆HH5kDžfHH5kDžIH0H5kDž ,HXH5kDž@ HH5kDžhHH5kDžՅHкH5kDž踅HH5ʤkDž蛅H H5դkDž ~HHH5kDž0aHpH5kDžX$DHH5kDž$'HH5kDž$ HH5kDž$HH5kDžЄH8H5lDž 賄H`H5lDžH$薄HH5lDžp$yHH5lDž$\HؼH5kDž$?HH5kDž$"H(H5lDž$HPH5lDž8HxH5lDž`˃HH5lDž讃HȽH5lDž葃HH5lDž$tHH5lDž$WH@H5lDž(:HhH5lDžPHH5lDžx$HH5rkDž$HH5ukDž$ƂHH5xkDž$詂H0H5{kDž茂HXH5flDž@oHH5flDžh$RHH5DkDž$5HпH5GkDž HH5,lDž H H5,lDž$ށHHH5kDž0$HpH5kDžX$褁HH5lDž$臁HH5lDžjHH5lDžMHH5lDž0H8H5lDž H`H5lDžH$HH5lDžp$ـHH5lDž$輀HH5lDž$蟀HH5kDž$肀H(H5TkDžeHPH5kDž8HHxH5$lDž`+HH5kDž$HH5lDžHH5 lDž$HH5vkDžH@H5kDž(HhH5lDžP}HH5wkDžx`HH5lDžCHH5lDž&HH5kDž H0H5lDž~HXH5lDž@~HH5YkDžh~HH5lDž~HH5lDž x~HH5kDž [~H H5lDž>~HHH5kDž0!~HpH5ckDžX~HH5^lDž}HH5kDž }HH5kDž}HH5'lDž}H8H52lDž s}H`H55lDžHV}HH58lDžp 9}HH5ClDž}HH5FlDž|HH5QlDž|H(H5TlDž|HPH5WlDž8|HxH5blDž`|HH5mlDžn|HH5kDžQ|HH5[lDž4|HH5.kDž|H@H5kDž({HhH5,lDžP{HH57lDžx{HH5"kDž {HH5lDž{HH58kDži{H0H5lDžL{HXH5kDž@/{HH5IkDžh{HH5lDžzHH5lDžzHH5kDžzH H5lDžzHHH5lDž0zHpH5lDžXdzHH5kDžGzHH5kDž*zHH5kDž zHH5olDžyH8H5kDž yH`H5]lDžHyHH50kDžpyHH5[kDž|yHH5.lDž_yHH5!kDžByH(H5lDž%yHPH5lDž8yHxH5lDž`xHH5lDž xHH5 lDžxHH5kDžxHH5lDžwxH@H5kDž(ZxHhH5|kDžP=xHH5kDžx xHH5kDžxHH5lDžwHH5kDžwH0H5kDžwHXH5kDž@wHH5kDžhrwHH5|kDžUwHH5lDž8wHH5JkDžwH H5lDž vHHH5kDž0vHpH5#kDžXvHH5lDžvHH5kDžvHH5$kDžmvHH5lDžPvH8H5kDž 3vH`H5}lDžH vHH5kDžpuHH5clDžuHH5kDžuHH5ykDžuH(H5,kDžuHPH5gkDž8huHxH5lDž`KuHH5 kDž.uHH5lDžuHH5lDžtHH5fkDžtH@H5kDž(tHhH5lDžPtHH5kDžxtHH5ږkDžctHH5}lDžFtHH5lDž )tH0H5kDž tHXH5nlDž@sHH5kDžhsHH5kDžsHH5׮kDžsHH5"lDž{sH H5kDž ^sHHH5lDž0AsHpH5lDžX$sHH5lDž$sHH5lDžrHH5 lDžrHH5kDžrH8H5lDž rH`H5kDžHvrHH5kDžpYrHH5SkDžlDž@iHH51 lDžh$hHH5DkDž$hHH5kDžhHH5lDžhH H5lDž~hHHH5lDž0 ahHpH5kDžXDhHH5kDž'hHH5lDž hHH5,kDžgHH5lDžgH8H5lDž $gH`H5lDžHgHH5lDžp!ygHH5[kDž\gHH5lDž?gHH5qkDž "gH(H5tlDžgHPH5?kDž8fHxH5kDž` fHH5%kDž fHH5 lDžfHH5#lDž tfHH5kDž WfH@H5kDž(:fHhH54kDžP fHH5kDžx fHH5lDž$eHH5lDž eHH5lDžeH0H5lDžeHXH5kDž@oeHH5YkDžhReHH5lDž5eHH5lDžeHH5kDž dH H5mlDždHHH5kDž0 dHpH5SlDžXdHH5^lDždHH5alDžjdHH5dlDžMdHH5olDž0dH8H5rlDž $dH`H5ulDžHcHH5kDžpcHH5[kDžcHH5FlDžcHH5kDžcH(H5tkDžecHPH5lDž8HcHxH5kDž`+cHH5EkDžcHH5kDžbHH5lDžbHH5fkDžbH@H5akDž(bHhH5lDžP}bHH5lDžx`bHH5lDžCbHH5-kDž&bHH5kDž bH0H5kDžaHXH5ƒkDž@aHH5)lDžhaHH5dkDžaHH5kDžxaHH5kDž[aH H5lDž>aHHH5ЦkDž0!aHpH5lDžX aHH5lDž`HH5lDž`HH5kDž$`HH5lDž`H8H5ZkDž s`H`H5ekDžHV`HH5@kDžp9`HH5[lDž`HH5^lDž_HH5kDž_H(H5$kDž_HPH5'lDž8_HxH5rkDž`_HH5kDžn_HH5pkDžQ_HH5lDž4_HH5lDž_H@H5lDž(^HhH5lDžP^HH5kDžx^HH5kDž^HH5lDž^HH5(kDži^H0H5kDžL^HXH5kDž@/^HH5ilDžh^HH5kDž]HH5_kDž]HH5kDž]H H5lDž]HHH5 lDž0]HpH5#lDžX d]HH5&lDž G]HH5kDž *]HH5 lDž ]HH5lDž\H8H5bkDž \H`H5lDžH\HH5lDžp \HH5 lDž|\HH5kDž_\HH5lDžB\H(H5kDž%\HPH5lDž8\HxH5lDž`[HH5lDž[HH5lDž [HH5kDž[HH5lDžw[H@H5lDž(Z[HhH5DkDžP=[HH5lDžx [HH5lE[H޺ H=-E`LfkMVI9tMI>MNL9uMVI9uL=FHH5u-L LH5>jHZH{(H5(jDž mZH{PH5GjDž8 SZH{xH5kDž` 9ZHH5{JjDž ZHH5&tjDž YHH5 jDž YHH5tjDž YH@H5jDž( YHhH5"kDžP YHH5fkDžx nYHH5jDž QYHH5~kDž 4YHH5kDž YH0H5ajDž XHXH53kDž@ XHH5jDžh XHH5CkDž XHH5mkDž XHH5@VjDž iXH H5k`jDž LXHHH5FAjDž0 $/XHpH5!FkDžX XHH5|kDž WHH5kDž WHH5kDž WHH5-|kDž WH8H5kDž WH`H5kDžH$dWHH5kDžp GWHH51>jDž*WHH5kDž WHH5jDžVH(H5kDžVHPH5kDž8 VHxH5kDž`VHH5^kDž$|VHH5IkDž_VHH5ykDžBVHH5ljDž %VH@H5';jDž($VHhH5jDžPUHH5-kDžx UHH5;jDžUHH5jDžUHH55jDžwUH0H5?jDžZUHXH5>jDž@=UHH5kDžh UHH5 *jDžUHH5]sjDžTHH5wjDžTH H5#kDžTHHH5jDž0THpH5vkDžXrTHH5̑kDžUTHH5kDž8THH5|kDžTH H5kDžSH8 H50OjDž SH` H5ckDžHSH H5NkDžpSH H5fjDžSH H5INH9uIvM9uLH H5H[A\A]A^A_]fDhAHLHH H=CIL; K}}HH5|ʷIII f{f.UHxHHzHAWAVAUATSHHtDžtHtHHHH?HHH;HvKHlHH9lL$L褽1HL跸HH5mHnHtL=XLC ILtf.IcH >1MIHtHMIMlME9ktQI3HkHcF1HHL9t/kfH6HkHcF1HHI9kD9uIL;tiH=B*HH5读HH5kMH{(H5 kDžuLH{PH5kDž(uLH{xH5)kDžPuLHH5kDžxuLHH5WLjDžuxLHH5"kDžu[LHH5kDžu>LH@H5HjDžv!LHhH5/kDž@vLHH56(jDžhv KHH51kDžvKHH5!jDžvKHH5WkDžvKH0H5 5jDžw sKHXH5kDž0wVKHH5kDžXw9KHH5kDžw$KHH5njDžwJHH5[kDžwJH H5zjDžwJHHH5ojDž x JHpH5YjDžHx JHH5-jDžpxnJHH5EjDžx QJHH5CjDžx4JHH5VjDžxJH8H5kDžyIH`H5ԎjDž8y$IHH5gjDž`y IHH5~jDžyIHH5jDžyIHH5kDžyiIH(H5kDžz$LIHPH5V0jDž(z/IHxH5kDžPzIHH5tkDžxz"HHH5kDžz$HHH5jkDžzHHH5kDžz HH@H5jDž{ HHhH53kDž@{dHHH56kDžh{ GHHH5kDž{ *HHH5kDž{ HHH5kDž{ GH0H5kDž| GHXH5kDž0| GHH5kDžX|GHH5kDž| |GHH5kDž|_GHH5kDž|BGH H5>jDž|%GHHH5#jDž }GHpH5kDžH}FHH5kDžp} FHH5?jDž} FHH5kDž}FH H5kDž} wFH8 H5kDž~ZFH` H5kDž8~=FH H5kDž`~ FH H5"kDž~ FH H5kDž~ EH H5kDž~ EH( H5kDžEHP H5jDž( EHx H5kDžPrEH H5|kDžx UEH H5WMjDž 8EH H5kDžEH H5kDž$DH@ H50JjDž DHh H5c\jDž@DH H5kDžhDH H51kDž DH H5 jDž mDH H5%jDž$PDH0 H5 kDž3DHX H5kDž0 DH H5kDžX CH H5MjDž CH H5n jDžCH H59jDžЁCH H5kDž$CHH H5*jDž hCHp H5/jDžHKCH H5mojDžp.CH H5PgjDž$CH H5EjDžBHH5jDžBH8H59jDž BH`H5DkDž8BHH5kDž` BHH5kDž cBHH5=jDž FBHH5kDž؃)BH(H5kjDž BHPH5.&jDž(AHxH59jDžPAHH5tpjDžx$AHH5gkDž$AHH5:jDžȄ {AHH5kDž^AH@H5ojDžAAHhH5 kDž@$$AHH5jDžhAHH5ijDž @HH5|1jDž@HH5vkDž@H0H5kDž!@HXH5UjDž0v@HH5(jDžXY@HH5KkDž<@HH5ΝkDž@HH5kDžІ @H H5kDž?HHH5kDž !?HpH5kDžH ?HH5MkDžp ?HH5kDžq?HH5kDž T?HH5jDž7?H8H5ykDž ?H`H5kDž8 >HH5DjDž` >HH5rkDž>HH5 kDž>HH5\kDž؈>H(H5{YjDž!l>HPH56jDž(O>HxH5jDžP2>HH5kDžx>HH5njkDž=HH5*jDžȉ =HH5kDž=H@H5kDž=HhH5kDž@ =HH5&kDžhg=HH5qjDžJ=HH5kDž-=HH5'kDž =H0H56kDž <HXH5=ojDž0$<HH5jDžX"<HH5kjDž<HH5kDž<HH5q$jDžЋ b<H H5jDžE<HHH5jDž (<HpH5"kDžH" <HH5/jDžp ;HH5kDž;HH5CkDž ;HH5bkDž ;H8H5VkDž z;H`H5 ykDž8];HH5kDž`@;HH5bkDž#;HH5wkDž;HH5@jDž؍:H(H5+jDž$:HPH5^jDž(:HxH5jDžP:HH5kDžxu:HH5bkDž X:HH5YkDžȎ;:HH5UakDž:H@H5kDž :HhH5XkDž@ 9HH5kDžh9HH5qjDž"9HH5$vjDž9HH5W{kDžp9H0H5jDžS9HXH5kDž069HH5@]kDžX9HH5jDž8HH5iDž8HH5jDžА!8H H5LjDž 8HHH5kDž 8HpH5kDžH$k8HH5=|jDžpN8HH5kDž 18HH5kkDž8HH5^#jDž 7H8H5kjDž7H`H54ykDž87HH5jDž`7HH5*kDž7HH5kDžf7HH5]kDžؒI7H(H5kDž,7HPH5>kDž(7HxH5QjDžP6HH5jDžx6HH5jDž6HH5,jDžȓ 6HH5bkDž~6H@H5HojDž a6HhH5kDž@D6HH5kDžh$'6HH5jDž$ 6HH5HkDž5H H5jDž$5H0 H5kkDž#5HX H5mkDž05H H5kDžXy5H H5SjDž$\5H H5 jDž ?5H H5AjDžЕ"5H !H54,jDž 5HH!H5jDž 4Hp!H5kDžH"4H!H5kDžp4H!H5kDž4H!H5skDžt4H"H5njDž W4H8"H5QkDž :4H`"H5MkDž84H"H5jDž`4H"H5ZkDž3H"H5kDž3H#H5@tkDžؗ3H(#H5kDž$3HP#H5nKkDž(o3Hx#H5AkDžPR3H#H5ܤjDžx 53H#H5ykDž#3H#H5kDžȘ$2H$H5gkDž 2H@$H5kDž"2Hh$H5+bjDž@ 2H$H5.dkDžh$2H$H5xkDž j2H$H5zkDžM2H%H5O[kDž02H0%H5[kDž2HX%H5okDž01H%H5lkDžX$1H%H5.jDž1H%H5kDž1H%H5iiDžК1H &H5kDž e1HH&H5WkDž H1Hp&H5gkDžH+1H&H5%ekDžp1H&H5YkDž 0H&H5KkDž$0H'H5kDž0H8'H5jDž0H`'H5\kDž8"}0H'H5jDž` `0H'H5WkDžC0H'H5rkDž&0H(H5WkDž؜ 0H((H5[kDž/HP(H5YkDž(/Hx(H5kDžP /H(H5WjDžx"/H(H5UkDžx/H(H5kDžȝ[/H)H5^jDž>/H@)H5pjDž$!/Hh)H5kDž@/H)H5VkDžh .H)H5YUjDž.H)H5kDž.H*H5sjDž .H0*H5kDžs.HX*H5łkDž0V.H*H5kDžX$9.H*H5SkDž.H*H56qkDž-H*H5ZkDžП-H +H5LjDž-HH+H5kDž -Hp+H5bEkDžH-H+H51jDžpn-H+H5kDžQ-H+H5;]kDž4-H,H5NkDž -H8,H5[kDž,H`,H5kDž8 ,H,H5?jDž` ,H,H5kDž$,H,H5SjDž,H-H58kDžء i,H(-H5jDžL,HP-H5 jDž(/,Hx-H5kDžP!,H-H5zkDžx+H-H5WtkDž+H-H5VkDžȢ+H.H5͂jDž$+H@.H58jDž +Hh.H5wkDž@d+H.H5^iDžhG+H.H5kDž *+H.H5kDž +H/H5iDž *H0/H5BZkDž*HX/H5\kDž0 *H/H5P`kDžX *H/H5+jDž|*H/H5_kDž_*H/H5kDžФB*H 0H5jDž%*HH0H5'kDž *Hp0H5YkDžH)H0H5]\kDžp )H0H5xZkDž )H0H5ZkDž )H1H5jDž w)H81H5QjDžZ)H`1H5,SkDž8 =)H1H5`kDž` )H1H5^kDž)H1H5}njDž (H2H5kDžئ (H(2H5SjDž(HP2H5jDž( (Hx2H5gjDžP r(H2H5ljDžx$U(H2H5kDž8(H2H5MkDžȧ$(H3H5=jDž'H@3H5PkDž"'Hh3H5SkDž@'H3H5.jDžh 'H3H5mjDž'H3H5,jDž m'HtH5jDžH4I'H04H5jDž,'HX4H56jDž0'H4H5kDžX&H4H54jDž"&H4H5?LkDž&H4H5#jDžЩ&H 5H5mkDž~&HH5H58kDž a&Hp5H5GkDžHD&H5H5~}kDžp '&H5H51)jDž" &H5H5PkDž%H6H5jDž%H86H5PkDž %H`6H5bjDž8%H6H5kDž`$y%H6H5;kDž"\%H6H5kDž$?%H7H5!kDžث"%H(7H5kDž%HP7H5'kDž($Hx7H5JukDžP$H7H5}kDžx$$H7H5kDž $H7H5ˊjDžȬt$H8H56jDž W$H@8H5kDž :$Hh8H5|\jDž@$H8H5gjDžh$$H8H5"\jDž #H8H5ŊjDž$#H9H5HjDž #H09H5{kDž#HX9H5kDž0$o#H9H5^jDžX$R#H9H5iDž$5#H9H5\jDž#H9H5nkDžЮ$"H :H5]PkDž"HH:H5RkDž "Hp:H5GkDžH "H:H5]kDžp"H:H5IFkDžj"H:H5cjDžM"H;H5*jDž0"H8;H5kDž$"H`;H5mkDž8 !H;H5 QjDž`!H;H5RkDž$!H;H5XjDž!H<H59YjDžذ$!H(<H5kDž$e!HP<H5kDž( H!Hx<H5BjDžP$+!H<H5kDžx !H<H5hjDž H<H5kDžȱ H=H5jjDž$ H@=H5YkDž Hh=H5DkDž@ } H=H5`kDžh` H=H5:jDžC H=H5kDž& H>H58H5KkDžHX>H56dkDž0H>H5itkDžXH>H5\bkDžH>H5kDžxH>H5jbkDžг[H ?H5uIkDž>HH?H5`kDž !Hp?H5CjDžH H?H5jDžp H?H5iDžH?H5LFkDžH@H5AkDžH8@H5kDžsH`@H5}jDž8$VH@H5kDž`9H@H5xkDž H@H5&kDž"HAH5 jDžصH(AH5kDžHPAH5WkDž( HxAH5iDžPHAH5EkDžxnHAH5@iDžQHAH5kDžȶ$4HBH5&YkDžH@BH5XjDžHhBH5LTjDž@ HBH5fjDžh HBH5YkDž HBH5kDžHCH5iDžiH0CH5 !jDžLHXCH5iDž0 /HCH5jDžXHCH5jDžHCH5MjDž HCH5jDžи H DH5gkDžHHDH5 ]kDž HpDH5 BkDžHdHDH5kDžpGHDH5kDž*HDH59kDž HEH5WskDžH8EH5`jDž$H`EH5RjDž8HEH5vkDž`HEH53UkDž|HEH5UkDž_HFH5kDžغ BH(FH5$jDž%HPFH5kDž(HxFH5iDžPHFH5]jDžxHFH5xkDžHFH5{kDžȻHGH5CkDžwH@GH5kDž"ZHhGH54jDž@ =HGH5kDžh HGH5z1kDž$HGH5dkDžHHH5kDžH0HH5CiDžHXHH5iDž0HHH5ikDžXrHHH5kDžUHHH5wiDž8HHH5zkDžнH IH52kDžHHIH5kDž HpIH5VkDžH HIH5&kDžp HIH5kDžHIH5jDž"mHJH5kDž$PH8JH5QjDž 3H`JH5kDž8 HJH5jDž` HJH5QjDžHJH5VjDž HKH5IkDžؿ!H(KH5ekDžHPKH5gkDž("hHxKH5kDžP KHKH5=XkDžx .HKH5kDžHKH5ckDž HLH5&kDž H@LH5 skDž HhLH5 jDž0HMH5qgkDžXHMH5hkDžHMH5kDž$HMH5BZkDž{H NH54kDž^HHNH5XkDž AHpNH5ckDžH$HNH56IkDžpHNH5)tjDžHNH5jDž HOH5giDžH8OH5 kDžH`OH5kDž8vHOH5QkDž`#YHOH5iDž#<HOH5kDžHPH5BkDž H(PH5.kDžHPPH5WkDž(HxPH5jDžPHPH5-kDžxHPH5(kDžqHPH5jDžTHQH5rjDž7H@QH5kDž$HhQH5԰kDž@HQH5_kDžhHQH5kDž$HQH5ekDž$HRH5bkDž H0RH5SkDžlHXRH5KkDž0"OHRH5mjDžX2HRH5D0kDž HRH5/EkDžHRH5biDž H SH5]jDž#HHSH5jDž "HpSH53iDžHHSH5vjDžp gHSH5zkDž JHSH5iDž-HTH5'jDžH8TH5zkDž$H`TH5/kDž8HTH50OjDž`HTH5[jDžHTH5>0kDž HUH5QukDžbH(UH5LkDžEHPUH5WkDž( (HxUH5bkDžP HUH5kDžxHUH5PkDžHUH5-kDžHVH5άkDžH@VH5*kDžzHhVH5wkDž@]HVH5*kDžh$@HVH5jkDž#HVH5kDž#HWH5kDž H0WH52kDž HXWH5ViDž0 HWH5kDžX HWH5kDžu HWH5'iDž$X HWH52jDž; H XH5UkDž" HHXH5h}kDž  HpXH5CkDžH$ HXH5NkDžp HXH5ajDž HXH5l}kDž HYH5kDž$p H8YH5+kDžS H`YH5u*kDž86 HYH5iDž` HYH5kDž HYH5fkDž HZH5YjDž H(ZH54jDž HPZH5kDž($ HxZH5*kDžP"k HZH5]jDžxN HZH5)kDž 1 HZH5jDž H[H5(kDž H@[H5a%kDž Hh[H5iDž@ H[H5wiDžh H[H5OkDž H[H5tkDžf H\H5jDž I H0\H5skDž, HX\H5vjDž0$ H\H5yjDžX H\H5,kDž H\H5iDž H\H5kDž H ]H5ukDž#~ HH]H5 QkDž a Hp]H5ckDžH D H]H5PkDžp' H]H5QCkDž H]H5jDžH^H5'kDž!H8^H5kDžH`^H55_kDž8H^H5KjDž`yH^H5ujDž\H^H5kDž?H_H5iDž"H(_H5kDžHP_H5OnkDž(Hx_H5zkDžPH_H5kDžxH_H5%kDžH_H5\kDžtH`H5\kDžWH@`H59kDž:Hh`H5djDž@H`H5kDžhH`H5b?kDžH`H5M"kDžHaH5kDžH0aH5%jDž HXaH5^kDž0oHaH59?kDžXRHaH5HHgH5PkDž !HpgH5{jDžHHgH5f kDžpHgH5ikDž HgH5L2kDžHhH57iDžH8hH5:kDžsH`hH5=kDž8VHhH5PhkDž` 9HhH5#kDžHhH5.kDžHiH5!RkDžH(iH5liDžHPiH5jDž(HxiH5jiDžP HiH5+kDžxnHiH5iDžQHiH5kiDž4HjH5fkDžH@jH5 jDž"HhjH5LkDž@HjH5giDžh HjH5zkDžHjH55iDžHkH5iDžiH0kH5ciDžLHXkH5iDž0/HkH5kDžXHkH5iDžHkH5iDžHkH5:jDžH lH5UkDž$HHlH5iDž HplH5iDžHdHlH5&kDžp$GHlH5YIkDž *HlH5iDž$ HmH5-kDž H8mH5kDžH`mH5ŗkDž8HmH5kDž`#HmH5kIkDž"|HmH5fkDž$_HnH5_jDžBH(nH5iDž%HPnH5?jDž(HxnH5)kDžPHnH5mVjDžx#HnH5jDž HnH5cjDžHoH5^kDž wH@oH5AiDžZHhoH5dkDž@=HoH5gkDžh HoH5bjDžHoH5NkDžHpH5آkDžH0pH53jDžHXpH5֝kDž0HpH56kDžXrHpH5kDžUHpH5kDž 8HpH5kDž H qH5M:kDžHHqH5QjDž HpqH5PjDžH HqH5>kDžp HqH59iDž HqH57jDž mHrH5_QjDž$PH8rH5 jDž 3H`rH5UkDž8HrH5kDž`HrH5S5jDžHrH5jDžHsH5kDž H(sH5yjDžHPsH5wjDž( hHxsH55jDžP KHsH55kDžx!.HsH5OkDžHsH5#kDžHtH5.kDžH@tH5YkDžHhtH5NkDž@HtH5okDžhHtH5iDž$cHtH5GkDžFHuH58jDž)H0uH5iDž! HXuH5%jDž0!HuH5QkDžXHuH5DkDžHuH5_iDžHuH5:4jDž{H vH5KjDž$^HHvH5iDž AHpvH53kDžH$HvH59jDžpHvH5Y9jDž HvH5fkDž HwH5g7kDž$H8wH5LjDž$H`wH5?jDž8 vHwH5GjDž` YHwH5kDž <HwH5kDž HxH5q jDžH(xH5|kDžHPxH5FjDž(HxxH5>jDžP HxH5eCjDžxHxH5`kDž qHxH5EkDžTHyH5EkDž7H@yH5AIkDžHhyH5LOjDž@$HyH5kDžhHyH5ZSjDžHyH5޷kDžHzH5HkDž$H0zH57kDžlHXzH5XkDž0OHzH5qkDžX$2HzH5LkDžHzH5QjDž$HzH5"iDžH {H5iDžHH{H5BjDž Hp{H5S]kDžH H{H5AjDžpgH{H5aiDž JH{H5iDž$-H|H5fkDžH8|H5.kDž$H`|H5-kDž8H|H5XiDž`H|H5K6jDžH|H5UkDž H}H5kDžbH(}H5kDžEHP}H5iDž($(Hx}H5kDžP H}H5kDžx$H}H5iDž$H}H53jDž$H~H5.iDž H@~H5aiDžzHh~H5kDž@]H~H5kDžh @H~H5kDž#H~H5 kDžHH5`-kDž$H0H5SMjDžHXH5kDž0 HH5iDžXHH5kDžuHH5iDžXHH5kDž;H H5kDž$HHH5ajDž $HpH5kjDžH HH5FkDžpHH5)6kDžHH5#kDžHH5wKkDžpH8H5ʔkDžSH`H5}kDž86HH5kDž` HH5iDž H؁H5vkDžHH5kDž H(H5QjDžHPH5okDž( HxH5zkDžPkHH5}kDžx NHȂH5kDž1HH5kDžHH5kDžH@H5iDžHhH5|kDž@HH5YkDžh HH5iDž$HH5EkDžfHH5kDž IH0H5+iDž,HXH5kDž0HH5!kDžXHH5,kDžHЄH5giDž HH5kDžH H5kDž~HHH5PjDž aHpH5kDžH DHH5kDžp'HH5=jDž HH5kDžHH5jDžH8H5,jDžH`H5EkDž8 HH5XkDž`$yHH5kiDž\H؆H5&kDž?HH51kDž"H(H54kDžHPH5wkDž(HxH5kDžPHH5kDžxHȇH5jDž$HH5#iDž tHH5p]kDž WH@H5~kDž:HhH5kDž@HH5?kDžhHH5ZiDž$HH5jDžHH5akDžH0H5#kDž$HXH5jDž0oHH5jDžXRHH5| kDž 5HЉH5W-kDžHH5kDžH H5ŪkDžHHH5ВkDž HpH5kDžHHH5iDžpHH5"jEmH޺yH=E Lf{WMVI9tMI>MNL9uMVI9uL=#H6H5ELVH5.iHH{(H56kDžuH{PH5yjDž(u H{xH56kDžPu HH5kDžxuHH5kDžufHH5kDžu"IHH5 yjDžu",H@H5{kDžv HhH5{kDž@v"HH5iDžhv"HH5wEkDžv HH5iDžvHH5KjDžv~H0H5kDžw aHXH53iDž0wDHH5VkDžXw'HH5 kDžw HH5$HkDžwHH5kDžwH H5iDžw"HHH5jDž xHpH5.jDžHx"yHH5kDžpx \HH5kDžx$?HH5ikDžx"HH5kDžxH8H5߇kDžy"H`H5 JkDž8y HH56kDž`yHH57kDžyHH5kiDžy"tHH56iDžyWH(H5kDžz:HPH5iDž(zHxH5kDžPzHH5҈kDžxzHH5mjDžz#HH5kDžzHH5NkDžz"H@H5iDž{"oHhH5kDž@{RHH5DmjDžh{$5HH5?FkDž{ HH5+kDž{HH5ŰiDž{H0H5kDž| HXH5 FkDž0|HH5v1kDžX|HH5tkDž| jHH5RjDž|#MHH5kDž|"0H H5rjDž|H޺5H=Dž } L @#QIvL9tII>INH9uIvL9uLHX0H5LPH[A\A]A^A_]f.&QDhAHLHHtH=IL;tHH5;IHaIDbIgbf;f.UHHHzHAWAVAUATSH(HEEHUHHHH?HH)MH;ZHvKH=HH9AL$LO1HLJHH5 H L=LmL}McuH 1MLMHM HMt9ME9rt]I:Hu&E9tFH?HtHcG1IHH9tHOHHLHD`H}AEIHuI9dH=H.H5?MH=TH=7QH(H-[H5A\A]A^A_]MH+H5$GH`fUHHHzHAWAVAUATSHH%HDžHHHH H ?HHKH;ΨHvKH HH9$L$LM1HLHHH5}H~LL=hLMI LMcuH M1MLMHMHMt9ME;st`I3Hu&A9tIH6HtHcF1HHH9t(MHHLHD`AH=ǧ"IL;aH=jH+H5III H KH1 %GLH HHddI HIH II @ILI22LHHLLH H0L8I LLLXIHhHxLHHHHLHH HHDžDžDžDž,Dž`DžtDžDžDžDžHXHHHHLL$H@HPLlHHHHLHHLHHH(L0LDHPL0Dž8DžLLxDžDžDžDžDžDž$DžXH H`HpLxLHHLLHHLLL(H8HHLPLdLpHHLDžlLDžDžLDžH DžDž0DžDDžxH DžLL(I LHHLLLHH Lffo=>fD)`fo->f)fo@fDo >fD)`fDo%>fD)D)D) )0)p)@))PD)D)p)D)D)D)D))foPfDo0fo@foD)PfDo5 >ffoD)fDo>f)foPfo) fDo%>ffo0D)fDo-=fD))0D)@D)`D))p))))D)D))D)D)fDo =fD)fDo==fD)D)D))XLH^H5WJRfoZ=f1fDo`fDofoLHfDo5O=ffoW=f)H=Ifo%a=f)fofo =f)PfDo*=ffo=B=ffo5Z=fD)fDo%9=fD) )0D)@D))`) D)pD)))0))D)D))fDofofofoD)fonkHH8nkH!H"HH5H#H=H$LHL LHLHH*LH f.fUH=H萚H=Hs]H5酓DUH=xHSHH[H=H]sH5VQHHNH=H4"H?!H"sH5HH5̀kH="HH5HrHuHIH= HHIH!H H5H"H5H#LH5H$LH5HH=H5HL H5HH[]f.UH=(HSH(H=DHqH5HzHOH=H4@#H9>!HqH5H裑H5\kH=u#HH5fHqzH}HHH5H5H5HH^!H=gHd"H=mHj#H=sHp$H5qH=rHoH5pH=qHnH oH=pHmH5nH=oH([]UH= H耗H=ٓHpH5vHkH5(k]L`kHHHHHpHqHvH wH5xHu H=vLwfDUH=HЖH=)HoH5ƏH5kHL NHkIqOHHH5jL+kK4H=hH= H2HHHH H# L,7$H=;!Ho]H5 f.fUH=8HSH^jE1AjH kHHH5qelHHK^XZjjH kE1HH5GelHA#^Y^jjH nkE1HH57elHA^_AXjjH kE1HH5 elHA^AYAZjjH kE1HH5dlHA^A[XjjH kE1HH5dlHA^XZjjH kE1HH5dlHAW^Y^jjH BkE1HH5WdlHA/^_AXjjH ikE1HH5-dlHA^AYAZjjH kE1HH5dlHA^A[XjjH kE1HHAH5cl^XZjjH kE1HH5clHA^Y^jjH NkE1HH5clHAc^_AXjjH ukE1HH5\clHA:^AYAZjjH kHE1H5OclHA^A[XjjH kE1HH5%clHA^XZjjH kHE1H5blHA^Y^jjH JkHE1H5blHA^_AXjjH ykHE1H5blHAn^AYAZjjH kHE1H5wblHAD^A[XjjH kHE1H5MblHA^XZjjH kHE1H5$blHA^Y^jjH >kHE1H5alHA^_AXjjH mkHE1H5alHA^AYAZjjH kHE1H5alHAx^A[XjjH kHE1H5|alHAO^XZjjH kHE1H5SalHA'^Y^jjH *kHE1H5*alHA^_AXjjH YkHE1H5alHA^AYAZjjH kHE1H5`lAH^H=5A[[-^H]H=2$鬗eff.UH=(HSHːH=$HiH5H5kH=n$H'6!HiH5H葉H5kH=>$HwiHH5mhH5lH=:$HNiHH5$?H5%lH=$H%iHH5H5+lH=ë$HhHH5H52lH=_蚫$HhHH5IĈH5BlH=q$HhHH5蛈H5SlH=H$HHHzh[H5]lf.fUH=HSH;^jE1AjH `lHHH5^lHHp^XZjjH FalE1HH5^lHA^Y^jjH alE1HH5^lHA[^_AXjjH alE1HH5m^lHA2^AYAZjjH blE1HH5B^lHA^A[XjjH JblE1HH5^lHA^XZjjH blE1HH5]lHA^Y^jjH blE1HH5]lHA^_AXjjH blE1HH5]lHAf^AYAZjjH 'clE1HH5b]lHA<^A[XjjH ^clE1HHAH5ml^XZjjH clE1HH5(]lHA^Y^jjH dlE1HH5\lHA^_AXjjH MdlE1HH5\lHA^AYAZjjH dlHE1H5\lHAp^A[XjjH dlE1HH5\lHAG^XZjjH elHE1H5U\lHA^Y^jjH JelHE1H5,\lHA^_AXjjH elHE1H5\lHA^AYAZjjH elHE1H5[lHA^A[XjjH flHE1H5[lHA{^XZjjH FflHE1H5[lHAS^Y^jjH flHE1H5[[lHA+^_AXjjH flHE1H51[lHA^AYAZjjH glHE1H5[lHA^A[XjjH BglHE1H5ZlHA^XZjjH glHE1H5ZlHA^Y^jjH glHE1H5ZlHA_^_AXjjH hlHE1H5`ZlHA6^AYAZjjH ?hlHE1H5/ZlAH ^H=A[[^H]H=H% eff.UH=H0H=H2cH5&HOjl]HHiHjHkf.UH=XHSH^jE1AjH jlHHH5aYlHH0;^XZjjH klE1HH57YlHA^Y^jjH ~klE1HH5'YlHA^_AXjjH klE1HH5XlHA^AYAZjjH klE1HH5XlHA^A[XjjH "llE1HH5XlHAo^XZjjH ZllE1HH5pXlHAG^Y^jjH llE1HH5GXlHA^_AXjjH llE1HH5XlHA^AYAZjjH llE1HH5WlHA^A[XjjH 6mlE1HHAH5^AYAZjjH WmHE1H5GIlHA^A[XjjH mHE1H5IlHA^XZjjH mHE1H5HlHA^Y^jjH mHE1H5HlHA^_AXjjH 5mHE1H5HlHAr^AYAZjjH kmHE1H5vHlHAH^A[XjjH mHE1H5LHlHA^XZjjH mHE1H5#HlHA^Y^jjH mHE1H5GlHA^_AXjjH ImHE1H5GlHA^AYAZjjH mHE1H5GlAH|^H=A[[^H]H=o&|~eff.UH=xHSHwH=sHPH5VpH5mH=#H!HpPH5 HapH5mH=HGPHH58pH5mH=HPHH5tpH5mH=AHOHH5+oH5%mH=sHOHH5oH5,mH=JHOHH5oH55mH=f!HzOHH5PkoH5d;mH=HHHJO[H5]lHA^AYAZjjH TmE1HH5>lHA^A[XjjH VTmE1HHAH5]ms^XZjjH TmE1HH5>lHAK^Y^jjH UmE1HH5[>lHA#^_AXjjH MUmE1HH5>lHA^AYAZjjH UmHE1H5>lHA^A[XjjH UmE1HH5=lHA^XZjjH VmHE1H5=lHA^Y^jjH bVmHE1H5=lHAW^_AXjjH VmHE1H5b=lHA.^AYAZjjH VmHE1H57=lHA^A[XjjH WmHE1H5 =lHA^XZjjH ^WmHE1H5H5iH^H5zmH=3'H>HH5^H5mH=ř'H>HH5^H5xmH=蜙'Hu>HH5f^H5wmH=Xs'HL>HH5B=^H5mH=J'H#>HH5^H5mH=!'H=HH5]H5mH=}'H=HH5g]H5;mH=4Ϙ'H=HH5]H2mHHHHH[]UH=XH@^HH&a^H=A(]je@UH=HHSH dH=d`H =H5&]H5mH=A(Hg !H<H5H\H5nH=~A(H<HH5\H50nH=ZUA(H<HH5D\H59nH=,A(He<HH5V\H5_LnH=A(H<<HH5-\H56ynH=@(H<HH5i\H55nH=6@(H;HH5 [H5DnH=@(H;HH5[H5 oH=_@(H;HH5[H5oH=[6@(Ho;HH5E`[H5q:oH= @(HF;HH57[H5HPoH=?(H;HH5[H5OSoH=?(H:HH5jZH5oH=7?(H:HH5!ZH5oH=i?(H:HH5ZH5\oH=@?(HHv:H5jZHbH@PH=RH4 ?(HB:HH583ZH=H5Do>(H1H:[H=>(]ZDUH=H^HHf^H=@(]ge@UH=HAUATSH`H=]H9H5bYH5~mH=/Z@(H!H|9H5HmYH5nmH=*@(HS9HH5DYH5}-nH=@(H*9HH5YH5$6nH=M?(H9HH57XH5HnH=?(H8HH5XH5unH=?(H8HH5XH5ѩnH=r]?(H8HH5\wXH5nH=)4?(H]8HH5NXH5oH= ?(H48HH5%XH5VoH=>(H 8HH5WH5 7oH=N>(H7HH58WH5LoH=>(H7HH5WH5OoH=g>(H7HH5WH5JoH=s>>(Hg7HH5]XWH5oH=*>(H>7HH5/WH5oH==(HH7H5WH^HqPH=H4=(HH5{H6VHH5oH=(H5oH{ y=(HH61[H==(A\A]]VIIf.UH=HP^HHvq^H=F(]ce@UH=HSH]H=tYH6H5vVH5mH=CL(Hw!H5H5)HUH5mH=K(H5HH5UH5)nH=K(H5HH5UH52nH=aK(Hu5HH5KfUH5oEnH=cK(HL5HH5=UH5FrnH=:K(H#5HH5UH5EnH=K(H4HH5pTH5TnH==J(H4HH5'TH5oH=J(H4HH5TH5oH=J(H4HH5pTH53oH=bmJ(HV4HH5LGTH5XIoH=DJ(H-4HH5TH5_LoH=J(H4HH5SH5oH=I(H3HH5qSH5oH=>I(H3HH5(SH5loH=I(HH3H5zSH[HPH=H4iI(HR3HH5CSH=<H5Lo@I(H)31H=G(SH=H5oI(H1H2[H=F(]Rf.UH=9HYH=VH2]H5RDUH=H萲^HHV豲^H=J)]4`e@UH=xHAUATSHWYH=UHY2H5RMRH5.mH=R)H H,2H5HRH5mH=R)H2HH5QH5-&nH=R)H1HH5pQH5.nH==XR)H1HH5'QH5AnH=/R)H1HH5yQH5nnH=R)H_1HH5PQH5nH=bQ)H61HH5L'QH5nH=Q)H 1HH5PH5WnH=Q)H0HH5PH5oH=bQ)H0HH5qPH5/oH=>9Q)H0HH5(PH5EoH=Q)Hi0HH5ZPH5HoH=P)H@0HH51PH5oH=cP)H0HH5MPH5QoH=P)H/HH5OH5oH=lP)HH/H5OHOWH0QH=~H45P)HH5kH/OHH5oH P)H5oH{ O)HHN/1[H=$G)A\A]]:OIIf.UH=HVH=YRH/]H5NDUH=HHЮ^HH^H=*]t\e@UH=8HSHUH=QH.H5NH5rmH=*H Hp.H5HaNH5bmH=*HG.HH5}8NH5q"nH=J*H.HH54NH5+nH=|*H-HH5MH5=nH=S*H-HH5MH5jnH=o**H-HH5YMH5ŞnH=&*Hz-HH5kMH5nH=*HQ-HH5BMH5nH=*H(-HH5~MH5J oH=K*H,HH55LH5,oH=]*H,HH5LH5AoH=4*H,HH5LH5DoH=p *H,HH5ZuLH5>oH='*H[,HH5LLH5oH=*H2,HH5#LH5oH=*HH,H5KHSHQH=BH4Y*H+HH5(KH=H55o0*H1H+[H={*]KDUH=Hp^HHV葫^H=n*]Ye@UH=xHAUATSH7RH=NH9+H5R-KH5mH=q*H H +H5HJH5mH=zq*H*HH5JH5 nH=Qq*H*HH5pJH5'nH==(q*H*HH5'JH5:nH=p*Hh*HH5YJH5bgnH=p*H?*HH50JH5anH=bp*H*HH5LJH5pnH=p*H)HH5IH57nH=[p*H)HH5IH5oH=2p*H)HH5qIH5(oH=> p*Hr)HH5(cIH5t>oH=o*HI)HH5:IH5{AoH=o*H )HH5IH5oH=co*H(HH5MHH51oH=eo*H(HH5HH5oH=%HH5/EH5oH=*HH%H5EHLHPPRH=H4*HH5{H$DHH5hoH蹿*H5koH{ 詿*HH$1[H=4*A\A]]DIRIlf.UH=HSHK^jAE1jH oHHHH5oHP軤^XZjjH &oHE1H5lHA蓤^Y^jjH ^oHE1H5lHAk^_AXjjH oHE1H5|lHAB^AYAZjjH oHE1H5QlHA^A[XjjH oHE1H5,lHA^XZjjH BoHE1H5lHAǣ^Y^jjH zoHE1H5lHA蟣^_AXjjH oHE1H5lHAv^AYAZjjH oHE1H5lAHL^H=A[[͢^H]H=+LPeff.UH=HAUATSHgIH=EHi"H5]BH5>mH=*+H H<"H5uH-BH5.mH=?+H"HH5)BH5=nH=+H!HH5AH5nH=+H!HH5AH51nH=d+H!HH5NAH5^nH=V+Ho!HH5`AH5nH=-+HF!HH57AH5nH=+H!HH5sAH5gnH=@+H HH5*@H5oH=+H HH5@H5oH=+H HH5@H55oH=e`+Hy HH5Oj@H58oH=7+HP HH5A@H5 woH=+H' HH5@H5aoH=+HHH5t?H5oH=A+HHH5+?H_GH(RH=H4+HH5H?HhH5oHY+H5"oH{ I+HH^1[H=T+A\A]]J?IIf.UH=HAUATSHFH=`BH H5>H5ޱmH=ʂ+Hc HH5H>H5mH=_蚂+HHH5I>H5nH=q+HHH5{>H5nH=H+HaHH5R>H5[.nH=+H8HH5n)>H52[nH=;+HHH5%>H51nH=́+HHH5=H5@nH=褁+HHH5=H5nH=`{+HHH5J=H5nH=R+HkHH5\=H5moH=)+HBHH53=H5D2oH=+HHH5o =H5K5oH=<׀+HHH5&fo oL)MLHH0H[A\]f.DH oH'H' Hq8HypH ^HH5`HƘH=bHǘH dHH5fHƨH=hHǠH jHH5lHƘH=nHǠH pHH5rHƠH=tHǠH vHH5xHƨH=zHǨH |HHvHHHHHHHHHǻHлHٻHHHHHH5HƘH= HǐH HH5 HƘH=HǘH HH5HƘH=HǠH HH5HƨH=HǨH HH5HƨH=!HǠH #HH5%HƘH/H8HAHJHSH\HeHnHwHHHHHHHH=HǠH HH ۻHLH5LApHƠL I8L I8L I8H=HǠL I8H5MQpHƨH=HH"H+H4H=HFHOHXH YHZH5[H\L]H^HgHpHyHL HH=HLf.@H pH'H' Hq8HypH nHH5pHƠH=rHǠH tHH5vHƠH=xHǠH zHH5|HƠH=~HǠH HH5HƠH=HǠH HH5HƘH=HǘH HHHHHHHHHźHκH׺HHHHHH HH5HƨH=HǠH HH5HƘH=HǠH !HH5#HƠH=%HǠH 'HH5)HƠH=+HǘH -HH5/HƘH=1HǠH 3HH55HƨH?HHHQHZHcHlHuH~HHHHHHHHƺH=ǺHǠH ɺHH HH HH5HƘH=HǠH HLIhH5LA8HƨH=HǠMQ8H5HƠH=HǨH)H2H;HDHMHVH_HhHqHzHH5HH=HH HLHL HLDH9pH' HJ0Hr`HHHH HH5HH=HHHH HH5HH=HHHH HH5HH=HHHH HH5HH=HHHHHHHƹHϹHعHHHHHHHH H)H*HH ,HH5.HH=0HH2HH 4HH56HH=8HH:HH <HH5>HH=@HHBHH DHH5FHH=HHHRH[HdHmHvHHHHHHHHHǹHйHٹHڹHH ܹHH5޹HH=HHHH HH5HH=HHHH LHH5HH=HH3H<HEHNHWH`HiHrH{HHHHHH HH5HH=HLfDH i pH'H' Hq8HyhH HH5HƠH=HǨH HH5HƠH=HǠH HH5HƠH=HǘH HH5HƠH=HǨH HH5HƠH=HǠH HHHHHHʸHӸHܸHHHHH HHH$H-H6H57HƨH=9HǠH ;HH5=HƠH=?HǨH AHH5CHƠH=EHǠH GHH5IHƠH=KHǠH MHH5OHƨH=QHǨH SHH5UHƨH_HhHqHzHHHHHHHH¸H˸HԸHݸHH=HǠH HH5HƠH HH=߸HǠH5HƠH HH=HǠH5HƠH HH=LApHǨLH5HƨH<HEHNHWH`HiHrH{HHHHH=HH HH5HLHL f.DH pH'H' Hq8HypH HH5HƠH=HǠH HH5HƠH=HǘH HH5HƠH=HǨH HH5HƨH=HǨH HH5HƠH=HǠH HHHHHHʷHӷHܷHHHHH HHH$H-H6H57HƠH=9HǠH ;HH5=HƠH=?HǠH AHH5CHƨH=EHǠH GHH5IHƘH=KHǘH MHH5OHƠH=QHǨH SHH5UHƠH_HhHqHzHHHHHHHH·H˷HԷHݷHH=HǠH HH5HƨH HH=߷HǨH5HƨH HH=HǠH5HƠH HH=LAhHǠLH5HƠH<HEHNHWH`HiHrH{HHHHH=HH HH5HLHL f.DHpH' HJ0Hr`HHHH HH5HH=HHHH HH5HH=HHHH HH5HH=HHHH HH5HH=HHHHHĶHͶHֶH߶HHHHH HHH'H0H9H:HH <HH5>HH=@HHBHH DHH5FHH=HHHJHH LHH5NHH=PHHRHH THH5VHH=XHHbHkHtH}HHHHHHHHŶHζH׶HHHHH LB`HHҶH۶H5ܶHݶH=޶H߶HHH HLf.UH58pH'H' HpHAWIAVI`@AUI`ATISHH"H5H8H5H0H5H8H~8H5HpH=HhH5H`H=HhH5HhH=H`H5 HhH iH H H H H H/H0HAHzHHHH=HhHH5H`H=HhH5HpH=öHpH5ȶHhH=ͶHhH5ҶHpH=׶HhH5ܶH`H^0H=ݶHǘH5߶HƠHHàH=HǘH5HƘHHàH=HǠH H H H .H 7H pH yH H HHHHH(HQHZH5{HƠHuHvHØH=xHǠH5zHƘH|HàH=~HǠH5HƠHHàH=HǘLChHH3H\H5m1Hl!H=xHH ҵH H H H &H7H `H .H 7L8HdLDIH I IH`HLHIH L$LLL(I LLLILhLHHH LPHpH`LDž0DžDžDž Dž Dž0DžDžDžDž DžtDžDž Dž@Dž\DžlDžfo@!pfo H!pL8HXHLHH`H L@I LHH L) L|LI`LLLDžDDžTDžDžDž, Dž< DžDž DžDžDžDžDž DžpDžfo pfo pfo%( pLI LLLdLLIL4LLHLH8HHHLLxDžDžDžXDžDžDž@DžDžDž(Dž@@DžDžDžDžfo-pfo5pLfo=pLfDopfDo pL`xLHHLH)`LDL0LHH L8I`DžDžlDžDžDžTDžDž<DHDžDž@Dž$ Dž4HfDo/pHfDo,pLIfDo%(pLL LI HH L\LLDH`LDž DžDž Dž Džx Dž Dž@DžDžDžDžhDtDžDDžPDžhDžD)Dž0 Dž8 fDo-pfDo5!pLfDo=!pLxILLLpLLXLHDžPDžDžDžDž L0Dž8DžD)DžDDž|Dž HDžDDždDžt!DžDžLDžfo!pfo )pfo1pL`IL@LHL(LLLLLILDžLDžX@DžDž Dž4DžD"LHDžDžDž,$H0DžDž)Dž Džfo.pfo%6pLTLLLL$LLI LHHVLHxDž`LpDžxDžDžLXDž`DžDž HDž0<DžDžDžL(Dž0DžDž Džfo-#pfo5+pfo=3pLhfDo3pLLPL8L]I@ DžtDž!LDžDž\hDž LDžDžDD)PEL]HHHHH}{?HxHu0H;AHvKH%HH9EL$L HL1ILHLL=ۧIOML$pHL@HM1L)HHH|Ht?HtIc$Ay7Mt$LHIIcAy7HIILLHH1HIIcAy7HIILLHH1L9HIغy7Mc.IHIc~IcNLIHLH1IHIHIIIL1IIIIMIIL1HIHILHIcVHH1L9sL-H1MIIH`H5CHhH=HHhH5MH`HHHHHHHHɍHҍHۍHHHH=HhH5HhH=HhH5HpH= HpH5HhH=HhH5HpH^0H=HǘH5HƐHHØH=!HǘH5#HƠH%HØH='HǠHAHJHSH\HeHnHwHHHHHHHHH5HƠHHHèHH=HǨH5HƨHHàH=HǘH5HƘHHàH=HǨH5čHƠHƍHàH=ȍHǘHKhH^HgHH51H!H=HHH `H HH׌HHHHH$H=HVH_:fob pfo j pIfoh pI IIHLHHL$H HLDI L)L L(ILLI LhLLLILPhLDž0DžDžDž0DžDž@Džt DžDž DžDž\DžHfo pH fo% pfo- pL8IHXHLH@LLH(H L|LHHH DžDžD DžTDžDž$ Dž, Dž< DžDžDž$ DžDžDž Džh Džp Dž@fo5pfo=pLhIqfDopLI`fDo pLLLL4LLLILL8ILDLDDž Dž DžDžXDžp DžDž@DžDžDž(Dž@ DžDžLxfDopfDopLLLI L`LHH$LHHhH`@LL0HPH% LHHLDžDžDžDž DžlDxDžDžDžTDždDžDDž<DžL DžDž$fDo%pfDo-pfopLfDo5pLfDo=pH H LtLL\LxI$LLI*`LDLD)0DžDDž DžDžDDžD)DžhDžDžDžDžP\DžDžfo pfopfopLI LI"`L,LHLL0I LLpLLL Dž8DDžDžDž Dž8Dž)DžDžDž Dž|DžDž@Dž\DždDžt#Lxfo%pfo-pfo5pLL@H`L(LHLLLHDžDžLDž\DžDžLDžDž4DžDDžHDž Dž(DžDžDžDžxHfo=pfDopHH`HH( LLL|HèH=@|HǠH5B|HƠHD|HàH=F|HǨH5H|HƨHJ|HèH=L|HǠH5N|HƠHP|HàH=R|HǨH5T|HƨHV|HèH{H{H{H{H{H{H{H{H{H{H{H{H{H{H={HǠH{H5{HƘH{H{HÐH|HàHH={HǘH5{HƠLLApH={HǠH5{HƘH{H{H{H{HH{H={H`H{H5{1H{L {I0H{d1H {H{HL{L {H@H{H${H={Hf{Ho{Hx{sfopfo pI IIHH L`HH I@LH I LIL(LHI LLIL(LHHLLLlLDž Dž@Dž4DžDDžDžDžDžDžDžDžDžxDžDžHfo pHfo pfo%pLTfo-pHpHLHHL<TLL$H@HL)L $LLIDž`Džx DžDž DžHDž Dž0DžHDžDž DžDžLfo5pfo=pHH`fDo pLh)LLI LPhLDL8LXI LLL LoHH#@LpLI LHxLHH-L@LI L(LHHLDž Dž|DžDžDžd Džt)DžDž DžLXDžDž4 )@DžDžDžfo-ofo5ofo=oHH LLLlHH LLTLI@LHH5tfL=ufL@L=_fMOMT$pL8LXHXM1L)HHH|Ht>HtIc$y7MD$HIHMc0Ay7IHIIMML1HHMcAy7HHIHLLH1L9X@HHAy7IcHHIcxMcHHILHH1IIIIMMIL1HIHILLLH1HHHHHLMchLH1L9XrL-eH1MIM4H IHHM"M6HXML)L9t;IHuDH HL1LII9L9uL@ItHXtId1M9$H=-,,Hĸ1HH5Hd[A\A]A^A_]ټfHHPLH(I'M6Mt@M1LIH9(u(M9uHPIvHXuIE@MILÿUE\$pAo$HAod$Aol$ H=cIAot$0Ao|$@DXxEoD$PEoL$`XHscH5\c`h(L5mcp8xHD@XDHhHP?HHH9PHHHH苼HH1HI藷H bHbHtp1@IHMHI LMtQHH1LHPM MMuH=bH8H9H wbIH9tI LMufI?H;0tLPH1M7IL.bL LHIHHLLMt&IIMH3L.Hb]@M7LaL-aM]MtI1H5aM,M/LHH8K|5HaH5aHaL5a2-ITTf.UH=HSH^jE1AjH oHHjH58>,HjHdg^H E1HjH oH5A,AjHjj9^H E1HjH NoH5E,AjHjj ^H E1HjH oH5H,AjHjj^H E1HjH oH5L,AjHjj^H E1HjH oH5uO,AjHjj^H E1HjH FoH5R,AjHjjS^H E1HjH oH5YV,AjHjj%^H E1HjH oH5Y,AjHjj^H HE1jH oH5=],AjHjj^H=BcH ^H]H=4,dUH= cH谾H= H]H5c饷DUH=HSH{^jE1AjH oHHjH5(e,HjHb'^H HE1jH oH5g,AjHjj^H HE1jH &oH5Oj,AjHjj^H HE1jH HoH5l,AjHjj^H=&bH ^H]H=_,\df.fUH=HSH{^jE1AjH 'oHHjH5r,HjHa'^H HE1jH DoH5}u,AjHjj^H=aH 9^H]H=n,dUH=HSH^jE1AjH 'oHHjH5(|,HjH,a^H HE1jH HL1QILGbHHbLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5CaH1L/aIMIL<MM+I-MmMI1HII9H9uIupLL@~L@uH=,HH5`I' oH=h`SH=HUH5N`IH=",pL-]L"pH=]H0MX0MP`H=]H0IH=]H0H=]H0H=]H0H=]H0H=$]H0H=)]H0H=.]H0H=3]H0H=8]H0HO0H=9]H`Hq`H :]HH=<]HǐH5>]HƐH^`L-T\L-]\L-f\L-o\L-x\L-\L-\L-\L-\L-\L-\L-\L-\L-\L-\H \HL-\H=\HH5\HH \HH\HH=\HH5\HH \HH\HH=\HH5\HH \HH\HH=\HL- \L-)\L-2\L-;\L-D\L-M\L-V\L-_\L-h\L-q\L-z\L-\L-\H5\HL-\H \HL-\H\HL-}\H=~\HH5\HH \HH\HH=\HH5\HH \HH\HH=\HH5\HH \HH\HH=\HL-[L-[L-[L-[L-[L-[L-\L-\L-\L-!\L-*\L-3\L-<\H5=\HL-7\L-@\HA\L-B\H #\H=<\L-=\LVILVILVIHVHLVILVILVIHVHHLVILVILVIHVHL-ZUL-cUL-lUL-uUL-~UL-UL-UL-UL-UL-UL-UL-UL-ULUIL-ULUIL-ULUIL-UH5ZHUHHUHLUILUIHUHLUIHUHLUILUIHUHLUIHUHLUILUIHUHL-TL-TL-TL-UL-UL-UL-!UL-*UL-3UL-I$MMt1M M $M8M'HVL5VLVL%VM$MtI1H5iVM$L%VVL5_VO4VL-GVL-PVL-iVL-VH VHL-}VLULUL(VLAVHbVHÐH=dVHǐH fVHHhVHÐH=jVHhH oVHhHtVH@H=yVHhH ~VHhHVHÐH=VHǐH VHHVHhH=VHhL-UL-UL-UL-UL-UL-UL-VL-VL-#VL-,VL-5VH FVHhL-CVHqhH@VHÐL-:VH=;VHǐLULULUL- VLOILOIHOHH UHpHUHpHOHLOILOIHOHL-UL-UL-UHUL-NL-OL- OL-OL-OL-$OL--OL-6OH7OHL-1OL2OIL-,OL-OIL-'OL0UH=1UL2UH53UH NL-GNL-PNL-iNL-NL-NL-NLMLML/NLHNHyNH˜HNHLp@LjNL`8IØLhNMN0I˜HvNHL-0NL-9NL-RNL-[NL-dNL-mNL%NL-NL5NL-NL NL+NL4NH=NL>NH?NL@NL aNHĘ[A\A]A^A_]Vufo]IfoPfo`HH=Qfopfoepxfomfou@HQH5QHP(L5QX8`HhXphIՄ-HHH9L<L蠘L1HI谓H QHQHtq1H=Q fDM L IH HLMtIHH1LIMMMuL=PL9H PI;H9tI LMuDH=PH;Ht蓗H1L-oPIL5]PL<O>I$MMt1M M $M8M'HDPtL5PLPL%PM$MtI1H5OM$L%OL5OO4L@uH=|,HEsH5NI'H-]p(H=N H=eH5NHsH ]pL[pH'H MHIpH MHH MHH MHH MHH MHH MHH MHH MHH MHLYLI H MHLcLI MXHML-ML-.ML-GML-PML-YML-bML-ML-ML-KH5KH H=LH=LH=LH=6MH=?MH `MH=KH=KL-KLKI8H5KH8LKIHLKI8H5KMP HHLKI(L-KL-KL-KL-KL-KL-KH=lKH=KH5KH=KLKLKLKHĘ[A\A]A^A_]ÿufo]IfoPfo`HH=Lfopfoepxfomfou@HkLH5TLHP(L5eLX8`HhXph訔IՄ-HHH9L<LPL1HI`H KHKHtq1H=K fDM L IH HLMtIHH1LIMMMuL=KL9H KI;H9tI LMuDH=QKH;HtCH1L-?KIL5-KL<O>I$MMt1M M $M8M'HKL5JLJL%JM$MtI1H5JM$L%JL5JO4JHH5@JHH BJHHDJHH=FJHH5HJHH JJHHLJHL-VIL-_IL-hIL-qIL-zIL-IL-IL-IL-IL-IL-IL-IL-IL-IL-IL-IH=IHH5IHH IHHIHH=IHH5IHH IHHIHH=IHH5IHH IHHIHL->IL-GIL-PIL-YIL-bIL-kIL-tIL-}IL-IL-IL-IL-IL-IL-IL-IHIL-CLCIH=qIH5zIH IL-CLCILCIHCHLCILCILCIHCHLCILCIILCIHCHLCILCIL-BL-BL-CL-CL-CL- CL-)CL-2CL-;CL-DCL-MCL-VCL-_CL`CIL-ZCH[CHL-VCLWCIL-QCHRCHLTCILVCIHXCHL[CILmCIHOCHLaCIHcCHLfCILxCIHZCHLlCIHnCHLqCILCIL-}BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BHBHL-BL-BLCIHCHLCILCIHBMHLCIHCHL CIL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL-BL%CHBLBLBHBLBHĘ[A\A]A^A_]Ƅufo]IfoPfo`HH=Efopfoepxfomfou@HEH5EHP(L5EX8`HhXphhIՄ-HHH9L<LL1HI H )EHEHtq1H=E fDM L IH HLMtIHH1LIMMMuL=DL9H DI;H9tI LMuDH=DH;HtH1L-DIL5mDL<O>I$MMt1M M $M8M'HTDDL5)DL)DL%"DM$MtI1H5DM$L%CL5CO4IHAWHTAVHyAUHATSH)pHHI1HIHDžTHEHHzDžPHHHHHHHHHHH?HHHHqH;XHHvKHP HH9p L$L~tHL1oILHHHLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5GH1LFIMIL<MM+I-MmMI1HII9H9uIupLL@lL@uH=+HQH5^FI* qH=8FxH=tHQH5FqH=BpL-BI*H=BH0LpH=BH0MS0IC`H=BH0IH=BH0H=BH0H=BH0H=BH0H=BH0H=BH0H=BH0H=BH0HO0H=BH`H BH`H=BH`H BH`HY0H=BHhL-AL-AL-AL-BL-BL-BL-"BL-+BL-4BL-=BL-FBL-OBL-XBL-aBL-jBL-sBH tBHhHyBH@H=~BHhH BHhHBHhH=BHhH BHhHBHÐH=BHǐH BHHBHhH=BHhH BH@HBHhH=BHhL-AL-AL-BL-BL-"BL-+BL-4BL-=BL-VBL-oBH pBHL-jBLsALALALBL'BHHBHÐH=JBHǐH LBHHNBHÐH=PBHǐH RBHhHWBHhH=\BH@H aBH@HfBH@H=kBHhH pBHHrBHÐH=tBHǐL-AL-AL-AL-AL-AL-AL-AL- BL-BL-BL-(BH )BHL-#BHq@H BHhL-BH=BH@L{ALALALBL;IL;IH;HH;HL;IL;IH;HH;HL;IHAL-AL-AL-:L-;L-;L-;L-";L-+;L-4;L-=;L-F;L-O;LP;IL-J;HK;HL-F;HG;HL-A;H @L@H=AH5 AL&;IL(;IH*;HH-;H˜L/;IpL4;IpH9;HH<;HpLA;IØLC;I˜HE;HHH;HLJ;ILL;I˜HN;HHQ;HpLV;IpL-S:L-\:L-e:L-n:L-:L-:L-:L-:L-:L-:L-:L-:L?:LX:L:L:L-:L:I˜H:HH:HL:IL:IH:HH:HL:IØL:I˜H:HpH:HHL;IpL;IpH ;HH;HL;IMs@L-':Mc8L-,:MN0L-1:L-::L-C:L-L:L-U:L-^:L-w:L-:L-:L-:L9LD:L]:Lf:L:IL-:L-:L-:L%:L-:L5:L-:Hh:Hq:Lz:L{:L|:L}:L :HĘ[A\A]A^A_]@Vjufo]IfoPfo`HH==fopfoepxfomfou@H=H5=HP(L5=X8`HhXphlIՄ-HHH9L<LiL1HIdH 9=H.=Htq1H= = fDM L IH HLMtIHH1LIMMMuL=<L9H <I;H9tI LMuDH=<H;HthH1L-<IL5}<L<O>I$MMt1M M $M8M'Hd<L59<L9<L%2<M$MtI1H5<M$L%;L5<O4_L@uH=|+HEDH5;I*HMp(dH=: kH=egH5:HDdH9HLpH9HIpH*H9HH9HH9HH9HH9HH9HH9HH9HH:HH:HKH Lf8I MXL-?9L-H9L-q9L-9L-9H9L-58H568H(H=8H=9H=%9H=>9H=G9H=P9H=Y9H=b9H={9H |9H=7L-7L7I8L 8I8L7I8H57H8L8IHL7MPIHI@ H57HHL-7L-8L-,8H=7H=7H=7H=7H=7H=7L7H=7H57L7H=7L7H7HĘ[A\A]A^A_]bufo]IfoPfo`HH=8fopfoepxfomfou@H8H5l8HP(L5}8X8`HhXpheIՄ-HHH9L<L(bL1HI8]H 8H7Htq1H=7 fDM L IH HLMtIHH1LIMMMuL=7L9H 7I;H9tI LMuDH=i7H;HtaH1L-W7IL5E7L<O>I$MMt1M M $M8M'H,7L57L7L%6M$MtI1H56M$L%6L56O4HAWHTAVHyAUHATSH)pHH\>1HW>HDžTHEHHzDžPHHH=H=H=H==?H=H=\H;=HvKHHH9 L$L^_HL1qZILG=HH=LP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5C<H1L/<IMIL<M M+I-MmMc I1HII9K H9uIupLL@WL@uH=+H<H5;I. \H=x;scH=_Hu<H5^;i\H= qL-{7LtpH=u7H0MX0MP`H=r7H0IIH=i7H0H=n7H0H=s7H0H=x7H0H=}7H0H=7H0H=7H0H=7H0H=7H0HO0H=7H`Hq`H 7HH=7HǐH57HƐH^`L-6L-6L-6L-6L-6L-6L-6L-6L-6L-6L-7L-7L-7L-"7L-+7H ,7HL-&7H='7HH5)7HH +7HH-7HH=/7HH517HH 37HH57HH=77HH597HH ;7HH=7HH=?7HL-y6L-6L-6L-6L-6L-6L-6L-6L-6L-6L-6L-6L-6H56HL-6H 6HL-6H6HL-6H=6HH56HH 6HH6HH=6HH56HH 6HH6HH=6HH56HH 6HH6HH=6HH56HH 6HH6HH=6HL-5L-5L-6L- 6L-6L-6L-'6L-06L-96L-B6L-K6L-T6L-]6L-f6L-o6L-x6L-6H56HH 6HH6HH=6HH56HH 6HH6HH=6HL"/IL- 6L-6L-6L-'6L-06L-96L-B6L-K6L-T6L-]6H^6L-_6L-.L-.L.IL-.L.IL-.H.HL-.H55H 5H=6H.HL.IL.IL.IH.HH.HL.IL.IL.IH.HH.HL.IL.IL.IH.HH.HL.IL--L--L--L--L--L--L--L--L-.L- .L-.L-.L-(.L-1.L-:.L-C.L-L.LM.ILO.IHQ.HHT.HLV.ILX.ILZ.IH\.HH_.HLa.ILc.ILe.IHg.HHj.HLl.IL--L--L--L--L--L--L--L--L--L--L--L--L--L--L-.L.IL--L.IH.HH.HL.IL .IL .IH .HH.HL.IL.IL.IH.HH.HL.IL-G-ML-I-L-R-L-[-L-d-L-m-L-v-L--L--L--L--L--L--L--L-IL--L-IL--H-HL--H-HL--L--L--L--L--L--L%-Ly-L-L-H-H-HĘ[A\A]A^A_]Sufo]IfoPfo`HH=x1fopfoepxfomfou@HK1H541HP(L5E1X8`HhXph(VIՄ-HHH9L<LRL1HIMH 0H0Htq1H=0 fDM L IH HLMtIHH1LIMMMuL=l0L9H b0I;H9tI LMuDH=10H;HtQH1L-0IL5 0L<O>I$MMt1M M $M8M'H/$L5/L/L%/M$MtI1H5/M$L%/L5/O44HG4HP4HY4Hb4Hk4Ht4H}4H4H4H4H4H4H4H54H`H4H 4H`H4H=4H`H4H4H`H54H`H 4H`H=4H`H4H`H54H`H 4H`H=4H`H4H`H54H`H 4H`H=4H`H4H`H'4H04H94HB4HK4HT4H]4Hf4Ho4Hx4H4H4H4H54H`H4H 4H`H4H=4H`H4H4H`H54H`H 4H`H=4H`H4H`H54H`H 4H`H=4H`H4H`H54H`H 4H`H=4H`H4H`H54H`H 4H`H=4H`H4H`H3H3H3H3H3H4H4H4H#4H,4H54H>4HG4HP4HY4Hb4Hk4H5l4H`H q4H`H=v4H`H{4H`H54H`H 4H`H=4H`H4H`L)I`L )I`L)I`L#)I`H3H3H4H 4H4H4H&4H/4H84HA4HJ4H(H(H(H(H(H53H 4H= 4H4L(I`L (I`L(I`L(I`L(I`L (I`L(I`L(I`L(I`L (I`L(I`L(I`L(I`L (I`L(I`L(I`H'H'H(H(H(H!(H*(H3(H<(HE(HN(HW(H`(Hi(Hr(H{(L|(I`Hy(L z(I`L(I`L(I`L(I`L (I`L(I`L(I`L(I`L (I`L(I`L(I`L(I`L (I`L(I`L(I`H'H'H'H'H(H (H(H(H%(H.(H7(H@(HI(HR(H[(L\(I`HY(L Z(I`L_(I`Ld(I`Li(I`L n(I`Ls(I`Lx(I`L}(I`L (I`L(I`L(I`L(I`L (I`L(I`L(I`H'H'H'H'H'H'H'H'H(H(H(H (H)(H2(H;(L<(I`H9(L :(I`H7(L8(I`L=(I`LB(I`L G(I`LL(I`LQ(I`LV(I`L [(I`L`(I`Le(I`Lj(I`L o(I`Lt(I`Ly(I`H'H'H'H'H'H'H'H'H'H'H(H (H(H(L(I`H(L (I`H(L(I`L(I`L"(I`L '(I`L,(I`L1(I`L6(I`L ;(I`L@(I`LE(I`LJ(I`L O(I`LT(I`LY(I`H'H'H'H'H'H'H'H'H'H'H'H'H'H'L'I`H'L 'I`H'L'I`H']L'I`H'L'I`H'H'H(H (H(IC0L 'L'L'L'H'f.fUHN4HAWHTAVHyAUHATSH)pHH,41H'4HDžTHEHHzDžPHHH3H3H3H33?H3H3?H;h3HvKH HH9 L$LBHL1=IL3H3LP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L52H1L1IMIL<MdM+I-MmMCI1HII9+H9uIupLL@:L@uH=,+HH5n1I. ?H=H1FH=CHH5.1?H=rLqL- .I.H=.H0L/CqH=.H0IC`MS0H=-H0LH=-H0H=.H0H=.H0H= .H0H=.H0H=.H0H=.H0H=.H0HO0H=.H`H $.H`H=).H`H ..H`HY0Hq`L-C-L-L-L-U-L-^-L-g-L-p-L-y-L--L--L--L--L--L--L--L--H=-HL--H -HH-HH=-HH -HH-HØH=-HhH -HH-HÐH=-HǐH -HH5T-HH-HÐH=-HǐH -HL--L- -L--L--L-(-L-1-L-J-L-S-L-\-L-e-L-n-L-w-L--L--H-HÐL--H5,L,H=w-HǐH y-HH{-HÐH=}-HǐH -HH-HÐH=-HǐH -HH-HÐH=-HǐH -HH-HÐH=-HǐH -HL-,L-,L-,L-,L-,L-,L-,L-,L--L- -L--L--L-'-L-0-H1-L-2-L-;-H=,-H 5-L-'L'IÐL 'IH 'HL'IL'IH"'HL%'IL'IL'IH+'HL%'IL 'IL"'IH4'HL-O&L-X&L-a&L-j&L-s&L-|&L-&L-&L-&L-&L-&L-&L-&L%&IL-&L-&L&IL-&L&IH&HLp8L%&HP0IL5 'I0L5'I0L5'I0L5'I0L5'I0L5#'I0L5('I0L5-'I0L52'I0L-/&L-8&L-A&LB&I8L-<&L=&IhL-7&L%8&IhL-2&H3&HhL->&L-G&L-P&L-Y&L-b&L-k&L-t&L-}&L-&L%H%L-&L5&I0L5&I0L5&I0L5&I`L&IL5&IL&MIL%&IH&HL&IL-&L- &L-&L-&L-(&L-1&L-:&L-C&L-L&L-U&L5V&L-W&L-`&L%a&L-b&L-k&L-t&L5&HN&LW&L `&HĘ[A\A]A^A_]fD8ufo]IfoPfo`HH=h)fopfoepxfomfou@H;)H5$)HP(L55)X8`HhXph;IՄ-HHH9L<L@8L1HIP3H (H(Htq1H=( fDM L IH HLMtIHH1LIMMMuL=\(L9H R(I;H9tI LMuDH=!(H;Ht37H1L-(IL5'L<O>I$MMt1M M $M8M'H'DL5'L'L%'M$MtI1H5'M$L%~'L5'O4I$MMt1M M $M8M'H"lL5"L"L%"M$MtI1H5i"M$L%V"L5_"O4I$MMt1M M $M8M'HL,L5!L!L%M$MtI1H5M$L%L5O4HpHCHhH5HHhHMH@H5RH8HWH`H5\HhHaHhH5fHhHkHhL-L-L-L-L-L-L-.H5?H`H \H eLH LLLLLHHhH5 HpHHhH{pH5HhHHèH5HƠH=HǠHHàH5HxH="HHH'HHH5,HHH=1HxH6HxH5;HƠH==HǠL-GL-PL-iL-rL-{L-L-L-L-L-HHØLLLH uH ~H LL-H5HpH=HhHHhH5HƘH=HǘHHàH5HƠH=HǨHHàH5HƠH=HǘHHØH5HƘH=HǘL-WL-pL-yL-L-L-HHpH5H@LH LLL LDL]LfLH H=H@LIàLI˜HHLIàLI¨HHLIèH.H@H53HpH=8HxLIxHHxLIpL-HL-L-L-(L-AL-ZL-cL-lL-uL-~H LH H5H=LLH VL-_L`I HbHLeIàLgI HiHLlIàLnIpHsHHLxIHL}IxHHLIàLI HHpLIpL-L-L-L-L-L-(L-1L-JL[IhLhLLH H LH L'H(HL+IØL-I H/HL2IØL4I˜H6HL9IàL;I H=HL@IèLBI HDHLGIàLIIxHNHHLSIHL-`L-yL-L-L-L-L-L-L-LL*LCLLLuLH H LIHHHxLIxLI HHLIØLIpHHhLIhLI˜HHL IàL I HHLIàL-,L-EL-NL-gL-L-L-L-LI H LL8H ALJLSLlLHHLIØLIpMs@LMc8I˜HISHML5I8L-OL-xL%L-L-L5L-L.L7LPLQH RHSH TLULVHWH XL HĘ[A\A]A^A_]nufo]IfoPfo`HH=fopfoepxfomfou@HH5HP(L5X8`HhXphIՄ-HHH9L<LL1HI H QHFHtq1H=8 fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;HtH1L-IL5L<O>I$MMt1M M $M8M'H|L5QLQL%JM$MtI1H5)M$L%L5O4I$MMt1M M $M8M'HT$L5)L)L%"M$MtI1H5M$L%L5O49I鶪 f.fUH=H H=) H]H5DUHHAWHTAVHyAUHATSH)pHH|1HwHDžTHEHHzDžPHHHHHH?HHH;HvKHPHH9pL$LHL1ILgHhLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5cH1LOIMIL<M M+I-MmM I1HII9 H9uIupLL@L@uH=I$MMt1M M $M8M'HL5LL%M$MtI1H5qM$L%^L5gO4LLLH H LHHhLI@LIpHHxLIàLI HHLIàLI HHLIàL I H HLIØLIHHLIàL-?L-HL-aL-zL-L-L-H LH LL2L[LLLL-LI¨HHxLIxLIHHHpLIpLIpHHpLI@LIpHHpLIàLI˜HHLIØL-L-L-L-@L-yL-L-LI H H LH LH #L<LULnHoHLrIàLIØLIpL[I˜LIhHRMchHIS`L]I H_HLrIhL%I8Mt$0HgH@L|IhL-L-L- L-L-LLLLH LH L%H&L'L(L)L*H +H,L=L%>L-?L5@HĘ[A\A]A^A_]fDVufo]IfoPfo`HH=fopfoepxfomfou@HH5HP(L5X8`HhXphIՄ-HHH9L<LL1HIH 9H.Htq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;HtH1L-IL5}L<O>I$MMt1M M $M8M'HdL59L9L%2M$MtI1H5M$L%L5O4L@uH=|E+HEH5I*Hur(H= H=eH5HHHH trHHHqH*HHHHHHHHHHHHHHHHH H HHH5zH H H0LAL-L-QL-HL-<H5]H8H=H=H=H=H=H='H=0H=IH=RH=H=H=H=H H8H ,H8LLYI8H5HHL-L-H=H=H=LH5H=H H=LHĘ[A\A]A^A_]&ufo]IfoPfo`HH=fopfoepxfomfou@HH5tHP(L5X8`HhXphIՄ-HHH9L<LpL1HIH HHtq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=qH;HtcH1L-_IL5ML<O>I$MMt1M M $M8M'H4$L5 L L%M$MtI1H5M$L%L5O4+HH5I.H=xH= HH5^H5rI. L-H5H8LrH5H8MS8ICpH5H8IH5H8H5H8H5H8H5H8H5H0H5H8H5 H0H5H8HN8H5HpH HhH5HhH HhHY0L-7L-@L-IL-RL-[L-dL-}L-L-L-L-H5HƐL<LULLLH HHHàH5HƠH HHHØH5HƠH HHHàH5HƘH HHHàH5HƨH HHHàH5HƠH HL-L-L- L-$L-=L-VL-_L-hL-L-LLLLLL@HaHàH5cHƠH eHHgHèH5iHƨH kHHmHØH5oHƘH qHHsHàH5uHƠH wHHyHàH5{HƠH }HHL-L-L-L-L-L-L-L-L-L-1H2HèL-,H5-HƠL7LLLLL-H HHHH5 HH= HH HHHH5HH=HH HHHH5HH=HH HL-gL-pL-L-L-L-L-L-L-L-HHL-H5HL-H=HL-LLLtH L>IL@IHBHHEHLGILIIHKHHNHLPILRIHTHHWHLYIH L- L-L-nL-wL-L-L-L-L-L-L-L-L-LH5H=L|LLLIHHHHLILIHHHHLILIHHHHLILIHHHHLIL-L-4L-=L-VL-oL-L-L-L-LLLLL L9LRLIHHHHLILIHHHHLILIHHHHLILIHHHHLIL-L-L-L-L-L-L-L-.L-GL-PL-YLZILTLLLLL1H2HH5HL7IL9IH;HH>HL@ILBIHDHHGHLIILKIHMHHPHLRIMLMMcpIMN8L-OL-XL-aL-zL-L-L-L-L-L-L-L-L-L$LMLHL-L-L-L%L-L5L-HLLLL HĘ[A\A]A^A_]fvufo]IfoPfo`HH=(fopfoepxfomfou@HH5HP(L5X8`HhXphIՄ-HHH9L<LL1HIоH yHnHtq1H=` fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;HtH1L-IL5L<O>I$MMt1M M $M8M'HL5yLyL%rM$MtI1H5QM$L%>L5GO4HGHPHYHbHkHtH}HHHHH H`HH=H`HHH`H5H`H H`H=H`HH`H5H`H H`H=H`HH`H5H`H H`H=H`HH`H5H`H HHH'H0H9HBHKHTH]HfHoHxHH H`HH=H`H}H~H`H{H5|H`H H`H=H`HH`H5H`H H`H=H`HH`H5H`H H`H=H`HH`H5H`HHHHHH"H+H4H=HFHOHXHaH bH`H_HhHqH=RH[H5dLI`L I`LI`L I`LI`L I`LI`L I`L%I`L *I`L/I`L4I`L9I`L >I`HHTH]HfHoHxHHHHHHHHHHLI`H XHLI`LI`L I`LI`LI`LI`L I`LI`LI`LI`L I`LI`LI`L I`L I`H-H6H?HHHQHZHcHlHuH~HHHHHLI`HLI`LI`L I`LI`LI`LI`L I`LI`LI`LI`L I`LI`LI`LI`L I`H HHH(H1H:HCHLHUH^HgHpHyHHLI`HLI`HLI`L I`LI`LI`LI`L I`LI`LI`LI`L I`LI`LI`LI`L I`HHHHHH#H,H5H>HGHPHYHbHkLlI`HiLjI`HgLhI`L mI`LrI`LwI`L|I`L I`LI`LI`LI`L I`LI`LI`LI`L I`HHHHHHH HHH'H0H9HBHKLLI`HILJI`HGLHI`HEL FI`LKI`LPI`LUI`L ZI`L_I`LdI`LiI`L nI`LsI`LxI`L}I`L I`HHHHHHHHHHHH"H+L,I`H)H2H;LL%L .]H.H7IA0L$H-@UHHAWHTAVHyAUHATSH)pHH1HHDžTHEHHzDžPHHH H HH?HHH;HvKH HH9 L$LβHL1ILwHxLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5sH1L_IMIL<M4 M+I-MmM I1HII9H9uIupLL@L@uH=L+HH5I. HrH=ܶH=5HޏH5үH5rI.L-H5 H8H.HrH5H8HP0L`hH5H0H5H8H5H0H5 H8H5H8H5H8H5H8H5H8H5$H8H5)H8H5.H0H~8L^hHKL-lL-L-H5HƠL- H= HǠLLL6LOLXLaLjLsL|LLLLIèH5HƨLIèH5HƨLIèH=HǨH5HƨLIàH=HǨH5HƠLI@H=HǠH5H@LIpL-H5HpLLLLLL L)L2L;LTH=ULVH _LhLqLzL{IpH5HhLIhH5HhLI`H5HhLIpH5HhLIhMSpH5HpLIèH5HƠLI LIàL-L-L- L-4L-}H5HƨLI¨LIàLLLLLLLL L$L-L6L?HHHH L%IĠHHHH L%IĠH5HƠLI LIèHHHH¨L%IĨL-L-L-L-L-7HxHLLH5LLLLLLLLLLLHH¨L%IĠL%=IĠHHHH˜L%DIĨHHHH¨L%KIĨHHH H¨L%RIĨM$HHM$HH¨L-qL-HHHH L-L%LL#L<LUL^LgLpLyLLLLLLL I8L I8L I8L I8L I0L I8L I0L I0L I8L I8L "I0L 'I8L ,I8H1L5JL-L-L-L-LHH LL#L,L5LNLwLLLLL I8L I8L I0L I8L I8IHL I8L IL-gMy8L-L-MipL%L=L-L%L>LGLPLYLrHsLtL uLvHĘ[A\A]A^A_]@Fufo]IfoPfo`HH=fopfoepxfomfou@HH5HP(L5X8`HhXphIՄ-HHH9L<L萧L1HI蠢H IH>Htq1H=0 fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;Ht胦H1L-IL5L<O>I$MMt1M M $M8M'HttL5ILIL%BM$MtI1H5!M$L%L5O49H L`Lf.fUHHAWHTAVHyAUHATSH)pHHl1HgHDžTHEHHzDžPHHHHHH?HH7H;HvKHHH9L$LHL1ILWHXLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5SH1L?IMIL<M<M+I-MmMI1HII9H9uIupLL@.L@uH=l+H5H5I.H.H=nH=RH5[HH rH5rHH HH=rH HH HH5HH HH5HLFH HH HLI0H HH5H LI0H MXHMP0H5H0L-HL-L-L-L-#L-,L-5H>HL-HL-"L-+L-4H=H L-/L-8L-AHJH5L$L-L6HĘ[A\A]A^A_]@^ufo]IfoPfo`HH=fopfoepxfomfou@HH5HP(L5X8`HhXphIՄ-HHH9L<L訠L1HI踛H !HHtq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;Ht蛟H1L-wIL5eL<O>I$MMt1M M $M8M'HLlL5!L!L%M$MtI1H5M$L%L5O4H=?HL-9H :HLLLL-H HH5"HH=$HH &HH(HH5*HH=,HH .HH0HH52HH=4HH 6HH8HH5:HL-dL-}L-L-L-L-H=HL- H HL'L@LYLbLLLLLHHH5HH=HH HHHH5HH=HH HHHH5HL$IL&IL-HL-L-L-L-HHLLL LLL&L/L8LALJH=KLLH MH5fL-HHLILIHHHHLILIHHHHLILIHHHHLILIL-L-L-L-L-L-L-'L-0L-9L-BL-KL-THeHL-`LLL;HLHLNILPIHRHHUHLWILYIH[HH^HL`ILbIHdHHgHLiILkIL-L-L-L-L-L-L-L-L- L-&H'HL-"H#HL=LVLLLL-LILIHHHHLILIHHH HL ILIHHHHLILIL-BL-KL-dL-}L-L-L-L-L-L-HHHHLLLcLLLLILIHHHHLILIHHHHLILIHHHHLILIL-L-L-L-L-L-#L-\L-uL-~L-HHL-HHL-~LILLLLL-]L^IH`HHcHLeILgIHiHHlHLnILpIHrHHuHLwILyIL-L-L-L-L-L-L- L-"L-+L-4H5HL-0H1HL3IL--LLLLLILDIHHH HL ILMIHHHHLILVIHHHHLIL_IMHHMHHMN8LIL-.L-WL-`L-yL-LLLLFL_LhLqLLLLLHHHHLIL%L-L5L-LrL{LLLHLHLLLL HĘ[A\A]A^A_]趉ufo]IfoPfo`HH=fopfoepxfomfou@H{H5dHP(L5uX8`HhXphXIՄ-HHH9L<LL1HIH HHtq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=aH;HtH1L-OIL5=L<O>I$MMt1M M $M8M'H$L5LL%M$MtI1H5M$L%L5O4I'菃H=sH=̆HucH5iH5·sL-I' H5H8LsH5H8MS8ICpH5H8IH5H8H5H8H5H8H5H8H5H8H5H8H5H8H5H8HN8H5HpH HpH5HpH HpHY8L-L- L-)L-2L-;L-DL-ML-VL-_L-hL-qL-zL-L-L-H5HƨL-H HHHàH5HƠH HHHèH5HƨH HHHèH5HƨH HHHàH5HƠH HHHèH5HƨH HL-L-L-L-L-L-L-L-L-L-L-3L-<L-EL-NLgLHAHèH5CHƨH EHHGHèH5IHƨH KHHMHàH5OHƠH QHHSHèH5UHƨH WHHYHèH5[HƨH ]HHHXHèH5ZHƨL-TL-]L-fL-oL-xL-L-L-L-L-L-L-L-L-L-L[L-H HHHH5HH=HH HHHH5HH=HH HHHH5HH=HH HHHH5HH=HL- L-L-L-(L-1L-:L-CL-LL-UL-^L-gL-pL-yL-L-L-H HHHH5HH=HH HHHH5HH=HH HHHH5HH=HH HHHH5HH=HL-L-L-L-L-L- L-3L-<L-UL-^H oHLLLLL L6L-?H@HH5BHH=DHH FHHHHH5JHH=LHH NHHPHH5RHH=THLfIL-L-L-"L-+H<L--L-6LoLLLLLLH LLH5LH=LIHHHHLILIHHHHLILIHHHHLILIHHHHLIL-L-L-L-#L-,L-5L->L-GL-PL-YL-bL-kL-tL-}L-L-LILHHHHLILIHHHHLILIHHHHLILIHHHHLIL-L-L-L-L-L-L-L-L- L-&L-/L-8L-AL-JLKIL-ELH?HHBHLDILFIHHHHKHLMILOIHQHHTHLVILXIHZHH]HL_IL-yL-L-L-L-L-L-L-L-L-L-L-L-L-LIL-HHLEL-HHLILIHHHHLILIHHHHLILIHHH HL IL-6L-?L-HL-QL-ZL-cL-lL-uL-~L-L-L-L-L-LIL-HHL-HHLILIHHHHLILIHHHHLILIHHHHLIL-L-L-L-%L-NL-WL-pL-yLIL-HHHHLLLLLL/LHL-QLRILIMspLBMc8IL5I0H5HH8HL5I0L-L-`L-iL%jL5LLLLLLHLHL LL'L0HĘ[A\A]A^A_]fDtufo]IfoPfo`HH=@fopfoepxfomfou@HH5HP(L5 X8`HhXphPwIՄ-HHH9L<LsL1HIoH HHtq1H=x fDM L IH HLMtIHH1LIMMMuL=4L9H *I;H9tI LMuDH=H;HtrH1L-IL5L<O>I$MMt1M M $M8M'HLL5LL%M$MtI1H5iM$L%VL5_O4HAWHTAVHyAUHATSH)pHH1HHDžTHEHHzDžPHHHHHH?HHnH;XHvKHHH9L$L^qHL1qlILHLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5H1LIMIL<M\M+I-MmM;I1HII9#H9uIupLL@iL@uH=*HNH5^I'nH=8suH=qHuNH5inH5B8tI' H'H5H8L"tH5H8MS8ICpH5H8H5H0H5H8H5H0H5H8H5H8H5H8H5H8H5H0H5H8H5H8H^0H5H`HH8L-L-L-L-L-3L-<L-EL-NL-gL-pH5H@LLL0LYLbH kL-tHuHhH5zHhHHhH5H`HHhH5H@HH8H5HhHHpH5HpHHpH5H@HH@H5HhHHhL-L-L-:L-CL-LL-UL-nL-H5HpL-LLLH LH L4HUHpH5ZH@H_H@H{hH5`HpHeHØH5gHƐH=iHǘHkHàH5mHƨH=oHǠHqHØH5sHƐH=uHhHzHhH5HpH=HpHHxL-L-L-L-L-L-L-LH eLLLLLLH LH H5HxH=HxH!HpH5&H@H=+HhH0HpH55HƠH=7HǨH9HèH5;HƨH==HǠH?HpH5DHpH=IHpHNHpL-kL-tL-L-L-L-L-L- H5HpH HLQH ZLcLH LH H=HxHHèH5HƨH=HǨHHàH5HƠH=HǘHHpH5H@H=H@HHpH5 HpH=HpHHpH5HƠH=HxH#HxL- L-)L-2L-;L-DL-]L-L-L-L1LJH SH \LeH ~LH H5HpH=HǠHHØH5HƘH=HǐHHÐH5HƘH=HǠHHàH5HƘH=HǐHHØH5HƘH=HǘHHÐL-L-L-LL-UL-H5HƐLLLLLL&L/L8LQLZLcH=dHǐHfHÐH5hHƐH=jHǐHlHØH5nHƘH=pHǘHrHÐH5tHƐH=vHǐHxHÐH5zHƐH=|HǐH~HØL-H5yHƘL-sH=tHǠHvLwLLLLLLLLLLLLL L-LIèLI HHLIØLI HHLIèLI¨HHLIàLI HHLIØL-L-L-L-L-L-L-"L-+L-DL-ML^IhH5LH=LLLL!L*H+HpL0IpL5I H7HL:IØL<I˜H>HpLCIpLHIpHMHLPIèLRI¨HTHxLYIxL^IpHcHLfIàL-pL-L-L-L-L-L-L-H (LALZLcH |LH LL-LI¨HHxLIxLIxHHLIØLIH HL IàLI¨HHLIØLIHHhLIhL-9L-BL-[L-dL-L-L-LIpH LFLOLXLLLH LHHpLIxLIxHHxLIpLI@HHhLIpLI HHLIèLI¨HHLIpLIpHHpLIpL-L-L-L-aL-jL-sL-|L-L-H H LH L LdH mLLIpHHxLIèLI¨HHLIàLI HHLIpLI@HH@LIpLIpLMc@IpIS8HHpL-L-L-L-L-L-L-hL-H LL H H L'H @LILJHSL%|I8L%I0L%I8L%I0L%I0L%I0L%I0L%I8L%I8L%I0L%I0L%I0L%I8L%I0L-L-L-L-5L->L-wLH HLLLLLLLLL3L<L%=I0L%BI0L%GI0L%LI0L%QI0L%VI0L%[I0L%`I8L%eI0L%jI0L%oI0L%tI0L%yI0L%~I0L%I0L%I0L-L-~LLLLLLLLLLLLLL L%I8Mt$0ML$hL%L-L5LLL HĘ[A\A]A^A_]]ufo]IfoPfo`HH=`fopfoepxfomfou@H3H5HP(L5-X8`HhXphP`IՄ-HHH9L<L\L1HIXH HHtq1H= fDM L IH HLMtIHH1LIMMMuL=TL9H JI;H9tI LMuDH=H;Ht[H1L-IL5L<O>I$MMt1M M $M8M'HLL5LL%M$MtI1H5M$L%vL5O4HpHCHpH=HHpHMHpH=RHpHWHhH=\HhHaHpH=fHpHkHpH=pHpHuHpL-L-L-L-L-L-L-L-L- L-L-L-%L-.H/L-@H5AHhLH=L0L1IhLFIpMSpLWIèLyIèMc@H5HpIC8L%I8L%I8L%I0H5HpL%I8H5HƨLI¨L%I8L-L-L-L-L-L-L-L-L-L-L-L-L-L-'H5LLH HLL-L%I8L% I8L%I8L%I8Mt$hIT$8L-L5*I8L5/I8L54I8L59I8L5>I8MN8L-L-L-L%L-L-L-L-L-L-L5L-LHL HĘ[A\A]A^A_]Sufo]IfoPfo`HH=fopfoepxfomfou@HH5HP(L5X8`HhXphhVIՄ-HHH9L<LSL1HI NH )HHtq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;HtRH1L-IL5mL<O>I$MMt1M M $M8M'HTdL5)L)L%"M$MtI1H5M$L%L5O4IL-HL-QL-ZL-cL-lL-L-L-L-L-L-ºL-˺L-ԺHHL0LYLºL-˺H̺HLκILкIHҺHHպHL׺ILٺIHۺHH޺HLILIHHHHLILIL-L-L-'L-0L-9L-BL-KL-TL-]L-fL-oL-xL-L-HHL-LHHLILIHHHHLILIHHHHLILIHHHHLILIL-L-¹L-˹L-ԹL-ݹL-L-L-L-L- L-L-L-%L-.L-7H8HL-3H4HL-.L/IL1IH3HH6HL8IL:IH<HH?HLAILCIHEHHHHLJILLIL-vL-L-L-ѹL-ڹL-L-L-L-HHHHL- L%LNLWL`LLҹLILIHHHHLILIHHHHLILIHHHHLILIL-JL-SL-\L-eL-nL-L-HѹHHԹHL-ιLϹILɸLҸL+L4L=LVLoLxLLIMHMHL5I0H~HL5I0L-mL-vL-L-L%L5¹L#L,L=LFHOLPHQLbLkLtHĘ[A\A]A^A_]f>ufo]IfoPfo`HH=xfopfoepxfomfou@HKH54HP(L5EX8`HhXphAIՄ-HHH9L<L0>L1HI@9H ɾHHtq1H= fDM L IH HLMtIHH1LIMMMuL=lL9H bI;H9tI LMuDH=1H;Ht#=H1L-IL5 L<O>I$MMt1M M $M8M'HtL5ɽLɽL%½M$MtI1H5M$L%L5O4HrH5f;H otL tI'HqMQH H0HyH5HHH%tH H8H'MYH=}H(H5H(H H8H=HHH5HHHHH HHH=H8H5H8H½H˽H̽LͽLֽL߽LHHLL LLL'H0H 1H(L.H=/H8H,H5-L.LI8L I(LIHL.I8L IHL(I(L=I8L "I(L7IHLLIHL 1IB(IHLBI8LHxHLLLLHHLLɻLһLۻLHLH 7H=@L ɻLһLۻ]HۻIR LLL@HƻHϻLػf.DUH=H?H=;H]H5˼8DUH=H`?H=;Hb]H5U8DUHNHAWHTAVHyAUHATSH)pHH,1H'HDžTHEHHzDžPHHHHHH?HH5H;hHvKH HH9@L$LN8HL1a3ILHLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5H1LIMIL<MM+I-MmMI1HII9kH9uIupLL@0L@uH=̤*HH5nI*5H=HcI$MMt1M M $M8M'HL5yLyL%rM$MtI1H5QM$L%>L5GO4L@uH=|*HEH5I*/H=#H=lHH5~ H5"uI* L-ѶH5ҶH8LhuH5жH8MS8ICpH5ͶH8IH5˶H8H5жH8H5նH8H5ڶH8H5߶H8H5H8H5H8H5H8HN8H5HpH HpH HpHY0H5HpL-L- L-)L-2L-;L-DL-ML-VL-_L-hL-qL-zL-L-L-H5HƠLH HHHèH5HƨH HHHàH5HƠH HHHèH5HƨH HHHèH5HƨH HHHèL-յL-޵L-L-L- L-L-L-$L--L-6L-?L-HL-QH5RHƨL-LH MHL-GLHAHèH5CHƠH EHHGHàH5IHƨH KHHMHèH5OHƨH QHHSHèH5UHƨH WHHYHèH5[HƠH ]HH_HàHL-bL-kL-L-L-L-L-L-L-L-õL-̵L-յL-޵L-H5HƠLL˵L-H HHHH5HH=HH HHHH5HH=HH HHHH5HH=HH HHHL-9L-BL-KL-TL-]L-fL-oL-xL-L-L-L-L-H5HL-H=HL-LH HHHH5HH=HH HHHH5HH=HH HHHH5HH=HH HHHL-ٴL-L-L-L- L-L-L-(L-1H5rHH=tHL-nH oHLLL LLL&L?H@HH5BHH=DHH FHHHHH5JHH=LHH NHHPHH5RHH=THH VHHXHL-L- L-4L-=H5>HH=@HH BHLLLUL^LgLpLLLLLݴLLHHL"IL$IH&HH)HL+IH5HH=HLIHHHHLIL-RL-kH|L-}L-fL-oL-xL-L-L-L-L-L-L-LILH LH5LH=L-HHHHLILIHHHHLILIHHHHLILIHHHHLIL-æL-̦L-զL-ަL-L-L- L-L-L-4L-=L-FL-OLPIL-JLLH=HH@HLBILDIHFHHIHLKILMIHOHHRHLTILVIHXHH[HL]IL-wL-L-L-L-L-L-L-L-ϦL-ئL-L-L-L-LIL-HHLsL-HHLILIHHHHLILIHHHHLILIHHHHL IL-4L-=L-FL-_L-hL-L-L-L-L-L-L-LIL-HHL-LLHHLILIHHHHLILIHHHHLILIHHHHLIL-L-L-L-L- L-L-L-'L-0L-9L-RL-[L-dLeIL-_H`HL-[H\HLLOLPILRIHTHHWHLYIL[IH]HH`HLbILdIHfHHiHLkIL-L-NL_IHaHL-\H]HLgLpLyLLLLLLLȥLLLLILIHHLIHMMHLIHHL-L-L-L- L-"L%#L5,LmLLLHLLLĥLťHƥLץHĘ[A\A]A^A_]D ufo]IfoPfo`HH=hfopfoepxfomfou@H;H5$HP(L55X8`HhXphIՄ-HHH9L<L@ L1HIPH HHtq1H= fDM L IH HLMtIHH1LIMMMuL=\L9H RI;H9tI LMuDH=!H;Ht3 H1L-IL5L<O>I$MMt1M M $M8M'HL5LL%M$MtI1H5M$L%~L5O4uHQHq0H 7HHHzHH8H`MHH59H`MP0MXHH 6H`H=;H`H@H`H5EH`H JH`H=OH`HTH`H5YH`H ^H`H=cH`HhH`H5mH`H rH`HoHxHHHHHHHHHɬHҬH۬HHHHH=H`HH`H5 H`H H`H=H`HH`H5H`H #H`H=(H`H-H`H52H`H 7H`H=<H`HAH`H5FH`H KH`HXHaHjHsH|HHHHHHHHĬHͬH֬H߬H=H`HH`H5H`H H`H=H`HH`H5H`H H`H=H`H H`H5H`H H`HdHmHvHHHHHHHHHǬHЬH٬HHLI`H=HH5H HͦL ΦI`LӦI`LئI`LݦI`L I`LI`LI`LI`L I`LI`LI`LI`L I`HGHPHYHbHkHtH}HHHHHHLI`HLI`HLI`HL I`LI`L ئI`LI`LI`LǦI`L I`LI`LƦI`LۦI`L I`LզI`LڦI`LI`L I`HHH#H,H5H>HGHPHYHbHkHtH}HLI`HLI`HH]LI`L I`LI`LI`LI`L ĦI`HQHZHcHlHuLvI`HsLtI`HqHzL{I`HxHHHHIA0LYLbL kLtH}@UH~HAWHTAVHyAUHATSH)pHH\1HWHDžTHEHHzDžPHHHݷHڷH׷HԷҷ?HϷH̷H;HvKHHH9L$LHL1ILGHHLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5CH1L/IMIL<M\M+I-MmM;I1HII9#H9uIupLL@L@uH=n*HH5I*H=xH= HH5^H5b@vI* H*H5H8L*vH5H8MS8ICpH5H0H5H8H5H8H5H0H5H8H5H8H5H8H5 H8H5H8H5H8H5H8H^8H5H@H"H8L-/L-8L-QL-ZL-sL-|L-L-L-L-L-L-H5ӭHhLLH LL-HHhH5HhHHpH5ĭHpHɭHpH5έHhHӭHhH5حH@HݭH8H5HhHH@H5H8HH`H5H`HHhL-(L-1L-:L-CL-\L-L-έH5ϭH@LܬL%H >LGH `LiLrL{H HH@H5HpHHpH{hH5HpHHØH5HhH=HpHHxH5HƠH=HǠHHØH5HƘH=HǘHHØH5­HƠH=ĭHǘHƭHàL-L-ɬL-ҬL-۬L-L-L-6L-_L-xLLʬH ӬLLLL7LPH5QHpH=VHHH[H@H5`HpH=eHǠHgHèH5iHƠH=kHpHpHpH5uHxH=zHǨH|HxH5HxH=HpHHØL-L-ެL-L-L-L-"L-+L-DH5UHƘH oH xLLH ìH LLH=HǘH!HàH5#HƠH=%HxH*HxH5/HxH=4HxH9HpH5>HhH=CHhHHHpH5MHHH=RHxHWHpH5\HƘH=^HhHcHhL-`L-yL-L-L-L-L-L?H hH LLH H ŬLެLH H5HhH=HǘHHØH5HƠH=HǘHHØH5HƐH=HǐHHÐH5HƘH=HǘH HØH5 HƘH=HǘHHØL-JL-cL-L-H5HƐLL L"L;LDLMLVL_LxLLLH=HǐHHÐH5HƘH=HǠHHàH5HƘH=HǘHHØH5HƠH=HǘHHØH5HƐH=HǐHHÐL-L-!L-JL-cH5HƐH=HǘHLLLLLLLL(L1L:LCLLL-ULƝIàLȝI HʝHL͝IàLϝI HѝHLԝIèL֝I¨H؝HL۝IèLݝI¨HߝHLIxL-L-L-1L-:L-SL-\L-eL-nL-wL-L-L-LIpH5HLIH=JLLH mHnHpLsIØLuI HwHLzIèL|I¨H~HLIàLIpHHpLIpLIpHHpLIhLIHHLIpL-L-̜L-՜L-ޜL-L-L-)LrLLԜH LH LL!L*L-3L4IxH9HxL>IèL@I¨HBHLEIØLGIhHLHpLQIxLVI HXHL[IØL]I˜H_HLbIØL-L-L-L-L-L-L-L-+L,I H 6LLH LLӜLܜLHHLIàLIpHHHLI@L IpHHLIèLI HHpLIpL IxH%HL(IxL-IxH2HpL7IØL-1L-JL-L-L-L-L-ǜL-МL-LH H $L-LfH oH LLœI˜HĜHLǜIàLɜI H˜HxLМIxL՜IxHڜHxLߜIpLIhHHhLIpLIpLMc8IHIS0HHxL-"L-;L-DL-]L-fL-L-ȜLLH #H LLUL^H gH LLHL%I0L%I0L%ƜI8L%˜I0L%МI8L%՜I0L%ڜI0L%ߜI0L%I0L%I0L%I8L%I0L%I0L%I8L-:L-SL-L-՜LޛLߛH HLLLLL&L/L8LALZLcL|L%}I0L%I0L%I0L%I0L%I0L%I8L%I8L%I0L%I0L%I8L%I0L%I8L%I0L%I0L%ÜI0L%ȜI0L-L-L-GL-`LL›L˛LԛLLLL8LALJLSL\L%]I0Mt$0ML$hL%XL-YL5ZL;LTL UHĘ[A\A]A^A_]ufo]IfoPfo`HH=fopfoepxfomfou@HsH5\HP(L5mX8`HhXphIՄ-HHH9L<L8L1HIHH HHtq1H=آ fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=YH;Ht+H1L-GIL55L<O>I$MMt1M M $M8M'HLL5LL%M$MtI1H5ɡM$L%L5O4L-wH xHHzHèH=|HǨH ~HHHèH=HǨH HHHàH=HǠH HHHèH=HǨLМIàL-ʟL-ӟL-ܟL-L-L-L-L-L-"L-+L-4L-=H>L-?L-XLџH H=+LLLMI H5OHƨLQIèLSI¨H5UHƨLWIèLYI¨H5[HƨL]IèL_I H5aHƠLcIàLeI¨H5gHƨLiIèL-IL-L-L-L-L-L-L-L-ěL-͛L-L-L-L-LI¨L-H5HƨLL-LIMLISpIL%:I8L%?I8L%DI8L%II8Mt$8L-L-L-L-L-śL-ޛL-L-L-L-L%L-L5H5^HgLpLyLzH{HĘ[A\A]A^A_]Ðufo]IfoPfo`HH=ȝfopfoepxfomfou@HH5HP(L5X8`HhXphXIՄ-HHH9L<LL1HIH HHtq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=H;HtH1L-oIL5]L<O>I$MMt1M M $M8M'HDL5LL%M$MtI1H5M$L%ޛL5O4H?HHBHLDILFIHHHHKHLMILOIHQHHTHLVILXIHZHH]HL-L-L-ɏL-ҏL-ۏL-L- L-L'IL)IL3LLLeLLLLLHHHHLILIHHHHLILIHHHHL IL IHHHHL-kL-L-LIL-LIL-HHLLLLL#L,L5L>LGLPLiLHHLb0LrhL-ՏL%֏L5ߏLLLLLHLHLHĘ[A\A]A^A_]fD&ufo]IfoPfo`HH=xfopfoepxfomfou@HKH54HP(L5EX8`HhXphIՄ-HHH9L<LpL1HIH ɔHHtq1H= fDM L IH HLMtIHH1LIMMMuL=lL9H bI;H9tI LMuDH=1H;HtcH1L-IL5 L<O>I$MMt1M M $M8M'HL5ɓLɓL%“M$MtI1H5M$L%L5O4I.H=H=,HեH5H5B)wI. L-іH5ҖH8LwH5ЖH8MS8ICpH5͖H8IH5˖H0H5ЖH8H5ՖH8H5ږH8H5ߖH8H5H0H5H8H5H8HN8H5HpH HpH5HhH HhHY8L-L- L-9L-BL-KL-TL-mL-vL-L-L-L-H5HƨLՕLLwL-H HHHèH5HƨH HHHèH5HƠH HHHÐH5HƘH HHHèH5HƨH HHHèH5HƨH HL-L-•L-˕L-ԕL-ݕL-L-L-(L-1L-:L-CL-LL-ULLǕLЕHAHèH5CHƨH EHHGHàH5IHƠH KHHMHèH5OHƠH QHHSHàH5UHƨH WHHYHèH5[HƨH ]HHHXHèH5ZHƠL-TL-]L-fL-L-L-L-L-L-L-ŕL-ΕL-וL-L-L"LkL-H HHHH5HH=HH HHHH5HH=HH HHHH5HH=HH HHHH5HH=HL-L-VL-oL-xL-L-L-L-LՔLLLLLLLH HHHH5HH=HH HHHH5HH=HH HHHH5HH=HH HHHH5HH=HL-L-ƔL-ϔL-ؔL-L-L-L-L-5L->L-GL-PL-YH ZHLԔLݔLL-?H@HH5BHH=DHH FHHHHH5JHH=LHH NHHPHH5RHH=THH VHHXHH5ZHH=\HL-vL-L-L-L-L-L-L-L-L-L-L- H HLLLƔLHHH5HH=HH HHHH5HH=HH HHHH5HH=HLIL-PL-YL-bL-kL-tL-}L-L-L-L-L-L-HL-L-L-L-LIH sH5H=L-HHHHLILIHHHHLILIHHHHLILIHHHHLIL-хL-څL-L-L-L-L-L- L-)L-BL-KL-TLUIL-OLXLLH;HH>HL@ILBIHDHHGHLIILKIHMHHPHLRILTIHVHHYHL[IL-uL-~L-L-L-ɅL-҅L-ۅL-L-L-L-L-L IL-HHL?LHLQL-HHLILIHHHHLILIHHHHLILIHHHHLIL-BL-KL-TL-]L-vL-L-L-L-L-L-L-LIHHL-LLLHHLILIHHHHLILIHHHHLILIHHHHLIL-L-/L-8L-AL-JL-SL-\LIL-HHL-HHL~LLLLLL$L-MLNILPIHRHHUHLWILYIH[HH^HL`ILbIHdHHgHLiIL-L-L-L-L-DŽL-L- L-L-L-$L%IL-H HL-HHL-LoLxLLIL4ILfILMMcpIH߄HHHLIL5I8HHHHLIL5bI8L-_L-hL-qL-zL-L-L-L-L-ׄL-L%L-L-LtL}HLHLLLL-̄L5̈́I8L5҄I8L5ׄI8L5܄I8L5I8L5I8L5I8L5I8L5I8L5I8MN8L-cL-lL-uL-~L-L-L-L-L-L-L5L-L HĘ[A\A]A^A_]D莴ufo]IfoPfo`HH=fopfoepxfomfou@HH5|HP(L5X8`HhXph0IՄ-HHH9L<LسL1HIH HHtq1H= fDM L IH HLMtIHH1LIMMMuL=L9H I;H9tI LMuDH=yH;Ht˲H1L-gIL5UL<O>I$MMt1M M $M8M'H<L5LL% M$MtI1H5M$L%։L5߉O4HL1QILHLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5H1LoIMIL<M\M+I-MmM;I1HII9#H9uIupLL@~L@uH=*HH5ޑI.oH=SH=HUH5IH5"swL-;I. H52H8L`wH50H8MS8ICpH5-H8IH5+H8H50H8H55H8H5:H8H5?H8H5DH8H5IH8H5NH8HN8H5OHpH THpH5YHpH ^HpHY8L-wL-L-L-L-L-L-L-L-L-ȋL-ыL-ڋL-L-L-H5HƨL-H HHHàH5HƘH HHHàH5HƨH HHHèH5HƨH HHHèH5HƨH HH HàH5 HƠH HL-L-"L-KL-TL-]L-fL-oL-xL-L-L-L-L-LފLLHHèH5HƨH HHHèH5HƨH HHHàH5HƠH HHHèH5HƨH HHHèH5HƨH HHL-ЊL-يL-L-L-L-L-L-L-(L-1L-:L-CL-LL-UHVHèL-PH5QHƨLL-DH EHHGHH5IHH=KHH MHHOHH5QHH=SHH UHHWHH5YHH=[HH ]HL-L-L-L-L-L-ԊL-݊L-L-L-L-L- H HL-H5HL-H=HL-LTH HHHH5HH=HH HHHH5HH=HH HHHH5 HH= HH HL-GL-PL-YL-bL-kL-tL-}L-L-L-L-L-HHL-H5HL-H=HL-LTH L-L'IL)IH+HH.HL0IL2IH4HH7HL9IL;IH=HH@HLBIHL-L-L-WL-`L-iL-rL-{L-L-L-L-L-L-L-L-L-H5H=LIHHHHLILIHHHHLILIHHHHLILIHHHHLIL-~L-~L-~L-L-L-8L-AL-JL-SL-\L-eL-nL-wL-LIL~L~LmHnHHqHLsILuIHwHHzHL|IL~IHHHHLILIHHHHLIL-~L-~L-~L-~L-~L-~L-~L-~L-L- L-L-L-$L--L.IL-(L~H"HL5IHHL)IH+HL>IH HL2IH4HLGIH)HL;IH=HLPIL-j~L-s~L-|~L-~L-~L-~L-~L-~L-~L-~L-~L-~H~HL-~L-~L~IL-~H~HLX~L-~L~ILIH~MHML~IH~HH~HL5QI8L~IH~HH~HL5-I8L-:~L-C~L-L~L-U~L-^~L-g~L-p~L-y~L-~L-~L-~L-~L%~L-~L-~L-~LR~L[~Hd~Hm~Ln~L5~I8L5~I8L5~I8L5~I8MN8L-w~L-~L-~L-~L5~L-~L ~HĘ[A\A]A^A_]莡ufo]IfoPfo`HH=fopfoepxfomfou@HH5HP(L5X8`HhXph0IՄ-HHH9L<LؠL1HIH 1H&Htq1H= fDM L IH HLMtIHH1LIMMMuL=ԂL9H ʂI;H9tI LMuDH=H;Ht˟H1L-IL5uL<O>I$MMt1M M $M8M'H\LL51L1L%*M$MtI1H5 M$L%L5O4H`H CH`H=HH`HMH`H5RH`H WH`H=\H`HHHHHHƃHσH؃HHHHHHH`HH5H`HH H`HH=H`LUI`HH`H5H`H H`H= H`L .I`L3I`L8I`L=I`HHHHHHǃHЃHكH~H~H~H~H~H~L ~I`H~L~I`H~L~I`HQH5ZH cH=lH~L~I`L ~I`L~I`L~I`L~I`L ~I`L~I`L~I`L~I`L ~I`L~I`L~I`L~I`H7~H@~HI~HR~H[~Hd~Hm~Hv~H~H~H~H~H~L ~I`H~L~I`H~L~I`H~L~I`L ~I`L~I`L~I`L~I`L ~I`L~I`L~I`L~I`HC~HL~HU~H^~Hg~Hp~Hy~H~H~L ~I`H~L~I`H~L~I`H~H~H~H~H~I@`Lf~L o~Lx~L~H~]UH~HAWHTAVHyAUHATSH)pHH\1HWHDžTHEHHzDžPHHH݊HڊH׊HԊҊ?HϊH̊臕H;HvKH8HH9XL$L>HL1QILGHHLP1Ay7MMT$pfIIMc9IcQIIMcAMMMMcy L1HHHHHLHIcQH1HHHHHLLMcAH1IIIIMMcqMML1HHHHHLHH1HHHHHILLH1HIHILLLH1M9"L5CH1L/IMIL<M M+I-MmM I1HII9 H9uIupLL@~L@uH=*HuH5I. HwhH=aLH=HNuH5GBH5wI.L-*H5;H8H.H.wH5/H8Lb0H. H5&H8H5+H8H50H8H55H0H5:H8H5?H8H5DH0H5IH8H5NH8H5SH8L^8H~pH5PHƠLRIàH=THǘHVL-L-ЂL-)LBLKLTL]LfLLLLLLLłLނH5߂HƘLIØH=HǠH5HƠLIØH=HǐH5HƘLIØH=HǠH5HƠLIèH=HǠH5HƘLIØH=HǠL-L-L-GL-PL-YL-rL-L-H5łHƨLLL1LJLSL\LLLIèH=HǨH5HƨLIèH=HǨH5HƠLIØH=HǘH5HƠLIàH=HǠH5HƘLIàH=HǠH5LW8HLIL-L-L-EL-^LLLLLLāLLLL(L1L:H=;L<L=IxH5BHxLGIxLLI H5NHƠLPIØLRI H5THƠLVIèLXI¨H5ZHƨL\IèL^I H5`HƠLbIàL-L-ՁL->LOI LYH bLkLtLLLLLLʁLӁLLH5HpLIhLIhLI`LI`LIhL$IpL)IpL.IhL3IhL8IpL=IpHbxHhL%gxIpL-dL-}L-L-L-؁L-L-xH CH5THuL~LLLLLLLŁLwLwHwHpL%wIpHwHpL%wIhHwHhL%wIpHwHhL%xIhHxHpL% xIpHxHpL%xIpHxHhL%!xIhH&xHhL%+xI`L-hwL-wL-wL-xL- xLwLwL'wL@wLIwLbwLkwLtwL}wLwLwHwHhL%wIpHwHhL%wI`HwH`L%wIhHwHhL%wIhHwHpL%wIpHwHhL%wI`HwHhL%xIpHxHpL% xIpL-8wL-AwL-JwL-cwL-wL-wHwHpLvLvL%wL>wLGwLPwLywLwLwLwLwL%wIpHwHpL%wIpHwHhL%wI`HwHhL%wIpHwHhL%wIhHwHhL%wIhHwHpL%wIpHwHpL%wIpL-1wL-:wL-cwL-|wHwH@LvLvLvLwLwL7wLPwLYwLbwLkwLtwH }wL%~wI@HwHpL%wIhHwHhL%wIhHwHhL%wIpHwHpL%wIpHwHpL%wIpHwHhL%wIhMt$hML$pHwHpL-wL-wL-wL%wL-wL5wLvLvLvLvLvLwLwLwL wL9wLBwHSwH TwL-]wL ^wI0L cwI0L hwI0L mwI0L rwI8My8L swIpL wIhL-wIY8L-wL=[wIhL-XwL-wMipL=^wHwwL-wHvLvLwL wL%wL.wL /wL0wHĘ[A\A]A^A_]fD.ufo]IfoPfo`HH=@|fopfoepxfomfou@H|H5{HP(L5 |X8`HhXphЌIՄ-HHH9L<LxL1HI舄H {H{Htq1H=x{ fDM L IH HLMtIHH1LIMMMuL=4{L9H *{I;H9tI LMuDH=zH;HtkH1L-zIL5zL<O>I$MMt1M M $M8M'HzL5zLzL%zM$MtI1H5izM$L%VzL5_zO4zI8LCzI0LHzI8LMzI8LRzI8L-_yL-hyL-yL-yL-yL-yL-yL-yL-yL-zL- zL2yL;yLdyLyLyLyI8LyI8LyI8LyI8LyI8LzI8LzI8L zI8LzI0LzI0LzI8LzI8L#zI8HXtH0LzI8HRtH8L-?yL-HyL-QyL-ZyL-cyL-lyL-uyL-yL-yL-yL-yH=sL-sLTyL]yLyLyL-sHsH8HsH0HsH8HsH8HsH8HsH8HsH8HsH8HtH8HtH8H tH8L`pHP8L-psML$pMt$8L-osL 0tI8L-msL-vsL-sL-sL-sL-sL-sL-sL%sIL5sL-sL-sLrHsH5sHsLsLsL sIhL%sI`L sIhL sIhL%sIpL sIpL%sIhL sIhL%sIhL sIhL%sIhL sIpL%sIpL tIpL%sIpL tIpL-(sL-1sL-JsL-SsL-lsL-sL-sL-sL-sL-sL%sIpL-sLrLrLrL sL$sL-sL sIpL%sIpL sIpL%sIpL sI`L%sIhL sIpL%sMy8IhIypL-6sL-?sL-HsL-QsL-zsL-sL%sL-sL-sL=sL0sL9sL jsL{sH=|sHĘ[A\A]A^A_]f}ufo]IfoPfo`HH=hvfopfoepxfomfou@H;vH5$vHP(L55vX8`HhXph蘀IՄ-HHH9L<L@}L1HIPxH uHuHtq1H=u fDM L IH HLMtIHH1LIMMMuL=\uL9H RuI;H9tI LMuDH=!uH;Ht3|H1L-uIL5tL<O>I$MMt1M M $M8M'HtL5tLtL%tM$MtI1H5tM$L%~tL5tO4tLGtLPtH=QtHǨH StHH5UtHƘH=WtHǘH YtHH5[tHƨH=]tHǠH _tHH5atHƠH=ctHǨH etHH5gtHƠH=itHǠH ktHH5mtHƨL-sL-sL-sL-2tH=StHǨL]sLfsLsLsLsLsLsLsLsLsLsLtH tHH5tHƠH=tHǠH tHH5 tHƨH= tHǨH tHH5tHƨH=tHǨH tHH5tHƨH=tHǨH tHH5tHƨL-UsH=tHǨL0sLIsLRsL[sLdsLmsLvsLsLsLsLsLsLsLsH sLsH5sLsLmILmIHmHHmHLmILmIHmHHmHLmILmIHmHHmHLmIL-lLmIHmHH=rLlLlLlLlLlLlLlLlLlLmLmLmL"mL+mL4mH5mHL7mILimIL+mIH-mHH0mHLrmIL4mIH6mHH9mHL{mIL=mMMcpIH4mHH7mHL-lL-lL-lL-,mL-mILGlLPlLYlLlLlLlLlLlLlLlLlHlLlHlLlL5mI8L5mI8L5 mI8L5%mI8L5*mI8L5/mI8L54mI8L59mI8L5>mI8L5CmI8L5HmI8L5MmI8L5RmI8MN8L-klL%llLElLFlLGlLXlLalLjlLslL|lLlLlLlLlLlLlLlLlLlL5lLlL lHĘ[A\A]A^A_]fDpufo]IfoPfo`HH=ofopfoepxfomfou@HoH5oHP(L5oX8`HhXphXsIՄ-HHH9L<LpL1HIkH 9oH.oHtq1H= o fDM L IH HLMtIHH1LIMMMuL=nL9H nI;H9tI LMuDH=nH;HtnH1L-nIL5}nL<O>I$MMt1M M $M8M'HdnL59nL9nL%2nM$MtI1H5nM$L%mL5nO4mIHLSmI8HmHmHmHmHmHmHnHnHlHlHlL mI8HmHmHmHmH5mH=mHlL lLlHl]HmH mHALlHlLlH lHlfUH=mHrH=nHK]H5kmkDUH=ZmH`rH=nHbK]H5=HFH5hLwfH޺H=hEhB H5hLHKFFfI~fDodxHE.D)]L5 hHhHhHhh?HhHhcH;gIvKHHH9L$LfHL1aILgL=gLKL=xgLM@L#H ng1MLHMIMt5I3L9ft\H>Hu"@M9tIH?HtLG1LHI9tfHHLLL`AH=fdHH;]lH=,HDH5fdHH[A\A]A^A_]HfM^H2f.UH=iH`kH=gHbD]H5hUdDUH=H0[HHhQ[H=:,]qb@UH=ȮHSH[jE1AjH /%xHHjHH5-jHh[H E1HjH %xAH5-jHjjy[H E1HjH %xAH5y-jHjjK[H E1HjH h&xAH5-jHjj[H E1HjH &xAH5]-jHjj[H E1HjH <'xAH5ύ-jHjj[H E1HjH 'xAH5A-jHjj[H E1HjH (xAH5-jHjje[H E1HjH z(xAH5%-jHjj7[H HE1jH (xAH5-jHjj [H HH S)xjE1HAjH5-jj[H E1HjH )xAH5{-jHjj[H E1HjH 2*xAH5-jHjj[H E1HjH *xAH5_-jHjjQ[H E1HjH +xAH5ё-jHjj#[H E1HjH +xAH5C-jHjj[H E1HjH +xAH5-jHjj[H E1HjH l,xAH5'-jHjj[H E1HjH ,xAH5-jHjjk[H E1HjH P-xAH5 -jHjj=[H E1HjH -xAH5}-jHjj[H HH 1.xjE1HAjH5-jj[H E1HjH .xAH5a-jHjj[H E1HjH /xAH5ӕ-jHjj[H E1HjH j/xAH5E-jHjjW[H E1HjH /xAH5-jHjj)[H E1HjH >0xAH5)-jHjj[H E1HjH 0xAH5-jHjj[H E1HjH 1xAH5 -jHjj[H E1HjH |1xAH5-jHjjq[H E1HjH 1xAH5-jHjjC[H HE1jH X2xAH5c-jHjj[H E1HjH 2xAH5ՙ-jHjj[H E1HjH <3xAH5G-jHjj蹿[H E1HjH 3xAH5-jHjj苿[H E1HjH 4xAH5+-jHjj][H E1HjH 4xAH5-jHjj/[H E1HjH 5xAH5-jHjj[H E1HjH v5xAH5-jHjjӾ[H E1HjH 5xAH5-jHjj襾[H E1HjH Z6xAH5e-jHjjw[H HE1jH 6xAH5ם-jHjjI[H HH #7xjE1HAjH5D-jj E1HjH 7xAH5-jHjj[H E1HjH 7xAH5--jHjj追[H E1HjH D8xAH5-jHjj葽[H E1HjH 8xAH5-jHjjc[H E1HjH 9xAH5-jHjj5[H E1HjH j9xAH5-jHjj[H E1HjH 9xAH5g-jHjjټ[H E1HjH .:xAH5١-jHjj諼[H E1HjH :xAH5K-jHjj}[H E1HjH :xAH5-jHjjO[H HH Y;xjE1HAjH5*-jj![H E1HjH ;xAH5-jHjj[H E1HjH =xAH5i-jHjj;[H E1HjH =xAH5ۥ-jHjj [H E1HjH >xAH5M-jHjjߺ[H E1HjH l>xAH5-jHjj豺[H E1HjH >xAH51-jHjj胺[H HE1jH @?xAH5-jHjjU[H E1HjH ?xAH5-jHjj'[H E1HjH @xAH5-jHjj[H E1HjH ~@xAH5-jHjj˹[H E1HjH @xAH5k-jHjj蝹[H E1HjH RAxAH5ݩ-jHjjo[H E1HjH AxAH5O-jHjjA[H E1HjH &BxAH5-jHjj[H E1HjH BxAH53-jHjj[H E1HjH BxAH5-jHjj跸[H HE1jH LCxAH5-jHjj艸[H HH CxjE1HAjH5-jj[[H E1HjH DxAH5-jHjj-[H E1HjH rDxAH5m-jHjj[H E1HjH DxAH5߭-jHjjѷ[H E1HjH 6ExAH5Q-jHjj裷[H E1HjH ExAH5î-jHjju[H E1HjH ExAH55-jHjjG[H E1HjH TFxAH5-jHjj[H E1HjH FxAH5-jHjj[H E1HjH GxAH5-jHjj轶[H E1HjH bGxAH5-jHjj菶[H HH GxjHE1AjH5j-jja[H HE1jH HxAH5-jHjj3[H HE1jH pHxAH5S-jHjj[H HE1jH HxAH5Ų-jHjj׵[H HE1jH $IxAH57-jHjj詵[H HE1jH ~IxH5_-AjHjj{[H=LXH 軳[H]H=-:abf.UH=@HSH[[jE1AjH IxHHjHH5E.jHW[H E1HjH JxAH5.jHjjٴ[H E1HjH nJxAH5).jHjj諴[H E1HjH JxAH5.jHjj}[H E1HjH BKxAH5 .jHjjO[H E1HjH KxAH5.jHjj![H E1HjH LxAH5.jHjj[H E1HjH LxAH5c.jHjjų[H E1HjH LxAH5.jHjj藳[H HE1jH \MxAH5G.jHjji[H HH MxjE1HAjH5.jj;[H E1HjH @NxAH5+ .jHjj [H E1HjH NxAH5 .jHjj߲[H E1HjH $OxAH5 .jHjj豲[H E1HjH OxAH5 .jHjj胲[H E1HjH PxAH5 .jHjjU[H E1HjH zPxAH5e .jHjj'[H E1HjH PxAH5 .jHjj[H E1HjH NQxAH5I .jHjj˱[H E1HjH QxAH5 .jHjj蝱[H E1HjH "RxAH5- .jHjjo[H HH RxjE1HAjH5 .jjA[H E1HjH RxAH5.jHjj[H E1HjH `SxAH5.jHjj[H E1HjH SxAH5.jHjj跰[H E1HjH .AjHjj[H E1HjH fixH5W?.AjHjj蓦[H E1HjH ixH5I@.AjHjje[H E1HjH JjxH5;A.AjHjj7[H HE1jH jxH5-B.AjHjj [H HE1jH kxH5C.AjHjjۥ[H E1HjH kxH5D.AjHjj譥[H E1HjH kxH5E.AjHjj[H E1HjH dlxH5E.AjHjjQ[H E1HjH lxH5F.AjHjj#[H E1HjH HmxH5G.AjHjj[H E1HjH mxH5H.AjHjjǤ[H E1HjH nxH5I.AjHjj虤[H E1HjH ~nxH5J.AjHjjk[H E1HjH nxH5K.AjHjj=[H E1HjH BoxH5L.AjHjj[H HE1jH oxH5M.AjHjj[H E1HjH pxH5wN.AjHjj賣[H E1HjH hpxH5iO.AjHjj腣[H E1HjH pxH5[P.AjHjjW[H E1HjH 4qxH5MQ.AjHjj)[H E1HjH qxH5?R.AjHjj[H E1HjH rxH51S.AjHjj͢[H E1HjH rrxH5#T.AjHjj蟢[H E1HjH rxH5U.AjHjjq[H E1HjH 6sxH5V.AjHjjC[H HE1jH sxH5V.AjHjj[H HE1jH sxH5W.AjHjj[H HE1jH TtxH5X.AjHjj蹡[H HE1jH txH5Y.AjHjj苡[H HE1jH uxH5Z.AjHjj][H=>DH 蝟[H]H=22.Mbf.fUH=PHSH;[jE1AjH _uxHHjH5\.HjHC[H E1HjH uxH5-].AjHjj蹠[H E1HjH uxH5iAjHO[XZjjH uxE1HH5biHA'[Y^jjH vxE1HH59iHA[_AXjjH QvxE1HH5iHA֞[AYAZjjH vxE1HH5iHA謞[A[XjjH vxE1HH5iHA胞[XZjjH vxE1HH5iHA[[Y^jjH wxE1HH5YiHA3[_AXjjH UwxE1HH5GiHA [AYAZjjH wxE1HH5iHA[A[XjjH wxE1HH5iHA距[XZjjH xxHE1H5iHA菝[Y^jjH BxxE1HH5iHAg[_AXjjH yxxHE1H5qiHA>[AYAZjjH xxHE1H5FiHA[A[XjjH xxHE1H5!iHA[XZjjH .yxHE1H5iHAÜ[Y^jjH nyxHE1H5iHA蛜[_AXjjH yxHE1H5iHAr[AYAZjjH yxHE1H5viHAH[A[XjjH zxHE1H5LiHA[XZjjH JzxHE1H5#iHA[Y^jjH zxHE1H5iHAϛ[_AXjjH zxHE1H5iAH覛[H=?AYAZ&[H]H=;W.HbDUH=HSH˚[jE1AjH zxHHjH5Z.HjHt?w[H E1HjH {xH5Z.AjHjjI[H E1HjH }xH5iAjHߚ[XZjjH B}xE1HH5iHA跚[Y^jjH r}xE1HH5iHA菚[_AXjjH }xE1HH5iHAf[AYAZjjH }xE1HH5eiHA<[A[XjjH ~xE1HH5;iHA[XZjjH >~xE1HH5iHA[Y^jjH v~xE1HH5iHAÙ[_AXjjH ~xE1HH5iHA蚙[AYAZjjH ~xE1HH5iHAp[A[XjjH "xE1HH5iHAG[XZjjH bxHE1H5TiHA[Y^jjH xE1HH5+iHA[_AXjjH xHE1H5iHAΘ[AYAZjjH xHE1H5iHA褘[A[XjjH FxHE1H5iHA{[XZjjH xHE1H5iHAS[Y^jjH ƀxHE1H5[iHA+[_AXjjH xHE1H51iHA[AYAZjjH 3xHE1H5iHAؗ[A[XjjH jxHE1H5 iHA诗[XZjjH xHE1H5 iHA臗[Y^jjH ځxHE1H5 iHA_[_AXjjH xHE1H5` iAH6[H=g;AYAZ趖[H]H=;U.5DbDUH=HSH[[jE1AjH xHHjH5].HjH ;[H E1HjH xH5].AjHjjٗ[H E1HjH xH5_\.AjHjj諗[H E1HjH xH5[.AjHjj}[H E1HjH 2xH5Z.AjHjjO[H E1HjH ,xH5%Z.AjHjj![H E1HjH .xH5gY.AjHjj[H E1HjH 0xH5X.AjHjjŖ[H E1HjH 2xH5 iAjH[[XZjjH nxE1HH5n iHA3[Y^jjH xE1HH5E iHA [_AXjjH xE1HH5 iHA[AYAZjjH xE1HH5 iHA踔[A[XjjH ZxE1HH5 iHA菔[XZjjH xE1HH5 iHAg[Y^jjH ҃xE1HH5e iHA?[_AXjjH xE1HH5S iHA[AYAZjjH OxE1HH5+ iHA[A[XjjH xE1HH5 iHAÓ[XZjjH քxE1HH5 iHA蛓[Y^jjH xE1HH5 iHAs[_AXjjH UxE1HH5} iHAJ[AYAZjjH xE1HH5R iHA [A[XjjH ҅xE1HH5- iHA[XZjjH xE1HH5 iHAϒ[Y^jjH bxE1HH5iHA角[_AXjjH xHE1H5iHA~[AYAZjjH ߆xE1HH5iHAT[A[XjjH xHE1H5XiHA+[XZjjH ^xHE1H5/iHA[Y^jjH xHE1H5iHAۑ[_AXjjH ݇xHE1H5iAH貑[H=5AYAZ2[H]H=Q.>bUH=8|HSHې[jE1AjH xHHjH5^.HjH5臒[H E1HjH xH5-^.AjHjjY[H E1HjH xH5o].AjHjj+[H E1HjH xH5\.AjHjj[H E1HjH xH5[.AjHjjϑ[H E1HjH xH55[.AjHjj衑[H E1HjH xH5wZ.AjHjjs[H E1HjH xH5Y.AjHjjE[H E1HjH xH5iAjHۏ[XZjjH FxE1HH5iHA賏[Y^jjH ~xE1HH5iHA苏[_AXjjH xE1HH5iHAb[AYAZjjH xE1HH5aiHA8[A[XjjH :xE1HH57iHA[XZjjH zxE1HH5iHA[Y^jjH xE1HH5iHA迎[_AXjjH xE1HH5iHA薎[AYAZjjH ?xE1HH5iHAl[A[XjjH ~xE1HH5iHAC[XZjjH ƊxE1HH5PiHA^jjH xE1HH5'iHA[_AXjjH MxE1HH5iHAʍ[AYAZjjH xE1HH5iHA蠍[A[XjjH ҋxE1HH5iHAw[XZjjH xE1HH5iHAO[Y^jjH bxE1HH5WiHA'[_AXjjH xHE1H5-iHA[AYAZjjH ߌxE1HH5iHAԌ[A[XjjH xHE1H5iHA諌[XZjjH fxHE1H5iHA背[Y^jjH xHE1H5iHA[[_AXjjH xHE1H5\iAH2[H=s0AYAZ貋[H]H='S.19bUH=vHSH[[jE1AjH xHHjH5a.HjH0[H HE1jH xH5md.AjHjjٌ[H HE1jH 6xH5?g.AjHjj諌[H HE1jH XxH5j.AjHjj}[H=/H 轊[H]H=X.<8bff.UH=`/H`1H=-Hb ]H5B/U*DUH=uHSH+[jE1AjH xHHjH5(n.HjH.׋[H HE1jH $xH5}p.AjHjj詋[H HE1jH VxH5r.AjHjj{[H HE1jH xxH5!u.AjHjjM[H HE1jH xH5sw.AjHjj[H HE1jH ̎xH5y.AjHjj[H HE1jH xH5|.AjHjjÊ[H HE1jH xH5i~.AjHjj蕊[H=-H Ո[H]H=h.T6b@UH=-H/H=+H]H5r-u(DUH=sHSHK[jE1AjH xHHjH5.HjH,-[H HE1jH xH5.AjHjjɉ[H HE1jH &xH5.AjHjj蛉[H HE1jH PxH5.AjHjjm[H=,H 譇[H]H=.,5bff.UH=p,HP.H=*HR]H5R,E'DUH=rHSHE1AjH xHHjH5.HjH ,Lj[H HE1jH xH5.AjHjj虈[H=+H ن[H]H=>.X4bUH=+H-H=)H]H5+u&DUH=,HAVI AUATSHLHp*-H=)H,H5, &fo-qb1fDo-qbfDoTqbfo=qbLHfDo5qbfopbD)H=,fo pbfoqbD)@foqb)fo%qbfo5Oqb) fDo-Oqb)0)P)`)p))D)D)pD)D)D)D))))D)D)foqbfDo=pbfo 'qbfo/qbfDo%pbfo>qbD)fDopb)0fDo qbfDopbfo%qbD)fDo pbD)@D)D) D)))PD)`D))p)))D)D)D))))fo-pbfo5pbfo=pbfDo pbfDo5pb)fDo%pbfDopbfo pb)fDo=pbfopb)fDopb)fDo-QpbD)D))D)D)D) D)D)0D)@D)P)`D)D)p))D)D)foepbfo=pbfDo5pb)fDo-pbfDopb)fo pbfo5tpbfo%,pb)fDoobfo-$pb)fDo%dpb)D))D)D) ))p)D)D) )`)0D)D)@D)PD)PD)`fDo=obfobpbfo *pbfo2pbfDo9pb)fo-Zpbfo=bpbfoob)0fDoobfo%"pb)fDo ob)) )D)))`)))D) D)0D)@D)pD)pD)D)D)0D)@fDo5obfo5obfDo-ob)]fDo=obfDoob)PfDo%obfDoobD)@fDo obD)D)`D)p)PD)ED)D)}D)MD)D)ULu脕.L%_HfH5&LW foob1fofDoLfo=obHfo)@fDopH=&fo) fofDofoob)`fDofo nb)pfDonbfo%ob)fDo%'ob)D)0)P)D))D))D)D)D)))fofDofDofoD)@fofo)Pfo)`fo5nbfDo)pfDo enbfDolnb)fDolnbfo=tnbD) fDonbfDoD)0D))D)))))D)D)D)D) fo fDofopfDo nbD)Pfonbfo-EnbD)@fDonbfo5ibD)@fDo= ib)fDofDoibfo%,ibD)D)D) D)0)PD)pD)))PD))))`)fofDo%hbfofo5hbD)fDo-hb)fDo=hbfDo hb)fDohbfohbfo ibD)fDohbfo%hbD)fDo5hbD) D)D)0D)@D)0D)`)pD)D))))D)PD)D)fo=hbD)PfDoqhb)D))覉.LHH5fo@LfofDoHfDo`1fDo)fDoH=vfopfoD)fDofo0) fDo foD)0fDogbfogbD)@fDogbD)PD)`)p))D)D)))))D))foPfofDo`fo)`fDo ) fofDop)fDofo) fDofDo@foD)fDoPfo fbD)fo-fbD)@))0D)P)pD)D)D))))fDofofo)PfDofofo)fDo)fDo0foD)0fDo-,fbfDo 3fb)@)`)pD)D))D)D)D)))謆.LHH5Hp[A\A]A^]fDUH= ]HPq[jE1AjH yxH5E.HjHjHTr[H=HH ?q[H=.bff.UH=\HSHp[jE1AjH }xHHjH5.HjH<r[H HE1jH ~xH5.AjHjjYr[H HE1jH .~xH5o.AjHjj+r[H HE1jH 8~xH5.AjHjjq[H=H =p[H]H=Җ.bff.UH=HH=9H]H5bDUH=[HSHo[jE1AjH }xHHjH5.HjHWq[H HE1jH }xH5ݳ.AjHjj)q[H=H io[H]H=.bUH=HH=iH]H5DH5H=rHactivateHFHVHHHFFDH5rmHbatch_noH=#HFHVHHfNHF F|f.fH5iH=Hcolumn_rHFHVHIHFeducFeHF F*f.UH5&H=HSHdN0H}HH5H H5oH=Y4N0HHH5C H5DH= N0HHH5 H5H=M0H{HH5l H5H=~M0HRHH5hC H5ÔH=5M0H)HH5 H5H=gM0HHH5 H5mH=>M0HHH5 H5BH=ZM0HHH5D H5nxH=L0HHH5v H5CxH=L0H\HH5M H5xH=L0H3HH5i$ H5xH=6qL0HHH[H5] DH5leHdownsampH=SHFHVHHfNHF F f.fH5youH= HFfVH~HFdropFtHFF_ f.DH5IplHgemm_dowH=HFHVH$HFnsamfNFeHFF H5H=rHgemm_upsHFHVHHFamplFeHF F f.UH5'_cHSHHHW3H= HHH|[]u DUHSHHHCHO foG'zHHed_storeHH=H)HCHHHC@H[] UH5&-yHSHHiHq6H=ZHHH[] DUHAVLwAUATSL7HtdHHI[IHw*HuAECHLcB"[A\A]A^]HtHx_ LcHILLLH=bYfUH5 "H=AHSHTHHH5HH5H=$HHH5H5TH=HHH5H5)H=WHHH5A|H5H=HbHH5SH5ӏH=H9HH5*H5H=|WHHH5fH5}H=3.HHH5H5RH=HHH5H5~xH=HHH5H5SxH=XHlHH5B]H5(xH=HCHH54H5xH=aHHH[H5]DUH=8H H=9 H]H5DH5)ooHmasked_lH=3HFHVHHfNFpHF FH5H=Hmha_maskHFHVHYHHFFEDH5H=Hmma_loopHFHVHHHFFDH5mmH=mHFfVHHFaHFFfDH5H=2Hmma_pipeHFHVHHFlineHF F~f.@H5inoH=ݱHFfVHNHHFF:f.H5IorH=HFfVHHFop_fFmHFFf.DH5ooHoutput_lH=CHFHVHHfNFpHF FUH5lH=aHSHQ<HHfH5?HWH5ߋH= Q<H=HH5.H5H=Q<HHH5H5H=wbQ<HHH5aH5^H=.9Q<HHH5H53H=Q<HHH5H5H=P<HpHH5aH5݊H=SP<HGHH5=8H5H= P<HHH5H5xH=lP<HHH5H5xH=xCP<HHH5bH5xH=/P<HHH5H5]xH=O<HHHs[H5]eDH5YlcHpointwisH=îHFHVH4HFe_cafNHFFDH5)ivH=}HFfVHHFreceFeHFFf.DH5deH=-HFfVHHFreorFrHFFf.DUH5LH=AHSHT?HͭHFH5H7H5H=$?HHH5H5H=?HHH5H5iH=Wұ?HHH5AH5>H=話?HHH5H5H=耱?HyHH5jH5臒H=|W?HPHH5fAH5H=3.?H'HH5H5H=?HHH5H5xH=ܰ?HHH5H5xH=X賰?HHH5BH5hxH=芰?HHH5 tH5=xH= a?HHHS[H5 ]EDH59rnH=HFfVHHFgHFFfDH5H=rHrow_broaHFHVHHFdcasFtHF Ff.H5ceHrow_reduH=HFHVHHfNHF Flf.fUH5<H=1HSH4s@HH6H5H'H5H=s@H HH5H5H=r@HHH5zH5YH=Gr@HHH51H5.H=r@HHH5H5H=`r@HiHH5ZH5؄H=l7r@H@HH5V1H5H=#r@HHH5 H5H= q@HHH5 H5xH= q@HHH5{ H5xH=H q@HHH52 H5XxH= jq@HsHH5 dH5-xH= Aq@HHHC[H5 ]5DH5)ucHfull_redH=HFHVHHfNFeHF FUH5H=qHSH,AH=HH5OHH5/H=T,AHHH5~H5H=+,AHdHH5UH5قH=,AH;HH5q,H5H=>+AHHH5(H5H= +AHHH5 H5XH= +AHHH5 H5-H=c ^+AHHH5M H5H= 5+AHnHH5 _H5.xH= +AHEHH5 6H5xH= *AHHH5r H5xH=? *AHHH5) H5xH= *AHHH[H5 ]DH5i H="Hrow_set_HFHVHHFloopHF Fnf.@H59 H=ҥHKHFFsendHHFF,f.fH5 oaHshared_lH=HFHVHHfNFdHF FUH5H=aHSH8BH-HH5?HH5H= d8BH}HH5 nH5H= ;8BHTHH5 EH5H=w 8BH+HH5a H5H=. 7BHHH5 H5sH= 7BHHH5 H5HH= 7BHHH5 H5H=S n7BHHH5= xH5~H= E7BH^HH5 OH5xH= 7BH5HH5 &H5xH=x 6BH HH5b H5xH=/ 6BHHH5 H5xH= 6BHHH[H5 ]DH5Y H=Hshared_sHFHVHyHFtoreHF F^f.@UH5,H= HSH褛BHH&H5 HH5}H=I tBHHH53 H5t}H= KBHHH5 H5I}H= "BHHH5 H5}H=n BHHH5X sH5|H=% КBHYHH5 JH5|H= 觚BH0HH5 !H5|H= ~BHHH5} H5r|H=J UBHHH54 H5xH= ,BHHH5 H5sxH= BHHH5 }H5HxH=o ڙBHcHH5Y TH5xH=& 豙BHHH3[H5 ]%DH5 H=HupsampleHFHVHHHFFDH5y H=RHtransposHFHVHHFeHF FH5Y ceH= HFfVH~HFreduHFFcH59 maH=͟HFfVH>HFsoftFxHFFf.DUH5Ȇ~H=HSH CHmHH5HH5~H= CHHH5H5/~H=`k CHHH5JH5~H=B CHkHH5\H5%~H= CHBHH53H5~H=CHHH5o H5K~H=<CHHH5&H5~H=CHHH5H5!~H=uCHHH5H5X~H=aLCHuHH5KfH5~H=#CHLHH5=H5~H=CH#HH5H5~H=CHHH5pH5~H==CHHH5'H5~H= CHHH5 H5~H= VCHHH5 pH5i~H=b -CHVHH5L GH5~H= CH-HH5 H5H= CHHH5 H5H= CHHH5q H5=H=> CHHH5( H5H= `CHHH5 zH5+'H= 7CH`HH5 QH57H=c CH7HH5M (H5EH= CHHH5 H5VH= CHHH5 H5XH= CHHH5r H5n_H=? jCHHH5) H55|H= ACHjHH5 [H5,H= CHAHH5 2H5CH=d CHHH5N H5zH= CHHH5 H5qH=CHHH5H5H=tCHHH5sH5H=@KCHtHH5*eH5^H="CHKHH5CHrHH5(cH5H=CHIHH5:H5H=CH HH5H5Z.H=cCHHH5MH5Y<H=uCHHH5H5LH=LCHHH5H5NH=#CH|HH5rmH5.VH=?CHSHH5)DH5rH=CH*HH5H5H=CHHH5H5H=dCHHH5NH5:H=VCHHH5H51H=-CHHH5wH5H=CH]HH5sNH5wH=@CH4HH5*%H5H=CH HH5H5#H=CHHH5H5\H=e`CHHH5OH5^H=7CHHH5H5iH=CHgHH5XH5zH=CH>H5wH/H=HH=lHH[H5)]UH5v~H=Q HSHIH]HH5/ HH5~H= IHHH5 H5~H= 軕IHHH5 uH5~H=g 蒕IH[HH5Q LH5~H= iIH2HH5 #H5~H= @IH HH5 H5;~H= IHHH5v H5~H=C IHHH5- H5~H= ŔIHHH5 H5H~H= 蜔IHeHH5 VH5~H=h sIH<HH5R -H5~H= JIHHH5 H5~H=!IHHH5H5~H=IHHH5wH5 ~H=DϓIHHH5.H5~H=覓IHoHH5`H5Y~H=}IHFHH57H5~H=iTIHHH5SH5~H= +IHHH5 H5~H=IH˿HH5H5-~H=ْIHHH5xH5 H=E谒IHyHH5/jH5H=臒IHPHH5AH5'H=^IH'HH5H55H=j5IHHH5TH5FH=! IHվHH5 H5GH=IHHH5H5^OH=躑IHHH5ytH5%lH=F葑IHZHH50KH5H=hIH1HH5"H53H=?IHHH5H5jH=kIH߽HH5UH5aH="IHHH5 H5H=ĐIHHH5~H5H=蛐IHdHH5zUH5N H=GrIH;HH51,H5%H=IIHHH5H5UH= IHHH5H5#XH=lIHHH5VH5bH=#ΏIHHH5 H5tH=襏IHHHg[H5]YfUHHHAWAVLwAUATSH(GHGLwLw HG(HEH9H)HII@HLKHHt{HI9@@U`Hp0IWHx IHuHp I7HˬJMD$PIw IW(I|$@MD$@H謬J}LHLJIE(I_@H9]UH([A\A]A^A_]LcLZ(M9LIFHIw H;L]L]E`IHx H@0H3HSID$ HEH JIT$PHs I|$@IT$@HS(HJ}LLLIE(H@LLH蓵KIHt{HI9@@M`hL@0H3HSHx L@ IHLEvJML$PHs HS(I|$@ML$@HWJ}LLLIE(H@H9]HLLKIHCHAI9AEDMLcHr(I9HIFHtHHuH;Iw Hut0EM)IvIDXI)IDI}EMgHK(I9HIFHt#Hs I?HMHMt ECLH)H=1H=}E EIHfUH5xl~H=HAUATSH&}JHHH5HH5Q~H=RMJHfHH5<WH5؀~H= $JH=HH5.H5?~H=JHHH5H5΋~H=wҩJHHH5aH5~H=.詩JH·HH5H5~H=耩JHHH5H5[~H=WJHpHH5aH5ʬ~H=S.JHGHH5=8H5~H= JHHH5H5@~H=ܨJHHH5H5~H=x賨JH̶HH5bH5~H=/芨JHHH5H5M~H=aJHzHH5kH5~H=8JHQHH5BH5;~H=TJH(HH5>H5~H= JHHH5H5~H=轧JHֵHH5H5~H=y蔧JHHH5cH5~H=0kJHHH5uH5~H=BJH[HH5LH5uH=JH2HH5#H5 H=UJH HH5?H5CH= ǦJHHH5H5B+H=螦JHHH5H5;H=zuJHHH5dH5=H=1LJHeHH5VH5EH=#JH<HH5-H5aH=JHHH5H5tH=VѥJHHH5@H5H= 訥JHHH5H5#H=JHHH5H5H={VJHoHH5e`H5yH=2-JHFHH57H5`H=JHHH5H5H=ۤJHHH5H5H=W貤JH˲HH5AH5mKH=艤JHHH5H5MH=`JHyHH5jH5XH=|7JHPHH5fAH5iH=3JH'HH5H5IH=JHHH5H5pH=輣JHձHH5H5H=X蓣JHHH5BH5H=jJHHH5tH5"H=AJHZHH5KH54(H=}JH1HH5g"H5S.H=4JHHH5H54H=ƢJH߰HH5H5:H=蝢JHHH5H5DH=YtJHHH5C~H5NH=KJHdHH5 UH5XH= "JH;HH5 ,H5bH=~ JHHH5h H5,tH=5 СJHHH5 H5ㅉH= 觡JHHH5 H5H= ~JHHH5 H5aH=Z UJHnHH5D _H5ˉH= ,JHEHH5 6H5_H= JHHH5 H5H= ڠJHHH5i H5}3H=6 豠JHʮHH5 H57H= 舠JHHH5 H5k<H= _JHxHH5 iH5BH=[ 6JHOHH5E @H59IH= JH&HH5 H5pSH= JHHH5 H5]H= 軟JHԭHH5j H5oH=7 蒟JHHH5! H5H=iJHHH5sH5H=@JHYHH5JH5H=\JH0HH5F!H5H=JHHH5H5H=ŞJHެHH5H5`H=蜞JHHH5kH5H=8sJHHH5"}H5>H=JJHcHH5TH5eH=!JH:HH5+H5H=]JHHH5GH5H=ϝJHHH5H5H=覝JHHH5H5)H=}JHHH5lH5HH=9TJHmHH5#^H5wH=+JHDHH55H5H=JHHH5 H5$H=^ٜJHHH5HH5.H=谜JHɪHH5H58H=臜JHHH5H5BH=^JHwHH5mhH5TH=:5JHNHH5$?H5gH= JH%HH5H5GyH=JHHH5H5vH=_躛JHөHH5IH5H=葛JHHH5H5ĒH=hJHHH5rH53H=?JHXHH5nIH5H=;JH/HH5% H5H=JHHH5H5H=ĚJHݨHH5H5DzH=`蛚JHHH5JH5H=rJHHH5|H5ϋH=IJHbHH5SH5 H= JH9HH5o*H5;H=<JHHH5&H5zH=ΙJHHH5H5H=襙JHHH5H5H=a|JHHH5KH5'H=SJHlHH5]H5VH=*JHCHH54H5H=JHHH5p H5 H==ؘJHHH5'H5C.H=诘JHȦHH5H5PH=膘JHHH5H5qsH=b]JHvHH5LgH5H=4JHMHH5>H5H= JH$HH5H5H=JHHH5qH5 H=>蹗JHҥHH5(H5H=萗JHHH5H5όH=gJHHH5qH5H=c>JHWHH5MHH5YH=JH.HH5H5H=JHHH5H5 H=ÖJHܤHH5rH5H=?蚖JHHH5)H5H=qJHHH5{H5H=HJHaHH5RH5=H=dJH8HH5N)H5`H=JHHH5H5jH=͕JHHH5H5HuH=褕JHHH5sH5GH=@{JHHH5*H5H=RJHkHH5\H5H=)JHBHH53H5ԹH=eJHHH5O H5H=הJHHH5H5ɍH=讔JHǢHH5H5ۍH=腔JHHH5tH5H=A\JHuHH5+fH5H=3JHLHH5=H5H= JH#HH5H55H=fJHHH5PH5,%H=踓JHѡHH5H5GH=菓JHHH5H52LH=fJHHH5upH5QRH=B=JHVHH5,GH5`aH=JH-HH5H5{H=JHHH5H5ޯH=g’JH۠HH5QH5H=虒JHHH5H54H=pJHHH5zH5CɎH=GJH`HH5vQH5H=CJH7HH5-(H5H=JHHH5H5@H=̑JHHH5ֿH5"H=h裑JHHH5R譿H5.2H=zJHHH5 脿H5=MH=QJHjHH5[H5H=(JHAHH5w2H5H=DJHHH5. H5H=֐JHHH5H5H=譐JHƞHH5跾H5H=i脐JHHH5S莾H5gH= [JHtHH5 eH5H=2JHKHH5zKHHH5it{KH@HFH5Z{KHH H5@{KHHH5&{KHHH5yKH@H^H5yKHH$H5yKHHH5 nyKHHH5 zKH@HvH5/ zKHH<H5E pzKHHH5[ VzKHHH5q {KH@HH5 r{KHHTH5 X{KHHH5 >{KHHH5 t|KH@H&H5 Z|KHHH5 @|KHHRH5 !zKHHH5!!zKH@HH57!{KHHH5M!{KHHH5c!~vKHHH5y!dvKH@HvH5!JvKHH<H5!0vKHHH5!vKH HH5!uKH@ HH5!uKH HTH5!uKH HH5"uKH HH5)"uKH@ HH5?"zuKH HlH5U"`uKH H2H5k"6yKH HH5"yKH@ HH5"yKH HH5"xKH HJH5"xKH HH5"xKH@ HH5"xKH HH5#xKH HbH5#{KH H(H51#zKH@ HH5G#zKH HH5]#zKH HzH5s#zKHH@H5#zKH@HH5#{KHHH5#{KHHH5#{KHHXH5#l{KH@HH5#rsKHHH5 $XsKHHJH5#$>sKHHH59$$sKH@HH5O$ sKHHH5e$rKHHbH5{$rKHH(H5$rKH@HH5$rKHHH5$rKHHzH5$nrKHH@H5$TrKH@HH5$*vKHHH5%vKHHH5+%uKHHXH5A%uKH@HH5W%uKHHH5m%uKHHH5%uKHHpH5%tuKH@H6H5%wKHHH5%wKHHH5%wKHHH5%wKH@HNH5&wKHHH5&xwKHHH53&xKHHH5I&xKH@HfH5_&zxKHH,H5u&`xKHHH5&FxKHHH5&uKHHH5&$uKH@HH5'wKHH|H5%'wKHHBH5;'vwKHHH5Q'|oKH@HH5g'boKHHH5}'pKHHH5'~pKHH`H5'dpKH@H&H5'qKHHH5'qKHHH5'pKHHxH5(oKH@H>H5(oKHHH5-(qKHHH5C(pKHHH5Y(4rKH@HVH5o(rKHHH5(rKHHH5(6sKHHH5(sKH@HnH5(qKHH4H5(qKHHH5(~qKHHH5 )rKH@HH5)rKHHLH55)pvKHHH5S)VvKHHH5q)nKH޺H=JL%+I|$I9t/II|$ IL$0H9t I<$It$H9uI|$I9uLHHH5PRHR{HH5(CH5"H=PRH){HH5H5"H=PRH{HH5H5m"H=c~PRHzHH5MȚH5B"H=UPRHzHH5蟚H5nexH=,PRHzHH5vH5CexH=PRH\zHH5rMH5exH=?ORH3zHH5)$H5dxH=ORHHHz[H5]DUH5̲H=HSH褏RHMFHyH5H跙H5?!H=tRHyHH5s莙H5!H=@KRHtyHH5*eH5 H="RHKyHH5
cxH=A,RHUxHH5+FH5cxH=RH,xHH5H5bxH=ڍRHxHH5H5bxH=f豍RHHHw[H5K]ŗDUH5H=qHATS趯RHDHwH5QH艗H5H=膯RHowHH5`H5H=]RHFwHH57H5H=4RHwHH5sH5H=@ RHvHH5*H5eH=RHvHH5輖H5:H=蹮RHvHH5蓖H5H=e萮RHyvHH5OjH5H=gRHPvHH5AH5axH=>RH'vHH5H5`xH=RHuHH5tH5`xH=ARHuHH5+ƕH5`xH=íRHuHH5蝕L%H5}L藭RLH[HyuA\]qUH5LH=HSHtRHAHFuH5H7H5H=iDRHuHH5SH5H= RHtHH5 H5iH=RHtHH5輔H5>H=RHtHH5x蓔H5H=ERHytHH5/jH5H=wRHPtHH5AH5H=NRH'tHH5H5H=j%RHsHH5TH5^xH=!RHsHH5 ƓH5^xH=ӿRHsHH5蝓H5h^xH=調RHsHH5ytH5=^xH=F聿RHHHSs[H5+]EDUH5H=1HSHRH?HsH5HH5H=RHrHH5ޒH5dH=RHrHH5z赒H59H=GRHrHH51茒H5H=iRHrrHH5cH5H=@RHIrHH5:H5H=lRH rHH5VH5H=#RHqHH5 H5bH=RHqHH5近H5\xH=RHqHH5{薑H5c\xH=HsRH|qHH52mH58\xH=JRHSqHH5DH5 \xH=!RHHH#q[H5]DUH5쩖H=HSHTRHm=HpH5HאH5_H=I$RHpHH53讐H54H=RHpHH5腐H5 H=RHkpHH5\H5H=nRHBpHH5X3H5H=%RHpHH5 H5H=WRHoHH5H5]H=.RHoHH5}踏H52H=JRHoHH54菏H5^ZxH=RHuoHH5fH53ZxH=RHLoHH5=H5ZxH=oRH#oHH5YH5YxH=&aRHHHn[H5 ]DUH5H=1HSHSH=;HnH5H觎H5/H=tSHnHH5~H5H=KSHdnHH5zUH5H=G"SH;nHH51,H5H=SHnHH5H5H=SHmHH5ڍH5XH=lSHmHH5V豍H5-H=#~SHmHH5 舍H5H=USHnmHH5_H5.XxH=,SHEmHH5{6H5XxH=HSHmHH52 H5WxH=SHlHH5H5WxH=SHlHH5軌H5dH=mSHlHH5W蒌H5H=$_SHxlHH5iH5H=6SHOlHH5@H5H= SH&lHH5|H5`H=ISHkHH53H5WH=SHkHH5ŋH5ΒH=SHkHH5蜋H5œH=niSHkHH5XsH5H=%@SHHHRk[H5 ]D@UH5H=QHATS=SH7HkH51H H5H==SHjHH5H5fH=]=SHjHH5跊H5;H=i4=SHjHH5S莊H5H= =SHtjHH5 eH5H=HH9tlHD$1L-fM>IL$MI$HuCHMHFHHtHc@1H5)IH&I$M>MI$HtHHI$HHH$H0H@H9H.cH5HZH=SHHFHFPHD$HꮖHZH yHD$HD$(HHHD$0HHD$8HD$HHKHD$PHYHD$XHD$hHKHHD$pHHD$xHPH$HPlH$H$H!H$HP8H$H`H$HVH$HH$H$HVH$H֨Ht$ HHH$HV Ht$@HK(H$HHt$`HVTH$HWH$HWH$HH$H$HYH$H$HY:H$HYH$ HखH$(H$XHZH$`HעH$hH$HdH$HdH$HH$HdH$H$HH$0H5H$HeH$8H5äH$HH$HH5eH$H$HeH$@H$PHH$pHZrH$xHdH$H=៖H$HeH$HH$HH$H$HxH$HxH$Hy0H$H$He H$ HʜH$(HeH$0H H$8HxH$@HH$HH$hHxTH$pHߙH$xHyH$HH$H$HyH$HUH$HH$`*H$HxH$PH$XHHHH?HH|H;QHL=9H,$DHcUHcEy7L$HHHHHHHHHH11HIIIL4H|HLIH HthLI1LII9uWL9u;qu;y uHH$H9cHĸH%]H5~[H=6S]A\A]A^A_} }IċUMHHEH5CH=TAL$L=KAT$ H/ID$̀IՄ"HHH9L4Lu}L1HIxH HHtn1$f.HHHHHLMtIHHA1LIIH8HuH=wH9H=mH fH8H9tI LMuH=9HbH9th|H1L-$IL=I\$L4MIHt1HI$IL H8L=I\$MIHuHL%I$HtH@1H5M$HIHHt`HHxHy,HHlHzL=syHL=fHLHEttHX;;H;UTHH-DTHZHyL%HH24H$LD$5>TLHHYyL%xHH<=H$LD$>B>TLHHYyL%HHFHH$L >TLHHNYIyL%H$HL=TLHHYyL%rH$KL=TLHHXxL%"HfoL)$v=TLHHXxL%H$WLF=TLHHXxL%}H$YL=TLHHYXTxL%-H$ZLVHHVuHX[]A\A]A^A_ÿ8vLt$ LxLd$(HHLxLLt MIIAELLeH{ B HD$@HSHsHE(HC(HD$yIԄHsHH9L4L2vL1HIBqHKHCHti1H{#fIHHHHLMtAHHA01LIILMuLKL HKH8H9tI LMufDH;HC0H9t7uL1LcIL;HT$HD$Lm0I HHt&HHEHH(HC*L;HCHkHEHtH@01HsI,HCHLMyfMx\I|$uHELeLLH{sHEGHC0L{0HC0HK0JmH=,aqH=!aomHb8cIcf.fAWAVAUATUSHXHHD$ D$0HD$HD$0H{ HD$ HC0HHCHCHCC ?HC(HC0HD$(HD$@ qHH;CvDHHH9L$LsL1HnHH HkHt$(H|$ ik1HIHsLHT$HT$Ht$HUHtCH8t=HD$H|$ HH9trH=~UHHDR?rHX[]A\A]A^A_ÿ8&sLt$ LxLd$(HHLxLLt MIIAELLeH{ B HD$@HSHsHE(HC(HD$uIԄHsHH9L4LrrL1HImHKHCHti1H{#fIHHHHLMtAHHA01LIILMuLKL HKH8H9tI LMufDH;HC0H9twqL1LcIL;HT$HD$Lm0I HHt&HHEHH(HC*L;HCHkHEHtH@01HsI,HCHLMyfMx\I|$AqHELeLLHoHEGHC0L{0HC0HK0J+jH=l~anH=aakjH`p``f.fAWH5AVAUATUSHh H\$0H UH{(H5H[?HD$PUH{PH5H%?^HD$xUH{xH5H?BH$UHH?pfH5H$UHH?t>H5H$aUHH壑?&]H5H$H5H$hUHhH]Ϝ?BH5"H$UHHNp?8 H5%H$UHH?3fH5(H$UHH2?оH5+H$^UHHA?>H5.H$09UH0Hl{?ɿ>H51H$XUHXH4?H54H$UHH? %H57H$UHHRܙ?('H5:H$UHHNֆ?Y2H5EH$UHHW?#H5PH$ [UH H;?=*H5[H$H6UHHH=?޸#H5fH$pUHpH5x?N}H5qH$UHH?kH5|H$UHH坄?H5H$UHHo?xH5H$` UH` HsBp?H5H$ nUH HzYx?IVY>H5H$ IUH Hp m?v>H5)H$ $UH Ho?7>H54H$ UH H[k?P>H5?H$( UH-CHGh??H$P HE0HEH} HEHEHEE ?HE(HE0dIH;EvEHUHI9N,LfL1HaHHMLeHE IHD$ HEHD$(!H8tMI(H( I9IwI?iu^1HHHD$HuHT$Ht$L"UHu8CfM7HIH@MgHD$IELLt MI IAAEHD$MeH|$ B IG HUHuIE(Lu(hIԄHHH9HHHD$eHT$1HI`HMHEHtg1LL$(fDHHHHLMtDHA01LII4HHuHEHHMLH9I HLMuDH}HE0H9tdHD$1LeLuIHT$ DLuHD$IE0HD$I HHHIEHL(I(H( HEI9L dID$L9tII<$ID$H9uID$L9uH=wUHH=C8cHh []A\A]A^A_fDHHD$MMx~I|$cIEMeLLHkbIEfHELmIEHtH@01HuM,HD$(HHE0HM0HE0Lu0 \H=taq^H=pa`\SISTff.{f.AWAVAUATUSHXH6HD$ D$0HD$HD$0H{ HD$ HC0HHCHCHCC ?HC(HC0HD$(HD$@_HH;CvDHHH9L$LvbL1H]HH HkHt$(H|$ iKZ1HIHsLHT$HT$Ht$UHtCH8t=HD$H|$ HH9taH=.UHH@`HX[]A\A]A^A_ÿ8aLt$ LxLd$(HHLxLLt MIIAELLeH{ B HD$@HSHsHE(HC(HD$zdIԄHsHH9L4L"aL1HI2\HKHCHti1H{#fIHHHHLMtAHHA01LIILMuLKL HKH8H9tI LMufDH;HC0H9t'`L1LcIL;HT$HD$Lm0I HHt&HHEHH(HC*L;HCHkHEHtH@01HsI,HCHLMyfMx\I|$_HELeLLHk^HEGHC0L{0HC0HK0JXH=ma\H=qaZXHPQ'Qf.fAWAVAUATUSHXHHD$ D$0HD$HD$0H{ HD$ HC0HHCHCHCC ?HC(HC0HD$(HD$@[HH;CvDHHH9L$L^L1HYHH HkHt$(H|$ iV1HIHsLHT$HT$Ht$8UHtCH8t=HD$H|$ HH9t]H=nUHH4=/]HX[]A\A]A^A_ÿ8^Lt$ LxLd$(HHLxLLt MIIAELLeH{ B HD$@HSHsHE(HC(HD$`IԄHsHH9L4Lb]L1HIrXHKHCHti1H{#fIHHHHLMtAHHA01LIILMuLKL HKH8H9tI LMufDH;HC0H9tg\L1LcIL;HT$HD$Lm0I HHt&HHEHH(HC*L;HCHkHEHtH@01HsI,HCHLMyfMx\I|$1\HELeLLHZHEGHC0L{0HC0HK0JUH=\iaXH=QmaVTHMNN_Nf.fAWH5AVAUATUSHXHl$0HUH}(H5HB4?.Ԅ>HD$PlUH}PH5H芇?B6>HD$xMUH}xH5H"?FW>H$+UHHiR?|:?H5H$UHH0.?u9=?H5H$UHH ~?b7?H5H$UHHw̏?VH5H$@UH@H;ԃ?|>H5H$hrUHhH#?q2 ?H5H$MUHH.d?l6>H5H$(UHH0?ޒ>H5H$UHH?>H5H$UHHwׁ?>H5H$0UH0H> ?>H5yH$XUHXH*u?㟕>H5|H$oUHHt?!Q?H5H$JUHHZq?Gj?H5H$%UHH/t?r1a?H5H$UHHr?(f?H5H$ UH H~w? ?H5ێH$HUHHHoH{?7,?H5fH$pUHpH3N? M>H5iH$lUHHl?I2=H5H$GUHH>?a2>H5H$"UHH.?-H5"H$UHHć?>H5%H$8UH8H>}? "?H5(H$`UH`H#?G?H5+H$UHHސ?U>H5.H$iUHHȇ?Kz>H51H$DUHHo?->H5H$UHHQ?>H5H$(UH(Hw?A>H5H$PUHPHm?>H5H$xUHxHw?'?H5H$UHH8|?r:?H5H$fUHH9b?n&>H5H$AUHH:?nG=H5H$UH@H?wת=H$@HC0HCH{ HHCHCC ?HC(HC0RIH;CvDHQHI9lN,LUL1HPHH LcHC IHD$(HCHD$ H8tMI(HI9IwI?i-M1HHHD$HsHT$Ht$LUHu8TM7HIH@MgHD$IELLt MIIAAEHD$MeH|$(B IG HSHsIE(Ls(WIԄHHH9 HHHD$BTHT$1HIPOHKHCHt_1HHHHLMtDHA01LII4HHuHCHHD$ HKHH9I HLMuH;HC0H9tOSHD$1LcL3IHT$ L3HD$IE0HD$I HHHIEHL(I(HHCI9 LRID$L9tII<$ID$H9uID$L9uH=?UHH2RHX[]A\A]A^A_fDHHD$M'MI|$RIEMeLLH7QIEfDHCLkIEHtH@01HsM,HD$ H HC0Ls0+HC0HK0uKH=_aYOH=ca-MXKIAEEEfD[f.AWAVAUATUSHXHƮHD$ D$0HD$HD$0H{ HD$ HC0HHCHCHCC ?HC(HC0HD$(HD$@NHH;CvDHHH9L$LFQL1HYLHH HkHt$(H|$ iI1HIHsLHT$HT$Ht$UHtCH8t=HD$H|$ HH9tuPH=UHH/OHX[]A\A]A^A_ÿ8PLt$ LxLd$(HHLxLLt MIIAELLeH{ B HD$@HSHsHE(HC(HD$JSIԄHsHH9L4LOL1HIKHKHCHti1H{#fIHHHHLMtAHHA01LIILMuLKL HKH8H9tI LMufDH;HC0H9tNL1LcIL;HT$HD$Lm0I HHt&HHEHH(HC*L;HCHkHEHtH@01HsI,HCHLMyfMx\I|$NHELeLLH;MHEGHC0L{0HC0HK0JGH=[aKH=_acIGHsBBBf.fAWAVAUATUSHXHFHD$ D$0HD$HD$0H{ HD$ HC0HHCHCHCC ?HC(HC0HD$(HD$@JHH;CvDHHH9L$LML1HHHH HkHt$(H|$ i[E1HIHsLHT$HT$Ht$UHtCH8t=HD$H|$ HH9tLH=>UHH,KHX[]A\A]A^A_ÿ8LLt$ LxLd$(HHLxLLt MIIAELLeH{ B HD$@HSHsHE(HC(HD$OIԄHsHH9L4L2LL1HIBGHKHCHti1H{#fIHHHHLMtAHHA01LIILMuLKL HKH8H9tI LMufDH;HC0H9t7KL1LcIL;HT$HD$Lm0I HHt&HHEHH(HC*L;HCHkHEHtH@01HsI,HCHLMyfMx\I|$KHELeLLH{IHEGHC0L{0HC0HK0JCH=,XaGH=!\aECH? @@f.fAWH5AVAUATUSHHl$0HUH}(H5H?;ʽHD$PUH}PH5H`?HD$xUH}xH5HZ?`H$UHHM?oHH5H$fUHH.?H5H$AUHHϩ?nH5H$UHHȍ?IcH5H$@UH@H?>H5gH$hUHhHs?b->H5H$UHH?H5EH$UHH?H5HH$cUHHWA?H5KH$>UHHٍ? H5NH$0UH0HC4?NH5QH$XUHXHT?dH5H$UHH{?>H5H$UHHi|? >H5H$UHH#?2P>H5H$`UHH?IIH5`H$ ;UH H f?oIE?H5H$HUHHHjj?˚>H5&H$pUHpH-l?J>H51H$UHHh?k?H5<H$UHH;q?w>H5GH$UHHp?iù>H5H$]UHHձm?>>H5H$88UH8Hh?#?H5hH$`UH`Hn?>H5sH$UHHq?>H5~H$UHHۚj?& ?H5)H$UHHEBm?@>>H54H$UHHp?>H5?H$(ZUH(Hdi{?Iѹ>H5JH$P5UHPH t?>H5UH$xUHxH6p?>H5`H$UHHZo?>H5H$UHHe?FH5H$|UHH!r?$s>H5H$@WUH@Hsn?&>H5GH$h2UHhHpj?8>H5ҀH$ UHHl?Fb>H5-H$UHH Bx?9>H5H$UHHdw?Lb>H5SH$UHHׯr?c>H5H$0yUH0Hlrm?\V>H5iH$XTUHXHCn?">H5ԊH$/UHHm?>H5H$ UHHo?N>H5H$UHH6u? u>H5H$UHHEx?>H5H$ UH HFu?~x>H5 H$HvUHHH v?B>H5H$pQUHpHgr?">H51H$,UH@H V?:j?H$HC0HCH{ HHCHCC ?HC(HC0O?IH;CvDHHHI9tN,L BL1H=HH LcHC IHD$ HCHD$(H8tMI(HI9IwI?i91HHHD$HsHT$Ht$LZUHu8{AM7HIH@MgHD$IELLt MIIAAEHD$MeH|$ B IG HSHsIE(Ls(DIԄHHH9HHHD$@HT$1HI;HKHCHtg1LL$(fDHHHHLMtDHA01LII4HHuHCHHKLH9I HLMuDH;HC0H9t?HD$1LcL3IHT$ L3HD$IE0HD$I HHHIEHL(I(HHCI9LpK?ID$L9tII<$ID$H9uID$L9uH=UHHup>H[]A\A]A^A_fDHHD$MMx~I|$1?IEMeLLH=IEfHCLkIEHtH@01HsM,HD$(H HC0HK0HC0Ls07H=/Pa9H="La;74I45ff.f.HH=PDH=@HHNH5ߛB=fHH=Λ DH=y@HHH5=fHH=CH=I@HHH5$ZD$8D$Hd)T$P)L$p)$L-AH>H;H86?H3H0k3H;HQHL=Lf.Lc#H Γ1LMHIHHHt:HD9`H0Hu#DA9tpH6HtHcF1HHH9tP5HS@o#HHokos HAo{0HPHH=3L`hp(x8;WHHL9>H=WHHYH5[]A\A]A^A_C4A$f/C AhH H9EH5@ fA/$'HtBHH9wGL$L4L1H/HH ^H_gHwH p-HYH9Zff.HH=P:H=6HRH5F3fH=۽WH`)IH"HH573fHH=9H=I6HH5{2HH@HH=V9H= 6HHH582fUHEEtTH5GzHN HV~@~DFDFDNDNDVDVD^D^FFVVH9u]UH5ZH=՞HaHH5]H=s>a1f.@H=yHyH9tHf4Ht H=yH5yH)HHH?HHtH4HtfD=u}u+UH=/Ht H=^ ,dM}]wUIHH HH0H يH}H}HEHMHHHHEHEH=>an.ff.UIHfH HHPH H}H}H)EHMHHHEHEHEEE H=>a-fDUH51HN;K|]DzctfU1H5fHN*uH518t]fDH5i8uH5g+8uH5+8uH5h(8uH=(uH5E.{H5].HH HtDH L L;It8H Ht0LGf.I9tH HtHy1HIH9t1Hff.UHAWIAVIpAUIATSH(HMLELM/H5 rH}HLEHMHHLcHCH3I7L!IMeH([A\A]A^A_]I6:fDUHAWIAVIAUIATSH(HMLELM0/H5 qH}HLEHMHHLcHCH3I7LtIMeH([A\A]A^A_]I9fDUHAWIAVIAUIATSH(HMLELM.H5oH}HLEHMHHLcHCH3I7L IMeH([A\A]A^A_]I69fDUHAWMAVIAUIATSH(HUHMLM.HnHMH}LMHHHLcH1LHMLHCIMeH([A\A]A^A_]I8UHATISHHtHtxH)HHw-I\$HuI$HH+I$H=:a4*H=>a(UHATISHHtHtxH)HHwE$AEH HaHc4HfGf.HX[A\A]A^A_]@HX[A\A]A^A_]@M$I$L)HuAOH='1auD]A6A6A6fDLC@H .aI H=xa1uHX1[A\A]A^A_]D fDE$EAQFARFUAPFpHHuH}HMMHEHUH~LMfEHufDouD)}HXDPHtaH}HtSHPHH=Z/a1H v,a,A$AiBAH DGaNcIAfDA$A>k` L2_ULHLpIIHpHuLL hLu~}LmHX}PHt SLPM@1ҾH=.aA$)U * I HuLMHMMHUH~HELM9A$AA OH5FaNcIAfDM$XM+$PI {A.A LEaOc4MAf1I$I9$H=-a"D]A!AAM$M$M)I A}x H5M\ILILxIHLHLH0Huc'L}~ELuHXEPHtJHPDE$E7A'AL-DaOc\MA@A$Aq@H 1ҾH=>,aA$!M$L}LL21H}H=(aH}Ht EfEjLLLEMMMtH=AFMH=(a@@־xMtLEEH}Ht EEDUA?HAAVHH}HMHUMILMLHE5E$EoA9JA:JHA;JHuH}HMMHUH~HELMm1M$M9$H=)aBDuAGAH$AORI1M$ M9$H=)ar}5s6;t@E$E/A*AL-AaKcTLDI$M$I)IDWH=[)aAA*DuA:A:?IH `H5YULIHHIEMuIuHuL>ILXHuE1LxD}LpIILHuLDE1vH=AMHI}ICI ILH}MAyt AtM8M9@tA0M tM HuE1LDI8\LuD~EILmH @HDED)EI8#HXfDomDPHI`D}HuE1LpLpE1LWDLIHuIL1HAMIHIECI ILH}MI8Axt AtM8M9@tE0M EtM HuLDLuD~MIpLmDMD)MI H VULpHuLpIHLHL;ID}HuE1LpLpE1LVDLIHuILHAMIHIU$DI ILH}JII8yt tL8L9@tA0M tM HuLD LuD~]ILmD]D)]HD}HuE1L5-WE1IHHuIHPDL0LpLH IMIHIMBI ILH}FMI8A{t AtI8I9@tE0M EtM HuLD #LuD~UIXLmDUD)UHD}HuE1H ULpE1IHLHuHHPDHL@MIIM]DI ILH}?II8xt tL8L9@tE0M EtM HuLD"E1E1L=TLpIHHpHuLIL8D}HuDLfEMIIM]39I ILH}YIxt tL8L9@tE0Ek M HuALDI8WLu~mILmLCIm)mM8L TSD}IL@LpHuE1IDLLE1IHu L@MIIMU\AI ILH}BIzt tH8H9@tE0M EtM HuE1LDI8)LuD~eILmH%?HDeD)eI8kI`_D}HuE1L]RLpLpDLIHuILE1 L @MIIMMr2I ILH}(MI8Azt AtI8I9@tA0M tM HuLDa D}HuE1LQLpIIDLHuILHE1L HnCMIHIU9I ILH}AII8yt tL8L9@tA0M tM HuLD! D}HuE1IIE1LXHbQMuDLHuHIE LEMIIME@I ILH}[MAyt AtM8M9@tA0M tM HuALDI8>Lu~uILmH DHu)uI8Ipw HuE1E1LxD}LpIHPLHuHHD H GMIHIM5I ILH}@MI8A{t AtI8I9@tE0M EtM HuLDاLu~EILmE)Ep} D}HuE1L;PLpIIDLHuILHE1LHIHMIHIU:I ILH}<II8yt tL8L9@tA0M tM HuLD跬#Lu~MILmM)M~h| D}HuE1IIE1LXHyNMuDLHuHIELCMIIME$0I ILH}:MI8Ayt AtM8M9@tA0M tM HuLD Lu~]IxLm])]zInD}HuE1LMLpLpDLIHuILE1L $EMIIMM6I ILH}7MI8Azt AtI8I9@tA0M tM HuLDp!Lu~UILmU)UwIXkD}HuE1H aMLpLpE1DLIHuHHLaFMIIM]n9I ILH}4II8xt tL8L9@tE0M EtM HuLDlLu~eIhLme)euDHuHMMIHUH~LmLMHEI>fA8JI  LM UHuLEL5HLIILPIL0LpLb~QDlM$I$ L)HAMH=anHuILIILXHFM~LHIEb%AAtAM$M$M)IEUH= aAA8HwEHuHHxLxIIHLHL$AILmHMHUMHEILMLH HAFM$I$L)H= A}IL3EHuLLxLxIIILL;'#H I M HHIHIIIIIH3IHVH$IEIIIIHHIHHHPIyHH(IbHHzIlHHkIKII1HII^Iff.UHAWAVI8AUIATISH(IuIULxHHxHLxHI$HsiH{HC(Mn1IIIH4IHL&I|$0M$$MtI|$01HII9umI9uHSI;T$uLCIt$LULMLLE踀LMLUuL]M9tLHH(L1[A\A]A^A_]HLLAL聳H([A\A]A^A_]F f.HGHHGHGø f.LJ 1f.f.f. f.f f.ooNo V o0^0o@f@oPnPo`v`op~pDoDDoDDoDHH1f.U1HHHUHu~EL@LXE]f.HHH1f.1f.Hff.1f.HHHF1 f. f. f.f.1f.f.1f.f.f.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.DHHHPbhff.Df.Df.Df.DHHHPbhff.Df.DHHHPbhff.D1f. f.HH8Hf.f.f.f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.1f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.f.1f. f.HH8Hf.f.f.f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.1f.1f. f.HH8Hf.f.f.f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.1f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.f.1f. f.HH8Hf.f.f.f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.1f.1f. f.HH8Hf.f.f.f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.1f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.f.1f. f.o(o8NoHV oX^0ohf@oxnPov`o~pDoDDoDDoȖDHؖH1f.HH8Hf.f.f.1f.1f. f.HH8Hf.f.f.f.H)HHHHtHbpf.DHHHHHtHbpf.DHHHHHtHbpf.DUHSHHHHtHHH[]fHGHHHGGH[]f.H z tHH1f.HHHHt H1DHHt H1Df.UHSHHHHtHHH[]fHGHHHGGH[]f.H z tHH1f.HHHHt H1DHHt H1Df.UHSHHHHtHHH[]fHGHHHGGH[]f.H z tHH1f.HHHHt H1DHHt H1Df. H=`~f.@ H=`^f.@ H=`>f.@ H=c`f.@ H=C`f.@ H=#`f.@ H=`f.@ H=`f.@ H=`~f.@ H=`^f.@ H=`>f.@ H=c`f.@ H=C`f.@ H=#`f.@ H=`f.@FfD6fD&fDfDfDfDx fDfD fDpfD` fDfD`fD vfDffDHVfDFfD`6fD&fDfDHfDfDhfDpfDfDpfDXfDUHSHHH-HHHHtHRpHH߾[]aUHSHHHHHHHtHRpHH߾[]!UHSHHH}HHHHtHRpHH߾[]U1HATISHHH=v`u!H t$H[LA\]H@@[A\]fD[ A\]fDU1HATISHHH=`uu!H t$H[LA\]H@@[A\]fD[ A\]fDU1HATISHHH=`u!H t$H[LA\]H@@[A\]fD[ A\]fDUHAVAAUA1ATISHHH=`u'HD[DLA\A]HA^]H[A\A]A^]fUHAUI1ATISHHHH=`u(HLLHHH[A\A]]DH[A\A]]U1HATISHHH=F`uAH H=3`S u+HLH[A\]H@[A\]fD[ A\]fDUHAVAAUA1ATISHHH=`u'HD[DLA\A]HA^]H[A\A]A^]fUHAUI1ATISHHHH==`u(HLLHHH[A\A]]DH[A\A]]UHAVAAUA1ATISHHH=`;u'HD[DLA\A]HA^]H[A\A]A^]fUHAUI1ATISHHHH=]`u(HLLHHH[A\A]]DH[A\A]]f.f.f.f.{f.kf.[f.Kf.;f.+f.f. f.f.f.f.f.f.f.f.f.{f.kf.[f.Kf.;f.+f.f.UH;5HATISt H~H5aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5RaH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5RaH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5RaH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5RaH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5RaH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5RaH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5 aH9t1ۀ?*tuI\$H[A\]UH;5HATISt H~H5 aH9t1ۀ?*tquI\$H[A\]UH;5hHATISt H~H5R aH9t1ۀ?*t1uI\$H[A\]UH;5(HATISt H~H5 aH9t1ۀ?*tuI\$H[A\]UHATIHSH0HHHHMI|$H0HI$LH)I$H)ˁHHLH1[A\]f.H(d@H@H@H@HUHAWIAVAUATISH8H1HH=`!I$I8 1ҾIh H=`H9HMIH I 1HUL-x`HuLEI9 HxIH}LcI9hM)A1ҾLLEK9ULUMNMIt\It&1K9LtI1K9LNIf.1K9LM^L9u1K9L1K9Lt1K9LRIaL;Et I;X H8[A\A]A^A_]@IP Ht3HUfDHHIHtH;Y ~HIHuH;UtH;Z }QI HtLEIHvHoH;^ ~Hv@H8[A\A]A^A_]@HEMX I8 IH M$H}L93H}IM fI;$LMAM)AAI;$IIItzItZIt:ItJIK;HJIK;.JIK;JIK;JIK;JIK;L9UVMZJK;IrJI;MBHK;trIBJI;t\IzHI;tFMJHK;t0MZJK;tIJK;:M1I:H=f`Y!1ҾH=`>LnIH9I( I I9H}H{ I;$gLMȸI)AI;$IIItzItZIt:ItH HI;HH HI;.H HI;H HI;H HI;H HI;H9ELXH K;HPJ I;LPH K;trL@J K;t\HpJ I;tFLhH K;t0LHJ K;tHJ I;:L1H9H `1H=`lHHts]H{ff.UHAUATISHHHL\HIHVWN O v@wA|$L@{ML$LKET$ DS E\$!D[!El$"Dk"ID$$HC$AT$,S,AL$0K0AoD$8C8AoL$HKHAoT$XSXAo\$h[hIt$xHsxI$Ao$Ao$Ao$Ao$I$HM$LM$LM$LE$DE$DA$LLjI$A$HGH[A\A]]HLHdfUHAWAVAUATISH(H9LvHHHLϺM,$ID$MI)L)L}HILHML9M\$L]M)MILMM9H}LHHHHtZHt/H HLLEH(I LEI(IHLLEH($ LEI(IHLLEH( LEI(IHLLEH( LEI(IHLLEH( LEI(IHLLEH( LEI(IHLLEl H(I(Y HPIPF HxIx3 HI HI HI HIH@ LEI@ IPLUM9[HLϺM)I(ILIAItyItaItJIt3ItII]LI(SM}LI(AWIuLI(VIELI(PMMLI(AQIULI(RL9mMuLAVI(I(QMPIPAPMxIxARMIASIISMIAWIII@ VL9miH}I<$I|$H(L[A\A]A^A_]@MI| gM9pH}WHEILmL9ILϺLH)H-(HIHHHHtaHtBHt#HLLI(I(LLI(I(LLoI(I(LLVI(I(LL=I(I(LL$I(I(M9LLI(I(LHIL(I(LLPIPLLxIxLLILLILxLILbILM9>M|$I$I9YILϺLH)H(HIHHttHt^HtGHt1HtHLHH(ASH3HH(VHHH(PL HH(AQHHH(RL3HH(AVI9L+HAUH(H(QLPHPAPLxHxARLHASHHVHHPLHH@ AQI9kI$HtH3TH}I<$H}I|$bDM#LʃHH HHHtjHt7HH}HLH(LUI(NLUH}IH}HLH(LUI(!LUH}IH}HLH(LUI(LUH}IH}HLH(LUI(LUH}IH}HLH(LUI(LUH}IH}HLH(LUI(mLUH}IHH}LLUHH(I(5HPIP"HxIxHIHIHIIHI@ LUH@ H}IHM\$M,$LwHL]M)N<H]M9HLϺMM)I(ILIAIIItaItBIt#ILHI(H(LHI(H(LHI(H(LHI(H(LHI(H(LHI(H(M9LHtL(I(LLLXI(I(HBIPIPH,IxIxHIIHIIHIIHIIM9>UHEHLH(I(MGfDM]LI(ASH}HLH(LMI(?HMH}LQfDLHI(H(f.LHH(ARf.HLM(L(fH}LYHHHH;]uTHHLeM9u)TLeM $LAQLH(HUII$LI(RvVLWIfVLnHH}t H}~NSIAVLyWfUHATIHHSFHHv8GVԉWN؈ODFDGLNLODVDWD^D_FGHVHW܋NODFDGH9vLKHMT$8M9oC8AD$8oKHAL$HoSXAT$Xo[hA\$hL[xM\$xHI$H9sHM$L9oA$oA$oA$oA$HI$HI$I$LHM$LM$DE$A$A$0HI$A$ L[A\]DHI$HI$LM$LM$LM$HI$HI$HI$LM$@L[8M\$8HC@ID$@HSHIT$HHKPIL$PLCXMD$XH{`I|$`HshIt$hLKpML$pLSxMT$xf.UHAVAUATSLoHI9LIH)HHHH=(M/HHHHtmHtNHt/LsMt"AnuILRAn u ILQHLsMt An{HLsMt AnHLsMt AnHLsMt&AnuILRAn fHLsMt#AnuI6LVAn fDHLsMt AnHI9LsMt AnHLsMt AnLsMt AnLs(Mt AnGLs8Mt AnLsHMt AnLsXMt AnLshMt AnHpI9GI$HH[A\A]A^]TI@H1HHHHtiHt@LsMt3A~D_E^u"ILPAN QAV u I6LVHLsMtEFEHENAnHLsMtANQAVHLsMtA~D_E^HLsMtEFEHENAKHLsMt1ANQAVu!I6LVEF EHEN AfHLsMt3A~D_E^u"ILPAN QAV NDHI9RLsMtEFEHENAHLsMtANQAVLsMtA~D_E^Ls(MtEFEHENA>Ls8MtANQAVLsHMtA~D_E^LsXMtEFEHENALshMtANQAVLHpI9LD[A\A]A^]MLASAn ILPMLAQAn MLARI6LVAn jMLAP[ILRAn 1ILQ#MLASAn ILPMLAQAn gMLARXI6LVAn .MLAPILRAn ILQI6LVEF EHEN AMLARILPAN QAV 9I6LV+I6LVEF EHEN AMLARMLARA~ D_E^ ILPILPAN QAV YI6LVKMLARA~ D_E^ ILPI6LVEF EHEN AMLARMLARA~ D_E^ JILPMM<$Ml$Ml$?HLs L L9HSHKAI9AE H9L9AD AHPMAHHMIII A t\o oCLLf~fjf~Gfjf~Of~GoSo[f~Wfjf~_fjf~W f~_I9o"ojH@H@f~`fjf~hfjf~`f~horozf~pfjf~xfjf~pf~xDoBDoJfD~@fEjfD~HfEjfD~@fD~HDoRDoZfD~PfEjfD~XfEjfD~PfD~XH9HIM)ILLD;D?DsDwIt8D[D_DC DG It"DSDWKOItDKDO[_IT$I<$LvHHH)HL9YLH)HHHHHtpHtWHt>Ht!H"D D{HHDJDzDDCHHDZDB CHHJB3{HHrzDDKHHDRDJD;D[HHDzDZL9bDKH@H@DBJċsȋC̉rȉB̋{DSԉzDRDKD{DJDzD[DCDZDBKsJr{CzBDSDKDRDJL9ufDI;DSHHzDRfDDDKIWHEEO3DLYHHHtuHtVHt7Ht3HHM؉wCGD3HHIDwDSDWD HHIDOSWD;HHIDKODHHID_swHHIGDsDwDHHDWDKDOIH@H@WD{DċKȉOD[D_̋sЉwЋCԉGDsDwDSDWDKDOSWD{DKOD[D_swCGDsDwIuIAAIIItwItXIt9ItHHI‰WD{DD3HHIDwD[D_DHHIDGKOD HHIDOCGHHIWD{DD3HHIDwD[D_DHHDGKOID H@H@DOCĉGċSȉWD{DDsDwD[D_DCDG؋K܉ODKDOCGSWD{DDsDwD[D_DCDGKOI{Aw1UHAWAVAUATSHHH9tbLFL6IL?HOMM)L)LHHH9wMHHL)HHH9M9LLL ?L#LcHH[A\A]A^A_]E1Ht)HH9LLE7L;LEIM9tLLL>MtL6ML+Lc4Ht LL>H{L;MEMuHL)I4L9uMLcQfDLH)E>L#+0f.UHAVAUATSHHHL'm6MM,$LX6MtsMuLG6MtbM.L76MtRMeL&6MtAM,$L6Mt0MuL6MtM&L5LMsHCH;1H0HF1H{HCHCH9t [A\A]A^]5[A\A]A^]UHAWAVAUATISHH_HtH5HHEHUL@L8L3HS(M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VM9ILQM(I(APMPIPAQMxIxARMIASIIPIIRIII@ VM9lL8MtL3L LM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VM9ILQM(I(APMPIPAQMxIxARMIASIIPIIRIII@ VM9lLMtL52H{LkL9t #2H2MtLfDH2MuMt$I<$1I0J_-I|$ID$ID$L9tH[A\A]A^A_]1H[A\A]A^A_]ÐUHATL%S3SMtGt[A\]fGPWuHHQMt$s uLH[A\]MHA@s ~{ DUH(HSHHHHRHEHUHtH=2t/BHUH/H}Ht0HH[]fDBHH}Ht H9UH(HSHHHHRHEHUHtH=12t/BHUH/H}HtHH[]fDBHH}HtH19UH(HSHHHHRHEHUHtH=1t/BHUH.H}Ht0HH[]fDBHH}Ht H8UH(HSHHHHRHEHUHtH=11t/BHUH.H}HtHH[]fDBHH}HtH18UH(HSHHHHRHEHUHtH=0t/BHUH-H}Ht0HH[]fDBHH}Ht H7UH(HSHHHHRHEHUHtH=10t/BHUH-H}HtHH[]fDBHH}HtH17UHATSH(H HHRHEHUHtH=/tPBLeLHULHH}؉Ht H}HtH [A\]BIH}HtH}HtL6UH(HSHHH^HEH]HtH=/t*CHuH}HtH[]CHH}HtaH 6fUHATSH(H HHRHEHUHtH=.tPBLeL߾HULHH}؉HtH}HtH [A\]BIH}HtH}HtLS5UH(HSHHH^HEH]HtH=-t*CHuH}HtTH[]CHH}Ht1H4fUHATSH(H HHRHEHUHtH=R-tPBLeL诽HULHH}؉HtH}HtH [A\]BIH}HtH}Ht{L#4UH(HSHHH^HEH]HtH=,t*CHudH}Ht$H[]CHH}HtH3fUHATSH(H HHRHEHUHtH=",tPBLeLHULHPH}؉HtH}HtH [A\]BIH}HtYH}HtKL2UH(HSHHH^HEH]HtH=t+t*CHu4H}HtH[]CHH}HtHy2fUHATSH(H HHRHEHUHtH=*tPBLeLOHULH H}؉Ht`H}HtRH [A\]BIH}Ht)H}HtL1UH(HSHHH^HEH]HtH=D*t*CHuH}HtH[]CHH}HtHI1fUHATSH(H HHRHEHUHtH=)tPBLeLHULHH}؉Ht0H}Ht"H [A\]BIH}HtH}HtL0UH(HSHHH^HEH]HtH=)t*CHuH}HtH[]CHH}HtqH0fUHATSH(H HHRHEHUHtH=(tPBLeLHULHH}؉HtH}HtH [A\]BIH}HtH}HtLc/UH(HSHHH^HEH]HtH='t*CHuH}HtdH[]CHH}HtAH.fUHATSH(H HHRHEHUHtH=b'tPBLeL迷HULHH}؉HtH}HtH [A\]BIH}HtH}HtL3.UH(HSHHH^HEH]HtH=&t*CHutH}Ht4H[]CHH}HtH-fUHATSH(H HHRHEHUHtH=2&tPBLeL菶HULH`H}؉HtH}HtH [A\]BIH}HtiH}Ht[L-UH(HSHHH^HEH]HtH=%t*CHuDH}HtH[]CHH}HtH,fUHATSH(H HHRHEHUHtH=%tPBLeL_HULH0H}؉HtpH}HtbH [A\]BIH}Ht9H}Ht+L+UH(HSHHH^HEH]HtH=T$t*CHuH}HtH[]CHH}HtHY+fUHATSH(H HHRHEHUHtH=#tPBLeL/HULHH}؉Ht@H}Ht2H [A\]BIH}Ht H}HtL*UH(HSHHH^HEH]HtH=$#t*CHuH}HtH[]CHH}HtH)*fUHATSH(H HHRHEHUHtH="tPBLeLHULHH}؉HtH}HtH [A\]BIH}HtH}HtLs)UH(HSHHH^HEH]HtH=!t*CHuH}HttH[]CHH}HtQH(fUHATSH(H HHRHEHUHtH=r!tPBLeLϱHULHH}؉HtH}HtH [A\]BIH}HtH}HtLC(UH(HSHHH^HEH]HtH= t*CHuH}HtDH[]CHH}Ht!H'fUHATSH(H HHRHEHUHtH=B tPBLeL蟰HULHpH}؉HtH}HtH [A\]BIH}HtyH}HtkL'UH(HSHHH^HEH]HtH=t*CHuTH}HtH[]CHH}HtH&fUHATSH(H HHRHEHUHtH=tPBLeLoHULH@H}؉HtH}HtrH [A\]BIH}HtIH}Ht;L%UH(HSHHH^HEH]HtH=dt*CHu$H}HtH[]CHH}HtHi%fUHAWAVAUIATISHH^L6HtH=CEjILH(HLLSMAH MwI_HIMbAM4$L1+MO IcT$MwA$xHHLAo$hAIt$A]HAƇL%FyM}HDMIM'EHL[A\A]A^A_]DCC&H)I $LpLH@It$HHH+Ao$hHIcT$LH HA$xHHLAAH5~xDEAƇM}HEI73f.CIHtHLO#f.DUHHHt HHSHH}HHUHHH[]f.UHHHt HHSHH}H{HUHHH[]f.H H; t`UHHHH~HtH=Ct1AHMH E HtH1DAf.f.H H HH)HH9A tHvpUHSHHp~HtH=t@FHuHH E Ht1A u-H[]fDFf.f.H LG~OMtH=#t1A@LEH M HtH1[]fA@fUHHHSHH(HHxHMH}HtH=t@GHH}HuHUH}HHt"H(H[]GHH}HtH UHHHSHH(HHxHMH}HtH="t@GHH}HuHUH}HHtH(H[]GHH}HtiH UHHHSHH(HHxHMH}HtH=t@GHH}HugHUH}HHtH(H[]GHH}HtHUHHHSHH(HHxHMH}HtH=t@GHH}HuHUH}HHtrH(H[]GHH}HtIHUHAWAVIAUIATSHLbL:MtH=uID$HHLxL`HHMtH=2AD$IMLC(1IcULLC AxHK+HAohHIuLL xwƃIL MtULUILJHL[A\A]A^A_]AD$AD$AD$HDIIMtLLLUHAWAVIAUIATSHLbL:MtH=ID$HL@(MLMT$MAH7L{LcHHMWAM}L1+AxLC L{IcUHIuLAohHLƃL-qLƃIL+ILHL[A\A]A^A_]AD$AD$AD$DHQIMLxLH@AxHHH+AohHIcUL@ LHIuLHL pƃƃIIL 6AD$IMtLLL}f.UHAWAVIAUIATSHLbL:MtH=ID$xHAHLxL`HHMtH=AD$IMLC(1IcULLC AxHK+HAohHIuLL HtƃIL MtULILHL[A\A]A^A_]AD$AD$AD$HDIIMtLsLkLUHAUATSH(HH HRHHMHULHtH=tLBLeLHULHAH}ȉHtH}HtH([A\A]]BIH}HtH}HtL[f.UHSHHHHvHH]HuLHtH=t(FHuAH}HtLH[]FHH}Ht)HUHAUATSH(HH HRHHMHULHtH=FtLBLeL裡HULHAH}ȉHtH}HtH([A\A]]BIH}HtH}HtsLf.UHAWIAVIAUATLeSHHLHLLLLHAH}AHt HD[A\A]A^A_]IH}HtLUHAUATSH(HH HRHHMHULHtH=tLBLeLcHULHAH}ȉHtvH}HthH([A\A]]BIH}HtAH}Ht3Lf.UHSHHHHvHH]HuLHtH=Jt(FHuAH}HtH[]FHH}HtHQUHAWAVIAUATSH(H9L~L&HHGMM)H)MHLMIML9LoLH)HHII9<H}!H=MHAIItFI $H{H M|$I9t%Mt AGH{Ht L]L]L{IHMCI<$H;H{M|$I9t%Mt AGH{Ht LELEL{IHIM$H{LM|$I9t%Mt AGH{Ht LE@LEL{IHII$H{HM|$I9t%Mt AGH{Ht LELEL{ML$L{IL$M@LKHYILEH9t$Ht CIHt HMHMI_HAMgIGHYI|$H9t&Ht CI|$Ht HMjHMI\$Hq Mg Iw HY(I|$H9t&Ht CI|$Ht HM*HMI\$LELa0I_0II9tH{HHI9uLmM.MnH(L[A\A]A^A_]E1MtHI9 H} IM9@MLLM)IIIH=  A"IIIItqItJIt$M$MUIT$IUHtBIUID$LL HpHrHtFHHL L"L@LBMtA@HHHHHHHJHtAHHH8H:LXLZMtACHHLLLHLJMtAAHHH0H2L`LbMtAD$HHI9LLHXHZHtCHHH@HzHBHQHWHtBLYL_LQLWMtABLI LO Hq(Hw(HtFLa0Lg0LA8LG8MtA@HY@H_@HAHHGHHt@HQPHWPLYXL_XMtACLQ`LW`LIhLOhMtAAHApHWpI9M~M&M9t#@I|$H5IM9uM&MtLM.LmMn+@HHQH=G HHHtNI<$H;H{M|$I9t-Mt AGH{HtHUHuHuHUL{IHLRM$H{LMl$I9t-Mt AEH{HtHuLUALUHuLkIHIM$H{LM|$I9t-Mt AGH{HtHuLULUHuL{IHI#M $H{L Ml$I9t-Mt AEH{HtHuLUHuLULkM|$Md$LkMRLcI_I}LUH9t$Ht CI}Ht HuPHuI]IGMeIEI_I|$H9t&Ht CI|$Ht HuHuI\$IO Me IM I_(I|$H9t&Ht CI|$Ht HuHuI\$LUMg0I]0IMnIL~L&LH)IM9 LL)HHHH=z2HHHHtwHtNHt$I$IUMD$MEMtA@IIM$M]ML$MMMtAAIII$IEIL$IMHtAIIM$MUI\$I]HtCIII<$I}It$IuHtFIII$IUMD$MEMtA@IIM$M]ML$MMMtAAIIM9OI$IEIL$IMHtAMT$Md$I]MeMjLkMtAEIzH{IrHsHtFIR HS MB(LC(MtA@MZ0L[0MJ8LK8MtAAIB@HC@IJHHKHHtAMbPLcPMjXLkXMtAEIz`H{`IrhHshHtFMbpLkpM9ZfIM9fDHHtMI<$H;H{M|$I9t,Mt AGH{HtHUHuHUHuL{IHLRI$H{HMl$I9t,Mt AEH{HtHuLUHuLULkIHIM$H{LM|$I9t,Mt AGH{HtHuLU@HuLUL{IHIpM$H{LMl$I9t,Mt AEH{HtHuLULUHuLkID$M|$LkMJHCMgI}LMI9t%Mt AD$I}Ht HuHuMeIOMeIMI_I|$H9t%Ht CI|$Ht Hu_HuI\$MW Me MU I_(I|$H9t%Ht CI|$Ht Hu HuI\$LUMg0I]0IJ@*HHHHttHtKHt"M$MUI\$I]HtCIII$IUMD$MEMtA@IIM$M]ML$MMMtAAIII$IEIL$IMHtAIII<$I}It$IuHtFIIM$MUI\$I]HtCIII$IUMD$MEMtA@IIM9M$M]ML$MMMtAAIL$Md$I}MeLiLoMtAEHAHGHqHwHtFLQ LW HY(H_(HtCHQ0HW0LA8LG8MtA@LY@L_@LIHLOHMtAALaPLgPLiXLoXMtAEHA`HG`HqhHwhHtFLapLopM9AIItEI<$H;H{M|$I9t$Mt AGH{Ht L]L]L{IHMCM$H{LM|$I9t$Mt AGH{Ht LE@LEL{IHIM$H{LM|$I9t$Mt AGH{Ht LELEL{IHII$H{HM|$I9t$Mt AGH{Ht LELEL{ID$IL$L{MHHCLaILMI9t%Mt AD$IHt HMdHMMgHqMgIwHYI|$H9t%Ht CI|$Ht HM&HMI\$LA Mg MG HY(I|$H9t%Ht CI|$Ht HMHMI\$LELa0I_0IAIIIItoItJIt#I<$I}IL$IMHtAIUID$H0H2L`LbMtAD$HHLLHXHZHtCHHLLLPLRMtABHHLL HxHzHtGHHHH HpHrHtFHHL L"L@LBMtA@HHI9DHHLXLZMtACLHH@LRHBIQIRHtBIyIzIIIJHtAIq Ir Ma(Mb(MtAD$MA0MB0IY8IZ8HtCMY@MZ@IAHIBHHt@IQPIRPIyXIzXHtGII`IJ`IqhIrhHtFIApIRpI9]DLmIf.DUHAWAVIAUIATSHLbL:MtH=ID$HHL@(MLMT$MAHL{LcHHMWAM}L1+AxLC L{IcUHIuLAohH@LƃL-zWLƃIL+ILyHL[A\A]A^A_]AD$AD$AD$DHIMLxLH@AxHHH+AohHIcUL@ LHIuLHcL VƃƃIIL 6AD$IMtLLL-f.UHAWAVIAUIATSHLbL:MtH=ID$(HHLxL`HHMtH=bAD$IMLC(1IcULLC AxHK+HAohHIuL7L YƃIL MtULILzHL[A\A]A^A_]AD$AD$AD$HDIIMtL#LLHUHAUATISHHHsLLkH|MIuLI]L[HHsLLkH:MIuLuI]LHtxHsLXLkHMt[IuL;I]LHt>HsLLkHMt!IuLI]LHH[A\A]]Ðf.DUHHHATSHHHHhHHxLbLh裒HX藒L@HP脒H0xLcH(hH[A\]XUHHHATSHHHH`HBHxLbLhHXL@HPH0ؑLcH(ȑH[A\]鸑UHPHHATSHHHHpaHHPLbL@cH0WLcH(GH[A\]7UHHHATSHHHHPH"HLbLxHhאL@HPĐH0踐LcH(訐H[A\]阐UHXHHATSHHHH@AHHLbLCH7LhHx$HXL@HPH0LcH(H[A\]ُfUHHHATSHHHHhHHLbLp胏H`wLHHXdH8XLc H0HH[A\]8UHpHHATSHHHHhH"H`LbLPH@׎LH ĎH踎LH襎H虎LH膎HzLHgH[LcpHKH`[A\];f.UHSHHHH߾[]It(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLPMtL~L8L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL0MtLML0L{L(M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M7LAVM(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9lL(MtLXLLM9mILϺLL)H(HIHHHtlHtVHt?Ht(HtM7LI(AVMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAVMxIxAQMIARMIASIIPIII@ RM9kLMtLHI9WH]HHt+HH[A\A]A^A_]DHfH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9 HhH}HEHHJH;M H5PLLHH3M It$LMMt$LMIvL+MfLMIt$L Mt$LMIvLMfLMIt$LMt$LhMtcIvLMfLKMtFIt$LMt$L,Mt'IvLkMfLMfDL=LLxIHhM9lILϺMM)I(IMIAIItjItTIt>It(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLxMtL^L`LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLXMtLMgLPL@LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLPMtL5L8L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL0MtLML0L{L(M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M7LAVM(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9lL(MtLLLM9mILϺLL)H(HIHHHtlHtVHt?Ht(HtM7LI(AVMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAVMxIxAQMIARMIASIIPIII@ RM9kLMtL~HI9.H]HHt"HH[A\A]A^A_]L@HÐH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9 HH}HEHHJH;M H5HLLHH3M It$L Mt$LMIvLMfLMIt$LMt$LlMIvLMfLKMIt$LMt$L(MtcIvLgMfL MtFIt$LIMt$LMt'IvL+MfLMfDL=QLLxIHhM9lILϺMM)I(IMIAIItjItTIt>It(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLxMtLL`LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLXMtLMgLPL@LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLPMtLL8L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL0MtLfML0L{L(M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M7LAVM(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9lL(MtLLLM9mILϺLL)H(HIHHHtlHtVHt?Ht(HtM7LI(AVMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAVMxIxAQMIARMIASIIPIII@ RM9kLMtL>HI9.H]HHt"HH[A\A]A^A_] @HÐH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9HH}HEHHJH;MH5LLHH3M It$LMt$LpMIvLMfLOMIt$LMt$L,MIvLgMfL MIt$LEMt$LMtcIvL'MfLMtFIt$L Mt$LMt'IvLMfLMfDL%LLI|$HM9lILϺMM)I(IMIAIItjItTIt>It(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLNM|$LxLhLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLxMtLL`LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLXMtL$M|$LPL@LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLPMtLL8L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL0MtLL0L(Md$LcM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M'LAT$M(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9kL(MtLaLLM9oILϺLL)H(HIHHHtmHtWHt@Ht)HtM'LI(AT$MLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAT$MxIxAQMIARMIASIIPIII@ RM9jLMtLHI9H]HHt"HH[A\A]A^A_]@HÐH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9 HH}HEHHJH;M H5LLHH3M It$L]Mt$LMIvL;MfLMIt$LMt$LMIvLMfLMIt$LMt$LxMtcIvLMfL[MtFIt$LMt$LIt(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLnLpLhM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLhMtL߾MgLPL@LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLPMtLEL8L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL0MtL趻ML0L{L(M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M7LAVM(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9lL(MtLLLM9mILϺLL)H(HIHHHtlHtVHt?Ht(HtM7LI(AVMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAVMxIxAQMIARMIASIIPIII@ RM9kLMtL莸HI9.H]HHt"HH[A\A]A^A_]\@HÐH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9 HH}HEHHJH;M H58LLHH3M It$LMt$LMIvLMfL蟷MIt$LMt$L|MIvLMfL[MIt$LMt$L8MtcIvLwMfLMtFIt$LYMt$LMt'IvL;MfL߶MfDL=aLLIHpM9lILϺMM)I(IMIAIItjItTIt>It(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL.LhL`M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL`MtL蟳MgLXLHL`M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLXMtLL@L8M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL8MtLvML8L{ L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M7LAVM(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9lL0MtL߮LLM9mILϺLL)H(HIHHHtlHtVHt?Ht(HtM7LI(AVMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAVMxIxAQMIARMIASIIPIII@ RM9kLMtLNHI9.H]HHt"HH[A\A]A^A_]@HÐH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9lHH}HEHHJH;MoH5pLLHH3M It$LݵMt$L耬MIvL軵MfL_MIt$L虵Mt$LIt(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL`MtLLHL@M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL@MtL^M|$L LL(M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL MtLæLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL4M|$LLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL虣LLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL M|$LLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLoLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLM|$LLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLELLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL趛LLMd$LcpM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M'LAT$M(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9kLMtLLhL`M9oILϺLL)H(HIHHHtmHtWHt@Ht)HtM'LI(AT$MLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAT$MxIxAQMIARMIASIIPIII@ RM9jL`MtL芘HI9H]HHt.HH[A\A]A^A_]XHfH[A\A]A^A_]ÐUHHHAVAUATSLHHMLIt$L@Mt$LMIvLMfL—MIt$LMt$L蟗MIvLڠMfL~Mt|It$L輠Mt$L_Mt]IvL螠MfLBMt@It$L耠Mt$L#Mt!IvLbMfLMHHxLjLhO4HXC4L@HP04H0$4LkH(4H4H߾[A\A]A^]#UHHHAVAUATSLHHMLIt$L萟Mt$L3MIvLnMfLMIt$LLMt$LMIvL*MfLΕMt|It$L Mt$L试Mt]IvLMfL蒕Mt@It$LОMt$LsMt!IvL貞MfLVMHޔHPLjL@2H02LkH(2Hw2H߾[A\A]A^]钕fUH(HHAVAUATSLHHMLIt$LMt$L裔MIvLޝMfL肔MIt$L輝Mt$L_MIvL蚝MfL>Mt|It$L|Mt$LMt]IvL^MfLMt@It$L@Mt$LMt!IvL"MfLƓMHNHLjLp1H`1LHHX0H80Lk H00H0H߾[A\A]A^]UHHHAVAUATSLHHMLIt$LPMt$LMIvL.MfLҒMIt$L Mt$L诒MIvLMfL莒Mt|It$L̛Mt$LoMt]IvL讛MfLRMt@It$L萛Mt$L3Mt!IvLrMfLMHHLjLx_/HhS/L@HP@/H04/LkH($/H/H߾[A\A]A^]3UHHHAVAUATSLHHMLIt$L蠚Mt$LCMIvL~MfL"MIt$L\Mt$LMIvL:MfLސMt|It$LMt$L运Mt]IvLMfL袐Mt@It$LMt$L胐Mt!IvL™MfLfMHHxLjLh-HX-L@HP-H0-LkH(t-Hh-H߾[A\A]A^]郐HUHAUATISHHHsLLkH謏MIuLI]L苏HHsLLkHjMIuLuI]LIHtxHsLXLkH,Mt[IuL;I]LHt>HsLLkHMt!IuLI]LՎHH[A\A]]Ðf.DUHAVAUATIHXSHwI$8I$(I$I$I$I$sI$I$^It$xI|$hOIt$HI|$8@I|$ HtMl$I$I9LH)HHHH=,HHHHtpHtQHt2LsMt%AnuILRAn u ILQHLsMt AnHLsMt An6HLsMt An%HLsMt AnuILRAn HLsMt#AnuI6LVAn 6fDHLsMt AnWHI9LsMt AnHLsMt AnLsMt AnLs(Mt AnZLs8Mt AnLsHMt An LsXMt AnLshMt AnHpI9GI$HH[A\A]A^]ԋ@H9HHHHtpHtGLsMt:A~D_E^u)ILPAN QAV uI6LVHLsMtEFEHENAHLsMtANQAV$HLsMtA~D_E^ HLsMtEFEHENAHLsMt2ANQAVu"I6LVEF EHEN A#HLsMt3A~D_E^u"ILPAN QAV DHI9JLsMtEFEHENA,HLsMtANQAVLsMtA~D_E^Ls(MtEFEHENAnLs8MtANQAV!LsHMtA~D_E^LsXMtEFEHENALshMtANQAVHpI9DD[A\A]A^]MLASAn ILP@MLAQAn MLARI6LVAn TMLAPE@ILRAn ILQ DMLASAn ILP@MLAQAn DMLAR5I6LVAn MLAP@ILRAn ILQDI6LVEF EHEN AMLARfILPAN QAV I6LVDI6LVEF EHEN AMLARfMLARA~ D_E^ sILPeILPAN QAV &I6LVDMLARA~ D_E^ ILPI6LVEF EHEN AZMLARKfMLARA~ D_E^  ILPMLAQAn MLARMLARA~ D_E^ RILPDMLASAn ILP@ILPAN QAV I6LVDI6LVZfMLAPI6LVAn MLAP @MLARfMLARA~ D_E^ ILPILQfMLAQAn MLARI6LVEF EHEN AMLARf.UHAWAVAUATSHHLL M9H==M4 LL)HHHHHHtzHtZHt:HtMfMt Al$MfM|$Mt Ao}IM|$Mt Ao IM|$Mt AoqIM|$Mt AoO IM|$Mt!AouI7LVAo  @IM|$Mt"AouMLAQAo $ @IM9M|$Mt!AouMLASAo { IM|$Mt"AouILRAo ] DM|$MtAouI7LVAo A M|$(Mt&AouMLAQAo ( M|$8Mt&AouMLASAo  M|$HMt&AouILRAo  fM|$XMt&AouI7LVAo Y fM|$hMt&AouMLAQAo  IpM9L L8L;@tL@L`LPMIwLMwLvMIvLM~LUMIwL`MwL4MIvL?MfLMt~It$L!M|$LMt_IwLMgL׀MtBIt$LMt$L踀Mt#IvLM~L蛀MfLHXHǃ`LHhHpHǃxMIt$LaMt$L4MIvL?MfLMIt$LM|$LMIwLMgLMtzIt$LMt$LMt[IvLM~LMt>IwLMwLvMt!IvLMfLYMLHHǃLHHHǃMIvL"M~L~MIwLMgL~MIt$LMt$L~MIvLM~L~Mt|IwLMwLt~Mt_IvLMfLW~MtBIt$LeM|$L8~Mt#IwLGMwL~MfLHHǃLHHHǃMIvLM~L}MIwLMgL}MIt$LMt$Lr}MIvL}M~LQ}Mt|IwL`MwL4}Mt_IvLCMfL}MtBIt$L%M|$L|Mt#IwLMwL|MfL HHǃLHHHǃMIvLM~Lv|MIwLMgLU|MIt$L_Mt$L2|MIvL=M~L|MtzIwL MwL{Mt]IvLMfL{Mt@It$LM|$L{Mt!IwLMwL{MHHǃ H=p_H(H01Hǃ8Hǃ0H[A\A]A^A_]@xLL)HHHrH!HHHHtsHt%MfMtE\$ACAD$AMfM|$Mt:EOEQEWAu(MLASA GAG uILRDIM|$MtAOqAwIM|$MtAGAGIM|$MtEOEQEWAIM|$MtAOqAwnIM|$Mt0AGAGu ILRAO qAw #IM9M|$Mt9fEOEQEWAuMLASA GAG IM|$Mt2AOqAwu"MLAPEO EQEW A2fM|$Mt6AGAGu&ILRAO qAw  fM|$(Mt6EOEQEWAu$MLASA GAG fDM|$8Mt6AOqAwu&MLAPEO EQEW AfDM|$HMt6AGAGu&ILRAO qAw fM|$XMt6EOEQEWAu$MLASA GAG fDM|$hMt6AOqAwu&MLAPEO EQEW AfDIpM9M|$M MLAPEO EQEW ArMLAScILRAo ILQDMLASA GAG ILR@MLAQAo MLARMLAPEO EQEW AZMLASKMLAPILPzfILQfMLAPMLARILPfILQfMLARaMLARMLAPILRfMLASMLAPILR"fMLASQMLASILR2fMLAPMLAPI7LVAo nMLAP_@MLASAo yILPk@ILRAO qAw MLAPI$LRAl$ I $LQI$LRAL$ qAt$ M$LAPf.@HUHAUATISHHHsLLkHltMIuLI]LKtHHsLLkH*tMIuLuI]L tHtxHsLXLkHsMt[IuL;I]LsHt>HsLLkHsMt!IuLI]LsHH[A\A]]Ðf.DUHAWAVIHAUIHATSH(NOF9GVW^_DFDGDNDOHAMIdžIdžMAIdžMMIDžMIIIMIIIM9XI?(MLM)IIMIAIttIt^ItHIt1ItI7H3HHàVLHHàARLHHàASHHHàPHHHàRLHHàAPI9L HAQHHQH@H@VLHARL"H"ASH +H +PH3H3RL`<H`<HEAPI9lMtL!qfMIdžMAIIMIDžIMIIIIIM9XIooMLM)I IMIAIttIt^ItHIt1ItI5HHH RLHH APL HH AQH HH QH3HH VLHH ARI9LHASH H PHHRL@H@APL'H'AQH0H0QH:H:VL@DH@DHNARI9lMtL=ofMIdž(M AIIM IDžI M I(I I(I(I(M9XI?(MLM)IIMIAIttIt^ItHIt1ItIF4H3HHàVLHHàARLHHàASHHHàPHHHàRLHHàAPI9L HAQHHQH@H@VLHARL"H"ASH +H +PH3H3RL`<H`<HEAPI9lMtLYmfM0Idž@M8A0I0I0M8IDž0I8M8I@I8I@I@I@M9XIMLM)IIMIAIttIt^ItHIt1ItI2HHHÀRLHHÀAPL HHÀAQH HHÀQH3HHÀVLHHÀARI9LHASHHPHHRLHAPLHAQH%H%QH-H-VL4H4H<ARI9lMtLukfMPIdžXMHAHIHLeIHMPIDžHIPMPIXIPIXIXIXM9JL+yMLE H5kI$HI4$I$tLEjI$`IZI$PI$@I$I$ I$I$I$I$I$I$I$I$I$|I$oI\$pI$]I$`IIL9et+M $IIH;MLIL9euMtLifIhIdžpI`A`M`H}M`IhIDž`MhIhMpMhIpMpIpH9H)LvIHLE&L IIH;M*0H5#kHHH3HrLZhHMzLpH`LHHXH8L{ H0HLL9}%HtHChfMxIdžMAxIxIxMIDžxIMMIIMIM9VI'LLL)H-HIHHtuHt^HtHHt1HtH-H3HHVLHHARLHHASHHHRLHHAPHHHPI9L HAQHHQH%H%VL8H8ARLKHKASH`^H`^RL@qH@qAPH H HPI9lMtLaffMIdžMAIIMIDžIMIIIIIM9XIgoMLM)IIMIAIttIt^ItHIt1ItI*,LHHøAPHHHøPL HHøAQH HHøQH3HHøVLHHøARI9LHASHHRLpHpAPH(H(PL H AQH H QHPHPVLHHARI9lMtL}dfMIdžMAIIMIDžIMMIIMIM9VIl pLLL)H- HIHHtuHt^HtHHt1HtH)H3HH VLHH ARLHH ASHHH RLHH APHHH PI9L HAQH H QHHVL#H#ARL`/H`/ASH8;H8;RLGHGAPHRHRH^PI9lMtLbfEMIdžMEIIMIDžIMIIIIIM9XITMLM)IIMIAIttIt^ItHIt1ItI'LHHèAPHHHèPL HHèAQH HHèQH3HHèVLHHèARI9LHASHHRLP HP APHHPLHAQHHHHQH!H!VL'H'H@-ARI9lMtL`fEMIdžMEIIMIDžIMMIIMIM9VILLL)H-HIHHtuHt^HtHHt1HtH@%H3HHVLHHARLHHASHHHRLHHAPHHHPI9L HAQHHQHHVLHARLHASH'H'RL/H/APH7H7H?PI9lMtL^fEMIdžMEIIMIDžIMIIIIIM9XIKh/MLM)IIMIAIttIt^ItHIt1ItI;$LHHðAPHHHðPL HHðAQH HHðQH3HHðVLHHðARI9LHASHHRL`H`APHHPLHAQHpHpQH H VL H HÀ ARI9lMtL\fEMIdžMEIL}IMIDžIMMIIMIM9HCiM)LHELM $IIH;M#H5tYI$HI4$I$geL[I$MzM$gI$ZM$hI$xEI$X8M$@I$P#I$0M|$I$(I$I$H9]DMtLc[fEM Idž0M(E M M M(IDž I(M(I0I(I0I0I0M9IMLM)IIIAIttIt^ItGIt1ItIY!HHHRLHHAPHHHPL HHAQH HHQH3HHVI9LHARLHASHHRLX HX APH H PLHAQHHQHxHxH@VI9lMtLYfEM8IdžHM@E8I8I8M@IDž8I@M@IHI@MHIHMHM9XHDMLM)IpILIAIttIt^ItGIt0ItIUH HHpQH3HHpVLHHpARLHHpASHHHpRLHHpAPI9HHPLpHpAQHHQHP+HP+VL9H9ARL0HH0HASHVHVRLeHeHÀsAPI9lMtLWfEMPIdž`MXEPIPIPIXIDžPIXIXI`IXM`I`M`M9XHZT#MLM)I ILIAIttIt^ItGIt1ItIHHH RLHH APHHH PL HH AQH HH QLHH ARI9H3HVL H ASHHRL H APH+H+PL6H6AQHpAHpAQLXLHXLH@WARI9lMtLUfEMhIdžxMpEhIhIhIpIDžhIpIpIxIpMxIxMxM9XHC.+JxMLM)IILIAIttIt^ItGIt1ItIH HHØQLHHØARH3HHØVLHHØASHHHØRLHHØAPI9HHPLHAQH0H0QLHARH` H` VL H ASHHRL(H(HAPI9lMtLSfMIdžMAIIIIDžIIIIMIMM9JMLM)IIIAItuIt^ItHIt1ItI5LHHASHHHRLHHAPHHHPL HHAQH HHQI9LHARHHVL H ASH0 H0 RL@H@APHPHPPL`H`AQHpHpHÀ QI9lMtLRfMIdžIAMLeMMIDžIMIIMIML9I)H]IL HU&LMHL;MH NHHHH ZL%PHM|$LxHh{L@HPhH0\L{H(LH@LL9}}HtHPfMIdžIAMLUMIIDžMIIMIIIL9I)L[ILЃ@LEsL IIH;MjH= OHHH;H)YL=jOHPMgL@+H0LcH(HLL9}fHtHsOfMIdžIAMLUMIIDžIIMIMMML9H ZI)IHELЃ1L IIH;MBH=OHHH;HWL=2NHxMgLhHXL@HPH0LcH(HLL9}HtHNfMIdžIAIL]IIIDžMIIMMIML9I)L XIL؃LMIH LQL;UH=LHHH;HVL=LHxMgLhHXL@HP|H0pLcH(`HTLL9}HtHLfIIdžAIIIIDžIIMIMMMHtJLEfIdž(MM AEIIM IDžI M M(I I(M(I(M9t$LfDH{HHL9uMtLKI0fIdžHI8A8I0I8I8M@IDž8M@M@MHM@MHMHMHHt KI`IPIXIdž`IhIpIdžxI`tuAXIXAXM`M`IhIhMpMpIBIxIxIDž`IhIpIDžxIIYMIdžMMIdžItuAIAMMMMMMMAIIIDžIIIDžII蜹MIdžMMIdžItuAIAMMIIIIMSMMIDžIIIDžII߸MIdžMMIdžItuEIEMMIIIIMOMMIDžIIIDžI I"MIdž M(M0Idž8I tuAMAI I M(M(I0I0LZM8M8IDž M(M0IDž8IPMHI@^MXIdžPM`IdžhIPtuAHIHAHIPIPMXMXI`I`LyMhMhIDžPIXI`IDžhIIp訶IxIdžIIIdžItuExIxExIIMMMMHVMMIDžIIIDžEofEEIEHtEofEEIEHtIMHHsLL{HQEMIwLI_L0EHHsL{L{HEMIwLZI_LDHtyHsL=L{HDMt\IwL I_LDHt?HsLL{HDMt"IwLI_LzDHIIdžIIIdžItuEIEMMIIIIIKMMIDžIIIDžH(L[A\A]A^A_]@HEIIHILL% CIMd$MpI`MHIXI8Mg I0IMMI@H;E]L FEI`IMI$7LH xBIHHI$pHM4I((HuI I$HILUIMT$ IM$L9}I?L_L;]LADHy?HHHHoKLAHMxLqHeLhHxRHXFL@HP3H0'L{H(H HLLHL;MH >H HHIJH5@H LVMLUHp H}IhHhHHyL]H@M@bH VHUHIWBH6IH9]EH;L_L;]dHAfLY=IIIMIH5@ILfMxIhM@IPI0MgI(IzIMHBH;EL<IIMI$IL Y?IhIM$xLMIH HMI0I$@IH}I|$IIM$L9}I?LWL;ULAfDL 1>IPIMI$JHH >IHI$@HMGI;H}I|$I&IM$L9}MMZL;]H5=IHI7IGH=IPLbM@I0MgI(IMMI@H;ELPf.H?IIHIGH5`=IxLfMh!IXM@IPI0MgI(IMMI@H;E^L o>IpIMI$xFH <IHHI$hHMuI(iH}I$@I QIELUIMT$0I$M$L9}zMMZL;]LAfDH5;IHI7IEL;IxM`MhIXM@IPI0MgI(vIjMMIAH;EH 7;IhHII$ELI;IHIM$hLUI(H}I$@I IL]IM\$IM$L9}bMISH;ULHI9KafDL뭐L2fDLADLrfDLADL3fDI $LI$QfI$LI$ PfM $LI$pAQI $LI$QfI $LI$QfI $LI$ QAfI$LI$RfI$LI$RfI$LI$PfI $LI$QfI$LI$RfM$LI$ASM$LI$ AS8M $LI$AQI4$LI$VfHRfDLfDHADHfDH:fDHADUHAWAVIAUATISH(H_L/HL)L)H LIL9LHUHuk8HuHUHEIHL}LxL 7LRH2fI1MQM9MMHM)IIIAItdIt/IUHGHOMEHIEIEHGIEI8HAIHHyMxI@LyI@MHAIHLIIpI@HqI@M9MHAI@H@LQMXI@LYIPI@HAHQI@I@HAIxI@HAHyMxI@LyMHI@HALIIpI@HqI@M9PMFHMM)IN| I9IAofEM)EMZAII{AH9tMIIt|It^It@It"IAoHEAHAoHEAHAo$HEA$HAo4HEA4HAo,HEA,HEo HEE HH9EoEo\HEEod Eol0EDEot@Eo|PEAoD`AoLpE\Ed ED El0ED0Et@ED@E|PEDPAD`ED`ALpEDpHH9ZHII9/H=76M^IM)IIIAHIIIItmItNIt0MuMt#AnuI6LVAn u MLAPMuINHt i. IMNMt Ai IMVMt AjzIIvHt/nu(LHHuAPHMy ; IM^Mt3Aku+ILL]RHEADH Av@IMFMt AhII9MNMt AiIINHt ilIvHt n#MV(Mt AjHMF8Mt AhM^HMt AkINXHt imMNhMt Ai%IpI9J@MtLC2D~ELuL}Mt$DEE$H([A\A]A^A_]HL)HHHH?HHHHtjHtEMuMt8EVABAFAu&MLASEN AqAv Au MLAPMuINHtyWQIMFMtAHyAxJIMFMtAHqAp!IMNMtEAAHAIAIM^Mt?EKEAECAu-I LL]QH}W rw vf.IIFHt;DXEKDHAu)LHHEAPHMy WQ DII9 MVMtABDXEZIMVMtABpArMVMtAzGABgMV(MtARzAzIN8HtDQARQAMFHMtAHDQEPMFXMtAHqApZMNhMtEAAHAIAIpI9HI9"Mu.HEAH}HE(fAIMfDAo~EF A ILLMRHEp LHAPHHHuRHEAD@ AHHQLHHMARL]A{ nM LAQ_I1LLMVLEAx ILQHHHMRHEADP AlLHAS]M LL]AQHu~ $LHAPILLERHEH LHARMLLUASLMAy I1LVM LLUAQLEAH yAx ILRMLLUASLMEA AHAI AILRILLUPL]EK AqAs AMLAPI2LLUVL]EK EAEC ArI LQdI1LLMVLUAB PAR MLASMLLEARHEP zx LHASsILLERHEx D_DX 1LHAQ"HHHMPH}D_ EKDO AH7VILLEQLUAz ZMLASKI1LLMVH}W DRDW AHP6MLLUASHEP aLHAQRILLERH}DW ABG ALASH1HVVH0HVLHHMARHEADX AHHRLHHMARHEDX EKDH AH0HVLARLHARI1LLMVLEAx ?ILQ1ILLERLUAB DXEZ M LAQUHAWAVAUATISHzclHxH=@_҉hG' 1҃H=@_&'~1fA|$H=VA_') I\$E$$IIH=A_EL!II EILML9LLA MHH0H}AH8LXA)fEEM!fA LEI)I EIMLpIAIt{It:C D9;u'HXH#sL9DLu"lH Cs D)HD9uL9DDL:"1H CLDC DHD)D9uL9DL!H L9L`MCDs DHD)D9u L9HpL!Ls LAFE^ DLD)D9I^ CDK DHD)D9I^@Cs D)HD9uL9t'HpL !tI^`H;`-L`1I9ܾH=>_x$1f{H=>_U$}LxD{I I+ L@HH`I9LfM L]foy_L0L5~>_LmIL8LpLXMs) HE>&f1I}H8LHILxHH@IHH@H0HǀHHǀPHǀXHǀ`Hǀhp 0@P`pLxLxLxLxLP@fo HpfH@H@@I$IDŽ$AƄ$IDŽ$ADŽ$M$ H}H=<_A$A$A$/LXH5<_LIH=<_LuH5x<_HpHHHM\$HpLI*H}L9t#H}IUH9t#MMH=<_LM蘣HXH5;_LH>H=;_LunHHHpH5;_HIt$LHHp*H}L9t8#H}IEH9t&#M$~PLPI$M$xIDŽ$AƄ$PI$IDŽ$AƄ$Lx)]I$ I;$ -LUHFHxLL]HEL^H HEH}HH`H`H9@QHxL?AH=:_"H=9_Aƅ?IDkL#{1IMM9LL%9_L)HHHHHt@HxhLlH H8$L\ILxhLlI H<$LCHILxhLlM I<m$LIHM9LxAƇ fAHĸD[A\A]A^A_]DE9>oHXI#vL9HpLI^ CDE9~ QHXH#sL9HpLqI^@C&E9~@EHXH#sL9@A+DADD9;vHXH#sFH`L`L9@^D9;HXH#sH0HUD9;eHXH#s9LpLxD`DhI LDH<lh"LM lIwDI|8"LI lIw H| D"LuzI lIw0DH|0!LruNH@I@L9p5D`cD1!S DH)D9fDANH8IwHLpH}IL9tH}IL9tI$nI|$8HtID$8I|$0HtLH&H}HtL&LpH}IL9thH}IL9tVI$(iHHH,H=f.UH(HPH=5_]UH(H0H=q5_]UH(HH=Q5_]UH(HH=15_]UH(HH=5_]UH(HH=4_]aUH(HH=4_]AUH(HpH=4_]!UH(HPH=4_]UH(H0H=q4_]UH(HH=Q4_]UH(HH=14_]UH(HH=4_]UH(HH=3_]aUH(HH=3_]AUHAVIAUIATSH_HCH9HIHFHt!I}LEt[A\A]A^]L)HH@M[A\A]A^]fUHAWIAVAUATIHSHH8LoL7H}LL)L)HHHH HMH9fHEH}HEH]I4$HLKLML HtHHuFHuHHIT$L[0ID$L[ H9SIL$HS HK0It$I|$(ID$MD$0EL$8ID$AoD$@MT$PHs(E\$XIT$`AD$Ed$hH{@LCHDKPCXLShfD[pHSxDM9IxI^LUHL)IF0HHHH!IIIOƘDIL#MbHsIz0IrH[HCIz LCI9MB L[ MZ0HSHÈIˆIRLcHCHHCCMbHsIr{AzoKAJLCMBD[EZSARLcMbsArL9tLcPH{PJH HE MnXLcXAEO1IuH=*_AIuHI;u@ HHD@1M$MT$H M;T$@H=*_DžTIIAD@E}1IMIMH I;M@HHj:1I<$I|$H I;|$@H=*_= TIIDTE9fD1IEIEH I;E@HH 1M $ML$H M;L$@H=)_ TIuIMmHHLnHH@T1L;n@ w G1M$MT$H M;T$@H=")_J DTL@IAIDTE9LHLHHLIH9=}I9tXZH(L5L95OHH}fED)DjLD)@)ы8E)L@H`DžPD)`DžpHDžDm)^_H=(_= R LL DžHELDMcLJ%P@`DDEOAAefDoua_LkPHN)H HHHtxHt9fAomAmfofs fAfAs LkpfAfDpfpfDbfAo]A]fofs fAfAs I fAfDpfpfDbfEoEEEI fEofEfAs fAs fEfEpfEpfEbM9fEoeEeIfEofEfAs fAoEAEfAs fDofAo]A]ЈfEfs fofEoMfs EMfEpfApfEofDbfAs fEfAs fAfApfpfbfoffs ffpfDpfAbfDfs fDfEpfEpfEbM9fEofEoAfAsfAs AfEfAs A@fEfEpfApfDbfEofAofAsfAf~A9tsPLc؍xBݨ9~ZLcύHBͨA9~FLcDhBըD9~1McDXBŨD9~Ic9~ HŨL HLHJ%IHN-H}HHDAH=[$_LLDžLJ%PDDDAWEOfDo]_DMFPHJ4H HHHtvHt8fAo(Ahfofs fAfAs MFpfAfDpfpfDbfAoAXfofs fAfAs I fAfDpfpfDbfEoE@fEofAs fEfAs I fEfEpfEpfEbL9fEo E`IfEofEfAs fAo@A@fAs fDofAoXAXЈfEfs fofEoHfs EHfEpfApfEofDbfAs fEfAs fAfApfpfbfoffs ffpfDpfAbfDfs fDfEpfEpfEbL9fEoEfAsAfEofAs ACfEfAs fEfEpfApfDbfAofsfDfE~E9tuPHcDHDD9~ZIcɍpDA9~FLcD@FD9~1Mc؍xF9~LcσF9~ HDDH0L HAH(N- LN% H} H0DD DBH=)!_ H}0HM 11w L=-2_I;uPHH Dž0daD;e);M9IXMt IMM9Pt IM˃HcI HL9Ht HLDcAtIcM,MM9Ht IzMD[AAIcI HL9Ht HGLDcAIcM,MM;Ht IMD[AIcI HL9Ht HLDcAIcM,MM;Ht IMD[AtyIcI HL9Ht HLDcAtJIcM,MM;HtIuTMʃt!HcMIM9HtHu+LM9H{E1IAgfDE1YEAhE E1IEIdž0MxfAdžIdž0MxfDDžfDž Dž UiHAWAVAUIATSHHHvI}Lc1IIHH HtgHIHPHHtPHP1HII9uDUD;Uu 1D]D9]¾ H=^eAvL1wH}IHLHEHÈHH!IH9]A$4I$ u@E1A$4t&M$H~IIMMlHI!E$M$1MLmM$HX[A\A]A^A_]A$4 tM$1M$H=^袺HX[A\A]A^A_]I$0H 1ҾH=^HI4H5^H tH5^HANPHuEH}EnLM=D;mu 1ҋu9u¾ H=!^輺u8AVLE1vHsLLkH袈Mt!IuLI]L腈HH[A\A]]Ðf.DUHAUATSHHLfMIt$HMl$L)MIuHMeLMIt$HbMl$LMIuH@MeLćMt|It$H"Ml$L襇Mt]IuHMeL與Mt@It$HMl$LiMt!IuHMeLLMHCHCHCHC 1HC(H[A\A]]f.U1HAUATISHHHH=@^评WI$HH@@H; KLcMIt$HMl$L蔆MIuHMeLsMIt$HMl$LPMIuHMeL/Mt|It$HMl$LMt]IuHoMeLMt@It$HQMl$LԅMt!IuH3MeL跅MHSHC1HSHS HC(H[A\A]]DH[A\A]]HH[A\A]]U1HAUATISHHHH=^WI$HH@@H;YKLcMIt$HaMl$LMIuH?MeLÄMIt$HMl$L蠄MIuHMeLMt|It$HMl$L`Mt]IuHMeLCMt@It$HMl$L$Mt!IuHMeLMHSHC1HSHS HC(H[A\A]]DH[A\A]]HH[A\A]]U1HAUATISHHHH=^OWI$HH@@H;KLcMIt$HMl$L4MIuHMeLMIt$HmMl$LMIuHKMeLςMt|It$H-Ml$L谂Mt]IuHMeL蓂Mt@It$HMl$LtMt!IuHMeLWMHSHC1HSHS HC(H[A\A]]DH[A\A]]HH[A\A]]UHAWAVAUIATISHHLqH}MIFHAHL;p"H@Hs Iv ;IFA>IFMfHsHtH}LLyIFLcMMI]HLCMEMI;XI@IT$ HS A $HC HCI_L{It$HtH}LHHCMd$IM{HL[A\A]A^A_]fD(HfIEnI@MMMQMRMUIBHIELXMM]ISLHtuIUHJHHteIMHqHHtUIuH~HHtEI}LGHMt5MEMHLMt%MMMQLMtLIELXMuDLXMM]f.(IfDH@H@HQHJHIMHAHIEHpHIuH~HHtuI}LGHMteMEMHLMtUMMMQLMtEMUMZLMt5M]M{LMt%M}IWLHtHIEHpHuDHHHIMfLHHxH}L躃IbL蚇f.UHATSHH H9zHGHW IH}HEHUHiH@HMHqHtHuHSHCHSHS HC(It$H HMHHHzHtfLGHMtZMHLMtNMQLMtBMZLMt6IKLHt*HqHHtH~HHtHHzHufDHSHLBMthMHLMt\MQLMtPMZLMtDIKLHt8HqHHt,H~HHt LGHMtLLBMuHS Md$(HCHELc(H}HH H[A\]HEHH}HuH˅f.UHAWAVAUIATISHHLqH}M%IFHAH<L;pBH@s H{(Av I~(DIFIFEMfHsHtH}LLqIFLcMMI]HL[M]MI;[ICA|$ MD$({ LC(E $HCD HCI_L{It$HtH}LHHCMd$IMrHL[A\A]A^A_]D0{HyfDIEfICIUHJHJIMHAHIEHpHIuH~HHtuI}LGHMteMEMHLMtUMMMQLMtEMUMZLMt5M]ISLHt%IUHJHHtHIEHpHuDHpHIuf.0zLC(DK IDH L@(fDH@H@HQHJHIMHAHIEHpHIuH~HHtuI}LGHMteMEMHLMtUMMMQLMtEMUMZLMt5M]M{LMt%M}IWLHtHIEHpHuDHHHIMfHHHsH}LJ~IL*f.UHAVAUATSHH H9~LgHG IH}HWLeHEMqID$HMHqHtHuHCHSHS HC(IuHHMHHHzHtjLGHMt^MHLMtRMQLMtFMZLMt:McLMt.Mt$LMt!INLHtHHzHufHHSHqHthH~HHt\LGHMtPMHLMtDMQLMt8MZLMt,McLMt Mt$LMtLHqHuHK LeMm(HCLk(MLmIt$LMt$L]wMIvLMfLAIHEAIM9stIHxHH}HH}L)HHUH9ILMI!ML;Mw5H}LHHII M!MkLUfM9_MMCOIILI!HHpLxL]LELMsLEL]HHULxHptII?HMH@HxIHE7@H}L)LH9HxA@E15M9_MMCGIHLH!HHML]LErHUL]HIHMUI?HMAH@HxICEt8A[DD9H(LLMLUmLULMxIM!EMII9sGHELISLL)LTM9.H}HsIMQHMLQHL}L!L A_IIOHhHpLxL]LEunHhHpLxL]HE~ELEflAGI~L ^IE11E1E1IM LEIE1>HxL]LEmHxL]HE~MLEflAOL)HI;LMISMQAH}>LeIMT$A$LLHkIHuE1LVIM!AUH(HH=^]iUH(HH=a^]iUH(HpH=A^]qiUH(HPH=!^]QiUH(H0H=^]1iUH(HH=^]iUH(HH=^]hUH(HH=^]hUH(HH=^]hUH(HH=a^]hUH(HpH=A^]qhUH(HPH=!^]QhUH(H0H=^]1hUH(HH=^]hUH(HH=^]gUHAVAUATISHHHIH9L4LkL1HIfLK0HKHCHtb1LSfM3L1HHLMtDHP1LIItLMuL[LHKLH9t4ILHLMu@H;L9tjLcL+[A\A]A^]HLo0HG0MQwcHcIUHS(nHqHrfUHAVIAUIATILSHH HHGHWHwHE mtHHHUL1HsIM$PH3J JTHHHH9t"THIOEo8MDHߝI@LSAA8MLHHHM0@HHLpLx&LH5y^M_HHHpI~LLHxL[DLH H(D0H8ƅ@DALHDžP8)`M9 HLhHxHLeHSMGH8LHHH}D o(HuLHHpHDžƅLEDM)]EDmE8 =HhIL9t'RHLkL9tRLHIL9tQA HA ?IME(MHH葛AHHSHH@HMEhI`IpHLpDHxH$HH u^MMHLpHSHDD~LHHxLLLD DH(@0L8ƅ@DALHDžP<D)`I9dLLhLxLeLHsHD DmMMLeLHpL8Do(DUHHLHDžƅD)UL]ELmE<:HhIL9tOHHCH9tOHHHH9tOHM0EPM8QLRIxLSAAMLHHH@HMHLxn"LH=u^M0HHxIL~L8LLsHLH L(0ƅ@DALHDžP=)`L9LHhLxLe HCI0LLHLL8HMDo(LHLpHDžƅLEUD)eLMEDmE=8MHhIL9tMHLkL9tMHHHH9tpM1A Hĸ[A\A]A^A_]fDHHHA uHMH8EMhLܖIALKHALHpHI|M@HH򈅐HxLHLdr^DIH8LHxHLpD~LHHLHHsD DL(0H8ƅ@DAHHDžP6D)`I9LLhLxLe HCLH8DmMH8Lo(MLeLH}HL)eLpHHDžƅELmE66HhIL9tKHHSH9tKLHIL9=J3H4H߹MH=o^GGHMHEMLWIXAPLKHALHIMHHHH򈅀HpLxmLH=en^IHHHpID~LLLxHLHHsD L(0H8ƅ@DAHHDžP;)`I9PLLhLxLeLHCL DmMHLeLo(H8LpHLHHDžƅM)uHUELmE;3MHhIL9tHHLCL9tHLHIL9dHwHHDž`MX dHƅHDžHHH{HHDHLL<LALCHm^HD~IHLLHDžƅ DL(D0L8fD@HDžHDžP:D)`L9VHHhHxLeHsLLLf}D L8HLDo(LuHLpHDžƅD}D)}LmHEE:m1MHhIL9tFHHH9tpFHHHH9tTF1DfDoDxffoxW@fDoDxffox@fDoDxfffDfoxm@HLHfDLLj^H@ILL)~IH0LfDoDžpDD) @HLhHxH MELHL8LHuD}HDo(LMHHpHDžƅD)uLUED]L}EJ/HhH;teDHM}L9tPDHID$H9t:DHMD$H=AcHM/E I L_IXMUA`HItL@HMhHpLHE|HhLHH ;^D HLhM/MEHHpD~HHLHLH(D0L8ƅ@DALHDžPD)`L92LHhLxLH]IELHDeM/ LEo(L8LpHHHDžƅH]U)ELMLeELHhHH9tHIuH9tHHHH9@H=$^HpHLHIHpHXL`vH5$^I|$H0!I\$(xiIt$I|$A\$0 1HHI( HH`H`IT$߫H&H8t I|$H9XtL"H`HLHAqHpHH5#^EIz[HMMA HM LA M @XLM HLHPLpL`L8^HpHHILpXMM~pDPHH`LH H(D0H8ƅ@DAHHDžP)`M9sHLhHxI HIUH}LDo(L8HpHLEHHHDžƅMD)MLUEDeH]EHhH;tHI]H9tLHIL9tHH5!^A^ MYI A I}E M HL@`HHXHI DpHLHHP|H56^pLHIUHpLPD~pD`LLXHLD L(D0L8ƅ@ALHDžPD)`H9vHHhHxLLIMHDžD o(HL8HLpHƅLuLUD])eLME]LeE(fDoDxffox[@HLHLA-Vfox@fDoDx ffDoDxgf.fox`@fDoDxffDoDxf.fox@I+E I` HHVIPMMHEpMhLLHHEHI@DpHL`DHhHHM3^LM+HH`HpD~HHHhDLHIM@ DH(D0L8ƅ@DALHDžPD)`I9HLhHxH]HMEHD DeM+H]HHpL8Do(HHLHDžƅDUD)mL]ELeEHhHH9t HIEH9t HHHH9 zHM'EXI8LTI\IuI(HHHHAdE0H`LI8HhDHpLHH 0^LM'HDhHL`D~LHMEHpHHD DL(0H8ƅ@DALHDžPD)`L9LHhLxH]HIEL DeM'H]HDo(L8LpHHHHDžƅUD)ULMELeE[HhHH9tvHIMH9taHHHH92A(@HM#E0ILORHM]AAXIPL@hHMM @LHHpL`LLL.^I#LHpIL`~HLhHLHIE L(@0H8ƅ@DAHHDžP)`I9HLhHxH]HI}H8 HH]HLo(HuHDeHM#LpHDžƅM)uELeEHhHH9t3HMEL9tLHIL9ffDoDxf.fox@fDoDxEffDoDxsf.fDoDxf.foxzI I3LHhIL9t"HMmL9t LHIL9tL HL {tHL aII g L Z L 1,.)I I6HHhHH9t*HMmL9tLHIL9|~ymhj^`TOQLUHHHAVAUATSLHHMLIt$L Mt$LCMIvL~ MfL"MIt$L\ Mt$LMIvL: MfLMt|It$L Mt$LMt]IvL MfLMt@It$L Mt$LMt!IvL MfLfMHHLjL诟H裟LhHx萟HX脟L@HPqH0eLkH(UHIH߾[A\A]A^]d@UHAVAUATISHHHIH9L4LL1HILK0HKHCHtb1LSfM3L1HHLMtDHA1LIItLMuL[LHKLH9t7ILHLMuH;L9tLcL+[A\A]A^]HLo0HG0MQGHIUHS(HjH fUHAVIAUIATILSHH HHGHWHwHEtHHHUL1HsIH3J JfHHtLL-H IMH ݂H тMuH L 躂H 讂IuH H 藂Hx 苂I}H` Hp tHP hMEHH L8QH( EMMH L.H"MUHL HM]HLH܁IEHHŁH蹁IUHHp袁H`薁IMHXHHH8sMuH0Ls _HSLIL-iIL-ZIL-KIL-<I IIL-IIL- IL-IL-(IL-f.DUHAVAUATISHHH L%HIHVWN O v@wA|$It$L@{EL$H{DKjI$@H@VI$hHhBI$H.I$HI$HI$HI$0H0ބI$X HX ʄL I$ L裁M$ M+$ fHǃ M IIM9L%HHM~MIL fl I$ I$ II)H9tHLHLI$ H H -E$ D A$ A$ @ A$ @ E$ D E$ D H[A\A]A^]Ð1'tI#IL-m;IH HtL$~L-EHh MMLX ~HH }MUH@ L0}H }M]HL}H}IEHH}H}IMHHz}Hn}MuHLW}HK}IUHxHh4}HX(}IuHPH@}H0}I}H{H(|H|L}IIL-5IL-IIL-]IL-qIL-IL-IL-rf.fUHAWAVAUATSH(HUH92HEIIHHEL=rL5IWMNHAL$KAt$ s A|$It$@{ED$H{L DCET$DSM$@I$HHHL@I$pHpЀHǃHǃHHHǃI$HHMHH}HHJHtjHqHHt^H~HHtRLGHMtFMHLMt:MQLMt.MZLMt"IKLHtHHJHuf.HHHrHteH~HHtYLGHMtMMHLMtAMQLMt5MZLMt)IKLHtHqHHtHHrHuDHI$HHIHM9H(H[A\A]A^A_]fHsIL-'HM}LpyH`yMuHXLHyH8yIEH(HCyHyLHH9]u3LeM,$LAUMILEIL-yIL-sHHfUHAWAVAUATSH(HUH9BHEIIHHEL=BL5IWMNHAL$KAt$ s A|$It$@{ED$H{L DCET$DS}I$@H@}I$hHh}M$HǃHǃLHHHǃI$HHMHH}VHHJHtjHqHHt^H~HHtRLGHMtFMHLMt:MQLMt.MZLMt"IKLHtHHJHuf.HHHrHteH~HHtYLGHMtMMHLMtAMQLMt5MZLMt)IKLHtHqHHtHHrHuDHI$HHA$IHCM9H(H[A\A]A^A_]fDHsIL-HxM}LhvHXvMuHPL@vH0yvMmH(LkevHYvLHH9]uLeM$LAPMILMIL-ByIL-3HaHfUHAWAVAUATSH(HUH92HEIIHHEL-L=IUMOHAL$KAt$ s A|$It$@{ED$H{L DCzI$@H@zI$hHhxzMUH5LE$HDA$A$A$HA$E$HDE$DE$DE$DI$HI$HI$HI$uHI$Ao$Ao$Ao$Ao$Ao$Ao$((Ao$88Ao$HHEo$XDXEo$hDhEo$xDxEo$DHM$@L@M$HLHM$PLPM$XLXI$`H`I$hǃxHhHxHǃHHHǃI$HHMHpH}HHrHtcHNHHtWHyHHtKLGHMt?MHLMt3MQLMt'MZLMtIsLHtHHrHuHHHJHteHyHHtYLGHMtMMHLMtAMQLMt5MZLMt)IsLHtHNHHtHHJHuDHI$HHIĠHàM9H(H[A\A]A^A_]fHvIL%HxMl$LhwqHXkqM|$HPL@SqH0GqMd$H(Lc2qH&qLHH9]uLuILPMILEIL%yIL%H0HhUHAWAVAUATSH(HUH92HEIIHHEL-L=IUMOHAL$KAt$ s A|$It$@{ED$H{L DCpuI$@H@\uI$hHhHuMUH5LE$HDA$A$A$HA$E$HDE$DE$DE$DI$HI$HI$HI$uHI$Ao$Ao$Ao$Ao$Ao$Ao$((Ao$88Ao$HHEo$XDXEo$hDhEo$xDxEo$DHM$@L@M$HLHM$PLPM$XLXI$`H`I$hǃxHhHxHǃHHHǃI$HHMHpH}HHrHtcHNHHtWHyHHtKLGHMt?MHLMt3MQLMt'MZLMtIsLHtHHrHuHHHJHteHyHHtYLGHMtMMHLMtAMQLMt5MZLMt)IsLHtHNHHtHHJHuDHI$HHIĠHàM9H(H[A\A]A^A_]fHvIL%HxMl$LhGlHX;lM|$HPL@#lH0lMd$H(LclHkLH[H9]uLuILPMILEIL%yIL%HH8UHAWAVAUATSHXHuHUH9NHHHIHMHEHUHMf.HuL]fHLϺHIH3A~{EF DC ENDKEVLDSMfLcMn(M+n C MHC0ILM{H| gI9LHEHMHM~MILk0flK Iv(M~ HuL9KL)MIHLϺH(HHHHHHtwHtXHt9HtLLEoM$(M(LL+oI(I(LLoI(I(LLnI(I(LLnI(I(LLnI(I(LLnI(I(L9mLLnM$(I(LLMnnM(I(LXnMPIPLBnMxIxL,nMILnMILnMILmMIL9mMLI(APILIǰPIHH{ HtHf.UHAWAVAUATSH(HUH9HEIIHHEL-BL=+IUMOHAL$KAt$ s A|$It$ @{ED$H{ L DCMT$LSiM]H=tLHA$PHPA$TTA$XXA$YHHH@YE$\I$D\A$``A$hhA$ppA$xxA$iI$HhE$HDE$ǃDHǃHHHǃI$HHMHH}HLZMthIKLHt\HqHHtPH~HHtDLGHMt8MHLMt,MQLMt MZLMtLLZMuHHHJHteHqHHtYH~HHtMLGHMtAMHLMt5MQLMt)MZLMtIKLHtHHJHuDHI$HHIHM94H(H[A\A]A^A_]fHvIL%'HMl$LaHaM|$HLaHxaID$H0HC aHaLHH9]u0LuM&LAT$LHH}IL%wIL%pHHfDUHAWAVAUATSH(HUH9"HEIIHHEL=BL5IWMNHAL$KAt$ s A|$It$ @{ED$H{ L DCET$DSE\$D[eI$HHHeI$pHpeHǃHǃHHHǃI$HHMHH}\HHJHt`HqHHtTH~HHtHLGHMtH9]usLeI$LPMILEIL-÷zIL-HHf.UHAWAVAUATSH(HUH9HEIIHHEL-L=3IUMOHAL$KAt$ s A|$It$@{ED$H{L DC ZI$@H@ ZI$hHhYA$MUH5HA$LE$DA$A$A$HA$E$DE$DE$DE$DAo$Ao$Ao$Ao$Ao$Ao$Eo$(D(Eo$8D8Eo$HDHEo$XDXEo$hDhEo$xDxEo$DEo$DAo$Ao$Ao$Ao$Ao$Ao$Ao$Ao$Eo$(D(Eo$8D8I$HHHI$PHPI$XHHXI$`H`A$hhE$pǃDpHǃHHHǃI$HHMHxH}HLJMt`MQLMtTMZLMtHIKLHtHÀIĀLH%HÀIĀLH HÀIĀLHHÀIĀLHڛHÀIĀL9LH贛LIĀLLL蘛II$H聛II$HjII$HSII$HMHLMt2MQLMt&MZLMtIKLHtHHJHufHHHzHteHwHHtYLFHMtMMHLMtAMQLMt5MZLMt)IKLHtHyHHtHHzHuDHI$HHIĨHèM9DIIfEII+EIdžIIMM :H I9F<H~HLLLD~ILfElEMMM9#L HL@LLLHIL@LAL$KA|$ { AT$H{SAt$L@sIt$%I$@H@$I$hHh$I$H$I$H$LHE$IHDA$LE$DE$DA$A$H@A$A$E$ D E$DE$DAo$Ao$((Ao$88Ao$HHAo$XXAo$hhAo$xxEo$DEo$DEo$DEo$DEo$DEo$DEo$DEo$DAo$Ao$Ao$((Ao$88Ao$HHAo$XXAo$hhAo$xxEo$DM$LI$HI$HI$HA$HA$E$DE$ǃDHǃHHHǃI$H!HHH@zHLRMtfMZLMtZIKLHtNHyHHtBHwHHt6LFHMt*MHLMtMQLMtLLRMufDHHLZMteIKLHtYHyHHtMHwHHtALFHMt5MHLMt)MQLMtMZLMtLLZMuDHI$HHIHM9IIfEIKh/I+EIdžIIMMA4HB{ %I9s6H}HHHHD~IHfElEIMHL9LL LHLIILLfDLHLAT$SAL$ K El$DkAD$H;H{ CIt$HHsIt$ It$8H{8M$`fEL`M$pM+$hDhHǃxMI%IM94LV|HHID~LxfElDhM$pI$hMI)I9tHLFHHLǃHpHǃHHHǃI$H HHHH|HHrHteH~HHtYLGHMtMMHLMtAMQLMt5MZLMt)MkLMtIMLHtHHrHuDHHHrHteH~HHtYLGHMtMMHLMtAMQLMt5MZLMt)MkLMtIMLHtHHrHuDHI$HHIİHðL9`IMH7a~WIM+fEHLEIdžHHH0Ig *3L92LzHHHID~MfElEMMM94L vLPLL@LHIHLAL$KAT$ S At$@sAD$It$H;H{CI$@H@wI$hHhcI$HOE$HǃHǃDHHHǃI$HHHHPyHLJMtcMQLMtWMZLMtKIKLHt?HqHHt3H~HHt'LGHMtMHLMtLLJMuHHLRMteMZLMtYIKLHtMHqHHtAH~HHt5LGHMt)MHLMtMQLMtLLRMuDHM$HLIHM9II(fEHiVI+ E Idž0IILM-I?rճCM9/HwHHHH~I0HflA M(M M9-H5ztHXHHDLHIt$H{IHLEL$DKET$ DS AT$SE\$HD[AL$KI$@HHH@I$HvI$pHpbHǃHǃHHHǃI$H!HHHXwHHzHtfLGHMtZMHLMtNMQLMtBMZLMt6IKLHt*HqHHtH~HHtHHzHufDHHLBMteMHLMtYMQLMtMMZLMtAIKLHt5HqHHt)H~HHtLGHMtLLBMuDHM$HLIHM9I(I@fHDoI+8A8IdžHIILM +I)F@JM99-H?tHLLL~IHflA8M@M8LM9n,M)MLHDIpILIAIIItaItBIt#I+LH蓊HpIpLHzHpIpLHaHpIpLHHHpIpLH/HpIpLHHpIpL9LHLpIpLLLԉIpI$pH轉II$H覉IP+I$P+H菉I9I$9HxI0HI$0HHaIVI$VHJIeIeL94I@IXfIZT#I+PAPIdž`HHIH(H ƚyH9*HqHLLL~I`flAPIXMPHL9)L)MLIZT#H- HIHHHHtaHtBHt#H(LHpH I LHWH I LH>H I LH%H I LH H I LHH I L9LH͌L I LLL豌I I$ H蚌II$H背I I$ HlI+I$+HUI6I$6H>IpAI$pAH'IXLIXLL94IXIpfHC.+JxI+hAhIdžxHHHH"&Hί=bH9'H7oHLLL~IxLflAhMpMhM9HnL`LHfDHHHHHET$DSE\$ D[ AL$KAt$H;H{@sIt$I$@H@HpǃpHǃxHHHǃI$xH$HHhH`UoHLBMtiMHLMt]MQLMtQMZLMtEIKLHt9HqHHt-H~HHt!LGHMtLLBMufHHLJMteMQLMtYMZLMtMIKLHtAHqHHt5H~HHt)LGHMtMHLMtLLJMuDHM$HxLIĘHØM9IpIfHI+AIdžIILMz#I???M9[%HlHLLLD~ILfElEMMM9 H qhHhHH@HHIt$ HLXH;ED$H{ DCEL$ DK AT$SET$LDSIL$HK HLjHIHHA$PI$PE$THDTE$XDXA$YLHYA$\\E$`D`E$hDhE$pDpE$xDxE$D I$H E$HDA$ǃHǃHHHǃI$H#HHHhkHHrHthH~HHt\LGHMtPMHLMtDMQLMt8MZLMt,IKLHt HqHHtHHrHuHHHzHteLGHMtYMHLMtMMQLMtAMZLMt5IKLHt)HqHHtH~HHtHHzHuDHM$HLIHM9IMI{{IM+fEHLEIdžHIHIB!BL9!LhHHHID~MfElEMMM9PLdLpLLHHHHH At$sA|$ It${ AT$H{SED$HDC3 I$@H@ M$hI$xHxLhM$pLp M$HLA$ǃHǃHHHǃI$HHHHp|hHHJHt`HqHHtTH~HHtHLGHMt%CL9LbHHHI~MflAMMM9CL cLULLfDLHIHLAL$KAt$ s AT$It$SA|$H@{ED$H{DCI$@H@I$hHhE$HDE$DE$ǃDHǃHHHǃI$HHHH}wbHHJHtcHqHHtWH~HHtKLGHMt?MHLMt3MQLMt'MZLMtIKLHtHHJHuHHHrHteH~HHtYLGHMtMMHLMtAMQLMt5MZLMt)IKLHtHqHHtHHrHuDHI$HHIHM9IMfI :ڼOM+IALHIdžHIHIh>%CL9HL_HHHI~MflAMMM97L H^LULLfDLHIHLAL$KAt$ s AT$It$SA|$H@{ED$H{DCI$@H@I$hHhM$HǃHǃLHHHǃI$H"HHH}_HLRMtjMZLMt^IKLHtRHqHHtFH~HHt:LGHMt.MHLMt"MQLMtLLRMuf.HHLZMteIKLHtYHqHHtMH~HHtALGHMt5MHLMt)MQLMtMZLMtLLZMuDHI$HHA$IHCM9IIfEI+EIdžIIIM9hH\HHD~IfElEIML9tHLIL)HHHHHttHtXHtHYH^HtCHHLLLYL^MtACHHH9L)L.LILNMtAAHyHILVHNHwIrHtFH_IZLGMBMtA@L_ MZ Lo(Mj(MtAELO0MJ0HO8IJ8HtAHw@Ir@H_HIZHHtCLGPMBPL_XMZXMtACLo`Mj`LOhMJhMtAAHOpIrpH9HL)HHDI I0fEI0M@M+8E8IdžHLHHH9LWHHID~MHfElE8M@I8MI)I9tHL^HIXLAdžXIPI@Idž`IhIpIdžxI`HHHMH}vHHqHtjL^HMt^MKLMtRMQLMtFIzLHt:LgHMt.I\$LHt!LCHMtL16fIhHLiMt]IuLHtQL^HMtEMKLMt9MQLMt-IzLHt!LgHMtI\$LHtHIpIxI`IxIAdžIIdžIIIdžIHHHMH}HLAMt_MhLMtSIuLHtGL^HMt;MKLMt/MQLMt#IzLHtLgHMt LfDIHHYHt]LCHMtQMhLMtEIuLHt9L^HMt-MKLMt!MQLMtIzLHt H@IIIIIAdžIIdžIIIdžIHHHMH}HLaMt_I\$LHtRLCHMtFMhLMt:IuLHt.L^HMt"MKLMtMQLMt LDIHHyHt]LgHMtQI\$LHtDLCHMt8MhLMt,IuLHt L^HMtMKLMtLIIIIIAdžMIdžIIIdžIHHMLLmgHLQMt[IzLHtOLgHMtCI\$LHt6LCHMt*IpLHtL^HMtMKLMtL띐IHLQMt]IzLHtQLgHMtEI\$LHt8LCHMt,IpLHt L^HMtMKLMtLIIIIIAdžIIdž I(I0Idž8I HHMHH]HLRMt[IzLHtOLgHMtCMD$LMt6IpLHt*L^HMtMKLMtIILHtH띐I(HLRMt]IzLHtQLgHMtEMD$LMt8IpLHt,L^HMt MKLMtIILHtHI0M8I M8IHAdžHM@IdžPIXI`IdžhIPHHMLLeHHzHt[LGHMtOIpLHtCL^HMt7MKLMt+IILHtLQHMtIzLHtHfIXHLBMt]IpLHtQL^HMtEMKLMt9IILHt-LQHMt!IzLHtLGHMt L@I`IhIPIhIxAdžxIdžIIIdžIH IpHMH}zIMhMt^I]MHtRLcIMtFM\$MMt9MKMMt-IIMHt!LQIMtIzMHt I@MHHrHt]LnHMtQI]LHtELcHMt9M\$LMt,MKLMt IILHtLQHMtLIIIIIIMMMtH=;OA@IIMMMtH=OAEIAdžIdžIIIdžIHIHMH}HHZHtdLcHMtXM\$LMtKMKLMt?IILHt3LQHMt'IzLHtLGHMtLf.IHHwHt]LnHMtQI]LHtELcHMt9M\$LMt,MKLMt IILHtLQHMtLIMIMH[A\A]A^A_]fAIIIItnItHIt"M$LI|$HxHtGHpIL$HHLALFMtA@HHLLLiLnMtAEHHL LLQLVMtABHHH9H>HYH^HtCHHLLLYL^MtACHHL)L.LILNMtAAHHH9LLHyH~HtGLAHIH^HNIpHsHtFMXL[MhLkMtAEMH LK MP(LS(MtABIx0H{0IH8HK8HtAIp@Hs@MXHL[HMtACMhPLkPMHXLKXMtAAMP`LS`IxhH{hHtGIHpHspH9@A@GfDAElfDHDž鴰HDž7HDž魵HDžyHDžHDžHDžHDž HDžHDžcHDž9HDžHDž}HDžHDžHDžWHDžVHDžNHDž>1)f1f1fLHeOHMufLLELHMЯfLWH M _DLL%RHM醷fLLdH M fLL_HpMpTfEEPLXIPDDPDL镰H LkHLYL@@@@@z@u@p@k@f@a@\@W@R@M@H@C@>@9@4@/@*@%@ @@@IPIL- FuIL-ECMMLIAQM9uIHt1FIpMhL9tIhHt FIXMPL9IPHtEI@M8L9I8HtEM(I I9I HtEMHsIML91IHtZEIML96IHt2EMII9;IHt EMII9>IHtDMMM9IHtDIMxL9IxHtDHFHzI8M0L9I0HtRDM II9DIHt*DMMM9eIHtDIML9IHtCLLL-cCI}HpH$H`IEHXHHH8MEH(LCHLH:=LL9eHL-BHIMHHMUHLtHxhI}H{ H0THHLHJI HYBJIH MULIŰARMLI AQMELIAPIMLIpQ HHHèPLHHAR H3HH VI>IL-&AcIL-AIL- AkIIIL-@uCL-@HIUHHIuHHHvM]HxLh_HXSMMHPL@IL->IIL->L->HPMML@@H04IMH(HK HLHy8LI9CL->I}HhHxHXMEHPL@H0MmH(LkHLH7LI9CL HHàAQMLIǸAR9IEIHI $LI Q|HHh7LI9BIPL脭I HLrILcIHPIH=I`H*I8HtH6LI9u13AMULIŠARILIǨRMLIAPIICIH{CIHH!; IL-;(IL-; HIIL-:HxMeLhHXM]HPL@~H0rMMH(LK^HRLH4LL9?L-S:HxIEHhHXMEHPL@H0IUH(HSHLH*4LL9<U?ILIQPII/IL-9BIL-9YIL-9pL-}9HIuH>H2M]HxLhHXMMHPL@H0IMH(HKHLH13LI9@\>II?I II I![HhHuhH=8HH{8HHTH(HHIH_6II>IhH-->I0HIL-5uIL-5IuLIVIITH=IH5HyHHIIL-5{IL-5DHA/LL9ulp:IDIcIzH&IL-4wIEIL-4HI$*HI$HI$HI$H(I$(HPI$PHxI$xH I$ H I$ H I$ vH I$ bH@I$@NHhI$h:HI$&HI$L[A\]f.UHAWAVAUATISH(H9LvHHH'oM,$ID$MI)L)L}HILHML9M\$L]M)MILMM9H}LHHHHtZHt/H HLLEHLEIIHLLEHLEIIHLLEHLEIIHLLEHLEIIHLLEHeLEIIHLLEH@LEIIHLLEHI H%I%H8I8HKIKH`^I`^H@qI@qH I HLEIIPLUM9[H'M)IILIAItyItaItJIt3ItII]LISM}LIAWIuLIVIELIPMMLIAQIULIRL9mMuLAVIIQM%I%APM8I8ARMKIKASI`^I`^SM@qI@qAWI I IVL9miH}I<$I|$H(L[A\A]A^A_]@MIl@6  M9pH}'HEILmL9I'LH)H-HIHHHHtaHtBHt#HLL!1IILL1IILL0IILL0IILL0IILL0IIM9LL0IILHIf0LILP0L%I%L:0L8I8L$0LKIKL0L`^I`^L/L@qI@qL/I L M9>M|$I$I9YI'LH)HHIHHttHt^HtGHt1HtHLHHASH3HHVHHHPL HHAQHHHRL3HHAVI9L+HAUHHQL%H%APL8H8ARLKHKASH`^H`^VH@qH@qPL H HAQI9kI$HtH$H}I<$H}I|$bDM#LʃHH HHHtjHt7HH}HLHLUILUH}IH}HLHLUILUH}IH}HLHLUILUH}IH}HLHLUIwLUH}IH}HLHLUIJLUH}IH}HLHLUILUH}IHH}LLUHIH%I%H8I8HKIKH`^I`^H@qI@qI H IlLUHH}IHM\$M,$LwHL]M)N<H]M9H'MM)IILIAIIItaItBIt#ILH+IHLHz+IHLHa+IHLHH+IHLH/+IHLH+IHM9LH*LILLL*IIH*I%I%H*I8I8H*IKIKH*I`^I`^Hj*I@qI@qHT*I I M9>UHEHLHI7MGfDM]LIASH}HLHLMIHMH}LQfDLH)IHf.LHHARf.HLU)MLfH}LYoHH9]u#HLeM9u)#LeM $LAQLHHUII$LIRF&L~'I6&L>H}t H}Ni#I&LI'fUHAWAVIAUATSH8H9fHHHvIC.+JxM&IFHuH)HL)HuHHIIIH93IvIHuM)MIML9H}LkjLO@|E]I|$LME\$AUAT$ AuAt$EULLET$I$@H@I$hHhIĘL}MfA]LA\$AMAL$ AEAD$A}A|$I|$}I(I$@iIPI$heIDFI$E$DNE$D^E$VA$II$II$I0I0I HuL9kIC.+JxL)HHIHHtyHtaHtJHt3HtHM,$LIĘAUI$LIĘSI $LIĘQI$LIĘPM$LIĘAPM $LIĘAQL9eM$LASI$I$RI$0I$0VM$I$ARM$` I$` AWM$ I$ AUI$I$SI$(I$(IQL9e\LeM&MfH8L[A\A]A^A_]H/Iί=bL9uH}IHuLHQuM~II9XHC.+JxLH)HHHHHtuHt^HtHHt2HtHL HHØAQLHHØASHHHØRH3HHØVLHHØARL+HHØAUI9H HQHHPL0H0APLHAQL` H` ASH H RHHVL(H(HARI9lIHtHM&LeMf+@MM|$LkMJAAUHMLLLMAWAMAOEUEWE]LE_M$H@I$@HhI$hHUHMHIA]LHMLUA_EeEgA}AAELAGI(I(IPIPIDFIDGDNDOD^D_VWBII/III0%LUI0HMI,LQIvM&HLUHuL)ILH;]#H =HEL=LeHH)L}HMfDLUH}HsM$D{HE|$K AL$ CAD$DkI<$I|$El$ZH@I$@FHhI$hbLEM$LLUI}MMEEOIEME_ E] AWAUAwMUAuHڸI@I@ǸIhIhIMH;]?H}HuI<$DCHI|$ED$DK EL$ D[E\$SI4$HsAT$IH@I$@5HhI$hQHØM$H;]hE1M<$LIĘAWgfLHHØAPf.LeVIH/fHI$PHKI$@DI$07HCI$(ID$!I$LHyL;eu,HfMtLyI(IsL}M/LAUMILELJIL:f.UHAWIAVAUATSH8H9HHHvI.袋.M'IGHuH)HL)HuHHIIIH9{IwIHuM)MIML9H}LkTLG@EMLEEL$E]E\$ AuAt$A}LA|$I|$I$@H@IPI$HIID$MXMt$I`IT$AhAt$MpMl$LLuMfA]I|$LA\$EUET$ AMAL$EEED$-I(I$@MPM$hMXM$pI`I$xIxAhA$IpI$I$AI$II$HUA$AA$EE$AA$XII$DMLMI8IŀMhM]MpI}IxEEI$PIĀEIUIIvL9eHEMHL)@M4$IvH9: L-I$I$IM,$.LoI$PMrM$@.I$0!Mt$I$(I$^DMjMt$LkMJAAUHMLLLMAVAMANEUEVE]E^H@I$@IPIPIXI$IXI`I`HAhAhMpMpM$LbHUHMHImfDA]LLHMLUA^EeEfEEEFEMENI(I(MPMPIXIXI`IxI`AhAhIpIpIxAIIAEEAAAAFII3MI8I8IŀIƀMfMEMFMMMNAUAVM]M^LUHMILqIwM'HLuHuL)ILH;]XH H=4LeHEHEHH}H)ب@HUL]HsI|$I$DSIET$K AL$ DCED$DKM$EL$4H@I$@ HhI$hLpHM$pHxI$xI$A$HI$HM$H;]DLuLMHsI|$M4$SIAT$DS ET$ KAL$DCM $ED$ZH@I$@FLhM$hHpI$pLxHM$xA$HI$I$HEM$LMLHI}MIEAVIAUEV EU ANAMEFMMEE茮I@I@yMhMhIpIpIxIIxIAAIILIMH;]dLeM'MgH8L[A\A]A^A_]H7H]tE]H9H}{ HEHUHuH_MoM7M9 LHL)@MMbI9+H IIHILB IPIM@LEI0LMI(MNߧIӧIM9^fDH=Y IHI>IwH5 IPLfM@yI0mMfI(]IQIMLPI9H IPHII$L1 IIM$@LEILMIML$̦IM$M9OMISH9LDDL 1IIIMMNLIPMsM@PI0DMuI(4I(IMHwH9HIPHII$HILpM$@ȥI輥Mt$I諥I蟥M$L9mIMLAI9LAIHEM7MtLLeM'LeMgo@L뒐LAeDLeJLA9'pHkH}t H}{ HI$PLsM$@ƤI$0蹤LkI$(Ml$裤I$薤LHL9eu0 I2IHL}MLARLHHMIcLILf.fUHAWAVAUIATSH(H9L~L&HIgofI]IELL)H)HHHuHIIIH9IuIHuI)MIML9H}Mt$-L@A~{AvH{s ANLKE^D[耷H@I$@lAXHI$HøCE\DKE`DCAaSEdDSEhDsM$MMoEfL]DcE~D{ A~@{AvH{@sLƶI(H@賶AXIpHpA\tE`DxEaDyAd|EhD]EIDEDEDA@HIHAI(H@IpHpKAFCENDKEFDCAVSEVDSL]ILuI9_HgoI)IILIAItvIt_ItIIt3ItIL#HHøAT$L;HHøAWH HHøQHHHøPL HHøAQLHHøAPH9]HHRLHARLpHpAVH(H(VL H ASL H AT$LPHPAWHHHQH9]iH]I]I]H(L[A\A]A^A_]fHH 2)^H9H}HHLLYMuMeM9nHgoLL)HHHHHtzHtbHtKHt3HtH5M$LIĸAPI$LIĸRM$LIĸARI4$LIĸVM$LIĸASM<$LIĸAWM9I $LQI$I$PM$pI$pAQM$(I$(API$ I$ RM$ I$ ARI$PI$PVM$I$IASM9]MeMtLI]H]I]DML{Mt$MBAAVHMLLLEAWANAOEVEWE^E_ӱI$@H@迱AXAXA\HA\A`A`EaI$EaEdEdEhEhLM$VHUHMHIfA^LHMLUA_EfEgE^E_A~ALI(I(AXIpAXA\A\E`IpE`EaEaAdAdEhEhAIIAAAEEEE2IIAI(IpAENEEFEAVAEVEA~A I(IpLUHMIuIuI]LyL!HuH)IMM9pH L$H]HMMsfDL3LUIt$H{AD$ICEL$ DK ED$DCAT$LS I$@H@ LhA$pHpA$tHHtI$A$xxE$yHhDyE$|D|E$DIĸHøM9Jf.1fLHHøAS f.M $LIĸAQfH]O`L-HPMeL@谙H0褙MuH(Ls萙H脙LHH;]uHHtHL}MLIǸARL}IL-WIWHI vHiLUHAWIAVAUATSH8H9.L&HHvIKh/IIGHuL)HH)HuHHIIIH9IwIHuI)MIML9H}Ml$ DHW@L}E}LD{A}{ EeH{ DcE]D[IUHS"IuH{8EM@IHHhL`I`H!AIHAEDEDML舞IH襫IIHHDIH0I`zH`IL}LuI9XIKh/I)IIMIAIttIt^ItHIt1ItIVLHHðASHHHðRLHHðARH3HHðVH HHðQHHHðPH9]LHAPLHAQL`H`AVLHAULHAT$LpHpASH H RL H HÀ ARH9]gH]II_H8L[A\A]A^A_]HHB{ %H9bH}kHHuHL)MwM'M9nHKh/LL)HHHHHt{HtcHtKHt3HtHI$LIİPM$LIİAPM $LIİAQM,$LIİAUM$LIİASI$LIİRM9M$LARI$I$VI$`I$`QI$I$PM$I$APM$pI$pAQM$ I$ AUM$ I$ IĀ ASM9\M'MtLnIH]I_fDMvLs Ml$ MJAxL}LHMEeLEfE}E~AEAFAuAvMELMFhIuI~苧M@IHIHM@*I`I`gEIIEAAEEAAMM̙IIMIIMIII`I`HL}HMLqIwIL!LuHuH)IML;e H}LfH]HELEDIL9LHH}~MILxflhM$pI$hMI)I9t LHLI$HpHIİHðL;eLMHMLs IHL A|${E\$ LD[ AT$SET$H DSIt$HsIt$ LIt$8H{8NM$`fL`M$pM+$hhHǃxLH1DEUH{ HUDSAMK Au@sAELCMELC蘗H{8It$8躤M@HhI$hM$L`PHI$HðLuMAUHMLLMAVAMANEUEVE]E^I}I~LIt$8H{8M@I$hHhM@LM$I$HHUHMHI"1fL#HHðAT$fI $LIİQ5f.H]nB=I7I!bIRHrHtHHhHtoL%HHILc8ĎH(踎L谎LHLuI9uGMLIưASHI H LUHAWIAVAUATSH8H9HHHvIiVM'IGHuH)HL)HuHHIIIH9IwIHuM)MIML9iH}LkHG@EMLHEEL$A}A|$ E]I|$E\$EuEt$AUAT$謡M(I$HHHLM$@股I$pHpnI$HIcLuM`fDA]I|$A\$AMAL$ AuAt$EELED$AEAD$M(I0I$HM$@IXI$p͠II$ɿEI$IH}I$E$AA$EE$AA$AA$LMHEII$L@&I I$8IHI$`IŐIĐILuM9aM)IIIAItzItbItKIt3ItIM $LIAQI4$LIVM$LIASI$LIRM$LIARI$LISL9eI $LQM$I$API$I$PM$X I$X AVM$ I$ AUM$I$AQI$I$VM$xI$xI@ASL9e[DLeM'MgH8L[A\A]A^A_]H?I?rճCL9}H}IHuLH MwII9JLH)HHHHtuHt^HtHHt1HtHLHHARH HHQLHHAPHHHPL+HHAUL HHAQI9H3HVLHASHHRLX HX ARH H QLHAPHHPLxHxH@AUI9lIHtHM'LeMg9f.M)Mt$LkMJAAUHMLLMAVAMANEUEVE]E^A}A~LCM(HHI$HM(M$LHpI$pHI$HUHMHILfDA]LHMLUA^EeEfAEAFAuAvEELEF蓛M(I0I0M(rIXIX_II\EIIEAAEEAAAAMIIMКI I 轚IHIHIŐ賹LUIƐHMILqIwM'HLuHuL)ILH;]HLkLeHEHEILEH)بd@LEL]HsM$CIAD$Ds Et$ DKEL${M$A|$SI|$AT$L@HHI$HM$@迊HpI$p諊HI$HMM$LH}MIMAvHAuEF HEE AFAEENI}I}EME^E]7I@IHIHI@IpIpII IMH9][LMHMM ${HA|$D[ I|$E\$ SAT$DSI $ET$sAt$Hs肉L@HHI$HM$@_HpI$pKHI$gHM$H9]fE1M,$LIAUTfHHHRLeN%IL5IL5LIHMtLL5jI$IVI$p)I$`MVI$XM$HI$8MnI$(Ml$I$ӂLH8L;eumL}I7LVMILEII L)Lf.fUHAWIAVAUATSH8H9kHHHvIiVM'IGHuH)HL)HuHHIIIH9;IwIHuM)MIML9H}Lk HG@EMI|$ LHEEL$E]E\$ AUAT$EUET$AMAL$EuLEt$謕I$HHH蘕I$pHp脕I$HIyLuM4@A]A\$AuAt$ EELED$A}A|$AEI|$ AD$EMEL$I(I$HIPI$pIxI$ID^I$E$VA$DVE$NA$^A$DFE$|II$hII$8TI@I$`IŐIIĐIL9eHEMHL)M4$IvH9L-I$I$IM,$H=LwI$M$pI$`sM$HI$X^I$8QMt$ I$0?I$2DMMt$ Lk MJAAUHMLLMAVAMANEUEVE]E^A}A~AELLAFM$HHI$HВHpI$p輒HI$踱HUHMHI@A]LHMLUA^EeEfAuAvEELEFEMENE]E^KI(I(8IPIP%IxIx"IFIGVWDVDWNO^_DfDgՑII‘II译I@I@IŐ襰LUIƐHMIHyIwM'HH}HuL)ILH;]sLdHEL5LeIH)LuLELMHuM $D[HE\$S AT$ DSET$KI4$Hs AL${A|$DsI|$ Et$ρHHI$H軁HpI$p见HI$HM$H;]Wf.LEHUHs I|$ M$CHAD$Dk El$ DKEL$D[I$E\$DSET$KAL$HHI$HHpI$pHI$ HuM$LL]MIuA~IHA}EF I} EE AFAEENM]EMAVAUEVEUtIHIHaIpIpNIIkIMH;]LMMMOH8L[A\A]A^A_]fDHH?rճCH9H}HEHUHuHgI_M7H]L9L)L%H؃I>LoM9L &IIIML]II[IpzI`zIHIXyI8yI^ I0yIyIL9uBH IIHILIMhMpyI`uyMHIXbyI8VyMn I0FyI:yIIHFL9_H=HIHI`L IHMiLpxI(xLHI xIxLk IxIxLL9uILRM9LA/fH)IIHIUL_IMrMp xI`xMHIXxI8wMu I0wIwIMHqH9LI`IMI$xHIHLpM$pywI(mwM$HI YwIMwMt$ IH5H=MHH}HuȐHUL]HsI|$I$DSIET$K AL$ DKEL$DCM$ED$CAD$tH@I$@sHhI$hsA$I$A$HA$HIL93LeMeMeH(L[A\A]A^A_]DHIh>%CL9(H}HEHULH8IEM}HEL9L)L%MMYM9H=rIHI?ILIxIZIhmIXvmI@IPcmI0WmI_I(GmI;mIL9}FDLIIIMH5 IxLvMhlIXlM@IPlI0lMwI(lIlIILHM9oL0IpIMH:H={LwIHLhIIHI4HuILcM6WI*WMhIxWIX WM@IPVI0VMgI(VIVIL9}f.L yIIIMoH5IH^IqVIeVIhIxRVIXFVI@IP3VI0'VI_I(VI VIIHGL9LI IMHLI McLUIp ULhIhUIHUL@I@oUI cULcISUIGULL9}MIHL9vL@HIIHIHIHXITITIhIxTIXTI@IPTI0TI_I(TIsTMIIHH;MgL I IMHH5SI LfLTIp TLhIhSIHSL@I@SI SLcISISLM9M'M\$L;]tLAMTM|$LqLCHUAVLLHMAWANLEAOENEOEVEWXgL]I$@I@@gHuI$hHh(gH]I$HgEI$EL}IM$H]LeHUHM$\@A~LHUAAFLAGEFEGANAOfI(I(|fIPIPifIxIxVfEIIEDEMILUEAAELEAAeIIeI@I@eIhIheHEI I I I DEG膄HHUMuMeLzH MM)J L9FLWH=ذMIH}LUfL]HMI|$M$sHAt$S HsAT$ CAD$DCI $ED$UH@I$@UHhI$hUHI$UDHI$E$諵HII9DHE\M}MtL藲LeMeLeMefH8fDHfDLeLLAͫIL-ɱHH}t H}/L-I$I]I$_OI$ROI}I$hI$x9OI$X,OMUI$PM$@OI$0OM]I$(M\$NI$NLHHM9u ~II6LIVLJI(IL-ðjIIL--ظLUHAWAVAUIATSH(HuH9HHL7HvHHuH)L)HHHuHHHIH9IuIHuM)MIIIH9}H H}=fDCHAFKAN SAV{A~LCI~ MFaD0IEPD4ETD8EX9AYD<HhE\D@E`DHEhDPEpDXExD`EaHIaHIHIAFKANIH]L9LL)HHHHtvHt_HtHHt1HtH ILIRMLIAPMLIAQM>LIAWMLIARI6LIVL9uMLASIIPI I QI0 I0 SM@I@AT$IPIPRM`I`APMpIpIƀ AQL9ujDLuMuMuH(L[A\A]A^A_]fHI???L9 H}IHuLHM}I]I9LLH)HHHHtuHt]HtGHt1HtHrH3HHVLHHASHHHPH HHQL#HHAT$HHHRI9LHAPLHAQL H ARH0 H0 VL@H@ASHPHPPH`H`QLpHpHÀ AT$I9jI]HtHMuLuMu6fDMdI H DKHLENDSEVD[E^CAFHKINL]0A0D4E48A89IhA9D<HhE<@A@HAHPAPXAX`A`\HI\DHIHIENDSEVf{IH]IuLsHHuLuMuL)ILH;]H/LeL=LpM4$KMHs IAL$S AT$ {A|$DCI|$ M $ED$LSMT$LM$HPHJA$PDTHHE$TXA$XYI$HA$Y\A$\`I$A$`hA$hpA$pDxE$xDE$KHI$KDHI$E$DE$˫HIH9]fDE1HM&LIAT$fLHHARxf.Lu%HL-HL-LHH3MtLFaL-ҧI$M}M$EI$EMuI$M$kEI$x^EMUI$0MT$ HEI$;EHH蠡L;euլH]LHHASH]II [L蓰NL膰fDUHAWAVAUIATSH(HuH9H?(HL7HNHHMH)L)HHHMHHHIH9IMIHMM)MIIIH9%HH}fD{HA~DSI~EV D[E^CAFDXH(I@1XHPIhXADEDEDEAAADEDEHIHILMLMLMHIHIHILMLMHIHILMLM LM(HI0H I8H(I@L0MHL8MPH@IXHHI`LPMhLXMpL`MxHhIHpHIHxuIIHHXIpHàIƠLSMVL[M^HCIFHSIVLCMFLKMNtI9H]L9\I?(L)HHIHHttHt^HtGHt0HtHI6LIƠVILIƠQMLIƠARMLIƠASILIƠPILIƠRL9uMLAPMIAQI@I@SMIAT$M"I"AWI +I +VI3I3QM`<I`<IEARL9uiLuMuMuH(L[A\A]A^A_]fHIځv`L9H}転IHuLHMeI]I9YI?(LH)HHIHHtuHt_HtHHt1HtH4HHHàRLHHàAPL HHàAQL;HHàAWH3HHàVH HHàQI9LHARLHASH@H@PHHRL"H"APL +H +AQL3H3AWH`<H`<HEVI9kI]HtHҠMuLuMu)MIHDKHLENDSEVD[E^CAFRH(I( RHPIPQAADEAADEDEDEDEHIHIHILMHIHILMLMLMLMHIHIHILMHIHIL M L(M(L0M0L8M8H@I@HHIHHPHIPLXMXH`I`HhIIhLpuMpLxMxHHXIXHàIƠLSMVL[M^HCIFHSIVLcMfLCMFnI9H]M}LsHL}LuMuM)MLH;]H5dLeL=LvDM4$KLHsHAL${ A|$ DSI|$ET$D[I$E\$?H@I$@?HhI$h?M$H BA$DHE$DE$I$A$A$DI$E$DE$A$A$LM$LM$HI$HHI$ouA$oA$oA$oA$oA$o(A$(o8A$8oHA$HDoXE$XDohE$hDoxE$xDoE$HHpI$pL@M$@LHM$HHPI$PHXI$XL`M$`LhM$hϝHàIĠH;]OBfE1M>LIƠAWf.HHHàPLu%HL-HL-LHH;MtLNiL-ڙI$xM}M$h7I$X7MuI$PM$@s7I$0f7MmI$(Ml$P7I$C7HH訓L9euݞH]H HHàQH]II dL蜢WL菢f.DUHAWAVAUIATSH(HuH9H?(HL7HNHHMH)L)HHHMHHHIH9IMIHMM)MIIIH9%HH}fD{HA~DSI~EV D[E^CAFDJH(I@1JHPIhJADEDEDEAAADEDEHIHILMLMLMHIHIHILMLMHIHILMLM LM(HI0H I8H(I@L0MHL8MPH@IXHHI`LPMhLXMpL`MxHhIHpHIHxuIIHHXIpHàIƠLSMVL[M^HCIFHSIVLCMFLKMNfI9H]L9\I?(L)HHIHHttHt^HtGHt0HtHI6LIƠVILIƠQMLIƠARMLIƠASILIƠPILIƠRL9uMLAPMIAQI@I@SMIAT$M"I"AWI +I +VI3I3QM`<I`<IEARL9uiLuMuMuH(L[A\A]A^A_]fHIځv`L9H}軔IHuLHMeI]I9YI?(LH)HHIHHtuHt_HtHHt1HtH4HHHàRLHHàAPL HHàAQL;HHàAWH3HHàVH HHàQI9LHARLHASH@H@PHHRL"H"APL +H +AQL3H3AWH`<H`<HEVI9kI]HtHҒMuLuMu)MIHDKHLENDSEVD[E^CAFDH(I( DHPIPCAADEAADEDEDEDEHIHIHILMHIHILMLMLMLMHIHIHILMHIHIL M L(M(L0M0L8M8H@I@HHIHHPHIPLXMXH`I`HhIIhLpuMpLxMxHHXIXHàIƠLSMVL[M^HCIFHSIVLcMfLCMF`I9H]M}LsHL}LuMuM)MLH;]H5dLeL=LvDM4$KLHsHAL${ A|$ DSI|$ET$D[I$E\$1H@I$@1HhI$h1M$H BA$DHE$DE$I$A$A$DI$E$DE$A$A$LM$LM$HI$HHI$ouA$oA$oA$oA$oA$o(A$(o8A$8oHA$HDoXE$XDohE$hDoxE$xDoE$HHpI$pL@M$@LHM$HHPI$PHXI$XL`M$`LhM$hϏHàIĠH;]OBfE1M>LIƠAWf.HHHàPLu%HL-HL-LHH;MtLNiL-ڋI$xM}M$h)I$X)MuI$PM$@s)I$0f)MmI$(Ml$P)I$C)HH訅L9euݐH]H HHàQH]II dL蜔WL菔f.DUHAWAVAUIATSH(HuH9HoooHL7HNHHMH)L)HHHMHHHIH9IMIHMM)MIIIH9mHH}fDDCI~HEFDKEN DSEVD[E^BLI AWILI PILI RL9uI6LVI I QIISM@I@AT$M'I'APM0I0AQM:I:ARM@DI@DINASL9uiLuMuMuH(L[A\A]A^A_]f.HIAAL9%H}{IHuLHiM}I]I9[HooLH)H HHHHtvHt_HtHHt0HtHH3HH VH HH QL#HH AT$LHH APL HH AQLHH ARI9LHASH H PHHRH@H@VH'H'QL0H0AT$L:H:APL@DH@DHNAQI9kI]HtH萄MuLuMuM1IHDKHLENDSEVD[E^CAF5H(I(5HPIP5AADEAADEDEDEDEHIHIHILMHIHILMLMLMLMHIHIHILMHIHIL M L(M(L0M0L8M8H@I@HHIHHPHIPLXMXH`I`HhIIhLp$MpLxMxHIHuLMLMHIHILMLMHHx Ix H I RIH]M}LsHL}LuMuM)MLH;])LLeL=MrM4$D[LI|$HE\$C AD$ SAT$DCI4$HsED$w#H@I$@c#HhI$hO#M$L‚A$IA$DE$DM$E$A$A$DE$A$HA$H$I$LI$M$LM$LM$oA$oA$oA$oA$oA$o(A$(o8A$8oHA$HDoXE$XDohE$hDoxE$xDoE$HI$HuHI$HI$LM$LM$LM$LM$HH I$ 9H I H;]9@E1(MLI APf.HHH RgLuw%HL-}HL-r}LHHwMtL}قL-J}I$xM}M$h I$XMuI$PM$@I$0MmI$(Ml$I$HHwL9euMH]HHH RH]II ԄL DŽLf.DUHAWAVAUIATSH(H9L~HHI :ڼOMeIELH)L)HHHuHIIIH9IuIHuM)MIML99H}L{\LO@EGI|$LMED$E_E\$ AwAt$AGLAD$EwEt$-I$@H@-I$hHht-AxHA$A|I$IAT$NLELEE|$MLMf.A_I|$L]A\$EWET$ AOAL$EOEL$AwAt$L,I(I$@,IPI$h,AxII$A$E|E$KAIA$AI$A$EE$EE$AA$EE$,II$+I I$8+AHIPI$hIǠIĠAL$EOEL$JAGL]AD$I~L9eHEML5VL)M<$IwL9*H=yI$HI<$I$H'yI$xHZI$hI$XI$@I$PI$0I\$I$(I$"MqM|$LsMBAAVHMLLEAWANAOEVEWE^E_A~ALc*H@I$@O*HhI$h;*AxI$AxA|A|HIHUHMEHIEM$LzfA^LLHMLUA_EfEgENEOEFEGE^E_)I(I()IPIPm)AxIAxA|IA|NHAIAAIAEEAAAAEE(II(I I (EHIPIPIƠIǠEOEFEGGE^LUHME_IIuMeLyHHuL)ILL9*HuL5DLeHEIM4$SHsI|$LEAT$DS IET$ KAL$DKM$EL$D[E\$H@I$@HhI$hHI$I$HxHIAL$I9GLeMeMeH(L[A\A]A^A_]fHIh>%CL9'H}uHEHULH訙IEM}HEL9L)L%I?HWL9LtIIIM`~LtIxI[IhbIXVI@IPCI07I_I('IIL9}FDL sIIIM}H5tIxLvMhIXM@IPI0MwI(IzIIHPL9oH=HsHIHIh}L[sIHMpLhI(L@I ILsIILL9}MIJL9L0f.LrIIIM_|H rIxHYIhaIXUI@IPBI06I_I(&IMMIqL9HqIhHII${H5qIHH^I$hI(I$@I II\$I}IqM$L9}(MMXM9LA*@HELM}MtLqLeMeLeMef.LfHfDLeLj%IL-pIL-pOIH kH}t H}q4vL-pI$xI]I$hdI$XWIEI$PI$@>I$01MuI$(Mt$I$LHsjL;euuL}ILRMILUII ,xLdyxLWyUHAWAVAUIATSH(HuH9HT4HL7HvHHuH)L)HHHuHHHIH9IuIHuM)MIIIH95HH}fD{A~sI~Av DKHENDCEF!H(I@!HPIh xAADEDEADEAAAIxIƨADH`HèEoA oA0Do(E@Do8EPDoHE`DoXEpDohEDoxEDoEDoEoAoAoAoAoAoAoA oA0Do(E@Do8EPDoHE`DoXEpDohEfDoxEnLCMFLSMVL[M^HCIFD{E~KAN=I.H]L9YITL)HHIHHtvHt_HtHHt1HtH I6LIƨVMLIƨAQMLIƨAPMLIƨARMLIƨASILIƨPL9uM>LAWIIQIP IP SMIAT$IIRIHIHVM!I!AQM'I'I@-APL9uj@LuMuMuH(L[A\A]A^A_]f.HoI 妢yB-L9H}{kIHuLH M}I]I9YITLH)HHIHHttHt^HtHHt0HtHHHHèPH HHèQL#HHèAT$HHHèRH3HHèVL HHèAQI9LHAPLHARLP HP ASHHPHHQLHHHAT$H!H!RH'H'H@-VI9kI]HtHiMuLuMu!M%IHDKHLENDSEVD[E^CAFH(I(HPIPxAxAAADEAADEDEDEDEoAoAoAoAoAoADoEDo E Do0E0Do@E@DoPEPDo`E`DopEpDoEoAoAoAoAoAoAoAoADoEDo E H0I0H8I8H@I@LHMHPAPXI`IƨAvH`Hè-7I H]IuLsHHuLuMuL)ILH;]LLeL=gMpM4$DSLHsHI|$ET$D[ E\$ CAD$KI$AL$H@I$@sHhI$h_DLgcE$IDM$E$A$A$DE$DM$E$DE$A$A$A$A$I$xDoE$DoE$DoE$DoE$oA$oA$o(A$(o8A$8oHA$HoXA$XohA$hoxA$xDoE$DoE$DoE$DoE$DoE$DoE$DoE$DoE$oA$oA$o(A$(o8A$8HHI$HLPHxM$PLXM$XL`M$`DhE$hpA$peHèIĨH9]d@E1ILIƨR;LHHèASfLu'\%HL-bHL-aLHH3\MtLFbagL-aI$xM}M$hI$XMuI$PM$@kI$0^MmI$(Ml$HI$;HH[L;eufH]HHHèRH]II \iLjOiLjUHAWAVAUATISH(HuH9cHHL/HvHHuH)L)HHHuHHHIH9:It$HHuL)IIIIH9HH}tDCI}AESAU KAMsAuHFH(I@3HPIh xADIEDEDEDEDEAAAAAHrHI_HI L0H8HÀAHDCIPIŀEEDsEu0IH]L9[IL)HHIHHtyHtbHtKHt4HtHSMULIŀARM]LIŀASIELIŀPIULIŀRIMLIŀQIuLIŀVL9mMELAPMIAVIISMIAWMIAQM%I%ARM-I-ASI4I4I<PL9mhH}I<$I|$H(L[A\A]A^A_]f.HI"""""""L9H} ^IHMIMH9HH)HHHHHHHtaHtBHt#HLLaaIŀIǀLLHaIŀIǀLL/aIŀIǀLLaIŀIǀLL`IŀIǀLL`IŀIǀL9}LL`IIǀLHI`LIL`LILy`LILc`LILM`L%I%L7`L-I-L!`L4Iǀ4L9}=M|$I$I9YIMI)IIMIAIttIt]ItFIt0ItIH HHÀQHHHÀRH3HHÀVLHHÀAPL+HHÀAUL HHÀAQI9LHARLHASHHPHHQHHRH%H%VL-H-APL4H4H<AUI9lI$HtHaZLH}M4$I|$[@HIHDKHLEMDSEUD[E]CAE H(I( HPIP~ xAxADEAIADHEDEDEDEAA HI HI 0H8I8HÀIŀAUKAMD{E}})IH]It$LkHHuLmM,$L)HLuL<;H]M9\IM)IIMIAIIItaItBIt#ILHW\IǀHÀLH>\IǀHÀLH%\IǀHÀLH \IǀHÀLH[IǀHÀLH[IǀHÀL9}LH[HIǀLHI[HIH[IIHo[IIHY[IIHC[I%I%H-[I-I-H[Iǀ4HÀL9}=f.E1MMLIŀAQfLHZIǀH@fHHHÀPHL}ZMLf.H}L3OHOH9]u([HMOM9u)[LeM$LARMIÀL]IM$LIĀAP]L^Iv]L~OMtLUZIT]L^f.fUHAWAVAUATISH(HuH9HHL7HvHHuH)L)HHHuHHHIH9It$IHuM)MIIIH9HH}1D{A~DCI~EF DKENsAvHDH(I@1HPIhHxI HIDEDEDEDEDEAAAA DEDEDoEDoE(Do E8Do0EHo@AXoPAho`AxopAoAoAoAoADoEDoEDoEDoEDoEDoE(Do E8Do0EHo@AXoPAho`AxopAHILHHML[ML{MCASAKA{AII^"ILmM9UHM)IILIAItvIt_ItHIt1ItIEMLIAQI6LIVMLIARMLIASM>LIAWILIPL9uILRIIQMIAUIISMIAPM'I'AQI/I/VM7I7I?ARL9ukH}I<$I|$H(L[A\A]A^A_]HI L9hH}[PIHuLH詭M|$I$I9ZHMI)IILIAItuIt^ItHIt1ItIH HHQLHHAPL HHAQH3HHVLHHARL3HHAVI9LHASHHPHHRHHQLHAPL'H'AQH/H/VL7H7H?ARI9lI$HtHpNH}M,$LI|$!MaIHDKHLENDSEVD[E^CAFH(I(HPIPHxIx{HIhAAAADEAADEDEDEDEoAoAo A o0A0o@A@oPAPDo`E`DopEpDoEDoEDoEDoEDoEDoEoAoAoAoAo A o0A0o@A@oPAPDo`E`DopEpHIHIHILMAIIAvDHHEFDKENIH]It$LsHHuLuM4$L)IL}LLmL92II)IIMIAIIItaItBIt#IHLE]HIHL,]HIHL]HIHL\HIHL\HIHL\HIH;]HL\MHHLM\MHLs\MHL]\MHLG\MHL1\M'H'L\M/H/L\I7H7MH;]:DE1MLIAPf.HL[HMBfHHHR)H}Lb'BHkBL;muMHXBMtLkHMLeI$LRLHHMHI PHAQOL4Q@UHAWAVAUIATSH(HuH9 Hl pL&HHvHHuL)H)HHHuHHHIH9IuHHuH)IIIIH9EH}%f.AD$CAL$ K At$@sA|$It$@{ED$H{DCI$@H@I$hHhI$HI$HI$HI$HmI$0H0YI$X HX EI$ H 1I$ H I &H IL}I9XHl pI)I ILIAItwItaItIIt2ItIL HH AQLHH ARLHH ASL#HH AT$HHH PH HH QH9]H3HVL H APLHAWH#H#RL`/H`/AVL8;H8;AQLGHGARLRHRH^ASH9]iH]I]I]H(L[A\A]A^A_]fHH#aH9-H}EIHEMLI9Hl pL)H- HHHHHHtaHtBHt#HLHSH I LHSH I LHSH I LHSH I LH~SH I LHeSH I L9}LHBSL I LLL&SI$ I HSI$IHRI$#I#HRI$`/I`/HRI$8;I8;HRI$GIGHRI$RIRL9}6M}I]I9[Il pMI)I IMIAItuIt^ItFIt0ItIHHH PH HH QH3HH VL#HH AT$LHH APHHH RI9L HAQL H ARLHASH#H#PH`/H`/QH8;H8;VLGHGAT$LRHRH^API9jI]HtHjALH]MuI]^fDHCEL$It$H{DKET$ DS E\$D[AD$CAL$KI$@H@I$hHh}I$HiI$HUI$HAI$H-I$0H0I$X HX I$ H I$ H I H IH]IuLcHuLeL#I]H)HLEM<IpHpLH>IpHpLH>IpHpLH>IpHpLHu>IpHpLH\>IpHpL9}^LH9>HpIpLHI>HpIpH>IIH=IP+IP+H=I9I9H=I0HI0HH=IVIVH=IeHpL9}=@E1MuLIpAVhfLHE=IpHpNfLHHpASf.HL=MpLpfH}LHCH9]ux*HM-M9u)c*LeM$LARMIpL]II4$LIpV,L.I,LMtL$)I,L-f.UHAWAVAUATISH(HuH9HIdn}6HL/HvHHuH)L)HHHuHHHIH9It$HHuL)IIIIH9HpH}DD[E]CAE SAUKAMsAu {HA}$DsI}pEu(DCEE)DKEM,DSEU0D[E]4DKEM8DSEU@D[E]HDcEePDkEmXDsEu`CAEhH(IHPIHxIHIHDIPE8A@AH{Ax A| A}A~DEDEDEDEDEAAAAADEDEDEDEDEAA A!A"H(HAD[IIEuI+H]L9NL)HHHHt{HtdHtLHt4HtH MELIAPMMLIAQMULIARM]LIASIELIPIULIRL9mIMLQIIVMIAVIXIXSM I AWM&I&APM.I.AQMx6Ix6I@>ARL9miH}I<$I|$H(L[A\A]A^A_]ÐHGIL L9H} IL]IML9I)IIIAIIItaItBIt#I9LLn&IILLU&IILL<&IILL#&IILL &IILL%IIL9}LL%IILHI%LIL%LIL%LXIXLp%L I LZ%L&I&LD%L.I.L.%Lx6Ix6L9}=M|$I$I9KLH)HHHHtuHt_HtIHt2HtH^L HHAQLHHARLHHASHHHPHHHRL+HHAUI9H HQHHVLHAPLXHXAQL H ARL&H&ASH.H.PHx6Hx6H@>RI9lI$HtH|LH}M4$I|$HIpHpDKEMDSEUD[E]CAESAUKAMD{E}{A}sLAuDCHEEDKEMCAEKAMSAU[A]cAekAmDSEUHsLxLkHMt!IuLxI]LHI Idž H=\\I I 1Idž Idž :HuLHuL H=\H(1[A\A]A^A_]IM)IIIAqIIIIItzIt"M}MtADOEO{M}IWHtEJDADBu5L HHUAQLUEZ A{Az AuILPIIWHtrNJIIWHtr~zIIGHtPrp+IM_MtACPASIM_Mt5ACxA{u%ILL]RHMq DFDA IL9MWMtBf.EZACABAu&ILLURHMq ~y IMOMt;EQEZEYAu)ILLMPHUJ qr fDMOMt7EQAzAyAu%MLLMASHEP JH QMG(Mt7EHEQEPAu%MLLEASHEP zx !MG8Mt7ApDNEHu&MLLEARL]AC PAS MGHMt?Ap~Axu/MLLEAQLUEZ ACAB A_IOXHt?DAApqAu.L HHMAQLUEZ A{Az A&fDIWhHt7JDADBu'H2HHUVLMEQ EZEY A0IpL9MWM I3LL]VHMDA EHDI AGLHAR8f.H HHUQLMAEA AI1LVHHHEQLEEH AyAx AMLARfHHHERLEAH  I0LVDLHHUAPLMEQ EZEY AILPfMLARH HQfI3LVfLHAPH0HV"fMLAQIH2HVrfH HQfI2LVfILRfILPfLHAPqH0HVfHHQfI LQfILPfLHAPL HAQqHHRfMLLEAQLUAz QMLASBMLLMARL]A{ JILP<@H HHUQLEEH EQEP AGMLAS8ILQAo I7LVMLARE_ ACAG AeI7LVWfUHAWAVAULATSHHHLHHMIt$LMt$LMIvL؋MfLlMIt$L趋M|$LIMIwL蔋MgL(MIt$LrMt$LMt`IvLTM~LMtCIwL7MwLMt&IvLMfLMDHHtHHtHpHHtaHLHUL9 H HMI4$LFL;EFoH=M$M$HI<$MIuLBM}LMIwL!MoLMIuLM}LMIwLMoLMt~IuLM}LfMtaIwLMoLIMtDIuLM}L,Mt'IwLkMoLMfDL5M$M$xMNM$hM9mILϺMM)I(IMIAIItiItRItLAWM(I(ASIPIPPIxIxRIIQIIVMIAPMII@ AQM9lM$(MtLM$M$M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtM>LI(AWMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPAWMxIxASIIPIIRIIQIII@ VM9lM$MtLkIL9e"LMtLFLLLmM9 H=DH}M$MHL;MdL/M$M$IM$MIuL*M}LMIwL MoLMIuLM}LMIwLMoLkMt~IuLM}LNMtaIwLMoL1MtDIuLpM}LMt'IwLSMoLMfDL5yM$M$xM^M$hM9lHLϺLL)H-(HHHHHtkHtTHt=Ht&HtILI(QI7LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(QIPIPVMxIxAPMIAQMIARMIASIII@ PM9lM$xMtLCM$`M$XM9mHLϺLL)H(HHHHHtkHtTHt=Ht&HtILI(QI7LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(QIPIPVMxIxAPMIAQMIARMIASIII@ PM9lM$XMtLMnM$PM$@M$XM9mHLϺLL)H(HHHHHtkHtTHt=Ht&HtILI(QI7LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(QIPIPVMxIxAPMIAQMIARMIASIII@ PM9lM$PMtLM$8M$0M9mHLϺLL)H(HHHHHtkHtTHt=Ht&HtILI(QI7LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(QIPIPVMxIxAPMIAQMIARMIASIII@ PM9lM$0MtL~MvM$0Mt$M$(M9nHLϺLL)H(HHHHHtkHtTHt=Ht&HtILI(QI6LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9M>LAWI(I(RIPIPQIxIxVMIAPMIAQMIARMII@ ASM9kM$(MtLM$M$M9mHLϺLL)H(HHHHHtjHtSHt=Ht'HtM>LI(AWILI(RILI(QI6LI(VMLI(APMLI(AQMLI(ARM9MLASI(I(PMPIPAWIxIxRIIQIIVMIAPMII@ AQM9lM$MtLNIL9eLMtL)LLLmM9H=H}M$MZL;]XHM$M$HI$MIuL M}LMIwLMoLMIuLM}LlMIwLMoLKMt~IuLM}L.MtaIwLmMoLMtDIuLPM}LMt'IwL3MoLMfDL5YM$XM$PIVI$@M9mHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VM9ILQM(I(APMPIPAQMxIxARMIASIIPIIRIII@ VM9lM$PMtL"M$8M$0M9mHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VM9ILQM(I(APMPIPAQMxIxARMIASIIPIIRIII@ VM9lM$0MtLMvM$0Mt$M$(M9nHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RI6LI(VM9M>LAWI(I(QMPIPAPMxIxAQMIARMIASIIPIII@ RM9kM$(MtLM$M$M9oHLϺLL)H(HHHHHtlHtUHt>Ht'HtM>LI(AWILI(QMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(VMPIPAWIxIxQMIAPMIAQMIARMII@ ASM9kM$MtL]IL9eLLMtL8LLLmM9 H=VH}fI$HPH;UPH5M$M$HI4$MIuLM}LMIwLMoLMIuLM}L|MIwLMoL[Mt~IuLM}L>MtaIwL}MoL!MtDIuL`M}LMt'IwLCMoLMfDL5iM$M$INI$xM9mILϺMM)I(IMIAIItjItTIt>It(ItMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$MtL2M$pM$hM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$hMtLMnM$PM$@M$XM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$PMtLM$8M$0M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$0MtLpMvM$0Mt$M$(M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI6LI(VILI(QMLI(APM9M>LAWM(I(AQMPIPARMxIxASIIPIIRIIVIII@ QM9lM$(MtLM$M$M9nILϺLL)H(HIHHHtlHtVHt?Ht(HtM>LI(AWMLI(AQMLI(ARMLI(ASILI(PILI(RI6LI(VM9ILQM(I(APMPIPAWMxIxAQMIARMIASIIPIII@ RM9kM$MtLAIL9e LMtLLLM9dLL)HHHHt{HtcHtKHt3HtHEI $LIQM$LIAPM<$LIAWM $LIAQM$LIARM$LIASM9I$LPI$I$RM$ I$ AVI$0 I$0 VI$@I$@QM$PI$PAPM$`I$`AWM$pI$pIĀ AQM9]LMtLLpLhM9pIC.+JxLL)HHIHHtxHtaHtJHt2HtHDI$LIĘPI$LIĘRM4$LIĘAVI4$LIĘVI $LIĘQM$LIĘAPM9M<$LAWM$I$AQM$0I$0ARM$I$ASI$` I$` PI$ I$ RM$I$AVI$(I$(IVM9\LhMtLLXLPM9sHZT#LL)H HHHHt{HtdHtLHt4HtHCM<$LI AWM $LI AQM$LI ARM$LI ASI$LI PI$LI RM9M4$LAVI$ I$ VI$I$QM$ I$ APM$+I$+AWM$6I$6AQM$pAI$pAARM$XLI$XLI@WASM9[LPMtLiL@L8M9qHDLL)HpHHHHtzHtbHtJHt3HtH^BM4$LIpAVI4$LIpVI $LIpQM$LIpAPM<$LIpAWM $LIpAQM9M$LARM$pI$pASI$I$PI$P+I$P+RM$9I$9AVI$0HI$0HVI$VI$VQM$eI$eIĀsAPM9]L8MtLL(L M9dLL)HHHHtzHtcHtLHt4HtH?M $LIAQM$LIARM$LIASI$LIPI$LIRM4$LIAVM9I4$LVI$I$QM$I$APM$X I$X AWM$ I$ AQM$I$ARM$I$ASI$xI$xI@PM9\L MtLLLLLmM9(H= H}fDI$LrL;u=H5GM$M$HI4$MIuL*M}LMIwL MoLMIuLM}LMIwLMoLkMt~IuLM}LNMtaIwLMoL1MtDIuLpM}LMt'IwLSMoLMfDL-yM$M$IMI$M9mILϺMM)I(IMIAIItjItTIt>It(ItMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$MtLBM$M$M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$MtLMuM$xM$hM$M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$xMtLM$`M$XM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$XMtLMuM$PM$@M$XM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$PMtLM$8M$0M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI7LI(VILI(QMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIVIIQMII@ APM9lM$0MtLPM$0M$(MmMl$M9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RI6LI(VILI(QMLI(APM9M.LAUM(I(AQMPIPARMxIxASIIPIIRIIVIII@ QM9lM$(MtLM$M$M9nILϺLL)H(HIHHHtlHtVHt?Ht(HtM.LI(AUMLI(AQMLI(ARMLI(ASILI(PILI(RI6LI(VM9ILQM(I(APMPIPAUMxIxAQMIARMIASIIPIII@ RM9kM$MtL!IL9eLMtLLLM9sHKh/LL)HHHHHt|HtdHtLHt4HtH1M$LIİAPM,$LIİAUM $LIİAQM$LIİARM$LIİASI$LIİPM9I$LRM$I$AVI$`I$`VI$I$QM$I$APM$pI$pAUM$ I$ AQM$ I$ IĀ ARM9\LMtLeLLM9pILL)HHIHHtyHtaHtJHt3HtH.I$LIRM4$LIAVI4$LIVI $LIQM$LIAPM,$LIAUM9M $LAQM$I$ARM$I$ASI$I$PI$I$RM$'I$'AVI$/I$/VI$7I$7I?QM9]LMtLѼLLM9rITLL)HHIHHtzHtcHtLHt4HtHf-M $LIĨAQM$LIĨARM$LIĨASI$LIĨPI$LIĨRM4$LIĨAVM9I4$LVI$I$QM$P I$P APM$I$AUM$I$AQM$HI$HARM$!I$!ASI$'I$'I@-PM9\LMtL;LLM9qHl pLL)H HHHHtzHtbHtJHt2HtH0+I4$LI VI $LI QM$LI APM,$LI AUM $LI AQM$LI ARM9M$LASI$ I$ PI$I$RM$#I$#AVI$`/I$`/VI$8;I$8;QM$GI$GAPM$RI$RI^AUM9]LMtL覹LLM9qIgoLL)HHIHHtyHtbHtJHt3HtH[*M$LIĸASI$LIĸPI$LIĸRM4$LIĸAVI4$LIĸVI $LIĸQM9M$LAPM$I$AUM$pI$pAQM$(I$(ARM$ I$ ASI$ I$ PI$PI$PRM$I$IAVM9[LMtLLLxM9sH'LL)HHHHHt|HtdHtLHt4HtHF)M$LIAPM,$LIAUM $LIAQM$LIARM$LIASI$LIPM9I$LRM$I$AVI$%I$%VI$8I$8QM$KI$KAPM$`^I$`^AUM$@qI$@qAQM$ I$ IARM9\LxMtLzLhL`L}M9 H=H}@M$ICH;E&HwM$M$HI$MIuLZM}LMIwL9MoLݵMIuLM}L輵MIwLMoL蛵Mt~IuLھM}L~MtaIwL轾MoLaMtDIuL蠾M}LDMt'IwL胾MoL'MfDL5M$M$IvI$pM9nHLϺMM)I(ILIAIItkItUIt?It(ItMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VMLI(APM9ILQM(I(AQMPIPARMxIxASIIPIIRIIVMII@ APM9lM$MtLqM$hM$`M9mHLϺLL)H(HHHHHtkHtUHt?Ht(HtMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VMLI(APM9ILQM(I(AQMPIPARMxIxASIIPIIRIIVMII@ APM9lM$`MtLޱMnM$XM$HM$`M9mHLϺLL)H(HHHHHtkHtUHt?Ht(HtMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VMLI(APM9ILQM(I(AQMPIPARMxIxASIIPIIRIIVMII@ APM9lM$XMtL?M$@M$8M9mHLϺLL)H(HHHHHtkHtUHt?Ht(HtMLI(AQMLI(ARMLI(ASILI(PILI(RI7LI(VMLI(APM9ILQM(I(AQMPIPARMxIxASIIPIIRIIVMII@ APM9lM$8MtL謮MvM$8Mt$ M$0M9mHLϺLL)H(HHHHHtkHtUHt?Ht(HtMLI(AQMLI(ARMLI(ASILI(PILI(RI6LI(VMLI(APM9M>LAWI(I(QMPIPAQMxIxARMIASIIPIIRIII@ VM9lM$0MtLM$M$M9nILϺLL)H(HIHHHtlHtUHt>Ht'HtM>LI(AWILI(QMLI(AQMLI(ARMLI(ASILI(PILI(RM9I6LVM(I(APMPIPAWIxIxQMIAQMIARMIASIII@ PM9kM$MtL|IL9eL`MtLWLPLHLmM9H=uH}I$HrH;uLϫM$M$IM$MIuL:M}LުMIwLMoL轪MIuLM}L蜪MIwL׳MoL{Mt~IuL躳M}L^MtaIwL蝳MoLAMtDIuL耳M}L$Mt'IwLcMoLMfDL-M$hM$`IMI$PM9mILϺMM)I(IMIAIItjItSIt=It'ItMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$`MtLRM$HM$@M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$@MtLMuM$ M$M$(M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$ MtL"M$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtL萣MuM$M$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtLM$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtL`MuM$M$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtLžM$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtL0MuM$M$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtL蒛M$M$M9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI7LI(VMLI(APILI(QMLI(AQM9MLARM(I(ASIPIPPIxIxRIIVMIAPIIQMII@ AQM9lM$MtLM$M$MmMl$pM9lILϺLL)H(HIHHHtjHtSHt=Ht'HtMLI(ASILI(PILI(RI6LI(VMLI(APILI(QMLI(AQM9M.LAUM(I(ARMPIPASIxIxPIIRIIVMIAPIII@ QM9lM$MtLeM$hM$`M9mILϺLL)H(HIHHHtkHtUHt?Ht(HtM.LI(AUMLI(ARMLI(ASILI(PILI(RI6LI(VMLI(APM9ILQM(I(AQMPIPAUMxIxARMIASIIPIIRIII@ VM9lM$`MtLҖIL9eLHMtL譖L8L0M9sILL)HHIHHt{HtdHtLHt4HtHM $LIĀAQM,$LIĀAUM$LIĀARM$LIĀASI$LIĀPI$LIĀRM9I4$LVM$I$AVM$I$API$I$QM$I$AQM$%I$%AUM$-I$-ARM$4I$4I<ASM9[L0MtLL LM9qH?(LL)HHHHHtzHtbHtKHt3HtHKI4$LIĠVM4$LIĠAVM$LIĠAPI $LIĠQM $LIĠAQM,$LIĠAUM9M$LARM$I$ASI$@I$@PI$I$RI$"I$"VM$ +I$ +AVM$3I$3API$`<I$`<IEQM9]LMtL聓LLM9qIooLL)H HIHHtyHtbHtKHt4HtHM$LI ARM$LI ASI$LI PI$LI RI4$LI VM4$LI AVM9M$LAPI$ I$ QM$I$AQM$@I$@AUM$'I$'ARM$0I$0ASI$:I$:PI$@DI$@DINRM9\LMtLLLM9rH?(LL)HHHHHt{HtcHtKHt3HtHM$LIĠAPI $LIĠQM $LIĠAQM,$LIĠAUM$LIĠARM$LIĠASM9I$LPI$I$RI$@I$@VM$I$AVM$"I$"API$ +I$ +QM$3I$3AQM$`<I$`<IEAUM9]LMHL[A\A]A^A_]D@LdfDLfDLADLŹfDLA阮DLA闦DLAjDH[A\A]A^A_]ÐI4$LIVf.M4$LI AVfM<$LIAWfI$LIĠRf.M$LIĘASfI$LIPf.M,$LIĨAUfM$LIĸARfM$LI APfI$LIpR錽f.I $LIİQf.I $LIQf.I $LIĀQf.M,$LI AUfM4$LIĠAVhfUHHHAVAUATISL H HI9t'H;HSH9蛍H L9uI$ HtH}I$ HtkI$ HtYM$ I$ I9LH)HHHH=H-HHHHtqHtRHt3LsMt&AnuI6LVAn u MLAPHLsMt AnHLsMt AnfHLsMt AnUHLsMt AnuI6LVAn HLsMt#AnuMLAQAn eDHLsMt AnHI9LsMt An=HLsMt AnLsMt AnLs(Mt AnLs8Mt AnELsHMt AnHLsXMt An LshMt AnHpI9GI$ HtHL- [I$IM,$A\A]A^]H I93LfDH9HHHHtpHtGLsMt:A~WAVu*ILQAv DFEF uMLAQfDHLsMtEVEZE^AHLsMtAvDFEFHLsMtA~WAVHLsMtEVEZE^AHLsMt2AvDFEFu!MLAQEV EZE^ AHLsMt3A~WAVu#ILQAv DFEF DHI9LsMtEVEZE^A$HLsMtAvDFEF LsMtA~WAVLs(MtEVEZE^AfLs8MtAvDFEFLsHMtA~WAVLsXMtEVEZE^ALshMtAvDFEF~HpI9 @ILRAn ILQDMLASAn hILPZ@MLAQAn +MLARI6LVAn MLAP@ILRAn ILQDMLASAn ILP@MLAQAn MLARI6LVAn MLAP@MLAQEV EZE^ AILPf.ILQAv DFEF MLAQMLAQEV EZE^ AILPfILPA~ WAV }ILQoDILQAv DFEF -MLAQILPA~ WAV ILQDMLAQEV EZE^ AbILPTfILPA~ WAV ILQ DMLASAn cILPU@ILPA~ WAV \ILQNDILRAn ILQDILQAv DFEF MLAQMLAQaMLARMLAQAn MLARILPf.ILPA~ WAV ILQDMLAPMLASAn ILPv@MLAQEV EZE^ AILPf.UHSHHHH߾0 []LНLȝM9t&I<$IL$H9tJoI M9uLȝMtLoH(HH [A\A]]FfDI M9uDUHAUATIH`SHHHHabnHI$HHI$(Ht}=M$0I$(I9t*H;HKH9tLnH I9uI$(HtHnI$(HI$ [A\A]]mDH I9uf.UHAUATSHHǠHHHH`amHH HH(Ht?nHHtDLPEHE9tAAAEA AHPH cH=[hHHPHDžHH0HH H HDžHDžDž?HDžHDžH H9LPL jLL[H ;[H[fo5L[LXIX LhL`LHH)0@IzcALc@1LhLfDLXLHIfLLII~$LƅDž9fo0fHH`L (8HXhxHDžDžƅDž)HDžƅ)HDžIʼnpx DD@DDHLLPDDX H!AE"HIU$ Au,A}0LME8L MM@L(MUHL0M]PH8IMXH@IE`HHIUhHPIupHXI}xL`MLhMLpMLxMHIHIHIHIHILMLMLMDIEAIDžAHIIDžHIIDžLHLMLHDžMLHDžMHDžIDIDžEHIIDžHI IDž HHIHHDžILLHDžM HDžLhIILIH`HLHHxDspDkqL{xML$DFDGLMHxHs DSHD[XH(K\HCh@1HHH=[DsLDDkPDHlcD ED$,EL$(It$8DDEDE. AAH ɑ[HDEDAAADvADwDDDDuAFDtDA7 /HHHM$L AAB<NO4IL9H L1ILHZ H=ތ[b LPAuAE1H=<[aHXHOHAHs(H{ iLP+\1IM I( LLIH(L`HH0HF(HH8RL/Lx@AUH=[N`u_HÈH9 HPL5D[L0 Mu M$$MI|$(iL_tHhI,h.HHLHGHaH[A\A]A^A_]ÐGuE1ۀFAAEHuLDEJ$AR(E&DE A)LcHDžMl$@MIANIcA;I{ICH9IsAI9A;.LRLHO\(1MILLIIMIIIIA*IIt]oEoHfEffEofofAs fs fEofDfDfDfEfAs fEfEDDo,EofEfEfAofAofs fs fEofAfDfEfAfs fAf4HDoAofEffEofofs fAs fofAfAfAffs ff<HL9tDoEoAolEoLfEfEfEofEofAs fAs fEoffEfEfofEfEfs fDofEofEofAs fEfAs fEfED4oTEotffoffEfs fDfAoffs fAoffs fAfLDoTfEfEofEfAs fEfEfEfAs fEfEDdolffDoffAs ffEfAfs ffDH@L9LHH)I9tL KT 8J J HIT$HDžH@@^LXHHxILXHs HS(H1ALLLIE(LAE0H(H8fDHXH%>HHHtDžt 9t 1tfD9W1Pf.ItL9LIHEAtAt;L NB<O\8OIt L9IHL NB<O\8OItL9{LIHL NB<O\8O<ItL9=LIHf.E1It L9IHL4B<7N OIt L9ILtB<7N OItL9LILtB<7NO ItL9zLIHGL B<NO@IIL9=LI4IWL9LIBIeL9IS@IsL9Ia@+fD fDHHDDIE1L8E|$E9tAAAEA AHP1҃H ? H=X[W @Ht@IL9HIӅIbL9IP@LIL9LI1fDž H=[VƅLAK,MD$8MC8HIMt$@Ms@LMfI|$HI{HLMFMT$PMSPHI&MD$XMCXHIMt$`Ms`LMI|$hI{hLMMT$pMSpHIMd$xMcxH ILcLIJDŽ5HLcمI~IvH9IVAI9AE MkOL4(HH1MIHHIILHHHH(HHt[oAoHfffDofofAs fs fDofDffDfDfAs fEfED Do$7Eo1fEfEfAofEofAs fs fEofEfDfEfEfAs fEfED<2Ho7Ao,1fffDofofs fAs foffAfffs ff<2HL9yDo7Eo 1Eo|1EoD1fEfEfEofEofAs fAs fEofEfEfEfAofEfEfs fAofEofEofAs fEfAs fEfED,2ol7Eol1ffoffEfs ffAofDfs fAofAfs ffL2DoL7fEfEofEfAs fEfEfEfAs fEfED\2Do|7fEfAofAfs fAfDfAfs ffD2H@L9LHI)L9gNOD8NNDISHHHHt{Ht[Ht;HtLHOT@OTOTILHKD@KDKIHHOt@NtN4IHHKt@JtJ4IHHOD@NDNILHOT@OTOTILHKD@KDMKIIFKL@KLI{MCMSICK It@IKItI4KT@KTKOl@MCISOlIO,ML@MLM I|@I|IYAAEEHdHhD[A\A]A^A_]AHHI( H=w4[AHHHH=5[AŅmLHHHHpuH=5[WA/AL@ LI0H=5[L@HDžHHDžPHDžX`HDžhHDžpI LLHDžHLxLHfDLHxLHIHLLLLLLAŅ(HHHHHH.AŅM; IIHH9hM0H)Lt_{puEHI0>'1ҾH=0$[HIRbA|$HfDHÈH9{pjHH&1ҾH=#[HIA|$H+ID$@1HHHHH1ҾH=([HIH5)[HmtH5)[HZI~At$PDžEt$LHHHZD;u1DD9¾ H=]([dLI$IJ XJ 8XH=g1[zfHÈ{pgHH`%1ҾH=R"[HItA|$H(ID$@1HHHHHu1ҾH=1'[HI)H5'[HtH5'[HMVE\$PDžHHLEt$LDނD;u1ҋ9¾ H=&[~HI$HH=XH=8H=/[pADDH=.0[QAŅuHHLM9 HrDAAA HFADHI0LID$@1HHHHH1ҾH=r%[HIZjH5%[H3tH5%[H MNET$PDžHHLEt$LDD;u1DD9¾ H="%[u-HI$HH XH 8!>A QA HHHHH f.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=,[LLJ[HDžIT$0LLLHHDžHDž HDž(HDž0LLLL‘MLLLI I(HpHq'H=8,[#AŅI LLLHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=[HIA|$HID$@1HHHHH1ҾH=![HIH5?"[HtH5;"[H~IuED$PHEl$LDž@HHD}}D;u1DD9¾ H=![" LI$1HJ8HYlfHÈ{pwHH1ҾH=IlA|$H8ID$@1HHHHH1ҾH=a [HIIH5 [H"tH5 [HM]AL$PHHEl$LLDž@|D;u1ҋ9¾ H= [HI$HH8H1YAAEEHHhD[A\A]A^A_]AHHI(vH='[8AHHHFH=U)[AŅmLHHHHpH=<)[A/AL@ LI0H=_)[L@HDžHHDžPHDžX`HDžhHDžp I LLHDžHLxLHfDLHxLHOIHLLLLLLAŅ(HHHHHHAŅM; IIHH9hM0H)Lt_{puEHI01ҾH=[HIbA|$HfDHÈH9{pjHHK1ҾH==[HI_A|$H+ID$@1HHHHH`1ҾH=[HIH5[HtH5[HI~At$PDžEt$LHHHwD;u1DD9¾ H=dLI$IJ XJ 8H=$[ZzfHÈ{pgHH1ҾH=[HIA|$H(ID$@1HHHHH1ҾH=[HI)H5btH5 OMVE\$PDžHHLEt$LDNvD;u1ҋ9¾ H=S[HI$HH=XH=8NH=]#[ADDH=#[AŅuHHLM9 HDAAA HADHI0LID$@1HHHHH&1ҾH=[HIjH5Q[HtH5M[HMNET$PDžHHLEt$LDtD;u1DD9¾ H=[-u-HI$HH XH 8>A QA HHHRHFHf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=L [>LL=[HDžIT$0LLLHHDžHDž HDž(HDž0LLLL2MLLLI I(HpHH=[AŅI LLLt~HLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HHo1ҾH=a[HIA|$HID$@1HHHHH1ҾH=@[HI(H5[HtH5[HIuED$PHEl$LDž@HHDpD;u1DD9¾ H=[" LI$1HJ8HYlfHÈ{pwHH1ҾH=[HIlA|$H8ID$@1HHHHH1ҾH=[HIH5@[HtH5<[HM]AL$PHHEl$LLDž@oD;u1ҋ9¾ H=[HI$HH8H1YAAEEHDHhD[A\A]A^A_]AHHI(H=WHHHH=[xAŅmLHHHHpUH=[7A/AL@ LI0H=[L@HDžHHDžPHDžX`HDžhHDžpyI LLHDžHLxLHfDLHxLHIHLLLLLLAŅ(HHHHHHAŅM; IIHH9hM0H)Lt_{puEHI01ҾH= [HI2bA|$HfDHÈH9{pjHH 1ҾH= [HIA|$H+ID$@1HHHHHл1ҾH=[HItH5[HMtH5[H:I~At$PDžEt$LHHH:kD;u1DD9¾ H==[dLI$IJ XJ 88H=G[zfHÈ{pgHH@ 1ҾH=2 [HITA|$H(ID$@1HHHHHU1ҾH=[HI)H5[HtH5|[HMVE\$PDžHHLEt$LDiD;u1ҋ9¾ H= [^HI$HH=XH=8辷H=[PADDH=[1AŅuHHLM9 HRDAAA H&ADHI0LID$@1HHHHH薸1ҾH=R [HI:jH5 [HtH5 [HMNET$PDžHHLEt$LDgD;u1DD9¾ H= [u-HI$HH XH 8>A QA HHHHHnf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=[LL0[HDžIT$0LLLHHDžHDž HDž(HDž0苺LLLLxMLLLI I(HpHQH=[AŅI LLLqHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=[HIA|$HID$@1HHHHH1ҾH=[HIH5 [HqtH5 [H^IuED$PHEl$LDž@HHD]dD;u1DD9¾ H=`[" LI$1HJ8HYlfHÈ{pwHHp1ҾH=b[HIlA|$H8ID$@1HHHHH腳1ҾH=A[HI)H5[HtH5[HM]AL$PHHEl$LLDž@bD;u1ҋ9¾ H=[HI$HH8H1莼YAAEEHHhD[A\A]A^A_]AHHI(VH=[AHHH&H=5[AŅmLHHHHpŸH=[A/AL@ LI0H=?[L@HDžHHDžPHDžX`HDžhHDžpI LLHDžHLxLHfDLHxLH/IHLLLLLLAŅ(HHHHHH~AŅM; IIHH9hM0H)Lt_{puEHI01ҾH=ZHIbA|$HfDHÈH9{pjHH+1ҾH=ZHI?A|$H+ID$@1HHHHH@1ҾH=[HIH5k[HtH5g[HI~At$PDžEt$LHHH^D;u1DD9¾ H=[HdLI$IJ XJ 8訬H= [:zfHÈ{pgHH1ҾH=ZHIA|$H(ID$@1HHHHHŭ1ҾH=[HIi)H5[HBtH5[H/MVE\$PDžHHLEt$LD.]D;u1ҋ9¾ H=3[HI$HH=XH=8.H== [ADDH=~ [AŅuHHLM9 HDAAA HADHI0LID$@1HHHHH1ҾH=ZHIjH51[HtH5-[HpMNET$PDžHHLEt$LDo[D;u1DD9¾ H=rZ u-HI$HH XH 8q>A QA HHH2H&Hf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=,[LL`$[HDžIT$0LLLHHDžHDž HDž(HDž0LLLLlMLLLI I(HpHH=[sAŅI LLLTeHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HHO1ҾH=AZHIcA|$HID$@1HHHHHd1ҾH= ZHIH5ZHtH5ZHμIuED$PHEl$LDž@HHDWD;u1DD9¾ H=Zk" LI$1HJ8HjYlfHÈ{pwHH1ҾH=ZHIlA|$H8ID$@1HHHHH1ҾH=ZHIH5 ZHrtH5ZH_M]AL$PHHEl$LLDž@_VD;u1ҋ9¾ H=dZHI$HH8H1YAAEEH$HhD[A\A]A^A_]AHHI(H=7[AHHHH=[XAŅmLHHHHp5H=[A/AL@ LI0H=[L@HDžHHDžPHDžX`HDžhHDžpYI LLHDžHLxLHfDLHxLHIHLLLLLLAŅ(HHHHHHAŅM; IIHH9hM0H)Lt_{puEHI01ҾH=ZHIbA|$HfDHÈH9{pjHH1ҾH=ZHIA|$H+ID$@1HHHHH谢1ҾH=lZHITH5ZH-tH5ZHI~At$PDžEt$LHHHRD;u1DD9¾ H=ZdLI$IJ XJ 8H='ZzfHÈ{pgHH 1ҾH=ZHI4A|$H(ID$@1HHHHH51ҾH=ZHI)H5`ZH貵tH5\ZH蟵MVE\$PDžHHLEt$LDPD;u1ҋ9¾ H=Z>HI$HH=XH=8螞H=Z0ADDH=ZAŅuHHLM9 H2DAAA HADHI0LID$@1HHHHHv1ҾH=2ZHIjH5ZHtH5ZHMNET$PDžHHLEt$LDND;u1DD9¾ H=Z}u-HI$HH XH 8>A QA HHHH薿HNf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=ZLL[HDžIT$0LLLHHDžHDž HDž(HDž0kLLLL_MLLLI I(HpH1H=ZAŅI LLLXHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=ZHIA|$HID$@1HHHHHԛ1ҾH=ZHIxH5ZHQtH5ZH>IuED$PHEl$LDž@HHD=KD;u1DD9¾ H=@Z" LI$1HJ8HڤYlfHÈ{pwHHP1ҾH=BZHIdlA|$H8ID$@1HHHHHe1ҾH=!ZHI H5ZHtH5ZHϮM]AL$PHHEl$LLDž@ID;u1ҋ9¾ H=ZoHI$HH8H1nYAAEEH蔺HhD[A\A]A^A_]AHHI(6H=ZAHHHH=ZAŅmLHHHHp襟H=ZA/AL@ LI0H=ZL@HDžHHDžPHDžX`HDžhHDžpI LLHDžHLxLHfDLHxLHIHLLLLLLAŅ(HHHHHH^AŅM; IIHH9hM0H)Lt_{puEHI0n1ҾH=`ZHIbA|$HfDHÈH9{pjHH 1ҾH=ZHIA|$H+ID$@1HHHHH 1ҾH=ZHIH5KZH蝪tH5GZH芪I~At$PDžEt$LHHHED;u1DD9¾ H=Z(dLI$IJ XJ 8舓H=ZzfHÈ{pgHH1ҾH=ZHIA|$H(ID$@1HHHHH襔1ҾH=aZHII)H5ZH"tH5ZHMVE\$PDžHHLEt$LDDD;u1ҋ9¾ H=ZHI$HH=XH=8H=ZADDH=^ZAŅuHHLM9 H袵DAAA HvADHI0LID$@1HHHHH1ҾH=ZHIjH5ZHctH5 ZHPMNET$PDžHHLEt$LDOBD;u1DD9¾ H=RZu-HI$HH XH 8Q>A QA HHHHHf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH= ZLL@ [HDžIT$0LLLHHDžHDž HDž(HDž0۔LLLLRMLLLI I(HpHH=hZSAŅI LLL4LHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH/1ҾH=!ZHICA|$HID$@1HHHHHD1ҾH=ZHIH5oZHtH5kZH讣IuED$PHEl$LDž@HHD>D;u1DD9¾ H=ZK" LI$1HJ8HJYlfHÈ{pwHH1ҾH=ZHIԻlA|$H8ID$@1HHHHHՍ1ҾH=ZHIyH5ZHRtH5ZH?M]AL$PHHEl$LLDž@?=D;u1ҋ9¾ H=DZߺHI$HH8H1ޖYAAEEHHhD[A\A]A^A_]AHHI(覽H=ZhAHHHvH=Z8AŅmLHHHHpH=lZA/AL@ LI0H=ZL@HDžHHDžPHDžX`HDžhHDžp9I LLHDžHLxLHfDLHxLHIHLLLLLLAŅ(HHHHHHλAŅM; IIHH9hM0H)Lt_{puEHI01ҾH=ZHIbA|$HfDHÈH9{pjHH{1ҾH=mZHI菷A|$H+ID$@1HHHHH萉1ҾH=LZHI4H5ZH tH5ZHI~At$PDžEt$LHHH8D;u1DD9¾ H=Z蘶dLI$IJ XJ 8H=Z芵zfHÈ{pgHH1ҾH=ZHIA|$H(ID$@1HHHHH1ҾH=ZHI蹵)H5@ZH蒜tH5A QA HHH肧HvH.f.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=|ZnLLZHDžIT$0LLLHHDžHDž HDž(HDž0KLLLLbFMLLLI I(HpHH=ZðAŅI LLL?HLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=ZHI賰A|$HID$@1HHHHH贂1ҾH=pZHIXH5ZH1tH5ZHIuED$PHEl$LDž@HHD2D;u1DD9¾ H= Z軯" LI$1HJ8H躋YlfHÈ{pwHH01ҾH="ZHIDlA|$H8ID$@1HHHHHE1ҾH=ZHIH5pZH•tH5lZH试M]AL$PHHEl$LLDž@0D;u1ҋ9¾ H=ZOHI$HH8H1NYAAEEHtHhD[A\A]A^A_]AHHI(H=ZجAHHHH=Z訬AŅmLHHHHp腆H=ZgA/AL@ LI0H=ZL@HDžHHDžPHDžX`HDžhHDžp詬I LLHDžHLxLHfDLHxLHIHLLLLLLAŅ(HHHHHH>AŅM; IIHH9hM0H)Lt_{puEHI0N1ҾH=@ZHIbbA|$HfDHÈH9{pjHH1ҾH=ZHIA|$H+ID$@1HHHHH}1ҾH=ZHI褪H5+ZH}tH5'ZHjI~At$PDžEt$LHHHj,D;u1DD9¾ H=mZdLI$IJ XJ 8hzH=wZzfHÈ{pgHHp1ҾH=bZHI脩A|$H(ID$@1HHHHH{1ҾH=AZHI))H5ZHtH5ZHMVE\$PDžHHLEt$LD*D;u1ҋ9¾ H=Z莨HI$HH=XH=8xH=Z耧ADDH=>ZaAŅuHHLM9 H肜DAAA HVADHI0LID$@1HHHHHy1ҾH=ZHIjjH5ZHCtH5ZH0MNET$PDžHHLEt$LD/)D;u1DD9¾ H=2Zͦu-HI$HH XH 81w>A QA HHHHH螱f.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=ZޥLL ZHDžIT$0LLLHHDžHDž HDž(HDž0{LLLL9MLLLI I(HpHH=HZ3AŅI LLL3HLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=ZHI#A|$HID$@1HHHHH$v1ҾH=ZHIȣH5OZH衊tH5KZH莊IuED$PHEl$LDž@HHD%D;u1DD9¾ H=Z+" LI$1HJ8H*YlfHÈ{pwHH1ҾH=ZHI财lA|$H8ID$@1HHHHHt1ҾH=qZHIYH5ZH2tH5ZHM]AL$PHHEl$LLDž@$D;u1ҋ9¾ H=$Z迡HI$HH8H1}YAAEEHHhD[A\A]A^A_]AHHI(膤H=ZHAHHHVH=eZAŅmLHHHHpyH=LZןA/AL@ LI0H=oZL@HDžHHDžPHDžX`HDžhHDžpI LLHDžHLxLHfDLHxLH_IHLLLLLLAŅ(HHHHHH订AŅM; IIHH9hM0H)Lt_{puEHI01ҾH=ZHIҞbA|$HfDHÈH9{pjHH[1ҾH=MZHIoA|$H+ID$@1HHHHHpp1ҾH=,ZHIH5ZHtH5ZHڄI~At$PDžEt$LHHHD;u1DD9¾ H=ZxdLI$IJ XJ 8mH=ZjzfHÈ{pgHH1ҾH=ҽZHIA|$H(ID$@1HHHHHn1ҾH=ZHI虜)H5 ZHrtH5ZH_MVE\$PDžHHLEt$LD^D;u1ҋ9¾ H=cZHI$HH=XH=8^lH=mZADDH=ZњAŅuHHLM9 HDAAA HƏADHI0LID$@1HHHHH6m1ҾH=ZHIښjH5aZH賁tH5]ZH蠁MNET$PDžHHLEt$LDD;u1DD9¾ H=Z=u-HI$HH XH 8j>A QA HHHbHVHf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=\ZNLLZHDžIT$0LLLHHDžHDž HDž(HDž0+oLLLLB-MLLLI I(HpHH=Z裗AŅI LLL&HLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=qZHI蓗A|$HID$@1HHHHHi1ҾH=PZHI8H5ZH~tH5ZH}IuED$PHEl$LDž@HHDD;u1DD9¾ H=Z蛖" LI$1HJ8HrYlfHÈ{pwHH1ҾH=ZHI$lA|$H8ID$@1HHHHH%h1ҾH=ZHIɕH5PZH|tH5LZH|M]AL$PHHEl$LLDž@D;u1ҋ9¾ H=Z/HI$HH8H1.qYAAEEHTHhD[A\A]A^A_]AHHI(H=gZ踓AHHHƗH=Z舓AŅmLHHHHpemH=ZGA/AL@ LI0H=ZL@HDžHHDžPHDžX`HDžhHDžp艓I LLHDžHLxLHfDLHxLHτIHLLLLLLAŅ(HHHHHHAŅM; IIHH9hM0H)Lt_{puEHI0.1ҾH= ZHIBbA|$HfDHÈH9{pjHH˵1ҾH=ZHIߑA|$H+ID$@1HHHHHc1ҾH=ZHI脑H5 ZH]xtH5ZHJxI~At$PDžEt$LHHHJD;u1DD9¾ H=MZdLI$IJ XJ 8HaH=WZڏzfHÈ{pgHHP1ҾH=BZHIdA|$H(ID$@1HHHHHeb1ҾH=!ZHI )H5ZHvtH5ZHvMVE\$PDžHHLEt$LDD;u1ҋ9¾ H=ӵZnHI$HH=XH=8_H=ݾZ`ADDH=ZAAŅuHHLM9 HbDAAA H6ADHI0LID$@1HHHHH`1ҾH=bZHIJjH5ѴZH#utH5ʹZHuMNET$PDžHHLEt$LDD;u1DD9¾ H=Z譍u-HI$HH XH 8^>A QA HHHҁHƀH~f.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=̻Z辌LLZHDžIT$0LLLHHDžHDž HDž(HDž0bLLLL MLLLI I(HpHaH=(ZAŅI LLLHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH1ҾH=ZHIA|$HID$@1HHHHH]1ҾH=ZHI訊H5/ZHqtH5+ZHnqIuED$PHEl$LDž@HHDm D;u1DD9¾ H=pZ " LI$1HJ8H fYlfHÈ{pwHH耭1ҾH=rZHI蔉lA|$H8ID$@1HHHHH[1ҾH=QZHI9H5ZHptH5ZHoM]AL$PHHEl$LLDž@ D;u1ҋ9¾ H=Z蟈HI$HH8H1dYAAEEH{HhD[A\A]A^A_]AHHI(fH=׶Z(AHHH6H=EZAŅmLHHHHp`H=,Z跆A/AL@ LI0H=OZL@HDžHHDžPHDžX`HDžhHDžpI LLHDžHLxLHfDLHxLH?xIHLLLLLLAŅ(HHHHHH莉AŅM; IIHH9hM0H)Lt_{puEHI0螩1ҾH=ZHI貅bA|$HfDHÈH9{pjHH;1ҾH=-ZHIOA|$H+ID$@1HHHHHPW1ҾH= ZHIH5{ZHktH5wZHkI~At$PDžEt$LHHHD;u1DD9¾ H=ZXdLI$IJ XJ 8TH=dzZJzfHÈ{pgHH1ҾH=ZHIԃA|$H(ID$@1HHHHHU1ҾH=ZHIy)H5ZHRjtH5ZH?jMVE\$PDžHHLEt$LD>D;u1ҋ9¾ H=CZނHI$HH=XH=8>SH=MZЁADDH=Z豁AŅuHHLM9 HvDAAA HvADHI0LID$@1HHHHHT1ҾH=ҧZHI躁jH5AZHhtH5=ZHhMNET$PDžHHLEt$LDD;u1DD9¾ H=Zu-HI$HH XH 8Q>A QA HHHBuH6tHf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=A QA HHHhHgH^f.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=ZsLLZHDžIT$0LLLHHDžHDž HDž(HDž0{ILLLLMLLLI I(HpHAH=ZqAŅI LLLHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HHϕ1ҾH=ZHIqA|$HID$@1HHHHHC1ҾH=ZHIqH5ZHaXtH5 ZHNXIuED$PHEl$LDž@HHDMD;u1DD9¾ H=PZp" LI$1HJ8HLYlfHÈ{pwHH`1ҾH=RZHItplA|$H8ID$@1HHHHHuB1ҾH=1ZHIpH5ZHVtH5ZHVM]AL$PHHEl$LLDž@D;u1ҋ9¾ H=ZoHI$HH8H1~KYAAEEHbHhD[A\A]A^A_]AHHI(FrH=ZnAHHHrH=%ZmAŅmLHHHHpGH= ZmA/AL@ LI0H=/ZL@HDžHHDžPHDžX`HDžhHDžpmI LLHDžHLxLHfDLHxLH_IHLLLLLLAŅ(HHHHHHnpAŅM; IIHH9hM0H)Lt_{puEHI0~1ҾH=pZHIlbA|$HfDHÈH9{pjHH1ҾH= ZHI/lA|$H+ID$@1HHHHH0>1ҾH=ZHIkH5[ZHRtH5WZHRI~At$PDžEt$LHHHD;u1DD9¾ H=Z8kdLI$IJ XJ 8;H=Z*jzfHÈ{pgHH蠎1ҾH=ZHIjA|$H(ID$@1HHHHH<1ҾH=qZHIYj)H5ZH2QtH5ܐZHQMVE\$PDžHHLEt$LDD;u1ҋ9¾ H=#ZiHI$HH=XH=8:H=-ZhADDH=nZhAŅuHHLM9 H]DAAA H]ADHI0LID$@1HHHHH:1ҾH=ZHIhjH5!ZHsOtH5ZH`OMNET$PDžHHLEt$LD_D;u1DD9¾ H=bZgu-HI$HH XH 8a8>A QA HHH"\H[Hrf.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=ZgLLPZHDžIT$0LLLHHDžHDž HDž(HDž0YAAEEHVHhD[A\A]A^A_]AHHI(eH='ZxaAHHHeH=ZHaAŅmLHHHHp%;H=|ZaA/AL@ LI0H=ZL@HDžHHDžPHDžX`HDžhHDžpIaI LLHDžHLxLHfDLHxLHRIHLLLLLLAŅ(HHHHHHcAŅM; IIHH9hM0H)Lt_{puEHI01ҾH=ZHI`bA|$HfDHÈH9{pjHH苃1ҾH=}ZHI_A|$H+ID$@1HHHHH11ҾH=\ZHID_H5˅ZHFtH5DžZH FI~At$PDžEt$LHHH D;u1DD9¾ H= Z^dLI$IJ XJ 8/H=Z]zfHÈ{pgHH1ҾH=ZHI$^A|$H(ID$@1HHHHH%01ҾH=ZHI])H5PZHDtH5LZHDMVE\$PDžHHLEt$LDD;u1ҋ9¾ H=Z.]HI$HH=XH=8-H=Z \ADDH=ތZ\AŅuHHLM9 H"QDAAA HPADHI0LID$@1HHHHHf.1ҾH="ZHI \jH5ZHBtH5ZHBMNET$PDžHHLEt$LDD;u1DD9¾ H=ҁZm[u-HI$HH XH 8+>A QA HHHOHNH>ff.@UHAWIAVAUATSHhHHHxt tH@H98A1ҾH=Z~ZLLZHDžIT$0LLLHHDžHDž HDž(HDž0[0LLLLrMLLLI I(HpH!H=ZXAŅI LLLHLIMHL9LM0LL@H)LLLt{p= DHÈI9{p^HH|1ҾH=yZHIXA|$HID$@1HHHHH*1ҾH=~ZHIhXH5~ZHA?tH5~ZH.?IuED$PHEl$LDž@HHD-D;u1DD9¾ H=0~ZW" LI$1HJ8H3YlfHÈ{pwHH@{1ҾH=2xZHITWlA|$H8ID$@1HHHHHU)1ҾH=}ZHIVH5}ZH=tH5|}ZH=M]AL$PHHEl$LLDž@D;u1ҋ9¾ H=|Z_VHI$HH8H1^2YAAEEHIHhD[A\A]A^A_]AHHI(&YH=ZTAHHHXH=ZTAŅmLHHHHp.H=ZwTA/AL@ LI0H=ZL@HDžHHDžPHDžX`HDžhHDžpTI LLHDžHLxLHfDLHxLHEIHLLLLLLAŅ(HHHHHHNWAŅM; IIHH9hM0H)Lt_{puEHI0^w1ҾH=PtZHIrSbA|$HfDHÈH9{pjHHv1ҾH=sZHISA|$H+ID$@1HHHHH%1ҾH=xZHIRH5;yZH9tH57yZHz9I~At$PDžEt$LHHHzD;u1DD9¾ H=}xZRdLI$IJ XJ 8x"H=Z QzfHÈ{pgHHu1ҾH=rrZHIQA|$H(ID$@1HHHHH#1ҾH=QwZHI9Q)H5wZH8tH5wZH7MVE\$PDžHHLEt$LDD;u1ҋ9¾ H=wZPHI$HH=XH=8 H= ZOADDH=NZqOAŅuHHLM9 HDDAAA HfDADHI0LID$@1HHHHH!1ҾH=uZHIzOjH5vZHS6tH5uZH@6MNET$PDžHHLEt$LD?D;u1DD9¾ H=BuZNu-HI$HH XH 8A>A QA HHHCHAHYf.@Ht[UHAWAVIAUATISHH_HGH)HH9w8IH1LKN#MVH[A\A]A^A_]HH+HHHH)L9I9IHMMCII9LGILAPJ1H<IKKIVIH}H9tKLH)HMWH}H}HOH}MO MnMNH[A\A]A^A_]@HtH=S~ZJf.HWHHH)HH9ws H4H9tHwf.H)UIiHAWAVAUATSHHHvI8LEDGLc1IIHH HHHtxIHs0E1LMMuLHHtDHs01HII9u3L9uIQH;SuI9HsLMCLMȅuHIHuHL[A\A]A^A_]DE1UHAVAUATISHHHIH9L4L_NL1HIoILK0HKHCHtb1LSfM3L1HHLMtDHA01LIItLMuL[LHKLH9t7ILHLMuH;L9tkMLcL+[A\A]A^]HLo0HG0MQFHGIUHS(BRHTH"VfUHAVIAUIATILSHH HHGHWHwHEYPtHHHUL1HsIMt$0H3J JLLPLLAtLLXLLL8H0LLHH8*L?L$AH=uZBCLE1w HL,A$L8LLI$ _E$ I$ EjLLPLL8-I$`LH(VL?I$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=oZ5f.H0LLn>H@1fQHHLks0H(LL<LLLPLLAtLLXLLL8H0LLHH8*L?L$AH=lZ9CLE1w HL,A$L8L<<IƈIILIL9HL]1ҾH=ZZHH:H8Hs(ELM~ DkTH5w`ZD$ (H5f`ZL H5rbZL I$HLL;= :I$t tL8L9@I$(I$ HH1H=kZIH HAA9} L8L%:(IILoIc(fDH5`ZLM$(A$LH=UkZ7L.H=iZp7A$I$ AEF$A9E$DCE$H~.A$uI$ytu ADŽ$I$ LKH=jZ6LAHmI$`H`L5hZHuXf.HHtFH{(L6tI$M$HL9BM$(H(L 'H0)~I4IL8H58IHHmIaH0)LAf.UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=TgZ*5LI$ E$ I$ EjLLPLL8-I$LH(VL6I$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=fZ5f.H0LLn5H@1fPHHLks0H(LL<L3tH08|'8H[A\A]A^A_]@IDŽ$ 1wDHPYHx$fI$ L@L984I$( H=_eZM3rI$ 1fI$M$HI9I$0HLHL SaZHHLLhf1Ҿ H=eZHD!|3}IcHtHHs`{4HDžD E=HDžHH`AHH HHhAHH(HHpALL0LLxALL8LLAHH@HHAt`HHHHHAt>HHPLLAtLLXLLL8H0LLHH8)L?L$AH=cZ0D[LE1Aw HN,A$L8L 93IƈIILIL9HLT1ҾH=QZHH1H8Hs(ELM~ DkTH5tWZD$A$H5bWZLA f.H5jYZLI$HLL;=H2I$~t tH8H9@I$(I$ HH1Ҿ IH=bZHHAA/x L8L%1(IILgI[(fDH5WZL M$M$LM9M$LԬH(LELMH0"A$M$(L蘸H=bZ:.\LڸH=.`Z.>A$I$ AEF$A9E$DCE$H~0A$uM$A{tAu ADŽ$I$ L7BH=aZ-LAHI$H`L5_ZHuHHH{(諲L1-t:0H4HL8H /IHHaIUH0y H8UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=T^Z*,LI$ E$ I$ EjLLPLL8-I$HLH(VL-I$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=]Z5f.H0LLn,H@1fPHHLks0H(LL< L*tH08|8H[A\A]A^A_]@IDŽ$ 1wDHPYHx$fI$ L@L984I$( H=_\ZM*rI$ 1fI$M$HI9I$0HLHL SXZHHLLhf1Ҿ H=\ZHD!|*}IcHtHHs`{+HDžD E=HDžHH`AHH HHhAHH(HHpALL0LLxALL8LLAHH@HHAt`HHHHHAt>HHPLLAtLLXLLL8H0LLHH8)L?L$AH=ZZ'D[LE1Aw HN,A$L8L 9*IƈIILIL9HLK1ҾH=HZHH(H8Hs(ELM~ DkTH5tNZD$A$H5bNZLA f.H5jPZLI$HLL;=h&I$~t tH8H9@I$(I$ HH1Ҿ IH=YZHHAA&x L8L%((IILgI[(fDH5NZL  M$M$LM9M$XLԣH(LELMH0A$M$(L蘯H=YZ:%\LگH=.WZ%>A$I$ AEF$A9E$DCE$H~0A$uM$A{tAu ADŽ$I$ L79H=XZ$LAHI$H`L5VZHuHHH{(諩L1$t:0H4HL8H &IHHaIUH0yH/UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=TUZ*#LI$ _E$ I$ EjLLPLL8-I$LH(VL$I$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=TZ5f.H0LLn#H@1fQHHLks0H(LL<L!tH08|8H[A\A]A^A_]@IDŽ$ 1wDHPYHx$fI$ L@L984I$( H=_SZM!rI$ 1fI$M$HI9QI$0LLHLSOZHLLLef1Ҿ H=SZH!}!vIcHtHHs`|"HDžD E=HDžHH`AHH HHhAHH(LLpALL0LLxALL8HHAHH@HHAt`HHHHHAt>LLPLLAtLLXLLL8H0LLHH8*L?L$AH=QZCLE1w HL,A$L8LLLPLLAtLLXLLL8H0LLHH8*L?L$AH=HZCLE1w HL,A$L8L<IƈIILIL9HL91ҾH=6ZHHH8Hs(ʺELM~ DkTH5wZLI$HLL;= I$t tL8L9@I$(I$ 蒱HH1H=GZIH HAA} L8L%(IILoIc(fDH5LLPLLAtLLXLLL8H0LLHH8*L?L$AH=?Z CLE1w HL,A$L8L<IƈIILIL9HL01ҾH=-ZHH H8Hs(ʱELM~ DkTH5w3ZD$(H5f3ZLH5r5ZLI$HLL;=I$t tL8L9@I$(I$ 蒨HH1H=>ZIH HAA } L8L% (IILoIc(fDH53ZLM$(A$LH=U>Z L.H=HHPLLAtLLXLLL8H0LLHH8)L?L$AH=6ZD[LE1Aw HN,A$L8L 9IƈIILIL9HL'1ҾH=$ZHHH8Hs(ǨELM~ DkTH5t*ZD$A$H5b*ZLA f.H5j,ZLI$HLL;=I$~t tH8H9@I$(I$ 芟HH1Ҿ IH=5ZHHAAx L8L%(IILgI[(fDH5*ZL M$M$LM9M$LH(LELMH0A$M$(L蘋H=5Z:\LڋH=.3Z>A$I$ AEF$A9E$DCE$H~0A$uM$A{tAu ADŽ$I$ L7H=4ZLAHI$H`L52ZHuHHH{(諅L1t:0H4HL8H IHHaIUH0yH UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=T1Z*LI$ E$ I$ EjLLPLL8-fI$HLH(VLI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=0Z5f.H0LLnH@1fPHHLks0H(LLHHPLLAtLLXLLL8H0LLHH8)L?L$AH=-ZD[LE1Aw HN,A$L8L 9IƈIILIL9HL1ҾH=ZHHH8Hs(ǟELM~ DkTH5t!ZD$A$H5b!ZLA f.H5j#ZLI$HLL;=@I$~t tH8H9@I$(I$ 芖HH1Ҿ IH=,ZHHAAx L8L%(IILgI[(fDH5!ZL M$M$LM9M$XLvH(LELMH0A$M$(L蘂H=,Z:\LڂH=.*Z>A$I$ AEF$A9E$DCE$H~0A$uM$A{tAu ADŽ$I$ L7 H=+ZLAHI$H`L5)ZHuHHH{(|L1t:0H4HL8H IHHaIUH0yHUHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=T(Z*LI$ _E$ I$ EjLLPLL8-]I$LH(VLI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L='Z5f.H0LLnH@1fQHHLks0H(LLLLPLLAtLLXLLL8H0LLHH8*L?L$AH=$ZCLE1w HL,A$L8L<IƈIILIL9HL1ҾH=ZHHH8Hs(ʖELM~ DkTH5wZD$(H5fZLH5rZLI$HLL;=I$t tL8L9@I$(I$ 蒍HH1H=#ZIH HAA} L8L%(IILoIc(fDH5ZLM$(A$LyH=U#ZL.zH=!ZpA$I$ AEF$A9E$DCE$H~.A$uI$ytu ADŽ$I$ LH="ZLAHmI$`H`L5 ZHuXf.HHtFH{(sLtI$M$HL9BM$(H(L H0~I4IL8H5IHHmIaH0Lf.UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=TZ*LI$ _E$ I$ EjLLPLL8-TI$hLH(V|LI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=Z5f.H0LLnH@1fQHHLks0H(LLLLPLLAtLLXLLL8H0LLHH8*L?L$AH=ZCLE1w HL,A$L8L<IƈIILIL9HL 1ҾH= ZHHH8Hs(ʍELM~ DkTH5wZD$(H5fZLH5rZLI$HLL;=I$t tL8L9@I$(I$ 蒄HH1H=ZIH HAA} L8L%(IILoIc(fDH5ZLM$(A$LpH=UZL.qH=ZpA$I$ AEF$A9E$DCE$H~.A$uI$ytu ADŽ$I$ LH=ZLAHmI$`H`L5ZHuXf.HHtFH{(jLtI$M$HL9BM$(H(L H0~I4IL8H5IHHmIaH0Lf.UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=TZ*LI$ _E$ I$ EjLLPLL8-KI$pLH(VsLI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=Z5f.H0LLnH@1fQHHLks0H(LLLLPLLAtLLXLLL8H0LLHH8*L?L$AH=ZCLE1w HL,A$L8L<IƈIILIL9HL1ҾH=ZHHH8Hs(ʄELM~ DkTH5wZD$(H5fZLH5rZLI$HLL;=I$t tL8L9@I$(I$ {HH1H=ZIH HAA} L8L%(IILo~Ic~(fDH5ZLM$(A$LgH=UZL.hH=ZpA$I$ AEF$A9E$DCE$H~.A$uI$ytu ADŽ$I$ LH=ZLAHmI$`H`L5ZHuXf.HHtFH{(aLtI$M$HL9BM$(H(L H0~I4IL8H5IHHm|Ia|H0Lf.UHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=T Z*LI$ E$ I$ EjLLPLL8-BI$LH(VjLI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L= Z5f.H0LLnH@1fPHHLks0H(LLHHPLLAtLLXLLL8H0LLHH8)L?L$AH= ZD[LE1Aw HN,A$L8L 9IƈIILvIvL9HL1ҾH=YHHH8Hs({ELM~ DkTH5tYD$½A$H5bYL襽A f.H5jYL聽I$HLL;=I$~t tH8H9@I$(I$ rHH1Ҿ IH=ZHHAAx L8L%(IILguI[u(fDH5YL聼 M$M$LM9M$LRH(LELMiH0A$M$(L^H=Z:\L^H=.Z>A$I$ AEF$A9E$DCE$H~0A$uM$A{tAu ADŽ$I$ L7H=ZLAHI$H`L5ZHuHHH{(XL1t:0H4HL8H IHHasIUsH0yHUHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=TZ*LI$ E$ I$ EjLLPLL8-9I$pLH(VaLI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=Z5f.H0LLnH@1fPHHLks0H(LLHHPLLAtLLXLLL8H0LLHH8)L?L$AH=ZD[LE1Aw HN,A$L8L 9IƈIILmImL9HL1ҾH=YHHH8Hs(rELM~ DkTH5tYD$´A$H5bYL襴A f.H5jYL聴I$HLL;=@I$~t tH8H9@I$(I$ iHH1Ҿ IH=YHHAAx L8L%(IILglI[l(fDH5YL聳 M$M$LM9M$LIH(LELM`H0A$M$(LUH=Y:\LUH=.Y>A$I$ AEF$A9E$DCE$H~0A$uM$A{tAu ADŽ$I$ L7H=YLAHI$H`L5YHuHHH{(OL1t:0H4HL8H IHHajIUjH0yHUHAWAVAUATISHHx%H8H9@wB_HE$D9DKAw EAu H=TY*LI$ _E$ I$ EjLLPLL8-0I$XLH(VXLI$L0I0LPHDžXHDž`HDžhDžp?HDžxHDžHL@L=Y5f.H0LLnH@1fQHHLks0H(LLLLPLLAtLLXLLL8H0LLH|H8*L?L$AH=YCLE1w HL,A$L8L<IƈIILdIdL9HL1ҾH=YHHH8Hs(iELM~ DkTH5wYD$ū(H5fYL詫H5rYL艫I$HLL;=hI$t tL8L9@I$(I$ `HH1H=YIH HAA} L8L%(IILocIcc(fDH5YL聪M$(A$LLH=UYL.MH=YpA$I$ AEF$A9E$DCE$H~.A$uI$ytu ADŽ$I$ LH=YLAHmI$`H`L5YHuXf.HHtFH{(FLtI$M$HL9BM$(H(L H0ϴ~I4IL8H5IHHmaIaaH0腴Lf.UHAVAUATISHHHIH9L4LL1HILK0HKHCHtb1LSfM3L1HHLMtDHA01LIItLMuL[LHKLH9t7ILHLMuH;L9tLcL+[A\A]A^]HLo0HG0MQWH蟼IUHS(HzHfUHAVIAUIATILSHH HHGHWHwHEtHHHUL1HsIMt$0H3J JI7IWL@HHxHL@HHLLLHC(AH[H(A\A]A^A_]H_HwI:LrfUHAWAVAUATSHH3H9 &HHfMHHHpLHH)pHEpHHEHHELH@H0HEHEHEE?HEHEL9HHhHXL`L YH8H0H0HHL LfEL$LAwHJH9AL$LEd$PHTDžTH8, ,;hu 1D9l¾ H=!Y輊H HLH=(Y軉AąHHL` L(HXL`HH5YH1qHXLHM4L`JAHD[A\A]A^A_]DAH@~UHpHtLHLLpAHHxMHIMIIDL)HHHAdMCHH!LIMLM9AM9AHuHHOE1IIIMWIIAIIItyItYIt9ItHAo ACo#HB'ICo#LC%ICo<#LC ICo4#LC!ICo$#LC&ICo,#HB IM9Go#F GoL#F GoT# F Go\#0F God#@F Gol#PF Got#`F Go|#pF IM9tIII9tOHNLI1H=7YrAąML1H=WYIKAą&HH=ZYHI1ADHHqL(HXL`H_I LVLAAIH&MIIIthItKIt.ItMcAMOLOIO4HNIOYHTHXLHM4L`JAHD[A\A]A^A_]DAH@8HpHtMoLHLLpAHHxMHIMIIDL)HHHAdMCHH!LIMLM9AM9AHuHHOE1IIIMWIIAIIItyItYIt9ItHAo ACo#HB'ICo#LC%ICo<#LC ICo4#LC!ICo$#LC&ICo,#HB IM9Go#F GoL#F GoT# F Go\#0F God#@F Gol#PF Got#`F Go|#pF IM9tIII9tOHNLI1H=YiAąML1H=YIiAą&HH=YHI1miADHHL(HXL`H_I LVLAAIH&MIIIthItKIt.ItMcAMOLOIO4HNIO/HpHteLHLLpAHHxMHIMIIDL)HHHAdMCHH!LIMLM9AM9AHuHHOE1IIIMWIIAIIItyItYIt9ItHAo ACo#HB'ICo#LC%ICo<#LC ICo4#LC!ICo$#LC&ICo,#HB IM9Go#F GoL#F GoT# F Go\#0F God#@F Gol#PF Got#`F Go|#pF IM9tIII9tOHNLI1H=Y2`AąML1H=YI `Aą&HH=YHI1_ADHH1L(HXL`H_I LVLAAIH&MIIIthItKIt.ItMcAMOLOIO4HNIO\M$MMjMII8fDH5WeYH%HHH9AL$LEd$PHTDžTH8,,;hu 1D9l¾ H=dY<>H HLJH=qY;=AąHHL`~L(HXL`HH5ndYH$HXLHM4L`JAHD[A\A]A^A_]DAH@HpHt}?LHLLpAHHxMHIMIIDL)HHHAdMCHH!LIMLM9AM9AHuHHOE1IIIMWIIAIIItyItYIt9ItHAo ACo#HB'ICo#LC%ICo<#LC ICo4#LC!ICo$#LC&ICo,#HB IM9Go#F GoL#F GoT# F Go\#0F God#@F Gol#PF Got#`F Go|#pF IM9tIII9tOHNLI1H=nY9AąML1H=nYI9Aą&HH=nYHI19ADHHzL(HXL`H_I LVLAAIH&MIIIthItKIt.ItMcAMOLOIO4HNIOWYHI`6xA|$HuID$@1LHhIvHH8l1ҾH=(\YHI6(MUH0H@LX$IHCE\$LAL$PDž` H H8D,(ڷ,I$9hpD(D;l\ H=hYb5\M$MMjMII8fDH5[YHHH2H9AL$LEd$PHTDžTH8, ,;hu 1D9l¾ H=[Y4H HL AH=hY3AąHHL`tL(HXL`HH5ZYH!HXLHM4L`JAHD[A\A]A^A_]DAH@nHpHt5LHLLpAHHxMHIMIIDL)HHHAdMCHH!LIMLM9AM9AHuHHOE1IIIMWIIAIIItyItYIt9ItHAo ACo#HB'ICo#LC%ICo<#LC ICo4#LC!ICo$#LC&ICo,#HB IM9Go#F GoL#F GoT# F Go\#0F God#@F Gol#PF Got#`F Go|#pF IM9tIII9tOHNLI1H='eYb0AąML1H=GeYI;0Aą&HH=JeYHI1 0ADHHaqL(HXL`H_I LVLAAIH&MIIIthItKIt.ItMcAMOLOIO4HNIOL%2HGHHEMtHI6.I?HHsI I+ HHUHuHtMmFHuH6LmMt#MZA}[fDM E11M; u\fDAAL{MtMttAOtt@LKM M A]IM)IL9HIHM:L;L{MJM9tMtMuAAL{DAOqAwuHEILLMPMHELMAEG AXILMLHERLMHE:fMt H}B-H81[A\A]A^A_]ÐFA}DGEEMMHELAQMHEtDAEU A}I]HELSHEffDEG AxA 5EU EZE] 뺉+If=fUHAWIAVAUIATISHXH6H 0HMLvHHtL3 IuH}LH}5HuLUI9L)LH H=Y*ALULm1E1M9uWAI@Ht"H!AD@A!IMLULmDFLM)IM9s9IMM$ I I@MIIJH9tHtHuAI@I$LL;-- DH=EY*ADžuAƄ$ LeA$LmLUM9JMM)IIIHdAaI4IIIItjItJMbMt=Al$u4LUM$LARAl$ LUuM$LASLUfIMbMt Al$ IMbMt Al$ IMbMt Al$2 IMbMt-Al$u$LUM$LARAl$ LU @IMbMt+Al$u"I$LULRAl$ LUM IMbMt Al$IM9MbMt Al$SMbMT$Mt AjMD$Mt Ah{M\$(Mt Ak-It$8Ht nIL$HHt iML$XMt Ai=MD$hMt AhMT$pM9@LUMtL*HtL(HXD[A\A]A^A_]fAI`IIIItItVMbMtIE\$ACAD$Au5I $LULQED$ LUApAAt$ uM $LAQLUIMbMtA|$WAT$IMbMtED$ApAt$A3IMbMtE\$ACAD$AIMbMtA|$WAT$@IMbMtCED$ApAt$Au/M $LULAQA|$ LUWAT$ fDIMbMtCE\$ACAD$Au/I $LULQED$ LUApAAt$ [DIM9MbMtA|$WAT$LMbMD$MtApDNEHMD$MtApNAHsID$(HtD@AppAM\$8MtACD@ECMT$HMtEZACABAmMT$XMtARDZEZMT$hMtAzWARMT$pM9DD@EHDHAuH0HHMHEVHLUuHMtFAEZ AIHML׉uRHMu@HUE1lEZ A{Az fI$LULPAl$ LUM $LAQLUzDI0LLEVLMAy ILRDMLLMARHEADX AHHQf.LHHMAPHu~ HHHR:DLHHuAQHEADP ALHASI LL]QLEAx ILRDI0LLEVHEADH A^LHAROfMLLUASHMy HHRDLUM$LARE\$ LUACAAD$ I $LQLUvf.MLLUASHED@ App A!LHAQf.ILLUPLEAp DNEH ILQ@MLLUAPHuDN Ay~ AlHHQ^I3LL]VLMAy OAI ILRDHHHEQLMAy WAQ MLAR@MLLEAQH}W DRDW gLAS[fDILLERH}DW EZD_ AHPfDM$LULAPAl$ LUI4$LVLUDLAAf.LUM$LARE\$ LUACAAD$ I $LQLUfI$LULPAl$ LUM $LAQLUDI $LULQED$ LUApAAt$ M $LAQLUM $LAQLUI $LQLUI$LULRAl$ LUI $LQLUM$LARLULUM$LARE\$ LUACAAD$ I $LQLUM$LASLUM$LULAPAl$ LU\I4$LVLUIM $LULAQA|$ LUWAT$ M$LARLUQI10I20f.1f.UHAVAUATSLoHI9LIH)HHHH=x"/HHHHtmHtNHt/LsMt"AnuILRAn u ILQHLsMt An{HLsMt AnHLsMt AnHLsMt&AnuILRAn fHLsMt#AnuI6LVAn fDHLsMt AnHI9LsMt AnHLsMt AnLsMt AnLs(Mt AnGLs8Mt AnLsHMt AnLsXMt AnLshMt AnHpI9GI$HH[A\A]A^]@H1HHHHtiHt@LsMt3A~D_E^u"ILPAN QAV u I6LVHLsMtEFEHENAnHLsMtANQAVHLsMtA~D_E^HLsMtEFEHENAKHLsMt1ANQAVu!I6LVEF EHEN AfHLsMt3A~D_E^u"ILPAN QAV NDHI9RLsMtEFEHENAHLsMtANQAVLsMtA~D_E^Ls(MtEFEHENA>Ls8MtANQAVLsHMtA~D_E^LsXMtEFEHENALshMtANQAVLHpI9LD[A\A]A^]MLASAn ILPMLAQAn MLARI6LVAn jMLAP[ILRAn 1ILQ#MLASAn ILPMLAQAn gMLARXI6LVAn .MLAPILRAn ILQI6LVEF EHEN AMLARILPAN QAV 9I6LV+I6LVEF EHEN AMLARMLARA~ D_E^ ILPILPAN QAV YI6LVKMLARA~ D_E^ ILPI6LVEF EHEN AMLARMLARA~ D_E^ JILPff.@wve.Y wYxED! ~pAAE E@s0,r!t1uEno,-pE1  kfvUetp rift_AiAE t; f.jthf.vf.f.f.gf.kf.qf.f.HGHHGHGø f.H H1Ðff. 1ÐUHHAWAVHEAUATSHHHHHhH}HMH9k+HH1E1Dž H)HHHL HtkHt3LEHAtAt AqwDALHGLEZAtAt EkAwDALHL0E~AtAt AWwDALHH9LEPAtAt EJAw ALDLhLXAEt=t DpAw ALM{AWtt DBAw ALMSEjAtAt EMAw ALDICH9KHt fo=YHEHDž`))@)P)p)})})}HEE) B 3H HPa*HHHPBH(H H`H9HBAƁÃA LM+AM\MeM}M9{DQyAAAE ȃ AŃDA }LH8LK`HH@HKhHPHHSpEHL`fDofDo@fDoPHLDKxDDIM9I$HCPEuDE] p3 H @uH{xLS`IHLpL)HHLHHpHM9CHHH9`DH Ht HPHHH L(II9( fDM!Ml$MD$LM9 MM)AM}IWPz!IwhI;HJ,~LR8M9%IEI9 MohM; I AT$,~It$8I9L`H@LhPA}!) HXhH; H Eu,A~M}8L9/ID$I9 L8MgPA|$!ZAG\LHL LLPLH LIKLIBPX,KE1LAC| L[L(L LpM91M<$A.IMOL9LmL]LHUHuƅLXLLL}E1LH`HLƅDƅHA .HI9HHQPJ, A Doz8ozHAAfAofofAofs fs ffAfffs fADoBXfofs fEofEofDofAs fDfEfAfAfs fAAt;oZhfofs fofofDofs ffDffAfs ffDofofDofAsfs fAfEfEofAs fAffs fAfH~9t=LcJD8DFD9~+McJD8DFD9~McJD89~ HcHD8H9pAYHLj8LR@HLrHAI9QLEtLLLt HHM!!IL9p@L LpHpH%tgLhfoHCxHfAo(fAoxMX )pLffDoHfopfo]LMDCxHL~fHC`DX,LH8HH8AA{ECqDHfoHLHHHHHtBDopHfofDoHxfAofEfs ffs fofAffs fAooHfoHfs fofofofs fffffs fDoGHfoHfs fEofAofDofAs ffEfAfAfs fL9DoWHfooghH@fs DoDo_8fEofEofDofAs fDfAofEfAfofs fDofEofAfs fDfAofs fAfAofs fAfofAffs fffDfofs fAoffs ffs fDfEofEfAs fAfEofEfAfs fAL9fDofDoDfAsfAs fAofEofAofs fDfAfffs fAfH~HʍVA9t9LcDRK E9~(IcrI A9~LcƃK A9~LcK HKhH@@HCp:f.HC`DX,LH8HH8A~ESECADHfoHH<HHHHHtDDoPHfofDoHPfAofEfs ffs fDofEfAfs fADorHfoHfs fAofEofofs fDfAfffs fAozHfoHfs fofofDofs ffDffAfs fH9 orHfoozhH@fs DojDoB8fDofDofDofAs fDfEofDfAfofs fofAofAfs fDfAofs fEfAofs fAfDofEfAfs fDfAofAfAfAofs fs fofffs ffffofs fDofEfAfs fH9fDofoDfAsfs fEofEofDofAs fDЍVfAfEfAfs fAfI~ID9 >f@\ID$I9IM9Ht1HĘ[A\A]A^A_]MwpM;ItMIpAAG\QLPpL;HtMIa@\pMwpIM;AG\LPpI"L;@\ffDfDLSHLpMt'HEH5-1L1HpH¾H=QY#wHpLL9 HypH9 HH8H9L[PHC`MK8MC8LKhAs,IS@{F~MfoHM HHHHtPHAoqHfoIfs fDoffDofAs fDfDfDfAs fEfAoEoQHfoIfs fAofAfEofs fDfffs fDfAoM9 EoaHfoI@Eoyfs EoA(AoY8fEofAfEofAs fDfAofDfs fAofEofEofofAs fs fofDfAs fEfAfAfAofs fofAffs ffDfDfofs fDofEfEfAs fEfAfAfAofs fDofDfAfs fM9fDofoAfAsfs AfEofAfEofAs fDAAfDfDfAs fEfM~IA9t6HcHI9}'LcDXKA9}Mc˃K9}HIHSp1:AG\NHC`Hx8L@8H{hDX,HH@AAsEKfDoDHHL8HHHHHtGopHfAofEoHPfDofDfAs fDfs fDofDfEfAs fEDobHfAoHfs fAofAofofs fAfAfDfDfAs fDDojHfAoHfs fEofEofofAs fEfAfEfDfAs fEL9obHfAoDojhH@fs oz8fDofofofAs fAfEoffEfEofAs fofDfAs fADoRfofEofs fEofAs fDfofDfAfDofAs fDfAs fEfEfEfAofs fofAfDfAs fEfEfAfAofs foffDfAs fDL9fEofAoDfAsfs fEofAofDofAs fAGfEfEfEfAs fDfL~HD9t8LcDPK E9}'IcҍpI D9}HcI D9}HI HKp?@\Lj8Lz8Lr@DQDYADozHojXfofs fDofofDofAs ffDfAfAfs ft>DoRhfofs fAofEofofs fDfAfffs fAfofoDfsfs fDofDofDofAs fDDFfAfDfAfs fAfI~MD9t>McAXOT9~-HcEXMTD9~IcAMTD9~ McOTLjHLaHrPHX&HRXHL`HAAƅƅƅIU@H$H9I}HI}PAt I}X@\fDIL$@HI9I|$HI|$Pt I|$XAG\fDAG\zH,=H5m1LC1ҾH=HYHIgMAw,~EoHAo8AAfAofofAofs fs ffAfffs fAEoGXfofs fEofEofDofAs fDfEfAfAfs fAAtEoWhfofs fAofEofofs fDfAfffs fAfofoAfsfs AfDofDofDofAs fDAEfAfDfAfs fAfI~MA9t6HcDPL4A9}%McxN49}LcσN49}HL4M@LHILL9p>fDHDžMHDžXHDžHKPHC`y,LY8Hq8~WDGWEHfoAIM IIIAItNIDoJHfoHfs fEofEofofAs fDfAfAffs fAoZHfoHfs fDofofDofAs ffDfAfAfs fI9DorHfoDoZhH@fs Doj8fAofEofofs fDfAofAffEofs fEoffs fDorfAofDofs fDofAs fEfDofEfDfAofs fEfAs fEfAfEfAofs fofAffs fDfAfEfAofs fDofEfAfs fAI9fofoEfsfs AfofofDofs ffDffAfs ffH~HAAE9t8LcDPK4A9}'IcDHI4A9}McK49}HI4HshHI@HKp9IGpI;o HtHAG\)IGpHI;AG\I}HI}PH{fI|$HI|$PI [oaHfofoHQfoffs ffs fDofDfAfs fHHL HPLPDoh8L@HoS8HS8Dow8LOHL{HD))UHrLD)L)LD)@LPD)pLMHuHt#H4H51Hy1HH¾H=AY LLHDžLPIcJ,Ir8M`8IR8Mi8DYDqA0ELfoAIOIIIAIIt9AoZHfoIBfoffs ffs fofffs fopHfDoHfAs fofDfDofs fDffAfs fDfAoDoPHfDoHfAs fEofEfEofAs fDfDfEfAs fEfAoL9 DopHfoH@ohfs Do@(Do`8fAofAfEofs fDfoffs fofEofEofEofAs fAs fAoffs fDfAfAfAofs fofffs ffDfDfofs fDofEfEfAs fEfEfAfAofs fDofEfEfAs fAL9fDofofoEfAsfs AfAofAAfs fAfffs ffH~HE9t9LcD_JD9~(McDwJD9~McރJ9~HcHMR@Mx8HHDžLEP,ASEZErA4DLfoHNHHHHHtff.UHAWAVAUATSHHLnL9LIH)HHHHtkHt2HL3HL L -)I4$LHH Lb)I $L3HL L,)I<$LHH Lb)M$L3HM L,)M $LLHI Mb)I9M$L3H M Lj,)M$LLHI b)I$LsL L:,)I$LLHH a)I4$LsL L ,)I<$LHH La)I $LsL L+)M$LLHI a)I94H[A\A]A^A_]fUHAVAUATSHG0HX H[HHt{ t1[A\A]A^]HIIIHPHtۃxduI$HXz tHtHHq H^HHt{ uL#HAT$HHtxuH6pcILXAx NLAy DǃDK$ƉE'{ 8ǃLPDL0L8EqE!AB(EEq-LǃEDXA0N1҉~ HEpdHHrHe[A\A]A^A_]ÉHY LLH SdLL: YDEu{DEuoDEucDEuWHH9uDHH9u7H9u.u%HPƃD1DHDHDLPƃD1AT$HAEN@ML{ ANEvDHÈDESEADDMDUDeELDdAqEȋTAEDAILMAuȋ AWASED1DT`XZE9}CH0D0DmHǃ|]Hǃt(D1d1!HǃSHǃ[Hǃ f1df.UEHAWAVAUIATISHH G$vN‰G$McEIcuHcHcLHLlj{DEȉC@McLK0DSpD{lDstEDKxDC\E֋KX{dDEDDDEADDADS`DADDDAE‰C|DADNj{hDEADDDDD‰DDDAE@t$AʉщDљA9|tAfDDDAAEDtAʉщDљA9|tAꐉDADADEDtAʉщDљA9tAꐉDHhAE}HtǃCD9AD‰AljHxHl|H|HpcHHCHH*HHHHmǃueD`$E1EKD?Dșt EA)EFE)A9EODH[A\A]A^A_]ǃAuAD$(EeD-LAuA0ǃDDA0DN1DD~ ApdHHUHAWAVAUATISHE HHH0W$H(DDD@<ҹNщW$HHIc$Ic$HcLcFHID HEL$D@AHID$0AT$@El$`ET$\Et$dA|$XEDED$hE$ADAD$pADAt$tA\$lEA$AEE$EAE$AEAE$Et$|DEA$EAE$AA$DDA$A$AL$xADE$DDDA$AE$EE$DA$A$E$E$Et*ADI$@I$<EA$tI$HI$DEA|$XtCI$8I$4EA$t*I$0I$,eEA$tI$(I$$;EI$M$ A$mA$M$M$I$ M$y tHLDA$t LLDA|$tt HLDA$ED$|A$E$DA$A|$hA$DA$E$xt I$PI$L3DE$AD$xHHHcDA$mABHHI$hN AD$hET$|ABHHI$pEzE$EgfDoXE11fDo XfDo%XfDo-XfAofAofs fs fAofs )e)E)PEA$fAoE1A fs fDoXA|MfAoDufs )p)`D]DE$E$A$A$ MA$ ALcAADAZDA$xLcAw %| IfCtfC|At>ADˉAЃE$xIc AfATC fA|IADDA׃AE$x McfCtfA|HADAA׃DE$x McfCtfA|wHE9 ADDA׃E$xMc fCtH_fA|AApAE$xMcA DAA fGtADfA\H_ApAAރA AE$x McfGtADfA\H_ApAAރA AAE$x HMcfGtfA\E9AE9$^AE;l$|A$mLH<E$EQucCDALHDhE$|Ax$AMp$A$EhADŽ$E$\He[A\A]A^A_]AD$XDЃAAD$lAD$pAD$tf.EҸAOALcƉufnuAODMAfnmKAAH@M$ÈEHAxDA$EPED@DMA$ DUD]MD$ A$dAPAAWDiEDLMɉI$DIA$TAEDmȉEA$1҉A$TA$`XZ9A$H(A$mIDŽ$4IDŽ$,IDŽ$$IDŽ$LIDŽ$<4IDŽ$DEIDŽ$K1A$daIDŽ$ IDŽ$fDUIHAWIAVIAUEATSH8D`dAҸNЉdIcIcrHcLHcPHHHDADAHHpArDAʼnEuHcHtHH DXD0Az$AMJ$Dމ4D8LcL]HcEtHULHct MILMLUHIcH@ǃHLLH(HL LAA$AT$DMAL$@A|$ÈED$DUEDx}ADDQD]EHALDDIыAEDML`AQLMAPAE1D]XZA91A4Et$AG(E<$E-LEt$ǃlG$>EAA00DN1DdDh~ 0Atpu"He[A\A]A^A_]{/HH`iHe[A\A]A^A_]f.|D~tt)1 tÐ~H ~H~Hff.@HHHfDHVHHDUHAUATISHHcF,HN@HHHE~EHWhF8H\`H H~/L,HHHvHL|I|$pHLhHL[A\A]]f.UHAWAVAUATSHH(Df,A~cL~8LnHfoXLv@MLnPLwLoAu LnXLoHIHtu'HMHUHu4HuHUMIcH4 H1ҋH`dA{DL/AUxDWI|$Ml$tI}I}#I}MI} wI}(I}0Me8M9I<$pI|$Ml$uL'AT$xDolbUE1AHtDH=ÕXAŅ+AEHuH}H}LML9 LHA 1H)EE1E1HEE1HH*HHteHDzA  A n A  A EA  A AAAAE@HGHQ = D   E 3 J UfHL8EGA A A A_ EA  A AAUfHI9tjHQ   &%E UAA IGI9uDuALcAA@Lx1A!HtppH L HpH=XLh'A H=XA1AD!UHh H=̓XH+pHD AH;xHMD!D D}D LuL;x EAEAE!E1D fDH=XAƅ,0 Y1H XD⾹ H=KX|H  @D0 AAuHL AB<4  uH C@FA {D4 Hz`1ҁcHPxDl#L'AT$xDlHPxDlfL'AT$xDwlj]HPxDOlB5KfL'AT$xD#l AA LxH@D@A tLA rA XAEA AAAUAA IOQ tB ! E iUDAA IGD@A A A A.EA HAAAU_DE1A f4  H=PHXu$ H=HHX[@A kDAA AA AA AA 3H A<TDlLuAAfAAAGDAAADAAA_DAAADHPxDlSAA AA AHPxDlL/AUxDl~H @@ZDAA kfAA AA AA HPxDlCAA AL/AUxDlL A@@P@AA9AA)1A E1HDžxEE-L/AUxDlJAA AA 1 bA5E1AA nAAAHPxDl~@AA AAAA[AA BAAAArA_UIiIo@UHAWAVAULmATLeSHHHXHPLLP@DxvXIr EEѐff.UHAUIHATSHHuA['1Ҿ H=5wX u1҃{$ tH[A\A]]DD'1Ҿ H=wX uADž 1H[A\A]]Ðff.UHATIHSHP1Ҿ H=vXHHÅ? uRA$0 t{DCDDlsAu9A1A Eu) H=%X<ҁ [A\]DE A A uM$1A{`밐1H wvXA$8 @ H=%X1 P땐U1H %XHAUATI SHH0 H=%X1H1H ?vX H=[vXx`1buUM,$L1AUL-ZvXPDIąH1[A\A]]HA9\$D~1I|P LtH [A\A]]Ð0 tu t f.4 txLAEH`Au EAu EAu E ÐD4 A A oD EQAAAw D$ Et-H HH9HH9{IF1LH  HF1HfDLt 1L| Vf$ c/H Ht"IL9tKHH9vIF1Lf.IF 1LHFH1fU1H y"XHAWAVAUATISH H(0 H=2"X1KHHP1HxItI$1ҁy`1H sX H=sXxLuIw 1E1ILϺLiHUH;UEGd1Ҿ H=!XAAMO1Ҿ H=sXII<EAA THUH}IH(H)HIL9yt,1H=J!X 9tA LfH(D[A\A]A^A_]DA HUHAVAUL-!ATSHH H HH H HL Ax<u ǃ 0 H 4AH It"K| HxkfDHH 1[A\A]A^]IIHIIIHHff.UHAWAVAUATSHHH0 H P<,H H}Le诮HMH5}XLL9LLxIH}IL9t[H}Ht譓0 ALv BAFD8 4 DȃAAA D  D\ H ǃ H D H )L L LL)IIIM9hL L IM9ML=LLM)IIIMAIIIItoItGIt!I2IuIzI}HtGI}IrHHHVHWHtBHHLLLfLgMtAD$HHHHLvLwMtAFHHLLHFHGHt@HHHHL^L_MtACHHL&L'HNHOHtAHHI9L6L7LFLGMtA@HVHvHGHwHzHxHtGLZLXLbL`MtAD$HJ HH Lr(Lp(MtAFLB0L@0Hr8Hp8HtFHz@Hx@LZHLXHMtACLbPL`PHJXHHXHtALr`Lp`LBhL@hMtA@HrpHxpI9IM)IOt M9hMMMM)IIIAUIt[It*I}MUHqGAz3MeI|$M$HGAzII|$M$HGAzIM9fDGAz蓏IL$HyMd$H GA|$ HMbHMHyLaH GA|$ HM3HMHy(La H GA|$ HMHMLa0M93I|$M$H9AzC L AC9ǃ  DD0E0 DDA͋4 AAAAD(D,EEEGAAAID HL H L L @1 tHH[A\A]A^A_]fDH H}pH]H`H=iXBH}HtE葍EHH[A\A]A^A_]I\ L ffDL D L D H}IL0L9TTML藾fAAIIIItmItGIt IIEIRIUHtBI}IrLLLfLgMtAD$HHHHLvLwMtAFHHLLHFHGHt@HHHHL^L_MtACHHL&L'HNHOHtAHHL6L7LFLGMtA@HHI95HHHVHWHtBLfHvL_HwI|$I{HtGIL$IKMt$MsMtAFMD$ MC ID$(IC(Ht@IT$0IS0It$8Is8HtFI|$@I{@IL$HIKHHtAMt$PMsPMD$XMCXMtA@ID$`IC`IT$hIShHtBIt$pI{pI9Af.MMMM)IIIAIIItzItZIt:ItMeMt Al$MeM|$Mt AoIM|$Mt AoIM|$Mt AoIM|$Mt AoFIM|$Mt Ao IM|$Mt Ao IM9IM|$Mt Ao M|$Mt Ao M|$(Mt Ao M|$8Mt Ao M|$HMt Ao M|$XMt Ao M|$hMt Ao IpM9M|$MGAo;ILRAo &ILQLML)HHH/HtXHt*I}MeH9GA|$`M}IMH GAy 8III7HG~ IM9GAxQMgI|$MH^GA躇I|$M|$HGA蓇I|$(IL$ HhGy"mM|$0M9tcIMH[Axd L AA9;ǃ  #MMM)IIIA&IIIItwItMIt#MeMtAL$yA|$MeM|$MtEOAQAWAjIM|$MtEGApAwA IM|$MtAOyA@ IM|$MtEOAQAWA IM|$MtEGApAwA IM|$MtAOyA IM9@IM|$MtEGApAwA;M|$MtAOyAKM|$(MtEOAQAWAYM|$8MtEGApAwAfM|$HMtAOyAvM|$XMtEOAQAWADM|$hMtEGApAwAQIpM9M|$MEOAQAWAMLARAO yA MLASf.D_AAEfAEl$E1M9f7A|$D D HED GD9ǃ A fDA|$D D HED GD9`ǃ A GfDA|$D D HED GD9ǃ A fDyD D HED GD9tǃ A [A" D LDD ACD9ǃ  AD LA A@9ǃ A gD D HED FD9ǃ A f.D D HED FD98ǃ A f.D D HED AD9ǃ A f.D D HED FD9ǃ A f.D LA AB9ǃ A @D LA AB9ǃ A k@D D HED FA9ǃ A f. D LDD AAA9;ǃ  #Az L AC9ǃ  @~MD D HED GD9 ǃ A ILPAo MLAQMLARAo PMLASAMLAPAo AI7LV3ILPAo 4MLAQ%ILRAo &ILQMLARAo MLAS MLAPAo  I7LVD D HED AD9!ǃ A DILPAo MLAQMLARAO yA MLASILPEO AQAW AMLARILPEO AQAW AMLARMLASEG ApAw AILPMLARAO yA MLASzILPEO AQAW A{MLARlMLASEG ApAw AjILP\D D HED AA9!ǃ A fDAz" L AC9ǃ  @MLAPAo I7LVMLASEG ApAw AILPAy3 L AD$9 ǃ  fILPEO AQAW A!MLARD D HED AD9ǃ A @MLARAo MLASD D LED ACA9ǃ A @MLARAO yA MLASILRAo ILQMLASEG ApAw AILPAzD LA AD$9mǃ A Tf.ILPAo )MLAQA|$ D HDD BD9ǃ  @ D LDD A@D9ǃ  ILPEO AQAW A7MLAR(D LA A@9ǃ A fDMLAPAo I7LVMLARAO yA xMLASiM$LARAl$ iM$LASYM$LASED$ ApAAt$ I$LP訢IPI6IVUHAWIHAVAUATISHHPHuH}Dp H=RXgH@Eu( O(H=WD,$1A9Ή(# H[A\A]A^A_]fD;mp fD;lfDA< : H=~QX蓢, sfDM$h1Ҿ H=WIC HxHQ8f +fDI$HpH8I$HXI$PHPLUH@AFH0A7D@`'D0 `'@_'D_'DA_'@A_'H@10 H=W@1 H=Wk1 H=WF,@ƃ(AD!ƃ$AA  E0 AAVHH pPX 1H=WIH ?RX 1H=W輡JH fRX H=W蕡x1LPH}IL9tP9PHXH}HH9tXXH8HpHH9XXD vfD1A H=AW~u1A H=?W`u1@ H=:W?DII)IIIIH1H9H=OX #03A H=OXD!@־ Ȟ MXM9Pt]Aվ H=OX蛞H H=OX{@ H=OX[MIIM+I+IT4IHMIIdAվ H=ROXu<H H=^OXٝu @ H=jOX轝 A4 dD[<Aƒ A …0DAƃ AE AAA AA E E!ƒ EAA AE1EoD0AƅHE EE D@D0t1LHHHEu E6ƅH# H=LX虜 bIt$0ID$(II)IM3LA{PHxLPAzL@AxIHN I IAH HyLXA{OHxLPAzhHIItBH L A|$L@AxHHy.LXA{HH H8dLPAzL`A|$L@AxHHH HI9LA{HyoLQAzLaA|$HH LAxLXA{,Hx]LPAzELa@HHA@A|$L@AxLXA{HxHHA`HI`yJfA4 A4 I @M98 qI M9@ ZAH @LHXH5oπ1Ҿ H=WǙ H8H5co蒀Aվ H= IX腙EF@=EE1AHELHHHL9ƅHEH9ƅ@AE1D!D!҃#JHXH5sFHPH5oA(A AE1E1HB(LHHHEJHbHB8YHB0PHGH>Hz1HLAzHL A|$HD I颫I鳫IīUHATSH H^PK,UH x<LDALIA~IcHH1H4QHF8]H9FxLcڍrN$ID$8:I;D$xLcލrN$ID$8I;D$xLcލrN$ID$8I;D$xLcލrN$ID$8I;D$x[LcލrN$ID$8I;D$x7LcލrN$ID$8I;D$xLcލrN$ID$8bI;D$xLc޾JD8 @If H=HX?H 1[A\]@1H{@ H=HX K,)DHS@AIcHH93LQIC8HƃI;Cx LcDYN$ID$8AI;D$xMcDYN$ID$8AI;D$xMcDYN$ID$8AI;D$xMcDYN$ID$8AI;D$xuxMcDYN$ID$8AeI;D$xuVMcDYN$ID$8ACI;D$xu4McDYN$ID$8A!I;D$xuMcJD8 H6H4HF8 LeHLH56oLb{1Ҿ H=FXZH}IL9tvH [A\]øL9t3ILS8AVIcH%fH{81II9LS8I9[LQMP8M9Px<HcDYL$MT$8AM9T$xIcDAHM9SxuxHcALMP8t$M;Pxu^HcLT8 g1M9SL91@I,L90H6ff.UHAVAUATE1SH@tH@D[A\A]A^]DpuHH,tJHtH@uAĄtLXMItI~@uZLtNE1댐LmHL H5VoLx#H}IL9T褓JAV,B4HI HHA8t HrZHcMMH8I;t IIDRA*McKHK8H9t HpHrHcMMH8I;t IBIDRAMcKHK8H;t HHrHcMMH8I;t IIDRAtrMcKHK8H;t HHrtHHcMMH8I;t I ItHcMMZ8I9tIuhIIIN8H9t#HtE1HLYA|HI9oI~@dHtI~8tILuHXLT LH5-s5vH}AIL9YFH!H f.UHAWIHAVAUIATSHhHP KW H=BXxH0IMU1f.8ME蛎kAv,Kd ~R1҃G H=AXIMExM0LE~EM@M`LMIMELU~UL])EULe~]HE)U])]aAM\foe1foufo}HE px M H=RAX荍HUHH0HU H=TAXWI|$P1҃(uM1Ax`¾ H=rAX5A|$u A|$\LcH[H{Pto1҃} H=@XՌ]LSP1Az(uM1A{`¾ H=@X蛌{u {\I\$H9]L#I|$Pd1҃}A<$At$@@1ҁ,1v1mfA.@Et1@I1ҁ{`*EDpADtAA@ Ҿ H=@XxV H}E菍EHh[A\A]A^A_]D;YDKAAGDHh [A\A]A^A_]@It$PLH=?X%uA}\LLH=?XUHsPL蔽H=S?X։3A}\HLH=_?X誉D}1҃} H=WAYA0 A4 {IHtAu z( IHt'APuD( AEDDMMt&ApuAz( AADۈIXHt#Aux( DΈIHt&AuDz( DDDM Mt(AuDAy( AEDD H=WtD k}M1Ҿ H=SW豈uA0 t]1H,ADUAdA.]H AX 1H=W莉AA 1҃} H==XA DGAA1҃ H==XD!ɇE H==XEZA1A !蓇AA0 A }`AAe3yA auuEMtAA5Lt)IXHtH8utAƇ E~,AkAds9At3r A A v'EAAAu1ttAtAA1YAtA[1EA}t @1E!H=>XЅmA}tSAMM9о H=JXv1tDJAA IwDXA~A I]1MM9 H==X]AA1MM9 H=+=XAAFZQDOAl1nI4MM9 H=vWI(I9 MM1L]胃u'L;eH=LW@1@־ `V II9 I(I9 H=WAD1uAAEMtAaXAeOY1PHXA4 +AH=[8XH@1҃ ! mI~U1H fD1L9'HhH5Wc H=7X|M$A|$`AH WEJcH1H=8X U|pAA1D{DE~=WD+E1D`E1H5fL9ʾ H=7X{ID9cD~JTPNxD9`McffHIffL9N(fE I*JI*[NH*gJI*pL*I^fH*H=p7X(^fI* XD(D^TfH*)D(E^DPDLz1ҾDXH=WD.lXE־ zDT1DHA H=WE.AEyzG1ADP D.5lXH=WAE@z1ADL D.=kXH=pWAEzAH 6X 1H=0W7{u'H 6X 1H= W{_ 1҃ H=B6XyDH=WL(E1HXE@@1H` H=W2yuQAID;ID$`HX HI|$hI$H`HI|$Hxt 1H5WL_1҅DHhH5W_1҅H5WLr_1Ҿ H=4XjxHhH5wW?_1Ҿ H=4X7x ~IHIRIcU1H F2XHAWAVAUATISH H0 H=W1 yHHE1PHDtLhHlLqHcL;eL DQMxAM9>McڍAN4MxcM9HcDIHHt!HLAxAHEDLA{AHEDL6A~AHAHzAHEDLAzAHEDL.A}AHEDH9HLNLfL~xDDAyLF AEDA|$L^(AEDALv0AxHV8AEDA{AEDA~AAÃzAH@EDH9ZHth1tH[A\A]A^A_]fH8HhpHLH@L9gƅ`ƅXHI9tfL#A|$\uHH5d1LiLPA|$ uI$I9$|Hƅ`I9ufDX@"`@L@MtLg1H %Xھ H=%Xf.`H8HoLHL(I9HhLxH`L-MXL0LHLHfL`I>_ %YLgLM9LLL)tI<$f.L1ҾLMcPA|$,duU1Ҿ H=?MXI$ndu2M$I$Ao\$@I$M$fA\$@H{LcLwP1ҾLA~,duN1I H=LXcu,IIAoF@IIfAF@I\$I9H`L`L9(HHteH8HhmLLLM9u2MtL{e1@AHI9tH;DO\AuHH5a1fLPAz tItMJHIJ@AB,IǂIMI@ID$It$HPH9gH)E|$IKH(DL0DEu*MM9ƅ`fM}MuMoPAu 6E@uMM9ƅXMnL9PIMLqPHHE~ WHeH5`1LweLHL@M9pH`I9!C1ƅX%@H1Hwz_L.MUPEZ A AEuMM9%ƅXLnL9Pdf@HHd1LH5_dHH@I9L`M9sH1H5Z_13dL@`EEEELxLpLM9LL)t]I?1ҾH_PL{,`"1H H=HX_o{@fH 1ҾLLaPA|$,_uU1Ҿ H=gHXI$_u2I$M$Aol$@M$I$fAl$@LSL{1ҾLIZP{,>_uL1H H=GX_u*o{@fLH{@HLI_I9 '@@HHb1LH5]ybHH@I9fDH5q]HJb1L@bHHH@H9%DLGHOL9HLL)HHHHHcHCHHHtGIHBPx t6Ht,LXHHx@@,HǀILHI@L Mt$PA~ t7It-MVHMN@AF,IdžMMMHLIPPz t6Ht,HrHLZ@B,HǂLHLHH8LgPA|$ t>I$t3Mt$HMT$@AD$,IDŽ$MM$M$HLMAPAx  HLMcPA|$ tI$HLMJPAy tIHH99H0L^PA{ tI LPH@LHPAy tI IRLZPA{ tIB MrIFPx tH IzHWPz tH Mb Mt$PA~ tIX MB(IPPz tH Ir0LfPA|$ tI$ IB8H9K M Ai EL WMct$xLuOcMAM M M =t@H~iH b1HHfHI9 I9u&M@I!M@HèH!L I@I9 HH9fDIĨL9ew1HX[A\A]A^A_]fDI M M =d@ H~H=R1IIfHI9u&MM!MHèH!L II9u&MM!MHèH!L IH9HH9IĨL9efDI M M DE HH=1IIDHI9u&MM!MHèH!L II9u&MM!MHèH!L IH99HH9IĨL9eGfDI M M =ܗ@b HH=Ɨ1IIfDHI9u&MM!MHèH!L II9u&MM!MHèH!L IH9HH9IĨL9eofDI M M =Ԗ@0 H%H=1IIfDHI9uMM!MHèH!L II9uM^@M!M^@HèH!L IN@H9HH9IĨL9e(LM$MwL;^ MI)AL9IIItzItZIt:ItH HL9PH HL96H HL9H HL9H HL9H HL9I9mHwH L9LWH N9HGJ L9t{L_H N9teHWJ L9tOLGH N9t9HwJ L9t#HH L9;fHMMcL$xL1IĨH}N4L9e fDLM$M`L;>AMM)AAL9IIItzItZIt:ItJ IN9GJ IN9-J IN9J IN9J IN9J IN9M9TICJ L9I{H L9ISH L9trMsH N9t\IsJ L9tFMSH N9t0ICJ L9tIH N9;HML11H XH=WM17D&Ic$H}LIĨCL9eNDM McT$xIĨMcD$HMOLLH?H)HX[A\A]A^A_]HMxHM_H=LMLEHu#IHuLELMIH=^L _2I>I2>IE>IX>Ik>Hx>I>H>H>H>HP>H>I>I>I?I?I'?I:?IM?I`?Is?I?I?I?H?H?I?I?I4@I?IZ@I?I/@I?IU@Hy?ff.UHAVAUIATSH0)H=jW"ÅA I LeuA LLe1ҾH /WH=mXI|$1$I|$ 9I|$(-EH}A$EI$0HtwA$AHEHuA$L e=uLM1EH1AVLWH XH= X$AZA[IDŽ$0It$E1jE1I$0j11A$AXAAYHEHuA$L <uLM1EH1AVLWH 8 XH=K X#^_I$hI$0I$8A$AHEHuȉA$L N<uLM1EH1AVLWH XH= X#ZY 1ҾH=r XI$8z!EډH=tW H}؉HtuL]H=`Wh He[A\A]A^]I|$ FH=W8 @L0 H}A9 I A H=WH}AHtAEu,I &fDfDDBIÅtL(LuH=&WÅMLUH=&WÅ-L5H=WÅ IM90 H(H`HhL`H8I9e TWfLXLfIL98I<$ uH H51 DHpIEuĀtHxhHP`H HH= pG TWf.8D>ff.@,&IVEHEHUHUHEIH HPLLPHLRM MZLM IKLHp HqHH` LFHMP MHLM@ IyLH0 LWHM L{HPH5z1S H@L0Is LFHAxsfDHPH521 H@L0MQ IJHy|HaPH51 H@?H0LJ MQHAz%fDHPH51{ H@1H0HG LhHA};fDLeMtL1H=WÅRf.M)HAEX@HOH5 1H@L0Mc It$H~tAƇ gfDHOH51H^LMc It$H~DAƇ 7fDHNH5j1CH%H(  HH8HxpH0EA mHXIA\ H`I@\ LmAE\ MIxM HNH51H}H~(l~ bHH8HxpH0DA oLXMA@\ H`IC\ HUB\ MIxM"AƇ HAMH51HeH~(T~ JHH8HxpH0$DA LXMAA\ L`MAB\ L]AC\ IHxIfDAƇ AƇ -HILH51HLIP LJHAylfDH1LH51H@^H0HO HAHxEH}HqsfDAƇ HKH5J1#HLIz HOHyAƇ HxKH51H@hL0IP LJHAyNH`HtH=VW:IHI0 H(LHM M; tM H(H H}HtHuLDH 6H %Gf.8f.@ALJ( H(L> H}LUL9LHE1E1H)E1E1HQ    |s HWI9p  /tjte HBHJP tp  tVtQ -HQI9HH |LhpL8uALLhpL8uAL럀LL8DALHp7LL8\ALHpOHLL@p7AL8'HLL@pAL8Ht!L0L8L0L8M@M@@ tYML8@AAD t>MaPLCIMPE\$(H8y( E(  A( A HUIHEHM1H}H=\WHE1H=\WHp HHLMI LIyH0H0I0~LI(IDž0I8I@I IDžHMZLL0M9-~H0tH0H9VH0HHHz HMHHHtHHHHX HtPu LX`As,w Htu tHXtu ALH \OAL?HtPu  LX`As,w Htu HXtu ALH sALcHUHLZMLʍHHt2LύHHt&L΍HHtLʍHHtIHuDMMMHDžH8HDžHDžHH1HtfHyHtYIItMHƍOHtAIōOIt5HOHt)IOItHƍOHtHOuH8HGHHDžHHDžHDžHI1ItcL΍QHtVLσHtJLȍJHt>M͍JIt2L΍JHt&LύJHtLȍJHtIJuDLKIHDžI0IItIALDL8H(HHH9` M pOI@ LHI2LMI t(I H?'I I HߍH5u'M H L_?'I I LHL@t'I4 EEAEPA< I@ H@AH IuXA}`H5HIEd1AMlH OVpHFHLH51WLXcHPH51W HHHPLHGGfoDž )HHƅfI HH lLHIFHHt蕡HfH`H;tLXH@IL9tL@H IL9tI I HHӻLI0HPAI8Dž`HɬHD`HHHtʠL@EE1HH TpLEHXLH580W謨LPH50WLfFHXLHEfoDž )HHƅI H HHHHHtH!eH`H;tlLXH@IL9tPL@H IL9t4M I HL'HHHPAHDž`$LD`LHHt%L@EE1HH RpL]CHXLH5.WLPH5i.WLDHXLHCfoDž ) HHƅI H HHHHHtDH|cH`H;tHXH@HH9tH@H HH9tI HHI 肸LIHPAHDž`LD`LHHt耝L@EE1HH GQpLAHXLH5-WbLPH5,WLCHXLHJBfoDž )? HHƅiI H vLHIPHHt蟜HaH`H;t"LXH@IL9tH@H HH9tI I HHݶHH:HPAHDž`ڧHD`H0HHtۛLHH MX誏LPH5+WLAH HLH[I HX(L@HIHHHtQH`H`H;tM I HMǵHH$HAHtL@HLƎI HwLLI1HAHt蝚A I HEPIH~ LV0MZ ISHHD HhHy HGHHLfAv(LXL'CLXLLPH$XL7HHHLHLLWM I LpLMHsLpIHlL牅lHHXH{HxHttI LM LpIkHAIDžl L DpHxHtHHH9tH`H;tHXH@HH9tmL@H IL9tQH HHH9t5L0M@pH0HHI)\(\HHH8LHxHLXM)IMI9%H0HL@p(H`LL@AHHH8ILHXLLL L0HLLI-I LM LPHIHHH H߉ HXjLHyHHtNL01IHpI@xH9[@H(H9`L LO,IN)I DžI$HPзLPLLI wHHHXPI$Dž DPDHHtuH0LHrpND.PAp(Y?HXI$HDž ;HLHMNL9tH0HOpHGxIHI)\(\I)IML9H9H1H.WI)\(\AHHL(HPL0L'@IKpICxIHI)IML9uI9`tMA\ DEF(AAw LHCIIwISILHAIL9t?HXHt莁A#MUPMr8HDžHDžLMM1ItdLڍAHtWLރHtKM؍HIt?LߍHHt3MٍHIt'MڍHItLڍHHtIHufDM^MHDžHH5W&L0H59WL&HHL%foWE)EVHHƅܰI$ HHHH辺HHt HI=EH0L9t茱LHPIL9tpHI$ M$ dLIHH8DžP^L0PHHtaI$ HHHH賷1҃ H=7zW芮HAHtEA$0 PIuPHM]PL0IC8HIs@HMCHH5WLI{PH L$HHLH>I$ HLHIHHt<~HIlCH0L9~路tfArDA$0 IHt}IuPHH0H5+ WH#LPHHHL=I$ H5HLHHHt^}LBHH0HH9fDA DH=WF HH蛮HUf1LH1HHH{HL1HHHYH;AHEDIEIIIIIIjI"IZIIIII2Iff.UHAWIHAVAUATSHXHHPHPDp@HHDhDD$hHpH$HH#DžAvAɃI LPLHPHHLH5W!HL脳LHAIL9t腬HXHtzAb  PH(oC`IocPoHokPHfDoHflfooLfDmfooH0fAfʈHH8HH@L|)P)`DptDžHDžL0H5 WL牅xLH5YuWLHLLfDo WHHED)M8HUHyHLީI HLHIHHtyHI@>HL9t菪H0IL9tzM ɪI@ LHIŹO7M HI M(>LI蛩HA0Ht2cx+H W 1H= W E1HIsZHHHL`xLkI H蟒LHIUH HtwD1LLM LHLLLH@HbkLHII LLPLI賯HX HtwM I LM謑LPHIbHXAHtvHLhLMHH0Dž0LH臞HLHPIVH9tHP ptLAJ DAHIcAH5UHHH0HfDoWHHHHD)LHDž8MdHDž@L0MM1ItmLDYHDt^MуItRLAKHtELAKHt8LAKHt+MAKItLAKHtIAKuMT$@MHDž8DH1H (pH)HA11H WyHLPHHL9fHL@L LXHH5WLLH@@?HHLifDohDžD)HLƅh膤I H 蓎H LHmH(HtsL8HH0HH9t8HH;t#LHIL9tI I HLHPHWIHM@LLHt9AHHIHt;Y ~HIHuH;t D;V 8HʤIËHI8IC(IS AC AC0L}LHH9t HHLL2I`HHH~(V0HXHrHNLHIL9t蒣LHIL9tv1HHHH9tXHHpHH9tHWHHeHOH2HHHHtHH鷾HHHH(UHAWIHAVAUIATSHHHPHPp@IHD`DhAhHpHNAHHTI HPHʀHPHH5VHH HHcHHHH9teHXHteEED$1AMAEVPIIt_ItIIt3ItIHEHtETPHHtETPHHtETPHHtETPHHtETPHAMFXH0fH5hVHXhHDžxDž\DPDT LH5VL HHHLw%I HLHIHHt9dHIi)HL9t踕H0HH9t裕pM I@ LHHù5%MHLHWI HX~HHHHHttcM 1HLALBIHHHDž&HHgELILHLVIXH萓I H}}LPLI7HXHtbM I HL,}HPHHHXHtKbAuuI I@ nHE1H1ALILHDžPLނL HLDžP"LcHDL=H L=H8L=HPL<EIIM)DNIO(LH)ǃLHILL`LMdH L I4H(L I|L``H8L$LhhH8LlLHPL LHPL\I(I91L HIL$LhHLlL H L L(L M\Lh`H8L,HphL8ItHLPI<LLPMdHPHHH LI4I 1LXHL\7LL Md5HH HT1LHPL8M 3L`XH8Ld7LHPL,2LHPLL1I9DAe LgVKcLfDHtETPHPHtETPL`ItGTPHxHtETPHXHtETPHpHtETPLHItGTPHPHtETPHBI9wfA0  Ht^L0H5VLHHLHI HyHHHHHt7^HIg#H0L9z貏pDLILHQI HxLLIBHHt]M HLHAHIL9& fDA0 HtH]I HH0H5VH HHHH I HwLHImHHt\H!HH0HH9!0ǃEEYǃhHH>HH=Lfo(|WHHLcAL0LHHL)f.HDHDž8NlHDž@L0MM1ItlLDQHDt]MƃItQLAJHtDMAJIt7LAJHt*LAJHtMAJItIAJufDME@MUHDž8LD1H pHLGA11LH !V>_HHxHLI9LHPH LHLH5VLH8LH@@^HHLfohDž)%LH0ƅhL蠊I H tH LH臔H(HtYH LH0IL9tNHH;t9LHIL9tI I HH tHPHiLHL@LMt6DLM[MtE9c }M[MuI9t 9y 8HH@(H8@0HP HP HcLH@I9t HRLLL[H`HHHA(q0HXH(CXIEV1bǃEEAǃhH SW H=V1谈W LHIL9tTLHIL9t8LHIL9tLHpIL9tHHPHH9tHH[A\A]A^A_]ǃIE31<@HPH蓈HoP) 1A1LI1LLhY1LLLHL`;H;AH8A‰DXf.LHLLf1DR E9P @H +V 1H=Vކ)H QWA0 5HtUIHzH0H5VHHHLHI H0pHHHHHtUUHLH0IL9Ɇ|HFHHH H H=IOHWHkHH锰I龰I˰HbHHH.IvH۰H鿮HHH"H H2H釰H:ff.UHAWAAVIAUIATI8SHDI$@ LHHDZ)MuPIFA*AtlI$ z<t~IMPy,1HLLPLAD{PDDHDH[A\A]A^A_]ÐI$ I$ z<uf.HLH*GHLHdI$ ~<u5MLhMLpMLxML]H0H55VHHHHPHHI$ H;mHHHHHt`RHHH0HH9t؃I$ I$ HHlHPHH{HXHtQLHIL9 dI$ A$0 IHޮH麮HH钮Iff.UHAWMAVIAUATISHHxIy@HMLxHEtIA0HP HJHHMHu1H~@tH~0LG IxHtA$0  H=MWM=1H}tA$0 = H= MW M$ Lp苂I$@ HpHI-L+M$ WI$@ LHHpm.LpLmELMIHxHxHU2MLEIxw1AH nHPHATH}f I@I>(HLEL}]LxI$ A$0 HME1HuL9AI$ HxIHuI$ iH}HuHH}LpAH}L蔇M$ HuEEIZLMDUM]LDPH}L9tqH}HtNM$ L1L_ILEHEHlZHMM$L@LHLEHMs<M$LL}LLMX<LLeI$XDHuL8LI$@(HuLLI$( LI$LI$ I$pLܼM$ L<&I$ I6LH'M$ L&I$ H3LH'M$HM$@M9LL)HHHHt~HthHtRHt IIIHHDLbSH(LHLHHUHAWMAVMAUATISHH(H1Ix@HtI@01HH HyHE1I@t Iw0H~ LoH1H V H=Vng1MH V H=Vm?L HoH@ LHHx'L HnH@ LHHI'0 HHH1LH*L HH LWLIvmAH H0Dž0HHHHDhHHHt ]M$ LM$ DžPIeLL(I$ LFHPHo\M$ AH(DžIwND(HXHt+DC$DC0I$ D|dA$0 DpA$ E$ A$ A$4 A$( EDkA~w L-fVEDDHH H8ARAW0YA6 DCX{xM$ DClDS LDCpA$4 DCtDPBDXA$8 AÍD>EEHD`\AÉ A‰EE$ \A$ LXLd`I$A$4 A$ H#E$$ E1Aw LVG ËHHH8DFDIHA 'Hc{$H{0H5VLcS@HcCDLHLo LLDLLL7HPMNL9tSZI$ LM$ DžPHzIL(I$ L'CLPIYM$ AH(DžIKD(HXHt(({${0I$ D|dA$0 pA$ A$ E$ f4D0LfEDH52VLD)D)DžDDcH`H5gVHMH(LHLHI$ H0AH0LHaH8Ht 'LHAH`H9tXHMUL9t{XI$x`VHLLLLLH 9ZH=#WY)UAŅu*HHL\gHz E1LH@IL9+W!L MYHALL11AuHcHcHHH DALPLlJ 1fEHxHD)fDo-EWD) fED)0HDž@DHDXDhHHHxDžHHHHDžxHDžƅD)DžDžDDžDDDDDD DD,DL0H(IH^H8Ht#H(LxH`IL9tUHHH9>T4A$4 }E$0 DK lDHALLDDDDDDDD0D4EEXEEE DDDDlDIvI~K=fDIvI~3=EfDIvI~=PIvI~=fDA HeD[^A\A]A^A_]HfE$ D\E$ X\hd2@E$ DE$ @LcLcDLLLLLHH=WOf.HL(HpPLH5TVLAa7!H(HHH9t}RL E(2fDA$4 &DSXDS\DS`E$4 DSdDChDD[ DCDAA$8 DBDƉ AÉEA$ DE$  DE$ E$$ E1Aw L $VG 鋽I$I$ H8DGDIHA6LcS$LS0LAHcC@HcSDH5VIIMj MD\LLLn.HPM^L9tPI$ M$ DžPHL@L(I$ L9HPHPM$ AH(DžI"BD(HXHtDS$DS0I$ D|dA$0 DpA$ E$ A$ A$4 EE$( AAw LVC DHH8舜 H=êVjM"A DSXDS\AM$ DS`shLDSdA$4 DC DXBD`A$8 AōD1EEHDhdAʼn AEB E$ DdE$ `dplhI$A$4 A$ HA$$ E1Ƀw LVE H8HHDADIHAHcs$Lck@LHs0LcCDLLLn H5VLDPLLLb+HPIVH9tMM$ LM$ DžPI=L(I$ L6LPIMI$ AH(DžH?D(HXHtK$K0M$ A|DdA$0 pE$ A$ A$ A$4 A$( EDkAw LVEDH H8AUAW7H[A]1҅H=,W OJA t@I$ I$@ HE1E1H1Le9@ H5VL+ƅP H(HHH9tGHL(HvPLH5VLA+ L(HIL9tFH DD/DkgI$ LPLdž9ff1LfHIxH`AHI)AH`(8HDžH)PHDžDžHDžHDžDHLH\l|HDžDžHDžHDžDžHDžHDžHDžHDžHDžHDžHDžHDžHHDžDžHDžHDžL)PDž`dDžtHDžx)u)uPHH(5DM$ A\EuAƃDždDHH55WHx螸H`H5XWH舸HxHHH(諷fo=2WH(HDž Dž@)0H0H(yHLBI$ H0,H0H(HLDL6Hfff)H) )0)@DžPDžTDžX\l|DžDžHDž)HDž(8HXhPHH'\HH5 3WHx躶H`H5VH褶HxHHH(ǵfo0W@H(HDž Dž@)0H0H(L@I$ H0*H0H(HJ@E$ dA$ L`LlHLHrPULH5V&HPINAH97AfI$4 HdpI$ǃHDžTHPHPLHTDXMmhLD\9:HDTE1HAE1I A1AAEA1AAEA1AAEA1AAEA1AAEA1AAEA1AAEAAL9uE1DDd1҉DAHDžTPE9wIvI~ )HPLcH$X, Ic$8 HCJDAHHII96ChE$4 D؃AHcDk DdDMJDAHIHL9HDžTPHPpLcH0DXD8HkID AAHHIM9DHDžTP HPD0H<D<DDXADDHDžTPq DdpAHPEEEHHXHEȅEpP`AEDEDD DDE$ 9Q A$ ADŽ$ DD 1҉ @A$ A$ LL M$  AƂDžnfH@LpMD(IH(LL8fDAƀDžyfƆDžf. H=W*:A OIvI~s%MfDAƃDžddUHDE=@LpD(L8H(EAƇL A:Z@A$4 &E$( EDkAAAw H VFDHH H8ASAW6fLLIpP LH5VHPMNAL9: f.HLHpP软LH5QV~HPIVH9q:gLjhLT3PLDTE1IAE1I A1AAEA1AAEA1AAEA1AAEA1AAEA1AAEA1AAEAAM9uE؋d1DD1҉DAHDžTPE9wI~Iv"d`LPL$X,HDžTP} DpdHPDH0DXAD8HDžTP LP0L<D<DXADDHDžTP% dDpHPDhHHXDHDd`AEʼnP AD`A$ 9A$ 1ADŽ$ DD H=[W5M$Lnf.HzhH0TLDT1LIA1I A1ABA1ABA1ABA1ABA1ABA1ABA1ABAM9uADd1҉ȉA1҉AHDžTPA9wIvI~P DdXLPDL$X,AHDžTPDp\HPDЃH0DXAD8HDžTPLPD0L<DD<XAӉDHDžTPdDpHPD`DHHXDHD\DXEEՉPD ED`DA$ 9_A$ E1ADŽ$ DDD꾸 H=W@3I$HQ@MjhL.FLDT1IAE1I A1AEA1AEA1AEA1AEA1AEA1AEA1AEAM9uAd1҉1҉AHDžTPA9wIvI~dLPL$X,HDžTP!DpLPDL0DXAD8HDžTPLPD0L<<DʋXщDHDžTPdpHPDDHHDXDHDDEDPD ED`DA$ 9A$ 1ADŽ$ DD H=%V0I$H@1Ҿ H=VA$0 q0B@1Ҿ H=͑VA$0 A0@1Ҿ H=VA$0 0@1Ҿ H=mVA$0 /@AƀDžfMc$4 M{KDAAHIIM9THcE$8 ChDЃA(DLL D1dAƂDžfLpD(L8H(AƇEHM$ 3fDIvI~!@IvI~ D0D<oIvI~ @dAHEE1d1d>1dIvI~vD0D<IvI~T+IvI~@IvI~,IvI~oIvI~EIvI~I~Iv0D<IvI~D0<XlSlllDllzl5lI]I^HA^IR^Hi^H{^HY^Hk^HI^H[^I]H]H)^Hy]IL^IP^H}]I]^Hr^H^H^H5]H^I^I^H]H]I^I\I^I^I^I^fDLT$HArUHAWIHAVIAUAATARSH HPA HÃw HVD,HHxBHLK`LLA HhL`LXLp A0 q HffHfo sWffoWIHH9IHLLMfvH)E1H9) M4 HDž0Dž8HDž@HDžHHDžPXDžDž))HDž HDž)0)@HDžPHDžXDž`DždHDžhHDžpfo5Wfo= WfDULDžxDž|HDžHDžHDžHDžDžHDžHDž))HDžHDžHDžHDž)) )0)@)P)`DžpHDžxHEHE)]ELLLLfDnhLHLLPL@LL0LLL8L ILLML(I9LfDn`DfDnXDxIMMfEbH9fDnpDD DfEbD0DD(fElD|DDDhDD8D@DHDE1I9HpAE1H9DPAAh A4 DEA4 E1@DDDDHDž$ L D(HDž$Al LD H D(HDž$HD oH (E0 A4 HAE4 hM AE8 0LPDDAljlD؃AAHʉ EtD $؉`ى\E=A A ,(A MA$ E1Ƀw HCVD EEEHHPEIHLHA"Lc4L@L LcPHcTMIH5VMm LDLmLLLH MT$L9t&M LM Dž I"L(I LL I-&I ALDžLH3D H(Ht4@I DA H5WA LE nHH5VHPTL HPLL{fDoWLHDžDžD)舳8HLyH H$I HLLIm.HHtLLPHIL9t8%HIL9t#%I L$L H5|VHMGHL+HLCAL9t$H(Ht#A IM8MFpx`HLHLAQMLxHDžkZH=VY[!AąuA H  IE1HxHHH9t$HeD[AZA\A]A^A_]IbÐL HDHxLHLsH=V eL74A A (,E( E0 AD0AQH=VB4NILcEYL LDEEUEHEIfEfDo-WHD)D)D)D)D)D)D)D)D)D) AD)0D)@D)PD)`D)pD)D)D)D)D)D)D) D)0D)@D)PD)`D)pD)D)DžA8 9OƸA4 D@AHD9NA< ЋEaDADž8 Dž@@DžH1Ƀ?HDP0 (ADt щ )ыfEfDo=tVDžD)hpD)E A FIƃANǙA A At1EuDPMcHDLMAR8HMLHLHPLLL]bZHfofoHHfofoDIHAH DH(^)) )0)@DžHDžHDžDž0t  AAD)DpLllE< A8 E AL ~HǃAAANAtA! E1AADHHD0LAPLPDLLы@LIy@HL LL`foAYHfo fo0HLH)PAZfo@)`)p)HhDžpHDžHDžHHDžHlDhDždDD @DDD`L MLD(Dž(MLwH=܃V(HHPL`(ASLH@HHLL0H@LL8_^L(D DHDž0fDoP_HDž8DDE1fDo`L D)fDopfDoD)D)D)L AwEL%ӂVG$HHP8L HL L0H@HD^XfDoA8 fDoZ1D)fDofDoD)D)D)AӺHHP8L0dH@LH@D`H(g]LPD拕HL0L IAZ8H@.]foA[1fo fo0 H=Vfo@foP)fo`A\)fopfo))))))A0 A4 ]QHt2M uAƁDž0fDA4 @H HwH@H HwH\H HwHtxILHf(AI I@ UE1E1H1HLO2f.fDnXLfDnpfEfDnhH5pVLfDn`fEbD)0fEbD)@fElD) 躌HH5rVHp蠌HpLLH蛧I H8HHH!HHtaH虫HpHHH9tHIL9I\$hH{IE1ۋ1H 1AËC1AËC1AËC1AËC1AËC1AËC1AËCAL9uD1DHDž$DDHA1҉LD D9uH D(HDž$DHPDXA D L (HDž$DLdlA DdH (HDž$DHp։x 6DL D$Eً(E L|EDLDDD D`ED\D;HD1AA ALJ DH1Ҿ H=VFuBMfD1҃0 H=tVuLA DDvDž1HDž @H HwHDdpf.H HwH?DH HwHDH HwHDifDA;DHhDDž`DH@Dd fDEʼnAEA@AIANƙAtAvE1AADG@Dž@ÁDž@1@fDž8DASuDž@D΁Dž@DD@ffDA GIǃANƙAtAAt+ATQA 0D+fDEAAƁA4 Dž0AeE1AAD8VD@bDž8AE1AAD8|AJDž8Dž@IBIBIABIQBIBI]BIBIbBI~BIBIBIB@UHAWIAVAUATSLHH}HpHuMiPHLWL_HHHu L MqHLGLHE(AI$H(H~HLLLXL`H@HLFMMLpML0MHpLLLxLLHDžDžhDžlDžDžDžLE1AXAvv_AD0DD@DDDD(DDNf(D0DDD@DDfH0H5fVLHH))Dž|DpDtDxH5iVLLHHHpLLI HPH{HPLHUHXHtLܡHMNL9t'HHH0HH9t A DžwH+uVDDsHHJI {<tAAL1I|$@t MT$0MZ I{HH 1Hx@t LH0Iq H^HMHLHDžHQM`HAz`HƅLLHDžƅ Q1Ht"A uA rf.H aV H=}V1 1HtA  H *V H=V1 A A {!HDžHHDž HHHI AHLBHLHPLPHoLLHLIHPL9t HM]L9t I LM LHHLI;LH`I HDžPHL IuXHH9t? HHtA tIH H LHLL:I DLLH LvHsoLLHLHMFL9t LHPIL9tt I HM jLPLLILHM HDžH8IIL INXHH9t HXHt=M HP1LpM H 1LHHLA H@M HDž05A0  I@ LHHù-HHLHXDžHHĹHXLDžHxTHPA1HH j"nHXLDžHLH@LLHXDžHL@@LA !A 1I H I@ HHIĹ3-I I L`HH LPHHLMLLAH`H8DžHLD`M^LHL9tHXHtM I HLgHPLLLLLH`AH8DžHLHD`IVH8HH9tHXHt8A H`tH0 &H`HH&H@H`&HXH`Ҧ&A H`u A tIH详&A H`t0H0蒦&A H`tH u&H`HPb&H H`O&A0 i(A u A t,H`H&A tH H`&A0 H(I}CHHHXH{,A LpI$LPH5H?ML1HPH0L L9M@ L@HHL9L[ I{HuHLHP1iHXLHH ǀHHL AuI H@'AHHE1E1H1LHuHL9]fA0 E0 Dž I O<5H0H@HLH0fDn(fn00fnfnDfDn0fnD0fDnfDbfDn00fDbfAo؉fDn00fnfEofEofDn0fnfEbLL`fbfElH0fbfEbflD)fDlfEl)D) D)DLX@fnfn@fn(H@ fDbH@fbLHxDfAlL)0<8DD``DžDfD~D)))PHf~@XP@X\HP`Xl h8DD D$(Dž,TH8Ll<4D0h@1HDž4P0ADDP PATjPARfE~VRAQWf~SAPASD@W0ARDHSRPV(AQAɋ|$HİAt A tA0 I M LLI HI H> HHtfDoPM Efo`A fDopE0fDoE@fDoEPfDoE`DfEpI DWHHH; H0H9t*HM]L9tLHH L读HoLLݾHLHIEH9tLHH0IL92(@A A @fDA @@1H V H=&V1b E1>fHH5VL?nH5YVL0nHHLLHMNL9tHMUL9tH5YVLDžmHPH5H@mHH@LLH HHLFLތL@HPIL9t"HIvH9t H5XVLNmH@H5.;mH@HLLf HHLL_H@HPHH9tHMFL9tH5XVLlH@H5lH@HLL HHLHLH@HPHH9t$HIVH9tH5XVLPlH@H50=lHH@LLHe HHLLHZHPH9tHMNL9tHpHPLHHDžLLH LuHHfI4 H0)0HH(4 H=VÅH(LHHpHD~DDLD E< D)LDDA&DuhDYDDuXDuLAKDu?AKAAEu0AKDu#AKDuAKDu AKuABE1ۻDA1AAKHIDIESDLADDA%DudADډuVEAAuHHEAAu:HDu.HDu"HDuHEAAuHuH1AAAD@1ύO_H IDILLcHc0LHcxIҍAHHHLBLIHcIILIL MLI)LMI{LHẼHcIIMcLDHH@HI)I)LIpMLHH5VILXhHHLgPLfDo5VED)u褁HULyHLHHLL>H@HPHH9tfHH)H B H=9VDÅH Hv!LH(HLH0LcLcHcIcHHLLIAIH4HD_HMcHHHFHILHHLHIH)HHL^LIA< MЃHcAIILILc扵H5VI)I)IL@LHLKLIILSfHLLe8LfDo0VED)EHULyHLHHLL9L@HPIL9t}A MH(I@HL@HxoHL)H5jVLzeLLLdfoVE)U/HLƅHHLLjHIVH9tH@HPHH9tH(H0HH9t}I L~LHHIT M I@ LHHù̈́#LXLLDžLL3L@LA A A0 _CHS@A4 \1ADaJDHXHuLLEAxI I@ +HuE1E1H1L f.HH贂4LfDkHHH5NVH%cH5ָVLcHLLHbfo5 VE)uH ƅfE1HDž)HLL){HUR:LH8I HPEHPLHHXHtnL要HIVH9tHHH0HH9@LE LH DžIXWHLUALJ I MZAu#HE HxIs>IIIHfDIsIIIHLMLEA IQHJHHIHA IXH{HHIHA fDH LDžDLDI DžH eD0LDM DžI ;0M LDžI LI DžH xL8I DžH DLDM DžHE I HXL]Hu ICLNL9VHI IOV1 E0 H=u>VHLE LHBDA4 E8 H(AADADAA AD AA fDDžLLH0@HDHXH`}&H5VLQH57=VLQHHLLHMVL9t+HIUH9tH5ODDu1OEAEu#OEAEuODDuOuEJ1ۿEE1ˍKD[HDID:ILADDAYDufAD҉uXEAAuJHEAAuHDžAH鷧HHHHTH_HHHHI HH(H H8HpHNH`HcHeHHHUHWH8HmIHIWH|HHHHHHHDHHHHHHHHHHHxHHH H HPHHHHH(H_HHfImHwHHHHHHHHhHHHHcHHHH H?H7HHrHbHwHHHH:H3H"H[HHHWHHHHHHH,H1H6HHjIH#H(H-HH*HHHH$H)H6HFHKHKH.HhHHPHuHuHHHHHHwff.UHAVIAUIHATSHHPH1LH5_H71ҾH=VHI[uzHHsPLHxLA(LIL$pM$8IE,HE0 A0HA4At`1AtHe[A\A]A^]fARHUWLVLATE贝H H=V«He[A\A]A^]ÐARHUWLVLATEDHH H=V肫He[A\A]A^]ÐUHAVAUIHATISHHP1ҾH=lVHHHGH5Ъ1L覯1ҾH=_VHIʫDIM8IpHHxLSPLEH8AH@AtJHHAtHP}AtoHXmAt_H`DAA0 D]A tJ1t{He[A\A]A^]fDHeย[A\A]A^]fDA미AARHUWLVLAV{FH H=V蹩He[A\A]A^]@ARHUWLVLAVsH H=V聩Yff.UHAVIHAUATISHHP1ҾH={ VHHH/H5Ш1L覭1ҾH=uVHIʩuNA0 IMEpI8HsPHxLLt/1thHe[A\A]A^]Heย[A\A]A^]fDARHUWLVLAUE$EH H=aVbHe[A\A]A^]DARHUWLVLAUEH H=ɅV"eff.UHAWAVIAUI8ATIM}SHHHIHs L0HC(C0Ls M9M;t$ Hu}4M9et!LvHuL;p HxLD~9M9e ĻHuL;p }LI|$IĿ]@IH=HL[A\A]A^A_]I}(t Me M;t$ YL~HIHtHM9ttDLLH!IE(HH[A\A]A^A_]f.I1fLs 1M9t$ @밐ff.UHAWAVIAUATSHHHHPHpIH8A$|wEA$|H VHc4HfDH iV 1H=2V9 H rV 1H= V Dž(df LE H L0LML@H0螑L@HEH5eVLLLL肮xIyL(H@H}HH9t=H}HtvIA}E1AUDF(AAwL <VGEEzEIAD LD/ADL E$lEe AC< Ao$xDAo$fDofDofofAs fAs fDfDffEfAs fAEo$fofs fEofEofDofAs fDfEfAfAfs fAtBEo$fofs fAofEofofs fDfAfffs fAfofofoDfsfs fffofs fffs ffH~A9tJHcDGIxE9~5McDWKxE9~ McKxD9} LcKxHH TV 1H=V&/Dž(E1E1HHH8HnVIIvxHHHHI0 8 HHMLJEQ,EAEoI8fEvEEoAfEfEofEofAs fAofAs fEfEfAfEfAs fDAEoEoiHfEfAofAofs fEofs fDfAfEfAfs fAfDAAoAoAXfAfofofs fofs fffffs ffDAtSEoEoIhfEfEofEofAs fAofAs fEfEfAfEfAs fDfEfEoDfAsfEfM~IUD9tHMAYDA7A*1҃0  H=,oVW rED$\L AALC A1AYt(AtAtEpADLX^H@ LHH0Z0D8L0AA@PLHAu-Mc_hH0IKHHKHPH0H8HǨCAUnA1IAYTAGA:Ap*AA M$HHI$MIM$It$xMI0 wE$E$AOAAwAI@HHI$ LmI$I$Q(9V(tLmHEL mALLHHpDžpIHeLHAA$H@ L|I$E1E11HH1@1DA,Ak|@A,s AA|$tH}LH0螐H}HMH9HIA1H)HHHHt|HtfHtQHtHLbH=U|tfDL H5GUL>L+HAU1ҾH=UHIL}41IpH=U'}A~mI8tZI@tGIHt4IPt!IXtI`HL\H=U{H H54U=HLRH=[V;@H H5|U}=HLH=ZV @H H5UM=HLPH=ZV${H H5U =HLbH=ZV@H H5U<HL"H=ZVk@H H5U<HL2H=ZV;@H H5U}<HLH=YV @1Lf9H5pUL7<Kf1Ðff.UH 1AH UHAWAVAUATSHHH HHO ǃ uHH=3ZVyuH舍H=YVytH[A\A]A^A_]@HH H膄LLM9-LML-YVL)HHHtzHtIHt!I6HgLxMfI4$HELxII4$H#LxIM9I4$HLxIt$HMt$LjxbIvHLLxDIvHL.x&MfM9uLMtL{0 HH HPHcLHPH5ULL LL菁HIwAH9tzHXHtHA<0 L AW<L-xHE11H nLL1DX HH SnHHDH L1HPH (nHhDD L1HH nHxjD@ L1HH nH?D< L1H0H nHD8 L1HH |nHD4 L1HpH QnH@D, L1HH &nHPHH5UH` 4 L%U= t9L%U=t%L%U=t=L%zWH LE჻0  D0 L5UOc MAL HMhH /aLLPH5ULMKLLL ~ApHMWL9twHXHAF74 L Lq%H H LH&{0 H H``LLPH5$ULM|LLA}xIyL8HHHH9tvHXHtHEEo8 A4 E'BD)LBD'Lƃ0 DM0 H5$UALcILHLSHIL9tgvL LDžL ILeLL0H 7_LIuL AHDžPIgD0HHt9DH$ HLLHHVL+:E1wH U4FIAD8 D4 L Hc\ CD*HE^pAACD!AD苃D A~tEMcANj@ AAAÅxI0 M0 HcHHHHIDRH LL DžHLcL(H L]LItL AHDžI fD0HHtBLHIL9t*tLHPIL9 tDHHjsTf.L%U=R=L%UH5LE6fLH5QULHHH1HIt$H9tZsjHH J\LIkH=QVpHHtbAnH蜶H=UoSfLH5PVL HHH 1+H5U@LLHLLHpX6HM_L9tSrH`HpHHXGL0HPHXLLGLPHPĊLLL5LH@LLLnGLHLLLL5LHLLL8.GLHKLLL0^5LPHLLL(FLpHÊLLL 5LHLLLFLHUKLLL4LHxLLLnFL0HKLLL4LpHhLLL.FLHŠLLe4LHHLLELHG[LL34LHLLEHHH.HIGH9toHIL9toHIL9toHIL9toHHpHH9toHH0HH9toLHIL9thoLHIL9tLoLHIL9t0oL HpIL9toL(HPIL9tnL0HIL9tnL8HIL9tnLHIL9tnHHHH9tnHHPHH9tlnHH0HH9tPnHXHHH9t4nLpHIL9tnL`HIL9tmLPHIL9tmL@HpIL9tmLHIL9tmLH0IL9tmLHIL9tpmLxHIL9tTmHhHPHH9t8mHHHHH9tmHHPHH9H5"U`H5fUTH5OUHH5mUnMwMtLq_AGMtLjj/[VL1LLg1LLH=IVDžnHc/LLHDžPzckIHEgL1LHL~xsH5)lLLHHHX+1\@`c@LLHbLcAfhHLH=UiHc=~<= HiLkHHH0AVAHHUA)H<Ic1lAL11EH+UE)K<LIck=fh=LLHHV)HHI<Hc1fkAL1EHsUA)I<9IcLȁk~q= tLcA/HE)1MIcLJ<HUjLcAELH 1E)HFVIcK<mjVLmI>HQJ\oHA)HMIcHGUH<1Li:,HEH A)HH<IcH8FV1iL/eH黣ḤHHأHHǦHHHH鸦HHH龦HHHH鞦H+H?H H麦H+H铥H駥H黥HϥH;HOHHGH[HoH郣H闣H髣H鿣HӣHHHH#H7HKH_HafDUHATISqH=UscÅt [A\]fDL(H=UJcÅuI$Ht?1ҋH(A9$ 1H DV H=EV=e Eډ[A\]@ʐUfHAWAVAUATSHXHuHF@HvHH})EHEHuH9 I1DILj0H HUI9u0H;HuH^H]LgIH9EIM HyHH}H9]uLuHL)IHUIWO IM9L{eHIHUL]HDLHEI9HLlHLHMdHMHM~MH]LeM)MBIL9}LuIM)LHI9LǺ?HLI?L-DD)HcLHEoIMLLLS;I9f.I $LHMt$LI@L9IHMMV@M;VHMIsPHM:MD$IPHLnL9oM4$ID$IT$Li@L9iH Hu DHtZHL@Lr@L;rH MMMQPM MIsPH L~M9z HPHxHPLi@L9iHuIHL9uIM9wAMUE11fDMf.ADI@LHL9H}LuHL9ILM)IIAIFLL9HBHIIt|ItbItHIt.ItIFLL9PHHLL9XHHH0H9pHHL8L9xHHL(L9hHHHH9HHHBH9LbL9`IHH@MHL9HtpHH@LRL9Pt_I@IPMXL9XtMHI@ Ip H9ptM9 M<$IM~M7M9 M4$IIM7M9 M4$IIL9QM9DH]HtH_D H='?V]MtL_LuM.LAU1A~\H ?VID|1 H=4?V^FH}0 ^AT$D1L5?V~G@IxI9DPt,1HL H=U1J^ AT$DH9ADHhE$d1E $ H=o?V\ø LMA )I$nET$DM\$XEjAIMcO;EKH=_8VMIMILMHHM%HHuHHMI[I`InI|fUHATSF HUIHHc H@{[H=3VA\] NfbH=wUMu sA$ [A\]fwH=2VMtjH=2VMt[[H=[2VA\]yMfˁ[H=2VA\]YMfKH=1V=MLR;[H=2VA\]Mf{[H=2VA\]Lf[H=2VA\]Lf[H=[1VA\]Lf1H 2V H=UN<% U1ҾHAWIH=UAVAUATSHx)Mq I H}HhH`cWHELuHpI9 L)M1E1HHHHHmI>W H. 6 ?HSDX@*g  ] DI}MuDoA AXA A L I~D_A APA A T I~O K  I MnL9pI}O /D > HPD`@h1D  L'AT$I~D`@hD_A ID L/AUI~D`@hO MD L'AT$D`@hIfD HLDf(AX(@D wLLEa(AZ(@D OHHDb(_(DD 'HLDf(AX(@L'AT$D`@hMnI}DGA 0 ANA  A  f.II}D_A t6AT A t&A u;D HSDX@ DD gL'AT$D`@hIL9p@EH}AƅAE HtKEHhH}SLmLuM9u0ACsAiIM9MUEZA uIIRxHpI@~pI`HpMI˜0pHp~pHp)EpLp~pLp)Mp)UKL`HfAofAoq fAoa)pLpgw MZP)pMtAzu Az\<HOHQPHtyu y\LGMHPMtAxu Ax\L_ICPHtA{u A{\Hw HVPHt~u ~\LO(MQPMtAyu Ay\IZLuMtLIf.1Ҿ H=,V]GÄCA0 H`HhQH}Le1HL9LAH)HHHHHHHtcHtAHtH7VDBA'HWL EQEZAHL2ANqHLEPEJAgHLEsAN2HH2DFEPADHL EYEsAHI9!HtHt5I1Ҿ H G+V`H=q+V1GHhH`OLmLuM9&LLL%V+VL)HHHtyHtIHt"IuL2LxDI]H3LLWDHH3LL6DHI9H3LL DHsLLkLCrIuLLCTIuLhLC6I]I9xLmMtLFHx1[A\A]A^A_]LRHRDZEKAMrANqhMBAPDZA5MJEqANIr DFAPQMZ(EsENAIJ0qDFAIR8I9~H qDFAAFA4 A H=UCfD Hx[A\A]A^A_]@D L7AVDX@fD usHSDX@fDHx[A\A]A^A_]@D u;HPDX@fDD uHSDX@fDH}HvDH}H(pXDpHx[A\A]A^A_]AAAFAAAFD LLEa(AZ(@AFfAFAFAAAFAAAFAAAFqAAAF AAAFD HPD`@hf.AAAF1H}HKpBp5D ?HHDb(_(DAFfHBH(9qD9hdBdEQ(D9-E9$fr(9A9f.AC(9D9fEZ(E9.A9%|DDB(D9E9\DAAAFHHDa(^( D L7AVDX@(MLWA1I醁I锁I颁UE1HAWIAVIιAUATME1SHLHH?HgLLHH3ƃ H5f11 LP L HAHǃ L f L ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( H3M$LmL L0 fD8 Hǃ@ ǃP HǃX L` Lh Hǃp ǃ Hǃ L L Hǃ Hǃ Hǃ H0 HHǃ Hǃ Hǃ Hǃ Hǃ ǃ L Hǃ ƃ Hǃ Hǃ Hǃ ǃ, Hǃ8 Hǃ@ HǃH HǃP HǃX H` Hǃh Hǃp Hǃx f Hǃ A`K>ff1HH Hǃ f H H H H H Hǃ Hǃ Hǃ Hǃ Hǃ HǃHǃHǃHǃHǃ Hǃ(Hǃ0Hǃ8Hǃ@HǃHHǃPHǃXHǃ`HǃhHǃpHǃxHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃƃHǃHǃǃǃhƃl(8HXA`fDIMt$Mt"AnuILRAn DIMt$Mt AnIM9Mt$Mt An3IMt$Mt AnMt$Mt AnMt$(Mt AnuMt$8Mt AnwMt$HMt An9Mt$XMt AnMt$hMt AnIpM9?L MtL<3L--ZHIL+[A\A]A^]:2f.I M9#=fDAIHIIIItvItNMt$Mt@A~DOENu/MLARE^ ACAF AuILRf.IMt$MtANqAvIMt$MtE^ACAFA2IMt$MtA~DOENIMt$MtANqAvIMt$Mt7E^ACAFAu%ILRAN qAv 0IMt$Mt2A~DOENu!MLARE^ ACAF AIM9Mt$MtANqAvIMt$MtE^ACAFA1Mt$MtA~DOENMt$(MtANqAvMt$8MtE^ACAFADMt$HMtA~DOENMt$XMtANqAvMt$hMtE^ACAFAWIpM9DI6LVAn vMLAPg@ILRAn 8ILQ*DMLASAn ILP@MLAQAn MLARI6LVAn .MLAP@ILRAn ILQDMLASAn ILP@MLAQAn sMLARdILRAN qAv MLAP}@MLAPA~ DOEN :MLAR+fMLARE^ ACAF AILRfILRAN qAv MLAP@MLAPA~ DOEN MMLAR>fMLARE^ ACAF AILRfILRAN qAv MLAP@MLAPA~ DOEN \MLARMfI6LVAn MMLAP>@MLAPA~ DOEN TMLAREf.MLAQAn pMLARaMLARE^ ACAF AILRf.ILRRfILQjfILRAn ILQDMLAPfMLAPA~ DOEN MLARfILPfI6LVAn WMLAPH@ILRAN qAv MLAPff.UHSHHOHH߾p[]<,ff.UHAWAVAUATSHH(HHH;P("DDD\dDDDDDD`Dd, D0 A9|DA9H=V(a0 EAD;@At * H=bV=(0 ~4 Lc, 1Ҿ H="VI 'Lc, L8UOICo 4 CoTD Co\ T CoD0d Ot@LD\ LLt GdHD| GTLL DžfD I LD8H DžH 1Dǃ0 EAD;AEt *"1}D)AAD4 A$A Au.Lc, 1Ҿ H=)VI ]&uD H([A\A]A^A_]ffLHDž(H erH=v&Hzc&HAHpLHHHPLH9HxHx(@!fD@"HLHǀƀ@ HHHHDž'LqHxIILPHIHL謋~LLHHALH)` HHt_HHtN{HH= V#HpHXMF+HHDNLH1HLDohxIcHvHE%DEWEZAAAA|AAtcAtNAt9At$AtHA|tYHLHC|tJLL@C|t;LHHA|t,HHxA|tHHPA|af.L4B5, H.6, OHHҋ\DdDDD`EDDdfDH V 1H=U#W Hz5C|L HrHBA|LJHC|LB LC|HJ LA|HHA|HA9HPA|LZHC|buDA9|DA9H=UV!H0 DHc, 1H=P VH* G!Lc, L!UOIGo D4 GoTDD Go\ DT God0Dd `fHc, LULICo44 Co|D Cod T GoD0Dd DD)AAAfHc, 1Ҿ H=VH0O Hc, LULIGo,D4 GotDD Go| DT ifDLc, 1Ҿ H=cVI wHc, LULIAiIcIcHcIcU1H V HSHH( H=;U HC$H=8UetH([]f.HH=&U:uHH=U uHH=UuH H} HEHx H=t}UH=UH}Ht EE܅LHH=҃U1fH( []Hbf.f1HtHO@H9OHH uH~@1H;~HtH1LFPMtLMQPMtIBI9@HG`f.HG`f. f.f.DHHHPbff.DHHHPbff.f.& fD fDUH;5!HATISt H~H5RUH9t1ۀ?*t#uI\$H[A\]UH;5 HATISt H~H5RUH9t1ۀ?*t#uI\$H[A\]UfHAUATSHLgMtAL- MtGAD$HtHLcMtMtuAEL$AtvH[A\A]]AD$HPAT$uI $LQMAt$ uM$LAPf.EL$EQET$AuM$LASMt4AEl$ AcI$LHJH[A\A]]fDEl$ AEAD$ At$ ~A|$ bf.@UHAULoATISHHEHt L"u&AD$AHtL|HD[A\A]]ÉwU1ҾHSHH,H=VuS1H H=V u,HH1oC@HHfC@H[]DUHAWAVAULmATLeSLHH(Dwf.DUIHAUATSGE1AL\B11tpt[tLt;t*tAEAEĉAD D EAD EAD D EAD 9t>DiȍYDDaDi؍YDDaDDiDD9uDfHAI9'D^1AAхA111AAtqAt]AtIAt5At!AAEAEEΉAD EŃAD EăAD EŃAD EăAD EŃAD 9t/9uDLJfARI9tLAх1LJfARI9u[A\A]]D1UHAWAVAUAATSHL]G DgEG_GG DW$EG$W(G(Dw,EG,-G@AƉW4AAAw0McaIcYMcQIcALMLDHG4E1w0AHG<HGDDGLAA~ErXAuAArKAErADnEr7DnEr-DnEr#DnErDnErDnAuDEpE1ɸEEA1EAIAqHwTIDIGPDo4LuHMEDo0EE>DOXD4DW`Dȉ_dEAD\GhDAЙDGpGlWt1+w0ACAsMcICDg@DO4AEAAAAG4/At{AAEAtkAAEAt[AAEAtKAAEAt;AAEAt+AAEAtAAEEAx@E΃~~AtnAt\ƒtPƒtDƒt8ƒt,ƒt ƒtAЃuDDEAfAC$EK AC(D_4O@Eu uG0DUfnM̉]fnUD]fnẻMfn]fbfbfl'[A\A]A^A_]DHumDHG[_]̅DWE_ ЉUDmșEA)ՙMD/)ADOEu GACD D)EG yD)GA)qED/E1E)HGPE1EAGXIcYHcOAAHD HHA9DAD9EE1ɻZ~A9_A)DOE)EE)DwXE9}DwEA9}Dw DDDo4w0DO@AEwAAGErYAvAArLAErBDvEr8DvEr.DvEr$DvErDvErDvAufDE}1EEA@E1DNDvHDwIVH9tDI M9uMuMtLI]IH]MeI]H[A\A]A^A_]I M9uDoI A@LwMpHH HGGL9TH=U}f.UHAWAVAUATSH(H_H;_tED2D C DDsKHCHGLPLWH([A\A]A^A_]fLIHIHIIL)HHHHH IH9LLMHULELEHULHHILMLMEEUHE<$B DRD:DZHBL9zILHI M)IIMIAIIItrItTIt6ItAo8HNIx>IPHVoHHAHGHAo7HHqLWLQo/HHiL_LYo'HHaLLyoHHYLoLioHHQLgLaH9oHH@HPHPDoXDXHhHhDopDpLWLQDoWDQL_LYDo_DYLLyDogDaLoLiDooDiLgLaDowDqHWHQH99HL)HHDHXH]Mt LLMHEHuLMHEHuHuD~}MqD}E9H([A\A]A^A_]H H9THu0HEE11kfDA,DHjHIf.fUHATISH^foUǃMt{xCLHH[A\]fDH;Ht HfUHHHATSH HH HX!HbH LbL #Hp LX Hh HH L0H@ H هLHƇH躇LH觇H蛇LH與H|LHiH]LhHxJHX>L@HP+H0LcH(H[A\]f.DUH8HHATSH@HH0HHHt@H褆HH LbL 膆H zL H gH [L H HHx It(ItMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL MtL-Lx Lp M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLp MtLM|$Lh LX Lp M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLh MtLLP LH M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLH MtLtM|$L@ L0LH M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL@ MtLL( L M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL MtLJM|$LLL M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL M|$LLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLM|$LLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL[LLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLM|$LLLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtL1LLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLMtLM|$LxLhLM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLxMtLL`LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLXMtLxM|$LPL@LXM9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lLPMtLL8L0M9kILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI6LI(VMLI(APM9MLAQM(I(ARMPIPASIxIxPIIRIIQIIVMII@ APM9lL0MtLNL0L(Md$LcM9lILϺLL)H(HIHHHtjHtTHt>Ht(HtMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VMLI(APM9M'LAT$M(I(AQMPIPARMxIxASIIPIIRIIQIII@ VM9kL(MtLLLM9oILϺLL)H(HIHHHtmHtWHt@Ht)HtM'LI(AT$MLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I7LVM(I(APMPIPAT$MxIxAQMIARMIASIIPIII@ RM9jLMtL"H I9H]HHt&HH[A\A]A^A_]HfH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9HH}HEHHJH;MH5L L HH3M It$LMt$LPMIvLMfL/MIt$LiMt$L MIvLGMfLMIt$L%Mt$LMtcIvLMfLMtFIt$LMt$LMt'IvLMfLoMfDH HtOL L M9mILϺLL)H(HIHHHtkHtUHt?Ht(HtMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VM9M'LAT$M(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9jL MtLL%OLp Mt$LX Lh M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLh MtLLP LH M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLH MtL苾M|$L@ L0LH M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL@ MtLL( L M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtL_M|$LLL M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtLùLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL3M|$LLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL藶LLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtLM|$LLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtLkLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL۱M|$LLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL?LLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL诮M|$LxLhLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLxMtLL`LXM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLXMtL胫M|$LPL@LXM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLPMtLL8L0M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL0MtLWL0L(Md$LcM9nHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9M'LAT$I(I(VMPIPAPMxIxAQMIARMIASIIPIII@ RM9jL(MtL輦LLM9pHLϺLL)H(HHHHHtmHtVHt?Ht(HtM'LI(AT$I7LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(QMPIPAT$IxIxVMIAPMIAQMIARMII@ ASM9jLMtL(H I9xH]HHt,HH[A\A]A^A_]fDHfH[A\A]A^A_]ÐUHAWAVAUATSHLoHI9")H(H}HEHHJH;M)H5HL@L0HH3M It$L譭Mt$LPMIvL苭MfL/MIt$LiMt$L MIvLGMfLMIt$L%Mt$LȣMtcIvLMfL諣MtFIt$LMt$L茣Mt'IvLˬMfLoMfDHHtOLLM9mILϺLL)H(HIHHHtkHtUHt?Ht(HtMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QI7LI(VM9M'LAT$M(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9jLMtL辡L%OL Mt$L L M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtLL L M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtL苞M|$L L L M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtLL L M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtL_M|$L L L M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtLÙL Lx M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLx MtL3M|$Lp L` Lx M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLp MtL藖LX LP M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLP MtLM|$LH L8LP M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLH MtLkL0 L( M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL( MtLۑM|$L LL(M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL MtL?LLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL诎M|$LLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtLLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL胋M|$LLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtLLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtLWM|$LLLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL軆LLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL+M|$LLpLM9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLMtL菃LhL`M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL`MtLM|$LXLHL`M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lLXMtLcL@L8M9lHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9I6LVM(I(APMPIPAQMxIxARMIASIIPIIRIII@ QM9lL8MtL~L8L0Md$Lc M9nHLϺLL)H(HHHHHtlHtVHt?Ht(HtMLI(APMLI(AQMLI(ARMLI(ASILI(PILI(RILI(QM9M'LAT$I(I(VMPIPAPMxIxAQMIARMIASIIPIII@ RM9jL0MtL8}LLM9pHLϺLL)H(HHHHHtmHtVHt?Ht(HtM'LI(AT$I7LI(VMLI(APMLI(AQMLI(ARMLI(ASILI(PM9ILRI(I(QMPIPAT$IxIxVMIAPMIAQMIARMII@ ASM9jLMtL{HpI9H]HHt(HH[A\A]A^A_]r{fHfH[A\A]A^A_]ÐHUHAUATISHHHsLLkH{MIuLI]LzHHsLLkHzMIuLuI]LzHtxHsLXLkHzMt[IuL;I]LzHt>HsLLkHbzMt!IuLI]LEzHH[A\A]]Ðf.DUHAWIAVAUATLgSHLGMH>ML HCHtHH9{ rHCvhIHuM9I(H}M9wLLUIGMgMg IG(HEH[A\A]A^A_]f.HSHu%DIHRHtH9z wHRHuDHtH9x HH@HuIO(HMI9_L9H{HLI4uHxI_(L[M_(M9LzLLHuHxIw(L^M_(L9tbHzLHItHxMO(MYM_(M9t3LzLLHtH[xMW(MZM_(L9O MnMNH[A\A]A^A_]@HtH=Tof.Ht[UHAWAVIAUATISHH_HGH)HH9w8IH1LoN#MVH[A\A]A^A_]HH+HHHH)L9I9IHMMCII9LGILAtJ1H<IKoIVIH}H9tKLH)HM{H}H}HsH}MO MnMNH[A\A]A^A_]@HtH=STnf.HUHAWAVAUIATSHHHOHGIL+'H)LHH9w$HH1nHI]H[A\A]A^A_]ÐH9L9LHCLIr]Hu_E1E1K<'H1HsLLkHaMt!IuLI]LaHH[A\A]]Ðf.DHtkUHAUIATSHHHsLH{(HC8LcH9t&aHaMtL@HaMuH[A\A]]f.DHUHAUATISHHHsLLkH`MIuLI]L`HHsLLkHj`MIuLuI]LI`HtxHsLXLkH,`Mt[IuL;I]L`Ht>HsLLkH_Mt!IuLI]L_HH[A\A]]Ðf.DUHAWAVIAUATSHIH(HwL'HHM)L)HHH L IL9LHMHUHu_HuHMJ(ILhHUHU DO8ABEAJAB IBL9IMMH M)IILIAIIItgItFIt%ILAoEIIAAIUIQAouIIAqMUMQAomIIAiIMIIAoeIIAaM]MYAo]IIAYM}MyAoUIIAQI}IyL9AoMIIA@IPIPEoXEXIhIhEopEpMUMQEoUEQIMIIEo]EYM]MYEoeEaM}MyEomEiI}IyEouEqIEIAL96LKM)IOl0H9t,H)LLEHvHL<HLM[LEMtLLE\LELED~}LmH]I^D}E>H([A\A]A^A_]I M9.Mu&AHEE1Bf.AO,IIDAo<$MHMl$A8ID$I@HGH;Gt6@@ PH@HGHpHwUHHHHSHHHCH[]HUHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULE[HULEHEIH}I7MM)LTH4O :LMM9LLULEbHULUI9t2LLLYMu~ELsEH([A\A]A^A_]LZfDHH9HE1HEHSM9ufL4 f.@H7HGHWH)HH9'IE1fo QHUAItpItZItDIt/ItIMIIB LIH LIH MIIB MIIB MIIB L9tlLIRMBHHMJMZI IJI IRIHB MBHIIB B   B L9uHHHG@UHAWAVIAUATIHSHH+HHHH)L9I9IHEMCII9LGILYLEMfoFUIIN O IIIAtaItNIt@It2It$ItItAIAIAIAIAIAIAIM9t0AIAAAAAAAAAAAAAAM9uIFI>H9HoH)HAHpH)HHHttHt\HtDHt,Hto AoHAHoHAHo$HA$Ho4HA4Ho,HA,HDoHEHH9vrDo HE DoTETDo\ E\ Dod0Ed0Dol@El@DotPEtPDo|`E|`oDpADpHH9wVI<MM>HMnM?MFH[A\A]A^A_]HtDB AIH=2TQf.fHOHHH)HH9wsHHH9tHwH)UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEUHULEHEIH}I7MM)LTH4O :LMM9LLULE\HULUI9t2LLL$TMu~ELsEH([A\A]A^A_]LUfDHH9HE1HEHSM9ufL4 f.@UHAWAVAUIATISHHLqH}MIFHAHL;p"H@Hs Iv ;IFA>IFMfHsHtH}LLyIFLcMMI]HLCMEMI;XI@IT$ HS A $HC HCI_L{It$HtH}LHHCMd$IM{HL[A\A]A^A_]fD(SHfIEnI@MMMQMRMUIBHIELXMM]ISLHtuIUHJHHteIMHqHHtUIuH~HHtEI}LGHMt5MEMHLMt%MMMQLMtLIELXMuDLXMM]f.(RIfDH@H@HQHJHIMHAHIEHpHIuH~HHtuI}LGHMteMEMHLMtUMMMQLMtEMUMZLMt5M]M{LMt%M}IWLHtHIEHpHuDHHHIMfLHH+KH}LZVIYL:Zf.UHATSHH H9zHGHW IH}HEHUHiH@HMHqHtHuHSHCHSHS HC(It$H HMHHHzHtfLGHMtZMHLMtNMQLMtBMZLMt6IKLHt*HqHHtH~HHtHHzHufDHSHLBMthMHLMt\MQLMtPMZLMtDIKLHt8HqHHt,H~HHt LGHMtLLBMuHS Md$(HCHELc(H}H?H H[A\]HEHH}HuHkXf.H9UHWHAWAVAUATSHL7LfL9LIHM9rCMtIuILLML3LcC&H[A\A]A^A_]f.MMM9rGI|$MHUOH;IHEH9tNL3L{Mt{fIMyHIfA'DAL3@H=`TIfDUHHAWIAVAUIATSH(LwHLH)H)HH<HH9PHHuHMHU$NHuHMLP IL 0LUHuLMM MIOICII9RIMI{IWIIGISAGH9tvL~LKMI)IMWIMDICIMAM9,MI I IKIyI{MII IAAAM9uIIO K|5LItZLLU@LUfDEDQ@D L]DMnf.D>D?VH=fST<UHATSHHGH?LCL$L9tRHKI9w)HtHHtK6@H;LcHB'[A\]fIHH1HH;fH;fDUHATISHH:HH+KH9rLHH[A\]6H=8(U HMLEIAAH=IQT:IH;I9t[?LcHUH &U 1HATISH]HH LFH5=ݱHMHuHH9HHH)ʃHtiHtVHtCHt1HtHt 9-uNHA8-H8-uNH8-uNH8-H8-H8-uNHH9t[8-uNx-Hxu@N-uGN-uGN-uGN-uGN-uGN-uGNHGH9uHH5%ULjH}HH9t=H L[A\]@NTN?NIH}HH9t=LFUH F%U 1HATISH]HH LFH5*<=HMHuHH9HHH)ʃHtiHtVHtCHt1HtHt 9-uNHA8-H8-uNH8-uNH8-H8-H8-uNHH9t[8-uNx-Hxu@N-uGN-uGN-uGN-uGN-uGN-uGNHGH9uHH5$ULH}HH9tXD?@AWDAEk4@ItLHL28fDI)ItEMtLLHLEh2LEILK4KLILNMtAAHHLLLiLnMtAEHHL1L6LaLfMtAD$HHI9HHHyH~HtGLYHILNHNIsIqHtFMkMiMsMqMtAFMc Ma IS(IQ(HtBI{0Iy0IK8II8HtAIs@Iq@MkHMiHMtAEMsPMqPMcXMaXMtAD$IS`IQ`I{hIyhHtGIKpIqpI9IM)IJDHCIGfHCMw(M+w S MHC0I IM9 L!HHM~]ILs0fl[ IW(Iw II)H9tHL(HHS@LC@H{8HK(HCHHSPHSXHC`IwHH}HHMH}HHqHt[LNHMtOMYLMtCMkLMt7I}LHt+LwHMtMVLMtMBLMtLfHKPHLaMt`It$LHtSLNHMtGMYLMt;MkLMt/I}LHt#LwHMtMVLMt LfDHKXIW`HCHHS`HSpH{hCpHCxHHHǃIwxH}HHMH}ҨHLAMt^M`LMtRIt$LHtELNHMt9MYLMt-MkLMt!I}LHtLwHMt L@HHLQMt]MBLMtQM`LMtEIt$LHt8LNHMt,MYLMt MkLMtI}LHtHHIHCxHHǃHHǃHHHǃIHxHHMH}HLqMtcMVLMtWMBLMtKM`LMt?It$LHt2LNHMt&MYLMtMkLMtLfHHHyHt]LwHMtQMVLMtEMBLMt9M`LMt-It$LHt LNHMtMYLMtLHIHHHǃLHǃHHHǃIHHMLLe(HLiMt\I}LHtPLwHMtDMVLMt8MBLMt,IpLHt LNHMtMYLMtLHHLiMt]I}LHtQLwHMtEMVLMt9MBLMt-IpLHt!LNHMtMYLMt L@HIHHHǃLHǃHHHǃ IHHMLLmؤHHzHt\LwHMtPMVLMtDMBLMt8IpLHt,LNHMt MYLMtIKLHtHHHHzHt]LwHMtQMVLMtEMBLMt9IpLHt-LNHMt!MYLMtIKLHt H@HI HH H0ǃ0L(Hǃ8H@HHHǃPI8HHMLLu舣HLRMt\MBLMtPIpLHtDLNHMt8MYLMt,IKLHt HyHHtLWHMtLH@HLBMt]IpLHtQLNHMtEMYLMt9IKLHt-HyHHt!LWHMtMBLMt L@HHIPH8HPH`ǃ`HǃhHpHxHǃIhH HXHMH};IM`Mt_Ml$MMtRMuMMtFMNMMt:MYMMt.IKMHt"HyIHtLWIMt MDLpHHrHt]LfHMtQMl$LMtDMuLMt8MNLMt,MYLMt IKLHtHyHHtHHxMHhLHh[A\A]A^A_]DMHM)IIIAIIIItlItGIt MLMhLhMtAEHxIHL1L7LaLgMtAD$HHHHHqHwHtFHHL LLYL_MtACHHL)L/LqLwMtAFHHL!L'HQHWHtBHHH1H7LILOMtAAHHI9LLLiLoMtAELaHILwHOI|$I~HtGIT$IVIt$IvHtFML$ MN M\$(M^(MtACMl$0Mn0IL$8IN8HtAI|$@I~@IT$HIVHHtBIt$PIvPML$XMNXMtAAM\$`M^`Ml$hMnhMtAEIL$pI~pI91f1]IeIH8LMHLHLMHHxτHsxH}„HsHH}资H{ HtHLIIIIkIIfDUHAWIAVI(AUATISHHHMHsIHC AUIE IEIEMeHtLLLIELcMtaM(/IL$ HHH A4$H@0H@IGLxIt$HtHMHLAԄM}I7H;MAIwIH;IwAMGMIwH;AMOttMIwH;AMWt_MIwH;AM_؄tJH;MIwAIЄt5IIwH;AIOȄt IwIH;I@AԄMM9s#IIUIIEH3IfHUHuLLMLH)H=H}LunHLpIIMAJ LMHHIHI|IItaItBIt#IJ LMLHIJ LMLHIJ LMLHIJ LMLHIJ LMLHIfDLEH{IpAԄoHsf@IvMLHH JIvMLH H4IvMLH HIvMLH HIvMLH HIvMLH HIvMLH HIJ MLLHMDLmH3IMIHM}IMIu1MI)ILIHAeIM2ItVIt*LIML1H)HMEHM$LmIL IMLMH)1HIMMHLMIMMI)1HIMULHIH([A\A]A^A_]@LuH{IvAԄteHI~H;IFH3L}I}IwAL tM_LMOH3MULMMH3DoHsfpLIMLMH)1M}HM]HI)H;IMIUH)M1I}HHHIMIUH)M1HIEHI HIMM1HIULHIdHuJ LMLHIV9UfHAWAVAUIATSH8HGHN0HF(HMH92HE1fHUL:Mg0I M9u/L3IMLHYI]YII9It$ LvHI9]uIuII)HuLEIO HEM9H}TL]IL]HUHuL4LtH9HgH}HEHEHEH]L~MLuI]LMAMII9DHEHUH9UMuI9 IA?H M)LHHHH?A)LIcHjMfIuMDMHq@H9qH@M@MK@M;KHLIPPHMMZPMMKL9J{M9tHMLLI<L)+HMIIM9tI $LHcHIM9uLI9LHMLqM`@M9`HMMV@M9VHM$ISPHI:LILPMHrI9wL1HAHQIp@I9pHHufHtZLLHLr@L;rHnL&MT$PM]MI{PHMLM9z?HPLHHPIp@I9pHuHLH9MuMELM9LLL)HH@I@L L9`HH"HthHtRHtIL9KM<$LM MMW@M9WHAMtEtII@I;IHw@IT$HELZ@L;ZHMIJPHI3MD$H~PHLIL9OI$ID$IT$MW@M9WHHufHtYLL@LZ@L;ZHMIrPHI HyPHLOL9NHPL@HPMW@M9WHuL8f.IM9wAMSHE1`fH}iHE&HEHID$0It$0H9pwHID$8I\$8H9X`HHAH9HYH9XBIHH@MT$L9P)HH@LYL9XID$IL$M|$L9xHID$ ML$ L9HHID$(IT$(H9P?DH)Lm9IMD$M@Ix@I;xHH6HVPHLML$MZPM{HzI9{mM$ID$IT$Hq@H9qHHufHDLHLH9LLL8]ILEII}HtLf.DUHBHAWAVAUIATISI?IIHHHMHуHuHULELeHML9HHSH]HEL<HI_MdMtI<$I6LUuI$K\L;}LDI6KtH;]|H}HSII?IIH;]0IfDIt$MLHH?MHHL9eIO|HuHEMtI?ЄuLmM.HH[A\A]A^A_]H}HMtuHfDLEIMI?MII9KH\M\I IM3f.MH}MLDUHH)HAWAVAUATSHH(HUHuH=_IHHSHULuHmH{LH)HHH?HHL,IuAԄGIvI}AԄH IUHIMH3LuLmLuI>AԄM}I7H;MAIwIH;IwAMGMIwH;AMOttMIwH;AMWt_MIwH;AM_؄tJH;MIwAIЄt5IIwH;AIOȄt IwIH;I@AԄMM9s#IIUIIEH3IfHUHuLLMLH)H=H}LunHLpIIMAJ LMHHIHI|IItaItBIt#IJ LMLHIJ LMLHIJ LMLHIJ LMLHIJ LMLHIfDLEH{IpAԄoHsf@IvMLHH JIvMLH H4IvMLH HIvMLH HIvMLH HIvMLH HIvMLH HIJ MLLHMDLmH3IMIHM}IMIu1MI)ILIHAeIM2ItVIt*LIML1H)HMEHM$LmIL IMLMH)1HIMMHLMIMMI)1HIMULHIH([A\A]A^A_]@LuH{IvAԄteHI~H;IFH3L}I}IwAL tM_LMOH3MULMMH3DoHsfpLIMLMH)1M}HM]HI)H;IMIUH)M1I}HHHIMIUH)M1HIEHI HIMM1HIULHIdHuJ LMLHIV9UHHHAVAUATSHHHxHtH{hHtHH{XHt:H{(HL'M|M,$LMtkMuLMtZM.LMtJMeL~Mt9M,$LmMt(MuL\MtM&LLLMsHS H{1HHHH{HCHCH9t[A\A]A^][A\A]A^]f.DUHHHAVAUATSHHHxHtLchMt-L-fM=AL$>LsXMt'L%0MWAEVAWH{(HL7;Mt~M.L+MtnMeLMt]M4$L MtLM&LMtf@\ID$I9IM9Ht1HĘ[A\A]A^A_]MwpM;ItMIpAAG\QLPpL;HtMIa@\pMwpIM;AG\LPpI"L;@\ffDfDLSHLpMt'HH5}1LS1HpH¾H=+TswHpLL9 HypH9 HH8H9L[PHC`MK8MC8LKhAs,IS@{F~MfoHM HHHHtPHAoqHfoIfs fDoffDofAs fDfDfDfAs fEfAoEoQHfoIfs fAofAfEofs fDfffs fDfAoM9 EoaHfoI@Eoyfs EoA(AoY8fEofAfEofAs fDfAofDfs fAofEofEofofAs fs fofDfAs fEfAfAfAofs fofAffs ffDfDfofs fDofEfEfAs fEfAfAfAofs fDofDfAfs fM9fDofoAfAsfs AfEofAfEofAs fDAAfDfDfAs fEfM~IA9t6HcHI9}'LcDXKA9}Mc˃K9}HIHSp1:AG\NHC`Hx8L@8H{hDX,HH@AAsEKfDoDHHL8HHHHHtGopHfAofEoHPfDofDfAs fDfs fDofDfEfAs fEDobHfAoHfs fAofAofofs fAfAfDfDfAs fDDojHfAoHfs fEofEofofAs fEfAfEfDfAs fEL9obHfAoDojhH@fs oz8fDofofofAs fAfEoffEfEofAs fofDfAs fADoRfofEofs fEofAs fDfofDfAfDofAs fDfAs fEfEfEfAofs fofAfDfAs fEfEfAfAofs foffDfAs fDL9fEofAoDfAsfs fEofAofDofAs fAGfEfEfEfAs fDfL~HD9t8LcDPK E9}'IcҍpI D9}HcI D9}HI HKp?@\Lj8Lz8Lr@DQDYADozHojXfofs fDofofDofAs ffDfAfAfs ft>DoRhfofs fAofEofofs fDfAfffs fAfofoDfsfs fDofDofDofAs fDDFfAfDfAfs fAfI~MD9t>McAXOT9~-HcEXMTD9~IcAMTD9~ McOTLjHLaHrPHX&HRXHL`HAAƅƅƅIU@H$H9I}HI}PAt I}X@\fDIL$@HI9I|$HI|$Pt I|$XAG\fDAG\zH|H51L1ҾH="THIMAw,~EoHAo8AAfAofofAofs fs ffAfffs fAEoGXfofs fEofEofDofAs fDfEfAfAfs fAAtEoWhfofs fAofEofofs fDfAfffs fAfofoAfsfs AfDofDofDofAs fDAEfAfDfAfs fAfI~MA9t6HcDPL4A9}%McxN49}LcσN49}HL4M@LHILL9p>fDHDžMHDžXHDžHKPHC`y,LY8Hq8~WDGWEHfoAIM IIIAItNIDoJHfoHfs fEofEofofAs fDfAfAffs fAoZHfoHfs fDofofDofAs ffDfAfAfs fI9DorHfoDoZhH@fs Doj8fAofEofofs fDfAofAffEofs fEoffs fDorfAofDofs fDofAs fEfDofEfDfAofs fEfAs fEfAfEfAofs fofAffs fDfAfEfAofs fDofEfAfs fAI9fofoEfsfs AfofofDofs ffDffAfs ffH~HAAE9t8LcDPK4A9}'IcDHI4A9}McK49}HI4HshHI@HKp9IGpI;o HtHAG\)IGpHI;AG\I}HI}PH{fI|$HI|$PI [oaHfofoHQfoffs ffs fDofDfAfs fHHL HPLPDoh8L@HoS8HS8Dow8LOHL{HD))UHrLD)L)LD)@LPD)pLMHuHt#H:H51H1HH¾H=dT LLHDžLPIcJ,Ir8M`8IR8Mi8DYDqA0ELfoAIOIIIAIIt9AoZHfoIBfoffs ffs fofffs fopHfDoHfAs fofDfDofs fDffAfs fDfAoDoPHfDoHfAs fEofEfEofAs fDfDfEfAs fEfAoL9 DopHfoH@ohfs Do@(Do`8fAofAfEofs fDfoffs fofEofEofEofAs fAs fAoffs fDfAfAfAofs fofffs ffDfDfofs fDofEfEfAs fEfEfAfAofs fDofEfEfAs fAL9fDofofoEfAsfs AfAofAAfs fAfffs ffH~HE9t9LcD_JD9~(McDwJD9~McރJ9~HcHMR@Mx8HHDžLEP,ASEZErA4DLfoHNHHHHHt$I $L3HL L)$I<$LHH L=$M$L3HM L$M $LLHI =$I9M$L3H M L$M$LLHI a=$I$LsL L$I$LLHH 1=$I4$LsL LZ$I<$LHH L=$I $LsL L*$M$LLHI <$I94H[A\A]A^A_]fUHAVAUATSHG0HX H[HHt{ t1[A\A]A^]HIIIHPHtۃxduI$HXz tHtHHq H^HHt{ uL#HAT$HHtxuHpcILXAx NLAy uHhH}H=TyHSPH`A$HsXHUAt$ H{`HuA|$LChED$LxEL$LET$LIT$,E\$ ID$$It$4HA|$LAD$<ED$E0 El$@HCXHHAD$DUHAUIHATISHHPH`HHH=dTtHĈ[A\A]]HH}H=iTuH8H}|H=T辔uHhH}XH=T蚔yHH`A$HHUAt$ HHuA|$LED$LxEL$LET$LIT$,E\$ ID$$It$4H{`A|$LChAD$<ED$E0 El$@HHHAD$Dff.UHAWAVAUDmATDeSәA…AAA9DOELcMIE1LcIHxA9DOHcE9EOEHL_1LI1DPLIIIEEDD1HcAAHD9LVDNL1DH1D`LIHAAD1LcAM@A@IJAO9OH1҉H1DPHI1LPHEDIHE1Ht HF1IDp1Ht HG1IEpAAHEEaAYAxAxAAA@[A\A]A^A_]E9EO܅ Dn1DA1DXDAAAD1AAAAAAE8uNAM9xLH?H>I8H9A HHIHHIHLHIHLHIAHHO@zHHIHHIHvLHIHeLHIAHNDHOHH DH>LAI9AfDAAfAqHO@HDHpTHcHDf.f.f.f.f.f.1!  f. f.f.f.1Ðff.UHAVAULoATSL/HtrIHIHHw2Hu$AAD$I\$AD[A\A]A^]HtHxI\$I$ILHLmM,$H=HSff.UHSHHH(THcHfH5Yj$HH[]f.H5SfH5SfH5jfH5jfH5SfH5wSfH5zS{H5NYH`@UHSHHCHTHcHfH5SDHH[]f.H5Yj$fH5SfH5SfH5SfH5SfH5SfH5S{H5ĢjcH5jKH5eS|3H5:SdH5SLH5]S4H5VMYH@UHSHHHcV,~+HDxH oH9DpH5okHLHH[]H5UkHH[]f.UHATISHHtHtxH)HHwTLs@LpL0hH}HhLmL(H5jL931Ҿ H=US1L H}IL9t`MMA`A*H5QLSLxE1LXBfD1H` H=S>uSAID;GID$`HX HI|$hI$H`HI|$HAA=t ,H S 1H=ۚS>u'H S 1H=S> 1҃ H=S0=HhH5gS$1҅)H5%SL#1Ҿ H=S<`HhH5S#1Ҿ H=S<(1&III*fUfHAVIAUATLSLHH0HFxHHH5OSHDž( =H5SH.L0LH1Lfo _,THE)MƅHfE1HDž@)00LL)wHHULHHt!HLAxAHEDLA{AHEDL6A~AHAHzAHEDLAzAHEDL.A}AHEDH9HLNLfL~xDDAyLF AEDA|$L^(AEDALv0AxHV8AEDA{AEDA~AAÃzAH@EDH9ZHt71tHĸ[A\A]A^A_]fHHHh?HLH8L9Oƅ`ƅXHI9tfL#A|$\uHZH531L8LPA|$ uI$I9$Hƅ`I9ufDX@"`@L8MtL61H Sھ H=S5`7HHH>LHL8I9HhLxH`L-TL@LHL0H(fH`H;DwA A%LgLM9^LLL)t`I<$1ҾH_PL{,r31H H=TL3o[@fDL#1ҾLMt$PA~,3uN1I H=T2u,IIAoF@IIfAF@L[Lc1ҾLI[P{,2uL1H H=@T{2u*o[@fLH[@HLI\$I9H`L`L98SHHtB4HHHh_IIItILMBPAx t7It-IPHIx@A@,IǀHIIHFLMyPA t7It-MwHIw@AG,ILJIMIHLMSPAz t7It-MBHIR@AB,IǂIMIHH8LOPAy t7It-MyHMq@AA,IǁMMMHH0L^PA{ ZHHLJPAy tI HL0M^PA{ tI? HH9>LIPPz tH2LpH@LXPA{ tIMVMBPAx tIWM~IGPx tH5 I~LWPAz tIMN MyPA tIIv(LVPAz tIHIV0LJPAy tIIF8H9 Cfƅ`afDƅX @H9tH5(1-H=+L``HHOML$ HXM|$M$@LAD$(HfM\$0At$:LET$8@fDMD$L3Mt>M/L#Mt.MuLMtM&LLMufDL]H}1JYLH}HEHEI0L9tH`HL?MM/LMtoMuLsMt^M>LcMtNM'LSMt>M,$LBMt-MuL1MtM>L!LMuDHX1HHPsLHPHDžhHDž`I0L9tH[A\A]A^A_]DL0HcLcSxM MMLH?H\fDUHAWAVIAUIATSHHH H}H0HE@HuHHPeH}HtHPfHLHp)pHEH=RS}tIHpHt8b8HPHt8E8He[A\A]A^A_]I H0-1H=,SH}Ht8[8tM fM 8M9Pf.LIT$ MH;hIpE1ɃAH;HHHtzHtZHt:HtIJ J;PIJ J;6IJ J;IJ J;IJ J;IJ J;MQM9J J;MYJ J;IyH H;t{IAH H;teIqH H;tOMQJ J;t9MYJ J;t#IJ J;;fH HtEAD$0.8IL$(b\IH,LPH=SLIL9I Ht)M>H1LAWH=RSMdA ,H}I HL}H]I9H@H TI H L@IA@H8tIL8H0H5WrS蝃H0H8L0H}IIL9tH8gL8HHHtL8L8IcCxHPD@x PEDDA`AAAAEDE1EEHAA HHE I I MuDHI9*LcLMH=DAD$Ap t? uLHLHo H=S;1OI M M I oEDDEAAAIE M IM ADž AD$EHA RA HI H0cI A AV,H}jpE ATI HH$E Dt$M E H0H=MT H}Hb808LAAAADRADDNxoIhUIUIUIUIUI'UUHAWIAVAUATSHL L M9t+LH;HCH9 H L9uM A =M L'H5cUHPLpAz@ZH(M IEMgfffLH50 A]`H H l1)Aк[LmLH5iSLHXHPLH]LPLCLELM9KLMLXL]HxHH}LLH@@H}HKH9t H}IEH9t HpIL9t L(HPIL9t A I HH}j1=* H=4S H}AHtEII HDrd+H}H}Ht(^(A9H5gSH}HLH}LkL9t A u,H5gSH}HLH}L[L9t H5gSH~}HLSH}HKH9ta H5gSHR}HL'H}HCH9t5 H56SH&}HLH}HSH9t H5LgSH|HLH}HsH9t H5SH|HLH}LsL9t H5SH|HLwH}LCL9t H5SHv|HLKH}LKL9tY H5SHJ|HLH}LSL9t- H5SH|HLH}LkL9t H5SH{HLǿH}L[L9t H5SH{HL蛿H}HKH9t A H5fSH{HLaH}HCH9to H5fSH`{HL5H}HSH9tC H5lSH4{HL H}HsH9t H5SH{HLݾH}LsL9t H5SHzHL豾H}LCL9t AH5SHzHLwH}LSL9t =>X@mL->XML5 M]MtLL(L(I`MtLFLHzH}hH}HE1H9tHD[A\A]A^A_]fDH I9fDo@)Ef.L- ~@Iz`AxLmH]1H5LH lM H P}LH5*cSHHLH}LCL9t!H}MML9{{H=VH1 H5SdSH=VH=H,H5V H=yV:I I; tPLgL'HuHUH{I d@Igfffq`AA)@HHL蚠%DA *DH5SHxHLH}LKL9D:IAQgfffH lDvdH DEEAAD(D)DkdE)DAL1D)Aк{DMb(H01H lHI)H Aк<{HPLH5+aSH(LpH(HmdSLLLHHLɺH}LCL9tHpIL9tL(HPIL9tLH0IL9tH}IL9tIKHKHKHLHLI.LH@LILILILILIKIKIKIKIKIKIKIKIKIKIKHKH LIKIKIKI~KIKHLHLHKIVKINKIFKUHAUATSHH( u t^H LeL+HEH}L0HtbMH行H=`SH([A\A]]H=,Suր H Leu tlLH}H=_`S}H}Ht EE̅hy@H LYH}H=`S2L89 H}H  *H=SH}Ht EKE̅H 8HJHJIJff.UH l1HAWIAVLAUATL SHHL L+ HH5 ILEOwLH5L_SLH ID$H9t'DLLLH HHLH HHtH LHIIL L9tRH[A\A]A^A_]H HLH苚H H; uH H HIIIHHff.UHAWIAVIAUIATASH8LEI@ HUHHZ03HuHELuL(MHHDcPH8[A\A]A^A_]IHUHAWIAVIAUIATASH8LEI@ HUHHډ3HuHE3LuL(MHHDcPH8[A\A]A^A_]I*HUHAWAVIAUI(ATIM}SHHIHs D0C$Ds M9E;t$ Hu}/M9et!L1HuD;p }HxL}~9M9e LHuD;p }LI|$IĿ]@IHHL[A\A]A^A_]I}(t Me E;t$ YLHIHtHM9ttDLLHIE(HH[A\A]A^A_]f.I1fDs 1E9t$ @ff.@UHAWAVL}AUIATASHHǸH(HB0HH HDuLHUFHuDpE1H0A}uME@AMt E1ItxLLDeLMu*@LM[MtE;c ~M[MuI9tD;` }HMHLHHMDp$H([A\A]A^A_]DMM0MQ Iz@Arf.U1ҾHAWIH=sRSAVAUATSH.M HOƅOLL(H=SÅtH[A\A]A^A_]fLuH}LEIFHEHEHEHEHH]LmL9A9D  ] HI9H;W uHDH51L@\HxpITI$8L:I$L HE1I9uH}HtE-H]HHsLLcHxMIt$LҘI\$LUHHsL谘LkH4MIuL菘I]LHt~HsLrLcHMtaIt$LTMl$LMtBIuL6MeLMt%It$LI\$LHf1H=WSÅOkH(LLmLeLM9LH`LXL)H8L0t I}[@ W I]I9jH;HEHDžXHDž`DOA S A  H{LkHDžXHDž`HEO uHAH5=1HxLAz(fAz [HH8HxpH0-]A HXIG\ L`MAC\ HE@\ IHxIfDH@H5r1KL@\HII$8L޻I|$pLǻfHa@H51L@\HI舻I|$pLqI$8LW2fH!@H51kL@\HxpII$8LI$LfHt HsH(HH}LEIL9uIM9I2N\uLNL^F\M9tLLL)HHHHtkHtVHtBHt.HtH HHBXL HAD$XH0HFXHHAXLHAAXHHCXI9/L(H@AEXHPBXL`AD$XHpFXHHAXLHAAXHXCXLhAEXI9uDH(L!LEH}LL9H8fL8IL[HCL0L9CHHLL@AHH90L3E~XAuM~PMG@IWHIIAHI;AH@DuEtLEw,E EfMG@AE^IwPD N,IHL IcID8IILH TH DIDŽπHEg,Ao0H90 fHLLL+HAU H=QSSC H8H8H9_HuHLML AƇ MvPIN8IV@IHAHI;AHAEu E*HEn,E EeIN8AA}IvHD L<I~@LD McKD8EIILL L KDŽހEf,An0fDIcID8EKAAfEFAAH JIINILH McKD8EcAYAEAL HIHNIL H:H51L@\HxpIkI$8LQI$L7I$LI$LfDLeMtL1H=vSyÅH(LH]LeIL8L9I)IIIA2ItEItH;DoA  A 3 LkI}D_A  A  II}w  ( IL98HtH1H=*SÅH(LLeHEL LH8I9L0Lf.HH98H;uH7H51LxpHxxIL9tHME1L0DOKHID0ML L9t-DHH HQHz HIt H9uI}xIIH)\(\M)ILM9wH3A I}MeDoA `A fI|$DWA A I|$DOA A Ml$L98JI}DGA xH6H51cH_LIz L_HA{EAƇ 8fDHDHi6H5"1HH( t~HH8HxpH0RA PHXI@\ L`MA@\ LmAE\ MIxMAƇ H5H5Z13HLAx(Ax t|HH8HxpH0NQA @LXMAA\ H`IC\ HUB\ IHxIfAƇ H4H51kHH~(~ t~HH8HxpH0PA HXIA\ L`MAB\ HUB\ MIxMs@AƇ bM)HAEXE@H3H51H%HHH LaHA|$ AƇ DAƇ HMupMT L9fHy3H521 HaHL_ MkHA}GAƇ :fDH)3H51HHHH LAHAxAƇ fDH2H51kHLIQ HrH~nAƇ aL0LH t H |1H=CSnÅL(LUH=VSGÅgL走H=VS'ÅGLH=SÅ'H`LLhL`L8M9< 4SfLXL@IL98I<$ uHNH5'1HpIŅuƀtHphHP`H HeH=NFr3Sf.8"ff.@ IVEHEHUHUHEIH;HPLLPeHLRMrIzLHbL_HMRMCLMBMHLM2IILH"HqHHLVHML{DHA0H51H@H0L_ MkHA}fDH/H51[H@wH0HH LAHAx]fDH/H5:1H@L0IQ HrH~Hi/H51H@!H0Hr LVHAzfDH}HfDH.H51kHLMH IQHzAƇ H.H5B1H@L0Iz L_HA{Hw.H51H@VH0HH LaHA|$;gH.H51HHLV IzHAƇ H-H5t1MH@L0MH IQHzH`HtH=ʭSuIHI0 {nH(LM M; tM H(HRH}HtHuLiH ZH NIFf.8*$f.@HUMHEL]1H}H=ASEHE1ҾH=ASL@ MLHMI LHyH0H0I0hHM(IDž0M8M@H IDžHHWHH0H9u)>@H0H0H9L0HHI{ HEHH;iHtLHHLXEkHUHHzH|L_HMlMCLM\MHLMLIILHWHK|H}Ht؛L H AU<tbH}eHMH LLKL}1LIVH}HtxH}HtjL H I}LLHuLHAH}Ht*L H LMM@躵LMLIAH}HtL H LMMh{LeLI$AH}Ht諚LH1IC0H9 H(1[A\A]A^A_]LMIJ<#K|IrWDLL]H9nI|I7f=#u/H ǃ OfDUHAUATSHH8L (H@ LHI5,H4 < L H@ H H ID$XAT$`IL$dAt$lHHLGpLm$ MD$pDOxEL$xDLE$Me94L LIH}L9tuL ADŽ$H 0 H ATH  @ @tW( L4H HuEHH[LHIH}L9tH81[A\A]]ÐH LEHHAH S1HPHhH81[A\A]]ADŽ$LmH H fUHAWAVAUATSHHHL 8H@ LHI*L H}H H}6L}LuMM9tZLL)I?W fL'AT$H@MgA $ M9LuMtLIHuHLEDEFH=SfADž+HHD[A\A]A^A_]f w }I|$M|$W ?  tIMgM9KI<$W uL/AUH@A $ HPDH@AD DD$ 뙐HPDH@AD DD$ AfDL'AT$p@E1퉳 DD$ AfL L4 HUuMQXD< EY`L H@ I~dH AFlH HQpqxL Lh MD$|Dp E$L Lt MD| EH ` H X H džLuL D0 LE$$ /L HuEIH耴HLH}MVL9tL HuEIxEH5jjHH DL HC(AELSfDL/AUp@E1퉳 DD$ ]fL/AUDERH89A:H@!At[HH AHPAHXAE1H`AADX@D $ fDL?AWDEH8AH@{AtCHHkAtmHP[At]HXKAtME1H`AADX@D $ A5A*AAIDIZHh@UHAWEAVLAUIATILSHHxHFPlDP,HHLpp(H.HHTLHxHLH{I$ LLHHHHHHtgHLH2}I$ LLHIHHtZILHDžH諔HlHHPI$ DHL胩LLLI$ )LHIHPHlDPH舫l8HHtMUPLAr(/,HHHDPHLHM^L9tuH5jLY*HHxDP蟯HLM~0HL9t1uAu\I}P)LSPM$ LI$ աLHI苿HHtIuPLv(+LH5_ SMv2HAL9t^Eu ADŽ$ I$ Ht&LWXLSXD_`D[`I$ HHdHKdPlSlDCPAA E1A$ LHIL9tԷHHHH9t踷LxHIL9t蜷LpHIL9t耷HeD[A\A]A^A_]fDǃifIuPL4+IuPL̶M$ Ay<u9MUPMLhIHpIHxIHUA$ uH0H5SH'HHHPLH`EI$ H蓟HHH`iHHt踄H`ILH0IL9,HHLHxCfDI}PO"1ҾH=~S衳q"MmPAEM(AAACTM$ MA9$ A~TAM$ 9OAFTeMEPH0H5SHMHL`7&HL`HHPAVHE1H`}I$ ZHYLH`Iѽc@H5SF<AITIIIIIII8II`I<III@UHAWIHAVAUATSHHHH8PHHxH0H4HHcP,H0HHxL8Ml$pL(M9l$xL`H HDž@LPIHDžHHLDH@H(L0H HMPHHDžLHDžHDžML1HtcHAHtVIItJIHIt>HHHt2IHIt&HHHtIHItHHuDI}L HDžHHDžHDžHH1HtjHDIHDt[HƒHtOIAIItBHAIHt5IAIIt(HAIHtHAIHtHAIu@HCHHDžIhIIIDHL0L@M9` M pI@ LHIl.H LI t(I H%#I I HߍHO#M L#I I LHL@O#I4 EEAEPA< I@ AH HHIuXAU`H5gIMdHH 0lAEl1H#HLH5g SLXHPH5c SnHHPHLHtI HH(DLHIHHtm|HAH`H;tLXH@IL9tԭLHH IL9t踭M I HL論HHHPAI8Dž`H衇HD`HHHt{LHEE1HH i/lL"HXLH5 S脃LPH5 SLHXHLHrI H(ҕHHH謵HHtzH3@H`H;t~HXH@HH9tbLHH IL9tFM I HL9LI薫HPAHDž`6LD`LHHt7zLHEE1HH -lL HXLH5 SLPH5{ SLHXHLH:qI H(gHHHAHHtyH>H`H;tHXH@HH9tHHH HH9t۪I I HHΓHH+HPAHDž`˄LD`LHHtxLHEE1HH ,lLDHXLH5cS讀LPH5SLHXHLHoI H(LHIֲHHt%xH]=H`H;t訩LXH@IL9t茩LHH IL9tpI I HHcHHHPAHDž``HD`H8HHtawHL H(IXL-kA ? M\$PHPH5~SMcHME1LH(HPHAR5qYHX^I 耑L@HIZHHHtvH;H`H;t,M I HMHH|HAHtDvLHHLjI HϐHLH艮HAHtuA I H EPIHy5 HA0Hp L^HAH MhMA IPHHLaAv(LXLLXLLPH{SLkH HgLHLLI I LpLHLʏHpH'HlL牅lH HXH,WHxHttI LM eLpI¥H AIDžlbL DpHxHtjtHHH9tH`H;tHXH@HH9tĥLHH IL9t訥L(HIL9t茥L8MApL(H8H@H)\(\H@HHAxHHXH+(HHH9L8I$L@p(H`LL@zHHH(eLHKSLLL TiL8HLLIM I LLMH蔍LIH L牅 HX赚LHTHHtrL81IHpI@xH9H0H9`HLHHu H9HLL7]I`HHDHy(DQ0H(H3HHxHHH9tdHhHHH9tydE1LpH`IL9tZdLXH@IL9t>dL`H IL9t"dHeD[A\A]A^A_]HNH HAcH0A1LI1LL8L\H1LHHH0\H;HDD&LHQcLLZf1B A9C @!fDEM EM1AMA+DxIItkItRIt9It IHEHt DxHHt DxHHt DxHHt DxHHt DxHIt FxIUHt DxIuHt DxI}Ht DxMeIt FxMEIt FxMUIt FxIUHt DxLjI9_LLfH5RL(8HDžHDž,D D$mLH5RLWHLLLI H?JLHIjHHtd/HIHL9t`HIL9`pM aI@ LHIŹ!LcIELE I L6 I8L' IPL HI8I)ڍrHL3LH)ǃL MM O$ HPIJT H I J4L(M Od HP`I8J HphI8JtLMPO$ HIPJTHI92f.H0IM J4 HxMK| L I N H(I Jt Hx`M8K< LXhI8N\ HIPJ4 HMPK| LHHPH IO JHHIJLLM O$HI JTHHPI8J L`XM8OdHIPJHIPJ|I9DAAAH XR 1H=R$]A kLHI$\A LH5kRLHHhLLI HFLLI_fHHt+LIHL9N-]DI I@ ݾHE1E1H1LH ILDž #LLILLDž `NDLH5TRLHHxLLI HnEHLHHeHHt*LIHL9M$LLIpHH5RHE1LLLHhr$Y^HI DLLIdHHt)LHIL$H97ADžDE5ADžhI x<LH Dž LLCXt&M LDž I LM HDž I gL0HKXω@8ADPMAM M DDI@LLHIxHSPHM=DNADjh8AYAZu/jDLLj_AXM^DLD(HDž L nH D(LLHMDUHHDž (mM8H (MPHEUI<$\MHHD`It$dMYH5ISDhLH5ISLHL1LTfDoXSLDžD)8HLyH HWI HAHLHmaHHt&LIHL9t?XLHIL9XADžADžMI I@ 谹HE1E1HLHH՛ILDž FHILHDž )I1ptHhw(LHLDžMHLI^.eH H9WAuADžhH \R 1H=RVAA:HHĮHĮHIHZH鈯H陯H騯H龯HHH8HgH锰H飰HͰH駰HHHHHH.H@HVHmHMH5HH]HJH¯H鮯HNHHSHmHwH1HQ@UHAWAAVIAUIATI8SHDUI$@ LHH)%I$ MnPx<tZA},tS1HLLLA]D{PDDHDHe[A\A]A^A_]HLHHLHHLEL},LxHMI$ L9@DHuI$ I$ IH}Hxo9LEHuLILEH}LWM$ HuEEIV*LUD]LDXH}IEH9tOH}HtGM$ 1LLNILEHEH)HuM$@LH0HuLLE M$LL}LLM LLeI$`xHuLlLI$H\HuLPLI$0@LI$0LI$ I$xLM$ L"I$ I6LHj"M$ L蚹"I$ H3LHD"M$PM$HM9LL)HHHHtrHt\HtFHt0HtH IuH;I"IuH;Ix"IuH;Ih"IuH;IX"IuH;IH"IuH;I8"M9tiIuH;I@#"IuH;"IuH; "IuH;"IuH;"IuH;"IuH;"IuH;"M9uM$M$M9MM)IIIAItrIt\ItFIt0ItI IuH;I]"IuH;IM"IuH;I="IuH;I-"IuH;I"IuH;I "M9tiIuH;I@"IuH;"IuH;"IuH;"IuH;"IuH;"IuH;"IuH;"M9uM$ M$M9MM)IIIAItrIt\ItFIt0ItI IuH;I2"IuH;I""IuH;I"IuH;I"IuH;I"IuH;I"M9tiIuH;I@"IuH;"IuH;"IuH;"IuH;"IuH;"IuH;"IuH;y"M9uM$M$M9LL)HHHHtrHt\HtFHt0HtHIuH;I"IuH;I"IuH;I"IuH;I"IuH;I"IuH;I"M9tiIuH;I@"IuH;"IuH;"IuH;"IuH;s"IuH;g"IuH;["IuH;O"M9uM$M$M9LL)HHHHtrHt\HtFHt0HtHIuH;I"IuH;I"IuH;I"IuH;I"IuH;I"IuH;I"M9tiIuH;I@y"IuH;m"IuH;a"IuH;U"IuH;I"IuH;="IuH;1"IuH;%"M9uM$M$xM9LL)HHHHtrHt\HtFHt0HtHIuH;I"IuH;I"IuH;I"IuH;I"IuH;It"IuH;Id"M9tiIuH;I@O"IuH;C"IuH;7"IuH;+"IuH;"IuH;"IuH;"IuH;"M9uI6H;"M$hM$`M9MM)IIIAItrIt\ItFIt0ItIIuH;I~"IuH;In"IuH;I^"IuH;IN"IuH;I>"IuH;I."M9tiIuH;I@"IuH; "IuH;"IuH;"IuH;"IuH;"IuH;"IuH;"M9uM$M$M9MM)IIIAItrIt\ItFIt0ItIIuH;IS"IuH;IC"IuH;I3"IuH;I#"IuH;I"IuH;I"M9tiIuH;I@"IuH;"IuH;"IuH;"IuH;"IuH;"IuH;"IuH;"M9uH;I6"I$`I;$htI$hM$M;$tM$I$HI;$PtI$PI$I;$tI$M$M;$ tM$ M$M;$tM$I$0I;$8tI$8I$I;$tI$I$I;$tI$M$x1M;$t!M$Hx[A\A]A^A_]D Hx[A\A]A^A_]@HELLI$ DaI$ H}HxHpI$ HE,LELLILhIHhLjJM$ HuAEILpDxM]LH}L9tHCH}HtHu1ҹLM$ ?BLEIIHCI$HLL8@L}UHUI$`LHU=L1fDI>fDIuH;I"UIuH;I"IuH;I"IuH;I"8IuH;I"IuH;Ip"IuH;IX"IuH;I@"#I魞I麞IݞIÞIIf.UIHAWAVAUEATISHhHA@HtHHh1[A\A]A^A_]fHE4HUE1LH Lu1HL HHxE@HuDmIHLKH}L8@L H LE)LMLLILM|H}LGL HuEDmILUDmLDhH}IFH9t@H}HtHHM$LL}LxH`LLefDMIDILHUHUHuDmHEpL9 cM$H8H;@taI$HH8A|$\,H H;(tCI$H>H HDL"AH0LHLH障H逜UHAWMAVMAUATSHH(H1Ix@HHtI@01HH HyHE1I~@t Iv0H~ LgH1H R H=R={1MH tR H=R=SL H>H@ LHHD#L H>H@ LHH#IwPH0H=H z<uHAHDžLILL8MND`HL9tK7H8HtLM:7H@ LHIL"*LLI$HDžM'LA-HHI7DžHHxL-H54PjHMLDžILHL@H8I?DžHǸL(@He1[A\A]A^A_]DHeظ [A\A]A^A_]@H5ӓRL HHLH\H HHHH>f.L`H5dRL蚦HHLLHH HHpLHIF>I驒HHÒHH HH/H銒IZI6IcItH靓HyHRI鞓H鍒H顒H韓H鑒H餓H龓UHAWIAVIHAUATSHpHHHPIwpHIH!I8HH IHH HXIHML$PIcI,HMA8E1M~IILMIHMIHpMY@M~IILK4M)HLIH@IQHH~IHHMI)HMIHMYPM~IILK4M)HLIHIQXH~IHHMI)HMIHMY`M~IILK4M)HLIHIQhH~IHHMI)HMIHtTMYpM~IILK4M)HLIHt(IIxH~MHLIH)IMLH1IH T,S H=p,S1a1WIL; LXIIt$(I|$訶I9uALL}MIME`MA LHLLI H@HL@H5[RHMcHL88HpAHCH9t@1HHHtASMAy`LLHLLHH=R-uA H@I1HIL9t0He[A\A]A^A_]DL oHMHLH LDž HZH=RY1-M@1HLAEI I@ HE1E1H1Ls~L f~H5RL)P)`ш)@聠HH5ՉRHgHHLH设I HKHHH%8HHttHHHHH9t.H IL9.LXIIt$(I|$eI9uHeظ [A\A]A^A_]HIFIfI铎I齎H雎I鴍HȍI餎Hff.UHAWIAVLpAULMATSLHxH(HHHxLILHuIMMXIT$PHcJ,HHr81H~HHHHHHHIHpLJ@M~LIMNL)MIIH@LZHM~HILJ<L)HHIHLJPM~LIMNL)MIIHLZXM~HILJ<L)HHIHLJ`M~LIMNL)MIIHLZhM~HILJ<L)HHIHtTLJpM~LIMNL)MIIHt(HJxH~HHIHI)HHIH1H=H &S H=3&S1$+u#IM9MXIIt$(I|$oM9uHEH}LUHMH0LOMBHQHHu LDk$L8LHLH>LNH`LVLCHLHKPHLHDHLpLLHHL](McICLhHADžDžDžDž0DžDž$LA$~DhA>"DfLDH5:RLL0))DžDDLH5jRLHLLLKI HH@HLH2HHt LBH0M]L9t)HHHH9tq)A Dž wL 'SED sH@E1HX͚HxH{@t LC0I@ L`HH1H@t HW0LZ I[HMH`LHDžhHqMQHPAx`H`ƅpLHLHDžƅ1MtA uA DH R H=R1~'1HtA XH R H=FR1G'A A #*HDžHxHDžHHI AHL*HLHHLH>kLLoHPLIl5HL9t['HpIVH9tF'I LM @L0HLILH-I H@DžH"L INXHpH9t&H8HtA tIHHLOLI LLA9DL@LHLHkLL+HHL,4H0MUL9t&L@HIL9t%I H@M HLLHxLH,M H`Dž`HIL IMXH0H9tu%HHtM H1Lg$M H1LHC$A HI HDž&H@"I H-"M ,%I@ LHHù*HHLHDž0HXH3HLDž0HxH5=jHLLDž0ItL@LLHDž0HCL@LA A HDž M $I@ LHHù*)I H@HM HHLHLH7*HHDž`HqL MMXH0L9t#HHteI H@M LLLILH)HHDž`HL MEXH0L9t"HHtA HtH"HH"HH"HHo"A Hu A tMHH"A Ht0H+"A HtH"HH"HH"HH"A Hu A t0H"A HtH"HH~"HHk"HI~軥HHHz褥A L(I$LSH5~HhL1HF"H0L L9I@ HH"HL9H{ HHuH7hH1!HLHHǀHLAuI HρHE1E1H1LdH!HL9]M ADE0 AApRL6H5mH'LLHL$HLL蟣HL[L9tH0MEL9tH(L'AT$HHDž0LHHL` fI4 H)H@H~ H=R@ AąLLL~!HL DhDAHcLc`HcA< L0H8H@DdDhA,EAEujQE܉AEuZDDuMJEAEu?JEAEu1JDDu$JEAEuJEAEuJuEZAE1D AIIKD"IEQDplLDtEA>)DupDYADAEu^AAEuPAKDuCAKAAEu4AKAAEu%AKDuAKAAEu AKuLDEAAEE AKEcHD|ID1IxLcLLc LcILIHHJHIʍPLcMIHMHHpMM)MMMPMHHcHIHcƉ`H5RLPIH)L)IHxHHHHHHXJ}HPH1Lfo=^RPLDž)HLyHpL HLLwHL[L9t H@fEH0D)0H耴 H=wRAąLL&LX HL9 LpHLc8HctLcIcLIHL0MAIL8DHHEQH@IHHGHIIcILHHPLLL)IMMMaMIHDE< HcHIIHH5DRLXIcDLH)H)LMMCMIIL`>{HHH1Lfo rR8LDž)ԗHLyHpLHLLkHHKH9t A ILH@L;H8kLHiH5RLjzHL1Lfo-BRDž)2H Lƅ HL LMm螜H0L9tHHH9tHHHH9tI LHpHHrA HMXIIu(I} M9uA &I I@ HڹHHHʜHLLDž0H7L @A .A  HFHH(L'AT$pD+HLxHtH@XHHtLcLHIIDDDhDpD0DD8DD$DDHHuLL]A{I I@ hHuE1E1H1LJI {<H5FRLwH5jfRLwHLLC H0IuH9t^HpMNL9tIH5-fRLDž(0wHH5`HwL(LHLLHLL苙HLCL9tH0MUL9tH5eRLvH5HvLLHL"HLLHHKH9tfH0IEH9tQH5CeRLBvH5yH3vLLHLHLL諘HHSH9tH0M]L9tH5dRLuH5 HuLLHLBHL L;HHsH9tH0MML9tqA H(L'AT$LLDž0HLLhH@ fI4 H)H(H茭 H=RAą;LA- fEHH(D) H=RnAąHDA^+A5I LFLpHI HxHtkH蟖3HH5bRHsH5RLsHL1L5fo5-RDž)aƅfE1HDž)pHLL)H8LH<I HIHLH# HH5aRHsH5qRLrHL1LYfo%R`LDž)蓏HL H`I HLLIw HHtLH0M]L9tIHHHH9)HU LI DžpHZIH}ALJ M HOLE IxHq>HHIHI LDžpGpLM DžpI DLD I DžpH 8I DžpH LDLDI DžpH DLDI DžpH yDLDI DžpH ODLDM Džp I$ $I LDžp H 8A nH]LU AHCMBL9tHIILM A AAJAAEu0JDu$JAAEuJAAEuJuDE1AsDAIAAAL$ED$HDTHD1IPLADXEAk%DDuiQEȉAEuYEAEuKJDDu>JDDu1JEAEu#JEAEuJDDuJuLE1ADDȃHAA1AAHEHID`JDH\HctLc pHIHHNHHAHBHhH5RIHHpAHHHIHLPIHHHxcHPH1LHfo=RPLDž)肀HLyHpLHLLHLKL9tdHfELD)HHH0%Lc`HcH8DILLcDIL0IDHH8H@ADulDIADAEuZDuNAIAAEu?AIDu2AIDu%AIAAEuAIDu AIuABDAEA4 NHID1IDVDPLDADTAc"DDunDYDDDu]DDuPAKDDuBAKEAEu3AKDDu%AKDDuAKDDu AKuDEXED1A< OHID0IDGD\XLAD`A8DDuhAD։DuYDDuLHEAEu>HEAEu0HEAEu"HDDuHDDuHuLAEEAED 1AHAxI㉽hKDIdH8AlAMEAEuoDYDDDu^DDuQAKDDuCAKDDu5AKEAEu&AKEAEuAKDDu AKuL8AEDAEAAӍ< 1ҍODOIDtJD&HpH5RH~_HHH1Lګfo%RHLDž)|HLyHpLHLLH见HH9tI LLpHIDž0LHH@HHLyLL`fELc0fnDDIcDfDnDMcfDnAfDnE< fDbDfEbfElfEffEoD։txfEbfEjԉ|D)0D)@AAAutDQADAAubAAAuTAJAAAuEAJAAAu6AJAAAu'AJAAAuAJAAAu AJuPE1AŸA1AAJERHDIDI󉅀A0DufQEډAAuVDuJJEAAuNEAEu0NEAEu"NDDuNDDuNuEcE1ɾEEA1AAIEQHD\ID3IXDDAD`ADDupDIEDAEu^DDuQAIDDuCAIDDu5AIEAEu&AIDDuAIEAEu AIuE`EA1ADAJHIDIEBDhdADDDuoDIDDDu^EAEuPAIDDuBAIDDu4AIEAEu%AIDDuAIDDu AIuDEKEAADAHAxH≽pID1IlH5RHOHPH1L*fo 2R`LDž))]lHLyHpL[HL\LqHHsH9t?HfH0)!HH(fo`L8)LcMcHcLcDIDAML)pIL0IʉPMH8IL@HHaDutDaEDAAubEAAuTAL$EAAuDAL$Du6AL$Du(AL$DuAL$EAAu AL$uD^AA1EE AHHHDHApXTDDAD\ApDDuvDaEDAEudEAEuVAL$DDuGAL$DDu8AL$DDu)AL$DDuAL$EAEu AL$uEYEA1EA4NHIDIDNDd`A DDDuvDaEDAEudDDuWAL$DDuHAL$DDu9AL$EAEu)AL$DDuAL$EAEu AL$uDEbE@@D AIAyH≽lID1IhDpDDtEEEDpA} AAEudADuVDuJHAAEuH H5P1L&1ҾH=RHIJDIM8IpHHxLSPLEH8AH@AtZHHAHPAHX}AtoH`DAARHUWLVLAVA D]QH H=ޛRHe[A\A]A^]fHeย[A\A]A^]fDA럸A뒐fUHAVIHAUATSHHHP1ҾH=K"RHIֿH H51Hv1ҾH=ERHI蚿unI$I$xEMD$PM8VHWIHULAPMEpAQM$;H H=RiHe[A\A]A^]@Heย[A\A]A^]fDUHAWAVIAUI8ATIM}SHxHIHs L0HC(C0Ls M9M;t$ Hu}4M9et!LHuL;p HxLD~9M9e LHuL;p }LI|$IĿ]@IHmHL[A\A]A^A_]I}(t Me M;t$ YL讷HIHtHM9ttDLLHQIE(HH[A\A]A^A_]f.I1fLs 1M9t$ @밐ff.UHAWIAVAUATSHHHHPHpIH@!1A$|wEA$|H/RHc4HfDH R 1H=bRi H R 1H=;RB Dž0df(LE H L85LuH8էL]H5RLM/LLxIyL(H}IFH9t肾H}HtԌIA}Dž4Emq( w!HRDEEHEHAD4  uI|$PI9$xC L8E$lE_ A{ Ao$DAo$xfDofDofofAs fAs fDfDffEfAs fAEo$fofs fEofEofDofAs fDfEfAfAfs fAtBEo$fofs fAofEofofs fDfAfffs fAfofoEfsfs Afofofofs fffffs ffH~E9tKMcEPKxE9}6IcAPIxA9~!HcAIxE9~ McKxHH xR 1H=CRJ4Dž0E1E1HHHH@lMIwxMnILHM8 MAǂA},EoM8fEvAEoAfEfEofEofAs fAofAs fEfEfAfEfAs fDAEoEomHfEfAofAofs fEofs fDfAfEfAfs fAfDAAoAoEXfAfofofs fofs fffffs ffDAtSEoEoMhfEfEofEofAs fAofAs fEfEfAfEfAs fDfEfEoÉfAsfEfM~IS9tHMDIH8HIHAu$E1w L uRM$ML H LMMHHfLMRMtM9j }MRMuH9tL;h }MHHx LHL]D(L`(DX0H HHY"APyH H@ D0E1H1I@HI t ADŽ$H@I$|iL 1ATA|$TL@HpIL9t螸Hĸ[A\A]A^A_]f. I$xxIT$XI9$eI$VI$GL 膸H@ LHHHI0 A$rD D ID4Dž0ƅ4f1fLLu褠LMH5rRLMz(LLOH}MVAL9tZH}Ht謅Au IwxHxH ]fDH5RL(LLH[H}IFH9tHHLL EHLjH(L H L̟H}H,LHH8 EML2 H}Ht̄IH8r((H8H SLzLLH肳H L`H(Dž`H LTL LLH L`IXH\LADž\lD(HhHtLHH}MvAǃL9t脵H8H}HH9"gfL E11HHH%(|I$xAMT$XM9$.M\$`M9$ID$hI9$L ?H@ LHHHI/0 A$D4 D 8 CDAL$BD)AD4Dž0ƅ4DU xQDž0j(=RDž0h(=RDž0g(Dž0mf(DD  IAIL$`I9$I$Rf fDL 迳H@ LHHHI>00 A$tW  D4Aƅ4Dž0DHHH1菴f.8 D4 D BD.ACDAAffDH1z@D8 D4 D CD(AL$CDADiE1II(IIIQIIIIIKII-If.UHAWAVLuAUATIHSHHHHPLp1#M$ ߱LHII$@ FILbHHspHHHLLADžN,oN8ofvۉffofofs fofs fffffs fŃo~HoffDofDofAs fDofAs fAfDfDfDfAs fEfADoDo^XfDfEofEofAs fEofAs fEfEfEfEfAs fEfAƃtDoNhoffofofs fofs fffffs fffo؉fsffI~I9tHLMH8IMMD^$1Aw L=RKHI$ M$ IHUH5H@LfHHvHtH9N }HvHuI9H;H LE@0L@(LPEQ,EAAoq8fEvEEoAfAfEofofAs fDofs fAfAfEffs fAAEoEoaHfEfAofEofs fEofAs fDfEfEfEfAs fEfAAAoAoQXfAfofofs fofs fffffs ffAtSEoAoqhfDfEofEofAs fEofAs fEfEfEfEfAs fEfAfDoDfAsfAfH~HD9tHI4HN8HHHAy$E1҃}MM$ LLUM,LL LMIMtM9Y }MIMuI9L;X HM@0LHH(I$ M" M$ LHII$@ FF&H8E1L1ALHL1LAAiIL\H}IL9t(HH1[A\A]A^A_]LDH@HUHH}I$x @LDHHUHuI$x Hy@LIRMsM$ E11LLhLHL1#7fDADA11HHHff.  UHAWAVAUATSH (L.IHHAUH}p0IH0TExHDžHA1AYAA  EL$\L AALC A1AYt'AtAtEpA@LPF XNH@ LHH8pq,DؾL8AAAPLHAu-McWhH8IOLHKHPH8H0HǨ ZAMvA1QAY\AOABAp2AA M$HHI$M IM$It$xM LmII$ I$I$H(9N(tHLEEALLHHpDžpIH蟞LHXA$'H@ L I$E1E11HHfDA,sAD IL$xLHE1҃L9 AHE1RHHeA|$t_AXA$uA$u L9 3 I$AE1HALHjHHI$@eY^Et 0 Q A|$t{A$uA$u L9  I$(E1HALHjHHI$`e(XLmZt 0  AL LHDžpIHLpLŜLH WA$LHM$LM$M$XET$(E9P(t#LHLDžpIсH}IL9tL9 7H0H}HH9tƥHe1[A\A]A^A_]DA,s A/A|$t#H}LH8辥H}HMH9 HIA1H)HHHHt|HtfHtQHtM9M<$IM~A$lAAMcKHHxtHt HLLcK[H=KRA\]e@蓆H=?Qeu sA$ [A\]Ð1H KR H=Qg$HLH=JR`etf.軏H=DJR=etk [H=IRA\]ef1H KR H=Q!gHL^[H=JRA\]d@1H JR H=QfLHL6H=GIRd1H rJR H=QfHLv[H=IRA\]4d@k[H=IRA\]df1H JR H=Q!fHL^[H=IRA\]c@1H IR H=QeuPHL[H=*HRA\]cH IR 1H=Qe1[ A\]Ðf.U1ҾHAWAVAUATSHHHxH=^Qc' H H}HpHhnLuL}M9 LM1E1L)HHHHHfI>W B 0 8L'AT$DX@!g   DI}MuDoA AXA A  I~D_A APA A  I~O K   MnM9I}O 3D L7AVD`@h4@D L'AT$I~D`@hD_A ID L/AUI~D`@hO MD L'AT$D`@hIfD WHLDf(AX(@D /LLEa(AZ(@D HHDb(_(DD HLDf(AX(@L/AUD`@hMnI}DGA 1AA A  II}D_A t6AA t&A u;D GHPDX@ DD 'L'AT$D`@hIM9EH}ADžAE HtrbEHpH}jLmLuM9u1EZAAIM9MMEQA uIIQxHPI@~PI`HPII0PHP~PHP)EPHP~PLP)MP)UaLhHfAofAop fAo`)PLPgw MOP)PMtAu A\L_ISPHtA{u A{\HGHpPHtxu x\LMOPMtAu A\L_ ISPHtA{u A{\HG(HpPHtxu x\`ZfLuMtLo`1Ҿ H=CR%^Ä+HhHphhH}LmL9gMH1AI)IIIAIIItoItLIt'I0HpDFAHL2EfEL$AHLEZACHH2DFEpA HL"ET$EJAHLACpHI9!Ht _t=Hx1Ҿ H 8BRLH=bBRA}`1^HpHhfLmL}M9HLLL5?BRL)HHHHtQHt&IuHx#LY[I]-H3HxL4[HH3HxL[HI9H3HxLZHsHxLcLZHxIt$H_LZmIt$H@LvZNI\$I9fLmMtLO]1-LRHRDZEKAIBpDFAMrEfAT$\MZACDHA)Ir DFEpAMb(AT$DZAIB0pDNAIR8I9YLEpEfAAAAF D HSDX@f HĈ[A\A]A^A_]fD ukHPDX@fDfD u;HSDX@fDD uHPDX@fDH}H~[fAAAF!AAAFD uLLEa(AZ(H}Hx[xDD _L7AVD`@hfAF,AAAFAFfAAAFAFfAFOAAAF#AFf1H}HPZPD _HHDb(_(0DAAAFDAAAFLEZAS&HWEQ(A9NE9EcY;J(9JA9AEQ(A9kE9bDF(D9,E9#J(A9K9CDF(E9GA9>]DHXAFHHDa(^(ED HSDX@^AAMLEX1IIIfDUHSHH(H=ԺQUt H([]fDHZH=ƺQTuHH=QTuHtH=QTuH H}@HEHx PH=QwTH=QiTH}Ht E%E܅PHH=rQ7T5Hf.UE1HAWIAVME1AUATI̹SHLHHUH}LLHH#ƃ H5?f11 LP L HAHǃ L f ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( H3ML LmL L0 fD8 Hǃ@ ǃP HǃX L` Lh Hǃp ǃ Hǃ L L Hǃ Hǃ Hǃ H0 HHǃ Hǃ Hǃ Hǃ Hǃ ǃ L Hǃ ƃ Hǃ Hǃ Hǃ ǃ, Hǃ8 Hǃ@ HǃH HǃP HǃX H` Hǃh Hǃp Hǃx f Hǃ A`fDIMt$Mt"AnuILRAn DIMt$Mt AnIM9Mt$Mt An3IMt$Mt AnMt$Mt AnMt$(Mt AnuMt$8Mt AnwMt$HMt An9Mt$XMt AnMt$hMt AnIpM9?L MtL\JL-MqHIL+[A\A]A^]ZIf.I M9#=fDAIHIIIItvItNMt$Mt@A~DOENu/MLARE^ ACAF AuILRf.IMt$MtANqAvIMt$MtE^ACAFA2IMt$MtA~DOENIMt$MtANqAvIMt$Mt7E^ACAFAu%ILRAN qAv 0IMt$Mt2A~DOENu!MLARE^ ACAF AIM9Mt$MtANqAvIMt$MtE^ACAFA1Mt$MtA~DOENMt$(MtANqAvMt$8MtE^ACAFADMt$HMtA~DOENMt$XMtANqAvMt$hMtE^ACAFAWIpM9DI6LVAn vMLAPg@ILRAn 8ILQ*DMLASAn ILP@MLAQAn MLARI6LVAn .MLAP@ILRAn ILQDMLASAn ILP@MLAQAn sMLARdILRAN qAv MLAP}@MLAPA~ DOEN :MLAR+fMLARE^ ACAF AILRfILRAN qAv MLAP@MLAPA~ DOEN MMLAR>fMLARE^ ACAF AILRfILRAN qAv MLAP@MLAPA~ DOEN \MLARMfI6LVAn MMLAP>@MLAPA~ DOEN TMLAREf.MLAQAn pMLARaMLARE^ ACAF AILRf.ILRRfILQjfILRAn ILQDMLAPfMLAPA~ DOEN MLARfILPfI6LVAn WMLAPH@ILRAN qAv MLAPff.UHSHHOHH߾x[]\Cf.f f.f.U1HAUATISHH Lk0HfG@wLk H2HRH訶HKPH{@HK@I4$IT$H苶fo QfHHCpC`CxHH[A\A]]IIH{ I9tA{xLJH;HtAf.DU1H !QHAUATSHHHH=F+R1@H{ H{(EH}DeEH0LmHtuLmHEALL ?YuLM1E侉H1ATLQH 'RH='R?AZA[xHǃ0jHsH0E1jE111AXLAYAHEL X1E侉H1ATH=;'RLQH 'Rf?^_HhH0H8HELAĉL 8XuLM1E侉H1ATH &RLQH=&R>ZYuw1H8H=U&Ri=um1He[A\A]]fDH{ w8H=Qi<…He[A\A]]fLMHe躉[A\A]]fD뎐UfHAUIATISHH^H+HHGHHH9H/?HE~MHI\$flA $MUMMM9DLLHL)HHHH=D@.HHHHtmHtGHt I HIqHpHtFHpIILLLYL^MtACHHL)L.HYH^HtCHHHHHyH~HtGHHLLLYL^MtACHHL)L.HYH^HtCHHHHHyH~HtGHHI9LLLYL^MtACHYHILnHNHsIuHtFHSIUH{I}HtGLC ME L[(M](MtACHK0IM0Hs8Iu8HtFHS@IU@H{HI}HHtGLCPMEPL[XM]XMtACHK`IM`HshIuhHtFHKpIupI9IM)IJDID$H[A\A]]ÃHHHHtjHtDHtM)L(IYHXHtCHpIIHHHyH~HtGHHLLLYL^MtACHHL)L.HYH^HtCHHHHHyH~HtGHHLLLYL^MtACHHL)L.HYH^HtCHHI9HHHyH~HtGLYHILFHNIsIpHtFMkMhI[IXHtCIS IP I{(Ix(HtGIK0IH0Is8Ip8HtFMk@Mh@I[HIXHHtCISPIPPI{XIxXHtGIK`IH`IshIphHtFIKpIppI9!1r3f.fUHATIHSH1Hfon(RǃMt{xCLH8H[A\]fDH;Ht9Hf.UHATISHHGHVHWNHwO2Hs HC(Hs0Hs8HC@I|$(tQA|$ ID$ { MD$(LC(ML$0LK0MT$8LS8IpM\$@L[@ID$(ID$0ID$8ID$@IT$HMD$pLK`HSHIL$PHKPAt$XsXA|$\{\M9vLSpM\$`M9+AoT$`S`It$pHspI$LCxL9vLMT$xM9Ao\$x[xI$HHI$H9sM$LM9r_Ao$Ao$I$HI$HHE$D[A\]M$LM$LI$HI$HI$HID$`HC`IT$hHShIL$pHKpM\$xL[xI$HI$H@UHAWMAVEAUATAHHS1HHLmAD$foP%RLDCDDMtV{Ix_HCf1C HH)j{HyH;f.ILL5HH[A\A]A^A_]HKH;CHH)HvHtHH9tHsIHLC?UHAUATISHrQH(F= t5vUHaQ=t%HZQ=t=HSH"NHEڃ>6H=X5RLcIAfDHQ=t=HQH MHE뷐H5QfLmLtHLLVH}IL9tT5H(L[A\A]]fDH5QH5QH5QH5QH5&Qt@H5-MdIH}IL9t4L=UHATISHH.HSLHI[1A\]cҸrBHʉr8r0Ar(Ar ArArArAuDBE1AAкAAAIHID1IAy>ff.@UAHSD_,HHAAEuLI9:LG@H97IuuDLHcHHIE1Au H8LOH(D_AHH5RJc4 ;LH?HH=IH9LH?H=I<H9KLѿH?H=I4 H9AA@HHHLHHHLHHHLпHHHfDLGHIH9@AEH9dLG@McNLxcfHIAAtd1HHHLHHHuLHHHuL1HHH@lj[]DH?MAI9fDHHHLHHHuLHHHqLпHHH[DHH>I<H9uLH?H>I1H9A HHHLHHHLHHHLпHHH DDVAeAAKH@HHHLHHH5LHHH$LпHHH\fDLGHI.aDO@f.tnLG8DH>MAI9AfDAALG@Iu!wve.Y wYxED! ~pAAE E@s0,r!t1uEno,-pE1  kfvUetp rift_AiAE t; f.jthf.vf.f.f.gf.kf.qf.f.xvd1w#HL-H@ÐfDH H1Ðff. 1ÐF\FTFX1ff.fFFF 1ff.fFF`1@F1FF`1@F FF1Ë1DUHAWAVAUIATSHHC,Lb8Lz@HrHH~nLLLcPH HUHP@HUȹu LLc8Ee1E}MuAMIUH[A\A]A^A_]fDLL9DLMIMIu1ҹfLcXLjff.@UH=*RHAWAVAUIATISH^ D~Dv1'uAAA\$A]H[A\A]A^A_]ff.UHHAWAVHEAUATSHHHHHh_2H}HMH9k+HH1E1Dž H)HHHL HtkHt3LEHAtAt AqwDALHGLEZAtAt EkAwDALHL0E~AtAt AWwDALHH9LEPAtAt EJAw ALDLhLXAEt=t DpAw ALM{AWtt DBAw ALMSEjAtAt EMAw ALDICH9KHt{(fo=cRHEHDž`))@)P)p)})})}HEE) B 3H HPa*HHHP/H(H H`H9HBAƁÃA LM+AM\MeM}M9{DQyAAAE ȃ AŃDA }LH8LK`HH@HKhHPHHSpEHL`fDofDo@fDoPHLDKxDDIM9I$HCPEuDE] p3 H @uH{xLS`IHLpL)HHL-HHpHz-M9CHHH9`DH Ht%HPHH-H L(II9( fDM!Ml$MD$LM9 MM)AM}IWPz!IwhI;HJ,~LR8M9%IEI9 MohM; I AT$,~It$8I9L`H@LhPA}!) HXhH; H Eu,A~M}8L9/ID$I9 L8MgPA|$!ZAG\LHL LLPLH,H LIKLIBPX,#E1LAC| L ,L(L LpM91M<$A.IMOL9LmL]LHUHuƅLXLLL}E1LH`HLƅDƅHA .HI9HHQPJ, A Doz8ozHAAfAofofAofs fs ffAfffs fADoBXfofs fEofEofDofAs fDfEfAfAfs fAAt;oZhfofs fofofDofs ffDffAfs ffDofofDofAsfs fAfEfEofAs fAffs fAfH~9t=LcJD8DFD9~+McJD8DFD9~McJD89~ HcHD8H9pAYHLj8LR@HLrHAI9QLEtLLLt HHM!!IL9p@L LpHpH tgLhfoHCxHfAo(fAoxMX )pLffDoHfopfo]LMDCxHL~fHC`DX,LH8HH8AA{ECqDHfoHLHHHHHtBDopHfofDoHxfAofEfs ffs fofAffs fAooHfoHfs fofofofs fffffs fDoGHfoHfs fEofAofDofAs ffEfAfAfs fL9DoWHfooghH@fs DoDo_8fEofEofDofAs fDfAofEfAfofs fDofEofAfs fDfAofs fAfAofs fAfofAffs fffDfofs fAoffs ffs fDfEofEfAs fAfEofEfAfs fAL9fDofDoDfAsfAs fAofEofAofs fDfAfffs fAfH~HʍVA9t9LcDRK E9~(IcrI A9~LcƃK A9~LcK HKhH@@HCp:f.HC`DX,LH8HH8A~ESECADHfoHH<HHHHHtDDoPHfofDoHPfAofEfs ffs fDofEfAfs fADorHfoHfs fAofEofofs fDfAfffs fAozHfoHfs fofofDofs ffDffAfs fH9 orHfoozhH@fs DojDoB8fDofDofDofAs fDfEofDfAfofs fofAofAfs fDfAofs fEfAofs fAfDofEfAfs fDfAofAfAfAofs fs fofffs ffffofs fDofEfAfs fH9fDofoDfAsfs fEofEofDofAs fDЍVfAfEfAfs fAfI~ID9 >f@\ID$I9IM9HtD1HĘ[A\A]A^A_]MwpM;ItMIpAAG\QLPpL;HtMIa@\pMwpIM;AG\LPpI"L;@\ffDfDLSHLpMt'HDoRhfofs fAofEofofs fDfAfffs fAfofoDfsfs fDofDofDofAs fDDFfAfDfAfs fAfI~MD9t>McAXOT9~-HcEXMTD9~IcAMTD9~ McOTLjHLaHrPHX&HRXHL`HAAƅƅƅIU@H$H9I}HI}PAt I}X@\fDIL$@HI9I|$HI|$Pt I|$XAG\fDAG\zHXH5 1L1ҾH=~dQHIMAw,~EoHAo8AAfAofofAofs fs ffAfffs fAEoGXfofs fEofEofDofAs fDfEfAfAfs fAAtEoWhfofs fAofEofofs fDfAfffs fAfofoAfsfs AfDofDofDofAs fDAEfAfDfAfs fAfI~MA9t6HcDPL4A9}%McxN49}LcσN49}HL4M@LHILL9p>fDHDžMHDžXHDžHKPHC`y,LY8Hq8~WDGWEHfoAIM IIIAItNIDoJHfoHfs fEofEofofAs fDfAfAffs fAoZHfoHfs fDofofDofAs ffDfAfAfs fI9DorHfoDoZhH@fs Doj8fAofEofofs fDfAofAffEofs fEoffs fDorfAofDofs fDofAs fEfDofEfDfAofs fEfAs fEfAfEfAofs fofAffs fDfAfEfAofs fDofEfAfs fAI9fofoEfsfs AfofofDofs ffDffAfs ffH~HAAE9t8LcDPK4A9}'IcDHI4A9}McK49}HI4HshHI@HKp9IGpI;o HtHAG\)IGpHI;AG\I}HI}PH{fI|$HI|$PI [oaHfofoHQfoffs ffs fDofDfAfs fHHL HPLPDoh8L@HoS8HS8Dow8LOHL{HD))UHrLD)L)LD)@LPD)pLMHuHt#HPH5S1H) 1HH¾H=\QM LLHDžLPIcJ,Ir8M`8IR8Mi8DYDqA0ELfoAIOIIIAIIt9AoZHfoIBfoffs ffs fofffs fopHfDoHfAs fofDfDofs fDffAfs fDfAoDoPHfDoHfAs fEofEfEofAs fDfDfEfAs fEfAoL9 DopHfoH@ohfs Do@(Do`8fAofAfEofs fDfoffs fofEofEofEofAs fAs fAoffs fDfAfAfAofs fofffs ffDfDfofs fDofEfEfAs fEfEfAfAofs fDofEfEfAs fAL9fDofofoEfAsfs AfAofAAfs fAfffs ffH~HE9t9LcD_JD9~(McDwJD9~McރJ9~HcHMR@Mx8HHDžLEP,ASEZErA4DLfoHNHHHHHtf.UHAUIATI SH3I4$LHH|w%HH[A\A]]INfDUHAUIATISHI4$LHHQ{H5$gcH5gKH5Q|3H5QdH5oQLH5Q4H5VH@UHSHHHcV,~+HDxH lH9DpH5hHLHH[]H5hHH[]f.UHSHHV,t\t'H5+ۅHHH[]DHHtOHuH55QHJHLt_IuH5hHHH5QHsfHHt/HGNItZH5lH7fDHtH5QHfDH~8HN@tSH5wQHvH~@LVH8Iu-fDH~8LF@I1Huf.UHATISHHtHtxH)HHwDgD<2D)ʁ)A)AD)EE9AAAAF<AE)E)E3 ED9))AADEt$AEAF()AE)E)A)ED9ADAAAF)AE)E)A)ED9ADEfAAF<()AE)E)A)ED9AEfDAAF)AE)E)A)ED9RfDƉAAAAAAAAAFF$0AAE)E)E)DG/ E)EED9A)D))AAADAAAFD)AE)E)DG/AA)AAF48)AE)E)EEA9kADAAAF<D)AE)E)AAG*DA)AF48)AE)E)EEA96DDEAΉAAAB41D)D)F 4:)A)EDuEE9 HEE)D)D)AEA֍AAA<D)Ɂ)Ǎ)B<2D)ҁDE)D))DD9~]ȍAD4D)AA)ƍD)AADE)AB<2D)ҁD))DD9NHE7DEAAAAB :D)EA)AG; EE9E)D)AэA|$AD D)AA)D)DE)DA9A֍AAAB 2D)ҁD))DE)DA9lA֍DgAAF2D)AE)D)DE)DA91Dg<2D)ҁ))DE)DA9LeIt$LHuHHH*Lk @ H}H DpDIIAL9tt1A H=Q'EL H \fLeIL$LHMHHHLrj D H xHH}IAL9tԛ1A H=/Q臙uEH @AE j1#I I I ff.UHAWAVAUATSH(LYL)H}NNHDELRL" M9#LЋvD7LL)L=(QE1HuD1HHtkHt>HtA$1҃w AA։9IT$ËE1D9AOHE19D9AOHI9DE1w E$EDHBRD9AOE1w E$EDPD9AOE1w E$EDPD9AOE1w E$EDD9HP AOI9uM9LDeM1L)DgL5QE1HHHtpHtCHt#E}E1Aw GEDD9MEAOAE1D9AOIE81A9AOIM9DE8E1Aw G,EDI@E@D9AOE1Aw GIʍFHL$I|$8I;$t HHύFHHLS8H;t IIʍFtsHL$I|$8I;$t HHύFtHHHLS8H;t IIʍFtHL$I|$8I9$tHugH1I9 LR8IIHøI9II>1I2Iu/LR8xLeIXLLH5 loH}IL9E6ELCI(If.UHAWAVAUIATSHHHhHP P xH=:QIMU1f.8EqAv,1J d81҃- H=:QOMExM0LE~EM@M`LMMMELU~UL])EULe~]L})U])]7foefou1fo}Hx px AE\DxAH cQ H=Q1踇E HxmEHh[A\A]A^A_]1ҁ,1v1mfA.@Et1@AxtFAV0  H=P臅 u1H=͕Q蠄E}LxLI0LU> H=,9Q/A|$uA|$\t_HH9]L#I|$Pt1AwA<$uE\$AA1Z@E @I|$PRB 1ҨH=͕Q 耄dA}\VLH=ĕQ臃8EU1YMpvxDyAvI}uE1fEfE.FHAADվ H==Q裃fD,s zAQEUtAAuQAuGII9 H=PAM(M9 A1A EUtA~XAuNAuDII9 H=PAMM9AE1A辂L1҄MXIIO8t HAW,rLcOIx8I9t HHDJAdIcMIZ8I;t HHDbA4McO4Iv8I;t HOHDjAMcO Iy8I9t HHύBLcKLc8H9t IIDZAMcK4Ln8H9t IIDBAtzMcKHx8H9t HHDRAtNIcM$M\$8I9$t Ig I˃t"HcM4Iv8I9t H=HκI;t1I@f H=DQ诀^RfAF06EEH]LeHLEDUDtU9UN H=ՐQ@E 1ҁ} H=Q[f.1Ҿ H=ُQU@1ҁ H=Q0vG1҃wG H=RQ1Ҿ H=QiN1Hrp1҃vAYAE AAfE E t;MAAEF0tHމ}LDEDtD9MEe9E\1Z1IfUHAWAVHEAUATSH_ H8LG0OXHEI9IALvAIH HQHDaXrHUȍ~MMMt/M MMIMtI9Q sMIMuM9t I9R VHuLLEvLEMXIHEx\LEL9HML"L)HHHH=HHHHt{HtPHt%I;DDLLEL]HELEHH8DDLLEHEHELEHH8DDLLEHEHELEHH8DDLLEHE_HELEHH8DDLLEHE:HELEHH8DDLLEHEHELEHH8DDLLEHEHELEHH9EH8DDLLEHEH}DDLHLMDDLIyLUDDLIzL]DDLI{ iHEDDLHx(SLEDDLIx0=H}DDLH8'HELEH@H9E7LIH96H8[A\A]A^A_]ff.fUHHAWAVL}AUATLeSID$HhHxLEHEHEHEHE聅H]LuL9A8  > HI9t~H;W uHH5y1p~L@\HxpII8LILHE1I9uH}Htt|ELmMIuLM}LF|MIwLI_L%|HHsLLsH|MIvL_M~L{MtxIwLBMoL{Mt[IuL%I]L{Ht>HsLLsH{Mt!IvLMnLo{MHh1[A\A]A^A_]DHiH5w1|L@\HIXI8L?I}pL)V@HH5w1[|L@\HII}pLI8L@HH5w1{L@\HxpI{I8LbILIv@HIH5v1{{L@\HxpI I8LILILILfHt HSyHxLqH}HuIH9uT@IL9CMAH\uMHMXA@\M9tMLM)IIIAItuItaItLIt7It#ItIHCXL0HAFXHHBXL(HAEXLHA@XHHAXLHAAXI9!L8H@AGXHXCXLpAFXHPBXLhAEXL@A@XHHAXLHAAXI9uHdwZIIDUHAWAVHEAUATSHH0HHHH H}LEL9LH1E1H)HHHHtqHt4HYAAENAADHOL!El$AAAAEAAADHHPÃADADHI9NA HtvwH H0~H}LmL9IE1MIsM{L9<LAz\&LfMM)IALVLfAz\IItsIt^ItEIt,ItLVIAz\M$IAz\M$IAz\M$IAz\M$IAz\txM$IAz\tiM9tlM$Az\tYMT$Az\tMMT$Az\tAMT$Az\t5MT$ Az\t)MT$(Az\tMT$0Az\tMT$8I@Az\uMrPEv,IM9HttEHpfoaQHH0HHHHHpHPH(HHHHH)) HDž0)@)PHDž`)p)EHE)E)EHEHDžxƅHHDžƅHHDžƅHHDžƅH{HXLPH@I9HA^LHHLpHLH8LAIL9@}M $EA\AuMiMyLM9tLL)tI]{\t(I]I9tL+A}\ALkH[{\uHsPHHï{ HxH HH;LHHIL9tHrHPHtrrLHIL9tVrHHHH9t:rL(HIL9trHHpHH9trH1[A\A]A^A_]fDAAADLyHIA=ƒA=DMOEaAAAAEAAADMwAF=tOA=DIOI9LEbAAAAE;A AA9f A@A AAv A- A) E1ۃAIuPHH萭A} HxH HH;HpHHjHH;8NH7pAfMiMyM9LLL)tI]{\t-I]I9L+A}\tiLkH[{\uHsPHH軬{p HHHH( zHH;8to끐IuPHH`A}HH HH(6 y HH;8?#o5A AAA1AYt(AtAtEpADA$dI$XӈJIt$xHHHA|$tLLET$\M)IME1AtOIt'IKp\HxPSUIKr\HzP68IM9tqK q\HyPO\As\I{PK|w\HP߇KDp\HxPŇIM9uADADDDMHI9L MtL\HH dH(H HH9fo Q))))BDA;A IA gA DHH9tkL#ED$AuM LAǁM,$AU@`AH tDDtM HAƄ$H9uH HHt[1He[A\A]A^A_]A,3A)EpAAAVDDDE∅D?M AdžM4$LAVM HHIHAǂP@Dp<Dž D;B E]@HHEu<Dž DD; I$LPL@HIĉL}H=KQQLLH51QLHLL1fDo%Q8LHDžD) ƅ8fE1HDž0D) HH)8HHHWI HAHHH|aHHt&HIHL9tJXHIL9t5XDEu)DEuu DfDM,$LAUDHHHH[^HHt#HIHL9t)UHIL9UfDLH5QL肎LH5QLlHLL1(fDoQ8DžD)Pƅ8fEE1HDž0D) HL) 8Hg HH#SI H0=HHH]HHtU"HIHL9tSHIL9I$LPDDILHLDž DDo;AEDž HLD);I LLLǀvH=cQORA MH5QLLLPLH5QL:HLL1HfoI8LH)[ ƅ8f1HDž0) HH)8H HLPI H:HHHZHHt HIGHL9tQHIL9B}Q8;EhHHEdDž D,D;oEhHHEdDž DD;gDD;SAI mƂH=`QMfH HuPHe[A\A]A^A_]LH5)QLLH5QLԉHLL1 fo8Dž)ƅ8f1HDž0) HH)w8HHLNI H8LHIwXf;f;AdEhHDž HDDD;4AdEhLDž HD;\DD;HAI  ƀH=S^QfKfLH5QLڇLH5 QLćHLL1 fo8Dž)ƅ8f1HDž0) HH)g8HHLLI H6LHIgVf; fH(H ƅ8II)IIuJDL(H ƅ8LH)HHuLI9tL(LM9tL(;)AEI$ DW@fDH0LHLH5_QLyHL1Lfo%Q LE)eHULyHH=I$ H (LLIGfDI$ HPH'LPLMLLLLrEHIMAH9tz>HXHt AI$ LHII$ E'LPLLI$kLHDHIAL9t=HXHZ? Pf.A >DHDžD{,E~DAwI}LHs8LLyH H H; L LH H  H;  ?DID L&HIIM!I EMDL&LHIIL L9t+H1[A\A]A^A_]f.H HLHH H;  HH TH H;  H H -ǃ LVL fD(H(AH H qIHHff.UHAWEAVIAUIATISHHHMLE*I8 HUHHZ0HŰEHEHHUCPrHuLmHuHuL(}xH}D}HǸE}H@tI$HH1[A\A]A^A_]@M AtAuML$PEQ(AAwD[L=_QEM G4EIff.UHAWAAVLuAUATISHHǸH(HB0HH HDuLHUfHuDhE1H0A<$uMD$@AMt E1It'HLD}D(H([A\A]A^A_]fML$0MQ Iz@Aff.U1HAWIAVAUATSHXH Hx@Pu 1҃d ¾ H=:Q6&ILSH`IwpHHH0I8HHIHHpH L1LLPA|$,J+MT81It 1M9T8¾ H=:Qp%uBE\$,HAA9ML81It 1M9L8¾ H=k:Q.%t HH(HHHXH׫HHHHX[A\A]A^A_]@H1H 9QH=9QL Ax@x1% _@ fH1Ҿ H={PL$uHA|$(Av(B H=xQ$ HIHHcIHHbIPHHbH5g?hH P¾ H=%9Q#tb LHIL9t%LHIL9tw%LHIL9W%HH5>h ¾ H=8Q"hHH5>h ¾ H=8Q"2LLLALAM EQ@APpAZAw[A@MsO1ҨH=%9Q "Dh1ҨH=-9Q !D@1ҨH=59Q !HD1E.L1A ~I Z@dAăxAE AH 9Q H=9Q1"<Ӂ HH5 ]l(HH5]l@@ HH5\lAA HHy`1ҨH=6Q  uD1ҨH=6Q  H 1H 7QH=8Q~@Z 1! L ILM_H@IH7_DAAE1AH 7Q 1H=7QA!H@HH9t!H IL9!1ҨH=66Q xD1ҨH=>6Q alH5;hL=FH5![lH&A,H9tQ!H I L93!I麞IʞIIII*I9I鯞ff.UHAWAVAUI ATSHH HH=7QH@PƒZH T7Q1 H1H 7QH=uP1 MeLAT$HIupHH HI8H H`IH H0IH HIH LL L L pLL1LLA|$,LLLPDID81Ht 1I9D8¾ H=m2QHHt8I9t8uHH|81I9|8¾ H=6QuFED$,HAA9M\81It 1M9\8¾ H=1QwGA 4H 6Q 1H=yPA HH(DHHHXHޢHHHǢHHH谢HHH虢H[A\A]A^A_] ސL1Ҿ H=k5QAk*HAG(HET$(HDD[(Dy( Eu`AAAtAAƒE6.A9u$A{uA^D[1A@ H=8oQA nL1I H=4QM@ sH H=5QH ?H IHH:YIH@H YIPH`HYIHHXIHHXH5g5hH>¾ H=%/QHH5.5h]*¾ H=/4QRÄHH54h%1Ӿ H=.QÄHH54hӾ H=4QÄXHH54hӾ H=.Q„w H xsQ< HH504h_Ҿ H=3QNHH53h#AAӾ H=3QHH53h1Ҿ H=lQWLLLAA1ҨH=v.Q iD1ҨH=~.Q AÄLDAh@z1ҨH=3Q wLA ~!LI x@dAŃxD H .Q 1H= /Q <AA LHIL9tDDHHHH9tD~DHH`HH9tDTDLH@IL9tD*DLH IL9DDEu@Ƅu @u @A E1҃HH52Ql:AAHH5QlAAHH5PlHH5Pl:1ҨH=/,Q HH5Pl>HH5uPl}A HH5MPlUA5HpHܔHwH醕HHHHHuH鄕f.U1HAWAVAUATI SHH8H H=(Qx@x11H /Q H=HkPM,$LAUHc(H=/QIH@XHHH@@־ ZIxHc( HHH=/QHAA#c1MM9x H=/Q7L0It$pLLI$8LHpt6L 1Az@P~H Q H=3'Q1H@t'H Q 1H=oPAhEAA@D0AAH=fQо ¸ tlH(I~趘HXI}覘 fD H8[A\A]A^A_]Ð f f1Ҿ H=*iP^u1҃ H=iP=uI$HH>PI$HH#PI$PHHPHH5gP¾ H=-QHH5WgP¾ H=9.QlHH5!gPY ¾ H={.QNAĄ3HH5fP tHH5fP uOHH5fPtHH5fPu!HH5fPAA H=ndQAAĄDMHAAw LojQKc LIw HHjQHLc(L HEZ@HIHAPIAZAw-@Ls"1A H=-Qh1 H=-QA E8A(AAu[PAf.@DDAH=fP AbA@MPAHEXAAff.AADƒH=VfP  _ ~H {@dH 6-Q 1H=`-Q#<% LHIL9tHHHH9tLHIL9YjC1҃d q VHH5cPHH5cPHH5cPAAHH5^cPHH5NcPpHH5?cPUHH5cP5HH5bPHH5bPAA1 H= +Q d tw1A H=*Q HH5qbPA f.DfWPA.@DD1A H=)QD GMI*I龌IҌIIތff.UHAWAVAUATISHH8H H=*QH@Pƒx@  11H &Q H=OP`iHH5/OPEIHH5NP%dHH5NP IHH5NPAA'HH5NPdHH5NPA$I$xHc(HHHI|$PHI$y HH5$NPF1ҨH=Q 0h yCPA.AEDDHf.AAD1D  H=KQ &IyI0yI`yI5H&H}HAH9tA M$ A%A$p AoHsIVHHuI6H4HDxH}DIHAH9t.AEA$D A@AM$ E$@ Et$?DOA AEEEEEEIAEAEfDH5JJPLiH5U/lLAWE D AA@AAAE;FfDHH5IPE}t'AAAIuHuIuIvUHAWIAVIAUATSHHHL H8 LHI[~0H HUH8 HUHI$0H]IEHI$HL8@AEPEXHL(@IFPAD$Pp(/HuI$HE>HHHH}H9tMHH1[A\A]A^A_]HtItIuUHAVIAUIATIHSLLHIELk8Lk(HC0S HS C8IHtCIL$HtHdHID$([A\A]A^]fH9t1r 9s @DH{(I9tH[LA\A]A^]fDUHAWIAVAUATISHH@HFPHt$0H$H$p(H|$@HT$ L$L-LH(H$HH5WEQH|$8H$HSH9tFHL$0LqPAv(wQLJQE|$||$|XD t$pD@ $ADL$$t$x1D$X H=Q1D$x H=Q1Ҁ|$Wt 1D$x¾ H=Q{DD$p$Dv 1AL$$AADT$x`A@A1A@ DD$L|$PT$HL\$8AL$WA MMl$A |$0$4A L$T$@A HL$XLI'AA"HIEIʃI'D$DD$4IA$H53QE ݉$$AD$L$LD$ D$ $(D$8Md$HT$`LLLL$%H L$L/H$LHH$HtVLsH$MML9tH LH$PH5H$X$Htt$|L LT$p|$|H|$pLHH;Ht$hHIwPL8H LHx:HLI^#H$PH9tE1Ld$`H$IL9tLT$hH$IL9tHeD[A\A]A^A_]fDIu IH |$|R@|$p AdADD$WD\$4IɾE1DT$0t dp AAADf.A D@x t$pDH D@ AD$At$xF$1D$$DDH DD @E`DDAEAT$pD$AЉT$x1D$$UDAEA@D$LDD$Pt$H(@AD$E1ۉt$xGD@DE~EADmLcD$p AAAT$PADDMEDL$L@L\$(LDŽ$PILD$pLLH H$PHH|$(LD$|DŽ$H Dl$|D(H$XHt衪H HD$pEuKEuFD$HA D$LD$PD$WtfDA DAAA D$L|$PT$HDH LH$PHH|$(LD$|DŽ$HǸ貵LL$pL$|LHH$XH DDED$WH]H]H]H^H$^H]H]H'^H5^f.LT$HArUHAWIAVL AUIHpATARSDH@HFPHHp(HLLL(HLH5M-QHаH IVH9t;HLaPED$(It$8I$HEHHAM L2QG4EEtAAA!A!A@ A q ۉ A AEEEPADEYD,Dž ADžDžI fHH ))))"L(HH5*QLHLHH IwHH9tHHtH I H L(LH5`*QLILHxIRL(H IL9tFHHt蕦I Et 1Ex x@dDDHAL$,H HvPH H5{,P葼ƅL HIL9tM AB@d A K ID$@1I|$8IcE(M\$HED ML$PAA@ DDAEكAD I$HDEAAv 1AAw DqEκ`@1ҁ MT$HAAEDLD ADD AD DD ҉D ʃ"HH$H@1 H=Po1Ҁt 1ҁ¾ H=Ph@H H5PMd$HL(HLHLL"I LPLLLPLI&HXHtuH(hL HIL9tH(I L IGH(PHtI  R HHL+0HHHL(HpPLBI LHx/LHI-H L9tE1uL8deƅAD E1AH A LHIL9tLHpIL9tjHeD[A[A\A]A^A_]IcfAp <LH(IpPH(H5'P趷L(H IL9AH Aމ VE1ہAD;HMcHPIT$HML$P'DXDžT\{It$@M$HDžL`LLL I$IHHH(I$IIHIL0MDžDžLIL8EGDDA@DAOE(1fo PHc$ED ) ID$8It$@ADE@ AHI$DI|$HEHAID$P I$H$DHDAvAӸ1AAAw AEREں`A@A1A ID$DADDDHAADDD D$D HH$A HH'A2HɁHDIH'I(, DF ϋ A8 r%D Ɂ AAD 1 H=P1Ҁt1¾ H=PLdL(H5PMd$LHLLHL I LPL7LPHIHXHt`HTL(HIL9tI HݩH H:H(PHtM ' R I$HL"HHqIwPHGI LHxHHH2H H9t!1bDH HsL0H9@ k fE1Ƀ ƅ LHIL9t蟿LHpIL9t胿HeЉ[AYA\A]A^A_]Ia@Ap DƅDD[fDIwPHHH5PգH HSH9t L(HAÃIL9L[  > Aƅy@AH D$ADAAAE1AAML$8Hc$D0IT$@I|$PIt$H Dž4E1҉8<@L M$$foPLIL(I$HHH0I$)PDž`HH8HHA@ Džljv1v DžDIt$jH0L(HHARAPDAPLPDH ƅKEH ED 8$AD  ƅ1uIL$@ƅHLI$Hc$MD0It$PIT$H58Dž4<JI|$@E1@I$L I$HHH(M$LIL0HDžTDPHD`H8HHXDžDžE^DDEV@DA~08HUHyH H;I H HH HH"@I(I(I(I(I(I)H(H)H7)HT)H')I)IM)Ij)Hj(Iw)H(I)H )H)f.UHAWAAVAAUATSHH(H G@xpAdL H Dž L軒LD H Dž H 蘒 LI}h菙¸tbDx t D HHt H 1ED Dǃ HǃDD He[A\A]A^A_]H EAAĀLt AID A H BPAL 1 D E H=GPD ALǃΞAĄH HP@HDDt 1Dx rADAA vEωEAAHjDD AARD@ AQAL H EH LH5PLLUH5윅LFHLLLH LL苇HLHeHHtlL1HMFL9t7HM\$L9t!H5GPLH5ILHLLL>H LHHLɦHHtlLP1HMNL9t蛝HMT$L9t腝H5PLH5LHLLL袨H LSHLH-HHt|kLI0HL9tHIL9tHe1[A\A]A^A_]fp DfAD \I$H%I0%I$I9%H$H$I$I.%fDUHAWAAVAUAATISHxHHxh}E$x E$t 1M$DAIxhIH ËGËGËGËGËGËG4GI9uDE$ E$M$ E$ IHEM$ I$ E$ADŽ$EAEDD9AOA$ EM$ AM$ L Dž LI 藌LI$ Dž H pLDI{IsLDLHDžHDžeIvI~LLeI$ LKHH5hPLHHHL)H IUH9tHHHHtH.hHH;I$ HP@tHe1[A\A]A^A_]E$x DAA 11HDDjAE$D ARE$@ E$t AQAI$ H I$ UI$ LHLLH5PtLLH M]HL9t豘HHtgHH5PLH!H5HHLHL譣I$ LLVLLI0HHtfL+HLSL9tHIFH9tH5PL~H5HoHLHL I$ L躀HLH蔠HHteL+HLKL9tfHINH9tQH5~PLH5yHHLHLnI$ LLLI$HHtFeLHz*HH9tɖHIL9 谖Heظ[A\A]A^A_]ÉH5PLHH5HHHLLѪI$ HHx6LLIHHt_dL)LHIL9tەHMNL9tƕH5PLWHH5PDHL1LSfo8)Q8 E)`)EHLƅ8 >I$ HxJ~HLH$HHtscL(HHHH9tHM^L9tڔH59PLkHH5PXHL1LRfo`8 E)MHLƅ8 YI$ Hxe}HLH?HHtbL'HHHH9t HMFL98.H H]דHUOH HZ蹓HULHHHIIIIIIqIIII$I4IIIII#IIGITUff*HAWMAVAULcATSHHXx D %&Q&Q*^(T.v4,fE(-O(U(D*ATDXAVfEt fEfED*@ D*D*AYE^D,E(DTA.v7E,fEE(D5COAUE*EETEXE(DVL E,EQ@AdAxAZDDDHDH=P覎Lc AnH L9sgH< HL9s[H4?HL9sOL6HM9sCO LM9s7O LM9s+KLL9sH HL9sHH L9rLct McMcH5OLMLeMMLeLIL]|HULH߹HcH}It$H9t赐H L LEH}ILMLLH yLUIH HuEEHHuMH}Ht^HcD Lct LHc@ IWILLI7HMMl$LuLmjLR^HH}M|$LIL9tŏH50PLV1LLH&bH}Mt$L9t蓏H LL EH~LL(H mxLeI$̎H HuAEHǸۀD8H}Htz]1HX[A\A]A^A_]fH=IJPGfDD*HDYA,PH=YP貋 HX[A\A]A^A_]IIIIHfUff*HAWMAVAUD(LcATSHHXx D %!Qz!Q*D^A(T.v8A,fEA(-,O(AUD*ATDXE(DVft fEfE*Ƌ@ fED*E*D*EYA^EYE,D(DTA.v4D,fED(OUE*EATDXA(VL D,EQ@AdAxAZDDDH蠧H= PLc AjH L9scH< HL9sWH4?HL9sKL6HM9s?O LM9s3O LM9s'KLL9sH HL9sHH L9rLct McMcH5OLMLeMMLeLIL]HULH߹^H}It$H9tH L LEH}I={LMLLH tLUIGH HuEEHHuR}MH}HtYHcD Lct LHc@ IWILLI7HMMl$LuLmLYHH}M|$LIL9t%H5PL1LLH]H}Mt$L9tH LL EHzLL(H sLeI$,H HuAEHǸ;|D8H}HtX1HX[A\A]A^A_]fH=$PMKfDD*HY,H=PHX[A\A]A^A_]IIIIH@UHAVIAUIATIHSLLHIELk8HLk(HC0HS HS C8}IHtAIL$HtH袁HID$([A\A]A^]H9t1Hr H9s @H{(I9t*H"[LA\A]A^]fDUHAVIAUIATISHH0 H(H( HH(HHHRHtH9r }HRHuH9H0H;p Hx(L79LHLH(҉I L`H8MtH=t}AD$HH?MtLVHH1[A\A]A^]HDH(I HH0H0HI@AD$IUHAWIAVAAUIATSHHPHHFPH(D4p(D0HpH5PH H}LH8GH LeLHpHMH8HH}HtmUIIDuHLaLDpLID4HLL DMuL0H LoLUH8I^D4IH@AHD@HwD0H}HtT4IHLE|H(H6I}PQ0AAOPH L7AV@LLH?H=P踂AƅH y@dh0L E$EjAAAu0E1LLHʽH=yP,@ADL8H}IL9tL HpIL9tL(HPIL9tτHD[A\A]A^A_]f.H LmL}H8IjH}Ht0R0_D4HLL D}sL(H LDmH]H8HHHAD@uD H}HKRfDH HlH@H5PLLPLLʼnH}MD$IL9t菃HHHtQMHDžI}PDW(LALAfH HClH@H5PLL趼LL+xI>H}IL$H9tHHHt:QA~`McFu"HHHLHHHxu"@HHILHIHe HHILHIHALJbfDIUPH HHJH8DMmPH8HH IM~DLPKc4HfH}IL$L0H9fDu7HHILHIHuALJfHHHLHHHjALJZfDALJDALJ,E1LLHjH=9P}A E1LLHH=NP}tE1LLH覥H=uPx}KI I I I' I I I I I I! I0 f.UHAVIAUIATISHH0 H(H( HH(HHHRHtH9r }HRHuH9H0H;p Hx(L70LHLH({I L`H8MtH=t}AD$HH?MtLMHH1[A\A]A^]HDH(I HH0H0HI@AD$I UHAWIAVIAULPATLSHHFPH0,p(裹HpH5PH8 LeLL ?I H]HWgHULHH}LHt LLuWIwPL~!HN@H8LI HfHMHR}H}LHtLM HLH IHMLHB.IwPHvM H IxHHaH}LSL9tO}H0D,HM DLHǸD]`WL0H}IDxL9t}H8HpHH9t|HPIL9t|Hĸ1[A\A]A^A_]fLLI I I I I+ I UHAWAVAAUATSHH8HN@HUHt1HH8[A\A]A^A_]ÐIHELM|HUI$8 HI 1HLL@H=PxuHCHp\tt AE}I$ E$(HDEP@H{PMUH}GM$ Ay@PtfH}HuE}PDuHǸAULHLL(@Ld5H=%P6xH8[A\A]A^A_]A$d uLUEZ(AAw H PBA$H XDHfDHHDEGQEH8[A\A]A^A_]HWff.UHAWAVAUATISHHXHLhL;-xHF`LupL蒴M$ zLHII$8 n0H裤Hsp1LM$ ALHusH=PvADžt.H}IL9tyHXD[A\A]A^A_]f.I$ I$ LL. ӕILADždAEP*ADžL}ILEL} UIHLEoLH)HLQ,_voI8ofvۉffofofs fofs fffffs fŃoyHoffDofDofAs fDofAs fAfDfDfDfAs fEfADoDoYXfDfEofEofAs fEofAs fEfEfEfEfAs fEfAƃtDoIhoffofofs fofs fffffs fffo؉fsffI~I9tHLMH8IMMDQ$1Aw LPK4HI$` M$P L}I$X LHH@H@HHRHtH9J }HRHuH9tH;H }HUH}L@HLELh(@0Hus AI$ HEwHUHII$8 K$H8EE11LLH=0PcsADžzXM$ vLHII$8 =*FAEPAH萠Hu1LM$ ALdH=PrADžHIHuLLM$ AH=PrADžI$ TI$ LL HuIHEkLH%IL%H謟HuIEAEPPM$ LMHuHUHHEI$8 i0LUHuEINL(@I$ yLmI$ LL  \ŐILADždAEP%ADžHuIEPHuIHE{jLH$LPLAs,Aos8fEvEofAfEofofAs fDofs fAfAfEffs fAƒEoEocHfEfAofEofs fEofAs fDfEfEfEfAs fEfAǃAoAoSXfAfofofs fofs fffffs ffÃtSEoAoshfDfEofEofAs fEofAs fEfEfEfEfAs fEfAfDofAsfAfI~I9tHI Hy8HHIEC$E1AMH}HMOL(@:\]I$ I$8 AHEE11HLH=ҚPnADHATDHADL PO51AA A1H#HQH HQH*fU1H PHAWAVAUATI SHHH(H=P1#puwI$LLuPLIH HUqHUHIH8 `e0A|jA|H5PHcA2@1A}P H="Ph=1H%Hf.UHAWAVAUIATSHHUEUH^@MDM|xHt#1HHe[A\A]A^A_]H]IL@EHLp+I$HHLhIMMd$MtI|$ HyMd$MuLhLUL9pIw HLp}LpHsI9tLiLHI8k*HL}L8Hu}H}HǸCL8LC@H}L9twiLH*HLLH}HMH9tEiHe1[A\A]A^A_]@LU@L[M9;M$ 8iiI$8 LHHhI="LH)I$8HL8H}HCH9thI$ M}PHP@AO(DždpeIuPHiHH5O*MAAYƅWM$ A$(pLDLX4LX`A@DGAKPbAAAAjD`LhADEEpPEAA@Z|UA$ 1LLDMAVLEHhL8DxDxH}HtV2E$@ E$H H=LPDdEEyEI1AAaII$ ADA$ w H=PDD9dM$ HhDLLDx H=JP-`M$ &I$ H}LLUIobM$ HuxEI =xL8pH}Ht1A$D M$ A$H dDDIAAx@dW1A H=ҳP*`M$ EA$ w H P9dLhM$ AsAM$ 'HhDLLDxH=2P^`E$X E$\ DAAAH (P H=(P1` fDI$ H}OJHuH`I$ HuxEHJ;DxL8D@H}HtN/A$@ I$ A$H M$ dDxAHAM$ fDHhDLLDx H=*Pm];I$ H}_ILEI_M$ HuxEIZ:xL8HH}Ht`.A$D M$ A$H M$ AdDXAHAKlH=P\g`HhƂ LhLLLyH=8PK\1LLLsH=BP%\A$p DDIAI$ ƂepAA!DWfHhM$ ~AM$ E$@ E$H DdEAIDH1AE9E$D IIIII0IIHI'fUHAWAVAUATISHHHHPAL$\H DxHHB H8A1qAYt(AtAtApmfDLX(L X]H8 LHI$*D.AFPAA EODHfɃHHDž`)PgID$xHuELPM$HELL0H@dA|$tH0L@HwPL莙HuIxEHRHLujH}MEL9tc\L0LPLXAQ\M9I;P\MjLL)HLMj H79V\HHtvHt`HtFHt-HtMIMA9Q\MII9P\LIH99W\LILA9P\}MIMA9R\tmLIH9Q\t^M9I}9W\tLIu9V\tCME A9P\t9MM0A9Q\t/MU@A9R\t%IEP9P\tIM`I}p9Q\tH7I9V\uL8L9 L; LL@As0LMLILhH}L9tZEpAoL0AyMHP1HtHmZHHe[A\A]A^A_]A,AApEoDHALL (L@\ZH8 H@HIAk L POcMA H=ӴOzW(<EwDHE1ifL8L9 L9 lE1A|$t AH=PD! WQHP H@I$@LEHU螲A|$t:H@I$`LEHMpA8ƅ(fEE1HDž`D)PA1vmAYAvAiApYfDA8HDž0LUL@mDA,A ApLPMUAr\IzPhHX$H(I9AHL PML)LHAMLLHL8D$H=xPkTMeM$Ap\IxPށAsfMl$L9(MT$Ar\IzP謁AMLHL8ALHHSuIMEMeAp\IxPiAAL$I4$LHL8;HHSeHPfAq\IyPMH H8 AzxEE11HLHH=ˈPFSHPf.IA1LH *lf(nD1A H=HPSHPHτA|$\6 H9X"HDžHDž$ED$HHEDD$-1AuH 1DAA¾ H=6P SHPHL8ELOH7HH=PQMHPLXHHHHI)II9<HHHHHp\HxP3ET$\AAt5A}(HHE(t{uAHELHAHȋHjjH08ZH=~PYQ 1AA@ǃAEDXA HL AB@PwHsH 1ҋ¾ H=PXQqJLfEMcZhIKIHKD)PIPHDž`1L8LLLLH0L@HOPLq(HIHE8ILH`H}IuH9tRL0As\I{P7}AFP;$H@IEM.DA I$HuELPH0M$LLEH@谫A|$tLH@ML$xLELM腫(H H=PDB@APA1AZD!O#H AFPƆL AƃAdžhfDfƅ()PHDž`AdžkAdžgHf@PZYH//@Pv@PAfZa@/N/%z@Pv%p@PAfZi8//-N@Pv-D@PA .AdžfEƅ(D)PHDž`oAdžHfE=?PDZF`A/wID/?Pv D?PEAdžLfE=?PEZEXA/vD(AdžRAdžHfE=_?PDZGPA/wqAdžjLf 0?PAZC`/wG/?Pv?PAAdžiHf >PZ@X/v(AdžfAdžeHf >PZBP/wwAdžlAdžPAdž@AdžLfED L>PEZPHE/'D/0>Pv D%>PEfEEZX@E/D/=Pv D=PEfEEZ`8E/D/%=Pv D%=PE ƅ(M1LH@A@M1LHA LH@LI;XH}AL9tMH@H}HH9tMEDž$L8LZLLL L0L@IxPw(LmHIHECLH([H}IuH9tML0As\I{PwEd$\A'(A;$xH@IE(LpE1LPLHL9XIDLLIHHHASHHH5P 1rM $LHAQHH5P0jI $LH@QH@H5՟P0H@H}8HH9tKLH}IL9tKLHHpIL9tK8I$LH@PH@H5MP)0ueAL$P w[LHH҉уuIH@H}HH9tH*KH(A f.L@H}IL9IM $LHAQHH5P/u/A$ u"LH}IL9erDM$LH@ARH@H5@P+/1ɅuA$8H@H}HH9t88J8LH}IL9t8J8YHXH+PIHI9df.HHHpHH9(Iƅ8IL AFPAƁL AƅA8pA4|L@I1LL@LI1LL LLISH}AL9tIH@H}HH9tHE3tfAtWAAAD1(((E(WE(E( |r1HHzHHQHHHRH~HHHH H"HIff.UHAWIAVIAUATSHHHL HULEGH8 LHI2'LMHMLMLHNH=zP\D…JH H8 HEJ@xd;ZLePILEHHM"H}LE"LMvPAv(H HLTH}MD$L9tFLMLMQPAr(貁L LIIxTH}L9tjFL HuI$LLHtQH=|P6C…u(AuH t He؉[A\A]A^A_]I~@uH H8 2h@PI~@IHuIEL @LeI|$@jLAjALHA\H=zPZXB…FLe0Dd jLA1jALH3^_H=xPB…jHuALjAHZH=xPYA…fDAw\IPE0oH H8 AfE11EHLH贼H=e{PfAU6L@jLA1jALHPAYH=wPAZA… jHuLAjAH_H=xPAX@…H H8 f@PI|$@LeIHELEHU@HdfjLA1jALHpYH=xP^@@…)jLA1jALH0AZH=wPA[?…LeI|$@jLLAjAHAXH=xPAY?…H LexH8 dH}L@PLHHEELELMLUL@LIEILEPL]@LDL?UAW@1Ҿ H=yP? H UƀH ƃDL L1LAHH=TwPu>…cHuLAHL H=wP<>…%DHUH1HEHEcDL1H9HHHLL PLLP@DxHe[A\A]A^A_]D;$E$hHHE$dDž DrD;UE$hLLE$dDž D9D; DD;$HA$H ƂH=uP: KL;HAWHfD;$>Heظ[A\A]A^A_]@HHPLD|@Ƃ1`f.L;HAWLP`DwfD ,fDDD;L1DH ېP H=uPE9 1; LLI %LH5PLILpvHpLBH IuHpH9tHHHt LI?HL9JJHHHH5HFHmHH{HHH-HHH,HHHHHH|HJHHHqH5HLHfUHAWIAVLAUIATL SHHH LHH5BPLHmLHq:xHyHH IT$H9t/4HHt~ K\1H=mPKTKX0tHe[A\A]A^A_]fsH=mP10uHHLHlTH=mP0u{{ 1{H=mP{0{HHLHwH=mPL0L1DE9 H /P¾ H=vP1G2A H5PLlHH5"1HxlLE1LLHHAPAK=I HA[XHLLIx;HHtLLHIL9tC2HM^L9t.2H5PPLkHH5O0kHE1ALHHLP<I HAYAZHLH:HHtL:HHHH9t~1HIVH9ti1H5PLjHH5/jHE1LHAL;_I HAXLLI9HHt@LxLHIL9t0HMVL9t0H5PL8jHH5.%jHE1LHA L:YH^I VHLH09HHtLLHIL9t/HIFH9t/H5PLwiHH5.diHE1E1LHHLQ;:I HXZHHLp8HHtLHHHH9t;/HIL9t&/MHwH5+1L01HI¾H=0O,ILPL狰 iIvpMLII8H=gP+u%K`SML脛H=;iPv+H IL9jW.T@gHH5s,HgHHLLBI HHLLI6HHt/LgLHIL9t-HM^L9t-H5PL'gHH5+gHHLLAI HXHLH26HHtLHHHH9t,HIvH9t,H5*PLyfHH5 +ffHHLL=AI HHLH5HHtL LHIL9tO,HMNL9t:,H5PLeHH5[*eHHLL@I HHLH4HHt%L]LHIL9t+HM^L9t+H5LeHH5) eHHLL?I HNHLH(4E1  I餽IҽHH韾H II鑽IItI HH锾IH IVI鑾IjInH H8H騽H鳾II|II鞿H鮽I'I鸿H騾II*If.UHAWIAVLAUIATL SHHH LHH5{PLHH=dP+%1DE9 H |P¾ H=U|P1&'A H5{PLqaHH5&HWaHE1ALLHLAR*2I A[HXH}LLIW0HHtL޺HHHH9t"'HINH9t 'H5/{PL`HH5.%`HE1LLHAVH_1I HAYAZLLI/HHtLLHIL9t]&HIVH9tH&H5zPL_HH5i$_HE1LHAL0_I HAXLLI.HHtLWLHIL9t%HIFH9t%H5yPL_HH5#_HE1A LHHWL/YH^I 3HLH .HHt\L蔸HHHH9t$HMFL9t$H5-߂LT^HH5"A^LE1LLHHAQE1/I HXZr HLHL-HHtLӷLHIL9t$HIL9t$MHlH5 1Lq%1HI¾H=!xO!ILPL狰]INpMLI8IH=\P{ u%K`SML`H=g_PR H IL93#\HH5K!H\HHLLx7I HH LLI+HHtL?HHHH9t"HINH9tn"H5vPL[HH5 [HHLL6I H0 HHL +HHtYL葵LHIL9t!HMNL9t!H5vPLQ[HH5>[HHLL6I H HLH\*HHtLLHIL9t'!HM^L9t!H5uPLZHH53ZHHLLg5I H HLH)HHtL5HHHH9ty HINH9td H5ڂLYHH5YHHLL4I H& HHL)E1 II*H[HHdInII8I̸IaHmHIwHdI鮷II¸IƵHbH鐶HH IUIԷIiIHIIHIJI邶I^fUHAWAVIAULATL SHXHH LHH5^pPLHXLH$xHyHH IT$H9tKHHtK K1H=XPKtHe[A\A]A^A_]H=cZP1uˋ{{`1H=lZPuDCDK1H=PD{ DDuDDD{DH=RZPmNHHHVeH511HI¾H=qOIPLYH5qOLƅHM]L9tILYH5iqOL|dHIMH9tHHLH4H=YPkL1A9 H OpP¾ H=>UP1gA H59pPLgUHH5BHUHE1LLHAVHl&I HXZHLLI$HHtL!LHIL9teHMUL9tPH5roPLTHH5qTHE1ALLHLAS%I HA[XHLH#HHt$L\HHHH9tHIUH9tH5nPLTHH5SHE1LHA L$I HAYAZ+HLH#HHtTL茭LHIL9tHMML9tH5(nPLLSHH59SHE1A LLHLAR $YH^I gLLIA"HHtLȬHHHH9t HIMH9tH5aӂLRHH5uRHE1E1LHHRLL#I HXZHHL!HHtLLHIL9tLHIL9t7HL/AUL狰[RIWpMLI8I.H=QPu)K`SMLsDaH=pUPH IL9fofD/H=TPmIE1IL1TLH5kOH IT$ H9^ TIPLSLH5ukOH MT$L9f.KPHH5H1PHHLL+I HHnLLIHHHtLϩLHIL9tHMUL9tH5 jPLOHH5|OHHLLS*I HLLIHHtL!HHHH9teHIMH9tPH5iPLNHH5qNHHLL)I HHLHHHt;LsHHHH9tHMEL9tH5iPL3NHH5 NHHLL(I HdHLH>HHtLŧLHIL9t HMUL9tH5^΂LMHH5rMHHLLI(I HLLI jMHH5 MHE1LHA L_I HAX9HHL I鰬IHDHUIIHYInHͭIͭHHI$I5IIH麭I?ISIFIWIkH逮H鑮H饮I II骮I黮III鿮HI鞯I"HHHڮI=IQIff.UHAWIAVIAUIATSHHHHBPuLELMAH(w HHH5 j>HHLLAI$ HxLLI HHtLLHIL9II#I7IoI逢I骢I龢I֢II馢InI関IIIIvIII^I$I5IkI>I連I鑣I&I*fDUHATISFHts=    <cw H=%^O1[A\]DH H5dcOHL[H=OA\]H H5?cOHL[H=IcOA\]H H5VP}HL2[H=zCPA\]PH H5bOMHL[H=VPA\] H H5bOHL2[H=bOA\]H H5tbOHL貣[H=BOA\]H H5bOHLr[H=jOA\]H H5bOHL[H=BPA\]` dfDUHAWAVAUATL%bOSHHH4 = t5v[L%wbO=t%L%pbO=t=L%RQH8LE⃻0 0 H=XPLcIA@L% bO=t=L%aOH LE뱐H5bOfLuL$:LIL+MI9HLL׾LeLhMT$LULM9:L]LxL}HPHUL(H@@H}IFH9tLH5aOLsL LL H}INH9tH}It$H9tHNH=5OAŅSHOH=8TPAŅ2H HPH=@P]AŅ HڟH= TPuJLILL9;fDH5Mt@o@)EfH}HtAH=PO"IIHH閚HvH銙H鞙H鲙HƙHڙHHI՘IߘHHHH fUHATISH=DZOÅt [A\]fDLH=ZOÅuL|aH=ZOÅuI$Ht;1ҋH(A9$ ¾ H=Oj Eډ[A\]ffUHAWAVAUATSHXHL.L7HEMtA}zAL}MI]Mfu1HHHXLxMT$HM,$IMtHMt?MI;XMMu(fDL9MMtMK1LIH9tHAHL^HX[A\A]A^A_]fHEI)EI;(HuH}E1E1ILϺ1HuH}BM$HMLaLeIIHH)HIH9LULN NL]M9uHUH}LAGLeM&I]1HHHXLhMT$HI $ILHMtMI;Y+M9Mu4HAHL<[L9M?MtM_1LIH9t@#HX[A\A]A^A_]@H]L9LIFHELUHxHHuL}LH)HuHH}<HHLPLIFHHELEHxtnLMIIt+HULHPLIFHHEL]Hxt/HULHPH IFHHEHMHxH3INHHEHuHytHULHQH;MFHEH}IxtHULLAPLKIFHELMHxtHULHPHSIFHHEHUHx\HULHPI9LLeM+LWfKA IIIWUII)HAWIAVAUATSHIIHIHHGHEHIIEL)HHH?HHVHMDIMI8HgLI@L9IHAH"ELw@L;wHMMSPM M&Md$PMMZMd$M9H/Lr@L;rH!MMQPMM;bI}IIMHFLuHZMX@M9XHtSHtNHy@LIHL9MMZPMLMRPMMRM9SIMMMuHHnL9?DIHBLIMHGLR@L9RHM MaPM M2MNPMMQM9T$f.HM~EHEEAEHFHI9]HTHH@H;HHFH?LOPM6LMSPMIyI9zHBHJHtELX@L9XHufLX@L;XHrILJPMbI9yXHHHuH1L9HLLMM)ILM2IMzMILKLHuILLLIiLMIIItdItDIt$IKLLILLIKLLILLIKLLILLIKLLILLIKLLILLIfDHy@LIHHDHrIwILLILiIwILILLRIwILILL;IwILILL$IwILILL IwILILLIwILILLIKLILLLMPLLxfI<$HSDX HA A KcLLxHpI@H}HLiHHLUHxHpH0H}H0H(H0H(LUzHxHpH H}H HH HLU6LxLpIpH}LLxHHxLUHxLpH8H}LpHh{HpHhLULxLpIH}L`LX2H`HXLUgHxHpH@H}HPHHHPHHLU HxHpHH}HHHHLUHxLpHH}LpHSHpHLULxHpI@H}H@L8H@H8LUPLxLpIhH}LLHHLU LxHpIHH}HL[HHLUHxHpHpH}HHHHLUHxLpH@H}LHHHLU:LxLpIhH}LL HHLUHxHpHH}HHHHLULxLpIhH}LLHHLUeIM9WI\$M<$HtCH`LHELMHt$HLHtLHL9HtHI謮M9ufL@H}HDžXLPHHLUH@H}HDžhH`MH`HxLUIM93LpMtLL}MtLLAHĈ1[A\A]A^A_]IM9H`HxLeH`HxL}oHHpH}HDž(H H(H LUHt8HH}HDž8H0GH8H0LUHhHPH}HDžHH@HHH@LUH@H}HDžHHHLUH@H}HDžHHHLU6LHH}HDžLiHHLUH@H}HDžH6HHLUHhH}HDžHHHLUHDžHH}HHHLURLHL7.ILHHH9{vqlgb]XSNID?:50+&! I~I~I~I~I~I~ff.UHHAWIAVAUIHPATIHMSH&OHH0HH0 H(LHHPHDžXHDž`HDžhpHDžxHEHMHEHEHEEHEHEt6HHHwH=.OAI H@HH@@L HHHt%LLHRH5*Ld+H L +L53PHLLH9LcSxL(L8It$I;t$LID$wTDKcL@HcsxLLH(b+H=Pu0A D@HèH9 dDžH}HL?M|M/LMtlI]LHt[L#HMtKM4$LoMt:M>L_Mt*M/LOMtI]L>HHufHMH}1HLH}HEHEI0L9tH`HL7MM&LMtoM<$LMt^M/LMtNI]LHt=L3HMt-M&LrMtM<$LaLMuDHXHP1HLHPHDžhHDž`I0L9tH[A\A]A^A_]fHcI AM M HIHIHMHLcKxH?M#L(H11H}I$ H0LEHuL L9=\PI))))MNM.L(MH=AAE]A IA A kI$ H0蹱H0@HtH1H8IHtЖMcmxL@1H= PEU`E]DD A A}AU 1AMH=.O Džu#DDDEEDH= P Au EMH= PEm1DA$x fEA$D fE5[PM$ D*DEZ@D*E^A(AT. DfEfA$t DfEE$@ fED*DEE*EYE*D DA*EYA^E,(T.W Ad Ax D,D @At A#IELPA}^Dž H1H=P.EEA?DžA(1H=PA$x E$D ff*YPDDM$ EZ@A*^(AT.v5,(fEDODUA(D*ADTEXAVfEE$t fEA$@ DD*AAYD*,f* A^D(ETA.v4D,fE(="ODUA(E*ATDXAVAdNAxDD,ꉽ @H=Pu,LDL狵 @H=PrH=PdH(t H(覒IL9 %HxLuEHM}M$ A$ I$ A$ pfDAAE]A I$ H0٬H0@HtH1H8IHtMcmxL@A}AuAU`AMEE H=P1 DDEM1H=PEm`DfEfA$x A$D AVPM$ EZ@D**D^A(T.v7A,fEA(D OAUD(D*ADTEXEVD E$t ffEE$@ fEDDD*DEDEYE*A*E,A^D(ETA.v3,fE(=* ODUA(D*ATDXAVAd5Ax+D,D H=P誾u,LDL狵 HH=PzH=PlEUA uwA t2A AAI$ H0H0@HtH1OH8IHt+McmxL@1A}TE]`AUAM\EEXH=MPD D~J1H=MPEmd0E$x E$D ffEE*SPDEI$ DN@A*D^A(AT.v7A,fEA(D OEUE(D*ADTEXEVD A$t ffEE$@ fEDDE*DDDEYE*A*A,A^D(ETA.v.,f(v ODUA(*TXVAdeAx[D,艍 @H=Pu,LDL狵 H=PʻH=P輻SDžE1Dž H=P苻u,LDL狵 )H=P[H=PMDžE1Dž tDžE1Dž DžE1Dž DIELP IELPDDfA*YD,D fEA*YD,D fAA*YD,D ,f(DvOU(*DTAXVuA,fEA(D?OEUE(D*ADTEXEVfE*YD,D 1H(Ht((H(p(NI,`I\`I*`I`I`I<`IE`I,`UHAWAVAUATSHHH}H}Hu%LuL}HMM)LHH9r11HM9LMIL)HHH=Ht5HtM'H9L#HMgM<$H9L;HIM<$H9L;HIM9I9AALuMtLWھ H=OMtL5 L}M/LAU1A\H ODdID|D 1H=OD]A}DE1HIP~HDKxK9DPt+1HHپ H=O1¹A}DID9HMu LEAƀhAv4H 8OAvH ÚO1 H=TO[u1H=OD ׷<HH[A\% A]A^A_]DL;HM|$Md$H9L#HMgH9jL#HMgH9L#HMgM9M<$H9uHL)HMHL HEL9H}跹HUHLUN<L9HULLHMHUJ\8LHEHUHEHUM|$IMd$H9%HL)H}HH ?HEH9H}HUIHLMO$L9HULLLL.HUIH\LLEHUrHULEMMgH9f.IM)LUI,OHEM9H}~HUHHHML$L9kHULHH葿HUHH\H}LHUշHUH}IMgH9DIM)LEIKHEI9H}HUIHLUO$L9HULLLLHUIH\LLMHU:HULMMf.HH [A\A]A^A_]@L`L}LuHJ M9I1zfDK\M`CDK\MtgJ\M|DH\MDIM9+M11 HI9M11HH9VH1E1Vf.HH9^H\1E1^f.HH [A\A]A^A_]@IM)L]IKHEI9vbH}HUHHHuL<7L9:HHUHLHUHH\H}LHUAHUH}IHH9wH11HEHE,HEHEDHL)HMHH< HEH9H}HUIHLUO<L9HULLLLHUIH\LLMHURHULMMHEH\7MfHsHL HXMtLHEHUHUHEI3K\Mtr@IL9Hu=1E1HEHEH=4OILEHHMIL]HH}ILU HHMIlWIqWIWfUHAWAVIAUATSHHF=  X W v H= OjfMn(M~0MM9LL)taIUfL1Ax` A1A1H O H=OVMeM9!I$HLBP1ҁx`yEh( EM1A1H O H=OL1Az` A1A1H #O H=WO躰uVIT$Ml$HHJP1ҁ~`yDa( A|$1҃1H dO H=OkA HD[A\A]A^A_][H=OAŅbMn@M~HMM9LL)t`MMfH1ҁ~` A1A1H O H=TO路OMeM9]M$H1MZPy`yEk( Au1҃1H _O H={O^H1ҁ` A1A1H O H=OML$Ml$LMQP1A{`yEb( AL$1҃1H O H=Oɮ\@SH=|OuAŅ;D{H=OMAŅDH=O%AŅAFx    DE1=L A~@xH1H xO H=PDK`AAc1íaA V軫H=OmAŅ3DS$H=$OEAŅ H=O"AŅH=OAŅdM>LAWP@hDwvTAF1H O H=OͬILPMDAQ(EtAuL EZ@APAAxAEtYH~`ztnPcAǁyYE1H aO AH=OA(+`E1M.LAUx@DH H}ĕH}諮=/H}AE HuzkIPU HAWAVAUATSHH80H=O$1ҾH=O aH}H QLuL}M9LML-OL)HHHtvHtIHt!I6HLΨMf"I4$HL謨II4$HtL芨IM9tI4$HMLcIt$HMt$)L?IvH L!u}IvHLucMfM9uL}MtLH81[A\A]A^A_]H8[A\A]A^A_]@H8 [A\A]A^A_]@H}Ht̉E菪EH8[A\A]A^A_]HNDUHAVAUATSH H_PH,{ ALmHHwHLEH}HEH9 L7MIF@I;FHH8HHGPHx uS,9P,uHK8H9H8uDJE1NAAHp@H9s@UIIt{ItaItGIt-ItNT0@IL9SHN\3@IN;\08JT3@IJ;T08JL3@IJ;L08NL3@IN;L08Jt3@IJ;t08M9MVN\8N9\3@JT0HJ9T@JL0PJ9L3PyNL0XN9L3XiJt0`J9t3`YNT0hN9T3hIM^8JT0pJ9T3p5I@JL08J9L@k@蓨H}HEH9t6L7>MtIF(I;F001H [A\A]A^]fHtHِUHAWIAVIAUIATSH8HLbHuHEMtH=DAD$HL@(MH\M\$HAH5HMLcHHKH3HvAI}1+LC ExIcUH{LIuHDLHAohƃLguL-LǃHǃIL+H}D(I$PDoI$DAoI$8AYH LEHǺA(oH}AHMIuL@ LHExH@AohHH+HHpIuHLIcUHDLHLߣƃǃHǃILAD$DA}HfL!AT$ Y rNHH9f.L!At$ _ 2LaLIAL$ 1 MaAD$  MaEl$A A AIIH9ELAAAA fI$I$P;I$I$Pc fAAAW  zA k,HEIEIEfDUHAWAVHHAUATSH HH€foOHHHp)`HH蹨LLM9Y LML)tI]{t.MeM9+ I${ I\$Ml${uL;MgL;%) L{`tHuLI@ LHHAy%LuML%IBL9 LIC`HHWHxIHhHJ HqH~%Hx)H>HGL9 LxI@`LHEQELE\$EAA$HA;$LLS 9HILLHxHMeLHIEӢLMHpLIMEALIH@I@DUHIhE ?LHLADH@AHMCHI@LHXLPOHH@qODHPI}(E SOHXIP@OIxL1OLL cIIzcMfvLfILMfADžAIXILI@I AƅMMxADžMADžIDžADžHDžHDžHDžHDžHDž HDž(HDž0HDž8HDž@fDžHDžLHDžPHDžXDž`LhƅpDžHDžLLHDžfo`HXH`HHDž)))))HDžHDžDž Dž(L0ƅ8DžHHDžPHDžh)pHDžHDžHDžDžDžLƅDžHHHHDžH H(HDž08HDžH)P)`)p))HDžHDžDžDžLƅDžHDžHDž)HDž(8HXHDžhHDžpDžxDžLƅDžHDžLLHDžHDž))))) HDž0HDž8Dž@DžHLPƅXDžhHDžpLxLHDž)HDžHDžH@HHH~HDžDžDžLƅ Dž0HDž8HDžPXHDžh)p))))HDžHDžDžDžLƅDžHDžLLHDž) HDž08HXhxHDžHDžDžDžHDž]LŸHL覞HDc\LDa\HqpIpLI8I8LLxII|$pLI$8IoHHHULLLLLHLݔHHHHHtH=@HHVHHtudHLF L;F(tLF(HHHHtܕHHLLI<$L?AW IM9uHHt蔕HHtcLcHHfH LiL;-lL{`HHH~ LGHAx%LML-IBL91MX`LHHxHhHJ HqH~%HxrLI@L9LN`LLEjECLAS0A"AHA;4fDLMtL HĘ 1[A\A]A^A_]HAIfHAIHHHHx;HxH@JIM8Io8I8I8I8I8I.8I8I/8I[8UHAWAVHPHAUATSH8 HHHHHHH LLM9uu u[H3LnL;-ELk`H@u9Hxu/LMu#uHu@IM9sI$K uLM{L;=3HC`HuHxuL@MuuHuuLcE.H.HEQJ AtxHHIt`ItOIt>It-ItIt HHu{HHupHHueHHuZHHuOHHuDH9H?u5Hu.Hu'Hu H uH(uH0u H@HtE1HxhHHEA)A|A,HxpHHA<AAAAt`At,HxxaHSHHШ@H|`4HЈ%HHШH|`HЈHHШH|`HЈHHШH|`HЈHHШH|`|HЈmHHШZA9H|`EHЈ6LZJب#J|`J؈HrHH|`HHHШH|`HЈISHШH|`HЈ~MSJШuoJ|`ugJЈu\IKHȨuMH|`uEHȈu:I{Hu+H|`u#HuISHШDE1HpPL1L9H_E`1HPHBHh4EA)AA!HHHpANAAAAtfAt/HHHH`HtHeHH`RHCH4HH`!HHHH`HHHH`HHHH`A9HvHgHJH`THEH6LRJ`#JJHH`HHHQH`HHLQJ`JJrHQH`_HPHALQJ`.JJHQH`A9o@EELx`HLI&HLM9LXXL9HH0HLHHIL8L8HDžH@LLHtL9-LHDžPLXLxL~L`LLMLHDžL)pLLLLHHDžHHL0L'A$HLPL7AHPLpL?AHLHHLL'A$HPLL7ALLJ`LQH HILXHPHx(D`HIHHHLLHfDP H賎I$PI@H蘎I$xIhH}L5>LI$LIM$DDfA$A$M$E$E$A$IM$A$ۍII$ǍI I$0賍M}M$hHufA$XA$ZH$LuHUI$pMXEM$xA$hI$L^LEHEM$L}L}HELLܑLL݇0SL|LxIHLHLIIHLjH ;HfHL)HI~pIINIvxIspH謎HIHHH8苎HIHHjLIIPLII6LIhIXLLmHK`HhLN'Hs`H HH@0'L[`LLIs'HL 6HH5HH5DAIzcH M$IfE$HE$ADŽ$ADŽ$AƄ$IDŽ$ADŽ$HH&!I!LHIH I HLHPI HH It$L謋S\LH{pHAPlHH8HHHLCL H(L9LE1H=MQLM!f.HIL)HL9SLHI;0uA$HHMcILM;I;{t-A$I{HtLPLHICH|PL H(ifHADHAI?fLMtĹH8 1[A\A]A^A_]McEYI}`MMhAzMtuMMpIyHt`HtOHt>Ht-HtHt IIyu{IIyupIIyueIIyuZIIyuOIIyuDM9I9u5Iyu.Iyu'Iyu Iy uIy(uIy0u I@IytE1III}hEA)A|A III}pA<AAAAt`At,I\INHI|X>IŰ/Iň HI|XIŰIňHI|XIŰIňHI|XIŰIňHI|XIŰwIňhHI|XXA9IŰ@Iň1HPI|X!IհIՈHHI|XIͰI͈HI|XIŰIňHBI|XIŰIňu}HrI|XuqIufIu[HzI|XuOIuDIu9LJK|Xu-KͰu"K͈uHBI|XE1IIMP1H9IyE(1II IhEA)AA!IIIpANAAAAtfAt/IlI^HI`KII/HPI`I ILXK`KKHI`IIHBI`IzIkLZK`XKIK:HBI`'II LZK`KKHBI`A9o@EJEM8II9HPME`LXIMXH`MLIHDžHMHt M9,HDžpLIxHxLIHDžHHHIH*MH MII9M9MHI~LMLHL)HDžY fAAAAAAHHELL9xUHH9HX@AIyIkEmfDM]XM9x8II9@!IE II9IIArL L(IL;ZHHtpHtUHt:HtHPL(HL;ZH(HH;rL(HL;ZH(HH;rL(HL;ZDL9HrLFL9(ucLZL9(uVHrH98uILBL9@uPH9`H9HqH9N IT9PH9LQH9O IT9PH9LQH9O IT9PH9}H H9lNIT:PH9UHNH9DN IT9PH9Vx0LVH9K HT9PH9Vp LNH9OIT:PH9VhHNH9LXXI)HMM9MfDLLLHLF HN(I9t#KHS I^H;L/AU HH;HP HH;L7AV HH;L/AU HH;HP HH;L7AV HI9t_H;L/AU H{LsHS I~HP I~L/AU I~HS I~ HP I~(L/AU I~0HS I^8I9uLPMtLcH-HHII Lw(HW MI)IM9a|LXXLM9ZAALCAA,E1wE1H6MLMLIIIM)IM9LHM;$uLIcAEHIL;L9ktAEH{Ht0LkL0L H(LE1IIIM)IM9(MIK;2uLMcHIAD$M0I6M9ftAD$I~Ht]0MfLQ0L H(ADŽ$hIDŽ$pM$xM$IDŽ$ADŽ$hIDŽ$pI$xI$IDŽ$N IT9PH9HH9fH9HH; X#N I1H9HH9^H(HH;rDyMMH/HXHfHH HHL-`HL-`ZHH HHHHHHU1ҾHAWAVIH=QNAUATSH]X(I H}H`H@gH}HuH99 IH E1I)1E1E1DžhIIAHDXA tWA tQA tKA A w A ASA A GhEF݉hfAHWDItMIt#L"AD$ t t AHLAK $AHf.L"Ed$A VA LA BAA A$ED$LZAAhL9@DhAHAHc@1A!HtP^PI M HPH=N[A H=RN1A![hL+P H=nNID A1I9D![[cI9HE,A01A1A@ALZL9LBAH   k "ADMchAT$ umAMCA@    HЃhiDAMcAT$ t t t IMCDjAhA@ dAISc H=$OYADžu2L`HƅL\H="OXADžtnHD[A\A]A^A_]ÐA     DiAhDLH=kNRXADžqzH`0H=/#O XADž?A WM AS@dxzH`H@E1cH}HuHH9;II)IIIAIIIteItJIt.ItHE1HOxAH{AHEELA{HDELAzHAL AyAHEEHzAHEEHxHDEH9LLiHYAxAALYAA}AALQ Aă{AELI(EA{DHQ0EAzHA8AAyAEE܃zAEEԃxH@DEH9[Ht+YAIDH=?!OVADž1H`[H=NUADž M A@ZCH`d.H= OUADžH`HuEH=OUADž1Ҁ}tI 1҃x@dH ϣO H=O1|WPyM A{@dH`H@I`LeLmLM9LL)I<$DWA uF@A A twAAH{LcDWA tA 0A `AAI\$I9IH;DOA yL'AT$p@AA LMt D@DD+LHXAt LHIIE(PfADDYDfDfDAA_AAAAgAAƅH11E1DžhA /DAA@AAAD@ADA!D = LD@DAhfDAA H`tH=5ORAfDfDL`LqH="OSRuLH=RN9RGHSDX@E LMtPD+HpXt HHIHA(l@A AAH`H@\L}LML(M9LhfDHhL!I\$MD$I9ALHML8AIL9M4$E^XAuMvPMV@IVHIIHI;AHAAuEtLE~,A EoMV@AE_IvPDPJI~HH0L[PIcID8@H0IIHP[HPIDŽƀIEn,An0L9fDLHL8I$LS H=ENP HhHhH9(fLML(L(MLRfDM~PMo8IG@II@HI;HAAuADžH`H=N>ADžH[wAQLLpmH}H>A4PhAH{HADAEψPhZA PI~HhDE@PhDPI|$HhDDEDP@hHPH@A LMTDD+HA*0HPH@AA LMDD+LAHSx@A IL'AT$x@A HHlA1HH5@<DL8 ALL8L@DM9e H`I9H@H5;1HDL@H8LH@DH9}H@H`FH}L}HPI9 L)LE1ƅhHAHHHtQHt'IDC\A A AAI_L;AW\  EDHL;Aw\eEDHH9PDAAEDL{H[{\r EDI_S\EDI_s\EDI_H9PL;E_\AhHH591L>XLH@IAE͈XP3H}H4<*H#H591Hj>DXHH@HEEDXP7HфH5B91H>DXHH@HEEDXPIfHH581H=DXHH@HEEDXPUfE1ƅhƅhL}MtL;ADhD XH`H}L="OCLeLmLXM9I}LgHGLHhI9^L)t[M$1ҾLI[P{,81H H=!O8oc@fH 1ҾLLaPA|$,8uU1Ҿ H=O!OI$~8u2I$M$AoD$@M$I$fAD$@HSLcLHZP1҃{,&8uL1H H= O8u*oc@fLHc@HLI\$H9hIL9XhH}H ƅh3A ƅh<ƅhHӁH5D61;HH_L@H{pEMT$LHELULUHE聸H8LhHuL#H@H`4AHMH}HXH9IE1E11HDžhE1Q@  K OIL9XI${ uHHPLKpL8uHAHhHH(DXDD+LPXALоHHyHHPILL8uL[pALhIHAA+ItHHLKpL8LALhHHPHHLLCpuH8AHhHH_D+HGXtHH|mDо`QH}Ht9L0L8HX6L0L8HXMAM@A HhA AAE PAh,HXtuHAHhH }LALhfHH}HM5CH}H5P21L&7DXLH@IEEDXPbWI|$HPDhDDE戅PDhƅhHR}H511L6DXLH@IEEDXPƅh|H|H5i11H?6HH@HXP?|MƅhE1ƅh:HhH{P( tDDPHE11E1HDžhE18ƅPIIII I(III&UE1HAWIϹAVME1AUIATSHLHx2H}ZLLHH×ƃ H=f1E1L  HHǃ H;f ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( L0 Hǃ8 Hǃ@ HǃH HǃP HǃX Hǃ` Hǃh Hǃp Hǃx Hǃ ǃ fD ǃ Hǃ ƃ LMHǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ ǃ Hǃ ǃ Hǃ A}`W1fL( 1Ɉ LX HH@H HL L HH ǃ( Hǃ0 L8 L@ HǃH ǃX Hǃ` Lh Lp Hǃx  Hǃ Hǃ L Hǃ ƃ Lx Hǃ H H H HHHǃ H(f0ǃ@HǃHHP0 HXHǃ`ƃh)MHEHEE1HDžpHEH} 0HxLEHH}ILpLUHII HoIIIAM9;LMIH L)HHHHHHHHt`Ht@Ht LMLZAo9I:II)}HJAoIIASMQMSAo1IIAsIqIsAo)IIAkIyI{Ao!IIAcIAICAoIIA[IIIKEoIIECMQMSM9Eo IIE@IPIPEoXEXIhIhEopEpIAICEoaEcIIIKEoiEkMQMSEoqEsIqIsEoyE{IyI{AoAACIAICM97IL+eIN$0N "ILMAiH}Ht'HhLpu0-HhLpuHU~MLEM)MDD4 AlAtkAA E%OH L爓 D2H=}CN)H=.N)DENHUHuEH}9LeL;e-HID$I$HoIT$L]HUIKHMH)Hi񫪪H{*A}`+tX0 t?ǃ H}Ht+Hx[A\A]A^A_]E8C@4 u@Atƃ H8 &gp+H8 1HIĹcF*L p+H8 1HIĹ9F*L L AGPL AB<0 GH A}`L *H}AGDHHx[A\A]A^A_]f.4 tBtRtb uH G@Pf.E@L AA@xU@L AD$@d<H @@Z&DIHMIHMLL)HpHLIMt?KHEI9%H H9HuHEE11HEILUHIIII|f.UHvHHAVAUATSHHH HtHǃ H HtHǃ H8 HtLHL8MtEIt$LnI|$ IT$0Ml$H9t(L(MtML(MuHHt(L L M9t-I}IMH9b(I M9uL MtLE(H H H9t-(L` LP MIt$L)Ml$L'MIuLMeL'MIt$LMl$L'MIuLMeL'M~It$LMl$Lt'Mt_IuLMeLW'MtBIt$LeMl$L8'Mt#IuLGMeL'MfL0 L MtbIt$LI|$(MD$8Ml$L9t4&L&Mt/MDI M9;UfDL&MuH Ht&H Hty&H Hth&L L M9t+DI}MML9':&I M9uL MtL&H=lL L HH;M9t+@I<$MT$L9%I M9uL MtL%H Ht%H Ht%L L M9*MM)IIIH=1'kA8I IIItuItUIt5Mt$Mt'AnuILPAn uILRDIMt$Mt An6IMt$Mt AnIMt$Mt AnIMt$Mt$AnuILPAn GIMt$Mt"AnuILQAn DIMt$Mt AnIM9Mt$Mt An;IMt$Mt AnMt$Mt AnMt$(Mt An}Mt$8Mt AnMt$HMt AnAMt$XMt AnMt$hMt AnIpM9?L MtLT#L-EJHIL+[A\A]A^]R"fI M9+FfDI M9fDAI@IIIItoItFMt$Mt8A~DWEVu'MLASAF PAV u ILQ@IMt$MtAvDFEFIMt$MtAFPAV3IMt$MtA~DWEVIMt$MtAvDFEFIMt$Mt7AFPAVu'ILQAv DFEF 1fIMt$Mt2A~DWEVu!MLASAF PAV IM9Mt$MtAvDFEFIMt$MtAFPAV2Mt$MtA~DWEVMt$(MtAvDFEFMt$8MtAFPAVFMt$HMtA~DWEVMt$XMtAvDFEFMt$hMtAFPAVZIpM9MLAPAn mMLAQ^ILQAn 0I6LV"DILPAn ILRDMLARAn MLASMLAPAn %MLAQILQAn I6LVDILPAn ILRDMLARAn kMLAS\ILQAv DFEF MLAQyMLAQA~ DWEV 9MLAS*fMLASAF PAV ILQ@ILQAv DFEF MLAQMLAQA~ DWEV MMLAS>fMLASAF PAV ILQ@ILQAv DFEF MLAQMLAQA~ DWEV ]MLASNfMLAPAn DMLAQ5MLAQA~ DWEV TMLASEf.MLARAn hMLASYMLASAF PAV ILQ@ILQZf.I6LVbfILQAn I6LVDMLAQfMLAQA~ DWEV MLASfILRfMLAPAn NMLAQ?ILQAv DFEF MLAQf.UHSHH_HH߾p[]Lff.UHAWAVAUATSHH8HHH;`DD\dDDD`DdDAE9DE9*H=gOdEAEODEA9@At *L Er@AxAdAZAPsMcLzO AOHְH=sN AąHD[A\A]]4 ~ H1Ҿ H=`Oy`H `O1&H L^H}E1=.H `O H=8`O1Q@HpH=sN AąHocH=rN Aą HH=rN AHx`H \O H=.\O1=H1Ҿ H=\Oy`H A\O1wH L@H}'1=//H \O H=\O13H}AHtRE 1H !N H=qN `HA [DA\A]]@LAy`H i\O H=-[O1 u@L1H w\O H=\OEZ`AA1o HA [DA\A]]H~`H ]O H=ZO1$ uH1Ҿ H ]ODG`H=@]OAAc1 |H LH}1=.H U]O H=]O1 H}AHtEA ufH LQH}81=//H [O H=ZO1D HAԃI驵H鷵I۵H齵If.DUHHP]Hf.@Hf.fHG`f.HG`f.HG`f.HG`f.HG`f. f.10 t@4 ff.DHHHP"f.Df.DHHHP"f.DHHHPbfUH`HHPH=\O]UH`HHPH=\O]c[ f.K f.; f.+ f. fD0 fD fD fDUH;5x HATISt H~H5b>NH9t1ۀ?*tAuI\$H[A\]UH;58 HATISt H~H5">NH9t1ۀ?*tuI\$H[A\]UH;5 HATISt H~H5=NH9t1ۀ?*tuI\$H[A\]UH;5 HATISt H~H5=NH9t1ۀ?*tuI\$H[A\]U1HzcHATISHH$HH G LgfwHuHHGfWHOGE胉fffo SNLc,C8CHCXChHCxHǃHǃǃƃǃHǃƃHǃ H[A\]f.DHzcUHSHHHH R HGfWHHOH@HhL> HzcHIfHLǃHǃƃHǃǃ!HH  LXE1ƃJfDHǃXHǃ`LhLpHǃxH[]f.UE1HzcHAWIzcAVAULmATISHHHH  fWHGHL Hfw(H=LfDC8LwLc0H{M$I$I9oHLϺLH)H(HHHHHtlHtUHt>Ht'HtL3HH(AVH3HH(VLHH(APL HH(AQLHH(ARLHH(ASHHH(PI9HHRH(H(QLPHPAVHxHxVLHAPLHAQLHARLHH@ ASI9kI$HtHHL[A\A]A^A_]cHL[A\A]A^A_]f.UHSHHHH6+HwHHbHHH8bHHpbHHbHHbH(HbH`HPbHHmbH{hHtHH{@HHHtH{(HtH{Ht H[]qH[]fUHSHHpHH)HwHHaHHaHHaH(HaH`HPaHHaH{hHt%HH{@HHHtH{(HtH{HtH[]H[]fUHAUATSHHHH2)HwHH`HHH8`HHp`HH`HH`H(H`H`HP|`HHi`LchMt L-iMtdAL$teLH{@ILHttH{(HtfH{HtXHH߾[A\A]]AL$QAT$uI4$LVMt/A|$ zM $LAQjf.A|$ DGED$ UHSHHpHHN'HwHHb_HHO_HH<_H(H)_H`HP_HH_H{hHt襨H>H{@HHHt)H{(HtH{Ht HH߾ []f.UHAWIAVAUATSHHxLg`HIt$M$I$HAo$xM$Ao$fEAo$LhAo$At$PAo$Ao$A|$`Ao$A$PAD$pA$bI$XM$dA$A$`ID$ M$lfAT$(M$It$0Ao$fA|$8A$A$A$AL$:MD$EQAJAIAu,MLLMASH}DG Apw AuDIIFHt;DHEQDPAu)HHHEQL]A{ DGEC IL9 IFHtPDJDHIIFHtPrpIFHtxWPnMF(MtA@xAxM^8MtECA@ACAINHHtDYECDAAINXHtDYAsqA^MVhMtAJDYEZ IpL9 BtHH9 Hu%HEAHEHE HIAo~AFA A I LLUQL]As ILRH1HHMVHEADX AHHRLHHEAPLMAy mMLAR^I LLUQHu~ LHASILL]RHEAD@ AkLHAQ\MLLMARHMy "H1HVLHHuASHEP LHAPMLLEAQLUAz I LQLHHEARHMDY A{y ALHAPLHHEAQLUAJ DYEZ MLAPILLERLMEQ ArAq AI LQH0HHEVLMEQ AJAI AkMLAS\I2LLUVLEA@ xAx ILRLHHMAPHEx WP ~LHAQoHHHMPH}W DJDO ,LAR ILL]RH}DO EQDW AH7VILL]PLEAx [MLAQLI2LLUVH}DG APW ABHP7MLLEAQHMADQ A[HHRMH1HHMVLEAP BA@ MLAQI3LVRHHR|LHHEAPLUAEJ AILRMLL]APHEDH EQDP AHHQHRLHAPH1HHMVL]A{ 9ILP+ILL]RLEA@ DHEH MLARf.@U1HATISH>HH=^LOyu5HsH;st6I$HIL$HNHtH=9t/AHC1[A\]@LH1[A\]@A1HCf.UHAUIHATH1MSHH}xfoeNOLǃMtV{Ix_HCf1C @HH)jG{HyHf.ILL肹HH[A\A]]@HKHCHH)H?vH@tHp@@H9tHsIHMLLf.fHtkUHAUIATSHHHsLH{ HC0LcH9tHMtL@HعMuH[A\A]]f.DUHAWAVAUAATASH8LOGHuHUL;O 0LL@EIH)MA?HIL)OIH~FfDEAIDIEAHDHI M9t\H IHuDAL.IMM IM!EMDLDgA?taADgH8[A\A]A^A_]f.HH!IHtEaIMA?EaILA?\GHGH8[A\A]A^A_]DIL+MIAT$JHELH ILIMLIL M!LLEL ?HILIMLIL M!LLEL ? DQYIDIDHIHIMIIM I!LMEL ?IHHIMIIM I!LMEL ?IHIMIIM I!LYMEL ?u HH1ۉILILMHM L!LIEH ?OKIIH)HЃ?H:LIE\$H I!}IDH2IT$L)IL)HEIоAIItHH8IIIDIIM II!MMDLA?A?;HLIIIDLIL IM!IMMDLA?A?HL0IIIDLIL IM!IMMDLA?A?=H?L0IIIDEUMIM IM!MMELA?uIE1Dk?uHE1H8DHIHDEBHIII HH!MIEHA?uIE1EUA?uHE1LDIHIDEpLHL IM!ILEL(A?uIE1EBA?uHE1LDIIIDMIM IM!MMEL(EnA?uIE1AXA?uH1HH}Ht0HEoI$HEID$AD$AD$HuHUID$AD$HI4$IT$ A\$H8[A\A]A^A_]fHB1DIE1@HHA1ɻfDHHA1ɻfDHH1!HH1H1DM~E1@H1PDIE13@HH1HA0DH1H=BOqUHAWIAVMIAUATSH(HwL/HM)L)H H HH9HHULEHuHuLEHIHX HUHUo oRC CTM9 MMMM)I IIAIIItmItJIt'IrAo+I I AjAosArAoI I ABAo{AzEoI I EBEoKEJEoI I EREo[EZEo#I I EbEokEjEo3I I ErEo{EzM9Ao IIAAoAAo A Ao0A0Ao@A@AoPAPAo`A`AopApEoCEBEoKEJEoSEREo[EZEocEbEokEjEosErEo{EzM9 IGL)HI\@I9t(L)HHvHLF LLLE:L}LMtL6Le~MH]LmMnMAH([A\A]A^A_]f.HH9%Hu HEE1:HHAo]MT$ M] A$AoeAd$iUHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULE蕮HULEHEIH}I7MM)LTH4O :LMM9LLULE菵HULUI9t2LLLĬMu~ELsEH([A\A]A^A_]L設fDHH9HE1HEHSM9ufL4 f.@UHAWAVIAUI ATISH_H~H(HuH[It$(H1ID$ ID$(ID$0ID$8ID$@M~M9tYLm@LخII9t?I_ LLeHH2HtHULHHU4L虮II9uH(1[A\A]A^A_]UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEuHULEHEIH}I7MM)LTH4O :LMM9LLULEoHULUI9t2LLL褪Mu~ELsEH([A\A]A^A_]L舫fDHH9HE1HEHSM9ufL4 f.@HGH;GtHHHGHHHOUHHHSHHyHCH[]Hf.UHHAWAVAUIATSHH(LL'LL)L)HH<HH9HHUHMHuԪHUHMIHHUIvDJLLLDIL9|ILMM)IIIAIItvItZIt=It IMH:rIHIyAqLDZIHMQEYH DBIHIIEAH:rIHIyAqLDZIHMQEYH DBHIIIEAH9H:rHIIyAqLRDZMQEYHJDBIIEAHzrIyAqLRDZMQEYHJDBIIEAHzrIyAqLRDZMQEYH9sLKM)IKt L9MIII)IIIAIItxIt[It>It!IA{M IIMJAzASMIIMBARAKI;IIIzAJEKIIIIREJAKMIIMBAJA{M IIMJAzM9ASI IIA{MCEKARISIJMBAKMCAzIRI{ASEJEKIzAJA{MBIKEJMCARMKASIJMJAzMBARM9pI)I_HHtMtLHuHE(HuHELu~EHuIEEAEH([A\A]A^A_]IL9UHu1E1lfHH'I $ED$MNIT$IEFf.SH LVL[HVHGH;GtHVHPHGHpHwDUHHHSHHQHCH[]HfH9UHAWAVAUATSH_HH9vIHuI7DL;I9tHALL)K< XM<$HH9]3I4$H;AՄuHIHEIvH}MAIvIVIH}IHvAINI~II~H}HqAMFMNMH}MNIpAMVM^MH}M^IrAIv؄tiM~H}M~IHvAIVЄtKIFIH}IFHrAINȄt-I~II@I~H}HqAՄtMMFLuHM7H9]H[A\A]A^A_]@f.DHWLGHt[L@HHRHt9J }HRHuI9t9H ~$UHHHUHuHlH(fDH(LHWLGHt[HLHHRHtH9J }HRHuI9tH9H ~"UHHHUHuH蚼H(@H(LUHATSH_LfL9LHFHtH6H?臝t [A\]fDL)HH@M[A\]DUHAWAVAUIATSHH_H}HLvL&fHC1Ht8HL{(M9LIFHtWHs LtGyHCHuI@uQH{ L1҅HHHIHH[A\A]A^A_]LL)H=vH=}@H_HMH9YtHIHf.HH1[A\A]A^A_]f.fUHGHAWAVAUIATISHH9Lv HHLZx.LLIH1҅HL[A\A]A^A_]@Mt$LI9tHSLHx IyAIAHLEIDH(tH_ HE1H{ HڅxHLL[A\A]A^A_]fDIL$ H9tFHHUZLHp I{yLuH{HMEH{IEfE1HDUHAWIAVLwAUIATSH(LgMHLNLHELMd$MtDMD$(LM9IFHt_I|$ HuLMLEyLELMt=yMd$MuI9tMHs Lx=H(HC@[A\A]A^A_]LL)H=nH=}@LHH]IIOHuL`0HH9L` tlIHP Hx0MWIHS LIGAGLS(HC@HUhIHtXHuI9u.LH膗IE(2@AoG@0@H}Hr HUHU@H{ I9tHLf.UHAWIAVAUATISHHuAt$fML$HHH HsIt$MLsHHHCI)HLHKHC HC0IL9L虞ML$It$IMI)L]~MMLk0flK I9tLLLU蚥LUII|$0It$(MfL[(IS8I)HCHLHHH9 LI|$0It$(HII)HM~]ILkHfl[8H9tLHLELEHMT$HIt$@LfHK@McPI)HC`MIzHI9{LoMT$HIt$@MI)HE~mILk`flkPI9tLHL]sL]LIL$`LfAT$XMl$hHCXIt$pA|$\IHKpfShLC{lHLkxAt$`躥I$8HH覥I$H蒥I$H~I$HjI$XHhVI$ H0BI$H.IH]L3H[A\A]A^A_]DME1DM1%fDM11,'I I!IH{8HtzH{ HtlHdLlf.fUHAVAUATISHHHIH9L4LoL1HILK0HKHCHtb1LSfM3L1HHLMtDHA1LIItLMuL[LHKLH9t7ILHLMuH;L9t{LcL+[A\A]A^]HLo0HG0MQדHIUHS(RHH2fUHAVIAUIATILSHH HHGHWHwHEitHHHUL1HsIH3J JIL9KM<$LM MMW@M9WHAMtEtII@I;IHw@IT$HELZ@L;ZHMIJPHI3MD$H~PHLIL9OI$ID$IT$MW@M9WHHufHtYLL@LZ@L;ZHMIrPHI HyPHLOL9NHPL@HPMW@M9WHuL8f.IM9wAMSHE1`fH}iHE&HEHID$0It$0H9pwHID$8I\$8H9X`HHAH9HYH9XBIHH@MT$L9P)HH@LYL9XID$IL$M|$L9xHID$ ML$ L9HHID$(IT$(H9P?DH)L9IMD$M@Ix@I;xHH6HVPHLML$MZPM{HzI9{mM$ID$IT$Hq@H9qHHufHDLHLH9LLL8]ILEII}Ht7L?f.DUHAVAUATSHHHHHH51}1ҾH=OHI衋um#HLIHMl$HID$LI$‘Lm~ELeH{hEC`Ht[H1[A\A]A^]øH[A\A]A^]fDHhf1K`HtډE[EH[A\A]A^]HLHf.UHAVAUIATSHH HHH5̮1]1ҾH=OHI聊 H`LHHLsHHCLH衐H I$HHHK.I$H.A$ Lu~EH]؉ I}hEAE`HthZH1[A\A]A^]fH[A\A]A^]fDHhf1AM`HtىEZEH[A\A]A^]I I7I*H5.HHH(H(L;HcLkf.UfHAUATISHHH2HHVWLnL+nGLHG HHH9LIILE~MMLk flKI|$It$II)H9tLLNIMfLCMl$0M+l$(S(MHC8IIM9,LŠHE~]ILk8fl[(M\$0It$(MI)I9t LHʑLfHC0Ml$HM+l$@c@LHCPHHH9LAILE~mMLkPflk@I|$HIt$@II)H9tLLFIMLCHAt$X@sXEL$YDKYEd$\Dc\H[A\A]]@E11fE1jӂ΂ɂIIH{(Ht!H{HtLf.Uf ʃHAAtpD  EE]fDDtqDH@DȅAA@EuyAAAA@EudAA@uRAA@u@AA@u.AAAA@EuAAAA@EZ D ljEE]@CODEE]fH H1ff.@HH)HHHH?HHHH)H HHG 8uhx6x4x2HHHt*H 8u.xxxHH 8 uxxxIHH@ Ay xxxHH@  uxufxuhxujAy`Iy@IA`oxuAxuCxuEHHG H9UHH)HHt7Ht$Ht8HDHG(HG0HG8Ã8 H8H8HDHHHGHGHGUHAUIATIHSHI4$LHH\HH[A\A]]I~.fDUHAUIATIXSH蓅I4$LHHL(HH[A\A]]ID.fDUHAUIATI SHCI4$LHH"HH[A\A]]I .fDf~f~f~AvA|ADGvf {tf.8w@3vȁH~) wtfDȉ  fDHOHcHDf.f.f.f.f.f.1!  f. f.f.f.1Ðff.HHH;u fDUHHHH@ҋE@HHH;u fDUHHHH@ҋE@HHH;gu fDUHHHH@ҋE@HHH;'u fDUHHHH@ҋE@HH@H;uHW`HDUH]HfUHAWAVIAUATISI)HLHHL/HWL)HH9HOHL)HHH9w/I9tLLHKMI9tLcH[A\A]A^A_]L<L9t LHKMM)M9tHLL҈HLHKH[A\A]A^A_]fE1Ht%IL9wPLHuML+HuII9t LLMtLƀML;LcLcH[A\A]A^A_]4z@UHAVAULoATSL/HtrIHIzHHw2Hu$AAD$I\$AD[A\A]A^]HtHx藀I\$I$ILHL M,$H=M}ff.UHSHHCHOHcHfH5M$HH[]f.H5ٵdfH5MfH5:MfH5lMfH5MfH5oMfH5^M{H5DdcH55dtKH5M\3H5MDH5M,H5MH5?SH@UHATISHHtHtxH)HHwLLEECDLMML; LH)L9HHHtzHtZHt:HtH HL9KH HL91H HL9H HL9H HL9H HL9I9LH N9LOJ N9HGJ L9tvHWH L9t`HwH L9tJLH N9t4LOJ N9tHJ L9;@HML91H NLEH=MM1;B:IcLLIŨALEL9m1Hh[A\A]A^A_]LMIH;AMM)AAAH9IIItzItZIt:ItN<IJ9ON<IJ95N<IJ9N<IJ9N<IJ9N<IJ9M9mIL$N<H9M\$L<J9It$N<H9twID$L<H9t`IT$L<H9tIML$L<J9t2IL$N<H9tIL<J94L}MML;%=M1I?LEH= Np>M1LIHMc]xH}NA LE/HxMHxLIAH;k@eHG`L;XHMI?1LELLE@MLL)HHH IH9LLEHUL]LU&@LUL]HULEILLL$LMM9tyLHLEL].GL]LELLEHEv?LEHEHE~EMxEAP@HH9w1HE11{fDMt뛐A7DI&@LELALEI,HML}LELEHIff.Uf1HAWAVL0AUILATISHIp HHH)H<HDžƅ|Ht!H?H5FH?1HH¾H=N;<H=TNցHE:Aƅt(HHt=HeD[A\A]A^A_]DI HH&LA@ItIH7HHt LLHLHLLx(H=gN :AƅI H%1H=M9HAHt* EA H5/HH0L7IF(H;J uI$H vE1HDžPHDž`HfHLIB(H; tTHOLLI@H; HG`HH;uKHPIM;$F KHH0HHBH; HG`LL;4KH`1ɐM 1M¾H=N9Ho   H=(M8RAHH :fDHPL.LLMq(M9{薸HXLICH;!<cHG`I$HH I;$LGE1AAK9IIItzItZIt:ItIJ K9IJ K9oIJ K9UIJ K9;IJ K9!IJ K9IqH9H I9MQJ K9MYJ K9IAH I9MAJ K9|IqH I9bMqJ K9HIJ K9')HDžPHDž`fDH=N'6HL7IF(H;< H0L5irHHBL9 HG`HLLLIBL9 HG`LL9A1HPD!¾H=NNy5 H~5N%N~P)@IH)H`))`)PIHHtsH0HHBH;8qHG`] H N1H=M6@IL9mA HHLsL;5,8HG`M$HM NI$1INIAIt~IthItRItAr5yAr,yAr#yAryAryAryuEOE1ҸEEA1AAJEBHDLI󉅰HHxHHzEp D0A I AcEHILLLDDžHDHjHHjLjE mH0H=N/HAHfDADYf1H`E1[ffAf1OAwEH=NEfAfAAfA?A!AA/{MA>f|f|gAfA|fA|g1f9¾H=N6/@1 {MA.H=6NE־/mD%W{MfEL*E^fE~fD~AAfD~D- N0fn0tATHD)0fnAT1ffE1Z\tY;ND(0H=lNXNATDZfA/-V*ff4zMH*^BL(A;צD((P(D0TAT1fEf1DZ0DYcNDX]N\TPH=/NZfD/&-+fLyMH*fD(EfA(fA(DfAT^fT011Ҿ0YNH=NXN\fTf/,fELD%xML*(`E*((DATE^D0AT/ff1ZD0Y5NH=NX5NA\T`Zf/+IHDLLLDžHDHjHHjLjE ^hH0H=N\*1h8\Tff ND(@t4IIIIIIxfDUHAWAVIAUATSHHL L M9t*MI<$ID$H9i,I M9uM A {`3,AxuK`gfffAA)LeH]1H5*LH HfM H(LH5ȆMH\HLH}LCL9t+H}ML$L9t+A I HH}-1=* H=PM;)H}AHtEII HDjdGH}.-H}Ht z A9H5NH\HLH}LCL9t*H5MH0HLH}LKL9t*H5؅MHHLyH}LSL9t*H5ʅMHةHLMH}L[L9t[*H5d|NH謩HL!H}HSH9t/*H(E L1H \fLp$H5NLULLHHLH}HCH9t)HpIuH9t)H}IL$H9t)H(E L1H ϫf螫H5BNLϨLLHHL6H}LCL9tD)HpMML9t/)H}MT$L9t)A H=IFH9]H]HtHHX1[A\A]A^A_]f.M$Mc IIp8JmM Mc LmIr8JI0GLmfDHULpH@HULpHHIoIIlff.UHAVIAUIATIHSLLHIELk8Lk(HC0S HS C8IHtCIL$HtHtHID$([A\A]A^]fH9t1r 9s @DH{(I9tH[LA\A]A^]fDUHAVIAUIATIHS"LLHIELk8Lk(HC0S HS C8IHtCIL$HtHHID$([A\A]A^]fH9t1r 9s @DH{(I9t:H2[LA\A]A^]fDUHAWAVAUATISH8L0 IMHtGHsLpH{(HC8LkH9tHMtLfDHMuIIdžIIIdžM$0 I`MPHtBHsLoH{(HK8LkH9tCH;MtL̐H(MuIXLmEIdž`LIhIpIdžxI$ H}LH}Ht$LlLLuH !HEH9I$0 L{ LLMDEL@LMIMtE9A }MIMuI9tD;@ }HǀLHLuTHx(LL{@I$0 L`HXMtyMH LM[MtA9K }M[MuH9t;H }HPLHLuHx(LHèbEH9]H81[A\A]A^A_]HL6UHAVIAUIATIHSLLHIELk8HLk(HC0HS HS C8A IHtAIL$HtHRHID$([A\A]A^]H9t1Hr H9s @H{(I9tH[LA\A]A^]fDUHAVIAUIATISHHP HHH HHHHHRHtH9r }HRHuH9H0H;p |Hx(LLLHHI H #H HHH(HtLH脨H1[A\A]A^]fHDHI@ HH0H0H!UIx@UHAVIAUIATISHHP HHH HHHHHRHtH9r }HRHuH9H0H;p |Hx(LLLHHI H H HHH(HtHTH1[A\A]A^]fHDHI@ HH0H0HUIj@UHAWIAVIH0AULPATSHv(HHLH0IELH8HPHeHH+XH ,H5CfNLFMGH5c1HpH IM H躔HpHxHIH9II)AItpIt\ItHIt4It It 9-uNLQA:-|IA:-uANIA:-uANIA:-IIA:-IA:-uANIL9tkA:-uANAz-MJuABNAy-uAANAy-uAANAy-uAANAy-uAANAy-uAANAy-uAANMQL9uLeHH5 MLLLISI3HUHpHzHH}HH9VL@HMLELH@LMH0H@H}ID$H9tI LLUHIH}HtA!IOHiLLI LL]IH}AHtHLM0 ]HvHL0DxHXHP,HHu.f.HHvHt;^ ~HvHuH9t;X }$HL,LHLEHHHHx(XLH}IL9tLHpIL9tsHPIL9t^LH0IL9tBH1[A\A]A^A_]fDHL@AN I LL}HInDo@)EfANAN{H=0M H¾HHHHEHH'HھH@f.UHAWAVAUATISHHHHE^HHH9; HH$\HH9H)HE1%jMHDžSMH@N,IULrL;_ Mu`HAxHDžHHHƅ 1]YbVJp;DCA< H mN 1H=hM  HDžMZHLuELHǸHL@LA}tMXI$ I]M$ MHu2IHRHtH;Z ~HRHuM9t I;Z 0Lu HX HHP I$x H@(HeLHHI9t Hy LLLLI$ LHLMj(ELL(H@IL9W HHIH)HI9LLvA1EbHHt HH[A\A]A^A_]f,s X% I$8 HHIƹH?'AFPDZ  Y q ; B  LH0H5dHAdži聉H0HKHH8H9HL@HH9HL D~LHDDHH0L@HDž8HH0H9p MII$ M$ LLNHuHHHtL;O ~HHuI9t1L;K }LӺH İN H=N1HLuH[(ELHǸHH@A}t#LHHpL@NHLLN HIHALFLH5rNHHH} LH @LpHDžxLUL]EIMHAH;IE`HM1HL{H=NH}MFL9tHLEH@A}t HHMV MFLH H3LHJH}H5ZNHHMH @LUHEL]EIEH@H;IE`L1HLHPmH=NLHpIL9tHLEH@f.qLH0H59bHAǃd艅@ w8)LH0H5޾NHAǂ(.B01~2LH0H5fHAdžu誄%D GHH0H5>NHǀljDYHH0H5NHǁwfDW,-:HH0H5>NHǁp賃.fDHH0H5޼NHǀxuHH0H5ļNHǂ =HH5NǃH0HuDHHIH)HL94fHtH3<H8HHH0LAIfLI^HD~LHDDH{H0+f(I$8 HHHöLeAAPLNMcMALnfD1LZ M9Y @yDLMfǁAZVX//Mv MLPH5NL{,HLPH5NLJL{DHLI HPL96HfEdžEZF`A/2D/bMv DWMDLPH5=NL{sHLPH5ԴNLǃzGLH5NAdžLPLzH-MfǂAZvP//5Mv5MLPH5ZNLGzHLPH5DNLǀzLepLSeHuHEL @1cAǁfEDEZVHE/D/MA(EfEEZ^@A/whD/M(EfEEZf8A/w7D/%Mv DLPH5NE L)yD(D((E(A(h(,D((DMiDM/HHINI錪I阪I驪I[I7UHAWIAVLAUMATSHHEDH5L HL+ HLH {fI1LzA 11H UMLoL HpIT$H HH9 H HxH0LHLL(H0H@@IUIuLL@MULLM9HPLHHH@HLH@H ID$H9tHIvH9tLLLCH LLLIHHtLH H; LOLHHHxH H H; H H>H LH LIL L IbH(AHt.HDLL0 HǸD L8Dpu+HIL9t~H[A\A]A^A_]@LcLH 1H@ LIH4IHH>L;gtHH?HLW1LIL9t&H?HLW1LII9M9uHLLDL HLLH H; H H 褍yoH)ko@)0HHLLL`H@ AH@QHx1I韦I鴦IԦI鷦Ikff.UHAWAVLuAUATLeSHH0 LtH0 LEHHHLH}IT$H9tx4 LjtH0 LEHHLHBH}It$H9t/8 L!tH0 LEHHdHLH}MD$L9tL0 D| EQTDp L0 EL0 t AGXx H0 Q\Lp Mt#HvH5B1L1HI¾H=%N)<ցIDH}H=N2AŅtHeD[A\A]A^A_]fH8 L0 HuTH8 LHI AEP+HDžx ] LH8 lL@P)HIHhELH58NL(@qH};M1LHHH=iN4H}MD$AL9tEL0 dH8 LHIHpCI,AGP.1H8 LHHELmH8 AEP,LkL@P*HIEHufLL(ALH@)EHE1҅H N H=N1X vHUHIH8 H`TH,HuALLAEP0H1҅H N H= N1H}k HtLH5oNoH}e?M1LHHH=NdH}MT$AL9tNEH`LEHǸhL8@  \ ZH8 HpHH`>1 L`H5N@ǃ5AxPLoLMILMZ(L; IBH;& HG`HL}I8HLiL;- HG`HH`MHH=NH}It$AH9tETH8 HpHIHXAGP-H8 LHHpE,HpH8 FP/5iL@P1LǀlLEHpL@H8LExL`LL@LEUHpH8 @H0hL@P2LǀjLELpLL@LEL`LL@LELp@L j L}HMfE1LH)MLHE1҅H AN H=RN1CHpE1LLH1҅H xN H=N1H}Ht  H8 HpHHEy+H0 H8 fgLH5dN@P8IkHEHxLIBH;\r HG`H@M1LHH=NH}M\$AL9tEH}LEHǸ Hp@HHpH8 XfLH5N@P7IǀjjHUHpLI@H; HG`HpMHHH=N6H}It$H9t E EIǸLEL AGPFAL=$HU4 H5NLpiLEIH7HFL9HG`HUMHH@vH=NH}ML$L9txx_LH5wNhH}HLIBL9HG`HUMHHhH=WNJH}M\$AL9t4E L}LEIǸLAHpL@H0LELX@LH5 NLhH5AFMLL hHMALjH`LHTH}AYAZMVL9tnH}M\$L9t[H5NLgH5NLL gHMALjH`LH_H}IFAXH9tH}IL$H9t g H5mNL!gLc H5CNLIgHMALjH`LHSH}IXZL9toH}IL93Y)@HDžh+H}Ht2A LH8 qaL@P(HHxE-L(@$fDIHHBH;[lHG`H kDLH5NeH},HxM1HHH=pNkH}It$AH9tUEHLH5VNeL]IPHLx(L;=(cHMtMHPHLjL;-HG`HxHppM1HnH= NPHXA,HpH8 =`L@P4LǀdLE裿LpLL@LE耿HhL@H0LE]Lp@LLH8 _@P3 t@PBǀjLLLEHpLL@HEԾHxLL@HE豾Hp@H8AAA%ADLH5N{cL}IHPHUMHH@H=֖NH}IL$AH9tEuiLH5lNcHUHL?AWHUMHHh*H=YN|H}MD$AL9tfE?E*HXH8 B^L@P9HIEbLXLH5GN@LbbH}3M1LHHH=uNH}It$AH9tEWLML=iILIBL9HG`DHMDEH}}$ tf LH5NaH}&H`MHH߹H=NH}IAL9H5sNLGaLc H5iNLI-aHMALjH`LHyH}IVY^H9tH}MD$L9'~zH0 H8 X\LH5tN@P:I`L]IHPHM1LHH=^N H}IL$H9t EEILEHp@H,;LH5N_H}o#H`MHH߹H=NgH}It$AH9tQEH5IGI酒IQI鏒I[I髒H齒I遒IǒIْHI!I3IEHSIeH黒HkH}I鏓I靓I鮓I鿓IѓI駒HړIIII"I+I9HKI]IjH{f.UH Oaf1HAWAVLuAUATSHHL%D| LL`L1Dx H0H `fHh`Dt L1HH `fHX`LpL1Dp H `fLL0j`HLH5NH`譴HH9H`H5S0~HL@HVHHHHL9-LHHLLP@HHXHPLLH@/HH9&HPH5/LLxM\$LL(M9HPLH HH@LHPHhH@HL8H@蔲HH9XH@H5/ELpHpMHL8LpLI9$LXLpL]Lh@LLxLmH0H8LH@L LLKH}IUH9t9H8HpHH9tH@HPHH9tHIL9tLPHIL9tLHHIL9tL`HIL9tL0HpIL9t|HXHHH9t`LhH0IL9tDH}IVH9t2H0 LH̋ H'H=*=MtHĨ[A\A]A^A_]HH=M^L9I M9uL MtLH HtH HtL L M9$LL)HHHH=K}3HHHHtpHtPHt0Mt$Mt"AnuILRAn u ILQIMt$Mt AnFIMt$Mt AnIMt$Mt AnIMt$Mt$AnuILRAn WIMt$Mt"AnuI6LVAn DIMt$Mt AnIM9Mt$Mt AnSIMt$Mt AnMt$Mt AnMt$(Mt AnMt$8Mt AnMt$HMt AnYMt$XMt AnMt$hMt AnIpM9?L MtLtL-eHIL+[A\A]A^]rfI M93LfDI M9fDI M93MfDHAHHHHtqHtGMt$Mt9A~D_E^u(ILPAN QAV uI6LVfDIMt$MtEFEHENAIMt$MtANQAV*IMt$MtA~D_E^IMt$MtEFEHENAIMt$Mt5ANQAVu%I6LVEF EHEN A&fDIMt$Mt2A~D_E^u!ILPAN QAV @IM9Mt$MtEFEHENAIMt$MtANQAV9Mt$MtA~D_E^Mt$(MtEFEHENAMt$8MtANQAVLMt$HMtA~D_E^Mt$XMtEFEHENAMt$hMtANQAVWIpM9DMLAQAn UMLARFI6LVAn MLAP @ILRAn ILQDMLASAn ILP@MLAQAn  MLARI6LVAn MLAP@ILRAn ILQDMLASAn SILPE@I6LVEF EHEN AMLAR{f.MLARA~ D_E^ 4ILP&ILPAN QAV I6LVDI6LVEF EHEN AMLARfMLARA~ D_E^ GILP9ILPAN QAV I6LVDI6LVEF EHEN AMLARfMLARA~ D_E^ VILPHMLAQAn $MLARMLARA~ D_E^ NILP@MLASAn PILPB@ILPAN QAV I6LVDI6LVZfMLAPQI6LVAn MLAP@MLARfMLARA~ D_E^ ILPILQfMLAQAn >MLAR/I6LVEF EHEN AMLARf.UHSHH/HH߾ []\f.fHG`f.HG`f.HG`f.HHtHHHJ(HG`f.1f.f.UHAWAAVIAUIATESHHXU(E LM01H8H=xM‰}=EHDHHDžHL ܁uL1҅HLM1WH MH=MPAYAZH8DHHDžljL ܁D1ELMHH=M1ARH qM_AX d H8HHDžljL ہuL1҅H MHLMPH=M17Y^}LMAMIUDLA6I~LLMHHLDž=DžAADžDžt/EDJLHDŽDŽLDHLLHDžAljL $ځuL1EH1AWLMH MH=MA_ZL H8A0LHDžAƉL فuL1EH1AVL;MH MH=MOA]A^HH8 qLHDžAʼnL فuL1EH1AULMH {MH=MǿAZA[ H H8vLHDžAljL ؁uL1EH1AWL+MH MH=M?AXAYLH8H1HUALHDžAƉL ؁uL1EH1AVH=MLzNH hM軾^_1tHe[A\A]A^A_]@Heظ[A\A]A^A_]@AE1fLq@H=zNuE~ENEAMAUAuH8HjuuATAWHHDžAʼnH0L ցuL1ELyNHAUH \M1H=hM衽ZY<%uuATAWHHDžAƉH L dցuL1ELyNHAVpf.UHATL%#SHHHHP(L9u|H@H;YuHG`Ht1HLM`L;%4uRHG`[hA\]f.HHHq(L9u5HYH;u0HG`H[A\]Ð@A@[A\]ff.fUHATL%SSHHHHP(L9(H@H;GHG`HHLI@H;XHG`hHLMQ(M9MaL;%HG`HtyHHHBH;HG`[HpA\]HHHq(L9HAH;HG`H_[1A\]HLI[H;{uqHG`[HA\]fffA3fA f@EfUHATL%SHHHHP(L9H@H;HG`Hu1H@HHYH;HG`H[A\]HH7LF(M9LfL;%NHG`HubH@LIAH;%HG`1@tHLI[H;u{HG`[HA\]@4HLMbL;%øuYHG`x@fARA<@NAf.UHATL%SHHHHP(L9H@H;%HG`HeHLI@H;HG`f1HPLMQ(M9IAH;HG`Hu6HXLIK(L9ICH;HG`HtiHPLMQ(M9IAL%L9HG`H HXLI[L9eHG`Hp[A\]HH7HV(L9YLfL;%HG`HtzHLM`L;%HG`[HA\]H`HHq(L9HAH;HG`HfLfH`HHCH;CHG`[HA\]fDHP@#ffAE0f։Eff,ffAL%6=/ffAtfA}UHATL%éSHHHHP(L9(H@H;GHG`HHLI@H;ȴHG`gHLMQ(M9MaL;%HG`HtyHHHBH;dHG`[HA\]HhHHq(L9HAH;&HG`H_[1A\]HhLI[H;uqHG`[HA\]fffA3fA f@EfUHAUATSHHHL%HHP(L9LhL;-!HG`Ht3HHLbL;%HG`HH [A\A]]DHhHHq(L9HAL-nL9HG`Ht/HhLI[L9uOHG`HH[A\A]]H`LI@(L91t(H`LIZL9t뱐"fHHLIYL9tfAAL-7f(fmfUHATL%SSHHPHHP(L9H@H;HG`HuAHXHHq(L9HAH;OHG`Hu [1A\]@HPLMH(M9I@L%L9uqHG`Ht#HPLIZL9u#HG`[A\]ÐHXLIZL9tfH L[A\]DHLMQ(M9MaL;%u4HG`Ht.HHHAH;ٯuwHG`L`fAH LI[H;uMHG`L`p@AffAnIH}HtL'UHSHH8HHH@(H; ufHHHr(H;5 3HHHP(taHLIBH;HG`H8H@[]DHpLI[H;HG`HH8[]@HHH9taHH}QLEIxLIYH;HG`H}HHtHEHEfHp/f@@fHfDxHH}HthHpUHAWAVAUIATISHHZL2HtH=C EvILH(HLLSMAHMwI_HIMVAM4$L1+MO IcT$MwA$xHHLAo$hAIt$AiHAƇzL%R DMHIEM'zM}HL[A\A]A^A_]ÐCC*H9I $LpLH@It$HHH+Ao$hHIcT$LH HA$xHHLAA蕪H5 DEAƇHEI77fDCIHtHyLgHUHAUATISHHHsLLkHMIuLI]LHHsLLkHڪMIuLuI]L蹪HtxHsLXLkH蜪Mt[IuL;I]LHt>HsLLkHbMt!IuLI]LEHH[A\A]]Ðf.DUHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULE%HULEHEIH}I7MM)LTH4O :LMM9LLULEHULUI9t2LLLTMu~ELsEH([A\A]A^A_]L8fDHH9HE1HEHSM9ufL4 f.@HtkUHAUIATSHHHsLH{(HC8LcH9t薨H莨MtL@HxMuH[A\A]]f.DUHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEUHULEHEIH}I7MM)LTH4O :LMM9LLULEOHULUI9t2LLL脦Mu~ELsEH([A\A]A^A_]LhfDHH9HE1HEHSM9ufL4 f.@HGH;GtHHHGHHHOUHHHSHHyHCH[]Hf.UHATSH_HtPLHCAHtHHK I9|HCE1HuIEu1HI9HOIO[A\]@H_1HH9_tHIIM$HH HfDUHGHAVAUIATISH9t~HL2L;v }:HGHH9t#H趦HL;p ~jHxHEHE[A\A]A^]f~^HO 1HH9tHHL;p },H{HEHDH(tHW IuH9r |#[LLA\A]A^][HA\1A]A^]f[1A\A]A^]DUHAVAUATISHHHIH9L4L_L1HIoLK0HKHCHtb1LSfM3L1HHLMtDHA1LIItLMuL[LHKLH9t7ILHLMuH;L9tkLcL+[A\A]A^]HLo0HG0MQǝHIUHS(BHH"fUHAVIAUIATILSHH HHGHWHwHEYtHHHUL1HsIH3J Jff.@UE1HSHO@H~LHGHE1H~LLGPE1I~LukwuvuffH8HEA)MH@HE1ftxttIuIfHE)EH~ AItKH~ I E11H@_HEhf.HEfA)UH87HHuAH@*HLc؃JLAt#HHwLLcȃNTAt1HP~HHH\ЋG(LLELU؍xHMH_NHc< II?LH=H1H9dLH?H=IH9yLAH?H=I4:H9@HHIHHIHu>LHIHu1LAHIHuffHLAAtthE1HHHHHHHuLHHHuLE1HHHAD[]fDI?JL9HHIHHIHzLHIHiLAHIHRMI>J L9yLH?H>I48H9< HHIHHIHLHIHLHIAHfE1H8A(HEHHAKHEQHHHHHHH6LHHH%LAHHHYDI>JL9AAAff. H ~HH1ÐH L L97LFM9*UIQHI?H)HHLRLELfn]HHfpHHHH<HHHHtoHtHHt!oNHNfofffffofoaHfofffffofoqHfofffffofDoAHfEofDffEfDfAofADoQHfEofDffEfDfAofADoaHfEofDffEfDfAofADoqHfEofDffEfDfAofAH9oYoQHoioyfofoDoIDoYfffofDoDoifEofEoDoyfEofffAoffffffffffffDffAfDfAfDffEfDfEfEffEfEfEfEffEfEfEfAffDfAfAH9fofoLfsHffMffffofofsffffff~I9tBEMXD9ALM9t/APIH9LI9tApMP 9LM9t EH D9AL1]1HH)HHHHH?HHHHHHH)H H)HG H8upHxHHxEHxBHHHt.H H8u2Hx HxHxHH H8fH uHxHxHxIHH@ Iy HxHxHxHH@ H uHxumHxunHxuoIy`Iy@IA`iHxuEHxuFHxuGHHG H9GHH)HHt:Ht&Httʸ  [A\A]A^]fI1A}(H [N H= \N1[A\<A]A^]% DLA@U1HH +\NH=;N1HATSH 褍<1҃{'H \N H=8\N1yHL`L;%;Lc`1H P\NI$p H=\N111H \NI$ H=\N1f1ҹ A.$H=\NEH \N1Ō¸ uPH~(wLLNA<AA1H \N H="]Nu<% [A\]D[ A\]fD[ A\]fDHAIfU1H .]NHAUATIH=NSHHH 1{1҃{(H ]N H=7]N1ЋPHLhL;-dLk`1IpH G]N H=]N1艋!1IxH ]N H=]N1Zf1ҹ A.H= ^NEH ]N1¸ H~(wLJNA<AAH ]N H=2^N1ˊø u61H w^NA$4  H=^N1蕊<% H[A\A]]H [A\A]]H [A\A]]HAIfUHH HAWAVH}AUATSH8LeLmM92H^NILHELML)LuM$APC 4!u_Ax\H S^NuQe@H ^NAC A!LCLcAxC !I\$I99LEHAuEP\MAAu MMt$@Au$IuIPfH ]N H=L1ш?H}Ht苉H8 [A\A]A^A_]AX\M,u MMv@Au$IuIPH o\N H=*L1/^I\$I9H}HtۈIH ]NL9ut 1 H=L܇H81[A\A]A^A_]Ax\+HM@Ax\HM9M@H [N=@IM{HHP@HUJMMyHMZ@L]1H \N H=L!H8 [A\A]A^A_]AX\MeIMyHHs@Hu]MtL蜇H [NI@U1ҾHAWIH=LAVAUATSH8)!H}I qLeLmM9LLL)I${L3HAV1Ҿ H=[NH a[N1LHHPA~,Hu>H o[N H=[N1ąHUH [N Hz81I9~8H=[N1葅iAuLEAu E4 H [N H=\NAA1A1D!)d H}HEׅEH8[A\A]A^A_]DI$LPD1H ZN H=:ZNE1轄M$I$M$PA~,HM H ZN H=6ZN1oGHu1H rZNH~8I9~8 H=ZN1<AuHUu A$tCE4 H |ZN H=ZNAA1A1D!׃LcH[{}I\$I9tkL#A|$u~,1҃{,y,1A|$,fDH8[A\A]A^A_]@LmMtLH81[A\A]A^A_]fD I<@1Ðff.UHAUATISHHcB,HHӍPHIHHs8s1H{8tHIL$hAd1H{@tHIt$pAE1H{HtHI|$xA&E1H{PtLM$AE1H{XtLM$AE1H{`tLM$AE1H{htLM$A1H{ptHI$At|1H{xtHI$A t^1HtHI$A t=1HtHI$A tE1HtLM$HL[A\A]]fUHAUATSHHL 8/H LHI腼$H L ADŽ$ADŽ$A$L'A$tzDH L@ L MJXEB`L IMkpACxD` \ H X AD`lPhXdH1[A\A]]DH @ D H wXO\W`|H9UHAUATISHL (I$ LHH褕&I$ I$ HPXHSXH`K`HpdHsdxl1{lH[A\A]]I9fLLMHH9MI)AH9IIIItcIt@ItLH<HI9`LH<HI9CLH<HI9&LH<HI9 LH<HI9LH<HI9I9H<L@H9J<LXJ9J<L@J9t|J<LXJ9tfJ<L@J9tPJ<LXJ9t:J<L@J9t$J<HJ9;f.IHHI#H1ÐfUHAVAUATLeSHH0H HH z<)Hc H}HH fHuLLHc HH fH}1HLyH}HtKH}HtKL Hc HH A}<DM]LMQfHELHAH}HtKL Hc LIUHH L@fHMLHAH}Ht7KL Hc LMEHH MheLeLI$AH}HtJH3H=!HF0H9L L EeM9,IEI9ISLI?L)HLJLMDefn]IIfpOtIIIA=IIIItpItIIt"AoMIMfofffffofoaHfofffffofoqHfofffffofDoAHfEofDffEfDfAofADoQHfEofDffEfDfAofADoaHfEofDffEfDfAofADoqHfEofDffEfDfAofAI9oYoQHoioyfofoDoIDoYfffofDoDoifEofEoDoyfEofffAoffffffffffffDffAfDfAfDffEfDfEfEffEfEfEfEffEfEfEfAffDfAfAI9foLfsHfoHfffffoffofsfoffffffA~L9tD8LhA9DLM9t2PLHA9DLM9tDPL@ E9ELM9t DX E9ELDH01[A\A]A^]MMLM bLULIAH}Ht>GHc L HH lHc LHH aHMкzLH`E>)HLH}HFxHH01[A\A]A^]I1H1I1H1I1I1ff.L H L)HtI1ҍJH9s?rH9s7DJI9s.DRI9s%DZI9sJH9srH9s DJLI9r1 t@UHATSLeHH Hc LHL`H}H(pH=MNZtH}Ht EEE܅uLHc LHH 8`LEI(zH=MN tH}Ht EYEEH [A\]H0I0ff.UHHAWIAVAUIATMSHHH@HULMHEuHHtxHItHEI9I LHUMHUIHMAAM1Ҿ H=NAy`s:IcwxH]LLHH=ڷMrHMcWxIII;I;/I;I; DIǨL9}IcxH}H}It$I;t$KH>ID$EAAuI IHt5LU@IH[HtH9C }H[HuL9Ut I9B M1MSI9tHI9I9oI9CI9HtI9*I9A t'I9I9(WI98I9{I9 IIcHڃ}tfDHUL$IIcHփtH)HI IHL!I3IIcHڃtH)HI HMcOxLUK IIcHփtH)HM IIL!IIIcHڃt{DMMcLكtI)IM H}1HOL!LIMcI HJ SH=HNl!!@IIc$HڃIIc HփIIc(HڃIIc,HڃHMIIc0HڃeYIIc4HڃF:IIc<Hڃ'HH [A\A]A^A_]IIc8HڃIIc@HڃIIcHڃIIcHڃIIcPIAtL)HH}M 1ҹHIHPH=DNj@HIIcIAtL)HH}M 1I HIH HPH=ENjf.IMc IAtL)HI I JH}J H1HPH=&DNjwIIc0HڃMAIIc Hڃ."IIcHڃIIc@HڃfDUHAWIAVIAUATSHXH HUH HH)HH H9JL$[ILlHKHHXHLKfAILP0Mi@A@ M9MIIItlItPIt4ItAAI0ABABAII0ABABAII0ABABAII0ABABAII0ABABAII0ABABIAI0ABABM9IAI€AAAAAAAAAA A0A@APA`ApABABABABABABABABM9HKt-HXIJI)HHtXeIL9xuDHXtHXEeEHe[A\A]A^A_]HH;]RhDIL9xuI8 fM( pL9\fDMLK M.M;I|$E1҃AM;HHHtzHtZHt:HtIJ O;PIJ O;6IJ O;IJ O;IJ O;IJ O;IrL9#H M;IBH M;MZJ O;t{MBJ O;teIRH M;tOIzH M;t9IrH M;t#IJ O;;fIHtUC0M; 1.pHK(LMH,M!LAT$H=SI8M0HDž(M@IHHDž0HI MPIXLIMLMMHIM H H1LM(E1H1H1LE1LE1LE1H 1LHDž8HDž@HDžHHDžhHDžpH8M;M;HH9 L M9u H0HpL;u H0HhL;u H0HHL;u H0H@L;u H0H8L;u H0H0L;u H0H(L;uL(L;uL L;uHL;uLL;uH8L;uLM;HfDHHUHȽH=8N\DIMHNN$IIAIItIteItKIt4ItL9 u MAHL9 uLAHL9 RHL9 uH0HL9 uHHL9 u L A$HL9 uLAHI9L9 uLAHPL9 uH@L9(uHrL90uHJL98u LbA$L9@u LZ AL9Hu LB(AL9PuHB0HB8I9c>HDžXHDžxHDž`HE1H`LB0RR HHE$A;IIAtL)HMcM KHE(Ag;IIAtL)HMcM KHE,Az;IIAtL)HMcM KHE0A-;IIAtL)HMcM KHE4A:IIAtL)HMcM KHE8A:IIAtL)HMcM KHE<A9IIAtL)HMcM KHE@AF9IIAtL)HMcM KHDE A@ DDEH DED DE8 Aub9Au DDDD AEDAElAAFF FFPPPASD ASAQQRAPDWSATDAURAPARWSATEpAUElAQAQEARAPEASADREAPADWAH}SEAT(08@HhpDnAU6uHpH=7NUjI I9 Hu1L`IHp*@I M HII)IL9HcHpHHdAH}LUHtLh&LhI L [LmJ I EJHUD\D]NLEDLLuMjA4$I DMPPHL,$D$H0H=LLpN LhtI)IHpI MN$LPMQAMI-IE1JM9uHHH L9uL H9uL(H9L9uHHH L9uL H9uL(H9L9uHHI96M9uHHHH L9uL`H9uL)H9L9uHH(L9uLaH9uLiH9tkL9uHYL0M9uLaI9uLiI9t>M9uHYHAI9L M9uL I9uL(I9PL0HLqLqL1aL0L0L0IDCDRAREASEAQhAPpA|QAxVAtLWARELAREASDKAQCPE H}%HpH=%N*1H H=NP+L1ҾH=߀NM(+M {KSA{@ZA$EEMMA@ uAUAQLAPLARWH}QH RHpSH@H=N)F\P(0APAUDh8ARDWVQRHAUARWH}VHPQLRHpASYHĐH= N7)1MA PMMcMLpAtM)IHpI H=)NJʋPH8)SHpH8H=)NAHpAX)1HH=N2)1HH=~N )1HH=~N(1HH=~N(DKDCVM A{@ZWhARAUHEAUApPAlVEhAREASAQAHpWSH}R LȁHĐH=N3'gPH=q}N'I MH 2NDF@AZAAdAE A{`@1@H=-ND!(,I B@Z:d1MIc LtI)IM H=vNMAL8A!'PH=|N'HpоH=5N&DKQEXAShAUHEAUApWAlH}RAhLPAdVE`H8APA\QDSHpARD[ASDHpH=Nm%1HpH=6|N&IDKDCWRI x@Z@@QhEARAUHEAUEpASAlWAhRAdLPA`VA\QDSAR HpH}MHpH=pN$AXm!HDžHHDžPHDžhHDžpIDCDRAREASEAQhAPpAQAVALWARELAREASDKAQCPE H}0HpH=##N#E1IE1M0HDžhHDžpN E1LH)HHHHtlHt3L I9uL I9uL(I9u LLpM9~HL I9uL I9uL(I9u LLpM9_HL I9uL I9uL(I9u LLpM9 HI9LhHPL I9uL`I9uL*I9u HHpM9H(H9uLbH9uLjH9u LRLpL9tnH0H9uLbH9uLjH9u LRLpL9tRHBI9t=H H9uL H9uL(H9u LLpL98L0LZLhLZLDHHhHHhsE1HHhHDžhE1E1HDžpE1LLhLLh E1"LLh&LhhLZ1E11MH=PvN!v1LhH=vN!Q1LpH=vNg!,1LHH=vNB!LPA EHEDEAAsAKAAPASEASARAQIAPMWH}VLQHpRHhP@HPH=NxE8 E111E111E1E1HDž(HDž0HDž8HDž@HDžHHDžhHDžpRASEASARAQIAPMWH}VLQHpRHhPH HPH=s N3HDžHDžHDžHE1E1HDžhHDžHDž HDž(HDž0HDž8HDž@HDžpHDž`HE˹EHDžHDžhHDžHDžH}L[L9tL H5NHyHLH}LKL9t H5NHqyHLH}HKH9t H5WbNHEyHLH}LCL9t H5NHyHLH}HSH9t H5NHxHLbH}HCH9tp H5NHxHL6H}HsH9tD H5aNHxHL H}LSL9t H5-hLHixHLH}L[L9t LmIc HEI}EH}HHI H}LH=NH}AHtE LH5gLHHLI@o@)EZfH5#@H]H5`NHwHLH}L[L9@H5Q`NHYwHLοsfH=^tH #H5+gLH=^H=HH5^ H=^loIX I;` t(HGHHuHUH9uIX @HHL蚣^III>IIHIRHIIIIxIHI,HIHIHVIIII II1ICIUIgIyIIIIIIII II-I?IQIcIuIIIIIIIII=IIfIxHIIIIIIII&I8IJI\InI|IIIIIHIHIIIICfDH H9 UHAWAVAULP ATE1SHHfAFH=t NGMt*L=MAvfDfHH=cLHL L+ IIM9D HH=%LHc HH H:Lru t#M H=2 AFfMtH= AF LSH=z N%MtLEuE̅udHc HH LqH9MtH=AF'H= NMLEE̅H[A\A]A^A_]Av~A~lMELAPMEtOAEN AAMELASE,@AFfDAFJfDEN EQEV fH1[A\A]A^A_]1IvIH@U1HAWAVIAULATSHLHLFH5WH H 4L!pHHHH9HHH)ʃHtiHtVHtCHt1HtHt 9-uNHA8-H8-uNH8-uNH8-H8-ZH8-uNHH9t[8-uNx-Hxu@N-uGN-uGN-uGN-uGN-uGN-uGNHGH9uLLH5#LLHMEL9t\IVPHLHc LPLHH WH N 1H=QL HI9H3~H!twOVuL4fH=N6tHHthU'w}#UHI9|LMtLA 1HHtHH[A\A]A^A_]B @LfH=GNZDVpLdH=lN7HH;3LLH@LH=NHL'AT$LAt$\vI$@A$8Dž E$HI$`HDž(HIW DH0H8HDž@H*HIHHHHJHtgHyHHt[LGHMtOMHLMtCMQLMt7MZLMt+ICLHtHHHHtHHJHuHH0HyHteLGHMtYMHLMtMMQLMtAMZLMt5ICLHt)HxHHtLGHMtLHyHuDM$xH8H(DL@M$I$I$M$Ao$Ao$LXAo$I$H}Ao$HAo$E$)`Hpx)e)mLEHMDeEtuHR LJHAy#IwfDDHDE{DIDg@DHDEKDJD7@HHCPLfH=NDD"1H NA H=5NAø  $IڶIfD8 t=t0U1H N H=9LLH=]<% {ifUHAUIATSHL /I LHH"I LeHHLEAH &c1HPHII LEHxAH d1HPHH1[A\A]]Iff.UHHAUIATLeSHHH誠HHLEDLH艠HxLE#AH B d1HPHxH1[A\A]]Ðf.U1HAWIAVAUATIH=FNSH8H08I$ I$ HHIx,II$ AFPM$ PXAVXH\AN\MI$ LHH,LmHELL0@I$ CPM~X{XDF\LIDC\ALJAq(L\HuHHELHIFH}L9t8H81[A\A]A^A_]H8[A\A]A^A_]@IWp1LI鹳IƳIӳff.UHAVIAUIATIHSLLHIELk8Lk(HC0S HS C8IHtCIL$HtHHID$([A\A]A^]fH9t1r 9s @DH{(I9t*H"[LA\A]A^]fDUHh HAWAVAULmATISHHH H莝A$ M$ IH]IHtEHsH}CH{(Hs8L{H9tHMtLHpMuIIdžIIIdžM$ I`MPLEHtFH}HsDCH{(LK8L{L9tHMtL@HMuMXLIdž`MhMpIdžxIc$ EHI$ L]H}MHtԹLLLuHHEH9I$ L{ HHHuHDHHRHt9r }HRHuH9t;p }HǀLHLuHx(LL{@膛I$ L`LXMt{DELfLMIMtE9A }MIMuI9tD;@ }HPLHLuHx(LHèEH9]HH1[A\A]A^A_]fLH4I$ L(Ic$ H}HI$ HULHhH}HtBH}IMH9fDUHAWAVAUATISHHH L~PHT$hHHt$xL$tH.Aw(D$`1f)$)$)$ )$0ҁ|$tuu+I$ Dl$tAA1IH M H=?N1~IwPIOHEt$XAIG8Mw@ADHDŽ$HD$HA$H Lt$PMH$DŽ$MMA1ҋ|$tÍxDkADD$tAA=|$t|$t A$@ I$ V@ZA$  C1DH MD$`DEAXAID A@D$`A AAED\$`Df)$)$)$ )$0D$`1IH 4M H==N1IwPIOHEAL$XDA AA[E1AAHDIHI$ LL$8E$@ D\$DHDT$pDL$@DT$pD\$DLL$8tI$ z@Z|$`I$ C1u \$@D MG LLI$I$AM˃2AI$A$EAIAE $D$HE ͋$L$HD$Dl$XD$D$ DH$PA$zA8D$$EnDL$H$AApD $4E ݁ AA D$ DT$PA Ht$xHD$,AA ʼn$8D$(D$4qH$HH57MH|$`%H$PHCH9tHL$xL$LLQPAr(RRMOL$H5MLLL$XPHL$`L1H谡fowML\$XDŽ$$h)$L$jƄ$hf1HDŽ$`)$P@HH)p$hH$2HH$Ic$ H$HI$ H$HHzH$HtȱHwH$INH9tJIc$ HHI$ >H$PHH$XD$X$Ht]D$DT$XL\$hHM$ DŽ$PILL$PHT$PDD$XLHD@I$ HHL>LHAHt$xH~PLcW,AJJLxH5cJ9LpHL hILNM$ LIx=HHH0H$PH9tT$tH\$xLt$hDtLAH$IL9tLl$`H$E1IL9tHeD[A\A]A^A_]fDH$XH$PƄ$hHH)H?H@u@LG@I9tL$X@DI_M$ M$ LMu,fLMMtI;_ ~MMuL9t H;_ I$ IHHD$x7HHLL5YIc HHI 跳LLIHHtL^LH0IL9t\M Ic LM$HI CLPHIHXA$Hk\aLHEILxLILpLB@LhH餑H鵑III)H6H驑H@HHJfU H L1HAWAVIAUIATLSH HHLFH5L4HH5LL~H HCH9tHHHH9HIH)ʃHtpHt\HtHHt4Ht Ht 9-uNLAA8-\IA8-uANIA8-uANIA8-)IA8-;IA8-uANIL9t_A8-uANAx-IxuA@N-uGN-uGN-uGN-uGN-uGN-uGNLGL9uAv(H5LHNHL蠋H LKL9tIc HHI 葰L LIKH(AHt跕AtQHIL9tM H=rMHH HpHI1LLHM]PDLLh!Et$PA$MxHIuL @IUPMAD$P }L A}@dtAo8 bHpLH[3HLH߉[d;fD8 \\VHhMZHHHhbHHHxeHh`HxHH HhI$\DžH`,H`D\LxL hH0D@IIAƄ$ L`LxI`AD$P LHLH=XLi_@H L'A$\fH 1҃~@PLLffD }I頋H鬋I鹋ff.U1HAWAVAUIH=HNATSHH8Hp8M I LHI~"{C H LxL( A@t u DA D /A$fE$A$@8 A$@p  nAƄ$ I DG@AZtAdHI @d HMc@ HCHHIHupHCPMcD HIHu[AƄ$ PDHLLH=Mu}HLLh1HPIHI@M HuI$E}XE|$XA]\A$A\$\EY1MAdžH8[A\A]A^A_]H8[A\A]A^A_]@ AƄ$ [H LL H=*M#|fDH` LLH=jMûDfDA8 H &I LM H AH=MdI HHuI$EHUHEgLUHULUHULMH!fL1LMM&LA@ ICH4 LcHIHICPIcD HHHjI頇f.UHAWAVIAUATSHHH H=Mp@P1҃d 1!H MbILbL;%nMf`E$I$@HDž`M$M$AHpLHLPA$AD$@I1pH M H=lN1Ml$h豻It$`H HHcQ\HhHHD:H@HHH8ƅ_A1H IvpHA$E1LA$pILxcL HacL=gAs\AuXH Hxy`A}\IxA$DžLDLHÆhAM$ADžEL Ax@d MLHLM8)LLH6LLHLLHLHIM1AdžHĨ[A\A]A^A_]L=yMMcmHmHmHmHmHmHVmHPnHHnH@nU1HAWIH=MAVAUATSHHHHHLH=yMAŅtHeD[A\A]A^A_]Ð&I 1HIm,HHLuPL S\&tA 0EHEu6I HM)AbDI EH}H} HULL@D]I$LADŽ$mE\$PPADŽ$HuI$EHu{HuI$HE LHQPHL$PtSH}IL9mA8 AAM EDLEDU@DAAAAAAA AA A E1A AAI I HH@E1jE1HLZH= MYsAHSx1LJADI EHuAoDA_ATAIA>A3A(AIjIjfUHAWAVAUATISHHxH=M蓚AŅI$L ȝH LHI7 HLAE1jM$81HLZH=MYAŅ]ƃI$~,oN8ofvAAffofofs fofs fffffs fAo~HoffDofDofAs fDofAs fAfDfDfDfAs fEfAADoDo^XfDfEofEofAs fEofAs fEfEfEfEfAs fEfAAtDoNhoffofofs fofs fffffs fffo؉fsffI~I9tHL MQ8IMMӋV$E1w H ZML4LLMLI$H~HI$LpM9ID$`LhH DM$MHPDI$DJ\HcJXHIΉI$LD I$HI$HCDM$M$AIxPDICL9ID$`LMCLI$C HHO8IL_@LLLLxLZHxH LHM~L9tәHH "I$u?HeD[A\A]A^A_]DI$HP HI$LHL8HL;L6LILHHH6I{6WfDHDM$HHMB8Ir@IAAD4McLf.DlHpHxLDlHpHx9@LxLALxbAA1IeIeIeUHAWL AVAUATISH8  HH`IIHpHXHhHx1H ԲM H= MۖL1H M H?H=M貖LH M H?H=M苖HpH M H=MH?`Hh1H M H=MH?3kHX1H M H=_MH?>H`1H &M H=;MH?ٕHH OM H?H=M貕LH pM HIHHP@1@H=MvLH tM HH=MHpHHHA1A6nA$ 1`H _M H=M31H wM H=oMӔ I$ DW@ AdAPAZWA$ H`H9HLIH@ H*ADŽ$H AE$H Ht(I$ @ZuA$@ AAA$@ LpL@1M~@LxfH5ML@PHD8ANM~`~h@L@~@ANL@Xf9fGD$@H@fHHH@)ڈf)YHH5=MH@?HHH@H 1HP,Qfo%M8E)eƅ8f1HDž0) (HPH) 8HU$EHPH5Ic$ HH(HI$ .|HHHPHHtSaHP&L@HIL9t˒LHHIL9t诒M$H@LAK 辚LHL0HI9=(L)ƅ>ƅ?tlM?EOA;AC u:E A D?lM$ A %8L0IL9LI7FH0=C u3 @?  I$ M_ML0EOAsAC nE D?A M$ A ;A z?A E@? DA *A h1H MH` H= M1u41HH M H=MЏl H[A\A]A^A_]fH L葘H L(I9l MHH1I)H`IIIHp1IHXIHhHxAIt]It)LEZ\A A 1҄HGLEJ\A AGAA!EHHDJ\AS A AA!EHI9HDZ\A|AAA!EHPH@DH\AAAA!Eu`HBDH\AAAA!Eu9HBDH\AAmAA!EuHBI9PDHt螎I$ DG@AZhAd> A$D H ?MH=xMA$\ pᄌ A1҃@1D!nHxH?afD1҃X H PM H=DM1*A_I$ J@ZC d H LDxH H(DxH9% IHH1I)H`IIIHpIHXIHhHxAIt_It+LEZ\Ay A;E1EHGLEJ\AA AE!HEHDJ\AAAE!EHH9HDJ\AAAE!EHPH@DH\APAAE!Eu[HBDH\AAA'AE!Eu4HBDH\A2AAE!Eu HBH9PHxH?H'PPfDzAHHLi8LYHLQPLr@LxLi@HJPLhL`HX3xA{A!FxAA!UxA3A!dA$ 9H`H H`@& H@ A$@ uA$D 1҃1H "M H=VMɉ[ fDz4A@.HLV@H^PLpf.x#A@HL^@H^PLpf.x A@HLV@H^PLpf.zA!ELLMr8IRHMZPMj@MPPLxHhMp@AL`LXDxA@HL^@H^PLpcfxAE!xAE!xA#E!A$@ uA$D 1҃H !M H=UM1ƇHxH?fDELHMh8MPHMXPLp@LxMh@L@PLhL`LXAfELHMp8MXHMPPMh@L@PLxLhLp@LXAL`f.ELHMh8MPHMXPLp@LxMh@L@PLhL`LXAXf.AzA@IL^@H^PLpAzAE!z=E8HLQ@HYHLpHH`IIHpHXHhHxfzEHLY@HYHLpxEHLY@HYHLpzAdA!xEHLQ@HYHLpHHLq8LQHLYPLi@HHPLxLhLp@HXL`@xfEaHLY@HYHLpAbHLLi8HAHLQPMs@LxLi@IKPHhL`HX@1HHLq8LQHLYPLi@HHPLxLhLp@HXL`@AzAA!f.zA@HLV@H^PLpf.1H ǝMIM9$@ 1 H=lM?rfzAE!%A$@ uA$D 1҃@1H 1M H=M؂j x1H@@I9$@ H M H=M1葂Dx@1҈xHI9$@ H M H=pMAz;MMII8MYHIAPIRPMi@HxMr@LhH`HXDHHLq8LIHLQPLi@HJPLxLhLr@HXL`AzfEaILY@HYHLpAAzZIHF@H^PHpDaIILi8LQHLYPLr@LxLi@HJPLhL`HXAzMMMh8MXHI@PIRPLxMr@Mh@LhAH`HXEELHMh8MXHMPPLr@LxMh@LBPLhL`LXABA\II$ Iw(HHHHH5bxeiLHHƅ>IL9艀ƅ>}DHH`IIHpHXHhHxI1`H .M H=,M1H1H DM H=M XI$ DW@U~\5HI$ HHDDLAr(xHHH5bEdHHHƅ>HH9Vƅ>f.ECMIMp8MPHMXPMh@LBPLxLhLr@LXAL`AzIHP@HXHHp1H .MIM9$@ zHHt~I$ >DW@ Ad AZM Ic$D LXDžpMc$ M$ JDD$8HOtmIHK DyyIc$ M$ L vKL+CE$H E$D E$@ DDEVIc$ AEKI$ AED<AE9EBA4AEEIAEEHAEAAA9DBDA$@ @uA$D A1AH M H=ƛM{QI$ DW@^A$@ A$D M$ AHXAx\AP`Hh1H MH` H=M1z1HH M H=lMdzI$ O@dP~f.L(H ƅ8LH)H'^H(tHG(I9tH((jHhM$ 0Hp0AI9>LHHHM$ AƃM$ EH@AdAAZyHpI9LLI$ DpDHELffEIcHDE$@ HD=EE*H*A^hufED=DE*DYE,Ad AZ~fE$X E$\ H*YME$` ADptLD,AAMc$< IkPH=yMf McALxHcI9 fEfEM*D* E^A(ptL,DA)AAD9vEAuAA@EEfEf-B M ME*$D %KH*X AAtSEf(I*^((T.v,,fED(DUA(D*ATDXAVD/wHXDNI$ E$PEID8DIc$ Lk M$ E:DpErEJIc$ Lk M$ E>MFA E$@ A$D AAI$A$\ DDA$H EN$H AD^(AAD<AAD4?E1AD,A~GF CEA9ΉF9`AC DhDxAH=iME9EBC D9ptDxD98DhD`1ɺA9A4zACމD9ABD)BD9vuAʃAA9ECDD9ABD)BD9vNA9A4WACD9ABD)BD9v)A9΍WAACD9ABD)BD9dM$ >AMc$ M$ C\\E$H E$D Mc$ M$ C4EA$@ AACI$ ǀI9A@LLIADME$H ADŽ$H @A@D EVD? EED?DAZPH MH=MH`@HA1D @־ sf.I$ y Ic$@ HXLhHDHHAI iHxHH`IIHEA$ u:It4?t+D8M$ 8D$AƅD$Mc$ 8D$H Mk M$ EECA{Ic$ Hk I$ HAMc$ I$ DžpBfEM*E,HpHIHM$ EJ@Ad AZ AE$@ ffH*XEA*^(unH`D(u Hy$DxfA*$H YM3nDxAYL,D$D8M$EIxhED"kI$HDoDobxDoDojhDoDofEfEfEfEfEfAofsfDfAofsfDfD~Ic$ HHk I$ 9FHFHE1ۉ>Mc$ Mk M$ IAAE$H A$@ A$D A@DIc$ M$ ADGDAk D DAEEMc$ M$ CA$ tMc$ I$ BA$H ~Ic$ I$ HhA$ t ?LDDHIuI}DHDžHDž1HsH{LHH5MLL@H5XnLrLLPHLLF{Ic$ H(HI$ XHLHxHHt>HPCL@HIL9toLHHIL9tkoLHH52MLL@H5LLLLPLLL7Ic$ H(HI$ XHLHwHHt@=HPtH@HHH9tnHHHHH9tnLHH5rMLL@H5LLHHPLLHhIc$ H(HI$ HWLHI"wHHtqH`HxHIHA$ u?0E։f@`H*YGMgLD`D,AAM$ AI$ LcpƀLHIǃ?5@ffEA$@ H*D*A^5gfLc *pLHYD,McLxIHXNM9}%f* Y-WM,HI9NM$ DA$PHAMc$ Mk M$ E7D8E_EwMc$ Mk M$ IAADžpMc$ I$ B8I$ DN@Adt AZYA*ADŽ$H IADN H0HtjI$ ƅ?ƅ>'zI$HzhbM$Ao^hAoVxAoAoAofAofffffDofAsfAfDofAsfAfA~Mc$@ LXID$D8KD Ic$ LPHILk M$ H5}MMGAD9AGH MnAIc$ Hk I$ LH C/H iH(aH I$HL9thLPH5MLI$ L胻H MWA$PL9tVhLPH5MI$HLLHH5MLHLLL葋HIL9tgHPH HH9tgI$HI$ CA|Mc$@ LhIIc$ KDHHk I$ IDqD8DqDD9Ic$ DpLk M$ E9MYMAw(LPL LH5SbLPKHPH AHH9tfLHHIL9tfEEL0HPMAq(HPH5Ҝb]KH 0HPHH9t{fHHHHH9t_f0A$ GA LpAEn1AH M H=RM%e]E$@ ffEH*hE*A^ca8I$L,EAHzhi^M$1fEEodhHfEH`ufEofAsfEfEofAsfEfD~Mc$ IMk M$ 9FMQHA Mc$ Ik I$ H7GA$@ A$H E$D Ic$ M$ AD D9ABADEMc$ I$ BA$ uA$H ~HIc$ I$ Hh $A$  0t ?DLDHIuI}DHDžHDžHsH{LHH5mMLL@H5aLLLPHLLnIc$ H(HI$ wLLLIQlHHt1HPH@HHH9tcHHHHH9tbLHH5ûMLFL@H5*LL0LLPLLLȖIc$ H(HI$ KHLHkHHt0HPH@HHH9tIbHHHHH9t-bLHH5MLwL@H5[LLaHHPLLHIc$ H(HI$ JLHIjHHt0HP6L@HIL9tzaLHHIL9t^aLPH5MLH iH(YH MUI$HL9taLPH5sML]I$ LH IwA$PH9t`LPH5+MI$HL LHH5MLHLLLHIL9ELxLPH5۸MLMIL,JH iH(|XH I$IFH9t_LPH5xMM$ LALLLH IWA$ H9t_HPH5/MM$LHH5MLHPLLLHIL9t[_HPH HH9t?_M$ I$LGLPH5MLqH iH(YWH MWI$(L9t^LPH5fML&HLLȱH MOA$0L9t^HPH5%MM$(HHH5MLLHHPLLсHIL9t<^HPH HH9t ^I$(L0LPH5MLZH iH(BVH MGI$8L9t]LPH5YMLHLL豰H M_A$@L9t]LPH5MI$8LLHH5MLHLLL迀HIL9t*]HPH HH9t]I$8LA$@ LhALcKD/HIDEt,8M$ D8D$AƂ$Ic$ D$ADžpD8I Lk M$ E3ECEKIc$ Lk M$ M/AG1AH Z|M H=~|MQ[I$HhTZM$E1fCodhIfI`ufofsffofsffA~fH*YмMGWM$ Hh,؃AE$@ Ic$ EHk I$ McIDHI8AILvHPD9AGAI Ic$ H5MHk I$ HL)AYH iH(ASH LCI$HL9tZLPH5$MLI$ L詭H MWA$PL9t|ZHPH5ܲMM$HHLHH5βMLLHLL}HIL9t"ZLPH IL9tZI$HI$ DžpCA #?A AAEȈ? I$DiA @ No@@Ic$D NHXLcHIH9DFIIAHXHHIIH9AAAAt`At>AtHXHHHH9IHXHHHH9-HXHHHH9HXHHHH9HXHHHH9HXHHHH9LXDNDALHHHQH9HpLHHpHQH9mHpLAqHHpHQH9IHpLAqHHpHQH9%HpLAqHHpHQH9HpLAqHHpHQH9HpLAqHHpHQH9LAqIHHIH9HcLPHxAƄ$ LIHL,HH5:MH iH(NH I$IGH9tyVLPH5MM$ LLLL]H IOA$ H9t0VHPH5MM$uLHH5ML_HPLLLjyHIL9tULPH IL9tUM$ I$LLPH5+MLH iH(MH MWI$(L9tVULPH5MLHLLBH M_A$0L9tUHPH5MM$(ZHHH5}MGLLHHPLLKxHIL9tTLPH IL9tTI$(LLPH5MLH iH(LH IWI$8H9t?TLPH5ӬMLHLL+H IwA$@H9tSLPH5MI$8L@LHH5cML*HLLL9wHIL9tSHPH HH9tSI$8LD$8LHIuI}HDžADHDžHsH{I$ LHH5MƂLLL@H5QL6LLPHLL ^Ic$ H(HI$ ;LLI[HHt HPL@HIL9tKRLHHIL9t/RLHH5٪MLyL@H5]LLcLLPLLLIc$ H(HI$ :LLIZHHt HP8H@HHH9t|QHHHHH9t`QLHH5ML誽L@H5LL蔽HHPLLH,Ic$ H(HI$ :HHHY.I$HD$8LHIuI}HDžADHDžbHsH{OM$ LHH5MAƆL詼L@H5yNL蓼LLPHLLg[Ic$ H(HI$ 9HLHXHHt0HPdL@HIL9tOHHHHH9tOLHH56MLֻL@H5LLLLPLLLXIc$ H(HI$ 88LLIXHHtaHPL@HIL9tNLHHIL9tNLHH5vMLL@H5LLHHPLLH艂Ic$ H(HI$ i7HHHCWL,H ׺IIIIII5IJI^IdIrIII I)IEIYIuIIHII1IIEIaIuIIIIIII9IMHiII)IIII]IqIIH H I< IX I I I I IBH I!I!H5!HI!Ie!IHw!H!I!I!I!I!IH0"IL"I`"I!I!UHAWAVAUIATISHXL LI LHH.S,I$LuHELE'LHI LEPXSXH\I$ ADŽ$(IK\~`zM$Aq(LL}LHHEPAHLXH}IFH9tJI$I$XLADŽ$`r(茸LHHE@HLXH}INH9tyJA$I HLI sRH}LuHI9MI)IIIAIIIItfItDItL/E}AC AwƃHGLEQAC AwƃHLEXAC AHH0NC wƃHHDbAC AwƃHL(E}AC AFHLEQAC A HI9LEXAC AHpH@HC HVDbAC ALnE}AC AYLNEQAC A0LF EXAC AHF(HC HV0DbAC AHF8I9.Ht.H1He[A\A]A^A_]DM$Ar(D^AH5KLL}KLHHE5>I$(IcD HBPHHHWfHF8ƃI9Oƃ@ƃ@ƃ@ƃ@ƃr@ƃI@ƃ@HƃI9ƃ@I$I DI ͰH1E1AWI$HLAZH=gMYCUI$I M$MEDM$MEHI$HALI$I D~,E&AoN8ofvDffofofs fofs fffffs fŃo~HoffDofDofAs fDofAs fAfDfDfDfAs fEfADoDo^XfDfEofEofAs fEofAs fEfEfEfEfAs fEfAƃtDoNhoffofofs fofs fffffs fffoDfsffI~ID9tHLMH8IMMD^$E1Aw HMNII8MIAM9Mt}ItfItTItBIt0ItIt I>I8I>I8I>I8I>Is8I>Ig8I>I[8I>IO8M9vPI>I@>8I~58I~,8I~#8I~8I~8I~8I~7M9wH}7HPHH7Ht|L;H7MtlM/L7Mt\MuL7MtKIL7Ht;L#H7Mt+M<$Lw7MtM/Lg7LMzLHH@1J2LH@HDžXHDžPI0L9t 7H1[A\A]A^A_]DL]LUIM9HM"HEI9H}H9}H9}LEI@HD~\H6H}LoLmLOMLMILULMKf.LuHELH+MHH)HvT6IFHuHL&LeML$LMI|$HH}HUH}I9%H1Ҿ}Lu듸LmHEML+EIL)Hv=5IELMILUMZL]IzLH}LuH} H1ҾLmIS I? I& fDUH=MHAWI1AVMAUMATIH WMSHHH~ 14IH}HHEH+E1HH WM H=jWM13H}A tHt4HHD[A\A]A^A_]ÐH1Ҿ H=WMI $y H @WM13t"H}HuA I4$H}CHuH+u1H WMHH=WM 1(3H}u`HHDBA AtU1I}H WM H=M12t=H}A HH3>A I}I1I>H WM H=]M1}2<H}EAA IUI>OHJ H4 @UHAVAUATSHH ~ tE1HĀD[A\A]A^]fHHHhPHhxuHHJHHXLGLLMD\LMD`LMDdHXHhHXHlLXMDpHXLHLLoHLpL8D1H WMH=WMD 10IA H XM AD2H=WXMA0LI$L`H0HHI$7HxHpHDžpLLHDžxHDžHDžH=4UM-Aą1HpH qUM H=M1/u+1HxH UM H=M1/t A l1HH UM H=M[/u1HH UM H=rM2/uHHpHXHzHLXMLxDhHXLDlLXMDpLXLA}(HHzHXMIqHhLMZLxMIEHHX=LHLLHLL^D1H TM DH=UM1-A H DUM 2H=UM-uzLIL`H.HHIifDL5-I$ILI$A ,L%-IILA ]IQIHDILIvff.UHAVAUIATISH]HH@HEHEHEHE菟HEH+E1HH TM H=TM1t,H}AHt3-ELH?HuHMLHULMH6LEH=TM)H}AHt,EtH@D[A\A]A^]@1H}H TM H=.M1+u&1H}H TM H=M+tH@A [DA\A]A^]@1H}H TM H=5Mn+u1H}H TM H=&MH+uHMHXHzI$LXH}ME$tLXMLUE$xHXHA$|LXA~(LuA$HXHV@I$LMHM$`MI[I$HHAI$IHVI$ZIIfDUHAVAUIATISH]HH@HEHEHEHEHEH+E1HH SM H=CRM1)H}AHt*ELH诜HuHMLHULMH6LE@H=RMb'H}AHtQ*EtH@D[A\A]A^]@1H}H SM H=M1D)u&1H}H :SM H=M)tH@A [DA\A]A^]@1H}H :SM H=M(u1H}H TSM H=M(uHMHXHzI$LXH}ME$LXMLUE$HXHA$LXA~(LuA$HXHV@I$LMHM$XMI[I$pHHAI$IHVI$ZIIfDUHAWIAVAUATIHSHxHP1ҋxHpD8AwI$ 1҃y@P1H /RM H=cRMV' 1YpDsAv AI$ (H(I$ HHHAkH=JLNcIA@,s qM$ X'I$ LHH%. t.HwYtxEHHHpLLLBPv0腓HLHH`h4HMFL9tS&E_\AtIA A% AAK I$ H HGPfDCHDž)ALLMDžMOxLLhLL&AtHHH=PMp@־ %#H.HLB@I MHz0LO Mi0I LxM9Mu I~HHL&L!E1LLFfDH@`xLA&IH9xI} HHH8HH1&HHHqH;5%tHs0rtt1cuAAEIfvU  & AAE e fiED? vEnwlo,[-pAAEA 2 "fjhf1  kD AAEfDAu*LHDžI&A\ MHLI)I AL=MMIw"bfLII)IM9EMA$8 IIMAr\IzPANM$ LHAL[LAHtHt!HeD[A\A]A^A_]fDM@LLDžLzAtHLM`DžLzfDA sDHpHfHcAhH@HHHHH)HPHDžfHhHdžHI$ HPI$ A$ DB@t AZAdHpLw0L4LLDžLMHLjHL-HIWH9tDAvtpLLDžL H5tKH[u$DžLLH55bHL`H5ItKLuH5e5bLH`H5O5bGHhvLIM$ HPEQPA A AFAv\I$ L͈HAE11jHLLmZH=MMYAHfA DHFPkDM$ A PLABPfD.fDLhLLMQPAr(誇H5/bL{1Ҿ H=MEMpAHIL9tE.DLLM9-LLLL)Mmt9ILCPHAp(H H56/bHI^I9H LHQPLr(҆H5.bL1Ҿ H=EEMHAL9tEuaLCLsIxPw(HwHH5.bD1Ҿ H=DM<HL9tY9HA vnfDHDžh1E_\A2I$ LhLIsPv(…H5 NbL@1Ҿ H=eCMAHIL9I$ DL菁HHhE11AVAHLe^_H=EMLAƅI$ HHA$ xLhIsP~(A$[LAǁl+LAǂjLp YLfAZA`/wV/?Lv5LLALAǃiLp LfAZCX/v(HǀfHǁeHp LfZBP/w\HǂhALAdžk*HdžgLpYLfAZYH//;Lv1LLLpfAAZc@/[/%Lv%LHHpfZi8//-Lv-LH ^HLJHLAǀLAǂWHǀHǁuHdžHLJLAǀHBPYkqwI$ L0~HHhE11SAHL^bAZH=@MA[VI$ DL}HHhE11AWAHL bAXH=1AMAYHhHHAPp(QHH5GhKtV H=>MHHAHH9q!g(((k1Ҿ H=>MHH(H舗H2HHDžHsVIIIIHII.I}II%P IIIfU1HAWAVAUATIH=hMSHHhHu)A$8 tLt'1Hh[A\A]A^A_]fHLepH=BMDH1H AM H=AMR H LiL;-}HC`|tH1H AM~( H=BM1CsLLDC\MM8M9N8EATAbE1IH CM AH=CM1D!M]@M9^@H DM 1H=2DMI!1L1H JDM H=jMIn&1I}Ht1IMPI91H M H=?M IF@H ?M H=T?MHI}@HA1AL L1MVHM9UHH K?M¾ H=t?M1 1M^PM9]PH t?M¾ H=?M1 LMuM$HHA$LIA$HHA$LMQ@M$EnHLLLH豫HL貮LzHI$hL% IILMIA@ fD fDHARD fD1H HHAiEt,A AE1HHD[A\A]A^A_]HML@HELY0LHIHL]HEHEE?HEHEDž@LqLLDž@qLLDž@qLLDž@qLLDž@lqLLDž@QqLLDž@6qLLDž@qHH 2H L(L9$E1ƅjA A!AI$LP|CEEl$\HHD@p(HI9t5L#ET$AuEHAAD$\I9ufDAL AŃA!EMtLH >MD꾸 1H=>M&H]HL5VLf.{DcOcMAI$LPxEF fH n=M H=aK1H Ht MDHA 8MD$(It$0I94IHz@/MPIM)IALMPHHx@IIt}ItfItKIt0ItLILIy@MIIHz@MII Hy@LIH8H@MIMIx@uuLILI{@udL9RI Hy@uQIBHx@uFIzH@u;MJIy@u0MB Ix@u%IR(Hz@uIJ0MZ8Hy@H )@u AuADEl$\HDHD@fmA}AECEII@Hx@IfDžAHH}, H}Lu1HL9LH)HHHsHHt|HtdHtLHt5HtL'A|$uAD$\HGLAzHH0~HLAx;HLAyHLA{HL(A}4HI9HcC\LxH@xIWzMgA|$MWAzaIw ~MG(AxMO0AyIG8I9FH{{NfD1C H ;M H=;M1Jf.HH,H3{ H=[M 1H ;M1҃{ H :M H=:M1xD[ 1H S;M H=u[ME1EDDk 1H :M H=E[ME1ZDs H 69MH=_9MA1҃ 1D!"DC H V9M H=z9MA1҃1D!fML$(MD$0M9I9H@ IAMI)IAHIAH1H~@IIItfItKIt0ItIHIHz@IHI9H@IHI Hy@rHHLIz@]HHL Iy@HHHLI{@3I9HHy@HpH~@ LPIz@HPHz@LH Iy@Hx(H@HH0LX8Hy@I3H@H~@y@t AADžA]AD$\HHDž@g=fDHH}H}L}I9.LIE11HDžH)HDžHHHXHtGHtLAxAX\LgI $DYAAB u Y\IM$AzQB u AZ\IM9E1H}MAHt1H y8MD⾸ H=WML1H u8M H=WMM1L1H t8M H=WMM}ÄLH=g8M(ADžLH=8MADžMAz(w&MAq(wIB(LAZB u AY\Ml$Md$AT$B u A\$\IED@AAB u NX\IMDYAAB u rY\MeM9(M $AqQ AA\MλI@ AD$\LHD  @\HA W A\H8MD$(MT$0M9IHx@IxLH)HIIxMI{@vHHHtfHtKHt0HtHHH1H~@5IHIHx@ HHL Iy@ IHI Hy@HHLIx@HHHHz@L9LIy@L_I{@HOHy@HwH~@LG Ix@yHG(Hx@jLO0HW8Iy@WLH@I{@y@DH 4M 1H=TK4H}HtA (DDžAHfH}HDž)HwfLeLmM9LLL@L)LHHHHHHtvHtWHt8HtI$H@zI\$H H@yHLL@Ax&HL L@Ay%HLL@AzHLL@A{LHH;H@HI9L#L@A|$SLcH[H@{ID$H@xIT$H@z~IL$H@yDMD$ L@Ax ML$(L@Ay^MT$0L@Az I\$8I9hA@\gAB\OAB\MֻF\:HH;H>HYF\A@\@\B\AA\AD$\sAB\pC\ HH;LHAƅA@\MƻaAE\tA\IλfAB\HH;LHAC\B\vAA\AB\L C\AD$\7AB\4AA\pA@\-@\F\AE\NAE1HDžHDžuHH;LHAB\LAC\A@\HLH@LHI9$LHAH)HHHHt{HteHtPHt:Ht%HtLHGA{!EDHy!EDHH0~!EDHLAz!EDHHz!EDHLA{!EDHHy!EDHI9tkH0LPHPLX~!HH EDAz!Hp(LP0EDz!HP8EDA{!EDy!ED~!EDAz!EDz!EDH@I9uHAA\6A\HHHH;LHF\A\HA@\HH;HH>AB\TE1F\LE1HDžHDžLLE1LL51LL%1LL1hLL1LL0^LL0LL0LL0LL0HH;HHAB\BLLo0ULL_0,HtHHG\H@AD$\HL@LHHDžHDžHDžM9gL fDIM9KI]{uLK(L[0M9tIHz@1MQLL)HMMQIHy@HHt}HtfHtKHt0HtLIH8H@MIIHz@LILIx@LIHHx@LILIy@uxLIH2H~@ugM9MIx@uTIJHy@uIIBHx@u>IzH@u3MJ Iy@u(IR(Hz@uMB0Ir8Ix@uHI@Hy@tD[\A;A LEHEIRHEHUHUHHLLL HHzHLOHMIqLHLFHM|IHLHlLYHM\MSLMLIzLH<H{fH@HtL1H M H=N6MM1LH=McADžL1H M H=6MM1_L躟H=M ADžL1H M H=5MM1HH LLL(1L+ IH M H=M1H L(I)IHHF(wMLIDY(AAw1I$Dk(AAwM$Et$(AA&LAH HUHHEHu1H} H=MHEL@ IHHDYA )AC\HA\HuH!^TC\HALL+LL*A\,AC\AG\A\l@\A@\AF\AC\H?!hH=/MADžBH HJ@HUHLJMIqLHLFHMqIHLHaLYHMQMSLMAIzLH1LOHM!L{AG\A BLL)(LHHAIHHH+@1H lMH H=M1L@I9tHHIHuH+u1H MHH=M 1hHUH:HH@H HFM H=M1ZHHu{[H@H+.C\IAG\AF\ AC\A\8C\H#H=1MLHUAHׅuHH}A HtH@H]S"蘚H=MADžiA HI0HeIGHI铯II鍯I閯IgINH-H鿮ff.UH HAWAVAULATILSHhsBLHI9cI{ IFHH)HHIF{ HtxHteHtRHt?Ht(HtHH{ HH{ HH{ HH{ t{HH{ tnHH{ taH9H{ tOHX{ tEHX{ t;HX{ t1HX { t'HX({ tHX0{ tHX8H@{ uDE1LI1H !MD H=.M II~xLNM9$ uMI@MHM$ LWPME$HOPHA$HGPHA$MA(A$I~(A$HwP7A$ L(H1H M HIH=M1#LG1H M HHH=M1HG1H M HIH=M1LGx {IXHVI$ IXDG E$E;MXM$ EQ,E A Aoq8fEvEEoAfAfEofofAs fDofs fAfAfEffs fAAEoEoaHfEfAofEofs fEofAs fDfEfEfEfAs fEfAAAoAoQXfAfofofs fofs fffffs ffAtSEoAoqhfDfEofEofAs fEofAs fEfEfEfEfAs fEfAfDoDfAsfAfH~HD9tHI Hq8HHHAy$E1҃w LLMMILIHxHxLLF#A$HIL9tI$ I$ $YLI]I$MIFI$1f. Hh[A\A]A^A_]AM1A1DHDLXHM^M$ HXHA$PHXLE$THXHA$XLXEH E$E"LXM$ EZ,E=A=AoJ8fvDAoffofofs fofs fffffs fŃAoAozHffDofDofAs fDofAs fAfDfDfDfAs fEfAEoEoZXfDfEofEofAs fEofAs fEfEfEfEfAs fEfAƃtFAoAoJhffofofs fofs fffffs fffoDfsffH~HA9tHMH`L[L9t詊HIMH9t蔊I I "L@H5LLH@HHiI誂H@I L9t2L(H5=LM LuHLLHI^A,H9tL(H5LI L.L`H5DKLHLLL'H`IL$H9t葉L(HIL9tuI I yHOdH\dHTdHLdHdHeHeH(eHEeIWeHdH{eIeHeHGeIheHcHueI~eH;eHdHeH dHdIeIeHdHdIeHeHeIeH#fH5fIRfHHdHcIeIdH8fIwfIfIfH)fHfHeHfH dHfHocHAdItdHgHdHfHbIfHfIdfUFH#w>wc *V\H=L]:f.=B  wC'(uUPH=L]tk!u6H=L]f=D wH=`L]ŃD1H L H=Jх1]DHuV\uH=L]aH= L]L@#tH= cK]4@]H=bK]@3:H=L]@ ]fH1Hy LLLI ED]ÐUHAWAVAUATSHH8H @<H ǂ 4 1Ҁ t"H~`A1ҁzD!1H 1L H=uLXL AA@PHH=bKAąuHH=KށAątH8D[A\A]A^A_]DHc HH H}mH}蜆1=. H=LQH}AHtREA HH=LBAą`HH=L!Aą?H}H 6HEL}HEL9'L)ML5LHHHt{HtIHt!I7HIL9mIuHLBIuHM}L IwHLIwHnLMoL9mvL}ML蹂@L AC@d@Hc HH H}kH}t1=. H=L)H}AHtPEL AB@ZH}Ht EEA5HvaIaIa@UHAWAVIAUATSHH @<H ǂ 4  1H L H=fL諀I C@PLmH=^KO~ADžu!LPH=K2~ADžHĈD[A\A]A^A_]fHc HH H}jH}1=. H=L~H}Ht!OA 느Hc HH H}iH}茂1=. H=LA~H}HtNuI F@Zf.LxH=L*}ADžLH=L }ADžI H}HhH}LeLmM9LLELHEL)HEHDžpHDž`HDžxHELXt/I$DK\EQA{ Aq I\$I9L#At$\DFALcH[{\wtuHLH=L|ZDC\CAA/ v{p lI LI L`kLHXHEHELPXH}HPXHGPI DFXDGXI DH\DO\fDI G@dDLLH=L{_EL$\ET$AA A A|$p I I$I H`iI$HXHEHE$EHPWLEHPD`H0A@PI DHXEHXM EZ\EX\AEIT$pI$8HUHxfLCpH8LEHx|@AM$8LeLpfDL8H]Lp0LeMtL|HhH}蟄HuLeHxL9L)LHEL-LHHH;HHtoHtXHtAHt*HtI4$~\ I\$H3~\U HH3~\ HH3~\ HH3~\s HH3~\HH3~\HH9xf.HsLc~\)It$~\gIt$~\It$~\It$ ~\"It$(~\cIt$0~\I\$8H9xBH3~\u~u$LMHuMLEDL3Lw1H}Ht EzEA]@LeMtLozI I |LmEHILTLMH`L@I$HLAD$PI DPXET$XM AS\AT$\LǁE9pH5aH EHhLLeLmM9 LLH5mLHDž`L)HuI4$~\DGAv ~LH=LAvkALH}vsHsLc^\DKAv u-L_H}u,I\$I9.H3DN\EQAvA uAe~eHpHH(DD0=~wHpHH(0Q~LxH`IHA~LxH`MLAHEH}Htw1H}H tL H=@L1v6H}HuH}H;}KA =HtCwHuH}VH}H7Dn&wAH]1H gL H=LH1&vH}HH}H;}A tHtvH}HuH}HDhvAH`1H UL H=dLH1u$H}HxLmLeMtLCvM9H`H}JL}LI7 CH=L sH}AHuHLeH=Lr/D[\SA^A K{p AI HI H`@HHXHEEHPHOfA ~u"H]HuHHLLqNfD~u$H}HuHHDDL6LqU~u$LMHuMLEDLL\q~u"H]HuHHLLqa~u$H}HuHHDDLNLp~u$LMHuMLEDLLtpY~u"H]HuHHLL&pyfHs~u$H}HuHHDDLKLo)@~u$HUHuHHDDLLto[HDr~u$LMHuMLEDLLoIVfD3;~LpIH(A0Z~u$H}HuHHDDLLun~HxH`LLDDHEHEHDžpHDž`HDžxHEm~u$HUHuHHDDL7LmHDž`~u$LMHuMLEDLLTmgHuH}ZLeLI4$zBH=LmH}AHt pEE~u$H}HuHHDDLHLlI HuƇH}LELI0gDH=LylH}AHthoEXHOIOI"OI0OI>OILOIZOIhOf.UHSHH8 t1tZH[]1҃0 H=LluHHH=L[]kH[]@1҃0 H=PLKluHHH=L[][kf.UHAWAVAUL-JATISH4 = t5vcL-wJ=t%L-pJ=t=L-LH8LEA$0 A$0 H5,LHcHUHuL'H}HH9tiHHpHH9thHPIL9thHIL9thHxHHH9thHHHH9thL0HIL9thL@HPIL9tchLPH0IL9tGhHhHHH9t+hHpHHH9thLHIL9tgL(HpIL9tgL8H0IL9tgLHHIL9tgH`HHH9tgHXHHH9tggHHPHH9tKgLHIL9t/gLHIL9tgLHpIL9tfHHHH9tfHH0HH9tfH}MvL9tfHĸ[A\A]A^A_]DH5J@H5J@H5J@H5J@H5J@H5}~@H5[LL1%@H5LL%=@H5LL%E@H5 LL$-@H5LL$IFI*FH7FHKFHFHFHFHFH8FHEFHFHFHFHGHGH-GHAGHUGHiGH}GHGHGHGHGHGHGff.UHATISH=JaÅt [A\]fDLwH=JaÅuLlH=J~aÅuIc$ I$ I$H Ht?~(99AA1H BK H=uL`cA AEى[A\]DǐUHfHAWAVAUATSHHHP)HDž HDžpDžxHDžDžHDžHDžDžHDžDžHDžH`kHXHPHH9`HpHIHLHHHLfDM&HLL0HpLxI)HtbIHDž1E1HDžHLHL EiHtbA uyHLZHL,HtUbEUpAAYu;MHHuHHAHA MAEzfIL9LPLLMtLaHH9 LH0foNKHDžM|$`HL)PfDLE1ALHDžNI$b>I$U>I$H>I$;>I$(.>I$P!>fvfofI$ I$DžHI.M$` M$ LPI$H ƅXDžhHDžpHxHHDž)HDžHDžHDžDžDžLƅ Dž0HDž8L@LHHDžPXHDžh)p))))HDžHDžDžDžLƅDžHDžHHHDž) HDž08HXhxHDžHDžDžDžLƅDžHDžLLHDžHDž)H`Hh)) )0)@HDžPHDžXDž`DžhLpƅxDžHDžLLHDž)HDžHDžHDž Dž(Dž0L8ƅ@DžPHDžXHDžpxHDž)))))HDžHDžDžDžLƅDžHDž H(H0HDž8)@HDžPXhxUUHEHEELUDžC CH5җHLHL WEDfHCHMk H3HILKI)D{LHC0HIL9. LTCLHHMI)HI~Lk0fls I9t LRJHHHLfH{(I{8I)HCHLHwIL9 LBIHHII)LMD~LkHfElDC8H9tLLIILHMfELK@MDKPI)HC`LHHH9LBLHIMI)LMD~Lk`fElDSPI9tLLIIL,ML(L[XLp ISlHLSf{hH{p9HI$H%HI$HHI$HGI$HGI$(H8GI$PH`GI$xLIHP I$@ HIH I$ HIH I$ HII$ H |II$` LlIH8 I$( HQIHELH>vHMLjH{HH(H DL ƃH LAI\IyxKl_H(H~xLLI~xL@I@L1Ht4LHI@ LHI@HILHI@ƑLH L`=H(LQ=HLB=LL7=LL,=HtHL=HL=L-M@HSHHMRC1HH=KHHFHtM@LIAHHtQ H@LHHHI)IL9sLN|M973H H@HHH)HH9LMl$ M;l$(tMl$(HHEHHtM=HHt<=H@Ht+=He1[A\A]A^A_]f.I}HUwHGHH9IE`xhMUIBH;~IE`xhLE(L(KfHDžHDžwDMLvIBLL92IF`xhI>HGH; IF`xhLwfDL @CME1`DME1DM1 fDLfDH贤HLI)Ht;IHH |H L(I)Htq;IHkx HUx H?HH,H@HIH@LHI)Ht:I]At$pPI$LPLcE6I$LPHNL衠I9L蠯x L莯xp IHL9DvpDA.AH)HLI)Ht:IHL9wH`H@lHH;?DyDALILM HL!߄LDLLLn~LsM7@L@@IL|fDLfDLfDDžHFHHfD8H8HH0-Pc2^2Y2H`H誡H`HhH)Ht8H L蝭xpII$LPILPDDEI$LSM&LHLLAT$HIHPLcHINHLI9WHcI$MLI9/HIHt H9M$L9t IHLdHHH)HtY7HLWIĻIIHH>HIIIf.UHfHAWAVAULATSHXHL)@HDžP>HHHH9H@H IHHHHHH@M'HLL'H@LHI)Ht6IHDž1HDžHDžHLОH LEpHt5A HL螞HL4Ht5ENpAAYuoLHH{HHH@@uHHNHtMAHHBHHtHHHH9LME M;E(tME(HH50HHt'H@Ht'HX1[A\A]A^A_]HK1L5HE1LM1MLaIBLL9IF`xhIHBH;IF`xh"LfDL@C:M1>fDME1DL1fDLfDHL%\NL,@A)LfDLfDHHMHHH)HtB&H(H<x H&Hxp0HHHLI)Ht%IHH@X@LjHLL; I I I I I I I Ip fUHfHAWAVAUATSHHH)HDžHx-HLL9H H@HHHHpHHHI9H;HuL=%L5!1LL%IHtLI@H;j$ID$`|uHLL L(M)IMkLH#I9cfDLMtL#LHL`L9LIL$ LI;L$(tIL$(Hx+HHtv#HHte#H1[A\A]A^A_]ÐLfDI<$ 7H$1LHh$DXpHA  E1EI|$ HhH`1LLX_$H`xpHP  LXMHpL~L@HHL)H I9  Hh1LE1L`#L`H xp  H`HL`HhL)H MtL!L@A fDLHfoKHM\$`HPLX)HHPL(L踓HL?!HDžEWpA tE LE1HPLrHLwHt=!ANp 8 LELL'H`HHH!H`HDžL7Av t E1LGAX LELHHLH qI$HXMIAHhA{pLEڃxpDž HDžHDžIEE1HfDH@HHDžHDžHDžHDžHDžHDžHDžDžI$I$fvHfofI$M$HHHDžxƅDžHDžHHHDž)HDžHDž(HDž0Dž8Dž@ƅPDž`HDžhLpLxHDžHDž))))H@)HDžHDžDžDžƅDž(HDž0H8H@HDžH)PHDž`hxeUUHEHEEDžB LqHxLHIHpILHL1HhHXH{pH HHSk$HI$HP$HI$H5$HI$HhJ&HI$H8/&HxI$hH0&L U1MH=yL{1MH=yLbZ1HHH=~yL<41HH=pyL1MH=kyL1H@H=]yL1HH=JyLIEH@H;fIE`H HpHHhIuxH(1q~pLLU 0I L HAL9IB`HHLH8Ip~pMICH; IF`HHH0Iqp~pHhH{ HH HtH8H HHtL0H HLtHp(jH=xL:DIMxH(EE\HhH(DCllHhIxlH0IlLH8IlLLL+LL HHLHLLLH@LHLLpL-HLMdCLLp1HpH=ȩKuIHHpH;pHH>HHVHtMnBHHFHHtH HHtH`HtpHLL9`f.E1I1IfDLE1ZHLMZHHH9`VNMM4CHLPHP@E1Mu5H HtEHHKJE1LkBLLLKHDž`E1HDžXK< D_A tRAux1LLHHXHPD|EIItNL`K< D_A uHh1LLHALHxpH`tE1DHXAH`AEu;HXHPHHH)Ht uHhHX1L|HXxpIǃuH~ uHhHX1L?HXDppAqIAvHLn~HLI)HtcIt!HH9`-E1kLDH;PAIIII%IIIIEII"I8ff.U1ҾHAWAVAUATIH=iJSHfu*A$8 v"1HĈ[A\A]A^A_]fDI$ HH]uHH=bL$H=cLuH}H="cLsA$8 RTHuH}H]LuL9HDžxHuH` HI93L+A}!uH`Lj|H}LEL9LAy AypHGMI)IAL_A{ A{pHGzIIIIt`It?ItLA ;HAp,Hz HzpHy HypH0~ H~pLAy HAypLAz HAzpL9lLA{ A{pLxuHPz uuzpuoHHy ueypu_Hp~ uU~puOH@ x uExpu?MO Ay u4Aypu-MW(Az u"AzpuM_0A{ uA{pIG8`fDH}WH=nLyA$8 @H}HtRHxHt*L/I]H;HG`n[Jf.{aI$ I;$ tI$ H`Hu"H}Ht1H=wnL QHtLxuHxH`ƂLELuLXLpM9LpIHr(HJ0HhH9IIE1I)IIIA IIIItfItBItLLxIC0Hx L;oHMEIMHxIX0L{ I;WHMEIMHxIr0L^ I;CHMEII9HxLo0ME I;XHLEIM9HxIW0LR I;rHMEIMLxIC0Hx L;oHMEIMHxIX0L{ I;WHMEIL9MIyIYHxIr0Lo0L{0L^ ME IW I;CHMEMQI;@HIr0LEIy H;BHL^ Lo0LEIY(I;CHME MEL{0MQ0I;@HIr0IW LEL^ H;BHLEI;CHMDMq8I~0Lo I;EHMDI@L9MLhIIHMy@HMI9tD]D^H EH ILeH; L&DuDvH H}ƃ HtUHH[A\A]A^A_]fD4 ǃ H}HuH L爓 H=JH=hJDH Lqe@H Lf@H Lf"III$Hff.UH`XHHAVAUATSHHH HtãHǃ H Ht7H HtH HtHh Hx H9tLX LP M9t1f.I<$IL$H9I M9uLP MtLL0 L MIt$L舣Ml$L[MIuLfMeL:MIt$LDMl$LMIuL"MeLM}It$LMl$LMt^IuLMeLMtAIt$LĢMl$LMt"IuL覢MeLzML L MtbIt$LI|$(It$8Ml$H9t47L/Mt/MDI M9SnfDLMuH HtH=IL L HH;M9t/fI}MEL9I M9uL MtLH Ht|H HtkL L M9+MM)IIIH=\A9I IIItvItVIt6Mt$Mt(Anu MLARAn uMLAS@IMt$Mt AnIMt$Mt AnIMt$Mt AnrIMt$Mt$AnuMLARAn .fDIMt$Mt"AnuILPAn }DIMt$Mt AnIM9Mt$Mt An3IMt$Mt AnMt$Mt AnMt$(Mt AnuMt$8Mt AnwMt$HMt An9Mt$XMt AnMt$hMt AnIpM9?L MtLL- 'HIL+[A\A]A^]f.I M9#=fDAIHIIIItvItNMt$Mt@A~DGEFu/MLAQEV EZE^ AuILPf.IMt$MtANQAVIMt$MtEVEZE^A"IMt$MtA~DGEFIMt$MtANQAVIMt$Mt7EVEZE^Au%ILPAN QAV  IMt$Mt2A~DGEFu!MLAQEV EZE^ AIM9Mt$MtANQAVIMt$MtEVEZE^A1Mt$MtA~DGEFMt$(MtANQAVMt$8MtEVEZE^ADMt$HMtA~DGEFMt$XMtANQAVMt$hMtEVEZE^AWIpM9DILQAn vI6LVhDILPAn 8ILR*DMLARAn MLASMLAPAn MLAQILQAn .I6LV DILPAn ILRDMLARAn MLASMLAPAn sMLAQdILPAN QAV I6LV~DI6LVA~ DGEF ;MLAQ,MLAQEV EZE^ AILPfILPAN QAV I6LVDI6LVA~ DGEF NMLAQ?MLAQEV EZE^ AILPfILPAN QAV I6LVDI6LVA~ DGEF ]MLAQNILQAn MI6LV?DI6LVA~ DGEF UMLAQFMLAPAn xMLAQiMLAQEV EZE^ AILPfILPbfILRzfILPAn ILRDI6LVf.I6LVA~ DGEF MLAQMLASILQAn gI6LVYDILPAN QAV I6LVff.UHSHH?HH߾`[],ff.UHAWAVAUATSHH(HHH;@b\`dDD9 A91A¾H=^GL1A#H=GLAL1H GL H=aJA}`1 uxMcLKOICo4@ Co|P GoD D` GoL0Dp KD@H C|H1 CTLD< f H([A\A]A^A_]f.D)ŐHHҋLPTDpfDHLHfL1LOIyDfH58TLHIHDžI)LHDž4AIpHH@) HH@9Dž0HLHDž4ƅ<Džƅ DžJbLMXLfE1LL#HI`HDžLLI(fD))LL&L='HI`IWIw@HHmHHMHI8ƅHL_HMNL9tH5JLWaI`HHHL1fIhHDžH HfL JM M HfLEHHHL(HDž0HDž8HDž@HHDžPHDžXL`HDžhHDžpHDžx]HEHEHEHEHEHEEe9 LADH=BLSHL腾H`H5L$ILHMF1I+O"AI;E{LHHHLAohAxIcIsH^EAwAAC|tst[tCt+tIC|LL`C|LLPC|LLXC|LL@C|LHxA|HA9$HxA|tjHOHA|t[A|HtPHWHGA|t@HwHA|t1LO HC|t"Lg LC|tHLA|u@L4F5qfD HLHsHpHfH J 1H=KJuLLILHGAAGIIIkIIIII2IfDUH HAWAVAUATSHHHLJ\H}HHHELuHL9 LI1E1H)AHHHHthHt7HH>DGAAB A T LII<$DOAOA MAB ADII<$DWAA *AB ADIM9WE}LuAAE1AAE!MtL H >LD1H=?L u A/A1AH=*?L]AąRHHD[A\A]A^A_]DA .AB ADI|$HI|$DgAA AB ADHHyW B ADHH~DGAA BAB ADLIM9I<$D_A9AEApE1҄LA1EE8 AfARALL1H=JLAąLI I8 LH==LAąPA8 LLLHHHH9t-HH)HxHGH9@Ht6HLWHHHH9cL=LLilTHLLLI{DS\A DIM0HXH`HhLPHHHLCLkLM9HAÃAE DH@M9H=HHAF\ IL9,Mu1H HI^P{,1yLS8HS@HKHIsH)IH{PHaHEIeHCAF\YfDHPxADf.L'AT$xADcHPxADf.HPxADf.LLLPr\Mj8IY8MX8KBǂǂǂ\HPH@xt(HBH9HzrHPH@xuLLLPp\MX8IY8Mj8WNULǀǀǀ\mfHPxADf.Hǃ8 1f.AADH9pHL+HLHH߾[A\A]]UHAWAVIAUATSHhH1HHH Ht-I HHH|L#HMtlM,$LMt[M}LMtJILHt:L#HMt*M,$LMtM}LLMtI I 1HI I Idž Idž H9tEIx HH-HL#HMttM,$LMtcM}LMtRILHtBL#HMt2M,$LMt!M}LLMtfIp Ih H1Ih M Idž Idžx L9tUL-*MPI}MM@I`I@M`L9t LmLmL=HM H.IM_@HIOL]~EI_hHEHUHIhEI)EI0AL9t LmLmH5JILxLFHuMLEL LvMiMQ0LEIMa MY(LEIYIQMI}L]HUM>I0MID$LUMIHsI6M0IdžLMIMhoH}L(M`I`I`LULxI8IHICIS@IXIXH9taHufoMMGMIMhMHM(I`AL9tLUIMzMMH}MmL]HUHEK.I(MMd$LjO&IH[IM(IdžM`I-HMMXIXIXHh[A\A]A^A_]UHAWAVIAUATSHhH,HHH HtI HHH|L#HMtlM,$LMt[M}LMtJILHt:L#HMt*M,$LMtM}LLMtI I 1HI I Idž Idž H9t5Ix HHHL#H MttM,$LMtcM}LMtRILHtBL#HMt2M,$LMt!M}LLMtfIp Ih H1Ih M Idž Idžx L9tEL-$MPI}MM@I`I@M`L9t Lm LmL=HM H)IM_@HIOL]~EI_hHEHUHIhEI)EI0AL9t LmLmH5:ILxLFHuMLE L LfMiMQ0LEIMa MY(LEIYIQMI}L]HUM>I0MID$LUMIHsI6M0IdžLMIMh_H}L#M`I`I`LULxI8IHICIS@IXIXH9tQHufoMMGMIMhMHM(I`AL9tLUIMzMMH}MmL]HUHEK.I(MMd$LjO&IH[IM(IdžM`IHMMXIXIXHhL [A\A]A^A_]@UHAVAUATSHHHL' MM,$LMtsMuLMtbM.LMtRMeLMtAM,$LMt0MuLMtM&LLMsHCH;1H0HH{HCHCH9t [A\A]A^]@[A\A]A^]UHAVAUATSHHHL' MM,$LMtsMuLMtbM.LMtRMeLMtAM,$LMt0MuLMtM&LLMsHCH;1H0HH{HCHCH9t [A\A]A^]@[A\A]A^]UHAWAVAUATSHLoL;ot%LMUHGLXL_H[A\A]A^A_]LMHHM)LHHIH9v|LHMLELEHMIIH9OL4LMK<4M9tqLLLLELELsLe~EK4L{EH[A\A]A^A_]@HH9qHu+E1E1MtfAAHI5fU1HAVIAUATISHH Lk0fGGLk HHVHH6HSPH{@HS@I4$IT$Hw6fo ?Jffo3_KHC`HCpCxHMt{ x!C LH"H[A\A]A^]fDH;HtHIIH{ I9t{y H;HtLfUHHHATSHHHǀHQOHH>OHH+OH HLbLgHgLHgHxgLc`HpgHPgH H{@HH HtH{(HtH{Ht[A\]f.[A\]f.UHPHHATSHP HH@ HANH Hx .NH H NH H NH0 H MHh HX MHHMHH`LbLPqfH@efL(H8RfHFfLH3fH'fLHfHfLHeHeLHeHxeLc`HpeHPeH 7H{@HH Ht"H{(HtH{Ht [A\]f[A\]f.UHSHHHH߾ []lf.fUHHHATSHHHǀHALHH.LHHLHHLbLdHdLHdHxdLc`HpdHPvdH H{@HH HtH{(HtH{Ht[A\]f.[A\]f.UHHHAVAUATIHǀSHwH0KI$I$KI$I$KL-M$I$IUI$I9\HLϺLH)H(HHHHtuHt_HtIHt2HtH L HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$HtHM$I$I9\HLϺLH)H(HHHHtuHt_HtIHt2HtHL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$HtH?MuI$M$M$I9\HLϺLH)H(HHHHtuHt_HtIHt2HtHL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$HtHM$I$xI9\HLϺLH)H(HHHHtuHt_HtIHt2HtHL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$xHtH/M$xI$pMmMl$`I9]HLϺLH)H(HHHHtuHt_HtIHt2HtHiL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9L+HAUH(H(VLPHPAPLxHxAQLHARLHASHHPHHH@ RI9kI$pHtH裾M$XI$PI9^HLϺLH)H(HHHHtvHt_HtHHt1HtHH3HH(VLHH(APL HH(AQLHH(ARLHH(ASHHH(PI9HHRH(H(QLPHPAUHxHxVLHAPLHAQLHARLHH@ ASI9kI$PHtHL5I|$@IM4$HtI|$(HtI|$Ht[L0A\A]A^]nfDLHH(APfLHH(APf.LHH(AP&f.LHH(APf.LHH(APf.L+HH(AUf.UH HHAVAUATIHǀSHwH@I$I${@I$I$f@L-GM$I$IUI$I9\HLϺLH)H(HHHHtuHt_HtIHt2HtH L HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$HtH!M$I$I9\HLϺLH)H(HHHHtuHt_HtIHt2HtHL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$HtH蟸MuI$M$M$I9\HLϺLH)H(HHHHtuHt_HtIHt2HtHL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$HtHM$I$xI9\HLϺLH)H(HHHHtuHt_HtIHt2HtHL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9H3HVL(H(APLPHPAQLxHxARLHASHHPHHRHHH@ QI9lI$xHtH菵M$xI$pMmMl$`I9]HLϺLH)H(HHHHtuHt_HtIHt2HtHiL HH(AQLHH(ARLHH(ASHHH(PHHH(RH HH(QI9L+HAUH(H(VLPHPAPLxHxAQLHARLHASHHPHHH@ RI9kI$pHtHM$XI$PI9^HLϺLH)H(HHHHtvHt_HtHHt1HtHH3HH(VLHH(APL HH(AQLHH(ARLHH(ASHHH(PI9HHRH(H(QLPHPAUHxHxVLHAPLHAQLHARLHH@ ASI9kI$PHtHL5xI|$@IM4$HtaI|$(HtRI|$HtC[L0A\A]A^]βfDLHH(APfLHH(APf.LHH(AP&f.LHH(APf.LHH(APf.L+HH(AUf.UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEuHULEHEIH}I7MM)LTH4O :LMM9LLULEoHULUI9t2LLL褯Mu~ELsEH([A\A]A^A_]L舰fDHH9HE1HEHSM9ufL4 f.@UHAWAVAUATSHLLoM9LILuLL)t IeDI_I9H31H= LHHuȾzH}DEAHKL{1HɾHMH=Q L3HUȋmIt$0I;t$8I_HID$0I9]H1[A\A]A^A_]fDIt$0I;t$8H>ID$0jfIt$HI;t$Pt|HID$HfDIt$HI;t$PtnH>ID$H.fDH[A\A]A^A_]@I|$(LfDI|$(LfDI|$@LI|$@L@UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEEHULEHEIH}I7MM)LTH4O :LMM9LLULE?HULUI9t2LLLtMu~ELsEH([A\A]A^A_]LXfDHH9HE1HEHSM9ufL4 f.@UHHHAUIATSHHD'HwHUAD$H;w HHGH{HH;{PtOHWHIuIUHpHCH Hs0H;s8tEH{H>HC0HuHsHD[A\A]]HK@HLHEHs0H;s8uHSH{(?DDHUH+DefDUHAVAUIATSH?H&IEHI](LpI9IH;HIϫMIAI9Mt}ItfItTItBIt0ItIt H;H膫H;HzH;HnH;HbH;HVH;HJH;H>I9vPH;H@-H{$H{H{H{ H{H{H{I9wI}[A\A]A^]ت[A\A]A^]HHtHUHSHHH褪HCCHCHC H[]f.DUHATIHSFHHGHVHWNOYIt$HMT$pL[`HsHI|$PH{PED$XDCXEL$\DK\M9vHSpID$`H9-AoT$`S`MD$pLCpM$LSxM9vLIT$xI9Ao\$x[xI$HLM$M9sM$LM9raAo$Ao$M$LM$HLE$D[A\]f.I$HI$HI$HI$HI$HIL$`HK`It$hHshI|$pH{pID$xHCxI$HI$H@UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEuHULEHEIH}I7MM)LTH4O :LMM9LLULEoHULUI9t2LLL褦Mu~ELsEH([A\A]A^A_]L舧fDHH9HE1HEHSM9ufL4 f.@UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULE%HULEHEIH}I7MM)LTH4O :LMM9LLULEHULUI9t2LLLTMu~ELsEH([A\A]A^A_]L8fDHH9HE1HEHSM9ufL4 f.@HGH;GtHHHGHHHOUHHHSHHyHCH[]Hf.UHAWIAVI1AUMATISHH=TLH8HLM1MH=;L1MH=5LѢ1MH=/L谢H}H=GLAH}D1ʈM{SuAGpA!H}  H} D L5 I<$LM9ID$`LC`HppLLxLEUIt$xLLMHLMUMbM9KIE`H(HL` H}UI@LzH]~EE M]ICL9IE`HPHH}:UH( IH}#H]~M Mp LmIMHAL9IE`LHLTHuH@ H@H]~ULmHUU H2HFL9H}HG`LHLrTLEH I@[H]~]Lm]P taLMMIBL9L]IC`LHLTHMH H@H]~eLme taHU H2HFL9Lu IF`LHLSH} H@H H]~mLmm LkL}L}LLLLLeLeLLLe uU  uwHOH=KaH8[A\A]A^A_]fH8[A\A]A^A_]@L@ LLLERL LLLMMEAD[AEMt$I^Md$HH=Cf.CT{ws LHAPMKADS ALHMfASL9eDMeI]I9]Iߺ?HLM)L5pLHHH?)LHcHMIM$LLL=I9@I7LHMOH~@H9~HMMA@M9AHLMZPMIIGLqPMISI9V~MMwIWH~@H9~HubeLMfLJ@L;JHSH?L_PMCMMPPM3IJI9K%IVMvHPH~@H9~HtHuIH0L9 HHL[A\A]A^A_]D[ECDCALHARMK HHRfDLeIuI;uL&IELuIuI;uL6IEDS EJDK K AC }f.LHLRDMDLIH0L9LLLLII HtHY\I}HtLUHAWAVAUATSHH}HHLmLufHMHCM)LHH9d11HM9JLML}L)HHHMI>H}H9H8HCLEMfHCHsIIM$LUH9LHCIM$HCHsL]H9Mt$LHCM9Md$HCHsLeH9L HCIVHKHsHUH9HHCMFH{HsLEH9LHCHCHsMfM$L]H9iLHMt$M9ffLmMtLHHH[A\A]A^A_]DM $LMH9LHCIHCHsfDLH]`LHE'LH5LH;Ht HE臋HEJ4 LmLuHE~MHsfl fDLH LH9LH9H=qJ|IH;Ht H}HtLfDUHHSH}H(HEH;EtHHƊHH([]@Ht1f.D H ~HH1ÐH L L97LFM9*UIQHI?H)HHLRLELfn]HHfpHHHH<HHHHtoHtHHt!oNHNfofffffofoaHfofffffofoqHfofffffofDoAHfEofDffEfDfAofADoQHfEofDffEfDfAofADoaHfEofDffEfDfAofADoqHfEofDffEfDfAofAH9oYoQHoioyfofoDoIDoYfffofDoDoifEofEoDoyfEofffAoffffffffffffDffAfDfAfDffEfDfEfEffEfEfEfEffEfEfEfAffDfAfAH9fofoLfsHffMffffofofsffffff~I9tBEMXD9ALM9t/APIH9LI9tApMP 9LM9t EH D9AL1]1ÐfDUHAUIATISHcI4$LHH謶)HH[A\A]]InfDUHAUIATI8SHI4$LHHl!HH[A\A]]InfDUHAUIATISHÆI4$LHHC HH[A\A]]IbnfDUHAUIATIHSHsI4$LHHHH[A\A]]I(nfDUHAUIATISH#I4$LHH (HH[A\A]]ImfDUHAUIATISHӅI4$LHHp!HH[A\A]]ImfDUHAUIATISH胅I4$LHH*HH[A\A]]IzmfDUHAUIATISH3I4$LHH'HH[A\A]]I@mfDUHAUIATIXSHI4$LHH L$HH[A\A]]ImfDUHAUIATI SH蓄I4$LHHHH[A\A]]IlfDUHAUIATI(SHCI4$LHH#HH[A\A]]IlfDUHATSHHHG@HKHHQHL$ԃHE~EHI$flLc(Hs LcHHC8Hs@CHC0H[A\]$lfUHATISHHtHtxH)HHwIt{H5$`\cH5`DKH5I,3H5IH5oIH5IH5@OH@U1ҾHAWAVAUATSHH=IH(}QH}H aLeLmM9LLLL5SKL)I${f.L;HAW1Ҿ L|HHLPr(D(H=KAX(DNAA1҃ D!L|uXE_ H=0KA1A!!|u-KH=cK@1҃! {H}Ht~H( [A\A]A^A_]fDM<$LAW1Ҿ L{uI$M$ H=#KM$PDB(Ey(Eb(EXA1A!T{\AOH=9K@1A! %{-A|$ H=YKA1AD!zLcH[{I\$I9t(L#A|$uH([A\A]A^A_]@LmMtL|H(1[A\A]A^A_]I|fff.U1ҾHAWAVAUATSHH=IHHIzH}H 葄LeLuM9u4o !mIM9pI$CuL;HAWD1H rPK H=PKE1{LLP1LAM(As(L]AG(yMH KEH=0Ku¾ 1znDE1H K H==KAA1z;A},[H OK H=PK1Qz[\UH K 1H=Iz L+HAUd PHc L HH lHc LHH XHMкzLvH.I>)HL(zH}H=xHH01[A\A]A^]I^YHlYIYHYIYIYff.L H L)HtI1ҍJH9s?rH9s7DJI9s.DRI9s%DZI9sJH9srH9s DJLI9r1 t@UHATSLeHH Hc LHLWH}HHgH=DKzkH}Ht EIEuMLM~M;AMM)AAM9IIItzItZIt:ItJ IO9NJ IO94J IO9J IO9J IO9J IO9M9ICJ M9ISH M9I{H M9tyIsH M9tcMSH O9tMICJ M9t7ISH M9t!IH O9;HMLH 7KH=IMLEA1A _L]HcH}LHè^I9HH1[A\A]A^A_]H}HH Ht0LUIHvHtH;V ~HvHuL;UtI;R }YME1MK9tIM9K9uOƨHcKxIM MM9|HcCxIHULHMHH[A\A]A^A_]f.UHAWAVAUIATSHHH H H`II)I H I9] O4dIL^I|$HHXH MT$fIAII0IBAAA HMIIItlItPIt4ItAAI0ACACAII0ACACAII0ACACAII0ACACAII0ACACAII0ACACIAI0ACACL9IAIÀAAAAAAAAAA A0A@APA`ApACACACACACACACACL9HH4HXMHI)LI9t6fI@AIt AHI@(It I@@AH0I I LXILuI)IH I9O$IL=\MGIHhI II LMfH IORIMI0ILIAItmItXItCIt.ItIH0WWH0WWH0WWH0WWH0WWH0WWL9Hǀ 0@P`pWWWWWWWWL9dMLhMIOIM)KH}L}Ht#Ix L[LuN I EJHUBtLuNTLEFL `MjA4$I DMDARHL4$D$H0H=%:KRLhALL9mt#DH;HTHH;]uDHhtHhETELXL}AMM9t&I>HoTIL;uuDHXtHXEITEHe[A\A]A^A_]I IIII H)HI9VRH}HxI"xfDHH9]DIL;u2HDHH`H5H=-KP#HEHDžXHDžhHEb1HhHz0RR M16IM!LLHDžhHEH)?HR?H'?fDUH f:J1HAWI׺ AVIAUIATLSLHLFH58Q HHHH9HHH)ʃHtiHtVHtCHt1HtHt 9-uNHA8-H8-uNH8-uNH8-9H8-4H8-uNHH9t[8-uNx-HXu@N{-uCN{-uCN{-uCN{-uCN{-uCN{-uCNHCH9uHLH59JHHMD$L9tUQIVPLL6Ic LPLHI 5:HPHHWHXHtXt=HHH9tPH1[A\A]A^A_]@NH0H5dIHH0E1MV0I~ H8fDhƅjHLp/HHM^PI~@LH fo Iffof>JHh)HDžDž))HHDž`1ƅh)PLH)chH7LLNIc HHI 8LLI$_XHHtLLH0IL9t*OI IIc LHI 8LPHIUHXAH0NHXHPƅhHH)H=H=tHH9tHX@NBHPI/;IO;I ;I;I;I#;IK;H;ff.UHAWIAVAUATSHL@ LH M9t+LH;HCH9MH L9uMH A M@ M Le~H5ŢKHPLpAz@ZH(IEIgfffLK`H5K1)H bAкLuLH5IL#HXHPL H]LPLCLELM9LMLXL]HxHH}LLH@@H}HKH9tLH}IL9tLHpIL9tLL(HPIL9thLA tEM1Ҿ H=KA~d* J IDndA9/yH5%IHZHLH}L[L9tKA u,H5IH$HLH}HKH9tKH5٦IHHL}H}HCH9tKH5IHHLQH}HSH9t_KH5` JHHL%H}HsH9t3KH5vIHtHLH}LCL9tKH5KHHHLH}LKL9tJH5tOKHHLH}LSL9tJH5hOKHHLuH}L[L9tJH5dOKHHLIH}HKH9tWJH5,KHHLH}HCH9t+JH5,OKHlHLH}HSH9tIH5KH@HLH}HsH9tIH5؟KHHLH}LCL9tIH5KHHLmH}LKL9t{IH5KHHLAH}LSL9tOIH5xKHHLH}L[L9t#IA H52IHVHLH}HKH9tHH5;IH*HLH}HCH9tHH5 JHHLH}HSH9tHH5" JHHLWH}HsH9teHH5. JHHL+H}LCL9t9HH5 JHzHLH}LKL9t HH5FJHNHLH}LSL9tGH5IH"HLH}L[L9tGLmIc HEI}EH}HHI 0H}LwKH=KKiDH}AHtELH5IHHLH}HKH9t GH5HHHLFHt:LHH L(4LL(H HH`HtLH(DH(HH}H}HH9tsFH}IL9taFHD[A\A]A^A_]@H I9[tfDo@)ECfIz`FIgfffLmH]q`H 2bL1)H5{DAкFLH5IH4HLH}LCL9tEH}IL9H5]~@H]H5KHHL2H}LKL9@H=NHa]~H5IH==H=&H\$H5PDH=iAIH I;P HwH7HuHUH}IH DQEEAH}AgfffL5#CDH bH(LD)DkdE)DAA1D)AкDMbH01H ^bH IAкA)LwLPLH5IL^LpH3ILLH(LHSHLH}LCL9tCHpIL9tCHPIL9tlCL H0IL9tPCL(H}IL93CfDA F@fDHHLbxI0I0I0I0I0I0I0I0I 1I1H/1IM1I\1In1I1I1H1I1I 2I2I.2I@2IR2Id2Iv2I2I2I2I2I2I2I2I 1I`3H3H/3I0I1I\3HS0H2H2ff.H H9 UHAVAULmATE1SHH rAFH=FKW>MtLEE̅OHH=I&>1H H+ IHL9D HH=QJ=Hc HH u t.LvH>MHDž`1ƅh)PLH)hHWLL:Ic HHI $LLI$DHHt L6LH0IL9tz;Ic LM HI i$LPHI#BHHAD0HǸ_L DpHXHc fDNHXHPƅhHH)H=H=tHH9tHX@N)HPI,I,I~,I,I,I,I,H-ff.UHAVIAUIATIHS:LLHIELk8Lk(HC0S HS C8s/IHtCIL$HtH2HID$([A\A]A^]fH9t1r 9s @DH{(I9t9H9[LA\A]A^]fDUHX HAWAVAULmATISHHH HA$ M$ IH]IHtEHsH}CH{(Hs8L{H9t8H8MtLH8MuIIdžIIIdžM$ I`MPLEHtFH}Hs贏H{(LK8L{L9tn8Hf8MtL@HP8MuMXLIdž`MhMpIdžxIc$ EHI$ !L]H}MHtDL6LLuH-AHEH9I$ L{ HHHuHDHHRHt9r }HRHuH9t;p }HǀLHLuHx(LL{@I$ L`LXMt{DELfLMIMtE9A }MIMuI9tD;@ }HPLHLuHx(LHèEH9]HH1[A\A]A^A_]fLH4I$ LT%Ic$ H}HI$ HULHh`DH}HtH}IMH9<6fDUHHAUIATLeSHHHHHLET,LHHxLE3,AH ROa1HPHH1[A\A]]Ðf.UHAVIAUIATIHS5LLHIELk8HLk(HC0HS HS C8a)IHtAIL$HtHr-HID$([A\A]A^]H9t1Hr H9s @H{(I9t4H4[LA\A]A^]fDUHAVIAUIATISHH HH HHHHHRHtH9r }HRHuH9H0H;p Hx(LLLHHR0Ic H HI 4H HH=H(Ht]HH1[A\A]A^]HDHI HH0H0HIIv&@UHAVIAUIATISHH HH HHHHHRHtH9r }HRHuH9H0H;p Hx(LLLHHb4Ic H HI H HH;H(HtHUH1[A\A]A^]HDHI HH0H0HIIX%@UHAWIAVAUATLpSHHPHHFPH0H8p(,8IT$HPLHpHXHîHH+xH H5AJLDLuLLeHc LmDžLLHH HuHLZ8H}Ht MGPLAx!IHLHHc LHH ,LMI0H}LHtXL HLH IH臌H8HxM_PAC,WH5H~LL H Ix,HLq>H}M]L9t_0H0LL,H H Um HD IH0H}DhIL9t/HpIL9t/L8HPIL9t/Hĸ1[A\A]A^A_]f.H8Hf@Hc LHH H}LHK6ZfDIMIH5HaL肭DIIt'HhH5ILNcfHH5mIL'J L9 II?I>JL9nA HHIHHIHIHHIH8LAHIH!bE11Hy@HyHHE1fE1HESHHIHHIHHHIHuLHIAH^DHGDI>N AM9AADAAfAAIfUHAWIAVAHPAUEATSHHHVPH8H r,HJDr(HHPHXHpLGH(HLpuHH+xH H(H5zJH8H}H0 Ic LeLHI MLMH0I.H}HtrL8HLEMLHDpL LHI H(HHu!HHIHtD;i ~HIHuI9D;o LLW(Ic LHI ]L]H0I-HLLHuDHHRHtD;j ~HRHuL9D;i y$H}Ht+L8LMQPAr(ԤLLHHDLLHL3H}M\$L9ty%H5>aL譣HxLDLLHI83H}L9t*%DDcPM Mt'IuXHsXEM`DK`M MWdLSdEwlDslH0H}HH9t$L(HpIL9t$H HPHH9t$H1[A\A]A^A_]H0$Dh HHP HH@(H5LH5Hu I9gLLLPH@H@(HG$Dh HHP H@$HLHHu I9LLLHHDH8LBPIc@,H=]eILxH5A~ sD'A~p/DDD'NfDA|$ ƅP}A|$pq&tE$D&I$ƅPH=DM&AT$\G\A|$ A|$p/'fLX@AA|$ A$HIDLDHLA6A~ +HAIDLDHLDA~p&tED&IƅPHLJIHHDžH LHH0n(ECL0AdžH0H 近H`ELILoLH`L@LEHLH@@LtsH0H :H`ǀdLLEH`LL8@EH0LL @ʶH8trH0H 轑L`ǀjLLLEsLLL8@EWH0LL(@NL0HL8LH YH`EHIH@'PL8@A$ L@AǃHHH H0HI7&LHL53MIAL9LHIB`HpLHI$ILjM9VIC`HHLI@L9LHIA`H H0HI&H`IEH(L8@tuL0H L诏L`ǀLLLEeLLL0@EIHL@H0@&L1H ۀK H=KMUPA1 H0H FE1E11HLHIML`IĸELLLLL0@EL@@LHH0mHH0H L}XL`ǀjHLHH8EHLPL0@Hw(LgL躑LLI@4LLLHLPHc H L}LHH LHPLMIL|L牅|LxHPHH}Ht[Hc LL HH HuHJH8LADž|L DxH}HtL`H}IL9tLPH}IL9tgH0H ċL`ELILLqLLL0@EULH0H @L0H@IH HPXH0@`H AdHQhH LGpGxH Lǀ襏L HPEIHLHYH}IwH9tGL H LL`EHILQLL M@H ՈLEHIL`L(L@M H LLuL1H@PHxHI'H=(}Ky pL (H LHIvH`IADžEaHL @H dH`ǀjLILLPEH`HPL8@ELL(@H H;LIM IE1E1HL1H+H`IEL0@L0LLuHHt HL^HH0KLAu & Hty1fAf.H *|K H=N|KAE1 \ H H-LhHIHIAEP&HXHHHhDH9H=|K uLc H BXH[A\A]A^A_]LX@ АI$LPED$pE`AH8MEIDH8@LH@E1H8L LH !L81HHII@H=uK% ILP1Ҿ H vKIH=euK1 #II1H AEPL LH@E1H(LH PL(1HHHI@H=uKPGILP1Ҿ H uKIH=tK1F NIt 1I1H uK H=-vK IIHHGPL H`HHEH5eKHH &L@|@L@$@A|$LELhNfDEL$A!A /M$Az!\E$I$L(HD& fDAT$ I$LPAt$p*IDMEH8fLJMMgxLxDAƅ'E1HDžƅ&ƅPHDžHDžHDž8HDž@HDžHDž(HDžHHDžhHDžX"L@A|$ ƅPA|$pA$M$L@&mLL0LX1HALJILH=sKIH߹LwH=sK_HAAD6E\$P)H0H 蛂L`EHILLL8@ADŽ$g=I$L=H}IVH9t+H0H (L`EHIL8LL @ADžd˅ILH}IFH9tH H0HI'M$H`ELLL(L`@LELL8@ADŽ$f#I$L#H}IMH9tH@LJ~ GPL 9A|$ A$HIDLDHLHiAEPL HXL8LHHHLH@1H=qK<J.HLA@PL eHUHPE1TLHH߹LItH=qKAEPL LAHHnHhE1E1HHH1;H`IEL8@ HHl )AEPL y1f fA.H rKH=/rKE1uH H{HHIHQH`AD$PI$EL@@LA@PL IIIII III HI I/HII MIAM9Mt}ItfItTItBIt0ItIt I>II>II>II>II>II>II>IM9vPI>I@~I~uI~lI~cI~ZI~QI~HI~?M9wH}1HPHHHt|L;H MtlM/LMt\MuLMtKILHt;L#HMt+M<$LMtM/LLMzLHH@1JLH@HDžXHDžPI0L9tIH1[A\A]A^A_]DL]LUIM9HM"HEI9H}H9}H9}LEI@HD~\HH}LoLmLOMLMILULMKf.LuHELH+MHH)HvTIFHuHL&LeML$LMI|$HH}HUH}I9%H1ҾaLu듸LmHEML+EIL)Hv=;IELMILUMZL]IzLH}LuH} H1ҾEaLmIWICI*fD18 t@UHAWAVAUATSHH}H H8H}hL}LuM9wLME1L)HHHHtH&I<$ II<$ &IM9lE1LuMAMtL1H cKD⾹ H=`mKH}LfLmL}MM9tuLHx L)H}HHHHt*HtIMygMeI4$~{IM$AxIM9lMtL1H8[A\A]A^A_]f.HH5r1KLII@H;BIG`xYI|$MDM|$ t?I t~I MgM9I<$ tI|$M|$ uH H51LIIAH;ID$`xYIMD uHH51uLIIBH;lVID$`xYIMD CHvH5O1(LIICH;ID$`xYMDf u' uH H+ HHH@EH H; %H LuH}HEEL舓H LHEEjMT$Mt$AzM^A{t2IFx4MfM9M $Ayu u iEH H; lH LeH}HEEL躒H LHEE蜒M u EH H; H LeH}HEEL2H LHEE u 6EH H; 2H LeH}HEEL誑H LHEE茑K fDI? eMgf.AE1f u EH H; H LuHx HEELߐH LHEEH H+ HHHH H+ HHHtH H+ HHHH5YHr1+H0IHFH;"BIG`xYMDDH1H5 1HIHAH;'IG`xYMD=D u EH H; H LuHx HEEL_H LHEEA@L|fDLfDLfDLH'H51HIHBH;tID$`xYMDWHUH LTHUH LHUH LHUH {L u EH H; H LuHx HEELH LHEELH H+ HHH* LHUH KH H+ HHHIHUH sK]LH H+ HHHHUH 1KHXHfHk@UH HAWE1AVHpAUATSHXH8HHUHpLxƅ HDžHDž@HDžHDžHDž(HDžHDžHDž0L9HPZKHMHuHHHfHI9L#A|$:Mu D uHH51LL $LILHI@L9IE`xM]ICH;HIE`xAMp/?YLE@HL@I9:DLpMtLH8L L+ I E1IA$ H0HHAH(A A1H +bK H=ZK;EL8I I HHǁI bǀHHII LuHLEH5CKHѳHDžHHc~,HLL> LL>0OIL9T>pt8L(MMcC,IKD KD0HK9DpуH0A$L/AUHIHPHHHPH(HHPAHH@@u#EIDEuEJDL0E1LH8Isp迹HL(H0I8L8MDIuPLv(EfLH5HC`1҃xH @K H=@K1lnHXHq(>NHH}H"JH萓HL衏H8HHHc HH ܷLPLIHXHtHHH}IL9t~LH}IL9teLHpIL9tILAL8HLfLML;MM)L MAy H}HLaL8I HO H9OEHyLlI Hk I LG L9GIx"lI Hh I HO H9OHykI Ho I HW H9WHzkM Ii I LW L9WIzkM In I L_ L9_twI{~kM Il$ I Hw H9wtPH~WkI Hk I LG L9Gt*Ix1kI Hh I HO H9OL8ILJ LJ I I HHzEǀ HHII L}HLEyH5?'KHJH@HHH51H0H gLLXIAq(JLH5 IrH}MWL9t@@M$XL8 I[PI I{HX\xXH=AK@`@C1ҁ1!H $AK_¸ HHLDH8I$1HH@葘H=ZAKHHL,FLǀdHIEH@HH@H0LFH@HH@jH@LjLMtH0H 1LHHHLELHH@ǀjECHH8L H@@H@sH=@KHHLnDLEHأL @MtH0H L1IHHLEE1E11IHIL8L ILEeH(HLL H@`H=>KMc M CLHEH5#KHHDžQME1r AHH81ǀH0HHH=C:K<H0H8HHƐ貕H=s:KLXHLH8IJ6AMtL HpHzHHdLHEH5"KH踒IL@DC AzP L1 iHHL_gL(I 1fҾf.H=;KH ;KE1 uCPI III!I)IHJII镼I馼IbIkI>IsI~I鳽I/I9IoIyf.UHSHH8 tQ1t H[]@1҃0 H=K[]1҃0 H=K[][H[]ff.UHAWAVAUL-&IATISH4 = t5vcL-g&I=t%L-`&I=t=L-KH(}LEA$0 A$0 H5>KHcHHAiEt,A AE1HHD[A\A]A^A_]HML@HELY0LHIHL]HEHEE?HEHEDž@L#LLDž@m#LLDž@R#LLDž@7#LLDž@#LLDž@#LLDž@"LLDž@"HH H L(L9$E1ƅjA A!AI$LP|CEEl$\HHD@1"(HI9t5L#ET$AuEHAAD$\I9ufDAL AŃA!EMtLøH LJD꾸 1H=JַH]HL5r2Kf.{DcOcMAI$LPxEF fH J H=AI1FH Ht DHA MD$(It$0I94IHz@/MPIM)IALMPHHx@IIt}ItfItKIt0ItLILIy@MIIHz@MII Hy@LIH8H@MIMIx@uuLILI{@udL9RI Hy@uQIBHx@uFIzH@u;MJIy@u0MB Ix@u%IR(Hz@uIJ0MZ8Hy@H JV@AD$\A>@u AuADEl$\HDHD@A}AECEII@Hx@IfDžAHH}ܽH}Lu1HL9LH)HHHsHHt|HtdHtLHt5HtL'A|$uAD$\HGLAzHH0~HLAx;HLAyHLA{HL(A}4HI9H贴cC\LxH@xIWzMgA|$MWAzaIw ~MG(AxMO0AyIG8I9FH{{NfD1C H @J H=aJ1f.HH,Hp{ H= K 1H J蚲1҃{ H 3J H=TJ1mxD[ 1H J H=% KE1:EDDk 1H J H= KE1 Ds H JH=JA1҃ 1D!ұDC H J H=*JA1҃1D!藱fML$(MD$0M9I9H@ IAMI)IAHIAH1H~@IIItfItKIt0ItIHIHz@IHI9H@IHI Hy@rHHLIz@]HHL Iy@HHHLI{@3I9HHy@HpH~@ LPIz@HPHz@LH Iy@Hx(H@HH0LX8Hy@I3H@H~@y@t AADžA]AD$\HHDž@s=fDHH}茸H}L}I9.LIE11HDžH)HDžHHHXHtGHtLAxAX\LgI $DYAAB u Y\IM$AzQB u AZ\IM9E1H}MAHtz1H )JD⾸ H= K荮L1H %J H= KM1\L1H $J H=m KM-ÄLFH=JثADžL H=1J貫ADžMAz(w&MAq(wIB(LAZB u AY\Ml$Md$AT$B u A\$\IED@AAB u NX\IMDYAAB u rY\MeM9(M $AqQ AA\MλI@ AD$\LHD  @\HA W A\H8MD$(MT$0M9IHx@IxLH)HIIxMI{@vHHHtfHtKHt0HtHHH1H~@5IHIHx@ HHL Iy@ IHI Hy@HHLIx@HHHHz@L9LIy@L_I{@HOHy@HwH~@LG Ix@yHG(Hx@jLO0HW8Iy@WLH@I{@y@DH J 1H=zI聪4H}Ht;A (DDžAHfH}HDž)H'LeLmM9LLL@L)LHHHHHHtvHtWHt8HtI$H@zI\$H H@yHLL@Ax&HL L@Ay%HLL@AzHLL@A{LHH;H@HI9L#L@A|$SLcH[H@{ID$H@xIT$H@z~IL$H@yDMD$ L@Ax ML$(L@Ay^MT$0L@Az I\$8I9HYF\A@\@\B\AA\AD$\sAB\pC\ HH;LHAƅA@\MƻaAE\tA\IλfAB\HH;LHAC\B\vAA\AB\L C\AD$\7AB\4AA\pA@\-@\F\AE\NAE1HDžHDžuHH;LHAB\LAC\A@\HLɓH@LHI9$LHAH)HHHHt{HteHtPHt:Ht%HtLHGA{!EDHy!EDHH0~!EDHLAz!EDHHz!EDHLA{!EDHHy!EDHI9tkH0LPHPLX~!HH EDAz!Hp(LP0EDz!HP8EDA{!EDy!ED~!EDAz!EDz!EDH@I9uH@AA\6A\HHHH;LHF\A\HA@\HH;HH>AB\TE1F\LE1HDžHDžLLLLLLLLhLLLL^LLLLLLuLLeHH;HHAB\BLLULL,Ht@HHG\H@AD$\H?L@LHHDžHDžHDžM9gL fDIM9KI]{uLK(L[0M9tIHz@1MQLL)HMMQIHy@HHt}HtfHtKHt0HtLIH8H@MIIHz@LILIx@LIHHx@LILIy@uxLIH2H~@ugM9MIx@uTIJHy@uIIBHx@u>IzH@u3MJ Iy@u(IR(Hz@uMB0Ir8Ix@uHI@Hy@tD[\A;A LEHEIRHEHUHUHHLLL yHHzHLOHMIqLHLFHM|IHLHlLYHM\MSLMLIzLH<H{fH@Ht_L1H /J H=JM1fL聑H=2JADžL1H PJ H=JM1L*H=SJ載ADžL1H qJ H=JM1踋HH LL(1L+ IH ^J H=J1pH L(I)IHHF(wMLIDY(AAw1I$Dk(AAwM$Et$(AA&LAH HUHHEHu1H} H=JBHEL@ IHHDYA )AC\HA\HuHTC\HALLLLA\,AC\AG\A\l@\A@\AF\AC\H?!؎H=JjADžBH HJJ@HUHLJMIqLHLFHMqIHLHaLYHMQMSLMAIzLH1LOHM!L{AG\A BLLV(LHHAHHH+@1H JH H=LJ1rL@I9tHH3HuH+u1H zJHH=J 1HUH:HLjH@H 貈HJ H=2J1蓂ZHHu+ H@H+.C\IAG\AF\ AC\A\8C\H#jH=JHUAHׅuHH}A HṫH@H]跇S"H=J蚄ADžiA HIH;IH鶁IiIIcIlI=I$HH镁ff.UE1HAWIAVIιAUME1ATSHLHH܅HͭLLHHƃ H=f1E1 HHǃ H;f ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( MEHǃ8 L0 Hǃ@ HǃH HǃP HǃX Hǃ` Hǃh Hǃp Hǃx Hǃ ǃ fD Hǃ Hǃ Hǃ Hǃ Hǃ ǃ Hǃ Hǃ Hǃ A`L f1 LmL L HUH}LLh L L ǃ Hǃ Hǃ ǃ Hǃ L( L0 Hǃ8 HǃP LX Hǃ` ƃh Hǃx Hǃ Hǃ Hǃ Hǃ Hǃ @ Le)MHEEE:$HUHuH{HH)HH褂H XpH 1HIĹ蕞$HPL A`AD$PIL$<]AD$DHkkEH H; H HLHx EIHU$LH LeE$H}ƃ Ht܂HH[A\A]A^A_]DH L爓 LH=HH=6HDH L!:H}I}I}I#~ff.UH HHAVAUATSHHH Ht Hǃ H HtlH HtHx HtՁHX Hh H9t轁LH L@ M9t1f.I<$IL$H9艁I M9uL@ MtLlL L MIt$Lh Ml$L;MIuLF MeLMIt$L$ Ml$LMIuL MeLրM}It$LMl$L賀Mt^IuLMeL薀MtAIt$LMl$LwMt"IuLMeLZML L MtbIt$LI|$(It$8Ml$H9t4LMt/MDI M9SnfDLMuH HtH={L L HH;M9t/fI}MEL9I M9uL MtLmH Ht\H HtKL L M9+MM)IIIH=ڀ\A9I IIItvItVIt6Mt$Mt(Anu MLARAn uMLAS@IMt$Mt AnIMt$Mt AnIMt$Mt AnrIMt$Mt$AnuMLARAn .fDIMt$Mt"AnuILPAn }DIMt$Mt AnIM9Mt$Mt An3IMt$Mt AnMt$Mt AnMt$(Mt AnuMt$8Mt AnwMt$HMt An9Mt$XMt AnMt$hMt AnIpM9?L MtL|L-HIL+[A\A]A^]{f.I M9#=fDAIHIIIItvItNMt$Mt@A~DGEFu/MLAQEV EZE^ AuILPf.IMt$MtANQAVIMt$MtEVEZE^A"IMt$MtA~DGEFIMt$MtANQAVIMt$Mt7EVEZE^Au%ILPAN QAV  IMt$Mt2A~DGEFu!MLAQEV EZE^ AIM9Mt$MtANQAVIMt$MtEVEZE^A1Mt$MtA~DGEFMt$(MtANQAVMt$8MtEVEZE^ADMt$HMtA~DGEFMt$XMtANQAVMt$hMtEVEZE^AWIpM9DILQAn vI6LVhDILPAn 8ILR*DMLARAn MLASMLAPAn MLAQILQAn .I6LV DILPAn ILRDMLARAn MLASMLAPAn sMLAQdILPAN QAV I6LV~DI6LVA~ DGEF ;MLAQ,MLAQEV EZE^ AILPfILPAN QAV I6LVDI6LVA~ DGEF NMLAQ?MLAQEV EZE^ AILPfILPAN QAV I6LVDI6LVA~ DGEF ]MLAQNILQAn MI6LV?DI6LVA~ DGEF UMLAQFMLAPAn xMLAQiMLAQEV EZE^ AILPfILPbfILRzfILPAn ILRDI6LVf.I6LVA~ DGEF MLAQMLASILQAn gI6LVYDILPAN QAV I6LVff.UHSHH?HH߾ [] vff.UHAWAVAUATSHHHHH; r\d`DD9| A9K1A¾H=>JrA1EH=mJr ANL1H J H=B&IA}`1s McH7J H JOI8 Ao@ AodP Aot ` Ao|0p I|@H ATHH=J ELLD< fD 1E1!s<% H[A\A]A^A_]ÐD)ΐHHҋLPTDp]fDLLLmL1LIyDfH5JHIHDžI)LHDž4AIpHH@) HH@9Dž0HLHDž4ƅ<Džƅ DžLLIXHMT$L9trrH5X}LI`LHM\$L9t>rI fLL9 QHEI H(HH`HLIHDž0HDž8HDž@HHDžPHDžXHDžhHDžpHDžxMHEHEHEHEHELEEUTL6mH=J$n,SLL<L`MFHHODGAAB A  LII<$DOAQA OAB ADII<$DWAA ,AB ADIM9YE}LuAAE1AAE!MtLl H -JD1H=QJk u A)A1AH=dJiAąLHHD[A\A]A^A_]A &AB ADI|$HI|$DgAA AB ADHHyW B ADHH~DGA|A BAB ADLIM9I<$D_A9AEAvE1҄LA1EE8 AfAZA LLI I8 L̯H=JhAąwA 1H J H=eHj A8 LLLrHHHH9t,HH)Hx(HGH9HtnjHLrLHLL9[H5JJLRHHLLMA{ES\A IMwLXH`HhLPLHHIsMkHI9HAAE DGM9IHHAF\ IL9$Mu1H HI^P{,19hL[8LS@HSHIsI!I7HCPHHMI~I;AF\YfDHPxADfL'AT$xADkHPxAD#f.HPxADf.IMMPAW\Ln8MQ8MX8riALJHPALJALJ\H@xt)HBH9#L8AmHPH@xuHLLPDx\LF8MY8Mj8AxAnAA ǀǀǀ\gHPxADfHǃ8 7f.A 9DA7DL9cI4Ht9IfHCPHAF\ DHuH{PIHIIxAF\fDHHH9HHLMLefHIt`HLH{P)It%HdAF\ 5f.HAF\ DHufDH9IIHf.AHPxADf.HAF\fL1ADž8 L9NfDA1E1H]HUHML}HHHfDHHt/dA DH=gJaAąHHH=H`Aą[HoH=H`Aą:HNnH=J`AąIH 1L-*HI9 uW@LLQH=Hc`I I HHH)HH9LLcHIA LLHUHz \L_H=fJ_H}AHt81EOE;H{PAF\cHH9KP\OAF\0DAF\ LHLPDH\I8LV8IX8AAAAǀǀǀ\hHPx]o^8Ao@AoI8AocAoR8Aou)) )0)@)P)`TfDoN8AoeAoQ8AorEo@8EoK)) )0)@D)PD)`U@Aoj8HDoV8EoXEoa8Eok)+Ao}D)pD)]D)eD)m)){Aoh8HDof8EomEoq8Eoz)+Ao{D)pD)mD)uD)})){AouAo}EoEoJDoDo[)) D)0D)@D)PD)`AoULo#Ao]AoAoJ)pA)#oS)])E)M)A)SACI#\I1\I?\ f.UHAWAVIAUL-ATLSHLL{HX1IU(L+ffLLHǃHbH LHqH@H3H/ LƃHLI6IVHH[A\A]A^A_]I@I3H=¶HH{H{P\L b]H{@ILKIcLL+IL[LILWL~gf.@HGH;GtHHNHHGHp HwDUHHHSHH!HCH[]H fUHGHAVAUIATISH9t~HD2D;v }:HGHH9t#H^HD;p ~iHxHEHE[A\A]A^]f~^HO 1HH9tHZHD;p }+H{HEHDH(t HW Au9r |$[LLA\A]A^]L[HA\1A]A^]f[1A\A]A^]DUHGHAVAUIATISH9t~HD2D;v }:HGHH9t#H]HD;p ~iHxHEHE[A\A]A^]f~^HO 1HH9tHZHD;p }+H{HEHDH(t HW Au9r |$[LLA\A]A^]M[HA\1A]A^]f[1A\A]A^]DUHSHHcLUH(LcOLcGMHcHc(uHHDMI1L1DEIL1}HH1H=вH1EHHH1HH5HLHtHHtoA 1H([]fDH( []ff.UIHG0I)IHAWAVAUATIH SHHHHUHLHGHGHGHG?HGHGLEmHEH}My=H] >HEf/H,H9I|$ HBIXIL$IH9vIHHH9L4LZ1HLVHI4$LMl$H9]ML$LMfDH8tsH(H9]IL$HcLcSLLc[Lc{ HILcCHcSIL1IIL1HL1L1H11IHLHUHuH$Hu8EZHK oIHo[IT$It$H}HH(PMt$(X%]HUHHH9}HHH}YHU1HITIL$ID$HtoE1HuLMf.IHHH LMtDHA01LHIM}LM(ID$H(H9]HH[A\A]A^A_]@I,ML$Ml$MMMtIA01It$M,M,$LuOt\H,H?"ID$0HukID$0LusQnQHTTUHSHHcLUH(LcLcGMHcHc(uHHDMI1L1DEIL1}HH1H=QH1EHHH1HH5@HL}Ht HHtoA 1H([]H( []ff.UHSHHcLUH(LcOLcGMHcHc(uHHDMI1L1DEIL1}HH1H=PH1EHHH1HH5?HLHtHHtoA 1H([]fDH( []ff.UHSHHcLUH(LcLcGMHcHc(uHHDMI1L1DEIL1}HH1H=QH1EHHH1HH5@HLHt HHtoA 1H([]H( []ff.UHSHHcLUH(LcOLcGMHcHc(uHHDMI1L1DEIL1}HH1H=PH1EHHH1HH5?HL<HtHHtoA 1H([]fDH( []f.fHILMtyM MA0(IHt[L@0M1ILHwH9uHI9uAQA9uEA E9CuAAA9CuAQA9S uEAE9CuAAA9CuL@1D HLJtG0 4 8 < HcHE HtHH H4H1fUHAVAULoATSL/HtrIHIMHHw2Hu$AAD$I\$AD[A\A]A^]HtHxSI\$I$ILHLMRM,$H=(aHPf.UfHAVIAUATISHHHHGtOH?H9wDHXSL,I$Ml$HtHLHQ[Ml$A\A]A^]f.1GLIOff.UHATISHHtHtxH)HHw(JLAH9|HHtmHtVHt?Ht(HtHH9|HH9|HH9|HH9|HH9|HH9|t}L9tpLJJ9|tlLRDJ9|tVLZDJ9|tHHJDH9|t:LJJ9|t-LRDJ9|tLZDJ9|tHDH9|u1øÐfDUHHSH}HHXH}HuH9^H{HHH)HHHWH{HHtnHtZHtBHt*HtHZH{HZH{HZH{HZH{HZH{ttHH{tgHBH9HZ{tPHZ{tFHZ{tHL賜H8DLHLKIH5JHHL?H8DLHHL{M,L9tv>LLL+McL M9uHHH+1L9¾H=J;H }D0HE(E(D\@ D D fDn< fDn4 fDn8 fDn0 E\E^A(eHHXfEbfEb~xHffElD~L HPHD~(D~H`DM=H]IM1ILEH{HKHCHIL)HH}LIHAHMH5MItUIt)MH 1LLELL)HHH]HI7H HLL)LEHHsH1MIH 1M)LHLCLLEHVILuMH HML)1LcLLHM)!MHKHSL)M1LLKHI?HKHSL)M1H H{HLIHKM1LHSLHIfH8[A\A]A^A_]M\$@It$HfHDHLLLULE]LELUM0I]M fDHu:LuK LMHLI{HGH+H=Pt 1fDUHSHH7zHt1H[]H}Hff.HGH+H=t 1fDUHSHHyHt1H[]H|Hff.UHSHH/t H[]@HH[]rfUHAWEAVIAULmATISIcHxHhLH`iHEH+EHA9A9 H=JAH}Ht!E;HpL HpLLJ!H}AH/<%A$A$DH}LLMMAz tE H=JH}AHDLI_1Ҿ H=rJeM9M1Ҿ H=^JAH H I!I!!H!H H I!I!I ff.UHAWIAVH}AAUEATISIcHXHUHEH+EHA9A9- H=LJAH}HtEH}L詏H}L$HtwI<$H_H;Ml$`1E9| H=ŨJulA}8tE`AAо H=Ju;I@LH=JuLMM!HX[A\A]A^A_]@HX [A\A]A^A_]@ H=?JrDH}L謎HUHcH4ʃ~tC H=J5H}AHPLI1Ҿ H=¦JII IIIf.UHAWAVL}IAUEATISIcHXH}LHUߍHEH+EHA9A9 H=J[AH}HtzE91A~! H=kJ&LmLL_H}L$Ht-I<$H_H;1A|$p H=ѤJMI@H;NI^`D\E H=Jvuu D[@AAӾ H=nJI9LL膌L}L+}ID9}M9M$ H=JAH}HtELufH5lJLZA@ I LLLoL8H}IuH9tH5lJLLLLoL8H}IL9tH}HL'LeLNH=J`u)HL-H=J? D HX[A\A]A^A_]@ H=7JzDH}LHUHcH4ʃ~  H=JH}AH1'DAAfDL^fD H=J*'DLHg1Ҿ H=ZJ_LL5LcuHUN9$t0 H=NJH}AH1Ҿ H=!JIIIIIIIHIIIIfUHAWIAVH}IAUEATISIcHhEHUEMHUH+UHA9@A9 H=&JAH}HtEH}LH}HHtLM`L;%KLc`{p H=JYM LLkHVLLKm1M$ L9H=J uF}JHEI$LHH=֦JHh[A\A]A^A_]Hh [A\A]A^A_]@ H=JDA$A$DME2$A@H}L蔇HuHcH<΃  H=vJH}AHC49HAIqf.M$LLLxkLx}L0HuM$LkL0fD1Ҿ H=ڠJ}_I:I@I*I"I UHAWMAVIAUIATASHH8Ht1H93¾ H=JL+1A} H=ĥJukMEL bI@LUL9IE`H@HpLH=ѥJDžu EL+H8[A\A]A^A_] fH}DMH}蟅DMHE H+EH=oJHA9D;M H}Ht E;EuH}LGH}HcuL,H L fDH5-+}LE1Ҿ H=hJM]DeI[H;]u,IE`Lh0I LDei}L(fDDeLDeIUHAWIAVIH}AUEATISIcHXHMSHEH+EHA9A9 H=JAH}HtEH}LH}L$HtI<$H_H; I\$`|u` H=ԣJWuSHuLXI \hH@LL(M'7H=JIHX[A\A]A^A_]f.HX [A\A]A^A_]@ H=JDH}L HUHcH4ʃ~tC H=bJH}AHLH1Ҿ H="JUIOIGI?I)I=f.UHAWIAVIAUEATLeSIcHhH}LHU?HEH+EHA9A91 H=J AH}HtELmLLH}LL=I$ILјI$ĘfA HxD[A\A]A^A_]D`Hp1҃xf.IJ@d h1҅VL8H5YJLLp賦HhLPLpL9tX H=J2HIT$H9pBpfDHH1Ҿ H=JIIImIIIIIIHf.UHAWAVAUIATLSLHHH(kHH+H H=OJ"HAHt>E-H=nHIHZH;|6HX`{8 H=?J{< [ H=JH H=JoHLpH59JHL蓤I LH ]NLL9 H=JHpIVH9tH54JLH LM1HK0H9 H=JHIt$H9tLH@>H=ϚJAŅs  H=ךJ"BH(L˖HL̙L蔔HPHPH螖HPL蟙HgHH5JHH0HHH LLL9  H=SJfLH0IL9t t EH(L:H I$LyL謓I$蟓ILp茓I耓 fDA HD[A\A]A^A_]D`fHj1҃xGf.IJd 1҅LH5 JLLcH L4KLL9tp H=JHM\$L9fDHHH[fD1Ҿ H=JuLH52JHL裠H HtJLL9tS H=J"HPHH9 3 A 1Ҿ H=JH.ICIPIIIIIIIIIIH.L HILčH踍4fDA$``A$LDAHxD[A\A]A^A_]DA Ld1҃xf.HAIfE$JAAf.I$8H5HJHHp袛HhHsEHpH9tv H=J!HLCL9p2pfDA$d E$1EA 1Ҿ H={JI5I-I:I:IIIhH3I;Iff.UHAWAVIAUIH}ATISHH8z`HEH+EH; H=JH}AHt!EH cHIHZH; HX`x H=Ju~M LLLEBH}HLDH1H={JH90 Su/M>HLMH=J_H8[A\A]A^A_]H8 [A\A]A^A_]@H;)@Hb1҃x fHHLLLMCLULBIUHAWAAVLuAUATESHHhH}LHxLEDw^HEH+EH H=֓JH}AHt8EH7aHIHZH;HX`D;xt~ H=JuQEH}UH}H5} H=TJwAEt} Hh[A\A]A^A_]@D:ucHh`1҃x f.LUHuLI BL0H}HH=JiLxM+Hh[A\A]A^A_]HuH}\HuH+uH9utb H=YJ|AH}HfHHw H=J:D} 9}~HuLl\LcE LMO9,t0 H=ՒJH}AHoe1Ҿ H=JI8I I I$@UHAWAVAUATISHHhHUHUD}MHMDELMEEH=J}tHh[A\A]A^A_]f.H}HHxm[H}HcEL4Ht7ILjL;-QMn`1ҋMA9| H=tJAu8E@tA`~ H=mJL]L"LL]MQM9=Hx`xHpH=JLMlL8fIM9uLM9HIHLPHZ@H9ZHMIJ@I;JHLIsPHH9LHLoPMLvM9u~|LHHHpLj@L9jHHuHtJLLAL~@L;~HtHI\$H9-L#A|$ uE_LfDA dDDHLxLHDžxHDžHWLH7L誊H=JADžuiH]H5QzH҄HAILjHxL AZH=хJA[zH}HsAH9teEH`}EH H=Jf.A H+fDLL@DL4@ffopfo`$E )])e)}HEEW fEoLH$LfEoOHXHEDP DDHLMLM%LL1H}Ht=uLPLH}HtLjf.fDopfEfDo`$E D)UD)]D)eHE!AO fEo/HP$LfEowHXHEH D(DpHUHU$LH\H}HthuHPHH}HtAHDHP@HAD @׾ H=%JLLuH5OzLLHAMLjHH-A[H=J[H}MVAL9tEtHHL(H=JZADžEH5JL`HHLLH=JH}M^AL9tEH58|L LeH5JLAVHE1LjHALSAYH=JAZH}AID$H9tH}INH9tyEfH5|L聀H5?JLrAVHE1LjHAL̼_H=JAXH}IT$AH9tH}IvH9tEH5S'}LHE1M jHHLjjH H=sJH}I^AH9tEvHH LEH=JWADžBH5JL]VHE1MjHLjjeH H=JH}MFAL9tEHLDL}L+}1Ҿ IH=ԉJH}HtH`LH H}HH0HL HiGLH.H}Ht>DžAH`HtAWHE1LjHHAHDžZH=&JYADžH5-JLHDž}HHLLH=aJH}MVAL9toE\HLwCL]L+]1Ҿ IH=JH}Ht% LLHHELE }LL&HELHH}Ht7DžE1H`HtH5|L|H5JL|AVHELjH AL[H=ӈJA_DH}IT$AH9t.H}IvH9tE H5P|L$|ASH M1jH(AL_AYH=JAZH}MFAL9tEH(H0LiH=JADžvH5|L{H5mJL{AVH0E1LjH8ALܷ_H=ʈJAX+H}ML$AL9tH}MVL9tEH57|L {H5JLzAVH8E1LjH@ALVYH=J^H}M\$AL9tH}IFH9t~EkH@HHLDžDžDH=J6ADž!H5pJLH=JH}MD$AL9tH}MNL9tEjHE1LjHHA[H=JA_TADž?H5ˏJLHDžOuHHLLH=JH}MVAL9tEHE11LHA蹪H=JADžH5|LLtASHMLjA HjAWH H=!J\H}M^AL9tGE4H5JLOtHHLLH=]JH}AIFH9tEjDHAjHLHzHSqAWLILHHjAVHAT脻H H=JLHAIL9tLH IL9tH@L[L9tHH`HH9tH}IL$H9tsH}IVH9taENH5JLipH5JLZpHH5JGpH5JH8pHH5;J%pLH5?^LpjLILjHLAVHATL=H H=xJHHAHH9tLH IL9tpH@HH9t[HH`HH9t?H}Md$L9t,H}MvL9tEA @H=hJA E< E4 LEL EzH=%H跿ADžLdtADHxLHHDž'H=pJYADžH5JHHDžTnHHHLH=oJ H}LCAL9tEH5,|HHDžmLuH5JLmSHE1LjHAL=AXH=oJAY苾H}MNAL9tvH}LSL9tdEH5|HHDžamH5JLRmSHE1LjHAL譩^_H=oJH}MfAL9tH}L[L9tEqH56}HHDžlHIA LjHHZH=ooJYyH}HSAH9tdEHH LHDžH=oJ'ADžH5JHHDž"lPHI1jHALA\H=oJA_̼H}HKAH9t跿ERHHXH`LDžXDž`}H=oJoADžjD`HAjHLHHDž;AZHA[HDžH5J-kHHHLtH=oJH}AHCH9tѾElH5|HHDžjH5JLjSHE1LjHALAXH=oJAYhH}IvAH9tSH}LCL9tAEH5JHHDžDX7jHEHLHA蕫H=oJH}LKAL9tҽEmHLHHDž(H=oJ蚺ADž3H5|HHDžiH5qJLiSHE1LjHAL^_H=oJ1H}MVAL9tH}LcL9t EH5>|HHDž iH5ԃJLhSHE1LjH ALSZH=qoJY裹H}M^AL9t莼H}HSH9t|EH HpHhLDžhDžpBH=aoJ4ADžH5^HHDž@/hH5JLDhhSH ELjH@ALtA\H=oJA_¸H}INAH9t譻H}HCH9t蛻E6H@LcH=oJuADžH5JHHEDplgH EHLALΨH=oJ H}HAH9t EA u@1ҿD=HH oJE.@ EH=J1&L0rH=H袷ADž;A4 A< LAL 9l@HDžHDžPHDžHDžHDžf$)M)UE )EHEfAw fAo/HP$LfAowHEp HX(pHUHULHH}Ht诹QHP1CH`A HLHL+HMLHy2H}HtBH}Ht4twDžAqHLLHL+LMLIyH}HtݸH}HtϸtUDžE1 H=HsADH`Hp{f H=H0AD'HH)HHHHHHHHHHuHHeH]HHHEIIII.HhIH IIIISIwIoIgIMIWIOI6I?I7I9I'HHHoHEv@HG`f.f.UfHAUIATISHH^H+HHGHtnH?H9wcHױHHM~MHI\$flA $I}IuII)H9tHLܸHLIL$H[A\A]]fD1觪UHAWAVIAUATSHIH(HwL'HHM)L)HHH L IL9LHMHUHuHuHMJ(ILhHUHU DO8ABEAJAB IBL9IMMH M)IILIAIIItgItFIt%ILAoEIIAAIUIQAouIIAqMUMQAomIIAiIMIIAoeIIAaM]MYAo]IIAYM}MyAoUIIAQI}IyL9AoMIIA@IPIPEoXEXIhIhEopEpMUMQEoUEQIMIIEo]EYM]MYEoeEaM}MyEomEiI}IyEouEqIEIAL96LKM)IOl0H9t,H)LLEHvHL<HLM2LEMtLLE-LELED~}LmH]I^D}E>H([A\A]A^A_]I M9.Mu&AHEE1Bf.AO,IIDAo<$MHMl$A8ID$I@UHAWAVIAUILATISHH HHGHWHwHEǰIHJHI9KJ<H}nHU1HI}L[0HKHCHtX1LSHHIH LMt1LIIt$LIHLPHtHHA(Ht[A\A]A^]fD8H;LCHpHHpL9tSLKHxLHLSLLLCLAHHCLPH@([A\H(A]A^]@oC@f.UiHAWAVAUATISHHHvH;H1LIIt$LIHLZHt%HHA(HtH[A\A]A^A_]f.8H3HSIHHxH@IFHULLLLIF(AH[H(A\A]A^A_]HL/JIL*f.UHAWAVAUATSH8HGL7HEL9L)ML}E1I^I6HtH=\CLLeLmMtL蚧M9DHfL%@MCsNK=LHAPMADK ALHMfARL9e H8Ic[A\A]A^A_]CL;LuL]MtLL]L]M9AHt-L5MKf.Mt$I^It$HtH=ECL貦LeL]MtLL]YL]M9AHt#L%MsMfL9eI\$I4$HH=Cf.C]KqsLHAPMt?{ LHARDDK Ay{ 9{ DODK CH81[A\A]A^A_]IHtHsL7UHAWAVAUATSH8HGL7HEL9L)ML}E1I^I6HtH=\CLLeLmMtL誤M9DHfL%PMCsNK=LHAPMADK ALHMfARL9e H8Ic[A\A]A^A_]CL+LuL]MtLL]L]M9AHt-L5MKf.Mt$I^It$HtH=UCLLeL]MtLL]iL]M9AHt#L% MsMfL9eI\$I4$HH=ɤCf.C]KqsLHAPMt?{ LHARDDK Ay{ 9{ DODK CH81[A\A]A^A_]IHtHpLGH=IA@UHHHUHEEHxHM~xHxHUHuHH}H}xHMHMHuHuHu)EEEAt@UHMuLMDEuHuH=XFXZf.DUHFHHSHHHHUHHU1H}H=jJHuEE|֞H5H}5FHMLHH}LMfLUH})MI@HUHH|AQLEHhDM~hMHhARHuHEhj)EH}H HthYhH]DH]DH]HH}HtH$@H=1@@H7H.UHAWIAVEAUDIATEaSAHH8I؉4EEIL 1LL(AVDH84HlH=QhJHt1HPDhpDž|LX@DDHDLܜ,H(H`3F9HPLXI]HH8L@~8LDLMfLeLL8LLLHp)]HhH`HE8L8~8L8)E8L8~8L8Lt)M8)UHCATAQD|jH}H Ht+88He[A\A]A^A_]fDHe[A\A]A^A_]@f.IQUHHHE|HUHh~hHhHUxH|HuHxhHh~hHMHhHuDtLpH}HthHh~hH}LhDpI)Eh)M)ULMELME@tÐUHMuLMDEuHuH=FXZf.UHAVLwAUATSL7HtdHHIkIHw*HuAECHLcB"[A\A]A^]HtHxoLcHILLLH=ƩGifUHc1HAWAVAUATSHHLH |IHHlL#M`IET$E1#MuH5gL2GHXL[A\A]A^A_]IM+T$IH5|LFEF EH aLH1-IL9]AH5}|HFIUHpHUHH9HMHxH}L@LLEH0H@@HUHuZFH}IEH9tȇH}LKL9貇EFEH aLH1lIL9]H5|HEIUHpHUHH9<HMHxH}L@LLEH0H@@HUHuEH}IEH9tH}LKL9 @H ( aLH1IL9UH5|H'EM]HPL]HH9HMHpHuHxH}LHH@@HUHuDH}MEL9tJH}HCH9<4EFE7H gaLH1IL9UJH5>|HfDM]HPL]HH9HMHpHuHxH}LHH@@HUHuDH}MEL9t艅H}HCH9sEF EH aLH1-IL9UH5}|HCM]HPL]HH9HMHpHuHxH}LHH@@HUHuZCH}MEL9tȄH}HCH9.貄EF$E)H aLH1lIL9U,H5|HBM]HPL]HH9|HMHpHuHxH}LHH@@HUHuBH}MEL9tH}HCH9EF(EH $aLH1IL9U_H5|H#BM]HPL]HH9HMHpHuHxH}LHH@@HUHuAH}MEL9tFH}HCH9 0EF,EH caLH1IL9uH5:|HbAM}LXL}LM9 LUHHHMHPLHULH@@HUHuAH}IL9t腂H}HH9of.o@)E7foH)MfoP)UfoX)]xfo`)efoh)mfop)uofDo@D)Eox)}fDoHD)MDoXD)]DoPD)U!H="iH|H=iH|H= iH|H=hH|H=hH|H=hH|H=hH|H=hH|H=hH|H=hH|H=hH||H=hHp|H=hHd|H=hHX|H=zhHL|H=nhH@|H=bhH4|H=VhH(|H=JhH|H=>hH|H=2hH|H=&hH{IIH}IL9u,MH}HH9t^I<$H9}tOLWBIf.UHAWAVAUATSH(H_H}HuHHLvHUDHK1HtCHL{(Lk M9MMFMH}LLyttyHKHuI@MtHuLLLUyLUuM)IRI|DyBH(1L[A\A]A^A_]fDLL)H=>H=nmDH(H1[A\A]A^A_]@H_H}H9_t:HLEILx(Lh HMpMMM9LMMF(fDH(H1[A\A]A^A_]f.fUHGHAWAVIAUIATSH(H9LbHN(HLN L:I9IMFMgLLLHMLELM]xLMLEHMLH)HH|HHI9]bH~Hx(HI9HIFHt H}Hx LHEwHuH}uL)HwH| dH~HEHDH(H[A\A]A^A_]e MtLLLHMiwHMȅuL)HH| ȅI9] HLzLX(IM9LIFHt Hp LL]HEwLUL]uM)II| DH{IEIEHH1H([A\A]A^A_]@H(tIH_ LzLc(LM9IFHtNH{ I6rvt>yH(H1[A\A]A^A_]fDH(LL[A\A]A^A_]M)II|DfDLH)HUHAVAUATISHHHIH9L4L{L1HIvLK0HKHCHtb1LSfM3L1HHLMtDHcA1LIItLMuL[LHKLH9t7ILHLMuH;L9tzLcL+[A\A]A^]HLo0HG0MQ7tHtIUHS(HZH蒃fUHAVIAUIATILSHH HHGHWHwHE}tHHHUL1HsIH3J JA~ l~AAEU\CV~~ )l1~ÃV%Q~ k1~@ǍD?~fD^AQAA Ar @DNAAAA @F="d=Q== DDVAAA/A@~)Sw/ fN{ 7ÐA@A N-M~{j~ mjV dv.fD@=T VE+~j~ jDN Ad@AzqE1ۃ~dACDf@ ~>+3~uj~ _jDV Ad-AoE1~dACDÃ@w ~)~j~ jD^ AN1Ae0A}01~A@A1 D^Ap)A|~j~ g~ dU?pE1ۃ~dACDfDA@A D^A>+A~dF d~ d>r~dEÃ~ff.f.f.f.DFAU4 AA~ hE1ۃ~ABÐ~a2 K~ g~AAEDF= =Q=~ h1Ƀ~DfDD^A! AA~ ff.DFA/AAPWF P8Ph@@fDAAN~Z~ ZD^ A99A )~2A AEfDøøøøøøøøøøøøøøøøøøøøø1~*øøøøøøÃ~P~ PDN A)A*4Z~E1~Ã~ 8f~ N1Ƀ~Ã~ 8eQ~8Ef~ CO1~D~ Q1҃~D~ N~AAEf~ P1~Ã~ 8F@~ tfD~ (f.~ pf~ 8f~ 8f~ f~ 8f~  f~ 8f~ NE1҃~ACDøøøøøøøøøøøøøøøøøøÃ~*EÃ~TA AEÃ~TA AEDFA$!A~XF XV ;*T~EÁ~N~N~ NV 2$TT1Ƀ~2ËF=.>=O/=~R~ RD^ A7A*R1~D^A/A0A~Q~ ~QDV A,DA*bQ1~ËN1M2~FW~ 8W~ Eu2A2,>44TQ2d-HQDNA QAPA4PAdAECD@A~R~ jPD^ Ad CAR1~dDVAU&A$A@_~U~ KDV A7AP-E1ہ~ACD=~T~ XSV dBtU1Ƀ~dÁ%18~xQ~ jQDV A8A3Ao8A 3A 7?~* E@DVA^-A-A~}Q~ oQN h*0Q1~D^A@pA~N~ NDN AI3APQ~ EË~Z##@h~^~ TDN A5AP6E1ҁ~ACDËF=I=~NF NV ,+~A AEËF=&=Y~ M~ LDF A+'A*L1Ƀ~D Á~G~G~ ~GDN A2?ATpPE1҃~2ABË~@~M~ MN A1PR~ EËV@[~tP~ fPDF A|1APP~ EDNA@LA~tO~ fOD^ A-APQ1~D@Ë~~TMF DMDN A6A*M~EÁ~OD~AD~ FF 2}TQ1҃~2ËV  @K~A~ 7N 2P1~@ǍD?ËN@k~mM~ _MF =P.=PP~ EA~N~ }M~ d=cNE1Ƀ~dABDFA@A~H~ HDN A-AP J~ EËN~" @~ I~ HF =U:=PGJ~ADD^A6!AA@m~c~ YV @6P>1~DDNAU%A&A~L~ LV x"*NfDD^A&A('A~M~ MDN A"A*G~ADAD~aL~ KDF Ad-ALE1Ƀ~dABA~L~ 0HDV Ad;;AIE1~dABËNr~H~ HDN AA*xf.VM,=~3~ )F " " {#d*1~TDNAAA@~~ DN A.APE1ҁ~ACDÁ~f@~X@~ e=D^ A2AT4H1҃~2DDNAA ~ZH~ LHDF A)A*E1~Á~@~@~ @~ 2TD~2ADøËN] ~ GDN A APfDNAJA ~ CDF Aj.A"~dAAEËN4 ~ IF ==PfDøøÃ~?~ ?F *?Ð~R>~ D>V d{WøÃ~>~ >DV A!A*f.~k>~ ]>~ d$Ã~#>~ >V  *øøÃ~b=~ T=DN Ad8AF1~dDFAA ~ >GF +0~EËV5 ~ 8EDV AAPfDøøD^AA~ _CDN AXAPf.~<~ <D^ AA*øÃ~4;~ &;V dNf.N ~ E~ Pf~9~ 9D^ AdHAD~x;~ j;N >*SF~AAEøøÃ~TEÃ~TEÃ~TE1~DE1҃~*ACD1ҁ~PD1~Ã~8F AV  Y 1~TÃ~9~ +CV   ~2A AEÃ~y8~ FDF A2ATE~2 EÃ~8~ DDN A2ATDFAA5 ~ )CN c0$~ EËF ~ X@DN A 1A$1~ Ã~K8~ lCDN A2ATÐ~8~ C~ 2TC1~2ËFQ ~ U?DF A 2-A"~ AAEÃ~:~ 5ADV A25AT!A1~2DFArA~ <D^ A ,A"~ EËF'~ ?D^ A q-A!~ AAEÃ~T EE1Ƀ~dACDE1~2ACDA,~1~dÃ~B~ BDF AA*%~jB~ \BDV Ad&AD~;~  ;N dEE1ҁ~ACDÃ~I@~ ;@DV AA*j@~A~ AV 1*J?~EÃ~k:~ ]:N d,f~?~ ?~ 3*->~AAEÃ~>~ >DN AA*?1~Ã~<~ ~<~ d"~9~ 9DN AdAOD8u 1ҁ~PD1~PÃXuf1Ɂ~DA4+ATBAdGA;F2242dÃht1~D1~*Ã~29~ $9~ 40x ~EÃ~;~ ;F N 1~døøøøøøÃ~>~ >F 08Xh==^#=P9v 181hAAøøøøøøøøøøÃEËF O~ |=N   1*7N )A IIAA~7~ q8DV AW A ~d EøøøøøøøøøËVo)~ 8DF A#A !~2EAAP=1~E1ہ~PACDÁP3:DNA 4A83Ah3AAAE1Ɂ~PD Ã~2AAEAFA9Auq~T E1~P1~1~PÃtt21Ƀ~TD1Ɂ~DIA*~2A AE1Ɂ~PD Ã*2T5~1/%/AAÃ*i2T#6~y-j-AADøA2AT>8V1112@DCD1~*øøø1~Dø1ҁ~DE1ҁ~PACDRDFAA~ 3DV A0AP3E1ہ~ACD[Ã~9~ 9DF AA*4E1~ACDÃ~5~ 5F dO=7DDNAkA~ 4:N ,_)~dEøø1~PD@øDVAA~ O2N P02~ EËF&Z~ 2~ .P4E1Ɂ~ACDIËF~ o3N *P81~@ǍDøÃ~#4~ 4DV A A*f.~2~ 1DF Adr AD~x4~ j4~ *Ã~61~ (1~ d f~l4~ ^4F dX =[ÐÃ~4~ v4D^ Adg ABÃ~U1~ G1DN AA*71E1҃~ACDÃ~6~ 6V *C11Ƀ~DD^AA~ 0F ==+=P61Ɂ~DIøøø1~PD@1~PD@E1Ɂ~PACDIÃ~1~ 1D^ AKA*(31~Ë~~ 56DN A(AP5E1ҁ~ACDRøø1~TÃ~ 3D^ AgAP/~ EÃ~ 4V !P/~ EËF ~ D^A/AP D1~TDÃ~ Y4D^ A$AP74~ EÃ~*E1Ƀ~TÃ~*AAEÃ~ {1~ vd_1A ADÃ~ W4D^ AAPA4~ EÁ~A AEÁ~ EÁ~ E1~Ã~TADÁ~A AEE1ۃ~TABÃ~*A AE1~T@ǍÃ~ 00~ 7P+~ EÃ~* EAuO~AAEA,1Ƀ~dDÃM,1҃~dDA,~dE1~Ã8uCE1ہ~PACD[à :~ EAut1Ƀ~TDÃXhtP-DNA ,A8,AhN,ADvAE1~2ACDÃ~.~ .~ 2T/1~2DVAA ~ -D^ A #A,DV A $A21҃~ DÃ~L.F <.DN A2yAT .~2AAEÃ~ 0~ /D^ A2AT/1~2DËN~ /DF A "AT 1~ D^AA~ -V $~ EÃ~.~ .F ? ~2AAEÃ4TZd=/(DVA#A-A4AAA41ҁ~DRA*1~2Ã~X*F H*DF AA iAgAYA ~TAAEËN A@ IIAAà  E1ۃ~*ACDATq1Ƀ~dDIA4C1~ËVw~ *&~ $~ EÃ~-~ -N  YXK*4 2IT-~-~-AAÃ1~DË~~ I+D^ A A A M~AAEAT1~dAdA&v++4&dAAÃ**DNAZ*AJ*A .*A@@E1҃~TACDÃ~*AD1~*@ǍD?1~Ã~d EÁ~A AEÃ~ ~$DV AAPÃ~ )N %Pm1~ËV,T@@1~Ã~ (~ P1~T1~Ã~ $N /P6Ã~ &F =u=PwÃÃ~TE1~DFA0AX; AhAPAAEÃ~2 EA2^ATP#V>#/#2@DCDÃ~TA AEÃ~TA AEAd A^(v;#,#4dAAÃÃ~g'~ Y'DV Ad|A:'E1ۃ~dACDE1Ƀ~2ACDÃ~$~ $~ dp$E1~dACD1~*Ã8tX1~D@1Ɂ~PDIÃ~!~ ~!DV AA*à  ~ EÃ~"~ "V d"1~dDÃ~$~  $F *A"~ EÃ~%~  %F d=$1҃~dDÃ~;"~ -"DF AdVA"E1ۃ~dACDÃ~&~ }&F *Ã~M$~ ?$~ *Ã~*EÃ~i"~ ["~ *TA,I~dAAEÃ~* EÃ~*EAT1~dDËv *TDCDË~5~ DF AAAA A AtAA*9N  HHЃ<AdAj$DFAV$AF$A4T$Adà d1~*DÃh=E~A AEËv *AECDÁ~P EÃ~~ DV AAt5A 1~Ã~*A AEÃÃ1҃~dDÃA4~EÃÃ~"~ "DV AA1~d@ǍD1ҁ~PDRÃE1Ƀ~*ACD=b=PN Y!8J!h!DAT(AdA D^AAA4AdË~ \~ v2TAADËv W1*DÃÃÃuYE1~ACDÃ~T EÃ~ s!~ vW!*AAEà * !N ! !EÃ*AAEÃ*:1~2Á~P EÁ~PA AE1~*1~DApA*A2~TEA~*EÃ~*EÃ~EA*e~2AAEÁ~P EÃ2~T EÃ~TAAEÁ~PA AEAA*A2N1~TE1ҁ~ACDÁ~PA AEÃ~AAEA*uC~EA~*AAEÃuj1҃~*DA2aATAdrAܫAug1~PÃu:~2A AEÃ*E1ۃ~ACD1~*ÃuH~TA AEAP1~A*u>~EÃ*~2 EÃ2u"1~TA241~TÃTu#1~2Á~PA AEÃd]u1~PÁP71~Á~P ED^ A , A0pA8AXAh AEA>APiv W8fhWэDR1~TE1ہ~PACD1~PDÃE1~PACDÃDVA0AX$AAADVA A AA*AAEÃE1~PACDÃ~*EÁ~P EA1~Á~PEËF,$T=AAËF,T=AAÃ~*AAEÃ~ JDF AAPD^A`A,8ATÁ~AAEÃ~ DN AAPÃAT|~2EDFA0,AXAA *~EÃ~ m~ DVAdOAA ADÃ~*AAEÃÃÃ~ zV 6PÃ~ ~N cPATe1~2Ã2 Tv 2AECDËF  *p T@DCDAdAAu1~PAP:1~DVA0 AX AAPAAȍDI1~*Ã~TAAEÃ2TDVAAAA2@DCDE1ۃ~*ACDAT21~2Ã~ V NPÁ~P EÃ~ DF AAP1~*@ǍDA2= ATD^AAAEÁ~P E1Ɂ~PD AdAAAP@1~1҃~TDAdRA۵AAPj1~Ã~ CF ==PÃA,u 1~dA4ATEAd ADFAAA4Ad@@΍DÃ~ 9N PmÃ~ EÃ~EÃ~ ~ PBÃ~TAAEÃ~ DF A\APËv,TAAAAD~ AAEDN AA~ v2<TA ADÃ~EÃ~ uDN AAP1Ɂ~D AUA4A*DFAA}A AEE1Ɂ~ACD DNA0AXAAPAECD@AA~*E1ҁ~DÁ~PADÃ~EÃ~TAAEËNA,2T#ÃAAEE1Ɂ~ACDDNAA AA*AAEA,uR1~dÃ~TAAE1Ɂ~D Aut~TAAE1~A4YATAd AM DFAF A9 A4@@ƍDA*u#v2AAEÃA2~  f *W TAAE1ҁ~1~*D^A t Ad A*T ATʍDAT7Ft e V 2E1~E1ҁ~AB1A^A~ EÃAk1~*DE1ہ~ABDN A~APfÃ*p21~TËV *TDÃÃÃANA>~*EÃÃÃÃÃÁ~PA AEÃ~EÃ~*AAEÃ~  ~ ~DNA A*A AE1~@ǍDÃÃÃ*121~T1ÃÃÃAd~AAEÃ,4(Tdv4# dAAA1~*DDVA AA*@@A*uQE1ۃ~ACDAG~dEËN *EA2uN1~TAu%E1҃~*ACDA*u;1҃~DA*upE1Ƀ~ACDAT71~2A2ATjAdAAzAPA2zATAdAzAAPܽÃËvP ,D T5 DCDÃÃÃE1~PACD@ÃÃÃÃø ø 1ø øD^A A, ATw AЍD1Ã~E11øøø DV AAPIËNwX@ HHЃ<Ãøøø1~E1ہ~PACD[111Ã*AAEÁ~AAE1ÃÃAdALAAPÃÃÃÃÃ1øÃÃÃÃÃÃøøËN@ HH׃@ÃAA*D^A2 A2 EÃÃË~0XPAECDRÃÃÃÃÃøÃÃ11ÃÃ1Ƀ~DÃÃÃÃø11~P@ǍDÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃ1E1ҁ~PACDR1ø ÃÃÃÃÃT1~2ÃEÃÃÃÃÃÃÃ*EÃ~ E1ø ø ÃÃÃÃÃÃÃÃÃÃËF,T=ÃÃ1ҁ~PDRø ø øÃTu~2ADÃÃÃÃÃdPۺ11A2DVA A"A*AT@DCDÃø øø ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃø1øÃ~A AEÃdmPËN],QTAAӍDATu/N2@DCDAdu1~DAu1҃~dDAu1~PAPu51~ËNw"@ HH҃ÃÃÃ*AAEøø øøÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃ1øø ø1øÃÃø øÃÃø ÃÃÃÃÃÃøø ÃøÃÃÃÃÃÃÃÃÃÃÃÃÃøÃøø øø Ã1øø ø øÃøø øÃÃÃÃÃøÃÃÃÃøø ÃÃÃÃÃÃÃÃÃÃÃøÃÃÃø ø øøøÃÃÃÃÃÃÃÃÃÃøø ø ÃøÃÃø1øÃÃÃÃÃÃÃÃÃøøøÃÃÃÃÃÃÃÃø1øÃÃø ÃøøÃÃÃÃÃÃÃÃÃÃÃøÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøø øÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃø ÃÃøøÃÃÃø ÃøÃø ÃÃÃÃÃÃÃÃÃÃÃÃ1øøøÃøø ø ÃÃÃÃÃÃÃÃÃÃÃø øø ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøø øÃÃÃÃÃø ÃÃÃø øÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøøøøÃÃÃÃøøÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøÃÃÃÃÃøÃÃÃø ø ÃøÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøø øÃÃÃÃÃÃÃÃÃø ø ÃøÃÃÃøÃÃÃÃÃÃø ø ÃÃÃøøø ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøø ÃÃøø1øÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃøÃøø ÃÃÃÃÃÃÃÃ1øø ÃÃÃÃÃÃÃÃÃøø ÃÃÃÃÃfUHHD@A@M ta fDo5@Lfo@LA@fDo=@LD)uD)})ED;R'DEAt D;BD]At D;Z DMAt D;JMt ;JDUAt D;RDEAt D;BD]At D;Z DMAt D;J$Mt ;J(yDUAt D;R,eHE,HEHEЋU]DHAfo}?Lfo ?LA@fo?L)E)M)]D;R!D]At D;Z DEAt D;B DMAt D;JDUAt D;RD]At D;ZDEAt D;BDMAt D;J DUAt D;R$D]At D;Z(mDEAt D;B,YHEUHEHE]t$H EHMf.fDo%7>Lfo%?>L@fo5B>LD)e)e)u;JE؃t ;BDUAt D;R DMAt D;J}t ;zD]At D;ZDEAt D;Bzut ;r iMt ;J$XEt ;B(GDUAt D;R,3HEHUЋUHE]Dfo>L)MA)])UD;JDUAt D;RD]At D;Z DEAt D;BDMAt D;JDUAt D;RD]At D;ZtDEAt D;B `DMAt D;J$LDUAt D;R(8D]At D;Z,$HEHUЋUHE]fDfDo =L)eA)uD)MD;J}؃t ;zD]At D;Z DEAt D;But ;rMt ;JEt ;B~DUAt D;R jDMAt D;J$V}t ;z(ED]At D;Z,1HEHU{)Ufo%@LDE)])eAt D;BDMAt D;JDUAt D;R D]At D;ZDEAt D;BDMAt D;JDUAt D;RpD]At D;Z \DEAt D;B$HDMAt D;J(4DUAt D;R, HEHujfDfDo?LD)MDE)uD)UAt D;Bu؃t ;rM܃t ;J Et ;BDUAt D;RDMAt D;J}t ;zyD]At D;Z eDEAt D;B$Qut ;r(@Mt ;J,/IELMiDfo-XLA)m)uD;ZDEAt D;BDMAt D;J DUAt D;RD]At D;Z|DEAt D;BhDMAt D;JTDUAt D;R @D]At D;Z$,DEAt D;B(DMAt D;J,HEHuVffoH;L)ufDo5=L)ED)u;BDUAt D;RDMAt D;J }t ;zD]AtD;Zu{DEAtD;Bukut;ru^Mt;J uQEt;B$uDDUAtD;R(u4DMAtD;J,u$HEHUnf.fDo=g=L)EЋ})uD)}t;zuED]AtD;Zu5DEAtD;B u%ut;ruM ;JfDo:L)ufoNII0uIE LUHEHEfo=LfEE1fDoLD)M)}D)EC4tB;4 u$II0uHEHM7fDo*LfED)E1D)]D)UEAtD; u$HH0uIELMfDo%LfE1fDo-LD)uD)eD)mEAtD;u$HH0uHEH}fDo=KLfD)m1)ED)}E 8AtD; :u$HH0uIEL]7fo LfoLf1)U)M)]A4t;4 u$HH0uHEHufo%wLf)]E1)m)eCtB;u$II0uIELEfo5Lfo=LfEE1D)E)u)}C<tB;<u$II0uHEHU=fDo LfE)}E1D)UD)MC tB; u$II0uHEHEfDo>LfEE1fDo%LD)mD)]D)eC4tB;4u$II0uIELUfDo5LfED)e1D)}D)uEAtD;u$HH0uHEHMfo5L)Efo-6LA)u)mG AtF; u$II0uIE,LUfDoL)uй)UD)EA t; u$HH0uHE,HUfDo5~L)uA)ED)uGAtF;u$II0uHEHEKfDo=^L)mA)ED)}C tB; u$II0uHE,HMfDo%LD)}иD)mD)eEAtD;u$HH0uHEHufDo ~L)UAfDo{LD)MD)UG AtF; u$II0uIE*LEQfDoLD)}йD)mD)]A t; u$HH0uIEL]fo%L)Efo LA)e)MG AtF; u$II0uHEH}foLfo5LD)m1)])uE AtD; u$HH0uIE*LMYfo=L)u1D)m)}EAtD;u$HH0uIELUfDoL)Ufo LAD)E)MC tB; u$II0uHEHUfo- L)eиD)m)mEAtD;u$HH0uHEHEifDo |L)EAfDoyLD)MD)UG AtF; u$II0uHEHMfDo%r LD)m1fDoLD)eD)]A t; u$HH0uHEHufo>LD)]E1D)m)]GAtF;u$II0uIELEmfo=L)Ufo-LA)})mC tB; u$II0uIEL]fDo% LD)MиD)mD)eEAtD;u$HH0uHEH}fDo-L)EAfDoLD)mD)]G AtF; u$II0uIELMmfoLD)mй)E)]A t; u$HH0uIELU!fo= L)UAfDo% L)}D)eG AtF; u$II0uHEHUD)MйD)U)EE AtD; u$HH0uHEHED)Eи)M)UEAtD;u$HH0uHEHM<)eA)u)EC tB; u$II0uHEHufo% L)Ufo5 L)e)uEAtD;u$HH0uIELEfDo LD)uE1)ED)MG AtF; u$II0uIEL]TfDo LD)u1)ED)UA t; u$HH0uHEH} fo L)UAD)})E II0tVGAtF;tD)}A)E)UC tB; u>II0uIELUIELMr)eи)u)UEAtD;u$HH0uHEHU-D)EA)M)UII0G AtF; t)}йD)e)U HH0trA t; tfDo5 L)UAfDo= LD)uD)} II0tLG AtF; tE1YHEHEjHEHMPHEHu6fo * Lf)EE1)U)MB tB; u$II0uHEH}fo%Lfo-LfE1)u)e)mBtB;u$II0uHEHUfo=VLfE)mE1D)E)}FAtF;u$II0uHEHMAfDo LfEE1fDoLD)]D)MD)UB4tB;4 u$II0uIELMfDo%LfED)U1D)mD)eDAtD; u$HH0uIEL]fDo5Lf1fDo=L)ED)uD)}DAtD;u$HH0uIE LE8folLfD)}E1)M)]F AtF; u$II0uHEHEfo Lfo%Lf1)m)U)e4t;4 u$HH0uIE LUfo5Lf)eE1)})uBtB;u$II0uHEHuGfDoZLfEfDo LAD)UD)ED)MFAtF;u$II0uHEH}fDoLfEfDo%lLAD)mD)]D)eB t B; II0uHEHUUH-<JhP(fo Lfo LfoLz)E)M)Uu؃t 9r}܃t 9z DEAt D9BDMAt D9JDUAt D9RD]At D9ZEt 9B Mt 9J$zut 9r(i}t 9z,XHE HU.fH EHuHEЋU]ffo.Lfo 6Lfo%L)])M)e;BX%M؃t ;JG%u܃t ;r 6%}t ;z%%DEAt D;B%DMAt D;J$DUAt D;R$D]At D;Z $Et ;B$$Mt ;J($ut ;r,$HEHE@fo5Lfo-Lfo3L)u)m)U;BM؃t ;JDEAt D;B ut ;r}t;zu{DMAtD;JukDUAtD;Ru[D]AtD;Z uKEt;B$u>Mt;J(u1DEAtD;B,u!HEHUfDoL)uЋufDo%KD)ED)et;ruK}؃t;zu>DMAtD;J u.DUAtD;RuD]AD;ZfDfDoL)uDUD)eD)UAt D;RD]At D;ZE܃t ;B xMt ;JgDEAt D;BSut ;rB}t ;z1DMAt D;J DUAt D;R$ D]At D;Z(Et ;B,IEL]of.Et ;BMt ;JDEAt D;B ut ;r$}t ;z(DMAvD;J,lfo`Lfo%Lfo-Kz)])e)mDEAt D;BDMAt D9J DUAtD9RuoD]AtD9Zu_Et9BuRMt9JuEut9r u8}t;z$u+DEAtD9B(uDMA=D9J,3fo5Lfo=L)Uz)u)}u+DUAtD9RuD]A D9Z fDoWLz@)UfDo VLD)ED)ME؃t 9BuM܃t 9J dut 9rS}t 9zBDEAt D9B.DMAt D9JDUAt D;R D]At D9Z$Et 9B(Mt 9J,HEHUfDEt 9BMt 9Jut 9r}t 9zDEAt D;B DMAt D;J$DUAt D9R(D]AD;Z,cfDoWLfDoYLfDo%KD)UD)]D)e;r}؃t ;zDEAt D;B DMAt D;JDUAt D;RD]At D;ZEt ;BMt ;J wut ;r$f}t ;z(UDEAt D;B,AIELMfDo=CLH}foBLfDo5iKD)})ED)uDAt D;  "HH0uAEML]@fDo LfDoLfDo5KD)MD)]D)u;JDEAt D;Bu܃t ;r }t ;zDMAtD;JurDUAtD;RubD]AtD;ZuREt;B uEMt;J$u8DEAtD;B(u(ut;r,uIELUfDo-LD)MЋ}D)eD)mt ;zDMAt D;JDUAt D;R D]AtD;ZuoEt;BubMt;JuUDEAtD;BuEut;r u8}t;z$u+DMAtD;J(uDUA"D;R,fDo=7Kfo?KD)eAD)})ED;ZE؃t ;BM܃t;J u|DEAtD;Bulut;ru_}t;zuRDMAtD;JuBDUAtD;R u2D]AtD;Z$u"Et;B(uM;J,foKfo KD)eA)])MD;Bu؃t ;r}܃t;z u|DMAtD;JulDUAtD;Ru\D]AtD;ZuLEt;Bu?Mt;J u2DEAtD;B$u"ut;r(u};z,)]fo%$KDMD)u)eAt D;JDUAt D;RD]AtD;Z u|Et;BuoMt;JubDEAtD;BuRut;ruE}t;z u8DMAtD;J$u(DUAtD;R(uD]A D;Z,fo=/Kfo57KfDoK)})uD)E;BM؃t ;JDEAtD;B u|ut;ruo}t;zubDMAtD;JuRDUAtD;RuBD]AtD;Z u2Et;B$u%Mt;J(uDEADUAt D;R*D]At D9ZEt 9BMt 9Jut ;r }t 9z$DEAt D9B(DMAt D9J,H EHUfokKfo KD)eA)])MD;Bu؃t ;r}܃t;z u|DMAtD;JulDUAtD;Ru\D]AtD;ZuLEt;Bu?Mt;J u2DEAtD;B$u"ut;r(u}Q;z,HfDo%K)]DMD)uD)eAt D;JDUAt D;RD]AtD;Z u|Et;BuoMt;JubDEAtD;BuRut;ruE}t;z u8DMAtD;J$u(DUAtD;R(uD]AD;Z,}fo%KD)u@fo=K)e)};BM؃t ;JDEAt D;B ut ;r}t ;zDMAt D;JkDUAt D;RWD]At D;Z CEt ;B$2Mt ;J(!DEAt D;B, HE/HUD)}DU)eD)uAt D9RD]At D9ZE܃t9B u|Mt;Juout9rub}t9zuUDEAtD9BuEDMAtD;J u5DUAtD9R$u%D]AtD9Z(uE9B,fDo5KD)}ЋM)]D)ut 9J u؃t 9r}܃t 9z DEAt D9BDMAt D9JDUAt D9RD]At D9ZEt 9B Mt 9J$xut 9r(g}t 9z,VIELMQfo-K)efocK)m)U;zDEAt D;BDMAtD;J u|DUAtD;RulD]AtD;Zu\Et;BuOMt;JuBut;r u5}t;z$u(DEAtD;B(uDMAD;J,)mfo=KDU)e)}At D;RD]At D;ZE܃t;B u|Mt;Juout;rub}t;zuUDEAtD;BuEDMAtD;J u5DUAtD;R$u%D]AtD;Z(uE;B,fo5K)efDoK)uD)E;Ju؃t ;r}܃t;z u|DEAtD;BulDMAtD;Ju\DUAtD;RuLD]AtD;ZuHsLLkHzMt!IuLI]LzHH[A\A]]Ðf.DUHAUATSHLgMHIt$HMl$LyzMIuHMeLXzMIt$HbMl$L5zMIuH@MeLzMt|It$H"Ml$LyMt]IuHMeLyMt@It$HMl$LyMt!IuHMeLyMH[A\A]]UHATISH_H6K 9-AD$S$8CAD$S%81DC(E9D$EL$ DS,E9EL$DS0E9EL$DS4E9EL$DS8E9EL$DSED$,DKLE9,ED$0DKPE9ED$4DKTE9ED$8DKXE99ftJBI9] 7H0rHD;p 3Et$H$A8`Et$H%A8Mx(A9|$At$ D@,D9At$D@0D9At$D@4D9At$D@8D9utAt$D@ xDH ߝEZAHALLI#wD3H dLLHA^AtA$KXA$v( KTUVA $H[A\A]A^A_]ÐvfD;tfD[k{fDHLLIv$fILLKuf;mfDkfDmfDUH 8HAWAVL5jsAUIATLSLHHiPHr3LH ׁ~ILLK. nDH EZAHALLIlD3H $}LLHW}A^ArAE tf/vKAEH[A\A]A^A_]gfD[ifDILLK'nf[i{fDHLLIn$ftfDlfDi+fDU1H=KHAWMAVAUIATSHHD!A6h1A:JH K H=KjiIEAuH8 N|txtdtLt4t LBB|LLJB|LLRB|LLZB|LLrB|t}L9}LrB|tfMfLB|tWB<LtMINIV|t>I~Hʃ|t0MF HB|t!MN LB|tILB|u| AA)AAAHxAt{AtfAtNAt5AtA HQ|HLqB|LLaB|LHy|HLAB|t{L9LAB|tdMHLB|tUB<LtKMPIHB|t;MXLB|t,IP Lك|tMp HB|tILB|uH4<01@HĨ[A\A]A^A_]Ð f1H ZK H=KfuHH`H@coL`LhLM9LH=KL)HHHHHHHtsHt[HtCHt+HtI${  I\$LAx HL Ay  HLAz FHLA{ HHz HHx /HI90EuMmMEA}AVAA|txtdtLt4tL`C|LHxA|HHHA|HL@C|LLHC|tLA93LHC|tgMQLC|tXC|LtMMYIAC|t=IYLA|t.IQ HA|tIq HA|tIHC|uL4fC*D5H@H}ElLmLeM9gI} MELL)HI8MEHtxHteHtRHt?Ht(HtI8II8II8II8It}I8ItpI8ItcM9I8tQIxtGIxt=Ixt3Ix t)Ix(tIx0tIx8I@uHPfffH}fffXfDAypHH 1H=F^{fDAzprHH 1H=F^KfDA{pBHH 1H=lFs^~fDxKFxpH K 1H=F$^/zpsH K 1H=ݹF]LE1%fA{pH [K 1H=F]fDMjAzpH K 1H=9F@]KH| H,AB|'LNHA|HAxpH K 1H=F\DAypH CK 1H=tF{\fDxtNA5{pVH K 1H=F!\/,1rL\IpI~p HKHcHDH{H{H){HKH%{HKHKHKHKHKH!KHKH_KffGG WHtHcOHWO4G DG(DJDO@DAD)A@AAA8utEtDЙAfAFD_ DO8DWDG,AKEDODEA)ABAAA8u/t+Et&DЙAFD_Eu fAFD_EtDOO0DG$AAEKG1HH9tDH H9uHH9uH8H90@@ǃ@~~FTF\ff.UHAWIAVAAUEATASHHDMA„t}tyQ 1u0E< Au!LzaIL]L5 VIH]ML3H[A\A]A^A_]ÐA@@ t[ 1uAu AuL:ILM L84IH}ML@@A @O@A@e YJ   1EAAHvILEL hIHuI7Lf1ҁAÄhE1DqAg \ S G dE[AI1AE\L cIHuL">IH}LLDQA9 0G1A  A 1AHILENL IHuILE1A{H=]IHuLdQILMH>MU@DAA EP 1AHT^ILEL dJIHuILDAv1AH8IH]L%0IL}HM'@E1A{L5T\IH]L%dQIL}L3M'U@ t^ 1AHU6ILEL -IHuILfD‰A~A1f.DYA]  EwhEvAlDH XHILe L=ILmI$M}0AF~DA*1ALILuNHכILeMI$1EHEL=jILmH IM}HNfDE<1AHl[IHUH5QIH}HH7mDL!^ILM#LJIL]MMBfA6Ah+LĥIH}AHIL]DmLEIIO@L IHuNLwIH}LLf.APAn1ALIH}NLILuLMt@A8A1AJH+IL-2IHMLEL)I$@E1A HXILeL=tGILmI$M}HEH uIH.~ILEHNIA1fE1AL XIHuLDIH}LLeD1EUHILeNL=ILmI$M}-D1EL 2IHuL%IH}LLE"1EAAt LKIH}LIHuLL|@HFIL-JYIHMHUL)H#RfHEL2IHuL5z*ILL0*f.uAt1L%1IL} L-w&IHMM'L)Ad1AE_hAEL5,qIHU7HILuLM"EA;1A\HL%YIL}L-3IHMM'L)1E1Z R Et 1At 1 HEL5.IHIH]L0HcL%UIL}#L-,FIHMM'L)=DHILENL vIHuILHEL=gILmH \}IM}HNH=VIHu#LDILMH>ML^-IH}Ln#ILuLMH1-IH]L%IL}HM'rEGhEk1AYL lIHu7LfIH}LL3] THIH]L%IL}HM'AOh?HVILEL 7IHuILHEL=TILmH :IM}H#E~A)1AqH kIH]7L%WIL}HM'KHdgIL-iIHMLEL)I7%EA1A\DLSUIH}L#/ILuLMz\eH54IL-VIHMLEL)IHILeNL=_xILmI$M}nHEH ÓIHpILEHNIHL!ILuNH}ILeMI$!HEL=ILmH kkIM}HNLsjILu7HbIH]MH1L-vIHMLILML)MLTIH}L4ILuLML QIHu#L7IH}LL[1TLhIH}7L`ILuLM.L%gIL}7L-7^IHMM'L)\HUTIH]L%E3IL}HM'HEL=KiILmH \IM}H7HhMILEL GIHuIL\L%RIL}L-1IHMM'L)WL MIHu%LJIH}LL1H SILeL=/ILmI$M} 1L+ILuHk*IH]MHHMILEL JKIHuI%LHoLIH]L%EIL}HM'LILILuHyGIH]MHjHcHIL-LIHMLEL)I%DED<A~cA1AEGh1E\HEL(IL ILULM @1EAOh1\uH=%IHu Lx#ILuH>Mif3Eoh1EIHEH 'ILwILMHM#Ewh1E H'IH]L%IL}HM't Gz\vH'ILML+IHuILt 1 H5'ILUH=IL]I2I;at uh\Ld'ILuHtIH]MH%t 1 H.'IH]L%IL}HM'\HIL-l&IHMLEL)IL%"IL}L-IHMM'L)\H=&IL]I;zL5xIHUL2GH=#IL]L5 IHUI;L2!HILeL=jILmI$M}H2"ILMLIHuI LL L"IHu LIH}LLHFILeI$L="ILm H ILEM}Im1f1_1X1Q HKHcHDH9FHFHFHHHYGHHHGH?GHGH G1ff.f1 w H Kff.HD7HHHÐHHHHU(ZHHeF Guf(6KfTf.v6H,ffUDFH*f(f(fDTA\fV,fDGfEɍH*D*D(E(D\D\ETETEATEUAVÐUHwB GG(T.v,,f5IT$I4$H>H5KH >HH[A\A]]@LmߺE,L=랐LG1HAIH1u&1H5tǃGt fDqB~PFHQFt@oBu1:"qV\u 1iB4~"jBkBX1Ð:=661 111Ðff.9wtsU1҃HATIH=CKS3¸u9A\$It$H=K2uA|$ID$ Ht1[A\]D1DA|$H K IH=F14t 뷐UHATIHSHH}H =H}HMH?(IoooH)HtI$I+$HHЉ`M$ M+$ILDdI$AI+$HLDhM$8CM+$0IIMDDl)щxpHt4H [A\]fDUHAUIATHuISH`uI$M܉LLPXH[A\A]]ff.@w HlKw H,K w HKjBtt EÃ%9Jff.@%:Jff.@%;Jff.@%L1MtNIL1Ht>L+H1Mt.MuL1MtM>Lr1LMzfDID$I<$11H,IT$ IL$ID$ID$HUHMf}̉AsAǃ]1It$1I<$HIʼnXDx HHLIL Mt8MA9[I Hu!E9H HtA1IHI9tIT$H}LMMt$(3HuIdHHH9H<H}0HU1HI+MD$0IL$ID$Hte1LMDIHHH LMtDA1LII4LMuMT$LIL$LH9I HLMu@I<$I9t/H1M|$IM4$H4M6MMMT$Ml$MUMtAB1It$M,M$ILmM(ID$HH  H([A\A]A^A_]LH /H M4$M6MM{M3HMuI0L.ID$H fHID$0Mt$0M-(DCUHAWMAVIAUATSH` Lci4HcY8HcGu HH?HHIA~`IH[A\A]A^A_]MfhLEL&LI1Ic<$LI Ic|$LHIc|$LHIc|$LHIc|$LHIc|$LHIc|$LH{Ic|$LHkHM9tIH[A\A]A^A_]DLEIff.UHHHAWAVH}AUATSH8\5HELuHEI9JAL=*KILjHZI9PMM9hIsHI{8LNAS(MJWIc QII?LH=H>H9<LH?H=IH9LɿH?H=M AI9A@HHHHHHHuLHHHuLHHHtLAAL1HHHHHHHuLHHHuL1HHH@HI9vH LYPMtIc{,MMAE1fDHMALAA6 HHIHHIHLHIHLȿHIH3AfHHIHHIHLHIHLȿHIHfDM9}+Is@MDxDIs@MfDJIs8@MI>JL9LH?H>MAI9AHHHHHHHLHHHLHHHofDIsHH0DI>NAM9uAGfA(I?J<L9gAAIL9uHE1HE+fDIs@HvDHEHEHtH(H8[A\A]A^A_]1H=UHAUIATSHHHPH=ȊK%AątHeD[A\A]]@H1H5L1)1ҾH=KHI&uHLS8L[0A E E AARIM AS{C(XDZHe[A\A]]ÐHeA[DA\A]]ff.UHAWIH=vKAVIAUMATA1SHHHw%u5I_HDLH=͉K~$…uAG(AIO0IMH[A\A]A^A_]UHAWIAVIAUATIH=_KSHHh1҃9L`$I\$HHH50~1Hn(1ҾH=pKHHE1$ML$8ET$(M|$ LhEIVE^HE:AKeAd|t{AtSt?t+t`Hp|tEHL@B|t6LLpB|t'LLHB|tLLPB|DLF4DfAMt IELPHĘD[A\A]A^A_]fDLPB|tIJLЃ|t<HtIzIB|zIrH|hMB HB|UMr LB|BILB|/LA9sAH=K"IcAt$L IFMσAo)MAoW)UAo_ )]Aog0)eAoo@D )mu,At9HcELK1K4EAK fDELōKAv1D]DMHEEDDMEyEEHA AD9RHMLxDHDžpLpHDžxLAHtHH1[A\]ÃCf.HHMHUI1@UHAWIAVIAUATSHLoXLgPMtdH=tBAEMtAA|$kA$vFUHKHc HDAEMuE1fDMuE1I$L8!H=q2FA|$A$@ HùB1HHH~H5Wwfǃ ƃ H H3ǃ LL3HLHAVL#AHAT$ EkH}KDH=K1AątI?IH)HSMtLHD[A\A]A^A_]Ðp Hù1HHH!Ltƃh IL:@ HùB1HHH^L ufǃ ƃ I L Hǃ @ FHù1HHHn Ltƃx IHǃh ILp L~E1MbDDE1)DiA iL;HAWI.I.I.I.I.I.DUHAWAVHuAUATSHH8HEH={KALeȅMHHLHH+HHI $LA@L;Q(M $HLAQ0I$H5LP8I9M$ M$ I$h H}L]MM99M)LHHHM9E.H@XI$h DHEDHLLEALLUMnLH+LHI$IItUHpXEuI$h HuDgDHLL]AHIHH+HHI$EuH@XI$h DHEDHLLEALILH+LHI$"@ALeMt I$LSH8D[A\A]A^A_]I $EmH}HAXDHEDHLLEALH}LH+LHM$EnMZXDL]7DHLHEHHH+HHI $EnH}LAXDLEDHLLMALMn LH+LHI$EuLPXH}DLUDHLL]AHMuHH+HHL9ufDHLAuI +f.UHAUAATSHHuHHHEH=HxK+AH}؅u3Ht9HHHH+HHDH}HtHQHD[A\A]]I*ff.UfHAWAVAUIATSHHxHGHHpP`HLuHLRHLxHpLlL9t~Hu1HMlHHLIMt9MA;ztEI Hu&fD9t-H HtA1IHI9tIuI;u>IEHI9uH}HHHt{L;HMtkILHt[L#HMtKM<$LMt:ILHt*L#HoMtM<$L^LMzfLUH}1I0JH}HEHEL9tHpHtHxL[A\A]A^A_]@LLH(H(H(UHAWAVHEAUATSH_ H8LG0OXHEI9IALvAIH HQHDaXrHUȍ~MMMt/M MMIMtI9Q sMIMuM9t I9R VHuLLEvLEMXIHEx\LEL9HML"L)HHHH=HHHHt{HtPHt%I;DDLLEL]HELEHH8DDLLEHEHELEHH8DDLLEHEHELEHH8DDLLEHE_HELEHH8DDLLEHE:HELEHH8DDLLEHEHELEHH8DDLLEHEHELEHH9EH8DDLLEHEH}DDLHLMDDLIyLUDDLIzL]DDLI{ iHEDDLHx(SLEDDLIx0=H}DDLH8'HELEH@H9E7LIH96H8[A\A]A^A_]Ðff.U9HAWAVAUIHATSHHHhHHVHPL贺C1H rKH=rK1c3A}ACLHDt1Ҿ H=sKE LLLH=sK L`L5]rK1I<$ Lc 1Ҿ LI|$@ 1Ҿ LI|$ e1Ҿ LI|$ B1Ҿ LI|$  1Ҿ LI|$( 1Ҿ LI|$0 I8M9ooLooooC oڈo[DoDoc,Do Do0sLD"EH{1LLD}HM HMt4ME;{teI Hu!@E9tRH HtA1IHH9tHuLUADMHUHHHuAHDHIHs@H;sHt/D]DHC@IM96H8[A\A]A^A_]HUH{8 ΐUHHATSLeHH HLPPHh H LH}Ht.H H9 DH [A\]HfUHSHHXHH` HdHH=hK[]UHATSHHPHAHP D[A\]f.ff.Df.Df.Df.Df.D0fDHfD(fDUHATSHLHH LHZHQHqhIH@HM~EHLEHHWHEHGXHL9tH=OLgHLc`3LMZIR IJ0MJL[HICMB(LqHLHMRHSXHrILD3XLKHIyLT;HHHCPLGL#HH{8[A\]UHATSHLHH LuHYHQHqhIH@HM~EHLEHHWHEHGXHL9tH=?LgHLc`#LMZIR IJ0MJL[HICMB(LaHLHMRHSXHrILD3XLKHIyLT;HHLHCP7L#H{8HH߾[A\]fDUHAWAVAUATISHH(HP(I$HLR0M $H MA8I9M$ M$ M$h M9xMM)IIA A}MIXLEI}LLMMHLLUALHULH+LHM $HHtRAMMAXLILEMHLLMM̉AHHH+HHM $EUMYXLIDL]DUZMHLHEHHH+HHM $I$AMLILJXΉMLMLEMHމLAHIL+HLLI4$E]HFXDD]HELMMHމLAHHH+HHM$A}MPX}LLUaHދMLL]AHHH+HHM $A}MAX}LLEHދMLLUAHIEIL+HLI9H([A\A]A^A_]fDH(HL[A\A]A^A_]AfUfHAWAVL5PAUM~(ATLeSHHIt$LXHXHHH VHGHG`HGHGH1)|HHHuHH9`ǃpHǃtƃ|HEOPSELAD$TǃHƃLǃPHUHEELmE1fLfD8H`Hǃ0LXLX@PHu7L-8OH}MMMU@LXLX聽LHHuHUƃ0L8H8HH}ID$H9t"IL$ELAYEH`HMAD$RH}HEE1fH}L`HhHǃ8 If@ L`H X YMEIu@LL`H`諼LPHuHUƃ8L@H@H/H}IL9tMuEFL L Hǃp Lh L Hǃx Hǃ  Hǃ Hǃ Hǃ Hǃ Hǃ  Hǃ Hǃ Hǃ Hǃ Hǃ HH[A\A]A^A_]IHIxH jRHHH`cH=HH`HLXH?H}IHHX?H}L9tL LQHILhLHILhmL`HH}IHH`H}L9tH}zIIII,UHAWAVL5KAUATLeSHL` Lh H8^HRfɺfoveKIL$H LH)MHƃ ǃ Hǃ ƃ ǃ Hǃ Hǃ Hǃ Hǃ( Hǃ0 Hǃ8 @ P HMEGEMMHEE1I~(foUf@ LH` LHǃ8 L` H X LJLMHI@L` L` LP HuHUƃ8 L@ H@ H螈H}IL9tH8[A\A]A^A_]IPI?LOH ILh H4H HHh LL` IHiLIHH` jH}L9t,H( HtH Ht HL f.UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEHULEHEIH}A7MM)LT4O :LMM9LLULEHULUI9t3LLL%Mu ~ELsEH([A\A]A^A_]ÐLfDH?H9HE1HEHSM9ufL4 f.@UHAVAUATISHHHIH9L4LL1HILK0HKHCHtZ1LSfM3L1HHLMtEEQEQK DEQ$EArDHAD;&HHE1DLAEDefDHcD A|$EMI![tLeDHAAcD EZAAA EbLmAE1DHLHMLI fD AtA tEDStELmE1ADILLL]E1ɺDHALHMLILEE1ALDLUlL_L( L H5DlGII$HPLHHH=TKL`LXL@IHEL8HHHPHXH0H(L IL9PMc $D 1OMIL0Ao AoRAoZ Aob0Aoj@)M)U)])e)mAwH(EJ4HcE1D H@HHHH8HXEJOH E1DLADž`DdfLLmADLILLME1kI@D E(DotEWLmE1DHALLHE H HUAE1LDLI _@DCtApEI f.Gtt I   iIfDAWAA\LMu%fAFMMtAC1IHI9tݸ1HI4HIHH6~SL.Mu-fA6MmMtAE1IHH9tH>Hu$fA&H?HtG1IHL9t޸1HMIM AytAMMtIAB1HHI9t#6MMt&AB1HHL9uu⁻H M$LI+$M$I$H([A\A]]@H Hh ? AŃ H L Hzp~fDH\Hh ϟ AŃ  Hs ]e~HME1ADLEER A 8 OWtt ? HS -fHh  AŃ J Hs n2HME1ADLEEHh D AAA E Hs )AjHME1ADLEEI>@ HS HEAH Ũ tMHh UEEE贝HME1LAHh {HME1LAEDmb{t Hs j]f.{tH 1L HMIMWf{t~H 1L HMIMI3fD Hs sdHME1ADLEE8@ Hs <@ Hs a_ff.UHATSHH LHPcvtB|cDAcfɁHC cwk.LHHI LKLLKCHGf?HPHH H HSHHpHSH H[A\]ÐHGfH HEE HMHP HHSHu؉pHHSH [A\]f.fHCI L]E 2HGf7LHHI I LKLLXHLKH [A\]ÐfHCfo|DK#)]E fomDEHxHH{(D@H{I~IIIIIUHAWAVAUATSHG`Hc_= =LghILc.Lc~LMI1Ic<$LI wIc|$LHgIc|$LHWIc|$LHGIc|$LH7Ic|$LH'Ic|$LHIc|$LHHM9tH۸HOH[A\A]A^A_]HH?HH֐HffUH*H*HATS^ȁy~j.Fzu_MH蔔H,M~*L9~%LHHHH=~[HA\]f.Hٹ[A\H]fDY BKfDfUfHAWIAVAUATSHxH H H)` HDžp)HDžHH9D0dHh HH5@K(AKHHH)p)`fDHDIDEFA~-AKAAAE1E!DHDž0DHDž@HiMcHDDO,IIL@L0Lo)oH)o` )op0)ox@)HcD߉IH IʅHcOEM@ OII?I?HLcHHcLLE8HHHHHHLH裑HHIP HHH?H?H@80H'HHHHHHHBHE EHAAEHEAcAt AIHvIH II?D8HHHGHHHHMP MI?D8xMoHaIAHHHA M@ HALHcH;0IX IcHH=D88H/H!HGHHLhMD8MHIAHHHL@L軀LHIH=HN؃ LIfELILIHAL*II?LHHtHHHH=~HfEfELLL*ϋHD) LH(HNNNfELHLcD)0E^ƅ D~LID(pI)DDHDžPLDHDHD DD8LHDPEZD0~8D@E.HWHHWPI9AE1E<H;fofo^fon fo V0fo0N@fo@fPHPHN`HHhHovHHINNN)`o~)pDoFD)EDoND)MDoVD)UDo^D)]HFH)HIHEuuuHuuuuuuxph`HHHpII)LHIHvLVIh LDAD9_L%%LH HfEHH ILDž HDžDžLHDžHDžDžD)DžHAMbA)DiA tD ELL9uLE6HHDHHfHHtfA Ad+A!LHHHHHHA@LHH0HHHI@DD(`HL(L@H0H(L D0Dž4L8D)@DžPLHL\HMHHIHHLLIP MII?I?E8HMHHHHLH袉L苵PDdfo@D,EL xLmIHh`hD|LeHEELmLmLmEH;p5fo`.fopHhVfoMHhHhN foef0fouv@fo}~PHEHF`DoAH`HINNND)`DoID)pDoQD)UDoYD)]DoaD)eDoiD)mLIH)HHLMIuuuuHuuuuuxph`ALhH`HpMI)LHIHvIJIhHh9 UHH4,LHH1HgAMbAAAD)i tLhH`INNNDPMD@I)LHIу~D_E/%HDžDHDž HLc,LHILDO$LILDo D)DohD)Dop D)Dox0D) o@@)0$(AELcHcDO$IH DO(LHHH?IcH?McM@ 8HIfDHH=f.EorH)HINNND)`EozD)pAoB)EAoZ)]Aoj)mAoR)UIrHuoHHAJogIAbow Aro0AzDoG@EBDoOPEJDG`EBuuuuuuuuuxph`HhHpHh fDH`H`HhfH*҄H,M@ IH MP L@IX %HhL`HL)INNNHhHh#fDoIHLM)HhD)`Do[xLHD)pIDoD)eDoD)mDoD)uDoD)}HHEAo$ChAo\$[xAol$ AoT$0AoL$@Aod$PEL$`Duuuuuuuuuxph`HpIhHLIM)Ih?INNNHhf.o3IHLM)Hh)`o{xLH)pIDoD)EDoD)MDoD)UDoD)]LL]Eo$$DchEol$DkxEot$ DEo|$0DAoD$@Ao\$PAT$`uuuuuuuuuxph`HpIhHLML9HL`L)HhHH%HtoHtWMD$8I~GDdE1HADž`DžhAL$lA4$L}Ml$hI}8H IhMM8I~GDdAE1HDž`LDžhEUDlAuIhL9RL`LhLM9$ML`M)IhIIA\It[It,A^DSAvuE AA I^hsDFAvuA ~HhCDpAvuE AA HhI9L`LhM9UM-H.KLL`M)IhIIAIIt?A_A7AoLHMOADž`d螽I_hC3LKAHLSDž`dZHhDK3ALHcDdLKDž`HhI9=L3LKLDSALsDž`Dd¼LchE\$LKpLALA|$shDž`Dd|A$HML$pADAt$hLHED$pdDž`-E$LHDA$M$E$DdADž`ۻI$8I9HHHH+HHHHt蓽H`Ht肽He[A\A]A^A_]Hs(H{ AAHIX bH~LDž`E1LHdDžhDCDl3AHhKyvuA #LshENEQAvAuE AALAvDFAvuA H8I99D[ASv AXA EDž`E1ALDdHDžhAUlAuMehIt$8HRM$II$HM$8L9M]8IhMehIt$8H~Dž`E1LHdDžhED$DlAuhARM$IgDdE1HADž`DžhA$lAt$hLI$HdHE1LDž`ADžhA$lA$薸DofI)HHNNND)`DonD)pDovD)uDo~D)}oF)Eo^)]LNLMo/noWVoO Nog0fow@voP~_`^LHuHuuuuuuuuxph`ELHpIhIv(I~ AAHIX HDž`E1AL鉅dDžhA~lH/Iv(I~ AAHIX HSDž`E1AL鉅dHDžhAVlsh軶 Hs(H{ AAHIX HDž`E1AHdLDžhDsDl3GiHHHE/A!HhL`HL)\L;OXAHs(H{ AAHIX HWDž`E1AL鉅dDžh{lH3胵dHE1LDž`ADžhAElAu9Hs(H{ AAHIX #HDž`E1AHdLDžhDSDl3Ŵ}Iv(I~ AAHIX HDž`E1AL鉅dHDžhAVlA6QI@UHAWAVHEAUATSH_ H8LG0OXHEI9IALvAIH HQHDaXrHUȍ~MMMt/M MMIMtI9Q sMIMuM9t I9R VHuLLEQLEMXIHEx\LEL9HML"L)HHHH=HHHHt{HtPHt%I;DDLLEL]HELEHH8DDLLEHEHELEHH8DDLLEHEHELEHH8DDLLEHE_HELEHH8DDLLEHE:HELEHH8DDLLEHEHELEHH8DDLLEHEHELEHH9EH8DDLLEHEH}DDLHLMDDLIyLUDDLIzL]DDLI{ iHEDDLHx(SLEDDLIx0=H}DDLH8'HELEH@H9E7LXIH96H8[A\A]A^A_]Ðff.U1HAVAUATSD&LGHLIL HMt5MME;cu!qfAC1IIH9u E9tRMMuIIAuLLHAHpH[A\A]A^][LA\1A]A^]f.UHAUATISHH8B t P.S  umH~PG+ HL[A\A]]fDH~|uHuLEfDHuLE}{HuLE]R o aHuLE"IDHuLEHƇ Ƈ LJ HLJ HH H+H+HLHL+L8IL+0iʍ?IEiȗoEiDAAtfUHHAWAVAUATSHXHHH{HHHH9sHHDžHDž(fDAtMQ@M9QH0MIKPH II}HrPH LAL9FMMIEIUMW@M9WHHuHHHxLJ@L;JHzMMZPMjI HqPHZLFM9CLHPHxHPMW@M9WHuL8nfDE1LMMMI)I)IIM9vM9t LML9jL'vMtHƇ HfHDž0) HsHLK@HI9M1fIL`0H HI9u6@L;H(H_H(LIH9IT$ LzHLH90uL HL)HHH L L9 IIM9LʧHIHHLLLLLI9LήL&HL0~H) fDIL9L I9yIߺ?H PLM)LHHHH?)HcH{Ml$IM$@M $IO@I9OHAMEIq@I;qHLIPPHH>L_PMMKL9JM9tLLL)I<螭IM<$M9t"M}LMiL8fDIM9uLI9HHHLgLi@L9iHMMD$@M;D$HIuL^PMILOLRPMMsM9rL'HGHWLq@L9qHHu HtZLLHLz@L;zHfM&Ml$PMUMIpPHEL^M9]7HPLPHPLq@L9qHuHHH9L(H MI9MII)IIAHGH_H9X)IIItlItRIt8ItIb HL L9`IHL(L9hIHH0H9pIHLL9XIHHH9PIIFL9INH9HtIIH@IYH9XtkIH@M~L9xtZIAMqMaL9`tHIIA Mi L9ht7IIA(Iq(H9pt&IIA0MY0L9XtIIA8IQ8H9PgM9MVIM9 MfIINI_M9tMII I9uII^M9uL(HMI)H)IHMIL9L)H ;.H L(L9H覢MqdfADI@MHDžE1HDMEMZEQMP@M9PHCH HQPH3I2I}L^PMLJM9KMEIEIUMW@M9WHh Hu^ fDHHHxLB@L;BH: MIJPH* I0L^PM MKL9I HPHxHPMW@M9WHuL8fD1HIIMI)I)IIM9vI9t H(IL9kHHtHƇ LIu@LI;uHLISPB,DPAojHob8AAfofDofofs fAs ffDffAfs fADoJXfofs fEofEofDofAs fDfEfAfAfs fAAt@Dojhfofs fEofEofofAs fDfAfAffs fAfofofo։fsfs fffofs fffs ffֵ9taLcLDqN|8LD9~AMcYN|8L9}*HcL|8LL9}LcJ\8HHH4fDAM9uqHM^@M9^H@Htl@tgHz@H;zHt]MIHPHtQLMQPMtEIRH9Q};L9tLJ<;HH)dL3IM9MuLMuL0MEMt@tIp@I;pHtMIKPHtLI}MQPMtHQI9R~MEIEIUIv@I9vHHufDHtHHxLB@L;BHH6L^PMILIPM~MQM9SpHPHxHPIv@I9vHuL0fLHHI9LHHH9AL9usM$IN@I9NHAMtkEtfMH@M;HHt\H9LWPMtPI1HVPHtDLBM9B}:M9tLK<fDHtHHxLJ@L;JHMIKPHMIrPHLFL9AHPHxHPM^@M9^HuL0fHAHAHH`H}HDžhHHHDžpHxHEHEHH]LuL9A>fDA FA A2 A HI9H;DWA uHDH51֜L@\HxpILI$8LI$LHE1I9sH}Ht͚E LpM LIt$L8M|$L蓚MIwL7I_LrHHsL7LcHQMIt$L7M|$L.M}IwL7MgL Mt`It$Lk7I\$LHtAHsLM7L{HљMt$IwL07MgL贙MHH@šH@LHL9IfIM9I?\uHH51˚HP uHH9 uHHuHtHLLHEHHEE LI( HEI0E?LmHEHELHLL9u)~HHH9HH:H9tD_\DA|AuHƆ H_(L0I9ufHI9tL+A}uMeH}1HMLHL IMt;MM;btMMu(f.M9tMMtMX1LHI9tHIuAHHLHpLޖ\=I}PLLw$Do$I L`I;  D.I HGLoL9hFI4fDHGLL9xIfDHHHHtH視HX[A\A]A^A_]@H3HHHRHiH51˗L@\HILI$8LI|$pLHH5z1SL@\HILYI|$pLBI$8L(xIHKL_LWM9LLL)HHHHHHHHtgHtIL@PAx u Ax, ICLMaPA|$ u1A|$,u)I$I9$~uI|$HpDHH0L^PA{ u A{,C HLIHPy u y,HL I|$P u , HLISPz u z,i HHLIPAy u Ay, HI9wH8L_PA{ DHPH@L@PAx u Ax,LJMaPA|$ u A|$,&LZICPx u x,>LBIHPy u y,VLb I|$P u ,mHB(L@PAx u Ax,HJ0LIPAy u Ay,HB8I9H8L_PA{ *A{,II9I{HDMePAT$,zAot$HAo|$8AAfDofDofDofAs fAs fDfDfDfEfAs fEAEo\$XfAofs fEofEofDofAs fEfEfEfEfAs fEAtCEo|$hfAofs fAofAofofs fAfAfDfDfAs fDfAofAofAoAfsfs Afffofs fDfDfAs fDfM~A9t>IcANMl89}-LcEVOl8A9}McAOl8D9~ IcMl8L9ILA$ MMPHMY$EQ$H0 L`H;8 ]DH0 DLAƀ @L}HH}D HL/聐Mt|MeLpMtkM4$L_MtZM>LOMtJIL?Ht:L#H/Mt*M,$LMtMuL LMxHMH}1HiLH}HEHEI0L9tHH 諏fDII9wIxHafDI$I9$EI|$H.HH9HxHfDLL9HyHfDLL9yHHnfDII9cIxHXqfDMM9WMIyHBAfDHH51ˏL@\HxpILI$8LI$LH!H5z1SL@\HxpIL\I$8LBI$L(I$LI$LDHDžHH HDž1;HtH،HHH}HuIH9uMIL9@MAH\uMHIPA@\I9tHLL)HHHHtxHtdHtOHt9Ht$HtM1HAFXLHABXL8HAGXL HAD$XLHA@XHHAXLHAAXH9HH@CXLpAFXLPABXLxAGXL`AD$XL@A@XHHAXLHAAXH9uHULL9'HyHfDII9I{HfDMM9IyHfDHtH賊ALL9}HzHrifDHHPHI 8HH9HH fDAE1LAǂ II9IxH HIKLeMLHHH HHHgHpUHAWAVIAUATSHH8yH=JFAątH8D[A\A]A^A_]Dx1Ҿ H=JچADŽ?LLm/H`LHmmaOpTyp IEHEHUAEeH}HE EK HeH}IuH9t蓈LHxDxED Hs /MMH}LIinput_tyApeLMLU fE]HE EcK I襂HHt]H%HLH觉H}IL9@D;tAPA vDIHyLw +I顠I鳠fUHAWAVAUATISI$P HxH H&HQHHY@HMHH` H` H@ H9t$HLM$ L H{@ILSH}~EL[hLEI$ LxIM$h EM$ )EM$0 A$ L9t褆L5UI$ M~LuM$ L},HLHPHH0M{L]Lh Hx(I$ HrLpHMI4 HHM$ MEH}K I$0 M$ MVHUK IDŽ$ M$0 HMHEI$ I$h xH!M$` I$` I$` HU~I$( Ht莅I$ Ht|H5I$ HI4$Ht[I$ HLpL?;MM'L'MtzM<$LMtiM'LMtYM<$LMtHI?HhLބLhMt*M8LDŽMtM'L跄LMhLpI$ I$ 1HI$ M$ IDŽ$ IDŽ$ L9tPI$x HLpL?0MM'LMtwM<$L MtfM'LMtVM<$LMtEMLLhӃLhMt'M;L較MtM'L謃LMhLpI$p I$h 1H~I$h I$ IDŽ$ IDŽ$x H9tHHuI$PH~LF@I$`I$@M$`H9tLxfoMLSL[hI$M$ M$IM$0M$hA$L9t迂HEI$HI$HpKHUH}HML]I$HrLUM{I4I$0M$MEKM$MNO IDŽ$M$0V{HpI$I$h躆HUM$`I$`I$`{HuI$HH~LF@I$XI$8M$XH9t賁LxfoULSM$I$H[hM$II$(M$`A$L9t`L}I$MM$HEHuH}HMI$HPLEHYIM$MmK,I$(M$MvO4I$(IDŽ$yM$`I$iLMI$XI$XM$XyHxLh [A\A]A^A_]f.UHAWAVAUATISI$P HxH HHQHHY@HMHH` H` H@ H9tHLM$ L H{@ILSH}~EL[hLEI$ LxIM$h EM$ )EM$0 A$ L9tL5E~I$ M~LuM$ L}H|Lv|HPHH0M{L]Lh Hx(I$ HrLpH}I4 HpM$ MEHUK I$0 M$ MVHMK IDŽ$ M$0 HuxHEI$ I$h hHM$` I$` I$` HUwI$( Ht~~I$ Htl~H I$ HI $HtK~I$ HLpL?+~MM'L~MtzM<$L~MtiM'L}MtYM<$L}MtHI?HhL}LhMt*M8L}MtM'L}LMhLpI$ I$ H1xI$ M$ IDŽ$ IDŽ$ L9t@}I$x HLpL? }MM'L }MtwM<$L|MtfM'L|MtVM<$L|MtEMLLh|LhMt'M;L|MtM'L|LMhLpI$p I$h 1HwI$h I$ IDŽ$ IDŽ$x H9t8|HMI$PHyLA@I$`I$@M$`H9t|LxfoMLSL[hI$M$ M$IM$0M$hA$L9t{HEI$HI$Hp;HUH}HuL]I$HJLUM{I I$0M$MEKM$MNO IDŽ$M$0FtHpI$I$hHUM$`I$`I$` tHMI$HHyLA@I$XI$8M$XH9tzLxfoULSM$I$H[hM$II$(M$`A$L9tPzL}I$MM$~HEHMH}HuI$HPLEH^IM$MmK,I$(M$MvO4I$(IDŽ$rM$`I$Y~LMI$XI$XM$XHx[A\A]A^A_]rf.UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEuyHULEHEIH}A7MM)LT4O :LMM9LLULEpHULUI9t3LLLwMu ~ELsEH([A\A]A^A_]ÐLxfDH?H9HE1HEHSM9ufL4 f.@UHAWAVAUATISHXH=8JtADžIcD$ IcT$ A$ Ic\$I$@ Ict$I$X H]H]~EA_BHuH{HM$`H}EgemmfDwELA$H HEE:I$@ HdwH}LCL9tBwLKA_MHLLMEgemmfEYHEEQ:I$H HwH}LSL9tvHC_NHLHEEgemmfPHEE:I$P HvH}HKH9tvHs_KEgemmHuf~HLHEE9I$X HovH}LsL9tMvLCAfvHLLEfDMHEEc9HuHIE[wM\$xLUL]Mt$ LUA6L~L9uPHuLE,{wAvIFLHEw~LuLE,LOwHULrP~LLE,,wHMLq-~LLE, wHuLv ~LLE,vH}wL}LLE,vLELAp}LLE,vLMLAq}LLE,{vL]LAs{}LLE,WvLuI f.HuLE]+vH}LkL9titLS_BHEgemmLUM$` fABLHEEq7I$@ H1tH}HSH9ttHK_MEgemmLHMfqHHEE 7I$H HsH}LCL9tsH{A_NEgemmHH}fDOLHEE6I$P HsH}L[L9tksLkA_KHLLmEgemmfEUHEEz6I$X H:sH}HH9ts1A$xv A$ A$h HXD[A\A]A^A_]DHHHI頌I鲌IތI I6I鬌I،II0f.Ðff.UHAWAVAUIATSHH 1fI I )`HDžpHHHtBH{HHt-H@AHHtC1IHH9t1A  A L`I9XL0HPH JLHHb@Mh LHD+5E1AHHDž0D4'oIL9E4$E|$D/HIcE^H4HHAo )eoh)mop )uox0)}oH@)M@LHMDDILHHDžHHDžPADUDEIH E…1AxMuIP 1DHDHPDUHMcMh ILƅE ALDIX IH AӉ _A@ DAEE9CfDfA*E)ADffDϙADփ *^_C A9AAtAfEDD*D^D/D_AGDA(AA93fEəDD*D^D/D_AGDA(AA9ffEEYDD*D^D/E(D_AGD9 DA9fEDD*D^E/E(E_AGDEYA9|sfEDD*D^E/E(E_AGDEYA9|=fD*^A/A_AGDAA9f.MTDHDžPDžXD\W1E1AHHdkIL9=I 1I HL$IMt?M4$A~MMu&AMMtAB1IHI9tLH`IIM+IMHtlH[A\A]A^A_]@1A_@1A,@DLE0D,H(Dž(E1AHAj@Ih D/D$H Dž AH AlMP I$HtI+@IVADt!MX Ig I+Z It IIX MH Ih I@ I I /H4HPHPE1AHh fAH MH MP I{1ISLpI@E#DžPL9D]D[LhI\$HhMH I IP E$DžPH9pD}D{HhHYHh=I 1M AHHM IMt@M!A|$ M<$Mu&A M?MtAG1IHI9tݸ1HMIMtBM AyhMMu*AMMMtAB1IHI9tݸ1HMIMtAM0A~AI6Hu)A&H6HtF1IHI9tށb/EDžPH9pDMDKHhHsHhEDžPH9pDeDfLhIpHhE DžPH9pDuDvHhHXHhpI 1M AHHI4IHtBLAy eM!Mu*DA LM$$MtAD$1IHI9t۸1HI4IHtBLAyM!Mu*DAM$$MtAD$1IHI9t۸1HI4IHt@LA{9MMu(DA MMtAB1IHI9t݁b0EDžPH9pTDuDsHhHsHhEDžPH9p<D}D~HhHvHhE DžPH9pD]D^HhHXHhqEDžP H9p DEDCHhHqHhEDžP H9pJ }~HhHsHhEDžP H9p ;DAEDžP H9p= DEDCHhHsHhEDžP H9p }~LhIwHhE0DžP H9pv uD|Ac_E DžPH9pMKHhHsHhE DžPH9ps}~LhIwHhEDžPH9pD|AcA HpuA EDžPH9NMKHhHwHhEDžPH9p]^LhIsHhEDžPH9pI@E"HMHP1DžPH`MP MH Hh9DAcDAcE!DžPL9$HMHPHH`NHhE KHMHPHH`HhHMHPH`HhwE DžPH9)DMDKHhHpHhE DžPH9pDeDfHhHrHhEDžPH9pPHMHPH`@HhHMHPHH`HhHMHPH`HhIh $E1AHH8H3H8^MP UHMHPH`Hh\HMHPHH`]Hhl$I7H@L@eHMHPH`HhHMHPHH`HhOHMHPH`HhHMHPHH`HhHMHPH`HhHMHPHH``Hh&HMHPH`=Hh HMHPHH`Hh&#H2HHHH#I3HML}HMHPH`Hh5HMHPHH`HhHyff.U1HAVAUATSD&LGHLIL HMt5MME;cu!qfAC1IIH9u E9tRMMuII^AuLLHAHpHi[A\A]A^][LA\1A]A^]f.UHAUATISHH舫LuH~ h uHL[A\A]]@LmLELh tLLEh tLLEHVUHAWAVAUATISHH(lE$ ELAL$AT$ u 4A$ E1wH5dJ AAA$H6A$t 2A hA@AI$h L} A A@I$h H} HL}HuE1ɉALHGAD$ A@ ~FAt@H}@Iv E1ALƺHLmGLML+LLH([A\A]A^A_]f~A$t !A`AYM$h ALI LeHME1AƺHFDA$u BA$w 3A$w ]fDAI$h L}I6 ~kA AM$h LuȾLR HHME1ALHEpA`=AM$h ALX IL]I$h H}Z H{I$h 6 HHUȺHME1ɉAHH>LMt)IDAtzMMtAC1IHI9t 1HIIHt=H3~ LMu&@ MMtAB1HHI9tH[A\A]]DHAA~ t t{t_LmE1ALHHMLALLIALME1AHDHMLE1AHEqAH[A\A]]fDD AtA tEStLmE1ɺLIL龏LEA AE1LALIL]@HE1LALHE@H L fDAUfofW(O@Gw4DBDGLAAAD)A@AAE8uttDș@DO,ODl DGw8EQAȉDWPAAE)A@8u1t-t)DDGp Eu#LJh fDDGp EtD_$DOILE,HL 7L8L LC4|>ILE,HL I7H8L LB4?>ILE,HL 7H8L B4L>ILE,HL 6H8L LB4=ILE,HL 6L8L LC4=IHLL E,U6DH8L LB4F=IL L90HLE,6L8L LC4ILuf.D E DStEH]E1ALHHٺHuDE1HٺH ADH}L[I LEHDLE1A1Hh[A\A]A^A_]fStfDH]E1ADHLHMHHٺDIALLME1IXfAAtA vAAE1ADLHH]H]HJH L|D fHE)EAtA tE DStECHufo}JH}I HVL])UE)HxyHEL}HEL9H=JL)MHUtUD E7E1AIcH5JL IL ?EQEEQfDMwL9u* EE1҃wAIcL]L IL IEQEEQDEQ$EARDHAD9D M~E1EvAwAIcHuL IL EQEEQJ<DEQ$EEZEHAD9-HxE1DLAEDuJ DHxE1DLDEAE 5L}MTL GAA A)Hufo {JH}IHVLM)MHxfH+UHATSLHH=At+AtAYM M AO,O,M$2M$1I I AOOAK4*K4)9sdAODoK"wK!M G M O*D_(O)M$2M$1I w0Dg8@I O,O,M2M1K"K!9rfHpMNLEdimALMHEEvIŋhHXE[LHHhE1C4LIL9hvHHLE,HuLE]kH}IVH9tHPMVpeLHinput_tyLUH}HpfAJ HE E IIHtiHYLLHH}MvL9tH`ALL9t D ^HH9A@M$I{Lw R AK"K!I#H#I#I#UfHAVAUATISHHPoO GE EEHEEME HL H I0Ht?H>DOE=LMu%E'MMtAC1IHHt޸1HM,IM,MuA~t6I6Hu@H6HF1HHI9uHh " AD EBAAAAE {p*EA"A A KșAH'H&@vH% cPH$GH#8fDHh 'E1HMLAHE3H t L-\HuL IMH9p\Hh DpdHME1LAEDuHh 1H hHME1LAH]xM$LI+$M$I$HP[A\A]A^]H"H]HME1ADL&AE}@EtKsLu?PE1ALDI LL]/At LuA u{?Lu~ILUE1ALDL\f.%A@NI(LuLEf.fUHAWAVIAUATSHhHXHHH HtI HHH|L#HMtlM,$LMt[M}LMtJILHt:L#HMt*M,$LnMtM}L]LMtI I 1HI I Idž Idž H9tIx HHHL#HMttM,$LMtcM}LMtRILHtBL#HMt2M,$LMt!M}LuLMtfIp Ih H1Ih M Idž Idžx L9tL-PMPI}MM@I`I@M`L9t LmLmL=HbM HUIM_@HIOL]~EI_hHEHUHIhEI)EI0AL9t Lm]LmH5 ILxLFHuMLEL L6MiMQ0LEIMa MY(LEIYIQMI}L]HUM>I0MID$LUMIHsI6M0IdžLMIMh/H}LNM`I`I`LULxI8IHICIS@IXIXH9t!HufoMMGMIMhMHM(I`AL9tLUIMzMlMH}MmL]HUHEK.I(MMd$LjO&IH[IM(IdžM`IHMMXIXIXHh[A\A]A^A_]AUHAWAVIAUATSHhHuSHHH HtI HHH|L#HMtlM,$LMt[M}LMtJILHt:L#HoMt*M,$L^MtM}LMLMtI I 1HI I Idž Idž H9tIx HHHL#HMttM,$LMtcM}LMtRILHtBL#HMt2M,$LvMt!M}LeLMtfIp Ih H1Ih M Idž Idžx L9tL-KMPI}MM@I`I@M`L9t LmLmL=HRM HPIM_@HIOL]~EI_hHEHUHIhEI)EI0AL9t LmMLmH5ILxLFHuMLEL L&MiMQ0LEIMa MY(LEIYIQMI}L]HUM>I0MID$LUMIHsI6M0IdžLMIMhH}LIM`I`I`LUvLxI8IHICIS@IXIXH9tHufoMMGMIMhMHM(I`AL9tLUIMzM\MH}MmL]HUHEK.I(MMd$LjO&IH[IM(IdžpM`IHMMXIXIX?HhL [A\A]A^A_]@HWHGHB>If.9z J$DFD8J%DFD8 DVD9R(DZ,N A9DZ0ND9DZ4NA9DZ8NA9DZA;y tU@@IDfA9DAEtHRHI9u@tEuIHRDDVEY$E8tAt ELfDDFAI%A8t AttAQ(9V\~ EQ,A9~EQ0A9u|~EQ4A9up~EQ8A9ud~EQI0MID$LUMIHsI6M0IdžLMIMhH}L*M`I`I`LUfLxI8IHICIS@IXIXH9tHufoMMGMIMhMHM(I`AL9tLUIMzMLMH}MmL]HUHEK.I(MMd$LjO&IH[IM(Idž`M`IHMMXIXIXHh[A\A]A^A_]!UHAWAVIAUATSHhHU/HHH HtI HHH|L#HMtlM,$LMt[M}LoMtJIL_Ht:L#HOMt*M,$L>MtM}L-LMtI I 1HI I Idž Idž H9tIx HHHL#HMttM,$LMtcM}LMtRILwHtBL#HgMt2M,$LVMt!M}LELMtfIp Ih H1Ih M Idž Idžx L9tL-'MPI}MM@I`I@M`L9t LmLmL=qH2M H,IM_@HIOL]~EI_hHEHUHIhEI)EI0AL9t Lm-LmH5ILxLFHuMLEL }LMiMQ0LEIMa MY(LEIYIQMI}L]HUM>I0MID$LUMIHsI6M0IdžLMIMhH}L%M`I`I`LUVLxI8IHICIS@IXIXH9tHufoMMGMIMhMHM(I`AL9tLUIMzMfDApf.Ds@DsD1ҾDsHH=1JE9øDAD)AAHfCAE3EAE8uEtEuAAD@șAA1DDC@A9OljCDfDDc@HCDH=.0Jgf.1Aa@ApDAD1A HcO`W@DGHHO(LcIFT 0LO AHHHGDЉG@u w\D\ D_ff.U1Ҿ HAWAVAUATSHH(,H=/JR18 H=0J' H=,0JHH~ H=0J͹MHHtHuHо H=/J艹 LmLeLLDDUME w;D;u=LLE [;D;uELLE 8;D;}LLE ;D;}*U H=s/JθuRLLDE:D;uu19]¾ H=\/J臸u 1  H([A\A]A^A_]@H{pn@DMD;MuM$HuH}EAX$Eh(J6;]u 1D9m¾ H=,JIfE1E1xUfHAWIAVIAUMATLeSLH1HXH}H})EHEm I7HSHMHC@I~(HEHMHHMv\HMjjjuAUDK0UHUHEEKH0H=N+JIH}Ht9He؉[A\A]A^A_]IUHHAWIϹ<AVIAULATMLSHXDEH1HHH8LDE\$TDAdEL$8ET$DXMD$XAL$`ID$dI|$lDA|$PDLPHH\t AD$tE@It$xHHHuHSIDHLHILϺIH IwMI)IMLMIH H9EtH;H;H;dH;wEt4H;(eH;PHH;x kH; I;SDH; WH; A|$L~A|$Mt I;S(A|$Nt I;S8I;S OI;SyI;S0LLp HHHH9ILϺ1I9u+HH+HHIH91ҾH=8LJItAHOHXD[A\A]A^A_]LL[LL8KHH;HH@+IAL$H9H@@H=N(J聯_MMT$LMLIAO M9M)LMM)KLH1ҾH=(JLIT$ LHLH1ҾH='JHHIT$(LH1ҾH='JHH舮fu|HcTLHH1ҾH='JHH8AHcTLHHS1ҾH='JHH@IT$(H1HCHHtH1CHH4H~HpH@H H0@1H(1@5@8,tH8H@HDAHMAOAMI{ItxItcItNIt9It$ItII{|II{mII{^II{OII{@II{1M9BI;I{I{I{I{ I{(I{0I@I{ufDHH KLL;LL+LL( HHH0fI;yHHHE1 LA fDLH|fZ"ZHHKMBH;WE1HHDKIH;TtsDNLM9rHHA|$MGLLxfAZLLHHhHHHJzLHLLHH=#JAąr@AątAE1AIff.@HUHSHH9FtbHHH5rdjHSHHHpH9t-H HxH{L@LCH0H@@HH[]Ðo@CH=E艦fUHAWIAVLPAUIFATSH~ H@HPHDžXƅ`w(NHHJHc4HDH5"JLuH@ w3DGL HJOcMAfDH5"JLifL@A{ w2Ec L-HJKcDLDH5Q#JLIifEG 1LeH5¨HpH S,^HHHHH5+#JLkLmLL,HUHuLLhH}IUH9t躩H}IL$H9t觩HpLCL9t蒩EGH1HHH +^PHH5"JLLLHUHuLgH}MML9t1H}MT$L9tHpL[L9t EGH1HHH 3+^HH5u"JLULLHUHuL:gH}IEH9t訨H}It$H9t蕨HpHSH9t耨H=*_fA8H5>dHEHHH5"JL~LLHUHuLfH}IMH9t!H}MD$L9tHpLKL9tALH5ELDHIDHH5dBJLH~LL HUHuL-fH}M]L9t蛧H}ID$H9t舧HpHsH9tsAPH5EHhDHHDHH5AJL}LLHUHuLeH}IMH9tH}MD$L9tHpLKL9tH=DAMH5EHDHHH5AJL<}LLHUHuL!eH}MUL9t菦H}M\$L9t|HpHCH9tgH@H }EHߋH5UDHEHH5 AJL|LLuHUHuLdH}MEL9tH}ML$L9tHpLSL9tۥH@H5EHθDD_HDHUHuL^bH}IUH9ṭH}IL$H9t蹣HpLCL9t褣HA 1HHH %^aHH5JLyLLHUHuLaH}MML9tBH}MT$L9t/HpL[L9tAOH52DL=DHID;HH5yJLiyLL.HUHuLNaH}IL9t輢H}IL9t誢HpHH9t蕢H@HXHPH{(HLj`HPIL9t[HĨ[A\A]A^A_]fH5!JLAa@H5JL)a@H5=LL3=LMM'H@MD$L MMIMtM9Q }MIMuH01HI9tM;P |L 1IM9¾ H=JiL0HuLL HuLQH8HP1Ҿ H=&Jx,H LLDDDžp D;mu 1D9e¾ H=J輋HHLtHuLо H= JuH1Ҿ H=&JL1PHH0HH Dz$Z(Džp J D;}u19]¾ H=J5LI9Ht H@u 9о H=J貊 L H=G&JMAR 胊1@LHL{1Ҿ H=JJDLFH85E1LH H)iH]HDž(HDž@1I@H0H9p_HT11 1.ILXIҰIIII'I鸰I鰰III驰UHAWAVIAULmATSH(HHLHHaH]HMH9H;HCHH)HH8HCHtxHteHtRHt?Ht(HtH8HH8HH8HH8HtwH8HtjH8Ht]H9H8tKHxtAHxt7Hxt-Hx t#Hx(tHx0tHx8H@uHH51E1舋HIAHLD⾸ H=J蟇GH3LfL;%QcHC`h @H=5J`HHH81H8 H=NJ L(1Ҿ H=JMH MyHA ubILPHIVH=JAąu?EL1Ҿ H= JESA A葆txDA H HO H(D[A\A]A^A_]f.A AHE1sAE1dfHAIHH@HHQIHqH7LhI1I H=J賅HX1Ҿ H= JLC MxHA 聅HrH5K1LHHLIIAH; I_`LABLD[,ED H=JAAA HIXyHpHv61H} H=I"J諄;Le1Ҿ H= JI\$ LcHA|$ z HHL1LHAPHHH= JgAąHLLBMHIq(HI IA051H} H=!Jڃ^L}1Ҿ H= JMW MbHA|$ 誃.HHL1JHIHSHuLHO HuH? D[,1Ad H=& JA| H=F JVLHHLƅAx H{IIxMA|ƅ0H= JAąu@I HHDžHHHHDžHDž]H=$ JoAą_HIH1Ҿ H=H JDPLDAHD!ADŽHDžpEHHH~Iغ 1H JH=DHpHtHL@OLSMHLHLDAEs$A[(DoD;uu9]AA H=j JAuXLLHHAENIqLHr HGHBMZLZ8HPH;A 1H H=l J藀u1A H=JuuHHpHHDžHHDžHDžp?H= JQAąAHHHLDADs$D{(DD;uu 1D9}¾ H= JLLHHAENIqLpHr HGHBMZLZ8HuLHA HuH2xLHD H=JAAH H= JyME1AA E9~HHp]H= J}#A H=qJ~LH= JAyM1҃D9 b~uWHHpH= Jm}yH zM1҃D9H=t J ~kA 'HHѥHHͥff.UHAWAVIAUATSHL HPHH8LHXH)HHHH9M IHL9LL=7HHH)HHHM HHHHtnHtHHt!HH LFLCMtA@HKHVLLLZLYMtACHHL*L)HBHAHt@HHL"L!HzHyHtGHHLLLRLQMtABHHLLLjLiMtAEHHHHLbLaMtAD$HHI9H:H9LBLAMtA@LZHRLQHQIKIJHtAMkMjICIBHt@Mc Mb I{(Iz(HtGMC0MB0IS8IR8HtBIK@IJ@MkHMjHMtAEICPIBPMcXMbXMtAD$I{`Iz`MChMBhMtA@ISpIJpI9II)INd L9LIE1H)بn HsH;HLNMCABMA LCM9 IM MI)IIIANI"IIItnItOIt0L{Mt#AouILQAo u MLAQLCMxMt AoIMxMt Ao7IMxMt AoIMxMt4Aou,ILHLQAo LHfIMxMt3Aou+ILHLRAo LHIMxMt AoIM9MxMt AoZMxMOMt AiM_Mt AkIW(Ht jkIG8Ht hMWHMt AjIwXHt n}M_hMt Ak0MGpM9JE1MAHtH}zD⾸ H=SJ9xy I]L%ƴHCL9I]`L9Me`M$`LPHXMXE$lDII$tI$uI$H*о H=8Jw LX H=@JAGA1҃ D!kw A$h H=JIw {@LpIL(1H} H=mJwLmIU E1HZHHtHzH5u1HzI1҃{ H=Iv]L;HAWx,HÅ@ƃdA1A!j H=JD!qvADŽDC,EH tHuH褱о H=ZJvL8HPH}I HXHHAAMHHH(DDR~'1H} H=oJuCLm1Ҿ H=II] H[H{ uHvyH5OtH1%yHIHPHuHHH&DHXƅjƅkD^ DK,AdAjuL8fA@PZC`A@tDK,Ad H=J1Aj!tx H==JtXHHtHuHо H=!JltHXHlDGH}@D0lHHSD0D9]@u19u¾ H=Js L8MH1Ҿ H=JAILLX@M!sHXHEEL8 H=JA}ME1AE9[sLEMtH8HPFOMHL LHP1Ls HHHHtjHtEHt LLL^L[MtACHKHVL*L)HBHAHt@HHL"L!HzHyHtGHHLLLRLQMtABHHLLLjLiMtAEHHHHLbLaMtAD$HHH:H9LBLAMtA@HHI9LLLZLYMtACHBHRLiHQHHIMHtAL`MeHxI}HtGL@ ME LP(MU(MtABLX0M]0HP8IU8HtBHH@IM@L`HMeHMtAD$HxPI}PL@XMEXMtA@LP`MU`LXhM]hMtACHPpIMpI9DAMA MHIqIxH8HNM##MlADAlMAM9IpI8HLNM]F^HHHq1H5oL0L@sHHL@IL0M@NQVL@LHHHAPMHHL@ADW AHLHPLHFH@HDpH5MnH01LHsH0H@ILHMDFAPVALL@HHHARMHHL@G RH7LHVLH9HoH5m1LHZrLHIHGoH5Pm1LH"rLHI1I H=I2nuv1A H= JnuTEWHpH}DkDDcHDpD9mu 1D9e¾ H=ImJ@ HĨ[A\A]A^A_]ÐMII)IIIAI;IIIItjItAL{Mt4AWDREWu#MLASA OAO u ILPL{MGMtEHAqApAIIGHtD@EHDHA` IIGHtxDGD@IIGHtHyxlIM_Mt=ACHAKu-MLLHAPHHDO AQW A{IM_MtCACpAsu3I LLHQLHAx DOEH IM9MWMtEZACABARIIWHtDREZDZAIWHtzDWDRMO(MtAQzAyMO8MtAQrAq5MOHMtAIQAQMGXMtEHAIAHAIGhHtD@EHDHAIpM9yDG DXD_ DW EZD_ 1E1AL9CBFHHHLXH I1 H=ֿDcAE1%^A H=9JALbxL8 H=IAzM1҃D9bFHHLH="I%aj H=IaH8 zM1҃D9H=/IaHHLH=?I`I韉I駉UHAVIAUIATI1SH@H H+8H=IH=pawIHIPH90xHHH)HHHttHtaHtNHt;Ht(HtHHHtxHtkHt^HtQH9tyxtC@t:t1t(&t`.t(6t H@>uHLLL[H=IA\A]A^]_fDHLLL[H=IA\A]A^]^f[ A\A]A^]fUHAWIHLϺAVIAUATMSH8H8EHMHUUH=^IHH+DMHU1Hξ EA _{ Eo`1Aj H=E^  MD$(Ix YH=D]H=I] 1A! H=5I^  }DK 1Eɾ H=IT^ 1҃{ H=_I2^ HUHuLLH=I9]$ AL$A H=IA1҃ D!] AD$ H=NIA1҃ D!] AD$ H=IA1҃ D!c] 1A|$ u A4$1҅¾ H=I5]m }t'AT$uLmA} ~AE }f LmLuȋLE}LUDED9Eu 1DMD9M¾ H=ZI\D DLLEDUD]E;Eu 1ҋM9M¾ H=AID\|48LEuLUH};}u 1DED9E¾ H=*I[%D\D`LLEDMDUD]D;]u 1ҋE9E¾ H=I[ LEuLM};}u 1DED9E¾ H=I;[s D LLEUDM=DmD;mu 1DuD9u¾ H=IZHt Hu HH( H=IZHtH{`u H{  H=IhZE$L]1Ҿ H=IEShESdDtAE,ZHIcH4H9IIII)IIIyMIfoHEIIMIIIAIIt;ofoL[fs foffofs ffffs fAofoIfs fofofDofs ffDffAfs fEofoIfs fEofEofDofAs fDfEfAfAfs fAM9EofoAoI@Ao`fs EopfEofEofofAs fDfofAfAfDofAs fDofEoffs fDfofs fAfAofs fAfofffs ffAofDfDfDofAs fs fEofDfEfAs fEfAfEfAofs fDofEfAfs fAM9fDofoHfAsfs HfAofAofofs fHffAffs ffH~H9t.HLJL9t!HBHzH9tHBLBL9tHBH=IH9@@־ WlAAu=LLuEnTLEV\LDDDE^X}HEA$pXfELuDDfEA(D*A^AFlA4$D*E^EVpA|$ ET$LIKc LH} fGufGH]H=IC\s AAU^Lu H=IAF EVAAfA1fA fAFUEA~EF AF\DωDAEN4@8*"EALmMLLAE`L%H=VIgTuVE}EuE1ET$EA Aw LIO H}1EG`D0wDA<$AAEH8[A\A]A^A_]f.1A H=ITRfD 붐DVDI|$(X1=// w2HH҃ H=I/TukAL$ w2HH҃ H=ISu9AL$  w2HH҃ H=ISh LEfA@LMfAApfDDLmLuLE}LDEDMD;Mu 1DUD9U¾ H=rI5SmDLLED]E7M9Mu 1ҋu9u¾ H=[IR H]1Ҿ H=I{TR ffE=ܞDLm*փD*(^A^AElA}pAHLMAITHAy\LDDEAXL1*HHGH9t H T@UHAWIAVMAUIATISHHGH=Id1=!Qjf1Ҿf.C0H CIEH=oIE־ 1RA AEDCeA7EAtIf/[ vAEf.c(-BEf@EA?Zs //5BEv5BEA4$fZ{(//=jBEv=`BEA>1A/<$H IH=)I1QE1uPHD[A\A]A^A_]fD1H IH=DeQeȄAhIf/S  @If/K (0(UHAWLAVAUIATSHGHGLL HG(HF0Lf(HEI91M4$HDIvf.H{HtHHK H9|H{1HuugH9~6EI9(QMV}LHHLP QIIE(IL9etDI]M4$HqLM;}uEfI9]tHQMFL9@ |IL9euHL[A\A]A^A_]@LK M9NEbIIuLLYHWGHGHWHW HG(HFH UHATIHSHMHHH};HHJHtcHqHHtWH~HHtKLGHMt?MHLMt3MQLMt'MZLMtIKLHtHf.HSHHrHt`H~HHtTLGHMtHMHLMtDGMHpIpf.1f.1f.UHAUATISHH_0HtL-KMt{Ctz@Ml$I\$I9t(fH;LKL9t4IH L9uI\$HtlHH[A\A]]If.H I9uDCPSuH HQMt4s iLHAPZfH[A\A]]Ds ~{ DH H; t`UHHHH~HtH=Jt1AHMH E HtHY1DAf.f.UHhHHAVAUATISH HHt(L-aJMKDM$ I$ I9t)H;LSL9 SHH I9uI$ HtH5HLM$ M$ IM$M9t'I>IFH9GI M9uM$ MtLGI$ HtGI$ HtGM$ I$ I9LH)HHHH=FI`-HHHHtqHtRHt3LsMt&AnuILRAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILRAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtH|EL-ml[I$IM,$A\A]A^]xDI M93LfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHLsMtENEQEVA=HLsMtAvVAVHLsMtA~GAFcHLsMtENEQEVAHLsMt3AvVAVu#MLAPEN EQEV AHLsMt3A~GAFu#ILQAv VAV fDHI9LsMtENEQEVA|HLsMtAvVAVKLsMtA~GAFLs(MtENEQEVALs8MtAvVAVbLsHMtA~GAF5LsXMtENEQEVALshMtAvVAVHpI9KQSH3HVM{ L HAQf.MLARAn (MLASMLAPAn MLAQILRAn I6LVDILPAn nILQ`DMLARAn MLASMLAPAn MLAQILRAn cI6LVUDILPAn &ILQDMLASA~ GAF fILQX@MLAPEN EQEV AMLASMLAPEN EQEV A~MLASoMLASA~ GAF 3ILQ%@ILQAv VAV MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILQ@ILQAv VAV MLAP@MLARAn MLAS{ DGDC MLASA~ GAF ILQ@ILPAn ILQDILQAv VAV MLAPq@MLAPfMLAQMLAPAn kMLAQ\MLASqfMLASA~ GAF ILQ@I6LVbfMLARAn MLASMLAPEN EQEV A\MLASMfUH8HHAVAUATISH HHt(L-1?M KDM$ I$ I9t)H;LSL9(#=H I9uI$ HtH=LM$ M$ IM$M9t'I>IFH9h-HHHHtqHtRHt3LsMt&AnuILRAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILRAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtHL:L-=aI$IM,$P9[L8 A\A]A^]:I M9+DfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHLsMtENEQEVA5HLsMtAvVAV|HLsMtA~GAF[HLsMtENEQEVAHLsMt3AvVAVu#MLAPEN EQEV A{HLsMt3A~GAFu#ILQAv VAV fDHI9LsMtENEQEVAtHLsMtAvVAVCLsMtA~GAFLs(MtENEQEVALs8MtAvVAVZLsHMtA~GAF-LsXMtENEQEVALshMtAvVAVHpI9KQSH3HVM { L HAQfMLARAn (MLASMLAPAn MLAQILRAn I6LVDILPAn nILQ`DMLARAn MLASMLAPAn MLAQILRAn cI6LVUDILPAn &ILQDMLASA~ GAF nILQ`@MLAPEN EQEV AMLASMLAPEN EQEV AMLASwMLASA~ GAF ;ILQ-@ILQAv VAV MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILQ@ILQAv VAV MLAP@MLARAn MLAS{ DGDC MLASA~ GAF ILQ@ILPAn ILQDILQAv VAV MLAPy@MLAP fMLAQMLAPAn kMLAQ\MLASyfMLASA~ GAF ILQ@I6LVbfMLARAn MLASMLAPEN EQEV AdMLASUfH=ٕ=@UHHĀHEUHUHE~EHMHUHUHuHH}H}EHMHMHuHuHu)EEE=tDUHMuLMDEuHuH=3)CXZff.@Kff.UHAUAATISHH(vI EE1E1HHUH}Huȓ=uDLH^@tEH([A\A]]fB DUf ʃHAAtpD  EE]fDDtqDH@DȅAA@EuyAAAA@EudAA@uRAA@u@AA@u.AAAA@EuAAAA@EZ D ljEE]@EDEE]fHLHHكL M9wI)LHt LLH)f1ff.ff~f~f~AvA|ADGvf {tf.8w@3vȁH~) wtfDȉ  fDUHAVAULoATSL/HtrIHI(HHw2Hu$AAD$I\$AD[A\A]A^]HtHx.I\$I$ILHL--M,$H=I"uW1ҾH=I"u,IL9H1[A\A]A^A_]ú1zH[A\A]A^A_]H[A\A]A^A_]f.UHAUATSH8JHcG(L-I1HIt G$AċG@H=IA"bC@{AAă~J1A@KtItAEDE9C1H8[A\A]]DAuCH81[A\A]]D1Dfff=mDA*~5EA*f(f.Qf(^\fTf/Af(Arif.DAuAfE\D*fTfD(f/D\D]EGfDTfE/fA(A]DGAfA*f/sD[1fD )u}emUI!f(u}emU+ff.UHAWIAVLuAULATISH]HHUE>qLHLH@HEhXMALghHtELHLHLLM(XI$H9LHEMZ(I9IBH;r THG`H:I$hHHQ(H;UHAH;6#HG`HI$LMH(L;MI@H;HG`HBI$LICH;~HG`HHtEHxLHH}L%WI$EHHQ(H;U(HAH;uGHG`HI$LI@H;GHG`H LHLHLLMVAAmAo$IH]LeH])EILMZ(L;]IBH;)HC`HtqEH;H ZHGH9HC`HXLLHMHULVEH3LEHFL9yHC`LLLLLMUIL;}NHH1[A\A]A^A_]DI$H7HFH; HG`g@IELG`M#DI$8H7HFH; <HG`HnDI$hLIBH; ,HG`HDMLHLMd$`EM$LUTELHM$LL]TAZAMEIw`LXl@LEbLHHPHULVTLaHEHpLLHuH+TfDLEnL`LHLLeS;fAfHADAFffH?fDfHfDHMHHM0fDIEHHO`LHHUL SyLI$[fI$YfffUHAWAVIAUIATSHH8HBxDf`LEHMD}Hx LMUH=xDGH=:I9AA$1ҁ H=EA H=I"A H=I"Ezu@"H=мI@־ R1Ҁ{ H=߼I*1A H=IZLbJLC4$K H=мI"C4S5ML\1Ҁ{6I1H E H=ID E1Aw H=INDK1AwLIO;AAӾ H=I&LI1҄t11w H pIH4{1҃wH[IH94AAо H=ItD MDSLMD[HG`L; HLIr(L9SIBH9pHG`H I$KLICH9iHG`H;X KHufDKIH}M;MI1I9\$H=IHL A$MLr LLHDžpIT$PLLn1ҾH=IHHhv Hc4Hxu>LL1ҾH=IHHP" Hc4HLL1ҾH=VIHHXL A$t E\$ 1ALLHE1HHH= I5 1H}H=I 1Ҁyu 1H`¾H=I 1Ҁxu zSH=Iv t[xLP1MH=I8r 1HXH=aIL } A$A$H}HtH1BLHfHDž L0LH)L`A|$8D@HDžDDAr5yAr,yAr#yAryAryAryuEz1EE@1NDNHDLILLHL_HI|$xHME$HxAPLpjE$AREL$,AH0H=YI'HHafDH`LIS(L9ICH;`HG`HfM9I@H;6HG`H|HHHAH;g HG`hOHLIq(L9IAH;$HG`HH@LIBH;yHG`HL9@UHLMP(M9AfDHhLMP(M9I@H;HG`HHH<H8LIAH;[%HG`HH9pNH5Ox$A]KH`@HLIS(L9ICH;HG`HOxHLFHH9xOKfKHX @HLIS(L91ICH;NHG`HnHLIAH;!@HG`x@@)HH7HFH;cHG`H@HhLIS(L9ICH;HG`HffHhLIBH;sHG`HH9pOLEfHHLLHH&ffH@HHAH;HG`fLLiALLvO1ҾH= ILMhHH0LIAH9R HG`DA"EAjA 5DgKDfEL*E^fD~fD~ЁW fE~AA0 " D0EfnATA}D)@XfnXXATfEfE1DXDZD\DY=KED(@H=|EDX=#EETEZfE/\HHHHMAHH;fDKHUfHH0HHHAHgf.efHHHHAOLP+@fAZUIt$XLLLHL1ҾH=.IHHpoYHe[A\A]A^A_]OL]1H}H=I u^1A$t 1H}¾H=YIu2A$1H}H=WIHeظ[A\A]A^A_]f.fff-fLLHH"HHKHHRHHHLLXHLMA(M9%MiI9CHG`HI$OLIBH9HG`L;KH}HHcOL]O1ҾH=EMOA$ dH=.WD,hLLHBHHDžHxHOLmLXHLXHCLXHLXHLL2LLHXHHXH1H EH=VD48L IHcK_O1ҾH=EMf1%DDA.eH=EE־3)fDHHsfwDDf(H*AUf(^f(fTfTX1ҾXYEH=EXE\fTf/yo@fED(DCDL*E]A(A(DATE^DXATffE1ZDXY-EH=EX-۴EA\TDZfA/fCDH*^BA}((((XTTfEf1DZXDYH}MML9tH}MT$L9tHpL[L9tEGLHHH1H s]HH5ILLLHUHuL趯H}IEH9t$H}IT$H9tHpHKH9tEGHHH1H ,s]kHH5ILILLNHUHuL.H}MEL9tH}It$H9tHpLKL9ttEG HHH1H r]HH5ILLLHUHuL覮H}MUL9tH}M\$L9tHpHCH9tEG$HHH1H r][HH5-IL9LL>HUHuLH}IUH9tH}IL$H9tyHpLCL9tdEG(HHH1H q]HH5ILLLHUHuL薭H}IuH9tH}ML$L9tHpLSL9tEG6H1HHH q]JHH56IL(LL-HUHuL H}M]L9t{H}ID$H9thHpHSH9tSEG7H1HHH }p]HH5ʲILLLHUHuL脬H}IMH9tH}MD$L9tHpHsH9tEG8H1HHH o]8HH5ILLLHUHuLH}MML9tiH}MT$L9tVHpL[L9tAA4HHH uo]1DH訿HH5̱ILLLHUHuLkH}IEH9tH}IT$H9tHpHKH9tEG5H1HHH n]AEHH5WILLLHUHuLڪH}IuH9tHH}ML$L9t5HpLSL9t EH1HHH Gn]苾HH5ILiLLnHUHuLNH}M]L9tH}ID$H9tHpHSH9tAE1A9H m]HHAH1HH5ILLLHUHuL踩H}IMH9t&H}MD$L9tHpHsH9tEH1HHH %m]iHH5ILGLLLHUHuL,H}MML9tH}MT$L9tHpL[L9trEH1HHH l]ݼHH58ILLLHUHuL蠨H}IEH9tH}IT$H9tHpHKH9tEH1HHH l]QHH5ǗIL/LL4HUHuLH}MEL9tH}It$H9toHpLKL9tZEH1HHH k]ŻHH5I IIIIIII I II I' II1 I; IIE IO IIIQ I[ IIe Io InIy I IVI I I>I I I II II I II I II I' II I II+ I II- I7 I~IA IK I] I^I_ INIi Is I6I} I IIff.UHAUATSHHHxGL%i1H EAžH=EI|$(1HID$HI|$HH@HtD;h |H@HuIT$H9I9|$?L`(1M侢H=Er<ցH=IAŅu[HKxIT$It$I|$HHOH{xHAH5AH豜uPHD[A\A]]f.I|$L`(BDE1侢ULg($HHRAH5CAHLj7HD[A\A]]fHIT$I|$HIt$"fUHAWIAVAUATISHLw`LohM9t,LfDH;HCH9(+H I9uMt$hA$A`AxuAO`gfffAA)H]Lu1H5tHH _]H(FHH57DL$H}LCL9tMl$`I|$hI;|$pLOLHuHUHFID$h H}MFL9tNA$t71Ad* H=IEdA9/<H5EH=HLҐH}L[L9tH57DHHL覐H}LCL9tH56DHHLzH}HsH9tH56DH蹬HLNH}HKH9t\H5e-EH荬HL"H}HSH9t01A$H[A\A]A^A_]DH I9fDAgfffH]AH5H ]]1LuH()HAк>HH5q5DLH}L[L9tA`+wH5/FLyMl$`I|$hI;|$ptXHOHHuHUH!@H5P5DHiHLH}HH9t 1DHLLRsDHLL:suDDAQEEAAgfffH []DD)kdA)H(DAL1D)AкDMbDH(H01H []H ID)Aк辫LPLH54DLLM苯H5g7DL LpHxIrL(HpLI9cHHLpHMHPL(@HxIH8HpH@LxHUIL9HL}HuL9vMVL9>L]L9 H(͖LCHxLEH0H9HuHHHMHPHHUH8LH@@H}HCH9tL(HpIL9tLHPIL9tL H0IL9tH}IL9zfD WfDo@)EfoH)M)f11LADAHNH~HHRIIIIIIII HI.I@DUA HAWIAVAH IAUAATSHH(H~x1HpHh-HH=I:Aąu*Eu~EuyLHH=IAątH(D[A\A]A^A_]Lk`H{xLH=kXIAąuH{xH=XIAąut%H͓H=>IoAą[11HuHEH=ECHCxH}H8UAą1H}H=E{,C1HuH={E1CuvHcK,S0H}HuUAąu]M1ҾH=mIH GI1u19sHH zI¾H=I1S@ADDHAH řI1HpHhf.LHH=IAąLHH=IAą1HuH=AE1CVf.@HGH;GtHHPHGHpHwDUHHHHSHH>HCH[]Hf.DH@ H1Ðff.Hcx HF@e f D DD$ DLcL LV`LcP L^hHcT HFpHcX 1HVxHc| HD0 DD4 D8 džƆÐfDUH0   HHH=ďI]lff.UHATISHHHH;u HH0 L[A\]馠fDHHHH;u fDUHHHH@ҋE@HHH;u fDUHHHH@ҋE@HHH;gu fDUHHHH@ҋE@HHH;'u fDUHHHH@ҋE@HHH;u fDUHHHH@ҋE@HHH;u fDUHHHH@ҋE@HH@H;uHW`HDUH]HfUHAVIAUATIԺSLp HMt#H$H5e1L1HI¾H=|EH=x[E<ցLEu6At I\ I0 HMh MP RLVLlZYHe[A\A]A^]Ðff.UHAWAVAUATSHH8gH߉EHAƉEHALcHA4H߉EiD EDEAILp UMt#HH5-1L{1HI¾H={EH=;ZE<ցLEAƅI$HH9p H=,I?I$L/IE(H;Q{ L-wI$ I$xHHQ(L9HAH;,> HG`H I$pH I$H M$xL A|$ f A|$ g M$IIMH9YH)HHAHH9 L]H}HELGH7LH)I9HuH>LIAH;LHG`HpH}HEHEDP$LD0 DX$D4 I$HHQ(L9HAH;Z,HG`HJI$H7HFH;,NHG`f@I$PLMQ(M9IAH;HG`HI$XLIC(L9 kI$HHQ(L9HAH;HG`HI$H7HFH;b HG`HHvx$8 L DX$D< I$PHHQ(L9=HAH; HG`Hu7I$XLIp(L96I@H;HG`HtLI$PL7IF(L9zjI$PLMqL;5HG`DD I$PLMZ(M9lIBH;I+HG`Hu3I$XHHQ(L95LqL;5HG`H I$PLIp(L9,I@H;HG`HI$PH M$MMZ(L;DIHfL7AV($ I$LH0 I$H8 $ x$J @DuA ExIcHID EAHIMHFHc}E1HcML IDP LcMLIDT LIIHG4IHAHc}L:IDX AL LIx GMFL9I M9uM$ MtLݳI$ Ht˳I$ Ht蹳M$ I$ I9'MI)IIIH=FpA<IIIItxItYIt:LsMt-Anu%MLARAn uMLASfHLsMt AnHLsMt AnN HLsMt An=HLsMt(Anu MLARAn f.HLsMt#AnuILPAn FfDHLsMt An7HI9LsMt AnHLsMt AndLsMt An'Ls(Mt An*Ls8Mt AnLsHMt AnLsXMt AnsLshMt An6HpI9GI$ HtHlL-][I$IM,$A\A]A^]hI M9#MFL9 I M9uM$ MtLI$ HtۧI$ HtɧM$ I$ I9'MI)IIIH=VxA<IIIItxItYIt:LsMt-Anu%MLARAn uMLASfHLsMt AnHLsMt AnN HLsMt An=HLsMt(Anu MLARAn f.HLsMt#AnuILPAn FfDHLsMt An7HI9LsMt AnHLsMt AndLsMt An'Ls(Mt An*Ls8Mt AnLsHMt AnLsXMt AnsLshMt An6HpI9GI$ HtH|L-mI$IM,$耤[Lx A\A]A^]I M94fDH I9fDAI8IIIItmItFLsMt9A~DGEFu(MLAQEV EZE^ Au ILPHLsMtANQAVHLsMtEVEZE^AHLsMtA~DGEFHLsMtANQAVIHLsMt4EVEZE^Au"ILPAN QAV DHLsMt3A~DGEFu"MLAQEV EZE^ ARfHL9LsMtANQAVHLsMtEVEZE^ALsMtA~DGEFLs(MtANQAVLs8MtEVEZE^ALsHMtA~DGEFKLsXMtANQAVLshMtEVEZE^AHpL9DKQSH3HVM\{ qL HAQbfEVEZE^AILPH(AEn AZILRL@ILPAn ILQDMLARAn MLASwMLAPAn EMLAQ6ILRAn I6LVDILPAn xILQjDMLARAn :MLAS+MLAPAn MLAQILRAn I6LVDILPAN QAV @I6LV2DI6LVA~ DGEF MLAQI6LVA~ DGEF MLAQ MLAQEV EZE^ AILPfILPAN QAV 4I6LV&DI6LVA~ DGEF MLAQMLAQEV EZE^ AILPfILPAN QAV JI6LV<DILRAn I6LVD{ DGDC En AMAN I6LVA~ DGEF MLAQMLAPAn MLAQMLAQEV EZE^ AILPfILPfILQfILPAn ILQDI6LVf.I6LVA~ DGEF KMLAQ<MLASILRAn I6LVDILPAN QAV I6LVf.UHATISHHtHtxH)HHwMcD$XMc\$ Mct$MG McMIL]~MOl LUMAL$`Ml$1Ʉu(1Ict$LA|$FH{HHLID$H[A\A]A^]fDLohIULݑAL$u U@I1AEI AEAEAEAEAEAEAEL9uAt$X@UHAWAVAUATSw DO$G4AЉW@G<xLoIMEދGDGLcO,LcLeЙAAMDEAAADAFD0t@WMcLmЃDL-5oIEdEEEAT$AAF<(HcG(1I1EEAMcIHcGPI1IDAEAAu AcAAAAEAtAD<AC49AEt B.IȀG8t_8[A\A]A^A_]fE1E1DE1E1ELcMLmICT*AADWTD_EAL-mIGTEDAAAE׀EWTD_AALmICAAEAGt AiքƒA@Aff.fUIHAWIAVAUATSHH(HmIH4AH=lID,AADSA0LlIO$DeAAXHlIF$AD ҾH=_IHMLEsK AALEAADDKLAL]A{IAI_Ep EhIA@EH$DqDnEEh uEP8HA@4MPEcM;ACEk EK$A{4ES8As 1H([A\A]A^A_]fEAfAE1AAA}Aff.UHAWAVAUATSHLHI9WLjHIIL!MHEȐIH@II;7HwE1ɃAI9HHHtzHtZHt:HtIJ K9JIJ K90IJ K9IJ K9IJ K9IJ K9MQI93J K9MYJ K9MAJ K9tuIAH I9t_IqH I9tIMQJ K9t3MYJ K9tIJ K9;1A~t%IHL!H}tHIH@@׾H=1IiuW1ҾH=RIRu,IL9H1[A\A]A^A_]ú1zH[A\A]A^A_]H[A\A]A^A_]f.UHAWAAVLAUATISHH8HEHHLH96H)IIHI9LE H}ILGH7LH)I9I}H7HFH; HG`HpLHEaL-HELHHLMH; LDUDVHEHELV`ML]HH;9 L}@~HI$LIP(L9' MxL;=D HG`HI$LMzL;=x HG`gLIK(L9- ICH; HG`HI$HHBH; HG`HHt4EHxHH}H; H>DMDNHI$EH7LV(M97 L~L;=D HG`HI$HLyL;=h HG`H L@HLEH; LUVHHwH \Ao$fI~)EM $IQ(L9P IAH; ID$`HEI4$L=HFL9 ID$`HXHH}H9 H>DUDVHEM$ICL9 ID$`HHHMH9' HDEDFHL}MIQ(L9g MaL;%  IG`HEI7L%LnM91 IG`HXHH}H; H>DUDVHEMICL9 IG`HHHMH;# HDuDvHH81[A\A]A^A_]fDI$HHQ(L9 HAH; HG`H-I$LMyL;=1 HG`f4E1HLr@DI$8LICH;JHG`H/DI$hLIq(L9IAH; HG`HI$I$hLMxL;=ҌHG`HDLMx`EMLMH; LUVHHvHEMLmH;9 L.DeDfHHwH6*LEMx`MXLEHH; HMHULfDI$EL?M_(M9IGH; HG`HI$@HLzL;= HG`HLXHL]H;LUVHI$HLA(M9uHAH;" HG`HRI$LIBH; HG`h&I$LIS(L9M{L;=j HG`HXI$LMxL;= HG`HpHEHxHH}H;i H>DMDNHI$HHLH9I$L-{HHq(L93 HAH;Z HG`HI$HLH(M9> PHo I$LICH;!' HG`HfDI$`LMx(M9I@H;U' HG`HI$PH7LV(M9HFH;LHG`H:I$XLIK(L9M{L;=߈HG`HI$LIP(L9 I@H; HG`HI$H7HFH;vHG`HfI$ELIA(H;0!I$pHHAH;HG`LMGLEHH;LDuDvHDI$PLMZ(M9(IBL=]L9DHG`H2I$PHHAL9HG`HpHELXL]HH;HMHUL9@fAHpDHMHUL%HMHULضH@I$H7LN(M9L~L;=HG`HA6A&I$XI$HHAH;2\HG`HD9fI$LMZ(L;HH$L?AW(I$LMkL;--HG`L@fI$HLA(M9HAH;uHG`H%I$LIAH;GHG`x@@I$LMzL;=xHG`HfLEMZ`IHEH;HMNHffAAI$|I$t1fHMHUL`LfDfH~@AwfAHf>fLA;DfH~R@fAA#fAL=6LpfDLfDL$fDLADHMHUL0HMHULH@HMHULHo@M$IIH9HH)III9gIIIII)H9t LH耈K|%LIBH;eL`IL贀EI$@H7L~L;="HG`fJfHMHULHMHULȱyHMHUL谱HMHUL蘱sI$`LMyL;=rHG`HDAAI$HHBH;"~HG`HHDfAwI$LIP(L9I@H;}HG`H I$HLzL;=}HG`Lx AA\0AfDfAbffA;fA HMHULA@@AI$hLIq(L9IAL=5L9HG`H I$hLI@L9=f8fI$ LIBH;"HG`Hp!HA(DAMfHMHULЮFffAbAL>I$`LMZ(M9MjM9u}HG`Ht-I$`HHAL9L?I$HL'ID$L9AEL=ZMAAuHpHhfDUHAWAVIAUATSHH8HEHMLEDn`Hz LMHuEtH=PCxH=IxAą A|1ҁ H=EIBy AH= I@@"@־ ys A AD!@H=IxA D" H=6IAx 1Ҁ& H=JIx IL=mLMH(M9I@H;,y.HG`H, IHHBH;xQHG`fCDIHHq(L9 HAH;x HG`H ILIBH;x HG`g"CD H=ISEw ILIK(L9b ICH;?xq HG`Ht+ILIAH;x HG`h5IH7LF(M9Q HFH;z HG`H1Ҁ{Fu "E1H E H=I;x ;E1ۃw L8PIMK1҃wH#PIL;@@־ H=Ivv ILMH(M9 I@H;w HG`H IHHAH;v HG`f1҄t3;1w HOIH4DC1AwL qOIK;4AAҾ H=Iu# @MD[TMD{LIKPȉKACH{0S1wL%NII4ADDC {AD/ 1Ҹ H=AIH1AIcHA DHAH1ҩu 1E9 H=MIth DA HcC(1L%NNI H=-EK41҅EtD[AK ; CA A1D[$AAHcC(I4HƋCPA ADNE1A)AA AEAAAt~At]At:Atu A, DșuAAE9 DșuAAE9 DșuD9 DșuD9 DșuAAE9 DșuAAE9 A9DșuAAE9\ DȍyuD9? DȍOuAAE9" DȍOuAAE9 DȍOuAAE9DȍOuD9DȍOuAAE9DȍOuAAE9OA9DșH >I AH=>I1A@sDH ?I H=1?IA1A s1҃~ {41҅1H $?I H=h?IrDD[ DAsAǁwDP1A1EEؾ H M?IH=?ID]mrDeE 1H =@I AH=]@I1;rcS0H @I H=HIr?DK$ H=@IA1A!p 1҃{, H=HI_p1҃{~{PDAA1H I H=I|qCP }ȅA@@H=\IowD[$D{D]tb1҃ts 1҃ ¾ H=?Io1CP H=Io}FD}DAAt9t{$tD{C$AIL9S qDAҾ H=EAAoDH E H=%(EA1=15p]CLK H=?IAAn*Dc Dc$1Ҿ Dc4H=?IA snADŽAXƃ{ADHC8t { {$\AAHu19F( A1H ='EH=NEIo{u$LUEJ,AB(DE̙AOC\LmDC\ H=FIAE8{IrlAąmH[q1H ?I =//H=1?I1gnADŽlDHLH=7?IlAą DsDsXIH}HuHMD7L_DSL^DDKIE(EhEhA1}muIH}LuDE9wDWE9Vw wA9vH l/I H=dI15mtA H8D[A\A]A^A_]DmJDA A Ho1=//DIhLMH(M9YI@H;oHG`HifI`LMZ(M9IIBH;nXHG`HfA DAuCLxC 1҃{ H=IjOfA DA[fEfffA DfA(ffAufA {xI`LMZ(M9u2MzL;=&mu-HG`H?A "A!A1CL H=Ii3H'm=//DkAAƃA RLT$HArUHAWAVAUIHHATIARSHHIARH8HEH1HDžDHLL7Hƅ|CLsFDCGDKD@xD{{TfDy@oKLDEdfp)@)0D]D HHq`LLL(L I%ֳC10"fIݨHHHI;M$MIIMH9H)HHjIL9L@siH@IL_H7LH)I9.I>HHAH;zj HG`HpLH@hH@L;x$I$MH7Lv(L;5f iI$pLI@H;jEHG`HL;xI$7L5{[L?IW(f L98 IGH;fHG`H: I$LI@H;fHG`ftL(M9 I$LMZ(M9MzL;=7f HG`H I$H7L~L;= fHG`gMLF(M9HFH;eHG`HI$LIAH;e=HG`geI$LMZ(M9iIBH;feHG`HVI$HHBH;8eHG`HL9xVI$MH7LF(M9HFH;dHG`H I$LIBH;dHG`H L9x }H8MLIK`L;4L;uH8t%HLF`M;M;L8At/I$xLIBH;e#HG`L;XfL8AtH I9L8AIL=ןIHHAL9HG`H;X@H8MHLI@L99HG`L;I$LMZ(M9IBL9DHG`Ht7H8IHHHAL9>HG`H;XsI$H7LF(M9SLvM9%HG`HL8MILIBL9+HG`L;^MݨL}MfDE1HLZkDI$HHLH9HI$L5VHLP(M9# H@H;abHG`H I$LMqL;5asHG`HH_DM$MIQ(H;Ba, IH,HP(NI$H7LvL;5_ HG`H@L;x]MݨHLUI;!L81IH= II9\$7` ML8MIAAHDžpH8Hw`JH9 L)M M,0H)1ҾH=#ILh_ Lc4MIIAxO$uSL9L)MO, L)1ҾH=;#ILPL_ MHc4IAM$L9vK\HIAAվH="ILX^B 1HHH="I^ 1H}H="I^ 1Ҁyu 1H`¾H=u I^ 1Ҁxu zH=t IO^ t[xLP1MH=u"I^X 1HXH=:"I]2 } H8H8>H}HtH19BLHpfE1L0LHD)pHDžL4L8AxEH ELALLLLdL`HxH;3L.LxL`IrHxL`H9L&HxHpHx$HpDI$`HHq(L9@LyL;==`HG`HM$IML@L9ZL)IIIM9^H@IHHHH)H9tHHH@eH@I|HH@H;_HG`HLH@]H@sfDL9ML;=L\HG`HI$LM{L;=\HG`hMIS(L9ICH;['HG`HI$@HHAH;^YHG`HL9x;I$L?IW(L9fDI$hHHQ(L9@HAH;U^WHG`I$HH7=DAI$8LIAH;^HG`HL9xMI$LMQ(M9 IAH;Z HG`HEI$HLyL;=Z HG`H Iݨx$E/m^IݨH`C@AI$LMQ(M9IAH;%]HG`I$HMLIS(L9tICH;Y HG`HI$HHAH;Y HG`hwI$H7LF(M9 HFH;xY HG`HI$LIBH;JY HG`HpL9xI$MLIS(L9 ҄1I$H7LF(M9wHFH;XHG`HI$LIBH;X= HG`x@@nI$LICH;|XHG`HL9xMݨLX5fDI$hLMH(M9O I@HݓH9p HG`HI$`LMZ(M9' MrI9B HG`H~I$`H7HFH9fI$hH7LF(M9)HFH;ZRHG`HLfDI$HHH(L9PHI$LI@H;XHG`HfDQI$hHHAH;YHG`HL9xIݨHuAI$L5AKHHq(L9HAH;~VHG`HI$LMqL;5PVxHG`H JDAMA(ffwfI$@LIAH;XiHG`fAJI$ H7LvL;5XFHG`Hp%ffA AI$H7&DI$H7fDA@MݨLEAI$LIS(L9ICH;W.HG`HANHI$8LMsL;5bWHG`HIݨx$fZ?}fDfVfAffI$LIAH;V,HG`HL9xxMݨLP{@%fHe[A[A\A]A^A_]IcfDAI$L8DAI$LI$hLI@H9E1h1H}H=IRuiL81At 1H}¾H=QHQu7H81H}H=JIQAAA' \\IݨHUMݨ1ҾH= EM,QsH8 u2H=@CP*D#IݨH}`I$H FL?MW(I9IGH;HQHG`HI$`HHq(H9TLqL;5 THG`H@I$PLIQ(H9yIAH;SHG`HI$XLMS(I9_MsL;5SHG`HI$HLy(I9HYH;\P5HG`HUI$LMpL;5.P{HG`HIݨHMA;H@H@XpAtMshN<L@K H9L)MO,8L)1ҾH=rILpNMIAI$HHHAH9@=AL@L@I$LMxL;=NHG`fE19I$PLIQ(H9IYL=gL9HG`HI$PLICL9iHG`HpHHDž HxH(Mݨ1ҾH=DMgM10A.H=DE־5MxAHAA\AH@H@PAaAMݨL]HHxL`L8D@HDž`A{HDDHxH8HLHHHSjDAUpDN8hH0H=;HfJHpH{@KM@eI$X?H@AH@IL L(GA1A.6AH=DAEJFefAAfAfAAf=?@A!H=DAAUJA6H=DAfA|fA|Af<AE!AAJH@H@H@AH@AME1LE1&1H}1MH= IfIUKL=bUAI$`H7HFH;LHG`HP1H}H= IH!1H}t 1H}¾H={IH1H}H=UHHAHVhH1HpH@H{$BAAEAAWCAHXH]1H}SALH財Hx;L`HL蔡HxINwI_wIWwHUHAWAVAUATSHLnI9HLvIHM}L9HVI9w]B);H3I|$L{BD.I<$LM9tZM$LKML$LSLMT$L3HCCH[A\A]A^A_]A1LHH c@oCAD$dH=`0D2DfUHAWIAVLPAUIFATSHHPHDžXƅ`j# 9#y#Aw2AOHgIHc4HfDH5 ILYfA3" Z":"HXHH)H%HPI~LkH9#L`M9LHA; fo IFloatfDfLPLX1LpH5FFH \LADEGPHHA11H  IL0H]HPLSLULI9L]HHHMLhLmHH@@LmHI9#LEI}LKH@M9"HuH9@mC(;L]MUHSLUCD+LmHuIMHMH9 HEHuHEHUH{EH}LHUHEH}MEL9tgFH}LKL9tUFHpIt$H9t?FEGTHHL1H o\莩A11H B ILLSHPLULI9=L]HHHMHxH}HH@@HuHH@H9["LMHLSH8M9`!L]L98/H@A;H8H}IELKL@HMBDHuHEL9LUHuLUHUL[LEL]HUHEH}IuH9tDH}HSH9tDHpIL$H9tDEGHHL1H \#A11H HLjH{LHH}LM9LELPLULXL]LH@@HuHH@H98!H}HHKH8H9 LEL98L@B;L8L]IEH{H@LUADHuHEH9HMHuHMHULCLELEHUHE#H}IuH9tCH}LKL9tCHpMT$L9tiCEG HHL1H \踦A11H ILL[HPL]H8H9H}HHHML@HLLEHH@@)HUHuLYH}IEH9tBH}HsH9tBHpML$L9tBEG$HHL1H \A11H IL5LSHxLULI9L]HPHUHHHHMH8LH@@_HUHuLH}MEL9tAH}HCH9tAHpIt$H9tAEG(HHL1H \$A11H HLkLKLXLMLM9[LUHxH}IHPHULH@@HuH@L9 HEHLKH8L9&LUL98L@B;H8HUMEHCH@H}D HuLEH9LMHuLMHULSLELUHUHE%H}IuH9t@H}L[L9t@HpIT$H9tk@EGFL1HHH \蹣A11H ILH{L@H}HL9HMLHLMLPLULH@@HuHH@H9H}HHSH8H9HMH98L@B;L8LUIEH{L@LMCDHuHEH9HUHuHUHUHKLEHMHUHEH}IuH9t'?H}LCL9t?HpML$L9t>EGGL1HHH )\MA11H oILLSHxLULI9L]HPHUHHHHMH8LH@@HUHuLH}IEH9t\>H}HsH9tJ>HpMD$L9t4>EGHL1HHH ^\股A11H qHLLKLXLMLM9)LUHxH}HPHULH@@HuHH@H9sLEHLKH8M9LUL98L@C;H8HUIELCH@H}D HuHEL9LMHuLMHULSLELUHUHEH}IuH9tLUHuLUHUL[LEL]HUHEH}IuH9t<9H}HSH9t*9HpIL$H9t9AE1A9H F\HHAL1UA311H HL LCLPLELM9LMLXL]HpLHuHLH@@HUHuLH}IEH9td8H}HSH9tR8HpIL$H9t<8EL1HHH c\臛A11H HL H{LHH}LM9LELPLULXL]LH@@HuHH@H9HMHH{H8H9LEL98@L@B ;L8L]IEHKH@LUADHuHEH9GH}HuH}HULCLELEHUHEH}IuH9t6H}LKL9t6HpMT$L9t6EL1HHH \A11H HL_ L[HPL]HH9wHMHxH}L@LEHH@@HuHH@H9LUHL[H8M9jHMH98 H@A;H8LEIELSL@H}CDHuHEL9L]HuL]HUHKLEHMHUHEH}IuH9t5H}HSH9tt5HpMD$L9t^5EL1HHH \詘A11H 9HLH{LPH}LM9HLMLXL]HHHLHMLH@@HUHuLJH}IEH9t4H}HsH9t4HpIT$H9t4EL1HHH \ۗA"11H HL"LCLHLEH8L9 H}LPLULXHLL]LH@@LHUHuL|H}IMH9t3H}HCH9t3HpIt$H9t3EL1HHH \ A11H HLTHSHxHULI9 LELHLMLPHLUH8LH@@~HUHuLH}M]L9t3H}HKH9t 3HpID$H9t2E1A;HHH \L16A!11H IL}HsHPHuLI9 LEHxH}LHHLLMHH@@HUHuLH}MUL9tE2H}L[L9t32HpIL$H9t2E1ALHHH E\L1_A!11H ILHsHPHuLI9 LEHxH}LHHLLMHH@@HUHuLH}IEH9tn1H}LSL9t\1HpM\$L9tF1EL1HHH m\葔A011H HLHKL@HMH0L9 HuHPHUHxHH}LLH@@HUHuL2H}MML9t0H}HCH9t0HpMT$L9tx0EG0L1HHH \ƓA!11H eIL L[HpL]HH9 HML@LEHPLHUH0HH@@7HUHuLgH}MML9t/H}HCH9t/HpMT$L9t/EG\HHL1H ݱ\A#11H [HLCH{HpH}LI9 L]HHHML@LLEH0HH@@mHUHuLH}IUH9t /H}LKL9t.HpID$H9t.EG,HHL1H \2A11H ILyLSLXLUH8L9AH}HpHuHHHLHMLH@@HUHuLH}MEL9tA.H}HSH9t/.HpML$L9t.EL1HHH A\eA11H ,HLLSLXLUH8L9dH}HpHuHHHLHMLH@@HUHuLH}IEH9tt-H}LCL9tb-HpIT$H9tL-EL1HHH t\蘐A 11H HLLKHxLMLI9LULXL]HpHuHH8LH@@ HUHuL9H}IMH9t,H}HCH9t,HpMD$L9t,EL1HHH \ʏA11H yHLHSLPHULM9LMHxH}LXHLL]LH@@;HUHuLkH}IL9t+H}HH9t+HpIL9t+HXII)I(HPIvLH9H`I9~HLHHIH5HHyHLHH)H)΁HLPLXAƄIHXHPHLjpHPIL9t*HĨ[A\A]A^A_]fE1AA@E1AA@A1HLH DH6A1LHH HncyH@A1HH $ncDH@A1HH mcDH@A1HH mcDH@A1HH mczDH@A1HH mcR&DH@A1HH \mc*pDH@A1HH 4mcDH@A1HH mcDH@A1HH lcDA1HLH cHfoP)Uzfo`)effo]H)]fomH)mEop)ufDoHD)MDo@D)E5fo}H)}hDoPD)UDo`D)efDo]LD)]$DDopD)u8fDomHD)m`DDoxD)}oH)M/ffoEH)EXfoUH)Uo`)e1foX)]SffomH)mop)urf.ox)}(fDoHD)MfDoEHD)EDfDoUHD)U DDoXD)]DohD)m@Do`D)ebDopD)uop)uUfoh)mwfo`)efoX)]foP)UfoH)M fo@)E.fDoxD)}NH5xHL@H5vHL@LXIM)ILPMVMeM9L`M9"MfooHHv_bfloatIAAA16; AHPLXBD**@A11LH Hf.A11LH HfA11LH HifH5HL@H5HLt@H5HL\@H5HLD@H5HL,@A1LLH HfAPDAD,fDADAD/fDAUDfDADfDADfDAH= DH= DH= DH= DH= DH= DH= DH= DuH= DiH= D]H= DQH=s DEH=g D9IxPHPHPIPHPIPHoPIPH_PHWPIQI QIQI(QH/PH'PI*QHPIXQHPHOIZQHOIvQHOIQIQIQIQIRHOIQI RHOI&RIOIQILRIaLUMOLMCD:L{pH{xH; L_LHuHUHvAxH5>Le1H ˞\LH(A11H HwCL,LmLHI}H}LM9LELPLULXM|$L]LH@@H}L9t L{pH{xH; HOHHuHUH~HCx H}IMH9tt71A~d* H= Hp( EvdA9/H--std=c+I|$+1HuHsxH}fAD$AD$7HE EH;RLFLHMH9HLMLNHUHVHCx Mt$A-wEHsxLufDUHEH;H~H>HEL9HL]L^LELFHCx Mt$LuHEHsxH_CUDACC_fDoHHEHHD@RTC_@_HE@H;HVHLUM9LH}H~HEHFHCx H-defaultM\$AicHuHsxL]AD$-devfED$AD$eHEEH;\HNHLMM9LHUHVLULVHCx I|$AatHsxH--use_faH}HEAD$st_mfE\$AD$hHEEH;LFLLuI9ML6HMHNLMLNHCx ufMT$HsxH-rdc=truLUHUAD$eHE EH; H~H>L]M9^ LLELFLuLvHCx DC4H(L1H \|A 11H HL\IuLHHuHL9HMLPLUHPHULH@@H}ID$H9t>H{xH;L_LHuHUHzHCx I|$H}^fDo5HHEIE_NONE=0HEHsxD0L@HE@H;HNMT$HLMM9LHUHVHEHFHCx It$HuAD=HEfo-HHEHsx(@E_STfDX@1HE@H;H~IL$H>LuI93L6LMLNLULVHCx IT$HUHfo=HA=2HEHE_1D1X1XHpHsxHE8fDXHE@H; HFIHLEM9LLeLfH}H~HCx {0HUAH H1L H{xH;LL?HuHUHxHCx H}IE1L9tHD[A\A]A^A_]fAN`gfffAA)%fH fH1LH{xH;vHLLH H1LG9fHLL®LDDohD)mfDoUDVsfDoMDNfouvLffo]^ffDo]D^fDo}D~JfoefffoEFJfo`)e9foh)mnfA1LLH iEFLLUH}Mt$L9^fLL%H}ML$L9.fLLH}It$H9J@fLLH}M\$L9fLLH}It$H9ndfLLeH}IL9 of.LL5H}MD$L9H>>fLLH}Mt$L9fHLLRDHLL:DDQDEAgfff H \)H(kdA)LDAA1D)AкuDAMbD AH0H(1H \IHD)AкuA11H mCLLPHxINHPH0H9L@HPL`LH@LXH8H@HXHH H9LPHIVHI9xH`H9H A;.LLPINHpL LXHLXCDHPLpH9iHXLEL9AL`HpJHxHPHDžXƅ`H LMMDHML; IEH9L]L; eH1GHpL HLxBIL$HPHMLI9LMLPLUHxH}HH@@HsxH;HFMD$HL]M9LHMHNLMLNHCx HHpHH9tHPIL9tLH0IL9tH}MUL9fDoeDfA nDLL5H}ID$H9}>sfMHIZLH f.ADH A1LH :mCeDoH)Myf.HXLEHDžXAfo`ƅ`J<HxH L)Eox)`mfoUVEf.IH11LffDLLտH}It$H9 fA#D1@7Hp.H=0C H=$CI@I @I!@Id@I&@Hn@I@H@H@I@H@I@H@H@IAHAH'AI9AIKAff.UHAWAVAAUAATISHH8F x1H H~H5mHHMLDRH1HpHhTHHHAH;HG`HpLHEeHEȋp$L牳0 @QD@$D4 I$L7M^(M9IFH;|HG`HI$HHBH;HG`fI$PLII(L9SMqL;5PRHG`H(I$XH7HF(L9I$LMX(M9SMpL;5bHG`H@I$HLrL;5|HG`HHx$8 I$PH7LF(M9HFH;}OHG`Hu7I$XLMS(M9iMsL;5FHG`HtLI$PL?IG(L9rI$PHLrL;5HG`DD@ I$PLII(L9MyL;=HG`Hu3I$XH7LF(M9HFH;'HG`H2 I$PLMS(M9gMsL;5LHG`HtI$PH8 M$IHJ(H; AIHL?AW( I$LH M$L Nx$D  LNH1Ҿ H=D@$I$L7M^(M93AVHAH ǃ L/M}L;=HG`D D(  T 1҃Dd DɃ D΃ EA A E4yA AA "ADP 1҃T ¾ H=HuIFH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHH=`-HHHHtqHtRHt3LsMt&AnuILRAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILRAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtHLL-=[I$IM,$A\A]A^]HI M93LfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHLsMtENEQEVA=HLsMtAvVAVHLsMtA~GAFcHLsMtENEQEVAHLsMt3AvVAVu#MLAPEN EQEV AHLsMt3A~GAFu#ILQAv VAV fDHI9LsMtENEQEVA|HLsMtAvVAVKLsMtA~GAFLs(MtENEQEVALs8MtAvVAVbLsHMtA~GAF5LsXMtENEQEVALshMtAvVAVHpI9KQSH3HVM{ L HAQf.MLARAn (MLASMLAPAn MLAQILRAn I6LVDILPAn nILQ`DMLARAn MLASMLAPAn MLAQILRAn cI6LVUDILPAn &ILQDMLASA~ GAF fILQX@MLAPEN EQEV AMLASMLAPEN EQEV A~MLASoMLASA~ GAF 3ILQ%@ILQAv VAV MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILQ@ILQAv VAV MLAP@MLARAn MLAS{ DGDC MLASA~ GAF ILQ@ILPAn ILQDILQAv VAV MLAPq@MLAPfMLAQMLAPAn kMLAQ\MLASqfMLASA~ GAF ILQ@I6LVbfMLARAn MLASMLAPEN EQEV A\MLASMfUHHFHHAVAUATISHH HtCI$ Ht&L-MKM$ I$ I9t)H;LSL9(H I9uI$ HtHLv,M$ M$ IM$M9t'I>IFH9I M9uM$ MtLmI$ Ht[I$ HtIM$ I$ I9LH)HHHH=h-HHHHtqHtRHt3LsMt&AnuILRAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILRAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtH L- I$IM,$[Lx A\A]A^]{I M9+DfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHLsMtENEQEVA5HLsMtAvVAV|HLsMtA~GAF[HLsMtENEQEVAHLsMt3AvVAVu#MLAPEN EQEV A{HLsMt3A~GAFu#ILQAv VAV fDHI9LsMtENEQEVAtHLsMtAvVAVCLsMtA~GAFLs(MtENEQEVALs8MtAvVAVZLsHMtA~GAF-LsXMtENEQEVALshMtAvVAVHpI9KQSH3HVM { L HAQfMLARAn (MLASMLAPAn MLAQILRAn I6LVDILPAn nILQ`DMLARAn MLASMLAPAn MLAQILRAn cI6LVUDILPAn &ILQDMLASA~ GAF nILQ`@MLAPEN EQEV AMLASMLAPEN EQEV AMLASwMLASA~ GAF ;ILQ-@ILQAv VAV MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILQ@ILQAv VAV MLAP@MLARAn MLAS{ DGDC MLASA~ GAF ILQ@ILPAn ILQDILQAv VAV MLAPy@MLAP fMLAQMLAPAn kMLAQ\MLASyfMLASA~ GAF ILQ@I6LVbfMLARAn MLASMLAPEN EQEV AdMLASUfUHSHHHHH HCHCHC HC,HC8HCDHCPHC\HChHCtCCCC(C4C@CLCXCdCpC|HƃHǃHƃHǃHƃHǃHƃHH HHHTHǃHƃHǃHƃHǃHƃHǃ H(ƃ0Hǃ8H@ƃHHǃPHXƃ`HǃhƃƃHƃ Hǃ(H0ƃ8Hǃ@ƃPƃ\H`HHHƃhHpƃxHǃHƃHǃHƃHǃƃƃHƃHǃHƃHǃ H[]fUHSHH HHH HpH|HHHHHHCƃxƃƃƃƃƃƃƃHƃHǃHƃHǃHƃHǃHƃ Hǃ(H0ƃ8Hǃ@HHHHHHƃPHǃXH`ƃhHǃpHxƃHǃƃƃƃHƃHǃHƃHǃ HƃHǃH[]UHSHH/ HHHHHHHHCHSCHSCHS C(HS,C4HS8C@HSDCLƃHǃHǃƃHǃƃHǃƃHǃƃHǃƃHHHpHHHƃPHTƃ\H`ƃhƃxHǃƃHǃƃHǃH[]ff.UHSHH HHHHHHH0CHpƃxH|ƃHƃHƃHƃHƃHƃHƃƃHǃHǃƃHǃƃHǃƃ Hǃ(ƃ8HHH`HxHpHHHHǃ@ƃPHǃXƃhHǃpƃHHƃPHTƃ\H`ƃhƃxHǃƃHǃƃHǃH[]f.UHSHHHHHHHHHHCHSCHSCHS C(HS,C4HS8C@HSDCLƃHǃHǃƃHǃƃHǃƃHǃƃHǃƃHHHpHHHƃPHTƃ\H`ƃhƃxHǃƃHǃƃHǃH[]ff.UHSHH?HHHHHHH0CHpƃxH|ƃHƃHƃHƃHƃHƃHƃƃHǃHǃƃHǃƃHǃƃ Hǃ(ƃ8HHH`HxHpHHHHǃ@ƃPHǃXƃhHǃpƃHHƃPHTƃ\H`ƃhƃxHǃƃHǃƃHǃH[]f.UHSHHOHHHCHCHC HC,HC8HCDHCCCC(C4C@CLHƃHǃHǃHƃHǃHƃHǃHƃHǃHƃHǃHƃH[]ÐUHSHHOHHHpH|HHHHHHHCƃxƃƃƃƃƃƃƃHƃHǃHǃHƃHǃHƃHǃHƃ Hǃ(H0ƃ8Hǃ@HHƃPHǃXH`ƃhHǃpHxƃH[]ff.@UHSHHHHHHHHH0CHpƃxH|ƃHƃHƃHƃHƃHƃHƃƃHǃHǃƃHǃƃHǃƃ Hǃ(ƃ8HHH`HxHpHHHHǃ@ƃPHǃXƃhHǃpƃHHƃPHTƃ\H`ƃhƃxHǃƃHǃƃHǃH[]f.UHSHHHHHHHHHHCHSCHSCHS C(HS,C4HS8C@HSDCLƃHǃHǃƃHǃƃHǃƃHǃƃHǃƃHHHpHHHƃPHTƃ\H`ƃhƃxHǃƃHǃƃHǃH[]f.fHc HF@ Hcd HN`Lch LFhLcl LNpLcp LVxD0 D4 8 dž Hc 1ƆHÐ@H@ H1Ðff.UHHHzHH>tHHD]ff.LH HHcH wqH td1Mt]I I@IIIIH1øf2tug1MtI I@I?I%IvkI9H@:w1MtI I@III>H1@:1M!I vKI@vRI}IvgIH1øf.H 1fDH@1fDIvIH1H1IwH1IVHIw H1I.H1ff.Iʋ  UHAWAVAUATSHӺHhA€¨EAEbE0EjCD AEE$AEIE0AAEAAAD9E9AE9Atr1D#1[A\A]A^A_]fDA¨\@tAzAzɉEԃAzEAA5DE~ABD6AAAEtEA™A\ARfDA™A:f.H97 H9HIUH)H)I)HIHHAVL)AUATL$SHI9fDHL)I9Ik N N HIHKMAI9AEHwHIE11IMA IIIIteItAItDo3Eo;AD;E3BoCoHBCIBo CoHBC IBo,Co$HB$C,IBo4Co<HB<C4IFoGo HF GIFoGoHFGII9Fo$Go,HF,Go|G$FotF|CoT GtBoD BT Co\0CD BoL0B\0Cod@CL0Bol@Bd@Co|PCl@BotPB|PGoL`CtPFoD`FL`Go\pGD`FoTpF\pGTpII9#IIJ H4 IL9t=D.E IVDE+H9~(NESIDVAKL9~DvEkDnEsHHIHLI)HL)I95HLHH4MI)MILjI)MM9I)L9IpHwMIL1I1MAIIIIt`It>ItAooHAAo o HA HAo,o$ HA$, HAo4o< HA<4 HEoDo HE D HEoDo HED HEo$Do, HE,D$ HI9Eo4Do< HE<oT D4 AoDATo\ D AoLA\od L AolAdo| l AotA|DoL t EoDELDo\ DD EoTE\Dol DT EodElDd HI9+LHIIIK41MI9t?DVE^LkD^EVM9~&VANHNAVI9~^EVDVA^IKHHIHHUHÐMHE1AIIItwItYIt;ItAqEZAHEYArA AIAA HE4A4IA4E4HA EIEA HAE4IE4AHA4A IA A4HAEIEAHM9E4A4IA4A\E4ALA\E\ALEtE\ALEtAtALEtAtA\EtE\A\AtE\A\AtALA\AtALEtAtEtH M9S0DHE1HHtyHt_HtEHt+HtD AAE B GFC IF,C4B4G,IBG F CIB GFC IF,C4B4G,IBG F CIL9B GMnFC B4INCBC4D MnEDE B4INCBC4D MnEDE B4INCBC4D MnIEDE B4CBC4L9WfLHH^LfIHH)HOIIL9AH9AEHMPE1LHHHBHHHHHtxHtXHt8HtDo'Do.AD/D&Fo47Fo<6F<7F46IBo7Bo6B7B6IBo 7Bo6B7B 6IBo,7Bo$6B$7B,6IBo<7Bo46B47B<6IFo7Fo 6F 7F6II9Fo7Fo6F7Eol6F6Eod>IEl>Eo|6Ed6Eot>E|>AoT6Et6AoD>AT>Ao\6AD6AoL>A\>Aod6AL6Aol>Ad>Ao|6Al6Aot>A|>EoL6At6EoD>EL>ED6I9'MIJHHM9t8DD#L_D'DL9t#DOKLWODKL9t WCGSH[A\A]A^][LA\A]A^]HHsD3L,I9t HPHlEuLIBEjH9tH)LHHH)BD+LII)IIIAIItItdItIIt-ItD/LVHWD.DA:HIzEBD"EHIDZEbD A HIJEJE2HIDrABD*AHIZEjA:DHIzEBH9ED"H I DZAJEbDJJErEJBDrAZABDjZAzEjDBzEZEBDbDZAJEbDJJErEJBDrABH9w*ff.UHAWIAVAUATSHHHLL;%гLL H I9SMl$LML!HUfIH@MM;7HwE1҃AM9HHHtzHtZHt:HtIJ O9JIJ O90IJ O9IJ O9IJ O9IJ O9MZI93J O9IBH M9MBJ O9tuIRH M9t_IrH M9tIMZJ O9t3IBH M9tIJ O9;1A~t%IHL!H}tHIH@@׾H=THyub1ҾH=uHbu,IL9H1[A\A]A^A_]ú1zH[A\A]A^A_]AIXH[A\A]A^A_]Ðff.UHAVAULoATSL/HtrIHIHHw2Hu$AAD$I\$AD[A\A]A^]HtHxI\$I$ILHL荲M,$H=hB ff.UHATSHHL`Lht#)p)M)U)])e)m)u)}H HEH@Ld$H8H(IHO5\Dž( LH0Dž,0腯HKHcH u&E$$DcHsH1He[A\]fOI$ALKIHSK|J|L)I)̉1E1DQKAAK9 EAtnAt[AtGAt4At At M1ҾH=HXDHLfD0DDPE҉4H(D(AEHD,AH@E ED0LxAH E …H@H@lj8DuA HH@LXA HH`DžA HHDžDA EHDžADE)))DžDžuE{A1H HH=\HFu:D1AH H H=HA9<% H8[A\A]A^A_]ÐL L ELHLLHL(H E1D;(8,8ABD>AD؅pDAD DAA lL5HOcMAAAH+,AAHHetQ H`HADIHHDAǀrA|L@LƒLOLDؙAALcM9I9vDEqI9LHpMXDAHDžD9ND9AOE1D9A9TEAD9EEDEtDfn1E1DfnDfDnfbDfnDfDbDfDlDA1$@D$A  AEF$A DEAhfo fo0Hpfo@foPHHL`LEL)pDž)))LDžtDEu DžbfDAAAALE1DD9ND9AOD9AOE1D9A9uAEAD9EDHpIUHpZHp+    ]CA9aAVL@L<8M9~LXrMLHLpMHp1IIL $nDjIUHpLprJMuAA EfUfHAVAUATSHHPHHUHuH@H0H)EHUHMHEHE9foMLL`HEHuLeLmHpA LedA &A H]MLULUI)MIIM\IN4MII{H;tHHT҄oHMHHyH{tH7HDЄH}HHH{tLIDЄmLMIIyH{tLIDЄXH I9L]Zf.ILEL9e3M$LMMaLefDILEL;eM$H}LgLeLIhH}LLLELLevf.MI)IItIubHLu+HHLuHHLt3DL9H}Ht謢HP[A\A]A^]DItHI9@HI9@HI9@H}LLLeH}LLLeIIU1ҾHAWAVAUATISH(H H+ H=}HH= 袟I$ EL}LuM$ LHXLHULELLHHLHMEHs0LLHuLyELLHH}L\ ukA$   1Ҁ t#EH LLULHEUH([A\A]A^A_]ELLLLLEA$ xM$ MQ`EMLLLL] \ELLLLLei:@EL뮐fU HAWAVAUIATISHdH HhHDžd1HEHHEA I E E HTHAD\E DP`E1M Ms`MMLHHXHVE11E1ƅE1I$HDžHDžH9aH;C0D Et*H;u!I$DH3fDH; F t H;  L9u  H;H H;EM$L ItLHDžHD1M$M9@ H=HH˛+M$MX MIAK ;I9uM)MiO$M)1ҾH=yHL}sLMX H؃IL9FI)L:N$M)1ҾH=yHHE$MIAA 2HEMH MM9q O4ILAAԾH=yHHM!HhH}H} t H} t H} tHp t H}HxA *IP H1H}H5vAEXLH==DEEfA|fA|fAMĨHH9IH9tH;S0uD Et H;H;~ t H;0 t H; bL9u  H;HH;;E2MĨLf@tLhtHHpEtLxE1H¾H=#QDZE AYA E1H xuHH=hBojDMĨL}nMĨL}4MĨA<DMĨADIĨDHDIĨDHDM$L}H;I$HEHDžD1L L0f1LPLL)0HDž@L A D`HDžDD\H8DAArIPAЉr>Ar5BAr,BAr#BArBArBArBuEH1EE@1ǸOD_HDLIHH H;@HH8A HI I, I M8 VjE AW0Ex H0H=[sH螓H0H{IĨHUE1IĨHUlIĨHUvIĨHU<MĨL}FM$A2DMĨL}IĨHUL1ҾBAH=m7DA.AE=EHDDff@fA?@!@H=M7DKIĨHU7IP H4N M91M)M%M$2I)1ҾH="HLU茒MIAy >H0E IDž(E I jWE HL AULDDHDLHL L$$D$:<H0H=UqHJ[>H0=AAE&E11I$HEM$L}I$HELLVH%UHAWIAVAUATSHH -H1H 3DAľH=3DH{(1/ HCHZ H{@HH@HtD;` |H@HuHSH9( H9{F )Lh(1MH=ID\<ցH=EHtD IUIuLPI I}HМI I}IUHIu豜E0 I~HDžXHPƅ`A[ A 9 E E4 A A  E E8 A A a E@ H5ZUHLPH5*1LeHpE H \HHHHH5`UHLgLmH#bLLUHUHuLOH}M]L9t H}ID$H9tHpHSH9tHHE H1H \=HH5THL+gHbLLTHUHuL OH}IMH9twH}MD$L9tdHpLKL9tOHHEd H1H w\HH5Q=HLfHbLLSHUHuLwNH}MUL9tH}It$H9tҏHpL[L9t轏HHE H1H \HH5mHLfHmbLLeSHUHuLMH}IEH9tSH}IT$H9t@HpHKH9t+HHEh H1H S\HH5OSHLueHbLLRHUHuLSMH}MEL9tH}ML$L9t讎HpLSL9t虎HHEl H1H \HH5RHLdHIbLLARHUHuLLH}IuH9t/H}M\$L9tHpHCH9tHHEp H1H /\cHH5);HLQdHbLLQHUHuL/LH}IUH9t蝍H}IL$H9t芍HpLCL9tuHHE H1H \HH5QHLcH$bLLQHUHuLKH}MML9t H}MT$L9tHpHsH9tHHE H1H \=HH5VQHL+cHbLLPHUHuL KH}M]L9twH}ID$H9tdHpHSH9tOHHE H1H v\HH59HLbHbLLOHUHuLvJH}IMH9tH}MD$L9tыHpLKL9t輋HHE H1H \HH5HLbHkbLLcOHUHuLIH}MUL9tQH}It$H9t>HpL[L9t)HHE H1H P \HH5HLraHbLLNHUHuLPIH}IEH9t辊H}IT$H9t諊HpHKH9t薊HHE H1H \HH5hHL`HFbLL>NHUHuLHH}MEL9t,H}ML$L9tHpLSL9tHHE H1H , \`HH5HLN`HbLLMHUHuL,HH}IuH9t蚉H}M\$L9t臉HpHCH9trHHE H1H \HH5s7HL_H!bLLMHUHuLGH}IUH9tH}IL$H9tHpLCL9t߈HHE H1H  \:HH5@6HL(_HbLLLHUHuLGH}MML9ttH}MT$L9taHpHsH9tLA E1HHA98 H o \HA1HH55HL^HbLLKHUHuLfFH}M]L9tԇH}ID$H9tHpHSH9t謇I HXHPH FHHEt H1H \HH5eHL]H;bLL3KM HUHuIEH}MML9tH}MT$L9tHpHsH9tHHE H1H  \JHH50eHL8]HbLLJI HUHuH EH}IL9tyH}IL9tgHpHH9tRI H5dHHHEH5IgHL9EM HXHPI$DM HAH52IfDI HH5HLjEDHPIL9t谅DHĘ[A\A]A^A_]H{Lh(fDE1Lo(H5HHLYD@H5HHLAD@H5HHL)D|@H5GHLD@@H5GHLC(@H5GHLC@H5kGHLO@H5jGHLO@H5%GHLOI|IʹI鰹IvIعI龹I^II̹IFIII.III-II II:I IIOI5IθIEI+I鶸ILI2I鞸IaIGI~I~I\InI鋺IqIVI頺I醺I>I6IںIII IպIߺIIII·I޷IIIƷ@UHAWIAVAUATISHL L M9t)LH;HCH9kH L9uM$ A$ A`M$ *AxuAO`gfffAA)LuH]1H5LH >\H(kLH5BHYXHL6H}LKL9t輁H}MVL9t誁A$ t71Ad* H=FHQEdA9/H5 9DH9HL.6H}LCL9tff.UHAVAUATSHH D LEt A}`AH ~=.H A H &H1HpHh.OH A1H HHpHhOHH=6DyAąu7 u H F:H=GxAątH D[A\A]A^]ÐH :H=maHxAąu11HuHEH= 4DӸAH H}H8UAą1H}H=3D yx  J1HuH="D1WAHcx | H}HuUAąu`M1ҾH=@HH @H1y4u19 H /H¾H=/H1y@ADH t|=/Eƃ @LHH=F_H7wAąK  L H L(?H=GvAąLH4H=^HvAą  LH >H=^HvAąAD1HuH=2D1謶Ax H}U؅@UHAUATSHHHGHPH;XttLPL;XtdE1{HMHAHUHuELMHEEl$HEHEHEHEHEEMt1HH[A\A]]fDE1AHMLAHUHuLMuMuHUH9UuAL$9KuHuH9uu}@8}fDUHAWAVAUATSHHHGLPL;XtzLPL;XtjE1A}HIAHMHULHuLMEE~HEHEHEHEHEHEELt1HH[A\A]A^A_]E1HMHUAHPAHuLMiLuIT$HEHPq<uvyHЃLPL]EHaH/LLHHuƃ  H=Q1f1f IH H;H0 Hǃ ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( HL Hǃ L( L0 L8 ǃ@ #Iƃ A|$`` [A\A]A^]H L tfH=wB]H=^B]H釚I鏚f.O,ȃHHHLB8t ItqXLcNMZ8M;t IJMÍA*HcL Iq8M;t HLDQAMcJHP8L;t HLDIAIcLMZ8M;t IMÍAHcL Iq8M;t HLDQAtpMcJHP8L;tHufLDIAtHIcLMZ8M;tIu> M؃t"HcɸH M؃t"HcɸHCL UDU L@EHDL@LHDž@ljL *owuL@1҅L=CHH =C1VH==CUAXAYH8u LHDž@ljL nw1҅HLB=C1WH =CH==CSU^_yd H8LHDž@ljL nwuL@1҅HH u-He[A\A]A^A_]fDHeظ[A\A]A^A_]@t;Heظ[A\A]A^A_]L@ @L@Y@댐UHSHHH]OHHHHtxHH߾[]QDUHSHHHOHHHHt8HH߾[]eQDH H H)HUHSHHA~HtH=GRt}@HEHH E HtH LF~NMtH=Rt>A@LEH M HtxH1[]@fA@ff.UHAWAVIAUIATSHLbL:MtH=uQAD$OHHML{HLcHMtH=8QAD$LC(IU1+LLC AxAohHSHIcULIuH NL ~ƃIL MtL-PMtOAET$AtPIHL[A\A]A^A_]AD$DAD$BDET$EZE\$AuM<$LAWMt$AED$ AuI $LQDED$ APAT$ IMtLLHWH97UHAWAVAUATSH_HH9IIIABI9I9t HLLEL)I|nULEHE}I9yHcIcMHIIM̀HEuI9LcSHCMK9ԀDLcXHpILK܀H9A9LcVHL^OԀL9DIcKLÌH9A LcNHFL^IK̀H9E LcNLL^ÒL9}xHcNLDNL^ÌH9}XLLc^NLVK܀H9}9Hc~LD^LVHIML9}LHDHD8I9H[A\A]A^A_]ÐHcKHCII9̀}DLcXHpILO܀L9~A:HcNHL^M̀L9~IcKLÌH9lA HcNHFL^IÌH9EA HcNLL^M̀L9"NHcNLL^M̀L9LLc^NLVK܀H9D^Lc^LLVHMK܀H9Lf.f.DUHAWAVAUIATI)SLJ*HHhHEH]IIEHULLGHHuILI%I$I$IH}ILEHIHH9LMHMAL)MHMIIItvItXIt:ItHuLHLL~8LMM~LLHLMM~LLHLMM~LLHLMM~LLHLMlM~LLHLMTI~LHHH}L;LMLUM)MILmMnM~8LLLHLLLMnTHLLLM~pHLLLMHLLLMHLLLMHLLHML|LHLLMhL]M)I8LmMLuLHLL;IL+u]MLxILuLEL4HxMM9eHHuHMH]HEHLIH}ML$>M9}ZHHI9t6M9hLcIc?LLN9ˀ~͉IHQI9uMI)LLL)M9QHUHLmL)IIM9jIH]MI9LOKLchEaOO9u,HcHEaI4I94uEaLcHH KIFf1A#McIJJ9xH}MNL>HELML)LEHH}1H H=>H+L]EIcIL]HIDI9HMHHtH1H H=J>H`+;HuELcHHuIKDK9k1H H=>H+LMEMcILMIKDK9#f.1H}H *EH}ȃEEH9}L]IcIL]IDI91H}H r*MLUMMc quKDK91H}H 4*H}DELc_A@EKDK9tG1H}H )HMUHcqH UIDHMI9LU1IH=MFL9+ I M9uM$ MtL I$ Ht I$ Ht M$ I$ I9'MI)IIIH=vxA<IIIItxItYIt:LsMt-Anu%MLARAn uMLASfHLsMt AnHLsMt AnN HLsMt An=HLsMt(Anu MLARAn f.HLsMt#AnuILPAn FfDHLsMt An7HI9LsMt AnHLsMt AndLsMt An'Ls(Mt An*Ls8Mt AnLsHMt AnLsXMt AnsLshMt An6HpI9GI$ HtH L-1I$IM,$ [LH A\A]A^] I M94fDH I9fDAI8IIIItmItFLsMt9A~DGEFu(MLAQEV EZE^ Au ILPHLsMtANQAVHLsMtEVEZE^AHLsMtA~DGEFHLsMtANQAVIHLsMt4EVEZE^Au"ILPAN QAV DHLsMt3A~DGEFu"MLAQEV EZE^ ARfHL9LsMtANQAVHLsMtEVEZE^ALsMtA~DGEFLs(MtANQAVLs8MtEVEZE^ALsHMtA~DGEFKLsXMtANQAVLshMtEVEZE^AHpL9DKQSH3HVM\{ qL HAQbfEVEZE^AILPH(AEn AZILRL@ILPAn ILQDMLARAn MLASwMLAPAn EMLAQ6ILRAn I6LVDILPAn xILQjDMLARAn :MLAS+MLAPAn MLAQILRAn I6LVDILPAN QAV @I6LV2DI6LVA~ DGEF MLAQI6LVA~ DGEF MLAQ MLAQEV EZE^ AILPfILPAN QAV 4I6LV&DI6LVA~ DGEF MLAQMLAQEV EZE^ AILPfILPAN QAV JI6LV<DILRAn I6LVD{ DGDC En AMAN I6LVA~ DGEF MLAQMLAPAn MLAQMLAQEV EZE^ AILPfILPfILQfILPAn ILQDI6LVf.I6LVA~ DGEF KMLAQ<MLASILRAn I6LVDILPAN QAV I6LVf.Hc HF@ Hcd HN`Lch LFhLcl LNpLcp LVxD0 D4 8 1džHc HD DD DHc ƆHH@ H1Ðff.G,HW@HHcLMH8I;t IIDPASMcJ Hq8H;t HOHD@A#McNMZ8I;t IIӍHHcLMH8I;t IIDPAMcJ Hq8H;t HHD@AMcNMZ8I;t IIӍHtkHcLMH8I;tIukIDPAtCMcJ Hq8H;tHuC HփtHHL@8H9tIuIиH9tH81ff.fH97 H9HIUH)H)I)HIHHAVL)AUATL$SHI9fDHL)I9Ik N N HIHKMAI9AEHwHIE11IMA IIIIteItAItDo3Eo;AD;E3BoCoHBCIBo CoHBC IBo,Co$HB$C,IBo4Co<HB<C4IFoGo HF GIFoGoHFGII9Fo$Go,HF,Go|G$FotF|CoT GtBoD BT Co\0CD BoL0B\0Cod@CL0Bol@Bd@Co|PCl@BotPB|PGoL`CtPFoD`FL`Go\pGD`FoTpF\pGTpII9#IIJ H4 IL9t=D.E IVDE+H9~(NESIDVAKL9~DvEkDnEsHHIHLI)HL)I95HLHH4MI)MILjI)MM9I)L9IpHwMIL1I1MAIIIIt`It>ItAooHAAo o HA HAo,o$ HA$, HAo4o< HA<4 HEoDo HE D HEoDo HED HEo$Do, HE,D$ HI9Eo4Do< HE<oT D4 AoDATo\ D AoLA\od L AolAdo| l AotA|DoL t EoDELDo\ DD EoTE\Dol DT EodElDd HI9+LHIIIK41MI9t?DVE^LkD^EVM9~&VANHNAVI9~^EVDVA^IKHHIHHUHÐMHE1AIIItwItYIt;ItAqEZAHEYArA AIAA HE4A4IA4E4HA EIEA HAE4IE4AHA4A IA A4HAEIEAHM9E4A4IA4A\E4ALA\E\ALEtE\ALEtAtALEtAtA\EtE\A\AtE\A\AtALA\AtALEtAtEtH M9S0DHE1HHtyHt_HtEHt+HtD AAE B GFC IF,C4B4G,IBG F CIB GFC IF,C4B4G,IBG F CIL9B GMnFC B4INCBC4D MnEDE B4INCBC4D MnEDE B4INCBC4D MnIEDE B4CBC4L9WfLHH^LfIHH)HOIIL9AH9AEHMPE1LHHHBHHHHHtxHtXHt8HtDo'Do.AD/D&Fo47Fo<6F<7F46IBo7Bo6B7B6IBo 7Bo6B7B 6IBo,7Bo$6B$7B,6IBo<7Bo46B47B<6IFo7Fo 6F 7F6II9Fo7Fo6F7Eol6F6Eod>IEl>Eo|6Ed6Eot>E|>AoT6Et6AoD>AT>Ao\6AD6AoL>A\>Aod6AL6Aol>Ad>Ao|6Al6Aot>A|>EoL6At6EoD>EL>ED6I9'MIJHHM9t8DD#L_D'DL9t#DOKLWODKL9t WCGSH[A\A]A^][LA\A]A^]HHsD3L,I9t HPHlEuLIBEjH9tH)LHHH)BD+LII)IIIAIItItdItIIt-ItD/LVHWD.DA:HIzEBD"EHIDZEbD A HIJEJE2HIDrABD*AHIZEjA:DHIzEBH9ED"H I DZAJEbDJJErEJBDrAZABDjZAzEjDBzEZEBDbDZAJEbDJJErEJBDrABH9w*ff.UHAVAULoATSL/HtrIHIHHw2Hu$AAD$I\$AD[A\A]A^]HtHxI\$I$ILHLM,$H=hA ff.UHATSHHL`Lht#)p)M)U)])e)m)u)}H HEH@Ld$H8H(IHOs[Dž( LH0Dž,0HKHcH u&E$$DcHsH1He[A\]fOI$ALKIHSK|J|L)I)̉1E1DQKAAK9 EAtnAt[AtGAt4At At MILHt.L+HMtM}LrLMzfDLEH}1I0JH}HEHEL9t'HĈD[A\A]A^A_]f fDHz HxzHxHxHHH@ Hy HxDHxQHxNHH@ Hz \HxHxHxHy`HQ@HA`(HxHxHxHLHB H)HH9HHq1H1H8@M HPHLpTfDIHPHHpsTA nMHPHLpHTLM HPHII`HHpTIHHpHPSfDAD@~IHLHpUH1IHA TMHLLpUH1IH*H8^HH8PHzH(I9AA4@H0fH8f.LAIAMHLMLp"U'HHHHHyHOHHPff.U HAWAVAUIATISHdH HhHDžd1HEHHEA I E E HTHAD\E DP`E1M Ms`MMLHN HXHVE11E1ƅE1I$HDžHDžH9H;C0D Et*H;u!I$DHkfDH;  t H;  L9u  H;H H; EM$L ItLHDžHD1M$M9@ H=G[[M$MX MIAK ;I9UM)MIO$M)1ҾH=GL} LMX H؃IL9I)LN$M)1ҾH=eGHEMIAA # HEMH MM9g O4ILAAԾH="GHMQY1HhH=G+31H}H=G1H}H=G1Ҁ t 1H}¾H=G1Ҁ t 1H}¾H=G1Ҁ t 1Hp¾H=GX`1Ҁ t 1H}¾H=G*21HxH=G A t)IP H1H}H@L L0f1LPLL)0HDž@L j5A D`HDžDD\H8DAArIPAЉr>Ar5BAr,BAr#BArBArBArBuEH1EE@1ǸOD_HDLIHH H;@HH8A HI I I M VjE AW0Ex mH0H=(Gk` >L0XEMtLω, @He[A\A]A^A_]@M$H9HIH9H;S0>D Et H;H;G t H; t H; L9u H;H4H;uJEtEMĨL4DMĨHIH9>MĨHH9IH9tH;S0mD Et H;H;v t H; t H;  L9u H;HsH;;E2MĨL@tLhtHHpEtLxEX1H¾H=CE AA wEN1H صGH=4BrDMĨL}vMĨL}<MĨADDMĨA DHeظ[A\A]A^A_]@IĨDHDIĨDHDM$L}H;eI$HEHDžD1{@L1Ҿ"BAH==zCA.AE Heظ[A\A]A^A_]ÐIĨHUE1IĨHUIĨHUIĨHUMĨL}M$ADMĨL}LIĨHUVHDDff@fA?@!@H==yCXLH=xCEEfA|fA|fAL0t/LL,EEHff.UHSHHH5bHՓHSHHHpH9t2H HxH{L@LCH0H@@HH[]fDo@Cΐ@UHAWIAVAUATSHH MH^1H tCAľH=tCH{(1OHCHrH{@HH@HtD;` |H@HuHSH9@H9{^ILh(1MH=C|<ցH=GD IUIuLPI I}HI I}IUHIuE0 I~HDžXHPƅ`AsA QE0E4 AA  E E8 A A y EX H5zGL蹑H5J1LeHpE H T[HHHHH5GLLmLLrHUHuLH}M]L9t0H}ID$H9tHpHSH9tHHEd H1H 0T[dHH5 GLRLLHUHuL7H}IMH9tH}MD$L9tHpLKL9t}HHE H1H S[HH5WGLǧLL\HUHuL謏H}MUL9tH}It$H9tHpL[L9tHHEh H1H S[NHH5GLLLHUHuL#H}IUH9tH}IL$H9t~HpLCL9tiA E1HHA98 H L[HA1HH5wGL襠LL:HUHuL芈H}MML9tH}MT$L9tHpHsH9tHHE H1H K[+HH5wGLLLHUHuLH}M]L9tlH}ID$H9tYHpHSH9tDHHE H1H lK[HH5KGL莟LL#HUHuLsH}IMH9tH}MD$L9tHpLKL9tHHE H1H J[HH5-GLLLHUHuLH}MUL9tUH}It$H9tBHpL[L9t-HHE H1H TJ[HH5nuGLvLL HUHuL[H}IEH9tH}IT$H9tHpHKH9tI HXHPHHHEt H1H I[HH5GLʝLL_M HUHuI褅H}MML9tH}MT$L9tHpHsH9tHHE H1H I[FHH5,GL4LLM HUHuIH}IL9t|H}IL9tjHpHH9tUI H5GHKH5GLuH}HSH9tL1A$ H[A\A]A^A_]fH I9fDAgfffLuAH5H /B[1H]H()LAкFLH5BH4HLt@H5BHqHLftH}HH9tt12DDQEDAgfffLDD)DkdD)H(1)H cA[AкDAMbDAH0H(1IH )A[H D)AкHHPLH5BHI(H5BL}LpHpMCL(LpHH9`LHHpLMHPL(@HxIH0HpH@LxHUIL9EH}HuH9vM~L9;L]L9H(j|LCHpLEHH9HMLHLMHPLHUH0HH@@rH}HCH9t蒽L(HpIL9tvLHPIL9tZL H0IL9t>H}IL9( fDo@)EfoH)M,f11L贏fDAIHHHI,II6IHIZI~IIITIff.UHAVAUATSHH D LEt A}`AH A 1H G =.H=G1H Ľ=.H AH G1HpHh`H A1H ;GHpHh7HH=*vCQAąu7 u H xyH=9>GAątCH D[A\A]A^]H =/0E'ƃ @H yH=mG趷Aąu11HuHEH= sC@H H}H8UAą1H}H=rC x x 1HuH=aC1W@Hcx | H}HuUAąu`M1ҾH=GH G1Du19 H nG¾H=nG1̸@ArDLHH=vGgAąI  L H LX~H=;G*Aą LHH=GAą  LH }H=GеAą1HuH=QqC1@x H}U؅RDAb@U1HAWAVAUATSHHXLEe`A$|= H=HGAƄH Hz H=BH=SGADžtHXD[A\A]A^A_]H Hy ȰH=YB躴H=G謴LcEu!Hg_"H߉EW_#H߉EG_$H߉E7_H߉E'_H߉E_H߾E_LcEHcMLcMLcUDLc]Ɉ HcUIHυIHEx H5VGBEX0 HuH}ETHuDUMH}{3D;}u 1D]D9]1H šG H=ޚGy1Ҁ  H=GE1 D H=2GŰED؃HIHLt IEKAwIcMIM;t HLA{ELcKHL;t HLEKAIcMIM;t H[LA{LcKHL;t H)LEKAIcMIM;t HLA{tLcKHL;t HLEKAtPIcMIM;t HA LAt!McKIcMC12DLHH=GޛADžDd HD| H AD H$ D  H A;}wA}t A}AA1H _G AH=-HG耝 t $ ( 1H T_G H=HG6uRAU9 wEMD9 wEmD9 H "_G H=HG1A DA DDxADA A uD8 HuUH}AEDEU6DMD9MȋUXD5A0A,D8 H}uHuEDUM;Mȋ}*AD EMMILEtIFH} 5EItII@ݚItIpI0豚 t(IhtI I|tw t$It IHuZIOtJH}B„}UpIhUD]TDD ڃH}U1MILMt-It#E1H}1A =H}E1螙tIt IuIhzEnIDM]DMEBD9}A E1+;}AH 膜=//d ƃ AeAqAEU,H BG H=BGD ED9A1A6A HHAA A 1҃  H=ZGiEUL AHAVIιAUATISHLNH?LLHHƃ  H=91f1f IH H;H0 Hǃ ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( HL Hǃ L L L ǃ( 3ƃ A|$` [A\A]A^]H L 脝H=A֔H=nAȔH1I9f.1f.f.O,AAPIcHLHr8It HnA"HLMZ8I;t IELލQHcHLR8L;t IMڍAHcHLP8L;t IMڍQHcHLR8L;t IMڍAkHcHLP8L;t IMڍQ=HcHLR8L;tIucMڍAHcLIR8M;tHu9IӍAHLǸMZ8I9tIu f.HHWHt1HuLW@H9t1IuIAdL9t H~H֍AEHLMH8I;t IQIэAHLIs8I;t H$H֍AHLMB8I9t IIЍAHL MY8I;t IIӍAHLIr8I;t HH֍AthHLMH8I;tIuxIэAtCHLMS8I;tIuS I҃tHcH4LF8H9tIu-IиH9FH81H H H)HUHSHHA~HtH=t}@HEHH E Ht bH LF~NMtH=Pt>A@LEH M HtaH1[]@fA@ff.UHAWAVIAUIATSHLbL:MtH=ŔAD$NHHL{HLcHMtH=AD$LC(IU1+LLC AxAohHSHIcULIuH]L ƃIL MtL- MtOAET$AtPIHL[A\A]A^A_]AD$DAD$BDET$EZE\$AuM<$LAWMt$AED$ AuI $LQDED$ APAT$ IMtL_L蘚UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULE腑HULEHEIH}I7MM)LTH4O :LMM9LLULEHULUI9t2LLL贏Mu~ELsEH([A\A]A^A_]L蘐fDHH9HE1HEHSM9ufL4 f.@HGH;GtHHHGHHHOUHHHSHHyHCH[]Hf.UHAWIAVAUILATSHH HHwLwHUHW*IHMHH9NL<LҏL1HIL[0HKHCHt]1LSDM8L9HHLMtHHL!IɕLU1HAVAUATSHLGHHIL IMt-MI;Zut@MZ1LII9u L9tZMMuIIIuHLHAHHpLH@|[A\HA]A^][IBA\A]A^]f.UHHHHAVAUATISH HHt(L-MpKoDM$ Mt+HHAEVADM$ I$ I9t)H;HsH98{H I9uI$ HtH]H=M$ M$ HI<$M9t/fI>MFL9I M9uM$ MtLI$ HtI$ HtًM$ I$ I9'MI)IIIH=fpA<IIIItxItYIt:LsMt-Anu%MLARAn uMLASfHLsMt AnHLsMt AnN HLsMt An=HLsMt(Anu MLARAn f.HLsMt#AnuILPAn FfDHLsMt An7HI9LsMt AnHLsMt AndLsMt An'Ls(Mt An*Ls8Mt AnLsHMt AnLsXMt AnsLshMt An6HpI9GI$ HtH茉L-}[I$IM,$A\A]A^]鈈I M9#MFL9;I M9uM$ MtLI$ Ht I$ HtM$ I$ I9'MI)IIIH=xA<IIIItxItYIt:LsMt-Anu%MLARAn uMLASfHLsMt AnHLsMt AnN HLsMt An=HLsMt(Anu MLARAn f.HLsMt#AnuILPAn FfDHLsMt An7HI9LsMt AnHLsMt AndLsMt An'Ls(Mt An*Ls8Mt AnLsHMt AnLsXMt AnsLshMt An6HpI9GI$ HtH}L-I$IM,$|[L0 A\A]A^]~I M94fDH I9fDAI8IIIItmItFLsMt9A~DGEFu(MLAQEV EZE^ Au ILPHLsMtANQAVHLsMtEVEZE^AHLsMtA~DGEFHLsMtANQAVIHLsMt4EVEZE^Au"ILPAN QAV DHLsMt3A~DGEFu"MLAQEV EZE^ ARfHL9LsMtANQAVHLsMtEVEZE^ALsMtA~DGEFLs(MtANQAVLs8MtEVEZE^ALsHMtA~DGEFKLsXMtANQAVLshMtEVEZE^AHpL9DKQSH3HVM\{ qL HAQbfEVEZE^AILPH(AEn AZILRL@ILPAn ILQDMLARAn MLASwMLAPAn EMLAQ6ILRAn I6LVDILPAn xILQjDMLARAn :MLAS+MLAPAn MLAQILRAn I6LVDILPAN QAV @I6LV2DI6LVA~ DGEF MLAQI6LVA~ DGEF MLAQ MLAQEV EZE^ AILPfILPAN QAV 4I6LV&DI6LVA~ DGEF MLAQMLAQEV EZE^ AILPfILPAN QAV JI6LV<DILRAn I6LVD{ DGDC En AMAN I6LVA~ DGEF MLAQMLAPAn MLAQMLAQEV EZE^ AILPfILPfILQfILPAn ILQDI6LVf.I6LVA~ DGEF KMLAQ<MLASILRAn I6LVDILPAN QAV I6LVf.UHSHH0 HCD HH1[]Ðff.H H H0 D Ht@UHH HL HL0 HHHj謿f.HHH;qu fDUHHHH@ҋE@HHH;Wqu fDUHHHH@ҋE@HHH;qu fDUHHHH@ҋE@UHATE1SHnH_GH߅AHHf@ H GH߅AHH4f2 x`HH=GD$D< HHDH0 H HPL jHe[A\]fDLMA1A;A?EE1ALwGAG$of.AZDAJDA@:@UL hAHAVIιAUATISHLqHLLHHƃ pH=f11ffv HHǃ IH;H0 f ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( H Lp ǃx Hǃ0 ƃ(        A|$`3qHH0 ) ǃl ǃx "Y[A\A]A^]fH L vH=AmH=nAmMH鱱I鹱f.1f.1f.H H; t`UHHHH~HtH=rt1AHMH E HtH>1DAf.f.UHPHHAVAUATISH HHt(L-qMKDM$ I$ I9t)H;LSL9 oH I9uI$ HtHeoLM$ M$ IM$M9t'I>IFH9+oI M9uM$ MtL oI$ HtnI$ HtnM$ I$ I9LH)HHHH=vp`-HHHHtqHtRHt3LsMt&AnuILRAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILRAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtHlL-[I$IM,$A\A]A^]kI M93LfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHLsMtENEQEVA=HLsMtAvVAVHLsMtA~GAFcHLsMtENEQEVAHLsMt3AvVAVu#MLAPEN EQEV AHLsMt3A~GAFu#ILQAv VAV fDHI9LsMtENEQEVA|HLsMtAvVAVKLsMtA~GAFLs(MtENEQEVALs8MtAvVAVbLsHMtA~GAF5LsXMtENEQEVALshMtAvVAVHpI9KQSH3HVM{ L HAQf.MLARAn (MLASMLAPAn MLAQILRAn I6LVDILPAn nILQ`DMLARAn MLASMLAPAn MLAQILRAn cI6LVUDILPAn &ILQDMLASA~ GAF fILQX@MLAPEN EQEV AMLASMLAPEN EQEV A~MLASoMLASA~ GAF 3ILQ%@ILQAv VAV MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILQ@ILQAv VAV MLAP@MLARAn MLAS{ DGDC MLASA~ GAF ILQ@ILPAn ILQDILQAv VAV MLAPq@MLAPfMLAQMLAPAn kMLAQ\MLASqfMLASA~ GAF ILQ@I6LVbfMLARAn MLASMLAPEN EQEV A\MLASMfUH HHAVAUATISH HHt(L-afM KDM$ I$ I9t)H;LSL9(SdH I9uI$ HtH5dLM$ M$ IM$M9t'I>IFH9cI M9uM$ MtLcI$ HtcI$ HtcM$ I$ I9LH)HHHH=Feh-HHHHtqHtRHt3LsMt&AnuILRAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILRAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtH|aL-mI$IM,$`[L8 A\A]A^]aI M9+DfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHLsMtENEQEVA5HLsMtAvVAV|HLsMtA~GAF[HLsMtENEQEVAHLsMt3AvVAVu#MLAPEN EQEV A{HLsMt3A~GAFu#ILQAv VAV fDHI9LsMtENEQEVAtHLsMtAvVAVCLsMtA~GAFLs(MtENEQEVALs8MtAvVAVZLsHMtA~GAF-LsXMtENEQEVALshMtAvVAVHpI9KQSH3HVM { L HAQfMLARAn (MLASMLAPAn MLAQILRAn I6LVDILPAn nILQ`DMLARAn MLASMLAPAn MLAQILRAn cI6LVUDILPAn &ILQDMLASA~ GAF nILQ`@MLAPEN EQEV AMLASMLAPEN EQEV AMLASwMLASA~ GAF ;ILQ-@ILQAv VAV MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILQ@ILQAv VAV MLAP@MLARAn MLAS{ DGDC MLASA~ GAF ILQ@ILPAn ILQDILQAv VAV MLAPy@MLAP fMLAQMLAPAn kMLAQ\MLASyfMLASA~ GAF ILQ@I6LVbfMLARAn MLASMLAPEN EQEV AdMLASUfD H1ËG,HW@HHcLMH8I;t IIDPASMcJ Hq8H;t HOHD@A#McNMZ8I;t IIӍHHcLMH8I;t IIDPAMcJ Hq8H;t HHD@AMcNMZ8I;t IIӍHtkHcLMH8I;tIukIDPAtCMcJ Hq8H;tHuC HփtHHL@8H9tIuIиH9tH81Ðff.UHAVAULoATSL/HtrIHIQHHw2Hu$AAD$I\$AD[A\A]A^]HtHxWI\$I$ILHL=VM,$H=eATff.UHATSHHL`Lht#)p)M)U)])e)m)u)}H HEH@Ld$H8H(IHZDž( LH0Dž,05SHKHcH u&E$$DcHsH1He[A\]fOI$ALKIHSK|J|L)I)̉1E1DQKAAK9 EAtnAt[AtGAt4At At MH}M]L9tAH}ID$H9tAHpHsH9tAAw H5AH vTAHHDHH5FLLLEHUHuLH}IUH9t#AH}MD$L9tAHpLKL9t@H=SAAt H5 AHDH HH5FLGLLHUHuL,H}MUL9t@H}M\$L9t@HpHCH9tr@A H AH߅H5`SAHEHH5-FLLL2HUHuLH}IUH9t@H}MD$L9t?HpLKL9t?A, H5ALRA HICHH5FL/LLHUHuLH}M]L9t?H}ID$H9to?HpHsH9tZ?HHE@ H1H ZHH5 FLLLHUHuLH}IMH9t>H}IT$H9t>HpLCL9t>HHE4 H1H ZyHH5FLLLHUHuLH}MML9tj>H}MT$L9tW>HpL[L9tB>HA1HHH kZHH5MFLLLHUHuLrH}IEH9t=H}It$H9t=HpHKH9t=HA 1HHH ZeHH5FLLLxHUHuLH}IUH9tV=H}MD$L9tC=HpLKL9t.=H=/PAAu H5{ff.UHAWL AVAUATISHHA$) x`gfffLmL5*5H ¸Z1H]L)LAк-LH5 AH HL H}LCL9t.6H}MML9t6A$) t&I$D_dA*A9/H5AH HLH}HSH9t5H5AHHLH}HKH9t5H5AHHLYH}HsH9tg5H5AHHL-H}LCL9t;51A$) H[A\A]A^A_] H=#A2 4Axu I$gfffJ`AA)LmH]1L5K3LH ZLaLH5kAH HLT/H5AHHL.H}HH9t<41 DDAQDLADẢD )H @Zkd)LA1Aк LAMbDH0H ZAI1H(D)AкfHPLH5AH I H5ґALwLpHpMVLpHH9UL@HpLELX@MNLxH0HpH@LxHUIL91H}HuH9vMUL9'L]L9LJHSHpHUHH9HML@LELHLLMH0HH@@dH}HCH9tr2HpIL9t]2L HPIL9tA2L(H0IL9t%2H}IL9)2f.oH)MLfo@)Ef11LfDAH/vIvHPvH,vIvvIvIvIvIvIvIvIvIw@UHATSHH H=B.t H [A\]fH LeL H}A1H lGHpHhH}Ht)HH="A-u H u tFLH}H=YAw-H}HOEEH [A\]fDLX( H}H ) JH=A-H}Ht EkE܅H ^HuHuIuff.UfHAWAVAUATSHHL L )EHEMM)LHp HH9L/L L HI~Lefl)MM9LL0LHL)HHHM@HHHHtoHtGHt I HIqHpHtFHpIILLLqLvMtAFHHL9L>LaLfMtAD$HHHHLiLnMtAEHHH9H>LALFMtA@HHL1L6LyL~MtAGHHL!L&HQHVHtBHHI9L)L.HyH~HtGLqHILFHNIvIpHtFM~MxMfM`MtAD$IV IP Mn(Mh(MtAEI~0Ix0IN8IH8HtAIv@Ip@M~HMxHMtAGMfPM`PIVXIPXHtBMn`Mh`I~hIxhHtGINpIppI9IL}M)INlLmM9*LME1L)HHHM HtaHt-MgI?M AD$QLMgM|$I<$M+ AG LIM|$I<$M AG LIM9 @E1MALeLZD꾸 H=gG)ML-5ICL9' IN`L9 M~`L9 Mn`q8H=WG@־ ])AP H=WG6)A` @H=WG)nL@IL1Hh H=fG(  HPL萯DHHHHtmHtGHt MLMqLpMtAFHpIIL9L>LaLfMtAD$HHHHLiLnMtAEHHH9H>LALFMtA@HHL1L6LyL~MtAGHHL!L&HQHVHtBHHL)L.HyH~HtGHHI9LLLqLvMtAFLaHIL~HNIt$IwHtFIT$IWMl$MoMtAEI|$ I MD$(MG(MtA@Mt$0Mw0IL$8IO8HtAIt$@Iw@IT$HIWHHtBMl$PMoPI|$XIXHtGMD$`MG`Mt$hMwhMtAFIL$pIwpI9fAGLM|$I|$MgMAD$`LMgIMwAD$VLMg(I MAD$LLtMg0M9M|$I<$MESH\H5$1f)I6fD H[A\A]A^A_]ÐRHt_Ht,MgI?MAD$LMgM|$I<$MHAGLIM|$I<$MAG+LyIM9M|$I<$MAGLCM|$I|$MgMAD$LLMgIMSAD$LMg(I MAD$LMg0M9EM|$I<$MIVHH5"1'I9@1HwH5"1'IfHGH5x"1Q'I{f>HH5H"1!'I!fHH5"1&IfHH5!1&IfbHH5!1&IEfLX1Ҿ H=FMX M{HA "ILPHIgH=)QG!E1Ҿ H=`GD0 ML IH I("JH HHDžHIHDžHDž kH=PG HHH V$, LGHpHL L^IL LxL 1H} H=_GH!YLuE1MN MqHMtH%%H51L$I1A~ H=F ILP1҃x, IH=OG EAH8LDž8DH询9UDƃs I t Iu I H=OG$ 5Mƃu ILL 1H} H=OGH}1Ҿ LO H=FMqHA~ ILPHIeH=qOGu;ED, IH IH IHHHuL牅HuHGHH51"IH|H51"IfDHLHI$DHLMHIIBfDLMHIA@HEAE1pfDEHׅH51!I(fHH51!IfHH51!IHaH51k!IHAH5r1K!IH!H5R1+!IHH521 !IHH51 IHH51 IHH51 I(HH51 IHgH51q IHJH5{1T IA5H#H5T1- IHH5-1 IH߃H51IHƒH51IHH51I D9Eg1҃ H=-ZGuƃv LaH=JGVED, IH IH 'H H=\KGAA7 HH0H(HDž(I HDž0HDž8dH=KGL0H(L8M_L LOL MVƃt L ƃv BBAE1HbHbHbff.UfHAWAVAUATISHL L )EHELL)HH8 HH9ZH}M$ M$ HXH~XH]fl)MM9 LLLHL)HHHMHHHHtmHtGHt I HIqHpHtFHpIILLLqLvMtAFHHL9L>HYH^HtCHHHHLiLnMtAEHHH9H>LALFMtA@HHL1L6LyL~MtAGHHHHHQHVHtBHHI9L)L.HyH~HtGLqHILFHNIvIpHtFM~MxI^IXHtCIV IP Mn(Mh(MtAEI~0Ix0IN8IH8HtAIv@Ip@M~HMxHMtAGI^PIXPIVXIPXHtBMn`Mh`I~hIxhHtGINpIppI9IL}M)INtLuM9LM1L)HHHMyHt_Ht,MoI?MAEMLMoM}I}MzAGLdIM}I}M AGL7IM9f.E1HALuL D꾸 H=TGfLH5"ICH9gLk`MULXH9'L{`H9HS`HXIt I}XuI}蘾о H=nFGYHX PH=STG2A` H=NTGEdLXHpHHXE$0 E]HYH^HtCHHHHLiLnMtAEHHH9H>LALFMtA@HHL1L6LyL~MtAGHHHHHQHVHtBHHL)L.HyH~HtGHHI9LLLqLvMtAFHYHIL~HNHsIwHtFHSIWLkMoMtAEH{ I LC(MG(MtA@Ls0Mw0HK8IO8HtAHs@Iw@HSHIWHHtBLkPMoPH{XIXHtGLC`MG`LshMwhMtAFHKpIwpI9fAGpLM}I}MoMAELMoIMzAELMo(I M!AELYMo0M9,M}I}MKYHByH5s1LH<@ HĘ[A\A]A^A_]fIHt]Ht+MoI?M AELMoM}I}MAG' LIM}I}MsAGVL\IM9/M}I}MAGL'M}I}MoMAELMoIMZAESLMo(I MAE LMo0M9~M}I}MO\HwH51H?fD1fHWwH51aHfH'wH5X11Hwf;HvH5(1Hf HvH5 1HfHvH5 1Hf[HgvH5 1qH>HuL}D HuHXP]PH vH5: 1HwIHuH5 1H,@HHXHXHH HXIHAfDHXHL HXIIA{fDHEA1!H7uH5h 1AHfHuH58 1H}fHtH5 1HHtH5 1H HtH5 1HHtH5 1HsLm1Ҿ H=FIM LyHA  ILPp,H=1=GIŃPAA!1ҁ D!M PPAƄ$u PuAƄ$w fAZ]`A$ I( I$ AH=c>G (A1Ҿ H=JGA$8 IL71H} H=JGl L}1H=JGIw L~H M? IHBH; nM`EG1Ҿ H==GE KKE EHhHdDždDLDPDLD;hPKu 9l H=v=G~ IHHHPP1LPL9 H=p=G; I`HHHPP1LPL9X H=}=G GMHHLPP1LPL9 H==G IHHPHP1HPH9 H==Gr M H==GM$ EAA: HuL1HpH51 HHpH51 HHypH51 HHHYpH51c HHH=7G<lH 8FH=;bAB6(S (r1"LIA1VI MIMfDU1Ҿ HSHHH H+ H=FH= JuVHPHH9Xt#HH=CG[]Jf.HH=JCG[]'H []@HLϺUHAWAVAUATSHH8L HI$ I+$ HDh`Hʃ @ƃ@ H=8G@־ mE1A H=B>1A|$ H=GFH LuL?LMIy "H=aAH=.hAH}ȉHt ESMuaAH LH}=// H=S7GvH}AHtha H8[A\A]A^A_]f. fDHD1Ҿ H=6GAǹ EuHE1LCGH߅AHlj HED]辫H 'CGH߅AHlj HD<H=AG* Hx HHBGE11H `6G H=6GG , A|  w2HH҃ H=6G 4  w2HH҃ H=7G 8  w2HH҃ H=R8G D, D;0 tUA 1Ҿ AH=9GW_ D0 1Ҿ H=b9GA A*2 fE$E$LEDmLmLD]"u;uu 1ҋE9E¾ H=FA$E$LE}LDEȁM;Mu 1DMD9M¾ H=FmuA$E$LLEUDUlD]D;]u 1ҋu9u¾ H=ΗFA$0A$,LE}LEDuD;uu 1DmD9m¾ H=I:GI$tI$uI$@$о H=B:GmI$tI|$Xu I|$ H=A:G1oD 1Ҿ H=ZFD D E$lAN[M$xIcMM9HMLM)IIIsIIfoAIIOD%IIIAIIt>Ao$xfoID$fs foffofs ffffs foxfoHfs fofofDofs ffDffAfs fDoxfoHfs fEofEofDofAs fDfEfAfAfs fAI9fooH@Do8fs oXDohfEofEofofAs fDfofAfAfDofAs fDofEoffs fDfofs fAfAofs fAfofffs ffAofDfDfDofAs fs fEofDfEfAs fEfAfEfAofs fDofEfAfs fAI9fDofofoHfAsfs HfAofAM fs fAfffs ffH~H9t.I9IQI9t!IyMYM9tIyIqI9tIyA L9H=~FAAEAdAu9M$D| M$E$xE$E$Dx D x EAfE=FA(D*A^( E r  ~fED*A^ , BD, H5k:GJcH>fUL H`AHAVIιAUIATSHLHLLHH5\ƃ pH=q]f11 IfvHHǃ L H;H0 f ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( HLh ǃd Hǃ ƃ(        A}`HHǃ4 ) ǃ` ǃl [A\A]A^]f.H L爋 H= A6H=XA(MH HH7HV(L9&HFH;eHG`HHLIBH;vHG`HL9xOHLIC(H;z HpLI@H;oHG`HL9x# HOH7HV(L9dHFH;HG`H9HLIBH;HG`H L;x9`HOLIK`L;~ L;a;t,LIHV`L;1L;4t,HxLIAH;HG`L;XLA tL O9HLIK(L9ICH;HG`Ht7HL-OLI@L9-HG`L;H0H7HV(L9L~L;=*:HG`Ht7H0LOLIAL9HG`L;7H4CH8H OLICH9#HG`L;X LOI8H7HFH9HG`L;HLIQ(L9MyI9HG`Ht7LOI@LICH9U HG`L;X<HLIp(L9dMhI9HG`Ht:HOH@LIAH9\!HG`L;#IM;1HpH(IIu7LLIAN, uMHMLHHLAy(HDžxE1HDžHA4MDH=GHL%ILIS(L9ICH;HG`HH`LMH(M9I@H;LHG`H1HXH=G!THHHq(L9?HAH;OHG`HHHHBH;HG`g1H@H={G!H1ҾDH=GDhAHD!Q1HHH=Gc+`HtHH1Z?LA4l1HH=GLA4uL~pLpHHLHLEpHpD~pD~XK8Hp{AEdL]D~D@~)pD0DpD)UDHD)eD)]Dmu {(GH#LpHLL0HLLLILL0HIDžHDžE%AAALjIAWjLDD HLHt$DL$oxH0H=GAH0]"HtLA4qAIHL#IHLIHLLDLHLHHHD~LHDžDL~LDž D)0LP)@IjH LDjHH0Dž8HH4$DD$vH0H='GHh HG`x@@HHHAH;@HG`HHhLIK(L9iICH;HG`HfHHHHPH9{HH)III9+9HPHHLHMI)I9tLLP@LPHJ|LICH;HG`HHHP\HPAHhLIAH;UHG`HL9xMOIL@M;@H8LIAH;kHG`HL;xHH7HF(L9XL~L;=/ HG`HHLICH; HG`H Ox$EID0M;L@FfHLMQ(M9MyL;=PHG`HFHHHAH;KHG`Lx fDfHHHQ(L9LyL;=gHG`HHHXA"AH@LIBH;HG`nfJfgffAe ff@H LMkL;- HG`LxpHhLIK(L9 ICHH9 HG`HHhLICH9@HADffA|PfAfZfHLMQ(M9IAH;HG`HHHHAH; HG`H fDYAA5f1HH=GuW1Ht 1H¾H=G]u)1HH=G8ADž<KIHM;SHLIp(L9 I@H; HG`H`fffffH8HLjL;-#HG`HOx$!fIAZ0M;jfpf'ffO1ҾH=]FLM踿LyH0H7L~M9"HG`_ H &fB1H=A~Dž<KIHM;[fAA*HHHAH;]HG`HL9xKIHM;q@H,AOILM;0HH`HHA3E1E1HDžxHDžApO1ҾH=dBM蚽b1AD AE.EH=dBAEdqIM;;fDAAAH`LIp(L96I@H9iHG`HGH`LIBH9|HLIBH;kHG`fAyAQMQ ALLxHDžO|O,::LLxMHIIL LhAAxO1ҾH=uBMLE0AA 6H FET1 AA.AH=FAE膻fA LLA-LL HhHL[(M9!LcL;%ξ HG`HOILM;$@YYHHALfHHLIAH985fAAUH*^f~f~fA~%DG {AAtAAAfAA AA%AE D NOBDA(ATɉ։ fD؃A]s DATD)DPfEDPDZfE1D(A\H=FDY-wBDX-wBATDZfE/+Dž<fE(D%'AL*Em((DATE^DPAT.fEf1DZDY5evBDPH=FDX5OvBA\TZfD/2j:DfAf(H*AUf(fT^f(fTP1DuBDPH=FDYDXuBA\fTfD/脷AD5AfH*D^fD~fD~^fE~AAeD=LBfnATEED)ADPfnPPAT^ff1ZP\YtB(H=FXtBTZf/jrDJwEH,HHpWHHDsBD QKBA(HHLKHAH= FffAf=?AE!AAT\Af|f|H=IFAf<@A!AA?f.OL8DAA AD AADAHH pBD=BHB{@x[mH=9FAA脲>HLHpHL0HHLcHLL=\GN4GHt褭D<LpLH=LHD~L0LLHDD)HLHHL0IDžHpLDžE:AAAHjHAPDLjH DHHH4$DD$TH0H=Fb@1HHtAD1A H=FqAM$I\$`LH)HHHH<HMt`PH{W=//4H{ C=//8H{0/=//<H@I9H;=//1I9¾ H= F迤t< H[A\A]A^A_]1A H=GF胤uWAt$4DHH=GF[A\A]A^A_]醣fDAt$0DH=Fetv@H [A\A]A^A_]@LH)HHtlHtSHtw1DH1I9H 1I9H01I9H;ϧ=//~5HH;輧=//HH;襧1=//1L9fDUHAu(tNHGE14tLLWOLGuE1ۀAILOLGL1]ÐDG8HGA~P1AE1LcALIIMLE~ELMEGgf.1AfUHAWEAVMAUIATISHH=wGHHU1Iu]1L9H=5F(uMNHXI$ELIP(L9^ MxL;=+ HG`HI$LMyL;= HG`H LPHXLUH;` LD]D^HXHwHXV4 Ao$fI~)EI $LA(M9 HAH;ʚl ID$`HEI$L=jHBL9- ID$`LXHXLMH9` LDUDVHXEI4$HFL9 ID$`LHXL]H9`| L}@~HXL}ILA(M95 LaL;% IG`HEIL%LjM9G IG`LXHXLMH;` LDUDVHXEI7HFL9\ IG`LHXL]H;` LDuDvHXE1H8D[A\A]A^A_]I$L-aH7L~(M9HFH;HG`HI$LICH;p2 HG`f fE1HLRDI$hHLA(M9HAH; HG`HI$I$8H7HFH;HG`HDI$hLMzL;=tHG`HDI$EL--L?IO(L9MIGH;j HG`H I$@LMxL;=<> HG`HHHHXHMH;`8HDEDFHXI$H7LN(M9HFH;٘HG`HI$HHBH;= HG`hI$HLA(M9LiL;-o HG`HI$LIAH;Ac HG`HpHZEHxHXH}H;` H>DUDVHX!I$HHHH9DI$L-[H7LF(M9 HFH; HG`HI$HHAH;j, HG`HHPDHEHO`LLEH9`LUVLXIuHXLEML$`MLUH;`=LEFHXE1HEHUHuH{`HXLHMI$`LMQ(M9@MyL;=]oHG`HI$PHHQ(L9LyL;="\HG`HI$XLIp(L9jI@H;HG`HI$LMQ(M9MyL;=HG`H I$HLyL;=~HG`HHEHxHXH}H;`H>DMDNHX@HEHULL^`HuML}3I$PLIP(L98I@L=L9HG`HbI$PH7HFL9*HG`Hp'DLEHXL`LeH;` L&DuE1DvHXr@HMHUL@\HpDI$LMZ(M9MzL;=?HG`HNAfHMHULHX@I$H7L~L;=HG`HLDAA?A1I$H7LN(M9HFH;%HG`HI$LICH;HG`x@@sI$HLzL;=ƒhHG`HffAI$`LICH;rHG`HDI$XAI$NYfA-AI$mfHMHULI$LMQ(M9MiL;-MHG`HI$HLjL;-_HG`Hw@fH~ALAD?ffAfAGffH~@LAUDHMHULAHMHULL-IP@A1I$@LMzL;=rHG`tfrffALADLfDAA-AifLfDLfDHMHULHMHULHXg@HMHULhAHMHUL@HMHUL(HMHULHMHULAI$ LICH;‘HG`HpL=WfAfffAHMHUL@VHMHUL(MAA^fffA8AfA{A  fFfAArAHff.fUHAWAVIֺAUIATSHHG`HMEHt#H(H5i1H跏1HH¾H=DBۋH=w#B<ցHEADžHHH9 H=iUF|{ A{ AHLMc(L;%wAHAHxL%HHP(L9H@H;RHG`HAHpIHIHxIHHD@$EF,DH$EN0HLMZ(M9:IBH;?1HG`HHHHAH;HG`f+HPLMH(M9I@H;׍HG`HOHXLMZ(M9` IBH; HG`HHH7HV(L9 HFH;c5 HG`HHLI@H;6& HG`HHOx$A~4HPHHQ(L9HAH;HG`Hu2HXLMH(M9QI@H; HG`HA HPLMZ(M9IBH;WHG`Hu6HXH7HN(L9HFH;OHG`Ht_HPL?IW(L9IGL=L9XHG`HHPLI@L9HG`DE0HPLMQ(M9MyL;=uHG`H#HPI(Hx$AILI3HN(H; vIHHP(A4H H=&FA I8L1ҁ}M@!8oA4tsAƆ5HLMQ(M9GMaL;%$HG`Ht5I@AƆ6L?IGH;|HG`AH}LH=FʅADžLMHI~HIAF8dAHAF(A~AEF,@u AH׃A~AA~fE¾ H=}VGA 'Yf.AƆL]L]xf\ffAYfALfAAvf~cAv*ff.UHAWAVIAUATSHH~`gfffLeL=H OZ1L)LAкޢA11H @LTLmL@IuHuH8L9H}LHLMLPM\$LULH@@H}L9t胁AN`+w(HH9EP H5BL?HSHH{PH(H;{XHwH7HuHUHY@AxuL=Le1H +ZLLɡA11H @LSLmL@IuHuH8L9H}LHLMLPM\$LULH@@H}L9tnHKHH{PH(H;{XHGHHuHUH~HCP H}MEL9t't71A~d* H=kEF}EvdA9/H--std=c+Ml$A+1HuHsPLmfED$AD$7HE EH;sXLNLLUM9LL]L^HEHFHCP I|$-wEHsPH}fUHEH;sXlLnL.LEI9XLL}L~LMLNHCP Mt$Lumfo%WFH_CUDACC_HEHpHsPHE @RTC_@_HE@H;sXL^LHEL9HH}H~HUHVHCP Ml$AicHsPH-defaultLmHMAD$-devfED$AD$eHEEH;sX LvL6LUM9gLL]L^HEHFHCP H--use_faI|$atHuHsPH}AD$st_mfAT$AD$hHEEH;sXdHNHLEI9LL}L~LMLNHCP 1t=H[A\A]A^A_]AN`gfffAA)mf.Mt$HsPI-rdc=truLuLUAD$eHE EH;sXILfL&L]M9LHEHFH}H~HCP 1YfDfoUV]ffo]^ffDoEDFfomnffDoMDNop)ufox)}ffDoUDVfH(LA.H}Ml$L9J|DH(L.H}ML$L9|DH(L-H}MT$L9X{NDH(L-H}IL$H9{DH(L-H}M|$L9{ DHLH{H3@HH(LQDEEAgfffLLDD)DkdE)DAH TY1D)AкMbDDH0L1H YH ID)Aк觛LPLH5@LLMQLpH@LLk>HxLEMNHpN<L9LUHMM97IEH9 HUI91L6HpLxLB?I|$HpH}HH9DHML@LELxL}H0H@@HsPH;sXcLVID$LL]I9 LHUHVH}H~HCP HpIL9t}yLHPIL9tayH H0HH9tEyH}IL9M/yCf. yfDMHILHwf.H(L*H}IL9x1@o@)EffoMNfIH11LNKlfADH(L1*H}ML$L9:xDfDDDHpH=_AasHBHTIfH׿HIH HH铿HZH@IHI#I5fUH5WHAWAVHIHAUHHATSHHHHhHHpHHHDžƅHHDžƅHHDžƅHxA^,! A~0wAAv0LKGMc MA@HHhA 1H IG>IfDEV4A*A ELmHH5IGL5H0H9FLH:H}M]L9tuHpHpH5TIGHA5HV9FHL9HUHuH;4H}MeL9tuHpL{L9tuHxH5IGH4H8FHL\9HUHuH3H}IEH9tFuHpHSH9t1uAH5F@H #@LPHDL(LHH5HGLLD4LLHJ XLLM8HHL+3HHxLNHLLI9bLLXL HPHHH XH8H0H@@H%8HH8LXH0HN<H9 L@HPM9aMT$L9L`M9H10H0L8HB?LCHPLpH0H9HpHxH}LxHLLxHH8JHH@@E7HUHuH1H}IEH9t/sHpLKL9tsHH0HH9trLHIL9trLHIL9trLHIL9trHPIt$H9trAH5@H@LHD蒔LHxH5FL1HHXL/6HH8LXH0HN<H9L@HPM9MT$L9L`M9=H1.H0L8HB?H{HpHpLI9LpHPHULxHRHHLLxH0HH@@O5HUHuH/H}IEH9t9qHpLKL9t$qHH0HH9tqLHIL9tpHPM\$L9tpIc~LFG1L=joH YELL藑LH5BDGHGH{`HLs4HUHuH.H}IuH9t]pHpHSH9tHpHPID$H9t2pANL[HpLpLI9&LpHxH}HHH9`LHxH0HH@@/HUHuH)H}MML9tkHpLSL9tjHPID$H9tjAH5@H}@LHD،A11LH G/Fo=L[HpLpLI94LpHxH}HHHW`LHxH0HH@@9.HUHuH(H}MML9t#jHpLSL9tjHPID$H9tiAH5 @H|@LHDLH5<FHD@H`HL-HUHuH(H}M]L9tiHpLCL9twiHPIt$H9taiHH+8HNgHOH5KF'A4HxH5D=GHj(H,FHL,HUHuHd'H}IMH9thHpLKL9thAH5@L{@LID車HHPH5tQMEOIK|&`HAH8H0!OTK|&`IRI2HLj!IIuHHHH9t6cHH0HH9tcLxHIL9tbLpHIL9tbHhHHH9tbLHIL9tbHĘ[A\A]A^A_]MHI2 LH_af.MHI LH/akf.HhH5T6GHz!H%FHL%HUHuHt H}MUL9taHpHsH9taH=t@AH5ۼ@HDL˃HHPH55GHX HXHpHWHPY%HHHPHLHLZHHLLM9f LHHHLPHHHHrWH@LLH@@$HHH@?HL@HVHLM9 LLHLHHHHWHHLH@@G$HHHLHPIzHH0H9 HLXL L@HHLHH]WH@@#H8LXLH0JIIH`H9! L@HPL9`IT$H9 L`L9` H1H0L`HL8BH{LPHpLM9LpHHHMHpH5HLHxHLH@@"HUHuHK fDIH11L~1fIH11L^1fHxH51GLH!FLHH"HpL[HHxL9vLLEIL9HL ~LHHHpLUHDžxHKHpH9t]HPID$H9t]HhH51GLH FLHg!HxHpHHpHSH9tH]HPM\$L9t2]A~0 AI E5L1HH ;Y}HH5IFLY3HN FLH HxHpH-HpHKH9t\HPML$L9t\LH0IL9tf\E6L1HH Y1}HH5÷FL2HFLH HxHpHHpHsH9t[HPID$H9t[LH0IL9t[EHL1HH Y|HH500GL1HFLH[HxHpHHpHSH9t<[HPMD$L9t&[HH0HH9t [LA 1LH 3YL{LH5/GLR1HGFLHHxHpH&HpHH9tZHPIL9t|ZHH0HH9\Zo@)Efox)}fop)ufoH) oP)Uyf.o`)efoX)]Gfoh)mfMhHILHXDf.MHHILH_X$f.HHpA 1H m,G,fHHpA1H V+fHHA1H W+)fHHA 1H +G~+fHHA1H KVN+fHHpA1H W+fHHhA1H SW*fHHhA1H V*fHHhA 1H *G*QfHHhA 1H *G^*!fHHhA 1H *G.* H0 H0yH~LHH{Hp$@ADADDohD):DDo`D)DDoXD)]DoPD) DDoHD)DDo@D)IDDoxD)}-DopD) DA'DA!DIH11L(IH11L(fHtHTHxHHHpADAA L1HH Y2vHH5)GL+HFLH HxHpHHpHKH9tTHPM\$L9tTHH0HH9tTHII)HILLHHIrI9bH H9Lfo{*GIuint8_t;MYAA AHHLHBDAL1HH 6YtHH52(GLT*HIFLHHxHpH(HpLCL9tSHPML$L9t}SLH0IL9taSHHH)HHQHLHHHzI9L L9Lfo=#)GInv_fp8_eMKAC4m3;AC A;LHHLDA2A71@7H071@7H05HHA1H &GHHA1H &GRu@7HxHnAH=y9AKMH=m9A?MH=a9A3MHH@BH鐚H靚IsHH餜II鲞IbH՚I郛HI>II)IrH頜IHI)I锞H@I頜H-H騜IHyH)H$I餝I˝HHIHIiHhIHIvH9t JM9u担He[A\A]A^A_]ÐM9ufHLH=DFFuIu1ۺHpdfHAhAL[DhAL{DhHHAhtHIHIMd>`O\ LhM$hM9LpI$hM$xL`O<L9y I$xI9] Mt)HhIt=I LHGI$hM$pB8 H=[GBFxHDžLH5FL`HX HHHHAtI^PMfHfEHDžD)IHxM)MIIM9( LHMFPMfHHhLxHhHxHpID~pLfElD)I9 HMHL)H HHHtRHt+LhIwLI7I4$IT$H=gI_ M|$ HCHHI7IWHgH I LSHLI7IWHfH I L9xL[HLI7IWHfLc MG IT$LLLpI$Iw IW(HfLpI|$0I\$ I|$ HIw IW(HufIL$PI\$@IL$@Iw@HIWHHSfI\$`I`L9xXHHAAHH`I|` HXBLLeM9t(I<$It$H9nEI M9uLMPLhECLL1H]uHLxLpHHh@HHAtH1ҾHH=.AMd`H a@I|$1DI|$ :I|$(.DžHxA$DEI$0HA$AHHDžA$LuL1EH1AWLƠ@H *AH=+A;CAZA[IDŽ$0It$E1jE1I$0j11A$AXAAYHDžHpA$LuL1EH1AWL7@H P*AH=c*AB^_jI$hI$0I$8A$AHhHDžA$LuL1EH1AWL@H )AH=)ABZY1ҾH=)AI$8@u1H=ןF?zkI|$ ~;H= @p?ƅ@MLIHOd&`ML5H`I$hL9HpM$xLXL<0I$hL9M$xM9Mt)H`It IDLH@I$hM$phB8[fDMLIHOd&`IT5H`M$hI9>HpI$hI$xHXL<1H9M$xM9Mt)L`KtIRLH@I$hM$phB8fDIIIIOd&`LhMM$hM9t~LpLhI$xI$hH`O<H9II$xI9Mt)LhKt ILHM?I$hM$pB8DDf.I M9sfDPfD@HDžhTDž I$hDDI$hTDDI$hDDI$hMK HPI9HPHxyIHLP?I$hH9XtHX?HXLPI$hM$xMrH HXI99HXHxyHHHX ?I$hH9`tH`>H`HXI$hI$xMHHXI9LXI>I$hH9`tH`!>H`HXI$hI$x6MzOLPM9QHPIxyHHHP>I$hH9XtHX=HXHPI$hI$xHnAANM9t2AfI<$MT$L9t:=I M9uLDMgL牅LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo MLAQ @MMLAQ8M]LASE} AA} AbIELPSMELAPMULARAm M]LASfMELAPEM AQAU AMULARf.DUHAWAVAUATIHǘ SHHhHHhI$ HtL-MdM$ M$ f.IM9t7I^HtkuHHRk uH IHQM9uDM$ I$x I9t)H;L[L9 SH I9uI$x HtH5H=GM$ M$ HI<$M9t'I?IGH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHMe2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am& HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo & fDHLkMt Am7 HI9L{Mt AoHLkMt AmdL{Mt Ao'Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AosLkhMt Am6HpI9GI$ HtH|L5m%I$IM4$H[A\A]A^A_]rfI M93LfDH I9fDHAHHHHtpHtGL{Mt:AGAGu*ILQAw DFEG uILRHLkMtEMEQEUA}HLkMtAMqAuHL{MtE_A{AAHL{MtEGEHEOA&HLkMt9A}OAMu)IuLVE} EGEE AfHLkMt3EUARAUAu!M]LASAE xA} *fHI9L{MtAwDFEGHL{MtE_ACAGALkMtEMEQEUACLk(MtAMyA}L{8MtE_ASAWAL{HMtADGEGYLkXMtAEHAM\LkhMtEMEQEUA HpI9M$ MtAv~A~M$ MtAGXA_6M$ MtADGEGI$ HtKQSI$ Ht{DODKDM$ MtAvVAVM$ MtA~DWEVM$ MEGAPAWAILSEO EqEw AMLAR@ILPAo FILQ8DMULARAm M]LASfILRAo MLAQ@IuLVAm MELAPvfILPAo FILQ8DMULARAm M]LASILRAo xMLAQi@IuLVAm :MELAP*fMLASAF HAN AI6LV3@M>LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo ,MLAQ@MMLAQ8M]LASE} AA} AbIELPSMELAP MULARAm M]LASfMELAPEM AQAU AMULARf.DUH0   HHKH=F]ff.UHHLH H0 HAH3OH=F]@UHH0 H4NH=F]DH=y]DS9@UHSHHHPH=6tK tH[]fDK QS uH3HLFH[]AfDHHH;u fDUHHHH@ҋE@UHATISHHHH;u0HH0 LN[H=rFA\]HАUHATA SHK1Ҿ H=F@ ,@ 1fp HH0 H cH= F Aą=  HH H H H H H HH=FAą  ; p    J }LAx`~,t'HHH 1=// 1Ҿ H=RF DED[A\]f.AfDp fD)fp @ Cf.L Iy `H=L@RH=FDAr@L Iz H=L@H=JFuĀ L I{ H=oL@H=Fu [H Hx H=-L@H=F< "H Hz VH=K@HH=F:H Hy H=K@H=:FfH H~ H=aK@H=FpxfH H H=!K@H=Ft0EfUL HXAHAWAVAUATI̹SHLHHHu'HLLHH^Rƃ  H= V1f1L -ff Hf L H;IH0 IzcHǃ HHǃ LL Hǃ LPLHǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( H}HH LEL LL`L ǃ@ ǃl ƃp Hǃ( ƃx ǃ Hǃ ǃ Hǃ ǃ    Hǃ HǃHHxHHǃxHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃ Hǃ(Hǃ0Hǃ8Hǃ@HǃHHǃPHǃXHǃ`HǃhHǃpHǃxHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃHǃ Hǃ(Hǃ0Hǃ8Hǃ@HǃHHǃPHǃXHǃ`HǃhHǃpHǃxHǃHǃHǃHǃHǃǃL]HǃHǃHǃǃHǃLLHǃǃ Hǃ(L0L8Hǃ@ǃPHǃXL`LhHǃpǃHǃHUHHHǃǃHǃHuHHHǃǃHǃHHHǃǃHǃL L(Hǃ0Hǃ8Hǃ@HǃHHǃPǃ`HǃhLpLxHǃLUAz`HHH ! IH9t?DI{HkL]HUHM:L]HUHMIL9uHHH;tHHHH}VLH(LLHǃLHǃvVL0HXL8LHHǃ(LHǃ@H=C@0,DAFH@HfDAGHPHH(5I05fD1f.f.UHAWAVIAUATSH(  H H H H H H H HH+ H=FFHH9M I fE1MRDH{ Ht4H=wu)M.foMfHII9tqA}tET$IM ML$A~$MtH=4trAALMH{EHt)MDU諭foMDUHMcII9u1H([A\A]A^A_]wDFDG<AAfUHAWAVIAUIATSHLbL:MtH=AD$HL@(MLWMT$MAHL{LcHHMEAM}L1+AxLC L{IcUHIuLAohHLƃgL-@<LƃIL+JIHL[A\A]A^A_]DAD$ DAD$1DIULǹ+L{HHCHSAxHLC IcUAohHLHIuLH;L ;ƃƃIL @f.AD$IMtLeL f.UHAWAVAUATIHǘ SHHDHHhI$ HtL-eMtM$ M$ f.IM9t7I^HtkuHHRk uH IHQM9uDM$ I$x I9t)H;L[L90H I9uI$x HtHH="M$ M$ HI<$M9t'I?IGH9I M9uM$ MtLI$ HtI$ HtyM$ I$ I9LH)HHHMu2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am6 HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo 6 fDHLkMt AmG HI9L{Mt AoHLkMt AmtL{Mt Ao7Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AoLkhMt AmFHpI9GI$ HtHLAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo MLAQ @MMLAQ8M]LASE} AA} AbIELPSMELAPMULARAm M]LASfMELAPEM AQAU AMULARf.DUHAWAVAUATIHǘ SHH6HHhI$ HtL-uMdM$ M$ f.IM9t7I^HtkuHHRk uH IHQM9uDM$ I$x I9t)H;L[L9 #H I9uI$x HtHH=M$ M$ HI<$M9t'I?IGH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHMe2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am& HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo & fDHLkMt Am7 HI9L{Mt AoHLkMt AmdL{Mt Ao'Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AosLkhMt Am6HpI9GI$ HtHLL5=I$IM4$H[A\A]A^A_]BfI M93LfDH I9fDHAHHHHtpHtGL{Mt:AGAGu*ILQAw DFEG uILRHLkMtEMEQEUA}HLkMtAMqAuHL{MtE_A{AAHL{MtEGEHEOA&HLkMt9A}OAMu)IuLVE} EGEE AfHLkMt3EUARAUAu!M]LASAE xA} *fHI9L{MtAwDFEGHL{MtE_ACAGALkMtEMEQEUACLk(MtAMyA}L{8MtE_ASAWAL{HMtADGEGYLkXMtAEHAM\LkhMtEMEQEUA HpI9M$ MtAv~A~M$ MtAGXA_6M$ MtADGEGI$ HtKQSI$ Ht{DODKDM$ MtAvVAVM$ MtA~DWEVM$ MEGAPAWAILSEO EqEw AMLAR@ILPAo FILQ8DMULARAm M]LASfILRAo MLAQ@IuLVAm MELAPvfILPAo FILQ8DMULARAm M]LASILRAo xMLAQi@IuLVAm :MELAP*fMLASAF HAN AI6LV3@M>LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo ,MLAQ@MMLAQ8M]LASE} AA} AbIELPSMELAP MULARAm M]LASfMELAPEM AQAU AMULARf.DE1Ҁh HLJP L0 H8 t:D EA@1Lc HLILLP Dx ILX AA1AHHIIH` t+ tL1MLH LfM  ufDD1C@1A|@UHHHzHH>tHHD]ff.UHATSH2+Lf軿HSL9tHH;HCH9uHSL9u[A\]DH=)49@HHxTH9v#HH9sHx&H7H~麿f.Hx駿HHH鄿UH=?Ht@UfHAVIAUATISHHHHGtOHH9wDH(L,I$Ml$HtHLH蘽[Ml$A\A]A^]f.1Iff.@H97 H9HIUH)H)I)HIHHAVL)AUATL$SHI9fDHL)I9Ik N N HIHKMAI9AEHwHIE11IMA IIIIteItAItDo3Eo;AD;E3BoCoHBCIBo CoHBC IBo,Co$HB$C,IBo4Co<HB<C4IFoGo HF GIFoGoHFGII9Fo$Go,HF,Go|G$FotF|CoT GtBoD BT Co\0CD BoL0B\0Cod@CL0Bol@Bd@Co|PCl@BotPB|PGoL`CtPFoD`FL`Go\pGD`FoTpF\pGTpII9#IIJ H4 IL9t=D.E IVDE+H9~(NESIDVAKL9~DvEkDnEsHHIHLI)HL)I95HLHH4MI)MILjI)MM9I)L9IpHwMIL1I1MAIIIIt`It>ItAooHAAo o HA HAo,o$ HA$, HAo4o< HA<4 HEoDo HE D HEoDo HED HEo$Do, HE,D$ HI9Eo4Do< HE<oT D4 AoDATo\ D AoLA\od L AolAdo| l AotA|DoL t EoDELDo\ DD EoTE\Dol DT EodElDd HI9+LHIIIK41MI9t?DVE^LkD^EVM9~&VANHNAVI9~^EVDVA^IKHHIHHUHÐMHE1AIIItwItYIt;ItAqEZAHEYArA AIAA HE4A4IA4E4HA EIEA HAE4IE4AHA4A IA A4HAEIEAHM9E4A4IA4A\E4ALA\E\ALEtE\ALEtAtALEtAtA\EtE\A\AtE\A\AtALA\AtALEtAtEtH M9S0DHE1HHtyHt_HtEHt+HtD AAE B GFC IF,C4B4G,IBG F CIB GFC IF,C4B4G,IBG F CIL9B GMnFC B4INCBC4D MnEDE B4INCBC4D MnEDE B4INCBC4D MnIEDE B4CBC4L9WfLHH^LfIHH)HOIIL9AH9AEHMPE1LHHHBHHHHHtxHtXHt8HtDo'Do.AD/D&Fo47Fo<6F<7F46IBo7Bo6B7B6IBo 7Bo6B7B 6IBo,7Bo$6B$7B,6IBo<7Bo46B47B<6IFo7Fo 6F 7F6II9Fo7Fo6F7Eol6F6Eod>IEl>Eo|6Ed6Eot>E|>AoT6Et6AoD>AT>Ao\6AD6AoL>A\>Aod6AL6Aol>Ad>Ao|6Al6Aot>A|>EoL6At6EoD>EL>ED6I9'MIJHHM9t8DD#L_D'DL9t#DOKLWODKL9t WCGSH[A\A]A^][LA\A]A^]HHsD3L,I9t HPHEuLIBEjH9tH)LHHH)D+LII)IIIAIItItdItIIt-ItD/LVHWD.DA:HIzEBD"EHIDZEbD A HIJEJE2HIDrABD*AHIZEjA:DHIzEBH9ED"H I DZAJEbDJJErEJBDrAZABDjZAzEjDBzEZEBDbDZAJEbDJJErEJBDrABH9w*ff.UHAWIAVAUATSHHHLL;%LLx H I9SMl$LML!HUfIH@MM;7HwE1҃AM9HHHtzHtZHt:HtIJ O9JIJ O90IJ O9IJ O9IJ O9IJ O9MZI93J O9IBH M9MBJ O9tuIRH M9t_IrH M9tIMZJ O9t3IBH M9tIJ O9;1A~t%IHL!H}tHIH@@׾H=VF)ub1ҾH=CoEu,IL9H1[A\A]A^A_]ú1zH[A\A]A^A_]AIXH[A\A]A^A_]Ðff.UHATISHHtHtxH)HHwWA3f%f=@f?AD!׃@H=VEA H=EAfA|fA|fHPH0H2{H0HxSDHAm1҃ALDHcLLHXID~hLPHLDLDHLL DžDž D)PL`HjI0 DL HjLPDžXHL $DD$ D;mȺD}u 1D9e¾ H=b!ED}ufD fDuuLA$E$uLU D;mȋufDELLDE D9mȺDMu 1DUD9U¾ H=%FDML` HEfoeLmLLe` LeA ^A  A H]MHuHuI)LIHMIN43@HH~H;tHHT҄HMHHyH{tLIDЄH}HHH{tLIDЄLUIIzH{tLIDЄH L9HuZf.ILUL;ecM$L]McLefDILUL9ekM$LMMaLeLI¸LUL9eM$LEM`LeLuIhH}LLLULLe>f.LH)HHtHubHLu+HHLuHHLt3DL9H}Ht輆H`[A\A]A^]DHtHI9@HI9@HI9@H}LLLeH}LLLeH}LLLeIIU1ҾHAWAVAUATISH(HH+H=aEH= 蒃I$EL}LuM$x LHXLHUL蠻ELLHHLHM胻EHs0LLHuLiELLHH}LL ukA$   1Ҁ t#EH LLULHEUH([A\A]A^A_]ELLLLLE軺A$ xM$ MQ`EMLLLL]胺 \ELLLLLeY:@ELHUHSHH9FtbHHH5lWpBHSHHHpH9t-H HxH{L@LCH0H@@HH[]Ðo@CH='k@~fHUHSHH9FtbHHH5R_AHSHHHpH9t-H HxH{L@LCH0H@@HH[]Ðo@CH=j@i~fUH5(VHAWIAVHHAUH H@ATSHHHHxHHpHHHDžƅHHDžƅH HDž(ƅ0HPA_<! Aw@# EGDA%A ZE1LmHH5;UFL7AH`HEEELHEH}MML9t訁H`HxH5UFH@HEEHLiEHUHuH?H}MUL9tSH`L[L9t>HpH5TFH@HDEHLEHUHuH?H}MeL9tH`LsL9tۀHPH5KTFH%@H:DEHLDHUHuH?H}IEH9t荀H`HSH9txH5?AO`Ln?A9ODLEL@LLLHH=F?ARH5V?LHDLLAdH50?L ?IDHHHHH5tFHh-?HhHH`HxH`HHX"VHXHHXHpHHHUHH HHPHH@HUHH`HHHHHTHHHHHLHJTL HLtLLH&THQUGHLdBHUHuHHLH}LCL9tgH}MNL9tgAAt71Ad* H=,EHeHEdA9/H5AHHL%H}HCH9t3gH5U?HԺHLH}HSH9tgH5,?H診HLH}LKL9tfH5?H|HLH}LSL9tfH5@HPHLuH}L[L9tf1AAH[A\A]A^A_]ÐKfAxuAO`gfffAA)LuH]1H5dLH _XH(LH5?HzIIHII$IJI\I(I@8HhfDIh>@8HhIDDIhH}EfDmr?QjxǸʸI "(.4UHAWIAVAUATSHhH@Ht#H VH5u1HX1HH¾H= ATH=@<ցHESAŅtHhD[A\A]A^A_]S MAl KAp sAt { A DC H=hFE DK E LS(M D[ E A$ 0TE$ E2$ H=LFAT1A$ tE$ AA־ H=LFSu_LA 1Ҿ H=hFA@ SA@ x)1fA $A DfA II0 L`H=gFTRAŅ\E$l1Ҿ H=)eEEnAR[Le~EL}E)EAlAAHMHULEE HuLMHEHEHE)H=gFQAŅH}H}'ALJD '~MLeAh H}DEHAi A IE ME A0 ALJx 2El @u AoH׃A| LH=hdEPAŅE1Ah ILJX fE` I8 AƇX A AƇ[ AX AY LHAZ HA[ HA\ HA] HA^ HA_ HA` HAa H%;H=^8FPAŅAX vAY AZ A[ A\ kA] A^ A_ A` JAa I{`~ 1Ҿ H=fFA PEEAfDfA )A@ AƇa 1I0 fA_ ¾ H=$FO9f.A HHI S1=//CH]H1LkHL1҄ H=9E)OcA YA@ HWH=dF)NAŅ1I8 H]H1LsHLV1҄` H=9ENAi tJHfA\ fAY LFK<{A gHMLeHH5]FLEMHMH=cF9MAŅAuLmE1LFALJ@ L cFAƇ[ ELmLELxL]LUHLHMK4DUfHxLAŅE9EIIuH1LH I Hz cHH=?ULH=&EFGLVAJI Hy 'HH=?LH=DF Luȸ"M I|$ GH=}?KH=DFKuI H~ GH=C?KH=uDFKOM I~ tGH=?fKH=7DFXKI H 6GH=Ǫ?(KH=CFKWM( Iy FH=?JH=CFJCM Ix FH=K?JH=}CFJWHe1LHMH I{ ]FH=?OJH= CFAJ M8 Iz FH=?JH=BFJxAƇ^ SE@ GUL HAHAWAVIιAUIATISIHXKHsHLHIEΰAAƅ Hf1E1I0 A1IHHuffAAI]I fA HzcI M@ MfEh MMx MfE MHfE MA IDž ADž IDž IDž IDž IDž IDž IDž IDž IDž IDž IDž( A0 AH AX ADžl IDžp Aƅ IDž ADž Aƅ ADž A HKIDž HH HUII II IxIXAx IDž ADž IDž ADž IDž ADž A A A IDž A IDžHIApHIADžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžADžLEAIDžIDžAIDžADžIDžLMMMIDžADžIDž LUM(M0IDž8ADžHIDžPL]MXM`IDžhADžxIDžIIIDžADžIDžL}MMIDžADžIDžIIIDžADžIDžII IDž(IDž0IDž8IDž@IDžHADžXIDž`IhIpIDžxAƅp A|$`DIMMh Aq HMI9AH=TFMKL)HHH1HHHtwHtXHt:HtM|$Mt AoSM|$MWMt AjIIwHt n IM_Mt AkIMGMt Ah5 IIGHt0hu)HHHERHu~ DIMOMt3Aiu+I LLMQL]AES A$ @IL9}IwHt1nu*HHHuRLEAx m DIIOHt3iu,LHHMARHEADX A< @MGMt/Ahu'ILLERLMAy  fMW(Mt7Aju/MLLUASHEp  f.MO8Mt/Aiu'ILLMRHMy  M_HMt/Aku'I3LL]VHEAD@ A IOXHt/iu(HHHMRLUAz  IwhHt/nu(LHHuAPHEADH A0 IpL9} MMM;tMIMLNLeIDžII H}MMMpIDžL]IDž I@IPH}M(M0IDž8ɰLEILIDžPMXM`IDžh蒰IIIIIDžHIDžXLM1IDžIDžH= W?MMIDžAD$I8Ht= M8IIHI@MI9t1MtH=h>AGIHHt MHIIPaHuH}BH==S?V9HX[A\A]A^A_]L)HHHH%HHHHtvHt#M|$MtAWzAM|$MOMt@AAHAIu0ILLMRH}DW EZD_ Au H7VIMGMtEHAAA@AuIMGMtEHAqApA2IM_MtECEHEKAIM_MtA{DGEC-IMWMt@EZA{AzAu.MLLUAPLMAA PAQ IL;}@MWMtIfEZAKAJAu.MLLUAPH}DO AAG AIIwHt;DVEZD^Au)HHHuQLEAx DOEH [IwHt?VDRDVu/LHHuASLEAx OAH fIG(Ht7pVPu)LHHEARL]EC AxA{ AMO8Mt7AApAqu'ILLMRLUEZ ECEB A`MOHMt7AyGAAu'I1LLMVLUAR DZEZ 1MOXMt7AyOAIu'ILLMPHuDV ARV AMGhMt7EHAyAxAu%ILLEQHEp DVDP pIpL;}MWMAI HA =H=O?45H=̚?&5Af.AD$I8HDAGIHHKKfDM LL]AQHEP rp HHQfDILLEQLUAEJ AMLASfI3LL]VHEP JH LHARfDHHHuQLMAEA AMLARfILLEQHUz DWDR fLHASW@MLASfMLAQH0HVfI LQfLHAPLHAR9LHAQaHHQfILPfLHASQHHRfMLAQ1I LQbfI LQfMLAPHReDILPfI1LVfLHAPMLLUASHEx DHHR6DILL]PHUz >H2HV0fDILLEPHUJ yz LHARMLAPAo MLAQMLARE_ AsAw AMLAPIRIZf.1f.f.UHAWAVAUATISH8X Y H HZ H[ H\ H] H^ H_ H` Ha HH+ H=FHH9v1AM$X M$ f1Lf.MnAMt+H=5HkAEEAkDAIOMN+MyAFMt'L54MAMqLyL9A?eDkHI$ HK~ HtH=p4AHMI^MAH|H=E4HADCAuZL )EH}HHEAQLUHEfoEMAD[ AuHEHH)EPfoEHEfAIOMNIcDkHI$ LS~MtH=3ABLUIYUAHL=i3MADsAuvHLMHHM)EHERMHEfoEHMLMADC Au1H3LMHHM)EHEVHEfoEHMLMMqIcLyL9%E1H8D[A\A]A^A_]EEApAuAMMH}L)EHEAQLUHEfoEM5AE] AWHEIEL)EPfoEHE7ADoEocHMILLM)EHEQMHEfoEHMLMAw LMMLHM)EHEAQHEfoEHMLM@A*ABfDDCAps8DsE^D[Aw DFEG bE] ASAU DC Ax{ D[ ASS UHAVAUIATSHHHt/H=0MMuxfDIM9t7I\$HtkuHHPk uHIHRM9u@MexI]pI9t!H;L[L9t4.H I9uI]pHH[A\A]A^]i.fH I9uDM MtAL$qAt$MMtE^A[A^AMMtAvDFEF1IHtCD`DcIHtDCEHDKAMMtAL$QAT$EMMtEL$EQET$AMMtAvVAVMMtEVEZE^At^IHeDCAPSAPL#HAT$DK EqDs A/LHAR [A\A]A^]ILPA~ OAN uI6LV{ILSEF E`Ef A>MLAQ/M$LASA|$ GAD$ I $LQM4$LAVAt$ ^A\$ M$LAPLHAR{ D_D[ JHHP+HH)L{HLcHMtH=x,AD$LC(IU1+LLC AxAohHSHIcULIuHM)L ƃIL MtL-+MtOAET$AtPIHL[A\A]A^A_]AD$DAD$BDET$EZE\$AuM<$LAWMt$AED$ AuI $LQDED$ APAT$ IMtLL2UHHSHHHHRH0HSHHHpH9t/H HxH{L@LCH0H@@HH[]o@CDUHAWAVAUATSH(HUH9BHEIIHHEL-OL={+IUMOHAL$KAt$ s A|$It$@{ED$H{L DC I$@H@ I$hHhE$M]H=*LDA$HA$A$A$HH@E$I$DE$DE$DE$DA$A$ I$H I$ H A$HHHXA$IIA$JǃX@JHǃ`HhHpHǃxI$`HHMHPH}(HHzHtdLGHMtXMHLMtLMQLMt@MZLMt4IKLHt(HqHHtH~HHtHHzHu@HhHLBMteMHLMtYMQLMtMMZLMtAIKLHt5HqHHt)H~HHtLGHMtLLBMuDHpM$xH`LxIĀHÀM9H(H[A\A]A^A_]fHI IL%%+L%%H0Ml$L HM|$HLHID$HHHMT$HxLhjHX^M\$HPL@FH0:Md$H(Lc%HLH~H9]u)LuILQLHƀHuIL%$1IL%#jIL%#IL%#+H,H=-f.UHAWAVAUATSH8HuHUH9^HEIHL=JHEL5$L-#IOMNH AT$SAt$ IUs A|$@{ED$L HKDCET$ DS E\$$D[$AD$(C(AL$)HSK)At$,s,A|$0It$p{0ED$4H{pDC4AD$8C8AL$@K@AT$HSHA\$P[PAd$XcXAl$`k`EL$hDKhI$HI$HvI$HbI$HNI$PHPA$88A$@@E$HDHE$xHDxM$|L|I$HI$ǃHHǃHHHǃI$HHMHH}}#HHrHtaH~HHtULGHMtIMHLMt=MQLMt1MZLMt%IKLHtHqHHt HHrHuHHHzHteLGHMtYMHLMtMMQLMtAMZLMt5IKLHt)HqHHtH~HHtHHzHuDHM$HLIHL9eH8H[A\A]A^A_]ÐHI IL= *L= H`MwLP׽H@˽MoH L贽H訽IGHH葽H腽MOHLnHbMWHLKH?MHL{p+H`LHH9]u$LeM$LASLHHMIL=3IL=jIL=IL=,H 'HA(UHAWAVAUATIHǐ SHH^HHpI$x HtL- MtM$H M$ f.IM9t7I^HtkuHHRk uH IHQM9uDM$ I$ I9t)H;HCH90SH I9uI$ HtH5H=dM$ M$ HI<$M9t'I>INH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHMu2HHHHtvHtWHt8LkMt+Amu#MELAPAm uMMLAQDHL{Mt Ao HLkMt Am HL{Mt Ao HLkMt AmuMELAPAm  HL{Mt#AouILRAo  fDHLkMt Am HI9L{Mt AoUHLkMt AmL{Mt AoOLk(Mt Am:L{8Mt AoLkHMt AmL{XMt AoLkhMt Am>HpI9GI$ HtH|L5mBI$IM4$HL羀[A\A]A^A_]DI M9#LAWEF AXA^ AmMLAQ^LHARD[ ACC AH HQL3HAVs D~D{ LHAPMLAQEW EZE_ A|ILPnfILRAO DqEw ,I7LV@MLAPEN EQEV AMLASILPAO qAw MLAP@I7LVA DGEG MLAQMLAREo E]E_ AINH9;I M9uM$ MtLI$ Ht I$ HtM$ I$ I9LH)HHHMe2HHHHtvHtWHt8LkMt+Amu#MELAPAm uMMLAQDHL{Mt Ao HLkMt Am HL{Mt Ao HLkMt AmuMELAPAm  HL{Mt#AouILRAo  fDHLkMt Am HI9L{Mt AoEHLkMt Am|L{Mt Ao?Lk(Mt Am*L{8Mt AoLkHMt AmL{XMt AosLkhMt Am.HpI9GI$ HtH L53I$IM4$H[A\A]A^A_] fI M93LfDH I9fDHAHHHHtpHtGL{Mt:AOAOu*I7LVEG EHEO AuILRfDHLkMtEUEZE]AM HLkMtAuDFEE HL{MtAGxArHL{MtEOEQEWAHLkMt:A}wAuu*MELAPE} EOEM AfHLkMt3E]ASAUAu!IELPAM yA} HI9L{MtEGEHEOAHL{MtAGHAOSLkMtEUEZE]ALk(MtAu~A}wL{8MtAGPAWjL{HMtADOEOLkXMtAMqAuLkhMtEUEZE]ApHpI9fDM$P MtAv~A~M$@ MtAGXA_M$0 MtADGEGdI$ HtKQSI$ Ht{DODKM$ MtAvVAVsM$ MtA~DWEV!M$ MtEGAPAWAM$ MtAD_E_,I$ HDKAQSAL3HAVDS EzD{ ALHASwILQAo I7LVDILRAo MLAR@MELAPAm mMMLAQ]fM]LASAm IELPf.ILRAo xMLARi@MELAPAm 9MMLAQ)ILQAo I7LVDM]LASAm IELPfILSEO EqEw AMLARfMLASAF HAN I6LV@M>LAWEF AXA^ AmMLAQ^LHARD[ ACC AH HQL3HAVs D~D{ LHAPMLAQEW EZE_ A|ILPnfILRAO DqEw ,I7LV@MLAPEN EQEV AMLASILPAO qAw MLAP@I7LVA DGEG MLAQMLAREo E]E_ AuFYpu l1Ҿ H=uuF(Etw @ǃAD!ǃ@H=&D1D H=?DAEAE!AAD H=IDEƒ!ƒt @ƃ@!H=DD@־ ;DCDDKHAEA u1Atf. H=tF2DlD9SD H=+uFDpAD9{HA!AAADŽEDDD9u D9 H=uF[HH HLt IwrLcNMM;t IMÍWAHcH HL;t HLDOAMcNIM;t HLGHcL IM;t HPLDWAMcJHL;t HLOt}LcNIM;t HLD_AtNIcHHL;t H Lt!HcL MM9t IDDHH4HLt I`APHcHFEDUAA¸I E~HEI6LIFMNxLAHIM)IIIAt|IteItSItAIt/ItIt MIM^MIM^MIM^MIM^MIM^MIM^MIM^L9tPMI@M^MXM^MXM^MXM^MXM^MXM^MXM^MXM^L9u6qoo@fvۉffofofs fofs fffffs fŃooPffDofDofAs fDofAs fAfDfDfDfAs fEfADoDo`fDfEofEofAs fEofAs fEfEfEfEfAs fEfAƃtGo(opffofofs fofs fffffs fffo؉fsffH~H9tHLIHI@HI9ɾH=dFAA DE A o fEvEDohAfAfEofofAs fDofs fAfAfEffs fAADo0DoxfEfAofEofs fEofAs fDfEfEfEfAs fEfAAo@ofAfofofs fofs fffffs ffAtUoPDofDfEofEofAs fEofAs fEfEfEfEfAs fEfAfDoDfAsfAfH~HD9tHH4L ILhLI9V@@H=^cF EDEU A> DofEvDDofEfAofAofs fAofs fDfAfAfAfs foofAfofofs fofs fffffs ffƃDoDofEfEofEofAs fEofAs fEfEfEfEfAs fEfAătQDoDo fEfAofAofs fAofs fDfAfAfAfs fffDoDfAsfAfI~ID9tHL MIMMI6IvH=aFL9޾AA  oofvۉffDofofAs fofs fAffffs fŃDoDo(fDfEofEofAs fEofAs fEfEfEfEfAs fEfADoo8fDfDofAofAs fAofs fEfffAfs fftNooHffofDofs fofAs ffDffDfAs fDfAfDoЉfAsfAfI~I9tHL,IHIIMMVH=t`FM9AA HlDlA~II~Iv,HI^4@u A}HH҃A~IAVDIdžIH A1fE3fD1҃ H=\sDgp H([A\A]A^A_]@bcdeD_1]99  @!H=s]FH( [A\A]A^A_]@1H( [A\A]A^A_]@1A1A1A,,1AE1HLt DIOHcL IM;t HLD_AtMcJHL;t HrLэwCLcJLL;t IAMDGAIcH HL;t HLDOAIcLMM;t IMЍWHcL IM;t HL֍GtLcNIM;t H}LҍOtRLcJHL;t HP Lփt%HcLMM9t I#ML;tHD#H Lt DIJLcJHL;t HL֍zpLcNIM;t HLDJA=IcH4HL;t HPLDZA McN IM;t HLэBHcH@H ?H=?EH1AS"A]Zua;ƅw H=xXFHpM H}1H[xhH8IžH=>?LcKD I1H8I4HH8AjADAUAWjjAH0HuHEL JsuLM1EH1AWL@H ?H=ƿ?AZA[u=;ƅ{H=XFpLpHe[A\A]A^A_]@HcAL FJ4EHpD`L]1ҾHLH=?IH8 p~H}hhHuHEL sh1L?H=?H1QH u?A[ZH8MphHuHEL suLMDh1H ?H=?EH1APL!?CAYAZH8Md hHuHEL suLMh1L?H ?H=?HP1_AXpHDH8AjAD`AVAWRjAH0HuHEL js1EH1AWL(@H Ӽ?H=?Y^`;ƅH=SFLppHe[A\A]A^A_]HcA#I1HUHuLMI H`HMH= ףp= LLXHHh ~hXIHPMHU)MILHuLHuHuHp~p`)EQLfoU1fo]H=?II8XLpHpHAADꋵPH8jAVAWjjlj@H0HuHpHEL suLMD@1LO@H ?H=?EH1AS3AXAYuq;ƅH=8TF HMH}~`Hp~pHphLp)p)@LX(fo@fopLu)u)}HULfDoEfDoMH=?IHP 1I8DDHLppHpHAADH8jAVAWjjAĉHpH0HEHuL suLM1E侉H1ATL@H Q?H=d?^_u:ƅ3H=TSFGuL7Hu1HH0H=͸?IH8HH8AjADꋵPATAWjjAH0HuHEL s1EH1AWL@H L?H=_?ZYu:ƅH=SFBpL@LM LML'DfDfDfDHphhfD;fDLMtmfuz_VDuvfu0I1H1I2I2I2I"2ff.UHAWAAVAUATSHHHE@HUPHhyILuHHxHpyHHcIL%FIIc٭fH1HxHH%I$HH{zI$I\$L`EDHPMxI}GHLkH`LH辮HIL(L%uMHMnhLChHfDM]IMMIHHtAIII9uMHLMEHhLmLEfDu3HPH=6FLAHhMuC@I9VIMgMtAl$uM$LASAl$ uI $LQH]Ht{WSLuMtEFExE~ALuMtA~WAVL}MtEGE`EgALpMtAWAW-L`MtED$EXE\$A6LPMtA|$WAT$H@Ht8DCEXD[Au&H HQDs E~D{ Au L#HAT$L(H I9t'fDH;HSH9t4?H L9uH HHfH I9uLLpIL%L(M8HMnhHChLfDM]IMLHHHtAHIL9uMHLMEHhLLfDHPH=3FAMtOLHXIL9gMgMtAl$uI$LPAl$ uM$LAPHHtD[AKKA LMtENEyE~A LMtE^AKANA LMtEOEaEgA LpMtE_AKAOA L`MtEL$AAAD$A LPMtE\$AKAL$A H@Ht8DKAACAu'LHAPDs E~D{ Au L#HAT$L(H I96DH;L[L9t$OH L9uH f.H I9uHH`NLL`wHHPhHp HHH2HHL@LHMHH(HHHPHHmHHHLXLHHP0HH^LL`[H:HHH:HpH H`LLHgH:HHH:H`!LLPHHHHH2H`DA H:DDDhLLHH2HH"LaH8Mfh1L8H=?HLnII$8虣HAI$8AjDShjjA$AH0HHDžA$L suL1EH1AUL\`@H ?H=?S^_#:H=+FAH߅ADMvxH0L8HH=t?H8AMcID1I1I8I_HI8AjADShjjAAH0HHDžAL jsuL1E侉H1ATL%_@H Њ?H=?ZY3]:H='FǠAHfEDZDDfEDZDDlfEDZ(DDfEDZ9DD\A LEDD(LLXH:H`5LxLXE DIvH2H`HxLXDDIH HH"MUI|$LXIM`HxLHLXI2HDžXA H S)D^A H_DHH{zHXHH_HxHHLXIdLLPHDžXHHpA LfA3DH HH;H2HHfEEZ3DDHfEDZ"DDfAZ+DfEDZDDfZD fEDZDDufZD@fAZ8DfEDZ6DDfEDZ'DDfZDLL`HA H !DkfEEZDD(A H;DfZ1DH:HH fEDZDDnI7LVEW EJEO AILPI $LQA\$ DsEt$ M<$LAWA H2DfAZ;DM$LAPA\$ DsEt$ *M<$LAWI$LRA|$ wAt$ M$LARH3HVDS EJDK AAHHP3M&LAT$E^ AKAN A1ILS#I6LVEV EJEN A!ILPMLASAO YA_ M7LAVI4$LVET$ EJEL$ AII$LP:HHR{ ws H=J>̗LH=6>踗III I ff.UHAWEAVMAUI1ATISHH=nEHHM蹙1L9H=D蔙uhAE4u 1A}8¾H=#FhuTHUHLEMLHH=#F[A\A]A^A_]_H[A\A]A^A_]@H[A\A]A^A_]ff.UHAWAVIAUATSHHCPH~`H(AgfffLmAL=zH X1L)LAкA11H m>LhmLeHxIL$HMH0H9KHuL@LELHLMH8H@@HsXH;s`LH{PLH}MT$L9'f AxL=Lm1H ;XLL)A11H >LlLeL@It$HuH8L9H}LHLMLPLULH@@HsXH;s`rL^IT$LHEH9HHMHNH}H~HCX H}IuH9t?t71A~d* H=^DEvdA9/Ml$A+1HsXI--std=c+LmLUfE\$AD$7HE EH;s`LHFHHML98HLMLNHUHVHCX I|$A-wEHsXH}fDEHEH;s`LnL.LUI9LL]L^L}L~HCX Mt$Lu胘HEHsXH_CUDACC_fDo pDHEHHD@RTC_@_HE@H;s`LNLHUL9HH}H~LELFHCX H-defaultMl$AicHuHsXLmAD$-devfET$AD$eHEEH;s`_LvL6HML9HHEHFLMLNHCX 1t8H[A\A]A^A_]fDAN`gfffAA)fI|$HsXH-rdc=truH}HUAD$eHE EH;s`LfL&LEI9LLmLnLULVHCX 1^fDfo}~ffoefffDoEDF fDo]D^fDoUDVxoh)mfop)ukffDoeDffLH{PGH}M\$L9ݕLH{PGH}ID$H9譕LH{PtGH}It$H9L}BLH{PDGH}M|$L9MDAQEEAAgfffLLD D)DkdE)DAH BX1D)Aк&DMbD H0L1H XHID)AкA11LH >\gLPLHI~HPLM9LPLPL`LX@HLXLH@LXI9HPIwIVH H9%H`H9 QB8.LPMGLpLXMZCD9HPM~L LpL9OHXLEL9߹H`HpHxHDžXƅ`HEHDLPN<HML9UIUH9LMM93H 1OHpLxH B?I|$LPH}LM9rLELXL]LxL}LH@@HsXH;s`HNIT$HLMI9LH}H~LELFHCX H HpHH9ttHPIL9t_LH0IL9tCH}IL93-) fDLH{PCMHIRLHǐfH(LCH}IL9#諑1|@A1LLH >FNoP)Ufo@)`HXLEL߸fo`HDžXHxM<0)Mƅ`fo]^efIH11LcffDLH{PBH}ID$H9"譐AYD1@7Hp`H=x?ҋHHHHHH*HI4HrI6IHI8HdfUHAWAVHHAUATSH8O,HHHHHHHDžƅHHDžƅ zJHDK4EfLmHH5bELNHLuL)H~"H}MEMfL9D LUM9A; fF7L}HLeIUHHCD7HMHH9H]HH LMHpHH5bEHLMLxIM)I!HpH{M|$H93LEM9&A; fF&LpLxIEHSCD#HpHEH9KLMHMLMLLcELxHLpHIHDžxLEM40L9L M9dMkLIuB7H}H9t}HpLCL9thHHdFLPH5H XLc_LHF1gA11LH `E_HSLpHpLM9LpLxL}HLPLxL0H@@LxI9Y LpH{M~I9hL]M9[C0;HpLxIuHSBD0HpHuH9LMHMLMLLSELxHLpHIHDžxLEM40L9OL M9MLMEB7H}L9tȋHpHCH9t賋HPIt$H9t蝋HAH1ODLAH X譑A11LH _E$^HSLPHpLM9LpLpLuILxLxLH@@LxM9LpHCM~I9HuI9IC0;HpLxMMHSBD7HpLMH9LUHMLULLsELxHLpHIHDžxLEM<0L9H I9MLMEB?H}L9tHpHsH9tHPML$L9tHHH  X1DGLA#11LH Fq\HSLpHpLM9LpLxL}LXLxL0H@@LxHI9HpLCM~L9kHuI9B1;LpLxI}HSCD1HpH}H9QLUHMLUHL[ELxHLpHHHDžxLEM40H92L M9MaLMEB7H}L9t[HpHsH9tFHPML$L9t0HH0H5^FHoGL8HI9LL0M~ICI9H@I9C2,L0HML$L8CD0H0LvLPL9H8L@L9ϺLHPHXHHDž8ƅ@L`LDL0N4M93MLXL[B7LPI|$LpI9HXL`HLpHPH)LuHxHDžXƅ`HM9AL~MDM9I>;fA1AA HpLxMUL[B:HpLUL9H}HMH}LHCELxHHpHIHDžxLEM<0L9 L M9Ml LMEB?H}L9t超HpHsH9t衅HPIT$H9t苅LH0IL9toHHH5 \FDL8IM9HH0M~LHL9H@I9B7,L0HIT$L8CD0H0LVHPL9<H8L@H9ALHPHXHL0N4HDž8ƅ@L`MDM98M LXLKB7LPI|$LpI9[HXL`HLpHPH)L]HxHDžXƅ`HM9ALvMDM9I>;fA2AB LpLxIELKC7HpHEL9QH}HMH}LHSELxHHpHIHDžxLEM40L9L M9Ma LMEB7H}L9tHpHsH9tHPM|$L9tЂHH0HH9t贂HHH5.VEAL8IM9HH0M~LRL9L@M9Q B7,H0LML$L8BD1H0MpLPL9H8H@L9ϺLHPHXHL0N<HDž8ƅ@H`HDI9 MLXLSB?LPI|$LpI9)HXH`ILpHPI)HEHxHDžXƅ`IBM9йLv HDI9 I,false>;IM8A@ HpLxIuLSB2HpHuL9dH}HMH}LL[ELxHLpHIHDžxLEM40L9H I9% MTLMEB7H}L9t>HpL{L9t)HPIT$H9tHH0HH9tHHH5VF=?L8IM90LH0M~MKL94H@I9 B7,H0LIT$L8BD1H0MpHPL9 H8L@H9ALHPHXHL0N<HDž8ƅ@L`MDM9 MLXLKB?LPI|$LpI9;HXH`HLpHPH)HUHxHDžXƅ`HM9ALvIDI9 IA>;fE:AB LpLxIuLKC3HpHuL9 H}HMH}LHCELxHHpHIHDžxLEM40L99H I9)MLMEB7H}L9t}HpHH9tm}HPIL9tX}HH0HH9t<}L%L=.1HLL~H5LL ZH=sH L5%H~L)mH~L)uL~H)})EDHHLAlHHtILINd?hI$I$I$M40H9 M$M9M=LM$B7MLO|8hMAI IIIM$0H9 MM9MtHI4 LHazIHMB'HHLIL9tH1{LHIL9t{HHHH9tzH8[A\A]A^A_]ILIOd:hI$I$I$M40H9 M$M9MLM$B7MLO|8hMAI IIIM$0H9 MM9MtHI LH yIMB'HHHA1H ULsHI LHxI$HI; LHxI$HI LHXxH0@HIK LH0xHN@HI LHxHq@HI LHwH@HI{ LHwHP@HI; LHwH{@HI LHhwHP @HI LH@wHp@HI{ LHwHP@HI; LHvH{@HI LHvH,@HI LHvHP@I1R4DI$194I$@I14I;fDI$13@A1LHH ^3A1LHH ^31L3HPf.HA1LH . Vr3DH1Z3HbfDA1LHH `^.3fH13H`fDH12HfDA1LHH 9D2A1LLH g9D2H12HfDAH LF1Hi21@H1R2H fDH122HfDA H LF1H 2I@H11HfD1L1HPef.HA1LH ^ V1D1L1HPfHA1LH  Vb1DAH ]KF1HA1=@HA1LH V1NDH11HfD1L0HPf.AH JF1H0<@H8LfDo@HDž8Lƅ@AD)`HHXM40sfoEH)Eoh)mHfox)}ffoeH)efDo`HXHHDžXƅ`H)D)MHxH4L~MAdfouL)uOoX)]f.foUH)UfoM) H8HfDo@HDž8Lƅ@AD)`HHXM40fDomHD)mDH8LfDo@HDž8Lƅ@D)`HHXM<0H8HAfo@Lƅ@)`HHXM<0HDž8fDoULD)U5DfoMH)MfDo`HXIHDžXƅ`I)D)}HxI$Lv Mиf.foeH)efDo`HXHHDžXƅ`H)D)eHxHLvMAHXfo`HHDžXƅ`H))]HxHzLvMʺ@HA11H @UBfDHA 11H CEBlfDHA11H &TBDfDAeDADADA~DQfDADfDA DADADAXDfDfDADADfDAD(fDA+DfDfD I$ifD1@7IfD I$fD1@7IfD H  H HFDDHPD HHP HF1@7HPfD H H|1@7HPfD HGH=iT?;hH=]T?/hH=QT?#hH=ET?hH=9T? hH=-T?gH=!T?gH=T?gH= T?gH=S?gH=S?gH=S?gH=S?gIIH>III IpH1IDINIII]HHHH.H;IIIIHHI:H4H{HH2H?ff.UHAWAVAUATIS1HHH&AtIIK|,hmL51H @AǾH= @I~(1jIFHI~DHH@HtD;x |H@HuIVH9I9~gLp(E1MAH=!@D/h<ցH=EGguQDH=!@gKL,hIVHIvI~HtHL1H[A\A]A^A_]I~WfLp(QfDAE1bDLw(*fUHAWIAVAULATIESH!HpHifo@Ffo @F@ IU0HHHDž HDž Haitefo@F@IMPfpHHDžHDžHifo@F@dMEpHmpWelforHx@HHDž HDžL0h@MIToOutWelfo%2@FLH@ford H0HDž@HDž8LPkh@M#IteVectorfo-?FLX@ized(HPHDž`HDžXLphAplfo5?F@"#fo=?FfDp Hp0xIHE"HDžx"HEgrd@"IfDod?FfDo k?FfP "DDHHEHE"HE"HulgfDo?F@ lLfDo3?F@!DDXHEHE!HE!}H=Ec|QL}DI I?MOL9t(fM9u担|He[A\A]A^A_]fM9ufHL5H=EGc|uIM1ۺHdfHAh/AL[Dh]ALsDhHHAhtHIHIMd?hOTLhM$hM9[LI$hI$xH`O4H9 I$xI9w Mt)LhKtI2 LHdI$hM$pB0 H=9Eb pHDž}LLoELXLP HHH?HA?tMgXI_PfEHDžD)MLpI)MIIM9h LdH`IGXI_PHpL`LMD~LfElD)H9pUIsI3L3LcLLt M HpH L`H)L IH`HIMH`HN LF0LfHB LF DEDHHLfB Lf LMH;pIH M$HCLsHHhLt H II$IM!M\$ It$0Mt$LB0It$ L3LcH LLt M I`HHI$M%_fDLH1LuzsHLHpLHh@HHIAtI1H ^>IH=K?Od7hI|$1`I|$ :I|$(.DžHA$I$0HA$AHHDžA$LuL1EH1AVL>H G?H=G?%`AZA[9IDŽ$0It$E1jE1I$0j11A$AXAAYHDžHpA$LuL1EH1AVL!>H :G?H=MG?_^_I$hI$0I$8A$AHhHDžA$LuL1EH1AVL>H F?H=F?^ZY1ҾH=kF?I$8s]u1H=E\||fI|$ fXH=>X\ƅ@MLIHOd'hMD5H`I$hL9HI$hM$xLXL47L9(M$xM9xMt)H`It5ILH]I$hM$phB0fDMMIIOd'hKT5L`I$hH9>HI$hM$xLXN41L9fI$xI9=Mt)L`KtILH\I$hM$phB0fDIIIIOd'hLhMM$hM9t~LHhI$xI$hH`M4H9I$xI9Mt)LhKt IALH5\I$hM$pB0"D-D?fM!I|$]]LIMbLLH[LIfLhEDI$fMI~\I$Mt$HhLHs[I$LHALAHXHI|h]!HP/YLLiM9t%@I>IVH9t4[I M9uLMFL[9fI M9uDfDE6L`D0I+MI|$[L`IMbLLHQZL`IHDž`8Dž| I$h+I$haDDI$hDDI$hMH?HPI9HPHxyIHLPZI$hH9XtHXZHXLPI$hM$x8MaH HXI9HXHxyIHLXqZI$hH9`tH`YH`HXI$hI$xfMH6HXI9uLXI~ZI$hH9`tH`YH`HXI$hI$xMiKHPI9EHPHxyIHLPyYI$hH9XtHXXHXHPI$hI$x[A_M9t/AI>MFL9t:XI M9uLDMLeXI M9uI~LX)HxHHHHXiI~LPaI~LPH=i>FSH=i>:SL`LH=e>@UKQk鐿铿閿H鷿$Hڿ鄿ȿ6Կf.@tt1HuTDNDIAGTIB<^D_A(DIAAD9|^y,DߙAA8A9ANA1HHv<~D_A(AAAD9}A1fUH=wXHAVAUIATSLLwXIM9t7I\$HtkuHHPk uHIHRM9u@MuXI]PI9t!H;LSL9t4/VH I9uI]PHiH[A\A]A^] VfH I9uDLMtAL$qAt$7MMtE^A[A^AMMtAvDFEFIHtCD`DcMIHtDCEHDKAMMtAL$QAT$MMtEL$EQET$At`MupMAvVAVILSEF E`Ef AwMLAQh[A\A]A^]M$LASA|$ GAD$ uI $LQtM4$LAVAt$ ^A\$ 3M$LAP#LHAR{ D_D[ HHPHHRK DqDs H3HVMLAQA~ DWEV IMLAS:ILPEf AT$AV AILQM$LAPA|$ DOEL$ M$LARDHHhHE1LH0 Hf.UH0   HH{H=T+F]Off.H=锲7@HHH;Ou fDUHHHH@ҋE@Hd UHATSHHL@ Hl HLJP I €y X ut5L0 L8 E1O$1LP LH[A\]fDHuH}E d 9MtH [A\]u9h uI$1L0 I= ףp= HP H L8 IIЀH t LRNYLRIIIff.UHAVAUATA SH1Ҿ H= 7FL OL 1fx 1҃ LhH=8FLA NGH0 1LL6RH=6FMAą  HH H H H H H Hq8H=5ESMAą   L     KLAx`~ q1Ҿ H=36F yMDE[DA\A]A^]AfDx ZD)fx L 7f.L Iy @HH=ѫ>2LH=5F$LAq@L Iz HH=>KH=K5FKuĸfDL I{ GH=Q>KH= 5FKuzfDH Hx GH=>rKH=4FdK@CfH Hz @GH=Ѫ>2KH=4F$KfH Hy GH=>JH=K4FJfH H~ FH=Q>JH= 4FJfH H FH=>rJH=3FdJ@wfHHH =O1=//off.UHAWAVAUIATSH]Ls0HHLhLuHEHEHEE?HEHEAIE1MHHLU1OHMLXKHGLILHMt:MM;YMMu#I9MMtIH1HIH9tHALH:IM;YH}LuI$`M$L`I$ID$8M{(I$ HHH`LhHpHxHUM1LHMIMtCIHt;HqE1@I9M8H HtHq1HHI9tDAH}HL?5KM|M7L!KMtlM&LKMt\M<$LKMtKM'LJMt;M4$LJMt*M>LJMtM'LJLMvLUH}1H0JFH}HEHEH9twJHĘD[A\A]A^A_]fH IHtHq1HHI9MIM9I}LL;5Fu}MLHLXHLLXH1IHu+Md$8LHLXڻH1IE1HlAaIfDLAM$`ILHmmI$fDUL AHAWAVIιAUIATISIHh(HHpLHHIE^AAƅ H5x1IDž ffA L}I0 H)EIHIuLADž IDž IDž IDž IDž IDž IDž IDž IDž IDž IDž( IDž@ AƅH ADžL IDžP AƅX A HxI\ A0 ELId EfoU1fLHIAI fMp HzcfEx IM0 IA MMMHLUMADžl IDž HI M0 I8 MIDž\ IDžd ADž@ IDžH ADžP IDžT ADž\ A` Ap A IDž A IDž HI AHIxADžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8ADž@H]IAHIDžXIDž`AhIDžxADžIDžHuIIIDžADžIDžL}MMIDžADžIDžLEMMIDžADžIDž I(I0IDž8ADžHIDžPLMMXM`IDžhADžxIDžIIIDžADžIDžMMIDžIDžIDžIDžIDžADžIDžMMIDžAƅ( A|$`JAIPMHM A) HUI9H=BML)HHHCHHHtxHtYHt:HtM|$Mt AoM|$MGMt AhIIM_Mt Ak IMOMt AiWIIWHt j IIGHt:hu3LHHpARLpA{ IIwHt;nu4HHHpQLpAEA A IL9} MWMt9Aju1MLLpASHp~  fDIIOHt;iu4LHHpAPHpADH A fDM_Mt7Aku/I3LLpVHpy  DMG(Mt?Ahu7MLLpAQHpADP Ai fIw8Ht7nu0HHHpQLpAx 5 DMOHMt7Aiu/MLLpARHpADX A IOXHt7iu0LHHpAPLpAy d @MWhMt7Aju/MLLpASHpp  @IpL9}MPMhM;ptMpIML莭LeIDžIIH}MMMIDžHHUIDžIIH}IIIDž LUI LIDžMMIDžҬI(IPI0I@IDž HIDž8蘬L]1IDžPIDžhH=LS>MXM`IDž`79ANIH A8 AF 9A< EFE@ AvAA ENIvEB AVAC HIIEEMII0:IIH'I0I`IHIxI`I^VIxIII4IIIIIIII \?II8Y|I IPII8Ih IPIIhI]IIzIInII4&II1bIINII({EH}IE@,I0I8IhI`IPLMH}I=H}I-ILIHI@IpIpIMIMMI9t2MtH=:%AD$IHt}MIIIMI9t1MtH=:AGIHt+MII衿HuH}D>H=}O>5Hh[A\A]A^A_]L)HHHH+HHHHt~Ht%M|$MtEGAxAAM|$IGHtFHqpu8LHHpAPHpDO AQW AuLARIM_MtACHAKIMWMtEZACABAIIWHtDREZDZA IMOMtAQDREQgIMOMtBAyWAQu2MLLpARLpAC D@EC mDIL;}8IwHtADNAy~Au/HHHpRLpEZ ACAB AfIIwHtCDNAINAu2HHHpRHpDW EZD_ ADMGMt?ApDNEHu.ILLpQHpW DRDW IG(Ht?D@AppAu.LHHpAQHpW JO @M_8Mt?ACD@ECu.I3LLpVLpAy WAQ MWHMt?EZACABAu-MLLpAPHpDN Ay~ ApMWXMtGEZAKAJAu5ILLpPLpAp DNEH fMWhMtGAzD_EZu6I LLpQHpD@ App Af.IpL;}IwHAI HA 9H=K>41H=̖>&1A#f.AD$IHDAGIH fDMLLpASHpD@ AHH AlH0HV^DH HHpQLpAp MLAQfDHHHpPLpAH yAx I0LVILLpRHpN VLHAPGI3LLpVLpAx DOEH ILRfDILRfHHRfLHAR)HHRZfLHASILRfH0HVfHHQbfILP2fILR"fLHAQaLAS@LAR@I LQJfHHRfMLAPHPEDI LQfILRJfMLLpAQHpx LHAR}fDILLpPLpAz ~MLASofDI LLpQLpAx wAp 9MLAQ*ILQAo I7LVMLAQAW DREW PMLASAIcIkD1f.UHAWAVAUATISH8  H H H H H H H HH+ H=EHH9l-CM$ M$ f1LuA>M}AEMt-H=1HAEGAA~INM}MwAEMt/L-0MAEFAfyILoAGMt$L5}0MDAuEyIW u^LjAG Mt(L5A0MXAEEAXfLqMo0L9m1H8[A\A]A^A_]M$ DkHIICA~#HtH=/@HEHzeAg HtHM)EAfoEHMIcLqMo0L9mNpfDI$ D{HHHY~ HtH=P/CH]I}MAMHt)EfoEA~IcINM}.I$ DsHHHP~HtH=.mBHUIUAHtHM)EVfoEHMyIcI I$ DkHHHX~HtH=t.CH]H]A_HtHM)EfoEHMIcDAuDFEEHMIML)EQMfoEHMAEU AM]HML)EASfoEHM`EFAxA~A I6HML)EVMfoEHMaAEV AMHML)EASfoEHMEGApAwAJM)EH}LAQLUfoEMAE_ AI)ELRfoEfEEAxA}AIuHML)EVMfoEHMAEU ApHMIML)EQfoEHMPBCC@sEU EJEM ;EV EJEN E_ ACAG EU EJEM YUHAWAVAUATIH0 SHHHH)L-+MvM$ M$ @IM9t7I^HtkuHHRk uH IHQM9uDM$ I$ I9t)H;L[L98k)H I9uI$ HtHM)H=oM$ M$ HI<$M9t/fI?IGH9 )I M9uM$ MtL(I$ Ht(I$ Ht(M$ I$ I9LH)HHHMu2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am6 HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo 6 fDHLkMt AmG HI9L{Mt AoHLkMt AmtL{Mt Ao7Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AoLkhMt AmFHpI9GI$ HtH&L5}MI$IM4$%HL [A\A]A^A_]&DI M9#LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo MLAQ @MMLAQ8M]LASE} AA} AbIELPSMELAPMULARAm M]LASfMELAPEM AQAU AMULARf.DUHAWAVAUATIH0 SHHHH>L-MfM$ M$ @IM9t7I^HtkuHHRk uH IHQM9uDM$ I$ I9t)H;L[L9(H I9uI$ HtHmH=bM$ M$ HI<$M9t/fI?IGH9+I M9uM$ MtL I$ HtI$ HtM$ I$ I9LH)HHHMe2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am& HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo & fDHLkMt Am7 HI9L{Mt AoHLkMt AmdL{Mt Ao'Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AosLkhMt Am6HpI9GI$ HtHL5?I$IM4$H[A\A]A^A_]fI M93LfDH I9fDHAHHHHtpHtGL{Mt:AGAGu*ILQAw DFEG uILRHLkMtEMEQEUA}HLkMtAMqAuHL{MtE_A{AAHL{MtEGEHEOA&HLkMt9A}OAMu)IuLVE} EGEE AfHLkMt3EUARAUAu!M]LASAE xA} *fHI9L{MtAwDFEGHL{MtE_ACAGALkMtEMEQEUACLk(MtAMyA}L{8MtE_ASAWAL{HMtADGEGYLkXMtAEHAM\LkhMtEMEQEUA HpI9M$ MtAv~A~M$ MtAGXA_6M$ MtADGEGI$ HtKQSI$ Ht{DODKDM$ MtAvVAVM$ MtA~DWEVM$ MEGAPAWAILSEO EqEw AMLAR@ILPAo FILQ8DMULARAm M]LASfILRAo MLAQ@IuLVAm MELAPvfILPAo FILQ8DMULARAm M]LASILRAo xMLAQi@IuLVAm :MELAP*fMLASAF HAN AI6LV3@M>LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo ,MLAQ@MMLAQ8M]LASE} AA} AbIELPSMELAP MULARAm M]LASfMELAPEM AQAU AMULARf.DHHhLHAH0 H7rfDUH0   HH蛤H=tE] ff.H=i|m7@HHH; u fDUHHHH@ҋE@Hd UHATSHL@ Hl HLJP I X wHLJ1H[A\]HHuH}EQd 9UtH [A\]M9h uM$1H0 L8 I= ףp= I HP LLILcMЀH t K RLLP 1LKORIIېfUHAVAUATA SH1Ҿ H=9EL H L 1fx 1҃ LhH=NELA JH0 LLc H=|FAą  HH H H H H H HH=DAą   I |    HLAx`~ n1Ҿ H=`E DE[DA\A]A^]@AfDx ZD)fx L 7f.L Iy pH=g>bH=ETAt@L Iz 0H=f>"H={EuĸfDL I{ H=f>H=;Eu}fDH Hx H=Af>H=E@FfH Hz pH=f>bH=ETfH Hy 0H=e>"H={EfH H~ H=e>H=;EfH H H=Ae>H=E@zfHHH m 1=//rff.UHAWAVAUIATSHPLs0HHLhLPHDžXHDž`HDžhDžp?HDžxHElIE1fDOHH1LXHPLXKHGLILHMtLMtM'LLMz@LXHP1H0JHPHDžhHDž`H9thHĨD[A\A]A^A_]H IHtHq1HHI9MIM9qI}LL;5u}ML8LHHLLHvH1IHu+Md$8LHLHvH1IE1H\AQdfDLAM$`IL8mSImfDUL rAHAWAVIιAUIATISIHhH +LHHIENhAAƅ H5o1IDž ffA L}I0 H)EIHIuLADž IDž IDž IDž IDž IDž IDž IDž IDž IDž IDž( IDž@ AƅH ADžL IDžP AƅX A HxI\ A0 E҂LId E輂foU1fLIAI fMp HzcfEx IM0 IA MMMHLUMADžl IDž HI M0 I8 MIDž\ IDžd ADž@ IDžH ADžP IDžT ADž\ A` Ap A IDž A IDž HI AHIxADžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8ADž@H]IAHIDžXIDž`AhIDžxADžIDžHuIIIDžADžIDžL}MMIDžADžIDžLEMMIDžADžIDž I(I0IDž8ADžHIDžPLMMXM`IDžhADžxIDžIIIDžADžIDžMMIDžIDžIDžIDžIDžADžIDžMMIDžAƅ( A|$`:IPMHM A) HUI9H=ML)HHHCHHHtxHtYHt:HtM|$Mt AoM|$MGMt AhIIM_Mt Ak IMOMt AiWIIWHt j IIGHt:hu3LHHpARLpA{ IIwHt;nu4HHHpQLpAEA A IL9} MWMt9Aju1MLLpASHp~  fDIIOHt;iu4LHHpAPHpADH A fDM_Mt7Aku/I3LLpVHpy  DMG(Mt?Ahu7MLLpAQHpADP Ai fIw8Ht7nu0HHHpQLpAx 5 DMOHMt7Aiu/MLLpARHpADX A IOXHt7iu0LHHpAPLpAy d @MWhMt7Aju/MLLpASHpp  @IpL9}MPMhM;ptMpIML~hLeIDžIIH}MMMIDž8hHUIDžIIH}IIIDžgLUI LIDžMMIDžgI(IPI0I@IDž HIDž8gL]1IDžPIDžhH=<>MXM`IDž`'ANIH A8 AF 9A< EFE@ AvAA ENIvEB AVAC HIIEE=OII0*kIIH]I0I`IHIxI`INIxIIIxIIII…IIII LII8I7I IPI8IhsIPI谸IhIMIIjDII)II$II!II>xII(kEH}IE@I0I8IhI`IPL=vH}I-vH}IvILvIHuI@IpuIpIuMIMMI9t2MtH=%AD$IHtmMIIIMI9t1MtH=AGIHtMIIzHuH}4H=m >Hh[A\A]A^A_]L)HHHH+HHHHt~Ht%M|$MtEGAxAAM|$IGHtFHqpu8LHHpAPHpDO AQW AuLARIM_MtACHAKIMWMtEZACABAIIWHtDREZDZA IMOMtAQDREQgIMOMtBAyWAQu2MLLpARLpAC D@EC mDIL;}8IwHtADNAy~Au/HHHpRLpEZ ACAB AfIIwHtCDNAINAu2HHHpRHpDW EZD_ ADMGMt?ApDNEHu.ILLpQHpW DRDW IG(Ht?D@AppAu.LHHpAQHpW JO @M_8Mt?ACD@ECu.I3LLpVLpAy WAQ MWHMt?EZACABAu-MLLpAPHpDN Ay~ ApMWXMtGEZAKAJAu5ILLpPLpAp DNEH fMWhMtGAzD_EZu6I LLpQHpD@ App Af.IpL;}IwHAI HA H= >$H=Q>A#f.AD$IHDAGIH fDMLLpASHpD@ AHH AlH0HV^DH HHpQLpAp MLAQfDHHHpPLpAH yAx I0LVILLpRHpN VLHAPGI3LLpVLpAx DOEH ILRfDILRfHHRfLHAR)HHRZfLHASILRfH0HVfHHQbfILP2fILR"fLHAQaLAS@LAR@I LQJfHHRfMLAPHPEDI LQfILRJfMLLpAQHpx LHAR}fDILLpPLpAz ~MLASofDI LLpQLpAx wAp 9MLAQ*ILQAo I7LVMLAQAW DREW PMLASAITITD1f.UHAWAVAUATISH8  H H H H H H H HH+ H=DHH9\CM$ M$ f1LuA>M}AEMt-H=HAEGAA~INM}MwAEMt/L-MAEFAfyILoAGMt$L5mMDAuEyIW u^LjAG Mt(L51MXAEEAXfLqMo0L9m1H8[A\A]A^A_]M$ DkHIICA~#HtH=@HEHzeAg HtHM)E1foEHMIcLqMo0L9mNpfDI$ D{HHHY~ HtH=@CH]I}MAMHt)E趶foEA~IcINM}.I$ DsHHHP~HtH=mBHUIUAHtHM)EFfoEHMyIcI I$ DkHHHX~HtH=dCH]H]A_HtHM)EֵfoEHMIcDAuDFEEHMIML)EQMfoEHMAEU AM]HML)EASfoEHM`EFAxA~A I6HML)EVMfoEHMaAEV AMHML)EASfoEHMEGApAwAJM)EH}LAQLUfoEMAE_ AI)ELRfoEfEEAxA}AIuHML)EVMfoEHMAEU ApHMIML)EQfoEHMPBCC@sEU EJEM ;EV EJEN E_ ACAG EU EJEM YUHAWAVAUATIH0 SHHPHHL-MvM$ M$ @IM9t7I^HtkuHHRk uH IHQM9uDM$ I$ I9t)H;L[L98[H I9uI$ HtH=H=*M$ M$ HI<$M9t/fI?IGH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHMu2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am6 HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo 6 fDHLkMt AmG HI9L{Mt AoHLkMt AmtL{Mt Ao7Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AoLkhMt AmFHpI9GI$ HtH|L5mI$IM4$HL [A\A]A^A_]DI M9#LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo MLAQ @MMLAQ8M]LASE} AA} AbIELPSMELAPMULARAm M]LASfMELAPEM AQAU AMULARf.DUHAWAVAUATIH0 SHHBHH.L-MfM$ M$ @IM9t7I^HtkuHHRk uH IHQM9uDM$ I$ I9t)H;L[L9({H I9uI$ HtH]H=M$ M$ HI<$M9t/fI?IGH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHMe2HHHHtvHtWHt8LkMt+Amu#IuLVAm uMELAPfDHL{Mt Ao HLkMt Am& HL{Mt Ao HLkMt AmuIuLVAm  fHL{Mt#AouILRAo & fDHLkMt Am7 HI9L{Mt AoHLkMt AmdL{Mt Ao'Lk(Mt AmL{8Mt AoLkHMt AmL{XMt AosLkhMt Am6HpI9GI$ HtHL5I$IM4$H[A\A]A^A_]fI M93LfDH I9fDHAHHHHtpHtGL{Mt:AGAGu*ILQAw DFEG uILRHLkMtEMEQEUA}HLkMtAMqAuHL{MtE_A{AAHL{MtEGEHEOA&HLkMt9A}OAMu)IuLVE} EGEE AfHLkMt3EUARAUAu!M]LASAE xA} *fHI9L{MtAwDFEGHL{MtE_ACAGALkMtEMEQEUACLk(MtAMyA}L{8MtE_ASAWAL{HMtADGEGYLkXMtAEHAM\LkhMtEMEQEUA HpI9M$ MtAv~A~M$ MtAGXA_6M$ MtADGEGI$ HtKQSI$ Ht{DODKDM$ MtAvVAVM$ MtA~DWEVM$ MEGAPAWAILSEO EqEw AMLAR@ILPAo FILQ8DMULARAm M]LASfILRAo MLAQ@IuLVAm MELAPvfILPAo FILQ8DMULARAm M]LASILRAo xMLAQi@IuLVAm :MELAP*fMLASAF HAN AI6LV3@M>LAWEF AXA^ AMLAQLHARD[ ACC AH HQL3HAVs D~D{ MLHAP>MLAQEW EZE_ AILPfILRAO DqEw I7LV@MLAPEN EQEV AYMLASJILQA wAw AMLAP2@MLAQEW EZE_ AILRyfILPEo AMAO A:I7LV,IuLVEE EHEM AMULARIULRE} E_E] AIELPMLAQEo EUEW A+ILRfM]LASAE PAU IMLQfIuLVE} AA} AMELAPtMULARAm M]LASfILREW EZE_ AILPILPAo ILQDILPEo AMAO A@I7LV2IMLQfMLAQILRAo ,MLAQ@MMLAQ8M]LASE} AA} AbIELPSMELAP MULARAm M]LASfMELAPEM AQAU AMULARf.DH= 8)7@G,HW@HHcLMH8I;t IIDPASMcJ Hq8H;t HOHD@A#McNMZ8I;t IIӍHHcLMH8I;t IIDPAMcJ Hq8H;t HHD@AMcNMZ8I;t IIӍHtkHcLMH8I;tIukIDPAtCMcJ Hq8H;tHuC HփtHHL@8H9tIuIиH9tH81Ðff.t HLJX H0 H8 HL H` LX tQH L@ D1McKDIHHJ HX HDi uGH L@ tLc| HMI M9vKD 1IHHHX DHHX HHxTH9v#HH9sHx&H7H~f.HxHHHUH==H@UfHAVIAUATISHHHHGtOHH9wDH8L,I$Ml$HtHLH[Ml$A\A]A^]f.1'I{/ff.UHAWAVAULoATSHL/HHHID6mIHEHw0Hu"DsHCADH[A\A]A^A_]DHtH}1uIHHEHCLLLHEL+H==T@UHATISHHtHtxH)HHw/t 9pu1ҋx 9t¾H=E٬IDžlLL.l 9p:DžlLL.Dl D9p1Džl LL.Dl D9p(H=GEBH0 L8 L@ IHH LLH LE1II$XIE1HDž@H4HDž8IHDžPHDžHHDž(HDž0AII|L I90 M;$ M;$ M;$ M;$  M;$ M;L$0 M;$Hu LL(HL I9M;$NM;$M;$M;$ - M;$= M;\$0_ M;$HuHH(HL I9M;$VM;$M;$*M;$ M;$M;D$0M;$HuLL(HLPH9M;$M;$,M;$~M;$ M;$2M;T$0M;$Hu LL(HPL I9M;$^M;$M;$M;$ 4M;$M;D$0 M;$HuHH(L(I98M;$M;$M;$fM;$ M;$JM;T$0M;$HuLZL(f.L0I9M;$BM;$M;$M;$ (M;$M;D$0<M;$HuHBH(f.HBH9L I9HPL L8I9`L(LxI9L0LzI94LzfDHeظ[A\A]A^A_]@p 19t1Dp D9tD1Dp D9tDL8L0LP1MHH` MHI< H HHi L LHHDžNL@H=zDW1MH=~E61HPH=zD1H0H=D1H8H=Eĥ\1H@H=E螥61H(H=EDx~0HLH0 HLHLH~~8)M~H(HU~ @uP)pAd)])e)UuuuuLuLuHXuuxpHpH= E豣H=E裣He[A\A]A^A_]@fHDžE1HDžHDžHDž@L0LrLrL2HDžHDž]DLJLJ7L LL8E1HHHaLZLHHBHH@LLHLL@LRL@LBL@LL@E1HDž@E1HDž8HDžPHDžHHDž(HDž0fDL0LLPyLL8qLL8HBH8LZL8@L80HHPLLH LL0LBL0rHH0cLRL0L0LLH4HH@LLPLL8LL@LLHiLL8LL0KLL@It(ItH HI$@ H HI$@ H HI$@ H HI$@ H HI$@ H HI$@ H HI$@ I9tpH H@I$@ HJI$@ HJI$@ HJI$@ HJI$@ HJI$@ HJI$@ HJI$@ I9u%'oo8fvAAffofofs fofs fffffs fAooHffDofDofAs fDofAs fAfDfDfDfAs fEfAADoDoXfDfEofEofAs fEofAs fEfEfEfEfAs fEfAAtGo ohffofofs fofs fffffs fffofsffI~I9tHLIHI8IM9H=EAA蕌 D E A ofEvDDo`fAfEofofAs fDofs fAfAfEffs fAƒDo(DopfEfAofEofs fEofAs fDfEfEfEfAs fEfAǃo8ofAfofofs fofs fffffs fftUoHfADofDofDofAs fEfEofAs fEfAfDfAs fEfAfDoDfAsfAfH~HD9tHH4LIL`LI9$8 H=pEAA賊( 4  Do@fEvADoAfEfAofAofs fAofs fDfAfAfAfs fAoPofAfofofs fofs fffffs ffADo`DofEfEofEofAs fEofAs fEfEfEfEfAs fEfAAtRDopfEDofAofEofs fEfAofs fAfDfAfs fAffoAfsAffH~HA9tMcJ H@LNLL1I9$8 H=EՈJDEc AM oofEvDfAfofofs fofs fffffs fDoDofEfEofEofAs fEofAs fEfEfEfEfAs fEfAăDoDofEfAofAofs fAofs fDfAfAfAfs ffƒtLofADofofofs fAfAofs fAfffs fffDoDfAsfAfH~HD9tLcNMIKIHM$0 H={EM$8 I9dDE:A^ DofEvDDofEfEofAofAs fEofs fEfAfEfAfs fAƃDoo fEfofAofs fAofs fDfffAfs ffǃDoDo0fEfAofAofs fAofs fDfAfAfAfs fftVDofEDo@fEofEofAs fEfEofAs fEfEfEfAs fEfAfDoDfAsfAfH~HA9tLcNMIKIHM$0 H=EM$8 I9rA$ LdM$l HI$t I$M$@ A$l Au MIAI I$8 Id A1E$ E$i M$| A$ @ExfADŽ$; AƄ$? A$9 A$8 tHA$: tHA$; tHA$< tHA$= tHA$> tHA$? tHA$@ tHLmH=kDłAŅA$8 A$9 bA$: A$; A$< |A$= .A$> A$? A$@ M$A~`ƒAD NҾ H=FEA ÂEEHD[A\A]A^A_]A HLҋM@1DD;D1DD;D;I$1ҁy`DA @DA 0D1;4;M$1Ax`@1ҋ9@DD;KDTLLDXDž DtDD; D;DTLLDXDž D);D1DD;L1ҋ;31ҋ;E1AfADŽ$ _fADŽ$ )A$L @9X@9T@!@>DDE9dE9[DE9EA9 AƄ$8 AƄ$@ AkA1BM$( Ix .zH== ~H=AE~CA$L I$@ HȼH= E}AŅH#EH<AM$ Iy yH=-=}H=E}/I$ H~ ]yH==O}H=pEA}rI$ H yH==}H=1E}3I$ Hx xH=p=|H=E|EI$ Hy xH=1=|H=E|M$ I{ axH==S|H=tEE|uzI$ H{ &xH==|H=9E |u?cM$ I wH=|={H=E{AHHI 謀=//1A$ A@u>M9w"fADŽ$: D;IAƄ$= AƄ$8 LLHھDž 7EH=E{AŅ! HʒEE1AƄ$9 LEAƄ$; ADŽ$L HC4LHLI$@ DžDHzAŅD D9Lt(IIuMc$| M$@ I E$L ff.U1Ҿ HSHH8H=)dEzuHH[]DH []@UHAWAVAUIATLPSMt$0HHHLPHDžXHDž`HDžhDžp?HDžxHEIE1D|OHH1LXHPLXKHGLILHMtLxM'ILxHH` xfDLALXIL8@IfDUHAWIAVHHAUATSH8OMHIg/HuMHVH6II/A HMHI$/H]IHSH3H.AHIHH.LEIIPI0H.AHIHH.LMMIQI1Ia.AHAMHI2.IHH5}HLj.HDoH)pHH5T:jHH5lBD}:RHH5%S]:2III&I0HUIrH0HIIHHILHII HIIH,UHAWAVAUATIS1HHH &AtIIK|,x&pL51H ?AǾH=?I~(1(mIFHI~DHH@HtD;x |H@HuIVH9I9~!jLp(E1MAH=$?DOk<ցH=EgjuQDH=$?kKL,xIVHIvI~HwH L1H[A\A]A^A_]I~wiLp(QfDAE1bDLw(*fUHAWIAVAUIATMe`SHA!~`gfffLuH5k1H]H VH()LAкrLH5=HBHL!H}LCL9tlH}MNL9tlA!t71Ad* H=C1CiEdA9/H5b#?H0HL H}HKH9tkH5=HHLY H}HsH9tgkH5=HإHL- H}LCL9t;kH5~=H謥HL H}HSH9tk1A!H[A\A]A^A_]DjAxuAO`gfffAA)LuH]1H5RiLH VH(pLH5n=HAHLWNfH5=HHL6H}HH9tDj1>DDQEDAgfffLDD)DkdD)ىH(1)H 3VAкpDAMbDAH(H01H VH ID)AкoHPLH5=HI?LpLH=LL(ME-LxHUIHpML9:HEHuI9vMNL90H}I9H('HKL@HMH0L9HuHPHULPHLLULH@@H}L[L9thL(HpIL9thHHPHH9tohL H0IL9tShH}IL9=hy 'fDo@)E7f11L:fDIIIIIIIII8IIBITIfIff.UH5 ~EHAWAVAUIATSHHLH謡H{ H5\E蜡H{@H5~E茡H{`H5\E|HH5~EiHH5~EVHH58~ECHH5A\E0HH5:~EM0 LH=E~EcRLf[fIGL9tII?M_L9uIGL9u苅HĈ[A\A]A^A_]fLLeH= ~EcuHE1HpHDIC%8 DC%9 M\$DCII C%8 DtLLHHM H< HIhH9IhMxL| LxL9IxI9Mt'LJ4ILHcIhMpDB8 H=9Db$A A LH}EHDžLhHX HLI GLC58 tM fM HDž)MLxM)LHHH9LTdI H`M HxH`LxHpI~pLfl)M9LMIL)H HHtcHt-HM\$LM$I6IVH腞I I ID$LI$I6IVHbI I L9xIT$LI$I6IVH2M|$ Iv IHpMI?Iv LIV(HLpMG0Mg MG LIv IV(HߝIOPMg@IO@Iv@LIVHHMg`I`L9x^LLAP AQ IHhK% e'HX7_:HhpfDA8 A9 A: >A; XA< rA= A> A? A@ (I( H=yE^D@LLHHM HHxHIhH9LxIhIxHhN|;H9IxI9 Mt'LxJ4 ILH_IhMpB8 LLHHM HHIhH9trHIhIxHxL|3H9IxI9Mt'LJ4 I LH_IhMpB8DDI NH=ExE\kI !H=xE\fI H=wE\@I H=wEn\yI H=wEF\lQfI tH=kwE\J!fI DH=;wE[(fI H= wE[fDDHpLIhH9xtHxa^HxIhLMxHpL蝗IhH9xtHx^HxIhLMxHpLMIhH9htHh]HhIhLMxDž 4MoL`MVLMI7IWH胘Mf Mw HDž`^DDIh(DDIhADDIhIzHhkliVII7fDUL 8AHAWAVIιAUIATISIHhX[HILHHIEAAƅ H1E1fAL}fA I0 HLML fEh I]HzcIDž ADž IDž IDž IDž IDž IDž IDž IDž IDž IDž IDž( IDž@ AƅH A HxIl A0 AX )EE LIt EfoU1fH[IAI fM IX fE HMMA MMpHuMpIADž| IDž HI IX I` I I@IDžl IDžt ADžh IDžp ADžx IDž| ADž A A A IDž A IDž HIHA8HIADž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`IDžhIDžpIDžxIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDžIDž IDž(IDž0IDž8IDž@IDžHIDžPIDžXIDž`ADžhLEApIDžIDžAIDžADžIDžLMMMIDžADžIDžL}MMIDžADžIDžLUM M(IDž0ADž@IDžHIPIXIDž`ADžpIDžxL]MMIDžADžIDžIIIDžADžIDžIIIDžIDžIDžIDžIDžADž IDž(I0I8IDž@AƅP A|$`xTIxMpMH AQ HMI9H=VML)HHHAHHHtwHtXHt:HtM|$Mt Ao)M|$MWMt AjWIIWHt j IM_Mt AkfIMGMt Ah IIGHt8hu1H0HHpVHpz IMOMt;Aiu3I LLpQLpAES A fDIL9} IwHt9nu2HHHpRLpAx  IIOHt;iu4LHHpARHpADX A fDMGMt7Ahu/ILLpRLpAy  @MW(Mt7Aju/MLLpASHpp | @MO8Mt7Aiu/ILLpRHpy M DM_HMt?Aku7I3LLpVHpAD@ A f.IOXHt7iu0HHHpRLpAz u DIwhHt7nu0LHHpAPHpADH A fIpL9}MxMM;tMIMLLeIDžIIH}MMM8IDžxL]IDžIIH}MMIDž9LEIHLIDžM M(IDž0IPIxIXIhIDžHHIDž`ȿLM1IDžxIDžH=|f=MMIDžgLANIp A` AF 9Ad AvAh EVIvEi AVAj E^Ek HII@EE8}IIXjIIpWI0IDIHI)I`IiIxI#IIGII5IIII0IIHRII`艏I Ix]I8IIPIIhI/II誜II'IId9II auII8~IIP EH}IEh?I0I8II,IPL}H}ImH}I]ILNIH?I@I,IpIMIMMI9t2MtH=+N5AD$IHtMIIIMI9t1MtH=MAGIHt[MIIHuH}tQH=b=HHh[A\A]A^A_]L)HHHH-HHHHt~Ht#M|$MtAWzAM|$MOMtHAAHAIu8ILLpRHpDW EZD_ AuH7VfIMGMtEHAAA@AIMGMtEHAqApAIM_MtECEHEKAIM_MtA{DGECuIMWMtHEZA{AzAu6MLLpAPLpAA PAQ zf.IL;}0MWMtIfEZAKAJAu.MLLpAPHpDO AAG AIIwHtCDVEZD^Au1HHHpQLpAx DOEH DIwHt?VDRDVu/LHHpASLpAx OAH IG(Ht?pVPu1LHHpARLpEC AxA{ AMO8MtGAApAqu7ILLpRLpEZ ECEB Af.MOHMt?AyGAAu/I1LLpVLpAR DZEZ kMOXMt?AyOAIu/ILLpPHpDV ARV AMGhMtGEHAyAxAu5ILLpQHpp DVDP f.IpL;}MWMAI HA MH=;^=TDH==FDAf.AD$IHDAGIHfDM LLpAQHpP rp aHHQSILLpQLpAEJ AMLAS@I3LLpVHpP JH LHARH HHpQLpAEA ADMLAR5@ILLpQHpz DWDR LHASfDMLASMLAQH0HVfI LQJfLHAPyLHARLHAQHHQRfILP"fLHAS!HHRbfMLAQI LQfI LQRfMLAPHRDILPBfI1LVfLHAP9MLLpASHpx ~H0HVpILLpPHp~ pHHRbILLpPHpJ yz -LHARMLAPAo MLAQMLARE_ AsAw A=MLAP.I邳I銳@1f.UHAWAVAUATISH88 9 H H: H; H< H= H> H? H@ HH+ H=(DHH9@M$8 I$ f1MA}LzMH=)DHxAEGAu^MH}L)EHUAQLUHUfoEMAE_ Au HUIL)ERfoEHUfDA}IELzMoBM|H CHAEEAuZIuHEL)EHMVLMfoEHEMAE] AuHEIEL)EPfoEHExIWLjAGMH BHPAEEAu^IuHEL)EHMVLMfoEHEMAE] Au HEIEL)EPfoEHEDIW LhI91H8[A\A]A^A_]@D{HI$ HK~ HtH=#BAHMHZM Ht&H=AHDADCAA}IcIELz+DkHI$ HS~HtH=AEBHUI_UAHt&H |AHADCAxIcIWJDkHI$ HK~HtH='AAHMHZ]A_Ht#H=@HSIW IcLhI9kf.EEAxA}?EGApAwEEAxA}AWACBL )EH}HHUAQLUHUfoEM|AD[ A(HUHH)ERfoEHU H3H}HHE)EVLMfoEHEM%AD[ AH HEH)EQfoEHEH3HEH)EHMVLMfoEHEMAD[ AHEHH)EPfoEHEE] ESEU E_ ACAG !E] ESEU ISDBDCDCAx{IDCApsD[ ACC D[ ESDS D[ ESDS %f.@UH=W>HAVAUIATSLLwhIM9t7I\$HtkuHHPk uHIHRM9u@MehI]`I9t!H;HSH9t4~M$ M$ IM $M9t/fI>MVL9K7I M9uM$ MtL-7I$ Ht7I$ Ht 7M$ I$ I9LH)HHHMu2HHHHtvHtWHt8LkMt+Amu#M]LASAm uIELPfDHL{Mt Ao/ HLkMt Am HL{Mt Ao} HLkMt AmuM]LASAm A HL{Mt#AouILQAo  fDHLkMt Am HI9L{Mt Ao-HLkMt AmL{Mt AoWLk(Mt AmL{8Mt AoLkHMt AmL{XMt AoLkhMt Am>HpI9GI$ HtH4L5[I$IM4$3HLH[A\A]A^A_]55DI M9#LAWEF AXA^ AMLAQ~LHARD[ ACC A=H HQ/L3HAVs D~D{ LHAPMLAQEW EZE_ AILPfILRAO DqEw LI7LV>@MLAPEN EQEV AMLASILQEo AuAw AMLAPfMELAPA} WAU cMMLAQSILREo EMEO AMLARfM]LASAE HAM IuLV{fMELAPE} AA} A9IULR*MLAQEW EZE_ AILPfMULARE} E_E] ATIELPEILQAw DFEG  ILR@MELAPAm BIULR3f.I7LVEG AxA AXILRJMLAQAo mMLAR^MLAQEo EUEW AMLASfMULAR`I7LVbfILQAo I7LVDIMLQfIULRE} AA} AMMLAQIELPMELAPAm SIULRDf.IELPAM qAu MELAPfUHAWAVAUATIHX SHHHH.)L-+MfM$( M$ @IM9t7I^HtkuHHRk uH IHQM9uDM$ I$ I9t)H;HSH9({)H I9uI$ HtH])L pM$ M$ IM $M9t/fI>MVL9)I M9uM$ MtL(I$ Ht(I$ Ht(M$ I$ I9LH)HHHMe2HHHHtvHtWHt8LkMt+Amu#M]LASAm uIELPfDHL{Mt Ao HLkMt Am HL{Mt Aom HLkMt AmuM]LASAm 1 HL{Mt#AouILQAo  fDHLkMt Am HI9L{Mt AoHLkMt AmL{Mt AoGLk(Mt AmL{8Mt AoLkHMt AmL{XMt AosLkhMt Am.HpI9GI$ HtH&L5MI$IM4$H[A\A]A^A_]%fI M93LfDH I9fDHAHHHHtoHtGL{Mt:ADOEOu)MLARE_ ACAG Au ILQ@HLkMtAuDFEEHLkMtEUEZE]A+ HL{MtAWAWHL{MtAGHAOHLkMtLAWEF AXA^ AMLAQ~LHARD[ ACC A=H HQ/L3HAVs D~D{ LHAPMLAQEW EZE_ AILPfILRAO DqEw LI7LV>@MLAPEN EQEV AMLASILQEo AuAw AMLAPfMELAPA} WAU cMMLAQSILREo EMEO AMLARfM]LASAE HAM IuLV{fMELAPE} AA} A9IULR*MLAQEW EZE_ AILPfMULARE} E_E] ATIELPEILQAw DFEG  ILR@MELAPAm RIULRCf.I7LVEG AxA AXILRJMLAQAo }MLARnMLAQEo EUEW AMLASfMULAR`I7LVrfILQAo I7LVDIMLQfIULRE} AA} AMMLAQIELPMELAPAm cIULRTf.IELPAM qAu MELAPfH=Y{6@H)H8HH9t Ðff.UHAVLwAUATSL7HtdHHIIHw*HuAECHLcB"[A\A]A^]HtHxLcHILLLWH=6)=(UHAVAUIATLeSIT$H L6H^HULHt MHwyHucA6ID$@uH]LȞH5XI}HUHuHLj@H}IL9tH [A\A]A^]ÐID$Ht@Hx,H{H]HEHLH\HEmH=1,=H=$(=I鋊I靊UHSHHH{ HC0H9tH;HSH9tH[]H[]fH=y6@UHAVLwAUATSL7HtdHHIIHw*HuAECHLcB"[A\A]A^]HtHxLcHILLLGH=&'=UHAWAVIAUATISH(8u#A|$9H([A\A]A^A_]L>LnH]HCLHELt MI2IAHCMLmHB(HrH5cIt$HUHHuH}HH9QoA|$9LM>MnH]H{MH}Mt MIIu|EHCDMLmHB(HH5I|$(HUHuHLjhH}HH9H([A\A]A^A_]HCM'HCMtKDMxdI}LmHELLHlHEMx4I}LmHELLH<HE#H=%=H= )=I飇I雇f.WBHH q@HcI Ht1u'B1HLMcP McH@It1L9tIʍBHLMcC Ics@It 1H9uIȍBHL McY McQ@It 1L9uIˍBHLMcH Icp@It1H9sIɍBt}HLMcB McZ@It1L9HIȍBtRHL McQ Icq@It1H9Iʃt'HcLMcK EC@ItIc1H9IHcW$LcWDHt1I9LHHcG@H9 @!ùff./UHATSHcZLcN,HcrW4DY,H 4GIHH G(DbIcDIAA1HH1H)I1H)HHXHw/A9X(ANX(t"ADLcMILIAF[A\]@HLJ1fUHAWIH=GAVMAUI1ATIH 0GSHH~ 1 EEH=G1EL$E;uBD;GufDD;NfDHH8HH9t ff.@H H8HH9t Ðff.HHxTH9v#HH9sHx&H7H~ f.Hx HHH UH==Ht@UHAUIATISHHt HL)HHUHw?I$Hu%AUH]I$I\$H[A\A]]fHt!fH}1HMI$IL$HLHj H]I$H=A=@UHATISHL`Lht#)p)M)U)])e)m)u)}H HEH@H\$H8H(HH/VDž( HH0Dž,0eIL$HLI $HcHHeL[A\]Ðff.UHAWAVAULoATSHL/HHHID6}IHEHw0Hu"DsHCADH[A\A]A^A_]DHtH}1IHHEHCLLLHEL+H==d@IхrBP׉r8r0Br(Br BrBrBrBuDWE1D׉A1AAHHLHApA1Ðf.UHATISHH1HH==! 1H{8H=G1H{@H=G1HH=G\I$HH;JM$HC81ҾH={GIHuYHC@1H=|GIH@@־u0H1ҾIH@@H=|G1t[A\]f.[A\]fDLIOfUHATISHH1HH==!H 1H{8H=G%1H{@H=G1HH=uGI$HH;M$HC81ҾH=rzGIHuYHC@1H=zGIH@@־hu0H1ҾIH@@H=zG<1t[A\]f.[A\]fDLIOfUHAWIH=zGAVIAUATSHHH9}AIM IH@E^0MN@MV8ArA@Mn(LHAD Hh1A8 I0 L`M< 0AoH 4H=GAoX LXAoh H(Aox L8Ao )Ao Ao )Ao Eo )Eo Eo ) )0)@)P)`D)pD)MD)UI9Eo Eo E D)]D)eDM!M$hI$8I$ILH M$HHL^1ҾH=xxGFHpA$HDžpHVHxH|A$HDž|HVHE$AHtA<A0H5WGMc$LMc$PҍJMc$Ic$IMÙ1HJ41L)I1L)HHH=A9$AN$1҅¾H=sGT.H LLHHBAŅx 1A;0¾H=fwGIE$LAAKLLXD~H~L H`D~ HhL LTD@HLD)D H D~ H D))D D) foLDžAd0IIfofoLH@foI@ XL(D4` H8h0jPSAULHL4$D$NH0H=9vGH=vGL11H CwGH=pGu&1'f.IH@DH=A;|$ jEVE;T$[EvE;t$LI1IH3< @ D H1HHfD$ ( , H1HHfDUHAUATSHHH HHhH8HLH=pGCAątHD[A\A]]fDH LHǃ8 H0 HDǃD H< E;Ew A;} H=BD0 E;U ^ H=pGUDH=pGnAą'HǃH`L H=pGA$4GH H=pG,  L AoH AoX Aoh Ao x Ao Ao Ao Ao EoDD EoTD Eo|D IH EoD IH AHƃP  H=oGAąLP Eh`L@ Iy H=HP=H=CAH@ z1=//¾ H=oG/ ADHH=oG[A\A]]>fDD4 E;]8 A;EM1LIhfDEM1E"HA [DA\A]]@A @D1AUUE1HAUATSHHH0 HhH8HHu H=9oGHH$ H0 HWL HHHLhZH=XoGYAątHeD[A\A]]HǃH H0 HoD oT od o t o o o o DoDD DoTD Do|D HH DoD HH Dƃ` D H=lGAąL` Ei`toLP Iz H= M=H=^CsuwA~6HP Z1=// fDHeA [DA\A]]@1Ҿ H=RlG ADHeH=lG[A\A]]@@(UHAVAUIATLeSIT$H L6H^HULHt MHwyHucA6ID$@uH]LHfH5fI}HUHuHLjH}IL9tNH [A\A]A^]ÐID$Ht@Hx,H{H]HEHLHHEmH==SH=<gI_I_fD(UHAVAUIATLeSIT$H L6H^HULHt MHwyHucA6ID$@uH]LH fH5eجI}HUHuHLjH}IL9t.H [A\A]A^]ÐID$Ht@Hx,H{bH]HEHLHHEmH=<3H=<GI^I_HUHSHH9FtbHHH5r1]HSHHHpH9t-H HxH{L@LCH0H@@HH[]Ðo@CH==UHAWAVH0HPIAUATSHL H(HH HAH0HDž8ƅ@HPHDžXƅ`5u&H(H5A=ŷH H5A=買H]H(H5DH踫HͯBHL6H}HsH9t4LeH H5CLzHBLHHUHuLxH}LCL9tH}ML$L9tLpEL1H5dH mVLHLH5^iGLLHHUHuLH}LSL9tiH}M\$L9tVHpIEH9tAH=B<AhH5OF=HELLH5lGLLHRHUHuLrH}HH9tH}IL9tHpIL9tH HPHH9tL(H0IL9tHĸL[A\A]A^A_]@H(H5 T蕵H H5w T肵I[I[I[I \I\I!\I7\ID\IW\I[I[@UHAWAVH0IHPAUATSHHH H5THHH0HDž8ƅ@HL0 HmG1AE8ElE9u D9@sLX9Hu E9C^A9Ku E9C^A9K(uE9C,uE;K0@^A9KH@SI\SIfSHsSISISHSISISHTITI#TH0TIFTIPTH]TIsTITITHTITITHTIlSIvSI=THJTITITHFUHRHRH$RITHTIUff.UHHAWL8 AVHPAUATISH  HH?L-xiHpI$HWHEIuHDžxHHUHUHEHH H ,HLBMtYMHLMtMMQLMtAMZLMt5MsLMt)INLHtHYHHtH{HHtHHUHHwHt`LFHMtTMHLMtHMQLMtH=L}>1}HEHtLH{fDHH@HtD;h |H@HuHsH9tH9}RLh(H{Lh(E1MAH=c>D<ցH=ZGuMDH=0>UM$P IUIuI}I5HL1H=ZGLmMIuHMuL[MIvHMnL:MIuHMuLMIvHtMnLMt{IuHWMuLMt^IvH:MnLMtAIuHMuLMt$IvHMnLMf.H=YGNHHuAHHPHH9tHD[A\A]A^A_]f.AE1DLo(MZLMMsLMINLHHHL#H=BA$` M$P H5NIhA$` VII$@ fM$8 HDž@)0IHM)MI`IM9L%I$@ HM$8 HHHHI~L@fl)0I9 L)MHH HHHtQHt)LIELIEI6IVHI] Mn HsHH3IuIUHH I LCHLIuIUHH I L9LKHL IuIUHLs M} MVLLMIu IWHyM^0I^ M^ Iw HIW(HZINPI^@IN@Iw@HIWHH;I^`Mo`L9nH8I$P H0A$a HA$b &H=]VGHA$` wI$P H=#YGQH]EHsHEHuHuHE@HDžfDH"H߉IKIKI LLIKfDUHHAWL( AVHPAUATISH  HHL-`HpI$HWHEIuHDžxHHUHUHEHH H #HLBMtYMHLMtMMQLMtAMZLMt5MsLMt)INLHtHYHHtH{HHtHHUHHwHt`LFHMtTMHLMtHMQLMtH=s>1E}HEHtLH{fDHH@HtD;h |H@HuHsH9tH9}RELh(H{/Lh(E1MAH=>D]<ցH=*QGuuMDH=>-UM$@ IUIuI}IHL61H=+QGHuAH߉qEH=QGHHuA;HHPHH9tHD[A\A]A^A_]f.AE1DLo(MZLMMsLMINLHHHLH= BA$P I$@ H5GFHh苁A$P VII$0 fM$( HDž@)0IHM)MI`IM9LM$0 HM$( LHHHI~L@fl)0I9 L)MHH HHHtQHt)LIULIUI6IVHI] Mn HCHHIuIUHH I HsHH3IuIUH]H I L9LCHLIuIUH.Ls M} MNLLMIu IWH MV0I^ MV Iw HIW(HM^PI^@M^@Iw@HIWHHI^`Mo`L9nH8I$@ H0A$Q HA$R 趓H=MGHHA$P wI$@ 誌H=PGLQH]EHsHEHuHuHE@HDžfDH"H߉LDI'DI*DIVDI*DfDUHAWIAVAUIATISHH`1Ƀw H_PGH A$XwH=GPGLL9IBE1E1LHLH LLHH V1Dƃ E?L50;fE11HH  IHǃ fD ǃ L3Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( Hǃ0 Hǃ8 Hǃ@ HL A}`ff҃Hǃ8 ( @ ƃQ R HX H[A\A]A^A_]fDH LD 2H=k<H=.=v|HoBIwBf.UHAWIAVAUIATISHH`1Ƀw HNGH A$XwH=NGLL9IBE1E1LHLH LLHH /Dƃ EoHL Af1HL59E1fvA) A IHǃ L3fD ǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ Hǃ( 0 ǃ@ HǃD Hǃ HL0 Hǃ Hǃ Hǃ( A}`|ffۃHǃH 8 P ƃa b Hh H[A\A]A^A_]DDH LD H=<H=+=LH@I'@f.1f.HLJ1f1f.UfHATSHH0L )EL HEMM)LH1HH9LL L HE~MILefl)MM9GLLHL)HHHH= HHHHtoHtIHt!I1H0MAL@MtA@HpIILLLaLfMtAD$HHHHHyH~HtGHHLLLYL^MtACHHL!L&HQHVHtBHHH9H>LALFMtA@HHLLLaLfMtAD$HHI9HHHyH~HtGLYHILFHNIsIpHtFMcM`ISIPHtBI{ Ix IK(IH(HtAIs0Ip0Mc8M`8MtAD$IS@IP@I{HIxHHtGIKPIHPIsXIpXHtFMc`M``IShIPhHtBIKpIppI9IM)IJDHH+MHHEP H=UHGH9AA}u+P HH `f@ Htۓ1H=:HGmH}ЉrH0[A\]HHHHtmHtGHt MLMYLXMtACHpIIH9H>LaLfMtAD$HHHHLALFMtA@HHLLHyH~HtGHHL!L&HQHVHtBHHLLLYL^MtACHHH9H>LaLfMtAD$HHI9?HHLALFMtA@HyHIL^HNHwIsHtFLgMcHWISHtBLG MC HO(IK(HtAHw0Is0Lg8Mc8MtAD$HW@IS@LGHMCHMtA@HOPIKPHwXIsXHtFLg`Mc`HWhIShHtBHOpIspI9WfD1fLMML@ MaI9MtH=t6AD$HH HtNLH 1g1fAD$HH LIH}LUfHATSHH0L )EL HEMM)LH1HH9LL L HE~MILefl)MM9GLLHL)HHHH= HHHHtoHtIHt!I1H0MAL@MtA@HpIILLLaLfMtAD$HHHHHyH~HtGHHLLLYL^MtACHHL!L&HQHVHtBHHH9H>LALFMtA@HHLLLaLfMtAD$HHI9HHHyH~HtGLYHILFHNIsIpHtFMcM`ISIPHtBI{ Ix IK(IH(HtAIs0Ip0Mc8M`8MtAD$IS@IP@I{HIxHHtGIKPIHPIsXIpXHtFMc`M``IShIPhHtBIKpIppI9IM)IJDHH+MHHE` H=EBGH9AAmu+` HX `fP Htˍ1H=*BG]H}ЉbH0[A\]HHHHtmHtGHt MLMYLXMtACHpIIH9H>LaLfMtAD$HHHHLALFMtA@HHLLHyH~HtGHHL!L&HQHVHtBHHLLLYL^MtACHHH9H>LaLfMtAD$HHI9?HHLALFMtA@HyHIL^HNHwIsHtFLgMcHWISHtBLG MC HO(IK(HtAHw0Is0Lg8Mc8MtAD$HW@IS@LGHMCHMtA@HOPIKPHwXIsXHtFLg`Mc`HWhIShHtBHOpIspI9WfD1fLMMLP MaI9MtH=t6AD$HX Ht>LX 1g1fAD$HX HsLLkH袻Mt!IuLI]L腻HH[A\A]]Ðf.DUHAWIAVIAUATSHA*~`gfffLeL-ɹ1H]H [=VL)LAк蜯LH5=HjHLoH}HsH9tͺH}MD$L9t躺A*t71A~d* H=BeEvdA9/H5r>HݯHLBoH}LcL9tPH5r=H豯HLoH}LSL9t$H5I=H腯HLnH}L[L9tH5;=HYHLnH}HKH9t̹1A*Hĸ[A\A]A^A_]D蓹AxuAN`gfffAA)LeH]1L-LH ;VLLH52=HƏHLnWfDH5H=H葮HLmH}HH9t1>DDQEEAgfffLLD$D)DkdE)DAH :V1D)Aк@DMbD$H0L1H :VH(ID)AкLPLH5N=LƎLpH=LL|LLH迍HLlH}LKL9tHpIL9tHPIL9tطL(H0IL9t輷H}IL9/覷% I]IrH}HH9tzHpIL9teHPIL9tPH(H0HH9t4H}IL9t"L*H}HH9tH}IL9tLIIH}HH9tζLֿI.I8IEIR f.UHAWIAVIAUATSHA*~`gfffLeL-1H]H 8VL)LAк̪LH5=H蚌HLjH}HsH9tH}MD$L9tA*t71A~d* H=0{B蕳EvdA9/H5Om>H HLrjH}LcL9t耵H5=HHLFjH}LSL9tTH5y=H赪HLjH}L[L9t(H5k=H艪HLiH}HKH9t1A*Hĸ[A\A]A^A_]DôAxuAN`gfffAA)LeH]1L-BLH 6VL(LH5b=HHLKiWfDH5x=HHL&iH}HH9t41>DDQEEAgfffLLD$D)DkdE)DAH ,6V1D)AкpDMbD$H0L1H 5VH(ID)Aк/LPLH5~=LLpH=LLMwLLHHL$hH}LKL9t2HpIL9tHPIL9tL(H0IL9tH}IL9/ֲ% I]IrH}HH9t課HpIL9t蕲HPIL9t耲H(H0HH9tdH}IL9tRLZH}HH9t8H}IL9t&L.IIH}HH9tLI.I8IEIR f.UHAWIAVI0AUATISHHHMS IHsHC(AU IE(AMIEIEMeHtLLLIELcMtjM0蘱At$ I|$(HÉp Hx(E$H@DH@IGLxIt$HtHMHL,HCMd$IMuHL[A\A]A^A_]H衪LL&ѵIyL豹UH HHAVAUATISHX HHt(L-1MKDM$@ I$8 I9t)H;LSL9 #H I9uI$8 HtHLM$ M$ IM$M9t'I>IFH9˯I M9uM$ MtL譯I$ Ht蛯I$ Ht良M$ I$ I9LH)HHHH=`-HHHHtqHtRHt3LsMt&AnuILQAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILQAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtHLL-=[I$IM,$A\A]A^]HI M93LfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILRAN qAv uMLAPHLsMtENEQEVA=HLsMtANqAvHLsMtA~GAFcHLsMtENEQEVAHLsMt3ANqAvu#MLAPEN EQEV AHLsMt3A~GAFu#ILRAN qAv fDHI9LsMtENEQEVA|HLsMtANqAvKLsMtA~GAFLs(MtENEQEVALs8MtANqAvbLsHMtA~GAF5LsXMtENEQEVALshMtANqAvHpI9KQSH3HVMADC AL HAQMLARAn (MLASMLAPAn MLAQILQAn I6LVDILPAn nILR`DMLARAn MLASMLAPAn MLAQILQAn cI6LVUDILPAn &ILRDMLASA~ GAF fILRX@MLAPEN EQEV AMLASMLAPEN EQEV A~MLASoMLASA~ GAF 3ILR%@ILRAN qAv MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILR@ILRAN qAv MLAP@MLARAn MLASDC Ax{ MLASA~ GAF ILR@ILPAn ILRDILRAN qAv MLAPq@MLAPfMLAQMLAPAn kMLAQ\MLASqfMLASA~ GAF ILR@I6LVbfMLARAn MLASMLAPEN EQEV A\MLASMfUHHHAVAUATISHH HHt(L-MKDM$0 I$( I9t)H;LSL9 H I9uI$( HtHդLM$ M$ IM$M9t'I>IFH9蛤I M9uM$ MtL}I$ HtkI$ HtYM$ I$ I9LH)HHHH=`-HHHHtqHtRHt3LsMt&AnuILQAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILQAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtHL- [I$IM,$A\A]A^]I M93LfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILRAN qAv uMLAPHLsMtENEQEVA=HLsMtANqAvHLsMtA~GAFcHLsMtENEQEVAHLsMt3ANqAvu#MLAPEN EQEV AHLsMt3A~GAFu#ILRAN qAv fDHI9LsMtENEQEVA|HLsMtANqAvKLsMtA~GAFLs(MtENEQEVALs8MtANqAvbLsHMtA~GAF5LsXMtENEQEVALshMtANqAvHpI9KQSH3HVMADC AL HAQMLARAn (MLASMLAPAn MLAQILQAn I6LVDILPAn nILR`DMLARAn MLASMLAPAn MLAQILQAn cI6LVUDILPAn &ILRDMLASA~ GAF fILRX@MLAPEN EQEV AMLASMLAPEN EQEV A~MLASoMLASA~ GAF 3ILR%@ILRAN qAv MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILR@ILRAN qAv MLAP@MLARAn MLASDC Ax{ MLASA~ GAF ILR@ILPAn ILRDILRAN qAv MLAPq@MLAPfMLAQMLAPAn kMLAQ\MLASqfMLASA~ GAF ILR@I6LVbfMLARAn MLASMLAPEN EQEV A\MLASMfUHHHAVAUATISHH HHt(L-ћM KDM$0 I$( I9t)H;LSL9(ÙH I9uI$( HtH襙LVM$ M$ IM$M9t'I>IFH9kI M9uM$ MtLMI$ Ht;I$ Ht)M$ I$ I9LH)HHHH=h-HHHHtqHtRHt3LsMt&AnuILQAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILQAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt AnHLsMt AnDLsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnSLshMt AnHpI9GI$ HtHL-ݽI$IM,$[L` A\A]A^][I M9+DfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILRAN qAv uMLAPHLsMtENEQEVAEHLsMtANqAvHLsMtA~GAFkHLsMtENEQEVAHLsMt3ANqAvu#MLAPEN EQEV AHLsMt3A~GAFu#ILRAN qAv fDHI9LsMtENEQEVA|HLsMtANqAvSLsMtA~GAFLs(MtENEQEVALs8MtANqAvjLsHMtA~GAF=LsXMtENEQEVALshMtANqAvHpI9KQSH3HVMADC AL HAQMLARAn  MLASMLAPAn MLAQILQAn I6LVDILPAn fILRXDMLARAn MLASMLAPAn MLAQILQAn [I6LVMDILPAn ILRDMLASA~ GAF fILRX@MLAPEN EQEV AMLASfMLAPEN EQEV AvMLASgMLASA~ GAF +ILR@ILRAN qAv MLAP@MLAPEN EQEV AMLAS~MLASA~ GAF ILR@ILRAN qAv MLAP@MLARAn MLASDC Ax{ MLASA~ GAF ILR@ILPAn ILRDILRAN qAv xMLAPi@MLAPfMLAQMLAPAn [MLAQLMLASifMLASA~ GAF ILR@I6LVRfMLARAn MLASMLAPEN EQEV ATMLASEfUH`HHAVAUATISHX HHt(L-M KDM$@ I$8 I9t)H;LSL9(胎H I9uI$8 HtHeLM$ M$ IM$M9t'I>IFH9+I M9uM$ MtL I$ HtI$ HtM$ I$ I9LH)HHHH=vh-HHHHtqHtRHt3LsMt&AnuILQAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILQAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt AnHLsMt AnDLsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnSLshMt AnHpI9GI$ HtH謋L-I$IM,$谊[Lp A\A]A^]I M9+DfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILRAN qAv uMLAPHLsMtENEQEVAEHLsMtANqAvHLsMtA~GAFkHLsMtENEQEVAHLsMt3ANqAvu#MLAPEN EQEV AHLsMt3A~GAFu#ILRAN qAv fDHI9LsMtENEQEVA|HLsMtANqAvSLsMtA~GAFLs(MtENEQEVALs8MtANqAvjLsHMtA~GAF=LsXMtENEQEVALshMtANqAvHpI9KQSH3HVMADC AL HAQMLARAn  MLASMLAPAn MLAQILQAn I6LVDILPAn fILRXDMLARAn MLASMLAPAn MLAQILQAn [I6LVMDILPAn ILRDMLASA~ GAF fILRX@MLAPEN EQEV AMLASfMLAPEN EQEV AvMLASgMLASA~ GAF +ILR@ILRAN qAv MLAP@MLAPEN EQEV AMLAS~MLASA~ GAF ILR@ILRAN qAv MLAP@MLARAn MLASDC Ax{ MLASA~ GAF ILR@ILPAn ILRDILRAN qAv xMLAPi@MLAPfMLAQMLAPAn [MLAQLMLASifMLASA~ GAF ILR@I6LVRfMLARAn MLASMLAPEN EQEV ATMLASEfHHxTH9v#HH9sHx&H7H~f.HxHHHăUH=5<H~@UHAUIATISHHt HL)HHUHw?I$Hu%AUH]I$I\$H[A\A]]fHt!fH}1HMI$IL$HLH誁H]I$H=<$@UHHHATISHL`Lht#)p)M)U)])e)m)u)}HFHMDž( HH@H0H(H)H8Dž,0H\$HH~IT$HLI$HcHHeL[A\]ff.UHAUIATISHHt HL)HHUHw?I$Hu%AUH]I$I\$H[A\A]]fHt!fH}1HMI$IL$HLH*H]I$H=<~@UHSHHHPH=ƂtK tH[]fDK QS uH3HLFH[]AHUHSHH9FtbHHH5\?HSHHHpH9t-H HxH{L@LCH0H@@HH[]Ðo@CH=g={UHAWIAVAUATISHH8`HU1Ƀw H^GH ‹XwH=HGLL9IBE1E1LLuLmL~H ȧLIDŽ$ADŽ$ LHE I $DPD9MLLE cD]D9X2LLE @U9`)E1pDH{EAuL5G|LL IHD`1AsDXABE1E1LL}HHuIH}HIUAAƅ 2L 31fIDž fA IADž MMIDž IDž IDž IDž IDž IDž IDž IDž IDž IDž( IDž0 IDž8 IDž@ IX A A`x}ffIDžp A` Ax Aƅ A M I$M$HE1H{`uH{h~ H{@ u EL5Fzp LIHHUHLH{I$M$HHSpM$IEAE$H8[A\A]A^A_]DTD9UI$`pAADŽ$ H8[A\A]A^A_]@E9\u9dI$AIDŽ$H2ADŽ$ H8[A\A]A^A_]D 覆IHtHUHLH蜦H GJH0H=)FhH=FhLkHe؉[A\A]A^A_]IV HuffMLDMVxLjIFHILEkLMtf.UHAVIAUATIH=yFSHHH9hGI$X K0LPHP HpHLHhLXxHL IPHK(LC8HC@LPDHXAALAH84~A$< 4H`D<@DDHLPL`DLL(LXD~(HDL(L8H4HLHLALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHE H=F HH9AA;`>H=FR_H}AVAHHD[A\A]A^A_]@HHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9ZL1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9rf.E1E1fMIB+ J3 uLB3x Ht)UE.foUIu 1uA1fED$ILeM $N3x M|$McI9tMtH==atKAGJ3 Ht)UDE-foUDEN3 Mcbf1fAGJ3 XIH} >LhUfHATSHH0L )EL HEMM)LH1HH9L_L L HE~MILefl)MM9GLLHL)HHHH=` HHHHtoHtIHt!I1H0MAL@MtA@HpIILLLaLfMtAD$HHHHHyH~HtGHHLLLYL^MtACHHL!L&HQHVHtBHHH9H>LALFMtA@HHLLLaLfMtAD$HHI9HHHyH~HtGLYHILFHNIsIpHtFMcM`ISIPHtBI{ Ix IK(IH(HtAIs0Ip0Mc8M`8MtAD$IS@IP@I{HIxHHtGIKPIHPIsXIpXHtFMc`M``IShIPhHtBIKpIppI9IM)IJDHH+MHHE H=FH9AAYu+ H `fx Ht+*1H=FXH}Љ:H0[A\]HHHHtmHtGHt MLMYLXMtACHpIIH9H>LaLfMtAD$HHHHLALFMtA@HHLLHyH~HtGHHL!L&HQHVHtBHHLLLYL^MtACHHH9H>LaLfMtAD$HHI9?HHLALFMtA@HyHIL^HNHwIsHtFLgMcHWISHtBLG MC HO(IK(HtAHw0Is0Lg8Mc8MtAD$HW@IS@LGHMCHMtA@HOPIKPHwXIsXHtFLg`Mc`HWhIShHtBHOpIspI9WfD1fLMMLx MaI9MtH=[t6AD$H Ht'L 1g1fAD$H RIH}8LbUHAUATSHHHHHH Ht!'Lh L` M9t-fDI<$IT$H9XI M9uL` MtLtXH %L L HH M9t&I<$It$H9tz=XI M9uL MtL XH HtXH HtWH 7H=~HH;HH[A\A]]VfDI M9kfI M9f.@UHAWLh AVAUL ATSHHHHHMeMt'L5YM?AL$@fIM9uLh L` M9t)@I?MWL9VI M9uL` MtLVLL L ILM9t(DI<$ID$H9tzVI M9uL MtLVH HtwVH HtfVH j5H K}HHH H[A\A]A^A_]RUfI M9k념I M9fDAL$QAT$I4$LVMt+A|$ M $LAQfDA|$ DGED$ UHAUATSHHHaHHH Ht#Lh L` M9t-fDI<$IT$H9AUI M9uL` MtL$UH ՛L L HH M9t*I<$It$H9TI M9uL MtLTH HtTH HtTH 3H={HH;HSHH߾ [A\A]] UDI M9[vfDI M9f.@UHAULh ATL SHHHHHI|$Ht*H=U\Ou IM9uLh L` M9t+@I<$It$H9SI M9uL` MtL|SH=-L L HH;M9t*I<$MD$L9ASI M9uL MtL$SH HtSH HtSH 2L yHIL QHH߾ [A\A]]eSDI M9[vfDI M9fDOQWfUHAVAUATSLX HMl$L.ǃL ID$hH=~1[A\A]A^]@H=H5FLDP I$8A$ AA|$hA9y(~MT$L5NFIADT M$ DE$8EGE\$hADH E;Y(|8Et.I$ A$8DED$hADH E9A(HT LH0 ǃ8 MLcT ID$OcHMt$ǃD IINMIIH< ω@ ALMA9}E9EAuD0 E;E qD4 E;e`8 A;]PMĸLI81LttǃL  DLttLcT ID$Md$ǃD Kc4HML$HMMIIDD< A@ Lt<ǃL DLXuL ppLYǃL =1fUHAUATISHHX H{ H=FM1҃{ H=/FLg1HC(H9C H=FLA1H{  H= FL1H@ H=FLH81Ҿ H={FHH[L1H( H=F5LH 1H=eFHH LxI$X H H=XFKE1҃tH{`H{X1H{hH{0H¾ H=BFKM$X I H=MFbKM$X H=FA9KM$X H=FA4KM$X H=FA,JW1LL9 H=FJ+HKh1Ҿ H=BFHH?HHH9JL% H='F^JÄAƄ$ L~4H=WF`II$A$ Dn`tOI$x Hz 0EH=<"IH=ACIu=A~I$x M=//Ӿ H=FI<% H=rFX[A\A]]HfD H[A\A]]UHAUATISHHX LkLMUADŽ$4 HS.AADŽ$0 I$LLCHH{hChDL:DE$8 D9I(ECAL-`FLIcHSHLKhAtBI$X H=F_>gL H=F8>@M$X H=FA4>M$X H=FA,=A$< E$L 1E$P E$T fA$ M$@M$LM$AƄ4 A$ A$ H'H=FILu~MLHMfl HYIt$M$$HuL9I~I>M<$I\$MIt MHEI ML) HIEHAIEI]I] IL9e`IMI H It$M|$HHuLtHtWIHIML{Lk B8HC0HC M<$I\$I MIQMHH=J<$:@HIHEDIMn MV0I^MUfHDHH{MfL9t,;I HBLMI9Ht ;HDDUHAWIAVIAUATSHA*~`gfffLeL-i91H]H UL)LAкLH5_<H HL_H}HsH9tm:H}MD$L9tZ:A*t71A~d* H=A8mEvdA9/H==LcLeH5=HH0%HLH}LSL9t9H{H}H=<费H5<HH0HLH}L[L9t9HKH=<HMpH5<HH0蝷HLBH}HsH9tP9HCH=<HE,H5<HH0YHLH}HSH9t 91A*Hĸ[A\A]A^A_]D8AxuAN`gfffAA)LeH]1L-R7LH ULLH5r<HHL[fDLCH=<LELH5t<HH0yHLH}HH9t,81&DDQEEAgfffLLD$D)DkdE)DAH $U1D)Aк(DMbD$H0L1H UH(ID)AкLPLH5v<L LpHÕ<LLELLH HLH}LKL9t*7HpIL9t7HPIL9t7L(H0IL9t6H}IL96f I]IrH}HH9t6HpIL9t6HPIL9tp6H(H0HH9tT6H}IL9tB6LJ?H}HH9t(6H}IL9t6L?IIH}HH9t5L>I.I8IEIR f.UHAWIAVIAUATSHA;~`gfffLeL-41H]H UL)LAк謲LH5<H HLH}HsH9t5H}MD$L9t 5A;t71A~d* H=PA2mEvdA9/H=o=LcLe訴H5[=HH0ղHLzH}LSL9t4H{H}H=<dH5<HH0葲HL6H}L[L9tD4HKH=e<HM H5U<HH0MHLH}HsH9t4HCH=?<HEܳH5/<HH0 HLH}HSH9t31A;Hĸ[A\A]A^A_]D3AxuAN`gfffAA)LeH]1L-2LH UL訰LH5"<H HL fDLCH=4<LEH5$<HH0)HLH}HH9t21&DDQEEAgfffLLD$D)DkdE)DAH ԴU1D)AкدDMbD$H0L1H UH(ID)Aк藯LPLH5&<LLpHs<LLLLHHLH}LKL9t1HpIL9t1HPIL9t1L(H0IL9t1H}IL9~1f I]IrH}HH9tJ1HpIL9t51HPIL9t 1H(H0HH9t1H}IL9t0L9H}HH9t0H}IL9t0L9IIH}HH9t0L9I.I8IEIR f.UHAWIAVIHHAUH0ATSHPH(HX L HHHHL L8HHDHHHHDžƅHHDžƅ H0HDž8ƅ@HPHDžXƅ`LLD uLHH5bCsHH5KF`HH5BeSMHH5F:LmHH59$DL@HUALLH}M]L9t.H]HH5ݺFHHAHLHUHuLH}MeL9tn.H}HCH9t\.HH5CHHAHL$HUHuLH}IUH9t.H}HKH9t.HH55FHJH_AHLHUHuLHH}MEL9t-H}LKL9t-LpH5>,1AH ίULHӪLH5FHHL薬HUHuLH}MUL9t4-H}L[L9t"-HpID$H9t -IcP HvFH >U1HDL=LH5FHKHLHUHuL0H}IMH9t,H}LCL9t,HpML$L9tv,IcT L1LλFH UEH觩LH5%FHHLjHUHuLH}M]L9t,H}HCH9t+HpIT$H9t+L L1HH _=LH5 FH*HLߪHUHuLH}IMH9t}+H}LCL9tk+HpML$L9tU+L L1HH =葨LH57FHHLTHUHuLH}IuH9t*H}LSL9t*HpM\$L9t*AL1HH ULH5ͷFHHLʩHUHuLH}IEH9th*H}HSH9tV*HpIL$H9t@*A@L1HH iU}LH5kFHHL@HUHuLpH}MEL9t)H}LKL9t)HpIt$H9t)I|$HpH=<<莩H5<<LH軧LH5FHHL讨HUHuLH}MUL9tL)H}L[L9t:)HpID$H9t$)H5:<H<<LHEӵLH5yFHqHL&HUHuLVH}IMH9t(H}LCL9t(HpML$L9t(MX AfAfA.AEDEH5{<LHU;<HELH5FHHLgHUHuLH}IL9t(H}HH9t'HpIL9t'LHPIL9t'HH0HH9t'LHIL9t'HHHH9tn'H(L[A\A]A^A_]fNHH5QuHH5@FbHH5QOHH5F<IA~fA.A@DDXfHH5\SHH5\SHH5\SHH5\SeHH5QHH5PFr H.IIH}IL9t&H}HH9LHpIL9t%I>IL9t%LHPIL9t%HH0HH9t%LHIL9t%LHIL9td%Hl.*/%C%A HHSH}IL9==IIH}IL9t$H}HH9t$LHx}sindZ_UKPFIL9tLHPIL9tL H0IL9tH&H}IL9tH}HH9tLHpIL9tgjI(+II  HHH}IL9fDUHHAWL` AVHPAUATSHH  HH/HL%HpHWHEHIt$DžxHHUHUHEHH H ejHLJMtYMQLMtMMZLMtAMkLMt5MuLMt)INLHtHqHHtH~HHtHHUHLGMt`MHLMtTMQLMtHMZLMtHx bH=kF fMFI|$=IMf1M&II$M|$HLHI$f.LEDI$|fLeEMD$HELELEHE EHDHf.MxzI|$qLIMaLLHLINfDHDžfDL牅" H=s%<LH=_!< II(JIIVHuLVHuHVLHPIL9t/L7H L9u1L!LI9IL9tH IH0HrhUH` HHAWAVLPLpAUATSHH  LHLHL%IVDžxHIt$HEHUHUHEHH LL B`HLJMt^MQLMtRMZLMtFMkLMt:M}LMt.IOLHt"LAHMtIpLHt HDHUHH~Ht`LOHMtTMQLMtHMZLMtw=DFEt4DNEt+;F w$Y;^wI;NwHHH=1[]‰< EZ,E^EAEAD@ AB AB$AD ~(IH (f.EKAAPvf.X \ ` H1HHfDUHAUATSHHH8 u94u0,u'HhHH8H8о H=FQAH8 HH8HHhL1Ҿ H=F=H8 HHHL LX H H=FHǃHH8 E1od ot o o  o o o o DoDD DoTD Do|D HH DoD HH, DHfDx D4 D0 BƄx x y HH=lFAą`Lx Ek`u^y 1Ҿ H=lF. ADHH=lF[A\A]]=DA HD[A\A]]@HX Hx H=L<H=Bumy t5Hh Hz H=hL<H=Bu4A4HHHX 1=//)ff.UHAUIATISH(8uA|$9uH([A\A]]@H6IUH]HCHHHE"HhH5hH茭IT$HuHHUsH}HH9tA|$9tfIuIUH]HKHHHMH2hH5#hHI|$(HUHuHLjH}HH9"lH([A\A]]I!fI3fUHAWAVHIHAUHHPATSH0HHL8 HHHAHHHHHHHHHHDžƅHHDžƅHHDžƅ H0HDž8ƅ@HPHDžXƅ`tP HH5JB[HH57BHHH5$B5<HH5#SHH5"S HH5"SHH5"SHH5"SѷLeHH5ۿBL׫HALLUH}ML$L9tRH]HH5rBH蘫HAHLHUHuL薪H}MT$L9tH}L[L9tHH5s{FH;HPAHL蹯HUHuL9H}Ml$L9tH}HCH9tHH5'{FHުHAHL\HUHuLܩH}IT$H9tIH}HKH9t7HH5zFH聪HAHLHUHuLH}It$H9tH}LCL9tLpH5t1ELH mULHXLH5~FHH|.\HLtHUHuLH}ML$L9taH}LSL9tOHpM]L9t:EL1HH blULH5t~FHH-\HLHUHuLbH}ID$H9tH}HSH9tHpIMH9tAL1HH kU5LH5 ~FHHY-\HLQHUHuLѧH}MD$L9t>H}HsH9t,HpMML9tAL1HH @kULH5}FHbH,\HLHUHuL@H}MT$L9tH}L[L9tHpIEH9tH=;AhH5C<HELdLH57jFHҾH8,\HL0HUHuL谦H}M|$L9tH}HSH9t HpIMH9tLA0 H5;LLH5|FH@H+\HL螫HUHuLH}IL$H9tH}LCL9tyHpIuH9tdAL1HH iULH5W|FH诽H+\HL HUHuL荥H}IL9tH}HH9tHpIL9tLHPIL9tHH0HH9tLHIL9tLHIL9tdLHIL9tHHHL[A\A]A^A_]E4 L1HH XhULH5Z{FHzH)\HLةHUHuLXH}It$H9tH}LKL9tHpMUL9tLL1HH gUE8 #LH5zFHHG)\HL?HUHuL迣H}ID$H9t,H}L{L9tHpIUH9tAL1HH .gULH5zFHPH(\HL讨HUHuL.fElAEHH5pfF賯HH5]fF蠯HH5JfF药HH5O9<mHH5<9<ZHH5)9<GHH59<4HH59<!K@HH5eFHH5eFHH5eF߮HH5eF̮I{[H{\I\ID\H\IF\Iq\H\I\I\H]I\I\H/]I]I\H\]Ir]I]I]H^I~]I]I]I]HZI^I]I,]HZIZHZH]I\I]H^IA^I\HF^I]I^ff.UH@ HHAWAVLPAUATSHH  LHLHL%*lHpHWHEHIt$DžxHHUHUHEHHH/HLRMtbMZLMtVMkLMtJMuLMt>M~LMt2IOLHt&LAHMtIpLHtHfHUIIxHt`LOIMtTMQMMtHMZMMtLALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHEx H=QFy HH9AAH=QFLeH]AI9LH)HHHH=.3HHHHtwHtXHt9LsMt,Anu$ILQAn uI6LVf.HL{Mt Ao HLsMt Anf HL{Mt Ao5 HLsMt AnuILQAn  HL{Mt#AouILRAo N fDHLsMt An_ HI9L{Mt AoHLsMt AnLL{Mt AoLs(Mt AnL{8Mt AoLsHMt AnXL{XMt AoLshMt AnHpI9GH]HtHHHD[A\A]A^A_]fDHHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9*L1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9Bf.HAHHHHtpHtGL{Mt:ADOEOu)MLAPAO qAw uILRfDHLsMtE^ACAFAHLsMtEFAHANA:HL{MtEWAzAAHL{MtAwD^E_HLsMt8A~DGEFu'ILQE~ AwAv A HLsMt3AFPAVu#MLAREN AyA~ AHL9*L{MtAOqAwvHL{MtEWEJEOA#LsMtE^ACAFALs(MtEFAxA~AL{8MtEWARAWA6L{HMtAwAwLsXMtENEAEFALshMtE^ACAFACHpL9 fE1E1fMIB+x J3` uLB3X Ht)U%foUIu 1A1fED$ILeM $N3X M|$McI9tMtH=gAGJ3` Ht)UDE藕foUDEN3` Mc^fDILPAn  MLAR@ILRAo MLAS@ILQAn I6LVDMLAQAo UMLAPFILPAn MLAR @ILRAo MLAS@ILQAn I6LVDMLAQAo ]MLAPNMLAREN AQAV AMLAPfILQE~ AA~ AGI6LV9MLASAG DPEW ILRMLAQEw EFEG AILQfILQAv D^E^ ]ILPO@ILRE~ EWEV A MLAQfMLAPA OAO I7LV@MLASEw AFAG AjILR\fILPAn MLAR}@1ILRAG DPEW ]MLAQNMLAQAo MLAPMLAQEw EFEG AILQf.MLAPaMLASILRAo MLAS@MLASfMLARE~ AA~ AMLAQI6LVfAGJ3` fDILPAn MLARv@I6LVE^ ASAV AILPIH}股Lzf.UHAWIAVIAUATSHA;~`gfffLeL-1H]H [DUL)LAк謿LH5<HjHLvH}HsH9tH}MD$L9tA;t71A~d* H=AemEvdA9/H5y=HmHLBvH}LcL9tPH5r<HAHLvH}LkL9t$H5I<HHLuH}L[L9tH5;<HHLuH}HCH9t1A;Hĸ[A\A]A^A_]DAxuAN`gfffAA)LeH]1L-LH BULLH52<HƖHLuWfDH5H<H!HLtH}HH9t1>DQDEEAgfffLLD$D)DkdE)DAH AU1D)AкPMbDD$H0L1H AUH(ID)AкLPLH5N<LƕLpH<LLLxHUI}HpM H9"LUHuM9vM\$L9HEI9LZ}HKHPHMH0H9HuL@LELHHLLMHH@@tsH}LSL9t肾HpIL9tmHPIL9tXL(H0IL9t@IM9uM$H M$@ M9t(fI?MWL98I M9uM$@ MtLͰL~M$ I$ IM$I9t/fH;HCH9苰H I9uI$ HtHmI$ Ht[I$ HtIM$ I$ I9LH)HHHH=ֱp-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt An%HL{Mt Ao$LsMt AnL{(Mt AoLs8Mt AnmL{HMt Ao0LsXMt AnL{hMt AoHpI9GI$ HtH L-I$IM,$HL羈 [A\A]A^A_]uDH I9#LALFMtA@HHLLLaLfMtAD$HHI9HHHyH~HtGLYHILFHNIsIpHtFMcM`ISIPHtBI{ Ix IK(IH(HtAIs0Ip0Mc8M`8MtAD$IS@IP@I{HIxHHtGIKPIHPIsXIpXHtFMc`M``IShIPhHtBIKpIppI9IM)IJDHH+MHHE H= FH9AAu+ H `fx Ht[W1H= FH}ЉgH0[A\]HHHHtmHtGHt MLMYLXMtACHpIIH9H>LaLfMtAD$HHHHLALFMtA@HHLLHyH~HtGHHL!L&HQHVHtBHHLLLYL^MtACHHH9H>LaLfMtAD$HHI9?HHLALFMtA@HyHIL^HNHwIsHtFLgMcHWISHtBLG MC HO(IK(HtAHw0Is0Lg8Mc8MtAD$HW@IS@LGHMCHMtA@HOPIKPHwXIsXHtFLg`Mc`HWhIShHtBHOpIspI9WfD1fLMMLx MaI9MtH=Ht6AD$H HtTL 1g1fAD$H IH}@eL8UfHAWAVAUATSHHHL )EL HEMM)LH{HH9L L L HE~MILefl)MM9LLHL)HHHH=1HHHHtoHtHHt!I1H0MAL@MtA@HpIILLLiLnMtAEHHL1L6LyL~MtAGHHL!L&HQHVHtBHHH9H>LALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHE H=F HH9AAۀ>H=FH}AaHHD[A\A]A^A_]@HHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9ZL1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9rf.E1E1fMIB+ J3 uLB3x Ht)UNfoUIu 1uA1fED$ILeM $N3x M|$McI9tMtH=݁tKAGJ3 Ht)UDE[NfoUDEN3 Mcbf1fAGJ3 LyIH}^L踈UHAUATSHHH HHH HtMLh L` M9t-fDI<$IT$H9AI M9uL` MtL$H L L HH M9t&I<$It$H9tz~I M9uL MtL~H Ht~H Ht~H ]H=HH;HH[A\A]]}fDI M9kfI M9f.@UHAWLh AVAUL ATSHHHwHHMeMt'L5M?AL$@fIM9uLh L` M9t)@I?MWL9}I M9uL` MtL}L?L L ILM9t(DI<$ID$H9tzU}I M9uL MtL8}H Ht'}H Ht}H \H HHH H[A\A]A^A_]|fI M9k념I M9fDAL$QAT$I4$LVMt+A|$ M $LAQfDA|$ DGED$ UHAUATSHHHHHH HtJLh L` M9t-fDI<$IT$H9{I M9uL` MtL{H L L HH M9t*I<$It$H9{I M9uL MtL|{H Htk{H HtZ{H ^ZH=?HH;HTzHH߾ [A\A]]{DI M9[vfDI M9f.@UHAWLh AVAUL ATSHHHHHMeMt'L5`|MWAL$XfIM9uLh L` M9t)@I?MWL9KzI M9uL` MtL.zLL L ILM9t,DI<$ID$H9yI M9uL MtLyH HtyH HtyH XH HHH xHH߾ [A\A]A^A_]zI M9[vfDI M9fDAL$QAT$I4$LVMt+A|$ M $LAQvfDA|$ DGED$ UHAVAUATISHX LkLADŽ$L HChH=~1[A\A]A^]@H=H5FM$A$P <Ǚ8ChA9B(~LCL5FIAE$T EǙ8CChA$H A;B(|6Et+ Ǚ8ChA$H A9B(AIE$T LM$0 ADŽ$8 Mc$T HCLKADŽ$D Oc4HMYIMMIIE$< EA$@ M$ME9UA9uAM}A$0 A;] kA$4 A;}YE$8 E;eGH߸IH/(LHttADŽ$L LhttMc$T HCH[ADŽ$D Kc HH{HHHIHAA$< A$@ fDLHtIL9tYLHPIL9tYHH0HH9tYLHIL9tYLHIL9ttYH|b*/%SYA HHSH}IL9==IIH}IL9tYH}HH9tXLHx}sindZ_UKPFIL9tQLHPIL9tQL H0IL9tQHZH}IL9tQH}HH9tQLHpIL9twQjI(+IIQ HHH}IL9fDUHHAWL` AVHPAUATSHH  HH/HL%HpHWHEHIt$DžxHHUHUHEHH H uHLJMtYMQLMtMMZLMtAMkLMt5MuLMt)INLHtHqHHtH~HHtHHUHLGMt`MHLMtTMQLMtHMZLMtHx rH={EF fMFI|$MIIMf1M&I.II$M|$HLHGI$f.LEDI$|fLeEMD$HELELEHE EHDHf.MxzI|$HLIMaLLHFLINfDHDžfDL牅V H=Y;CLH=oU;EAII(JIIVHuLۊHuHˊLHPIL9t?GLGPHAL9uALLULI9IL9tFH INH0HrFhUH` HHAWAVLPLpAUATSHH  LHLHL%IVDžxHIt$HEHUHUHEHH LL RHLJMt^MQLMtRMZLMtFMkLMt:M}LMt.IOLHt"LAHMtIpLHt HDHUHH~Ht`LOHMtTMQLMtHMZLMtAŅ ' u#u K   H H=EJ>Awf.LeEI|$HEH}H}HEDžE1XfI|$V=Lx(DL(L LJIhIs JDLx H5"I$h%Hx H=EV=fL0HL  LHx -H=dE?LFHIIHuL蒂뺋WBHH q@HcI Ht1u'B1HLMcP McH@It1L9tIʍBHLMcC Ics@It 1H9uIȍBHL McY McQ@It 1L9uIˍBHLMcH Icp@It1H9sIɍBt}HLMcB McZ@It1L9HIȍBtRHL McQ Icq@It1H9Iʃt'HcLMcK EC@ItIc1H9IHcW$LcWDHt1I9LHHcG@H9 @!ùf.HLJ1fUHAVIH EAUI ATISH1҃H=-E1V<AEEH=E1DKE$;u:D;Gu4D;Ou.D;W u(HH=ED1AArHG;OuD;@uD;Hf.V;HuD;@uD;HV;H(\V;H<xV;HPV;HdV;HxV;VH H=E9A {,u 1҃{01H E H=E;{Du 1҃{H1H %E H=E:b1AL$$A9N$ H=EC9;1A}H E H=TEy:1DC\E9D$$H ػE¾ H=E1I:1EME9MH ĻE¾ H=E1:EU1H E H=EAA19L H=E`8L` H=E98qAu,1H nEH=uE n9FE1A [DA\A]A^]fDD;@,D;H0D;P4 DD;@@~D;HDtD;PHeDD;@TbD;HXXD;P\IDD;@hFD;Hl!H=τ;0%H= B"%u^A~MHP *1=//¾ H=#E% ADHeH=E[A\A]]$D1@ff.(UHAVAUIATLeSIT$H L6H^HULHt MHwyHucA6ID$@uH]LH,H5I}HUHuHLjH}IL9t'H [A\A]A^]ÐID$Ht@Hx,H{B'H]HEHLH%HEmH=8;"H=4;'$I!I3fDUHAWAVH0IHPAUATSHHH H5\RHHH0HDž8ƅ@H L0 H E1AE8ElE9u D9@sLX9Hu E9CP^A9Ku E9CU^A9K(uE9C,uE;K0T@^A9KAHH-@HLHUHuLH}MEL9t$H}LKL9tr$LpH5 #1ELH TLH(LH54EHHh[HL HUHuLH}MUL9t#H}L[L9t#HpIT$H9t#EPL1H(H T>LH5EHHg[HLzHUHuLH}IEH9th#H}HKH9tV#HpMD$L9t@#EL1H(H hTLH5BEHHf[HLHUHuLhH}MML9t"H}HsH9t"HpMT$L9t"EL1H(H ֤TLH5ɤEHH^f[HLVHUHuLH}M]L9tD"H}HSH9t2"HpID$H9t"H H(H NT1D0 LLH5ϟEH_He[HLHUHuL=H}IMH9t!H}LCL9t!HpML$L9t!H H TL1D4 H(LH5^EHH,e[HL$HUHuLH}MUL9t!H}L[L9t!HpIT$H9t H H(LH TD8 1OLH5EH-Hd[HLHUHuL H}IMH9ty H}LCL9tg HpML$L9tQ H H(H T1D< LLH5|EHHc[HLHUHuLrH}IuH9tH}LSL9tHpM\$L9tH H(L1H TD@ LH5 EHHac[HLYHUHuLH}IEH9tGH}HKH9t5HpMD$L9tAhH54z;L=2;LIELH5РEHkHb[HLHUHuLIH}IL9tH}HH9tHpIL9tLHPIL9ttLH0IL9tXHL[A\A]A^A_]E9C|E;E;tHE9E;E;tD;HD;P @HL%ͼEE,AH=E裝H8H1IH EdE;KE;S tE;KE;S tE;S4vfE;SH^E;S\NE;Sp>AH=)AH8H1IH AH鲚IΚIؚHI IH#I2ILALFMtA@LiHIL^HNIuIsHtFMuMsMeMcMtAD$IU IS I}(I{(HtGME0MC0IM8IK8HtAIu@Is@MuHMsHMtAFMePMcPIUXISXHtBI}`I{`MEhMChMtA@IMpIspI9IM)IJDHH+MHHE` H=_EH9AAu+` HX :fP Ht1H=DEwLeH]AI9LH)HHHH= 30HHHHttHtUHt6LsMt)Anu!I6LVAn uILRHLsMt Ano HLsMt An HLsMt An HLsMt AnuI6LVAn  HLsMt#AnuMLAPAn  DHLsMt AnHI9LsMt AnHLsMt AnLsMt AnLs(Mt AnJLs8Mt An LsHMt AnLsXMt AnLshMt AnVHpI9GH]HtH@H0D[A\A]A^]ÃHHHHtlHtGHt MLMiLhMtAEHpIIL1L6LaLfMtAD$HHHHHyH~HtGHHLLLYL^MtACHHL)L.LqLvMtAFHHL!L&HQHVHtBHHH9H>LALFMtA@HHI9LLLiLnMtAELaHILvHNIt$IvHtFIT$IVI|$I~HtGMD$ MF M\$(M^(MtACMl$0Mn0IL$8IN8HtAIt$@Iv@IT$HIVHHtBI|$PI~PMD$XMFXMtA@M\$`M^`Ml$hMnhMtAEIL$pIvpI9 fHAHHHHtpHtGLsMt:A~DOENu)ILQAv VAV uMLAPfDHLsMtE^ACAFA]HLsMtAvVAVHLsMtA~DOENHLsMtE^ACAFAHLsMt:AvVAVu*MLAPE^ ACAF Af.HLsMt3A~DOENu"ILQAv VAV DHL9"LsMtE^ACAFAHLsMtAvVAVLsMtA~DOENELs(MtE^ACAFALs8MtAvVAVLsHMtA~DOEN[LsXMtE^ACAFA LshMtAvVAVHpL9D1 LMM1LP MaI9MtH="AD$HX HtzLX 1@ILPAn MLAR@MLAPAn WMLASHI6LVAn ILR DMLAQAn ILQ@ILPAn MLAR@MLAPAn cMLASTI6LVAn 'ILRDMLAQAn ILQ@MLAPE^ ACAF A)MLARfMLARA~ DOEN ILQILQAv VAV MLAPy@MLAPE^ ACAF A7MLAR(MLARA~ DOEN ILQILQAv VAV MLAP@MLAPE^ ACAF AMMLAR>MLARA~ DOEN ILQILPAn MLAR@13AD$HX fDMLARA~ DOEN ILQMLAQAn %ILQ@ILQAv VAV YMLAPJ@MLAPMLAS!MLAPAn {MLASlMLARYfMLARA~ DOEN ILQvILRrfILPAn MLAR@MLAPE^ ACAF ADQDEEAgfffLLD$D)DkdE)DAH zT1D)Aк0MbDD$H0L1H zTH(ID)AкLPLH5NS;LLpHV;LLLxHUI}HpM H9"LUHuM9vM\$L9HEI9LZHKHPHMH0H9HuL@LELHHLLMHH@@tH}LSL9tHpIL9tmHPIL9tXL(H0IL9tIFH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHH=F`-HHHHtqHtRHt3LsMt&AnuILQAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILQAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt An}HLsMt An<LsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnKLshMt AnHpI9GI$ HtH|L-m[I$IM,$A\A]A^]xI M93LfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILRAN qAv uMLAPHLsMtENEQEVA=HLsMtANqAvHLsMtA~GAFcHLsMtENEQEVAHLsMt3ANqAvu#MLAPEN EQEV AHLsMt3A~GAFu#ILRAN qAv fDHI9LsMtENEQEVA|HLsMtANqAvKLsMtA~GAFLs(MtENEQEVALs8MtANqAvbLsHMtA~GAF5LsXMtENEQEVALshMtANqAvHpI9KQSH3HVMADC AL HAQMLARAn (MLASMLAPAn MLAQILQAn I6LVDILPAn nILR`DMLARAn MLASMLAPAn MLAQILQAn cI6LVUDILPAn &ILRDMLASA~ GAF fILRX@MLAPEN EQEV AMLASMLAPEN EQEV A~MLASoMLASA~ GAF 3ILR%@ILRAN qAv MLAP@MLAPEN EQEV AMLASMLASA~ GAF ILR@ILRAN qAv MLAP@MLARAn MLASDC Ax{ MLASA~ GAF ILR@ILPAn ILRDILRAN qAv MLAPq@MLAPfMLAQMLAPAn kMLAQ\MLASqfMLASA~ GAF ILR@I6LVbfMLARAn MLASMLAPEN EQEV A\MLASMfUHPaHHAVAUATISHX HHt(L-1M KDM$@ I$8 I9t)H;LSL9(#H I9uI$8 HtHL0M$ M$ IM$M9t'I>IFH9I M9uM$ MtLI$ HtI$ HtM$ I$ I9LH)HHHH=h-HHHHtqHtRHt3LsMt&AnuILQAn u I6LV@HLsMt AnHLsMt AnHLsMt AnHLsMt AnuILQAn HLsMt#AnuMLAPAn DHLsMt AnHI9LsMt AnHLsMt AnDLsMt AnLs(Mt AnLs8Mt AnLsHMt AnLsXMt AnSLshMt AnHpI9GI$ HtHLL-=I$IM,$P[Lp A\A]A^]I M9+DfDH I9fDH9HHHHtpHtGLsMt:A~GAFu*ILRAN qAv uMLAPHLsMtENEQEVAEHLsMtANqAvHLsMtA~GAFkHLsMtENEQEVAHLsMt3ANqAvu#MLAPEN EQEV AHLsMt3A~GAFu#ILRAN qAv fDHI9LsMtENEQEVA|HLsMtANqAvSLsMtA~GAFLs(MtENEQEVALs8MtANqAvjLsHMtA~GAF=LsXMtENEQEVALshMtANqAvHpI9KQSH3HVMADC AL HAQMLARAn  MLASMLAPAn MLAQILQAn I6LVDILPAn fILRXDMLARAn MLASMLAPAn MLAQILQAn [I6LVMDILPAn ILRDMLASA~ GAF fILRX@MLAPEN EQEV AMLASfMLAPEN EQEV AvMLASgMLASA~ GAF +ILR@ILRAN qAv MLAP@MLAPEN EQEV AMLAS~MLASA~ GAF ILR@ILRAN qAv MLAP@MLARAn MLASDC Ax{ MLASA~ GAF ILR@ILPAn ILRDILRAN qAv xMLAPi@MLAPfMLAQMLAPAn [MLAQLMLASifMLASA~ GAF ILR@I6LVRfMLARAn MLASMLAPEN EQEV ATMLASEfHcW$ODHt1uXDOAAdHLMcP Icp@It 1H9u,IAA8HLMcC IcK@It1H9tIAAHLMcZ Icr@It 1H9uIAAHH LcA LcQ@It 1L9uIAAHLIcK Ics@Ht1H9tHAAHLMcB McZ@It1L9DIAAtTHH LcQ Hcq@It1H9IAAt'McNIcs EC@HtIc1H9Hփ Hc@H9!ЃUHSHHZH{ HC0H9tH;HSH9tH[]H[]fH=Z=4@HHxTH9v#HH9sHx&H7H~f.HxHHHdUH=:HT@UHAUIATISHHt HL)HHUHw?I$Hu%AUH]I$I\$H[A\A]]fHt!fH}1HMI$IL$HLHJH]I$H=!:@IхrBP׉r8r0Br(Br BrBrBrBuDWE1D׉A1AAHHLHApA1Ðf.UHATISHH1HH=:!( 1H{8H=h\E1H{@H=`\E1HH=U\EI$HH;M$HC81ҾH=RNEIHquYHC@1H=pNEIH@@־Hu0H1ҾIH@@H=qNE1t[A\]f.[A\]fDLIOfUHAWAVAULoATSHL/HHHID6IHEHw0Hu"DsHCADH[A\A]A^A_]DHtH}15IHHEHCLLLiHEL+H=A:@UHAWIAVMAUATLSHLHHXHDHLDžY9XTDžHLX9X]DžHLXDD9XdDžHLXDD9X[Dž HLfX9XH=xELIHDžIPLLLH} HDžIQLLLHHHDžISLމgH@HSHHDžCLExLH}PDEHLLAHM HUhLDHupLL8DHH@L]HHLLL}xDDHMH0+LU (+HEPHLHH}hDLEpL LH(HH0H0HHH(LPLLXLH`HHhHHpLxL}LMLuHUHuH]L]LUHMHE@DfofoHfo fo0H=U;fo@foPDfDoEfDoMfDoUfDo]Hfo`fopP fDoeDX0`@hPp`xpDDDDDDDHDDDNl*1I8HEI8DjSjAVAAH0LHDžAL oZ1EH1AWLd<H ;H=";[ZYu7ƅ!H=BIEH=tEHAHeD[A\A]A^A_]f.1ҋ9\hhA9\1+f.9\1f1DD9\D1DD9\DL@t ITff.UHAUIATIH= GESHHH9\LK8LCxM$` A$8 A$4 A$0 tLtLC0LS@HHC(HHAUM$H ASE$P WI$< VA$D Q0H$I$X H$HL$HD$HLHH5HHe[A\A]]HC eHCUfDU1Ҿ HAUATISHHX H=>[E{D8HuEE1DlD9 u6D9Bu0D;Ju*D;R u$@KTH=uE<AAAuHBA9JuD9@uD;HDn9HuD9@uD;HDn9H({Dn9H<Dn9HPDn9HdDn9HxDn9DnHA H=qqE1HK(H9K H=YE1H{  H=YEHG H=qE`xH H=qE5M1҃tLCXLC`1LChLC0I¾ H=XE 1LL9 H=XE4 H=+qEHC@M$HsHA$4 CA$8 iHL[IA$H ADŽ$P E$L M$< ADŽ$D A;w-E;Zw'AJtAz vEBEt EJ1E¾ H=zpEIDŽ$E1AƄ$0 HK`H;Kh1LfA$ CƄ A$ A$ H蕵H=nIEwÅufI$A$ Dh`A$ 1Ҿ H=iIE DHH=IE[A\A]]@ H[A\A]]fDD9@,{D;H0qD;P4bDD9@@`D;HDVD;PHGDD9@TED;HX;D;P\,DD9@h*D;Hl D;PpzDD9@|D;D;LD9D;D;@D;P IfD;P Q,I$x H~ H=E(;H=AA$ t:I$ H tH=(;fH=CAXAHHIx +1=//kxH8H9@5H('H HH HAIAAƄ$0 A]fDUHAUIATISH(8uA|$9uH([A\A]]@H6IUH]HCHHHEBHHH5HH蜈IT$HuHHU胈H}HH9tA|$9tfIuIUH]HKHHHMHHH5GH+I|$(HUHuHLjH}HH9"|H([A\A]]IAKISKUHAWAVHIH0AUHPATSHHX HHHHHHHHHDžƅ H0HDž8ƅ@HPHDžXƅ`Ht#uHH5Qēf u9HH5A訓HH5Q蕓HH5wQ肓LeHH5BL與H@LLH}ML$L9tH]HH5oAHIH^@HLNjHUHuLGH}MT$L9tH}L[L9tHH5_hEHH@HLjHUHuLH}Ml$L9tWH}L{L9tEHH5[";H8:LphLHELH5HEH脝H [HLHUHuLbH}IL$H9tH}HsH9tHpMEL9tAL1L=9H HTLLH5iEHHV [HLNHUHuL΄H}ML$L9t;H}LSL9t)HpM]L9tAL1H DHTL5LH5+iEHcH [HLHUHuLAH}ID$H9tH}HSH9tHpIMH9tAL1H GTLLH5hEH֛H< [HL4HUHuL贃H}It$H9t!H}LCL9tHpMML9tH0 LHPIL9tHH0HH9tLHIL9tHL[A\A]A^A_]DHH5;襏HH5t;蒏HH5a;f.HDlA`EHH5EE<LLL1H !FTEL LH5gEH7H[HL蕇HUHuLH}M\$L9tH}HCH9tpHpIUH9t[HLL1DH ETtLH5WEH袙H[HLHUHuL老H}IL9tH}HH9tHpIL9fDHH5DEHH5DEҍ8HDIDIWEHEIsEIDHLEIEIeEHrEIEIEHEIEIEIEIEIEIEHDHEH9FIFHCIE@UH` HHAWAVLPAUATSHH  LHLHL%KHpHWHEHIt$DžxHHUHUHEHHH>HLRMtbMZLMtVMkLMtJMuLMt>M~LMt2IOLHt&LAHMtIpLHtHfHUIIxHt`LOIMtTMQMMtHMZMMtLALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHE H=1E HH9AA۬H=1ELeH]AI9LH)HHHH=.3HHHHtwHtXHt9LsMt,Anu$ILQAn uI6LVf.HL{Mt Ao HLsMt Anf HL{Mt Ao5 HLsMt AnuILQAn  HL{Mt#AouILRAo N fDHLsMt An_ HI9L{Mt AoHLsMt AnLL{Mt AoLs(Mt AnL{8Mt AoLsHMt AnXL{XMt AoLshMt AnHpI9GH]HtH踬HHD[A\A]A^A_]fDHHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9*L1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9Bf.HAHHHHtpHtGL{Mt:ADOEOu)MLAPAO qAw uILRfDHLsMtE^ACAFAHLsMtEFAHANA:HL{MtEWAzAAHL{MtAwD^E_HLsMt8A~DGEFu'ILQE~ AwAv A HLsMt3AFPAVu#MLAREN AyA~ AHL9*L{MtAOqAwvHL{MtEWEJEOA#LsMtE^ACAFALs(MtEFAxA~AL{8MtEWARAWA6L{HMtAwAwLsXMtENEAEFALshMtE^ACAFACHpL9 fE1E1fMIB+ J3 uLB3x Ht)UvfoUIu 1A1fED$ILeM $N3x M|$McI9tMtH=gAGJ3 Ht)UDEwufoUDEN3 Mc^fDILPAn  MLAR@ILRAo MLAS@ILQAn I6LVDMLAQAo UMLAPFILPAn MLAR @ILRAo MLAS@ILQAn I6LVDMLAQAo ]MLAPNMLAREN AQAV AMLAPfILQE~ AA~ AGI6LV9MLASAG DPEW ILRMLAQEw EFEG AILQfILQAv D^E^ ]ILPO@ILRE~ EWEV A MLAQfMLAPA OAO I7LV@MLASEw AFAG AjILR\fILPAn MLAR}@1ILRAG DPEW ]MLAQNMLAQAo MLAPMLAQEw EFEG AILQf.MLAPaMLASILRAo MLAS@MLASfMLARE~ AA~ AMLAQI6LVfAGJ3 fDILPAn MLARv@I6LVE^ ASAV AILPIH}bLZf.UHAWIAVIAUATSHA;~`gfffLeL-1H]H ;$TL)LAкLH5:HJxHLVH}HsH9t譡H}MD$L9t蚡A;t71A~d* H=f@EmEvdA9/H5X<H=HL"VH}LcL9t0H5R:HHLUH}LkL9tH5):HHLUH}L[L9tؠH5:HHLUH}HCH9t謠1A;Hĸ[A\A]A^A_]DsAxuAN`gfffAA)LeH]1L-LH "TLxLH5:HvHLTWfDH5(:HHLTH}HH9t1>DQDEEAgfffLLD$D)DkdE)DAH !T1D)AкMbDD$H0L1H !TH(ID)AкLPLH5.:LuLpH{:LLbLxHUI}HpM H9"LUHuM9vM\$L9HEI9L:]HKHPHMH0H9HuL@LELHHLLMHH@@TSH}LSL9tbHpIL9tMHPIL9t8L(H0IL9tH}IL9 WfDo@)ELf11LpADI,IH}HH9t蒝HpIL9t}HPIL9thH(H0HH9tLH}IL9t:LBIIIIH}HH9t H}IL9tLIH}HH9t՜LݥIf.DUHAWLh AVAUL ATISHHwHHI]Ht'L50M/K.@IM9uM$h M$` M9t(fI?MWL9(I M9uM$` MtLLM$ I$ IM$I9t/fH;HCH9軛H I9uI$ HtH蝛I$ Ht苛I$ HtyM$ I$ I9LH)HHHH=`-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt AnHL{Mt AoLsMt AnL{(Mt AoLs8Mt An]L{HMt Ao LsXMt AnL{hMt AoHpI9GI$ HtH@IM9uM$h M$` M9t(fI?MWL98ːI M9uM$` MtL譐L^M$ I$ IM$I9t/fH;HCH9kH I9uI$ HtHMI$ Ht;I$ Ht)M$ I$ I9LH)HHHH=p-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt An%HL{Mt Ao$LsMt AnL{(Mt AoLs8Mt AnmL{HMt Ao0LsXMt AnL{hMt AoHpI9GI$ HtHL-ݴI$IM,$HL羨 [A\A]A^A_]UDH I9#LALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHE H=D HH9AA;gH=DRfLeH]AI9!MI)IIIH=j.A:IIIItvItWIt8L{Mt+Aou#MLAQAo uMLAPHLsMt Anw HL{Mt Ao HLsMt An HL{Mt(Aou MLAQAo  f.HLsMt#AnuILQAn  fDHL{Mt Ao HI9LsMt AnHL{Mt AoLsMt AnwL{(Mt Ao:Ls8Mt AnL{HMt AoLsXMt AnsL{hMt Ao6HpI9GH]HtHgHXD[A\A]A^A_]fDHHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9"L1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9:fAI@IIIItmItFLsMt9A~GAFu)MLAREN EAEF Au ILQ@HL{MtAwVAWoHL{MtEWEJEOAHLsMtE^A{A~AqHLsMtEFAHANAHL{Mt9ADWEWu(MLAQEw EFEG AHL{Mt3AwD^E_u"ILRAG xA DHL92LsMtENEAEFAHLsMtAFPAVL{MtAOqAw~L{(MtEWAzAAWLs8MtE^ACAFALsHMtA~DGEFL{XMtEWARAWAkL{hMtAOqAwHpL9+@E1E1fMIB; N3x B3p MtjL5cMAEL$AuGI $)ULQMfoUsA|$ uI$)ULRfoUIu 1=AOD1oEUILmM]N3p IEMcL9tHtH=c@N3x Mt!L)UHEDU/foUHEDUJ3x Mc^fDEL$EAED$DMLAQAo &MLAPILPAn MLAR@MLAQAo *MLAPILPAn MLAR@ILRAo MLAS@ILQAn tI6LVfDILRAo MLAS@ILQAn xI6LVjDMLASAG DPEW +ILRMLASEw AFAG AbILRTf.MLARA~ DOEN MLAPfMLAQEw A~A AuMLAPfILQAv D^E^ (ILP@ILRE~ EWEV AMLAQfMLAQEG AHAO AI7LV{fILQE~ AwAv AMLASfILRAo $MLAS@1TI6LVE^ ASAV AILPILPAn FMLAR7@ILPE~ EWEV ApMLAQaf.A|$ wAt$ fDMLARfI6LV"fILQAn tI6LVfDILQJf.MLASEw A~A AqILPcfMLAPq@N3x SILRAo MLAS@MLAPAO qAw ILRUIH}3;L+ef.U1Ҿ HAVAUATISH0HP H=D{Y%LmLuELLP9ELLEDPD9MyLLEwP9u H=D"Y1H( H=~DXt1LS(L9S H=$DXN1H{  H=DX+H{`u 1H{h¾ H=DXH{@u 1H{p¾ H=DUX1H@ H=D/X1L8L9@ H=pDX{1҃ H=sDWVI$P H=D4W.I$P H=D,WI$P HcL,McEItADHAuMcNIcIcHtI9NLP<LcNMcEItMcٺM9MHHcHLcLcItM9MDHAMcNIcIcHtI9LPLcNMcMcItM9uiMDXAUIcHLcHcItI9u2M HH4Hc1L9¾ H=jDU%D1EtLCXLC`1LChLC0I¾ H=WDjUI$P DDȃHLMcEItAAIXHcHM~LMt2IOLHt&LAHMtIpLHtHfHUIIxHt`LOIMtTMQMMtHMZMMt`-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt AnHL{Mt AoLsMt AnL{(Mt AoLs8Mt An]L{HMt Ao LsXMt AnL{hMt AoHpI9GI$ HtH<:L--aI$IM,$H[A\A]A^A_]29fH I93LfDI M9fDHAHHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHL{MtEOEQEWA=HL{MtAOqAwHLsMtE^A{A~AaHLsMtEFAPAVAHL{Mt9AOAOu)I7LVEw EFEG Af.HL{Mt3EOEQEWAu!MLASAG xA HI9LsMtAvDFEFHLsMtE^ACAFAL{MtEOAQAWAcL{(MtAOyALs8MtEVEZE^ALsHMtA~DGEFyL{XMtAGHAO,L{hMtEOEQEWAHpI9KQSH3HVMt({ L HAQfD{ DGDC ILPAn ILQDMLARAo DMLAS5MLAPAn MLAQILRAo I7LVDILPAn ILQDMLARAo PMLASAMLAPAn MLAQILRAo I7LVDILRE~ EOEN A\MLARMfILRE_ ACAG AILQI7LVEw A~A AMLAPfMLAQEV ARAV AgMLASXILPE~ AOAN AI6LV I7LVEG EHEO AILRMLAREw E^E_ A}ILPofILQA~ wAv 1MLAP"@MLARAo MLASMLAQEV EZE^ AILPf.ILPAn ILQDILPE~ AOAN AI6LVrILQ f.MLAQMLAPAn kMLAQ\ILRzf.MLASEw A~A AILPfI7LVbfMLARAo MLASILREG EHEO A]MLARNf.UHAWL` AVAUL ATISHH_HHI]Ht'L53M?K>@IM9uM$` M$X M9t(fI?MWL981I M9uM$X MtL1L^xM$ I$ IM$I9t/fH;HCH9k1H I9uI$ HtHM1I$ Ht;1I$ Ht)1M$ I$ I9LH)HHHH=2p-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt An%HL{Mt Ao$LsMt AnL{(Mt AoLs8Mt AnmL{HMt Ao0LsXMt AnL{hMt AoHpI9GI$ HtH.L-UI$IM,$-HL羠 [A\A]A^A_]U/DH I9#Le8D~UHD~LD~DU0D DD)D)D) "H8fDofDo fDoH]D)pD)uD)}@IAOfopH}HDžxfoMfoUL}PAv\Hx0ILHI(P jPuXjLpHL4$D$MEJH0H=DMH=$D?AH4HeD[A\A]A^A_]f111kDALE8Hu L}LU0L L](~ HDH HHLH}M|$L9tH}HCH9tL=:Lp1AH ÊSLLLH5DHH@LZHL8HUHuLH}IT$H9t%H}HKH9tHpIuH9tAL1H .SLoLH5MDHMHKZHLHUHuL+H}MD$L9tH}LKL9tHpMUL9tqAL1H SLLH5DHH&KZHLHUHuLH}M\$L9t H}HCH9tHpIUH9tAL1H SLULH5[DH3HJZHLHUHuLH}IL$H9t~H}HsH9tlHpMEL9tWA L1H SLLH5DHH JZHLHUHuLH}ML$L9tH}LSL9tHpM]L9tAL1H SL;LH5DHHIZHLwHUHuLH}M|$L9tdH}HCH9tRHpIUH9t=HH5S`:H 0:LHEULH5DHHHZHLHUHuLaH}IL9tH}HH9tHpIL9tLHPIL9tHH0HH9tpLHIL9tTHL[A\A]A^A_]HtlHH5OYHH5;:QFHH5$@HJH_?HLHUHuLHHȐtDHH59QHH59QHH59QufDH踒_HH5|@HH5o9QzHH5V@g!HITI韋I酋I鱍HII飋HLI*IH骋I鍋IʋI鰋IwHnI4IՋIH駋IϋHHˊItII1H鯌HI‹IpI魌f1f.UfHAWAVAUATSHHXL )EL HEMM)LH HH9LL L HE~MILefl)MM9 LLHL)HHHH=!HHHHtoHtHHt!I1H0MAL@MtA@HpIILLLiLnMtAEHHL1L6LyL~MtAGHHL!L&HQHVHtBHHH9H>LALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHE H=D HH9AAH=DLeH]AI9!MI)IIIH=t.A:IIIItvItWIt8L{Mt+Aou#MLAQAo uMLAPHLsMt Anw HL{Mt Ao HLsMt An HL{Mt(Aou MLAQAo  f.HLsMt#AnuILQAn  fDHL{Mt Ao HI9LsMt AnHL{Mt AoLsMt AnwL{(Mt Ao:Ls8Mt AnL{HMt AoLsXMt AnsL{hMt Ao6HpI9GH]HtHHXD[A\A]A^A_]fDHHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9"L1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9:fAI@IIIItmItFLsMt9A~GAFu)MLAREN EAEF Au ILQ@HL{MtAwVAWoHL{MtEWEJEOAHLsMtE^A{A~AqHLsMtEFAHANAHL{Mt9ADWEWu(MLAQEw EFEG AHL{Mt3AwD^E_u"ILRAG xA DHL92LsMtENEAEFAHLsMtAFPAVL{MtAOqAw~L{(MtEWAzAAWLs8MtE^ACAFALsHMtA~DGEFL{XMtEWARAWAkL{hMtAOqAwHpL9+@E1E1fMIB; N3 B3 MtjL5[MAEL$AuGI $)ULQMfoUsA|$ uI$)ULRfoUIu 1=AOD1oEUILmM]N3 IEMcL9tHtH=@N3 Mt!L)UHEDUfoUHEDUJ3 Mc^fDEL$EAED$DMLAQAo &MLAPILPAn MLAR@MLAQAo *MLAPILPAn MLAR@ILRAo MLAS@ILQAn tI6LVfDILRAo MLAS@ILQAn xI6LVjDMLASAG DPEW +ILRMLASEw AFAG AbILRTf.MLARA~ DOEN MLAPfMLAQEw A~A AuMLAPfILQAv D^E^ (ILP@ILRE~ EWEV AMLAQfMLAQEG AHAO AI7LV{fILQE~ AwAv AMLASfILRAo $MLAS@1TI6LVE^ ASAV AILPILPAn FMLAR7@ILPE~ EWEV ApMLAQaf.A|$ wAt$ fDMLARfI6LV"fILQAn tI6LVfDILQJf.MLASEw A~A AqILPcfMLAPq@N3 SILRAo MLAS@MLAPAO qAw ILROIH}Lf.UHAWIAVIAUATSHA;~`gfffLeL- 1H]H sSL)LAкLH5K:HHLH}HsH9t H}MD$L9tA;t71A~d* H=@?mEvdA9/H5_;HHL肥H}LcL9tH5K:HHLVH}LkL9tdH5K:HHL*H}L[L9t8H5{K:HiHLH}HCH9t 1A;Hĸ[A\A]A^A_]DAxuAN`gfffAA)LeH]1L-RLH qSL(LH5rJ:HHL[WfDH5J:HHL6H}HH9tD1>DQDEEAgfffLLD$D)DkdE)DAH M~LMt2IOLHt&LAHMtIpLHtHfHUIIxHt`LOIMtTMQMMtHMZMMt@IM9uM$x M$p M9t(fI?MWL98I M9uM$p MtLLNM$ I$ IM$I9t/fH;HCH9[H I9uI$ HtH=I$ Ht+I$ HtM$ I$ I9LH)HHHH=p-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt An%HL{Mt Ao$LsMt AnL{(Mt AoLs8Mt AnmL{HMt Ao0LsXMt AnL{hMt AoHpI9GI$ HtHL-I$IM,$HL羸 [A\A]A^A_]EDH I9#DHf H=/DAąuH Dn`S 1Ҿ H=/D{ ADH=A0D蔰Aą=Lh Aop Ao Ao Ao  Ao Ao Ao Ao EoDD EoTD Eo|D ML EoD( ML8 A@ DHA [DA\A]]@H` H hH=:ZH=7@Lum t5Lp Ix /H=:!H=@u4A?HHH` 1=//4@UHAUIATISH(8uA|$9uH([A\A]]@H6IUH]HCHHHEH#7H57HoIT$HuHHUoH}HH9tAA|$9tfIuIUH]HKHHHM!H6H56H{oI|$(HUHuHLjboH}HH9"̰H([A\A]]I;I HUHuL^jH}MUL9t̫H}HsH9t身HpM\$L9t褫EL1H(H -S@LH5vdDHHLHUHuLiH}IUH9tAH}LCL9t/HpIL$H9tEL1H(H A-SLH5 dDHcHL(HUHuLHiH}MML9t趪H}HCH9t褪HpMT$L9t莪EL1H(H ,S*LH5cDH؀HLHUHuLhH}IuH9t+H}L[L9tHpIT$H9tAL1H(H ,,SLH5FcDHNHLHUHuL3hH}MEL9t衩H}HKH9t菩HpML$L9tyA L1H(H +SLH5bDHHLHUHuLgH}IEH9tH}LSL9tHpIt$H9tAL1H(H +SLH5bDH:HLHUHuLgH}M]L9t荨H}HSH9t{HpMD$L9teHH(H *S1D0 LLH5z\DH~HLmHUHuLfH}IMH9tH}LKL9tHpID$H9tӧAhH5:L=ź9LIELH5)DH~HLHUHuLfH}IL9trH}HH9t`HpIL9tKLHPIL9t/H H0HH9tHL[A\A]A^A_]fDE9C|#E;E;tPE9E;E;t%D;HD;P  @HL%aDE,AAH8H A 1H ry@yfDE;KE;S tE;KE;S toH)M\f.o@AFE;S4NE;SH>E;S\.E;SpH8H A1H K\ONxH=:͠H=:I0If1H0H1I1I1H1H1I2I2H)2I?2II2HV2Il2H2H0Hn0I0II0In1H0Ip1I62HC2I~2I2H2I2H2I2I2I2H2I3I3H3I]0Ig0fHh OBIlE1w'L ]DLPLcML1BD1f.UfHAWAVAUATSHHXL )EL HEMM)LH HH9L蠣L L HE~MILefl)MM9 LLHL)HHHH=HHHHtoHtHHt!I1H0MAL@MtA@HpIILLLiLnMtAEHHL1L6LyL~MtAGHHL!L&HQHVHtBHHH9H>LALFMtA@HHLLLiLnMtAEHHL1L6LyL~MtAGHHI9L!L&HQHVHtBHyHILFHNHwIpHtFL_MXLoMhMtAELw Mp L(Mx(MtAGLg0M`0HW8IP8HtBHO@IH@HwHIpHHtFL_PMXPLoXMhXMtAELw`Mp`LhMxhMtAGHOpIppI9IM)IJDHH+MHHE H=>#D HH9AA[H=?#DrLeH]AI9!MI)IIIH=.A:IIIItvItWIt8L{Mt+Aou#MLAQAo uMLAPHLsMt Anw HL{Mt Ao HLsMt An HL{Mt(Aou MLAQAo  f.HLsMt#AnuILQAn  fDHL{Mt Ao HI9LsMt AnHL{Mt AoLsMt AnwL{(Mt Ao:Ls8Mt AnL{HMt AoLsXMt AnsL{hMt Ao6HpI9GH]HtH0HXD[A\A]A^A_]fDHHHHtjHtDHtMLIyHxHtGHpIIL!L&HQHVHtBHHLLLiLnMtAEHHL1L6LyL~MtAGHHLLHyH~HtGHHL!L&HQHVHtBHHLLLiLnMtAEHHI9"L1L6LyL~MtAGHyHILFHNHwIpHtFLgM`HWIPHtBL_ MX Lo(Mh(MtAELw0Mp0L8Mx8MtAGHO@IH@HwHIpHHtFLgPM`PHWXIPXHtBL_`MX`LohMhhMtAEHOpIppI9:fAI@IIIItmItFLsMt9A~GAFu)MLAREN EAEF Au ILQ@HL{MtAwVAWoHL{MtEWEJEOAHLsMtE^A{A~AqHLsMtEFAHANAHL{Mt9ADWEWu(MLAQEw EFEG AHL{Mt3AwD^E_u"ILRAG xA DHL92LsMtENEAEFAHLsMtAFPAVL{MtAOqAw~L{(MtEWAzAAWLs8MtE^ACAFALsHMtA~DGEFL{XMtEWARAWAkL{hMtAOqAwHpL9+@E1E1fMIB; N3h B3` MtjL5MAEL$AuGI $)ULQMfoUsA|$ uI$)ULRfoUIu 1=AOD1oEUILmM]N3` IEMcL9tHtH=/@N3h Mt!L)UHEDUffoUHEDUJ3h Mc^fDEL$EAED$DMLAQAo &MLAPILPAn MLAR@MLAQAo *MLAPILPAn MLAR@ILRAo MLAS@ILQAn tI6LVfDILRAo MLAS@ILQAn xI6LVjDMLASAG DPEW +ILRMLASEw AFAG AbILRTf.MLARA~ DOEN MLAPfMLAQEw A~A AuMLAPfILQAv D^E^ (ILP@ILRE~ EWEV AMLAQfMLAQEG AHAO AI7LV{fILQE~ AwAv AMLASfILRAo $MLAS@1TI6LVE^ ASAV AILPILPAn FMLAR7@ILPE~ EWEV ApMLAQaf.A|$ wAt$ fDMLARfI6LV"fILQAn tI6LVfDILQJf.MLASEw A~A AqILPcfMLAPq@N3h SILRAo MLAS@MLAPAO qAw ILRߌIH}SrLKf.UHAWIAVIAUATSHA;~`gfffLeL-1H]H +SL)LAкLH59H:iHLGH}HsH9t蝒H}MD$L9t芒A;t71A~d* H=W?5EvdA9/H5I;H}HLGH}LcL9t H5B9HQHLFH}LkL9tH59H%HLFH}LKL9tȑH5 9HHLFH}LSL9t蜑1A;Hĸ[A\A]A^A_]DcAxtQLeH]1L-LH SLLH59HgHLFpAN`gfffAA)DH59H)HLEH}HH9t̐16DQDEEAgfffLLD$D)DkdE)DAH S1D)Aк(MbDD$H0L1H SH(ID)AкLPLH59LfHH9XH5N9LcNLpLXMMLpLM9IHHLpHMHp@I}HxLHpH@LxHUIH9=LMHuL9vMT$L92L]L9LMHSHpHULI9LEHHHMHxH}LH0HH@@CH}HCH9tHpIL9t؎HPIL9tÎL(H0IL9t觎H}IL9J葎@@ fDo@)Ef.oH)M1f11LaADAH=u:qIIM~LMt2IOLHt&LAHMtIpLHtHfHUIIxHt`LOIMtTMQMMtHMZMMt;轄<ցH=DՃƅH=>;脄J;` IVIvI~H1MZLMMkLMMuLMLHHH=,k?AŅ  uFu=L0HDžLLB# 9H  zHp CH=DwXAPLeEML$HELMLMHEDžE18fI|$膁Lp(DLw(L` L= I$hL9I$hI$xMwHH9M$xM9|Mt I7ILHgI$hM$pB0VDLp L=* I$hIG H9;I$hI$xMw(HH9 I$xI9pMt!Iw ILH҂I$hM$pB0H` BH= D覀*fHDžLP fLH HDž@)0MLM)LHHH9L臃LP HLLH HHHI~L@fl)0L9L)MIH HHHtQHt(LMOLMI6IVHMg M~ MT$LM$I7IWHsI I M\$LM$I7IWHPI I L9IL$LI $I7IWH Mt$ MG IVLMLIIw IW(HLIF0Mf IF LIw IW(HIvPMf@Iv@Iw@LIWHHMf`I`L9^L8L  IHJ#` uFH=DG~HufDfDMO LM9XIzMyIHL2I$hH9tH赀HHI$hI$xfML ?LM9LI~ÀI$hH9tHFHLI$hM$x#HDžAkI$hDDI$hiIGIyM[IHL;I~LHQH=H9zxIDI#I*IYH'yLM9uSVHHuHLHPIL9t~LHuLZI}I]H9t~I I蘆H0Ht~DUHAWLP AVAULp ATISHHHHI]Ht'L50M/K.@IM9uM$P M$H M9t(fI?MWL9(~I M9uM$H MtL}LM$ I$ IM$I9t/fH;HCH9}H I9uI$ HtH}I$ Ht}I$ Hty}M$ I$ I9LH)HHHH=`-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt AnHL{Mt AoLsMt AnL{(Mt AoLs8Mt An]L{HMt Ao LsXMt AnL{hMt AoHpI9GI$ HtH<{L--I$IM,$H[A\A]A^A_]2zfH I93LfDI M9fDHAHHHHtpHtGLsMt:A~GAFu*ILQAv VAV uMLAPHL{MtEOEQEWA=HL{MtAOqAwHLsMtE^A{A~AaHLsMtEFAPAVAHL{Mt9AOAOu)I7LVEw EFEG Af.HL{Mt3EOEQEWAu!MLASAG xA HI9LsMtAvDFEFHLsMtE^ACAFAL{MtEOAQAWAcL{(MtAOyALs8MtEVEZE^ALsHMtA~DGEFyL{XMtAGHAO,L{hMtEOEQEWAHpI9KQSH3HVMt({ L HAQfD{ DGDC ILPAn ILQDMLARAo DMLAS5MLAPAn MLAQILRAo I7LVDILPAn ILQDMLARAo PMLASAMLAPAn MLAQILRAo I7LVDILRE~ EOEN A\MLARMfILRE_ ACAG AILQI7LVEw A~A AMLAPfMLAQEV ARAV AgMLASXILPE~ AOAN AI6LV I7LVEG EHEO AILRMLAREw E^E_ A}ILPofILQA~ wAv 1MLAP"@MLARAo MLASMLAQEV EZE^ AILPf.ILPAn ILQDILPE~ AOAN AI6LVrILQ f.MLAQMLAPAn kMLAQ\ILRzf.MLASEw A~A AILPfI7LVbfMLARAo MLASILREG EHEO A]MLARNf.UHAWLP AVAULp ATISHHHHI]Ht'L5tM?K>@IM9uM$P M$H M9t(fI?MWL98rI M9uM$H MtLrL^M$ I$ IM$I9t/fH;HCH9krH I9uI$ HtHMrI$ Ht;rI$ Ht)rM$ I$ I9LH)HHHH=sp-HHHHtqHtRHt3L{Mt&AouILRAo u I7LV@HLsMt AnHL{Mt AoHLsMt AnHL{Mt AouILRAo HLsMt#AnuMLAPAn DHL{Mt AoHI9LsMt An%HL{Mt Ao$LsMt AnL{(Mt AoLs8Mt AnmL{HMt Ao0LsXMt AnL{hMt AoHpI9GI$ HtHoL-ݖI$IM,$nHL羐 [A\A]A^A_]UpDH I9#DAŅKH5d HuqIHD`1A_DXA.E1E1LLxeH iHuIH}HIAAƆ oLE1fIdž fE IAdž MIdž Idž Idž Idž Idž Idž Idž Idž Idž Idž( Idž0 Idž8 Idž@ IdžH IdžP IdžX Idž` Ih A A`)efEfIdž Ap E E AƆ A M I$M$Ht$L?AWpI$HEAE$H8[A\A]A^A_]@DTD9UJI$`yADŽ$ H8[A\A]A^A_]E9\'H{`uH{h~ H{@H5pah Hu"oIHt:HUHLHHBI$M$Hf.I$AIDŽ$Hu9d@L5` LnIHtD`1A)DXAE1E1LL2bH#HuIH}HIU_AAƅ L 1f1fA Ip IA IDž ADž IDž IDž IDž IDž IDž IDž IDž IDž IDž IDž( MMIDž4 IDž< IDžD IDžL IDžT IDž\ Ih HA`affIDžX AH A` Ap Aƅ A M I$M$HE1HDJDJ DXAwL&DOL9IBE1E1LL_HHuIH}HIAAƆ H E1fIdž fE HAdž Idž Idž Idž Idž Idž Idž Idž Idž Idž Idž( IAƆ0 Idž4 Idž< IdžD IP A A`z_ffɃIdžh AX Ap A AƆ A M I$M$HUmEH}I E dH=u9[H=9[AfAH}A I QdH=u9[H=;9[AJAH}A I dH=Cu9\[H=9N[AIIIIIxIdIIIIIf.HLJ1fH=it2@H9H8HH9t ]Ðff.HHxTH9v#HH9sHx&H7H~]f.Hx]HHH]UH=o9HX@UHAUIATISHHt HL)HHUHw?I$Hu%AUH]I$I\$H[A\A]]fHt!fH}1HMI$IL$HLHz[H]I$H=Qj9Y@UHATISHL`Lht#)p)M)U)])e)m)u)}H HEH@H\$H8H(HH?RDž( HH0Dž,0uXIL$HLI $HcHHeL[A\]Ðff.UHAWAVAULoATSHL/HHHID6UIHEHw0Hu"DsHCADH[A\A]A^A_]DHtH}1IHHEHCLLLYHEL+H=h9tX@HHH;Wu (fDUHHHH@ҋXÐUHATISHH1HH=j9!HX 1H{8H=C%X1H{@H=CX1HH=uCWI$HH;VM$HC81ҾH=rCIHWuYHC@1H=CIH@@־hWu0H1ҾIH@@H=CD9@u8D9Hu2D9P u,@H fDHwHxgDYDDIMcFDDALcDqFDDA{IcDYDDDAYMcDyFDDA7McDqFDDAIcDYDDDAMcFDD IcDDD|Itt 1H@ff.@Hv Hf@HDLDH AH H Ðf.UHAWAVAUATSHHhHP ;D81LaDDlDA;zI@A;HW;HW;H(u D;H,W;HA;Nw8EFEt/D0 E;^ w"E;NwEfEtI1H H=̿COCDUDUH=PDADH @@־ C1@1Ҿ H=ZCB ADH=CBADžaLP EoDX Aoh Aox Ao  Ao Ao Ao EoD EoDD EoTD Eo|D IH EoD IH A( fAYE1E1AAAAQfAEDž|W@D|DMC_fD;ffDD;vǃ0 EDAAEADž|EFTDA8EEDؙADHF\EșA% DDepEff(AA*^f/w Ef(ED$D9|EB|AAE8,$ExDXFLEșAAffD(AET$*D^fE(D_fD/DFEDED9|sEB|AAE8ExDXFLE#șAAfEfD(AEL$D*E^fE(E_fE/EFDUD9|EB|AAE8?7E.xDXFDEșAAfEf(AD*A^fA/fD(E_EGADUD9|QDeEAE8EExAƃDmE0șAAfA*^fA.AFʉMAAcAAAAAAAeAMAAAGAAAAAAAAnA3AAAAAAAHAAA(UHAVAUIATLeSIT$H L6H^HULHt MHwyHucA6ID$@uH]LH|H5m(I}HUHuHLjH}IL9t~>H [A\A]A^]ÐID$Ht@Hx,H{>H]HEHLH,=HEmH=P99H=K9;II HUHSHH9FtbHHH5YPHSHHHpH9t-H HxH{L@LCH0H@@HH[]Ðo@CH=%:8UHAWIAVH0HPIAUATSHHP HDž8ƅ@ƅ`HD8HDlHHDHHDžXH01HPHD; u D;B@ pLZ;Ju E;C FA;Ku E;C FA;K(uE;C,uE;K0 @FA;KLLH}I]H9t;H]HH5@HH>HLfHUHuLH}IMH9tT;H}LCL9tB;EH L tC1LpH kRLL K4RHE1H59H(LH5tCHdHLHUHuLIH}M]L9t:H}HCH9t:HpIT$H9t:AH H 1H(LLIFDH RLH5CHHL:HUHuLH}MML9t:H}LSL9t:HpIt$H9t9EH H LH RH(K[HDD1HLH5CH&HLHUHuL H}MEL9ty9H}HKH9tg9HpML$L9tQ9AH H H R1LLIFD H(LH5CHHLHUHuLlH}M]L9t8H}HCH9t8HpIT$H9t8EH L1H H(O @IFD H ƺR LH5CHHL]HUHuLH}MUL9t;8H}HsH9t)8HpM\$L9t8AH H H ERH(HLHDD1kLH5CHIHLHUHuL.H}MEL9t7H}LKL9t7HpIL$H9tt7EH L1L H RK4RHED3H(LH5CH HLHUHuLH}IEH9t6H}HSH9t6HpMD$L9t6AH H 1H(L LIFD H R-LH5CH HLHUHuLH}MUL9t^6H}HsH9tL6HpM\$L9t66AH L LH eRH(H@1HED LH5CHl HLHUHuLQH}MML9t5H}HKH9t5HpMT$L9t5AH L H ɷR1H4LHED3$H(LH5CH HLBHUHuLH}IEH9t 5H}HSH9t5HpMD$L9t4EH L1H H(OIIFD(H RPLH5CH. HLHUHuLH}IuH9t4H}L[L9to4HpID$H9tY4EH H H R1H(K<HDD:,LLH5CH HLHUHuLtH}MEL9t3H}LKL9t3HpMT$L9t3HH5Ў9LF9L烹hIELH5eCH HLuHUHuLH}IL9tS3H}HH9tA3HpIL9t,3LHPIL9t3LH0IL9t2HL[A\A]A^A_]E;C|E;E;tPE;E;E;t%D;JD;R @HHH5ZNVIIHIIHmIIHI&I0HIIHIIHIIH II)H6ILIVHcIyIHIH{I2IDHIHqIIHIHHIUH0 HHAWAVHPAUATISH D HHH]L-&HpI$HWHEIuHDžxHHUHUHEH HH}HLBMt_MHLMtSMQLMtGMZLMt;MsLMt/INLHt#HYHHtH{HHt HfDHUHHwHt`LFHMtTMHLMtHMQLMtnMoL*MLIuLnI]L*HHsLmLsHy*MIvLmI^LX*Ht{HsLmLkH;*Mt^IuLmMuL*MtAIvL}mMnL*Mt$IuL`mM}L)MHHPHH9t)HeD[A\A]A^A_]f.AE1DLo(MZLMMsLMINLHHHHH=,?&A$X I$H L5sLhM9HhLxMnLL9!HxI9MtI6I?LH'HhLpB(E$X EEYEI$8 fM$0 HDž@)0IHM)LHHH9 L?(HI$8 M$0 HHLHI~L@fl)0M9LMHL)H HHHtQHt)LMULMUI6IVHI] Mn L[HLIuIUHH I H{H;IuHIUHH I L9HSHHIuIUHLs M} IFLLIIu IWHIv0I^ Iv Iw HIW(HaMFPI^@MF@Iw@HIWHHBI^`Mo`L9nH8I$H H0A$Y HA$Z =H=tC#L8H0I9t)@H;HKH9%H L9uH0HtH%E$X EI$H @1H{H 9H=C:1$,H{ H{(DžHDEH0Ht{AHHDžL <=nuL1E侉H1ATLy9H :H= :#AZA[Hǃ0HsH0jE1jE111AXAAYHDž H L LALFMtA@LiHIL^HNIuIsHtFMuMsMeMcMtAD$IU IS I}(I{(HtGME0MC0IM8IK8HtAIu@Is@MuHMsHMtAFMePMcPIUXISXHtBI}`I{`MEhMChMtA@IMpIspI9IM)IJDHH+MHHEX H=CH9AAu+X HP :fH Ht1H=tCLeH]AI9LH)HHHH=930HHHHttHtUHt6LsMt)Anu!I6LVAn uILRHLsMt Ano HLsMt An HLsMt An HLsMt AnuI6LVAn  HLsMt#AnuMLAPAn  DHLsMt AnHI9LsMt AnHLsMt AnLsMt AnLs(Mt AnJLs8Mt An LsHMt AnLsXMt AnLshMt AnVHpI9GH]HtHpH0D[A\A]A^]ÃHHHHtlHtGHt MLMiLhMtAEHpIIL1L6LaLfMtAD$HHHHHyH~HtGHHLLLYL^MtACHHL)L.LqLvMtAFHHL!L&HQHVHtBHHH9H>LALFMtA@HHI9LLLiLnMtAELaHILvHNIt$IvHtFIT$IVI|$I~HtGMD$ MF M\$(M^(MtACMl$0Mn0IL$8IN8HtAIt$@Iv@IT$HIVHHtBI|$PI~PMD$XMFXMtA@M\$`M^`Ml$hMnhMtAEIL$pIvpI9 fHAHHHHtpHtGLsMt:A~DOENu)ILQAv VAV uMLAPfDHLsMtE^ACAFA]HLsMtAvVAVHLsMtA~DOENHLsMtE^ACAFAHLsMt:AvVAVu*MLAPE^ ACAF Af.HLsMt3A~DOENu"ILQAv VAV DHL9"LsMtE^ACAFAHLsMtAvVAVLsMtA~DOENELs(MtE^ACAFALs8MtAvVAVLsHMtA~DOEN[LsXMtE^ACAFA LshMtAvVAVHpL9D1 LMM1LH MaI9MtH=("AD$HP HtLP 1@ILPAn MLAR@MLAPAn WMLASHI6LVAn ILR DMLAQAn ILQ@ILPAn MLAR@MLAPAn cMLASTI6LVAn 'ILRDMLAQAn ILQ@MLAPE^ ACAF A)MLARfMLARA~ DOEN ILQILQAv VAV MLAPy@MLAPE^ ACAF A7MLAR(MLARA~ DOEN ILQILQAv VAV MLAP@MLAPE^ ACAF AMMLAR>MLARA~ DOEN ILQILPAn MLAR@13AD$HP fDMLARA~ DOEN ILQMLAQAn %ILQ@ILQAv VAV YMLAPJ@MLAPMLAS!MLAPAn {MLASlMLARYfMLARA~ DOEN ILQvILRrfILPAn MLAR@MLAPE^ ACAF A mEvdA9/H5O:HHLrH}LcL9tH5i9HѲHLFH}LkL9tTH5yi9H襲HLH}L[L9t(H5ki9HyHLH}HCH9t 1A*Hĸ[A\A]A^A_]D AxuAN`gfffAA)LeH]1L-B LH ׏RLLH5bh9HHLKWfDH5xh9H豱HL&H}HH9t4 1>DQDEEAgfffLLD$D)DkdE)DAH ,R1D)Aк`MbDD$H0L1H RH(ID)AкLPLH5~g9LLpHj9LLMLxHUI}HpM H9"LUHuM9vM\$L9HEI9LHKHPHMH0H9HuL@LELHHLLMHH@@H}LSL9t HpIL9t HPIL9t L(H0IL9tl H}IL9V WfDo@)ELf11LADI,IH}HH9t HpIL9t HPIL9t H(H0HH9t H}IL9t LIIIIH}HH9t\ H}IL9tJ LRIH}HH9t% L-If.DUHAUATSHLgMHIt$HFMMl$L MIuH$MMeL MIt$HMMl$L MIuHLMeLd Mt|It$HLMl$LE Mt]IuHLMeL( Mt@It$HLMl$L Mt!IuHhLMeLMH[A\A]]UHAWLAVAUIATISHI9D2D;v }KH_HHH9t'H\ HD;p HxIEIEH[A\A]A^A_]fDHW H9 HHD;p I}HEID@H(tLO DE9Q I\$HD2DL[AMtLۋK A9|L[E1MuHE1A9HNHNH[A\HA]A^A_]HH1[A\A]A^A_]@H1L[A\A]A^A_]@Ml$MuIUHtbIEE E9|IU1fDHH1[A\A]A^A_]@LHUI9\$tHHuHߋH HD6/DL@u1E9HNINYML9tLLD@ If.I\$HuF@HCHtHËK A9|HC1H@u1A9HNHNLI9\$HHڋH Hf.UHATSHHL`Lht#)p)M)U)])e)m)u)}H HEH@Ld$H8H(IHRDž( LH0Dž,0%HKHcH u&E$$DcHsH1He[A\]fOI$ALKIHSK|J|L)I)̉1E1DQKAAK9 EAtnAt[AtGAt4At At MDLvIIHuMHPHLHH8FLHff.H)HHHUHHAWHVAVHAUILI?ATISIK\mHHHHHHHPH`HHH@ILcCE1A+DDxHLLohHsLHHDHN<LL8DDDDL/LLዕHHMHo8PDHTLLHLLXMD]HHLHMHH[A\A]A^A_]@ff.@UHAVAULIATILSHHHDM9t LLsDL`LL)L^DHLLHH1H|H[A\A]A^]ff.1w HCff.zt(~6ZtdEDYf.P t\VEÐff.U1HATIH=CSH>HuBHI|$1H[ID$H9t*HtH=t)CI|$HteI\$1[A\]CI|$DUHAWAVAUATISHx`Lx`t&Dž,,H[A\A]A^A_]@I|$XI\$PHtH=)G{tuHnHML$XI|$PL MtH=|AALLH=C,L0MLL5oZ>L1I} LnM]1I LI]E_I}<H1H{L¾ AHS LAW1H{jHK1Ҿ LH{AO@Lk1Ҿ LH{ Eo Hs 1H{(LAw lH{(Lk0IAL9HHLAЃ}L MLI|$XMl$PHtH=tGGmA}\AtvGH=vdHf.Gf.H IhH}DDž, DfAAfDL _L=DGLE1ALIOAWA7@a>L@LPLMd$)0(EIcWE1A+H@LLLXDPD(0D(THHDELDMIwL LeHH=IUI;LIwLL LHcVEOLLH@LXII DPD(0D(THHDULD]HvHHH<M;.1 H[KH[;L[+L|HPH`(%|_>-_>H@IE1H(LnL0) E $IcT$E1A+H(LL(DP THLXHELMIt$LLH@H;H@H0PSMGLL0M\$LH3M9A|$IcSLI( I LXPH(HTHHuL}IsH@H ;H@H0P+S0M9>1II)IUHAWAVAUIATISHH(HHHHMHUIIHLAUIIK@HHp/J/O/IHuHSE]LMMDpfDE/aMIE/IpIA/IApA/pLA/vrLA/v]pLA/vHDLE/v2DpLE/vDLE/EfM9s3LLLM RE^LMDpIDLLL MI)IMM7LHM)LLHIH)H-IHILMI)IMIIItfItKIt0ItMHLLkIHLLVIHLLAIHLL,IHLLIHLLILLHLH)HI$HHI$HHI$HHI$HHI$HH{I$HHhI$HI HNNf//wHHOfH([A\A]A^A_]ÐIHZR֯UfHAWAVAUATSH HHD )PHDž`I9:MMuH 1[A\A]A^A_]fIi` IHHHgLXLPH@M9\HKZRLL)H` HHHHtvHt`HtIHt2HtHpMLI` APMLI` AQMLI` ARMLI` ASILI` PILI` RM9ILQI` I` VMIAPM %I %AQM1I1ARM=I=ASI@JI@JPIVIVIcRM9lLPMtLOlmH@~@HpIHHHPHDž(MLH`flLMHXLH0HLLHLp)P@LfE1f)MIB) )0HDž@DžHfDL)Pƅ`LHHtH=<@HL2HzLpHxHtH=rGD HHLLH0]HxHtlHHt[LXL;`'L5LaINIIMxIMAuD|H5EE DHEMDM]EUAE AU$A}(IuAM)LME0LMM8MtH= AALMU@LM]HMtH=g ACHAEPHIUXHI@I}`HI}pIMhHIPADž@DIDžHIXE0DIDž`E4HH$HHI8HV3HLRMtjMZLMt^IsLHtRHNHHtFHyHHt:LGHMt.MHLMt"MQLMtLLRMuf.IPHLZMteIsLHtYHNHHtMHyHHtALGHMt5MHLMt)MQLMtMZLMtLLZMuDIXHIHI`HIhHIpHtH= AL0MvH=cMxEL_M8 EAAAIAAIMxAAAAAMML6D HHD L@!DD$D D(H(L8H08@D[AHsCJc4HfoCf fo5C))P)`HDžLp fDoPfDo`HDDHLLHؿHHLHCHLsHH;L6hMLhd ~CzCA+HAXAYHtLHHtILfHHDž@)I3)) )0Dž<H H51Le1HPfo9fo CHfLNfAHLBXLLHHHLL ZRJ(LBHƂHH@LLLƂ*HHLL8HH€HLƂJHhxJLRL`BL9HLHDMHHLtIpE1I?=>>HfLHMMIHL(0f.D(EHIĠIǀI9]v`ED$EtLH LLH<*u<DfD/vfEEZELHL=ML=KIsL9H=7H8>HI>I~HH9tIL I~HIFXIMH9tM`L9M`MFM9$LI|$HIt$XIM$H9tQI$`I$`LWM9H}I|$HXHI$`H9tI$M$LpM9L:I$IXIM$L9tI$ M$ HNL9+H=IXHI$ I$hL9tI$M$LJM9HI$IXHI$L9tTHHLLXMEHDž8HDž@L HHpLPLHILML,L E1LL~ H H@L8H( )@]HHA_HtWHĸ1[A\A]A^A_]LP(5>PHIT$+H`DžTHHXEEH^I_@UHAWAVAUATSHHHWPHGXHhHhHtH=@HhHҾH=ێC|H hH1H hH=CtMDžgH(hHt&HhHtgH[A\A]A^A_]Ã@`HLi+LM1( 4>I|$HM4>A$M$AD$I|$HI$HA$hA$xADŽ$ADŽ$I$HA$A$A+I{ALACI{HILAhAxAǃAǃIHILAAAǃAǃIHILAhAxAǃAǃIHILAAAǃAǃIHILAhAxAǃAǃIHI LAAIÀ AǃAǃIHAKACM9`LhAHDžhMMt#H H5NLE1HIADH=z:AADH=CMEH(h1HhEO zDH hHXhHPhHtH=:PGLhHPhdLLHg*H=ICLE1HHgLH%HhAIM$EhD.B,>LgIIt?LHIL9hZEIŀD. +>LHIL9hEIŀD.+>LHCIL9hM9EIŀD.e+>LHIVH9hEID.%&+>HMFL9hv\EhID.-*>UHIL9hv$EIŀD.5*> LhAztAt8LgHHhIL0hHt萊H(hTGE1A11Ҿ*H묃GLMHgLIƀL9gHgLh[E1A11Ҿ'H裹KAm4]IRIRIRIRISL%f.1f.1f.f.Df.Df.DHHWHHOXHHH9t H鍺D{f.(fD(fDfDH*UH;5ȻHATISt H~H58H9t1ۀ?*t葾uI\$H[A\]UHAUMATISHHXtbYH=߀C|1HH=CZuRIu1It$ H[A\A]]à H=YC&u21HH=VCt$H[A\A]]@H[A\A]]AEAD$H1[A\A]]f.UHAVMAUIATMSHˁLM H=C@@־pHI} AMH E@dA$AHEuI@tCIL9Eu-@tCIL9Eut CIMtM1[A\A]A^][A\A]A^]fH=~C薵uMt-1HH=~CsuIEI$Mt[1A\IA]A^]fHEtE1TfD@uRE1@tIL9 E-@tIL9 EHHIE1AHEtf.UHAVIAUIATMSLÁXYueH=}CkuWMt&1IH=}CHu$Iu I4$1HtH[A\A]A^]D[A\A]A^]f[A\A]A^]f H=}CuMt1IH==}CóuAEA$vfUHAVAUATSHHHL'轵MM,$L訵MtsMuL藵MtbM.L臵MtRMeLvMtAM,$LeMt0MuLTMtM&LDLMsHCH;1H0H薰H{HCHCH9t [A\A]A^][A\A]A^]HLOHcVILO+H1LHHLohAhDxExHv逳HY3HHHHt Ԃ@f.DUHSHHH3HHHHt蘂HH߾ []ŴDHUHAUATISHHHsLLkHMIuLI]L˳HHsLLkH誳MIuLuI]L艳HtxHsLXLkHlMt[IuL;I]LOHt>HsLLkH2Mt!IuLI]LHH[A\A]]Ðf.DUHAWIAVIAUATISHH}ȿPHM$H 1IT$0IAL$8AD$ HsI|$@E $IU0Iu(MD$HIt$AE fAM8I}@MEHEMIEIEMuHtH}LL^IEMd$MML{P苲ET$ HDP E\$0DX0AD$4C4AT$8S8AL$9L{(K9It$@Hs@I|$HH{HE$HCDHCI^LsIt$HtHMH}HHCMd$IMcHL[A\A]A^A_]H^H}LR荶I5Lmf.UHAWIHKZR֯AVIAUATISHXH_L/H}HM)L)HHHH4HuH9~HEH}EHELbH#MGEOM_ AG(LUIIw0IO8HUHLuMFfENMM^ fAF(IVIv0IN8HtH=7AI@MGHI~@MFHMtH=A@EOPMWXI~pIwpAog`E0I@ENPA4MVXAf`HIHE0A4Adž@IdžHIPIXIdž`H I8HMH}HLBMt]MHLMtQMQLMtEIrLHt9HNHHt-HyHHt!L_HMtMCLMt L@IPHLJMt]MQLMtQIrLHtEHNHHt9HyHHt-L_HMt!MCLMtMHLMt L@M`IXIHM`IhIpIhIpHtH=CFL-AI0 EEAIL]IAEAEEMxAIAIEMf DBMIDJB M8HAE L(E A!D8M1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJLc{XEtwAA  H CE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HC1E1AIfDL-FsCA(Hc΃LcIcDGLA)A(ENE1EtAA A%MDEoH5tC1HLL-BfIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJ8fDohCfDoX8uHHcHHHfDo]8JfDoOhCM1LIH9u*M9uHIwpeuM?IMuHL@D1LHE~DHLAJD[XEtwA@A  L=CA1E1MHDžf)McRIMMc"ARAt8B9@~McR L=IC1@AML-CA(Hc΃LcIcDGLA)A(ENE1EtAAAL|ELC1HM,H=fDIcDLHHHHA9LED$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJM1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJLc{XEtwAA  HCE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @H)C1E1AIfDL-CA(Hc΃LcIcDGLA)A(ENE1EtAA AMDEoH5vC1HLL-BfIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJ8fDoKCfDoX8uHHcHHHfDo]8JfDoOKCDDAс|AAˁLJAIDAEMAD1@E1AE1AƃDLDDDLcAu6Hc@HLLcAt"FD9H}Hc@ HLLcAuxL-0CHcHcIcTETA(A)A(ENE1tA1ELDEJIE1LILIJcLHLKIE9IAu1ۃHt HPAt{t[t;tMM1LIH9u*M9uHIwpUuM?IMuHL@D1LHE~DHLAJ谸Lc{XEtwAA  HDE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HYD1E1AIfDL-CA(Hc΃LcIcDGLA)A(ENE1EtAA A"MDEoH5&C1HLL-RfIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwp5uM?IMuHL@D1LHE~DHLAJ萪D[XEtwAA  HDAHA1IE1HDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HYD1AHAIfDDL-vDA(Hc΃LcIcDGLA)A(ENE1EtAAEO|ErH5D1HLL-DIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwp5uM?IMuHL@D1LHE~DHLAJ萛Lc{XEtwAA  H<-DE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @H,D1E1AIfDL-vDA(Hc΃LcIcDGLA)A(ENE1EtAA A&MDEoH5fD1HLL-vfIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJxL1H5*xILHLMLM:M@HME1HM(MuFM?Mt>M1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJ`Lc{XEtwAA  H|DE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @H)|D1E1AIfDL-iDA(Hc΃LcIcDGLA)A(ENE1EtAA A#MDEoH56kD1HLL-"sfIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpruM?IMuHL@D1LHE~DHLAJ@wD[XEtwAA  L%D1E1MfE1HDž)@McRIMIcEzt)D9@~McR fL%ID1MfDL-DA(Hc΃LcIcDGLA)A(ENE1EtAAAL<ELD1HM,H=2ifIcDLHHHHA9LED$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJLIIIIIc MIILIL1LHIHIMc<$LIHLLH1L9HMDIHMcMcrHIIIIML1McJHHHHHHLH1IcJIIIIMIML1IHIHIIIL1L9uLH1LII4HGL&DMIM$)M$$MM$1LII9L9uHIt$p'juIc|$xMHbDHHHD)LcڃJݐA9Aƒ'AHEILD9 uDyD;uE~LYLWA3A92uEwMfAAZA9[uIItwIt^ItEIt,ItHE|E9{ME4HE;t:AHA;\'EM1LIH9u*M9uHIwpduM?IMuHL@D1LHE~DHLAJ`hLc{XEugH D1E1AIHDžf)%f.Mcd$IIMc<$ET$AtUF9@~Mcd$ @AiA  A A&HD1E1E1AIoDL-DA(Hc΃LcIcDGLA)A(ENE1EtA AA(A?MDEuH5|D1HLL-_IcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpUuM?IMuHL@D1LHE~DHLAJYLc{XEugH`D1E1AIHDžf)%f.Mcd$IIMc<$ET$AtUF9@~Mcd$ @AiA  A A&HD1E1E1AIoDL-DA(Hc΃LcIcDGLA)A(ENE1EtA AA(A=MDEuH5|D1HLL-(ZIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpGuM?IMuHL@D1LHE~DHLAJ`KD[XEtwAHA  L=GEA1E1MHDžf)McRIMMc"ARAt8B9@~McR L=E1HAML-gEA(Hc΃LcIcDGLA)A(ENE1EtAAAL|ELzE1HM,H=QfDIcDLHHHHA9LED$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJuIc|$xMHKDHHHD1LcڃJݐA9Aƒ'AHEILD9 uDyD;uE~LYLWA3A92uEwMfAAZA9[uIItwIt^ItEIt,ItHE|E9{ME4HE;t:AHA;\'EM1LIH9u*M9uHIwp%8uM?IMuHL@D1LHE~DHLAJIHt]L)HHHcBA f.@U1HAWAVLAUATISH`8HhHxLωpH~RLH0ED$lAhAQAt$TDžDEAA D)DiEDEAAD)DkœEADHIHIIpMAIE% =DDAсAAˁmAIDAEMAD1@E1AE1AƃDLDDDLcAu6Hc@HLLcAt"FD9H}Hc@ HLLcAuxL-MEHcHcIcTETA(A)A(ENE1tA3CLDEJIE1LILcEIJcLHLKIE9IAu1ۃHt HPAt{t[t;tMM1LIH9u*M9uHIwp!uM?IMuHL@D1LHE~DHLAJ%Lc{XEugHE1E1AIHDžf)%f.Mcd$IIMc<$ET$AtUF9@~Mcd$ @AiA  A A&HE1E1E1AIoDL-fEA(Hc΃LcIcDGLA)A(ENE1EtA AA)A?MDEuH5,iE1HLL-FIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJpD[XEtwAHA  L=wEA1E1MHDžf)McRIMMc"ARAt8B9@~McR L=E1HAML-EA(Hc΃LcIcDGLA)A(ENE1EtAAAL|ELE1HM,H==fDIcDLHHHHA9LED$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJM1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJpLc[XEugH0E1E1AIHDžf)"f.McIIMcEgAthF9@~Mc ANA  A HE1AAIAAnE1fDL-EA(Hc΃LcIcDGLA)A(ENE1EtA AA/AEMDEuH5E1HLL-4IcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJBDfEpfD~D9#L=EA`AAI fDo7fDoB1fDo7fDoBfDo7vHHcHHHfDo7KfDoB=HLfDoOBA3f.DU1HAWAVLAUATISHpHhHxLωpH~RLH*ED$lAhAQAt$TDžDEAA D)DiEDEAAD)DkœEADHIHI@IjAI E%ODDAсAAˁVAIDAEMAD1@E1AE1AƃDLDDDLcAu6Hc@HLLcAt"FD9H}Hc@ HLLcAuxL-EHcHcIcTETA(A)A(ENE1tA:LLDEJI`E1LIL32IJcLHLKIE9IAu1ۃHt HPAt{t[t;tM'fDHHt\H)HHIc tJfDHHLcAtYC9WHcIHHLcAuLcyAt MIML?AHE9|LxADŽ$@2HcI fHc@ fo|BAfpAf~D9'gfo|Bfo(7E1foF7fo|Bfob7fo7fo~|Bfo4|BAUHAWAVHAUE1ATSHHXooVHo^ of0on@ovPHo~`HppHHy7)))))) )0LLLcLcXHHLcxHHLLc@ I1MMIIMIMLcXM1MMIIMIMLcxM1LLHHHHLLc@I1MMIIMIMM1MMIIMHIMM1LLHHHHLI1H9"L 8L1H5 8ILHLM|M:MpHME1HM(MuFM?Mt>M1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJLc[XEugH F1E1AIHDžf)"f.McIIMcEgAthF9@~Mc ANA  A Ha F1AAIAAnE1fDL-F FA(Hc΃LcIcDGLA)A(ENE1EtA AA&A7MDEuH5F1HLL-x2IcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpEuM?IMuHL@D1LHE~DHLAJsXty  L%7F1E1MfE1HDž)McRIMIcEzt)D9@~McR fL%i7FE1M뙐DL-5FA(Hc΃LcIcDGLA)A(ENE1EtAAAL|EL5F1HM,H=(DIcDLHHHHA9LED$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJM1LIH9u*M9uHIwpeuM?IMuHL@D1LHE~DHLAJLccXEugL-8FE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$VAcu L- 8FE1E11AMeEH=*FA(IcAMcHcFA)A(ENE1t"\  @DO|[QEHۿE1ILHH=!L KcLHHJIE9LAt$E1Mt LAAAtt^t=tJHtMcAJIJQBfEpfD~9fDo7L=;FAAAwM@fDoPBA6l1_fDo7fDoPBxfDo7jHHcHHHfDo7?fDoPB1L=CFAE1AMHLfDoPBAf.fUHAWAVHAUE1ATSHHXooVHo^ of0on@ovPHo~`HppHHy7)))))) )0LLLcLcXHHLcxHHLLc@ I1MMIIMIMLcXM1MMIIMIMLcxM1LLHHHHLLc@I1MMIIMIMM1MMIIMHIMM1LLHHHHLI1H9"L (L1H5(ILHLMM:MHME1HM(MuFM?Mt>M1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJLccXEugL-FE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$VAcu L-FE1E11AMeEH=yFA(IcAMcHcFA)A(ENE1t"\  @DO|[AEH }FE1HL,H= DKcDLHHJIE9H1ED$E1AHt HAAAEAAAAt`At>AtJHtMcAJIJM1LIH9u*M9uHIwp襲uM?IMuHL@D1LHE~DHLAJLccXEugL-JGE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$FAce L-mIGE1E11AMeEH=FA(IcAMcHcFA)A(ENE1t$L  AFSLDELG1HM,H=@IcDLHHHHA9LEL$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJM1LIH9u*M9uHIwpգuM?IMuHL@D1LHE~DHLAJ0D[XEugL-ИGE1A ALHDžf)fDHcRHLLc"DzAthF9@~HcR AA  AsL-QGA LGAcI E1AE1f@EH=GA(IcAMcHcFA)A(ENE1EtA- A@DN<EH]GE1HL,H=KcDLHHJIE9H1ED$E1AHt HAAAEAAAAt`At>AtJHtMcAJIJAspliAAHLfDo#BA fUHAWAVHAUE1ATSHHXooVHo^ of0on@ovPHo~`HppHHy7)))))) )0LLLcLcXHHLcxHHLLc@ I1MMIIMIMLcXM1MMIIMIMLcxM1LLHHHHLLc@I1MMIIMIMM1MMIIMHIMM1LLHHHHLI1H9"L ~L1H5jILHLMM:MHME1HM(MuFM?Mt>M1LIH9u*M9uHIwp%uM?IMuHL@D1LHE~DHLAJ耙LccXEugL-@GE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$FAce L-GE1E11AMeEH=GA(IcAMcHcFA)A(ENE1t$L  A5@LDELG1HM,H=4@IcDLHHHHA9LEL$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJL1H5*ILHLMM:MHME1HM(MuFM?Mt>M1LIH9u*M9uHIwp|uM?IMuHL@D1LHE~DHLAJLccXEugL-HE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$fAc L--HE1E11AMeEH=HA(IcAMcHcFA)A(ENE1t$l  ASYLDEL臿E1H@IHH=J M,fDKcDLHHJIE9H1ED$E1AHt HAAAEAAAAt`At>AtJHtMcAJIJM1LIH9u*M9uHIwpmuM?IMuHL@D1LHE~DHLAJrLccXEugL-HE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$FAce L-]HE1E11AMeEH=`HA(IcAMcHcFA)A(ENE1t$L  AFLLDELXdH1HM,H=$ @IcDLHHHHA9LEL$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJH wHHHtbL)HHIctPfDHHHct!DXD9Hc@HHHcuHcPtLHHHHD9|M}EuELLJHNL7lE$@HHX[A\A]A^A_]fDHc@ GE1L&HH5?HxHLHHt]H)HHIcM1LIH9u*M9uHIwpEWuM?IMuHL@D1LHE~DHLAJ[LccXEugL-gIE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$FAce L-MgIE1E11AMeEH=&#IA(IcAMcHcFA)A(ENE1t$L  AHVLDEL&I1HM,H=4 @IcDLHHHHA9LEL$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJ7L=ohIAAA`M fDoAA0~1_fDo>7fDoAxfDo>7jHHcHHHfDo>7?fDoA1L=rIAE1AMHLfDo AA f.fUHAWAVHAUE1ATSHHXooVHo^ of0on@ovPHo~`HppHHy7)))))) )0LLLcLcXHHLcxHHLLc@ I1MMIIMIMLcXM1MMIIMIMLcxM1LLHHHHLLc@I1MMIIMIMM1MMIIMHIMM1LLHHHHLI1H9"L N L1H5: ILHLMM:MHME1HM(MuFM?Mt>M1LIH9u*M9uHIwpuHuM?IMuHL@D1LHE~DHLAJLD[XEugL-гIE1A ALHDžf)fDHcRHLLc"DzAthF9@~HcR ArA  AsL-QIA L7Ac9 E1AE1f@EH=IA(IcAMcHcFA)A(ENE1EtA A@DO|EHIE1HL,H=+KcD LHHJIE9H1ED$E1AHt HAAAEAAAAt`At>AtJHtMcAJIJAspliAA'HLfDoiAA fUHAWAVHAUE1ATSHHXooVHo^ of0on@ovPHo~`HppHHy7)))))) )0LLLcLcXHHLcxHHLLc@ I1MMIIMIMLcXM1MMIIMIMLcxM1LLHHHHLLc@I1MMIIMIMM1MMIIMHIMM1LLHHHHLI1H9"L L1H5ILHLMM:MHME1HM(MuFM?Mt>M1LIH9u*M9uHIwp9uM?IMuHL@D1LHE~DHLAJ0>LccXEugL-IE11AMHDžf)"f.McIMMc'EWAthF9@~Mc AA  At$FAce L-IE1E11AMeEH=IA(IcAMcHcFA)A(ENE1t$L  A4@LDELI1HM,H=@IcDLHHHHA9LEL$E1AMt LAAAEAAAAt`At>AtJHtIcAHIJM1LIH9u*M9uHIwp!uM?IMuHL@D1LHE~DHLAJp%Lc{XEtwAA  HWJE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HWJ1E1AIfDL-vJA(Hc΃LcIcDGLA)A(ENE1EtAA AHMDEoH5fJ1HLL-fIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJPLc{XEtwAA  HܷJE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HyJ1E1AIfDL-JA(Hc΃LcIcDGLA)A(ENE1EtAAA:MDEoH5J1HLL-fIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJ@B9}.B9}'B9} B9}B9}B9} B9LA90E}hHHA9fD1E}DtAEA)A9HJHPIN1DtDEAHHIN1HpHPE1LQJHL HJL9fHHt`L)HHIctNfDHHLc8At!HC9 CHc@HHLc8AuLcxAt MIML?AHE9DcLxAJINLdA@HxHh[A\A]A^A_]@HE1LcJH5HJL NfDHHt\H)HHIc tJfDHHLcAtYC9WHcIHHLcAuLcyAt MIML?AHE9LxADŽ$@2HcI fHc@ fo?ADfpf~A98hfoAfo61fo6foAfo6fo6foAfoA@UHAWAVHAUE1ATSHHXooVHo^ of0on@ovPHo~`HppHHy7)))))) )0LLLcLcXHHLcxHHLLc@ I1MMIIMIMLcXM1MMIIMIMLcxM1LLHHHHLLc@I1MMIIMIMM1MMIIMHIMM1LLHHHHLI1H9"L L1H5ILHLMLM:M@HME1HM(MuFM?Mt>M1LIH9u*M9uHIwp%uM?IMuHL@D1LHE~DHLAJLc{XEtwAA  HlKE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @H K1E1AIfDL-JA(Hc΃LcIcDGLA)A(ENE1EtAAA5MDEoH5J1HLL-fIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJL1H5*ILHLMLM:M@HME1HM(MuFM?Mt>M1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJ`D[XEtwAA  H,LKA A1IE1HDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HKK1A AIfDDL-6KA(Hc΃LcIcDGLA)A(ENE1EtAA AMDEoH5V7K1HLL-BfIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJM1LIH9u*M9uHIwpuM?IMuHL@D1LHE~DHLAJ@Lc{XEtwAA  HpKE11E1AIHDžf)Mcd$IIMc<$ET$At5F9@~Mcd$ @HIpK1E1AIfDL-]KA(Hc΃LcIcDGLA)A(ENE1EtAA A$MDEoH5^K1HLL-fIcLHLHHA9LA|$E1Mt LAAAtt^t=tNMtIcALIJHtIcAHIJbADfEpfD~D9#L%(oKAKAAI$)fDo6fDoaA1fDo6fDoaAfDo6uHHcHHHfDo6JfDoaAIMHDžMH~Af.HHHh[A\A]A^A_]HAH#DžHupLArDFEBuLIULRHAEM ApHL7AV]DHžHHtƃ4fH~DžDž f.''rWxf.bR5T,' A -@f.q~6p6*h*.Mn b 0Q':@iB*oB: Mc $L1LLII4IHHHLA1,f.HH HtLA1LII9uM9uHHZfLEK AIAK =I/LW"L*IIM+LIrDH?Htf.DUHAVAUATSHHHL']MM,$LHMtsMuL7MtbM.L'MtRMeLMtAM,$LMt0MuLMtM&LLMsHCH;1H0H6H{HCHCH9t [A\A]A^]鐿[A\A]A^]LL;GBUHAWAVH`LPAUM~ATE1SHHH((%Y-;-e-;H0)@IL;aL8L;@ECAPEArLPH5:LHLgcfL5H5rLH)III?M9L HH59ILH)IILI9LMD(5 ;HPE1D= ;H`HL~D)DHAIItGEH׹+LDžTDPLXHHDuD}詼AC4+1H(DžTPHLXHHEMKIG +1H(DžTHDPLXHHu}IL;G+1H(DžTHDPLXHHem脻I+1GHDžT(LXHDPHHU]'CTH+1D(DDžTHPLXHHDEDMʺGDH+1D(DDžTHDPLXHHDUD]lIL;~fDL5H5LH)II I?M97 藯L-XH5IILH)IILI9 LMD(%;HPE1D-;L`HL~D)DLA2IItLAL߹+LHHDžTPLXDD4AC4+1HD(DžTDPHLXHHDD̸IG+1H(DžTHDPHHLXiIL; G +1H(DžTHDPHHLXI+1HGDžT(LXHDPHH薷HG\+1(DžTHDPHHLX6CTH+1D(DDžTHPHHLXDDӶIL;jDHPH5HPH;X(; ;E1L`LPL)M~FH1L+(HHDPDžTLXHPHXIH)HL9wRfHPH5"HPH;X)LD(5;E1D=;LLD)M~DFH1L+(HHDDžL8H HPLXII)IM9wjf.L5H5LH)HHH?H9'LhH5YILH)IILI9LM1(5;=;E1HLHL~)LA,IItJALLDž+HHL8HʳAG+1H(DžHDHHL8HeICH+1(DžHHHL8HIL;C4+1HD(DžDHLHHD8DH萲I+1HGDžD(HLDDHHD8DH)HGL+1D(HDžDDHHLD8DHűHGT+1D(HDžDDHHLD8DHaIL;^HPH5ک%HPH;XD(Y;L`E1DZ;LPLD)M~DB4+1HD(DžTDPLHHLXDD肰HPLXII)IM9wHPH5J5HPH9XL`D(b;E1D j;LLPD)M~DFH1L+D(DHHDPDžTLXDD葯HPHXIH)HL9wfDHPH5ZEHPH;XH(%s;E1-|;HL)M~FH1L+(HHDDžL8H襮HPLXII)IM9wfLPH5LZHLHPHf.LPH5LHLDL9H1ŪEl$ EuEt$ DH蠪bH萪L耪ZHpRH`BLPH5jLrHLfLPH5"LJHLf.LPH5LHLLPH5LLHLc蟛蚛蕛萛苛HHPHtߡMtL2pHڪHHLf.Dtkt..HtHHt=H.D*Ht#HtXH*DfD.f.'HtHtH'DfD'f*f.f.UHAWIAVAUATSHHGPLgXHXM9HZIL$HHXH1HHHHX7H=UKITHUL-;HH1H; L1Ҿ LsLH{躝1I~ L蘝1I~ Lvn1I~ LTL1I~  L2*1I~( LI^0H9HHXfoƅ)fofo0ƍ ƕ@~foP)Ɲ`fopfomemfou)u))))-DD H=*TKD/u+IcDAAEDžT MTHĘ[A\A]A^A_]DAD$HXrDžTHu^AD$pAt$uM,$LAUHtsA\$ uM$LAP}f.HIIL$HtPHXDžT.A\$ DsEt$ AADAEDAAEEDAA 6A@WADžhHDž`]KDlH HpH`E1ɉLA`5E1A11҉LDH`E1ɉLAHDž`fo=QK)`~9 ~`@XH SHDž`DžhDlHDžp .HDž`DžhDlH HDž`H DžhDlADlH HDž`DžhDl-ImMf.W1;VLN 9O O$DN$IL9DDEB M9AEA9uWtYD^(D9_(uHtJDN,D9O,u9t;F09G0u9t.DV4D9W4u*tDF8D9G8utv<9w<fD1HcW$ODHt1uXDOAAdHLMcP Icp@It 1H9u,IAA8HLMcC IcK@It1H9tIAAHLMcZ Icr@It 1H9uIAAHH LcA LcQ@It 1L9uIAAHLIcK Ics@Ht1H9tHAAHLMcB McZ@It1L9DIAAtTHH LcQ Hcq@It1H9IAAt'McNIcs EC@HtIc1H9Hփ Hc@H9!ЃH=4.@HXKtHtHH H@HDf.UHAVAUATSH9~ HH9 HH)H)HIHH)IHHH)H9V@II)L9H LJ4MJILKML9ADMXIM11IMAIIItdItDIt$I& o oH Ho oH  Ho, o$H$ ,Ho4 o<H< 4HDo Do HD DHDo DoHD DHI9Do$ Do,HD, Do|D$Dot D| oT DtoD T o\0D oL 0\ 0od@L0ol @d @o|Pl@ot P| PDoL`tPDoD `DL `Do\pDD`DoT pD\ pDTpHI93MINN LM9t=E1DIUED6I9~(AID^IEYNM9~EiDvEqDnJHHHcHH)II)L9tL IJ J4II)HMMiI)MM9I)M9ADrHwHdIIL1IE1MAIIItjItHIt&IAo o IA HAo,o$ IA$, HAo4o< IA<4 HEoDo IE D HEoDo IED HEo$Do, IE,D$ HM9Eo4Do< IE<oT D4 AoDATo\ D AoLA\od L AolAdo| l AotA|DoL t EoDELDo\ DD EoTE\Dol DT EodElDd HM9+HHIIIO,2LH9t>AuDZLKE]rL9~&AMDrHEuJH9~A]rAuZHIHIHHLLfL^I)LKLHL9L9ADIHO1IIIIVHHHHHtoHtSHt7HtDo#Do.D+D&Do4Do<D<D4HooHo o Ho,o$$,Ho4o<<4HDoDo D DHL9IIN$N#IL9tDA;E$MKEA<$L9t-ESEt$ISEsET$H9tAsAD$ACAt$L$[LA\A]A^]ME1AIItlItRIt8ItIB F,F,B IF4F F F4IFBBFIB F,F,B IF4F F F4IFBBFIM9B F,MsISF,B F FFF MsD,D, F ISFFF MsD,D, F ISFFF MsID,D, F FFF M9]ILE1AIIt|It^It@It IYrHHI1DiDZHHIDD*DIZHHID qDjHHID)2DIDZHHIDD HH2I1L9DiDJH H IDIDZDjYDYDjZqDiZrDIYDZ DJq DY DJr DiDIrDjYqZD)DDD*L9{rLqDo3Do>D;D6AooAHA@DADDJEZIJHAEJD]I[LA\A]A^]I[LA\A]A^]DoDoDDolDDodDlDo| DdDot D| oT0Dt oD0T0o\@D0oL@\@odPL@olPdPo|`lPot`|`DoLpt`DoDpDLpDDpHL97XfL,HsD3N+IUL9tHLFt+L[A\A]A^]LFt Ht H{H!D3L[A\A]A^]HIIH)HHHHHHthHtLHt0HtD+D&L[LND#D.EEIIECEQE3AIIASEqAA IIAKAAE+E!IIEcEiEEIIECEQAE3IIASEqL9A AI I AKEaAAEkEcEAEiESECAQEQEsASAIEqACAKEaAAEkEcEAEiESECAQEQEsASEqL9qHOff.UHAWMAVMAUIATASHHU1HH=@Kt1AH=@KR1҃}H=5AK0hA H=hAKƒ}  :ủ3EM6A}{MEDC$AEMDKEVDS(AE]D[ AVS,MAAM KAv s0MzAEEDCENDK4MtEWDSLAt]E]D[AVS8MtAG CPAtAW(92D9'AE$AgEU(AG D9AO,99DAE(A+EE,EODD9AW09D9DAU,AAu0EWD9AG49|D9qAE0AEE4EODD9KAW89?D94DAU4AtwAu8EWD9AG<9D9AE8At?AUUHAWAVLuAUATSHHhLcofo g6fo $g6I)ELK.)MHHEHUMIL%w IJ<L规HtHuILHLHEiULmLLuD{EgMcJc|HcL@ELcT AGIʃ~HLc\NcL Jct@It1H9:HIAGHHHcTLcl LcD@It1I9LIAGHLcdJc| Nct@Ht1I9LHAGHLcTJct Nc\@Ht1I9LHAGHLcLNcD JcT@It1H9|fHIAGtHLclNct Ncd@It1I9|4LIAAAMcJc|| LcT@tI9Hh[A\A]A^A_]L%uI8L}LH?ILHH<IH}M>ILEH8HHIH}M>ILMH8 HHLL]HLpHM<HxL FHuHLELEHUIHxLLI)HICLpL]L}L+}MILEI8ILULHNLpO<LxLzEHuHLkEH}ILHxHpIHHxM)HHHEIBLxL]LEHMLILLLUBLUL+mMIL}I8IN,MO<*IL]I8:MLxLHILUIO,LELDHLLDHMH}ILxLLI)HI3BLULmM)LHH}I8IHLLxJ M,HMLDHuHL DHUHMILLIHM)IALxHMLELIHULLUALULEHMILHULtAE1G@Hh[A\A]A^A_]@LmM9tM~M9tLeM.DALLL)K<|DuIM9Ic7Hc}IDD@D9D@|McWIWLF;D@LcZBHBLF;D@HcxH‰HLHD;D@LʉzMcQF;D@LcHHPDPHHF;D@~mLcXHDHLPF;D@~WLcHLDXHHF;D@~ALcXHDHLPF;D@~+LcHDXHHLLF;D@~H?LD2LeLmM9dMzM9WLeMLu6M9tLALL)K< zE4$IM9jIcMc$IDL@F9L@|IcIWHD9L@.HcBJLZHD;L@IcKLAsMSD;L@L҉JIczD;L@IcKISA{MSD;L@Ic{LAKMCD;L@IcKLA{MSD;L@Ic{LAKMCD;L@A{MSMc[LLF;L@hL*M9M~M9LeMILLm/LLL)I< IyDmIL9 McHcuMCL@A9L@|McGIWLC;L@HczBLRHA;L@McZLABMJC;L@LDZMcAC;L@McJIREBIBC;L@~lIczHEJMBA;L@~VMcJLAzIBC;L@~@IczHEJMBA;L@~*AzMJMcRLLC;L@~L=LfDD*LDD2MLuLeILmLMLe?L]M9UMoM9HLxMLpILLU1M9tLALL)K<wE<$IL92IcuMc$IET@G9T@|McMIULG9T@HczBHBHE;T@HcpH‰HLXE;T@LډrMcKG;T@~{HcpHPDHLXE;T@~dLc@LډpLHG;T@~OHcpLD@LXE;T@~9Lc@LډpLHG;T@~$HcpD@LXLHE;T@~ LELD:M9M{M9LmMLxMLp6M9tLALL)K| RvEuIM9IcIcUIDL@D9L@|McGIWLF;L@HcrBLRHD;L@McZLAzIBF;L@HDZLc@F;L@~}IczIREBIBD;L@~fMcBHAzIrF;L@~PIczHEBIBD;L@~:McBHAzIrF;L@~$EBIzMcRHLF;L@~ HALD2MjM9LeMMLu3fDM9tLALL)K< uE7IM9IcuMcIDL@F9L@|IcMIUHD;L@LcZBHBMF;L@HcxHD@LPD;L@L҉zIcJD;L@~|LcPHPHL@F;L@~fLcXLDPHHF;L@~PLcPHDXL@F;L@~:LcXLDPHHF;L@~$LcPDXL@HLF;L@~ LCLD2M~M9sLmMLpILLx/DALLL)K|sDuIL9McHcMMG\@E9\@|IcIWHE;\@LcBBLJLG;\@McQLAAIqG;\@HDRHc~E;\@~}IcqIQAyIAE;\@~fMcAHAqIyG;\@~PIcqHEAIAE;\@~:IcyHAqMAE;\@~$AyIqMcILLG;\@~ HALD2MMLmLxLpIMLLxLpLmMLuMLeIMLLULxLpff.UHAWIAVMAUIATI SHHXH1ҁ`H={ KL"h  M H="Kg HM1H=Q#Kq9sg HH= Kg H}H= KgW 1҃{ H=K]g H}DKD;OE!LDW D9S A!L}D[$HH93AG$B AEI9E9o!A^!H}DG(D9C(S!AB!LUEZ,D9[,7!A&!L}AG09C0!A !HuN49K4!A HUz89{8 A LM1EA  H=gKD` ;DtH}E1Ƀ?AE!Dʾ H=K`DSEuHE1ҋH¾ H=K``DASAL}A7DFAAă@A AԾ H=K `t{HcC,Ht {L%LcK(ItLcSHI9ILc[$ItHcKDIH9HIÃ{ t HcS@H9HuDfDALELUAxLcCt@+&ADLLMLmHCD@AU9LID9%1C| ~1CLDCL$C;L@¾ H=IK^tLHL{oD{DAaHUDbAD$,LEHI4HcF Ht ~@-A|$ZLUHcMMcK ItIcS@H9IED$A%HuIcLIcJ HtMcZ@L9HEL$ALEIcIHAL?AI9~T>JAL?AH2fDo%E5HMMIIHLIIIAIItKHUoR HJ)fofDofEfAs fs fDfApfApfbfDoDoI oa HfEfs fAs fDfEpfEpfEbfEooy DoY HfAfAs fAs fEfDpfApfDbfEoH9LDoA oi H@oqoYfEfs o!DofAs fs DoYDoifDfAs fAs fApfEpfAbffs ffDpfpfDbfAfAs fEfDpfApfDbfEfAs fEfEpfApfDbH93LfEoLfAsHfAofAs fAfAs fEfpfEpfAbfofDofsfDfD~I9tWHyL<I9~BBT>HyI9~3BT>HyI9~$BT> HyI9~HBT>I9~BT>A9J31E}D9{ H=XJ2HuHuiH}DCD;G_ALHuFd IF;d1E9HMLDY D9[ HEDH$D9K$jHHLuLMLL^_1LfAA1=AD$@^1LLLLF:HHUHLL:HƉyfDUHAWAVAUATSH8H}HUMHJMMHMIM9}vMHUHMI?MH)IHJHHHc;IED@IIO,IcME;D@GL)MeHHMI)MIsMH]HI?MH)IHNHN$H~9Ic $EL@IIJHc:E9L@L)HZHHIL+uILHL]LULE趙HuH}MMLL3HLLULUL]M)M)t;MH]t2O4LH]IMLc Mc<$Gl@G9l@~D;E $H8[A\A]A^A_]LM$GLMMI)MI-f.IHItDUHH)HAWAVIAUIATSHHH8~ZHL$N<'LHLLMHLM)IL[LA\LA]HA^IA_]T@H9xLL9kHAHHDHE)M9tLK<.LL)7E&IL9})IcIc>H Iԋq@9t@|McGIWLB;t@LcJBHBDQ@MF9T@HcxDXHL@DI@D9L@L‰zMcPDY@F9\@HcxDPHPLHDQ@D9T@}}LLcHxL@DY@F9\@}dDHLcHLL@DQ@F9T@}JHcxLDHLXDA@D9D@}0HcpxLLXDQ@HD9T@}L @LDD"IL9}H[A\A]A^A_]UIHAWAVIH4 AULMATH)SHH(HMHuH9L$L<J'LL9tCL9u<DHEIH9t'L9t"LcLcCt@C9t@EHIH9uMI)I9t!LHLHML]5HML]IHMH)H9t?HH}HL5HUMILH)IHH9E&H@LIMH)HH;E}LeI9INLIEIM9t-I9t(Hc3Mc$AL@C9L@HA1II9tM9uMI)I9tLLH5IM9t"H(LK<)L[L)A\A]A^A_]4fH([A\A]A^A_]ÐHNUHH)HAWAVAUATSHHHHHHUHH}HuHEHMHUH*IM~MfLu0fL;etLLL)I<S4IEoM9*Ic$IcH IՋq@9t@|McD$IT$LB;t@LcJBHBDQ@MF9T@Lc@DXHHxDI@F9L@HDBLcWDY@F9\@Lc@DPHPLPDI@F9L@}zLcXLD@HxDQ@F9T@}`HHcxDXLHDY@D9\@}FLc@LʉxLPDI@F9L@}-HcpD@LLXDQ@HD9T@}LLDID*M9LeMM)IML}M9Ml$M9vIM)IO|1@M9tLLL)I< 2IE4$M93McEIc<$J MDI@D9L@|Mc]IUMF;L@LcRDBHBDA@LF9D@HcxpHLHDY@D9\@LʉzMcADI@F9L@HcxD@HPLPDY@D9\@}|LLcPxLHy@B9|@}dLcXLDPL@DI@F9L@}JHcxLDXL@DY@D9\@}0xLHHc@LDQ@ID9T@}L!@LDID2M9H}LeLuAL}HuILLLHuILKL-LwJ I9HuILLTHuILJ L:LHI9~oHuILLLHuIHLLLHI9~8HuILLLHuIHLLIM9HH[A\A]A^A_]IWUHAWMAVIAUIATSHHHEL9~jI9eIMtGII)H9t LL0L9tHLLL)H)/MtLLL/OT%HL[A\A]A^A_]@H9[MHtIM)L9tLLL/L9tLHLH)/MM)MtLLLk/IfDLHLI)_OT5oDULIHAWAVAUMATISHH8LULuM9INH9MM9LeHULMLUIM9PMHMHUI?MH)IHN$HHMc$IGD@HHITHc:E;D@_H)LjHHLH)HHuM)LLMLILLMLUI)AVHMLuLMHIH}HEHUH LULeI9HINI9LL]LmIM)L9tLLLL]-L]KT=I9t0L9t$IcuLcA|@C9|@~XHE$II9uL9t+L)LLHe[A\A]A^A_]v-fDL9He[A\A]A^A_]A4$III9{L9u@L;}FLL]LmMI)I9tLHLL],L]KT=L9tL9tHHLc Hc;ICL@A9L@}A;L9H@E I9uHe[A\A]A^A_]fLLeHH?LL)HHL,HH~-IcMED@IIOIc;E9D@|H5=LEDtLE1DDxpHhHtXf.ub\D}HPfoufo}De]D}HuDmfoe]fom$$H8l$t$ |$0D|$@AHP01tEHe[A\A]A^A_]f.H5E1ADADKVIAL4sE EEAADDoz,oJ,HJfEfs fAs fAfEpfpfDboR(oJ(HJffs fs ffpfpfb%DfD"f.UIHAWAVAUATSHE }H8HcJDr$PH| HLb,Dz(I9IHI)I0MIIIfDosU5LHHLHHHHt=HoY,oa,HfAfs fAs fAfDpfpfDboq,oy,HfAfs fAs fAfDpfDpfEbL9DoQ,DoY,H@DoiDoqfEfAs oQ oY fAs fAs oqoyfEfs fs fEpfApfDbfEfAs fEfEpfApfDbfAfAs fAfpfpfbffs ffDpfDpfEbL93fEofEoMfAsfAs IfEfAs O$fEfEpfEpfEbfEofAofAsfAf~M9tUA$Ml$L9tFA\$IL$H9t6A\$M\$ L9t&A\$ Ml$L9tA\$IL$H9tA\$zHEa(EE}DemLb(I9KHHH)H,IIIH=MfoR5IIM<IIIAtzIt8Ioa(oi(Hffs fs ffpfpfboy(DoA(HffAs fs fDfpfEpfAbL9DoQ(DoY(H@DoqDoyfDfAs oYoafs fAs oyDoAfAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbL96fDofDoMfAsfs IfEfAs O$fAfEpfpfDbfEofEofAsfEfD~M9tUA$Ml$L9tFA\$M|$L9t6A\$IL$ H9t&A\$ M\$L9tA\$Ml$L9tA\$zDEa$EEA}DeDb E9a ENa R@HEY@D6AD@E8UD]EDuD\sIEEEEIAHDžpHhA;2wE;Bw 1E;b‰TH=vJ L@LHDXǸ @\fɉL@DXDT.AR`HHAADPL5<H5;LEDtLE1DDxpHhHt^.ub\D}HPfoufo}De]D}HuDmfoe]fom$$H8l$t$ |$0D|$@AHP(1tEHe[A\A]A^A_]f.H5ܼE1ADADKVIAL4sE EEAADDoz,oJ,HJfEfs fAs fAfEpfpfDboR(oJ(HJffs fs ffpfpfb%DfD"f.UIHAWAVAUATSHE }H8HcJDr$PH| HLb,Dz(I9IHI)I0MIIIfDo3M5LHHLHHHHt=HoY,oa,HfAfs fAs fAfDpfpfDboq,oy,HfAfs fAs fAfDpfDpfEbL9DoQ,DoY,H@DoiDoqfEfAs oQ oY fAs fAs oqoyfEfs fs fEpfApfDbfEfAs fEfEpfApfDbfAfAs fAfpfpfbffs ffDpfDpfEbL93fEofEoMfAsfAs IfEfAs O$fEfEpfEpfEbfEofAofAsfAf~M9tUA$Ml$L9tFA\$IL$H9t6A\$M\$ L9t&A\$ Ml$L9tA\$IL$H9tA\$zHEa(EE}DemLb(I9KHHH)H,IIIH=MfoJ5IIM<IIIAtzIt8Ioa(oi(Hffs fs ffpfpfboy(DoA(HffAs fs fDfpfEpfAbL9DoQ(DoY(H@DoqDoyfDfAs oYoafs fAs oyDoAfAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbL96fDofDoMfAsfs IfEfAs O$fAfEpfpfDbfEofEofAsfEfD~M9tUA$Ml$L9tFA\$M|$L9t6A\$IL$ H9t&A\$ M\$L9tA\$Ml$L9tA\$zDEa$EEA}DeDb E9a ENa R@HEY@D6AD@E8UD]EDuD\sIEEEEIAHDžpHhA;2wE;Bw 1E;b‰TH=6J L@LHDXǸ @\fɉL@DXDT.AR`HHAADPL5:H59LEDtLE1DDxpHhHtU.ub\D}HPfoufo}De]D}HuDmfoe]fom$$H8l$t$ |$0D|$@AHPm 1tEHe[A\A]A^A_]f.H5ԼE1ADADKVIAL4sE EEAADDoz,oJ,HJfEfs fAs fAfEpfpfDboR(oJ(HJffs fs ffpfpfb%DfD"f.UIHAWAVAUATSHE }H8HcJDr$PH| HLb,Dz(I9IHI)I0MIIIfDoD5LHHLHHHHt=HoY,oa,HfAfs fAs fAfDpfpfDboq,oy,HfAfs fAs fAfDpfDpfEbL9DoQ,DoY,H@DoiDoqfEfAs oQ oY fAs fAs oqoyfEfs fs fEpfApfDbfEfAs fEfEpfApfDbfAfAs fAfpfpfbffs ffDpfDpfEbL93fEofEoMfAsfAs IfEfAs O$fEfEpfEpfEbfEofAofAsfAf~M9tUA$Ml$L9tFA\$IL$H9t6A\$M\$ L9t&A\$ Ml$L9tA\$IL$H9tA\$zHEa(EE}DemLb(I9KHHH)H,IIIH=MfovB5IIM<IIIAtzIt8Ioa(oi(Hffs fs ffpfpfboy(DoA(HffAs fs fDfpfEpfAbL9DoQ(DoY(H@DoqDoyfDfAs oYoafs fAs oyDoAfAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbL96fDofDoMfAsfs IfEfAs O$fAfEpfpfDbfEofEofAsfEfD~M9tUA$Ml$L9tFA\$M|$L9t6A\$IL$ H9t&A\$ M\$L9tA\$Ml$L9tA\$zDEa$EEA}DeDb E9a ENa R@HEY@D6AD@E8UD]EDuD\sIEEEEIAHDžpHhA;2wE;Bw 1E;b‰TH=J L@LHDXǸ @\fɉL@DXDT.AR`HHAADPL58H57LEDtLE1DDxpHhHtM.ub\D}HPfoufo}De]D}HuDmfoe]fom$$H8l$t$ |$0D|$@AHP-1tEHe[A\A]A^A_]f.H5̼E1ADADKVIAL4sE EEAADDoz,oJ,HJfEfs fAs fAfEpfpfDboR(oJ(HJffs fs ffpfpfb%DfD"f.UIHAWAVAUATSHE }H8HcJDr$PH| HLb,Dz(I9IHI)I0MIIIfDo<5LHHLHHHHt=HoY,oa,HfAfs fAs fAfDpfpfDboq,oy,HfAfs fAs fAfDpfDpfEbL9DoQ,DoY,H@DoiDoqfEfAs oQ oY fAs fAs oqoyfEfs fs fEpfApfDbfEfAs fEfEpfApfDbfAfAs fAfpfpfbffs ffDpfDpfEbL93fEofEoMfAsfAs IfEfAs O$fEfEpfEpfEbfEofAofAsfAf~M9tUA$Ml$L9tFA\$IL$H9t6A\$M\$ L9t&A\$ Ml$L9tA\$IL$H9tA\$zHEa(EE}DemLb(I9KHHH)H,IIIH=Mfo6:5IIM<IIIAtzIt8Ioa(oi(Hffs fs ffpfpfboy(DoA(HffAs fs fDfpfEpfAbL9DoQ(DoY(H@DoqDoyfDfAs oYoafs fAs oyDoAfAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbL96fDofDoMfAsfs IfEfAs O$fAfEpfpfDbfEofEofAsfEfD~M9tUA$Ml$L9tFA\$M|$L9t6A\$IL$ H9t&A\$ M\$L9tA\$Ml$L9tA\$zDEa$EEA}DeDb E9a ENa R@HEY@D6AD@E8UD]EDuD\sIEEEEIAHDžpHhA;2wE;Bw 1E;b‰TH=J L@LHDXOǸ @\fɉL@DXDT.AR`HHAADPL56H55LEDtLE1DDxpHhHtXE.ub\D}HPfoufo}De]D}HuDmfoe]fom$$H8l$t$ |$0D|$@AHP1tEHe[A\A]A^A_]f.H5ļE1ADADKVIAL4sE EEAADDoz,oJ,HJfEfs fAs fAfEpfpfDboR(oJ(HJffs fs ffpfpfb%DfD"f.UIHAWAVAUATSHE }H8HcJDr$PH| HLb,Dz(I9IHI)I0MIIIfDos45LHHLHHHHt=HoY,oa,HfAfs fAs fAfDpfpfDboq,oy,HfAfs fAs fAfDpfDpfEbL9DoQ,DoY,H@DoiDoqfEfAs oQ oY fAs fAs oqoyfEfs fs fEpfApfDbfEfAs fEfEpfApfDbfAfAs fAfpfpfbffs ffDpfDpfEbL93fEofEoMfAsfAs IfEfAs O$fEfEpfEpfEbfEofAofAsfAf~M9tUA$Ml$L9tFA\$IL$H9t6A\$M\$ L9t&A\$ Ml$L9tA\$IL$H9tA\$zHEa(EE}DemLb(I9KHHH)H,IIIH=Mfo15IIM<IIIAtzIt8Ioa(oi(Hffs fs ffpfpfboy(DoA(HffAs fs fDfpfEpfAbL9DoQ(DoY(H@DoqDoyfDfAs oYoafs fAs oyDoAfAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbL96fDofDoMfAsfs IfEfAs O$fAfEpfpfDbfEofEofAsfEfD~M9tUA$Ml$L9tFA\$M|$L9t6A\$IL$ H9t&A\$ M\$L9tA\$Ml$L9tA\$zDEa$EEA}DeDb E9a ENa R@HEY@D6AD@E8UD]EDuD\sIEEEEIAHDžpHhA;2wE;Bw 1E;b‰TH=vJ L@LHDXǸ @\fɉL@DXDT.AR`HHAADPL54H53LEDtLE1DDxpHhHt=.ub\D}HPfoufo}De]D}HuDmfoe]fom$$H8l$t$ |$0D|$@AHP1tEHe[A\A]A^A_]f.H5E1ADADKVIAL4sE EEAADDoz,oJ,HJfEfs fAs fAfEpfpfDboR(oJ(HJffs fs ffpfpfb%DfD"f.UHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE;.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE;.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf:.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE9.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&9.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE8.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE7.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF7.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf5.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE4.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&4.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE3.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE2.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF2.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE1.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE1.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf0.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE/.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&/.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE..tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF-.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE,.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE,.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf+.tËUHMuLMDEuH=tHu苿3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE*.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&*.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE).tËUHMuLMDEuH=tHu諽3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE(.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF(.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE'.tËUHMuLMDEuH=tHu˻3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE'.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf&.tËUHMuLMDEuH=tHu苺3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE%.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&%.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE$.tËUHMuLMDEuH=tHu諸3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE#.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF#.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE".tËUHMuLMDEuH=tHu˶3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE".tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf!.tËUHMuLMDEuH=tHu苵3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE .tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE& .tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu諳3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu˱3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf.tËUHMuLMDEuH=tHu苰3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu諮3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHuˬ3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf.tËUHMuLMDEuH=tHu苫3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu諩3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu˧3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf.tËUHMuLMDEuH=tHu苦3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu諤3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHuˢ3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf .tËUHMuLMDEuH=tHu苡3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE .tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE& .tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE .tËUHMuLMDEuH=tHu諟3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE .tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF .tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE .tËUHMuLMDEuH=tHu˝3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE .tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEf.tËUHMuLMDEuH=tHu苜3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE&.tËUHMuLMDEuH=tHuK3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu諚3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEF.tËUHMuLMDEuH=tHuk3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu˘3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE.tËUHMuLMDEuH=tHu+3XZH=T.@UHAWAVAUIATSH8EL}HM De HuH}ȉE wHڕJ@A9A wLJE4AAA AӾ H=W`JLMLEڝuVA]DEO @HuLEDe H!]H}J L}LMHHMH8L[A\A]A^A_]H8 [A\A]A^A_]ff.HUHHpHUHUHEHuHuH}H}HUHUHMHMHMHEEEW.tÐUHMuLMDEuHuH={3XZUHHHH}]]ff.UHAWAVMAUATSHHcFD~$HXHV(LT II95MII)I,MIIIMfo84III4IIIAItdIt.oV(oN(Lnffs fs ffpfpfbAoe(Aom(Iffs fs ffpfpfbAo}(EoE(IffAs fs fDfpfEpfAbL9EoU(Eo](I@EouEo}fDfAs Ao]Aoefs fAs Ao}EoEfAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbL93fDoMfAsIfEofAs JfDfs fAfEpfpfDbfEofEofAsfEfD~M9tDLZM9t8BLbM9t+BHZ I9tB LjM9tBLBM9tBDVDQ$AEDn Y@McD}v@Fd@DUUuADr\AKArPADrFDYDrpDtDxIEE1I3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[>3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薩-tËUHMuLMDEuH=tHu=3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu=3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{<3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趧-tËUHMuLMDEuH=tHu;3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;;3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu:3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE֥-tËUHMuLMDEuH=tHu93XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[93XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薤-tËUHMuLMDEuH=tHu83XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu83XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{73XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趢-tËUHMuLMDEuH=tHu63XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;63XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu53XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE֠-tËUHMuLMDEuH=tHu43XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[43XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薟-tËUHMuLMDEuH=tHu33XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu33XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{23XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趝-tËUHMuLMDEuH=tHu13XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;13XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu03XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE֛-tËUHMuLMDEuH=tHu/3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[/3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薚-tËUHMuLMDEuH=tHu.3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu.3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{-3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趘-tËUHMuLMDEuH=tHu,3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;,3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu+3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE֖-tËUHMuLMDEuH=tHu*3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[*3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薕-tËUHMuLMDEuH=tHu)3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu)3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{(3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趓-tËUHMuLMDEuH=tHu'3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;'3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu&3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE֑-tËUHMuLMDEuH=tHu%3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[%3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薐-tËUHMuLMDEuH=tHu$3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu$3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{#3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趎-tËUHMuLMDEuH=tHu"3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;"3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu!3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE֌-tËUHMuLMDEuH=tHu 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[ 3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薋-tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEV-tËUHMuLMDEuH=tHu{3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE趉-tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu;3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEv-tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEEև-tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE6-tËUHMuLMDEuH=tHu[3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE薆-tËUHMuLMDEuH=tHu3XZUHHĀHUHEHuHHU~EHMHUHEH}H}HMHMEHuHuHu)EEE-tËUHMuLMDEuH=tHu3XZH=&D-@UHAWAVAAUATISH8L}HuH}ȋ]HM wHpBJD4A@A A wH=JBJD,AAA AҾ H=KILMLEuJELDO @HMLE]KHuLML}H}HH8L[A\A]A^A_]H8 [A\A]A^A_]ff.HUHHpHUHUHEHuHuH}H}HUHUHMHMHMHEEEW-tÐUHMuLMDEuHuH={3XZUHHHH}]]ff.UHAWAVMAUATSHHcFDi$HXHV(DaDL\ II9MHI)I,LHHIIfo4t4IIM<2IIIAItbIt.oV(oN(HFffs fs ffpfpfbo`(oh(Hffs fs ffpfpfbox(Do@(HffAs fs fDfpfEpfAbI9DoP(DoX(H@DopDoxfDfAs oXo`fs fAs oxDo@fAfs fAs fEpfDpfEbfEfAs fEfApfApfbffs ffpfpfbffs fDfpfEpfAbI96fDoIfAsIfEofAs JfDfs fAfEpfpfDbfEofEofAsfEfD~L9tDHZI9t8BLRM9t+BLz M9tB LBM9tBHZI9tBDy D9~ EDN~ AY@DmIcD^@t@D]uADrWEJDErJADr@EQDr6EQDr,EQDr"EQDrEQDrEQAu@SE1ޅӉ]AGAKEKHDMH1HEAkAErVEPEErIAEr?EBEr5EBEr+EBEr!EBErEBEr EBAuE\$1ɸEE1B4NDVHLIEDUDeAEE"EXEIAAEAAI IhE1HLlLHhp~-teI0tEHe[A\A]A^A_]DE1E11]EDMAE11DH]HXLuD}uDmuDeuuuuuuHPUf.A@N@=Asf.@UHAVAUIHATMSHHPHBHMAEq`E1H u~HLU~ iEH}c )E)M]HUE?}-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTHG0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~:HLU~ EH} )E)M]HUE{-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTHF0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~HLU~ EH} )E)M]HUE?z-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTHD0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~2HLU~ EH}3 )E)M]HUEx-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTHC0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~jHLU~ EH} )E)M]HUE?w-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTHA0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~HLU~ EH} D)E)M]HUEu-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTH@0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~HLU~ 9EH} \)E)M]HUE?t-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTH>0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~HLU~ 9EH}C )E)M]HUEr-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTH=0tAAEHe[A\A]A^]ff.UHAVAUIHATMSHHPHBHMAEq`E1H u~HLU~ 1EH} )E)M]HUE?q-ME1fAAt$`@1At$X.At$PAt$HAt$@At$8EAt$0At$(At$ HcAt$L~LAt$At$A4$s`sXsPsHHus@s8s0s(s sss3BTH;0tAAEHe[A\A]A^]ff.H=m-@UHAWAVIAUATISH(L}HuH}Ⱦ wHBJ@A A wH=BJD,AAA AҾ H=ILMLE uAL[DL}HuL kH}LLOLMLEIH([A\A]A^A_]H( [A\A]A^A_]f.fIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]"o-t@UHMuLMDEuHuH=C3XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]n-t@UHMuLMDEuHuH=#3XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]l-t@UHMuLMDEuHuH=3XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]k-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]j-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]i-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]bh-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]Bg-t@UHMuLMDEuHuH=c2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]"f-t@UHMuLMDEuHuH=C2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]e-t@UHMuLMDEuHuH=#2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]c-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]b-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]a-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]`-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]b_-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]B^-t@UHMuLMDEuHuH=c2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]"]-t@UHMuLMDEuHuH=C2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]\-t@UHMuLMDEuHuH=#2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]Z-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]Y-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]X-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]W-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]bV-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]BU-t@UHMuLMDEuHuH=c2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]"T-t@UHMuLMDEuHuH=C2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]S-t@UHMuLMDEuHuH=#2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]Q-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]P-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]O-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]N-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]bM-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]BL-t@UHMuLMDEuHuH=c2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]"K-t@UHMuLMDEuHuH=C2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]J-t@UHMuLMDEuHuH=#2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]H-t@UHMuLMDEuHuH=2XZf.DIUHHHUHMHuHxH}LEH|H}xLMHhx~h|HhHU~hHhHM~hHhflHu)EEhHh~hH}Lh)MLMhE)]G-t@UHMuLMDEuHuH=2XZf.DH=yD-@UHATSH udL%E@tdwx @HHGhG|LcLG`LcHIHLOpHHHe[A\]L%a@uH$L跚0CxL A$E܉UH}HF-uwHsxspshs`sXsPsHs@s8s0s(s sssAHHe[A\]0f.HUHHPHEHUHMHUHuHUH}HEEEE-tDUHMuLMDEuHuH=2XZHUHHPHEHUHMHUHuHUH}HEEEKE-tDUHMuLMDEuHuH=k2XZH=A-@UHATSH utL%@ttDADD @HHMcLWxDMcHIHLHHHe[A\]fDL%@uHL70L AUHEH}C-u HHs!HHAHHe[A\]0f.@HUHHPHEHUHMHUHuHUH}HEEEC-tDUHMuLMDEuHuH=2XZHUHHPHEHUHMHUHuHUH}HEEEC-tDUHMuLMDEuHuH=;2XZH=d?-@@WUHATSH yL%Zf.H$LK0^DK|{xDA?}ADEDML H}عA$HuyA-uwHsxspshs`sXsPsHs@s8s0s(s sssAHHe[A\] 0t|L%DADWxD@HHGhG|IcHW`DIcHHHHOpHHfu-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE>-t fUHMuLMDEuHuH=;2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE=-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE<-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEEo<-t fUHMuLMDEuHuH=2XZUHH}s]ÐH=1ݾ8-@UHATSH " !L%@DADD@HHIcHDMcHIHLHHHe[A\]DL%/tL%L%A@MHL0 DDA?}ADEDML H}عAHu :-u HHs"HHAHHe[A\]y0fL%iD@L%4@L%$@L%@Eu؉MDfHUHHPHMH}HUHuH}HEEHEE9-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE?9-t fUHMuLMDEuHuH=[2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE8-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE8-t fUHMuLMDEuHuH=;2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE7-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE6-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEEo6-t fUHMuLMDEuHuH=2XZUHH}s]ÐHUHHPHMH}HUHuH}HEEHEE5-t fUHMuLMDEuHuH=2XZUHH}s]ÐH=־2-@UHAWAVAUATSHE]`DmhDEEyDuEldDe EWDU(EJAǨ?tAA@Du AtAADe(DPAAAAEDH}(@LHMIHDHu(}XHU HMD`DE0DdDM8lE@DtD}HDxDuPDILhp1҉|H=6DžDDDDD^LmpLUxD_HLLLLHRHHd2HHHHHH~HL`HHLdHhfELlLpHtLxHHH~HL|LHLHHH)HLHLH~HL^HHH) HLH~HLLHL_)0HHH~HHLHL)@HLH~HLHL)PHHH~H)`HHHM$HHH~HHH)pLmHLHD~HLHL)}D)DHHHD~HLHD)EHDžDHLHD~HHHLD)MDHD)UIZASRhDHHHH HtHH1He[A\A]A^A_]}(@v*H; fDHeظ[A\A]A^A_]@H @H@IfUHH@HEhL]HHHLHHU(~HHu0DLHHHH}8~LLE@DLHEL~LMHLLUP)@H~HE`LL]XHM )P)`)pHH~HHUpH~HuxHH)eL~LLL)mL~IL)uHD~HH)}DHD~HHHD)EDHD~HLD)MDLMD)ULDžLDž$--tfDL@HD$HH= 2XZfUHDUhDUh]UHH@HEhL]HHHLHHU(~HHu0DLHHHH}8~LLE@DLHEL~LMHLLUP)@H~HE`LL]XHM )P)`)pHH~HHUpH~HuxHH)eL~LLL)mL~IL)uHD~HH)}DHD~HHHD)EDHD~HLD)MDLMD)ULDžLDž$*-tfDL@HD$HH= ƾ2XZfUHDUhDUh]UHH@HEhL]HHHLHHU(~HHu0DLHHHH}8~LLE@DLHEL~LMHLLUP)@H~HE`LL]XHM )P)`)pHH~HHUpH~HuxHH)eL~LLL)mL~IL)uHD~HH)}DHD~HHHD)EDHD~HLD)MDLMD)ULDžLDž$'-tfDL@HD$HH= ƻ2XZfUHDUhDUh]UHH@HEhL]HHHLHHU(~HHu0DLHHHH}8~LLE@DLHEL~LMHLLUP)@H~HE`LL]XHM )P)`)pHH~HHUpH~HuxHH)eL~LLL)mL~IL)uHD~HH)}DHD~HHHD)EDHD~HLD)MDLMD)ULDžLDž$$-tfDL@HD$HH= Ƹ2XZfUHDUhDUh]H=yž -@UHAWAVAUATSH(D]DUDmP]XEEtEtzEtuAIE!A v~A@AAvkACEntEu{AAHX1He[A\A]A^A_]A@CD1AEtEtAxH Hu(I1HDLuhD LLe`HM DDE0DDM8DD]@DDUHH$H=6Dž,DDDDLL&.HH_S2?LHHLH~HHHHfHLLLH~LHLLL)PHH~H0H)`H~HPL)pL~L)]L~L)eL~)mLIEHU )uL$HXD,HWLVH)0HDž@jH0H H`He[A\A]A^A_]At7HA DHeظ[A\A]A^A_]@H@fDAtHHH@H@H I*of.fUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd~-t HXLMH\@DdHPH=艱2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd-t HXLMH\@DdHPH= 2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd~-t HXLMH\@DdHPH=艬2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd-t HXLMH\@DdHPH= 2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd~-t HXLMH\@DdHPH=艧2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd-t HXLMH\@DdHPH= 2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd~-t HXLMH\@DdHPH=艢2XZDUHH H0H0EH8H(DU0HD]8H~HMH DDE DDM(E@HMHDLEPDLH(H8D LDLHHHL LHH)E~LLDžXL~LLL )ML]H~HHHH)UHPL~HH@)]H~H\HHP)eL~L)m)uH\Džd -t HXLMH\@DdHPH= 2XZDH=鬾4-@UHAVAUATSHpDmDehD1E(EEIHEQAAEL5\ HUHHHHuXD E@DLUPLLe`D]8DMDDE DDM(Dm0HH=p6H1HDžDDDDLLHL@;2LHHLxHD~xLHxLLfLHHLDxHxD~xHLxLLHHD)@LDxLxD~xLxD)PDxLxD~xL HxH@D)`DxHxD~xLxD)pDxHx~xLxD)}xLx~x)EHxL xHHxH~xLx)MLHx)UMiDAS) PHDž0h A1He[A\A]A^]ÐD︀11҉DEL%H}HHUX IMHEPDLLU`Hu LD]@DDE(DDM0DDm8HMpHH=Dm6H1DžDDDDHLHHuxDLHL趡HL72LLHLxL~xLLxLHfEHHLHxLx~xHLxLLLL)@LxLx~xLHxH)PxHx~xHHxH)`xLx~xHx)pxHx~xH Lx)exLx~xL@)mLxxLLx~xLx)uLDxLxD~xHxH)}DxHxD~xHxHD)EDxD)MMrVHATD) HDž0jAH H HOxbxHe[A\A]A^]L%AW@L5q @Heย[A\A]A^]fDHSHSfDUHHpEUM LUHDDE8DLM@L]PHH}0u(HEXHU`HMhDLLLLLLLHHHHHHupLH}xL~LL@HHHL~LLL)`H~HHH)pH~HHH)UH~HLL)]L~LLI)eL~H)mL0H~H HH()uDž8HD~H3Ef/6H,H9I|$ HBIIt$IH9vIHHH92L4L1HLHMl$I4$LH9]ML$LMDSHcD[Dk IcIDsHHIcD{IcHH1HIcH1HD}McH1II $H11L1IHHH}Pt7DExE~ExL AALX"DLCEELXDLMXDL`LD}0DxDmD|De ](H}Pu8M@UHHH1HH=CA6DžLDDDLLU`DhHEpLDwHuHXH 2LLHLhLxD~hH|LhLHfEHHHLDhLh~hLHhLHLLD) LHhLh~hLHhH)0hHh~hHwHhH)@hHh~hLhL)PhLh~hL Lh)`hHh~h)pLhhI>LhL~hLhHUH)mhHh~hLh)uhHhD~hHhH)}DhD)EHGLAQDARD)HDžh HAH Ht[uDH=ILrHe[A\A]A^A_]DH}PHuX}(HDDDUHDE8HMPDDhDM@H1HH==6DžLHDDDD^rnH5 H2HHHHXH~XHHXHLILLfHLXHX~XHXH ) L`XHX~XLLXL)0XLX~XLXD)@X)PH@RHV)HDžjHHH HtXsXH=YI pDCU8u@DMA] DADL`HAD?D]0ALD}AEH@ADDm 1DDe(ADLEPHDžLDDDDDLLMXhHM`L@|H=:6HoH5H2LLHLhL~hLLhHLfEHHHLhLh~hLLhHHLL) LLhHh~hHLhL|)0hHhD~hHhH)@DhHhD~hLhL D)PDhLhD~hHhD)`DhHhD~hLD)pLhDhILhD~hLhD)]DL]DhLhD~hHhD)eDhD)mHBHVHAPLD)HDžjHAH HtnoDH=I_lHe[A\A]A^A_]AH1LAM(PH=I)l@fDADAADAgDIA"IR"Ic"ff.UHH LUL]EpHHHHU(~HHM0HHHH HHu8~HH}@DLDLL~LEHLLMPHE )`L~L]`LLUX)p)UH~HEh)]HHH~HHH[2XZf.H=id,@UHAWAVAUATSHhDe Dm(]D]PEAEAu+t'Aw6Džpu4L=+2f1He[A\A]A^A_]DžpL=HILHDtLxLH0d L0L0DUpALL HLLu0AHHxLM8LDE@DMH1҉H=+6DDžLLHDDDDDt_gHL1hLLHLL~HLLLfEHHHHL~LHLHLL)@LHL~LL)PH~HH )`H~H@H)pL~L)eH~)mLML~L)uLDD) HLD~L)}HDž0DD)EIBRHVHhH H H)l_He[A\A]A^A_]Heظ[A\A]A^A_]@IfDUHH@HEUH M DUHH}0Hu(D]PL(DDE8DM@EXU`MhHHDLDL DL(DLHHHHH~HHL~LLL)pL~LLL)MH~HHH)UH~HHH)]H~H@L)eL~L)mL~HH@HLHL)uHD~H0HH8)}DžHDDžTD)E蝿,t 8HLpHL0DTH@H=S2XZfUHH@HEUH M DUHH}0Hu(D]PL(DDE8DM@EXU`MhHHDLDL DL(DLHHHHH~HHL~LLL)pL~LLL)MH~HHH)UH~HHH)]H~H@L)eL~L)mL~HH@HLHL)uHD~H0HH8)}DžHDDžTD)E譼,t 8HLpHL0DTH@H=P2XZfUHATISHHXHtHXt$[A\]LHH[A\]DHLH[A\]Hf.UHATISHHXHtHXt$[A\]LHH [A\]DHLH[A\]H0f.UHATISHHXHtHXt$[A\]LHHH[A\]DHLH[A\]HXf.UHGHAUATISHH]HL*HZLHtMtiHw8Hu"AuAt$I\$HL[A\A]]ÐHt fHx2H{WI\$I$HLHKVI$H=&e3TH=i3Rff.UHAWAVI0AUATSHHHukWHuINIHD(ID$(El$ H9HD;n }rM~I9t%HHMWHMD;h HxHHAH9t EtHLNIF(HL[A\A]A^A_]D~VI9v <HHMSHMD;h rH{HÿDL@A9LLVHH[A\A]A^A_]fDI~(t IF D;h 7M~MuI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHMVHMIًP HA9#LH1w1D;k @IM9~LHMLUHMȋx IDIEtuI^HumDH{AHtHS A9|H{E1DIEPI9^-IGf.L8M%HǐfUHAWAVI(AUATSHHHuTHuINIHD(AD$$El$ H9HD;n }mM~I9t%HHMTHMD;h "HxHHAH9t EwHLKIF(HL[A\A]A^A_]~VI9v DHHMPHMD;h zH{HÿDL@A9LL0SHH[A\A]A^A_]fDI~(t IF D;h ?M~MufI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHM9SHMIًP HA9LH1t1D;k @IM9~LHMLRHMȋx IDIEtuI^HumDH{AHtHS A9|H{E1DIEPI9^-IGf.L8M%HǐfUHAWAVI8AUATSHHHuQHuINIHD(ID$(AD$0El$ H9HD;n }qM~I9t%HHMQHMD;h &Hx HHAH9t E{HLHIF(HL[A\A]A^A_]@~VI9v DHHMMHMD;h zH{HÿDL@A9LL@PHH[A\A]A^A_]fDI~(t IF D;h ?M~MufI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHMIPHMIًP HA9LH1p1D;k @{IM9~LHMLOHMȋx IDIEtuI^HumDH{AHtHS A9|H{E1DIEPI9^-IGf.L8M%HǐfUHATISHLMtrHLHHH@Htx yH@HuH9tq ~xMH LM[MtA{ M[MuH9t x 1+I|$IT$ H)HH9H({x}[ifoIHHfP@H`HDžp)0HDžhH] JI|$PH{alpha_bHE!H}fo0fHEfo6IHE!Hu@ )Geta}`@!PHE E)@HDžPIL`LhL@`HH@H@ML MLPHt M IPIEDSLkL[ B(L}HC0LmL0LHC Lt Mm I/IM6Lk(B(L}HC@LmH0HCPLHC@Lt M IIA7@sPLkHH M|$`B(HHI I?MGL9tGGM9uD,L@AlL IOcMA@MFDM9u뼐AS0(@MlfMA I}GHLkLLHYFHM I}GHC Lk0LLH(FHC M I}vGHC@LkPLLHEHC@I^IFIAF@LHM9t*@I}IuH9_ FI M9uL@MtLFHĸL[A\A]A^A_]I} Iu(HL5IM@IUHLx@L CKMeI]HL-`OHLH5IHH @HLL@LHDžLHDžLDžLDž7FL@@I}(Iu@HH5IMHM]LP@LcKMeI] L=6_OHH LH5ȳIH(H @H0 LPL@LHDžLLHDž8L@DžHDžXWE"fHMMM]H55Me H{0Mm(LCH q^OHLH H5BIH0H@HDžLLLLDž(Dž8DIU(HMULM}MM L@0L?5LL@L%]OH@HH5ֶIHDžLLLLDžLDžDI}Iu L@I]IJ0Mm(L=5H@L )]OMBH@HXLH`H5ٵIHDžHHPLhLpDžxLDžuC@MEI}(It$@H KIU@M]L\OI] IEHH`L-5LpH51IMD$H}LHUHMH @HDžhLxH]HELmELUEEBDMeM}LL`LV5H @HDžhMA H5lILpL`MALxLDžSBfDI}I]HH55HB LBHH @HLH5ڳIHHDžHDžAfDIM MULLn5MeMm(MO0LHLZOH@H5JILMGLHDžLLLDžLDž5AI}Iu HH hZOIU(I]LP0L@HL%5LHH5IHH H@LHDžHLDžDž(@`LM}LMmMA L'5H @LH5IMAHDžLLLDž#@fDI}Iu HPH PYOIU(I]LP0L@HhL%5LHpH5IHx!HH@LPHDžXH`LDžDž}?HLM}LMmMA L5H @LH5IMAHDžLLLDž?fDI}Iu H0H 0XOIU(I]LP0L@HHL%x5LHPH5IHXHpH@L0HDž8H@L`DžhDžx]>(L M}LMmMA L5H @L H5tIMAHDž(L0L8L@DžH=fDI M9H0H=O38H0H=J3:I%;/ILfDUHAWAVIAUL`ATIESI]0H({x}[iH`foQIH{alpha_bfHDžp@HDžhHuHHCeta}fP@HE E)@HDžP:HĸL[A\A]A^A_]fIO@IWHHLM/MOLP@L@Mg M_(H5JHHH5L=SOH @HH5ILHDžLLLLHDžLDžDž9L@@MGI HH^5M/MO(HH@LROMg@M_HHHJLL@H @H5^IHLH0 HDžLLL L(Dž8L@DžHHPDžX8#IwI LM/MA0M(L%~5LL ROMAH@HH5ܪIHLHDžLLL Dž(L0Dž8V8IO IW(HH55MI_Lh0L@H=rQOHH@HHH5nIHLLHDžLHDžDž7L@MMgM_ MB0M(H POL@LMBH)5HH5IH@HDžHLPLXL`LhHpDžxDž7AIIw LmJMM@IW@M'L=POH @M_(IGHHxLHuL=|5H5ɨIHULEMEL`HDžhLpL]HEL}ELUEEm6L`M/I_H=5IL$ HLMD$H`H @H5IHDžhLpHxDž5DIWMLHHp L 5H @HDžHL@H5|IHLLDž|5LMMoI_ MD$0M(H 5H=NOLH5IHMD$H@HLHDžLLHLDžDž4IwIW(LHMMO LP0L@HL-M5HMOH@HH5ILHDžLLLDžH Dž(.4YfLM'MH=5IH HM@LHH @H5hIHDžLLDž3IwIW(LHPMMO LP0L@HhL--5HLOH@Hx!H5uILPHDžXL`LpLDžHDž39fLM'MH=5IH HM@LHH @H55IHDžLLDž2IwIW(LH0MMO LP0L@HHL- 5HKOH@HXH5IL0HDž8L@LPL`DžhHpDžx1fL M'MH=5IH H@M@LH H @H5IHDž(L0L8DžHt1I M9kH(H=B3#,H(H=>30.I>THHefDUHAWIAVAUATSHH(HXL# HA$XL+Z HAXL3 HAXHL`HLLPH 1HHH@H5fJLHHHHDžH(HH1ƅL(1HALIԹIMFLƅƅDPHH5JLLLI LHDžLHDžDHq/L[I{UHHMHsHH~WAH I1LpHHA1H {eXNLIM)I mHLMN L L_M9HH9 vH[0].kEleMIABmentAB sHIN HBD6 L@L ƅ0LLIH` ƅPEmH5ޠI DLLIL@LL HDž(HDžHDLLH-HD[LHHL IH0LH5/I LHDžƅDDž H8H;-HHDžH Hu3DHHvHtN yHvHuH; t Dp E~$LH0HHL0x$HLLhHwI9LM9Mt#H`ILL*LLC&LHHDžLILƅHHH1HHLLH5J L牍+HMl$HHL93LLIL9PHL~LHH@HLHDžIHL9t*H gfED.HH}D.oiD D/%4RHASH ^I1Mf.H9 tx ~H8HHL8x$ LCIx BLL L(L5OIMH H5OI H @M@LLHDžLLLDž)L(LHHIHM,0L93HI9 MtHI}LH'HLIt$B/HH9t(H{H fLIwIWI?HM$0H9IGI9K MtHILHN'I?MgE1B'1DH{HS H)HL9JH I13fDDkLL LL@ LH5VID@DžPL`LhHMVHHL9HLHH9 HH~LHH HHHDžIHL9SfDL3LHAt1LI?fDH(1HefDH(1HfDDKHHH=WIHLLhPLPHLDL5q3LH0L IH5ΌIH8H@L@L@HHJHpLLHDžL L(DžXL`DžhDžxLDžaL(LHHMSHM,0L9HI9[Mt H<0I LHoHLIL$B(HH9RDfE1ɺLL@H5ID)PD)D)@L(LHLMYHM40M9(LM9wMt I<2ILHLLIC2HL9LLLLII~ MFH @-HH5ILHDžLLLDžL(LHHIRHM40H9HI9TMt H<0ILHHLIL$B0HH9vL L!H MfH@H(L9 LL0IL9HHPD~LH@DDHHH H0HDž(IH L9L@LH@MT$H@HHL9&HLPHH9HHP~LH@HHH@HPHDžHIH@L9;1fDHtHHHHHA.AAEEE@HASH I1@DEL~HtH4HHH@HHH@HtHH(H@HHH fDfDAD2fDHA 1LH IRLHL)H  H=3HAH +UK1A1LLH kIXA1LLH LIMMM9I|$M@LHIMHL9tLLfDoLD)HtH qHH H(HFHtH8HhH H(H`foM)"HtHHHHHHYHA 1LH IuH~LHI|$HH1@7HDDI?H(1HH~LH (I~HH~LHI~H8H~HH (I~H`:H(1HH(1LAAA@aHARH ܁I136HAgH XI1AH~LH@HI|$H@QHD~LH@DDHI~H UI}M;HI"1@7H}@7HH1@7H* LHHpHhH C@7HH PHHH@0H(H@+LH=F~I1H=!3k H=3_ H=3S H=u3G H=i3; HHHHlH HHrHFHHnHHHHHPHH|fUHAWIAVAUATSHHHxH}AH}H}ŒLmHEHEL Iă  ALUD)fDuEELLIL H.JB DI ׋KHsL}A9/wIAAI!LxIHtHPJ<2HH;8v`LxMM9rMCbIzVMI|LHHxL LH@L HLHHxL HsDWME1HxHHPLHrIM)IM9sIM)MM9aL@HsDfDIDkI!LL HsDHEfo]III!foeL}C\MWHAdH}L9t LOILEDKfIHSHAZM HMLeA9<Ec IAAI!LxIHtHxN?HL;vpLxMM9{MCcI{MILppHHxL MH@L HLHLPL8HSR@ME1HxHHPLHrIM)IM9kHL)LL9YHHDHSIDkI!LL HSHE fDoEIHL!L%2ILEIDD+M fEHufDoMIL]FL*DKHMHsEZD9<E+ L!AAILxIHtLXO+IL;vsLxMM9oMCwIMIDpLDpHHxL0MAH@L HLHLPNHsVME1HxHHPLHzHL)HI9IM)MM9L@DHsIDcL!L Hsf.HEfDomHHH!L}fEHID,D#DUfDouIFt&KH5:}IH LuLKHUEZ 95E I!AAMLxIHtL@K (IH;vsLxMM9oMCwIoMIDpLI DpHLxL0LAH@I3IHpHHNLKPfME1HxHHPLHzIM)IM9CIM)MM91LXDLKIDcM!MM LKHEfoUHIM!H}AD}fo]HA\HuDEHLuE1DžpHELhLUH}CLmHEHELjIă  Lh)fuMELLELLuDpB IM!LE9EHDž`DžXMh LxI$HLLJL`OL;4HII!ILZHM L!XpLuEefo}MLuIB<*H}IL9R-IIIHyIDCI HsL}D9EcHAAH!LxIHtHPN:HL;v`LxMM9yMCiIyLHH HRHxL(MH@H9HHxLXH HsfIE1HxHHPLHrIM)IL9jLL9vxHxLL9xHCPHxKHHtjHL`HhNHhL`HHxHLH@LHLXHPHHUMHsIDsI!LH HsfHEfDoUHII!DeDpEDDefDo]IG\LMAH}WLmHEHELIă  LMD)fEMELL=wILLoHB L D[H}H{D9rEyEkAEE9HEfDo}HII!foEHUE| HHADH}H9tLeL vIE1KIHEHsM A$ AL}A fDE9@IAAI!LxIHtLPO:IL;vaHxML9LCgHMI LHLxL MAH@IIHHLXNHsmDIIWDME1LxIHPH8HrIM)IM9 IM)MI9L@HsIDkI!M L{LHEfo]HII!A\HEfoeHAdHĘ[A\A]A^A_]ADXIL`M)pDXHH;`DpHP]uA DpEfD]MUHxIIHHtL@OIL;vpLxLM9pICHIxH` H`HHHxH`MH@ALHHLPILXMfDDaAAD9EIL!IHIIL9@f.DiAAD90IEII!AMIM9EiAEE9IEII!EMIM9n!DiAAD9IEII!{AMIM9PEaAEE9EII!MIMM9cDEpAEE95HEIH!EIIM9E1E1HH#EL HEA DpEfDEMHxIIHHtLPO IL;v^HxML9rLCzHzLH=HHxL8MAH@H7HHpLHIMIL#EM LEDžpHDžPLxLPIHHLHyHL)HI95H`HL9BIM!HHHHI L!HPHgLPAEtE$$D HAA DpEfDEMHxIIHHtHHMLIL;v^HxML9wLCH< LH2H$HxL8MAH@HHHPLPIMIL#uM LuDIAAI!YLxIHtLPK42IH;0vaLxMM9qMCaIy MILH LxL LH@MILPAHpH{I‹ IDkI!LL H{E1E1DE1E1pDIM)L`M9LPaHxHH9PHCpHxHXHI!HXH HLxLXH@H`MLILPFLL9HxLL9oHCOH IILHhDpyLhDpHNLxLLH@MILXHPHIMDpLLoHsDpI‹LL9v~HxLL9~HCFH~II}LpHhpLhHLxLLH@I:IHxHPHIVMLLHpHSpI‹DLH9vdHxLL9~HCVH~YIItVLHUHMHLxHLH@MILPHPHIMHsLL9HxLL9oHCwHIILHhDpAHhDpHLxHLH@MILHHPHIM3DpLL7LKDpILL9vnHxLL9vHCFH~Hp!LpItUL~HLxHpLH@I9HIHxHPHIRMgHsDDHXLx~XflAafME1HxHHPLHzIM)IM9LL9vnHxLL9rHCBHzHpLpItULHHLxLpLH@I2LIHpHPHI MpH{ qIM)MM9L@Hs1 fLxL`M9aMCaIyILM!HHHHxL AH@L`HHHBbD6HpHx~pflAI4$LXIH0LPEOT NTL)I)DxI$AIA9trt^tJt6t"tO O AEAKKDAIMg LAD$7E|$ D)D99IT$ HBVDJ D)D9YMD$@LA@vAH )D9uL9HULM|$`L9}FH Y]IL]LMHH EHhHuEM9IH MIH0AHI8LmHxD)f%L`DEH!f IEMDH}LIL)H HHHtmHtBLACZ0E93u'HxI#sL9DLL}M LAG(,E_ D)D9),I LAG)AW )D9uL9DLqI L9}LpMLAG3Eg D)D94Mg LAD$-ET$ D)D9/M|$ LAGLE_ D)D9OIT$@HBlz )D9uL9HULM|$`L9}GL)[ILEHEL LhLUHuEM9IH LIH0LmMI8AIL`D)f%LxDEL!f IEL)MH EHILMHHtmHtBLAB:.E92u'HxI#rL9 DL LUMz LAG)EG D)D9)I LAG&EO D)D9uL9 DL0 I L9}LpMLAG" Eg D)D9# Mg LAD$AT$ )D9MT$ LAB<EB D)D9?ML$@LAA\AI )D9uL9 HULm M|$`L9}FLUfH XIHuHEH HhLH]EL9HHA IHH0ALxH8A A)f%EEL!LefIEL)H EHIL]LHHtkHtBLAB&,E92u'HxI#rL9DDLb1HMHI HA'Q D)D9'H HA$DY DD)D9u*HpL9DLHpH H9MH`LHASDi DD)D9SLi LAEEU DD)D9IU HB;DB DD)D9<I}@HGYDO DD)D9uH9 HUH.IM`H9MHL%VIH}HuIM ELpLMEH9 LLLEA HH0LEIH8ALxA A)f%HEEM!fMEH)H DHH]MHHHteHt:FB*D9>u#HvL!L9DL"HuHV HBE&DR DD)D9E&H HB#DZ DD)D9u*HhL9GDLHh-H H9UHhLILAFEf DD)D9Mf LAD$fEt$ DD)D9gIT$ HBDR DD)D9M\$@LACAK D)D9uH9pHUH\Mt$`L9uBDL-TILEL]IM ELpLeEM9LLA MHH0H}MH8AHHhA)fH]EEI!fLLEL)ٻ H DHHuHHtmHtBLAC(AC AA)E9uL9DLLEMx LAG#E_ D)D9#I LAG EW D)D9uL9DLl{I L9}LxMLAGEg D)D9Mg LAD$E|$ D)D9MD$ LA@EX D)D9MT$@LABAz )D9uL9HULM|$`L9}EHuH}DHx[A\A]A^A_]DD91HxH#qHpH9t HUHDHpDH`IL hLEA MLLuHIH0EI8EE)fAHxEEI!fA MEL+EI DIHUIAIItEL]AC&A{ DL)D9uL9DLQH]H C#D9;u'HxH#sL9rDL_H C "s D)HD9uL97DL$H H9]LeMCDs DHD)D9uL9HULLs LAFE^ DLD)D9uL9HULGI^ CQDK DHD)D9OI^@CK DH)D9uL9BHUL.I^`H9]HL}HHCE/LmLEH}IHM#`LLeH}uDD9q HxI#uH92HUHVIU HBE9u HxH#rH9HUHI}@HGE9u@HxH#wE97HxI#wL9tHULLpLhA HIL]LUI ELMLuHI0EH8A)fA AEM!fEL`MDL+]AAI LEIIAIItCLMAA#AI L)9uL9$DLLmI AE E9eu$HuI#uL9DLI AEE9eu$HuI#uL9DLSI L9mAEbEE LD)D9uL9gHUL SMu MAFE9&u%HuI#vL9+HULMn AEA} L)D9uL9HULMn@AE+Au )LD9uL9HULUMn`L9mL%޽1I$ID$M,$u M"fI*LuL]fHZA EI#~IH}LMIILMrfE9w HxI#t$L9HULMT$ LABE9t$ HxI#rL9HULOML$@LAAE9t$@HxI#qfE97HxI#wL9tHULLpA ALhHIL`HUEI ELMLuHI0L]H8A)fA EEM!fEMDH+UH EEHLMHHHtBH}GG H)D9uL9DLrLmI AEE9eu$HuI#uL9HDL5I AEE9eu$HuI#uL9DLI L9mAEsE] LD)D9uL9HUL<Mu MAFE9&u%HuI#vL9HULxMn AEAM L)D9uL9OHUL;Mn@AE|Au )LD9uL9HULMn`L9mL%Iڽ1I$ID$M,$u MfI*LuLMfHZAA>I#NHMH}HHH}ffDE9w HxI#t$L9HULM|$ LAGE9t$ HxI#wL9HULIT$@HBE9t$@HxH#rf.E97HxI#wL9tHULLpLhA HILMEI E MLLuIH0L]I8E)fA EEL`M!fMDL+MDI HUIIAIItELUABQEB LD)D9uL9DL+LmI AE0E9eu$HuI#uL9DLI AEE9eu$HuI#uL9pDL]I L9mAE|AU L)D9uL9*HULnMu MAFE9&u%HuI#vL9HUL2Mn AEA} L)D9uL9HULMn@AEnAu )LD9uL9tHUL`Mn`L9mL%{ֽ1I$ID$M,$u MfI*LuLMfHZAEI#~H}LEIILEXE9w HxI#t$L9HULIT$ HBE9t$ HxH#rL9HULMD$@LA@E9t$@HxI#p}f.E9}HpI#uH9tHUHJfH`LhA H}HIEI EMML}II0LMI8E)fAAEM!fELExH)A H AAHLUHHtyHtMN LAAE9~ HpI#qH9HUHBMF@LA@E9~@HpI#pfDE9t$ HuH#sL9tHUL@H9]CdLxHILUHIH<HDHEDELeHxB H\H}HH}H9tHL]I#KHHMA HMHHHMfE97HuI#wL9tHULfDLxA ALpHIHUEI ELMLuHI0LEH8A)fA EEM!fELhMDH+UEEH L]HHHHtDLUABMAz L)D9uL9 DL LmI AE-Au )LD9uL9 DL I AEE9eu$HuI#uL9z DLg I L9mAEE] LD)D9uL93 HULG Mu MAF] E9&u%HuI#vL9 HUL  Mn AEI AM L)D9uL9 HUL Mn@AE Au )LD9uL9} HULi Mn`L9mL-TνE1IEIEP @E9w JHuI#t$L9LHUL08MD$ LA@$E9t$ ,HuI#pL9 HULMT$@LABE9t$@'HuI#rf.E9>>HxI#vH9tHUHHhA ALpIHLEEM EA MLL}IH0HxI8E)fEEI!fLE}L+EI EEILUIAIItEL]ACAC DL)D9uL9DLH]H C@ D93u'HxH#sL9WDL\DH C s D)HD9uL9DL! H H9]CS DH)D9uL9HULۿLc LAD$ED$ DLD)D9uL9HUL藿I\$ C@K DH)D9AI\$@Cs D)HD9uL92HUL6I\$`H9]L}HʽIHHCL}3E9~ HxI#t$H9QHUHž=IT$ HB|E9|$ HxH#rH9 HUH耾M\$@LAC]E9|$@~HxI#sQf.E9t$ HxH#sL9tHULH9]C LUHILUHĽIH H= DHEDELeH]B H L]H}HAH9tOHH}H#OHMHHHED93HuH#sf.D93dHxH#s7E94$HuI#t$E94$gHxI#t$9DE9~ HxH#sL9tHUL躼fLeH9]IsE1LkMIM!MAEvID$HEL=HHHAUHEUHuL0芓LEH}M\$CL9<ID9soHH]D;H#KHMIIL}D9;FHxH#sE9>hHxI#v;E9t$@HuH#sL9gE9~@HxH#sL9XDE9t$@HxH#sL9 @E9eHuI#uL9E9eHuI#uL9PE9eHuI#uL9E9egHuI#uL9BpEV LD)D93Mn AEPE9f tHuI#uJ@AV L)D9&Mn AECE9f gHuI#u=DEN LD)D9Mn AE3E9f WHuI#u-@EV LD)D9Mn AEE9f HuI#u@E97_HxI#w3E99HpI#qGD91_HxH#q%E97HxI#wXE97HxI#wrE97HuI#wZf.D9:!HxH#rL9mgA]MeAefL;mA]MeAU!fL;mA]MetAEfL9mfA} AL}E k@MIL$M#UMHMuf.ID9s8DID$Hp!HxHE賽HuHEHuHHuHL%HEHu.E97HxI#wL9DL8I E977HxI#wL9DLI E99HpI#qL`L9DL豶L`iI kfE97HxI#wL9DLhI D91HxH#qHpL9DL!HpH fE97VHuI#wL9DL۵I -f.D9:HxH#rHhL9#DL葵Hh H fE9f@HuI#ufE9f@HuI#ufE9f@HuI#u~fE9f@}HuI#uSfD9;HxH#sD93HuH#sf.D93HxH#sbHEHM^DHxHMfHxwLeHELHHHEHxGLeHELHHHEGEM LD)D9G^DAU L)D9d{fDAu )LD9fDEU LD)D9 DDS DHD)D9BY@s D)HD9 !fD{ DH)D9fDAu )LD9:QfDAu )LD9KbfDA} L)D9fDE9eHuI#ufES D)D9AR )D9fEJ DD)D9EY D)D9Ds DD)D9Df DD)D9E93 HuI#sf. 7fA*E> fA*UP fA*eaLkLxIIM!LMMrL~LkHUIHM!HUM=Lf.9HsL!d@E9;HxI#sZE9 IsH!@AE]fI*MD@AUfH*D@2EEfI*>DA9vHuI#qMf.D9%HuH#wf.E9"HuI#rf.E9 HuI#rf.MAfIM I*X7MAfIM I*XIMAfIM I*XZIlI mI"mfHA4HH=Jf.UHSHHH4HHJHH߾([]Nf.@UHATISHHtHtxH)HHwIvH9 I M9uL@MtLήH8H[A\A]A^A_]DMMfH L-5H8Ls LCH @H5Y IL HDž(L0L8L@DžHL@$@Iv H0M>LNMVM^(HJ0H<5H8H0H@HPH5ILpLBHDž8L@LHLXH`DžhDžxMDH=5M&I^LHH8Mn H @MFH5EILHDžLHDž蘭IvIN(HPL.5MM^ HB0LH8HhLBL NHxH5aIH@!HPHDžXL`LpDžLDž-DLIMvL=5I} MEH @HH8H53IHDžHLLDžxIN IV(HL 5MM^L@0L%NH8LH5IL@HH@HHDžLLLDžL Dž(ҫ DLMMfI}0I^ Mv(H5NHMEH8L==5HH59IH@HDžLLHLLDžDž*eDHMM^H4HJ H8LBHH5IH @HDžLLHDž谪I~M.L`LG4Iw LH @HxMGH8H`H5CIHDžhLpDž8sMIN(MM@L%4IV@MVH{hJH5IM^ IFHLpL5@NH8HMMEH @HUL`HDžhLxL]HELeELuEH]E艩@H@MMfH{0Mn Mv(H5NH@LCH8L=4HH5WIH@HDžHLPLXL`LhLpDžxDžDIvIN HL v4IV(M>L@0LNH8LL@HH5IHH@HHDžLLDžLDž:uDH=wNMMVM^ Mv(LH0H8Ml$0H4H@MD$H5ILHDžLLLLH Dž(Dž8萧I~@IvHHH&4MMfHH@LeJMn I^(H L=NH8HH @H(H5IH0 LPL@HDžLLLHDž8L@DžHDžX輦I~ Iv(LL N4IN@IVHMG@LտNM.I^HL5dJH8LMGHH5IHH @HHDžLHLDžLDžLDžI M9KdIj]I~]]UHAWAVAUATISHHH`tHĸ[A\A]A^A_]fHAHDž@HHu+HHRHtr yHRHuH9tx ~$L@H`HHL`x$mLKIysL S]Dž0[STGIFfPL`H HDž(ƅ6DkIO@HuH=WLL/gH}L !IZDpL@H5IH`LH @LEMGHDžhEHEEELMELHIt$MT$I<$H@M<0L9M\$M9MtHILH-I<$M|$IB?H@L9tH IL9tƃfAZL[FILe MEL`L H5 IMLL`)H H(vfD1LF_I<$DDI<$1f.AH [HZ@tfDUHHHAWAVAUATISHHHDž@Hu,@HHRHtr yHRHuH9tx ~$L@H`HHL`x$HCLHMEYL`HMH5nI HD`СH L@1HL@LsIW@H=PIL@HHH`LWLLmkL pLӐIH @H5ILEMGH}LHDžhHELMLUEL]EEH@IL9tyL(It$M|$I<$H M40L9IT$I9MtHILHI<$Mt$IB7H L9tLHIL9tƃH[A\A]A^A_]DL+1HL`A1L0HAHMDPH5IHD`@1L\I<$4D I<$!fHXHXH1Xff.UHAWAVLAUATSHH HHxHLPLH5I荃HIVAH9t赞E L+HA`1HAH1L HA$H HHIH@HHPL1HHHhA@L H1HH`A H0ƅ@LSE1HpHH =gH0HDž8AZ% IzBHp11pLHL8ƅ`LPƅHpH AL$DH5IL0LXIHH LLLPHDžXHpHDžxLH8茝HHDžHHu6fDHHvHtDN EyHvHuH9t DP E~HHHLx$ HHHHGH0HHH0DcHLPL8 H5IDž`Hp DPLxH(~H5fHH GI:H ZLHHDžLPILƅ PL;HAH1HDHL0LH5I LD贛H0MT$HH8L9AHPL@HH9HH ~LHHH0H@HDž8IH0L9t芚HOD[Ag f.Hxz"u .zu /%щ3HAH I1l H9t D@ E~+LHHHLLx$LhMHDžLE`HLLB58LLDžhIIAHHL I I~LXDHHHIHLHH IHpLLL IHH Isg D0H@H5> ILPLpL`HEDžxEHLHMHuLUEL]EEE舒LLLHݙ @HɘHpM}HPHxL9GLXLIL9HH`D~LHPDDXH HpHHDžxIHpL9t蝗HIL9t舗LcMT$M]AzKLLGWHIpPLPHIHXM@L-ILHL=gH@LH5IH0HDžL H(L8L@DžHHPDžXL`DžhLpDžx LxLHIt$I<$ML$I0L9 ID$H9 Mt"HI HL!HxH9HxMvH^HL9tHPHHH9tL HIL9t˕L(HIL9t试H0HHH9t蓕L8HIL9twLHpIL9t[LXHPIL9t?HpH0HH9t#L`HIL9tHhHHH9tL@HIL9tϔH [A\A]A^A_]DIzIzH IHIMI IzHDDH0D[H L8L H5IDž0H@ D LHH0褔AD 3D/ fEDHx@E.‰D @ HATH I1yffHH5b ILRLHL)HHMFMl$L9 LM9# A) fF LLINCD#LLI|$HI9] HLHHLDžHHMu3LM@MtEh EyM@MuH9t DH E~$HHHL{Lx$HhHL IHE`HHOpHLHHH bILLXHIH8DLLxD L LIDL(Lg-8HH0H5kgD@DPD`LpLLHLLHDžDžDžDžDžDžHLHDž'LLLHݙ@HhHM}HPHL9FLXLIL9HH`~LHPXHHHHDžIHL9t?HIL9LcMT$MI|$ LHH[HILHwPLPH¾WAKLXHL%XILLLgLGH5e ILH@H#HDžLLLHDžDžLDžLDž蜏LxLHIsI;MkI0L9M{L9Lx1LKI<$LPDLHPMeHpHXL9<LL`IL9HH~LHpxHHPH`HDžXIHPL9tHH5ILOMLHL)H.LMNMoM9YHI9i) fC8LLM^CD<LLMT$LM9dHLH HLDžHHMu!LMmMA} yMmf.Mn1L;I~0@0I{alpha_bfoIHfoIfHfo%IHDž0HDž0LGeta}@X` HDž ƅ)HDž袌Lx@HIHLH@LLIIEMHt H/IIMM}B8HIE LHIE0HIE LHt HII}LAAU0M}(LMN0B8HLL9tJHMVL9t5LAl$L} IOc$MAH~LHI|$H0'@HtHa謉H8HHH0IzH ILIMIIzIDLx1LGyf.A1LLH IFA1LLH pIFfoM) fHtH輈HxHPHXHpfDoID)HtH1\HHPHXH@E.AAEEE@HAiH I1[SHD~LHPDDXI}HpfHD~LHPDDXI}HffDfDADDDHxH?f.LEE]1@MWDM9 IFIEM}HLH輆IEM IIE M}0HLH脆IE HAhH I1=Z@@7H8HHA}H \I1YHAH \I1YLƅHDžIt$HLM9t*@I}IUH9O 貆I M9uLMtL蕆HID$HpHH9b LLIL9 HL~LHpxH HLHDžIHL9LBMEI} HLIu(IM@LH@L4IUHM}LDJLHL@LL-\NHH5WHHH @HLHDžLLDžLDžLDž蒅fL,MeME HL "4I}(Iu@HB@LNIMHM}L LL0L-CJLB H8LH@H5HHHH @HHDžL(LPDžXL`DžhLpDžx贄MeI} HLNIu@IMHHP@L:4M}MM(LLHLBJHLHH5MHHH @LL@HDžLLLDžDžLDž߃JMeMmL@L x4I MGH @LPLH5HH@LHDžHLXL`DžhfIMIUHLHp L4LHDžHL@H5HH H @H(L0Dž8XMeHM]H NM} LG0Mm(L s4L(LH5hHLLGLHPH@HDžL L0L8L@DžHDžXFHMMMUH=yNL`0M] Mm(L=4LLL@H@H@H5^HLHDžLLL L(L0Dž8DžH蟁 IuIM L`LIU(MMMB0LL`L4MBHxL-NH5rHHH@HHDžhLpLDžLDžcMeI}(HH54M]M} LB0H NLLLLBHLHH5HHH@HDžLLDžDžQMeIuHpH=4IU(M} LuNLh0LLH@HH5_HHHLLL@LpHDžxLDžDžLL%K4MMMUIK MCLLHH5HH @LLHDžLDž1HIuIU(L=4L`0MUM] L@LLL-?NH@HLH5xHHHDžLLLDžLDž~I}MELLII L4HDžHH5HH @HLLMALDž~|Me IuHPH=DNIU(M]Lx0L@LpLL-4H@HhH5HHx!HLLPHDžXL`LDžDžj}MEMMLLIJ L4LHH5HH @LMBHDžLLDž|\@I M9fDHtH[,{HXHpHxHPHtHzHHpHxHH~LHpxI}HPmDH~LHpxI|$HF@AZDHHP@HxHPFDDHHp`@7HXHpLH=26xLH=2vH=%b3uH=b3uH3H4H5I5H3H3H5HF5H5H5HG55Hd4Hx4H4H3HH3H3UHAVAUIATISHpHP@tP13@I|$IT$ H)HH9VHL[LLI{LAHIL9tQdHIL9tDcHH5SIH=LLPLL[ILXH@EIA0LLHEL=IMA'H5HHHLHDžLLDžLDž^HHLLDKHLIr@HHILLLIHLH5HH @LMBHDžDLDžHDžLDž]HIMHHH9FLLIL9HLD~LHDDH~HLHDžIHL9t\HIL9t\LIwMgIHM,0L9SII9 MtH<0ILH][ILMoB(HPIL9tE\HHHH9t)\LKIytIytL+HA; E10@L[HS L)HL9KLEOHH@MU0MEHDžH5/HLDDž L0Dž8H@DžHH=M_I{sI1LLHAM'HLHA$H1HIIHLP@HLPHDžXIH0M@D_HPLH@pH5)HD`LDžHDž  I9 HH0LDH EH{ HùH9tHHLL*IH{$uIH Hƅ1HDžHHEWEOXHHEG\L`HHHhI<$HMd$HDHLDH(LDLL LHHHHSHHH HLLHLLLHHH~2LHDž HH H=SLLL(L%HLLPLH@LHpH@LELFH5HHUL0Dž8DžHDžXH`DžhDžxLUELMEEEL]E 0HHHH9t0HHHH9t/HIL9t/HHHH9t/HH0HH9LLDAԃ A_HH5HH=LLLH HL'HI@0H0HEM@LHH@H5HHHHHDžLLL Dž(Dž8S/HLLEGL0H iHIs@LH`LPLH*HH0LH5HD@MCHH @HDž8LXLhLpDžxHDžDž.HML$HHL9LLIL9{HLD~LHDDHkHLHDžIHL9X-HELHN LFHDžLHH5QHH@LDDžn-HMfHHL9lLLIL9HLD~LHDDHHLHDžIHL9tB,HHHLAԃHL H HHIs H@MCH @H8HH HH5HHDž(H0DžH,HLHAHH 0HLb@LLBH@LLHHr LH8H5HHpH @HDžL0LHLPDžXH`DžhDžxQ+HMT$HHL9LLIL9HL~LHHHLHDžIHL9LPEgHH@IE ME;HH5HHPHDžXD`LpDžx>*HHH$HHH9IH9HHH2*LLx )HxHHIH9HrH)Hx HxHHADDHtH 'HHHH(HtH|'HHHHHtH<'HHHHHLKLd(fo H@sI_B_scaleAHHDžL@@_biaHDž@(@HtH0&HHHH-HEESHLP'ItIDS Ex>IHuODHZAHt)Hڋr HZE1fD1lfHE HL&}@IIK E1H~LHI|$H@HD~LHDDI|$HHD~LHDDI~HmfHHSH&fo=H@sH_B_scaleAHHDž8Hx@_biaHDž@@HHSH%fo%LH@sH_B_scaleAHHDž Hx@_biaHDž@(@H~LHI|$Hj@IHu"H{AHHDS EH{E1HHHHGHHHH1HӄVL9ujHfHN1HDH1s 1@VD[ 1E@gHIH9tHLHu$HLp HHI9yH@$DP IHuLJAMtULDZ ELJE1@IHu!LZMLڋr LZ1HEEHoHHHHDDHH3HHH1HE1IHu"HCAHHDS EHCE1IHu"!HZAHHڋr HZE1HH9HHs"HDX HHE I9jHHHp HDž8L@LPL`DžhDžxH{Hs( HL@0H 1NL#LS LL bl4L@HLHH5HHH@HDžLLLDžDžHH{ HS(LL{0NIr0LLcHk4HH5HH@H LH(L@MBHDžLLH0Dž8DžH|HHK H5/NL HW0L[Lc(LGHLL"k4HH@HH53HHDžLLLLDžDž HK H L H=j4L@0H3/NL[Lc(L H5HL@H@H@HPLH` HDž(L0L8LHDžXDžhk>HsLLLpL.NLK L[(IL$0HHi4HpH5HH@LMD$HDžxLLLHDžDžH;Hs LH -NHS(LSMY0MAHL%Fi4LHH5GHH HH@LHDžLLDžDž+H;Hs HL h4HS(L@0LSLL-NLL@H@H LH0H5HH8HDžL(L@DžHLPDžX_H`H{HK L,NHV0L#LS(Hh4H`HxLHH@LLFH5HHDžhLpLHDžDžH{(LL H5g4IJ0L[Lc MBH ,NHH@HLHH5)HHHDžLLLDžDžN!H{(HL L@0H y+NL[Lc LLf4L@H(LH5HH@H@HDžLLL L0Dž8DžHHsHS(LPL*NI|$0L L[ H5f4HPLH@HhH5HHxLMD$HDžXL`LpHDžDžHK Hs(LH=A*NIS0LLKMCHL%e4 HH@HH5HHLHDžLLLDžDžoBLLSLH0H e4HDž8LH L@H5HHPL@H @L0LHDžXHSL`H=d4LIt$ HMD$LH`H @H5HHxHDžhLpDž^LLS LHH d4HDžLH LH5HHL@H @LLDžHSLH=c4LIt$ HMD$LHH @H5HHHDžLDžzLLS LHH 9c4HDžLH LH5HHL@H @LLDž6 HSL H=b4LIt$ H@MD$LH H @H5HH8 HDž(L0DžH LLS LHPH Ub4HDžXLH L`H5HHpL@H @LPLhDžxR %HSLH=a4LIt$ HMD$LHH @H5/HH HDžLDž LLSLHH qa4HDžLH LH5HHL@H @LLDžn AHSLH= a4LIt$ HMD$LHH @H56HH HDžLDž LLS LHH `4HDžLH L H5HH0L@H @LL(Dž8 ]HSL@H='`4LIt$ H`MD$LH@H @H5:HHX HDžHLPDžh LLS LHpH _4HDžxLH LH5HHL@H @LpLDž yHSLH=C_4LIt$ HMD$LHH @H5?HH HDžLDž3 LLS LHH ^4HDžLH LH5HHL@H @LLDž M_IGMAG|I!I=f.UHAWAVAUIATLeSHH(0H)LLǃdHHIURLH5HIhH}AL9tEuIHLMHu-IHvHtN yHvHuM9t A|$ ~[(LM@ LLI@$HP uDIHtEI9tHtKLL3HAD$$ƃH([A\A]A^A_]LM1DB E9D$ @Iff.UHAVAAUIATISDLLHH^H[A\A]A^]If.UHAWAVAUATISHHHt=LHL HH@HtD@ EyH@HuI9t ~ L~_E11fDI|$IT$ H)HL9JLAD$ E94$u$It$L!L9 DLtML$ LAAI EQ D)D9D I LAAy EY D)D9u$LML9DLLMI L9LeMLAA)Ei D)D9$Mi LAEEM D)D9MU LABAz )D9IU@HBDB D)D9uL9HUL<MM`L9@HuH}ڸHh[A\A]A^A_]E9 HuI#pLEL9tHULLEfDA AHIL xEIMLLuIH0EI8LUE)fA EEM!fLEuL)H DEHH}HHt}Ht>AE E] DLD)D9uL9DLI AEE9}u$HuI#uL9DLI AEAu D)LD9uL9zDLgI L9H]LAEEu DLD)D9uH9(HUH<Mu MAFAN DL)D9uH9HUHMn AEAU DL)D9Mn@AEEE DLD)D9uH9HUHoMn`L9mL}L-VҼIIEIEL}H=1fE9` cHuI#vL9eHUL)QMV LAB>E9f IHuI#rL9$HULM^@LAC$E9f@HHuI#sE91HuI#qLML9tHULLMfDLe IHH xIIHuIII0LUI8ED)fAAEDEL!fELpLDM)DI H}IIAIItBAD$hAT$ L)D9uL9*DLM|$ AGwE97u$HuI#wL9DLfI AGE97u$HuI#wL9DL.I L9 AGEW LD)D9uL9pHUL\Mg MAD$E94$u&HuI#t$L91HULM|$ AGEG LD)D9uL9HULcM|$@AG{Aw )LD9uL9HUL"M|$`L9HμE1HHCfDE9q CHuI#uL9UHULAMU LABE9u )HuI#rL9HULIU@HBE9u@)HuH#rE9~ xHuI#uH9tHUH-WDH]L9AEXH}IHH}LIHkHIAMHEMLuLmB0LRL]H}IAL9t[IHUL#bHLE9}:HuI#uE9>dHuI#v:f.E9~@HuI#uH9E97;HuI#wL9E\$ LD)D9,M|$ AGIE9t$ pHuI#wFfDE91HuI#qfE98NHuI#pf.I9kfA ALuE6DE98HuI#pLEL9jDL/LESI f.E91HuI#qLML9~DLLMgI fE9t$@HuI#wE9}#HuI#ufHEHMDHxLuHELLH HEAw )LD9 EM DLD)D9=T@Eg LD)D9}fAU )D9fDEL$ D)D91H@IuH]IHL!H]H,IfE9E}HuI#uTfE94$It$L!ILjHIIHH=Yf.UHSHHHIHHYHH߾[]Nf.@UHAWLAVAUIATISHI9D2D;v }KH_HHH9t'H,HD;p HxIEIEH[A\A]A^A_]fDHW H9 HmHD;p I}HEID@H(tLO DE9Q I\$HD2DL[AMtLۋK A9|L[E1MuHE1A9HNHNH[A\HA]A^A_]HH1[A\A]A^A_]@H1L[A\A]A^A_]@Ml$MuIUHtbIEE E9|IU1fDHH1[A\A]A^A_]@LHUI9\$tHHuHߋH HD6/DL@u1E9HNINYML9tLVLD@ If.I\$HuF@HCHtHËK A9|HC1H@u1A9HNHNLI9\$HHڋH Hf.UHATISHHtHtxH)HHwH{HK H@HL 4LML L[(LP0HXH5sHLH`H@HpLL@L@HDžHLPLhDžxDžHsH{(LH4IK0L#LK MCHL*MH@HH5UrHHLHDžLLH Dž(L0Dž8uHHsHS(H MLG0L#LK L4LLGLHH5qHHHH@HDžLLLDžDžֲaHs HPLH=p4HP0LMLcLK(HPH@HpH5pHHLLL@HDžXL`LhLxDžDž7HK HLLLSLc(LN0LFHXMH H4H@H@ H5FpHLHDžLLL(H0Dž8DžH蘱#H;LCLH 24MS HH @HH5oHLLMCLHDžDž'HL#LKLHp H4H @HDžHL@H5="HHLLDž趰AH;LCLpH P4MS H H @HH5nHLLMCLpHDžxDžEH@L#LKLHp H4H @HDžHH@L@H5DnHH`LPLXDžhԯ_H;LCLH n4MS H0 H @H H5mHLL(MCLHDžDž8cHL#LKLHp H4H @HDžHL@H5?mHH LLDž}H;LCLH 4MS H H @HH5lHLLMCLHDžDž聮 HL#LKLHp H4H @HDžHL@H5\lHH LLDžH;LCLPH 4MS HpH @H`H5kHLLhMCLPHDžXDžx蟭*H L#LKLHp H24H @HDž(H L@H5ekHH@ L0L8DžH.H;LCLH 4MS H H @HH5jHLLMCLHDžDž转HHL#LKLHp HP4H @HDžHL@H5kjHH LLDžLH;LCLH 4MS H H @HH5iHLLMCLHDžDž۫fH`L#LKLHp Hn4H @HDžhH`L@H5riHH LpLxDžjH;LCL0H 4MS HP H @H@H5hHLLHMCL0HDž8DžXMgIGM'AGkI7odoXoIoUHAWAVAULATISHHH`HKIUHDžHHqƅHD~ZH5L|ZLL HLAP{H(L@H =~JHH5HLfL HMQPHhHPHDpL=sHHUpHMH@HuH5_lHLEMAL@HDžHL`HEEEL}EEeH IL9tШLIt$ML$I<$HM40L9MT$M9MtHILHlI<$Mt$HB7HH9tYHIL9tDH[A\A]A^A_]fH5iLXP@1LdI<$DDI<$xACHemImHjmff.UHAWIAVL`AUATSHHH`LSIVHDžhAH`IJƅpHqHDDž0.0fLGHXPLHDžƅAgAh4 AjR MZƅHDžE A!DHLIUGHAZH5lLTWDcH H`H:pHHN`PLL{JH LH ևfH1fHpLhH`D0L%SfHPHL`LFH5YlHHUHMH @HDž(Dž@LhLxL]EHEEELeEE+H`LCHHhL9MULpL9MHPL~PLPHPH=H`LpHDžhHH`H9t LIwMgI?HI0L9CIGH9MtHI4 LH詣I?I_MMHL9t虤LXHIL9t}H`INH9thH[A\A]A^A_]fDA H UdH1wLS,fDHP~PLPHPH{H`DH5!LTHH`HDKH0HL%bmHH5fH8HLLfGIJPHxJHH`H`HhHH@IEL%.fHL(HHH5lHLLHHLH<HHH5fHHDžƅHDžhƅpHDžDDžHDžDžDžLPLMBDžHML$HHL9 H0LHH95 H L~ L H H% HLHDžIHL9t蹡H=mkHGDcH fHEHHHLaHHV`DL%CkHLHLHHPHH(L`HhLLPLH H LH0H @LL@LFH5dHH`AHDžDžLLLHDž(Dž8DžHDžXDžhHML$H`HL9L8LIL9 HHp~LH`hHHHHDžIHL9tȟDcH`Hh)GHLH`LhDL%KiHHH@HHHL^PHHPHHiHLL LLFH5cHHLHLHDžLHDžDžDžH Dž()H MD$HH(L9MUL0L9HPHD~PLPHDPDHH H0HDž(IH L91LZI?0fDHtHq輜HhHHH`{fDL0HpHPH5MgHIJPHPLHH@H0H@D@L%&gHLXMBH`HHH5bHHHDž8LhHxLDžDžLDžDž9H@HCHHHH9'MMLPL9HPL~PLPHPHH@LPHDžHHH@H9tL8H`IL9tH0HHH9A H [H1nf.AH ceH1gn[fDDI?LHHPH5_HIxPH(D M@HLHLLPH@H@H HpCHDžDž0HXL`DžhDžxLDžLDž0HpD[LLHp`HHHDžxH`HpHPL(DLhLLL@LHH HH @HHHH5v^HDžLDžLDžLDžLDžDžH(H0LHHHHM$0H9&HI9FMtHILH)HL8LB'L(HhH`IH M$0L9LpM9MtHI$LH赗H`H(LhB'H HH9t薘H HHH9tzDcH`HhHtHHLL5MLL-MLL>HLLfLL HLLHHH=y>HHH dL@LPH DžDžDžDžDžDžDž Dž Dž Dž( H0Dž8 DžHLPDžXL`DžhLpDžxLUELMELELF H5?HH}LHMHEEEqHPIGH;HXH9QL`I9yH(Lc~(L(H3(cHlHPL`HDžXIHPL9~aH HBLHLpBH }gM~ LHDžHMFH @H5?HLHDž{pHpIEH;HxH9LI9 H(Lc~(L(H3([HHpLHDžxIHpL9HH= }gHH @Hr HLBBLHH5>HLHDžHDžtoHMEH;HL9LI9H(LS~(L(H3(KHHLHDžIHL9tdnH H[A\A]A^A_]HtH$mH8H;HSH0]fDHtHlHH;HSHWfDHtHAlHxH;HSHpfDHtH!|lHXH;HSHPfDH(~(L(H3([IHP@H(~(L(H3(sI~H0C@H(~(L(H3(CI}H=@H(~(L(H3(SI}Hp@HxH;`@7HXH;@@7H8H; DDHH;$I@4f.@UHAUIATIS1H3fID$IT$ H)HH9s+HIr I" I Is I @U1HAWAVHAUATISHHHHH HxHHHDžƅHp LH1HHhA@HHHH`PLsLpL=6qVLMQ0L5GH@LL0MAWLH5HLpHDžxLLDžLDžMBH0IEHH8H9 HxL@HH9hHL~LHHXH0L@HDž8IH0L9t$ALIt$MT$I<$HLM40L9L M\$M9 MtHI LH?I<$Mt$B7L+HA8HHL`HL@{LHhLPIH0L`M@HDžHL0HH@H5LHLHLLDžLDžq@HPM]HHXL9LxH`IL9P HH~HHH@ HPH`HDžXIHPL9tH?LIt$HM $M,0L9I|$I9MtI<1ILH=M $Ml$IC)H`L9t>LLL9LDSL8LpIC0MCLL@H5HL=GH@HHDžD L0DžHLPDžX>HpMEHHxL9WHxLHH9HL~LHHHpLHDžxIHpL9t=LIt$HI$M<0H9 I|$I9MtH<2IH LH!:HĈ[A\A]A^A_]@H~LHI}H0DMHLL 4AD9Of.1LVI<$/DfDI<$ f.HLLLHW L !)HH @HDžHH5HPL(LGLL L0Dž8f9HINHHH9'LxLIL9HLD~LHDDHHLHDžIHL9t:8LIt$HI$M,0H9I|$I9MtH<2ILH6I$Ml$B*1LI<$DHtH^6H8HHH081L.M $uD1LI$Ml$B*GHtHM6HXHHHPM $ 1@7I$H~LHI}HpAHtHy5HHHHH~HHI}HPHD~LHDDI~Hz1@7I<$1L~I$HtH04HxHHHpLH@H O%HLLLh H`HLPH5HL@LH @L@HDžHLXDžh5HM~HHL95LxLIL9HH~LHHHHHDžIHL9@H8HH~LHI~HxDDI$`@7HXHHH0HtHtX2HHHH@7HxHLH=wG1H9@7HHHH'HtHPH3HHHff.UHAWAVAUATISHHH DXE1ALIL H8IHPISHHHHt:IAHIyIHHIxHH HHHH HH~H AK9HK|9K8IHK|8J?I HJ|?J>I HJ|>I AIE!K9HK|9K8HHK|8J?H HJ|?J>H HJ|>H AIE!M9K9MWHK|9K8IHK|8J?I HJ|?J>I HJ|>KD9I HK|KD8A!IHK|JD?I HJ|JD>I HJ|KD9 MW I HK|KD8 A!IHK|JD? I HJ|JD> I HJ|KD90MW0I HK|KD80A!IHK|JD?0I HJ|JD>0I HJ|I I@A!M9LHLLMGIs H @SLGLMCHH5 HHLL0HDžƅHDžLLpLDžW0EMD$H1LLxH R HAgI|$Hxp H0LHE1H`LHL=HHpL HH HLXLPLLHL@H8Hh@H LHHHXLHHLhLH8LVLxHHPLPH`L@H8HHLpLHH13@HLHLL0HDž8D@LDžDžHDžDžDžL`LpHDžHMGLW.LIt$HI<$M<0H;x?IT$I9MtHI/LHt,I<$M|$M^B?HL9]-ID9MtI<2IuLHu+M$M|$IC:HL9#fDLHLIL$LpMY MAHxHNHH @H5 HHLHDžLL Dž(J,LIt$I|$I$HHxM<0H9eMT$M9:MtH<0IOLH^*I$M|$HB8HH9G+fL+Mt$1HLxAHHIL$HH(HxRpHDxAv H0ID$A1H HHxDEOLMD$E1L@H=HLHIpH5HLEILxHHH8L0LPHHLXH`LhfDH8LL HLLhHIHLHHH~HIIHIxLPHHHHyHLELPL8LH H@L`HhHDžDL(H3@LpDžxH0EH`HHL@EHXHULpHH}MCHLHEEELUEc)L8It$H0I<$M<0H9x ML$M9MtHILH'I<$M|$IvB?H0H9trm(ID9,L(HIL9t@(L0HIL9t(HĸL[A\A]A^A_]fID9D1LI<$IDID9nf.AD1LVI<$ D I<$f.fDD DI<$MD$H0H H1LxAkaLIM)IS7L0HMuTIsH9 LM9LfoHfo HfoHfoHGPm});fo%HOW _0g@HLBD)TA1LM$1LI$A1@7I$M$LIT$ATLH0HxH H1HAI\$H=D 2Hx!H+HaI}H?HHHfDUHAWIAVIAUATSH]HHH1HL1HHAwHK0LTVx\HML {HH@uH5aH}LLELCHHEELMEE%IHM@LHtBMIMMd$MtE\$ EyMd$MuL9t Eu EL 1EHDž(I^f0H ELPLPLfDMLLAPpHXLP LH`HXH5THLP=$LEH(M^H HMM$0L9.H0I9Mt H<0IKLHX"H HL(B H}HH9t<#HPMML9@ ##A9H L(LHHH @Ir LhHhHHMBH5HHDžHDž#LLEHMIsII{HI0H98MkL9Mt#H<0I#HL3!HHLLIXIH}L9t"H IL9t!AL5(H H LDžHLVHHHHLHLHfDHDHDžIHƅHA\$HHtDHILMmMtA;] ~MmMuHH9t ;X L1DHDž(f0L EfE; LpLPLfDMLLARpHPLX LHDHpH5HLx LEH(HMH M40H;5 H0I9 MtHI LHH LL(B7H}IL9tHPIUH9AE9H L(LLL0HM` H5mHH @M@LLHDžLLDžH0M^HH8L9 HH@HH9N HL~HHH> H0L@HDž8IH0L9tH LH;t{LDH@HDž(LHDžHI} HD0MEH HL@LLEHMIrI:M$0H9MZM9,Mt"HI:HLHH9HLLbIB'H}L9tLHIL9YlA9TDž HHfHH@Htx yH@HuH9t ^ LM8H HLHILJIHL`(EHm HfDHHRHtr yHRHuH9t DK E~H8HHH0oLLLR LI$xHPLLcHLPIq(MUIQ0LHLHXH1HHPI{ HMCNHHH5NGHH @HDžHDžLEIuMMMUHMLM$0M9aMmM9Mt#I<2I HLHLHHL`HC"H}H9tHPHH9H~HHI~H01B A9E @L1L IE HH H AHYL1LMDDHLAJAIx(H9tLLLM@H8H8LIL1LI$M\HALIAHH2HHHH@H#HILIILHFIHH*LHILUHAWIAVH0AUATSHH HWHHH0Hzƅ@HDž8 L'1A$L(I1HAxH@L-?V`HN0HL%eH@LFH@H5RGPHPHHDžHLLpDžxLDžHLHpHHpAPL H1HHhA@LDSHH@IC0MCHDžH5GHDDžLDžLDžH&HHHHHHHDžƅHH5H1HHLLLIp0M@HLH5GH@HHDžDžL Dž(NHMMHHL9fLLIL9_ HH~LHHO HHHDžIHL9t%HL+HDžHHHHƅ A8HhH H HH@DCH0LL0LN0LH@D@LFH5GL0HDž8DžPL`DžhLpDžx H0M]HH8L9cHH@HH9GHL ~HHH7H0L@HDž8IuH0H9t LH IL9tw L{LH@Mj0MBHDžLLPH5GLDžLDžLDžLxn HxLH;WH1HQHpHGHHHpߠDHH`AP@AAD @HHHHX菭HHHPMHLHHARpLHLPLLIMc MCLL0HGMHhLH @H5GHDžƅ LPHDžXL`HHpDžx H0MFHH8L9#LL@IL9;HL ~LHH+H0L@HDž8IH0L9t D^EH L-GE1H GHL LHgMtHI^LHcHHLB/H HH9tD DIEZE9d1EtLL8HIIHIyHHDPHLHDž(H`LHHHHH0L@DžhMV@MFH@vH5GL LpDžxDžLL(HHIH M,0L9"H I9H1H1LMLMgC"H@IL9tLHIL9tHHHH9tHHPHH9tjLHIL9tNLHHIL9t2HPHHH9tLXHIL9tL`HIL9tLHpIL9tHxHPHH9tLHIL9tLHIL9tnHHHH9tRHhHHH9t6LpHpIL9tLHPIL9tE15fH{HS H)HL9JLM9LA }I LfDNLLACD D9LLH@H5?GLHHDžLDLDž LL(HHIH M40L9tULM9H1HHA 1LH GҽDAADLLHHHHH LpHLHHDcHPDwLXHHDž( LxLpH HxHHD0HL@D@HPLHLXLpLLhLpHxLHLHHLL`LLLDžHLPLLHXLL $GHHLLGLLHH Y1LL%GLL5GHH=GHHGHHGLLGLLGL L GLL0LGH@H @LDžDž(Dž8DžHLPLH`LHULELFH5GDžXDžhHpDžxELUE L]E LME E tHIL$H0HH9HLHH91 HL@D~LH0DD8H! HLHDžIHL9tGHpIL9t2L8IwMoIH0M$0L95II9wMtH<2ILHILMgHH5GB"HH %LEPLHL@H@HDžDLDžHM\$H0HL9LLIL9jHL@D~LH0DD8HZHLHDžIHL9tL8IwIH0M40I9 II9MtH<2I!LHUIMwB2LL9xULHLpHH=\GHH@H5lnGLLLxL8LHH @L L@H@LHPH`H5 GHDžLLL(L0DžHDžXDžhHMt$H0HL9 HH HH9HL@D~HH0DD8HHL HDžIHL9tL8IwI?H0M$0I9 MWM9 MtH<7If LH`I?MgB'L0fE1ɺLH5eLD) D) D)H0IFH0H8H9LH@IL9HL@~HH08HH0L@HDž8IH0L9tzL8IwMH0M$0M9 MoM9[M_I<2ILHM>DDHDDDHQDHHH5 GHDžHH L@WHHH@L0 %Dž8 LL(H8L0IH M40M9 L@M9Q Mt I<1I LHL0LL8C1H IL9J@fMLHpLL]H1rHfD1LVI,fD1L>IfDHtH LHH0H8HUHtH HH0H8HHtHH8H0H8H0HtH H8HHH01@7M1@7HD DIq1@7IHD~HH0DD8I|$H"HD~HH0DD8I~H0'HD~LH0DD8I|$HHD~LH0DD8I|$HHtH"HHHHH~LHI~H0L LLpH@MA L5ILHDžIELH5XGMAHI}LDž#HHpMT$HPHxL9HLHH9HL`~LHPXHHpLHDžxIHpL9tHHG1HH@HHmf.MtHItLHCHPHLXB'H HH9t$LDAA9=LiHL MHILO\ LHHHHLGHIIHH5GHI{HHDžHLDžLDžLDžH1@qHLL(HXHPIH M$0L90L`M9H1読HPfDAHLHLL LpLIH`M@DNHIcEZLJ1HIHI$HI|$DLLHHHpHLHDžxDLLHGL5GH1 @DžHH5MGDžLDžDžLDžHHHLL(HXHPIH M$0L9L`M9MiHLXB'H HH9tHIL9ADDHPAn,H~HHI}H01L3I?HtHGHH0H8HRH~LHI}HH1詪L0A;H<7ILHHPrAQHHbD DHH0H1HPHtH4*HxHPHXHp@DDI?@7HH0@H8H0@H8H@7HH0F@H8HH~LHPXI|$HpgADDL0DDHP@7HxHPLH= ZG1H=_11H雸HTHqHH}H鑺H逸HGHPH鄸H鴸H錹H頹H鴹HȹH騸H鼸HиHHʺHHߺHH酺UHAWIAVAUATSHHHƐAH}HLeHEHELHà  H})fEULL5GHlLHL EHIxHMAD9rpE IAI!""H-vLIIxA@HLH!L EaIAHfDHHEHIfomI!fouHIA, DMHICtH}B(AH9twAMcLHH GH HELEYMIH}fff]A91E AHL!'DIHH9LIL@LIpII)IL9g'IIM9vuHHH9PHCpHx-HHtgL(H L(H H-HH8MH@HHHPL@HHa-H,LMKAHHI!I DbLJf.IHHEfo}HM!A<HLmfo]DH8HHIHXC\0HhDv(D0ADž1LDžDžDžDž(H f.ML LI4LxouLxHMHM!HpLL\0HM9 I9 HI!HpM MM!fDoMLxLLE MIttL8fDoUHLML!DPH9( DžAE1H LI HQHAJH;@HHI!LHQM LL!fDL8fID(LpfDopAD,I H DH4LHMsLuLMIM!HpLH|0HL9;L9;IM!HpI LL!foELuHM LItasLHfoMHDLML!HHD9(r~E DžAE1H LI H6HAJH;%HHI!LHQM LL!LHfILLufoUM8H I4HM{rLuHMHM!iHpLLL0HM9L9IM!HpM MM!foeLuLLA!M8ItqLXfDoEHLML!D@H9(rw DžAE1H3 LI HHAJH;HHI!LHQM LL!DLXILLufDo]DMPH I4HMqLuHMHM!wHpLLL0HM9I9IM!HpM MM!fDouLuLLE1MPItpLhfDo}HLML!DxH9(AE1DžH LI HIHAJH;8HHI!LHQM LL!fDLhfILufom,H(A9LE4$HL GIM D_LOLmE9rsE HAL!HlHHLND6HI!I HLIDafHHE IHfoUI!DIC1D'D04fo0IC|!DDwL {WM D(ADLmE9q LOHHEIHfoeI!D@IC$D/DDfDo@IGD)D7L GGM D(AD7LeA9tLWHHE IHfDoUI!DPHG2D/DTfDoPIG\*DDwLGL D(ADHEE9eLOHE LIIfDomM!͉`HGlAdfDo`HEtAAhvL}HEHELzIă ~ AH}D)fDmEELLLILGB M AENL]I~D9rrEIAI!|HiHIH{ HLH!L EgIWHfDHHEHIfoMI!fomLA DIIClH}L9t(H[A\A]A^A_]fDI9HLXHpIH8HAI!LNHHLHLXH@I8IHx@EcAEE9}DHTEaAEE9mIDHI! DMIHH9 DhEfuMHIIHHtHPM\HzL;v]HML9iLCqHyxLH.HuLL0MH@MILPLXHHIL#mI LmDHILM!H[E1zDHplDWAAD9EIH\"DDIM9Jf.HHHPH8LRH(LL)HH9LH9(r IM!HPLMH!I LL!MLHL(*L(HA{DD9AIH^!DIM9@LIHPH8LRHLL)HH9LH;IM!HPLMH I LL!M LHLJLHDWAAD9MEIHq DDIM9fHHHPH8LRHLL)HH9LH;RIM!HPLMHI LL!MLHLjLHDWAAA9EIHDDIM9RfHHHPH8LRHLL)HH9LH;HI!HPLMHI LL!MLHLLHLML$EAL!H[cLHMNEf.HL!H HIHqDi(fLMREAL!LHbHHLVD6@IM!I HLQDi$@HLNEu`AL!HpbLHMNEHI!I HLIDi'@EnAEE9DHL!tEIII9sLDEnAEE9DHL!nEIII9DDhAAD9%DHL!AIII9DEcAEE9HDHL!_EIII9p EaAEE9IDHI!(DMIHH95 DhEf}MHIIHHtLXOTI{L;v]LMM9hMCpIxLHSHELL0MH@I IHHLPHHHH#]H H]DHL)LH;@HxfHL)LH9(8HxAHL)LH;HxI9w HHNHFHHIHM!HE1L97 HHNHFHHIHM!HE1NL9 HHNHFHv/HIHM!Hu01fHHI!HLHVLLHxH@MILH%f.HL)LH;8HxQLMM9HMCPIxHLI!HHLLLWLLHHHRHHLAH@HHHHHML9ILCQHyHLI!HHLLLLLHHHHHLAH@LHL@HLL9IHCQHyPHHI!HXHLLHLLHLHHLLAH@LHL@HML9ILCQHyHLI!HxHLLL(GH(LHLH2HHLAH@LHL@HHPLL;kHHI!LPHI LL!DHHPLL;IHM!LPHI MM!DH?HPLL;+IHM!LPHI MM!DHHPLL;kIHM!LPHI MM!DHHI!HHHLLH8LHH@MIL@f.HHI!H4HH>LH8LHH@MIL@ f.M1fDM1vfDM1NfDM1fD1111HLPHHI HILM!HLELHHLAH@HHHHfHLL9HHCPHxHI!HHLH(ML(LHHLLLH@I0IHpHHLPHHIC H4ILM!HLLH_HLAH@HHHHHLL9HHCPHxHI!HHHLMLLHHLLLH@I0IHp[HLL9HHCPHx3HI!HH0HLMLLHHLLLH@I0IHp@HLL9HHCPHxO HI!HHLHeMLLHHLLLH@I0IHpHLPLHIMr ILM!H$LHHHH8AH@LHLH_HLPHHIH ILM!HiLELHOHLAH@HHHHfDž1DžDžDžDžHpHpHpUMA1LIHPH8HrHH)HI9TLH9vnHLL9nHCFH~H(L(ItUL#He LL(LH@MLILXHPHI* Hu LI}AM*IʾE1LIHPLLZMM)IL9VHIL9vyHLL9vHCFH~ HHtkHL H(HL(L H HH@LLALHL@HPLHs M LMMEuMA1HHLHH8IqHH)HI9IML9s\HML9jLCzHz| MItNLvH LL8MH@MIL@LHHI H LI~AI˾E1LIHPLHzIM)IL9\HIL9vxHLL9vHCVH~ HHtjHL H(H(L H LHLH@MIL@HPHH M0 LMSE3I˾E1HHHPLHzIM)IL9RHIL9vuHH9wHCwH HHtjHL H(H(L HLHLH@MIL@HPHHMLML$E$I˾E1LIHPLHzIM)IL9GHIL9vxHLL9vHCVH~a HHtjHL H(H(L HLHLH@MILPHPHHLMLMKEHHAI!HHAI!MHAI!0HHAI!IM)IM9LLpML$E$IM)IM9LHHLHDIM)IM9LLPMT$E4$MI)ML9LLxI}AMHL)HL9HxHLOD7II)MI9HL@H{ QMI)IM9LLHMNAHH1MLHMJAHLLLEHLH(L~(LflFHHLLLHLHLD~LfElDNHHLLLxHLHLD~LfElD^HH HHHD~fElDwHݿLHH~flAy0HHLL茿HHHL~LflnHKH7LHHD~fElEa8ALLLH~flAa)达H(HD~(fElD~莾H(L~(flA@ZALSHLHD~fElDoALHLH~fl_ALνLLHD~fElE{LH艽LHH(~(flAILAL@HLHD~fElDAPLHLHHD~fElEQLeHL诼LHHD~fElEaLHLcLHH~flAqLHLH賺IuHLH蝺ILLH臺H,LLHqHHL^H?LLHHHRLLH2HYL1MKELE1I~ALIzA E1QL1MJE2,H1LPD0H1LKH1LHDvHL LHH(~(flARL LH 褺HLH(H D~(fElDOLH XHLH(H D~(fElDgSLH HLH(H ~(flZ'ѹH(H~(fl@WLH 薹HLH(H ~(flr.[H H~ flJ0LL!}LL!BLL!LL!DmDmDIYIrff.UHHGII HAWAVAUATSHLvH}HuLuI!HEHMM<EHhLMEM9LLA MHH0H}LH8AH}A)fHxEEI!fLHEM)EI LEIIAItgIt:LAFCE9&u#IvH!H9- DH肱 IV HBADJ D)D9AH HBz )D9u*HpH9 DHHp H I9L`EIHBA J )D9A HZ HC DC D)D9 LK LAA EQ D)D9 L[@LAC EC D)D9uL9HULEHS`I9BL`fH5GEII HhLuEM9MLA MIH0LI8L]HE)fMH}AEI!fL`MEM)I AILEIAItfIt:LAEAA9]u"IuH!L9lL;ZIM HA?DQ D)9?H HA| DA D)9u)HxL9LѮHxH I9LpMAHADI D)D9~HY HC4S )D92LS LABOEZ D)D9KH{@HGhDO D)D9uL9,HULHK`I9CLEA H GEII H]LeEM9`MM MII0H}LI8H}HD)fAAHUDEI!fEMLEM)I DIHuIAItmIt@LAE/?EE D)D9uL98DLo8M] LAC_=A{ )D9[=I LAC=AS )D9u*LxL98DL|Lx7I M9#LxMHpDMLAF7Ef D)9uL97HUL7Mf LAD$Z:Et$ D)9uL9_7HULӫK7M\$ LAC8:A{ )9uL97HUL蓫 7IT$@HB:DR D)9uL96HULS6Mt$`M9HuH}Hĸ[A\A]A^A_]fDD91HuH#qHxL9tHULHx[LpHh LIIEL AEIHHuIH0L]I8D)fDEL!fH`HDL)EH LEHHHHt@AE==EM LD)D9uH9DHMe AD$;El$ LD)D9uH9fDHéSI AD$K;E94$u%HuI#t$H9+DH舩I M9AD$_At$ )LD9uH9HUH=Ml$ MAEBE9uu%HuI#uH9HUHMe AD$/AT$ L)D9uH9aHUH轨MMe@AD$9E\$ LD)D9uH9HUHz Me`M9L=>1IIGD9q HuH#sL9EHUL1LS LABD9s HuI#rL9HULاH{@HGD9s@HuH#wD9*HxH#rHpL9t HULtHpDLh LHIEI EMMLeII0LUI8D)fAADEM!fELEeL) H DHHUHHt{Ht=AF9E^ LD)D9uL9DL蒦I AF[8E9.u$HuI#vL9aDLZNI AF7Av )LD9uL9%DLI M9L}MAFEf LD)D9uL9HULХMf MAD$eE\$ LD)D9uL9HUL荥}Mt$ AF=EF LD)D9:Mt$@AFEN LD)D9uL9,HUL(Mt$`L9uLmL5氻HIIIFE1Lm D9j 0HxH#sL9bHUL趤NLK LAAD9k HxI#qL9HULr L[@LACD9k@HxI#sfDE9l$ HuI#vL9tHUL@L}M9AF6HUIHHUL踣ILeLL>L]L]H}IAL9t`IH}LGM!HMHLEM| SE9.HuI#vuf.E9,$HuI#t$E9l$@HuI#vL9E94$HuI#t$H9A} L)D9Me AD$E9u HuI#t$D9"HxH#rU9HuH#qM9A|$LuLeIA$AI^HHUI!HH]M|5JIL9G IM L=wCWHELpIM L- GI8L GLhM!D)L`LXTLHfDHML}EHpE L!IIIHuI9IA HUMI0H@fADETL!IfEILEI)DI H}IIA>IItXHA+DY D)D9u8L9 LDH8Lx蹠LxH8 LA LA@)AP )D9uFLxL9Q LDH0L8ZL8H0Lx I LA@(EP D)D9uFLxL9 LDH0L8L8H0Lx I M9ALxH0L(EMLA@P Ex D)D9u+L8L9Q HULuL86 Mx LAG$"EG D)D9uL9 HUL0 I HGg"DW D)D9uL9 HUL IO@HA"DI D)D9uL9 HUL趞~ MG`L9xL(LxLhEELUM9MIAۺLI0LMLH8LHL@MA)fADDfEMMEL)H DHHEHAHHtZLAE)EE D)D9u9DxL9HULL8譝L8Dx|ME LA@&AP )D9uGL8DxL9EHULL0ML0DxL8I LA@&Ax )D9uGL8DxL9HULL0L0DxL8I M9<LxL0ML(ELA@;Ex D)D9u+L8L9DHULhL8)Mx LAGEW D)D9uL9HUL#IW HBDJ D)D9uL9HULIO@HA}DY D)D9uL9HUL詛qMG`L9xL0LxfIL `ELME M9MLAھ IH0HEMI8H@ME)fMDDM!fLEM)I DIH}IAAIItYLAE%AU )D9u9DxL9yHULL8衚L8DxPME LA@#Ax )D9uGL8DxL9HULL0AL0DxL8I LA@"EX D)D9uGL8DxL9HULL0ٙL0DxL8I M9?LxL(EL0MLA@Ex D)D9u+L8L9HUL[L8Mx LAGJEW D)D9uL9HULI HG-O )D9uL9HULۘIW@HBDJ D)D9uL9ZHUL螘FMG`L9xL0LxIL XELM]M9LMΉLHI0LUMH8L@)fADM!fEMMEL)H HHuH9HHtWLAE"E] D)9u7xL9vHULL8螗L8xNME LA@ Ax )9uE8LxL9HULL0AL0Lx8I LA@EX D)9uE8LxL9HULL0ܖL0Lx8I M9CLxL0ML(ALA@Ex D)D9u+L8L9HUL_L8Mx LAG.EG D)D9uL9HULI HGqDW D)D9uL9HULݕIO@HADI D)D9uL9\HUL蠕HMG`L9xL0LxfHMHELMD9E9(IpL8L!L9LxH0LpA LEE LLMH0fDETM!MfLE@H)DH HUHHHHtLA$DQ HD)D9u,L9LDHMLutLuHMH ADA HD)D9u,L9LDHMLu(LuHMH Aq )HD9u,L9xLDHMLuޓLuHMUH I9%L}MIAF A~ L)D9uL9HUL膓MV MABEZ LD)D9u%LUL9HULALUMr AFEN LD)D9u%LUL9HULLUoMr@AF0Av )LD9u%LUL9BHUL趒LU*Mr`L9uL-uE1IEIEHMLUH}HpHMITHMHL!Lc M LD7EM!HuIE K 7HMI9OH0L@A Hf%DETL!fLDL)EH LUHHHHt=AG!E_ LD)D9uL9DL蓑I AG$EO LD)D9uL9DLVI AG'Aw )LD9uL9uDLbI L9}6MEMAG AW L)D9uL9&HULʐMG MA@EH LD)D9u+LxL9HUL肐LxMx AGAw )LD9u+LxL9HUL7LxxMx@AGEW LD)D9u+LxL9GHULLx,Mx`L9}L5E1IIFLML]H}KD ML!HcpKtLoD?LmM!L}IME90IpL8L!L9L0LxL(IL]L XELLLUHH0H8)fDM!fLE@L)H AHL]HHHtKAESEM LD)9u+}L9HULLU膎LU}kMu AFEn LD)9u+}L9?HULLU;LU} I AFAv )L9u+}L9HULLULU}I M9$L}AMAFEV LD)D9uL9HUL虍IN IADI HD)D9u%HML9QHULUHM9Lq AFAV L)D9u%HML9 HULHMLq@AFAv )LD9u%HML9HULˌHMLq`L9uL5E1IIFL}H}IHuL XILPKT=L}L!LcO9L~EM!L]H]I<H}L9ZMMAHII0I8E)fADDM!fEL@MDL)EEH LMHHHtHtIwL!f.E9p@jIwL!3f.D9i@IvL!cf.D9i@GIvL!f.E9i@?IvL!f.E9p@IwL!f.E9j@IvL!f.E9r@IwL!f.E9p@IwL!sf.E90qIpL!A9oIpL!E9[IpL!E96IpL!E9IpL!pE90IpL!@A9IpL!AE9oIpL!E9IvL!E9IvL!D9)HqL!QA9>]IvL!&E9/+IwL!E9/IwL!E9/IwL!E9/IwL!D9)HqL!wE9IvL!sA9>kIvL!4E9gIvL!.E9/IwL!E9/IwL!E9/IwL!E9/IwL!E9U{IuL!6f.D91DHqL!A9UEIuL!fE9]IuL!f.A9HuI#vL9efDLxHpA LIL eMLLeIIH0L]I8EE)fAEEEM!fLEeL)H DHH}HHHt?AEAU L)D9uL9DLsI] CTDk HD)D9uL9VDLksCH Cs )HD9uL9DL.sH I9 CD[ HD)D9uL9HULrLk LAEAU L)D9uL9HULrzI] CDS HD)D9uL9NHULbr:I]@Cs )HD9uL9HUL$rI]`I9L=}H]HIHIGH]1LmHL L=THUH}IhL9umwkA9^ HuI#t$A9\$ HuI#sA9\$@ HuH#rD93ZHuH#sL95fDL9CH}HHH}HpH@E9uDHuI#uE9u lHuH#sBfE9u@HuH#s`fD9)#HqL!E9EIuL!fA9}IuL!f.E9]IuL!f.E9/IwL!dE9/IwL!bE9}IwL!UE9;IwL!D9"dHxH#rHpH9TLeHIL#sM\$L]vLUH]HHI#vAL{L}QI=E9uqIuL!IE9.tHuI#vKE9uIuL!IBIBf.UHSHHHHHHPHtUrH8HtDrH Ht3rHHt"rHH[]d@UHSHHHEHHHPHtqH8HtqH HtqHHtqHHH߾p[]7rHGH7Hx@HHu!AfDGHu5AfDOÐfwfDHMfGUHAUIATIS1H3fID$IT$ H)HH9s+HM^LxHpI0L9IFH9MusI^15I|$IT$ H)HH9Hq@fDt1LvI>;fD I>HH=F1hI@3UHAWAVAUATISHH.Q1.ZGE„.ZGDžDCHsL@LڐUI~0LLH@L 2H@PLH5&WGLpHDžH`DžxLMEMFaLIt$MT$I<$HLM<0L9eM\$M9M>M|$DH GYGLGB?SHI~PLL^L;v_M9}MMCeI}MILm^mHMML MAH@LHIEL@LSN  DIDsM!M LkMHEfDoEHIM!mfDoMED3IGL7HX[A\A]A^A_]DAAD9MIEIM!>AMIM9WD4:D9QEIM!MHLIL9 fDLE1IEHPLLRMM)IM9yLL9voM9}LICEI}IIeLHumHE\mLUHHuZI}H@LIEHxLAHPI-MMLLmWLS Im.fDLH9vvM9]LICuI}"IILLMEHuL]3\ELEHHMLMM]IEH@LXHLHHHIt^MELLHE2WLSIE%HL)LL9uHHfLS EDLSE1fLS E1"HumHE+XHumHE~uHEflAu%LMHuL]EWLMHuL]EHE~MflAMmWmHE~}flA}L]EWL]EHE~UflAURfDUH*OGII HAWAVAUIATSHhLvH}HuM!HELMHELEE I9LLA IHH0HMLmH8A HMMA)fEEM!fA LEM)I DIH}IAItrItFLAF EN DD)D9u$L9LDLE)PLEiMN LAA EQ DD)D9 I LAA% Ay D)D9u,LML9LDLEOLELMI L9LuLxEMLAAEA DD)D9Mq LAFx EN DD)D9v IN HA y D)D9 MF@LA@ AP D)D9uL9?HULN+MN`L9JLxH=I2EII H}L]EL9LMظ HHI0LUMH8ALUMH)fADEI!fEHMMEL)H DHMHuHHtlHt>LAD$u E94$u$It$H!L9DLMML$ LAA EA D)D9 I LAAEQ D)D9u$LML9=DLvMLM&I L9LeMLAAEi D)D9Mi LAEEM D)D9ME LA@AP )D9IM@HADI D)D9uL9tsHULLtcMM`L9HHuH}Hh[A\A]A^A_]C<E91EHuI#qLML9tHULZLLMfDLeA IHH uIIHuIII0LEI8EE)fAAEEEL!fELmLDM)DI HUIIAIItBAD$ AL$ L)D9uL9DLtKM|$ AGE97u$HuI#wL9DL;KI AGE97u$HuI#wL9nDLK[I L9 AGEG LD)D9uL9%HULJMg MAD$~E94$u&HuI#t$L9HULzJM|$ AGlEO LD)D9uL9HUL8JM|$@AGAw )LD9uL9cHULIOM|$`L9HU1HHCL;u M5fI*LEfZAfE9q |HuI#uL9-HULiIME LA@WE9u bHuI#pL9HUL(IIM@HA=E9u@ZHuH#q8E9!}HuI#qLML9tHULHLMTfDLuA HIL }MLL}IIH0LUI8EE)fA E EEM!fLE}L)A H DHHMHHt|Ht>AF2E^ DLD)D9uL9DLGI AFE9.u$HuI#vL9DLGoI AFE9.u$HuI#vL9JDL{G7I L9H]LEAFEn DLD)D9uH9HUH)GMn MAEA} DL)D9uH9HUHFMu AF1EF DLD)D9uH9uHUHFaMu@AF2EN DLD)D9uH96HUHjF"Mu`L9uL%-R1I$ID$M4$u MfI*LmHMfIZA]M#eHLfDE9a HuI#vL9 HULEIN HAmE9f uHuH#qL9HULyEMF@LA@PE9f@rHuI#pHE97HuI#wL9aET$ LD)D9wM|$ AGE9t$ HuI#wfDE91eHuI#q4fE99 HuI#qf.L9AWI_MAWf.E9>FHuI#vf.E9}fHuI#uJHuI#vf. t+fA*F @ t3fA*Wx@@E~fI*D@.EofI*9DE9.HuI#vf.E94$JIt$L!!fLAfHI I*XeMAfIM I*XHYҸHH]f.UHSHHH-ҸHH1HH߾[]nGf.@UHATISHHtHtxH)HHwLLEO=LEuIuI9tLBMHuLA@MHuLAhYHH[A\A]A^A_]HH=ϰF1HUHAWAVIAULmATIS1HHHUHMDEDIuI9tL_BHL39ID$IT$ H)HH9LLLE?QGH5 QG{H5PGcH5PGKH5PGl3H5_PGTH55PG<H5NG$H5NG H5OGH5OGH5OGH5OGsH5aOG[H5>OG|CH5OGd+H5NGLH5NG4H5NGH5NGH5kNGH5FNGH5#NGH5MGkH5MGSH5MGt;H5MG\#H5[MGD H5MG,H5MGH5LGH5LGH5LGH5kLG{H5MLGcH5/LGKH5LGl3H5KGTH5xeH9@UHGHSHHH UGHHcHfHNOT_INTEAVEH{@RLEAfDP @DHHCCH[]fD&:fo^UGEDHCfp@HHHCH[]ÐASEGNOT_fDX@THHGGH[]@HQKV_INTEKIKV_INTERAEDLG@LEAVfDH HHGGH[]f.OWHGUNKNfH@NHHGGH[]UHSHHHSGHcHfHOH8foGTGH_PAD_BWDHCHHxHC@HH[]DH5?NGDHH[]f.SEHWGTfGHHGNOT_HGGH[]H5MGHH[]fL_GHHMAX_POOLLHwG_BWDHG H[]fDLOL8HCfo GSGHI_PAD_FWDLPHC@HH[]DLGL7HCfo SGHfHOGUNKNHHOWf{CNHCCH[]ff.@HGt8t[AOWHGUNKNfD@@NHHGGf.HZERO_PADHHHWHGGHNEG_INF_PAHHOfp@ DHHG Gf.UHGHSHH~eLH6foQGION_ND_STHCL@@RIDE@D@HHHCH[]ÐH+6foQGION_INVALAIDLHfDP@HHHCHCH[]fDH 5fo;QGHON_BATCHRIHH@_MATfp@X@HHHCHCH[]DAOWHCUNKNfDX@NHHCCH[]ÐHC5fo PGHON_ND_IMAGHPfx@E@HHHCHCH[]ff.HGt8tcAOWHGUNKNfD@@NHHGGf.HSKIP_CACHEHHWfHHHG GfDHUSE_CACHHHw@EHHG Gff.UHGHSHHHt@tkAOWGUNKNfD@@NHHGGH[]HCAUSAL_MASHOfp@ KHHG GH[]HPADDING_H{@MASKHHC CH[]D3foNGSKHCfP@HHHCH[]ÐUHGHSHH~UH3fo NGHCH@EHC@HH[]fDu|HPADDED_CHHwAN@ONSTfx @THHCCH[]ÐHPADDED_VBLHHO@ARIAfP @EHHGGH[]DAOWHCUNKNfD@@NHHCCH[]ÐH#2foMGHCH@THC@HH[]UH5l0HATASH4uD[A\]H50HA tH5?GGHtH5C0HAtH5)0HtH50HtH50HnH50HWH5q0HAr:H50H[#H5FGHA >H5FGH'H5tFGHA@ H5VFGHEA A W1tDUHHATASH]HCHH0H6HQHEH!HIDH}иHAH9t E/EH0[A\]IUGHAVAUATS1H tH [A\A]A^]L6LnLeIL$LHMLt MIwkIuUA>ID$@}LmLB(H}X?IIL9y.H [A\A]A^]@ID$Mt@Mx(I}*/LmHELLH-HE{H=}@0)H=p<0,Iff.UH5\0H0]UH5?GHSHHu H[]DH5?GH¸tH5?GHtH5?GHƸtHH5?GǸtH5q?GHAElH5]?GHaAELH5I?GHAA¸E,H5:?GH!AøE H5(?GH¸H5?GH H5>GHƸ HH5>GǸ H5>GHA EtH5>GHiA ETH5>GHIiH5>GH2\H5>GHOH5>GHBH5>GH/H5>GHTH5>GH3H5>GHH5{>GHH5U>GHzHH5J>GHc'H5A>GHLH55>GH5H5*>GHH5>GHH5 >GHH5>GHaH5>GH0H5=GHH5=GHH5=GH}H5=GHfH5=GHOH5=GH8jH5=GH!IH5=GH (H5=GHH5=GHH5=GHH5=GHH5=GHH5@"GHbH5=GHiAH5=GHRH5=GH;_H5=GH$>H5|=GH H5~=GH H5~=GH H5=GH H5{=GH H5m=GH xH5h=GH WH5c=GHl 6H5^=GHU H5Z=GH> H5V=GH' H5R=GH H5O=GH H5L=GH pH5J=GH OH5F=GH .H5A=GH  H5<=GH H5O GHo H5` GHX H5 =GHA H5=GH* H54*  F987vl(bXND:0&DB6543210/.-,+*)|UH5>6GHSHHh u H[]DH5:GHI ¸tH5:GH/ tH5:GH ƸtH5:GHff.UH55GHSHHu H[]DH59GH¸tH5.:GHtH5!:GHuƸtHH5:G[ǸtH5:GHAAElH5O9GH!P@UH59GHSHHtH59GHH[]fDUH59GHSHHu H[]DH5GH¸tH59GHtHH59GeH[]fDUH59GHSHH8tH59GH%H[]fDUH5v9GHSHHu H[]DH5\9GH¸tHH5K9GH[]ff.UH549GHSHHu H[]DH59GHi¸tH58GHOtHH58G5H[]fDUHAVIH54v0AUIATIHSHHpI>IvLGL LCHpIMIULP@L5'fLpHDžxLMLEH}HuHMHUL]ELuEuKH:8GL@LH @H5GBH]E!HpL[A\A]A^]L-7GL@LH @H5G3LmE HpL[A\A]A^]@UHAWIH5PVGAVIAULoATSHHL/LeHGGHLD7HH5zt0MMGL=NUHI>IvLPPLI $IT$LLDLL5.@GL%XeHL@LL eHH5GHH@HLHDžDDžL Dž(L0Dž8L@DžHGLHI,HL9MMGL=xMUHI>IvLPPLI $IT$LLDLL5?GL%<eHL@LL dHH5GHH@HLHDžDDžLDžLDžLDž+HMGH;HL9HI9=HLk~HH3KH0HLHDžIHL9tHH[A\A]A^A_]fDHH5q0}HH5q0MILL=z=GI6INMPPL5KUI$ID$LL%eDHL dH=hGHHH L0MpL@L LHDžDH(Dž8DžHLPDžXL`DžhכMH5GLH@HHLHI)H L9@HtH|HH;HSH0fDMILPL=IeI6INMPPL5HH HUIvM$LPPL5p:GIT$ML L%eDH0L dH=GL(LxH8L@HHHPL`L`LHDžDDžXDžhLpDžxLDžߘMH5]GLH@HPLHI&H`L9@MILpL=X9GI6INMPPL5weI$ID$LL%PGUDHL dH=.GHHHLL@LMxLpHDžxDHDžDžLDžLDž赗MH5GLH@H&LHI%H@L9ggf@7HH;HH5l0 tHH5 l0MMWH HDž(MM^EI4$HL@L EUIT$DL``LHH9LqLPH :dL eLXLr7GH`L,.GH=GL LLhLpHpHxLEHMD0LMLUEEL]EE%MH5+GLH @HLHI$HL9I!f.UHAVAUATSLHMtI<$HtLKLLMtEIt$LkaI|$ ID$0Ml$H9trLjMtMLXMuLcpLk`MIt$L_Mt$L(MIvL_MfLMIt$L_Mt$LMIvL_MfLMt~It$La_Mt$LMt_IvLC_MfLMtBIt$L%_Mt$LhMt#IvL_MfLKMfLc@Lk0MIt$L]Mt$LMIvL]MfLMIt$L^]Mt$LMIvL<]MfLMt|It$L]Mt$LMt]IvL]MfLtMt@It$L\Mt$LUMt!IvL\MfL8MH߾[A\A]A^]f.UHAWAVAUATSHHLsHL3HCCHIHtGLH5GLLH5G }AH5l\0LfTfDLH5G:@H5l\0L19H5x\0LLH5GDž@H5?\0HH5[0HH5+=GLLH5GH5GLtEH5g[0LnH5[0LWLH5e G1LH5 G@H5Gau@LH5.GI]@LH5G1@H5Z0L4@H5Z0Ly$LH5?GZDH5GLILH5G#DH5wZ0L6LH5GDH5Z0HuVH5N;GLLH5,G?H5 Z0LdLH5A G(H5Y0HH5:GLiLH5GGCH5WY0L>ILH5DGH5qY0LH5RGLzLH5G`H5X0LLH5G5H5GL{LH57G {H5X0Hv H59GL_HH5G5H56X0L0ujLH5GH5"X0L LH5wGrH5;X0LLH5$GGH5W0LHH5G,H5GL<HH5GZH5GHUH58GL>HH50GH5(W0LHH5GtH5=W0LHH5GEH5V0LHH5;GDžH5GLxZHH5"GNHH52G6H5V0L1H5yGLHH5GzH5CV0LuCHH5GOcH5U0LuGHH5G$ H5U0LHH5BGmH5GLaOHH5G7H5GL2uoHH5h GH53U0LH=0H5CGLHH5GDH5GLHH5" G)HXH4HoIHMUHAWMAVAAUATISHHXHHH DHHIH HHHHPMIE1LpUIHLp pH5GHdHH`dt&EEPA}AA A-HH;)DKDuLEL!H51G LDMLHMVI<$HL9IL$L H9HID$~LI4$AL$HHH HDžIHL9t[I4$LuI|$M(]H0HuH5 GH}H LH0LCH8I9L9LL@IL9rLH~LIAI1AYHdH0H@HDž8HH0H9tHEE1H IH5mHA11HH iGoM^LHL]LM9LUHHHMHpHPLLHHHuHLMH@@ZHPHCI?HXH9 M_L`L9HMW~LI7AwHHPL`HDžXHHPH9tH}IL9tLH}IL9t'z HHLEmPAtAA AvzH5IdL;LHIL9tLHIL9tHHHH9tHX[A\A]A^A_]DH5:HLHH!HH5a}HH;@H~LI4$AD$I~H.fHtHHXI?IWHPfDo`)eOf.Ht H9HH8H>LIPH0}HtH\HI<$IT$Ha@HH5GEHH5a-kH~LI7AoH{HPHH~LH1QH{H0D HI<$@HH8H?f`HXI?FHHHIH%HUUHAWIAVAUAATISHHHHH HPDHH HHpHH@PLH1HH8A@HӯH51HHt  L31HAIHH(H`dHAn]Dž[m][AHHHfDNL(H5@uFBƄANHLU p H}HLELpL0HHHxH9OH;XDsD`L!LPH5G LDPHMMI<$HL9M\$LL9H(IL$~(L(I4$(AL$HHHHDžIHL9tDCH01H5.H wIHA 11HH > G.H]HPHsHuLI9RLEHxH}LpILL0L8HHLLuHH@H@@H0IEI?H8H9MWL@L9H(M_~(L(I7(AwHH0L@HDž8IH0L9t`H}HH9tNL0HpIL9t2HoHHLȤII\$I)IvI<$IT$LsH9Ml$M9H߸[ifG]M $LHMt$ADHIL9tLHIL9tH8HHH9tfL@HpIL9tJL HPIL9t.H[A\A]A^A_]@LE1LILA1HLH d薯Ht#HpHPH;DAVD(L HHH5pFU DELEH}LHEHMnI<$HL9MT$L L9H(M\$~(L(I4$(A\$HHL HDžIHL9fDHpHHHH `H@H HtHHHPH=o`)paA@t@uA"HH5k`bt uAHH5dF&HH5F HHH9HHH>DDHI<$4DAu TA u AAA.Au A u AMH=0lH靷H]H驷H8HaHff.UHAWAAVAUIATSHHhHHLHTH HDHHI HHHHPM4$1LApILL LH5FED$PEHAvE|AH5"HLHH;]s!)L0HD@0PH5FLHHLvLHIL9tZDCL0!H5F LDDLLHLIH0L9tEd$PE$|A?ET$A0AuHH`dHH5F蒛HH5GOLDC1H5H cILA 11LH &FLHPIKH0H0H9 H0HxH@L@HL8HH@@HH^L`LXML$L`LM9L`HHHpHpLHpMHHHxHhLLH@@HHxNHxHpHH9t2H`IL9tHH0HH9tHIEH9tLHIL9t[!MLH5 FD L牝HLIHL9uHA|$PDOAtD|AcuL;HA`dHHHHL[HHL=H5 odHHHHHH9tf.IUE1H d1LxHE1H d1HW\HMvL9twHHHH9t[HHHH9t?Hh[A\A]A^A_]DLHI`AAЃdH5?dH :FLHEHL聎 @HHALHH5GHDžƅIL)u}HH520JHH5/20HH5qF\`f.ЃdH5HdHFFLHE @HH5FHH5FLHH5FLH5ԤdL螛HLPLBL0LM9L0LXL@HHHL. UH8H FLLH@L@sH`L'HWL@@HMH @LMpH5dLeLPHUH8LHuH0L`L@HDžhLUL]EEE HLIzHPL9HHDH=a`dH5,HHELQ[@HH5ZGcHH5FJKDHH5F-.LH5/0L芿tH5/0Lw(HH5iJܥo@)@%LH5}FL"tH5iFLuDHH5FxyoP)pvoH)@H5FL踾tLH5F襾#H鬭HHͭHH HѭIH0HYH5H^UHAWIAVAUAATSHHHHpLhHH HDHHI HHHHPM4$1LAHIHgHH@QHDM $LLLDAQLH5j,1IZHL9t]M$L LLARLH5&,1I H L9t6(A$4A|$LH5FH@ HXH`L3HHDžhHxHH`ƅpA`PHH`ZL3HA`dHH`ZWL3HA`PAHH;M{L!LH5F DLvLLIHL9tMIWLmLAD$Iu0LL 0FHuL0FH@H5FLEMEHU`HEELMELUEHpLIKHL9t:LPED$1H5ԸH eXILQA11LH FȨMeHxLeLI9pL]HHHML@MLLHHLELH8LH@@HhLIHL9toH}IL9t]HPIL9tHDA A~$ HH`PL3HA`ZtL#HA$`du DH5HL豓HxH`HH9tLH@IL9tiLHIL9tMLHIL9t1HĈ[A\A]A^A_]A$DDA ADAADH`HhAoA eLuHM^LL]֌H5Y`L藒HUHuHH}INH9!]z H5HY`LBFHID@HtHHHLad@L+HA`dHH`ZtL3HA`PsH=)FH]L;RMHH5FHHUHuL衐H}HH9o efDE\$PDHH`dH5HLadLID DH5adL rHLID藐fHxH5XF譜L+HA`dHH`ZL3HA`P~{L HTHDž(IH M`H@0H=FH]H DžHPMH5FHH@H.HUHuLxfHxH5uF轛o@)EfH5o`dLa@H輎H5kFH cV`HHDfDsLPH]HDžXIQ LTDžxH=FHPMq`LpOMH5FHH@HHUHuLYf.]@@HH5U`M@H`LhHuH`HIHuMHXt HIvILXH`EHDUILuB0LuM)I]H`H}INHXHrH9#LEL9XLn][m][fGLUMNHLMCD2HUHu詌L`H}IL9@[H=FLH]MMHH5FHNHUHuL>H`HMHXLHHEH`A1LH F,Mx6I~HELuAH=/H=0H=/HHH黢I院H齢IӢIHHH)H=IHUHAWIAVAUATASHHHHHLHH HDHHI HHHHPLH 1HHA@Mu1LAHH1HHpL@0L L H5zF:L`L+HHDžhLIL`ƅpA`dt&DSPA'AA AHhH`LLL9(L;D[DPL!L@H5F LD@gLLHIL$LeH9tDCH5_ɸL1H LIA11LH FXH}HPHOHHMLI95LML@LEHpLLLLLHuLHHH@@8HHMUHH8L9HLHH9LH~LMAI1AQHHLHDžIHL9tnLH}IL9tUH}IL9tC[Pt H55YdL'LH`IL9tH@MvL9tLH IL9tHHHH9tLHIL9tHH[A\A]A^A_]H5XHL聇U@Mt#HH LDLLxMt#HHLUDHLLHu(HHHtW yHHuL9tF ~~(H@$HHP H@ HLHHu I9LLL虿HH~$ HDH=EFLmH`LhLDHDEHuDMLUF MLH5=EFH_LLHM\$LeL9fDHH5ta譅AHH5sa荅!Ht HLHHH>LIRHoH)MfD[H=FDpL`LD`E!MLH5FHZLLIHL9t{ILeLIW}H=FHMHU~EMLH5FHHLIaHL9@HH5FEHH~LH7GI}HdD1DR E9Q @rDLHLLpf.HHH8FIUI酛IIYIޚIUHAWAVAUATSHHH}fH@8H@8H@HShLHSxHHCHHCPHCXChHCpHǃǃHǃLLHǃCC 1HI&LLLM LmɺMIJM MMmMtXME(HI9IFH I} LLUHMLEL]aL]LEHMLU yMmMuM9tNMo(L9LHFHt Iw LLUHMHMLUuL)H0H|ȅy!LHMLELHFLUKIH5wIw@LM LȺMMXMf.MmMtiI}(LL9HFHt0H}I} LLEL]LMXLMH}L]LEuHL)H= H=|xMMmMuM9tOMo(M9LIFHt Iw LLEL]L]LEuM)I1I|D؅y!LELHMLEHFL,IHҹIG@LM~ LɺMIJM MmMtiIu(HH9HFHt0I} HuLLUHMLM@LMHuHMLUuHH)H= H=|xMMmMuM9tNMo(L9LHFHt Iw LLUHMںHMLUuL)H0H|ȅy!LHMLELHFLUIHIW@LML ˺MMAM @MmMtiI}(LL9HFHt0H}I} LLMLEL](L]H}LELMuHL)H= H=|xMMmMuM9tOMo(M9LIFHt Iw LLMLE¹LELMuM)I1I|Dy!LHMLELHFLMIH IG@LMLw̺MIJM MmMtiIu(HH9HFHt0I} HuLLUHML]L]HuHMLUuHH)H= H=|xMMmMuM9tNMo(L9LHFHt Iw LLUHM誸HMLUuL)H0H|ȅy!LHMLELHFLUIH IW@LMLͺMMCM @MmMtiI}(LL9HFHt0H}I} LL]LELMLMH}LEL]uHL)H= H=|xMMmMuM9tOMo(M9LIFHt Iw LL]LE蒷LEL]uM)I1I|Dy!LHMLELHuFL] IHBIG@LMLкMIJM MmMtiIu(HH9HFHt0I} HuLLUHMLMLMHuHMLUuHH)H= H=|xMMmMuM9tNMo(L9LHFHt Iw LLUHMzHMLUuL)H0H|ȅy!LHMLELH^FLU IHIW@LML P˺MMAM @MmMtiI}(LL9HFHt0H}I} LLMLEL]ȵL]H}LELMuHL)H= H=|xMMmMuM9tOMo(M9LIFHt Iw LLMLEbLELMuM)I1I|Dy!LHMLELHEFLM IH" IG@LMLźMIJM MmMtiIu(HH9HFHt0I} HuLLUHML]谴L]HuHMLUuHH)H= H=|xMMmMuM9tNMo(L9LHFHt Iw LLUHMJHMLUuL)H0H|ȅy!LHMLELH.FLU IH+xIW@LMLкMMCM @MmMtiI}(LL9HFHt0H}I} LL]LELM蘳LMH}LEL]uHL)H= H=|xMMmMuM9tOMo(M9LIFHt Iw LL]LE2LEL]uM)I1I|Dy!LHMLELHFL]l IHIG@LMFLϺMIJM MmMtiIu(HH9HFHt0I} HuLLUHMLM耲LMHuHMLUuHH)H= H=|xMMmMuM9tNMo(L9LHFHt Iw LLUHMHMLUuL)H0H|ȅy!LHMLELHFLUUIH}H7IW@HHH[A\A]A^A_]ÐLH)H=H=IHDML~κ@ML ºfMLvĺMLƺMLʺML漺8ML6GMLfNML 6ƺMLMLͺH鸍fHUHAUATISHHHsLLkHLMIuLI]L+HHsLLkH MIuLuI]LHtxHsLXLkH̵Mt[IuL;I]L诵Ht>HsLLkH蒵Mt!IuLI]LuHH[A\A]]Ðf.DHUHAUATISHHHsLLkHMIuLI]LHHsLLkHڴMIuLuI]L蹴HtxHsLXLkH蜴Mt[IuL;I]LHt>HsLLkHbMt!IuLI]LEHH[A\A]]Ðf.DHtkUHAUIATSHHHsLH{ HC0LcH9tH޳MtL@HȳMuH[A\A]]f.DUHAWAVAUATSH(H_H}HuHHLvHUDHK1HtCHL{(Lk M9MMFMH}LLpttyHKHuI@MtHuLLLU6LUuM)IRI|DyBH(1L[A\A]A^A_]fDLL)H=>H=nmDH(H1[A\A]A^A_]@H_H}H9_t:H2LEILx(Lh HMpMMM9LMMF(fDH(H1[A\A]A^A_]f.fUHGHAWAVIAUIATSH(H9LbHN(HLN L:I9IMFMgLLLHMLELMLMLEHMLH)HH|HHI9]bH-Hx(HI9HIFHt H}Hx LHEsHuH}uL)HwH| dH~HEHDH(H[A\A]A^A_]e MtLLLHMHMȅuL)HH| ȅI9] HܭLX(IM9LIFHt Hp LL]HE蒪LUL]uM)II| DH{IEIEHH1H([A\A]A^A_]@H(tIH_ LzLc(LM9IFHtNH{ I6t>yH(H1[A\A]A^A_]fDH(LL[A\A]A^A_]M)II|DfDLH)HUHAWIAVAUIATIHSH|HIELs0Lk Ls H0LHPH7hHC@LLLIIHtvIL$Ht'LHID$(HH[A\A]A^A_]@H9tLs(Lz(M9LIFHtTIu H{ HM賨HMȅt;@H{ I9tRHJHL[A\A]A^A_]L1L)H=UH=}CHHH轵HDWP WP GP-ÐÐff.Ðff.HG0HtHHHGff.HG0HtHHHGff.1Ðff.Ðff.fHHGÐff.Ðff.Ðff.UHptLGpxLEHE}U]HG0HtH0HHV(]fHWpOxHUHEMU]ÐUH|tLG|LEHE}U]@HG0HtH0HHV0]fHW|HUHEMU]fDUH僿t#LLEHE}U]fDHG0HtH0HHV8]f.HHUHEMU]ÐfH(HtHG0HtHHH0uH0Ht HÐff.HHtHG0HtHHHJxf. uH0Ht HÐff.uH0Ht HÐff.uH0Ht HÐff.uH0Ht HÐff.uH0Ht HÐff.uH0Ht HÐff.uH0Ht H@Ðff.GTuH0HtHfDÐff.GLuH0HtHfDÐff.GVH5FH'VH5FHVdH5FHUCH5FHUH5܎FHUH5ɎFHUH5FHUoH5FHUNH5FHoU-H5wFHXU H5dFHAUH5jFH*UBH59FHU!H5FHTH5FHTH5dHTtrH5FHTtUH5FHT%pf\RH>w4v*q po nmlkjutsrihvglfbeXdND:ff.UH54HSHH8Su H[]DH5dFHS¸tH5VFHRtH5IFHRƸtHH59FRǸtH52FHRAElH5#FHRAELH5FHqRA¸E,H5FHQRAøE H5FH1R¸eH5FHRfH5֋FHQƸgHH5ËFQǸhH5FHQAiEtH5FHQAjETH5FHyQt#H5FHfQ%kUH5dHSHH(Qu H[]DH5FH Q¸tH5@FHPtH5FHPƸtHH5bdPǸtH5:FHPAElH5؊FHPAELH5ŊFHaPA¸E,H5FHAPAøE H5FH!P¸ H5FHP H5FHOƸ HH5wFOǸ H5oFHOA EtH5cFHO%&Q@UHHHAVAUATSwHHOHHH HH LMLIt$LMt$LFjMIvLMfL%jMIt$L迴Mt$LjMIvL蝴MfLiMt|It$LMt$LiMt]IvLaMfLiMt@It$LCMt$LiMt!IvL%MfLiiMLLM It$L輲Mt$L/iMIvL蚲MfLiMIt$LxMt$LhMIvLVMfLhMIt$L4Mt$LhMtbIvLMfLhMtEIt$LMt$LkhMt&IvLڱMfLNhMDLHL8M It$LwMt$LhMIvLwMfLgMIt$LhwMt$LgMIvLFwMfLgMIt$L$wMt$LgMtbIvLwMfLjgMtEIt$LvMt$LKgMt&IvLvMfL.gMDLLM It$LwMt$LfMIvLwMfLfMIt$LxwMt$LfMIvLVwMfLfMIt$L4wMt$LgfMtbIvLwMfLJfMtEIt$LvMt$L+fMt&IvLvMfLfMDHHH9teLLxMtJIt$LI|$(MD$8Ml$L9teLeMtMDLeMuLXLHMtEIt$L蛼I|$(ML$8Ml$L9tReLJeMtML8eMuL(LM It$L菮Mt$LeMIvLmMfLdMIt$LKMt$LdMIvL)MfLdMIt$LMt$LzdMteIvLMfL]dMtHIt$L˭Mt$L>dMt)IvL譭MfL!dMLLM It$L蜮Mt$LcMIvLzMfLcMIt$LXMt$LcMIvL6MfLzcMIt$LMt$LWcMtbIvLMfL:cMtEIt$LحMt$LcMt&IvL躭MfLbMDLLM It$L\rMt$LbMIvL:rMfLbMIt$LrMt$L{bMIvLqMfLZbMIt$LqMt$L7bMtbIvLqMfLbMtEIt$LqMt$LaMt&IvLzqMfLaMDH{Ht[A\A]A^]af.[A\A]A^]ÐfDUHSHHHH߾[]bff.G8~G8ÐUHSHHL_ L9_I{HS HHS H9SHzHK HHK H9KHyHs HHs H9sH~pH{ HH{ H9{tvHULC ILC L9Ct[Ix:LK ILK L9Kt@IyLS ILS L9St%IzL[ IL[ L9[fDHHHHHH9u"HH߾[]`f.H[]HW HOHH)HH9rfDUHATSHHMPI@HuHHEH}HxHuL9LpMIL}HLLHEMcF HEMLEAfAfAfDMhMV(LLMcZHELL]fffUHhhIc~0HLHEHH}Lf%ffE8hH}HL)hLRIH9x1LpHMH}IغH5pFAvPIMMHuIHELELxHuM9HLpMML}HLLHEMcV HEMLUAfAfAfD]IgIcV$LHEHHUHfff}LgH}HLgLQIH9xL}HLLHEHcH HEHHMf%ffEfMcF$HLLHEMLEAfAfAfDM~fH}HLofLQIH9xLpHMH}Iغ H5YoFI@M0M HuIHELULxHuM9LLpMMHELL}IcV HEHHUHfff}LeIN(HLLLcAHELLEf%ffEkeH}HL\eLPIH9xL}HLLHELcH HEMLMAfAfAfDUeM^(LIcsHEHHuLfffUHdH}HLdLeOIH9xLpHMH}IغH5DdbIpM`IPLEHHEH}HxLEHpL9(L`MfDA LE)fUDEEHLKHLLB8cH}HLcLNIH9xHpHLLHEHEMcN HEMLMAfAfAfDUvcIN(M~0HE A ;A AwHHhfD]D}HhHH#uH HHuDL`HMH}IغH5EIMMH}IHELMLxH}LpM9#L`Me AMD)fD]@}ELLLIHLLB8RbH}HLCbLLIH9xHpHELHuIcN LHEHHMfffUHaMV(M~0MA ;A AwHLhfDED}YLhIHH#EL HEDL`HMH}Iغ H5jF=I Av<Av@I MMtAOH}IغH5XjFAtH}IغH5MjFIHtOH}IغH5>jFfAtH}IغH52jFBIHtNH}IغH5"jFA tH}IغH5jFI(HtIH}IغH5jFA0tH}IغH5jFIhHtJH}IغH5iFAptH}IغH5iFaMxMtAHH}IغH5iF9AtH}IغH5iFIIML]IHELMLxL]I9DLpMIHEHL}Ic~ HEHH}LfffuL^IcN$LLHEHHMfffUH^H}HL^L7IIH9xL}HLLHELc@ HEMLEAfAfAfDM5^McV$HLLHELLUf%ffE^H}HL]LHIH9xLpHMH}IغH5:hFIAtH}Iغ H5'hF9MMtAL$H}Iغ H5 hFLeHLL=R/AL}LEd[HLLALgFELE<[AtIغH5gFLHx[A\A]A^A_]f.MIHuIHEL]HxHuL9LLpMMHELLL}IcN HEHHMfffUHI\MF(HLLMcHHEMLMAfAfAfDU\H}HL\LFIH9xL}HLLHELcX HELL]f%ffE[I~(HHcwLHEHHuLfffMv[H}HLg[LFIH9xLpHMH}IغH5eF zMILUIHELEHxLUL9KLpMMHEHLL}Mc^ HELL]fff}LZAv$LHEHE@Lу fUHfZH}HLWZLDIH9xL}HLLHELc@ HEMLEAfAfAfDMYAF$HLLHEHEAEA fD]YH}HLYL`DIH9xLpHMH}Iغ H5bF]OLHuHLPH}IL H5bFH}MUL9AH dF@LdF/@LXHuHLOAH}IغH5aFzH}M]L9)TAL`HuHLQOH}ILH5aFVH}IUH9.A$L0HuHLOH}ILH5eaFH}IMH9@L HuHLNH}ILH5`FH}IMH9`@IHLfNH}ILH5Ek7fDLLSI1ICHUIgHyIfHUHAWAVIAUIHATLeS1HXHHGIMH}LLHHEHU\9@IuIU H)HH9H4LLLAMD}L]D9rdEIAM!LDEL]MDEIHDEI!M L]foMDAHLIDEHM!B 聩9)H}HMMH5`FHEHX[A\A]A^A_]f.EGAEE9sIDHM!*ILMI96@LME1IHPLLRLL)HI9HL9w,HPLI ML]MI9vIMCVI~MItLDEHuLUAHUHuHDEMHAHH@LHIh@HL)HL9JHxL]AHuLHDE HHL9uMDpA$A@H^0HHHHIELAHHIEff.UH HAUIATISHHHH9cHxHHLL9,EAH`HXDMHHu-HHHtD;O ~HHuH9tD;H }LEHUHHPLEMT$LM$Hp(HP0H苗HL[A\A]]DI}0H`LIL9kDAHHL9uMDA贄A@H^0HHHHIELAHHIEff.UH HAUIATISHHHP`H9VHHHphLˆL9#EAH`HXDMHHu+DHHHtD;O ~HHuH9tD;H }LEHUHHPLEoMT$LM$Hp(HP0HHL[A\A]]DI}0HbLIqhL9gDAAH0H4LIrhL99DAH0HLIshL9 DAH0HL/IuhL9DAH0HHHrhL9DAH0H|HHqhL9DA[H0HNHHphL9uWDA1蝁A$DH^0HHHP`LHIEHphL9LAfHHIEff.UH hHAUIATISHHHPHH9VHHHpPLL9#EAH`HXDMHHu+DHHHtD;O ~HHuH9tD;H }LEHUHHPLEMT$LM$Hp(HP0HCHL[A\A]]DI}0HbLIqPL9gDAAH0H4LIrPL99DAH0HLIsPL9 DAH0HL/IuPL9DAH0HHHrPL9DAH0H|HHqPL9DA[H0HNHHpPL9uWDA1~A$DH^0HHHPHLHIEHpPL9LAfHHIEff.HHPUHHAWAVLAUMATSH IH@Ht;p ~H@HuM9A;p MfDIHRHt;r ~HRHuM9t A;t$ I0M&ILX HP IH@([HHHuJI9tE1J A9L$ @:DHG0HtDH8LHH[A\A]A^A_]AfLL@IID$(H[A\A]A^A_]@LI%HG0HtLHMAfDH(HPUHHAWAVL AUMATSH IH@Ht;p ~H@HuM9A;p MfDIHRHt;r ~HRHuM9t A;t$ I0Ml%ILX HP IH@(HHHuJI9tE1J A9L$ @:DHG0HtDH8L8HH[A\A]A^A_]AfLLI@ID$(H[A\A]A^A_]@LIU$HG0HtLHM8AfDUHAWAVAUATISHH5_HHhHU5H@uHH#pLmM|$hL.HH5CF5ID$pHLf.HH@Ht9X }H@HuI9}9Z xIt$@IL$8Htiz$I IHvHt9~ }HvHuL9tAA;~ |;Iv(H}Mv(H}IL9t(#HhL[A\A]A^A_]fDH5hEL(O#HULHI7 IvI|$0<L0AFLIT$pEHu%HHRHt;Z ~HRHuI9t;^ }s(Hu"X HuHP I|$`@$Hx+LxHHI9t H,LLLEfHuI$}~$fDH5lELt=H5ZDFLub 8"HULHI(@8"HULHIg\fL!HgH5Xu0L1t9H5CFLu_8!HULHI\H!HULHIo61DJ E9H @H5CFLu& >!HULHI臺H5VCFLsu&p!HULHI; H56L:u& HULHI xH5BFLu& HULHIO?H5BFLu$Z HULHI赩H5JLu$# HULHI讲H5QBFLZu$HULHI׸ H5"BFL#u$HULHIcH5AFLu$x~HULHIi,H5AFLu$GHULHI, H5AFL~u$`HULHI H5eAFLGu$HULHIDgH5LH5>FIL.LhIM!LHLIEIuL!IIL9txLHeMOEIu M!IML9tSLH@M_AIu0M!HLH9t.LHI@IwAL!HHI9eDH}tHL[A\A]A^A_]IHuLfDLg@Lo0MIt$LdMt$LEMIvLdMfL$MIt$LdM|$LMIwLldMgLMt{It$LNdMt$LMt\IvL0dM~LMt?IwLdMwLMt"IvLcMfLjMLspHC8Lk`HC@HCHHCPHCXMIvLdM~LMIwLdMgLMIt$LdMt$LMIvLrdM~LM}IwLQdMwLMt`IvL4dMfLxMtCIt$LdM|$LYMt$IwLcMwL<MHShHCpHSxHHǃ~HHHUHHAWAVLAUMATSH IH@Ht;p ~H@HuM9A;p MfDIHRHt;r ~HRHuM9t A;t$ I(MILX HP I@$ HHt|HuGI9tB1J A9L$ @7f.H0HtqLIH[A\A]A^A_]DLLIAD$$H[A\A]A^A_]@LIH0HtHăÐf.HHPUHHAWAVLAUMATSH IH@Ht;p ~H@HuM9A;p MfDIHRHt;r ~HRHuM9t A;t$ I(M<ILX HP I@$茹HHHuCI9t>1J A9L$ @3fDH0HtKLI0H[A\A]A^A_]DLLIAD$$H[A\A]A^A_]1LI%H0Ht H01Ðf.UHEHAWIAVAUATISHHXHFD.H}H}L!IH}I.L9mtH5CEH'AWHHsD3HH_5FH}H!IIH].L9utH5<5FHH'LMDEALL[D;H5FHIH}M!IM.L9}tH54FH&Lefx AD$DHCD+H4FHIH}L!II-L9mt:H54FH&HMHxL!QXHpL!DFDA\L#pEN DI`LSD#H4FHIH}M!IMO-L9et;HH5R4F:&LmLXM!E3EudHxL!WAUhL#xAG AElHKD#H4FHIH}L!II,L9etH@LuLoL譐LEH}A@ H]HKD#HH%FH}H!IHIL;eHH5%FLmDI}LwpL_hMtuM MMvMtE;V ~MvMuM9tPE;W |JLO@LG8Mt=AG$L@LMIMtA9A }MIMuI9t;B P LkD#H-%FHHH}I!IM2L;etH5%FHL}D0EL[D+H$FHIH}M!IML;mHH5$FLEIxLOpHWhMtyH@LMIMtA;A ~MIMuH9tP;A |KLw@Lg8Mt>Dy$LDLMvMtE9~ }MvMuL9tD;~ G fDLkD#H5$FHIH}M!IM L;etH5$FHLMDEHCD3H#FHHH}H!IIL;uH5#FHL}ILWpHwhMtyI@MMRMtA;R ~MRMuI9tPA;S |JLg@Lo8Mt=EC$M@MMd$MtE9D$ }Md$MuM9t E;A | HCD;HA#FHIH}L!IIL;}tH5#FHL]DE HsD+HH}H!IH"FIHL;mHH5"FxLeI|$LGpLwhMtxMMM@MtA;H ~M@MuM9tPA;I |JHG@L8Ht=EQ$M@IH@HtD9P }H@HuM9tE;S w fDLkD#HHE"FH}I!IHML;etH5""FHLMDE0LsD;H"FHHH}I!IMiL;}H5!FHPHEHxLWpHwhMtyI@MMRMtA;R ~MRMuI9tPA;S |JLg@Lo8Mt=EC$M@MMd$MtE9D$ }Md$MuM9t E;A  L{D+HY!FHIH}M!IML;mtH5,!FH}LUApHSD#HIH}L!IIH!FBL;eH5 FH)HuH~LGpLwhMtzMDMM@MtA;H ~M@MuM9tPA;I |JLo@L8Mt=AA$M@MMmMtA9E }MmMuM9tA;B fDHsD#HH}H!IHJ FIHjL;etH52 FHULMDEHKD3H# FHIH}L!IIL;u+H5FHD(IE HEH]LE1L}LLSDHM!ID:LL!0PuLUlDEEMDD; HKILL!JD L!xD}LD]-UAu;3sxLCHLM!ID0LL!HDMDU}E]8D;s?HSILLAL!JDL!D@DDEDMMD;+H]LcD3HFHIH}M!IML;u H5FH0IƅH]H]E1DMVEIM!MI|$L!WH{L_pHGhMIf.MM[MtA;S ~M[MuI9A;P |yLW@HO8MtlEX$I MMRMtE9Z }MRMuI9tCE;Y |=Ip$H0I|$H0L!DHuHHuDEHUHA6AA9H]HCD+HFHIH}L!II^L;mtH5ZFHI HMDDLKD3HDFHIH}M!IM L;ut_H5FH L}ILGpHwhMt9I@MM@MtA;P ~M@MuL9tA;T$ DH5FHI L}LpDIM!EDH56FLa IwLFpHFhMIDMM@MtA;P ~M@MuL9tWA;R |QH~@L^8HtDEJ$L@HHHtD9O }HHuI9tD;I |Hy(LLAMT$A$IM!HLI99HCD#HHO/H}H!IHI{L;et H5N/Hf L]fx ALKD+HHH[FI!H}IM'L;mtH5;FH HMfx L{D#H)FHIH}M!IML;etHH5F H]DDHX[A\A]A^A_]HpL!HpL!HpL![HpL!HpL!5L#xDLhAHuH}M!ULHE_H}L1IHWE;&@LhDAHuH}M!DEYLHE H}L1IHWE;&f.LHELEMKHG@Lo8HET$$LDHH@HtD9P }H@HuI9D;Q H0It$$lH}LL1B A9C @Iw$H0:H}H0HH0Hq$LUH8IH0Iq$L]H8IxH0Is$H}HHhH0Is$H}HHgH0Iq$HUH8H(oIIHII#IWff.HHHUHHAWAVLAUMATSH IH@Ht9p }H@HuM9A9p MfDIHRHt9r }HRHuM9t A9t$ I8MILX HP IH@(@0HHttHu7I9t21J A9L$ @'fH1[A\A]A^A_]f.LLPIID$(IT$0H[A\A]A^A_]LI1UHAWAVAULATISHHuHtVLHHRHt9B }HRHuI9t1;C |,{$UHL[A\A]A^A_]DLD(IMI$L@$HP HÉH z0IH>I9t H@LH0I${$sI$M$M$H,DELHHHtD9G }HHuL9tD;C }i8IDMLLH@(HP HDH @0IHHu I9LHjI$H{(LeLLLLL8MM LpAH[A\A]A^A_]HLL1r 9s @HLwL1DR D9S @8f.UHAUIATSHLgHI9t#@H{HCH9t3.H(I9uI]Ht,HH[A\A]] f.H(I9uDH[A\A]]DUHAWIAVAUIATISHHHGHHà wG AM)fE|$AD$ ALLLkB H[A\A]A^A_] SA$fAD$HILrIHtLHOIL;vLM9wLICOItqHHMHtTHtJI?HuIMH@AH0HxL@IMIM#\$M M\$&fE1E1HMHMHE~EflAGfHUHAUATISHHHsLLkHHsLLkHMt!IuLI]LeHH[A\A]]Ðf.DHUHAUATISHHHsLLkH MIuLI]LHHsLLkHMIuLuI]LHtxHsLXLkHMt[IuL;I]LoHt>HsLLkHRMt!IuLI]L5HH[A\A]]Ðf.DUHAWAVAUIATIHSHH8A$EHH I\$EHHuL!L LMI9HI LmHI0LEA H8)fADL!fEIEI)I IIIHEIAItvIt5C9u#HsL!L9DLVH CPs D)HD9uL9~DLkH CDS DHD)D9uL9ADL.H H9]C.DC DHD)D9uL9HULLk LAE EM DLD)D9uL9HULTI] Cs D)HD9uL9|HULtlI]@CDS DHD)D9uL9tFHULt6I]`H9]HHH@H8[A\A]A^A_]H8HC[A\A]A^A_]DD9;HuH#sf.E9}HuI#ufE9} 2HuH#s fE9}@HHuH#s&fD9;1HuH#sf.D9;HuH#sL9)D[ DHD)D9Of@HUHAWAVAUATSHH(H Df1DWHE@HEHG fuA9AII!AMII9s?LMPLL)N\M9HuHIMHCDHDsH!L HCDeIHEfoEH!HEfoMBD#IBL H؃H([A\A]A^A_]@DrAAD9sDHDM)IM;H HAHL)LDM9H-tHIML[ HDsI!M L[qE1HHI3AoEM!BfEuH[A\A]A^A_]EqAEE9sDH+DL)HH;THAL[ hf.HhsL[ IHf.LLH"I"L[ E1f.fUHAWIAVAUATIHSHH(EHHH I_EHUH!I$IA7H!HHH9IIA II0I8E)fADDH!HEfEHEEILUT@D[ HD)D9uHML9tMHULvHMt9H I$IA7H!HHH9tCuD9+uHsHMH!L9uH(L[A\A]A^A_]UHAWAVLwAUATSHHWHLHHRHt9B }HRHuI9t9C ~[II0IA $LLH@(HP HÉH HIHt8HuI9u;LHvݿIE(HHC([A\A]A^A_]fDHL 1r 9s @DLdUHAWAVLwAUATSHHWHLHHRHt9B }HRHuI9t9C ~bII8IA $LLH@(HP HÉH @0IHt9HuI9u<LHܿIE(HHC([A\A]A^A_]HL1r 9s @DL\UHGHAUATISHH5HL*HZLHtMtiHw8Hu"AuAt$I\$HL[A\A]]ÐHt fHx2H{I\$I$HLHKI$H=&.H=.޿ff.UHAWAVI0AUATSHHHukHuINIHD(ID$(El$ H9HD;n }rM~I9t%HHMHMD;h HxHHAH9t EtHLڿIF(HL[A\A]A^A_]D~VI9v <HHM߿HMD;h rH{HÿDL@A9LLHH[A\A]A^A_]fDI~(t IF D;h 7M~MuI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHMHMIًP HA9#LH1w1D;k @IM9~LHMLHMȋx IDIEtuI^HumDH{AHtHS A9|H{E1DIEPI9^-IGf.L8M%HǐfUHAWAVI8AUATSHHHuHuINIHD(ID$(AD$0El$ H9HD;n }qM~I9t%HHMHMD;h &Hx HHAH9t E{HL׿IF(HL[A\A]A^A_]@~VI9v DHHMܿHMD;h zH{HÿDL@A9LL ߿HH[A\A]A^A_]fDI~(t IF D;h ?M~MufI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHM)߿HMIًP HA9LH1p1D;k @{IM9~LHML޿HMȋx IDIEtuI^HumDH{AHtHS A9|H{E1DIEPI9^-IGf.L8M%HǐfUHAUATISH8HH}HHH HH@HtDH EyH@HuH9t DA EHt8HHHH@HtD@ EH@HuH9t  13ID$IT$ H)HH9HD9HIL9trӿHĈ[A\A]A^A_]HtH<ҿHHHH1L֏I<$ I<$HP~PLPHPIHfHH`LH=@E1ؿHHH%Hff.UHAVIAUHuLpATHN IIESHTLFH5bFHĀWH]H]HMHH@UHpHDžxEHEEXҿHuLCHpHUL9MULML9#HhL]~hLhHphxHH}L]HEHH}H9tNѿLxIvIVI>HpI0H9(MNL9MtHILHϿI>I^15I|$IT$ H)HH9HCfDHtHtFϿHUHpHxH}fA1@7I>EHUHpHH==E1տI鉫f.UHAWAVAUATISHHhHGHxCL/AUL3HHAV L;HHAW(H HL@JH1HE1LHxAIVHDžL @cHƅL0BLH @MZ MBLHDž8HgqEH5=REL0L@HPDžX ϿH@H DKH`ELH FLcDLEHDHH`DpHDLLHpEDLpEHpEDL=pELLSH }JDL #}JHH=pELLpEL LKEH0H#pEHDžh DžDž(Dž8L@DžHHPDžXL`LHpH @H}LLELFH5FHUDžhDžxLMEELUEE E ͿHM_HHL9-INH H9bHpL~pHpHpHRHL HDžIHL9t˿LIt$I|$I$HM<0H9MT$M96MtH<2ILHʿI$M|$IB:HL9tu˿HIL9t`˿LxHIL9tD˿E13L[HS L)HL9KH[A\A]A^]I>f.UHAWAVIAUATISHXHXI$#LXM,$LAXM<$V1LA8E1Ht A|$PAAL$H]LmHEHS H5~SLEHULCMH@HuH51E䰿HUHuLnE16I|$IT$ H)HH9HFLhL-?FHH=ELHHLM{LLHDž(LpHxDžDžLDžDžDžDžd*MH5:ELH@HժHLIBHL9t1HIL9tLHIL9tLHPIL9t䩿LHIL9LHIL9S褩IH H1HH LH1HHA(L3HAV@AH5zEtH5EHcHELH=EHL8HPLpLpHDžD DžXL`DžhDžxL@LH5ELH @H譔LLIHpL9t HHLwRHPIL9t⓿LH0IL9tƓHIL9te豓^LHApH[A\A]A^A_]fLHA֐HLLHAE1@JILILHHP{LHH`LhH IS`HLH=A+ELIHSLHHwEHH5FLL FH H=EHLLL0H0H@HDžLHDžDž(Dž8DžHLPDžXLxTLxH5ELH @HHhLI.H0L9tH8H0HEƃHXHpHH9tL`HPIL9tĆLhH0IL9褆ILPHxHHHHOHH:HpH5FHHH0LGH8HL0HxHpHH8H dHHHwHPHHHHH5vFH@7HHHLOHHHLXHPH@HHHH0cLHHH(AEL`HDžh DHPIIHXLpH`LHDpLHDHLHHLHLHxLLHHH FSLL<'EHHB'EHH5v'ELL x'EHHLLH H FHHH=>DLLFLL=FHH'.L0LFHpH=EH@HPL}LPHMLEDž(Dž8DžHDžXL`DžhDžxLUEEHEEE E LLH5ELH @HeHhLIҐHPL9tH(HHH9t襂H0HHH9t艂LHHIL9tmL@HIL9tQHPHHH9t5H HHH9tL8H0IL9tLpHpIL9tၿLxHIL9HSbHgbH{bHbHbHbHbHbHbHcHbHcH'cH;cHOcH\cUHAWAVIAUATSHHH(1ƇM&LHÉ\A$`HPH\ H|H`HWH@H`HPH0HANIHH5*F DžH8逿MH1LH0A MNHHDžHHHvƅIyHM>1LA8L 1HA$HHLLTLHLAPLHAIEH9tEtNL;1HAHHSLHLARLHM\$AL9tUEu {P@ǃPƒZHHH(=HHHHH9t~H0HHH9t~H8HHH9t~L@H`IL9t~H[A\A]A^A_]fMQMkM>EbLAXQM.LAU@H=JFH5;FHEHHHHLIGLL HHHsHHHHHL`H`IULH`HhHHLHLH2\IH LHQENLL(D0LL MPpH /SHHLLFHHD L `FLL@L%{ELHLlELPL=FHxH=EH`HhHHXLpMpLLLL@LHDžDžDžDžDžDžLDž%MH5ELH@H|HHLIH@L9t{HH HH9t{HHHH9t{H`IL9t{HHH9t{H HHH9tt{LHIL9+T{!@LLEvH=kELLMl$@HHH=EL=֩SDHaEMt$LLL HDžLLHLDžHDžDžgMH5ELH @HzHHLIEH L9D APAZHHLM_LLHLH5UEH_H`HhL@IELHH@HLHLH (XIH LHIHLHQEFHLDLLLHDžLHDLH(LL ӧSH HLL FLLL% FL L=-EL(LhEH0H.L8L5 FHHH=EH@HPLXL`LpLeL`L}L~DžhDžxEEL]EHEELuEMH5ELH @HYxHHLIƅH`L9twHHHH9twHH HH9t}wL HIL9tawH@IL9tLwHHH9t7wHHHH91IOYI\ZIpZIZIZIZIZI3YIGYITYIdYIxYIYIYIYUHAWAVAUATSHHHHH18L#1HIA$HxLHPxIT$LHHPH0HH 1HHHX@L+HAH|HP|LHPIuLHH0HEGHH5 FHhDLDžuEOLH H5 FDžDH`LPuL[L@HDžHMVƅPI{L@&HI{HH҃H HHPA_HLHDžLHLDžhLHHLHHH LH(LLLLLSLL^DH HFL0L=-EH(HFH8H !EH@H+.HHLXLFH5rELPL`LpDžxHEL}L`HULHMH @EEEEH]EsLLI'H`L9tsLPHIL9trHHH@HH`1H@IL9trL`H IL9trLhHIL9trHIL9t~rLXHIL9tbrHIL9tMrHĘ[A\A]A^A_]҃M@fLH=ELPL))LP1LH5ZEHRrLLIHL9tqHHH@HH0ƃHUHVHUHUHUHfUff.UHAWAVAUATLpSHHHHX1HlHPlIT$LHpHPH0HɻHKHyL{PHDžIvƅH!HL;,L  MGH=I9HxIuLH HPH0H[H(LL~FHH=]FH5SL LHMQ@HH@H)LMAHHHH5ELHDžLLDžDžDžoH IL9tWoHHHX-HHH9t(oHIL9toHpIL9tnH[A\A]A^A_]@L+HAXL;1HAH0HP0ZH`HWH0H`H0HPHbsH=FDžLLHMH5FHH(nLH1HH A HHP@H5a.EL FIEHH@yHHLMWLL8HL藸HHH@L_HHHL@hH`HhHHOHPHH9L HHHPLLKH(sL`H ELLI@@HFL IHL՛SH=EpLLHHLH`HDžhLLLDžDžDžeLH5ELH @HlLLICzHL9t2lH IuH9tlLPHIL9tlHHH@HH9tkL8HIL9tkL@HIL9tkL HIL9tkH(HHH9tukH0H`HH9tYkL;H=MGI9HLA@HDKH SHDžLW0LNbHLH=ELDLDžLDžDžMH5ELH@HkLLxHIEH9txjL;L f1HA8L HDž LtDH;L0DCLSHDž8Iy MYLPH0H=EL0D@DžXLPLPH5ELH@H*jLLIwH0L9--fDLL HLAHH(DKH6SLW@L HH5.HybHPH=uEHLH H0LHDžDžDLHDžDž(Dž8LPH5ELH @HiLLIvHL9trhH MEL9fHDkHbHDžHA0LyH@H5SH=~ED0HPLHDž DžHDžXMH55ELH@H8hLLIuHL9@HLA{L@L HbH(Mz@H ?SIH5.`H=iEL@LPHHHHDžHDžPLpHxDžDžDžLPLPH5ELH @H.gLLItHPL9f.L`HHHDžhLPIL`ƅpH@AWpDKH=EDž LDH@MH5EHH8sfH`L H8Dž L@oHHHHv)HHPEMELL H0HPHXL`L L(HEIy IHDžhLpH`H=ELpLxHDžL0L0H5ELH @HfeHPLIrHpL9tdH IL9tdHHHHHKL HDž(L`LhIu`ELHHHPH=ELHH H5TEL@0H SL@L.LHL e.LXMUH}H=gELpLHxHMHuLEL`HhEELMEEL0|L0H5ELH @HcLLIZqHL9tIcLHHIL9t-cH8H@HH9tcH@HHH9tbHPH`HH9||DLLHH|.MZ H=EHLLMzLHDžHDžXMH5^ELH @HbHPLI6pHHHHL9ffHFHFH`GHFHGHGHGHGHGHGHEGHRGHHH HHGHGI HHGfUHAWAVAUATISHHHXL+HAXL3HAXL;HAX"KPmqNtH{HeHZLH5ycLEHHPHdL+I1DhlH߉ DAH`HP`HHPLOHLH0HHHDSPXA AHHLxLHIL9t_HIL9t[_TDLHAHH[A\A]A^A_]ÐLHAXސHLLHAE1@JSLLI`HL9tRD[HHHDžL@pH L(H@LHLHLDD LHH= BEHH SLL DLLrEHHDHH5SEH H=ELHH@DLLLL0DžDžDž(Dž8DžHHPDžXHX:LXH5\ELH@HQLLI_HL9tQHIL9tPL@HIL9tPLH IL9tPL0HIL9tPH8HHH9pH@H5hcHPHH5hcHHڜX7HLHLHLHH=s.LLL~L^0HEHH=ELHL(LLHDžLLHDžDžtL(H5~ELH@HOHHLIN]HL9t=OHMML9t(OH`H5FHH(螛XLHLASL H0HDž8 L(HHH@LLH0L @LPHLLXH`LHLhLpLL@HLHH5 }SLLDLL=EHH ELL=nELL DHxHHL`HhHH5)EHH=.LL_EHH4EH@H=ELHL LH`HpDžLDžDžDžDž(L0Dž8DžHLPDžXDžhDžx HXLXH5@ELH@H+MLLIZHL9tLHIL9tvLL(H`IL9tZLLHHIL9t>LLPH@IL9,,H(H5EKL;HAW`HHLHLRpH0H5.0HL_HpH=aEHpH(L0LxxL( LH5*EHKHPLIWYH0L9tFKHLPHL.HHIIMQ0HhLEH=߻EHpLpHxLH(LPHDžXH`LDžDžL(H5uELH@HKHHLImXHpL9LH=EHL(LPLL( LH5EHJHPLIWHPL9Hy0H0H_1Hl1H1Hf0H0H0H1H1H=2HQ2Hn2Ht1H0H0Hl2H0H1H1H0H1HZ2Hx1fUHAWAVAUATSHHh HH18L+1HIAH HP |HPHWHHPHPH0H脓H 1HHpH sHL HH5EDžHLH1HHA(L3HAV@LKAIylI$LPLp,DSH &EH$Mc0MsHLH5vSH=^EH HHHHHHLpHDžxLDDžDžGHMH@H5ܾEHHGKPPIL@L HHDžHMFƅPHL@HAQpH`\LH8DžL o0H)HHP'IULHH0HPH:HLHL cEHq HHDžLPHH=ְEHLHLDžLH5ELH @HHFLLISHPL9tEHMUL9tEHHLD[HHHDžH@HQ`LHLHLHLHHHHDH LH=Ţ.LL5EL(L I.HH=EHPH`LpL0LL8H@LHLDžXDžhDžxDžDžHFLH5hELH @HDHLI RHL9tDHIL9tCLHIL9tCH@IL9-f.KP HH5[cH*H0H5[cHHH5\F-(AHPHtAL5AHǺ1H ~GLoIDL+AA)HAXnA|HH5*[cHjL-[cL=EƅL5ELxLLLLL3HHHAD[PAL=ZcAL5EMEH3HLpLFI9LJML$LLpI2IRHf[HDžHHdxDžHDžDž HDžTDž\HDžDžHDž4Dž<HDžDžHDžtDž|HDž$Dž,HDžHDžHDžTDž\HDž$Dž,HDžDžHDžHpLxHfoHLLfoXDžfoDž fo8H)) )0)@H@LHHDžHDžDžHDžhHDžHHDž(HDžHDžDžP HpLxDž LPHXfo@HfDoPLfDoL fDoH(fDoDž0 fDo )PfDo0DžfDoD)`D)pD)D)D)D)D)`DžpfDo`LHLLpLLfopLHfofofopL@LHfo@Dž fo Dž foDž foD)))))) )0)@)PDžP fDoPLHLL0L8Dž HLLEfDo HfDoLL :-EfDoLLEfDoHHDfDoDž Dž fDofDoD)`Dž foD)pD)D)D)D)D)D))LHHxLDž HLpL-_DHxfoHEfopHPH=EfoPL0L|Efo0HH5q.foLDž` fo`)Dž@ fo@Dž fDo ))) )0)@)PD)`LL=%EDž LHLLHfDoLL5EfDoHHELL ELLEHHELL-EHHEHH=DEH0D)pD)L L@Ly DžDžDžDžDžDžDžDžDžDž( Dž8 DžH LPDžX L`HpH]HDžh DžxLMELUEELmEHEE譹MH5#EHHH:HpIL9t9LHIL9tm9HHHH9tQ9THHHHHH9t9LHPIL9t8LH0IL9t8LHIL9t8LHIL9t8LHIL9t8LHIL9tm8HHpHH9tQ8LHPIL9t58Hh [A\A]A^A_]L#1HA$8HE11IHH 7Pc HIDžH;HHD[HDžHLLF0LnLHH=xELLHDLDžLDž-MH5+ELH@H7HLI EHL9^6fDL {HL=DMsPLHDž(DLL L5DL`H=ĵEH0L8@DPMkLpLDžxLDžLDžLDž MH5KELH@H~6HLICHL9t5{PLEH HHNcLIDLHH;H5͂LL_I9 H">MD$LLH2HRHD[LHHDž HHMLHpLHPDHHXHHHHLHLHLxHHHEH8DHo$EH H EH(H=EL0LLHLLL=ELL5.HH=޴EL@HPH`H@HLMyDžXDžhLpDžxHDžDžDžDžDžLDžDž bMH5(EHH@H3HIL9t>3HIL9t)3HHH@HH@HH955fDHLL92LLHLAHLsL-.HLIP@LLHHH=ELHLHLMpHDžLLHDžDžDžMH5ELH @HU2HLI?HL9t1HIL91HLHLR{LHpH5EHLLIEH9!EHLxMQPLLH=LHAW LHIP(HHPH{HHWHHHPH0HjANLHH5-E Dž LhHMH1LHA MNH0HDž8HHvƅ@IyH0~M.1LA8HHH`1HH~LPLpQfDHHLRLjHpIMAH9tEtMH1HHHLHLARLiHPAID$H9tOEu{P@ǃpPu @H8H0HxHH0HH9tLHIL9tHHHH9tLHIL9tHĸ[A\A]A^A_]@MQMIEzLXHHHH@L[HL@hLH54ELiHHL`ID$LHH`gHHLLHpIH0LH`IH5iLAI9ELI%HhI2IRLOLHhgHEvLDHLICpHDžHL0HH=4EH8LHHiELDL5JSLL=REHHQv.HH ڰEHpH=EL H(HHL0L8L@LHPL`M{DžHDžXDžhDžxDžDž2MH5ELH@HHLI)HL9tLhHIL9tH`H0HH9tLpHIL9tH`IL9tHIL9tH@HH9=h3pP#M&LA$Lhƅ HDžM_LMHLHAH0LLHMt.LN H= EHPL@LLnL0HDž8LHDžX艙MH5ELH @HLLIk'HL9tZHHH9tEILLLAFLHDž ILLLHHDLHHpHHDHLL=wGSLLELL0EHH5EDL ILLEHHr.H H EH(HʯEH8H=kEH0HL@M}DDžHLHL`HpHUH@HMLPDžXDžhDžxLXLMELPLUEEEHEENMH5EHH @HHHH,%HH9tHM\$L9tH`fLhHIL9iHLcHLaLH5$EL0cL`HHI|$H`HLTaHHLLHhIH0LHpRL@EvL0H=ESIKPH8LHjELHH@H ELDPL5].EHH=EL`HhLM{HLLHHDžHLpLxHDžDžDžDž>MH54ELH@HHLI#HL9t LpH0IL9tHhHHH9tH`IL9tHIL9tHHH9(`1gLA11H H@&LHhAH5EL`I} H5E`@L@HHHHLL0H^Hs0HH{ H(Hs HH`H^HMU0L{@L9tHIUH9tH`HKLC L h0H~0LHC(HVH`LC-JH=oDH8HxLH HDžhLpHLDžLDžL H@H@H5DHH`dL9t#H;H;0tH{ H9(tHH`11AH EgI\$LXHL8M94LHHHL@H=ЩELLH@@3HH+H9HH5ELI}LPHLM9LHPHHXHPHHL@HLLXH@L@HHHLLxPDDpHH@LL@HHH0HLHDžLDHDžLDžL Dž(Dž8H8^HIL9tHMl$L9tL`H@IL9tHhH`HL8H`IL9q]goH)]o@)H=. HHiHIHEIIIIItIIIIII{IIIIIIIUHAWIAVAUATSHHH}HUH]LeLLmHEHEL Hà A LUA)fEDMLLH H=HEHEH AOIHuA9rDiAAD9HE fouIII!fDoEICt AHEDAH}AL9t"ALUH5E1E_IHEIWI A Le f]A9&E IAAI!LmIEHtLHK 1IH;v[LELM9pICXIxIILH"HuHLAH@LHLXHHIIWAUDM1HMHHPLLRLH)HI9HH)LL9HpIWAf.IEgI!LL IWDHEfDo]HIL!LmHDE'H*EHEfDoeH IH}Fd"EE_HEAJAIcIAfAfAfDEMGD9#E M!AAMLuIHtHPJ4*HH;0vZLMMM9iMCqIyMIL5HIL]L0LH@MILPHpLMGAZf.ME1HuHHPHHzIM)IM9IM)MI9LXMGAfIEgM!MM MGDAHEfDo}1ILuHL EI!G< AH]foEHHL ADAE_HEMOH]AA fMD9!E I!AAMLuIHtHHJ)HH;vZLELM9hICXIxIIL HL]HLH@MILPHPLMOAXM1HUHHHLHyHH)HI9II)MM9LHMOAf.IEgM!M MOHEfoUHHI!LuAE'HEfo]IC\!AMM M9`LxE11IIL]M<$MHEM!IcAfAfAfD}MA9jEAE1M LuM>MtIWL42M;73HEIH9pLCpHxHLI!Hh LPLXL`HpHh HpLhHIL`LXLPH}L0MH@HL?IGAEDD9fHMMAII98@HUHHxHHpHHhL)HH`I9: HpIHH;`0 HEHH9pHCPHx{HI!HH+ LHLPLXL`HpHh< HpHhHL`LXLPLH H}H0H@HDžhHHLHPHxHhHI MM!M, L]HMfouDsIHA4DM9:LxH EII EE_LeIE9HE fDoUIII!DuGEDmfDo]IG\ ALmM0M8M9MIL}E11ILEM4$HEMcAfAfAfDuMM!LA9ZEAE1MLuIHtHQL42L;1 HEIH9pLCpHxHLI!HL`LhLpHxLxLpHHLhL`H}L0MH@HHHAF fAEDA9^HMMAII95@HUHHxHHxHHpL)HHhI9HxHH;hHEHH9pHCPHxHI!HHLPLXL`HhLpHxHxLpHHhL`LXLPdH}HH@HDžpHHHHPHxHpHzI LL!MoLEL}fDouDsIHD4DM9IL}H REII E_ALeMOD9s]HEfoMHIM!DuA ADmfo}HA|AHĘ[A\A]A^A_]f.EIAAM! H]HHtL@K<IH;8vcLMLM9QICYIy IIR LLULUH|HuHLH@LHL@AHxIMOA DEHAAH!"LMIHtHHJHH;vhHELL9PHCXHx|HHHLxTHxHH}HHʹH@LHLXHPHIE[EcAEE9-EIL!IIILM9fEcAEE9=EIM!M(MEIM9fEcAEE9=IEII!%DMHL9EcAEE9HEIH!sDIHL9SEcAEE9IEIM!kDLHL9+HcEOH Ef%HEHfH IOfEAHUD9EIIAAI!LuIHtL@K< IH;8v[LUMM9bMCrIzMI* LH LML0LAH@I1IHpHxIIOAIEoI!LL IOfIHEHfo}I!A|EH]foUICTAD DpEfUMLUIIIHtLXKMSH;vjHEML9pLCHHxLx; HxHWHIHMHxLH@ALH8HL@HPIMIL#]M L]1@HI! fDHI!|fDIAAI!H]HHtL@K0IH;v[LULM9rICZIz IILLH HMHLH@LHL@AHPIIEIEoI!LL IE1E1DHpL)HH9HxHxL)HH9HxE1|1fEiAEE9mIEII!ELIM9ELLL`LhLpHxHxLpLhL`ILLLXL`LhHpHpLhL`LXLL9vdH}LL9oHCOHIItYLHx LxH)LULLH@IIHPHHHIH8MOALL9veHEML9pLCPHxMItZLLx|LxHLMLLAH@I IHHHPLIuHIWALH9vrH}LL9oHCGHIItgLLxHpLxLpHHuLLH@HHHHHPHIM0MGAI1HuHHPH8HrII)IL9LMH9v}HEL9PLCPHxLHtuHLhLpLxHxHpHLhZH}H@HH0LHLXHPHH)HIEHEgH!HH I>L1LMIHPH8HJII)IM9LH9vzHELL9PHCPHxIItoLHpLxHU&HMLxHHp}H}H@LHLHLXHPHILHMOAIEgM!MM MOIHM!MwIM MM!IHM!LqHI LL!Lx1HUHHxLHwII)IM9LL9vhHELL9pHCpHxHp3LpItRLHLEHpLH@IHIHPHxHI}HIELE1H}HHPLHJIM)IM9mLL9vvHELL9`HCPHxHxLxIt`LHp,HpHLEHxH@LI8IHHxHPHIM\IOA II)MI9`LXIEII)MI9/LHMOALHLPLXH`LhHp'LULHHxLXD~xH`LhHpfElEbLPL@LHLPLXH`HhLML@HpLP~pLXH`HhflAaLHHLIHLHI1LLIII)MM9 LHIE}LHLPLXH`HhHuLHHpLP~pLXHhflnH`HpHu~pfl^LXL`LhHp=HuLXHxL`D~xLhfElDnHpHLHH\HHmI4IM)MM9LHIOAMGAE14MOAE1IWAE1VHxHHIIE1MOAE1LHIHp+HpHxHE~xflHIEE1uLpHhHULpHxHhD~xfElDjLpHULpHxD~xfElDJ HhLpHxRHuLpHED~}HxfElD~HhIOAE1}L`LhLpHUL`HxLhD~xLpfElDBMM!#LL!HhH}~hflgpHuHx~xfl~FLEHxD~xfElEp H}HxD~xfElDW!LxLxHE~EHEfl@LpLUHxD~xfElEJLpIHhxHuHp~pflFHh9GHxL]~xflAkUL]Hx~xflAKIEII!LxHL9KAtAIff.UHEII HAWAVAUIATSHxLfH}HuM!HEHMMLML]EHpEM9LLA LHH0H}LmH8HhMA)fAEM!fA LEL)H AHLEHHtvHtLLAD$C3A9$u2HuI#t$L9LωLxZLx{M|$ LAGP/AW D)9O/I LAG*EG DD)9u)L9,LωLxLx I L9}L`LAMHBDJ DD)D9HZ HCLD[ DD)D9JHS HBgDR DD)D9eH{@HGDO DD)D9uL9YHULEHS`H9UIL`L]@H5EEEII HhLEE M9 LMA LHI0A IH8HELxA)fAHEEEM!fEA LMHEL)EH LeMHHHtjHt>LAFh0E9>u'HxI#vH9 DH MF LA@B,EH DD)D9B,I LA@(EP DD)D9u*LpH9 DHLpq I L9EL`ILA@ AX D)D9 IX HCDC DD)D9LK LAAAy D)D9HK@HAQ D)D9uL9 HUL LC`L9EKDHELMIEI HpL]EM9LMݿ HI0LeMH8LhI)fALUEM!LfEMEL)MH HMHUHHtfHt9LAFo.A9u"IvL!L9!LM~ LAG*E_ D)9*I LAGo&AO )9uL9LlI L9}LxMALAGKA_ )D9GI_ HC{ )D9LC LA@EX D)D9HK@HADQ D)D9uL9HULL{`L9}BL~EHMIEM LpLMEI9LMA MHI0HH8HEH}A)fAHhAEI!fELEL)H AHLeMMHHtfHt9LAF,A9u"IvH!L9LM~ LAG'EO D)9'I LAG#AW )9uL94L;"I L9}LxMALAGA_ )D9I_ HC\K )D9ZL[ LACwEK D)D9sHS@HBDR D)D9uL9dHULp߾PL{`L9}Bf.L )xEHuIEM LhLEEL9LMA HHI0HEMH8AIH`A)fALmEEM!fEMLA HEL)DH HMHHHtfHt;LAF\*E9&u$HuI#vH9DH[޾M^ LAC %AS D)D9%I LAC!AK D)D9u*LxH9+DHݾLxI L9]LxILpEMLAD$A\$ D)D9I\$ HC9Dc DD)D98L[ LACUAS D)D9THK@HAqy D)D9uL9HHULݾ4Lc`L9eHLxHuHwzEEII HhLUE L9 MMA HIDI0HEI8HxLID)fAL]DEM!fELEL)H EHL}MMHHthHt:LAF'E9&u#IvL!L9DLܾM~ LAG#EO D)D9#I LAGoE_ D)D9uL9[DL۾HI L9}HpLELAGEg D)D9Mg LAD$E|$ D)D9MT$ LABEJ D)D9M\$@LACAK )D9uH9HUHھnM|$`L9}9HExELMIEI HhLeEM9LMA MHI0AHH8L]H}A)fAL] EEI!fEMMEDEHMLL)H HHHtfHt;LAF%E9u$HuI#vL9y DLپf MF LA@ EP D)D9 I LA@Ax )D9u*LxL9 DL_پLxI L9ELpMLA@E` D)D9M` LAD$ ED$ D)D9 MT$ LAB8 EZ D)D98 IL$@HAU Q )D9uL9BHULؾ.MD$`L9EGHuH}2Hx[A\A]A^A_]E98HxI#pLpL9t HUL4ؾLpDL`Lh LUHIEI E MML}II0LMI8D)fAA DEM!fELE}M) I DIH}IAIt}ItLK LAA2D9{ ;HxI#qL9HUL"վHK@HAD9{@4HxH#qE9n HuI#t$L9tHULԾ@L9eAD$ LMIILMLjԾIHHA<$HE@}LuLeB0LLUH}IAL9tپIHUDL#rLEIMLESD92bHuH#rHxL9tHULӾHx3Lp HHLUEI EMMLuII0HMI8D)fAADEI!fE LhDMDM)HUI IIAIIt?AD$kED$ LD)D9uL9gDLҾTI AD$|E9,$u%HuI#t$L9,DLҾI AD$!E9,$u%HuI#t$L9DL~ҾI L9eAD$AL$ L)D9uL9HUL5ҾMt$ MAFE9.u%HuI#vL9lHULѾXMf AD$A|$ L)D9uL9-HULѾMf@AD$AE\$ LD)D9uL9HULyѾMf`L9eL%<ݸE1I$ID$D9r HuH#sL9UHULѾAHS HBD9s HuH#rL9HULоH{@HG~D9s@HuH#wwfE9(HuI#pLxL9t#HULwоLxQLpLh H}HIEI EMMLeII0LMI8D)fAADEM!fELEeL) H EHL]HHtzHtAI8E9gw@L9e+El$H]L}IE L#sHMHLHMI[L9}fA AH]LeIE$;L#sH}HLH}H DL9eKEl$H]L}IE3L#sHuHLHunfDHxLA-D;cUfDHUHA-E;gA9HuI#wL9ELL3I E9#HuI#sLxH9EDH Lx+I @E9(MHuI#pLxL9vDLĸLx\I @E98HxI#pLpH9kDHyLpQI E9'vHuI#wL9DL;I Mf.A9vHuI#wL9ML;I NA9HuI#wL9LωLx轷LxI DE9n@HuI#wfE9n@HuI#t$E9n@HuI#t$E9n@}HuI#t$RE9n@HuH#sfE9n@HuI#wfE9,$ HuI#t$HEHMIDHx迼LuHELLH9HEAt$ )LD9Ds D)HD96fDAw )LD9fDE\$ LD)D9.E@EG LD)D9JaDED$ LD)D9F]@Et$ LD)D9@Et$ LD)D9@Et$ LD)D9Sj@EL$ LD)D9|@Ds DHD)D9@Ew LD)D92IDEw LD)D9DAF )D9 fAV D)D9E~ D)9fDE~ D)9fDAV )D9&=fDE\$ DD)9EN DD)D9HH]I#L$HH]H6IB@E9.HuI#v\f.E9,$HuI#t$E9.HuI#vf.E9.2HuI#v f.A9IvL!E9.HuI#vfE9.#HuI#vI^fUHSHHHOHHH0Ht蕸HHt脸HH[]MfDUHSHHHuOHHH0HtEHHt4H|MHH߾H[]鹸fUHATISHHtHtxH)HHwHM<0L9MVM9MtHILHhI>M~LhB?HIL9twiHxHHH9t[iH`HHH9t?iƃHIL9t#iHIL9tiHĈ[A\A]A^A_]@HH`Lh@iHhI$PL@8Dx HP IL@(H@0@8Lx&^LxHt2HH`uH9uYL`I$x;fDI}(I9tHxShHxLHx=hLx1DR E9U @HJHHxDIparams.kHDžLLVƅLEA,L@ƅPK1LpIL=RL@HDžHHLHHH=&EMHPHM@H5EHH@LLZ&EHLL=DHH LHDžLDžLDžDžLDžHh'gL(IvM^I>H M<0L9IVI9MtHILHGeI>LhM~B?H IL9t/fHpH@HH9tfHxHHH91L"I>BfDHh1"HfDADZfDHxAH i$E1H8L@ƅPKLpIL@HDžHAL L=RH@IA MAHDžHH5EHL0Dž8HhXeLhHH@HMBL9ZHpLHH9tH`LP~`L`H@`HHdHLHhHDžHHH9t!dLHL@HHKuDI>O1L I>fDHxAH l"E1631@7HfD fDLH1L=ORDDI>HtHtl5bHH@HHHH`~`L`H@`HHhH~HHH@HeVHWHVHiVHVHVHmVHVHrVff.UHAWI1AVAUATSHHxHL#HIHMXA$`I`MHxHfDIHvHt;N ~HvHuM9A;T$ It$(IT$0HL`L_HHL舩CMH H55yDDžp`HaHSpHJH<yLMD$L L`hL@`HHDžhƅpAHLL LH5ELHL-axZ(HIL9t`HIL9tv`H`IL9ta`LHIL9tE`LHIL9t)`Hx[A\A]A^A_]HHLX`HHL@8@8HP Iĉx IPL@(H@0L9ULHI9t HLLWIxfDp{`~HH1HHHx@HxH5-CHLx IL9t_[H HHDž(LFpHHDž0HDhLL HLHXHwDH`LH DHhH=DHHD@L9RLPLCHpH-LLFH5EH HH@HHLxLLDžDžDžDžHDž+^HLKH`HL9i MT$LL9 HxLp~xLxH`xhH HLHDžHHH9KK@HrHDLIparams.kHDžMFLxLLƅEAMT$AD[HDžhL`ƅpA L 1H=CRHDž(IFH Eƅ0H HpHhHZLLLIL{HHHHhD0LH`HPHpLL*tDLL DHXH5HELLLEH HEH(HH@HHHH @HpH55ELEMEHDžH`DžhDžxELMELhHUzLUEL]EEC[LIwIGI?HM,0H9MOM9MtHILHcYI?MoHB/HH9tRZH IL9t=ZH`IL9t(ZLxHIL9I|$(I9tHYHLHYL1DR E9T$ @@HxAH yE1X,IL$ƅpHSH`D[HDžhHRLL 6RH@MF0LELpDjH5ELCMFDDL LHDžLDžLhLDžHYH M]H`H(L9IL$H0H9qH`Lp~`H`H``hHaH L0HDž(IH L9t%XL HS1D[IFƅ0H HDž(f`H"EuH`KhHH`HLLHRLLHHHHHL L CL(LoDL0LDL8LDH@H5-HHH NEHXHHpLLGHHDžHPDžxLDžDžLDžLDžHH56EHH @DžDžVHHCH`HH9MD$LL9%HxLp~xLxH`xhHHLHDžHHH9tULhIwM_I?H`I0L9IGH9wJMtHILH]TI?I_IHL9f1LI?ǐIHe EL9CHxUHx+@1LI?~fDHxAH E1'H{IT$L HDžhMNDCH`H }RƅpH5KELFL IC0HDž(ƅ0LWHpEjHhDMCDL@HLH@HH5EHHDžDžDždTH@MEH HHL9bMVLPL9H`L0~`L`H `(HH@LPHDžHIH@L9tBSHSD[H H(H`~`H`H``hI}H D I?cH`~`L`H `(I}H@0DHx~xLxH`xhH{H*DHtHV,QHH`HhH;wfDHx~xLxH`xhH{HDADHtHPH(H`HhH /1@7I?fHtHE13H{HS H)HL9BJ1B A9@ @H5%H{%H&HN%H+&Hw%H%H%H'&1ƇfÐff.Gff.UHAWAVAUIATISHHHXIL$HQHtAHyt:Et$PM<$t}LAXtjA$AƄ$E11IL$IT$ H)HL9]JfDAHvLA1LL)MuDDI}H= .!fUHAWAVAULATIEISHHhL?DwPHHDžƅAW@ASPt=HIƃL9t%Hh[A\A]A^A_]fDD[lHPH tTRHDžXHW HpLGH@LHPH5EDGLD`Džx%HMOHHL95MUH L9qHxL~xHxHxHaHL HDžIHL9t$LIt$MT$I<$HM40L9| M|$M9MtHI\LH1#I<$Mt$LB7LHABfD4DsLLH5DZLD^$HM_HHL9IMLH9HHxH~xLxHxH8HHHDžIHL9H L0H@H~ LFHDžHL=QRLH5 DDLDžK#H0MNHH8L9 MEH@L9 HxLD~xHxHDxDH H0L@HDž8IH0L9t&"LIt$Mt$I<$HI0HxL9M\$L9x MK LxLML$BHH{LH@H5DMP M@HDžHPLLDžHx!HxHPHHXLYL9 IEL`H9 HpLD~pLpHDpDH HPL`LxHDžXHPIL9t LIt$HI<0HxI<$I9qM\$L9x/ M LxLML$BHHfEHp1ɺLH58ED)D)}D)Hx| LxHpHHxIL9 M]LL9 HpH~pLpHpH HpHLxHDžxHpIL9tLLIt$I<$HI0HxI99MT$L9x M&LxHH5DHJ LBM\$B{LLHH@LHDžDžHMOHHL9 MUHL9HxL~xHxHxHHLHDžIHL9s%HL H@Lw LGLGL LRH5!DLHDžL0Dž8HIGHHH9 MULL9HxHD~xLxHDxDH HHHDžIHL9;;1LI<$DH@LP HO L=zKRHDžHH@LGH@H55DLL`DžhHMFHHL9* MULL9>HxL~xLxHxH.HLHDžIHL9tLIt$Mt$I<$HI0HxL9 ML$L9xMtHI LHCI<$HxLIL$LHA{L}LpMZ MBH@HDžx}H5DHLpEHxTHxHHHLHL9# IMLH9 HpL~pLpHpH HLLxHDžHIL9t$LIt$HI<0HxI<$I9) ID$H9xwMtHI LHI<$LxLMD$BH HfH1ɺLH5c2E)e))HxLxHHHIL9IEL H9HpL~pLpHpHHL LxHDžHIL9tLIt$HI<0HxI<$I9MT$L9xMtHI LHNI<$LxHEH@H5DHP L@M\$BDKL}L0HULHEDMEyH0MGHH8L9IML@H93HxLD~xLxHDxDH H0L@HDž8IH0L9tTLIt$I<$HM<0I9Mt$M9MtHILHI<$M|$B?fA~DHILHI<$HI LHI<$9HILHhI<$Hx~xHxHxIHDHxD~xLxHDxDIHf.Hx~xLxHxI~HDHxD~xHxHDxDI~H0fHx~xLxHxIHDHpD~pLpHDpDHxHzHP Hp~pLpHpHxHzHp fDHx~xHxHxIHD1LI<$<D1LI<$D1LI<$2D1LI<$DDDI<$HtHHHHHHtHi|H8HHH0HtHa<HXHHHPYHtH[HxHHHpqHtHHHHHH1LVI<$3D1L>I<$&D1L&I<$DA"DHtH$HHHHHtH|HHHHHtHHHHHyHtHdHHHHHtH$HHHH-ADADADHp~pLpHpHxHzHHfDHp~pLpHpHxHzHlfDHtH/$H8HHH0DDI<$A]DAXDfDDDI<$1@7I<$ I<$4fHx~xLxHxIH0 I<$1@7I<$D DI<$b@H8HHH2`@7HXH @7HH@7HxHHHWHH{@7HH @7HH@7HHd@@7H8HH@UHAWAVIAUATISHHXI$LXM,$LAXwLM<$A\$PLIUƅHHDžAW@IL$AHyHyeA$.A|$PvnED$HL0H@HP H;RLHDžHH5D]D L@H0Dž8 HH0MOH8IL9 L@M]LL9 HH~HH H0H@HDž8IAH0L9t LIvI~IHI0H9nIVH9OMtH<0ILH II^fE12It$IT$ H)HL9WJHI0M9MVL9MtI<7ILHM>I^A%A|$HLH@HP H<5RHDžHL@H5DZLHDžHMOHHL93L M]LL9QHHD~HDDHAHH HDžIHL9~~1L"IHtH,HHHHLH=5sC1 DDI]HD~HDDH{HhA|$LEHH@MH L|3RHE}M@H5DHLMLUEHHL[HHL9LIMLH9]HH~HHMHHHDžHHH9IIHtHiHHHHHD~HDDIHHtH^,HH8HL01LͿM>qHtHHHXHHPH~HHCHH~HIGHPYHHD DHHHtHHHHH 1@7M>OAH~HHCHp HtHHHxHHpH~HMGL0%HH`HHXHHxa@@7HH8Iff.UHAWIAVAUATLSID$HHL7DoPHHDžƅAV@AAWPJLHsHCH;HM,0H9LSM9IMu4LkIB/HL9tH[A\A]A^A_]@HIsLHH;lL f1ɺ6LH5@DL))`)H MuHH(L99M\$L0L9HL~LHHH L0HDž(IH L9]@1H膻H;fDLƅHcp_asyncMUHLHDž*L BHDž(M^f0L YMG0IOILP@HAH EH=EAHELD6 1LL L(LHEL`LEL,DIQ@HMH ,RDpL@H5DH`LfL]LEHMH @LEMAHDžhLUEEL]EH@IGHHHH9FML$LPL9HH~LHHH@HPHDžHIH@L9tH IL9tHIL90w&fACDD DH;=L AAHDž(M^fD0L t1IW0H'ILP@HAHtHHHHHH@H~LHI}H jDH~LHIH@]DHtHtaH(HHH AH EP@7HHH0H(HH,Hf.UHAWAVAUL@ATIEISHHL7DPH@HDžHƅPAV@AAA|$PWLHHsLcH;H@M40L9LKM9vMu1LsIB7H@L9tH[A\A]A^A_]ÐHILHH;oA|$L@L H@Mf MFHDžHPL ,(RLH5DL@L`DžhH MWH@H(L9eIEL0H9Y H8LP~8L8H@8HHI H L0HDž(IH L9ey[@1H&H;}fDH`AllIcp_asyncAHNLH(AAHH`HfD|M{HPDHLL LpLALMZHH@HHL0IDžx_zfiHDžhƅ~LHDžƅHHDžƅHHDžƅH8LHDžƅLHDžƅLL HDž(ƅ0HHH@HDžHƅPEIt$0L MM<$LAW@1H mEHhLiE@IELD? H(1.HH8AW1H QD HHHH5%RL@0E\$L`HL eDLLL@HH@HHH51DHDžDDžL LDžH`MWHHhL9 H0LpHH9HLD~LHDDHsH`LpHDžhIH`L9AAAD1@7H;fA|$LL0L=#RIP0H5DLH@L@LM@H> LH HPH5~DHDžHDž8DžHDžXHIOHHH9LLIL9r HL~LHHb HLHDžIHL9tvA|$PHuI|$LGA| H8E1H b1A|$PE|$HL H LDLHMZ0MBH H@LH@H5wDLHDžL(H0Dž8DžHHMGHHL9| L0HIL9 HL~HHH HLHDžIHL9tLAt$LP>HLIC0HDžXH LxL`H5DHpLLMCHH@HPDžDžHMOHHL9v LLIL9 HH~LHH HHHDžIHL9tA|$PL(HHEd$LLLHLIHDž LL`HHhHDH LLLLHLHLLL@LLEHHH5ELL%EHH=#m_LL=ELLEH H EL(L0H H8HLeL H@HpH53DH}LLEMFHMH @DžHLPDžXH`DžhDžxEEL}EEE$H Mt$H@H(L91MUL0L9-H LPD~ L H@D DHHH L0HDž(IH L9tHH@HH9tHH HH9tL0HIL9tL8HIL9tHHHH9trLHIL9tVLHIL9t:L(H`IL9f.HtH HHHH>HD~LHDDIH`fH8~8L8H@8HIH DHtH,H(H@HHH MM<$LAW@1H EHhH5E@HELD? H(1藾HH8AS1H DuAT$LRH DLLpHL@LMQ0H5DLLMAH HH@LpHDžxLHDžDžzH@MOHHHL9L0LPIL9HHD~LHDDHH@HPHDžHIH@L9f.H D~ L H@D DHI|$H HAVL1H oD貼A|$PHHEHA*H D1{L(HtH)tH(H@HHH HtH4HhHHH`H`LHH H~0DpLH`LLLFH5DHH@HDžhLDžDž HMOHHL9lL0LIL9HH~LHHzHHHDžIHL9tLHAt$>HLG0LHDžLL LLLGLH5DHH@LDžLDžHM_HHL9LHIL9HHD~HHDDHoHHHDžIHL9AH nD fH~LHIHDHtH  HHHHH@HtHHHHHHtHHHHHH8AhH D1,IT$HrƆ|0H(H@HD~LHDDIH@|H~LHIHH~HHIHoAH UD0H(H@L(HtHiHHHHAHtHLHHHHH~LHIHHD~HHDDIHpHhHHH'P@7HHHHHHH2HHHHH>ڿHۿUHAWAVAUATISHHXHXL+HAXL3HAXHKLHDžIUƅ HyHt HyE16fH{HS H)HL9JLLxLL(H0L HL L(L87HHM]HHL9LHIHL9yHL~HHiHLHDžIHL9t HHpHH9tﵽH ML$L9tٵHCDHߋL;HPE,2DDtAHLDIL$HH H躈LDH MD$EE]EHADL9tBH{HLOLAtHL@H L(L=o-IR MBH @HDžHH@HHPH5DLXL`DžhH%H IL$H9t菴L A0HDž(M]LL fD0L HLAHH6LI9DkH{HLpLLIHDžx LHHpHHHHHLLLDLHL H(HHHHLL(QDL DLLHDHHJDDL H(HLPLXDHL L-6DH(H=9DH8H5;D@H HDLLH0HvCL`L DHHLHH5DDHH@LMCLL=%DDžXDžhLpDžxDžDžDžHDžDžDžDž Dž LDž LDž HHM]HHL9:H LHLH9 HHD~HDDH HHHDžIHL9tఽH IL9t˰LH IL9t诰HHHH9t蓰LHIL9twL(HIL9>>HpHL+HDžxH(HHHHpƅHHDžƅL HLALHpHHAHxLL`LLLpH5D>H L(LH LLLHLǯHH`MEHhIL9 LHpIHM9] HL~HMM L`LpHDžhIAH`L9t蚮HHpHH9t~H ML$L9thLSHߋHMZD<2DExH@LDIL$HHH HKLs|DH Ml$EEGEHADL9tӭH{HLOLAxLALH L(HIS MCH @HDžHHH5DLL=-LDžH赭H ID$H9tL A0HDž(IMLH fD0L HpHHAHL}LM9 DkHSHI$pLHH LLp0LxHH@HH@LHHHDHPLXH L(L`LhHHHH5QHH DDLADHH=^CDLL DHDž( DLpLxHH5wDLHL}L=MDLL-DLLZ?DLLHDHH@DHDLPLHH@L MD$H0LHUDžDžDž(Dž8L@DžHDžXL`DžhLpDžxHEEE E L}HuH5DE E 跪HHMeHIL9 L HIHL9 HH~HM LHHDžIAHL9t芩LHpIL9tnHH HH9tRHHHH9t6LHIL9tH(HpHH9LH=C1鮽HHA1H D{H(A1LH V>Dy{Iz(I9tL菨LL耨LI}(H9tjLM_!HtHq 6HHHHHH5a=DHDžHH HLHL@LH@H5 =DDž7LLI訵HL9蓧I|$(I9tLMtLhDL-DL==DL(HAU`L+HJL HLAUpHH5,׋H L(wH=DH`LLhL`& MLH5DH?H(LI謴HL9t蛦HH5DLL@:H(L HH= DL4&MLH5DH誦HLIH@L9LpHH;DH@MZ HMBLH5;DLpLHDžxDžLLI艳HL9_tUHHA1H )DxH(A1LH :DwHAS`LHL HLASpHH5,賉L H(H=DHHL@L@L $ MLH5[DHH(LI舲H L9twHH5DL`AH L(DEHH5׾DLLLD芤HLIH`L9H=\9DHXLPLPL@# MLH5)9DH H(LI荱H@L9HAAHEHD~HDDIEH-HtH  HHHHH~HIEHHtH蟡HHHH\H=8DHpL LxLpR" MLH57DHȢH(LI5H L9H~H(IEHHtHȠHHHH\HAHH~HM]L`HtH0KHHhHL`x1B A9D$ @WHAЉH6HtH럽HHHH1J A9M @qL|LPI|$(I9t蝠LM蒠1DB E9D$ @HAAL+HD~HD(DIGH%H~HMMLOHtHٞHHHLHAAH 1B A9B @HD~HD(DIGHDDHHqHHCpHHhHHDDHHHHHHHHיH䙿H9HHH骚HƘHӘH隘H鮘H馘H鏚HęHКHKH晿HØHטH隿HHH H餚HØHH[HH鿘f.UHAWIAVIAUATLeSHHUiCALhLmHEHEL~Hà A AHMA)fDEDMLHHLDIAM A~IvLU9' IHEAI!H]HHtHPLMJ HH;v\LUH]I9ZICZIze!IIL H5H}HMHH@LHL@HHLIvAPLx1HMHHHLHqII)IM9II)L]M9LXIvADIEnI!LL IvDHE fo]HII!foeIA\EICdA6H}A6L9tA6EA H=3DE1E^INHHEH A AH]A fDeA9EA IAAI!LmIEHtHPN HL;vbHELL9HHCXHx II"LLM8L]HlLEHMںH@MILHLPINLA6IEfI!LL INDHEfDo]E1HH!HHD1E&H55DHEfDoeH IH}Fd!AEFHEAA AA fD]M^D9IHEHfDo}M!E< A>HEfoEHAD;AAEA EANH DE1A~HH AHEAH]INA fDU9 IAAI!LmIEHtHPJ4 HH;0vbLULM9JICZIzII_LLMLEHLMHLƺH@MILXHpLINAIEfI!LL INDHEfDo]E1IL!HHH=qDDE&H HEfDoeIH]Fd!AE^HEIVAA AA fDED9HE 1E1MfDo}HIIL!L]D<E&HEfoEIBD"AE$MHEAM!LLff}A9`EAMLmIUHtHBH4H;2H}HH9OHCwHIHM!HL`DhLpHxHu MHxLpHHDhHEL`L]HBHHI;IHzHHrL HIL!YHEHuHHxH0HxHHhH+}HHpI9uHxH+}HHH;pHxHH;pP HEHH9HHCpHxHI!HHKLPDXL`LhHpHx̘HxHpHLhL`DXLPHuHH@HDžhH>HHHxHpHhI LL!H}H:L]fDLuIfo]HIAB2HBIA9AQMHDIqI L}93IAAI! LMIHtHPJ :HH;vbHuLL9~HC^H~IILDUsDUHLEHLH@MILXHHIvLA>fDIEnI!LL IvHE fouHII!DeAt=A>DUfo}HA|=AHĘ[A\A]A^A_]ÐABDD9nHMII9LUAAfDE?L!AAI LMIHtHHJ4)HH;0vZHELL9hHCXHxII LHYL]HLH@MILPHpLIVAfIEfI!LL IVEI!AAM LMIHtHPJ4*HH;0vZHELL9hHCXHx7II LBHLEHLH@MILPHpM^LAfIEfM!MM M^DoAAD9mIDHHUI!QLxHH;]LODANHHEL M^H]IcAfAfAfDe9wDiAAD9IHEHfo}M!A|AH]fDoEHEDAA H DEVI~HH HEH]IcAfAfAfDMD9rEBEjAEE9zIHEHfo]I!A\AH]foeHAdAAHL'DA~INHL HEH]IcAfAfAfDe9w4DoAAD9hIHEHfo}I!A|5EH]fDoEIGDA6A6wD$>D9IEII!HMHL9a@EcAEE9EII!LMHL92DE`AEE9EIL!ICILHL9f.DjAAD9IEII!HMHL9@EcAEE9}IEII!DMHL90P S]fEHPHMHHHHUHtHHH< HH;8vkHuLEL9FLCFH~Lxr HxH覐HL]LxH@H}ILIHPHxHHHH#EH HEL!AAI: LeI$HtHHN HL;vbLMMM9YMCaIy2MI LL]揽L]HHuL MٹH@LHL@LHLI~AfIEnI!LL I~IAAM!LeI$HtL@K<IH;8vcLUMM9JMCbIz(MI LLMLEHLML LAH@I1IHpHxIM^AfHEnL!IM M^IAAI!LUIHtL@OIL;vcH}ML9OLCgHMIqLLM@LEH LML MAH@I1IHpLXINIA6HEnH!HL INHI!\fDM1HMHHPLHJHH)HI9LL9v~HELL9xHCPHxp IILLpDUHxUDULxHLp HMLLH@LHLXHPHIh HhLHHDUNIvA>IDUM1HEHHPH0HJII)IM9LH9vlHMML9ILCYHy MItaLLMLxpLELxH HuLL¹H@LHLPHPHIl HINA6fDM1HEHHPHHzHH)HI9LH9vlH}ML9oLCGHu MItaLLxLE訋LULxH HMLLH@H1HHpHPHIHM^ANfDM1HEHHPH0HzHH)HI9LH9vlH}ML9oLC_H MItaLLxL]LULxHHuLLH@HHHHHPHIHKIVAfDM1HUHHpLHNII)IM9LL9vlHELL9HHCpHxIItaLLxHuLELxHL]LLιH@IIHPHpHIPHSINAfD11EH}HHpL9v`HuH9~HC~H~H}LEItSLgHHMLEH@HLHHpHPHHHIWHIvAH}IuH0H}ItHtHPHH)I)EIuxH29tmtZtGt4t!tID5H2ID=H:ID=H:ID=H:ID=H:ID=H:ID=H:;uID=H:~ID=H:~ID=H:~ID=H:~ ID=H:~(ID=H:~0ID=H:~8@ID=H:;ur1_HpVME1HEHHPH0HJIM)IM9LH9vzHMLL9IHCAHyIIItoLLpLMHx0LELxHLpHuLL¹H@LHLXHPHIMINA6ME1HEHHPH0HJHL)HI9LH9vzHMLL9IHCAHyIItoLLpLxHE_LELxHLpHuLLʹH@H>HHxHPHIMM^A.ME1HEHHPHHzHL)HI9LLH9vwH}L9_LC_HMItoLLMLpHx莅LMLxHHpZLUHLH@I:IHxHPH,IMjI~AtEmD(HII)MI9L@IVA'II)MI9LXM^AHH)LH9HxINA6HH)LL9HpDIvA>\HH)LL9#HxINAIHM!M1HpLM~pflAAcLHLPDXL`HhHp軀LMLPHxDX~xL`HhHpflAILHHLH~IhHL~IHLH~IHxHH~I+HL~IIM)MI9NLPI~ArIM)MI9[LXM^A HL)LH9hHxINA6IvAE1?INA6E1IVAE1IvA>E1bM^AE1INAE1LPLXD`LhHpHxLULPHE~ULXLhflHpHxARD`LLHM}ILLH7}ILL$}I~HhHE~hflHLpHxJ~HMLpHED~MHxfElDILpLx~HULpHED~mLxfElDjHLhHpDx}LULhHE~eHpflAbDxALpLxu}HULpHED~MLxfElDJLpLx2}HULpHED~mLxfElDj;INA6E1(M^AE1II~AE1jLhLxHp|HULhHE~mHpLxfljiLhHpLxm|HULhHE~MHpLxflJLhLpHx|HULhHE~mLpHxflj{L]HED~ufElEsDx{DxHE~mHEflh;LL!r{HxL]~xflASpW{LEHED~ufElEpCLx){H}LxHED~UfElDWLxzH}LxHED~UfElDWLxzL]LxHE~uflAsLxzLxHE~UHEflPLxZzLxHE~uHEflpIEII!AMIM9LAD$>E94$u$It$H!L99DLp&M\$ LACW:ES D)D9R:I LAC4AS )D9u$L]L9DLoL]I L9L}MLACXEk D)D9SMk LAEE] D)D9MU LABAR )D9ME@LA@+EH D)D9uL9HULnM]`L9?DL DEIM LxLEEL9LM IHI0HuMH8ALI)fAHpDEM!fEL]LEM)I DIMHEIAItkIt>LAD$<E94$u$It$L!L9DLmIL$ HA7DI D)D97H HA2DY D)D9u$HML9`DLimHMIH H9L}MHADi D)D9Li LAEAM )D9MM LAAAQ )D9I}@HGDW D)D9uL9HULlIM`H9BL iDEIM LxL]EL9LLA IHH0H}MH8AIHpA)fLEEEM!fLEM)I DIMHEMIAItkIt>LAD$9E94$u$It$L!L9+DLkM\$ LAC!4AS )D94I LAC/EC D)D9u$L]L9DL0kL]I L9L}MLACJEk D)D9EMk LAEE] D)D9IU HBDR D)D9I}@HGDO D)D9uL9HULejM]`L9@HIDEII HxLEEL9 LMA HHI0HuMH8ALIA)fAHpEEM!fEL]LEL)H DHMHEHHtkHt>LAD$8E94$u$It$L!L9%DLci%IL$ HA1DI D)D91H HA.DQ D)D9u$HML9w%DLhHM`%H H9L}MHA%Di D)D9$Li LAE'AM )D9'MM LAA'Ay )D9'M]@LAC'AS )D9uL9$HUL/h$IM`H9Bf.L DEIM LxL]EI9 LLA IHH0HEMH8AHHpA)fHUEEI!fLEM)I EIMLEMIAItlIt>LAD$F6E94$u$It$H!L9; DL$g( M\$ LAC/ES D)D9/I LAC+AS )D9u$L]L9DLfL]I L9L}MLACZEk D)D9UMk LAE!E] D)D9!MU LAB"AR )D9"ME@LA@-"EH D)D9uL9HULeM]`L9?LDEIM LxLEEL9LM IHI0HuMH8AIHp)fAL]DEM!fEMLEM)I DIMHEIAItkIt>LAD$3E94$u$It$L!L9DLdML$ LAA.AQ )D9.I LAA2)EY D)D9u$LML9+DLxdLMI L9L}EMLeMLAFEn D)D9Mn LAEHEu D)D9DMM LAAaAQ )D9^M]@LAC{ES D)D9uL9NHULc:Mu`L9?LefL DEIM LxL]E L9LMؿ HHI0LUMH8A ILp)fALMDEM!fEMMEL)H DHMHuHHtkHt>LAD$W1E94$u$It$L!L9DLbMD$ LA@Z,AP )D9V,I LA@&EP D)D9u$LEL9|DL)bLEeI L9L}EMLeMLAFEn D)D9Mn LAEEu D)D9ME LA@AP )D9MU@LABEJ D)D9uL9HULSaMu`L9?Lef.LiDEIM LxLME L9LM˿ HHI0LUMH8A MH)fALpDEI!fEHMMEL)H DHMHuHHtlHt>LAD$'/E94$u$It$H!L9 DLE`MD$ LA@J)EX D)D9E)I LA@2$Ax )D9u$LEL9DL_LEI L9LeMLA@+AH )D9'Mh LAEEE D)D9M] LACAS )D9MU@LABAJ )D9uL9HUL_ME`L9AHuH}NHh[A\A]A^A_]fDE9!$HuI#qLML9tHUL^LMfDA A HIL xEIMLLuIH0E I8LUE)fA EEM!fLEuL)H DEHH}HHt}Ht>AEh-E] DLD)D9uL9DL]I AE*E9}u$HuI#uL9wDL]dI AE!)Au D)LD9uL9:DL[]'I L9H]LAEEu DLD)D9uH9HUH ]Mu MAFE^ DLD)D9uH9HUH\Mn AESAU DL)D9OMn@AE>EM DLD)D9uH9BHUHf\.Mn`L9mL}L-%hIIEIEL}H=o,a_E9a HuI#vL9eHUL[QMV LABnE9f yHuI#rL9$HUL[M^@LACTE9f@xHuI#sNE90HuI#pLEL9tHULZ[LEfDLeA HHH xIIHuIII0L]I8EE)fAA E EEL!fELpLDL)DH HUHHHHtCAD$*ET$ LD)D9uL9 DLnZ M|$ AGv'E97u$HuI#wL9 DL5Z I AG&E97u$HuI#wL9x DLYe I L9 AGE_ LD)D9uL9/ HULY Mg MAD$`E94$u&HuI#t$L9HULtYM|$ AGMEG LD)D9uL9HUL2YM|$@AGZ$Aw )LD9uL9mHULXYM|$`L9HdHHCE9p HHuI#uL9]HULXIM] LAC#E9u .HuI#sL9HULXXMU@LAB E9u@-HuI#rE93HuI#sL]L9tHULWL]fDL} HHH xIIHuIII0LUI8ED)fAAEDEL!fELpLDL)DH HUHHHHtCAD$'ED$ LD)D9uL9DLWM|$ AG$E97u$HuI#wL9DLVI AG#E97u$HuI#wL9DLVvI L9 AG.EW LD)D9uL9@HULTV,Mg MAD$E94$u&HuI#t$L9HULVM|$ AGEO LD)D9uL9HULUM|$@AG;!Aw )LD9uL9~HULUjM|$`L9HUaE1HHCKfDE9s HuI#uL9UHUL1UAMU LABE9u HuI#rL9HULTME@LA@E9u@HuI#pE93HuI#sL]L9tHULTL]fDL} IHH xIIHuHII0HUI8ED)fAAEDEH!fELpLDM)EI LUIIAIItBAD$$A|$ L)D9uL9bDLSOM|$ AG!E97u$HuI#wL9)DLnSI AGE97u$HuI#wL9DL6SI L9 AGFAW L)D9uL9HULRMg MAD$ E94$u&HuI#t$L9jHULRVM|$ AGEO LD)D9uL9(HULlRM|$@AGtAw )LD9uL9HUL+RM|$`L9H]E1HHCE9s "HuI#uL9UHULQAIU HBE9u  HuH#rL9HULQI}@HGE9u@ HuH#wfD91!HuH#qHML9tHUL*QHMfDL}A IHH xIIHuIII0LMI8EE)fAAEEEL!fELpLDM)DI HUIIAIItCAD$ ET$ LD)D9uL9xDL=PeM|$ AGeE97u$HuI#wL9?DLP,I AG-E97u$HuI#wL9DLOI L9 AG<EO LD)D9uL9HULOMg MAD$WE94$u&HuI#t$L9HULCOkM|$ AGEA L)D9uL9>HULO*M|$@AGAw )LD9uL9HULNM|$`L9HZE1HHCDD9q HuI#uL9UHULaNAMM LAAZE9u eHuI#qL9HUL NI}@HG@E9u@eHuH#w;E9> HuI#vL9tHULMfDL}Le HHH xIIHuIII0LEI8ED)fAA E DEL!fELpLDL)DH HUHHHHtCAD$ET$ LD)D9uL9DLL M|$ AGKE97u$HuI#wL9DLLI AG3E97u$HuI#wL9DLrLI L9 AGb EG LD)D9uL9dHUL(LPMg MAD$E94$u&HuI#t$L9%HULKM|$ AGEO LD)D9uL9HULKM|$@AGAw )LD9uL9HULfKM|$`L9H)WE1HHCufE9~ sHuI#uL9UHUL KAME LA@NE9} YHuI#pL9HULJMU@LAB4E9}@YHuI#r/E9>]HuI#vL9tHULnJHuI#v{f.E9~@HuI#uH9E97|HuI#wL9WE97GHuI#wL9"E97HuI#wL9E97HuI#wL9aE97HuI#wL9E97+HuI#wL9aE97HuI#wL9E97HuI#wL9ET$ LD)D9FM|$ AGcE9t$ HuI#w_fDA|$ L)D9M|$ AGE9t$ HuI#wE\$ LD)D9M|$ AGE9t$ ,HuI#wfDA|$ L)D9AM|$ AG^E9t$ HuI#w[E\$ LD)D9M|$ AGE9t$ HuI#wfDED$ LD)D9M|$ AGE9t$ /HuI#wfDA|$ L)D9=M|$ AGZE9t$ HuI#wWA|$ L)D9M|$ AGE9t$ HuI#wE99HuI#qf.E90HuI#pf.E93HuI#sRf.E90jHuI#p9f.E91HuI#qf.E93HuI#sjf.E93HuI#s\f.D91HuH#qf.D91HuH#qYf.L9wfA ALmLuIE A]M#eHL`I9dELmLuIEA]M#eHLFfDL92fA ALmLuIE A]M#eHLI9{ELmLuIEA]M#eHLfDI9fA ALmLuIE A]M#eHLL9E_E1LeIEoDIANIL!IE:E$A;ODIwHA^HL!D 0E$A;_M_HEVHM!B<A$E;WIOMAFIL!A4C$A;GMOHAVHM!F E$A;WIIAvIL!A :A$A;w|IGIA^IL!E E$A;_TM_HAHM!B<A$E;w'I9ELmLuIEA]M#eHL&fDL9fA ALmLuIEA]M#eHL D91dHuH#qHML9DLw7HMH 3fE93HuI#sL]L9DL77L]I fE93$HuI#sL]L9DL6L]I fE90HuI#pLEL9~DL6LEgI fD91HuH#qHML9nDLw6HMWH fE99'HuI#qLML9DL76LMI fE90HuI#pLEL9JDL5LE3I fE91#HuI#qLML9jDL5LMSI fE93HuI#sL]L9DLw5L]I fE9t$@$HuI#wE9t$@HuI#wqE9t$@\HuI#w2E9t$@HuI#wmE9t$@HuI#wE9t$@HuI#wE9t$@HuI#wmE9t$@HuI#wE9}HuI#ufHEHMSDHx?:LuHELLH8HE$Aw )LD9Aw )LD9Aw )LD9Aw )LD9>UAw )LD9'Aw )LD9Aw )LD9.Aw )LD9VmEE DLD)D9=T@Eg LD)D9~fEg LD)D9fEg LD)D9fEg LD)D9fEg LD)D9fEg LD)D9=TfEg LD)D9wfEg LD)D9e|fAU )D9WnfDE\$ D)D9@EL$ D)D9cz@ED$ D)D9q@E\$ D)D9@ED$ D)D9@AL$ )D9"9DE\$ D)D9@AL$ )D9SjDIuH]IHL!H]HmIfE9MHuI#ufE94$It$L!bfE94$/It$L!fE94$yIt$L!PfE94$It$L!bfE94$It$L!WfE94$'It$H!fE94$It$L!vfE94$QIt$L!(I2HϴHHmf.UHSHHHϴHHAHH߾8[]~5f.@UHATISHHtHtxH)HHwIt G 9F >HHHHP@H0L=0BDLADHMEHH0LDLbLAAD!%uZA4$H!%uADIT$AAD!%u%EL$IT$ AAD!% AAADLbLEIM)I|$[H0HxEHL@I7HH)H0LOLH)DNLL\DHL8H @H5GDB D{HHH LLL%\DH0HHHLS@L0LCLHDžDLHDžL Dž(Dž8qLHHMNHH@M<0L9HI9MtHI" LHHLHLB?H@IL9thLH0IL9tLHHHH9t0HHHH9tLHIL9  @L[LPH@IC MCwLL%IQH5HDHHDžL Dž( HPIOHHXH9MNL`L9HHL~HLHHHHHPL`HDžXIHPL9tLIuMMI}HM<0L9I]I93MtHIqLHI}M}L@B?HIL9tmH8HHH9tQHIL9t<L(HpIL9t H[A\A]A^A_]fDAH F1LHpHpLxLHp L=XDH @HpL@H5kXDHLHDžxLLDžHIL$HHH9<L@LIL9!HHL~HLHHHHHLHDžIHL9jjHH~HLHHHIHP{D1L6I}D1AMDVAMAA9EAt}AthAtSAt>At)AtAAK K EAK<K<DAMMEAK K EAK<K<DAMMEAK K A9snEAQEAK<MK K<EQMAQ K<MK EA(K<EQ0K MAQ8K<A@MK K<MA9rfDK4M@ZfD1LHjf.1LHf.HtHH8HHH05HtHlHXHHHPM1LHf.DDI}HH~HLHHHI|$H0@fEH@1ɺ:LPH5:DD)`D)@D)PHHLHHIFHH@M$0H9^LM91L 5fDqfD1LH|fHtH:HHHHHtHHHHH1fDAL$ IT$!%9ET$IT$AAD!%A|$IT$!%E\$IT$AAD!%^f HI@H8H@`HXH.@DDHD1@7HfD1@7H.fDHH~HLHHHI|$H@HH~HLHHHI|$H@HH)H6HLLf7LAM9LM9fDo1SDI_mfDo0SDfDo%7SDAC0sterfAs4AC6)EE[Ec HLB H SfDADHA7H $7D1 HHHHA H=", IIILIIIIHIrITIh@UHAWAVAUATSHHGLhMHH1IH H`HLp({PHL[@ƅAH0LPaLBƅ`MV@@ƅHDž8HDžXHDžxM{LhIAGL;HXL0LPLpPAW@AHH`ZE AAƃI<$Ml$LxIt$HpI0L9 ID$H9vMtHI LH I<$I\$MvHpL9tLhHPIL9tsLXH0IL9tWL`HIL9t;Hĸ[A\A]A^A_]fH`H5'DH0L8 LpH LH5NDLL:HpM_HPHxL9HhLHH9HHL`~HLHHPHXH{HpLHDžxIHpL9t 6{LpDXDPIH`DIL0H8HLDH=PBHpAM@H aMDDLPLHy;QLXLL $&DHH5@DHHLHH@HDžxLLDHDžDžDžDžLDžd HMEHpHL9R M~LL9 HPLD~PLPHpDPDxH HLHDžIHL9/H{PL HDž(IEHHHH ƅ0HHDžƅD DxDCPDIL0LH8LPHXIDAL(H HLHD LL=#DHH 9QH=IDLL BHHJDL8LJDLL0H0HJDH@H5:DHPH @H`LHHDžLHDžXDžhLpDžxDžDžLMBHDžDž H0MWHpH8L9JINL@H9 HPLD~PLPHpDPDxH H0L@HDž8IH0L9tHHHHH9t{H IL9[bQD1LI<$DHsPHDžHHHHƅ LpLHDžxL8IL@ILpƅLHDžƅA@{Pu AQ SLxHHpLL0HDžPL8IЋPLPLLLXLHLHHLL-GDLL5QH FDLLGB HU DLHLLL EGDH0HGDL8L8GDH@LHpH@LPDžXL`DžhDžxLELFH5>DHU;ELMEEHEELUEdHMoHpHL9INLH9~HPL~PLPHpPxHnHLHDžIHL9tBL@HIL9t&H8HpHH9t HHHHH9f.fDLLP LHH5EDLHPIEHPHXH9 LhL`IL9HHL`D~HLHHPDHDXHHPL`HDžXIHPL9A A AAiHpLHDžxH8HL@IHpƅLHDžƅAAAAAAdE;H`H5Dfۅ L1LpH5CDL)))p7HPHM_HHL99HhHHH@H99H8L`~8HP@XH)HLHDžIHL9t H(E11LH 9aDDI<$+HtHH8HpHxH0AApA A; EO sHL4HH L $0QLHDžHL@H@ H51DL0Dž8xHMGHHL9]LHL IL9H@H~@L@H@HHH HDžIHL9|KrfDAAAe AXHXHhA11H .DHPD~PLPHpDPDxIH0fHtHWHHpHxHHtH4LHHpHxHHP~PLPHpPxIHDHPD~PLPHpDPDxI}HPfHtH- HxHPHXHpCHtH LHXHPHXHP%HXHhA)1H +DH(A<1LH ,DHH~HLHHPHXIHpHHD~HLHHPDHDXI}HPgHtHO UHHHHHXHhA)1H s+D@@7H8HpNH@~@L@H@IHOHXHhA'1H +DoH(A<1LH *DQHXHhA)1H ?*D*HHHA<1H M*D3HXHhA91H *DL`H5P,LtH5P,L@ HXHhA)1H +DL`H54P,L^tH58P,LK HXHhA11H &*D1QHXHhA)1H )D `DkDHPH0L H8DIHLM{`D0L-;DH@H=DALLH:DL L=yBL=)QHHH@PH51DH`LhMCHLHDž(DpLDžHDžLDžDžDžHpHM]HHL9#L8HIH0L9:H(L~(Hp0xH*HLHDžIHL9tbSL@L`LIz MBH@HDžHH@LH5L1DP;DžhHHMoHIL9H@LHL0H9H(L~(H0HHLHDžIAHL9tU@7HHp@7HHpH`H5DfEL1LH5R8DLD)D)D)4HIOHPHH9LhLIL@L9 H8L`~8HP@XHHLHIHDžHL9tH(E11LH 2aHXHhA'1H %DcHXHhA91H %DkH8D~8HPD@DXM_LH8D~8HPD@DXIWHHH @7HpH<@7HPH,HPHp@7HPHDDHPHHHHqHff.HGHxUHAWAVAUATISHHXL/AU@L3H߉A`HSHAHHJq1DCPLLAIHAISL@IHDžaL@HLWƅHLHDžƅLHHDžƅZDIXAZM`MXHzMu8MMIMtE;q ~MIMuL9tDE;W HMPLHP8@8LIDHP(H@0HDX HHP HHIHu H9 HLFIxMo0DCHH skBHMO(HxPH53.DDLL@L5QLHL=f CLDL@H(HH@HH5*DHDžDLLLDžDžLDžDžH@MEHHHL9kHLPHH9HL~LHHH@LPHDžHIH@L9tdƃI<$Mt$LIt$HI0L9MT$L9MtHILHI<$I\$LHIL9tHHHH9tHHHH9tHX[A\A]A^A_]fDAH +DL+DIEA113ffDMufDMMIMtE;q ~MIMuL9A; DkMO(L H5hBM0HL)DIF`HHD0L- CDLLmL HXLL`L *DLhL=oQHpHxH @HuH5%DLEMFH HDž(D@LPL}EEEELMEH IEHH(H9wLL0IL9HH~LHHH H0HDž(IH L9t`H`{H@LF HDžhL`LFH5%DpLLDžzLL(HHIH M<0L9LM9MtHI'LHHLIB?H L9 D1LI<$PDHMPLHH8LIHH(HP HP H@0@8H~HHIHu H9IHL߼IxAH 'DH'DHEA11[fDHtH\HHHHH@ADI(H9t"LMf1r A9w @fDA.DH~LHI}H@&DI(H9tLMf.DDI<$kHtHLH(HHH AH }&DHm&D{fH~LHI}H RDH1股H$fDDPDHHH4f1DB E9G @H0H(HIIUHSHH_Ht.HH?H5CHFR޼tH[]HH[]HHЃH|ĉff.UHAVIH5(&DAUHELmATHH L@ISHwQHPWHMLH@H]ЉUHEELEI>MNIvHMI0L9MVL9MuoI^12I|$IT$ H)HH9Hu@1LNI>_fDA@1@7I>@HH=PB1VIDff.UHAWAVAUATISHHHP@L+HAAAWHKHy(tADsP@AASA ƃ/f.{Lm@@MUMM }*LoQLMLH@LEH5*DLLHMLPHEELXD[PHXHPA A AgLIt$M|$M$HM,0M9 MT$M9MtI<3I0 LH߼M$Ml$IC+HƃL9tE12fDHCHS H)HL9J#D-HED}EYLxIt$ML$M$HpM40M9}MT$M9\MtI<3ILHt޼M$Mt$IC3HpL9DAAAHuDKLpH@LV LFLL QH5'DLUHEDML]Ec߼LxIt$IT$M$HpM<0I9wI|$I9 MtI<2ILH~ݼM$M|$IC:ƃHpL9Mu H ; Q}IULuH5'DLHL`IHMLHPH@HX*HEEz޼A{PLXHPHH*A;E  LhIt$M|$I<$H`M,0L9ZIT$I9MtH<7I LHWܼI<$Ml$IB/H`ƃL9AiDkHuH@L5 QLN LFLuDmLpH5k DLLMHEEXݼLxIt$MT$I$HpM<0L9= M\$M9c MtH<0IU LHsۼI$M|$IB8HpL9Aƃ1LM$A}ADkHEL QHH LEH5+$DDmLpL@HMLMt$H@HEEBܼLxM$It$HpM<0M9E ML$M91LFM$ADKLUMt$IB H ? QHEHMLpMBH@HEDME% H54DLۼLxI<$It$HpM<0L9= IT$I9 MtH<7I LHټI<$M|$IB?HpL9ڼn H@DCLH@Hr HDžHH@H5D%DDPLBH`DžhڼLEHhI~H`HMM<0H9 LpM9 Mt H<0I LHؼH`LhIB8H}L9ټAACLHHuILpH5&DH@?LHEEL}EټLxHI~LHpM<0I9c LM9 Mt I<2I LH׼LLIC:HpL9ؼ1@7M$.HDCH@PHw HDžHH5"DDLGLHDžؼLEHhMNH`HMM<0L9 LpM91L跔H`!1L衔I<$u1L莔M$DkLELQH@Ip aM@L]DmLpHuLH5bDHEE׼LxIt$IT$I$HpM<0H9I|$I91LI$DCLLHHIK H5"DHDžHH@D MCH0?Dž8B׼LEHI~HHMM<0H94LM9~Mt H<0ILH]ռHLIB8H}L9:A]DCLL@HHH@IS HDžHH@?DPMCH`H5!DDžhMּLEHI~LHMI0HXI9"LL9XMt I<2ILH]ԼLLXM]LCH}L9tAռA-L;HAHSHHHpH@HF LFHDžxUH5D!DH}LHpEEռLEHMNHHMM<0L9LM91LDHL}D[H=OQH@IW LpH}HUMGLH5DHED]EԼLxIt$ML$I$HpM40L9MT$M9MtH<0I3LHҼI$Mt$IB0HpL9XӼNDDI<$-DDM$KHpH5DPLO LGLHDžxMH@LpHEEӼLEHhMVH`HMM<0L9LpM9 1L诏DkHuMȺH@H5DHEDmLpLHEE#ӼLxHhMVH`HpM<0L9LpM9Mt H<2IVLH8ѼH`LhIB:HpL9t`1LҎ1LÎzH5DLjҼLxI<$It$HpM<0L9M\$M91LnI<$LH=?B1׼DCLLH@Iq PHDžHH5DDMAHDžѼLEHhMVH`HMM<0L9LpM91L踍1L詍LwKLLM_ MGHDžH5DH@LHDžѼLEHhIVH`HMM<0H9HpI9^1LG1L1LI$TKLPLMW MGHDž H5DH@LH0Dž8CмLEHhM^H`HMM<0L9yHpI91LBAAA1L I$A- H`E1@7M$vDDI<$51L見L1L萋H`AJA I$1@7H L A]1LbAA7AmA L!ADDH`AHHϾH оHоH4оHоHϾHϾHϾHϾHϾHоHϾHϾHϾHϾHϾHgϾHϾHϾHϾHvϾfDUHAWAVAUATISHHHP@AŃv (L@H`L;HDžHHHL0IHH(HHH HHHHHH1L@ƅPH`HDžhƅpHHDžƅHDžƅHHDžƅAHIIAH8HHHDžƅHM`LXLLM@HH˼Dx Lx8HHP Lx(IPH@0@8HLH Hu H9HLLlüIxHH8Hp({AoAAE12DH{HS H)HL9JȼH {LH@LB H5DHDž(L LB?0LL@DžH^ȼHIEHHH9L LILL9HL~HHHLHDžIHL91 BDSPA A)HHH0A1H DƙHD[L@H@HV L=PLHDžHLF?H5DDLDž ǼH@MFH`HHL9mL(HPIHL9<HLpD~H`DDhH,H@LPHDžHIH@L9tż{?LL0L`MZ H@HDž MBLH5/DLDž8ƼH`MwHHhL9H LpHLH9HLD~HDDHH`LpHDžhIH`L9SHH=PHDžHN LH LFHLH@*H5 DDž(ļLIt$ML$M$HM<0M9T MT$M9MtI<3I> LHüM$M|$IC;HƃL9ü{L`HHDžHHL@LHpDžxLhLHLL0L--FHHLmLH(LH5YDLL "PL L1DL8L=9DL@L5?DHPH@LXL@H`HhLHuH5EDLHLpLUEEEL}ELuEüLIt$M\$I$HM<0L9oIT$I9MtH<0I LH.I$M|$IB8HƃL93¼)SP HHH0A1H !B褔{LL?II L5PHDžHMAH@H5,DLLDžHMUH`HL9L(LILL9HLp~H`hHHLHDžIHL9tHsLLHz LBH@HLH5^DHDžDžHMNHHL9{L HIHL9IHL~HH9HLHDžIHL91Lm|I$jIx(I9t!HL舿HLLHkLL1L|M$9HHH0A1H tBHDkLH@Hz L=PHDžHLBLH5 D?DL Dž(>HINH`HH9L(LIL9v HHpD~LH`DDhHf HHHDžIHL9tH0DSLPL Ln LF?LH5 DH@L0HDž8D@DžX0H MwHH(L9 H L0HH9* HLD~LHDDH H L0HDž(IH L9 HHH0A1H 6^蟏L`DSL@H@Is MC?LH`L={PH5 DHDžhDpLDž漼H@MEH`HHL9L(HPIL9 HLp~HH`hH H@LPHDžHIH@L9t轻{LLL`IJ MB?HDžHH5 DH@LDžݻH`M_HHhL9 L LpIL9p HHD~LHDDH` H`HpHDžhIH`L9t豺L3HAIIHL`LXMMuDMMIMbA;Q ~MIHHH0A1H PSLPLHDžXII MALDžxHPL=PH@H5 D`@LpKHMVH`HL9 L(LILL9 HHpD~H`DDhH HHHDžIHL9tH{LLHV LFH@HDžHH5DLDž?HMOHHL9L HIHL9q HLD~HDDHa HLHDžIHL9tHLH5LCLL I@ HH @HM@'LH5DHHDžLDžH MOHH(L9LH0IHL9 HL~HH H L0HDž(IH L9ADDM$HtHX 譵HH`HhHcHtH tHHH`HhH@1r A9p @  I$HHH0A1H V/^L@D{LH@I@ L5P?LM@H5DH@HDžHDPL`Džh4HMMH`HL9OL(HIHL9e HLp~H`hHU HLHDžIHL9t SHpLLL LGH@L\H5 DLpHDžxDž+HMFHHL9UL HIHL9HL~HHHLHDžIHL9M9t E;h HL>LP8Dh HP HLP(IPH@0@8LH!LHHIHu I9, LLL被IxLLIuHMx(Mp0MMt Md IIOAIELHLCVB0HLW LLLH5DLGHLH @LHDžLDžHIGHHH9LLILL9HLD~HDDHHLHDžIHL9tԱHIL9HtH`藰H(HHH [HtH^HhHHH`uHD~LHDDIH HD~LH`DDhI~HHtH詯HHHH^HtHpHH`HhHHtHU7H(HHH HtHHH`HhHHtHTŮHHHHXHD~LHDDIH`HtHNHhHHH`AH~HH`hI}H@HtH1ڭHHH`HhH@IEMLLH蚭HMI~쮼HLHtHXHHHHLHtHHH`HhHHD~HDDIHH~H`hI~H>HD~H`DDhI~H&H~HIH !HtHHHHHH~HI}HoHtH裫HHHHHD~HDDIH`_HtH3HH`HhH7LH=<B1 HD~H`DDhI~H@H~HI~H}HD~HDDIHtI{(H9tLVLLGMH~H`hI}H$H~H`hI}HH~HI~Hp@7HhH&PHHH`DDHH`0H(H@7HH`HH0H(Hp@7HhHnPHHH`HH`QHH@7HH1B A9C @@7HH`DDHH[DD/HH`pDDHHH=+8H=+ HoHH.H;H@UHAWAVAUIATSHHH0P@(vA1H@H`MeHDžHHHHLHHHHH@ƅPH`HDžhƅpHHDžƅA$HLA0A0LLO0HM_IVLHDžfDLLHDžfDLHHDžf  IE1LHHIAH HHHDžƅHH`LXMHHL8D` L`8H8HP L`(HPIH@0@8HLI9t HLLzH Iw(HxVAI}01L@D8ME0I@ IHHH)HH9+N 1H@AyPkMT$L9t輥I}0L_HW L)HH9K43HLQLKI}0HG LWHL)HH9O2L@A{P.Mt$M9L8I}0H 9CM]0IsIS H)HH9H4L4LHRLH@ fDIHHtD;O ~HHuM9E;g H Iw(BUkDL@Mt$M93I}06f.It$H9t QME0I@ IPH)HH9J42DFD8M|$M9tLI}0HG HwH)HH9^J6DzD((( A18I}IU H)HH9|HHHHA1H CrLAuHL%PHHP@HL J4CL LL@L HH>^{H5ZCHLHH @HDžL(L0Dž8L@DžHHPDžX腟H MWH`H(L9LL0IL(L90HHpD~H`D(DhH H H0HDž(IH L9tYHAUD8H@HO0L0LGHHL%CH@H5CrHDžD Dž8L@DžHRH@LKHHHL9{LLPIL8L9"H(LD~(HD8DHH@LPHDžHHH@H9 ifAUPW HHHHA1H ɱBoHEMgLLH |^LHLMW@HL%yPLHMGH%1CHH5PCH @LHDžDLLLDžHDžDž莜HLKH`HL9LLIL8L9,H(Lp~(H`8hHHLHDžHHH9teH@AULH@LG H5CHDžHL@LGLPL`Džh脛HMfHHL9bHHHH8H9H(H~(H8HHHHDžIHL9LHAH K1mHHA1H =BlLA1H KlE]PA AHHHA1H B~lHEEHLHHV@HL5bPLHH.CL%CD]LFH5CHH @HLHDžHLLDžH Dž(L0Dž8]HMWH`HL9LLIL8L9H(Hp~(H`8hHHHHDžIHL9t4HAULLHO LGLHDžHH5CH@iDžSHMNHHL9LHIH8L9QH(L~(H8HAHLHDžIHL9mL01LSM$I(I9tH8H8LH8ᖼL83L01LSMwHHHA1H BjiHHLL%+CHEMMW@H LHL59PL%CHfH @H5CHHLMGLHDžDLLDžDžLDžIH HCH`H(H9LH0IH8L9 H(LpD~(H`D8DhH H L0HDž(HH H9tHE]LL@HV LFLH@HH5C2HDžDDž;H@MFHHHL97 HLPHL8H9N H(HD~(HD8DH> H@HPHDžHIH@L9W MAHHHA1H  ^fHHLH`HLMZ@L5PE}H0L%9(CH5^H8gH @H5CH@HLHMBLHDžD LPDžXL`DžhHpDžx舓H`HKH`HhH97LLpIL8L9Z H(Lp~(H`8hHJ H`LpHDžhHH`H9t_HAuL0LHz LBH@[HL H5CHDžDž8~HMFHHL9HLHL8H9 H(H~(H8H HHHDžIHL9FAHHHA1H WX.cAuHpLH@HP L5PLHDžxHpL@nH5CLDžHHHHH@H(D~(HD8DI~H@HtH^ΉHH`HhH1HtH蕉HH`HhHNHtH\HHHHHtH=#HHHHHtHꈼHHHH]H(D~(H`D8DhH{H ^H(~(H`8hH{HH(~(H`8hH{H`H(D~(H`D8DhI|$HHtHڇHHHHH(~(H8I~HHD~H`D(DhIH HtH6H(H`HhH H(~(H8I~HuH(D~(HD8DI~HHH=A1襍HH=A1蔍HHH=A1耍HHH=A1lH(D~(HD8DH{H@HtHHHHHH@HtH؅HhH`HhH`H(~(H`8hI|$H`H(~(H8I~HPHHHH(~(H8I~HHtH愼HH`HhHzH(~(H`8hIHFHtH&yHHHHHH\DpDHhH`D0DH(H`FHH=*A1@7HHp@7HhH`DDHH` DPDHHHr@7HH`DDHH0@7H(H`DDHH3@7HH` DDHHvIfIuI銇I鱇I锇II鵇f.fU1HATIS1f0fIL$IT$ H)HH9s"HCHuHMHUHDžhLxHEELMELUEMH5$BLH @H\@H; tH;L9t~H{ I9t~H~Hĸ L[A\A]A^A_]L#H{ HL -Hs(HK@L@@L=GHSHL[LL%PHH=(>BLHH H(LPL`HDžLL0Dž8L@DžHDžXMH5=BLH @HB~H{HPHs L-HK(LHB0LbHhL XGH=U=BHpHxLHPHDžXL`DžLDž%MH5|H{(H`L H-LSL[ LF0LfH [GHH=1;BL`HHHDžhLpLxLDžDž!MH5:BLH@H{5H{(HL L,-LSL[ Hp0L`HGH8H=z:BHL@HPHDžL L(L0DžHDžXuMH5":BLH@HzHK HL H5-LSL[(HG0LgLGH=9BHHLHHDžLLLDžDžMH5l9BLH@H:zLpHK HS(H5mGI{0L LSMcHpH-H= 9BHHHHDžxLLHDžDžMH58BLH@Hy1HK HS(L H='-L LSMC0McHPHGH=V8BL H@HHHDž(L0L8DžXH`DžhqMH57BLH@HxHHsHK(H=GL LS LZ0LbLe-HH=8BHHLLHDžLLDžDžMH57BLH@H6xHsHK(HLiGL LS HP0L`L-H=6BHHHLHDžLLLDžDžMH56BLH@Hw-H;Hs HH$-LKLS(HH0L`HLGH=*6BHHHHDžLLDžLDžmMH55BLH@HvH;Hs H0H x-LKLS(L@0L`HGH@H=o5BL0HPH`HpHDž8LHLXDžhDžxMH55BLH@H2vH{Hs(LL-LLK IB0MbH OGHH=4BHLH HHDžLLDžDž(MH5a4BLH@Hu)H{HHS(LGLLK LV0LfHH-H=3BHLLHDžLLHDžDžiMH53BLH@Ht}H{H@HK Ls-LLK(Hr0LbHXHGH=A3BH@H`HDžHLPLhLpDžxHDžMH52BLH@H.tH{HHK H5-LLK(LB0LbHLDGH=2BLHH HDžLLDž(L0Dž8MH5-2BLH@Hs%H{HK HL-LLK(HP0L`H5GHH=1BHHLHHDžLLDžDžeMH5l1BLH@HryH{ HK(LPHo-LL[IA0MaLGHpH=1BHxHLHPHDžXL`LhDžDžMH50BLH@H*rH{(HsLH]GLL[ II0MaH(H-H=R0BHHH@HDžLL H0Dž8DžH MH5/BLH@H~q!LLLSH=-Is McHH=/BHLHDžLDžMH5m/BLH @HqHKHL L-HP LH=2AHL`HHDžLDžMH5ALH @Hp%HpLL[L -Hw LgHDžxH=.BHpLLLDžMH5g.BLH @HpH HSH@L-L@ L`HDžHH=.BL@HPHXL`DžhMH5-BLH @Ho)H{LLH -Iq MaH0H(H=-BHHDžL Dž8MH5X-BLH @HoLHSHL-LP L`HDžH=,BLHLLDžMH5,BLH @Hn-H;LLKH $-Ip M`HHH=,BHHDžLDžMH5P,BLH @H nHSHLH=-LX L`HH=+BHLHDžLDžMH5+BLH @Hm1LCLPL H (-Ir HpH=|+BHPMbLhHDžXL`DžxMH5?+BLH @HmH HSLL -Hx L`HDž(H H=*BH8L0L@DžH!MH5*BLH @Hl5LLLSH ,-Is HH=h*BHMcLHDžLDžMH5+*BLH @HlH;HSHL-LH L`LHH=)BHLHDžDž%MH5)BLH @Hk9HLL[H 0-Hw LgHH=P)BHHDžLLDžMH5)BLH @HkHSH`L L-L@ L`HDžhH=(BL`HxLpLDž)MH5(BLH @Hj=H{L0LH 4-Iq MaHPHHH=7(BH0HDž8L@DžXMH5(BLH @HjH5ԁ`LxIEnrnfnInUHAWAVAUIATISHXHPI$LHEH UIS At$PUVHE@ǃ@VI$LLAEAAt$PE9EOƃ@E@ E12MD$IT$ L)HL9 KLXI$(LXHAL$HC1Hƅ}kHڋ2HJHʍ!%u9H!%ILBDIDЉHM+MH)I9HL1a"5MT$IT$ L)HH9hIHHHxHIL9o@)!jAGH˫CHDpHLP1REXZjAWH1DpHLRHCE_AXEf.jEG1HHLAPDpHCDY^IFIeGIFIFIGIdFIFI FIKGIaGIwGIFIGIFIFIFIGf.UHAWAVL`AUATISHHHH1HIHSLLIH PM,$LAU@fH=CH )P)) eH1IH5CHH;HH9HfLHHH=ZCHHH@MX@HLLL-AHxBH=CHHHLMhHHLHDžHLLDžDžDž@MH5CHH @H,HHH:HH9(fLHHH=BHHH@MX@L-!CLLHAHPH= CHHHL0MhH@HLHDžHL L(Dž8DžHDžX MH5CHH @H+HHH8HH9H5Iv6H6H6II6H5H5H5H5H\5H6I6H97HM7H~6H6H6H6H5H4H6H4I*7UHAWI1AVAUIATSHHHHIHHH HPH5`BL. Me1LA$8IIE1L0HIPEHHPHwHPHH0HmMEH0LHHAHPH5A`Hp'MeLA$ HpH5=EHhDAgAhCH H5WPHDž(HQ0LqH8L_H=CH HHPL`0Dž@DžXDžh\HMH@H5FCHH@(L#1HA$IHsH1HHIP袃HLOHxLH0HPHʥL#HA$IHHHIP:HLWH LH0HPHbLDAgAIELAmEEDHH DCDAHQCH藦HDH CH-CHXIpHLH5CHH0I=H`HCLH`LHH`L#HPHŬCLHVHLDCDHLLHHHHLLHHLLpLxLLG@CHHCCHHAD@L,ALL-)CHH CHH=CL0LPLFHDžD L8DžXL`DžhHpDžxLHUHPHXH(HMH@HH}HLmEEEELMEH;%HHPHH9t$HMVL9t$L`H`IL9tn$L0HIL9tR$HXHHH9t6$LHIL9t$HHLA@"HpHHHLiHLPHpH`ILPLXHH@@L+XIHH5CLLHIKHH8L9_HHPHHpLHLHMB0HLH@@CHHLMBHH@HDžDLDžDž#HH0HpH;tv"LHIL9tZ"HPL9tI"HIVH9t4"HHLA@<H hCLAHC腡A:11LH CLPLHPI9o@)`@LPƅ`HDžXIt$HPd\ gC h 1m LLCHIR LMrH=4CHLHDžHDžMH5CLH @Hf!HHLPHIL9t HPIL9t LLLxH[0{H=ChLxLH5CH HHLHIL9t/ L@HIL9t HhHpHH9tLpHPIL9tLHH0IL9tHPHHH9tLHIL9tH[A\A]A^A_]DL0L8H=CLLLL* MLH5CHHpLI -HL9oH)HI+H: H5BCL,A DHH CHľCDHXH CHCDHH CDHCH͝LpH CDHcCLL覝HDH ťCHHHpLH ZCLHB0LrLHL CH=1CLLHHpHDžxLLDžLDžtMH5ҙCLH@HLLIV%HL9tEHPHXfHHLH5%CHLP0LL QCHH=}CLpLLHHLHDžLLDžDž脖MH5CLH@HLLIf$HL9 HLHH5CLMB0LH,CH H=՘CMrLL0H0H@HPHDžL(L8DžHDžX褕MH5rCLH@HLLI#H0L9,,L`HLHCLLIK0HMCH=ŗCH`LxMsLLPHHHDžhLpDžHDžŔMH5[CLH@H6LLI"HPL9MMH=+H=+H!H#H@$H#H#H:"H%H%H'%H;%H8!HL#H #H"H#Hr!H$Hr$H#H#H.!H$HV!H|"HX"H;"H"H!H!H!H!H#H#H#H#H !H!H H#fUHAWAVL`AUATMfSHH(HH11HHI~0LAPpL /_H`H=zAHIʼnpLLLHDžhDžDž|H0MH@H5AHHL;HAWH$H1H߉,8L;I1HA0HI$PmHPHPLWHLPH0HLHp1HHAHH H1HH@HHHHHH=)`L~HLaIH$H ƅLHC'H2LSIzHHXLLpHLAH3H ٦BH= BHEL=BHBLFL rLDHLPM9gHMT$LLPH0HPH肎[HPMLHXH0L`IH8D$pD(LHLpHxHHLHHPHXHHDDL (BLL=BLLAHHAHHBLLBHH i+HH=BHDžh HHH>CLH}H= CHH5AL HpH0HMHUHuDž(L0Dž8L@DžHLPDžXH`DžhDžxL]EEEE E vMH5LCHH @HHPIL9tRHpIL9t=H8H0HH0HH9tHHHH9t HHHH9t LHIL9t HHpHH9t HHPHH9t LH0IL9tf H([A\A]A^A_]@HL"fHHx HLLH5Z%`H LfLLH=CL0LPL0L8躌 MLH5sCH0 HLIHPL9[ Q1HA8L;I1HA0H I$P gHHPLGHLH0H HH5BHHHP@L#HAT$@pL L01HLA@LH mL0MZI9yLIVLH`I0IPH腉HpEm[LHH`LhHDžxLHHpH= CHLHtBLDHHeALL ΫCLLʫCDL-`H H=CHHLLDL~HHPH0DžDžLDžDž(Dž8L@DžHLPDžXMH5oCHH@H H`IvH9t HXHPH[HPHH9t H0IL9t LHIL9t LHIL9ggDHHA1H MBifHLAfHLAH=+vHXHeIZIoHHHHHHHiHLH"H6fDUHAWAVILAUATSHHH11HHIO0MGXH567PH=_H H@HH0H5AH@H HHDžDž8DžHYM&1LA$8II1L0HIPOcH@HPLCHL@H0H{MH`1LHA@MHLHALH=y`M\$LL HHIHƅLLB*IMNIyI>LnLLWM9"HIULHH0HPH膄EvHIOpHDžLH(HDLL L@H LHH`L(LsBHHH8H= aHhL`LL0L BL@L3ALHLfBHP6HhH@HpH5RCLEMGH}LHXDžxELMEELUEL]EHIL9t)HHHHIL9tHIL9tLHIL9tLH`IL9tH@HH9tHH HH9t|H[A\A]A^A_]f.H_H"fHHxHLLH5j`HHfHHLH=CLLHHÃL LH5xCH5LLIHL9@LLAH=L+I*IOIIISIgIfDUHAWAVAUATL%2PSHHHH1H@H=CHHV LvIHXH@PHDžHL`Džh蟂HH5CMH@HH(EMLH=kCMP MxHDžLDLDž,HMH@H5CHH E]HH=CHDžLh LpLLDDž蹁HMH@H5ƐCHHHKH=CHDžHV L~L0H Dž8HHMH@H5SCHHL HHHAHHPL+Hd1H߉lA8L;I1HA0H`IP`s\H0HPLGHL0H0H~LHP1HHHAHLHp1HH8A@HHP@H SASAH5`LHxL`HDLLpH GCLMq`HpLHEL=*CHH=CHH52~AL`MqLHHHHHHDžhLLHLDžDžDžLDžDž HMH @H5MCHH0LLHDžLPIL@ILƅLHDžƅEHHP`HL+LHLAUpHH< HHH5CH5HXAH }DlDSHL@L-qCHH@MXPIHHHD`L[+LHH=CHPHpHxLL0LL@HDžHHXLLDžLDžDžLDž0}LH5 CLH@HHPLI H0L9tLXH@IL9tHIL9tL5)W+L`LLLXCHHBHHLLdBLpLxI`L0L8H@IHHHPHXdhLpLxLLLL-CLLCHHBHH CH5CLL iBLLuBLL{BHDžH HHHpBL0LpH}H=CL@H`HpHULDžL Dž(Dž8DžHHPDžXDžhDžxELMELUE L]E E zMH5CLH@HLXL1HLA@H[HHDž HLHLLpHLHH H(HHL0L8LL@L@HxLHPHL`HpHӌCHhHCHxH5CHLL CLLHHHHLLLLL%CH H=CHLHHHLLyDžHDžDžDžDžDžLDžDž(L0Dž8|xMH5CHH @HH@IL9tXHHH辶HHH9t)HpIL9tL@HIL9tHPHHH9tL0HIL9tL8HpIL9tHHHPHH9tLH0IL9tlHHHH9tPHHHH9t4HHHH9tL HIL9tL(HIL9tH[A\A]A^A_]fDDSHXLH;BHHIKPILLPDLP+LHH=XCHHHLLPLHDžLL Dž(L0Dž8H@DžHLLPDžXLuLH5CLH@H2HPLIHPL9tLzCHSCAL `LH5HX1AH wDy@H8H5J+HHu{LpH=eBHpHxLLtL LH5~eBH>H@LIHL9/%HHLHH=BHQtL LH5̉BHH@LI0HL9uHH0HDHXHlHHHHH`HtHIHKff.UHAWAVAUATISHHhHXL+HAXL3;HAXL;HAXJSP&JjM mywH1HHKIIHyTLH1HHƅA@L 1HHHxA HH9@HH5EG+L+HAX.H1H8IH1H0HIPMLMULLH0HPHoHH5.AHpHHP@HHP@AWLD[D`LHIHpL5[ PHLHHO_LH *CDLCL L CH@H=CPH|oAH(L0MxLpLPHHHDžL8DžxHDžLDžDžDžLDžnpMH5CLH@HHXHPLɮHPIL9t4LHIL9tHIL9tLxHIL9tHHHH9t`YfLHAXHe[A\A]A^A_]@LHAHe[A\A]A^A_]@L;LHAE1J PEfuH@HIEHHUHtHxL:HL;veHMI9MICMI}HxkHxH%HMELxH@IELULL@LPHHHH#EH HEIAM!L*jLCDIHD{L!L IHCE{AEE9DHLE1IEHPLHJIM)IM9LL9vnM9MLICMI}IItgLHxLMHMLMHUHHxM]IEH@LXHLHPHIM*HSL1IEHHLHyII)IM9LL9v|M9MLIC}I}2IItuHxLHpLMHU,HULMHHxHpMEIEH@L@HLHHHIHLS f.ME1IEHHHHqIM)IM9LH9vnM9ELICMI}IItgLLxLEHMZ߻HuL]HLxMEH@LIEL@H0HHHIMLS ME1IEHPLHJIM)IM9LL9v`M9]LICEI}IItYLHEL]޻H}HUHXMUIEH@LPHHHPHI)MLKD11LDGAAD9=DH/LMHEIEL]HPLHzIM)IM9HHpL9vcI9uICuI}HxkLxItVLݻHIuHxH@IEHpHpH8HPHIH};LCDHL)LL9HxHSHL)LL95HpLKHL)LH9EHxLS gII)MM9DLXLS LDEeL[DEIfLH׻IDLLH׻IHfLLH׻If.׻INHL)HL94HHLCD^fDIM)II9LXH{D$fDػHp~pflAMnfLdH{DIfIM)II9LXL[gLS E1f.LS E1fLKE1fHSE1HUHuHbֻILLHLֻI+LpLxHM׻LpLxHE~}HMflA}%L]HxZ׻L]HE~eHxflAeHpHxLM׻HpHxHED~]LMfElE]HpHhLxHUֻHhHpLxHUHED~}fElE}yLLHDEջL[DEILCDE1H{DE1HpLxHE>ֻHpLxHE~MHEflAM ֻHh~hflAUnLMջLMHED~efElEeLEջLEHED~EfElEE L]ջL]HE~}flA}LxHuZջLxHuHE~EflAEYL[E1bHpLxDEHhջHpLxHE~EHhDEflAEIDHM!;LLMHHMH95HUHkBII HAWAVAUIATSHxLvH}HuM!HLELMEHxEL9LLA IHH0H}LmH8AHpMA)fEEM!fA LEM)I DIHuIAItnItCLAF1E9>u,HuI#vL9yLDLEVͻLE^MN LAA,AQ D)D9,I LAA*EY DD)D9u,LML9 LDLE̻LELMI L9LuLhEMLAAEA DD)D9Mq LAF%EN DD)D9#MV LAB@EZ DD)D9>MF@LA@[AH D)D9uL91HUL̻MN`L9GLhfL==iBEIM LxL]E L9 MLA HIH0LEMI8LEHE)fA HMEEI!fMEL)H DHMHEMHHtkHt>LAD$ /E9,$u$It$H!L9 DL˻ M\$ LAC*A{ )D9*I LAC'EC D)D9u$L]L9~ DLʻL]g I L9LpMELAC Ek D)D9 Mk LAEEM D)D9I} HGDW D)D9IM@HAQ )D9uL9 HULɻ M]`L9BH5pCEII HxL}EL9ML HIH0LUMI8AILpD)f%LEDEM!fMEL)H DHMHMMHHtlHt>LAD$ -E94$u$It$L!L9DLȻML$ LAA(EQ D)D9(I LAA%EA D)D9u$LML9DLZȻLMI L9L}MLAA,Ei D)D9'Mi LAEEM D)D9MU LABAz )D9IM@HAQ )D9uL9HULǻMM`L9B@LdBEIM LxLEEL9LL IHH0HEMH8AMH)fHpDEI!fHULEM)I EIML]IAItkIt>LAD$*E94$u$It$H!L9uDLƻbML$ LAA%Ay )D9%I LAA"AQ )D9u$LML9 DL#ƻLMI L9L}MLAAEi D)D9Mi LAE5EM D)D91I} HGNO )D9LM]@LACiES D)D9uL9=HULYŻ)MM`L9A@H=bBEHH HxHMEI9 HIA HHI0HuMH8AMIA)fAHpEEL!fELEHEL)H DHIHEHHtlHt>LAD$(E94$u$It$L!L9ZDLSĻGML$ LAAh$EY D)D9c$I LAA@!EQ D)D9u$LML9DLûLMI L9L}MLAAxEi D)D9sMi LAEEM D)D9M] LAC1AS )D9.ME@LA@KEH D)D9uL9HULû MM`L9?DLLjCEIM LxLEE I9 LLA IHH0H}MH8A MHA)fHpEEI!fHMLEM)I DIMHEIAItkIt>LAD$&E94$u$It$H!L9DL»ML$ LAAi"AQ )D9e"I LAA"Ay )D9u$LML9PDLLM9I L9L}MLAAEi D)D9Mi LAE{EM D)D9wIU HBDR D)D9IM@HADY D)D9uL9HULnMM`L9@fHhCEII HxL]EI9LLA HHH0HuMH8AMIA)fHpEEM!fLELEL)H DHMHEHHtkHt>LAD$$E94$u$It$L!L9\ DLտI ML$ LAAjAI )D9fI LAAEQ D)D9u$LML9DLiLMI L9LeMLAA{Ei D)D9vMi LAE EM D)D9 IM HA4 y )D92 ME@LA@O AP )D9uL9$HUL蠾MM`L9BHuH}>Hx[A\A]A^A_]E9; HuI#sL]L9tHULBL]fDLpA IIL xMLLmHIH0H}I8EE)fA E EEI!fLEmM)I EILUIAIItBAD$"AL$ L)D9uL9DL[Mt$ AFC E9>u$HuI#vL9]DL"JI AFAv )LD9uL9DL㼻 I L9AFA~ L)D9uL9HUL蚼Mf MAD$ED$ LD)D9uL9HULT|Mt$ AF<AV L)D97Mt$@AFtAv )LD9uL9'HUL뻻Mt$`L9LuHǵIHHCLuH=D*羻E9{ lHuI#uL9UHULyAI} HGGE9} SHuH#wL9HUL9IM@HA.E9}@QHuH#q'fE9|$ HuI#vL9tHULܺ@I9AF|LUILILUT@M$M)IIyEHEDELeH]B HHMH}HH9t IHUL#bHL|@E9!HuI#qLML9tHULLM_fDLuA IIL xMLL}HIH0HUI8EE)fAEEEI!fA LEpM)I EILUIAIt{It=AFA~ DL)D9uL9DLI AFfE9.u$HuI#vL9DL帻qI AFE9.u$HuI#vL9LDL譸9I L9H]LEAF#En DLD)D9uH9HUH[Mn MAEE] DLD)D9uH9HUHMu AFEF DLD)D9uH9vHUHڷbMu@AFEN DLD)D9uH97HUH蛷#Mu`L9uL5^õE1IIFE9a HuI#vL9UHUL9AMV LABE9f HuI#rL9HULMF@LA@E9f@HuI#pE91HuI#qLML9tHUL蚶LMifDLeA IHH xIIHuHII0HMI8EE)fAAEEEH!fELpLDM)DI H}IIAIItCAD$7ED$ LD)D9uL9hDL譵UM|$ AGE97u$HuI#wL9/DLtI AGE97u$HuI#wL9DL<I L9 AGAO L)D9uL9HULMg MAD$(E94$u&HuI#t$L9pHUL贴\M|$ AGAW L)D9uL9/HULsM|$@AGKAw )LD9uL9HUL2M|$`L9HE1HHCfDE9q HuI#uL9UHULѳAIM HAE9u HuH#qL9HUL葳ME@LA@E9u@HuI#pE91xHuI#qLML9tHUL:LMOfDL}A HHH xIIHuHII0H}I8EE)fAAEEEH!fELpLDL)DH HMHHHHtCAD$E\$ LD)D9uL9DLNM|$ AGvE97u$HuI#wL9DLmI AGE97u$HuI#wL9HDLݱ5I L9 AGm A L)D9uL9HUL蔱Mg MAD$ E94$u&HuI#t$L9HULUM|$ AGn EW LD)D9uL9HULkM|$@AGKAw )LD9uL9>HULҰ*M|$`L9HE1HHCfDE9q HuI#uL9UHULqAI} HGE9u HuH#wL9HUL1M]@LACE9u@HuI#sE91HuI#qLML9tHULگLMfDL}A IHH xIIHuIII0LUI8EE)fAAEEEL!fELpLDM)DI H}IIAIItBAD$AL$ L)D9uL9 DL M|$ AGvE97u$HuI#wL9 DL赮 I AGE97u$HuI#wL9` DL}M I L9 AGm EW LD)D9uL9 HUL3 Mg MAD$ E94$u&HuI#t$L9 HUL M|$ AG AW L)D9uL9 HUL賭 M|$@AGAw )LD9uL9V HULrB M|$`L9H5E1HHC) fDE9q @HuI#uL9UHULAMU LABE9u &HuI#rL9HULЬIM@HAE9u@$HuH#qE912HuI#qLML9tHULzLM fDL}A HHH xIIHuHII0HUI8EE)fAA E EEH!fELpLDL)EH LUHHHHtCAD$XE\$ LD)D9uL9 DL莫M|$ AG6E97u$HuI#wL9DLUI AG E97u$HuI#wL9DLI L9 AGAW L)D9uL9PHULԪ<Mg MAD$1E94$u&HuI#t$L9HUL蕪M|$ AGEO LD)D9uL9HULSM|$@AGk Aw )LD9uL9HULzM|$`L9HյE1HHC[fDE9q HuI#uL9UHUL豩AIU HBlE9u xHuH#rL9HULqIM@HASE9u@xHuH#qNE91HuI#qLML9tHULLMlfDL} IHH xIIHuIII0L]I8ED)fAAEDEL!fELpLDM)DI HUIIAIItCAD$ED$ LD)D9uL9YDL.FM|$ AG6 E97u$HuI#wL9 DL I AG~ E97u$HuI#wL9DL轧I L9 AGmE_ LD)D9uL9HULsMg MAD$E94$u&HuI#t$L9`HUL4LM|$ AGvEO LD)D9uL9HUL M|$@AGJAw )LD9uL9HUL豦M|$`L9HtE1HHCDE9q HuI#uL9UHULQAM] LACE9u HuI#sL9HULME@LA@E9u@HuI#pE9>=HuI#vfE9<$jHuI#t$?E9|$@HuI#vL9E97HuI#wL9_ fE97HuI#wL9E97HuI#wL91E97;HuI#wL9aE97HuI#wL9ET$ LD)D9mM|$ AGE9t$ HuI#wfDE\$ LD)D9M|$ AGE9t$ HuI#wfDED$ LD)D9M|$ AG:E9t$ `HuI#w6fDAT$ L)D9uM|$ AGE9t$ HuI#wET$ LD)D9M|$ AGE9t$ HuI#wfDE91HuI#qfE910HuI#qf.E9+HuI#sff.E990HuI#qf.E91HuI#qYf.E91HuI#qf.E91 HuI#qf.I9McLmLuIMA]M#eHLfDL9+fA ALuEDL9fA ALmLuIE A]M#eHLpI9HuI#vf.E9}%HuI#ufE99HuI#qLML9LDLELELMI f.E9+HuI#sL]L9DL觠L]rI fE91)HuI#qLML9NDLgLM7I fE91HuI#qLML9DL'LMI qfE91qHuI#qLML9.DL矻LMI @fE91HuI#qLML9DL觟LMI tfE91HuI#qLML9DLgLMI rfE9} tHuI#vJfE9}@HuI#vifE9t$@HuI#wE9t$@{HuI#wQE9t$@HuI#wE9t$@HuI#wE9t$@HuI#wH]L9EfH]HuDIL#cHLD@E9>LHuI#v#f.HEHM DMI|$LeHELLHHEIfDAw )LD9XoAw )LD9Aw )LD97NAw )LD9wAw )LD97NAv D)LD9I`DEf LD)D9fEg LD)D9fEg LD)D9~fAN DL)D9DEg LD)D9fEg LD)D9~fEg LD)D9fEL$ D)D9@EL$ D)D9G^@EL$ D)D9@EL$ D)D9BY@EN DD)D9=EL$ D)D9AX@EL$ D)D9`w@MnH}IHM!H}MgLM MdeDE9<$It$H!zfE94$It$H!gfE9.HuI#vyf.E94$It$H!fE94$It$L!gfE94$It$H!fE94$It$L!H=*=I9DH>HH 5f.UHSHHH=HH4HH߾ []f.@UHATISHHtHtxH)HHwFMD$0LLSL ,LH5XAMD$H0H@H8 HPLHDžL L(L@DžHDžXjHsHK(LHHP0LFLLS HL%, HH5=XAHH@LL@HDžLLLDžDž˘6H{Hs(LpHFIJ0L L[ MBHpHG,H@HLHH5WAH HDžxLLHDžDž,H H{ L# LF0H WFLKL[(L L,LFH@LH5VAH`H@HDž(L0L8LHLPDžXDžh荗H{ HS(HH5&,LFL#LKLX0HLH@HHH5VALL@LHDžLLDžDžYHHK LH,HW0LcLK(LGHLLFH5UAHH@HDžLLLHDžLDžOHsHK(LH=,MA0HwFLLc LMAHH5TAHH@HLH HDžLLDžDž谕Hs LLH0LܮFLSLc(HH0HPL (,H0H56TAH@LpL@HDž8L@LHLXL`DžhDžx|H;HS(HH EFL[LS Lf0LFHH,LH5SAH H H@LHDžLLHDžDž(rHH{H5,L LB0L[ LS(HLLBL%FH@HH5RALHDžLLLDžLDžӓ>H{HK H@Hl,LFL L[(LP0HXH5>RALH`H@HpLL@L@HDžHLPLhDžxDž4HsH{(LH,IK0L#LK MCHLJFH@HH5uQAHLHDžLLH Dž(L0Dž8蕒HHsHS(H ȫFLG0L#LK L,LLGLHH5PAHHH@HDžLLLDžDžaHs HPLH=,HP0LFLcLK(HPH@HpH5PAHLLL@HDžXL`LhLxDžDžWHK HLLLSLc(LN0LFHxFH H,H@H@ H5fOALHDžLLL(H0Dž8DžH踐#H;LCLH R,MS HH @HH5NALLMCLHDžDžGHL#LKLHp H,H @HDžHL@H5]AHLLDž֏AH;LCLpH p,MS H H @HH5MALLMCLpHDžxDžeH@L#LKLHp H,H @HDžHH@L@H5dMAH`LPLXDžh_H;LCLH ,MS H0 H @H H5LALL(MCLHDžDž8胎HL#LKLHp H,H @HDžHL@H5_LAH LLDž}H;LCLH ,MS H H @HH5KALLMCLHDžDž衍 HL#LKLHp H4,H @HDžHL@H5|KAH LLDž0H;LCLPH ,MS HpH @H`H5KALLhMCLPHDžXDžx迌*H L#LKLHp HR,H @HDž(H L@H5JAH@ L0L8DžHNH;LCLH ,MS H H @HH5JALLMCLHDžDž݋HHL#LKLHp Hp,H @HDžHL@H5IAH LLDžlH;LCLH ,MS H H @HH5IALLMCLHDžDžfH`L#LKLHp H,H @HDžhH`L@H5HAH LpLxDž芊H;LCL0H $,MS HP H @H@H5HALLHMCL0HDž8DžXMgIGM'AGkI"I>GPPADutfLA0fDGPttt6t! t<tGfDLAfDLAfDLAfDH H(ff.HUHAUATSHLfL)H5HHVHMl$6H9t|HvI9wSLarfo;`Cfo C`CfoK`CA0so ffy4IQ LLkCD 6H[A\A]]DA61LHH +CD@H=so+E@HGHPHtPt@ULOHAUL-,i_ATL%6ASHHDBOHpHw@L GLHLeLPHpH5R+CMH @DELGLLmHDžxLMLUL]EEE蕇HsH;HCLXHPM,0H9tsHSI9wZMu5LkIB/HPL9tdžHĘ[A\A]]fHIt7LH茅H;1HFCH;뜐fDDH;|HGPPADutfLOMQMtU1HAVAULPATIHSHHLErLA@sHPHpHXLOHG@HDžxH0uL :AHULuAH5U*CHMH @LELGHHpDuELMELUE҅HPIL9t=L8It$Mt$I<$H0M,0L9thM\$M9wNMtHItXLH僻I<$Ml$HB/H0H9t҄Hİ[A\A]A^]f1LvAI<$A1@7I<$I؛I훽ff.UHAWAVAUATSHH(HH`HHDžHQHHƅZL#1HA$pIlj HL H5AHXL+1HA8L3I1HA0M$`M$XAMMu_MMIMtE;q ~MIMuM94E;s *Is(IS0L0IL$LHH0HHPHHHP LXHpLHHH5bABL[LEHDžMVƅLAdAg<AhLCIxL+HAU@HHs[L L-AHEMB`HDž(HNLpH5BL HxMBDIH !CHuH5((C0HH`H=˰OD@L 7AHhH}HHMH@LPHXDpELmEEELMELLHIwI?MWM,0L9<M_M9Mt"HI-LH LI8HHLnB/HH9t뀻HIL9tրLHpIL9t躀HHPHH9t螀H0IL9t艀LHIL9tmHHHH9tQH([A\A]A^A_]HL臀Dp Lp8HHP Lp(I$PH@0@8HpuLH0I9tHu1B A9B @ LLLwLI$x2@H0H8L-ALHIC0MCLH=F_LLHH@HDHH5$CHLHHDžLDžDžbHMUHHL9M^LL9HH~LHHHHHDžIHL9tt@L1L:I?LH0L0H sE_Hw0L8HH`LPLL MAH@H0>H5 #CL@LGLHDž8LHHXDžhLpDžx}HMUHHL9M^LL9HH~LHHHHHDžIHL9t|H{H6@Iz(I9t!HL|HLLHw|LMLLH0LC_H8IQ0LLLLMAH@HLADHH5!CHLHDžLDžLDž2|HIEHHH9MNHL9HL~HHHHLHDžIHL9DD@ADH~LHI}HZDHtHDyHHHHHtH TyHHHH H~LHI}HDHH:@HtHxHHHHDH~HHI}H2HHHHHHSI落II퐽II|I餐UHAWAVIAUATSHH8H`HSHz/L#1HA$1L(HAL;1HIIA81HHH0AML@Iu0D`AH= BLLCLH@PH5CH@HpLLEMEHDžHDžxE[xLKHHHMQHHDžEZƅDZ.HIL9tywH8[A\A]A^A_]HH`LXLHu3DIHvHtD;~ ~HvHuL9t E;z HLHPHHDwDx Lx8HP HLx(HH@0@8H.lLHH9t H,HLLnHLHxKIZ(IuPL/OIB0H.m_H@LLH]H PL@LɖAH@`H5CHLEMEHU=HDžHLpLxHEELUEL]EEvH LkHH(L9!HH0HH9FHL~HHH6H L0HDž(HH H9ttLIvMNI>HI0L9MVL9wSMtHI9LHsI>I^LHIL9stfD1L1I>fHtH,sH(HHH H~HHH{H DADIy(I9t!HLsHLLHsLMDDI>1DZ E9Y @0@7H(HIfHGHxUHAWAVAUATISHHL/AU@HSL3H߉ LpHJq1A8L;1HHLPA0L1HH0AH(A@MNMUH57|H8|LLPHDžXHƅ`LpL[IC  {L`H5OpIY0HL=@H`HMAHH@H5CHDžhDžLDžrHHCHPHH9MVLL9H L`~ L HP XHHLHDžHHH9tpLXIt$ML$I<$HPM<0L9MI\$I9MtHImLHoI<$M|$IB?HpL9tpHPIL9tjpL(H0IL9tNpH[A\A]A^A_]@H LXH`LHu5IHvHtD;~ ~HvHuL9t E;z HHLHPH pDx Lx8HP HLx(H H@0@8HdLHH9H1DR E9P @DHu7fIHvHtD;~ ~HvHuL9t E;z HLHPH H,oDx Lx8HP HLx(H H@0@8HdLH&HuyH9tp1DZ E9Y @eHtHfHIbLHXRLI:fA 1HH 'C&,fA 1HH 'C%fI~(H9tHRHLHRLfA 1HH B'Cd%"fL1L/I?xL1LI>A4DAl HH?"DHDH8TI+kHokHkH{kHkI7kIkfPnUHAWIAVAUATLSHHH`IIT$1LHHDžƅ HIL0LH5hA LQHPADž`0.0fH{ƅdHPHDžXghnjLpZHDžxMFƅLpHPHH9tPH0IL9trPHIL9t]PH[A\A]A^A_]A 1HH ;A"RH5YLMWL0L8HPMzHXHHA HH(H3hALx@LL@LLL ALL0_HLHH5jCH H @H0dHDžDž8L@DžHLPDžXOHIOHpHH9MFLL9HH~LHpxHHHHDžIHL9A 1HH dA!zA1HH * RH`H}LL@@H=s/_HuL`H5QCL@LpL VfALxL AHMH @HUH}LHDžhLMEL]EEMHIOHpHH9IFLH9HL~LHpxHHLHDžIHL9tLHLxHpHrH:LJM<0L9LZM9Mt"HIHLuKHH9HILxB?HpL9RLDHtH4$KHHpHxHHtHJHHpHxH=H1zHH?0ADDLDI8fH~LHpxIHFDH~LHpxIHs@7HHp@7HHpIdIdIdfPUHAWIAVAUATSHH8H`L#1HHHHHHDžƅA$HpIL`H H5aA L`H~JHsL+HLF1EHDA8IH1H0M`MXALLMHHID` L`8HHP L`(IPH@0@8H>LH Hu H9 HLL\AIxH5LMRMtE;b ~MRMuH9@D;b 6L@Hr(HR0I}H@HLAEL`HatomicUnHDžh IvHpH`FknowF nƅ}AdAgAmAhB L!LILHfo' Cfo / C@ L[HHI{HDž HDž HP@hW ~ LE1ZHDžIILHƅIwI?IGI0H9+MOL9MI_LHIL9t1GLHIL9tGH`IL9tGH@IL9tFLH IL9tFLHIL9tFH8[A\A]A^A_]ÐHI{LHpEI?#HH5O H[LCA Lƅ0LILHH ^ALƄ5H(IC0HLHHH5BL HHCLMCH HH@HHDžLDžHDžHELHHH@LL LV0HDžH(LLLLLFH5,BH[LLHDžHDžL$ELpHHDLLM躥HDH@HDžHLHHLHpHLxHDHLH`LHLhHLHLHLLHH a ALL _H H AL(L AH0H_CL8L BH@LHHPHH@LELFH5BHUH]H$_DžXL`DžhHpDžxEELMEEH]EGCHpMd$L9tBH`HhLHL H0H5cCAIz0H`MBH H H8HH@HPH5wBHDž(L@HHDžXDžh}BH HCHH(H9LL0IL9(HL~LHHH L0HDž(HH H9tTALH`IL9t8AHHHH9tALHIL9tAHHHH9t@LHN1LI?ifDA 1LH DClUA 1LH CD-HHA 1H CADIy(I9t!HL@HLLH?LLLLCHH@HH5ABIz0HH@HpHLMBHDžxLHDžDž?H@LKHHHL9HLPHH9@HL~LHH0H@LPHDžHHH@H9TTHiiHHHfWHHA 1H "CfHHA1H A[fDDI?A 1LH CH~LHH{H@DH~LHH{H D1J A9I @fDHtHt{ H>H+?H>H>H/?H*>H=?H=H>H>HV>ff.GPPv tUHAWAVIAUATSH HH1LH HIIԉH5f9A LH"AwL H@ D0 H5}BLH!EGH`H5aBDPD@L@LH!LyDHLDfH^DPI1LD8M&H1LA$0L`LXALM-LM[MtE;c ~M[MuI9t D;b HH D` L`8HHP L`(HPH@0@8HLHt+HI91r A9p @Ix(I9t!HLHLLHLLDHr(HR0HLOHHLHƅHHA~PHHDžIL8IIľL0M$`M$XLMu)LMRMtA;Z ~MRMuL9t ;Y HH&X HX8HHP HX(I$PH@0@8HLHHu I9!LLLHI$xHHq(LHEHatomicUnLIHHHHAAknowAA nDž0.0fHDžƅLHDž ƅAdAgAmhAh^IFH5C'HH='L_HLPLHA E!D}EFPAH1AHHHH9tHHHH9tHHHH9tLHIL9tLHIL9tHH`HH9twLH@IL9t[LH IL9t?HĈ [A\A]A^A_]DLLLQHxH]DL ƅ0LIL HDž( H4_HE AWL H4AH`H(LH N@HHLLOPH@LBpBLLGHHH52BLL%^HxHH@L`HDžhHLLLDžDžDžLDž*H@LKH HHL9H HLPHH9HL0~LH (HH@LPHDžHHH@H9tA~PLHaHE_H`L0H~PLHhH8HLHBNLxHHH@L@LFH5BHDžDHL DžHHPDžXL`DžhLpDžxHLH(H HHI0H9ML0L9UMHH(HHH9tLHLPEOHLBIz@LH @HPMBH`HH5B1HDžXD`pHDžLLDžLDžHPL L(HHG HBL BHHxH0IDDPHZ`L`HL@LhLHH5BLhLLBHH5dBHH @H0HDž8D@HpDžLDžDžDžLDžHLHhH`HHI0H9LpL9rMtHIHLH%H`HhHHHH9tHHH`H @L[ LCHDžhHxHH5BHp$L`LDžLLHhH`IHI0L9CHpH9MtHI1LH&H`LHhHIL9tLulHHreduce_rLpIHgen_statLHxHIB MBHHH@FesulF tfA{ HAC_resACtƅƅA_HH5BHHDž LHDžHHDžHDžELHMH M@H@HDžH5UBLDHDž*AVPHH HDžLHHH0HHLIHƅH HDž(ƅ0LHDžƅ2 MLHALHDžLDžhILL L(HHL8HHHLHL0LLBLhL L- BL(LBH0Hl*LHMFHPHXH5BH`H @H8L@LpDžxLeLHUL纰L]ELmELUEEEH0HH9t}LLhH`IvI>MnI0L9 IFH9Mt"HI LHLI9LI[LIsI;HM40I9MSM9>Mt"HIHLHH>LIMuB7HL9tLHIL9tvHH HH9tZLHIL9t>LH@IL9t"LH IL9tLpHIL9tLxHIL9tHH`HH9tLH IL9xnDHA H @18HHA1H BHtHHHH H(H@H QEH?DHAH B1HHA 1H @BvH1HOH;L1L/I?KLLL@IS@LLBHHHH5BHH @LhLMCHDžDžLDžL Dž(-HLHhH`HHI0H9LpL9H1fDH1H`fDHAH `B1LH H(L%k%AMw MGH @HDžLLHLH5BHLDž L H L(HIy MAH @:H H5BHHDž(H0L8L@DžH LHLDLCmLLHH@HHMk@L@HLLL-*^LMCHH @HH5PBHWH(H0HDžL H0Dž8L@DžHLPDžXH HM_L9t LHH LIHPH(LL%J^HHH hBM@LHLLHH5BHHiHH@HDžLHLLLDžLDžDžL Dž( HL8H0HrH:LjM$0L9fLJM9! M LMbB'LIrI:HM$0I9.MZM9 Mt"HI?LHTHH?HHLfHB'HH9t. LH0IL9t HHH9tHIL9R@HLH0H @LLW@.HHHHHLLPL=!BLXLGHHhH5BHXHH @L0HDž8H@L`LpDžxDžLDž~HL[HHL9, HLHH9 H`L~`L`H`H HLHDžHHH9tUHHxDHxhHHHL@HLO@*LHLHHHH5+BHH @LLGHLHDžLLHLDžDžLDžHLKH HL9 LHIL9 H`L0~`H`H `(H HLHDžHHH9tHHHH9tHHLLHHHGPL=^HHHLLHHBLLLGHHH@H@HH5yBHDžLLLDžLDžH`HDžLDžHLCHHL96HLHH9C HPL~PLPHPH3 HLHDžHHH9tA~PH0LHHHDžLHXHW@DžXHHL@LGLHH5H H5 BL(L=BH`H @H0H8LHLPDžhLpDžx}LLHHIHI0L9yLL9MtHILHHHHHHH9tnH0HHpDHcLLH8HM@I}@HL0HHLH5B8LHLMEHH @HDžHLLLLDžDžLDžHLH(H HHM,0H9L0M9AMtHI LH H LL(B/HIL9tH0HKH9tHLHL`L_PHHL=XBLLLHLPLGLL`H(IHHHH5BHXH@HDžL L0H8L@DžhLpDžxLDžLDžSLLHHIHM,0L9?HI9MtHILHbHLLB/HIL92?(f.HA H /@1HHA1H B[fH1蒻H`fDIx(H9t!HLHLLHLL-H~LH (H{H@DfDfDADHIkLHH @HILHLI8HtHHHHHH1"H fDAD HH:u@DDHH?fDDH`D1@7H`fD1r A9p @afDL1LwI}TfDL1LWI?ADHtHTHH H(HaHtHCHHHHH1誸H fDH1芸H)fDH1jH3fDAD1@7H fDADADH`~`H`H `(H{H7DHP~PLPHPH{HDH`~`L`H`H{HDPHHH V@A#DfDA1H@7H8pD LDI81@7H HbH{DDHHHH VHHIIFIII0I)I?ILI,IIII4IZIII*I>IVII!I5IhIJIIIRIbUHATISHHtHtxH)HHwMNIvHMI0L9MVL9MuoI^12I|$IT$ H)HH9Hu@1L莳I>_fDA@1@7I>@HH=d@1I&ff.UHAWAVAUATISHHHP@L3HAAHSAHz(t HzA tYE10@H{HS H)HL9JL8It$I|$M$H0M<0I9FML$M9%MtI<2I LHYM$M|$IC:H0L9tFHIL9-HLhH`pHhIPDx Lx8HP ILx(H@0@8^HHH`u H9LIxDDsL]HH@IC MCHXDuH5BL5M"OLhHEHELHLuEHSHHN LFHDžHH5O _H@1LDžHP\L0ƅ@L3L`IL0HDž8A1HAA{L0L0L BHHIv0L8{H0H5B@HLPMFH`H@HDž8LXDžhLpDžxH@oDAL@HIL9tH`H0HH9tLPHIL9tHXHHH9511LM$AI}(I9tHh/HhLHhLh1DB E9E @?LhHHLRLH5AH}IL9tLpf1ɺLpL)mH5B))pHpINH0HxH9 H`LHL@H9 H8L@~8H0@8H HpLHDžxIHpL9NDHhHH9tLf1ɺLL)UH5B))HMNH0HL9 L`HIH@L9) H8L@~8H0@8H HLHDžIHL9H1HA8H@H1H0LhAEL@HEMBLEMI`MXL8HuIHRHlD;r ~HRLIt$Mt$M $HM,0M9M\$M9MtI<1ILHM $Ml$C)LIt$M$HM,0M9|I|$I9MtI<2ILHM$Ml$C*LIt$I$HM,0I93IT$I9MtH<0ILH#I$Ml$B(EFHhfE1LH5B3D)D)MD)aLEIt$M$HMM,0M9fM|$M9MtI<3IPLHM$Ml$C+LhH}IL9lDDM$E&L+1HA8IH1H0M`MXALL8MuYfLMRM-E;j ~MRL98t E;p H@HL(HPH0 LH8Dp HP H(LH(H0H@0@8LH L HIHRMu H98H8LL8gH@L8HxHhIp(豛LELuHH=ABLH @Hr LPLHLBH5BH LHDžDž( HPMNH0HXL9L`H`IH@L9H8L@~8H0@8HHPL`HDžXIHPL9tHhH}HH9tL3H98t D;i HH0HP8Dh H0IPHP(H@0@8H HP H(L(L HIHu H98H8LL8[IxH8LI}HHq(LHQ0H7DCLhL L^H@HHLHELHMz0DEMBHuH5BHUhL}L]ELMEL8It$I|$I$H0M<0H9aMT$M9_MtH<0IKLHI$M|$IB8H0L9tHIL9oHtHHXH0H8HPE11LPM$1L=M $1L*I$2HtH=HxH0H8Hp*HhfE1LH5LL-NH5BHDž(D0D@LPDžXDžhẺHpMVH`HxL9&LHHIHXL9HHPLpD~PH`DXDhH8HpLHDžxIHpL9t赹LhIt$IT$M $H`M<0I9 I|$I9!MtI<1ILHPM $LHM|$C9H`IL9YL98t E;u HXHL HPH(YDp Lp8HP H Lp(H(IH@0@8GH(HHu H98OH8LѰLXIxH`Iu("iHxHH=WBLpHF HLH @HLFLH5CBHHDžLDžxHMVHHL9hL0H IHXL9H8LD~8HDXDHHL HDžIHL9tLPdP P AWL5@DKHHp0H=NL8H@LL L@HH5KB'HPHLHDžDDžDž {PD[ LpHEDLIq`HHDžxL HPHpH51\HLH BLH(LPL8DL=7BHLLMAHHH5;BHH @LHDžLDžLDžDžDž׵HPMMH`HXL91 LHL`ILXL9HPHp~PH`XhHpHPH`HDžXIHPL9t讴H IL9t虴L@HIL9t}L0HIL91LqM $L L3HIEƅ0H HDž(AH HHt {P}HHt {P L(It$M|$I$H M40L9MT$M9-1L[pAHLHXHDžH0HLHIHƅLHDžƅHL`LXL@MuzfDMM[Mt E;s ~M[L;@t E;u LXHL IPL(Dp Lp8HP H Lp(H(IH@0@8H(HH H9@t H4H@L自HXHxH`Iu(bHpHLxLLO LGH @LHH?QBH5BLHDžLHDž.HM^HHL9L0LILXL9H@H~@HXHHHHDžIHL9tPPPL5E@{EOHL@LR0HNH@LLpLB'LH5BLHDžDHPHDžDžư{PDKL HED0LIH`HM@HPH H ]HPLH5nBLXLpLHxL@HUD@L=BH`LHMH @HuH5BHDž(LhLpHxELMEL}EEE误HMEH`HL9 L8LILXL9 HPHpD~PH`DXDhH HHHDžIHL9t胮HpIL9tnLHHIL9tRL0HIL9??1LjM4$LH==@1HHL _IuH 6HxHL5^BLBHH5BLfH H)IT$HDž0^H)΍^LMpHƀ^HDž(^Mt$M $M^I9 MT$M9 LMIyMM@HMVI)L)A^DHHI$M|$IBƄ0^H L9 AJL+ HAL IHPLXIL HDž(ƅ0HH`LXMHuFfDIHH;W ~HALHPH@PMh0E_M@HDžLLH@LH@HPH5BD D0DžHDžX2HpHMMHHL9 HMVHXL9 H(L~(HpXxH HLHDžIHL9t DKHtHu ੺HXH`HhHPLPEWLDIH0L8M@PLL0H5BHLH@HDžDDžLDžêH H0MMH8HL9jH@MVHXL9H(L0~(H X(HtH0L@HDž8IH0L9t螩D[HH@A1H +DC|IHtH/ JHHHHM9tPA;u HL@oL@8@8HP IDPL@(IPH@0H@DP L8OL8HHP Hu I9% LLڠIxHXIu(2YL H(H0DsHXLHz0LPLBH ÚBH0L NLHpH5BH@HDž8D@L`DžhDžxeH`HMWHHL9LHLILPL9?H@Lp~@H`PhH/HLHDžIHL9t9LXH IL9ddHtHhHxH`HhHp M $vALAHtHj蘥HH`HhHmHPD~PH`DXDhI~H6 M4$HsL0H@LG L NHDžLLGL H5BL0Dž8WH0MWH H8L9L@IELXH9HPL0~PH X(HuH0L@H0IHDž8H0L9S*II}(I9tLL(I}(I9tLL(_L8HPD~PH`DXDhI~HpAHP~PH`XhI}HPH@~@H`PhIGHHtHH`HHhHH8D~8HDXDI~HLA15A^H1LLS`I$}A0H(~(H X(IEH0HPD~PH`DXDhI}HnHtHAHH`HhH5HH@A1H IuHtH萡H H8H(H0HD@{L`LMy0L2NH@pLBLH5ˑBDMAL`HDžhLDžLDžgH HINHHH9H MEHXL9aHPL0~PH X(HQHL HDžIHL9bHHHA1H M#Ds9HHHA1H IsHHHA1H ID@sH@~@HXI~HmHtHt*uHHHH8@7HHHP~PH X(IFHHtHt*H HH(Hx H HHH`@H H8L@`HXH`H(~(HpXxIEHD DHHI}(I9tLLP^HtHt*НHpHHxHHpH@7HxH`1B A9E @@7H`HM1DB E9E @HH`1r A9u @HP~PH X(IOH0HtHt#H H8H([@H H8HH>H6H.H&HOH+HxHHHHHH3HֿHHƿf9f.UfHATSHHHGu1UHUBH[A\]IU1HAWAVAUATISHHGH+H0HHDž0HHDž8HDž@HDžHHDžPHDžXHDž`HDžhHDžpHDžxHIt$I$HH9IA?HII)L-LHHH?A)LIcHILLHLPM9M.I^H;HH{H3LL{VuM/IL9uI$LpH`IL9LLH`I$~xHLuL,pH`LhIL9cMxHrL}I A_;WvA9I@I9T$tIT$H]1HEHHEHEHEHEHEHEHEHEHEL`HhL(L9@tdI9WHEMXHuHL(H9oLHEL`HhI9IL`L;@uHuH}L(H;utSH9HVIt$H(I;t$HHuH}ID$H9HHuH9uuH}HH]L}LsM9MI?IIMIAM9Mt}ItfItTItBIt0ItIt I?IϘI?IØI?I跘I?I諘I?I蟘I?I蓘I?I臘M9vPI?I@vImIdI[IRIII@I7M9wH})H0HHxHXLhI9IH;HI엺MIAI9Mt}ItfItTItBIt0ItIt H;H裗H;H藗H;H苗H;HH;HsH;HgH;H[I9vPH;H@JH{AH{8H{/H{&H{H{H{ I9wH0H[A\A]A^A_]vA9$H`LhHIL9IBH4HEH DXD;|}v9*HI9H`HhIH9tMOH4LMI EQD;rHpHH9ALLI$H`SLpIL9,LLH`I$cDLxMxIjfLxMQIfLxMBIfLMIqH@LH} LLHuH}H9@;LmMULUI}LHH}L]HuH9uofHxHOHxHLLHhLpL`L9@uH9|HHpH`HH9L]LI$H`DuL9|HpHH`HH9LELI$H`DHLH I$DLHI$HuL9HLpH`IL9MLULI$H`DHHG@HpHH9LLH`I$IfD#HxHWHxHHHhHHpH`SDےHxHWHxHHHhHHpHH`H9XDHL~@HxLAIHe HLQ7HxHWHxHLHhHLpH`OII UHAUIATSHAED9~8ED9~0ED9~(ED9~ ED9~ED9~ED9~ED9E`IuIU1H9HHH)HHHHHHtjHtNHt2HtDA9 D9fKH~DA9 D9g5HDA9 D9gHDA9 D9g HDA9 D9gHDA9 D9gHDA9 D9gHH9DA9 D9gHOD HA9 D9aDIHyA9D9g}|DIHyA9D9g}iDIHyA9D9g}VDI Hy A9D9g}CDI(Hy(A9D9g}0DI0Hy0A9D9g}Hy8H9VDEUDDSE\$DMDUDGHwD]DEH9tH)2DUDMIUDHrD)Iu+E܋U؉)փ>LI HL [A\A]]I;utNDJDRE܋UIE)փ~IuI;utFIEE1AHULfHULXpfUHSHHHuHwH;wtHEHHGHH[]HUHH[]UHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULE蕎HULEHEIH}I7MM)LTH4O :LMM9LLULE菕HULUI9t2LLLČMu~ELsEH([A\A]A^A_]L訍fDHH9HE1HEHSM9ufL4 f.@UHAVAUIATSH?H&IEHI](LpI9IH;HIMIAI9Mt}ItfItTItBIt0ItIt H;H趌H;H誌H;H螌H;H蒌H;H膌H;HzH;HnI9vPH;H@]H{TH{KH{BH{9H{0H{'H{I9wI}[A\A]A^][A\A]A^]UHAWAVAUIATSHHLgHHWH?LHH)HH)HvPID$MmLC0M(LsHMNLKHIvLHs8LS@Hs0H[A\A]A^A_]@Hs(MI)IMxMpO ?L9HHLdI9J<wMHSHHs(M)HEIHRNI蝇IcLkI}肇IEIE荌I5Lmf.H9UHAWAVAUATSH_H(H9nIHuI?DD;DsI9tHڹLL)I< 蕎E<$HEt$H9]#I4$H;AՄuHLsHEM~I6H}AՄIINMIvHMH}IVAՄIvM~H}I6IvAՄI~M~IvI~H}AՄ}MFM~IvH}MFAՄtbMNM~IvH}MNAՄtGMVM~IvH}MVAՄt,M^M~IvH}M^AՄtIVI@IV HEHIH9]H([A\A]A^A_]@UHBHAWAVAUIATISI?IIHHHMHуHuHULELeHML9HHSH]HEL<HI_MdMtI<$I6LUuI$K\L;}LDI6KtH;]|H}HSII?IIH;]0IfDIt$MLHH?MHHL9eIO|HuHEMtI?ЄuLmM.HH[A\A]A^A_]H}HMtuHfDLEIMI?MII9KH\M\I IM3f.MH}MLDUHH)HAWAVAUATSHH(HUHuH=IHfHSHUL}LEHmLMwI8H)HHH?HHL$I4$AՄ8IwI<$AՄL]I6I;AՄ<HH{HCH;LuLefH3I>LuAՄM|$I7H;MAMOMIwH;AMWMIwH;AM_tpH;MIwAIt[IIwH;AIW؄tFIwIH;AIwЄt1IH;IwAIOȄtIwIH;I@AՄMM9ssEAFM<$M>E$AD$I LMLUIqI:AՄI6I<$AՄDHuȋD{HNH VD~HUHuLLLH)H=H}LuHLpIIMAJ LMHHIIdIItaItBIt#I J LMLHIJ LMLHI~J LMLHIeJ LMLHILJ LMLHI3fDL3M$LM4${DIvMLHH IvMLH HIvMLH HIvMLH HIvMLH HIvMLH HIvMLH HIrJ MLLH]MDLeL IMI1HM|$IL$ML$IMI)LIHAIMItWIt*LI $LMH)1HM$HLeILI $LMH)1HIM\$HH;MI $MI)1II|$LHHxIH([A\A]A^A_]HI $M1HM|$I$LI)H)H6H3IL$MIT$HIt$H)1HLIL$1IT$HI MD$H)MHHIL$LHM1HID$I[DfDHuJ LMLHIfHGHx ÐfDHGH@ ÐfUHHATISHHH9upH_H{ 1,@MT$IT$ L)HH9s\III)MI9HuLXL^DIHI!(HhHp\HMHpHx~xflIHhLhLp\LhLpHxD~xfElEHpL\HpHxD~xfElE_LhHp\LMHpHx~xflAiLhHHdZIHHLD]JZLmD]II}EELME1MYELMIyEE1DxHpd[HUDxHE~}HpflzHxLM'[HUHxHE~MLMflJHL!HL!ZL]HE~UflASPDxZL]HED~EfElECDxA1A@UHWBII HAWAVIAUATSHHxLnHuEM!H`HM|LmHhLME M9LLA MHH0H}LuH8A H}A)fEEM!fA LEM)I EILEMIAItpItDLAE5E9eu,HuI#uL9LDLM/SLMqME LA@ EP DD)D9 I LA@ EX DD)D9u2LEL9LDLxRLxLEI M9HxLpMLA@AX D)D9IX HCi DC DD)D9g LS LAB Az D)D9 HS@HB DJ DD)D9uL96HULQ"LC`M9JHxfDHUBLMIEI HpL]E M9LMA LHI0LuMH8A LuHA)fAH}EEI!fEMEL)MH DHMHuHHtkHt>LAA E9)u#IqH!L9DLPLMMA LA@/ AP )D9+ I LA@hAx )D9u$LEL9IDLoPLE2I M9LxMLA@E` D)D9M` LAD$}ED$ D)D9yIT$ HBDR D)D9IL$@HADY D)D9uL9tuHULOteMD$`M9CHuHC?Hx[A\A]A^A_]@E9(?HuI#pLEL9tHULJOLEfDLxA LIL pMLLeHIH0HUI8EE)fA E EEI!fLEeH+}H EHLUHHHtGHMA DY HD)D9uL9DLaNLuI AF E9.u$HuI#vL9DL%NI AF E9.u$HuI#vL9|DLMiI M9H]LAFEf LD)D9uH9(HUHMMf MAD$E\$ LD)D9uH9HUHVMMt$ AF^EF LD)D9uH9HUHMMt$@AF\Av )LD9uH9_HUHLKMt$`M9H]L=XIIGfDE9h HuI#t$L9DHULpL0IT$ HBjE9l$ uHuH#rL9HUL.LIL$@HAPE9l$@lHuH#qJ@E9 HuI#pLEL9tHULKLE\fDLpHx MIL hMLLeIIH0LUI8ED)fA E DEM!fLEeM)I DIH}IAIt~It?AE3AU L)D9uL9ZDLJGI AEE9uu$HuI#uL9!DLJI AEE9uu$HuI#uL9DLyJI M9H]LAEbEe LD)D9uH9HUH(JMe MAD$=E\$ LD)D9uH9NHUHI:Ml$ AEEM LD)D9uH9 HUHIMl$@AEAu )LD9uH9HUH_IMl$`M9H]L-UL}IEIEE7L`LeH`HHI#|$H}L<7-DE9` HuH#sL9HULHLS LAB|D9c HuI#rL9HULHHS@HB`D9c@HuH#rYE9 HuI#p_f.E9(HuI#pf.E9.sHuI#vIf.E9uHuI#ufE94$HuI#t$E9,$XHuI#t$-E9(HuI#pLEL9ADLgGLE*I fE9 JHuI#pLEL9LDLx GLxLE[I @E9t$ ]HuI#u3E9l$ HuI#vE9t$@^HuI#u4E9l$@HuI#vH]M9ANH}E1L0L8H}IL]IMDMMŐMOM@HM!ID1L!8HL}Mu'fLMRMtA;z ~MRMuI9t;x }L]HUHƉMH}L]MH$A;_rLfH]M9NEML]H1LL]IHUE@MIMՉDIOMHL!HDL!xLUMu'fLM[MtA;S ~M[MuI9t;P }LMHU}HH}LM0}x$A;_rLELHAI#xH}HL<Au )LD9AV L)D9g~Av )LD9&EE LD)D9axfAE D)D9EA D)D9DE9uIuL!f.D9)^HqH!6f.UHPHHAVAUATSL@HHML0It$LГMt$LIMIvL讓MfLHMIt$L茓Mt$LHMIvLjMfLHMIt$LHMt$LHMtfIvL*MfLnHMtIIt$L Mt$LOHMt*IvLMfL2HMfLLMIt$L謒Mt$LGMIvL芒MfLGMIt$LhMt$LGMIvLFMfLGMt|It$L(Mt$LkGMt]IvL MfLNGMt@It$LMt$L/GMt!IvLΑMfLGMHQH߾`[A\A]A^]Gf.fUHHHAVAUATSL@HHML0It$LPMt$LFMIvL.MfLrFMIt$L Mt$LOFMIvLMfL.FMIt$LȐMt$L FMtfIvL誐MfLEMtIIt$L茐Mt$LEMt*IvLnMfLEMfLLMIt$L,Mt$LoEMIvL MfLNEMIt$LMt$L+EMIvLƏMfL EMt|It$L訏Mt$LDMt]IvL芏MfLDMt@It$LlMt$LDMt!IvLNMfLDMH[A\A]A^]fUHATIS1ƇƇ +@ID$IT$ H)HH9s"Hff.UHAWAVAUATSHLMHHH1ǃ HfHHu0fDIHvHtV yHvHuM9t A|$ ~[(LMB@ LLI@$HP m~IHtEI9tHtKLL+:HAD$$HǃH[A\A]A^A_]LMA1DB E9D$ @IgffDUHAVAAUIATISADLLHHH[A\A]A^]I*ff.UHAUIATISHHXI$LXI$L1Xu?I4$LS@IL$IT$ H)HH9HmH}HML AH@ILHILHHSI fHDkH!L HCHDIHL%vA1IHE fDoEHM!L ED DmfDoMIHuGLDSHELCAK A @ǃ f}9[MAAM!IHtHpN6HVL;vRM9wMMCgIMIL=HEML MH@LHILPLCL  f.IDkM!M L{MHEfDoeHIM!E$D+HEfDomIGl.Hx[A\A]A^A_]@EbAEE9IEIL]I!ILxLUL;U@BD,D9IEIM!MHLIL9EjAEE9IEII!ELIM9p AT$DefEHMHIHHUHtLXNIL;vdHMI9OICOIHx HxH;HMLxH@AILULLHLPILHH#EH HELE1ILXLI{HL)HI9"MM9v^M9wMMC_I?MItWLHuL]:H}HuHIH@MIHPH8LXHgIMKLC @LE1IHPH8HJIM)IM9LH9M9_LICWI6IILHpmLxHU+:HMmHLxHpMH@LILXHHPHIMLHm%5HS Imf1E1u,HuI#vL9 LDLEv,LEf MN LAAEQ DD)D9I LAAEY DD)D9u,LML9 LDLE,LELM I L9LuLhEMLAA EA DD)D9 Mq LAF| EN DD)D9z IN HA DY DD)D9 MF@LA@ AP D)D9uL99 HUL5+% MN`L9HLhfL.BEIM LxLEE L9 LLA HHH0LuMH8A LuHA)f%HUEEI!fMEL)MH DHMHuHHtlHt>LAD$+E9,$u$It$H!L9DL)*M\$ LACnEC D)D9iI LACES D)D9u$L]L9DL)L]I L9LpMELACEk D)D9Mk LAEEM D)D9ME LA@EP D)D9IU@HBDJ D)D9uL9HUL(M]`L9?DH5 AEII HxL}EL9MLA HIH0LUMI8AHLpE)f%HUEEI!fMEL)H DHMH}MHHtqHtCLAD$EL$ D)D9uL9 DL' ML$ LAAEA D)D9I LAA^ AQ )D9u$LML9, DLu'LM I L9LeMLAAEi D)D9Mi LAEW EM D)D9S ME LA@p EP D)D9l I}@HG O )D9uL9_HUL&KMM`L9AHuH}IHx[A\A]A^A_]f.E9;HuI#sL]L9tHULJ&L]fDLpA HIL xMLLmIIH0LEI8EE)fA E EEM!fLEmL)H EHLUHHHtBAD$AT$ L)D9uL9DLd%|Mt$ AF E9>u$HuI#vL9VDL+%CI AF Av )LD9uL9DL$I L9AF EF LD)D9uL9HUL$Mf MAD$w AT$ L)D9uL9HUL]$uMt$ AF5EN LD)D9/Mt$@AF, Av )LD9uL9HUL# Mt$`L9LuH/IHHCLuH=L7)&E9{ THuI#uL9UHUL#AME LA@/E9} ;HuI#pL9HUL@#IU@HBE9}@;HuH#rE9|$ HuI#vL9tHUL"@L9AF LUIILUL"IH H} AHEULeH]B HH}HH}H9t!(ILMAM#aHLpE9!HuI#qLML9tHUL"LMXfDLuA IIL xMLL}IIH0LUI8EE)fA E EEM!fA LEpM)I DIHMIAIt|It>AF EF DLD)D9uL9DL4!I AF E9.u$HuI#vL9DL I AF% E9.u$HuI#vL9cDL PI L9H]LEAFEn DLD)D9uH9HUHr Mn MAEE] DLD)D9uH9HUH0 Mu AFIA~ DL)D9uH9HUHzMu@AF+EN DLD)D9uH9OHUH;Mu`L9uL%v+1I$ID$M4$u M^ fI*LmHMfIZA]M#eHLE9a HuI#vL9HULIN HAiE9f sHuH#qL9HULMF@LA@NE9f@pHuI#pFE91VHuI#qLML9tHULjLM-fDLeA HHH xIIHuIII0LEI8EE)fAAEEEL!fELpLDL)EH LUHHHHtBAD$xAL$ L)D9uL9DLwM|$ AGE97u$HuI#wL9QDLF>I AGOE97u$HuI#wL9DLI L9 AG&EG LD)D9uL9HULMg MAD$ E94$u&HuI#t$L9HUL}M|$ AGEO LD)D9uL9OHULC;M|$@AGAw )LD9uL9HULM|$`L9H'E1HHCfDE9q HuI#uL9UHULAME LA@E9u HuI#pL9HUL`I}@HGwE9u@HuH#wpE9>HuI#vcf.E9<$HuI#t$E9|$@HuI#vL9E97HuI#wL9fAT$ L)D9M|$ AG E9t$ 1HuI#wE99YHuI#q fE91HuI#qf.E9+gHuI#s6f.L9 fA ALuE GDE9>eHuI#v;fE9}HuI#udfE9+HuI#sL]L9QDLwL]:I nfE99HuI#qLML9>LDLE3LELMI f.E91WHuI#qLML9DLLMI &fE9} HuI#vfE9}@HuI#vfE9t$@HuI#waH]L9A^MfqAFfDE9>SHuI#v*f.HEHM}DHxLeHELLHHENAw )LD9Av D)LD9DEf LD)D9H_fEg LD)D9 $fAV DL)D9:QDEN DD)D9EL$ D)D9@E94$It$H!f tkfA*Fg@MnLEIIM!LEMMf.E9<$*It$L!f@E~fI*DE9.HuI#vf.E94$It$L!fLAfHI I*XI@fHHHݰf.UHSHHH]HH豰HH߾[]f.@UHAWAVIAULATLIUSID$HHxL?HHDžƅHHDžƅAW@-HHHDžLVHxHHLƅHHDžƅ^CE11L=H M<0H93MNM9MtHILHaI>M~HB?H H9pp@LIvINMM<0I9IVI9MtIIHLLMM~C:HƃDHA11H :?HA 1LH BqHA 1LH BSLHL=TENHLCHL`HLLHII0HDžhHLhHpH`H@HpH5KBLxMAH]DžLDž,LL(HHIH M<0L9LM9MtHIFLH;HLpLB?H IL9HA 1LH =BHA 1LH =BCLHL=CNHLF@1LNI>fDH1L3MrADH1 HfD fD7A2M!f.HDDI>{fAdDL0eL=BNH@MH M@HDž8HH5:BL0@LPDžXHLHHHIL9HxL HH9HpH~pLpHpHHH LHDžHIL9tLHHLC7HtHtimHHHHHp~pLpHpHHzH> @7HHH]7H7H17I7Hu7fDUHAWIAVAUATSHHHP@HSL3HALbMAVL+1HHL5b@NA1L-]HHLD[HIH0IHH5?HH@LM@LHHDžDDžLDžDžHAt$L0LML$0LpL@MD$LH@H5?L0HDž8DPL`DžhDžxHHLHD[L@L5?HLLPLHDDLHHLH8HLHL0H5?DL ̲?LL?HH?L Li)H( L0LGLH8H @H`H5BHDžDžHDžXDžhLpDžxLUEHEEL]EIH0IL9tLIwIMHM$0I9IWI9w%Mt-I<1ILHW Mf1LMMgIC!HL9t5HIL9t LHIL9tE14HKHS H)HL9Z JD 1{AQLKA$ @ƃ fu9 M!AAM3IEHtLPO MBL;v]M9]MMCuI}MILL]HuHI}L0IAH@HxIELHLKIHD{I!M LKIHEfoUHM!HEfo]IAD;1L5AM HEILUC\9D{HsAH A$ƒ fU9n L!AAIIEHtL@KMXH;v]M9MMMCuI}0MIPLLMLUH?I}L0LAH@HxIEHPHsIË fHD{H!L HsIHEfouHL!HEfo}I4D;L5AM HEILEB|>D 1{LCAQA$@ƃ fu9 M!AAMIEHtLPK MZH;v]M9MMMCuI}:MIHLLMD 1{AQLKA$@ƃ fu9~M!AAMIEHtLPO MBL;v]M9]MMCuI}$MILL]߹HuHI}L0IAH@HxIELHLKIfHD{I!M LKIHEfDoUHM!HEfDo]IED;1L5AM HEILUG\9D{A@A$ƒ fUHS9L!AAIIEHtHpJ<L^H;8v]M9MMMCuI}KMILLM޹LEHMUL0LAH@LPIEHxIHSID{I!M LKLDIHEHfDouIHEfDo}HM!HEE4D;H@H IHuG|: {LSI Mc$MAfAfAfDu9PM!AAMIEHtHpNHVL;v\M9MMMCuI}MIjLLM.ݹL]HqMUL0MغH@LPIEL@LSL @ID{M!M LkMHE foUHHL!Lefo]D;IB\8HX[A\A]A^A_]DAAD9IEIM!AMIM9HDAAD9EII!IHLIL9DDzAAD9EII! HML9DAAD9-EIM!wHMIL9 DE~AEE9EIH!IIIM9bk DDAAD9XEIM!MHLIL9fE~AEE9EIH!IiIIM9[DDAAD9EIM!HMIL9DDAAD9EIM!:HMIL9[DDzAAD9EII!MHML9rDDzAAD9mEII!MHML9*DDzAAD9EII!MHL9MDAAD9=EII!HMIL9SDLE1IEHPLHJIM)IM9 LL9vhM9MLICMI}HIItaLHuLMHMعHULMHHu( M]IEH@LXHLHPH IMP HS5DLE1IEHPLHzIM)IM9q LL9vhM9MLICUI} IItaLHuLMHUعH}LMHHuX MEH@LIEL@H8HPH, IM` LS DM1IEHHH8HqII)IM9LH9vpM9MLICMI} IItiLLULMHUHMZ׹HUHuHLMLU1 MELHH@L@IEHHH IH H{DDME1IEHPH0HJIM)IM9LH9vhM9MLICMI}Y IItaLLELMHMֹLMHUHLE@ M]IEH@LXHLHPH IM Hs DM1IEHHH8HqII)IM9LH9vpM9MLICEI} IItiLLUHUHELMչHUHuHHMLU MMH@IELHHHHHH] IHH{ fDME1IEHPH0HJHL)HI9yLH9vhM9MLICMI}= IItaLLULMHM չLMHUHLUMEIEH@L@HLHPH|IM`Hs DME1IEHPLHJHL)HI9LL9vhM9MLICMI}J IItaLLULMHMMԹLMHUHLU8M]IEH@LXHLHPH IMLCDME1IEHPLHJHL)HI9LL9vhM9]LICMI}l IItaLLUL]HMӹL]HUHLUXMEIEH@L@HLHPH,IMHLKDM1IEHHH8HqII)IM9LH9vpM9MLICMI}) IItiLLULMHUHMҹHUHuHLMLUMELHH@L@IEHHHIHH{D-DM1IEHHH8HqII)IM9LH9vpM9MLICuI} IItiLLULMHUHuҹHULMHHMLUMEIEH@L@HLHHHIH!H{ fDME1IEHPLHJHL)HI9LL9vhM9]LICMI}2IItaLLUL]HM=ѹHUL]HLUhMEIEH@L@HLHPH<IMLKEDME1IEHPH0HJHL)HI9LH9vhM9MLICMI}IItaLLULMHM}йLMHUHLUMEIEH@L@HLHPH\IMHs =DLH9vhM9]LICuI}IItaLLMHuL]ϹLEHMHLMoM]IEH@LXHLHHHI@MLS@HL)LL9]HxHSII)MI9u,HuI#vL9DLDLEܻLEDMN LAA^QAQ D)D9\QI LAA9MAy D)D9u,LML9YDLDLEnLELM:DI L9LuLxEMLAACEA DD)D9CMq LAFlFEN DD)D9jFMV LABFAz D)D9FMF@LA@FAH D)D9uL9CHUL蝺mCMN`L9HLxL=YAEIM L}LmE I9LMA HHI0LEMH8A LEMHA)fAEEI!fEHMMEL)H DHHEHHtlHt>LAD$XE94$u$It$H!L9#?DL蜹?ML$ LAA1QEQ D)D9,QI LAA9KEA D)D9u$LML9>DL/LM>I L9L}MLAAA>Ei D)D9<>Mi LAE@EM D)D9@MU LAB@EB D)D9@IM@HA AQ )D9uL9=HULe=MM`L9AL4AEIM LULEE L9LL IHH0HEMH8A HEMH)fDEI!fHULEM)I EIML]IAItkIt>LAD$NVE94$u$It$H!L99DLl9ML$ LAAOAy )D9}OI LAAjIAQ )D9u$LML9(9DLLM9I L9L}MLAA8Ei D)D98Mi LAEK;EM D)D9G;I} HGd;W )D9b;M]@LAC;ES D)D9uL9[8HUL7G8MM`L9AfH=AEHH H}HMEL9HIA HHI0HuMH8AHuMIA)fAEEL!fELEHEL)H DHIHEHHtlHt>LAD$TE94$u$It$L!L94DL93ML$ LAAMEY D)D9 MI LAAVFEQ D)D9u$LML93DL̴LM|3I L9L}MLAA3Ei D)D93Mi LAE5EM D)D95M] LAC5AS )D95ME@LA@5Ax )D9uL92HUL2MM`L9@@LAEIM L]LEEL9LLA IHH0H}MH8AH}MHA)fEEI!fHMLEM)I DIMHEIAItpItCLAD$dQEL$ D)D9uL9d.DLQ.ML$ LAAKAQ )D9KI LAADAy )D9u$LML9-DL蒲LM-I L9L}MLAA-Ei D)D9-Mi LAE0EM D)D90IU HB50DR D)D910IM@HAN0DY D)D9uL9+-HULDZ-MM`L9@fHAEII HUL]EL9LLA HHH0HuMH8AHuMIA)fEEM!fLELEL)H DHMHEHHtkHt>LAD$OE94$u$It$L!L9(DL˰(ML$ LAA IAI )D9II LAAIBEQ D)D9u$LML9f(DL_LMO(I L9L}MLAA'Ei D)D9'Mi LAE*EM D)D9*IM HA*DQ D)D9*ME@LA@*AP )D9uL9'HUL蔯'MM`L9@LAEHL LUHMEI9HIȾ IHI0HEMH8AHEMH)fADEH!fEHUHEM)I EIIL]IAItlIt>LAD$ME94$u$It$H!L99#DL蒮&#ML$ LAADEA D)D9DI LAA@AQ )D9u$LML9"DL&LM"I L9L}MLAAX"Ei D)D9S"Mi LAE$EM D)D9$ME LA@ %Ax )D9%M]@LAC#%ES D)D9uL9!HULZ!MM`L9?DLAEIM LEL]EL9LLA IHH0HEMH8AHEMHA)fEEI!fHULEM)I DIMHMIAItlIt>LAD$\KE94$u$It$H!L9DLZML$ LAAoCEQ D)D9jCI LAA=AQ )D9u$LML95DLLMI L9L}MLAAEi D)D9Mi LAEXEM D)D9TMU LABqAR )D9nIM@HADA D)D9uL9gHUL#SMM`L9@fDL}AEHL LUHMEI9HIȿ IHI0HuMH8AHuMI)fADEL!fEL]HEM)I DIIHEIAItlIt>LAD$HE94$u$It$L!L9 DL"ML$ LAA@EA D)D9@I LAA;Ay )D9u$LML9DL趩LMI L9L}MLAA(Ei D)D9#Mi LAEEM D)D9ME LA@AP )D9M]@LACES D)D9uL9HUL꨹MM`L9?DL^AEIM LEL]EL9LL޿ IHH0LUMH8ALUMH)fDEI!fHMMEM)I DIMHEIAItkIt>LAD$nGE94$u$It$H!L9sDL짹`ML$ LAA>AQ )D9}>I LAA8EQ D)D9u$LML9DL耧LMI L9L}MLAAEi D)D9Mi LAE*EM D)D9&IU HBCDR D)D9?IM@HA\DA D)D9uL99HUL赦%MM`L9@HAAEHH HUHMEL9HIA HHI0HuMH8AHuMIA)fAEEL!fEL]HEL)H DHIHEHHtlHt>LAD$[EE94$u$It$L!L9 DL蹥 ML$ LAA=EA D)D9 =I LAA6EQ D)D9u$LML9s DLLLM\ I L9L}MLAA Ei D)D9 Mi LAEEM D)D9ME LA@Ax )D9M]@LACAS )D9uL9 HUL聤 MM`L9@@LAEIM LEL]EI9LLA IHH0HEMH8AHEMHA)fEEI!fHULEM)I DIMHMIAItlIt>LAD$DCE94$u$It$H!L9IDL肣6ML$ LAA9EQ D)D99I LAA?4AQ )D9u$LML9DLLMI L9L}MLAAhEi D)D9cMi LAE EM D)D9MU LAB AR )D9 IM@HA3 DA D)D9uL9HULKMM`L9@fDL4@EHL LUHME L9HIȿ IHI0HuMH8A HuMI)fADEL!fEL]HEM)I DIIHEIAItlIt>LAD$,AE94$u$It$L!L9DLJML$ LAA7EA D)D97I LAA1Ay )D9u$LML9EDLޠLM.I L9LeMLAAEi D)D9Mi LAEhEM D)D9dME LA@AP )D9~M]@LACES D)D9uL9tzHULtjMM`L9GHuH}Hh[A\A]A^A_]骏f.E91=HuI#qLML9tHUL躟LMfDLe HHH uIIHuIII0LEI8ED)fAA E DEL!fELmLDL)DH HUHHHHtCAD$?E\$ LD)D9uL92DL՞2M|$ AG;E97u$HuI#wL9g2DL蜞T2I AG]:E97u$HuI#wL9/2DLd2I L9 AG*EG LD)D9uL91HUL1Mg MAD$.E94$u&HuI#t$L91HUL۝1M|$ AG.EW LD)D9uL9e1HUL虝Q1M|$@AG7Aw )LD9uL9$1HULX1M|$`L9HE1HHC0@E9q HuI#uL9]HULIME LA@E9u HuI#pL9HUL踜M]@LACeE9u@HuI#s`E91HuI#qLML9tHULZLM|fDL}A HHH uIIHuIII0LUI8EE)fAAEEEL!fELmLDL)DH HUHHHHtBAD$;AL$ L)D9uL9.DLum.M|$ AG]8E97u$HuI#wL9G.DL<4.I AG6E97u$HuI#wL9.DL-I L9 AG'EW LD)D9uL9-HUL躚-Mg MAD$*E94$u&HuI#t$L9-HUL{s-M|$ AG*EG LD)D9uL9E-HUL91-M|$@AG3Aw )LD9uL9-HUL,M|$`L9HE1HHC,@E9q  HuI#uL9]HUL虙IMU LABE9u HuI#rL9HULXIM@HAE9u@HuH#qE91HuI#qLML9tHULLMfDL} IHH uIIHuIII0LEI8ED)fAAEDEL!fELmLDM)DI H}IIAIItCAD$8E\$ LD)D9uL9,DL,M|$ AG5E97u$HuI#wL9,DLۗs,I AG2E97u$HuI#wL9N,DL裗;,I L9 AG#EG LD)D9uL9,HULY+Mg MAD$F'E94$u&HuI#t$L9+HUL+M|$ AG4'AW L)D9uL9+HULٖq+M|$@AG/Aw )LD9uL9D+HUL蘖0+M|$`L9H[E1HHC+@E9q vHuI#uL9]HUL9IME LA@QE9u \HuI#pL9HULM]@LAC7E9u@[HuI#s1E91{HuI#qLML9tHUL蚕LMRfDL}A HHH uIIHuHII0HUI8EE)fAAEEEH!fELmLDL)EH LUHHHHtBAD$^5AL$ L)D9uL9(DL赔'M|$ AG}1E97u$HuI#wL9'DL|'I AG0E97u$HuI#wL9'DLD|'I L9 AGd AW L)D9uL9G'HUL3'Mg MAD$#E94$u&HuI#t$L9'HUL輓&M|$ AG#EG LD)D9uL9&HULz&M|$@AGR-Aw )LD9uL9&HUL9q&M|$`L9HE1HHCX&DE9q HuI#uL9]HULْIIU HBE9u HuH#rL9HUL虒 IM@HAE9u@HuH#qfE91HuI#qLML9tHUL:LMfDL} HHH uIIHuIII0LEI8ED)fAAEDEL!fELmLDL)DH HUHHHHtCAD$2E\$ LD)D9uL9 $DLU $M|$ AG-E97u$HuI#wL9#DL#I AG=-E97u$HuI#wL9#DL䐹#I L9 AGdEG LD)D9uL9f#HUL蚐R#Mg MAD$E94$u&HuI#t$L9'#HUL[#M|$ AGEW LD)D9uL9"HUL"M|$@AG*Aw )LD9uL9"HUL؏"M|$`L9HE1HHCq"@E9q LHuI#uL9]HULyIME LA@'E9u 2HuI#pL9HUL8M]@LAC E9u@2HuI#sE91MHuI#qLML9tHULڎLM$fDL}A HHH uIIHuIII0LUI8EE)fAAEEEL!fELmLDL)DH HUHHHHtBAD$>/AL$ L)D9uL9 #DL #M|$ AG]+E97u$HuI#wL9"DL輍"I AG)E97u$HuI#wL9"DL脍"I L9 AGEW LD)D9uL9f"HUL:R"Mg MAD$OE94$u&HuI#t$L9'"HUL"M|$ AG<EG LD)D9uL9!HUL蹌!M|$@AG%Aw )LD9uL9!HULx!M|$`L9H;E1HHCq!@E9q HuI#uL9]HULIMU LABE9u HuI#rL9HUL؋IM@HAuE9u@HuH#qpE91HuI#qLML9tHULzLMfDL} HHH uIIHuIII0LEI8ED)fAAEDEL!fELmLDL)DH H}HHHHtCAD$*E\$ LD)D9uL9DL蕊mM|$ AG(E97u$HuI#wL9GDL\4I AG]&E97u$HuI#wL9DL$I L9 AGEG LD)D9uL9HULډMg MAD$E94$u&HuI#t$L9HUL蛉sM|$ AGEW LD)D9uL9EHULY1M|$@AG"Aw )LD9uL9HULM|$`L9H۔E1HHC@E9q HuI#uL9]HUL蹈IME LA@E9u HuI#pL9HULxM]@LACE9u@HuI#sE91HuI#qLML9tHULLMfDL}A HHH uIIHuHII0HMI8EE)fAAEEEH!fELmLDL)EH LUHHHHtCAD$'ED$ LD)D9uL9DL4 M|$ AG<%E97u$HuI#wL9DLI AG\#E97u$HuI#wL9DLÆI L9 AG#AO L)D9uL9fHULzRMg MAD$E94$u&HuI#t$L9'HUL;M|$ AGAW L)D9uL9HULM|$@AGAw )LD9uL9HUL蹅M|$`L9H|E1HHCxDE9q HuI#uL9]HULYIIM HA^E9u jHuH#qL9HUL ME@LA@EE9u@iHuI#p?E91HuI#qLML9tHUL躄LM`fDL}A HHH uIIHuHII0HUI8EE)fAAEEEH!fELmLDL)EH LUHHHHtCAD$$E\$ LD)D9uL9_DLԃLM|$ AG!E97u$HuI#wL9&DL蛃I AGE97u$HuI#wL9DLcI L9 AGAW L)D9uL9HULMg MAD$WE94$u&HuI#t$L9gHULۂSM|$ AGEEO LD)D9uL9%HUL虂M|$@AGAw )LD9uL9HULXM|$`L9HE1HHC@E9q HuI#uL9]HULIIU HBE9u HuH#rL9HUL蹁 IM@HAE9u@HuH#qfE91HuI#qLML9tHULZLMfDL} IHH uIIHuIII0L]I8ED)fAAEDEL!fELmLDM)DI HUIIAIItCAD$~!ED$ LD)D9uL9DLtM|$ AG<E97u$HuI#wL9DL;I AG<E97u$HuI#wL9nDL[I L9 AG E_ LD)D9uL9%HULMg MAD$ E94$u&HuI#t$L9HULzM|$ AG EO LD)D9uL9HUL8M|$@AGPAw )LD9uL9cHUL~OM|$`L9HE1HHC6E9q VHuI#uL9]HUL~IM] LAC1E9u AFE^ DLD)D9uL9DL[vI AFE9.u$HuI#vL9DL#vI AFE9.u$HuI#vL9DLuI L9H]LEAF! En DLD)D9uH9UHUHuAMn MAE E] DLD)D9uH9HUHWuMu AF0EF DLD)D9uH9HUHuMu@AFEN DLD)D9uH9HUHtMu`L9uL5E1IIFlDE9a HuI#vL9]HULytIMV LAByE9f HuI#rL9HUL8tMF@LA@]E9f@HuI#pUE97HuI#wL9E97%HuI#wL9E97HuI#wL9E97HuI#wL9`AE97HuI#wL9AE97HuI#wL9E97HuI#wL9AE97fHuI#wL9AaE97%HuI#wL9E97HuI#wL9E97HuI#wL9!E97HuI#wL9`A|$ L)D9M|$ AGE9t$ HuI#wAL$ L)D9M|$ AG E9t$ 3HuI#w ET$ LD)D9GM|$ AGdE9t$ HuI#wafDE\$ LD)D9M|$ AGE9t$ HuI#wfDA|$ L)D9M|$ AGE9t$ :HuI#wAT$ L)D9OM|$ AGlE9t$ HuI#wiA|$ L)D9M|$ AGE9t$ HuI#wE\$ LD)D9M|$ AGE9t$ BHuI#wfDA|$ L)D9VM|$ AGsE9t$ HuI#wpET$ LD)D9M|$ AGE9t$ HuI#wfDA|$ L)D9M|$ AG$E9t$ KHuI#w!E\$ LD)D9^M|$ AG{E9t$ HuI#wxfDE91EHuI#qf.E91HuI#qf.E91cHuI#q2f.E91wHuI#qFf.E91׹HuI#q馹f.E91HuI#qdf.E99HuI#qf.E91HuI#q鳽f.E91HuI#qôf.E91MHuI#qf.E91QHuI#q f.E91¶HuI#q鑶f.E91}HuI#qLf.L95fA ALmLuIE A]M#eHL鐻I9uELmLuIEA]M#eHL6fDL9fA ALmLuIEA]M#eHLI9fA ALmLuIEA]M#eHLI9TELmLuIEA]M#eHLfDL9ELuEL9tfA ALmLuIEA]M#eHLhI9UELmLuIEA]M#eHL醵fDI9fA ALmLuIE A]M#eHLxI9fA ALmLuIEA]M#eHLI9fA ALmLuIEA]M#eHL頽I9uELmLuIEA]M#eHL鞿fDE9>HuI#vf.E9}'HuI#ufE99HuI#qLML9LDLE3jLELMI sf.E91HuI#qLML9NDLiLM7I fE91fHuI#qLML9NDLiLM7I 5fE916HuI#qLML9.DLgiLMI fE91HuI#qLML9DL'iLMI ZfE91HuI#qLML9DLhLMI fE91HuI#qLML9DLhLMI mfE91HuI#qLML9DLghLMwI fE91ܮHuI#qLML9DL'hLMI 髮fE91HuI#qLML9DLgLMI βfE91HuI#qLML9DLgLMI ZfE91HuI#qLML9nDLggLMWI 黶fE91zHuI#qLML9DL'gLMwI IfE9} HuI#vfE9t$@UHuI#w+E9t$@UHuI#w+E9t$@UHuI#w+E9t$@uHuI#wKE9t$@uHuI#wKE9t$@HuI#wE9t$@tHuI#wJE9t$@HuI#wE9t$@HuI#wE9t$@HuI#wE9t$@UHuI#w+E9t$@THuI#w*E9}@HuI#vkfH]L9fA~ AH]HuDIL#cHL鎪fDAw )LD99PAw )LD9Aw )LD9Aw )LD98OAv D)LD9sDAw )LD9Aw )LD9/Aw )LD9Aw )LD9XoAw )LD9Aw )LD9Aw )LD98OAw )LD9Eg LD)D9f.Eg LD)D9fEg LD)D9wfEg LD)D9fEg LD)D9.fAN DL)D9sDEg LD)D9fEg LD)D9fEg LD)D9fEg LD)D98OfEg LD)D9fEg LD)D9fEg LD)D9fE94$It$H!阮fEL$ D)D9Sj@EN DD)D9x闥EL$ D)D9j遰@EL$ D)D9@EL$ D)D9鲴@EL$ D)D99P@EL$ D)D9#:@EL$ D)D9\s@EL$ D)D9頸@EL$ D)D9鳺@EL$ D)D9ʼ@EL$ D)D9˾@E94$ It$H!fE94$iIt$L!@fE94$iIt$L!@fE94$It$H!afE94$It$L!afE94$It$H!fE94$It$H!afE94$It$L!`fE94$It$L!fE94$)It$L!fE94$It$L!fE94$iIt$L!@fE9.DHuI#vf.H1 HH}f.UHSHHH HHQHH߾ []df.@UHSHH_Ht.H H?H5^?HF]tH[]HH[]H HЃH|ĉff.UHSHH_Ht.HH?H5?HFr]tH[]HH[]HHЃH|ĉff.UHATISHHHLH@H HHH`LZt+LHAH;LH[A\]Af.HsHLNLAtAA뱐ff.UHAWAVHH AUIATS1HHHHHHHHDžƅHgf.IH5V/LIF[L;t,LauI$HLpHL;9MUIU L)HH9RM$HM$LASL(L MNh@IFH=xL;tL`sf.MeLAT$@H uAEEDH=uAL`LLHEIq@H@DpL5^MMALUH @H`L=uAL-uAH}H5vAHHDžhL]LuEL}ELmE`HLHH@HrH:HBM$0H9LJM9MuHHLfB'H@H9t_HHHH9t_H[A\A]A^A_]@H=|L;f.HItJLH,^HH?^DL1LI>@A  LI8HH=>1dIIօUHAWAVHHAUATE1SHHHXHHpHHPHHDžƅHxgfI H5?LIFtXL;xt-Lh^huMEHXLAIHD9LKHS L)HL9 O,HpMULARLLMLffIFH=L;x}Lk]pfDHƅE1L`HxHHHDžfI~H9tH]IHD9LkHS L)HL9VOlLM]LASLhH`MtI HHpIFH5A?VHpjI IYILECA}P8IvH9tHG\IEHxLpfDHE1LH`HHhwHHpLHFH5)VLp>I~I9Lp[pM$HxLApIHdD9CLcHS L)HL9O$LM$LARHLH:INI9gI$LH`RLLMt\ILLpIFH5)ULpthL;h1LpZpfI@H=IFI9SLkZFIBH=.L;hLAZ@H E1HhHHphf.IH5&O/LIF4TL;pt-L`Y`uMMHxLApIHD9HKHS H)HL9N,HhIULRL(L MMgIFH=L;ptL/Ytf.[L`HMLH 'AMH@HULpLM@H@HHMHL-nAH5pALUH @L`HDžhL]L}HEEELmEXLPLHH@IvI>MNM$0L9bMVM95MLPHMcB'H@H9tXHxHHH9tWHXHHH9tWHĈ[A\A]A^A_]DH=,L;xwf.H=M^M9fH=$L;pofHItrHL,VHPH>DH=L;hbIf.LP1LI?ADDHPH?LH=>1\LH=>1\LH=>1\LH=>1{\I}H}H}fHGHxQUHAWIAVAUATSHHL'HAT$@HuKH=MHV LFH}H0H@H5tAHUzMH@HHEEBVIwI?MOLHH@LM,0L9MWM9w,Mt;HIOLH_TLI8L1LI>LMoB/L`MeL8L`yUHxH VuAHE1H5vAHMULH)H`MNHDžpHHyH5 uAH)HƀHDžhL(L Q@L);fDo-zAfDo5zAfDo=zAfP0D(DpDx H`LhBD)2IHD9H{HS H)HL9N,LMMLAQLHAH;(tSEuMEH8LALhHL)H1M}2H`H; tLL8LCD8LIHhH`HM$0L9 HpI9 MtHI5 LHDH`L H@LhLIHHB'E1L HDž(ƅ0H ^IH59/LIF>L; t-LDuMMHLApIHJD9L{HS L)HL9 O,HMULARLHL@MLffIFH=`L; }LCpfDL(IM)I HH M~HyH9n L0M9LAseIp_flag =fDo jALNF falfDFF;DL H8L(CD3L(HHhH`H M$0H9 HpI9MtHILHAH`LhIB'LhM)I% H8H`MgHNH9F LpM9zLAopI core lofDoiALOfDGDHL`LhCD;LhHpH`H8M<0H9HPI9Mt#HILH@LI}HL`IML~B?H`HDžhƅp'A11LH +WANL`HDžhAAE1L}kfDH{HS H)HL9 N4LILRLH}IwH9t A uILLIH۫D9DHhIAI)AI+L`M}Lf,M9LpM9I_residueLfDo%gAfDo-gALv F( ) {D&DnL`H0LhLxC#E1oDLCHS L)HL9O4H0MLASH0H}L9t ? uILLIH讪D9HhHH)HH`IuLH9mHpI9HAndI main lofDo5fAfDo=fAfofALfo fAfofALJop efofAfo%fAfDfo-fAfo5fAD7DG O0W@_Pg`opL`LLhAƄLhIsH`I;M$0H9qICI9.Mt"HILHa=HH;HILfB'H`L9tB>LH IL9t&>H(HHH9t >L8H`IL9t=LH@IL9t=H[A\A]A^A_]H=tINI9B)fH=L; fA11LH aA'L`HDžhAƂH=2L;(fMfH=L; fIL`IELvI9HpI9H next_trIsifDocAI{fAsAC;EH`LhIB1HhI)DH8AE1LH W^A DH8A1LH QADH8A1LH O^ADH8A 1LH GQAgDH8A1LH _AjDH(AE1LH ]AB^DH(A1LH PADH81H`fDL1LI>,H8A1LH tPADH81H`fDHA1LH ^AjFDA,H K_A1LI@A1HLH S_A&L1LI?AH OA1LDHDH8D1D7H`D1D7H`D!D'HH?HH?^DA$DfDA/AAAA AA#%AAg2LH=>1>LH=>1>LH=>1>LH=>1>LH=ۦ>1>LH=ʦ>1>LH=>1>LH=>1y>LH=>1h>LH=>1W>LH=u>1F>LH=d>15>LH=S>1$>H=)x3H=)l3H=)`3H=)T3H=v)H3H=j)<3H=^)03H=R)$3H=F)3H=:) 3H=.)3H=")2H=)2H= )2H=)2H_H_HE_HY_H_UHATISHGHPHtHAƄ$11fA$2f.It$IT$ H)HH9s#H1@8AdH AuIU !%AM IU!%A}IU!%E}IUAAD!%yEuIUAAD!%T@LDHxLHLMLLLH)H)DHIyMHHHH@7I $kA:@8CEDGlFlLH=>1`.CtfBtH=!:(#H=)#H]PHqPfDUHAWIAVAUATSHHHHXM'LA$XM/rLAXM71LƅALIIMu1LIAM,$1LIHALHIHHHM'LA$ILIDHHIAMIDžHMMu @LM@MtAx yM@MuH9DV E~$MLHLM[MtA{ M[MuH9~ DžHfHHRHtz HRHuH9tx ~$HHHHIx$tDLILiIOLHyMHyLIhAANDLHNAL1,ILP@AOLH1LLLEIWLAPARHNAAVDjQQATAuVjQAV,LH`fLDHJHAAD!%u D!HA$AD!%ALbLsIAADLEIM)M)M9HL[K &L9LkL9M8HKE10MWIW L)HL9K1t#H=F/(H=)ff.UHAWAVAUATISHHXHXL+ HAXL3HAXzL;ƅHAL;H1HHA LS0L+HI~AU@LLKM1HOALLr#LDLBLAAD!%A0H!%D IPAAD!%AHIP !%uyAx IP!%u`EPIPAAD!%uDEpIPAAD!%u(ExIPAAD!%AMt$IAADLjLEIM)L+M9)I $MD$O<.LL9It$I9Mt!J<1IHLI $LM|$B9HIL90&AI MMLM9LILLHM $HLHtEHHHHLLLLHLHMtCH<1ILLLHLLHLM9tLHHLI $Mt$M|$B9ƃE11@L{HS L)HL9>K1H=&(UH=w(IH=k(=H=&(1H7=UHATSHLH HHEHHLHuMDHHRHtz yHRHuI9#p @$LLEMufLMIMtEA EMIMuI9x @$LLEMuLM[MtA{ M[MuI9x @$HLEHu+DHHRHtz HRHuI9tx ~HuHUHuHHO@$H [A\]fHMHUHHHM%LUHUHHLUH}HUHH}H/IZ;UHAUIATISHHXI$TLXI$>LX I$ƅLAL$HHFAH1MHڋ2HJHʍ!%u9H!%ILBDIDЉHM+MH)I9HL115MT$IT$ L)HH9hI1H=(i UHAUATASHH(t!tDH H([A\A]]fDHLELHKH}HUHH}Hx$ukLELMu.LM@MtAx M@MuI9tx ~LMHUHHLM.x$0LLELMufLMRMtAz MRMuI9x Hx(HELHu|HUHHHUHUuHx(1HH([A\A]]HHRHtJ yHRHuI9p HHIHty HIHuI9lx ~aL]HUHHL]HYHHf.UHSHHH-HHHH߾[].f.@UHAWAVAUATSHxHGLpML/HIA`HSHAHHJq11L(HAHHH1HHHLd>HDžHHAHHƅLx LƅHDžIUHAZHHLHDžHxHHƅADGEQHL=>DHW@LLHBAHL=AALGH@H5BALHDžDDžLDžHpHDž HMFHHL9K LxLIL9XHhL~hLhHhHHHLHDžIHL9D{HL9MLL_@HLDLGL`L >LL@AH5EAH @LHDžLHDžLDžLDž H`M_HHhL9MuHpL9 HH~HHHH`HpHDžhIH`L9t] ƃI<$M|$LIt$HI0L9ML$L9w{MtHILHI<$I\$IHL9tLHIL9tHx[A\A]A^A_]fD1L^I<$LH >DtMQ HMAH@LH5>ALLHDžDDžHIEHHH9LLIL9'HxL~xLxHxHHLHDžIHL9wfL L5>D@M{@MCL` L Ha=AL 0L=?=ALH@H5?AHDž(DPDžhLpDžxHpHDžAH MFHH(L9_LxL0IL9HhL~hLhHhHH L0HDž(IH L9tDsHHHDžHHLHpOHLL LDL}0LH 4MD@LpL;AL`L@HXH5 @AHhLHpH@HULEL@D LPDžxEEL}EELMEtH@IFHHHH9zM]LPL9HHD~LHDDHH@HPHDžHIH@L9tOHxHHH9ADHtHHhHHH`_Hh~hLhHhI~HDHh~hLhHhI~H "DHtH4HHHHH@DDI<$HD~LHDDI~H@PfH~HHIH`DHtH&\HHHHHtHH(HHH HtHHHHHHx~xLxHxI}HP@7HHH2p@7HhHU@7HH0@7H(H@7HHI)I)I)ff.HUHAUATSHLfL)H,HH6Ml$-HSH9ttHKI9wKLfoMAHackend sfo MAH~ F(o faF,rNLLkCD -H[A\A]]A-1LHH SDPMCPHqLPHn.MH@HDžXMCDNUH5AH5;ALeL0`LHUк,DpLmDUHEEEEEHsH;LKL8H0M,0L9tLSM9wMt&HItXLHH; 1HvH;LkIB/H0L9tHĸ[A\A]] H;fDAzHM'@HGHxqUHAUATISH1HL/A1L-h4AHHIL$A|$LPL%}|>DPMCPHqLPH,MH@HDžXMCDNUH 4AH52;ALeL0`LHUкDpLmDUHEEEEEHsH;LKL8H0M,0L9tLSM9wMt&HItXLHH; 1HƹH;LkIB/H0L9tHĸ[A\A]] H;fDAzH%@HGHxUHAWAVLAUATISHHXL/A`HSINAHHrƅHDž?ZDNPL>H= wZL-c2AH@HDžIELLPLMZ0HUz>D H0MBLH5:ALH@DžHDžXHIMHHH9MNLL9HL~LHHHLHDžIHL9tLƅHDžIMHAZ7D{H`H )MLH~@L0AHMHLELFL \DpLH@H59AH`LHDžhL]HEEEELMEHMWHHL91IELH9HH~LHHHHHDžIHL9tqƃLHIt$I<$ML$I0L9M|$L9MtHIYLHI<$I\$IHL9tHIL9tHX[A\A]A^A_]DHtHAHHHHE11L&I<$KDADHtH$HHHHH~LHIH9D1@7I<$fH~LHI}HmDHHHHId Iq UHAWIAVAUIATSHH`IUAHrH~Mu108LA1HHLIIEHP1HHL`HDžhLXIHHH@L`ƅpAZYHz M&1LHA$@IMEEL0AFHML$`HyDPH $MLHWH=?`H>D@L+APH",AHH5?AHH @H0HH L LMD$H(HL0HDž8DpLDžDžDžDžHDžH8oL8H H`H(IL9 LXL0IL9HHp~LH`hHH H0H8HDž(H HH9t8HHCH9t#I}LHHEmEvLOEZLpXDP@AqH DL *AHL(DL59*AHH@DD LC0PH5 ?AHpLHDžDž@H`DžhDžxLMELmELuELUEL0EL]HXL8HhH`HH0I0H9HpH9LMtHILHH`HhIH0L9txLhIwMOI?H`I0L9IGH9uMtHICLHI?HXI_H`HH9tH[A\A]A^A_]H0EEHDžLcƅLA~LL%'ADDPIqPH p>8LLL5S MRHL'AH50ALDMAHH@HDžLDžDžDžL Dž(bHM\$HHL9HCLH9HPL~PLPHPHHLHDžIHL9t?A}MmLLI}LH=`yAH@IU0LMELHH52AGHLHDžLLDžDžHINH`HH91LXLIL9HPLpD~PLPH`DPDhHHLHDžIHL9tHHH9^^fDH@LD8DPHO0LGCLH@L5|ML%m>H@H5.0AD`HDžHLpDžxLDžLPLPHHHIL9 LCHL9HHH~HHHHHHHHLPHDžHIL9tA}MmLLI}-H08LLL@@@LH5~0AL0L@`H@LpL5fvAHDž8LPLXDžxLDžDžMHML$H`HL9"LXLIL9HPLp~PLPH`PhHHLHDžIHL900H~LH`hH8H~H tfD1L膨I?fDL MLl?L!AH5"ALL0L0L H(Q@HX1"H`fDfDHtHH(H`HhH 1fDD)D/I?1@7H`6fDHP~PLPH`PhI|$HF@HPD~PLPH`DPDhI~H8f.HLHN0LLFLHL5]sAH@H52AHDžLLDžL Dž(=HMT$H`HL9:LXLIL9XHPHpD~PLPH`DPDhHHHHHDžIHL9@HtH-HHHHHtHHHHH-HtHdHH`HhH HtH$HH`HhHHH~HHHHHHPHzHfDHP~PLPHPI|$H"@D0DH(H`DfHtH1YIUHAVIH52AAUHELmATHH L@ISHMHPWHMLH@H]ЉUHEEiLEI>MNIvHMI0L9MVL9MuoI^12I|$IT$ H)HH9Hu@1LޠI>_fDA@1@7I>@HH=R>1I ff.UHAWAVAUATISHH(HP@tWE1/fH{HS H)HL9J11@7H)HHHHHHH@UHAWAVAUATISHHHP@L31HAAHIHI1HIHHHHLLHAI6HHHHLLAIAtnA_AE12DHKHS H)HI9, JLH IUHDžXHPƅa@HHH@1HP@`H9tڸL;1HALLpHLAQLH5x>I耿HpL9t<ڸH L9tBٸL@HPIL9U"ٸKL+1HAM>xP1ILLH1IILAvAUL-q&ADCEWH H J&ADpLmLLO`D0LnMLGLPH@&AH5m4ApL=H&AHMH@L D@D`HDž(L]EEEL}EHEEyظLIt$MT$M $HM40M9IT$I91LxM $EvOMEPH>%AL HuML :%AHUL=%AMEIDPL@LH@HhH5'AHDž(D0L`HpDžxELMEL}Ey׸LIt$M\$I<$HM,0L9MT$M9pMtH<7ILHոI<$Ml$IB/HL9;;LPL+HHDžXIwL@HPƅ`AH1HLLpHLASLH5))IȺHpL9t<ո1LwWAPHHL L-4"ADSHPMA`L=Y"AyEvH ;"ALmHXLL L5MH0MAH5+AD@L!APLpHMH@HDž(H8D`L}EL]EELUEE@ԸLIt$I|$M $HM40I9IT$I9JMtI<1ILH[ҸM $Mt$IC1HL9L1L-MA{ENL LHDXIOPH AL5 AL A|ApLpLMGH H@0L@H5=,ADPLuHDž(D`DžxHEEELUEҸLIt$IT$M $HM40I9.I|$I9uMtI<1IqLHѸM $Mt$IC1HL9&LH1IILAAUL-AHE^L H5MDSLmLMH`HuL5=AM@@HWALH5i.A`L=\AH@pD0DPLuL HDž(EEEL}EHEEѸLIt$MT$M$HM40M9I|$I9MtI<3INLHϸM$Mt$IC3ƃHL9fHXA1LH 2A:(1LM4$1LI<$1LM $1@7I<$},4A)^1@7M4$z1L葌M$1L~DDM $ ADDM $LH==>1sո M$HH:HH*HHH$HHf.HGHxÐfDHGH@ÐfHHUHAVIAUIATSHHXIHHH9IvLvI~LMtbAx<E1Le.MVIV L)HH9I1}Ӹff.UHXHATISHHH9upH_H{1,@MT$IT$ L)HH9s\I1Ҹff.UHATISHHtHtxH)HHw@$HLEHu?HHRHtDZ EHRHuI9x @$HLEHuHHIHty HIHuI9x @$HLEHu,fDHHvHt~ HvHuI9tx ~LMHUHHLM@$HǃHǃtƃ|H [A\A]A^]ÐLUHUHHLUULEHUHHLE5H}HUHH}HI[IUHAVAUIATISHHXI$LXM4$LAXI$mLXI$HH5H9I|$LgHAL$H A1HƅvȸHDLJLAAD!%uEHAAD!%ALBIuIAADLE‰II)I)M9I}M]N4L9DIUI9MMuB7E1.MD$IT$ L)HL9"K1SĸH=ե(觹fDU1HAUATLIHUASHHOL*ŸL1HQHэ!%u:H!%tfLAHDIDȉ@LH1L)8MD$I $LcL9H1HUH[A\A]]DHJAAD!%{DJHJ AAD!%[DR HJAAD!%;DZHJAAD!%rHJ!%zHJ!%HLH5>A1H=A¸UHAWIAVAUATSHHHXL# HA$XL+ HAXL3 HAX HSHze LK1H*ALƅ øL2HJHʍ!%9H!%DHQAAD!%DIHQ AAD!%u|DQ HQAAD!%u`DYHQAAD!%uDDaHQA$AD!%u'DiHQAAD!%HLBDLEIwIH)M)L9I?MON$LL9 MWM9 MtHIwLLiI?Mg1HB'LHHA(L+HAShs`HߋCdDk\xDcXpHlP@D`pH >\DxL|AHALEHK1AQDlARAUWLATLDLZLAAD!%uBE+HAAD!%u'D"ISA$AD!%G AIwIAADLBLE‰II)H0M)M9 N,I?H9 MgM9>MtHI LLɷI?Mo1HB/L HH`A ƅpIL9Spu {xpHHP@AŃ AUl6A|HH5? LpL p\K`H=Z>IDH1QAHAAPWLAPDSXARH0LDHJHAAD!%u@DHAAD!%u%D"HQA$AD!%5 DLBIwIDLE‰II)M)M9" N$I?H9 MOM9MtHI) LLI?MgHB'LHHxA(LHHHXA A l]AHxH5)?XLpH\K`LL-X>LDHA1QAPAUAPS\RHAeH0LD HJHAAD!%u@1H!%u)DHQAAD!%*f.ALBIwIAADLE‰II)M)M9{ N,I?H9? MgM9MtHI, LLUI?MoB/HHL 1H{7ALNL1HH0HpA@LLP1HLAHH.\LNHHAAU0DKxAQKtLPQDSpHARslVChPDkd1AU{`WDC\LAPD[XLAS蕻LD HJHAAD!%ufHHA 1H vC莄]fL1LcnI?LPLH3AL蚸pLLw3AHK\H1A1ATLAQASDC`XH LP1LH=3AL(pLH51\HKXHGA1ATLAQVDC`緸H fDL1LkmI?LL1SmI?L1L;mI?L1L#mI?HHxA1H ?|HHA1H ?ނAHHA1H s?貂LPdMD$LP%fo4Afo 4A1>HPfo4ALfH`Lfo4Afo%4ALfo-4AHHHDž`cP X0`@hP@b;HDžXc@cAHPIL9$AnDDiHQ AAD!%y HQ!%DAHQAAD!%DYHQAAD!%tDIHQAAD!%OqHQ !%y HQ!%DIHQAAD!%xDQHQAAD!%XDAHQAAD!%3yHQ !%DA HQAAD!%DiHQAAD!%DaHQA$AD!%cDYHQAAD!%>fDAsIS !%AK IS!%EKISAAD!%fESISAAD!%FA{IS!%$@LL%\H5N>qLL%\LF.A@7I?DD7I?@7I?7DDI?@7I?HHxA 1H vC~fHHA1H ?^~fAvDA'DADALH=c>14H=(舦H=(|H=(pH=(dH=(XIYֺIֺIֺI]ֺI$ֺIֺIiֺUHAWAVAUATISHHHXL+HAXL3HAXL;HAX HSHz2H Lp1HLƅ(HHP@L+AHAH3@EWL7LHLAӋ{DC`L`H*(H ??LMQ@HpL=LHDH5AMAHH@L`HDžhLLDžDžDžH`裩HIL9tLIt$ML$I$HLhM,0L9 MT$M9! MtH<0I LH袧I$L`Ml$B(HLIL9t聨H:AL1苯L2HzH!%uVDHAAD!%u; HW!%u$DWHW AAD!%@LBIt$IDLE‰II)M)M9 N<I<$H;h8M\$M9 MtHILLmI<$M|$B?E17f.LCHS L)HL9h KML$M9MtI<2ILLģM$M|$C:@LHAHHe[A\A]A^A_]@HVxL+HhHAAHhH`LXL`Hu.IHIHtD;i ~HIHuL9`t E;i HhHLPHPHXlDh Lh8HP HPLh(HXH@0@8HHVLHH5H9`t HH`LL`ٛHhL`HxHIQ0HwHPHIq(HHHHHH藣foo(Afo w(A);Hfos(Afo{(AHDžLc>fo%q(ADK`fo-r(AHfo5v(Afo=~(AP fDo(AX0`@hPp`xpDǀrt_sfHDžƀAtH\L$AAHKLH APL1_LDLBLAAD!%EHAAD!%DIPAAD!%AxIP !%usAp IP!%uZAHIP!%uAEXIPAAD!%u%EHIPAAD!%DAIt$_IAAYADLBLE‰II)M)M9LI$J<M\$H`LhL9OML$L9`"MkH`H`LGH`ID$HHL`HH`HHHXpH`H`LQL9tTLHXLHAALXHIL9tLHHIL9tHPHHH9ZZAWL_>L-"AMCYDL3LHA He[A\A]A^A_]fL1LC\I<$f.AH<2I$LL1ϢH=Q(#H=E(H=9( HȺH(ɺH>ɺHRɺHȺHȺHXɺHȺf.UHAWAVAUATISHHHXL+HAXL3HAXL;%HAXHHH5H9H{H_LLHLAL LHA@DALDHAMu@H MEvLH AL H5ALH0L=AH@DHDžDLDžDž(Dž8iLLLHAH IL9tKHAL1ƅL2HzH!%uDHAAD!%HLBDLEIt$IH)M)L9I<$ML$N4L8L9=MT$M9 M.Mt$E1B74HKHS H)HL9*J ML$M9 MGMt$B7L;HA HHRH;LLM9 H[HCH[A\A]A^A_]f.LHAՐDHWAAD!%D_HW AAD!%Dw HWAAD!%DHWAAD!%|OHW!%`DGHWAAD!%;:HQ!%4DqHQ AAD!%DI HQAAD!%DQHQAAD!%DYHQAAD!%DyHQAAD!%[LHABfDHI LL蠕I<$HIy LLxI<$LHApfDL31HAL;1HIAM`IXAIMu.@MM@MtE;x ~M@MuL9t E;~ HH L(>H(Hx8Dx HP IHx(H@0@8H0IP%L0HI- HH u H9 L谍IxIv(IV0H`LWHHL`HH1HLA@SHpH`L54@LL@@LhLLLpL5yAHL@H5 AHH @LL=LHDžxLLLDžDžLDžH˔LIt$HM$M,0L98 MT$M9H MMl$HC+HP L+HHH߉PAU(HHTA1\HH0HHH(EAMHAIH LXAHAL+DDAL AI`IXHHu5HHHtD;o ~HHuH;t D;n L HHIPL,Dh Lh8HP HLh(HH@0@8HLH?H9t HHLL虊H HHxLN(HV0LH >DIzPH@LLHHALHL AH@HDMB H5 AHDžLLL0Dž8DžHHPDžXL`DžhH ԑH0DSLpHDžxHHME`DZHHALp(LDMELa0@HH5 AHH @DLAHHHHLLDžLLDžDžLLDžLDžH誐LIt$HI$M,0H98qML$M9MMl$H0L B(KIS`D(DVH HL0HHD`LLHH@LLMCHH @HH5 AHDž(DPLpHxLDžDžDžDžLDž^LIt$HM$M40L98;MT$M9M Mt$L@H@H5AC3{IA MAL SH@PLHDžHL`Džh赎L(It$H M$M<0L98MT$M9MAM|$C;LcM<$MtHHAH IL9t跍HIL9t袍LHIL9t膍H HHH9tjHHHH9tNLHIL9t2HH`HH9e[DLL1II<$fLL1II<$f.Mt$foAIDžs();fo AfoAƅM))))I3M~4M$L;8M;|$foMAfoAcfoAk DEk0I$M|$BD24GfDLH(kHfDHAIDADAI<3ILH茊M$I<3ILHjM$I<3IdLHHM$CH<0I_LH&I$B1LGM$$@7I<$ DDI<$1LGM$A1LGI$1LGM$IZ1A4LLLZGI$sAA]AA]I~(I9tWLMLIx(I9t!HL +HL LH L L1@7M$M$CDDI$DDM$1J A9H @A1r A9v @&LH==1荏H=q(ᄸH}H3HHzH۶HH银H駶UHAWAVAUIATISHHX/Mc$t{HH AHEL[LH HUf%ffE9IAAM!IEHtHpJ LNH;veM9UMMC}I}2MILDELULUDEH-I}L8LAH@HxIEHHIL[GLE1IEHPH8HJIM)IM9(IM)MI9(LXL[HDCI!M L[fIHEfoUHM!H5 AAD HLufo]H IHUC\ D3SHELSAN Mc$xMAfAfAfD]9IHEHfouM!A4Lufo}HA|D3A~;I$I$UMc$H5 AD{HH HEHsMHUAfAfAfDMA9EIAAI!IEHtLPKMJH;veM9]MMC}I}0MI(LDEL]虉LMDEH+M]L8LAH@LXIEHPHsI;HDCH!L HsIHEHfo]L!> H=ALufoeHdD3SHH HEE^HuDMc$MAfAfAfDULSA9(M!AAM IEHtHPJ< LBH;8veM9MLICuI}0IILLMHuBLELMHQ*IMH@LIEHHLAHxLSIDHD{I!M LSIIHEfo}HM!C<D;LufDoEIGD:D3LaAHEL LSE^HuDMc$LfffU΋SA9M!AAMIEHtHPJ LBH;veM9MLICEI}-II9LLMHE↸HuLMH(MEH0LH@IEL@AHHLSIDHD{I!M LSHHE IfDo]I!GD;L.ALufDoeIGd:D3IHEM ANLULS Mc$LfffU΋S9I!AAM)IEHtHpJ<LFH;8veM9MLICEI}$.IILLMHE胅HUL]HR'MMHLAH@LHIEHxLSI DHD{I!M LSIHE fDo}HM!HAE< D;LufoEICD:D3II ҋSHEE^LULSDMc$Lf%ffEA9M!AAMBIEHtHpJ LFH;veM9MLICEI}c,IILLMHE$HULMHC&MEHLH@IEL@AHHLSIDDHD{I!M LSHIHEfo]HI!CD;LALufoeL IHuCd:D3SHEAN Mc$MAfAfAfDULS9'I!AAM/IEHtHPJ< LBH;8veM9MLICEI})IILLMHEHuL]H$MMH0LAH@LHIEHxLSI HD{I!M LSIHEfo}HM!H5JAA< D;LufDoEIGD:D3SII HEH{E^LUDMc$Lf%ffEA9"HE fDo]ILII!HGDLufDoeL5AIGdA$LuLuLEgLLHA$H}AEHE>LLHA$LcAEL]H5aALA$HuHLEA$tMH55AHIH ,AD{Mc$I HELMMAfAfAfDULSD9Et IM!7IEHtLxI7MOH;vkI9uIMC}I}'MIqLωMLEHuLEL]HM!MML8LH@IELHAHPILSDHKI!M LSHEfDo}HHILM!E< LEfoEL@HAD LA$LEE;H@Mc$II D[HELLULSfff}D9EcM!MuIEHtLxM 7IWL;vjI9uIMC}I}&MILωMLEHu|~LEL]HM IuL8MٺH@HpIELHL LSHKI!M LSHHHEfo]I!L@IAM LEfoeHL}AdDD{HEAPMc$MAfAfAfDULSD9~HEfo}HLIHM!A<3LMfDoEL @HED0LA$LME)A$tMH5@H5A$H @HLIHMLE ҎE1ۋ{H@HEHKI A$AL}A fD]9JIAAI! IEHtHpNLNL;veM9UMMC}I}"MILDELU|LUDEHI}L8MAH@HxIELXIHKHDCH!L HSHDIIHE1HEfDo]M!HL=@ED L HEfDoeIHuGd SHEDXDA$AA fDULSA9\M!AAM IEHtHPN HJL;vdM9MLICEI} !IIE LLMHEzHuLUHuMMH0MйH@LHIEL@LSLDHD{L!L H{IILLHHEfDo}IH@M!G<HEfoEHADA$HEELLHA$L%@ELeËHX[A\A]A^A_]@L!AAIp IEHtHPJ LBH;veM9MLICEI}G"II LLMHEByHuLUHMMH0LAH@LHIEHHH{IDHD{H!L HHSM!AAM IEHtHPN HzL;vdM9MLICEI}F!IIq LLMHErxHuLUHM]H0MпH@LXIEL@LSL8 @ID{M!M MLKQEAL!IEHtLxI<7IOH;8vlI9uIMC}I};LHHDELMHuwLMLUHDEM]L8L׹H@LXIEHxLSHHDCL!H IHCDGAAD9IEIM!ALIM9QDzAAD9EIL!IHHL9 DDzAAD9EII!HLL9e AKDA9NMHM!ELMII9 DGAAD9uIEII!ALIM9(YDzAAD9%EIM!cHLL9DzAAD9XEIM!HLL9UDzAAD9EIM!HLL9M DzAAD9nEIM!]HLL9EDzAAD9EIL!IHHL9J DDzAAD9-EIM!mHLL9EGAEE9DHL!jIHMI9 EGAEE9IEII!,EMIM9AODA9FIHM!~ILMI9 M$HEHEL jIƃ DA LUA)fMD]ELLLnH=@IB0DI DSHKLEE9E IAI!aIEHtLPMIL;v]I9UIMCuI}pMILHUrHuHIUL0IAH@HPIEL@HKN DHD{H!L HCHDHEfDo]III!fDoeGD IGd;;I$M$HEHEL{hIƃ  AH})fDEUELLmH P@II B0{LUDL[A9P AIM! AMII9IEHPLHJIM)IM9HL9vhI9uHICEI}tIItaLHuLMHEpLMHuHLEIULH@IEHPHHPHIML[DID{M!M L[fDHEfDo}IIM!foEG<;HAD;x;L1IEHHLHyII)IM9 LL9vpM9MLIC}I};IItiH}LHuLMHUoHULMHHMHuMEIEH@L@HLHHH]IHLSDDL1IEHHLHyII)IM9 LL9vpM9MLICMI}IItiLHuLMHUHM oHUH}HLMHuMELHH@L@IEHHHuIHLSD DLE1IEHPH8HJIM)IM9 LH9vtM9ULICEI}II LHuDEHELU=nHMHUHDEHuMMH@IELHHHʹHPHIM| LHDE=iHKDEIL1IEHHLHyII)IM9 LL9vpM9MLIC}I}CIItiH}LHuLMHUbmHULMHHMHuMEIEH@L@HLHHH}IH LS fDME1IEHPH0HJHL)HI9 LH9vtM9]LICMI}9II LLUDEHML]lLMHUHDELUM]IEH@LXHLHPHIM LHLDEgHs;IDEL1IEHHLHyII)IM9 LL9vpM9MLICMI}-IItiLHuLMHUHMkHUH}HLMHuMELHH@L@IEHHH IH1 H{D]DLME1IEHPLHzIM)IM9 HL9vrI9uHICUI}II LωMHuLEHUjH}LEHHuM% MMH@HIELHH8HPHI M HuLHljMLEeLSMILE:fL1IEHHLHyII)IM9 LL9vpM9MLICEI}IItiLHuHUHELM jHUH}HHMHu MMH@IELHHHHHH IH LSDDL1IEHHLHyII)IM9LL9vpM9MLICMI}rIItiLHuLMHUHMBiHUH}HLMHu MELHH@L@IEHHH IH LS fDL1IEHHLHyII)IM9*LL9vpM9MLICMI} IItiLHuLMHUHMzhHUH}HLMHua MELHH@L@IEHHH5 IHi LS fDLME1IEHPLHzIM)IM98HL9vrI9uHICUI} II$LωMLEHUHugLEH}HLMM5 IuLHH@HpIEHPHI MHuLHljMLEbLSMILEzfL1IEHHLHyII)IM9*LL9vpM9MLICMI} IItiLHuLMHUHMfH}HUHLMHuMEH@LIEL@H8HHHIHLSDDHME1IEHPLHzIM)IL90HL9vtI9uHICUI}( HH$HDEHuLMHUeLMH}HHuDEIMH@HIEHHH8HPHHMHuLHDELM`LSHDELMfDEzAEE9 IDHI!JELII9DAAD9DHA pEfD]H&IEHVHHt5HxL :HL;w$LHHIHH#EL HEI9UIMCEI}LHULEHdHIMLUH@HuIELHHIvf. ANDufEHFIELYIHt5LPO IL;w$LHILHH#EH HEvM9]LICuI} HL]HuHcHI}LEH@AHuIELHxIufLH9vtM9ULICEI}IILHuDEHELU,cHMHUHDEHuMMH@IELHHHʹHPHIMkLHDE,^L[IDEPf.II)MM9LXLS _IM)MI9LXfHKDII)MM9LXLSDfDII)MM9LXLSDfDIM)IM9LXf.LSDII)MM9LXLSDfDIM)IM9LXfLSDII)MM9LXLS II)MM9LXLS II)MM9LXLSDfDIM)IM9LXfLSDII)MM9LXH{DfDHL)LH9HxfHs;MDLE1IEHHLHyIM)IM9HL9vhI9UHICEI} IItaLHuHEHU=`H}HMHHufMMH@IELHHHHHHI7MHKDl@1E1fDE11fDHuL]~\HuL]HED~EfElEEDLEHUF\LEHUHED~mfElEmLL[DIfDHZI{ZIHhZI[ZIrHHZIgH8ZIH(ZIHZIIM)IM9%LPHKDfDHL)HL9HHxL[DfDLSE1fLSDE1HKE1ZfLSDE1LS E1fL[E1fLS E1rfLS1LSDE1LSDE1Hs;E1ZfLSE1jfLS E1bfH{DE1LUDEHML]7ZLUDEHML]HE~MflAMH}HuLMHUYHuH}LMHUHE~eflAe|HuHMLMHUYHuHMLMHUHE~mflAm#HuDELUHEtYHuDEHED~MHELUfElEMHuDELUHE1YHuDEHE~EHELUflAEHuLMHUHMXHuLMHUHMHE~MflAMDEHuHULMXDEHuHULMHE~mflAmH}HuLMHUnXHuH}LMHUHED~mfElEmHuHMLMHU+XHuHMLMHUHED~MfElEMMHUHuLEWMHUHuLEHED~mfElEm HuHMLMHUWHuHMLMHUHED~mfElEmKHuHMLMHUdWHuHMLMHUHED~MfElEMHuLMHUHE!WHuLMHE~mHEHUflAmMHuLEHUVMHuLEHUHE~MflAMLLH=UI0LH*UIHKDE1;LMHEqVLMHED~uHEfElEuLMHE>VLMHED~UHEfElEUNDELU VDELUHED~UfElEUDELUUDELUHE~MflAMLMHEULMHE~uHEflAuDEL]vUDEL]HE~UflAUDEHuLMAUDEHuHE~uLMflAuMHuLE UMHuHED~uLEfElEuMHuLETMHuHE~ULEflAUBLMHETLMHE~UHEflAUlLMHukTLMHuHE~uflAuLMHE:TLMHED~uHEfElEuLMHETLMHE~mHEflAmLMHESLMHED~UHEfElEUL[DE18HuHUHESHuHUHED~MHEfElEMAHuLMHEUSHuLMHED~uHEfElEuQHU"SHUHED~UfElEUe@UH@II HAWAVAUIATSHXHNH}HuL!HLMHIEEH9LLA IHH0H}LmH8AA)fEEM!fA MLEI)EI LUIIAItmItBHAD99u,HuH#qHML98yDLKHM!yH HA؍DA DD)D9ՍH HADQ DD)D9u$HML9xDLkKHMxH H9LeEMHA[xDq DD)D9XxLq LAFxAN D)D9xMF LA@xEP DD)D9xM^@LACxEK DD)D9uL9 xHULJwIN`H9HLe@L=N@EIM ELuL9LMA HHI0H}LH8AIA A)fAL]EEM!fELEL)H EHLMHHthHt?LAD$ E9<$u%HuI#t$L9vDLIuIL$ HAnQ D)D9mH HA DY DD)D9u$HML9uDLCIHMuH H9LeEMHA+uDq DD)D9(uLq LAF}uEV DD)D9{uIV HBuDB DD)D9uI~@HGuDO DD)D9uL9tHUL~HtIN`H9ILeDL=8@EIM ELuL9LMA IHI0H}IH8ALMA A)fAEEM!fEMLEM)I DIHEIAItjIt?LAD$BE9<$u%HuI#t$L9rDLGrM\$ LACĄAS D)D9„I LAC~EK DD)D9u$L]L9:rDLGL]#rI L9LeEMLACqEs DD)D9qMs LAF@rAN D)D9?rIV HBXrDB DD)D9VrI~@HGsrDW DD)D9uL9vqHULRFbqM^`L9ILefL5@EIM LuLEEL9LM HHI0LUMH8ALUH)fAHMDEI!fEMMEL)H DHMHEHHtkHt>LAD$ E94$u$It$H!L9mDLKElML$ LAAPAQ )D9LI LAAyEQ D)D9u$LML9lDLDLMlI L9L}MLAA!lEi D)D9lMi LAEnEM D)D9nIU HBnDR D)D9nIM@HAnDY D)D9uL9kHULDkMM`L9@H@EII HUL]EL9LLA HHH0HuMH8AHuMIA)fEEM!fLELEL)H DHMHEHHtkHt>LAD$UE94$u$It$L!L9jgDLCWgML$ LAA~Ay )D9~I LAAyEQ D)D9u$LML9fDLBLMfI L9L}MLAAfEi D)D9fMi LAE!iEM D)D9iI} HG:iO )D98iME@LA@UiAP )D9uL92fHULAfMM`L9BfH @EHH EH}L9HIA IHI0HuIH8AL]A A)fAEEL!fEILLEM)DI HEIIAItjIt?LAD$E9<$u%HuI#t$L9dDL@ dI|$ HGb~DW DD)D9_~H HGvDG DD)D9u$H}L9cLDu@H}cH H9LeEMHGEcDw DD)D9BcLw LAFcAN D)D9cMV LABcAR D)D9cM^@LACcEK DD)D9uL9bHUL?bI~`H9ILeL=@EIM E LuL9LMA HHI0L]LH8A IA A)fALMEEM!fEMEL)H DHHEHHtjHt?LAD$E9<$u%HuI#t$L9`DL>`I|$ HG{DW DD)D9{H HGuDG DD)D9u$H}L9|`LDI>H}e`H H9LeEMHG `DO DD)D9`Lw LAF[`AN D)D9Z`MV LABo`AR D)D9n`M^@LAC`EK DD)D9uL9_HUL=_I~`H9ILeL=@EIM L}LEE L9MMA HII0LMMI8LMHE)fAA HUEEI!fEMEL)MH DHMHEHHtlHt>LAD$E94$u$It$H!L9X[DL<E[ML$ LAAzEY D)D9zI LAAqAQ )D9u$LML9ZDLLAD$̂E94$u$It$L!L9UDLJ:UML$ LAA{AQ )D9{I LAApAy )D9u$LML9VUDL9LM?UI L9L}MLAATEi D)D9TMi LAEyWEM D)D9uWIU HBWDR D)D9WME@LA@WEX D)D9uL9THUL9sTMM`L9?fDH=@EII HULEEL9LMA HHI0HuMH8AHuMHA)fAEEI!fEHMLEL)H DHMHEHHtlHt>LAD$E94$u$It$H!L9(PDL8PML$ LAAuEY D)D9uI LAA.nEQ D)D9u$LML9ODL7LMOI L9L}MLAAFOEi D)D9AOMi LAEQEM D)D9QM] LACQES D)D9QIM@HARQ )D9uL9NHUL6NMM`L9ADL@EHL L]HME I9HHA IHH0HEMH8A HEMHA)fEEH!fHUHEM)I EIILEIAItkIt>LAD$\E94$u$It$H!L9JDL5~JML$ LAAsAy )D9sI LAAlAQ )D9u$LML9&JDLo5LMJI L9L}MLAAIEi D)D9IMi LAEILEM D)D9ELI} HGbLDW D)D9^LME@LA@{LEX D)D9uL9WIHUL4CIMM`L9?fDH=@EII H}LEEI9LMA HHI0HuMH8AHuMHA)fAEEI!fEHMLEL)H DHMHEHHtlHt>LAD$c~E94$u$It$H!L9EDL3DML$ LAArEY D)D9rI LAAgEQ D)D9u$LML9DDL43LM|DI L9L}MLAADEi D)D9DMi LAEFEM D)D9FM] LACFAS )D9FIM@HAFy )D9uL9CHULk2CMM`L9BfDHȻ@EII EL]L9LMڹ IHI0HuLH8AIA )fALEDEM!fEMLEM)DI HEIIAItjIt?LAD$yE9<$u%HuI#t$L9ADLn1AIT$ HB4sDR DD)D91sH HBogDB DD)D9u$HUL9JADL1HU3AH H9LeEMHB@Dr DD)D9@Lr LAF1AAN D)D90AMV LABEAEB DD)D9CAMN@LAA`AEY DD)D9uL9@HULA0q@IV`H9HLeL-@EIM ELuL9MMA HII0H}LI8A IE)fAALMEEM!fELEL)H EHL]HHtjHt?LAD$#xE9<$u%HuI#t$L9s>DL@/`>IL$ HAFpDQ DD)D9CpH HAdDI DD)D9u$HML9 >DL.HM=H H9LeEMHA=Dq DD)D9=Lq LAF=AV D)D9=MV LAB>EB DD)D9>I~@HG">D_ DD)D9uL9H=HUL.4=IN`H9ILeL-@EIM LmL}EI9MMA HII0LMHI8LME)fAAH}EEI!fEMEL)MH EHML]MHHtlHt>LAD$vE94$u$It$H!L98DL-8ML$ LAAmEA D)D9mI LAAbAy )D9u$LML9|8DL,LMe8I L9L}MLAA8Ei D)D98Mi LAE:EM D)D9:ME LA@:EP D)D9:M]@LAC:AS )D9uL97HUL+7MM`L9?@Ln@EIM LEL]EL9LLA IHH0HEMH8AHEMHA)fEEI!fHULEM)I DIMHMIAItkIt>LAD$3ML$ LAAkAy )D9kI LAA_AQ )D9u$LML92DLo*LM2I L9L}MLAAq2Ei D)D9l2Mi LAE 5EM D)D95I} HG"5DW D)D95IM@HA;5DA D)D9uL92HUL)2MM`L9@H=F@EII ELUI9LLA IHH0HuLH8AIA A)fL]EEM!fMLEM)DI HEIIAIthIt?LAD$ qE9<$u%HuI#t$L90DL(/I|$ HG,hW D)D9+hH HG]D_ DD)D9u$H}L9/LDA(H}/H H9LeEMHG9/Dw DD)D96/Lw LAF/AN D)D9/IV HB/DB DD)D9/MN@LAA/EQ DD)D9uL9.HUL|'.I~`H9ILeL=6@EIM ELuL9LMA HHI0LMLH8AIA A)fALUEEM!fEMEL)H DHHEHHtjHt?LAD$qE9<$u%HuI#t$L9,DL&,I|$ HGFeD_ DD)D9CeH HG\DG DD)D9u$H}L9l,LD&H}U,H H9LeEMHG+DW DD)D9+Lw LAFS,AN D)D9R,M^ LACg,AS D)D9f,MN@LAA,EQ DD)D9uL9+HULT%+I~`H9ILeH5@EII HuL}EL9MMA HII0LMHI8LME)fAAHUEEI!fEMEL)MH EHMLUMHHtlHt>LAD$smE94$u$It$H!L9H'DLQ$5'ML$ LAAdEY D)D9dI LAAN[AQ )D9u$LML9&DL#LM&I L9L}MLAAg&Ei D)D9b&Mi LAE(EM D)D9(M] LAC)EC D)D9)MU@LAB1)AJ )D9uL9 &HUL#%MM`L9?@L@EIM L]LEEI9LLA IHH0HuMH8AHuMHA)fEEI!fH}LEM)I DIMHEIAItkIt>LAD$LAD$hE94$u$It$L!L9(DLML$ LAAn\EY D)D9i\I LAAVEQ D)D9u$LML9DL|LMI L9L}MLAAFEi D)D9AMi LAEEM D)D9M] LACES D)D9ME@LA@AP )D9uL9HULMM`L9?L@EIM EL]L9 LLA IHH0HuMH8AIA)fLmEEM!fA MLEM)DI HEIIAItjIt?LAD$YgE9<$u%HuI#t$L9DLMT$ LAB{ZAR D)D9yZI LABVSEB DD)D9u$LUL9yDLNLUbI L9H]LLeMLAD$Et$ DD)D9Mt$ LAFPEf DD)D9OMV LABdAR D)D9cMF@LA@EH DD)D9uH9HUHMf`L9eCH]LefL5u@EHL LuHME I9HIA HHI0H}MH8A H}IA)fAL]EEL!fEHEL)H EHLMIMHHtkHt>LAD${fE94$u$It$L!L9XDLyEML$ LAAYAQ )D9YI LAA7QAy )D9u$LML9DLLMI L9L}MLAAxEi D)D9sMi LAEEM D)D9 IU HB)DR D)D9%M]@LACBAK )D9uL9HULC MM`L9@fDHI@EII ELUI9 ML׹ IIH0HuII8ALEA D)fMDEM!fLEM)I DIMHEIAItjIt?LAD$cE9<$u%HuI#t$L9DLGM\$ LACZAK D)D9ZI LACMEC DD)D9u$L]L9DLL]I L9H]LLeMLAD$9Et$ DD)D97Mt$ LAFEf DD)D9M^ LACAK D)D9MF@LA@EH DD)D9uH9HUHMf`L9eCH]LeL-q@EIM LmL]EL9MLٿ HIH0LEMI8LEHD)fAHUDEI!fMEL)H EHLMMMHHtkHt>LAD$naE94$u$It$H!L9 DL x ML$ LAAWAy )D9WI LAAjLEA D)D9u$LML9 DLLM I L9L}MLAA Ei D)D9 Mi LAEB EM D)D9> I} HG[ O )D9Y IU@HBv DR D)D9uL9S HUL? MM`L9BfH @EHH EH}L9HIA IHI0HuIH8AL]A A)fAEEL!fEMILEM)DI HEIIAItjIt?LAD$_E9<$u%HuI#t$L9GDL4MT$ LAB!TAR D)D9TI LABIEZ DD)D9u$LUL9DLtLUI L9H]LLeMLAD$nEt$ DD)D9lMt$ LAFEf DD)D9MV LABAR D)D9M^@LACEK DD)D9uH9HUHMf`L9eCH]LeL-ם@EHL LmHMEL9IIA HII0L]MI8L]HE)fAAHUEEH!fEIEL)H EHLMIMHHtlHt>LAD$]E94$u$It$H!L9DLML$ LAANEA D)D9NI LAAFEY D)D9u$LML9CDL,LM,I L9LeMLAAEi D)D9Mi LAEfEM D)D9bME LA@EP D)D9{IU@HBJ )D9uL9tzHULftjMM`L9IHuH}HX[A\A]A^A_]f.E91?HuI#qLML9tHUL LMfDLe IHH uIIHuIII0LEI8ED)fAAEDEL!fELmLDM)EI LUIIAIItBAD$[AT$ L)D9uL9HDL%HM|$ AG-VE97u$HuI#wL9HDLHI AGuUE97u$HuI#wL9HDLlHI L9 AG=EG LD)D9uL96HHULj"HMg MAD$OCE94$u&HuI#t$L9GHUL+GM|$ AG=CAO L)D9uL9GHULGM|$@AG2QAw )LD9uL9uGHULaGM|$`L9HlE1HHCHGDE9q HuI#uL9]HULIIME LA@E9u HuI#pL9HULIU@HBhE9u@HuH#raE9<$HuI#t$H9tHUH {@L}H5ؗ@IL3%Hufx AM#gHLE9|$ SHuI#vH9tHUH< tMV LAB6E9~ ?HuI#rH9kHUH WM^@LACE9~@=HuI#sfDE91cHuI#qLML9tHUL LM:fDL}A IHH uIIHuHII0H}I8EE)fAAEEEH!fELmLDM)DI HMIIAIItBAD$eWAT$ L)D9uL9CDL tCM|$ AGSE97u$HuI#wL9NCDL ;CI AGPE97u$HuI#wL9CDLK CI L9 AG{9A L)D9uL9BHUL BMg MAD$>E94$u&HuI#t$L9BHUL {BM|$ AG>EW LD)D9uL9MBHUL 9BM|$@AGNAw )LD9uL9 BHUL@ AM|$`L9HE1HHCA@E9q HuI#uL9]HUL II} HGE9u HuH#wL9HUL  IU@HBE9u@HuH#rE9<$HuI#t$H9tHUHL @L}H5]@IL Hufx AM#gHLE9|$ HuI#vH9tHUHtM^ LACkE9~ tHuI#sH9kHUHWMF@LA@OE9~@rHuI#pHfDE91HuI#qLML9tHULBLMlfDL}A HHH uIIHuHII0HUI8EE)fAA E EEH!fELmLDL)EH LUHHHHtCAD$TE\$ LD)D9uL9ADL\@M|$ AGDNE97u$HuI#wL9@DL#@I AGKE97u$HuI#wL9@DL@I L9 AG5AW L)D9uL9V@HULB@Mg MAD$9E94$u&HuI#t$L9@HULc@M|$ AG9AO L)D9uL9?HUL"?M|$@AG*IAw )LD9uL9?HUL?M|$`L9HE1HHCh?DE9q HuI#uL9]HULIIU HBE9u HuH#rL9HULA M]@LACE9u@HuI#sE9<$HuI#t$H9tHUH@L}H5@ILsLm0AAM#gHLCE9|$ HuI#vH9tHUH|tMV LABE9~ HuI#rH9kHUH?WMF@LA@E9~@HuI#pyfDE91HuI#qLML9tHULLMfDL} HHH uIIHuIII0L]I8ED)fAAEDEL!fELmLDL)EH LUHHHHtCAD$OED$ LD)D9uL9;DL:M|$ AGJE97u$HuI#wL9:DL:I AGGE97u$HuI#wL9:DL:I L9 AG<1E_ LD)D9uL9N:HULB::Mg MAD$O5E94$u&HuI#t$L9:HUL9M|$ AG=5AW L)D9uL99HUL9M|$@AGjDAw )LD9uL99HULy9M|$`L9HD E1HHC`9DE9q .HuI#uL9]HUL!IM] LAC E9u HuI#sL9HULME@LA@E9u@HuI#pE915HuI#qLML9tHULLM fDL}A IHH uIIHuHII0HUI8EE)fAAEEEH!fELmLDM)DI HMIIAIItBAD$%LA|$ L)D9uL9:DL:M|$ AGFE97u$HuI#wL99DLc9I AG,DE97u$HuI#wL99DL+9I L9 AG{-AW L)D9uL9^9HULJ9Mg MAD$1E94$u&HuI#t$L99HUL 9M|$ AG1E_ LD)D9uL98HULa8M|$@AG@Aw )LD9uL98HUL 8M|$`L9H E1HHCi8@E9q HuI#uL9]HULIIU HBwE9u HuH#rL9HUL I}@HG\E9u@HuH#wWE91HuI#qLML9tHUL*LM}fDL} HHH uIIHuIII0L]I8ED)fAAEDEL!fELmLDL)EH LEHHHHtCAD$HET$ LD)D9uL97DLE6M|$ AGCE97u$HuI#wL96DL 6I AGUAE97u$HuI#wL96DL|6I L9 AGd*E_ LD)D9uL9F6HUL26Mg MAD$.E94$u&HuI#t$L96HULK5M|$ AG-EO LD)D9uL95HUL 5M|$@AGQ>Aw )LD9uL95HULp5M|$`L9HE1HHCQ5@E9q  HuI#uL9]HULiIM] LACE9u HuI#sL9HUL(MU@LABE9u@HuI#rD9'HuH#wH}L9tHULH}fDH]H5@IHKLmfx AL#cHL@D9g HuI#vL9tHULMtM^ LACE9f HuI#sL9dHULPMN@LAA}E9f@HuI#qvD9'HuH#wH}L9tHULH}fDH]H5Z@IH3Lm0AL#cHL@D9g ~HuI#vL9tHUL=tIV HBaE9f kHuH#rL9mHULYMN@LAAFE9f@iHuI#q?E91HuI#qLML9tHULLMsfDL}A HHH uIIHuHII0H}I8EE)fAAEEEH!fELmLDL)EH LUHHHHtCAD$BED$ LD)D9uL90DL0M|$ AGl>E97u$HuI#wL90DL0I AG;E97u$HuI#wL90DLS{0I L9 AG$EW LD)D9uL9E0HUL 10Mg MAD$>(E94$u&HuI#t$L90HUL/M|$ AG+(AO L)D9uL9/HUL/M|$@AG8Aw )LD9uL9/HULHp/M|$`L9H E1HHCQ/@E9q HuI#uL9]HULII} HGE9u HuH#wL9HUL IM@HAE9u@HuH#qfE91HuI#qLML9tHULJLMfDL} HHH uIIHuIII0LEI8ED)fAAEDEL!fELmLDL)EH LUHHHHtCAD$?E\$ LD)D9uL9+DLe+M|$ AG9E97u$HuI#wL9+DL,+I AGU7E97u$HuI#wL9+DLl+I L9 AGD"EG LD)D9uL96+HUL"+Mg MAD$$E94$u&HuI#t$L9*HULk*M|$ AG$AW L)D9uL9*HUL**M|$@AG5Aw )LD9uL9u*HULa*M|$`L9HE1HHCH*DE9q mHuI#uL9]HULIME LA@HE9u THuI#pL9HULHM]@LAC/E9u@SHuI#s)D9!rHuH#qHML9tHULHMIfDH]H5[z@IHkHufx L#cHLfD9a HuI#vL9tHULmtMV LABE9f HuI#rL9dHUL0PI~@HGE9f@HuH#wD9"4HuH#rHUL9tHULHU fDH]H5f.E9:HuI#r޶f.E91HuI#q鄩f.E9;dHuI#s3f.E91DHuI#qf.D99HuH#qgf.E91tHuI#qCf.E91HuI#qf.D9?bHuH#w1f.D99HuH#qyf.E91óHuI#q钳f.E91.HuI#qf.E9:լHuI#r餬f.E91HuI#qĮf.D9?nHuH#w=f.D9:HuH#r鋘f.E91HuI#qΑf.D9?jHuH#w9f.D99 HuH#qf.E91dHuI#q3f.E91HuI#qvf.E91\HuI#q+f.E91tHuI#qCf.E91ޤHuI#q魤f.E9;HuI#s[f.D9?:HuH#w f.HH#sHf.L9 fA ALmLuIEA]M#eHL@L9fA ALmLuIEA]M#eHL(I9$ELmLuIEA]M#eHLƐfDI9fA ALmLuIEA]M#eHL逛L9fA ALuEȵDI9fEg LD)D9fEg LD)D9fEg LD)D9fEg LD)D9DZfEg LD)D9 fEg LD)D90GfEg LD)D9fEg LD)D9G^fEg LD)D9o醵fEg LD)D9fEg LD)D9PgfE\$ DD)D9i逆fDEL$ D)D9tt@ET$ DD)D9fDEL$ D)D9+}B}@EL$ D)D9l郗@AL$ D)D9ooAT$ D)D9؇A|$ )D9uzzDAL$ )D9霒DA|$ D)D9uuEL$ D)D9ҋ@EL$ D)D9鲀@E\$ DD)D9鸘fDE\$ D)D9pq@AT$ )D9DEL$ D)D9}}@EL$ D)D9ғ@AL$ D)D9wwET$ D)D9頞@A|$ D)D9ET$ DD)D9'fDEL$ D)D9髁@A|$ D)D9MtL@H(MuH[A\A]]f.DUHfHHAVAUATSLHHMtULIt$LDI|$ IT$0Ml$H9t 諷L裷MtMfL舷MuHHH9tkHHH9tSHLH߾8[A\A]A^]ַfDUHeHHAVAUATSLHHMtULIt$LtI|$ IT$0Ml$H9t ۶LӶMtMfL踶MuHHH9t蛶HHH9t胶H[A\A]A^]KLGHHI9UHAWAVAUATSHHD6N<I)H<H]LL9wYAAHII)̉E5@uPIHt&HLH*tNI~LH)H9wLuHH[A\A]A^A_]@I9HHCfLH+EH[A\A]A^A_]fUHATISHHHLHH LH@HH`LLH߃Zt"AH3H[A\]LAAܐfDHUHAUATSHLfL)H5HHVHMl$6H9t|HvI9wSLarfo@fo @fo?A0so ffy4IQ LLkCD 6H[A\A]]DA61LHH =@q@H=Û'蕯@UHAWAVLLAUIFATE1SHHHHHDžƅtfHsHS H)HI9N,LIMLQLH5Ө-hHMGL9t荳uMMLLApIHFD9H ƅ0E1L@HHH HDž(}LKHS L)HL9 O,LMULARLH5X=觗H@M_L9t̲uIUHLpIHD9yHuHLH`HN0L L(L?HML-\8@H@H}HLELFH5;@HELMLUL]ELmE茲HLhH`HrH:HBM$0H9LzM9MumLHM`B'H`H9t許HH HH9t茱HIL9twH[A\A]A^A_]DHItJHLpDL1LmI}QfDA2 HH?,LH==1趷LH==1׶I޹I޹I޹ff.UHAWIAVAUATSHH(HHP@HuKH=aKHV LFH}HH H5*;@HUMH@HHEE裰IwI?MOL(H LM$0L9 MWM9 M HH@HHL`B'^H@ fo@fo @Htch; ++iH@fo@HpPE1L`fo@fo%@HDžP]HP X0`@@Xi ) @\{HDžH]@]p@LSHS L)HL9 O4LILRLH5k=豓H`MGAL9tٮEuMHLApIHD9LHHL)H'. LH@Mu(MQL9b LPM9b Lfo-@IGSTS>();fo5@L_ /wH@LHE1LBD((vf.H{HS H)HI9g N4LMLAQH5U=L蘒HIwAH9tEuIHLIH|D9E1LoLSHS L)HL9 O4LMLAPLH5=HM_AL9t8EuIHLIHD9LHHL)uHv LL@MeICI9 LPM9 Hxt_trsi MfDo=@@IHA@= 0;E8L@LHCD.H HH@MHzH94 LPM9 Lfo=@fDo@fDo @fDo@dž+ 1;fDo@>fDo%@fDo-@DFfDo5@DN DV0D^@DfPDn`DvpL@LHCƄ*E1Lp@HsHS H)HL9 N4LMLAQLH5=HIOAH9t@EuIHLIHD9DHHHAH)A>H+ HL@Lf,LiM9LPM9Lfo @Hr_residufo@H~ F(e) {VH@LHLB"E1uH{HS H)HL9N,LMELAPLH5=HM^AL9tEuIEHLIHD9LHIM)IHL@MoLFM9LPM9fo@C:HH@LHBD8LHHrH@H:M$0H9jLrM9Mt"HIHLHH9Lf1LH56@)MeB'H)e)HHL L@E1MVIwLH@HKHS H)HL9N$LI$LRLH5= H H;tEM$tBLLARLH5'ތH@H;tuM$HLApIHD97L`L}E1MFM_LLfDHsHS H)HL9N$LI$LPLH5='(H`H;tMM $t?LLAQLH5'H}H;tuM $HLApIHD9:LHL)H&HLMl$'HJI9HI9$MAuefo-@fo5@AA = trfEQ$AA&;A)AqHLLBD&'LIvHI>M$0H9BM~M9Mt"HILHݤLI8LHMaLrB'E1rH{HS H)HL9N,LMELLAPLH5=@H}AL9toEuM]HLApIH)D9HHHH9t(HH@HH9t LH IL9tH([A\A]A^A_]fDHIqLH谣LI8HgHH@LvLJL9LPM9HAsiH next_trfo?HwfDGG;L@LHHC3HHH)2L1L`I}&fDHA(1LH 0@`DHA,H 0@1}`2HA1LH )@R`DL1L7`I?YHA'1LH /1@ `DL1L_I}CfDA#DADA7DADDAA+HA1LH ??b_ HA1LH ??_HAH ?1_DLDI>dD DHH?DHDH85ANAAwLH==1槷LH==1էLH==1ħLH==1賧LH==1袧LH==1葧LH==1耧LH==1oH='ÜH='跜H=و'諜H=͈'蟜H='蓜H='臜H='{HmϹH-ϹHAϹfUAH .@1HAWAVAUATL SID$HLHH1H HDž(ƅ0d]H E1HDž(L`BfMOL9trIHF D9~qHsHS H)HL9lN4LMLASLH5=H`uA~PuIGH9t ILLpH`L@E1IOHHHHDH{HS H)HL9N,LMELAPLH5T'?H@H;tdMUtJLHARHH5'H`H;tuMULLApIH D92L(HL)HVL MD$MuWM9L0M9MA) fo@fo @fo2=fo @AAP++kifo% @fEYTAAV{AAIAQ AY0Aa@H L(L`BD(WE1IGH9tIHD9~qL[HS L)HL9rO4LMLAQLH5q=艂H`uA~PuIWH9t詝ILLpHLE1IWHHHHDHsHS H)HL90N,LMELAPLH5'߁HH;tMUtJLHARHH5'蕁HH;t躜uMULLApIHsD92L(HL)H-L I|$Mu.I9L0M9sMA);Iroup_arrfo-؍=fo5@MQ AA(ive(fEY,A)AqH L(LBD(.E1ufDH{HS H)HL9N4LILPLH5Ԑ-iHIWH9t莛uILLIHID9L(HL)H-H IL$MH9L0M9g LH ki =fo==fDo@fDo @HfDo@>fDo@fDo%@DFfDo-@fDo5@DN dž -1;DV0D^@DfPDn`DvpL L(LCƄ(E1zfLCHS L)HL9O4LMLARLH5м=~HM_L9t uMLLAIHD9L(IM)IL ID$MI98 H0I9 M fDo=4=fo@fo @fo@Aǃ fo@fo%@fAfo-@fo5@E;fo=@Aƃ}ACAK AS0A[@AcPAk`AspAH L(L`BƄ)E1IWH9t˜IHD9~qH{HS H)HL9 N4LILPLH5"=:}H`uA~PuIwH9tZILLpfH LE1MOHHLHDLkHS L)HL9W OlLM]LASLH5'|HH;t賗MMtJLHAQHH5P'D|H H;tiuMMLLApIH"D91L(IM)I<Y L M\$Mu=M9 H0I9 Houp_arriMfDo=fDo s@fDoz@IR0AB8ve()AB<;EEJER H L(L@BD.=E1sHsHS H)HL9 N4LILQLH5|-{H@MGL9t6uMLLAIHD9L(HL)H* L I|$Mu+I9{ L0M9tMA()I_wait<2>fDoX=fDo%_@MQ fEY(AA*;EEaH`H L(LHHBD(+E1H`HDžhƅpyDH{HS H)HL9! N4LMLASLH5q=yHMOL9t唷uIHLpIHD9{HAMH $@1HwHH1HDžƅ2QHE1HDžML`ƁMDIwH9t:IHD9~qLKHS L)HL9O4LILRLH5=xH`uA~PuIOH9tғMHLAp@HLE1MOHHLHDH{HS H)HL9N,LM]LASLH5'xHH;t,IEtILHPHH5'wHH;t㒷uIEHLpIHD90LIM)I-pLLMu.ICI9%HI93M);Hroup_arrfDo-=fDo5@Ir AB(ive(fAJ,E*ErLLCD/.E1LyDHsHS H)HL9N4LILQLH5-vHMGL9t讑uMHLAIHdD9{LIM)I3tLHM4MPL9LM9 LH"@H$@H5"@LIHH,L)H)4LHLLL CƄ)4E1x@L[HS L)HL9dO4LILPLH5-IuH IWH9tnuMHLAIH$D9{HII)I8LLLk9MZM9HI9Ifo@H fDo==fo @IP0A@8}E8A@AH HLH`L?HO@L@(D9LH@H5{#@LL H`H @L(H`LmL@LhLELGLHDžhLpLxH]LuLUEL]EHEEZHLHH@HrH:LJI0L9~LzL9Mt"HIjHLsHH>LIIXH@L9tULHIL9t9LH`IL9tH IL9tH[A\A]A^A_]fDAW1LLH @JA.1LLH ;@vJA1LLH K@VJA1LLH @6JwA=1LLH 3@JA+1LLH S@IHA.1LH @IDHA41LH @IDHA91HH @I DL1LgII>&ADA1DAM^AA8A{ HH?LH=.<1LH=<1LH= <1ݑLH=<1̑LH=<1軑LH=<1誑LH=<1虑LH=<1舑LH=<1wLH=<1fLH=<1ULH=s<1DLH=b<13LH=Q<1"H=r'vH=r'jH=r'^H=r'RH=tr'FH=hr':H=\r'.H=Pr'"H=Dr'H,HUHiH)fDHGHxI UHAWAVAUATISHHL/A`L3HLAAV@IUƅAHHDžAZHHH@KLKcHw0LLpH@L G>LGLPH5A0@H@HDžH`DžxLDžHMWHHL9MuLL9 HxH~xLxHxHHHHDžIHL9t숷LIt$M\$I<$HM40L9cMT$M9MtHILH與I<$Mt$E1B71DHKHS H)HL9s JH+ @HrPLBHHH5"@H@HDžDDžDžDLDžLDžHDžDžoL(HI}HH M<0H9LM9yMt H<0ILH脂HLB8LxH IL9teH`DCLpH@Hr HxHDžhH`H5"@DpLBLDžL(HM]LH M<0M9?HI9]Mt I<2ILH蔁LHxLC:H HH9tuDCAALHpHxDIV MFH@HDžHTHH54(@Dž腂L(HMMHH M<0L9LM9yMt H<7ILH蚀HLB?HxH HH9t{L`H@IL9t_LXHIL9SS1L=I<$I<${HXA11H }&SH@ƅPHwH`H@HDžHAAH @11wS!fHtHn|HHHHXAHx~xLxHxIH L=K$HDLpLN LFH@L LH5@LLHDžDž(.HM_HHL9IMHH9qHxL~xHxHxHaHLHDžIHL9t H=I[L,@AHDCLpLG>Hr0HxH@HDžHH5@DLBL Dž(L0Dž8~L(HI}HH M<0H9LM91L:HoDHpLW LGHxH@H5#@LHDžHDžD~L(HMuHH M<0L9|HI91L=:61L1:Hl1L:L1L:H1L9HHHHx~xHxHxIHHtH{HHHH AWHx~xHxHxIHHXA11H 4&N/AEAP HLL HKDDH"HXA11H &xNHtHzHHHH;HXA11H @NVHXA11H i&M4AHHKLH=<1䀷HHGHHةH쩹HH鈩H霩H驹H᩹H٩HGHx UHAWAVAUATSHH L'HAT$L+HHhH HXH`AU0L3HHTH HHAV8L;HHPH H8H@AW@H߉H`L1HH@pHA L 1HH`HA@HHDžfalsLLHHLL HHLMnILILxILE1AeHHDžƅLHDžƅLHDžƅHDžƅHHDžƅL@MUL@1LLA@H@IGHHHH9tLLPIL9HH~LHHH@HPHDžHIH@L9t wDIH|D9SHKHS H)HL9^'N,LM]LASLH5=\H AH;tBwEuA HHLhHzH9 LM9Mt#H`Iw LHuHLB(@HtH uHHHHH@H~LHIH@uDLH5&LZuHA 1LH ?HHH5&ZpZH5ڈ&L5&LDLLILLo1ҨL  HH5/&HƄ*Z2HH5&Z,L L1HLA LLHLA HH54=YPD8LHDžID@LDžLHHM@HL HHD@L=Q?HD0L 5?LPL5?LXL.?H`H LD`LK=L=z>HDXH=?HL`LDL%֋>HXH @HpH52@HU/LEMFH}LHDžDD D0HPDžhDžxL}ELeEEEEpHMMHHL9LLIL9UHH~LHHEHHHDžIHL9tsoLLHIqI9MiM$0L9MyM9Mt"HIHL nHH9LMcB'E11H{HS H)HL9JLHHH5>XDHH=?DPDhD`L@DLLE?L=KHL%e=H;?@D`MEHH@HH5%@HpHLHDžD D0LpDžxLDžDžDžLDžDžHhHDžfH@MnHHHL9 LLPIL9; HL~LHH+ H@LPHDžHIH@L9teDSHtLHDžHN LFLDHH5-@H@LDžeHLHHHHM$0H9*LM9 Mt H<2I-LHcHLMVB"HL9tdL#HA$L+L%&HH5~w&LNAAHHHHKHH@H5i?LLOpD`PL[=HJ?H@DL- ?HmLLGLLL%=HH5@L@HDžHDpLDžLDžLDžDžLDžHDžcHLHLHHM$0I9LM9Mt I<3I2LHaLLIVC#HH9tb DCLHhH@Ir@DTHLpHH5@DMBHLHDžDLDžLDžDžbLLHHIHM,0L9 LM9Mt H<0I- LH`HLMFB(HL9tuaHsL&M$0M$(LMu/@LMIMtAy yMIMuI9t DZ E~}(HtaH@ HHP I$ HLHI9t H LLLXHI$Hz$KL0L%?Iq0MAHDž8H0H5@@H@PLL`DžhLpDžx`LLHLIHM,0M9LM9Mt I<2II LH^LLIVC*HH9t_HHHH9f1LLH5=@) ))_HLHHHHM,0H9 LM9OH1 HH5) @H@Lp L@HDžLLLDLDž_LLHHIHM$0L9 LM9tH1=H1LcH1LHH5&>7HH5=>D8L@H?HLMV`L-p?HPD@LLLL G?LG?0LT?H @HPH5*@L`MFHhLHsHDž LXLpDžxLDžLDžDžLDž.YHHMwHHL9 LHIHL9/ HpLD~pHDDH HLHDžILHL9T@LD8H=?DPIMPH?D@HH5?LLHD Lk?MEH@HPLH`QHpH5?HDžDDH0L8L@DžHDžXDžhDžxWHMVHHL9HLHH9HLD~LHDDHHLHDžILHL9fKVHH5+&:HAIL1H @(HAL1H ~?(hHHA&1H p?(H~LHI~H`FPHHH{HHKHD~HHDDIH(H~LHI~H`AA LDDHDDL HHtHFSHhHHH`1B A9@ @UD HDHmHtHRHhHHH`HtHRHHHHAyA#HH5=.8 HA9L1H @&HAL1H Z?%HtHQHHHHlHtH-QHHHHtHH5Ј=[7HH5=@7LH K?DPD@IxPH5@?D8LLLHH?HM@QLL=?HH@H5]?HDžDDDLLHDžDžLDžDž RHHMD$HIL9eLHIHM9xHpL~pHMhLLHDžILAHL93HD~LHDDI~HHD~LHDDIHp@7HhHp@7HhH6LH=;<1 VLH=*<1UHH5&4HH5e=4D8L@L?HHMZ`H=r?PDL L-^?LLLL I?LO?H @HH5?HkL MBH0LHDžLLDž(Dž8L@DžHLPDžXL`Džh)OH MVHH(L9&HH0HHH9>HpL~pHH.H L0H IHDž(LH L9NHH$HHA1H ? HHDD?HHsHtHMLHHHHHpD~pHDDIGHHtHt_KHHHLHp~pHM\$LHH@7HHHtHtcAKHH(HH=^&GHp~pHIvH D0D'HH(Hb{H;|H|H@|H]|H|HG{H{H|H{H{H{UHAWAVLAUATE1SHH HHP@HHHDžHHHXHHHHHPHH@HHƅHHDžƅHHDžƅHHDžƅfDAIHRD9HsHS H)HL9m=N,LIMLQLH5l=.HAIFH9tJEuE]PAuIUHXLpMMHPLA^@MUHHLApMEH@LA+fDCLLtxKH@MQ H0HDžD H5 @MALLL0Dž8HIfHP1ɺPLH5@))@)HhkIDk 0H@HL=}?HJ0HC @HDžHLDH@L%2?H@HpLBH@H5@DPL`DžxLDžHHLhLHHXLPIH@M40M9B5L`M9e.M,LXC3LH@IL9tGHf1LH5@9))@) HHhLHHXHPHH@M<0H93H`I9~,MULLXB?H@IL9tGfH1ɺ'LH5u@))@)HpTGfS&H1LH5 @))@) GLpLHHLIH@M40M94LM9M0LC7HH@HH9tFHHHL ?HH0L@LHLL?HHH@HH5@HDžLLLDžLDžELpLHHHIH@M,0L90LM9A*MHLB/H@HH9tD["Hf1LH5@.))@)1EHpLHHHHH@M$0H9B2LM9MH<0I$.LH;CHHIC2LHCH@I<7I?2LHBLHI2LHBHP@I<3I1LHBLPHp1JL>fDHp1*HHLB H@HH9t;CLƅE1LILHDžHHLLHz@HLL ?HHLBL?HL?H @H5@LHDžHLLLDžL Dž(L0Dž8BLpLHHHIH@M<0L9-HI9&MtHI60LH@HLLB?H@IL9tALfE1ɺL0H5{@LD) D)@D)0LAHfE1L@H5@OD)0D)@D)@ALHHMUHH@M$0L92LM9r-M*LLB'H@IL9t@Lƅ L ILHDžfEHP1ɺ5LPH52@D)@D)@D)PH@LL8H0IqI9IAHxM,0H9_+MyM9R$Mt"HI.HL>HH9HLjB/LXHrHPH:M,0H9x+LJM9#Mt"HI[.HLc>HH>HLhB/LHpHH8M$0H9x*LPM9#Mt"HI.HL=HH9LMaB'LIqHI9M$0H9xq*MqM9t#Mt"HIi.HL=HH>HL`B'LHpHH8M$0H9x)LPM9"Mt"HI,HL%=HH9LMaB'LXIqHPI9M,0H9x})MqM9`"Mt"HI,HLHLpL`ILhB/LpHDžxƅuLfE1ɺ)L`H5/@LD)PD)@D)`=HIOHpHH9*L`LIL9-HLD~LHpDDxH -HLHDžIHL9t@IO MG HDžHH@DL Dž(;LLHHHIH@M,0L9(HI9r!Mt H<0I{*LH9HLB(LH@IL9t:L0D[LH5<>@IM HMEH0H@HDž8D@LPDžX:HLHHHHH@M$0H9#&LM9MtHIO(LH8HLLB'H@IL9t9{OHLH@L@ HH52B@LL@HDžLDž9LLHHLIH@M,0M9&LM9Mt I<4I"LH7LHLC,H@HH9t8L5?L#HA$#L@#HxHSLHNPLpLH\?HHLFL-=H0L+?H5B@HH@GHDžLLLDžLDžL Dž(HH0Dž88LLHHHIH@M$0L9;#LM9;MtHI%LH6HHLB'H@HH9t6sHLIN MFHDžHHH5D@HH@Dž7LLHHHIH@M<0L9L$LM92Mt H<0I LH5HLLB8H@IL9t5L?H0DcL?LPHLH0LLpH5G@L@H@L0HDž8D@L`DžhDžx5HLHHHHH@M40H9!LM9MtHIK$LH3HLLB7H@IL9t4{L LH5dJ@IK MC*HDž(0HH H@L@DžH4LLHHHIH@M40L9O%LM9 MLLB2H@IL9t3HLH߀LnH(LHDžƅMAMHL#H0HDžHHHHH0HHƅ HDž8ƅ@A$mL31HAIH1HI`MXAMHufDIHIHtD;a ~HIHuM9E;f HHH@Mn(M~0MMt M&IWIAuH@PHLHLLPH50H@B8HP{3HH L@HDžXHPH@`LLpDžxy2HPMT$HHXL9WLL`IL9"HL ~LHH"HPL`HDžXIHPL9tO1H@D{HHLpHw@DH@L%iKLLGH@HhL?LH@H5K@DPHDžHH`DpLDžLDžLDž 1HpMnH0HxL9LLIL9 HH@~LH08H HpHHDžxIHpL9t/HH@HH9t/LHSLLH@It$0HMD$LH=O@HH5O@HHHDžLDžDžH8/9H0LLR@L8HMr LMBHH5R@H @LHDžLDž"/L8LHHHIH@M<0L9THI9.Mt H<7ILH0-HLB?LH@IL9t.LLHIuI}M$0H9xM}M9Mt"HIHL,HH9HLbB'LHrHH:M,0H9xqHBI9$Mt"HI}LH?,LI9LMjB/LIrHI:M,0H9xgMzM9ZMt"HIHL+HH9HLE1LIFLjB/HHDžƅuH{HS H)HL9N,LIULRH5<L HIwH9tE,uMMLLApIHD9LHDžMMƅLhHf1LH5T@))@).,LHHI}LH@M$0I9\LM9Mt I<3ILHC*LLC#LH@IL9t$+LHHHU?Hw HMLLGHHH5T@HH @HDžDž-+LHHMMHH@M<0L9HI9MtHILHC)HLLB?H@IL9t$*DcH=W?Lf?EHHxH P?HpLpLL`H5?HsPLHULCH0HMH@H@H5U@HDžHDPL}LMEEHEEL]E)LHMUHHM$0L9:HI9bMtHILH'HL0LB'HIL9t(HLHHrH:M$0H9xLJM9Mt"HILH_'HH?LIMcB'HL9t@(HIL9t+(L8HIL9t(LH0IL9t'LHIL9t'L(HIL9t'HHHH9t'H`HpHH9t'LHPIL9tg'L HIL9tK'HHHH9t/'LHIL9t'HpHHH9t&HhHPHH9t&LH0IL9t&L@HIL9t&LPHIL9t&LHHIL9tk&LXHIL9tO&H [A\A]A^A_]DHƅ E1L0H HHHDžeHCHS H)HL97N,LIMLQLH5BH= H0MVAL9t%Eu A}P-IHtD9E1HLD[H=?Hr0H HH@HH5Y?LLBHDžDDDžDž(%L LHHLIH@M$0M9L M96Mt!I|5IwLH#LLLCD%H@IL9p$AHf1LpH5;=)`)@)p$L(LHHLIH@M$0M9LM9!Mt!I|5ILH"LLLCD%H@IL9t#LH0ƅ 1MKHHLLHDžH0HDž8ƅ@qf.HLo#LH8D` HP ILH(HIPH@0@8L8VL8HIs Hu I9fLLIxLpDKLH@HMj MBH5 ?LpHDžxDLDž"HpLHHHHH@M<0H9LM9Mt H<7ILH HHLB?H@HH9t!HfL@HHL LHH5?1HDžƅ))@) !HMMHHL9lLLIL9 HLD~LHDDH HLHDžIHL9t LLefH1LH5?))@) LpLHHLIH@M40M9LM9Hp1YHf1LH5A@)p)@)& L8LHHHIH@M<0L9LM9H81-LHH@IP M@HHDžHUHH5+@DžgHLHHLHH@M40I9ZLM9Mt!I|5IiLHtLLLCD5H@IL9tTLk?ZpH1H`LV LFH@HDžhHHH5#@L`Dž_LLHHHIH@M<0L9&LM9 Mt H<0IsLHmHLLB8H@IL9tNL5$?fHLHMt$ MD$H@HDžHH5@LDDž\HLHHHHH@M,0H9ZLM9H1J#DDCLHH5gD@IK HHDžHH@DMCH,DžLHHM}LH@M$0M9 LM9l1LfDL1LwI?FL1LWI<$fDL1L7I<$fDL1LI?$L1LI}fDL1LI}fDHp1HfDHp1HfDHh1zHPqfDL1LWI<$fDH1:HmfDH1HfDL1LI<$fDL1LI>`H1HfD1LHfH1HH;R1LfHf.Hh1BLPfDH1"HfDH1LqfDH81HfDH1HfD1LLf.L@DPLMX H@H@HDžHM@H5{?L@L`DžhHHhLHHXHPHH@M<0H91 L`M9T Mt H<0I5 LHHPHLXB8H@HH9tE1Lpxf.H{HS H)HL9 N,LMULARLH5:=GHpMFAL9toEuIUHhLIH*D9Hf1LH5?=))@)LhLHHXLPIH@M40M9 L`M9Hh1y2H<7ILHHH<2IlLHfHOHHM;I~(I9tBLM7p H LKD!D'HH~LHI}HfLHH@LHw HDžL0LGHHH5?@D Dž8LHHIUHH@M<0H9LM9Mt H<0ILHHLLB8H@IL9tDcH=HxH0DDHp@7HH1DB E9F @ARA LDDHD1D7H.ALH={<1LH=z<1LH=z<1LH=z<1LH=z<1H=`& H=U&HC=Ha>H]?Hz?H?H?H=H?H=HY>H=H1=HE=H =H=H:?H2?HJ?Hb?H?H>H(@H>H?H?H?H?H>H>H>HA=H=H=H=HOH>HU=Hz>Hr>Hj>H?Hz>H?H*>UHAUIATIS1HH+It$IT$ H)HH9s;HtDI$LXt2I$LXt AD$XA|$dAD$\A|$hǃx10DMD$IT$ L)HH9XIIFIvHMI0H9IVH9JMI^14DMD$IT$ L)HH9}ILLAHP[A\A]A^]fDLLHP[A\A]A^]1L֤I>fDLLLfDLfDS I>XHH=U<1HPUHAWAVAUIATSHHHXL#HA$XL3HAXL;tHAXHHXHHH5H9H{H_LLHL}LL%KAL LHA@DSM_ H@MGLLeH5"@LL]HEDUELIuIEI}HHM$0H9fIUI9MxMeB'E17f.LSHS L)HL9KIFLHM$0H9XIVI93MtHICLHܶI>MfB'E12DHKHS H)HL9JfDDDI>LH=J<1Hff.UHAUIATHEIH5m KSHH H]L@HXWHMHH@HuH5@U%HEEܶHMHuL1%I|$MEIMH9w*1HLڮH}HH9t۶HX[A\A]]HH1H5]?H=/LAD$.E94$u$It$L!L9CDL,0ML$ LAAEA D)D9I LAAiAI )D9u$LML9DLLMI L9L}MLAAbEi D)D9]Mi LAEEM D)D9ME LA@ Ax )D9 MU@LAB- AR )D9uL9 HULMM`L9@Lq @EHL LEHME!L9HHA IHH0HEMH8A!HEMHA)fEEH!fHUHEM)I EIIL]IAItlIt>LAD$E94$u$It$H!L9DLML$ LAA EQ D)D9 I LAA AQ )D9u$LML9EDL莾LM.I L9LeMLAAEi D)D9Mi LAEhEM D)D9dMU LABAz )D9~M]@LACEC D)D9uL9tzHULƽtjMM`L9GHuH}Hh[A\A]A^A_]Zf.E91=HuI#qLML9tHULjLMfDLe HHH uIIHuIII0LUI8ED)fAA!E!DEL!fELmLDL)DH H}HHHHtCAD$E\$ LD)D9uL9P DL腼= M|$ AG E97u$HuI#wL9 DLL I AGM E97u$HuI#wL9 DL I L9 AGEW LD)D9uL9 HULʻ Mg MAD$E94$u&HuI#t$L9W HUL苻C M|$ AGEG LD)D9uL9 HULI M|$@AG Aw )LD9uL9HULM|$`L9HưE1HHC@E9q HuI#uL9]HUL詺IMU LABE9u HuI#rL9HULhM]@LACeE9u@HuI#s`E91HuI#qLML9tHUL LMfDL}A HHH uIIHuIII0LEI8EE)fAAEEEL!fELmLDL)DH H}HHHHtCAD$ ET$ LD)D9uL9DL$M|$ AGd E97u$HuI#wL9DL븶I AGE97u$HuI#wL9DL賸I L9 AG#EG LD)D9uL9UHULiAMg MAD$E94$u&HuI#t$L9HUL*M|$ AG AW L)D9uL9HUL鷶M|$@AG!Aw )LD9uL9HUL訷M|$`L9HkðE1HHCg@E9q HuI#uL9]HULIIME LA@E9u HuI#pL9HULMU@LABE9u@HuI#rE9!HuI#qLML9tHUL誶LMfDLu IIL }MMAL}II0HEI8E E)fAHUAEI!fELE}M)A I AIH}IAIt|It>AFEF DLD)D9uL9DLʵvI AFSE9.u$HuI#vL9QDL蒵>I AFE9.u$HuI#vL9DLZI L9H]LEAFPEn DLD)D9uH9HUHMn MAE.E] DLD)D9uH9HUHƴnMu AFEN DLD)D9uH9CHUH致/Mu@AFEV DLD)D9uH9HUHHMu`L9uL5 E1IIF@E9a ~HuI#vL9]HUL鳶IMV LABYE9f bHuI#rL9HUL訳MF@LA@=E9f@_HuI#p5E97HuI#wL91E97HuI#wL9`ET$ LD)D9M|$ AGE9t$ HuI#wfDAT$ L)D9/M|$ AGLE9t$ sHuI#wIE91HuI#qf.E91HuI#qf.E99iHuI#q0f.L9EELuE$nI9fA ALmLuIE!A]M#eHLE9>HuI#vf.E9}HuI#ufE99\HuI#qLML9LDLEsLELMI #f.E91~HuI#qLML9DL'LMI MfE91 HuI#qLML9DL簶LMI fE9} GHuI#vfE9t$@HuI#wE9t$@HuI#w[E9}@&HuI#vfH]L9fA~ AH]HuD IL#cHLfDAw )LD9)@Aw )LD9Av D)LD9D[DEg LD)D9f.Eg LD)D9fEN DLD)D9@E9>HuI#vf.EL$ D)D9@EL$ D)D9@A96HuI#vf.E94$It$L!qfE94$It$L!fHIiHH}If.UHSHHHiHHQIHH߾([]鎴f.@UHATISHHtHtxH)HHw聥H(HHH HP~PLPHPI~H HtH HHHHHx1bHHtH躤HHHHH@~@L@H@H`HzHAT0H(H HULH=I<1HHHH&I۸IH۸I\۸I۸I۸I۸fUHAWIAVLAUATSHHHL#HAT$@L+HLA`HLH߉LH LH@HL LHL@HL`HIHHLI|$MFILHIHLxIHpHHHLE1HDžƅHHDžƅLHDžƅL HDž(ƅ0L@HDžHƅPL`HDžhƅpHHDžƅHDžƅHHDžHHHhHƅHHDžƅHHDžƅ7f.HCHS H)HL9 J.gHHA1H &S= g3LHHH=R=LHP@LD L8LLJHL?H5?oH0H @L@L@HpLHDžLHLLPDžXL`DžhDžx㓶HIEHHH9 HLHH9H`L~`L`H`HHLHDžIHL9yyHtH 蒑HHHHDHtH THHHHAH~LHI}HWHHA 1H f>dHHA1H cP=~dI?!Lf>H ?LL{LH0Mj`HXHPH@LH <DLLHLL(MBHPHH`H @HpH5?LL?HDžDH DžXDžhDžxDžLDžHMUH`HL9HxLHH9 HLpD~LH`DDhHHLHDžIHL9tӏHHP@HLLDKILHDž HHHLH DH@L(LHLHHHLHL`HLHhLHHLL?HH?HH5?LL?HH)LL L L-LH(H0HXHPL8LA?H@H @HuH5?LEMEHUH}HDžHLPDžXL`DžhHpDžxEEELMEEHOLLHHMZHM,0L9HI9Mt H<0ILH]HHLB(HHH9t>L@HIL9t"L0HIL9tL8HIL9HHA1H yK=_HHA 1H K=r_HHhA1H jK=P_wHXL H5 <LMH00M@YHPHH@H`H5?L HDž(@DžXDžhHoLHL@HI0HMSHL9OLL9 Mt H<0ILHrHHHHHHH9tM{HtH!H(HHH CH5JE1HH 3ZH5j?L`>^HtH踉HHHHHD~LH`DDhI}H`AH`~`L`H`I}HBLpHHH5?HPIx0DLM@HpLHHH@HDžxDLDžDžLHLHM0HIyLH9LL9Mt H<0I LHHLIULBHH9tHL9H1EHeH`~`L`H`I}H0HD~LHDDI}H @7HHHtHHHHH^HtHΆHhH`HhH`2HtH蕆HH`HhHH@12DH HH1DHHD~LH`DDhI}HH`~`L`H`I}H@7HHAH0H(H[DDHLH=;1ZLH=x;1ILH=g;18LH=V;1'1@7H@7HH@7HH!p@7HhH`HH` HH=;1葋HżHTHHiH麼HμHHnUHAWAVAUATISHH8H`HSAHzE L+HAU@HL HDžHyHIMHƅH HDž(ƅ0AZLCMHMEQD$ 1LLLƅHDžI L HSLLHr1LA@HMVHHL9LLIL9HHD~LHDDHHHHDžIHL9tQLH5s<HDžI~LHHƅg  A"11LH ?UDCLL@H W<IvPH==LDPLL?H~JLL}L H@H5?`}HHMH@H}LLEMFHDžHLpLxL]HHEEEEE耂H MOH H(L9 M]L0L9 HH0D~LH DD(H H H0HDž(IH L9t[ > HH5%e2 H=`?HO?HDKL0LL?Mx0HPM@L@H5?H@JL0HDž8L`DžhLLpDžxLHH(M]H H@M<0L9WH0I9 M L(IVB8H@H9t-HH5%dH5N?D{H=9?HLHHEDLJ@LH H5?H @HLL0LBLHDžDDLDžDž(Dž8LHH(I}H H@M<0H9n H0I9SMt H<0I LH}H L(MNB8H@L9t~D{H5{%HxcL?L?MDLHHH5?IH0M@HDžHH@HLH8DLDžDž~LHH(MMH H@M<0L9e L0M9{ Mt H<0I LH|H L(IVB8H@H9t}!HH0H@HG LGLHDž8@H5?HPLH0DžX}LHH(MMH H@M<0L9 L0M9Mt H<7I< LH{H L(IB?H@L9t|LHIL9t|HHHH9ty|L(H fD1L9I<$M|$E1B?/LKHS L)HL9KHtH=kHHHHV@7HHH~HI~HHtH,kHHHHLH=5;1rH~HI~HADPDHHHF L HH@7HH'DDHHDpDHhHUISIbIसII IWIII[I I6UHAVIAULmATISH]HPHAT$HK LH5mJLCHMH@U HuH5R?HEEjLEI>MNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1L6&I>RfDA3DDI>2HH=l;1=oIɣ@HGHx UHAVIH5JAULmATISH]HK LCHPWHMLH@HuH5?UHEE:iLEI>MNIvHMI0L9MVL9MuxI^13@I|$IT$ H)HH9Hl@AL9T1L$I>FDDI>7HH=;1mITfDHGHxQUHAWAVLuAUIV L`ATIH5RJMFSHHOHULHPEMH@HuH5?HEEgLhIt$ML$I<$H`LXM<0L9MT$M9 MM|$M^ HPH@B?{L}MFH5p?L]}LHEHEEfHuIOH`HUH9MMLuL9HPLp~PLPH`PhHH}LUHEIH}L9teLhIt$H`I<$M<0H9XM\$M9Mu|M|$E1B?1DLCHS L)HL9KI<$5DHtH{L_HUH`HhH}DDCHuLmH@LV L5JnLDELFH5?LuLUHEEd`LEIt$M\$I$HMM40L9M|$M9MtH<0ILH^I$Mt$IB0H}L9q_@fDADkHEH $JHEHP L@HMH@DmLmH5?HULsEy_LEIt$I|$I$HMM40H9ML$M91L~I$$sH}LmULO LGH@LuLlJH5?LMHELUE^LEIt$M\$I$HMM40L9M|$M91LeDDI<$DDI<$1L6I$UD]DHUH`}AAArLH=;1cHzHrH鄘Hbf.fUHSHHHHHHH[]fDHGHxUHAWAVHUHMAULpATIS1HHXHHHHPH`nII>I1EHh!AH;PtH\HpIFH9t\EHLQ9It$IT$ H)HH9 H4L,LLAPLxLpMt2ILLhIFH5ϯ&CVHh$M\$IT$ L)HH9K4+HXHPL}HMMt+IHHhIFH5n&UIt$IT$ H)HH9eJ4.H`LAPLMLUMI LLhIFH5}<E1L@gULhu#H@H HH|AL`IM9tLZHU,IIIEMVL9tZIL$IT$ H)HH9vQJ<)HHH@@H]@HĘ[A\A]A^A_]HH=c;14`HH=R;1#`HH=A;1`HH=0;1`I9IIIff.UHAWAVL`AUATISHHHHHI$HLI $HL1@HuH}H@HH8HPnf.II<I/EHXAH;8tYH`IvH9tXEHL9MT$IT$ L)HH9$I4L,LLASLhH`Mt2IHHXIFH5B&RHX'It$IT$ H)HH9J4.H@LAPL}LMMt+ILLXIFH5&KRMT$IT$ L)HH9~K4*HPLASHELEHH LLXHFH5_z<E1H0QLXu#H0H HH|AHPHI9tLSWH}.f.IIIEINH9tHWML$IT$ L)HH9aK<)HHL?Ah@HS@ED$LMH]H@MQ LJ$HDEH5?MALUHEL]EVLHLEHMIvIM~M,0L9IVI9whMuBLHLMhB(M $AH}HH9tVHĨ[A\A]A^A_]H<0It7HLTHHHLH1LI뇺s1@7HHHhHH=;1[HH=;1|[HH=;1k[HH=;1Z[H͐I钐H餐H霐HŐff.HGHxUHAUATLeSHHuHN LFH5n?HXWHMH=ƒJH@H}LUEHEE/ULEH;LKHsHMM,0L9tcLSM9wjMu5LkIB/H}L9tjTHX[A\A]]HIt7LH,SH;AM9vD1HH;댐DDH;|H镏fUHSHHHHHHH[]fDHGHx UHAVIH5JAULmATISH]HK LCHPWHMLH@HuH5?UEHEESLEI>MNIvHMI0L9MVL9MuxI^13@I|$IT$ H)HH9Hl@AL9T1L&I>FDDI>7HH=m;1>XI썸fDHGHx1UHAWAVAULmATIU MEISHHxOHUH}HpH5ˀJ|MH@HuH58?HEEHh-RLEHLSHsHMM<0L9L[M9MHp1LzB8^H HxH5s<HFL}KLxM]M9LxQxuiHLݻ9It$IT$ H)HH9XH4L4LLAQH}L}HTIMI9ufDIt$IT$ H)HH9J<6HpH@dDIBH=~IEI9tLKPfH=|MEM9fDLhH}IL9tPHx[A\A]A^A_]H<0ItGLHNLpIMAM95DLp1L_ I HpH HH=;1rUHH=;1aUI)UHAWAVIAUATSHHHHLHH HL@L#HAT$@LeE1It$H0afDI LL8IFH5-;HH8L;0tL8N8IH{0\D9LS0MZIR L)HI9U K4JL(LH L>AWLML}MBjHBH=~$L;0nLMaf.H=|L;0&:H{0LGHW L)HI9L O<(E1n@ILL8IFH5o<L0GL8H0I|$I9tLω88M8ILD9~lIwIW H)HL9J4J LH LARL]LMMCIt$I9zfDHMH(AHHL-{JP@H(DKM^H?DeH@LG0DML`LELGL8HELmEHUEH5?LLLhIvH`IM<0H;8=MVM9M>M~IL$B8H`H9tKE17f.LSHS L)HL9KM,0H;8IVI97MujMnB/L3HAH`IL9tJHĸ[A\A]A^A_]DH<0I!LHwIIHILHPII>v1LI`HBH=~ID$I9LJH5i?L|JLhIvH`IM<0H;8M^M91Ltf.H=vMD$M9PdfDMWIW L)HL9nL O<*E1jHH0H5o>,HFLL8vCL8H0It$I9tLlj8I8NILγD98IOIW H)HL9J4NLL LAQH}LEH?IL$I9vf.H(DKH@H5?yHELG DMLELGLLmEHLhIvH`MM<0L;8IVI9MtI<3ILHFMM~IL$C;H`H9^GT1LfI>HBH=ID$I9LxGyL@>L=CvJIt$H@GH=5?H5.?HDžP=H@IL],H8HxL7?Mk0HI)L5MCL)A=ADHLmL`H@HEH5?Lƀ=DSH ?HDžH=HEDUHE=L}EHEEFLhIvIVI>H`M<0H9)MNM9MtH<7ILHEI>M~IB?H`L9tFH@IL9EfH=1@7I1LMq1LI>+AXADDI>1@7M"LH= ;1JLH=;1JHʀHH쀸H䀸H鿀HԀUHATISHHXHt*HXHtQHXt#[A\]fDLHH [A\]DHLH[A\]H0f.LHH[A\]ff.UHATISHHXHt*HXHtQHXt#[A\]fDLHHH[A\]DHLH[A\]HXf.LHH[A\]ff.UHATISHHXt[A\]HLH[A\]Hf.UHATISHHtHtxH)HHwH=R%}HuINIHD(AD$$El$ H9HD;n }mM~I9t%HHM>HMD;h "HxHHAH9t EwHL5IF(HL[A\A]A^A_]~VI9v DHHM:HMD;h zH{HÿDL@A9LL=HH[A\A]A^A_]fDI~(t IF D;h ?M~MufI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHM=HMIًP HA9LH1t1D;k @IM9~LHMLAHH5 ;H@HHDžLLDž(L0Dž8(%H{LL@H5y'L{ H[(MJ0HpHXMBLL%/>AH5;H@L@HDžHLPL`HhDžxLDž$THsHL LHS(Lc L@0H =ALL-y'L@HH5;HHH@HDžLLLDžDž#HK LL#L=x'LkI{0H[(MCH LLINH9I M9uLMtLvHH [A\A]A^A_]I~(Iv@IM@H~k'MIFHIL=JMfI^ L=/AH}H=;H`HuHULEHDžhLpLxH]HEEL}EE輕HMH @H5;H)H=k/AM.MN MV Mv(LPHHMc0Hj'H@MCH5&;LPHDžXL`LhLpLxHDžDžAIvIN HL-j'IV(M>L@0L .AHLL@HH5;HH@H HDžLLDžLDžHMM^ H{0Mf Mv(H5.AHLCHL=Si'H0H5;H@HDžLLLLL Dž(Dž8@IN IV(H@Lh'M.MNL@0La-AHL@H50;L@H`H@Hh HDžHLPLXLpDžxLDžXI~ LM&L-7h'I^Iw0Mv(L ,AHHMGH@H H5h;HDžLHLLDžLDžIN IV(HL%g'MM^L@0H,AHLH5;L@HH@H HDžLLLDžH Dž(WI>Iv L0Lf'M~Mv(MM0Lx+AH@HMEH@HP H5 ;L0HDž8LHLXL`DžhLpDžxoIN IV(HH=Mf'M&I^L@0HHLL=*AL@HH5g;H@H HDžLHDžLDžIvM.LL%e'MN Mv(MZ0H2*AHHMBH@H56;LHDžLL L(L0Dž8H@DžHn)I>IN HH5)AIV(M~L@0L-d'HHLL@HH@HHH5;HDžLLDžDžH=sd'MMV M^ Mv(L HPHI\$0L=(AH@MD$H5S;H HDž(L0L8L@LHDžXL`Džh&IvIN HpL c'IV(M.L@0LG(AHLpL@HH5;HH@HHDžxLLDžLDž>HMMf I^ L0Mv(LGH5'AHL-b'H@HH5;LHDžLLHLLDžDž MMVHLzb'IN IV(L@0HXH=e;L%&ALH0H8HDžL L(L@DžHLPDžXÌHIH@H5;H0 I>M~H`H d&AMn Mv(LN0LfHpLa'H=;HL`HDžhLxLLLDžDžHMH@H5.;H ;I~ MHL=a'I^IV(L@0L-%AHLpH=;LHHDžLHLDžLDžcHMH@H5n;H MIvLH=%AMV IN(M\$0H@HO`'H=;HH(M|$LHDžLL H0Dž8DžH豊HMH@H5;H M.MNHPLR$AIv IV(L@0L`H=^;L5_'LPHpHxHDžXL`LhLDžLDžHMH@H5;Hn )I~(MLH5#AI^IN Mo0MwHL ^'H=;HHLHDžLHLDžDžQHMH@H5-;H yMIVH0H=;LP HXHDž8L%>^'L@HHL0LPDžXψHIH @H5;H< MINH`L-]'L LwHDžhH=fz;HxL`LpLDžMHMH @H5 z;HuMMFHHT]'Hr LbHDžH=;HLLHDžˇHMH @H5;H8MI^LH=\'IK M{HH=O;HHDžLHDžIHMH @H5;HqM.LMvHP\'MA HH=;LMaHDžLLDždžHMH @H5w;H4MI^H L['Hp LxHDž(H=$;H L0H8L@DžHEHMH @H5;HmI~ILPL L['Mu MeHDžXHhH=;H`LPLpDžxÅHMH @H5g;H0MIVLHZ'IZ MzHDžH=;LHHHDžAHMH @H5;HiMINHL-HZ'Hw LwHDžH=;HHLLDž迄HMH @H5N;H,MMfLLY'IP IXHDžH=;HLLLDž=HIH @H5;HeM>M^HH=DY'HH LhH0H=|;HHDžL L(Dž8軃HMH @H52;H(ML@MvLX'It$ I\$L`H=;H@HDžHLPLXDžh7HIH @H5;H_MIVLpH>X'M_ H=i;HDžxHMoLpLHDž赂HMH @H5;H"I~ILL%W'Mq IYHDžHH=;HLLDž3HIH @H5;H[MHMVL=:W'Hr HH @HDžHH5,;LLB LLDž+LICICIACfDI M9Id>s>I>fUHAUATLgSHHL'HGGHPPtte v,A 11HH ?HH[A\A]]DAH ?11HH[A\A]]@AH 3J11rHH[A\A]]@AH *11JHH[A\A]]I=@UfHAWAVAUATISH@HHGHHHPHH5F6<H@HKAH9tM4$E HLHAPLHL)HkNLLMwlMQM9GLM9 Mfo ?Husing flfo?fo?fo%?I@`fo-?fo5?AA@hoat.APAX A`0Ah@ApPHHLLLpBD:lLqM}HLL9 LHHLLMHHLHDžƅDžLxM;H LEt$L8ILL9 HHHxLpHDžHƅHHILL0HHH@@HfEE11L-XLfDMHEMUDMM]L0IL@LDMIRLhL@L@HDžHIL`H Iu I}(HPHFHX1HPHPHPLAJ|MUMm0fEL=HL@MZI@IwhH HN@IWHPH{PHLHL@H@HXD)`D)pD)H LCpHsHDžHHHXLHDžƅH{H5s]ZL } H{IQI1H5?HIDLH5ڂ?HIH HH(JH(H LTH5jZHI=HHL'LIMZNM. A~8AvCLHH(H HH9t LLHDžIMƅHM LpHxM9% I)11LMHxHIMHxH9 H9W LxIpLMPMXHIPHJ HLHDžIHL9t8LMoIwhHM@LCpL@ILxD~xLxHDxD)PL9tL H{PILXlLHH@HXLhL@ISLPL0H@H`HHPHHIL PL@MuJ5@HDžHL`L8HIL9tLIB(LpHIL9tHHHH9tM4$1LAHtKHH[A\A]A^A_]fLXI HB0H;3L&fHDžLoL;oEt$L`LPILfDo%?AetfDo-?Hcestors fo?HHPIuHfDo5?HfDo=?D DhDp Dx0@@@Xis sfDH\@^.@_HDž_HDž_IuAEIEAEH(fE11L%L=pfDEHEMT$MM\$LHIL@LMIRLL@H@HDžHHLxHIL$ ML$(HPHAHpLPHPLhL~1J|;VMT$M\$0fL=aHBL@IRIIOhH8HL@MO@H@H{PL`LXHLPHX)`)p)8H5LCpHDžH0HHXHsLHDžƅxH{H5WZcL% H{IT$I4$JH5|?HI3DL8H5g|?HIL HLۯH(H LH5dZHIHHLLH@ISLMA|$8At$CH@;HH INH9tHMNHDž(L ƅ0HLpHxL9H)1LI1(H IFI}H9 H9(SIuH(MeIuL0MEHFH L0HDž(MnH L9tH0M_IWhM@LspL@HL@~@H@HH@)PL9t}H8H{PHHXH`HpLXLH@LILhHHN @HxHPLFHNPL@M]J@HHHDžHHPHHH9tLIG(fHAl1LH d?B\DLpH HMD$HxH苧>fDHfoDžLƅHP)LHDžHxH9PsLEt$L8ILfDoD)uI)11Lq@HHt!HmHxHHLxIQHADLxIqHIqLMqI}HLI<$ HG0H;\LfH )HMD$LL #c?~fI)11La4@HxHHyH=%@LIHM7LB2gf.H(HtH'H(I}IUH fDIuH(IML0MMI~H fDLILMHL(B'*fMZIICH(HHMUL9tH>HL(HHLLHHHIDDD0DH(I}MIAMCIzL@H M^L9tH H H@H HH0HLGH HIu:DD0H=$}H=$qHLI+I+X,I,I,-IX-I+I-I+In,I-I;,I+IP+ff.UHAWAVAUATSHHh HHXL# HA$XL+ HAXL3 HAX- HLpHLLPH 1HHH@LH1HHA H5"<Lh HH`L#HAT$L+H,H߉4AU L3H8H߉@AV(L;HD1H߉LAIHHL3IľHALIHHDžLIHHLƅHHDžƅM M}1LAIEI1LxLH5aJDIH0M@H LHL vYH@LH5Ѝ;HDžDž(L0Dž8HMWHHL9 HL HH9 HL~LHH HL HDžIHL9t]M}1LAL0H@H@LHHH0IOHH8H9LL@IL9 HL~LHHH0L@HDž8IH0L9tIE1LDhPHPLpHDžXHHLIHPƅ`LpHDžxƅMAM,$1LAI$I1LPL@LHDžHII0LJLD`H@LsYMAH@PH5,;LpDžxLDžHMEHPHL9HLHH9HL`~LHPXHyHLHDžIHL9tM,$1LALH@H@LHH9HIOHpHH9LLIL9HL~LHpxHHLHDžIHL9tI$1LDhPLHHDžLIHHLƅHHDžƅM3M>1LAII1LHDHLHN0LJLHDžHLVqYLFH@H5;DDLDžLDžFHMGHHL9$HL HH9iHLD~LHDDHYHL HDžIHL9tM>1LAL0H@H@LHHH0INHH8H9LL@IL9BHLD~LHDDH2H0L@HDž8IH0L9t;LLDž@LMu2fLMIMtAy yMIMuI9tP ~$L@HHHL蓥x$HHHPLwHHLPZLSLpHDžxINƅIzHpE1PLIsI;MSI0L98M{L9Mt"HIiLHHH?HMvHZHpL9tHHPHH9tLHIL9tLHIL9t|HHpHH9t`LHPIL9tDHHHH9t(LHIL9t LHIL9tLHIL9tLHpIL9tfDHHA$pHh [A\A]A^A_]@ AAEuNf.HHADHtH"HHHHCHPLH5vu< DžH:+DHHAf.L1L?I<$fDMjMLLE}LLILHDžƅDž@MuVfDLM@M AH yM@fE1{LHHA)HtH޵H8HHH0)HtH\޵HHHH HHDžLOHH0LLƅL0HDž8ƅ@IzHAH Q;11虱HLDž@Hu HHRHtDR EyHRDI9 D` E x$PDAAf LAjHr * 2 + LILHAEjHDž AE L-`?HLL~HLصMMaE1t E+AE)tC;fC9It G;G9LHHH _?H4_?DHAL`H P?DHP?LLxA11LH P?LLHIt$LHLM9LHHHHPHLH@@LHL)Hj"LLMokIzI9!LM9MA}>Hata_typefod?fod?fo%d?Is`fo-d?fo5d?fEChfo=d?ACj(AA[Ac Ak0As@A{PLHLHHCD9kLZLyLLM9HHM9ALLHLN$HDžƅHIDHL9HHH9p L M90 H1LLHCD%LLxMD$LHL9HLhLIHPHL8H@@LM)I HMT$M}L9HI9LA}}H}} }} fDob?HxfDHDLLIT$CD(LHIMHH9LHL[H0H@M|$L8LLLHHL@LPLXPLHH`LhHLLpHxLHLLHLHLLHHDžƅHDžH HLpLxHDžLHPLLJLXD8LL=@[?DHH<LL<HH=Z?LL Z?DLV;H ;LLZ?L L=f.L@H F?HG?L LHPHpH=<Mc@HLH<LLXLLM;HLxH H@HHHH @LMCH@LHDžLL(H0Dž8DžHLPDžXŵH@IL9tdŵ[HPLH=BYLXHM]PHIHLC;H H?LLHH=E?HMmLHHLLLHDžLHDžDžLDžHDžcDMH59E?LH@HĵLLIEHL9t4ĵHIL9HL`CHt<HLIHPLOB;LHxL%ILOYH=6?H`HpLMxHLLHDžhLDžLDžDžDžLDž)CMH55?LH@HõHLIHL9µDAH =11袕DLHCH MYLHWPLV<HPL8LoILoL%@;H=9?HL`LpLHDžDžD L0L@DžHDžXDžhDžxAMH5l9?LH@H_µHLIHL9fHtHHHpHxHM5I|5ILH=A1LLH C?} HD~HHpDDxI}HfDoxD) ID@@7H8H  HH.@fo L)A1AAI| EAAI<AE9EAAtlAtVAt@At*AtAMTMDAMD5M7DAI| I<DAMTMDAMD5M7DAI| I<DAMTME9spDAKASMD5I| MTM7AsI<AK MD5I| MAS(M7As0MTI<AK8MD5A@I| MM7I<E9rO MLD HH@@7HHPHHp.@@@7H8HA1LLH @?>{fHAk1LH 3?{6DfDoHD) oH)+DoHD)DHLMfDoHDžHN$D)ƅ4A1AAI<AqI<E9trt^tJt6t"tKKAEAK4K4DAI<I<DAMMDAI 0I 7DAI<I<EAK4K4E9shDEZArIK<IARI 0K<MI 7Ar AJ(MI<0EZ0II<7K4IAJ8A@I<K4I<E9rO M;ASL,L@_;MjMZ0L H&IH= 4?LHDžHDžDž(;MLH@H53?HLUHsLH~HLAHPfELHH=@5?D)`D)D)Pk;L1LH55?H໵HLIMHL9tHHxL@IMIL#UM LU;MHEHELiIă eA L]A)fMDEELL=,/?LLHB L DSHKHuD9EIAAI! LxIHtLHK<1IH;8vaLxMM9sMCcI{MI LHpHxL LAH@LHLPHxIHK@IDkI!LL HKDHEfDoEHII!fDoMEDD IGL hDžpHDžPLxLPIHHLHyHL)HI9uH`HL9IM!HHHHI L!HPH/LPA EtE$$D H fHL-,?H}L HEO8DKHsA9O4IAAI!w LxIHtL@O8IL;vaHxML9LCgHMI L⬵HHxL MH@LHL@ALPHsIDIDkI!LL HsyfDH=,?II H}L]?7 DKL[D9EAAM!8 LxMeMtML$K<9II;<$vdHxML9xLChHx3MI LثIH LxL(LAH@I2IHpI|$L[M̋ IDsM!MM L[fA DpEfDUMHxIIHHtHHMLIL;v^HxML9wLCH LH2H$HxL8MAH@HHHPLXIMIL#uM LuIAAI! LxIHtL@K40IH;0vaLxMM9sMCcI{=MIzL6HT LxL LH@IIAHPHpHKIDf.IDkI!LL HK[El$AEE9IHEIfomI!ClfouHAtCEqAEE9?IHEHfDomM!E,D#fDouIGt&'fDDiAAD9IHEIfoMI!CLfoUHATE1E1DE1E1DEjAEE9IEII!9EMIM9A DXEfDMM}HxMsIHHt6L@O MXL;w%LHIMHH#EL HENHxML9vLC~H~LHЧHHxL8MAH@HHHPxDIM)L`M9uLXfHxHH9PHCpHxHX]HXHI!Hm(H_LxLXH@H`MLILXMI9vnLxLM9rICBIzHpLpItUL覦HjLxHpMH@I0HIHpLPHI/MH{DDMM9vjHxML9~LCVH~LHt\HLp LpHHxLMH@HHHPLPHHM=LSfvHXHxD~XfElDQME1HxHHHLHyIM)IM9LL9vnHxLL9pHCHHxHpLpItULH/LxHpLH@I0HIHpHHHIMHKDIM)MM9sLPHsME1HxHHPLHJIM)IM9 LL9vjHxLL9pHCHHxIIt\LHp,LpHLxLLH@I9IHxHPHIjMHK@E1E1D1)fLxL`M9aMCaIyILM!HPoHHHxL AH@L`HHHBLxHp~pflAj%ƟHpHx~pflAtI4$H0LPHpHEO\N\H)I)DȃxM$AL9tjtWtEt2t t MLAӃKJ׃MA҃ONЃI<H<A҃ONAӃKJD9LDZBMODRNI<H<OB z(NMDZ0LMKz8@JMD9rfDLLHҜHLLH輜IIM)MM9LPHKDBHpLx~pflAPLLHVHT贝HHHxD~HfElD_sME1LxIHPH8HrIM)IM9=LH9vnHxLL9~HCVH~HpLpItULOHLxHpLH@MHILPHPHIMHsDPLE1HxHHPLLZLL)HI9LL9v}HxML9zLCZHzLpLpItdLHh耟HhHLxHpLH@AM!H8IL`HPLITML[ ME1LxIHPLHrHL)HI9LL9veHxLL9vHCFH~HELMItRL跞HpLxH}LH@MH8ILXHPHI8MHsDxHL)LL9HpHKLS1H{DE1DX1DpLLHaI5Hs1X貚HhHx~hflJ腚HpHxD~pfElDaLhNLhHpHx~pflx2IM)MI9LXHsDIM)MM9-LPHsD'LLHbIIM)MM9LPL[ @HKDE1LXH`肙HxLXHhH`D~hfElDvqHKE1LLH—ILLH謗IB HhHx~hfl_LHl͘HpLx~pflAQ蟘HxHpD~pfElDG;oLxHhD~hfElEzHh8HxHhHp~pflrHsDE1FHsDE1zHL!~ԗHpLx~pflAaL[ E19蘗HxHE~]flZH`jHxHhD~hfElD^H`3HhHxD~hfElDxLxHp~pflAxՖLxHp~pflAA觖HxHE~efla耖LxHpD~pfElE`IEII!AMIM9mIEII! HMIL9nEIM!ILMM9jIEII!lIMM9HٷIٷIٷfDUHX;II HAWIAVAUATSHxLfH}HuM!HxHLLeEHhLMEL9LLA IHH0HML}H8AHMA)fEEM!fA LEM)I DIMH}MIAItjIt?LAD$:E94$u%HuI#t$L9&DL?%ML$ LAA3AQ D)D93I LAAG0AI D)D9u*LpL9%DLՍLp}%I L9L`MLAA%Ei DD)D9%Mi LAE'EE DD)D9'IU HB'DR DD)D9'I}@HG(D_ DD)D9uL9$HUL $MM`L9HH=?HMIEI HpLeEH9ML IIH0LuII8LhHD)f%AHUDEI!fMEI)II EILUIAItjIt=HAI8D9)u#HqH!L98 DL % LMMy LAG0A )D90I LAGD.EW D)D9uL9DL螋I L9LuMLAGdEg D)D9_Mg LAD$"E|$ D)D9"ML$ LAA4"AQ )D92"MT$@LABO"EZ D)D9uL9HULҊM|$`L9:HMH=Y;EII HhLmEH9MMA HII0HuII8AHuIE)fALEA EEM!fELEH)H DHHEHHtiHt>HA5D91u$HuH#qL9 %DLɉ$LMII HA.DA DD)D9.H HA,DQ DD)D9u*HpL9$DL\Hp$H H9L`MHA$Di DD)D9$Li LAE&EM DD)D9&ME LA@'AP D)D9 'I}@HG*'D_ DD)D9uL9#HUL蔈#IM`H9IHML9;EIM LpLmEH9 MMA III0HUII8AHUHE)fAH}A EEI!fEILEI)I DIHEIAItjIt>HA.3D91u$HuH#qL9ODL荇<HuL^ LAC,ES DD)D9,I LAC)A{ D)D9u*LxL9DLLxI L9LhMLAC[Ek DD)D9XMk LAEEE DD)D9MU LAB0AR D)D9/MM@LAALAI D)D9uL9HULVM]`L9HHMDH;EII HxLeEH9MLA HIH0LuII8LpHE)fAHUEEI!fMEH)IH EHLMHHtqHtCHA1DA D)D9uL9DLNzL]M{ LAG+EW D)D9+I LAG'EO D)D9uL9!DLℵI L9LuMLAGEg D)D9Mg LAD$_ED$ D)D9[M\$ LACxES D)D9uML$@LAAAy )D9uL9RHUL>M|$`L9:L ?H}IEM LxLMEH9MM˹ HII0HEII8HpIHD)fAAHUDEI!fELEH)H EHMLEHHtkHt=HG.D9/u#HwH!L9 DLp LMMy LAG)E_ D)D9 )I LAG%AW )D9uL9 DL詂 I L9LuMLAGEg D)D9Mg LAD$N E|$ D)D9J ML$ LAAg EY D)D9d IT$@HB DB D)D9uL9IHUL݁5M|$`L9:H @ ?HuIEI HxLEEH9ML IIH0LUII8LpIHD)f%AHUDEI!fMEI)I EIMLMIAIthIt:F,D9.u#HvH!L9 DLـ HuL~ LAG 'EW D)D9'I LAG#AW )D9uL9E DLn2 I L9LuMLAG Eg D)D9 Mg LAD${ E|$ D)D9w MD$ LA@ EP D)D9 IT$@HB DJ D)D9uL9v HULb M|$`L9:@H=?L]IEI HxLMEL9MLι IIH0HEMI8HpMHD)fAHUDEI!fLEM)I EIMLEIAItkIt>LAC*E9+u#IsH!L9DL~L]M{ LAG~#AW )D9z#I LAG EG D)D9uL98DL1~%I L9LuMLAGEg D)D9Mg LAD$nE|$ D)D9jM\$ LACAS )D9MD$@LA@EP D)D9uL9tmHULi}t]M|$`L9BHuH} mHx[A\A]A^A_]E9/>HuI#wL9tHUL}fDLuLxA HHIEI EMML}II0LMI8E)fAAEEM!fELEpH+MA H DHHUHHHtFLEA@*EP DLD)D9uL9$DL'|$LuI AF&E9.u$HuI#vL9$DL{$I AF%E9.u$HuI#vL9b$DL{O$I L9H]LEAFEn DLD)D9uH9 $HUHa{#Mn MAEEE DLD)D9uH9#HUH{#Mu AF8"Av D)LD9uH9#HUHzy#Mu@AF:"E^ DLD)D9uH9N#HUHz:#Mu`L9uL5eIIF"#E9o HuI#t$L9LHULHz8M\$ LACyE9l$ HuI#sL9 HULzMD$@LA@^E9l$@zHuI#pXfE9/^HuI#wL9tHULy=fDLuLxA HIIEM AEMLL}IH0LMI8E)fA EEM!fLEpH+MH EHL]HHHtEHUBY&DB DHD)D9uL9 DLx LuI AF#E9.u$HuI#vL9 DLx I AF"E9.u$HuI#vL9m DLNxZ I L9H]LEAFEn DLD)D9uH9 HUHw Mn MAEBAU DL)D9uH9HUHwMu AFAv D)LD9uH9HUH}wMu@AFEV DLD)D9uH9ZHUH>wFMu`L9uL5IIF.DE9o HuI#t$L9LHULv8ML$ LAAE9l$ HuI#qL9 HULvIT$@HBE9l$@HuH#ryE9/1HuI#wL9tHULFvfDLuLx HIIEM AEMLL}IH0LEI8D)fA DEM!fLEpH+}H EHLUHHHtEHUB#DJ DHD)D9uL9DL[uLuI AF` E9.u$HuI#vL9nDLu[I AF(E9.u$HuI#vL96DLt#I L9H]LEAF}En DLD)D9uH9HUHtMn MAEAU DL)D9uH9HUHTtMu AFE^ DLD)D9uH9aHUHtMMu@AFAv D)LD9uH9#HUHsMu`L9uL5IIFfDE9o HuI#t$L9LHULxs8MD$ LA@lE9l$ wHuI#pL9 HUL5sIT$@HBRE9l$@vHuH#rLE9/UHuI#wL9tHULr4fDLuLxA HHIEI EMML}II0LEI8E)fAAEEM!fELEpH+UA H EHLUHHHtELMAAAA DL)D9uL9WDLqDLuI AF5E9.u$HuI#vL9DLqI AF}E9.u$HuI#vL9DL|qI L9H]LEAFEn DLD)D9uH9HUH*qzMn MAEAU DL)D9uH9MHUHp9Mu AFA~ DL)D9uH9HUHpMu@AFE^ DLD)D9uH9HUHlpMu`L9uL5/|E1IIFE9o HuI#t$L9DHULp0M\$ LACE9l$ HuI#sL9HULoML$@LAAnE9l$@HuI#qgfE93HuI#sLxL9t#HULgoLxLhA HIL pMLLuIIH0L]I8EE)fAEEEM!fLEuH+UA H EHLUHHHtEH}GDO DHD)D9uL9D DLun1 LeI AD$E9<$u%HuI#t$L9 DL6n I AD$At$ D)LD9uL9 DLm I L9H]LAD$' Et$ DLD)D9uH9r HUHm^ Mt$ MAF EN DLD)D9uH9/ HUHcm Mf AD$ ED$ DLD)D9 Mf@AD$E\$ DLD)D9uH9 HUHl Mf`L9e L}L%xHII$ID$E1L} E9s HuI#uL9EHULl1MU LABE9u HuI#rL9HULHlMM@LAAE9u@HuI#qE9/HuI#wL9tHULkfDLuLpA HHIEI EMML}II0LEI8E)fAAEEM!fELEhH+}A H DHHUHHHtFLUABvEZ DLD)D9uL9DLjLuI AFE9.u$HuI#vL9DLjI AF E9.u$HuI#vL9bDLjOI L9H]LEAFAEn DLD)D9uH9 HUH9jMn MAE?EU DLD)D9uH9HUHiMu AFAN DL)D9uH9HUHiyMu@AFrAv D)LD9uH9OHUH{i;Mu`L9uL%>uI$ID$HI#\$ fE9o HuI#t$L94HULi ML$ LAAE9l$ HuI#qL9HULhMT$@LABE9l$@HuI#rfE91HuI#qLpL9t#HULghLpL`A IIL hMLLuIIH0LMI8EE)fAEEEM!fLEuM)A I DIHUIAIIt?AD$AL$ DL)D9uL9DLwgsI AD$E9<$u%HuI#t$L9KDL At$ D)LD9uL9FDLwc3I L9H]LAD$Et$ DLD)D9uH9HUH&cMt$ MAFEV DLD)D9uH9HUHbMf AD$[E\$ DLD)D9VMf@AD$At$ D)LD9uH9GHUH{b3Mf`L9e L%>nL}I$ID$E/LxLUHxHHI#JHMHfDD9q HuI#uL9%HULaME LA@E9u HuI#pL9HULaI}@HGE9u@HuH#wE9~ 3HuI#t$H9tHUHLa@H]I9OAD$ HUIHHUL`ILuLL<$LT8LMH}IA4L9tfHLEAI#xH}HHHwE9<$HuI#t$E9>,HuI#vf.E9~ HuI#t$H9tHUHL`@H]L9LEAT$1IIMhID$HHL!H@/LmHHE_HuHH}#H}%7LMH}A(L9geHA9\$wHLeA$I#t$HuHHHfE9<$HHuI#t$E9>lHuI#vBf.E9~ HuI#t$H9tHUH _@H]L9AD$ HUIHHUL^ILuLL!LLUH}IAL9tWdIHML#YL]HxHL|@E9<$HuI#t$E9>HuI#vf.E9~@4HuI#t$H9E9~@HuI#t$H9E9~@cHuI#t$H9=E91HuI#qfE9/nHuI#wEf.E9/HuI#wf.E93GHuI#sf.E9/HuI#wmf.E9/=HuI#wf.E9/HuI#whf.D91HuH#qSf.ML#XLmLLHA9\$~@E9>UHuI#v+f.E9>cHuI#v9f.E9>HuI#vf.E9>HuI#vf.E9>HuI#vtf.E9}HuI#ufE9}HuI#uufE9}HuI#ufE9}*HuI#ufE9}uHuI#uKfE9/aHuI#wL9JDL[7I 8f.E9/HuI#wL9DLZI ef.D91HuH#qHpL9DLZHpH @E93HuI#sLxL9DLLZLxI @E91HuI#qLpL9DLZLpI @E9/HuI#wL92DLYI fE9/HuI#wL9bDLYOI f.E9/MHuI#wL9DLKYwI $f.E9} HuI#vYfE9} HuI#vgfE9} 5HuI#v fE9} HuI#vfE9} HuI#vofE9}@HuI#vfE9}@HuI#vmfE9}@HuI#vfE9}@HuI#vfE9}@HuI#vxfH]I9MvH]M&IL]M@L#{L}HLDH]I9EfA~ AH]HuID8L#{L}HLbfH]I9MvM&HULH@H]I9MfLAFHVLuH1III/HUHH#JHMHxHHH]I9MvH]M&ILUMHL#{L}HLDE9<$yHuI#t$OE9<$HuI#t$E9<$GHuI#t$Av D)LD9zDEN DLD)D9"9@EF DLD)D9@EN DLD)D9G^@EF DLD)D9@EL$ DLD)D9ED$ DLD)D9E\$ DLD)D9Av D)LD9 "DAv D)LD9*DAv D)LD9DAv D)LD9'DAN DL)D9DDA DD)D9D~ D)D9]tDD D)D9DE{ D)D9ZqDDQ DD)D9&Dy D)D9DED$ DD)D9XofDD9)QHqH!)HuHIM#l$AH^H]OM;fHuHIM#l$AH^H]WMCf.E9<$HuI#t$mE9:HuI#rf.D9?ZHuH#w1f.E9*HuI#rf.D9*HuH#rf.D9*HuH#rf.E9)_HuI#q6f.E9(HuI#pIxH鎜I餜ff.UHSHHHHHHHH9t~WHH[]UHSHHHHHHHH9t>WHHH߾X[]WUHSHHSXHHYHHHHH9tVH UH{8HH H[][UHSHHSXHHQYHHHHH9tVH UUH{8HH =[HH߾h[]Wf.UHAWAVIAUMATSH@H(HHOHOHGGHHHNL%S1fH5SHEMD$EML$HHH1L@f}EMPLN@L@HDžHI{LH;YM|$ IT$(LPIGLHPHPHHqH|31XMD$L= UfH{PH SML$0L@MPM_IWhIG@HHN@LLL@HHPHX)`)p)_H5LWH{pDžHHHHHXHsHDžƅXH{H5YVLH{IT$I4$UH5)>HIUL\H5>HIUHH HwH(H LUH5!YHIjUIUIuLZULIMHNMA|$8cAt$CLJHPLH IL9tQSHHHDž(ƅ0HWH HLpHxL9I)11%LH I~H(IL9H0H9HM^~HIvA^HH L0HHDž(H HH9tURHMo@MgLIOhLCp~HL@HHH)PL9tQLH{PILXVLLHHL@MWHHJ@HLPMsHJ5PH@LfJ%@HHHDžHJH([A\A]A^A_]fDH)1I1#*@LRM$ IB0H;tPLtHtHOH(I~IVH >DH~HIvAVLI~H LIwCIML(C!TfD0H(I~^MIAMCI}hPLH HIL9tHOHH HL0LHNL PHIu >@0-wRH=Ya$JHIILH IL9u9H]MI~H9t;OLCXLH IL9tOIH{LLLHL@MHLHN @LPIBLPH@HJH @HDžHHHHHG$LLL@I}L=@IHDžHIIUIHAWIAVIAUMATSHhH_L'HUHHMHM)L)HHHH4HuH9_HEH}LMLUNLMLUHEE]LmLULIELUD]HELxGHxLH MHUMHuH}H}IL9tCMLEM9tzIVHMMl$L)HHLD(6@HGIuHwMMH(LOMmI(IEAEI9t&EUL_L_DIEL9uAoMOfMh(I9HMVLH HL)LrILI!OODPf.ArIRLHLH0L9I IzHPH(MRI(HHHxIBABL9uOTOlMI9tfI~MFL9tKKI(L9uMtLKLe~ELmLeMgEAHh[A\A]A^A_]@I(I9uDAoMZH(AIBI(PLXI9 QDHfffffffH9HEHf.HEH}LILE\IH}IL9uHLHDH}tH}JPLMIyIL9tJIRLSJfUHAWIAVIHHHAUMATSHXH_L'HM)L)HHHL,L9ILLMLEHUHuLUJLMLEHUHuHELUAMLEIALULEILULEI9IyL]H}MQLEIIAH}AALUaLMH}IL9tIL]M9tnINHUMD$L)HHL\(fDAxLPLP8IpL9UHpMH(LHIHHHM@I(I@A@L9uMC(LEI9HIFLI HL)LwIMI!O O\Pf.HHxLBLB H9LHpHzH(H@H(LRHrH@@L9uKDLuML]MI9t DI~IVH9tKvHI(L9uMtL`HLe~EMEAMoHX[A\A]A^A_]fI(I9uDAoH(HIPHPM@I(I@A@I9]oLHH(H@H(RLJI9 HfffffffI9-HEMWfAOlI @AoY)]cIHUH}HH9t@GLAH}tH}(GCLHuH~HH9t GINL Pf.UHATISHHtHtxH)HHwKcLDL9uI~Iv ME@L r&IN(IV@LML[@M>I^HHuL<HxH(H5:L`MEHMH @HU!HDžhLpH]ELUEL]E*Bf.M9t)LH;HSH9{AH I9uLjAH(Hĸ [A\A]A^A_]I~ Iv(HLo&IN@IVHHX@L0M.M~HL Z@H(HLShIL@H H5;H @H(HHDžLLDž8L@DžHLPDžXAI~(HPH&MHN0MnM~ LFHxH(HZ@H5;HPH@H HDžXL`LhLpDžHDžb@=LIMN H=Y@ME0MV M^(H@H(L=֔&H@LH5Q:MEHDžHLL L(L0Dž8DžH?IvIN HLX&IV(ILH0L@H(HLX@H5:HH@H LHDžHLDžLDž?HH &MM^Hp0Mn M~(L@H9X@H(HH5=:H0H@H@ HDžLLL L(Dž8DžHy>TI~(HM MnM~ HX0L@HH(L &LW@H5 :H@HHDžLLLLDžLDž=I>MFHL p&Hs H @HDžHH(HH5:LLCLDža=H &Hp0I^ MN(L@H~V@HH(HpH5&:HH@H HDžxLHLDžDžH@&HO LGH(HDžHH5Z:H @H LHDž1; H=ُ&MMV HM^ Mn(H@H(Lx0H?T@H@L@H5:LHDžL L(L0L8DžHHPDžX:iLMMnH(IG H5&H @HMGH5:HHDžLLDž:HH &IMNHp0MV M^(L@H6S@H(HH5:HH@H HDžHLLLDžDž(v9QI~IH H&L@ H5Z:HDž(H8H(L L@H0H @H@DžH9IvIN HL-&IV(MLX0L@H(HL=R@H50:HH@HLHDžLLDžLDž^89MI^LL&H(MQ H @H5L:L MALHDžHLDž7I~HM>I^ MN(LP0L@HH(L`&L-P@H5:H@LHDžLHLLDžLDžF7!H`H=&M.M~Hr LBHH(H` H @H5:HDžhLpLxDž6I~ H`M.H k&LF0HO@M~I^(HH(L`LFH5:HH@H HDžhLpLxHDžDž.6 I>MFHLȊ&LK H5a:H @HH(LLCLHDžLDž5IvIN L0H=N@IV(ME0MHpH(L0L=+&MEHHH55:HPH@HXHDž8L@L`DžhDžx5LPH&MM^H(M} HpH @MEH5:LPHDžXL`LhDžx4|H MM^ LG0Mn M~(H*&L LGH(L M@H5]:L0H@HDž(L8L@LHHPDžXL`Džh3IIVHH=&Hp L@H0H(HH5:H H @H( HDžDž83dHH *&MMVLF0HL@M^ Mn(H(LLFH5:H H@H0HDžLLLLDž(Dž82MI^LL&H(MQ H @H5:L MALHDžHLDžq2LIvIN LL &IV(MB0ML-K@H(LMBHH5A:HH@H HDžLLDžLDž1HpIIVHh&LG H5:HDžxLpLGH(HH @H HDžY14I~ LM.MA0M~I^(L&HH(LgJ@H@LH5:MAHDžLLHLDžLDž0LMMVL-P&Is H(MCH @H H5r:HDžLLLDžA0I>HI^H ۄ&LF0HjI@MN MV(HH(LLFH5:HH@HHDžHLLDžDž/yHM.M~H8&HJ H(LB HH5:H @HDžLLHDž)/HPIvIN Hƒ&LG0IV(M>L JH@LPLGH(HhH5M:HpH@HxHDžXL`HDžLDž.aIMFH0L &H(HX H5.: H@H @LHL@H0HDž8LPDžX.L(M{ICM;AC@H I9QrLrGrerIr5r0r+r&r!rrrr rrrqqqqqqqqqqqqqqqqqqqqqq@UHAWAVAUATISHHH`tHĸ[A\A]A^A_]fHAHDž@HHu+HHRHtr yHRHuH9tx ~$L@H`HHL`x$mLKIysL S]Dž0[STGIFfPL`H HDž(ƅ6DkIO@HuH=SZILXH}L U:[DpL@H5ѳ>H`LH @LEMGHDžhEHEEELMEq+LHIt$MT$I<$H@M<0L9M\$M9MtHILH)I<$M|$IB?H@L9tz*H IL9te*ƃfAZL:L=V MEL`L H5:MLL`*H H(vfD1LI<$DDI<$1f.AHpoHSo@tfDUHHHAWAVAUATISHHHDž@Hu,@HHRHtr yHRHuH9tx ~$L@H`HHL`x$HCLHMEYL`HMH5Φ: HD`0)H L@1HL@LsIW@H=:L@HHH`LMWILLmlL pL3;H @H5">LEMGH}LHDžhHELMLUEL]EEn(H@IL9t'L(It$M|$I<$H M40L9IT$I9MtHILHu&I<$Mt$IB7H L9tb'LHIL9tF'ƃH[A\A]A^A_]DL+1HL`A1L0HAHMDPH5:HD`Q'@1L~I<$4D I<$!fHnlH{lHlff.UHAWAVAUATISHHH`L+1HߋAljA1L0HAHHHHL3HIAH HHHHIPL1HH HA@L H@1HHA H`ƅpLSE1HHH =YH`HDžhAZBIzGH11HHHHHHHHDžHHu7fHHRHtJ yHRHuH9t D@ E~$LHHHLNx$sL`H LhLDžH5E>LLHh$xWHHLLHHH0LLa:HLD;LH@H)LL@HH5>HDžLLDžLDž#HIGHHH9uLHIL9HL~HHHHLHDžIHL9t"HƅL;HHHHDžMRIEM1LLHHHHHLAHMUHHL9HLHH9HL~LHHHLHDžIHL9t!xWLL HL:IQ0HMALL8L LB;H@H )H5>H0LHDž(H@LHLPDžXL`Džhi!H IOHH(H9LL0IL9HH~LHHH H0HDž(IH L9t@ L;H@ƅPHzHH@HDžHMUMM>1LAL`HHHHHLAH`MVH@HhL9% HLpHH9rHxLP~xLxH@xHHbH`LpHDžhIH`L9txZL@HpHL5n:HHp0L@LHLLL?;H@HpH5>H)HLHDžxLLDžLDžHM]H@HL9LHIL9 HxLPD~xHxH@DxDHH HLHDžIHL9tL;HHH`AHHH LHXHH5;HL LHLH5M;HPLLLL HDžLxILpILƅL HDž(ƅ0 (H LHLLCHLHDžHpPHHMHHLݚ:HLH5v$LEyL8L@L 5>H0 D L=,>HHLHXH@L`L@HH5_>L@LPDžhLpDžxLDžDžH@IFHHHH9 LxLPIL9Y H@HD~@L@HD@DHI H@HPHDžHIH@L9tHIL9tHHLH5w>LPL`MH0HH3@HM@LL=)>H5Q>@LHDžLLDžDžH`IFH HhH99 LpLpIL9F H@H0D~@L@H D@D(H6 H`HpHDžhIH`L9tLLHHL HsLvMgLHDžMu.LMIMtEA EyMIMuH9tp ~,HHHHHLSMrx$HLHEE^MApHDžD{HLL:HHPD L:HHDL=5GILLH0H:HH`H !>HhHYH8H5>H@HMH@HU?LHLPHXLpDžxL]EEEH]HPLEHMAEELXIt$ML$I<$HPM40L9 MT$M9UMlMt$HB7HPH9tHIL9tLpH IL9tHxHHH9tLPHIL9tLXHIL9tH`HHH9t|HH@HH9t`LHIL9tDHhHHH9t(LHIL9t LH`IL9tLH@IL9tLH IL9tHHHHH9tHĘ[A\A]A^A_]f.HHHLHhHLa"@HI}L(LH9M9EMt#H ILHHLB0HsLvMH~HHx[LLHP'L `Hy YLPH5:L(M~`HHH=;CIHpH:<LMFLL:HH @HHHH5>LPHDžXLLDžDžHDžDžLDžLIt$M\$I<$HM40L9IT$I9MtHI LH1I<$Mt$HB7HH9f.IzIzH 8:L=(:MI IzIDDMMM9I~MHMEL9tH@H@HLdHtH\HhH@HHH`HtHYHHHH@IzH C:L6:MIIzIDHI;LHI<$sH~LHIH DHxD~xHxH@DxDHI}HPf.IMWHI>f.1LI<$DHtHYHhH H(H`HtHtHHHHH@bH~LHI}HVDHx~xLxH@xHI~H`DHtHiHHHHAgDDDHDLHL5:LMG`HH=(>IL@LHύ:LMGH)<HH5ܚ>LLYHH @HLHDžLLDžHDžH Dž(L0Dž8DžHLIt$M\$I<$HM<0L9IT$I9GMtHILH I<$M|$IB?HL9H@D~@L@HD@DI~H@fH@D~@L@H D@D(I~H`fHtHQL HH@HHH]H~HHIH DHtH H(HHH TAWD1LVI<$PD1@7I<$=ffDHH@ I<$f0@7H(HEHH@@1LI<$D@7HHDpDHhH@L=IBLHpMELJPLBDH S>H5TXH2L`HL%8IH@L='>LHH5 >LpHDžxLLDžLDžDžLDž H`MVH;HhL9DLpI9HXLkD~XLXH3DXDKHH`LpHDžhIH`L9tHĈH[A\A]A^A_]f6 DrLAxH=ʗ>LYL;IAL$LLEHT7IMOPDH5>LLMGLL%x>H2HmXH@HH5O>LHDžLLLDžDžHDžDž4HMVH;HL9LI9VHXLk~XLXH3XKHIHLHDžIHL9IIHMFHDžLWƅLIxHXAH W11L>AxI<$MNH YH?H Lٕ>Ed$LIyDwHr`H=XHDLLEL >D@LLBH @H 2H5>H0H^WL`L5IH}LHDž(DPLpLxEL]EELMEHEE?HINH;HH9LI9HPLk~PLPH3P{HHLHDžIHL9t/HXHHH988HtHiHhH;HSH`fDAxH=>L=%8IAL$LEDJH5XHLb@ Hx3IH @L0LL5>HPLBH5A> LLHDžDH@DžHDžXL`DžhHMWH;HL9LI9qHXLk~XLXH3X[HdHLHDžIHL9H INHDž(LOƅ0L HyHXNAH ]>11H[>AxI<$Ed$HL1IH [WL LpPL(wD LLXH0LL >(H5\>LPL@HH@LHDžL@LHDžXL`DžhLpDžxDžHID$H;HH9LI9HPLk~PLPH3PkHHLHDžIHL9tHXH HH9@HXD~XLXH3DXDCI~H`OfAxt"AH >11OAH `>11Lb4I7fDAxAH P>11HtHHH;HSHDfDDpDHhH;fDHX~XLXH3XSIH@AH >11H3IfDHP~PLPH3PcI|$HHtHHH;HSH_fDHP~PLPH3PsI~H@HtHDHH;HSHofDHX~XLXH3XCI~H@HtHtmHH;HSH(HH;DDHH;HH;6DDHH;IFIFIFUHATISHHtHtxH)HHwI\$HuI$HHI$H= $4H=$UHAWAVAUATISHHHP@ tHĨ[A\A]A^A_]ÃjuL+HAIIHtȉH`HXIHuDIHRH;r ~HRDjyL3HAIIHXL`HXIMuDMM@Mt A;p ~M@L9E;} L@M^LL@Iu(IU0HSHEH@HH0L%+ILHHEH= ><H]H`HMH5>H@U~LEL@H}HLMEE[LhIt$Ml$I<$H`M<0L9MT$M9tMtHIRLHwI<$M|$HB?H`H9tdH@IL9KfDI9tE;} }}HL8H0}H8IPDx Lx8HP ILx(H@0@8kH"HH0u H9WLIxL@I~H@Iu(LIU0HCDKLUHHH@HV<<H U)IHEH]H`MZ0HUMBHH56>HMH@L]DMHEEELhIt$Ml$I<$H`M<0L9ML$M991L蓶I<$Gf.H0HL8H8IPDx Lx8HP ILx(H@0@8HtaHH0u H9LIxf1@7I<$1LNAhDI}(I9tH8H8LH8L8\fADI}(I9tH8H8LH8L81DR E9U @1DB E9E @I@I@IAI@fUHAVAUATISHHPHP@ tHP[A\A]A^]f.duu׋SHuLmHEHN H=&IELFHMH5Z>H@UH}LLEIt$ML$M$HMM40M9lMT$M9KMtI<3IVLH=M$Mt$IC3H}ƃL9 fHEDkH5%IH@HP H]HuHUL@HH5a>#HEDmELLEIt$ML$I<$HMM40L9tmMT$M9wSMtHIteLHzI<$Mt$HB7H}H9TfHP[A\A]A^]f1LI<$A I<$D1LֲM$ADDM$I>H>fUHAWAVAUIATISHHP@ A$jI$LAL$H`LW$IPHw0LEH@LGpHL <H@UH`H5+>HDžhELMELHIuMUIEH@M40L9M]M91L英rfDA$djI$1LAL$H`Lj#IPHw0LEH@LGpHL :H@U H`H5.>HDžhELMELHIuMUIEH@M40L9M]M9!1L螰fE$AjsAdM4$1LL=<ALHI$KED$H`PH~@H@HDžhH`L 8"IHL:DpLFH5>MH@UvLMELUEL}E{LHIuM]IEH@M40L9IUI9MtH<0ILHIEMuHB0H@H9t12Mt$IT$ L)HH9YIHDžhDpELMELUELHIuIEH@M40L9(M]M9u1LMt$I~M<$1LAA\$H=IH5h:HH`H}HP0pL@H@H` MHH@HuH5>HDžhEELHIuMMIEH@M40L9PMUM91LIEM4$LM}AI\$H{#I$1LLH@II$EFH`E\$PH~@H IHDžhH`L 0:HL.<DELFH5a>UNHMH@DpELMELUELHIuIEH@M40I9<M}M9s1LDDIEvA1LƫM$1LIHH@Et$H IPH`HMHHp0L@H@DpH`L :H5>U8HDžhELMELHIuIEH@M40I9KMUM9s1LQAAAAHZ:LII$ANAt$L`DHIz@H]L*<H@H`vLIpHH5҄>MH@LEMBHDžhDML]EEELHIuIEH@M40I9t8M}M9U1LҩHH=+[:1AAI5I5I5I5I5I5I5I5fHGH8HGH@UHAUIATSHHHXL#HA$XHHXL#HA$XHHXL#HA$XHSH:tDE12DHKHS H)HL9JI\$HuI$HHI$H=#4H=#UHAWAVI(AUATSHHHuHuINIHD(AD$$El$ H9HD;n }rM~I9t%HHMHMD;h HxHHAH9t EtHL4IF(HL[A\A]A^A_]D~VI9v <HHM HMD;h rH{HÿDL@A9LLxHH[A\A]A^A_]fDI~(t IF D;h 7M~MuI_HtIA A9|I_1fDHE1DI^Hu,DLSAMLӋS A9|LSE1HI9HHMHMIًP HA9#LH1w1D;k @IM9~LHML4HMȋx IDIEtuI^HumDH{AHtHS A9|H{E1DIEPI9^-IGf.L8M%HǐfUHGHAUATISHH%HL*HZLHtMtiHw8Hu"AuAt$I\$HL[A\A]]ÐHt fHx2H{I\$I$HLHI$H=#H=#mff.UHAWAVAUATSHL(LL H"HcHXHHLHHHǃHƃǃ(Hǃ0L8L@HǃHǃXHǃ`HhHpHǃxǃHǃHHHǃǃHǃHHHǃr_HHA1HǃHH E;uL0ELMuf.LMIMtEA EyMIMuI9DP E@$L0LEMu.DLMMtEw EMMuI9tx ~HUL HHULHUA@$ǃ`ƃhH[A\A]A^A_]f.L L]HHULL]AI+@U1H d=HAWAVIAULmATILSH]HHDFH5IHCHIHEHHLuI9HMHsM~H9H}I96B1_LEL}LKCD0HuLEH}N4L9FLUHMM9IEH9HHUI91HAH}LuHB7M|$HpM<$HH9I $HxI|$L@HMD$H0H}H@@H9t!H}IL9tHHL[A\A]A^A_]DMrHItfLHߴUfDIH11L莳HfA1LHH 2YVo@AD$5DDH}ADgfDH=$۴I)I)I)fUHAVIAUATSHHPHXL#HA$XL+HAXHHXL#HA$XL+HAXHHH5H9H{HDCLMLmH@MQ L.ILzDEH5}>MALUHEL]EߴLEI>IFIvHMM$0H9IVI9PMtHILHݴI>MfB'E17f.LCHS L)HI9gKfDLHMHfDHfDM I>iLH=OK:1 I&UHAVIAUIATIHSRݴLLHIELk8Lk(HC0S HS C8CIHtCIL$HtHԴHID$([A\A]A^]fH9t1r 9s @DH{(I9tjܴHbܴ[LA\A]A^]fDUHAWIAVAUATSHHHXL#yHA$XL+HAXL3dHAXHHXL#HA$XHSH:{PH`E1HHDžhHXHHxH`ƅpHHLHL@IH(LP@LLHMu1MMIMtE;a ~MIMuL;Ht E;f HM5۴LP8D` LHP LP(H(IH@0@8L8 L8HIH9Ht H HHLҴHHXMF0HhH`HIN(M,0H9LpM9MtHILHشH`LhHB/LhI9LXH`MuMPL9LpM9XB/ H`LhBD(H`LXMHu1IHRHtD;b ~HRHuM9t E;f HL8ٴLH8D` HP ILH(H8HPH@0@8L0|H0HI9t H~LLѴHxHPHIv(IV0H@HQLIM9qMuLL;PLM9WC* HHXLBD(LHHhH`HM,0H9jLpM9MtHILHִH`LhB/HH;Pt״At$IH;xEwLhHL)HHXH`MuHrH9LpM9JLA, fD@ L`LhCD(I91r &DB${ES$HLDPHHMHH`DL-ILhLL >HH >HH>D L>H0H>H8H5;L`LH@LLHMCHMH@HUHDžDžhLpDžxLMEEHEEEHuH5u>E?ִHIL9tմLIwM_I?HM40L9MWM9/MtHI/LHJԴI?MwB7E16fH{HS H)HL9J誏DL LHA LƅHDžI|$HHDL3HALHALH0L(HhMIfMMRMtEB EMRDM95A{ *LHH@HH yH@ H` H`HA1LH p>r DA DA"D1B A9F @fD1r A9v @ufD1LI?DDI?LH=E?:1״H=$j̴H=$^̴H=$R̴H=C(մH=7(մHHH,HBHHf.UHAWIAVIAUATSHhHXIALXM&LA$XM.5LAXILXILXAVPIH=HHH9MFM0MLLE1AMLLA@0@I^IV H)HL9*JHߺ H`HDžhDpLDžRϴLIwHI?M$0H;IWI9GMtHIOLHrʹI?MgB'M>H=MI9|MVIHHH9t<δf.LLHh[A\A]A^A_]fLLAݐItMHLHAPpIHH`LXHEPL@HHvHD9^ }Hv@LLA$pYDLLCLL+ILL(@LULHLPHhʹIAPHLIQ8IA0IQ(AA AA8HIQ LDLLHIHu I9LLLĴHxHHq(HQ0HL_HHLMMLMu5DLMIMtAy yMIfDI9t C 8V̴I@ H@(@0I9VS IH9HHz̴LDH EHx!HH@I9t @HLLLôILc([0I$`M$XMHu3@IHRHt;Z ~HRfM9t A;Y HLP˴Hp8X HP Hp(I$PH@0@8HHH3LHHI9t HLLL´LI$xIq(IQ0H LWHHL I$XM$PLHu2@HHHt;_ ~HfL9t ;Z HHAʴX HX8HHP HX(I$HH@0@8H+LHaI9t HLLLHI$pHr(HR0H@LOHHL@I1L8M.I1LA0M$`M$XLMu/LMRMtA;Z ~MRI9t ;Z HH!ɴX HX8HHP HX(I$PH@0@8H LHI9t HLLLHI$xHr(HR0H`HOHHH`MH1LHA@HƅHHI`HHDžt[IHI@HHub@HH@H8x yH@I9_D;Y PL LHMb MBH @HDž(L LH54j>L0LL-|>H8L@DžHvǴHM\$HHL9HLHH9HL~LHHHLHDžIt$L`HH9tDƴA^EdI$HDžh E`MXH`H H`pHhH@DHHHHLHDL(LLLHHHHlHHHZ;HH=d<HH5D:LL8:LLz>LL:l>LLHHLmL-z>LmLHHl>LL z>HH1 @H@LHPH5 l>LEMD$HUL HH Dž(H0Dž8DžHDžXL`DžhLpDžxELMEEE E ĴAhI1LIH1LHH`LXLHu;IHHt;_ ~HfL9t A;Y HHLHPHôX HX8HP HHX(HH@0@8Hx貸LxH|H9t HHLL5HLHxHHOHHIq(IQ0HfAlHLx>HLLV0LLFL a<LH5s>H@LHDžHLDžLDž´LhHIULH`I0I9AHH9 Mt I<2I.LHLHIt$AH`H9tLHIL9t~EFLHLPIY H@H5u>HDžXD`MAHp7HPDžxLhHIEHH`M40H9/ LM9_ MtHIoLH貿HLIt$B7H`H9tLIwM_I?HI0L9 MOL9 MtHILH9I?I_MmHL9t)LHIL9t HHHH9tLH`IL9tտHH@HH9t蹿LH IL9t蝿LHIL9t聿HHHH9%=H;t DS E8蠿I@ H@(@0H9(Dk EMPI9AHſP HxjHHAH9t EHHLL鶴I`Lc([0I$`M$XLHu.HHHt;_ ~HfL9t ;Y HH衾X HX8HHP HX(I$PH@0@8H苳LH1I9t H[LLLHI$xH HWHH Hq(HQ0HMIHHHu;HH@Htp H@H9t { 8製I@ H@(@0H9{  MPI9 H˽DX EkHxOIM@H9t @[HHLLI`Lc([0M$`M$XLMu/MM@MtA9X }M@L9tA9] ~{HL蠼X HX8HHP HX(I$PIH@0@8莱H Hu H9tHLI$xHPHOHHPIu(IU0H]IHHHu;HHRHtz HRH;t { 8賻I@ H@(@0H9B {  MPI9 Hۻx EHxvHHAH9t EHHLLI`Lk([0I`MXLHu5DIHvHt9^ }HvfL;tA9\$ ~yHL诺X HX8HHP HX(IPIH@0@8螯HQ H9t H;HL/IxHLWHLIt$(IT$0HlIHHHu:HHHt HH9t { 8ùI@ H@(@0H9 { MPI9H빴x Hx|HH@H9t @HHLLI`Lc([0M$`M$XLMu2MM[MtA;[ ~M[L;tA;] }{HLX HX8HHP HX(I$PIH@0@8训H H9t Hn HL?I$xL`ML$LL`Iu(IU0HHH HL L;HVPH(HXHDžLhHHl>HLPH l>LHHL`HHl>HHLLFH5X>H0eH@H@LLLL Dž(Dž8DžHHPDžX:HLSHHL9vLLIL9HL~LHHHLHDžHHH9tH`ML$L9tHHHH9tߵHHPHH9tõHH L-8k>HH9XX@1LNrI?@fD1L6rHf.A^L`H@H5i>IT$ MD$HDžhpHL-HH`Hߺ,LDžvLIwHMI<0HL;:MOL9MtI<2Id LH芳MHLCIwA2HAdžL9@c6fD1LqI?fD1LpLnf.I9HeDP E H{Hþ_LADAVDADLEfLL至-I{(H9t!HLfHLLHILLI{(H9t!HLHLLHLLI{(H9t!HLֲHLLH蹲LMCIx(I9tL蕲LL膲LItIK x=MMu DIYAHIAy IYE11HtHHHHHHtHwŰHHHHAI{(H9t!HL花HLLHmLM HDDI?D)D/I?1LmMH~LHI|$HrH~LHH{HrI9XH뭴x  H{uHþm?I9XH训x ? H{mHA?I9XHpx H{Hþt~I9X H7DX E H{HAH@D[ E HH1LEv(LLfL@E,LLALELL_LhA LL*I``IXK NE1I{(H9t!HL议HLLH葮LLI`tIXC ~AMHMu#fI]HIEU AI]11II}(H9tH HLHLI`IX{ E1I|$(H9tH训HLH蘭LI}(H9tHwHLHaL_I`t IX{ ~=MHMuDI]HIEU AI]111r A9p @Q1B A9C @M1J A9K @<1r A9s @JDS 1E@2 LAMHMuiI]AHIAU I]E11B A9C @,MM9LL謴Hx IlMHMu DI]AHIAM I]E1IHu"HCAH@HËS HCE1I݄i{ QLHE1oIEd{ LH1]IE{ LHE1/IE{ LH11{ @1{ @1B A9D$ @C 1@1DB E9E @1DJ E9K @1DJ E9M @~1{ @HEGH MLM9PLL媴H ILM9PbLL軪P IgH1ULM9P#LL自DP IVLM9P LL\DP It@7HHcHHIHHu ifDLKMGL˃{ LK1LI9lHɩP IHHuvH{HHs H{1IHHuH{AHH{ H{E1IHHu?fLCAMtMLÃ{ LCE1IHu afDLAMuLY LA1HES HIE{ LeHل{ HIڄuPD[ E8LUL1 H1H1HE1HE1LM9tLLLHIHHufH{AHH{ H{E1LM9LL輧LHLI95HH莧HH IHHu!fDHKAH#HDC EHKE1IHHu"L[AM6Lۃ{ L[E1HI9&HH䦴HHIHHu@HsHTH{ Hs1HI9HH~HHLE1L1L1}L1LH=:1eLM9PXLH>LM9P LHLM9PLѥHzLM9PL譥HHHHSIHMHwIHHCHsIHICHHH@UHAWAVIAUATSHHH}HU JMHEHEL*Iă  AL])fDuUELL=Y>LL轢HL B {HMȋ L{9AIM!$AMII9sCLUMMKLL)JTI9~#H}Y/Hv+IM1%L{ HDkI!M L{fDHEHLULmfomLmIM!A,;fouHAt?IHM8I(IHELmM9H]L}MM@LmIcH LHEIHfff]LL! LHLNTII9>M9>HL!LHL HL!HMfo]HuIcH$HEHHMfffufoecMD]HUD9rnEL!AIIHHXL3LSL;LXHUIfHDMH!L HUHDIL!HHufDoMLDMD 0II9H]HMHuHUHIL%)WHuM ELEELuIxFMhIXIHELmLuM9LuH`LLmHcK MIHEIHfffUM!HpLL|0HM9L9IM!HpM IM!HMfDoeLEE$$Hs(L{0HA /A LME)fUDUELL藞B8fDouEt$E1MHUfDeDeD9r~EIAAI!IHL@K48MPH;0HpHUIf.HDMH!L HUIDIHHIL}fomL!DM,ؠHH9E;H`HMHuHUHL5M3;EIM ELm躇HMHPHHIHELmHMH9LuH`HfLmLcS LIHEIMAfAfAfDEM!oL@LJTIL9 M9 HL!L@H II!LUfoUHMA$Hs(L{0HA A ALUE)fDED]ELL2B8foeAd$E1MHUfDeDeD9rzEIAAI!JIHvL@K48MPH;0aHpHUIfDHDMH!L HUIDIHHIL}fDoML!DMD vHH9E9H`HMHuHUHL5FR>EIM ELmXHMHLLHHEHUM9uHULuILEILEMcL$ HELfff}HLXII{H;HPHILMfDo]L H}L!DMc\$$HELL]fffufDoeDgMUH}9rl$L!AI]IH HPL2LJL; LXH}IHDEH!L H}HDAL!HHUfDo}DED<9L耜II9HMHuHUHL-hP>EIM E LejLuMHMMcwL N>DIsM HELLULSfff}A9kHE#fouIIM!CtLufoMHALLuEPAt^McAHMHUL%PN>HuHLEHfAHEL fAEHEE"fD]`HuH=N>HH H}HXHMd' DKH{D9EhAII!EEMII9sCLUILZHL)NdM9H}$H IMUH{ HD{H!L H{HEfoUHIL!LuL/?>HD;fo]L IB\?D+{HEL[AEHUMc`MAfAfAfDU9AIM!HMIH9sCHELMQLH)JTI9]H}t#HIMbL[HDkI!M L[HEfoeHHI!LuLL>IA$D+M Lefo}IC|+D#SHELSAL$LM McdMAfAfAfD}9AIM!HMIH9sCHMLICLH)LLM9H}N"H@IMhLS HDkI!M LSHEfDoEHHI!L]IL=K>E D+M LefDoMIGL*D#DKHEET$LuDAhHC f}E9EAII! EMII9sDLUILzHL)N\9M9H}*!H*IMHCDHDkH!L HCfDHE fDoUIHH!LuLJ>HFD L HEfDo]IF\D+DSHEL[AMHU MclMAfAfAfD}D9EAIM!EMII9sCHMH9HGIM)ITI99H}H/IML[ HDsI!M L[HEfDoeHIM!E$ D3LefDomIGl3HĈ[A\A]A^A_]DnAAD9zHEIL!AIIM9(FDoAAD9DH^DjAAD9DHIDoAAD9DHErAEE9DHaEiAEE9DH EyAEE9 DHA E@fDMH HULpIHHtLXOIL;vXHMML9qLCyHyLHa tHS H}L8MAH@LHL@LPIMHH#EL HEDL9MfI~IHHLI!HE1JM9M~I~IH!HLH!HE1^M9?I_MOHMdHHH!H1HAAL!L]IHtLHK<9IH;8v[HEML9xLC`HxLH HēHHuL LAH@HHHHHxLSJ Df.IDkM!MI LSHIAM!LpHx,HxLpH{ML LxH@LHIQfHYIAL!HpLx輒LxHpHoML8HPAH@LHIDM}HH!LpHxHMIHMHxHLpI?HLPAH@HxIbf.M9~MMCfI~ MI\LDpLxƑHxDpHML HAH@MLXI(fI9wHIC_IIILLpDxHuBH}DxHLpMMHIH@LPAIIFIvH=/H0HHLxHpÐ1LxHILpIH@LHHfDI9vIMCVI~^MI LDhHxLp?LxHpHDh?IMH0AH@HHMIM9~MMCfI~sMItxLDpLxHxDpHML HAH@MLXIDHUM$@HUMd@HUM@H}M@EL$AEE9IEII!,IMM9RDEL$AEE9IEII!HIMM9jDEKAEE9DIHM!\DLUHH9vGDBAAD9-DIHM!HLxH9 AOD}fEHIHQHHtLHJ IH;vzI9VIMCFI~^LHpLxHSHh跍HhH7MLxIAHpH@LLXHHHIMHH#EL HEA AOD}fDUHILYIHtLPKIH;vrM9^MMCFI~LLpLxHtmHhٌHhHtUI>LxIAH@HxHpLHHPILHH#EH HED1E1ڐE1E1DH5:N@H5ѫ:@ME1IHPH8IM)JtI9|J4:LRH9M9~LICFI~ IILDXLhLxHpËLxLpHLhDX IH@LIHHLAHpI M LLLDx赆HUMIDxME1IHPH8IM)JtI9TJ4:LRH9M9~LICFI~B II_LDXLhLxHp車LxLpHLhDX IH@LIHHLAHpIk MLLLDx譅HUMIDxLU1IHPH8II)N\M9,L2LRI9I9wHICGI IIgLL`DhHpHx賉LxHpHDhL`IH@IIHHLALXITHHuHLLpDx蝄HUMILpDx Lx1IHxLII)N\M9L7LOM9I9vHICFI~"IItLDXH`HhHp蠈LpHhHH`DXIH@IIHHLALXInHHxLDp葃H}MIDpE1E1DII)IM9LXH}fII)II9LXHUIM)MI9LXHUQIM)MI9rLXHULXHhHp1LXHhHxHpD~xfElEnODLXLhHpكLXLhHxHp~xflA^Ht;LHIH;8w+IIM!J4HxL HL!@I_M_HM HH!LpHMHxDHMLxHLp*IHAH@HPIZ@HtCHpHH;w3IHM!H 0HPIL I!DM~IFIHIAI!LxLpoLxLpHDI>L8H@HxIZ@HtCHpLL;w3IHM!L0LHIM M!`DM~IVI.HIAM!HxLp蟄HxLpH_I>L8AH@HxIYIE1HEHLHH8IQIM)IL9ML9slLMLM9yICqIyHHtaHLxHuHMLxHH}HMH@LHL@LHHHMLSD I)IM;MQL[M)IL;WLZH{ lM)IM; sMKL{ L)HH;HGL[ H)HI;BICLS WM)IL;:HLzHCD]HILI!HFLE1HHwILM!HME1MHHH!HH1H} L{ IuH} L[ICH} L[ IH}| H{ IH}e LS I$H}N DIHC1LLH}ILLH|ILLH|ILLH|ILLH|ILLH|ILHL@HpHUME1HUME1HUME12H}ME1}HuHE~EflF)DTHXH`HhY}DTHXHpH`D~pHhfElEn}LXD`HhHp|LXD`HxHh~xHpflA DTLXLpHh|DTLXHxLpD~xHhfElE~AHhLp@|HhLpHx~xflAvALhHp{LhHpHxD~xfElEVLhHpHx{LhHpHE~MHxflAOQDTLXLpHhT{DTLXHxLp~xHhflA~_MM)ML9LPLSDIMM!ILM!LLL!VAHhLpzHhLpHx~xflANLhDpHxYzLhDpHED~EHxfElEGLhHpHxzLhHpHE~UHxflAWD`LhHpyD`LhHxHpD~xfElEvOLpHhkyLpHxHhD~xfElEVDhLp&yDhLpHx~xflAFJALhHpxLhHpHxD~xfElE^DDhLpxDhLpHxD~xfElEFLLHvHLS E1HCDE1H{ E1bL{ E1L[E1eL[ E1LSD1LpHxwHULpHE~EHxflBwLUHE~mflAjff.UHO,>II HAWAVAUATISHxL~H}HuM!HLMI<EEH}I9+LLA LeHH0AHuH8A A)fEEM!fLHEL)EH LUHHHt{Ht7AG.VE97u#IwL!H9DH^pI AGREg DLD)D9uH9DH pxI AGiEAW DL)D9uH9NDHo;I L9}AGBAw D)LD9uH9HUHoMg MAD$ A|$ DL)D9uH9HUHXoM|$ AGEO DLD)D9uH9HUHottM|$@AG?AW DL)D9uH9tMHUHnt=M|$`L9}L5zIIFHI#^MwLAGtHjnLmH1IIIFHuIL?VIEL~M LpLMM!H]HLMEL9LLɺ HHH0HEL]H8AHE)fDEM!fLEL)H EHLEMMHHthHt:LAGSE97u#IwL!L9:DLpm:MG LA@>LEH D)D99LI LA@CAx )D9u*LxL9:DLmLxs:I L9LhEMLA@ :Eh D)D9:Mh LAE<EE D)D9<MM LAA<AI )D9<IU@HB=DZ D)D9uL99HUL.l9ME`L9@LhfH=x;EII HhL]EL9LLA HHH0LMMH8ALMIA)f%LEEEM!fMEL)H DHMHuMHHtoHtBLAD$;QAL$ )D9uL975DL%k$5M\$ LAC"HAS )D9HI LAC@EK D)D9u*LxL94DLjLx4I L9LpMELAC?4Ek D)D9:4Mk LAE6E] D)D96IU HB7DR D)D97ME@LA@17Ax )D9uL93HULi3M]`L9@DL %>EIM LhLEEL9LL IHH0AHH8HMHU)f%HMDEI!fLEM)LI EILuMMIAItpItCLAD$OE\$ D)D9uL9_/DLhL/IL$ HAsHDA D)D9nHH HA>Q )D9u*HxL9.DLqhHx.H H9LpMEHAk.Di D)D9f.Li LAE31AM )D901ME LA@M1AP )D9J1MU@LABg1EZ D)D9uL9.HULg.IM`H9AfH=S#>EII HhL]E L9 LLA HHH0LMMH8A LMHA)f%HUEEI!fMEL)H EHLEMMHHtlHt>LAD$ ME9,$u$It$H!L9)DLfx)MD$ LA@EEP D)D9EI LA@V<AP )D9u*LxL9)DL*fLx)I L9LpMELA@(Eh D)D9(Mh LAE[+EE D)D9W+MU LABt+EJ D)D9p+IM@HA+DY D)D9uL9A(HULUe-(ME`L9?H>EII HxL]E#I9LLؿ IHH0A#IH8HuLU)f%HpLDEM!fLEM)I EIL}MMIAItkIt>LAD$IJE94$u$It$L!L9DLWdIL$ HABDY D)D9BH HAV:DQ D)D9u$HML9CDLcHM,H H9L}MHADi D)D9Li LAEoAM )D9lM] LACES D)D9MM@LAAEA D)D9uL9uHUL!caIM`H9@@L->EIM LxLME"I9LMA HHI0L}LH8A"ILpA)fAL]EEM!fEMEL)MH DHMHuHHtkHt>LAD$GE94$u$It$L!L9DLbIT$ HBa?DJ D)D9\?H HBZ7DR D)D9u$HUL9DLaHUH H9L}MHB3DZ D)D9.Lj LAEAU )D9MM LAAEA D)D9I}@HGD_ D)D9uL9HUL`IU`H9AL H>EIM LxLEEI9 MLA IIH0HuMI8AHHpE)fHUEEI!fLEM)I DIMHEMIAItlIt>LAD$VEE94$u$It$H!L9sDL_`MD$ LA@>EX D)D9>I LA@5EP D)D9u$LEL9DLw_LE I L9L}MLA@ Eh D)D9 Mh LAE9EE D)D95M] LACRES D)D9NIU@HBkDJ D)D9uL97 HUL^# ME`L9?fDLQ >EIM LxLMEL9 LLA IHH0HEMH8AHHpA)fHUEEI!fLEM)I DIMHMMIAItlIt>LAD$VDE94$u$It$H!L9DL]ML$ LAA<EQ D)D9<I LAA2AQ )D9u$LML9_DL8]LMHI L9L}MLAAEi D)D9Mi LAE EM D)D9 MU LAB Az )D9 ME@LA@ EX D)D9uL9HULl\|MM`L9?L>EHL LxH}EL9 HIA IHI0HuMH8ALIA)fAHpEEL!fELMHEM)I DIIHEIAItkIt>LAD$4BE94$u$It$L!L9DLb[IL$ HAh9DA D)D9c9H HA0DY D)D9u$HML9~DLZHMgH H9L}MHA Di D)D9Li LAEAM )D9ME LA@AP )D9MM@LAAEQ D)D9uL9HUL-ZIM`H9AH>EII HxLEE L9MMA HII0HuMI8A LHE)fAHpEEI!fEH}LEL)H DHMHEHHtkHt>LAD$u?E94$u$It$H!L9JDL#Y7IL$ HAi7DY D)D9d7H HA".DQ D)D9u$HML9DLXHMH H9L}MHAkDi D)D9fLi LAE AM )D9M] LAC%EK D)D9!I}@HG>W )D9uL9HULWIM`H9CL>EIM LxLMEL9LLA IHH0HuMH8AIHpA)fLEEEM!fLEM)I DIMHEMIAItkIt>LAD$~=E94$u$It$L!L9DLVML$ LAAq4AQ )D9m4I LAA+EQ D)D9u$LML9?DLVLM(I L9LeMLAAEi D)D9Mi LAEjEM D)D9fIU HBDR D)D9ME@LA@EX D)D9uL9pHULU\MM`L9?HuH}REHx[A\A]A^A_]E97HuI#wf.E94$HuI#t$E9t$ !HuI#wE91#HuI#qLML9tHULTLMfDL} HHH xIIHuIII0LUI8ED)fAAEDEL!fELpLDL)DH H}HHHHtCAD$I;ED$ LD)D9uL9j0DLTW0M|$ AG9E97u$HuI#wL910DLS0I AGO6E97u$HuI#wL9/DLS/I L9 AG$EW LD)D9uL9/HULTS/Mg MAD$'E94$u&HuI#t$L9q/HULS]/M|$ AG'E_ LD)D9uL9//HULR/M|$@AG3Aw )LD9uL9.HULR.M|$`L9HU^E1HHC.fDE9q HuI#uL9UHUL1RAMU LAB]E9u hHuI#rL9HULQME@LA@CE9u@hHuI#p>E90|HuI#pLEL9tHULQLESfDL} HHH xIIHuIII0L]I8ED)fAAEDEL!fELpLDL)EH LUHHHHtBAD$8AT$ L)D9uL9*DLP*M|$ AG5Eg LD)D9uL9r*DLgP_*I AG3E97u$HuI#wL9:*DL/P'*I L9 AG E_ LD)D9uL9)HULO)Mg MAD$:$E94$u&HuI#t$L9)HULO)M|$ AG'$EO LD)D9uL9p)HULdO\)M|$@AG<0Aw )LD9uL9/)HUL#O)M|$`L9HZE1HHC(E9p HuI#uL9MHULN9M] LACE9u HuI#sL9 HULNIU@HBE9u@HuH#rD92HuH#rHUL9tHUL*NHUfDL} IHH xIIHuIII0LMI8ED)fAA"E"DEL!fELpLDM)EI LEIIAIItBAD$x5A|$ L)D9uL9Z)DL?MG)M|$ AG1E97u$HuI#wL9!)DLM)I AG0E97u$HuI#wL9(DLL(I L9 AG~EO LD)D9uL9(HULL(Mg MAD$ E94$u&HuI#t$L9a(HULELM(M|$ AG E_ LD)D9uL9(HULL (M|$@AG;,Aw )LD9uL9'HULK'M|$`L9HWE1HHC'fDD9r 8HuI#uL9UHULaKAMM LAAE9u HuI#qL9HUL KI}@HGE9u@HuH#wD91>HuH#qHML9tHULJHMfDL}A HHH xIIHuHII0HUI8EE)fAA#E#EEH!fELpLDL)EH LUHHHHtCAD$x1EL$ LD)D9uL9)$DLI$M|$ AG.E97u$HuI#wL9#DLI#I AG,E97u$HuI#wL9#DLmI#I L9 AGAW L)D9uL9p#HUL$I\#Mg MAD$E94$u&HuI#t$L91#HULH#M|$ AGEG LD)D9uL9"HULH"M|$@AG)Aw )LD9uL9"HULbH"M|$`L9H%TE1HHC{"fDD9q HuI#uL9UHULHAM] LACwE9u HuI#sL9HULGMM@LAA^E9u@HuI#qYE91CHuI#qLML9tHULbGLMfDLe HHH xIIHuHII0HUI8ED)fAAEDEH!fELpLDL)EH LUHHHHtCAD$-ED$ LD)D9uL9b DLwFO M|$ AGo*E97u$HuI#wL9) DL>F I AGw)E97u$HuI#wL9DLFI L9 AGAW L)D9uL9HULEMg MAD$:E94$u&HuI#t$L9jHUL~EVM|$ AG'E_ LD)D9uL9(HULMg MAD$E94$u&HuI#t$L9HUL>|M|$ AGEW LD)D9uL9NHULr>:M|$@AGrAw )LD9uL9 HUL1>M|$`L9HIE1HHCDD9q aHuI#uL9UHUL=AME LA@u$HuI#vL9DL<I AFE9>u$HuI#vL9DL;I L9 AFK EV LD)D9uL9HUL;qMf MAD$6E9<$u&HuI#t$L9FHULR;2Mt$ AF#EF LD)D9uL9HUL;Mt$@AFAv )LD9uL9HUL:Mt$`L9HFLuHHCAH]LmHIM#eL:f.E9x HuI#uL95HULI:!MU LABE9} HuI#rL9HUL:IM@HAsE9}@HuH#qnD99HuH#qHxL9t#HUL9HxsLpA HIL hMLLmIIH0LEI8EE)fAEEEM!fLEmL)H DHHUHHHtCAD$ ET$ LD)D9uL9vDL8cMt$ AFE9>u$HuI#vL9=DL8*I AFE9>u$HuI#vL9DLJ8I L9 AFZ EF LD)D9uL9HUL8Mf MAD$] E9<$u&HuI#t$L9}HUL7iMt$ AFJ E^ LD)D9uL9;HUL7'Mt$@AFAv )LD9uL9HUL>7Mt$`L9HCLuHHCAH]HUHIL#bLifD9y HuI#uL95HUL6!ME LA@E9} HuI#pL9HULx6MU@LABE9}@HuI#rE9;HuI#sLxL9t#HUL6LxLp IIL hMLLmHIH0HUI8ED)fAEDEI!fLEmM)I EILUIAIItCAD$%ED$ LD)D9uL9 DL+5 Mt$ AFE9>u$HuI#vL9} DL4j I AFE9>u$HuI#vL9E DL42 I L9 AFAV L)D9uL9 HULq4 Mf MAD$E9<$u&HuI#t$L9 HUL24 Mt$ AFtA~ L)D9uL9} HUL3i Mt$@AFAv )LD9uL9< HUL3( Mt$`L9Hs?LuHHCAH]LUHIM#bLE9{  HuI#uL9=HUL13)IU HBE9} HuH#rL9HUL2ME@LA@E9}@HuI#pE9 HuI#pLxL9t#HUL2LxA AHIL pEIMLLmIH0EI8LxE)fA EEM!fLEmL)H DEHHMHHt~Ht=AGAW DL)D9uL9.DL1I AGE97u'HxI#wL9DLt1I AGE97u'HxI#wL9DL91I L9H]LAG Eo DLD)D9uH9fHUH0RMo MAE A} DL)D9uH9%HUH0M} AGE_ DLD)D9uH9HUHj0M}@AG#EW DLD)D9uH9HUH+0M}`L9}L=;LuIIGAH]H}HIL#gLfDE9` 9HuI#uL95HUL/!MM LAAE9e HuI#qL9HULh/IU@HBE9e@HuH#rE9t$@HHuI#w&E97*HuI#wL9E97HuI#wL9v! E9>HuI#vL9aE9>>HuI#vL9E97HuI#wL9wA E9>HuI#vL99E97+HuI#wL9qE97HuI#wL9! E97RHuI#wL9-E97HuI#wL9wY EL$ LD)D9oMt$ AFE9|$ HuI#vfDA|$ L)D9Mt$ AFE9|$ HuI#vAT$ L)D9Mt$ AFE9|$ HuI#vE\$ LD)D9M|$ AG2E9t$ YHuI#w/fDET$ LD)D9mM|$ AGE9t$ HuI#wfDA|$ L)D9M|$ AGE9t$ HuI#wA|$ L)D9 M|$ AG*E9t$ QHuI#w'ET$ LD)D9dM|$ AGE9t$ HuI#w~fDA|$ L)D9M|$ AGE9t$ HuI#wAT$ L)D9M|$ AG"E9t$ IHuI#wE91HuI#qRf.E91HuI#qzf.D91 HuH#qf.E97HuI#w铺f.D92HuH#rf.E9+HuI#syf.D91LHuH#qf.E90HuI#p{f.E9(HuI#pf.D9)uHuH#q>f.D91HuH#qf.E90HuI#pmf.I9LmEVHUIHUH]MXIPL}E1LxE@MNEIM!KDL!HHX@uHXL!L]LmI`MHu)IHvHt;N ~HvHuL;mtA;M }HUHxLHUHUWQIHAx(IU0I}(HI1E;~IILuAM#fH]HL錾@I9LmAVLEILEH]MIŀL}E1LxDI~EIL!JDL!IHX@uHXL!HME LmHDMHu0fIHvHtD;N ~HvHuL;mtE;M }LEHULHxLEPIHA?'IU0I}(HI1E;~@ILuAM#fH]HL雿L9VL}EfLME1HLMMIǰL}EMM֐IT$EHMIH!HJDH!؋0DxLuHu'HHHt;w ~HHuL9t;p }LUHUHH}LU|CDx$AE;l$yILMAM#aHLL92ELuEldI9McLmLuIMXA]M#eHL6fDL9kEoL}MgMt$pIT$hHMuI@LMvMtE9n }MvMuH9!D9k MT$@Ml$8MDK$LMLM@MtE9H }M@MuI9D;O MDMMRMtE;J ~MRMuM9t E;O 0M*K$I|$0LH@(HP IljH _HH H*I9!1r A9w @L9fA ALmLuIEhA]M#eHL`L9 ELmLuIEdA]M#eHLfDI9;ELmLuIEPA]M#eHLfDL9+ELmLuIE`A]M#eHL&fDLL`!ID$XIG(L]IHIHUL#bHL#E97=HxI#wE9u]HxI#u0fDE9+HuI#sLxL9DL"LxI 鳷@D92HuH#rHUL9nDLw"HUWH {fE91HuI#qLML9DL7"LMI jfD91HuH#qHML9NDL!HM7H 鿽fD91HuH#qHML9>DL!HM'H tfD91HuH#qHML9DLw!HMH sfE9(HuI#pLxL9&DL4!Lx I 鸺@E90ϳHuI#pLxL9wDL Lx]I 阳@E90HuI#pLEL96DL LEI fE91HuI#qLML9DLg LMwI fD9)HuH#qHxL9DL$ HxH c@E9u HxI#wofDE9t$@HuI#wE9t$@HuI#wE9t$@HuI#wE9t$@HuI#wE9|$@HuI#vtE9|$@HuI#vsE9u@HxI#wfDE9t$@HuI#wE9t$@[HuI#w1E9t$@kHuI#wAE9|$@oHuI#vEH]L9nLeAOHu1IHuI$(I LeIŅfIWALUIL!M0JDL!0D`LuMu)@LMIMtA;q ~MIMuL9t;p }HMHUHH}HM:D`$A;_zIL}AM#gH]HL酱DE97oHuI#wH9KѮAw )LD9Aw )LD9 Av )LD9)@Aw )LD9G^Aw )LD9WnAv )LD9ZqAw )LD9~Aw )LD9'>Aw D)LD9 $DAv )LD9jAw )LD96MEg LD)D9fEg LD)D9fEg LD)D9.EfEG DLD)D9(@Ef LD)D9qfEf LD)D90GfEg LD)D9NefEg LD)D9^ufEf LD)D9axfEg LD)D9fE97hHuI#w?f.ED$ D)D9鸺@E_ D)D9 DAT$ )D9+BDE_ DLD)D9ǩީ@ED$ D)D9ŵ@E9,$It$L!fE9,$It$H!fAL$ )D9DE\$ D)D9@EL$ D)D9y@E\$ D)D9鸻@A|$ )D9Ľ۽DE9<$It$H!fE9`HxI#w4E94$It$L!fE94$It$L!fE94$7It$H!fE94$It$H!fE9<$"It$L!fE9<$It$L!jfE94$It$L!]fE94$`It$L!7fE94$It$L!LIoH](H]UH٫HHAVAUATSLHHMLIt$LgMt$L#MIvLgMfLMIt$LgMt$LMIvLzgMfLMIt$LXgMt$LMtfIvL:gMfL~MtIIt$LgMt$L_Mt*IvLfMfLBMfLLMtJIt$L@sI|$(IT$8Ml$H9tLMtMDLMuL`LPMtMIt$LrI|$(IL$8Ml$H9tLMtMLxMuL0L M It$LeMt$LBMIvLeMfL!MIt$LeMt$LMIvLeMfLMIt$LweMt$LMteIvLYeMfLMtHIt$L;eMt$L~Mt)IvLeMfLaMHHH9t8H耯H߾p[A\A]A^]f.UHիHHAVAUATSLHHMLIt$LdMt$LMIvL^dMfLMIt$L$ZH`LXMHu3fIHHtD;g ~HHuM9t E;g HL L@8D` HP IL@(HHPH@0@8LLHI9t H LL.HxI(H5#IL+xI H5=Lf.H8M&fDMt I} HLLLH: HfDLLHDžIt$IEƅHHW fo=fo '=Hloat16_tA; fo=fo'=Hfo%(=fo-0=fo55=Hfo=9=fDo@=P fDo C=fDoJ=X0fDoM=fDo%T=`@HDžhPp`xpDDDDDHfDƀ}HDžƀ$ZL;HAHPHAH8F(L0H(MIf.MMRMtEJ EyMRMuI9AK DCA{$HD`HppLLL=$9HLPHXDHpLxHH5-=0H=&=LpLL L =L(L=L@L2$;HHHPH@LXL@H}LHuH5~=HDžDžxEELMELUEL]E HIGHHH9MD$HL9H(LD~(H(HD(DHHLHDžIHL9tH8HPHH9tHHH0E15@H{HS H)HL9JHMI0L9IVH9QM(I^E11It$IT$ H)HL9J@1L薺I>fD1L~LUDDLU\A; I>VLH=k91mIIKISKff.UHAVIAUIATIHSLLHIELk8Lk(HC0S HS C8IHtCIL$HtH$HID$([A\A]A^]fH9t1r 9s @DH{(I9tH[LA\A]A^]fDHGH8bUHHAWIAVAUATE1SHHSHxHxHHHDžƅHxHDžgH HLHpHhL`@MD HxMu.@LMIMtE;a ~MIMuH;xtD;` }$LpHhIHL*L@0HL[HHH(M,0L9LM9MtHI LHHLHB/LI9HHsMuH9HI9!B) LLMXLCD(M`D Mu/fLMIMtE;a ~MIMuI9tD;` }$LpH`IPHLL@0HHHH(HCM,0H9HI9?MtHILHHLB/IxHHH;wAT$IHH9LIMHfo=fo =HLfo=foY=HDžfo%V=M7fo-X=fo5`=Hfo=d=P X0`@hPp`xpǀ_t; ƀ}HDžƀALLAL]H AwLD`LG`LHL5'HHL Lܭ=0LH5=HLuLL@L ;LHLz=HpjHxH @HuH5=LELGLHDž(LPHXEEELMELUEXHIL9tLLHIsI;ICM$0H9ISI9MHITHLXHH9fLHL)HYHLCMuL9LM9LA, fDG LLCD+Ixf1H膳Hf.A1LHH }SV1HFH[f.AD|fD.fDD1D7HBDHA1LHH =趲H1袲HH?LMaB'E14MWIW L)HL9KE1HHHSfDI H53:LIFJL;tLetIL+WD9[ ID$IT$ H)HL9 $J4JHHHQLLMQkE1A sDHLLxLo0HQ>H@8H5=L LGLLHDžDž(H0Dž8HINH HH9LLIL9]HL0~LH (HMHLHDžIHL9tLL(H IsIM,0H9P I{I97Mt#H<0I HL@HHHLLnB(M<$AhHHHXA 1H =ּL@HxDKLIR0L@MBLHLH@(H@HpH5=LHDžHDPL`LhDžxLDžHIGH HH9bHLHH9HL0~LH (HHLHDžIHL9tLL(H IrMM,0L9^IRI96Mt#I<3ILHXHLHLHHDžLILiC+E1HxLHDžƅHxLHLLHLLDHMu.@LMMtE;o ~MMuH9tD;h }$LHHHLL@0HH(HHHHM40H9$ LM9 MtHI LHHLB7LHI9HHM~LQL9HI9SB6 LLLXLCD3L`DMu)LMIMtE;i ~MIMuL9tD;h }$LHHPHLnL@0HH(HHHHM<0H9LM9pMtHILHHLB?HxH~H;A}IHH9HHLHL=LIN0LLL HHu=LH@HaH5O=LMFHDžLLLDžHDžDH MUH H(L9IHL0HH9FHL0~LH (H6H L0HDž(IH L9tLHIL9tHL(H HwLM,0L9HWI9\Mt#I<1I7LHLMHHLiC)L;AH`LXALHu+IHvHtD;n ~HvHuL;tE;n }}HLLx8Dh HP ILx(HHPH@0@8sIHHu H9HL۳HxH@Iv(HWH8H@IV0HLH@LHHMMLHLH`LLH0E_HMEL9t0LLhH`IrIM40H9MZM9tMt#H<0IHLHHLLLAutHLHILMuE1B0LL@IHPHLIDžOutpDžInpufEAABtHDžtrueHDžƅLHDžƅLHDžƅLH HH549HFLLڳLHMWM9LljLKH{ L)HHL9O41LIH%KD9HCHS H)HL9cJ4N4LLAQHLHIOI9RDLKHS L)HI9IK41HHPLLMI LLIFH59LٳLHL;LljE߳LcHS L)HL9O$4fDH1›HfDLHL)HHLM~LJM9LM9M, fAAC LLCD2HxfH1"HfDHA1LH 'eSDrfDA$DADDDHD1@7HfD^fDHBH=~DIwI9LݳHBH=~>L;(Lqݳ@H=|M_M9fDH=|L;fDHHP@L H@HDž(E1H`HLIHH(LHHpLHLHHHhHL ƅ0H@HDžHƅPH`HDžhƅpHHDžƅHHDžƅLLLfILLIFH5W9ֳL LIKI9tZL׉۳uBLIP MxHL)HL9sK<7DwPAAILL1FD9IW MOHL)HL9K4N4HLAPLLMLIQI9!vf.H1L`AЉHMu0LMIMtE;A ~MIMuH;t;V }$HHHHPfHHH(HLH$ DL HHRHtD9R }HRHuL9tD;V }$LHHLHHH(v]IGH=!HHI99Lٳ,H1L`HALMu;fDMMRMtE;r ~MRMuL9tDE;_ HLzٳHp8@8HP INjHp(HPH@0H H`H\L`H< H9t H HLгHxHpIw(>HLLHu6fIHHtD;w ~HHuL9tA;W HLL`سINjH`LMW8IG0IW AG MW(AG8LhLHI H9t H HLϳHHhIw(G.fH=HH~I9H L`HDžHHLLLIƅHDžƅH HDž(ƅ0LLIL`ILE1LL@@LAD9?I|$IT$ H)HL9 J4N<LHRLHL@MI LLIFH59LгLLM^M9LljֳID$IT$ H)HL9 J<81H0H`HHu,@HHHt;G ~HHuH9t;F }$HHPHHHHH( ML$IT$ L)HL9 K491HLA@H L`HhL;HLpHH9HH0D~LL DD(HH`HpHDžhH`H;tԳIfDIvI9BIDIBH=M~M9tLI+ԳffDHt$HQHҳHhH H(H`>HD~LL DD(HH`H=LINI9w^f.HDcHDžHHDžhHL(LDL L`HLhLHHHxHH==HLLL=LL8LLL q=L L=L(L==L0L-=HXH @H` H@LHLPHpLLELFH5=DžxLMEELUEL}ELmEjҳHIFH HH9LLIL9%HH0D~LH DD(HHHHDžIHL9t>ѳHL(H HrL M<0L9"HzI9XMt#I<1ILHϳLMLHM{C9L#A$HH HH9tгH`HHH9tгHHHH9tjгHhHHH9tNгLHIL9t2гLpH`IL9tгL(H@IL9tϳLH IL9tϳL@HIL9tϳLHHIL9tϳHPHHH9tϳL0H`IL9tnϳL8H@IL9tRϳHHHH9t6ϳHXH@HH9tϳHH HH9tγHĸ[A\A]A^A_]@HA1LH ڃ=芋3DpHhH @ADI(I9tH{γHLHeγLfI(I9tBγLM7γIFH=~&L;Lγ@LH=|L;xML$IT$ L)HL9LOECL1LdI+L1LKIEL1L1IL1LML1LML1LIHtH˳HH H(HHtH˳HH H(HL1L[MMHtH2n˳HhH H(H`cHtH25˳H(H H(H HtH3ʳHH H(HA 1DB E9G @1J A9O @H~LH (I~HH~LH (IH^H~LH (I}H 1DZ E9^ @#HHPA1H "衝HHHA1H i=HH@A1H M=]vHD~LH DD(I~HrA6uPI~(I9tɳLMɳ61L@7I%1H@7HDLDI4DHDHILMLM DHDLup@7HhH HH 0@7H(H @7HH @7HH LH=691γLH=691γLH=691γLH=69γLH=691nγLH=691]γLH={691LγLH=j691;γLH=Y691*γH=#~óLH=<691 γLH=+691ͳH=M'ͳLH=691ͳH=a#3óLH=591ͳHDHHHH@HHLHH|HfUHATISHHtHtxH)HHwHx0L@EOHfo k>fok>@:;MZ0@;(H@H5=fD@8MBHP HHDž;HDž;LL@HDžHDPH`HDžh;LLpDžxLLDžHijHHH貂M0I(H0Mu3LMvMtA~ MvMuH90{ {$YHH{HHijfooj>fo%j>A_t@@nt64HfDHDLL`@F;EWMs0MCfo-hj>@G(Lfo5dj>HH@`h p0HHHH5H=HDž GHDžGLHDžDHDžGHDžDž>óHhH`HP$H`IL9t³HHH9tz³HHA11H }=(LAOLLHIU0LH5V=HH(H@LMEH LL(HDžLHDžDž(5³HMNHHL9+ILLIL9:HhHD~hLhHDhDH'HHHDžIHL9t HHHPoALp1E1HDžXLhfDI LL`IFH5b9ͺL`LhMYM9L׉`\`MoMW M)IL҅I99VOt5LXHL*9IIW H)HH9yUH4L4HhHRLxLpMHhHyI9HfMoIW L)HH9UKt5LLHRLLMlI LL`IFH5a9LH肹L`LHyIM9L߉``MgIW L)HH9wUO$4f(6IH@ H901I{ M Lp HI98IHdx jIHxSHHH90tRH0HLL苶IHaHh~hLhHhI~HIM9fIEH=~LHhHI9L踽I@IH=~CM9sL蒽fDH=|LhIpI9H=|M9D+f.H`IHDžhHHHH`1IxƅpHhHDž`@ILhHu,IH@Ht;X ~H@HuL;htA;^ }HMLXSLh8X LHP Lh(HXIH@0@8IHH9ht HCHhLpILHMF0HhH`IIN(M,0L9HpI9MtHI;LH轺H`LhB/LhHI9=RLHL`Mt$IpI9xHpI9@C# H`LhBD!M`MXMMu1MMmMtA;] ~MmMuM9t A;^ HMPLXVLP8X LHP LP(HXIH@0@8L@BL@HII9t HALLѲIxHHMF0HhH`HIN(M$0H9cHpI9MtHI9LHH`LhB'MxIzH;`KKHH`L9L-HH1I@ȔACKL 茌HLL0HHEwMc0H@HHPH5=(L`MCHpHL0HDž8D@HXDžhDžx蟹HHH HH9tHHHPawE11L0I LLhIFH5[9L`河LhH`M]M9t4LωhyhuI_IW H)HL9OJ3IL'#D9IIW H)HL9]NJ4N4LHPL8L0M*IMI9aHBH=FIuI9vLi@HH+hHNHHH5l=vMxvfHH1"tH`/fDHH1tH`pfDHHA1LH >SsDfDfDfDI~(I9tʶLM迶1f.I~(I9t袶LM藶jfH=MEM9fHLHDžE1HPLH(HLL@LIHHH@HLLPILILIHHH8HHƅLHDžƅHPHDžXƅ`LHDžƅLHDžƅL@HDžHƅPHHDžƅHHDžƅ Dž DžDžDžLhHD94H{HS H)HL9>JJ4N,HhHRLXLPMI LL`IFH5J9蜮L`HhLIM9L׉`+`HS }LsL)HL9MJO4.HpHH`ILPL`HpHHxIL9LLIL9 HXH~XLXHXHHpHH`HDžxHpHH9t-IM EHHHHHGHHHIHIzHIBHIzHH AAH8A H X>1pHS LKL)HL9(HK4)LLLASHHHH HHXHFH5$H`rH`LXIL9Hω``HS H{H)HL9EHJ#HFLLH茡ƅ`LHu&L@IqHH| `IM9tLHhHHH9t禳`IHXHD9HS L[H`L)HL9=KLhLHLAPH59L8LhHIL9tTSP eL+1HAI`MXH`LHu5HHIHt;Y ~HIHuI9t`;x HHH)D`LH8@8HP LH(HHIPDP H@0L8H@L@H8H2Hu I90LLLH艝IxHHHHp(UIMLHHu9fDIHRHt;Z ~HRHuL9Ht`A;} HIL@LH8@8HHP D`LH(IH@0H@DP L`H`HH0Hu H9H/HHL舜IHIu(TQH1HI`MXH`ALLHHu4HHIHtD;i ~HIHuH9Ht`;P HH@ D`LH8@8HP LH(H@IPDP H@0L H8L8H H+Hu H9H.7HHLLHdIxHHHHp(SIMLLHHu9fDHHRHtD;j ~HRHuH;Ht`;x HMH@Hp8@8LHP D`Hp(H@0DH H8H@H`՗L`L8HI*Hu H9H6HHLL`NIH`HHp(RHLHLRpHI]HHH9b'LLMYL9w)H`L D~`L`HD`DHg)HLHDžIHL9W,MH@L1ҹH5+9LHP-HXA1LH 9sL1ҹH59L>H=-HxA1LH 9VsLH1HDžHLHHIH@HH8HLƅHHDžƅHHDžƅ HhDL 9It$IT$ H)HH935H4L4HhHPLLMI LL`IFH59賙L`LhMCM9{Lω`B`_It$IT$ H)HH9@5J<61H0M`MX`LMu*DLMmMtA;E ~MmMuL9t;F }$L`HIPL"HHHH(?OMD$IT$ L)HH9Y4K40LLHQpHMUHHL9H@LHH9<H`LD~`L`HD`DH,HLHDžIHL9t赝I|$IT$ H)HH93J47L1LLA@HMnHHL9L8H IL9H`L D~`H`HD`DHHL HDžIHL9t՜H@HhLRM9_HfDIEH=0LhIM9tLHtHtH!DHHHH7HtHHHHHH`D~`L`HD`DI}Hf.H`D~`H`HD`DI~HjfH=HhHyI9 @7HHHH@HM'LHA$PH5"HP.H1MHDžHhHIxHƅL`HDž FDIL`Hu,IHHt;_ ~HHuL;`tA;^ }HMLwLh8X LHP Lh(HIH@0@8jIH.H9`t HL!H`LIIV0Iv(HhXLIM9<0HhLMl$HpI9HI9*C# HLBD"M`MXMMu+MM@MtA;X ~M@MuM9t A;^ HMPL>Hx8X HP IHx(HH@0@8HL*LHII9t HLL蹐IxIV0Iv(HhVIxL^L; EKHH H9HHA1H z=jHAWLH@LLM`0H5=HLM@H((LHDžLLDžLDžHHHPUI0H!.L0IfDMMRMtAz MRMuL90-A{ -H0HHH@Htx H@HuH90.y .H0HfHH[Ht{ H[HuH90-~ -L0IfMMd$MtA|$ Md$MuL90-Ax -L0HDIHHt HHuL90x-A} m-L0@IHRHtz HRHuL90,Ay ,Eq$AX$HEU$v$LLPHXI$HE[$LLL@LHL H(LpHxD`L5:>H8Hf;>DpL<H5;>H ;>LL0L0L-;>L@L ";>LHL%$;>LPL@HXLH9DL:>HDž DžLHH5=HH@H0DžHHDžDžDžLDžL Dž(Dž8L@DžHLPDžX HH(LI赡H0L9t褓HHHP RI0H*L0HfDIH@Htx H@HuL90*Ax }*Ax$ HH=#=HDžL@0H5q9>HH o9>L8=LH=j=HL`HLPLDžDžMH5'=LH@H H(LIwHPL9tfHHHPPHXL/AU@*L LHLIS HTG=LH @H MCH5>HDž(L0H8H0H@DžH4H(LI衟HL9t萑HHHPOHHA\1H >$dEGHHH0HLLW0(LD LGHH0H51=H8H@LHDžL@DžHLPDžX7H(HH褞H0H9t蓐HHHPNE14@IwIW H)HL9'JbL`LE_LPHIQ0HH@LH`H5=(LMAHLHDžhDpHDžLDžH(LIaHPL9tPHHHPMHHA61H !(>aALHHpHIr0MBLLHH5=HHH@H(HDžLLDžDžH(HHeHpH9tTHHHPLL`LL訫HPH=QC=L`LhL@ dHHpLPH5''>L@HH @L`HDžXLhDžx.H(HH蛛HH9t芍H`MVL9tuHHHPKAwLHHDžL0IK`LDžLHH0HH 3>HHH3>LL8LHLLL ob;LMCHLHH58&>HH @H0qHLHLDžDžL Dž(Dž8裌H(LIHL9tHHHPeJILM`MXMMu@MM[MtA;[ ~M[MuM9|A;\$ qH0LWHL0It$(IT$0HH0H8I~IH`LHH@LHH H`IL9tHHH@HPkILHH0>LIv HLMHMFLH5$>HH @HDžLDžH(LI^HL9tMHHHPHHHA1H %>\HE_HLL@0LHH@LLL@H5j0>H0 LHDžDL H(Dž8L@DžHH(LIaHL9tPHHHPGHHLHHN L.>HHDžHLFH @H5%>HMLLDž,[EGHHPH0HLLP0H@LD`L@ HpHHH5.>LPHDžXLxLDžDž?H(HH謕H0H9t蛇HHHPFHXHP@HHAm1H (>ZLHEOLLHIK0H5->LHH@H LMCH0LHDžDL Dž(Dž8,H(LI虔HL9t舆HHHPDL1HDžA$Ix(I`MHu0IHvHt;^ ~HvHuM9t A;^ HMPL`GX IH@8LIF(H`IV IF0AF8HX2{LXHI I9t HLL}IxIV0Iv(HhCHH+H9HhH5B:=CSHI;xHL@HHDžHHHMP0MpLL@L0HPH=(>HXHL@L`HhLpDžxLDžsMH5(>HH@H䄳H(HHQHH9t@HHHPBL H@IL9t LH0IL9tH(HHH9t҃HhHHH9t趃LH@IL9t蚃H8HHH9t~L@HIL9tbHHHHH9tFHHpHH9t*LHPIL9tLH0IL9tLHIL9tւLHIL9t躂H8L@H@H537=EgLHDžHS LCLDž8H D L0тLHHHHH9L HHHH96HhL~hHhHhH&HLL@HDžHIL9t螁HHHP@MLALHIL9t[LHIL9t?H[A\A]A^A_]DHhA1LH S=DHH+HHhH55=M?Ix|[fDI~(I9t袀LM藀fI~(I9t肀LMwfDDH`6DD DH`DH@1ҹH5[9HHHXA1HH 09RL`LLiI0H0HuQHHHt HHuH90({ H8H5%>KdL3T;[$H$>H@H=r"LXIDL|"HNpHPLELhH=$>H@LXH $>LL0LHH$>L`HPH%4=LpLY8Hn$>LLFH5=H]HLHH@HDžHL`LhLDžLDžDžHDžDžHDž~HLIH0L9t~H`It$H9t}HHHPPHHӓ=LL5=HH5">LL ">LL-">DL">DL">HHD H0HPH~">H HH@H@HpH5=LEMD$HUDDž(Dž8DžHHPDžXL`DžhDžxLMELmEL]EE E 9|HHH覉HPH9t{HHHP9L8HIL9t_{LHIL9tC{HH@HH9t'{HHHH9t {LHIL9tzH@HPHH9tzLHIL9tzL(HIL9tzLHH`IL9tzHLH@L8fDHtH4yHHHHHL`gzX HX8H`HP HX(IPIH@0@8VoHHu I9LLqIxfI~(I9tyLMy f(yIH@ H90Hp { M HhU I;8t1HzHhx  HxbHHH90t H0HLLqIH-1DZ E9^ @D1J A9N @_fD1DR E9V @D1DJ E9N @DHtH DwHHHHH`D~`L`HD`DI}Hf.HtH vHHHHIx(I9tL`wL`L|wLu@I{(H9t!H@LHTwH@LHLHH7wLHLH0I@LMRMtAz MRMuH90 {  H0@HHvHt~ HvHuH90 y  DY$Dk$H H=p=LJ0L%>HDž(L5>D@HpLjL D0LPDžXL`DžhMH5=HH@HvH(HHHpH9ww1DZ E9^ @>I9@[Hsx H{>HøIHtI@{ M0Mu It$HtIAT$ It$1HuL  1LL5fHHHLtI|$(H9tH`tH`LH`tL`81DZ E9] @W1J A9K @AIHt=I@{ 0ƅq@7HH&1ߵM0MuUL0I8I9j LLtDH IA N LLtaMUMMEM A MU1Hh~hHhHhH@H~HLH5@">I}(H9twsLIls'LH5">I{(H9t!H@LH7sH@LHLHHsLHLHH5E=8>HEoLpH=k=LI\$0Mt$LHDLHHpHDžxLLDžHDž[MH5j=LH@HrH(LI9HL9t(rHHHP0LHLH 8'=Ix H0M`HH=u=HHHHDžLDžMH55=HH @HrH(HHmHH9t\qHHHP/HH5$=o:HLE_HDžHHIH0M`LHH=>LPHHHDLDžDžMH5>LH@HPoH(LI|HPL9tnHHHP-H1HDžIx'DM`MMu1MMIMtA;Y ~MIMuM9t A;^ HMPL`nnLX8X LHP LX(H`IH@0@8LXZcLXHI0I9t HLLeIxIV0Iv(Hh ,HH+HHhH5j"=+DSLM;xLHHHDžI} L0MeDžHH=>LpHHLMH5 >LH @H?mH(LIzHpL9WWI~(I9tlLM~lHH597H=>E1H5>HHѵHH5F"Hh7(1J A9H @1J A9K @1J A9N @9I;@UH2iHhx H{1H1DC E9E @;L0M98tkLLPlP IH@7HHHH5"6IL6LT\HHHL1隬LDD/HH*1DB E9D$ @1D[ E9^ @1H1=HƅLH=81pHH=81pHH=81qpLH=81`pLH=~81OpLH=m81>pLH=\81-pLH=K81pHH=:81 pHH=)81oHH=8oHH= 81oHH=81oLH=81oLH=81oLH=81oLH=81oLH=81toHH=81coH=P#dLH=u81FoH=P#dLH=X81)oH=zd'-nH=P#qdH=P#edH=Vd' nH={P#MdH=>d'mH=cP#5dLH=81nH=d'mH= d'mH=c'mH=c'mH=c'mH=c'mII7I骺I I鯺I仵III7I⸵IﻵI铺IIIIعIIf.ff.U1HATIS1f0fIL$IT$ H)HH9s"HH@UH}L_fHUHuLO$1.MD$IT$ L)HH9s{IL`L;1HIVƅpH`HDžhAL(1HAHLH=VIp0M@HPHL=,GH59H@H HHDžLDžDž(HXodHL-9DKL0HMZ0LpLHXMBLH@H5 >SL0HDž8D@HPL`DžhDžxcHIMH`HH9MNLL9SHHLp~HLHH`HhHCHLHDžIHL9tbHhH`L!!H{H!HED[L}LHP0LPL@LHUH5 >H@HED]EEL}EbHIMH`HH9MNLL9HPLp~PLPH`PhHHLHDžIHL9taHhH`LE11@H{HS H)HL9JLDžDž(L0Dž8^HL[HpHL9IEHH96HhL~hHhHphxH&HLHDžHHH9t]HxHpL.19f.I|$IT$ H)HH9nHLUL@Dž`DžxE ]HL[HpHL9IEHH9HhL~hHhHphxHHLHDžHHH966Hh~hHhHphxH{HM,$LLApHĀ[A\A]A^]H}uHH@LG0L ZGHELELVLGHH5>ELMELUE[HL[HpHL9FIMHH9HhL~hHhHphxHHLHDžHHH9HtHt*fYHHpHxHjHHpHh~hHhHphxH{HPHtHXHHpHxHHtHXHHpHxHHh~hHhHphxH{H/HHpYHHpvHH=681_I雭ff.UHAWAVAUATISHHHXL+HAX~L31HƃAHHR L;H߉4H,AW HH8H@P(H HPHHDAH I׉L1HH L1HHpHA(HKLHDžIuƅHyHHHPHLPM,LpADKD0HPH@HXH 8GDZ0H=>DID@H>L<9HH5>HAH8HH F9HH=2>DL 9DLj>LMBHjHH5>HDž D D`DžDžDžDžDžHH H@H0HDžLDžLDžDž(Dž8 HlVLHHHIL9+IELH99HL~LHH)HLLHDžHIL9tDL>DL59DLNGHH 8H s8LL=>LLG9LL D9HH=9LL>H H>H0H5>HDžH DžDž(Dž8L@DžHL`LHPH@LELBH}LDžXDžhLpDžxELMEE LUE HEE SHM^HHL93M}HL9>HL~HHH.HLHDžIHL9tRHHLE15HsHS H)HL9JDž ALU8HtHtbOHHHHHtHtCxOHHHHHH@7HHLH=N81VIIɤf.DHHH=f.UHSHHHHHHH߾[]NPf.@UHAVLwAUATSL7HtdHHIIIHw*HuAECHLcB"[A\A]A^]HtHxOLcHILLLNH=\"LUHATISHHtHtxH)HHwfo >fo>A0rIQ H;LkBD'1H[A\A]]fA11LHH =v @H=+5#Hff.UH=/WHAUATHELeSHHP L@HXH [H5[HUH}к4LHMH @HuH5B=HEEMLEH;LKHsHMM,0L9trLSM9wQMu,LkIB/H}L9tLHX[A\A]]fDHIt?LHKH;1H^ H;fADDH;H~ff.UHAWAVAUATISHHH`HKHQH7H3L@Z9DzLPH1LpLAI}DKLH zGHj8DHQZHRZMZ@MBHpH5,-WLHH @H LH0H5=HDžxƅLHDžDHHDžDž(Dž8KHMGHpHL9AMULL9uHHL~HLHHpHxHeHLHDžIHL9tJLxIt$MT$I<$HpM<0L9M\$M9"MtHI(LHII<$M|$IB?HpL9t JHPIL9tIHĘ[A\A]A^A_]LiLPH1LE}LpAЋSI}H@HPLXHHPH#8HpL XH=*WLbxGLWH]HH@H@PD`L=8HpH5z=LxL@H}HHDžxƅHDžHLMLUL]EEL}EERIHHCHpHH9IMLH9HHL~HLHHpHxHtHLHDžHHH9@1LI<$D1@7I<$HtHFHHpHxHtHtHt}FHHpHxHA*DHH~HLHHpHxIHDHHpz@HH~HLHHpHxH{HDHHpI@UHAWIAVAUATSHH(H`HSAHJH=qL+H߉1A1L0HALHLHL1IA L 1HH0HA@LPLH5\9HDžXLILPƅ`*AZLL1HLA@H5W"L^*Em{LH5 ;IH`L PtGDLLVHL8M@H@H9LOH`H5=HDžDžL Dž(L0Dž8L@DžHHPDžXDžh"EHMEHPHL9 HHHH9 HL`~HHPXH HLHDžIHL9tCHIL9tCLXIwIGI?HPI0H9> MOL9 MtHI/ LHBI?HI_HPHH9tmCLH0IL9tQCHMvL9tLPLB`LH@LH5>LL~qGLBD L #WH0H>PH @H`LHH5K=HDžLhLpDžxDžHDžDžLLDžfBHIMHPHH9 LLIL9 HL`~LHPXH HLHDžIHL9t=AEPL H5&OH'OI|$H HLHpH8CHwHHpH0HDKHLH5> HDAHHLMULHL_[LH5> H`H@HDLHATHLHHH`HXZH9t?HIL9t?LHIL9t?LHpIL9t?H IL$H9t?LHHH;IS0HMCL MLMHH@cH(H5=HPLHDžH L0L8H@DžHDžXj?LL(HXHPIH M,0L96H`I9FMtHI}LHy=HPLXIB/H L9ta>LHIL9]]HA1LH Wt9AZRH59t9L"{LpH m8EMIr`LI9DHO;HHpHlGL-VH5=HHH@LMBHHDžxDžDDHDžLDžDžDžDž=HLKHPHL9ALLIL9HH`~LHPXHHHHDžHHH9]]fDHu<EEkDKH= }BHL`LFJHDHEIJ`DHjGL-JH`H @H=%=HLpH5=DpL BWHH=LMBHHLHH5=HDžhLDžDžHDžDžLLDž;HpMUHPHxL9HLHH9HL`D~LHPDDXHHpLHDžxIHpL9BBH5P9L)h[AUH L2iGHH`LEH=}VD0L@HH L 8L9H@PL};H5=`'H}HHDž(Dž@DpEELMELUEL]E :HHCHPHH9HLHH9IHL`~LHPXH9HLHDžHHH9DHtHY7HHPHXH1LNI?fDAD I?H~HHPXI}H DHtHd6HxHPHXHpAHtH6HHPHXHGHtH|6HHPHXHH1HPfDHD~LHPDDXI}Hp\fH~LHPXI}HeDH~LHPXH{HDfDHHP@HtH,5HHPHXHDDHPH~LHPXH{HHHPHxHP@7HHPHHP*I鮊HuH邋HHHH鏋H閊H鿊HӊH铊UHAVIH5=AUHELmATHH L@ISHcGHPWHMLH@H]ЉUHEE5LEI>MNIvHMI0L9MVL9MuoI^12I|$IT$ H)HH9Hu@1LI>_fDA@1@7I>@HH=š819Iff.UHAVIAULPATIEISHHWHDžXƅ`HzHPg_HuH=bGHN0L]VH}]HpHMHH@LELFH5=HEEEEG3HpLKHPHxL9EM]LUL9HHH`~HLHHPHXHxHpHEHDžxHHpH9t+2LXIvI~MHPI0I94MNL9MtI<2ILH0MI^A19f.IL$IT$ H)HH9HHH~HLHHPHXH{HpA1@7MUHxHPaHH=816I&fD{UHAWAVL`AUIFATI1SHHL/H`HDžhƅpAH1HHLH=PVIp0M@HHHL=^GH5z8H@H HHDžLDžDž(HX 0LL0DKH8HMZ0HpH@LXLMBH5=LL0HDž8D@HPL`DžhDžxu/HIMH`HH9 MNLL9HPLp~PLPH`PhHwHLHDžIHL9tS.LhIt$M\$I<$H`LPM,0L9+ID$I9MMl$B/H{HmDCLML}LII0LHLHMH5FWH@DEMAHEEEL}E .HMUH`HL9IFLH9HHLp~HLHH`HhHwHLHDžIHL9t,LhIt$H`I<$M<0H9P.IT$I9MtH<7I4LH+I<$M|$B?E1.HKHS H)HL9*JWEIMAKH`tDDxHLDLDLH`H==pH =H5X8He9DL5-9DL TGLL8DL=LL=߹9LL~=L L ~=H@H @HPH`H5t=HDžh Dž(L0Dž8DžHDžXDžhHpDžxLuLLELLBEEL}EL]E LME y%HMVHHL9IEH H9NHxL~xHxHxH>HL HDžIHL9tW$LIt$M\$I<$HM<0L9ML$M9w$Mt-HILH"I<$1LI<$M|$E1B?0H{HS H)HL9 JLAD$2 E94$u$It$H!L9DL ML$ LAAE EY D)D9@ I LAAuAy )D9u$LML9;DL LM$I L9LeMLAAEi D)D9Mi LAEEM D)D9M] LACEC D)D9IU@HBDR D)D9uL9tpHUL t`MM`L9GHuH}Hh[A\A]A^A_]E91GHuI#qLML9tHUL LMfDLe HHH uIIHuIII0L]I8ED)fAA E DEL!fELmLDL)EH LEHHHHtBAD$_ AT$ L)D9uL9DL ~M|$ AGnE97u$HuI#wL9XDL} EI AGE97u$HuI#wL9 DLE  I L9 AGUE_ LD)D9uL9HUL Mg MAD$0E94$u&HuI#t$L9HUL M|$ AGEW LD)D9uL9VHULz BM|$@AGRAw )LD9uL9HUL9 M|$`L9H1HHCL;u MfI*L]fZA@E9q ~HuI#uL9-HULM] LACYE9u eHuI#sL9HULhIU@HB@E9u@]HuH#r;E9!~HuI#qLML9tHUL LMUfDLuA IIL }MLL}IIH0LUI8EE)fAEEEM!fLE}M)A I DIHMIAIt|It>AFEF DLD)D9uL9iDL*VI AFE9.u$HuI#vL91DLI AFkE9.u$HuI#vL9DLI L9H]LEAFEn DLD)D9uH9HUHhMn MAEnE] DLD)D9uH9bHUH&NMu AFA~ DL)D9uH9$HUHMu@AFEN DLD)D9uH9HUHMu`L9uL5lIIFE9a HuI#vL9]HULIIIN HAE9f HuH#qL9HUL  MF@LA@E9f@HuI#pE97HuI#wL9AT$ L)D9M|$ AGE9t$  HuI#wE91HuI#qfE99^HuI#q%f.L9AWI_EAGf.E9>HuI#vmf.E9}HuI#ufE91HuI#qLML9DLLMI fE99@HuI#qLML9nLDLESLELMOI f.E9} FHuI#vfE9t$@HuI#wE9}@EHuI#vfH]L90MvM&H]HuLIL#cHLAw )LD96Av D)LD9DAV DL)D94KDEg LD)D9fEL$ D)D9@E9>HuI#vYf. tfA*G@@EofI*DE9.mHuI#vDfE94$It$L!fMAfIM I*XSHɪHH=f.UHSHHHȪHHHH߾[]Nf.@UHATISHHtHtxH)HHw#H}M]L9tI$EHHufHHIHtDI EyHIHuH9D@ ELX(EI(I HHu5fHHRHtDR EyHRHuH9t DH E~HMILHHML`(I$ fEH@HHRHtDR EHRHuH9x Hx(EL(L LMu-@LMmMtAu yMmMuI9tH ~LEHUHHLE$L`(IL9%FI$)fL]HUHI$L]@H}LHH}I$LHH=W81fDUHAWAVAUATISM$LHHŭI$ADŽ$dHI$Hu*fHHIHtQ yHIHuI9ts ~](M$I@ LLH@$HP $IHt>I9tHtDLHDI$C$H[A\A]A^A_]HL1DB D9C @I?UHAVAAUIATISDLLHHH[A\A]A^]I?f.UHAWAVIAULmATISHHhA$L^L}HEHEL1Iă % LU)fU@}ELLLH59HB DH DKLSHME9#EzIAAM!IHtL@K48M@H;0v\M9~MMCVI~LUMLEILHIH}ILH@AH8HHHpILSDVfDLEHEIH}LHLIQII)IM9LH)LL9HHLSDIDcM!MM LSDHEfo]IIM!foeICD3H}ICd4L9t>Hh[A\A]A^A_]EaAEE9sIEIM!|ILELMM9BD AT$DefEHHIHHUHtLPN IL;vSHMI9NICNI~HMH}HtZHtPMHuH@AILMH0L@LHIMHH#EL HEHuI#vf.E9~@HuI#t$H9E91xHuI#qGfE91HuI#qLML9qDLղLMZI fE9<$HuI#t$oHEHMDHx۲LuHELLH ڲHEE\$ DLD)D9EL$ DD)D9 $fDIt$H]IHL!H]H I E9<$OHuI#t$%I2HHHof.UHSHHHmHHoHH߾[]ڲf.@U1HAWAVHAUATISHH HHH HHHHDžƅH@L+1HAL;IƾHAHI1LHII1L/AH0IHAWLF0DPL=,GH@L0L5tdVLF@H@H5{8HDž8L`DžhLpDžxHXٲEMLH`MZ0MBHDžH5{8H@LDLDžLDžHز{HH@H5z8Lh0L@HDžHLDžLDžLDžHVزH SLH=h{8LF`H(L@H}L LHLE{8L HLXL`HJ8LHHH@HUSLELFH5.a8HDž(L0L8L@HPDžpEEEL}ELuE]ײHLLLAQLH5*#IrHL9tֲ sfLL LMZ H@HDžMBH5=LLDž(ֲHIOHHH9HLHH97HL~LHH'HLHDžIHL9tղLIt$ML$I<$HM<0L9SMT$M9-MM|$E1B?2DH{HS H)HL9JHK HS(L`H5=I{0LLcMCH`HG$LHH@H HH5}8HDžhLpLxHDžDž,H{(HL Hp0LW=LcL[ HL $H@H5}8HLLL@HDžLLLLDžDž荽H{ Hs(LH &$MA0H=L#L[LMAH LH(H5|8H0H@H@ HDžLLDž8DžHaH{Hs LPL$HK(IQ0LMAHPH= HhLHpH5{8HxH@HDžXL`LDžHDžOL#H{ HL=Hs(HK@LR@H$L[LKHLL%FHLHH5Q{8H H @L@LBLHDžLL(H0Dž8DžHLPDžX肻LH{ML$@H$Hs HK(HUH=LS@L[HHE!LpLy9HxLHuH5`8HMH @LEMD$L`HDžhLUL]EEEغKM_IGMAG2IdIUHAWAVAUIATISH]H(P}HLHADŽ$dHI$IURHH5-\8H腞H}AH9t费EuMI$M$LHu.fDHHvHtN yHvHuI9t{ ~](M$I諹@ LLH@$HP IHt6I9tHt<LHLI$C$H([A\A]A^A_]HL帲1DB D9C @IUHAVAAUIATISDLLHHnH[A\A]A^]I^f.UHAWAVAUATISHHHt=LHL HH@HtD@ EyH@HuI9t ~ L~_E11fDI|$IT$ H)HL9JA$L-L}HEHELIă % LU)fU@}ELLL\H58HB DH DKLSHME9#EzIAAM!IHtL@K48M@H;0v\M9~MMCVI~LUMLEILYHIH}ILH@AH8HHHpILSDVfDLEHEIH}LHLIQII)IM9LH)LL9HHLSDIDcM!MM LSDHEfo]IIM!foeICD3H}ICd4L9tΖHh[A\A]A^A_]EaAEE9sIEIM!|ILELMM9BD AT$DefEHHIHHUHtLPN IL;vSHMI9NICNI~HMH}HtZ蕙HtPMHuH@AILMH0L@LHIMHH#EL HEHuI#vf.E9~@HuI#t$H9E91xHuI#qGfE91HuI#qLML9qDLWLMZI fE9<$HuI#t$oHEHMDHxLuHELLH虋HEE\$ DLD)D9EL$ DD)D9 $fDIt$H]IHL!H]H I E9<$OHuI#t$%I H)THHM!f.UHSHHHSHH!!HH߾[]^f.@UHAVAULoATSL/HtrIHI諅HHw2Hu$AAD$I\$AD[A\A]A^]HtHx觋I\$I$ILHLM,$H=!蛈ff.UHAWIAVAUIATL`SMt$H H(H׉$L`HHH_ApHhLAI\$0H]谄IH#HIAUUL}@B;辊L`LhLpHL0LLt MIILMLkH{ B(LELk0L}HMLk MLt MIILLED[0L{(IT$0B8H}L{@H9t蓉H`IL$H9t}$xH=n=LcIADHLaf.A7L@sHHLMY\f.HxWHpH`HLHˇL`"MlIHC L{0HLH茇HC M-I}ވHLkLLHYHLHx跈L}HELLH1H]LHs ML$@H=Y#HK(HS@L=H}L[HCHHuH5-8H(LpLF9HMH @HU!LEMD$L`HDžhLxHEEELUEL9tH;I9tvH{ I9thH`H(H [A\A]A^A_]H0LLK LW H ]#HDž8LGH(HPH5YE8H @L0L@LHDžXWJHSH`L#L#Hp H(LL@H`H @H5D8Hx HDžhLpDž↲HLLK LW H s#HDžLGH(HH5D8H @LLLDžm`HSHL#L#Hp H(LL@HH @H5D8H HDžLDžHLLK LW H #HDžLGH(HH5C8H @LLLDž胅vHSH L#L#Hp H(L@L@H H @H5IC8H8 HDž(L0DžHHPLLKLW H #HDžXLGH(HpH5B8H @LPL`LhDžx虄HSHL#L3#Hp H(LL@HH @H5tB8H HDžLDž$HLLK LW H #HDžLGH(HH5 B8H @LLLDž诃HSHL#LI#Hp H(LL@HH @H5A8H HDžLDž:-HLLK LW H #HDžLGH(H0H5.A8H @LL L(Dž8łHSH@L#L_#Hp H(L`L@H@H @H5@8HXHDžHLPDžhPCHpLLK LW H #HDžxLGH(HH5W@8H @LpLLDžہHSHL#Lu#Hp H(LL@HH @H57HHDžLDžfYHLLKLW H #HDžLGH(HH5w?8H @LLLDžH;HK HH#Hs(L=LSL`0HH(H H@H(H5>8H0 L@L@LHDžLDž8DžHNAH;HPHs L#LB0LSLc(L o=H`H(H@LPLBHpH5\>8HDžXLhLxLDžLDžHsHS(LH ޘ=LLc MK0MCH(HH #H5=8HHH@LHDžLLHDžDžHLLcH=#HH0L[ LK(L$=H H(H5W=8HH@L0L@HDžLLLLDž(Dž8e~XH@HK(L#H#LG0H5=L[LK L@LGH(HhH@HpHH5<8HDžHLPLXL`DžxDž}H{(HHK H[#Hr0LLKLBHH(Lі=HH5&<8HH@HDžLLHDžLDž}H{Hs HLR=HS(L LP0L%#HH(H@HH5;8H L L@LHDžLLDžDž(||oH{Hs L0MD$0H =L LS(HHH(L#L0MD$HPH5:8HpH@HDž8L@LXL`DžhDžx{H;HsLH =IK0LS Lc(MCHH(HL#HH@HH5X:8H HDžLLHDžDž4{'HK(HLk=LHP0LcL[ L #H(HH598HH@LL@HDžLLLLDžDžzHK HS(LH=*#MA0H5=L#L[HH(LMAHH@HHH598HDžLLDžDžyH HK L# Hw0L[LK(LGH(H He#L=H@H588H@HDž(L0L8LHHPDžXL`DžhKy>H{ Hs(HpH#Lw=LLKLP0HH(H@HH5 88H LL@LpHDžxLLDžDžxH{HHs H ۑ=LB0L LS(L%/#HH(LLB HH5l78HH@HDžLLLDžDžxH;HsLH#HS(IL$0LS L%=H H(MD$HH@H(H568H8 HDžL0H@DžHLPDžX`wSH;HK H`L=LSLc(LX0HpH(L #H5K68HH@LL@L`HDžhLxLLDžDžvH;LLSHW#MA0H5=Lc L[(HH(H@LMAH HH558HDžLLLDžDžv HH #LLcHr0L[ LK(LBH(HH)=H558H0 H@HDžLLL L(Dž8H@DžHwujHs HK(H=#HPL=LLKHH(HB0HpH548HxH@LLB HPHDžXL`LhDžDžtHL#Hs(Ln#HK@HSHHx@L0L[LK HLߍ=H(LL@L%MFHH538H H @H(HDžLLDž8L@DžHLPDžXtL(IT$AD$I$ID$HH=%!nHH=!pIFдIyдддf.UHAWAVAULATISHHH`HKIUHDžHHqƅHD~ZH5LL#LL HLAP{H(L@H SFHH5Ob8LSVL HMQPHhHPHDpL=7HUfHMH@HuH5O=LEMAL@HDžHL`HEEEL}EE5rH IL9tqLIt$ML$I<$HM40L9MT$M9MtHILH:L=w;CHH=rUMZHN@HLFH5H=A HH @LDHH0HDžLL=w=:DžLDžLDžDžHiLHPHHAPH GH=HxH=LHHHPLH=2_VHXMq@L8L0L8HHH HHLL5d7H(H @HH0HpL@MALHDžLLHDž8DžHLPDžXHgHML$L9tLgLDDž0.0fLILHDžƅAgF AhAj HSHBH HL3@H߉AV@LHA1HHA@LƅHIparams.nL@HDž8IL0EbA@ E^AA HƅHDžHZHHH5vZ[L0H8LpHxLHHHLH0LL=;/8M^p H8LPHL$9HXH FVLL0H5E=L@L%7H`LHxLMFHH@LHDžHhLpDžDžHDžLDžDžDžeHMOHHL9D LLIL9i HLD~LHDDHV HLHDžIHL9tcLIuIEI}HI0H9MeL9MtHILHbI}I]LHIL9ticLH0IL9tMcHHHH9t1cLHIL9tcLHpIL9tbLHPIL9tbLH0IL9tbLHIL9tbHHHH9tbHX[A\A]A^A_]HA H o"81 5HsHFH^ f.HAH !914LH F=HF=LA11LH D=4H`HxHNHH`L0I9sL`L@LpLHLhH8H@@LhHL)HELL`M~ISI9HpI9rM}}foH=fAJAB}AH`LLhBD7LIAH`MFLH9;LpHLL [DHM$H0L8H`LHhLLpHxHHDLHLHLLL0L=7L L 7H(H8H  8H@HI7LHLKAVHXHHDžhƅpHDžLPL`HMD$L}LHMLH @DžhLpDžxHEEEEH]ELUE_HMgHHL9LL IL9HL~LHHHL HDžIHL9tz^HIL9te^LH`IL9tI^HHHH9GGfHH52nHAH 9101LI}8DHA H 81p0KHL`DLLMZ`pHH7LH>VLMBHH @HLL=&8HH5?=L`HDžhDLDžLDžDžHDžHDž#]HMD$HHL9LHIL9HL~HHHHLHDžIHL9DA.DHAH %81.kHA1LH @=ZDfopLL) fDHtHLZHHHHoH)pHAH 91-1@7I}TH~LHIHDcfDHA H j91@-+HtH)DYHHHHHtHYHHHHH~LHIHDH~HHI|$HP@ HHHH*HHH=@"hTHkHGH*HOH黷HcH㷴HkHﷴHH7UHATISHHtHtxH)HHwVfDH; tH;I9tUH{ I9tUHUHĸ L[A\A]A^A_]LH{ML$@L#Hs HK(L]Ho=HS@LSHLpL|FHxLHuH58HMH @HULEMD$L`HDžhLUEHEEERUH{Hs HPL #HK(L#LR0LBHhLhn= LHpH5V8HxH@LPHDžXL`LDžLDžTvH{Hs HHL#HK(L@0L#HL L@Lm=HLHH58HH@HDžLDžLDžTHH{(L HN0L?m=L[Lc HH#H@HLL0LFH58HDžLLLH Dž(Dž8uS8HS(L@LH5#I|$0H l=LKL[ H@MD$LHh HpH5P8HH@HDžHLPLXL`DžxDžRHS(HH= l=LL@0LKL[ L%[#LL@H@H58H HLHDžLLLLDžDž5RHsHK LLIS0Lak=LLK(HH# HH58HH@L MCHDžLLHDžDž(QYH{Hs(L0Hj=II0L#LS MAH0L#H@HHLHXH5N8Hp HDž8L@LPL`DžhDžxPH{Hs( HL@0H !j=L#LS LL r#L@HLHH58HH@HDžLLLDžDžXPH{ HS(LLi=Ir0LLcHߤ#HH58H@H LH(L@MBHDžLLH0Dž8DžHO|HHK H5h=L HW0L[Lc(LGHLL2#HH@HH5C8HDžLLLLDžDžOHK H L H=#L@0HCh=L[Lc(L H5 8L@H@H@HPLH` HDž(L0L8LHDžXDžh{N>HsLLLpLg=LK L[(IL$0HH#HpH5 8H@LMD$HDžxLLLHDžDžMH;Hs LH g=HS(LSMY0MAHL%V#LHH5W 8H HH@LHDžLLDžDž;MH;Hs HL ա#HS(L@0LSL\f=LL@H@H LH0H5 8H8HDžL(L@DžHLPDžXL_H`H{HK Le=HV0L#LS(H##H`HxLHH@LLFH5 8HDžhLpLHDžDžKH{(LL H5#IJ0L[Lc MBHe=HH@HLHH59 8HHDžLLLDžDž^K!H{(HL L@0H d=L[Lc LLٟ#L@H(LH5 8H@H@HDžLLL L0Dž8DžHJHsHS(LPLc=I|$0L L[ HE#HPLH@HhH58HxLMD$HDžXL`LpHDžDžJHK Hs(LH=Qc=IS0LLKMCHL%# HH@HH5)8HLHDžLLLDžDžIBLLSLH0H #HDž8LH L@H58HPL@H @L0LHDžXIHSL`H=#LIt$ HMD$LH`H @H5&7HxHDžhLpDžH^LLS LHH -#HDžLH LH58HL@H @LLDž*HHSLH=ǜ#LIt$ HMD$LHH @H5+8HHDžLDžGzLLS LHH I#HDžLH LH58HL@H @LLDžFG HSL H=#LIt$ H@MD$LH H @H5$8H8 HDž(L0DžHFLLS LHPH e#HDžXLH L`H58HpL@H @LPLhDžxbF%HSLH=#LIt$ HMD$LHH @H5?8H HDžLDžELLSLHH #HDžLH LH58HL@H @LLDž~EAHSLH=#LIt$ HMD$LHH @H5F8H HDžLDž ELLS LHH #HDžLH L H58H0L@H @LL(Dž8D]HSL@H=7#LIt$ H`MD$LH@H @H5J8HX HDžHLPDžh'DLLS LHpH #HDžxLH LH58HL@H @LpLDžCyHSLH=S#LIt$ HMD$LHH @H5O8H HDžLDžCCLLS LHH ՗#HDžLH LH58HL@H @LLDžBM_IGMAG|I֡If.UHAWIHAVLAUATSHHHLLPL#HAT$@H5w8LA|&L31HAHSIHzL+HAUH01L牕8M4$A{LLApFHpMb0MBIʼnL5}UHPH@H57LLHDžDžLxLDžLDžHhGAEMpLHHxME0H5<7HDžLME H@H0DDž8L@DžHH`@HHHHpLA11LH '=LPL`IvHPLM9LPLXL`ILHLXL H@@LXM)IHPIL$IVHXH9lH`H9XL }fo=l8fwG}?LPMT$MFLXCD#LHPML$LL9H`HHDSI~HD0HPHXLD4HPDLLH8LHHXDD LLH0L@HLxLHL&7HhH=7LPL 7LXLR7H`H }7LpL^!HHDžXƅ`HDžDžxLHHLL@HH @DžLDžDžDžDžLDž=HIL9t3=HPIL9t=HMmL9t =LpHIL9t!x(UHGHAUATISHHU>HL*HZLHtMtiHw8Hu"AuAt$I\$HL[A\A]]ÐHt fHx2H{,I\$I$HLHk+I$H=F:!)H=;>!'ff.fUHAWIHAVAUIATL`SMt$H ,L`H .&H HH*HpHhLAMt$0Lu%HH%HAUUH]@A+LpH`HHHhL0HLk0HuHUH{ Lk HH H}Hs@MD$0H L9t4+H`ML$L9t+,xL-=McMAfDHL8f.H,LKfHx'+HpH H`HH)L`Hx*H]HEHLHi)LuLH{ML$@L#Hs HK(LULD=HS@HCHLpL 8HxLHuH57HMH @HU!LEMD$L`HDžhHEEL]EEK*H; tH;I9t)H{ I9t)H)Hĸ L[A\A]A^A_]LH{H0L~#Hp H @HDž8H0H57L@L@HHLLPDžX)NHSLL`L 5~#IL$ MD$LHDžhH`H5:7H @Hx LpLDž()LH{HL}#Hp H @HDžHH57LL@HLLDž(jHSLLL Q}#IL$ MD$LHDžHH5m7H @H LLDžD(LH{HL|#Hp H @HDžHH57LL@HLLDž'HSLL L m|#IL$ MD$LHDž(H H57H @H8 L0L@DžH`'LH{HPL{#Hp H @HDžXHPH547L`L@HhLLpDžx&HSLLL {#IL$ MD$LHDžHH57H @H LLDž|&/LH{HL{#Hp H @HDžHH5e7LL@HLLDž &HSLLL z#IL$ MD$LHDžHH57H @H LLDž%KLH{HL2z#Hp H @HDžHH57L L@H(LL0Dž8'%HSLL@L y#IL$ MD$LHDžHH@H5.7H @HXLPL`Džh$gLH{HpLNy#Hp H @HDžxHpH57LL@HLLDžC$HSLLL x#IL$ MD$LHDžHH5a7H @HLLDž#LH{HLjx#Hp H @HDžHH57LL@HLLDž_#HH;HsL%w#HJ0LS L[(LBHL u<=H@ HLHH5g7HDžL L(L0Dž8L@DžH"sHK HS(LLPL;=LL[ML$0HpHFHLHH57H H @H(L@L@LHDžLL0Dž8DžHLPDžXrM_IGMAGYIxIHxsxuxfDUHAWAVAUATISM$LH,HI$ADŽ$dHI$Hu*fHHIHtQ yHIHuI9ts ~](M$I@ LLH@$HP QIHt>I9tHtDLHt I$C$H[A\A]A^A_]HL1DB D9C @IwUHAVAAUIATIS"DLLHHH[A\A]A^]IHwf.UHAWAVAUATISHHHt=LHL HH@HtD@ EyH@HuI9t ~ L~_E11fDI|$IT$ H)HL9JHhH0HH9t"LHIL9tLpHIL9tHxHHH9tE15fLCHS L)HL9DKHuI#vf.E9~@HuI#t$H9E91xHuI#qGfE91HuI#qLML9qDL7̱LMZI fE9<$HuI#t$oHEHMDHxѱLuHELLHyбHEE\$ DLD)D9EL$ DD)D9 $fDIt$H]IHL!H]H I E9<$OHuI#t$%IT8H HH-ff.UHSHHHݛHHfHH߾[]>ѱf.@UHATISHHtHtxH)HHwL8LAH@HxIHHIL[J@LE1IHPH8HJIM)IM9IM)MI9LX@L[HDCI!M L[fIHEfoUHM!H5<AD HLmfo]H IHUC\ D+SHELSAM Mc$MAfAfAfD]9HE fouHIM!A4Lmfo}LmHLA|A$iL}HEHEL贖Iă ( LU)fM@uELLLOL&"IB DM Ë{HsL]A9scHEfDo]III!fDoeIGD#IGd'H}L9t盱Hx[A\A]A^A_]IAAI! IHtLHO9MIL;v\M9~LICFI~HELMIzLHMHMIMH@AHLXL@HsIDfDIDcI!LL HsM!AAMIHtHPN HzL;vbM9NLICFI~wIILLMHE#HuLUHMH0MпH@LXIL@LSL8 ID{M!M MLK1DGAAD9IEIM!ALIM9FDzAAD9EIM!HLL9eDgAAD9jIEII!HLMH}L9Nf AL$DefEH5HIHHMHtLPN IL;v[L]M9^MC^I~L]H}H聜HI>LEH@AILMLHxLHILHH#EH HE1LMHEIL]HPLHrHL)HI90LL9v`M9~LICVI~HxLxItPLśHI>HxILH@HxH0HPHIhH}-HsDL1IHHLHyII)IM9LL9vzM9NLIC~I~:IItsHxLHpLMHUHULMHHxHpMIH@L@HLHHHIHLS D1E1KfDLH9v~M9VLICFI~II$LDpHxHELUFHMHUHHxDp'MH@ILHHHʹHPHIMLHDEBL[IDEIM)MM9L@HsDfDII)MM9KLXLS FHxD~xfElEFHUHuH蠔I苔IsHsDE1aLS E1"fL[E1HpHhLxHU蟕HhHpLxHUHE~eflAfsDhHpLUHxLDhHpHE~EHxLUflAFHpD~pfElENIDxLUޔDxLUHE~MflAN 貔HED~UfElEVLxHE脔LxHE~mHEflAnRHf.UHH"II HAWAVAUATSHhLnH}HuI!HLELMEHxEI9LLA IHH0H}HUH8AH}A)fEEI!fLEM)I EIMLMMIAItiIt;LAE1E9}u#IuH!L9;DL (ME LA@EP D)D9I LA@EX D)D9u$LEL9DL贌LEI L9LpEMLA@XEp D)D9SMp LAFEN D)D9MV LABAJ )D9I~@HGW )D9uL9HUL勱MF`L9BLpfH<EHH HxHuEI9 IHA IIH0L]MI8LpMHE)fAH}EEH!fIEM)I DIIHUIAItlIt>LAD$E94$u$It$H!L9 DLԊ ML$ LAAEQ D)D9I LAAAy )D9u$LML9? DLhLM( I L9L}MLAA Ei D)D9 Mi LAEj EM D)D9f MU LAB EZ D)D9 IU@HB DB D)D9uL9p HUL蜉\ MM`L9?L<EIM LxL]E L9LMA IHDI0HuH8HpMMH)fADEI!fEHMLEM)I DIMHEIAItlIt>LAD$E94$u$It$H!L9 DL薈ML$ LAAkEA D)D9fI LAAC AQ )D9u$LML9DL*LMI L9LeMLAA,Ei D)D9'Mi LAEEM D)D9ME LA@Ax )D9IM@HADQ D)D9uL9HUL_MM`L9@HuH}vHh[A\A]A^A_]fDE9 HuI#pLEL9tHULLEfDA AIIL xEIMLLuIH0EI8LUE)fA EEM!fLEuM)I DEIHMIAIt|It=AEA} DL)D9uL9P DL!= I AEZ E9}u$HuI#uL9 DL腱 I AE Au D)LD9uL9DL諅I L9H]LAEL Eu DLD)D9uH9HUH\tMu MAF" E^ DLD)D9uH9FHUH2Mn AEAU DL)D9Mn@AEEE DLD)D9uH9HUH趄Mn`L9mL}L-uIIEIEL}H= 豇E9` $HuI#vL9eHULIQMV LABE9f  HuI#rL9$HULI~@HGE9f@HuH#wE91HuI#qLML9tHUL誃LMfDLe HIL xMMAL]II0HEI8E E)fAH}AEI!fELpMDL)AH HUHHHHtCAD$j ET$ LD)D9uL9[DLHM|$ AG E97u$HuI#wL9"DL臂I AG E97u$HuI#wL9DLOI L9 AGOA L)D9uL9HULMg MAD$E94$u&HuI#t$L9cHULǁOM|$ AGEO LD)D9uL9!HUL腁 M|$@AGAw )LD9uL9HULDM|$`L9HE1HHCE9q HHuI#uL9]HUL週IME LA@#E9u .HuI#pL9HUL言IM@HA E9u@.HuH#qE91CHuI#qLML9tHULJLMfDL} HHH xIIHuIII0LUI8ED)fAAEDEL!fELpLDL)EH L]HHHHtBAD$AT$ L)D9uL9DL`M|$ AGE97u$HuI#wL9DL'oI AG E97u$HuI#wL9JDL~7I L9 AGEW LD)D9uL9HUL~Mg MAD$E94$u&HuI#t$L9HULf~M|$ AGEG LD)D9uL9HUL$~lM|$@AG|Aw )LD9uL9?HUL}+M|$`L9HE1HHC E9q HuI#uL9UHUL}AMU LAB}E9u HuI#rL9HUL@}IU@HBdE9u@HuH#r_E9~ HuI#uH9tHUH|DH]L93AEHMIHHML|IHHiE]HED]LuLmB0LW`H}IH}L9tIHUL#bHL{E9}HuI#uE9>HuI#vf.E9~@HHuI#uH9#E97HuI#wL9QE97HuI#wL9A|$ L)D9 M|$ AG)E9t$ PHuI#w&AL$ L)D9cM|$ AGE9t$ HuI#w}E91HuI#qf.E91HuI#qZf.E98HuI#pf.I9ELmLuIEA]M#eHLfDI99ELuE E98WHuI#pLEL9BDL'zLE+I &fE91HuI#qLML9^DLyLMGI qfE91$HuI#qLML9~DLyLMgI fE9t$@HuI#wE9t$@)HuI#wE9}HuI#uzfHEHMDHx/LuHELLH}HEdAw )LD9Aw )LD9UlEM DLD)D9@Eg LD)D9fEg LD)D93fEL$ D)D9Qh@EL$ D)D9o@AU )D9fDIuH]IHL!H]HMI fE9EHuI#utfE94$>It$L!fA94$It$H!I'H1KHH]f.UHSHHHKHH1HH߾[]n}f.@UHATISHHtHtxH)HHwMNIvHMI0L9MVL9MuI^11M\$IT$ L)HH9Ie@1L7I>OfDA0DDI>/HH=61荀I@UHAWIH5<AVL5MEAULmATIU LPSMEHHHGHx(OLHUMH@HELuEzHHXu(HH~LXIwM_I?HPM,0L9IWI9MMoE1B/3fDHCHS H)HL9JrvLHDžIEƅHQLf1ɺ?L`H5<L))@)`JrHINHHH9 M}LL9 HL~LHH HLHDžIHL9t(qHLbfH@1ɺcL@H5]~<))@)@HTqLLHHHMQH@M,0L9 LM9h MsHLB(H@HH9t_pHf1LPH5~<d))@)PpHLHHLLOH@M,0M9Y LM9MHLC+H@HH9toH1HIHHJH`LXMLHu0IHHt ;W ~HL9tA;Q HLoDLX8@8HP LX(HIPDP H@0LHkdLHHHu H9K HLLfIxLLIELHIq(IQ0HH H LJ<LLHW LGHH@H 2H @H5\|<HDž(L0L8DžH|nLHHHHM 0H@HWLH9nLL9Mt H<0ILHlHHLHI0H@L9tZmHIL9tEmL+HAIHH?H`LXLLHufDHHIH;Q ~HIDkLHHEIO0LMGHDL@L5%<HHLH@HH5~<HDžLDžLDžlLHIt$MT$I$H@M<0L9M\$M91L(>H1(H)H1(LO1L(I$UE1LH@HLxLHzPD[H5<L`LL REHpHL=<L<H@LHhH@LELBaHuH5]{<HDžHDPHELMEL}ELUEEZkLIt$M\$I<$HM<0L9IT$I9|MtH<7I@LHuiI<$M|$IB?HL9tbjHIL9 H9tDD;O HH~jLP8@8IPLP(HP HP H@0LH\_LHHHuH9tE1B A9C AHDLLaIxHLIMHHw(HW0LHLPHLL<IQ HMAH @HP3HhH5}w<HDžXL`LpDžxeiHLHHHLOH@M40L9iHI9Mt H<0ILHsgHHLB0H@HH9tThHIL9ZI1L$I<$H<0ILHfHhI<3IjLHfLA3H1q$HH1W$HH~LHI~H I<$H1#LPH1#H1@7LDDH/ I$z%HtH]eHHHHMAAAe LDDHAIx(H9t!HL"fHLLHfLM^I{(H9t!HLeHLLHeLL-DDHDDHLH=61wk1r A9p @@7HHHϳHϳH>гHгHEгHbгHгHϳHгHгHOгHгHгUHAWAVIAUATSHHHGHx(L'AT$@L;HAAAlAAQA!E1-LSHS L)HL9o KIFLHM,0H9oIVI9wfMuAMnIB/LsIF(HL9tcHĘ[A\A]A^A_]DHI^LH@bI>1LI>fsH HEH@HG LH@LGL牵0H5u<H HDž(DžHIcIvMMNLHM,0M9-MVM9MtI<3ILHhaMMnIC+HL9SbfDfL1ɺHH5x<)) )LPHHvbEAH{0E1E1H LDXHHLID\HxL`L;xtLaL[0MCIS L)HL9K4(HHQHH5_9EHH;`tp$apH{0uLHW L)HL9kOr<L)) )\E~HE11LH MtU.H SHL ҊELHN0Lu<HDž(H H@0tH@LLHLFH57t<LPDžXL`Džh[LIvM^IHM<0L9IVI9MM~IB8HL9t[HIL9xD DI>E1LMgHHHE11H sU-H<2ILHYIH<0ILHnYIBADDM1LI1LIArDžGI^1@7ILH=61_LH=61_LH=61_LH=61_LH=61_LH=61_LH=61_HLH=61n_HLH=61Z_LH=x61I_LH=g618_H\ųH8ųHpųHųH~ųHųHųHųUHATIS1)fID$IT$ H)HH9s"HHLhL9trD;b |lLI~HHr(LHR0HMXMPLLhMufLM[ME;c ~M[HHhFID` H@8HhI@(IP IPI@0A@8HXL`:L`HXHI9t H LLLhv=IxHhH;hD;b L It$LH Hr(HR0HLKH`LsEMk@Hi7LLLLHB9H5c<H@HLLMCHHDžLLDžDžHDžDHIMHHH9L@LIL9HhL~hLhHhHHLHDžIHL9t{CH IL9tfCHIL9HH`CD` L`8H`HP L`(IHH@0@8HX8LXHMHu H9hs HhLLh ;IpHhHHhHH"Bfo% d<fo-d<@ zD@!HHDž! hHDž!AH@HLc<DDL@@H5Kc<DPH@LL@Lc<HL@-LHH5]<HDžHD`DpDžLDžDžBHIMHHH9LhLIL9*HXH~XLXHXHHHHDžIUHH9t@HHL H`DSHxMk`H(L H oEH(L L-a<L H`H5>9LmLD0L8HHLLPMCHXHpH7HMH= @HuH5X\<HDž(L@EHEELUEEE^@HM]HHL9|L@LIL9HXHD~XLXHDXDHHHHDžIEHH9t2?LhHIL9##LM9_LHh?LhDH EHx`MM(0@7H(H;Iz(I9t!H`Lh>H`LhLHhp>LhLVIz(H9t!H`LhE>H`LhLHh(>LhLHtLAT$ LMu$f.IvHIA~ Iv1HhD~hLhHDhDI}HkHtHYLMufMfAMtMA~ MfE1MEM9uMI1@7HHm@7HHHHLMuID$AHtIA|$ ID$E1LEL9pLLh8Lhx I1#ME1LMuNMNMMAv MN1DDHHME1ML9xLLh7LhIċp OM+MpH=s!E2I鸣II铣I鵣IѣIIAI$Iff.UHAWIAVAUATSHHH}HuHUEHEH(HxLHHHUHhI9HpE11@IcT$ IIHEHpHH}fffMHI!LHLJ|IL9 M9 HH#pLHH II!HUfoeHMAeIt$(IT$0H A ALxA)fDED]͉HH}L4HUHfomAmE1fDmLmL!MHD9)EhAAE1HIHtLAOL;M9OMMC_IHI!LH LML`7MLMHHH` IHMAHAHQINLQHM L!Q EE1HML57IM DYL}LQD9E8IAAM!L}IHtLHK1IH;v[LULM9rICZIzII7L6HLMHLH@I9IAHxHuHPILVIL}M!MEgM MWHELEHIfDoUM!DmDmEADmfDo]HE\ AH]HXFLHH8E1ILmH]L9g1EfMct$ L]LmLHHELf%ffEIL!HpLLT0HI9L9HL!HpL HH!HLufDouHMD2Mct$$HELLuLuf%L!MfHfEfDo}DzA9EAAE1HL]I HtHAJH;UHELL9HHCPHxHI!HH/LhHp4MLpLhHHLELLH@I0IHpADA9AIHMAIM9LUIHPH8LRHpLL)HH9 LH;p HI!HPLMH%HI L!Mt(LHhLp.LpHh@LE@IDsHLLMfoe$D1IH9EAEHML=:IM yLmHq9 IAAI!L}IHtLPK*IH;vcHMLL9iHCYHyII6LD]2D]HLEHLAH@MILHLmHPIIuAEIHMI!LDaL HqHE H]HIfo]I!DuD]fouAHAtLuH=,9II HxI`L]螼LUE:EJE9MZLeHEIE1fDoMH=@O<IHM!H G ;E,$fDoUL}H]IGT+A $EL$HEIt$MA $AhAA fDUD9EL!AAIL]IHtLXO +IL;v[LuLM9nIC^I~gIIL0HZHuHMAH@LHLPHULHIHr ILmI!LEeL IuL]HEHIfDomL!H]D,E3HEfDouIFt6AEALpMIcXLM<EKHL HEMCHHMfff}D9rEEqAEE9LeHE HIfoMM!A A $H]foeHAdA$HĘ[A\A]A^A_]MZEIAAM!lLEIHtL@O 0IL;v[LmLM9uIC]I}HIIL.HHMHMAH@LHLPHuLHIL^D>f.HLuL!IEfM M^@EaAEE9IEIM!DMHL9stEaAEE9EMII!LMHL9WwfL9 H}LWHwI>H4 HLH!H<1@M9 MoMOIrM ILL!HpE1M!AAM L}IHtHPJ4*HH;0vZHEML9hLC`HxMI1 L,HLML LH@MILXH}HpLLGIL}M!MEwM MG@M1HEHHPH0LzMI)IM9a LH9sWHUML9jLCzHzMItLL+HLUH@LL8AM ILHHPIoMH LEIpA/M1HUHHpL8HVII)IM9 LI9sVHMML9qLCyHyMItKL++H LUL8LH@M ILHHpHIe H6 H}L_D?xM! IAL!H`HU*HUH`HmI7L(HxAH@HpIBM1LE@HDkHLHufo}<D(IH9hvDuuDEVAEE9vEIHsMEIM9sf.IHPH8LRH}LL)HH9LH;UHI!HPLMH HI L!MLH`LE$LEH` DJUfMMIMQIHtLHK IH;vzM9WLICGIHL`HEHt{HPHX(HXHPHtUMLEIAH`H@LLXHHHIMHH#EL HEE1E1H5G7X@DgAAD9IEII!)MHL9@HL)LH;pHxYfLELM9HICPIxHHI!H#HXLhLpH`z'LpLhHL`HXH}LLAH@HHHH^fDEcAEE9IEIM!DMHL98uHL)LH;}!Hxl@M9OMMCGIFHLI!H/HPLXL`LEq&HUL`HLXHPMHLH@LPAI@HtCLXML;w3IIM!J L@HL H!kDLEMHI@InH]IAI!LhLp%HpLhHHuH8AAH@HHHPPfHHAH!HhLp%LpHhH~LMLLPH@I9IHxPfDLPHXH`HH!LPHXHE~UHHH`flAWM1fDHtCHpHH;8w3IHI!H 0HxIL I!DMoIGIHIAI!HUL`#HUL`HML(H@LXI`fE1ZHp HHI!LHQHM L!HILI!HL1ME1HEHHPH0HzIM)IM9LH9v_HULL9jHCzHzH}L]ItOL"HL]LMLH@I3LIHpHPHIMHMLA M1H}HHPLHrII)IM9LL9vdHELL9pHCpHxTIItYLHp"LpHLMLLH@I9IHxHPHIHHMLQHH)LH9LmHHIuAM/HH)LI9LuHxM^E> HII!H&ILI!HFLE1M1LEIHPLHrHH)HI9LL9vlHuLL9nHCFH~IItaLD]Hp D]LpHLELLH@MILHHPHIHH}HwLHFAL`Hh LEL`HpHhD~pfElE`HPHXL`LhHuHXHpL`~pLhflFHPAHXH`XHXH`HE~EflAG*HHLPLXL` HHLPHE~]LXL`flA_aHH)LL9HxHL)LH9LmHHMEAE`HLLMHLHIHLL! HH)LL9+LuHHMVAAL`HhHML`HpD~pfElDiHhL`HhLMHhHp~pflAIL` ILM!LHHD]LmD]IIuAELAD$X$E9,$u$It$H!L9DL I|$ HGDG D)D9H HGEW )D9u$H}L9lLD= H}UH H9LuMEHGDo D)D9Lo LAEA} )D9ME LA@EX D)D9MU@LABEJ D)D9uL9HULo I}`H9@f.L-#:EIM LpL]E L9 LMA HHI0L}MH8A LIA)fALhEEM!fELEMEL)H DHMHuHHtkHt>LAD$!E94$u$It$L!L9 DLc  IL$ HADY D)D9H HA"Q )D9u$HML9 DL HM H H9LmMEHA" Dq D)D9 Lq LAFAN )D9M^ LACEK D)D9MV@LABEB D)D9uL9 HUL,  IN`H9@H5 9EII HxL}EL9 MM HII0LMMI8LpID)fAALEDEM!fEMEL)H DHMHUMHHtlHt>LAD$E94$u$It$L!L9[DL$ HMT$ LABEZ D)D9I LABEJ D)D9u$LUL9DLLUI L9L}MLAByEj D)D9tMj LAE EU D)D9 M] LAC2 EK D)D9. ME@LA@K AP )D9uL9HUL MU`L9?fDL.<EIM LxLMEL9LMȾ IHI0HEMH8AHHp)fAHUDEI!fELEM)I DIHMMLIAItkIt>LAD$E94$u$It$H!L9DLIL$ HADA D)D9H HA#Q )D9u$HML9BDL{HM+H H9LeMHADi D)D9Li LAEvAM )D9sME LA@Ax )D9MU@LABEZ D)D9uL9tyHULtiIM`H9IHuH}WHx[A\A]A^A_]D91?HuH#qHML9tHULZHMfDLeA HHH xIIHuIII0LEI8EE)fAAEEEL!fELpLDL)DH H}HHHHtCAD$ET$ LD)D9uL9DLnM|$ AGEg LD)D9uL9DL-I AGfE97u$HuI#wL9DLI L9 AGEG LD)D9uL9WHULCMg MAD$E94$u&HuI#t$L9HULlM|$ AGE_ LD)D9uL9HUL*M|$@AGrAw )LD9uL9HULM|$`L9HE1HHChDD9q HuI#uL9MHUL9ME LA@pE9u {HuI#pL9 HULHMU@LABVE9u@sHuI#rQE92HuI#rLUL9tHULLUkfDL} HHH xIIHuIII0L]I8ED)fAAEDEL!fELpLDL)EH LMHHHHtCAD$ED$ LD)D9uL9jDLWM|$ AGE97u$HuI#wL91DLI AGE97u$HuI#wL9DLI L9 AGn E_ LD)D9uL9HULDMg MAD$ E94$u&HuI#t$L9qHUL]M|$ AG AW L)D9uL90HULM|$@AGAw )LD9uL9HULM|$`L9HF E1HHCE9r HuI#uL9UHUL!AM] LACE9u HuI#sL9HULME@LA@E9u@HuI#pD99HuH#qHML9tHULHMfDLm HHH pIIHuIII0L]I8ED)fAA E DEL!fELhLDL)EH LMHHHHtCAD$ET$ LD)D9uL9 DL Ml$ AEOE9}u$HuI#uL9 DL]u I AEE9}u$HuI#uL9O DL$< I L9 AEE] LD)D9uL9 HUL Me MAD$g E9<$u&HuI#t$L9 HUL Ml$ AET EE LD)D9uL9 HULYq Ml$@AEaAu )LD9uL9D HUL0 Ml$`L9HLmHHCA]HxL}HIM#gLD9y !HuI#vL9-HULM^ LACE9~ HuI#sL9HULPMV@LABE9~@HuI#rD9?HuH#wH}L9tHULH}fDLu HHH pIIHuIII0LEI8ED)fAA E DEL!fELhLDL)EH L]HHHHtCAD$!ET$ LD)D9uL9 DL Mt$ AFE9>u$HuI#vL9 DL I AFE9>u$HuI#vL9i DLV I L9 AFEF LD)D9uL9 HULL Mf MAD$E9<$u&HuI#t$L9HUL Mt$ AF~EN LD)D9uL9HULMt$@AF3 Av )LD9uL9^HULJMt$`L9HME1HHC+fDD9 vHuI#uL9UHUL)AME LA@QE9} ]HuI#pL9HULMU@LAB8E9}@]HuI#r3D9!yHuH#qHML9tHULHMPfDLpA HIL hEIMLL}IH0EI8LUE)fA AEM!fLE}L)H AAHLMHHt{Ht=AF EF DLD)9uL9s DL` I AF} E9.u$HuI#vL9; DLl( I AFe E9.u$HuI#vL9 DL4 I L9H]LEAFzEn DLD)D9uH9 HUH Mn MAEXA} DL)D9uH9m HUHY Mu AFE^ DLD)D9uH9. HUHb Mu@AFAv D)LD9uH9HUH$Mu`L9uL5LeIIFA$HxLMHIM#aL;D9a HuI#vL95HUL!MV LABE9f HuI#rL9HUL`MF@LA@uE9f@HuI#pnE9}LHuI#uL9'(E97HuI#wL9AE9>HuI#vL9nE97HuI#wL9AAT$ L)D9eMt$ AFE9|$ HuI#vAT$ L)D9Ml$ AEE9|$ HuI#uED$ LD)D9M|$ AGE9t$ HuI#wfDAT$ L)D9.M|$ AGKE9t$ rHuI#wHD91HuH#qf.E92HuI#r{f.D9)HuH#qf.D9/HuH#wf.D91 HuH#qf.I9LuE]E1II8EI fMMDI@HM!IDHL!D@0DEHu+HHIHt;q ~HIHuH9t;r }s(uHUcD]HuI0@$HP DX HE謙LMH_Hu H9HLLMIXHUDUADR$E;}ILmA]M#eHLfL9*McLmLuIM`A]M#eHLfDL9fA ALuEhDL9EnLuMfM|$pMD$hLMu1@LMMtE9o }MMuI9 D9k M\$@Ml$8MS$MM@MMIMtA9Q }MIMuM9A;R MDMM[MtA;S ~M[MuM9tA;W }p0Mm{$LH@(HP Iljx I|$0ۖHHI9tHu1r A9w @ fDLLID$XIG(HMHpILEAM#`HxHLcLHEdLELE9>HuI#vf.E9}HuI#ufD91HuH#qHML9DL'HMH fE92HuI#rLUL9DLLUI fD91HuH#qHML9nDLHMWH fD9/HuH#wH}L9LDgH}H fD9)HuH#qHML9LDLp LpHMH E@E9} HuI#vrfE9|$@HuI#uE9t$@:HuI#wE9t$@HuI#wE9|$@HuI#vE9}@:HuI#vfH]L9%LUEnLMILMHxMIL}E1LUEI~EIL!JDL!IHX@uHXL!HMALmHUHu0f.IHvHt;V ~HvHuL;mtA;U }LUHULH}LU2IHA3IU0I}(HI1E;~DILuAM#fHxHL|@1B A9A @fDAV DL)D9DAv )LD9%Aw )LD9Aw )LD9Au )LD9 7Eg LD)D9]tfEe LD)D9fAv D)LD9zDEf LD)D9 fE97HuI#wyf.E^ DD)D9A|$ )D9DA|$ )D9DET$ D)D9@E\$ D)D9!8@E9<$It$L!fA9KHuI#v"f.E94$`It$L!7fE9<$It$L!fE94$It$L!fLI.Hxf.UH8HHAVAUATISH@HHL0HsL8LsHMIvL`8I^LHHsL?8LsHMIvL8I^LbHt}HsL8LsHEMt`IvL7I^L(HtCHsL7LsH Mt&IvL7I^LHDI$M$HtHHsLCH{(HS8LkH9tHMtLHMuLˁ[LxA\A]A^]fDUHHHAVAUATISH@HHL0HsL6LsHMIvL6I^LHHsL6LsHMIvLn6I^LHt}HsLQ6LsHMt`IvL46I^LxHtCHsL6LsH[Mt&IvL5I^L>HDI$M$HtHHsL?BH{(HS8LkH9tHMtLHMu[LA\A]A^]U1HATIS1fƇ)fIL$IT$ H)HH9s"H61bְH=4˰H=ط ˰f.UHSHHHPHǃHHH[]Ðff.UHAWAVAUATISHHHXL+HAXL3HAXL;1ƅHAIHCIHxH1H8KPHSIHHzPHH EUHv KENE L7Q:L-u;L<HHQHH";AUQASAWAQAQH81հƃL8H@DLҋ2HJHʍ!%uS9H!%uYI?fDMMNIvHMI0L9MVL9MuoI^12I|$IT$ H)HH9Hu@1LSI>_fDA@1@7I>@HH=%61I:ff.UHAVAUIATISHPHP@IT$HzttK1.ID$IT$ H)HH9HLH=<51 A@1LGAA1LGL0AAAlAA L0HHH*HH.HDHPHcHvHff.UHAWAVAUIATISHHHP@IT$Hztj E11IL$IT$ H)HL9; JA\$D@H DH`Lx0HML5nr6H@DEH5;L@pHHLuL`HDžhEE)LIuIUIEHM40H9lI}I9v1L+>0HA1HH ;T8DHH`A|$LDHX0LELq6H@H`L@HnpH5;HHDžhDMELUEFLIuM]IEHM40L9M}M91LH=MLH=51rM<$LAAT$#ID$Hx(E^L5p6LL@IG0HDH@L`H0MGH5;LHHDžD Dž8DžH@LhIuI}IEH`M<0H9MMM9MtH<0IxLH^~IEM}IB8H`L9kHa1L;MMANED$LL`Ir0LDLHL=fo6H5;DMBH@HDžLDžLDž$LhIuIUIEH`M<0H9PI}I91L&;IEI$LHHET$MD$Ix(EvHH=DHLB@H 8HD L`L Sn6LH5;LBH0H@H@LHDžDDž8DžHLPDžX}LhIuMUIEH`M<0L9M]M91L9EvLPH D`Ip0HH=xm6H@DpL`M@lHPH5c;HLHDžXDžDž-}LhIuMMIEH`M<0L9MUM91L/9EvL`H=>DHpIS@HxMCH@DuLL=8H`L l6H5A;rH}LHDžhDUL}EELMET|LIuMUIEHM<0L9M]M9MtH<0ILHrzIEM}IB8HL9zA 1@7MM'AAs1L7IEs1L7|ED$ENLH9k6L`MZ0HH@DHDMBLH5;yLHDžDHDžDžzLhIuI}IEH`M<0H9tAMMM91L6AD DIEAAIAQA1@7IE;AbIIVINIII6II&I IIIIIIIIfDGff.UHATIS1)fID$IT$ H)HH9s"HMD$IT$ L)HL9wLH=51wzI$LLH[A\A]A^]LLH[A\A]A^]@DHQAAD!%DIHQ AAD!%DQ HQAAD!%DYHQAAD!%yDqHQAAD!%YqHQ!%8HItbLHLrI}LLAH[A\A]A^]LH1/I}Gf.A I} H=uZ GnfDUHAWAVAUIATISHHXI$LXM4$LAXM<$1LƅA1HHIt$IIH~5H~AL$P*HHڋ2HzH!%uVDHAAD!%u;D HWAAD!%u DWHW AAD!%LBIuIDLE‰II)I)M9IUMUJ L9MM]L9Mt+H<2ILHHpIUHIM It$H~HEFE1AL$HP;HxHD2LzLAAD!%ALBIuIAADLE‰II)I)M9MUI}N4I9MMM9MtI<2I8LH1oMUMuC2E16MD$IT$ L)HL9-KMNIvHMI0L9MVL9MuoI^12I|$IT$ H)HH9Hu@1LI>_fDA@1@7I>@HH=551PI꽲ff.UHAWAVAUIATISHxHP@IT$HJu H Ct^ E1.It$IT$ H)HL9}JI9tHtDLHI$C$H[A\A]A^A_]HLE 1DB D9C @I؀UHAVAAUIATISb DLLHHH[A\A]A^]I隀f.UHAWAVAUATISHHHt=LHL HH@HtD@ EyH@HuI9t ~ L~_E11fDI|$IT$ H)HL9JHuI#vf.E9~@HuI#t$H9E91xHuI#qGfE91HuI#qLML9qDLLMZI fE9<$HuI#t$oHEHMDHxLuHELLHHEE\$ DLD)D9EL$ DD)D9 $fDIt$H]IHL!H]H I E9<$OHuI#t$%IqHڧHH͏f.UHSHHHڧHH衏HH߾[]f.@UHATISHHXt[A\]HLH[A\]Hf.UHATISHHXt[A\]HLH[A\]H0f.UHATISHHXt[A\]HLH[A\]HXf.UHATISHHXt[A\]HLH[A\]Hf.UHGHAUATISHHUHL*HZLHtMtiHw8Hu"AuAt$I\$HL[A\A]]ÐHt fHx2H{I\$I$HLHI$H=f H=[ ff.UHAWAVAUATISM$LH蜻HۧI$AƄ$HI$Hu-DHHIHtQ yHIHuI9ts ~](M$IC@ LLH@$HP &4IHt>I9tHtDLHI$C$H[A\A]A^A_]HLu1DB D9C @IfnUHAVAAUIATISDLLHHH[A\A]A^]I(nf.UHAWAVAUATISHHHt=LHL HH@HtD@ EyH@HuI9t ~ L~_E11fDI|$IT$ H)HL9JLvHH5L`HH5LJHH5L4HuH5fLH?H50LH H5LHH5LܢH]H5NLƢ11fI|$IT$ H)HH9HH LM[MtES EyM[MuH9Jx ?P$Ey$L DpL`H L-t9IL$`H=9LhLmLL(H LM9HQ902H@D@L=a6LPMD$H`H5mi;H}LHDž(LXLhEL]EHEEEL}E ٯHHHHIL9tZدH`IVH9tEدL+HAU@ RHHP@ @L+HAIN MF9LH`H5 j;H@HDžhpLDžDدH(H H*H Mt$L9tׯLHHH@LLLHA@E13fHsHS H)HL9JL߉ϯu& NL#HA$IAM,LHHARpI`MXLHu-HHHtD;g ~HHuL9t D;b HHϯD` L`8HHP L`(IPH@0@8HLHoI9t HLLL*ǯIxHHJ(DsH`L%DH LJ0LP@L@H(LHMH5=H}LvH @HL`HDžhDpLMH]LmEL]ELeEίHLHH@HrH:I0H9TLrL9Mt"HILH̯LI8LHIYHH@H9tͯH H;tͯIGAE1fADLIM9D}fL1LI}VfDMt$IL;LAE1̯wIMHHHI9L̯fDADIx(I9t!HL̯HLLHg̯LL}1H@7H9kHI L;m`f1r A9p @fDHLIM9LIxuHH[A\A]A^A_]H@LH58=HLHIM)IDL@L[Ml$M9LPM9%MA }A fEzH@LHHsBD L`L@IL$H`I9~PHHL`LH@fօpHhI9HDžHƅPI9H9%HMi~MflAQHH`LpHDžhIH`L9t2ʯH@HH9lʯbA1LHH P8躆LH=851ϯHHHHDžHfoPƅPHhH?)pHt%HIt$ȯLHhI:LIVH`H~MflAII|$H`AH1H=K75ϯH=rįfpLHhI;pIAIAIAIAUHAWAVIL}AUATISHHI$LL@AL$MHPH55 ?H(MȯI$L`dLM,$LA`x5HuHEE1H8HHuEfDH H@H5 HFLLH&¯LHH@0M_M9L׉HǯHL LHA@LLHAhIL[2D9"IL$IT$ H)HL9JLL HAQH}LUH&IWI9a@H H8HhH]E1LpHHHH0H LL@HFH5 H8L@L8M_M9t'Lω@Ư@uHLH@H HHHQHHH5h5 H}H;0t@5Ư@tL LHAhIL0D9I|$IT$ H)HL9JLHHRHxLpHMGM9>fDIBH=(IGI9LůfDH(1*HPH8LXB8H}HH9t>ůLXIvM^I>HPM,0L9pIFI9KMuFMnB/M4$LAL(HPIL9tįHĸ[A\A]A^A_]ÐHILHïI>HFH=IGI9cL{įVfDH=IwI9fL(LEHXHPMQHMM<0L9L`M9MH<0I|LH¯HP@H=DMGM9f1LvI>fDfD1@7I>AdDDHP LH=151[ɯLH=y151JɯI1LtHU4 LMDDHU HE H}f LUDDHE1LtHU1L{tHEGA1@7HUAA* HE@AA1LtHEAi1LsHUDDHUq1@7HEAHٵHH߉ L AM`AtgHA҃d L+HAKLH LH5 R HO f.DA~fACL-D9}cD AE9}WG$EE9}KG4$EE9}?C6ED9}3<AD9}(4?AD9}6AD9}AAHAL Z2HA`LPR:HA`LdEHA`H xGLHLPLAHHLIL$LHHLAHHLCDSfIL`M`M@ HDžDžHDžDžz$D$HDžDžHDž4Dž<HDžDžHDžDžHDžDž HDžTDž\HDžDžHDž4DfoDDT$L`Dž<HDžDžHDžTDž\HDž$Dž,HDžDžHDžDžHDžDžHDždDžlHDž4Dž<HDžhDž)Dfofofo Dfo fDoDžfo)DžfoDž0fDo0DžfDo)))))D)D)D)DžfDoDDžDDžPfDoDfDo@fDofoPH>fDo@foD L>fo D) DžfoDž0fo0D)0D)@D)PD)`)p))))DH5isOfDoH=>D@foL >fo@H >fDoHCDžfDofoDžPfDoP)Dž fDo DžfDoDžfDo))D)D)D)D) D)0D)@D)PDDfDoD L>DPfo L52>foPDžfoHH>Dž`fo`Dž0fo0HH5>LL48HH48LL18HH=5L L >D)`)p))))DžDžDžDžDžDžDž(L@L5x5LLH0H Z>H`H5un>H HLHHDž8DžHHPDžX Džh LpDžx Dž LDž DžLDžDžDžGHHH-jHIL9t蘫HIL9t胫HIL9f.fH 1ɺLH5sXP)))H藫L3HAL tHA`dL L 1HL0LA H5L聏LM tSL1HLAH5kLR E1HIL9n fƅL`HLAH5LHH cLHLH5LHDxH HHLH5L耎HMVAL9t襩xLtHMNL9t耩H`IL9tkL0H IL9tBH`LHAHHHHHHL8IG4$H@HHPHH`HH`HHDžhƅpLHDžƅHHDžƅHHDžƅHHDžƅtL#HA$`ZH DSL@H@LH L@LL-CH5*>L HDž(D0L@DžHSH@MD$H`HHL9HHLPHH99HLp~LH`hH)H@LPHDžHIH@L9t)XH=69t H=a69H>HEL@CH`H@Ma0MALpL@L`L-3CH5>LHDžHPDžxLDžH`MD$HHhL9H8LpHH9HL~LHHH`LpHDžhIH`L9tץ uHH`ZLD[H5C IJ LHpHMBLH@HH5>HDžDDžɥHIEHHH9L@LIL99HLD~LHDDH&HLHDžIHL9t蝤{HpLLMS MCHDžH5>LHH@LDž趤HIEHHH9LPLIL9HLD~LHDDHHLHDžIHL9t芣H`HLhHzH9[LM9PMt#H`ILH'HLB (=L 2HA`P}LLhL+HA`PH=5LQL LDLLHLLAPLpHDHމ0HIIH L LpL#AʼnHA$AƉHHL5LxHHHsMD$fEDMDLxH{DA $E"DdLHDžMDžHDžtDž|DJDD$DDDDDHDžDžHDž4Dž<HDžDžHDžDžHDžDž HDžTDž\DHhD$DDDD(DLHDžDžHDž4Dž<HDžDžHDžTDž\HDž$Dž,HDžDžHDžDžHDžDžHDždDžlHDž8HDžDž LHDžDžH H(DfDo fDoHHfo fofoD`DžpfDo`fDopDž foD)Dž0fo0DžfoD)D) D)0)@)P)`)p))D(DfDoDfoD@fDo@DfDoD fDo DžfoDžfDoDžPfDoPDžfDoDž0fDo0))D)D)D)D)D)D)D) D)0DDLHDžLLD@fofoLHH`H aOLfo@L%>>LfoL>fo)@DžPfoPDž fo Dž fo)PHH5>)`)p))))HhHLLDž LLHHs>fDoHH=)>LL >fDoLPfDoL>LXfDoPL-05L fDo L5>Dž fDoDž` fDo`Dž0 fDo0D)D)D)D)D)D)D) D)0HpfoHpH >DžfoH`H>HH=>LL%>LL>HH5|>HHH>LL >H H)@)PDžhDžxDžDžDžDžDžDžLDžLDž LDž HDž Dž( HpHL@MB HPH5ȕ=H` L0Dž8 DžHDžXDžhDžxLDžLLHHMZHM,0L9! LM9 Mt H<0IpLHHLLB(HIL9t䘯L HIL9tȘHHHH9t謘L+HAgL+HA`PR HH`ZL#HA$`d.DL`HIL9t4LPHIL9tL@HIL9tL8HIL9tHHH`HH9tėHH HH9t託H HLIwIWI?HM,0H9 MwM9MtHILH HgH3DL kDSL@LH5N>LD詖HLIH@L9 L0HLLAPLIdLHHI~HHLLdxHHAHHL[I3L0L(MDL@LM@M EP EyM@f L3HA`PJ;HH`Z/ L#HA$`d(@LHH=>ƒXL 285LAALE1LLxA LbDXL`DIADp[AH 1HL LH1HHA L\=H5>LEL 3AAH59>LA>11LH >fHLPHVHHLM9;BLLXLHHHH*>HHLH@@QWHHLHhHH0H.>WH@HLHDžHHp`L`HxDžLhH@H5#>HXH^>DpLPL>L`LHHHH HH(LhL>H @LL@DpDžDžLDžLDž荒HHHsPLHIL9tבH0H HH9t軑HHHH9t蟑LHIL9t胑HHHH9tgH IL9tRHIL9t=LHIL9t!H`IL9t HHHH9쐯ML$LxLH5 QLhH1LVMI?EfDkHHPA1H Z Q&cHhHHA1H >cHH`A1H {+EbDM>MM9I|$MFL`HMSL9tHÏHHLQfH1RLHzfDL@HtH%LHHHHHtH< HHHH7HtH̍HHH`HhH@kHtH茍HhHHH`}AX DELL>H@LMi LH5J>MALLHDžDDžVHHLIÛHL9t貍HH >HDžHV HL H@D_HLFDIߺLDžH5>AD蹍H8LI&H L9::HD~LHDDI}H&H~LHI}HH~LHI|$H`bH~LH`hI|$H@AE1xAX< /!HPL`H@LJ LBLL-m>H5>LPHDžXLpDžxH@LIcHL;CLpL9H L`1It$H`eHxHH5ǒ=L =HL1=H`HDžpH)H)΁LL|HƀHDžhA11LH =Z]HL@LZLL(M90LLpLLHHpLLLLH@@DSHHp HHL@HHH@HDžDDžQHHH7HMHIL9t蟉LHIL9t胉H`IL9~(Dž`iH`HhdDDI?I9N8Q C8DSfHDždDžHDžtDž|DNHDžDžDA$$D$HDž4Dž<HDžDžHDžDžHDžDž HDžTDž\HDžDžHDž4Dž<DT$HDžDžHDžTDž\HDž$Dž,HDžDžHDžDžHDžDžHDždDžlHDž4Dž<HDžDž HDžLDDfoD`IfDo`DD fDofDo DžfoDžpfDopDžfDodL))D)D)D)D)DžHDžDžHDžtDž|HDžDž0D)DDDDDžfDo0DfDoDfDofoDD@foLF>fo@DDžfoD) DžfoDžPfoPD)0D)@)P)`)p)))DL >DžDDfo@fofDo@D L>fDo DL>fDofDoDž0fDo0)DžfDoDžPfDoPDž fDo )D)D)D)D)D)D) D)0D)@DDžfoxDPH5GOfo H (}=foPH>DfoL%M 8foH&>DžfDo foDžfo)PDž`fo`Dž0fDo0)`)p)))))D)D)DžfDoDDfDoDžfDoH=T 8fDoD`L-CfDofo`DžfDoHH5(5DžpfopHH 8HH5D)D)D)D) D)0D)@)P)`LpDžxDžDžDžLL >LL >LLT8LLV8HH>LL%'M5HH=q>H H5 8H0HH@LpLeLH}LDžDžDžDžDžDž Dž Dž( Dž8 DžH LPDžXL`DžhDžxL]EHEEEEHHuH5>LB ECHHH)>HIL$H9tHIL9t~LH0IL9tbkDL5'>At#L5>A tA@L5>L fSMEHHMD$LLHILaMHD[LLHzPH }>HHW>LBLe>LH5+*>HH@HDžDLDžHDžDžLDž~HHHHDžLLMADLDž~HHH;HIL9tY}DAAHsLH@LHz LBGHLH5+>HDžDžd}HHHJ;MHIL9 HH{ƅHDžHXH\ HpL@LPMV MFiLH`H5؊=H@L@HDžHDžh|HM\$HHL9K$LLILL9$HL~HH$HLHDžIHL9t[{Hy8HHEL52$2!E1AAAL@L5B>HHHPHpLNpH=%>LpLL%>L'>CLDLFD H5=L- >H8H@H`HLLHDžL0DžhDžxDžLDžLDžLDžyzHHH_8HIL9LHLAPLHH`HAHwHH`HHȥHGHHLKD[HLIDDRLDDDDDDL-==OD`L5CpH 5LL->H5ú>H>DL ĺ> H>D0Lj>D@LP>DPL4>HH D5HDž LDžDžDžL0LHH5>HL LGLH@H@HPH5(>DžHDžLDžDžLDžLDžDž( Dž8 DžH DžX wHHH5HIL9twHH`HH9tvHML$L9tv*L->t!L-> t@L-~>HSLEHHM\$LLHʢLDH DDSL`LHNPPL >H H>H@D@LLFH5w/>LpL5>HDž(D0DžxLDžHDžLDž-vHHH4MHIL9t{uHIL9I}MjHIQ@7HHp@7HhHtP@7HHH`HHL0LLL`I|$IEHDž(DCIIXƅ0L HHDžƅH`HDžhƅpLHDžƅsH HpH==DHDžLHq LIHHDžLLH57=LH@H*tH0LI藁HL9ts(DS (aH LpHDž(L@LGHG D0H==LH L@DžHLH5¿=LH@HesLLIրH@L9trHPDCHpH=D=Hr LJHDžXHPL`D`HpDžxLWLH5=LH@HrLLI5H`L9t$r{HLpHDžL@LP DžH==LLLLLH5=LH@H%rHLIHL9tqH58HE>DAAL *>AA@L 5H=HH>L L5>L(L>L0L>L8L >H@H=>HHH@H`H5=Hp2-LHDžHPDžXDžhDžxDžLLLMBHLDžDžLDžDž"pHHH.HIL9tsoHHHH9tWoH`IL9tBoHIL9t-oL0H IL9!L HpLIJ MBjHDžHH5}=H@H0LDž8)oHLI|HL9tnH8LBIEL5 E%LHLAPLL L >@H 5DL5DCH5j>HH=7DPL7D`LR7HK7DL>HH5ͮ>L L ,95HDž( LDžDžDžDž(H0H@HHL@LBrHH5&>Dž8DžHLPDžXH`DžhLpDžxDž Dž LDž lHHHn*HHHH9tkH`IL9tkHMl$L9tkgL-m>t!L-]> t@L-F>LSMEHHM\$LLH蒗L9LLHծ>LIyPDSMAH ͮ>HLH5>H>H H0H@HDžDLDžHDžDž(Dž8jHHH(HIL9tHjHIL9t3jDAAvDCLH=>L0MS MsHDžD LDž8LMH@H5B>HL/jHHH(HL E1HDžxHHLhHfHxH LxD9H{HS LH)HI90N4LhMLLARLH5_5LhMHhH AHH9thEoE1HLLHFH55HbLHL;t0LljYhuIELxAńIL D9M^IV L)HL9O,HMMLAQHLH-cHFH=~L;tLgzH=|L;H/fDE18(1ɀAE1L L5PQH8AAÉADL€DIEƁLDND1HHLDA LV5xIHtHWHH`1HH LH1HHA HH H54=HTH (H(_ Hƅ0H HDž(XD Hƅ LFHxLHDžLELS IƅLHDžL XL H5=L{ LƅHDžILH0H E` H5 =HHA11H ܛ=7L`HPMl$L`LI9 L`HHHpHLXLhHH@@LhL)Hb L`I|$Mc I9@LpM9e MH1=L=H5#=IxHIM[ I)L)Ac ADHH`L LhMt$BƄ*c L`ILM9 LpLLLhLHID$H LH`LHDžhƅpL9LPHLLL8HHLH8LIM)I0HHMu1HVH9LM9 Lfo>fo%>fo-¨>A0;ai LHLLLICD(1HLoLL9G LHLHLH@HDžHxHƅHLHH7LHHL)HlHL@MumLBM9LPM9 H[stages_MfDo >fDo>fDo>IC`fDo%>AChkv];fDo->ACl fDo5>E ESE[ Ec0Ek@EsPL@LHHHhHCD*mLH@HIuH9 LPHLHLHLHDžHHhLƅPHLH@H(I6LIM)I5HM6MVLL9Q HH9H=;=LH5_=H8HxHH.H5=H)H)6HHM6MNLBƄ*6L@LLXIL@M9HL@HPIvLLHHHXLLHHDžƅ 5HII)HI,TLH-IUHI9 LL9LH)=H5"=IxL<=HIM%I)L)A-ADHLLIEHL0LAƄ-HIL H9LH L0D[IMLLIHL`HDHhM@DHHLHLLHDDLp H= >L0L 2>@H8>DP`pH ->LL/>H(HDžƅHDž DžLHH=>HHLL >HHܟ>HH@DžDžDžLDžDžLDžDžLDžHDž \HHHHHHH9tH\L0H IL9t,\HIL9t\LXH@IL9t[HIL9t[LhHIL9t[LH@IL9t[HHHH9t[LHIL9tv[LHPIL9tZ[HHHH9t>[H HHH9t"[H`IL9t [LH0IL9tZHHHH9tZLH IL9tZLHIL9tZLxHIL9tZL(H IL9teZHHHH9tIZLHIL9t-ZLH`IL9H5`=LVAAoP)H5=HȆosHpLH@HP L@LpHDžxHpLH5ʠ=LDžYHHHMHIL9:EHH5'=HxDAc 1LLH =H5x=HȅH54=H贅HH5=蜅PH5`=L舅H5=Ht[H5=L`A61LLH 6='HA-1LH K=OHAm1LH =HA11LH %=fop)oH)pfoL)0-HtH>sVHHHHfDoPD)Pfo)PfDoD)L 4L>MEH~HI|$HJH5=L蹃HpLDL@II IAHDžHH=Ϣ=HDžHJֽLH5=LH@HVH0LI$dH@L9tVDSHpLHDžL`II IADHH==HDžHսLH5b=LH@HVLLIvcH`L9teUL0HpDSH==MC ISHDž8L0LHPHD@DžXԽLH5i=LH@HdULLIbHL9tTH`DKHpHDžhHO LWDžH==H`LDpHLVԽLH5X=LH@HTHLI0bHL9tTH5>H4HEHHpH=<=HDžHN LNDHL HDžLӽLH5=LH@HTLLIuaH L9H`H55HFAgAAAH545L颾LH=41XH5=LH5=LվHDLLpHDžHG L_DžH=V=HLLDҽLH5.=LH@HRLLI"`HL9HHLHpH=h=HDžMC ISDLLH HDž(ѽLH5=LH@HRLLI_HL9ox)ƽLH=y41JW@7HHH=8LH=buLH=8iLH=8]LH=8QLH=s8ELH=41VH=(L#UHrʱH̱H*̱HαHαHαHαH%ʱH;ϱHLϱH7ʱHϱHʱHʱH:̱HʱHͱH-˱HA˱HU˱HʱHϱHj̱HIϱHαHṉHϱHϱHбHϱH̱HϱHɱH̱HmʱHϱHɱHϱHбI2бINбHPͱH~бHͱHαHбHαHɱH2бH̱H̱HJ̱H^̱HṟH̱H˱HʱH*ͱHʱHmɱHʱHȱHͱH˱H˱HͱHʱHAбHɱHαHͱHͱH̱HͱHͱfHGH8HxUHAWIAVAUATSH HHxS@M'LHAAT$M7LH8HAV0IHL1HHp HCHH@H9tMAwLpHEEH5n>HhMILMTLI`ӃP IL`Z M'LA$`dDLxLHIqI9MaI0L9 MQL9V Mt"HIt LHKHxH?HxHhHYHHH9tLHĨ [A\A]A^A_]fA nӃZ M7LA`dM'LA$`x H0AHDž8LKƅ@L0~Ew)AK1AW1E1L%zCL0ELH@LpMX0M@L H5`>L 5>LLDHDžL(Dž8L@DžHKHHHh MHIL9tKH0HH9JfDIZb"L`P IL`dLLE0H5Y>Lw@H/8@/H5Z>HewA11HH ![>LHPM\$LLI94LLPLHpL`LHLHH_>H@@ LHLLkH0Hb>LH LpH0f1H8L)`L))IHHHhHIL9t@ILH0IL9t$IHIL9tIH`IL9tHHIL9tHHHH9tHLHIL9tHLpf1LH5e>S)pL))HHHHhDLHHH9A,@HLHDžH`INHHHSHƅH`HDžhƅpHHDžƅA SA!H5_SAL-w>LDE,AH`H@HDžhLb LB9DžpHpH5>L`L%vCLGLPHEWH5,>MC@HLLLP6MCL >HxLH @HH5J>HDžXD`HpLDžLDžDžFHMUHHL9 /MFLL9m0HH~LHH]0HHHDžIHL9tEHpHHH9tEM/LAH+MALHpM0!AMH0LHAEoH0H0H=v>HHLH@LT>D@L8L@LHPH @H`HhH5O!>HLL0HDž8LXLpDžxLDžDžEHLxRHMEL9tcDHH0HH9tGDLpHIL9t+DHLH`LhHLIwAL.HLF`E}LpHH >HH3>LLFH5">LLL>L0L%OHPH @HpHDžDLH L(Dž8L@DžHDžXL`DžhDžxCHHHhjMHIL9tBHHHH9tBH`HH9tBHMvL9xLx1L/I}fDAvD1Lx@7I8HAHDžLcƅLAS11HH _>DDH=ZSIGL5>AM/L LNLAE\$EGH0H \6HLpLJ`H=>LD@L=UpCLBP+H>LpL5OHH5_>HH @HLL0HDž8D`LLDžDžLDžDžHDž6AHHHhMHIL9t@HHH9p[E1E1L%AoCE1RI_ILL+AMAwH`LZ6LpHz@L5nCLH`L]OLB pLH5q>H@HDžhLDžDžLDž@HHHhfDA11HH \>'efI_L`EOH=OLpIr0L5nCH@LMBH`H5I>HDžhASHLDpLDžDž>?HHHh$LHHH9t>ILH,)MH0LHAMLLLAHAWLL0L8LIr@L5A>H0HL=5>H= L>HLMjL(L@HDžH Dž8DžHLPDžXzLpMH @H5K>HL=HHHhMHIL9t2=HIL9fTL@HHDžLXIA@HHL HL蘧H9IIW H)HH9(HLHLHLASLH5^5I&!HAL9tRf@HBH=~L;tL :vfDH=|L;B)fDDT A@@EAEAAEDTAAADHH>HQS8HLL%>L-i>L`HXH0ƅ@HHH0HDž8HA11H "> LLXMFLHL9iHLHLHHPHLH@@HH)H6%LIFL7I9wHI9IH F'>L$>H5 $>IzHI/MI)L)A7ADHLLLLIAƄ7HI^LH9\LHHLHLHHDžƅDHyHAAD!%DHAAD!%DHOAAD!%DOHO AAD!%uq_ HO!%uYDgHOA$AD!%u)PL))2'HHHh;Eg Eg9HHpLn LFH@HDžDH5=L%$UCLLDž&H=i>EGHHLHH@LHLi>HLQCLH @DL@H5>HHDžLLDžLDžL Dž(%HMEHHL9 INHH9'HL~HHHHLHDžIHL9L H`QLfDAIH0LHLAWLL>h>H0II@H=5h>L8LLL HH @HH5>LMAHLHDžLLLDžDžDž#H IEH`H(H9H HKL0H9 HLp~LH`hH H L0HDž(IH L9t"HH0HH9LLH5:SLO@AHLH@HP L%7QCHDžHL@H5^>LLDž"LHI0HL9t!L0L8 DIHLpLNHw0HPCH@HDžDRHH5>LPLGLD D0H@DžHDžX!HHHhfDAH f>1L @HXI1LHH`I1LL@HL1of.HAqH >1EjA71HLH ; >&Qop)fDoLD)@|fDoHHHDžƅH)D)HH1 H^LfDopLXH`LhƅpD)LHDžhHXIM)I9 J HA>DfDoLIH@HXƅD)pM)LhHDžH@I9( J IADfDoHHHDžƅH)D)HHp LqLѸfHfoLHDžƅH)D"LRLA$AD!%EHAAD!% IR!%AzIR !%uxAZ IR!%u_EZIRAAD!%uCEJIRAAD!%u'EbIRA$AD!%fDALBHAADLE‰IH)M)L9 LI0AISDLpf1LH5m?>=)L));HHH%HIL9tLpf1L H5E?>C)L)) HHLHIL9t(IWEGLH5oNLpMQ0HJCH@H:sLHDžD_DLMAHH5>>DHDžDžHHLHIL9tjAODž JDA1LHH !PCfHpH5V3S HH=J3SL%ICf.HpGL%ICDoxD)foL)@nH52SHG5M/LA HE_H="X>HDžHN LvDžL%4ICHLDLMH5W>LH@HLHI'HL9H5)>LF7ALHDžL@Iq MQLH=[=HDžLfLH50=LH@HLHID'H@L9ALL5HCHDžMc MkLH==H`LDžɘMH5=HH@H:HHH&H`H9tH EOH= ]>HDž(HV LfL@H LD0DžH6MH5\>LH@HHLI&HL9tHPEWH=a=LpHH LpHDžXHPHD`Džx裗MH5=HH@HHHH%HH9lHtHCHHHHHHtH HHHH/HtHH(H`HhH LXAA$L`H`DE$HHXAI|$HL.M,$NTOTI)DL)HRH`AI|$HLM$JTKT I)DL)HHH~HHI}HH~LHI}HoX)jH~LH`hI}H pEGLH=#>HDžIO MgLHDDž픽LpMH@H5#>HLWHHHh=`LH=ւ41LH=ł41@7HH4HHQ0H(H`xH`A$FT GT eLXAA$GLGLHH=&41H`BtfCt HXB|fC|H=IH==H=1H=%AAH=H=H=HǕHԕH IjIzI釖HӖHsHܕII#HoH鼕IRIfIȗI嗱II醔I!HH鶔I>I[I驘HTHLHHIPIdI题I鶘I͗H蔱IИI䘱IH씱H;IHH1I隖IIIŔH餔I昱H锔I鲘H鄔I☱I#HlUHATISHHtHtxH)HHwIEHUL>ff.UHAWIH5+,CAVAUL ATLMSHHGL牅 HSH:tpHztiL3HAV@HKXHytwHH`PL3HA`ZL+HA`HHLyHIL9tHĘ[A\A]A^A_]fHHL:E12DHsHS H)HI9 JLpHDžxLDžDžLDžLDžDžH(H LtH IEH9tLSMZAHHXLSL[H5x1CII@I:MZDGASH=xK>LL5*CHIYDHHDžDžDžLDžIH5K>LH@HqH(H L[H IL9fLHHIL9tHPHHH9zpLH58LH{LOADXELLL[HDžLXILƅISrLH(CMZ IrHPH=J>HHHLHDžDž萀LHH H@H5J>HHHHXHH_LHH IL9tCHK[IU`IHHL HALHDPEY0L .CHPHhHDNH=K>D@L&CDPL&CH H`LpHxH]HpHDž(LMEHEEELUEL]EJMH5K>HH @HHxHpL襽HpHH9tHXHHH9tfXG(HIL9ADEQL`H ]&CHDžhIS IH=dH>HH`DpDžLPY~LPHH@H5H>HHPHPL, HPHHH9 ApLL ,CIH0H==D>L0HMpHDžL Dž(Dž8}MH5C>LH@HH(H LH IEH9tPfL`H=#C)L) )`L@}L@1LH5#CH{HPLI HL9tfLpH=y#C)L) )pL@|L@1LH5>#CHHHLIo HL9t^H{SLG8fD{ASL@H5#CIH0IL +CHPH=D>H@`L@HDžHLpDžxDž{L@H5D>LH@H.H(H LH IEH9f.LH=#CIH I@HPHH=F>HHDžDžHH{LHH@H@H58F>HHHiHXHHLHH@IL9ssL[LsPL QQMEH[H=r)CISLF@H,"CJL0L !CH@H=>I>LH^ HDžDžHHPDžXL`DžhyIH5H>LH @HlH(H LVH IL9LH=g41I쀱HJH%H鉁H阁H܀H韁H/HCH鞁HЀ@UHAVIAULmATISH0HAT$LLEH51 CULEI>MNIvHMI0L9MVL9MuwI^12I|$IT$ H)HH9Hm@1LI>WfDA8 I>9HH=.f41IWfDUHAVIH5[CAULmLEATISH0GLE4IT$H}HzHzLEIvINMI0I9MNL9MuwI^A19f.I|$IT$ H)HH9Hƅ;HH%I7LHRLH5CھH I7H;HtI7DEt%DDD;D>D=DEDD?DD=?D=A@E@?D=L-SCH5=CLmIF`LpHuL 9C@@LA>H5G>LPHww@pLEMFH HDž(D0D`EEELMELUEHxHpH0薯HpIL9tLfLp>=L.C?L CLpLCL=@>Hww@@MCL@H5@>HDžxDžLDžLDžLDžLDžvH(H H0\H IL91LvI<$SD?DED?VfA D>Eu^D=D;D?EEEEEA I<$ƅ<ƅ?ƅ=ƅ>ƅ;E1E1LH=]41HwHwHjwfDUHAWAVL AUMATSHH GHhHH5CH` HSHzthL#HA$`PYL+HA`ZCL;HA`x-HH`d DEhHHHhnLHAE14@H{HS H)HL9)!JHH8HDžLPLLL@HLHMBH@DLLDžDžH`L(HHHH M$0H9:HI9MtHI(LHHLMFB'H L9tELLH5V>.LDD4HM\$HHL9 H0LHH9.HXL~XLXHXHHLHDžIHL9HCDKLL-CIr0MBHxHL%zCH5DD>HDžOLDL H@Dž(L0Dž8H(H H`ۦH MFL9tFL;HA`ZL[{H@HH0ISH@HDžHDJPH=gF>LpLhD`DžxLDžgMH5+F>LH@H&H(H H` H MVL9`sVfDHX~XHXHXI}HUDL;HA`HZ{L0IL9tHHHh\H`HHH9tHĸ [A\A]A^A_]fDH`1ZHfDHtHdHHHH"HX~XLXHXI|$H@fD1@7HfDHtHHHHHHsHD[H pCHBPL-ܩNL>LFL CH5L>AEHD@LBHPL%6H@ LHHDžDD0DžXL`DžhLpDžxLDžOH(H H`5H IvH9,LS{Mn`L ]PH57SLMBMHDLEHNAPEcH5 C0L`H=B>L CHpL=CH CL MnD@LPHuHMHDž(L}EHEEELMEEcMH5rB>LH @H HHH`HIL9t^9LSDcMBMExASL`DpLCMB@H=D>H CL%VNL`DMzHHDžhLDžLDžDžbMH5JD>LH@HH(H H`HSLHzwHH0H5 CHH5Hd8HHLL CE1IOL CL@HPL8 DIHLD9%LSHS L)HL96O,LMELAPLH55JƾHH;PtXoXuHCAUH@HL@Hw@LXLH8EKH@Lv5H59M>`HpH @LLGLHDžHDPLxDžHDžLDž%H(H H` H MNL9tvAUH0LH5M>HX .HXH0HH8HH9L0L@IL9H(H~(L(H(HH0H@LXHDž8H0IL9t߮EmLLH5CD߮H(H HH违H IVH9S&߮IHtHyݮH8HHH09H(~(L(H(HXH~H0HCHLLL0H5fK>LXEKHH3L@D0ޮH(H H`赜H IvH9t ޮH[LPLH5$K>0H`LPLh[ޮH(H H`AH IL9tݮLHHIL9tݮHyHHLkLI}GH=C4]H@MH5CHH0ݮHH5=_8H8HPL CE1HXL%CHHPL(LHoI$LLLRLH5+4IaHL9t@ܮ@u AD$P*fIH4GD9HKHS H)HL9N$LXM$LLARLH54HPAH;PtۮE"HsA|$LLCHHMG@H@HNLHH5yq5LHDžMGDQLH @HHH5G>DHLDžLDžDžۮH(H H`菙H INH9tڮET$LpLpH5G>.LDpD@ۮHpMGH@HxL9&L0HIL9H@LP~@H@H@@HHHpLHDžxIHpL9tڮA|$LH5CLlڮH(H H8RH IvH9tٮzA|$P7ET$LKH=F>L(LHI@0MxHHDžDLDžLDžYMH5{F>LH@HٮH(H H`l@H MNL9tخjf.AL$PRIHH DDDžDž(XMH5E>LH@HخH(H H`of.5A|$H0LHLBLB0H@H5E>HDž8L0LBX@LPL`DžhLpDžx׮H(H H`跕H MNL9t"׮DCEd$HH@HP0L(LLHHOH5@D>DL@HDžDLDžLDž׮H(H H`DHtHTծHxH@HHHpED$LLHH BIs0H=D>HM{DHHDžLDžDžUMH5C>LH@H"֮H(H H`H MVL9tsծL Ed$D[LH(Iq0LHMAH OH5B>HPH@HDž(D0D@DžXL`DžhmծH(H H`SH@~@H@H@@HIHpYL[HLH5`C[H@IRPLBMKLHLCBL%j5LAIHH=B>HIZHLHDžHLLDžDžLDžLDžSIH5 B>LH@HԮH(H H`H IL9teӮL8HIL9tIӮL0H@IL933LSH=B\NMzEGLDRMLH5\NHiӮH(H H8OH IFH9tҮAL$P?f.H0HLH >h5[MX0MhHPH8L :CH=B>LHDž L@DžHDžXRMH5A>LH@HvҮH(H H`\H IL933HH0A1H S8qzHsA|$H L4BL@LHHP@HNLHH5+g5H HDž(DQ@H=^=>LPLXLxHD0L`DžhLpDžxDžPMH5=>LH @HNѮH(H H`4H INH9tЮET$HLH@H=>=>DD[PL@LH5=>HЮH0LI:HL9HH0A1H BӢLpDCHHe5I{0LM{HHpLBH=?>DHHDžxLLDžDžoOMH5>>LH@HϮH(H H`ƍH MnL9-ϮHSED$LL=BHHL@Is@HBLHHd5HHDžxDHH=:>LM{HLDžLDžDžjNMH5:>LH @HήH(H H`H IFH9t,ήA|$LLL@H=:>ML@LH5:>H\ήH0LIHL9AAHHD@DH8H|HxH@HH56BHx@H BHHL NH=1>H0LhHDžDDDžL Dž(Dž8LMH5[1>LH@H6ͮH(H H` LH=:41ҮLH=:41uҮLH=:41dҮLH=:41SҮH VHVHUHUHUH@UHJUHBUHUHUHTHPUHUHTHUHTHTHTH(UH5UHIUHaUHUHUHTHAUH9UH1UH)UH6UHJUHUUHAWIAVL AULATLSH(HHILS H@INHDžH`HLLHLHHMD$HhH HH@HPHL`ILHILIHH`H HH@HH`HLLLLLL LL@ƅL HDž(ƅ0HDžHƅPHDžhƅpLHDžƅHDžƅHDžƅHDžLIHHLL`H HHHHH8HHHHHHHLIH#ƅHDžƅHDž(ƅ0H@HDžHƅPH`HDžhƅpHHDžƅHHDžƅHDžƅLHDžƅLILILILIHXHLHDžƅL HDž(ƅ0L@HDžHƅPL`HDžhƅpHǮ0;fovC@"Hfo sCfX *HPHHHHDž"HDž"HǮfoCIwHound = 0@(;foCHH M/X@)HDž)HDž)H~HDLDXAUMWHHHMZHSHAH@Ʈ@ALLHed_storefo%5HHHHL HDž HDž膃HLsL9tƮLAoaHshared_lHH HIt$LHfDFAF dLHDž ƅ+ HMl$L9tŮHAoaLIshared_lL HALKHHLfEYAA dHDž ƅ+蓂HHCH9tŮLAoaALHshared_lIVH LHHfDbB dHHDž ƅ+HIvH9tĮLHLIglobal_sL HI}HGtoreLHDž ƅ,血HI]H9t<ĮMOHL%BH@Lp L@LMQHH5 4>HEZLHDžDL Dž(@ĮIWL0HME HHJqL0MEH@HDž8@H5Z4>LPDžXîHL ,BE1DždHHLmNRDžxDž|DžpDžHL8L0CL MhHHADCD|IL}-D94IIW H)HL9HJLLHLAPLH5$HAH;t=®ETLL`HLASH5BLѦH`IL9t @HHHhLLHLAPLH5)BIvHAL9tEu {dLLHLASLH5BI-HAL9tYHEu t61HXpHHAҋKx]DHLHLPH5?BL覥L HHHAQHH5sLHPHHARHH5L@X7H HHHhQHhH527HHHRHH5B㤾HHHH9tLhHIL96޿6fƅHIL9t贿H`IL9t蟿H L`HLQLH54I,H`AL9tXEuCL3HApL kHHHA@HHPHhifHLHLRLH54I誣HAL9t־E$HHhi9L+HApIH7LL[MK0L&BHwLDFHH50>H@LDMCHDžLDžDž蒾HHH8x|LHHH98ܽ.HAhLH`HA@H HhHhfƅLHIL9i@M_HDpHBLb0LBH@ICHH50>HDpLHDžD LD0L@DžHHPDžXEIOL`H MQ0HHqH@DFH523>L`HDžhDpMADLDžHDž迼MHLA@ILH@ƅPHhHXH@HDžH2MgHHH`HK LCHMl$EuHH@HH5BHDžDDžMGH`LL5BHLhIC0H@MHLMCH5V3>HEQH#HHDžDLLDžLDžLHHHh2yHHH9t蝺ILH C@H=BLHDL*HH @Ip HDžHM@H53>HLDž葺HHHhwxLHHH9t߹LƅIWLL@ILHDž@LZHLH=}NLIM0LDrACH52>HH0LH@L@MEHDžD Dž8DžH芹HML$HHL9*>L@HIL9>HL~HHH>HLHDžIHL9t`IWLrIEA}1H U:>1LHHDžƅHL@HKHH8L96HL`LILHLLH@@LM)IG>HM\$HHsLH9^<HH93H; }}LfDoBfDo BfDoBHH@fDoBDDHDP DX0LI|$HLHCD HILcHLL95LHL HHPL[dLHH0LL $BHHDžƅEvHPH@pHLL@HDžXD`DžL(LDžH0诶HHHH9tHHSH9tHMmL9t鵮M'LA$MWIr8L1HA H5r Hl/M_1HIsH LH5M L4HIMAH9tYHHH9tDI_L1LHsLA LH5L4IәHL9tE-EAADD-HH568HaH.H H(HLoHHLʢHHHHOHHH蛢HHHLgHHLlHHHLwHHL=ILMGL@`LpMhM.H5RLVHHx.H5RH)LL-H5{RLL L/IHH5BHDž(L ƅ0HX觢H`H5{BH荢9HH5;>HcAHH,H5RH0L@LE.IƅPL@HDžHHHf,H5kRHϡHA11H <>҄HHPLFHLLI91LPLLLX@ILHH@HI)I*8HHLHAH9"6HI9J.HIPS_N_{p_fDo5BfDo=BfoBfo BLfoBfoBLJid};fo%Bfo-BƇ fo5Bfo=BD7DG O0W@_Pg`opLLH LRH@AƄHLL LcM9Q/LHM9ӿLHL L0IEH(JLHDžƅH@H9V'HHH95LPL92H@1lL H(H@AH`HPLFHL`LI9-LXL`LpL`@HLhHH@LhI95HH`MfHAH93LpM94,B7 H`HLLhMPL8BD6L`LrLM9-LpHhM9ӿLLLIEHJL`HDžhƅpHH9 'HHH94LL9P0H81jLHH8AHLXLFHLLM9,HPLHLp@ILLH@HI)I73HHL8HAH9 2LM9(HH5:>L<>LWIH7H5:>L0L)H)8LHLLHLbH0AƄ8HLLHCI9<,LHM9ALLLMEHJHHDžƅHL9$HHH992LL9L.H01iLHH0AH HPHNHH L I9*LpL L0LH@L(HH@H(HH)Hk2LL LclIxI90L0M9)IHncthreadfDo5BfDo=BfoBfo BIr`foBfoBE2ABhs();EzAB AJ0AR@AZPH L(H@LrH(DlHL L@HCI9(L0H(M9ALhL@LPMEHHJH HDž(ƅ0H`L9"HHH9/LpL9,H(1gL@HHH(AHHPHNHHL0I9*(LHLLL`@LHH@HHH)Hi10LLLsjIxI9.LM9)'Iڹ{{H; ++ki) fo5Bfo=BIr`fDoBfAJhfDo BA2fDoBfDoBAzEB EJ0ER@EZPHLLMaL DjHHLLsL9)LHL9LHLIEHJLHDžƅHH9 LXIL9.HH9*H 1eHHH HL`HNHHLM97)LpLLLP@LL H@HHH)H?.LHLc@MXL9,HI9#fDo5MBfoeBHfDo=IBfo aBD7DG O0HLHLLIHD@LIZLI9y(HHM9οL(LHHEHN$HHDžƅH I9LIL9),H0I9:)H1DcLLHC&H@LpHNHH@LM9'LPL@LPHX@HHL0H@LHHL)HV,LH@MfWMXL9*HPI9!L}}fo%Bfo-Bfo5Bfo=BfwTfDocBGP GV 'ow 0DG@H@HL`LHMQLBD1WL@HCL`I9&LPHHM9ֿLL`LpIEHhJH@HDžHƅPHH9yLIL9P*HH9-'H1WaL`HhHAHLPHNHpHLM9$LpLLL`@LLH@HHH)H,*LpHLs-MXL9(HI9!H{sts_S_cHfDoBfDo% BHw G(ode}G, DDgHLLMQLD-HpLLHCI9#LHM9ԿLLLIEHJHHDžƅHH9zLxIL9w(HH9>%H1_LHHALLHIvHHL9"LPHLL`@LLH@HHH)H=,(HMFL-L9&LM9HH53>Hl2>LOIH%H5V2>HL)H)-LHLLMFAƄ-H HLcHL L9H!LHL9LLHH IEL0JH(HDžƅH@H9HpHH9&LPL9"H1]H H(HH`L`HsH`HL9` L@H`LpLX@LhL H@LhHL)H=&L`I$H{HI9I%LpL9MH51>H R4>IyHI1H51>II)L)AADHL`M$HSLhCƄ#LH`ID$HH9 LpHLHhfLSETL`ƅpHDžDžHDždDžlEmHdHDžhHDžDžHDžDžHDžtDž|HDž$Dž,HDžDžHDžDžHDž4Dž<HDžDž HDžDžHDžDžHDžtDž|HDžDDžLHDžDžHDžDžHDžDžHDžDžHDžDžHDžtDž|HDžTDž\HDž4Dž<HDžDžHDžDžHDžDžHDždLDDPfofoPIM@ foDžD|foDž`fo`HDžfDo)0)@)P)`)pD)DžHDžDžHDžtDž|HDžTDž\HDž4Dž<HDžDxLLDžL L(`fDoLfDoLfDo`LfDoLH@fDoDžpDž fDopfDo D)Dž foD)D)D)D)D)D))HpHHL`HhDž LLHxLLL fopfoH(Lfo LfoLLfoDž0 fo0Dž fo)) )0)@)P)`)pDž fDoH H(Dž L@HHDžp L`LhHHL fDoL`fDoHhfDopfDo`L0L8L(fDo0D)Dž@ fDo@D)D)D)D)D)D)LLH@HHL`Dž HhL@HLHfoHfDofoLHfoLLfoDž foDž foDž foD)))) )0)@)P)`LLHHDž LHLLLfoH`fDoHhL@fDo`HHLfDo@)pDžp fDopDžP fDoPD)D)D)D)D)L L(Dž0 fDo DDDž`HDžLDfDo0DfDoHfoLfofofoDžfofoD)D)D)))) )0)@Dž )PfoHLLDž LLHHBHLL`HLhfoL==BL@fDoL-4BHHfDo`H +BfDo@LDžp fDopH H= BDžP fDoP)`)pD)D)D)D)D)L(LLBL(L0L-BfDo HHBDž0 fDo0LL BLLBL L=BH@H BLL-BHPH=BL`LBHpHb(>LL BLLBLL=BD)D)DžDžDžDž(Dž8DžHDžXDžhDžxDž Dž Dž Dž HH BL0L-`BHH= BLL BHHBLL BLLBL L=BH@H BLmLHPLDž DžDžDžDžDžDž(Dž8DžHDžXL`DžhHpDžxLMELUEL}EEHMHE蛒HIL9tH`HH9tHH HH9tՑHIL9tLHIL9t褑LpHIL9t舑HH`HH9tlHH@HH9tPLHIL9t4LHIL9tH HHH9tLHIL9tL(H@IL9tĐLH IL9t訐H0HHH9t茐HHHH9tpL8HIL9tTLH`IL9t8H@H HH9tHHHH9tLHIL9t䏮LH@IL9tȏHHHH9t謏LHIL9t萏LH`IL9ttLXHIL9tXHH HH9tH@L9t-HDƅfHHPHH9lbH`H5=H~xXfƅ@MI<3I LH~fMI<4I LHNfMI<6I LHfMI<6I LHufMH<0I LH辆xfMiI<1I LH莆DfM8I<6I LH^fM$I<3Ip LH.fM3H<0Ib LHfDžDž ILHH@MZ MBHwHHVH5BLHDžHDž醮HH5RHuHH5uRHuHH5SRHuHH51RHu@AtDH5Q>Hiu@H5>HQu@H5՝RL9u8@H5Y >H!u@H5A >L u@IWDkHpLBLHs0LH@HB7xHpH5=LLCLHDžxDDžLDž>HHHH$CHA81HH >:A>DA1LHH >AUA-1HLH >@]HAW1LH >@DHA@1HH >@DAH1LHH [ >@H5 >Las`@H5 >LIsHHX H`HE1HDžHHHƅH`HDžhƅpHH5nRHrlfHA1HH >?9DHA1LH R?DHpA-1HH >b?DHAl1HH 7>:?CDHAj1HH >? DH(fo0MHDž(Lhƅ0A)PHHI0iDohD)0Doh)DoHD)p>DHhLMӿfDopHDžhHI0D)ƅpDoXD)pDfDoLD) Qox)1HLHMӿfDoHDžH(I0D)0ƅDohD)DHLMHDžfDoAƅHI0D)fDo@)pHLHLfDoHDžH(JD)0ƅDopD)kDHLLfDoHDžHI0D)ƅDoPD);DHLMԿfDoHDžHI0D)ƅ%HHLMֿfDoPHDžHHhI0D)pƅPDohD)DfopH)fHfoMοL(ƅ)HM$0HDžfoX)PHpIH11P;DHIL11PDHIL11PDHXIH11PDHIL11rPbDHxIL11RPDHIL112PDHIL11PDHIL11OcDH(D^Ls@H5hBHLHLkdLHH=>HLLHDžDLDžDžDžgLMH @H5<>HL|HHH0:MHIL9t|IWHrHDDL@DDHDDL\ L L D DH DDL`DDLDDLADA(DfDfDAD*fDADfD?fDA+DAHtHyHHHHA AAPAAH~HHI|$Hf@7HH1LH=31H==auH=1auH=%atH=atH5B/iH=`tH=`tH=`tH=`tAH=`tH=`tH=`{tH%HHHH!H5HIIJ I H I H H HK I I HI HHI I I H H HH HoH/HKHHHHHH IHI I HHHH/H_InH HcHI I I] HHHGH HHH_I HcH?HHHIIHf.UHAWIAVLAULATL SHHHHHHHDžHHpL@HH@L`LHHKHxHMD$HH`HLhIL`ILXIHHHH HH@L LƅHHDžƅHDžƅHDžƅLHDž(ƅ0L@HDžHƅPL`HDžhƅpLHDžƅLPIH(HL8IH0HHHHHHHHH`LILHDžƅLHDžƅHHDžƅHHDžƅH HDž(ƅ0H@HDžHƅPHDžhƅpLtA0;@Ieft_bounfodBLHL&@d = fDPLIHHDžHDžLtL@$;fo BfoB@ = 0L@%LIHPHLL`LIVIHHHDž%HDž%LHDžƅHDžƅHHDžƅH`1s@ALLHed_storefo5LH`HHHHDžpHDžh/H`I^H9tkrMfL`rfo%5@LHed_storeHpHxALHh H`HDžpHDžh]/H`MFL9tqI~H`3r@ALLfo-5HpIed_storeH`LHH`(HDžpHDžh.H`MVL9teqM^ALLL`HPIglobal_sLpHXACtoreHDžh ƅ|p.H`IFH9tpIWDžDžDžHzH MgƅIt$tDDL E1LLIL@@DžDžDžHDžƅLLL;IVH9t pLH HLQLH5>BTH AH;toEu1@ƃLLHLAPLH5BLGTLH@AIL9thoELL@HLARH5LSLHLASLH5SH`IFH9toH@IL9tnILD9gMoIW L)HL9PK\LHHPLH5lWSH`AD"eMNL9tonHHHtH1HDPPA Av=DFf.H@IL9t nfDž`LHHMu/fDLM@MtAp yM@MuH9tx ~HHHL]x$KHƅ8fD&9&L`H #BHDžLH5jQIHDžƅƅDžLHH.fDD[EHLLD9IIW H)HI9NJLHHLPLH5a$"QH`AH;tJlEaL LHLAQH5BLPnHIL9tlLHLARLH5PH`u H9|$INH9tkHLHLRLH5 BIXPHAL9tkE{LMDž`IMMHuE$DIH@HtDX EH@HuM9$A|$  $Dž@HHHHu,HHRHtDR EHRHuH9tx ~$L@H(HHL(]I|$(Hx(ED$0D@0LLHLASLH5BIOHAL9tFjHEu*HtHHHhH;HLPLH5NH`u {P;MVL9tiHHHhfDDLL@HLARH5]LENuH HHHQHH5NSHH@HHRHH5M!LHLAPH5VBLMH`IvH9thLH@IL9thLHIL9thH@IL9thHIL9t}hpLLHLARLH5(BI MHAL9t5hElLH(A1H aBL:H LHhI_L L@H5r=H{WL@8@hH MEH`H(L9:H(L0HH93BHLp~LH`hH#BH L0HDž(IH L9XgNfDƅU@ƅ)@MnALLL`H0Iglobal_sLpH8AEtoreHDžh ƅ|#H`MVL9t~fMH@LA@ILH`IWH@HDžHHHƅPH`HDžhƅpHzHHH@L'A$IOHyL/AIwIIH~HH@HI$PD@@HHPI*MGHxH5BH=LH@I $MHIT$Lh@L@L%=EQL@LHhLHpH @Hx.HH5=HDžHDPL`DžHDžLDž-eHMEH@HL9{?LLIL9&CHLP~LH@HHCHLHDžIHL9tdHfE1ɺ-LPH5=HD)`D)D)PCdHHCH`HH9a@LLIL9wBHLpD~LH`DDhHgBHLHDžHHH9tcIH BLMZ HMBHwHHDNHH5 BH@LHDžDDžcIGLHL֊BIU0LLLH@L`ED$H-H H5k=DMEHDžL(L0Dž8L@DžHobHhH`HU H`INH9taHMgHHDžH HHHHHHHƅHHDžƅH HDž(ƅ0n6I|$HHPL`HH譼IHPHPL%)=LLV0LH@LGAXHxLFLH5=LP`H@HLpHDžXLDžLDž`H@HKHHHH9<HLPHH9\>HLD~LHDDHL>H@LPHDžHHH@H9t_HLUILLHXIH0HM@HwDVLL`H5=HLH@HDžDLHHDžDž_H`ML$HHhL9+;LLpIL9G=HHD~LHDDH7=H`HpHDžhIH`L9ta^IHLHHH HwHDFHH5=H@HDžDL@L Dž(p^HLKH HL99LLIL9;HL0~LH (H;HLHDžHHH9tG]IGI~ƅpH`HDžhHxH:IwLL`LHNH5CBDID`D]LLIjHL9t\DH`LLHhMZ0HBH@DHBMBHH5>HLLHDžH Dž(H0Dž8\HIL$HHH99LLIL9z;HL~LHHj;HLHDžIHL9tZ[H`MFL9tE[IGHHHDžHzLcƅHDžƅHHHHHL/ADI.HLLH@I@ LM@HDžHH5>HDDžZHLIPhHL9t?ZIHODI-HLPL@H@I@ LM@HDžXHpH5>HPD`DžxAZHLIgH@L9tYLƅLI LHDžUH5BH=$BHLBHBH~HBL%BHLL B~H~H~LD~HLD~LD~D)@D)@D))D)PD)D)H QpMWsHLHMZLXHIASLMXLHM$It$HGLHHI<$ID$LHHHI<$ID$LHHI|$HI$LHxI$HHHLLH`L LHHhL(LHHL0LHHHHH@LPL@LXLL`LLhLPHH_BH@H I4HpHBHDž H8HSASARAQMLAPLHHH )BHDžDžHDžDžDH0MD$LH@H5c> QVHMeHHL983HHHH9 5HHD~HHDDH4HHHDžIHL9t%UH`IVH9tUIHL/AUH4<%Dž DžDžl DžMODLMADL_%H5>L0DA11LH L>7'LHpIMHHH9.HHPHHxHH0H@@HHH)H=5LLMMLM90LL9*IH >H5 #>IzHI II)H5f>L)A‘ADHHHMUHƄHHL[LL9-LHLHHMEfELL@DDI HHDžƅHDžtDž|HDžDžHDžTDž\yHDžDž HDžDžHDždDžlHDžDžHDžDžHDžDžHDždDžlHDž4Dž<HDžDž HDžLLL@HL`Lhfo@fo`LHfoDžp fopDž foH@)`)p)))DžHDžDžHDžtDž|HDžDDžLLHDžHDžPfoPHHDž LLDž LHHHfofoLLH fDoLPfDoHXH()fDoPDž` fDo`))D)D)D)D)HHLHL`HhDž H@HHLL@LfDoHfDoHPHXfoLfoPfDoDž fDoD) Dž foDž` fo`D)0D)@D)P)`)p))L`LhLHDž0 HHL L(LLLHfo Hfo0HfofDoLLwBDž foDž fDoLL wB))))D)D)Dž fDoLHDžp HHDž@ fDoL`LHhH 7vBfDo`H0H=.vBfDopH8H%vBfDo0LLxBfDo@HH tvBLL`L~xBLLpL [xBD)D)D) D)0D)@D)PDžhDžxDžDžHH=5wBLLwBHHH {wBHH/wBLLwBLL wBHHHL@MC HPHDžDžDžDžDžDž Dž HpHDž LxL Dž( L0Dž8 DžHDžXHKHHH9tGKHMmL9t2KHMd$L9tKI_ HsHxHH5D>H:LtBƅ`L%cRƅk MƅXL HAY11H >lL LxMJLL LM9$L HHH0HXH(L8H@@H(HH)H=g+HH LhHVH9'L0M9 HL>L ,>H5>LGILL`L)H)hLHH LL(ƄhH@IL HSHH@M9J#L0L(LL HL@LPLLHLHDž(ƅ01CHILHI)I9(I9ϿHLDL9H/LH'AƒS$I $L~IHITL)I)ƃ1DVAM AAM 9EAtnAt[AtGAt4At At M MσIH5?>HxHHH5'>LH)H)HH`LLhLM_LB#L`ILL`M9HhLpLLL`LHHHDžhƅp,?HIL`I)I9-%M9ĹHLDL9HIH$ƃ IUAM|$II$OD OD M)DM)M1qAAI|I<A9'txtctNt9t$tO\OADAMLM EAKLK DAID5I7EAK|K<DAMLM EAKLK E9DEZARID5EBI7K|Ar K<MLEZ(M KLAR0K ID5EB8A@I7K|K<MLM KLK E9rHIL1LHALHHL{HMT$LL9HHIHLI)HHHDžƅI("L9Ln)HDI9Hfo-BHarrive()fo5BHq A(;)qLHLC)LLHMELI9LH LXLLL`LHLHDžƅ;H`ILXM)I9!M9ܿIHDH9yHMH ƃL MT$II I $ItItM)DM)AAA21E\$DM9AAM:D9 EAtnAt[AtGAt4At At M< M< ʃI4I4ÃO!O"σM9M:AσK9K:΃M$1M$2A˃K<K<9s{AύQDaO9yO:I4I4O!Q q(O"M<9DY0M<:MDy8@MM$1M$2K<K<K9K:9rH I1LLLHIMAHHLSLH90HLIHHI)LHHDžƅIvL9ALfwMDM9fDo BH }fDoBfDoBGp fDo%BfwtfDo-BGv}fDo5BDfDo=BDWD_ Dg0Do@DwPD`HLLSB"LHML$LL9HHHHLfLCLIHHDžƅHDžTDž\HDžDžHDžTDž\HDžDž ACTHDžDžHDždDžlHDžDžHDžDžHDžDžHDždDžlHDž4Dž<LLdDH`L@HDžDž HDžDžHDžDžHDžtDž|HDžDDžLHDžDžHDžDžHDžDžHDžDžHDžtDž|HDžTDž\HDž4Dž<HDžhLHLHLLLfo@HL@fofDoLHfo@DžP foPDž foDžP foPDžfDo))))))D)D)DžfDoDDž`LLDžfDoPfDo`DfDoPLfDoLfDofoDž HfoD)LD)D) D)0D)@D)P)`)pHLDž foLHDž` HLDž0 L@LHLPfoHXfo`foPH L(fo0fo LLH`fDo)Dž fDo)))))D)D)HLhL H(Dž H`LhLL@LHLfDoHfDoH`fDoLhL0fDo`L8fo0Dž fDoDžp fDopD)D)D) D)0D)@D)PDž@ )`fo@HLLDž HHHLLLDlHfoHfoH=qcBLfofoDL _BDž foDž fo)p))))))DžfDoDH Dž`L(LDžpD@HLX_BfDoH H O_BfDo`L(LF_BfDopDžPfDo@L`L8bBfDoPHpH8fBDž0 fDo fDo0D)D)D)D)D) D)0D)@D)PDžhDžxHLH==LLLLLLpLL[aBHH ?aBLLCHHH=PLL=`BL L `BL0L`BH@H _BLPMF DžDžDžDžDžDžDžDž Dž Dž Dž( Dž8 DžHDžXL`DžhLHxH}HMLHHpDžxEL}ELMELUEE4HHH@HzH@IL9t3HIL9t3HHH9t3HIL9t3LHIL9t3HHHH9tn3LH`IL9tR3HH@HH9t63LH IL9t3LHIL9t2HHHdHHHH9t2LHIL9t2LHIL9t2LHIL9tt2HH HH9tX2HHHH9t<2LHIL9t 2LHIL9t2HH`HH9t1LH@IL9t1HHHH9t1LHIL9t1LHIL9tx1HHHH9t\1LHIL9t@1L(H`IL9t$1LHH@IL9t1HH HH9t0HHHH9t0L0HIL9t0L8HIL9t0HPHHH9t|0LXHIL9t`0H`H`HH9tD0LhH@IL9t(0LH IL9t 0HpHHH9t/LxHIL9t/LHIL9t/L@HIL9t/He[A\A]A^A_]DHH5GRHHGRƅ`{L%YBƅkL-iYBƅX H H59=L@Dž Dž@u DžlE1ہAAD IvH9t.H HHhLHHA@HDDDEHHIvH`HPHhىHPLHH ?VBHp HLH @HL@LH53=HEHDžLDž6.HLI;HL9t-DHgHxLLLLMX0H@M@8LH5y=LHDžLDžLDžh-HLI:HL9t,H@HtH+H(H`HhH EHLH`MZ MBHH@HH5=LHDžDDž,HHH:H`H9NNHL H MZ MBHH@H@H5=L HDž(D0DžH,HHHp9H H9yLLHII MAHDžHH5v?H@HLDžq+HHH8HH9,,fMD$L0LH Iq HH@APH0MAH5W=HDž8@9LPDžX*HHH@8H H9t/*M_LH`H@L` H5#=IKyLL@H@L`pHHDžhDž@*HHH7H@H9t)IWHLL`MZ MBLLJvAqHH@LH5&=HDžDž)HLI7H`L9@HAh1HH =)DA1HLH =~7fAwH ">1HY@HA)H !>15$HAH >1fopLhLHDžhƅp)LL2"HHL`H)H93MH0A@HHfoPHHDžHƅPH))pHhHLLAf.foLIL`H ƅ)M)LHDžA!H`I92J8I̺~HfoHHDžƅH))HH(Ln)L(ffoL) ffDoHHHDžƅH)D)HHveLfwLAfDfo0L(LHHDž(H)PLHLƅ0HHH)H9HIADfDoLD)]o@)0DohD)"DH~LH`hI}H ۽DHtH#HH@HHHL EE$@H D|7fE|4fDTE]E$@AET5fET40@nEE $DAGDfFD@0@7H(H`mHtH"HH H(H]HtH{"HhHHH`HtH\"HHHHH@pHtH"HH`HhHͿADAfH=XMBLp)@H))p袢1MHH5!MBH#HLH0HH9HtHS!HHHHHtH!HHHHHD~LH DD(H{H]HD~LHDDH{H@HD~LHDDI|$H`H~LH@HI}HHD~LH`DDhH{H闽DkE $LD`D&L@ DXE,$LeHD~HHDDI}HH~LHI|$HDžlDž7H=yKH=m?H=a3H=U'H=IH==@7HHo@7HHHH`4PHHHpHhH|HH@HH A$GdFd1AEA$El5El4L AA$ED1ED4LH=31$LH=31w$H=H=H$H鈶H餲HH鰲H鐶H(H鐴HxHpHhH`H餳HiH@H䲰HoHHxH鎶H韶HֶHֶI韱H1H[IնHcIVH閱H飱IoHҶH߱HHdzf.UHAWIAVAUATSH87HH8HH5?5RHX HH5%5RH HH0HDž8HPHpHHHhHHHHHHHH54RH0ƅ@HPHDžXƅ`HpHDžxƅHDžƅH HH5E4RH LLDž|L0LPL(ILpLLHILHIH53RLIL`ILXIDžLHDžƅLHDžƅ L0HDž8ƅ@LPHDžXƅ`LpHDžxƅLHDžƅHPu M7LAVHH5;GBHHH= HH5>H# IWHHHHHr1H H5oHIwL1LHvLA LH5nHEIL9tLHHIL9tMWIzL7A`VM_IC@FISLDGDFfE1툅L)HDž)HDž1@I_IW H)HL9QJ<뺒LoILӃD91L1MoIW L)HH9I|L&HL芃9LL11M)IMD^AƂM9K؍~ƀL9s~INƂL9skM,DvAƅM9sVKDfƃM9sBOD^AƂM9s-K؍~ƀL9sINHƂL9VETLfL1LLh)Ml$HDžL`_fDHLLAPLH54k(HAL9tTLHHIIH9t8EtzHL9M_IW L)HH9&I4LHHHLRH5jLMHHHHH9tHPrHH;IUH>HNLLH+Eƅ(XH0ɫDGLHQL5o.RDž0MEH01HDž8HhH =BHLBBLƅH`H L0uAD$0@HL脀9TMgIW L)HH9ֵM$LhM,$LLAULH5 $H0AH;`tDEsM $LPLLAQLH574IHPAL9tEA|$P7GL3H5ABLLPmM$H 1LHXA@HHH5zAB<LH5J4L&LH5LABLLpLLLPLXHHLVHXLI#"HpL9tHIL9tHIL9tLHHIL9tLXH IL9tLPHIL9ƅEƅ(TH!HH+HTE(I $LLLQLH5c:BIHAL9tEI$H(LhI$HHL@A$E$EM,$LAHHHHPHnLLHHH5:BHO LWHH=Q=HLLHDžLDžLXLXH5=LH @HaHLIHL9tDA$I$LDXLpLɜQMt$0HW@BLH==HMl$LpLHDžxDDžDžMH5l=LH@HHLIHL9G'I$LLLPLH5FBIiHAL9tEI$1LH1HD@LH5C?BIy0H QHL0HH58DLMAHH@HDžDžDžhHPLIH0L9t(x/EOLHLH)HLM$I)I'viHPLLDžHXLX@LLLLII DžHX\HX@H8DžLL6H0LP1LL.A@HLIHPL9t.HI$DžH8@H0w.I$LLLRLH5'IHAL9t=Eu.A|$PuA$mfMgHHL5QL Hr0LrID$LxHH0 H=>HDžL@DžHLPDžX肍MH5>LH@H HhLI`HL9HH5jC4EH"L )ND|LDL`H= L`DpHpLHDžDž苌MH5q>HH@H HHHiHpH9tX LL3BHDžPIvL8HX HPIWHzvHP9IH_LKHS L)HH9XM,HHIMLQHH5!3HyHAH9t EtIuLLE1Lh@{PIL?vD9fIEIU H)HL9LJLHHRLH5'HH;Xt` `tLHHhAPHhH5i-4u {PHLhHIL9B 8m(IwGH^DCLH8HDII MAoHHH5>H@HDžH Dž( HHSHPH9LIL9)DoL`HPDXHo)HLLHHDžAHH9HhHHH9td H1HH1HxPt-LHHAhLHHAhM]LADL0H8HD@II MAHH0H5>H@HDž8HPDžXHHSHPH9LIL9'DoL`HPDXH'HLLHHDžAHH97tHHtH!HPHHXHHtHˤ{HPHHX_MWLHDžL0ƅ MFHDž8ƅ@IzL@ILL0L'LHA$~MoI}HIIIվHHHHHI$PDPbHHPI:bIwI $H=J=HJ=IT$LL%.BL^LhH0LH@ECHH=>LXLhD@H`HhHHL0HDž8LPLpDžxDžDž迅MH5>HH @H0HHLHHH9tFUG|-HpH5/F=HGIGL P-BL-I=LxHXM7LALƅLPILHDžHPHHH5>LLpH`[H-BH \,BL^PHLxLLLFHLLxLHg0BHHL PBH HH@L`HDžhpLLDžDžHHDžL@LDžNHHHH4HMfL9tHHHHH9tHPHHH9tgHƅHHHHDžbMGM^HDžLƅIxL/AaMWH=Q-BLLIJQ跂MLH5-BH-LLIHL9tHHHL,BLH LhHDžHH=>HHLLDžMH5c>HH @HHHHHH9tHMFL9tLH0HDžHPLpHpHMT$HpIEHLHLHLhLIH`HHL0H@HLPH0HpHPHHpHLLHHHHL8IL0ƅ HDž8ƅ@HDžXƅ`L(HDžxƅHDžƅHDžƅHDžƅLHDžƅH HL0IL(IH HHHHHLIHxHHHHH59"4HHDžƅ L0HDž8ƅ@LPHDžXƅ`HpHDžxƅHHDžƅHHDžƅLHDžƅHDžƅHLHDžƅ ALLLL+HMfL9tH5=!4LWH8H@LLAHMnL9tsH5 4LH(H0LLA襻HM^L9t0H5O#LHH LLAbHI^H9tH5 #LHHLLAHMFL9tE1L0HDžXHDž`7H`H@L HpHAhH`IL)hD9IIW H)HI9JLLHASLH54H0IUH9thhuHHpHLHhfLHhHA@H HpHhHX3HHxE11H R9HHE11H RHXH ;HxH`A8L`A EE1LXAAtE1AAIDLHXúHHLAILXHLHppLGEJHA(Ly(BAH Lw(BH DL E(BH $BHH=>DL-)BHL0LhLPHHDžLDž8H@DžHDžXL`DžhLpDžxDžlzMH5R>LH-@HHHHøHIVH9t.HHHHH9tEL`A$AtE1AAIDLL`úHHM]LAIEUHA(HHHpL-&BLGLH=&BEHLz&BH DL#BDL%(BH H= >HHLL`L0HDžDLDžHDžDž(Dž8L@DžHLPDžXxMH5j>LH-@HHHH۶HMNL9tFHHHHH9t*H`HXHhHh@ 8Z6LHLAL+H޺HHAHH;ƅLLHIM9tLHMNL9tyHX:8hHXHx8ht#H`3HxhM_LPHpDžLIIsHHDž^\LPHDžXƅ`8HpHDžxƅLX1E$E$BDA򉅈AtA@ E1HXLMkALALXEUHH$BHL LH`H5#BAxL-#BHDL%#BH=>HHHHLL`H0LHDžDDžDžL Dž(Dž8L@DžH uMH51>HH@H|HHHHH9tHMFL9thL`1һAED񉅌AtA@ E1H`M_LLAMkAH`EMHPH5d!BHL HH`Lf!BDWL-H!BH=>HDpL%"BHPHHHLLhHHLHDžXD`DLDžLDžDžDžDž1sMH5>HH@HHHHHH9tHMVL9tHLHDžHPHLHI8HƅLHDžƅLXLI$LIOLHHBE\$HsPL%!!BHQLHKHL HHDBL L-fB0H=>HDHDžDL(L@DžHLPDžXH`DžhLpDžxqqLH5>HH@HHPHHKHH9t:HIVH9t%hIwHXHHPLXHP`LVDOH=bBDAJL DLHH@HDBHH=>H LHPHDžD0L`DžhLpDžxLDžHDžDžL8pL8H5>LH@H}HHHxcHINH9tHHHx4IGLXHHPDHwPHPECHXDRH HH_H=L>HDHHHDžDDHLDžDžLDžDžnIH5>LH@HNHHH4HM^L9tHHHhMGH`HHpHp`MPDOH=BDLxAJL DLHHHBHPH=Q>HDHDžLLDžL Dž(L0Dž8H@DžHDžXLhcmLhH5>LH@HHHHx趫HINH9t!HHHx臫IGH`LIzPHpDHpDZHxDFL`L HH=>D0HPLMjHDžD D@HXDžhLpDžxDžHDž0lMH5F>LH@HHHH自HI^H9tHHHXMLAILPMGHӉLH1IpLA L؁*HMNL9toDžhAHPIWHDžXHHGHPƅ`LZA[sLH HpIy MaHDžHH=_>HDžjMH5?>HH@H*HHHHpH9tHHHDžLHHxHL0LPHHLIHHLILpIFHƅHHDžƅLHDžƅHHDžƅ L0HDž8ƅ@LPHDžXƅ`h IHHLPLLDHL@LH=|4L`HpHLiL` HH5|4HuHpHHHpH9tMWH5 RHBLMJAHDLTDIWHL ,=L@L HHzLX@DgH@H=*>H8BH0D L`L8HpHLHDžLPDžXL`DžhDžxgMH5>HH @HZHxHHHH9tIwLPH HIH M`HVzHPHDžX`H=>HpDžxIgMH5o>HH@HHHH'HH9tM_H5OQL *=HPHHXL HBMSLB@LBAAzLLDHH=/>LLbHHHDžHLDžDžLDž;fMH5>HH @HHHHHH9tfH01ɺLH5>))p)HGEWHPL H5BHD MOH5QH=HMaH8A$HDހFH uH5BHH8HPH5>觻HPHHH>ED$HHHHLLHHLHLHDHLHH HLLBLL BHH= BLL BLL%yBHLLFHH @HDžHH Dž(L0Dž8L@DžHHHHPLHHDžXLPL`DžhLLpDžxDžHHHӡHIvH9t>LHHIL9t"HPHHH9tH8HHH9tG M'LA$IXHHPIWHHz`HSIO(HLaQ%EvH H5>HEHD%HH5>HX?%H`HL`AE1ILxEH5BLLXkI $H 1LHP@HHH5yB;LH54L%LH5KBLLLLLXLPHHLUHXLI"HL9tHIL9tHIL9tHHHHH9tLPH IL9tHXHHH9DoHPDXH{HYDoHPDXH{HM$L1LLA@HLIHL9tM$HHLA@M$H(LAhEd$D|DM$LLLARLH5vBIWĽHAL9t߭M$EYHLA@IwAT$LL5 8A$L Mk@H==HNLDQLL0LL MsHDžDDžLDžDž(^MH5/=LH @H߭HLIH0L9tvޭL8H`LLAMGLHIz@LMZIpHLH DnHH==DL-S BHH0HHDžLHDžDžLDž]LH5}=HH@HݭHHHH]H0H9tLݭHMFL9t7ݭ8hEHLHDžHPHLHI8HƅLHDžƅ'H L H=K=0L@ L`HDž(L HL@DžHF\MH5=HH@HܭHHH$HH9LHƅHDžIGL@zAloHHH5BH=QIWL%<LDHBAHXH5BH BLPLLZHEHEHHL`ACLMBpLU BL HMRH=>pH1=HHBHH  BLL% BL`HHH8HLH`HHLHDžhDžDžDžLDžLDžHXH Dž(L"ZLH5>HH@HڭHHHHH9t٭L=HQIEAH6uH=H BLH55>HH BLBL=IGHPH0HXHwpL@HEHLLLLpD@L`LLXL8HH LLgH=>H0HPHXLhH`HHLLHDž8DžDžDžDžDžLDžWXMH5]>HH@HحHHH5HH9t$حHIvH9tحHHHHH9IWHL5ALo LgHBH=BDHLHDžDLDžWHpMH@H5AHH׭iMGLlAL-=LxIX-I_FL[LH8H5XQELt (sjl(ylH5>LLXrH`H(rH5(>KLrEL`uH5l!>LLFLXrH5b">LHHXH5u">HH薬L`H%>HLLMHH`LHHIpHH'>LHH蠙L0H(HL7HH+>LHnHXHHHH HS,>H7H8HHPͪHPHHH.>HHL0L8LHHJLHHHLLHLLLL0LHL8HHHHLLLLHHDž HH0HDžhLL0HL8Lp H [BHxH H0HVBL8LVBL@LVBLHL RBLPLNBHXH`HOBHHpH oBHHxBLLd\PLLLFDžxDžDžLDžLDžDžHPHHHHLHH@DžDžDž HDž LDž ҭHHH̐HIvH9t7ҭLHHIL9tҭLPHIL9tѭLH IL9tѭHHHH9tѭHHH9tѭH0IL9tѭLHIL9tѭHHHH9teѭHH`HH9tIѭHHHH9t-ѭLXHIL9tѭH`HHH9tЭL(H`IL9tЭLXHIL9tЭL8HIL9tЭIEH5QL%X=LD怽FHWLXH@lHHHEHhlH5I>HؿEkH0H5K>H`豿EkHH5>H芿H=L%l=HFHkH5>HRHH@H5=L>HHHpHlO>HPHHHHߤHH`HJa>HHHHHHHLHHjb>LLLȒLPLHLLM詒HLHf>HH0I膒HH`LHH(IHLHf>HHxI@HHhLHHУHHHn>HLHHLLL蔣LHvo>HLˑHHXLH貑HPHdD>HHX蕑H@fHDžDžDF$4HDžDžHDžDžHDž4Dž<HDžDžHDžDžHDžDžHDžDžHDžDDžLHDžtDž|HDžDžHDžDžHDž$Dž,HDžtDž|H0H8LDLLPHfoHLfDoI LfDoDžfDoDž fDoDž fDoH)D)D)D)D) D)0D HDžDžHDžDžHDžDž0L0H8HPDž LXH0LH8HfDo foHfDo0LfDofoHHHfoD)@Dž foDž foD)PD)`)p))))HLDhL0Dž H8HLLfoD0foL`Hhfo0HfDo`LfDoDž@fDo@Džp fDopDž fDo)))D)D)D)D) D)0HpHxHLDž LLHHHHHfDoLL/AfDoL`L .AfDoLhL-&Afo`HH=#ADž fo Džp fopHH5AD)@D)PD)`)p))Dž foLHDž H HLLALfoLAHfoHAfoHHLL AL L-eAH0H=yAH@H5XALPMC H`))))DžDžDžDžDž(Dž8DžHDžXDžhHHPHHXHPHpHHLDžx HDž LDž LDž LDž DžDžƭHHH諄HM^L9tƭLXHPIL9tŭHHH9tŭHIL9tŭLHIL9tŭHH`HH9tŭHHHH9t|ŭHxHHH9t`ŭH(HHH9tDŭL0HIL9t(ŭLHPIL9t ŭLHIL9tĭHHHH9tĭLH`IL9tĭLHIL9tĭLHpIL9tĭHH@HH9tdĭHHHH9tHĭHHHH9t,ĭH`H0HH9tĭLhHIL9tíLHIL9tí^H8H5re>eH8HPH5g>ƅDHXmcƅƅ8ƅh;ƅFM_馩LI0LLHHIpLLLIqHHLPH5AHLI^@LALHHxL wAH=F=HPMvHHHHLHDžXL`LhHpDžDžLDžBMH5=HH @H­HHHHH9tHIL9tLHHIL9tHIL9̩֩HXUƅ@{INHHhH9t\E1@AGl$HhH`H`LHLLASH5L轥TM$LLLAPH5L葥HIuAH9tLHHIL9tEdTI $LPLLQLH5UI-HPL9tXVXI$LLPH5L줽UA|$PUHIL9tM$H`LAhM,$HXLA@HHHH<~HH;tpHI$L0DžƙL0Lp1L@M$LA@HLIOHpL9t>HHH)HjL@M$LDžLLLX4LX@LLLDžH0L1LH@HLIHL9կկHDHH+HL11M)IIDVƃM9O$DnAƄ$M9sK~ƀL9slINƂL9sYMDNAƀM9sDKDVƃM9s0O$DnAƄ$M9sK~HƀL9Sƅ(aH WHH+H DD(+H8H5ADƅ8IOHu BL-yQHxHYH|H H5TQH贬EHH5=HX荬HXHH5=CHHH&=H蒀HHHP(HPHHH=^H8ET$HDžL0H8HLD DHHLHLLLLHHH0H8HLHHH L(L0L8H@HHHPH ALL0HpDLxD|LXL%AD`H `HADXHpH=ALxLADLADLAHHADHCPHHH ALL%CMHHAHH=`ADžDžDžDžDžL Dž(LL0LPLPLFHHpHHHAH HLDž8L@DžHDžXH`Džh Džx Dž L8LDž H0HDž Dž繭HHHwHIvH9t8LHHIL9tLPHIL9tLHIL9t中LHIL9tȸHXHHH9t謸HH HH9t萸IOHyL'AT$I_H`H{HPM'HLA$EIL=LmQ(IHwLMEHXL0TL*LML$ƅLHDžH0LH5>H0HH>HHh{GE1LELRH5>LILHHSH5>HݦILHH1TH5>H諦HH@H5>HZHHpH&>HzHHHH8HH`HS*>HgzHHHHHHPHq*>H%zHhHHH贋HHHg+>yH0HHHyHHHt,>HyHXfHDžDžDV$4HDžDžHDžDžHDž4Dž<HDžDžHDžDžHDžDžHDžDžHDžDDžLHDžtDž|HDžDžHDžDžHDž$Dž,HDžtDž|L0H8LHDLHfDoHMfDoDžfDoDž fDoTLD)D)D) D)0HDžDžHDžDžHDždDžlHDžDžHDž(HDžHHD H8L0HPHLXfDoHfDo LHfoLL0foDž fDo)Dž0fDo0Dž foDž foD)@D)PD)`D)p)))LL8HHDž hL0LH8foHfoH0fofDo0L`HhfDo`Dž foDž@fDo@Džp fDop))))D)D)D) D)0HLLpLxDž HHHLHfDoLfDoLHLfDoHfoD)@Dž fDoDž fo D)PH`LhL-AD)`D)p))Džp fo`HHDž D(DDžD`HH=oAHfopH5hADfoLeADPfoL bADfoLZAfo)fDoPfDo)Dž`fDo`))))D)D)DžD) fDoHxH HDž fDo HHAfDoH`HLL-AHH=AHH5ALLALLHHD)0D)@D)PDžhHpDžxDžDžDžDžDžDžDžDž HPH0L8H0L H@HHHpHHH LL`MC Dž LDž Dž( Dž8 L@DžHLPDžXDžhDžxHDž衭HHHkHM^L9tHHHH9t֬LHIL9t躬HH`HH9t螬LHIL9t肬LHPIL9tfLHIL9tJHH`HH9t.HHHH9tLHpIL9tHH@HH9tګLHIL9t辫HHHH9t被LHIL9t膫LhHIL9tjEt0HL L9tMHLL9t5t0H0H@H9tHHH9tHPH5!>螚ƅDLHHPH5"O>LJHALLnLH5AHHI{ H(MCHHHHHpHH @LHDžHDžH說HMVL9tLHHIL9tLPHIL9tݩDtL8HIL9t踩?HPH5N>EHHHPH5O>HHQ>HLVmHHLH @Lj HLBH(HHHHLHDžLHDžH_HINH9tʨHHHHH9t讨LPHIL9t蒨LL AILLAAMOLA>HPH5 Q>LHHPH5PQ>L~H)T>LLkHH5&AHLAHHHL%ALZ@H0LBHHHHH H @LHDžHDž8LL@DžHL`LPDžXH赧HMNL9t LHHIL9tHPHHH9t覭M/LAIWF@LZL<H8H5QVG<HXH5R>6G@AHoAH5#O>HH`HH5U>H|H`H5lQHx̕H YQH=HOLGLHz<H5X>LGq@m<LH5>LLL-e=HLH54]>H{HhHAHViLHhLL=iHH]>L'i;GCH =Lܡ=HHF=L-ϥ=L0L%A=HH5^>膔HHLhLHH=LhHHLhHHH^>ghH0HHMhHHH_>3hHHLHhHH`>HhL=L@H5=HP=H8H"QH8LFLh:H5=L]GLP:H5a>L:LpLH5ac>LL`yLLHc>LLXM7gLHhLLLMxHLHd>HIfH0HLHHHfL`Hf>HLfHH8LHfHH5g>HH0fH0H0HHefH@HH HDfHHPHg>H #fHH HwHHH$h>eHHHeHHHAH@eH0H@H0HeHHH)wHHHi>_eHHHHvHHPH!i>HeHHHHdHHHgi>HdHxHHH8jvH8HHi>HdHHH0H(vHHHi>HWdHXHHuHHHj>#dH8HHPuHPHHH<cHLLLpBLxIHDž( HHH L0H0L8@LPHLpLXH`LxHHhHHHxHLLLHHHpHHHDžHLHL0L8HH@HH`H HHLL ALLALLAHH=AHAHHL L0L@HPH@DžDž(Dž8DžHDžXHLPHpH(HLLH`LHHLMBDžhDžxHDžDž LDž Dž LDž HHH[HINH9tHHHHH9tHPHHH9tڜHHHH9t辜LHIL9t袜LHIL9t膜LH0IL9tjLHIL9tNH8HHH9t2HHHH9tHHHH9tHHPHH9tޛLHIL9t›LHIL9t覛LHIL9t芛LH0IL9tnH@HHH9tRHHPHH9t6HHHH9tHHHH9tL HPIL9t⚭LH IL9tƚLHIL9t誚L0HIL9t莚HHH9tyH`IL9tdLH0IL9tHHHHH9t,HHHH9tHXHHH9tH`HpHH9tؙHPIuH9tÙLhHIL9t觙LH`IL9t苙D[0LHIL9tbLHIL9tFHHpHH9t*HH@HH9tHHHH9tHHH9tژHHHH9t辘LHIL9t袘LH`IL9t膘LHIL9tjLhHIL9tNHL L9t6HHH9tHHHH9tHxH`HH9t旭HH`HH9tʗDtHHH9t詗LXHIL9t荗L8HIL9tqHL1HDžLL0HHLIMILILIHƅLHDžƅLHDžƅ L0HDž8ƅ@H(|fDIGIW H)HH9P7L$LI$LRLH538{HPH;(t0]0uI$Lhc-HL9zfEH=a>L0D)LPD)D)01MLH5`>H\HLIɣHPL9t踕H`1LofDM_IW L)HH9/6M$H`M$LARH`H5ٷ3zHpL9t0H0uI$Lp'-HL9uLLHDžHL`Dž8Ix MhL HH=a>L0MH5a>HH @HHHH艢HH9tx~LQC3H5QLIGHAH5uQHOLX1HHH(MiH0@MGIW L)HH94M$HXM$LASHXH5A3xHL9t`谓`uI$Lh^,HLe9uH8H5QHPH8H5`>HiLHHgc>HL$WH0HxH(L0DWHN`L8H=ALLH`H ADHHL HpHALL ALLFHHHHHH @HHHDžhLLHHDžLDžDžDžLHHLDžHX`HMmL9tˑHPHHH9t译L8HIL9t蓑HMfL9t~~LNr0H5QLIHAHAHOHh1LWH(LiL0|fMOIW L)HH9}1M$HhI$LRHhH5J3uHL9t`蹐`uI$Lp +HLn9vH8H5Q#HPH8H5`>HfLHH(c>HL-TH0LLPHXDFLI{pHDžLH(HH=ѸAHDHL L LAHH(H AL0L8L%AH@HhLpMCHHHHH@HPH`DžxDžLLDžDžL`HHDžLLLDžH`JHMmL9t赎LPHIL9t虎H8HHH9t}HIFH9thI_GLc(HHH5Ma>}HHH5Re>LdED$HHAHDžHLDžH~0DL LFHHHHHH@LLHDžH0HMnL9tqLHHIL9tUIWLHH HBIp0LM@D`HH5Re>H H0H0H@HDžDL(Dž8H@DžHH(3LOI,HH5ͤQ4|LJ,HhH5Q|ILM_H5QL%ALN怽F@ISL`HuH5oAH{%L%=HH5Q{{G%HH5Q[{DED GDh%HH5ţQ,{N%HH5Q {F%H H5AzF$H0H5>=zLH0H5dh>L|aLLHi>LNH HLm`LHHLP`HHL:`HHHȢQpNHHH`HHH_HHHi>"NLLHL NH@H;j>LMLHH@L_HH<LHMHfEHDžIDDDžHDžDžHDžDžHDž4Dž<HDžHDžDžDVHDžDžHDžDžHDžDDžLHDžtDž|HDžDžHDžDžHDž$Dž,HDžtDž|HDžDžLHL0Dž H8LHfofoLHfoDH))HDžDžHDždDžlHDžDžHDž$Dž,HDžDžHDžDž HDžtDž|HDžDž )LHHHDL`foLfDoHH foH(fo LfDoDž foDž0 fo0Dž fDoDžfDo))))) D)0D)@D)PD)`L0H8L0H8Dž LHLHHfDoLfDoHL0fDoH8Hfo0D)pDž fDoDž@ fo@D)D)D)))H`HhDžp fo`L0L8Dž HPLXDž HpLxLfopLfofoHLfofoHLHfDo)Dž fDo ))))) D)0D)@H`HHLDžp D@HHhLHfDo`LfDopDfDoHPfDoLXfoPD)PDž fDoDžfDoDž` fo`D)`D)pD)D)D)))HLHHDž HLHLLLqAHHH=eAHfoH5XAHfoH IALfofoLDž fo Dž foH)))))) Dž fDoLHDžp LL LpL`HHhLfDoHH=\AfDo`HH57AfDopHH ALLHLD)0D)@D)PD)`DžxDžDžDžDžDžDžDžHPHHLHLHHHqALHL LfALH0H@HPHHUDžDž Dž Dž( Dž8 DžH DžXL`DžhLpDžxHEEL]EEH]HHHHLEMF HEE_HHHE>HHH9tHHHH9tHIL9tL@HIL9tcLHPIL9tGLHIL9t+HHHH9tLHIL9t~HHpHH9t~LH@IL9t~HIL9t~LHIL9t~HH HH9tn~HHHH9tR~H0HHH9t6~L HPIL9t~LHIL9t}LHIL9t}HHHH9t}LH`IL9t}HH0HH9t}LhHIL9tr}LHIL9tV}IFH_H8H5wQlGhMHH5.^>lHHH5_>gSLH5e>LlFHxH5 AalGHH5ڔQAlFxHH5=!lhxHH5>g>lLHH5h>LRLLHh>L @LLHLQLLHh>L?LLHLpQLLHqAL?LL8HxL>QLLHh>Lu?LLLLQLLHh>LG?LLHLPLLHh>L?LLPH8LPHHHn=L>HXKHDžL0H8DžHL0LNpH8LHLHPLHH0LL8LXL HHLLLAHH=!AH0H@H L(L8L@HPDžXL`HPLLFHHpHHLDžhDžxDžDžzHHH7HIvH9tayHHHHH9tEyLPHIL9t)yHH HH9t yLHIL9txLH0IL9txHH`HH9txLHIL9txH8HHH9txLHIL9texHHHH9tIxHHHH9t-xLHIL9txHHHH9twLH`IL9twLHIL9twHHHH9twLHPIL9twHxH`HH9tiwHIL9tTwLHIL9t8wDtLHIL9twH8HHH9tvMHAH=)QMoAHD߀FH XH8H5cd>^fLPH8H59p>LMHHHp>Lk:AML8H`H,ALHHDžHPHP MQ`LXHH ALHLL HPMALHLHHH @LH0L8H@LXLpDžxHDžDžLDžDžHuHHH3HIL9t.uLHHIL9tuLPHIL9ttH8HHH9ttHXHPH8@3L(H0IL9ttH0HHH9ttL`HIL9tltHXHHH9tPtLH0IL9t4tLHIL9ttHHHH9tsLHIL9tsHHHH9tsLHIL9tsLHpIL9tsLHPIL9tpsHH0HH9tTsLpHPIL9t8sHH0HH9tsLHIL9tsHHHH9trLHIL9trLxHIL9trHHPHH9trLHHIL9ttrHPHHH9tXrLHpIL9t}YOHPH5QeYsHPH5>MYGTHȁQH5=i=IHIH0{H5>LYLH5f>LXL-lQLH`IL9H5'>LXeH5,QLX.A$HHE11H Q};LE1ɁHDžIu AMeDžLAH=3>HLHpD9MH53>HH@HhHHHvHpH9JJA$HHE11H Q:HHH=4>HDžHL`HDžhHQ LiHPH@L`jMH5`4>HH @HgHHHHuHH9A$H8H5ؗAVHH5BQVhHH5>R>VHH5>Q>qV+HxH5~QYVH8H5AAVGcHH5G>!VG}LH5K>LUxH H5~QUH0H5l~QUHH5B>UHH58B>UrGL%eAHH5A>wUL%EAHH5A>]UHHH5:>EUPA$H8H55AUH8H5[>UHH5>TH`H5>HTGܾH`H5L>HxT׾H50}QHT錾H8H5}Q|THH5I>dTH5|QHPTH5|QLHSH.|QIHH5BAHxSqH5|QLdSuH5x=SSLH5ȭ=LL`)SH5AHS3EH H5M=HRLHH5=L9HHn=LHh&DG1oHH5m=HPR]H5AHzRʫ@7HPH+[@7HPHZfH=x=L))P)O1MLH5x=HbHHHx HIvH9tbfH=x=L))`)1MLH5vx=HVbHHHx< HIVH9uauHHH56,ɅH=w^=H H^=HH0HH5>QHyQGH@6#L `=LmyQLL0HHMVLLHEOH0H8M^LLHOtHLHLZhH5#=L;P"HH0H8LOHLNHhHHLoHLNH5վ=HO8L@XhƅhhLH=21eHH=21eHH=21eLH=21eHH=21eLH=21eHH=21{eHH=21jeHH=21YeHH=w21HeHH=f217eH I8IIIIIIIHH4IJIII?II?I&HH{IIIHGHHI$HH[H>HI IIIII8ILI`ItIIIIIIIII(I<IPIdIxIIIHHHHH H!H5HBHVHwHHDHHwHISHHH/HHHHHHMIMIIU Ii I} I I IIIIII I I I I I I I I3 IG I[ Io I I I I I I I I I I= IU Ii I} I I I I I I I I I# I7 IK I_ Is I I I I I I I IkII I II1IEIYI I I2 I? IL I` It I I I I I I III(I<IPIdIxIIIIIIIIIII0IDHHuHHIIHHH7HHHH/HEI]HHH>HTHZH`HHHfHHHHHHIIjIFIIHUH&H:HNH&H:HRI~IaH2H*HH3H> H II\H H!H7ImIIHHH-HCIHVH,IHABH`H51S>HBfLHDžP)@)`HDžp)HDž)HDž)HDžI1ۀ-HHLL`HH fDHL49-MVIV L)HH9I4LH`HQLH56HML$AL9tQEuH`HHuH1HxP XL`ECPA֍AAnAHL*L1@IFIV H)HH9H<غLJHL9fH L1L`)HDžMl$)HDžHL\H LLAQLH5th5H`AL9tPLHICH9txPEtzHLG9I~IV H)HH9H4LH HLQH5L4MHHHH9tOL ApPt6gHH;(LHCfDHH;=LH@OHH+H@LL+I@ƅƅxH@AL`E1HHDHDLDžHLK{P!uDSDHfDILlD9M~IV L)HL9KLL HAQH5yC#L 3HIuAH9t3NERLLHLASLH52H@AH;tMEN{PDHHH1H@HH53u2H`LCL9tMƅHH+H0]HH+H0HhH+`H ƅADžAA靉LL1HLA H53L1H LHL HMOHL9HHH9KoLHH;HLHMGHDžHL9t(LLHHMWLHL`M:H5L0HLKL*LfDoqAHHDžDHDž@L`HHHPI9ZDoLpH`DhMJLLLHHDžAHH9tKLH`IL9tJHHHH9JJ@LL 1HLA H53Lh/LLHLA HIGHH9}HHH9oHHHHHHMWHDžHL9tILHHMOLHL`8H LHjAH L[HL9HHH9v|o(HHHf|H H0H HHDž(H H9fHHH9*oHH5-HHKH)Ifo=AHHDž8HDž@KfxH`HouAL zAE1HH"DžpDžhHDžHDž@HDžDžDžHHPL"D[PA_AIL膲D9 I~IV H)HL9!JLL#HLAT$LH5i3,H`AH;tEGElHLHLPLH5I+HAL9tGEuU{P{PUDHEHH@HH`HhfDHLHLRLH5mAIB+HAL9tnFE%L+HHA@LH`HAh~L#HA$HHhH`HPHh蜡HHLH H5nALJ H=<H@LjH8LL HDž(L0DžH{ŻMH5<LH @HEHLIYSHL9tHEILDXHpLsAHx0LLhHpL;PH=F<DL HDžxDžLDžĻMH5<LH@HEHLIRH L9nDfL+L`1HLA@H5L(PHH{HtDfDo%AHHDžD HDž@L HHHPI9DoL0H D(MLLHHHDžHH9tdCH`IL9KCfDLL`HLARH5e3L'u {PvwH`IuH9tBLH HLQH5L'L HLAQLH5}q'H`MEAL9tBLHIL9t}BEsHL`HLPLH5&I'H`L9t7Bwj{P]H1HH1HIN{LPLpAXMCPH02HqL%tiADN`H=F>H15LPI[HHDžXDpLDžLDžHDžDž+IH5QF>LH@HAHhH`HgDHL`1HL@HLH~8HHSH@H9] LIL9sDoLPH@DHHsHLLHHDžAHH9f.H L`1HL@LH5>v3$H`uNIL$H9t?qL+HHA@{H@hIL9?{PLL`1HLA@L H`It$AH9tZ? DcHމLHARpINLLALI L8H5B>L.LHH5C>L=H HnALHXH8HDCHP` HDVH5!fAHHkADDLfOLH ~AH@H H`H(DL{pAH(LL0L@HpH @HDžDL Dž8DžHLPDžXDžhDžx>HhH`H`H`Md$L9td=HXH HH9tH=HMmL9t3=LHIL9t=LHIL9tHDž(LpLxHDžDžDžLDžDžn;HhH`H`TH`IL9t:LHIL9t:H HH@ H@HHH)H )H(H`HhH)H TH(LIM)IKHHI]LHyH9ЉLL9LfoAH/ q_scalfoAfo%Afo-AHp@@He_s;X` h0HHH=F>LpDBD*LDpXHMH5bF>HH9;zHHHLWHL^'M^HHH5kAHX0LH=F>MkL`EeHLhHq`AHLHHDžDHDžDžkMLH@H5E>HL8HhH`HH`MOL9t&8LHIL9t 8HLI)IXLLM)I MfHPLF Ml$A}LPHpH^`H=MG>HDžXDžxsLIH@H5G>HL7HhH`H(LH`HH9t+7LL@E1LIILLIM^I{ǡD9iI~H_HCHS H)HL9|N,LIMLLQLH52WH@H;t6uMMLAE1"fH`H;tK6ILD9MEIU L)HL9KHLHASHH5X3u{PuH`H;t5H1HH1HpPt0tHQLH0HAh8L HHAhH HHhIUL6fDHH5؉hHH{HQ5fo5{AHHDž0HDž@$H5wLq`iHLKL4fDoT{AHHDžDHDž@tf.HH@LHHAhuDoH`DhHsHDoH D(LSL:HHtHv2HHH=H(HtHud2HH(HHHtHu+2H@HHHHHHH9t3DžHXLPLHu6IHHtw yHHuL9tEL$ ELHLL02L@8@8HP I@ HHHL@(H@0LX'LXHxH@H9@BH@LM*HpIULH`It$(IT$0H5 H5LsDžLXLMu;MMIMtAy yMIMuL;tE\$ ELHLL81LP8@8HP I@ HHHLP(H@0LX&HXH H9@H@"H@L)HpIT$0I|$(A1H f3SPLzՃDžLXLMu8@MMRMtEB EyMRMuL;t AL$ HHLH@0LH8@8HP I@ HHHLH(H@0LXi%HXHvH9@HADH@L'HpI|$(LFH`IL9}/LL;pI7H`H>LL`LhLaAIK LM{H= @>HH`HDžLLDž֮MH5?>HH @HG/HHHHX(@MoHW%>AH5WADžH`AL%d%>H WADžHHH=3YAHHS`DL XAHLCLXALXAHH56>H HH @L HHDžLDHLDžLDžLDžDžDž(Hx%J`Lv]H57>Lxi]LH59>LUHLH5D=>H LH=>HLcH LLHHHXTAH8LHH5B>LHHE>LHH`IMH9t#HHHH9t#LLH H0H9t#HHH9t#HLL9ts#LHLIL9tP#HLL9t8#HL2ADM~D,HL{HL@LHHaAIL ;QL=JADDgH=UVAHH DE>LLVADL%"VADL-VAHHXH@HLLPL%QALL`L- RAHDžHLLL L0Dž8DžHDžXDžhHHLLLFHHpH"@DžxDžLDžLDžH!Iv`LL(b<IL>`AHLHFHH TAM@DHHLDH LL(0LHXLHHH HDžHLL@DžHHPDžXL`DžhLpDžxHHHDžHHH"@HHDžLDžLDžH` L H58QLL sDDEPHH`HHH#SAHhL@LG@LSADL(SALgH= B>LHHH HH@HDžHLDžLLDžLDžǞMH5A>HH @H8HLH,H@H9tDLH PAhL-rPAIx0LXE䉵H/RAH;RALDHH@HM@H5B>HDžL HHH0Dž8H@DžHH`xLHDžMMLD Lƅ8MHDpHQAHDžHF H=B>HPLfHHHDDž.MH5B>HH@HHLH+HH9tH H5D>H LHH5 F>u LHH5F>HN HHH5)G>HHLHH>HLQHHLHHLHM>HLHHLHLHO>HLL0DhpHDž8H`MZpLH LhL0H(DP`LHHPHpH L(@H MAH HHOALxL \OAHHH8HH@LMBHHLDžDžDžHDžH`HHhLDžDžHH`Md$L9t|LHIL9t`HI]H9tKLHIL9t/HHHH9tLHIL9tHHHH9tHHHH9tLH IL9t8I~HKAH1QHDڀLgsIH5O>L fIHH5Q>HHH5R>HHH7T>HHLHHHHHH@HLET$HDžDH8LpIKpHHDHHLLAHPpD LLALLHHLA0HXH HhHH@@LPL`DžxDžLxLDžDžHDžLpH`HhLMCDžHLH`IL9tdHHHH9tHHH HH9t,LHIL9tLHIL9tHHHH9tHMUL9tPf)`OH=U>)L)mH1MH5T>HHhH`HHH`HH9t,HHH`x_Pf)`NH=nW>)H)輕H1IH5AW>H1HhH`HHH`HH9t{H(H HH@L`HDžHLHHHLILIHHH@ƅPL`HDžhƅpLHDžƅHHDžƅCBIFHxL'A$LPH`L$pLHHHH=3HHHL.L HH5٧3HHHH "HH9tHLoI~LLX<HLPHLGL`0H=W>ApLL`HDžLLLDžLDžYMH5V>HH@HHHH7!HH9t&INLHIp M`HQzHHDžH=W>LDžMH5fW>HH@H1HHH HH9tMNHH=;X>HH L`MQH EZHHDžD L0Dž8%MH5W>HH@HHHH H H9tI~H@HDžHƅPHH HH@HmMFIxL'A$IvIHH~HHI$PH lHHIHPlMNHXHpH=\U<LI $HF@MQIT$L%8U<EZHHLLFH5b>HH @H{HHHpHDžxDLDžLDžDžHhH`H H`LKL9t;MVL@HH5Rb>IL$ uMZHECH@H@HDžHDPMD$L`DžhOHhH`H 5H`HH9tfEH`1ɺLH5g<=D)0D)`D)HAVHLH5|=AHIvH^<H5N'QLHLH5b>lHHH==LCHDžL@LHL@H@HHMQpHHLH@LHHL`LLAH9MNL>ALXIAH`HH5$QHHH`9H5g$QH(@L L@GH5a>LLL8H5 $QLn8HH5Sa>H@G8L#QH =AIEHHHx68H5a>H)88H`H5eb>HLL7H5W=LHH0MFlLH5ee>HmH0HH5f>HHHHi>HkHHH HxHxH@Hi>Hp)HHpHHhHhHHr>H`HH`HHXvHXHH)v>HPHxHPH HHHPHww>HxcH@HxHH8H8HHy>H(!HH(LHpH{>LHH@HHH}HH`H=AHHHHXBHXHPH=HqHHHHHH`H'=AH/H`fEHDžDDžDVD$DD4DHDž4Dž<HDžDž HDžDžHDžDžHDžDžHDžDžHDžDžHDžDDžLHDžDžHDžDžHDž4Dž<HDžDžLDfDoDMDDžfDoL`D)D) HDžDžHDžDžHDžDžHDždDžlHDžDžHDžDžHDžHDžHDž4Dž<HDžDžHDžhDž0fDo HLDžHHDž HfDo0LfDoHfDofoHfoHLfoDž LfoD)D)D)D)))))LLH H(LDž HhHfofoHLfoHpfDo0fDo0) Dž foDž fDoDž@fDo@)0)@)PD)`D)pD)D)DžLLHDž HLLHLfDoH fDoH(fDofo LfDoHHfoDž0 fo0D)Dž foD)D)D)))))HHLLDž H`HhHL`HhLpfofoLxHfopHfDoLPHXfDoPDž foDž fDo) )0)@)PD)`D)pDž` D)fDo`H@HHL`Dž LhHXHHHfDoLpfDoLxHfDopH :6AHfoH06AfoD)Dž fDoDž foD)D)D)D)))Dž )foLHH@Dž0 HHL L 5AH(L8H5AHLxH=5AHfo fo0foDž foLpLLT5AHHH.A)) )0)@)PL`DžhDžxDžDžDžLHHL H.ALPHpHH4AHH=4AHH5.ALL3ALL-AHH 4AH H4AL0L 4AH@H4AHPH8H`LHLEMC DžDžDžDžDž Dž Dž Dž( Dž8 DžHDžXDžhLpDžxEHMH`HHUHHhEELMEHEExHHH^LHIL9tHH`HH9tLHIL9tLHPIL9tnHXHHH9tRHH`HH9t6LHIL9tHHpHH9tH@IL9tL(HIL9tL8HIL9tHxHPHH9tLH IL9tyLPHIL9t]HXHHH9tAH`HHH9t%LhHIL9t HpH@HH9tLxH IL9tLHIL9tHHHH9tL0HIL9t}LHIL9taHH`HH9tEHHHH9t)L@HIL9t HHHH9tL@HIL9tLHIL9tHHHH9tLHIL9tLH@IL9te&HH5QI~HWH&&HH5Nl>e&HH52QLL%H5_l>LoH%Hh%H5l>H=%HPH5m>HLL@%H5dE=LL%L,H52o>LL HH5p>LL(fLLH.ALLHM購LpH@LLL8M@HLH7r>HHxImLHLLLpMHpLHQz>HHXI'HhHLHIL LHz>LLPMLLHL{LLHz>L費LLHLILLH(=L耻HLLHH`z>LXHLH`LhDVH@IHDž HHLHM@HHDHLHLHLHHLHLHLLi%AH HA+AH(H L,AL0L N,AH8HL,AH@H=J,ALLL`HhHH(LHL#,ALPL%$ALLHXH HH @HLL`DžhLpDžxDžDžLDžHDžDžLDžDžHhH`HH`IL9t+LH IL9tHIuH9tLHIL9tHHHH9tHH0HH9tLHIL9tHPH HH9tnLHIL9tRLXHpIL9t6LpHIL9tHxHHH9tL8HpIL9tHHHHH9tH(H HH9tLHIL9tH@HHH9trLHPIL9tVLhHIL9t:LHIL9tHHHH9tLHIL9tHHHH9tH=(AH (AD~hD~8L (AH(AHD~HD~HD DD~LDD~HDD~DD)DD)DD)D)D)@D)D)`D)D)D)PHH5 Q[HH5 Q@HH5 Q% HH5 Q HpH5 QwH8H5u>?H(H5$==HHH(H5u>HbL@Hx>HL蹴HxH8LHPLH ~>HL致HXHpLHLhH>HLUHPHLHLH>HL#HHLHLH>HLHHLHLH2>HL迳HLL]HH4<L藳LXLHHHhMIsIIZLLWLHL HLHHHLAH0HHI$ID$L'HHDž LL@HHLLHHHLL`H8LLhL@L$ALLLHL$ALLLPL $ALLLXL$ALLH`H5$ALLLLLLLLLLL LL(LL0HhHH F$ALLLLHpHHxHLDžLDžDžDžDž#HLH0H H @LBH(LmHhH`HSLH`HH9tHH HH9tHIEH9tLHIL9tnLHIL9tRLHIL9t6LH0IL9tHHHH9tHPH HH9tLhHIL9tHXHpHH9tHHPHH9tHxHHH9trL@HIL9tVLHHIL9t:L(H IL9tL8HpIL9tHpHHH9tHHHH9tLHIL9tHHHH9tHHHH9tvH= AHAfDofoLALAMNH(~(H(~(L(~(L(~(foD)) h)))p))PIYHH5Q?HH5AwHH5t5=LHH52>L貿LLH!>L LLHL蠾LLH>L׬HLLuHH-<L诬LXHHHxDcIPHLYLLOHHI0HH HzH(H(LHHpHzHHHHHD0HDž( HHHHH LHHL@LHHHLPLHXHL`LHhHLpHL(HxLHLHLHLL ALL AHH5 AHH ALLHLPhXLLLpLH LLDžDžDžDž({HH0LHHH@L@LHhH`H諤LH`HH9tHHHH9tHIUH9tLHIL9tLHIL9tLHIL9tLH0IL9trHHHH9tVHHHH9t:LHIL9tHH5GPHH5+>HH5ӓ>nILSHdl#HH5>9 HxH50=HAHHH5X>L@HHH5M>L襺LL8HWPLLLHxL蓹LLpHʗ>LʧHHXLH赧LhH>HL蜧HPHLH3LHu>HLjHHLHLHk>HL8HHLHϸLHAHLHHLH蝸HH_<=HצH`HhIHDž L@LHHLHHHLHHH LH(HLLLL(LH0H8HAL@L%AHHHAHPH=AHXH AH`HALhLALpLAL LHhL`LLHHHHLxL ALMEHLHH @HDžDžHDžDžDžDžLDžLDžLDžOHhH`H5LH`HH9tLHIL9tHH HH9teHHHH9tIHHHH9t-HHHH9tLH0IL9t߬LHIL9t߬LPH IL9t߬LhHIL9t߬HXHpHH9t߬LpHIL9ti߬HHPHH9tM߬H8HpHH9t1߬H@HHH9t߬HHHHH9tެLxHIL9tެLHIL9tެLHIL9tެLHIL9tެHHHH9tmެMvMfH5>LHLH50>H谴HH>H LxHLAA|$HHL L=AIp@LH@HHLM@HHLHH @HDžHLDž(L0Dž8L@DžHݬHhH`H贛LH`HH9tݬLHIL9tݬHH HH9tܬHMmL9tܬHHH5HHHH9tܬHH`HH9t}ܬH H@HH9taܬLHIL9tEܬLHIL9t)ܬLH`IL9t ܬLH@IL9t۬LH IL9t۬LHIL9t۬HHHH9t۬LHIL9t۬H H HH9te۬LHIL9tI۬HHHH9t-۬HHHH9t۬HHHH9tڬLHIL9tڬLH`IL9tڬLH@IL9tڬLH IL9tڬLHIL9tiڬLHIL9tMڬHHHH9t1ڬLHIL9tڬH HHH9t٬L(H`IL9t٬H0H@HH9t٬H8H HH9t٬H@HHH9t٬LHHIL9tm٬LPHIL9tQ٬LXHIL9t5٬L`HIL9t٬LH`IL9tجLH@IL9tجHH HH9tجLhHIL9tجHpHHH9tجLxHIL9tqجHHHH9tUجHHHH9t9جHHt(جHHtجHHtجHHt׬HHt׬H`Ht׬H@Ht׬HH`HH9t׬LH@IL9t׬LH IL9tn׬LHIL9tR׬L`HIL9t6׬LHIL9t׬L0HIL9t֬HHHH9t֬LH`IL9t֬HH@HH9t֬LH IL9t֬HHHH9tr֬HHHH9tV֬H(HHH9t:֬LHIL9t֬LHIL9t֬LH`IL9tլLH@IL9tլLH IL9tլHe[A\A]A^A_]H5=L@BHHH5J>(1HxH5PHPHH5>HH5wPkHH5 AHH5 AHH54PHH5!PH(H5 PpH8H5 Y>XHH50 A@HH5W>%HH5W>HH5tW>HpH5W>H5tPLLH5bK>LLH5G>HHPH5I>HjH5 PLqHH5PHHhL HH5$A4HH5P^HHHHOHHH5wPL7H5)>HH`H5)+>HH5q(>LHH5(>H@3H5^AHkH o2HI~HP2HXHwH`H5 ALcMfHz@AH@L O@IHHEI\$MDLDLGPKH59AL AL@L%0ALOLH=<>HH HHDžH L0LPDžXLL`DžhLpDžxDžL`QLH5>HH@HѬHHH:HH9t)ѬI~H>@AL_<H=IH n<LGIEMDHELApLLH=V>L IYPHHHLMaHDžHLLDžLDžDžDž9PMH5>HH@HЬHHHHH9H5+>L裿HH5>萿镶HH5m=xHH5 =H^ LPDpLAHMZ0H ALPH=L=HpMjLHLPHDžXD`DžDžOMH5=HH@HϬHHHHH9tάxڱH H5PHoձL H@H`L=ALhIp@HHL9AH IAH=O=H D@MhL`HPHHDž(H0L8HXL L`DžhLLpDžxDžMMH5=LH @HRάH LIH`L9H=AH5^=DžH`AL%H=H f@DžHwHHHH9鴞oHIGHÀo(HHsH 阃oH@HHsH`HHtHˬHHHoH5YC>L1rHH5?!H"XLL`HKHICI9HpLHLHhƅpHDžhIHL`H`HL{IL9AHHtH@ʬH`HHhRH`IL9 }ˬH鿃HHA@DKHDp錋H5 LHL`H{ID$HI9HpLHLhMT$HDžhL`LƅpH HHKIH9ԆHHtHɬH HH(HLHLRLH5,@I HAL9t9ʬE~LHHA@KHDH==LPHLN0LnLDLHDžLDžHDžIMH5=LH@HɬHLIiHL9tXɬLHDžHPLIR0Mj0H==LH H@DžHLPDžXHMH5=LH@H=ɬHLIHL9tȬDH`L77HPLC0H==HDžhL`LkLDpHDžLDžHMH55=LH@HxȬHLIHL9bƅMFmtEEMLH`EHIAD,L9tǬE1A@AG|HH5w>H5r=LLH5=L钢H= >) L)GH1MH5>H{ǬEH=>)L)FH1MH5Z>H:ǬSI~LhLHIs@HOL`H=>L DALMcHDHHDžLLDžDžLDžEMLH @H5i>HLfƬHhH`H`LH`IL9ŬxI~HHL%@DLHF@LGH=>EXH0LPH`H^HHDžDD L8L@DžHDžXDžhDLIH @H5'>HL\ŬHhH`HBLH`HH9JĬ@HH53=>1FH5>H(鶹H5PLwHH輂sDoHDIwHyHH+H( HH+H(tƅAAADždH@L{VqLL+IJLL+IHtƅAAE1DžLHLHK4LASHH5 HHAH9tìE- HHHH鏳H5LgH5L梼PH5 LϢQ4fHBvM^H 2HXMCL`HH5>HmL @LeHHD0DHH( H@H'DžAADžDžLMcH`HK4LASHH5H踡H`AH9t伬EHJ21HIDž2H81HHH IHXDž LXLLL HoHH=21膰HH=21uHH=21dLH=21SLH=q21BLH=`211H=腥H@fHMfIhHiHiH%iH6iHCiHWiH fIeiHuiHiHhHiHiH jHXhHkHkHbqHzqHTfHhfHqHqHqH|iH_iHliHeH,eH8gHLgH`gHtgHQeHkeHfqH^qHpHgqHFqHfHfHpH|IwHuHxHtHlH-qHveHzqHVqH2qHhHtHtHtH^qHp!HuHtH#uIBwHwH|wHJxHoHwHwIwHQfHefHWtIwHxHsHxHX{I;yH#{HtzH{IJxHwHxHxHxHxH6yHkIKyHVyHtHZgHStH4zHjHzHAzH^zHyHHHLLAVHMnL9tZH5Ի2LHHLLAVHM^L9tH5L踈HHLL?UHINH9tژHL 1HHLHL DHLHRH5PLA}HIvAH9tiHIL$H9tSHEHLHLPLH52|HH;tLMEHLA@M]H0LAHHL9MoIW L)HH9|SItLHLAQH5NL6|HIt$H9THHPHHD@HLLARLH5{Hr8eLIt$I99LؖHGPLHXHD`AhIP@L`ZLM/LA`dMH(LA8~H(LAhIwL1LHvL.A H5LzMOL1LIqH LH5IzHL9tЕHIL9t軕ItGH(LH(LAHHIL9&BpIH(L xH(LA$XaIH1HwHH H5HyEIWLLHr1LA LH5IyHAL9tȔHHH9t賔MEeEH(LA0LHLAQH5CLE11yuHD HIVH9tIHIL$H9t3HGPERLHhHDxAh8LL LAPLH5"L xL H AIL9t貓EHHH;PDHH>HHH1HH1HHHhHH;pCDLDVLHhHL/AH1HHHHH;@CLNLHfDH_HHH+@E1L@HHfMOIySD97MWIRHBHR H)HL9 NJLLHASLH542vH@MEL9 I yH`E1LDžH HLIDžHL1fDLcH@MNAMDIHUD9H{HS H)HL9$MN,H MULARH H52uH`H;tZMMLHAQHH52uHH;t3HcH@HHуI f.IvMLALE1ARHEHL@HH TLHHLHM\$L;eMH@N1L JLHLMjHDžxDžDžDžHDžDž MH5ES>LH@HhHHHNLHIvH9t蹍L HIL9M\$L;IfLp)LGH=[R>)pA); H1MH5(R>HH詍IGg1L@0DRA EAuA@?IIHLSHIHHLzIOAHYtH52L?qAHHH LGHHL zA9=3H @A L56HDžLLDH=_>DžIX L-OM`HLL MH5w_>LH @HHHHpJHMNL9tkH5S@H A HDž(Hx Lk 6L@LDHXH H=^>DžHL0 IH5^>LH @HmHHHXSIHMVL9t辊H f@MgH10s9H@HDžHHHH@ƅP 4INƅHHDžMD$AEH:HpLHDžxH`HG LoDH=b>HpLDž MH5a>HH@H3HLH褗H`H9t蓉IWHLH}@HLMY0MiHJHDAHH=/c>HDLHDžLDžHDžMH5b>HH@HaHHHΖHH9t轈HMVL9t計MGH@HHMPEJL LHHM\$0H@LIH=Ss>H@H`L HDž(D0LPDžXDžhH MH@H5r>HHjIOH0H=@u>LS HLcHqFL0HDž8@LPDžXH@MH@H5t>HHꇬMGH`H=u>HQ HYHMHEYH`HDžhDpLDžH`IH@H5?u>HHhLAGIwHDžMb HIZLH=u>L%@LLDžwHIH@H5u>HH݆HH5u>HuMGHE_L0HHLH@MHHHLAQHDHLHHLHLL@H H[@H(H=@L0LFHHHPH @L`L%/@HDžL8L@HXDžhLHHLpL-@HHHDžxHDžLDžLDžL LDžDžHIwEOLH@HHIL8LFH`HhEXHLPHDDL HL(HHHH0HHL MBH@HHH @H`HHDžL0L8HPDžXDžhHpH LHLHDžxDžLDžHDžLDžH艃F5DfE)H=$P)L))H1MH5PHH)H`HhINLHHp_)H@HHHHGHHHpIwLdPL%@LLLFIHLHHEHHHMNLLLHLDLLLHHL L(L|@H0H5u>L8Lu>L@L [@HHHc@LPL-k@HDž HHHHHLHXH 8@H`H=:@HH=t>LpMcHLHHHhDžxLDžDžDžLDžDžLDžDžDž H MH @H5s>HHqLHIL9tHIFH9tL@H`MGHDžHMUHHLHL@ƅPH`HDžhƅp&IMXLpHCLLIq0H=6z>ECDPHHpHDLMaHDžxDDžDžMH5y>HH@H=HLH讌HH9t~fH=|>L)0L))Z1MLH5c|>H~HLI@HL9t/~HƅHHAHHDžu AtHH5|>IHIwHDžL H(HH@L`HLLƅHDž(ƅ0HDžHƅPHDžhƅpHDžƅHDžƅH~L IHHLILIL IL H@L`LL'L H@HDž(LPIHHHL ƅ0H@HDžHƅPqHHH@HH9SLL@MH HILL L-|>LHDL#H LAT$HLHDžLDžLLLH@H|HHHP:HINH9tk{AD$H=|>DLLH5|>H{HHHH9HMVL9{HH9H`ƅpHpHH`HDžhLHL@LM9LH5n@L LL%1I0LHLHH H5{2HHL*ƅHHHDž^tH5$2H^HEEHHDžHHDžLLHH=H{>HDHHL`LLDžcMH5{>HH@HyHHHAHH9t0yIH8DžH`hL HIDžHIPjHLH`HIDž` hHH@DžHHPDjHH9MWHxEmI$IJMH0LAXDILHDžDžGMH5y>LH@HwHHHp5HIVH9t wHHHH9~vH L L9mHLDHDžHL HHL@H`LIHHHLILIHHHHHƅLHDžƅHHDžƅL HDž(ƅ0L@HDžHƅPH`HDžhƅpHHDžƅE HL1LLH @I L@LL%/@HLHH LL@HM,HW AuLoH= >HHDžLDžMH5ӄ>LH@H6uHHH3HIFH9ttL@HH=>LMMiEBHHDžD L0Dž8 MH5^>LH@HtHHHw2HIvH9tsH@L@MS MkHH=>BL@HDžHPL`DžhMH5V>LH@HsHHH1HMFL9tBsH@HpHW LoL H=9>AqHpHDžxLDžMH5>LH@HPsHHH61HIFH9trL`L@L,MOMI L MIqACLIARDNI{PIHLHH=>L@HPHDžDL Dž(L0Dž8DžHDžXLLH5">LH@H%rHHH 0HMNL9tvqH@H`LIp@ILLLHDHA{H DRHHH=B>H0HDžDDLDžH Dž(Dž8LH5>LH@H&qHHH /HINH9twpH@L`L@M]HIp@LEmH=܂>ASH EJH@`DpMhHHDžHDPLDžHDžDžMH5a>LH@H4pHHH.HM^L9oHH;HLL@HDžI\$ LMl$H=~>HDž HMH@H5~>HH soHAHDžLKƅLuA$ILH5ۆ>H-HR@Ld@H5v@H @H~L@L@LD~L-@H=bKHD~HD~DLDD~L X@LD D~HL@LDD~H<@HDD~L*@DH5.@H ;@)DPD)D)D)`D)D)@D)D)@LD~H~H~LDH~H~Hp~D))`))))|L L@Dž AL~L)pHH@DHL@~H5@HH @L@L @L-@H=@L @LD~H@HH @D~L @HDHD~H5o@LDD~H A@LDD~L@LDhD~L@HDXD~L-@D) H=@D)D)D)pD)@D)D)DxLL Y@D~HH<@~HD`~H @L~L@H(~H ~L~L~LB.LD)D))P) ))))`D~MLH~HDD~LD~HD~HDHD~LDD~D)0D)DD)D)D)pD)@D)D)IwHHHL0HMH5>LHXILLLLP'LLHܥ>L,,L8H@L@LAQL@HL`L`AUHHPHHPAPLASLARLWHpAQLPH@APLASLARLWHAQLPATLpATL PHAPLASLARLWHAQLpATL@PAPLASARWLAQLATL,HMF LHH H)HHHLLLDžHDžDžLDžLDžQMH5>LH @HeHHH@#HMnL9teHHH@H(y#HIL9tdHHH9tdH HHH9tdLHIL9tdLH`IL9t{dHH@HH9t_dHH HH9tCdHHHH9t'dHHHH9t dLHIL9tcLpH`IL9tcLHH@IL9tcLPH IL9tcL HIL9tcLHIL9tccHH`HH9tGcLH@IL9t+cL H IL9tcH(HHH9tbHHHH9tbHH`HH9tbHHH@HH9tbLH IL9tbLHIL9tgbLHIL9tKbLHIL9t/bLHIL9tbLHIL9taHH`HH9taLH@IL9taLH IL9taHH@HH9taHH HH9tkaHHHH9tOaHHHH9t3aHHt"aH`HtaH@HtaL0HIL9t`LHIL9t`LHIL9t`LHIL9t`LH`IL9tt`L8H@IL9tX`HhH HH9t<`LXHIL9t `LHIL9t`HxHHH9t_H`HHH9t_HHHH9t_HH`HH9t_LH@IL9tx_LH IL9t\_LHIL9t@_LHIL9t$_LHIL9t_LHIL9t^HHHH9t^LPH`IL9t^LXH@IL9t^H`H HH9t|^HhHHH9t`^HpHHH9tD^HxHHH9t(^LHIL9t ^LHIL9t]LH`IL9t]L@H@IL9t]L(HIL9]鳻HH9W f.H L L9HH9>GGPcIH(L9H(LAP#H5HAE]HLH=^>HH L`HDžHHDLDžܺMH5^>HH@H\HHHcjHH9AxHL@HDžHJ LbLH=">HHDžۺMH5~">HH@HY\HHHiHH9t[IGL@ADEAH`HL \@AXL@LFPL*JHv@L%}@EULnH=#>LHDžDLDžLDžH Dž(L0Dž8ںMH5#>LH@H1[HHHxHIVH9tZILG1uHH5s3?DAE{VL@ƅPLIL@HDžHIL$LHH=;>MY MaDAHH LDHDžDž(ٺMH5:>HH@HYHHHkgHH9fDH=qL>) H))ٺH1IH5=L>HHYcHH57qPHHH5qPLHaMHHLHIL$ Ml$AQHH=W>HHDžDžbغMH5V>HH@HXHHH@fHH9MgH=@HSMl$LH=->IJ H@AUMbHLHDžHDž׺MH5->LH@HXHpLIreHL9taWMGHHHHF LfMHEYHH=R.>HHDžDDžֺMH5 .>HH@HcWHXHHdHH9tVMg EH8H587@;tL@ƅPLIL@HDžHMT$ 5bH1H}H(L(H L &@Dž AL~H)pE1L LHAM_II{bIWHZD9H{HS H)HL9JL HAHHLRH51L9HIuH9t U bH5|w2LDH(H HL*HIFH9&T{L HHDž(IK McDžH0H=S>LH H@WԺMH5S>LH@HTHLI5bHL9t$TH H5S>QMWHPHH=S>HV LfMBLEHHPHDžXD`HpDžxӺMH5S>LH@HTHLIaHL9toSHH5T>IHIڽIwLHz@H=F>I] LNHMuLHDžEQH Dž(DҺMH5>LH@HISH(LI`HL9[RQHH5'I7霷H8H5(7YHH5|27IwLL@Ly@AIJPHs@MHFAQL f@D`EkPL_@H=">H@D`MbLHDžHDpHDžDžLDžLDžfѺMH5!>LH@HQHHHhHIvH9$QH8H5Ċ75rD 7 H@ƅPHHH@HDžHMD$HL`H=@HLM\$@L @EHHMd$HHH=6>HLLHL`HDžhDpHHDžLDžDžϺMH5g6>LH @HZPHLI]HL9 H5b>H HL÷H`LRHH@ۻHHH9EOMH(LA@LLHH=(>HDžIs MkDHLHDžκMH5?(>LH@H:OLLI\HL9fH=K >L)L@))Sκ1MLH5 >HNHpLI9\H@L9t(NfH= >L)H`))ͺ1MHH5>H^NHXHH[H`H9MWLHH=u@>MY MiIrDFHLDHDžDžNͺHMH@H5@>HHMEHELH=P@MC@HU@H`Ht@H=>LD0LMkHpHDžD Dž@HPDžXDžhDžx̺MH5>LH@HLL`IOHL-@Hz@HqIEBDNDXHH=+>HHA@DHHZLLHDžDDDžDžDž˺IH5>LH@H*LHHxLH HHH MVHpLHH9WHLHLLXHxLH0LH@@%YHIFH9tKHHH9tJHIL9tJHIL9KKL`sHH=dr@HP@HƁ@MEhL%Ɓ@EYH0H=*>HD LhHDžDDž8H@DžHLPDžXʺMH5>LH@HJHHHxvHMVL9tIIOHY]H5Ew>H-IGH0L]q@HO LwHPH= >H0LHDž8DZLPDžXD@QɺMH5 >LH@HIH(LI/WHL9yϨMGL`H= >MQ L%p@MpMiL`H HDžhAvLDžpȺMH5* >HH@HIH(HHVH H9*M+AzHHHDžLP LhDžH=!$>LHLȺMH5#>LH@HxHHLIUHL9((AXHL mo@HDžHp H=X>LHL`LDžjǺMH5 >LH@HGHLIHUHL9t7GM_MC:IT$LPLn@IM LMeDRH=E>HPHLpHDžXD`DžxƺMH5>HH@H(GHpHHTHH9tFMOHHLHx LhMYAsHH=>HHDžDžƺMH5>LH@HFHXLISHL9 HH=11KH8H5s7{*!MD$HL@H=>M\$ Ml$EHH H`L@HDžHDPDžhEźMH5C>HH@HEHHH#SH H9tEMgwoP)It$HLHHP Lh~HHDž H=t>L0Dž8ĺMH5T>HH@HDHHHlRHH9t[DMg鳹LH=p11AJLH=_110JLH=N11JHH==11JII!I"I!I!I#I#I#I#I#I#I$I$I0$I I<$I!IJ$I!I"I I_ Ir$I$I$I%I%I^"Ir"I"%I~"I0%IIII6%I_%I)I!I!I!I!II:"I'%IIJ%I%I&I&Ix%I&I%I&I&I&I$I${I$I'I?%Ia$III II&I4Ip#UHAWAVL LAULATISHHH!HHHHHH HHHHH@HL`HLHLHLH@HH`HHHH HHHLILILIH@HL`LLL LL@HDžƅHDžƅHDžƅHDž(ƅ0HDžHƅPHDžhƅpHDžƅHDžƅLIL ILILpIHhHH`HHXHHhHH`HLL`LLLLHDžƅHDžƅHDžƅL HDž(ƅ0H@HDžHƅPH`HDžhƅpHHDžƅHHDžƅHHHH#LIL(ILILILILIHDžƅHDžƅLHDžƅL HDž(ƅ0L@HDžHƅPL`HDžhƅpLHDžƅL>A0;fo@@"*fo @fDx HHHHHHDž"HDž"H=fo;@foS@HHH H@HHound = 0L`LHHHHHLHHLLILIH@LHHDž)XHP @(;HDž)@)HHDžƅHHDžƅH HDž(ƅ0HDžHƅPL`HDžhƅpLHDžM,$LILxIƅLHDžƅLHDžƅDžLDžPDžTDžXDž\AUM|$HtHI|HƅtIT$HJHH=i@E1E1H(HLGODžpHDžxHDžHDžHDžHDžƅDžH HXLP)EGCHLAILGD9I|$IT$ H)HI9)XJL(L HLAQLH5H/"HAH; t:ElLLHLARLH5\2Hu {PM^L9t9H HLQLH5\2XHu {P7IvH9tr9HHPHHHRHH5mLHLAPLH5HIFH9t9LHPIL9t8DE&LH HHHASHH5lHH HH9t86{PLGMh LHHAA5At@AHEHIL9#67HfDSHDTbfHHPHH9t7sP8&HHu&DžLHL@LHLDžH8twHLDžcH0HHHHLARHHH5Y2LHHIL9tH6HSHHHhL31HAX\fDHH5X2H"&HHLHAHLKL9t>6H5X2H%HHLHApHLSL9t5L[LF6@ALHfo%.R3HIed_storeHLhH HDžHDžHLsL9tx5H5W2H%HHLHAHL{L9t55H5W2H$HhHpLHAgHHCH9t4H5yW2H$HXH`LHA$HHSH9t4E$IL$HqD E)8M<$1LAII$1LHPIPPH(H{HH0HHPHr"IT$LLH=(H4HIvPE$L=[@LBE$HH4Hfl@LEHLMFLHH5Qx>HH@HLHlHDžDDDLDžHDžDžDž3HMEH@HL9ALLIL91KHLP~LH@HH!KHLHDžIHL9t~2It$HLf@D\HP0LLHNH5_y>yH?H@L@L@LHDžD L0Dž8DžHh2HMNH HL9GL(LIL9-JHH0D~LH DD(HJHHHDžIHL9t<1HHCH9t'1HDžHLLHu2fDHHRHtDj EyHRHuL9t Dp E~$HHhHHhHǸ#L@0LHLH(M$A@M$LAID$HHDžHƅHDžƅHxHHH(HHHL/AI|$HL7AIIT$IƾHzHH(IPHDPPHHIHP3MD$H0HpII~Lj@L5s;MHLLBHs;EQL0LHXH5>H`H @HhLHDž8D@LPLpDžxHDžLDž>/HMEHHL9:LLIL9EHLD~LHDDHpEHLHDžIHL9t.LfE1ɺ-LH5;LD)D)D)Q.HINHHH99L(HIL9UDHLD~HHDDHEDHLHDžIHL9t%-I|$HDOHLpMZ MBH@LH5a>LpHDžxDLDž:-HHH HHsH9t,Mt$I~HI|$HOLHH5ы>IP M@DiHSH@HDžDLDž,HHHmHLKL9t+I|$LH HDžMZH@LLvHHLƅHL HDž(ƅ0HxH@HDžHƅPe,HHHPHމHHņML$HpMLPLIH0L`IyL5 o;M@DWHPLH@HxH5>HDžXD`LpLDžLDž*H`IEHHhH9@LLpIL9BHLD~LHDDHAH`LpHDžhIH`L9t)HHrI|$H%LhHHwLH0DFLLH5>HLH@DL@LHDžLLDžDž)HMVH HL9?LLIL9AHH0~LH (H@HHHDžIHL9t(I|$HLLH L@H@HwLDnH5>LHDžDLDž(HMVH@HL9>LxLIL9s?HHP~LH@HHc?HHHDžIHL9tt'H ƅ0HHH HDž(It$HLn='=u 'LE]HIH H5>HDžHM@H@DLDž<'HHH"HHSH9t&HHHDžLHHXHLL HPHHH@HH5R5LHIH@HL8IL0IƅHDžƅLHDžƅHHDžƅLHDžƅL HDž(ƅ0H! MD$ D AMHE D?L(H=+8A$L7EYLEHHDžX HLIM@LH@HPLHHD`HLHpHxHHLLLLLHLHLHHHH Z@LL5Z@LLLZ@HLH0H N@H H@LL-Y@HHL(HHjX@LL A_@HH=L_@HHM@HH5aN@L@LLLL@L Dž(Dž8DžHLLPDžXLL`DžhHHpDžxLLDžHLHH=HHH5>HHH@DžLLDžDž Dž Dž L"HIHHL9 ,LXLIL90HH~LHH0HHHHDžHHH9t!Lf1ɺ(LH5>L)))L!HIHHL9=*LPHIL9.HLD~HHDDH.HLHHDžHHH9t ML$Mi> H(H50>+H(A11H ;>.L[HPLL0I9)LHHHL@HLH@Hw0HLLGLHH@LH@H@EUHHL-[@HHHDžDLL Dž(L0Dž8LHIHHL9(HHLHH9|-HLD~LHDDHl-HLHHDžHHH9tHHCH9tL(HPIL9tI|$L@DLHG@IK0HH5A>LoLPEuH@H@D`MCDPLHLfHDžHLpDžxDžLgHIHHL9e'HhLHH9J*HLD~LHDDH:*HLHHDžHHH9t4I|$DTLHX@IR0H5W>H@LHLGHEhDMBLHLHDžDLDžHDžLHIHHL9d'L`LIL99)HHD~LHDDH))HHLHDžHIL9tH1HH H5ppHwMl$HW@H=V@LXLBO@MuHEIK@L`W@LENL HH @H5>HLLMCL@HDžDLDžDžL0LDžLYH IHH(L9o%H@L0HH9 (HL~LHH'H L0HHDž(H HH9t)HHsH9tH1HLA H5nHL-EU@LMt$L>U@MEAMvA$7/Au HH5Pk>H HH(H'>BE^HL L@L0HVP\H8HL(L U@LPLLFLHPL@HXL0H@HDžD LXL`DžhLpDžxDžLDžLH@IH HHL9"H0LPHH9,&HpH0~pLpH p(H&H@HPHHDžHH@HH9tL(HPIL9tLHIL9tHLKL9tlMl$pDpMuDt 0H(H5j/PH(H>HHH@LHLHIM@AFLH8L`H@LHHHH @H0LLHMEHDž LPDžXL`DžhLpDžxH`M^HHhL9> H8HpHH93#H L~ H H H##H`LpHDžhIVH`H9tHLSL9tL(HPIL9tfHH55H MT$.L :Q@H=I@@D~D~LH@@L,Q@L~H0Q@H FQ@H~H5>Q@LD~ LD~DxHDD~DHDxD~HP@HD0D~L P@D8H=P@LP@)PLP@H?@) D)H P@H5P@D)D)D)`D)0D)D@~~HHP@D~L(~HDH~L <@LP~H=<@LX~LMP@H~LGP@HQP@D)D))p)@))))`)@HH P@~HH5P@D~HD~H=@LDD~L H@HDD~H==@LD`D~L=@LDhD~L:@HDD~HpH@D) DD)D)HH {:@D)D)D)D)`D)`D~HH5.:@~HD~H9@L~H~H=hKL~L~H~D)@))))))`)H~HHD~H1D~)DDD)`D)@M H IL(MRLL(ILLLA LH5dL=>@HPHFM@D~HL\D~HXHLTD~LLLJ@D~HJ@LEH0D~L DLD~~LMD$DHDHD)D)DLD)L(DLD)`D)DD)@)A$t HH5&P u pH0H5 >H u p HH5ƛ>HLA A  !%LH5%PLCHHe>LmHƅ0= = $LH5%PLHLH5:>HƅHA-311H >HHPHqH HLI9iLLPLLXLPH LLpLHH>H@@iLLPHLLLHH'>L7LPHLLLH>LLLLL@HLH>LLL8HLLjLLH >LLPH APHLPLL`L0HWHAQLARL@H ASLHAPLHPHWH`AQL@ARLASLAPLPHAVL`AVLWH`AQLARLASL`APL@PH AVLWHAQLARLASLAPL@PAVLWHAQL`ARASHLC LHHPH/ HIL9t H8HHH9t HMmL9t H@HHH9t HHHH9t HPIL9tp LHHIL9tT LPH@IL9t8 HpHPHH9t L HIL9t LHIL9ttHLL9tHHHH9t0tHLL9tHHHH9tjLH0IL9tNHHHH9t2H(HPHH9tHHH|HIL9tL HIL9tLH@IL9tL0H IL9tH8HHH9twL@HIL9t[LHHIL9t?LPHIL9t#HXHHH9tLH IL9tHxH@HH9tLH IL9tHHHH9tH(HHH9t{LHIL9t_LxHIL9tCLHIL9t'HHHH9t LH`IL9tLH@IL9tLH IL9tHHHH9tLHIL9tHHHH9tcLHIL9tGHHHH9t+HH`HH9tLH@IL9tL(H IL9tLHIL9tHHHH9tL`HIL9tLhHIL9tgLXHIL9tKH`H`HH9t/LhH@IL9tHpH HH9tLHIL9tH HHH9tHHHH9tLHIL9tLHIL9tkLH`IL9tOHH@HH9t3LH IL9tLHIL9tLHIL9tHHHH9tHe[A\A]A^A_]@DžLHHMu^fDLM@MtEX EyM@MuH9t5H .H@01Hx(L7APPfLH`HHL`HH5fPHLAL D0L@DžHHHH蛽tfDHHHhH1HxXnLoHLH@LJ H5;LEELHDžDLB9L Dž(HLIg HL9tVI|$H0LHF LFH@LWH59;LEZH0HDž8D@LPDžXkHLI HL9tIL$L`LMq H5;LLAH@APMAL`HDžhpvLDžHxLIJ HL9t9MT$H HDž(ƅ0MZHHA$H As*LH=Lg>IP MpHDžHL@LDž|MH5g>LH@HHLIu H@L9`H52HHH LHA芹HLKL9tLD\L H@MZ MBmLL5c0@H50D>LHDžD LL0Dž8"H(LI H L9t~HH5}5HXID$LpHPH5D>L8H(LLH5G>LAŁ AE A$LPtH5L>L^H0HL>LHp聾ƅA$LtH5PL H@LH5P>HxHxHH5N>HLHH.Q>LLPHHpLHHHItHLHcV>HH@I衽HHLH4LHHBLgH(LHAVLLLKEIp@LL4@HM@HH @HLL`DLL= @HDžLLDžLDžL Dž($HLIH`L9tHHCH9tkHIL9tVHHHH9t:L@HIL9tHHHHH9tLPHIL9tHHHH9tLxH@IL9tHLL9tLpH0IL9tmHPH`H9tUHHHH9t9L(HPIL9tHXHHH9DHtH HHHHHtH:HHHHDoHD)4DHtHVHH LpHDžHL`LDžmtMH5_>LH@HHLIKH`L96HtH HHHHHtHHHHH  ?HH5>HD~LHDDHH~HHD~LHDDHH~HH ~ H H I~H`DH~LHHHH fDH~HHHHH8fDHp~pLpH p(HHH@fDHD~LHDDHHzHH~LHLIyHifDHtHfHH@HHHN1HLA LADPHM^DIADHL9tI|$sHL@@LP@L@HHOH=մKH0DADJHHHuzNH0H=00>DH8H@HLHDžDL Dž(Dž8DžHoLH5/>LH@HHHHH.HMFL9tID$HH5*@L *@LE΋SHLLXH~`HpECAJLL0L@HH=f/>L8DL*@H 3HVL(L0H@H0HDžLDžLDžL Dž(Dž8DžHynL0H5.>LH @HHHH̬HIvH9t7I|$HHGH0W HH50>HHH51>mHHY?LDZpH@LPL0H8IH@M@D[H(EQHHHHPH@HHHDžXD`DpDžDžHDžHHHIL9tLHPIL9tLHIL9tLHHA@LHHAhHH2HLHHpIL9VޱHHA̱H56>L'HHHh頱HHIvHHPHGH8HHLH@Ip MpHDžHH=;HHLL`HDž_kLH5;LH @HHLI9H`L9t(HHHPDHLHXIJMZ0HDžHH="];LHHLDDžDž~jLH5\;LH@HHLIXHL9tGHHtH=HH H(H頸HtHpHH H(HHtHHhHHH`鋿HtHTHH@HHHHD~HHDDI~H鹻HD~LHDDI}H鎺LpH0IL9NNLH5ux>L=ULH5@L"H~LH@HI~HHD~LHDDI}H`H~LH (I~HH~LH@HI}HݴH~LH (I~H AVH@L@HDžHHN H=/>L`LvPL@H@DžhfMH5/>LH@H>HXLIH@L9tML$HPH5/>H(MqM9$AH(H59q> 6HˤMZHH=r>HH HpECHHDHDžLDžeLHH@H5q>HHDH HHHHH9tMT$QAQHPH=R>HDžXHN LvLpHPL``Džx,eMH5:R>LH@HHLI H`L9tID$LH麿H5L5>L)H50:>LxjHH5%>`DDHHDDHHqDDHH0H(Hp@7HhHZP@7HHH }DDHH@7HHLxLDžIH81L7AHHIHHDžP誽HHL0H8L0D8DH}LHxHAhD[PZHH@7HH@7HH HH@]DD7HH@pHhHHH H0H50>HpEH@H54>HxLH=9P11 IǮHȮHBȮIǮHR̮HgǮH'ǮHǮHǮHaǮHƮHǮHDȮH:̮HǮHC̮H[̮HǮoHˮjHήHͮH>̮HR̮HˮHˮHHͮH$ͮI(ƮI ƮIƮIƮIƮHjϮHϮIϮIϮHήI:ЮIЮIGЮHήIŮḪH_̮HB̮ḪHˮHˮHˮHˮHЮIϮI ЮH_ήḪḪH~̮HK̮IϮH ήHϮIϮI!ϮHkƮḪḪḪIĮH[ǮHoǮfUHAWIAVLAULATLSHH+HHHHH(HHH8HHH0L HH L@HL`HLHHH H@HH`HHHHLILILIHHL LL@LL`LHDžƅHDžƅHDžƅHDžƅHDžƅHDž(ƅ0HDžHƅPHDžhƅpLIL8IL0ILIHHHHHHHHHHLL LL@LL`LLHHH HH@HH`HHDžƅHDžƅHDžƅHDžƅHDžƅHDž(ƅ0HDžHƅPHDžhƅpHH H@HL(ILPIHH@LL`LLLXILILILPILILLL LL@LHDžƅHDžƅHDžƅHDžƅHDžƅHDž(ƅ0HDžHƅPL`HDžhƅpLHDžHHHH@HHHHHHHHHL0IL(IH H5r>H@HƅHHDžƅHHDžƅHHDžƅHHDžƅHDž(ƅ0HDžHƅPL`HDžhƅpLHDžƅLpILhIL`ILHDžƅLHDžƅLHDžƅH H H5E>HI_fHDžHL@ƅPL`HƅpHHƅL`L@ƅLHDžhHDžHDžHDžƅHs1LIDLIHHHHHHL@L0L`HHHDžDžDžDžDžDžDžDX)HDž) HDž0)@HDžP)`HDžpLLHLlB9MwIW L)HH9`I4LH0LASLH5+HML$AL9t/׫EuH0HHtH1HD@PA ATL0AJP?uFKHLbLHL)HRFH H(H)HHH@LHI)IPL`HhL)HRLL @E1HDžM^H=PaOHDžHDžHDžPHDžHHDžHDžxDžDžLLxHpQDCP=='==V<=HEPHPDIL$@D9MGIW L)HL9]KLH HQLH5/!ĹHAH;tԫEKHL0HLPLH5i1聹H0u {PyIuH9tԫHHLRLH51@H0u {Pa;MUL9tZԫLHHHHASHH5(츻LHIL9t ԫ{P&=HHu&Dž0LHL@LHLDž0ʭH8HLDž0觭H0HHHhLASHhH51LhHIL9thӫhu*HLDž04Lx@L(H1HD@HDL+AHtH1HHP ?LHHAh&fD{Hx Hx1HPHHIL9ҫfLHHHHAPHH5%袶HHHH9tѫ@9H3{PLhn:DEKHHA,@DkHDHL0HDžHHHx @HMOIy;H9ILWIZIR H)HH9zYL,LM]LLASLH5(s1脵HH;xtЫuIELE1IVH9tЫILV;D9MEIU L)HL9pXKLH HQLH51H0u{PuIvH9tЫH1HH1HxPt0tHZLH`HAhAL HpHAh%LHhHAhMMLA=LLHHDžIVLHILHƅLHDžƅHteLH01HA@H5#H観H @HLH%@AHE1苡H0HH9tΫHHtiL.H01HA@H5;#H5H  @L@HHHAIE1H0HH9t1ΫHH5å>HǽI_LpDH< @Iq@L LLCL%: @H* @LLAHHpMAHHHH @DL5=?HDžxLDžHDžLDžͫH IHH(L9yEHL0HH9KHL~LHHKH L0HHDž(H HH9t̫MOLL @IR@MBH @LIqDnHHHHDžDL@LLL Dž(H0Dž8L@DžHLxe̫H@IH HHL9CHLPHH9LHL0~LH (HLH@LPLxHDžHH@IL9t5˫IWLPL @Mh@HLM@HBHDXLPL`pLH @HDžXD`LLDžHDžLDžLpʫH`IHHhL9;BHLpHH9;KHL~LHH+KH`LpHpHDžhH`HH9tɫMGLL?Mj@HHLxIHMBDILLH @LHDžDLLDžHDžL Dž(LhɫHIHHL9@HLHH9IHLD~LHDDHIHLHhHDžHHH9tfȫMWL0L @ME@HHLpIBDXHHL0HMEPH @HDž8D@L`LpDžxDžLDžH`0ȫHHH@HH9>HLHH9GHLPD~LH@DDHHGHLH`HDžHHH9tƫH0H5d1H藶H0HLHA(H0LkL9tƫH5!1HTHHLHAH0LCL9tpƫH51HH(HLHA袃H0HKH9t-ƫH51HεH HLHA_H0LKL9tūH5q1H苵HHLHAH0LcL9tūH5.1HHHHLHAقH0LSL9tdūA:I1LM'I1LA$HIP HSHH0H0HPHOMGL8HH3AH0HxPL%_?MHEL3EQLLHLHH59 >H@H@lLPL@HDžDDL Dž(L0Dž8DžHDžXīHMMHHL9?GHXLHH9GHLD~LHDDHGHLHDžIHL9tjëIwL@DL?Mh0M@H@L LfH5E >AT$LL@LD`P?HDžHLpDžxLDžSëHIL$HHH9EHPLHH9FHLD~LHDDHFHLHDžIHL9t&«H0HSH9t«M/H8LA@MLAMgL@HDžHƅPI|$LxIL@HIOHyL/AM_IIԾI{HIPHHD0HHIHPMGL LHpIMMK@HJ;IxIUMCL-@;DWLL`HLH53>HH @HLHDžDLDžHDžLDžH`MD$H@HhL9:HxLpHH9CHLP~LH@HHCH`LpHDžhIH`L9tÿIWHzDOHHLh L@H@HH5>LHDžDL Dž(ٿH8H0Hx}H0LcL9t*LMWHDžMEL8ALƅIJDY .H0LH@HDž8LJ LBL&H5>L0D@LPDžXLLIxHL9tgHLHDžfL L@HHH`LLIHHLXILxHIHpHLhIH`HHHL LH`1HH`HH5Φ>HƅLHDžƅHDž(ƅ0L@HDžHƅPHDžhƅpLHDžƅHDžƅHDžƅHHHHDžƅ))0)H#fHP1ɺ:LH5{>))0)H⼫X'+H5OHX/+LH5oOLӫAHL%1LEX*H`H52OH@蒫MWHLHLHHIJHL`DYHhHLHHLDHL@H LL L(LLHLHL0L8L ?H@H ?LHL?HDž HHLHLL V?LH0HPH=U?L8LXL>?H`H ?LhL?HpHE?LxL%?LXLLFH5w>H`HHHH @LDžDžHDžDžDžLDžDžLLDžHLLHL*DžDž L Dž( LѹHIHHL91HLHH9;HL~LHH;HLLHDžHIL9t衸H@H`HH9t腸HMML9tpH0LcL9t[ILL Ir LH@LGLLA@HMBH5s>HDžLDždH IHH(L90LH0IL95:HL~HHH%:H L0HHDž(H HH9t4IHMHN HLFLWH5 >EbHH@HDžDL@LLDžLL LMCH@HDžDLDžDž(L浫H`IH`HhL9\/HLpHH907HHpD~LH`DDhH 7H`HpLHDžhH`IL9t賴IL0H x?Mb0HH5I>wLOLEAL0LHpLH@D@MBHDž8PL`DžhDžxL萴HIHHL9-LLIL95HLD~LHDDH5HLLHDžHIL9t]H1HH H5HL%?IOH=?LIr@HpwKLhLYL LEH @HEAASL@L%?LLpLHLH5>D MB0OHDžHPDžXL`DžhDžxL۲HIHHL9+L@HIL93HLD~HHDDH3HLHHDžHHH9t許H0LSL9t蓱HH1HH H55HL%?(IOH5?HLG@HLYLELHH5>HHH @EKLLGHljLL%,?HDžDLDžLDžLDž HHHH`HHH9)LpLIL90HLp~LH`hH|0HLLHHDžHIL9t鯫H0HCH9tԯHP1HH H5vHpMOH=H?L?HHMAIELV@HAPH LFHHPH5>H @LHDžL0Dž8L@DžHDžXHPlLPHHHIL9%LhLIL9.HL~LHH.HLHPHDžHHH9t5H0HKH9t IHHH@Hr0HLOLHHEAESHH5.>HDžDLBDLDžHDžHHHHHH9V$L`LIL9,HL~LHH,HLHHDžHHH9tάIGDLH5>MK0LHxOLL DLMCH@LHDžLDžDžL蹬H IHH(L9$HL0HH9c+HPH~PLPHPHS+H H0LHDž(H IL9t艫H5:>L*IXLOLEQE`MDpL@H`H5>LHx@HXLLHL@H`LLL@HH @HDžhDLDžLDžDž)HLI薸H@L9t腪HIUH9tpHHPHH9tTLH`IL9t8D~XD8D)`HH5HO诙H?XHD~DD)PhH5OLlL ?L ?HLXH ?D~XL%?LXH?H5?L?L?H?H=?DXLXL ?MD~XHXLH e?D~XLXLDpD)@D~XHXDD~XH+?HXD~XH5?LXD`~XLx?LXh~XLr?pD)PxD)`D)D)`)))D~`HXH?~XHXDx~XH=w?LXX~XL i?HX~XH o?LXLF?))0XHX~XHU?LXL%4?))PXHXD~XH53?LXL?~XLXL?~XLXH~XL?HX~XH?HXP~XH=?LX@D~XL ?LXD~XL?HXDD~XH ?D)`D)0)))D)`D)@D) LXL%e?D~XHXH??D~XHXDD~XLXDD~XLXDXD~XHXD~XHXD~XH=?LX~XLD) D)D)D)D))`)@) LXL~XHXIwH "?~XLXL~XHXH~X()L0)D~ 8))`LL L@IH~HL(HFLPH5?LLLHL`HHLL )DD)HH@D~D~LLD~LHL0D~@DLLD~DARLASLDHD H`D)DD)PH`AVL@D)`H@HD) D)hWHpxAQLAPL`QH ATLRHAWLARASPAVPHWHAQAPQATLRAW`LpHxHLhYH52LC LI HĠMH8J4肠HIL9tퟫHHHH9tџHHH7^HIL9t袟LHIL9t膟LHIL9tjH`HHH9tNLhHIL9t2LpH`IL9tLxH@IL9tHXH HH9tޞLHIL9tžHHHH9t覞L8HIL9t芞HxH@HH9tnLHIL9tRHHHHH9t6LHIL9tH`Ht H@HtH Ht睫HHt֝LHIL9t躝HHHH9t螝LHIL9t肝LH`IL9tfLH@IL9tJHH HH9t.L HIL9tH`HHH9tLhHIL9tڜHpHHH9t辜L(HIL9t袜H0H`HH9t膜LH@IL9tjLH IL9tNHHHH9t2LHIL9tL@HIL9tLHHIL9tޛHHHH9t›LPH`IL9t覛HH@HH9t芛LH IL9tnHXHHH9tRLPHIL9t6H(HHH9tL@HIL9tLHIL9t⚫HH`HH9tƚLH@IL9t誚LH IL9t莚LHIL9trHHHH9tVL0HIL9t:H8HHH9tLHIL9tHH`HH9t晫LH@IL9tʙHH HH9t讙LHIL9t蒙L HIL9tvH(HHH9tZL0HIL9t>L8HIL9t"He[A\A]A^A_]HMML9tDž0LHHMu1LMRMtEB EyMRMuH9tp ~HHHL蹋Hx@0HX("HHHHHPHH5?}HHHH9t#u%HlHPHhLL`HLARLH5?I|H`L9t趗LLHLASLH51IA|HL9tj DKPAAHEHDEXHHAH HH@SHH;LH/H1HpH߉L+AHtH1HxP ,LHHAhHHI}HLH菄~HHHL_HLbH HD0L`HH0L@LHDž(H H5]>H@HPiD@DžXL`DžhHLI}H`L9tlIwHL@L%?HIL^H>H5?DOECH=?H@HpHY OH ?DPLL?D`LHxH?LL%W?HH5?HHLMBHPHDžHDžLLDžLDžDžLDžHXHDžH H@HHH0HH@H@HDž(Dž8DžHTH8H0H:RH0LSL9t襓M_HHPHLI{M Lm?OEAHPH=A?HHL ;?pHPHLLXD`L?LLHHLL@HH@HHDžXDžLDžLDžDžDžL Dž(H0LHL@HDž8HL@DžHLPDžX貒H8H0HPH0HCH9tLHL)H$HLML$%LHQI9 HH9mMfo=?fDo?A@ ^= 1A@$;A8E@LMT$%LCD#%H@HHH`LGH@HL`LHPHXLKHL0HZH`HhLMeLHL/H`LH@&Hw LGLHDžhH`H5w>DpLDžH8LIiHL9H(H;0LH(阸I;H0Dž0HHǸMjH81L7AIHHIԉ@HxDž0HǸjH81L/APIHHHHzDž0HǸiH81HHHHHHyDžHǸiH81HHEO0LEFD^DpH`H5?AzHDpL?DL ?L?DL%?DL?DL-?H=`>H?H?H`H LPH`DLpLLL@HDžh DžLDžDž(H0Dž8DžHDžXDžhLpDžxLDž MH5_>LH@H%HHLI蒛HL9}H?H0Dž0HHǸgH81L/AH HIIԉ@HyDž0HǸVgH81HPIHH HHzDž0HǸgH81HL `HHHIyDžHǸfH81HHE_0LLEF~HH5@?IErDLA?L?DL?DL%?H=?DL-*?H? H?HPLHHDMqL0L LpHDž Dž8L@DžHDžXH`DžhDžxDžDžHH=^>DžLDž MH5^>LH@HqH@LIޘH L9gɊ]HLuJH571HQzH0H8LHAGH0HCH9tmLHݾ?HDžI{ H MkHH==LHDž MH5\=LH@HoHPLIܗHL9tˉMGHH5NKHx0LhIMHL DQEYHH=b>HHDžDDDžLDž= MH5cb>LH@H讉H@LIH L9HtH⇫HHHHHtHI詇HHHH5HtH-pHH@HHH4HtH7HHHH钿HtHHhHHH`HtH}ņHHH H(H@QHtHa茆H(HHH 鲺HtHFSH(HHH HtH*HHHH:HtH ᅫHHH@HHH@HtH 訅H(HHH 5HtH oHH`HhHGHtH 6HHHHOHtH{ HHHHaHtH_ ĄHhH`HhH`HHAMHtH yHhH@HHH`~H9L0Dž0LHǸ_H81H`HLIH@HzDž0HǸC_H81L'A$L@IIHI{DžHǸ^H81H0A}L`L ?AvDPIEGH?Li?DHN?H=Y>L5a?MmHc?L%B?H`DpHH@HHDžhDLDžDžDžLDžL Dž(L0Dž8H@DžHMH5X>HH@HH0HH]H@H9HI8L0Dž0LHǸ`]H81L'A$H``IHH~LDž0HǸ ]H81HL`IIHIzDžHǸ\H81H0A~H5?Lu?EEHLPE_MH}?DH.?H=X>L5A?MmH?L%"?DpHHH`HLPHDžXD`DžDžDžLDžLDžL Dž(H0Dž8_MH5W>HH@HЁH(HH=H`H9(H~LHHHH LHHAhxHHALHHA@[HP~PLPHPHHzH H~LHLIzHH~LHHPHzHtHD~LH`DDhHHH~H{HD~LH@DDHH`HH"H~LHHhHHwH~LHHpHH`̴H~LH (HxHH@$HD~HHDDHHHlHD~LHDDHHzHrHD~LH`DDhHHzH`H~LH@HHHzH@?H~HHHHzH H~LHHH~H#HtH3{HHHHlHtH{HHHHHD~LH@DDHI|$H`WHA%1LH $>8HD~LHDDI}HOHD~LHDDI|$HTHHIuH0HPH8HHPHH5w?HG LWHH=;HL HHHDžDžLLH5;;LH @HV{H LIÈH L9tzHHLDXHxIyMA0HpHDžHH=:L@LH H0DDž(Dž8LH5b:LH@HuzHLIH@L9tyHHL*8H L 8@7HH{p@7HhH`P@7HHH yD0DH(H0@7H(HHHPHHH@D0DH(HHH`"DDHH=@7HH@7HH@@7HHp@7HhHHHLH=01}HH%H\@7HHp@7HhH@H=01d}HH=01S}LH=q01B}H=^rInIoIoHhIoIlI;nInIoIHnImImInImIUoImIfI[oISoIKoICoIRlIkInInIlIkI$oI:oHfHgImfImff.UHAWAVLLAULpATISHHHHP@I$HL扅HPHKIvLLL0IHLPMGLILHIHLxIHHHHLL0LLPL0LpLPLLpLHHHHH HDžƅLHDžƅLHDžƅHDžƅ HDž8ƅ@HDžXƅ`HDžxƅHDžƅHHHHHHHHLILILILILIHHHHHH0HHPL0HDžƅHDžƅHDžƅHDžƅ HDž8ƅ@LPHDžXƅ`LpHDžxƅLHDžƅLM$HHHHHHHHHHHLHDžƅHHDžƅHDžƅHHDžƅ H0HDž8ƅ@HPHDžXƅ`AM $HLA@HLSH(LGr@ALLIed_storeLHHfo2LXHDžHDž.HLsL9tqL(MoLqfo 2@LHed_storeHxHALHHHDžHDžl.HIGH9tpH(oaHglobal_lHHHSHHfrLB dHxHDž ƅ,HLCL9tpL(AoaLIshared_lLHMNHLLfEYAA dHDž ƅy,HM~L9tpL(mmLHfHIELH@aHDžƅ,HI]H9toLH ?E1DžIVH5;?DžDž`DžhDžpDžDžH HHfDLHH(ARH(H5SH(HAHH9tnHH; tnEL LpHLAQLH5&1IhSHpL9tnsLLHLAPLH51ISHL9tEnL;1HAIt$DXHH=JHL(HH@LN[H5i>LEAHH@H DDL@H0LHDžDLDžDž(Dž8mHHH+LHHH9t@mILD9I|$IT$ H)HL95@JLH HQH5LQHH; tlH{PHHHD@L;HLAWH5rLZQuN8tEHH; I tl{PLHHHDAh DL HH(AQH(H5E1PuD H(HHH9tkHH; tk{PEgLHHHDAht@LLHLASLH5qIIPHL9trk sP8L LHLAQpHLI(yHL9It$HJLL([IC0LNLH5>LEAH H@HDMCHDžDž(L0Dž8jHHH(fDHLHLPLH5a_!INHL9tjSL;1H߉AH1HxHpHL81HAHL`HHhAPM$LA5&It$L0LPLXILNLPIL0Aƅ@HDž8LPHDžXƅ`"LNAA,IILIELL0HHWH5ߞ1LgMMT$MzHE_H5?pL(LG@L5?LHt?LG Lﺂ0H@H`H5>HDžDL@DžHHPDžXDžhehHHHK&LHHH9tgML$MyIIHHGHHHUH0H51(L"HHHDžL0LPHHHpLHHHLLILhHIH`HLHIH@HL8IHƅHHDžƅ L0HDž8ƅ@LPHDžXƅ`HpHDžxƅLHDžƅHHDžƅLHDžƅH(DHHHDžƅE-LHn?E1MwH o?HLHLpH(DMA LQ?H@HDžxLpH5>MAL LDžeHHH#H(HHH9tdHSH HDžH~ LFDžHH(H5>HH@ eHHH"L(HIL9tWdH5}2LI0DCPARH5ޝ6LDpHDp]A#HPIL9tcILD9~I|$IT$ H)HI96JLH HQLH51]HHAH;tcEuLLP1HLA( D[L:H(H"?MA H@H5'>HDžLMADH HDžmcHHHS!H(HHH9tbsH+L HO LGH(HDžHH@H5>L Dž(bHHH @{PDE(EIH0DH=ݐ?DpEl$L?H?HXPH ?HH=t>LLxHHH0HDž8D@DPD`DpDžDžDžDž@L(MH@H5>HLaHHHLHHH9t`It$LNf.IL$DKL@H59>HH(I{0LQH H@EBH@HHCD`MCHDžHDPHpDžxDž`HHHHHH9`H56LDDKPA AHHHHpPpIT$KLHH MA@HrHLHDVHH56>H(LMAH @H HH@bHDžDLDž(H0Dž8DžH_HHHiHHH9t^HpHHH9@AI|$HHAH LOHHDžAƅHpI$HHDžxHHLHpHHpƅHHDžƅu D(L0I$LHDž8IVƅ@H0L8IM)I81L0MNMM9l$L@M9H=>MH50>I;I{HIH5l>I)L)AóADHH0L8BƄ;L=ޝ?H?IL-?H?LD~H?L?HD~L?L ?LD~HDpD~DHD D~H5ם?LD(D~H B?LD8~H=9?LDP~L'?XL=$?H2?D)L-(?H?D)0D)H?LF?D)PLT?L >D)D)p))HH5>~HH pJ~H~H=?L~L?L~L=͜?H~H?LD~L-?HD~H?D) D))@)))0HHc?D)D)D~LL?D~LDxD~LD@D~HDHD~H5?HD`D~H ?HDh~LD~D)@D)D)D)D)`D)0))L~HM\$HP~LH~H~HL~L~))p ))))MKHPH5>IH0LXL8LXHL)H+LPLkM|$ M9qH`I9aH{split_kMIA@}LPLXLHsM]CD" LPLI92H`LHLXHH{LL0HAWLPAPLPLpL LH@LLARLASLHAQL0HPHPHH0ATLWHAWL@APLPHARLASL`AQL0ATLWHAWLAPLpPHARHDžXASƅ`AQLATLPWAWAPLPL(LI^HMG LHHH VHIL9t VHPHH9tUHXHPHZHPIL9tUH0IL9tULpHIL9tUHHpHH9txUL HIL9t\UH(HHH9t@UH8HHH9t$UH@HHH9tULHHIL9tTL`HpIL9tTLhHPIL9tTLH0IL9tTLHIL9t|THHHH9t`TLHIL9tDTL0HIL9t(THPHPHH9t TLXH0IL9tSHHPHH9tSHH0HH9tSHHHH9tSLHIL9tSLHIL9tdSLHIL9tHSLHIL9t,SLHpIL9tSHHPHH9tRLH0IL9tRLHIL9tRHHHH9tRLHIL9tRHHHH9thRHHHH9tLRHHpHH9t0RLxHPIL9tRLH0IL9tQLHIL9tQLHIL9tQLHIL9tQH HHH9tQLHIL9tlQHe[A\A]A^A_]DHPH0H8H0L~@LHL5?LLLPL-?HL=?LFHHH @H5>HDžXL`HhLpLxLDžLDžLDžPH0LCHPH8L9LhH@IL9H H`~ H HP XHH0H@HDž8HH0H9tOMT$LHHH0HZPMZLHL8A{L LPLLBHH@HH5>>LLL5v?HHDžLHLDžDž(L0Dž8L@DžHUOHPM}HpHXL9H`L`HH9H LD~ L HpD DxHHPL`HDžXIHPL9%NLLHLAPpHM_HHL9HHHH9xHLD~HHDDHhHLHDžIHL9t`M{| H(LHDžƅHLHH5;11tH5c1L1 LHH5I0IP0LLH HM@H?|LH5>HH@HDžLHDžDž(LH(LI:ZHL9t)LM$M$LMu@LMMtEW EMMuL9{ L{(M$M$LIPMuLMIMtAy MIMuL9{ Hs$LM$ILMu<@LMIMtAy yMIMuL9S Ls(I$LIPHuwHH@Htx yH@HuI9KDS E>Hs$LjMl$LHxIHMuIuHPpMDD^ENH5-r?L HLH(L?DH=?L5KDL?L ?L8LPHK H0H@H`H58>LL@HDžDH@LHLPDžXDžhLpDžxLDžDžHLDžIH LIZWHPL9tIIH(HHH9)I@0vII@ H@(I9I{ I$H9HHIHx UHxIMfD(HIH@ I9v{ I$H9HHHp!ILpLDP EHx:IMD0nHI@ H@(I9C wI$H9HHLpHLD@ ELpHxIMdD(GIH@ I9s FI$H9HqHHpHLD@ ELpHxHH3@IH0IVMH9[L@M9 LLf>L >H5X>HxHLLH)H)HL0L8CƄ8qHFA|$L@HpHPHXIP@L=u?DhL5m?PM@H@HߺD`L-h?HpH @HxH5>HDžHLDžLDžLDž$FHXHHSHpH9tEML$HHPH5>HXL@@E\$MQAzLLLL@LH`HH @HDžDDžLDžLDžLEHPLIRHL9tDIt$fDMT$Lp`L-.l?L(IH@DhH{?MZL {?M@A{HpH@H58>LHDžxDLDžHDžLDž]DHHHCLHHH9LCBfA 1LHH ?FfDo`D)f.A1LLH >,fH=?L0)`))0ùL(1MH5u?HLvCHHH\LHHH9PBFI$tI$s I$HuLZAM LڋJ LZE1I$tI$C <I$HufLRM1 LҋJ LR1I$tI$C M$Mu@IZH IAJ IZ1I$tI$s M$MuVfMUAM MAU MUE1H5L &LDL ?HDžMj H=>LMrLH0DDžMH5ͷ>HH@HHAH(HHNH0H9wwLpL`1Heo?M~LpHAHL29SML$IT$ L)HH9M,LIELPLH5b1$HpL9t ? uEUPAyE]H0LH@L(HW H5>HDž8H0LPLGLD@DžX?HHHHIL9E?HpE]HDžhLDžHW HODpH=>H`LH پL H(H@H5±>HB?HHH(H(HHH9t>EMLLH=>HDžIE MmHDLDž,ML(H@H5Q>HL>HHH|fH=D>L@)pH))@贽1MHH5 >H->HHHHKHH9t=HLLH5}?HIR0LL5}?HH=&>MzHLLHHHDžLDžLDžݼMH5ñ>LH@HN=H@LIJHL9tLP)H))Pg1MHH5H>HL=c?D0D@LMiH DžPL`DžhLpDžxLDž艻MH5>LH@H;I|$HH}r?DpHJ@LPHGH=$>D@LL=\r?HDHHZHDžDDžDžLDžǺIH5>LH@H8;HHHLSHHL(HXHPHHXHPHL(HPI{HLI9 LHHHHpL(HHLIHH@@GHL9t9HHH9t9HPIL9t9HIL9HtH$8HXHpHxHP HtH#H8H8HPHXH0CHtH8HHHHwAA1LLH >EH D~ L HpD DxI}HPFH ~ H HP XH{H0gHD~HHDDIHI9$HHV5LH  H{HøI9ttHLLL/HI$HE~HLv7I9$UHL4Lp M H{)HúI9tHLLLB/HI$H@_HL6I9$HH4Lx H{tHúI9tHLLL.HI$L@8LL'6t{I9$Hj3x NH{HøI9tHLLL .I$LELL5MT$Et$LPHJv?HLIqPHv?MjHHLE]D`L-"d?L5\?HH=>HPLLMyHHHDžXDpLDžLDžHDžDž蜴MH52>HH@H 5HHHzBHH9ti4 [@cMT$HEL$Hw0MZECLLoH=(>HDLLHDžDDžDž蹳MH5>LH@H*4HpLIAHL93A`HXHpHH)@@7H8HP1E111M\$ED$HL=s?Hp@HMKAyHDH=%>LLhHDžDžLDžL Dž(XMH5λ>HH@H2HpHH6@HH9EI$Hu!HZHHڋJ HZ1I$HuafHZHHڋJ HZ1M$Mu$!f.MZM9MAJ MZ1M$MuI]AHt|IAU I]E1oX)H@I9RLH|1HEI9$eHHE1-LE L9HHE1L@VM9$LHGE1F1{ @1{ @uDS 1E@DK 1E@MM9$PLL0P IUMM9$LLpL0HLpH ILI9$HLpHn0HLpH HLI9$HLpH.0HLpH HdL@M9LS0HAPL`LkLpLPL0HDž8D@DžhDžx&MH5ĺ>LH@H.HpLIHDHHDžDžLDžMMH5;>LH@HHLI++HPL9+fDƅ8LH5D?HDž@IVHHHH@MgI|$蚇H@9gIH_LCHS L)HH9&M,HpHMULARHH5Ǿ0HHpAH9tKErM]LAH@E1H8{PILD9nIMIU H)HL9$JLHHRLH5Z$HH;HtPPtLHHXAPHXH5>1>Hu {PQHXHH9BP8m(IOH8oHHYLV H@DCHL@HHDžHDPLFH5>H`DžhJHL[HHL9+HLHH9HPL~PLPHPHHLHDžHHH9 DLXIL9tH1HH1HxPt,LH(HAhL H0HAhMMLAHtHYHHHHLXHLIglobal_sLHAI~HGtoreLHDž ƅ IHMNL9tIHL@M/LAM_ƅLHDžMVI{LHIOHyL'A$IIWIľHzHHXHI$P0DsH0HPIsIwMl$H??H%\:I $LL% \:H~LXHH5 =LH@DGLLHLH @DL@HLHDžLLDžHDžLDžHMEHHL9M^LL9HPHD~PLPHDPDHHHHDžIHL9tIHpH@H5>?HZ LBHGHH@DHHpH=?HDžxDHDžMgHH5^>?-LMl$LMT$0EELXHH@H H5:DLMD$LHDžLHDžDž(HHLHIL9tCHXMOHDžƅHHIyL/AIL0H5E??LGLEPL D 8H0M]HH8L9HXH@HHPH9HHLD~HHDPDHH0L@HDž8IH0L9t LH0DpH |>?HW0LLMH@Mk MCL LLLDHDžHDžLHHHIHHL9HPHHH9H8L~8H8H8HHLHHHDžHHH9tLLLDDžDžA@ADžAAÍL@LH=C?))@8H8D~8H5;?)H8D8H:?L8LgD~8L8Lg8?D)D8L8D~8L=Q?H8H:D~8H8D0D~8H >?L8D(D~8L _:?H8DD~8H=9?H8DD~8H9?DxD)pDD)@D)D)D)D)pD)PH8H5v9?~8L8L6?~8L8)08L8~8Ln6?L8Ln6?)8H8~8H-6?H8H 6?~8L8~8LlH8~8HhH8~8H5?)))p)P)0)H8HpD~8L8L5?D~8L8DhD~8L8DD~8H8DD~8HJH8DpD~8H 8?L8DD)D)D8H8D~8Hi5?H8H=k5?D)D)D8L8D~8LD)pD)PD)0H8MWD8HD)MH0HpH8H~8IH8~8H0L8MJL0APL@LH8IH~8H H9?ARLATLL(L@HHATLASLpLLP )))PHPAQL0SHAULpHAULAWLWHAPLARLpATLPASL0PHAQL0SHAULXAWL=WLAPLARATASPAQL : HME HHYH$I4Q HHH`HHH9t[ HPHHH9t? L@HIL9t# HIL9t L0HIL9tL(HIL9tLHIL9tHHHH9tLHpIL9tLHPIL9tfLH0IL9tJHHHH9t.HxHHH9tLHIL9tHHHH9tHHHH9tLHpIL9tLHPIL9tLH0IL9tjLHIL9tNHHHH9t2LhHIL9tLHIL9tLHIL9tHpHpHH9tHHPHH9tHe[A\A]A^A_]Lc LN HP~PLPHPH{HD@gE_HHHHXHHPHHraHHxLL-?LMK L0EH MCH @H5:H(LLHDžDž8HMUH0HL9 HHHH8H9N HL@D~H0D8D8H; HLHDžIHL9tDL#HA$D`LP`H@HXLO0LH@LLGH5v:LHp8L@HDžHDPDžxDžHMUHPHL9~ HHHH8H9( HL`D~HPD8DXH HLHDžIHL9TgJHDžLHIMurfDMMRMtEB EMRMuI9EA|$ 9DžLLLMuLM[MtA{ M[MuL9x MD$(HL@(ET$0HIDP0DžHHufIH@Htp H@HuI9A|$ DžLLMuwLM[MtA{ M[MuI9Qx GMD$(HL@(ET$0HIDP0DžHHuIH@Htp H@HuI9A|$ DžLLMu8LM[MtA{ M[MuI9x MD$(HL@(ET$0HIDP0DžHHuIH@Htp H@HuI9vA|$ jDžLLMu+@LM[MtA{ M[MuI9tx ~$LHHHLuMD$(L@(ET$0DP0HtHI HHHHfƅ8HH5@:H@Hw'?LHHHLLHHHLHXHLHH}IHXHLHHQIjLHHHL%HXHLHHIUHXHLHHILLH@MP LLM@H5>LHDžDHDžHM]HHL9HPHHH9HHLD~HHHHDHDHHLHDžIuHH9tLLL LHcH8~8L8H8H{HDžVH DžLLLMuLMmMtE] EMmMuL9x Hx(1HL(DPDžIIDtHHu@HHRHtz HRHuH9x Hx(1HL0HDžMIxHMuDLM@MtEH EM@MuH9t{x uHx(1L/ADXD|6HH8HtHoHHHHHXIHHHfbLXHIHL=LXHHHL(H~H088I}HHD~HPD8DXI}HHHD~HHDPDI}H0fEH0H=$?HPLPD)@D)D)0yLP1LH5j$?HdHXLIHPL9HtHHHHHAHtHA_HHHHHtH&HxHpHxHp.HP~PLPHPI}H" @7HHH8~8H8H8HHHH5HtHSHHPHXHHHD~HHHHDHDI}HVHtHAH8HHH0HPD~PLPHpDPDxI}HpHtHeHH0H8Hh@7HxHp HHHHaLH=e01@7HH\@7HH0I@@7H8H@7HHP!H=d01hHH=d01WHH=ud01FHHHHHH#H#H#I@HPHGHHHHxHHDHXH#ff.UHGHAWAVLL`AUL@ATISHIHWHpH@H5#?HxHHHMWLH`IHHHLLHL HHHHHHHLILILIL@LH`IMHHLL LL@LL`L LHDžhƅpHDžƅHDžƅHDžƅHDžƅLHDžƅHDž(ƅ0HDžHƅPLIHHHHHpHL`LHHHHHHHH HhHL`ILXILIHH@L L`L@LHDžhƅpHDžƅHDžƅLHDžƅHDžƅHDžƅHDž(ƅ0HDžHƅPL`LLPILHIH@HH8HHHHHLLLLHHHH HH@H H`HHLIH@HL`LHDžhƅpHDžƅHDžƅHDžƅHDžƅHDžƅHDž(ƅ0HDžHƅPHDžhLIL0IL(IL IHHHHHHHHLLLLLƅpHDžƅHDžƅLHDžƅHDžƅHHDžƅH HDž(ƅ0H@HDžHƅPH`HDžhƅpM4$HHLILILxIHLHDžƅLHDžƅLHDžƅLHDžƅAV@M$LAHCH.@ALLHed_storefo 2HHHPLHDžHDžݫHH[H9thLMoL@ALLfo 2HpHed_storeHHHHHDžHDžSHIwH9tLI~H"Ied_store@fo 2LL@HALHhHHDžHDžɪHMNL9tTHLSL@ALHfo 2HIed_storeHLXH`HDžHDž?HHCH9tLoaALIshared_lIWLLHfJH0B dHPHDž ƅɩHIwH9tTLAoaLIshared_lLH(AI~HHHfDOG dLHDž ƅQHI^H9tLoaLIshared_lLH AMWH@LLfABAB dHDž ƅ٨HIWH9tdLAoaHshared_lH8HHAIuLHfDvF dLHDž ƅaHMEL9tHALIshared_sLHH{HHGtoreHHDž ƅHL{L9t|LALIshared_sLHMUHLLABtoreHDž ƅ耧HIEH9t LoaHglobal_lHLIVLHfJHB dHHDž ƅHMFL9tHAmmLHfDHXH{HGaHHDžƅ蜥HL{L9t7LL?E1MWH2LLHJsPI$LH[L H@LHMZ0MBHPKH5؃>L HDž(0@DžXL`DžhLLHHIHI0L96HH9MtHILHHHHHHH9tILRD9I|$IT$ H)HL9!JLLHARLH5 1,̺HAH;tTEKLLpHLASH5;L˺HHHPHH5:˺HHHrH9tHpINH9t@L{PHHHDA@LHLARH5D:L,˺8HpIL9>{PH HxHHDh]HpMNL9TJfLHHAHLHHASHH5x9lʺ1҅u HHHH9t}HpIL9t[{PL3HHHDAhjDH1ҡH$fDL HHAHfDM4$LAHIT$ooHoutput_lLCHrHLHfAxHHA@ pHDž ƅ诠HHsH9tJML$MiA3NfL H@1LH5 <)0))HWH5x1L=9OLp1HL-~2LLLL-G ?M\$LpHH5^>HHMF@ICLXLpMFHH @HH`HHDžxLLDžDžDžH_ML$  LLLPL`HLhLHLLLHH`L@LXHHD~D~HH?L~$?HH oJLz$?HLLn$?HD~Hq$?DHHo$?H5$?DLH=$?L%y$?D) DLD~L$?HH $?D~LDD~Lx$?LDD~Lm$?DXD)DD)D)D)`D)0D)HH-$?~HH+$?~H ~H5$?L(~L% $?H0~H=#?L8~L#?H@~H >LH~L>P))))) )))LLs#?D~HHt#?D~HDD~H]#?HDD~H5V#?LDD~HD`D~LDhD~L ?HDpD~DD)DD)D)D)D)D)D)D)LL ~LHxL~HH~HH~HH~)p)`)P)@)0MaL I|$LH(M)L JHARLI@LLLLLLHH HPAWL0AWLASLX`hSH SHPHATLpWH`AULPAQL@APL0ARAWLASSPATWLAUvHMG LHH5W>tݪHxHpHHpIvH9tnܪHHH@HpԚLH`IL9t8ܪLH@IL9tܪLxHIL9tܪHHHH9t۪HHHH9t۪LHIL9t۪LH`IL9t۪LH@IL9tt۪HH HH9tX۪LHIL9t<۪H HHH9t ۪H(HHH9t۪L0HIL9tڪLHIL9tڪLH`IL9tڪLH@IL9tڪHH HH9txڪHHHH9t\ڪL8HIL9t@ڪL@HIL9t$ڪLHHIL9tڪHPHHH9t٪LH`IL9t٪HXH@HH9t٪H`H HH9t٪LhHIL9t|٪LpHIL9t`٪LHIL9tD٪LHIL9t(٪HHHH9t ٪HH`HH9tتLH@IL9tتLH IL9tتLHIL9tتHHHH9tتLHIL9tdتHHHH9tHتHHHH9t,تLH`IL9tتLH@IL9tתHe[A\A]A^A_]D HH@1LH5N) ))H تLOH+1LL->LHHD{P IyL`HTIO H5x>DGH`HH@HDžhDpMGLDžZתHLKHHL9LLIL9xHHD~LHDDHeHHHDžHsHH9t.֪ML$HLLPHhE}LL H@MZ MBLH|>H5fq>LHDžDH Dž(֪H I^H`H(H9HL0HH9pHLp~LH`hH`H L0HDž(IH L9ԪDMt$L0L-t>#II H@I^H5bq>HDCH0H@HDž8D@MALPDžXԪHP1H5!i1L=OL1HHLLH~LHH{HH~LH`hI~H MIoLHIC MCH@HEQH5t>LPHHDžDLDžHhӪHHH(HH9tӪML$L`HMQHHx LxHHEZHH=w>HDžDLDžRHMH@H5Pw>HH`HҪHHoHLCL9tZҪML$HHHLHPL`HHhH@LXHtHtЪHHHHHtHЪH(H`HhH MyHH=y>HX H@E_HLxHDžDLDž4QHMH@H5ay>HHXHѪHHHLCL9tЪML$HHHLHPL`HHhHHL``0H(H`HHLH=>01Z֪IԭIԭI?٭I7٭I/٭I'٭I?٭I٭I٭I٭IحIحIحIحIԭIحIحIحIحIgԭfDUHAWAVLLPAUL0ATISHIHGHHH5>HpHϪH0MGHDž8HPHpH0HHLHHLLHxHH8HLILILIH0HHPHHpHHHLLLL0LLPLLpƅ@HDžXƅ`HDžxƅHDžƅLHDžƅHDžƅHDžƅHDžƅ LIL0LpLhIEIHHHHLPLHpHHHHHHHHHL`ILIHHHH0LLPHDž8ƅ@HDžXƅ`LHDžxƅHDžƅHDžƅHDžƅHDžƅHDžƅ L0LpLILILIHHHHH`HLPLLpLLLHHHHHH0HXHHHHHPH0HpHDž8ƅ@HDžXƅ`HDžxƅHDžƅHDžƅHDžƅHDžƅHDžƅ HDž8L(IL ILILILIHxHHPHH0HLPLLpLLƅ@HDžXƅ`HDžxƅLHDžƅLHDžƅHDžƅHHDžƅHHDžƅ H0HDž8ƅ@M4$H(HH@HL8ILhIHpLHPHDžXƅ`HDžxƅLHDžƅLHDžƅAV@M$LAL[LIɪ@ALLHed_storefo'1HHHPLHDž HDžHH[H9tȪLMoLȪ@ALLfo 1HHed_storeHHHHHDž HDžnHIGH9tǪLIvH=Ȫfo51@LHed_storeHxHALHHHDž HDžHMFL9toǪHLKLǪ@ALHfo1HIed_storeHLPHHDž HDžZHL[L9tƪLoaALIshared_lIWL LHfJHB dHHDž ƅ+HIGH9toƪLAoaHshared_lHH HIvLHfDFAF dLHDž ƅ+lHI^H9tŪLAoaLIshared_lL HAMOHLLfEYAA dHDž ƅ+HIWH9t~ŪLAoaALHshared_lHIEH LHHfDp@ dHDž ƅ+{HIuH9tŪHHLIshared_sL H`AH{HGtoreHHDž ƅ, HL{L9tĪLALIshared_sL HxMMHXLLAAtoreHDž ƅ,蚁HM]L9t%ĪHoaLHglobal_lH HSHHfJHPB dHHDž ƅ+HLsL9têLmmHf HIwLHFaLHDžƅ#HMGL9tSêE$E4LH=>E1HDžHIwL1HHL?HHxHHM4$LAHHL0Hr0D[HHDžHH5]>HH@LLBKDDžDžªLLHXHPIHI0L9yL`L9IMtHI LHHPLHXHIL9tIL,D91I|$IT$ H)HI9$FJLLHARLH507HAH;t_EVHLHLRLH50IHL9tpp;sPDNA4ID$[H=0LQOH@E\$HPLEHNPL>H=ăJL c>DrL>LH@H@D`LLLFH5>HLHDžHDPpDžLDžLDžDžHHHhu~LHHH9fH LHLQLH540IjHL9tp蓿pI$LHLL0HJ0[LH5Z>HLH@L LBKHDžDž(L0Dž8mHHHS}fDH1z{HPfDLL0HLAPH5]LELHHASHH5%HHLNL9tp7pH0MVL9tppHL0HLPLH5 I袢H0L9tp˽pHEHHHADH0IVH9t能H {PHH HD(@LHLAPH5 Lu 8/LHHASHH5ӡE1ɅuD HHHH9tDpἪDpH0IL9tDp轼Dp{PELH(HHD0AhDM $LALMT$Houtput_looHhM^IrH LLH`fACAC pHDž ƅ+_xHINH9tI$LL@LH=>El$Iw0L21HH@H@H5>HpLLMG0HDžHDP`DžxDžػHHHyLHHH9t&ML$MQA.R/Df)E'Hp1LH5<))H1H5wO1Lm2L5 OHCy1HHpL=/>LLHLM\$H0HHH@L@HL0ISLpDjH0H @HHHH5V>HDž8D@LPL`LpDžxDžDžHX)MD$I@,479HLH0Iv MFHDžHH54>H@LDžH臹E$EV+HPƅ`At$HPHA$HPHDžXuA$/L0LhLpMH @M@LH5R>H@L0HDž8LPDžXȸHpM]HPHxL96/HPHHH92HH`~HHPXH2HpHHDžxIHpL9t蟷HƅHHHA$HHDžA$,LDHDžLILƅE /ID$Hl{JLHLA$E\$ArAI5LLH=ό>MH@HIXLHDžDLDžDžLDžb6LIH@H5O>HL̶HHHtLHHH9tID$HLHDžHQIsƅHLHHME MmHDžƅ H@H xL@LH=^>HDžLDž]5MH53>HH@HεH@HH;HH9&zHP"H0IL9,ﴪ{PL3H8HHD@AhHp1LH5N))H L OL*s1LL=>LLpLLDHHDžHHHƅ-4HLHDžH@HL IHƅLHDžƅ L@IL$LpHDžHLLIvILILIL@ƅPLpHDžxƅLHDžƅHHDžƅHA "~.v.HƅHHHA$HHDžT(H0ƅ@A$HDž8HCH0+HHHpHxHpHpHXHPHpHHHpHHH{pA|$L0LH 7>HL8MQ0LgLLMAHH5>H H@LHDžLDžDž(ޱLHIOHL9t>L`H5\34LؠHhd&H]KH=>fHHL >D~Lk>LL(>L >H5k>H v>Hf>DHD~H=o>LL \>D~LD0D~LH>LDXD~HD D)D)DLD~HD~HDHD~H0DPD)D)D)pD)PD)0D@MD$H~HH~L8~L@~XD)`))))pMXHDž$Dž,AsHDžDžHDžDž HDžtDž|HDžDžHDžTH0HDž\HDžDžHDžtDž|HDžDž HDžDžHDž$Dž,HDžDžHDžDDžLHDžDžHDžDžHDžTDž\HDžDž HDžDžHDždDžlHDž4Dž<HDž8HpLxLDž LLHHfoLfo foLLfDoL`HhfDo`Dž fDoDž fDoDžp fDop)P)`)pD)D)D)D)D)HHL0L8Dž LPLXHHHpfDoL@fDoLHLfDo@LHxfoD)DžP foPDž foD)D)))) H`HhDžp fo`HLDž LLDž LpHxHfopLfoLfoLfDofoLHHfDo)0Dž fDo )@)P)`)pD)D)D)HHLLDž LLHHHL0fDoL8fDoLfDo0LHfDoHfoDž@ fDo@Dž foD)D)D)D)D)))Dž foH0L8DžP LLDž LHH@LHfoPfo@LL!>LfoL>foLL>HH0H5>foH8Dž fDo) )0)@)P)`)pD)HPH Y>HXL`H1>fDoPH(H>L LfDo Dž` fDo`Dž0 fDo0HHAQLRHLLLLLLpH HPH@H0ARD)D)D)D)H0HpLDžDžDžDžDžDž(Dž8DžHAPLASVPAQLRpHHPHH5>LG HHHHHeHHHH9tiH`IL9tTH0HH9t?HHHHH9t#HIL9tLHIL9tLHpIL9t֥LH@IL9t躥L HIL9t螥L@HIL9t肥HHHH9tfA$Hr>HHuA$L k>LEHLHIT$HzYH DwHH55N蜔LPDEH5>LmA11LH >twHpLXLSLpLM9LpHpHLHHH>HHLxLH@@)hLHHLyHH>LH@gH fEEd$HDžDD4DDžLHDžDžPHDžDž HDžtDž|HDžDžHDžTDž\HDžDžHDžtDž|HDžDž HDžDžHDž$Dž,HDžDžHDžDDžLHDžDžDDDxHDžDžHDžTDž\HDžDž HDžDžHDždDžlHDž4Dž<HDžDž HDžDžHDžDžHDžtDž|HDžDDžLHDžHDžHDžDžHDžHDžTDž\LL0L8D0HILfoLfDo0LH`foLhfo`Dž@fo@DžfoDž foDžp fopHD)0)@)P)`)p))HDž)HLHHDž HPLXHLLpfoH@fDoHHHfDo@LHxfDo)DžP fDoPDž fDoD)D)D)D)D)L`HhDžp fDo`LHDž LHDž HHLfDopHfoLfDoHfofoHHLfoD)Dž fo D) D)0)@)P)`)p)LLHLDž HLLHHH0fofoL8Hfo0LfDoHHfDoDž@ fDo@Dž fDo)))D)D)D)D)Dž fDoH0L8DžP LPHXDž LpHxH@LHfofDo@LfDoPHLfDoHLfoHDž foD)D)D) D)0)@)P)`LPHXHHL0Dž` L8HPH LXfoPH(fo`fo LLfoHLfDoDž0 fo0Dž fDoDž fDo)p))))D)D)D)HPLXH0H8Dž HpLxHLLH`fDoHhfDoH0fDo`L8fDo0L>LfoL>Džp fDopDž@ fo@D)D)D)D) D)0)@Dž )PfoHpLpHxDž LHHHH5q>HLL >HfoH=>LpfoL%>H@foHk>HHfopHA>fDo@)`Dž foDž fDo)p))))D)DžP D)fDoPHLL=6>HH >LL=s>L LW>L0L5>H@H5>LPL >H`H=>LpL%N>HH.>HH%JHH >LL=v>LL>LL>D)DžDžDžDž(Dž8DžHDžXDžhDžxDž Dž Dž Dž Dž DžHHLLHH=>LL%%>H H->H0H@HL`MB H}LeL0DžLDžDžDžDž(Dž8DžHLPDžXDžhLpDžxHuELMEEEHEEHHH8H0HpUH0IL9tkH@HHH9tOHIL9t:LHIL9tHpHH9t HPMvL9tHHHH9tؕHHH>THHHHH9t袕LPHPIL9t膕LH0IL9tjHXHHH9tNLHpIL9t2LhHIL9tH8HHH9tL@HpIL9tޔL(HPIL9t”H0H0HH9t覔LPHIL9t芔LxHIL9tnHHHH9tRHHHH9t6LHIL9tL HpIL9tH(HPHH9t⓪LH0IL9tƓLXHIL9t誓H`HHH9t莓LHIL9trLHIL9tVHHHH9t:LHpIL9tLHPIL9tHH0HH9t撪H`HHH9tʒLHIL9t讒LHIL9t蒒HHHH9tvLHIL9tZLHpIL9t>HhHPHH9t"LH0IL9tLHIL9tꑪHHHH9tΑLHIL9t貑LHIL9t薑H8HHH9tzHxHpHH9t^LHPIL9tBL0H0IL9t&HpHHH9t He[A\A]A^A_]H55NL虀'@DžED$L`H5>DhMQPH >LH=n>DpDMiH0HHL`HDžhDžLDžLDžDžDžMH5m>HH@HuHHHH0H9tяLH1IELH1HH1LHI]L(1HAI|$DXHH>HEL$HNPL-}>LGH=rp>EPHH@H`HPLpLnHDžDDD 0DžHLPDžXDžhDžxMH5o>HH@HHHH苜HPH9vML$LHPH <>E\$HB0LB|MQL5>H5ZW>LAZHH@HPHDžXD`pDžLDž[HHHhALLHHH9h襍^Ml$LH@H5_>I[ MC<MMLEQLHHDžDL Dž(赍HHHKLHHH9f.DHTLHMZ MBH@HH5->LHDžD L0Dž8H8HH{HH9tjIT$HB@EZHH >HDžHB HLBH@LPH5'>HLDDžoH0LIܙHPL9Njf.M\$HH=U(>HH L=A>ISLpDjHHDžDLDžG HpMH@H5'>HH譋H5J1L1HOL I1HHpLHL~fDohD)]DHH52O<ezAH >1Li]HhyDHH5N<%zL5>HLHH!LHHHLHHHH@LHH8H0LHHHLiHHHLLHLHLHHH>EL$MB0LH=ym>LMjHpHHHHDžDLDžDž0 MH5m>HH@H衉HHHHHpH9bX@HtHR ̇HxHPHXHpHH`pHHH LhHDžhHH=[>H`DžNMH5[>HH@H迈HPHH,HH9xx{P#DLLHDžL@IL AILƅLHDžƅ AHLH5LHDžHEHL >DžLG LoLH=`>LHH(MH5`>HH @H虇H@HHHH9tMT$HH=`>HH LhMZHAsHHDžLDžMH5C`>HH@HH HHkHH90fDI|$EL$A$HWLDZEPHHHDžHZ@LjDHHOJJHH=Y>DDDžHDžLDžMLH@H5Y>HLHHHCHIL9tPE$ID$E$%@H~HHPXI}Hp3pH@HDžHLLG LwL`H=P>PL@DžhMH5]P>LH@HH8LIuHL9A|$L LHDž(MH MhDžH0H=S^>L L@HMH@H5%^>HHjHHHPBHHH9t軃LHA$IELH1HH01LH8IEH1HI|$D8HHj>DXHHNPHF>LOET$H=*^>EADLnHDH HDžDDDž(L0Dž8H@DžHHPDžXMLH@H5]>HLHHH@LHHH9tCfH=@L)))H1MH5d@HHyHHH_@HHH9PPHpH=u&>HDžxHH LhLHpHDžhMH5.&>HH@HفH8HHFHH9HHHP@ H0H==X>HH@HXHDžDDž8DžHLPDžXLIH@H5W>HLHHH>@HHH=UU>HDžLnHF@D HDJHPHD0D@DžXH`DžhLpDžxMLH@H5T>HLIHHH/>EDHLH='>HDžMZ MjLLLDDžJMH5'>LH@HH8LI(HL9ML$E\$A$MQM)AZAEHHH=3CJHQ@LiH H=W>HHHDžDDžDž(L0Dž8ZHMH@H5OW>HH~HHHH M>H=Y>LHXLHH HDžDDDžLDžLDžDžDž(LIH@H5X>HL|HHH:L`LDpH=T>MH@MhL@JL`HDžhLDžLDžLDžHMH@H51T>HH.|HHH:eHxHPLH=/1bH鐄H魄HZH鑉HoHńHHI؊I鴊I闊IsITHMHaIIH=H%HH鎉H HH,H鹄HHH HH;HHꊭHH7HҊHʊH靊HHҊH騊H頊H阊H H鈊H逊HxHpHhH`H}IfDUHAWAVLLAUIATL`SHHHHH@H`HHHHpHLLHHL HHL@HHHHLILILIH@HH`HHH HH@HH`LLLLL LHDžHƅPHDžhƅpHDžƅHDžƅHDžƅHDžƅHDžƅHDž(ƅ0LhILIL(IL IL@LL`LLL LL@HHH0HH(HHXHH`HHH`HDžHƅPHDžhƅpHDžƅHDžƅHDžƅHHDžƅHHDžƅH HDž(ƅ0H@H HLILILILILxIL@ILHIH`HDžHƅPHDžhƅpLHDžƅLHDžƅLHDžƅLHDžƅLHDžƅL HDž(ƅ0L@HDžHHHƅPH`u0;@Heft_bounfo>HPH&@d = fHHHH`HDžpHDžhH6ufo >>foF>HHHLHLL L@HL`LPLH@ = 0HH @$;@%HHH@HHLILILILIHH`LL LL >L L MHDž%HDž%HDžƅHDžƅHDžƅHDžƅHDž(ƅ0L@HDžHLILILIHPHH8HHHHH@HHXHL`E1ƅPHDžhƅpLHDžƅLHDžƅHHDžƅHHDžƅHHDžƅH HDž(ƅ0H@HDžHƅPHHLhIH`HDžhƅpƅHDžPHDžHDž0HDžpDž<DžDžxL`LL6DxE0L3HXHAhxHpIL"D91I}IU H)HI9+-JLhHHLPLH5&f UH AH;`tpEZLLHLASLH5_0wUHu {PIwH9tpH HLQLH506UHu {P. IWH9tPpLLHLARH5LT5L HLAQLH50THMGL9t8o8HIL9t8o8HL`HLPLH5IYTH`L9t8o8{PH!HLHHPH5}2LOEL=}2EQLLH LH@H@fLHL%>D`L@HH5bw>HDž(D0DPLpDžxDžLDžDž~iHMNH HL9L@LIL9!HxL0D~xLxH DxD(H HLHDžIHL9tRhI}HpLL>Iq0MAHODrDyHH@H5x>HDžDLLDLDžLDž>hHM_H@HL9<HXLHH9HxHPD~xLxH@DxDHHyHHHDžIHL9tgHLsL9tfMMHpLA@IuLI}LPH@H5z>MC LWHHxEzLPMCHDžXD`LpDžxfH>H ->HB>L5G>HhD~hL <>H5B>HhD~hL=D>L0>HhD~hLhH=L>1D~hLhDxD~hDHHhD~hDLhD~hLī>Lh~hL>8Hʫ>D)0LPD) D)D)D))))LhHp~hLh~hHhL~hHh~h)IM)))LLqA LH50Lh3IE]fLpH>H>HDHHDžDžHDž4Dž<HDžDžHDžDžEmX$HDžhHDž4Dž<EvHDžDžHDžDžHDžDžHDžDžHDžDžHDžtDž|HDžTHHLDž\HDž4Dž<HDžDžHDžDžHDžDžHDžDžHDžDžHDžtDž|HDžTDž\HDž4Dž<LLNHDžDžLHwHDžDžIWIHpHHDžDžL?HDžHWHHDžDžH`HDžHH0HPHHDžtDž|HHDžTHHHHDž\HHHhHH`HH@HHDž4HHHDž<HDžHDžHH H(HHDžDžHHDžHHHH(DžHHHH8HHHHDž!HH@HHH`DfDoHHhDfDoHHfDoDž H HfDoDž0 fDo0H(fDo D)DžfDoDžfDoD)D)D)D)D)D)D)HPDž` foPD H@LHL`Dž0Lhfo`Hfo fo0LLfoLHfoHDž fo) Dž fo)0)@)P)`)p))HHDž LLLDž LHH L(LfDoLfDoHfDoH`fDofDoLhLfDo`Dž Džp fDofDopD)D)D)D)D)D)D)D)L@LH H(DžP LHL@H LHLHH(fo@foPLfo LLfoHfoDž0 fo0Dž fo) )0)@)P)`)p)Dž foH L(Dž L@LHDž HH`HhLfDoLfDoLfDoHfDoHH>fDoL Dž L()fDoD)D)D)D)D)D)L`L>LhL@L->HHL fDo`L@L5ǃ>HHLpH>fo@L(Lfo HfoDžp fDopDžP foPDž0 fo0Dž foD)D)) )0)@)P)`)pHH >LL>Dž foL`L0LL=t>HP)fofDoLL >fDoLL3>fDo`HH5>fDoDž fDo)Dž fDoDž fDoDžp fDopD)D)D)D)D)D)D)D)DžP fo@foPfo Dž0 fofo0Dž fofoDž fDofoDž fDo) )0)@)P)`)p))D)D)HH >LL=>HH^>LL:>DžDžDžDžLL->LL%j>L L%>L0L5>H@He>LPL0L`L LpLHHLLHHLLLLLLHHHDžDžDž(Dž8DžHDžX Džh Džx Dž Dž DžDžDžDžDžLDžDžARAQLAPLVAWPASAUATL譊HPLC LH!H5 k>lgVHhHHH9tUHHH1HIL9tULxHIL9tUHH`HH9tdULXH@IL9tHUL@H IL9t,ULHHIL9tUH8HHH9tTLPHIL9tTHHHH9tTLHIL9tTLH`IL9tTLH@IL9thTHH HH9tLTHHHH9t0TLHIL9tTHHHH9tSLHIL9tSLHIL9tSLH`IL9tSHHH@HH9tSL@H IL9tlSHxHHH9tPSLHIL9t4SLHIL9tSLHIL9tRHHHH9tRH H`HH9tRL`H@IL9tRHXH HH9tRL(HIL9tpRL0HIL9tTRLHIL9t8RH HHH9tRL(HIL9tRHH`HH9tQLhH@IL9tQLH IL9tQLHIL9tQHHHH9ttQHHHH9tXQLHIL9tI94HL9t8bO8u8HH@HhHP@H LHLQLH5ق>I3HL9t8N8HLHLRLH5-q0Io3HL9t8N8LLLH`H=͐>LL R>LL>LLއ>LL%qr>HHH5\>H H@H@LHDžLHDž(L0Dž8DžHLPDžXL`DžhLpDžxJHMFH`HL95HLHH9>HxHp~xLxH`xhH.HHHDžIHL9mmf.HHHHtHW$HHH H(HH HHHhL0HHHI$;"HPLgH8HXHHx~xLxH`xhI~HHtHSHp LxHDž(H0H=]9LH H8L@DžHƸMH5(9LH @HCGHLITHL9tFHGHHDHLHMX0MxHDžHH=9LHLDDžDžŸMH5Z9LH@HmFHLISHL9-E#HtHEDHH`HhHHLDžL@L8HPLHHL L`HLAQpHLISH`L9HH@HH HPLgHHXLL HLASpHLIRH L9HH`HPLHHLL@HLAPpHLI RH@L9LH=/1IITIYIYIYITI{YIsYIkYIcYI[YISYIKYIcTImYI1YI)YHAVHUVUHAWAVAULmATIS1H(k@ID$IT$ H)HH9L4LILRLH5qe0'H}IMAH9tBEuILpu-HL衭9H([A\A]A^A_]fAH([A\A]A^A_]HH=/1xHUHAWAVAULmATIS1H(k@ID$IT$ H)HH9L4LILRLH5d0&H}IMAH9tBEuILhu-HL9H([A\A]A^A_]fAH([A\A]A^A_]HH=ǯ/1GUHAWIHAVAUIATSHH(LGL'LL)L)HH<IH9LHULEAHULEHEIH}I7MM)LTH4O :LMM9LLULEHHULUI9t2LLL?Mu~ELsEH([A\A]A^A_]L@fDHH9HE1HEHSM9ufL4 f.@HGH;GtHHHGHHHOUHHHSHHyHCH[]Hf.UHAWIAVAULoATSHHL/L6LfLLt MIIuzALSLcB MGHsH;IM<0I9LKM9MtHILHB>H;L{HB?H[A\A]A^A_]@LMtfDMxdI|$q?LcHLLH=HT@1HH;뒐A]D H;tH=L7LGUHHAWAVAUIATSHH(LL'LL)L)HH<HH9HHUHMHu>HUHMIHHUIvDJLLLDIL9|ILMM)IIIAIItvItZIt=It IMH:rIHIyAqLDZIHMQEYH DBIHIIEAH:rIHIyAqLDZIHMQEYH DBHIIIEAH9H:rHIIyAqLRDZMQEYHJDBIIEAHzrIyAqLRDZMQEYHJDBIIEAHzrIyAqLRDZMQEYH9sLKM)IKt L9MIII)IIIAIItxIt[It>It!IA{M IIMJAzASMIIMBARAKI;IIIzAJEKIIIIREJAKMIIMBAJA{M IIMJAzM9ASI IIA{MCEKARISIJMBAKMCAzIRI{ASEJEKIzAJA{MBIKEJMCARMKASIJMJAzMBARM9pI)I_HHtMtLHuHE:HuHELu~EHuIEEAEH([A\A]A^A_]IL9UHu1E1lfHH'I $ED$MNIT$IEFf.SH LVL[HVUfHAWAVAUATSHL~LuLmLe HDžALzDžH](L]0HDžALyLU8DžHDžADž MxHDž$Dž,IHDžDMHLMyDžLHDždIDžlMH0L8M~HDžDžIHDžMHPLXM}DžIMLxM|$HpIHMHDžLL{DžHDžIDžMHLM{HDžDž IHDž$MHLMzDž,HDžDIMHHE@LLxIMHLDžLHEHHDždDžlLxHDžDžIHDžMH0HEPL8DžLxHDžDžIMHPHEXLXLxIMHpHE`LxLxIMHLHEhHDžDžLxHDžDž IHDž$MHHEpLDž,LxHDžDDžLIMHHExLLxIMHHLLxIMHLHHDždDžlLxHDžDžIHDžMH0HL8DžLxHDžDžIMHPHLXLxIMHpHLxLxIMHLHLxHDžDžIHDžMHHLDž LxHDž$Dž,ALHDžDDžLIGD8HDLxIMHHLLxIMHDždDžlH0HL8HDžLxDžHDžIDžMHPHLXHDžLxDžIMHpHLxLxIMHHLLxIMHDžDžHHLHDžLxDž HDž$IDž,MHHLHDžDLxDžLIMHHLLxIMHHLLxIMHDždDžlH0HL8LxHEEIMHEEHPHLXLxHEEIMHpH LxLxIMHEH(L}LxIMDžfofoDžfoHEH@foL}foHfo)O fDo0DžfoDž fDo Dž@ fDo@)W0)_@)gP)o`)wp)D)D)D)Dž` HG)fDoPfofoDž fofoDž fDo`) fDopfDofDoDž fofoDž foD)Dž foD)D)D)D)))0)@)P)`)pDž )fDo fofDo0fDoPDž@ fDopfDo@Dž` fDofDo`Dž fofDoDž foD)Dž foDž foD)D)D)D)D)D)D))) )0)@)PDž fofofoDž fDo0)`fDo fDoPfoDž@ fDopfDo@Dž` fDo)pfDo`Dž fDoDž fo)D)D)D)D)D)D)D)D))Dž ) fofofofoDžfDo0foDžfDoPfoDž fDopfDo Dž@ fDo@)0Dž` fDo`Dž fDo)@)P)`)p)D)D)D)D)D)D)D)Dž fDofofoDž fofoDž fofoDž fo)fofDo0) fDoPDž fDo Dž@ fDo@D))0Dž` )@)P)`)p)D)D)D)D)fDo`fDo}E foMfDopfDouE E foEfoUD)D)D)D))) )0H6LJHH@HLJXHPH LJhH`MLJxLpM LJLM6LJL}@HuHHMPLMmLMXLJLM$$LJLHLJHMLJ LMLJ LILJ HHLJ HLLJ LM1L Lm`LJ(H]hMeLUpLJ8HExHL0LLLLJHL@M:LJXLLPH0LJhH`H LJxHpMLJLM.LJLI$HLJLLHMHLJLLLIHLLJHHLJHLLJLM1LJLMeLJLLLJLM:LJ(L HHLH0LLJ8LLH0H LHLJH H@MLJX!LPM.LJh"L`I$LJx#HpMLJ$LILJ%HHLJ&HH L(LLJ'LM1LJ(LHİ[A\A]A^A_]UfHAWAVAUATSHp4HDžL~LuDž LmLe HDž$IMDž,H](L]0HDžDLLzHLU8DžLIMHLHATD8I@tD0D8IADPD8IFHDždDpD8DžlIEDHDžD8DžID$DHDžD8DžHDžDžHDžDžDHCM{HAMz4AHDžL}@0HDž$MDž,HDžDIDžLMHPHEHLXHDždLxDžlHDžIDžMHpLxHDžHEPDžHDžLxDžHDžIDžMHHEXLHDžLxDž HDž$IMHHE`LLxIMHHEhLLxIMHLDž,HEpHDžDDžLLxHDždDžlIHDžMHHExLDžLxHDžDžIMH0HL8LxIMHPHLXLxIMHpLxHHDžDžLxHDžDžIHDžMHHLDž LxHDž$Dž,IMHHLLxIMHHLLxIMHLHHDžDDžLLxHDždDžlIHDžMHHLDžLxHDžDžIMH0HL8LxIMHPHLXLxIMHpLxHHDžDžLxHDžDžIHDžMHHLDž LxHDž$Dž,IMHHLLxIMHHLLxIMHLHHDžDDžLLxHDždDžlIHDžMHHLDžLxHDžDžIMH0HL8LxIMHPHLXLxIMHpLxHHDžDžLxHDžDžIHDžMHHLDž LxHDž$Dž,IMHH LLxIMHH(LLxIMHLH0HDžDLxDžLHDždIMDžlHEHH8LLxEHEIMEH0H@L8LxIMHPHHLXLxIMHpLxHPfofoDž LxfoDž fo0fo Dž@IMHEfo@EHEHXL}Dž`LxIM)O )W0HEHL}H)_@)gP)o`)wpHG/foPfDo`fDopDžfDofoDžfDofoDžfDofDoDžfDofoDž fDofo)D)D)D)D)D)D)D)D))) )0Dž )@fo fo0foPfDopDž@fDofo@Dž` fDofDo`Dž fDofDoDž fDo)PDž fDoDž fo)`)p)D)D)D)D)D)D)D)D))Dž fofofoDž fo0) fo foP)0fDopfDofDoDž@ fo@)@Dž` fDo`Dž fDoDž fDo)P)`)p)D)D)D)D)D)Dž D)fDofofofo0Dž fDofoDž foPfoDž fDopfo Dž@ fo@D)Dž` fDo`Dž fDoD))) )0)@)P)`)p)D)D)D)Dž fDofofoDž fo0foPDž fDo) fDofDofDoDž fofoDž fo D)Dž@ fo@D)D)D)D)))0)@)P)`)pDž` )fDo`fofDopfDoDž fDofDoDž fDofDoDž foD)fDoDž foDž foDž fo D)D)D)D)D)D)D))) )0)@)PDž@ fDo]fo0fo@Dž` foPE fDo`fDoUE fDopfDoeE fDomfDou)`)p)D)D)D)D)D)D)D)H6LJHHLJHH H LJ(MLJ8L}@L0M LJHHuHL@M6LJXLPMmLJhL`M$$LJxLpHLJHMLJ LMLJ LILJ HHLJ HHMPLMXLm`LH]hLJ LUpHExLM1HLLJLMeLJLLLJLM:LJLH0LJ(H H LJ8H0MLJHL@LLLM.LLJXHHLPI$LLLJhH`MLJxLpILJHHLJHLLJLM1LJLMeLJLHLHLHLJLLLM:LLLJLH0LJHH LJ HMLJ!LM.LJ("L I$LJ8#H0MLJH$L@LHH IL(LJX%L0H8HPHL@HHLJh&H`LLJx'LpM1LJ(LMeLJ)LLLJ*LM:LJ+LH0LJ,HHPLXH LJ-HMLJ.LHp[A\A]A^A_]UfHAWAVAUATSHHDžL~LuDžLmLe HDžIMDž H](L]0HDž$LLzHLU8Dž,IMHLHA4D8I@TtDD8IAD0D8IFHDžDDPD8DžLIEDpHDždD8DžlID$DHDžD8DžHDžDžHDžDžDHCD8ICHDžDD8DžDMzHDžDž IHDž$MHHE@LDž,LxHDžDDžLIHDždMH0HEHL8DžlLxIHPHEPHDžMDžLXLxHDžDžIHDžMHpHEXLxDžLxHDžDžIMHHE`LLxIMHHEhLLxIHMHDžHEpLDž LxHDž$Dž,IHDžDMHHExLDžLLxHDždDžlIMHHLLxIMH0HL8LxIHPMHHDžLXDžLxHDžDžIHDžMHpHLxDžLxHDžDžIMHHLLxIMHHLLxIHMHHDžLDž LxHDž$Dž,IHDžDMHHLDžLLxHDždDžlIMHHLLxIMH0HL8LxIHPMHHDžLXDžLxHDžDžIHDžMHpHLxDžLxHDžDžIMHHLLxIMHHLLxIHMHHDžLDž LxHDž$Dž,IHDžDMHHLDžLLxHDždDžlIMHHLLxIMH0HL8LxIHPMHHDžLXDžLxHDžDžIHDžMHpHLxDžLxHDžDžIMHH LLxIMHH(LLxIHMH0LLxHDžDž AL8HDž$Dž,IGHDžDDžLD8H@HDždDDžlLxIMH0HHL8LxIMHPLXHDžHPDžHDžLxDžHDžIDžMHpHXLxHDžLxDžHDžIMHH`LLxIMHHhLLxIMHLDž HpHDž$LxDž,HDžDIMDžLHDždHHxLLxHEDžlIMEHHLLxIMH0HL8LxIMHPLXHfofoDž LxfoHEEIMHEEHpHLxDž LxIMHEHL}LxIM)O )W0HEH L}H)_@HG8fofofo0Dž fDoP)gPfo fDop)o`fDofDo)wpDž@fDo@Dž`fDo`DžfDoDžfDoDžfo)D)D)D)D)D)D)D)D))DžfofofoDžfo) fofo0)0fDoPfDopfDoDž fo )@Dž@ fDo@Dž` fDo`Dž fDo)P)`)p)D)D)D)D)D)Dž D)fDofofofoDž fDofoDž fo0foDž fDoPfoDž fo D)Dž@ fDo@Dž` fDo`D))) )0)@)P)`)p)D)D)D)Dž fDopfofoDž fofo0Dž fDo) fDofDofDoDž fofoDž foD)Dž fo D)D)D)D)))0)@)P)`)pDž@ )fDo@fofDoPfDopDž` fDofDo`Dž fDofDoDž fofDoDž foD)Dž foDž foD)D)D)D)D)D)D))) )0)@)PDž fofo fo0Dž@ fDoP)`fDo@fDopfoDž` fDofDo`Dž fDo)pfDoDž fDoDž fo)D)D)D)D)D)D)D)D))Dž ) fofofofo0DžfDoPfoDž fDopfo Dž@ fDofDo@Dž` fDo`)0Dž fDoDž fDo)@)P)`)p)D)D)D)D)D)D)D)Dž fDofoDž fofoDž fofoDž fofo Dž@ fo0)fDo@fDoPD)fDopDž` fDo`E ) )0)@)P)`)p)D)D)D)D)fDoefDomE fDo}fDouE foED)D)D)D))H6LJ(H HLJ8H0H LJHH@MLJXLPM LJhL`M6LJxLpMmLLJM$$LJL}@HuHHMPLHLMXLJLm`HMLJ LMLJ LILJ HHLJ HLLJ LM1LJLMeLJLH]hLUpHExLHLJ(LLL M:LLLJ8L0H0LJHH@H LJXHPMLJhL`M.LJxLpI$LJHMLJLLHHILLJLHHHLHLJHLLJLM1LJLMeLJLLLJLM:LJ L H0LJ H HLLH LLJ( LLH MHH LJ8 !L0 M.LJH "L@ I$LJX #HP MLJh $L` ILJx %Hp HLJ &H LLJ 'L L(L0H8M1L@LJ (HHHPL MeLXL`LJ )L LLJ *L M:LJ +L H0LJ ,H H LJ -H MLJ .L M.LJ /L LhLpLxI$HLJ( 0HLH MLHLJ8 1L0 ILJH 2H@ HLJX 3HP LLJh 4L` M1LJx 5Lp MeLJ 6L LLJ 7L HĐ[A\A]A^A_]f.UfHAWAVAUATSHL~LuHDžLmLe DžALzHDžH](L]0Dž ALyLU8HDž$Dž,IHMHDžDLMxDžLHDždIDžlMH0L8MyHDžDžIHDžMHPLXM~DžHDžIDžMHpLxM}IMHLM|$HDžDžIHDžMHLL{Dž HDž$IDž,MHLM{HDžDDžLIMHLMzIMHHE@LLxIH0MHDždHEHL8DžlLxHDžDžIHDžMHPHEPLXDžLxHDžDžIMHpHEXLxLxIMHHE`LLxIHMHDžHEhLDžLxHDžDž IHDž$MHHEpLDž,LxHDžDDžLIMHHExLLxIMHHLLxIH0MHHDždL8DžlLxHDžDžIHDžMHPHLXDžLxHDžDžIMHpHLxLxIMHHLLxIHMHHDžLDžLxHDžDž IHDž$MHHLDž,LxHDžDDžLIMHHLLxIMHHLLxIH0MHHEL8LxEHDždIMDžlHEHPHLXLxEHEIMEHpHLxLxIMHEHL}LxIHEMH fofoHfoL}fo0)O fDoPfDop)_@DžfoDžfoDž fo Dž@ fDo@Dž` fDo`)W0)gP)o`)wp)D)D)D)Dž D)HG fDofofoDž fofo0Dž fDofDoDž fDofoDž fofoDž fo D)Dž@ fDo@D)D)D))) )0)@)P)`)p)D)Dž` fDoPfDo`fDopDž fofoDž foD)fDofDofDoDž fDofoDž foD)Dž foD)D)D)D)D))) )0)@)PDž )`fo fo0fDoPfDopDž@ fDofDo@Dž` fDofDo`Dž fo)pfDoDž fDoDž foDž fo)D)D)D)D)D)D)D)D))) )0Dž fDomfofoDž fofDo}Dž@ fo E fo0fDoeDž` fDo@E fDoPfDouE fDo`)@fDop)P)`)p)D)D)D)D)D)D)D)D)foE)H6LJ(H HLJ8H0H LJHH@MLJXLPM LJhL`M6LJxLpMmLJLM$$LJLHLJHMLJ LML}@HuHLJ HMPLMXLILm`LJ H]hLUpHHLJ HExHLLJ LM1LJLMeLJLLLJ(L M:LJ8L0H0HLLJHH@LH LLJXLLHPMHHLJhL`M.LJxLpI$LJHMLJLILJHHLJHLLLLJLHM1LLJHLMeLJLLLJLM:LJLH0LJHHĐ[A\A]A^A_]fUfHAWAVAUATSHHDždDžlL~LuHDžLmLe DžIMHDžH](L]0DžLXLzHPLU8IMLxLyHpIMHI@LD8IADD8IF4DHDžD8DžIEDHDžD8DžID$HDžDž HDž$Dž,DHDžDDžLD8HCTD0HDždD8DžlDPM{HDžDžIHDžMHpLxMzDžHDžIDžMHHE@LHDžLxDžIMHLHEHHDžDž LxHDž$Dž,IHDžDMHHEPLDžLLxHDždDžlIMHHEXLLxIMHHE`LLxIMH0L8HEh)Lx)HDžDžIHDžMHPHEpLXDžLxHDžDžIMHpHExLxLxIMHHLLxALMIMHDžDž HHLHDž$LxDž,HDžDIDžLMHHLHDždLxDžlIMHHLLxIMH0HL8LxIMHDžHPHLXDžLxHDžDžIHDžMHpHLxDžLxHDžDžIMHHLLxIMHHLLxALTHDžIGDž HDž$D8HDž,DHDžDLxDžLHDždALDžlMIMH0HL8LxAPtLfoPfopEIGEDž` fo`D8HDž foHEDpLxEALHEEEIGHED8HEHD})O )W0)_@)gPHG$Dž fofofoDžfDo)o`fDofDofoPDžfDo)wpfDofDo0DžfDo)Dž fDo Dž@fo@D)D)D)D)D)D)D)D))Dž`) fo`fopfofoDž fDofoDž fDofoDž fDofDoDž fDo)0Dž fDoDž fDo )@)P)`)p)D)D)D)D)D)D)D)Dž@ fDo0fo@foPDž` fopfo`Dž fo)fofofDoDž fDofoDžfDoD)Dž fDo) )0)@)P)`)p)D)D)D)Dž D)fDofoPfopfoDž fDofDo Dž@ fDo0fo@Dž` fofo`Dž foD)Dž foDž fDoD)D)D))) )0)@)P)`)p)D)DžfomfDoEfDofoeDžfDofDoDž fDofDo Dž@ fDo0fo@Dž`foPfo`EfopD)D)D)D)D)D)D))) )0)@)P)`foufo}EfDoE)p)D)H6LJHHLJHH LJHMLJLM LJLM6LJLMmLJLM$$LJLHH L}@LJ(MLJ8 HuHHMPLMXL0MLm`LJH H]hL@ILJX LUpHPHLJh H`LLJx LpM1LJLMeLJLLLJLM:HExHLJLLH0LLJLLHH LHLJHMLJLM.LJLI$LJHMLJLILJ(H HHLLJ8H0LLHLJHLHL@M1HLLJXLPMeLJhL`LLJxLpM:LJLH0LJHH LJ HMLLLJ!LM.LJ"LI$LJ#HH[A\A]A^A_]f.DUfHAWAVAUATSHpL~Lu4LmLe HDžALzDž H](L]0HDž$ALyLU8Dž,HDžDADžL0MxHDždDžlIHDžMHPLXMyDžHDžIDžMHpLxM~HDžDžIHDžMHLM}DžIMLM|$HIHMHDžLL{Dž HDž$IDž,MHLM{HDžDDžLIHDždMHLMzDžlHDžIMH0HE@L8LxIMHPLXDžHEHHDžDžLxHDžDžIHDžMHpHEPLxDžLxHDžDž IMHHEXLLxIMHHE`LLxIMHLHEhHDž$Dž,LxHDžDDžLIHDždMHHEpLDžlLxHDžDžIMHHExLLxIMH0HL8LxIMHPLXHHDžDžLxHDžDžIHDžMHpHLxDžLxHDžDž IMHHLLxIMHHLLxIMHLHxLxHDž$Dž,IMHDžDDžLHHLLxHEHDždDžlIMHHLLxIMH0HL8LxIMHPLXHfoEfoLxfo0DžfoHEILDž fo HEHpIGEDž@L8HL}LxIM)O )W0HEHL}H)_@)gPHG)o`fo@foPfDopfDoDž` fDo)wpfDo`fDofoDž Dž fDofDoDž fDo)Dž foDž foD)D)D)D)D)D)D)D))) )0Dž fofo fo0Dž@ foP)@fo@fDop)PfDofDofDoDž` fDo`)`Dž fDoDž fDoDž fDo)p)D)D)D)D)D)D)D)Dž D)fofofofo0Dž foPfoDž fDopfo Dž@ fDofo@Dž` fDo`)Dž fDoDž fDo) )0)@)P)`)p)D)D)D)D)D)Dž fDofDoDž fDofoDž fofoDž fofo Dž@ fo0E fo@)foPfDopD)Dž` fDo`D)D)) )0)@)P)`)p)D)D)fDoUfDo]E fDomfDoeE fDouD)D)D)D)D)H6LJHHLJHH LJ(H MLJ8L0M LJHL@M6LJXLPMmL`LJhM$$LJxL}@HuHHMPLpHLMXLJLm`HMLJ LMLJ LILJ HHLJ HLLJ LM1LJLMeLJLH]hLUpHExLHLJLLLM:LLLJLH0LJ(H H LJ8H0MLJHL@M.LJXLPI$LJhH`MLJxLpLHHILLJLHHHLJLHLLJLM1LJLMeLJLLLJLM:LJLHp[A\A]A^A_]HcUH D^HHLTHHNpMHD EZL\0MLEM HLLMFMACLD@HDPML] DVI EPILE(NM HL\`LHE0DNMEKLDpML]8DVHEPHIM NLLLE@DN HHEHMEKLHML]PDV HEPIM wL]f.@UHSHH_Ht.H H?H5/HFRĩtH[]HH[]H HЃH|ĉff.UHAVIAULmATISH0HAT$LLEH5V>UɩLEI>MNIvHMI0L9MVL9MuwI^12I|$IT$ H)HH9Hm@1LfI>WfDA8 I>9HH=6/1oΩIެfDUHAWIH5>AVAUL@ATLMSHHGL牅@ȩL3HAV@HSAHzHHPHdHH߉l`P-L3HA`dHH`xaL`HHHDžhINƅpH``PHHHsH>H5>DGHHXDLǩLXHH`HIL9M^LL9HPHp~PLPH`PhHHHHXHDžHHH9thƩLCDSIUPHhH`I8MHL&=OEYH==HuH@L }IH5)">JDPL>pH@LEMEH}HHDžHD`HEEELMELUEHXƩLHM\$HHM,0L9fHI9Mt H<0ILH1ĩHHXLB(HHH9tũH`IL98fDLIwMwI?HM,0L9bM_M9 MMoB/LHAE1-HCHS H)HL9JpH5>H@LMFHDžhLDžLDžDžéLHHM\$HH@M40L9HI9Mt H<7I(LHHLIB7H@L9©@1LnI?fDAv AHCsLH*=Ix@LV=L0HHM@HHILHDžDIEVH@H@.H5>DD L0Dž8DžHHPDžX_©LHHML$HH@M40L9NLM91LW~DHs61L=~HA1L~H1@7I?LsHDSH =Hx@H5=MMNL5oIAPEYL@HHLH@fH H5z>HDžDDDžDž(L0Dž8LHHML$HH@M40L9LM9F1L}HtHHH`HhHwHP~PLPH`PhHXHzH+LF H5i >AxLppHHXLXHH`HIL9M^LL9 HPHp~PLPH`PhHHHHXHDžHHH9hh HHtH蛽HH`HhH닺k H4A AHH`HP~PLPH`PhHXHzHLH=,/1éHH`0HӬHӬHӬHԬHӬHԬff.HGHxUHAWAVAUATISHHL/AU@SLpL@LH5>AƉ@LP覽HKHyHL?AWLK0HDžHfL=MYHHHHdAlHLXUdSE{H`LXpHL@0DH@L=H=L`L@H5+ >HDžhLDžLDžH@蒼HAE$H`Z L3HA`dHH`LS[IJxQLLH@Is0LXMCHPHH5+>GHDžDžLDž蹻LHHxMMHpH@M40L9HI9dMtHILHϹHpLxB7LPH@IL9t谺L@HIL9t蔺LHHIL9txLxIt$IT$I<$HpI0H9ID$H9MHILHI<$LHXD HIJ00MByHL==H@H@H5>HDžDžHLPDžXH@ HAwH`H{[LWARd{H`HLLHp@LXL=HPH`L@H5>HH @HDžhpLDžLDžLDž/LHHxMMHpH@M40L9LM9v1L(uHp@HPE[LH@HP L@LHDžXHPH595D`LpDžxvHMGHHL9dHHLHH9 H@L~@L@H@H HLHDžIHL9tMH{dSL_E{@1LsI<$I\$IHpL9tHĨ[A\A]A^A_]f.E^HAA tHSH0HH8Hr1LA H8H5/;L8H0IL9t8Y8LSIr{H߈8H`D[Pu 8HƅE1H0HHHDžLSHH=>LB@IrLLBVHDžFDH5->LXHHPHH @LLDžLDžDž輵LHHxMUHpH@M 0L8L9HH98MtHILHdzHpH8HPHxH7H@H9t袴L0HIL9t膴A L3HA`PLSL[H@I{0MCIBHH5,>HPHDžPLLXDžLDž`LHHxMMHpH@M40L9.LM91LYpfHp@DDI<$VHtH1 LHHHHfD`ZHH`d|L3HA`P6HKHXHDCLZ0HqLH@HDž^H@H5'>HPDLB0 L0Dž8DžH޲LHHxM}HpH@M40L9LM95Mt H<0I LHHpLxB0f.LHH5=Ix@M@HHHXH @HPH( HPH5w>HDžH L0Dž8H@DžHDžX贱LHHxM}HpH@M40L9 LM91LmLLCHDžL8ILƅIxDWHLXLHDžHJ LBLuHH5n>H@DLDž跰HMNHHL9' H8L HH9e H0L~0L0H0HU HL HDžIHL9t莯HsL LLf=INP[LH~LH5X=H HH@HDž(WHP0LpLX@L`MFHH5x>LPLXHhDžxLDžLDžDž LHHxIUHpH@I0H9cLL9MtHIn LH6HpLPHxH@IL9tL8HIL9HHH@~@L@H@IHEDHHXLHDžHW LGLDHEH53>HH@Dž˭HM^HHL9tL8LIL9>H0H~0L0H0H.HHHDžIHL9fD1LNi!fALsHPL%KHLKHL `=IvHZPLELDFL}H58 >H@LXHPH@D`LBLpL=H}HHDžHL]EL}ELMELUE*LHxIUHpHM40H9uLM9/Mt H<0I}LH?HpLxHB0HH9ssMH@DQH5{>HJ@LXHDžHAxH@LBH@PH'oI`HPDpLDžHDžLDžLHHxM}HpH@M40L9LM9!1Lff HpGH{AH [LL6#KLEL[H5=LOIVPLH@HHPEQLL=LLXHH H5>L0MFHDžDLHDžLDžDž(Dž8觩LHHxI}HpH@M40H9LM91LeKHsDCHL=HHLP@LvHXH5>LHDžA~DL@HHPHH @LDžH Dž(L0Dž8蛨LHHxM}HpH@M40L9LM91Ld?~D[LPH@HXMQ0MApHPH5>LPHDžXD`LDžHDžȧLHHxM]LpH@I0H8M9HH98Mt I<1ILHҥLpH8LPHxIA1H@L9""AD1LFcHp;f.1L&cHpf.AED1fD@7HHAD1@7HpHtHʤHHHHHtH葤HHHHqLHH@HDžIP H5|>DHM@#LDžH0营HLD[1LaLpDDHpH0~0L0H0I~HH0~0L0H0I~HA Hpn1L`HpA*A+A Lp1L`M1@7Hp @7HHDDHHA[AH髺HHHﺬH乬HߺIaHHH郺HйH鯺HHH闺H鏺H釺fUHAWIAVAUATSHHHHILHVHHHDžƅ@A_LHH5=LH֢H0LPHDž8LLpLHHLLLILLLILH0IHPLILIL0IL(IH0ƅ@LPHDžXƅ`LpHDžxƅLHDžƅLHDžƅLHDžƅLHDžƅLHDžƅ H IHHHH0HDž8ƅ@HPHDžXƅ`S@PM' LA$HPAoaIglobal_lHHwL`HHPfDNF dLH`HDžX ƅki\L`HPIL9tL`oaLHshared_lH`HM^HLLPfACAC dHDžX ƅk[HPIVH9t苟H`HLHshared_sH`HLcHLPAD$toreHDžX ƅl[HPLkL9tHL0E1HhHLHHLX]@DSPEBAv AH`HH9t軞LH HAhL3HHA@ILg D9I_IW H)HI9LJL`H HLQLHPPH`HH9t#L HLAQH5Lǂu#HIuH9\ꝩRDHHHhRHhH5C/}LHHXASHXH59/QH HH`QH`-L`AƃP @IA HPL9t=LXH0IL9t!HH;Ht HIEH9tE[L H0HAhHH(H@/fE1E1sMOIyyM7LAP IL`ZyIL`d<M'LA$`HMWL0HHMZL8HHEWHPHHHXHHHHHH8HLLpHHLxHHH@H0HhH8xE[HXHPHPHXHHnAHDLLLLLHHHH8HHHHHH@LLhDLLLLLm=LL (=LL=HH==H H5y=H(H =H0H=H8H=L@L%=HDž LLXLPLHL`Lw=LHL-/=LPL5 =LXLe=LL@HH5D>HH @HDžhLpDžxDžHDžDžDžDžHDžLDžLDž LDž LDž L Dž( H`H0H@LHDžLHDž(Dž8H@DžHLPDžXLLXHHMQHPM40L9n:H I91ML`LB2HPIL9tLHpIL9tLHIL9tᐩLHIL9tŐHHpHH9襐xL-=L=fHL5=LhL% =D~hL=LhL-=D~hL=LhL5=D~hLhDD~hDLhDD~hL%=LhDD~hLO=LhD D~hLhD(D~hD0D)PDD)0D)D)D)D)D)D)pLhMo~hLh~h)P)0MUMu4EoHDžDDžLHDžDžEbHDžDžE^HDž4Dž<HDžDžHDžDžHDž$Dž,HDžtDž|HDžL`D0fo0DfoM`Dž@fo@LP)p))DžHDžDžHDžDžHDždDžlHDžDDžLHDž$Dž,HDžDž HDžDžHDžDžHDžDžHDžXDžfoDL0L8LPDžL LXL(LpLpLxfoLxfDoLfDo fDopLfDo)Dž0 fDo0Dž fDo)D)D)D)D)D)Dž D)LLLfDoDž LLLLL`LfDofo LhLfo`LfoLR=Džp fopDž foD) D)0)@)P)`)p)LLDž foL0L8HpfoHxHPfopHXfDoPH0H8fDo0LL <=LfDoLNIDž fDoDž` fDo`Dž@ fDo@)))D)D)D)D)D)D)Dž fDo HPHXDž HpHxDž HHHH==HfoH5=fDoHH =HfoH=foHH=HLHPfoLDž foD) D)0)@)P)`)p)LLLLfoLLLLSAUATL0ASAQLpDž foLLPHLHHH0H))DžDžDžDžDžDžDžH Dž(Z8H@MF LHH5>LL8HHIzH0M40H9j0H I9'Mt H<0I1LH"HLB0H0IL91L@7MMgI\$sLL0A$HDžM^IMƅLH0HDž8ƅ@Md$P1211H=AwEd$HpHDžx L0L8LHPLpLpDLXLLxLLHHLLLLLLLLHHLLLHLLL0L8H8H==LPHXLL%=LL=LLj=L L =L0L=H@H =HHHҳ=H`H=HpH=>H(H5W=HPHl>HH @LL@DžXDžhDžxHDžLDžDžLDžLDžDžLHH`HH5>HDž Dž Dž Dž FLLXHHMcHPI0L90L L99.Mt H<0I-2LHTHL`HHPIL9t6H0IL9t!HIL9cLAՃZLH LHDž(HH0HHLPIH`LHHHLH`HH ƅ0LHDžƅHHDžƅH0HDž8ƅ@HDžALHDžAEE1LpHDžxALvLHDžDž@ADžXDžhLhLxIL@L9t莁L`L HLAQLH5/+f XHPL9tNL`HHLPLHPusPL9t ILD9IwIW H)HI9|0JL`H HLQLH5?/ye hHPL9t蜀HHHhLHHA@DžhfDL9tVLHHAhLHHA@DžXL9tH1H8L#HH1HA$0@AĉP(HHHhLHHA@HHL`HXH8Mu5LMIMtE;a ~MIMuH98t D;` LHH`HHIPHLD` L`8HP HL`(HH@0@8HpptLpHHuH98tJ A9J @DDH8LL8vHHH8HxHHp(*/LHHxASpH0HHH;L`HIL9HHL@D~HHHH0DHD8HHLHDžHH;t}@HHH`HXH8Hu4fDHHRHtD;b ~HRHuH98t D;f LHL`HHIPLL}D` L`8HP HL`(HH@0@8HpprLpHHuH98tB A9@ @@ωH8LL8tHHH8HxHPHv(+-LHHhHARpHLKHHL9LHLIL9HHLD~HLHHDHDHHLHhHDžHHH9Ht$H!HzHH0H8HHHD~HHHH0DHD8HHO.Iz(I9t!H8LH {H8LHLHHzLHLSI_H L`L(HIB`HSLHV=LLzL0H`He=L8HH2=H =pH=+=LMBHH5=HHH @HDžhLLLLLHDžDžHDžHDžDžH`!zLLXHLMJHPM,0M9"LM9MH`LC,HPHH9t,yL`H0IL9tyHHHHH9txHPHHH9txHH HH9txI?L`ILL0ƅ@HDž8Ml$L0El"H==1L52HIwEWLHpMM@H^HxDK@D LA=H`Ht=LpL5=LL-Ϧ=HH =HH==HHH5=HH @H LHDžD0H@PLDžDžLDžDžDžHDžLDžH`wLLXHHMYHPI0L9#L L9 Mt H<0I%LHuHH`HHPHH9`zvVHtH QuHHHH^HH~HLHHHHhH~HIx(I9t!H8LHuH8LHLHHuLHL'H<2I{LHtHLI<4I!LHdtLKEwL HDž( H0MLPHXHpL LxLD0LH@LHHPLHL`H8HhHpLxLLHLHH r=LL-=HHĴ=HXHLHHH =HLHH=P=L0L8LL=HPLXHH=HH5=LL S=LL-o=LL%=HH=LL5K=LMCH qH0H`H5 >DžDžDž(Dž8L@DžHHPDžXDžhLpH`HH @DžxLDžLDž HDž LDž Dž "sLLXHLISHPI0I99 H H9H1/LDwLLH5=LDrHMD$HpHL9bHLHLhH9HXH~XHphxHHHHDžIHL9thqIWHzHHHLHDžHL0HHHPHpLILLH@HLHILH8HHHxHLpILhIHHLLPHHpƅHDžƅHDžƅ L0HDž8ƅ@HPHDžXƅ`HpHDžxƅLHDžƅLHDžƅH`LHLLXIIHPHIHHHLHIH8HLE1HHDžƅLHDžƅHDžƅ L0HDž8ƅ@HHDžƅHHDžƅDžPDžXDžhL@HHpHLHHA@hL8LHLAPLH5/SHpAH;t/nEuAH3DXHhE*H`HLH@HA@XL`H HLQL莣HPuDSPDAH`HH9tmILmD9nIGIW H)HL9JLHL HLAQLH5ˏ/RHPAH;@t-mEH;DhHhEyHhHH HH@uHHHHH@L`IL9tlL31HA8IH1H0PPAH;Lh-HXHAHH8H@M`IXHMu.@LM[MtE;c ~M[MuH9t D;` H`HH0HGlD` L`8H0HP L`(IPH@0@8H(1aL(HsHuH9tz A9x AA񉵰HLL0cIxH0HPHp(PHHAHHxH@M`IXHMu1LM[MtE;c ~M[MuH9t D;` H`HH0HkD` L`8H0HP L`(IPH@0@8H(`L(HH9tHuz A9x AA񉵰HLL0zbIxH0HHHp(L=HI=fHH5ޟ=L%?=LhD~hL5=H=;=HhD~hL=L-*=HhD~hLhDD~hDLhDhD~hL5@=HhD~hHɴ=LhD~hH0Lhx~hH XD)p`D)PD)D)D))))LhIO~hHh~hE_p))pL HQTHDždDžlHDžDžrHDžDžEaHDž4Dž<HDžDžHDžDžHDž$Dž,HDžtDž|HDžDPfoPfDoDfDoDž`fo`DžfDoH0)P)`D)pD)DžHDžDžHDžDžHDždDžlHDžDDžLHDž$Dž,HDžDž HDžDžHDž8DžD)LLLPLXDž0 HHL fDoL(fDo0LpfDo LxHfDopHLfoHDž fDoD)Dž foD)D)D)D)))LHLHLDž LLL`LfoHhfo fo`LLfoLLfDoDžp fopDž foDž fDo)) )0)@)P)`D)pD)LpHxH0L8Dž HLLpHxHH=fDopHPH ȋ=fDoLXL _(IfDoPH0H=L8LLp=fDo0D)Dž` fDo`Dž@ fDo@D)D)D)D)D)HH5=LLpDž foLLDž L0L8Dž fo LLPLfoLfoLLLfoLfoHPHLpL)))) )0)@H`HpHLDžXDžhDžxDžDžHATARAPLAUAVPAQLDžH`H@HLC H5B=@bHLXHLHWHPI0I9 L L99 Mt I<4ILHN`LH`HAHPHH9t/aLHHIL9taLPHIL9t`LH0IL9t`LXHIL9t`HHHH9t`L`HIL9t`HhHHH9tk`HpHHH9tO`LxHpIL9t3`L8HPIL9t`HH0HH9t_H@HHH9t_LHIL9t_LHIL9H1UH^H1;H.IGLPIL$HpHHh|HDžƅA11LH ]wM1HL@HSHLM9 LLhLLpLLH@@LHL)H=LLKMM9 HI9H=Y>MH >H5>IIzHI I)L)A¬ADHHLLCL0M^BƄ*HL0L9TLH0L@HLhHCHHEWLLpLxH8HƅHDžAIL0LDLP LH8L0L8LXLH@HLPHXL`LhLpHxHDž LHLLH0DžLPL8LLXHLL =LHH @=LLG=LL=LL-=HH=LL=LL =HH ܨ=LLȧ=LL=DžDžDžLDžHDžL Dž(L0Dž8H@H @L`LGH`DžHLPDžX Džh [HLXHHHzHPM,0H9gL M9Mt H<0I LHYHL`LB(HPIL9tZH0IL9tZHHH9tZHIL9hH1BL"Ix(I9t!H0LZZH0LLH=ZLLIx(I9t!H0LZH0LLHYLLDDHH0AHDLLLhLLHHH HH0H@L8LL@L8LHLDLLH(LPL=HXH5=H`H Q=LhL%=LpL- =LxL5P=LL@=HH{=LL P=HDž HHXHPLHLL =HH==HH=LL=HH5,=HH @HPLpL@DžDžDžLDžLDžLDžLDžH Dž(L0Dž8H@DžH DžX L`Džh Džx H`WLLXHLMl$HPI0M9 L L9H1AqH1t/WHxIL=H=HH5=HHDž.I)A.LL)H&Hƀ.HDž.&HH=r.1C\H1LHH1HYA'11LH =(L0H8L5 =H}=H==fDDHfoL)@A1LHH =99oH)H1HNH1HAT$HpL0H@H_ LGLHDžxHpH5F=H|=HDžFUH0MT$HH8L9L@IFLhH9HXL~XHhHH0L@HDž8IH0L9t#TMOLHH0H8MaDDL锻DDLAAA.$LEL$LPH@MB H0{=LLH5=MBHDžDHDžSHPID$H0HXH9L`IMLhH99HXL@~XH0h8H)HPL`HDžXIHPL9uuAHtHiQHHpHxHLH=r.1CXH=d.15XHX~XHphxI|$HkHX~XHhI|$H0{HtHPH8HHH0BHtHt|hPHXH0H8HP L H1@7H$DDHgA`@7HXH0z@H8H)HX~XH0h8I|$HPH=8K@7HHpLH=.1RVLH=p.1AVI hIgHiHjHjHjHhIgHkHjH#kHjHaiHakH=kHlHrjHjHjHgHjHxjHpjHwiHhHVjHiHcUH D^HHLTHHNpMHD EZL\0MLEM HLHEDNMEKLD@ML] DVHEPHDPILE(NM HL\`LHE0DNMEKLDpML]8DVHEPHHIM N LLE@HMwL]ÐUHSHHHhu-HHpuHS1HJ@ƃH[]ff.UHATISHHtHtxH)HHw(HW`H ^HDLGH@HADHc>L%v=gH0LHH5p=H`H@HDžDL Dž(Dž8H@DžHLPDžXDžhGLHLHHIHI0L9 HH9MHILHEHf.AуZIL`dwIL`AwPxbL0HH=Y/It$H™MH0HHELHLMWHpEOLF`IMZLpLm=LFH5=HDžxzAKH0 IHt=HL8H@H IH @HHiDH(HDžH HDžLLDžLDžDžELHLHHIHI0L9HH9M H@HHHH9tDH0MD$L9tDE]E_PAHAH8H5~4")H8H5]0)OA HW/ANIwL%/EWHLLJ`HNL6H5IA~DYLH @L@HH(H LLLB4H H5e>LHDžDDHDžHDžDžDžDž(CHHHHfDLHHH9tBA ^ALpH(EL%A/L@IQ0MAH@HpH5 >HLHDžxDDžLDžBHHHHLHHH9fAAOHH1HL@HHIL9tAH0MvL9tAIL`PM'LA$`LIuMUI}HM$0L9I]I9`MtHILH#@I}H8MeB'HHH9t AL0HIL9t@HHHHH9t@H[A\A]A^A_]LRHTLH H IH(\IAOP : H8H5y4H$H] HH5Y0H8$HD(DD OfD1LI}DA 'E_PAAAt AH8H5Y0H @$H 2 H H8H5y4$H DDD(f.DDH:DAwPL HDž(MD$ƅ0L HIHDžH(HHLƅ`APd_6L5&R/&HHHHCHHH;H IwL@EH LVHIHDYEB H pIH(LLPL5l=HH>DL=e=DL8DL>H0H=IL`L0H@H5=HpH @LEMAHDžH8LHDžhDžxL}EL]EEHUH}LEE=LHL8HHIH0M<0L9cHI9MtHILH;HLIB?H0L9tDQDp}9HM^HHL9H(LHH9H L~ L H HHLHDžIHL9tT8APHH1HfDIGLL`H5>LHHDQD`n8HM^H HL9I\$LH9/H(L0~(L(H ((HHLHDžIHL9iG7_fHILH6HI@HtH]5HH H(HqH8H5}p4H~H_(D DHH1JHfDfDH8H5O0H H (DDH8H5O0HHt3HH5o4HH1HfD D(fDEWPAAH8H5MH8H52H8H5H8H5?1@7HofDAP H8H5zH8H5vH8H59qA jH+H/AMODXI|$`AwDIHMAI L >H(AEPLDqHH @LMD$L@H H0@LH5=HIHDž8DPD`DpHDžHDžDžLDžDž4HHHHafADH8H5L0HHD DD(rf!fDH8H5uA L5FM AIOD`ADIHH H(LQLLC`H ->AAREKDL@L LLLLCL牕BH@H5=H`H @HDžDH0Dž8DžHLPDžXDžhLpDžx@2HHHH&DDHDH(~(L(H ((I~HD HdH8H5J07H8H5j4A HbMXHtH/HHHH7H8H5.[H8H5*@H8H5%\H8H5 AMH8H5Ȅ=H8H5H8H5H ~ L H I~H5HH APHC/HMHEH8H5 !H8H5΃H8H5Ƀz.H8H5HHHMHdLH%MHTLHLH`LHH @HDž(BH`H5=LpMC0@LPDžhDžxLDž+LHHXMVLPH@I0M9 H`H9 Mt I<1I LH)LPHXA H5L&yHHHHDžHHHƅ`d LHIL9Hc*>fDqfDAHsHM'L!/LDL[LX=LNHNH]a=ICPH5>AyDyLH@LL~Q=MCH(H WH0H5D=HHDžDDžLDžDž(Dž8)LHHXMNHPH@I0L94L`L9MtHILH'HPHXL(H@IL9bD1@7I<$HKsH=W=H/'LMHLAH~>IDLS@L P=H @LHDžExLCHH(H5=HDHDžLDžDži(LHHXIFHPH@I0H9L`L91LbHPfDH5A0LA HSHL c/'LMH~P[LHJMDH,>LL=V=L *>AHH@H(LLN=LLFH5=HHDžLLDžLDžLDžDž'LHHXIFHPH@I0H9sL`L9MtHILH%HPHXH(H@HH9v%lLKH=ٻ/[L(ML('H5T=MYMALDH=]=IOPL >ASA@LUMGPHL+M=H@H@pWHuH5M=H}HHDžH`ELUEELME%LHXM^HPHM<0L9fH`I9MtHILH#HPLXHB?HH9+nfD@@&L{L\/'LLMDH [HMWH=S=HJPHL#>L= >EJHpH(H H@LPLK=HhH5=LLBHDž(0D@H`DžxLDžDžLDž#HHH@LAD1L1LHP f. HPH{LH5> L_LECD@L@N#HMWHHL9HLHH9HH~LHH HHHDžIHL9!"@AXD1LHP?fADADHtH HHHHO1LMLPH~LHIH HP DDHP[LPHH3H7@H?H'@H?H?I(@H?Hw?H-@HGH8HxHxUHAWAVLAUATIH5=SHH!WHPLH( L+HAU@L3A1HAH H1HpHH(HsL;HLFEDAWLSHH HHHMZEA AƄEL;HA`PL+HA`Z-HH`dtL3HA`xHH M=[HDžHz HLBH@HHhH5zI>Dž-HHHHHHH9ggH`HA0HDžhHHH`HHfDpHsfo5 >{P@)Iound - 1H0L@@HHDžHDžeHhTA *HHhLtHAu*LHApJL3HA5{LH4L=HDžIH LH"HM@H@H5=LDžxHMNH`HL92HLHH96HLpD~LH`DDhHw6HLHDžIHL9tLHHA.1H ={P  L3HAhjHHp<EAAvHL3DHHJHHHDžƅA`LZNHA`Ld8HAA d*@LHIL9tDHHHH9t(LH`IL9t LXIt$M|$I<$HPM,0L9 I\$I9uMtHIcLHI<$Ml$LB/HpIL9tHHPHH9trHĸ![A\A]A^A_]Á{PEHDsL I=HDžHr LRLH==HDLDžLܙLH5^=LH@HIHLI'HL9|fDlfDAkDH{LpL5A=II H5m>LGHpH@HDžxAPLMALDžL HMVH`HL9-LHIL9d2HLpD~HH`DDhHT2HLHDžIHL961LI<$DHAx {PAkHHAvHHDžEELWHH@LDƅHLH0HHAL@H HPHDžHLIHL@ƅPH H0L8#H{LL@LW>Mn@HHH @HwLLHDžLDFH0H>=H5=L8L=>DMFH@FL H(DžHLPDžXL`DžhHMMH@HL97HLHH9:HLP~LH@HH:HLHDžIHL9tLLHLA L!HIAL9tf*DžD,tЃEEuLHEILLAASpLKKHPHHHMAL@LHEPDL<=LHDL@HPH56>`H >DpL >LL5C=HH>HH>LLLLGHH @HH5=HDžXLLLDžDžDžLDžDžLH0:LH Dž(Dž8CHHH)HIL9tHM]L9tH{.'L LHHAQpDCEWHL=T=HHHHPL >HD LLHH@H0H5=H8tHHH`LL@HDžL@DPL`DžhLpDžxLDžDžHLHIL9tLHHHPmH0HHH=2/HpSLhLX@HL`HHLy>HH5=H @bLL@LpHDžxLDžLDžLDžHHHHHHH9t>H HLQpHSLHH5>MAP[LH@HBLnMAHDžDXL LLLHHLH5B=DDžLDžLDžDžDž(HHHLHHH9t&HIL9tLH`IL9tHHPHH9tLH@IL9tLH0IL9tLH@IL9tHHHH9 eHHXfDAqDD L+HALL;IƉ`I}ƅHHHDžA`d(H`IP[jHs[H==L=E6=H8LPH0LFHH5+>LXPLEp@L>HH`HxH@HHߺHH5=LL@L0HDž8DPLhLpDžLDžDžDž8HHHHHH9t HIL9 L HHDžHHPLIHLHL LrHƅHDž(ƅ0HLHDžƅHLPHDžXƅ`ED[PD A3AE7LL1E1L584=L=h;=L0L[EHDž8Iuƅ@DKH0IK9I3IDVLPL5>HLLƦ>L^`H(H=gHLpLH @HH@LL`LFH5|*>LHDžDDH L0Dž8DžHDžXDžhDžx HIFH0HH9%-MUL L91HH@~LH08H1HH HDžIHL9t L HDžM^ƅLtsHH HPLG0L(LLL=>LGH@HH5a2>HDžHLDžLDžx HPLSHHXL9+INL`H9F0HL~LHH60HPL`HDžXHHPH9tV LHLHH ,>H0H~@L8LLLLFLL2>HH52>IHLH>HH @HDžHLLHDžLDžDžHHHLHHH9tBHIL9t-H0IL9tLHPIL9tLHIL9tLH IL9tHHHH9@ALH1E1D L5#/=IWHL=K6= I<$fH0H5MHPƹ{P+HHho)L3HAp3LpL+LHDžxIFLpIHLHHpƅLHDžƅAxLLHLALLIjHL9tYHHxH HHH{HL HF=LLI@0H@L_M@L--=LH HDž(ESH8H5=HP!L0D@DžXL`DžhHpLIuHL9tdHHHH9tHHL L+HDžLLPHHH@LXILILxIHhHHHƅL HDž(ƅ0LHDžƅLPHDžXƅ`H@HDžHƅPAxL3H0HH8AHH@HH0LP HDžXMNLLPƅ`&LHHAHSHLHHOPH0L@HrHHH >L8LHDžDVH5+=LLPHH]>DLX>LLGLHSH`HH5=H0H@LLDžL@L Dž(Dž8H@DžH1LLIHPL9tLHIL9tuLL HLA LHIAL9t9f*8A}ELDHD,HHAAPpL[HDSHppLHISLXL0=LJDLPH`HH5 >H >LLDLę>LL >HLLL@H H H@H0H5|=HDžDLDžDžLDžDž(Dž8L@DžHDHIEHHH9&LLIL9[5HLD~LHDDHK5HLHDžIHL9tHHHH9tH`H52MHrSE=LLH=!=Iv MnHDžHLDž{LMH@H5=HLHHH˽HIL9t6DCH LH==LX LpHDž(D0LL L@DžH~MH5=LH@H@HLI HL9tSHPH0L`LHO@L8Hh`LL@HPL5f>HpH @H5L=LLGLHDžXLxHLDžLDžLDžMHhLI HL9tEtHHp00HH5M L LHLAQpLDCLPHDžXH0H8MSPDžHHLpL-)H=D`HL==LLLLPL*=HHLHH@HH5=L@LMCHxLDžLDžDžHM]H HL9w!HXHHH90H(L0D~(H(H D(D(H0HLHDžIHL9tHIvH9tLHIL9tHHE11H M1HXHxE11H MLH`IL9t&LHPIL9t L0H@IL9tH8H0HH9tHL+HDžXƅ`HHPHAxuHKHyHHHXHE11H M/LƅpHDžhIL`~!HHh}{PpEtL;HAp -HH5|2qSLLL-5>IpPHPHXM@HLH5>HHE=LLLLH LH(H@HP.H`H5=HDžLHLL0Dž8L@DžHDžXDžh^HLIHL9tLHIL9tHHhHL-.L MDHHPTL[DKHHI{LxHLHOL HL(HD@LHpH`LhHxL`HhL H(L0L8HPLXHpHxLHDžHLLLHLLLِ>LHLLPHXHH>H`LhLL3=4HL`LL/HLL .HH d>HH_>LL=>HH5T>LL^>HHh>DžDžDžL Dž(L0Dž8H@HpH@HPLHUuHuH5=LELCL@DžHDžXL`DžhDžxE L}E E E HEE HHHHIL9tqHHH@H׳LH`IL9t;HHPHH9tLhH@IL9tLxHPIL9tLHIL9tLXH IL9tHHHH9tHpHHH9twLHHpIL9t[HPH0HH9HLHH @LF L-5>LLLFH5+>HDžLL Dž(LHMVH@HL9LH IL9HLP~HH@HHHL HDžIHL9JJ1DYLL5>HLL>LVPH@LL0HHLLLFH5>LHDžDDHLDžDžDžDžH0IFH0H8H9IML@H9]HL@~LH08HMH0L@HDž8IH0L9@DCLLLm =MQ H5>H@ZDLMALHDžLDžHHH蝯LHHH9D{PAt AH@H5 MH\L[DkPI{A--L>L=T=A-DOHH>HDžHp0H=>HHLhLPHPD L0L@DžHDžXpMH5)>LH@HHKHyHsPHLSIzD_+L@H=%=D@LL0oLLH5=HLLItH0L9tcsP*H3.=H /HDH;ML.H=L.>HHLHLH L`HLQpHCL[LPHXMLPH`HHhAzL`LLHHhLH@LHHHHHH)=LL.=HHH=.LL=LL ->H H5&>H0HgJHDž HHHL`L=34H@H O>HH==LpM{HLHHHHPDžXDžhDžxLDžDžDžDžLDžDžDž Dž lHMH @H5=HHBHHH(HHH9tH`IL9t~HPIL9tiLH@IL9fHWLXH H V=D(HPHx`L- =DJD[LxH=LDL+LH DPLL@HpH5<=HH @HDž(D0D@D`DžLDžHDžLDžDžHHH蝩LHHH9 HtHB HH`HhH@HtH#HH`HhHKPLH5>LϸtH5>LϸHHHPELIHHAPpHsI>HL*=IVLxPDSL5=LNHH5 >LEYLLHL==H@H=>H0L8LHHLpHHDžDD LPDžXL`DžhDžxDžLiLH5d>LH@HHLIHL9tLHIL9tL[H`LHH L@I{H`LHDžhWH=>LpDžRhLH5>LH@HHLI,HL9tHsLLI{ ISLNHH==HHDžEQLDDžgLH5N=LH@HHLIHL9tuHLHPHXD @LKIyL7AHLK{PIqV"H=s=LfLMH5K=HLVHpLIHL9fffDLHLAPpHHLIHL9HD~HH`DDhI~HH~LH`hI~HL0DSH =HDž8ISMK HPH=˺=HL0L0D@DžXeLH5=LH@HLLIfH0L9QHH5LyHhH5oLfH`H5\LH蜗 L yHHAHsLLH=~>HIJ0MrHVL b =HLHDžDZHH=8=LHDDžL`LDžLLa.HH c=LL h\JLL-m-=HHH=S=HDž8HpDžH`HHL0LPL0DžH@HDžLDžLDžDžLL Dž(Dž8xaL0H5=LH@HHXLIRHPL9tAHIVH9t,HHHH9t{HLHDžHHLX DžH=U=LpH0LL`L0H5&=LH@HHLI~HpL9tmHHLPL;8hLHApLAuHSE1HrAAHHAPp{HL0D`HIsMS@L@HL@H==HPLLHHL0HDž8HXLpDžxDžDžD_LH5=LH@HߨHxLIHL9t ߨLHIL9tިLH`HPHIL9HtHVݨHH@HHHDHtHfݨHH@HHHYHtH-ݨH8H0H8H0MHtH/ܨHH0H8HHtH.ܨHXHHHP-HKHLC=LP LpHyLLpHDžD_H=7v>LDžD7]MH5v>LH@HݨHPLIHpL9ݨLCH@LL5=H8L0M]@L t>IPHHLt>L`LrHH==HL MuLpL@HDžLHDž(L@L0Dž8DžH\MH5=LH @HܨHLIHpL9llHD~HH@DDHI~H]H~LH@HI}HpLKH`L=HO LwIqH=9u>H`LPHDžhVLDžpZMH5t>LH@HlۨHPLIHPL9HtH٨HH H(H{PLKL H=s>LLIQr /ZLLH5s>HڨHLIHL9٨@HtHبHHHH|H~LH08I~H0H~LHH{HPH~LH08I~H&HH5/D謽jL/L5QJL=/KLHHHPO4H IHHQpH{M]H@MUDKLH@HWHHLrH=DPL pr>LLlr>`H5sHLL^r>HH==LL5<LL==L@HxHHLpLpLLHDžHLDžLDžDžDžDžDžL Dž(H,WLH5=LH @HרHLIHpL9t֨LHIL9t֨HSH e.{PH=3*MHEL`HHLZIp0MhLLESHH=p>H`HDžhDpLDžHDž5VLH5p>LH@H֨HLIHL9tըLKLpLIK MSIyHpHDžxWH=d=LDžLULH53=LH@HըHLIkHL9HH54DHML5G,KL=NJH@OHHHP0LIHHAPpHKMEH@MmD[LH@HQH9HDWrLL5HHHDPL7=D`Ln>pH5HLLn>LL-n>HH==LL= =LL5<HHL@LLHDžHLDžDžLDžDžDžH L0L@LPDž(Dž8DžHHTSLH5=LH@HӨHLI.HPL9$$L[LH<Iq H=k>MSHMqLHDžEBHDžDRMH5k>LH@HӨHPLIHL9ssH5 4HDL MipE HHAՃ{PLJ)KH=ɐ/L-MH JJMLDHLDHd%ML5.IDLDHHPH{-LCHHPD[H`MHI0LH@DVAyLH5k>LLL ՕHLLLDpLHH=k>LL5<LL==L`H0DLHHH Pk>HH=LLLHDžh LDžDžL Dž(Dž8L@H`H=Y=HpHDžHLPDžXDžhDžxDžH&PLH5=LH @HШHLIHL9tϨLHIL9tϨLKLLIz IJIqHH=j>HHDžD^LDDždOLH5i>LH@HϨHLI>HL9t-ϨHSLH==Iq MYHBHL0HDžD@LLDDžNLH5`=LH@H+ϨHLIH0L9HHAQpHsLDsH=<LHMS@L-,<HVH`L =LHDžJHH==DMsLLL0HDžDžL Dž(MMH5=LH @HΨHLIH0L9jj@H5/SHPHHDžXHO LwDžxH==HP`HpMHMH@H5=HoͨmHD[LHDžHO LoDžH=F=HDLLHMH@H5E=H̨L+HAhH5u"H5o.t{PH 8HDHpLpLxL =HO0HFJHLwH=g=HpLL0HDžxLLDžHDžKMH5=LH@H̨HpLIH0L9""H(D~(H(H D(D(I}HXHD~LHDDI}HH=c>LJLMH5c>HL4˨@7HH`LH5LLLHWPLAM]HOL- =DKH==HApLL5<LL=<HpLLPHDžxDLLLDžLDžDžHDž:ILH5=LH@HɨHLIHPL9tɨLHIL9tȨLKLLpI{ ISIqHH=Ac>HHDžDVL DDž(xHLH5c>LH@HȨHLIRHpL9tAȨHCL0H==Iq MQHHH0LHDž8DALLPD@DžXGLH5t=LH@H?ȨHLIHL9""@7HH`A^A HHAH ?@J{PLmKHIH5.L5MMELMLELEL-/HLMEHP"H{LHPDKHPLGLH="HHApLLHLLLD`L `>pH5`>LL4=HHPLL-`>LL5<LL='<HH={=HPL LLLL0HDžXLDžLDžDžDžDž(Dž8H@HDžHLPDžXvELH5=LH@HŨHLIPHL9LLLZ/L-4ML H5h.LH?JLLHHSLH <HDžMS HH==MsLDžDHMH@H5G=HĨAAHAALM HH@L0H=/]>D0LL0 DLLH5\>H|Ĩt@7HH@r HH0@H8H0s`HXHDOHH=j]>HDžHJ LrDž8L=<HLD L0CMH5]>LH@HèHLIHL9t¨LS{PL=JL\>MEIz.DGH@H=\>HDžHHF LvL`DPLH@DžhfBMH5_\>LH@H¨HLIDHL9CCHHEHH UHHHHHHqHRHHHHHHHHHrHoHHZHrHHH{HHHFHHwHH~HH~HHHHHHHH H:HHHHHHHHHH%HaHHuHHH*HH߫ff.HGH8HxUHAWIAVIAUAATSH/HPHD`dtM/LA`xAILPILHH HS@AO'HL H5= HL轿ILI7LH`MP LA`IZL`d@LIvM^I>HM,0L9M~M9MtHILH耽I>MnLB/HIL9thHĨ/[A\A]A^A_]fD KM'Z8LA$`M'd!LA$`x H LpDHDž(LCLƅ0MMMT$L LpHDžxƅLHDžƅE>A A#XM_LH5G<IH0L HIM@HH@HDžBcHHH5h@>DžLDžHcHHLHIL9t踼M_A IS+<HpƅE_H~HHpHDžxt APUwLH5<;HDžIH HDHM@H@H5D>HHDžHmLHHpHMJL9`mLL IL9qHH~LHpxHqHH HHDžHHH9t6AZwIWELML(HJH2Hp~DQDH LHxLHDHpLxLH H~HLHL=WY>L(L+<H0HY>H8H Y>H@H5Y>HPH=%Y>HDžLXL`DžhHpDžxLLLMAHHH@HH5B>HLDžDžDžDžDžDžH(H HwH IL9tRLHpIL9t6HIL9t!HpIL9t H HH9("ЃZE*IL`d0*APt hLH5:2L&kHp1APHDžxHCƅEGL-J<HpgMLLISPLILwDLLdT>HH5:>HHwU>HH@L0L-<LPMCHDžL L(Dž8L@DžHDžXH`DžhH(H HuH IL9tGHpHH9t2HIL9N 9f1LsI>qfDM'LAT$HH LHIHP0M'H0L8hA$`duI_LCAI1LLI0LHX1L LL躄D`HH DIHAH9t MH1LHHA(HH5u 譚ƅ`.HPEWPHDžXHHHPƅ`A4A#:LHDžLILƅDžHpL HDžxLLLILOM\$LIHHHxHHHHHHH4LpƅL HDž(ƅ0LpLHDžƅLHDžƅHHDžƅHHDžƅHHDžƅ+s ILOA=%h$EWPA*AHH5f/蕘ILOt`mlAqHL%L<HDžLO LWLH=4>HLDžLhB3LhH5>HH@H诳HHHHH9t IOH H=>HB LYH HDž(ECL@LbDžHD02HMH@H5>HHH(H HpH HH9t eD APD_AH5dM>H=eM>HEHHdAPH5JM>H 3M>HEH Hh~dAP2PHHLH8A L32MLH;KLpIELP1LHHA(LH5/7MHpLLH`LDh1A(H`H5/HXLhH0LDHPL@ IwM$LHxHNEWL@HDIIULpI7IOHHMmH[DL8LHDMd$LM;HH LM{LLLgN>H(H0L8L-(<HDž L@LPL3N>LXHLxL%M>HHLPL mp.HLXL+N>H`H=M>HHnH>LL=M>HhH5M>HH M>HHM>LL L@H0DžLDžHDžLDžLDžLDžLDžDž(Dž8LH@H5>HPLH@H`DžH DžX Džh H(H HlLH HH9tZL`HpIL9t>LPHpIL9t"LhH IL9tLHIL9fDIL@HpHDžHLIHHHpLL@ƅPHDžxƅxuA #I1LH`LXHILHuDHHIHt;Q ~HIA_DI9D;n H~(HN0HLpHP HE>HDžHL@H5ZI> HLHH @HDž HpMT$H@HxL9)LLIL9HLPD~LH@DDHHHpLHDžxIHpL9tܫM_HLHH Hn<I{HL@H@H5GH>HDžWLHDžHMT$HpHL9*(LLIL9_/HLD~LHpDDxHO/HLHDžIHL9tAOP$(3JDkA:HHpHH9tkLH@IL9kHH藪Dh Lh8HHP Lh(HPH@0@8H聟LHY Hu I9SLLL HxHhCH(HA 1H )G>Q|HHA1H *G>/|A_P]IOEL 7?/H=LIDL`H5<LQIP0M`HDžhHA>H`HEZHH=>HDpDžHDž(MH5>HH@HHHH脶HH9 v1@f!LHIL9tHHHH9tHHHH9tܧHHHH9tHpHHH9t褧LH IL9t舧LxHpIL9tlLHIL9tPLHPIL9t4LHIL9I4@ I>vL0HDžLILf~#LAh=AP<MLƅLLILHDžApuILht=ILpE_L- <t BHLH@HDžHr LLBIHHH5=iLƅHDžDLDžHIHh~,LM-AP-IhLLHDžMXIRLH@HpLH~LaƅH@LLHHDžƅ HHDžHƅPHLpHDžxƅЄuILp7MOEGLH5<IR0LPH@IAHL"HDžDXDMBHH5=DLDžDžjHPIL$HpHXH9ALH`IL97QHH~HHpxH'QHPH`HDžXIHPL9t@M'LA$x.IHLHxMH LHpALpH5!LLLh^UfA*̨D,D`EILHRpH(L EOH:>H IH0dM@H8HpH HH@H0H5=HDž(D@HPDžXL`Džh聢HLHHpH9tᡨLH IL9tšM'LHAT$pALL(LHpHxIR@H9>L HH<>3LL(MBH0H @H8H5<=HDžL L@DžHHPDžXH`DžhjHM\$HHL9>LLIL9MHL~LHHMHLHDžIHL9t@HH HH9t$HHA1H ;>rILA LpH<It$0MD$HH@HHpH5=HHDžxLDžDžHL[H@HL9<LLIL9LHLP~LH@HHKHLHDžHHH9t̞ILhL@HHHJ:>t IAWHHPHHH0L0H5=HL@H@ 6H8HHDžL@DžHDžX蚞HL[H@HL9c;LLIL9JHLPD~LH@DDHHJHLHDžHHH9tnLILHDžLILLLƅ LkXIT$H IH9tA`DcA!܅2'HHA 1H x8>oEW$L 0HL]8>IT$ MD$H@HDž(H HH5;8>L@DžHќH(H HZH HH9t"ILLpƅAHDžxMT$Lpq7AWIL@LPHHIq0HL7>H@H@H5=L`MAHhHDžHLpDžxLDžÛHLSHpHL9LID$HH9^QHLD~HHpDDxHNQHLHDžHHH9t蝚ELLHDž LHIHLHHHpHxDHLLLLpLxHHHHH@LH H(L0L=5>H8H5>L@L5>LHL 5>HPH5>HXH54>HHHLLL--3>HH`H=53>HxHLhL5>HpH@HHH5u=HHLMCDžLDžLDžHDžLDžLDžDžDžDžDž 䘨H(H HVH HH9t5HpMd$L9tLHIL9tHhHpHH9t痨LpH IL9t˗LxHIL9t诗HHpHH9t蓗LH@IL9twLHIL9t[HHHH9t?HHHH9t#LHIL9tHHHH9t떨LHIL9˖fDDoAr9ML9.L MLLL`HLA H52HL KHXHEH0HPHhMOEHpIMIyMYLIUESDGHpDM,$HLLMd$LhDLH[DLL`H HKLpLXHLL=3>LL3>LL3>HH R<HH <LL 3>HDžx HHLL%->L`LHH5>LL-[<H(HFXHH0H @H@FLLGLDž8DžHLPDžXDžhHpDžxHDžLDžLDžLDžDž LDž 袔H(H HRLH HH9쓨AOP)7D`LIA!`H5.>duH5=H=`=HEHHhFHNKL .>L~=Lm93LEMEL`LQEQHH5[LHPELpEQHHIMLHpHDEQL H5->LHEHXH0HPNIwLLEHVH@IL H(DJHpH HxHPD0D@LXLLPHXLH H(L`HhHpHxHLLLHH<HDž( HLH=/>HHHH=/>HHLL'*>LLHH W/>L`HHJ/>HH5Q.HH{/>LL=0/>LL 3/>H0HPH`LL#/>HH$/>L L:/>H@HpLpMzDžDžDž(Dž8DžHDžXDžhDžxLMH}H=B>LEEE HEE E L]E MH5>HH @HHxHpHeNHpHH9tЏH IL9t軏HpIL9t規LPHIL9t芏LhHIL9~*f.HD~LH@DDHI|$Hp"H(HA 1H ,>aHHA1H ,>aHHA1H s,>~afHpA HDžxLcƅLpLIL$ƅHHDž#M/1LAHHP H8H@LXLPHr LBH @ H@L&>H5{*>HPLHDžHLXL`Džh.HPMMHpHXL970HCL`H9<HH~LHpxH<HPH`HDžXIHPL9t ILpL <H@Mj MBHWLpLpHDžxLrLDžH5J)>HpMEHHxL9_/ID$HH99;HLD~HHDDH&;HpLHDžxIHpL9tLpILHDžxMEƅLp`IOLYASZb@HL@H5_(> HLHHpHIL9u.MELL9R:HHD~LHpDDxHB:HHLHDžHIL9tΊEWPA,Ay4A;AD=HpIL9t聊HIL9tlHpHH9sHE_HPH@HW H<HDžHLGHH5&>DHDžgHHHԗHPH9tÉHxHA1H 2q\@Iy(I9t!HL|HLLH_LLSHH5&>}THH5'>jTAOP5M_HL%<Hp H=_=MCHH0HDžAPLL`DžMH5=HH@HHHH脖H0H9 A H %>11"[HA1LH %>[AP&MWH hbLELpL /IP0MbLDH5<HpH>M@.HDžxH@E\$LHLH5=LDDžHDžHLIeHL9*P HH5k`ILf1L`H5J )L) )`cH(H HIELH HH9譆xHpM/LHDžxHsƅHpA`MWIzDOZBLL H5#>LD謆HIL$HpHH9 1L[LL9g8HH~LHpxHW8HHHDžIHL9t艅IwL% >L2I?LnL`AMD⁽ LAуdLW >HzLMIDM`HLAуdHEIEmL=ؙ.LEHL@LHHLpIDLxLHв<L-!>HpLxHH5H<HH=@>LL `!>HH U<L@L%7LLG!>LLP>H0RL`HpH5=HHH@HDžH L(LPDžXDžhDžxDžLDžDžLLMBLDžLDžH(H HAMH IL9tBHpHH9)@HtH7HHpHxHHtH7輁HxH@HHHpI_ILkL`LAMdL%>HLLEM`LAL@dEUH5rIH .HxHpHHHELLL7H>LpLO`LHL%>L<HH>H @H5|=LLGLH>LpHDžxDHLDžLDžLDžDžHDž证H(H H?LH HH9rfHH5n/etAD`>DDA,HƅHHHHDž At AP <HH\>L L\>H(H f>H0H5>L8HPHpUHDžL@DžHDžXL`DžhDžxHLLMBHLH @DžDžDž`H(H HF=H IL9wwDAWHH5o<HDžHO HGHH=>HHDžH.LHH@H5>H~H(H LH@HDPfLHH@H5>H}H(H H;HH HH9t}IHpLHPpMGEWH0HpHxHW@MHHL<EYD@LWL {<H=~>H0H`HhLHDž8DPHpDžxDžLDžL@LHH @H5>H|H(H L:HH HH9t{HHpHH9HD~LHpDDxI|$HH ͓LH\DHH53%`tL0`?0DDAIOH0LȢ<HwLO LHAH==HL0L0HDž8PLP@DžXLH5=LH@H{HLI芈H0L9tyzIWd;HƅEWLHHIp0HHLpM@HDžLJH<LH'H5h>HDžEYHH@DDHDžDž2zHpML$HHxL9LLIL9HL~LHHHpLHDžxIHpL9tyHLH ?Hw HLGH@HH5=LDHDžDžyH(H H7H IL9hxf*c~HP'HLF HM=H @HDžXLPHLFH5C=`HpDžxmxH(H HS6fDHpƅLHDžxHKHpAxuMGIxHH1HxE11HH L,JAwP!)H5m=H)HHA1H >IALL(H5<IIPLpH HHHxH <>H51=LH=$>LLL0LMAHHLH H@HDžHLLLDžDžDžDž(vHLIH0L9tuLH IL9tuHpHH9tuIHhvfDLE_H(IJ MBHDžHH5`=H@DLDžH`uHH`7L`HIL9\uRfHHE11H :LGAHLH G>HMS0MCHHH@HHߺBHH5=LHDžLDžDžtHHHIHH9t8tAPd.ILhMLApMnAIPLj%LL9t2AhM-LApMuI1LWAÃLHASpAWH0H LyIHpPL(`H@HL%<gH0H5=HPH@DpL%۳<LL@HDž8LXLDžLDžDžLDž>sHHH諀HH9trLH IL9t~rILhL@LHt [2EHHLHLLLHHpHLxHDHLHLHL@L- >LLL >LL >HH= >HH5 >LL% >HHQ >L(H0iH8H@HDžLL DžHLPLLpL@HLHH5=DžXL`DžhDžxDžDžLDžHDžqH(H H.LH HH9f.0HL0H5 >HpHL~HHHH9""H5/LrLIEHHU"MoHH51HMMEi\/"EGPAo!AuP/A>HM/LHA H=H HAH9t+oHpAHDžxHKƅHp?-=2N2 1ҿ A􉅠H51A E_L=LDLpL-J/H '0MJ@LH==MjLL%Y<HLpHDžxDLDžDžDžMLH! @H5=HLnH(H Hm,H IL9tmILLLILIL`MGA$dH=IHU.A(HpEMXHEDD6LHHA{L@LpHLxDDLLpLHpLxHHLHHH= >LL ۙ<LL<LLN<HHF>HDžx HHLHD DHPH=>HH5>D0L= >L@L3 >HHH7L`L 7<HH==LL%•<LpHHLLLyLHLDžXDžhDžxDžDžDžDžDžDžDž Dž Dž LDž LMH" @H5=HL|kH(H Hb)MH IL9tjHIL9tjHpHH9tjHHHH9tjLHIL9;ݿ@AHL0H@LV LFHDž L <LH5>LL0Dž8xjLHIwH0L9tiHA1LH 1<DAL0L<II HLPH0MAH5>H@@HHDž8DžXiHHH5wHH9 iwLLH5>LDjiLHIvHL9==fDL%L[@AWL`H=<H@Iu HHH`MEHH5=pHDžhDžhHHH5vHH9 hEOPAA`1HpE1HHLSHLpHHXH0HPUIOL(HPEHLYHPLHXLEcLDH L(LLLpDHLHxHHH=<LL >LL=HH b'.LL'>LL=>LL%>L L->H(H>LHDž LHH@H==L0H8HpLLxLHDžHLPDžXL`DžhDžxLDžDžDžLDžDžLMH @H5=HLfH(H H$MH IL9tjeHpHH9eHL "<H@LF mHHDžLLFH5=LDžHheHHrLHIL9fHtH|%cHxHHHpL o%AOXIL``9%AIA_XLAW95HLH=HLG0LWH0H==LHHHDžLL Dž(Dž8LsLH55=HH@HcHLHQqHH9@LH==HDžII MADHHLLDžLH5W=HH@HBcHHHpHH9tbE_醼HtHh&qaHH@HHHHtH%8aHH@HHH4HtH%`HHHHHtHg%`HXHpHxHPNLHpLxL8ɯLAAMHH5 3(FtM `@ IOEL ;LH=1.IDLH5҈<LQIP0M`HDžH=HEZHH=\=HLPLDDžHDžLPH5=LH@H aHLIznHL9:HpH51HIWLjAt%AH5(=H`+IwLnIL`dH=6IEMLt.LEL HpLxMg`HHHpH=t<L@LxL HG7L0L%~=MDPL=L 7=HH=ĭ=H@LHHhHpLxHDž(L`HDžLDžDžLDžLDž޶LMH @H5!=HLF_H(H H,MMWHLpHxLpHpPMJHHLxEAHL <H54=LL)<DL=HH==LLxHHL H0HDžLLDžDž(Dž8L@DžHݶMLH@H5(=HL ^H(H HH IL9Z]HtH}!1\HXHpHxHPHtH ![HxHHHpHtH [HHpHxHHXH5=H=HEH0HP'IWAL8LhHLJLPLLXHEYHHxLH@HHpDLLLLL=LL-<L L%|=L(L<.H0H =H8H5=HPH=HXH=L`L =HhH=}=LpHDž LxLxLLHHHLDžDžDžLDžDžDžHDžDžLDžڶLMH @H5=HL[H(H H]H~LHI|$HpAAHDžDDƅADLI}AH)MLHAPpAwL0H H <L(Mc0L V<H`H=2=L0Mc@HPHHDž8LXDžhLpDžx)ٶMH5װ=HH@HYHLH gHH9tXHH HH9tXIHpLHRpIILgL`dH5ILxm.ET$LEE_H LLHHDLL HLpD0LxLL@DLPL=<HXH7H`H=o=HLhL%=pH=DL$=HH5q<LLX=LL,=LL V<LLyHDž( DžDžDžHH==LL H0DžDžHDžDž(Dž8L@DžHLPDžXL`Džh ֶLMH@H5=HL*WH(H HMH IL9txVHpHH9tcVHIL91DZ E9Y @YIwLPHpLpIJPLL^LxHxHA{HPL}<H =HpH<`H={=LMzHH=u=LHHHHDžXLxHLDžDžDžDž4նMLH@H5=HLUH(H HHtHYSHHpHxHIOLIrMJ0LaHLHDžE\$LHH=+|<HH=և=LDDžHDž0ԶLH5=LH@HTHLI bHL9tSL@HHLMOLH{<MC IKHMQH==LLHHDžArHDžjӶLH54=LH@HSHLIDaHL9t3SIWH~LH@HH{HHD~LH@DDHH{H H~LHI|$HH~HHpxI|$HP֮AWHLHL=H~0HFHH=M=HPLHHDžLDžLDžHѶLH5=HH@H RHLH}_HPH9˶˶H~LHpxI}HPH~HHI}HpHD~LHpDDxHH~HLH==DIS MSHDžL-d<HLDžLJжLHH@H5=HHPHH^LHIL9tPEGHpHx铗MGH=E=LPLIpNP϶MLH5=H%P MGHpLL=6w<HxLIK@I@LL=HHDžpHH#=H=9=L M{HL0LLDž(Dž8H@DžHζMLH @H5ǰ=HLILhH H(H=t { HE_HH=x=HXLP0HHHHLHDžDLDžDžLH5x=HH@Hq=HLHJHH9t_I]I]HWIiZI;_Hl_H_I_I7_I_I_I[I.Ha>.4LIEH k7HDžMH0IX H=g=L=cGH@LH0DžHLPDžX IH(H@H5=HHu)HUHuLeH5}L AA  A@ A A LH j7HDžIq IYHH=r=HDDž5IH(H@H5:=HH(HUHuLf.H5|L LH i7HDžIq IYHH=B=HDDž荧IH(H@H5 =HH'HUHuLH}HH9J'DH5,|LD0 4D0 4 =4@z4B44&AL ;.L;.D4H`MEH=h7HDžhHN0H^HHGH=f=H`LHDpDžDž)IH(H@H5=HH&HUHuLfDH5zL A A  A@AAHLg7DLX LxLH=n=LHDžDžMH(MH@H52=HH%HUHuLfH5yL p0H=9.H4LGHLR0LzL0Lf7H=u=LHDžL Dž(Dž8uH(MH@H5"=HH$HUHuLf.H5,yLHL)f7DLX LxL H=f=LHDžDž(ͣH(MH@H5*=HH7$HUHuL'BfH5WxLQH5@xL:I H5H?WH50WLHXH5XLH52qLH5qL {PH1.H=0.D4HELL^7HDžIZIB0L0H L GH==HDDž8L@DžH蟛IH(H@H5l=HH HUHuLH5+pL%H5'pLH5pLrH5oLnH0D4H/.HDž8HW0H_HPL\7H= =H0L=GD@L`DžhLpDžx菚IH(H@H5=HHHUHuL@HaNH5RNLD[P}HPH5PL}H'XH5XLHTH5}TLuNH5nL/H5nL H5ynLsHL[7HDžHXLX LH==LDDžOIH(H@H5ܼ=HHHUHuLHEOH56OL`H5mLHHnVH5_VLWH5mLH5rmLl@ H5nmLUH5WmL>D4HL oZ7HDžL{ H[LH==DLDžIH(H@H5=HH}HUHuLmH5lLPHKH5vKL._HJH5JL{PLQ,. HJH5JLH`TH5QTLHeLH5VLLH0L)Y7HDž8HW H_D@H=J=H0LPDžX͖IH(H@H5=HH7HUHuL'BHIH5tIL ={PH ]+.L4H57+.I0HDžHEHI_LNX7HLGH==HLDžHDžIH(H@H5=HHXHUHuLHcH5zjLt{H5vjL]H5_jLFL(4H=xW7H G*.HoGH}H=q=MH0uMxHMH0HULMHEEEMH5.=HH@HyH8H0LcH0HH9 f.HAQH52QL*UHFIH57ILH+JH5JLHEH5ELHDH5DLHAH5ALHBH5BLH5hLHPH5OLkH5hL%H5hLH5ohLiH4H=U7HDžHN L~HH==HDž@H(MH@H5=HHHUHuLHCH5CLH`BH5QBLiH?H5?LSH@H5@L=qHEH5EL"SL`H T7DpIq MyHH==H`HDžhDžAH(MH@H5n=HHHUHuLHwHH5hHL9HAH5ALeH&AH5ALOH>H5>L9H?H5?L#WHEH5EL9HLS7HDžHW H_D H=,=HL0Dž8'IH(H@H5=HHHUHuLHBH5BLfHgAH5XALPH1>H5">L:H[?H5L?L$H5VeLP{PH5^%.4L ?%.LEHHiR7HDžHK0L{LNGH==HHLDžLDžH(MH@H5=HHYHUHuLIdH?H5v?L.H>H5>LH9<H5*<LHc=H5T=L HHEH59ELHM@H5>@LH?H5?LHa<H5R<LH=H5|=LtHCH5CLYL@H P7DPIq MyH`H=i=H@HDžHDžhxH(MH@H5-=HHHUHuLH5cL4HH#.HDžHN0H^HLP7HGH=X=HLDžHDž認IH(H@H5=HHHUHuLHAH5ALLP4H^O7HDžXIq IYHpH==`HPDžxIH(H@H5=HHm HUHuL]xH9BH5*BLBLD4LN7HDžIB0Hv!.LL GHMzH=¾=HDDžL Dž(4H(MH@H5y=HH HUHuLLD4LN7HDžIB LH==MzHDDž見H(MH@H5S=HH HUHuLI=I=I=I.MHMxMhLLxHEGLxHhEEA}AuLHM_LxI$LLIIM|$HMHpLL:.DLK.H=y.H5܍GHH GHHGLL5GL(M}LLL MLL@\HpH HpGH0I]PL@AhHDž Dž8DžHL(LLpMH}HHuH5=HMH@LPL L`H0DžXDžhDžxEEELL]EHHEE IU0MUpAf1LDžbf16HDžƅHDžbf16HDžƅHHDžfDLfDAEr6ML L@MD$0I|$ HDžƅLDžtf32HDžƅDž0tf32HDž(ƅ4L`L@HDžHHDžPHDžXDž`?HDžhHDžp,IH;HvKHV HH9o HHHH1HH@LHH`HxHP HHXHHHsH;iLH1L@IIM$LILpMjM$$MD$H*M$$MKMD$H1LII95M9uHSI;T$uHtIt$H;uLxH@IL9=H@H{ HK0H9tgH;LSL9RH;xuHhiL3I>IvHH1H@IHLIMH M(M]H)MmM+ M]H1LHI9 M9uIVI;UuHtIuI>ufLgIvHHhfouGA Hfo pGfoxGHDžfL%GfonGfo%vGHrGfo-tGLQ HH5X^P Ly(X0`@hP@` fDHdHDžf@fA:IEHXI](HHLHDžHHHHƅLpH5,GHKCLpƅLHDžILH5GH ID$ƅ1H HHDžLhMU(MM0IMXMoLxEA{AsLMLLDLLXHHHHH=PGLLHGHH;GHH 4GLLHLLMGH HHDž Dž(H(H LHMH @LLH0H5=H@Dž8DžHLPDžXL`DžhHpDžxELUELMEH(H LԽH HsH9t?HIL9t*HpHHH9tLHHIL9t<tH5=LH0H5GH$L(HL)HvL HCMgI9.H0I9MAdiA #enfESACfL LxL(HSCD9H ILH9L0HLH(L{LHDž(L Hƅ0bLxHIL9tH HH9tLPHII[IL9LI;MsLMSLPMuQ[LSMt7MI|$(MD$8M<$L9t3I|$IT$H9uLMuHHH@H1zH`H@HDžXHDžPH0H9tH0HHH9tHPH[A\A]A^A_]PLhH3HSLpHLILhHIt$8HS(I|$(It$(Hs HHhHXHHH@HXIՄH}HH9H<Hp6Hp1HIBHPHDžPHtk1LHLLIHLMtLHAH1LIMI0HuHPH1HPMH9I HLMuL`H@I0L9t$L1LHIL@LLp DL@LpM|$HMMMtBM3M4$M)MeHX'HH;x&UfDHPLPI4$HtHFH1LpHHM$L@LHM!fD<HLHyGH [HEL5_GHpDLhH5:0.I{޷LHH5lGLpHHF'HPHHLOLH,!HhH5/GLLQ0A H IHH+DHhLHpMHP82@H5GH5.LݷH8GL,GIEA1LHH GvMfoA{fDfo0L)lL`HDžpMs0DfDL`HDžpIK0H=I *I]**I*I*I**I *I?+L+I*I*I)@UHAWIAVAUATSHHH`I1L1HHM'LHA$1L(HAI1LHIH MHLHA MH01LHA@AwLPLPM艵PLH5}G>MWI:Iz ILP@ILMI` tfLIdNLRM'HLAT$ 1APM/AHEӍ| GDRLDAH0H8HpHKHHHp^H6LpDhHHDII|$HpLHALD@EDIL`DMH=Ҍ=AL`Li~GDpL=@|GDL~GDL-#<H@~GDL |GH|GHH==LLLM{L0H@HDžhDžDžDžL Dž(Dž8DžHLPDžXH`DžhtMH5=LH@HHHLsHIL9tHpIL9tHpHH9tHXHPHHPMvL9tHH0HH9tiLHIL9tMLHIL9t1H[A\A]A^A_]H`LIdpL`IZL`xtIL`PHH5(.L-37n׷L`EH5%<LIx0MhHH`L V!<H=y=DpHHDžhLDžDž rMH56=HH@HHHL{HHH9..fAWPPDKDIADD`AHLRHII1LLLp1HLLA(ILLH`1HHA(LH5EAշHH5vEշƅHH5[ /Aƒ AE DuշLHL€ %sD@ǃ@_,A‰A DuAA!DHpLDLSHLpH膾AA=D`DIAHpHH9tƅHHH򀽨HpDHCHHp,HAA=DhDIAHpHH9t`HHsHHHHHſH蝽H u |%HKH9tAI%A@w)A 5*EDAA@HHLSHLH,HH u  %HSH9tmA$A@(AA )AAfEL H=<Iu`LuGD@HL4uGL[uGH==L%6uGH D0M}PLHDž(`DpDžLDžLDžLDžDžPmMH5V=HH@HHHL諫HHH9tHH`HH9tHHpHH9&&f.MWMG0IBADDHA@h@LRHILHP8H1HpHLHA(M$H1LHpA(LHIt$LLHHHuLMD@IL$HAHH9tLHH5"@HDžLIDLƅ/зƅ|(HpH5? зƅ`HH5$3Ϸ tS|AƒAB@|@HpH5p/Ϸ t`>5hC|@?HH5(-蜩DዝhDD{EHH5-XA{FDDDEAELE@{@ !$@&DžH>HDžI@DLL I HDžLXIHLƅH;HH5>ηuHH5=ͷ#HH5=ͷ"HH5(.ͷL)7IGAwHpLH`HxLHh<AHDOHH=MpGhLLEpGDH5=pGH CpGDL <HZDL%GLL <H0H=l=L@HPLpLLHH HDžxDžLDžDž(Dž8DžHDžXH`DžhLpDžxvgIHHA$@H5=HHHHLʥHHH9t5PHH5(<HPNLH0HDžLIHHHLƅ H0HDž8ƅ@KLHHDžHHLhILL0H@HH`H HHH M]HLHIL8IH0HH(HLƅHHDžƅHHDžƅHHDžƅLHDžƅ L0HDž8ƅ@LPHDžXƅ`H`HDžhƅpH PHDž(I_ƅ0Hs{P~HH=d<HHp0LHHH=٬=HpHHHDžDžDžLdLH5=HH!@HH(HH[HpH9tJHL~XLLH~L~L~LP)`)p))|HhH5=誢IWPH5KHjGHDEWHpLJHZH:HD[AIDGDLLH HH(HADDLz<LkGLL%Q<HpDLjGH @HHHHHDžxDHDžDžDžL Dž(LHL@LFHL0Dž8DžHLPDžXHhHH HH9t|HHH5=IOAwHHx@LHHQLIHH@HDžDBEQLHLHDLL@DLDžHDžDžHHLIHL9tP-H`H1HMH`H9IOAWLMBpHHLIL0HxL8AqHpLHLLHHH<HH=`hGH(H8H@LPLLJhGLL%DhGH H0L0H`HDžDžHDžXDžhHpH=V=LMbDžxLDžDži_MH5=HH@HߧH@HHGH0H9t6ߧL`HpIL9tߧHHHH9tާIGL@LHPIJ MbLXH@HDžHA{L`DžhPH==^MH5=HH@HߧH8HHnHPH9t]ާPIWHr{AGDFL 0H==D@HIQ@MaLLH PHpLpHDž(H`DžhDžxLDž]MH5)=HH@HݧHLHmHpH9t\ݧIHpEOHLHHN0LfLWH==HpHDžxARLDHDžDž\MH5=HH@H<ݧH0HHHH9tܧM_LEHI{M$HIHHDWLLHLDHLDLPLHHXHHHLHLHH=dGLL==LL=LL /HDž HH0HcGH8H`HPH==LhLHUHHH5cGHH cGH HcGL(HuHMH0Dž8L@DžHDžXL`DžhLpDžxLMEEEEHEE ZML`H@H5=HLڧHxHpLۘLHpHH9tCڧL(H IL9t'ڧL0H`IL9t ڧHPMmL9t٧L8H0IL9t٧LHHIL9t٧H HHH9t٧HHHH9t٧H@HHH9tj٧HhHHH9tN٧LH0IL9t2٧LHIL9t٧HPHHH9tاLXHIL9tاLHIL9tاLpHIL9tاLHpIL9fDHH5%3LH|HLD|E@ @AD"DfDEDhU@A&@@"|@|ƅfAD`f1fHpH5+ `HH5+廷|HH5-L%qz-趻MEEHLCHL^H6AA=DhDIAHHSH9:֧0fۍsI@KD@ǃ@ @EfHH5*ݺ0HH5*赺Af.@O I@H>H@@DžDž DHH5)-蝔D1E1EADyHH5-]DAEDh@LCHLHDžHy HHApHH="=H L0Dž8TLH5=HH@H$էH HHHH9tԧH(H5b\G譟LL~XHHL~L~H~HP)`)p))MgAwLHLII0MD$HMaHDžAxHHH==DžLDž?SMH5=HH@HӧHhHHHH9t ӧL`H1LdH`LPM_LAWIxpLHICL0H8LppLxHHHHHLL <HH xZGLL~ZGHHxZGH H==HHLM`LHL0HDžDžDž(Dž8H@H`H0DžHLPDžXDžhQMH5=HH@HѧH@HH_H0H9tNѧL`HpIL9t2ѧLHIL9tѧIGHHHPLO LgHPH==LHDžrHDžPMH5=HH@HѧHHHHPH9tvЧMWHAGHpHLHr0LbMBHHDžEXH@H==0D DžHLPDžXOMH5=HH@HVЧH8HHHpH9tϧAOLLH==MB MbHDžLHL Dž(LOMH5Ұ=HH@HϧH0HH*HH9}}DIWH0E_HHLG0H_LRH==L0HDž8ABH`HpD@PDžhDžxNIHH@H5=HHΧHHLڌHHH9AΧ@HtHH`ȧHH5"ŲH52-E HX*DHHH5=݌HhH5J=轌HrHLpHDžxMX M`FHH==HLpDž7MMH5u=HH@HͧHLHHH9tͧHHEWH=o=LI LaHDžHHLDDžLMH5'=HH@HͧH0HHHH9f.HPH5:TG荗MWHLH==Ip IHPMZHLhHDžACHDžKLhH5‘=HH@HȨHHHHPH9t˧ILHHpIS ILOH===HHDžEQLhHDDž+KLhH5=HH@H˧HHHHpH9Jʧ@HH5-L莯L=n-L 7MEDHH5U3LHIHLD.E1E{AD وu!EHLLcHL蛚HsAA=D`DIAHHH9tɧƅADžALKL9tɧDžADLCL9tbɧA"fLLL;II0MYH==HHLHDžLDžDžLHLH5[=HH!@H6ɧH(HHHH9DDfD  DžHH@H DžH&fDXI Iw@I@H>H DžDž5DHH5-uHMGMGHE_H5MGH{PHLI@LLMGHH=>=HDžD`HHHDLcHHHLDLLDžDžDžDžFMH5=HH@H2ǧH@HHHH9f.HH5C-_H5MGcfL HLD@I{0McHDž(H H==HH`0LPDžXDžhEMH5=HH@H@ƧHLHHH9@@@)AKDžAHXH5LG胐8ƅE@EHH>DžQDžH vuDžH?xt H$zH%pEEAAAADAADDžI H?H@@DžDžA!EAE!HH5 -质HCJGH57JGHE5Dž1HDžHH5^H5JGHH5?L IIHHLH`HtHIH+H[H7HHH_HHkyIlItIlIdHHBIII'IIHHKHHfHGHxHxUHAWAVAUATSHHL'HAT$@HSHJDEtmL+HL@A`Ld1HLA HH`H;L duFH`1HHAGLL@H1LA H3L H`HHALH1HHA@LcLIT$DD$LD蓐KLH=HGL?HMH5HGHHeHHLM`tHA҃dH3L` HA҃PL#HA$`xwHH`ZL#HA$`dSHHH}HHHH9tLHIL9tLH`IL9t⾧H@MvL9t;H[A\A]A^A_]LCH=;HDžIp M`HH=ֲ=HHDžS>MH5=HH@HľHHH|HHH9@Hs{LPL=;IS0L-;IHFLLDP`H==HPHDžXDpLDžLDžq=LH5[=LH@H޽HHH{HIL$H9t.LKMAAHH`PHsL[IS0H~DWH=R=HLM{HDžDDžLDž=IDL@LL@HHHD@"L@LHHH9HLI覰HL9t蕢HCH2+GEH5+GHDHPL HxH@HHDOHDP9"L@LHHH諢HLIH L9tLSH`H=IHHL@MZECD`!LHLH5IH5HLI袯H@L9荡HH5%2lHH5.l!DDEZAƒ@ 򈕨2 HH52-轅DžPHH5-蘅DEDPHH5KmHH5+MAfLLHDIS`hM[LLXH=)GHLHf)GL%;HL )GH )GH@H==L L0LHPHpHDžLDž8DžHDžXL`DžhDžxL`fL`H5X=LH-@HӟHLI@HL9t/DSfDHH5̓Dž)HH5-訃DžHH5胃HH5xbDžHH5M'G=DžHH5;'GDžtHH5)'GDžOHH5(΂.HH5譂Dž HH5&G舂HH5gDDfH5|LADž|H5-L Dž[H5L>H5L⁷DžH5%GLDžH5%GL蠁DžH5%GLDžH5L^H5LADž|H5l%GL _H5LAA󉵌;fDHL@HIHLlLljDžh=pHhHHHH9p賛ffDH[D|LH IIL{HL(HPEOLXHH;%GLHDL.%GLDL ;H %GHH=%%GHH L0LL%GHH#%GLLHDžLHLDžDž(Dž8H@HPH=Ϊ=DžHDžXL`DžhHpDžx#MLH! @H5x=HL荚HHHsXfDLSH H="GHHLMZECD D0LHLH5"GHHLI|HL9tkHsLLLHHVzH=SJ)LHLH5tSJH蛙HLIHL9tHKLH=*EHLHLLQEZDLHLH5DHH%HLI蒦HL9LH5"2L'}H5.H 2LHEc{PHH52|HH5.|D!EtAJ AL{L1LIwLA H5VLP|HSHHr1LA LH50L|HIOAH9tƅL H L(H`I[pHHLD|DL-GH GH L=GHGHPH=^=LhL%GHH`GLMkLXHpHxHHDž(D0D@DžHDžDžLDžLDžHDžMLH"@H5=HLHHHM2L-UHC-H GAtL--H ^-LHPLHL3GLXIZpH0LH GHL=&GL@H==L-uGHPL%2GHlGHIZH L`LHHHDžLL(DžhLpDžxLDžDžDžDž+ LIH@H5=HL蕍HHH{KLSHH=)=HHLMZECD LHLH5})=H$HLI葚HL9t而HsLLLHHVzH=8H> LHLH58HH谌HLIHL9t HKLH=ILHLLQEZD LHLH5IH:HLI觙HL9LӠ-H=IL_|LPLM_pHLGIH54GLH\GHL%6GH=Ž=LL-QGHHG`pLHLLPHDžXLDžHDžLDžHDžDžLDž_ LMH"@H5=HLɊHHHHH{LL LHLOH=IAI LHLH5IHYHLIƗH L9t赉L[HH=5HHHL@MCA@r LHLH55HH䉧HLIQH@L9t@HSHL`HHHzDOH=%=DLHLH5%=HnHLIۖH`L99HID$AH9HH5 =HYoH)IgI3IBIHHHHªHHHªH%HH8ªHaI ªIªHCHHHHªIIHHHIHӿHH駿HQ:5HHHHwH鼿Hgff.UHAWAVAUATSHHXHH11HHL+HIHA1L0HAI $LH@IH1HHM1LH`HAHsLHMH5 GHӆLKIyQIyFHHP@LSL+HHMZHA1A H LHLL LH1HHHA@H5_Lfj.HH5-L-GDjL "GMELLVHH5-juHHLSHMZEDDTHELHL H5LiH5LiH H=GH LH@H5GHHHHH@LBHH@HH9tCHIL9t.HHH;L`HAӃdy{PDkHHLSA|$H@L%;AwDHMBDLչ/EHL/DPL-=;HpH GD`L /HxH/H=/=H@H@DLzHLHDžHDLDžLDžDžHDžLDžDžL Dž(MH5x=HH@H HHH@H@H@HH9t\HMvL9tGHHHH9t+HHHH9tHHHH9tHHHY@LHIL9t轁LH`IL9t衁LH@IL9t腁HX[A\A]A^A_]HH5UL-- GfHH5p-L-! GeHH54L- GeHH5e&HH5L- GeVHH5ze*HH5u_e&L- GL M`  HAӃx L+HA`P|L#I$`HуdL;HAWHsD[PH H (HHFEtHAALH5-L~duHL[0HH5 ARdHH5A1dƒ ADHH52cHH5.AcEDDLLHDžLILI LƅLHDžƅ{PH5 GH GHHDIHH5 GIH0LL@HDžHL HHLLIH0H5LIL@ƅPHDž8ƅ@L HDž(ƅ0btH5Lmb=HHH= GL`LLL HpHxL`LhCMLH5 GH}HLI&H L9t}DE=HH5 G;HHH򀽸?LD ML$LL5ML KDžDAEEUEIADHIL9t[|HHH~AAAADLMD$LLLLgJA=DhDIAHIL9t{HSHrFL@LGHDžHMZ0H==ILL=;`LL@PLpDžxDžLLH5%=LH!@H{HLIHL9tzHSHrFLH EGHDžMZ0IH==HLLDLDžDžLKLH5=LH!@HzHLI%HL9tz   LHDžMEƅ L5HHH1HIHHH1HLCET$HpHDžxsDXLa`HIxHHL1;LpH@LL DOH=;H5$GDLGDL GHH==HLHHDHDžDžDžLDžLDžnLH5(=LH @HxLLILH L9t;xL[HH [HLB`IKL0L L8L HDž(AL(0HGHHPH=\=@HGLL=GHXLpLbHHH@L`LhLxDžDžLDžDžHDžMH5=HH @HwHHH@Ho5H@HH9tvHMmL9tvHH HH9tvHH0HH9tvHH@HH9tqvLHIL9tUvLHIL9DL+HA`P{P H5GL>AfH5GL4@HAӃdLM`If.DE L+HAH1HHHIվHH1HLCD[HAwIxMHL@KDxIH@/EQDOHEd$DPD`LDDpDHH=GDL-;Hh;H@H,/LLGDL%;H5GDLGDL GH /DL=/LMhHDžH DžH H}H==H@HPHH`Dž(L0Dž8DžHDžXDžhLpDžxHEEEL]E LUE LME kMH5q=HH@HsHHH1HHH9fA|$AwHL}/DHZpDDHL/H FHL N/LzHܨ/H=%=L-;HH@HPLHDžD D0L@DžHDžXH`DžhLpDžxDžLDžMH5|=HH@HwrHHH@H]0gHH5s}VH5FLLBCP{HH=xHS=Ed$EHZD[L D0H=+;HX/MD@HPHJ/H5Ę;HXL{/H FD`L%s/HH=|=DpMyDHHHHH@L HDž(DžDžDžDžDžLDžLDž.MH5̆=HH@HpHHH@H.H@HH9toHIL9{{HHH`uH{HGHDƅHDžDLMELуP,tHH`PH5t0HK[LAT$EMLIHLEQ LHH@H=Z/D0L;PHFD`L=ݤ/HH5;HHLL%/LHL/pHFH FLHH@LLM{HDž DžDžDžDžHH==LH0LDžDžDžH Dž(Dž8MH5>=HH @HnHHH@H+H@HH9tbmHMmL9f s DDAA@ƃ@ @ELLHDžLILILƅLHDžƅƅ D[PAoAAAHH5F7H5FLq7@HH5ͥ2U7HH5.B7)DHH5PAPf.HH5[}PAIfHH5]PH5hFLӃKIE@L0D@H=K;Hx/MDPH`Hj/H5;HhL/H @FDpL%/HH=D=DMyDHHHHH@L0HDž8DžDžDžDžDžLDžLDžNMH5=HH@HjHHH@H(LH5ţ2LNH5.L2LIE.5D[PDH5FL(@HH5FF4FHsAT$LL ;AG[ILVLH5(;DLAJD LsFHHe/H=F=0H _/PH/`H/HHHL@MxDLLHH@HDžLHDpDžDžDžDžDžDžHDžYMH5g=HH@HhHHH@H&H LLO HHDžHH=FLL0Dž8LH5FLH@H3hHLIuHL9wwL@ID$LH@7L5Dž=xIH@IL9HL=;HDžLO HLHH=FLLDžLH5FLH@H$gHLItHL9@HH54Fu%{ƅ@D @=-@{PfD[H@HH H0D@L͔;Hr@HFHPLUFH=lj=H0LzHH@HDž8HXD`LpDžxDžLDžTMH5Z=HH@HeHHH@H#H@HH9MMfDEAKAD ˆ[fDH=zFL0L@0MLH5OFHeHHH@H"H@IL9UUdKL@M\$LL@4L2A=DhDIAH@IL922fDCPAnwLKAHy-L;H=HL%x-[MQH-LDH5x-IEHDHHL@EZHDHH8LFDPHPFL-*;H`H==H5FLpL%}FHHFLL=FHL0HHD D@LLhLHDžDžDžLDžLDžDžDžDžHH@Dž=MH5=HH-@HbHHH@H EGET$HHLHpHFHH/H ;L/L%/H=t=L=/DHH H0H@LPL`LHDžDDžDž(Dž8L@DžHDžXL`DžhMH5gs=HH@HbaHHH@HHHH5e2mEHH5+z.AWEE.@D!@H5-LEH5LEtLH5DHHLL@HLHH=FHHLߵMLH5UFH;`HLImH@L9~~HsL@La;Hx0LHL`HDžH NFHH==H LL@LLLLDžDž(޵LH5.=LH@HY_LLIlH@L9zzH FFL=vKLOHHH5}=H/HAa11H ~="1LLHMD$LH8L9HHPHHpHH;~=HHLLH@@!LDSH@H)FI[`H5IFL L;HLHH@HHHL uFHHH@H-@D`L-;FLMCHDžD0LHPLpDžxDžLDžDžDže]HHH@HKH@HH9t\LHIL9t\HIL9t\LHIL9AtALKD[H=FHHHDHC`H5FMQL@HHDžAJDL-Њ;L0L=FHPH==LLcH@HDH`DL Dž(Dž8L@DžHDžXDžhE۵MH5=HH-@H[HHH@HLL ;HIx@L=FDHL%iFH=[=MhDH@HDžHLDžLDžLDžoڵMH5=HH@HZHHH@HHHpH5~FL]%HH5ۮ>uDHH5ĮL-F>hHH5L-F>FHH5L-qKc>$HH5ĮH>H5FLDH5A6"H5x=H*@D!@2AL;L!;H@L ;H [x-HH[MDIEHFHHm-DHDLpLLTFMGpHL @FH FL5;LpH=Չ=L%v;L-}FMHH0H@HDžxHLDžLDžLDžLDžL Dž(Dž8׵MH5(=HH@H[XHHH@HAH5 FL";o@)zHH5TFD<UHH5LF)<:HH5DF<HH5N;$HHH=FLLLL`HHLLֵMLH5hFH?WHLIdH`L9LLHDžLILILƅLHDžƅƅƅHH5L-*F:OLH50L:tH5k-L:HHLLLLHH=NFHLLtյMLH5"FHUHLIWcHL9--H酐HѐI HH5:L牅S*GDD MAC6fH9nHHpLILLxIHDMvMtLM~(LM9IFHtI~ H$?uM)II|DxMMvMMLLI9]IY(I9HIFHtIq H>uI)IIDIWHIw@HHLp|H5L(uiHH5Ș(H5oFLfHH5V-H= ?HH5yL`(uZHH5LI(H5 FL`H5|L(LH5|FWH5rL'HH5T'kH5FLHH5'H5`FLH5L~'HH5fc'%HH5FXwHH53'HH5FLV4H==EGH5-X-L&HH5G&H5FLH5L&HH5&HH5FzHH5W-R&}H5=FLiHH59#&0HH5FXHH54W-%H5FL)HH5ו%HH5&FH=c(5H`f.Mx4IR?HC L{0LLH=HC eH=LGLGUHAWIAVIAULoATSHHL/H8IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHx7>LcHLLHHC L{0LLH|UHAWIAVIAULoATSHHL/Hg/IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHx5LcHLLH3H`f.Mx4I4HC L{0LLHL3HC eH=$B1H=F/IH;L9t+4L3=UHAWIAVIAULoATSHHL/H.IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHx3LcHLLH22H`f.Mx4I3HC L{0LLH1HC eH=@w0H=DK.IH;L9t2L;UHAWIAVIAULoATSHHL/H,IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHxg2LcHLLH0H`f.Mx4I22HC L{0LLH0HC eH=?'/H=yC,IH;L9t1L:UHAWIAVIAULoATSHHL/Hw+IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHx1LcHLLH/H`f.Mx4I0HC L{0LLH\/HC eH=4>-H=)B+IH;L9t;0LC9UHAWIAVIAULoATSHHL/H'*IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHx/LcHLLHB.H`f.Mx4I/HC L{0LLH .HC eH=<,H=@[*IH;L9t.L7UHAWIAVIAULoATSHHL/H(IHHudACLLcB HC0HC M7MLLt MIw{Iu5AS0L{(B8H[A\A]A^A_]fDLMt&fDMtOfHxw.LcHLLH,H`f.Mx4IB.HC L{0LLH,HC eH=;7+H=? )IH;L9t-L6UHAUATSHHLgMuNDk-Lc-Mt7MI|$(ID$8M,$H9tC-I|$IT$H9uL,-MuHKH;1H0H(H{HCHCH9tH[A\A]],DH[A\A]]DHt{UHAUIATSHHHsLH{@HCPLcH9t,H{ HS0H9t,H|,MtLfHh,MuH[A\A]]f.DUHAUATSHH_HtWIHsLKH{@HCPLcH9t,H{ HS0H9t+H+MtL뺐H+MuH[A\A]]UHAWAVAULoATSHH_LmHL~L6 IH[Ht4Lc(LM9IFH}H{ L%tmyH[HuL9mtBMe(M9LIFHtIu Lk%uM)II|GDLHmHL[A\A]A^A_]fDM)IPIzDnLmDUHAWAVAULoATSHH_LmHL~L6 IH[Ht4Lc(LM9IFH}H{ L$tmyH[HuL9mtBMe(M9LIFHtIu Lk$uM)II|GDLHmHL[A\A]A^A_]fDM)IPIzDnLmDUHGHAWAVAUIATISH(H_HEH|L~LHK1Ht^HLs(LS M9MMFMLLLLMLUL]#L]LULMyHKHuH]MtLLL@#uM)II| DH}AHuH9u@)I4$IT$HHx H@0HC HHUHMAH IE(H(Hغ[A\A]A^A_]LL)H=H= 1H(H1[A\A]A^A_]H_I9]t6H(M|$H]Lp(M$HLP M9MMFH]AHuH9uI\$LF(L9LHFHtHv I<$LE!LEuL)E1HH| AAH3!HK'f,I/LF0fDUHAWAVAUATSH(H_H}HuHHLvHUDHK1HtCHL{(Lk M9MMFMH}LL!ttyHKHuI@MtHuLLLU LUuM)IRI|DyBH(1L[A\A]A^A_]fDLL)H=>H=nmDH(H1[A\A]A^A_]@H_H}H9_t:H&LEILx(Lh HMpMMM9LMMF(fDH(H1[A\A]A^A_]f.fUHGHAWAVIAUIATSH(H9LbHN(HLN L:I9IMFMgLLLHMLELM}LMLEHMLH)HH|HHI9]bH%Hx(HI9HIFHt H}Hx LHEHuH}uL)HwH| dH~HEHDH(H[A\A]A^A_]e MtLLLHMHMȅuL)HH| ȅI9] Hl!LX(IM9LIFHt Hp LL]HE"LUL]uM)II| DH{IEIEHH1H([A\A]A^A_]@H(tIH_ LzLc(LM9IFHtNH{ I6t>yH(H1[A\A]A^A_]fDH(LL[A\A]A^A_]M)II|DfDLH)HUHATISHHtHtxH)HHwtA +H~zLH1HHA(L;HAWHHMVLHHHLqLDxHM^DIAL9t HH5tCP"Dƅ3 L#HA$`d\HH`ZLHIL9f\fDc\D{XH{XS`ADAAHAL#HAT$D[PHAH AAp HHLML$LHL LDD@AAHH@HM;[Hwp`LҧFH@H<LGLDpLFL=FL FH@H5ɭFHHDžHPDžDžDžHDžLDžLDžLDžLDž<HHL&HMFL9tEbHL L9F@ERf.HH5q={PXfDž`@w%Dž` w@DAD`H@L AreDžPr32 H`L@HHLIy{PHpHJIrH@ISfD`@gLDKH HDž(ƅ0LxH@HDžHƅPH`HDžhƅpLhHHDžƅHDžHƅWXHDž`E11AHDžL=J;H0H`LH8HM`pIHPH5FD L FLHLFLXLFH`H@Hp'HxLLL=FHH52FLHDžH@HhDžLDžLDžLDžDžLDž HHLHI^H9tbLH@IL9tFLhHIL9t*LpH`IL9tHxH@HH9tLH IL90&DHH5mS2oD t"EL$AAƒAƅDEDf.H{IFHOHLHHHdLPHMFHAL9tDAE9sD1AAADžL[HL HxIsDNH5`<DDCPAu L@ƅPLIL@HDžHAu HƅHpHHHDžA H ƅ0E1HhHH HDž(AH5E+-LېHHL 0+-LbpKHKsHyHQH _RIID@AD0DDPLLL@HHLLHH=<H5aFH >;HFN; HFD`L=S-LpLE;LL%FHH-LLFLLFHDžLLHLLrFHH5zFHH FH HLL .FH H0HLEMFHuH5YFHMH""MDžDžDžDžDž(Dž8L@DžHLPDžXH`DžhLpDžx L]E LME E E EHHLHHH9tHhH HH9tLpHIL9tLH@IL9tLxHIL9@HH5..GƅD t5уA@@ 񈍐uAAAA!DH{0DEuDHH`ZuEugt^DfDž/H=HLy'-HA1L:gKL 3gKL K%Dƅ#DEE1fLCHL;;L`PL,FLXIxI0L@NWLLDH57FLL FH!@DL=A;HDžLDžLDžLDžLDž(HMD$H HL9 HHHH9 HPL0~PHPH P(H HLHDžIHL9tH{HD[H5DI;HH@LXHPLWHWHH@HDžEbDBH0EH5OFDDLDLL@LDžL Dž(Dž8HMT$H@HL9 LLIL9k HHHP~HLHH@HHH[ HHHDžIHL9tH{DKHOHwDQDfD@LPL H!@`IxPM@HXLLH LD0L qF`H5FHDž(DPLpDžxHDžDžLDž4HMT$H@HL9 HxLHH9 HLPD~LH@DDHH HLHDžIHL9tH{sL@LXHPIK@HGLOH@H@HDžHD`EQPH5FLMCD`LHL纵DpLDžDžDžHML$H`HL9LpHIL9D HLpD~HH`DDhH4 HLHDžIHL9t H{DcHHPLXLP@LGHOLHDžAPDIDL HL@LH@H5ҳF;DLDžLDžDžu H MD$HH(L9[HhL0HH9fHHD~LHDDHVH H0HDž(IH L9tH LhLDKH H(H@LLHH@L`LHH`H;HHH L_HhHL DCPH L(LHXHPDMCP`L@DLMCL FH!@HH5FH LHDžDLDžDžDž(L0Dž8b H@IL$H@HHH9LxLPIL9HLP~LH@HHH@LPHDžHIH@L9t8 HCLXL HPDKMZ@HxHPL HDž(DgJLp<HMBH5FD@L`PLH@D0L`DžhDžxDž H`ID$H`HhH9AHpLpHH9|HLp~LH`hHlH`LpHDžhIH`L9tH{0HHXH@Lf L_LLHDžLECHDžDLFH5`FHML$HHL9HhLHH9HLD~LHDDH HLHDžIHL9rrAAA DDHHHHGHpHHDCPZHHH@HOHHH@_DCPL ZKLLHLBHtHHH@HHHHtHHH H(HyHH~HLHH@HHI|$HHP~PHPH P(I|$HHtHHhH`HhH`HtHHHH@HHH@UHtHHHHHHtHSH(HHH HtHHH`HhH:HtHHHH@HHHH~LH`hI|$H`HD~LH@DDHI|$H'HD~LHDDI|$H HD~LHDDI|$HHD~HH`DDhI|$HH~LH@HI|$H@HH@R@7HH nP@7HHH@;pHhH`0H(HuHH HH@@7HH`YHBHBHBH CH*CH]CHjCI#BHBHCHCHBHBHBHsBff.UHAWIH5FAVAUL ATLMSHHGL牅 #L3HAV@HKHyHQHHL1HL HHs0HDžHHHf H~bH`HHHDžhHHH`ƅpH; H`HЃx>HH`Z) HH`P H56-L=L`t%H5~-LLLHsL[H/;MZPHVLFH5FLHDžzAHHFL;L';L Lh0L@H@H`H5FLpMBHhL(HPDžXDžhDžxDžH(H L۽H IL9tFH`LIL9tH'HHHH9t HIL9tHHL`HIL9tH[A\A]A^A_]fHt nHytL3HA`dqHH`Zv{PlHsDCL`HFMZ0H'-;H@H>H5ͲFDODpLMBH`L`HDžhDHDžDžVH(H L@#LLFHpH FHP0H5I;HDžxEXEQL@HpHH >H@HH5FDDDžDžHLH HH(IL9LL0IL9HL ~LHHH L0HHDž(H HH9QfGHtHնtH5-L+ն LHpLr,'HH H5FHDžxA{HpH@LL@HDžHpLHHHIL9LLIL9 HH~LHH HHHHDžHHH944DH{HL;%HH H5nFLWHH H@HDžEZL0L@Dž8D H;LH HH(MQL9HL0HH9 HHD~LHDDHH H0LHDž(H IL9tHH- HH`Z HA0HDžHHHfDH5#-LJҶtH5-L7ҶLCD[H`HHHHpMPMHH`H y9;LHDžhAZAQDpLLHH51FLH;H;HH=K-LLFHHH@HH5cFHLLLLHDžDžDžDžDžL L@Dž(HHL苪HIL9tLHIL9tHHHH9tLHIL9tHIL9tHHLHIL9tbH[A\A]A^A_]HtH1HH1HA HsH~tL3HA`HdH`Zb{PXH1HHI1HD@{LH FMQ@L;HPjLHFH@DMAH5FLHDžD L0Dž8H@DžHDžXHHL莨fHtH H(HHH LSLH55;HDžIH HMZHM@H@HASHH5FDž(KPLsPHL ;Hp@[L_FH@I>LNk,DGHLH5F@D0L@HDž LPDžXL`DžhLpDžxHHL H5=L ͶKHH`Pu HH`ZtHH`xLK[IMpHHMQMYHLASEBH;LLHH ܫF HH;D0L3;H@H5,HHH=FHpH0HUtLEMEHMH@HuH5FHDžHPLXL`LhDžxEEEEH}HEWH8H0LAH0HH9L+L@LjFMQ H@H5FHDžHAxMAL@L`PHDžhHHHHHHH9LHIL9HL~HHHHLLHDžHIL9qqfHD~LHDDHHzH 1HHI1HP{LL ;Ip@M@H@HDžHL#FL(FH5FLgDLDžLDžLDžHHL֢HIL9DLH5^-ȶL[I{t%HH5",LȶHDWHHL 0;HH0L 4f,sHDžD_HH@H@L0L@H5fFDD Dž8L@DžHHLH@HHHMZL9HHHPHH9HLD~HHDDHH@LPLHDžHH@IL9H~LHHHzHfDLLLd,H@MQ HHDžApMALLH5FDžHeHHHHHH9LHIL9>HL~HHH.HLLHDžHIL9))f.HtHߦHHHHGHtHQߦHHHHDHKPHH5q;Hx@[L ڤFL1Lb,H@EFHLzDL@HH5oFHDžDžLDžLDžuHHL_f.wPLLi;MQ MAH@HDžHH5FLLDžHߦH]D0@7H(H]H~HHHHzHVfDHtHݦHHHHH@HCD[L0HHIHpM@LHLPHAQAZH0H *;D@L`LH;HpLH5lFHxH=,PH ;HHUFH\HH@HH5BFHLHDž8LLLHDžDžDžDžDžHDžݦHHLӛCHD~HHDDHHzH@8HOLPH52);IQ0LF_,HDžXD@HPH`B`H@DpMAHH5#FDžLDžHܦLH`HHhIL9GHHpHH9HL~HHHrH`LpHHDžhH`HH9HtH>ڦHHHH(@7HHH~HHHHzH@7HHHtH٦HhHHH`P@7HHHH~HHLIyH`@7HHpHhHQHSHHIHH\HHH(HHlf.UHATISHHtHtxH)HHwMtHI|LHԦHHIH L9tզLHIL9tզHH HH9tzզHMvL9teզLIwM_I?HI0L9IGH9*Mu5I_IHL9tզHx[A\A]A^A_]fDHISLHӦI?LL[A0HDžLILfD IsiHHHpHDžHHHHHHƅHpHDžxƅL HI`M ЃxHH`ZHH`PH5 -L艸Hp:HCDD {LHL@HHHxEPEILH H=RFH5:H(H ;MX`IH0HD^JH;HpLHHH5yFHH@LHDžH8D@DPH`DžhDžxDžDžDžӦH(H LH IL9thҦHpLIL9tHIҦLHIL9t-ҦHHHH9[[D1L辎I?fDIyOHH LH&A`Hx H`dYHH`ZHH`P{PL$KHHH ,ID1HH{DHLH ;[LIRPH:LGH=ZFApL F IZHH=FH0H`LHDžD@LPDžhHpDžxDžDžsPIH5FLH@HЦH(H LΎfDH IL9I ISH`L pFLP0LI;HDžhyDBH@H55}F>L`pH@DL@LDžLDžHЦHH@HHHLAL9 HLPHH9HL D~LHDDHoH@LPLHDžHH@IL9IΦ?A ADfD1LnHfLSHH t:DKHx@MZIRHL;HDžLDBAsRHL:H@DDL@H5{FDžLDžLDžmΦH(H HSH IUH9ͦDkfDAtHH`P HH`PDCPAAMAHƅ oAHHHLBCP==4=/= = =e!HHHH9@DDI?\fH5,LH*HH5!LHHLKH`[Hx`LIqMAH`H=oFLHDžhDVAHHL:HxH5ďFpHVJDLe:H ;HLHHHXHLLDžDžDžLDžDž&KIH5FLH@H˦H(H L聉@L:H+;L:LHLEPEILHHIX`IHHH5UJHHsFHHHLH 8H0H5vFH@H@HHDžDDDžDž(Dž8DžHHPDžX_ʦH(H LIG@HSDKLBLRAxEZZ=HpH u:LH;L':HHp@HH@HpH5wFHHxLLL@HDžxDDDžDžDžmɦH(H HSH IuH9tȦH5,LoHpHK{HHxLILAHAfDL0H=:H@IB@DMBPL :D H5vFLS;HH`LHHDžLL@DžHLLPDžXDžh0ȦH(H H{P JHpHAvH5~,L@HLpLHDžxfDݫLKsHMY`EKH=`<LIK@H5:HHHz:I[H= FHHHHDžDHDžDžDžDž[FIH5FLH @HƦH(H L趄H IL9t!ƦHHpHH9kkDCPA A H=x,H1HHSLDK@Ix`HH LRH:DYAZH D:HD L݉FL KOFD0H=;FLmF@IXH`HpHHDžPDžxLDžDžLDžLDžDIH5FLH @HIŦH(H L3ffDHtHA æHHHHH@l1@7HfDHCD[LLPHDžL@HAqAzHH`L :APLHH @LH5:H=;H:DLFLL@HhH H5`rFHH0LH@LLLDžLxLDžDž(Dž8DžHæH(H H菁H IEH9t¦HKLDSH*NJHIs@HHpLAHH@H5FHDžEHH MCLH0nDDžDDž(Dž8H@DžH¦H(H H誀H IMH9t¦H(H;/LC{HPMMHHDžXMPL@`AsAILPAR`HhLLpHHHLxHH=GFHHDžpLDžLDžLDžDžDžALH5χFLH@HrH(H HXHD~LHDDHH~H@H5,LH2HfDHSHLHDž{LMPPILZFH:LHLAKH=:L/ ;H`H=@oFH FH(H@HpL 0DžHLPDžXDžhDžxm?LH5nFLH@HڿH(H H}hLSLPsH :I{@IHLMJHPL< ;H=nFHDžXAQL :`HpLHDžLDžLDžLu>LH5WnFLH @H⾦H(H H|pCPpHHDžHLSLHpDCI:IRMZEQLH`_JH=:H:AsDLFL:HFHH=FHLHHXLpHDžxDDžLDžDžDžDž=IH5eFLH@H耽H(H Lj{H5NKHHHH fsP HHDž讖LSLI}`H5B:DCIIRMZL:AAL GJAKZLFH:H H=FD0P`HpHuHUHDž(Dž@pELMELUEEL]E;MH5FHH@HHxHpLyHpHH9PHHHH5|KH KDžpHDHHpHCLHCH :D[HHLHARH{`LFJH%:H[EAHL FH=4FDLO-DHH HDžDžDž(L0Dž8H@DžHLPDžXL`Džh :IH5FLH @H|H(H LfxHpHAqH5,L@HLpLHDžxfDULKH[IIDIHH=S<HHJ@H5=:H L:H="FHHZHHDžDHDžDžLDžDž(8IH5FLH @HDH(H L.wsH=j}FHL2LILظHHA1HDž 1oq ooaDI0`)p DH0HpHAkH5@,L@HLpLHDžxfD蟜LKKHIqEDNLH=MQ<Is@H :HHH<:I[H=jFHHHHDžDHDžDžDžDž7IH5 FLH @H获H(H LxuH5|{FHEHsHHHVH5FHHvHII)HIT LHHUHMPL9~ LL9 H=AFHH5FHߎFHMHxHHH)H)UHLLLpHLLILBƄUHIQLpH9 HHpHLHHHHHL@0[LQ:HxL :H@HDžƅD_LLL@HDžDLDžLDžpH(H LZsH IL9tŴHHpHH9t詴HHHH9艴L0QL":@I{@HH:H`H0LM<I[H="FPLHDž8HDžhHpDžxDžLDž3IH5āFLH @HOH(H L9r~HsHHHVH5FHHrHII)HI LHHHMPL9g LL9H=FHH5FHFHHxHHH)H)HLLLpHLLILBƄHIQLpH9pHHpHLHHHHHL@0[L%:HxL :H@HDžƅD_LLL@HDžD L0Dž8L@DžHDH(H L.pHvFHHpHDžp蹋HKLLHJ:IzP[LH(H L(lHAKL@:H{@Hf:H HLG<H[H=FL@HDžHDž(H0Dž8DžHLPDžX,IH52FLH @HmH(H LWkLKDCHH5k:HP0L:MYHHXHDžA{DHH= FLDžDžH,IH5FLH@H蹬H(H LjH IL9NL[DCHH5:LR0H :ICHZLHDžxDH H=FH0Dž(Dž8+IH5׉FLH@HH(H Li4LCL@[H (:Ir0L :IxH@HDžHWH='FPIZHp`DžxLDž*IH5FLH@HAH(H L+ifDoLLD)HHAU1H F(gYHHA1H ބFg^HHA1H Ff=foLL)foLL)zA~AH=CH=7 H=+HHHfHsHHHHHHH|HHHlHH/HHHUH4HEHHHHoHRHJHPIUHHHHHHH:HHHHH0HHHff.UHAWIH5SGAVLAUATLSMHH8*GLcH 1HHH @LH1HH(A(L+HAU@HHPIՉDHSHxDƅD уAAD وDփ@!@H(H51HHwHHwDIEMEEI͉DADH(H5*-HHDDwHDHt!HH51DHDZEPDDIAEEHDADDDH(H51HHvHLEʼnDDžD9s1A&DžH{LLOH=&)<EAD6HMH5)<HH衑sPL@u #IMƅPH@HDžHu a#Lƅ ISLHHDžILƅMALE1LHDžL P#L,L} HL٣,H= JHKHHAHqKR@^I$ILLLLLL@HH5 TF H:0H D:PH:`H;GHpLL'<LL &-LL+RFHDžLL@HHHHRFLLq#-HH= RFHH5QFHH QFHHQFH H RFHpH=jFL`HuHMHUL0L@LPH]HDžDžDžDžDž(Dž8DžHDžXDžhDžx E E E E HEE MH5FHH""MHXHHLBLHHH9t譍LHIL9t葍LHIL9tuH@IL9t`LHIL9H(H5-HLqHHDDEDžDž H],H+LM,H JLkDCM]I}L MwACH=_5L DD0MML -@H5_OFPHAOFHpH :LLPFHH:HH=wFHHHHLLHHD`LLHDž(DžDžDžDžDžDžHDžLP LH5vFLH! @H轋HHLIHM\$L9t91LSL& "APHƅHH{PHHDžX{PqXL,LCJD~D~LHDDLD)@DD)H5Q6GL *6GH[HHH 6G~LR:LH~H)HL) HCLLLXH@LLCLH H0IxLH(H3HPASHARAPLHhHPHH0LHH8H`L`L tH=FH IH5FLH @HUHHL?GHIT$H9t詈HHHH9艈H(H5-HH#mLDDEHEDD"HKLDSH=:MC@H5pLFHHQH :LHDžDhDJISH@H=!sFHPD LH`HDD0DžHDžXDžhuLH5rFLH@H⇦HLIOHL9t>CPLADH(H5-HDHkHDHtH(H51HHD~kHDDHE~"Ay ANL@LU HIHDžHHHL@ƅPHHDžƅDKPA8A;L/:LH5'@H JHN,H=JHC[LXLHHEQECLL@HHHPDHLDLLLH`H O1GL8HHLL1GL H(HNHFL0H@H=1GHpH0GLLhHDž DžDžDžDžLHH=+FHDžDžLDžLDžHDž MH5FLH @H葄HHL{BHMT$L9t僦LHIL9tɃHH@HH9 @@"@AH ,L JHAJLDKIDLEDžL{GLז,LJLJH=sDK AHsLDDKH JIDˋ[Lu,H=9=HFL^H8JL-JLIELEHECxHEQDLHDLP5DL¹:H=e.GLL-:HH #:HHFFH H0L`HH.GDLa-LL DFHH^LPHDž Dž(Dž8L@DžHDžXDžhHpH=,FDžxHDžLDžLDž:IH5FLH @H諁HHL?HIt$H9r-DžDžHGL;JH BKLkHL\:HPPH5DFLMMM]L-r:HHDžAIESL,GLHHP0H=1FL`D L@DžHDžXDžhLpDžxLLHpH!@H5¢FHHCHH谍HHpHH9tLS{LpLIp0MHIBHpHDžxPH=FLDžLDžL LHH@H5FFHHoHH܌HHHH9t~LSDCDIBIzDXDODD#!HD LLAFHxPD@DHH@HpH5FD0L u:LpL@HDžDPL`DžhDžxLLDžLDžH,~HHpHHxHAH9GLLILL9l:HLD~HDDH\:HpLLpHHDžxAHpHH9t|HDHDžHx`DHLHDH=)GLDL)GDL@#H5~FHH@HHPDDžLDžDžDžL Dž(Hl|HHPHHXL@L9@LL`ILL9@HH ~HH@HPH`LPHHDžXAHPHH9t-{LHHDžHIx@DM@DHH0H@H0H5 FH@IDDL Dž(Dž8DžHHzLH0H@H8ICH9>LL@ILL9>HLP~H@HH>H0L@H0LHDž8H0IL9tyHLLHHLLHLLLH@LH{BHHHwHHHHZHsPLHD zDHsLLBv:HDžIS IKHFH=FFHHDHLDžD艾LHPH@H5zFFHH>HHXLLHPIL9H~HLIL0|HtHLLHH@H5-FHH4HH BHHHH9t3{PsL PJL*J~~LH5JL))nHsL0Lj:HDž8MCIC LHNH=$,FLH0DILPDžXD@LHPH@H5+FHH3HH@HHPHH9t2H{L`HHDžhIK MSHwH=+FH`LDNHDžDpaLHpH@H5+FHH2HH0@LHpIL9LyJH=SJD~D~LH:JDHD)@DD)銧fELH=1FD)@D)D)LoL1HH51FHH1HHF?HHHH9&1閦fELpH=~ FD)0D)D)pLڰL1H0H5C FHHD1HH>LH0IL9t0{PH JLJD~D~HH=JDLD)@DD)fEH`H=^FD) D)D)`H꯴L1HH5#FHHT0HH=LHIL9 `HHXD DH@H)@7HHHH:HHH@HHH HH7HHx@@7HH8HH HHDDHH@7HH@7H@H@7HHY@@7H@H8n`HHX@HH8H@HjHotHuHuH$vH7vHOvHuH|uHlvHNvHvHvHvHvHvHuH#wHtH(wH@wH8wHotHvHPwItHwH+tHwHvHawHtHiwHwHvHvHktHvH?tH)sff.UHAWIH5IFAVAUIATSHIHGHHPO,MeLAT$@IUAHzIMHLHXPMEH1LHHA@IuH~) MUL`1LL0LAHLH5d1I}LLE M`@M@HHWLLOH=R:HDžJpH)w:HEYH@H5yFH@HHHKDLDžDžDžH8*IEL`xA MeLA$`dL@HHDžHHL(IHHL@ƅPHHDžƅH;H(A11H FLE]LH5FLDžDL)AMHLH5FHDž)L8LHLHHHX)MELHH W:HpPH=+IEMLMPL@HH5FHDžARLLLFH H@CH0LL@L@DDžLDž(Dž8DžHLPDžX(MHHIHL93LHIL9XHH~HHHHHHHDžIHL9tt'HLCL9t_'LHIL9tC'LHIL9t''IELA   MeLA$`Z HA0HDžHHHfDIEL`E]H=U:H@IPPLHL FL`HHñIM@LAL$L@H`sHpH5FH@HHPHDžhLxDDžLDžDžHHDžLDžH;&HXH5[,h  LIEHPHXHPLD L@LHEmE LLH L`DrHAD$LL%kELLDLL LH0L@HH8HHL(L>FH@H WFHHHPH5QFDHDžDžDžXL`DžhLpDžxLmELMELeLLELLCHMH@EEEw$HHHP]HIL9t#HHPHH9t#LHIL9t#HHHH9tt#H(H@HH9tX#L8HIL9t<#L0H`IL9t #LHHIL9t#HXHHH9t"LIwMOI?HM,0L9IWI9waMuHDžHDž LHDžXL`DžhDžxLDžLDž.HHHPHHH9tHPIL9tHgH(H`HH9xfDAtIEL`PA E]PAD A7 LA0HDžI|$fDHA A0 A AHIL9NNfD1@7I?f.H HHt]IMLL@HMP M@HDžHQLH@Hr(LDžH5RE-DrHH0H8HHHLLLDLL(L@LFH@H tEHL L FHHHHPH5FLL@HH @DHDžDžDžXL`DžhLpDžxLDžLDžDžDžHHHPHHH9``HXH5%/,eHXH5m"MuEmLH@HIPpM^LHLHAKLD LLHHF@LH@HH5EHhH=FHLLPHXL`M`LHDžDž0LpDžxDžLDžDžHHDžDž袗MH5HFHH@HHHHP3@HXH5lAu`LPL`H5FLE]LL`H5., LDžpD`hLLLL8LHHXL LLH !FLIz H H @HHH5FLMBHDžLDžHHHPHHH9tHIL9tHIL9tHPIL9fHH HHH fI}LL@H]D:IL$0HDžLOHHH@EAH5AFHDMD$DžLDžHHHPlHHSH9tAu}fDHtHHHHHH~HHI|$H@H~LHPXI|$H@EePAA AHHH5I,M]EEIKQLLT;:D Mi00MqH=qFL%hB:LHDžL@DžHLPDžX9MH5'FHH@HHHHPLEMH A:HDžIS0H5&IH0H=FHMsH@DDž Dž8DžH膒MH5̸FHH@HHHHP(LH5fL H MEAuLL @:H`LhMS`L%[FI@L7IPH@HHXHH=FH5@FLMkHL H@LHDžDžLDžLDžDž(H0Dž8DžH MH5FHH @HHHHPw^fHtH0HHPHXH;MUH=[FLpMbEL$LDprMLH5&FHE]PAAuMuLA`PE]PAxIEL`POE]PYEMPAAZEQAM]L%;H FEmH=[#,H5-cJISMsHPL>:DBHD7:IOAEVLH`HEL%F:DpHH=uFH gEHH5 FLpHHHLPHDžXD`DLDžDžLDžDžDžŽMH5صFHH @H3HHHPd@IEL`PE]PMuLA`P+E]PA}L H5%=:HDž(IH MpH@0H=FH DžHMH5FHH@HcHHHPI@7HHIELAuLw<:Ix@L EHLXL5'5:DjAKHH=2FDMhHDžLDžL Dž(L0Dž8MH5ίFHH@Hi HHHPOHHH94 *HHPA}LPLi;:HDžXME0HIDžp`MeH= FLPLDžHDžMH5ҲFHH@H HHHPkIUHEmL::LG0L t3:HrLwH=FLHDžNDLDžLDž]MH5FHH@H HHHP`HHH5QA,MEAUMPAz.LL2:IK0H=FL-9:HMcLHDžLDžDž苊MH5FHH@H HHHP-HHH5@, IMAULAEPLpH 1:M\$0H=2FHL58:LpMl$HDžxDLDžDž趉MH5ܜFHH@H' HHHP XIELEEL X8:Iz@L-EHLXHL51:H=CFHDžqASD L`Mj0@LPDžXDžhLpDžxڈMH5ئFHH@HK HHHP1IEHLL y7:AMLIp@L5,0:LXL-;HHDžASHH=FLMpLLDžDžLDžMH5EFHH @H`HHHPFIEHLL 6:AMLIp@L-A/:LXL5 ;HHDžASH H=FL@MhL(L0Dž8DžHLPDžXMH5FHH @HuHHHP[H @L 5:Hp00LpH=MFL%U.:H HDž(LPDžXL`Džh]MH5FHH@HHHHPIEHL`L 4:AMLIp@L5-:LXL-x;ASHH=ӧFH`pLMpHDžhLLDžDžLDžrMH5hFHH @HHHHPuHH=4:Hp0HLhL ,:H=FHHDžDDžLDžʄMH5HFHH@H;HHHP!lH`H==,:DpHp0LpLX3:HH=FH`HDžhLDžDž"MH5FHH@HHHHPyIROIOIOIOIPI?OIPIOIOIPIOH)QIQRIROIPIfOIPI:QH PINHOINHPHOHPIQH'QHzQI_QIQINHvQIQHQINIQININHPHPINHNHNf.fUHAWAVAUATSLaL^LUHZE<$E3MXD+D}MyAHE(M'M_Mz]LeIMgL]L} L]H]I[M_LxDwDo DuDmLLL?L}Dw0LuDo@LmLPLwXLo`LghH_pLHG H6LJHHLJHH LJHMLJLM LJLeLMLJL] LI$LJHM;LJLHLJ(H [A\A]A^A_]ÐUHAWAVAUATSHFLyLbH]D0AMyL]E,$M`EILU0DmE,$HEMgICL{DmLeM/MgL8L}H@L} HEIGL}(HEIGMzDwDuLo`LLLmL?D}Dw DuD0L}Dw@LuLPL}LghLeLwXLopLgxLHHG H6HHE LJHLJLm(HH LJHMLJLM LJLHLJHMLJLL0LJ(L MeLJ8L0MLJH L@[A\A]A^A_]f.UHATISHHtHtxH)HHwMNLLFMV M^(H5R+HHLH@HHDžLLLDžDž DHHLHH@LO0LGL L LhL 1H5+HX Lp(LHDžLLHLLDžLDžcLH0LHGLh0L5 1IpIH IP(M L@L0HHH5+HPH@HXHDž8L@H`DžhLpDžxLHH WGLF0H 1I9MQLLFMY Ma(H5=+HHLH@H HDžLLLDžDž(RHHLFH@LW0LGLL(HXL%# 1H5+Lp LH(LHDžLHLLLDžLDžqLH@LL5FHX0L 1IpIH IP(M(L@H@HXH5ǯ+H`H@HhHDžHLPLpDžxLDžLHH eELF0H 1I:MZLLFMb Mj(H5+H HLH@H0HDžLLLDž(Dž8%`HHL%DH@L_0LGLHLpL-1 1H5]+LH LP(LHDžHLLLLDžLDžLHPLL DLp0L1IpIH IP(IL@LPHhH5+HpH@HxHDžXH`LDžLDžLHH sCLF0H1I;McLLFMk I[(H5+H0HLH@H@ HDžLL H(Dž8DžH3nHLH=BMZ MBH @L0LHH5L+HLLHDžLLDžLLLIp H IBM,$I\$M@HHH5^+H @HDžLHDžA|HLHpLALP L@H @L2LJ H5M+LpHDžxLLLDžHH@H5^AH @LC L'LoL@LH`LCH5+HDžHLPLXDžhQHLLL@IA MAH Lr H5T+HH H @HDžL(L0Dž8L LLn@I] H5ө+H @I;McLMEHHLHDžLDžaHLH?LMN MFHHVH5]+LHDžHH @H HDž$L LH~?Ml$ MD$H @IzMH5˨+LHDžHLLHDžoLLPL ?LIv IIPHPMFH5O+HDžXH`H @HhLpDžx2H H L->Lg LGH @LLLXH5ç+L HDž(L0L8L@DžHHHH5>LLr LHKHH5K+LLLB HH @HDžDžBL HL%=Hx L@H @MMYHLH5+HDžLLLDžLHLL5&=HJ H5Q+MEI]HH @HDžLLB HLDžQH L`H=<IC MCH @LLVHH5+LH`HDžhLpLxDžLL0LH 5<IP H5J+M,$I\$M@H0HP H @HDž8L@HHDžX$_H5IL KI M9SnI555I5ff.UHAWIAVAUAATL`SID$LmpH H2HRH`HIL$0$HMYfҿ@fohiGfo piGfX @")@#HHEHE#HE#)HDž HpLp@HHH0HhH`HL HMLC0HuHUH{ LC HH*H}MT$0LL9t0H`M\$L9tAxiH=dGNc,IALHH=֣,LH@L:MD$ I$L0LIt$(IL$@IT$HMt$LL@HH5{+H H @H(!HPLHDžHLL0Dž8L@DžHDžXf.LLM9t,DI<$It$H9fI M9uLMtLH L[A\A]A^A_]LID$@L 8LLp0L :ME Iu(IM@IUHI]MuLEMD$HuH5L+HMH @HUH`HDžhHpLxLMELUEL]ELHPH ,8LF0H0I<$Ml$LPLFI\$ Mt$(H5+HH`LH@H HDžXLhHpLxDžDžCHHH7H@Lo0LGL LLPL50H5+LX L`(LHDžLLLLHDžLDžBLHLL6LP0L%h0IpIH IP(ML@LHH5.+HH@H HDžLL Dž(L0Dž8LH@H 66LF0H0I}I]L@LFMu MM(H5+HpHPLH@H HDžHHXL`LhDžxDžPHHL55H@H_0LGL LLXL 0H5ӟ+L` Lh(HHDžLLLLLDžLDžOLHLL%4LX0L-u0IpIH IP(ML@LHH5+HH@H HDžLLDžL Dž(ߥHH0H C4LF0H0H;LsL0LFLK LS(H5u+H`H@LH@Hp HDž8LHLPLXDžhDžxߥ^HHL 3H@Lw0LGL LL`L0H5+Lh HX(LHDžLLLHLDžLDž]ޥLHLL-2L`0H0IpIH IP(ML@LHH5+H H@H(HDžLL0Dž8H@DžHݥLHH Q2LF0H0I>MNLLFMV M^(H5Z+HHLH@HHDžLLLDžDžݥlHH L1H@LO0LGL L LhL0H5+HX Lp(L HDž(L0L8H@LHLPDžXL`DžhkܥLHpLH1Lh0L50IpIH IP(M L@LpHH5+HH@HHDžxLHDžLDžۥ LHH _0LF0H0I9MQLLFMY Ma(H5E+HHLH@H HDžLLLDžDžۥzHHL/H@LW0LGLL(HXL%+0H5+Lp LH(LHDžL H(L0L8L@DžHLPDžXyڥLH`LL5/HX0L 0IpIH IP(M(L@H`HxH5Ϙ+HH@HHDžhLpLDžLDž٥.LHH m.LF0H0I:MZLLFMb Mj(H5#+HHLH@HHDžLLLDžDž-٥HHL%-H@L_0LGLHLpL-90H5e+LH LP(LHDžHLL L(L0Dž8L@DžHإLHPLL -Lp0L0IpIH IP(IL@LPHhH5+HpH@HxHDžXH`LDžLDžץH1LA0ILP HIFHPHHxD LH MQA0LiA0HH@DA0L`LH_LfDLL LHrLMHfDMZHI}LIH1fD0E1HDžHDžHHDž(HH@HDžHƅPLL`HDžhƅpLLHDžƅHDžHLXDI$LHRHH5R+茦HH;tMDIFHHxt,9|MfML$MQIQ L)HH93M$LM$LASLH5+ HH;t/1LpDIL`P3IL`xM.LA`ZPM&LA$`d9ENPEiAA AAx&ILL`AA҃dutA~P#fDHHHPL8LXLHDžEvIHM@HHLLH DL(L@LHHLhHH9L`LHH5ILHHV,HH=9GLL%8GHH 8GLL 8GLL-8GHL(L L0L8H@LHPH5yFHpLHH@DžHDžXH`DžhDžxLDžDžLDžLDž徥HHH@H|LH@HH9t3HHHH9tLH`IL9tLH@IL9t߽LH IL9týLHIL9t觽LHIL9t苽LLHIrI:MZI0L9 IRH9QMu\LHIXHHH9t!LHIL9tHX[A\A]A^A_]HIK HLȻHH9@DEMLHAQpA~P!L%FHMLL@HHLIs0LH@L%9H&H5yFLMCHLHDžLDžLDž耼HIEHHH9"HHHH9$#HL~HHH#HLHDžIHL9tWLH@IL9t;AFPA IIvLLFH5.HAxL LeHIEHHH9_"HHHH9HLD~HHDDHHLHDžIHL9t9AFPt MHLHARpL`LHH @LIs HDžhH`H5swFLpMCHxLLDž HHH@HxH@IL9tqHHH9t\AFPB@ HINL L0H5DHLLIAQ0臹H MUH H(L9 LL0IL9HH0D~LH DD(HtH H0HDž(IH L9t[ILHSpHHHL@L@HO LGLHDžHH50GH @HLLDžXH@MUH`HHL9LLPIL9HHpD~LH`DDhHH@HPHDžHIH@L9t,HH@HH9tI>LHOpH IVH@L H=9HHI@0H@M@LRUH HDž(EZL`L`H@H5KtFHPLD0HHDžXDžhҶHLI?ĿH`L9t.HH@HH9ZPfL1LrI?ENPAkAM[MVH= HLPHMZECDPx5MHH5 HHHHH[ÿHH9tJENPAIHLHPpHHHL 9HO LgHDžH=-GHHHLDž4LMH @H5-GHL"HHH@HsH@IL9tsHHH9t^ENPEAAAILHPpHH@HHL 9HO LgHDžH=rFHHHHLDž3MH5qFHH @H(HHHHH9t脳LH@IL9th;M^H H9HH LhMCH HHDž(AxH@DžH0H=ZqF2MH5KqFHH@H^HHHHH9fDLfDHHHP6EfLHHgIIN@HMFLHHLHL(9H L[I,H @H5rFH(LH`jHDžDH0L8L@DžHLPDžXDžhLGpECHLHALLHH 9MQ HH=lFMaLHDžLHDž.LMH @H5_lFHL,HHH@HmH@IL9t}HHH9thMM@pLHAHHHH@LHw LGH @LHL%9H5&GH(HDžH L0Dž8ZHLIǻHL9t趭LH@IL9t蚭I~ HPpLHH@L@HHL`Hw LoHDžHH=lFH@L LPHXDžh,MH5lFLH @HmHLIںH L9DM&LA$`PyM.LA`xcIL`ZM>LA`d5HH5./HDEtAHHHPM^HLEVHPMHDžIsLLL59LH@~LHDL`LhHHHHHH]9LLL%XILL-{B,HH$GLL=$GLL$GLL$GHH=qFHHLH L0MqL@LDž(Dž8DžHLPDžXH`DžhLpDžxDžLDžX*LMH@H5]pFHLªHHH@HhMH@IL9tHHH9L@ LHLL@H5"G LL@LH2HLI蟷HL9\\AvP H L IMVL`LH5"GMZA{LL觩H`IEHHhH9HHpHH94HL~HHH$H`LpHDžhIH`L9t~AVP8 / M&MD$pLHAH@HLHH59LA LiHHH=fFHLHDžLDž'MH5fFHH @H3HHH蠵HH9t菧HH@HH9tsI!LXpLHAH@LHH=1 GLHHL ' MHH5GH肧HHH﴿HH9A҃PIL`Z$M&LA$`HHPd`EL=/GH ,LEL-(/HI~LHXEvHLOHWLH@HHDBEQL HhHLL%LGL`LDL59DL 9DLILLGHH,HH5GHH GH8H=sFLPL-P9HHL0LxL@LpHDž L`DžhDžxLHHDžLDžLDžHDžLDžDžDž$LMH @H5rFHLHHH@HbAAAH5I HD~LH DD(I}H L-&/L-HH~HHI}H^8H5UGL-,LDL%%/HHHPHIVMEvHLZLBArYHEHE{H8HLH@LDPL@LHL@L{GD`DpH59HH=9HH3GHHILL9,LLGLL5,HDžH LL`LhLLL%.9HLL-GLL GLL=GH0H=dFH H`LEHHLLaH@LPLpLMDžDž(Dž8DžHDžXDžhDžxELuELmE E L}E ;!MH5cFHH@H謡HHH_IvHpEnL9L@@L-9HNH~HXL=9LpWDIH=9Mk0HDžLpHL *SIH@LH5DFMCHLLDDžLDž`\HpID$H0HxH9- LLIL9J HL@~LH08H: HpLHDžxIHpL9t6[HLH h-1LDFH5YGaA11LH r+-LHHxIMH`LI9$ L`LHLpLPLH8H(LhH8LH@@LLHLLH HLuMHIFHHH9K HLHH9PHL ~LHH@HLHDžIHL9tYHIL9tYHHH`HH9t{YHIL9tfYDcPAAFA|$AA|A@ MlL#1HA$DHPH5FHDtZAdjjg^ mU hFE1LfDLCIxkD9Z HSHrLNHV L)HL9aO4LMLARLH5z+=HM]L9 IXy{P <9LHRHPHHH9LDL8HPIL9tWLH0IL9txWHHHH9t\WHHHH9t@WL HIL9t$WH(HHH9tWHHHH9tVLHpIL9tVL8IwM_I?H0M40L9MWM9MuXMwL0B7HPIL9tsVL@H0IL9tWVHX([A\A]A^A_]DHILHUI?HA8HDžHHHfDf1LI?6fDLXIM)I_L8HPMl$IxH9:H`I9:LAr][c][fDIHPLXBD HxH;fDHt#HHp`OLH8H(LHMl$HHL9L LIL9HL~LHHHLHDžIHL9DcPAL#HA$`H{L[LLwL/L0L8HHHHEmEvdHPLLFLHH=9LPLHHH5F`Hj9LLELL9LL PJIHH @HgLL@H LH0H5J=FHDžXDpDHDžLDžLDžLDžDžDž(Dž8SHhH`H@LH`HH9dRH~LH08I|$Hp@AgDL#HA$`H{D[LLLGL0H8HHAXdL%9HPD`LLHH=Ν9L|HILh`LLFHLK9H5>FHH @HHLLL@LPHDžXpLLDžDžDžLDžLDžBQHhH`H@(#I?L+HA`H{D[LLLGL0H8HHAXd LLHHH=e9LGILH`DLL-~9LFHLԋ9H5?FHH @HH LL0L@LHDžLLDžDž(Dž8L@DžHLPDžXOHhH`H@ @HtH\NHHHHHtHTMHHHHoP)pHtHlMHxH0H8HpLXHL)HXH8LPMfHBI9H`I9MA[cfEAA]LXLPCD4GH`HH |9LHHEL`LHpHFDL-9DL5eDILLF9LLFLL@HLHH55FHH @HHDžhLDžDžLDžLDžH Dž(L0Dž8L@DžHMHhH`H@ @LXHL)H.VL8LPMfMkM9H`I9MA[rfEAB]@H~LHI|$H`@H~LHI~HDH8A1LH E*tDHH5-IE1LLH=7FIE`LL y9HL5,9H5AIHH FHH9I]H H0H@HHDžDLLDžLDžDž(Dž8DžH4ʳLHIH @H56FHLJHhH`H@L3HA`d'9HH`xt)L#HA$`ZtL+HA`PLCHKL%yx9Hz0LrHDžMPHL-9H=NFEZLDDžL Dž(ɳHMH@H54NFHHIHsDCH0H=_NFHH0LpHDž8LNH0EQD@L`DPDžhLpDžxȳHMH@H5MFHHHLHHHASpHLhL`L9HV HFHDžH=FHLL(L L0Dž8HdzLH5FLH @HKHHHH`HH9tGH{L [HMHL_HHrEK0LHL HLP@DPHLH`HXHpH= >IHHhH FLxL7+HH,HIXLLHLL% EHDž(DžLL-TFHH=gLFLHH DžDžLDžDžDžLDžDž( ƳLHIH@H5KFHLsFHhH`H@YLH`HH9tEHIL9tELHIL9tELHIL9pEL H=\4FIA`L@H'9HHL5t9MiH5j9HPH FHH>HhH`H@H`HH9t>HIL9t>HIL9t=H`IL9t=LH0IL9t=LH IL9t=HHHH9"fDH8A1LH U+"lDHH`PL3HA`xL+HA`Z9L#HA$`HPd0HsDCHLLLppL^LNHH5k9ASAYLEL 9DQHH Md9HXDL3IDL%,HH=RFHH0L@LHXLL LPHDžLLDžDžDž(Dž8DžHDžX»LHIH@H5QFHL,MNL9 5I M9uLMtL5LCHL[HIT$pMd$MPILLPHEZH[d9HLXLH>GHDH 9DLU+HH=,HL HPHpLL(H0L`HDžLDž8H@DžHDžXDžhDžxHH==FDžsHHMH@H5=FH4HhH`H@HHH`HH9t*4HIL9ALLH Q[9Mf@H%M*MBL M0LIz Ir(HDžIRHMZ@LLLMFHLHH5m*HHH @LHDžLDžDž30LH L5UH@LB0L%L0M*IzL LBIr MZ( HDž(L0LH8LH@H5*LHLPDžXL`Džh3HHHBL0Hw0LLh(HH LGLLPHH5*LLHLH@H HDžLLLDžDža2LHL- HH0H=K0M0M`HH5^*MH MP(LLHL@H@LHDžLLLLDžDž1)LL0LH@MA0L9LIsIS(HJ0M3Mc L0MAHHH5*HX HDž8L@LPL`DžhHpDžx1|LLHIt$0L /J0I}IM HMD$M]Mu(LHHH5* LHH@HDžLLDžL Dž(W0LHL5 HH0L%{I0MhIx H5;*MMX(HL@LLH@HLHDžLLLDžLDž/HH@LDH@LG0HH0Lj(HrL LR L@ LhLGLHXLH5O*HDžHLPL`LpDžxHDž.rLLL-Ir0H=&H0IN IV(MBM&MNL LHH5*HH@H H0LHDžLLDž(Dž8P.LHpHHH0LMMpLHpM` MH(LYG0HL@H5n*H@HDžxLLLLDžLDž-LLL =H@MD$0HF0I}IuLMD$M] Mu(LHDžHLHH5*LLLDžHDž,hHLPL5Is0L%F0LjHJ MCHz(LHP LhLH5y*HpH@HxLHDžXL`LDžLDžF,LHH=HH0LoE0Mh IP(H5*MMPHL@L LH@H(H0LHDžLLDž8L@DžH+LHL-3H@LB0HD0IvM&LLBMN MV(LLH H5*LHDžLLLDžHDž*aLL`H D0Iq0LI;IK MAH`MsMc(LZHHpH5G*LHH@HDžhLxLLDžDž?*LHL%~HH0L cC0M(Ix HH5*MXMp(H@L@L LH0LHDžL(L8L@DžHLPDžX)LHL5,~H@LG0HB0M*IrLLGIR(MZ HDžLLHLH5*HLLDžHDž(ZLLpH}Is0H=B0Ml$(IL$ MCM $MT$HpH5*LLHH@HHLHDžxLLDžDž4(LH L-|HH0LXA0M0M`H H5f*MH MP(LPLL@LH@HDž(L0L8L@LHDžXL`Džh'HLLH@MA0L |H:HrLMALr Lb(H@0 HLHH5*HDžLLLDžHDž&OLHH5t{Hz LBIMM]LHH0LH5*H H @HDžL(Dž8Z&LLLH @MP HzLM&MNM@H5o*LHDžLLHDž%PLHH5uzHz LB IMM]LHHLH5*HH @HDžLDž[%LLLH @MP HyLM&MNM@H5Y*LHDžLLHDž$QLHPH5vyHz LB IMM]LHPHpLH5*H`H @HDžXLhDžx\$LL LH @MP Hx LM&MNM@H57*L HDž(L0L8H@DžH#RLHH5wxHz LB IMM]LHHLH5*HH @HDžLDž]#LLLH @MP Hw LM&MNM@H57*LHDžLLHDž"SLHH5xwHz LBIMM]LHHLH5*HH @HDžLDž^"LL`LH @MP Hv LM&MNM@H5#*L`HDžhLpLxHDž!TLH0H5yvHz LB IMM]LH0HPLH5*H@H @HDž8LHDžX_!LLLH @MP Hu LM&MNM@H5 *LHDžLLH Dž( ULHH5zuHz LB IMM]LHHLH5|*HH @HDžLDž` LLLH @MP Ht LM&MNM@H5*LHDžLLHDžVLHpH5{tHz LB IMM]LHpHLH5g*HH @HDžxLDžaLH57ILV I M9HH`LHdH=d;FHLLZHHM H54;FHHLLLHH=2;FL MLH5;FH|LHHLL HIL9tLHH`IL9tHsHH`[EvHLNHVDPLHi9EaDBpHLH`H FHHPDDDLXDL5K9LL=+HH5GLL ,HHFHHFDLkD9DLgH=9FLLHDžh DžHH0HPHpDžL Dž(Dž8L@DžHDžXL`DžhDžxHDž꛳LHMH@H59FHLTHhH`H@:ڿLH`HH9tHIL9H1H8L3H1HA0LHH 1HމPL@LMH`IL9t!HHDHDžHHLHƅD_H=2+DD賚HMH5h2+HHDKH=N2+DžLLD_MLH52+HHxH;LSHHL I9KLHp@L-Tf9IRLeFHHDžDZHPHH= FLLLHDLDžDžL Dž(vLH5( FLH @HHLIP'HL9t?HKHpH=FHLLYACpLLH5^FHnLMLHHHH HhH`H-׿LHH`IL9tHIL9t|JDEEjEIAAA?AAD$H5FAtAH5FH ڒFHEHHAH5ܒFL.IEH`H]AHPH5.H9L@DHDžHLIL@ƅPE L[H`HIsIKHHH53FHH0HH5qFHqHH H5FH@L0HHFLڿL8HhMUH0M L9L@H`M9v$HHH9HpI9VLԿHHPLFHLHH9HLHLLPHHLHHFH@@ٿHHL[HID^D@HLHPH@HhDHLXDHLHHLH`LHH<9H H5Wa9L(LFH0HFL8LFH@H FHHHHELPLFHDž HHD`L%C9LpLHHXH=C9HHHHLMAHH@HLDžxHDžDžLDžHDžDžDžDžLDžDž 8HhH`H@ҿLH`HH9tHHHH9tjLHIL9tNH0IL9t9LH IL9tHH0HH9tLH`IL9tHH@HH9tHHPHH9tLH`IL9tLHIL9tuHIL9t`LHIL9tDLHIL9~~HHH5Z*IL5H*IyHHHHLWHL`HH5o, MXpDHHHEAHL`LhH3R9HqLY HH=ELLHLHDžLDžLH5ELH @HLLIHL9tLHH`IL9tL&LSDkHL?9HLXL_PH5\9IBLL pIL,HPLHDžHDLoH=FHLLHLHDžDžLDžLDžʏLHMH@H5/FHL4HhH`H@οL#HA$`DsdH= 1FD0L0Dž@FLHMH50FHLL`LL(H`MD$L9tLH5iFLLL[1HDžIT$ƅL u69HIsL$FMSILćFH eGDKHHDXIDȋvEBDpHLLDL`L`H[LXDHhLPHLHLLL1Z9HH559LL.+LLGHHb,LL FHH<9HDžh DžHH=HH0H=49HH DH HvFH}H=4FH@H`LpHUHHHDž(Dž8DžHLPDžXDžhDžxLUEHEELMEE E 薌LHH5@4FHH @H HHH@ʿHHH9tT HIL9t? HIL9t* H`IL9ADE9HHHAPpHhLPH`HL9IR IJHDžXHhH=^ELPHPH`HHpDžxtLH5ELH @H LLIRHPL9^^HC{LL5:9HXMAPMaHDžHpL-IH,LD^H@HP H="FLHL W9HPHXL`D0DžhLpDžxLDžHDžZLHMH@H5W"FHL HhH`H@ȿHL1HL@LLCL`[HDžhIz`HHMhHL V9H`LH=cFEMpL-EHIHt89DL vEHHHLLMjHLHDžDžDžDžLDžHHMH@H5FHH` HhH`H@FǿH`HH9tHIL9##ALH`LhH=7I9IQ IAHH= EHLHHDžLDžHLH5ELH @HLLIHL9H{HL0D[HXM$Md$LWLGH=69pHFEHARLpL5/9HxDLS9HPD@L!(+DPL ,`HFHH="FHLL0LLLHDž8HDDžDžDžDžDžHDžHDž聆LHMH@H5!FHLHhH`H@ĿHtHHptHI~LH9LM9 Mt#HIx LHHLB(L&HHHAPpHH`LhLOF9HG LOLH=z~FHLpHHDžLDžL.LH5/~FLH @HLLI HpL9HLH=B7FLHL踄LHM H57FHL'LLL?H`MFL9tzH,H5QGLSHHL LH~H=-39HHDD~H`LH0H )LDLD~LD)D(D)`MH(HIH HHH0L8gH=6FvLHIH @H55FHLHhH`H@SH5~FHLH5EHSH=FDžLコLHMH5FHLRHLHfH`IEH9tLcLfEMNI|$LM\$LHDžƅLHDžƅ `LH=eFD)LLD)`D)L1LH5'FHgLLIHL9tLSL-M9IzIH0[HLrD_L0LH@LHP`HXHDpLLHHLL09HH=wDHLLKHHHܻGHH,HH5|FLL|FLLHDž8 DžPDžHH=FLL-zHLLLhH H0H@DžDžDžDžDž(Dž8DžHLPDžXHHMH @H5NFHH[HhH`H@AH`HH9tHIL9tHIL9tLHIL9钧H= FDLDž .LHMH5 FHLLLLH`M^L9tLCH5'VGLxF[LELHIMHMMvIPLxAIDjLHHPH=HHXLL &9DL-DH J9HH5+LL GLL ,HH%9L L,9H@H=FHL0HDž DžHDž8DžHLPH`HLHDžXDžhLpDžxDžDžLDžDž$}LHMH @H5FHLHhH`H@tHsH=ELHFD@D|HPMH5EHH$HHPHP5XH{HL ]+9L-$9HPD[H0LWH=LHL@@HDž8L0ArHLPH=rEH`PHhLLD@LpDžxDžDžL{LH5 ELH @H-HLI HL9;1M_MLM9sIMMILHHzHINH9tH$HLHLDopD)H11ͿHH== FD)HLD)`D)zL1LH5FHLLIxHL9tgLSL-F9MBA$MRAPHL!9Hp0LHHDžAzHH=FLDžLDžLyLH0H@H5^FHH'HLHH0HH9t|LS6@0HISL@H 9HDžHIzMZ rHH=[ FL@PH`DžhxLHPH@H5 FHHZHLHHPHH9tL[HHIsAHHPHPTHs{LG'9L- 9HHPHLNL@@H53HHDžLEQLHH=FEHHLLHDLDžDžDžLwLH5ELH @HHLIHL9!A[ LH=ye*1JHHPHPRHKH8H9L&9LHDkHLYL@@H HHDžLAsH@LXH=ED L00H`HpLHLPDžXDžhDžxLkvLH5ELH @HHLIEH0L9H=H=xH=lH=`HLHLH|NHOH$PHPHPHQHQH&QH PH/QH]OHDQHQHYQHOHQHMHQHQHQHkQHQHQHsQHQHCQHLRHNHRHRHHRH^RH$NHsRHRHRHLH;LHOLHKHLHMHLHRHMH NHMH SHRHHMHPHbRHPHPHRHKHKH LINHNHRH#PHDRHRHNHQHJHRHLHpLHRHRHtL SHSRH8SHOHzSHSfDUHAWIAVL`AUATSHGHHH51nFH`LILS@IWM'ALHrD1DA$L(1HAMH0IHH1LA MHP1LHA@M_I{IsH LLp1LA LH5|(+I״HppL9t,AGPDAv bsHL DH5 +HWEgHLH5t + DžDHLIr]LLpL LLLhIIL`ILLDž[c][LpfAQ1HDžƅHDžxƅL HDž(ƅ0@H5ELմMGAOL H9Iy0LDI0H MAHHDž(Df0H5EH@HP4D@DžXL`DžhHPLH`IL9t!H8H;XEoHpHL%9HL@0L H*DLLpLL@HH5+EHH@HDžxLDžLDžHMUH HL9H`LHH9#HL0D~LH DD(H#HLHDžIHL9tLDC1H5XH p-LA11LH M+SHLHH{H`H0L9H`HHHpLhHHHHLhLH@@(LLLHHHL HMUHpHL9xHhLHH9!HLD~LHpDDxH!HLHDžIHL9t>HHH9t)HH`HH9t HIL9tHƅM_HHHHDžHA HDžhƅpLQL`ZIsLLIC L-9H@HDž~MCH5hFHLLDžHMD$H`HL9 !HLHH91!HxHpD~xLxH`DxDhH!!HHHDžIHL9trM_L`HhIsMcH HAL@PH@HDž(D^EL$HhHgFL L%9L@0H5FHLL-'79HD@DPL`LpDžxDžLDžDž HHKHHH9LL IL9HxL~xLxHxH HL HDžHHH9tHH`HH9tILA_H5dFIJ@LLHDžLGHH0H @HHAPHPMBH5 FlL L(L0Dž8L@DžHDžXHMGHDžHXHHƅIxHtA uHILHDžHxHHƅM L57)4LHLʋ*MDAPpLHhL(9L`IS0HL@HMC0HH(HaFH@H5FHDžL L0DžHHPDžX3HLsHHL9LxLIL9HL~LHHvHLHDžHHH9t HH`HH9tI?LGpp HLHAIGLHHLIPPM@LPLXEArEKH!HLH5JFHH@LL% '9LL- 9HDžDDDžDžL Dž(L0Dž8iHhH`HOH`IL9tHHH9tHxHHH9tLXHIL9tmLHH0IL9tQLHIL9t5HPHHH9tL`H IL9tHhHpHH9tHHHH9tLHIL9tLHIL9tLLHIwI?IGI0H9h MwL9Mu~LHIYHHPH9t#LH0IL9tHHHH9tHĘ\A]A^A_]fHIc LHHH?[fL1LOI}8fDI{I{HHPHA sA EwPAAtk"AHH57L-V9ǴH5[9KEgHH=z+E LELCPL 9H0Le*L9LH=XFLsLHDžDDL Dž(Dž8L@DžHLPDžX&bLMH@H5WFHLHhH`HvLH`HH9MMf.HH5EHPFtM71LA8M'I1LA$0LI|$ƅHHDž[P $)$H5&ILXHIPؤHHH9DHtHPH0HҤLHHLHML$HHL9LHIL9u HL D~HHDDHe HLHDžIHL9::f1L-8fICLEGL%9IY0L-@#9H@HDžPHH0H5EDHMAKLDžLDžפHHHH0H9f.DLDI;f.HH5vHHxIA A _ LHPpIwL`EWIY`H`HhLFH>HD_APH=!DH`LHDpL_9DL7RFHH @HH5 FLMAHHHDžhHLDžDžLDžLDžLDžoդHXHHHH9tԤHH`HH9tԤLxHIL9Ԥf.HtH\ӤHHHHCLA`PQM7LA`I7LFpZ)LHAHL`HhH9LW LwHH=PFHHLHDžLDžSMH5KPFHH @HӤHxHHiHH9JJ@HtHJ,ҤHHpHxHHtHCѤHHHH~HtHѤHHHHjDoHD)p.DHtHVTѤHH H(HXLHPpL H`LhL9Ix MHHDž(H H=KFHPH0L8L@DžHL@QL@H5KFHH @HҤHxHH߾HPH9tuѤHH`HH9tYѤIBM'LA$`PM7LA`ZtM/LA`dH0MW1LHHLLILH0HDž8ƅ@LHDžƅIrLA H5U%LOr!I1HwHLA HH5/%HH`HSAH9t;ФHIFH9t&ФA i&M/1LA8HI1L0HHP`+HLXL0Lh:Ir LPMjH=Ol:H0HH@HDž8LHDžXnOMH5l:HH @HϤHHHLݾHH9t;ϤIH`L8HH LhLOH=k:H`HHDžhAQLDžpNMH5{k:HH@H>ϤHHHܾHH9tΤIL`MOMid'#AEeH H=I8EHEHJ`LL0AHL8AHf:L k:H=6FH8H L-KFD0H`LhDpLrHDž(D@LPLXDžHDžHDžLDžLDž`MLMH@H55FHLͤHhH`H谋LH`HH9tͤLHIL9t̤LH0IL9OOMOHH=y8Hp LpIIHHHDžDAHH=GFDžDmLMH5FFHH@H̤HxHHKھHH9HHfDHx~xLxHxH{HDH~LHH{HDHD~LHpDDxI}HfH~LH (I}HNDHD~HHDDI|$HHtHɤHH`HhH"HxD~xLxH`DxDhI|$HDkH=!*DžLD9JHMH5*HHhʤHƅL0HxHHDžHpHIOHy4LD9MWMZICIS H)HL9*N$LxM$LLAPLH5*CHH;ptlɤt1kL,LIMLQH58LH0IvH9t%ɤu"ADAEDDHL39I|$IT$ H)HH9kHH=6*1Τf.L`PEIWLPH5;8II IALRH=BFHPHpHDžXEZH@HpD`Džx(HL@H5YBFHH@HȤHxHH־HpH9DEWLpH=DFHDžxMNƅHLpDGH IعH5zDFHHȤHH5HHMI`FA 8LЃd*ILHRpIwLAOL%8Iz@L`HhL-8LFHH9H=7FHDžEHLMbL LPDLHDžDž(H0Dž8RFMH5FLH @HƤLLI4ԾHPL9t#ƤHH`HH9tƤI7H`LЃdLƅLILHDžtA IL`ZH i*MH5_4HDHHxHpLAPpIOL0LLaH5FLHA11H  FLHXMULLI9LHPHHpHHH@@HHH)H%LH{IMHI9LL9KIfo-HFI }}MPA(HL[I}LDHHHCHH9lLHLHIMEHDžHLLHHpHMƅEd$LHLDL LpDLLxL(HHHHLHL L=!8L(L%8L0L9L8L7@FH@H?FHDž HHLH=?FHLpLLPLLH5Z:HH @HɾHLH:̾HPH9t)IwLH8IS IKH~HHpHHDžDWH=Z:HDDž=LH5]Z:HH@H HLH˾HpH9t耽IL`drIL`ZHIL9tAHIL9t,HIL9HH HHp@7HH@7HHH58L҇uH58L辇aHH5>.Ht H5F :H~ ILH28~H"8H==9HDLW:LIwLLH`MgpHMLFHhEHH L`8HH0HLL%qX:DL 5T:LLV:HH=lFLL8FHH@HHLPLpHDžHDžXL`DžhDžxDžLDžLDž:LMH@H5FHL%HhH`H yMH`IL9tsHHH9HE_L.8HDžHH H=V:L0HL`HD Dž89MH5}V:HH@HdHLHǾHH9tĹH5;.LLA HDžMT$ƅLuA LAwHG8HDžIx MpHHH=9FLDž 9MH5FLH@H~LLIƾHL9t޸MLLLAQpIWHLpL 8E[Ir`LZLHC8HLAKDL:*L=+8HH=FH |/HpIZLLHHHDžxHLDžDžLDžLDžDž7LIH @H5FHL!HhH`HvLH`HH9toHIL9tZHIL9H58LrDDHH`AIHLHL@pm AIwHL@L-8EOLIC@L=8HVL%o8H@HDžHDRHxH=ELpLM{LDPD`DžDžLDž,6LMH @H5EHL薶HhH`H|tMH`IL9t䵤HHH9xxH5ELL|HH5EEHH5b L I$LSHHFHpH5|7.HԶL%8IwL HHDž(LLIHHHE_HO0LxIL L8HHGH= FLƅ0HDžƅHDžƅLNHAQLpHDžDLDžLDžHh+4LhH0H@H5T FHH荴MGIp!zHHH5F2sHPH`Hh1fLH)))HHHHPH9toLH`IL9tSHxH50F~HH5P8m~HH5HӗM_H=`8L j8IsLDπLPHXVH5{HH]HHH5FHh0HhHHkFH`vAWLXLHPEWLpLIH`HHhHH`M@LHxDH LpLLL(LHHHLLL8HH nJ:HHN:LL HP:HDžh DžLHLY8HHL0L%A1HLH ,,FkAo`)MOAPH=H+FLK+FLEL8H8HIAIEHHLHq`L(8DxLL M,FH:G:LHH8DL=EK:H(H=FHHHYH0L@LpHDžLL Dž8DžHLPDžXH`DžhDžx-LIH @H5FHL)HhH`HlLH`HH9"sEGLH=B8HDžIq MQHH=I:HHDDžL-LH5I:HH@HmHLH޺HH9tͬH5..Lw9foH)HH5eOrAIAOL@L8HpLxIuPH58LgLH=>)FH@LHDžHE|$HL%8H=EPD`M}HpLLxLLHDžDžDžLDž+LMH@H5EHLHhH`HiZHEo@bH5FH躬LHH5!FL葁HZFLLnAUH8LH8LHIK@L C:LL-G:L0HHHHH @LMCHLHDžLHDžLDžLDž譪HhH`HhH`IL9tHIL9t驤HIL9tԩHHH9H 8HEWH=8HDžLF LnH H=F:LHDDž(H)MH5E:HH@H蹩HHH&HH9tHH53+.BtcIGH=A:LHpL`At$(MHH5A:H6HHH裶HpH9t蒨H8ILHH~)QpL8MWL ?%FLL~L8LH8~HHH0h)MgL)IzLHLHH0HLIL8 H=E'MH5EHH @HHLHeHH9--A_PIGL $8L8MELEHHHI{`LL 8HH8qLH f8LHH=FDL=n?:H5C:HI[HLHLH HDžLLDžHDžDžDžDž(&LIH @H5$FHL聦HhH`HgdSAKH5 FHXIOHH`8L_ LgLIH="FLLHDžEQHDžDT%MH5!FLH@HťHLI2HL9ukIwHL%8HJLZ H~HLHDžDOH=ELDDž$LHpH@H5EHH IH5üHHI_HHH5EHhH[cHhHHEhLPHpDCHpIs0EOHH@HPH`HHhD`MCHDžXDpLDžDž(HHH蕱HpH9t脣HH`HH9thLhHIL9 H8IOE_H58H8H0HLHyHELB`LH58H 8DWH`H=\8HD@Lr;:DPL?:HH=IFL0HpHZLxHHHDž8LHDžDžDžLDžLDž "LIH @H5FHLvHhH`H\`HHDNHpHDžHz0E_LRL0HH=9EH@DD Dž8DžHLhT!LhHH@H5EH轡HhH`H_HH`HH9HH5諅L.8H88LEH *L3MOHHELHH[IqL~LLLLHH=+HHH.8DL=8LL8:HH=:LL>:LLFH0H 8H`H=FH(H@L LPHpLHDžDžHDžXDžhDžxDžHLDžLDžDž8LIH@H5FHL袟HhH`H]tLH=! *1LA8LK8MEH *L .H=MH HICHIIII'H<HPIHHHHH9IIHHEHHOHHHHVIlIIHHHIIHQHH%HHMHHHHIH]H H$HAIzHHH,H@HoIHHIIIIHH'IIHHHHHaH?HfUHAWAVAUATSLQMxHZHFM"D+MIZMWMyD0IMDwDo LXL`L?Lg0H_8HGL_@LWHHGPH6GhHw`HGx[HWpH LJA\HMLJA]LM LJA^LA_]fUHATISHHtHtxH)HHwGLl8HH=#ELHLHDžDžDžDžLDžDžuIJMH5ELH@HDHHLHH`1HHLH=NF)0)L0)LòL1LH5FHBDH0LIQH0L9llfHH=EHL)P))PòL1LH5hEHCH(LI2QHL9^^HLLH5GGMYPLj8HpH=EMa0L@HPLHDžDž DžHDžXL`DžhDžxd²MH5 ELH@HBHHL@CAJLLH=EHIS@I[H9GHH0HDžDžLDžH Dž(Dž8IH5=ELH@HBHHLLHHHh8I{P@I[HL%sGH=.ED H`HHDžDž0DPDžhLpDžxHDžDžIH5ELH@HAHHLHL@LLGIq@IYpHH=HEH@LHDžHPDž`DžLDžDž忲IH5ELH@HV@HHL@CH HLL GHp@PL`H=:EH H`LHDž(0Dž@DžhLpDžxDž MH5ELH@H?HHL{~H鞩H閩H鎩H醩H~HvHHHfH/HHRHH[HSHdH&HHHH锫H顫HHH_HިH֨H몧H㪧H۪HH HêHaHwH髪H隫H鮫HvHӫH竧H^HsH鞫HFH>HSHKHCH鹫H3H#H鲩HH鯫HH۫HާH魫HqHƧH龧H饩H鲩H鰫H鍨H鳩H/H銨H~HvfDUHAWIAVL@AUMIH5iFATSHGHH@l8HhH5FLPLL%`8HHHL L =HpHHxLLMBHDž(Dž@HLDžDžLDžDžHHH @HHH5&ELLDžDžDžU8HLSH HL9{4LxHIL9!HL0~HH (H!HLHDžHHH9 IL`P9IL`Z&>M'LA$`dIAL`He8HEWIIPL%_^8L_HH=i8H`HDžhECHL0*H=EHDHHLMaDpHDžDžDžLDžMH52EHH@He6HXHHCHH9t5AtaLf1ɺRLH5WEL)p)@)5HXLIgCHL9tV5AHPEOH=#d8Hp0HHPH@HPL%*L@p`H5EHHHDžXD`DžLDžA5HHKHHH9'0L8LIL9DHL~LHH4HLHDžHHH9t4HPAHH@AHp0L@HDžHHHH5FEH߉hDžLDž4HHKHHH9x/L0LIL9u5HL~LHHe5HLHDžHHH9t2AHHH@HB LB$HDžH5EHHLDž3HHKHHH9.L(LIL94HLD~LHDDH4HLHDžHHH9t1HELL HW LGH@LHH5E(HDžDDž1H ID$HH(H9-H H0HH93HLD~HHDDH3H L0HDž(IH L9t0M'LA$`dHHHMLLH*H58FIEL%F`LDLAQpAH@H HLHHLLHHPH L%sGH0HPHHLLXLLLhL@FHpH5[FHH=aFHHaFHH cFHHL`LKp8LxL FHDž( Dž@LDžLLDžLL@HH5pEH HH0H@H @LLDžDžDžLDžDž(Dž8DžH!/HHCHpHH9L@LIL9$!HLD~LHpDDxH!HLHDžHHH9t-H@IvH9t-`Hn3ILL ;)H=FHIDL%hFALDLRpIOE_LL@IHHM@HAHpHxDPHHPHHD HLD0L@LLHHH=΅FHPHHXH 7`8LL%T8HHH`Hx8LhLFHxH5EHDžLpDžLDžLHHHHHHH@DžDžDžDžHDžLLDžg,HLCH HL9LxLIL9*HH0D~LH DD(HHHHDžHHH9t;+H@MNL9t&+IL`PIL`ZIL`dGL@HpIL9t*L HIL9t*L(HIL9t*L0HIL9tw*H8HHH9t[*HXHHH9t?*HxH HH9t#*HpHHH9t*HhHHH9t)LIuMMI}HM$0L9DMuM9wkMu>MeLB'HIL9t)H\A]A^A_]HILHP(I}f.1LI}A M'LA$`P-IL`Zz1IL`dLHpHDžH HL`IL HPHPHHHHHHL8IH@HAPLƅHpHDžxƅH HDž(ƅ0HHDžƅ L HDž(ƅ0HPHDžXƅ`}AL H`H@MJ MBHDž(0L%V8HH5FL L@DžH'H`HHj5H`H9tY'HPE_HH@Hr LBHߺHPH5;FHDžXD`LpDžxw'HPHH4HH9t&Hf1ɺLPH5CH))@)P'HHH4HH9tr&Hf1ɺL`H5H))@)`&HHHH"4HH9t&ILLQpH@LLHHI@ M@H @HL f8HH5~FHHDžLLDž &H@HHx3HH9tg%H@M^L9tR%IL`I?LWpdLLAMGAOHH@HHHMHHLLEYLHHpHDHLHxHH H H(L(L0L8H@LHL&e8HPH5HXHW8H`H}FHDž DžHhLH=j}FLLPLL%>GHXLxLP}FHHLpLC*LL 7}FHH @LL%IK8HH5 FHHHL L@DžDžLDžLDžDžDžDžDžLDžDž( L0Dž8 \#HxHH0HH9t"H@IFH9t"MHH Hb8L Hw@L(IOL(HH5EHDžDYH H @L@LGLL`L%zFL(D0LHHPDžXDžhLpDžxX"HHH@H>H@MvL9t!L@HPIL9t!L8H IL9tq!LHHIL9tU!HH HH9t9!HPHpHH9t!H`HHH9D1hILIHLJ8Hr0H HOHHL%YH8H5EHDžDQLLBH@zDLDžDž H LKHH(L9HpL0HH9 HPHD~PLPHDPDH H H0HDž(HH H9tI`HWrL@PH@H@MY MAKHH5EL@HDžHL`DžhHhHH-H@H9~tIL$IL`Md+Lƅ LLILHDžA`Zc/IOALL UM8It$0HF8HQMd$DBH=YFHDH H HDžLDžDž(MH5FHH@HcHHH+H H9tIHLHpPpMWH HHxMZLhH.H5_FHoHxA11H GF"HPHpHSHPLI9E.LPLHL`HL`LXH0H@@LXL)H1LPID$L[H`M9A/H`H9`-M}}fob3fARAHPMD$H{LXBD&LHPML$LH9-H`HHHXLhLSLLPEMAPHHƅ`HHDžXAKLJ8LLLbuFDLH iC8H H=j\8HPH@L`MAHpLHDžH(L0L8L@DžHDžXDžhDžxHHH@HپH@IVH9tHMd$L9tHPHH9tHxH HH9tHpHHH9tLHIL9ADDEGLH@H@L'I8ML$ HDMD$H5urFLHDžLPL Dž(rH@HCHHHH9H8LPHH95HLD~LHDDH%H@LPHDžHHH@H9tFAL0LPH`It$ MD$H@H0H5mqF@HHDž8LPDžX\H`L[HHhL9BL0HpIL9HHD~HHDDHoH`HpHDžhHH`H9t0LfE1ɺLH5ZK8LD)D)@D)oHML$HHL9L(HIL9HHD~HHDDHHHHDžIHL9tBLf1ɺ LH5oFL))@)HMT$HHL9H LHH97HL~LHH'HLHDžIHL9DDI}H~LHH{HDHP~PLPHPH{H DH~HH (H{H6DHD~LHDDH{H@fILH5<8IS McLWH=EHH`HDžEJHDžDєMH5EHH@HBHpHH"H`H9tIOH=EL0HLAA@0bMHH5`EHHhHHE"HH9@06ILH L cT8HIH@H(M@L_HLHH @HDžE{HH5UEHLL%zlFHDHLDžDžLDžHHH@HѾH@MvL9H*>DHtHHH H(HHtHvHHpHxH`APA@H2jFL*HLELH=|mDžHIHLHQpMOHHH`IqHYH5EHvH`A11H EH L@LSHL LM9vL HxH0HHH(LH@@H(HH)H z&HL LK LHHVI9!L0L9HIڿ }I MfAzAB }H HK LH(D HPH IRLKLPH9uL0HPLL`H(LHHDž(H EHLLHXLHƅ0AxLLDLLLHLLHDHLLHLL hFLDHDž DžHLPH V*LHLPL0LL[8LLL L=DhFH@LHH@LL@Dž8DžHDžXL`DžhLpDžxLDžLDžDžLDžDž (HHH@H;H@IvH9tyHPHH9tdHH HH9tHH`HHH9t,HHHH9%@LpH@H5ELIX L`FM@LHpHDžxDž+HhLIH`L9HD~LH DD(H{HfHD~LHpDDxH{HfMOH=dFLHMYACČMHH5dFH: HpHHHH9t HHhA1H dFD߾MgLAH=38IH0L*IT$HM`HHDžrH H=9EDž(L0L0Dž8΋MH5EHH@H? H8HHHH9t HXH@A1H PL3I޾EOEH@H=hEH0Hr0L%4:8HH@HH(HDžHDPD`LpDžxHDž劲L(H5EHH@HR H`HHHH9t AELHDžL0IH0ILH=EHHL(DDžLDž"L(H5EHH@H HPHHHH9t EHH0H=EHV HHDžHHH(DHDžzL(H5]FHHpHHHH9tIw`LVEB H=\FDL贄HMH5\FHH#HhHHHH9wHtH5THHHHHtHH(HHH HtHHHHHHtHHHHHHtHTH(HHH {HtHNHH H(HHtHFHHHHZHtHHHHHH@HtHTHhHHH`HtHHHHHɍYI @HHH5YFIHEHLHHQpMWLMZL H H5ELL`ffH`A11H EԾH HpLJHL HH9N H HxH0HHH(H0H@@H(HH)H LL LS LHIPI9oL0L9H Iۿ }H I3fA{AC }H HK LH(D HH MCLSLL9M H0HLHH(LHHDž(H EHPLLHLHƅ0AyLLPD`LpLHLLLLHHpLL Ң)HLLXFLLHH NK8HDžX LLxHPLLLLLLLL=WFHLL@L@HPH @DžDžLDžL Dž(L0Dž8DžHDžXL`DžhLpDžxHHH@H葼H@IvH9tHHH9H~LHH{HDHD~LHDDH{HffHD~HHDDI|$H 7MOH0AL%R08LLHO@L$8IQH*H0HDž8rLLgH=ELp@HH LPLX`DžxDžDžZ|MH5EHH@HHXHH8 H H9bbHD~HHDDH{H`fHD~HHDDI|$HfDEAoHLASpLpLLH5m7IQ IIHH=EHpLHHDžxLLDžLLH5PELH @H蹏HLI&HL9tf. HMVL9tLfDxfDDDI<$pH0ƅ@HHH0HDž8EAA DCPAHA  HHH9DHLASpH@LH7LHx LH`H@H5 ELH @LPL@HDžHLXDžhDHLI豛HL9@LDLi7IK@H(H5bGHH @LL L=EL0MCHPH5EHDžDž8L@DžHDžXvHHL`KH{LH5u7MZ IL@HWH=ELHDžDJLHDDžb LH5ELH@HόHLI/HCsL0HHMCpHPLxH7EODRHH@ GH@L=7H5;7D`L EDpLEHH=UEL0HI[HHHHDž8DžPHDžDžLDžDžLDžLDž IH5ELH@H}HHLg=HMvL9t~HLS[IVpL 7HLIMZMBL GAHACH`Lٵ7HL7HDE0H +EHhH=EHHPLEH]H0HMHDžDž @LXLpDžxLUEL]EEEEMH5EHH@H$~H8H0LHVIlHHHHHpHxHHHAH3HHxHHhHvHHHHHHHH>Hf.DUHAWAVAUATSLbH^L]HE M4$Ml$D;HYLuMpD#IYLmE.LULsDeDmMkL#LuI]LeH]MeHXMjLeL#H[MuMmDHHL}HH]L D}H_(]D0L}_@H]LPL}H_XH]L`H_hLwpLoxLHGH6HLJHLJHH LJHMLJLM LJLMLJLMLJLHLJH[A\A]A^A_]fUHAVAUATSMqHFHZLQMXD(D#IFAEMLw`DoL7Dg _0HGD_@LWPHGXH6GhHw`HGxHWpH HLJMLJ[LM LJA\LA]A^]UHATISHHtHtxH)HHwIVH9 CmI M9uLMtL&mHH[A\A]A^A_]HM.M^ Hx0Mf I^(L@H5H .HHH@H5,)HPH@HDžL L(L0H8DžHDžXlM>MNL-L#.MV IV(LH@MF0HH5+)HDžLMFH LLLLDžLDžLlWI~ Iv(HpL=M&I^HH0L@HHL [. HpH@HH5%+)HDžxLHLDžLDžkMMnL%JH݄.M^ IV(L H@MF0HH5*)HDž(L MFHH L0L8L@LPDžXH`DžhkI>Iv HIN M~(LH0L@HHL}L-.HH5))HH@LHDžLLDžLDžcjnMMfH=H5.I^ IV(LHMF0HHH@LMFH5"))H HDžLLHDžDžiIN M> H0MNMV(Lh0L@HHPL7L%ʂ.H5()H@L0HDž8L@LHLXL`DžhLpDžxi(I~IL=L Q.Iv IV(LH@MF0HHLMFHH5')H HDžHLDžL Dž(zhIN H=.MMnM^(HHHL`0L@HHH5EH@LHDžLLLHDžDžgM>IvLxL- .MN IV(L@H@MF0HHXH5j&)L@MFHh HDžHLPL`LpDžxLDž4g?HIN M Hx0MfI^(L@H5S.HHL=HH@H0H5%)HDžLLHL Dž(Dž8fMMVL2L%.Mn IV(LH@MF0HH5+EHDžLMFH LLLLDžLDžeI~IN HPL IM~(Hp0L@HhHL~. HPH5mEHpH@HDžXH`LxLDžLDžKeVM.M^H=~.HMf IV(LH@MF0HH@H5ELMFH( HDžLLL H0Dž8DžHdIvIN HM>MN(LP0L@HHL-L}.HH5 EH@LHDžLLLDžLDždI~ M&H5@}.L=I^IV(L`HMF0HHH@L`MFH5")HHDžhLpHxLDžDžbcmIN M HMVMn(LX0L@HH0L%ٷHl|.H5~!)H@LHDžL L(L8L@DžHHPDžXbI>IVLL=YMF HDžLHHLDžHMFH @H5(JbULMMVH Iu HHMEHH @H5D )HDžLLDžaH=}MMfHHHHX H @L@H5)HHDžLLDž`akMIVLPL M~ HDžXLPL`HhLpDžxMMnL H Iv HDž(H L0L8H@DžHMMMvLH\ID$ MD$HH59EH @HHDžLLHDžK`VHLGHGLG>I M9;TIۦۦIۦfUHAWAVAUL`ATIEISLH H2HRHLH`HI4$IT$IM0I} HMHIuPHSI}@HuH3H}f`HDž )-_Hx`IILHM}`H fDMD$H3HSLM$HH I L9uLH H;LSL9t9d^L9uDLAxL%dEKcLL9uI~Iv ME@L JIN(IV@ILw.IM~HHxL5*H=)L`HuHMHUHDžhHpL}LMELUELuEݱHMH @H5])H]DLLM9t*DI>MNL9C]I M9uLMtL&]HH [A\A]A^A_]I~@M.HH,M^Mf HH@L:7I^(IvHH L=v.H=)HLpH(H0LPHDžLLLHDž8L@DžHDžXGܱHMH @H5)H\MMVLPH=NMn M^(I\$0H5u.HM|$H=)HHPHDžXL`LhLpLxDžDž۱HMH@H5\)H\ MMVHH=/)IN IV(L@0L`L5L-u.LH H(HDžLLL0Dž8L@DžHڱHMH@H5)HR[]I~ MLH t.I^Iv(MO0LٯHMwH=O)HHLHDžLHLDžDž5ڱHMH@H5)HZM.MfH`H=s.M^ IV(L@0LxHHH=)L`HHDžhLpLxLHDžDžٱHMH@H5,)HYMIvL-s.H=)MV IN(LL%vMn0H(I^H8LHDžL L0L@DžHLPDžXرHIH@H5q)HBYMI>M~HH5ܭMN IV(L@0Lcr.HH=$)LpLHHHDžLLDžLDž%رHMH@H5)HXHpM.MfL q.IN M^(H{0L=HpH=i)LsHHDžxLLLLDžLDžuױHMH@H5)HWMIvH H q.IV(Mn L@0HXH=)L%^L H8HHH`HDž(L0L@LPDžXDžhֱHIH@H5A)H2W=I~MH5ӫL-fp.M~ MN(LHMV0HMfH=a)LHDžLLLDžLDžֱHMH@H5)HVIM^HH=IN IV(L@0HL=o.LLpH=%)HHHDžHLDžLDžeձHMH@H5)HUMMVLH o.Iv Mn(L]H=)I\$0HM|$HHHDžLLLLDžDžԱHMH@H5)H U+I>MNH0H5Tn.MV IV(L@0LhH@L5H=)L0HXHpHDž8LHLPL`DžhDžxԱHMH@H5H)HpT{LM&I^L M^ IN(I0Lm.HH=)MwHHDžLHLLDžL Dž(SӱHMH@H5)HSIvM.HLl.IV(Mf L@0LxH=E)H<LHHHDžLLHDžLDžұHMH@H5)HSI>MNH5L%Dl.IN MV(L@HpHPMn0I^H=p)H`L@HDžHLXLhDžxLDžѱHIH@H5)H`RkI~ MHH k.M~IV(L@0L HH=)LpLHH0HDžLLL Dž(Dž8CѱHMH@H5N)HQMMnHH=j.Iv Mf(L[0HL=0LsLH=)HHDžLLLLDžDžбHMH@H5)HQ MMVHPH54j.IN IV(L@0L`H=@)L-|LPHpHxHHDžXL`LhLDžDžϱHMH@H5)HPP[I~(IH i.LM^M~ LH@MN0H(MnH=q)LHDžHLL L0Dž8DžH3ϱHMH@H5)HOMIVHH= )Hp HXHDžL% HLHLDžαHIH @H5~ )HO)MM~HL Lw LoHDžH=H(LLLLDž/αHMH @H5(HNMINLpH6IP M`HDžxH= )HpHLHDžͱHMH @H5p )HN%IM^L@H=Iw MwH`H=1 )H@HDžHHPLXDžh+ͱHMH @H5 )HMMMnLL2IJ L0H= )HMbHDžL L(Dž8̱HMH @H5Y )HM!IVIHH= )LX LpHDžL=HLHLDž'̱HMH @H5 )HLI>MNLL.Iu MeHDžHH= )HLLDž˱HMH @H5I )HLIMFHHHS H= )HDžHL{HLHDž#˱HMH @H5 )HKMHPMvL-*LO LgHDžXH=v )LPL`LhLpDžxʱHMH @H50 )HKMINL H= )Ip MxHDž(HH H8L0H@DžHʱHMH @H5)HJMIVHH=&Lp LhHH=^)HLHDžLDžɱHMH @H5)H JMMfLLIJ LH=)HIZHDžLLDžɱHIH @H5)HIM>M^HH"Hr LrHDžH=>)HLLHDžȱHMH @H5)HII>MnL`LMa IYHDžhHpH=)L`LxLDžȱHIH @H5k)HHIMFL0HM_ MwHPH=()H@LHL0HDž8DžXDZHMH @H5)HH HHFHFHFfDI M9 Iæ ĦIĦU!HAUATLeLESHH5EH8GLEyGLEH;HSHsHMM,0H9tmLKM9wTMu/LkIB/H}L9tFH8[A\A]]fHIt7LH|EH;1H6H;뢐A H;Hæff.UHAWIH5FEAVL AULATMSHHGLsFHSHzH:H L1HL@L:HHHHPHHH1HH@HLSH0[LBpMJML t7AsAIpL CL0LR7LBPH5Eu`H C@H2LHH5 EHH@HDž8LDžLDžLDžHDžDžDžDLH(IVH HI0H9.H0H9MH(MUHL9tCLHIL9tCLHIL9tCHIL9tCL(IwI_I?H M$0H9rIWI9%MMgMvB'H L9t>CH[A\A]A^A_]@HztHztH:xL#HAT$@AHHPHHH߉P HHH߉ A 4H@H`HDžHHHHDGHH@ƅPH`HDžhƅpADOLAHA`d HH`LM`ZHALPfL01HLA@LBDXH[DILHLOPH`HhHp7H@LAL2H+ELL 1ELGLHH5EHH@HHDžDHDžLDžHDžL Dž(]AHHLGHMmL9t@H0IL9t@LH`IL9t@LH@IL9HISLH8?I?1LI?fDHI[LH?H @fD1LH f.L#HA$wQHHʉHH`dLf1ɺL@H5CL)`))@?[MEpL n7LL8BHkBL+B HH=B0LH52H]H0@H@PLEMEH}HHuH5BEHDžH`LhLpDžxL]EEEEE>H8H0LH0HH9XXD1@7I?ffDDžDž;DDH DHA11H b~2[HhHA1H @~29LqLSLLH5E LMJEYD=$HA`dYL#HA$`ZtHH`PpHS{PLGLGMELsH]d7HJIy@MYHL%zk7LDAHH=cELL0|*DLL@HDžDžHDžLLDžLH5ELH @Hl֢LH@IL9t"֢LHIL9t֢LHIL9tբHHHH9tբLHIL9tբHH`HH9tբLH@IL9tzբHH HH9t^բLHIL9tBբLHIL9t&բLxH`IL9բH@HL`L@HLHH@LHPHXH5K^ELH!բLLIH`L9tԢHHL`L@ L0H5^ELLxH8L0ԢLHhIH`HM$0L92LpM9 &MtHI-LHҢH`LxH0LhB'H`HIKHH0H9V,HpH0H@HxLhLHDžhHƅpHL8H`H-ND)LHL@ L@H5\ELHLPLL@vӢLHXML$HPHM<0L90H`I9$MtHI,LHѢHPLXLIL$B?LPI}HI9+H`LHLXIT$LHHPHMDLHDžXƅ`HpL@ LHHLPH5[EHLPLX<ҢHLHHHHM<0H9/LM9H#MtHI+LHKТHHpHLLQB?HHLNLpL9)HHHHpLHHxHDžƅH9+L9AL~IDI9"1)LpLL`LxLIC8HpIyL`H9(LH`LpLMƅHxHpHDžxIHhHLpLLpHLIݼHL9tϢHH`HH9tϢHHpHH9tϢLHIL9t{ϢLpHIL9t_ϢHIL9tJϢHPIL9H H55(ݳ5H@HHH=XELL0L8L@HHLLNMLH5OXEH)ϢHLIܼH@L9t΢HHH@L`L`HhH=XEH`?N MLH5WEHLp΢L0HLLLhM蛤HHDLL鑽L@HHH=WELPLpLpHxM MLH5iWEHL`"΢HHLHHXIHH`HDLHRH@LHH=WELLHLM MLH5VEH͢LpHLL艣H`HGDLH̐L`MHHLV]HLIڼH`L9t̢LH`IL9tv̢HpIL9ta̢HIL9tL̢HHHH9t0̢LXHIL9t̢L`HPIL9tˢHIVH9tˢLhH0IL9tˢHpH`HH9bbLH56 L=tH5e L*HxH5j H1HH1HxLH=(JHMH5(HHdˢL+1HADXH=(LL`DJMLH5S(HˢL0HH5,HDž8ML$ƅ@L0b+H5TEL聕HH`dB-L;HA`PW+{PM+HH`Zu {P.H(H HWH0IL9tɢH`IL9tɢLHIL9tɢLH IL9tuɢLHIL9tYɢHHHH9t=ɢHxH`HH9,ɢ"HAӃPa'L+HA`Z+(LM`@HH{L-"ELHwdD^LH=BBEHDžIT$ L-X"EDž(HM|$DL RHMH5AELH@HȢHHH(詆HMFL9tȢHCHpLuCH K,HH=RELREL~H&QEL=0QEH~L QEL$QEH~L~H~HPEL~LBFL~LL~I)`))P))))`)0HKD~LD~LDHL@DD)LHHD)`vLHHLL HH(HLLHLHHLHDžHLLHLL-PELHLHLLHLH LHL(H0LHH8HL@L6HHH ELPL`LXLH`HPLhLHpH`HxHLLDžDžLL`AQL0APMPARVASAUHDžDžuH@MGLH@H5>>EUĢHHH(袂HMfL9t ĢL;HA`dfEH=ADHD)D)C1ILH5@DH8ĢHHH(HIVH9zâpHL1HLM@dALőHsD[LMopH`MLhLH~L0H8AQDHDgH=EDILH6L-2DLQ,DAL%Q, HLEHPH=:EHLHLpLHHDžLD0H@DžHDžXL`DžhDžxDžLDž BMH59ELH@Hz¢HLIϼHL9tHIVH9tHHHHLH=lD,LPL@I@@LHM@L ?(bHLD,H=@H5:EHLHHDžLLLDžLDžDž{HLIμHL9tL;I`fEH=JELD)L`D)D)y@1MLH5OJEHHLI_μH`L9tNfEH=4JELD)LD)D)@1MLH5IEHHLIͼHL9ؿH {Dž 4HH8HfJHDžƅt :L` {xH IT$HpH`frHDžh ƅzA LH KHEH5yEHH=EIELIEH~L IEL)HEH~H$HEL-HEH~L~LD~H GELD~H5GEHDD~LDD~D)D)P)`)pD)D)@D)D)HH{D~HD~[DLHDD)LHD)L_HIIEKH@LHHLLHD L0H8HPLXL`HhHpHDžLxH`LhLDžHH`HLhL`LHLLHLHLHHH86HhLL6LL-EGEHHLLPHH`LLpLLHH@HHLHH FEDžLVASSH0AQMAPLPRH HDžDž(kH=$AEH@;;MH5AEHH@H謻H8H0H(yH0HH9tH`IL9t躢HHHH9ȺHLakL@LHHL[HLItȼH@L9tcL0LHpL`LLHLDfDHH{L-EL0LWdEZL0H=:5EHDž8IT$ L-EDžXH0M|$D@LP9MH54ELH@H HHH(wHMFL9t\HCLPH5fCH I<,HH=ZCEL_CEH~HnBEL=xBEH~L =CELlBEH~LD~HD~H-BELDD~H5FLDD~LLDD~ID)`D))PD)D)D)D)`D)0HHD~HD~LDH@LHDD)LHD)`ERHHH DLLL(HHHLL H(H0L8H@LHHDž HPLLHLL-3AEHLLXHLL`HLHhLHHpLxHLHH YqELL`HHLLPLLHHHHLL`HH`DžLDžDžASRAQMMgAPLPVARWfH=`1EH@5MH5M1ELH @HHHH(sHM~L9tYL+HA`d3fEH=Q2DHD)D) 51ILH5&2DH脵HHH(jsGDHLeLLHHL7UHLI¼HL9::҃dtvfEH=>ELD)D)D)141MLH5>EH誴HHH(rHIFH9tH=vaCL6,HH5>EL>EHD~H=EL =ELD~L==EL-=EHD~LDD~DHDD~H /EL=6HLH0HDžDL Dž(Dž8LX,LXH5.ELH@H~HLI빼HL9tګD4HCA A h0L@L 4EL~fEHH5EH=p6ELpD~pL5EH 4ELpD~pH54EL5EHp~pHpD~pDLp~pL r4EHp~pLa4EHp~pLp~pD)D)P)`)p))@))LpSH0~pLpHH~pHL`Lh)LH)H@DPH@H`HHDPLH0LpLxLHHLHHDž8HhHL`LhDž(LHHH`LhLH`LLLLLHHHHHhLLHH 6LLLLPLL`HHpHHLHH5s3EH HL0L=E3EASAQLAPLPRATAUHPDž8L@DžHDžXXH=v+EH@'IH5c+ELH@HNHHH(4fHI^H9t蟧LH`IL9fDoD)pffDo`D)f.fDopD)@f.fDoHHHDžƅD)HxH9'L~LѸH(HA 1H (vyfEH=0EHD)D)h&1ILH50EHᦢHHH(dfLHHH`PL;HA`Zf4DDH`DDDHP9DDDHaH=7 fhL%9)L=6LpH@{PH=?FHfGHEHpL@H=o(EDPIL$0M\$HDžHH@LH`HDPLpDžxDžLp$LpH5'ELH@HIHLI趲HL9t襤HCLDHxDDHPDDDH`D1L`H+fH1`HPfDH1`H`ZfDfop)@@fo)@fo`)@AL rHKLsI}pH`MmLhLLQL0H8EXD@EJHDIH=1H6H5H2,D LDADPL 92,L-EHH=EH0L8LHHD`HHDžL@HpDžxLDžDžLDžLDžDžR"MH5@ELH@HâHLI0HL9EEMfDA|DADADALDADhfDHSH=",ELLHJDADc!MLH5+EH١HLIFHL9FA,L-5)Lp`DkAu`=hfDEAA u`F@HCH=M+EL L`E|$LD MLH5+EHHLIeHL9efH=%EL)L)) 1MLH5$EH膠HLIHL9ޟf`+fDh(fDH{LL-=6MA MyLWH=$ELEZLHDžDLDž1MH5_$ELH@H袟HLIHL9L@HH5蛃H5)ELj~H{KLpMLHHwL0HhL8VH`LpHL(HH LL="6HH6LL&EHH=(EHHLL(EHH(EHH5-,LLM{HHDžxDžDžLH@H=EHPDžL Dž(H0Dž8DžHDžX1MH5wELH @H袝HHH([HIFH9HS{PH FL%^GLEH0DCHLJH8HXpHHEQL`LL n6LhHH=E'EHH+'EDL6DL0)HH5'EHPH=EHHL LLxLLL0HDžDžDž(Dž8H@DžHDžXH`DžhMH5LELH@HHHH(YXLC[H`HHLMPL0L8H`AJLhpLHH`H(H HH6LL}6LL A#ELL=x%EHHv%ELLt%ELL),HH_H=&EHHHLHDžhDžDžLL0DžLDžH Dž(Dž8L@DžHIH5ELH @HBHHH((XHHH(HH !He!HcHH$#H8#HHH#H/$Ha$Hn$H{$H$H$H$H$H$HPH|H$H$I %H%HI%H_%H_"Hm%H#H{%H%H%H%H!HH%H%H"H%H%H&H#&H0&H=&HQ&H^&Hr&HH% HpHHo&HI$HHHHHHJ!H!H!H!H!HHHUHAWAVI$AUATL`SID$HdL_by_dyHH`茗x}+fo Dfo7EfP IL$0@")@#@H`HDžp#) )0HDžh#HM&I|$P})I{alpha_bH}fo fHEfo0HE*HE*LEHX Geta}`fp(@*XHE E)@HDžP蠖L`LhLH`HH@H@ML MLPHt M ITI ED[LkB(L}HC LmH0HC0LHC Lt Mq I3IM:Lk(Hs@B(L}HCPLmH0LHC@Lt M IIEDCPLkHH M|$`B(HHI I?MOL9tCM9uDL@AlL2EKcLMNDM9ufAK0$@MhfMA I}HLkLLHiHM I}辔HC Lk0LLH8HC M I}膔HC@LkPLLHHC@I~IFI>AF@HHI9t*@I}IuH9_ “I I9uH@HtH襓HL[A\A]A^A_]MEI} HL Iu(IM@L{@LSR)IUHMeLL--HLCLHH5 (HH @HLHDžLLDžLDžLDžGL@@ME I}(HHIu@IMHHP@L=U-M]MeH LL QQ)L@HLH H5(H(H @HDžLLH0Dž8L@DžHLPDžXg"fHMUM]H5Me LG0Mm(H -LLGLH H5R(H0H@HDžLLLLDž(Dž8őIU(I]LHM}MM LP0L@HL?L%Ҫ-H5(H@LHDžHLLLDžLDž%I}IuH@L=IM LC0Mm(L E-L@LCHPLHXH5(H`H@HDžHLhLpDžxLDž腐@I} Iu(IL$@LN)IU@MUH-M]IEHH`L-H}LH @HuH53(HULEMD$HDžhLpLxHELmEH]EEڏDMeM}LL`LfH @HDžhMQ MALpH5q(L`LxLDžcfDI}IUHH Hp L@HH @HH5(HLHHDžDž뎢fDLI]MeLM} MA0Mm(LoLMAL-H5[(HH@HDžLLLLDžLDžEI}IuHL%IM IU(HX0L@HL=Z-LHH5'HH@HHHDžLDžL Dž(襍`MMMmLLMP M@H @L$H5'LHDžLLLDž3fDI}IuHPL%IM IU(HX0L@H`L=B-LHhH5'HpH@Hx!HPHDžXLDžLDž荌HMMMmLLMP M@H @LH5'LHDžLLLDžfDI}IuH0L%IM IU(HX0L@H@L="-LHHH5%'HPH@HXH0HDž8L`DžhLpDžxm(MMMmLL MP M@H @LH5'L HDž(L0L8L@DžHfDI L9H0H=!装H0H= 谇IIfDUHAWAVI$AUL`ATIESI]0H'H@HLHDžLLDžL Dž(FaIMLH=M` M@HH @H5'LLHDžHLDžԀIwMHPLIO IW(LX0L@HhL-ML-HpH5'H@Hx!LPHDžXL`LDžLDž.IfIMLH=M` M@HH @H5_'LLHDžHLDžIwMH0LIO IW(LX0L@HHL--L-HPH5'H@HXL0HDž8L@L`DžhLpDžx)fIML H=M` M@H@H @H5$'LL HDž(H0L8DžH~I M9{H(H=CyH(H=P{I   H" fDUHAUATLeLESHH5REH8GLE}LEH;HSHsHMM,0H9tmLKM9wTMu/LkIB/H}L9t4}H8[A\A]]fHIt7LH{H;1H9H;뢐A H;H ff.UHAWIH5EAVL@AUATSHH(GH LH@|L#HAT$@HSALjMHzHLMHu:fIH@HtD@ EyH@HuM9tEL$ E(E|I@ @$M9vAT$ ~]HL9HLHo|LLDp ED HxqLHNfDL9 LHxLH SI|$IĸM9t LLLL9sHLA|$$~L+HA`DKPdCA A A AoH[L`H=ZDIN@H5h6HSLFDRHnHH`H@HH5DLMFHDžhpDžDDžDžDžqzLLHH(H IH@M40L9L0M95 Mt H<0I LHxH L(B0LH@IL9t`yL(IwMOI?H M,0L9BIWI9waMuDHDDž( ULHHIUHH@M<0H9l%LM9MtHI$LHSHHLB?H@HH9SL`LqH`MGH HhL9M^LpL9HH0D~LH DD(HH`HpHDžhIH`L98S1LHLHH@IL9tRLIt$I\$I<$HM<0H9?MT$M9MtHILHQI<$M|$IB?HL9tRLXH@IL9teRH MvL9tPRL@HIL9t4RHHHHH9tRLHIL9tQHPHHH9tQLHIL9tQLH`IL9tQH H@HH9tQL(H IL9tpQH0HHH9tTQL8HIL9t8QH[A\A]A^A_]fD@/ f@.ԉDƒH(@AGH uD1L#ofD1Lf I<$DHzsHzhL;HAuL3HAV@ L0H(1HH8olLHHH MlHHHP1HWIzIzHH`HH߃d`L ZtHA`PL HAL;HAW@ HDCPHDžHHHƅA1%A#H {Dž DHH HfwHDžƅ&tDA w>ALMs2L;HA`P'HH`Z(DH`A {AH LVHpL`HfEZHDžh ƅzA AH{LL@[MH@HGHHDxH L@PLH(D`LpLLLHLHHHLHHHHLL=e|6LL u6LLyDHDžH HxHH`LhLL=DHHHH5?DHHHHELLCFHH XDHH=>DHHDHHDL L $BL0MCH@H5DHPVHpH@H}DžDž(Dž8DžHDžXL`DžhDžxEHEEH]HHE L}E LME YLLHM]LHM<0M9"HI9Mt I<2I$LHnJLLHC:HH9tVKHH`HH9t:KHHHH9tKHHHH9fDLLHMMH HL9MFHL9sHL0~HH (HcHLHDžIHL9tGJHLH$FL0H=n' HLMiPH H(HpL'LLxMAH@HLL0HDž8@P`LDžLDžDžDžIHIGH@HH9LXLIL9&HHPD~LH@DDHHHHHDžIHL9L0H(1HH8oLHHH nLHH1HHPY!@ .AAEDŽ@A\H YD1LfuHHP@ T{HHLHDž H@HMLH(LHLLHHHH`HhHLHLL H(H0Hu6L8LEH@H==FLHL lDHPHRDHXH53DH`HDLhLDL LHHH@LpLBHxH @HHHHH5XDLMGDžLDžDžLDžDžDžHDžLDžDžJFLHHIUHH@M<0H9ULM91LCH@L@LsH@LHDž LHHMLH LLLHHHLHL`HhLHLHH(LHH5s6LLvDHH=y;FL L=DH(HDL0LDH8HDHHLHpH@HH VDLHL BHPH5DL`MBH=HH @DžXDžhDžxLDžDžLDžHDžDžLDžCLHHMUHH@M<0L9HI9 MtHI,LHAHLLB?H@IL9tBHH`dHf1LpH5 D))@)pCLHHM]HH@I0L9FLL9MHILHAHfHtHi@HH H(HmHtHQ@HhH H(H`8ADHtH\@HH@HHH}HtH@HH@HHH_I<$RfHD~LH@DDHIHfH~LH@HI}HDEKD{HHDž H@LHHHL HH(LD HLD0H@LH`LHHPLhHHL`HhLpLn6LxL=mDLL wDHHz6FHH DLLDHHDHXHLHHH@HH5rDLLPDHHBHH@H H0H5 DL@LGHLDžLDžLDžDžDžLDžDž(Dž8DžHHPDžX >LHHM]HH@M<0L9LM9MtHILH1FLL=DLLDHHDHH5`DLL>DHHvBHH@LLHH@H@HPH5DL`LGHLLDžDžL Dž(L0Dž8DžHDžXDžhHpDžx9LHHM]HH@M<0L9 LM91L[A{H@LHDž LHHIHH(HLLHHHLH`LhHHHHL HLLDLL DHH=.FHHoDHH UDLL6DHHDHH5DLLHHPH@LL BH@HH`H @H$HH5DLMGHL Dž(L0Dž8DžHDžXDžhLpDžxDžDžDžM7LHHIEHH@M<0H9 LM91LF1L6Hpf.ApH D1L @H~HH (I}HDHD~LH DD(IH`cf1LvHf.AeH D1LY*@HCL`I HMWLI {HL@LAAA {L`LpfEBD@LDž f$HDžƅ&HDžh ƅzA3A Au A  AL=k6A H@H TF{PLL FMz0QHDžxLEMBL(LH@L=k6H5DHLLDžLLDžHd4LHHHMHL9I HHHH9: HL ~HHH* HLLHDžHIL9t-3HC  @Hx[LHHMDGL`LHhH H(HDLLHHHH`LHLhHHHHLL H(H0L8La6HDž H@HH5DHHLL=ԼDL@LHHHHCDHHHPH=DHXHDL`LݺDLhLhDHpH g(FHxHHDLLBHH5oDHH@LMADžDžLDžDžHDžDžHDžDžLDžHH@H MDž Dž( L0Dž8 H0LHHMMLH@M<0M9_HI9Mt I<2IV LH.LHLC:H@HH9t/HH`HH9t/LHIL9@@7HH@e@7HH@H'AAffD H/1LyfAD1@7HfDL`LLLIQ H"DLH @H`IH5DLpMAHDžhLxHDž.HIOH`HH9HLLIL9=HLpD~LH`DDhH-HLHDžIWHH9t-L`HhEH5(L=d6HH@H 2F{PLHLFIs0HDžPLEMCHH H5:DH H@XLLDžDž(HP-LH H`H(MHL9HL0HH9hHHp~LH`hHXH H0HHDž(H HH9t,HCADADADA<D1LLCf. HDDHH f.pHhH @HH`PL;HA`ZHsLL H~H5DDWLDk+HM_HHL9) HLHLH9U HL~HHE HLHMWHDžHL97*1LLH{LH5D L_E{DL@Lb*H@MOHHHL9HLPHH9HLD~LHDDHH@LPHDžHIWH@H9H(L=s`6H\AL S(LwHtH'HH`HhHHtH'H(H`HhH /HtHfN'HHHHuDG T\HD~LH`DDhIHfDfD1@7LH~HHHHzHH~LH`hHHzH LfE1ɺKLH5DLD)D)@D)!'HHIOHIH9)HLHI9HL D~LHDDMLLHDžIGAHH9:%0LKH0H=M6HJ LMAH0H5DH@HDž8EPHPLBLDžXUD@%HHM_HHL9LLIL9HL D~LHDDHHLHDžIWHH9 DDLHtH4#HHHHH@H{LH5D LE_L`LD$HH`MOHhHL9 LHpIHL9#HL~HHH`LpHDžhIwH`H9WKH~LHIH@HtHC/"HHHL@7HH`;@7HHD0DH(H`9HtH!HHHHHD~LHDDMGL6HD~LHDDIGH"HtH HHhHH`H~HIGH`HtH| HHH PHHHH~HIWH@7HHaDDHHpHHhHH-H釴I鏲H鳲IHӲH醲H㳥I_IWH˳HóI?H_H糥H3HI鸳fUHAWIH5DAVL AULATMSHHGLS HSHzH:LL1HLA@LH HHHPHLH1HމHA@HHsH0[HzpDLFLH5M6AHEQLeApH0L /k6L`H B@H`1DPLFDHH5xDLLBuHH@HDž8DDžDžLDžHDžLDžDžLH(IVH HI0H9H0H9yM8H(IuHH9tLHIL9tLHIL9tHIL9tsL(IwMWI?H M$0L9I_I9MWMgMvB'H L9tH[A\A]A^A_]HztHz{H:qL#HAT$@AHHPHHH߉P HHH߉ A D<H@H`HDžHHHHDGHH@ƅPH`HDžhƅpAZDOLAHA`d L#HA$`H L`Z HALP L01HLA@LHL[IIQPHHH5lJ6L^1HL@H1DL`HhHDH@HLHH5|DLMAH HDžLLHDžDžHDžDž(9LH(MNH HI0L9TL0L9MtHI=LHOH H(M]HL9t8H0IL9t#LH`IL9tHH@HH9ttHILHI?1LvּI?wfDHILHH @-fD1L&ּH zf.L#HA$:DDGAQAHEDHʉADHH`doLf1ɺL@H5 BL)`))@2[IupH G6DHH5AHADLA HH=AD0LLcZ1H]H0PHpH@HuH5tDH}HLEMEHDžD@H`LhDžxL]EEEEE(L8H(MNH H0M,0L9[H0I9+MtHI LH>H L(HB/H0H9f I?fDDžDžDDH DHA11H W1{HhHA1H `W1YLLSLL H5DLIJDYD1LҼH f.fD=6eHDALL@H @HL牵H58vDDMALLT)HDžDžHDžLLDžtH@H@M\$HHHL9 LHPIL9 HLP~HH@HH H@LPHDžHIH@L9tGL{PLH5FL%lFLDHAPLH{DPHDIHVPHLHOH=DADAEKLPL%.ALpLL`H@H_D LFH5tDHLHDžD0D@H`DžhDžxDžLDžH`H`IL$HhHH9F LLpIL9 HLp~LH`hH H`LpHDžhIH`L9tHMML9p1LϼH fH AM`HAЃP5HH`DžZHsDcHhDLPDI@@L96HH~L@6M@HPH5qDLHDžXOD`LpLH@HODLDžLDžDžHIL$H@HH9GHLHH9HLPD~LH@DDHHHLHDžIHL9tLHLAPLH{HLIM`@H5DL_LM@LLLLHDžASH@JHH5pDLDžDžL Dž(0HM\$H`HL9HLHH9HHpD~LH`DDhHHHHDžIHL9vvH{D[PHwDDAAyAEHLGHL%AHx@DKLG66HDžqAPL0LHLP=6L@LH@H5mDkDL Dž(Dž8LL@DžHH@HMD$HHL9KLHIL9HHPD~HH@DDHH HHHDžIHL9tR HSLHH5ImDM` M@LRL0LHDžLEZHH@DžDa H`HML$HHL9cHLHH98HLpD~LH`DDhH(HLHDžIHL9 H A VEMHHHA1H L1޼7DžEHtH) HH@HHHHtHBk HH`HhH0EDDEQAQAAAAӉ H{DcL0H5_AMQ@H96HWLH=26L0HDBAKD@LHkH5RjDPH@D`MAHLHDž8HpDžxDžDž HM\$H@HL9 LHIHL9HLP~H@HHHLHIHDžHL9t HsL0LIK H~HH5iDH@HDžDgLMCDžDL L H ML$H`H(L9HL0HLH9,HLp~H`hHH L0H IHDž(H L9HD~LH`DDhI|$HHD~LH@DDHI|$H[HtH H@HHHHH@`HtHH`HhHhH`HtH}mH@HHHHHtH}4H`HHhHH~LH`hID$H`7H~HH@HID$H@=HD~HH@DDHID$HHD~LH`DDhID$HHtHH@HHH&HtH9H`H(HhH~H`hIT$H @7HH@H~H@HIT$HmHH`p@7H`Hh]@7H@HyPH@HH@7H`Hy0@7H`H(DDH@HmH☥HDH霙HxHƙH9HKH鿘HHϙI鴙Hp@UHATISHHtHtxH)HHwL---H@H( H5 'LHDžLLL0Dž8L@DžH{H;Hs LL{MA0H[(H -LL=MAHLHH5b'HH@HDžLHLDžDžHS(H`LH5-LcLk Hx0L@H`L=X=LH@H HH5'HDžhLpLxLLDžDž=XHK LL L%<LSMC0H[(LL MCL-K-H0H5'H@HDžL L(H8L@DžHLPDžXH;Hs HH -HS(L{LH0L@HL<LHH5r'H HH@LHDžLLDžDžHpLLc Lk LG0H[(H5"-LpLGL=v;H@HLH5'HDžxLLLHLDžDž`{HK HS(LH L LSLX0L@H@L%:L-s,H@HH H5'L HDž(L0L8LPDžXL`DžhH;Hs LL{MA0H[(H ,LL<:MAHLHH5'HH@HDžLHLDžDž"=HS(HLH5V,LcLk Hx0L@HL=9LH@HHH5'HDžLLLLDžDžHK LL L%9LSMC0H[(LL MCL-,HH5'H@HDžLLHLDžLDžH;Hs H0H ,HS(L{LH0L@H@L`8LHPH5k'HXHpH@L0HDž8LHL`DžhDžxE`HLLc Lk LG0H[(H5h,LLGL=7H@H LH5'HDžLLLHLDžDž(HK HS(LHL LSLX0L@HL%&7L-,H@HH5'LHDžLLLDžLDž"H;Hs L@L{MA0H[(H *,L@L6MAHPLH`H5X'HH@HDžHLXHhLpDžxDžhHS(HLH5,LcLk Hx0L@HL=5LH@HH0H5'HDžLLLL Dž(Dž8HK LL L%c5LSMC0H[(LLMCL-,HH5'H@HDžLLHLDžLDž*EH;Hs HPH ^,HS(L{LH0L@H`L4LHpH5R'HxHH@LPHDžXLhLDžDžߡHLLc Lk LG0H[(H5,LLGL=4H@H@LH5'HDžLLL H(L0Dž8DžHޡHSL HH 3LP L@LHHH5 'H @LHDžLDž{ޡLLcLH=3I] HMELH @H5O'HHDžLLDž ޡ%LL{LLpIq H2H @HDžxHpH5'LMAH LDžݡHKLLH@L%+2HDžHLX HXL@H @H5'L@LPL`Džh(ݡCHL+H[L=1LG H5>'H @ LLGLHDžL H(L0Dž8ܡHSL LLIr MBHDžH ;1HH5'H HH @LDžFܡaLLc LHH0H @HDžLh L@LH5('LLHDžۡH;LCLHo0MO HH @H5™'H LLMGLHDžDždۡHKLLLPL%/HDžXIs HhMCH @HPH5*'L`LpDžxڡH L+L/H[Hx L@ H @H L@H5'LHDž(L0H8DžHڡL;LKHH /LR LBLHH5Q' H @LHDžLLDžڡ,LLc LLH.H @HDžIu MELHH5'LHDž١H;LCHL :.Lx H5e'H @ HLLL@LHDžLDž/١JHSLL`L%-IK MCLHDžhH`H5Ж'H @Hx LpLDžءH0L+L\-H[Hw LPLGH @H0 H5L'LHDž8L@HHDžXMءhIFIFIAFVH I9SlImnmInff.UHAUATLeLESHH5]DH8GLEסLEH;HSHsHMM,0H9tmLKM9wTMu/LkIB/H}L9t֡H8[A\A]]fHIt7LHաH;1HvH;뢐A H;Hmff.UHAWAVL@IAUMATLSHH5wDHGL牅@֡IVHzhH:^IL1LL@LjIvPENIMwPH &HPLpHDžXLNMZHPLPƅ`L`LpHDžxƅAF{LLH5_DL^dSPLM]LSHpHxLH芠CP=L0ƅ@1LIL0HDž8LSsHHIzLLLWHpL`HLpHHHxLLLLLLHHHLHLLLv5HHDžh LHL k^DHPHXDž(HpLxHH 5HLXHH=m'HH5]DHHCCLLLCH H]DL0L]DH`H @HpLHuH5ZDHUDž8L@DžHLPDžXDžhDžxEEL]EHEE LELCE 誢LHMT$HHI0L9\LL9$MtHI$LH迠HHIvHH9t訡HH0HH9t茡HIL9twLIwIWI?HM,0H9MOM9<MtHILHI?MoIB/HL9tL`HpIL9tꠡHPHPHH9tΠHxHHH9t負L@HpIL9t薠LHHPIL9tzHHHH9t^LHIL9tBLhHIL9t&HpHHH9t LHpIL9tHHPHH9tҟLH0IL9t趟LHIL9t蚟LHIL9t~HĨ[A\A]A^A_]@HAH i'1rLSIzb@HtH) HHHHHA H ^'1qfDDHLH5b' DHHH;{HtHH裘[LHH5kFDL]LHL)H.HM^Ml$L9H I9B [i])LH`LLNHCD LMfL`M9L HL`LHPLpHhHDžƅ M9wHHH9HL`D~LLPDDXHH`LpHHDžhH`HH9t՜HMNL9//@LHH UWDL,HMEHHL9q'LL IL9)HL~LHH)HL HDžIHL9t㛡HS{HRL L-5HDž(IK0L%5LBMCH H5XED0HPH@@LPDžXLXL`DžhHHLCsHHpHH@H@MMPHL@H@HDžAQEZ H5DDLPL-4_A@YD0DžXL`DžhLpDžxDCPLHDžLxIEHLAƅEPAvmAtgA%HPHpHDžXL^HBHPLPƅ`H`HpHDžxƅf{H8 LL5L0DžHLH5DDL HhH`HxWH`IL9t[LPDCPHpHDžXIQLWLPHPƅ`H`LpHDžxƅAHH FDHwLcDCL`H`IQpLhID$M$LpHAsH`Hb'LxHDpL#EHXH5:SDLLHLLMAHH@HH5YFDHDžhDžLLHDžDžDžLDžDžH dDž(HML$HPHL9xLPLIL9H8H`~8L8HP8XH HHHDžIHL9tHH`HH9tՖDCP@/ HCH`H8HPH0HH`1ԖfDo UDH`fDoUD@0fDoUDDHDžp0HDžh0DPDX H8A11H KDhLHpMULLI9LHHHLXLH0H@@HHH)HH=&HHMEHXL9LL9XHH 'DL@HH5+DLH@H@HP DžLL Dž(L0Dž8DžHDžX~H0MD$HH8L95HxL@HH9- H`LD~`L`HD`DH H0L@HDž8IH0L9<<LPLH5%D&LDž}K@ HwA+1LLH %D99fH~LHpxI}H0DH8~8H8Hp8xI|$H@LKKMHHMYIHLxES LHLHpLX0D@HxLPHPHHXH`LhLpHxHĵ5HH 6DHH=5LLE'LL6DHDž HHHi6DHPL0MFLHH5CLXLLLXHHH@HLHPH5,DLLDžDžLDžHDžDžDžL Dž(Dž8H@DžHDžX zHhH`L8LH`HH9HtHIyHXHpHxHPdsPLLPH5`#D/LDž`9zHML$HpHL9LLIL9THHD~LHpDDxHDHHHDžIHL9HtH&wHHPHXHHA1LH .Db5DHtHtwHxHpHxHpgfDoLD) }Do`D)LDfDHtHvHHHHMLH5 DD&LLDžxDHtHdvHHHH6H~LHpxI|$Hp@HtHnuHHpHxHPH`D~`L`HD`DI|$H-fADpHhHPo@DpDHhHPwf HH@HH@HtHtH8HHH0H`~`H`H`I|$HH`D~`L`HD`DI|$H0LL0H5D&LDž@~u@HtHsHHHHHD~LHpDDxI|$HL0{L`H5DIH@L8LHLM@LH`LJ4'H @H5DpLHDžhDžLLDžDžLDžDtHID$HHH9eHxLHH9H`L~`L`H`HHLHDžIHL9HtHqHHpHxHH`D~`L`HD`DI|$H0@7HHp@H8HpHD~LHDDI}H!HD~LHpDDxI|$H`@7HXHpDDHHPHtHpHHpHxHyHxHpHH^HtHopHHHH@7HH @7HHcHD~LHpDDxI}H@7HHpH`~`L`H`I|$H@@7H8HG @7HH!DDHHpHHp3HHH=$WjH=WjH= WjH=WjHHHO HH Hx H H$ HD Hm H HVH H HHH H H! H H&HHHHHH H fUHATISHHtHtxH)HHwH1HeH1H_1@7HfH11LH5nE)))H*V @7HHpzDDHAHHHHHHHHHH|H"HH,H(H>HHHHHdH@UHAWAVAUIATSHHHP L#1HH A$1HHHHIHIH1L sHLHH5&DTLH1HHHA@HLƅH@L Lp0ƅ0E\$LL@IH@L"IH5e DLL5DDL=DLHDžL HDž(HDžDLDžLDžHSHH57L@{LL55IQ0MALHH@L L`L5H`H5DLHDžL(L0Dž8L@DžHRH`IOHHhH9%LHpIL9%HL~HHH%H`LpHDžhIH`L9tQH(HA1H &T$H{H HWHDLL;HDžLIDLƅL`ƅpHHDžhM^L`A`Z#L{KLH=5Iq0Hvx5IGLD@HH5DH@DMAH LH0ZHDžDž(Dž8PHMWH`HL9)IFLH90HHpD~LH`DDhH0HHHDžIHL9tOL;HA`L@HHd|#{LL=~5L`IR@H O~5HhLLCL@HLHH5 DHH @LMBHDžLHLDžDžDžKOH@MOHHHL9 (LLPIL9.HHD~LHDDH.H@HPHDžHIH@L9tNH`IL9t NL;HAAƄmHH`d%L3HA`Z.H0LDKHDžI|$HHHƅ H0HDž8ƅ@"HPLH@HDžXHW L5|5D`HPLGLH5̼DLpDžxMHM_HHL9/>IL$LH9'HL ~LHH'HLHDžIHL9t^LLKL{LAH@M{0I1VH5DLLL7LMCHDžLDžDžVLHIOH0HH9=HLHH9>HL@~LH08H>HLHDžIHL9t!t!fHH5ß/L@{LPL=y5IP0M@LHH@LpLLy5HP`H5D`LHDžXLxLDžLDžJHM^HHL9PHHHH9 $HL~HHH#HLHDžIHL9DHsL01LLHvLA H5JLD.#LSL`1LIrH LH5&.H`IL9t2ILH0IL9tIHPHL;HDžXHL@HHHLHHL@HhHLIHHLxILpIHPHHƅ`HHDžƅHHDžƅL@HDžHƅPHDžƅLHDžƅL@HDžHƅPAH#HHH#LSL`L #H5DLIJDYD GH`MD$HHhL9CLLpIL9FHHD~LHDDHFH`HpHDžhIH`L9tFL#HA$LL1HLA@HIOHHH9BLLIL9EHLD~LHDDHEHLHDžIHL9tELHH@H L=t5HG LGH @HDž(L8LH5DH0L,H L@DžHEHMT$H@HL9 BHLHH9DHLPD~LH@DDHHCHLHDžIHL9tDHsHH kl5L@L`0LHHL@H~LLH5DHDžWHLH@LLLDžLDžDHMD$HHL9@HLHH9BHL~LHHBHLHDžIHL9tCL#HA$xLH@LLHIS0L Mp5HDžHH5DLHH@LMCLLDžL Dž(SCHID$HHH9?LxLIL9bBH`H~`L`H`HRBHHHDžIHL9t)BH{HLgHD@AT$L LHHHLMQ@HL@D0MA@vHXH @H`H5=DHpLL HDž(LPDžhDžxDžAHMgH@HL9<LpHIL9?HLP~HH@HH?HLHDžIHL9t@L;HAHL f1ɺL0H5DL))`)0@H MT$HH(L9n=HhL0HH9@HH~LHH@H H0HDž(IH L9t?L;HALL@1HLA@H@ML$HHHL9<LLPIL9?HHD~LHDDH?H@HPHDžHIH@L9t >LHH0L DLHG0LLDLHL`H@H@H5xDLXLGLH0HDž8LPLXL`DžhLPLpDžx>H`M_HPHhL9r-HHpHH9/HL`D~HHPDDXH/H`LpHDžhIH`L9tX=HH5="]HHA1H x5HHHDžHHHHHHHH5s'ƅHDžƅr!Z*L`L`)IL`DDLHDžƀHL LXI~H LM9)L L@L0HL`L(LH@@L(L)HT;L I$IVHI93H0H9s(Mfo''H }}fo%Dfo-DIfo5DAfo=DfDoDAafDo DfDoDAY fDoe*Ai0Aq@AyPEA`EIpEEL M$LL(CƄ#H IMfL0L9G(H0H0H@[H@MNLPLHIJpH(L D LHPHH`HpHHLLL`LxL@DLo5LHHH`HH@HHH8HDž(ƅ0HDžXLDžLDžLLXHPLMBDžDžLDžHDž}3HhH`HcH`HH9t2HH0HH9t2H IL9t2LHIL9t2LHIL9te2LHIL9tI2HpH@HH9t-2HxHHH9t2LHIL9t1LH@IL9t1LhHIL9t1LHIL9t1HHPHH9t1HHHH9ti1LIuIUI}HM40H9MUM9MtHILH0I}MuLB7H@IL9t0HH HH9t0HHHH9t0LHIL9t0LHIL9t0LHIL9tc0HĘ[A\A]A^A_]Ð1LI})DHH5Zf'm{HH@LLHHH0L5^5HDžHL ^5H@H5CLHKLL@LDžLDž0HMWHHL9HLHH9HH~LHHHHHDžIHL9t.H(HA1H o0.fHH5`] A|$HD[Ld]5HH@L0LHH5CH@LrLL@HDžDDžL Dž(Dž8s.HMNHHL9aLLIL9"HL~LHH"HLHDžIHL9tJ-H(HA1H ,BHhA1LH KCMDHtH&+HHHHAoDHtH+HhHHH`D DI}DH~HHIH`LDH{L@L=S5IJ0HWDBLpL H@LH@DPMBL`L Z5HhH5CHDžHDžxLDž+H M_HH(L9LH0IL9HLD~HHDDH|H L0HDž(IH L9fLLHDžIK MCLDHL5hY5H@H59DLDž*HMGHHL9ID$LH94HL D~LHDDH$HLHDžIHL9t)H{[L H@LHMM@HWHLH DZ0HH(L HD@HPLH0LXLL8HHqDH`HX5LhL d5HpH5$DHxH=WDHHDHH@HDž(LLLLL5:P5H H`HH5DHHHDžLDžHDžLDžDžDžDžDž(o(HhH`HUH`HH9t'LH0IL9t'HIL9HH5K|5 AT$KL@LIp@DM@HDžHLH@LV5PH5CLH@`rDpLDžDžLDžK'HLI4HL9YYHtH$|%HHHHH@%HtHK$<%HH`HhHTH~HHI~HDD@p@7HhH-HD~HHDDIH fHtH)L$HHHHH~LHIHtDHD~LHDDIHfE1H HHH EQ$fo'fo%4DH fo-5D@Pfo59Dfo=>DHDž0PHDž(P`h p0x@HA 11H DLHPIvHHH9iHL`L ILHLHH@@LM)I:)HM$MFLXL9!H H9XELH5 DH s)DHxHH0H5 DHH)H)HLI$M^HCƄ!L HMT$L L9BH H H0MF[H@L`LHDLIHLH`HHXpHHPHLDLLHLHL@HHHLLHH(HDžƅ HDžh LHHHHL LLHHDH@LHHH DL`HH=DLLDLLDHHDLL۬DL0L=DH@HԬDHPH @H`LEMADž(Dž8DžHDžXDžhLpDžxL]EHEEEL}LE LH]E H8H0H޻LH0HH9t, H IL9t HIL9t LH IL9aafHH5tHHA1H [5sfDHD~LHDDIH@f.HD~LH`DDhIH?fHHH`LQHIHHL`KLCH`AIGH9tL IAGHL HDž(LH~LIMXHHHL ƅ0HDžƅLLHDžƅH} L#HA$H1HDKIֹILL@H5ȩDLD@:HLI+HL9tEG{LH gL5Is@L H HL&H(H@LH5[DDMCHDžDDž(L0Dž8H@DžHmHLI*H L9tSL@LPH5DLPH@MNHHHL9LLPIL9HL~LHH{H@LPHDžHIH@L9tLH5pLHHA1H W5H5Q'LaHKLy0H }HHH Ied_s[i +H fDo 'fDo[DLHpfDo%^D@x 1];fDo-^DfoDHDž0|fDo5RD@|fDo=UDDHDž(|DXD` Dh0Dp@DxP@`HH5P'LpLILpfDoB 'HpfDo "DƀfDo"DDfDo%DfDo%,DDHfDo-.DfDo55DfoDHDžfDo=iDfo !Dǀ 1];foDDP fo"Dfo%*DDX0HDžxD`@DhPDp`DxpHA"11H #YDfLLPIsLHH8L9HHHHIHPHLH@@LM)Ir LHM$s MAL9LM9aH=DLH5{DHk HxHH0H5{DH)H)s HLLHPLHCƄ"s HLbMNLPL9LHL9H(HPLXLMHDžƅH`HDH L9s$HHH9L0M9HVֻL HPMFL HH9H L`L0LHL(HH@@L(HL)H= H M$IvLH9iL0L9LH ΆDL؅DH5хDHWHHLH)H)HHH M$MVL(BƄ L0H M\$L0L9L0H0L@H(IN[HH H@LLHLH8ƅ0LHDž(EH L LH(D0H@LHLHLPLLLXH`H D5HhHk=5LpL=D5LxL Q5HHDLLDHDžLLLDHHLLǠDHH@LLGHDžDžLDžLDžHDžLDžLDžDž1HhH`HӻH`HH9tH0IL9tmH IL9tXLHPIL9t<LHIL9t HHpHH9tHH HH9tHHHH9tLHIL9tLH IL9 HtHlHHHH[YH=7CIH0H5CH CAHDž@XHPHxHHI)AXL)HƀXXHDž8XDI+L`HxIL -CLHCH*H5CH`HDžp*I)A*LL)L"Hƀ*HDžh*;HE111H *EH{DcH >A5LL@HHIC@H95LH`EWDLL=@5L0LMCH8H5qCHPH`H @HHDžD L@DžHDžXDžhHML$HHL9LLIL9)HHH~HLHHHHHHHDžIHL922HtHH(HHH HtH^LHhHPHXH`H~LHIHDHH5dU HHA1H [M5fDHDž(ƅ0yHHfDo"'HfDoDfDo%DHDž fDo-uDfoDDfDo5Dfo DDXfDo=:?*foRDD` foDfo%DDh0fo-D@`fo54DDp@DxPHpQDHtH4 HHHHHtH-L HHHH_HtH HH0H8HHD~HHPDDXIH`7ffDo@LLD)p9@HtHjl HHHHzHtHG, HHHHSA1LLH DɻA1LLH ;CɻH~LH08IHEDfDo LD)0Do@D) DDoxD)0pDfDo0LD)@H@D~@L@HD@DI|$HHHD~HLHHDHDIHfH~LHI~HDH LHDžI~HHHHH ƅ HDž(ƅ0H3 L;HAH HHHL;HAHHHH1HIHHH߾H1HHHHHH1HHHHHH1HE_DKHLDxH0DAArHD@HG5LG5DDPH@DH0H=G5D`L vG5DpLG5DLMG5H5gG5H &G5DL=(85H H=lDHLHLHDž8 LDžDžDžDžDžDž(HPL0Dž8L@DžHDžXH{LHH@H5DHHHLNHHHH9t2fHH5\Hs[LE5L_:5Ed$HLNMDHL LIAyL0HDLL/5@H=DLL=>/5H H kC5DPL%DHp5LxMCHH5DLHHDž(`LDžDžLDžHDžDžLHH @LLDžDž-HhH`HŻLH`HH9t{LH IL9t_HMvL9fD@7HHMIzLpkfo &fo;DIeCount])Hpfo2Dfo%:DHDžyfo-7Dfo5?Dfo=DDPX `0h@pPx`L@p@x;HDžxy@yLH5;'1 H{LL LLIL fo5&A])fo=DHened_s[ifDoDHP@fDo DH HDž0K0xD@ DH0fDpH@J;HDž(K@KH5jYLq)HHA1H ?5W׻fHH5CY-HHA1H 65׻#fDHtH HH@HHH.HtHHHHH駽HtHXHhHHH`鏼HtHTHHHH雿HtH-HH@HHHHtH{HHHHsHtHH(HHH HtHTHHHHH@UHtHHHHH,DDHH`P@7HHHML=05EIA1LLH NpDQHAs 1LH cD.H~HH@HIH]HD~LH@DDHI|$HHD~LHDDI|$H HD~LHDDIHZHD~LHDDI|$H`CH`~`L`H`I|$H髽fDo0LD)@Iox)0+LfoLH(ƅ)`LXNHDžtoh)H~LHI|$H wHD~LHDDI|$H@HH~HLHHHI|$H@7HH3HtH }HHHHH@UHH54'2HH5EzɾH11лJ0@7H(HupHhHPAAH~LHI~H@KH=wDI% 2) * 8H@fo55wDL@Pfo=9wD fDo=wDHDžPYhp x0D@@@X;HDžHY@YfHtH ,РHHHHwu HXHA1H aD訣 HH`Z HH`d Au DGl DLLH5DhD#LРHHH轎HIL9t(РHX HH)HWA AH _DLHPN,IHL9L`M9MWHIEE61E@A<A@<E9EAt|AtfAtPAt:At%AtF F ADADDDA<@<EAB BEABBEAB< B<DADDE9snDACECD <D EKB@<B BECASBB<ACD B<DD ASA<D@<E9rHPHDLXB(v HXuII)  IL9tHLPLnL@M9 H`I9 A1)HPLXB.bfDHA1LH lDRDHD~LHDDI}Hf.DoHD)DHtH> ̠HH0H8HfoLL)p9fDHtH ˠHHHH~HVLHH@MK MCHDžDjH54LDžDL-4L̠HLHsH~LHIHDHsHpLHH LR4LHVHpL@H@H5cDHDžxDR"LDžDˠHMMHPHL9LLIL9 HH`D~LHPDDXHHHHDžIHL9uʠkf.ADHHA1LH "C2HhHA1H P"C3HIHHI`LXLLHuDHHIH;Q ~HIDDAHLHHH0H=[4,HH5Dh6HH@DL@HLHH5%kDHDžDžDžɠHHL談fDHH 4HDžHW H LGH@LPHH5acDGLDDž(;ɠHLIֺHPL9mH;tDD;N HHxȠI‹HxIPMZ8IB0IR AB MZ(AB8LpL衽LHpHHu H9 HLLIxHHHv(nxHSLL[4H@IB MBHzH5hDgDoHHDžDLLLDžǠHLI:պHL9DLSLH=4eMA LIJLH5l`DMAHDžDYHLH@DžD/ǠHLIԺHL9XHtH\ŠH8HHH0fHXII)I {HLPLn!LYM9L`M9PIfo% kDfo-kDAB 2A"AjHPLXB.nDHD~LHDDI}H0HtHFĠH8H@HHH0HtH ĠHXH`HhHPHtHàHxHHHpHAH ?B1dDDHHSH~LH`hIHPHp~pHpH@pHIH0HD~LHDDI}Hp9AAHtH HHPHXHE1E1H DuI%LHPLn&IxH9nH`I9HA 1fo5ehDfo=mhD@ nd -fDP$0xHPLXB)HXDDHH0HHIx(H9t!HxL HxLLHh LLIx(I9t!HxL= HxLLH  LL+HD~LHPDDXI}HHXII)H1b~HP>HA!H YD1;~@@7H8H1DR E9P @1r A9p @AhIx(H9t!HL HLLHLLI{(I9t!HLHLLHLL7HA&H XD1>}`HXH`N@7HxHj@H8H@A*DHP@7HHPe1DJ E9H @1J A9K @AH=@H=4H=(H=H=⺠HcH/dHcHLnHEHEEH9tWHNI9w.LkIB/H}L9t3H([A\A]]IL$E11LHyH;fDHcUHAUATLeLESHH5DH8GLE9LHuIT$H}H M,0H9LMM9MuLmLSB/LEHsH;HMM,0L9L[M9wmMu(LkIB/H}L9t-H8[A\A]]fHItLHH;HItwLHܺH}d1HxH;뉐1LxH}>DA[DAD1@7H;Bf. H}Hpbf.HGH8 Hx Hx| UHAWIAVAUATSHHHHS@AWHLH5UDHLVM'LHƅHHHHDžA$HHHH`LXAMHu;f.IHvHtD;v ~HvHuM9tDE;M H腺LX8@8LHP DLX(HPH@0DP LHeLHIHMu I9LLL池HxLLIT$LHIu(IU0HHLLHu8fHHHtD;w ~HHuI9t;q HLHiLX8@8LHP DLX(H@0HDP LHILHIHMu I9LLLʰHHHHWHHq(HQ0HyHH! H*H腹H H)H H HHH{H HHL(IM)IL L[MuM9H0I9 MA[0fE AB]H L(HSBD)H HH9LL0~(MpL9LLHHzH L0HDž(HH H9tHHHH9tѶHIL9t輶L@ILLIL@HDžHƅPHHH H`LXAMHu3fIHHtD;g ~HHuM9tDE;^ HuHP8@8LHP(HPH H@0HHP HWLLHI=Hu I9 LLLحHxLLIELHIv(IV0HHLMHu5@IHHtD;g ~HHuM9tDE;Y HMjHP8@8LHP(HH H@0HHP HLLLHI Hu I9 LLLͬHLHHGHIq(IQ0H|HH H*H舵HH)HH`HHH{H`HHLhIM)IL`HKMt$I9HpI9 MA[0fEAC]L`LhLKCD H`H@L9 LHp~hMt$L9HLPH@HHH`LpHDžhHH`H9tHHHH9tҲHIL9t轲HI1LLkƅLHDžIIHH`LXLHu+fHHHt;O ~HHuL9t D;j HH膲Dh Lh8HHP Lh(I$PH@0@8HoLH Hu"I9t1DJ E9H @DLLL᩠HI$xHL_LHr(HR0HIwALL?4IN@HxDLLHFHL 4H@H5mWDHDžD`LMFDLHL纃LLDžDžL Dž((HM\$HHL9%HCLH9q HH~LHHa HHHDžIHL9tLHIL9t鯠  LLHIqI9MyM$0L92MQM9Mt"HIk LHhHH?LHMeB'HH9tIHH@HH9t-LHIL9tHHHH9tHH[A\A]A^A_]M'LA$`MdvLA`Z LvDMIGAwLLHLhLHL@IAMLHH=uDHH54L-9DH uDL8LL L uDH(0L0MGLPL54HuH5XDHMH @H}LHDžDžL@HHL`DžhLpDžxEEELMELUEܭLLHHIHM<0L9p HI9@ MtHI LH뫠HLIB?HL9Ϭf.L1LoiI>9HHHA1H sDNfHHA1H sDfHL\>@HL\'@M/LA`dMLLLAPpILH 4ELH54Ms@HLOHL-4MCLHDžAQHH @HH5IXDDLHLDžDžDž被HLHHLOHM<0L9HI96Mt H<0IrLH谩HLB8HHHH9t葪HIL9ADHtHBHI+~HH5KDLB11fDMT$IT$ L)HH9svIvI\$HuI$HHtI$H=4sH=qUHAVAULoATSL/HtrIHIoHHw2Hu$AAD$I\$AD[A\A]A^]HtHxuI\$I$ILHL tM,$H=rf.UHAVIAULmATISH]HPHAT$HK LH54LCHMH@UHuH5JDHEEuLEI>MNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1Lv0I>RfDA3DDI>2HH=%1}yI_@UHAVIAULmATISH]HPHAT$HK LH54LCHMH@U"HuH5bIDHEE~sLEI>MNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1L.I>RfDA3DDI>2HH=%1wI@UHAWIAVL54AUL@ATSHH(HKIU HH@MEH5HD#PH@HHDžHL`DžhqIwI?MOLHLM$0L9-MWM9 MMgL 1HB'LH@LIL HDž(ƅ0HA@KP*HHHH(@0HAH )1:CL{P*HDžI|$ƅH DSPH5JDNcIAfDHIbLHnI?LHHL@DL@Ma LH @LMAL`HLH5IDHDžLDžpH`M\$H HhL9HHpHH9HL0~HH (HH`LpHDžhIH`L9sniA11LH HDA{HLuL5CIMPH5HDL L(L)CLLuLH@H@`LHU/HuH5EDLEMEHDžHLPLXDžpL]EEEErnLIwHI?M,0H9IGI9MtHILHlI?MoB/E1.H{HS H)HL9 JDA11LH ZED>{fA11LH U$=[f1L'I?_fD1L'I?fDH(OHtH>iHhH H(H`HLLbHHHxMML@Hw(HW0LHLH@L\DDLHIR L0MBH @HHH H5@DHDžL(Dž8HNjHHHHHHH9MT$LL9bHL~LHHRHLLHDžHIL9tiH@IEH9RiHADHA H BD1;T I?1@7I?HtHgHHHH#H~HH (I|$H`/H~LHHHzHIx(I9t!HLgHLLHgLL:@7HHpHhH LH=%1ZmHpHHHHH]f.UHAWIAVAUATSHHHKPQ؃L>HIPL-4HwHL52HDHI0HX{L@LLMQ0MAH@PH5a=DH$L@HDžHL`LhL`LpDžxLhLDžHfLIwIGI?HHM$0H9IWI9oMtHILHdI?L MgLIB'{P*L HDž(ƅ0wMsPL @DMcMALvLH9.HA$11H pMNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1LI>RfDA3DDI>2HH= %1NI@UHAWAVL}L`AUATISHHHKIW LH5ww4HUMG*MH@HuH5%DHEEHLhIt$ML$I<$H`L8M,0L9MT$M92MMl$E1B/Lm{P,IMHEHMEIt$I<$M<0H988MT$M9MM|$B?E1/fH{HS H)HL9[J7DH@LhHLxI9y HHHH0DHxLa(Hq MI)LLHWHH9)L4>LxHMc(Is MI)LL9tHH9EHLL@H LpLhIIHHILL@HDžHƅPLHDžƅH HDž(ƅ0I9&H ;H0LLHHMhLH1H [$H BH H(LHHHLHI9&LID$HM9 LL9 C#_HMT$LBD"HL8HHN$L9@ H0I9 LIL9< L@M9 H1nHLHB'INHxHLI9Q LLPLHPHH8H@@HL9t<;LH0IL9t ;HIFH HH9 LLILL9 HH0D~H DD(H HHHDžMFHL9 p:HH9LH0L L(I~HI9s L0LLHLE_H5&II0LMALLPHB)LL8LHH@H H5DH HDž(ƅ0HDžDLDžDž(9HPMEH@HXL9& LhH`IL9 HLPD~HH@DDHH HPL`HDžXIHPL9t8HHHH9t8LH IL9t|8LHLL9 HIILInHAALqL@ LILIHLN,)LH9 MLHLL9HLHLH1Hu H;|HLH9HILHN,H9LMLLHLjL9*HLHLHU1uH;HXHL%H9IHL;LHHL-&HBHHLH5DHDž(LG@L@LH0L LGHL`HHHH @L8L@LPHXL`DžhLpDžxHDžq6LPLHHIHM$0L9e HI9MtHI LH4HLLB'HIL9ta5HHLH5DLW0LG$H@LHH`HH@HLHDžLHLHDžLDž=5LHLHHIHM,0L9! LM9yMtHILHL3HLLB/HIL9t-4LpHIL9t4HhH@HH9t3HHt3Hx5H@HxHH9LHHH DLMt$@H0HL8LLLzDHHL5D*HH5DLMD$HH @HDžHLLLDžDžLDžY3AP+H=~LF~LEHHGHI3ISHHAP+HLLE_IUpLuH0H8HLHDH8H@LHHLLH H=qDLL`H(HbDL0L^DH8H@HXH5DHpH}LHDžLPL`LhDžxEELuEHELEMEEE1LHLKLHM40M9LM9)MxLIC3HL9t0AP+L(LHIuI}M$0H9IUI9ML(MaB'MLALHIL9t_0HHH9tJ0HHt90H`L@HHsLvH{ LcH0H/MLf.HH9kf.MHI*LH.f.HA1LH ǁD2;DHtHD.HH H(HDoHD)DHHI11aDHD~H DD(I~H"ffDAQDAD1@7HfD@7HH HHpA1H &QHP1H}fDHH1HfDHLAHL9 H LLLL9HHLH'u I> HLI9 AI^L;pLLLLHtH) +HXH@HHHPHE1HHHfDo0LD)IHDžHD~HH@DDHI}HPkfH8,M@LXH0IL9t,L HIL9t+HHHHH9t+LPHIL9t+HH0HH9t+HHHH9t+HHHH9tk+H[A\A]A^A_]fO+M9 LHI9|HAL)HHHt]HtJHtA#HtHHHxH0H8HpHtHHHHHHr@7HH0H~LHH{HH~HH08I|$HPXH~LH08I|$HpH~LHI|$HAgA]LHLI9tHLAL)HHHtaHtNHt@Ht2Ht$HtHtEeHD"HD"HD"HD"HD"HD"HH9t0D"H@DbDbDbDbDbDbDbH9uL)LH@MZ MBLHDžH2CH5CLD H0Dž8SHMFHHL9HpLHH9HL~LHHHLHDžIHL9V@7HxH1L(@7IQ1H(@7H8G L1HӺL1HnӺH|HtHa~HHHHHtHDEHXH0H8HPAHtHHHHHH~LHI~HZDDLkDDH[H=A2HHHxH0HH`@7HXH0@7HHHH=%1VHD~HDDI|$HHtHt*nHHHH@7HHI£IãIãIlãIãI£IBģI£IãIXãI@ģI£IhģIģIģI(£I,ģI£f.DHtkUHAUIATSHHHsLH{ LcHtjHbMtLHHMuH[A\A]]f.DUHAWAVAUATSHH_H}HLvH>MI)Lc(LC MM)N M9MML9HI9LLHH)HHHGIPMxL9QjHHHt~Ht]Ht LEI>MNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1LźI>RfDA3DDI>2HH=v%1I闹@UHAVIAULmATISH]HPHAT$HK LH5M74LCHMH@U#HuH5CHEELEI>MNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1LĺI>RfDA3DDI>2HH=Lu%1 I!@UHAWAVAUIATISH54HHHAL$H`HHV LFHH`H5C$pH@HHDžhHH]ELIuI}MUHHM40I9PMMM9=M LL=CMu1LH7CIC2LLHfHLp9LID$IT$ H)HH9 H%LxLLLCHH%CLLHH @HLHFLMGLPHDžXLhHDžDžDžDžLDžLIuHI}M<0H9 MUM9VM M}B?L+HAHIL9tHHHH9tLH`IL9tHH@HH9tfH IL9tQLHIL9t5HHHH9tHX[A\A]A^A_]HI#LHI}HILHI}1LfI}D1LNI}DHA{11H C3κHPHH~IHHHPLHLOHHXIHPH .HM40L9!L`M9 MtHI;LHHPLXLHH5YCB7LPIK LHXHLH @LMCH aHDžHDž(LH(MT$H HM<0L9)L0M9i MtHIfLHH L(IB?HL9tLHPIL9tE10H{HS H)HL9wJEIIpLICHL5{(L=5CHHH6CH!@H`LhMAHpH5CH}HPLHDžDž Dž0D@DžxL]ELuEL}EHEEEHsLLXHHIHPM40L9 LM9o MtHI LHHHLB7HPHH9tcLC L{LM9 M)MIIIAIItjItQIt7ItI I>LHhII>LLAhII>LLAhII>LHhII>LHhII>LL?AhIL9I>LLAhI~M~LL7AhILLAhILHhILLAhI LLAhI(LHhI0LHhMw8L9gHs H9su DCHLH CHBM_@H5CLBLDMGHH0H! @H@OLHDžHLL Dž(Dž8DžHLH(M|$H HM40L9 L0M9_MtHI_ LHH LL(B7HIL9tHH0LLLHG LGHPH5CLH @H0HDž8L@LHDžXHM~H`HL9LLIL9HHp~LH`hH HHHDžIHL9tpHHHA#1H CƺfH?LDKH5CL=?MZPMBLH=u(HHH!@H H57CH0HLHDžDDžDžLLDžDž(Dž8H@DžHHLLHHIHM<0L9WLM9MtHILHHLLB?HIL9tL[ L{LM9cM)MIIIAIItjItQIt7ItI?I>LHhII>LLAhII>LLAhII>LHhII>LLAhII>LL?AhIL9I>LLAhI~M~LL7AhILHhILHhILLAhI LLAhI(LHhI0LLAhMw8L9gHs H9sLPLD[H i{CIW@pHr<H5CL l<LHP8HHH! @LMGHDžXD`HLLDžDžDžLH(M\$H HM40L9FL0M9MtHILHH HL(B7HHH9tHH`LLLHG LGHH5fCLH @H`HDžhLpLxDžHMFH`HL9LLIL9HHp~LH`hHHHHDžIHL9tHHHA#1H CLPH`LhH@LHLL L(HH6f.H1HSfDH1HfDH1ҩHP9fDfDAD1@7I} I}f1LvH f.1LVH f.1L6H f.1f1 fHtHHH`HhH HtHHH`HhH4H~LH`hI~HDH~LH`hI~HKI?LLAhMw)I?LHhMw@ADA DADADADA HD DHP1@7H  H{1@7H 1@7H (HH`P@7HH`LH=/X%1H駛H$HHMHeH}H H-H%HJH5UHATIS1)fID$IT$ H)HH9s"HL LIELLHXHIHLLHLCLLP H=CHPH5CHL`MBHpLHuH5CHMH" @LuL5CHDžLDž0Dž@DžhDžxEEELuEHEEHXHPLȠE10LKHS L)HL9K15f.I|$IT$ H)HH9sNHҟHUHuL.15f.I|$IT$ H)HH9sNH%1֟IkfUHAWL={CAVL53AULpATISHHH{P9IuLHF H HpHEH1HQH{L0LpLxMH0H@M@@H5nCH%L0HDž8LPLXL`DžhLXLpDžxH`ϟHHLwHHL3HP1HAL;I1HAI`MXHhLHu|@HHIHt;Q ~HIHuI9Uh;W FHw(HW0LINLHHQLDKPHDžIwLhHƅA98A81A:zLjE11DLCHS L)HL9KßLEI>MNIvHMI0L9MVL9Mu|I^1.I|$IT$ H)HH9Hh@1L~I>RfDA3DDI>2HH=/%1ǟIv@UHAWAVLuAULmATISHHHKIU LH5J3HUME(MH@HuH5CHEELEIt$ML$I<$HMLXM<0L9MT$M9sM2M|$f1ɺB?L`LH5ٴC)p)E)`-LEIt$HMI<$M<0H9X3M\$M9MM|$B?E11DH{HS H)HL9Jf.DžHILHI<$HItqLH也I<$1LwI<$D1LwI<$LHBfDADO I<$SD9D?I<$uLH=(%1_IoIof.DUHAVAULoATSL/HtrIHI;HHw2Hu$AAD$I\$AD[A\A]A^]HtHx7I\$I$ILHL譸M,$H=+ff.H{input_0UHAWAVAH{input_1AUL`ATIEIU0SI]PH H(H{input_2H`HpAE}HDžh ƅyHUHuAE8}H}`HE EH]C}HE EQL`LhHH@HMMt MI>IEDKLcLS B L}HC0LeL MHC Mt MIIM%Lc(B L}HC@LeH HCPLHC@Lt MQIIA7@sPLcHM}`B Lc`I I?MGL9t8㷟M9uAxH=CNc4IAM ODM9ufAK0:@M~fMI|$ͷHLcLLHHHM`I|$蝷HC Lc0LLHHC fDM(I|$eHC@LcPLLHߵHC@Hs(HK@H=u&HHSHL*L+LP@LKL[ HPL= H(HH5s\%H H @H(!L@L@LHDžLLLL0Dž8DžHDžX蚶f.IL9t&I?IwH9뵟I M9uHڵH(Hĸ [A\A]A^A_]H LCHL H(LH H5s% HH @LL@LHDžLDžѵHsHK LH=q*HS(MG0LH H(LL-MGHH5i%HH@H HDžLLDžDž(蛩H;HPLsH5HJ LB HDžXH`H(H5g%HPH @LhHpDžx&HH5LLKLB0H O*LS L{(H(LLBHH5g%HH@HDžLLLLDžDž胨HsHK LPL HS(MC0L3L*H(LPMCHhH5f%HpH@HxHDžXL`LDžLDžয়KHL LS LG0L{ Lk(L5iLLGH(L*H5f%LH@HDžLLLLDžLDž=HHL;LkLw LGH(HH @H5e%LHDžLLDžȦ3HpHsHK L5aLG0HS(L+L*LpLGH(HH5Ke%HH@HHDžxLLDžLDž%LCLL0L=H(MQ H @H5Gd%LHMAL0HDž8L@LPDžX谥H;H@LsH5JLB0H پ*L[ LK(HPH(L@LB HpH5d%HH@HDžHLXL`LhDžxDž xH HSHLHp L@H(HDžHH5c%HH @H LDž蘤H{ LL; MC0LkLs(L !HH(L*H@LH5Gc%MCHDžLLLLDžLDž`H{(HLH5LB0H *L{Lk HH(LLBHH52b%HH@HDžLLLDžDžRHs HK(MM@L3HS@L3LELL[HCHHuMEH(HML=T*H @HUH5Ib%L`HDžhLpLxHELUEL}EE覢L(IVIFIAFI M9 H H=;H H=HIKWsWgWWWWWWW}WxWsWnWiWdW_WZWUWPWKWFWAWHMM<0L9MVM9eMtHILH(I>M~LB?H}IL9tI4$HH=3Ed$LB0LHDžNLL='CLBH LH5CH@DDž(L0Dž8HMNH;HL9LI9vHLk~LH3KHiHLHDžIHL9ee1LWI>fDHtHB贙HH;HSHfHtH|HH;HSHfDHtHDHXH;HSHPfDI>HtHH8H;HSH0fDDQLH53DLIC0HH@L%$CMC1LH59CHHDžDDžLDžHINH;HH9LI9HLK~LH3kHHLHDžIHL9tИHMgL)HMM_Mt$M9=IGI9CMfo5CABtA2M/MwCD%DDq1LH #CIp0M@DDLL%3HLH5CH H@HDžLDžDž(`HMNH;HL9L I9$HL[D~LH3DDCHHL HDžIHL9tMHMgL)HPIMGMt$L9IwI9xfDo wCL@tDxQL@D`LIx0M@H@HDžHH@L53LL !CPBH5CLpDžxLDžꖟHMT$H;HL9LI9HHC~LH3[HHHHDžIHL9tٕHMgL)H MIWMt$I9PII9,MAstI row broM(A@adcafEH MwM?CD'HD~LH3DDcI|$HPHD~LH3DDsI|$H:H~LH3CI~H@A?DA1LLH )C>QfA1LLH CQA1LLH ϊCPHtH HH;HSH fDHtHԒHH;HSHVfDHtH蜒HH;HSHH~LH3{I~HH~LH3cI~H3H~LH3SI|$HHD~HH3DDSI|$H0`HXH;WDD/HH;DDHH;J HH;]@H8H;@7HH;dHH;H=pyBH=dy6H=Xy*IGIHf.UHAWIAVAUATSHH@HH(HHPH 1HH`H@LH1HHA L#1HA$L3IIԾHAH HHH(HLH8LHHHL H@HHLILILIHHxH0HHDžƅHHDžƅLHDžƅLHDžƅL HDž(ƅ0H@HDžHƅPLCMc4MAH`elHscale_biHDžhHHHpH`@as_rfp @uƅ{PHHDžHH1Hƅ L?CMc4MADHH`LhLHP L HLH @HL@HH5ޅCHDžLLDž&HM^HHL9HLHH9HH~LHHHHHDžIHL9t DEmHDHw0LGH@HDžDLL%3HL5CH5ȄCLLLDžLDž鍟HMUHHL9wLLIL9HL~LHHHLHDžIHL9tHLH LHHLHMl$HHL9bLLIL9GHL~LHH7HLHDžIHL9t닟HLH0LHHLHMD$HHL9MLHIL9HL~HHHHLHDžIHL9tLLaHLpHHHDžxIyPLLDžLHHH )HpHH=&L@HHHHLLߤ&LL%J%LMAHH@HH HLLDžDžLDžHeHMML9tЉHHL#HHA$IHHH ΡCH9L8CLELET$H=CIs@LL`L@HH5dCH@LMC0H@LHDžD DžHLPDžXDžhVH@MfH HHL9$HLPHH9 HH0D~LH DD(HH@HPHDžHIH@L9t*[HM]pHDžHHLL}_CL LL H ڙH H5qCL(H(H(H~CLڙHH0H= )L@L`L8L hCLPMEH`H@HuH5J}CHULHHXLhHpDžxL]EEEH}LELMEdH`MnH@HhL9 LLpIL9HHPD~LH@DDHHH`HpHDžhIH`L9t8LHIwMWI?H@I0L9M_L9 MtHILH؄I?I_LH IL9tHHHH9t襅LH`IL9t艅LH@IL9tmLH IL9tQLHIL9t5LHIL9tHHHH9tHHHH9tᄟHHHH9tńLH`IL9t詄LH@IL9t荄H([A\A]A^A_]HA11H ]{C+W^fDHA11H #{CW6fDHA 11H zCVfDHA 11H zCVfDHA11H zCVfDHA 11H [zCcVfDHA"11H HyC;VnfDL`Ibinary_sHDžh LILpL`AAelecAA tƅ}fL`orHDžhLIL`fpƅrd@L`anHDžhLIfpL`A@dƅsL`leHDžhLIL`fpƅr@H`ltHDžhHHH`fpƅr@L`AgeHDžhLIL`fDpƅrZf.L`gtHDžhLIL`fpƅr@L`neHDžhLIfpL`A@qƅsL`eqHDžhLIL`fpƅr@H`DžpatanHHH`HDžhB2ƅuJf.H`ƅtHHH`DžpamaxHDžhfDL`AsuHDžhLIfDpL`AAbƅsDL`poHDžhLIfpL`ACwƅswL`muHDžhLIfpL`A@lƅs/L`moHDžhLIfpL`AFdƅsH`H5l8HH`maHDžhHHfpH`BxƅsL`AdiHDžhLIfDpL`ABvƅs=DL`Hadd_squaAreHDžh LIHpL`fECƅz@L`adHDžhLIfpL`AFdƅsH`alHreciprocHDžh HHHpH`fwƅzVfDL`ƅxIidentityLIL`LpHDžhL`erHDžhLIfpL`ACfƅsH`H55HH`H55HL`ƅtLIL`DžpsqrtHDžhFfDL`siHDžhLIfpL`AFnƅsH`DžprsqrHHH`HDžhBtƅuf.L`neHDžhLIfpL`ABgƅsoL`AloHDžhLIfDpL`AAgƅs%DH`DžpflooHHH`HDžhArƅufH`AexHDžhHHfDpH`GpƅsfDL`coHDžhLIfpL`AFsƅsWH`ƅtHHH`DžpceilHDžhfDH`AabHDžhHHfDpH`FsƅsfDL`AowDžpunknLIL`HDžhfEYAAnƅw~fD1L6I?fDHtHxHhH@HHH`<HtHlxHHH H(H@ HtH1,xHHHHHtHwHHHHHtHwHHHHHD~LH@DDHI~H`fH~LHI}H2DH~LHI|$H@H~HHI|$H[@HD~LH DD(I~H@fA7D1@7I?MfHH&@@7HHDPDHHH dfpHhH@@HH@HtHthpuHHHH;H~LHI~HHHHq,H-HL,H,H1-HE-HY-f.fUHAVAULoATSL/HtrIHIoHHw2Hu$AAD$I\$AD[A\A]A^]HtHxuI\$I$ILHL-tM,$H=rf.UHAVAUHEIATHH LeSHH53L@HPWHMLH@HuH5UpCUHEE9uAAL}CMc MAL-zHEHMA}H5z>u]LșMT$H5șM4L9L]M9MtH<ILsHMLuB1HEHML.șIT$H5șM4H9uDH}I9MtH<I(LrHMLuB1AEHEHMHsH;LKL,L9LSM9wMHtHHHHXrH;LkIB/H}L9tJsHP[A\A]A^]DI1H/H;fDL-JyHEHMA}`L/yA:u]LZǙM\$H5FǙM4L9{HUI9UMtH<I~LqHMLuB1HEHMLƙI|$H5ƙM4H9@fDL-xHEHMA}L/ǙIT$H5ǙM4H9F@L-XxHEHMA}hL/ǙML$H5ǙM4L9qfL-xHEHMA} LƙI|$H5ƙM4H9)L-wHEHMA}L'ƙMT$H5ƙM4L9~L-wHEHMA}LřML$H5řM4L9>L-MwHEHMA}`LřM\$H5řM4L9iAKD1@7H;]fH1HLp-HMDDHMH1HL@-HMYH1HL'-HMAHMHMH'@UHAWI1AVAUATSHHHHL3HIIAHH0HDžHHIHHHHHHlHƅHHDžƅ H0HDž8ƅ@3LxCMc MA@LPLILPmoIprox_tan@hfo|CHPHDž`LXHDžX@f.LPH`H @MH HhM@HI(HpLPH5eCHDžXHpDžxHnEmDL%$3LpLMZ0H@MBLLH52eCDLL-9BLpHDžxDžLDžAnHIL$HHH9LLIL9[HH~LHHKHHHDžIHL9tmHEvDLHw0LLH@HLGH5cCLDHDžDLDžDžmHMeHHL9m HLHH9 HL D~LHDDH HLHDžIHL9tkLHHDžIVƅH!O D)[D/ fEDH@E.ԉAADŃ @A'H fC1L>HHLH=$DLM]PLC$DH5D H.ECHHILHLHHLHDžLDDDHDžDžDžDž`dHMLH@HjHML$HHL9 INL H9 HL~LHH HL HDžIHL9t~iH Lp[HDž(HxLHP`EHH ;H H#`CL@LL (HHLH={JCLXLL0L0Hb@CHPH5leCHpH @HUnLEL@H}LL`LhLxLUH]EEEEhH0ID$H0H8H9 LL@IL9G HH@~LH08H7 H0H@HDž8IH0L9tgL8IwM_I?H0I0L9 MWL9 MtHI LH[fI?I_HMvL9tKgLHpIL9t/gLHPIL9tgLH0IL9tfHHHH9tfLHIL9tfHH[A\A]A^A_]DHPƅhHidentityHHHPH`HDžXfHPelIforward_HDžX HH L`HPfP@ uƅkMDHP Iforward_HDžX HHL`HP@geluƅlHP Iforward_HDžX HHL`HP@reluƅlHPHforward_AoiHDžXHHH`HP@sigmfD@ @dƅoL@HPHHHPEefo%qCHPHDž` HDžX@HP Hforward_HDžX HHH`HP@swis@ hƅmHP Hforward_HDžX HHH`HP@tanhƅlCLPLILP=dfopC@Hrox_tanhHPHDž`HPHDžXfHP IbackwardHDžX HHL`HP@_eluƅlHP IbackwardHDžX HHL`HP@_gel@ uƅm/HP IbackwardHDžX HHL`HP@_rel@ uƅmHPHHHPbfoUoCHPHDž`HDžX@wHPHHHPmbfo oCHPHDž`@sHDžX@HPshHbackwardHDžXHHH`HP@_swifp ƅnf.HP HbackwardHDžX HHH`HP@_tan@ hƅm_HPowDž`unknHHHPHDžXfp@nƅg @H A{x@I{alpha_bLn0LVfD0L F}HDž(ƅ3L@LPAEeta}HHDžH ƅ\`H L(L@ILILMHt HIIHMMl$MT$0It$ B(L@LHHMLMMT$ Lt M&IiIGHHD EL$0HMl$(IT$@B(H@H0HH9tF_LH IL9t*_lL,jCMc,MAf.HtHq]HHHHHtHQ]HHHHM1L6I?fDH~LHI}H'DH~LHI|$H@HtH \HHHHHtH \H8H0H8H0E.AAEEE@A<H ?YC1L/H~LHI|$HC@H~LH08I|$H0@AD@A;H BXC1L@/;HH:A|$]DHM"fDM I}~\ID$ Ml$0HLHZID$ Mv I}>\I$Ml$HLHZI$f.APH WC1Li.d@I?HH@HH@LƅHDžIuH@L;t%I<$H9tZI|$ H9tZLMeZHHL9w M^HD~L9 HLHDDH HLHDžIHL9GZfM $MD$L-s*H I|$ It$(LP@LpIL$@IT$HLL0L8L"L@H@L &LHHH5$HPH @HXL HDž(L`DžhDžxLDžYNfDM$MD$L-HI|$ It$(LP@LIL$@IT$HLLLL r*L@HL&LHH5c$HH @H LHDžDžLDžLDž YnfDI<$It$HPL-7r*IL$ IT$(L@0LLLPLsH`L@LHhH5$HpH@HxHDžXLDžDž[XfDI|$ It$(HH M $M\$LR0LHLBLH]q*HH5$HH@LHDžLLDžHDžWfDM,$H`I|$(H5=LB0ML$M\$ HLpLLp*H@L`LBH5$HLHDžhLxLDžLDžV^fDMl$I $HLLH L@HDžLLH58$HLH @LLDž{VfDI<$It$HL-o*IT$(L@0H MT$ L0LLL@HLHH53$H!H H@HDžLDž(Dž8U.fDHM $M\$LHw LGH @HLL5H5$HDžLLLDžKUfDM,$IL$ HH=wn*IT$(L@0ML$LȩL LH5a$LL@H0H@H8HPLHDžL(L@DžHDžXTfDMl$LH 1M$Iq HMAH @LLHLH5$HDžLDžT~fDI|$IT$(HL-L@0M$MT$ LLLL m*H@HL@LH5%$HHDžLLDžLDžkSfDHI|$ It$(Ll*HJ0M $M\$LHHڧH@H LH(H5($L@LBHDžLLH0Dž8DžHRfDM,$I|$(H@H MIt$@IT$HLP@Lk*LPL-&ML$M\$ LLHhLHpH5N$HxHH @LL@L@HDžHLXL`DžDžDžQ>fDH@HvM $M\$Hw H`LH @H@LGH5u$LLPHDžHLXDžh[QfDIL$HM$L-L@ L0LLH5$L@LH(H @HDžL Dž8P>fDHHtH%OHHHHHHDDI}HtfD DHHf@@7H8H0HH]LH=N]LLH=LHLHMB HH @HDžLMBHHH5QCHDž>HHH@LH@M^L%lUCL-UCL9t>H QH=LHDHLeH `UCHLMNPLXH`HMFLHpHpLxHxH5SCH}LHMH@L@HDžHLPHEL]EELmEE=HHLMHIL9tLAD$6E94$u$It$H!L9;DLd'(ML$ LAA EQ D)D9I LAAaEA D)D9u$LML9DL&LMI L9L}MLAAYEi D)D9TMi LAEEM D)D9MU LAB Az )D9 IM@HA$ Q )D9uL9HUL.&MM`L9BfLYCCEIM LULEEL9LL IHH0HEMH8AHEMH)fDEI!fHULEM)I EIML]IAItkIt>LAD$E94$u$It$H!L9DL,%ML$ LAA AI )D9 I LAA AQ )D9u$LML9@DL$LM)I L9LeMLAAEi D)D9Mi LAEcEM D)D9_IM HA|y )D9zM]@LACES D)D9uL9twHUL#tgMM`L9IHuH}Hh[A\A]A^A_]E91BHuI#qLML9tHUL#LMfDLeA HHH uIIHuHII0HMI8EE)fAAEEEH!fELmLDL)DH H}HHHHtCAD$E\$ LD)D9uL9G DL"4 M|$ AG E97u$HuI#wL9 DL" I AGT E97u$HuI#wL9 DLK" I L9 AGA L)D9uL9 HUL"z Mg MAD$E94$u&HuI#t$L9O HUL!; M|$ AGEW LD)D9uL9 HUL!M|$@AG Aw )LD9uL9HUL@!M|$`L9H-E1HHC@E9q HuI#uL9]HUL IIM HAE9u HuH#qL9HUL  M]@LACiE9u@HuI#sdE91HuI#qLML9tHULJ LMfDL}A IHH uIIHuIII0LUI8EE)fAAEEEL!fELmLDM)DI H}IIAIItBAD$ AT$ L)D9uL9DLdM|$ AGt E97u$HuI#wL9DL+I AGE97u$HuI#wL9DLI L9 AG#EW LD)D9uL9]HULIMg MAD$E94$u&HuI#t$L9HULj M|$ AG AO L)D9uL9HUL)M|$@AG1Aw )LD9uL9HULM|$`L9H)E1HHCo@E9q HuI#uL9]HULIMU LABE9u HuI#rL9HULHIM@HAE9u@HuH#qE9!HuI#qLML9tHULLMfDLuA HIL }MLL}HIH0HUI8EE)fAEEEI!fLE}L)A H EHLUHHt|Ht>AF"E^ DLD)D9uL9DL I AFdE9.u$HuI#vL9bDLOI AFE9.u$HuI#vL9*DLI L9H]LEAFaEn DLD)D9uH9HUHIMn MAE?E] DLD)D9uH9HUHMu AFEF DLD)D9uH9THUH@Mu@AFAN DL)D9uH9HUHMu`L9uL5M&E1IIFfDE9a HuI#vL9]HUL)IMV LAB\E9f eHuI#rL9HULMF@LA@@E9f@bHuI#p8E97HuI#wL99E97HuI#wL9hED$ LD)D9M|$ AGE9t$ HuI#wfDAT$ L)D97M|$ AGTE9t$ {HuI#wQE91"HuI#qf.E91HuI#qf.E99lHuI#q3f.L9MfA ALuEsDI9}fA ALmLuIEA]M#eHLE9>HuI#vf.E9}HuI#ufE99OHuI#qLML9LDLELELMI f.E91{HuI#qLML9DLWLMI JfE91HuI#qLML9DLLMI fE9} 6HuI#v fE9t$@HuI#wE9t$@}HuI#wSE9}@HuI#vfH]L9fA~ AH]HuDIL#cHLfDAw )LD90Aw )LD9Av D)LD93JDEg LD)D9f.Eg LD)D9fEN DLD)D9@E9>HuI#vf.EL$ D)D9@EL$ D)D9@E9.HuI#vf.E94$It$L!afE94$It$H!fHHH魯f.UHSHHHuHH聯HH߾[]f.@Ðff.HG(ÐAWIAVAUATUSHHxH XIH@PHcHHH9L$LL1HH JD%HD$HSKH sHHL$zL$H@ OH9HC(ff(*^f(^CLl$I)MIIEL HLt$(D$ HD$0HD$8HD$@I9L(HD$~D$N$(Ld$@fl)D$0H9l$tLHHHfLd$8D$HHD$PH@ D$XHD$hH;D$HC(HT$ HcLH|$XHt7H|$0Ht(HtHHx[]A\A]A^A_@H9HC(ff(*^f(^CLl$I)MIIEHD$1%H@fDHfd$*^f(^C:Hfl$*^f(^CaH5%/CHIQҢH5.CHIKҢHѢҢH,ҢH$Ңf.SH HHHHH9uH@HH[Ht$HHt$HH@H[fSHƴHH H"HGH$HHL$~L$HHwH9 $) $Xffo $CK H [@HYSHHwHHHTH{[H@AVAUATIUSHHHHHH)HHHH9HHIHII)LH9t LLH{KD5H$VTHD$~D$H{Ll$D$A$~$H,$$AD$PHL[]A\A]A^IE1HuТHТff.ff.f.D0ffDHNSHH=gC0H([HТff.f~HG@GG G0ufHtHUSPH57,CHHТHТAWMAVIHAUATUHSLHHHT$L$Ht$RHD$ H@PHcHD$(HD$0HD$8HHH9xL,LL1J (HHD$(HL$8HL$HL${HL$0E1Ll$ LHLLlHD$JL$Z;A $^AL$un{{H|$(HtHH1[]A\A]A^A_f.MD$@Mp H5*CHH ΢D$MHHHt$H|$E{tT$LHAT$ f(o{AD$(QD$LH:nfAD$011 7΢H4΢ff.@AWAVAUIATIUHSHH(H=dCzH=s^1H_HVMMMDH=4E1H )C1HHPIMLHHLH= Ll$L$$LHHKl=H9HH9QMH= IH+H<$L9tH=x cHHHH)HHHHkH9VHH9' fH= HHDHH([]A\A]A^A_HƀH=HVƀHHHǀ<DJ<;ILLH=x cHH=Y DML1LHm̹H=6 !H}DH= A1HH 'CH&̹,fDfDA$H= H H=u HH>ˢHNˢfAWAVMAUIATIUHSHHHHE\= &ADžtHĸD[]A\A]A^A_fDD{A A AGH= H= K KHD K$K(K,K 0K$4K(8K,<K0@K4DK8HKHLLHCH$<HH$xHH$HHH$hI$H9tH%H$pHH$HzHH$HtH$XHtH$(IHHHsLHkHuHHuADMHH$I9L<$IHD$H=LD$HHH9t LD$LD$H=|gLD$H4$LHMHH$I9L<$IHD$H=&LD$HHH9t uLD$LD$H=LD$H4$LHOH$LHHH$ydH$HIfo$Lfo$fo$Hfo$fo$A,$fo$ fo$0At$fo$@fo$PAT$ A|$0Ad$@A\$PAL$`Al$pA$Ld$ LLLHD$ LHHHH$yxfo\$ H$HfoL$0fol$@ILA$fot$PfoT$`HAL$fo|$pfo$fo$Al$ fo$At$0AT$@A|$PAd$`A\$pA$L$LRTLLHHH$ HH$HCH$I$ H9twHCH$H$pI$H9tQHCH$8H$(I$xH9t+HCH$H$I$0H9tH$HtH$HtH$HtHH$pHH$H]HH$HtH$XHtH$(IHHHsLHkHXHHulH$LHHH$aH$HIfo$Lfo$fo$Hfo$fo$A4$fo$ fo$0AT$fo$@fo$PA|$ Ad$0A\$@AL$PAl$`At$pA$Ld$ L蛎LLHD$ LHHHH$!gfo|$ H$Hfod$0fo\$@ILA<$foL$Pfol$`HAd$fot$pfo$fo$A\$ fo$AL$0Al$@At$PAT$`A|$pA$L$LgLLH`H$HH$HtH$HtH$HtvH$HtdH$HtRH;H$ HCH$ I$ H9t%HCH$X H$H I$ H9tHCH$ H$ I$P H9tHCH$ H$I$ H9tHCH$H$pI$H9tHߖH$pHH$HHH$HtUH$XHtCH$(IHHOHsLHkHHHu*HD$ LHHHH$dfo|$ H$Hfod$0ILfoL$@A<$foT$PHfo|$`fo$Ad$fo$AL$ fod$pfo$AT$0A|$@Ad$PA\$`AL$pA$L$L(LL}HH$HH$Ht(H$HtH$HtH$HtH$HtHޖH$ HCH$ I$ H9tHCH$X H$H I$ H9tHCH$ H$ I$P H9tgHCH$ H$I$ H9tAHCH$H$pI$H9tHTݖH$pHH$HߖHH$HtH$XHtH$(IHHHsL@HkHHHuMH5~CHHKfDfo E1HHǀHHVXƀhfH=5(fo HXHޖǀPHǀ`HfDƀ8fHH?ϕxƀD{DfDfo f11E1E1Hfo չHVX)0fo +E)PfoeflHHHǀǀHHǀƀǀ(f,ƀ.)@ǀ`HǀdƀnfDoƀtǀxHǀ|ǀǀƀH'ܖfDH= ƀHHH͕*D{fo HE1E1HVXfHfDlfo bHHtۖHfo C)0)PfoH1foH͕HǀǀHǀƀǀ(fD,ƀ.)@ǀ`HǀdƀnƀtǀxHǀ|ǀǀƀHH= ƀD{)fMHH$I9L<$IHD$H=>)LD$HXHhH9t LD$LD$H= LD$H4$LXHhLHHz:A= q{ 2HD$ LHHHH$ Zfol$ H$Hfot$0fo|$@ILA,$fod$PfoL$`HAt$foT$pfo$fo$A|$ fo$Ad$0AL$@AT$PA\$`Al$pA$L$L)LLHۖH$HH$HtIH$Ht7H$Ht%H$HtH$HtHזH$ HCH$ I$ H9tHCH$X H$H I$ H9tHCH$ H$ I$P H9tHCH$ H$I$ H9tbHCH$H$pI$H9tԞHEHHHH9tԞHTHHHH–HHCHtӞHHtӞHkXLcHHt HuLSLmHӞLMuH{0HtӞH{HtӞHH߾[]A\A]Ԟf.fSHH Zto~%dt@xuCtrf1[@Pu{uH!0[CtWuH.[fCtXt#uH0[DH/[Hy0[H.[H/[H 0[Hy.[AUATLgUSHHL'L.HnLHt MHjHPAECLHk1ҹH(H5BHt5HKHH)HHGH9LE1H BHH蜤1ҹH5BHFHt5HKHH)HHGH9E1H BHHK1ҹH5]BHHt5HKHH)HHGH9E1H yBHH1ҹH5BHHt5HKHH)HHGH9E1H (BHH詣1ҹH5BHSHt5HKHH)HHGH9hE1H BHHX1ҹH5|BHHt5HKHH)HHGH9/E1H BHH1ҹH51BHHt5HKHH)HHGH9E1H 5BHH趢1ҹH5BH`Ht5HKHH)HHGH9E1H BHHe1ҹ H5BHHt5HK HH)H HGH9E1H BHH1ҹH5XBHHt5HK HH)H HGH9KE1H BBHHáHH[]A\A]DLHfH"H}ϞHkHHLH͞H|H=r ̞HH5rP'H=.'1}ԞHH5ZP'H=.'1eԞHH5BP'H=.'1MԞHH5*P'H=.'15ԞHH5P'H=|.'1ԞHH5O'H=d.'1ԞHH5O'H=L.'1ӞHH5O'H=4.'1ӞHH5O'H=.'1ӞHH5O'H=.'1ӞH=w ȞHAWIAVMAUATUSHHHhAoD$AXHL$HLd$@HsHILHt$HH|$@iŞIm1IHIEHIHHL\$@HHL$HHs0HqE1!Mu~HHtmHs01HHI9u\I9uH;KuHsHLLT$8LD$0LL$(HL$ L\$ƞL\$HL$ LL$(LD$0LT$8uHIHuMHD$8.LLTD$fZ d$KǞYD$LLD$$f8BZHXL$˞LAFD$4T$ZL\$@1^AVIM9tL˞Hh[]A\A]A^A_H{t)H3HHtHHs01HHI9u7I9uHf.ffIMfL\$@XŞH5BHHĞ郊锊H鑊AViAUATIUSHHvI<$0ÞHk1IHHHHt`HIHK0@HHtHHK01HHI9u7I9uIT$H;SuHtHsI<$ĞuHC([]A\A]A^@H=Ғ\Ϟf.fUHAWEAVAAUAATASHHIAI1EfH}HMH))EHHEHH?H9HLM,ʞLMHIAI1II)HM~EHH]fl)EH9tLHLE|ȞLEHLHMɞHËEHELuMEDPEDHELPHEPKH}H IHt&ɞHe[A\A]A^A_]I1NžI黈HÈH@XÐH@\ÐH@`ÐH@dÐH@hÐfDH@pÐfDH@xÐfDHHHfDUSHHf/ Hf/HH8YHHHh{HH9HMHH?H)HHqHHfHHHo HfH9ufoHfsHfHfofsff~H9t&HJH9tHJBH9tHJ BH9tB ,HP9t H1[]H;H[]f11HfDSH H[@dH[@dÐf.HfDHfDH@ÐfDH@ÐfDH@H@H@HfDH@H @H(@H0@H8@H@@HH@HP@HX@H`@Hh@H?HtH`fÐff.H?UHHSHXHHHtHHX[]fDu$u(HHX[]fH@H@H@H@H@H@H@H@H@Hp@Hx@HSHHHHHtMĞHHt<ĞHHt+ĞHHtĞHHt ĞHHtÞHH{PHHHt[vĞfD[ff.SHGH߾[IĞHcHcwy7H=UHIHIHHHHHH11HHHHIHtBHLA"fH Ht(LA1LHI9uI9uD;IuD;Y uHf1Ðff.USHHHHtfDH/žHHuHCH;1H0H>H{HCHCH9tH[]žf.H[]ÐUSHHHHtfDH/`žHHuHCH;1H0H辽H{HCHCH9tH[]žf.H[]fHcHcAy7L HLHHHHHH11HIHHHtKLIMP MMt0MP1LII9uL9uA;xuA;p uI@fUSH|$H|$D$ Ht H@H[]ÿH5+BHH Hf.Hff.H=Hc1HHHHt7H;qtYH Ht'I@D9tCH HtHcA1IHI9tUSP]H5BHH[fDA H@BÐfDBÐfDUAHc1SHH=CHH1HHt6H9qtPH Ht&IA9t;H HtHcA1IHI9t診H5BHH覹_I tBDH[]ÿoH5BHHmzHLzHTz@AUAATAUSHH(Hl$HpzH5H{TuMYCpfZKxf(X]f(^f.fH~HJ HD$D$H([]A\A]@DD]@(fDUHS։HHI9 ILϪJ (HD$HSP1~D$HHLc:LHL$fl赥HL$HHǃHHǃHǃMHI9N,L5HD$~D$ILflIt;Lf(BHHHHHH9uLHHL9t H HLLl$(HǃLHǃHǃHǃHǃHǃHǃHǃHǃLƃl$(Dd$,YHDHHCffD*HP*8Y$YYX]`@Y]h^Y$Lp'kL5 LLule HHy H_ HBH( Hq0 HWGB H=-B H#`1ҾH h1ҾHH1ҾHBHBHp1ҾHLLjHLHHH)HHSBBHBHIH HJ(H  BB`H BhHBpHBxHHBLLHjtDHyHHH)HH B`H *H- LHqhtIH@HHH)HH BHBBPH BXHLiiC H LLHC CDiH8[]A\A]A^A_Dx1Ҿ H,@DH+xfDL耬yH=(HHx8HHxpH5H=HLj&DHhC@H8[]A\A]A^A_@M1fDHHǃHǃE1᜞H5BHIߛjiH5BHI辛h蟜H5йBHI蝛Ti~H5BHI|h]H5BHI[hHfo qHHHڐofoHfs foffofs ffffs fH9ufofoHfsfs HfofoHHH>HH>EH>HH>HH>H=H HHHH}H5BHH|BO}H5˚BHH|IMy}H5BHHw|LOX}H5BHHV|N7}H5hBHH5|N}H5GBHH|gN|H5&BHH{N|H5BHH{M|H5BHH{M|H5ÙBHH{WLq|H5BHHo{*MP|H5BHHN{N/|H5`BHH-{L|H5?BHH {L{H5BHHzZL{H5BHHzMN{H5ܘBHHzL{H5BHH~zK_{H5BHH]z:KH~KH@KHHKHvKH~KHKHKHKHKH*LH2LHfLHnLHLHLHLHLHMH"MHVMH^MAUIATIHUHSHH(EL$PE$HcDEA$E)HcIDXHD0McAI$HOMcHHHIHHHHHKĠAALcCHEwJDHILcCIE<JDL$fHI*IIHcEhLL$fo$LU(LU8LcC$LT$EKDfHIIH*C(^MfI*ɅvLcfKDHIIH*C^M fH*΅LcfJDHIIH*C^MfH*ɅHcfHD1HHHHcstH*^MtzHD7ffLHH*HHLHHH*H^MH([]A\A]bfM_JxH5{BHHHwK)xH5ZBHH'wKxH59BHHw!KwH5BHHvKwH5BHHvJwH5֔BHHvVKwH5BHHv;JcwH5BHHav0JH>JHFJHzJHJHJHJHJHJff.f.HyiHWHHHHGXH9t H |DHIiSHHHHHHCXH9t{H߾h[n|f.@GÐfDSHt1H{ ~H{~H{~C([fOPP9u V9t1;(u;pu;u勷9u)ȉƅHHcLHHHI@XHHxHH)HH0HI;vFQHHcLHHHI@XHHHH)HH8HI;/FQHHcLHHHI@XHHHH)HH@HI9FQHHcLHHHI@XHHHH)HHHHI9YqFQHHcLHHHI@XHHHH)HHPHI9FQHHcLHHHI@XHHHH)HHXHI9FQHHcLHHHI@XHHHH)HH`HI9<tXFHHH4ǍAH HHHFXHHQHHH)HHhHH;GT~'HcȋGHwuHHHH9^HG`HHH9f.SH'ts 1~K~S~C[fATUSHH\sPHHHChHHWHHxHH)HH0HWHHHHHHHCpHH)HH8HWHHHHHHCxHH)HH@HHLcHcLcKTD)MȃHH|X)HLàHHIIHLHIIHHaM7C 'Hc(H EHIH,IHHvHHHHHxxHHxgHB Ht,Hz xVHxk Hx Hx% HB@II)II;I#IuH8yH9H9IHHH)HHH~LsHfo bHHHfDofoHfs foffofs ffffs fH9ufofofoHfsfs HfofHfs ffffs ffH~H9t.H2HBH9t!HrHBH9tHrHBH9tHrIHs HLK5HHH<HH H HHHHx|HHxkHHt/HxTHx Hx HxS HF@HH)HH H HuH8yDH9H9. IHHH)HHHJL# Hfo `HHHfDofoHfs foffofs ffffs fH9ufofofoHfsfs HfofH4fs ffffs ffH~H9t.HHVH9t!HFHVH9tHFHVH9tHFHDC(IHCHH []A\lH5vBHHkBfDHHHChHHWHHxHH)HH0HWHHHHHHCpHH)HH8HHH<  HHH,HH H HHHHx{HHxjHG Ht,H xYHxHx+Hx`HG@HH)HH HHuH8yf.H9 H9fIHHH)HHHJL{ HfoH]HHHfDofoHfs foffofs ffffs fH9ufofofoHfsfs HfofH6 `H5=}BHH _4_H5}BHH^6_H5|BHH^_4_H5|BHH^5_H5|BHH^4g_H5|BHHe^6F_H5w|BHHD^3%_H5V|BHH#^5_H55|BHH^73^H5|BHH]5^H5{BHH]2^H5{BHH]2H2H2H2H2H$3H,3H`3Hh3H3H3H3H3H4H4HP4HX4H4H4H4H4H5H 5f.f.Df.DcfD vcfDHHHwx1HGHHHGXH)pHHHBpHǂ)HǂfDSHfvǃ[ATIUI$@SI$T@HHH9uADŽ$@[]A\ff.9}t@9}jfLc))LLLHIHL)IHHI)H)JHHH9tXH9ufAWIAVAAUIATUHSHHBPLc M>HI9 ID$LH4$}aL1HH\L$D$IEIML9I8HccIxM@I)IMI9BI IIMI)III)II9fA*Y^I9 HBI9tdHcBI9Hf.HcHL9L4 I92Y^L94B 3I9uIMI9HcL9~ LH)MI)HIH9B^ I9@HBB I9tXHcBI9,HfDHcHI9L H9^ L9B I9u i IEPLm^HcHEHEHE $HHH9L,L)_HD$N4(L1~D$LuHflE!ZHI)LuLHt[I $H1HfHffYHH9uHHH9*$YHHH[]A\A]A^A_IML9I8HcMPIpL)HH9IA MIMI)L)IHH9A^ L9 HBI9NHcBH9ZH@HcHH9@H A H9A^ L9 L9uH]1E1fD1E1PfD1IML9I8HcIxMXI)IL9\IL )II,WH5]tBHI*V.DWH57tBHIVE/VH5tBHIUA.VH5sBHIU /VH5sBHIUI.fVH5sBHIdU.>VH5osBHI+IHvIEH)HHFHGHcFGHF GFG HkF(G(H pFPG0H ;FXG8H F`G@H FhGHHFpGPHFxGXHHl$ IAG`HL% HL_wI>FIvIFH)HH FCpHFCxHF FH]F(H %FPH FXH F`H CFhH FpH FxHHDLH!iCxf/CpHSpHCxHHFf.HGHf.HGHf.HGHf.HGHf.HGHf.HGHf.HGHf.HGHf.HGHf.HGHf.HGH)HH[]A\A]A^A_f.I}tWIUIEH)H=veCh]@I>tjIVIFH)H=vxi8PH5imBHH6O*PH5HmBHHO*OH5'mBHHNk*OH5mBHHN*OH5lBHHN*OH5lBHHN*rOH5lBHHpN)QOH5lBHHON*0OH5alBHH.NC)OH5@lBHH N*NH5lBHHM(NH5kBHHM*NH5kBHHMs(NH5kBHHM)jNH5kBHHhM'INH5zkBHHGM$*(NH5YkBHH&M'NH58kBHHMz*MH5kBHHL+'MH5jBHHLj)MH5jBHHL&MH5jBHHL)bMH5jBHH`L[&AMH5rjBHH?L2) MH5QjBHHL&LH50jBHHK)LH5jBHHKu%LH5iBHHKj%Hx%H%H%H%H%H%H,&H4&Hh&Hp&H&H&H&H&H'H$'HX'H`'H'H'H'H'H (H(HH(HP(H(H(fDHHHGHǨHH9uHcHHD7ÐfATL0!UHSH_HGHHèL9uHH(ffH@@HH@H@H@H@H@@H@H@H@H9u[]A\ÐfHcWHHiҨTÐfHGH0!DHH9uH8!H(HH;PtHPHP(H;P0tHP0HHH9uGHÐff.USHW"HcHiD~1HWH[]ÿJH5GgBHHI&IH5&gBHHH&H&H&ff.~HcGHitUSPIH5fBHHH&H&HcHiHD7USP^IH5fBHH\H&H&ff.USHcH(HHHcDx4HHH0![]ÿHH5!fBHHGG&HH5fBHHG<&HJ&HR&AWAVAUATUSHHH|$ HHt$XHT$HHL$8LD$@蛌3HD$0HD$`H@Pt$PHcHD$hHD$pHD$xH HH9HHMH1H,HHD$hHl$xHHl$pD$H|$ 9D$5y{BE1t$(Dt$H\$ DH+D;(DHDHHhHDDHAHHD$HHc HD HHH; HSH;S ft$H*H|$ Yd$_D$(D$(ffL#*pH*t$<$M ID$PLc8MHI9 N4LNLHID$PL1HILc8SGHSHKH)HHtzHEH9HB@H9@HFH $H1HfHfDffYDHH9uHHH9t$YDM HI9 IL}KL1HIFI)LHtWIL$H1HfHfDfYAHH9uHHH9tD$YDAHD$8H8 HpHP1HH)HH9u4AXHH9suA$_HH9rMtL?JHtH2JHt$0HLL9fLc8L|$pHk0Ht$hMMHT$`I)I)III9HL[( DHcMTL9LfH;H<fTfUfVLCHKL)HH9xD$AY^L9HHXI9uH|$0HLL9LI)H)IHHcMtL9CLfH;L % fTfUfVvLSHKL)HH98$AY^H9JHXI9mL|$@Mt@t$H|$ DIc@Hڋ@ HH)I HcHTVpAA*f.HL#@HcMH{HKH)HH9D$H YL9HHXI9uH|$0HLLH)HI9DHcM4LKHKL)HH9$H AYH9HHXI9ufDE11E1CfDH|$0HLL9IH|$`HcLT$hHt$pL)HH9HH ALHH<$L)HH95LD$0A IIML$I)IL9Zf6@HcH9 H AH9A L9Y H^_f(I9ul$(L|$@_l$(MHD$HHl$`HT$0L$f(HLFt$H|$ Ic@Hڋ@H|$XHH)A|HD$(HHH)ILH$A@HtCEt$H|$ ufH|$h*@YD$(HD$pXD$PD$PH9tH1H)HHq@D$1fD$YDHH9uuf.HLL9HK8Hk0Ht$hH|$pHLL$`H)H)HHIH9t ML[(G1ML#HD$HL|$8H$D$PHT$0HߋLLt$@H|$XMtd{D$PHLLDH$HtCH|$hHtCD$PHĈ[]A\A]A^A_f1izHt$8D$PHH$듿->H5^[BHH+=fD>H57[BHH=H{(HcL91H;tHCH+CHH9=H5ZBHH;NtF;NtQ;N t\HHpH9uLH)HHtpHtZHtD1ÐHI9fDHI9DHI9DHI9D19t9tH@9tH@HrHf.H{H kfDH9Ð@H9Ð@AWAVAUATUSHH=f6QB96H 7Hc1HH HHHt1H9ku!2f.HcC1HHH9u 9tHHu@H=5AS H[]A\A]A^A_fH=BVfogBHyhHrH$H)D$HxfoZgBHC)D$ foVgBH;)D$0foNgBH+)D$@foFgB?)D$Pfo?gBH )D$`fo7gBH)D$pfo/gB)$fo/gB)$fo/gB)$5HHH9H xHLd$I$HD$Mc<$1LMHHIHt3HD9xtbHHu fA9tQH HtHcA1HHI9t7AT$DhHLHAH=咘P LjIL;d$t'HВH \@DH=HzH5n6H=3GDHtBHH9wGL$L37L1HF2HH <H=HUH N'0Hf.DH?Hts6f.DUSHHHHtfDH/@6HHuHCH;1H0H1H{HCHCH9tH[]5f.H[]fSHHHxH9tH1H)HH21HHH9tH1[H)HH1@[ff.ATfIUHSHH^H+^HHGHtrHH9wgH5HHL$~D$HH]flEID$It$HH)H9tHHHKf(1HfHDHHH >H9wH HHH9tH IM9tsLL2IEHL)H4Ht$I9t@LH*Mu0L4$~$ImD$AEH[]A\A]A^A_f.L*fDIEHL)H4Ht$I9ufDHHLI}mHH=YB%AVLwAUATIUHSHI9D*D;n sHH_HHH9t*H+HD;h HxHHEHEH[]A\A]A^fHW 1H9tHW'HD;h zH}HHEHDH(tHO 9A I\$HDHCHtHËK A9rHC1HuH@1A9HFHGHHH[]A\A]A^HH1[]A\A]A^fDH1H[]A\A]A^fDIl$Hu~HEHtRHŋM A9rHE1HHT$I9\$H)HT$HދH HDGH@u1A9HFHGHtLH9HO)HH H@I\$HuV@HCHtHËK A9rHC1H@u%1A9HFHGHH1LI9\$tH(HڋH HH1KH1f.DAWAVAUI0ATM}USHHHt$ (Ht$HHD HE(De I9HD;f smMuI9tH<(D;` HxHHI9tqLHHnIE(HH[]A\A]A^A_vMI9u 4H\$D;` bH{HÿDLA9LH&HH[]A\A]A^A_I}(t IE D;` w7MuMuIFHtIAV A9rIF1fDH1fDI]Hu*DHCHHËS A9rHC1LI9H&HދP HA9,HH 1f.1D;c @IM9utLL|&P IHބtI]Hu]DHCHtHËS A9rHC1HބWI9]HwHXf/HdHHXHH  HXXHXH)H1ff.UfSH8f/L$jf/f(\tkbAXiOhHWHHw@HH%L$$Hu$HHRHt;J vHRHuH9t;H s7HT$$H{8HD$HT$(HT$(T$uD$T$fH(@BXYH( s@BHCpYH@PXȃXHHXXXf/XvDf/HHf/tf/HH3XH8[]@HXH(XH(HHXHHHXXHXXf/HCxHf/"D$@(f/vD$@( HHHHHf/ HCxHXHHXf/ HCxHf/D$fDHHXH8[]@D$f/L$ [Hf/ML$ SHRDD$HCx2H5c"BHH0H5B"BHHnHH(XH( SBH{HXf/HhHHXHH  HXXHXHHff.AUBf(AATIUSHH(t _f/ 6BrishH{HHS@HЃt$Hu)DHHHt;w vHHuH9t;p s'HT$H{8HL$HT$HT$ L$@(A|$AX@(tAD$f(HLL$AD$GgfL$HCp*Y;BH@P^;BY ;BYY;B~2HXH#f.XHtUX H([]A\A]ÿH5BHHiH5BHH2HkHJHRfDAUf(ATUSH( $ff/f/ HGpLd$IHLD$ՋpHH5|aL$D$iShHKHHs@H!T$Hu*fDHHIHt;Q vHIHuH9t;P s%HT$H{8HD$HT$LD$H(@HLXH(AEBeHCpHPPH:~ HH$XH([]A\A]ÿH5@BHH H55BHHHHfDAWAAVAUEATEUSHH(Hl$Ht$Dt$`HmH5`HA'txA&A(HC(H\~CHL$HH@DpDhD`HH HHCH([]A\A]A^A_HC(H[DHC(fH[wH5BHHqH55BHHHHHHH>AWAAAVIAUATUSHHh$DD$ DL$D$D$D$uVEuQEDDDADT$D\$O}D\$DT$H$D$H$D$AA AeA+A 2HC8$D$D$o$D$<HOt$l$HTHjHHHUHS HD$UHEpL$H@Pfp1BH*YYXY@@XX@@HY 1B%if(fTf.v3H,ff(-G fUf(H*fTXfVX H[]f0BH*YYYXXƒ4XHX@@X@@H@@X@@@UHS HD$HEpL$H@Pf/BH*YYXY@@XX@@HY S/B%Chf(fTf.v3H,ff(-F fUf(H*fTXfVX H[]f.BH*YYYXXƒ4XHX@@X@@H@@X@@@UHSHD$HEpd$H@P,(Bf.B*HYYYXYXX`@`@HY-B+%ff(fTf.v3H,ff(-XD fUf(H*fTXfVX H[]P'Bf,-BH*YYYYXXÃ0X<XX`@`@HX`@`@USHPHD$-HEpL$H@PfH,BH*YYYXXƒXY +B%df(fTf.v3H,ff(-B fUf(H*fTXfVX H[]f+BH*YYXY@@XX@@H*H5BHH;ڡH@@X@@tX@@X@@yH١fDUSHPHD$MHEpL$H@Pf*BH*YYYXXƒXY *B%cf(fTf.v3H,ff(-@ fUf(H*fTXfVX H[]f)BH*YYXY@@XX@@H*H5 BHHءH@@X@@tX@@X@@yH=ءfDf/ "BrfHGpH@Px9|DHf(^XH~ HH@XfHHcHUSPH5 BHHסHס@UHSHD$HEpT$H@P~`f 'BH*YYXYXH<f'BH*YYYXXt}YW'B%G`f(fTf.v3H,ff(-> fUf(H*fTXfVXH[]X6H*ff.SHHD$xHCpL$H@P~S&BHYXXH/fH&BHYXXt|Y &B%_f(fTf.v3H,ff(-< fUf(H*fTXfVXH[XDH8f.SHHD$8HCpL$H@P~S[%BHYXXH/f%BHYXXt|Y $Bc%]f(fTf.v3H,ff(-; fUf(H*fTXfVXH[XDH8f.AUIATAUSHD$fL$SA*f(Yу pH5#BfIEp#B*MH@PYYÃAXIA f*YYAXA Y u#B%e\f(fTf.v3H,ff(-2: fUf(H*fTXfVXH[]A\A]fIX w:f*YYӃtoXH5H5BHH5ҡH5mBHH*ҡIAXAHҡH#ҡf.SHHD$HCpL$H@P~S "BHYXXH/f!BHYXXY !B%sZf(fTf.v3H,ff(-@8 fUf(H*fTXfVX H[X@H4fDSHHD$註HCpL$H@P~[f( BHXYXXH;fDf(l BHXYXXY 3 BèY ; B%Yf(fTf.v3H,ff(-6 fUf(H*fTXfVX H[X0H$fUHSHD$UHEpL$H@PfpBH*YYXY@@XX@@HY B%Wf(fTf.v3H,ff(-5 fUf(H*fTXfVX H[]fBH*YYYXXƒ4XHX@@X@@H@@X@@@SHHD$訸HCpL$H@P~cf(BHXYXYXH?f.f(dBHXYYXXt|Y +B%Vf(fTf.v3H,ff(-3 fUf(H*fTXfVX H[X4H(fUSHf/B8HD$GHEpL$H@PfbBH*YYYXXY !B%Uf(fTf.v3H,ff(-2 fUf(H*fTXfVX H[]ffBH*YYXYtNXH3H5AHH+ˡHXHˡUSH6HD$轵HEpT$H@PfBH*YYYXXYB'%Sf(fTf.v3H,ff(-T1 fUf(H*fTXfVXH[]f ,BH*YYXYtNXH52H5cAHH0ɡHXHɡUHSHD$5HEpT$H@P~`f TBH*YYXYXH<fBH*YYYXXt}YBG%Qf(fTf.v3H,ff(-t/ fUf(H*fTXfVXH[]X6H*ff.USHf/"B8HD$DzHEpL$H@PfBH*YYYXXY B1%Pf(fTf.v3H,ff(-^. fUf(H*fTXfVX H[]ff4BH*YYXYtNXH3:ޝH5kAHH8ݝơHXHơSHHD$HHCpL$H@P~SkBHYXXH/fBHYXXt|Y Bs%Nf(fTf.v3H,ff(-, fUf(H*fTXfVXH[XDH8f.USHf/RBt~=tHu7HWpHHJP ~HGxYBXH[]fDtbH[]DHWpHHJP1;YBXH[]HGpHPPHDE~HGxHGx뿿۝H5BHHڝġ۝H5AHHڝġHġHġUSHf/BBt~=tHu7HWpHHJP ~HYBXH[]tmH[]DHWpHHJP1CYBXH[]HGpHPPHDE~HH봿ڝH5BHHٝ ġڝH5AHHٝġHġHġ@USH(f/" BiOhHWHHHw@H L$Hu+HHRHt;J vHRHuH9t;H s'HT$H}8HD$HT$HT${D$H(fB*XH(HEpYf(YH@PYӃXHXY3BÚ%#Kf(fTf.v3H,ff(-( fUf(H*fTXfVXH([]HXtNXHU؝H5AHHםi¡HXH\¡@USH(f/B BiOhHWHHHw@H1L$Hu+HHRHt;J vHRHuH9t;H s'HT$H}8HD$HT$HT$蛵D$H(fB*XH(HEpYf(YH@PYӃXHXYSB%CIf(fTf.v3H,ff(-' fUf(H*fTXfVXH([]HXtNXHUםH5?AHH ֝HXH@USH(f/b BiOhHWHHw@HH-L$Hu-fHHRHt;J vHRHuH9t;H s'HT$H{8HD$HT$HT$軳D$H(XH(HCpH@P$HXXYB %kGf(fTf.v3H,ff(-8% fUf(H*fTXfVXH([]H X XHR3՝H5dAHH1ԝHHHfUSH(f/BiOhHWHHw@HH.L$Hu-fHHRHt;J vHRHuH9t;H s'HT$H{8HD$HT$HT$D$H(XH(HCpH@P%HXXY B>%Ef(fTf.v3H,ff(-k# fUf(H*fTXfVXH([]fDH(X(XHOcӝH5AHHaҝPHHHLfUSH(f/BKHt H BHcHD% BHCpHHpP>~HHff(ޓ->D*^ . BYf(fTf.v3H,ff(5! fUf(H*fTXfV^HSHH{@HX  iKh0L$Hu)DHHRHt;J vHRHuH9t;H s/HT$HH{8D$HT$HT$KHSpD$HrPH(XH(HX%(X(HPXHPH0HH0XH([]fD% Bc% SHXX uX~H넿НH5AHHϝНH5AHHϝںXHHٺHạf.SHw@HHH iOhHWH/L$HuDHHRHt;J vHRHuH9;H  B4%AYY Bf(fTf.v3H,ff(-U fUf(H*fTXfVXH(H(HCpH@P$~vH X %t(H(XH [fHT$H{8HD$HT$HT$蟬D$@HXXH [H|ff/xBHGpH@P~SHX~X~wHXfHXXXUSP;ΝH5lAHH9͝隸HHH醸f.&w8LBIcDf*Y$HYY|$%~ HH(X88AAAATA Hĸ[]A\A]A^A_DAzf A^L$xYI {fH@X@w ADYDXD$\YD HAHcH@DD$x@f(D|$f(fEYD*D$t$YY$YAYAYA^|$Xt~DAT$\AYȃAYL AIcLDD-ADl$xDAD^D$xDY$JHH DXDHXXH0XDD$ AHYYY$$YY^\$ '~ HH8X$Yl$$YY$YYu |$XtYH(~ HH@X00fDH=1ϝL=-LKI8Ip;H=&HLŝH=@DXDD&BD fEX0AE0DD$hDYDY*IBPAYEBPY $DXAXB8EBPAB8AXA#AI@YT$ JAt$ YY$$f(YY%3AYY^^@tYYك'-HX88(%@H@XfXH XYHILEBPIBPDXAXB8EBPAB8"HjYT$"AYY$$YY^\$ @tYH'~ HH8X@XH@L@$Yl$A$YY$YY|$XYfDXD fH@H,ff(% fUf(H*fTXfVf~-T~5.*YAt$8f()l$@f(fTf.v3H,ff(=f fUf(H*fTXfV AfND$pL$Y*D$tD$`|$0D$(f.T$\fED*Dl$x\@-ADD$`l$bD5AD$`t$AD$`\$=AD$`|$-pADDl$`l$%PAD$`d$QH5AHHOg0H5aAHH.钧fH57AHHHH5NHȝԺH5RAHHҹ,賺H5AHH豹陥蒺H5AHH萹6qH5AHHoߥPH5AHHNL/H5`AHH-[H5AHH H5AHH븝e̹H5AHHʸz諹H5AHH詸F芹H5AHH舸DiH5AHHgHH5AHHF8HXB8B8HHHHJH鯥H饣H鱣HHH H?HGH{H郤H顤HDHEHŤHͤHH H7H?@HDEDL$0AQDL$0AQRVT$@)RDL$@H8ÐfDHDEDL$0AQDL$0AQRVT$@*RDL$@H8ÐfDHDEDL$0AQDL$0AQRVT$@+RDL$@|H8ÐfDHDEDL$0AQDL$0AQRVT$@,RDL$@t$HD$Pfot$PHG1H $HHHH|$8ǃHǃHǃ0ǃ8Hǃ@ D$8T$0\$(d$ l$|$H|$0H|$(H|$ H|$H|$H|$H$rH$eD$8<$1ǃ$T$ƃ\$ d$0f$ƃfT$ƃf\$f$fd$(oofk{c([8SHKXChosxH`[]A\IAff.AVAUATUSHHH0 fHAf.Hup{HFPIXvDCE  \SYЃLLXs XXXXf(fHHX[HH{XHHq {  HXXHXs HXE1 R HX  XXDC H ~ HH`~ XDSpf(^k A~ f(^fA/vfA(D#Af(~5[Dv fD(^f(fTfD.v:H,ffD(D-7 fDUH*DfETAXf(fAVfE/AA^f(fD(fTfD.v:H,ffD(D fDUfA(H*DfETAXfV^f(^f(fTfD.v3H,ff(= fUf(H*fTXfVD!ƒHf(ff(ffXg XYc(d${ bHpt$f% X\c0YHFPA|$@t3H ~ HHD$YC8AYD$@XAt$ @HXX HX4 f(\SX\CPYYf(^[hXY[`HXf(^KhYK`XHYS`XEff/vGAD$HExAD$Ht$ff/AD$HEx@( @`AD$@p<AD$@H@PAD$HPXID$P8~HAD$H~ HExH@t0D$YC8ff/vAD$H m@tbff/vAD$H3ff/v3AD$H~ HExHf.voooosoco{(os8ocH{XshkxH[]A\A]A^DHHXXHXHHXHHTHBHXH(XH(HPXHPHXXHXHfDC X{ \Sf(YXʃ HXHXHXHPXHPHP(H(fDXHLXXYc(d${ ub%HD{f(f/= DSp^ AfA/tf(fD(#fDLMH~ HHpd$HLXǃ@fud$AnHupDHX^ChYC`X5ff(f(A^fDHXXAD$HAD$AD$AD$HDf(~5RD3A^f(f(fTfD.f(fA(f(?DHExHHExHfHExHHXXXHXXE1f(qf.H,ff(D52 fUf(H*fATXfVfD HXXHXJ({XJ(<HX@HXSXu~H@@pHxpXD$n辏H5AHI輎〡蝏H5vAHI蛎+|H5AHIz̀[H5AHIY門HLLAD$@H@PAD$ HAD$@H HAD$HAD$ HfHHHHXXYc(d$,HHHH(XH( ~UHPXHP t5HXXHXsHHHXHH&HHHhHNHH~H~H~H~Hw~@AWAVAUATUSHH$H fHAf.mC L}pIGPMD HA $XCx-A<$~ M]f(^f(f(fTf.v3H,ff(= fUf(H*fTXfVAHKf(XCx],$^f(f(fTf.yf(AXHB$^Cxf(f(fTf.PAX$X@h@hFxHVxX$At)HA =$YCHAYG@X{ LM<$LǃH@'fAXD$L}pIGPA} f(ȋ0@t-HX \KXYȃHHXQXHHX${{ \b f(\S0Y$@t,H~ HH X \[PYHXX$XEff/vKAM(HExAMAMHA}t4 $YKHff/v AMH ~ HExH4$ff/vEAM HExHhAMHxAMH@t*ff/v AEH~ HExHoooo{ookos(o[8{HkXchsxH[]A\A]A^A_L}pIGPMD AH4$XXp(p(AH$X$X@X@XHPP@Pf.DXKSxf/$YAf(f(fTf.f(HX$^Sxf(fTf.XA %X$QHHXXb \C@Y$fH,f5 fUf(H*fTXfVS@$HXAXXXX$?@HHPH,ff(- fUH*fTXfVf(H,ff(5 fUf(H*fTXfV.H,ff(% fUH*fTXf(fVxHHfDHH:fD$fDHHfD<$Hf(^f(f(fTf.wH,ff(= fUf(H*fTXfV?fDAMAMHAMAMHG较H5AHI輂yu蝃H5AHI蛂u|H5AHIzMu[H5AHIYu$XH<$@(X@(Xf(A {X$wHTHHD$8XHD$H$X@h@h5H$XFhFhAHtHEtH=tH5tH-tf.UHSHH\$ HKH5cH;MtE)H[]fH5YHMtE"H[]H5HL<!EH[]DAWAAVAUAATAUSH8H\$ HHKH5AHLHA,KH5EH}LA tGA]AA tmAf)D$ HD$ HT$(H8[]A\A]A^A_ÐHJH5HJHD$(HD$ fDHJH5HJHeJH5~HfJ~A$EHHD$ ED$(@,fDHJH5ߗHWKHD$(HD$ HD$(HD$ @H߈D$IH5ߗHIT$A t EAtuE`EWVDH6IH5ޗHJAuu}JAhfDHHH5gޗH?JAHHD$ ED$(EtUHD$(@HD$ HD$(HD$ r@E\ESHD$( HD$ @f.A#E@D$( f.ATLcUy7SHcIAHIHHLIIIIcL1IILIIIHL1IHII1III1H^LHHHHtaH0IHn8DH6HtHHn81HHI9u7I9uD;^u;NuD;FuD:N uoFoN(H[]A\OfH[]HHGA\HGHG @LcULcASLػy7MHIHLMIIHcM1IILIIILL1MHII1IIM1L_LIHHHt{H8HH_8 H?Ht`H_81HIH9uOI9u;wuD;Wu;OuD:G uW(f*O ^YY,G(G []fD1[]ÐfHcHcAy7HILLGHHHHHH11HIHHIHtLH8LO H?Ht8LO 1LII9u'L9u;w uD;_uHWHGHT$D$H AHT$D$HcHcAy7HILLGHHHHHH11HIHHIHtDH8LO H?Ht0LO 1LII9uL9u;w uD;_uG@1Ð@AWfAVAUATIUSHH^D$PHGD$Ht^AEE HHtH9k(uD9k$uD9suD9{ uD$8C uIt$I;t$t-oKHNIt$HL[]A\A]A^A_HSLHDlHHLcHD$Pt$0L$HD$HD$XT$,HD$ HcIHDL$(IHDD$MAy7MLH1HcIcHLLD$HHHHHHcT$PH1HLHHHHHHcT$TH1HLHHHHHH1HcL$XHLHHHHHH1AHLHHHHHHH1H1IHHHLLH1HHwHL Ht&HHtHP0H@8HT$D$HHfDHIAHT$D$HH@HHLcHD$Pt$0L$HD$HD$XT$,HD$ HcIHDL$(IHDD$MAy7D$MLH1HcIcHLLD$HHHHHHcT$PH1HLHHHHHHcT$TH1HLHHHHHH1HcL$XHLHHHHHH1AHLHHHHHHH1H1IHHHLLH1HHwHLHt HHtD$@0HH1HHfAWIAVAUATUSHH(LwL'LL)L)HH IH9LHT$Ht$||Ht$HT$HJ(HD$LmoT5L9t1LHfDoHHJH9uHCL)HLl L9t I)LHIFHLpLMzMtL{Hl$~D$Ll$HD$IGD$AH([]A\A]A^A_HH9HuA1HD$0fHIf.DAWAVAUATUSHHL,MI]IIHLJA LC@%DHHtrL@@I1HLHuI9upL9uAF 9C(uҋC$A9FuɋCA9uC A9FuLHsLHL$L $tL $HL$uC A8FuLH[]A\A]A^A_H1[]A\A]A^A_f.DAWHG0AVAUATUSHH(bHHGHGHGG ?HG(HG0HD$(HG HHD$HD$0"wLcL9݆HD$0HC(1H|$@aIRuALl$@HFHD$@HBH0@H@HD$XHAHRHcRHD$pHIRIRH$HI RIRH$HIzVHVH$HH$H H$H H$HH$HH$0H D$HD$`D$x$$$$$$$ D$PD$hDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$($8 )AAH$HHH$`HH$xHH$HH$H H$HHH$HBH$HAH$HH$ H$P$h$$$$$$$$(DŽ$@DŽ$XDŽ$pDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$0%AH$8HH$PHH$hH H$H H$HH$HH$H H$HH$HH$H$@$X$p$$$$$$$DŽ$HDŽ$`DŽ$xDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$ DŽ$(HDŽ$,HH$@H H$XHKH$pHH$HBH$HAH$HH$HH$HH$HH$H H$0H H$4$H$`$x$$$$$$$ DŽ$PDŽ$hDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$($8H$HHH$`HH$xH H$HH$HH$HH$H H$HCRH$ HCH$8H$P$h$$H$$$$$$(DŽ$@DŽ$XDŽ$pDŽ$DŽ$DŽ$HDŽ$KDŽ$DŽ$DŽ$DŽ$DŽ$0$@H$PHBH$hH1H$HH$H4H$HH$HH$HH$HH$HP@H$@HB$X$p$$$$$$$H$4DŽ$HDŽ$`DŽ$xDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$ DŽ$(^HDŽ$,R$HH$XH?H$pH@H$HH$HH$HH$HH$HH$HH$H8H$0H$`$x$$$$$$$ $8H$HH;DŽ$PDŽ$hDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$(DŽ$@$PH$`HH$xHH$HH$HQH$HH$HWH$H2H$ H/H$8H$h$$H$$$$$$($@H$PH-DŽ$XDŽ$pDŽ$DŽ$DŽ$nHDŽ$RDŽ$DŽ$DŽ$DŽ$DŽ$0DŽ$H$XH$hH-H$HH$HH$HH$HH$HH$HH$ HH$@ He$p$$$$$$ $ H$4 $H H$X H=DŽ$`DŽ$xDŽ$DŽ$DŽ$DŽ$DŽ$DŽ$ DŽ$ DŽ$( ~HDŽ$, RDŽ$P $` H$p H H$ HH$ H H$ HH$ H8H$ HH$ HH$0 HNH$ H2H$` HP$x $ $ $ $ $ $ $ $8 H$H H0$P DŽ$h DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$( DŽ$@ DŽ$X $h H$ HH$ HH$ HH$ HH$ HTH$ H H$8 HyH$P HH$x HP@H$h H$ $ H$ $ $ $ $ $( $@ $X DŽ$p DŽ$ DŽ$ DŽ$ ZHDŽ$ RDŽ$ DŽ$ DŽ$ DŽ$ DŽ$0 DŽ$H DŽ$` $p H$ HH$ HH$ HH$ HH$ H2H$ HL$@ IH$ H@@L$X I$ $ $ $ $ $ $ H$4 $H $` L$p IDŽ$x DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$( HDŽ$, RDŽ$P DŽ$h $x L$ IL$ IL$ IL$ IǠL$ IL$H L$` I$ $ $ $ $ L$ $ L$ $ L$0 IBV$8 $P $h L$x DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$ DŽ$( DŽ$@ DŽ$X DŽ$p $ L$ IL$ L$ IIIªL$ IVL$L$ ICV$ H$ $ $ $ $$(L$8IV$@L$PIEV$XL$hI.$pL$I-DŽ$ DŽ$ DŽ$ HDŽ$ RDŽ$ DŽ$ DŽ$DŽ$DŽ$0DŽ$HDŽ$`DŽ$x$L$IjL$I6L$I L$I@L$I?L$I=$$$$$$H$4L$@I $HL$XI $`L$pI?$xL$I DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$ DŽ$(PHDŽ$,VDŽ$PDŽ$hDŽ$$L$IL$8IL$PINL$hIL$IL$I4H$$$$$$($@$X$p$DŽ$DŽ$fHDŽ$VDŽ$DŽ$DŽ$DŽ$DŽ$0DŽ$HDŽ$`DŽ$xDŽ$$L$I5L$IYL$IL$IL$I($$$$$H$4L$@I)$HL$XI$`L$pI$xL$I$L$I DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$ DŽ$(HDŽ$,VDŽ$PDŽ$hDŽ$DŽ$$ȍAL$IaL$I4L$InL$I4L$0I6L$HI9$$$$L$I`@$ $8$PL$`I$hL$xIH$L$I>$DŽ$DŽ$DŽ$DŽ$DŽ$DŽ$(DŽ$@DŽ$XDŽ$pDŽ$DŽ$DŽ$L$IFL$IL$ILL$IL$ I-L$8IYL$PIJL$$$$$$($@$XL$hI $pL$I6$L$I6$HDŽ$VDŽ$DŽ$DŽ$DŽ$DŽ$0DŽ$HDŽ$`DŽ$xDŽ$DŽ$L$I1L$IÆL$I~L$IL$I-L$@I.L$XI$$$$$H$4$H$`L$pI$xL$I$L$IF$DŽ$DŽ$DŽ$DŽ$DŽ$ DŽ$(HDŽ$,VDŽ$PDŽ$hDŽ$DŽ$DŽ$L$-AIFL$IL$IL$IL$IL$0IL$HI$$$$$ $8$PL$`I$hL$xI£$L$I$DŽ$DŽ$DŽ$DŽ$DŽ$(DŽ$@DŽ$XDŽ$pDŽ$DŽ$DŽ$HDŽ$VH$L$L$L$PIÞL$I H$$$L$$$L$ IY$(H$8He$@$XL$hICY$pL$IY$L$I$$DŽ$DŽ$DŽ$DŽ$DŽ$0DŽ$HDŽ$`DŽ$xDŽ$DŽ$DŽ$L$IBYL$IEYL$I,L$I'L$@I7L$XI L$pI>L$I>L$I9$$$$H$4$H$`$x$$L$I $DŽ$DŽ$DŽ$DŽ$ DŽ$(HDŽ$,YDŽ$PDŽ$hDŽ$DŽ$DŽ$DŽ$L$I L$I L$I?L$I L$0IL$HIL$0"I?L$H"I=L$`"I L$x"I L$"I=$ "$8"$P"$h"$"$"H$"L$"I $"L$"I<$"L$"I$"L$#I=$#DŽ$("DŽ$@"DŽ$X"DŽ$p"DŽ$"DŽ$"DŽ$"THDŽ$"ZDŽ$"DŽ$"DŽ$#DŽ$#L$ #IKL$8#IL$P#IFL$h#IL$#IGL$#IL$#I L$#I2L$#IL$#IL$$I$(#$@#$X#$p#$#$#$#$#$#$$$$DŽ$0#DŽ$H#DŽ$`#DŽ$x#DŽ$#DŽ$#DŽ$#DŽ$#DŽ$#DŽ$$DŽ$ $L$@$IL$X$I>L$p$IL$$INL$$IL$$IL$$IL$$I3L$%IL$%I4H$4$$H$$`$$x$$$$$$$$$$$$%$ %DŽ$($iHDŽ$,$ZDŽ$P$DŽ$h$DŽ$$DŽ$$DŽ$$DŽ$$DŽ$$DŽ$$DŽ$%DŽ$(%L$0%IL$H%IL$`%I)L$x%I)L$%I)L$%IL$%IL$%IL$&IL$ &I$8%$P%$h%$%$%H$%$%$%$%$&$(&DŽ$@%DŽ$X%DŽ$p%DŽ$%DŽ$%DŽ$%wHDŽ$%ZDŽ$%DŽ$%DŽ$&DŽ$&DŽ$0&L$8&IL$P&IL$h&IL$&IfL$&I:L$&I9L$&IiL$&I6L$&I9L$'I$@&$X&$p&$&$&$&$&$&$'$'DŽ$H&DŽ$`&DŽ$x&DŽ$&DŽ$&DŽ$&DŽ$&DŽ$&DŽ$'DŽ$ 'DŽ$('HDŽ$,'ZL$4'L$@'I L$X'ImL$p'IFL$'IL$'IL$'IL$'I&L$'IL$(IAL$(I6$H'$`'$x'$'$'$'$'$'$($ (L$0(I7$8(DŽ$P'DŽ$h'DŽ$'DŽ$'DŽ$'DŽ$'DŽ$'DŽ$'DŽ$(DŽ$((DŽ$@(L$H(I1L$`(IƆL$x(I~L$(IL$(I.L$(I.L$(IL$)IL$ )I$P($h($($(H$($($($($)$()L$8)IQ$@)DŽ$X(DŽ$p(DŽ$(DŽ$(DŽ$(HDŽ$(ZDŽ$(DŽ$(DŽ$)DŽ$)DŽ$0)DŽ$H)L$P)IQL$h)IL$)IL$)LeuAL$)I L$)I@@L$)IL$)I$X)$p)$)$)$)$)$)L$*IZL$*I$*L$4*I ZL$@*IDŽ$`)DŽ$x)DŽ$)DŽ$)DŽ$)DŽ$)DŽ$)DŽ$*DŽ$ *DŽ$(*HDŽ$,*Z$H*L$X*IL$*I L$p*IL$*IL$*IL$*IƒL$H+I$`*$x*$*$*$*$*L$*I$*L$+I$+L$+IŠ$ +L$0+I$8+DŽ$P*DŽ$h*DŽ$*DŽ$*DŽ$*DŽ$*DŽ$*DŽ$*DŽ$+DŽ$(+DŽ$@+$P+L$`+L$x+IL$+L$,IL$ ,L$8,I$h+$+L$+IBd$+H$+L$+ICd$+L$+IDd$+$+$,$(,$@,L$P,IdDŽ$X+DŽ$p+DŽ$+DŽ$+DŽ$+HDŽ$+ZDŽ$+DŽ$+DŽ$,DŽ$,DŽ$0,DŽ$H,$X,L$h,IdL$,IL$,IL$,I.L$,IjL$,I:$p,$,$,$,$,$,L$,I $-L$-I $-H$4-L$@-I<$H-L$X-I8DŽ$`,DŽ$x,DŽ$,DŽ$,DŽ$,DŽ$,DŽ$,DŽ$-DŽ$ -DŽ$(-HDŽ$,-dDŽ$P-$`-L$p-IL$-I L$-I L$-I L$-I?L$-I L$.IL$/IL$/IL$/IL$/IL$/I4L$0I4L$@0I4L$X0IL$p0I$/$/$/$/$/$0$0H$40$H0$`0DŽ$x/DŽ$/DŽ$/DŽ$/DŽ$/DŽ$/DŽ$0DŽ$ 0DŽ$(0HDŽ$,0dDŽ$P0DŽ$h0$x0L$0I*L$0I*L$0I*L$0IL$0IL$1IL$1IL$01IL$H1IL$`1I$0$0$0$0$0$1$ 1$81$P1$h1L$x1IeDŽ$0DŽ$0DŽ$0DŽ$0DŽ$0DŽ$0DŽ$1DŽ$(1DŽ$@1DŽ$X1DŽ$p1$1L$1I9L$1I;L$1IuL$1IL$:IL$0:IL$H:I$9$9$:$ :$8:$P:L$`:I$h:L$x:I4$:L$:I4$:H$:L$:I4DŽ$9DŽ$9DŽ$9DŽ$:DŽ$(:DŽ$@:DŽ$X:DŽ$p:DŽ$:DŽ$:DŽ$:HDŽ$:e$:L$:IL$:IL$;I)L$ ;I)L$8;I)L$P;IL$h;IL$;I L$;IaL$;ImL$;I4$:$:$;$(;$@;$X;$p;$;$;$;DŽ$:DŽ$:DŽ$;DŽ$;DŽ$0;DŽ$H;DŽ$`;DŽ$x;DŽ$;DŽ$;DŽ$;$;L$;I4L$;I9L$<IL$@<I@L$X<I L$p<I L$<I L$<ImL$<IFL$<I$;$<$<L$4<$H<$`<$x<$<$<$<DŽ$;DŽ$;DŽ$<DŽ$ <DŽ$(<HHDŽ$,<eDŽ$P<DŽ$h<DŽ$<DŽ$<DŽ$<DŽ$<$<L$<ILL$=IL$=I-L$0=IL$H=IAL$`=IƆL$x=I7L$=I7L$=IDžL$=I}$<$=$ =$8=$P=$h=$=$=H$=$=DŽ$<DŽ$<DŽ$=DŽ$(=DŽ$@=DŽ$X=DŽ$p=DŽ$=DŽ$=DŽ$=bHDŽ$=eDŽ$=$=L$=IL$>IL$ >I.L$8>I.L$P>IL$h>IL$>IL$>IJL$>IJL$>I$=$>$(>$@>$X>$p>$>$>$>$>L$>IDŽ$=DŽ$>DŽ$>DŽ$0>DŽ$H>DŽ$`>DŽ$x>DŽ$>DŽ$>DŽ$>DŽ$>$>L$>IL$?IL$X?I$?$?H$4?L$@?I$H?$`?H$p?$x?L$?$?L$?$?L$?$?L$?IBf$?H$?DŽ$>DŽ$?DŽ$ ?DŽ$(?HDŽ$,?eDŽ$P?DŽ$h?DŽ$?DŽ$?DŽ$?DŽ$?DŽ$?$?L$@IÞL$`@I L$@IDfL$H@IL$x@ICfL$0@IfL$@IfL$@IL$@IL$@I0$@$ @$8@$P@$h@$@$@H$@$@$@DŽ$?DŽ$@DŽ$(@DŽ$@@DŽ$X@DŽ$p@DŽ$@DŽ$@DŽ$@HDŽ$@eDŽ$@DŽ$@$@L$AIpL$ AIkL$8AIL$PAI L$hAI=L$AIL$CIL$CIN$ C$8C$PC$hC$C$CH$C$C$C$CL$DIDŽ$CDŽ$(CDŽ$@CDŽ$XCDŽ$pCDŽ$CDŽ$CDŽ$CjHDŽ$CfDŽ$CDŽ$CDŽ$D$DL$ DIL$8DIL$PDI3L$hDIÆL$DI4L$DIL$DIL$DI)L$DI)$(D$@D$XD$pD$D$D$D$D$DL$DI)$EL$EIDŽ$DDŽ$0DDŽ$HDDŽ$`DDŽ$xDDŽ$DDŽ$DDŽ$DDŽ$DDŽ$DDŽ$E$EL$@EIL$XEIL$pEIL$EIL$EIL$EIL$EIfL$EI;H$4E$HE$`E$xE$E$E$E$E$EL$FI;$FL$FIuDŽ$ EDŽ$(ExHDŽ$,EfDŽ$PEDŽ$hEDŽ$EDŽ$EDŽ$EDŽ$EDŽ$EDŽ$EDŽ$F$ FL$0FI;L$HFI1L$`FIL$xFI-L$FI?L$FIL$FIL$FI $8F$PF$hF$F$FH$F$F$F$FL$GI<$GL$ GI:DŽ$(FDŽ$@FDŽ$XFDŽ$pFDŽ$FDŽ$FDŽ$FIHDŽ$FfDŽ$FDŽ$FDŽ$GDŽ$G$(GL$8GIFL$PGIL$hGILL$GIL$GI-L$GIL$GIAL$GIÆ$@G$XG$pG$G$G$G$G$GL$GI7$HL$HI7$HDŽ$0GDŽ$HGDŽ$`GDŽ$xGDŽ$GDŽ$GDŽ$GDŽ$GDŽ$GDŽ$HDŽ$ HDŽ$(HbHDŽ$,HfL$@HIƅL$XHI}L$pHIL$HIL$HI.L$HI.L$HIL$HIH$4H$HH$`H$xH$H$H$H$H$HL$II$$IL$II$ IL$0IIDŽ$PHDŽ$hHDŽ$HDŽ$HDŽ$HDŽ$HDŽ$HDŽ$HDŽ$IDŽ$(I$8IL$HIIL$`IIL$xIIbL$IIL$xLI>L$LI9L$LI L$LI L$LI L$MI?$hL$L$LH$L$L$L$L$ML$ MI $(ML$8MI<$@ML$PMIDŽ$XLDŽ$pLDŽ$LDŽ$LDŽ$LMHDŽ$LgDŽ$LDŽ$LDŽ$MDŽ$MDŽ$0MDŽ$HM$XML$hMI=L$MIKL$MIL$MIIL$MIL$MIHL$MI $pM$M$M$M$M$M$NL$NI $NH$4NL$@NI5$HNL$XNIDŽ$`MDŽ$xMDŽ$MDŽ$MDŽ$MDŽ$MDŽ$MDŽ$NDŽ$ NDŽ$(NcHDŽ$,NgDŽ$PN$`NL$pNIL$NIL$NIL$NI>L$NIL$NINL$OI$xN$N$N$N$N$N$OL$OI$ OL$0OI4$8OL$HOI4$POL$`OIDŽ$hNDŽ$NDŽ$NDŽ$NDŽ$NDŽ$NDŽ$NDŽ$ODŽ$(ODŽ$@ODŽ$XO$hOL$xOIL$OIL$OI*L$OI*L$OI*L$PI$O$OH$O$O$O$O$PL$ PI$(PL$8PI$@PL$PPI$XPL$hPIDŽ$pODŽ$ODŽ$ODŽ$OvHDŽ$OgDŽ$ODŽ$ODŽ$PDŽ$PDŽ$0PDŽ$HPDŽ$`P$pPL$PIL$PIL$PIeL$PI9L$PI:L$PIt$P$P$P$P$P$QL$QI;$QH$4QL$@QI0$HQL$XQI$`QL$pQIDŽ$xPDŽ$PDŽ$PDŽ$PDŽ$PDŽ$PDŽ$QDŽ$ QDŽ$(QHDŽ$,QgDŽ$PQDŽ$hQ$xQL$QI L$QIL$QIL$QIL$QI L$RI"A$`$$$$$Ƅ$DŽ$(DŽ$8DŽ$@Ƅ$DDŽ$X DŽ$hDŽ$pƄ$tDŽ$@DŽ$DŽ$Ƅ$DŽ$@DŽ$DŽ$Ƅ$DŽ$DŽ$$$8fo%!A$ $P$h$$$$$DŽ$Ƅ$DŽ$ DŽ$(DŽ$0Ƅ$4DŽ$H@DŽ$XDŽ$`Ƅ$dDŽ$x DŽ$DŽ$Ƅ$DŽ$@DŽ$DŽ$Ƅ$DŽ$ DŽ$DŽ$Ƅ$$fo% A$$($@$X$p$$$$$DŽ$@DŽ$DŽ$  Ƅ$$DŽ$8DŽ$HDŽ$P Ƅ$TDŽ$h DŽ$xDŽ$Ƅ$DŽ$DŽ$DŽ$Ƅ$DŽ$ DŽ$DŽ$ Ƅ$DŽ$$fo%A$$H$xfo%A$0$`$$$$DŽ$DŽ$ Ƅ$DŽ$(DŽ$8DŽ$@Ƅ$DDŽ$X DŽ$hDŽ$pƄ$tDŽ$@DŽ$DŽ$Ƅ$DŽ$@DŽ$DŽ$Ƅ$DŽ$$$$8fo%A$ $P$h$$$$$DŽ$DŽ$Ƅ$DŽ$ DŽ$(DŽ$0Ƅ$4DŽ$H@DŽ$XDŽ$`Ƅ$dDŽ$x DŽ$DŽ$Ƅ$DŽ$@DŽ$DŽ$Ƅ$DŽ$ DŽ$DŽ$$fo%[A$$($@$X$p$$$$Ƅ$DŽ$@DŽ$DŽ$  Ƅ$$DŽ$8DŽ$HDŽ$P Ƅ$TDŽ$h DŽ$xDŽ$Ƅ$DŽ$DŽ$DŽ$Ƅ$DŽ$ DŽ$DŽ$ Ƅ$$$ fo%1A$ $H $x fo% A$0 $` $ $ $ $ DŽ$DŽ$ DŽ$ Ƅ$ DŽ$( DŽ$8 DŽ$@ Ƅ$D DŽ$X DŽ$h DŽ$p Ƅ$t DŽ$ @DŽ$ DŽ$ Ƅ$ DŽ$ @DŽ$ DŽ$ Ƅ$ DŽ$ $ $8 fo% A$ $ $P $h $ $ $ $ $ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$( DŽ$0 Ƅ$4 DŽ$H @DŽ$X DŽ$` Ƅ$d DŽ$x DŽ$ DŽ$ Ƅ$ DŽ$ @DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$ $ fo%A$ $( $@ $X $p $ $ $ $ DŽ$ Ƅ$ DŽ$ @DŽ$ DŽ$ Ƅ$$ DŽ$8 DŽ$H DŽ$P Ƅ$T DŽ$h DŽ$x DŽ$ Ƅ$ DŽ$ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$ DŽ$ Ƅ$ $0 foA$ $H $x foA$ $ $` $ $ $ DŽ$ DŽ$ DŽ$ Ƅ$ DŽ$( DŽ$8 DŽ$@ Ƅ$D DŽ$X DŽ$h DŽ$p Ƅ$t DŽ$ @DŽ$ DŽ$ Ƅ$ DŽ$ @DŽ$ DŽ$ Ƅ$ $ $ $8 foA$ $ $P $h $ $ $ $ DŽ$ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$( DŽ$0 Ƅ$4 DŽ$H @DŽ$X DŽ$` Ƅ$d DŽ$x DŽ$ DŽ$ Ƅ$ DŽ$ @DŽ$ DŽ$ Ƅ$ DŽ$ $ H;LcDŽ$ DŽ$ Ƅ$ $ DŽ$@$DŽ$ܜHCHCH3HD$HD$8HCHD$f.IcU IcEy7HLCHIHIHHHHHAEH1IcmD$'HHIHHHHHH1HHHHHHHH11HH,$IHIH,HHHy8 H HHy81HII9usH9<$uD9quD;QuD;YuD$':A u1II)I0H$ I9MtLH8ߜHHuH([]A\A]A^A_fDMfAouI$MI$fAo}At$fAou A|$At$(IHC(HSLHsH|$HD$8;HքtHT$HfH$1HsH,H$IF8HH(Ht!HIH3H.L0HCAHCIH3LsIHtH@81HsL4HD$H.@ޜfAo}fAou IHxfAo}p(x fHT$0HHPeHSHyˠˠHdˠfAWHG0IAVH AUATUSHSHGHGHGHG?HGHGHD$HD$HڜIH<$H9)bHD$HIG( `AD$hHFH%AHD$lIHI H$HI H$HHHKH LD$PIH RIHt$XIId$xH$H$$H$H$$L$H$H$$ H$0H$8D$`DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$(DŽ$@- AH$LH$HH$HL$L$I$XH$hH$p$H$H$$H$H$$H$H$,$8Ƅ$HDŽ$`DŽ$xƄ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$(DŽ$@L$HH$PH$d$pL$H$H$$L$H$H$$L$H$H$ $L$(H$0DŽ$XƄ$`DŽ$xDŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$ DŽ$8Ƅ$@H$D$PH$`H$hH$|$H$H$H$$H$H$H$$H$H$H$$$0L$@H$HDŽ$XDŽ$pƄ$xDŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$ DŽ$8DŽ$PH$\L$xI H$H$H$H$hH$$L$H$$L$H$$H$ H$(H$<H R$HƄ$XDŽ$pDŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$0Ƅ$8DŽ$PH$X- ADAH$tHH$`D$L$H$H$$L$H$H$$L$H$H$$(L$8H$@DŽ$hƄ$pDŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$0DŽ$H Ƅ$P AH$T$`L$pH$xH$$L$H$H$$L$H$H$$L$H$ H$4$@DŽ$hDŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$( Ƅ$0DŽ$HH$PH$XH$l$xH$H$H$$H$H$H$$H$H$H$$ L$0H$8H$LDŽ$`Ƅ$hDŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$(DŽ$@Ƅ$H$XL$hH$pH$$L$H$H$$L$H$H$$ L$ H$ H$, $8 L$H H$P DŽ$`DŽ$xƄ$DŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$ DŽ$ Ƅ$( DŽ$@ DŽ$X Ƅ$` D%QAH$d H$ H$ HD$p L$ H$ $ L$ H$ $ H$ H$ H$ $ H$( H$0 H$D $P DŽ$x DŽ$ Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$8 Ƅ$@ DŽ$X H$` AH$h H$| $ H$ H$ H$ $ H$ H$ H$ $ H$ H$ H$$ $0 H$@ H$H DŽ$p Ƅ$x DŽ$ DŽ$ @Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$8 DŽ$P Ƅ$X H$\ 5ADAH$x D AH$ $h H$ D$ H$ H$ H$ $ H$ H$ H$ D$ H$ H$( H$< $H DŽ$p DŽ$ @Ƅ$ DŽ$ DŽ$ @Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$0 Ƅ$8 DŽ$P H$X H$` H$t $ H$ H$ H$ $ H$ H$ H$ $ H$ H$ H$ $( H$8 H$@ DŽ$h Ƅ$p DŽ$ DŽ$ Ƅ$ DŽ$ DŽ$ @Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$0 DŽ$H Ƅ$P H$T $` H$p H$x H$ $ H$ H$ H$ $ H$ H$ H$ $H$H$ H$4H VD$@H$PH$XDŽ$h DŽ$ Ƅ$ DŽ$ DŽ$ @Ƅ$ DŽ$ DŽ$ @Ƅ$ DŽ$DŽ$(Ƅ$0DŽ$HDŽ$`DAH$lHD$xL$H$H$$L$H$H$$L$H$H$$ L$0H$8H$L$XƄ$hDŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$(DŽ$@ Ƅ$HDŽ$`L$hH$pH$$L$H$H$$L$H$H$$L$H$H$,$8H$HH$PDŽ$xƄ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$  Ƅ$(DŽ$@DŽ$XƄ$`H$d$pH$H$H$$H$H$H$$H$H$H$ $L$(H$0H$D$PL$`H$hDŽ$xDŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$ DŽ$8Ƅ$@DŽ$XDŽ$pH$|$L$H$H$$L$H$H$$L$H$H$$$0L$@H$HH$\$hƄ$xDŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$DŽ$Ƅ$ DŽ$8DŽ$PƄ$XDŽ$pL$xH$H$HH$$L$H$$H$H$H$$H$ H$(H$<$HH$XH$`H$tDŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$0 Ƅ$8DŽ$PDŽ$h Ƅ$p$H$H$H$$H$H$H$$H$H$H$$(H$8H$@H$T$`H$pH$xDŽ$DŽ$@Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$0DŽ$H Ƅ$PDŽ$hDŽ$@Ƅ$H$$H$H$H$$H$H$H$$H$H$ H$4$@H$PH$XH$l$xH$DŽ$DŽ$@Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$(Ƅ$0DŽ$HDŽ$` Ƅ$hDŽ$H$H$$H$H$H$$H$H$H$$ H$0H$8H$L$XH$hH$pH$$DŽ$ Ƅ$DŽ$DŽ$@Ƅ$DŽ$DŽ$Ƅ$DŽ$(DŽ$@ Ƅ$HDŽ$`DŽ$x Ƅ$DŽ$H$H$H$,H YH$dHH$H$$H$H$$H$H$$8H$HH$PD$pL$H$DŽ$@Ƅ$DŽ$DŽ$@Ƅ$DŽ$DŽ$ Ƅ$(DŽ$@DŽ$XƄ$`DŽ$xDŽ$Ƅ$H$$L$H$H$$L$H$H$ $L$(H$0H$D$PL$`H$hH$|$L$H$DŽ$DŽ$Ƅ$DŽ$DŽ$Ƅ$DŽ$ DŽ$8 Ƅ$@DŽ$XDŽ$pƄ$xDŽ$DŽ$H$$L$H$H$$L$H$H$$$0H$@H$HH$\$hH$xH$H$$Ƅ$DŽ$DŽ$Ƅ$DŽ$DŽ$ Ƅ$ DŽ$8DŽ$PƄ$XDŽ$pDŽ$Ƅ$DŽ$H$H$H$$H$H$H$$L$ H$(H$<$HL$XH$`H$t$L$H$H$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$DŽ$0Ƅ$8DŽ$PDŽ$hƄ$pDŽ$DŽ$Ƅ$$L$H$H$$L$H$H$$(L$8H$@H$T$`L$pH$xH$$L$H$DŽ$DŽ$ Ƅ$DŽ$DŽ$Ƅ$DŽ$0DŽ$HƄ$PDŽ$hDŽ$Ƅ$DŽ$DŽ$Ƅ$H$H$H$H$H$$H$H$ H$4$@H$PH$XH$l$xH$H$H$$H$DŽ$DŽ$Ƅ$DŽ$DŽ$( Ƅ$0DŽ$HDŽ$` Ƅ$hDŽ$DŽ$@Ƅ$DŽ$H$H$$H$H$H$$ H$0H$8H$L$XH$hH$pH$$H$H$H$$DŽ$Ƅ$DŽ$DŽ$ Ƅ$DŽ$(DŽ$@ Ƅ$HDŽ$`DŽ$x@Ƅ$DŽ$DŽ$@Ƅ$DŽ$H$H$H$$H$H$H$,$8H$HH$PH$d$pH$H$H$$H$H$DŽ$Ƅ$DŽ$DŽ$ Ƅ$(DŽ$@DŽ$X Ƅ$`DŽ$xDŽ$ Ƅ$DŽ$DŽ$@Ƅ$H$$H$H$H$ $H$(H$0H$D$PH$`H$hH$|$H$H$H$$H$H$DŽ$DŽ$Ƅ$DŽ$ DŽ$8 Ƅ$@DŽ$XDŽ$p Ƅ$xDŽ$DŽ$@Ƅ$DŽ$DŽ$@H$H$$ H$H$ H$ $0 L$@ H$H H$\ $h L$x H$ H$ $ L$ H$ H$ $ Ƅ$DŽ$ DŽ$ Ƅ$ DŽ$8 DŽ$P Ƅ$X DŽ$p DŽ$ Ƅ$ DŽ$ DŽ$ Ƅ$ DŽ$ L$ H$ H$!$!L$ !H$(!H$H$>H$>$(>L$8>H$@>H$T>$`>L$p>H$x>H$>$>DŽ$=Ƅ$=DŽ$=DŽ$=Ƅ$=DŽ$=DŽ$> Ƅ$>DŽ$0>DŽ$H>Ƅ$P>DŽ$h>DŽ$>Ƅ$>DŽ$>H$>H$>HL$>H$>D$>L$>H$>$?H$?H$ ?H$4?$@?H$P?H$X?H$l?$x?H$?H$?DŽ$>Ƅ$>DŽ$>DŽ$>Ƅ$>DŽ$?DŽ$(?Ƅ$0?DŽ$H?DŽ$`? Ƅ$h?DŽ$?DŽ$? Ƅ$?H$?$?H$?H$?H$?$?H$?H$@H$@$ @H$0@H$8@H$L@$X@H$h@H$p@H$@$@H$@H$@DŽ$?DŽ$?@Ƅ$?DŽ$?DŽ$@@Ƅ$@DŽ$(@DŽ$@@Ƅ$H@DŽ$`@DŽ$x@Ƅ$@DŽ$@DŽ$@ H$@H$@H$,AH$dAH$AH g$@H$@H$@$AH$AH$A$8AH$HAH$PA$pAH$AH$A$AƄ$@DŽ$@DŽ$@ Ƅ$@DŽ$ADŽ$ A@Ƅ$(ADŽ$@ADŽ$XA@Ƅ$`ADŽ$xADŽ$AƄ$ADŽ$AH$AH$AHH$AD$AL$AH$AH$ B$BL$(BH$0BH$DB$PBL$`BH$hBH$|B$BL$BH$BH$BDŽ$AƄ$ADŽ$ADŽ$BƄ$BDŽ$ BDŽ$8BƄ$@BDŽ$XBDŽ$pBƄ$xBDŽ$BDŽ$B Ƅ$B$BL$BH$BH$B$BL$CH$CH$$C$0CL$@CH$HCH$\C$hCL$xCH$CH$C$CH$CH$CDŽ$BDŽ$BƄ$BDŽ$CDŽ$CƄ$ CDŽ$8CDŽ$PCƄ$XCDŽ$pCDŽ$C Ƅ$CDŽ$CDŽ$CƄ$CH$C$CH$CH$CH$D$DH$ DH$(DH$xHH>xHH>xI9D HƹqHB(Hr0H9HcPHfffHfDoI[ f5} II@HILIHH8%HxHHBHxHH3HxHH$HH Ht0Hx HyHy-Hy2HH@MI)II4I I*fDI9/LH)LHLZL%LHfAoHHHofoHfs fDoffDofAs fDfAffs fAH9ufDofDoLfAsfAs HfAofAoH fs fffAofAffs ffH~L9t.HLYM9t!HQLYM9tHQLYM9tHQfH*PH//f/]P+f*HPPY(\ZXYg XoH9Hc1HXfH5Ӄ@HHevHH(I9;qfH5@HHoeVcf.HH0I9ƐHH8I9붐H9xHH9xHH9xI9D HHHI9H[]ÐHTHI9d$eH5@HHdsbfeH5@HHddKb>eH5o@HH_HQ_HI_f.fH fDATIULSH^PHGVHA|$HuRH{t:ڮ@YCHE HEHECfH*ZC[]A\@Ŀ,aH5]~@HH*`^H^f.f.D0ffDAULHATILUHnSHHHHLLHHLHLHLOHL[]A\A]ÐfDATLUHLSH2L0 Lx Hst1HHP HHH LS =XHZ[]A\fDHPLL.HH#OH[]A\Ðf.AVL0 AULnLATL(UHLSHLRLLL$HHN[H]A\A]A^Ðff.UHSHH\$ H$)H5H%)ݬ@t H[]fH(H5H(@u΋H(H5BH(ft@AUATUSHHHHH@PHIHcHGHGHGHHH9H,HcH1L,(HCHLk^HLkI$I$HH)HH9tYI$I$ A1"f.XHH9vuEt_HH9wHH[]A\A]@1E1h]H5z@HH\I[H\HR[AWIAVIֺI AUATUSHHH|$H@ H H|$`HHT$@D$@HD$HHD$P2LLD$0HL$8LHLMF Ins@Ld$,LD$LMn&H52L'LD$I틃fۍHH*݃ VH5@ff-z@*A*f(MŃ(fYZYfI*Y^D$hYD$8 ffLD$*s@YZYY^L$`YL$0L$%H5SL 'L$D$t@HD$HX f/' f/ |^^HĈX[]A\A]A^A_DKK(IngHcfMF HD HHKK$H*D$0YHcfIDHHH*D$8+DfL*st$豒L$fL*{Y|$L$jL$ffYD$I*V f.^~ 5f(f(fTf.w`Yf.L,fI*N^f(fTf.wqYStIFH,HcHDHHHIsH,ffD(D fUf(H*DfETAXfVcH,ff(5C fUH*fTXfVf(WYH5v@HHXW`YH5v@HH^XX?YH5v@HH=XWYH5v@HHXEWXH5.v@HHWWXH5 v@HHWWXH5u@HHWVXH5u@HHWVHVHVHVHVHWHWHMWHUWfAWAVAUATIԺUHSHHHf({@H$L$D$@ʧH|$ HHfA\$0fAd$@$LX LP )\$@)d$PߨHMLt$`LHLt$`t$`t$`t$Xt$Xt$X wH` H$LH@pLHHL$hXL$xƦ ^f(\f/ʉ@r(f/r"PHĈ[]A\A]A^A_ÿVH5't@HHUVHVfDAUATIUHSHL H8HL$ HT$HD$4LD$(HHD$ |LHD$(pD$LD$ ffL fHX H*UA*D$ZHHcE(HT$YfH*Y $趍 $T$fW HP@^f(H( ^\U@f/( D$( wEHff/vyHE HEfHcU(HH*ȋ `H΢@f*Y]s@ZY^f(] MH^f(] o(o8HoHooXoohoxoopoooooo0@P` o o o o0 o@  oP  o` o  op  o  o  o  o  o 8 o H o( X h x    $t p  H8[]A\A]ÿRH5ip@HHQRH*Rff.AWAVAUATUSHDL$  HIAL5@HA@BfҀL$ Zf ]p@*Y,N}  EtAfA)K*߃ eEf%o@A* AAYYYf*ȃ EfA*YYX,ȅDDH[]A\A]A^A_f}RJACE=9*# fDE@A*Y,9LD= A9ȋ}DANϙfDJPH5n@HHOUP{PH5m@HHyOjPZPH5m@HHXOO9PH5jm@HH7O>PPH5Im@HHOoOOH5um@HHNdOHrOHzOHOHOHOHOAVLAULIATLUHnLSHHHHPHHLHPLHLHHLLLLHP\HHLHPFLHLHH`HBHHH,HL!>[L]A\A]A^Ð@AUIATLfUHSHHHHLHLHHLHHL=HL[]A\A]fDAUHgATUSHH(HH@8H9HoLHHL:HL*LHHL HLHHH=H$HfHHD$HHD$D$HHD$HD$HHtRH|$HtRHHH$HfHHD$HHD$D$HHD$HD$HHt@RH|$Ht1RHH&H$H fHHD$H HD$D$H(HD$HD$H0HtQH|$HtQHH+H@HH9NLL/HsL0 Lx HPLLHHx;H$H@fH8HD$H@HD$D$HHHD$HD$HPHtQH|$HtQu>H([]A\A]HH HHHP PL(XZ`HHoH$H@PHcHD$HD$HD$H1HH9(L$LPL1N, HHD$Ll$KHHHLl$HH)HH9tTHHA1XHH9vuEt_HH9wLh H8HHL_LR_L:\H|$HOH([]A\A]@HHHjHH1E1HIH5(g@HHH2JH@JHOJATIUSHHuHL8HL[]A\fHcHtSHD(HHHHtTHh D$^L$H{_fH*Ym낿1IH5bf@HH/HIHIfUHSHHuHH@8HH[]fDHSHh D$"^L$H{H_HfH*Yl땋u~@USP\HH5e@HHZGHH Iff.@UHAWIAVMAUIATISHH(HuH7LMH<HLAoH)MHAG4A$I$HAG|AG@AGlID$fLHA sHMLLLH`MLLL#HMLLLKHMLLLHPMLLL H(MLLLL}?LMLLHuL=Hy@H H5!@fffPH5y@ff(fPHѕ PPjHx@H( H5~@fffPHx@ff(fPH~ PPj轧Hnx@H(b H0 5{~@fffPHx@ff(fPH+ PPjjHx@H( Hx 5(~@fffPHHD$N< L1~D$HL$fl)$9HHD$@H|$8L$HH)HH9tRH|$0@1$f.AXDHH9s u@tAE_HH9rHt=fHHDŽ$ L|$P$(L$HDŽ$8H|$GzH|$HcgHD$L|$PHL$LHHHD$ HL$HcLHL$HcLHL$HL$yHt$LHL$Ht$LHL$L$Ht$HLqH)Ht$LHYHcLHGHcLH5HHt$LHHcLH HHt$LHD$(HHH$(Ht*@HH  H5*@HH  H5)@HH p H5)@HH eHsH{HHHHH'H/fAWMAVIAUATUHLSHHHT$L$n{s@L$H5kL?WL$o[ T$f(=>@HT$D$(HD$ @[H|$@HT$ HD$ \HMLfAg0fAo@HLD$H^D$ D$H)d$h)l$xAwHAw@Aw8Aw0t$xt$xt$xHT$H*H@LLH` *;LLHHI $T$Y$X$^f(\f/x=@f/PHĨ[]A\A]A^A_fDs@L$LmH5fjLnt2~<$|$=Y <$f(k@<$5Y |$f(4$F H5N'@HH Hff.AVIAUIATMUHSHMLLH|HHHHXVLHHȲ[]A\A]A^HAUATUSHHHTHHH@HtH HtHHtrHHtaH HtPH-9H HEH H H9t&HEH Hx H H9tHEH@ H0 HP H9t HEHHH H9t HEHHHH9t HHHHH.HHCHtl HHt[ HkXLcHHt HuL+LmH6 LMuH{0Ht H{HtH[]A\A] H[]A\A]DAUATUSHHHHHH@Ht H Ht HHt HHt H Ht H-iH HEH H H9tV HEH Hx H H9t3 HEH@ H0 HP H9t HEHHH H9t HEHHHH9t HHHHH^HHCHt HHt HkXLcHHt HuL*LmHf LMuH{0HtP H{HtB HH߾`[]A\A] f.U1HoSHHHHHHHHHxHfH*1HH@fHH[]HHH*Z)@HƒfHH H*X릐ff.ATUSHHPHHHHWfH* ~T Zf(H\^HfH*HHLfH*HHfH@@P5E=@fHH`@fLcRHL$ $j^Zf(\^f_f(fHXH0HHfH*1HLTH@fLHHH*Z;(HH$H HH$H9t HP[]A\HуfHH H*XfHfHH H*XQfHƒfHH H*XfHƒfHH H*XfHL f.HpHH`SfH*ATUSH`HxH)fH*^H] KR  $H)EfH*^Hl$HHR ffH@@5*;@fHLcH`@f(]Q f(\$PHQ RPPjD$0dHpH0HHfH*1HLFQ f/T$f/$HH$ H HHD$H9tH`[]A\fHfHH H*XfHfHH H*X_fHƒfHH H*XfHfHH H*X\ff(Lo%3f.f(LO%HC HhHATUSH`HxH9UffHffH*HvfH*^H] P  $HfH*^Hl$HHO ffH@@58@HLcH`@f(f(]O \$PHO RPPjD$0aHhH0HHfH*1HL -MO f/l$!f/,$.HH$ H HHD$H9tH`[]A\fHH)ffH*HHуfHH H*XHHƒfHH H*XufDHfHH H*XfHƒfHH H*XSfHffHH H*XfDf(L"ff(L"HfATfIfH@@UfIl$H`@SHP M 56@HHPf(f(f(RHHL$ $j_I$pH0Hx~fH*1ɺHHI$@fHHHH*!HH$H HH$H9tHP[]A\fHƒfHH H*XmHf.UfHfH@@SfH`@HX L 55@HHPf(f(f(RHHL$ $j^HhH0HHxOfH*H}1HXHH$H HH$H9tHX[]fDHfHH H*XH#ff.UfHfH@@SfH`@HX K 54@HHPf(f(f(RHHL$ $j]H1HH H0HHHxNfH*H}1H=HH$H HH$H9tHX[]HƒfHH H*XH;@UfffH@@SHH`@HX tJ 53@HHPHf(f(Rf(HL$ $j\H0H{HH1H HHxLfH*fɾHH$H HH$H9t}HX[]HƒfHH H*XDH1HH HHHx$fH*1Hef.HƒfHH H*XHff.HhHuxfH*HfɾSHƒfHH H*XА@UHoSHHH@H8HfH*HH8HfH*HdHHHH8HHxsfH*HRHHH2HHvHHHH[]fDHƒfHH H*XHf.HƒfHH H*XxfHƒfHH H*X!fSH1HHHHHx/fH* ^G H{H[HƒfHH H*X뿐ff.USHHHHHwHv HHH[]HHoH(HfH*fɾHHH(HHHH&fH*fɾHHHHfH*H[HHHfH*H HHHxQfH*HsHHHHDHfH*XHƒfHH H*XDHfH*XYHfH*XHfH*XfUHoSHHH@H8HxfH*HH8HHfH*HHHH2HHvHHHH[]HƒfHH €H*XqHH@H8Hx.fH*GHƒfHH H*XSfHƒfHH H*X fUHoSHHu=HPH`fH9wH)1H(HfH*HH@H8HfH*HH@tOH8Hx"fH*HH[]fDHƒfHH H*XDH8HxCfH*HH[]HƒfHH H*XFfHƒfHH H*XDHƒfHHH H*X f.S1HHHH1HHHxCfH* JB H{gHHHH)HH[f.HƒfHH H*XD1HtH?H?HcH)Ð@HATUSHLcHPHH. A YHffH5*@fffH@@f(H`@QVHL$ $jSH(H0HHHHfH*1HL?H(HHHHH`fH*1HLzHH HHHHHCHH$H$H9tH6HzH HHHHfH*LZ HHHfH*LHH7fH*LyHP[]A\DHff(H5(@ff(f(H@@fH`@PRHL$ $jQH(H0HHfH*1ɺHLH(HHHHfH*1ɺHLLfDHfH*XHfH*XkHfHH H*Xf.HfH*XnHfH*X1HfH*XHfH*X&H1HYfAWAVAUATUHSHH(HH9fH*HHfH*^ fO H(ZT.v,,f(-= U*TXV(/nT H,HHHEHD91HIHfH*HfH*YLkL^_ '=  $HHP8HHPHH|$0HHHHHD1HH\fH*HD$0HHT$@Ht$8II)LHH9^DŽ$H$HDŽ$HDŽ$HDŽ$H9HH9LNHHD$@Ht$8HL$~D$IIL$flI))$H9HLfHH$H@P$(DŽ$HDŽ$ HDŽ$8H9H1HHHHHHfH*1LH@fLHHH*ZHHH@`vHHHPXHH@`HH|$PHHHHHD1HHufH*HT$P_: HHD$`Ht$XII)LHH9 MMfI*f(^4$t$^f(YDŽ$@H$HHDŽ$PHDŽ$XHDŽ$`HqHH9TLHHD$`Ht$XHL$~D$IIL$`flI))$PH9/fLfH$H$XDŽ$hHDŽ$p$xHDŽ$DŽ$DŽ$HDŽ$)$HDŽ$DŽ$HDŽ$$HDŽ$HH3H9H@H8HfH*LH8H!fH*LHHHH8HHfH*LHHH2HHvHHHL$HLHHH}HD1HH fH*L$_7 MiH$L$L9q IGP^D$Lc0YM*HI9YILIH$L1L$J0LHL$ LL$HD$HL$ LL$ILH)HHtwIPH9HQ@I9@HVH $H1HfHffYAHH9uHHH9t$YAL|$~D$LD$H$DŽ$D$$~D$fl$Ht)H$fDŽ$)$)$HtH$HtHD$AAD$HHH9PH8H@HxfH*LEH8HHfH*LHHH2HHvHHHHHPXH|$pHHHHHD1HH fH*HD$p_5 H HL$xL$L9 E1^D$YH$H@PD$E1Lc(HDŽ$HDŽ$HDŽ$MtsHI9ILHD$ HL$xN4(1~D$ L$LHHL$(flLL$ )$L$lHL$(LL$ ILL$H)HHt{HAI9I@@H9@Z HFHL  $H1HfHffYAHH9uHHH9t$YAHfDŽ$HHDŽ$$HDŽ$(PpH$HHHH-HD1HH; fH*H$_ 3 HL$L$M9!A1^D$YAH$8H@PD$0E1Lc(HDŽ$@HDŽ$HHDŽ$PMtlHI9ILHD$ N<(L1~D$ L$HL$PL$flLD$ )$@_LD$ HLL$HL)HHt{IvH9Hq@I9@@ HrHs  $H1HfHfDfAfYHH9uHHH9t$AYHfDŽ$XHHDŽ$`$hHDŽ$xPxH$H HHH HD1HHS fH*H$_1 H: L$L$M9B AMt$1E1^D$YAEH$H@P$Lc0HDŽ$HDŽ$HDŽ$MtlHI9 ILwHD$N0L1~D$HL$LD$L$flL$)$RLD$HLL$L)HHtxIuH9Hq@I9@@ HrH  $H1HfHfADfYHH9uHHH9t$AYDHfDŽ$HHDŽ$$HDŽ$PXHHP`HHPXHHP@HHHHPhH$HHHH HD1HH9fH*H$_. H[ L$L$M9) AML$E1^D$YAEH$H@P$1Lc0HDŽ$HDŽ$HDŽ$MtlHI9 IL=HD$N0L1~D$HL$LD$L$flL$)$ߛLD$HLL$L)HHt~HqI9Iu@H9@@HrH $H1HfHfADfYHH9uHHH9t$AYDfHDŽ$L$$L$HDŽ$HDŽ$贒HH$HL$L$=HL$L$HH$@L$L$H>HH$HL$L$ʣHL$L$rHH$0HL$L$苣HL$L$3L$HHL$LQHL$L$HHL'HߑH{LMfI*XH$MHt1H$HtH$Ht H$HtH$HtH$HtH$hHtH$@HtH$HtH$HtH$Ht}H|$xHtnH$Ht\H$HtJH$xHt8H$PHt&H|$XHtH$(HtH$HtߛH|$8HtߛH([]A\A]A^A_fL$fM)$HLNHfD\@ H,H?NfHƒfHH H*XCfL$`fM)$PHLHfDD$AAD$H賠HH$HL$L$茠HL$L$4~HƒfHH H*Xf.HƒfHH H*XfHfHH H*XHOHfHH H*X:HƒfHH H*XfHƒfHH H*XvfLLfHH H*XHƒfHH H*Xf.HƒfHH H*XfHƒfHH H*XfHƒfHH H*XfLAfHL H*XHƒfHH €H*XxLRH@H8HxNfH*NHƒfHH H*XZfHƒfHH H*XfHƒfHH H*XfH|fDH3fD1fD$YAHH9uf.1fD$AYHH9uf.1fD$AYDHH9uf1fD$AYDHH9ufHƒfHH H*XfHƒfHH H*X%fHƒfHH H*XfHD$E1$HfD1fD$YAHH9um՛H5?HHԛߟw՛H5?HHuԛV՛H5?HHTԛ45՛H5f?HH3ԛ՛H5E?HHԛԛH5$?HHӛ7ԛH5?HHӛԛH5?HHӛ6ԛH5?HHӛNoԛH5?HHmӛcNԛH5?HHLӛd-ԛH5^?HH+ӛD ԛH5=?HH ӛӛH5?HHқ%ӛH5?HHқӛH5?HHқߟӛH5?HHқ\gӛH5?HHeқ<ݟFӛH5w?HHDқ1ݟћћћћћћӛH58?HHқmߟқH5?HHћܟқH5?HHћAߟyћHYݟHܟHܟHݟHܟޟ)ޟHAݟHݟHݟHܟHޟޟݟHޟHL$ܟHݟH>ޟHYޟHܟHݟHݟݟݟܟHݟHݟHޟHޟHݟHݟH1ܟHݟHܟH-ݟff.H1HHH HHx$fH* H酴DHƒfHH H*Xʐ@AWAVAUATIUSHHxHH)fH*HHfH*^[i fi H(ZT.v,,f(- U*TXV(/6 x H,HHHHD91HHD$HfH*HfH*YHkH^_  L$bHHP8HHPHH$HDŽ$%HfHDŽ$H@PHDŽ$$HDŽ$H91HHH1HHHr fH*  HHHHH)HHHHH@`v0HHH iHBXH9$HhHHB`HH|$0HHuiHHH9HH1HHHfH*  HLHHHHH9H8H@HfH*HH8HHfH*HzHHH2HHvHHHHL-HBXL9fHhHt#fH*fɾHZHHRpHHPxHHBXL9HhHt#fH*fɾH HHR`HHBXL9HhHt#fH*fɾHǴHHR@HHHHPhH|$PHHH|$pHt$HD$pDŽ$\5 t$HH$H@PHcHDŽ$HDŽ$HDŽ$H^HH9H,HћHD$ L,(H1~D$ HL$fl)$̛HHD$xH$L$H)HHtyHxH9HyAH9@AH~HL$H1HfH@ffYHH9uHHH9tD$YfLDŽ$HDŽ$$HDŽ$(GHLt$0H2MTIFPHc(HHH9kHHZЛIH1Hj˛MD-Hl$HHT$@Ht$8II)LHtyHFI9IE@H9@HAHL$H1HfHffYADHH9uHHH9tD$YADM9 HD$H2 fH*^D$MD$(HD$0AYEDŽ$0H$8HDŽ$@HDŽ$HHDŽ$PAEHtL%ϛHT$@Ht$8HII)HL$ ~D$ IL$Pfl)$@H9tLHLD$ ֛LD$ HLf1DŽ$XH$HHDŽ$`$hHDŽ$xDŽ$L$HDŽ$HDŽ$HDŽ$Ht HH9>H|$>ΛHHT$LH$H,H$̛L|$PfH$DŽ$HDŽ$$HDŽ$MIGPHc(HE HH9HH͛IHH1țI<.Hl$ HHD$`Ht$XHH)HL$H IFH9HFI9^ HAHP L$H1HfHf.ffYAHH9uHHH9tD$YAI9*D$(AYDŽ$HD$PH|$HDŽ$HDŽ$H$HDŽ$A̛HHD$`Ht$XII)HL$HT$~D$HflH$)$H9tLHLD$~ӛLD$HLf1DŽ$H$HDŽ$$HDŽ$DŽ$ L$(HDŽ$0HDŽ$8HDŽ$@Ht HH9 H|$ ˛HHT$ LH$0L$ H,H$@ʛH$0LHfHD$H$H$H$8H$DŽ$HHDŽ$P$XHDŽ$hHD$UHH$0LH$HT$L$ H$HD$H$LL$ HD$H$zL$ HLH$LHD$H$ȋH$HLH$HHD$衋tHH$LH$yLH$)zH$HLHOLzH$XHtɛH$0HtsɛH$HtaɛH$HtOɛLGɛH$Ht5ɛH$Ht#ɛH$hHtɛH$@HtțLțH{NHD$HH(fH*XH$A $HtțH$HtțH|$xHtțH|$XHtțH|$8HttțH$HtbțH$HtPțHx[]A\A]A^A_fD\X) H,H?vHƒfHH H*XyfM} IFPHc0HHH9% L<L$ț1HLI4ÛLK|=HHT$8HL$@H)IItxHBI9IEAH9AI@HL$L1HfHffYADHH9uLHL9tD$YADI9UH|$%fH*D$^D$1D$ AYEDŽ$L$HDŽ$HDŽ$HDŽ$AEHtHH9 LƛHN4?LLH$L$WśL|$PfL$DŽ$HDŽ$$HDŽ$MIGPHcHHH9_HHHD$JƛHT$H1IXHD$HI<HHD$XHT$`H)HHtvMFL9L@AM9AE;LFI-L$HHfHf(fYA.HH9uHHH9tD$YAL9D$ 1DŽ$ AYL$(HDŽ$0HDŽ$8HDŽ$@AHt HH9<H|$(śHHT$LH$0L$ H,H$@ÛHfLH$H$8H$DŽ$HHDŽ$P$XHDŽ$hLL$ H$tH$HLL$ H輅tHH$LL$ 蔅LL$ DtL$ HLLjL"tH$XHtÛH$0HtÛLÛH$HttÛH$H__fDD$Y(A.HH9ufHƒfHH H*XfHƒfHH H*XfHfHH H*XHaHfHH H*XLHƒfHH H*XfHƒfHH €H*XHH8H@HfH*@HƒfHH H*Xf.1E1fDHǃfHH H*XfHL$fHȃHH H*XDHƒfHH H*XNf.HofDHfDHfDHifDHfDfH*fɾHУHH@`@1fDD$Y01HH9ulf.HƒfHH H*XfHƒfHH H*XfHƒfHH H*XfHƒfHH H*X:fE1E11HD$E1E1`@HD$E11]DHD$ E11DHfDHZfD1fDD$YADHI9uv1fDD$YADHH9u~1fDD$YAHH9D$uHƒfHH H*XfI9D$(AY1DŽ$HT$PLD$H$A蹹H5?HH跸Cȟ蘹H5?HH薸IǟLrH5?HHpƟQH5?HHOYȟ0H5a?HH.ƟH5@?HH ǟH5?HH췛Ɵ͸H5?HH˷ǟ謸H5?HH誷Ɵ苸H5?HH艷ȟ?:50+&!şHşH+ƟH3ƟHşHƟHƟHƟHkǟHzǟHşƟHH$0HD$GƟHşHH$0H$HD$H$HD$\ǟHKǟHH$0HD$H$HD$ƟH}şHH$1ǟƟHǟşHğHşHğff.UHAWIHAVMAUIATISHHx%HHfHffHffHIcG4HIGpHhHHIGhHIcGHIcG HH?PHQ? PH 0P@P`pfPHǃHǃj5? f(H0fAh GH9@f?* Y/ % ?H,AHh uf*Y/ H,H Ah Wf* Y/  H,H(Ah 9f*Y/h H,H0EFEFEFIcV AMcUHLMcALh~hHhLL׈hLxL9rH1IHHƺL9IGHHDHHLHIHL8`ID01H1HH@HH1HHLHxTH1LHH1HH8HHL(L1MHH=HBE1HHHπAH1IHPLLI1IH`H0HIIH@HXHtHCIHH9 H)L1HH)I9HFL)I9HCHhHffD fffH)H9иL5F?HFHf(LH?HpPHI?PH PPj0ooLH0ooooooxoooo(o8oH oX0oh@P`pELM9 HHMHhH9aHhHt HuHLH $ ^f/r1f/r#d$HP[]A\A]A^^^f(XÿH5E?HHYH5q?HH"ҧH5P?HHЦ-H;HCHKfAWAVAUIHATLIUHSLHhH HD$Lt$PHD$ L$@ H^L$pfc0LH fk@HL)d$0^)l$@T$HILt$PLHLt$Pt$Pt$Pt$Ht$Ht$HEH@LLI$x  D$XXD$h^D$\f/?r4= f/r&A$A$H[]A\A]A^A_ÿ8H5i?HH6ٷH緟AVfIAUATIUHSHL0 H0*F(HL$ HD$HT$LD$(HD$ HD$(f*F$LLD$LD$ H,fHcEhfA*T$fZEI*fYЅNHHU(HH4HHH}(H}0HM0xzH}8HM8xoH}@HM@xdHMHHt,H}HxSHyHyHyHJ@HH)HH@H(HuH9y @H9H9HHH)H0HHHH9Hfo^ HHH@o](foHfs foffofs ffffs fH9ufofofoHfsfs HfofHfs ffffs ffH~H9t.HHJH9t!HBHJH9tHBHJH9tHBfH*YLT$$$T$$$A$^ ^\zAD$f*A$ |H?fAt$@Hl$*Y?HZY$lH5Hl<$oooooHoo oH?ho(oxo8opXoo0H`o@oPopoooooooo( o80oH@oXPoh`oxooH0[]A\A]A^AD$fDI$ <$Y=5?<$H9HH9HHMPHMXHM``fDHTHhΟH5?HH̞ᱟ譟H5޼?HH諞ֱ茟H5?HH芞SkH5?HHiHHVH^H钱H隱@AUIHATLfUHHXSHLH3HXLLHHH/HH[]A\A]ÐAWIAVIAULnATLUHLSHLH=LLLLfHHԍHH[]A\A]A^A_fUHHHSHHvH8H6jHH苍HH[]ÐUHAWIAVIAUMATSHHhHuHHULEHMH fHHAAIFHǃHIHǃHǃHHǃHǃHǃHǃP@HEHuHPHMMHPHXH0LHHLH@R2L}LmL@HLuHUMMLLdMLeMLHLLddH8MLLL@H%H1 ǃ ?5G?fffff(fHH81Hf H?PH-?PH PPjH?H( HX5?fffPH?ff(fPH PPjHr?H(f H5?fffPH?ff(fPH/ PPjnH?H( H5,?fffPH@?ff(fPH PPjH0H0 LL5IE1LLHx EGH L{AIcEȃHIǠ HDHHHEHE@P_ HEHHHH}HEHuHHEHDH HFHHEHH9"HLLHELL)HH9EH}A(L HIHEHL9mHEI9IHEMNLeLeLHEL9uL)HxHHIH9{LCHIHxL$LdL9}{HLXHLHM詞HMHM~EIILeLEL9m5DH}HL)HI9yHWLL)HHHHHfHHLfo HfH9ufoHH}fsHfMxDL`?LP?TL$HL$fHD$5HN\H5?HHZHH$HD$H$HD$HgH{HH$HD$x邝H鐝H0H鎝HH$HD$xH$HD$p:HH$HD$H H{f.DATLfHUHH`SHHLʼnHHLHHHHwH[]A\Ð@UHSHHvHHH} HHbwHH[]AVMAUIATIUHSHH}MLLH0H`HHH蚊HMLLH袊Ld$u@LrQL-kLLpQtƃH[]A\A]A^u@Hl$ H0QLHuRuſ7H5h?HI5HH5xLH뛟Hۛf.DAUATUSHHH{HHH@HtH HtHHt⋛HHtыH HtH-xH HEH H H9t薋HEH Hx H H9tsHEH@ H0 HP H9tPHEHHH H9t-HEHHHH9t HCwHHHHyHHCHt܊HHtˊHkXLcHHt HuLBLmH覊LMuH{0Ht萊H{HtH[]A\A]xH[]A\A]DAUATUSHHHyHHH@Ht4H Ht#HHtHHtH HtH-vH HEH H H9tƉHEH Hx H H9t裉HEH@ H0 HP H9t耉HEHHH H9t]HEHHHH9t:HsuHHHHwHHCHt HHtHkXLcHHt HuLrLmHֈLMuH{0HtH{Ht貈HH߾[]A\A];f.HGt!tÐfDHOtAfA*fÐfHWfBB*ff.HWfBB*ff. ?(\ T Zf/r0HWfBBt*^fZY^USP7H5h?HH5HH5sHH fD?f(\l fT C f/r,HWfZɋBBt*^Y^USP蝁H5Ξ?HH蛀阖H首ff.H8fDH8'fDH8fDHwfuDFtfVHIȍI *Ð@HwfuDFtfVHIȍI *Ð@HG HHYHHH@H9uHWfBB*YHL$ L$ HYÐ@HG HUHYHYHYH HH@H9uHWfBB*YDHL$ L$ HYÐff.AVAUIATIUHSHH@HPfHHH*Hl$<YL$D$ P YD$ HHD$ PHHD$PHHD$P HHD$ P(HHD$$P0sHD$( IL5ߕHLGJL$t-f1ɺLLZD$ 1_H@[]A\A]A^@D$\D$HsYYD$ YL$$D$L$HLHHtnLL1ɺfZD$ BzLAD$L1fZD$ zLLf1ɺZD$zH@[]A\A]A^sHHH5ݕHHsHGH5\ݕHGHHP01fLAD$LfZD$q{f|$(Zf/f(f1L^LfZD$ AT$T$%{T$AD$AT$LLf1fZD$zH@[]A\A]A^f.T$(ff1LLZD$ AT$zT$(AD$AT$둿|H5?HH{ Hf.UHSHHG @Y@HHH@YH9up?(\ T Zf/r]HWfBBt*^fZY^YH[]f.L$ L$ H[]Yÿ{H5.?HHzH䀓H5EmH赉H+ff.UHSHHG @ Y@HHH@YH9u`?f(\ fT< f/rOHWfZҋBBt*^Y^YH[]L$ L$ H[]Yÿ {H5>?HH zdHrff.HG wH?f*Y֘?USPzH5&?HHy%H3HG wH?f*Yv?USPHzH5Ɨ?HHFy돟HHG wH'?f*Y?USPyH5f?HHx鱏H鿏HG wH?f*Y?USPyH5?HHxwH酏HOP wHHcAtffHHcw@HqqHcHH*H=?* Y 0?Y^GDUSPxH5w?HHwHf.HOP wHHcAtffHHcw@Hqq HcHH*H?* Y ?Y^GDUSPixH5?HHgw餎H鲎f.USH(HW 9H =?f%1?*G<Yfff*؋BB*^.QY - (T.w6Yff*BtH*Yf*W@H([]XYY,f(5 U*TX(V(Ht$H|$T$ d$4H|$fHt$T$ d$HW*_<;wH53?HHvcvH5_?HHuXHfHnf.USH(HW 9H ?f%?*G<Yfff*؋BB*^.Q -1 (T.w6Yff*BtH*Yf*W@H([]XYY,f(5M U*TX(V(Ht$H|$T$ d$褄H|$fHt$T$ d$HW*_<;ruH5?HHptQuH5ϒ?HHOtH"H*f.ATIUSHH wHl$H>H5{ԕH3@HHH@H9HSfBB* wqffɾLH?*Y?YZf(T$gT$fL羀f(@\H []A\HHS끿+tH5?HH)s$H2ff.AWAVAULATIUH-SHH8HH$DHǴAI$HHH9It$fNN*LDDHʹLl$,At$LX=H5ҕL>aI|$I$HReH9WWf*ƒ L-:?f-.?A*Ll$ YYfZfAH߹L= jI$HPL9hIT$ JYJYJYJ HPH9IL$fQQ*YH@ L5L9ID$ DfA*DYD$ YfH4$1HZ \UID$ fHYHYHYH I$HPZL9 HPH9]IL$fQQ*YH@ L9ID$ fA*\Y\$ YH4$1H F^f(\ fZ YTIL$ f A*DYD$ /H8[]A\A]A^A_fDI$H HPH9IT$ JYJYJYJ HPH9"IL$fQQ*YH@ HH9^ID$ H?f*Y?YfZH4$H1ɺRH8[]A\A]A^A_fI$HH@(H9ftAfA*ZfLKfDH9GGf*d$Hǐ DL-þ?f5?A*Dt$ YYD$ZL$LL$f.LI$(L$ LL$ fLI$(eL$LT$L$T$(ST$LI$T$(L$LI$L$(fDL$ LI$L$ fDT$LL$I$T$L$f.LID$LZf.LI|$D$InH5?HHl邅mH5^?HHl闅mH5=?HHl*mH5?HHlk}mH5?HH{l霄\mH5ڊ?HHZl鑄H韄H駄HۄHㄟHH@FHT$Ht$~D$GFD$LD$G F@HL$GHeG~D$HD$HG(Ðff.ATIUHSHH{8LHHueHH聧H Hf(Ԟ?H@%[]A\ATIUHSHnHweǃ?HHH?HE|~I$9M‰[]A\ÐfAUIATUHSHHwLd$ L5H5˕L6t,HEHPfɾLH*YfZ^H[]A\A]ÐfAUIATIUSHH(wHl$H5H5˕H5tJHHPfHH*YL$ P YD$ 1ɺAD$LLZfH([]A\A]Ð@ATMUHSHHgdHA|$HuEE fUx9O*[]A\@ATMUHSH>fUxH`d*HA|$Hf*uEE f9O*[]A\Ðff.UHSHHHcHHEE C8C<CD?C@H[]f.HGHUHHSHH(HtSQsH\$D$ HJ3H5cɕH4D$ fɄZt!Hタ,QH([]DQHAVH([]@Ðff.UHSHHH(cfHHC89ExNEx*CDH[]ÐfUHSHHHcUxfH9S8HNC8*CDH[]ff.ATMUHSH>HbC8f(?HHHH @C@HCPExCX?C@~fA|$*E CXt C8[]A\?~CX[]A\ff*fDUHAWIAVAUATISHHAT$XH _DwHǴDo`DdDhI|$L(HǴWAH(Hx(dH5 H(HPHH@DH9 AffH* DA*Y^yA>~4A"ALZ?tHe[A\A]A^A_]A YZ LZ mHe[A\A]A^A_]fDD HDH@H(H(D HPt fD@HEHpDAUDHDዕ LjH(_AXH@HHuIGpxLeL(1IwHǴAIGbf@LH* Hz H}DPHDžTƅ?XHEfHHEHHHPH?HXPHTH`PLPLLUHEH HHHߺHe[A\A]A^A_]fDLZGpHe[A\A]A^A_]@DHEH]DAU LHDDcXH(Zx8Ef@H(H* XDH@H}pE8HUH`HLpLXUHEH HHߺHe[A\A]A^A_]DY`!LZomHe[A\A]A^A_]HEH]DoDLHD ($$j AUzc(H H}ZEXHuHUHEHDHH2H@Hx@t D9LƉhHLu+LAUDLD bgHEYHMHUHEfoEfomHEfopHEHMHM^)m)u)pHEHMHUHH}HHEHfLLTaH5~?HH`ynaH5~?HHl`y2`-`(`>aH5o~?HI<`Ay~yIyIsyI{yIyIyf.HGt t fATI1UHպSHHH 茰HC11D$HrH{fD$GGtHǴ*\$  wzHx?fҾD$*L$HCYR~?YT$ \ȋZYT$ _fL纀H*YD$ H []A\Z鵌_H5Y}?HH^xHxff.Ht1Hw1HǴ[HHW1tSrHH1+¸t[DHC[xHGfuDATIUHS@tXIJID$t.@fI[HcH]A\H*ÐXfHc[H]A\H*@HGfuDAUATIUHSH@tXI؃u=I|$DAtkA_fHAHc[H]A\A]H*fID$f@IH[HcH]A\A]H*w1HǴw2Hì?HcHAI|$[AAHGuÐAVAUATIUHSHHLHALHD$H$HAT$fA/v2HCZ҃EDf(H谉$f/vBHCfZӃu=EHDHﺀ[f(]A\A]A^d@H[]A\A]A^HHfɾ[f(]A\A]A^ODfɾf(H3D^fDf(HfɾT$ DT$Hf( &fDf(Hfɾ$C$HH[]f(A\A]A^ɆATMUHSHHVHHEht UmHu@osH AT$,HH $D$^H fƃfA.D$@z u fA.D$Hztƃ[]A\Ðff.AUATUSH( 2H?fH*Yx?HGPD$@ Ll$HwILy$H5L%HCf ©?H\$*@HC YYY@HH@0YD$ L$H9H{8 LH1AD$fZD$ WffɾHZD$AH([]A\A]f.sL#H5L$tHSfҀB*RtIfLH1*YYD$Z9H([]A\A]H0fDD$YY .{f*^,uYH5Bv?HHXPrXH5!v?HHWErXH5v?HHWqXH5,v?HHWqHqHqHrH rfDHG0x uDAWAVAUATLUHSHHHGHELH{AHIpDH9Hs I@L-!FYFYFN YL9wwf*YDDHLHH@L9uPHSfBB*HHZ[]A\A]A^A_cfDHL-f.HfL$ HL$ if.HG0x AUH ATIUHSHH(HHBH9xHG @Y@Y@H HBHYH9(HWfBB*Y *H?fɋsLl$* Y t?LYL$ M H5浕L!tBfZD$ LH1ɺ@q6H([]A\A]fDfZD$ t% LH1SH([]A\A]DID$@ID$0AƄ$ID$@ID$0AƄ$]L$ HSL$ fHSkUH5r?HHiTnHoff.SHXHHHH@H9u!HWfHߋBBH[*]Ht$Ht$HH[\fDHG0x uDHGHыff.ATIUHSHGHHt[]A\fLHHߺ[]A\iSGHc-fDH[]A\HH(fL$ HHSL$ fL$ HHL$ ! KH5h?HH J eHef.@ff.P f.Df.Df.Df.Df.Df.Df.Df.D8PfD`PfDOfDOfDOfDOfDHOfDHOfDGhtu3HGt,u41df.+USP^IH5f?HH\HcHcff.AVAUATIUHSHH HDHǴHAHPDDHHLl$sLH5LLH߄Ht:PHH$P Y$1ɺLHZN*H []A\A]A^ÐPHH$P Y$fHタZE0HHPHH$P Y$1ɺLHZ)HC fH@Y@Y@Y@ HZ4$PHHD$ P  f YD$ Hタf(^$\fZYf($/$1LAD$Hf(H)HC w7Hϖ?f Ӗ *Yve?/HHP(5GH5d?HH3F~aHafDATIUHSHUmu@H{\HdBHHpCdSeKhuCl.7[]A\ËEEtfHI$H*ACl H5Ǖ?fɉKt* Y sd?CxC|YCpyEEtfHI$H*BCl H W?fɉSt* Y d?CxC|YKpEH5b?HHD5`EH5 c?HHD_nEH5b?HHlD `H`H`H'`ff.AUBATUSH (ЉfHfɾIHHX?A$*Yc?YZ,fHZ $f(L$Yc}?eL$u At-A t'$HI|$\DH[]A\A]鶊fDf(H߾ $N $HH[]f(A\A]OW5DH5a?HH3C_H$_fDUHSHHdu{e{hbH[]HwfFFtHw HHHH*zHCuPPtfHK HcHH*ƒ HŒ?fɾH* Y la?YfZ58fDHsfHߋFtFHs HHHH*HSHK fBtBHHH* H?fɾH* Y `?YfZB5{hHSfHBBBtHS HHH*Zf(L$L$Hf()L$HH[]f(ZBH5~_?HH@]AH5]_?HH@\H\H\ATffAUHSHLc\ZGpH.StClHL蠇HfZCl^K|HClL[]A\nff.ATffAUHSHLc\ZGpHh.StClHLHfZCl_[K|HClL[]A\fATffUH@SHLc\ZGpHh(StClHL蠆HfZClՖK|HClL[]A\iATffUH@SHLc\ZGpH'StClHL HfZCpaK|HClL[]A\fATffUH@SHLc\ZGpHx'StClHL谅HfZClK|HClL}K|SxHClL[]A\cfATffUH@SHLc\ZGpH&StClHL HfZClZK|HClL[]A\ff.UfSHHWHO BBHHH*Ћ w{fHH@H?HfT$ *YZ\?YZ&H߾fZD$ ZHED$ H}\H޺H[]/=H5c[?HH<YH YfDHWfH\BBHWHHH*ʃf.HWfɋBB*ȋ w4H?fH*Y_[?HYfZ/USP=H5Z?HHy f,$DLHHD$D$X$l$f/w\$fx f/$v.LLHHD$9D$X$\$f/wH0[]A\A]A^Ð@LJ DLEt{fffMcA*KD HIHHLHM)IH*H*^XHt^fI*^USPu(H5E?HHs'EH$EfDAWIHAVAUATIUSHH8Lt$xLD$LL$RlHL$pHMH$LHD$2HHII)LH9HH9Lf-HHHII)H9t LH4JD-HHD$ HPHL$pMHLH$QHHII)LHHH9/L,IHHII)H9t LL3K4HHD$(HPHD$LHHD$f(X^YIwHf(HHfHHfHfY@H9uHHH9t HDYL,HH9l$ tHLH*HH+HD$HD$X^LHIHf(LHfHLfDfHfYHH9uHHH9t IYLk+HL9d$(tHLL)HH*H|$cHD$IH@PHcIGIGIGH HH9AL,L*HD$N4(L1~D$MwHflAG%HMwHt;1DAXHH9tHuA$_EHH9uMtL *HtH)H8L[]A\A]A^A_D1E1z1L9d$(fD1H9l$ -fD1E19fD1f1Z/$H5`A?HI-#A"""@H@HA@AWAVILMAUIHATUSHHHHT$PHHHH)HHHH9H')HIHII)LH9t LL=0K'H|$`Ht$XHH9tH)HH^.HH&LHHLHHII)LHaHH9a L&HD$HHII)H9t H|$L-HD$HLHD$8HEPLHHLHHII)LHHH9 L7&H$HHII)H9t H<$LN-H$HLHD$0HEPH|$ ft#fH*L$ f(\ o \X?^LHHt$(WIHH<$f(HfHHHfHfYHH9uHt$(HHH9tH $HYLR%HH4$H9t$0tH4$HL#HH$LHHLYHHII)LHHH9sL$HHHII)H9t LH+J+HHD$HEP\$HD$@LHX^f(NIHf(HHfHH@fHfYHH9uHHH9t HYL#$HH9\$UHLH"H#H|$ m t"HD$ f=m HH*^f(HtHHf(HHfHHffHfYHH9uHHH9t HYLk#HH9\$tLHH!HH"A$HTHf(HHfHH@fHfYHH9uHHH9t HYL"HH9\$tHLH[!HH`"A$H|$(HHHH4$f(HfHHHffHfYHH9uHL$(HHH9tH<$HYLB"HH4$H9t$0tH4$HL HH!LA$H I9HHt$f(HfHHH@fHfYHH9uHHH9tHt$HYL!HH|$H9|$8tHt$HL HH!L|$PMIGPHc(HvHH9HH7!IIGPH1LLHcL$ HL$4HD$`HT$XHL$DD$ HH)HH9tSH|$PLL$@1 fDAXAHH9s u@tA_HAH9rHHH9$L$Lr IIGPL1LL)MHcHL$pHHL$t=1AXADHH9tHuA_HAEH9uHD$L8H@H@H@HoHH9UH,HHHD$HD$HL<)~D$H1Lxfl@HHD$M)H$Lx1Iu#=ADXHL9tHuA_EHL9uMtLMtLHtHH$HtHHD$HtHH|$XHtyHD$Hx[]A\A]A^A_DHXH|$ h 1H9duHD$fH$D1H<$H9|$0 f.1sf1H9\$^fD1H<$H9|$0LH1H|$H9|$8YoHD$`HT$XHH)HH9t1E1E111E1E1L)AAIcH?HD$ML8H@HD$1E1H@fH9\$LH111Qf.1f1f1zf1f1f1of1H5@4?HH 4H54?HI!4H4 4H14HR4H34H 4HG4Hd4ff.AW1AVAUATUSHH(HWxHH<$L$HD$HHD$PHD$XHIT$0HD$hHD$`H$HDŽ$HDŽ$HDŽ$DŽ$?HDŽ$HDŽ$HD$pHH$Ht$h1L|$pH|$ Ll$XHt$Lt$PwfDLL$ HL$`MLHt$HHƄ$LL$( HD$`HD$pHHD$XHD$PH)H<$HHHWxHD$`HH<$LHW`H+T$PLHT$hH9h+LL$ HL$MLHt$HHƄ$LL$( HT$hHD$`HD$PHD$HHD$XH)H)HD$`HtH$H$HDŽ$HD$0HD$(kfDL|$0LLLLHXyHH9}HCH9st@oH(H()$oZ)$HJH$o`(boh8jHHJfo$p(fo$x8$HHH9wH$H$HH$H93HD$ fHDŽ$Ll$x$H0$H$HDŽ$DŽ$?)$)$HD$xHy@HD$1E1HD$HD$"fDLL%HH|IHLL HPH+HHHH9LLH\HLLHLtHLtH$L;p`zLLHD$HH|rLLHD$yHHDHH~H4$HD$5DCLL$ HL$`MLHt$HHƄ$LL$( HD$pHH+\$`HD$PHD$XHD$HqDLy7LHT$HHH$Hкy7HT$HL1HHHHHHӺy7HT$H1HHHHHH1H1HHH$HIHHHq0%@H HHq01HHI9H9uL;yuHD$H;AuHD$H;AuHD$H;A uA(HD$xHHD$xH;$HT$0Ht$(LH<$L$fH$L$L$I*H$H|$@0fI*@(fI*@ fH*H$@8HH1E1E1E1+HcP(HHHLHIIMHHt0HHHpL@Hh I9uI9uM9uH9l$uHHufH4$HcT$xffHFpHNhHH $LLH)LHVH*HNI*H^FPfI*^FHfI*^F@fH*^FXHtfDHHHHuH$H$1HHD$(H$HDŽ$HDŽ$H0H9tH$Hu5HHtHH{H+HuHHuH$H$1I0HH$HDŽ$HDŽ$L9t]H([]A\A]A^A_8L|$8H1L\$~D$8L$H@(D$@~D$D$@HIH$HHDHIINffҾ*8HH*ShY^Y@^~Z?YY^MttLIH9thIt HHIJ,*HK`HHHHIA|$pHHSxu?H~9HHHt/;t-HH[]A\A]A^SHǃfCxH[]A\A]A^ÿ H5&?HHv(r H5&?HHpU(Q H5&?HHO4(0 H5a&?HH.( H5@&?HH 'H'H'H'H'H'AVMAUIATIUHSHfMLHkLHHHHA$ID$HǃHǃ?EEf*ȋ w1HX?f*YC&?ZY[]A\A]A^ÿH5~%?HH&H'f.D fDAWAVAUATUSH8H_H;_t8A~~A C HC( CHGH8H[]A\A]A^A_ÐMLMIHHIHL)HHHH2H IH9LLL$(Ht$ HT$LD$ LD$HT$Hp(LL$(IHt$Ht$ A~$~HAAEA  BJ L9LHoH(H(QoZYHrHqH9uH(L)HH\(Hs(Ht$MtLHD$ HD$HD$~D$L}D$EDHfffffffH9Hu-HD$(E11#DA(DHHIAUATUHSHHHHIH9L,L@ L1HIPLK0HKHCHt[1LSHHHHLMtHH9H5>HHH5w>HHߚH5V>HHߚ H55>HHߚHHHKHSHHAWffIAVAUIATUHSHH*F(LD$ $$*N$|$$t$|$fH@fAgpfo$AwpAxCfAc LD$ AAHCAoC0fA*P(o$CxfI*h fZI*@SP1fAP c@fD(HCXHC`DYHChHCpƃ L50?ffE >A* CDM*HYAYZAYfD(Kx DYfA*CLYZAY ffA*,Yf.$^L$KxY^D$YEZAYY^T$tAAE4YLAM$AM(Ld$PLD$ LH,HH9HOHHCLLD$ f>DK(C0fD/ - f/xk8{ f/f/{IH IpfEHHL*C@ ffIPA* CDHYZAYfEL*AYY^T$^SX ff/fA* YZAYYY^D$^C`f/AE$Au(LLD$ HT$HAmD$(AEHL$@D$0t$l$(HL$@Dd$0HT$HHcH9HODd$LD$0^C AYH,H,H9HOHC@fLLD$(A*}|$ CYD$ ךfLD$(LA*uH,I9h INh t$ YD$ ךLD$(E>L,M9`MN`ښH59>HHٚQٚH5>HHؚٚH5D>HHؚٚH5#>HHؚٚH5>HHؚ5cٚH5>HHaؚBٚH5>HH@ؚ!ٚH5>HHؚٚH5~>HHךeؚH5]>HHךؚH5>HHךؚH5>HHךHHHHHRHZHHHHHHfD@tHGxHGXƇtHLJHG`ƇtƇfÐff.A.EfW(f*H*Of/f(~5 %I^f(f(f(fTf.v1H,ffUD& f(H*fATXfVf/#G ]^f(f(fTf.\ ]|H^ f(fTf.v3H,ff(%9& fUf(H*fTXfVfDfO f*H*Wf/(f(~5 %G^f(f(fTf.v8H,ffD(D % fUf(H*DfETAXfVf/f/w"f(f(^f(fTf.rf(:D]LG^ Ԗ f(fTf.v3H,ff(% % fUf(H*fTXfVfD]^f(f(fTf.vH,ff(%$ fUf(H*fTXfVD]^f(f(fTf.KH,ff(%Q$ fUf(H*fTXfVfDH,ff(%$ fUf(H*fTXfVlH,ff(-# fUf(H*fTXfVVATIUHSHHHDHD$HH$HD$H&ffu [hY$fu KpYL$CxfED*Cf(XXXfD/A$ufD(DXDXAXfD/HCHf$H*f/DL$fA/rD^DcXD}" fE(^f(DYK8E\fE(A_fD(\f/YS0D\f(A_fD(wD\C`\fD(f/wD\Y{(fEYYS DYAXAXH,H*H,fD]H*fE/D]fA/f(ff(E\A\f(H,H*\f/NffXffEfDU *DMXD]YX^AYH,fH*H]u0H[]A\fD(DXDXAXfD/{Xu(HDHE f(\\Xf(_]f([`f(\A\AX_]f(f(^f(f]AYH,fH*]f(f(fM0mH[]A\\КH5>HHϚlКH5>HHjϚKКH5|>HHIϚ,*КH5[>HH(Ϛ!H/H7HkHsfAWAVAUATIUSHH:`HLl$pL|$x-HD$pIEHD$PH$HD$HD$lHD$l$AEMIoD$lHHD$xHL$ALH|$6$$f(Xf/D$v]$T$H$$L$ $d$@$l$(t$0|$8d$XD$IL9_IL;l$P2D$ t$XfD$@s0D$HfD$(CfD$0C HH[]A\A]A^A_fHJRDfSHHX?HD$=T$HXT$uXD$HD$XD$H[Ð@SHH̒HH[USHHHLFHcH$Hcx(=HD HHHȅID8HHHcV@HHHHHɚʚH5 >HHɚʚH5>HHɚʚH5>HHɚyʚH5>HHwɚ4HxH:HBHpHxf.ffO**^G ^X ^Ðff.YGYO XÐAVIAUATUSH~C,DNDS(HR E{4DK0HcHHD2HHHHHcHD>HHHICEIcHD0HHIHEt|McffMH*JDHHH*II6fHEfI*I*A$[]A\A]A^ÿȚH5>HHǚqȚH5>HHǚfȚH5>HHǚȚH5>HHǚHHH"H*@u f*G(G8f.u f*G,G@f.Gff.GÐf.AVAUATUHSH=ɒ՚X:H}!ZH}oHpH90H=bɒM՚Lc1HhHLHH`HIHIH9YtNH H5HcA1HHL9t-H H HcA1HHI99uۋi []A\A]A^DH}[]A\A]A^7H}HH9PƚH5>HHŚH˒H5HxԚH`HǀhH=WHV0HǀpH`HHǀxǀ?HǀHǀƀXCԚTfDH}1HHpH9tHH9u˚HIƉXh H=ǒӚ1LhHLIH`HIHt`H9YtJL MtPIcA1III9t&=DMMt0Ic@1LIII9uMA9uH9tLʚ9H= ǒҚLLLAH`i2 Hff.ATUHSHHGH$Ht$~D$$o]$E$U,v(fpñM0G(9u9tCHu,u0HAffs(fɉCHD)*A**ʋS0^^fC&S4s,HC8C@H[]A\DAWAVIAUIATIUSHHH);HD$H@PHcHD$HD$ HD$(HHH9H,HXɚH1L<(HHD$L|$(]ĚH$L|$ HxHHsD$0HD$@HD$8HCHD$HHD$PII)LHRHH9ILȚHHCHsHH)HL$~D$IL|$Pfl)D$@H9tHHϚHHH\$0fLHHHL$HD$XHD$`D$hHD$x虉H|$hHtǚH|$@HtǚHL$E1LLHyH8(D$H H{0HtǚH{Ht9ǚHHH9uH|$HtlǚD$H)[]A\A]A^A_@HHH9uDE1[L1HIH@AUIATMUHLSHHHHlLHHLD$UL$H[]XA\A]^f(AWAVAUATUSH(DL7A@MnIFPHIIHHcHHH9:L$D$LDD$ƚL1HJ HHD$DD$D$HIEIUH)HHtxHyH9HxAH9@AyH~HkHf(1HfHf fY HH9uHHH9t Y Lt$~L$HL$H{DL$K~L$flKHtD$BŚD$H{8fC(K0K@HtD$ŚD$ O E7Me\AFAf(MID$PHcHgHL$H9HHŚH1HHHHD$D$HIEIUH)HHttHxH9HyAH9@A!H~HHf(1HfHf fY HH9uHHH9t YLd$~D$HL$H}DuD$E~D$flEHtÚH}8fE(E0E@HtH([]A\A]A^A_Ú@H([]A\A]A^A_fHD$1dHD$11fD 0Y 1HH9u@1fD 0Y 1HH9u蟼ŽH5>HHü褽H5>HH袼HHf.7Wf.S(HH?U`t"XHfH߾[Z<@fHZf(L$L$HH[f(WHL$ZL$fHY H[Z[f.SHH?U~CD$H߾Y= ZfHL$H[ZyffH߾Zf(L$L$H߾f(zL$HH[f(f?UZHtfH?U#ZHtifY HZD@HZ@HZ@UHSH(7H\$D$ HBH5H蓆D$ HZtH([]@H([]ff.HZoff.Y HZff.Y HZff.UHSHHD$ L$ HHH[](ff.?UH~(Y HǾZuDHZff.UHSHHD$ 9L$ HHH[](ff.9tTAtEu6AƒAEtEu.tEu-Et*t& C AEtEtf. uEuuEt,{EtEtfu tf„tt Et t"Et tOf.DAUEATEUHSHHHDk HHE$E(C$Et/~A~C%H[]A\A]fC%H[]A\A]ÿH5H>HH^ޞHlޞ?@uf>ÐfD ?ÐfD$ ?ufÐff.%?u?Ð%?u?ÐAWAVAUATUSH(HGHcPh,HHp(HIH<IHHx(Hx0HH0x{Hx8HH8xpHx@HH@xeHHHHt,HxHxTHy HyHyHN@II)IIIIuH9yDH9HH9IHH)H0HHJLHfov HHH@oP(foHfs foffofs ffffs fH9ufofofoHfsfs HfofH4fs ffffs ffI~H9t.L.HFH9t!LnHFH9tLnHFH9tLnHEH}X$X(ffv L&H*LcIH*^f(fTf.H}L$Lt$dH}AxH}A\L~H5kL#L$uyDAHfH(HIH*]f*[]A\A]A^A_YH,ff(% fUf(H*fTXfV@H}L$L$H0H9pIH}L$H}LhL$HI9HqI9/I?IUH)HHzLD$Hfnl$HHfpHfoAHfofffffofH9ufofofoHfsHffH4ffffofofsffffff~H9r9LHVI9^V9LHVI9IV9LHV I94V 9L'fH9^HH9PH<HHP7HHX'HH`A DAEADHHNH5>HHLٞ-H5^>HH+؞ H5=>HH y؞뱚H5>HH鰚n؞H|؞H؞H؞H؞@SHHHH$HD$$YD$^$H[ÐfSHHH_HD$Y?^D$H[Ðff.HY>Hf.SHHHH$RHD$YD$^$H[ÐfSHHHD$L$HXL$-XD$HD$\$HX\$XD$H[Ð@S1HHaHD$sfXD$*K H[Xf. @tfUSHc H?ff*Y>. >Zz6u4 >f(Yd>ufXH[]^D.a zuM> =>.%  E.Eu. D„t6f( >Xk!H5>HH&֞H51>HH֞H)֞H1֞fUSHRb6 t>f-.>*f(fTo f/rHffXX Xf(H^f(^^OGH[]Ë H>f=;> *,f(YZY^X\XXփ wOf*,Yf(ZY^f(X\>褭H5">HH袬Ԟ胭H5>HH聬ԞHԞH՞f.fV1tM4~KO w5H%|H%Du#G %fUHSHHHt%HHPtHEH<ҁH[]DUSHHmt H~GHHH%ff/s;} t t1} t t H[]fH[]@H[]@UHSHHo=  uD{T~/+CPHcLcEHHàHHHcUxHI9u5Et?t H[]ÐCPlu HHtBH[]@HuHuڃՀ{ EfHuHuHcpH0P  HLHH H0 H8H8H@H@HHHHHB Ht0Hz HxHx`HxaHB@LH)HHHvHfL9 ILHH)H8HLOL|Lfo1 HHHo0foHfs foffofs ffffs fH9ufofofoLfsfs HfofHfs ffffs ffH~I9t.HHzI9t!HBHzI9tHBHzI9tHBHHcHxHLHHBHx$HHlHHWHHBHHt3H'HxHxHxHB@LH)HH+HH%L9ILH)H-HHxLHfo7 HHHDoxfoHfs foffofs ffffs fH9ufofofoHfsfs HfofHfs ffffs ffH~H9t.H2HBI9t!HrHBI9tHrHBI9tHrHE@HHHcpH0HH<HHH0H8H8H@H@HHHHHB Ht0Hz qHx_Hx(Hx)HB@HH)HHCH+H=fH9 IHHH)H8HLFL:Lfo HHHo0foHfs foffofs ffffs fH9ufofofoLfsfs HfofHfs ffffs ffH~I9t.HHrH9t!HBHrH9tHBHrH9tHBHHcHx?HH<HHHxHHHHHHHHt3HHxHxHxHB@HH)HHHHH9oIHH)H-HHpLHfo HHHDoxfoHfs foffofs ffffs fH9ufofofoIfsfs IfofJfs ffffs ffH~I9t.HHrH9t!HBHrH9tHBHrH9tHBHEbHXH9H5#>HHM˞HXI9辢H5>HH輡˞HH9n膢H5>HH脡˞HI9UH5>HHSʞfDH`'HhH`CHh7H8HH8HH8H8HH8HH8weHH#HHH8HH8HH8&H8HH8HH8H55>HHuɞHtHHHH,HUHkHC裠H5Խ>HH衟Ȟ肠H5>HH耟ɞaH5>HH_Ȟ@H5q>HH>ȞH5P>HHǞH5/>HHSɞݟH5>HH۞zǞ輟H5>HH躞ǞHǞHǞHǞHǞHǞHȞHȞHOȞHWȞHȞHȞHȞHȞff.f1ff.fUSH= tH[]ÿH5.>HHȞHȞf.@USHHD$H=1AHHHHHtAHD$D;ItDH Ht*IE9t+H HtHcA1IHI9tHf[]H;YQI tNHSHCH)HHYZ@HvlYRpXHv<YHY[]XYÿ۝H5 >HHٜǞ躝H5>HH踜Ǟ虝H5ʺ>HH藜JǞxH5>HHv?ǞHMǞHUǞHǞHǞATUHSHH`D$0Lh1AHIHOHHt4HD;It=H Ht#I A9t+H HtHcA1HII9tH`f[]A\Di0H;IYl$i8Q l$i@l$8iHl$@`HSHCH)HH&B@XY >^D$HHYZpf(^D$PHYHL%f(^D$XL9?[ f/\$8C(S0\$w?-DHHL9s f/t$8C(S0t$L$T$(^D$\YD$HL$T$(^T$D$ f(5l$PHYl$( fT$0^T$*YD$@L$ XL$(XL$XYf/;HZ^>^D$D$Hk\$0Z^D$H`[]A\Yf.0 \$H(Z^\>^D$8D$뛿tH5>HHr ŞSH5>HHQĞ2H5c>HH0{ĞH5B>HHpĞH~ĞHĞHĞHĞf.USHHHHtfDH/HHuHCH;1H0HNH{HCHCH9tH[]骞f.H[]fHt3ATIUSHHsLHkHiHHu[]A\@ATUSH_Ht#HHsHLcH(LMu[]A\f.AUATUHSHHHHIH9L,L0L1HI@LK0HKHCHt[1LSHHHHLMtHHʔ-H;ff.fUSHOA wAH5>f>* GPYʃ w;f*Y/BH[]ÿDH5²>HHB#H5>HH!HHff.G DÐtD@fSHStwt:K42,[EЉfD wsH>HcH)t EЉ[t{~!t [EЉ[EЉ@f wH>HcHf1҃ƒ*u kfD [fD KfD;fD+fDfD' fD(fD&fDUH58>2SHHH賐H9H5>H߽4薐HH5>H߽5yHH5>H߽<\HH5>H߽=?HH5>H߽>"HH5>H߽FHH5>H폚HsH5~>H߽HЏHVH5g>H߽K賏H9H5P>H蛏H!H5p$:H߽P~HH5#>HfHH5>H߽VIHH5>H߽W,HH5>H߽XHH5>H߽YHu|H5>H߽ZَHucH5>H߽dHuJH5>H߽e觎Hu1H5>H߽x莎HuH5r>HzHyH[]USHwP)9LOXHcHcHHMH)I IHIHH8HxLP|HxLPxqHxLPxfLP Ht,Hx xUHx(JHx0oHx8LP@MM)IIIIuI:yfDM9I9~IIPH)HLRLI Lfo HHHofoHfs foffofs ffffs fH9ufofofoLfsfs HfofHfs ffffs ffH~I9t.HHPI9t!HHHPI9tHHHPI9tHH)Hc9hLHcHHI1MH)IHIHH8HxLPxHxLPxtHxLPxiLP Ht,Hx xXHx(mHx0Hx8LP@MM)IIIIuI:yfM9xI9IIPH)HLRLI1Lfo HHHofoHfs foffofs ffffs fH9ufofofoLfsfs HfofHfs ffffs ffH~I9t.H0HPI9t!HpHPI9tHpHPI9tHpHc(LHIM IHHHHHHx}HHxlHHt/HxUHzHzHzIP@MI)II"I IuH:yfDI9FM9ILHH)H-HLPLLfo} HHHofoHfs foffofs ffffs fH9ufofofoLfsfs HfofMfs ffffs ffH~L9t.IIPI9t!I@IPI9tI@IPI9tI@HmHCWtC3 u+ffH*H*^fH*^] H[]@ffH*H*^fH*^] H[]fDI:nII:`IKI:6II:(IH:HH:HLP(LP(H@LP0LP0H@LP8LP8wH T@mfDMfDHBDfDfDfDILIIILnH5>HHlKMH5~>HHK,H5]>HH* H5<>HH 霴ꇚH5>HH膚ɇH5>HHdž訇H5٤>HH覆臇H5>HH腆pfH5>HHd饴EH5v>HHCD$H5U>HH"鯴H54>HHֲ↚H5>HHH;HHH3H;HoHwH髳H鳳H糞HﳞH#H+ATHcUSHLcVPLcHcnTD)ЃHL\XD)ЃHHƠLHHHDHHHIHHHHDHHHMHFzit$貅H5C>HH谄釵LEAILOHIHHHHHxqHHx`IB It,Iz xOHx Hx HxN IB@LH)HH H HuH8y I9XM9~ HLHH)HHLBH Lfov HHHfDofoHfs foffofs ffffs fH9ufofofoLfsfs HfofMfs ffffs ffH~I9t.IIRI9t!IBIRI9tIBIRI9tIBHLHHD$Hc( HIMIHH H HHHHx|HHxkHHt/HxTHx Hx Hxk I@@MI)IIY IA IuH8yDI9yM9 ILH)H-HHPL Hfo t HHHf.ofoHfs fofofs fffofffs ffoH9ufsfofoHfofs Hfs fMffffs ffH~H9t.IIPI9t!I@IPI9tI@IPI9tI@IfHGHGG(~D$HL$HG8G@D$H[]A\Hc(H  HHLHHIw H HHHHxyHHxhHP It,Hx xWHzlHzHzHP@LH)HHHHuH:yI9 L9 IMHI)IIIjMS IfoXr IIIfDofoHfs foffofs ffffs fL9ufofofoIfsfs IfofJfs ffffs ffH~L9t.HLPM9t!HPLPM9tHPLPM9tHPLLL$HE A IMN IIHHHHHx}HHxlHIt/HxUHxzHxHx4HB@MI)IIIIuH8yfDI9L9>ILH)H-HL@LwLfo \p HHHfofoHfs fofofs fffofffs ffoH9ufsfofoLfofs Hfs fHffffs ffH~I9t.HHrI9t!HBHrI9tHBHrI9tHBHHLFXEAILKHIH~XH~`HF`xzH~hHFhxoH~pHFpxdI@ It,Ix xSHxhHx HxI@@HH)HHhHPHuH8y @H9I9HHHH)H`HLRHVLfo{n HHHoPXfoHfs foffofs ffffs fH9ufofofoLfsfs HfofMfs ffffs ffH~I9t.IIPH9t!I@IPH9tI@IPH9tI@HLIHD$Hc(lJHIMIHHHHHHHxHHxnHHt/HxWHxHxHxfI@@MI)II IIuH8yI9M9.ILH)H-HHPLHfo |l HHHfofoHfs fofofs fffofffs ffoH9ufsfofoHfofs Hfs fMffffs ffH~H9t.IIPI9t!I@IPI9tI@IPI9tI@HLDH@H@H@H@Hl@H@Ht@H@H,@H@HT@H$@H@H@H @H @H@H @H8HH8HH8^HH8PHAH:HH:xHaH8^HH8PH;H8HH8HH8HH8HfDHLL$fDyfDfDLk@fD fDKfDfD'fDHLHLLLHLLHLLHH:uyvH5L>HHu餥uH5+>HHtMuH5 >HHtञuH5>HHtWuH5Ȓ>HHt鈤vuH5>HHtt㥞UuH5>HHSt4uH5e>HH2tUuH5D>HHt鸣tH5#>HHs髥tH5>HHs@tH5>HHs雤tH5>HHs袞ntH5>HHlsMtH5~>HHKsp,tH5]>HH*sc tH5<>HH ssH5>HHr鹤sH5>HHr銡sH5ِ>HHrH鍡H镡HɡHѡHH HAHIH}H酢H鹢HHHH1H9HmHuH驣H鱣H壞Hff.@H=  @ATUH-~֔SHn֔H9t_fH{tdHSH H9uL%C֔H-D֔I9t-L@HCHt'HHH H9uL%֔[]A\DH H9uqHHD$HD$fH=*vffHHT$HfH=ZwffHH H=xHtH5xH=Ք#u Hø.tff.UHSHHhՔH;iՔHCHGHt$HHHEHCHEHCH&ՔH HՔHD$HD$fH=QuffH~HT$HfH=vffH~H JH=xHt9H5wH=ԔJ~u'H[]HHH=Ԕ끸8sHܡATIUSHoHH9t(DHCHt/HHH H9uI$Ht H[]A\u@H H9uD[]A\f.AWIAVIAUATUHSHH_L'HT$HM)L)HL,L9ILuH$H|$L4$IFHGHtHLH|$o_A^H$LIL9t_DoH@H H oBJHp@HJHrHpHHHJHrHHH9uHEH<$L)HLt I HLH9tXHHoH H Hro@H@HJHHPHpBHJH9uHH)H HMt LI9t&HEHtWHHH H9uMtLsH$~$L4$I$MoAH[]A\A]A^A_fH H9uDHI9PH$MRf.AI+HIFHt LLH0mH<$tH<$@s[xIFHtLLHzH#|AUATIUHSH_HMLl$HD$"LtLHlLHHhtLHߺD$"StLD$:H>t1H5Ɋ>HH*tuH/{1H5>HtH[]A\A]H=!4H5!HHsM>H=f> HH5W>HsuHzH==>HHH5+>HsH[]A\A]@AUATIUHSH_HMLl$HD$"LAsLHkLHH(sLHߺD$"sLD$:Hr1H5>HHruH.y1H5i>HrH[]A\A]fH=!H5t!HHrM>H=&>HH5>H{ruHxH=>HHH5>HNrH[]A\A]H>HcH@H>H|>H H`>HS>HG>H;>H5>H0>H*>H%>H>H>H >H>H>AUATUSHLcHL#HtvHIeiHHwHcHH:>H#>H#>H>H>USP iH5<>HH h.HHcHDH>H>H>H>H>H>H>H>H>H>H>H>USPKgH5|>HHIf锘H题ff.AUATUSHLcHL#HtvHIUfHHwiff.Hh>wH>HcHfH>H>HY>Hq>H>AUATUSHLcHxL#HtvHI5eHHwt#~"Hw>tHw>H>HEÅHq>H->HEff.AUATUSHLcHL#HtvHI5dHHwHcHDH\>Hb>Hu>Hy>H{>H>H>H\>Hj>Ht>H>H>Ha>USP[cH5>HHYbʔHؔff.AUATUSHLcHL#HtvHIebHHwHcHDH>H>H>H >H>Hg>Hn>USPaH5>HH`逓H鎓ff.AUATUSHLcH(L#HtvHI`HHwHH_鰒fDH>H߼>H>H阒AUATUSHLcHL#HtvHI_HHwHcHDHU>H[>Ha>Ha>Hj>Hܻ>H߻>USPk_H5|>HHi^LHZff.AUATUSHLcH(L#HtvHIu^HHwtHe>Hr>HEff.@AUATUSHLcHL#HtvHI]HHwHcH@H>H>Hc>HF>H(>H >H>H˵>H̺>H>H>H>Hd>H;>H>H>H>H̹>H>H>H}>H>HT>H<>H>H>Hz>H`>HE>H+>H>H>H>H>H׳>H>H/} H>H>Hs Hv>H>USPZH5x>HHYHff.AUATUSHLcHL#HtvHIYHHw`HA4$HHT$H4$H{`H=#IިH5#LH`H<$HEH9t^H{H5>[`At$H>HT$H4$H{<`H=}#ImިH5n#LH`H<$HEH9tY^H{H5G>_At$HHT$H4$H{_H=#IިH5#LH_H<$HEH9t]H{H5>_At$ HpHT$H4$H{n_H=#IݨH5#LHM_H<$HEH9t]H{ H5>&_At$H HT$H4$H{_H=H#I8ݨH59#LH^H<$HH9t$]HsLdH [HİL[]A\A]A^I II鉞I቞IىIщff.f H>HcHDH>H1>H>HA>HY>Hq>H>H>H>H>H >H1>USPVH5s>HHUꈞHff.AUATUSHLcHL#HtvHIUHHwo\HDHQHT$H4$H{O\H=#IڨH5#LH.\H<$HEH9tlZH{H5>\LHH HT$H4$H{[H='#IڨH5#LH[H<$HEH9tZH{ H53>[DHHT$H4$H{[H=#I٨H5#LH`[H<$HEH9tYH{H5ز>9[LHH HT$H4$H{[H<$HH9tVYHsL:`HRWHĸL[]A\A]A^A_I郆I鋆I闆IYI集DAVAUIH5>>ATIUImSHGLH\$ HډD$ IT$ 1LH53>1IT$ LH5H= بHH5 H-ZHHD$ "ZH5>IHZHLD$ "YH޺D$ :HY1H5bp>HIYIt$LX1H5Ap>HYH=e רHH5V HYHHD$ "rYH5>IH[YHLD$ "FYH޺D$ :H1Y1H5o>HIYIt$LpW1H5o>HXH= 3רHH5 HXHHD$ "XH5w>IHXHLD$ "XH޺D$ :HX1H5o>HIwXIt$ LV1H5n>HYX1IT$(LH5>H= w֨HH5 H%XHHD$ "XH5ǯ>IHWHLD$ "WH޺D$ :HW1H5Zn>HIWAt$,L^1H59n>HWH=] ըHH5N HWHHD$ "jW H50>IHSWHLD$ ">WH޺D$ :H)W1H5m>HIWAD$0L\1H5m>HVH= )ըHH5 HVHHD$ "V H5>IHVHLD$ "VH޺D$ :HV1H5 m>HImVAD$8L\1H5l>HMVH= ԨHH5 H/VHHD$ "V H5>IHVHLD$ "UH޺D$ :HU1H5dl>HIUAD$@Lf[1H5Al>HUH=e ӨHH5V HUHHD$ "rU H5b>HH[UHHD$ "FUH޺D$ :H1U1H5k>HHUAD$HHZ1H5k>HTH[]A\A]A^AUIATUHSHH\$ HkQH{H5Ŭ>Tu H{ZH{H5>Tu H{ZH{H5>rTHuH{RH{H5>PTHuH{RH{H5>.THu H{RH{H5y> Tu(H{[H{H5k>Su,H{ZH{H5]>SE0H{lYH{H5M>SE8H{IYH{H5=>SE@H{&YH{H5->aSEHH{YH{H5>>SIuLHT$H4$H{SH<$IL9t\QHsL@XHXOHĸL[]A\A]H~H~ATIUHSHH\$HbHLHHLHST1H5B$"L1H5;>LbDE~fL{XMt$!@H5 LL|XPH1H5g>LPLL?O1H5jg>HP9L>c1H5>LMb~hLMt$ H5K LLtPH1H5f>L_PLLN1H5f>HCP9Lb1H54>La(~mLMt$%DH5 LLOH1H5kf>LOLL$N1H5Of>HO9(L#b1H5>L2ap~mL0Mt$%DH5+ LL0TOH1H5e>L?OLLM1H5e>H#O9pLa1H5*>L`~mLxMt$%DH5 LLxNH1H5Ke>LNLLM1H5/e>HN9La1H5>L`~mLMt$%DH5 LL4NH1H5d>LNLLtL1H5d>HN9Ls`LL`L@JHĘL[]A\A]A^A_HyAWAVIAUATUSHHL$H|$8L]AFLH5%>D$PHD$PHHD$1H5>L^IFI9FHL$DE1HD$HL$ HL$EHL$(HL$FHL$0DHD$Lo)L$PoP)T$`oX )\$po`0)$oh@)$HPPH$1pPM1D(hHt$[Ht$ I|$D$D"LH5ͥ>HHLHt$(HD$E"nLHt$0HD$F:WL1H5b>HHCLDHHS1H5b>H'LI|$H5 LHt$GI|$D$G"K H58>HHKHt$HHD$H"KHt$IHD$I:K1H5>b>HHKfHZD$=Q1H5b>H|K1H5ʤ>L ]~gHL$EIl$HL,1H5a>HBKHsHI1H5a>H%KI9t H5 H KHfDLx]LP]IFIVIH.袋.HD$XH)HHL9L8]1H5 >LG\IF(I;F0HL$JE1HD$HL$ HL$KHL$(HL$LHL$0HD$Lo8)|$PoH)L$`oP )T$poX0)$o`@)$HPPH$1hPM1D(hHl$YHt$ I|$D$J"IH5>HHIHt$(HD$K"IHt$0HD$L:I1H5*`>HHIDHP1H5 `>HoII|$H5% YIHt$MI|$D$M"@I H5>HH)IHt$NHD$N"IHt$OHD$O:H1H5_>HHHfHZD$N1H5`_>HH1H5>LSZ~gHL$EIl$HL,1H5&_>HHHsHF1H5 _>HmHL9t H5# HTHHfDLZLZIF(IV0IH.袋.HD$XH)HHI9LZH|$8LZLKDHD$8HH[]A\A]A^A_Htff.AUIATUHSHH\$H;DH{H5>Gu H{NH55 HIcGuLhNH5 HIAGuLFNH5 HIGuL$NIHH@IHH}8uCLD$1H5͝>LjVAE~bEu Il$1H5?[>HDDHK1H5#[>HDA9]~!H5< HEt hDHfLVLLVHfBH$HPHT$ HPhH@HD$H E~D$H$HHD$ID$pD$)D$0H9tABH@I|$PHHD$8FH?I$HPHH0HRHL HP HH(HT$0HRHL0HPH@HT$ HRHD H>HD$(HH$:HĸL[]A\A]A^A_Hoff.fUSH~FH>HHcHKHĸH[]fDHĸH[]fDHl$ Ht$HRHt$HT$HFH5S>D$HH>UH>HĸH[]fHĸH[]fDHĸH[]ÿ\;H5X>HHZ:nHnHnDAUATUHSHH5x>HGHLd$ LD$ -E 1LHH5V>D$ HU1HH5K>HU1HH5;>HU1HH5+>HU1HH5>HU 1HH5>HU$1HH5>HU(1HH5>HU,1HH5>jHU01HH5ܚ>UHU41HH5՚>@HU81HH5ʚ>+1HUHH= HH5 H@LHD$ "@H=>IоLH5{>H~@LLD$ "i@LD$ :HT@H=V>I腾LH5V>H3@u@L8GH=V>IYH5V>LH@H= ;HH5 H?LHD$ "?H=9HHH59H?LHߺD$ "?LD$ :H?H= H躽HH5s Hh?HUPHuHHX?H=T H艽HH5B H7?H[]A\A]ff.AWHWh1AVL5U>AUATUHSHH5>HLkH(l1HUiHH5>Ld$R1HUjHH5ޘ>=1HUkHH5Ә>(1HUlHH5ɘ>1HUmHH5Ƙ>1HUnHH5>Ep1LH5>H߉D$1HUtHH5>y1HUxHH5>d1HU|HH5>O1HHH5q>71HHH5f>1HHH5[>1HHH5Q>1H5J>HLLHߋH59>D$1LH5#>H߉D$1LH5 >H߉D$1LH5>H߉D$c1LH5ؗ>H߉D$EH]O1H5×>H LHHH5>1HHH5>HO1H5>HKHHH5>1HHH5u>1HHH5h>HN1H5]>H\KHHH5H>1HHH58>HaN1H5*>HKLHH5>E1D$ 1LH5>H߉D$1H5>H!JLH߹H5m D$ 1LHH5R%D$1LH5iz.H߉D$HL1HH5>ILH߹H5 D$1LH5vR%H߉D$HLH1HH5>lH1HH5>T1HHH5|>IHHH5c>HLH5 I8LLD$"9H=C>IշLH51>H9LLD$"n9LD$:HY9H5O>H7HL@H5O>H7HH1H5̔>UHmKH([]A\A]A^A_ff.ATIUHSHH\$HHHLHLHHQKH6H|$pHPHT$HPhH@HD$Hp9~D$H$HHD$HCpD$)D$ H9t6HZ5H{PHHD$(@;H4HHPHH0HRHLHP HH(HT$ HRHL HPH@HT$HRHDHV3HD$HH$T/HĠH[]A\H_dff.fAUIATUHSHH\$ HGHHeHHZLd$1HLH5D$1LHH5>D$x1LHH5>D$YHLIH'5H$HPHT$ HPhH@HD$H7~D$H$HHD$HCpD$)D$0H9t5H3H{PHHD$89Hk2HHPHH0HRHL HP HH(HT$0HRHL0HPH@HT$ HRHD H1HD$(HH$-HĸL[]A\A]HbDAVAAUIATUHSHH\$ H2H{H5>5HuhH{T1H{H5>5HupH{21H{H5>5HuxH{1H{H5>k5HH{0H{H5{>F5H{;H{H5n>!5IHHLXHT$H4$H{4H<$ID$H9t33EtjH{H5>H4IuLHT$H4$H{3H<$ID$H9t42H=Q>H{H5A>H3u L HT$H4$H{3H<$ID$H9t1H=>ɱH{H5>Hv3uH{z:H=>螱H{H5>HK3uH{O:H=>sH{H5ۏ>H 3uH{$:H=Տ>HH{H5ŏ>H2uH{9H=>H{H5>H2u H{9H=>H{H5>H2u$H{9H=>ǰH{H5>Ht2u(H{x9H=}>蜰H{H5m>HI2u,H{M9H=g>qH{H5W>H2u0H{"9H=Q>FH{H5A>H1u4H{8H=;>H{H5+>H1u8H{8H=%>H{H5>H1uůH{H5>Hr1u@H{v8H=>蚯H{H5>HG1HUPHuHH{61Et]} EH՘>HcH@H{*1HLI HT$H4$L0H<$IL9t$/HsL6H -HİL[]A\A]A^DH{)1HLIHT$H4$L~0@H{o)1HLIoHT$H4$LN0cO)H5F>HIM(4]H]H]H7]H]H\]H\AWAVAUATUHSHH\$PH|$H߉T$a,H=i>H{H5Y>H/uhH{5H=R>ɭH{H5B>Hv/uiH{5H=<>蝭H{H5,>HJ/ujH{5H=&>qH{H5>H/ukH{a5H=>EH{H5>H.ulH{55H=>H{H5>H.umH{ 5H=>H{H5Ԍ>H.unH{4H=Ό>H{H5>Hn.Ld$0upLHT$8Ht$0H{K.H|$0ID$H9t,H=>kH{H5~>H.utH{5H=y>@H{H5i>H-uxH{4H=d>H{H5T>H-u|H{4H=O>ꫨH{H5?>H-H{4H=7>輫H{H5'>Hi-H{j4H=>莫H{H5>H;-H{<4H=>`H{H5>H -H{4H=>2H{H5ߋ>H,HLHT$8Ht$0H{,H|$0ID$H9t*H=>ݪH{H5>H,H{3H=; I謪H5, LHZ,L\3H=i>耪H{H5Y>H-,H{m2Ht$.HD$.,,HG2Ht$/HD$/,+H!2H=>H{H5>H+H{1LHD$0,+H1H=NJ>販H{H5>H_+H{1H=>胩H{H5>H0+L2HT$8Ht$0H{+H|$0ID$H9tK)H=v>/H{H5f>H*HLHD$L{AuL1H=y IꨨH5j LH*IL;l$uH=h!H{H5h!Hn*H=>袨H{H5>HO*L1HT$8Ht$0H{.*H|$0ID$H9tj(H=ȉ>NH{H5>H)LݻHT$8Ht$0H{)H|$0ID$H9t(H=>H{H5}>H)L艻HT$8Ht$0H{)H|$0ID$H9t'H=R>覧H{H5B>HS)LUHT$8Ht$0H{2)H|$0ID$H9tn'H=>RH{H5>H(LHT$8Ht$0H{(H|$0ID$H9t'H=܈>H{H5̈>H(H{/H=Lj>ЦH{H5>H}(H{~/H=>袦H{H5>HO(H{P/|$t>H{0!1HLIHT$8Ht$0L(H|$0IL9tK&H|$Hs--HE$HD$H[]A\A]A^A_HUH UH-UH:UHGUHTUHaUHuUHUHTff.AVIAUIATUSHHH#HD$H@HH{8sCH}H"H$ 1LIH H$(H$ L&H$ HCH9t%H} H5 >&AHHH$(H$ H}&H$ HCH9t$H} H5ن>d&L$L"AI|$,It$Hp+L"H$(H}H$ &H$ HCH9tI$H} H5f>%Hw"AH{,HsL*H"H$H}H$%H$IL9t#HuL*H!HİL[]A\A]A^@H`%H H@0H;"He&HHIe$Ht$LD$"N$Ht$HD$:7$1H5:>HI#$HuhL1H5:>H$H=Ƹ :H{H5 H#Ht$H{D$"#H5X>HI#Ht$LD$"#Ht$HD$:#1H5:>HIv#HupL1H59>HY#H= 荡H{H5 H:#Ht$H{D$""#H5>HI #Ht$LD$""Ht$ HD$ :"1H5h9>HI"HuxLM1H5H9>H"H=l ࠨH{H5\ H"Ht$ H{D$ "u"H5A HI^"Ht$ LD$ "G"Ld$ HD$ :L-"1H58>HI"HL1H58>H!H1H5>Ha1H5>H0LHH5{>D$ 1LHH5b>D$ Ѭ1LHH5I>D$ 賬1LHH53>D$ 蕬H3HL3HHĠL[]A\A]A^HOff.@ATUSH~ FH݈>HHHcHfHĐH[]A\@HĐH[]A\@IL0LHzLH/3LHĐH[]A\{HĐH[]A\ÿbH56>HH`NHNHNff.AWIAVAUATUSHLl$0H|$L/LRUD$,HD$,LHH5>HHD$ L2U1HH5>LD$,L"U1HH5>LD$,ʪLU1HH5t>LD$,說LUH=" D$萝I}H5 H=Ht$$I}D$$"%H=(>HVH5>HHHt$%HD$%"Ht$&HD$&:H=c5>HH5T5>HHfHZD$S$H=05>HԜH5!5>HHL:TH=: D$訜I}H5$ HUHt$'I}D$'"=H=F>HnH57>HHHt$(HD$("Ht$)HD$):H={4>HH5l4>HHfHZD$k#H=H4>H웨H594>HHLbS1H5~>LI/M4$1ImM9t$tmD1H53>HWA6H\$1H53>H;I$ID$HH)HH9s"L4HtH5Ա HLx/LRLt$1LD$,H5}>LH= I/I}H5 HHt$*I}D$*"H=}>HʚH5}>HHxHt$+HD$+"aLHD$,:LH=2>H}H52>HH+E H!H=2>HOH52>HHH|$L.LHHD$H[]A\A]A^A_HJfATIUHSHH\$H+HHH5|> HU1H5|>HHU1H5|>HHU1H5|>ḨHL-HZH|$pHPHT$HPhH@HD$H~D$H$HHD$HCpD$)D$ H9t9HH{PHHD$(HHHPHH0HRHLHP HH(HT$ HRHL HPH@HT$HRHDHHD$HH$HĠL[]A\HIff.fAWIAVMAUIATIUSHHl$@H\$ HL$H)LHHt$H}D$"H=E{>IH56{>LHHt$LD$"Ht$HD$:H='0>I˗H50>LHyHT$(Ht$ LgH=/>I蘗H5/>LHFH|$ HCH9tLHH= \H}H5ح H Ht$H}D$"H= I"H5LHHt$LD$"Ht$HD$:H=//>IӖH5 />LHHT$(Ht$ LoH=.>I蠖H5.>LHNH|$ HCH9tHt$HH= bH}H5ެ HHt$H}D$"H=Yy>I(H5Jy>LHHt$LD$"Ht$HD$:H=5.>IٕH5&.>LHHT$(Ht$ LuH=.>I覕H5->LHTH|$ HCH9tLHvH= jH}H5 HHt$H}D$"H=;"I0H5,"LHHt$LD$"Ht$HD$:H==->IᔨH5.->LHHT$(Ht$ L}H= ->I讔H5,>LH\H|$ HH9tHL(HHL[]A\A]A^A_I EIEIEIDI#EfAVAUATUHH5Kw>SHEHtIHH@MMA|$8At$CLO H' H5v>HIp%IH)H LLHCI$H@MMA}8AuCLE1 H(DAuCLI HI HDH@HD 腢IHH! LHH H5#v>HHBDHHPHڋBHB%BIHH@MM0A}8:LBIE H@0H;LHHxHߋw KfDE1&AvCLI HgI HDH@HD eIHH LHHH5u>HoH>HBYDpHPHڋBHB%BH5t>IH!IEH@MMA~8LI H@0H;LHHxHߋw +fDH[]A\A]A^@LI$ H@0H;<LfLhIE H@0H;$LI$HxLw PAV AUATIUHH5s>S1H IMu~GLHT$H4$LH<$L9tP9H9I$H@IH({8sCL$H HHa H5r>L=L?HHH@HH{8sCHH H L[]A\A]A^fDH5#LH9$HH H@0H;U#HfHH H@0H;%YHLH?DAWIH5q>AVIAUATUSHIH@IH{8YsCLME1H{ A@0sCHAIqHI E9@~XLLHHH@HHh{8uH|H H@0H; tHDH5q>L4IH@IH {8sCLH LHHHH@HH{8sCHHZ HL[]A\A]A^A_HH H@0H;E H}fHxH H@0H; AH4fHHH H@0H; UHHMff.fAVIAUIATIUSHHHx H{H5o> A$H{dH5#HH H5o>H HEAD$HH@HDHaA}A}A}uDA}tIt$@H{H'HsL[Hs HĐL[]A\A]A^H=qo>4H{H5ao>H AD$0H{H=#HH5#HH H==o>䊨H51o>HH HEAD$8HH@HD"Hj!DH=n>蔊H{H5n>HA AD$ H{H=r#HbH5c#HH H=hn>DH5\n>HH HEAD$(HH@HDHzDH=m>H{H5m>H AD$H{AH=Ґ#H‰H5Ð#HHp H=m>褉H5m>HHR HEAD$HH@HDH*Hv:ff.fATUHSHHv ] H5 HI HsL: H5 HI HsL H5r HI s LH5O HI} s LH[]A\fAUL- ATE1UHSHH~.@JtXHILH D9֋~AE1L- f.JHI<LH D9Ӌ(~>E1L-v JHILH D9(Ӌp~>E1L-. J0HILH< D9pӋ~>E1L- JxHIdLHD9ӋsTHH5 Hs HH5{ Hs HHH[]A\A]fAVL5N AUATIH=)k>USHH0諆H5k>LHYH=LWH?H=j>HpH5j>HHH=HHH=s>H5H5s>HHH[=HI HH=j>HH5pj>HHH$=HI HvH=r>H觅H5r>HHUH>HI GH/H= j>H`H5i>HHHEHHPHBHB%BZ HH=i>HH5i>HHHEHHPHBHB%B/ HgH=qi>H蘄H5bi>HHFHEHHPHBHB%B;H^zs>Z HH5#i>HH;LhH(I9.f.uLH LHI9uLH=q>HՃH5p>HHH[;H HiH=h>H蚃H5h>HHHHH_H5bh>HH HH$H54h>HHHZH邨H5 h>HHH/H谂H5g>HH^HHwH5g>HH%H;H H H=g>H>H5g>HHH;H HH=g>HH5g>HHH;HI HH=o>H辁H5o>HHlHd;H HTH=o>H腁H5n>HH3H;;HHH=n>HLH5n>HHH;HHH=n>HH5n>HHH:HaHH=n>HڀH5n>HHH:HD$9fD$H*YHPH=n>H聀H5n>HH/H:HD$9fD$H*YHH=n>H(H5n>HHH:HD$P9fD$H*YVHH=on>HH5`n>HH}H9HD$8fD$H*YHEH=Fn>HvH57n>HH$H9HH H=5n>H=H5&n>HHH9HHH=d>HH5d>HHHj:HRHH=d>I~LH5yd>HyH7Hl$N/HD$HufD$ Ht$FAD$#L2H*H=.d>I[~H5d>LH Ha8HD$5T$ZH^T$w5ZYD$LYr1>mHH=c>I}H5c>LHH7L4H|H=c>I}H5c>LH[IEHHPLBHB%B7HD$4ZYD$LY*>Ygl>HH|$HH9t7H0L[]A\A]A^HHl$8H5HHH _{3HT$Ht$ZH-ff.AUATIUHSHH\$HH{ H5b>FA4$H{H{H5b>#At$H{dH{H5b>At$H{@H{ H5rb>At$H{HD$PLeHELeEH:LD$@HL$HL9I)11HX HH|$pHPHT$HPhH@HD$HG~D$H$HHD$HCpD$)D$ H9tH1H{PHHD$(HHHPHH0HRHLHP HH(HT$ HRHL HPH@HT$HRHDH-HD$HH$+HĨH[]A\A]f.H)11HIN fHs`HdI+H+ff.@AUATIUHSHH\$HH{LHD$PLeHELeEH-LD$@HL$HL9I)11H̴HH|$pHPHT$HPhH@HD$H~D$H$HHD$HCpD$)D$ H9tHtH{PHHD$(ZH+HHPHH0HRHLHP HH(HT$ HRHL HPH@HT$HRHDHpHD$HH$nHĨH[]A\A]DH)11HI˴Hs`H贩IL*HU*ff.@AVAUIATUSHHHl$H H}H5Y>TLc@Lu@H3LH5 H)HI9uH}H5A8! HD$PI]AEI]IEH8LD$@HL$HL9I)11LʴHH|$pHPHT$HPhH@HD$H~D$H$HHD$HEpD$)D$ H9tHoH}PHHD$(UH&HHPHH0HRHLHP HH(HT$ HRHL HPH@HT$HRHDHkHD$HH$iHĠL[]A\A]A^fDH)11LIɴfHu`L褧I](Ic(ff.@AUIATIUSHH\$ HH=\>vH{H5\>HH=\>bvH{H5\>HAt$TH{H=\>5vH{H5\>HHIt$XHBHT$H4$H{H<$HEH9tH=\>uH{H5o\>HI$HHT$H4$H{mH<$HEH9tH=?\>uH{H5/\>HHI$0HIHT$H4$H{H<$HEH9tH=[>tH{H5[>HI$xHHT$H4$H{tH<$HEH9tH=[>tH{H5o[>HCI$HHT$H4$H{!H<$HEH9t_H= >CtH{H5 >HLHHT$H4$H{H<$HH9tHsLH HĸL[]A\A]I%Ip%Ih%I`%IX%IP%IH%I@%ff.AWAVAUATIUSHL|$@H|$LIH5LZ>It$I+t$IH.袋.HH{Il$E1E1I9l$HD$ I_HD$HD$0HD$DH5Z>HLLH&H5Z>HuHH5Y>HcH|$HuHT$(Ht$ HCH|$ H;|$tH5Y>HfHZEPIl$ID$IIXH.袋.H)HHI9%IH5Y>It$0I+t$(IH.袋.HH3Il$(I9l$0HD$ E1I_E1HD$HD$0HD$DH5Y>HLYLHH5X>H:uH?H5X>HH|$Hu}HT$(Ht$ HH|$ H;|$t:H5{X>HfHZEPuIl$(ID$0IIXH.袋.H)HHI9%H|$IwLHD$H[]A\A]A^A_H~"H"HV"ATUS~FHXZ>HHcH@H[]A\SH[]A\LgL'H=]G>5pHHwLHu6CLHkHA,[]A\ÐKH[]A\˜H[]A\Ht!fHxKHxBHkHILHH5F>L#돿wH5>HHu!H=r H!f.fLOLH)H9HFL9w5´PHLH5>q"H=O"1IfHcG xHH5^>Mt HMDHH=MuHMHHMH= HΐHpMHpjMHkMHhMiMH=%MXH1MHff.Ðff.ATH=>IUHS HtCHǹH5U]>HthH5J]>HA$H=/>H1Ht$H5/]>HuE[]A\A$fDH5\>HtcH5\>HE[]A\fDH5\>Hu"A$7fE[]A\H- H5N\>H1H54>HH57\>HHlHHHnLH5j\>HZHEH@H(H{8CCHHH=[>JlH-H5[>HHH=~>%lH5r>HHH=w[>lH5k[>HHHH:H=[>HkH5[>HHHHH HP0+Gff.1Ðff.Ðff.Ðff.Ðff.wff.w ff.Ðff.fHGPG@Ðff.7Ðff.wff.9wÐ9w ÐHwHGHHGff.HwG HHWHHOÐff.Ðff.HcG H ѐHUSPH5>HH5HCff.AUATIUSHHHH-HEEwHI|LH53Y>LH1C EEC x H[]A\A]ÿMH5~>HHKHff.HGHWÐfDHySHHHHGHHGH7fogY>HǃHH[ff.SH'Hfo(Y>HǃHH[Ðff.AWAVAUATUSHH(H$IHL$HfoX>LHǃHHLHLLILc JD5L9HHIDHJ<1LHLHEHL9HHID) HH|$HHPHHIDfoL$)KH([]A\A]A^A_@H=S@ML9wHHLXHHLHL fH=@ML9wHHt\LHHtpHHLfLxHLLHHtfLHHHLHH뗿RH5=HIP21H5b=HI/'H5A=HIH5 =HIߙH5=HIߙwH5=HIߙ@gHdH\HTHLHDH<HAWAVAUATUHSHLs(L{HHHGZHHfLsCHC C(Hk8HC@HCHHCPCXHChHH9I@ILHD$~D$IILchIflCXfLxIHuHk Lc`AH1H T>LiH[]A\A]A^A_f.E1ޙH~HUSHH=tH=H[]H@HHþHqƃH=3HHYÐfHWHG H9t HATfUSLg`HHoXG@HGPI9t @HHI9uHkXHt @HH{H(H9t []A\d@[]A\f.SH7HܑHH[ÐfDATUSHf/>SID$#ID$pL$H@Pff9>I$**YYYYAX$XA$Y >{ %Nf(fTf.v3H,ff(-, fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,}ܙH5=HH{ۙVI$AX$A$HDff.ATUSHf/>SID$cID$pL$H@Pffy>I$**YYYYAX$XA$Y +> %Mf(fTf.v3H,ff(-* fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,ڙH5=HHٙI$AX$A$Hff.ATUSHf/ >SIBD$裭ID$pL$H@Pff>I$**YYYYAX$XA$Y k> %[Kf(fTf.v3H,ff(-() fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,ؙH5.=HHי"I$AX$A$Hff.ATUSHf/@ >SID$ID$pL$H@Pff>I$**YYYYAX$XA$Y >; %If(fTf.v3H,ff(-h' fUf(H*fTXfVX H[]A\ÐfD>I$*YYXf*YYƒtOXH,=יH5n=HH;֙I$AX$A$Hvff.ATUSHf/ >SID$#ID$pL$H@Pff9>I$**YYYYAX$XA$Y >{ %Gf(fTf.v3H,ff(-% fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,}ՙH5=HH{ԙI$AX$A$Hff.ATUSHf/>SID$cID$pL$H@Pffy >I$**YYYYAX$XA$Y + > %Ff(fTf.v3H,ff(-# fUf(H*fTXfVX H[]A\Ðf >I$*YYXf*YYƒtOXH,әH5=HHҙT I$AX$A$HB ff.ATUSHf/>SICD$裦ID$pL$H@Pff >I$**YYYYAX$XA$Y k > %[Df(fTf.v3H,ff(-(" fUf(H*fTXfVX H[]A\Ðf >I$*YYXf*YYƒtOXH,љH5.=HHЙ I$AX$A$H ff.ATUSHf/@>SID$ID$pL$H@Pff >I$**YYYYAX$XA$Y >; %Bf(fTf.v3H,ff(-h fUf(H*fTXfVX H[]A\ÐfD >I$*YYXf*YYƒtOXH,=ЙH5n=HH;ϙ I$AX$A$H ff.ATUSHf/>SID$#ID$pL$H@Pff9>I$**YYYYAX$XA$Y >{ %@f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,}ΙH5=HH{͙I$AX$A$Htff.ATUSHf/>SIDD$cID$pL$H@Pffy>I$**YYYYAX$XA$Y +> %?f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,̙H5=HH˙I$AX$A$Hff.ATUSHf/=SID$裟ID$pL$H@Pff>I$**YYYYAX$XA$Y k> %[=f(fTf.v3H,ff(-( fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,ʙH5.=HHəRI$AX$A$H@ff.ATUSHf/@=SID$ID$pL$H@Pff>I$**YYYYAX$XA$Y >; %;f(fTf.v3H,ff(-h fUf(H*fTXfVX H[]A\ÐfD>I$*YYXf*YYƒtOXH,=əH5n=HH;șI$AX$A$Hff.ATUSHf/=SIED$#ID$pL$H@Pff9>I$**YYYYAX$XA$Y >{ %9f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf>I$*YYXf*YYƒtOXH,}ǙH5=HH{ƙI$AX$A$H ff.ATUSHf/=SID$cID$pL$H@Pffy=I$**YYYYAX$XA$Y += %8f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,řH5=HHęI$AX$A$Hrff.ATUSHf/=SID$裘ID$pL$H@Pff=I$**YYYYAX$XA$Y k= %[6f(fTf.v3H,ff(-( fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,ÙH5.=HH™I$AX$A$Hff.ATUSHf/@=SID$ID$pL$H@Pff=I$**YYYYAX$XA$Y =; %4f(fTf.v3H,ff(-h fUf(H*fTXfVX H[]A\ÐfD=I$*YYXf*YYƒtOXH,=™H5n=HH;PI$AX$A$H>ff.ATUSHf/=SIFD$#ID$pL$H@Pff9=I$**YYYYAX$XA$Y ={ %2f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,}H5=HH{I$AX$A$Hff.ATUSHf/=SIGD$cID$pL$H@Pffy=I$**YYYYAX$XA$Y += %1f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,轾H5=HH軽I$AX$A$H ff.ATUSHf/=SIHD$裑ID$pL$H@Pff=I$**YYYYAX$XA$Y k=~ %[/f(fTf.v3H,ff(-( fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,H5.=HHI$AX$A$Hpff.ATUSHf/@=SID$ID$pL$H@Pff=I$**YYYYAX$XA$Y =;} %-f(fTf.v3H,ff(-h fUf(H*fTXfVX H[]A\ÐfD=I$*YYXf*YYƒtOXH,=H5n=HH;I$AX$A$Hff.ATUSHf/=SIID$#ID$pL$H@Pff9=I$**YYYYAX$XA$Y ={{ %+f(fTf.v3H,ff(- fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,}H5=HH{NI$AX$A$H % f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfD=I$*YYXf*YYƒtOXH,=|H5n=HH;{@I$AX$A$H.ff.ATUSHf/=SIbD$#OID$pL$H@Pff9=I$**YYYYAX$XA$Y ={< % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,}zH5=HH{y馻I$AX$A$H锻ff.ATUSHf/=SID$cMID$pL$H@Pffy=I$**YYYYAX$XA$Y +=: % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðfı=I$*YYXf*YYƒtOXH,xH5=HHw I$AX$A$Hff.ATUSHf/=SID$KID$pL$H@Pff=I$**YYYYAX$XA$Y k=8 %[ f(fTf.v3H,ff(-(fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,vH5.=HHurI$AX$A$H`ff.ATUSHf/@=SID$IID$pL$H@Pff=I$**YYYYAX$XA$Y =;7 % f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfD=I$*YYXf*YYƒtOXH,=uH5n=HH;tضI$AX$A$Hƶff.ATUSHf/=SID$#HID$pL$H@Pff9=I$**YYYYAX$XA$Y ={5 % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,}sH5=HH{r>I$AX$A$H,ff.ATUSHf/=SID$cFID$pL$H@Pffy=I$**YYYYAX$XA$Y +=3 % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\ÐfĪ=I$*YYXf*YYƒtOXH,qH5=HHp餳I$AX$A$H钳ff.ATUSHf/=SID$DID$pL$H@Pff=I$**YYYYAX$XA$Y k=1 %[ f(fTf.v3H,ff(-(fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,oH5.=HHn I$AX$A$Hff.ATUSHf/@=SID$BID$pL$H@Pff=I$**YYYYAX$XA$Y =;0 % f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfD=I$*YYXf*YYƒtOXH,=nH5n=HH;mpI$AX$A$H^ff.ATUSHf/=SID$#AID$pL$H@Pff9=I$**YYYYAX$XA$Y ={. % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðf=I$*YYXf*YYƒtOXH,}lH5=HH{k֮I$AX$A$HĮff.ATUSHf/=SIcD$c?ID$pL$H@Pffy=I$**YYYYAX$XA$Y +=, % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðfģ=I$*YYXf*YYƒtOXH,jH5=HHiH5.\=HH=2I$AX$A$H ff.ATUSHf/@q=SID$ID$pL$H@Pffv=I$**YYYYAX$XA$Y v=; % f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfDv=I$*YYXf*YYƒtOXH,==H5nZ=HH;<阃I$AX$A$H醃ff.ATUSHf/o=SIoD$#ID$pL$H@Pff9u=I$**YYYYAX$XA$Y t={ %ۭ f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðft=I$*YYXf*YYƒtOXH,};H5X=HH{:I$AX$A$H쁝ff.ATUSHf/m=SIpD$cID$pL$H@Pffys=I$**YYYYAX$XA$Y +s= % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðfr=I$*YYXf*YYƒtOXH,9H5V=HH8dI$AX$A$HRff.ATUSHf/l=SID$ ID$pL$H@Pffq=I$**YYYYAX$XA$Y kq= %[ f(fTf.v3H,ff(-(fUf(H*fTXfVX H[]A\Ðfq=I$*YYXf*YYƒtOXH,7H5.U=HH6~I$AX$A$H~ff.ATUSHf/@j=SIqD$ ID$pL$H@Pffo=I$**YYYYAX$XA$Y o=; % f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfDo=I$*YYXf*YYƒtOXH,=6H5nS=HH;50}I$AX$A$H}ff.ATUSHf/h=SIrD$# ID$pL$H@Pff9n=I$**YYYYAX$XA$Y m={ %ۦ f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðfm=I$*YYXf*YYƒtOXH,}4H5Q=HH{3{I$AX$A$H{ff.ATUSHf/f=SIsD$cID$pL$H@Pffyl=I$**YYYYAX$XA$Y +l= % f(fTf.v3H,ff(-fUf(H*fTXfVX H[]A\Ðfk=I$*YYXf*YYƒtOXH,2H5O=HH1yI$AX$A$Hyff.ATUSHf/e=SID$ID$pL$H@Pffj=I$**YYYYAX$XA$Y kj= %[ f(fTf.v3H,ff(-(fUf(H*fTXfVX H[]A\Ðfj=I$*YYXf*YYƒtOXH,0H5.N=HH/bxI$AX$A$HPxff.ATUSHf/@c=SID$ID$pL$H@Pffh=I$**YYYYAX$XA$Y h=; % f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfDh=I$*YYXf*YYƒtOXH,=/H5nL=HH;.vI$AX$A$Hvff.ATUSHf/a=SID$#ID$pL$H@Pff9g=I$**YYYYAX$XA$Y f={ %۟ f(fTf.v3H,ff(-}fUf(H*fTXfVX H[]A\Ðff=I$*YYXf*YYƒtOXH,}-H5J=HH{,.uI$AX$A$Huff.ATUSHf/_=SItD$cID$pL$H@Pffye=I$**YYYYAX$XA$Y +e= % f(fTf.v3H,ff(-{fUf(H*fTXfVX H[]A\Ðfd=I$*YYXf*YYƒtOXH,+H5H=HH*sI$AX$A$Hsff.ATUSHf/^=SIuD$ID$pL$H@Pffc=I$**YYYYAX$XA$Y kc= %[ f(fTf.v3H,ff(-(zfUf(H*fTXfVX H[]A\Ðfc=I$*YYXf*YYƒtOXH,)H5.G=HH(qI$AX$A$Hqff.ATUSHf/@\=SIvD$ID$pL$H@Pffa=I$**YYYYAX$XA$Y a=; % f(fTf.v3H,ff(-hxfUf(H*fTXfVX H[]A\ÐfDa=I$*YYXf*YYƒtOXH,=(H5nE=HH;'`pI$AX$A$HNpff.ATUSHf/Z=SID$#ID$pL$H@Pff9`=I$**YYYYAX$XA$Y _={ %ۘ f(fTf.v3H,ff(-vfUf(H*fTXfVX H[]A\Ðf_=I$*YYXf*YYƒtOXH,}&H5C=HH{%nI$AX$A$Hnff.ATUSHf/X=SID$cID$pL$H@Pffy^=I$**YYYYAX$XA$Y +^= % f(fTf.v3H,ff(-tfUf(H*fTXfVX H[]A\Ðf]=I$*YYXf*YYƒtOXH,$H5A=HH#,mI$AX$A$Hmff.ATUSHf/W=SID$ID$pL$H@Pff\=I$**YYYYAX$XA$Y k\= %[ f(fTf.v3H,ff(-(sfUf(H*fTXfVX H[]A\Ðf\=I$*YYXf*YYƒtOXH,"H5.@=HH!kI$AX$A$Hkff.ATUSHf/@U=SIwD$ID$pL$H@PffZ=I$**YYYYAX$XA$Y Z=; % f(fTf.v3H,ff(-hqfUf(H*fTXfVX H[]A\ÐfDZ=I$*YYXf*YYƒtOXH,=!H5n>=HH; iI$AX$A$Hiff.ATUSHf/S=SIxD$#ID$pL$H@Pff9Y=I$**YYYYAX$XA$Y X={ %ۑ f(fTf.v3H,ff(-ofUf(H*fTXfVX H[]A\ÐfX=I$*YYXf*YYƒtOXH,}H5<=HH{^hI$AX$A$HLhff.ATUSHf/Q=SID$cID$pL$H@PffyW=I$**YYYYAX$XA$Y +W= % f(fTf.v3H,ff(-mfUf(H*fTXfVX H[]A\ÐfV=I$*YYXf*YYƒtOXH,H5:=HHfI$AX$A$Hfff.ATUSHf/P=SID$ID$pL$H@PffU=I$**YYYYAX$XA$Y kU= %[ f(fTf.v3H,ff(-(lfUf(H*fTXfVX H[]A\ÐfU=I$*YYXf*YYƒtOXH,H5.9=HH*eI$AX$A$Heff.ATUSHf/@N=SID$ID$pL$H@PffS=I$**YYYYAX$XA$Y S=; % f(fTf.v3H,ff(-hjfUf(H*fTXfVX H[]A\ÐfDS=I$*YYXf*YYƒtOXH,=H5n7=HH;cI$AX$A$H~cff.ATUSHf/L=SIyD$#ID$pL$H@Pff9R=I$**YYYYAX$XA$Y Q={ %ۊ f(fTf.v3H,ff(-hfUf(H*fTXfVX H[]A\ÐfQ=I$*YYXf*YYƒtOXH,}H55=HH{aI$AX$A$Haff.ATUSHf/J=SIzD$cID$pL$H@PffyP=I$**YYYYAX$XA$Y +P= % f(fTf.v3H,ff(-ffUf(H*fTXfVX H[]A\ÐfO=I$*YYXf*YYƒtOXH,H53=HH\`I$AX$A$HJ`ff.ATUSHf/I=SI{D$ID$pL$H@PffN=I$**YYYYAX$XA$Y kN= %[ f(fTf.v3H,ff(-(efUf(H*fTXfVX H[]A\ÐfN=I$*YYXf*YYƒtOXH,H5.2=HH^I$AX$A$H^ff.ATUSHf/@G=SI|D$ID$pL$H@PffL=I$**YYYYAX$XA$Y L=; % f(fTf.v3H,ff(-hcfUf(H*fTXfVX H[]A\ÐfDL=I$*YYXf*YYƒtOXH,=H5n0=HH;(]I$AX$A$H]ff.ATUSHf/E=SI}D$#ID$pL$H@Pff9K=I$**YYYYAX$XA$Y J={ %ۃ f(fTf.v3H,ff(-afUf(H*fTXfVX H[]A\ÐfJ=I$*YYXf*YYƒtOXH,}H5.=HH{[I$AX$A$H|[ff.ATUSHf/C=SI~D$cID$pL$H@PffyI=I$**YYYYAX$XA$Y +I= % f(fTf.v3H,ff(-_fUf(H*fTXfVX H[]A\ÐfH=I$*YYXf*YYƒtOXH,H5,=HHYI$AX$A$HYff.ATUSHf/B=SID$ID$pL$H@PffG=I$**YYYYAX$XA$Y kG= %[ f(fTf.v3H,ff(-(^fUf(H*fTXfVX H[]A\ÐfG=I$*YYXf*YYƒtOXH, H5.+=HH ZXI$AX$A$HHXff.ATUSHf/@@=SID$ID$pL$H@PffE=I$**YYYYAX$XA$Y E=; %~ f(fTf.v3H,ff(-h\fUf(H*fTXfVX H[]A\ÐfDE=I$*YYXf*YYƒtOXH,= H5n)=HH; VI$AX$A$HVff.ATUSHf/>=SID$#ID$pL$H@Pff9D=I$**YYYYAX$XA$Y C={ %| f(fTf.v3H,ff(-ZfUf(H*fTXfVX H[]A\ÐfC=I$*YYXf*YYƒtOXH,} H5'=HH{ &UI$AX$A$HUff.ATUSHf/<=SID$cID$pL$H@PffyB=I$**YYYYAX$XA$Y +B= %{ f(fTf.v3H,ff(-XfUf(H*fTXfVX H[]A\ÐfA=I$*YYXf*YYƒtOXH,H5%=HHSI$AX$A$HzSff.ATUSHf/;=SID$ID$pL$H@Pff@=I$**YYYYAX$XA$Y k@= %[y f(fTf.v3H,ff(-(WfUf(H*fTXfVX H[]A\Ðf@=I$*YYXf*YYƒtOXH,H5.$=HHQI$AX$A$HQff.ATUSHf/@9=SID$ID$pL$H@Pff>=I$**YYYYAX$XA$Y >=; %w f(fTf.v3H,ff(-hUfUf(H*fTXfVX H[]A\ÐfD>=I$*YYXf*YYƒtOXH,=H5n"=HH;XPI$AX$A$HFPff.ATUSHf/7=SID$#ID$pL$H@Pff9==I$**YYYYAX$XA$Y <={ %u f(fTf.v3H,ff(-SfUf(H*fTXfVX H[]A\Ðf<=I$*YYXf*YYƒtOXH,}H5 =HH{NI$AX$A$HNf.@UHSHHt HH)HHw=HEHuHEH]H[]Hu3H]H[]@HxEHzHt$]H]Ht$HEHHHEH]H[]H=FH=f.AWHGxAVAULATLgXUHo`SHGQH$~$GHfflf/HHGOHG Lg(HG0HG8HG@HGPHGXHohHo`HGpWxHLJLHLJHLJHLJHLJHLJwf/ PwH[]A\A]A^A_HSH5v=HIQLIL@AWL`AVAUATUSHH_`I9AL5L-;"#At$CHHzHI9H5v=LHSHsLLHHs4HLHHys8H~LHH[s3It$IT$H|$`LoMt$,E|$(H|$ HLl$`HD$0HD$HD$@HD$0HD$`L9HD$0HD$pHD$@HD$hHt$Lt$XD|$THD$8D$D$PHC(HHD$PIHHLh8L{`2IHxH@ ID$IuIUHBAE0AE@LLAD$0AE4AD$4AE8AD$8AEt}t;LQAH HLxHqHpLALpyxHYAH HHxLILHHQHpDQDPE9HqAHH@HLALHyHYLILXHQH`LQLPqLALHyHHYHDID(HQHxLQLPHqHpDAD@E9CÅuuLDLH8EL-HAUÅuKAW1HĨ[A\A]A^A_]ÐLPH =11H~=H==&}AwnHHHDžHHHHtV@L%qHA$ÅuAn1LHELH0HHHL0HItM&H1LL0ܘL0+HyAHxHYHXL LQIJ@PHI DfDL1FKÅVff.UIHAWAAVAUEATISHH8HGLPH HEtMBAwMFMZM^AJAANIIJ(IAz IA~HAtALQAH(HLxHyHxYXLILpqpLAAH(HLxHQHPDQDPHyHpYXE9LIAHH@LHpHDxDH`HDQDHyHXHYH`DIDhHqHPDADHQHLQLyȉHYHDID(HqHxLAL@QPLQLpyxE9ÅuzLDLH8EL-EAUÅuPA\1HĨ[A\A]A^A_]fDLPH =11H=H==6yAwnHHHDžHHHHtf@L%qDA$ÅuAi1LHEHLH0HHHL0HItM&H1LL0ؘL0HYAHXLILHqpLLQ IJPPHI L1V[ÅQff.ULOIHAWAVAUIATSHM0E(U,]4u8DE@MHL)ɉTDu<1PD}DLuDEHHLJLHAOA_3DIAAH@fnTIDHIfoA7DEGAEAHHE I A,D_EWAGHDD@HփAG!A(AwAAB]H AE ȃIH@IAOIA TAA+DEEGAADLHHA ܃7DDFAGӃDPAIAOIшDDDAA*EGE_AE ADGAD EGj\DHU@AHpAd}D ΃D`DUHAE1pXD I]tDUI@^LEM)pIHh f.OH8ID9uDEfop111HL}DELhEDm)MDMDkDKM_dDXD`sDCDKENTYSsMH8DCIIO OD Kt KT D9u9DHMDuEAtH I=ENcIA㋍TDPLAL$`E\$dA|$l`fH}]HEzH}DUHt DEDUHĘD[A\A]A^A_]@]dDX`^CDSSADŽ$ADŽ$@AADžtD}uADž 1(ADžsADžkADžjADžiADžhADžfADžeADždsADžccADžoSADžnCADžm3ADžl#ADžqADžpADžrADžbADžaADž`ADž_ADž^ADž]ADž\ADž[sADžZcADžYSADžXCADžW3ADžV#ADžUADžTADžSADžRADžQADžPADžOADžNADžMADžLADžKsADžJcADžISADžHCADžG3ADžF#ADžEADžDADžCADžBADžAADž@ADž?ADž>ADž=ADž<ADž;sADž:cADž9SADž8CADž73ADž6#ADž5ADž4ADž3ADž2ADž1ADž0ADž/ADž.ADž-ADž,ADž+sADž*cADž)SADž(CADž'3ADž&#ADž%ADž$ADž#ADž"ADž!ADž ADžADžADžADžADžsADžcADžSADžCADž3ADž#ADžADžADžADžADžADžADžADž ADž ADž ADž sADž cADžSADžCADž3ADž#ADžADžADžADž 1(Et"PDd`KD[{RFt=dDPD`@sDCDKADŽ$E Du"PDTLCDSSGPDTL\KD[{ADŽ$fUHAVAAUATSHH胾[HboCHSEL@oK HKHEoS0Hs`Ho[PochHXokxoHMHH])`)pHu)e)m)uH}H@H0P`S@Hxp'Aąt@HDž@LH@HtD詻HeD[A\A]A^]f蛝H8P`Hxp³AąuHEE1ɾAPH0E1LH8PAXZEtaAL@QH =H=11H==AL@i UHAWIAVAAUATSHH込fHmoCHSEL0oK HKHEoS0Hs`8o[PochHHokxoHuHH)P)`Hpx)e)m)uH}H02H P`S@Hxp\Aąt=HDž0LH0HtD޹HeD[A\A]A^A_]@ӛH(P`HxpAąuHEƾLAPH AMH(腷AXZEtafDAL0LH =H.=11H=5=AL0gUHATISHH5{C=H9wt%1H =1H==gH[A\]H OC=9O u̓? w5H>=Hc=Kc4LH{(H5B=CƘAH{ H5B=#ƘAA$ oKH}A)L$H[ I\$ HU1IT$(H[A\]A$ LC1MD$A$ oS1A)T$o[ A)\$ oc0A)d$0ok@A)l$@osPA)t$Po{`A)|$`oCpA)D$pLM$mDA$ DoC1E)D$HK IL$ D@A$DoKE)L$HC ID$ 1@A$H{1I|$A$LS1MT$A$1A$L[1M\$sAt$A$HS1IT$H[I\$A$H}gvLCL]MD$LKML$K AL$ C$AD$$H{(1I|$(LS0M\$8MT$0+A$H}1IL$ H{ 1ͭHu1It$DA$H}HEwH}It$ID$HHSI|$P}SAT$DCED$DK EL$ K$AL$$C(AD$({,1A|$,DS0ET$0L[8M\$8H[@I\$@1HxH5}?=˜A`DH{H5X?=˜A;H{8H50?=˜ALLL3 ?=L3 ?=M LHL3>=H35>=L aHHH3 >=H3>=H =H3>=H LCLKL3}>=L3 ~>=M `H{HH5P>=A3fDff.fUHAUATS1H謕@`tH[A\A]]LeLbP`HxxtKLmLYÅuc^P`HxpHuޫHt1HAÅu;H21Åu*L1PbwP`Hxx:ÅtאL(bLHEH}H7IJ+ff.@UHAVAUATS1H誔@`tH[A\A]A^]LeLaP`HxxtuLmHELQÅRP`HxpHuҪIHtJH2Åu\'P`HPxztH0I~Åu7L1&aOP`Hxx9ÅtfL`LHEȾH}H 蔱ff.@UHSHbuH/ÅuH[]fDH}HE]H}HtՉ-H[]@UHSHuH/ÅuH[]fDH}HEH}HtՉͰH[]@UHAUIATASH蘲u$H]/LDÅuH[A\A]]fH}HE荽H}HtՉ]H[A\A]]UHAUIATASH(u$H.LDÅuH[A\A]]fH}HEH}HtՉH[A\A]]UHAUAATISH踱u$H.DLÅuH[A\A]]fH}HE譼H}HtՉ}H[A\A]]UHAUAATISHHu$H.DLÅuH[A\A]]fH}HE=H}HtՉ H[A\A]]UHATISHݰu!H-LÅuH[A\]@H}HEջH}HtՉ襮H[A\]f.UHATISHmu!H*-LÅuH[A\]@H}HEeH}HtՉ5H[A\]f.UHATISHu!H,LÅuH[A\]@H}HEH}HtՉŭH[A\]f.UHATASH药u!HB,DÅuH[A\]@H}HE腺H}HtՉUH[A\]f.UHATASHu!H+DÅuH[A\]@H}HEH}HtՉH[A\]f.UHATASH譮u!HJ+DÅuH[A\]@H}HE襹H}HtՉuH[A\]f.UHAWAAVAAUIATLeSH(H}LHEÅuPH}HuLCÅu5DDHuH}H"ÅuH([A\A]A^A_]LHEH}Htω踫fDUHAWIAVAAUIATLeSH(H}LHE>ÅuPH}HuLÅu5H!E1LDHuH}ÅuH([A\A]A^A_]@LHE8H}Ht҉fDUHAWEAVIAUIATSH]H(H}H߉UHE苬AąuTH}HuLAąu8H9!ELUHuH}AąuH(D[A\A]A^A_]DHHE耷H}HtDOff.fUfHAUIATH}ISHXo HBEHJoR HER0E)MHEM)UUHE蟫uKH}LHuLeÅu2H= LHuLÅuHX[A\A]]fDLeLHE蚶H}HtΉjHX[A\A]]ff.fUfHAUIATH}ISHXo HBEHJoR HER0E)MHEM)UUHE诪uKH}LHuLeÅu2HELHuLÅuHX[A\A]]fDLeLHE誵H}HtΉzHX[A\A]]ff.fUHSHH'ÅuH[]H}HEGH}Ht։H[]ff.UHSHHP'ÅuH[]H}HEH}Ht։跧H[]ff.UHAVAUATSHHIIA芉HkÅt4H}HE{H}HtKH[A\A]A^]@HUHuLiÅuHk&DULuÅuH[A\A]A^]H {=11H{=H={=mU\UHAUAATASH蘨u$H%DDÅuH[A\A]]fH}HE荳H}HtՉ]H[A\A]]UHSHHÅuH[]H}HE7H}Ht։H[]ff.UHSHHÅuH[]H}HEײH}Ht։觥H[]ff.UHAUIATISHXhuTHH}LÅu@foEfoMfoUfo]A$AL$AT$ A\$0HX[A\A]]fDH}HE-H}HtщHX[A\A]]UHATISHPoEoM oU0o]@)E)M)U)]試u=uHLuuuuuuuH@uHe[A\]@H}HE腱H}HtՉUHe[A\]f.UHAUIATISHXuTH%H}LÅu@foEfoMfoUfo]A$AL$AT$ A\$0HX[A\A]]fDH}HEݰH}Htщ譣HX[A\A]]UHAUAATISHXoEoM oU0o]@)E)M)U)]Tu@uHNDLuuuuuuuH@uHe[A\A]]fH}HE-H}HtՉHe[A\A]]UHATISHͤu!HLÅuH[A\]@H}HEůH}HtՉ蕢H[A\]f.H9=OHhH;:4qLBL vOIOALIA9xIItmItVIt?It(ItLIA9xLIA9xLIA9xLIA9xLIA9xLIA9xt|M9|I@L9xtgHIH0A9xtZHIpHA9x0tMHMH`A9xHt@LMXxA9x`t3LIA9xxt#HIA9tIHA9xuHB@H$v=H8=OHH;:4qLBL vOIOALIA9xIItmItVIt?It(ItLIA9xLIA9xLIA9xLIA9xLIA9xLIA9xt|M9|I@L9xtgHIH0A9xtZHIpHA9x0tMHMH`A9xHt@LMXxA9x`t3LIA9xxt#HIA9tIHA9xuHB@Ht=UHHH}诬t fH}臟DUHHH}t fH}wDUHAWAVAUAATASH}H8>ADžt7H}HE&H}HtDH8D[A\A]A^A_]HELuUڀLP`Hxp ADžuHML=HyAADžuHuzADžhEAtcDAv `LP`Hxp菖ADžLEHADA8ADžL-H}AUADžLMDUEDH!=1H=r=1iLH-=1H=r=1MLUHAUATASH(HuȋP`DHxpȕÅuHEL-WHxAUÅt1H}HEhH}Ht8H([A\A]]H}?ÅuHUDÅuP`HHxytHuH~AUtff.fUHAUATSH(HHIH}ÅtAąt7H}HEH}HtDŗHD[A\]fH}zAąuHEH{HHPPHpPHH DHH)H)HH[A\]DH L-!H6l=11H==l=AEHff.@UHATSHHAHyHuP`DHxp>Aąt7H}HEH}HtDŖHD[A\]fH}yAąuHEH{HHPPHpPHHTDHH) H)HH[A\]DH L,!H6k=11H==k=ADHff.@UHSHHÅuH[]H}HEH}Ht։וH[]ff.UIHѺ:/HSHHMÅu H[]@H}HE蟢H}HtىoH[]fDUHIHHHSHH:/HDÅuH[]fDH}HE/H}Ht׉H[]fDUHSHHÅuH[]H}HEסH}Ht։觔H[]ff.UHHHSHH!HDÅu H[]ÐH}HEoH}Ht܉?H[]fDUHSHHÅuH[]H}HEH}Ht։H[]ff.UH HATSHHt@IHt1HuLP`Hxpw@HH1[A\]f.H t)!H^h=1H=gh=1BH}HEqH}Ht >H[A\]UHATISH u)H" 1LÅuH[A\]f.H}HEH}Htω͒H[A\]fUHAUAATISH蘔u$H DLÅuH[A\A]]fH}HE荟H}HtՉ]H[A\A]]UHAVAAUAATISH#u/H0 DDLÅuH[A\A]A^]H}HE H}Ht͉ݑH[A\A]A^]ff.UHAUIATISH蘓u$H=LLÅuH[A\A]]fH}HE荞H}HtՉ]H[A\A]]UHAUIATISH(u$H- LLÅuH[A\A]]fH}HEH}HtՉH[A\A]]UHAUIATISH踒u$H LLÅuH[A\A]]fH}HE譝H}HtՉ}H[A\A]]UHAUIATISHHu$H= LLÅuH[A\A]]fH}HE=H}HtՉ H[A\A]]UHAUIATISHؑu$HLLÅuH[A\A]]fH}HE͜H}HtՉ蝏H[A\A]]UHATISH0HvLH]HuÅuQtqHuP`HxpU衆Åu3HUJHA $H0[A\]DH}H}ȅtDH}HE'H}HtH0[A\]ff.UHATISH0HvLHHuÅuQpHuP`HxpUÅu3HUJHA $H0[A\]DH}gH}ȅtDH}HEwH}HtGH0[A\]ff.UHAUIATISHu$HLLÅuH[A\A]]fH}HEH}HtՉ͍H[A\A]]UHAUIATISH蘏u$H]LLÅuH[A\A]]fH}HE荚H}HtՉ]H[A\A]]UHAUIATISH(u$HLLÅuH[A\A]]fH}HEH}HtՉH[A\A]]UHAUIATISH踎u$HLLÅuH[A\A]]fH}HE譙H}HtՉ}H[A\A]]UHAVIAUIATASHPCÅu=HHUDLÅu$A wH=Jc HfDH}HEH}HtHP[A\A]A^]ËuA6HP[A\A]A^]}fA>fDLELMLUD]MMNMVE^UHAVIAUIATASHPcÅu=HHUDLÅu$A wH=Jc HfDH}HE?H}HtHP[A\A]A^]ËuA6HP[A\A]A^]}fA>fDLELMLUD]MMNMVE^UHAUATSHX w^AH5~=IHcHfDUfÅu8LL%HUDA$ÅuHX[A\A]]H}HEGH}HtɉHX[A\A]]f.f]y@HzDBL LRH}LMLUDEQff.UHAUATSHX w^AH5=IHcHfDUvÅu8LL%HUDA$ÅuHX[A\A]]H}HEWH}Htɉ'HX[A\A]]f.f]y@HzDBL LRH}LMLUDEQff.UHATISH譊u!HjLÅuH[A\]@H}HE襕H}HtՉuH[A\]f.UHATISH=u!HLÅuH[A\]@H}HE5H}HtՉH[A\]f.UHATISH͉u!HZLÅuH[A\]@H}HEŔH}HtՉ蕇H[A\]f.UHAVAAUIATISHSu/HDLLÅuH[A\A]A^]H}HE=H}Ht͉ H[A\A]A^]ff.UHAVAAUIATISHÈu/HpDLLÅuH[A\A]A^]H}HE譓H}Ht͉}H[A\A]A^]ff.UHAWAVAUATSH(HIIIA%Åt7H}HE>H}HtH([A\A]A^A_]D辞HtiHL DH5ٴLxLHEHgHUtH蓞낐H Z=11HZ=H=Z=-4YGfDUHAWAVAUATSH(HIIIA5Åt7H}HENH}HtH([A\A]A^A_]DΝHtiHL DH5LxLHEHoHUtH裝낐H Y=11HY=H=Y==3YGfDUHAWAAVIAUIATISHNu2HDLLLÅuH[A\A]A^A_]fDH}HE5H}Ht͉UHAWAAVIAUIATISH΅u2H;DLLLÅuH[A\A]A^A_]fDH}HE赐H}Ht͉腃UHATISH]u)HL=XtuH[A\]DH}HEMH}HtԉH[A\]fUHATISHu)HjL=XtuH[A\]DH}HEݏH}Htԉ譂H[A\]fUHATISH}u)H21LÅuH[A\]f.H}HEmH}Htω=H[A\]fUHAUIATASHÅuNAu)HDLÅu-H[A\A]]@H'W=11H=V=d0H}HEӎH}Ht裁H[A\A]]fDUHAVAAUIATISHcu/HDLLÅuH[A\A]A^]H}HEMH}Ht͉H[A\A]A^]ff.UHAVAAUIATISHӂu/HhDLLÅuH[A\A]A^]H}HE轍H}Ht͉荀H[A\A]A^]ff.UHAUIATISHHu$HLLÅuH[A\A]]fH}HE=H}HtՉ H[A\A]]UHAUIATISH؁u$H}LLÅuH[A\A]]fH}HE͌H}HtՉH[A\A]]UHSHH=XtuH[]H}HEoH}HtՉ?ff.fUHSHHÅuH[]H}HEH}Ht։~H[]ff.UHATISH譀u!H*LÅuH[A\]@H}HE襋H}HtՉu~H[A\]f.UHAVAUATSHHtLIII.Åu[HLLL=XtuHw3H&=LcIADžpDVDxL^v L]u~ÅuPLL%LA$Åu9HĈ[A\A]]H Q=HNQ=1H=RQ=*HhHDžhXHhHt%|HĈ[A\A]]DDžpLNLx>fDDžpoFxDDžpoNxDDžpoVxDDžpo^xDDžpofxDDžponx}DUHAVAUATSHpHtlo BfIIELeEEEE)ME|ÅuQHLLLÅu9Hp[A\A]A^]H P=11HO=H=O=-)HxHDžx薇HxHtczHp[A\A]A^]@UHAWAVAUATSHHLPH1IIW IH3HLC LK(HLS0HPH{Iw$LXL`LhJ<AątCHHHDžH܆HHHtDyHĘD[A\A]A^A_]S8D[ Hw%H<LcIAfD^ED]vuEzÅuHLL%uLA$Åu1Hx[A\A]]H M=HM=1H= M=&HxHDžxHxHtwHx[A\A]]ovE u[oFEECoNEM+oVEUo^E]LVELU@ofEeonEmDNE DMff.E1ADUHAWIAVAAUIATISHxu2HLDLLÅuH[A\A]A^A_]fDH}HE腃H}Ht͉UvUHAWIAVAAUIATISHxu2HCLDLLÅuH[A\A]A^A_]fDH}HEH}Ht͉uE1鈨AuDUHAWIAVAAUIATISH~wu2HLDLLÅuH[A\A]A^A_]fDH}HEeH}Ht͉5uUHAWIAVAAUIATISHvu2HLDLLÅuH[A\A]A^A_]fDH}HEH}Ht͉tUHATISHvu!HLÅuH[A\]@H}HE腁H}HtՉUtH[A\]f.UHAVAAUIATLeSLHHEuÅuAH}Hu1L/Åu)HDH}ÅuH[A\A]A^]@LHEH}HtԉsH[A\A]A^]ÐUHAVAAUIATLeSLHHE7uÅuAH}Hu1L菎Åu)HrDH}ÅuH[A\A]A^]@LHE@H}HtԉsH[A\A]A^]ÐUHAWAVAAUAATESHHExHUHPH}HpH H`H L@DhLHHEDmu]DuMDEHEHUHE&tHPH}HUHuAHXɼADžuhMHELL=DH}j@DHuQATAAH0u%HeD[A\A]A^A_]DHuAHXHXHE~H}HtDqUHAWAVAAUAATESHHExHUHPH}HpH H`H L@DhLHHEDmu]DuMDEHEHUHErHPH}HUHuAHXiADžuhMHELL=DH}j@DHuQATAAH0u%HeD[A\A]A^A_]DHuAHXHXHEv}H}HtDEpUfHAVAUIATISHoO|WHGEHw oW HDžP_0HX)MMUHEHu)`ptx)U]HDžXhqudLuHXHPLALÅuAL-4H`1LHPAUÅuHĐ[A\A]A^]DLuLHEJ|H}HtʉoUfHAVAUIATISHoO|WHGEHw oW HDžP_0HX)MMUHEHu)`ptx)U]HDžX8pudLuHXHPLALÅuAL-H`1LHPAUÅuHĐ[A\A]A^]DLuLHE{H}HtʉmUHAWAVAAUAATESHHExHUHPH}HpH H`H L@DhLHHEDmu]DuMDEHEHUHEo~HPH}HUHuAHX詷ADžu`M@EDL=uDHQًLH}ATAAH u#HeD[A\A]A^A_]HuAHXHXHEyH}HtDlff.UHAWAVAAUAATESHHExHUHPH}HpH H`H L@DhLHHEDmu]DuMDEHEHUHEm~HPH}HUHuAHXIADžu`M@EDL=|uDHQًLH}ATAAH u#HeD[A\A]A^A_]HuAHXHXHE^xH}HtD-kff.UHAWAVAUATSHHTPM@`H,TH@=LP`HPpT9 yHILLHHII)LxLLhNL8LL`LXkLP`HxxHHhH I;MsH{(SLC0oKHH`HLLE1)ousDKDSI8H8~CoSL[HxEOCAWIOEWE_AGL;XH\H{0LHDžxL牝hHDžmvHhHt 4ihHĘ[A\A]A^A_]f.H=1H===1LL5PTHHAÅtZH S>=11H==H====L+H=1H=y== UHAWAVAUATSH(H~LmIIHELiÅuH}HuLQÅt;LHE+uH}HtgH([A\A]A^A_]f.I|$L11HI$L5ID$DH)LHI|$HUAÅ{I|$HUAÅ`I|$ HUAÅEI|$$HUAÅ*L}HULAÅ HcULI$HUAÅHc]HULI\$AÅHcuI|$(HUIt$AÅHULAÅDEI|$0HU ED$,AÅiI|$4HU AÅNI|$8HU AÅ3I|$cÅt8H}HEWnH}Ht'aH[A\A]A^]LDLrGÅuH[A\A]A^]DH 6=11H5=H=5=exUHAUATSHHtnIIbÅt5H}HEmH}Ht|`H[A\A]]LL}FÅuH[A\A]]f.H 6=11H5=H= 5={UHAUIATISHaÅt2H}HEmH}Ht_H[A\A]]@1LLFÅuH[A\A]]UHAVAAUIATISHsaÅt5H}HElH}Ht\_H[A\A]A^]DDLLZFÅuH[A\A]A^]DUHAVAAUIATISH`u/H(ܒDLLÅuH[A\A]A^]H}HEkH}Ht͉^H[A\A]A^]ff.UHATISHm`u!HےLÅuH[A\]@H}HEekH}HtՉ5^H[A\]f.UHAVAUATSHHttIIA_Åt8H}HEkH}Ht]H[A\A]A^]DLLDÅuH[A\A]A^]DH d3=11Hm2=H=x2= xUHAUATSHHtnIIC_Åt5H}HE\jH}Ht,]H[A\A]]LL DÅuH[A\A]]f.H X=11H1=H=1=m {UHAWAVAUATSHHIHtnIII^Åt:H}HEiH}Hti\H[A\A]A^A_]MLLLCÅtfH 2=H1=11H=1= ~H 1=UHAVAUATSH HILmLu]Åt2H}HEhH}Ht[H [A\A]A^]fHU MD$LLLBÅuLm~EȉLuEAD$H [A\A]A^]DH 1=11H0=H=(0= ^UHATISH\u!HbؒLÅuH[A\]@H}HEgH}HtՉZH[A\]f.UHATISH\Åt/H}HEgH}HtvZH[A\]LPBÅuH[A\]ff.@H UHAUATHhH`SLpHLdIxMHIHHX~XHXfo=HDžh)EXHX~XLXHE)MXLX~XLX)UX)]HL%֒LmHHuLA$Aąu_`t DdEEpHUfopHS#HĘD[A\A]]AffHC+CLHEeH}HtDXuDžpzDH ~.=Hv-=11H=}-=ALmff.UHAWAVAUATSH(HIHt~IIIDEZÅt6H}HE5eH}HtXHe؉[A\A]A^A_]@DEH1E1LLLAPM?XZtfDH ,H,=11H=,==rH -=UH p-=HAVAUATSHHIHIA:YÅt4H}HESdH}Ht#WHe[A\A]A^]@HHU LEE1AVHMLL?XZuHe[A\A]A^]fH ŗ,H+=11H=+=MdUHATISH}XÅu)MtHCђLuH[A\]H}HEmcH}Ht҉=VH[A\]fUHAWAVAUATSHHIHt~IAAWÅt:H}HE cH}HtUHe؉[A\A]A^A_]HHU LEEAWHMLL@?XZtfDH ,Hn*=11H=p*= nH Z+=UHAVAAUIATISH#Wu/HϒDLLÅuH[A\A]A^]H}HE bH}Ht͉TH[A\A]A^]ff.UHATISHVÅu)MtHCϒLuH[A\]H}HEaH}Ht҉]TH[A\]fUHAUIATISH(Vu$HђLLÅuH[A\A]]fH}HEaH}HtՉSH[A\A]]UHAWAVAUIATISHHXHtMtAD$fA$HtHCf HYΒL}HLAƅuqMtUAUMt3HMHUMLHuHEHEHEu*HtHMfoUHKHXD[A\A]A^A_]ALHE`H}HtDRfUHAVAAUIATISHTu/H͒DLLÅuH[A\A]A^]H}HE_H}Ht͉mRH[A\A]A^]ff.UHATSH0Ht@H̒fHGH}Aąu$foM H0D[A\]f.AH}HE _H}HtDQH0D[A\]ff.UHATSH0Ht@HA̒fHGH}Aąu$foM H0D[A\]f.AH}HEy^H}HtDHQH0D[A\]ff.UHATSH@HtPH̒fHGG H}Aąu0HUЋMfoMHSK H@D[A\]AH}HE]H}HtDPH@D[A\]ff.UHATSH@HtPH)˒fHGG H}Aąu0HUЋMfoMHSK H@D[A\]AH}HE9]H}HtDPH@D[A\]ff.UHAWAVAUATSHHL=̒IIIA=u?t7t!H}HE\H}HtOH[A\A]A^A_]Ð[QÅuLLLAÅuϐH %=11H%$=H=0$=ff.UHAWAVAUATSHHL=̒IIIA=u?t7t!H}HE[H}HtNH[A\A]A^A_]ÐPÅuLLLAÅuϐH E$=11HU#=H=`#=ff.UHAWAVAUATSHHH/˒IIII=u==t6t!H}HE[H}HtMH[A\A]A^A_]OÅuHʒLLLLÅuH e#=11Hu"=H="=vUHAWAVAUATSHHHGʒIIII=u==t6t!H}HE1ZH}HtMH[A\A]A^A_]NÅuHɒLLLLÅuH "=11H!=H=!==vUHAVIAUIATSHL%dɒA$=u<t4t!H}HE_YH}Ht/LH[A\A]A^] NÅuLLA$ÅuUHAVIAUIATSHL%ȒA$=u<t4t!H}HEXH}HtKH[A\A]A^]{MÅuLLA$ÅuUHATISHk-HuP`HxpCu%HELL%ʒ0A$Åu H[A\]ÉH}HE-XH}HtىJH[A\]fUHSHHǒÅuH[]H}HEWH}Ht։JH[]ff.UHSHHXǒÅuH[]H}HEwWH}Ht։GJH[]ff.UHSHHƒÅuH[]H}HEWH}Ht։IH[]ff.U01HAWAVIAUIATISHPHHHH HVƒLMEUE]ML$HC AMADAD[M] KIMtXIt,INE+AsII EKH DhpDHA A{II E{H HxDxM9viAEkII0AsEKH0AKA{PE{ASDhԉpEkDHAsHEKAKxDxPDhpDHHM9wLHLAADžu*I vH^HĘD[A\A]A^A_]I wMHHHDžHKUHHHtDHDHֿ AXHHu5H^A;E{AASM]8DxPHCH5ĒL/1HLAADž6SDUHATISH}H HH4ĒHUHEÅuUA$H [A\]fH}HE_TH}Htى/GH [A\]@UHATSH`HÒHHtvLFHNLeV LLVoF"LEoN2oVBLMD^RvVLUHMfuLfUEMUD]ӉÅu#H`[A\]f.1ӉÅtLeLHESH}HtĉbFH`[A\]UHSHH’ÅuH[]H}HE7SH}Ht։FH[]ff.UHSHH’ÅuH[]DH}HERH}Ht؉EH[]ff.UHSHH’ÅuH[]DH}HEwRH}Ht؉GEH[]ff.UHSHHÅuH[]H}HERH}Ht։DH[]ff.UHSHHPÅuH[]H}HEQH}Ht։DH[]ff.UHSHHÒÅuH[]H}HEWQH}Ht։'DH[]ff.UHSHH8ÒÅuH[]H}HEPH}Ht։CH[]ff.UHAWAAVIAUIATISH~EÅt8H}HEPH}HtgCH[A\A]A^A_]fDE1DLLLl.Åt@UHAWAAVIAUIATISHDÅt8H}HEPH}HtBH[A\A]A^A_]fDADLLL-Åt멐UHAWAAVIAUIATISH(LEzDÅt4H}HEOH}HtcBH([A\A]A^A_]fLEE1DLLL.ÅtUHAWAAVIAUIATISH(LECÅt4H}HEOH}HtAH([A\A]A^A_]fLEADLLL5.Åtff.fUHAWIAVAUAATASLH8H}jCAƅukHuH8D[A\A]A^A_]@c#HuP`DLeHuHxp9Aƅt1LHEANH}HtDAfDLef #HuP`HxxHUGAƅu"P`DHxpHu9Aƅu"LP`HxxHU AƅmIHMLHuHH}Aƅ BUHAWMAVAUAATASLHHH}HU6BAƅuoHuHHD[A\A]A^A_]+"HuP`DLeHuHxpP8Aƅt9LHE MH}HtD?fDLef.!HuP`HxxHUAƅu!P`DHxpHu7Aƅu!LP`HxxHUAƅeMIHMHUHHuH}Aƅ6ff.@UHAWMAVIAUIATISH(HuLM@uJHu LMMuLLLHYuHuH uHe؉[A\A]A^A_]DH}HEKH}HtΉ>UHAWMAVIAUIATISH(HuLMF@uJHu LMMuLLLHuHuH uHe؉[A\A]A^A_]DH}HEKH}HtΉ=UHAWIAVIAUIATISH(LE?u6H'LLLLELÅuH([A\A]A^A_]fDH}HEJH}Ht͉]=ff.UHAWIAVIAUIATISH(LE?u6HLLLLELÅuH([A\A]A^A_]fDH}HEIH}Ht͉<ff.UHAWAVAUATSH8HuE1H8D[A\A]A^A_]DIH}EIHHuHE/>LMADžuH}HuLfLMADžt)LHEYIH}HtD(<|H}LLLM}gLMAuHLrRH;EwLHUAwRDHtCHuJ<*E1DHLM&LMAdDATDADff.fUHAWAVAUATSH8HuE1H8D[A\A]A^A_]DIH}EIHHuHE<LMADžuH}HuLdLMADžt)LHEHH}HtD:|H}LLLM=fLMAuHLrZH;EwTHUAwZDHtKHuJ<*DHALM%LMAaf.ALDA<DUHAWAVAUATSH8Hu1H8[A\A]A^A_]IH}LMEIHULuHuHE;Åu3H}LLcÅuH}AwDHu2LHEFH}Hh9\@LEHULE1HuD%Å2f.UHAWAVAUATSH8Hu1H8[A\A]A^A_]IH}LMEIHULuHuHE:Åu3H}LLbÅuH}AwDHu2LHEEH}Hh8\@LEHULDHuA$Å/UHAWAVAUATSH8HuE1H8D[A\A]A^A_]DH}H}EIHIHE9LMADžuH}HuLaLMADžt)LHEDH}HtD7|H}LLLMcLMAuHLrJH;EwDAVHMAwH}J4)E1DHLM"LMAjA\DUHAWAVAUATSH8HuE1H8D[A\A]A^A_]DH}H}EIHIHE8LMADžuH}HuL`LMADžt)LHECH}HtD6|H}LLLMaLMAuHLrJH;EwDAVHMAwH}J4)HDALMt!LMA gA\DUHAWAVAUATSH8Hu1H8[A\A]A^A_]H}H}EILMILuHUHE7ÅuPH}LLq_Åu;AEHuȻw)LEHULE1H}D!ÅkDLHEBH}HKL5?UHAWAVAUATSH8Hu1H8[A\A]A^A_]H}H}EILMILuHUHE6ÅuPH}LL^Åu;AEHuȻw)LEHULDH}A!ÅhfLHEAH}HKl4?UHAWMAVIAUIATISH(HuLM&6Åt8H}HE?AH}Ht4He؉[A\A]A^A_]fDEjMLjLMLLjHuP!H ÅtfUHAWMAVIAUIATISH(HuLM5Åt8H}HE@H}Hto3He؉[A\A]A^A_]fDEjMLjLMLLjHuP!H ÅtfUHAWMAVIAUIATISH(HuLM4Åt8H}HE?H}Ht2He؉[A\A]A^A_]fDEjMLjLMLLuHuPd H ÅtUHAWMAVIAUIATISH(HuLMF4Åt8H}HE_?H}Ht/2He؉[A\A]A^A_]fDEjMLjLMLLuHuPH ÅtUHAWMAVIAUIATISH(H}DM3Åt8H}HE>H}Ht1He؉[A\A]A^A_]fDHDMH}MjLLLjjH ÅtfUHAWMAVIAUIATISH(H}DM3Åt8H}HE>H}Ht0He؉[A\A]A^A_]fDHDMH}MjLLLjjH ÅtfUHAWMAVIAUIATISH(H}DMf2Åt8H}HE=H}HtO0He؉[A\A]A^A_]fDHDMH}MjLLLjuDH ÅtUHAWMAVIAUIATISH(H}DM1Åt8H}HE<H}Ht/He؉[A\A]A^A_]fDHDMH}MjLLLjuH ÅtUHAWMAVIAUIATISH(H}LM&1Åt8H}HE?<H}Ht/He؉[A\A]A^A_]fDEHLMMjH}LLjLjPuH0ÅtfUHAWMAVIAUIATISH(H}LM0Åt8H}HE;H}Hto.He؉[A\A]A^A_]fDEHLMMjH}LLjLjPu>H0ÅtfUHAWMAVIAUIATISH(H}LM/Åt8H}HE:H}Ht-He؉[A\A]A^A_]fDEHLMMjH}LLjLu PuH0Åt두UHAWMAVIAUIATISH(H}LMF/Åt8H}HE_:H}Ht/-He؉[A\A]A^A_]fDEHLMMjH}LLjLu PuH0Åt두UHAWMAVIAUIATISH(HuDM.Åt8H}HE9H}Ht,He؉[A\A]A^A_]fDHDMHuMjLLLjjuH ÅtfUHAWMAVIAUIATISH(HuDM.Åt8H}HE9H}Ht+He؉[A\A]A^A_]fDHDMHuMjLLLjjH ÅtfUHAWMAVIAUIATISH(HuDMf-Åt8H}HE8H}HtO+He؉[A\A]A^A_]fDHDMHuMjLLLju4H ÅtUHAWMAVIAUIATISH(HuDM,Åt8H}HE7H}Ht*He؉[A\A]A^A_]fDHDMHuMjLLLjuH ÅtUHAWIAVMAUIATISH(HuLM&,Åt8H}HE?7H}Ht*He؉[A\A]A^A_]fDEHLMMjHuLLjLjPuH0ÅtfUHAWIAVMAUIATISH(HuLM+Åt8H}HE6H}Hto)He؉[A\A]A^A_]fDEHLMMjHuLLjLjPunH0ÅtfUHAWIAVMAUIATISH(HuLM*Åt8H}HE5H}Ht(He؉[A\A]A^A_]fDEHLMMjHuLLjLu PuH0Åt두UHAWIAVMAUIATISH(HuLMF*Åt8H}HE_5H}Ht/(He؉[A\A]A^A_]fDEHLMMjHuLLjLu Pu-H0Åt두UHAWMAVIAUIATISH(H}LE)Åt8H}HE4H}Ht'He؉[A\A]A^A_]fDEHLMMjH}LLPLuH ÅtfDUHAWMAVIAUIATISH(H}LE)Åt8H}HE4H}Ht&He؉[A\A]A^A_]fDEHLMMjH}LLPLu"H ÅtfDUHAWMAVIAUIATISH(H}LEf(Åt8H}HE3H}HtO&He؉[A\A]A^A_]fDE jMLLMH}LLPuuH ÅtUHAWMAVIAUIATISH(H}LE'Åt8H}HE2H}Ht%He؉[A\A]A^A_]fDE jMLLMH}LLPuuCH ÅtUHATISH='Åu_Mt2H1E1E1j11L8#XZu8He[A\]DH =11H<H=<DH}HE1H}Ht$He[A\]ff.UHATISH&Åu_Mt2H1E1E1j11L"XZu8He[A\]DH =11H5<H=@<DH}HEG1H}Ht$He[A\]ff.UHAUIATISH%ÅubMt5H1AMj11L!XZu8He[A\A]]H 9 =11H}<H=<%DH}HE0H}Ht_#He[A\A]]fUHAUIATISH(%ÅubMt5H1AMj11L !XZu8He[A\A]]H =11H<H=<uDH}HE/H}Ht"He[A\A]]f1efefD1gfvgfDUHAVIAUAATISH3$Åt5H}HEL/H}Ht"H[A\A]A^]DE1E11LDL"ÅuH[A\A]A^]ff.fUHAVIAUAATISH#Åt5H}HE.H}Ht!H[A\A]A^]DAE11LDLo!ÅuH[A\A]A^]f.UHAWIAVAAUIATISH(LE #Åt4H}HE#.H}Ht He؉[A\A]A^A_]fjLEDE1jLLLd!XZtf.UHAWIAVAAUIATISH(LEz"Åt4H}HE-H}Htc He؉[A\A]A^A_]fjLEDE1jLLL XZtf.UHATASHPoEoM oU0HE@EMUHE!Åt4H}HE,H}HtHe[A\]Hu11u1Duuuuu H@ÅuHe[A\]@UHATASHPoEoM oU0HE@EMUHE*!Åt4H}HEC,H}HtHe[A\]Hu1u1Duuuuu H@ÅuHe[A\]ÐUHAWIAVIAUAATISH Åt8H}HE+H}HtwH[A\A]A^A_]fDE1ALLDLVÅtff.UHAWIAVIAUAATISHÅt8H}HE+H}HtH[A\A]A^A_]fDALLDALÅtff.UHAWMAVIAUAATISH(HuLMfÅt8H}HE*H}HtOHe؉[A\A]A^A_]fDjLMDMjHuLLXZt롐UHAWMAVIAUAATISH(HuLMÅt8H}HE)H}HtHe؉[A\A]A^A_]fDjLMDMjHuLL+XZt롐UHAUIATASHXoEoM oU0HE@EMUHE5Åt/H}HEN)H}HtHe[A\A]]ÐHu1ɺuLDuuuuuH@ÅuHe[A\A]]ff.UHAUIATASHXoEoM oU0HE@EMUHEuÅt/H}HE(H}Ht^He[A\A]]ÐHuLuDuuuuuRH@ÅuHe[A\A]]ff.UHSHHxÅuH[]H}HE'H}Ht։H[]ff.UHAWIAVAAUIATISHnu2H㐒LDLLÅuH[A\A]A^A_]fDH}HEU'H}Ht͉%UHAWIAVAAUIATISHu2H[LDLLÅuH[A\A]A^A_]fDH}HE&H}Ht͉UHAWAAVAAUIATISHnu2H돒DDLLÅuH[A\A]A^A_]fDH}HEU&H}Ht͉%UHAWIAVAAUIATISHu2HSLDLLÅuH[A\A]A^A_]fDH}HE%H}Ht͉UHAWAAVIAUIATISH(LEju6HǎDLLLELÅuH([A\A]A^A_]fDH}HEM%H}Ht͉ff.UHAWAAVIAUIATISH(LEu6H/DLLLELÅuH([A\A]A^A_]fDH}HE$H}Ht͉ff.UHSHHÅuH[]H}HEg$H}Ht։7H[]ff.UHSHHPÅuH[]H}HE$H}Ht։H[]ff.UHAVIAUIATLeSLHHEWu+H}LLD@ÅuH[A\A]A^]LHEv#H}HtωFH[A\A]A^]UHAVIAUIATLeSLHHEu+H}LLdAÅuH[A\A]A^]LHE"H}HtωH[A\A]A^]UHAWAVIAUAATASH]H(HދP`DHxp ADžt4HHEt"H}HtDCH(D[A\A]A^A_]ÐHEȋU2HދP`DHxp` ADžuHML=.LuAADžuE9uAff.UHAUAATASH(Åt2H}HE!H}HtH([A\A]]@H}wÅu|P`HxpHu HtgbHuP`DHxp ÅuDHuȋP`HxxHUÅdH7DH}ÅkEH:=11H=<vUHATASH Åt/H}HE H}HtH [A\]H}ÅuP`HxpHu Ht_jHuЋP`DHxp ÅuLHu؋P`HxxHUÅgH7H}ÅqKfH9=11H=<*UHAVAAUIATISHu/H0DLLÅuH[A\A]A^]H}HEH}Ht͉mH[A\A]A^]ff.UHAUIATISH(u$HLLÅuH[A\A]]fH}HEH}HtՉH[A\A]]UHAVAAUIATISHu/HDLLÅuH[A\A]A^]H}HEH}Ht͉mH[A\A]A^]ff.UHATISH-u!HLÅuH[A\]@H}HE%H}HtՉH[A\]f.UHAWAAVIAUIATISHu2HDLLLÅuH[A\A]A^A_]fDH}HEH}Ht͉eUHAVIAUIATISH3u/HLLLÅuH[A\A]A^]H}HEH}Ht͉H[A\A]A^]ff.UHAWAAVAAUIATISHu2HDDLLÅuH[A\A]A^A_]fDH}HEH}Ht͉UUHATISH-u!HzLÅuH[A\]@H}HE%H}HtՉH[A\]f.UfHAWAVIAUIATLSHx)p)))ÅtDž /Dž Dž DžDžDžDžDžDžDžDž DžDž{DžlDž]DžNDž?Dž0Dž!DžDžDžDžDžDžDžDž Dž!Dž"Dž#|Dž$mDž%^Dž&ODž'@Dž(1Dž)"Dž*Dž+Dž,Dž-Dž.Dž/Dž0Dž1Dž2Dž3Dž4}Dž5nDž6_Dž7PDž8ADž92Dž:#Dž;Dž<Dž=Dž>Dž?Dž@DžADžBDžCDžDDžE~DžFoDžG`DžHQDžIBDžJ3DžK$DžLDžMDžNDžODžPDžQDžRDžSDžTDžUDžVDžWpDžXaDžYRDžZCDž[4Dž\%Dž]Dž^Dž_Dž`DžaDžbDžcDždDžeDžfDžhDžiqDžjbDžkSDžlDDžm5Džn&DžoDžpDžqDžrDžsDžf1@UHAVAUATSHPHtlIIIÅu]H|HuLLÅuDuLuuuuuuu?HMM11LlÅuHH[A\A]A^A_]fL@HDž@LtH@Ht‰Aff.@UH M<HAVAUATSHHIHILPÅt=HDžPLHPHtHĐ[A\A]A^]DE1E111LLKÅuHjLLÅtfDH <HV<11H=X<LP\fUHATISHu!HjLÅuH[A\]@H}HEH}HtՉH[A\]f.UHAVAUATSHHIILPÅuHiLLÅt8HDžPLHPHtbHĐ[A\A]A^]E1E111LLÅtH <<11eH<H=<譝LPyUHSHHt"HH1[]fH <H<11H=<RH}HEH}Ht H[]fHt :/1fUH <11HI<H=T<HHH}HEYH}Ht &ɸff.@UHSHuHdÅuH[]fDH}HEH}HtՉH[]@UHSHHuP`1HxxpÅu,H}tnuH;du H[]@H}HEmH}Ht׉=H[]@UHAUAATISHu$H5cDLÅuH[A\A]]fH}HEH}HtՉH[A\A]]UHATISH}HHHE^u!HC8H}HI$t H[A\]H{@guAT$SAL$ K At$sA|${ED$DCEL$DKET$ DS M\$(L[(Md$0Lc0H[A\]ff.fUHATISHHދP`HxxI${duMAT$SAL$ K At$sA|${ED$DCEL$DKET$ DS M\$(L[(Md$0Lc0[A\]DUHAWAVAUATSHHhH`M%IIHxM0AątAHDžxHFHxHtDHĈD[A\A]A^A_]DHDžxHAąuLMIUHxLHELXAąoHXHx@AąTAM IUAoEAoM(L%`HULMLXLEH`HhMA$Aą'@H w<H<11H=<AHx襘UHAUATSHhHIIÅuH_HuLÅt3H}HEH}HtHh[A\A]]DLP`HxxHUbÅuoEHU؋MoMAD$IT$AL$ AL$(Hh[A\A]]fDH <11H <H=<赗MUHAWAVAUATSHhHIILxÅt>HDžxLHxHtHh[A\A]A^A_]HDžxLMÅuL}I$HxLHEÅ{I@PÅhAD$ IT$LLAoD$AoL$(H1^HUEEMÅN#H R<11Hռ<H=<}LxUHAUIATISHu$HZLLÅuH[A\A]]fH}HEH}HtՉmH[A\A]]UHAVIAUIATASHP3Åu=H~ZHUDLÅu$AwHp<Jc HfDH}HEH}HtHP[A\A]A^]D]EHP[A\A]A^]f.ufA6fDLmLeHEUM.MfIFAVLMDUMEV}LEA>MFvDUHAVAUATSHPwlH o<I։IHcAHEDUÅuFLL-DYHUDAUÅu+A uLeMfHP[A\A]A^]fDH}HEH}HtɉHP[A\A]A^]M^AFIINL]HUHMETDEFMDELM;@A6I~uH}$DAf]ff.UHAWAVAUATSHHMIIIMÅtEHHDžHHtH[A\A]A^A_]HÅuL11LLLQÅuHlZLLLLLHÅtTfH <11H<H=<譒#IIxALH1IIǀH)HIIǀIǀMP`Ip Eff.@UHAWEAVMAUIATISHH}H8HuHE…uH}HHu …tH8[A\A]A^A_]fDH}HHu…uLLr*H;Ew$AwDHufI~L1IIdžHH)HMIdžHuLeIdžMf`Iv E*fUHAWEAVMAUIATISHH8H}H}HE…uH}HHu …tH8[A\A]A^A_]fDH}HHuX …uLLrH;EwAOv@fI~L1IIdžHH)HMIdžHuLeIdžMf Iv`E:fUHAWIAVIAUATMSLHHHH@AŅtFHXHDžXHXHtDHĨD[A\A]A^A_]fDDE HMLHHUL`L8 AŅuHPAŅwHH811HCAŅRHYVILLLPH@HHAŅKUHAWIAVIAUATMSLHHHH@AŅtFHXHDžXHXHtDHĨD[A\A]A^A_]fDDE HMLHHUL`L8AŅuHPhAŅwHH811H#AŅRH9UILLLPH@HHAŅKUHAWIAVIAUATMSLHHHH@AŅtFHXHDžXHXHtDHĘD[A\A]A^A_]fDHPtAŅuL`1HUuLϹHLLLHL1҉1HDžHDžHAŅ:L-TMLLLPH@HHAUAŅ1UHAVAUATSHHIIÅuHSLLLÅt@HHDžHHtNH[A\A]A^]@LL]ÅtDH g<11H<H=<蝋ff.UHAVAUATSHHIIÅtDHHDžHHtH[A\A]A^]L11LLJÅuHURLLÅtDH <11H<H=(<Ŋ\UHAWEAVMAUIATSHHH@HHAątFHXHDžXHXHtDHĨD[A\A]A^A_]fDL`ELLHHMHL8AąuHH811H6AąeHHXHDžXHXHtHĘ[A\A]A^A_]L`11L1HLLLLLHDžHDžLD4Å\H;OLHHÅi:HHHWHVONDGDFLOLNH H~ UHAWAVAUATSHXH}MIIIMÅt;H}HEH}HtHX[A\A]A^A_]fH}wÅuIT$I$LELIL$AoD$H>NLMHULHMH}LHEEÅthH <11H<H=<蝆=HHHWHVONDGDFLOLNH H~ UHAUATSHHHt^IIÅupH~MHuLÅuZHUHMHuoEI$IL$It$AD$HH[A\A]]DH <11H%<H=0<ͅH}HE<H}Ht HH[A\A]]ff.@UHAUIATISHu$HLLLÅuH[A\A]]fH}HEH}HtՉH[A\A]]HHHWHVÐUHAWAVAUATSH8MtbIIIMHM5ÅujIT$I$LELHLHMLHULHEÅu9H8[A\A]A^A_]DH J<11Hͪ<H=ت<uH}HEH}HtfHHHWHVÐUHAUATSH(HtNIIsÅu`HFKHuLÅuJHUHMI$IL$H([A\A]]fH <11H<H= <轃H}HE,H}HtH([A\A]]ff.@UHAUATSH(HtNIIÅu`I$IT$HuLHnJHEHUÅu9H([A\A]]fH Ҫ<11HU<H=`<H}HElH}Ht<H([A\A]]ff.@UHAWIAVIAUIATISH(LEu6HILLLLELÅuH([A\A]A^A_]fDH}HEH}Ht͉ff.UHAUIATISHhu$H%ILLÅuH[A\A]]fH}HE]H}HtՉ-H[A\A]]UHAWIAVIAUIATISHu2HHLLLLÅuH[A\A]A^A_]fDH}HEH}Ht͉UHAWAVAUATSH(MtRIIIMHMeÅuZHHMLLHMLÅu;H([A\A]A^A_]H <11H <H=<赀H}HE$H}HtfUHAUATSHHt6IIÅuHHfGLLÅu3H[A\A]]H $<11H}<H=<%H}HEH}HtdH[A\A]]UHAUATSHHt6II#ÅuHHFLLÅu3H[A\A]]H ~<11Hݥ<H=<H}HEH}HtH[A\A]]UHAWAVAUATSH(MtRIIIMHMuÅuZHFMLLHMLÅu;H([A\A]A^A_]H <11H<H=(<~H}HE4H}HtfUHAUATSHHt6IIÅuHH^ELLÅu3H[A\A]]H 4<11H<H=<5~H}HEH}HttH[A\A]]UHAUATSHHt6II3ÅuHHDLLÅu3H[A\A]]H <11H<H=<}H}HEH}HtH[A\A]]UHAWAVAUATSH(MtRIIIMHMÅuZHDMLLHMLÅu;H([A\A]A^A_]H <11H-<H=8<|H}HEDH}HtfUHAUATSHHt6IIÅuHHVCLLÅu3H[A\A]]H N<11H<H=<E|H}HEH}HtH[A\A]]UHAUATSHHt6IICÅuHHBLLÅu3H[A\A]]H o<11H<H=<{H}HEH}HtH[A\A]]UHAWAVAUATSH(MtRIIIMHMÅuZHAMLLHMLÅu;H([A\A]A^A_]H <11H=<H=H<zH}HETH}Ht$fUHAUATSHHt6IIÅuHHNALLÅu3H[A\A]]H ^<11H<H=<UzH}HEH}HtH[A\A]]UHAUATSHHt6IISÅuHH@LLÅu3H[A\A]]H <11H <H=<yH}HE$H}HtH[A\A]]UHAWAVAUATSH(MtRIIIMHMÅuZH?MLLHMLÅu;H([A\A]A^A_]H <11HM<H=X<xH}HEdH}Ht4fUHAUATSHHt6IIÅuHH6?LLÅu3H[A\A]]H n<11H<H=Ȟ<exH}HEH}HtH[A\A]]UHAWIAVIAUIATISH(LEZu6H>LLLLELÅuH([A\A]A^A_]fDH}HE=H}Ht͉ ff.UHAUATSHHt6IIÅuHH=LLÅu3H[A\A]]H I<11H<H=<5wH}HEH}HttH[A\A]]UHSHHh=ÅuH[]H}HEGH}Ht։H[]ff.UHSHH=ÅuH[]H}HEH}Ht։H[]ff.UHSHH<ÅuH[]H}HEH}Ht։WH[]ff.UHAUIATISHu$H<LLÅuH[A\A]]fH}HE H}HtՉH[A\A]]UHAVIAUIATISHu/H;LLLÅuH[A\A]A^]H}HEH}Ht͉]H[A\A]A^]ff. H P<HcHD 1 111111111 1øÐUHAUATSHHt~II3ÅuH&:HuLÅt7H}HE6H}HtH[A\A]]fMԃ H5N<Hcu2H2LLLLÅuH[A\A]A^A_]fDH}HE%H}Ht͉UHAWIAVIAUIATISH(LE躿u6HO2LLLLELÅuH([A\A]A^A_]fDH}HEH}Ht͉mff.UHATISH=u!H1LÅuH[A\]@H}HE5H}HtՉH[A\]f.UHAVIAUIATISHþu/H81LLLÅuH[A\A]A^]H}HEH}Ht͉}H[A\A]A^]ff.UHAVIAUIATISH3u/H0LLLÅuH[A\A]A^]H}HEH}Ht͉H[A\A]A^]ff.UHAWAAVIAUIATISH螽ÅuGLLLEt*L%.A$u(H[A\A]A^A_]f.Ha.t؉H}HEpH}Ht@ff.UHAVIAUIATISHu/H.LLLÅuH[A\A]A^]H}HEH}Ht͉轺H[A\A]A^]ff.UHAVIAUIATISHsu/Hh-LLLÅuH[A\A]A^]H}HE]H}Ht͉-H[A\A]A^]ff.UHAUIATISHu$H,LLÅuH[A\A]]fH}HEH}HtՉ譹H[A\A]]UHAWIAVIAULxATISHxjÅtÅuKH%LLLÅu3H[A\A]A^]ÐH <11H<H=<`H}HE H}HtܱH[A\A]A^]ff.fUHAVAUATSHHtH}HEȲH}Ht蘥H[A\A]A^]fA$fDH .|<11HEz<H=Pz<SA$fDA$ff.UHAVAUATSHHIIIÅu;HHuE11E1LLÅuUԃt{t>H}HEȱH}Ht蘤H[A\A]A^]fA$fDH .{<11HEy<H=Py<RA$fDA$ff.UHAWAVAUATSH(HIIIMLMH}ݥÅu>HMLLHuLMH}ÅuUăt{t>H}HE踰H}Ht舣H([A\A]A^A_]A$fDH z<11H5x<H=@x<QA$fDA$ff.UHAWAVAUATSH(HIIIMLMH}ͤÅu>HMLLHuLMH}ÅuUăt{t>H}HE訯H}HtxH([A\A]A^A_]A$fDH y<11H%w<H=0w<PA$fDA$ff.UHAWAVAUATSH(HIIIMLMH}轣ÅuGHLMLHHuuLMH}XZuUătzt=H}HE菮H}Ht_He؉[A\A]A^A_]fDA$fDH w<11H v<H=v<OA$fDA$fDUHAWAVAUATSH(HIIIMLMH}譢ÅuGHpLMLHHuuLMH}XZuUătzt=H}HEH}HtOHe؉[A\A]A^A_]fDA$fDH v<11Ht<H=u<NA$fDA$fDUHAWAAVIAUIATISH计u2HkDLLLÅuH[A\A]A^A_]fDH}HE蕬H}Ht͉eUHAWAAVIAUIATISH.u2HDLLLÅuH[A\A]A^A_]fDH}HEH}Ht͉UHAWIAVIAUIATISH(DE誠u6HWLLLDELÅuH([A\A]A^A_]fDH}HE荫H}Ht͉]ff.UHAWIAVIAUIATISH(DEu6HLLLDELÅuH([A\A]A^A_]fDH}HEH}Ht͉͝ff.UHAVAAUAATISH蓟u/HDDLÅuH[A\A]A^]H}HE}H}Ht͉MH[A\A]A^]ff. C>fUH s<HAVAUATSH0HtlIHt]IIÅuoH=HULLMtMoEȃ AFCAu6H0[A\A]A^]@H {s<H~q<11H=q<KH}HE茩H}Ht\H0[A\A]A^]ff.fUHAVIAUIATASHu/HPDLLÅuH[A\A]A^]DH}HEH}HtЉ͛H[A\A]A^]ff.UHSHHÅuH[]H}HE藨H}Ht։gH[]ff.UHSHHhÅuH[]H}HE7H}Ht։H[]ff.UHSHHÅuH[]H}HEקH}Ht։觚H[]ff.UHSHH ÅuH[]H}HEwH}Ht։GH[]ff.UHSHH0 ÅuH[]H}HEH}Ht։H[]ff.UHAWAVAUATSH(HMIIIL苛AątDHHDž蝦HHtDiH(D[A\A]A^A_]@LHLLAąuH LLLLHAąq tJ uHHs |DH 'o<Hm<11H=m<A\G#HPH4ff.fUHAWAVAUATSH8HHMIIMLDAątEHHDžVHHtD"H8D[A\A]A^A_]DLHLLAąuH MLLLHHAąi tK uHHs tfDH m<Hnl<11H=ul<A FHPH+ff.fUHAVAUATSHHII ÅtDHHDžHHtH[A\A]A^]LLLÅuH LLÅu tH uHIt$ DH l<11HUk<H=`k<DDH`I$Rff.UHAWAVAUATSHHIIIÅt?HHDžHHtՕH[A\A]A^A_]ÐLLLÅuHiLLLÅu tE uHIt$ fH k<11HEj<H=Pj<CIHPI$Wff.UHAWAAVAAUIATIH}SHzÅuHEDLHULÅuH[A\A]A^A_]@H}HEϡH}Htщ蟔ff.fUHAVIAUIATLeSLHHE'u+H}1LL肯ÅuH[A\A]A^]DLHEFH}HtщH[A\A]A^]UHAUATSHHIHtrIuHWÅt4H}HE۠H}Ht諓H[A\A]]fDuLLHUtÅuH[A\A]]fH \j<11bHEh<H=Ph<A|H "j<11Hh<H= h<ALUHAWEAVIAUIATISH(HuLMtHVuJEHLLLMELHuPuAXZEuHeD[A\A]A^A_]f.AH}HE蜟H}HtDkfUHAWEAVIAUIATISH(HuLMFtH>VuJEH@LLLMELHuPuAXZEuHeD[A\A]A^A_]f.AH}HEH}HtD軑fUHATISHsHUu!HLÅuH[A\]@H}HE}H}HtՉMH[A\]fUHAVIAUIATISH3sH+Uu'H LLLÅuH[A\A]A^]ÉH}HEH}HtՉ͐H[A\A]A^]ff.UHAUIATISHrHTu,HeLLÅuH[A\A]]f.H}HEmH}Ht͉=H[A\A]]UHAVIAUAATISH#rHTu'H LDLÅuH[A\A]A^]ÉH}HEH}HtՉ轏H[A\A]A^]ff.UHAWIAVIAUIATIH}SHHE2u.H_ LLLLÅuH[A\A]A^A_]fH}HEMH}Htщff.UHAWIAVIAUIATIH}SHHE袐u.H LLLLÅuH[A\A]A^A_]fH}HE轛H}Htщ荎ff.UHAVIAUIATISHspHkRu'H8 LLLÅuH[A\A]A^]ÉH}HE=H}HtՉ H[A\A]A^]ff.UHAWAAVIAUAATASHoHQÅt8H}HEϚH}Ht蟍H[A\A]A^A_]fDAD$wH? DLDDÅt롐fUHSHšÅu H[]H}HE?H}HtډH[]fDUHSHHnHuHHPHEH[]DUHSHHnHHH[]Pff.UHSHHnHtHHH[]YfH[]fUHAWEAVIAUIATISHHLMGn1ALMH1Ƀ}1}M@QHLVHAQALxYH He[A\A]A^A_]DUHAWEAVIAUIATISHHLMm1ALMH1Ƀ}1}M@QHLVHAQALYH He[A\A]A^A_]DUHAVIAUIATISHTmMLLHH[A\A]A^]XZUHAWEAVIAUIATISHHLMmLMHu(u MLLuHHuAQEzeH0He[A\A]A^A_]UHATSHPlHEHElHN1҅HPHuH}HE0Hu~ELeH <H}LHMHEEEP(HLEES(EHP[A\]@ˋfUHAUMATMSH8H}H}ЉuHUMƖÅt0H}HE诖H}HtHe[A\A]]fHUHMMDEHuAUH}菉XZuHe[A\A]]f.UHAWIAVIAUIH}ATISHX*Åt4H}HEH}HtHX[A\A]A^A_]fH}HuӉÅuHEUHMuH}LEIEAUI $At$I?Mff.UHSHHtHt]H71H[]H :_<11H-]<H=8]<6H}HEDH}HtfH ^<H\<1bH=\<6ff.fUH]fDUH]CfDUHAWMAVIAUIATISHHiHMMLLHH[A\A]A^A_]VWfD$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.$f.f1G0fG@ff.UHAVE1AUE1ATSHHĀHGHW HDžpHO(Hw0DG`HEHUHMHuE{8HEDž|ucLeVHUH3ATHMHpL|AXZEHpHKL輖L贖DcHe1[A\A]A^]ÐHUEHUf.EľLIHL琗IHLC@Mt(1Ax3tiMPAOMO\M@@MuLhA~hHLhHEEhLe)EDM@@MuDDAIAfADG@HDH HLcMcH <B4DA1F@2wADZ@AD1D2D0DD0DGAD_@ELOHw0)@IMM)AIIthItPIt6ItI9DAIB2APAI2APDAIB2APAI2APDAIB2APAI2API9fDAI2APAP2A@DAPAPB2DA@B2EPAPAPD2AEP2A@DAPAPB2DA@B2API9rDAAtDB2AMA2Af=UHAWAVHUHMAUHuE1LuATISH]HXHUHMH]HuDL K|H DE1H5|*DOLEiHK\L{PH{XHCPHLHǃPH)HH=gNxL_OTuIIzP9 UL Hpu HUK HUL HUy HU(\ HU?w HU"Z HU= HU HU HUM HUE HUt HUW HUI:r HUJU HUF8 HUG H UH HU- HU. HUo HUR H U5m H$U/P H(U03 H,U1 H0U4 H4U* H8U+ H<Uj H@UM HDU0h HHU5K HLU6. HPU7 HTU8HXU9H\U:H`U;eHdU<HHhU=+cHlU>FHpU?)HtU@ HxUAH|UBHUC}HUD`HUC{HU &^HU! AHU"$HU2HU#HU)HU$xHU%[HU&>vHUl!YHU'<UH}"HcU3H}HUHcuUH}HLcEUaH}Lx{LcMH}UQLVLc}HU L.fHURIHU ,H}U HcMHUHHUHUxHU[HU>vHU!YHU<H}U "Hc}U HHH}ULcUHUNLHUOcHUPF~HUS)aHUT DHUU'HUV HUWHUXHUY{HUZ^HU[AyHU_$\HU`?HUd"HUeHPuHUjHUm{H}ċUoaLc]H(UcL 9qH,UpTH0Uq7H4UrH8UsH<UtH}ȋUuEHDUv@hH}̋UwNUHTxHU(udHLUyuKHPU}u2HXUuIE9,$01A$HX[A\A]A^A_]@1fDUHAWAVAUATISH8HF(HXhHiAT$4t#AD$0H߉ECjEH8[A\A]A^A_]ÐMl$(H5tI}LXuAEuIt$(H}IT$ HEH}HvIA|$8=M|$PED$@O,M9&M7MZMOMM)IAMIMqM.IItwIt^ItEIt,ItM1MIMM1MIMM1MIMM1MIMM1MIMMIMqMMM9GMYMsMuzMqMIQMujMqIIIMuZMqIIq MuJMq IIy(Mu:Mq(IMA0Mu*Mq0MMQ8MuI@MqMMsfDIFH5LH(HEIyLLMmL]HMACHq(IT$ H}HvbM6MuIM9MLL)HHHHt~HthHtRHtLeMtSM7LeMtCILeHt3L3HeMt#M>LxeMtILheHHuAT$@ID$PAA9YHt,HH[A\A]A^A_].efDLpH[A\A]A^A_]Å IHuIFHnfDUHAUIATISHdt'HLE\tTH[A\A]]fH5IH=vˑ]GLLEHdˑ`\uu!HuLLZu}t7I\$PHu;H[PHt/LHL1gtdH1[A\A]]I\$@Hu@H[@HtLHLYxtUHATIH5SHHHuSu MtHCI$[A\]ff.UHSHHdt.HH{H5@+uSH[]fDH5H=ʑEHʑtH1҉[]fUHAWAVAUATSH,;HLgPH}MH5H=ɑEL=ɑM4$AwHIXEDMDI5ŝEDiA1LEiȓEH AE1MAiDI(D1iȓAD1DiѓLH0A1Ei“A1LEiȓH8A11AiLM<MMt,M;puMXMt%LL]H}aAwHIXAŝDLEEi͓HADLLH H(A1EiѓE1DLEiH8E1MEi͓I0A1EiѓEE1EiE1Aiœ11iL,I}HuDIH?HL;wuL7Mu`MWPAIMWPJ4I{I9AAAEH4ISI9H4MCI9AŃAEJ4I{I9AAAtqH4MkI9„tYJ4IKI9AAAEt=H4I{I9AAt#H4I9ƒAIDDAA;wHc_IHEGHIXEE1EJ4Ht~F1LAI L LH1MtYA@1I0AILYMtILxYHHuAM0IU@AD9[HtHNYEEIU(IE@IE8N4AE0LL9L"IMMI)IIALzM'MItzIthItRItLUMtILUHHuAMIU(AA9SHIE(1IE AEH[A\A]A^A_]fH5H=7LA]2H[A\A]A^A_]ÅHThI2fUH5HSHH=H7S`1tH[]ËCdH[]fDUHAWAVE1AUATSHH(_TILhHHEXI 2THxXIHH@)@X@HH@PHǀPLHI|$ N3MeXSHxXIHH@)@X@HH@PHǀPLHI|$ 2MeXnSHxXAIHH@A)@AX@HH@PHǀPLHI|$ 2MeX SHxXAIHH@A)@AX@HH@PHǀPLHI|$ "2MeL9mdL{pLHEWgLOELI:03HHARHLHuHAS0H} HH5;ۯHSpH{xHCEH{xHt RHCxLspfHǃMHMMnL}M}Mt8Mg L1u At A?L1L1L_QM}MeMt8Mo L1u At A?rL1LR1LQM|$Mt8Mo LT1u At A?0LX1L1LPM|$Mt8Mo L1u At A?L1L0LPM|$Mt8Mo L0u At A?L0L0LTPM|$ Mt8Mo L0u At A?jL0LJ0LPM|$(Mt8Mo LL0u At A?(LP0L0LOM|$0Mt8Mo L 0u At A?浑L0L/LOMl$8L;mLwOHCpH{hHt HHChEH([A\A]A^A_]E#D@E4@yE!UH5HSHH=޵H1HҵH5 <HxhSHH }E11H5‘1H=a;Ѓ"|E11H5‘H= <TH5|HNH5‘E11ɺ+H= < H59|H5E11ɺ.H5a‘H=f <촑L {L ִE11ɺH5%‘H=/AḼ{LE11ɺH5H= <HX{H\E11H5H= <SH {H%H5~E11ɺ H=E(<H5zH5鳑E11ɺH58H= <병L ,tzL E11ɺ@H5H= <L(zLqE11ɺH5H=p <HyH0E11H5H=O <OHyHH5RE11ɺH=1 <H5LDyH5E11ɺ<#H5 H= <粑L xL E11ɺ+H5пH=aZ<L$xLEE11ɺ +H5H= <H`x +HE11H5XH= <KH̫xHͱH5&E11ɺ +H=~ <H5wH5E11ɺ+H5ྑH=] <㱑L t|wL UE11ɺXH5H=D <LP0wLE11ɺXH5hH=) <{Hv*HذE11H5,H=~%<GHvHH5E11ɺXH= <H5ԪLvH5eE11ɺXH5H= <߰L vL )E11ɺ H5xH=$<LuLE11ɺXH5<H= <wH(huHE11H5H=y <CHuHuH5μE11ɺH=U <H5tH59E11ɺH5H=1 <ۯL tL E11ɺ H5LH= <Lh8tLE11ɺH5H=<sHs HE11H5ԻH=<?HsHIH5E11ɺ H=< H5TsH5 E11ɺ H5\H=w<׮L xsL ѭE11ɺ H5 H=W<LrLE11ɺH5云H=7<oH0prHTE11H5H=<;H$rHH5vE11ɺH=<H5qH5ᬑE11ɺH50H=<ӭL ħqL E11ɺ*H5H=<L@qLiE11ɺH5H=!<kHlpH(E11H5|H=!<7HHpHH5JE11ɺH=k<H5d\pH5E11ɺH5H=D<ϬL @pL yE11ɺH5ȸH=!<LoL=E11ɺH5H=<gHxoHE11H5PH=<3H4,oHŪH5E11ɺ H=~ <H5nH5E11ɺH5طH=<˫L \nL ME11ɺ H5H=}<L8HnLE11ɺ>+H5`H=\<cHm.HЩE11H5$H=/HPmHH5E11ɺ.H= <H5dmH5]E11ɺ.H5H=}ǪL mL !E11ɺ.H5pH=kLlL娑E11ɺ.H54H=<_Hl.HE11H5H=+H4lHmH5ƵE11ɺ.H=0<H5hkH51E11ɺ.H5H=<éL dkL E11ɺ.H5DH=<LPkLE11ɺ/H5H=<[Hk/HxE11H5̴H=<'HXjHAH5E11ɺ.H=<H54ljH5E11ɺ.H5TH=#L  jL ɦE11ɺ.H5H=N<LiLE11ɺ.H5ܳH=1<WHi/HLE11H5H= <#HL?_YLE1XH5ԦH=I<HY HDE11H5H="<ӜHXH H5fE1XH=<H5}uXH5ΘE11ɺ H5H=<hL )XL E1XH5ޥH=<1LbWLSE11ɺ H5H=r<H޾WXHE1H5cH=;<ƛH?WHؗH51E11ɺ H=<H5SVH5E1XH5褑H=<[L ,VL ]E11ɺ H5H=<'LXVL!E1XH5mH=<H VHݖE11H51H=';HUHH5E1XH=;H5nUH5gE11ɺH5H=;QL "UL +E1XH5wH=;L˿TL앑E11ɺ0/H5;H=;晑HT0/HE1H5H=j;H8THqH5ʢE11ɺ0/H=a;{H5\SH55E10/H5H=*;DL SL E11ɺ H5EH=<LQSLE1XH5H=y<٘HS HvE11H5ʡH=;HRH?H5E1XH=;nH5gRH5E11ɺ H5OH= <:L KRL ēE1XH5H= <L$QLE11ɺ H5ԠH=O;ϗHQXHDE1H5H=;H1QH H5cE11ɺ H= ;dH5PH5ΒE11ɺH5H=;0L PL E11ɺH5៑H=;L]MPLVE11ɺ(#H5H=tȖH9P.HE11H5iH=~;HOHޑH57E11ɺ/H=X;`H5QiOH5E11ɺ H5H= <,L OL fE11ɺ H5H= <LɸNL*E11ɺ+H5yH=;ĕHUN +H鐑E11H5=H=;H!9NHH5 E11ɺ H=7 <\H5MH5vE11ɺ H5ŝH= <(L ٷML :E11ɺH5H=;LUMLE11ɺH5MH=[;H1 MHE11H5H=>;H LHH5ߜE11ɺ+H=~<<XH5ٶqLH5JE11ɺH5H=;$L %%LL E11ɺ4+H5]H=;L!KLҎE11ɺ4+H5!H= <<HKHE11H5囑H=;HAKHZH5E11ɺH=f;TH5%JH5E11ɺH5mH=E; L QJL ⍑E11ɺH51H=,;쒑L-]JLE11ɺH5H=.;<H JHeE11H5H=;HIH.H5E11ɺH=;PH5yIH5E11ɺH5AH=;L =-IL E11ɺ'H5H=;葑LHLzE11ɺ'H5əH=J:<HH'H9E11H5H=6:<HIHHH5[E11ɺ'H=;LH5=GH5ƋE11ɺ'H5H=;L )GL E11ɺ'H5٘H=9<䐑L%eGLNE1'H5H=9<HG'H E11H5^H=_;yHFHӊH5,E1'H=(;BH53{FH5E11ɺ'H5㗑H=;L /FL XE11ɺ$'H5H=(9<ڏLELE11ɺH5kH=HEXHۉE1H5,H=oHPHEHH5E11ɺ(#H=U;H5DH5eE1(#H5H=L եDL &E11ɺ(#H5uH=^8<ЎLAaDLꈑE11ɺ'H59H=;HD'HE1H5H=;eHCHoH5ȕE11ɺ4+H=/1H5bzCH53E14+H5H=L ;+CL E11ɺH5CH=6;ƍLGBLE11ɺH5H=;H#BXHwE1H5ȔH=;[H̰DBH=H5E11ɺ+H=;'H5AH5E1+H5MH=;L AL †E11ɺH5H=;L]ALE11ɺH5ՓH=g;HAHEE11H5H=V<THe@HH5gE11ɺH=$; H5y@H5҅E11ɺ0/H5!H=;싑L ݩ-@L E11ɺ@H5咑H=;LI?LZE1@H5H=;HҦ?@HE11H5jH=;MHF?H߄H58E1@H=p;H5>H5E11ɺ(#H5H=k;⊑L >L dE1(#H5H=4;L<\>L%E11ɺ(#H5tH=-;wH>(#H䃑E1H55H=;@H=HH5E11ɺ@H=; H5u=H5nE1@H5H=;ՉL V&=L /E11ɺH5~H=;L<LE11ɺH5BH=;mH<HE11H5H=s;9HZB<H{H5ԏE1XH=<;H53;H5<E11ɺH5H=5;ΈL ;L E11ɺ0/H5OH=;L{[;LāE10/H5H=;cHT ;<#HE11H5ԎH=;/H0:HIH5E1XH=_;H5 q:H5 E11ɺ.H5YH=;ćL U%:L ΀E1.H5H=S;L.9LE11ɺH5ލH=j;YH9 HNE11H5H=;%H>9HH5pE1XH=;H58H5E11ɺH5'H=;L {8L E1XH5茑H=;LT8L]E11ɺH5H=;OH8XHE1H5mH=h;HY7H~H5;E11ɺH=a;䅑H55m7H5~E1XH5H=*;L 7L g~E11ɺpH5H=;yL 6L+~E1XH5wH=;BH6*H}E11H5;H=;H_76H}H5 E1*H=;ׄH585H5q}E11ɺ*H5H=;L 5L 5}E1*H5H=p;lLM5L|E11ɺ*H5EH=k;8Hi5*H|E1H5H=4;HB4H{|H5ԉE11ɺH=/;̓H5f4H5?|E11ɺH5H=;L 4L |E11ɺH5RH=;eLf3L{E11ɺH5H=;1H3H{E11H5ڈH=;H63HO{H5E11ɺH=;ɂH5 2H5{E11ɺH5bH=u;L v2L zE11ɺ*H5&H=A;aL˜R2LzE11ɺH5ꇑH=6;-HN2 HZzE11H5H=;HJ1H#zH5|E11ɺH=;ŁH5n1H5yE11ɺH56H=;L ~"1L yE11ɺH5H=;]L0LoyE11ɺ H5H=X;)H:0XH.yE1H5H=!;H;0HxH5ME11ɺ H=;H5/H5xE1XH5H=;L Ț/L yxE11ɺH5ȅH=;SLT/L=xE11ɺH5H=;H }/HwE11H5PH=;H.HwH5E11ɺH=;H5p.H5wE11ɺ H5؄H=;L |$.L MwE11ɺ H5H=;OL-LwE11ɺXH5`H=f;H|-XHvE11H5$H=M;~Hh@-HvH5E11ɺXH=4;~H5Ԧ,H5]vE11ɺXH5H=](<~L {,L !vE11ɺXH5pH=I(<K~L\,LuE11ɺXH54H=;~HH{,XHuE11H5H=;}HT+HmuH5ƂE11ɺXH='<}H5zx+H51uE11ɺXH5H='<{}L l,+L tE11ɺXH5DH='<G}L*LtE11ɺ@H5H='<}H4* HxtE11H5́H=;|HH*HAtH5E11ɺ H=;|H5y)H5tE1XH5QH=i;t|L 5)L sE11ɺ H5H=h;@|La)LsE1XH5րH=1; |H*)HFsE11H5H=1;{H(HsH5hE11ɺ H=w&<{H5z(H5rE11ɺH5"H=k&<m{L .(L rE11ɺ H5H=,<9{L'L[rE11ɺH5H=d;{H'HrE11H5nH=E;zH"J'HqH5<E11ɺH=!;zH5&H5qE11ɺ H5~H=;izL w&L kqE11ɺ H5~H=;5zLwf&L/qE11ɺ H5~~H=W%<zH& HpE11H5B~H=K%<yH%HpH5~E11ɺ H=Q;yH5%H5{pE11ɺXH5}H= %<eyL v6%L ?pE11ɺ$'H5}H=%<1yLb$LpE11ɺ>+H5R}H=%<xH$>+HoE11H5}H=;xHjR$HoH5|E11ɺ@H={;xH5&v$H5OoE11ɺ@H5|H=S;axL v#L oE1@H5_|H=;*xL;k#LnE11ɺ.H5#|H=;wHu#.HnE11H5{H=;wHu"H\nH5{E1.H=};wH5"H5nE11ɺ@H5l{H=;WwL (u8"L mE11ɺ@H50{H=;#wLu!LmE11ɺpH5zH={;vH0!pHdmE11H5zH=X;vH<T!H-mH5zE11ɺ'H=3;vH5!H5lE11ɺ.H5@zH=;SvL Dt L lE11ɺ.H5zH=;vLp LylE11ɺ.H5yH=;uH$ 'H8lE11H5yH=;uHsHlH5ZyE11ɺ'H=;uH5H5kE11ɺ'H5yH=;OuL @L kE11ɺ'H5xH=t;uLLMkE11ɺ'H5xH=U;tH8'H kE11H5`xH=<;tH\HjH5.xE11ɺ'H=#;tH5H5jE11ɺ'H5wH=;KtL \L ]jE11ɺ'H5wH=;tL8xL!jE11ɺ'H5pwH=;sHT,'HiE11H54wH=;sHHiH5wE11ɺ'H=;{sH5qH5miE11ɺ+H5vH={;GsL ȌHL 1iE11ɺ+H5vH=A<sLLhE11ɺ+H5DvH=-<rH+HhE11H5vH=;rH<dH}hH5uE11ɺ+H=;wrH5hH5AhE11ɺ+H5uH=;CrL DL hE11ɺ +H5TuH=}<rLLgE11ɺ +H5uH=q<qH\4 +HgE11H5tH=m<qHxHQgH5tE11ɺ +H=i<sqH5$H5gE11ɺ +H5dtH=]<?qL PL fE11ɺ +H5(tH=Y< qL̕LfE11ɺ +H5sH=U<pH +H\fE11H5sH=Y<pHlH%fH5~sE11ɺ +H=;opH50 H5eE11ɺ +H58sH=;;pL L eE11ɺ +H5rH=;pL(nLqeE11ɺ +H5rH=;oHĔ< +H0eE11H5rH=;oHpHdH5RrE11ɺ +H=;koH5mH5dE11ɺ +H5 rH=o;7oL XL dE11ɺ'H5qH=X;oLt LEdE11ɺ'H5qH=1;nHЋ'HdE11H5XqH=;nHtHcH5&qE11ɺ'H=;gnH5(H5cE11ɺ'H5pH=;3nL L UcE11ɺ'H5pH=;mLLcE11ɺ.H5hpH={;mH lD'HbE11H5,pH=j;mHXHbH5oE11ɺ.H=6;cmH5dH5ebE11ɺ'H5oH=;;/mL `L )bE11ɺ.H5xoH=;lL LaE11ɺ'H5jH=>;qhHbz H\H5 jE11ɺ'H=5;=hH5>. H5w\E1'H5iH=;hL  L 8\E11ɺ'H5iH=;gLS L[E1'H5HiH=;gH D +H[E11H5 iH=;ggHe H[H5hE1+H=U;0gH5| H5B[E11ɺ.H5hH=!;fL }e] L [E1.H5RhH=;fLF| LZE11ɺ+H5hH=<fH"e +HZE1H5gH=<ZfH{s HLZH5gE11ɺ.H=<&fH5d' H5ZE1.H5\gH=]<eL P{L YE11ɺ.H5 gH=<eLLYE11ɺ$'H5fH=<eH8@$'HTYE11H5fH=<SeHHYH5vfE11ɺ$'H=;eH50H5XE11ɺ+H50fH=i<dL \L XE11ɺ+H5eH=]<dL؃LiXE11ɺ+H5eH=Q<dH'H(XE11H5|eH=E<OdH@xHWH5JeE11ɺ.H=;dH5\,H5WE11ɺ*H5eH=<cL L yWE11ɺ*H5dH=q;cLL=WE11ɺ*H5dH=[;cH|H+HVE11H5PdH=E;KcHHVH5dE11ɺ+H=&;cH5aH5VE11ɺ+H5cH=;bL dL MVE11ɺ+H5cH=;bLLVE11ɺ+H5`cH=;{bHx+HUE11H5$cH=;GbHXHUH5bE11ɺ4+H=;bH54H5]UE11ɺ4+H5bH=o;aL L !UE11ɺ.H5pbH=Q;aLLTE1.H51bH=;taHuM.HTE11H5aH=;@aH1HjTH5aE11ɺ.H=; aH5vH5.TE11ɺ.H5}aH=;`L _iL SE11ɺ.H5AaH=;`LLSE11ɺ.H5aH=};p`H!y.HuSE11H5`H=<<`H _H>SH5`E11ɺ/H=<`H5^tEH5SE11ɺ/H5U`H=<_('HxHRH[]H=)`HHEH !`HHEhDH`HHEDL`MMEDL_MMEDH=_HHE8DH _HHEDH_HHEDL_MMEQDL_MMEDH=_HHEDH _HHEmDHq_HHE!DLa_MMEDLQ_MMEDH=A_HHE=DH 1_HHEDH!_HHEDL_MMEYDL_MME DH=^HHEDH ^HHEuDH^HHE)DL^MMEDL^MMEDH=^HHEEDH ^HHEDH^HHEDLq^MMEaDLa^MMEDH=Q^HHEDH A^HHEzDH1^HHE+DL!^MMEDL^MMEDH=^HHEDDH ]HHEDH]HHEDL]MMEZDL]MMEDH=]HHEDH ]HHEsDH]HHE$DL]MMEDLq]MMEDH=a]HHE=DH Q]HHEDHA]HHEDL1]MMESDL!]MMEDH=]HHEDH ]HHEoDH\HHE DL\MMEDL\MMEDH=\HHE9DH \HHEDH\HHEDL\MMEUDL\MME DH=q\HHEDH a\HHEqDHQ\HHE%DLA\MMEDL1\MMEDH=!\HHEADH \HHEDH\HHEDL[MME]DL[MMEDH=[HHEDH [HHEyDH[HHE-DL[MMEDL[MMEDH=[HHEIDH q[HHEDHa[HHEDLQ[MMEeDLA[MMEDH=1[HHEDH ![HHEDH[HHE5DL[MMEDLZMMEDH=ZHHEQDH ZHHEDHZHHEDLZMMEmDLZMME!DH=ZHHEDH ZHHEDHqZHHE=DLaZMMEDLQZMMEDH=AZHHEYDH 1ZHHE DH!ZHHEDLZMMEuDLZMME)DH=YHHEDH YHHEDHYHHEEDLYMMEDLYMMEDH=YHHEaDH YHHEDHYHHEDLqYMME}DLaYMME1DH=QYHHEDH AYHHEDH1YHHEMDL!YMMEDLYMMEDH=YHHEiDH XHHEDHXHHEDLXMMEDLXMME3DH=XHHEDH XHHEDHXHHEODLXMMEDLqXMMEDH=aXHHEkDH QXHHEDHAXHHEDL1XMMEDL!XMME;DH=XHHEDH XHHEDHWHHEWDLWMME DLWMMEDH=WHHEsDH WHHE'DHWHHEDLWMMEDLWMME@DH=qWHHEDH aWHHEDHQWHHEYDLAWMME DL1WMMEDH=!WHHEuDH WHHE)DHWHHEDLVMMEDLVMMEEDH=VHHEDH VHHEDHVHHEaDLVMMEDLVMMEDH=VHHE}DH qVHHE1DHaVHHEDLQVMMEDLAVMMEMDH=1VHHEDH !VHHEDHVHHEcDLVMMEDLUMMEDH=UHHEDH UHHE3DHUHHEDLUMMEDLUMMEODH=UHHEDH UHHEDHqUHHEkDLaUMMEDLQUMMEDH=AUHHEDH 1UHHE;DH!UHHEDLUMMEDLUMMEQDH=THHEDH THHEDHTHHEjDLTMMEDLTMMEDH=THHEDH THHE4DHTHHEDLqTMMEDLaTMMEJDH=QTHHEDH ATHHEDH1THHEcDL!TMMEDLTMMEDH=THHE|DH SHHE-DHSHHEDLSMMEDLSMMEFDH=SHHEDH SHHEDHSHHE_DLSMMEDLqSMMEDH=aSHHExDH QSHHE,DHASHHEDL1SMMEDL!SMMEBDH=SHHEDH SHHEDHRHHE[DLRMME DLRMMEDH=RHHEtDH RHHE(DHRHHEܾDLRMME鐾DLRMMEDDH=qRHHEDH aRHHE驽DHQRHHEZDLARMMEDL1RMME¼DH=!RHHEsDH RHHE'DHRHHEػDLQMME錻DLQMME@DH=QHHEDH QHHE饺DHQHHEVDLQMME DLQMME龹DH=QHHErDH qQHHE#DHaQHHE׸DLQQMME鈸DLAQMME<DH=1QHHEDH !QHHE餷DHQHHEXDLQMME DLPMMEDH=PHHEtDH PHHE(DHPHHEܵDLPMME鐵DLPMMEDDH=PHHEDH PHHE鬴DHqPHHE`DLaPMMEDLQPMMEȳDH=APHHE|DH 1PHHE0DH!PHHEDLPMME防DLPMMELDH=OHHEDH OHHE鴱DHOHHEhDLOMMEDLOMMEаDH=OHHE鄰DH OHHE8DHOHHEDLqOMME頯DLaOMMETDH=QOHHEDH AOHHE鼮DH1OHHEmDL!OMME!DLOMMEҭDH=OHHE醭DH NHHE7DHNHHEDLNMME霬DLNMMEPDH=NHHEDH NHHE鵫DHNHHEfDLNMMEDLqNMME˪DH=aNHHEDH QNHHE0DHANHHEDL1NMME镩DL!NMMEIDH=NHHEDH NHHE鮨DHMHHE_DLMMMEDLMMMEħDH=MHHExDH MHHE)DHMHHEݦDLMMME鎦DLMMMEBDH=qMHHEDH aMHHE駥DHQMHHEXDLAMMME DL1MMME齤DH=!MHHEqDH MHHE"DHMHHE֣DLLMME釣DLLMME;DH=LHHEDH LHHE頢DHLHHEQDLLMMEDLLMME鶡DH=LHHEjDH qLHHEDHaLHHEҠDLQLMME醠DLALMME:DH=1LHHEDH !LHHE颟DHLHHEVDLLMME DLKMME龞DH=KHHErDH KHHE&DHKHHEםDLKMME鋝DLKMME<DH=KHHEDH KHHE顜DHqKHHEUDLaKMME DLQKMME齛DH=AKHHEqDH 1KHHE%DH!KHHEٚDLKMME鍚DLKMMEADH=JHHEDH JHHE驙DHJHHE]DLJMMEDLJMMEŘDH=JHHEyDH JHHE-DHJHHEDLqJMME镗DLaJMMEIDH=QJHHEDH AJHHE鱖DH1JHHEeDL!JMMEDLJMME͕DH=JHHE違DH IHHE5DHIHHEDLIMME靔DLIMMEQDH=IHHEDH IHHE鹓DHIHHEmDLIMME!DLqIMMEՒDH=aIHHE鉒DH QIHHE=DHAIHHEDL1IMME饑DL!IMMEYDH=IHHE DH IHHEDHHHHEuDLHMME)DLHMMEݏDH=HHHE鑏DH HHHEEDHHHHEDLHMME魎DLHMMEaDH=qHHHEDH aHHHEɍDHQHHHE}DLAHMME1DL1HMMEDH=!HHHE陌DH HHHEMDHHHHEDLGMME鵋DLGMMEiDH=GHHEDH GHHEъDHGHHE酊DLGMME9DLGMMEDH=GHHE顉DH qGHHEUDHaGHHE DLQGMME齈DLAGMMEqDH=1GHHE%DH !GHHEهDHGHHE鍇DLGMMEADLFMMEDH=FHHE驆DH FHHE]DHFHHEDLFMMEŅDLFMMEyDH=FHHE-DH FHHEDHqFHHE镄DLaFMMEIDLQFMMEDH=AFHHE鴃DH 1FHHEhDH9HH+H[]fH{hH5;֖L Y1H{hH5ڏ;HHEIDHa8d֖L=1H{hH5;HHEIDH-88֖L!1H{hH5HHlEIDH7 ֖L1H{hH5g;HH8EIDH7ՖH0H{hH5L;HHEHDH7ՖH 0H{hH50;HHDHDH]7ՖH5XH{hHHDHDH5 ;H)7\ՖH=0H5;HHlDHDH{hH60ՖL i0H{hH5;HH4DIDH6ՖL}^H{hH5Ԏ;HHDIDH6ԖL!0H{hH5;HHCIDHY6ԖLTH{hH5;HHCIDH%6ԖHXH{hH5;HHdCHDH5TԖH /H{hH5^;HH0CHDH5(ԖH5QOH{hHHCHDH5>;H5ӖH=e/H57;HHBHDH{hHU5ӖL IWH{hH5;HHBIDH!5ӖL/H{hH5 ;HH`BIDH4xӖLWH{hH5;HH,BIDH4LӖL.H{hH5;HHAIDH4 ӖH.H{hH5֍;HHAHDHQ4ҖH .H{hH5ō;HHAHDH4ҖH5[H{hHHcAHDH5;H3ҖH=MH5;HH,AHDH{hH3pҖL ]H{hH5v;HH@IDH3DҖL\H{hH5Z;HH@IDHM3ҖL\H{hH5>;HH@IDH3іL\H{hH5;HHX@IDH2іHiUH{hH5;HH$@HDH2іH \H{hH5;HH?HDH}2hіH5!-H{hHH?HDH5;HI2<іH=-H5;HH?HDH{hH2іL [H{hH5;HHT?IDH1ЖLLH{hH5|;HH ?IDH1ЖLaYH{hH5h;HH>IDHy1ЖLTH{hH5X;HH>IDHE1`ЖHYH{hH5D;HH>HDH14ЖH ,H{hH5);HHP>HDH0ЖH51[H{hHH#>HDH5 ;H0ϖH=XH5;HH=HDH{hHu0ϖL XH{hH5;HH=IDHA0ϖLSH{hH5ɋ;HH=IDH 0XϖLSH{hH5;HHL=IDH/,ϖLeRH{hH5;HH=IDH/ϖHJH{hH5{;HH<HDHq/ΖH *H{hH5c;HH<HDH=/ΖH5*H{hHH<HDH5>;H /|ΖH=OH56;HHL<HDH{hH.PΖL OH{hH5;HH<IDH.$ΖLVH{hH5 HH;IDHm.͖L*H{hH5؊;HH;IDH9.͖LEHH{hH5R HHx;IDH.͖HUH{hH5H HHD;HDH-t͖H LH{hH5j;HH;HDH-H͖H5RH{hHH:HDH5{Hi-͖H=RH5);HH:HDH{hH5-̖L IJH{hH5 ;HHt:IDH-̖LMGH{hH5;HH@:IDH,̖LLH{hH5;HH :IDH,l̖LSH{hH5Љ;HH9IDHe,@̖HY(H{hH5;HH9HDH1,̖H =(H{hH5HHp9HDH+˖H5!(H{hHHC9HDH5m;H+˖H=5KH5j;HH 9HDH{hH+˖L RH{hH5J;HH8IDHa+d˖L'H{hH5HH8IDH-+8˖L'H{hH5HHl8IDH* ˖Lu'H{hH5ۈ;HH88IDH*ʖHY'H{hH5HH8HDH*ʖH =JH{hH5˪HH7HDH]*ʖH5SH{hHH7HDH5W;H)*\ʖH=QH5M;HHl7HDH{hH)0ʖL &H{hH5/;HH47IDH)ʖL&H{hH5;HH7IDH)ɖL&H{hH5;HH6IDHY)ɖLe&H{hH5ه;HH6IDH%)ɖHI&H{hH5Ň;HHd6HDH(TɖH }QH{hH5;HH06HDH((ɖH5HH{hHH6HDH5|;H(ȖH=%H5;HH5HDH{hHU(ȖL OH{hH5a;HH5IDH!(ȖLBH{hH5J;HH`5IDH'xȖLRH{hH52;HH,5IDH'LȖL5%H{hH5;HH4IDH' ȖH%H{hH5;HH4HDHQ'ǖH $H{hH5;HH4HDH'ǖH5AH{hHHc4HDH5Ɔ;H&ǖH=EH5Ć;HH,4HDH{hH&pǖL AH{hH5;HH3IDH&DǖL]$H{hH5;HH3IDHM&ǖLAH{hH5|;HH3IDH&ƖL%AH{hH5`;HHX3IDH%ƖHIDH{hH5J;HH$3HDH%ƖH -DH{hH54;HH2HDH}%hƖH5DH{hHH2HDH5 ;HI%<ƖH=DH5;HH2HDH{hH%ƖL KH{hH5;HHT2IDH$ŖLOH{hH5;HH 2IDH$ŖL"H{hH5;HH1IDHy$ŖLe?H{hH5s;HH1IDHE$`ŖH KH{hH5^;HH1HDH$4ŖH BH{hH5I;HHP1HDH#ŖH5A"H{hHH#1HDH5;H#ĖH=UBH5 ;HH0HDH{hHu#ĖL !H{hH5;HH0IDHA#ĖL=>H{hH5ф;HH0IDH #XĖL!H{hH5;HHL0IDH",ĖL=H{hH5;HH0IDH"ĖHi!H{hH5~;HH/HDHq"ÖH m=H{hH5i;HH/HDH="ÖH5!!H{hHH/HDH5?;H "|ÖH==H5:;HHL/HDH{hH!PÖL H{hH5;HH/IDH!$ÖLH{hH5g;HHt-IDH L>H{hH5U;HH@-IDHLJH{hH5@;HH -IDHlLJH{hH50;HH,IDHe@H FH{hH5;HH,HDH1H EH{hH5;HHp,HDHH5JH{hHHC,HDH5ׂ;HH=uJH5Ђ;HH ,HDH{hHL 9HH{hH5;HH+IDHadLHH{hH5;HH+IDH-8LHH{hH5;HHl+IDH LeHH{hH5j;HH8+IDH࿖HiGH{hH5R;HH+HDH贿H MGH{hH5?;HH*HDH]舿H5AH{hHH*HDH5;H)\H=8H5;HHl*HDH{hH0L H{hH5;HH4*IDHL=8H{hH5;HH*IDHؾLH{hH5ˁ;HH)IDHY謾L7H{hH5;HH)IDH%耾HiH{hH5;HHd)HDHTH m7H{hH5;HH0)HDH(H5!H{hHH)HDH5U;HH=7H5P;HH(HDH{hHUнL H{hH52;HH(IDH!褽L6H{hH5;HH`(IDHxLDH{hH5;HH,(IDHLL7H{hH5;HH'IDH HiH5~;HH#HDH{hHu谹L >H{hH5;HH#IDHA脹L>H{hH5~;HH#IDH XL>H{hH5~;HHL#IDH,LU3H{hH5}~;HH#IDHH >H{hH5m~;HH"HDHqԸH =H{hH5:;HH"HDH=訸H58H{hHH"HDH5 ;H |H=8H5~;HHL"HDH{hHPL )AH{hH5};HH"IDH$L?H{hH5;HH!IDHmL!H{hH5;HH!IDH9̷L4H{hH5};HHx!IDH蠷H4H{hH5;HHD!HDHtH M0H{hH5H};HH!HDHHH5@H{hHH HDH5X;HiH=%2H5$hHH HDH{hH5L )H{hH5|;HHt IDHĶL/H{hH5gHH@ IDH蘶LH{hH5;HH IDHlL%/H{hH5;HHIDHe@HH{hH5C|;HHHDH1H }H{hH5(|;HHpHDH赖H5.H{hHHCHDH5fH輵H=2H5{;HH HDH{hH萵L 2H{hH5{;HHIDHadL:H{hH5{;HHIDH-8L:H{hH5{;HHlIDH Le:H{hH5{{;HH8IDHഖH4H{hH5f{;HHHDH贴H m4H{hH5V{;HHHDH]舴H5Q>H{hHHHDH5){;H)\H=E>H5"{;HHlHDH{hH0L )>H{hH5{;HH4IDHL3H{hH5z;HHIDHسL3H{hH5z;HHIDHY謳L%H{hH5z;HHIDH%耳H0H{hH5z;HHdHDHTH 0H{hH5z;HH0HDH(H5+H{hHHHDH5sz;HH=H5mz;HHHDH{hHUвL I+H{hH5Vz;HHIDH!褲L.H{hH5?z;HH`IDH xL.H{hH5-z;HH,IDH LLH{hH5z;HHIDH H*H{hH5z;HHHDHQ H 8H{hH5y;HHHDH ȱH510H{hHHcHDH5y;H 蜱H=7H5y;HH,HDH{hH pL 7H{hH5y;HHIDH DLm7H{hH5y;HHIDHM L6H{hH5ry;HHIDH 찖L6H{hH5]y;HHXIDH H6H{hH5@y;HH$HDH 蔰H 6H{hH5*y;HHHDH} hH56H{hHHHDH5x;HI ;HHHDH1H H{hH5Vi;HHpHDH蔖H5QH{hHHCHDH5;H輔H=% H5;HH HDH{hH萔L H{hH5;HHIDHadL H{hH5;HHIDH-8LH{hH5;HHlIDH LU H{hH5;HH8IDHHH{hH5;HHHDH贓H MH{hH5;HHHDH]舓H51H{hHHHDH5g;H)\H=UH5;HHlHDH{hH0L 9H{hH5;HH4IDHL H{hH5;HHIDHؒLH{hH5;HHIDHY謒LH{hH5%g;HHIDH%耒HH{hH5n;HHdHDHTH mH{hH5f;HH0HDH(H5aH{hHHHDH5f;HH=e H5f;HHHDH{hHUБL H{hH5f;HHIDH!褑L=H{hH5f;HH`IDHxLH{hH5}f;HH,IDHLLeH{hH5ef;HHIDH HY H{hH5Qf;HHHDHQH H{hH5>f;HHHDHȐH5H{hHHcHDH5f;H蜐H=eH5f;HH,HDH{hHpL IH{hH5~;HHIDHDL-H{hH5e;HHIDHMLH{hH5e;HHIDH쏖LH{hH5e;HHXIDHHiH{hH5e;HH$HDH蔏H }H{hH5qe;HHHDH}hH5 H{hHHHDH5;HI~L#dfH~ef. H}}gUHAWAVAUIATISHHxHt kMt I|$hbAuE}0E7HHEE0I}@EAfDH HyLAAAD)L M1L1I MApIA)LM MMHt_DqLDAA)JI8LHGEE0I}@AE9"AE0~I]@E}0E; ELLDAŝHEiӓDMI A1LEiʓEH(E1MAiDI01DiƓAE1AiȓMI8D1iѓ1i1D1DiDAM}@MHuHH?HL9guHAL=:HyM] IM] K4AMVAI9AEK4AINI9„I4σI~AI9AEI4IVAI9AtsI4׃MFI9ADtYK4AI~AI9At>I4MNI9t&K4AAI9AIEfDAA;usxIHEMI}(EE1DH Ht|A1H9AM I1H1I HtWG1HAMMLI8Ht:A1H9AM I1H1I HtG1HAMMLI8HuEMI}(AE9kEuwM}(MUI|$PHLwPwMM~PLwMttMwPLxwMtcM~PLgwMtRMwPLVwMtAM~PLEwMt0MwPL4wMtM~PL#wLMpI|$@HLw@vMM~@LvMtoMw@LvMt^M~@LvMtMMw@LvMtf6vH o:DpHL`IMU8MrMu8M3H4HxI9ƒADH4LxI9AÃAEJ4L@I9AAAJ4HxI9AAAEtsH4HPI9AǃAEtXH4LPI9AÃAEt=J4HxI9AAAEt!H4I9ƒAHDAA;u0uIHEU0I}@EE1DLMAC1MAM I9I;MMtZAB1MAI4HI LMtLnMtM'LnLMzfHCAA9UHtHnDK0HC@HCHCN4LL9L MLXMM)IALLXMcM(IItwIt^ItEIt,ItM#LIMM#LIMM#LIMM#LIMM#LIMLIMcMLM9IKLaMutMcHI{MudMcHMCMuTMcLMk MuDMc LM{(Mu4Mc(LMK0Mu$Mc0LMS8MuI@McLMsLnfDI|$ M$$MuM9MLLL)HHHHtHtiHtSHt=Ht'HtMeM IEL MHL MHL MHL MHL MHL MHI9L MLXM#LMHL MqMcICM`McICMOMc IC M>Mc(IC(M-Mc0IC0MIC8I9oS0HC@E1DEJkMt)M>L.kMtM'LkLMzfS0HC@AD9THtHjKHLCXHC@HC8M4C0HM9M MUMHLL)HMMHMaM*HHtwHt^HtEHt,HtM!MIMM!MIMM!MIMM!MIMM!MIMMIMaMMM9Y MQMbMuvMaMMYMufMaMMyMuVMaMIQ MuFMa IIA(Mu6Ma(III0Mu&Ma0IIy8MuI@MaIMsfIL$DIAŝIEiѓAAAA1HEiړH A1HAiDH(D1DiדE1EiII0AA1EiϓII8A11EiٓE1AiÓIMuLfMt-M>LfMtM/LrfLMvfDsHLCXAA9LMtL?fLKpHCXHCPCHLMM@MiM@M}Mt8Mg LCFu At A?̐LGFLELeM}MeMt8Mo LEu At A?ːLFLELeM|$Mt8Mo LEu At A?ːLELxEL@eM|$Mt8Mo LzEu At A?VːL~EL6ELdM|$Mt8Mo L8Eu At A?ːLLOcMtZM7L?cMtJM&L/cMt:M4$LcMt)M>LcMtM'LbLMzfSHHKXAA9THtHbDC0LK@EE1DIL>bMtM'L.bLMzfDC0LK@AE9SMtLaD[HC(EE1f.EJM4$LraMt-M>LbaMtM'LRaLMvfDD[HC(AE9KHtHaHsE1DDHL`MtM'L~`LMzfHsAD9UHHH[A\A]A^A_]>`L1AT$(V`DCHLKXEE1f.DIM4$L_Mt-M>L_MtM'Lr_LMvfDDCHLKXAE9KMtL>_D[0HC@EE1f.EJM4$L^Mt-M>L^MtM'L^LMvfDD[0HC@AE9KHtH^^SHs(E1@DHL]MtM'L]LMzfSHs(AA9THtH]DHsE"E1@DHL\MtM'L\LMzfDHsAE9THoH[A\A]A^A_]@LhLhy6H6HaMUH=XHSHu7HÐHtHSH\HH[]U\DH[]ÐU1HHHEW`uHxHu1HEÐHOL L9HHHQMI)IAHHHzHIItwIt^ItEIt,ItH:HHH]H:HHHJH:HHH7H:HHH$H:HHHHHHzHHI9ALRIzHHzLLZHHzLLBHHzLLR HHz LLZ(HHz(LLB0H|Hz0LLR8HhH@HzLHWO@HH<HI9gLIH)HHHHHttHt[HtBHt)HtHLYHILIHILIHILIHILIHILIHu~ILHusIM9ILHu[ICIKHuNICIKHuAICIKHu4IC IK Hu'IC(IK(HuIC0IK0Hu IC8IK8Ht@HHGHPPHH;2u 3DH92tHRPHuDI@M9M1ff.HOL L9HHHQMI)IAHHHzHIItwIt^ItEIt,ItH:HHH]H:HHHJH:HHH7H:HHH$H:HHHHHHzHHI9ALRIzHHzLLZHHzLLBHHzLLR HHz LLZ(HHz(LLB0H|Hz0LLR8HhH@HzLHWO@HH<HI9gLIH)HHHHHttHt[HtBHt)HtHLYHILIHILIHILIHILIHILIHu~ILHusIM9ILHu[ICIKHuNICIKHuAICIKHu4IC IK Hu'IC(IK(HuIC0IK0Hu IC8IK8Ht@HHGHP@HH;2u 3DH92tHR@HuDI@M9M1ff.UpHAUIATISHUL(HHxhH@@@H@H@ H@(H@0@8H@@H@HH@PH@X@`@d5I$H[A\A]]UHAWAVIH=AUIATSH4E>E1rTHH A6I~ADH HyH1AAAD)LMLI HDfHDAA)N MLI1HtdDYH1DAAADA)JI4$H@A6I~AA9APSI^E>EEDMDIDŝADiÓLH A1LEiȓDH(A1LEiٓDH0A1AiD1D1iΓLH8D1DiѓE1Ai1iߓAM~MHt8A1H9MML IHtG1HI4LLH>HuEI~AE9pAHNM~I~xL,AFdA$MAH ):HLhXIMN MQMV M J4AI{I9„H4MKAI9AEJ4AICI9ADH4I{I9ADtnH4I[AI9AEtSH4كISAI9At9H4уI{AI9AEtH4AI9IAA;vyLIHYEFI~(EE1EJ HtzA1L9M I9H9I MtVAG1II4LML>Ht9A1LMEM]A}MEH@(IƉ8H@L@LX@@H@HH@PH@0b@8IMHX(HH E|$HMmEADLDHŝDiӓLH A1LEiړDH(A1LEiÓDH0A1EiȓDE1AiɓMI8D1iѓD1i1D1iޓAM|$XMJAHyAI9At#HAI9AHE@A;F@! ƿAIHE~@I~PEE1DLMAB1I2MdM $M M$Ht[F1LI|L?L>H7Mt>AB1MILH1I2LMt A@1MMdM $MM$MuE~@I~PAE9`A^@@MnPAF8;f @L:LhHLpXIMt$PMnMl$PM I˃LI@I9ADKALqI9ADKAHyI9ADILI@I9ADtpKALqI9ADtUKAHyI9ADt:ILI@I9ADtKAI9AHDA;D$Hƿe?IHAt$HI|$XE1@DLMt~A@1MM4I>I8MMtWAC1MI4LM LMt:A@1MI LMLMtAB1MM4I>I:MMuAt$HI|$XAA9iA\$H>M|$X1I~PE1I|$XE1EN@EI~P1E1A|$HI|$X1E1렐UHATISH`HM~M~U HE0HU~EMLEU(DME)M)E)UHEHXH=fo]HSXfoe`fomh foup0HMHPHHH@H@PHsXHt)HFPHCXHuHLu#H`[A\]DHCPf.AD$dAD$`H`[A\]@F4t F0D+f.OHLGXUHAVAUIATIS@DMIL5ŝEH MiDI(1LDiΓH8E1EEiA1LAiH01DiΓE1EiA1Ai11iǓMM4DMMt'M9buMrMt LL!<AMHMEXŝDMDiۓIDAA1AiMI A1LDiLH0H(DA1LEi֓H8A1AiD1DiA1Ei֓A11Ai“M4I>Hu@IH?HL9guL'M&C;MuPH h:IMuPH4كH{AI9AEH4HSAI9AH4уLKAI9AEJ4AH{AI9AEtrH4LcI9„tZJ4ALSAI9AEt>J4AH{AI9At#H4I9AHDDAA;uH/:IHAuHI}X1ېLMAC1M AMMMMMtZAA1MAI@A$l A;DDE$lAgD;DDQA$l;AAAfA$lK;AEE5fE$lAE;@@AE$lA7E;@@A E$lAE;@@AA$lE1;AA$ld1;TE$lA1E;@A$l1;E$lA1E;@ A$lE1;AEʼnAE$lAkD;@@ATA$lA;AAAE$lA"E1E;AE$lAE1D;AA$lA;AAA$lA;AAAE$lAE;AAAA$lA;DEA$lA;DDA$lA;AA$l;AE$lAD;AA$l1;E$lA1D;@A$l1A;E$lA1D;off.DEHG;HOAN AtuHHO9It`ItOIt>It-ItIt HH9tHH9ttHH9tiHH9t^HH9tSHH9tHL9tLH9tfUHSHHuDG(H8EI5ŝIDiȓAII A1щEiѓA1AEiʓA1HEiѓH(A1HEiʓDH0HH8E1EiٓDE1EiӓA11Ai“ALMu2f.MMt I9XuIH1[]HfD[]u1HUHATISHDO(H8E@ƉI5ŝIDiAA1HEiГH DHH0A1Ei“A1EiГII(AE1DHAi“H81DiГE1Ai“11iAH Mt9M&L. Mt)M4$L MtM&L LMySHC AA9THt[HA\A]A^] [A\A]A^]ÐfDDGpHHEI5ŝIDiȓAII A1щEiѓA1AEiʓA1HEiѓH(A1HEiʓDH0HH8E1EiٓDE1EiӓA11Ai“ALMu2fMMt!I9HuIHAPuDHyH% ff.UHAUATSH(DOpHEHELEiH5ŝIiؓIE1HDiӓH E1IEiDI(A1AiݓED1DiۓHH0E1AiÓ1HDiГH8A11Ai“AM MuDM MI9IuIY{PtH{1H([A\A]]IIHuHΤuH+nI}uQL-mH}HuAUH}AHnu*HuCPDkHHsA$H([A\A]];H([A\A]]H% ff.UHAWIXAVIAUATSHL8IH@Lp@@ H@(H@0@8H@@H@H@PEopE8HHAwpIADH HyH1AAAD)LMLI H~HAAAD)LMLI2Ht\yH1AAAD)LMLI Ht0~HAAAD)LMLI2HHAwpIAA9 AGpsIEopEADLEŝHDiÓDLLAH H0A1LAiГDH(D1Diғ@E1AiDD1iΓLH811DiɓE1EiٓA1AiۓAMMlMEMu,@MMMtM;puH1[A\A]A^A_]fD fAH Yz:L`HLpXIEMwxMfMgxMJ4IBI9AAAEH4MrI9ƒADJ4IzI9AADH4IBI9AAEtvH4MrI9ƒADt\J4IzI9AADtAH4IBI9AAEt&H4I9ƒAIDA;wp@IHE_pIEE1DEJ HA1L1I|LL HMtYAF1IM\I3I6M3Ht;A1LMTM2L1I MtA@1II|LMLHuE_pIAE9bA_paMH1[A\A]A^A_]At$8MD$HE1@EKL8MtcM7L(MtSILHtCL;HMt3ILHt#L3HMtM>LLMuAL$ ID$0AA9YHtHLH[A\A]A^A_]IE1ApI1E1fUHAVAUIATSLMD_pIXLEH5ŝHDiD׉A1HAiH D1IDiΓI(A1EiEA1AiII0AD1iǓHH811i1iƓAMMuH% @MMtI;[uI[{PAx[A\A]A^]3LM@ID_pLHXEtIށŝIDiʓAII A1EiA1AEi̓A1HEiH(A1HEi̓DH0E1IEiDI81E1AiƓD1iAM MufDM MI;YuIY{PudM@MHIIHu@A<$H[HtlH LIMH3HVL[t[A\A]A^]fDL[MtMMUI8[A\A]A^]B2fH{MEc[1A\A]A^]DH;fUHAWAVAUATSH^t1H[A\A]A^A_]DLIIALAFtLfDHMIVHLIv8ÅuIVH}HrIv(tdL%cIV0I~A$=uEtu1,P`LIvHxxÅuAFvfD)1bfz1QUHAUIATISHHHEtNHti1Huu&HuHtaLu HUHJIMH[A\A]]fHuعb2uHuHb[A\A]]H)bHLtV0@UHHAWAVAUATSH(DW(LLO8EhADM5ŝILDiؓEDH MI(A1EiE1EEiA1LEiߓH0A1LEiDH8E1EiE1EiA11AiēAIHu@HHtL;CuDWpLEDIωIAŝEiEII(A1EiII AE1EEiA1HEi̓H0A1HEiDH81E1EiE1EiA1AiœAMMuMMI9JuIIMzHtOH[Hs@L8H@HpH{@HHGHC@1H([A\A]A^A_]IMHHMLpLI¸MtHuLLLULEP@LHEnM]EMfIIEEIFIFM^ AF8IFHAFIUIV0IwIv(I~@L8HxH@IN@H HAIF@At$(MMWuLMLMHH$AD$(I|$8DUAfDEJ HDYH9DAA)NIHI HD_HDAA)NIHI;Ht\DYH9DAA)NIHI Ht0D_HDAA)NIHI;HHAD$(I|$8AD9!AD$(LMHuLMML$8LMAt$(EDLAŝHEiГA1LEiړEH AA1LEiÓDH(E1AiȓDD1iѓLH0D1DiғLH8A1EiړA11EiÓDIt$8LI HL9IE_ EDD]IHAw I0DMADH HyH1AAAD)II3Ht:A1H1AMI;H9I HtF1HAMI;H>I3HuAt$(I|$8AA9iEL$(LELEMD$8DL9O HH?HuDUHMDMLEHMmLg:DHLhIIw(LVMW(M6IHzI9ADILjI9@ƃADKHzI9AADILjI9@ƃADtpKHzI9AADtUILjI9@ƃADt:KHzI9AADtII9@ƃAHDAA;G 'ƿHHE_ I0EE1DH Ht~A1LAL I9H9I MtYAC1I AH4LMLHt;A1LAL I9H9I MtAC1I AH4LMLHuE_ I0AE9iEo I_0H]DsEnDuDkEH;Ht EEH}ȉEpEqIF8ZI0I|$8E1CAG kI0E1qAD$(II|$8E1E1fDUHAVAUATSH^8tH1ۉ[A\A]A^]fLIIL AE8tL+H[A\A]A^]@HMIU0LIu 4ÅuIM0}HQIUtDAAADA)ODIHI0HDOH7DAAADA)OLIHI9HtdDFH>DAAADA)ODIHI0Ht4DOH7DAAADA)OLIHI9H8AWI AA9AGHM Mo HME_EEDMAŝILEiՓEEH AMI(A1LAiH8D1Ei֓D1MDiғI0A1AiED1i֓D1i11DiDAM_ I4LMuhDLMMTM;`uE~8E5IH Av8I~HADEJ HyH1AAAD)MTMLI H~HAAAD)MTMLI2Ht^yH1AAAD)MTMLI Ht1~HAAAD)MTMLI2HDAv8I~HAD9AF8MnHE~8EEDLEAŝHEiœDMLAI H0A1LAiГEH(D1Diғ@E1AiDD1iΓLH811DiɓE1EiٓA1EiDAM~HMHuEWI AE9kEoLELmMo ALV:HL`DhIMf@IL$IN@HKIRH9AA@AIMbH9AǃAEKIzH9AAAEIMzH9@ƃ@trKMjH9AAAEtVKIzH9AA@At:IMbH9ƒADt KH9AAAIEAA;F8ƿvHHEf8I~HEE1fDDLHt!L;guL9gHH?HuLmM I} HLg(MM|$LMtuMgLMtdMt$LMtRM~LMtAMgLMt0Mt$LMtM~LLMmfDLVHL5nM:HvMUAIMUK4AI{AI9AI4MCI9K4AMKAI9AEK4AI{I9„trI4M{I9ADtXK4AICAI9AEtLMtILHHuAU8MEHAD9[ME] IM0EE1fDEJLMtILHHuE] IM0AE9SHtHL1H[A\A]A^A_]ÅTLeMUHAWIAVIAUATISHH(BDj HEREUE"HHu1H;A0HuHL&A AEGEOEEAW AwAMd$E$E$E$D9,E9#E9A$E$A$9*A9!9DmE$H:DmDE9HEE1HtDE9LhM.HeD[A\A]A^A_]DMHHpDMHHtEt$pI$E IIŝEDiHH A1EiԓDHH8E1Ei“II(EA1EiII0AE1AiݓD1DiA1EiA11AiœAHHuffDHHTH;KuŝIAHiޓIAEH 1HDiӓH(E1IEi“DI0E1EiEA1HAiܓH8D1DiۓE1EiA11AiœAL4MuifDM6MWI;NuINy2bA%f.HuȹbH߶AHuHfH:1H=Ά:1i`A fDAH4:AbAfDAbDHq/HLmA]fHH-:AWASAR1H=4:1_H A +HASAPAQHY:H:1H=:1_A H% f.UHAVAUIATISDw@E-HHAu@I}PADH HyH1AAAD)LMLI H~HAAAD)LMLI2Ht\yH1AAAD)LMLI Ht0~HAAAD)LMLI2HHAu@I}PAA9#AE@vI]PEu@EADLEŝHDiÓDLLAH H0A1LAiГDH(D1Diғ@E1AiDD1iΓLH811DiɓE1EiٓA1AiۓAMuPM4MMt&M;`u fDM9`MMMuyAH l<:HL`XIMeHMT$MUHMJ4ISI9AAAH4I{I9AăAEH4ICI9ÃADH4McI9AAtoJ4I{I9AADtTH4ISI9AƃAt:H4I[I9AAEtH4I9A@IAA;u@`IHEM@I}PEE1EJ Ht|A1L M$I4$H1I $MtVAA1I MI8I9MHt9A1LM M!L!I MtAC1I I4LMLHuEM@I}PAE9kA]@MuP1[A\A]A^]I}PE1A}@tI}P1E1¸fDUHAWAVAUIATISHw@EupE EDLEAŝHMAiAMI 1LDiޓAH(A1LAiDH0D1DiǓLH8A1AiؓD1iÓ1DiȓA11AiAM4MtM;fE}XE8\HHE]XI}hEAfDH HyLAAAD)LI0H1IMA{I AAAD)LI0I3MHt]yLAAAD)LI0H1IMt1A{I AAAD)LI0I3MHFE]XI}hAE9!AEX4I]hE}XEF INHȉHŝDiӓDHH A1AiғDHH8D1Di“HH(1A1EiؓII0AE1Ai1DiϓA1EiٓA1AiۓAM}hMI4MWI9ADt$K4I9AAIDDA;uphIHEUpIEE1DEJ Ht}A1LIHXL;guUDL9gFHH?Hu.fD莽HMvXLpIIM`Hi2:LYM]`M8H4HSI9AAEH4H{I9AƒAH4LCI9AǃAEJ4LSI9AAAtqJ4H{I9AADtVH4HSI9AƃAEt;H4HKI9AAEt H4I9Aǃ@HAAA;uXoIHEEXI}hEE1DH Ht}A1LAM MLI MtXA@1IAI4H>I8LHt:A1HAMML IHtC1H AMI2H3IHuEEXI}hAE9jE}X虻Muh5E}XE1E] L'L&mMUHAH L0:IMUH9J4AI[AI9AEH4كMcI9„J4AI{AI9AEH4I[AI9AEtoH4كMcI9„tWJ4AI{AI9AEt;H4I[AI9AEt H4كI9I@AA;u@WIHEE@I}PEE1EJ HA1L!AILuMtLM聉LyM@HEEeE9EQMHH E]I}(EAEJ4HDFLDAA)NHuHH?HL;ouL/L.@LS AH :ILS J4AI{I9ADH4MkI9ADJ4AMCAI9AJ4AI{I9ADtrH4ICAI9AEtWH4MKI9ADt=J4AI{AI9AEt!H4I9IDA;s(IHDCH{(EE1EJ Ht~A1LAM I9H9I MtYA@1IAI4LMLHt;A1LAM I9H9I MtA@1IAI4LMLHuDCH{(AE9iDkPLs([DA\A]A^]H{(E1DKEtH{(E1E1f.U1HAVAUATSHH}HHHHEPtE1HD[A\A]A^]LeL+HI<$AULfAŅuLL蟐sHK(tADMEIŝAiELH MI(1DiǓE1EEiؓE1MAiI01LDiǓAH8E1EiؓA1AiÓ11iH4H>Hu fDHH?HL;guL'L&ȏLS AH :ILS J4AI{I9ADH4McI9ADJ4AMCAI9AJ4AI{I9ADtrH4ICAI9AEtWH4MKI9ADt=J4AI{AI9AEt!H4I9IDA;s谎IHDCH{(EE1EJ Ht~A1LAM I9H9I MtYA@1IAI4LMLHt;A1LAM I9H9I MtA@1IAI4LMLHuDCH{(AE9iDcLs(H{(E1DKEH{(E1E1ff.UHAWAVAUATSHHw(GLL9[LMHVLH)HHVLJMHtoHt\HtJHt8Ht&HtL HML HML HMuyL HMumL HMuaHLJMuTI9L MuCLJMu:LJMu1LJMu(LJ MuLJ(MuLJ0Mu H@LJMtIHD:@MaM.LI<$AULADž.LC{L;ANMn( ADMŝILDiדADH MI(A1EiړA1AEi˓A1LEiѓH0A1EiړDA1LEi˓H8E1Ai11iM\I;Hu$fIH?HL;guHI `Mf AMl$Mn MRJAMQAI9@AJAIqI9ADHMAI9ADJAIQAI9@AtsHӃIqAI9AtYHMQAI9AEt>JAMYI9@@t#JAI9@I@@ANA9N6ƿEIH*AvI~(fENMAC1MAMTI:I;MMt]A@1MAILH1I0LMt>AC1M AMDMMMMtAA1MAI|HI LMuAvI~(AA9_EffMn(ANM|M90MMMMEMM)IAMEMHMItIthItRItHtH;_u BfH9_t:HH?Hu1H[A\A]]fHXuHfDHL-V9H~MT$ AIMT$ KtAI{I9ADItMKI9KtAMCI9KtAI{I9toItICAI9AtTItIKI9ADt9ItI{AI9AtItI9IA;t$oIHED$I|$(EE1DEJ HA1LMLI9H9I MtYA@1IItLMLHt;A1LMLI9H9I MtA@1IItLMLHuED$I|$(AE9cA\$葄Ml$(1DI|$(E1fDEL$EI|$(1E1fDUHATISH]HHaMP`HxxtRMLP`1HxxAHiH[A\]UHAVAUATSLg(GM4M9I$IHYIL$LH)HIHHYH-HHtwHt^HtEHt,HtHIHHHIHHHIHHHIHHHIHHIHHYHII9HqH^HuyHYIHyHuiHYILAHuYHYMLI HuIHY MLQ(Hu9HY(MLY0Hu)HY0MHA8HuH@HYIHsDH{L輸yHHuIM9bLLL)HHHHHtrHtYHt@Ht'HtI$IT$HuHIHHpHIHH]HIHHJHIHH7HIHH$HIHHI9HIHHZLbHHZLbHHZLbHHZ Lb HHZ(Lb(HHZ0Lb0HHZ8Lb8HH@I9m1[A\A]A^]fUHAVAUATSLg(GM4M9I$IHYIL$LH)HIHHYH-HHtwHt^HtEHt,HtHIHHHIHHHIHHHIHHHIHHIHHYHII9HqH^HuyHYIHyHuiHYILAHuYHYMLI HuIHY MLQ(Hu9HY(MLY0Hu)HY0MHA8HuH@HYIHsDH{LyHHuIM9bLLL)HHHHHtrHtYHt@Ht'HtI$IT$HuHIHHpHIHH]HIHHJHIHH7HIHH$HIHHI9HIHHZLbHHZLbHHZLbHHZ Lb HHZ(Lb(HHZ0Lb0HHZ8Lb8HH@I9m1[A\A]A^]fUHAWAVIH@AUATSHHhHuHx]HSH4HUHuH9*L ILMMIL)HHLEIMPLUMWHHHtrHtTHt6HtMLEIL]MM LEILeMM(LEILmMM8LEIL}MILEIH]HLEIIPHUHLL9EI@LhMuxMhHIpMuhMhHMHMuXMhLIx MuHMh HMP(Mu8Mh(LMX0Mu(Mh0LM`8MuI@MhLMr@LmHMALEIXHSPHHEIHEf.IUHu1H}gAELUMuEfhIZEcLUEn{LUDMHH,AVhI~xf.EJ HDAH9DAAADA)NIHIHD_HDAAADA)NIHI;HtbDAH9DAAADA)NIHIHt3D_HDAAADA)NIHI;HHu;HH?H)H;OuD]LLpI~pULWMMVp HP9HqHI9AÃ@AL *9HyII9AAEIHqI9AAEILYI9A@AtqKHqI9AA@AtUIHyI9AÃAEt:IHqI9AÃAEtII9A@HA UAA;FhƿEyoHHE^hI~xDEEDU@DH Ht~A1LAL I9H9I MtYAC1I AL I9I;MHt;A1LAL I9H9I MtAC1I AL I9I;MHuE^hI~xAE9iEFhHunLEMFx@HHIM9dLML)HHHHHttHt[HtBHt)HtIMWHqIMIH^IMIHKIMIH8IMIH%IMIHIMHIM9IMHIZMzHIZMzHIZMzHIZ Mz HIZ(Mz(HIZ0Mz0HIZ8Mz8HpI@M9mLMmMLmLeIM9QM)LLHHHHHt}HtcHtIHt/HtLmMmHMlL)HMHMXL)HMHMDL)HMHM0L)HMHML)HMHML)HMMHH9MtxL)IMLiLqMLiLqMuxLiLqMukLi Lq Mu^Li(Lq(MuQLi0Lq0MuDLi8Lq8Mu7H@H9MuE1H}D]KEHX[A\A]A^A_]I~x1Lu@ENhEI~xE11IMIHx@UHAWAVAUIH@ATSHHXHuH}HKHsH HuHMH9 L6M\HH)HHuHLvM3HHt|HtbHtHHt.HtL6HuHML6HuHML6HuHML6HuHML6HuHMHuHLvMHH9uLFMpMutLvLLNMudLvLLVMuTLvLL^ MuDLv LLf(Mu4Lv(LL~0Mu$Lv0LH^8MuH@LvHMrHMHULMHUIEL`0p MM9I$HFML$MM)IAMIIYHIIthItOIt6ItI]IMIHIMIHIMIHIMIHMIIYHMM9-MYI[HutIYMMyHudIYMIIHuTIYIMq HuDIY MIQ(Hu4IY(IIA0Hu$IY0IIq8HuI@IYIHsMIMHSHu1HEH}SAÅLMMA~hMVxIIDIAŝIAiEII 1ЉiD1EiƓ1HiH(D1IiƓI0HH81DiȓAA1Ai11iƓI4H>Hu;HH?H)H;OuD]LLfI~pULWMMVp H9HqHI9AÃ@AL z9HyII9AAEIHqI9AAEILYI9A@AtqKHqI9AA@AtUIHyI9AÃAEt:IHqI9AÃAEtII9A@HA UAA;FhƿEeHHE^hI~xDEEDU@DH Ht~A1LAL I9H9I MtYAC1I AL I9I;MHt;A1LAL I9H9I MtAC1I AL I9I;MHuE^hI~xAE9iEFhHudLEMFx@HHIM9dLML)HHHHHttHt[HtBHt)HtIMWHqIMIH^IMIHKIMIH8IMIH%IMIHIMHIM9IMHIZMzHIZMzHIZMzHIZ Mz HIZ(Mz(HIZ0Mz0HIZ8Mz8HpI@M9mLMmMLmLeIM9QM)LLHHHHHt}HtcHtIHt/HtLmMmHMlL)HMHMXL)HMHMDL)HMHM0L)HMHML)HMHML)HMMHH9MtxL)IMLiLqMLiLqMuxLiLqMukLi Lq Mu^Li(Lq(MuQLi0Lq0MuDLi8Lq8Mu7H@H9MuE1H}D]MBEHX[A\A]A^A_]I~x1Lu@ENhEI~xE11IMIHx@UHAWIAVIAULj ATLLeSHHA{|H=ǏH{L=t5{tWLAHKE1IHD[A\A]A^A_]H9Ǐ;CAtHCf.LL%Ǐ3A$AătX=tQ=tJ=+ts=,=!t1=t*ufCAPHUHSCf.L@>詓AL@E+膓AېLA.@D,^A볐UHAWIAVIAUIATLg@SLH @EGhEADE_HHAGhIxMADH4HDNH>DAAADA)NM LI3HDWH7DAAADA)N MLI9HtbD^H>DAAADA)NMLI2Ht3DOH7DAAADA)NM LI;HHD[A\A]A^A_]fH}ȿ ]AH U9LpLuHLhXIMopMUMWpMJ4MCI9A„J4I{I9AAAEH4ICI9ÃADH4MkI9ƒADtrJ4I{I9AAAtWH4ISI9AƃAt=H4MKI9AŃAEt"J4I9A@I@A;wh`\IHEohIxEE1EJ Ht~A1L)MML IMtZAE1IMI4H>I}L.Ht;A1LM,MELIMMtAC1I M I1I3MHuEohIxAE9iA_h[MwxE1AfIxE1EOhEIx1E1AxwA@L 9McMA␃tNDGAfA@tv΃tuAxPiD_ D_D_DHtIxH>HtIpH21HtIH@GA두G A끐GAnfDG AVfDG A>fDG A&fDG AfDGAfDGAfDGAfDGAfDGAfDGA~fDGAffDGANfDGA6fDGAfDGAfDGAfDGAfDGAfDGAfDGAfDGAvfDGA^fDGAFfDGE11GA fDGAfDGA fDGAfDGAfDGA fDGAfDGAvfDfo ؝:Hff.UHAWMAVMAUATISHH}H(HuDmHUHM#u&EH}ALLEHHUtt@H([A\A]A^A_]ÐuLEHMLLH}AZt'@LEHMLLH}A#uH}+H([A\A]A^A_]DWAH9ENcIAfD9AD_DG A AD D D =( $=A!= = = &= = f.uGFDOEEt A99DG E>E95fD= AG= F=A{O6ZHF=1f.= ~[= = = = = g== = = =  @=@~C= @r=A=AD=@1=}+=@=@==Y=e+==$@= =r= += H= =@= = ~1=@=@Qf= = !f= = jf=A=A:f= =  f?DODAO DfDAA fDYAk?_UDODAx?? / %DODA  IDoW?'   g O7PfD gO 7  w_ G/H m9HcHfH1fDH1fDH1fDH1fDLc1L1LcLD1HcH7@H1fDf.UffHAUATL`ISLHHTEE)M)MHEHutHĈ[A\A]]fDH]MHK0HS(Hs H{uȋx|H{8ux t}wZrmH}1foUfo]foeHD>fomA)$HA)\$A)d$ A)l$0HEID$@?Dt r w@PtHĈ[A\A]]fD ws˃w@u붐UffHSHH}HXHEEE)M)MHE@uHUHHX[]ff.UffHAUIATIHSH]HHXHEEE)M)MHEuH{LLHX[A\A]]DUHffHSHHH}HXHEEE)M)MHEjuUoUSHX[]ÐUHffHAWIAVHAUMATSHHXHuLDuHHDžDž))HDžAąuWL1Lfo0LHDžxDž UHu2L1L9TL9HXD[A\A]A^A_]fDMI)M9wHALL}HH~H8LML)LULL,wLHLLL)HJ+1(DIH~fLL}I)ALLLmHLeXL8)HE,A1I4?fLMIHHuH~HHH8XLMLLAL)HHE+u;LHHL1LLL9AUffHAWMAVAHAUMATSHHHE HDe(HDžDž))HDžƅuWLfo.1LHUDxLDž Hu0HEE1L9`L;]HH[A\A]A^A_]fMI)L;MwHALLmH~HuH8LuLX)LMLL)HEL)HLLHL1ۋ&HMMHuLH~L)LmLXLLHMALmHDž`L8)HE)1HALI~LLuLLXHDž`L8LuLKtHuHu)HHE{(u7LLH1ۋLML;]@fUHffHAWIAVHAUMATSHHXHuLDuHHDžDž))HDžAąuWL1Lfo*LHDžxDž UHu2L1L9TL9HXD[A\A]A^A_]fDMI)M9wHALLUHH~HUL(LHXLLL&tLHLLL)HJ+1%fIHI)LLfA~L(LHLeXLH)HELm &A@1HfLIH~HuHHLH)LMLLIAH(XHHE|%u8LHHL1LLL9DAUffHAWMAVAHAUMATSHHHE HDe(HDžDž))HDžƅuWLfo(1LHUD LDžxHu0HEE1L9`L;]HH[A\A]A^A_]fMI)L;MwHALLMH~HuHUXL0LHLLL#HEL)HLLHL1ۋ#@MHuAHLL}L~LL0M)LHDžLEXLHHEL} #D1҉ALIHH~LHuHuLHLHDžLuLK\H0XHHEx"u4LLH1ۋLML;]fUHffHAVMAUHIATSH@HHƋ] HDe(LHDžDž))HDžu}H 1HHHuALm~HHH~EHE]LuDž0))],!H@[A\A]A^]ff.UffHAWMAVAHAUATSLH8HDe0HDm8HDžDž))HDžHU1HHHH~UHU1~AU H8Hu(HHuL}DxDž HE)U)HXAH`H8[A\A]A^A_]@UHffHAVMAUHIATSH@HHƋ] HDe(LHDžDž))HDž}uL1HLHuHEHHU~A~LEL8]hDž0LX)]H@[A\A]A^]f.UffHAWMAVAHAUATSLH8HDe0HDm8HDžDž))HDždH1HuH~U~HEHHUH1HHHu(U A)UHHuD DžxXL0HAHH8[A\A]A^A_]ÐUHffHATISHH@HHƋ] HLLHDžDž))HDž1H011HH~~~eH EHX1eDž@HELex) )eH@[A\]DUHffHATI1SHHH}H`H̙EHEE)M)MHEt+$kuH}LHAH`[A\]HuH}͐ tUviw1rfoq HG1Pt%Dtr݁ wfo HG1à wsvtŸDUHAVAUATSH}D] Dm(EIH /9HLL`Hc HEHE)E)EHHdžHHF0HFpAT$ 0Zv bHh[A\A]A^A_]AL$xjAVuʃudžI|$8H>M$L~`I$HVhI$H^xA|$ HHEHEA|$xAAL|I$HxL2xH}I$H}A|$ LuLmET$xA)EZAdžIT$(HV Ml$HLn(Mt$PLv8A|$xI$HN@@džA|$ BIT$0AAAAAAI$1I1IHM$LI$HI$I1IHCMT$LSMT$LSID$XIIHCHIt$`1HsPMl$hLkXHh[A\A]A^A_]fDED$xA9AdžML$0LN MT$HLV(M\$PL^8DL|I|$8HtL3tH}It$8H}A|$xLuLmHML]HL9tMLMLULEHuMLD}@džMD$(LF ID$HHF(I|$PH~8M$fDdžA|$ tNMD$0džMl$0Ln Mt$HLv(M|$PL~8yfDI\$8HzML$8LLMLULEHu4ff.U1fHAWIAVAUATLSLH˹H(fo HK1Dž Džxfo fo0fo@EfDoEfDoMS foPfDoU[0fo`fopc@kPs`{pDDDfDo]HUHDžDHIHDžHDžHDžHDžHDžHDžHDžCI5I'AALP9Mc MAfC CxI?HI@AHDžLHtLHLvLI?LLLMg MIHHI(I9VIvIW8IH9;{ Lc0Iw(HsHMG8LCPI@MO`MtCxIw@HH;LHM=I9t H)IHHLEHD1H1IHMKD I1HMLIGH1IHIGH1HCMwLsIGHH1IHCXIGPHHC`MX1L{hH([A\A]A^A_]LHLu͋HuLI@LLHI?I tEzCxz@C CxcDC R@{ tC I7HHs8III9O( M\MIv`M_hM9wIv MgxMM9w{xtRLIGhHIOxHLc(^AIvMWhM9vdL문DDUHt0tHm~]NHa~]NtHM~]NHA~]Nff.@UHt0tH}]NH}]oNtH}]SNH}]?Nff.@UHAWAAVIAUATL0SHLLHHL(DmD$3ECH$1HDž$HyHEHH)|HPHXfo0fo@L`Lh oxoH(oD)LL)foLL0foL8HXhDxL]L}L)mLe)uHHMIw@P`HHxxٷ9Hĸ[A\A]A^A_]$H(ALn@CIP`LHxx}u$H(ALff.fHtKU@HEuEtAH2{tA]L@Et;H{u1]f.1DHzu1]Hzu1]ff.@UHDUEHt=Mt8Eu;uHzt]jKf.HYzu1]tH-zu1]H!zu1]ff.@UHAWAVAUATSH8H]8Lm0ULe@HAMAuMu1H8[A\A]A^A_]LMALMHwIv L;m?LU(L92L9m L}HuAL9@At L;mL9#LU@1ɉULUALeIHMLUHuLE7HyfDL}H}MLUHuLEHx@L}HH;]}tLMMLUHuLEHpxvoIgfH8[A\A]A^A_]@LMMLUHuLEHxZIK/fDHwtf.HwTf.HwDHwxf}LMILHuLEH]wL}L9hIIHW@uxɉLHuLL% wA$(H8[A\A]A^A_]G@ILHuLEuVHvmG^ɉLMLHuLL=vA@HyvDHQvIIHk@uSHLtmHKvH@L-vAU,L5uAHHMLt.HuL%uA$L-uAUDU1HAWMAVMAUIHATIHWSHHH)сHHHLJHHDAE AAL^L[HV8HS(HN(HKH~0H{ LEH~HUL u4uĉsECǃMt MMt M1H[A\A]A^A_]@H[A\A]A^A_]@Hv1H}HsHsCLEf.LNLKLV(LS6DH~HUHuH{2UI|$L1I$ID$`HH)hHA]A$EMA\$EL$EUET$E] E\$ AU0AT$AE4AD$AM8AL$ AUfHه9H K1HH9H>@UHAVAUATSHDžTHDžXHøH1H{!HHXHTLDž`xH@L`~@H@Mt$@L@)@AUHMl$H}LP fo@LLPHH=9HDžp)MLEH}HEHEHEPUHxHL`LPI}@DXDž`xPHIuH}P LeM H}HHIULPHHHHDL ҆HE<H8L@9~8HPH8LLM8L8~8H8<)E8)MPDLLI}@DAT$LIuH}AV HEL<SDHİ[A\A]A^]HHDžpfDLEHİ[A\A]A^]DUHAWEAVMAUATISHHHHHDžHDžZIŸML;IHI~LLP~I|$@L@DH) )0DžPxPIIt$H}P H]H#H}IHIT$HPIHHL xHEHLR>9~H HLLML~H)p)]PHEMHHH[II|$@SMIt$H}AV MELAWH[A\A]A^A_]IHDž`fHEMHHHff.UHAWAVAUATISHDž<HDž@WHøHiH9YHYH@HH8L79~8HPH8LLM8L8~8H8>)M8)UPLLjLI}@DAT$LIuH}AV HEL>SDHİ[A\A]A^]fHHDžpfLLHİ[A\A]A^]DUHAWMAVIAUATMSHHHHLDžHDžQIŸMLx3IhH~L~IDžPx) L~LPLI|$@)0)@PIIt$H}P H]H-H}IH IT$HPIHHL {HEHL 59~H HLLML~H)p)ePLMLHHHII|$@SMIt$H}AV MEL濚AWH[A\A]A^A_]f.IHDž`fLMLHHH-ff.UHAWMAVIAUATMSHHHHLDžHDžNIŸML0I8HHM~L~IH@DžPxL~LPLI|$@)) )0PIIt$H}P H]H2H}IH%IT$HPIHHLGyHEHLL~HL 29LUL~L)p)ePHuMLLHHHCII|$@SMIt$H}AV MLEAW^_He[A\A]A^A_]fIHDž`fHuLMHHLHZYHe[A\A]A^A_]DUHAWAAVIAUATSHHHDž$HDž(BLIŸML).IpHILP~I|$@L@DHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L vHEHLp/9~H0HLLML~H)p)UPHDLHwII|$@$SMIt$H}AV MEL濜AW$H[A\A]A^A_]@IHDž`HDLHfUHAWEAVIAUATISHHHHDžHDžJIŸML+I@HI~L0LPI|$@L8D@) DžPxPIIt$H}P H]H H}IHIT$HPIHHL tHEHL,9~H HLLML~H)p)UPHELHH?II|$@SMIt$H}AV MELAWH[A\A]A^A_]@IHDž`fHELHHfUHAWAVAUATISHDž<HDž@GHøHiH)YHYH@HHøHiH YH$YH@HLH$AT$LHH}AU LELAV$H[A\A]A^A_]DLLLUHAWAVAUIATISHDž4HDž8<6HøHH#HHH8H4LDžPxH(L9~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoL`HHDž`)p)eLUHEHEPLLLH(4AT$LLH}AU HELS4H[A\A]A^A_]DLLEUHAWAVIAUIATISHDž$HDž(94HøHH HLH(H$HL@HLY9~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoL^HHDž`)p)eL]HEHEPLLLLH$AT$LHH}AU LELAV$H[A\A]A^A_]DLLLUHAWAVIAUIATISHDž$HDž(2HøHHHPH(H$HL@HL9~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLe\HHDž`)p)eL]HEHEPLLLNLH$AT$LHH}AU LELAV$H[A\A]A^A_]DLLLUHAWAVAUATISHDž<HDž@/HøHiHYHTYH@HHEHLXf8~H HLLML~H)p)UPLIDHHL!MI|$@AVMIt$H}AW IELSH[A\A]A^A_]fDIHDž`fLIDLHH}ff.UHAVAAUATISHDžHDž^HøHHEnHoMoU L`D0o]0HM@I}@LPH)) 8HHDž`xPHIuH}P LeM%H}HHIULPHHHLHEHLL~HL c8LUL~L)E)ePHu@Lu8Du0u(u uuLH@I}@AVLIuH}AT$ HLESHe[A\A]A^]HHDžpHu@LDu8u0u(u uu|H@He[A\A]A^]ff.UHAWAVAUIATISHDž4HDž8HøHHkHH8H4LDžPxH(La8~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLU5HHDž`)p)eLUHEHE5PLLяLH(4AT$LLH}AU HEL5S4H[A\A]A^A_]DLLeUHAWAVAUIATISHDž4HDž8HøHHiHH8H4LDžPxH(L_8~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLU6HHDž`)p)eLUHEHE6PLLaLH(4AT$LLH}AU HEL6S4H[A\A]A^A_]DLLUHAWAAVIAUATISHHHDž$HDž(IŸMLgtIIL0LPI|$@L8D@HHDžPxPIIt$H}P H]HH}IHIT$HPIH(H$L HEHL,]8~H0HLLML~H)p)MPHHDLsMI|$@$AVMIt$H}AW IELS$H[A\A]A^A_]IHDž`fHHDLۇfUHAWAAVIAUATISLHHHDžHDž踃IŸMLeIHIL LPI|$@L0H(D8H@DžPxPIIt$H}P H]H H}IHIT$HPIHHLMHEHL Z8L~HL LUL~L)p)MPHIDHL7MI|$@AVMIt$H}AW IELSH[A\A]A^A_]@IHDž`HIDLH複fUHAWAVAAUAATISHHDž$HDž(膁IǸMLmcIH(H$IH0HLY8~H0HLPMQ@L8LL~HL)D@DD)LDžPxPLIH}ISHHP fofoH ѫIHDž`)pH)]HMHEHEPDDLHeIH$SMHH}AT$ MEHAU$H[A\A]A^A_]ÐDDLHff.fUHAWAVIAUAATISHHDž$HDž(VIǸML=aIH(H$IH0HLV8~H0HLPMQ@L8LL~HL)D@LD)LDžPxPLIH}ISHHP fofoH IHDž`)pH)]HMHEHEPDLLH赂IH$SMHH}AT$ MEHAU$H[A\A]A^A_]ÐLDLH?ff.fUHAWMAVIAUAATISHHDžHDž}HøHH_H(HHLHHLoT8~H HLPMZ@L LL~HL)L(D0)LL8L@DžPxPHHH}HJHHP fo foH5\HHDž`)p)]HuHHEHE PHLDML LHAT$LHH}AU LE HAVH[A\A]A^A_]@HMLDL舁fDUHAWAVMAUMATISHHHHDžHDžzIǸML\I,HH~IHLQ8~H HLPMY@) LL~HL)H0L8)LL@LHDžPxPLIH}IRHHP fo foH IHDž`)pH)eHMHEHE PHMLHHMIHSMHH}AT$ M EHAUH[A\A]A^A_]HMMLHHyUHAWAVEAUMATISHHHHDžHDžXxIǸML?ZIdHH~IHLgO8~H HLPMY@(LL~HL)H L8)LL@DHDžPxPLIH}IRHHP fofoH IHDž`)pH)eHMHEHEPHMLHEHscIHSMHH}AT$ MEHAUH[A\A]A^A_]HEMLHHbUHAWIAVEAUMATISHHHHDžHDžuHøHHWHlHHL~HLL8~H HH~LL@L~H)) LLPM_@)L)0LDHDžPxPHMWH}LLP foLfoL HHDž`)p)mLMHEHEPHEMHHLeLHAT$LHH}AU LELAVH[A\A]A^A_]@HEMLHHeeUHAWMAVMAUIATSHH(HHLDžHDžasIĸMLHUI$tHHL~LLUD]H~HL J8LI$~L@L~L)LLPIW@))0HDHHHL(DžPxPI$IOH}HHP fofoH5nI$HDž`)p)mHuLHEHEP}LMHHLWHuLhI$HSM$HH}AU M$LEAV^_He[A\A]A^A_]MHMHLHQLugZYHe[A\A]A^A_]ff.fUHAWEAVMAUIATSHHHHHDžHDžpIĸMLRI$~HMHHPI$H{@L(H@L0D8DžPxPI$HsH}P HuHuH1H}I$H$HSHuPI$LHLHHLF8~LLL]HEL~L)p)UPHuEHMLHH]M$H{@AUM$HsH}AV M$H޿EAW^_He[A\A]A^A_]@I$HDž`HuLEHMHHf\ZYHe[A\A]A^A_]DUHAWEAVMAUIATSHHHHHDžHDžnIĸMLOI$HHMHP~LH{@~I$H@L0D8)) DžPxPI$HsH}P HuHuH3H}I$H&HSHuPI$LHLvHHLC8~LLL]HEL~L)p)]PHuEHMLHHb_M$H{@AUM$HsH}AV M$H޿EAW^_He[A\A]A^A_]fDI$HDž`HuLEHMHH^ZYHe[A\A]A^A_]DUHAWAVIAUIATISHDž$HDž(ykHøHH`MHH(H$HL0HLA8~H0HLPMO@L8LL~HL)L@DžPx)PHMWH}LLP foLfoLەvHHDž`)p)]L]HEHEvPLLL8LH$AT$LHH}AU LELvAV$H[A\A]A^A_]LLL8UHAWAVAUIATISHDž4HDž8|iHøHHcKHH8H4LDžPxH(L?8~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLՓxHHDž`)p)eLUHEHExPLL:LH(4AT$LLH}AU HELxS4H[A\A]A^A_]DLL9UHAWAVAUIATISHDž4HDž8|gHøH~HcInHnH8H4LL@H(L=8~(H@H(LPMN@LHDžPx(L(~(H(L)(L()AWHM~H}LP foLfoLyHHDž`)p)]LUHEHEyPLL79LH(4AT$LLH}AU HELyS4H[A\A]A^A_]LL8ff.UHAWAVIAUAATISHDž$HDž(eHøHHpGHH(H$HL0HL;8~H0HLPMO@D8LL~HL)L@DžPx)PHMWH}LLP foLfoLzHHDž`)p)]L]HEHEzPLDL7LH$AT$LHH}AU LELzAV$H[A\A]A^A_]LDL"7UHAWAVIAUAATISHDž$HDž(cHøHHpEHH(H$HL0HLy98~H0HLPMO@D8LL~HL)L@DžPx)PHMWH}LLP foLfoL{HHDž`)p)]L]HEHE{PLDL5LH$AT$LHH}AU LEL{AV$H[A\A]A^A_]LDL5UHAWAVIAUIATISHDž$HDž(aHøHHpCHH(H$HL@HLY78~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLՋ|HHDž`)p)eL]HEHE|PLLL>4LH$AT$LHH}AU LEL|AV$H[A\A]A^A_]DLLL3UHAWAVIAUIATISHDž$HDž(i_HøHHPAHH(H$HL@HL58~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoL~HHDž`)p)eL]HEHE~PLLL^4LH$AT$LHH}AU LEL~AV$H[A\A]A^A_]DLLL3UHAWAVAUIATISHDž4HDž8L]HøHH3?HH8H4LDžPxH(L28~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLHHDž`)p)eLUHEHEPLL2LH(4AT$LLH}AU HELS4H[A\A]A^A_]DLLU2UHAWAVAUATISHDž<HDž@O[HøHiH6=YHYH@HHøHH H8H(H$HL@HLY8~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLEiNHHDž`)p)eL]HEHENPLLL^cLH$AT$LHH}AU LELNAV$H[A\A]A^A_]DLLLbUHAWIAVAAUAATISHHDž$HDž(UHAWAVAUIATISHDž4HDž8HøHHsHH8H4LDžPxH(L7~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoL"'HHDž`)p)eLUHEHE'PLL1>LH(4AT$LLH}AU HEL'S4H[A\A]A^A_]DLL=UHAWIAVMAUIATISHHHDžHDžxHøHH_HHH~HHL7~H HL0L8L~H)L@LLPM_@)LLDžPx) PHMWH}LLP foLfoL (HHDž`)p)eLMHEHE(PHMLHLx LH$AT$LHH}AU LEL2AV$H[A\A]A^A_]DLLL UHAWIAVIAUIATISHHDž$HDž(HøHHH$H(H$L~HLt7~H0HHLDžPxL~HL~LLLPMW@)L))0)@LPHMOH}LLP foLfoLGHHDž`)p)mL]HEHEPHLLLyLH$AT$LHH}AU LELAV$H[A\A]A^A_]HLLLfUHAWIAVIAUIATISHHDž$HDž(迩HøHH見HH(H$L~HL.r7~H0HHLL@L~H))0LLPMW@)LLLHDžPxPHMOH}LLP foLfoL3HHDž`)p)eL]HEHE3PHLLLLH$AT$LHH}AU LEL3AV$H[A\A]A^A_]fDHLLL3ѐUHAWIAVMAUIATSHHHHDžHDžxIĸML_I$(HHL~HLo7~H HI$~LL@L~H))0H)DžPxLLPM_@) LLPI$MWH}LLP foLfoL I$HDž`)p)mLMHEHEPHMLHHI$HSM$HH}AU M$ELAVH[A\A]A^A_]DHMLHHDfUHAWIAVIAUIATISHHDž$HDž(HøHHHH(H$L~HL>m7~H0HHLL@L~H))0LLPMW@)LLLHDžPxPHMOH}LLP foLfoLM4HHDž`)p)eL]HEHE4PHLLLLH$AT$LHH}AU LEL4AV$H[A\A]A^A_]fDHLLLѐUHAWIAVMAUIATSHHHHDžHDžȢIĸML评I$,HHL~HLj7~H HI$~LL@L~H))0H)DžPxLLPM_@) LLPI$MWH}LLP foLfoL I$HDž`)p)mLMHEHEPHMLHH'I$HSM$HH}AU M$ELAVH[A\A]A^A_]DHMLHHfUHAWAVAUATISHDž<HDž@oHøHiHVYHYH@HLH$AT$LHH}AU LELAV$H[A\A]A^A_]DLLLUHAWAVAUIATISHDž4HDž8LH$AT$LHH}AU LELOAV$H[A\A]A^A_]DLLLUHAVIAUATISHDžDHDžHtHøH{HVkHtL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL \HE]H8L&87~8HPH8LLM8L8~8H8])M8)UPLLLI}@DAVLIuH}AT$ HLE]SDHİ[A\A]A^]fHHDžpfLL5Hİ[A\A]A^]DUHAVIAUATISHDžDHDžHrHøH{HTkHL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL LHE8H8L57~8HPH8LLM8L8~8H88)M8)UPLLLI}@DAVLIuH}AT$ HLE8SDHİ[A\A]A^]fHHDžpfLLHİ[A\A]A^]DUHAWAVAUATISHDž<HDž@pHøHiHRYHYH@HLH$AT$LHH}AU LELAV$H[A\A]A^A_]DDLLUHAWIAVEAUAATISHHHDž$HDž(jHøHHLHtH(H$~HHL.7~H0HL@DHL~H)DLLLPM_@)LLDžPx)0PHMWH}LLP foLfoL HHDž`)p)eLMHEHEPHEDHLLH$AT$LHH}AU LELAV$H[A\A]A^A_]HEDLHfUHAWAVAUAATISHDž4HDž8hHøH~HsJnHxnH8H4LL@H(L+7~(H@H(LPMN@DHDžPx(L(~(H(L)(L()AWHM~H}LP foLfoLHHDž`)p)]LUHEHEPDLLH(4AT$LLH}AU HELS4H[A\A]A^A_]DL}ff.UHAWAVAUAATISHDž4HDž8fHøH~HHnH|nH8H4LL@H(L)7~(H@H(LPMN@DHDžPx(L(~(H(L)(L()AWHM~H}LP foLfoL HHDž`)p)]LUHEHEPDLWLH(4AT$LLH}AU HELS4H[A\A]A^A_]DLff.UHAWIAVAAUAATISHHDž$HDž(dHøHHFHH(H$L~HL'7~H0HHLD@L~H))0LLPMW@)LLDDDžPxPHMOH}LLP foLfoLݎHHDž`)p)eL]HEHEPHDDLLH$AT$LHH}AU LELAV$H[A\A]A^A_]fDHDDLѐUHAWAVAAUIATISHDž$HDž(ibHøHHPDHH(H$HD@HL9%7~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLHHDž`)p)eL]HEHEPDLLLH$AT$LHH}AU LELAV$H[A\A]A^A_]DDLLJUHAWIAVMAUIATISHHHDžHDž8`HøHHBHHH~HHL"7~H HL0L8L~H)L@LLPM_@)LLDžPx) PHMWH}LLP foLfoL }HHDž`)p)eLMHEHEPHMLHLLHAT$LHH}AU LELAVH[A\A]A^A_]HMLLHTfUHAWIAVMAUMATISHHHHDžHDž]HøHH?H0HHL~HLp 7~H HH~LL@L~H)) LLPM_@)L)0LLHDžPxPHMWH}LLP foLfoL HHDž`)p)mLMHEHEPHMMHHLLHAT$LHH}AU LELAVH[A\A]A^A_]@HMMLHHUHAWAVAUIATISHDž4HDž8|[HøHHc=HH8H4LDžPxH(L7~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLՅHHDž`)p)eLUHEHEPLLLH(4AT$LLH}AU HELS4H[A\A]A^A_]DLLeUHAWAVIAUIATISHDž$HDž(yYHøHH`;HH(H$HL@HL7~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLŃHHDž`)p)eL]HEHEPLLLLH$AT$LHH}AU LELAV$H[A\A]A^A_]DLLLZUHAWIAVAAUAATISHHDž$HDž(OWHøHH69HH(H$L~HLn7~H0HHLD@L~H))0LLPMW@)LLDDDžPxPHMOH}LLP foLfoLHHDž`)p)eL]HEHEPHDDLLH$AT$LHH}AU LELAV$H[A\A]A^A_]fDHDDL#ѐUHAWIAVIAUIATISHHDž$HDž(UHøHH6H\H(H$L~HL7~H0HHLL@L~H))0LLPMW@)LLLHDžPxPHMOH}LLP foLfoLMHHDž`)p)eL]HEHEPHLLLLH$AT$LHH}AU LELAV$H[A\A]A^A_]fDHLLLѐUHAWIAVMAUIATASHHHDžHDžRHøHH4HTHH~HHL7~H HD0L8L~H)L@LLPM_@)LLDžPx) PHMWH}LLP foLfoL }HHDž`)p)eLMHEHEPHMLHDLHAT$LHH}AU LELAVH[A\A]A^A_]HMLDH$fUHAWMAVAUEATISHH(HHLDžHDžqPIƸMLX2IXHH~~HL~L 7HDUL~IDHeL~L)8H)D0L)DžPxLLPM_@) LLPIIWH}HHP foLfoH {zIHDž`)p)uHMHEHEPuLEHHLVHuIHSMHH}AT$ MLEAU^_He[A\A]A^A_]fMHEHLHQLuZYHe[A\A]A^A_]DUHAWMAVAUEATISHH(HHLDžHDžMIƸML/I\HH~~HL~L 7HDUL~IDHeL~L)8H)D0L)DžPxLLPM_@) LLPIIWH}HHP foLfoH wIHDž`)p)uHMHEHEPuLEHHLVHuxIHSMHH}AT$ MLEAU^_He[A\A]A^A_]fMHEHLHQLuZYHe[A\A]A^A_]DUHAWAVAUATISHDž<HDž@KHøHiH,YH`YH@HHøHH HxH(H$HL0HL6~H0HLPMO@D8LL~HL)L@DžPx)PHMWH}LLP foLfoLhHHDž`)p)]L]HEHEPLDLLH$AT$LHH}AU LELAV$H[A\A]A^A_]LDL2UHAWAVAAUAATASHHDž$HDž(61HHDž`)p)]L]HEHE1PLDL LH$AT$LHH}AU LEL1AV$H[A\A]A^A_]LDLr UHAWMAVAUAATISHHHLDžHDžIƸMLIHH~IHL'6~H HH L(L~H)D0LLPM_@)LLDžPx8PIMWH}LLP foLfoL ;2IHDž`)p)eLMHEHE2PLDLHH IHSMHH}AT$ MLE2AUH[A\A]A^A_]LDLHHD fUHAWAVAUATASHDžHDž_HøHHFH8HoULM@HHL6o] H~HLPoe0LM}@)) L~HL)8LH)D0DžPxAVHMuH}LP foLfoL9HHDž`)p)uLUHEHEPHu@Du8u0u(u uu LH@LAT$LLH}AW HELSHe[A\A]A^A_]f.Hu@Du8u0u(u uu/ H@He[A\A]A^A_]ff.UHAWAAVIAUATISLHHHDžHDž IŸMLILILP~I|$@L0D8H@) DžPxPIIt$H}P H]H H}IHIT$HPIHHL 7HE)HL6~H HLLML~H))p)UPHIDHLMI|$@AVMIt$H}AW IEL)SH[A\A]A^A_]@IHDž`fHIDLH4fUHAWEAVIAUATISLHHHHDžHDž IŸMLILILP~LI|$@~D@HHDžPx) )0PIIt$H}P H]H#H}IHIT$HPIHHL 5HE/HLB6~H HLLML~H/)p)]PHIEHHLMI|$@AVMIt$H}AW IEL/SH[A\A]A^A_]IHDž`fHIELHH-ff.UHAWEAVIAUATISLHHHHDžHDž!IŸMLILILP~LI|$@~D@HHDžPx) )0PIIt$H}P H]H#H}IHIT$HPIHHL 2HE0HL6~H HLLML~H0)p)]PHIEHHLkMI|$@AVMIt$H}AW IEL0SH[A\A]A^A_]IHDž`fHIELHHff.UHAWMAVIAUIATSHHHHLDžHDžIĸMLI$uH}HHP~I$L@HHH{@(L L8DžPxPI$HsH}P LELEM0H}I$H#HSHuPI$LLH 0HLL,~LH6HMHE,H~L)p)UPuuMLLHHVLM$H{@AUM$HsH}AV M$H޿,EAW^_He[A\A]A^A_]I$HDž`MuLMLLQHH6ZYHe[A\A]A^A_]DUHAWEAVMAUIATSHHHHHDžHDžIĸMLI$~HMHHPI$H{@L(H@L0D8DžPxPI$HsH}P HuHuH1H}I$H$HSHuPI$LHL|-HHLK6~LL*L]HE*L~L)p)UPHuEHMLHHM$H{@AUM$HsH}AV M$H޿*EAW^_He[A\A]A^A_]@I$HDž`HuLEHMHH&ZYHe[A\A]A^A_]DUHAWMAVIAUATISLHHHLDžHDžqIŸMLXIHu}HHP~L~LE H0I8H{@L@) LLDžPxPIHsH}P LM LMM2H}IH%HSHu PILLH5*-LH~H e6LHuHHE-H~H)p)]P}Hu LMLHHWLuMH H{@AT$MHsH}AV MEH޿-AWHe[A\A]A^A_]IHDž`fMHu MLLHHQLuH He[A\A]A^A_]ff.UHAWEAVMAUIATSHHHHHDžHDžIĸMLI$HHMHP~LH{@~I$H@L0D8)) DžPxPI$HsH}P HuHuH3H}I$H&HSHuPI$LHL(HHL6~LL+L]HE+L~L)p)]PHuEHMLHHRM$H{@AUM$HsH}AV M$H޿+EAW^_He[A\A]A^A_]fDI$HDž`HuLEHMHHZYHe[A\A]A^A_]DUHAWAVIAUIATISLHHLLDžHDžIǸMLIuH} HHP~IL~8H@H{@M(LLDžPxPIHsH}P LE LEM8H}IH+HSHu PILLH U%HLL.~LH6HMHE.H~L)p)]PuHu LLLLHVLuMH H{@AT$MHsH}AU MEH޿.AVHe[A\A]A^A_]fDIHDž`MHu LLLLQLuHoH He[A\A]A^A_]ff.UHAVIAUATISHDžDHDžHNHøH{H5kHDL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL "HEH8L66~8HPH8LLM8L8~8H8)M8)UPLLLI}@DAVLIuH}AT$ HLESDHİ[A\A]A^]fHHDžpfLLuHİ[A\A]A^]DUHAVIAUATISHDžDHDžH>HøH{H%kHL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL HEH8L6~8HPH8LLM8L8~8H8)M8)UPLLjLI}@DAVLIuH}AT$ HLESDHİ[A\A]A^]fHHDžpfLLHİ[A\A]A^]DUHAWIAVAAUATISHHHDž$HDž(IŸMLtIIL0LPI|$@D8L@HHDžPxPIIt$H}P H]HH}IHIT$HPIH(H$L HE3HLܰ6~H0HLLML~H3)p)MPHHLDMI|$@$AVMIt$H}AW IEL3S$H[A\A]A^A_]IHDž`fHHLDkfUHAWAAVIAUATISLHHHLDžHDžIŸMLI~IL LPI|$@L(D08HHDžPxPIIt$H}P H]H)H}IHIT$HPIHHL nHE4HLh6~H HLLML~H4)p)UPLIDHHLMI|$@AVMIt$H}AW IEL4SH[A\A]A^A_]fDIHDž`fLIDLHHff.UHAVAAUATISHDžHDžHøHHuH<oMoU L`D0o]0HM@I}@LPH)) 8HHDž`xPHIuH}P LeM%H}HHIULPHHHLHEHLL~HL ԫ6LUL~L)E)ePHu@Lu8Du0u(u uuLH@I}@AVLIuH}AT$ HLESHe[A\A]A^]HHDžpHu@LDu8u0u(u uuH@He[A\A]A^]ff.UHAUATISHDžLHDžP3HøHZHJHmHL`LXDž`xI}@PHIuH}P LeMH}HHIULPHHPHLL HEH8L6~8HXH8LLM8L8~8H8)E8)MPLLI}@LAT$HIuH}P HLESLHĸ[A\A]]f.HHDžpfLHĸ[A\A]]f.UHAWAVAUIATISHDž4HDž8HøH{H%kHL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL HEH8L&6~8HPH8LLM8L8~8H8)M8)UPLLzLI}@DAVLIuH}AT$ HLESDHİ[A\A]A^]fHHDžpfLL~Hİ[A\A]A^]DUHAWAVAAUIATISHDž$HDž()HøHHyHLHLP~I@LD@DžPx)0PHIwH}P LeMH}HHIWLPHH(H$L HErHL6~H0HLLML~Hr)p)UPDLL8|LI@$AULIwH}AT$ LLErAV$H[A\A]A^A_]DHHDž`DLL{UHAWAVAAUIATISHDž$HDž(HøHHyHLLHLP~I@LD@DžPx)0PHIwH}P LeMH}HHIWLPHH(H$L HEHL6~H0HLLML~H)p)UPDLL8tLI@$AT$LIwH}AU LELAV$H[A\A]A^A_]DHHDž`DLLsUHAWAAVIAUATISHHHDž$HDž(IŸMLtIIL8LPI|$@H0L@DHDžPxPIIt$H}P H]HH}IHIT$HPIH(H$L HEHL6~H0HLLML~H)p)MPHDLHCsII|$@$SMIt$H}AV MELAW$H[A\A]A^A_]IHDž`fHDLHrfUHAWAAVIAUATSHHHDž$HDž(IŸML蹼I@HILP~I|$@L@DHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L fHEHL06~H0HLLML~H)p)UPHDLHrII|$@$SMIt$H}AV MELAW$H[A\A]A^A_]@IHDž`HDLH[rfUHAUATISHDžLHDžPHøHZH蚺JH mHL`LXDž`xI}@PHIuH}P LeMH}HHIULPHHPHLL nHEH8L6~8HXH8LLM8L8~8H8)E8)MPLmLI}@LAT$HIuH}P HLESLHĸ[A\A]]f.HHDžpfLlHĸ[A\A]]f.UHAWAVMAUIATSHHLeHDDžHDžHøH/H脸HL7HLPLHDL0LMHH H$I@D,L8L@DžPxPHIwH}P LeMH}H~HIWLPLLHHELH~H 6LH~H)p)M$HtOMtJHHLHHDžu"HHLFLEf.L YHLLMPATHMuLDHLI@AULIwH}AV LLEAT$^_He[A\A]A^A_]fDHDž`ATHMLuDH~ZYHe[A\A]A^A_]@HHH}UHAWAVIAUIATISHDžHDžHøHH耵HHHHL@HL)6~H0HLPDžPxL~HI@)L~L))0PHH}IwP foHfoHDž`)p)eHEHEEHt MHHLHUPLLLLI@AULIwH}AT$ LLEAVH[A\A]A^A_]ÐH(H LHHDž(|ML Mt(MYL]4LLL*L(M LUUHAWAVMAUIATSHHLeHDDžHDžHøH/HH47HLPLHDL0LMHH H$I@D,L8L@DžPxPHIwH}P LeMH}H~HIWLPLLHHE LH~H 6LH~H)p)M脪HtOMtJHHLHHDžFu"HHLFLEf.L HL LMPATHMuLDHLI@AULIwH}AV LL EAT$^_He[A\A]A^A_]fDHDž`ATHMLuDHu~ZYHe[A\A]A^A_]@HHH}UHAWAVIAUIATISHDž$HDž(HøHsHcHpHLPL0I@L8L@DžPxPHIwH}P LeMH}HHIWLPHH(H$L HEHLЈ6~H0HLLML~H)p)MPLLLLI@$AT$LIwH}AU LELAV$H[A\A]A^A_]HHDž`fLLL蒇UHAWAAVIAUATISHHHDž$HDž(IŸML֭tIIL0LPI|$@L8D@HHDžPxPIIt$H}P H]HH}IHIT$HPIH(H$L HEHL6~H0HLLML~H)p)MPHHDLMI|$@$AVMIt$H}AW IELS$H[A\A]A^A_]IHDž`fHHDL[fUHAWAAVIAUATISLHHHDžHDžIŸML蟫IHIL LPI|$@L0H(D8H@DžPxPIIt$H}P H]H H}IHIT$HPIHHLMHEHL 76L~HL LUL~L)p)MPHIDHLMI|$@AVMIt$H}AW IELSH[A\A]A^A_]@IHDž`HIDLHfUHAWAAVIAUATISHHHDž$HDž(IŸMLfI\LILP~LI|$@D@HHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L HEHLƁ6~H0HLLML~H)p)UPHHDLmMI|$@$AVMIt$H}AW IELS$H[A\A]A^A_]fIHDž`fHHDLlfUHAWAAVIAUATISHHHDž$HDž(?IŸML&I`LILP~LI|$@D@HHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L HEHLF6~H0HLLML~H)p)UPHHDLjMI|$@$AVMIt$H}AW IELS$H[A\A]A^A_]fIHDž`fHHDL[jfUHAWAAVIAUATISHHHDž$HDž(IŸMLI$LILP~LI|$@D@HHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L HEHL|6~H0HLLML~H)p)UPHHDLhMI|$@$AVMIt$H}AW IEL濉S$H[A\A]A^A_]fIHDž`fHHDL+hfUHAWAAVIAUATISHHHDž$HDž(IŸML覢IdLILP~LI|$@D@HHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L LHEHLfz6~H0HLLML~H)p)UPHHDL}gMI|$@$AVMIt$H}AW IELS$H[A\A]A^A_]fIHDž`fHHDLffUHAWAAVIAUATISHHHDž$HDž(IŸMLfIhLILP~LI|$@D@HHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L HEHLw6~H0HLLML~H)p)UPHHDLMeMI|$@$AVMIt$H}AW IELS$H[A\A]A^A_]fIHDž`fHHDLdfUHAWAAVIAUATISHHHDž$HDž(?IŸML&I,LILP~LI|$@D@HHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L HEHLfu6~H0HLLML~H)p)UPHHDLcMI|$@$AVMIt$H}AW IEL濋S$H[A\A]A^A_]fIHDž`fHHDLbfUHAWAVIAUIATISHDž$HDž( HøHHHH(H$HL@HLs6~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLUHHDž`)p)eL]HEHEPLLL^LH$AT$LHH}AU LELAV$H[A\A]A^A_]DLLLUHAVIAUATISHDžDHDžHHøH{HՙkHpL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL HE\H8Lp6~8HPH8LLM8L8~8H8\)M8)UPLLz&LI}@DAVLIuH}AT$ HLE\SDHİ[A\A]A^]fHHDžpfLL%Hİ[A\A]A^]DUHAVIAUATISHDžDHDžH޵HøH{HŗkHL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL |HE7H8Ln6~8HPH8LLM8L8~8H87)M8)UPLLJ%LI}@DAVLIuH}AT$ HLE7SDHİ[A\A]A^]fHHDžpfLL$Hİ[A\A]A^]DUHAVAAUATISHDžDHDžHγHøHeH赕UHxHL`LPI}@DXDž`xPHIuH}P LeM H}HHIULPHHHHDL HE;H8Ll6~8HPH8LLM8L8~8H8;)E8)MPDL%LI}@DAT$LIuH}AV HEL;SDHİ[A\A]A^]HHDžpfDL$Hİ[A\A]A^]DUHAWEAVMAUATISHHHHHDžHDž豱IŸML蘓IHI~LLP~I|$@L@DH) )0DžPxPIIt$H}P H]H#H}IHIT$HPIHHL (HEHL2j6~H HLLML~H)p)]PHEMHHH{#II|$@SMIt$H}AV MELAWH[A\A]A^A_]IHDž`fHEMHHH"ff.UHAVIAUATISHDžDHDžHNHøH{H5kHL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL HE?H8Lg6~8HPH8LLM8L8~8H8?)M8)UPLLz"LI}@DAT$LIuH}AV HEL?SDHİ[A\A]A^]fHHDžpfLL!Hİ[A\A]A^]DUHAVIAUATISHDžDHDžH>HøH{H%kHL8~8L`L8I}@HDž`x8)PPHIuH}P LeMH}HHIULPHHHHDL HE=H8Le6~8HPH8LLM8L8~8H8=)M8)UPLL "LI}@DAT$LIuH}AV HEL=SDHİ[A\A]A^]fHHDžpfLL!Hİ[A\A]A^]DUHAWAVIAUIATISHDž$HDž()HøHHyHLHLP~I@LL@DžPx)0PHIwH}P LeMH}HHIWLPHH(H$L HEDHLjc6~H0HLLML~HD)p)UPLLL!LI@$AT$LIwH}AU LELDAV$H[A\A]A^A_]DHHDž`LLL"!UHAWAVIAUIATISHDž$HDž(HøHHyHLHLP~I@LL@DžPx)0PHIwH}P LeMH}HHIWLPHH(H$L HEEHL:a6~H0HLLML~HE)p)UPLLL LI@$AT$LIwH}AU LELEAV$H[A\A]A^A_]DHHDž`LLL UHAWMAVIAUATMSHHHHLDžHDžIŸML؈IdH~L~IDžPx) L~LPLI|$@)0)@PIIt$H}P H]H-H}IH IT$HPIHHL RHEHL^6~H HLLML~H)p)ePLMLHHH%II|$@SMIt$H}AV MEL濙AWH[A\A]A^A_]f.IHDž`fLMLHHH}ff.UHAWMAVIAUATMSHHHHLDžHDžQIŸML8I4HHM~L~IH@DžPxL~LPLI|$@)) )0PIIt$H}P H]H2H}IH%IT$HPIHHLHEHLL~HL [6LUL~L)p)ePHuMLLHHHII|$@SMIt$H}AV MLEAW^_He[A\A]A^A_]fIHDž`fHuLMHHLHZYHe[A\A]A^A_]DUHAWAAVIAUATSHHHDž$HDž(袡IŸML艃IlHILP~I|$@L@DHDžPx)0PIIt$H}P H]HH}IH IT$HPIH(H$L 6HEHLPY6~H0HLLML~H)p)UPHDLHWII|$@$SMIt$H}AV MEL濛AW$H[A\A]A^A_]@IHDž`HDLHfUHAWEAVIAUATISHHHHDžHDžhIŸMLOI<HI~L0LPI|$@L8D@) DžPxPIIt$H}P H]H H}IHIT$HPIHHL HEHLV6~H HLLML~H)p)UPHELHHII|$@SMIt$H}AV MELAWH[A\A]A^A_]@IHDž`fHELHHtfUHAWAVAUIATISHDž4HDž8,HøHHHTH8H4LDžPxH(LT6~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLUHHDž`)p)eLUHEHEUPLLq,LH(4AT$LLH}AU HELUS4H[A\A]A^A_]DLL,UHAWAVIAUAATISHDž$HDž()HøHsH}cH\HLPL0I@D8L@DžPxPHIwH}P LeMH}HHIWLPHH(H$L HEWHL`R6~H0HLLML~HW)p)MPLDLn+LI@$AT$LIwH}AU LELWAV$H[A\A]A^A_]HHDž`fLDL*UHAWAVIAUAATISHDž$HDž()HøHsH{cHdHLPL0I@D8L@DžPxPHIwH}P LeMH}HHIWLPHH(H$L HEYHL@P6~H0HLLML~HY)p)MPLDL.+LI@$AT$LIwH}AU LELYAV$H[A\A]A^A_]HHDž`fLDL*UHAWAVIAUIATISHDž$HDž()HøHHyHH(H$HL0HLN6~H0HLPMO@L8LL~HL)L@DžPx)PHMWH}LLP foLfoLuHHDž`)p)]L]HEHEuPLLLcLH$AT$LHH}AU LELuAV$H[A\A]A^A_]LLLbcUHAWAVAUIATISHDž4HDž8,HøHHwHH8H4LDžPxH(LL6~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLwHHDž`)p)eLUHEHEwPLL1eLH(4AT$LLH}AU HELwS4H[A\A]A^A_]DLLdUHAWAVIAUIATISHHHDž$HDž(IǸMLuILILP~HI|$@L0L8DžPx)@PIIt$H}P H]HH}IH IT$HPIH(H$L HEHLI6~H0HLLML~H)p)UPHHLL]aMI|$@$AUMIt$H}AV IEL濇S$H[A\A]A^A_]fIHDž`fHHLL`fUHAWIAVIAUIATISHHDž$HDž(ߐHøHHrHXH(H$L~HLH6~H0HHLL@L~H))0LLPMW@)LLLHDžPxPHMOH}LLP foLfoLHHDž`)p)eL]HEHEPHLLLLH$AT$LHH}AU LELAV$H[A\A]A^A_]fDHLLLѐUHAWIAVMAUIATASHHHDžHDž蘎HøHHpHPHH~HHLE6~H HD0L8L~H)L@LLPM_@)LLDžPx) PHMWH}LLP foLfoL ݸHHDž`)p)eLMHEHEPHMLHDLHAT$LHH}AU LELAVH[A\A]A^A_]HMLDHfUHAWAVAUAATISHDž4HDž8\HøH{HCnkHPqH8H4LL@H(L?C6~(H@H(LPMN@DHDžPx(L(~(H(L)(L()AWHM~H}LP foLfoLζHHDž`)p)]LUHEHEPDLLH(4AT$LLH}AU HELS4H[A\A]A^A_]fDDL}f.UHAVAUATSHDžTHDžXtHøH1H[l!HHXHTLDž`xH@L`~@H@Mt$@L@)@AUHMl$H}LP fo@LL0HH=w6HDžp)MLEH}HEHEHEPVLTHPLLH}AV HEL濫STHĠ[A\A]A^]fHĠ[A\A]A^]ff.UHAVAUATSHDžTHDžXԈHøH1Hj!HHXHTLDž`xH@L`~@H@Mt$@L@)@AUHMl$H}LP fo@LLHH=u6HDžp)MLEH}HEHEHEPLTHPLLH}AV HEL濬STHĠ[A\A]A^]f軷HĠ[A\A]A^]f.UHAWIAVAAUAATISHHDž$HDž(HøHHiHH(H$L~HLu6~H0HHLD@L~H))0LLPMW@)LLDDDžPxPHMOH}LLP foLfoL]HHDž`)p)eL]HEHEPHDDL/LH$AT$LHH}AU LELAV$H[A\A]A^A_]fDHDDL賞ѐUHAWAVAAUAATASHHDž$HDž(IǸMLfI H(H$IH0HLs6~H0HLPMQ@D8LL~HL)D<D@)LDžPxPLIH}ISHHP foHfoH 1IHDž`)pH)]HMHEHEHPDDDH襣IH$SMHH}AT$ MHEHAU$H[A\A]A^A_]ÐDDDH/ff.fUHAWAVAAUAATISHDž4HDž8蹂HøHHdH$H8H4HL@H(LYq6~(H@H(LPMO@DHL (L(~(H(L)DL(DžPx)PHMWH}LL(P foLfoLIHHDž`)p)]L]HEHEIPDDLLH 4AT$LH(H}AU LELIAV4H[A\A]A^A_]DDL袡UHAWAVAUATASHDž@HDžH迀HøHiHbYHYHHH@LDDH0L?o6~0HDH0LPDžPxM}@0L0~0H0L) 0)0AVHMuH}LP fo Lfo0L {LH$AT$LHH}AU LELAV$H[A\A]A^A_]DDLLzUHAWAVAUIATISHDž4HDž8|oHøHHcQHH8H4LDžPxH(Li`6~(H@H(LPMN@(L(~(H(L)(L(~(L()(L()@AWHM~H}LP foLfoLՙHHDž`)p)eLUHEHEPLLyLH(4AT$LLH}AU HELS4H[A\A]A^A_]DLLUyUHAWAVAAUIATISHDž$HDž(ymHøHH`OH0H(H$HD@HL9^6~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLŗ HHDž`)p)eL]HEHE PDLLxLH$AT$LHH}AU LEL AV$H[A\A]A^A_]DDLLwUHAWAVAUATISHDž<HDž@_kHøHiHFMYHYH@HH$H(H$L~HLK6~H0HHLD@L~H))0LLPMW@)LLDDDžPxPHMOH}LLP foLfoL͆ HHDž`)p)eL]HEHE PHDDLsLH$AT$LHH}AU LEL AV$H[A\A]A^A_]fDHDDLSsѐUHAWAVAAUIATISHDž$HDž(YZHøHH@<H<H(H$HD@HLYI6~H0HLPDžPxMO@LL~HL)L~L))0PHMWH}LLP foLfoLHHDž`)p)eL]HEHEPDLLnrLH$AT$LHH}AU LELAV$H[A\A]A^A_]DDLLqUHAWAVIAUAATISHDž$HDž(9XHøHH :H@H(H$HL0HL J6~H0HLPMO@D8LL~HL)L@DžPx)PHMWH}LLP foLfoLPHHDž`)p)]L]HEHEPPLDL$xLH$AT$LHH}AU LELPAV$H[A\A]A^A_]LDLwUHAWAVIAUAATASHDž4HDž89VHøHH 8HDH8H4HD@H(LG6~(H@H(LPMO@DDL (L(~(H(L)LH(DžPx)PHMWH}LL(P foLfoLQHHDž`)p)]L]HEHEQPLDDvLH 4AT$LH(H}AU LELQAV4H[A\A]A^A_]LDDvUHAWAVAAUAATISHDž4HDž89THøHH 6HHH8H4HL@H(LE6~(H@H(LPMO@DHL (L(~(H(L)DL(DžPx)PHMWH}LL(P foLfoL~RHHDž`)p)]L]HEHERPDDLuLH 4AT$LH(H}AU LELRAV4H[A\A]A^A_]DDLuUHAWAVAAUAATISHDž4HDž89RHøHH 4HLH8H4HL@H(LyC6~(H@H(LPMO@DHL (L(~(H(L)DL(DžPx)PHMWH}LL(P foLfoL|SHHDž`)p)]L]HEHESPDDLtLH 4AT$LH(H}AU LELSAV4H[A\A]A^A_]DDLsۋ@ATE1USHHt6D+u1HօtH[]A\DH[]A\Ð1ރtHT$H4$YlH4$HT$f.@AWAVAUATIHUSHHHt$H ${{H5y'LHI覃HI!L;Ht$HL{…tGH4$L HIHy˺L$;D$$HD[]A\A]A^A_D1L9]HHLADIA E HMwL;G7EZA wEHM~M9tZH;Ft7ENA wWD HLG\:Ak@ vAs@A{@pAWE_H$Hf@ANv_EFAwAWD4DAAv^DQA7WA '@Ar@7AWE&DA7D48A7E7A @OvHDGAWA?AIv*EAA=AWE ,@7A?A7E Aj@vAr@AWEA7EA4ff.AWTAVAUATUSHXHD$0HD$8HD$@HD$HzD$x+HL$8HT$0HH56H= 6)AąH-OL=@L-1HLH+LHHH|$0HH|$@HX[]A\A]A^A_Ll$8IuHHH zHHHPM"Ht$0JT.HIH)HLJH EHHt$HML)LJHσHHIL DHML)IIʃIHIN \s@HIyMQMyH)IIȃHIHHJ |MqL)I˃HIIHN tMAL)HȃHHIL DHM9IAL)I΃IHIN |L9dIHcL-ixIHJHI}?IHL!xIHHH=ȋ6HHHxIHLpH=L€urMUHt$( LHD$LT$tL\$IAuHL$(LD$I9t9{A}-pLl$PL1HR6L貁A=DHL$HHT$@LH55AąHT$HDl$H@EADD$E1E1AH AE)AEOIcH2MI1IAItLIt!HD$@HBt L9HT$HLd$@IG4AsLDm1Hp[]A\A]A^ÐIHlw)HLLAT}M8tD^`E벀&HVFff.SH?t `[ATH1UHSHHHL$HD$ϋt^Ld$|$ALD$-^t@|$ AL ^tT$L$ 1U H[]A\|$__|$ V_ff.@AWHFfAVAUATIUHSHHHVH\$@)$IHD$H1HHT$HD$0H\$ HD$(@L}΋Ht$0ED$I$AA D H|$(At$v_Ll$ MtULI$ }ttHuIIAIHv,HL$(LH)I9wL)H9wHHHu1HH[]A\A]A^A_@J8*DM At6AxA$HULl$ I$}A$NfLULuIIIcHA I$LHQA!LNMM)IIIAIIItfItKIt0ItA}I]AEA}I ]AEA}I\AEA}I\AEA}I\AEA}I\AEA}I\AEM9A}I \AEA}r\AEA}a\AEA}P\AEA}?\AEA}.\AEA}\AEA} \AEM9kLl$ HAV1AUIATUHSH@HD$"H\$ LsH{HCfLH)lHfT$ HcA}LJL`IkBlLLAK1ҾLˋAŃHL$ AǾD$ YDHDʋH$1Ht$VHDl$HH$H|$HHDŽ$ HDŽ$`AąEH$E1B vZMFL9$B WZMNL9$B 8ZMVL9$B ZM^L9$vsB YIVH9$vX YINH9$v> YIFH9$v$ IYL9$fDH$ u=$u3Dm@DIHlwOHLLA}M ExDCYAH@D[]A\A]A^f.E1ff.AVHFfAUATIUSHHHVDLl$@HHD$1L)$AHHT$HD$0Ll$ HD$(HEuWHl$(I1L;kȋHxI$H1[]A\A]A^ E8tH[]A\A]A^ÐM$LE$HHD$@Ht$HMEEMH L)jH,I}IHUH LT$HHl$@KIIAHvkL)H9w^HmHLEtI$E$H$HH)HEHMH}DuH/SLH1멐ATH U1SH1H0L oNjLD$D$nLHf_MIHHT$LA:AAăHL$AǾD$:UteH$VHDd$ HL 6HH|$ L$HDŽ$ HDŽ$YuD#H0[]A\fDDHVH0[]A\ATI1VUISHHHHHt$LHHT$ HD$ H$1틼 UHUH9$ UHuH9$ ULML9$B qULUL9$vsB VUL]L9$vXB ;ULEL9$v=B  UHMH9$v" HUH9$@L9$$u1D$Hİ[]A\øff.HI1VILHHt$LLHT$ HD$xHĸHI1VHL m 6HH$ LHLL$HD$ HD$HDŽ$HĸfATH1IUVSHH\$Ht$HHHt$(HHHD$0 HD$ ,H$(H SH$(LEL9B SH$(LML9B gSH$(LUL9B ESH$(L]L9v|B 'SH$(HUH9v^  SH$(HMH9vA RH$(H}H9v$ HRH$(H9$0HA4$H[]A\fDAWI1AVIιVAUIATIUSHH\$HT$HHHLHT$(HD$0 HD$ ADž:H$(1틼 RHuH9$( QLML9$(B QLUL9$(B QL]L9$(vxB QLEL9$(v]B QHMH9$(vB fQHEH9$(v( HHQH9$(f.$tFMt $A$Mt D$EeMt D$E.HD[]A\A]A^A_AAT1IUH͹VSHH\$HHƄ$H|$H$HEHt$ $HHLL6LHHt$ HHLDHD H[]A\HT$JHT$$Hw+A$HssH9H9AVH95AUHC5IATH9zMUIHSHHFdHdHt[]A\A]A^fDH5AH=B u!MHHL[L]A\A]A^D[1]A\A]A^D1DH%zx-%zxAWAVIAUIH5ATUSHHxfo`6H|$ H|$`HL$(HD$8HD$@)D$`HD$XHD$HHD$PDH-HT$HHL$PI1Ht$@H|$8H$HL$L{Ht$H|$DLLHL9HCLH4$H|$L LHHL$HT$1Ht$XH|$Pi?u1HILHt$(I)L9t$8HFl$8L9IBH)HH;l$ s^Hl$@L9dE1H|$PDLAHxL[]A\A]A^A_D1HIHt$(I)M9MCH)IL;t$ rMH|$PE1CfAVAUATIUHSHHHcIH61I11H@HcHiDIHIcIHp6HL1GHLAŅumHT$I$L CHĐ[]A\A]A^f.EI11HcH 61sGXHcHCIHtxEHcf땽fUHSHHHtHt&HHH5 ӅtHEH[]K?HfDUSHH-Ht6HHtHH5ӺHHH[]D?HfDH[]ÐHTbHt$HHDLSEEH1DZY=wUH5H@Ht5Ht$H|$H HD$ HH|$ HD$=L\$My=H|$0E1?H\$(1D3HH[]A\A]A^A_H|$01 AAH|$0I?AEEfHH5H=$1H=HHH5H=$H=itHhH1HfSH5xH=I|$H-HtH[H5QH="U$SH58H=:$H㵋HtH[H5 H=ڵ $1[fSH5HH=#H=H5ʽH=tI#H=|t2H;{s)HHWH[H?HHf1[@#1H[fATIH=,UHSHH5EP#H59H= =#H=t3H 촋MHH1A2[]HA\Ð1ff.UHH5ռSHH=H"H5H="H=nt4H mE1E1HH1U2HH[]1ff.UHH5USH=#HR"H5;H= ?"H=ﳋt-H H11H[]@1@AUH5ATIH=USHH!H=2HH5H=!H?H=dFH_H??H)IIHv-L =HHu Af.E11H1LH4LL?HH=HHtH5!H5H=ղ!H=H 1H0E1AAHwHHD[]A\A]@H0;HHD[]A\A]fH5H=Z H==?D1vf?fDAUIATIUHH5+SHH=H' HMMjHH11/H[H?]A\A]AWEAVMAUIATAUHH5SHH=HHMMAWDHH1\/HH[]A\A]A^A_fAWH1H‚6AVAUATUSH(H\$ H$HD$HHD$W>=v1H([]A\A]A^A_@HH53i9HHtLd$Hl$ILt$L-H6)fDH|$1LLHD$LR4t=Hٺ LHAHyH|$9H6H$\f.H$$ fHH=8HHH%zx-%zxAWAVAUATIH5YUSHHxfoӁ6H|$`HD$X)D$`HD$8HD$@]8HH=%H=HD$HHT$PHL$HE1HD$(HT$L|$8Lt$@HL$H<H LL}@HxuHL$HT$1Ht$XH|$@2uH|$HH9v9IuH;t$(H\$ ~L$ MIH|$ LL$IL$ C LT$PI9sKL9vNLL9HB5H|$@h7HT$L- 1H Hx[]A\A]A^A_@M9wLL9DHt$(H|$HHT$MHLH*HLt$KD5H9v2I9s=MILt$Af11 Ld$IfD{1a@HLDHGf.H&1ff.f1ff.f1ff.fff.@1ff.fff.@AWAVDAUIATEfUSHH(LD$LL$ADH 5H54D$t$ L$ E1ADHLw+IHHMI9t'H9D$wTH<H9|$rILD$`NLIM!L9u4AuH(L[]A\A]A^A_@HLfDHLE1Atf˩A#D$ E1/Mu΁tƋL$ E1ADHH*IHtMtAVgAWAVAUIATDUHSA\$HHAH5)5H=25E1A LH*HH3HH9tLMTL9AtLHuШHH[]A\A]A^A_fD裨(E1A11LH)HHz1묐AAugHp5H Y5DS H1HމW ‰;H4x[f1[@1DHtKH 1[1 ‰퉋H手x HD1Hf1ff.fHt ?11p ff.@Ht+Ht&H?11Hu1Hf.1ff.fHt 6fDff.@Ht HGfD1ff.fHt HGfD1ff.fAVAUATUSH>$IH0II HHLp LUHHHu,D8H;JH;C(tHƿAƅuQD$Hs {(C,.t9HHs DC(HɺE1ɃHHCHtI$DfH{Ht Hs n{(t aH;H;HtHAHĐD[]A\A]A^H{Huff.fAWAVIAUIATUHSHHL&L~DLH=61LHHtsLHLH3AŅu,HEL`HULzHDHD[]A\A]A^A_fAH=ԆLc,LIkAfAVAUIATIUHSHHtvo)$HT$H4$H=V61HHHLLHjŅu$I$fo $HH H[]A\A]A^ýfH56H=6- HHt*HH0HI AM@AVAUATUSHH8>/HI0IIdHH@(HLp %HH1ҾH C(Hƿ AƅuxD${(1C,"Ht\Hs H9uSIDC(LE1ɉƒJHCHt0{(oC(I$HĐD[]A\A]A^ÐHCHt Hs H;{(t.H;Ht HA 뭐AHCHuDAVIAUIATIUSHHKH=61AHtTLLLHHHAąu1IEHHPIMHsHqH2 [D]A\A]A^fDAAAVI1AUIATIH=6UHSHVH6HtJLLLHHAąu'IEoE@H [D]A\A]A^fDAAUSHHHHt tWt*{(u3H;Ht] HH[]O Hs {(ttH;@Hs E1A1ҹ2DHt;Ht6UHSHHE9E,tH1[]ÐH1[]Ðf.H?8HHwOW f.AUfLjATIUSHHBIEHHt&.";8HtuHt։HLtWHHxID$Ht7HH<H1 A$H1[]A\A]I|$HtVqI|$Ht_bI|$HtsI|$yHfAL$IEI$H[]A\A]ÐA<$tI|$HuA|$tyI|$Hss@AWfAVAUIATLfUSHH8 FID$Lt$HA}HLA HtVIH)uދD$uFLt$ Hl$Mt.H)IHA}HL Hyf8tِH{Htw"H{HuH{Ht"H{)fHKID$Hf8"H{Huf;t$fHT$L1L$ D LH[6E L1LLH961 L1;C11{11D$ Lt$ f{HLHxIH)u1H8 []A\A]A^A_Ð8tq{zf.AWf1AVAULjATIUHSHHX0BIEH*Cu_H{HZ%H{HH{Ht%H{,fHcIEHD1҉Ǿ1htMo kLAoS)L$0)T$@iIH=H|$8HwH|$@HtmhL|$HMtLvL~HD$Hf\$8HD$0AtD 1HX0[]A\A]A^A_|$4tr 눋|$0l^ bf;@ HL$PHD$XH@LHD$PHyH $rHE1t .A/tFfFIt FF1LLL$L$PLLH6LM1LLL] 6H6LL1:L1)LA1;C) AV1Ҿ1Ń{1Ҿ1Ń;UŃ{=ŃDL$4Ld$DL$Il$L$$f.|$HL!HIH)u$Ld$ T$D$$D$,T$ D$(8uLtf|$&uf|$.tj,$u@LIwf{1 'f.ADDK8렽Ld$fD;HLHx&xIH)u1|$@cfD8tIfAUfHfvATUHSHHL-yOHGIH)$NHFHMtPLAՃt{I|$hytf$L$1t$|$ Mu{H[]A\A]@Lt.I|$tLl$A<$1zu3<$M|$D|$;|$ 2H[]A\A]A|$1,tIM9?ATIUHSHt)H)HHt+A<$HHHyj8t[]A\[1]A\ÐATIUHSH H)HHt-A|$HH%Hy8t[]A\@[1]A\ÐHGHtfDtSH5HGHC[ÐHGHtfDWtSH5ZWHHC[SHHHtC^H{HtJPH{HtbH{ifHCCH[Ë;tH{Hu{t~ff.AU1ATIH= 6USH1H@ŃǺ1RE1u8Ht;IH)IHt-HL0Hu8tAE1IAA܉HD[]A\A]DAkff.Kff.ff.ff.1ff.fff.@ff.@Ht'UHSHHD+H[]øff.SHHD$ @tjD$ w@tD r@t HcȃD aHHt@t Ht$ -HH@H@[1ff.HHHHֺ9HHATIHUHLSHHtHE1H9tL҃[]A\ff.ATIUSHH߉wt"uA,$HB[]A\ftStGt@SHHt,H[f1@뾸[f.UHSHHoHHEH[]fkff.AUIATUHo(SHHLcPHHP{ HL { HL{ upHL{ u_HL{ uNHL{ u=HL{ u,HL{ uHL{ pfD[$HexqHHy 61@HFH5{ 6HwHHt?L'LHپHHHI61L9HH[]A\A]Ðf1f.AUATIUSHHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$HT$ Ll$11H$HT$LLD$D$ 0HD$x}HHXHHHtgH$Ht$ LHHL$LHt$HD$D$ 0_xHH[]A\A]f.H1ff.HtKUSHHHxHHHtHHH;(HHH[]f.1ff.fAWAVAUATIUSHHIHMtVLL,(II}nHHt"HLHH<+LLB+HH[]A\A]A^A_fHx'HHtHLHq+Ht3HHxIHHtLLH9B;f1f.fUH=h;HSHˇu7H(`HtHcH+H`H[]eDH[]fH?Htf.DH?Htf.DH?Htcf.DH?HtCf.DH?Ht#f.DH?Htf.DH?Htf.DHE҇1>HHcore_engine.getStatus()nnAttnModel.predictTimeMs(opset, deviceProp, config, pred)rtcLegacyModel.predictTimeMs(opset, deviceProp, config, pred)basic_string::_M_construct null not validstream != vars_exec.getHandle()->streamId(nullptr == user_data) || (nullptr == wksp_data)trans_struct->at_tensor.transformOutput(vars_exec.getHandle(), alpha, vars_exec.get_user_ptrs()[tensorDataPtrIdx], beta, vars_orig.get_user_ptrs()[tensorDataPtrIdx])opIdxInVec >= exec_op_set.normFwd.size()opIdxInVec >= exec_op_set.normBwd.size()opIdxInVec >= exec_op_set.pointwise.size()Failed to allocate host memory for creating an engineopSet.getCBAMatcher() == nullptropSet.getCBAMatcher()->getConvBias() == nullptrEngine %ld is not enabled for %s!sub_enginefalse == can_execute(0 < required_workspace) && (nullptr == ws_ptr)varPackUidCount > expected_uid_countvarPackPtrs[io_uid_idx] == nullptr && (REMOVED_IO_UIDS->find(io_uid) == REMOVED_IO_UIDS->end())Only a null pointer is allowed for virtual tensors.varPackPtrs[virtual_uid_idx] != nullptruidA == uidBuid_found == falseCUDNN_STATUS_SUCCESS == buf_statbasic_string::_M_createpointwise_addmatch == varPackIdxMap.end()pointwise_mulpointwise_relupointwise_cmp_gtopSet.isFinalized() == falseopSet.getfprop().empty()engine_iface == nullptr!op.isFinalized()opSet.getdgrad().empty()opSet.getwgrad().empty()opSet.getOpCount() <= 1op.isFinalized() == falseINTERMEDIATE_INVALID == intermediate.getType()nullptr == intermediate.getPtr()core_engine.setPerfKnobs(othr)perf.getKnobName(knobIdx, type)knobs[name].getValue(ch, value)perf.getValue(type, value)getPerfKnobsFromHeuristics(heurKnob)heurKnob.getKnobName(knobIdx, type)heurKnob.getValue(type, heurValue)out.setChoice(type, heurValue)out.getValue(type, userValue)normBwdnormFwdcompile_internal()setWorkspaceSize()core_engine.compile()Tkdktkkkkkkkkkll$l4lDk4k l0l0lPl`lplllllllllmm m0m@l l!squeezed || (dim_out + 1 != _nbDims)(target_sm_count < 0) || (target_sm_count > this->getDeviceProp()->multiProcessorCount)status == CUDNN_STATUS_NOT_SUPPORTED_RUNTIME_PREREQUISITE_MISSING(CUDNN_STATUS_NOT_INITIALIZED == status) || (CUDNN_STATUS_NOT_SUPPORTED == ((status) / 1000 * 1000))ptr()->setTargetSMCount(this->getTargetSMCount())initGraph(userGraph)userGraph.clear()cudnn_version != (9 * 10000 + 10 * 100 + 2)schema_version != ((0) * 100 + (4))json_object.MemberEnd() == iter_kernel_arrayresize_kernel_list_size(json_kernel_array.Size())kernelList[idx_kernel++]->from_json(json_kernel, cudnn_version, schema_version)!json_object.IsObject()kernels!json_kernel_array.IsArray()kernelParamsstructonKernelListChanged()core_engine.from_json(json_object, cudnn_version, schema_version)dstDesc_mod.squeeze_one(3)srcDesc_mod.squeeze_one(3)srcDesc_mod.getNbDims() != dstDesc_mod.getNbDims()(false == is_filter) && (srcDimA[0] != dstDimA[0])dstStrA[d] != dstDimA[d + 1] * dstStrA[d + 1]srcStrA[d] != srcDimA[d + 1] * srcStrA[d + 1]cudnn::graph::setTensorNdDescriptor(&srcNdDesc, srcDesc.getDataType(), 5, dimA, strA, true)cudnn::graph::setTensorNdDescriptor(&dstNdDesc, dstType, 5, dimA, strA, true)TransformImplPolicy::setTensorTransformDescriptor( &transformDesc, 5, dstFormat, padBeforeA, padAfterA, foldA, CUDNN_TRANSFORM_FOLD)set_transform_with_collapsed_group_dim(srcDesc, dstDesc, NK_DIM, C_DIM, W_DIM, dstFormat, dstType, is_filter, transformDesc, srcNdDesc, dstNdDesc, dstSize_bytes)set_tranform_with_collapsed_spatial_dims(srcDesc, dstDesc, C_DIM, W_DIM, dstFormat, dstType, transformDesc, srcNdDesc, dstNdDesc, dstSize_bytes)TransformImplPolicy::setTensorTransformDescriptor( &transformDesc, nbDims, dstFormat, padBeforeA, padAfterA, foldA, CUDNN_TRANSFORM_FOLD)cudnn::graph::setTensorNdDescriptor(&srcNdDesc, srcDesc.getDataType(), nbDims, dimA, strA, true)cudnn::graph::setTensorNdDescriptor(&dstNdDesc, dstDesc.getDataType(), nbDims, dimA, strA, true)TransformImplPolicy::initTransformDest(&transformDesc, &srcNdDesc, dstType, &desc, dstSize_bytes)desc.isCompatible(dstNdDesc) == false*dstSize_bytes != sizeofCudnnType(dstNdDesc.dataType) * dstNdDesc.getDimProduct()getExecOpStatus()match1 == exec_tensorDescMap.end()nbDims < 2 || nbDims > 5 || (user_norm_mode != CUDNN_LAYER_NORM && user_norm_mode != CUDNN_RMS_NORM && user_norm_mode != CUDNN_ADA_LAYER_NORM && nbDims < 4)!isAllowedDtypeConversion(user_tensorDescPtr->getDataType(), exec_tensorDescPtr->getDataType())compute_equiv_transform(user_desc, exec_desc, is_filter, nbSpaceDims, dstFormat, dstType, preexec_transform_desc, user_view_desc, exec_view_desc, nullptr, &bytes)trans_struct->at_tensor.setInputTransform2(exec_nbSpaceDims)compute_equiv_transform(exec_desc, user_desc, is_filter, nbSpaceDims, user_format, user_desc.getDataType(), postexec_transform_desc, exec_view_desc, user_view_desc, &bytes, nullptr)trans_struct->at_tensor.setOutputTransform( exec_nbSpaceDims, user_tensorDescPtr->isNSpatialC_fullyPacked() ? CUDNN_TENSOR_NHWC : CUDNN_TENSOR_NCHW)stream != vars_orig.getHandle()->streamIdvars_exec.allocateFromWorkspace(t_size, vars_exec.user_ptrs[tensorDataPtrIdx], tensor_align)vars_exec.allocateFromWorkspace( trans_struct->at_tensor.wksp_bytes, vars_exec.user_ptrs[tensorDataPtrIdx], tensor_align)trans_struct->at_tensor.transformInput(vars_exec.getHandle(), vars_orig.get_user_ptrs()[tensorDataPtrIdx], vars_exec.get_user_ptrs()[tensorDataPtrIdx])vars_exec.allocateFromWorkspace(0, ptr, ws_align)match2 == varPackIdxMap.end()core_engine.getWorkspaceSize(&required_workspace)exec_tensorDescPtr->getDataType() != CUDNN_DATA_FLOATnormBwd_dScalenormBwd_dBiaskernelList.size() < 1kernel->to_json(json_kernel, allocator)core_engine.to_json(json_object, allocator)exec_normbwd_op->set( CUDNN_ATTR_OPERATION_NORM_BWD_MODE, CUDNN_TYPE_NORM_MODE, 1, &(specs.native_mode))pointwise_mul_xpointwise_mul_bpointwise_mul_ypointwise_add_xpointwise_add_bpointwise_add_ynormBwd_op == nullptrnormBwd_xnormBwd_MeannormBwd_InvVariancenormBwd_ScalenormBwd_dynormBwd_dxnormBwd_epsexec_normfwd_op->set( CUDNN_ATTR_OPERATION_NORM_FWD_MODE, CUDNN_TYPE_NORM_MODE, 1, &(specs.native_mode))normFwd_xnormFwd_MeannormFwd_InvVariancenormFwd_ScalenormFwd_BiasnormFwd_ynormFwd_epsnormFwd_InRunningMeannormFwd_InRunningVarnormFwd_OutRunningMeannormFwd_OutRunningVarpointwise_relu_xpointwise_relu_ypointwise_cmp_gt_xpointwise_cmp_gt_yfillupnormVecforNormFwd(normVec, (mode == cudnn::backend::OPSET_MODE_NORM_FWD_TRAIN), resetNormMode)fillupnormVecforNormBwd(normVec, resetNormMode)(user_tensorDescPtr == nullptr || trans == nullptr || exec_tensorDescPtr == nullptr)dtype_transform_required && specDatatype.type == CUDNN_DATA_BOOLEANcompute_packed_strides_for_format(nbDims, dimA, exec_strA, specLayout.format)setTransformFlagsAndExecTensorDesc(user_tensorDescPtr, specLayout, specDatatype, isTensorInput, isTensorVirtual, trans_struct, exec_tensorDescPtr)opsMap[opName].first->set(attr_name, CUDNN_TYPE_BACKEND_DESCRIPTOR, 1, &exec_tensorDescPtr)it.second.first->finalize()0(ພззззззз๞PP ззз軞`з`(H`(Ļ+䷞TTT000Ϟ޽?Ϟ˞̞ʞɞ͞Þ`־ŞƞǞžĞOȞ core_engine.execute(vars, stream)(streamCount == 0) || (streamCount > CUDNN_ENGINE_MAX_STREAMS)m_at_executor.preExecutionInputTransformation(core_engine, vars, vars_exec, varPackIdxMap, stream)vecAddLaunch(static_cast(vars_exec_ptr), static_cast(vars_group_ptr), n)copyPerGroupVarPackToExecVarPack( groupedContext, groupIndex, vars_group, vars_exec, varPackIdxMap, stream)core_engine.execute(vars_exec, stream)m_at_executor.postExecutionOutputTransformation(core_engine, vars_exec, vars, varPackIdxMap, stream)(!specs.isPersistentKernel)vector::_M_default_appendcore_engine.isSupported()fillup_num_execution_groups()it.second->finalize()m_at_executor.getExecOpFromExecOpSet( it.first, it.second.second, exec_op_set_per_group, exec_op_per_group)is_normBwd_dScale_or_dBias && is_batchStride_over_int32Maxsimple_opsMap_per_group[opName]->set( attr_name, CUDNN_TYPE_BACKEND_DESCRIPTOR, 1, &exec_tensorDescPtr_per_group)group_offset_for_tensor % getTensorAlignment() != 0core_engine.setTargetSMCount(this->getTargetSMCount())m_at_executor.initialize(core_engine, num_execution_groups)exec_tensorDescPtr->getStrideA()[0] % 8 != 0vars_exec.allocateFromWorkspace( group_offset_for_tensor, tensorData, tensor_align)vars_group.setUserPointers(dev_ptrs.data(), dev_ptrs.size())vars_group.setWorkspacePtr(wsGrp)vars_group.setWorkspaceSize(wsOffPerStream)St11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EEN5cudnn3cnn17C1K1RTCEngineBaseIL24cudnnBackendEngineName_t1006EEEN5cudnn3cnn17C1K1RTCEngineBaseIL24cudnnBackendEngineName_t2016EEEN5cudnn3cnn17C1K1RTCEngineBaseIL24cudnnBackendEngineName_t5EEESt19_Sp_make_shared_tagSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EEN5cudnn7backend10DescriptorEN5cudnn6fusion16FusionEngineBaseEN5cudnn10layer_norm28PersistentLayerNormFwdEngineILb0EEEN5cudnn3cnn21GeneralizedNormEngineINS_10layer_norm28PersistentLayerNormFwdEngineILb0EEEEEN5cudnn3cnn21GeneralizedNormEngineINS_2bn34SGBN_instancenorm_fwd_infer_engineEEEN5cudnn3cnn21GeneralizedNormEngineINS0_23LayerNormFwdInferEngineEEEN5cudnn3cnn21GeneralizedNormEngineINS0_26InstanceNormFwdInferEngineEEEN5cudnn10layer_norm31PersistentLayerNormFwdTmaEngineILb0EEEN5cudnn3cnn21GeneralizedNormEngineINS_10layer_norm31PersistentLayerNormFwdTmaEngineILb0EEEEEN5cudnn3cnn21GeneralizedNormEngineINS_2bn31SGBN_batchnorm_fwd_train_engineEEEN5cudnn10layer_norm28PersistentLayerNormFwdEngineILb1EEEN5cudnn3cnn21GeneralizedNormEngineINS_10layer_norm28PersistentLayerNormFwdEngineILb1EEEEEN5cudnn3cnn21GeneralizedNormEngineINS0_23LayerNormFwdTrainEngineEEEN5cudnn3cnn21GeneralizedNormEngineINS0_26InstanceNormFwdTrainEngineEEEN5cudnn10layer_norm31PersistentLayerNormFwdTmaEngineILb1EEEN5cudnn3cnn21GeneralizedNormEngineINS_10layer_norm31PersistentLayerNormFwdTmaEngineILb1EEEEEN5cudnn3cnn21GeneralizedNormEngineINS_2bn16SNGBN_bwd_engineEEEN5cudnn3cnn21GeneralizedNormEngineINS_2ln36LayerNorm_bwdtrain_persistent_engineEEEN5cudnn3cnn21GeneralizedNormEngineINS0_18LayerNormBwdEngineEEEN5cudnn3cnn21GeneralizedNormEngineINS0_21InstanceNormBwdEngineEEEN5cudnn3cnn21GeneralizedNormEngineINS_2ln40LayerNorm_bwdtrain_persistent_tma_engineEEESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion13RuntimeKernelESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion29fortNativeRuntimeFusionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn17C1K1RTCEngineBaseIL24cudnnBackendEngineName_t5EEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion23FortRuntimeFusionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn17C1K1RTCEngineBaseIL24cudnnBackendEngineName_t1006EEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn17C1K1RTCEngineBaseIL24cudnnBackendEngineName_t2016EEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn31Wgrad2dGroupedShmemTilingEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion34FortFFMAGroupedRuntimeFusionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion35xmma512AttentionRuntimeFusionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion32fortAttentionRuntimeFusionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion24FmhaFlashAttentionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_10layer_norm28PersistentLayerNormFwdEngineILb0EEEEESaIS6_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_2bn34SGBN_instancenorm_fwd_infer_engineEEESaIS5_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion27fortNormRuntimeFusionEngineESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS1_23LayerNormFwdInferEngineEEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS1_26InstanceNormFwdInferEngineEEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_10layer_norm31PersistentLayerNormFwdTmaEngineILb0EEEEESaIS6_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_2bn31SGBN_batchnorm_fwd_train_engineEEESaIS5_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_10layer_norm28PersistentLayerNormFwdEngineILb1EEEEESaIS6_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS1_23LayerNormFwdTrainEngineEEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS1_26InstanceNormFwdTrainEngineEEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_10layer_norm31PersistentLayerNormFwdTmaEngineILb1EEEEESaIS6_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_2bn16SNGBN_bwd_engineEEESaIS5_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_2ln36LayerNorm_bwdtrain_persistent_engineEEESaIS5_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS1_18LayerNormBwdEngineEEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS1_21InstanceNormBwdEngineEEESaIS4_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn3cnn21GeneralizedNormEngineINS0_2ln40LayerNorm_bwdtrain_persistent_tma_engineEEESaIS5_ELN9__gnu_cxx12_Lock_policyE2EE?_C?  @@@@@@@@@@    @@@@   @@@@  @@@            @ @ @ @@@@    @@@@@@  @     @ @ @@ @@   @@  @ @ @@@@@   @     @ @@ resize_kernel_list_size(shared_kernels.size())N5cudnn6fusion23RuntimeFusionEngineBaseEresample_node == nullptrnullptr == conv_nodenullptr == dgrad_nodenullptr == wgrad_nodeTensorNHWCTensorCHWNTensorNDHWCTensorCDHWNfort::half_tfort::float_e4m3_tfort::float_e5m2_tfort::uint1b_tfort::bfloat16_tfort::tfloat32_tuint8_tdoublefort::float_e8m0_tfort::float_e2m1_tnullptr == graphis_fmhais_pointwise_fusionis_multiple_gemms_acc_fusion!is_valid_conv!is_correlation!is_compute_type_supportedis_group_conv!is_NHWC!is_matching_input_datatype!cfo->getAlpha().isOne()!cfo->getBeta().isZero()xtensor_dim[i] < stride[j]check_conv_stride_valid(cdo)is_strided_conv && !is_fp8is_tf32_dgrad!cdo->isAllTensorNHWC()!cdo->getAlpha().isOne()!cdo->getBeta().isZero()is_tf32_wgrad!is_batch_size_128bit_aligned!cwo->isAllTensorNHWC()!cwo->getAlpha().isOne()!cwo->getBeta().isZero()kcfg.cta_tile.N > 64!isTypeSupportedsignal op is not supportedfortBackend.type == FORT_XMMAconcat op is not supported4 != nbDims && 5 != nbDimsproblem_descriptor_0bProducerNode != nullptrdims_a[i] != dims_b[i]aType != bType!is_A_matrix_32bit_aligned!is_B_matrix_32bit_aligned!is_C_matrix_32bit_aligned!is_A_matrix_128bit_aligned!is_B_matrix_128bit_aligned!is_C_matrix_128bit_alignedmmo->hasGemmMOverrideDesc()bLayout == "RowMajor"mmo->hasGemmNOverrideDesc()mmo->hasGemmKOverrideDesc()mathPrec != CUDNN_DATA_HALFmathPrec != CUDNN_DATA_FLOATis_boolean_iolayout_x != layout_blayout_x != layout_trfo->getAlpha() != 1.0rfo->getBeta() != 0.0compute_type != "float"prePad != 0.5postPad != 1.0stride != 0.5window != 2!is_pre_pad_integer!is_post_pad_integerfort::problem_descriptornullptr == ptr!fortBackend.is_xmma_sm9x()!mma_pipeline_op_Unexpected operation--gpu-architecture=sm_--gpu-architecture=compute_-cuda-api-version=--std=c++11-rdc=true-w--define-macro=__CUDACC_RTC__-default-device-DCUDA_EXTENDED_PTX_ENABLED=1-DCUDA_KNOBS_ENABLED=1-DCUDA_PTX_FP8_F2FP_ENABLED=1-DXMMA_EPI_ROLL_ENABLED=1-DXMMA_PTX_MMA_FP64_ENABLED=1-DXMMA_CUDA_RP2RP_ENABLED=1-DXMMA_SEGMENT_K_ENABLED=1-Xptxas-uumnrtk()->getPtxDesc(ptx_desc)--ext-desc-string=-DJETFIRE_ENABLED=1jit_flags_dbgKernel has not been compiledcompiler.load()cuLibraryUnloadcuLibraryLoadDatacuLibraryGetKernelrtk()->loadModule()prepareLaunchParams()workspace_tag_graph_partitions(graph)node_ptr->refinalizeOpDesc()input_connections.size() != 1producerPort == nullptrunsigned int* __restrict__volatile getMmaShape(operator_shape)fort::tensor_descriptordivmod_operator_DHWC_cutlass::FastDivmodU64divmod_operator_HWC_divmod_operator_WC_divmod_operator_C_divmod_NUnknown Downsample Mode.Unsupported padding moderesample_descriptor_0Unsupported resample modedivmod_operator_kcfg.cta_tile.K != 64No mainloop fusion. aProducerNode != nullptrfort::fprop_params_xmmafort::dgrad_params_xmmafort::wgrad_params_xmmasplitk_slices_knob > 1op_params->split_k.slices > 1fort::matmul_params_xmmaconvolution_3d_descriptor_0convolution_descriptor_0C1K1NhwcParamsstruct Paramsdummy0dummy1dummy2dummy3fortBackend.arch < ARCH_8Xis_3dnullptr == cdonullptr == cwoUnsupported reduction_concat_convFwdgenerate_conv_ops_fort(node)_matMul_pointwise_convBwdDatanullptr == conv_descgenerate_dgrad_ops_fort(node)_convBwdFiltergenerate_wgrad_ops_fort(node)_genStats_reduction_resampleFwd_resampleBwd_signalStrided_sm50_sm70_sm80_sm100_sm120_cutlass_xmma_sdpa_fort_native_fort_native_sdpa_fort_ffma_groupedcudnn_generated_fort_depthwise_kernel0_knob_%*sTime: %s (%s since start)NVIDIA_TF32_OVERRIDEform_kernel_params_str()construct_fort_tree()emit_code_fort()kcfg.cta_tile.N > 128dim_y[i] != 1!is_row_majorcheck_conv_support_fort(node)opSet.initGraph()is_dynamic_shape_enabledinit_kernelgen_backend()preprocess_graph()process_knob_choices()check_for_support()rtk()->loadDLL()kernelGeneration()pަ ަݦݦݦ0ަ@ަpަPަ`ަަݦݦݦަݦݦ ,<L\l|  0H`xl1 1**)*)QP P|N 15 || base_corner_a[1] < -15 || base_corner_a[1] > 15 || base_corner_a[2] < -15 || base_corner_a[2] > 15 || far_corner_a[0] < -15 || far_corner_a[0] > 15 || far_corner_a[1] < -15 || far_corner_a[1] > 15 || far_corner_a[2] < -15 || far_corner_a[2] > 15base_corner_c[0] < -15 || base_corner_c[0] > 15 || base_corner_c[1] < -15 || base_corner_c[1] > 15 || base_corner_c[2] < -15 || base_corner_c[2] > 15 || far_corner_c[0] < -15 || far_corner_c[0] > 15 || far_corner_c[1] < -15 || far_corner_c[1] > 15 || far_corner_c[2] < -15 || far_corner_c[2] > 15base_corner_b[0] < -15 || base_corner_b[0] > 15 || base_corner_b[1] < -15 || base_corner_b[1] > 15 || base_corner_b[2] < -15 || base_corner_b[2] > 15 || far_corner_b[0] < -15 || far_corner_b[0] > 15 || far_corner_b[1] < -15 || far_corner_b[1] > 15 || far_corner_b[2] < -15 || far_corner_b[2] > 15fortBackend.is_cutlass_sm7x() && ((this->getDeviceProp()->deviceVer < 700) || (this->getDeviceProp()->deviceVer > 800))fortBackend.is_cutlass_sm8x() && (this->getDeviceProp()->deviceVer < 800)detect_mha_implementation(graph, *is_mha_)mmaNodeCount > 2 && currMmaOpType == CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTORmmaNodeCount > 1 && currMmaOpType != CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTOR(mmaNodeCount == 0) && !is_pointwise_fusion && (resampleNodeCount == 0)analyze_graph_type(graph, &(this->currMmaOpType), &(is_fmha), &(this->is_pointwise_fusion), &(this->is_multiple_gemms_acc_fusion), &(this->is_mma_fusion_with_non_mma_op))Fused Attention patterns are not supported by this enginefortBackend.is_xmma_sm9x() && ((this->getDeviceProp()->deviceVer < 900) || (this->getDeviceProp()->deviceVer >= 1000))cfo->is_FP8() && cudnn::ops::isForwardCompatEnabled(this->getDeviceProp()->deviceVer)cfo->getXDescriptorPtr()->getDimA()[1] % cfo->getWDescriptorPtr()->getDimA()[1] != 0Fort Cutlass path does not support K != C for grouped convis_group_conv && !is_depthwise_convSegment-K is currently not supported with int32 compute typesplitk_slices_knob > 1 && compute_type == CUDNN_DATA_INT32is_ctaTileK_supported_by_cutlass(deviceVer, kcfg.cta_tile.K, data_size_in_bits_x) == falseis_knob_supported_by_xmma(deviceVer, kcfg, data_size_in_bits_x) == false!is_output_channel_count_32bit_aligned!is_input_channel_count_32bit_aligned!is_output_channel_count_128bit_aligned!is_input_channel_count_128bit_alignedfilter_dim_R > 32 || filter_dim_S > 32 || filter_dim_T > 32is_fp8 && cudnn::ops::isForwardCompatEnabled(this->getDeviceProp()->deviceVer)cdo->getDyDescriptorPtr()->getIsVirtual() == false && cdo->getDyDescriptorPtr()->getDataType() == CUDNN_DATA_FLOATcdo->getWDescriptorPtr()->getIsVirtual() == false && cdo->getWDescriptorPtr()->getDataType() == CUDNN_DATA_FLOAT!(cdo->getDxDescriptorPtr()->isNSpatialGC_fullyPacked() && cdo->getDyDescriptorPtr()->isNSpatialGC_fullyPacked() && cdo->getWDescriptorPtr()->isGCSpatialK_fullyPacked())!(cdo->getDxDescriptorPtr()->isNSpatialC_fullyPacked() && cdo->getDyDescriptorPtr()->isNSpatialC_fullyPacked() && cdo->getWDescriptorPtr()->isCSpatialK_fullyPacked())is_ctaTileK_supported_by_cutlass(deviceVer, kcfg.cta_tile.K, inputElemSizeInBits) == falseis_strided_conv && (dilation[0] > 1 || dilation[1] > 1 || dilation[2] > 1)is_knob_supported_by_xmma(deviceVer, kcfg, inputElemSizeInBits) == falsecwo->is_FP8() && cudnn::ops::isForwardCompatEnabled(this->getDeviceProp()->deviceVer)cwo->getDyDescriptorPtr()->getIsVirtual() == false && cwo->getDyDescriptorPtr()->getDataType() == CUDNN_DATA_FLOATcwo->getXDescriptorPtr()->getIsVirtual() == false && cwo->getXDescriptorPtr()->getDataType() == CUDNN_DATA_FLOAT!is_correlation && (filter_dim_R != 1 && filter_dim_S != 1)!(cwo->getXDescriptorPtr()->isCSpatialGN_fullyPacked() && cwo->getDyDescriptorPtr()->isCSpatialGN_fullyPacked() && cwo->getDwDescriptorPtr()->isGKSpatialC_fullyPacked())!(cwo->getXDescriptorPtr()->isCSpatialN_fullyPacked() && cwo->getDyDescriptorPtr()->isCSpatialN_fullyPacked() && cwo->getDwDescriptorPtr()->isKSpatialC_fullyPacked())!is_pointwise_tensor_8bit_aligned!is_pointwise_bool_tensor_minimum_8_elements_per_accessmode != CUDNN_GENSTATS_SUM_SQSUMFor BN stats the max cta_tile_n can be 64 due to epilogue smem limit (16 KiB)Hopper doesn't support signal yet900 <= this->getDeviceProp()->deviceVersignal_op->getFlagDesc()->getDimA()[idx] != 1Hopper doesn't support concat yet((concat_operation->getAxis() != 1) && 900 <= this->getDeviceProp()->deviceVer)(concat_operation->getAxis() != 1) && (concat_operation->getAxis() != 2) && (concat_operation->getAxis() != 3)rtk()->kernelParams.generate_struct_buffer_recursive()mmo->is_FP8() && cudnn::ops::isForwardCompatEnabled(this->getDeviceProp()->deviceVer)Batched GEMM and Split-K cannot be enabled at the same timeproblem_B > 1 && splitk_slices_knob > 1!(mmo_datatype == CUDNN_DATA_FLOAT || mmo_datatype == CUDNN_DATA_FAST_FLOAT_FOR_FP8 || mmo_datatype == CUDNN_DATA_HALF || mmo_datatype == CUDNN_DATA_INT32)mmo->getIrregularStrideBatchCount() != 1mmo->getCDesc()->getStrideA()[1] < mmo->getCDesc()->getStrideA()[2]aProducerNode != nullptr && this->getDeviceProp()->deviceVer < 800is_ctaTileK_supported_by_cutlass(deviceVer, kcfg.cta_tile.K, dataSizeInBits) == falseis_knob_supported_by_xmma(deviceVer, kcfg, dataSizeInBits) == false!((aLayout == "RowMajor") && (bLayout == "ColumnMajor") && (cLayout == "RowMajor"))Only patterns with two matmuls: Matmul(Matmul(M1, M2), M3) support m override!(is_hhh_matmul || is_hsh_matmul || is_hss_matmul || (is_sss_matmul && is_TN_N_or_TN_T))has_virtual_inputs && comp_is_floatis_mma_fusion_with_non_mma_op && is_hhh_matmulis_sss_matmul && reductionNodeCount > 0is_hss_matmul && reductionNodeCount > 0is_hsh_matmul && reductionNodeCount > 0is_sss_matmul && resampleNodeCount > 0is_hss_matmul && resampleNodeCount > 0is_hsh_matmul && resampleNodeCount > 0Only patterns with two matmuls: Matmul(Matmul(M1, M2), M3) support n overrideOnly patterns with two matmuls: Matmul(Matmul(M1, M2), M3) support k overrideget_matrix_layout(*port) != "RowMajor"tensor_desc->getDimA()[1] == 1!(tensor_desc->isNSpatialC_ordered_fullyPacked() || tensor_desc->isCNSpatial_ordered_fullyPacked() || tensor_desc->isCSpatialN_ordered_fullyPacked())pointwise_op->getAlpha1() != 1.0pointwise_op->getInPortCount() == 2 && pointwise_op->getAlpha2() != 1.0isInMainloop && this->getDeviceProp()->deviceVer < 800isInMainloop && (port->ioType == FUSION_IO_TYPE_OUT) && (port->isVirtual == false)port->getKernelType() == CUDNN_DTYPE_BF16 && this->getDeviceProp()->deviceVer < 800check_tensor_alignment_pointwise_op(port->tensor)check_cutlass_iterator_layout_support(port)cudnn::backend::is_binary_logical_operation(operation) && is_scalar_broadcast(pointwise_node->xPort.shapeInterp, pointwise_node->bPort.shapeInterp)(mathPrec != CUDNN_DATA_BOOLEAN)(inputDataType != CUDNN_DATA_INT32) && (inputDataType != CUDNN_DATA_INT8) && (inputDataType != CUDNN_DATA_BOOLEAN)(outputDataType != CUDNN_DATA_INT32) && (outputDataType != CUDNN_DATA_INT8) && (outputDataType != CUDNN_DATA_BOOLEAN)(pointwise_node->bPort.shapeInterp == SHAPE_INTERP_SCALAR && pointwise_op->getBDesc()->getDimA()[0] != 1) || (pointwise_node->bPort.shapeInterp != SHAPE_INTERP_SCALAR && pointwise_op->getXDesc()->getDimA()[0] != pointwise_op->getBDesc()->getDimA()[0])(pointwise_node->tPort.shapeInterp == SHAPE_INTERP_SCALAR && pointwise_op->getTDesc()->getDimA()[0] != 1) || (pointwise_node->tPort.shapeInterp != SHAPE_INTERP_SCALAR && pointwise_op->getXDesc()->getDimA()[0] != pointwise_op->getTDesc()->getDimA()[0])pointwise_node->numInPorts >= 2 && inputDataTypeX == CUDNN_DATA_FLOATpointwise_op->getXDesc()->getDimA()[2] != pointwise_op->getBDesc()->getStrideA()[0]pointwise_op->getXDesc()->getDimA()[1] != pointwise_op->getBDesc()->getStrideA()[0]Unsupported pointwise pattern in the graph. (operation != CUDNN_POINTWISE_RELU_BWD) || pointwise_op->getPwDesc()->getReluLowerClipSlope() != 0xmma backend doesn't support resample fwd!rfo->getXDesc()->isNSpatialC_ordered_fullyPacked()!rfo->getYDesc()->isNSpatialC_ordered_fullyPacked()x_data_type_string == "fort::uint1b_t" || x_data_type_string == "double"y_data_type_string == "fort::uint1b_t" || y_data_type_string == "double"x_data_type_string == "fort::bfloat16_t"y_data_type_string == "fort::bfloat16_t"rfo->getXDesc()->getDimA()[i] != rfo->getYDesc()->getDimA()[i](2 * rfo->getXDesc()->getDimA()[i]) != rfo->getYDesc()->getDimA()[i]rfo->getResampleDesc()->getPaddingMode() != CUDNN_ZERO_PADrfo->getResampleDesc()->getPaddingMode() != CUDNN_NEG_INF_PADUnsupported resample mode in the graph. Unknown resample mode in the graph. !dyDesc->isNSpatialC_ordered_fullyPacked()!dxDesc->isNSpatialC_ordered_fullyPacked()resample_backward_operation->getAlpha() != 1.0resample_backward_operation->getBeta() != 0.0!idxDesc->isNSpatialC_ordered_fullyPacked()dyDesc->getDimA()[i] != idxDesc->getDimA()[i]dx_data_type_string == "fort::uint1b_t" || dx_data_type_string == "double"dy_data_type_string == "fort::uint1b_t" || dy_data_type_string == "double"dx_data_type_string == "fort::bfloat16_t"dy_data_type_string == "fort::bfloat16_t"resample_backward_operation->getResampleDesc()->getPaddingMode() != CUDNN_ZERO_PADresample_backward_operation->getResampleDesc()->getPaddingMode() != CUDNN_NEG_INF_PADRow-major and column-major cannot be both present in the epilogueepilogHasRowMajorOutput && epilogHasColMajorOutputby-value entry in the variant pack requires a pointer to the source, which cannot be a nullptrform_kernel_args((uint8_t*)kernelParamFlatBuf.data(), var, arg_ptrs)rtk()->hexdump_kernel_params(kernelParamFlatBuf)cuda_commands.queueMemsetAsync(ptr, (it->second).value, (it->second).size)simple_fill(ptr, (it->second).value, (it->second).size / sizeof(float), cuda_commands)cuda_commands.queueMemsetAsync(var.getWorkspacePtr(), 0, reserved_workspace)rtk()->queueLaunchKernel( deviceId, gdim, bdim, clusterDim, shared_mem_size, arg_ptrs.data(), fortBackend.is_xmma_sm9x(), cuda_commands)rtk()->getNvrtcVersion() < 11000--define-macro=JETFIRE_ENABLED=1-DCUDA_PTX_KNOB_MAX_CUMU_WAIT_SINCE_END_GROUP_ENABLED=1-DCUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED=1-DCUDA_PTX_KNOB_DISABLE_IMPLICIT_MEM_DESC_ENABLED=1-DCUDA_PTX_KNOB_SCHED_READ_SB_BASE_LATENCY_ENABLED=1-DCUDA_PTX_KNOB_DYNAMIC_SMEM_SIZE_ENABLED=1-DCUDA_PTX_KNOB_MEMBAR_FLOW_CONTROL_ENABLED=1-DUSE_CUDA_KERNEL_LAUNCH_EXTENSION=1-DCUDA_CLUSTER_SCHEDULING_POLICY_SUPPORTED=1-DCUDA_PROGRAMMATIC_GRID_SYNC_SUPPORTED=1-DCUDA_PTX_FP8_SATFINITE_ENABLED=1-DCUDA_PTX_MMA_SPARSE_BF16_ENABLED=1-DXMMA_L2_SECTOR_PROMOTION_SUPPORTED=1-DXMMA_PTX_MMA_SPARSE_ENABLED=1-DXMMA_PTX_LDG_STG_NO_ALLOCATION_SUPPORT_ENABLED=1-DXMMA_PTX_CVT_RN_FLOAT_2_TF32_SUPPORT_ENABLED=1-DXMMA_PTX_BARRIER_CLUSTER_RELAXED_ALIGNED_SUPPORT_ENABLED=1-DXMMA_INTERNAL_NVVM_ENABLED=1-DCUDA_PTX_KNOB_COPY_PROP_NO_WRITE_NON_RR_ENABLED=1-DCUDA_PTX_KNOB_DMMA_ANTI_DEPENDENCE_ENABLED=1-DCUDA_PTX_KNOB_COLD_BLOCK_ENABLED=1-DXMMA_RESIDUAL_BIAS_ENABLED=1--define-macro=CUTLASS_ENABLE_TENSOR_CORE_MMA=1--define-macro=CUTLASS_ENABLE_INTERNAL_NVVM=1--define-macro=CUDA_USE_STATIC_CUDA_RUNTIME--define-macro=CUTLASS_NVCC_EMBED_CUBIN--define-macro=CUTLASS_NVCC_EMBED_PTX--define-macro=CUTLASS_NVRTC_ENABLE--define-macro=CUTLASS_ENABLE_COMPILER_KNOBS=1-DONLY_FOR_CUTLASS_CONCATENATED_HEADERset_runtime_compilation_flags()rtk()->compile(compilerFlags, this->useNvrtcSassPath, this->useNvrtcHiddenAPI)detect_g_dim(graph, has_gdim_)tag_batchnorm_mainloop_fusion(graph, is_fprop_mainloop_fusion, is_wgrad_mainloop_fusion, mainloopScaleNode, mainloopBiasNode, mainloopFusionInputPort)tag_concat_mainloop_fusion(graph, is_concat_mainloop_fusion)tag_conv_concat_fusion(graph, is_conv_concat_fusion)tag_shape_interpretation(graph)transpose_matmul_if_necessary(graph)remove_useless_pointwise_node(graph)Unknown signal mode in the graph. globalStoreOp->bits_per_access == fort::bits_per_access::BITS_PER_ACCESS_INVALIDvolatile unsigned int* __restrict__add_tensor_to_fort_op(port, globalLoadOp, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)rtk()->kernelParams.get_param_idx(fortTensorDescName) != -1globalLoadOp->bits_per_access == fort::bits_per_access::BITS_PER_ACCESS_INVALIDcutlass::conv::Conv2dProblemSizeResample backward mode is not yet supported.Unknown Resample backward mode.nullptr != bProducerNode && fortBackend.is_xmma_sm9x()nullptr != aProducerNode && fortBackend.is_xmma_sm9x()filter_R * filter_S * filter_T > 32fort::strided_dgrad_indexed_params_xmma0 != fort::calculate_grid_dimensions_hopper(op_params, gdim, kcfg, this->getDeviceProp())status != CUDNN_STATUS_SUCCESSgenerate_conv_matmul_ldgsts_fort(mma_loop_op_, mma_op_, mma_operator, compute_type, gemmAPort, gemmBPort)generate_conv_matmul_ldg_sts_fort(mma_loop_op_, mma_op_, compute_type, gemmAPort, gemmBPort)generate_conv_matmul_ldgsts_fort( mma_loop_op_, mma_op_, fort_mma_operator::GEMM, compute_type, matmul_node->aPort, matmul_node->bPort)generate_conv_matmul_ldg_sts_fort( mma_loop_op_, mma_op_, compute_type, matmul_node->aPort, matmul_node->bPort)No mainloop fusion in this case. gemmA_producer_node != nullptr && !is_fprop_mainloop_fusion && !is_wgrad_mainloop_fusion && !is_concat_mainloop_fusiongemmB_producer_node != nullptr && !is_fprop_mainloop_fusion && !is_wgrad_mainloop_fusion && !is_concat_mainloop_fusionScale/bias conv mainloop fusion requires 128-bit alignment on channel. activation_C * input_data_size_in_bits % 128 != 0Scale/bias wgrad mainloop fusion requires 128-bit alignment on channel. cutlass::conv::Conv3dProblemSizekcfg.lookup_conv2d_fprop_activation_iter_invariants( activation_iter_invariants, OpcodeClass::kTensorOp, input_data_size_in_bits)cutlass::conv::threadblock::Conv3dFpropActivationIteratorOptimizedParamscutlass::conv::threadblock::Conv2dFpropActivationIteratorOptimizedParamskcfg.lookup_conv2d_fprop_filter_invariants( filter_iter_invariants, OpcodeClass::kTensorOp, input_data_size_in_bits)cutlass::conv::threadblock::Conv3dFpropFilterIteratorOptimizedParamscutlass::conv::threadblock::Conv2dFpropFilterIteratorOptimizedParamscutlass::conv::threadblock::PredicatedScaleBiasVectorAccessIteratorParamsThis engine currently does not support strided dgrad fusion on Turingkcfg.lookup_conv2d_dgrad_output_gradient_invariants( activation_iter_invariants, OpcodeClass::kTensorOp, input_data_size_in_bits)cutlass::conv::threadblock::Conv3dDgradOutputGradientIteratorOptimizedParamscutlass::conv::threadblock::Conv2dDgradOutputGradientIteratorOptimizedParamscutlass::conv::threadblock::Conv2dStridedDgradOutputGradientIteratorOptimizedParamskcfg.lookup_conv2d_dgrad_filter_invariants( filter_iter_invariants, OpcodeClass::kTensorOp, input_data_size_in_bits)cutlass::conv::threadblock::Conv3dDgradFilterIteratorOptimizedParamscutlass::conv::threadblock::Conv2dDgradFilterIteratorOptimizedParamscutlass::conv::threadblock::Conv2dStridedDgradFilterIteratorOptimizedParamskcfg.lookup_conv2d_wgrad_output_gradient_invariants( output_gradient_invariants, OpcodeClass::kTensorOp, input_data_size_in_bits)cutlass::conv::threadblock::Conv3dWgradOutputGradientIteratorOptimizedParamscutlass::conv::threadblock::Conv2dWgradOutputGradientIteratorOptimizedParamscutlass::conv::threadblock::Conv3dWgradActivationIteratorOptimizedParamscutlass::conv::threadblock::Conv2dWgradActivationIteratorOptimizedParamsgenerate_conv_dgrad_wgrad_common_ops_fort_xmma(node, fort_mma_operator::FPROP, gemmAPort, gemmBPort, convDesc, gemmDPort, activation_dim, filter_dim, output_dim)generate_conv_dgrad_wgrad_common_ops_fort_cutlass(node, fort_mma_operator::FPROP, gemmAPort, gemmBPort, convDesc, gemmDPort, activation_dim, filter_dim, output_dim)generate_conv_dgrad_wgrad_common_ops_fort_xmma( node, mma_operator, gemmAPort, gemmBPort, convDesc, gemmDPort, activation_dim, filter_dim, output_dim)generate_conv_dgrad_wgrad_common_ops_fort_cutlass( node, mma_operator, gemmAPort, gemmBPort, convDesc, gemmDPort, activation_dim, filter_dim, output_dim)generate_conv_dgrad_wgrad_common_ops_fort_xmma(node, fort_mma_operator::WGRAD, gemmAPort, gemmBPort, convDesc, gemmDPort, activation_dim, filter_dim, output_dim)generate_conv_dgrad_wgrad_common_ops_fort_cutlass(node, fort_mma_operator::WGRAD, gemmAPort, gemmBPort, convDesc, gemmDPort, activation_dim, filter_dim, output_dim)Unsupported reduction mode in the graph. Unknown reduction mode in the graph. fortBackend.is_xmma_sm9x() && is_strided_dgrad_fusion && !is_scalar_broadcast(pointwise_node->xPort.shapeInterp, pointwise_node->bPort.shapeInterp)generate_concat_ops_fort(node)generate_matmul_ops_fort(node)generate_pointwise_ops_fort(node)generate_batch_norm_stats_ops_fort(node)generate_reduction_ops_fort(node)generate_resample_fwd_ops_fort(node)generate_resample_bwd_ops_fort(node)generate_signal_ops_fort(node)generate_output_loop_ops_fort()generate_mma_pipeline_op_fort()generate_node_ops_fort(node_ptr)_fort_depthwise_deconv_kernel0cudnnRuntimeKernelGenerationInternalkernelName: type=string; val=%s;Process=%llu; Thread=%llu; GPU=NULL; Handle=NULL; StreamId=NULLrtk()->kernelParams.init_size_alignment_recursive()Kernel request for shared memory is exceeding the shared memory in the GPUrequested_smem_exceed_arch_limit(this->getDeviceProp(), this->shared_mem_size)node->getConsumerNodes().size() != 0Reduction operation can only exist in the epilogue.reduction_node->partitionType != GRAPH_PARTITION_EPILOGFor Col reduction the max cta_tile_n can be 128 due to epilogue smem limit (16 KiB)Runtime fusion engine only supports full reduction to 1Unknown reduction op in the graph. !(yType == CUDNN_DATA_FLOAT && mathPrec == CUDNN_DATA_FLOAT)Unsupported reduction op in the graph. !(reduction_op->isColumnReduction(currMmaOpType) || reduction_op->isRowReduction(currMmaOpType) || reduction_op->isAllReduction())check_concat_support_fort(node)check_matmul_support_fort(node)check_pointwise_support_fort(node)check_dgrad_support_fort(node)check_wgrad_support_fort(node)check_batch_norm_stats_support_fort(node)check_reduction_support_fort(node)check_resample_fwd_support_fort(node)check_resample_bwd_support_fort(node)check_signal_support_fort(node)Unsupported node in the graph. is_mixed_precision_gemm(graph)Resample is only supported since Turing architecturethis->getDeviceProp()->deviceVer < 750check_node_support_fort(node_ptr)getHeurFusionLeafBestFallbackCfgs(getEngineName(), &heur_results)the chosen engine does not support this graph pattern!knobs.getKnob(CUDNN_KNOB_TYPE_KERNEL_CFG).isValidChoice(kernel_config_knob)!knobs.getKnob(CUDNN_KNOB_TYPE_SPLIT_K_SLC).isValidChoice(splitk_slices_knob)splitk_slices_knob > 1 && is_pointwise_fusionkernel_config_knob >= sm9x_xmma_kernel_configs.size()kernel_config_knob >= sm8x_xmma_kernel_configs.size()kernel_config_knob >= sm7x_xmma_kernel_configs.size()kernel_config_knob >= sm8x_cutlass_kernel_configs.size()kernel_config_knob >= sm7x_cutlass_kernel_configs.size()This engine currently does not support dynamic shapethis->_nbDims != 3this->_vect_count != 1vector::reservekernelPtr == nullptrcuDeviceGet%s returned error %s (%d)CUDA_SUCCESS != resultcuKernelSetAttributecuda_commands.queueLaunchKernel(kernelPtr, gridDim, blockDim, smemBytes, kernelParams, std::move(attrs))basic_string::append%ldtensor_desc_NVRTC_SUCCESS != compiler.nvrtcDestroyProgram(&prog)NVRTC_SUCCESS != compiler.nvrtcGetPTXSize(prog, &ptxSize)NVRTC_SUCCESS != compiler.nvrtcGetPTX(prog, ptx)Encountered runtime kernel compilation failurecompilationResult != NVRTC_SUCCESSNVRTC_SUCCESS != compiler.nvrtcGetCUBINSize(prog, &cubinSize)NVRTC_SUCCESS != compiler.nvrtcGetCUBIN(prog, cubin)nullptr == ptx || 0 == ptxSizeCUDA_SUCCESS != compiler.cuLinkDestroy(linker).cuCompilation errorptxSize <= 0ptx == nullptrcubinSize <= 0cubin == nullptrInvalid PTXcuLinkCreatecuLinkAddDatacuLinkCompleteEncountered empty cubinMemory allocation failurecuLinkDestroybasic_string::_M_replaceN5cudnn6fusion10ConcatNodeEN5cudnn6fusion8ConvNodeEN5cudnn6fusion9WgradNodeEN5cudnn6fusion9DgradNodeEN5cudnn6fusion10MatmulNodeEN5cudnn6fusion20BlockScaleMatmulNodeEN5cudnn6fusion19ResampleForwardNodeEN5cudnn6fusion24BlockScaleDequantizeNodeEN5cudnn6fusion23FortRuntimeFusionEngineESt23_Sp_counted_ptr_inplaceIKN5cudnn7backend12OperationSetESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIKN5cudnn7backend14DevicePropertyESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE||||   -0H @@ @@@@@`4pP@8hH`?@@@wgrad is not supportedmatmul is not supportedisInMainloopis_mma_fusion_with_non_mma_oprfo->hasIdxDesc()!is_window_dim_integer!is_stride_integer!x_port.connections.empty()!w_port.connections.empty()is_3d_conv!dy_port.connections.empty()pooling_forward_paramsPoolingFwParamsnullptr != bProducerNodenullptr != aProducerNodereduction is not supportedinA[i] > std::numeric_limits::max()checked_int64_to_int32(padding_lower, convDesc->getPadLowerA())checked_int64_to_int32(padding_upper, convDesc->getPadUpperA())checked_int64_to_int32(stride, convDesc->getStrideA())checked_int64_to_int32(dilation, convDesc->getDilationA())batch norm stats is not supportedis_pointwise_fusion && node->opType != CUDNN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTORoperation == CUDNN_POINTWISE_GEN_INDEXpointwise_node->xPort.connections.empty() && pointwise_node->dyPort.connections.empty()mode == CUDNN_RESAMPLE_BILINEAR || mode == CUDNN_RESAMPLE_NEARESTrfo->getResampleDesc()->getNbSpatialDims() != 2x_data_type_string != y_data_type_stringthis backend doesn't support resample fwdcreate_operation_and_tensor_maps(opSet, uid_to_operation, uid_to_tensor)rtk()->queueLaunchKernel( deviceId, gdim, bdim, clusterDim, shared_mem_size, arg_ptrs.data(), false, cuda_commands)Mainloop fusion on X tensor is not supported. Mainloop fusion on W tensor is not supported. cfo->getXDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP16 && cfo->getXDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP32cfo->getWDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP16 && cfo->getWDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP32cfo->getYDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP16 && cfo->getYDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP32Fort FFMA path requires an output tensorcfo->getYDescriptorPtr()->getIsVirtual() && !this->is_mma_fusion_with_non_mma_opFort FFMA path does not support 3D convMainloop fusion on dY tensor is not supported. cdo->getDyDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP16 && cdo->getDyDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP32cdo->getWDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP16 && cdo->getWDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP32cdo->getDxDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP16 && cdo->getDxDescriptorPtr()->getDataType().kern_type != CUDNN_DTYPE_FP32cdo->getDxDescriptorPtr()->getIsVirtual() && !this->is_mma_fusion_with_non_mma_opFort FFMA path does not support 3D dgradTensor size exceeds backend limit.port.tensor->getMaxOffset() > static_cast(std::numeric_limits::max())Pvvuuuv vPv0v@vuuuuuuuvw ww,wwwwww 65535 || CTAs_z > 65535update_grid_blackwell(this_, CTAs_x, CTAs_y, CTAs_z, launchParams)update_grid_hopper(this_, CTAs_x, CTAs_y, CTAs_z, launchParams)update_grid_prehopper(this_, CTAs_x, CTAs_y, CTAs_z, launchParams)setBaseConvDescriptor( convDesc, is_3d, tensor_X, tensor_W, tensor_Y, paddingLower, paddingUpper, convStrides, convDilations)static_cast(convDesc.O) * static_cast(convDesc.P) * static_cast(convDesc.Q) >= fast_div_mode_limitstatic_cast(convDesc.P) * static_cast(convDesc.Q) * static_cast(padded_N) >= fast_div_mode_limitstatic_cast(tiles_c) * static_cast(convDesc.S) * static_cast(convDesc.R) >= fast_div_mode_limitsetWgradConvDescriptor(*conv_desc, is_3d, tiles_c, activation_dim, filter_dim, output_dim, padding_lower, padding_upper, stride, dilation, kcfg.cta_tile.K)checked_int64_to_int32(filter_dim, cfo->getWDescriptorPtr()->getDimA())tma_box_base_corner_dhw[0] < -15 || tma_box_base_corner_dhw[0] > 15 || tma_box_base_corner_dhw[1] < -15 || tma_box_base_corner_dhw[1] > 15 || tma_box_base_corner_dhw[2] < -15 || tma_box_base_corner_dhw[2] > 15 || tma_box_far_corner_dhw[0] < -15 || tma_box_far_corner_dhw[0] > 15 || tma_box_far_corner_dhw[1] < -15 || tma_box_far_corner_dhw[1] > 15 || tma_box_far_corner_dhw[2] < -15 || tma_box_far_corner_dhw[2] > 15Only 2D or 3D convolutions are supported.static_cast(convDesc.D) * static_cast(convDesc.H) * static_cast(convDesc.W) >= fast_div_mode_limitsetDgradConvDescriptor( *conv_desc, is_3d, activation_dim, filter_dim, output_dim, padding_lower, padding_upper, stride, dilation)static_cast(convDesc.T) * static_cast(convDesc.R) * static_cast(convDesc.S) >= fast_div_mode_limitstatic_cast(convDesc.R) * static_cast(convDesc.S) * static_cast(convDesc.C) >= fast_div_mode_limitsetFpropConvDescriptor( *conv_desc, is_3d, activation_dim, filter_dim, output_dim, padding_lower, padding_upper, stride, dilation)get_mainloop_steps_fprop(this_, conv_desc, &mainloop_steps)shared_mem_size > usable_smem_sizemax_stages < 2 && !mma_loop_op_->is_mainloop_fusion_on_afortNativeRuntimeFusionEngine::check_shared_memory_size_sm80( kcfg, mma_pipeline_op_->smem_mainloop_a, mma_pipeline_op_->smem_mainloop_b, usable_smem_size, shared_mem_size, mma_pipeline_op_->stages, mma_pipeline_op_->mma_operator == fort_mma_operator::FPROP)Epilogue tensors must be row major or N(D)HWC layout.(layout != "RowMajor" && layout != "TensorNHWC" && layout != "TensorNDHWC")!(sumType == CUDNN_DATA_FLOAT && sqSumType == CUDNN_DATA_FLOAT)Genstats should produce full reduction to dim = 1 to sumTensorGenstats should produce full reduction to dim = 1 to sqSumTensorcheck_output_layout_support(&(genstats_node->xPort))check_output_layout_support(&(genstats_node->sumPort))check_output_layout_support(&(genstats_node->sqSumPort))Genstats node must be in epilogueMulti-GEMM does not support mainloop fusionisInMainloop && is_multiple_gemms_acc_fusionoperation != reinterpret_cast(CUDNN_POINTWISE_SCALE_BIAS_RELU_VAL)!check_if_operation_support_int_math(operation)cudnn::backend::is_logical_operation(operation)!cudnn::backend::is_logical_operation(operation)check_pointwise_compute_type_support(pointwise_op)pointwise_op->getXDesc()->getDataType() != pointwise_op->getPwDesc()->getMathPrec() || pointwise_op->getYDesc()->getDataType() != pointwise_op->getPwDesc()->getMathPrec()fort::get_bits_per_access(bpa) % 8 != 0check_output_layout_support(port)need_transpose(pointwise_node) && pointwise_node->yPort.tensor->isCSpatialN_fullyPacked()CUDNN_POINTWISE_GEN_INDEX == operationset_2xacc(convDesc->getDataType(), mma_pipeline_op_->is_2xacc)generate_conv_desc_fprop(this, node_ptr, &conv_desc)generate_conv_desc_dgrad(this, node_ptr, &conv_desc)generate_conv_desc_wgrad(this, node_ptr, &conv_desc)tensor->getMaxOffset() * get_elem_size_in_bits(tensor->getDataType().kern_type) / 8 > static_cast(std::numeric_limits::max())generate_matrix_descriptor(this, nullptr, tensor, &matrix_desc)generate_fort_tensor_descriptor(this, nullptr, tensor, &tensor_desc)-do-base-address-strength-reduce=0-alias-set-saturation-threshold=0rtk()->compile(compilerFlags, useNvrtcSassPath, true )receive_op_->target == fort_device::SM80 && kcfg.stages == 1Mainloop fusion is not supported. receive_op_->target == fort_device::SM120dims_a[i] != 1 && dims_a[i] != dims_c[i]dims_b[i] != 1 && dims_b[i] != dims_c[i]!(a_layout == "RowMajor" || a_layout == "ColumnMajor")!(b_layout == "RowMajor" || b_layout == "ColumnMajor")!(c_layout == "RowMajor" || c_layout == "ColumnMajor")fort::get_bits_per_access(bpa_a) % 8 != 0fort::get_bits_per_access(bpa_b) % 8 != 0fort::get_bits_per_access(bpa_a) % 32 != 0fort::get_bits_per_access(bpa_b) % 32 != 0fort::get_bits_per_access(bpa_a) % 128 != 0fort::get_bits_per_access(bpa_b) % 128 != 0fort::get_bits_per_access(bpa_c) % 8 != 0Multi-GEMM is only supported on Hopperreceive_op_->target != fort_device::SM90!is_input_type_half && (a_layout != "RowMajor" || b_layout != "ColumnMajor")Matmul split-K is not supported on this architecturenum_splitk_slices > 1 && (receive_op_->target == fort_device::SM100 || receive_op_->target == fort_device::SM120)Block scale matmul is not supported on this architecturereceive_op_->target == fort_device::SM80 || receive_op_->target == fort_device::SM90Multi-GEMM does not support block scale matmulMainloop fusion is not supported in block scale matmul. block_scale_matmul_op->getIrregularStrideBatchCount() != 1dims_a[i] != dims_a_scale[i] || dims_b[i] != dims_b_scale[i]kcfg.cta_tile.M % 128 != 0 || kcfg.cta_tile.N % 128 != 0kcfg.cta_tile.K % (4 * block_size) != 0!(a_scale_layout == "RowMajor" || a_scale_layout == "ColumnMajor")!(b_scale_layout == "RowMajor" || b_scale_layout == "ColumnMajor")get_elem_size_in_bits(a_type) < 8 && (a_layout != "RowMajor" || b_layout != "ColumnMajor")a_scale_layout != "RowMajor" || b_scale_layout != "ColumnMajor"fort::get_bits_per_access(bpa_c) % 128 != 0Multi-GEMM does not support convolutioncfo->getXDescriptorPtr()->getDimA()[1] % group_count != 0cfo->getWDescriptorPtr()->getDimA()[0] % group_count != 0cfo->getWDescriptorPtr()->getDimA()[0] != cfo->getYDescriptorPtr()->getDimA()[1]!(x_layout == "TensorNHWC" || x_layout == "TensorCHWN" || x_layout == "TensorNDHWC" || x_layout == "TensorCDHWN")!(w_layout == "TensorNHWC" || w_layout == "TensorCHWN" || w_layout == "TensorNDHWC" || w_layout == "TensorCDHWN")!(y_layout == "TensorNHWC" || y_layout == "TensorCHWN" || y_layout == "TensorNDHWC" || y_layout == "TensorCDHWN")leading_dim_in_bits_in % 8 != 0leading_dim_in_bits_in % 32 != 0leading_dim_in_bits_in % 128 != 0leading_dim_in_bits_out % 128 != 0leading_dim_in_bits_out % 8 != 0Fprop split-K is not supported on this architecturenum_splitk_slices > 1 && receive_op_->target == fort_device::SM100receive_op_->target == fort_device::SM80 || receive_op_->target == fort_device::SM120cdo->getDxDescriptorPtr()->getDimA()[1] % group_count != 0cdo->getWDescriptorPtr()->getDimA()[0] % group_count != 0cdo->getWDescriptorPtr()->getDimA()[0] != cdo->getDyDescriptorPtr()->getDimA()[1]!(dy_layout == "TensorNHWC" || dy_layout == "TensorCHWN" || dy_layout == "TensorNDHWC" || dy_layout == "TensorCDHWN")!(dx_layout == "TensorNHWC" || dx_layout == "TensorCHWN" || dx_layout == "TensorNDHWC" || dx_layout == "TensorCDHWN")leading_dim_in_bits_dy % 128 != 0leading_dim_in_bits_w % 128 != 0leading_dim_in_bits_dx % 128 != 0leading_dim_in_bits_dx % 8 != 0Dgrad split-K is not supported on this architecturecwo->getXDescriptorPtr()->getDimA()[1] % group_count != 0cwo->getDwDescriptorPtr()->getDimA()[0] % group_count != 0cwo->getDwDescriptorPtr()->getDimA()[0] != cwo->getDyDescriptorPtr()->getDimA()[1]!(dw_layout == "TensorNHWC" || dw_layout == "TensorCHWN" || dw_layout == "TensorNDHWC" || dw_layout == "TensorCDHWN")leading_dim_in_bits_x % 128 != 0leading_dim_in_bits_dw % 128 != 0leading_dim_in_bits_dw % 8 != 0Only 8-bit scaling factor data type is supported.__grid_constant__ const cudaTmaDescCTAs_x > 65535 || CTAs_z * num_splitk_slices > 65535leading_stride * elem_size_bits % 128 != 0bits_per_leading_dim_tile % 128 != 0swizzle_base != SWIZZLE_BASE_16B && bits_per_leading_dim_tile % 1024 != 0setup_grid_blackwell(CTAs_x, CTAs_y, CTAs_z)setup_persistent_grid(CTAs_x, CTAs_y, CTAs_z)setup_grid(CTAs_x, CTAs_y, CTAs_z)add_tensor_desc_to_fort_op(port, stg_op)add_matmul_tma_desc_to_fort_op(port, stg_op, fort::methods::MMA_C, false)add_fprop_tma_desc_to_fort_op(port, stg_op, fort::methods::MMA_C, false)add_dgrad_tma_desc_to_fort_op(port, stg_op, fort::methods::MMA_C, false)add_wgrad_tma_desc_to_fort_op(port, stg_op, fort::methods::MMA_C, false)add_tensor_ptr_to_fort_op(port, ldg_op, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)add_tensor_desc_to_fort_op(port, ldg_op)generate_ldg_op_fort(genstats_node->xPort, fort_reduction_op, fort::pins::REDUCE_GENERAL_FRAGMENT, shape_to_fort_load_store_method(genstats_node->xPort), output_loop_op_)generate_stg_op_fort(genstats_node->sumPort, makeOp(output_loop_op_), fort::pins::REDUCE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_reduce_method(genstats_node->sumPort))generate_ldg_op_fort(genstats_node->xPort, fort_pointwise_op, fort::pins::POINTWISE_FWD_X_FRAGMENT, shape_to_fort_load_store_method(genstats_node->xPort), output_loop_op_)generate_ldg_op_fort(genstats_node->xPort, fort_pointwise_op, fort::pins::POINTWISE_B_FRAGMENT, shape_to_fort_load_store_method(genstats_node->xPort), output_loop_op_)generate_stg_op_fort(genstats_node->sqSumPort, makeOp(output_loop_op_), fort::pins::REDUCE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_reduce_method(genstats_node->sqSumPort))Grouped convolution cannot have reduction operation. generate_ldg_op_fort(reducton_node->xPort, fort_reduction_op, fort::pins::REDUCE_GENERAL_FRAGMENT, shape_to_fort_load_store_method(reducton_node->xPort), output_loop_op_)fort::methods::NOT_SET == fort_reduction_op->methodfort::methods::INSTANCE_REDUCE == fort_reduction_op->methodgenerate_stg_op_fort(reducton_node->yPort, makeOp(output_loop_op_), fort::pins::REDUCE_OUTPUT_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_reduce_method(reducton_node->yPort))add_fprop_tma_desc_to_fort_op(port, ldgsts_op, method, direct_mma_input)add_dgrad_tma_desc_to_fort_op(port, ldgsts_op, method, direct_mma_input)add_wgrad_tma_desc_to_fort_op(port, ldgsts_op, method, direct_mma_input)add_block_scale_matmul_sf_tma_desc_to_fort_op(port, ldgsts_op, method, direct_mma_input)add_matmul_tma_desc_to_fort_op(port, ldgsts_op, method, direct_mma_input)64 * ldgsts_unit_load_size < ldgsts_tile_sizeadd_tensor_desc_to_fort_op(port, ldgsts_op)add_tensor_ptr_to_fort_op(port, ldgsts_op, fort::pins::GLOBAL_LOAD_SHARED_STORE_GENERAL_TENSOR)generate_lds_op_fort(port, {ldgsts_op, fort::pins::GLOBAL_LOAD_SHARED_STORE_OUTPUT_FRAGMENT}, consumer_op, output_pin_name, method, mma_loop_op_)!((receive_op_->target == fort_device::SM80 || receive_op_->target == fort_device::SM90 || receive_op_->target == fort_device::SM100) && mma_pipeline_op_->mma_operator == fort_mma_operator::GEMM)pointwise_node->numInPorts == 1 && is_explicit_broadcast!(receive_op_->target == fort_device::SM80 || receive_op_->target == fort_device::SM90)generate_ldgsts_op_fort(in_ports[idx].first, fort_pointwise_op, in_ports[idx].second, method, fort::cache_policy::USE_CACHE, true )fort::methods::ROW_BROADCAST == method && (fort_mma_operator::FPROP == mma_pipeline_op_->mma_operator || fort_mma_operator::DGRAD == mma_pipeline_op_->mma_operator)generate_ldg_op_fort( in_ports[idx].first, fort_pointwise_op, in_ports[idx].second, method, parent_op)generate_ldg_op_fort( p.first, fort_pointwise_op, p.second, shape_to_fort_load_store_method(p.first), parent_op)generate_stg_op_fort(*out_port, makeOp(output_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_load_store_method(*out_port))generate_mma_op_fort(fort_mma_op, port_a, port_b, port_c, compute_type)generate_ldgsts_op_fort(port_a, fort_mma_op, fort::pins::MMA_A_FRAGMENT, fort::methods::MMA_A, fort::cache_policy::USE_CACHE, true, true)generate_ldgsts_op_fort(port_b, fort_mma_op, fort::pins::MMA_B_FRAGMENT, fort::methods::MMA_B, fort::cache_policy::USE_CACHE, true, true)generate_ldgsts_op_fort(port_a, fort_mma_op, fort::pins::MMA_A_FRAGMENT, fort::methods::MMA_A, fort::cache_policy::USE_CACHE, false, true)generate_ldgsts_op_fort(port_b, fort_mma_op, fort::pins::MMA_B_FRAGMENT, fort::methods::MMA_B, fort::cache_policy::USE_CACHE, false, true)generate_ldg_op_fort( port_a, fort_mma_op, fort::pins::MMA_A_FRAGMENT, fort::methods::MMA_A, mma_loop_op_)generate_ldg_op_fort( port_b, fort_mma_op, fort::pins::MMA_B_FRAGMENT, fort::methods::MMA_B, mma_loop_op_)generate_output_loop_swizzle_ops_fort(port_c, fort_mma_op)generate_stg_op_fort(port_c, makeOp(output_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_load_store_method(port_c))fort_mma_operator::GEMM != mma_pipeline_op_->get_mma_operator()set_2xacc(mmo->getMatmulDesc()->getDataType(), mma_pipeline_op_->is_2xacc)get_gemm_M_matmul(this, node, &gemm_M)get_gemm_N_matmul(this, node, &gemm_N)get_gemm_K_matmul(this, node, &gemm_K)get_mainloop_steps_matmul(this, node, &mainloop_steps)mainloop_steps < num_splitk_slicessetup_mma_loop_ops_fort(gemmAPort, gemmBPort, gemmDPort, compute_type)setup_implicit_gemm_grid(gemm_M, gemm_N, gemm_B, compute_type)get_implicit_gemm_M_fprop(this, conv_desc, &implicit_gemm_M)get_implicit_gemm_N_fprop(this, conv_desc, &implicit_gemm_N)get_mainloop_steps_fprop(this, conv_desc, &mainloop_steps)get_trs(this, conv_desc, &trs)get_tiles_c_fprop(this, conv_desc, &tiles_c)setup_implicit_gemm_grid(implicit_gemm_M, conv_desc->K, conv_desc->group_count, compute_type)get_tiles_c_dgrad(this, conv_desc, &tiles_c)get_implicit_gemm_M_dgrad(this, conv_desc, &implicit_gemm_M)get_implicit_gemm_N_dgrad(this, conv_desc, &implicit_gemm_N)get_mainloop_steps_dgrad(this, conv_desc, &mainloop_steps)setup_implicit_gemm_grid(implicit_gemm_M, conv_desc->C, conv_desc->group_count, compute_type)get_tiles_c_wgrad(this, conv_desc, &tiles_c)get_implicit_gemm_M_wgrad(this, conv_desc, &implicit_gemm_M)get_implicit_gemm_N_wgrad(this, conv_desc, &implicit_gemm_N)get_mainloop_steps_wgrad_ab_both_chwn(this, conv_desc, &mainloop_steps)get_mainloop_steps_wgrad(this, conv_desc, &mainloop_steps)setup_wgrad_implicit_gemm_grid(conv_desc->K, conv_desc->C, conv_desc->group_count, trs, compute_type)generate_ldgsts_op_fort(port_a, fort_mma_op, fort::pins::MMA_A_FRAGMENT, fort::methods::MMA_A, fort::cache_policy::USE_CACHE, lds_op_required, true)generate_ldgsts_op_fort(port_a_scale, fort_mma_op, fort::pins::MMA_A_SCALE_FRAGMENT, fort::methods::MMA_A_SCALE, fort::cache_policy::USE_CACHE, true, true)generate_ldgsts_op_fort(port_b, fort_mma_op, fort::pins::MMA_B_FRAGMENT, fort::methods::MMA_B, fort::cache_policy::USE_CACHE, lds_op_required, true)generate_ldgsts_op_fort(port_b_scale, fort_mma_op, fort::pins::MMA_B_SCALE_FRAGMENT, fort::methods::MMA_B_SCALE, fort::cache_policy::USE_CACHE, true, true)setup_block_scale_mma_loop_ops_fort(gemmAPort, gemmAScalePort, gemmBPort, gemmBScalePort, gemmDPort, compute_type, block_scale_matmul_op->getBlockSize())generate_block_scale_matmul_ops_fort(node)generate_genstats_ops_fort(node)generate_output_loop_op_fort(mma_pipeline_op_)cuda_commands.queueMemsetAsync(wsPtr_aligned, 0, workspace_size)finalizeTmaDesc(param.get_relocatable_pointer(kernelParamFlatBuf), var)form_kernel_args((uint8_t*)kernelParamFlatBuf.data(), var, arg_ptrs, cuda_commands)get_gemm_M_matmul(this_, node, &M)get_gemm_N_matmul(this_, node, &N)update_cta_xyz_matmul(this_, node, &CTAs_x, &CTAs_y, &CTAs_z)update_grid(this_, CTAs_x, CTAs_y, CTAs_z, launchParams)update_launch_params_matmul(this, node.get(), &launchParams)get_implicit_gemm_M_fprop(this_, conv_desc, &M)get_implicit_gemm_N_fprop(this_, conv_desc, &N)update_cta_xyz_fprop(this_, conv_desc, &CTAs_x, &CTAs_y, &CTAs_z)update_launch_params_fprop(this, conv_desc, &launchParams)get_implicit_gemm_M_dgrad(this_, conv_desc, &M)get_implicit_gemm_N_dgrad(this_, conv_desc, &N)update_cta_xyz_dgrad(this_, conv_desc, &CTAs_x, &CTAs_y, &CTAs_z)update_launch_params_dgrad(this, conv_desc, &launchParams)get_implicit_gemm_M_wgrad(this_, conv_desc, &M)get_implicit_gemm_N_wgrad(this_, conv_desc, &N)get_trs(this_, conv_desc, &TRS)update_cta_xyz_wgrad(this_, conv_desc, &CTAs_x, &CTAs_y, &CTAs_z)update_launch_params_wgrad(this, conv_desc, &launchParams)simple_call_native_reorder_block_scale_factor( cuda_commands, input_ptr, output_ptr, desc.gemm_b, desc.gemm_m, desc.gemm_n)rtk()->queueLaunchKernel( deviceId, gdim, bdim, clusterDim, shared_mem_size, arg_ptrs.data(), is_sm90, cuda_commands)Native runtime fusion engine only supports full reduction to 1check_block_scale_matmul_support_fort(node)check_genstats_support_fort(node)FP8 data types are not supported before Ada. this->getDeviceProp()->deviceVer < 890 && is_fp8(data_type)MXFP8/FP4 data types are not supported before Blackwell. this->getDeviceProp()->deviceVer < 1000 && (is_mxfp8(data_type) || is_fp4(data_type))FP8 data type not supported before Ada. QMMA kernels are only executable on specific architectures. !(hardware_support || emulation_support)Block scale QMMA/OMMA kernels are only executable on GB20X architectures. analyze_graph_type( graph, &(this->currMmaOpType), nullptr, &(this->is_pointwise_fusion), &(this->is_multiple_gemms_acc_fusion))convert_conv_dgrad_to_matmul_if_possible(graph)pattern_match_block_scale_matmul(graph)swap_matmul_ab_if_necessary(graph)remove_mainloop_fusion_inline_transpose(graph, is_multiple_mainloop_layout_detected)All non-virtual full tensors in either branch of the mainloop must have the same layoutis_multiple_mainloop_layout_detected && receive_op_->target == fort_device::SM100!knobs.getKnob(CUDNN_KNOB_TYPE_KERNEL_CFG).isValidChoice(tile_size_knob)FORT_NATIVE_12X engine is not forward compatiblecudnn::ops::isForwardCompatEnabled(this->getDeviceProp()->deviceVer)FORT_NATIVE_12X engine is only supported since Blackwell architecture!(1000 <= this->getDeviceProp()->deviceVer)FORT_NATIVE_12X engine is only supported with nvrtc 12.8 or laterrtk()->getNvrtcVersion() < 12080FORT_NATIVE_10X engine is not forward compatibleFORT_NATIVE_10X engine is only supported since Blackwell architecture!(1000 <= this->getDeviceProp()->deviceVer && this->getDeviceProp()->deviceVer < 1200)FORT_NATIVE_10X engine is only supported with nvrtc 12.8 or laterFORT_NATIVE_9X engine is not forward compatibleFORT_NATIVE_9X engine is only supported since Hopper architecture!(900 <= this->getDeviceProp()->deviceVer && this->getDeviceProp()->deviceVer < 1000)FORT_NATIVE_9X engine is only supported with nvrtc 12.0 or laterrtk()->getNvrtcVersion() < 12000FORT_NATIVE_8X engine is only supported since Ampere architecture!(800 <= this->getDeviceProp()->deviceVer)FORT_NATIVE_8X engine is only supported with nvrtc 12.0 or lateris_dynamic_shape_enabled && !support_dynamic_shape()opDesc->finalize_internal()tensor size exceeds limit.max_stages < 2smem_size % 1024 != 0max_stages < 1compute_shared_memory_size()dim_sum[i] != 1dim_sqsum[i] != 1convDescconst ConvDescriptor_tconst MatrixDescriptor_t--use_fast_math-Xnvvm-Xopt-disable-SCCPPass-full-inst-combine=0!is_input_compute_type_matchc_layout != "RowMajor"!is_TNT_layoutis_strided_conv!is_dy_T_layout!is_dx_T_layout!is_dw_T_layoutkcfg.cta_tile.N % 32 != 0tma_elem_size_bits != 8block_scale_factorlog2_group_colsCGAs_xCGAs_ynum_tilestiles_mn_divconst FastDivisor_ttiles_n_divr32* __restrict__void*group_count > 1kcfg.groups_m > 1This knob is not supportedactivatepointwise_calcglobal_loadnullptr == matmul_nodeSplit-k exceeds k-loopimplicit_gemm_Mimplicit_gemm_Nimplicit_gemm_Kmainloop_stepstiles_c < num_splitk_slicestiles_c_blockScaleMatMulgenerate_fprop_ops_fort(node)generate_mma_loop_op_fort()generate_conv_desc()Unknown Matmul Operation!hardware_supporttile_size_knob == 20Engine initialization error ֭խpխխխխխ ֭֭֭խխpխխխխpխ ,::_M_insert_auxconcretePtr == nullptrN5cudnn7backend25BlockScaleMatmulOperationEN5cudnn6fusion29fortNativeRuntimeFusionEngineESt23_Sp_counted_ptr_inplaceIN5cudnn7backend15MatmulOperationESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion10MatmulNodeESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn7backend25BlockScaleMatmulOperationESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion20BlockScaleMatmulNodeESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@@  KP``Pp`P4,getOp()->getXDesc()->hasSameShape(this->init_x_tensor)check_for_compatible_tensor_layout(pointwise_node->getOp()->getXDesc())tag_broadcast_shape_interp(pointwise_node->bPort)check_for_compatible_tensor_layout(pointwise_node->getOp()->getBDesc())!pointwise_node->getOp()->getTDesc()->hasSameShape(this->init_x_tensor)check_for_compatible_tensor_layout(pointwise_node->getOp()->getTDesc())!pointwise_node->getOp()->getYDesc()->hasSameShape(this->init_x_tensor)check_for_compatible_tensor_layout(pointwise_node->getOp()->getYDesc())check_for_compatible_tensor_layout(matcher->getInvStdDevDesc())check_for_compatible_tensor_layout(mean_desc)check_for_compatible_tensor_layout(scale_desc)check_for_compatible_tensor_layout(bias_desc)!hardware_fp8_supported(this->getDeviceProp()->deviceVer)!fp8_scale_op->getXDesc()->hasSameShape(this->init_x_tensor)check_for_compatible_tensor_layout(fp8_scale_op->getXDesc())!fp8_scale_op->getYDesc()->hasSameShape(this->init_x_tensor)check_for_compatible_tensor_layout(fp8_scale_op->getYDesc())!hardware_block_scale_supported(this->getDeviceProp()->deviceVer)this->outputDataType == CUDNN_DTYPE_FP4_E2M1 && !hardware_fp4_supported(this->getDeviceProp()->deviceVer)Currently WARPS_M must be 32 for column-wise block scalingthis->WARPS_M != layer_norm::mxfp8_block_sizethis->cols % layer_norm::mxfp8_block_size != 0this->bsType == BlockScaleType::BS_1D2X2X && this->rows % layer_norm::mxfp8_block_size != 0(this->outputDataType != CUDNN_DTYPE_FP8_E4M3) && (this->outputDataType != CUDNN_DTYPE_FP8_E5M2) && (this->outputDataType != CUDNN_DTYPE_FP4_E2M1)(deviceVer < 800 || deviceVer > 1299) && !cudnn::ops::isForwardCompatEnabled(deviceVer)Mean is required in persistent LN fwd train.!this->isRMSNorm && this->isTrain && !hasMeansizeofCudnnType(this->inputDataType) < sizeofCudnnType(this->outputDataType)hasScale && (sizeofCudnnType(this->inputDataType) < sizeofCudnnType(this->weightDataType))check_for_norm_op_layout_support(matcher)this->cols % ELTS_PER_LDG != 0this->WARPS_M != 1 && this->CTAS_PER_ROW != 1VEC_COLS % VEC_COLS_PER_LDG != 0Extremely large LDGS is not supported due to potential register spilling and the possibility of exceeding the local memory limitation (512KB) for each threadsmem_size_in_total > deviceProp.maxSharedMemoryPerBlockOptincheck_for_pointwise_op_support(const_cast(pointwise_node))matcher->getNormOutputDataType() != CUDNN_DATA_FLOATcheck_for_norm_op_support(matcher)check_for_prologue_support(matcher)check_for_epilogue_support(matcher)check_for_fp8_ops_support(matcher)No headers found in the header mapcomp_bytes_version_map.empty()getMostCompatibleHeaderBytes( persistent_ln_comp_bytes_version_map, rtk()->getNvrtcVersion(), comp_header_bytes)form_kernel_args(matcher, (uint8_t *)kernelParamFlatBuf.data(), var, arg_ptrs, stream)!cuEqual(*static_cast(add_scalar), cuGet(1.f))!cuEqual(*static_cast(add_scalar), 1.f)!cuEqual(*static_cast(add_scalar), cuGet(1.f))nullptr == variance_inv_col_scalarmatcher->hasMeanInvCol() && (matcher->getVarianceInvColUid() != matcher->getMeanInvColUid()) && (nullptr == mean_inv_col_scalar)!cuSimilar(*static_cast(inv_col_scalar), 1.0 / matcher->getNumCols())!cuSimilar(*static_cast(inv_col_scalar), 1.0f / matcher->getNumCols())!cuSimilar(*static_cast(inv_col_scalar), cuGet(1.0f / matcher->getNumCols()))!cuSimilar(*static_cast(inv_col_scalar), cuGet(1.0f / matcher->getNumCols()))Unexpected inverse column size data typethis->reserved_workspace_in_bytes > var_workspaceBytesnullptr == scale_inv_numerator_scalar!cuEqual(*scale_inv_numerator_scalar, 1.f)rtk()->launchKernelEx(deviceId, gridDim, blockDim, clusterDim, this->SMEM_BYTES_FWD, stream, arg_ptrs.data(), false, true, false)rtk()->launchKernelEx(deviceId, grid, block, clusterDim, this->SMEM_BYTES_FWD, stream, arg_ptrs.data(), true, true, false)set_runtime_compilation_flags(*this->getDeviceProp())rtk()->compile(this->compilerFlags, this->useNvrtcSassPath, this->useNvrtcHiddenAPI)cuOccupancyMaxActiveBlocksPerMultiprocessorQueried ctas_per_sm is smaller than the desired valuectas_per_sm < this->ctas_per_smOnly math, logical, and activation operations before/after norm are supportedFusion operation's input tensor not foundprevious_op_itr == uid_to_op_map.end() /* fusion {operation_name} b */add_tensor_to_fort_op( pointwise_node->getOp()->getBDesc(), global_load_pointwise_b_op_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR, fmt::format(" /* fusion {operation_name} b */", fmt::arg("operation_name", operation_name))) /* fusion {operation_name} t */add_tensor_to_fort_op( pointwise_node->getOp()->getTDesc(), global_load_pointwise_t_op_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR, fmt::format(" /* fusion {operation_name} t */", fmt::arg("operation_name", operation_name)))add_tensor_to_fort_op( matcher->getBiasDesc(), global_load_bias_op_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR, " /* beta/bias */")Unsupported prologue operationgenerate_fusion_load(matcher, prologue_load_ops, column_loop_for_loading_x_op_, true)Unsupported prologue operationsgenerate_fusion_ops(matcher, prologue_load_ops, row_loop_for_loading_x_op_, true)add_tensor_to_fort_op( matcher->getXDesc(), global_load_x_op_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR, " /* x */") /* zero centered gamma scale */add_tensor_to_fort_op(matcher->getZeroCenteredGammaNode()->getOp()->getXDesc(), global_load_scale_op_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR, " /* zero centered gamma scale */")add_tensor_to_fort_op(matcher->getScaleDesc(), global_load_scale_op_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR, " /* gamma/scale */")add_tensor_to_fort_op(matcher->getEpsilonDesc(), compute_stats_op_norm_, fort::pins::COMPUTE_STATS_NORM_EPSILON_TENSOR, " /* epsilon */")Unsupported epilogue operationgenerate_fusion_load(matcher, epilogue_load_ops, column_loop_for_loading_x_op_, false)Unsupported epilogue operationsgenerate_fusion_ops(matcher, epilogue_load_ops, row_loop_for_applying_norm_op_, false)add_tensor_to_fort_op(matcher->getFP8AmaxReductionNode()->getOp()->getYDesc(), global_store_amax_op_, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, "/* amax y */")add_tensor_to_fort_op(matcher->getFP8ScalePointwiseMulNode()->getOp()->getBDesc(), row_loop_for_applying_norm_op_, fort::pins::POINTWISE_B_SCALAR, " /* fp8 scale */")add_tensor_to_fort_op(matcher->getFP8InvScaleNode()->getOp()->getYDesc(), global_store_scale_inv_op_, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, "/* scale_inv */") /* block scale rowwise output */add_tensor_to_fort_op(matcher->getBlockRowQuantizeNode()->getOp()->getYDesc(), block_scale_op_norm_, fort::pins::BLOCK_SCALE_ROWWISE_OUTPUT_TENSOR, " /* block scale rowwise output */") /* block scale rowwise scale */add_tensor_to_fort_op(matcher->getBlockRowQuantizeNode()->getOp()->getScaleDesc(), block_scale_op_norm_, fort::pins::BLOCK_SCALE_ROWWISE_SCALE_TENSOR, " /* block scale rowwise scale */") /* block scale colwise output */add_tensor_to_fort_op(matcher->getBlockColQuantizeNode()->getOp()->getYDesc(), block_scale_op_norm_, fort::pins::BLOCK_SCALE_COLWISE_OUTPUT_TENSOR, " /* block scale colwise output */") /* block scale colwise scale */add_tensor_to_fort_op(matcher->getBlockColQuantizeNode()->getOp()->getScaleDesc(), block_scale_op_norm_, fort::pins::BLOCK_SCALE_COLWISE_SCALE_TENSOR, " /* block scale colwise scale */")add_tensor_to_fort_op( matcher->getYDesc(), global_store_results_op_, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, "/* norm y */")add_tensor_to_fort_op(matcher->getMeanDesc(), compute_stats_op_norm_, fort::pins::COMPUTE_STATS_NORM_MEAN_TENSOR, " /* mean */ ")add_tensor_to_fort_op(matcher->getInvStdDevDesc(), compute_stats_op_norm_, fort::pins::COMPUTE_STATS_NORM_INV_VAR_TENSOR, "/* invVariance */")calculate_workspace_size(target_sm_count)this->getDeviceProp()->deviceVer >= 1000 && (rtk()->getNvrtcVersion() < 12080)this->ctas_per_col <= 0matcher_casted == nullptr!row_major && !col_majorELTS_PER_LDG == 0LDGS > 1024Using too much smemthis->ctas_per_sm < 1check_block_scale_support()comp_header_bytes == nullptrnullptr == ptrArray[idx]nullptr == add_scalar--std=c++17-DHIDDEN_SIZE_VALUE=-DDESIRED_OCCUPANCY_VALUE=-DIS_RMS_NORM_VALUE=-DBATCH_SIZE_VALUE=-DIS_ADALN_VALUE=-DIS_BATCH_FIRST_VALUE=-DHAS_GAMMA_VALUE=-DHAS_BETA_VALUE=-DADD_ONE_TYPE_VALUE=cuKernelGetFunctionkernel_ptr == nullptrcuFuncSetAttributeatan2scale_bias_relubinary_selectnotneqreciprocalidentityerftansinrsqrtneglogfloorexpcosceilabssubpowminadd_squareunknownforward_reluforward_tanhforward_sigmoidforward_eluforward_geluforward_softplusforward_swishforward_gelu_approx_tanhoperation_name /* beta/bias */ /* x */ /* gamma/scale */ /* epsilon *//* amax y */ /* fp8 scale *//* scale_inv *//* norm y */ /* barrier */ /* workspace */void* __restrict__ /* mean */ /* mean */float* __restrict__/* invVariance */cudnn_generated_layer_norm_generate_full_kernel_string()cuLaunchKernelExuseClustercuLaunchCooperativeKernelcuLaunchKernelN5cudnn6fusion15IPatternMatcherEN5cudnn6fusion27fortNormRuntimeFusionEngineE+=V瞯ư>{Gz?MbP??@P`pЬ଱P@찱 ,opType != CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTORThe mode of the pointwise operation is incorrectExpected a reduction operationnode->opType != CUDNN_BACKEND_OPERATION_REDUCTION_DESCRIPTORThe mode of the reduction operation is incorrectreduce_node->getOp()->getReductionDesc()->getReductionOperator() != modeAmax output is expected to have all dimensions set to 1amax output datatype in flash fprop should be fp32reduce_node->yPort.tensor->getDataType().kern_type != CUDNN_DTYPE_FP32Expand Band matrix node not foundExpected a expand band matrix operationnode->opType != CUDNN_BACKEND_OPERATION_EXPAND_BAND_MATRIX_DESCRIPTORExpand Band matrix node needs the upper bandwidth to be equal to 0expand_band_matrix_op->getUpperBandwidth() != 0Expand Band matrix node needs the axis to be equal to 3expand_band_matrix_op->getAxis() != 3Expand Band matrix node needs the padding value to be equal to 0.0fexpand_band_matrix_op->getPadValue() != 0.0fExpand Band matrix node needs the input tensor to be of data type either fp16/bf16get_elem_size_in_bits(expand_band_matrix_node->xPort.tensor->getDataType().kern_type) != 16Contract Band matrix node not foundExpected a contract band matrix operationnode->opType != CUDNN_BACKEND_OPERATION_CONTRACT_BAND_MATRIX_DESCRIPTORContract Band matrix node needs the upper bandwidth to be equal to 0contract_band_matrix_op->getUpperBandwidth() != 0Contract Band matrix node needs the axis to be equal to 3contract_band_matrix_op->getAxis() != 3Contract Band matrix node needs the padding value to be equal to 0.0fcontract_band_matrix_op->getPadValue() != 0.0fContract Band matrix node needs the output tensor to be of data type either fp16/bf16get_elem_size_in_bits(contract_band_matrix_node->yPort.tensor->getDataType().kern_type) != 16Contract Band matrix node can only run on Hopper GPUs with SM90 kernelsARCH_9X != engine_identity.archPacked layout of tensor not supported with streamK enabledDiagonal band mask not supported with streamK enabledDropout not supported with streamK enabledSequence length for Q should be one if streamK enabledNumber of K and V heads should be the same if streamK enabledMHA matmul needs compute type float!(mmo_datatype == CUDNN_DATA_FLOAT)MHA needs the tensors to be dims 4aTensor->getNbDims() != 4 || bTensor->getNbDims() != 4 || cTensor->getNbDims() != 4Cannot batch broadcast for sdpa backward graphaTensor->getDimA()[0] != bTensor->getDimA()[0]Flash Attention with ragged offset can only be run with sm_90 instructionsARCH_9X != engine_identity.arch && ARCH_10X != engine_identity.archrtk(kernelNumRunning)->kernelParams.init_size_alignment_recursive()rtk(kernelNumRunning)->kernelParams.generate_struct_buffer_recursive()cuda_commands.queueMemsetAsync(ptr, 0, 4)cuda_commands.queueMemsetAsync( ptr, 0, workspace_manager.get_partition_size(attn_kernel_desc.dq_acc_workspace_index))cuda_commands.queueMemsetAsync( ptr, 0, workspace_manager.get_partition_size( attn_kernel_desc .dq_workspace_index))Variant pack by-value entries cannot be specified using a nullptr.cuda_commands.queueMemsetAsync( ptr, 0, workspace_manager.get_partition_size( attn_kernel_desc.dq_workspace_index))form_kernel_args(curr_rtk.get(), kernelParamFlatBuf.data(), var, arg_ptrs, cuda_commands)curr_rtk->hexdump_kernel_params(kernelParamFlatBuf)cuda_commands.queueMemsetAsync(ptr, init_value, (it->second).size)simple_fill(ptr, init_value, (it->second).size / sizeof(float), cuda_commands)nullptr == dequan_scale_do_ptrsimple_call_fmha_compute_dot_do_o_fp8(cuda_commands, do_ptr, o_ptr, softmax_sum_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->d_v, attn_kernel_desc.o_stride[0], attn_kernel_desc.o_stride[1], attn_kernel_desc.o_stride[2], attn_kernel_desc.do_stride[0], attn_kernel_desc.do_stride[1], attn_kernel_desc.do_stride[2], attn_kernel_desc.is_do_e4m3, attn_kernel_desc.is_o_e4m3, dequan_scale_do_ptr, dequan_scale_o_ptr)simple_call_fmha_compute_dot_do_o(cuda_commands, do_ptr, o_ptr, softmax_sum_ptr, dq_acc_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->d_v, attn_desc_ptr->d_qk, attn_kernel_desc.o_stride[0], attn_kernel_desc.o_stride[1], attn_kernel_desc.o_stride[2], attn_kernel_desc.do_stride[0], attn_kernel_desc.do_stride[1], attn_kernel_desc.do_stride[2], attn_kernel_desc.softmax_sum_stride[0], attn_kernel_desc.softmax_sum_stride[1], attn_kernel_desc.softmax_sum_stride[2], attn_kernel_desc.dq_acc_stride[0], attn_kernel_desc.dq_acc_stride[1], attn_kernel_desc.dq_acc_stride[2], attn_kernel_desc.p_dropout, attn_kernel_desc.is_bf16, batch_offset_do_ptr, batch_offset_o_ptr, batch_offset_softmax_sum_ptr, batch_offset_dq_acc_ptr, attn_kernel_desc.is_ragged_offset_int64, acc_seqlen_ptr, this->getDeviceProp()->multiProcessorCount)simple_qkv_tma_setup(cuda_commands, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->k_h, attn_desc_ptr->v_h, attn_desc_ptr->d_qk, attn_desc_ptr->d_v, seq_length_qo_ptr, seq_length_kv_ptr, batch_offset_q_ptr, batch_offset_k_ptr, batch_offset_v_ptr, batch_offset_o_ptr, batch_offset_do_ptr, attn_kernel_desc.is_ragged_offset_int64, attn_kernel_desc.q_stride[1], attn_kernel_desc.q_stride[2], attn_kernel_desc.k_stride[1], attn_kernel_desc.k_stride[2], attn_kernel_desc.v_stride[1], attn_kernel_desc.v_stride[2], attn_kernel_desc.do_stride[1], attn_kernel_desc.do_stride[2], attn_kernel_desc.dq_stride[1], attn_kernel_desc.dq_stride[2], !attn_kernel_desc.is_dk_full_head_reduction ? attn_kernel_desc.dk_stride[1] : attn_kernel_desc.dk_full_head_stride[1], !attn_kernel_desc.is_dk_full_head_reduction ? attn_kernel_desc.dk_stride[2] : attn_kernel_desc.dk_full_head_stride[2], !attn_kernel_desc.is_dv_full_head_reduction ? attn_kernel_desc.dv_stride[1] : attn_kernel_desc.dv_full_head_stride[1], !attn_kernel_desc.is_dv_full_head_reduction ? attn_kernel_desc.dv_stride[2] : attn_kernel_desc.dv_full_head_stride[2], attn_kernel_desc.o_stride[1], attn_kernel_desc.o_stride[2], q_ptr, k_ptr, v_ptr, do_ptr, dq_acc_ptr, dk_ptr, dv_ptr, o_ptr, q_tma_ptr, k_tma_ptr, v_tma_ptr, do_tma_ptr, dq_acc_tma_ptr, dk_tma_ptr, dv_tma_ptr, o_tma_ptr, kcfg.cta_tile.M * (mha_mode == MHA_Mode::FLASH_MHA_FPROP && is_sm90 ? 2 : 1), kcfg.cta_tile.N * (mha_mode == MHA_Mode::FLASH_MHA_BPROP && is_sm90 ? 2 : 1), kcfg.cta_tile.K, this->is_fp8, is_sm90)rtc_execution->queueLaunchKernel(deviceId, gridDim_execution, blockDim_execution, clusterDim, shared_mem_size[kernelNum], vec_arg_ptrs[kernelNum].data(), false , cuda_commands)simple_call_fmha_lean_reduction_8bits(cuda_commands, o_ptr, partial_o_ptr, partial_m_ptr, partial_l_ptr, stats_ptr, attn_kernel_desc.split_k_factor, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->d_v, attn_kernel_desc.o_stride[0], attn_kernel_desc.o_stride[1], attn_kernel_desc.softmax_stats_stride[0], attn_kernel_desc.softmax_stats_stride[1], attn_kernel_desc.is_o_e4m3)simple_call_fmha_lean_reduction(cuda_commands, o_ptr, partial_o_ptr, partial_m_ptr, partial_l_ptr, stats_ptr, attn_kernel_desc.split_k_factor, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->d_v, attn_kernel_desc.o_stride[0], attn_kernel_desc.o_stride[1], attn_kernel_desc.softmax_stats_stride[0], attn_kernel_desc.softmax_stats_stride[1], attn_kernel_desc.is_bf16)simple_call_fmha_matmul_dq(cuda_commands, k_ptr, dp_ptr, dq_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->k_h, attn_desc_ptr->s_q, attn_desc_ptr->s_kv, attn_desc_ptr->d_qk, attn_kernel_desc.k_stride[0], attn_kernel_desc.k_stride[1], attn_kernel_desc.k_stride[2], attn_kernel_desc.dq_stride[0], attn_kernel_desc.dq_stride[1], attn_kernel_desc.dq_stride[2], attn_kernel_desc.is_bf16, attn_kernel_desc.is_causal_mask, batch_offset_k_ptr, batch_offset_dq_ptr, attn_kernel_desc.is_ragged_offset_int64, seq_length_qo_ptr, seq_length_kv_ptr)simple_call_fmha_matmul_dq_sm80(cuda_commands, k_ptr, dp_ptr, dq_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->k_h, attn_desc_ptr->s_q, attn_desc_ptr->s_kv, attn_desc_ptr->d_qk, attn_kernel_desc.k_stride[0], attn_kernel_desc.k_stride[1], attn_kernel_desc.k_stride[2], attn_kernel_desc.dq_stride[0], attn_kernel_desc.dq_stride[1], attn_kernel_desc.dq_stride[2], attn_kernel_desc.is_bf16, attn_kernel_desc.is_causal_mask, batch_offset_k_ptr, batch_offset_dq_ptr, seq_length_qo_ptr, seq_length_kv_ptr)simple_call_fmha_dbias( cuda_commands, receive_op_->target == fort_device::SM90 ? kcfg.cta_tile.M * 2 : kcfg.cta_tile.M, dp_ptr, dbias_ptr, actual_seqlen_kv_ptr, actual_seqlen_qo_ptr, bmm_scale, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->s_kv, attn_kernel_desc.dbias_dim[0], attn_kernel_desc.dbias_dim[1], attn_kernel_desc.is_causal_mask, attn_kernel_desc.is_bf16)nullptr == dq_in_workspace_ptrnullptr == dequan_scale_dp_ptrsimple_call_fmha_convert_dq_to_8bits(cuda_commands, dq_in_workspace_ptr, dq_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->d_qk, attn_kernel_desc.dq_workspace_stride[0], attn_kernel_desc.dq_workspace_stride[1], attn_kernel_desc.dq_workspace_stride[2], attn_kernel_desc.dq_stride[0], attn_kernel_desc.dq_stride[1], attn_kernel_desc.dq_stride[2], dequan_scale_dp_ptr, dequan_scale_k_ptr, quan_scale_dq_ptr, amax_dq_ptr, attn_kernel_desc.is_dq_e4m3, batch_offset_dq_acc_ptr, batch_offset_dq_ptr, attn_kernel_desc.is_ragged_offset_int64, acc_seqlen_ptr, receive_op_->target == fort_device::SM90)Finalized plan can only run on SM90 or SM100(receive_op_->target == fort_device::SM90 || receive_op_->target == fort_device::SM100) && !is_sm90simple_call_fmha_convert_dq_to_16bits(cuda_commands, dq_acc_ptr, dq_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->d_qk, attn_kernel_desc.dq_acc_stride[0], attn_kernel_desc.dq_acc_stride[1], attn_kernel_desc.dq_acc_stride[2], attn_kernel_desc.dq_stride[0], attn_kernel_desc.dq_stride[1], attn_kernel_desc.dq_stride[2], attn_kernel_desc.is_bf16, batch_offset_dq_acc_ptr, batch_offset_dq_ptr, attn_kernel_desc.is_ragged_offset_int64, acc_seqlen_ptr, receive_op_->target == fort_device::SM90, this->getDeviceProp()->multiProcessorCount)nullptr == dq_acc_workspace_ptrnullptr == dq_acc_ptr && is_dqacc_realsimple_call_fmha_rearrange_n_convert_dq(cuda_commands, dq_acc_workspace_ptr, dq_ptr, dq_acc_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->d_qk, attn_kernel_desc.dq_acc_stride[0], attn_kernel_desc.dq_acc_stride[1], attn_kernel_desc.dq_acc_stride[2], attn_kernel_desc.dq_stride[0], attn_kernel_desc.dq_stride[1], attn_kernel_desc.dq_stride[2], attn_kernel_desc.is_bf16, batch_offset_dq_acc_ptr, batch_offset_dq_ptr, acc_seqlen_ptr, is_dqacc_real)simple_call_fmha_reduce_head_fp8(cuda_commands, dv_full_head_ptr, dv_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_kernel_desc.dv_num_heads, attn_desc_ptr->s_kv, attn_desc_ptr->d_v, attn_kernel_desc.dv_full_head_stride[0], attn_kernel_desc.dv_full_head_stride[1], attn_kernel_desc.dv_full_head_stride[2], attn_kernel_desc.dv_stride[0], attn_kernel_desc.dv_stride[1], attn_kernel_desc.dv_stride[2], dequan_scale_s_ptr, dequan_scale_do_ptr, quan_scale_dv_ptr, amax_dv_ptr, attn_kernel_desc.is_dv_e4m3)simple_call_fmha_reduce_head(cuda_commands, dv_full_head_ptr, dv_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_kernel_desc.dv_num_heads, attn_desc_ptr->s_kv, attn_desc_ptr->d_v, attn_kernel_desc.dv_full_head_stride[0], attn_kernel_desc.dv_full_head_stride[1], attn_kernel_desc.dv_full_head_stride[2], attn_kernel_desc.dv_stride[0], attn_kernel_desc.dv_stride[1], attn_kernel_desc.dv_stride[2], batch_offset_dv_ptr, attn_kernel_desc.is_dv_full_head_ragged, actual_seqlen_kv_ptr, attn_kernel_desc.is_bf16, attn_kernel_desc.is_ragged_offset_int64, this->getDeviceProp()->multiProcessorCount)simple_call_fmha_reduce_head_fp8(cuda_commands, dk_full_head_ptr, dk_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_kernel_desc.dk_num_heads, attn_desc_ptr->s_kv, attn_desc_ptr->d_v, attn_kernel_desc.dk_full_head_stride[0], attn_kernel_desc.dk_full_head_stride[1], attn_kernel_desc.dk_full_head_stride[2], attn_kernel_desc.dk_stride[0], attn_kernel_desc.dk_stride[1], attn_kernel_desc.dk_stride[2], dequan_scale_dp_ptr, dequan_scale_q_ptr, quan_scale_dk_ptr, amax_dk_ptr, attn_kernel_desc.is_dk_e4m3)simple_call_fmha_reduce_head(cuda_commands, dk_full_head_ptr, dk_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_kernel_desc.dk_num_heads, attn_desc_ptr->s_kv, attn_desc_ptr->d_qk, attn_kernel_desc.dk_full_head_stride[0], attn_kernel_desc.dk_full_head_stride[1], attn_kernel_desc.dk_full_head_stride[2], attn_kernel_desc.dk_stride[0], attn_kernel_desc.dk_stride[1], attn_kernel_desc.dk_stride[2], batch_offset_dk_ptr, attn_kernel_desc.is_dk_full_head_ragged, actual_seqlen_kv_ptr, attn_kernel_desc.is_bf16, attn_kernel_desc.is_ragged_offset_int64, this->getDeviceProp()->multiProcessorCount)nullptr == contract_dbias_workspace_ptrsimple_call_fmha_contract_dbias(cuda_commands, contract_dbias_workspace_ptr, contract_dbias_ptr, attn_desc_ptr->b, attn_desc_ptr->q_h, attn_desc_ptr->s_q, attn_desc_ptr->s_kv, attn_desc_ptr->d_qk, attn_kernel_desc.contract_lower_bandwidth, attn_kernel_desc.contract_band_size, attn_kernel_desc.contract_dbias_stride[0], attn_kernel_desc.contract_dbias_stride[1], attn_kernel_desc.contract_dbias_stride[2], attn_kernel_desc.contract_dbias_stride[3], batch_offset_dbias_ptr, actual_seqlen_qo_ptr, actual_seqlen_kv_ptr, attn_kernel_desc.is_ragged_offset_int64, attn_kernel_desc.max_token, this->getDeviceProp()->multiProcessorCount)-DCUDA_PTX_KNOB_COPYPROP_NOWRITENONRR_ENABLED=1-DCUDA_PTX_KNOB_DISABLE_WAR_ENABLED=1-DCUDA_ENABLE_TENSOR_MEMORY_INTRINSICS=1-DCUDA_ENABLE_VIRTCOUNT_INTRINSICS=1-DCUDA_ENABLE_TMEM_MANAGEMENT_INTRINSICS=1-DCUDA_BLACKWELL_TMA_SWIZZLE_ENABLED=1-DCUDA_ENABLE_FLEXIBLE_CLUSTER=1-DCUDA_PTX_TCMMA_V2_SUPPORTED=1-DCUDA_PTX_TMEM_MANAGEMENT_SUPPORTED=1-DCUDA_ENABLE_CLUSTER_MMA_INTRINSICS=1-DCUTLASS_ENABLE_TENSOR_CORE_MMA=1-DCUTLASS_ENABLE_EXTENDED_PTX=1 -DCUTLASS_ENABLE_INTERNAL_NVVM=1 -DCUTLASS_CUDA_INTERNAL_L2_PREFETCH_ENABLED=1 -DCUTLASS_CUDA_RP2RP_ENABLED=1 -DCUTLASS_ENABLE_COMPILER_KNOBS=1 -DCUTLASS_TEST_ENABLE_CACHED_RESULTS=1 -DCUTLASS_CONV_UNIT_TEST_RIGOROUS_SIZE_ENABLED=1 -DCUTLASS_DEBUG_TRACE_LEVEL=0 rtk(kernelNumRunning)->getPtxDesc(ptx_desc)-D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ -U__CUDA_NO_HALF_CONVERSIONS__ rtk(kernelNumRunning)->loadModule()rtk(kernelNumRunning)->compile(compilerFlags, this->useNvrtcSassPath, true )MHA matmuls only support FP32 compute type!(compute_type == CUDNN_DATA_FLOAT)MHA only supports FP32/FP16/BF16/FP8 I/O!(aType == CUDNN_DTYPE_FP16 || aType == CUDNN_DTYPE_BF16 || aType == CUDNN_DTYPE_FP8_E4M3 || aType == CUDNN_DTYPE_FP8_E5M2 || aType == CUDNN_DTYPE_FP32)!(bType == CUDNN_DTYPE_FP16 || bType == CUDNN_DTYPE_BF16 || bType == CUDNN_DTYPE_FP8_E4M3 || bType == CUDNN_DTYPE_FP8_E5M2 || bType == CUDNN_DTYPE_FP32)MHA only supports FP16/BF16 I/O for selected engine configARCH_8X == engine_identity.arch && (aType == CUDNN_DTYPE_FP8_E4M3 || aType == CUDNN_DTYPE_FP8_E5M2 || bType == CUDNN_DTYPE_FP8_E4M3 || bType == CUDNN_DTYPE_FP8_E5M2)MHA only supports FP32 I/O for selected engine configARCH_8X != engine_identity.arch && (aType == CUDNN_DTYPE_FP32 || bType == CUDNN_DTYPE_FP32)A and B need to have the same datatype in the matmul(aType != bType && bType != CUDNN_DTYPE_BF16)(cType == CUDNN_DTYPE_FP8_E4M3 || cType == CUDNN_DTYPE_FP8_E5M2) && (bType != CUDNN_DTYPE_BF16)MHA only supports first matmul output data type FP32 / FP16 / BF16!(cType == CUDNN_DTYPE_FP32 || cType == CUDNN_DTYPE_FP16 || cType == CUDNN_DTYPE_BF16)MHA only supports first matmul output data type FP32 / FP16 / BF16 / FP8!(cType == CUDNN_DTYPE_FP32 || cType == CUDNN_DTYPE_FP16 || cType == CUDNN_DTYPE_BF16 || cType == CUDNN_DTYPE_FP8_E4M3 || cType == CUDNN_DTYPE_FP8_E5M2)Both m-override and n-override ports of BMM1 need to be overridden!mmo->hasGemmMOverrideDesc() || !mmo->hasGemmNOverrideDesc()BMM1's n-override port needs to correspond to paged K cache's sequence portsequencePort.uid != (matmul_node->nOverridePort).uidBoth m-override and k-override ports of BMM2 need to be overridden!mmo->hasGemmMOverrideDesc() || !mmo->hasGemmKOverrideDesc()BMM2's k-override port needs to correspond to paged V cache's sequence portsequencePort.uid != (matmul_node->kOverridePort).uidFlash Attention with ragged offset is not supported for archs below sm_90this->getDeviceProp()->deviceVer != 900 && this->getDeviceProp()->deviceVer != 1000check_matmul_flash_mha_support(node)check_pointwise_flash_mha_support( node, static_cast(node)->getMode())check_reduction_flash_mha_support(node, cudnnReduceTensorOp_t::CUDNN_REDUCE_TENSOR_AMAX)check_expand_band_matrix_flash_mha_support(node)Not supported node in flash fpropcheck_fprop_streamK_mha_support_fort()Paged attention requires variable sequence lengths on both matmuls!(BMM1_has_variable_seq_length && BMM2_has_variable_seq_length)Fused Flash Attention graph was not given to the engineUnsupported layout for in/out SDPA tensorsSM100 version does not support seed tensor of data type != int64rng_node->seedPort.tensor->getDataType().kern_type != CUDNN_DTYPE_INT64SM100 version does not support offset tensor of data type != int64rng_node->offsetPort.tensor->getDataType().kern_type != CUDNN_DTYPE_INT64non-virtual Dropout mask support only row-major [B, H, S_Q, S_KV] tensor shapeOnly 2 sq broadcasted vectors are supported on SM80this->broadcasted_sq_vectors_count > 2 && receive_op_->target == fort_device::SM80Only 4 sq broadcasted vectors are supported on SM90 and SM100this->broadcasted_sq_vectors_count > 4 && (receive_op_->target == fort_device::SM100 || receive_op_->target == fort_device::SM90)generate_ldg_op_fort( diagonal_band_mask_node->shiftRightBoundPort, mma_loop_op_, fort::pins::MMA_LOOP_SHIFT_RIGHT_BOUND_FRAGMENT, shape_to_fort_load_store_method(diagonal_band_mask_node->shiftRightBoundPort, this->mha_mode), mma_pipeline_op_)add_tensor_to_fort_op( diagonal_band_mask_node->leftBoundPort, mask_fort_op, fort::pins::MHA_MASK_LEFT_BOUND_SCALAR)add_tensor_to_fort_op(diagonal_band_mask_node->bPort, mask_fort_op, fort::pins::MHA_MASK_INF_SCALAR)add_tensor_to_fort_op(padding_mask_node->bPort, mask_fort_op, fort::pins::MHA_MASK_INF_SCALAR)Paged Attention supported with only the SM80/SM100 instruction set kernel.receive_op_->target != fort_device::SM80 && receive_op_->target != fort_device::SM100Page tables need to be (minimally) 4-byte aligned.add_tensor_desc_to_fort_op(expand_band_matrix_node->xPort, ldg_op)generate_stg_op_fort( reduction_node->yPort, makeOp( output_loop_op_), fort::pins::REDUCE_OUTPUT_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_reduce_method(reduction_node->yPort))check_contract_band_matrix_flash_mha_support(node)generate_stg_op_fort(contract_band_matrix_node->yPort, makeOp(mma_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::BAND_MATRIX, false)This engine config is not supported for Hopper flash fprop.kcfg.cta_tile.M != 128 || (kcfg.cta_tile.N != 128 && kcfg.cta_tile.N != 256)kcfg.cta_tile.M != 128 || (kcfg.cta_tile.N != 64 && kcfg.cta_tile.N != 128)kcfg.cta_tile.M != 128 || kcfg.cta_tile.N != 128This engine config is not supported for Blackwell flash fprop.This engine config is not supported for Ampere flash fprop.warps_n != 16 && warps_n != 32 && warps_n != 64This knob is not supported for flash bprop.This knob is not supported for Hopper flash bprop.kcfg.cta_tile.N != 64 || kcfg.cta_tile.M != 64This engine config is not supported for Blackwell flash bprop.Batch is incorrectly read from the matmul 1 nodeNumber of heads is incorrectly read for q tensorNumber of heads is incorrectly read for k tensorNumber of heads is incorrectly read for v tensorSeq Length Q is incorrectly read from the matmul 1 nodeSeq Length K is incorrectly read from the matmul 1 nodeHidden Dim per head for q and k is incorrectly read from the matmul 1 nodeHidden Dim per head for v is incorrectly read from the matmul 2 nodeNumber of heads of q must be a multiple of number of heads of kNumber of heads of q must be a multiple of number of heads of vEmbedding dim per head for q and k is not a multiple of 16Embedding dim per head for v and o is not a multiple of 16Embedding dim per head for q and k is not a multiple of 8Embedding dim per head for v and o is not a multiple of 8Embedding dim per head for q and k is not less than equal to 128Embedding dim per head for v and o is not less than equal to 128Embedding dim per head for q and k is not less than equal to 256Embedding dim per head for v and o is not less than equal to 256This engine config is not supported for fp32 input.kcfg.cta_tile.M != 64 || (kcfg.cta_tile.N != 64 && kcfg.cta_tile.N != 32)s_q=1 with ragged offset should go into sm80mma_pipeline_op_->is_fmha_with_single_q_tokens_q=1 on Hopper should go into sm80std::max(smem_o, std::max(smem_q, smem_v) + smem_k + smem_d) + interwarp_reduction_smem > usable_smem_sizegenerate_stg_op_fort(*softmax_stats_port, makeOp(mma_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::ROW_REDUCE, softmax_stats_port->tensor->getIsRagged())FP8 Flash attention bprop needs a pointwise dequantization scale AFP8 Flash attention bprop needs exactly one consumer for pointwise dequantization scale Aconsumers_node_dequan_A.size() != 1FP8 Flash attention bprop needs a pointwise dequantization scale Bnode_dequan_B->opType != CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTORFP8 Flash attention bprop needs exactly two consumers for pointwise dequantization scale Bconsumers_node_dequan_B.size() != 2FP8 Flash attention bprop needs a quantization scale CFP8 Flash attention bprop needs a amax computation for Cpattern_match_fp8_epilog_chain(node, node_dequan_dP, node_dequan_K, node_quan_dQ, node_amax_dQ)FP8 Flash attention bprop needs a dequantization scale dP for dQFP8 Flash attention bprop needs a dequantization scale K for dQFP8 Flash attention bprop needs a quantization scale dQ for dQFP8 Flash attention bprop needs a amax computation for dQFlash Attention with ragged offset only supports int32 or int64 as ragged offset datatype(ragged_offset_kern_type != CUDNN_DTYPE_INT32 && ragged_offset_kern_type != CUDNN_DTYPE_INT64)Flash Attention with int64 ragged offset must have all ragged offsets as int64(attn_kernel_desc.is_ragged_offset_int64 != (ragged_offset_kern_type == CUDNN_DTYPE_INT64))FP8 Flash attention bprop needs a dequantization scale S for dVnode->getConsumerNodes().size() != 1pattern_match_fp8_epilog_chain( node->getConsumerNodes()[0], node_dequan_A, node_dequan_B, node_quan_C, node_amax_C)FP8 Flash attention bprop needs a dequantization scale dO for dVFP8 Flash attention bprop needs a quantization scale dV for dVFP8 Flash attention bprop needs a amax computation for dVFP8 Flash attention bprop needs a dequantization scale dP for dKFP8 Flash attention bprop needs a dequantization scale Q for dKFP8 Flash attention bprop needs a quantization scale dK for dKFP8 Flash attention bprop needs a amax computation for dKBackward activations are not supported in Ampere implementationcudnn::backend::is_activation_bwd(operation) && (receive_op_->target == fort_device::SM80)in_ports[0].first.isVirtual != truegenerate_expand_band_matrix_ops_fort(producer_node, ldg_op)generate_ldg_op_fort(in_ports[idx].first, fort_pointwise_op, in_ports[idx].second, shape_to_fort_load_store_method(in_ports[idx].first, this->mha_mode), mma_loop_op_)get_fort_io_type_str(out_port->getKernelType()) != "int32_t" && get_fort_io_type_str(out_port->getKernelType()) != "float" && get_fort_io_type_str(out_port->getKernelType()) != "fort::uint1b_t"get_fort_io_type_str(port.first.getKernelType()) != "int32_t"generate_stg_op_fort(*out_port, makeOp(mma_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::FLASH_ATTENTION_DV, out_port->tensor->getIsRagged())generate_stg_op_fort(*out_port, makeOp(mma_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::FLASH_ATTENTION_DK, out_port->tensor->getIsRagged())generate_stg_op_fort(*out_port, makeOp(mma_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::FLASH_ATTENTION_O, out_port->tensor->getIsRagged())generate_stg_op_fort(*out_port, makeOp(mma_loop_op_), fort::pins::GLOBAL_STORE_GENERAL_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, shape_to_fort_load_store_method(*out_port))reduction node in flash bprop should be a real tensorreduction_node->yPort.tensor->getIsVirtual()generate_amax_reduction_ops_fort(node)reduction output datatype in flash bprop should be fp16/bf16reduction_node->yPort.tensor->getDataType().kern_type != CUDNN_DTYPE_FP16 && reduction_node->yPort.tensor->getDataType().kern_type != CUDNN_DTYPE_BF16batch dimension doesn't match for reduction in flash bpropoutput_dims[0] != input_dims[0]head number is not a multiple for reduction in flash bpropinput_dims[1] % output_dims[1] != 0sequence doesn't match for reduction in flash bpropoutput_dims[2] != input_dims[2]hidden dim doesn't match for reduction in flash bpropoutput_dims[3] != input_dims[3]dbias batch size not same as input batch size and also not 1.(dbias_dims[0] != input_dims[0]) && (dbias_dims[0] != 1)dbias heads not same as input heads and also not 1.(dbias_dims[1] != input_dims[1]) && (dbias_dims[1] != 1)dbias layout should be row major, stride[3] is wrongdbias layout should be row major, stride[2] is wrongdbias_dims[2] != 1 && dbias_stride[2] != dbias_dims[3]dbias layout should be row major, stride[1] is wrongdbias_dims[1] != 1 && dbias_stride[1] != dbias_dims[3] * dbias_dims[2]dbias layout should be row major, stride[0] is wrongdbias_dims[0] != 1 && dbias_stride[0] != dbias_dims[3] * dbias_dims[2] * dbias_dims[1]kcfg.cta_tile.M != 64 || kcfg.cta_tile.N != 64Multiple reduction nodes in the graph are not supportedconsumer_nodes_of_producer.size() != 2pointwise_node->getMode() != CUDNN_POINTWISE_MUL!pointwise_node->bPort.tensor->getIsByValue()pointwise_node->bPort.tensor->getDataType().kern_type != CUDNN_DTYPE_FP32Pointwise node is an entrance node, other than scale before first matmul and sigmoid of gateEncountered a node that does not match any expected patternLast operation in the graph is not the 2nd matmul for non-gated attentioncurrentPartition != GRAPH_PARTITION_FMHA_BMM2 && !isGatedSoftmax set of ops not configured correctlyit->second != 0 && it->second != 5Mask set of ops not configured correctlyit->second != 0 && it->second != 8 && it->second != 2Dropout set of ops not configured correctlyit->second != 0 && it->second != 3 && it->second != 2 && it->second != 1Gate set of ops not configured correctlyit->second != 0 && it->second != 2Extra ops discovered in the graphBatch matmul 1 children not configured correctlyBatch matmul 2 not the last operation in non-gated attentionThe matmul should either be an entrance node or occur after the softmax and only allowed 2Flash attention fprop needs a bmm1 nodeFlash attention fprop needs a softmax nodeFlash attention fprop needs a bmm2 nodetag_all_consumers(nodeSoftmax, GRAPH_PARTITION_FMHA_SOFTMAX)tag_all_consumers(nodeBMM2, GRAPH_PARTITION_FMHA_BMM2)There need to be two matmul without any producers which correspond to Q * K^T and dO * V^TmatmulEntranceNodes.size() != 2Could not find a node for BMM Q * K^TCould not find a node for BMM dO * V^TCould not find a node for softmax apply exponentrecognize_flash_bprop_nodes(graph, nodeBMM_Q_K, nodeBMM_dO_V, nodeExp)Flash attention bprop needs a BMM : Q * K^T nodeFlash attention bprop needs a BMM : dO * V^T nodeFlash attention bprop needs a exponent node in the softmaxtag_all_consumers(nodeBMM_Q_K, GRAPH_PARTITION_FMHA_BPROP_S)tag_all_consumers(nodeBMM_dO_V, GRAPH_PARTITION_FMHA_BPROP_DP)a_port_connections.size() != 1Matmul in flash attention bprop has a bad producer for operand A"Matmul in flash attention bprop has a bad producer for operand A"Flash attention bprop needs a matmul to compute dVtag_all_consumers(nodeBMM_S_dO, GRAPH_PARTITION_FMHA_BMM2)Flash attention bprop needs a matmul to compute dKtag_all_consumers(nodeBMM_dP_Q, GRAPH_PARTITION_FMHA_BMM5)Flash attention bprop needs a matmul to compute dQMatmul that produces dQ can only have zero or one consumerconsumers_of_dq_matmul.size() > 1tag_all_consumers(consumers_of_dq_matmul[0], GRAPH_PARTITION_FMHA_BPROP_DQ)Matmul that produces dV needs to have exactly one consumerconsumers_of_dv_matmul.size() != 1tag_all_consumers(consumers_of_dv_matmul[0], GRAPH_PARTITION_FMHA_GQA_BPROP_DV)Matmul that produces dK needs to have exactly one consumerconsumers_of_dk_matmul.size() != 1tag_all_consumers(consumers_of_dk_matmul[0], GRAPH_PARTITION_FMHA_GQA_BPROP_DK)Flash attention bprop needs a pointwise operation for dot do * oFP8 Flash attention bprop needs a reduce add for softmax sumnode_reduce_add_do_o == nullptrFP8 Flash attention bprop needs a dequan scale dO for softmax sumnode_dequan_scale_dO == nullptrFP8 Flash attention bprop needs a dequan scale O for softmax sumnode_dequan_scale_O == nullptrZero is the only padding value supportedmmo->getMatmulDesc()->getPaddingVal() != 0Data type for Q tensor should be half / bf16 / e4m3 / e5m2Paged Attention does not support K tensor to be raggedgemmBPort.tensor->getIsRagged()generate_mma_op_fort(math_op, compute_type)add_tensor_to_fort_op( matmul_node->mOverridePort, mma_pipeline_op_, fort::pins::FLASH_MHA_SEQLEN_Q_TENSOR)add_tensor_to_fort_op( matmul_node->nOverridePort, mma_pipeline_op_, fort::pins::FLASH_MHA_SEQLEN_K_TENSOR)Flash Attention with ragged offset is not supported for nvrtc version < 12.3rtk(kernelNumRunning)->getNvrtcVersion() < 12030Paged Attention does not support V tensor to be raggedConsumer of a matmul that gives the output O/dV can only have 1 consumergenerate_stg_op_fort(gemmDPort, makeOp(parent_op), fort::pins::SHARED_LOAD_OUTPUT_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, method, add_ragged_offset_tensor)dQ acc needs to be non-virtual on SM90generate_stg_op_fort(gemmDPort, makeOp(mma_loop_op_), fort::pins::MMA_ACCUMULATOR_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::FLASH_ATTENTION_DQ, add_ragged_offset_tensor)dQ acc needs to be of fp32 datatype but is of type = %d!(gemmDPort.tensor->getDataType().kern_type == cudnnKernelDataType_t::CUDNN_DTYPE_FP32)generate_stg_op_fort(gemmDPort, makeOp(mma_loop_op_), fort::pins::MMA_ACCUMULATOR_FRAGMENT, fort::pins::GLOBAL_STORE_OUTPUT_TENSOR, fort::methods::FLASH_ATTENTION_DQ, false)Consumer of a matmul that gives the output dK cannot have more than 1 consumerUnexpected partition of the matmul nodegenerate_matmul_ops_fort(node, node->partitionType)generate_softmax_ops_fort(node)generate_reshape_ops_fort(node)generate_paged_cache_load_ops_fort(node)generate_contract_band_matrix_ops_fort(node)Not supported node in attention native backendrtk(kernelNumRunning)->getNvrtcVersion() < NATIVE_SDPA_10X_BACKEND_CUDA_MIN_VERSIONrtk(kernelNumRunning)->getNvrtcVersion() < NATIVE_SDPA_9X_BACKEND_CUDA_MIN_VERSIONFP8 Flash Attention is not supported for sm_80 instructions or cuda TK < 12.0this->is_fp8 && this->getDeviceProp()->deviceVer != 890 && this->getDeviceProp()->deviceVer != 1200generate_output_loop_op_fort()generate_native_op_tree_for_node(node)process_consumers_dv_matmul(nodeBMM_S_dO->getConsumerNodes()[0])process_consumers_dk_matmul(nodeBMM_dP_Q->getConsumerNodes()[0])process_consumers_dq_matmul(nodeBMM_dP_K->getConsumerNodes()[0])FORT_NATIVE_SDPA != engine_identity.typegenerate_flash_fprop_mha_fort()generate_flash_bprop_mha_fort()requested_smem_exceed_arch_limit(this->getDeviceProp(), this->shared_mem_size[kernelNumRunning])combine_right_bound_mask_nodes(graph)combine_left_bound_mask_nodes(graph)combine_diagonal_band_mask_nodes(graph)combine_padding_mask_nodes(graph)!knobs.getKnob(CUDNN_KNOB_TYPE_KERNEL_CFG).isValidChoice(kernel_cfg_knob, true)kernel_cfg_knob >= (int)sm8x_fmha_kernel_configs.size()heur.initHeurFeatures(opSet, *this->getDeviceProp())Unsupported compute capability, need compute capability 80 or abovemha patterns only support 2, 4 or 5 gemmsnumber_of_gemms != 2 && number_of_gemms != 4 && number_of_gemms != 5find_mha_mode(graph, mha_mode)tag_mha_graph(graph, mha_mode, is_fp8)Attention needs all the tensors to have number dims 4attention_shape_interpretation(graph, mha_mode)rtk(kernelNumRunning)->loadDLL()Pointwise node not found!nodepw_node->getMode() != modeReduction node not foundoutput_dims[i] != 1!is_sm90vec_arg_ptrs.size() == 0attnDescattn_desc_idx < 0nullptr == softmax_sum_ptrnullptr == do_ptrnullptr == o_ptrnullptr == dequan_scale_o_ptrnullptr == dropout_mask_ptrnullptr == dropout_seednullptr == dropout_offsetnullptr == partial_o_ptrnullptr == partial_m_ptrnullptr == partial_l_ptrnullptr == dp_ptrnullptr == k_ptrnullptr == dq_ptrnullptr == dbias_ptrnullptr == bmm_scale_ptrnullptr == dequan_scale_k_ptrnullptr == quan_scale_dq_ptrnullptr == amax_dq_ptrnullptr == dq_acc_ptrnullptr == dv_full_head_ptrnullptr == dv_ptrnullptr == dequan_scale_s_ptrnullptr == quan_scale_dv_ptrnullptr == amax_dv_ptrnullptr == dk_full_head_ptrnullptr == dk_ptrnullptr == dequan_scale_q_ptrnullptr == quan_scale_dk_ptrnullptr == amax_dk_ptrnullptr == contract_dbias_ptr--gpu-architecture=sm_100a-Xptxas=-maxrregcount=168-Xptxas=-maxrregcount=128-DCUTLASS_TEST_LEVEL=0 -DCUTLASS_VERSIONS_GENERATED --gpu-architecture=compute_80-D__CUDA_NO_HALF_OPERATORS__ -U__CUDA_NO_HALF_OPERATORS__ -DVERSION_GE_1_1 -DVERSION_GE_1_3 -DVERSION_GE_1_5 --use_fast_math Matmul node not found!nodeBMM(aType != bType)For fp8, bmm2 B must be BF16nullptr == nodestrides[3] != 1strides[2] != 1dropout_maskbool**__restrict__page_table_alignment % 4 != 0band_bias_kv_offset_tensordv_tma_descsdk_tma_descsdq_acc_tma_descskcfg.warp_count.M == 4b < 0q_h < 0k_h < 0v_h < 0s_q < 0s_kv < 0d_qk < 0d_v < 0q_h % k_h != 0q_h % v_h != 0d_qk % 16 != 0d_v % 16 != 0Only D=128 for BPROP fp8 FMHAd_qk != 128 || d_v != 128d_qk % 8 != 0d_v % 8 != 0d_qk > 128d_v > 128d_qk > 256d_v > 256const AttentionDescriptor_ttile_id_counterint32_t*partial_ofloat*partial_mpartial_lnum_tiles_1tiles_bh_div_1tiles_h_div_1tiles_hr_div_1tiles_r_div_1node_quan_C == nullptrnode_amax_C == nullptrnode_dequan_dP == nullptrnode_dequan_K == nullptrnode_quan_dQ == nullptrnode_amax_dQ == nullptrnode_dequan_A == nullptrnode_dequan_B == nullptrdbias_stride[3] != 1wrong tile selectedattn_kernel_desc.is_dbiasunreachable code pathit->second != 0it->second != 0 && !isGatednodeBMM1 == nullptrnodeSoftmax == nullptrnodeBMM2 == nullptrnodeBMM_Q_K == nullptrnodeBMM_dO_V == nullptrnodeExp == nullptrnodeBMM_S_dO == nullptrnodeBMM_dP_Q == nullptrnodeBMM_dP_K == nullptrnode_dot_do_o == nullptrfmha::bfloat16_tfmha::half_tq_tma_descsconsumers.size() > 1do_tma_descsprocess_softmax_sum_chain()!is_dqacc_realgenerate_mask_ops_fort(node)generate_rng_ops_fort(node)generate_attention_desc()this->is_fp8generate_mha_fort()_flash_fprop_flash_bprop_wgmma_wmma_f8_f16genIndexRowNode == nullptrgenIndexColNode == nullptrrowLessThanNode == nullptrcolLessThanNode == nullptrlogicalAndNode == nullptrbinarySelectNode == nullptrmaxReductionNode == nullptrsubtractNode == nullptrexponentNode == nullptraddReductionNode == nullptrdivisionNode == nullptrlogNode == nullptraddNode == nullptrcombine_softmax_nodes(graph)skip_useless_dropout(graph)OPSETsimplify_mha_graph()prepare_kernel_list()port == nullptrnullptr == genIndexRowNodenullptr == genIndexColNodenullptr == greaterThanNodenullptr == binarySelectNodethis->finalizeInit()(nullptr != skvNode) != (nullptr != sqNode)N5cudnn6fusion11SoftmaxNodeEN5cudnn6fusion20DiagonalBandMaskNodeEN5cudnn6fusion15PaddingMaskNodeEN5cudnn6fusion23HeurFeatureVectorStreamEN5cudnn6fusion32fortAttentionRuntimeFusionEngineESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion11SoftmaxNodeESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion20DiagonalBandMaskNodeESaIS2_ELN9__gnu_cxx12_Lock_policyE2EESt23_Sp_counted_ptr_inplaceIN5cudnn6fusion15PaddingMaskNodeESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE<_?(!(aType == CUDNN_DTYPE_FP16 || aType == CUDNN_DTYPE_FP32 || aType == CUDNN_DTYPE_BF16)!(bType == CUDNN_DTYPE_FP16 || bType == CUDNN_DTYPE_FP32 || bType == CUDNN_DTYPE_BF16)!(cType == CUDNN_DTYPE_FP16 || cType == CUDNN_DTYPE_FP32 || cType == CUDNN_DTYPE_BF16)MHA only supports FP16/BF16 I/O!(aType == CUDNN_DTYPE_FP16 || aType == CUDNN_DTYPE_BF16)!(bType == CUDNN_DTYPE_FP16 || bType == CUDNN_DTYPE_BF16)MHA needs hidden dims to be 64MHA only supports first matmul output data type FP16/BF16/FP32Seq length > 512 not supportedaTensor->getDimA()[2] > 512 || bTensor->getDimA()[3] > 512Stride for the contracting dim for BMM1 should be 1 in both A and B tensorsaTensor->getStrideA()[3] != 1 || bTensor->getStrideA()[2] != 1MHA only supports output data type FP16/BF16!(cType == CUDNN_DTYPE_FP16 || aType == CUDNN_DTYPE_BF16)Stride for the non contracting dim for BMM2 should be 1 in B tensorMHA tagging had an issue in the matmulsReduction for softmax mha need to have float I/O and float compute!(yType == CUDNN_DATA_FLOAT && mathPrec == CUDNN_DATA_FLOAT && xType == CUDNN_DATA_FLOAT)Reduction should be across the last dimension in mhareduction_node->yPort.tensor->getDimA()[3] != 1MHA pointwise needs compute type float/boolean!(mathPrec == CUDNN_DATA_FLOAT || mathPrec == CUDNN_DATA_BOOLEAN)MHA mask generator needs distribution bernoullirng_distribution != CUDNN_RNG_DISTRIBUTION_BERNOULLIMHA mask generator needs to produce a float type maskFused Attention graph was not given to the engineFused_multihead_attention_fprop_paramss_q and s_kv must be multiples of 64 for training(params.s_q % 64 != 0 || params.s_kv % 64 != 0)s_q and s_kv must be multiples of 64form_kernel_args(curr_rtk.get(), kernelParamFlatBuf.data(), var, arg_ptrs)this->getDeviceProp()->driverVer < 11000add_tensor_to_fort_op(bias_node->bPort, global_load_B, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)Bias Tensor in MHA needs to have dimensions = 4pwo->getBDesc()->getNbDims() != 4add_tensor_to_fort_op(mask_mul_node->bPort, global_load_M, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)Mask Tensor in MHA needs to have dimensions = 4add_tensor_to_fort_op( mask_mul_node->bPort, global_load_dropout_mask, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)Dropout mask tensor in fused attention needs to have dimensions = 4Dropout mask tensor in fused attention needs to have full sequence lengths in both rows and columnspwo->getBDesc()->getDimA()[2] == 1 || pwo->getBDesc()->getDimA()[3] == 1add_tensor_to_fort_op(matmul_node->mOverridePort, row_set_loop_op_, fort::pins::MHA_SEQLEN_Q_TENSOR)add_tensor_to_fort_op(matmul_node->nOverridePort, row_set_loop_op_, fort::pins::MHA_SEQLEN_K_TENSOR)add_tensor_to_fort_op(node_rng->seedPort, rng_op_, fort::pins::INPUT_0)add_tensor_to_fort_op(node_rng->offsetPort, rng_op_, fort::pins::INPUT_1)Softmax output needs to have the reordering type CUDNN_TENSOR_REORDERING_F16x16softmax_output_port->tensor->getReordering() != CUDNN_TENSOR_REORDERING_F16x16add_tensor_to_fort_op(sigmoid_node->xPort, global_load_gate_, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)Zero is the only padding value supported for Smatmul_op1->getMatmulDesc()->getPaddingVal() != 0Zero is the only padding value supported for Omatmul_op2->getMatmulDesc()->getPaddingVal() != 0set_fprop_mha_params(nodeBMM1, nodeBMM2, nodeRNG, !is_softmax_virtual)FMHA Bprop needs a binary select node for the masking and creating dP tensorFMHA bprop matmuls have more than one producersMask tensor in bprop fmha needs to be data type FP16 / BF16pw_node->bPort.getKernelType() != CUDNN_DTYPE_FP16 && pw_node->bPort.getKernelType() != CUDNN_DTYPE_BF16Reduction node for dbias in fmha bprop needs exactly one consumer nodeReduction node for dbias in fmha bprop needs a consumer pointwise operationconsumers[0]->opType != CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTORReduction node for dbias in fmha bprop needs a multiply scale node as a consumerpw_node->getOp()->getMode() != CUDNN_POINTWISE_MUL(!nodeBMM1 || !nodeBMM2 || !nodeBMM3 || !nodeBMM4)add_tensor_to_fort_op(matmul_node1->mOverridePort, row_set_loop_op1, fort::pins::MHA_SEQLEN_Q_TENSOR)add_tensor_to_fort_op(matmul_node1->nOverridePort, row_set_loop_op1, fort::pins::MHA_SEQLEN_K_TENSOR)Intermediate tensor from fprop needs to have the reordering type CUDNN_TENSOR_REORDERING_F16x16pPort->tensor->getReordering() != CUDNN_TENSOR_REORDERING_F16x16add_tensor_to_fort_op(*pPort, global_load_P, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR_2)dp should be reordered by CUDNN_TENSOR_REORDERING_F16x16dpPort->tensor->getReordering() != CUDNN_TENSOR_REORDERING_F16x16Zero is the only padding value supported for dVadd_tensor_to_fort_op(*dpPort, global_load_op_dP, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR_2)Zero is the only padding value supported for dKmatmul_op3->getMatmulDesc()->getPaddingVal() != 0Zero is the only padding value supported for dQmatmul_op4->getMatmulDesc()->getPaddingVal() != 0set_bprop_mha_params(nodeBMM4, nodeBMM3, nodeBMM2)dBias operation in fmha bprop is only allowed for sequences 128, 256 and 512s_kv != 128 && s_kv != 256 && s_kv != 512add_tensor_to_fort_op(pw_node->yPort, global_load_op_dP, fort::pins::GLOBAL_LOAD_GENERAL_TENSOR)add_tensor_to_fort_op(pw_node->bPort, pointwise_op_mul, fort::pins::POINTWISE_B_SCALAR)FORT_XMMA_SDPA != engine_identity.typeOnly KERNEL_CFG 0 is supported for non-flash attention(mha_mode == MHA_Mode::MHA_FPROP || mha_mode == MHA_Mode::MHA_BPROP) && (kernel_cfg_knob != 0)Flash Attention graph should not contain fp8 I/OaTensor->getDimA()[3] != 64cTensor->getDimA()[3] != 64bTensor->getStrideA()[3] != 1yType != CUDNN_DATA_FLOATparams_0FMHA needs two matmuls(!nodeBMM1 || !nodeBMM2)nodeSelection == nullptrproducers.size() != 1consumers.size() != 1FMHA bprop needs four matmulsgenerate_bprop_mha_fort()generate_fprop_mha_fort() 0@PhȴȴȴȴȴȴӴ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`Ҵ`ҴҴӴHӴҴҴ`Ҵ`Ҵ`Ҵ(Ҵ @ @N5cudnn6fusion35xmma512AttentionRuntimeFusionEngineEis_inference_or_training_set && is_training != is_training_!(node_ptr_1 != nullptr && node_ptr_2 != nullptr && *reshape_node == nullptr && *rng_node == nullptr)!(strides[3] == 1 && strides[2] == embedding_dimension * pack_multiplier * n_heads)!(strides[2] == 1 && strides[3] == embedding_dimension * pack_multiplier * n_heads)!(strides[1] == 64 && strides[0] == embedding_dimension * pack_multiplier * n_heads * max_seq_len)!(tensor->getNbDims() == 4 && dims[0] == 1 && dims[1] == 1 && dims[2] == 1 && dims[3] == 1 && strides[0] == 1 && strides[1] == 1 && strides[2] == 1 && strides[3] == 1)!(tensor->getNbDims() == 4 && dims[0] == length && dims[1] == 1 && dims[2] == 1 && dims[3] == 1 && strides[0] == 1 && strides[1] == 1 && strides[2] == 1 && strides[3] == 1)!(tensor->getNbDims() == 4 && dims[0] == n_batches && dims[1] == n_heads && dims[2] == max_seq_len && dims[3] == 1)!(tensor->getNbDims() == 4 && dims[0] == n_batches && dims[1] == n_heads && dims[2] == max_seq_len && dims[3] == embedding_dimension)!(input->getNbDims() == 4 && output->getNbDims() == 4)!(input_dims[0] == output_dims[0] && input_dims[1] == output_dims[1] && input_strides[0] == output_strides[0] && input_strides[1] == output_strides[1])!(input_dims[2] == output_dims[3] && input_dims[3] == output_dims[2] && input_strides[2] == output_strides[3] && input_strides[3] == output_strides[2])!(first->getNbDims() == 4 && second->getNbDims() == 4)!(first_dims[0] == second_dims[0] && first_dims[1] == second_dims[1] && first_dims[2] == second_dims[2] && first_dims[3] == second_dims[3])!(attn_scale_cpu_ptr != nullptr)!(dropout_prob_keep_inverse_ptr != nullptr)!(dropout_prob_keep * dropout_prob_keep_inverse_runtime == 1.0f)!(dropout_prob_keep == dropout_prob_keep_runtime)!((char *)K_ptr - (char *)Q_ptr == QKV_dQKV_interleave_offset_bytes && (char *)V_ptr - (char *)K_ptr == QKV_dQKV_interleave_offset_bytes)!((char *)dK_ptr - (char *)dQ_ptr == QKV_dQKV_interleave_offset_bytes && (char *)dV_ptr - (char *)dK_ptr == QKV_dQKV_interleave_offset_bytes)!(dO_O_node_1->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR && dO_O_node_2->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(!X_Tensor_1->getIsVirtual() && !X_Tensor_2->getIsVirtual())!(X_uid_1 == tensor_name_to_uid["dO"] || X_uid_2 == tensor_name_to_uid["dO"])!(O_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3)check_tensor_interleaved_layout(O_Tensor, false, 1)check_dim_stride_for_a_1D_vector(&O_ragged_offset_tensor, n_batches + 1)!(dV_dQ_dK_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E5M2)!(dV_dQ_dK_Tensor->getIsRagged())check_tensor_interleaved_layout(dV_dQ_dK_Tensor)!(dV_dQ_dK_ragged_offset_tensor.getId() == tensor_name_to_uid["qkv_dqkv_ragged_offset"])!(node->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(!X_Tensor->getIsVirtual() && !B_Tensor->getIsVirtual() && Y_Tensor->getIsVirtual())!(tensor_name_to_uid[uid_input_string_indentifier] == pointwise_operation->getUidX())!(tensor_name_to_uid[uid_scale_string_indentifier] == pointwise_operation->getUidB())!(int(parent_node_1->getConsumerNodes().size()) == n_consumer_nodes_1 && this_consumer_node_id_1 < n_consumer_nodes_1 && int(parent_node_2->getConsumerNodes().size()) == n_consumer_nodes_2 && this_consumer_node_id_2 < n_consumer_nodes_2)!(parent_node_1->getConsumerNodes()[this_consumer_node_id_1] == parent_node_2->getConsumerNodes()[this_consumer_node_id_2] && parent_node_1->getConsumerNodes()[this_consumer_node_id_1]->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(multiply_node->getMode() == CUDNN_POINTWISE_MUL)!(X_Tensor->getIsVirtual() && B_Tensor->getIsVirtual() && Y_Tensor->getIsVirtual())check_pointwise_multiply_dimensions(X_Tensor, B_Tensor)!(int(parent_node->getConsumerNodes().size()) == n_consumer_nodes && this_consumer_node_id < n_consumer_nodes && parent_node->getConsumerNodes()[this_consumer_node_id]->opType == CUDNN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR)!(row_reduction_operation_descriptor->getReductionOperator() == reduction_mode)!(X_Tensor->getIsVirtual() && Y_Tensor->getIsVirtual())check_row_dimensions(Y_Tensor)!(int(parent_node->getConsumerNodes().size()) == n_consumer_nodes && this_consumer_node_id < n_consumer_nodes && parent_node->getConsumerNodes()[this_consumer_node_id]->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(rng_entrance_node->opType == CUDNN_BACKEND_OPERATION_RNG_DESCRIPTOR)!(rng_operation_descriptor->getDistribution() == CUDNN_RNG_DISTRIBUTION_BERNOULLI && rng_operation->hasSeedTensor() && rng_operation->hasOffsetDesc())!(!rng_seed_tensor->getIsVirtual() && !rng_offset_tensor->getIsVirtual() && rng_output->getIsVirtual())!(int(rng_node->getConsumerNodes().size()) == n_rng_consumer_nodes && rng_consumer_node_id < n_rng_consumer_nodes && rng_node->getConsumerNodes()[rng_consumer_node_id] == multiply_node)check_dim_stride_for_a_singleton(rng_seed_tensor)check_dim_stride_for_a_singleton(rng_offset_tensor)!(quan_dequan_scale_node->getMode() == CUDNN_POINTWISE_MUL && !quan_dequan_scale_tensor->getIsVirtual() && !quan_dequan_scale_tensor->getIsByValue() && after_quan_dequan_scale_tensor->getIsVirtual() == is_output_virtual)!(tensor_name_to_uid[uid_scale_string_indentifier] == quan_dequan_scale_Operation->getUidB())check_dim_stride_for_a_singleton(quan_dequan_scale_tensor)!(int(parent_node->getConsumerNodes().size()) == n_consumer_nodes && this_consumer_node_id < n_consumer_nodes)!(this_node != nullptr && parent_node == *this_node)!(effective_child_node->opType == CUDNN_BACKEND_OPERATION_RESHAPE_DESCRIPTOR)check_transpose_dimensions_n_strides(input_Tensor, output_Tensor)!(full_reduction_amax_operation_descriptor->getReductionOperator() == CUDNN_REDUCE_TENSOR_AMAX && !amax_tensor->getIsVirtual())check_dim_stride_for_a_singleton(amax_tensor)!(int(parent_node->getConsumerNodes().size()) == n_consumer_nodes && this_consumer_node_id < n_consumer_nodes && parent_node->getConsumerNodes()[this_consumer_node_id]->opType == CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTOR)!(dS_or_dSt_Tensor->getIsVirtual() && !K_or_Q_Tensor->getIsVirtual() && after_dS_K_or_dSt_Q_Tensor->getIsVirtual())!(dS_or_dSt_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E5M2 && K_or_Q_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && bmm_operation->getMatmulDesc()->getDataType() == CUDNN_DATA_FLOAT)!(bmm_operation->hasGemmMOverrideDesc() && !bmm_operation->hasGemmNOverrideDesc() && bmm_operation->hasGemmKOverrideDesc())!(bmm_operation->getUidGemmMOverride() == tensor_name_to_uid["mnk_override"] && bmm_operation->getUidGemmKOverride() == tensor_name_to_uid["mnk_override"])!(tensor_name_to_uid.find(uid_K_or_Q_string_identifier) != tensor_name_to_uid.end() && tensor_name_to_uid[uid_K_or_Q_string_identifier] == bmm_operation->getUidB())!(parent_node->getConsumerNodes().size() == 1 && parent_node->getFirstConsumerNode()->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(unary_operation->getMode() == pointwise_mode && after_unary_tensor->getIsVirtual())!(parent_node->getConsumerNodes().size() == 2)process_bmm_dS_K_or_dSt_Q( parent_node, &bmm_node, uid_K_or_Q_string_identifier, n_consumer_nodes, this_consumer_node_id)process_quan_dequan_scale_node(bmm_node, &dequan_scale_dS_node, uid_dequan_scale_dS_string_identifier)process_quan_dequan_scale_node( dequan_scale_dS_node, &dequan_scale_K_or_Q_node, uid_dequan_scale_K_or_Q_string_identifier)process_quan_dequan_scale_node(dequan_scale_K_or_Q_node, &quan_scale_dQ_or_dK_node, uid_quan_scale_dQ_or_dK_string_identifier, 2, quan_dQ_or_dK_connection_index, false, uid_dQ_or_dK_string_identifier)process_output_dV_dQ_dK_node(quan_scale_dQ_or_dK_node)process_Amax_node(dequan_scale_K_or_Q_node, &Amax_dQ_or_dV_node, uid_Amax_dQ_or_dK_string_identifier, 2, AMax_dQ_or_dK_connection_index)!(parent_node->getConsumerNodes().size() == 1 && parent_node->getFirstConsumerNode()->opType == CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTOR)!(!Q_tensor->getIsVirtual() && !Kt_tensor->getIsVirtual() && Q_Kt_tensor->getIsVirtual())!(Q_tensor->getIsRagged() && Kt_tensor->getIsRagged())!(!q_ragged_offset_tensor.getIsVirtual() && !k_ragged_offset_tensor.getIsVirtual())!(q_ragged_offset_tensor.getId() == k_ragged_offset_tensor.getId())check_dim_stride_for_a_1D_vector(&q_ragged_offset_tensor, n_batches + 1)!(bmm_operation->hasGemmMOverrideDesc() && bmm_operation->hasGemmNOverrideDesc() && !bmm_operation->hasGemmKOverrideDesc())!(!bmm_operation->getGemmMOverrideDesc()->getIsVirtual() && !bmm_operation->getGemmNOverrideDesc()->getIsVirtual())!(bmm_operation->getUidGemmMOverride() == bmm_operation->getUidGemmNOverride())!(Q_tensor->getNbDims() == 4 && Kt_tensor->getNbDims() == 4)check_tensor_interleaved_layout(Q_tensor)check_tensor_interleaved_layout(Kt_tensor, true)!(Q_tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && Kt_tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && bmm_operation->getMatmulDesc()->getDataType() == CUDNN_DATA_FLOAT)!(S_Tensor->getIsVirtual() && !dO_Tensor->getIsVirtual() && after_S_dO_Tensor->getIsVirtual())!(S_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && dO_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E5M2 && bmm_operation->getMatmulDesc()->getDataType() == CUDNN_DATA_FLOAT)!(bmm_operation->getBDesc()->getIsRagged())check_tensor_interleaved_layout(dO_Tensor, false, 1)!(!dO_Tensor->getIsVirtual() && !Vt_Tensor->getIsVirtual() && after_dO_Vt_Tensor->getIsVirtual())!(dO_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E5M2 && Vt_Tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && bmm_operation->getMatmulDesc()->getDataType() == CUDNN_DATA_FLOAT)!(bmm_operation->getUidGemmMOverride() == tensor_name_to_uid["mnk_override"] && bmm_operation->getUidGemmNOverride() == tensor_name_to_uid["mnk_override"])!(tensor_name_to_uid["dO"] == bmm_operation->getUidA())check_tensor_interleaved_layout(Vt_Tensor, true)!(dO_Tensor->getIsRagged() && Vt_Tensor->getIsRagged())!(dO_ragged_offset_tensor.getId() == tensor_name_to_uid["O_dO_RaggedOffset"] && Vt_ragged_offset_tensor.getId() == tensor_name_to_uid["qkv_dqkv_ragged_offset"])!(S_tensor->getIsVirtual() && !V_tensor->getIsVirtual() && S_V_tensor->getIsVirtual())check_qkv_dimension_match(V_tensor)check_tensor_interleaved_layout(V_tensor)!(S_tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && V_tensor->getDataType().api_type == CUDNN_DATA_FP8_E4M3 && bmm_operation->getMatmulDesc()->getDataType() == CUDNN_DATA_FLOAT)!(v_ragged_offset_tensor.getId() == tensor_name_to_uid["qkv_dqkv_ragged_offset"])!(by_value_scale_operation->getMode() == CUDNN_POINTWISE_MUL && !by_value_scale_tensor->getIsVirtual() && by_value_scale_tensor->getIsByValue() && after_by_value_scale_tensor->getIsVirtual())!(tensor_name_to_uid[uid_by_value_scale_string_identifier] == by_value_scale_operation->getUidB())check_dim_stride_for_a_singleton(by_value_scale_tensor)!(int(parent_node->getConsumerNodes().size()) == 1 && parent_node->getFirstConsumerNode()->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(bias_operation->getMode() == pointwise_mode && bias_tensor->getIsVirtual() == is_B_virtual && after_bias_tensor->getIsVirtual())!(other_virtual_parent_node != nullptr && uid_string_identifier == "" && int(other_virtual_parent_node->getConsumerNodes().size()) == other_virtual_parent_n_consumer_nodes && other_virtual_parent_this_consumer_id < other_virtual_parent_n_consumer_nodes && other_virtual_parent_node->getConsumerNodes()[other_virtual_parent_this_consumer_id] == bias_node)check_row_dimensions(bias_tensor)identify_pointwise_n_reduction_nodes(parent_node, &bias_connection_index, &row_reduction_connection_index)!(X_Tensor->getIsVirtual() && Y_Tensor->getIsVirtual() && row_reduction_node->getConsumerNodes().size() == 1 && row_reduction_node->getFirstConsumerNode()->opType == CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR)!(reciprocal_operation->getMode() == CUDNN_POINTWISE_RECIPROCAL)!(bias_operation->getMode() == pointwise_mode)!(row_reduction_node->getConsumerNodes().size() == 1 && row_reduction_node->getFirstConsumerNode() == bias_node)!(this->getDeviceProp()->deviceVer == 900)!(int(entrance_nodes.size() == n_entrance_nodes_fp))identify_entrance_nodes_fp( entrance_nodes[0], entrance_nodes[1], &entrance_reshape_Kt_node, &entrance_rng_node)process_transpose_node(entrance_reshape_Kt_node, &entrance_reshape_Kt_node, true, "K")process_bmm_Q_Kt_node(entrance_reshape_Kt_node, &bmm_Q_Kt_node)process_by_value_scale_node(bmm_Q_Kt_node, &attn_scale_node, "attn_scale")process_quan_dequan_scale_node(attn_scale_node, &dequan_scale_Q_node, "dequan_scale_Q")process_quan_dequan_scale_node(dequan_scale_Q_node, &dequan_scale_K_node, "dequan_scale_K")process_chain_row_reduce_bias( dequan_scale_K_node, &bias_subtraction_node, CUDNN_REDUCE_TENSOR_MAX, CUDNN_POINTWISE_SUB, "M")process_pointwise_unary_node(bias_subtraction_node, &pointwise_exponentiation_node, CUDNN_POINTWISE_EXP)process_chain_row_reduce_bias(pointwise_exponentiation_node, &bias_multiply_node, CUDNN_REDUCE_TENSOR_ADD, CUDNN_POINTWISE_MUL, "Zinv", true)identify_pointwise_n_reduction_nodes( bias_multiply_node, &bias_multiply_to_pointwise_connection_index, &bias_multiply_to_Amax_connection_index)process_by_value_scale_node(rng_multiply_node, &dropout_scale_node, "dropout_prob_keep_inverse")process_quan_dequan_scale_node(dropout_scale_node, &quan_scale_S_node, "quan_scale_S")process_Amax_node(bias_multiply_node, &Amax_S_node, "Amax_S", 2, bias_multiply_to_Amax_connection_index)process_bmm_S_V(quan_scale_S_node, &bmm_S_V_node)process_quan_dequan_scale_node(bmm_S_V_node, &dequan_scale_S_node, "dequan_scale_S")process_quan_dequan_scale_node(dequan_scale_S_node, &dequan_scale_V_node, "dequan_scale_V")identify_pointwise_n_reduction_nodes( dequan_scale_V_node, &dequan_scale_V_to_quan_connection_index, &dequan_scale_V_to_Amax_connection_index)process_quan_dequan_scale_node(dequan_scale_V_node, &quan_scale_O_node, "quan_scale_O", 2, dequan_scale_V_to_quan_connection_index, false, "O")process_output_O_node(quan_scale_O_node)process_Amax_node(dequan_scale_V_node, &Amax_O_node, "Amax_O", 2, dequan_scale_V_to_Amax_connection_index)The kernel doesnt't support dropout during inference !(reshape_Kt_node != nullptr && reshape_Vt_node != nullptr)process_transpose_node(Kt_node, &Kt_node, true, "K")process_bmm_Q_Kt_node(reshape_Kt_node, &bmm_Q_Kt_node)process_bias_node(dequan_scale_K_node, &bias_subtraction_node_Q_Kt_minus_M, CUDNN_POINTWISE_SUB, "M")process_pointwise_unary_node( bias_subtraction_node_Q_Kt_minus_M, &pointwise_exponentiation_node, CUDNN_POINTWISE_EXP)process_bias_node(pointwise_exponentiation_node, &bias_multiply_node, CUDNN_POINTWISE_MUL, "Zinv")!(entrance_rng_node->getConsumerNodes().size() == 2)process_dropout_rng_n_multiply( bias_multiply_node, &rng_multiply_Q_Kt_node, entrance_rng_node, 1, 0, 2, rng_consumer_node_Q_Kt_id)process_by_value_scale_node(rng_multiply_Q_Kt_node, &dropout_scale_Q_Kt_node, "dropout_prob_keep_inverse")!(dropout_scale_Q_Kt_node->getConsumerNodes().size() == 2)process_quan_dequan_scale_node(dropout_scale_Q_Kt_node, &quan_scale_S_node, "quan_scale_S", 2, after_dropout_to_quan_scale_S_connnection_index)process_transpose_node(quan_scale_S_node, &S_transpose_node)process_bmm_St_dO_node(S_transpose_node, &bmm_St_dO_node)process_quan_dequan_scale_node(bmm_St_dO_node, &dequan_scale_S_node, "dequan_scale_S")process_quan_dequan_scale_node(dequan_scale_S_node, &dequan_scale_dO_node_for_S_dO, "dequan_scale_dO")identify_pointwise_n_reduction_nodes(dequan_scale_dO_node_for_S_dO, &dVTensor_before_quan_dV_to_quan_dV_connection_index, &dVTensor_before_quan_dV_to_AMax_connection_index)process_quan_dequan_scale_node(dequan_scale_dO_node_for_S_dO, &quan_scale_dV_node, "quan_scale_dV", 2, dVTensor_before_quan_dV_to_quan_dV_connection_index, false, "dV")process_output_dV_dQ_dK_node(quan_scale_dV_node)process_Amax_node(dequan_scale_dO_node_for_S_dO, &Amax_dv_node, "Amax_dV", 2, dVTensor_before_quan_dV_to_AMax_connection_index)process_transpose_node(Vt_node, &Vt_node, true, "V")process_bmm_dO_Vt_node(Vt_node, &bmm_dO_Vt_node)process_quan_dequan_scale_node(bmm_dO_Vt_node, &dequan_scale_dO_node_for_dO_Vt, "dequan_scale_dO")process_quan_dequan_scale_node( dequan_scale_dO_node_for_dO_Vt, &dequan_scale_dV_node_for_dO_Vt, "dequan_scale_V")process_dropout_rng_n_multiply(dequan_scale_dV_node_for_dO_Vt, &rng_multiply_dO_Vt_node, entrance_rng_node, 1, 0, 2, rng_consumer_node_dO_Vt_id)process_by_value_scale_node(rng_multiply_dO_Vt_node, &dropout_scale_dO_Vt_node, "dropout_prob_keep")identify_dO_O_nodes(dO_O_node_1, dO_O_node_2, &dO_node, &O_node)process_entrance_dequan_scale_node(dO_node, "dO", "dequan_scale_dO")process_entrance_dequan_scale_node(O_node, "O", "dequan_scale_O")process_pointwise_multiply(dO_node, O_node, &pointwise_multiply_dO_O_node)process_by_value_scale_node(pointwise_multiply_dO_O_node, &dropout_scale_dO_O_node, "dropout_prob_keep")process_row_reduction(dropout_scale_dO_O_node, &row_reduction_sum_node, CUDNN_REDUCE_TENSOR_ADD)process_bias_node(dropout_scale_dO_Vt_node, &bias_subtraction_node_dS_minus_dO_O, CUDNN_POINTWISE_SUB, "", true, row_reduction_sum_node)process_by_value_scale_node(bias_subtraction_node_dS_minus_dO_O, &attn_scale_node_before_dS, "attn_scale")process_pointwise_multiply(dropout_scale_Q_Kt_node, attn_scale_node_before_dS, &pointwise_multiply_S_dS_minus_dO_O_node, 2, bias_dropout_to_dP_minus_O_dO_connection_index, 1, 0)identify_pointwise_n_reduction_nodes(pointwise_multiply_S_dS_minus_dO_O_node, &S_dS_minus_dO_O_to_quan_dS_connection_index, &S_dS_minus_dO_O_to_AMax_connection_index)process_quan_dequan_scale_node(pointwise_multiply_S_dS_minus_dO_O_node, &quan_scale_dS_node, "quan_scale_dS", 2, S_dS_minus_dO_O_to_quan_dS_connection_index)process_Amax_node(pointwise_multiply_S_dS_minus_dO_O_node, &Amax_dS_node, "Amax_dS", 2, S_dS_minus_dO_O_to_AMax_connection_index)identify_bmm_n_reshape_nodes(quan_scale_dS_node, &bmm_connection_index, &reshape_connection_index)process_transpose_node( quan_scale_dS_node, &S_dS_minus_dO_O_transpose_node, false, "", 2, reshape_connection_index)process_chain_common_for_both_dQ_n_dK(quan_scale_dS_node, "K", "dequan_scale_dS", "dequan_scale_dK", "Amax_dQ", "quan_scale_dQ", "dQ", 2, bmm_connection_index)process_chain_common_for_both_dQ_n_dK(S_dS_minus_dO_O_transpose_node, "Q", "dequan_scale_dS", "dequan_scale_dQ", "Amax_dK", "quan_scale_dK", "dK")!(false)attn_scaledropout_prob_keep_inversedropout_prob_keepZinvqkv_dqkv_ragged_offsetmnk_overrideO_dO_RaggedOffsetdequan_scale_Qdequan_scale_Kdequan_scale_Vdequan_scale_Sdequan_scale_Odequan_scale_dOdequan_scale_dSquan_scale_dVAmax_SAmax_OAmax_dSAmax_dQAmax_dKAmax_dV!(O_Tensor->getIsRagged())uid_string_indentifier == ""!(embedding_dimension == 64)!(max_seq_len <= 512)!(X_Tensor->getIsVirtual())set_training_mode(true)set_training_mode(false)!(dropout_prob_keep == 1.0f)dequan_scale_dKdequan_scale_dQ!(is_training)_Map_base::atN5cudnn6fusion24FmhaFlashAttentionEngineE nullptr == symbol_ZN5cudnn6fusion13simple_memsetIfEEvPvT_m_ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiii-g=&-1D.=͢-D=) -+=-JÚ=\-A~=[.¥L.d,.8ʍ /޿6/ޓ {D/ $`\-d[<-=<mv-=<\-9 .Q:-* >֑- \>-l=lU-J->M .~Q-1<-/<..ǿ;s%.l<-Z<).<-q<.ɖ=F.$i?Խ.w=p:.>G.Ɍ?rl7.>n.?.Qh> b.+?=.佂>y.h?QJ.x?0.Y>T^.? )-@<䁵-O <[u-#<\Y-8#<)]-u;-k;[u-#<,=,B=W,O=,=z,\Z=b8!-XB=W,O=,gܪ=w@,=E,gY|=,@=,5='"- =E,gY|=_-<;-S-a;;=-D;@xd-ul<-<|b-4<.-1u-<do-ѷ =G- pN=m-0 G=4~#-K<2-H; -Q$<6E-p-; =??-$-(h;$3N-Jcn;,r<;, <9,D*H.-Ȇ$<)[,2-7;'-1-V><(f-&U<$-B-D;y-d;Mq-2;D-i <~@-';[--v;0-;X-n<<x-N@8<2-](<0-|7'<[-)<.-\A<*?-j< q.N<.n;'.=n;-r (.V.aȇz.-k|.Ԭ.1.|}- .-:N. 7t.F.fGO.s4C.`-*ɴ-<:.-h;:-M%I:-n:ۗ-->4.e~-fd:W- :Q-:.Dt&Q-[a-\뺻-.{޻1e.b9r @.D;n.$~&p.B<Ŭ.qC3.A:y3.g:F.;PE.&;Z2;.q#;1j.;ĺ6m.A.aw.F+;.C-9sE-Q8RR-m9:NX-8vQ-8X-zd:1X-X4:-1X9tnQ-J9m-=:?m-y:2-1);-0;H-^l<-Z<).<-q<T^.?.;>.ɖ=F.$i?Խ.w=p:.>G.Ɍ?rl7.>n.?.Qh> b.+?=.佂>y.h? Y,"O-ɜ< -;[-2ٺ1- =-=7C-})-p<}-< p-HۻK- <-AJ<-Z,qLr-P."9=-Y=.<,.y8FT<j-<՘,Y59<,*,<, ,P<`W ,cD<,,2; T-/<j-4<=-_-<˭-OV.%=.:<Z.)=.<=.=)./= -+< J-Yp<-K<#u- =g-<Ϧ-i =N-A'<8k-Y~*2 E.)p.Y<^p.Q-ҥ<.J,rG<-+<^ -<+(-K,;S-@; qd-z <5d-zu<-<t>9-E/:9-:z}-uS:wm-Z;5N-2:d[r-@;;q-DVq;Ca-;N-u :řc-;ݜa- n;@-;&(}-f8-&@:(o/- %<%J-z:N-}9YrD-k[h:'a-G:үj-0}:-'B-838i N-;;O-i:Z-j:v-B;~'.˿: .;AS.#F6G<.)]F>._+.6;.:9B.E;A}.ŋ~.`tp.H.B.B;,h.2.5.`t.(%8.Nb0. =ݔJ.y^;L.{;׀C.L;y.,uz.MAɾ.iE.lp_.];5b.cW;H!.:҂.%<3/ab]y\/0k/E#/miC~/4Lƕ.p <{.b<̎. .iW.m7b;$y.}5<}. F<.cF.U,^.Jj6.4^ X~:?-AZ-;Ӣ7.}*| .XF.ê-̺a.߁.h:&.j8L.A;.;mkC,y<uT,>;WS,;ᑉ,q;, ;ef,L;.V,s;Nj,\;z,H:ɋv,8;Wq,6;vNX,}J;T, ;Az,)n#< ,#<7,v&- BCU+-M+i$;-P-x-\<,<,C->ad<|2-Ra<`-<"-^<-<-< -Y<X,S=<2Y,0=+<b,S{+>5+be>]+9'&>A,>@+X=+/>+[=/ ,6>m+ګ>W+܃ >p9+< >|L,P(>A+4+=,>2+"=m,$a>(+B&=g,7>%,, >X,0 >G,|=$z,>du,%ea=į3,*R1>s1, >+>r+['>5J,>H#, =T,=dT+!M=-,0K[>2K+'>_"+a&>"+Hj1>/G, gG> & ,>Q,GX>+=8,_~7>{r,4>^,>,]O>S,">F, =F,4>Pq,C=.C,$^^>r;,Ag>14+4>z,,`>$cf,4>Y,|%>7 ,=,>,]!>},= ,>LyC,{=, >E,!<=)?,`=vc,==,< >,m=,=m,տ=,s(=,bY=&,=a ,N<3,}3>S -3>8?-=,-f#>~-4+ >j]-2H=ƐD+<<.+; +~;X,;,<\,ʻ;^,q/;,S;H1,o<]׻,Tp;,;o3,E;C},S3<,;y,%Ž;' ,M;o3-;g-r;*q-͈<ӝ+F;LȎ+L<+$;+q<1+cc;ѐ+Q <+l;P+U <@,9]+.<7 +W< , <Ȱf, -<T,C *;_+J ;+ ;,Nq<+g<+";̪+ <Z,E;͉ ,q <,;+_V;e,ފ <\,}e< =,5<+*<,W{<,K2<,m*A<ܚ,<%h,<,)C<7, <,C%,<ݜ,<[,Oi;/,s -< ?-<-e<,,%6<6,<w, <=+] <+.D<+u@<+E<,{@<{+xG<Ž+o@<֯+<3A<(,:6,4;,[<2-Q;,<, ;9,e ,&/+; +Ҡ<@+LQ<*+9L< +#; +x;o$+;D3+W-<%QR+M <)1+;+;R,N;F<],\k9<٪N,f(<,{;E,|p ?@ABCDEFGHIJKLM  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM=-'v<`zI-1<>-W*9=2S,1`=Ɖ,cc=˚8,dz=P",+!.=H,>d=,8d=wa,m=Q,Cp\<%,Dn<cO,t< ,q(NNAttnInputs::LogDimQsSquared)] < log32sq) | (fv[static_cast(NNAttnInputs::LogDimKvsSquared)] < log32sq))EngineNameLookup::reverse_engine_lookup(engine_name, _backend)missing kernel metadata for %sinitKernelMetadata(engine_name)initCalibration(engine_name, *features)_heur->initHeurFeatures(opset, deviceProp)not supported for %s given the heuristic featuresJIT fusion engine heuristics have encountered some errorinitWorkloadSpecificHeuristics(engineHeuristic, heur)Unable to query CUDA runtime versioncudaRuntimeGetVersion(&cudart_version) != cudaSuccessf64[i] > cuMaxOfType()tag_graph_partitions(const_cast(opset.getGraph()))XMMA_SDPA_8XNATIVE_10XNATIVE_12XNATIVE_SDPA_8XNATIVE_SDPA_9XNATIVE_SDPA_10XNATIVE_8XFFMA_GROUPED_5XUKNOWN_ENGINE_IDENTITY":!heur!featuresknobKernelCfg < 0-1 == idx_calibrationstatus_heurfvopset_total == 0opset.getHeurFeatures(f64)initBackends() >0>@>P>`>p>>>>>>>YYYYYYYYYZZ Zgghhhh h(h0h8hgg@@@@@@@@~~G oBH6lBO;qB6:kBPF6RF5 q6:iBQF+18$$$%N @ @ N5cudnn7backend18IKernelTimingModelEN5cudnn7backend34IKernelTimingModelFeatureExtractorEN5cudnn7backend20JITKernelTimingModelEN5cudnn7backend47JITKernelTimingModel_RUNTIME_FUSION_HEUR_LEGACYEN5cudnn7backend35JITKernelTimingModel_ANALYTICAL_KTMEN5cudnn7backend17nnAttnTimingModelEN5cudnn6fusion26HeurFeatureVectorStreamBufEN5cudnn6fusion11IHeuristicsEN5cudnn6fusion19JITEngineHeuristicsE <@0CJITEngineHeuristics::post_initHeurFeatures()JITEngineHeuristics::initHeurFeatures_impl(opset, deviceProp)0ا0<<<(dev_SMcount) < (tunable_params.grid_dim.x * tunable_params.grid_dim.y * tunable_params.grid_dim.z)op->getPwDesc()->getMode() != CUDNN_POINTWISE_MUL(op->getXDesc()->getIsVirtual()) == (op->getYDesc()->getIsVirtual())op->getBDesc()->getIsVirtual()!(op->getXDesc()->isNSpatialC_fullyPacked())!(op->getYDesc()->isNSpatialC_fullyPacked())!is_descale_type_check && !is_scale_type_checkop->getBDesc()->getDataType() != CUDNN_DATA_FLOATmask_desc->getDataType() != CUDNN_DATA_BOOLEAN!(mask_desc->isNSpatialC_fullyPacked())CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR != scale->opTypecheck_fp8_scale_op_support(scale_op)CUDNN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR != reduce->opTypeamax->getDataType() != CUDNN_DATA_FLOATother_params.rtc->launchKernelEx(deviceId, gDim, bdim, clusterDim, tunable_params.dynamic_smem_size, stream, arg_ptrs.data(), true, true, false)tunable_params.workspaceSizeInBytes > workspaceBytesmy_params.gmem_sums == nullptrmy_params.gmem_counts == nullptrmy_params.gmem_retired_ctas == nullptrmy_params.gmem_saved_mean == nullptrmy_params.gmem_saved_var == nullptrSGBNfwd_KernelLauncher(&(my_params), tunable_params, other_params, handle, stream) using Storage = nv_bfloat16; using AddOpInputType = float; using AddOpInputType = nv_fp8_e4m3; using AddOpInputType = nv_fp8_e5m2; using AddOpInputType = nv_bfloat16; using ActOpInputType = float; using ActOpInputType = nv_fp8_e4m3; using ActOpInputType = nv_fp8_e5m2; using ActOpInputType = nv_bfloat16; constexpr int C_ELEMENTS_PER_CTA = constexpr int PIXELS_PER_THREAD_IN_REGISTERS = constexpr int ELEMENTS_PER_LDG = constexpr int OUTER_LOOPS_ = constexpr int DESIRED_OCCUPANCY = constexpr int PIXELS_PER_THREAD_IN_SMEM = constexpr int THREADS_PER_CTA = constexpr int THREADS_PER_WARP = constexpr bool DUMP_BITMASK = getMostCompatibleHeaderBytes( cudnn::fusion::bn_comp_bytes_version_map, other_params.rtc->getNvrtcVersion(), comp_header_bytes) struct NhwcBatchNormFwdParams { // The input/output tensors void *gmem_src, *gmem_dst, *gmem_src1; // The bias/scale float *gmem_bias, *gmem_scale; // input running mean/var (refer BN API from cudnn doc float *gmem_input_running_mean, *gmem_input_running_var; // output running mean/var (refer BN API from cudnn doc float *gmem_output_running_mean, *gmem_output_running_var; // saved mean/var (refer BN API from cudnn doc float *gmem_saved_mean, *gmem_saved_var; // ReLU bitmas void *gmem_relu_bitmask; // The dimensions int nhw, c, n; // factor to scale sum of squared errors to get saved variance. Must be 1/nhw float svar_inv_count; // factor to scale sum of squared errors to get running variance. Should be 1/nhw or 1/(nhw-1) float rvar_inv_count; // Needed for FP8 book keepin // Will be accessed based on T_ELEM type in kerne float *input_descale; // BN in fp float *add_descale; // add in fp float *output_scale; float *amax; // The buffer to do the reduction for mean, stddev and count float *gmem_sums; // The buffer to count items in the different CTAs int *gmem_counts; // The counters of retired CTAs int *gmem_retired_ctas; // The epsilon to apply to the computation of the variance float var_eps; // outer loop count int outer_loops; // exponential average facto float exp_avg_factor; // number of CTAs along .x dimensio int c_blks; // pixels_per_thread_in_smem int pixels_per_thread_in_smem; int bn_group_per_node; int bn_group; int device; float *peerStatBuffers[MAX_GPUS_PER_NODE]; float swish_beta; float relu_upper_clip; float relu_lower_clip; };SGBNfwd_generate_full_kernel_string(tunable_params, other_params)SGBNfwd_set_runtime_compilation_flags(other_params, &deviceProp)other_params.rtc->compile( other_params.compilerFlags, other_params.useNvrtcSassPath, other_params.useNvrtcHiddenAPI)other_params.rtc->loadModule()cmp_gt_node == nullptr || cmp_lt_node == nullptrcmp_gt_node->getConsumerNodes().size() != 1 || cmp_lt_node->getConsumerNodes().size() != 1logical_and_node->getProducerNodes().size() != 2logical_and_node->getInputUIDs().find(cmp_lt_node->yPort.uid) == logical_and_node->getInputUIDs().end()logical_and_node->getInputUIDs().find(cmp_gt_node->yPort.uid) == logical_and_node->getInputUIDs().end()logical_and_op->getPwDesc()->getMode() != CUDNN_POINTWISE_LOGICAL_ANDlogical_and_op->getYDesc()->getDataType() != CUDNN_DATA_BOOLEAN!(logical_and_op->getYDesc()->isNSpatialC_fullyPacked())BN_X_desc->getIsVirtual() == falseCUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR != node->opTypecheck_fp8_scale_op_support(before_BN_op)other_params.inputDataType != CUDNN_DATA_FP8_E4M3 && other_params.inputDataType != CUDNN_DATA_FP8_E5M2BN_node->yPort.connections.size() != 2match_scale_amax_fp8(Y_connections, BN_Y_desc, BN_Y_scale_desc, amax_desc)other_params.inputDataType != BN_Y_desc->getDataType()after_BN_pw_op->getBDesc()->getIsVirtual() == falsecheck_fp8_scale_op_support(add_B_pw_op)relu_op->getPwDesc()->getMode() != CUDNN_POINTWISE_RELU_FWDrelu_op->getYDesc()->getIsVirtual() == falsegetClippedReluParams(*(relu_op->getPwDesc()), use_upper_clip, use_lower_clip, tunable_params.relu_upper_clip, tunable_params.relu_lower_clip)match_scale_amax_fp8(relu_connections, BN_Y_desc, BN_Y_scale_desc, amax_desc)!tunable_params.hasRelu && nodes_after_relu > 25 + (tunable_params.hasAdd ? 2 : 0) != op_count6 + (tunable_params.hasAdd ? 2 : 0) != op_countmatch_normal_relu_bitmask(relu_connections, mask_desc)8 + (tunable_params.hasAdd ? 2 : 0) != op_countmatch_clipped_relu_bitmask(relu_connections, mask_desc)invalid node count connected after ReLU: %lu!BN_X_desc->isNSpatialC_fullyPacked()other_params.inputDataType != CUDNN_DATA_HALF && other_params.inputDataType != CUDNN_DATA_BFLOAT16 && other_params.inputDataType != CUDNN_DATA_FLOATBN_node->yPort.connections.size() != 0!BN_Y_desc->isNSpatialC_fullyPacked()(after_BN_pw_op_mode != CUDNN_POINTWISE_ADD) && (after_BN_pw_op_mode != CUDNN_POINTWISE_RELU_FWD) && (after_BN_pw_op_mode != CUDNN_POINTWISE_SWISH_FWD)!(after_BN_pw_op->getBDesc()->isNSpatialC_fullyPacked())getClippedReluParams(*(act_op->getPwDesc()), use_upper_clip, use_lower_clip, tunable_params.relu_upper_clip, tunable_params.relu_lower_clip)act_op->getPwDesc()->getMode() != CUDNN_POINTWISE_RELU_FWD && act_op->getPwDesc()->getMode() != CUDNN_POINTWISE_SWISH_FWDact_op->getYDesc()->getIsVirtual()!(act_op->getYDesc()->isNSpatialC_fullyPacked())other_params.inputDataType != act_op->getYDesc()->getDataType()!tunable_params.hasRelu && nodes_after_relu > 02 + (tunable_params.hasAdd ? 1 : 0) != op_count3 + (tunable_params.hasAdd ? 1 : 0) != op_count5 + (tunable_params.hasAdd ? 1 : 0) != op_countopSet.getNormFwd().size() != 1match_pattern_when_fp8(opSet, fusion_uids, tunable_params, other_params)match_pattern_when_non_fp8(opSet, fusion_uids, tunable_params, other_params)deviceVer >= 1000 && (other_params.rtc->getNvrtcVersion() < 12080)norm_op.getForwardMode() != CUDNN_NORM_FWD_TRAININGnorm_op.getMode() != CUDNN_BATCH_NORMnorm_op.getForwardMode() != CUDNN_NORM_FWD_INFERENCESGBNfwd_match_pattern(opSet, fusion_uids, tunable_params, other_params)(other_params.inputDataType != CUDNN_DATA_HALF) && (other_params.inputDataType != CUDNN_DATA_FP8_E4M3) && (other_params.inputDataType != CUDNN_DATA_FLOAT) && (other_params.inputDataType != CUDNN_DATA_BFLOAT16) && (other_params.inputDataType != CUDNN_DATA_FP8_E5M2)(other_params.addOpInputType != CUDNN_DATA_FLOAT) && (other_params.addOpInputType != CUDNN_DATA_HALF) && (other_params.addOpInputType != CUDNN_DATA_BFLOAT16) && (other_params.addOpInputType != CUDNN_DATA_FP8_E5M2) && (other_params.addOpInputType != CUDNN_DATA_FP8_E4M3)(other_params.actOpInputType != CUDNN_DATA_FLOAT) && (other_params.actOpInputType != CUDNN_DATA_HALF) && (other_params.actOpInputType != CUDNN_DATA_BFLOAT16) && (other_params.actOpInputType != CUDNN_DATA_FP8_E5M2) && (other_params.actOpInputType != CUDNN_DATA_FP8_E4M3)(other_params.inputDataType != CUDNN_DATA_HALF) && (other_params.inputDataType != CUDNN_DATA_FLOAT) && (other_params.inputDataType != CUDNN_DATA_BFLOAT16)(other_params.addOpInputType != CUDNN_DATA_FLOAT) && (other_params.addOpInputType != CUDNN_DATA_HALF) && (other_params.addOpInputType != CUDNN_DATA_BFLOAT16)(other_params.actOpInputType != CUDNN_DATA_FLOAT) && (other_params.actOpInputType != CUDNN_DATA_HALF) && (other_params.actOpInputType != CUDNN_DATA_BFLOAT16)(other_params.inputDataType == CUDNN_DATA_FP8_E4M3) && (other_params.num_peers > 0)norm_op.getMeanDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getInvVarianceDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getScaleDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getBiasDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getInRunMeanDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getInRunVarDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getOutRunMeanDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getOutRunVarDesc()->getDataType() != CUDNN_DATA_FLOAT!norm_op.getXDesc()->isNSpatialC_fullyPacked()!norm_op.getYDesc()->isNSpatialC_fullyPacked()input_tensor_size > (1LL << 31)tunable_params.c % tunable_params.elements_per_ldg != 0tunable_params.threads_per_pixel > 32SGBNfwd_calc_derived_params(&deviceProp, tunable_params, other_params, target_sm_count)tunable_params.occupancy > 1cmp_gt_op == nullptrmask_desc == nullptrmask_desc->getIsVirtual()scale == nullptrreduce == nullptramax->getIsVirtual()buffer == nullptr using Storage = half; using Storage = float; using Storage = nv_fp8_e4m3; using Storage = nv_fp8_e5m2; using AddOpInputType = half; using ActOpInputType = half; constexpr bool HAS_RELU = constexpr bool HAS_SWISH = constexpr bool HAS_ADD = constexpr bool SYNC_ITERS = constexpr bool isFP8 = #define MAX_GPUS_PER_NODE 32nhwc_batch_norm_fwd4 != opSet.getOpCount()add_B_connections.size() != 1add_Y_connections.size() != 1use_upper_clip!use_clipped_relu1 != opSet.getOpCount()other_params.num_peers > 32other_params.rtc->loadDLL()dims != 4 && dims != 5tunable_params.n != 1pw_desc.getMode() != CUDNN_POINTWISE_RELU_FWD && pw_desc.getMode() != CUDNN_POINTWISE_RELU_BWDCurrently we don't support lower clip slope for ReLU!cuEqual(pw_desc.getReluLowerClipSlope(), 0.0)mathPrec %d for reluUpperClip is unexpectedlower clip should not be greater than upper clip in ReLUrelu_lower_clip > relu_upper_clip(@Xؿ , ,  GAN5cudnn2bn34SGBN_instancenorm_fwd_infer_engineE  @_Z6vecAddPfS_iother_params.ctas_per_col <= 0tensor_id_and_check_align.second && mod(reinterpret_cast(vars.get_user_ptrs()[idx]), align) != 0other_params.cols % elts_per_ldg_per_cta != 0other_params.fp8_out && !hardware_fp8_supported(deviceVer)other_params.isBlockScaleOut && !hardware_block_scale_supported(deviceVer)other_params.nvfp4_out && !hardware_fp4_supported(deviceVer)other_params.nvfp4_out && (other_params.rtc->getNvrtcVersion() < 12080)other_params.noScale && !other_params.noBias!other_params.isRMSNorm && isTrain && !hasMeansizeofCudnnType(other_params.inputDataType) < sizeofCudnnType(other_params.outputDataType)matcher->hasScale() && sizeofCudnnType(other_params.inputDataType) < sizeofCudnnType(other_params.weightDataType)PersistentLNfwd_estimate_ctas_per_row(other_params)other_params.cols % ELTS_PER_LDG != 0other_params.cols % mxfp8_block_size != 0other_params.rows % mxfp8_block_size != 0other_params.WARPS_M != mxfp8_block_sizeother_params.WARPS_M != 1 && other_params.CTAS_PER_ROW != 1other_params.WARPS_M != 1 && other_params.WARPS_M != 4 && !(other_params.WARPS_M >= 16 && other_params.isBlockScaleOut)other_params.BYTES_PER_LDG == 2 && !other_params.isBlockScaleOutother_params.ctas_per_sm != 1 && other_params.ctas_per_sm != 2 && other_params.ctas_per_sm != 4Using shared memory for gamma/beta is not performant for problems with small rows or colsother_params.use_smem_gamma && !(other_params.isBlockScaleOut && (other_params.bsType == FwdKernelConfigParams::BlockScaleType::BS_1D2X2X)) && (other_params.rows < 64 || other_params.cols < 8192)Estimated ctas_per_row is only enabled for problems with large hidden size exceeding the thresholdother_params.use_estimated_ctas_per_row && (other_params.cols < cols_threshold)Multiple ctas per row is not performant when hidden size is small(other_params.CTAS_PER_ROW > 1) && (other_params.cols < 8192) && !other_params.isBlockScaleOutother_params.CTAS_PER_ROW <= 0Occupancy knob value not supported %d > %dother_params.ctas_per_sm > ctas_per_sm_maxOccupancy can't be achieved with current shmem size(smem_size_in_total + deviceProp.reservedSharedMemoryPerBlock) * other_params.ctas_per_sm > (deviceProp.maxSharedMemoryPerBlockOptin + deviceProp.reservedSharedMemoryPerBlock)PersistentLNfwd_calculate_workspace_size(other_params, target_sm_count, isTrain)PersistentLNfwd_setTensorIds(matcher, other_params, isTrain)!cudnn::ops::isValidGrid(deviceProp, grid)other_params.useCluster && !cudnn::ops::isValidCluster(deviceProp, cluster)!cudnn::ops::isValidGrid(deviceProp, block)other_params.engine_workspace_bytes > workspaceBytes!params.noScale && nullptr == params.gamma!params.isRMSNorm && !params.noBias && nullptr == params.betaother_params.has_amax && nullptr == params.amaxparams.z_col != nullptr && nullptr == params.scale_colparams.z_col == nullptr && nullptr != params.scale_colother_params.rtc->launchKernelEx(deviceId, grid, block, cluster, other_params.SMEM_BYTES_FWD, stream, arg_ptrs.data(), other_params.isCooperative, true, other_params.useCluster)other_params.rtc_block_scale_colwise->launchKernel(deviceId, grid_bs, block_bs, dim3(), 0, stream, arg_ptrs.data(), false) using NORM_OTYPE = nv_bfloat16; constexpr int CTAS_PER_ROW = constexpr int BYTES_PER_LDG = constexpr bool isBatchFirst = constexpr bool isZeroCenteredGamma = constexpr bool isZeroCenteredGammaCastBeforeAdd = constexpr bool useSmemGamma = constexpr bool hasScaleInv = constexpr bool USE_CLUSTER = constexpr bool isBlockScaleOut = constexpr bool isBlockScale_1D1X1X = constexpr bool isBlockScale_1D2X2X = constexpr bool isBlockScale_1D2X2X_Transpose = constexpr bool useBlockScaleColwiseKernel = using Ktraits = Kernel_traits;getMostCompatibleHeaderBytes( cudnn::fusion::persistent_ln_comp_bytes_version_map, other_params.rtc->getNvrtcVersion(), comp_header_bytes)PersistentLNfwd_generate_full_kernel_string(other_params)PersistentLNfwd_set_runtime_compilation_flags(other_params, deviceProp)other_params.rtc_block_scale_colwise->compile( other_params.compilerFlags, other_params.useNvrtcSassPath, other_params.useNvrtcHiddenAPI)other_params.rtc_block_scale_colwise->loadModule()Queried ctas_per_sm is smaller than the knob valuectas_per_sm < other_params.ctas_per_sm extern "C" __global__ void block_scale_colwise_kernel(PersistentLnFwdParams params) { static constexpr int BLOCK_SIZE = 32; static constexpr int WARP_SIZE = 32; static constexpr int COLS = Ktraits::COLS; static constexpr int VEC_COLS = COLS / BS_NUM_ELTS; static constexpr float FP8_MAX = std::is_same::value ? 57344.f : 448.f; using NormOvec = Vec; using Ovec = Vec; using Cvec = Vec; using Svec = Vec; using index_t = int32_t; const int bidm = blockIdx.y; const int bidn = blockIdx.x; const int warp = threadIdx.x / WARP_SIZE; const int lane = threadIdx.x % WARP_SIZE; const int row = bidm * BLOCK_SIZE + warp; const int col = bidn * BLOCK_SIZE + lane; static constexpr int MXFP8_1D2X2X_SMEM_ROWS = BLOCK_SIZE * BS_NUM_ELTS + /*padding rows*/ (BS_NUM_ELTS - 1); static constexpr int MXFP8_1D2X2X_SMEM_COLS = BLOCK_SIZE + /*right-most padding col*/ 1; __shared__ float smem_mxfp8_tile[MXFP8_1D2X2X_SMEM_ROWS * MXFP8_1D2X2X_SMEM_COLS]; BlockScaleColHelper colwise_scale_helper{&smem_mxfp8_tile[0]}; // Load z_math into shared memory NormOvec z_intermediate; z_intermediate.load_from(params.z_math, row * VEC_COLS + col); colwise_scale_helper.initTile(z_intermediate); index_t sf_col_row_idx = 0; index_t sf_col_col_idx = 0; index_t sf_col_row_width = 0; index_t z_col_idx = 0; index_t z_row_offset = row - row % BLOCK_SIZE; if constexpr (!isBlockScale_1D2X2X_Transpose) { sf_col_row_idx = row / BLOCK_SIZE; sf_col_col_idx = bidn * BLOCK_SIZE + warp; sf_col_row_width = VEC_COLS; z_col_idx = (z_row_offset + lane) * VEC_COLS + sf_col_col_idx; } else { constexpr index_t group_size = BLOCK_SIZE / BS_NUM_ELTS; sf_col_row_idx = (bidn * BLOCK_SIZE + warp) * BS_NUM_ELTS; sf_col_col_idx = row / BLOCK_SIZE; sf_col_row_width = params.rows / BLOCK_SIZE; z_col_idx = (sf_col_row_idx + lane / group_size) * params.rows / BS_NUM_ELTS + z_row_offset / BS_NUM_ELTS + (lane % group_size); } colwise_scale_helper.blockQuantizeStore(params.scale_col, sf_col_row_idx, sf_col_col_idx, sf_col_row_width, params.z_col, z_col_idx, BLOCK_SIZE * BLOCK_SIZE); }!tensor_ptr_foundother_params.ctas_per_sm != 1grid dim invalidcluster dim invalidblock dim invalidnullptr == inv_col_scalarparams.barrier == nullptrparams.workspace == nullptrparams.mu == nullptrparams.rs == nullptrnullptr == params.xnullptr == params.znullptr == params.munullptr == params.rsnullptr != params.munullptr == params.scalenullptr == params.scale_invnullptr == params.scale_row using ITYPE = half; using ITYPE = float; using ITYPE = nv_bfloat16; using OTYPE = half; using OTYPE = float; using OTYPE = nv_bfloat16; using OTYPE = nv_fp8_e4m3; using OTYPE = nv_fp8_e5m2; using OTYPE = nv_fp4_e2m1; using WTYPE = half; using WTYPE = float; using WTYPE = nv_bfloat16; using CTYPE = float; using NORM_OTYPE = half; using NORM_OTYPE = float; constexpr int HIDDEN_SIZE = constexpr int BATCH_SIZE = constexpr int WARPS_M = constexpr int WARPS_N = constexpr bool isRMSNorm = constexpr bool isAdaLN = constexpr bool hasGamma = constexpr bool hasBeta = constexpr bool isFP8Out = constexpr bool hasAmax = constexpr bool isFP4Out = constexpr int BS_NUM_ELTS = deviceProp.driverVer < 11000ln_fwd_kernelblock_scale_colwise_kernelQueried occupancy is invalidctas_per_sm <= 0WGWGGGGGGWGGX(XGGG N5cudnn10layer_norm26NormFwdVariableSeqCacheKeyEN5cudnn10layer_norm23NormFwdPackSizeCacheKeyEPersistentLNfwd_compile(*this->getDeviceProp(), other_params, fromSerialization, fromKernelCache)matcher->hasProloguePwNodes() || matcher->hasEpiloguePwNodes()PersistentLNfwd_initSupported( matcher, *this->getDeviceProp(), other_params, grid, cluster, block, this->getTargetSMCount(), m_isTrain)other_params.rtc_block_scale_colwise->loadDLL()other_params.ctas_per_sm > 4N5cudnn10layer_norm32PersistentLayerNormFwdEngineBaseE  (input_tma_type == fusion::FORMAT_MAX || output_tma_type == fusion::FORMAT_MAX)(deviceVer < 900 || deviceVer > 1299) && !cudnn::ops::isForwardCompatEnabled(deviceVer)num_scale_factors % PersistentLN_TMA_FWD_MEMORY_ALIGNMENT != 0LDGS should be divisible by loads_per_tileldgs % other_params.loads_per_tile != 0Tile columns should be divisible by loads_per_tiletile_cols % other_params.loads_per_tile != 0Multiple TMA 2D loads per tile is not supported with 0 DMA warps currentlyother_params.loads_per_tile > 1 && other_params.DMA_WARPS == 0TMA tile dimensions must be between 32 and 256: box_rows=%d, box_cols=%dtile_rows_per_load < TMA_2D_LOAD_DIM_MIN_LIMIT || tile_rows_per_load > TMA_2D_LOAD_DIM_MAX_LIMIT || tile_cols_per_load < TMA_2D_LOAD_DIM_MIN_LIMIT || tile_cols_per_load > TMA_2D_LOAD_DIM_MAX_LIMITTMA tile dimensions must be a multiple of 32tile_rows_per_load % TMA_2D_LOAD_DIM_MIN_LIMIT != 0 || tile_cols_per_load % TMA_2D_LOAD_DIM_MIN_LIMIT != 0Bulk Store not yet implemented for 2D TMAother_params.WARPS_N != 1 && other_params.WARPS_N != 4other_params.mxFP8Type != FwdTmaKernelConfigParams::MXFP8Type::MX_1D1X1X && (other_params.WARPS_M * other_params.ROWS_PER_WARP) != mxfp8_block_sizeother_params.rows % (other_params.WARPS_M * other_params.ROWS_PER_WARP) != 0(other_params.WARPS_M * other_params.WARPS_N + other_params.DMA_WARPS > 32)PersistentLNfwdTma_calculate_workspace_size(deviceProp, other_params, target_sm_count, isTrain)This kernel requires nvrtc version of 12.8 or later.other_params.rtc->getNvrtcVersion() < 12080PersistentLNfwdTma_setTensorIds(matcher, other_params, isTrain)!cudnn::ops::isValidCluster(deviceProp, cluster)params.z != nullptr && nullptr == params.scale_row constexpr bool isMXFP8_1D1X1X = constexpr bool isMXFP8_1D2X2X = constexpr bool USE_BULK_STORE = constexpr int ROWS_PER_WARP = constexpr int LOADS_PER_TILE = using Ktraits = Kernel_traits;PersistentLNfwdTma_set_runtime_compilation_flags(other_params, deviceProp)tile_size < min_tile_sizeother_params.USE_BULK_STOREother_params.STAGES != 2other_params.ctas_per_sm < 1 constexpr int STAGES = -DDMA_WARPS=-DBULK_STORE_TYPE=0-DBULK_STORE_TYPE=1-DBULK_STORE_TYPE=2ln_tma_fwd_2D_kernelln_tma_fwd_kernel 8Ph  using WTYPE = n using CTYPE = f--define-macro=_-DBULK_STORE_TYPPersistentLNfwdTma_compile(*this->getDeviceProp(), other_params, fromSerialization, fromKernelCache)other_params.ROWS_PER_WARP * other_params.WARPS_M != mxfp8_block_sizeother_params.WARPS_N != 1N5cudnn10layer_norm35PersistentLayerNormFwdTmaEngineBaseE ^^]] _h^5|~뀷뀷b~6~뀷~~~  cudaGetDeviceProperties_v2(&cudaDeviceProp, 0) != cudaSuccessfailed to get occupancy via CUDA API: error=%davailable occupancy: %d, desired occupancy: %doccResult.activeBlocksPerMultiprocessor < desired_occupancyopSet.getNormBwd().size() != 1add_scalar type is not expected! bwdParams.dgamma_part == nullptrbwdParams.dbeta_part == nullptrbwdParams.workspace == nullptrother_params.rtc->launchKernelEx(deviceId, grid, block, cluster, other_params.SMEM_BYTES, stream, arg_ptrs.data(), other_params.isCooperative, true, other_params.useCluster)other_params.rtc_f->launchKernel(deviceId, finalize_gridDim, finalize_blockDim, clusterDim, other_params.smem_bytes_finalize, stream, arg_ptrs.data(), false) constexpr int CTAS_PER_COL = constexpr bool useGammaSmem = constexpr int BYTES_PER_LDG_FINAL = constexpr int THREADS_PER_CTA_FINALIZE = using KFinalizeTraits = Kernel_traits_finalize; using Ktraits = Kernel_traits;set_runtime_compilation_flags(deviceProp)other_params.rtc_f->compile( other_params.compilerFlags, other_params.useNvrtcSassPath, other_params.useNvrtcHiddenAPI)other_params.rtc_f->loadModule()norm_op.hasScaleDesc() != other_params.hasDScaleother_params.hasDBias && !other_params.hasDScaleother_params.hasMean && (norm_op.getMode() == CUDNN_RMS_NORM)(norm_op.getMode() != CUDNN_RMS_NORM) && !other_params.hasMean(other_params.outputDataType != CUDNN_DATA_HALF) && (other_params.outputDataType != CUDNN_DATA_FLOAT) && (other_params.outputDataType != CUDNN_DATA_BFLOAT16)x and dx should have same data typesnorm_op.getDxDesc()->getDataType() != other_params.inputDataTypeother_params.hasDScale && norm_op.getDScaleDesc()->getDataType() != other_params.weightDataTypeother_params.hasDBias && norm_op.getDBiasDesc()->getDataType() != other_params.weightDataType!check_layout(&backend::Tensor::isRowMajor_fullyPacked) && !check_layout(&backend::Tensor::isColMajor_fullyPacked)!check_layout(&backend::Tensor::isNGCSpatial_fullyPacked) && !check_layout(&backend::Tensor::isNSpatialC_fullyPacked)layer_norm::inferBackwardNormSizes(norm_op, rows, cols, batchSize, other_params.isAdaLN, isBatchFirst)(other_params.BYTES_PER_LDG / sizeofCudnnType(other_params.inputDataType)) <= 0(other_params.CTAS_PER_ROW > 1) && (other_params.cols < 8192)Only allow 2 bytes per load for small hidden size and small data types(other_params.BYTES_PER_LDG <= 2) && ((other_params.cols >= 128) || (sizeofCudnnType(other_params.inputDataType) > 2))Large ldgs*num_elts probably causes register spilling and leads to bad performance(ldgs * num_elts >= 64) && !use_default_ctas_per_rowother_params.WARPS_M != 1 && cols % cta_size != 0rows % other_params.WARPS_M != 0other_params.CTAS_PER_ROW > 1 && other_params.WARPS_M > 1checkOccupancy(other_params.ctas_per_sm, target_sm_count, other_params.THREADS_PER_CTA, 0, smem_size_in_total, block_barriers_used)Occupancy knob value not supported extern "C" __global__ __launch_bounds__(KFinalizeTraits::THREADS_PER_CTA) void ln_bwd_finalize_kernel(PersistentLnBwdParams params) { using compute_t = typename KFinalizeTraits::compute_t; using weight_t = typename KFinalizeTraits::weight_t; using index_t = typename KFinalizeTraits::index_t; using Reducer = typename KFinalizeTraits::Reducer; using reduce_t = typename Reducer::Type; Sum sum; enum { NUM_ELT = KFinalizeTraits::ELTS_PER_LDG }; enum { THREADS_PER_WARP = KFinalizeTraits::THREADS_PER_WARP }; enum { HIDDEN_SIZE = KFinalizeTraits::HIDDEN_SIZE }; enum { BATCH_SIZE = KFinalizeTraits::BATCH_SIZE }; enum { THREADS_PER_CTA = KFinalizeTraits::THREADS_PER_CTA }; __shared__ char smem_[KFinalizeTraits::SMEM_BYTES_PER_CTA]; constexpr uint32_t bidm = 0; const uint32_t bidn = blockIdx.x; const uint32_t tidx = threadIdx.x; const uint32_t warp = tidx / THREADS_PER_WARP; const uint32_t lane = tidx % THREADS_PER_WARP; // CGA is not supported by the finalize kernel, passing nullptr Reducer reducer(params, bidm, bidn, 0, 0, tidx, lane, smem_, nullptr); const uint32_t c = bidn * THREADS_PER_WARP + lane; const uint32_t c_out = bidn * THREADS_PER_WARP / 2 + lane; constexpr uint32_t COL_STRIDE = KFinalizeTraits::CTAS * THREADS_PER_WARP; // Each thread sums over multiple rows traversed in the for row loop and we do this for NUM_ELT consecutive cols, // and store the sums in dbeta_local and dgamma_local Vec dbeta_local[BATCH_SIZE], dgamma_local[BATCH_SIZE]; for (uint32_t col = c, col_out = c_out; col < KFinalizeTraits::COLS; col += COL_STRIDE, col_out += COL_STRIDE / 2) { if (KFinalizeTraits::hasBeta) { memset(&dbeta_local, 0, sizeof(dbeta_local)); } if (KFinalizeTraits::hasGamma) { memset(&dgamma_local, 0, sizeof(dgamma_local)); } #pragma unroll for (uint32_t row = warp; row < CTAS_PER_COL; row += KFinalizeTraits::ROWS_PER_CTA) { index_t idx = row * KFinalizeTraits::COLS + col; Vec dbeta_part[BATCH_SIZE], dgamma_part[BATCH_SIZE]; // For a given col and a row in dgamma(or beta)_part[batchSize, ctas_per_col, HIDDEN_SIZE], read that row's sums stats // for each batch_idx, accumulate in the corresponding dgamma_local and dbeta_local for all the rows i.e. each warp // reduce across CTAS per col for batchSize number of categories. #pragma unroll for (int batch_idx = 0; batch_idx < BATCH_SIZE; batch_idx++) { if (KFinalizeTraits::hasBeta) { dbeta_part[batch_idx].load_from(params.dbeta_part, batch_idx * CTAS_PER_COL * KFinalizeTraits::COLS + idx); } if (KFinalizeTraits::hasGamma) { dgamma_part[batch_idx].load_from(params.dgamma_part, batch_idx * CTAS_PER_COL * KFinalizeTraits::COLS + idx); } #pragma unroll for (int it = 0; it < NUM_ELT; it++) { if (KFinalizeTraits::hasGamma) { dgamma_local[batch_idx].data.elt[it] += dgamma_part[batch_idx].data.elt[it]; } if (KFinalizeTraits::hasBeta) { dbeta_local[batch_idx].data.elt[it] += dbeta_part[batch_idx].data.elt[it]; } } } } // now reduce across warp stats using smem void* smem_gamma = smem_; void* smem_beta = &smem_[KFinalizeTraits::SMEM_BYTES_TRANSPOSE]; // transpose 32x32 elements in smem for each batch size // It would be probably safe to reuse the first row of smem_beta and smem_gamma void* smem_gamma_out = &smem_[2 * KFinalizeTraits::SMEM_BYTES_TRANSPOSE]; void* smem_beta_out = &smem_[2 * KFinalizeTraits::SMEM_BYTES_TRANSPOSE + KFinalizeTraits::SMEM_BYTES_OUTPUT]; using src_t = typename TypeToVec2::Type; using dst_t = typename TypeToVec2::Type; Vec dbeta_vec2[BATCH_SIZE], dgamma_vec2[BATCH_SIZE]; Vec dbeta_out2[BATCH_SIZE], dgamma_out2[BATCH_SIZE]; #pragma unroll for (int batch_idx = 0; batch_idx < BATCH_SIZE; batch_idx++) { // swizzle writing const int write_row = warp; const int write_col = lane ^ write_row; const int write_idx = write_row * THREADS_PER_WARP + write_col; if (KFinalizeTraits::hasGamma) { dgamma_local[batch_idx].store_to(smem_gamma, write_idx); } if (KFinalizeTraits::hasBeta) { dbeta_local[batch_idx].store_to(smem_beta, write_idx); } __syncthreads(); // More than one iter iff ROWS_PER_CTA < 32. // for (int w = warp; w < THREADS_PER_WARP; // w += KFinalizeTraits::ROWS_PER_CTA) { // in current setting for ln_bwd_finalize, ROWS_PER_CTA is // always 1024/32 = 32 const int read_row = lane; const int read_col = warp ^ read_row; const int read_idx = read_row * THREADS_PER_WARP + read_col; if (KFinalizeTraits::hasBeta) { memset(&dbeta_local[batch_idx], 0, sizeof(dbeta_local[batch_idx])); } if (KFinalizeTraits::hasGamma) { memset(&dgamma_local[batch_idx], 0, sizeof(dgamma_local[batch_idx])); } // Load beta and gamma transposed if (read_row < KFinalizeTraits::ROWS_PER_CTA) { if (KFinalizeTraits::hasBeta) { dbeta_local[batch_idx].load_from(smem_beta, read_idx); } if (KFinalizeTraits::hasGamma) { dgamma_local[batch_idx].load_from(smem_gamma, read_idx); } } // Call reducer on the loaded value(s) and convert. #pragma unroll for (int it = 0; it < NUM_ELT; it++) { if (KFinalizeTraits::hasBeta) { compute_t b_i = dbeta_local[batch_idx].data.elt[it]; // The finalize kernel doesn't support CGA, just passing 0 b_i = reducer.allreduce(b_i, sum, 0); dbeta_local[batch_idx].data.elt[it] = b_i; } if (KFinalizeTraits::hasGamma) { compute_t g_i = dgamma_local[batch_idx].data.elt[it]; g_i = reducer.allreduce(g_i, sum, 0); dgamma_local[batch_idx].data.elt[it] = g_i; } } //} // Leader stores the result at the current column. if (lane == 0) { if (KFinalizeTraits::hasGamma) { dgamma_local[batch_idx].store_to(smem_gamma_out, warp); } if (KFinalizeTraits::hasBeta) { dbeta_local[batch_idx].store_to(smem_beta_out, warp); } } // All writes done. __syncthreads(); // Pack and store: 2-wide stores with half the threads. if (warp == KFinalizeTraits::ROWS_PER_CTA - 1 && lane < THREADS_PER_WARP / 2) { if (KFinalizeTraits::hasGamma) { dgamma_vec2[batch_idx].load_from(smem_gamma_out, lane); } if (KFinalizeTraits::hasBeta) { dbeta_vec2[batch_idx].load_from(smem_beta_out, lane); } #pragma unroll for (int it = 0; it < NUM_ELT; it++) { if (KFinalizeTraits::hasGamma) { dgamma_out2[batch_idx].data.elt[it] = Converter::convert(dgamma_vec2[batch_idx].data.elt[it]); dgamma_out2[batch_idx].store_to(params.dgamma, batch_idx * KFinalizeTraits::COLS / 2 + col_out); } if (KFinalizeTraits::hasBeta) { dbeta_out2[batch_idx].data.elt[it] = Converter::convert(dbeta_vec2[batch_idx].data.elt[it]); dbeta_out2[batch_idx].store_to(params.dbeta, batch_idx * KFinalizeTraits::COLS / 2 + col_out); } } // end for it } // end if } // end for batch_idx } // end for col }num_elts <= 0ret_occ != CUDA_OCC_SUCCESSbwdParams.barrier == nullptr constexpr bool hasDScale = constexpr bool hasDBias = ln_bwd_kernelln_bwd_finalize_kernelother_params.rtc_f->loadDLL()dims < 2 || dims > 5estimate_ctas_per_row()elts_ldg_per_row > colscols % elts_ldg_per_row != 02D tiles not supportednum_res <= 0setTensorIds()compiler.cuLaunchKernelEx == nullptrinfer_dimA[*idx_itr] != 1getBatchInfoForAdaLN( dimA, scale_dimA, descend_stride_order.begin(), descend_stride_order.end(), batchSize_dim, batchSize)(row_dims <= 0 || row_dims >= dims)layer_norm::inferNormSizes(norm_op, true, rows, cols, batchSize, isAdaLN, isBatchFirst)rows > MAX_TENSOR_SIZE || cols > MAX_TENSOR_SIZEnorm_op.getXDesc()->getNumElementsWithStride() != rows * colsnorm_op.getDxDesc()->getNumElementsWithStride() != rows * colsnorm_op.getDyDesc()->getNumElementsWithStride() != rows * colsnorm_op.getInvVarianceDesc()->getNumElementsWithStride() != rowsnorm_op.hasMeanDesc() && norm_op.getMeanDesc()->getNumElementsWithStride() != rowsnorm_op.hasScaleDesc() && norm_op.getScaleDesc()->getNumElementsWithStride() != batchSize * colsnorm_op.hasDScaleDesc() && norm_op.getDScaleDesc()->getNumElementsWithStride() != batchSize * colsnorm_op.hasDBiasDesc() && norm_op.getDBiasDesc()->getNumElementsWithStride() != batchSize * colsN5cudnn10layer_norm26NormBwdVariableSeqCacheKeyEN5cudnn10layer_norm23NormBwdPackSizeCacheKeyEN5cudnn2ln36LayerNorm_bwdtrain_persistent_engineEstd::any_of(norm_op_Ids.begin(), norm_op_Ids.end(), [](int64_t elem) { return elem == 0; })norm_op.hasDScaleDesc() && nullptr == bwdParams.dgammanorm_op.hasDBiasDesc() && nullptr == bwdParams.dbetanorm_op.hasMeanDesc() && nullptr == bwdParams.munorm_op.hasScaleDesc() && nullptr == bwdParams.gamma constexpr int32_t OCCUPANCY = using Ktraits = Kernel_traits;(other_params.rtc->getNvrtcVersion() < 12020)This knob combination is not supportedN * M <= 32 - DMA_WARPS to allow room for dma warps(other_params.WARPS_N * other_params.WARPS_M > (32 - DMA_WARPS))!is_channel_first && !is_feature_first && !is_fully_packedlayer_norm::inferBackwardNormSizes( norm_op, non_norm_size, norm_size, batchSize, other_params.isAdaLN, isBatchFirst)non_norm_size > MAX_TENSOR_SIZE || norm_size > MAX_TENSOR_SIZEcudnn::ops::isForwardCompatEnabled(deviceVer)norm_size % elts_ldg_per_row != 0other_params.WARPS_M != 1 && norm_size % cta_size != 0non_norm_size % other_params.WARPS_M != 0Slow config with many register spillsother_params.BYTES_PER_LDG < 4 && other_params.HIDDEN_SIZE > 64(other_params.HIDDEN_SIZE / other_params.CTAS_PER_ROW) < (other_params.WARPS_N * 32)calculate_workspace_size(deviceProp, target_sm_count)other_params.ctas_per_sm > 1nullptr == bwdParams.xnullptr == bwdParams.dznullptr == bwdParams.dxnullptr == bwdParams.rs constexpr int DMA_WARPS = nvrtc must be >- 12.2ln_tma_bwd_kernelelts_ldg_per_row > norm_sizewar_bug_4249767other_params.WARPS_M > 4other_params.ctas_per_sm > 3 N5cudnn2ln40LayerNorm_bwdtrain_persistent_tma_engineEN5cudnn2bn31SGBN_batchnorm_fwd_train_engineE  @params.gmem_retired_ctas == nullptrnullptr == params.gmem_saved_meannullptr == params.gmem_saved_var(GradientTensorDataType == CUDNN_DATA_FP8_E4M3 || GradientTensorDataType == CUDNN_DATA_FP8_E5M2) && params.input_dy_descale == __null(GradientTensorDataType == CUDNN_DATA_FP8_E4M3 || GradientTensorDataType == CUDNN_DATA_FP8_E5M2) && params.input_x_descale == __nulltunable_params.hasReduction && params.output_dx_scale == __nulltunable_params.hasReduction && params.dx_amax == __nullnullptr == params.peerStatBuffers[i]rtk()->launchKernelEx(deviceId, gdim, bdim, clusterDim, tunable_params.dynamic_smem_size, stream, arg_ptrs.data(), true, true, false) using T_FORWARD_INPUT_ELEM = half; using T_FORWARD_INPUT_ELEM = float; using T_FORWARD_INPUT_ELEM = nv_fp8_e4m3; using T_FORWARD_INPUT_ELEM = nv_fp8_e5m2; using T_FORWARD_INPUT_ELEM = nv_bfloat16; using T_DACT_INPUT_ELEM = half; using T_DACT_INPUT_ELEM = float; using T_DACT_INPUT_ELEM = nv_fp8_e4m3; using T_DACT_INPUT_ELEM = nv_fp8_e5m2; using T_DACT_INPUT_ELEM = nv_bfloat16; using T_DADD_INPUT_ELEM = half; using T_DADD_INPUT_ELEM = float; using T_DADD_INPUT_ELEM = nv_fp8_e4m3; using T_DADD_INPUT_ELEM = nv_fp8_e5m2; using T_DADD_INPUT_ELEM = nv_bfloat16; constexpr bool HAS_BITMASK = getMostCompatibleHeaderBytes( cudnn::fusion::bn_comp_bytes_version_map, rtk()->getNvrtcVersion(), comp_header_bytes) #define MAX_GPUS_PER_NODE_BWD 32 struct NhwcBatchNormBwdParams { // The input/output tensors. const void *gmem_src, *gmem_dy; void *gmem_dst; // dscale/dbias float *gmem_dscale, *gmem_dbias; // The scale and bias. const float *gmem_scale, *gmem_bias; // The mean/inv-var saved from fwd pass const float *gmem_saved_mean, *gmem_saved_var; // ReLU bitmask unsigned int *gmem_relu_bitmask; // The dimensions. int nhw, c; // factor to scale sum of squared errors to get saved variance. Must be 1/nhw. float svar_inv_count; // The buffer to do the reduction for dscale and dbias float *gmem_sums; // The counters of retired CTAs. int *gmem_retired_ctas; // The epsilon to apply to the computation of the variance. Not used if saved invariance tensor from forward pass // provided. float variance_epsilon; // outer loop count int outer_loops; // number of CTAs along .x dimension int c_blks; float wgrad_coeff; int bn_group_per_node; int bn_group; int device; float *peerStatBuffers[MAX_GPUS_PER_NODE_BWD]; float *input_dy_descale; float *input_x_descale; float *output_dx_scale; void *gmem_mask; void *gmem_add; float *add_scale; float *dx_amax; float *add_amax; float swish_beta; float relu_upper_clip; float relu_lower_clip; };DBN_DY_desc->getIsVirtual() == falseDBN_DX_desc->getIsVirtual() == falseDBN_X_desc->getIsVirtual() == falsecheck_fp8_scale_op_support(DBN_X_Q_op)match_scale_amax_fp8(dx_connections, DX_desc, DX_scale_desc, DX_amax_desc)before_DBN_op_mode != CUDNN_POINTWISE_MULcheck_fp8_scale_op_support(before_DBN_op)!(before_DBN_op->getBDesc()->isNSpatialC_fullyPacked())drelu_x_connections.size() != 1check_fp8_scale_op_support(before_drelu_op)drelu_y_connections.size() != 3match_scale_amax_fp8(drelu_y_connections, Y_desc, Y_scale_desc, Y_amax_desc)!DBN_DY_desc->isNSpatialC_fullyPacked()dact_op_mode != CUDNN_POINTWISE_MUL && dact_op_mode != CUDNN_POINTWISE_RELU_BWD && dact_op_mode != CUDNN_POINTWISE_SWISH_BWDdact_op->getBDesc()->getDataType() != CUDNN_DATA_BOOLEANopSet.getNormFwd().size() != 0!(dact_op->getBDesc()->isNSpatialC_fullyPacked())!(dact_op->getYDesc()->isNSpatialC_fullyPacked())getClippedReluParams(*(dact_op->getPwDesc()), use_upper_clip, use_lower_clip, tunable_params.relu_upper_clip, tunable_params.relu_lower_clip)!dact_op->getXDesc()->getIsVirtual()fwd_op->getForwardMode() != CUDNN_NORM_FWD_INFERENCEfwd_op->getBiasDesc()->getDataType() != CUDNN_DATA_FLOATfwd_op->getScaleDesc()->getId() != DBN_node->getOp()->getScaleDesc()->getId()fwd_op->getXDesc()->getId() != DBN_node->getOp()->getXDesc()->getId()fwd_op->getMeanDesc()->getId() != DBN_node->getOp()->getMeanDesc()->getId()fwd_op->getInvVarianceDesc()->getId() != DBN_node->getOp()->getInvVarianceDesc()->getId()!dact_op->getdXDesc()->getIsVirtual()num_peers > MAX_GPUS_PER_NODE_BWD || num_peers == 1deviceVer >= 1000 && (rtk()->getNvrtcVersion() < 12080)SGBN is not supported prior to cuda 11.8 with fp8 data. 12090 < 11080 && (GradientTensorDataType == CUDNN_DATA_FP8_E4M3 || GradientTensorDataType == CUDNN_DATA_FP8_E5M2)(GradientTensorDataType != CUDNN_DATA_HALF) && (GradientTensorDataType != CUDNN_DATA_FP8_E4M3) && (GradientTensorDataType != CUDNN_DATA_FLOAT) && (GradientTensorDataType != CUDNN_DATA_BFLOAT16) && (GradientTensorDataType != CUDNN_DATA_FP8_E5M2)(DaddInputTensorDataType != CUDNN_DATA_FLOAT) && (DaddInputTensorDataType != CUDNN_DATA_HALF) && (DaddInputTensorDataType != CUDNN_DATA_BFLOAT16) && (DaddInputTensorDataType != CUDNN_DATA_FP8_E5M2) && (DaddInputTensorDataType != CUDNN_DATA_FP8_E4M3)(DactInputTensorDataType != CUDNN_DATA_FLOAT) && (DactInputTensorDataType != CUDNN_DATA_HALF) && (DactInputTensorDataType != CUDNN_DATA_BFLOAT16) && (DactInputTensorDataType != CUDNN_DATA_FP8_E5M2) && (DactInputTensorDataType != CUDNN_DATA_FP8_E4M3)(GradientTensorDataType != CUDNN_DATA_FP8_E4M3) && (GradientTensorDataType != CUDNN_DATA_FP8_E5M2)(ForwardInputTensorDataType != CUDNN_DATA_FP8_E4M3) && (ForwardInputTensorDataType != CUDNN_DATA_FP8_E5M2)(GradientTensorDataType != CUDNN_DATA_HALF) && (GradientTensorDataType != CUDNN_DATA_FLOAT) && (GradientTensorDataType != CUDNN_DATA_BFLOAT16)(DaddInputTensorDataType != CUDNN_DATA_FLOAT) && (DaddInputTensorDataType != CUDNN_DATA_HALF) && (DaddInputTensorDataType != CUDNN_DATA_BFLOAT16)(DactInputTensorDataType != CUDNN_DATA_FLOAT) && (DactInputTensorDataType != CUDNN_DATA_HALF) && (DactInputTensorDataType != CUDNN_DATA_BFLOAT16)GradientTensorDataType != ForwardInputTensorDataTypenorm_op.getDBiasDesc()->getDataType() != CUDNN_DATA_FLOATnorm_op.getXDesc()->isNSpatialC_fullyPacked() != truenorm_op.getDyDesc()->isNSpatialC_fullyPacked() != truecalc_bwd_derived_params(this->getDeviceProp(), this->getTargetSMCount())calc_loops_needed()params.gmem_sums == nullptrnullptr == params.gmem_srcnullptr == params.gmem_dynullptr == params.gmem_scalenullptr == params.gmem_dstnullptr == params.gmem_dscalenullptr == params.gmem_dbias using T_ELEM = half; using T_ELEM = float; using T_ELEM = nv_fp8_e4m3; using T_ELEM = nv_fp8_e5m2; using T_ELEM = nv_bfloat16; using T_MATH = float; nhwc_batch_norm_bwdDBN_node == nullptrDBN_X_connections.size() != 1dx_connections.size() != 2DY_connections.size() != 15 != opSet.getOpCount()DBN_DX_desc->getIsVirtual()DBN_X_desc->getIsVirtual()DY_connections.size() > 1DBN_DY_desc->getIsVirtual()pw_node == nullptrXconnections.size() != 1bn_fwd_infer_node == nullptrmatch_pattern_when_non_fp8()match_pattern_when_fp8()match_pattern()}ȇ}}}}}}p}}}І}膸}}}}}}}}}}P}}}}}}}}}hЅ}腸}}}}}}}}}ǸǸǸǸǸǸǸǸǸǸǸǸ Ƹ Ƹ  @ N5cudnn6fusion16NormBackwardNodeEN5cudnn2bn16SNGBN_bwd_engineE!cuEqual(*static_cast(add_scalar), cuGet(1.f))!cuEqual(*static_cast(add_scalar), 1.f)!cuEqual(*static_cast(add_scalar), cuGet(1.f))add_scalar type is not expected!!cuSimilar(*static_cast(inv_col_scalar), 1.0 / matcher->getNumCols())!cuSimilar(*static_cast(inv_col_scalar), 1.0f / matcher->getNumCols())!cuSimilar(*static_cast(inv_col_scalar), cuGet(1.0f / matcher->getNumCols()))!cuSimilar(*static_cast(inv_col_scalar), cuGet(1.0f / matcher->getNumCols()))matcher->hasScale() && nullptr == gmem_scalematcher->hasBias() && nullptr == gmem_bias(!lnFwdParams.isRMSNorm) && (nullptr == gmem_mean)has_amax && nullptr == gmem_amaxgmem_Y_col != nullptr && nullptr == gmem_scale_colgmem_Y_col == nullptr && nullptr != gmem_scale_col(lnFwdParams.blockSize < 0) || (lnFwdParams.blockSize >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0])))lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::LayerNormBlockSMemImpl_t]->launchKernel( deviceId, dim3(rows), dim3(blkSize), clusterDim, dynamic_smem, stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::LayerNormRowReduceInToOutWarpWelford_t]->launchKernel( deviceId, dim3(div_up(rows, kBlockSize / kWarpSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::LayerNormWarpImplWelford_t]->launchKernel( deviceId, dim3(div_up(rows, kBlockSize / kWarpSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::LayerNormRowReduceInToTempWelford_t]->launchKernel( deviceId, blocks, threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::LayerNormRowReduceTempToOutWelford_t]->launchKernel( deviceId, dim3(rows), dim3(threads), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::LayerNormForwardUpdate_t]->launchKernel( deviceId, dim3(blocks), dim3(threads), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::BlockScaleNVFP4_t]->launchKernel( deviceId, dimGrid, dimBlock, clusterDim, 0, stream, arg_ptrs.data(), false)lnFwdParams.rtc[LayerNormFwdRTC_kernel_t::BlockScaleMxFP8_t]->launchKernel( deviceId, dimGrid, dimBlock, clusterDim, 0, stream, arg_ptrs.data(), false)(blk_size_idx < 0) || (blk_size_idx >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0])))calc_blk_num_fwd(cols, blkSize, isRMSNorm, deviceProp, blk_cnt)(dataType != CUDNN_DATA_HALF) && (dataType != CUDNN_DATA_FLOAT) && (dataType != CUDNN_DATA_BFLOAT16)(dataType == CUDNN_DATA_BFLOAT16) && !hardware_bfloat16_supported(deviceVer)(dataType == CUDNN_DATA_HALF) && !hardware_half_supported(deviceVer)layerNormFwd_checkIODataType(deviceVer, input_data_type)layerNormFwd_checkIODataType(deviceVer, weight_data_type)!hardware_fp4_supported(deviceVer)std::any_of(lnFwdParams.rtc.begin(), lnFwdParams.rtc.end(), [](const auto& rtc) { return rtc->getNvrtcVersion() < 12080; })layerNormFwd_checkIODataType(deviceVer, output_data_type)stream != exec_handle->streamIdexecuteInternalLauncher(lnFwdParams, var, opSet, required_workspace, stream, isTrain)_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo5beginE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo3endE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo6cbeginE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo4cendE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo6rbeginE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo4rendE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo7crbeginE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__45__cpo5crendE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__450_GLOBAL__N__0b29a531_17_layer_norm_fwd_cu_f81153f86ignoreE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__419piecewise_constructE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48in_placeE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__420unreachable_sentinelE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo4swapE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo9iter_moveE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo7advanceE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo5beginE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo3endE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo6cbeginE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo4cendE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo9iter_swapE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo4nextE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo4prevE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo4dataE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo5cdataE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo4sizeE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo5ssizeE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std6ranges3__45__cpo8distanceE_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f86thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqEnullptr == lnFwdParams.pointwise_add_for_scale_nodelnFwdParams.isBlockScaleOut && !hardware_block_scale_supported(deviceVer)layerNormFwd_checkDataType(deviceVer, lnFwdParams)layerNormFwd_checkProblemSupported( lnFwdParams.cols, lnFwdParams.blockSize, lnFwdParams.isRMSNorm, deviceProp)calc_blk_num_fwd(lnFwdParams.cols, kBlockSize, lnFwdParams.isRMSNorm, deviceProp, blk_cnt_base)calc_blk_num_fwd( lnFwdParams.cols, kBlockSizeSearchSpace[i], lnFwdParams.isRMSNorm, deviceProp, blk_cnt)layerNormFwd_setTensorIds(matcher, lnFwdParams, isTrain) using T_WFGeneric = WFGeneric< constexpr bool zeroCenteredGamma = constexpr bool zeroCenteredGammaCastBeforeAdd = using T_BatchIdxIter = BatchIdxIter; constexpr bool ROWWISE_QUANT = constexpr bool COLWISE_QUANT = getMostCompatibleHeaderBytes(cudnn::fusion::ATEX_ln_comp_bytes_version_map, lnFwdParams.rtc[i]->getNvrtcVersion(), comp_header_bytes)layerNormFwd_generate_full_kernel_string(lnFwdParams)layerNormFwd_set_runtime_compilation_flags(lnFwdParams, deviceProp)lnFwdParams.rtc[i]->compile( compilation_flags, lnFwdParams.useNvrtcSassPath, lnFwdParams.useNvrtcHiddenAPI)lnFwdParams.rtc[i]->loadModule() /*---------------------------------------------------------------------------------------------------------------------------------------------------- * Source integration from *https://gitlab-master.nvidia.com/dl/tensorflow/atex/-/blob/ln_vec_load/nv_ops/nv_norms/cc/kernels/fused_layer_norm_op.cu.cc * Note: T = T_ELEM and T_MATH(or U) = T_MATH * Changes: Status -> cudnnStatus_t * Status::OK() -> CUDNN_STATUS_SUCCESS * errors::Internal("Error msg") -> CUPRINTF("Error msg"); return CUDNN_STATUS_NOT_SUPPORTED; * CUDA_RETURN_IF_ERROR -> IRETF * gpuStream_t -> cudaStream_t *----------------------------------------------------------------------------------------------------------------------------------------------------*/ // fwd extern "C" __global__ void LayerNormBlockSMemImpl(const LayerNormFwdKernelParams kernelParams) { const T_IN* x = static_cast(kernelParams.x); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_WEIGHT* beta = static_cast(kernelParams.beta); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_OUT* y = static_cast(kernelParams.y); T_MATH* __restrict__ mean = static_cast(kernelParams.mean); T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); T_MATH* y_scale = static_cast(kernelParams.y_scale); T_MATH* y_scale_inv = static_cast(kernelParams.y_scale_inv); T_MATH* amax = static_cast(kernelParams.amax); T_WFOp op{cols, kernelParams.epsilon}; extern __shared__ __align__(sizeof(double)) unsigned char shared_buf[]; auto* buf = reinterpret_cast(shared_buf); const size_t tid = threadIdx.x; const size_t num_packs = cols / PackSize; T_MATH pack[PackSize]; size_t pack_id = tid; size_t data_offset; const bool fp8_out = (y_scale != nullptr); const bool has_scale_inv = (y_scale_inv != nullptr); const bool has_amax = (amax != nullptr); T_MATH y_scale_tmp = (fp8_out ? y_scale[0] : cuGet(1.f)); T_MATH amax_tmp = cuGet(0.f); T_BatchIdxIter batchIdxIter(blockIdx.x, gridDim.x); for (size_t row = blockIdx.x; row < rows; row += gridDim.x) { T_WFGeneric wf_thread; for (pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { data_offset = row * cols + pack_id * PackSize; CopyWithCast(x, data_offset, pack); for (size_t i = 0; i < PackSize; ++i) { buf[i * num_packs + pack_id] = pack[i]; op.Update(pack[i], wf_thread); } } T_WFGeneric wf_row = BlockAllReduce(wf_thread, true); T_MATH row_mean = wf_row.get_mean(); T_MATH row_inv_var = op.Finalize(wf_row); if (threadIdx.x == 0) { if (!isRMSNorm) { mean[row] = row_mean; } ivar[row] = row_inv_var; } pack_id = tid; size_t pack_offset; for (pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { for (size_t i = 0; i < PackSize; ++i) { pack[i] = (buf[i * num_packs + pack_id] - row_mean) * row_inv_var; } pack_offset = pack_id * PackSize; const int64_t gamma_beta_pack_offset = pack_offset + batchIdxIter.batchIdx * cols; T_MATH y_tmp[PackSize]; if (beta != nullptr) { CopyWithAffineAndCast(pack, gamma, gamma_beta_pack_offset, beta, gamma_beta_pack_offset, y_tmp, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else if (gamma != nullptr) { CopyWithDotAndCast( pack, gamma, gamma_beta_pack_offset, y_tmp, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else { CopyWithCast(pack, 0, y_tmp, 0); } if (fp8_out) { if (has_amax) { #pragma unroll for (int pack_idx = 0; pack_idx < PackSize; pack_idx++) { amax_tmp = fmaxf(amax_tmp, fabsf(y_tmp[pack_idx])); } } #pragma unroll for (int pack_idx = 0; pack_idx < PackSize; pack_idx++) { y_tmp[pack_idx] *= y_scale_tmp; } } CopyWithCuGetCast(y_tmp, 0, y, row * cols + pack_offset); } batchIdxIter.step(); } if (fp8_out) { if (has_amax) { amax_tmp = ReduceMax(amax_tmp, threadIdx.x / kWarpSize); if (threadIdx.x == 0) { atomicMax(reinterpret_cast(amax), __float_as_int(amax_tmp)); } } if (has_scale_inv && blockIdx.x == 0 && threadIdx.x == 0) { y_scale_inv[0] = cuDiv(cuGet(1.f), y_scale_tmp); } } } extern "C" __global__ void LayerNormWarpImplWelford(const LayerNormFwdKernelParams kernelParams, bool is_padding) { const T_IN* x = static_cast(kernelParams.x); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_WEIGHT* beta = static_cast(kernelParams.beta); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_OUT* y = static_cast(kernelParams.y); T_MATH* __restrict__ mean = static_cast(kernelParams.mean); T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); T_MATH* y_scale = static_cast(kernelParams.y_scale); T_MATH* y_scale_inv = static_cast(kernelParams.y_scale_inv); T_MATH* amax = static_cast(kernelParams.amax); T_WFOp op{cols, kernelParams.epsilon}; // Each thread works on kWorkPerThreadInWarp number of cols. constexpr size_t cols_per_thread = kWorkPerThreadInWarp; constexpr size_t num_packs = cols_per_thread / PackSize; const size_t lane_id = threadIdx.x % kWarpSize; constexpr size_t num_warps = kBlockSize / kWarpSize; const size_t local_warp_id = threadIdx.x / kWarpSize; const size_t warp_id = blockIdx.x * num_warps + local_warp_id; constexpr size_t thread_group_width = kWarpSize; T_MATH row_buf[cols_per_thread]; const bool fp8_out = (y_scale != nullptr); const bool has_scale_inv = (y_scale_inv != nullptr); const bool has_amax = (amax != nullptr); T_MATH y_scale_tmp = (fp8_out ? y_scale[0] : cuGet(1.f)); T_MATH amax_tmp = cuGet(0.f); T_BatchIdxIter batchIdxIter(warp_id, (gridDim.x * num_warps)); for (size_t row = warp_id; row < rows; row += gridDim.x * num_warps) { T_WFGeneric wf_thread; for (size_t pack_id = 0; pack_id < num_packs; ++pack_id) { const size_t col = (pack_id * thread_group_width + lane_id) * PackSize; const size_t pack_offset = pack_id * PackSize; const size_t data_offset = row * cols + col; if (!is_padding || col < cols) { CopyWithCast(x, data_offset, row_buf + pack_offset); for (size_t i = 0; i < PackSize; ++i) { op.Update(row_buf[pack_offset + i], wf_thread); } } else { for (size_t i = 0; i < PackSize; ++i) { row_buf[pack_offset + i] = 0; } } } T_WFGeneric wf_row = WelfordWarpReduce(wf_thread); T_MATH row_mean = wf_row.get_mean(); T_MATH row_inv_var = op.Finalize(wf_row); if (lane_id == 0) { if (!isRMSNorm) { mean[row] = row_mean; } ivar[row] = row_inv_var; } for (size_t i = 0; i < cols_per_thread; ++i) { row_buf[i] = (row_buf[i] - row_mean) * row_inv_var; } for (size_t i = 0; i < num_packs; ++i) { const size_t col = (i * thread_group_width + lane_id) * PackSize; const int64_t gamma_beta_pack_offset = col + batchIdxIter.batchIdx * cols; if (!is_padding || col < cols) { T_MATH y_tmp[PackSize]; if (beta != nullptr) { CopyWithAffineAndCast(row_buf + i * PackSize, gamma, gamma_beta_pack_offset, beta, gamma_beta_pack_offset, y_tmp, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else if (gamma != nullptr) { CopyWithDotAndCast(row_buf + i * PackSize, gamma, gamma_beta_pack_offset, y_tmp, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else { CopyWithCast(row_buf + i * PackSize, 0, y_tmp, 0); } if (fp8_out) { if (has_amax) { #pragma unroll for (int pack_idx = 0; pack_idx < PackSize; pack_idx++) { amax_tmp = fmaxf(amax_tmp, fabsf(y_tmp[pack_idx])); } } #pragma unroll for (int pack_idx = 0; pack_idx < PackSize; pack_idx++) { y_tmp[pack_idx] *= y_scale_tmp; } } CopyWithCuGetCast(y_tmp, 0, y, row * cols + col); } } batchIdxIter.step(); } if (fp8_out) { if (has_amax) { amax_tmp = ReduceMax(amax_tmp, local_warp_id); if (threadIdx.x == 0) { atomicMax(reinterpret_cast(amax), __float_as_int(amax_tmp)); } } if (has_scale_inv && blockIdx.x == 0 && threadIdx.x == 0) { y_scale_inv[0] = cuDiv(cuGet(1.f), y_scale_tmp); } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormRowReduceInToOutWarpWelford(const LayerNormFwdKernelParams kernelParams) { const T_IN* __restrict__ x = static_cast(kernelParams.x); const T_WEIGHT* __restrict__ gamma = static_cast(kernelParams.gamma); const T_WEIGHT* __restrict__ beta = static_cast(kernelParams.beta); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_OUT* __restrict__ y = static_cast(kernelParams.y); T_MATH* __restrict__ mean = static_cast(kernelParams.mean); T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); T_MATH* y_scale = static_cast(kernelParams.y_scale); T_MATH* y_scale_inv = static_cast(kernelParams.y_scale_inv); T_MATH* amax = static_cast(kernelParams.amax); T_WFOp op{cols, kernelParams.epsilon}; const size_t tid = threadIdx.x % kWarpSize; const size_t num_warps = kBlockSize / kWarpSize; const size_t local_warp_id = threadIdx.x / kWarpSize; const size_t warp_id = blockIdx.x * num_warps + local_warp_id; const bool fp8_out = (y_scale != nullptr); const bool has_scale_inv = (y_scale_inv != nullptr); const bool has_amax = (amax != nullptr); T_MATH y_scale_tmp = (fp8_out ? y_scale[0] : cuGet(1.f)); T_MATH amax_tmp = cuGet(0.f); T_BatchIdxIter batchIdxIter(warp_id, (gridDim.x * num_warps)); for (size_t row = warp_id; row < rows; row += gridDim.x * num_warps) { T_WFGeneric wf_thread; for (size_t i = tid; i < cols; i += kWarpSize) { op.Update(x, row, i, wf_thread); } T_WFGeneric wf_row = WelfordWarpReduce(wf_thread); T_MATH row_mean = wf_row.get_mean(); T_MATH row_inv_var = op.Finalize(wf_row); if (tid == 0) { if (!isRMSNorm) { mean[row] = row_mean; } ivar[row] = row_inv_var; } T_MATH curr; for (size_t col = tid; col < cols; col += kWarpSize) { size_t idx = row * cols + col; const int64_t gamma_beta_id = col + batchIdxIter.batchIdx * cols; T_MATH gamma_i = cuGet(1.f); if (gamma != nullptr) { if (zeroCenteredGamma) { if (zeroCenteredGammaCastBeforeAdd) { gamma_i = cuGet(gamma[gamma_beta_id]) + cuGet(1.f); } else { gamma_i = cuGet(gamma[gamma_beta_id] + cuGet(1.f)); } } else { gamma_i = cuGet(gamma[gamma_beta_id]); } } T_MATH beta_i = (beta != nullptr ? static_cast(beta[gamma_beta_id]) : static_cast(0.f)); curr = (static_cast(x[idx]) - row_mean) * row_inv_var * gamma_i + beta_i; if (fp8_out) { if (has_amax) { amax_tmp = fmaxf(amax_tmp, fabsf(curr)); } curr *= y_scale_tmp; } y[idx] = cuGet(curr); } batchIdxIter.step(); } if (fp8_out) { if (has_amax) { amax_tmp = ReduceMax(amax_tmp, local_warp_id); if (threadIdx.x == 0) { atomicMax(reinterpret_cast(amax), __float_as_int(amax_tmp)); } } if (has_scale_inv && blockIdx.x == 0 && threadIdx.x == 0) { y_scale_inv[0] = cuDiv(cuGet(1.f), y_scale_tmp); } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormRowReduceInToTempWelford(const LayerNormFwdKernelParams kernelParams, T_MATH* __restrict__ temp_mean, T_MATH* __restrict__ temp_m2, T_MATH* __restrict__ temp_count) { const T_IN* x = static_cast(kernelParams.x); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_WFOp op{cols, kernelParams.epsilon}; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = cols / PackSize; for (size_t row_idx = blockIdx.y; row_idx < rows; row_idx += gridDim.y) { T_WFGeneric wf_partial; for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { T_MATH pack[PackSize]; CopyWithCast(x, row_idx * cols + pack_id * PackSize, pack); for (size_t i = 0; i < PackSize; ++i) { op.Update(pack[i], wf_partial); } } T_WFGeneric wf_block = BlockAllReduce(wf_partial, false); if (threadIdx.x == 0) { if (!isRMSNorm) { temp_mean[row_idx * gridDim.x + blockIdx.x] = wf_block.get_mean(); } temp_m2[row_idx * gridDim.x + blockIdx.x] = wf_block.m2; temp_count[row_idx * gridDim.x + blockIdx.x] = wf_block.n; } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormRowReduceTempToOutWelford(const LayerNormFwdKernelParams kernelParams, const size_t blocks_per_row, const T_MATH* __restrict__ temp_mean, const T_MATH* __restrict__ temp_m2, const T_MATH* __restrict__ temp_count) { const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_MATH* __restrict__ mean = static_cast(kernelParams.mean); T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); T_WFOp op{cols, kernelParams.epsilon}; for (size_t row = blockIdx.x; row < rows; row += gridDim.x) { T_WFGeneric wf_partial; for (size_t i = threadIdx.x; i < blocks_per_row; i += kBlockSize) { size_t idx = row * blocks_per_row + i; T_WFGeneric wf_local; wf_local.m2 = temp_m2[idx]; wf_local.n = temp_count[idx]; if (!isRMSNorm) { wf_local.set_mean(temp_mean[idx]); } wf_partial = T_WFGeneric()(wf_local, wf_partial); } T_WFGeneric wf_block = BlockAllReduce(wf_partial, false); if (threadIdx.x == 0) { if constexpr (!isRMSNorm) { mean[row] = wf_block.get_mean(); } ivar[row] = op.Finalize(wf_block); } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormForwardUpdate(const LayerNormFwdKernelParams kernelParams) { const T_IN* x = static_cast(kernelParams.x); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_WEIGHT* beta = static_cast(kernelParams.beta); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_OUT* y = static_cast(kernelParams.y); T_MATH* mean = static_cast(kernelParams.mean); T_MATH* ivar = static_cast(kernelParams.ivar); T_MATH* y_scale = static_cast(kernelParams.y_scale); T_MATH* y_scale_inv = static_cast(kernelParams.y_scale_inv); T_MATH* amax = static_cast(kernelParams.amax); T_YOp op{mean, ivar}; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = cols / PackSize; const bool fp8_out = (y_scale != nullptr); const bool has_scale_inv = (y_scale_inv != nullptr); const bool has_amax = (amax != nullptr); T_MATH y_scale_tmp = (fp8_out ? y_scale[0] : cuGet(1.f)); T_MATH amax_tmp = cuGet(0.f); T_BatchIdxIter batchIdxIter(blockIdx.y, gridDim.y); for (size_t row_idx = blockIdx.y; row_idx < rows; row_idx += gridDim.y) { for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { T_MATH pack[PackSize]; const size_t x_pack_offset = pack_id * PackSize; const int64_t gamma_beta_pack_offset = x_pack_offset + batchIdxIter.batchIdx * cols; CopyWithCast(x, row_idx * cols + x_pack_offset, pack); for (size_t i = 0; i < PackSize; ++i) { pack[i] = op.ComputePartial(pack[i], row_idx); } T_MATH y_tmp[PackSize]; if (beta != nullptr) { CopyWithAffineAndCast(pack, gamma, gamma_beta_pack_offset, beta, gamma_beta_pack_offset, y_tmp, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else if (gamma != nullptr) { CopyWithDotAndCast( pack, gamma, gamma_beta_pack_offset, y_tmp, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else { CopyWithCast(pack, 0, y_tmp, 0); } if (fp8_out) { if (has_amax) { #pragma unroll for (int pack_idx = 0; pack_idx < PackSize; pack_idx++) { amax_tmp = fmaxf(amax_tmp, fabsf(y_tmp[pack_idx])); } } #pragma unroll for (int pack_idx = 0; pack_idx < PackSize; pack_idx++) { y_tmp[pack_idx] *= y_scale_tmp; } } CopyWithCuGetCast(y_tmp, 0, y, row_idx * cols + x_pack_offset); } batchIdxIter.step(); } if (fp8_out) { if (has_amax) { amax_tmp = ReduceMax(amax_tmp, threadIdx.x / kWarpSize); if (threadIdx.x == 0) { atomicMax(reinterpret_cast(amax), __float_as_int(amax_tmp)); } } if (has_scale_inv && blockIdx.x == 0 && blockIdx.y == 0 && threadIdx.x == 0) { y_scale_inv[0] = cuDiv(cuGet(1.f), y_scale_tmp); } } } // Support 1d 1x1x, 1d 2x2x, support N up to 2097120 (=65536*32-31-1) // either calculate 1D rowwise or 1D colwise sf extern "C" __global__ void BlockScaleMxFP8(const T_MATH* matrix, T_OUT* quantized_matrix_rowwise, W_TYPE* scaling_factors_rowwise, T_OUT* quantized_matrix_colwise, W_TYPE* scaling_factors_colwise, int M, int N) { int blockRow = blockIdx.y; int blockCol = blockIdx.x; int threadRow = threadIdx.y; int threadCol = threadIdx.x; static constexpr float FP8_MAX = std::is_same::value ? 57344.f : 448.f; // Shared memory for loading block data and storing the maximum values of each row in smem[][BLOCK_SIZE] and // the maximum values of each column in smem[BLOCK_SIZE][] +1 in col dim also to avoid bank conflict __shared__ float smem[BLOCK_SIZE + 1][BLOCK_SIZE + 1]; // Load data into shared memory // global row and col indices to locate an element in output matrix for rowwise quantization int globalRow = blockRow * BLOCK_SIZE + threadRow; int globalCol = blockCol * BLOCK_SIZE + threadCol; // global row and col indices to locate an element in output matrix for colwise quantization int globalRow_Colwise = blockRow * BLOCK_SIZE + threadCol; int globalCol_Colwise = blockCol * BLOCK_SIZE + threadRow; if (globalRow < M && globalCol < N) { float value = matrix[globalRow * N + globalCol]; smem[threadRow][threadCol] = fabsf(value); } __syncthreads(); if (ROWWISE_QUANT) { T_MATH my_value_rowwise_amax = smem[threadRow][threadCol]; T_MATH my_warp_rowwise_amax = warp_reduce_max(my_value_rowwise_amax); if (threadCol == 0) { if (globalRow < M) { // special handling needed for inf case: e8m0 cannot represent inf, so we need to store inf info in // smem(float) if (isinf(my_warp_rowwise_amax)) smem[threadRow][BLOCK_SIZE] = my_warp_rowwise_amax; else smem[threadRow][BLOCK_SIZE] = computeScalingFactor(my_warp_rowwise_amax, FP8_MAX); set_scaling_factor(smem[threadRow][BLOCK_SIZE], scaling_factors_rowwise[globalRow * ((N + BLOCK_SIZE - 1) / BLOCK_SIZE) + blockCol]); } } } if (COLWISE_QUANT) { T_MATH my_value_colwise_amax = smem[threadCol][threadRow]; T_MATH my_warp_colwise_amax = warp_reduce_max(my_value_colwise_amax); if (threadCol == 0) { if (globalCol_Colwise < N) { // special handling needed for inf case if (isinf(my_warp_colwise_amax)) smem[BLOCK_SIZE][threadRow] = my_warp_colwise_amax; else smem[BLOCK_SIZE][threadRow] = computeScalingFactor(my_warp_colwise_amax, FP8_MAX); int idx = TRANSPOSE ? (globalCol_Colwise * ((M + BLOCK_SIZE - 1) / BLOCK_SIZE) + blockRow) : (blockRow * N + globalCol_Colwise); set_scaling_factor(smem[BLOCK_SIZE][threadRow], scaling_factors_colwise[idx]); } } } __syncthreads(); if (ROWWISE_QUANT) { if (globalRow < M && globalCol < N) { if (isinf(smem[threadRow][BLOCK_SIZE])) quantized_matrix_rowwise[globalRow * N + globalCol] = cuGet(smem[threadRow][BLOCK_SIZE]); else quantized_matrix_rowwise[globalRow * N + globalCol] = cuGet( matrix[globalRow * N + globalCol] / e8m0_to_float(float_to_e8m0(smem[threadRow][BLOCK_SIZE]))); } } if (COLWISE_QUANT) { if (globalRow_Colwise < M && globalCol_Colwise < N) { int idx = TRANSPOSE ? (globalCol_Colwise * M + globalRow_Colwise) : (globalRow_Colwise * N + globalCol_Colwise); if (isinf(smem[BLOCK_SIZE][threadRow])) quantized_matrix_colwise[idx] = cuGet(smem[BLOCK_SIZE][threadRow]); else quantized_matrix_colwise[idx] = cuGet(matrix[globalRow_Colwise * N + globalCol_Colwise] / e8m0_to_float(float_to_e8m0(smem[BLOCK_SIZE][threadRow]))); } } } // Support 1d 1x1x, support N up to 1048559 (=65536*16-16-1) // Calculate 1D rowwise sf extern "C" __global__ void BlockScaleNVFP4(const T_MATH* matrix, T_OUT* quantized_matrix, W_TYPE* scaling_factors, int M, int N) { const int blockRow = blockIdx.y; const int blockCol = blockIdx.x; const int threadRow = threadIdx.y; const int threadCol = threadIdx.x; static constexpr float max_nv_fp4_e2m1 = 6.f; const int globalRow = blockRow * BLOCK_SIZE + threadRow; const int globalCol = blockCol * BLOCK_SIZE + threadCol; const int globalIndex = globalRow * N + globalCol; const int laneId = (threadIdx.x + threadIdx.y * blockDim.x) % WARP_SIZE; if (globalRow >= M || globalCol >= N) { return; } T_MATH local_val = matrix[globalIndex]; T_MATH my_row_amax = fabs(local_val); my_row_amax = warp_reduce_max(my_row_amax); T_MATH cur_scaling_factor = 0.f; if (threadCol == 0) { // Since e4m3 cannot represent inf, we need to store inf with float type if (isinf(my_row_amax)) { cur_scaling_factor = my_row_amax; } else { cur_scaling_factor = computeScalingFactor(my_row_amax, max_nv_fp4_e2m1); } set_scaling_factor(cur_scaling_factor, scaling_factors[globalRow * ((N + BLOCK_SIZE - 1) / BLOCK_SIZE) + blockCol]); } // BLOCK_SIZE should be 16 cur_scaling_factor = __shfl_sync(0xFFFFFFFF, cur_scaling_factor, laneId & BLOCK_SIZE); T_MATH cur_output_math = 0.f; if (isinf(cur_scaling_factor)) { cur_output_math = cur_scaling_factor; } else { cur_output_math = local_val / cur_scaling_factor; } T_MATH neighbor_output_math = __shfl_xor_sync(0xFFFFFFFF, cur_output_math, 1); if (threadCol % 2 == 0) { quantized_matrix[globalIndex / 2] = cuGet(make_float2(cuGet(cur_output_math), cuGet(neighbor_output_math))); } } nullptr == gmem_Xnullptr == gmem_inv_varnullptr == gmem_Y_scalenullptr == gmem_Y_scale_invnullptr == gmem_scale_rownullptr == gmem_Y(blk_cnt <= 0)exec_handle == nullptrwar_bug5088469nv_bfloat16nv_fp8_e4m3nv_fp8_e5m2nv_fp4x2_e2m1 using T_IN = using T_WEIGHT = using T_MATH = using T_WFOp = WFOp< constexpr int BlockSize = constexpr int PackSize = %lu constexpr int BatchSize = constexpr int SeqLen = constexpr bool nvfp4_out = using T_OUT = using T_YOp = YOp< constexpr int BLOCK_SIZE = using W_TYPE = uint8_t; using W_TYPE = nv_fp8_e4m3; constexpr bool TRANSPOSE = constexpr int WARP_SIZE = (last_id < 0)ҸҸ ӸPӸӸp  using W_TYPE = LayerNormBlockSMLayerNormWarpImpLayerNormRowReduceInToOutWarpWelceInToTempWelforceTempToOutWelfoLayerNormForwardlayerNormFwd_compile(*this->getDeviceProp(), lnFwdParams, fromSerialization, fromKernelCache)layerNormFwd_execute_internal_impl(var, stream, lnFwdParams, opSet, required_workspace, false)LayerNormfwd_calculate_workspace_size(lnFwdParams, required_workspace, false)layerNormFwd_isCompatibleVariantPack(var, lnFwdParams, getTensorAlignment())_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo5beginE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo3endE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo6cbeginE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo4cendE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo6rbeginE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo4rendE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo7crbeginE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__45__cpo5crendE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__463_GLOBAL__N__3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1656ignoreE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__419piecewise_constructE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48in_placeE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__420unreachable_sentinelE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo4swapE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo9iter_moveE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo7advanceE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo5beginE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo3endE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo6cbeginE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo4cendE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo9iter_swapE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo4nextE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo4prevE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo4dataE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo5cdataE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo4sizeE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo5ssizeE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std6ranges3__45__cpo8distanceE_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1656thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqElnFwdParams.blockSize >= int(sizeof(blockSize_opts) / sizeof(blockSize_opts[0]))layerNormFwd_initSupported(deviceProp, opSet, lnFwdParams, false)resize_kernel_list_size(activatedKernelCount)(this->getDeviceProp()->deviceVer >= 1000) && (lastActiveRTCKernelIndex >= 0) && (lnFwdParams.rtc[lastActiveRTCKernelIndex]->getNvrtcVersion() < 12080)(kernelCount() < activatedKernelCount)lnFwdParams.rtc[i]->loadDLL()N5cudnn3cnn23LayerNormFwdInferEngineElayerNormFwd_execute_internal_impl(var, stream, lnFwdParams, opSet, required_workspace, true)LayerNormfwd_calculate_workspace_size(lnFwdParams, required_workspace, true)_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo5beginE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo3endE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo6cbeginE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo4cendE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo6rbeginE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo4rendE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo7crbeginE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__45__cpo5crendE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__463_GLOBAL__N__1395949a_30_layer_norm_fwd_train_engine_cu_9199a8186ignoreE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__419piecewise_constructE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48in_placeE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__420unreachable_sentinelE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo4swapE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo9iter_moveE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo7advanceE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo5beginE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo3endE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo6cbeginE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo4cendE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo9iter_swapE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo4nextE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo4prevE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo4dataE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo5cdataE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo4sizeE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo5ssizeE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std6ranges3__45__cpo8distanceE_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8186thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqElayerNormFwd_initSupported(deviceProp, opSet, lnFwdParams, true)N5cudnn3cnn23LayerNormFwdTrainEngineEnullptr == gmem_dYnullptr == gmem_dX using T_DvarOp = DvarOp< using T_DmeanOp = DmeanOp< using T_DxOp = DxOp< constexpr int Unroll_BS = LayerNormGradBetaGammaLayerNormGradBlockSMemImplLayerNormRowReduceInToOutWarpLayerNormUpdateLayerNormGradWarpImplLayerNormRowReduceInToTempLayerNormRowReduceTempToOutLayerNormBackwardUpdatelnBwdParams.rtc[i]->loadDLL()tensor_id_and_check_align.second && mod(reinterpret_cast(var.get_user_ptrs()[idx]), align) != 0norm_op.hasScaleDesc() != norm_op.hasDScaleDesc()norm_op.hasDBiasDesc() && !norm_op.hasDScaleDesc()(lnBwdParams.pack_size_idx < 0) || (lnBwdParams.pack_size_idx >= 3)lnBwdParams.pointwise_add_for_scale_node == nullptr(!lnBwdParams.isRMSNorm) && (nullptr == gmem_mean)norm_op.hasDScaleDesc() && nullptr == gmem_dScalenorm_op.hasDBiasDesc() && nullptr == gmem_dBiaslnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormGradBetaGamma_t]->launchKernel( deviceId, dim3(div_up(D, kBlockSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormGradBetaGammaInToTemp_t]->launchKernel( deviceId, dim3(blocks), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormGradBetaGammaTempToOut_t]->launchKernel( deviceId, div_up(D, kBlockSize), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)(lnBwdParams.blockSize < 0) || (lnBwdParams.blockSize >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0])))lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormRowReduceInToOutWarp_t]->launchKernel( deviceId, dim3(div_up(N, kBlockSize / kWarpSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormUpdate_t]->launchKernel( deviceId, dim3(div_up(N * D, kBlockSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormGradWarpImpl_t]->launchKernel( deviceId, dim3(div_up(N, kBlockSize / kWarpSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormRowReduceInToTemp_t]->launchKernel( deviceId, blocks, threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormRowReduceTempToOut_t]->launchKernel( deviceId, dim3(N), threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)lnBwdParams.rtc[LayerNormBwdRTC_kernel_t::LayerNormBackwardUpdate_t]->launchKernel( deviceId, blocks, threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)(lnBwdParams.inputType != CUDNN_DATA_HALF) && (lnBwdParams.inputType != CUDNN_DATA_FLOAT) && (lnBwdParams.inputType != CUDNN_DATA_BFLOAT16)(lnBwdParams.outputType != CUDNN_DATA_HALF) && (lnBwdParams.outputType != CUDNN_DATA_FLOAT) && (lnBwdParams.outputType != CUDNN_DATA_BFLOAT16)(lnBwdParams.weightType != CUDNN_DATA_HALF) && (lnBwdParams.weightType != CUDNN_DATA_FLOAT) && (lnBwdParams.weightType != CUDNN_DATA_BFLOAT16)executeInternalLauncher(lnBwdParams, var, opSet, required_workspace, stream)calc_blk_num_bwd(cols, blkSize, deviceProp, blk_cnt)layerNormBwd_checkIODataType(deviceVer, input_data_type)norm_op.getDxDesc()->getDataType() != input_data_typelayerNormBwd_checkIODataType(deviceVer, output_data_type)layerNormBwd_checkIODataType(deviceVer, weight_data_type)norm_op.getScaleDesc()->getDataType() != lnBwdParams.addOneDataTypenorm_op.getScaleDesc()->getDataType() != weight_data_typenorm_op.hasDScaleDesc() && norm_op.getDScaleDesc()->getDataType() != weight_data_typenorm_op.hasDBiasDesc() && (norm_op.getDBiasDesc()->getDataType() != weight_data_type)(!lnBwdParams.isRMSNorm) && (norm_op.getMeanDesc()->getDataType() != CUDNN_DATA_FLOAT)_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo5beginE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo3endE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo6cbeginE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo4cendE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo6rbeginE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo4rendE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo7crbeginE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__45__cpo5crendE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__457_GLOBAL__N__5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb36ignoreE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__419piecewise_constructE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48in_placeE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__420unreachable_sentinelE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo4swapE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo9iter_moveE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo7advanceE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo5beginE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo3endE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo6cbeginE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo4cendE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo9iter_swapE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo4nextE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo4prevE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo4dataE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo5cdataE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo4sizeE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo5ssizeE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std6ranges3__45__cpo8distanceE_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb36thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqE constexpr int32_t BlockSize = constexpr int32_t PackSize = constexpr size_t ColsPerThread = getMostCompatibleHeaderBytes(cudnn::fusion::ATEX_ln_comp_bytes_version_map, lnBwdParams.rtc[i]->getNvrtcVersion(), comp_header_bytes)LayerNormGradBetaGammaInToTempLayerNormGradBetaGammaTempToOutlayerNormBwd_generate_full_kernel_string(lnBwdParams)layerNormBwd_set_runtime_compilation_flags(lnBwdParams, deviceProp)lnBwdParams.rtc[i]->loadModule()lnBwdParams.rtc[i]->compile( compilation_flags, lnBwdParams.useNvrtcSassPath, lnBwdParams.useNvrtcHiddenAPI)norm_op.hasPeerStatDescVector()lnBwdParams.blockSize >= int(sizeof(blockSize_opts) / sizeof(blockSize_opts[0]))layerNormBwd_checkDataType(this->getDeviceProp()->deviceVer, norm_op, lnBwdParams)layer_norm::inferBackwardNormSizes(norm_op, rows, cols, batchSize, lnBwdParams.isAdaLN, isBatchFirst)layerNormBwd_checkProblemSupportedBwd(lnBwdParams.cols, lnBwdParams.blockSize, deviceProp)calc_blk_num_bwd(cols, kBlockSize, deviceProp, blk_cnt_base)calc_blk_num_bwd(cols, kBlockSizeSearchSpace[i], deviceProp, blk_cnt)(this->getDeviceProp()->deviceVer >= 1000) && (lastActiveRTCKernelIndex >= 0) && (lnBwdParams.rtc[lastActiveRTCKernelIndex]->getNvrtcVersion() < 12080) extern "C" __global__ void LayerNormGradWarpImpl(const LayerNormBwdKernelParams kernelParams, bool is_padding) { const T_IN* x = static_cast(kernelParams.x); T_IN* dx = static_cast(kernelParams.dx); const T_OUT* dy = static_cast(kernelParams.dy); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_MATH* mean = static_cast(kernelParams.mean); const T_MATH* ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_DvarOp dvar_op{gamma, x, ivar, mean, cols}; T_DmeanOp dmean_op{gamma, x, ivar, mean, cols}; constexpr size_t num_packs = ColsPerThread / PackSize; const size_t lane_id = threadIdx.x % kWarpSize; constexpr size_t num_warps = kBlockSize / kWarpSize; const size_t local_warp_id = threadIdx.x / kWarpSize; const size_t warp_id = blockIdx.x * num_warps + local_warp_id; constexpr size_t thread_group_width = kWarpSize; T_MATH buf_x[ColsPerThread]; T_MATH buf_dy_dot_gamma[ColsPerThread]; T_MATH one_over_cols = static_cast(1.0 / cols); T_BatchIdxIter batchIdxIter(warp_id, (gridDim.x * num_warps)); for (size_t k = warp_id; k < rows; k += gridDim.x * num_warps) { T_MATH row_ivar = ivar[k]; T_MATH row_mean = cuGet(0); if constexpr (!isRMSNorm) { row_mean = mean[k]; } T_MATH partial_sum_dvar = 0; T_MATH partial_sum_dmu = 0; for (size_t pack_id = 0; pack_id < num_packs; ++pack_id) { const size_t col = (pack_id * thread_group_width + lane_id) * PackSize; const size_t pack_offset = pack_id * PackSize; const int64_t gamma_pack_offset = col + batchIdxIter.batchIdx * cols; const size_t data_offset = k * cols + col; if (!is_padding || col < cols) { CopyWithCast(x, data_offset, buf_x + pack_offset); CopyWithCast(dy, data_offset, buf_dy_dot_gamma + pack_offset); if (gamma != nullptr) { CopyWithDotAndCast(buf_dy_dot_gamma + pack_offset, gamma, gamma_pack_offset, buf_dy_dot_gamma + pack_offset, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } for (size_t i = 0; i < PackSize; ++i) { T_MATH x = buf_x[pack_offset + i]; T_MATH dy_dot_gamma = buf_dy_dot_gamma[pack_offset + i]; partial_sum_dvar += dvar_op.Compute(x, dy_dot_gamma, k); if constexpr (!isRMSNorm) { partial_sum_dmu += dmean_op.Compute(dy_dot_gamma, k); } } } else { for (size_t i = 0; i < PackSize; ++i) { buf_x[pack_offset + i] = 0; buf_dy_dot_gamma[pack_offset + i] = 0; } } } batchIdxIter.step(); T_MATH sum = warpReduceSum(partial_sum_dvar); T_MATH dldvar = dvar_op.Finalize(sum); T_MATH dldmu = cuGet(0); if constexpr (!isRMSNorm) { sum = warpReduceSum(partial_sum_dmu); dldmu = dmean_op.Finalize(sum); } for (size_t i = 0; i < ColsPerThread; ++i) { if constexpr (!isRMSNorm) { buf_x[i] = (2.f * (buf_x[i] - row_mean) * dldvar + dldmu) * one_over_cols; } else { buf_x[i] = (2.f * buf_x[i] * dldvar) * one_over_cols; } buf_dy_dot_gamma[i] = buf_dy_dot_gamma[i] * row_ivar; buf_x[i] += buf_dy_dot_gamma[i]; } for (size_t i = 0; i < num_packs; ++i) { const size_t col = (i * thread_group_width + lane_id) * PackSize; if (!is_padding || col < cols) { CopyWithCast(buf_x + i * PackSize, 0, dx, k * cols + col); } } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormRowReduceInToOutWarp(const LayerNormBwdKernelParams kernelParams, T_MATH* __restrict__ temp_dVar, T_MATH* __restrict__ temp_dMu) { const T_OUT* __restrict__ dy = static_cast(kernelParams.dy); const T_IN* x = static_cast(kernelParams.x); const T_MATH* mean = static_cast(kernelParams.mean); const T_MATH* ivar = static_cast(kernelParams.ivar); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_DvarOp dvar_op{gamma, x, ivar, mean, cols}; T_DmeanOp dmean_op{gamma, x, ivar, mean, cols}; const size_t tid = threadIdx.x % kWarpSize; const size_t num_warps = kBlockSize / kWarpSize; const size_t local_warp_id = threadIdx.x / kWarpSize; const size_t warp_id = blockIdx.x * num_warps + local_warp_id; T_BatchIdxIter batchIdxIter(warp_id, (gridDim.x * num_warps)); for (size_t k = warp_id; k < rows; k += gridDim.x * num_warps) { T_MATH partial_sum_dvar = 0; T_MATH partial_sum_dmu = 0; for (size_t i = tid; i < cols; i += kWarpSize) { partial_sum_dvar += dvar_op.Compute(dy, k, i, batchIdxIter.batchIdx * cols); if constexpr (!isRMSNorm) { partial_sum_dmu += dmean_op.Compute(dy, k, i, batchIdxIter.batchIdx * cols); } } T_MATH sum = warpReduceSum(partial_sum_dvar); if (tid == 0) { temp_dVar[k] = dvar_op.Finalize(sum); } if constexpr (!isRMSNorm) { sum = warpReduceSum(partial_sum_dmu); if (tid == 0) { temp_dMu[k] = dmean_op.Finalize(sum); } } batchIdxIter.step(); } } extern "C" __global__ __launch_bounds__(1024) void LayerNormBackwardUpdate(const LayerNormBwdKernelParams kernelParams, const T_MATH* temp_dVar, const T_MATH* temp_dMu) { const T_IN* x = static_cast(kernelParams.x); T_IN* dx = static_cast(kernelParams.dx); const T_OUT* dy = static_cast(kernelParams.dy); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_MATH* mean = static_cast(kernelParams.mean); const T_MATH* ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_DxOp dx_op{x, mean, ivar, gamma, temp_dVar, temp_dMu, cols}; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = cols / PackSize; T_BatchIdxIter batchIdxIter(blockIdx.y, gridDim.y); for (size_t row_idx = blockIdx.y; row_idx < rows; row_idx += gridDim.y) { for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { T_MATH pack_x[PackSize]; T_MATH pack_dy[PackSize]; const size_t pack_offset = pack_id * PackSize; const size_t data_offset = pack_offset + row_idx * cols; const int64_t gamma_pack_offset = pack_offset + batchIdxIter.batchIdx * cols; CopyWithCast(x, data_offset, pack_x); CopyWithCast(dy, data_offset, pack_dy); for (size_t i = 0; i < PackSize; ++i) { pack_dy[i] = dx_op.ComputePartial0(pack_dy[i], row_idx); pack_x[i] = dx_op.ComputePartial1(pack_x[i], row_idx); } if (gamma != nullptr) { CopyWithAffineAndCast(pack_dy, gamma, gamma_pack_offset, pack_x, 0, dx, data_offset, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } else { CopyWithAddAndCast(pack_dy, pack_x, 0, dx, data_offset); } } batchIdxIter.step(); } } extern "C" __global__ void LayerNormGradBlockSMemImpl(const LayerNormBwdKernelParams kernelParams) { const T_IN* x = static_cast(kernelParams.x); T_IN* dx = static_cast(kernelParams.dx); const T_OUT* dy = static_cast(kernelParams.dy); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_MATH* mean = static_cast(kernelParams.mean); const T_MATH* ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_DvarOp dvar_op{gamma, x, ivar, mean, cols}; T_DmeanOp dmean_op{gamma, x, ivar, mean, cols}; extern __shared__ __align__(sizeof(double)) unsigned char grad_shared_buf[]; auto* buf_x = reinterpret_cast(grad_shared_buf); auto* buf_dy_dot_gamma = buf_x + cols; const size_t tid = threadIdx.x; const size_t num_packs = cols / PackSize; const T_MATH one_over_cols = static_cast(1.0) / static_cast(cols); T_MATH x_pack[PackSize]; T_MATH dy_pack[PackSize]; T_BatchIdxIter batchIdxIter(blockIdx.x, gridDim.x); for (size_t row = blockIdx.x; row < rows; row += gridDim.x) { T_MATH partial_sum_dvar = 0; T_MATH partial_sum_dmu = 0; const T_MATH row_mean = (!isRMSNorm) ? mean[row] : cuGet(0); const T_MATH row_inv_var = ivar[row]; for (size_t pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { const size_t data_offset = row * cols + pack_id * PackSize; const int64_t gamma_pack_offset = pack_id * PackSize + batchIdxIter.batchIdx * cols; CopyWithCast(x, data_offset, x_pack); CopyWithCast(dy, data_offset, dy_pack); if (gamma != nullptr) { CopyWithDotAndCast( dy_pack, gamma, gamma_pack_offset, dy_pack, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } for (size_t i = 0; i < PackSize; ++i) { const size_t buf_offset = i * num_packs + pack_id; T_MATH x = x_pack[i]; T_MATH dy_dot_gamma = dy_pack[i]; buf_x[buf_offset] = x; buf_dy_dot_gamma[buf_offset] = dy_dot_gamma; partial_sum_dvar += dvar_op.Compute(x, dy_dot_gamma, row); if constexpr (!isRMSNorm) { partial_sum_dmu += dmean_op.Compute(dy_dot_gamma, row); } } } T_MATH dldvar = blockReduceSum(partial_sum_dvar); T_MATH dldmu = cuGet(0); if constexpr (!isRMSNorm) { dldmu = blockReduceSum(partial_sum_dmu); } for (size_t pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { for (size_t i = 0; i < PackSize; ++i) { const size_t buf_offset = i * num_packs + pack_id; if constexpr (!isRMSNorm) { x_pack[i] = (2 * (buf_x[buf_offset] - row_mean) * dldvar + dldmu) * one_over_cols + buf_dy_dot_gamma[buf_offset] * row_inv_var; } else { x_pack[i] = 2 * (buf_x[buf_offset]) * dldvar * one_over_cols + buf_dy_dot_gamma[buf_offset] * row_inv_var; } } CopyWithCast(x_pack, 0, dx, row * cols + pack_id * PackSize); } batchIdxIter.step(); } } extern "C" __global__ __launch_bounds__(1024) void LayerNormRowReduceInToTemp(const LayerNormBwdKernelParams kernelParams, T_MATH* __restrict__ temp_dl_dvars, T_MATH* __restrict__ temp_dl_dmus) { const T_IN* x = static_cast(kernelParams.x); T_IN* dx = static_cast(kernelParams.dx); const T_OUT* dy = static_cast(kernelParams.dy); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_MATH* mean = static_cast(kernelParams.mean); const T_MATH* ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_DvarOp dvar_op{gamma, x, ivar, mean, cols}; T_DmeanOp dmean_op{gamma, x, ivar, mean, cols}; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = cols / PackSize; T_BatchIdxIter batchIdxIter(blockIdx.y, gridDim.y); for (size_t row_idx = blockIdx.y; row_idx < rows; row_idx += gridDim.y) { T_MATH partial_sum_dvar = 0; T_MATH partial_sum_dmu = 0; for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { T_MATH pack_x[PackSize]; T_MATH pack_dy[PackSize]; const size_t data_offset = row_idx * cols + pack_id * PackSize; const int64_t gamma_pack_offset = pack_id * PackSize + batchIdxIter.batchIdx * cols; CopyWithCast(x, data_offset, pack_x); CopyWithCast(dy, data_offset, pack_dy); if (gamma != nullptr) { CopyWithDotAndCast( pack_dy, gamma, gamma_pack_offset, pack_dy, 0, zeroCenteredGamma, zeroCenteredGammaCastBeforeAdd); } for (size_t i = 0; i < PackSize; ++i) { T_MATH x = pack_x[i]; T_MATH dy_dot_gamma = pack_dy[i]; partial_sum_dvar += dvar_op.Compute(x, dy_dot_gamma, row_idx); if constexpr (!isRMSNorm) { partial_sum_dmu += dmean_op.Compute(dy_dot_gamma, row_idx); } } } T_MATH sum1 = blockReduceSum(partial_sum_dvar); T_MATH sum2 = cuGet(0); if constexpr (!isRMSNorm) { sum2 = blockReduceSum(partial_sum_dmu); } if (threadIdx.x == 0) { temp_dl_dvars[row_idx * gridDim.x + blockIdx.x] = sum1; if constexpr (!isRMSNorm) { temp_dl_dmus[row_idx * gridDim.x + blockIdx.x] = sum2; } } batchIdxIter.step(); } } extern "C" __global__ __launch_bounds__(1024) void LayerNormRowReduceTempToOut(const LayerNormBwdKernelParams kernelParams, const size_t blocks_per_row, const T_MATH* __restrict__ temp_dl_dvars, const T_MATH* __restrict__ temp_dl_dmus, T_MATH* __restrict__ temp_dVar, T_MATH* __restrict__ temp_dMu) { const size_t rows = kernelParams.rows; for (size_t k = blockIdx.x; k < rows; k += gridDim.x) { T_MATH partial_sum_dvar = 0; T_MATH partial_sum_dmu = 0; for (size_t i = threadIdx.x; i < blocks_per_row; i += kBlockSize) { partial_sum_dvar += temp_dl_dvars[k * blocks_per_row + i]; if constexpr (!isRMSNorm) { partial_sum_dmu += temp_dl_dmus[k * blocks_per_row + i]; } } T_MATH sum_dvar = blockReduceSum(partial_sum_dvar); __syncthreads(); T_MATH sum_dmu = cuGet(0); if constexpr (!isRMSNorm) { sum_dmu = blockReduceSum(partial_sum_dmu); } if (threadIdx.x == 0) { temp_dVar[k] = sum_dvar; if constexpr (!isRMSNorm) { temp_dMu[k] = sum_dmu; } } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormUpdate(const LayerNormBwdKernelParams kernelParams, const T_MATH* temp_dVar, const T_MATH* temp_dMu) { const T_IN* x = static_cast(kernelParams.x); T_IN* dx = static_cast(kernelParams.dx); const T_OUT* __restrict__ dy = static_cast(kernelParams.dy); const T_WEIGHT* gamma = static_cast(kernelParams.gamma); const T_MATH* mean = static_cast(kernelParams.mean); const T_MATH* ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_DxOp dx_op{x, mean, ivar, gamma, temp_dVar, temp_dMu, cols}; const size_t tid = threadIdx.x + blockIdx.x * blockDim.x; if (tid >= rows * cols) return; const size_t col = tid % cols; const size_t row = tid / cols; T_BatchIdxIter batchIdxIter(row, 0); size_t gamma_extra_offset = batchIdxIter.batchIdx * cols; dx[tid] = dx_op.Compute(dy, row, col, 1, gamma_extra_offset); } extern "C" __global__ __launch_bounds__(1024) void LayerNormGradBetaGamma(const LayerNormBwdKernelParams kernelParams) { const T_OUT* __restrict__ dy = static_cast(kernelParams.dy); const T_IN* __restrict__ x = static_cast(kernelParams.x); const T_MATH* __restrict__ mean = static_cast(kernelParams.mean); const T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; T_WEIGHT* __restrict__ dgamma = static_cast(kernelParams.dgamma); T_WEIGHT* __restrict__ dbeta = static_cast(kernelParams.dbeta); const size_t tid = threadIdx.x + blockIdx.x * blockDim.x; if (tid >= cols) return; T_MATH sum_dgamma[BatchSize]; T_MATH sum_dbeta[BatchSize]; memset(sum_dgamma, 0, sizeof(sum_dgamma)); memset(sum_dbeta, 0, sizeof(sum_dbeta)); T_BatchIdxIter batchIdxIter(0, 1); #pragma unroll for (size_t i = 0; i < rows; i++) { T_MATH dy_curr = GetAs(dy, i * cols + tid); if (dgamma != nullptr) { if constexpr (!isRMSNorm) { sum_dgamma[batchIdxIter.batchIdx] += dy_curr * ((T_MATH)(x[i * cols + tid]) - mean[i]) * ivar[i]; } else { sum_dgamma[batchIdxIter.batchIdx] += dy_curr * (T_MATH)(x[i * cols + tid]) * ivar[i]; } } if (dbeta != nullptr) { sum_dbeta[batchIdxIter.batchIdx] += dy_curr; } batchIdxIter.step(); } if (dgamma != nullptr) { #pragma unroll Unroll_BS for (size_t b = 0; b < BatchSize; b++) { dgamma[b * cols + tid] = cuGet(sum_dgamma[b]); } } if (dbeta != nullptr) { #pragma unroll Unroll_BS for (size_t b = 0; b < BatchSize; b++) { dbeta[b * cols + tid] = cuGet(sum_dbeta[b]); } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormGradBetaGammaInToTemp(const LayerNormBwdKernelParams kernelParams, const size_t rows_per_block, T_MATH* __restrict__ tgamma, T_MATH* __restrict__ tbeta) { const T_OUT* __restrict__ dy = static_cast(kernelParams.dy); const T_IN* __restrict__ x = static_cast(kernelParams.x); const T_MATH* __restrict__ mean = static_cast(kernelParams.mean); const T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); const size_t rows = kernelParams.rows; const size_t cols = kernelParams.cols; const size_t tid = threadIdx.x + blockIdx.x * blockDim.x; if (tid >= cols) return; size_t j = tid; T_MATH sum_dgamma[BatchSize]; T_MATH sum_dbeta[BatchSize]; memset(sum_dgamma, 0, sizeof(sum_dgamma)); memset(sum_dbeta, 0, sizeof(sum_dbeta)); T_BatchIdxIter batchIdxIter(blockIdx.y * rows_per_block, 1); #pragma unroll for (size_t i = blockIdx.y * rows_per_block; i < min(blockIdx.y * rows_per_block + rows_per_block, rows); i++) { T_MATH dy_curr = GetAs(dy, i * cols + j); if (tgamma != nullptr) { if constexpr (!isRMSNorm) { sum_dgamma[batchIdxIter.batchIdx] += dy_curr * ((T_MATH)(x[i * cols + j]) - mean[i]) * ivar[i]; } else { sum_dgamma[batchIdxIter.batchIdx] += dy_curr * (T_MATH)(x[i * cols + j]) * ivar[i]; } } if (tbeta != nullptr) { sum_dbeta[batchIdxIter.batchIdx] += dy_curr; } batchIdxIter.step(); } #pragma unroll Unroll_BS for (size_t b = 0; b < BatchSize; b++) { if (tgamma != nullptr) { tgamma[b * gridDim.y * cols + blockIdx.y * cols + j] = sum_dgamma[b]; } if (tbeta != nullptr) { tbeta[b * gridDim.y * cols + blockIdx.y * cols + j] = sum_dbeta[b]; } } } extern "C" __global__ __launch_bounds__(1024) void LayerNormGradBetaGammaTempToOut(const LayerNormBwdKernelParams kernelParams, const T_MATH* __restrict__ tg, const T_MATH* __restrict__ tb, const size_t reduced_rows) { const size_t cols = kernelParams.cols; T_WEIGHT* __restrict__ dgamma = static_cast(kernelParams.dgamma); T_WEIGHT* __restrict__ dbeta = static_cast(kernelParams.dbeta); const size_t tid = threadIdx.x + blockIdx.x * blockDim.x; if (tid >= cols) return; T_MATH sum_dgamma[BatchSize]; T_MATH sum_dbeta[BatchSize]; memset(sum_dgamma, 0, sizeof(sum_dgamma)); memset(sum_dbeta, 0, sizeof(sum_dbeta)); #pragma unroll Unroll_BS for (size_t b = 0; b < BatchSize; b++) { #pragma unroll for (size_t i = 0; i < reduced_rows; i++) { if (dgamma != nullptr) { sum_dgamma[b] += tg[b * reduced_rows * cols + i * cols + tid]; } if (dbeta != nullptr) { sum_dbeta[b] += tb[b * reduced_rows * cols + i * cols + tid]; } } if (dgamma != nullptr) { dgamma[b * cols + tid] = cuGet(sum_dgamma[b]); } if (dbeta != nullptr) { dbeta[b * cols + tid] = cuGet(sum_dbeta[b]); } } }  N5cudnn3cnn18LayerNormBwdEngineE((blockSizeChoice < 0) || (blockSizeChoice >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0]))))calc_blk_num_IN_fwd(cols, blkSize, is_channel_first, deviceProp, blk_cnt)norm_op.hasInRunMeanDesc() || norm_op.hasInRunVarDesc() || norm_op.hasOutRunMeanDesc() || norm_op.hasOutRunVarDesc() || norm_op.hasExpAvgFactor() || norm_op.hasPeerStatDescVector()norm_op.getMode() != CUDNN_INSTANCE_NORM!((norm_op.getXDesc()->getDataType() == CUDNN_DATA_HALF) || (norm_op.getXDesc()->getDataType() == CUDNN_DATA_FLOAT) || (norm_op.getXDesc()->getDataType() == CUDNN_DATA_BFLOAT16))(norm_op.getXDesc()->getDataType() == CUDNN_DATA_BFLOAT16) && !hardware_bfloat16_supported(deviceVer)(norm_op.getXDesc()->getDataType() == CUDNN_DATA_HALF) && !hardware_half_supported(deviceVer)!((norm_op.getYDesc()->getDataType() == CUDNN_DATA_HALF) || (norm_op.getYDesc()->getDataType() == CUDNN_DATA_FLOAT) || (norm_op.getYDesc()->getDataType() == CUDNN_DATA_BFLOAT16))norm_op.getXDesc()->getDataType() != norm_op.getYDesc()->getDataType()(norm_op.getMeanDesc()->getDataType() != norm_op.getInvVarianceDesc()->getDataType()) || (norm_op.getInvVarianceDesc()->getDataType() != norm_op.getScaleDesc()->getDataType()) || (norm_op.getScaleDesc()->getDataType() != norm_op.getBiasDesc()->getDataType())norm_op.getScaleDesc()->getDataType() != norm_op.getBiasDesc()->getDataType()!is_channel_first && !is_feature_firstnorm_op.getScaleDesc()->getNumElementsWithStride() != static_cast(instFwdParams.C)norm_op.getBiasDesc()->getNumElementsWithStride() != static_cast(instFwdParams.C)norm_op.getMeanDesc()->getNumElementsWithStride() != static_cast(instFwdParams.N * instFwdParams.C)norm_op.getInvVarianceDesc()->getNumElementsWithStride() != static_cast(instFwdParams.N * instFwdParams.C)checkProblemSupported( instFwdParams.D, instFwdParams.blockSizeChoice, instFwdParams.is_channel_first, deviceProp)calc_blk_num_IN_fwd(instFwdParams.D, kBlockSize, is_channel_first, deviceProp, blk_cnt_base)calc_blk_num_IN_fwd( instFwdParams.D, kBlockSizeSearchSpace[idx], is_channel_first, deviceProp, blk_cnt)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormBlockSMemChnlFirstImpl_t]->launchKernel( deviceId, dim3(N * C), dim3(blkSize), clusterDim, smem, stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::GeneralNormRowReduceInToOutWelford_t]->launchKernel( deviceId, dim3(NxC), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormUpdate_t]->launchKernel( deviceId, dim3(DivUp(N * C * D, kBlockSize * min_workload_per_thread)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormToTempWelford_t]->launchKernel( deviceId, blocks, threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormTempToOutWelford_t]->launchKernel( deviceId, dim3(NxC), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormUpdateVectorized_t]->launchKernel( deviceId, blocks, dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormBlockSMemChnlLastImpl_t]->launchKernel( deviceId, grid_dim, blk_dim, clusterDim, smem, stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormTempToOutWelford_t]->launchKernel( deviceId, dim3(N * C), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormUpdate_t]->launchKernel( deviceId, dim3(DivUp(N * C * D, kBlockSize * min_work_per_thread)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)(!instFwdParams.tryDispatch) && ((instFwdParams.blockSizeChoice < 0) || (instFwdParams.blockSizeChoice >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0]))))(instFwdParams.tryDispatch) && ((instFwdParams.blockSizeChoice < -1) || (instFwdParams.blockSizeChoice >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0]))))(instFwdParams.pack_size_idx < 0) || (instFwdParams.pack_size_idx >= 3)instFwdParams.rtc[InstanceNormFwdRTC_kernel_t::InstanceNormRowReduceInToOutWarp_t]->launchKernel( deviceId, dim3(DivUp(NxC, kWarpPerBlock)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)InstanceNormReductionsChnlFirstWelford( stream, extra_temp_buffer, deviceId, instFwdParams, kernelParams)InstanceNormReductionsChnlLastWelford( stream, extra_temp_buffer, deviceId, instFwdParams, kernelParams)(instFwdParams.computeType != CUDNN_DATA_FLOAT)executeInternalLauncher(instFwdParams, var, norm_op, required_workspace, stream, isTrain)_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo5beginE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo3endE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo6cbeginE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo4cendE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo6rbeginE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo4rendE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo7crbeginE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__45__cpo5crendE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__453_GLOBAL__N__95451fab_20_instance_norm_fwd_cu_c7ff5bde6ignoreE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__419piecewise_constructE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__48in_placeE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__420unreachable_sentinelE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo4swapE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo9iter_moveE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo7advanceE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo5beginE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo3endE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo6cbeginE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo4cendE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo9iter_swapE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo4nextE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo4prevE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo4dataE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo5cdataE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo4sizeE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo5ssizeE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std6ranges3__45__cpo8distanceE_ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde6thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqE constexpr bool is_channel_first = getMostCompatibleHeaderBytes(cudnn::fusion::ATEX_ln_comp_bytes_version_map, instFwdParams.rtc[i]->getNvrtcVersion(), comp_header_bytes)instanceNormFwd_generate_full_kernel_string(instFwdParams)instanceNormFwd_set_runtime_compilation_flags(instFwdParams, deviceProp)instFwdParams.rtc[i]->compile( compilation_flags, instFwdParams.useNvrtcSassPath, instFwdParams.useNvrtcHiddenAPI)instFwdParams.rtc[i]->loadModule() /*---------------------------------------------------------------------------------------------------------------------------------------------------- * Source integration from *https://https://gitlab-master.nvidia.com/dl/tensorflow/atex/nv_ops/nv_norms/cc/kernels/fused_instance_norm_op.cu.cc * (in_vec_load branch has been merged to main on 9/26/2022) * Note: T = T_ELEM and ComputeType(or U) = U * Changes: OpKernelContext* context -> cudaStream_t stream * removed: const GPUDevice& d = context->eigen_device(); * d.stream() ->stream * IRETF -> IRETF * functions that have kernel calls need to return cudnnStatus_t *----------------------------------------------------------------------------------------------------------------------------------------------------*/ extern "C" __global__ __launch_bounds__(1024) void InstanceNormRowReduceInToOutWarp(const InstanceNormFwdKernelParams kernelParams) { const T_IN* __restrict__ in = static_cast(kernelParams.x); const size_t N = kernelParams.rows; const size_t C = kernelParams.channel; const size_t D = kernelParams.cols; T_MATH* mean = static_cast(kernelParams.mean); T_MATH* ivar = static_cast(kernelParams.ivar); T_MeanOp mean_op{D}; T_IvarOp ivar_op{mean, kernelParams.epsilon, D}; if (!is_channel_first) { mean_op.SetChannelDim(C); ivar_op.SetChannelDim(C); } const size_t tid = threadIdx.x % kWarpSize; const size_t local_warp_id = threadIdx.x / kWarpSize; const size_t warp_id = blockIdx.x * kWarpPerBlock + local_warp_id; T_MATH partial_sum; for (size_t k = warp_id; k < N * C; k += gridDim.x * kWarpPerBlock) { partial_sum = 0; for (size_t i = tid; i < D; i += kWarpSize) { if (is_channel_first) { partial_sum += mean_op.Compute(in, k, i); } else { partial_sum += mean_op.Compute(in, k / C, i, k % C); } } T_MATH sum = warpReduceSum(partial_sum); sum = __shfl_sync(0xFFFFFFFF, sum, 0, kWarpSize); sum = mean_op.Finalize(sum); if (tid == 0) { mean[k] = sum; } partial_sum = 0; for (size_t i = tid; i < D; i += kWarpSize) { if (is_channel_first) { partial_sum += ivar_op.Compute(in, k, i, sum); } else { partial_sum += ivar_op.Compute(in, k / C, i, k % C, sum); } } sum = warpReduceSum(partial_sum); if (tid == 0) { ivar[k] = ivar_op.Finalize(sum); } } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormUpdate(const InstanceNormFwdKernelParams kernelParams) { const T_IN* __restrict__ in = static_cast(kernelParams.x); const size_t N = kernelParams.rows * kernelParams.channel * kernelParams.cols; const size_t D = kernelParams.cols; T_IN* y = static_cast(kernelParams.y); T_MATH* mean = static_cast(kernelParams.mean); T_MATH* ivar = static_cast(kernelParams.ivar); T_MATH* gamma = static_cast(kernelParams.gamma); T_MATH* beta = static_cast(kernelParams.beta); T_YOp y_op{mean, ivar, gamma, beta, kernelParams.channel, kernelParams.cols}; const size_t tid = threadIdx.x + blockIdx.x * blockDim.x; if (tid >= N) return; for (size_t row_idx = tid; row_idx < N; row_idx += gridDim.x * blockDim.x) { y[row_idx] = y_op.Compute(in, row_idx, is_channel_first); } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormToTempWelford(const InstanceNormFwdKernelParams kernelParams, T_MATH* __restrict__ temp_mean, T_MATH* __restrict__ temp_m2, T_MATH* __restrict__ temp_count) { const T_IN* __restrict__ x = static_cast(kernelParams.x); size_t N = kernelParams.rows; size_t C = kernelParams.channel; size_t D = kernelParams.cols; T_WFOp wf_op{D, kernelParams.epsilon}; if (!is_channel_first) { wf_op.SetChannelDim(C); } if (is_channel_first) { T_MATH pack[PackSize]; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = static_cast(D / PackSize); for (size_t row_idx = blockIdx.y; row_idx < N * C; row_idx += gridDim.y) { WFGeneric wf_partial; for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { const size_t data_offset = row_idx * D + pack_id * PackSize; CopyWithCast(x, data_offset, pack); for (size_t i = 0; i < PackSize; ++i) { wf_op.Update(pack[i], wf_partial); } } WFGeneric wf_block = BlockAllReduce(wf_partial, false); if (threadIdx.x == 0) { temp_mean[row_idx * gridDim.x + blockIdx.x] = wf_block.mean; temp_m2[row_idx * gridDim.x + blockIdx.x] = wf_block.m2; temp_count[row_idx * gridDim.x + blockIdx.x] = wf_block.n; } } } else { const size_t x_tid = threadIdx.x + blockIdx.x * blockDim.x; const size_t y_tid = threadIdx.y + blockIdx.y * blockDim.y; const size_t z_tid = threadIdx.z + blockIdx.z * blockDim.z; if (x_tid >= C) return; WFGeneric wf_partial; for (size_t i = y_tid; i < D; i += blockDim.y * gridDim.y) { wf_op.Update(x, z_tid, i, x_tid, wf_partial); } temp_mean[(z_tid * C + x_tid) * blockDim.y * gridDim.y + y_tid] = wf_partial.mean; temp_m2[(z_tid * C + x_tid) * blockDim.y * gridDim.y + y_tid] = wf_partial.m2; temp_count[(z_tid * C + x_tid) * blockDim.y * gridDim.y + y_tid] = wf_partial.n; } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormTempToOutWelford(const InstanceNormFwdKernelParams kernelParams, const size_t local_cols, const T_MATH* __restrict__ temp_mean, const T_MATH* __restrict__ temp_m2, const T_MATH* __restrict__ temp_count) { size_t N = kernelParams.rows; size_t C = kernelParams.channel; T_MATH* __restrict__ cache_mean = static_cast(kernelParams.mean); T_MATH* __restrict__ cache_ivar = static_cast(kernelParams.ivar); T_WFOp wf_op{kernelParams.cols, kernelParams.epsilon}; if (!is_channel_first) { wf_op.SetChannelDim(C); } for (size_t k = blockIdx.x; k < N * C; k += gridDim.x) { WFGeneric wf_partial; for (size_t i = threadIdx.x; i < local_cols; i += kBlockSize) { size_t idx = k * local_cols + i; WFGeneric wf_local{temp_mean[idx], temp_m2[idx], temp_count[idx]}; wf_partial = WFGeneric()(wf_local, wf_partial); } WFGeneric wf_block = BlockAllReduce(wf_partial, false); if (threadIdx.x == 0) { cache_mean[k] = wf_block.mean; cache_ivar[k] = wf_op.Finalize(wf_block); } } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormUpdateVectorized(const InstanceNormFwdKernelParams kernelParams) { const T_IN* __restrict__ x = static_cast(kernelParams.x); size_t N = kernelParams.rows; size_t C = kernelParams.channel; size_t D = kernelParams.cols; const T_MATH* __restrict__ mean = static_cast(kernelParams.mean); const T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); const T_MATH* __restrict__ gamma = static_cast(kernelParams.gamma); const T_MATH* __restrict__ beta = static_cast(kernelParams.beta); T_IN* y = static_cast(kernelParams.y); T_YOp y_op{mean, ivar, gamma, beta, C, D}; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = static_cast(D) / PackSize; for (size_t row_idx = blockIdx.y; row_idx < N * C; row_idx += gridDim.y) { size_t c_idx = row_idx % C; T_MATH gamma_val = gamma[c_idx]; T_MATH beta_val = beta[c_idx]; for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { T_MATH pack[PackSize]; const size_t pack_offset = pack_id * PackSize; CopyWithCast(x, row_idx * D + pack_offset, pack); for (size_t i = 0; i < PackSize; ++i) { pack[i] = y_op.ComputePartial(pack[i], row_idx); } CopyWithAffineAndCast(pack, gamma_val, beta_val, y, row_idx * D + pack_offset); } } } extern "C" __global__ void InstanceNormBlockSMemChnlFirstImpl(const InstanceNormFwdKernelParams kernelParams) { const T_IN* __restrict__ x = static_cast(kernelParams.x); size_t rows = kernelParams.rows; size_t channel = kernelParams.channel; size_t cols = kernelParams.cols; T_MATH* __restrict__ mean = static_cast(kernelParams.mean); T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); const T_MATH* __restrict__ gamma = static_cast(kernelParams.gamma); const T_MATH* __restrict__ beta = static_cast(kernelParams.beta); T_IN* y = static_cast(kernelParams.y); T_WFOp wf_op{cols, kernelParams.epsilon}; if (!is_channel_first) { wf_op.SetChannelDim(channel); } extern __shared__ __align__(sizeof(double)) unsigned char shared_buf[]; auto* buf = reinterpret_cast(shared_buf); const size_t tid = threadIdx.x; const size_t num_packs = static_cast(cols / PackSize); T_MATH pack[PackSize]; for (size_t row = blockIdx.x; row < rows * channel; row += gridDim.x) { size_t channel_id = row % channel; T_MATH gamma_val = gamma[channel_id]; T_MATH beta_val = beta[channel_id]; WFGeneric wf_thread; for (size_t pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { const size_t data_offset = row * cols + pack_id * PackSize; CopyWithCast(x, data_offset, pack); for (size_t i = 0; i < PackSize; ++i) { buf[i * num_packs + pack_id] = pack[i]; wf_op.Update(pack[i], wf_thread); } } WFGeneric wf_row = BlockAllReduce(wf_thread, true); T_MATH row_mean = wf_row.mean; T_MATH row_inv_var = wf_op.Finalize(wf_row); if (threadIdx.x == 0) { mean[row] = row_mean; ivar[row] = row_inv_var; } for (size_t pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { for (size_t i = 0; i < PackSize; ++i) { pack[i] = (buf[i * num_packs + pack_id] - row_mean) * row_inv_var; } const size_t pack_offset = pack_id * PackSize; CopyWithAffineAndCast(pack, gamma_val, beta_val, y, row * cols + pack_offset); } } } extern "C" __global__ __launch_bounds__(1024) void GeneralNormRowReduceInToOutWelford(const InstanceNormFwdKernelParams kernelParams) { const T_IN* x = static_cast(kernelParams.x); size_t rows = kernelParams.rows; size_t channel = kernelParams.channel; size_t cols = kernelParams.cols; size_t NxC = rows * channel; T_MATH* mean = static_cast(kernelParams.mean); T_MATH* ivar = static_cast(kernelParams.ivar); T_WFOp wf_op{cols, kernelParams.epsilon}; if (!is_channel_first) { wf_op.SetChannelDim(channel); } const size_t tid = threadIdx.x; const size_t num_packs = static_cast(cols) / PackSize; T_MATH pack[PackSize]; for (size_t k = blockIdx.x; k < NxC; k += gridDim.x) { WFGeneric wf_thread; for (size_t pack_id = tid; pack_id < num_packs; pack_id += kBlockSize) { const size_t data_offset = k * cols + pack_id * PackSize; CopyWithCast(x, data_offset, pack); for (size_t i = 0; i < PackSize; ++i) { wf_op.Update(pack[i], wf_thread); } } WFGeneric wf_row = BlockAllReduce(wf_thread, false); if (tid == 0) { mean[k] = wf_row.mean; ivar[k] = wf_op.Finalize(wf_row); } } } extern "C" __global__ void InstanceNormBlockSMemChnlLastImpl(const InstanceNormFwdKernelParams kernelParams) { const T_IN* x = static_cast(kernelParams.x); size_t rows = kernelParams.rows; size_t channel = kernelParams.channel; size_t cols = kernelParams.cols; const T_MATH* gamma = static_cast(kernelParams.gamma); const T_MATH* beta = static_cast(kernelParams.beta); T_IN* y = static_cast(kernelParams.y); T_MATH* __restrict__ mean = static_cast(kernelParams.mean); T_MATH* __restrict__ ivar = static_cast(kernelParams.ivar); T_WFOp wf_op{cols, kernelParams.epsilon}; if (!is_channel_first) { wf_op.SetChannelDim(channel); } extern __shared__ __align__(sizeof(double)) unsigned char shared_buf[]; auto* buf = reinterpret_cast(shared_buf); auto* buf_for_reduce = reinterpret_cast*>(shared_buf + cols * sizeof(T_MATH) * kWarpSize); const size_t x_tid = threadIdx.x + blockIdx.x * blockDim.x; const size_t y_tid = threadIdx.y + blockIdx.y * blockDim.y; const size_t z_tid = threadIdx.z + blockIdx.z * blockDim.z; // use C / 32 blocks in x direction if (x_tid >= channel) return; WFGeneric wf_partial; size_t DC = cols * channel; size_t row_offset = threadIdx.x * cols; for (size_t i = y_tid; i < cols; i += blockDim.y * gridDim.y) { T_MATH x_in = x[z_tid * DC + i * channel + x_tid]; buf[row_offset + i] = x_in; wf_op.Update(x_in, wf_partial); } buf_for_reduce[threadIdx.x * BlockSize / kWarpSize + threadIdx.y] = wf_partial; __syncthreads(); if (threadIdx.y == 0) { WFGeneric wf_row_sum; for (size_t i = 0; i < BlockSize / kWarpSize; ++i) { wf_row_sum = WFGeneric()(wf_row_sum, buf_for_reduce[threadIdx.x * BlockSize / kWarpSize + i]); } buf_for_reduce[threadIdx.x * BlockSize / kWarpSize] = wf_row_sum; } __syncthreads(); WFGeneric per_row_result = buf_for_reduce[threadIdx.x * BlockSize / kWarpSize]; T_MATH per_row_mean = per_row_result.mean; T_MATH per_row_inv_std = wf_op.Finalize(per_row_result); if (threadIdx.y == 0) { mean[z_tid * channel + x_tid] = per_row_mean; ivar[z_tid * channel + x_tid] = per_row_inv_std; } for (size_t i = y_tid; i < cols; i += blockDim.y * gridDim.y) { T_MATH x_in = buf[row_offset + i]; y[z_tid * DC + i * channel + x_tid] = static_cast((x_in - per_row_mean) * per_row_inv_std * gamma[x_tid] + beta[x_tid]); } } dims < 1nullptr == gmem_scalenullptr == gmem_biasnullptr == gmem_mean using T_MeanOp = MeanOp< using T_IvarOp = IvarOp<,false>; using T_YOp = InNorm::YOp< InstanceNormRowReduceInToOutWarpInstanceNormUpdaInstanceNormToTeInstanceNormTempInstanceNormBlockSMemChnlFirstImGeneralNormRowReduceInToOutWelfokSMemChnlLastImpinstanceNormFwd_compile(*this->getDeviceProp(), instFwdParams, fromSerialization, fromKernelCache)_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo5beginE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo3endE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo6cbeginE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo4cendE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo6rbeginE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo4rendE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo7crbeginE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__45__cpo5crendE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__466_GLOBAL__N__0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286046ignoreE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__419piecewise_constructE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48in_placeE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__420unreachable_sentinelE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo4swapE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo9iter_moveE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo7advanceE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo5beginE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo3endE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo6cbeginE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo4cendE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo9iter_swapE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo4nextE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo4prevE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo4dataE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo5cdataE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo4sizeE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo5ssizeE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std6ranges3__45__cpo8distanceE_ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286046thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqEinstFwdParams.blockSizeChoice >= int(sizeof(blockSize_opts) / sizeof(blockSize_opts[0]))instanceNormFwd_initSupported(deviceProp, norm_op, instFwdParams, false)instFwdParams.rtc[i]->loadDLL()(this->getDeviceProp()->deviceVer >= 1000) && (lastActiveRTCKernelIndex >= 0) && (instFwdParams.rtc[lastActiveRTCKernelIndex]->getNvrtcVersion() < 12080)opSet.getOpCount() != 1N5cudnn3cnn26InstanceNormFwdInferEngineE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo5beginE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo3endE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo6cbeginE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo4cendE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo6rbeginE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo4rendE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo7crbeginE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__45__cpo5crendE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__466_GLOBAL__N__26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df796ignoreE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__419piecewise_constructE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__48in_placeE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__420unreachable_sentinelE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo4swapE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo9iter_moveE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo7advanceE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo5beginE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo3endE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo6cbeginE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo4cendE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo9iter_swapE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo4nextE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo4prevE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo4dataE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo5cdataE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo4sizeE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo5ssizeE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std6ranges3__45__cpo8distanceE_ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df796thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqEinstanceNormFwd_initSupported(deviceProp, norm_op, instFwdParams, true)N5cudnn3cnn26InstanceNormFwdTrainEngineEnullptr == gmem_dScalenullptr == gmem_dBias using T_ELEM = InstanceNormGradBlockSMemImplReduceNCtoCInstanceNormUpdateFusedcalc_blk_num_IN_bwd(cols, blkSize, deviceProp, blk_cnt)(blockSizeChoice < 0) || (blockSizeChoice >= int(sizeof(kBlockSizeSearchSpace) / sizeof(kBlockSizeSearchSpace[0])))instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormGradBlockSMemImpl_t]->launchKernel( deviceId, dim3(kernelParams.rows), dim3(blkSize), clusterDim, size_t(smem), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::ReduceNCtoC_t]->launchKernel(deviceId, dim3(DivUp(C, kBlockSize)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormRowReduceInToOutFused_t]->launchKernel( deviceId, dim3(NxC), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormRowReduceInToTempFusedVectorized_t] ->launchKernel(deviceId, blocks, threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormRowReduceTempToOutFused_t]->launchKernel( deviceId, dim3(N * C), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormUpdateFusedVectorized_t]->launchKernel( deviceId, dim3(DivUp(NxC * D, kBlockSize * min_workload_per_thread)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormRowReduceInToTempFused_t]->launchKernel( deviceId, blocks, threads, clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormUpdateFusedVectorized_t]->launchKernel( deviceId, dim3(DivUp(N * C * D, kBlockSize * min_work_per_thread)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormRowReduceInToOutWarpFused_t]->launchKernel( deviceId, dim3(DivUp(NxC, kWarpPerBlock)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)instBwdParams.rtc[InstanceNormBwdRTC_kernel_t::InstanceNormUpdateFused_t]->launchKernel( deviceId, dim3(DivUp(NxC * D, kBlockSize * min_work_per_thread)), dim3(kBlockSize), clusterDim, size_t(0), stream, arg_ptrs.data(), false)(instBwdParams.computeType != CUDNN_DATA_FLOAT)(instBwdParams.inputType != CUDNN_DATA_HALF) && (instBwdParams.inputType != CUDNN_DATA_FLOAT) && (instBwdParams.inputType != CUDNN_DATA_BFLOAT16)InstanceNormDataAndWeightsGrad(stream, instBwdParams, kernelParams, deviceId, temp_1, temp_2, temp_buffer_3, temp_buffer_4, extra_temp_buffer)executeInternalLauncher(instBwdParams, var, norm_op, required_workspace, stream)_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail40__construct_psa_from_all_exts_values_tagE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo5beginE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo3endE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo6cbeginE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo4cendE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo6rbeginE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo4rendE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo7crbeginE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__45__cpo5crendE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__460_GLOBAL__N__ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b6ignoreE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__419piecewise_constructE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__48in_placeE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__420unreachable_sentinelE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo4swapE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo9iter_moveE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo7advanceE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo5beginE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo3endE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo6cbeginE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo4cendE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo9iter_swapE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo4nextE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo4prevE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo4dataE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo5cdataE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo4sizeE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo5ssizeE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std6ranges3__45__cpo8distanceE_ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b6thrust61THRUST_200802_SM_500_600_610_700_750_800_860_900_1000_1200_NS6system6detail10sequential3seqEinstBwdParams.blockSizeChoice >= int(sizeof(blockSize_opts) / sizeof(blockSize_opts[0]))(norm_op.getXDesc()->getDataType() == CUDNN_DATA_BFLOAT16) && !hardware_bfloat16_supported(this->getDeviceProp()->deviceVer)(norm_op.getXDesc()->getDataType() == CUDNN_DATA_HALF) && !hardware_half_supported(this->getDeviceProp())norm_op.getDScaleDesc()->getDataType() != CUDNN_DATA_FLOAT!((norm_op.getDyDesc()->getDataType() == CUDNN_DATA_HALF) || (norm_op.getDyDesc()->getDataType() == CUDNN_DATA_FLOAT) || (norm_op.getDyDesc()->getDataType() == CUDNN_DATA_BFLOAT16))!((norm_op.getDxDesc()->getDataType() != CUDNN_DATA_HALF) || (norm_op.getDxDesc()->getDataType() != CUDNN_DATA_FLOAT) || (norm_op.getDxDesc()->getDataType() == CUDNN_DATA_BFLOAT16))(norm_op.getXDesc()->getDataType() != norm_op.getDyDesc()->getDataType()) || (norm_op.getXDesc()->getDataType() != norm_op.getDxDesc()->getDataType()) || (norm_op.getDxDesc()->getDataType() != norm_op.getDyDesc()->getDataType())(norm_op.getMeanDesc()->getDataType() != norm_op.getInvVarianceDesc()->getDataType()) || (norm_op.getInvVarianceDesc()->getDataType() != norm_op.getScaleDesc()->getDataType()) || (norm_op.getScaleDesc()->getDataType() != norm_op.getDScaleDesc()->getDataType()) || (norm_op.getDScaleDesc()->getDataType() != norm_op.getDBiasDesc()->getDataType())!is_channel_first && instBwdParams.blockSizeChoice > 0norm_op.getScaleDesc()->getNumElementsWithStride() != static_cast(instBwdParams.C)norm_op.getDScaleDesc()->getNumElementsWithStride() != static_cast(instBwdParams.C)norm_op.getDBiasDesc()->getNumElementsWithStride() != static_cast(instBwdParams.C)norm_op.getMeanDesc()->getNumElementsWithStride() != static_cast(instBwdParams.N * instBwdParams.C)norm_op.getInvVarianceDesc()->getNumElementsWithStride() != static_cast(instBwdParams.N * instBwdParams.C)checkProblemSupported(instBwdParams.D, instBwdParams.blockSizeChoice, deviceProp)calc_blk_num_IN_bwd(instBwdParams.D, kBlockSize, deviceProp, blk_cnt_base)calc_blk_num_IN_bwd(instBwdParams.D, kBlockSizeSearchSpace[idx], deviceProp, blk_cnt)instBwdParams.rtc[i]->loadDLL()(this->getDeviceProp()->deviceVer >= 1000) && (lastActiveRTCKernelIndex >= 0) && (instBwdParams.rtc[lastActiveRTCKernelIndex]->getNvrtcVersion() < 12080) using T_DwStatFusedOp = InNorm::DwStatFusedOp< using T_DxFusedOp = InNorm::DxFusedOp<getMostCompatibleHeaderBytes(cudnn::fusion::ATEX_ln_comp_bytes_version_map, instBwdParams.rtc[i]->getNvrtcVersion(), comp_header_bytes)InstanceNormRowReduceTempToOutFusedInstanceNormRowReduceInToOutFusedInstanceNormRowReduceInToOutWarpFusedInstanceNormRowReduceInToTempFusedVectorizedInstanceNormRowReduceInToTempFusedInstanceNormUpdateFusedVectorizedinstanceNormBwd_generate_full_kernel_string(instBwdParams)instanceNormBwd_set_runtime_compilation_flags(instBwdParams, deviceProp)instBwdParams.rtc[i]->loadModule()instBwdParams.rtc[i]->compile( compilation_flags, instBwdParams.useNvrtcSassPath, instBwdParams.useNvrtcHiddenAPI) extern "C" __global__ __launch_bounds__(1024) void InstanceNormRowReduceTempToOutFused(InstanceNormBwdKernelParams kernelParams, const T_MATH* __restrict__ temp1, const T_MATH* __restrict__ temp2, const T_MATH* __restrict__ temp3, const T_MATH* __restrict__ temp4, const size_t cols, T_MATH* __restrict__ cache1, T_MATH* __restrict__ cache2) { T_ELEM* x = static_cast(kernelParams.x); T_MATH* gamma = static_cast(kernelParams.gamma); T_MATH* __restrict__ cache3 = static_cast(kernelParams.dgamma); T_MATH* __restrict__ cache4 = static_cast(kernelParams.dbeta); T_MATH* cache_mean = static_cast(kernelParams.mean); T_MATH* cache_ivar = static_cast(kernelParams.ivar); const size_t N = kernelParams.rows; const size_t C = kernelParams.channels; const size_t D = kernelParams.cols; T_DwStatFusedOp DwStatFusedOp{gamma, x, cache_ivar, cache_mean, C, D}; for (size_t k = blockIdx.x; k < N * C; k += gridDim.x) { T_MATH partial_sum1 = 0; T_MATH partial_sum2 = 0; for (size_t i = threadIdx.x; i < cols; i += kBlockSize) { partial_sum1 += temp1[k * cols + i]; partial_sum2 += temp2[k * cols + i]; } T_MATH sum1 = blockReduceSum(partial_sum1); __syncthreads(); T_MATH sum2 = blockReduceSum(partial_sum2); __syncthreads(); if (threadIdx.x == 0) { cache1[k] = DwStatFusedOp.Finalize(sum1); cache2[k] = DwStatFusedOp.Finalize(sum2); } } if (blockIdx.x < C) { // only first C block participate T_MATH partial_sum3 = 0; T_MATH partial_sum4 = 0; for (size_t k = blockIdx.x; k < N * C; k += C) { for (size_t i = threadIdx.x; i < cols; i += kBlockSize) { partial_sum3 += temp3[k * cols + i]; partial_sum4 += temp4[k * cols + i]; } } T_MATH sum3 = blockReduceSum(partial_sum3); __syncthreads(); T_MATH sum4 = blockReduceSum(partial_sum4); if (threadIdx.x == 0) { cache3[blockIdx.x] = DwStatFusedOp.Finalize(sum3); cache4[blockIdx.x] = DwStatFusedOp.Finalize(sum4); } } } extern "C" __global__ void InstanceNormGradBlockSMemImpl(InstanceNormBwdKernelParams kernelParams, T_MATH* out1, T_MATH* out2, T_MATH* out3, T_MATH* out4) { const T_ELEM* x = static_cast(kernelParams.x); const T_ELEM* dy = static_cast(kernelParams.dy); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); T_ELEM* dx = static_cast(kernelParams.dx); size_t rows = kernelParams.rows; size_t channels = kernelParams.channels; size_t cols = kernelParams.cols; T_DwStatFusedOp DwStatFusedOp{gamma, x, cache_ivar, cache_mean, channels, cols}; extern __shared__ __align__(sizeof(double)) unsigned char grad_shared_buf[]; auto* buf_x = reinterpret_cast(grad_shared_buf); auto* buf_dy = buf_x + cols; const size_t tid = threadIdx.x; // row is N * C actually const size_t num_packs = static_cast(cols / PackSize); const T_MATH one_over_cols = static_cast(1.0 / cols); T_MATH x_pack[PackSize]; T_MATH dy_pack[PackSize]; T_MATH tmp1, tmp2, tmp3, tmp4, partial_sum1, partial_sum2, partial_sum3, partial_sum4; for (size_t row = blockIdx.x; row < rows * channels; row += gridDim.x) { partial_sum1 = 0; partial_sum2 = 0; partial_sum3 = 0; partial_sum4 = 0; const T_MATH row_mean = cache_mean[row]; const T_MATH row_ivar = cache_ivar[row]; const T_MATH channel_gamma = gamma[row % channels]; for (size_t pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { T_MATH x_pack[PackSize]; T_MATH dy_pack[PackSize]; const size_t pack_offset = pack_id * PackSize; CopyWithCast(x, row * cols + pack_offset, x_pack); CopyWithCast(dy, row * cols + pack_offset, dy_pack); for (size_t i = 0; i < PackSize; ++i) { const size_t buf_offset = i * num_packs + pack_id; T_MATH x_mean = x_pack[i] - row_mean; T_MATH dy = dy_pack[i]; buf_x[buf_offset] = x_mean; buf_dy[buf_offset] = dy; DwStatFusedOp.Compute(x_mean, dy, row_ivar, channel_gamma, &tmp1, &tmp2, &tmp3, &tmp4); partial_sum1 += tmp1; partial_sum2 += tmp2; partial_sum3 += tmp3; partial_sum4 += tmp4; } } T_MATH dldmu = blockReduceSum(partial_sum1); T_MATH dldvar_x2 = blockReduceSum(partial_sum2); for (size_t pack_id = tid; pack_id < num_packs; pack_id += BlockSize) { for (size_t i = 0; i < PackSize; ++i) { const size_t buf_offset = i * num_packs + pack_id; x_pack[i] = (buf_x[buf_offset] * dldvar_x2 + dldmu) * one_over_cols + buf_dy[buf_offset] * channel_gamma * row_ivar; } CopyWithCast(x_pack, 0, dx, row * cols + pack_id * PackSize); } T_MATH sum_gamma = blockReduceSum(partial_sum3); T_MATH sum_beta = blockReduceSum(partial_sum4); if (tid == 0) { out1[row] = DwStatFusedOp.Finalize(dldmu); out2[row] = DwStatFusedOp.Finalize(dldvar_x2); out3[row] = DwStatFusedOp.Finalize(sum_gamma); out4[row] = DwStatFusedOp.Finalize(sum_beta); } } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormRowReduceInToOutFused(InstanceNormBwdKernelParams kernelParams, T_MATH* out1, T_MATH* out2, T_MATH* out3, T_MATH* out4) { const T_ELEM* __restrict__ x = static_cast(kernelParams.x); const T_ELEM* __restrict__ dy = static_cast(kernelParams.dy); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); const size_t N = kernelParams.rows; const size_t C = kernelParams.channels; const size_t D = kernelParams.cols; T_DwStatFusedOp DwStatFusedOp{gamma, x, cache_ivar, cache_mean, C, D}; const size_t tid = threadIdx.x; const size_t block_size = blockDim.x; const size_t num_packs = D / PackSize; T_MATH pack_x[PackSize]; T_MATH pack_dy[PackSize]; T_MATH partial_sum1, partial_sum2, partial_sum3, partial_sum4, ret1, ret2, ret3, ret4, mean, ivar, channel_gamma, sum1, sum2, sum3, sum4; for (size_t k = blockIdx.x; k < N * C; k += gridDim.x) { partial_sum1 = 0; partial_sum2 = 0; partial_sum3 = 0; partial_sum4 = 0; mean = cache_mean[k]; ivar = cache_ivar[k]; channel_gamma = gamma[k % C]; for (size_t pack_id = tid; pack_id < num_packs; pack_id += block_size) { const size_t data_offset = k * D + pack_id * PackSize; CopyWithCast(x, data_offset, pack_x); CopyWithCast(dy, data_offset, pack_dy); for (size_t i = 0; i < PackSize; ++i) { DwStatFusedOp.Compute(pack_x[i] - mean, pack_dy[i], ivar, channel_gamma, &ret1, &ret2, &ret3, &ret4); partial_sum1 += ret1; partial_sum2 += ret2; partial_sum3 += ret3; partial_sum4 += ret4; } } T_MATH sum1 = blockReduceSum(partial_sum1); __syncthreads(); T_MATH sum2 = blockReduceSum(partial_sum2); __syncthreads(); T_MATH sum3 = blockReduceSum(partial_sum3); __syncthreads(); T_MATH sum4 = blockReduceSum(partial_sum4); if (tid == 0) { out1[k] = DwStatFusedOp.Finalize(sum1); out2[k] = DwStatFusedOp.Finalize(sum2); out3[k] = DwStatFusedOp.Finalize(sum3); out4[k] = DwStatFusedOp.Finalize(sum4); } __syncthreads(); } } extern "C" __global__ __launch_bounds__(1024) void ReduceNCtoC(const size_t N, const size_t C, const T_MATH* __restrict__ in1, const T_MATH* __restrict__ in2, T_MATH* out1, T_MATH* out2) { size_t NxC = N * C; const size_t x_tid = threadIdx.x + blockIdx.x * blockDim.x; if (x_tid >= C) return; T_MATH sum = static_cast(0); for (size_t k = x_tid; k < NxC; k += C) { sum += in1[k]; } out1[x_tid] = sum; sum = static_cast(0); for (size_t k = x_tid; k < NxC; k += C) { sum += in2[k]; } out2[x_tid] = sum; } extern "C" __global__ __launch_bounds__(1024) void InstanceNormRowReduceInToOutWarpFused(InstanceNormBwdKernelParams kernelParams, T_MATH* out1, T_MATH* out2, T_MATH* out3, T_MATH* out4) { const T_ELEM* __restrict__ x = static_cast(kernelParams.x); const T_ELEM* __restrict__ dy = static_cast(kernelParams.dy); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); const size_t N = kernelParams.rows; const size_t C = kernelParams.channels; const size_t D = kernelParams.cols; T_DwStatFusedOp DwStatFusedOp{gamma, x, cache_ivar, cache_mean, C, D}; const size_t tid = threadIdx.x % kWarpSize; const size_t local_warp_id = threadIdx.x / kWarpSize; const size_t warp_id = blockIdx.x * kWarpPerBlock + local_warp_id; T_MATH partial_sum1, partial_sum2, partial_sum3, partial_sum4, ret1, ret2, ret3, ret4; for (size_t k = warp_id; k < N * C; k += gridDim.x * kWarpPerBlock) { partial_sum1 = static_cast(0); partial_sum2 = static_cast(0); partial_sum3 = static_cast(0); partial_sum4 = static_cast(0); for (size_t i = tid; i < D; i += kWarpSize) { if (is_channel_first) { DwStatFusedOp.Compute(dy, k, i, &ret1, &ret2, &ret3, &ret4); } else { DwStatFusedOp.Compute(dy, k / C, i, k % C, &ret1, &ret2, &ret3, &ret4); } partial_sum1 += ret1; partial_sum2 += ret2; partial_sum3 += ret3; partial_sum4 += ret4; } T_MATH sum1 = warpReduceSum(partial_sum1); T_MATH sum2 = warpReduceSum(partial_sum2); T_MATH sum3 = warpReduceSum(partial_sum3); T_MATH sum4 = warpReduceSum(partial_sum4); sum1 = DwStatFusedOp.Finalize(sum1); sum2 = DwStatFusedOp.Finalize(sum2); sum3 = DwStatFusedOp.Finalize(sum3); sum4 = DwStatFusedOp.Finalize(sum4); if (tid == 0) { out1[k] = sum1; out2[k] = sum2; out3[k] = sum3; out4[k] = sum4; } } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormRowReduceInToTempFusedVectorized(InstanceNormBwdKernelParams kernelParams, T_MATH* temp_1, T_MATH* temp_2, T_MATH* temp_3, T_MATH* temp_4) { const T_ELEM* x = static_cast(kernelParams.x); const T_ELEM* dy = static_cast(kernelParams.dy); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); const size_t rows = kernelParams.rows; const size_t channels = kernelParams.channels; const size_t cols = kernelParams.cols; T_DwStatFusedOp DwStatFusedOp{gamma, x, cache_ivar, cache_mean, channels, cols}; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; const size_t num_packs = static_cast(cols / PackSize); T_MATH pack_x[PackSize]; T_MATH pack_dy[PackSize]; T_MATH tmp1, tmp2, tmp3, tmp4, partial_sum1, partial_sum2, partial_sum3, partial_sum4, row_mean, row_ivar, channel_gamma, sum1, sum2, sum3, sum4; for (size_t row_idx = blockIdx.y; row_idx < rows * channels; row_idx += gridDim.y) { partial_sum1 = 0; partial_sum2 = 0; partial_sum3 = 0; partial_sum4 = 0; row_mean = cache_mean[row_idx]; row_ivar = cache_ivar[row_idx]; channel_gamma = gamma[row_idx % channels]; for (size_t pack_id = row_offset; pack_id < num_packs; pack_id += gridDim.x * blockDim.x) { const size_t pack_offset = pack_id * PackSize; CopyWithCast(x, row_idx * cols + pack_offset, pack_x); CopyWithCast(dy, row_idx * cols + pack_offset, pack_dy); for (size_t i = 0; i < PackSize; ++i) { T_MATH x_mean = pack_x[i] - row_mean; T_MATH dy = pack_dy[i]; DwStatFusedOp.Compute(x_mean, dy, row_ivar, channel_gamma, &tmp1, &tmp2, &tmp3, &tmp4); partial_sum1 += tmp1; partial_sum2 += tmp2; partial_sum3 += tmp3; partial_sum4 += tmp4; } } sum1 = blockReduceSum(partial_sum1); sum2 = blockReduceSum(partial_sum2); sum3 = blockReduceSum(partial_sum3); sum4 = blockReduceSum(partial_sum4); if (threadIdx.x == 0) { size_t idx = row_idx * gridDim.x + blockIdx.x; temp_1[idx] = sum1; // dmu temp_2[idx] = sum2; // dvar temp_3[idx] = sum3; // dgamma temp_4[idx] = sum4; // dbeta } } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormRowReduceInToTempFused(InstanceNormBwdKernelParams kernelParams, T_MATH* __restrict__ temp1, T_MATH* __restrict__ temp2, T_MATH* __restrict__ temp3, T_MATH* __restrict__ temp4) { const T_ELEM* x = static_cast(kernelParams.x); const T_ELEM* __restrict__ dy = static_cast(kernelParams.dy); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); const size_t N = kernelParams.rows; const size_t C = kernelParams.channels; const size_t D = kernelParams.cols; T_DwStatFusedOp DwStatFusedOp{gamma, x, cache_ivar, cache_mean, C, D}; if (is_channel_first) { const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; for (size_t row_idx = blockIdx.y; row_idx < N * C; row_idx += gridDim.y) { T_MATH partial_sum1 = 0; T_MATH partial_sum2 = 0; T_MATH partial_sum3 = 0; T_MATH partial_sum4 = 0; T_MATH ret1, ret2, ret3, ret4; for (size_t i = row_offset; i < D; i += gridDim.x * blockDim.x) { DwStatFusedOp.Compute(dy, row_idx, i, &ret1, &ret2, &ret3, &ret4); partial_sum1 += ret1; partial_sum2 += ret2; partial_sum3 += ret3; partial_sum4 += ret4; } T_MATH sum1 = blockReduceSum(partial_sum1); __syncthreads(); T_MATH sum2 = blockReduceSum(partial_sum2); __syncthreads(); T_MATH sum3 = blockReduceSum(partial_sum3); __syncthreads(); T_MATH sum4 = blockReduceSum(partial_sum4); if (threadIdx.x == 0) { size_t idx = row_idx * gridDim.x + blockIdx.x; temp1[idx] = sum1; temp2[idx] = sum2; temp3[idx] = sum3; temp4[idx] = sum4; } } } else { const size_t x_tid = threadIdx.x + blockIdx.x * blockDim.x; const size_t y_tid = threadIdx.y + blockIdx.y * blockDim.y; const size_t z_tid = threadIdx.z + blockIdx.z * blockDim.z; if (x_tid >= C) return; T_MATH partial_sum1 = 0; T_MATH partial_sum2 = 0; T_MATH partial_sum3 = 0; T_MATH partial_sum4 = 0; T_MATH ret1, ret2, ret3, ret4; for (size_t i = y_tid; i < D; i += blockDim.y * gridDim.y) { DwStatFusedOp.Compute(dy, z_tid, i, x_tid, &ret1, &ret2, &ret3, &ret4); partial_sum1 += ret1; partial_sum2 += ret2; partial_sum3 += ret3; partial_sum4 += ret4; } size_t idx = (z_tid * C + x_tid) * blockDim.y * gridDim.y + y_tid; temp1[idx] = partial_sum1; temp2[idx] = partial_sum2; temp3[idx] = partial_sum3; temp4[idx] = partial_sum4; } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormUpdateFused(InstanceNormBwdKernelParams kernelParams, size_t N, T_MATH* temp_1, T_MATH* temp_2) { const T_ELEM* __restrict__ x = static_cast(kernelParams.x); const T_ELEM* __restrict__ dy = static_cast(kernelParams.dy); T_ELEM* dx = static_cast(kernelParams.dx); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); size_t D = kernelParams.cols; size_t C = kernelParams.channels; T_DxFusedOp DxFusedOp{cache_mean, cache_ivar, gamma, temp_2, temp_1, C, D}; const size_t tid = threadIdx.x + blockIdx.x * blockDim.x; if (tid >= N) return; for (size_t row_idx = tid; row_idx < N; row_idx += gridDim.x * blockDim.x) { dx[row_idx] = static_cast(DxFusedOp.Compute(x[row_idx], dy[row_idx], row_idx, is_channel_first)); } } extern "C" __global__ __launch_bounds__(1024) void InstanceNormUpdateFusedVectorized(InstanceNormBwdKernelParams kernelParams, T_MATH* temp_1, T_MATH* temp_2) { const T_ELEM* __restrict__ x = static_cast(kernelParams.x); const T_ELEM* __restrict__ dy = static_cast(kernelParams.dy); const T_MATH* cache_mean = static_cast(kernelParams.mean); const T_MATH* cache_ivar = static_cast(kernelParams.ivar); const T_MATH* gamma = static_cast(kernelParams.gamma); T_ELEM* dx = static_cast(kernelParams.dx); const size_t N = kernelParams.rows; const size_t C = kernelParams.channels; const size_t D = kernelParams.cols; T_DxFusedOp DxFusedOp{cache_mean, cache_ivar, gamma, temp_2, temp_1, C, D}; T_MATH pack_x[PackSize]; T_MATH pack_dy[PackSize]; const size_t num_packs = N * C * D / PackSize; const size_t row_offset = threadIdx.x + blockIdx.x * blockDim.x; for (size_t row_idx = row_offset; row_idx < num_packs; row_idx += gridDim.x * blockDim.x) { const size_t pack_offset = row_idx * PackSize; CopyWithCast(x, pack_offset, pack_x); CopyWithCast(dy, pack_offset, pack_dy); for (size_t i = 0; i < PackSize; ++i) { pack_x[i] = DxFusedOp.Compute(pack_x[i], pack_dy[i], pack_offset + i, is_channel_first); } CopyWithCast(pack_x, 0, dx, pack_offset); } }  N5cudnn3cnn21InstanceNormBwdEngineE extern "C" __launch_bounds__(256) __global__ void conv2d_c1_k1_nchw_shmem_tiling(ConvInfo convInfo, const T_ELEM *xData, const T_ELEM *wData, T_ELEM *yData, T_MATH alpha, T_MATH beta, cudnn::reduced_divisor tiles_p) { const bool IS_BETA_0 = (beta == 0); typedef typename make_vectorized::type T_ELEM2; // Threads per CTA const int32_t THREADS_PER_CTA = TILE_C_CTA_ * 32; // Determine the input tile size const int32_t TILE_W_CTA = (TILE_Q_CTA_ - 1) * V_ + S_; const int32_t TILE_H_CTA = (TILE_P_CTA_ - 1) * U_ + R_; // Determine the shape of each warp during convolution const int32_t THREADS_Q_PER_WARP = (TILE_Q_CTA_ + TILE_Q_THREAD_ - 1) / TILE_Q_THREAD_; const int32_t THREADS_P_PER_WARP = (TILE_P_CTA_ + TILE_P_THREAD_ - 1) / TILE_P_THREAD_; // Number LDGs/thread/C // Simplify the LDG pattern by just adding an offset in H dimension (waste some threads) const int32_t IMG_HEIGHT_PER_CTA = THREADS_PER_CTA / TILE_W_CTA; const int32_t IMG_LDGS_H = (TILE_H_CTA + IMG_HEIGHT_PER_CTA - 1) / IMG_HEIGHT_PER_CTA; const int32_t IMG_STEP_H = (TILE_H_CTA + IMG_LDGS_H - 1) / IMG_LDGS_H; // Number LDGs/thread in C const int32_t IMG_LDGS_C = TILE_C_CTA_; // Smem size // Height is larger to avoid boundary check in H dimension const int32_t TILE_P_CTA_EXTENDED = TILE_P_THREAD_ * THREADS_P_PER_WARP; const int32_t TILE_H_CTA_EXTENDED = (TILE_P_CTA_EXTENDED - 1) * U_ + R_; // Make sure SMem width is aligned to 4 to enable possible LDS.64 const int32_t SMEM_W_IN = (TILE_W_CTA + 3) / 4 * 4; __shared__ T_ELEM sIn[TILE_C_CTA_][TILE_H_CTA_EXTENDED][SMEM_W_IN]; // Swizzle results in epilog before STG __shared__ T_ELEM sOut[TILE_C_CTA_][TILE_P_CTA_EXTENDED][TILE_Q_CTA_]; // Initialize the load registers to 0 T_ELEM img_fetch[IMG_LDGS_H][IMG_LDGS_C]; for (int32_t hi = 0; hi < IMG_LDGS_H; ++hi) { for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { img_fetch[hi][ci] = cuGet(0.00); } } // Get coords to load inputs const int32_t tile_q_idx = blockIdx.x; const int32_t n = blockIdx.z; // Get c and tile_p_idx since they were merged in one dimension (y) int32_t tile_p_idx = blockIdx.y; int32_t c_start = 0; tiles_p.divmod(tile_p_idx, c_start, tile_p_idx); c_start *= TILE_C_CTA_; const int32_t h_start = tile_p_idx * TILE_P_CTA_ * U_ - convInfo.padA[0]; const int32_t w_start = tile_q_idx * TILE_Q_CTA_ * V_ - convInfo.padA[1]; // Determine the CTA's edge in H dimension uint32_t h_end = (uint32_t)(h_start + TILE_H_CTA) > (uint32_t)convInfo.x_dimA[2] ? (uint32_t)convInfo.x_dimA[2] : (uint32_t)(h_start + TILE_H_CTA); // Bug 3669460: (n * convInfo.x_strideA[0]) could overflow as int32_t, which can be avoided by promoting one of // the multiplier to "ptrdiff_t" const T_ELEM *xStart = xData + (ptrdiff_t)n * convInfo.x_strideA[0] + (ptrdiff_t)c_start * convInfo.x_strideA[1]; const int32_t linearIdx = threadIdx.y * 32 + threadIdx.x; const int32_t hi = linearIdx / TILE_W_CTA; const int32_t wi = linearIdx % TILE_W_CTA; if (linearIdx < IMG_STEP_H * TILE_W_CTA) { if ((c_start + IMG_LDGS_C) <= convInfo.groupCount) { // The optimized path, where we don't need to check boundary C #pragma unroll for (int32_t iter = 0; iter < IMG_LDGS_H; ++iter) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { const int32_t h_current = h_start + hi + iter * IMG_STEP_H; const int32_t w_current = w_start + wi; if (((uint32_t)h_current < h_end) && ((uint32_t)w_current < (uint32_t)convInfo.x_dimA[3])) { // NOTE: the same fix for bug 3669460 is not applied here, because CHW won't ecxeed int32_t // as convInfo.x_strideA[0] is int32_t type. Also to aoivd any potential perf impacts. ptrdiff_t img_offset = ci * convInfo.x_strideA[1] + h_current * convInfo.x_strideA[2] + w_current; img_fetch[iter][ci] = xStart[img_offset]; } } } } else { // The un-optimized path #pragma unroll for (int32_t iter = 0; iter < IMG_LDGS_H; ++iter) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { const int32_t h_current = h_start + hi + iter * IMG_STEP_H; const int32_t w_current = w_start + wi; if (((uint32_t)h_current < h_end) && ((uint32_t)w_current < (uint32_t)convInfo.x_dimA[3])) { ptrdiff_t img_offset = ci * convInfo.x_strideA[1] + h_current * convInfo.x_strideA[2] + w_current; if ((ci + c_start) < convInfo.groupCount) { img_fetch[iter][ci] = xStart[img_offset]; } } } } } } // Load weights T_ELEM weight[R_][S_]; const T_ELEM *wStart = wData + (ptrdiff_t)(c_start + threadIdx.y) * R_ * S_; if ((c_start + threadIdx.y) < convInfo.groupCount) { for (int32_t r = 0; r < R_; r++) { for (int32_t s = 0; s < S_; s++) { weight[r][s] = IS_CORR ? wStart[r * S_ + s] : wStart[(R_ - 1 - r) * S_ + (S_ - 1 - s)]; } } } // Write inputs to Smem if (linearIdx < IMG_STEP_H * TILE_W_CTA) { #pragma unroll for (int32_t iter = 0; iter < IMG_LDGS_H; ++iter) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { const int32_t h_current = hi + iter * IMG_STEP_H; if (h_current < TILE_H_CTA) { // Boundary check in H dimension sIn[ci][h_current][wi] = img_fetch[iter][ci]; } } } } __syncthreads(); // Simply disable the threads that won't work per warp const int32_t ACTIVE_THREADS_PER_WARP = THREADS_Q_PER_WARP * THREADS_P_PER_WARP; if (threadIdx.x >= ACTIVE_THREADS_PER_WARP) { return; } // Change the shape of each warp const int32_t out_x = threadIdx.x % THREADS_Q_PER_WARP; const int32_t out_y = threadIdx.x / THREADS_Q_PER_WARP; const int32_t thread_offset_x = out_x * TILE_Q_THREAD_; const int32_t thread_offset_y = out_y * TILE_P_THREAD_; // How many registers required per row const int32_t TILE_W_THREAD = (TILE_Q_THREAD_ - 1) * V_ + S_; const int32_t TILE_H_THREAD = (TILE_P_THREAD_ - 1) * U_ + R_; const int32_t REGS_PER_ROW = (TILE_W_THREAD + 1) / 2; // Pre load to registers to save SMem operations T_ELEM2 in[REGS_PER_ROW]; T_MATH in_s[TILE_H_THREAD][TILE_W_THREAD]; #pragma unroll for (int32_t hi = 0; hi < TILE_H_THREAD; ++hi) { // Use large LDS #pragma unroll for (int32_t reg = 0; reg < REGS_PER_ROW; ++reg) { in[reg] = reinterpret_cast( &sIn[threadIdx.y][thread_offset_y * U_ + hi][thread_offset_x * V_ + reg * 2])[0]; } // Convert to fp32 #pragma unroll for (int32_t wi = 0; wi < TILE_W_THREAD; ++wi) { in_s[hi][wi] = cuGet(reinterpret_cast(in)[wi]); } } // For beta and epilog T_ELEM *yStart = yData + (ptrdiff_t)n * convInfo.y_strideA[0] + (ptrdiff_t)c_start * convInfo.y_strideA[1] + (ptrdiff_t)tile_p_idx * TILE_P_CTA_ * convInfo.y_strideA[2] + (ptrdiff_t)tile_q_idx * TILE_Q_CTA_; // Fully unroll #pragma unroll for (int32_t pi = 0; pi < TILE_P_THREAD_; ++pi) { // ACCs per row T_MATH conv[TILE_Q_THREAD_] = {cuGet(0.00)}; #pragma unroll for (int32_t r = 0; r < R_; r++) { #pragma unroll for (int32_t s = 0; s < S_; s++) { #pragma unroll for (int32_t qi = 0; qi < TILE_Q_THREAD_; ++qi) { conv[qi] += in_s[pi * U_ + r][qi * V_ + s] * cuGet(weight[r][s]); } } } // Swizzle in SMem before STG. Convert Accs to fp16 first T_ELEM convH[TILE_Q_THREAD_]; for (int32_t qi = 0; qi < TILE_Q_THREAD_; ++qi) { if (IS_BETA_0) { convH[qi] = cuGet(conv[qi] * alpha); } else { // Beta scaling T_MATH y_val = cuGet(0.00); if (((c_start + threadIdx.y) < convInfo.groupCount) && ((tile_p_idx * TILE_P_CTA_ + thread_offset_y + pi) < convInfo.y_dimA[2]) && ((tile_q_idx * TILE_Q_CTA_ + thread_offset_x + qi) < convInfo.y_dimA[3])) { y_val = cuGet(yStart[threadIdx.y * convInfo.y_strideA[1] + (thread_offset_y + pi) * convInfo.y_strideA[2] + (thread_offset_x + qi)]); } convH[qi] = cuGet(conv[qi] * alpha + y_val * beta); } } if (TILE_Q_THREAD_ & 0x1) { // Use STS.16 #pragma unroll for (int32_t qi = 0; qi < TILE_Q_THREAD_; ++qi) { sOut[threadIdx.y][thread_offset_y + pi][thread_offset_x + qi] = convH[qi]; } } else { // Use large STS #pragma unroll for (int32_t qi = 0; qi < TILE_Q_THREAD_ / 2; ++qi) { reinterpret_cast(&sOut[threadIdx.y][thread_offset_y + pi][thread_offset_x + qi * 2])[0] = reinterpret_cast(&convH[qi * 2])[0]; } } } __syncthreads(); // Epilog // Determine the CTA's edge in P/Q dimension in epilog const int32_t pEnd = (convInfo.y_dimA[2] - tile_p_idx * TILE_P_CTA_) > TILE_P_CTA_ ? TILE_P_CTA_ : (convInfo.y_dimA[2] - tile_p_idx * TILE_P_CTA_); const int32_t qEnd = (convInfo.y_dimA[3] - tile_q_idx * TILE_Q_CTA_) > TILE_Q_CTA_ ? TILE_Q_CTA_ : (convInfo.y_dimA[3] - tile_q_idx * TILE_Q_CTA_); // Use the whole CTA to store one C // Simplify the STG pattern by just adding an offset in P dimension (waste some threads) const int32_t ACTIVE_THREADS_PER_CTA = ACTIVE_THREADS_PER_WARP * TILE_C_CTA_; const int32_t OUT_HEIGHT_PER_CTA = ACTIVE_THREADS_PER_CTA / TILE_Q_CTA_; const int32_t OUT_STGS_H = (TILE_P_CTA_ + OUT_HEIGHT_PER_CTA - 1) / OUT_HEIGHT_PER_CTA; const int32_t OUT_STEP_H = (TILE_P_CTA_ + OUT_STGS_H - 1) / OUT_STGS_H; const int32_t linearIdxOut = threadIdx.y * ACTIVE_THREADS_PER_WARP + threadIdx.x; const int32_t qi = linearIdxOut % TILE_Q_CTA_; const int32_t pi = linearIdxOut / TILE_Q_CTA_; if (linearIdxOut < OUT_STEP_H * TILE_Q_CTA_) { if ((c_start + IMG_LDGS_C) <= convInfo.groupCount) { // The optimized path, where we don't need to check boundary C #pragma unroll for (int32_t iter = 0; iter < OUT_STGS_H; ++iter) { const int32_t p_current = pi + iter * OUT_STEP_H; if ((qi < qEnd) && (p_current < pEnd)) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { yStart[ci * convInfo.y_strideA[1] + p_current * convInfo.y_strideA[2] + qi] = sOut[ci][p_current][qi]; } } } } else { // The un-optimized path #pragma unroll for (int32_t iter = 0; iter < OUT_STGS_H; ++iter) { const int32_t p_current = pi + iter * OUT_STEP_H; if ((qi < qEnd) && (p_current < pEnd)) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { if ((ci + c_start) < convInfo.groupCount) { yStart[ci * convInfo.y_strideA[1] + p_current * convInfo.y_strideA[2] + qi] = sOut[ci][p_current][qi]; } } } } } } } // Assumptions: // 1) s < BLOCK_SIZE // 2) We have enough smem // 3) N % EXAMPLE_PER_THREAD == 0 // 4) s is odd // 5) For fp16 W must be a multiple of 2 // 6) NCHW // 7) Q == W // 8) dilation == 1 extern "C" __launch_bounds__(BLOCK_SIZE) __global__ void conv1D_NCHW(T_ELEM *__restrict__ out, const T_ELEM *__restrict__ in, const T_ELEM *__restrict__ weights, const int c, const int w, const int paddedW, const int pad_w, const int s, const float alpha, const float beta) { extern __shared__ char dsmem[]; using T_MATH_VEC = typename make_vectorized::type; constexpr int UNROLL_FACTOR = (sizeof(T_ELEM) == 2) ? 2 : 1; int channel = blockIdx.x; int example = blockIdx.y * EXAMPLE_PER_THREAD; in += example * c * w + channel * w; out += example * c * w + channel * w; T_ELEM *weightSmem = (T_ELEM *)dsmem; T_ELEM *weightSmemOdd; T_ELEM *inputSmem; if (sizeof(T_ELEM) == 2) { weightSmemOdd = (T_ELEM *)(dsmem + (s + 1) * sizeof(T_ELEM)); if (threadIdx.x == 0) { weightSmemOdd[0] = 0; weightSmem[s] = 0; } inputSmem = (T_ELEM *)(dsmem + 2 * (s + 1) * sizeof(T_ELEM)); } else { inputSmem = (T_ELEM *)(dsmem + (s + 1) * sizeof(T_ELEM)); } // // FIXME: is it too strict? // // Enabled only when both pad_w and w are even const bool useHalf2Loads = ((sizeof(T_ELEM) == 2) && (pad_w % 2 == 0) && (w % 2 == 0)); if (threadIdx.x < s) { if (BACKWARDS) { weightSmem[threadIdx.x] = weights[channel * s + (s - threadIdx.x - 1)]; if (sizeof(T_ELEM) == 2) { weightSmemOdd[threadIdx.x + 1] = weights[channel * s + (s - threadIdx.x - 1)]; } } else { weightSmem[threadIdx.x] = weights[channel * s + threadIdx.x]; if (sizeof(T_ELEM) == 2) { weightSmemOdd[threadIdx.x + 1] = weights[channel * s + threadIdx.x]; } } } for (int i = 0; i < 2 * BLOCK_SIZE * OUTPUT_PER_THREAD; i += BLOCK_SIZE * OUTPUT_PER_THREAD) { int wElem = i + threadIdx.x * OUTPUT_PER_THREAD; #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx += (useHalf2Loads ? 2 : 1)) { const int in_idx = wElem + outputIdx - pad_w; // A common trick to check if the idx is in a padding position if ((unsigned int)in_idx < (unsigned int)w) { #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { if (useHalf2Loads) { *(half2 *)(&inputSmem[localExample * paddedW + wElem + outputIdx]) = *(half2 *)(&in[localExample * c * w + in_idx]); } else { inputSmem[localExample * paddedW + wElem + outputIdx] = in[localExample * c * w + in_idx]; } } } else if (in_idx < (w + pad_w)) { // return 0s for padding #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { if (useHalf2Loads) { *(half2 *)(&inputSmem[localExample * paddedW + wElem + outputIdx]) = make_half2(0, 0); } else { inputSmem[localExample * paddedW + wElem + outputIdx] = 0; } } } } } __syncthreads(); for (int i = 0; i < w; i += BLOCK_SIZE * OUTPUT_PER_THREAD) { int wElem = i + threadIdx.x * OUTPUT_PER_THREAD; if (wElem >= w) { break; } T_ELEM nextIn[EXAMPLE_PER_THREAD][OUTPUT_PER_THREAD]; const int preloadIdx = 2 * BLOCK_SIZE * OUTPUT_PER_THREAD + wElem; #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx += (useHalf2Loads ? (2 * OUTPUT_PER_THREAD / 2) : 1)) { const int in_idx = preloadIdx + outputIdx - pad_w; if ((unsigned int)in_idx < (unsigned int)w) { #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { if (useHalf2Loads) { if (OUTPUT_PER_THREAD == 2) { *(half2 *)(&nextIn[localExample][outputIdx]) = *(half2 *)(&in[localExample * c * w + in_idx]); } } else { nextIn[localExample][outputIdx] = in[localExample * c * w + in_idx]; } } } else if (in_idx < (w + pad_w)) { // return 0s for padding #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { if (useHalf2Loads) { if (OUTPUT_PER_THREAD == 2) { *(half2 *)(&nextIn[localExample][outputIdx]) = make_half2(0, 0); } } else { nextIn[localExample][outputIdx] = 0; } } } } T_MATH sum[EXAMPLE_PER_THREAD][OUTPUT_PER_THREAD]; #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx++) { #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { sum[localExample][outputIdx] = 0; } } if (sizeof(T_ELEM) == 2) { T_MATH_VEC localSum[EXAMPLE_PER_THREAD][OUTPUT_PER_THREAD]; #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx++) { #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { memset(localSum, 0, sizeof(localSum)); } } for (int j = 0; j < s; j += UNROLL_FACTOR) { #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx++) { #pragma unroll for (int k = 0; k < UNROLL_FACTOR; k += 2) { int weightIdx = j + k; int inIndex = wElem + (outputIdx / 2) * 2 + weightIdx; // We have two weight smem arrays. One even aligned, one odd aligned. Use even for even, odd for // odd. dotProd( localSum, (half2 *)(outputIdx % 2 == 0 ? weightSmem : weightSmemOdd), (half2 *)(inputSmem), inIndex / 2, weightIdx / 2, paddedW / 2, outputIdx); } } } #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx++) { #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { sum[localExample][outputIdx] = cuAdd(localSum[localExample][outputIdx].x, sum[localExample][outputIdx]); sum[localExample][outputIdx] = cuAdd(localSum[localExample][outputIdx].y, sum[localExample][outputIdx]); } } } else { for (int j = 0; j < s; j += UNROLL_FACTOR) { #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx++) { #pragma unroll for (int k = 0; k < UNROLL_FACTOR; k++) { int weightIdx = j + k; int inIndex = wElem + outputIdx + weightIdx; dotProd( sum, weightSmem, inputSmem, inIndex, weightIdx, paddedW, outputIdx); } } } } #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx += (sizeof(T_ELEM) == 2 ? 2 : 1)) { if (sizeof(T_ELEM) == 2) { if (pad_w % OUTPUT_PER_THREAD == 0) { if constexpr (BETA_NON_ZERO) { T_MATH_VEC oldOut = cuGet(*(half2 *)(&out[localExample * c * w + wElem + outputIdx])); *(half2 *)(&out[localExample * c * w + wElem + outputIdx]) = cuGet( cuAdd(cuProduct(cuGet(alpha), *(T_MATH_VEC *)(&sum[localExample][outputIdx])), cuProduct(cuGet(beta), oldOut))); } else { *(half2 *)(&out[localExample * c * w + wElem + outputIdx]) = cuGet( cuProduct(cuGet(alpha), *(T_MATH_VEC *)(&sum[localExample][outputIdx]))); } } else { #pragma unroll for (int i = 0; i < OUTPUT_PER_THREAD; i++) { if constexpr (BETA_NON_ZERO) { out[localExample * c * w + wElem + outputIdx + i] = cuGet( cuAdd(cuMul(sum[localExample][outputIdx + i], cuGet(alpha)), cuMul(cuGet(out[localExample * c * w + wElem + outputIdx + i]), cuGet(beta)))); } else { out[localExample * c * w + wElem + outputIdx + i] = cuGet(cuMul(sum[localExample][outputIdx + i], cuGet(alpha))); } } } } else { if constexpr (BETA_NON_ZERO) { out[localExample * c * w + wElem + outputIdx] = cuGet(cuAdd( cuMul(sum[localExample][outputIdx], cuGet(alpha)), cuMul(cuGet(out[localExample * c * w + wElem + outputIdx]), cuGet(beta)))); } else { out[localExample * c * w + wElem + outputIdx] = cuGet(cuMul(sum[localExample][outputIdx], cuGet(alpha))); } } } } if (preloadIdx < paddedW) { #pragma unroll for (int outputIdx = 0; outputIdx < OUTPUT_PER_THREAD; outputIdx += (sizeof(T_ELEM) == 2 ? 2 : 1)) { #pragma unroll for (int localExample = 0; localExample < EXAMPLE_PER_THREAD; localExample++) { if (sizeof(T_ELEM) == 2) { *(half2 *)(&inputSmem[localExample * paddedW + preloadIdx + outputIdx]) = *(half2 *)(&nextIn[localExample][outputIdx]); } else { inputSmem[localExample * paddedW + preloadIdx + outputIdx] = nextIn[localExample][outputIdx]; } } } } __syncthreads(); } } // Pretty much as simple as it can be. extern "C" __launch_bounds__(BLOCK_SIZE) __global__ void conv1D_NCHW_general(T_ELEM *__restrict__ out, const T_ELEM *__restrict__ in, const T_ELEM *__restrict__ weights, const int c, const int w, const int pad_w, const int dilation_w, const int q, const int s, const float alpha, const float beta) { const int32_t DILATION_W = (DILATION != 0) ? DILATION : dilation_w; int channel = blockIdx.x; int example = blockIdx.y; in += example * c * w + channel * w; out += example * c * q + channel * q; weights += channel * s; for (int qElem = threadIdx.x; qElem < q; qElem += BLOCK_SIZE) { T_MATH sum = 0; for (int j = 0; j < s; j++) { const int in_idx = qElem + j * DILATION_W - pad_w; if ((unsigned int)in_idx < (unsigned int)w) { // handle padding // xcorr only if (BACKWARDS) { sum = cuFma(cuGet(in[in_idx]), cuGet(weights[s - 1 - j]), sum); } else { sum = cuFma(cuGet(in[in_idx]), cuGet(weights[j]), sum); } } } if constexpr (BETA_NON_ZERO) { out[qElem] = cuGet( cuAdd(cuMul(sum, cuGet(alpha)), cuMul(cuGet(out[qElem]), cuGet(beta)))); } else { out[qElem] = cuGet(cuMul(sum, cuGet(alpha))); } } } extern "C" __launch_bounds__(256) __global__ void conv2d_c1_k1_nchw_hw_packed(ConvInfo convInfo, const T_ELEM *xData, const T_ELEM *wData, T_ELEM *yData, T_MATH alpha, T_MATH beta, cudnn::reduced_divisor y_width, cudnn::reduced_divisor x_width, const int32_t y_h_batch) { const int32_t WINDOW_H = (windowSize != 0) ? windowSize : convInfo.w_dimA[2]; const int32_t WINDOW_W = (windowSize != 0) ? windowSize : convInfo.w_dimA[3]; // Alignment on up to 8-byte boundaries (for double) extern __shared__ __align__(8) unsigned char shared_mem[]; const int32_t x_h_batch = WINDOW_H + (y_h_batch - 1) * convInfo.strideA[0]; const int32_t block_ni = blockIdx.x; const int32_t block_ci = blockIdx.y; T_ELEM *x_shared = reinterpret_cast(shared_mem); T_ELEM *w_shared = x_shared + x_h_batch * convInfo.x_dimA[3]; const int32_t filterStrideK = convInfo.w_dimA[1] * convInfo.w_dimA[2] * convInfo.w_dimA[3]; const T_ELEM *block_xData = xData + block_ni * convInfo.x_strideA[0] + block_ci * convInfo.x_strideA[1]; const T_ELEM *block_wData = wData + block_ci * filterStrideK; T_ELEM *block_yData = yData + block_ni * convInfo.y_strideA[0] + block_ci * convInfo.y_strideA[1]; int32_t x_h_read_remaining = convInfo.x_dimA[2]; const int32_t halo_height = max(WINDOW_H - convInfo.strideA[0], 0); memcpy_packed(w_shared, block_wData, cuGet(1.0), WINDOW_H * WINDOW_W); #pragma unroll for (int32_t y_hi_off = 0; y_hi_off < convInfo.y_dimA[2]; y_hi_off += y_h_batch) { __syncthreads(); int32_t pad_offset = (y_hi_off == 0) ? convInfo.padA[0] : 0; int32_t x_h_read = x_h_read = min(x_h_read_remaining, x_h_batch); memcpy_packed(x_shared, block_xData, cuGet(1.0), x_h_read * convInfo.x_dimA[3]); // On first batch, offset next batch to accomodate padding int32_t batch_padded_height = (y_hi_off == 0) ? convInfo.padA[0] : 0; int32_t height_offset = x_h_batch - halo_height - batch_padded_height; block_xData += height_offset * convInfo.x_dimA[3]; x_h_read_remaining -= height_offset; __syncthreads(); int32_t y_h_batch_cur = min(y_h_batch, convInfo.y_dimA[2] - y_hi_off); #pragma unroll for (int32_t y_idx = threadIdx.x; y_idx < y_h_batch_cur * convInfo.y_dimA[3]; y_idx += blockDim.x) { int32_t y_hi, y_wi; y_width.divmod(y_idx, y_hi, y_wi); const int32_t x_hStart_shared = (y_hi * convInfo.strideA[0]) - pad_offset; y_hi += y_hi_off; const int32_t x_hStart = (y_hi * convInfo.strideA[0]) - convInfo.padA[0]; const int32_t x_wStart = (y_wi * convInfo.strideA[1]) - convInfo.padA[1]; const int32_t y_off = y_hi * convInfo.y_strideA[2] + y_wi * convInfo.y_strideA[3]; T_ELEM y_val = (beta == cuGet(0.00)) ? cuGet(0.00) : block_yData[y_off]; T_MATH accumulation = cuGet(0.00); #pragma unroll for (int32_t win_hi = 0; win_hi < WINDOW_H; ++win_hi) { #pragma unroll for (int32_t win_wi = 0; win_wi < WINDOW_W; ++win_wi) { const int32_t x_hi_shared = win_hi + x_hStart_shared; const int32_t x_hi = win_hi + x_hStart; const int32_t x_wi = win_wi + x_wStart; const int32_t x_idx = x_hi_shared * convInfo.x_dimA[3] + x_wi; bool inImage = x_hi >= 0 && x_hi < convInfo.x_dimA[2] && x_wi >= 0 && x_wi < convInfo.x_dimA[3]; // Set win_hi/win_wi based on convolution mode const int32_t mode_win_hi = (IS_CORR) ? win_hi : WINDOW_H - 1 - win_hi; const int32_t mode_win_wi = (IS_CORR) ? win_wi : WINDOW_W - 1 - win_wi; T_MATH x_val = inImage ? cuGet(x_shared[x_idx]) : cuGet(0.00); T_MATH w_val = cuGet(w_shared[mode_win_hi * WINDOW_W + mode_win_wi]); accumulation += x_val * w_val; } } block_yData[y_off] = cuGet(alpha * accumulation + beta * cuGet(y_val)); } } } // Assumptions: // 1) channel % C_PER_BLOCK == 0 if SSS // channel % (2 * C_PER_BLOCK) == 0 if HSH or HHH // 2) s <= Q_PER_BLOCK // 3) HHH, HSH, GSG, and SSS only extern "C" __launch_bounds__(BLOCK_SIZE) __global__ void conv1d_c1_k1_nhwc(T_ELEM *__restrict__ out, const T_ELEM *__restrict__ in, const T_ELEM *__restrict__ weights, const int32_t c, const int32_t w, const int32_t s, const int32_t q, const int32_t pad, const float alpha, const float beta, const cudnn::reduced_divisor div_s) { constexpr int32_t C_PER_BLOCK_VEC = (sizeof(T_ELEM) == 2) ? C_PER_BLOCK * 2 : C_PER_BLOCK; // input elements that we initially load into smem // we multiply by 1 + DILATION for dgrad because dilated weights requires additional initial load // we divide by stride for dgrad b.c. input dilation is only performed virtually constexpr int32_t W_SIZE_SMEM = IS_DGRAD ? (Q_PER_STAGE * (1 + DILATION)) / STRIDE : Q_PER_STAGE * (STRIDE + DILATION); // input elements that we additionally load per stage constexpr int32_t W_PER_STAGE = IS_DGRAD ? Q_PER_STAGE / STRIDE : Q_PER_STAGE * STRIDE; const int32_t channelOffset = blockIdx.x * C_PER_BLOCK_VEC; const int32_t exampleOffset = blockIdx.y * N_PER_THREAD; const int32_t cVec = (sizeof(T_ELEM) == 2) ? (c / 2) : c; // vectorized c dimension const int32_t pad_smem = IS_DGRAD ? pad / STRIDE : pad; // pad is halved in smem for strided dgrad // padded width in smem. for strided dgrad, add one more pad at the end if pad is does not divide by pad const int32_t pw = w + 2 * pad_smem + ((IS_DGRAD && (pad % STRIDE != 0)) ? 1 : 0); in += exampleOffset * w * c + channelOffset; // NWC weights += channelOffset * s; // KS out += exampleOffset * q * c + channelOffset; // NQK extern __align__(sizeof(T_VEC)) __shared__ unsigned char dsmem[]; T_ELEM *weightSmem = (T_ELEM *)(dsmem) + W_SIZE_SMEM * N_PER_THREAD * C_PER_BLOCK_VEC; T_VEC *inputSmemVec = (T_VEC *)(dsmem); T_VEC *weightSmemVec = (T_VEC *)weightSmem; // blockDim = (BLOCK_SIZE, 1, 1) // gridDim = (c / C_PER_BLOCK, n / N_PER_THREAD, 1) // in = (NHWC) = (NWC) // weights = (KRSC) = (KS) // out = (NPQK) = (NQK) // weightSmem = (SK) = [S][C_PER_BLOCK] - transposed filter buffer // inputSmem = (WC) = [N_PER_THREAD][W_SIZE_SMEM][C_PER_BLOCK] - input circular buffer // populate filter into smem // perform unvectorized (KS) => (SK) layout change // bank conflict is expected, but usually small enough to ignore // // weights[blockIdx.x * C_PER_BLOCK * s + i] should not go out of bounds since // 0 <= blockIdx.x < C / C_PER_BLOCK // 0 <= i < C_PER_BLOCK * s // so 0 <= blockIdx.x * C_PER_BLOCK * s + i < c * s for (int32_t i = threadIdx.x; i < s * C_PER_BLOCK_VEC; i += BLOCK_SIZE) { int32_t c_filt_idx, s_filt_idx; div_s.divmod(i, c_filt_idx, s_filt_idx); if (IS_DGRAD ^ (!IS_CORRELATION)) { weightSmem[(s - s_filt_idx - 1) * C_PER_BLOCK_VEC + c_filt_idx] = weights[i]; } else { weightSmem[s_filt_idx * C_PER_BLOCK_VEC + c_filt_idx] = weights[i]; } } const int32_t c_tx = threadIdx.x % C_PER_BLOCK; const int32_t wq_tx = threadIdx.x / C_PER_BLOCK; #pragma unroll // populate smem with inputs for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { #pragma unroll for (int32_t w_iter = 0; w_iter < W_SIZE_SMEM; w_iter += Q_PER_BLOCK) { const int32_t w_smem_idx = w_iter + wq_tx; const int32_t w_glbl_idx = w_smem_idx - pad_smem; // A common trick to check if the idx is in a padding position if ((uint32_t)w_glbl_idx < (uint32_t)w) { inputSmemVec[localExample * W_SIZE_SMEM * C_PER_BLOCK + w_smem_idx * C_PER_BLOCK + c_tx] = ((T_VEC *)in)[localExample * w * cVec + w_glbl_idx * cVec + c_tx]; } else if (w_smem_idx < pw) { // zero initialization inputSmemVec[localExample * W_SIZE_SMEM * C_PER_BLOCK + w_smem_idx * C_PER_BLOCK + c_tx] = {}; } } } __syncthreads(); T_VEC inPreload[N_PER_THREAD][W_PER_STAGE / Q_PER_BLOCK]; T_VEC outPreload[N_PER_THREAD][Q_PER_STAGE / Q_PER_BLOCK]; T_MATH_VEC sum[N_PER_THREAD][Q_PER_STAGE / Q_PER_BLOCK]; for (int32_t q_stage = 0, stage_num = 0; q_stage < q; q_stage += Q_PER_STAGE, ++stage_num) { // preload if not last iteration const bool isLastStage = (q_stage + Q_PER_STAGE) >= q; // preload input into register if (!isLastStage) { #pragma unroll for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { #pragma unroll for (int32_t w_iter = 0, i = 0; w_iter < W_PER_STAGE; w_iter += Q_PER_BLOCK, ++i) { const int32_t w_smem_idx = W_SIZE_SMEM + W_PER_STAGE * stage_num + w_iter + wq_tx; const int32_t w_glbl_idx = w_smem_idx - pad_smem; // A common trick to check if the idx is in a padding position if ((uint32_t)w_glbl_idx < (uint32_t)w) { inPreload[localExample][i] = ((T_VEC *)in)[localExample * w * cVec + w_glbl_idx * cVec + c_tx]; } else if (w_smem_idx < pw) { // zero initialization inPreload[localExample][i] = {}; } } } } // preload output into register if (BETA_NON_ZERO) { #pragma unroll for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { #pragma unroll for (int32_t q_iter = 0, i = 0; q_iter < Q_PER_STAGE; q_iter += Q_PER_BLOCK, ++i) { const int32_t q_idx = q_stage + q_iter + wq_tx; if (q_idx < q) { outPreload[localExample][i] = ((T_VEC *)out)[localExample * q * cVec + q_idx * cVec + c_tx]; } } } } memset(sum, 0, sizeof(sum)); #pragma unroll // compute convolution for (int32_t q_iter = 0, i = 0; q_iter < Q_PER_STAGE; q_iter += Q_PER_BLOCK, ++i) { const int32_t q_idx = q_stage + q_iter + wq_tx; if (q_idx < q) { if (IS_DGRAD && STRIDE == 2 && DILATION == 1) { for (int32_t conv_s = (STRIDE + (pad - q_idx) % STRIDE) % STRIDE; conv_s < s; conv_s += STRIDE) { const T_VEC weightVal = weightSmemVec[conv_s * C_PER_BLOCK + c_tx]; #pragma unroll for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { conv_fma(sum[localExample][i], weightVal, inputSmemVec[localExample * W_SIZE_SMEM * C_PER_BLOCK + (((q_idx + conv_s) / STRIDE) % W_SIZE_SMEM) * C_PER_BLOCK + c_tx]); } } } else if (IS_DGRAD && STRIDE == 2 && DILATION == 2) { if (((pad - q_idx) % STRIDE) == 0) { for (int32_t conv_s = 0; conv_s < s; ++conv_s) { const T_VEC weightVal = weightSmemVec[conv_s * C_PER_BLOCK + c_tx]; #pragma unroll for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { conv_fma(sum[localExample][i], weightVal, inputSmemVec[localExample * W_SIZE_SMEM * C_PER_BLOCK + ((q_idx / STRIDE + conv_s) % W_SIZE_SMEM) * C_PER_BLOCK + c_tx]); } } } // STRIDE = 1,2,4 && DILATION = 1,2,4 might be possible to support. // see // https://p4sw-swarm.nvidia.com/files/sw/gpgpu/MachineLearning/cudnn/src/cnn_infer/src/conv1d_c1_k1_nhwc_kernels.cu?v=%40%3D31858094#269 } else { for (int32_t conv_s = 0; conv_s < s; ++conv_s) { const T_VEC weightVal = weightSmemVec[conv_s * C_PER_BLOCK + c_tx]; #pragma unroll for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { conv_fma(sum[localExample][i], weightVal, inputSmemVec[localExample * W_SIZE_SMEM * C_PER_BLOCK + ((STRIDE * q_idx + DILATION * conv_s) % W_SIZE_SMEM) * C_PER_BLOCK + c_tx]); } } } } } #pragma unroll // write sum to global memory with alpha beta scaling for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { #pragma unroll for (int32_t q_iter = 0, i = 0; q_iter < Q_PER_STAGE; q_iter += Q_PER_BLOCK, ++i) { const int32_t q_idx = q_stage + q_iter + wq_tx; if (q_idx < q) { if (BETA_NON_ZERO) { out_fma(((T_VEC *)out)[localExample * q * cVec + q_idx * cVec + c_tx], alpha, sum[localExample][i], beta, outPreload[localExample][i]); } else { out_fma( ((T_VEC *)out)[localExample * q * cVec + q_idx * cVec + c_tx], alpha, sum[localExample][i]); } } } } // break if last iteration if (isLastStage) { break; } __syncthreads(); #pragma unroll // populate next input stage with prefetched values for (int32_t localExample = 0; localExample < N_PER_THREAD; ++localExample) { #pragma unroll for (int32_t w_iter = 0, i = 0; w_iter < W_PER_STAGE; w_iter += Q_PER_BLOCK, ++i) { const int32_t w_smem_idx = W_SIZE_SMEM + W_PER_STAGE * stage_num + w_iter + wq_tx; if (w_smem_idx < pw) { inputSmemVec[localExample * W_SIZE_SMEM * C_PER_BLOCK + (w_smem_idx % W_SIZE_SMEM) * C_PER_BLOCK + c_tx] = inPreload[localExample][i]; } } } __syncthreads(); } } extern "C" __launch_bounds__(CONV2D_C1_K1_NHWC_THREAD_COUNT) __global__ void conv2d_c1_k1_nhwc(const ConvInfo convInfo, const T_IN *xData, const T_FILT *wData, T_OUT *yData, const T_MATH_ALPHA_BETA alpha, const T_MATH_ALPHA_BETA beta, C1K1NhwcParams params, const int32_t y_elem_count, const T_OUT *zData, const T_MATH_ALPHA_BETA *bias, const cudnnActivationStruct activationDesc) { // NOTE: Variable name convention is as follows: // - ALL_CAP : template or compiler or pure constant var // - TitleCap : can be template or runtime. Optimized path only for template // - firstLower : runtime variable // Perf relies on using fetch buffers for wData and xData for data reuse and unrolling loops by using compiler-aware // values: TitleCap vars must take template values. Though the function is written to work correctly without this // condition, but not necessarily high-perf. constexpr bool WS_TMPLVAR = WINDOW_SIZE > 0; // whether window size is template vars. // clang-format off : to not add a space before VCAST comment and invalidate it. // VCAST_DONT_INSTRUMENT_START const int32_t WindowSizeH = WS_TMPLVAR ? WINDOW_SIZE : convInfo.w_dimA[2]; const int32_t WindowSizeW = WS_TMPLVAR ? WINDOW_SIZE : convInfo.w_dimA[3]; // VCAST_DONT_INSTRUMENT_END // clang-format on const int32_t W_BUF_SIZE = 5; // fixed buffer size to use when WindowSizeH and WindowSizeW are runtime vars. const bool UseWBuffer = WS_TMPLVAR || (WindowSizeH <= W_BUF_SIZE && WindowSizeW <= W_BUF_SIZE); T_MATH_CONV wData_hw[(WS_TMPLVAR) ? WindowSizeH : W_BUF_SIZE][(WS_TMPLVAR) ? WindowSizeW : W_BUF_SIZE]; constexpr bool CS_TMPLVAR = CONV_STRIDE_SIZE > 0; // whether conv-stride are template vars // clang-format off : to not add a space before VCAST comment and invalidate it. // VCAST_DONT_INSTRUMENT_START const int32_t ConvStrideH = CS_TMPLVAR ? CONV_STRIDE_SIZE : convInfo.strideA[0]; const int32_t ConvStrideW = CS_TMPLVAR ? CONV_STRIDE_SIZE : convInfo.strideA[1]; // VCAST_DONT_INSTRUMENT_END // clang-format on const int32_t XDataBufSzH = WindowSizeH + (CONV2D_C1_K1_NHWC_H_PER_THREAD - 1) * ConvStrideH; const int32_t XDataBufSzW = WindowSizeW + (CONV2D_C1_K1_NHWC_W_PER_THREAD - 1) * ConvStrideW; const int32_t X_BUF_SIZE = 7; // fixed buffer size to use when ConvStrideH or ConvStrideW are runtime var. const bool UseXBuffer = (CS_TMPLVAR || // only when conv-stride are template vars (XDataBufSzH <= X_BUF_SIZE && XDataBufSzW <= X_BUF_SIZE) // or they are smaller than fixed max. ); T_MATH_CONV xData_hw[(CS_TMPLVAR) ? XDataBufSzH : X_BUF_SIZE][(CS_TMPLVAR) ? XDataBufSzW : X_BUF_SIZE]; // Index for individual thread const int32_t tid = blockIdx.x * blockDim.x + threadIdx.x; // compute (n,h,w,c) index for the first pixel process by current thread. int32_t y_ci, y0_wi, y0_hi, y_ni; { int32_t y_ni_hi_wi, y_ni_hi; params.y_c_reduced.divmod(tid, y_ni_hi_wi, y_ci); params.y_w_reduced.divmod(y_ni_hi_wi, y_ni_hi, y0_wi); params.y_h_reduced.divmod(y_ni_hi, y_ni, y0_hi); } y0_hi *= CONV2D_C1_K1_NHWC_H_PER_THREAD; y0_wi *= CONV2D_C1_K1_NHWC_W_PER_THREAD; // yData index for the (0,0) pixel of the particular (n,c) image processed by this thread const int32_t y00_idx = y_ni * convInfo.y_strideA[0] + y0_hi * convInfo.y_strideA[2] + y0_wi * convInfo.y_strideA[3] + y_ci * convInfo.y_strideA[1]; // NHWC if (y00_idx >= y_elem_count) { return; // out of bound; should not happen when numbers of threads is correctly calculated. } if (UseWBuffer) { // ldg wData for channel into wData_hw array for (int32_t hi = 0; hi < WindowSizeH; ++hi) { for (int32_t wi = 0; wi < WindowSizeW; ++wi) { const int32_t w_idx = y_ci * params.wStrideA[0] + hi * params.wStrideA[2] + wi * params.wStrideA[3]; const int32_t mode_hi = (IS_CORR) ? hi : WindowSizeH - 1 - hi; const int32_t mode_wi = (IS_CORR) ? wi : WindowSizeW - 1 - wi; wData_hw[mode_hi][mode_wi] = cuGet(wData[w_idx]); } } } if (UseXBuffer) { // loads a XDataBufSzH by XDataBufSzW patch of xData starting at index (x0_hi, x0_wi) into buffer xData_hw; if // index is out of bound, set to zero. // (h,w) index of the first input pixel, can be negative due to padding. const int32_t x0_hi = (y0_hi * ConvStrideH) - convInfo.padA[0]; const int32_t x0_wi = (y0_wi * ConvStrideW) - convInfo.padA[1]; // const int32_t x_ni = y_ni, x_ci = y_ci const int32_t x00_idx = y_ni * convInfo.x_strideA[0] + y_ci * convInfo.x_strideA[1] + x0_hi * convInfo.x_strideA[2] + x0_wi * convInfo.x_strideA[3]; if (x0_hi >= 0 && x0_hi + XDataBufSzH <= convInfo.x_dimA[2] && x0_wi >= 0 && x0_wi + XDataBufSzW <= convInfo.x_dimA[3]) { // optimized branch. In this branch every (relevant) elements of xData_hw is read from global memory xData for (int32_t x_hj = 0; x_hj < XDataBufSzH; ++x_hj) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { const int32_t x_idx = x00_idx + x_hj * convInfo.x_strideA[2] + x_wj * convInfo.x_strideA[3]; xData_hw[x_hj][x_wj] = cuGet(xData[x_idx]); } } } else { // unoptimized path. In this branch some elements of xData_hw maps to out-of-bound read of xData. for (int32_t x_hj = 0; x_hj < XDataBufSzH; ++x_hj) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { if ((uint32_t(x0_hi + x_hj) < uint32_t(convInfo.x_dimA[2])) && (uint32_t(x0_wi + x_wj) < uint32_t(convInfo.x_dimA[3]))) { const int32_t x_idx = x00_idx + x_hj * convInfo.x_strideA[2] + x_wj * convInfo.x_strideA[3]; xData_hw[x_hj][x_wj] = cuGet(xData[x_idx]); } else { xData_hw[x_hj][x_wj] = 0; } } } } } // Compute and output loop T_MATH_CONV accumA[CONV2D_C1_K1_NHWC_H_PER_THREAD][CONV2D_C1_K1_NHWC_W_PER_THREAD]; { // compute convolution memset(accumA, 0, sizeof(accumA)); for (int32_t hi = 0; hi < WindowSizeH; ++hi) { for (int32_t wi = 0; wi < WindowSizeW; ++wi) { T_MATH_CONV wVal; if (UseWBuffer) { wVal = wData_hw[hi][wi]; } else { const int32_t w_idx = y_ci * params.wStrideA[0] + hi * params.wStrideA[2] + wi * params.wStrideA[3]; wVal = cuGet(wData[w_idx]); } for (int32_t y_hj = 0; y_hj < CONV2D_C1_K1_NHWC_H_PER_THREAD; ++y_hj) { for (int32_t y_wj = 0; y_wj < CONV2D_C1_K1_NHWC_W_PER_THREAD; ++y_wj) { T_MATH_CONV xVal; if (UseXBuffer) { xVal = xData_hw[y_hj * ConvStrideH + hi][y_wj * ConvStrideW + wi]; } else { // Not using buffer, perform totally unoptimized xData load here. const int32_t x_hi = ((y0_hi + y_hj) * ConvStrideH) - convInfo.padA[0] + hi; const int32_t x_wi = ((y0_wi + y_wj) * ConvStrideW) - convInfo.padA[1] + wi; if ((uint32_t(x_hi) < uint32_t(convInfo.x_dimA[2])) && (uint32_t(x_wi) < uint32_t(convInfo.x_dimA[3]))) { const int32_t x_idx = y_ni * convInfo.x_strideA[0] + y_ci * convInfo.x_strideA[1] + x_hi * convInfo.x_strideA[2] + x_wi * convInfo.x_strideA[3]; xVal = cuGet(xData[x_idx]); } else { xVal = cuGet(0.0); } } accumA[y_hj][y_wj] = cuFma(xVal, wVal, accumA[y_hj][y_wj]); } } } } // end double loop on y-hw index } // compute final accumulation and do bias activation for (uint32_t y_hj = 0; y_hj < CONV2D_C1_K1_NHWC_H_PER_THREAD; ++y_hj) { for (uint32_t y_wj = 0; y_wj < CONV2D_C1_K1_NHWC_W_PER_THREAD; ++y_wj) { const int32_t y_idx = y00_idx + y_hj * convInfo.y_strideA[2] + y_wj * convInfo.y_strideA[3]; // it's not necessary to check (y_idx < y_elem_count) as we've checked y00_idx before if (((y0_hi + y_hj) < convInfo.y_dimA[2]) && ((y0_wi + y_wj) < convInfo.y_dimA[3])) { T_MATH_ALPHA_BETA accumFinal = cuGet(accumA[y_hj][y_wj]) * alpha; if (DO_BIAS_ACT) { accumFinal += beta * cuGet(zData[y_idx]); accumFinal = cuAdd(accumFinal, cuGet(bias[y_ci])); switch (activationDesc.mode) { case CUDNN_ACTIVATION_SIGMOID: { T_MATH_ALPHA_BETA one = cuGet(1); accumFinal = cuDiv(one, cuAdd(one, cuExp(-accumFinal))); break; } case CUDNN_ACTIVATION_RELU: { T_MATH_ALPHA_BETA zero = cuGet(0); accumFinal = (cuGet(accumFinal) > zero) ? cuGet(accumFinal) : zero; if (activationDesc.reluNanOpt == CUDNN_PROPAGATE_NAN) { if (cuIsNan(cuGet(accumFinal))) accumFinal = cuNan(); } break; } case CUDNN_ACTIVATION_TANH: { T_MATH_ALPHA_BETA one = cuGet(1); T_MATH_ALPHA_BETA exp2x = cuExp(cuMul(accumFinal, cuGet(2))); accumFinal = cuDiv(cuSub(exp2x, one), cuAdd(exp2x, one)); break; } case CUDNN_ACTIVATION_CLIPPED_RELU: { T_MATH_ALPHA_BETA zero = cuGet(0); accumFinal = (cuGet(accumFinal) > zero) ? cuGet(accumFinal) : zero; if (activationDesc.reluNanOpt == CUDNN_PROPAGATE_NAN) { if (cuIsNan(cuGet(accumFinal))) accumFinal = cuNan(); } T_MATH_ALPHA_BETA reluCeiling = cuGet(activationDesc.coef); accumFinal = (accumFinal > reluCeiling) ? reluCeiling : accumFinal; break; } case CUDNN_ACTIVATION_ELU: { T_MATH_ALPHA_BETA zero = cuGet(0); T_MATH_ALPHA_BETA one = cuGet(1); if (cuGet(accumFinal) >= zero) { accumFinal = cuGet(accumFinal); } else { T_MATH_ALPHA_BETA eluAlpha = cuGet(activationDesc.coef); accumFinal = cuMul(eluAlpha, cuSub(cuExp(cuGet(accumFinal)), one)); } break; } case CUDNN_ACTIVATION_IDENTITY: break; } // end switch } else { if (beta != cuGet(0.00)) { accumFinal = cuFma(beta, cuGet(yData[y_idx]), accumFinal); } } yData[y_idx] = cuGet(accumFinal); } // end y_idx valid check } } // end double loop on y-hw index } // Modified from conv2d_c1_k1_nhwc_kernel and specialized for HSH and GSG // Applied sweep convolution on top of thread tiling, and implemented circular buffer using registers // H_PER_THREAD and W_PER_THREAD are configurable per kernel instantiation // Each thread computes 2 Cs and load/write the pixels via LDG.32/STG.32. Requires C to be even. // constexpr int32_t C_PER_THREAD = 2; // Block size needs to be smaller as each thread computes a larger tile now // constexpr int32_t CONV2D_C1_K1_NHWC_THREAD_COUNT_SPECIALIZED = 128; // BiasAct not supported yet, should be easy to implement a DO_BIAS_ACT extern "C" __launch_bounds__(CONV2D_C1_K1_NHWC_THREAD_COUNT_SPECIALIZED) __global__ void conv2d_c1_k1_nhwc_specialized(const ConvInfo convInfo, const T_IN *xData, const T_FILT *wData, T_OUT *yData, const T_MATH_ALPHA_BETA alpha, const T_MATH_ALPHA_BETA beta, C1K1NhwcParams params, const int32_t y_elem_count) { constexpr int32_t C_PER_THREAD = 2; // Actually they should be the same type (16-bits IO) typedef typename make_vectorized::type T_IN_ELEM2; typedef typename make_vectorized::type T_FILT_ELEM2; typedef typename make_vectorized::type T_OUT_ELEM2; // Index for individual thread const int32_t tid = blockIdx.x * blockDim.x + threadIdx.x; // compute (n,h,w,c) index for the first pixel process by current thread. int32_t y0_ci, y0_wi, y0_hi, y_ni; { int32_t y_ni_hi_wi, y_ni_hi; params.y_c_reduced.divmod(tid, y_ni_hi_wi, y0_ci); params.y_w_reduced.divmod(y_ni_hi_wi, y_ni_hi, y0_wi); params.y_h_reduced.divmod(y_ni_hi, y_ni, y0_hi); } y0_hi *= H_PER_THREAD; y0_wi *= W_PER_THREAD; y0_ci *= C_PER_THREAD; // yData index for the (0,0) pixel of the particular (n,c) image processed by this thread const int32_t y00_idx = y_ni * convInfo.y_strideA[0] + y0_hi * convInfo.y_strideA[2] + y0_wi * convInfo.y_strideA[3] + y0_ci * convInfo.y_strideA[1]; // NHWC if (y00_idx >= y_elem_count) { return; // out of bound; should not happen when numbers of threads is correctly calculated. } // Weight loading is not continuous since it's GRS layout. However, we can still load them via LDG.32 since each // thread computes 2 Cs. const int32_t NUM_WEIGHTS = WINDOW_SIZE * WINDOW_SIZE; T_FILT_ELEM2 wData_hw[NUM_WEIGHTS]; for (int32_t hi = 0; hi < WINDOW_SIZE; ++hi) { for (int32_t wi = 0; wi < WINDOW_SIZE; ++wi) { // Could get strideA from template args directly instead of wStrideA considering filter is fully packed const int32_t w_idx = (y0_ci / C_PER_THREAD) * NUM_WEIGHTS + hi * WINDOW_SIZE + wi; // Conv mode not considered here but later when the weights being unpacked wData_hw[hi * WINDOW_SIZE + wi] = reinterpret_cast(wData)[w_idx]; } } const int32_t XDataBufSzW = WINDOW_SIZE + (W_PER_THREAD - 1) * CONV_STRIDE_SIZE; // For sweep conv, we only gurantee XDataBufSzH can hold two output rows's input (in the circular buffer), // which is the same as H_PER_THREAD == 2. This could reduce the register required const int32_t XDataBufSzH = WINDOW_SIZE + CONV_STRIDE_SIZE; T_IN_ELEM2 xData_hw[XDataBufSzH][XDataBufSzW]; int32_t x0_hi = (y0_hi * CONV_STRIDE_SIZE) - convInfo.padA[0]; const int32_t x0_wi = (y0_wi * CONV_STRIDE_SIZE) - convInfo.padA[1]; const int32_t x00_idx = y_ni * convInfo.x_strideA[0] + y0_ci * convInfo.x_strideA[1] + x0_hi * convInfo.x_strideA[2] + x0_wi * convInfo.x_strideA[3]; // loads a XDataBufSzH by XDataBufSzW patch of xData starting at index (x0_hi, x0_wi) into buffer xData_hw; if // index is out of bound, set to zero if (x0_hi >= 0 && x0_hi + XDataBufSzH <= convInfo.x_dimA[2] && x0_wi >= 0 && x0_wi + XDataBufSzW <= convInfo.x_dimA[3]) { // optimized branch. In this branch every (relevant) elements of xData_hw is read from global memory xData for (int32_t x_hj = 0; x_hj < XDataBufSzH; ++x_hj) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { const int32_t x_idx = x00_idx + x_hj * convInfo.x_strideA[2] + x_wj * convInfo.x_strideA[3]; xData_hw[x_hj][x_wj] = reinterpret_cast(xData)[x_idx / 2]; } } } else { // unoptimized path. In this branch some elements of xData_hw maps to out-of-bound read of xData. for (int32_t x_hj = 0; x_hj < XDataBufSzH; ++x_hj) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { if ((uint32_t(x0_hi + x_hj) < uint32_t(convInfo.x_dimA[2])) && (uint32_t(x0_wi + x_wj) < uint32_t(convInfo.x_dimA[3]))) { const int32_t x_idx = x00_idx + x_hj * convInfo.x_strideA[2] + x_wj * convInfo.x_strideA[3]; xData_hw[x_hj][x_wj] = reinterpret_cast(xData)[x_idx / 2]; } else { memset(&xData_hw[x_hj][x_wj], 0, sizeof(xData_hw[x_hj][x_wj])); } } } } // Move to the next row to be fetched x0_hi += XDataBufSzH; int32_t x0_idx = x00_idx + XDataBufSzH * convInfo.x_strideA[2]; const bool isBetaNoneZero = (beta != cuGet(0.00)); // convert weights to MATH type first T_MATH_CONV weights[C_PER_THREAD][WINDOW_SIZE][WINDOW_SIZE]; #pragma unroll for (int32_t ci = 0; ci < C_PER_THREAD; ++ci) { #pragma unroll for (int32_t hi = 0; hi < WINDOW_SIZE; ++hi) { #pragma unroll for (int32_t wi = 0; wi < WINDOW_SIZE; ++wi) { const int32_t idx = ci * NUM_WEIGHTS + hi * WINDOW_SIZE + wi; const int32_t mode_hi = (IS_CORR) ? hi : (WINDOW_SIZE - 1 - hi); const int32_t mode_wi = (IS_CORR) ? wi : (WINDOW_SIZE - 1 - wi); weights[ci][mode_hi][mode_wi] = cuGet(reinterpret_cast(wData_hw)[idx]); } } } // Compute convolution T_MATH_CONV accumA[C_PER_THREAD][W_PER_THREAD]; // Pointer of the circular buffer that points to the first row of xData_hw that will be computed, which is also // the position for the next pre-fetch uint32_t pointer = 0; // Totally unroll the loop so that compiler knows which register to use // Should gutantee there's at least one row to compute in this CTA #pragma unroll for (uint32_t y_hj = 0; y_hj < H_PER_THREAD; ++y_hj) { // sweep the rows memset(accumA, 0, sizeof(accumA)); uint32_t row = pointer; #pragma unroll for (uint32_t hi = 0; hi < WINDOW_SIZE; ++hi) { #pragma unroll for (uint32_t ci = 0; ci < C_PER_THREAD; ++ci) { // loop the two Cs #pragma unroll for (uint32_t wi = 0; wi < WINDOW_SIZE; ++wi) { #pragma unroll for (uint32_t y_wj = 0; y_wj < W_PER_THREAD; ++y_wj) { // NOTE: access half2 via .x and .y works but has perf impact, and here we use the intrinsics. // TODO: support half math T_MATH_CONV xVal; xVal = cuGet( reinterpret_cast(xData_hw[row])[(y_wj * CONV_STRIDE_SIZE + wi) * 2 + ci]); accumA[ci][y_wj] = cuFma(xVal, weights[ci][hi][wi], accumA[ci][y_wj]); } } } // update data pointer to next row row += 1; if (row >= XDataBufSzH) { row = 0; } } // epilog for current row for (uint32_t y_wj = 0; y_wj < W_PER_THREAD; ++y_wj) { if ((y0_wi + y_wj) < convInfo.y_dimA[3]) { const int32_t y_idx = y00_idx + y_hj * convInfo.y_strideA[2] + y_wj * convInfo.y_strideA[3]; T_OUT out[C_PER_THREAD]; for (uint32_t ci = 0; ci < C_PER_THREAD; ++ci) { T_MATH_ALPHA_BETA accumFinal = cuGet(accumA[ci][y_wj]) * alpha; if (isBetaNoneZero) { accumFinal = cuFma(beta, cuGet(yData[y_idx + ci]), accumFinal); } out[ci] = cuGet(accumFinal); } // end C // write out the 2 Cs via STG.32 reinterpret_cast(yData)[y_idx / 2] = reinterpret_cast(out)[0]; } // end y_idx valid check } // end epilog // Prefetch next rows, or stop // Note: the prefetch in N iteration is for N+2, therefore the following prefetch can be stopped one iteration // earlier. However, compiler should optimize the last prefetch out since this is a fully unroll and there's // no consumer for the last prefetch. So we're fine here. if ((y_hj + y0_hi + 1) < convInfo.y_dimA[2]) { // prefetch the next CONV_STRIDE_SIZE rows for (uint32_t ri = 0; ri < CONV_STRIDE_SIZE; ++ri) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { if ((uint32_t(x0_hi + ri) < uint32_t(convInfo.x_dimA[2])) && (uint32_t(x0_wi + x_wj) < uint32_t(convInfo.x_dimA[3]))) { const int32_t x_idx = x0_idx + ri * convInfo.x_strideA[2] + x_wj * convInfo.x_strideA[3]; xData_hw[pointer][x_wj] = reinterpret_cast(xData)[x_idx / 2]; } else { memset(&xData_hw[pointer][x_wj], 0, sizeof(xData_hw[pointer][x_wj])); } } // update pointer to the next row pointer += 1; if (pointer >= XDataBufSzH) { pointer = 0; } } // Update index to the next row to be fetched x0_hi += CONV_STRIDE_SIZE; x0_idx += CONV_STRIDE_SIZE * convInfo.x_strideA[2]; } else { // stop the sweeping as it's the last row break; } } // end sweep row } extern "C" __launch_bounds__(256) __global__ void dgrad2d_c1_k1_nchw_shmem_tiling(ConvInfo convInfo, const T_ELEM *dyData, const T_ELEM *wData, T_ELEM *dxData, T_MATH alpha, T_MATH beta, cudnn::reduced_divisor tiles_p) { typedef typename make_vectorized::type T_ELEM2; const bool IS_BETA_0 = (beta == 0); // Threads per CTA const int32_t THREADS_PER_CTA = TILE_C_CTA_ * 32; // Determine the input tile size const int32_t TILE_W_CTA = (TILE_Q_CTA_ - 1) * V_ + S_; const int32_t TILE_H_CTA = (TILE_P_CTA_ - 1) * U_ + R_; // Determine the shape of each warp during convolution const int32_t THREADS_Q_PER_WARP = (TILE_Q_CTA_ + TILE_Q_THREAD_ - 1) / TILE_Q_THREAD_; const int32_t THREADS_P_PER_WARP = (TILE_P_CTA_ + TILE_P_THREAD_ - 1) / TILE_P_THREAD_; // Number LDGs/thread/C // Simplify the LDG pattern by just adding an offset in H dimension (waste some threads) const int32_t IMG_HEIGHT_PER_CTA = THREADS_PER_CTA / TILE_W_CTA; const int32_t IMG_LDGS_H = (TILE_H_CTA + IMG_HEIGHT_PER_CTA - 1) / IMG_HEIGHT_PER_CTA; const int32_t IMG_STEP_H = (TILE_H_CTA + IMG_LDGS_H - 1) / IMG_LDGS_H; // Number LDGs/thread in C const int32_t IMG_LDGS_C = TILE_C_CTA_; // Smem size // Height is larger to avoid boundary check in H dimension const int32_t TILE_P_CTA_EXTENDED = TILE_P_THREAD_ * THREADS_P_PER_WARP; const int32_t TILE_H_CTA_EXTENDED = (TILE_P_CTA_EXTENDED - 1) * U_ + R_; // Make sure SMem width is aligned to 4 to enable possible LDS.64 const int32_t SMEM_W_IN = (TILE_W_CTA + 3) / 4 * 4; __shared__ T_ELEM sIn[TILE_C_CTA_][TILE_H_CTA_EXTENDED][SMEM_W_IN]; // Swizzle results in epilog before STG __shared__ T_ELEM sOut[TILE_C_CTA_][TILE_P_CTA_EXTENDED][TILE_Q_CTA_]; // Initialize the load registers to 0 T_ELEM dy_fetch[IMG_LDGS_H][IMG_LDGS_C]; for (int32_t hi = 0; hi < IMG_LDGS_H; ++hi) { for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { dy_fetch[hi][ci] = cuGet(0.00); } } // Get coords to load inputs const int32_t tile_q_idx = blockIdx.x; const int32_t n = blockIdx.z; // Get c and tile_p_idx since they were merged in one dimension (y) int32_t tile_p_idx = blockIdx.y; int32_t c_start = 0; tiles_p.divmod(tile_p_idx, c_start, tile_p_idx); c_start *= TILE_C_CTA_; // To share the same kernel with fprop in Depsep, two difference should be considered // 1. new pad size = filter size - old pad size // 2. reversed weights loads const int32_t h_start = tile_p_idx * TILE_P_CTA_ * U_ + convInfo.padA[0] + 1 - R_; const int32_t w_start = tile_q_idx * TILE_Q_CTA_ * V_ + convInfo.padA[1] + 1 - S_; // Determine the CTA's edge in H dimension uint32_t h_end = (uint32_t)(h_start + TILE_H_CTA) > (uint32_t)convInfo.y_dimA[2] ? (uint32_t)convInfo.y_dimA[2] : (uint32_t)(h_start + TILE_H_CTA); // Bug 3669460: (n * conv_info.x_strideA[0]) could overflow as int32_t, which can be avoided by promoting one of the // multiplier to "ptrdiff_t" const T_ELEM *dyStart = dyData + (ptrdiff_t)n * convInfo.y_strideA[0] + (ptrdiff_t)c_start * convInfo.y_strideA[1]; const int32_t linearIdx = threadIdx.y * 32 + threadIdx.x; const int32_t hi = linearIdx / TILE_W_CTA; const int32_t wi = linearIdx % TILE_W_CTA; if (linearIdx < IMG_STEP_H * TILE_W_CTA) { if ((c_start + IMG_LDGS_C) <= convInfo.groupCount) { // The optimized path, where we don't need to check boundary C #pragma unroll for (int32_t iter = 0; iter < IMG_LDGS_H; ++iter) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { const int32_t h_current = h_start + hi + iter * IMG_STEP_H; const int32_t w_current = w_start + wi; if (((uint32_t)h_current < h_end) && ((uint32_t)w_current < (uint32_t)convInfo.y_dimA[3])) { // NOTE: the same fix for bug 3669460 is not applied here, because CHW won't ecxeed int32_t as // conv_info.x_strideA[0] is int32_t type. Also to aoivd any potential perf impacts. ptrdiff_t dy_offset = ci * convInfo.y_strideA[1] + h_current * convInfo.y_strideA[2] + w_current; dy_fetch[iter][ci] = dyStart[dy_offset]; } } } } else { // The un-optimized path #pragma unroll for (int32_t iter = 0; iter < IMG_LDGS_H; ++iter) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { const int32_t h_current = h_start + hi + iter * IMG_STEP_H; const int32_t w_current = w_start + wi; if (((uint32_t)h_current < h_end) && ((uint32_t)w_current < (uint32_t)convInfo.y_dimA[3])) { ptrdiff_t dy_offset = ci * convInfo.y_strideA[1] + h_current * convInfo.y_strideA[2] + w_current; if ((ci + c_start) < convInfo.groupCount) { dy_fetch[iter][ci] = dyStart[dy_offset]; } } } } } } // Load weights T_ELEM weight[R_][S_]; const T_ELEM *wStart = wData + (ptrdiff_t)(c_start + threadIdx.y) * R_ * S_; if ((c_start + threadIdx.y) < convInfo.groupCount) { for (int32_t r = 0; r < R_; r++) { for (int32_t s = 0; s < S_; s++) { weight[r][s] = IS_CORR ? wStart[(R_ - 1 - r) * S_ + (S_ - 1 - s)] : wStart[r * S_ + s]; } } } // Write inputs to Smem if (linearIdx < IMG_STEP_H * TILE_W_CTA) { #pragma unroll for (int32_t iter = 0; iter < IMG_LDGS_H; ++iter) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { const int32_t h_current = hi + iter * IMG_STEP_H; if (h_current < TILE_H_CTA) { // Boundary check in H dimension sIn[ci][h_current][wi] = dy_fetch[iter][ci]; } } } } __syncthreads(); // Simply disable the threads that won't work per warp const int32_t ACTIVE_THREADS_PER_WARP = THREADS_Q_PER_WARP * THREADS_P_PER_WARP; if (threadIdx.x >= ACTIVE_THREADS_PER_WARP) { return; } // Change the shape of each warp const int32_t out_x = threadIdx.x % THREADS_Q_PER_WARP; const int32_t out_y = threadIdx.x / THREADS_Q_PER_WARP; const int32_t thread_offset_x = out_x * TILE_Q_THREAD_; const int32_t thread_offset_y = out_y * TILE_P_THREAD_; // How many registers required per row const int32_t TILE_W_THREAD = (TILE_Q_THREAD_ - 1) * V_ + S_; const int32_t TILE_H_THREAD = (TILE_P_THREAD_ - 1) * U_ + R_; const int32_t REGS_PER_ROW = (TILE_W_THREAD + 1) / 2; // Pre load to registers to save SMem operations T_ELEM2 in[REGS_PER_ROW]; T_MATH in_s[TILE_H_THREAD][TILE_W_THREAD]; #pragma unroll for (int32_t hi = 0; hi < TILE_H_THREAD; ++hi) { // Use large LDS #pragma unroll for (int32_t reg = 0; reg < REGS_PER_ROW; ++reg) { in[reg] = reinterpret_cast( &sIn[threadIdx.y][thread_offset_y * U_ + hi][thread_offset_x * V_ + reg * 2])[0]; } // Convert to fp32 #pragma unroll for (int32_t wi = 0; wi < TILE_W_THREAD; ++wi) { in_s[hi][wi] = cuGet(reinterpret_cast(in)[wi]); } } // For beta and epilog T_ELEM *dxStart = dxData + (ptrdiff_t)n * convInfo.x_strideA[0] + (ptrdiff_t)c_start * convInfo.x_strideA[1] + (ptrdiff_t)tile_p_idx * TILE_P_CTA_ * convInfo.x_strideA[2] + (ptrdiff_t)tile_q_idx * TILE_Q_CTA_; // Fully unroll #pragma unroll for (int32_t pi = 0; pi < TILE_P_THREAD_; ++pi) { // ACCs per row T_MATH conv[TILE_Q_THREAD_] = {cuGet(0.00)}; #pragma unroll for (int32_t r = 0; r < R_; r++) { #pragma unroll for (int32_t s = 0; s < S_; s++) { #pragma unroll for (int32_t qi = 0; qi < TILE_Q_THREAD_; ++qi) { conv[qi] += in_s[pi * U_ + r][qi * V_ + s] * cuGet(weight[r][s]); } } } // Swizzle in SMem before STG. Convert Accs to fp16 first T_ELEM convH[TILE_Q_THREAD_]; for (int32_t qi = 0; qi < TILE_Q_THREAD_; ++qi) { if (IS_BETA_0) { convH[qi] = cuGet(conv[qi] * alpha); } else { // Beta scaling T_MATH dx_val = cuGet(0.00); if (((c_start + threadIdx.y) < convInfo.groupCount) && ((tile_p_idx * TILE_P_CTA_ + thread_offset_y + pi) < convInfo.x_dimA[2]) && ((tile_q_idx * TILE_Q_CTA_ + thread_offset_x + qi) < convInfo.x_dimA[3])) { dx_val = cuGet(dxStart[threadIdx.y * convInfo.x_strideA[1] + (thread_offset_y + pi) * convInfo.x_strideA[2] + (thread_offset_x + qi)]); } convH[qi] = cuGet(conv[qi] * alpha + dx_val * beta); } } if (TILE_Q_THREAD_ & 0x1) { // Use STS.16 #pragma unroll for (int32_t qi = 0; qi < TILE_Q_THREAD_; ++qi) { sOut[threadIdx.y][thread_offset_y + pi][thread_offset_x + qi] = convH[qi]; } } else { // Use large STS #pragma unroll for (int32_t qi = 0; qi < TILE_Q_THREAD_ / 2; ++qi) { reinterpret_cast(&sOut[threadIdx.y][thread_offset_y + pi][thread_offset_x + qi * 2])[0] = reinterpret_cast(&convH[qi * 2])[0]; } } } __syncthreads(); // Epilog // Determine the CTA's edge in P/Q dimension in epilog const int32_t pEnd = (convInfo.x_dimA[2] - tile_p_idx * TILE_P_CTA_) > TILE_P_CTA_ ? TILE_P_CTA_ : (convInfo.x_dimA[2] - tile_p_idx * TILE_P_CTA_); const int32_t qEnd = (convInfo.x_dimA[3] - tile_q_idx * TILE_Q_CTA_) > TILE_Q_CTA_ ? TILE_Q_CTA_ : (convInfo.x_dimA[3] - tile_q_idx * TILE_Q_CTA_); // Use the whole CTA to store one C // Simplify the STG pattern by just adding an offset in P dimension (waste some threads) const int32_t ACTIVE_THREADS_PER_CTA = ACTIVE_THREADS_PER_WARP * TILE_C_CTA_; const int32_t OUT_HEIGHT_PER_CTA = ACTIVE_THREADS_PER_CTA / TILE_Q_CTA_; const int32_t OUT_STGS_H = (TILE_P_CTA_ + OUT_HEIGHT_PER_CTA - 1) / OUT_HEIGHT_PER_CTA; const int32_t OUT_STEP_H = (TILE_P_CTA_ + OUT_STGS_H - 1) / OUT_STGS_H; const int32_t linearIdxOut = threadIdx.y * ACTIVE_THREADS_PER_WARP + threadIdx.x; const int32_t qi = linearIdxOut % TILE_Q_CTA_; const int32_t pi = linearIdxOut / TILE_Q_CTA_; if (linearIdxOut < OUT_STEP_H * TILE_Q_CTA_) { if ((c_start + IMG_LDGS_C) <= convInfo.groupCount) { // The optimized path, where we don't need to check boundary C #pragma unroll for (int32_t iter = 0; iter < OUT_STGS_H; ++iter) { const int32_t p_current = pi + iter * OUT_STEP_H; if ((qi < qEnd) && (p_current < pEnd)) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { dxStart[ci * convInfo.x_strideA[1] + p_current * convInfo.x_strideA[2] + qi] = sOut[ci][p_current][qi]; } } } } else { // The un-optimized path #pragma unroll for (int32_t iter = 0; iter < OUT_STGS_H; ++iter) { const int32_t p_current = pi + iter * OUT_STEP_H; if ((qi < qEnd) && (p_current < pEnd)) { #pragma unroll for (int32_t ci = 0; ci < IMG_LDGS_C; ++ci) { if ((ci + c_start) < convInfo.groupCount) { dxStart[ci * convInfo.x_strideA[1] + p_current * convInfo.x_strideA[2] + qi] = sOut[ci][p_current][qi]; } } } } } } } // template extern "C" __launch_bounds__(DGRAD2D_C1_K1_NHWC_THREAD_COUNT) __global__ void dgrad2d_c1_k1_nhwc(const T_ALPHA_BETA alpha, const T_ELEM *__restrict__ dyData, const T_ELEM *__restrict__ wData, const T_ALPHA_BETA beta, T_ELEM *__restrict__ dxData, cudnn::reduced_divisor x_width_reduced, // reduced divisor for wi of dx cudnn::reduced_divisor x_channel_reduced, // reduced divisor for ci of dx cudnn::reduced_divisor stride_h_reduced, // reduced divisor for h stride of conv cudnn::reduced_divisor stride_w_reduced, // reduced divisor for w stride of conv const int32_t num_tiles, const int32_t n, const int32_t g, // num groups = xDesc.c = wDesc.k == yDesc.k const int32_t h, const int32_t w, const int32_t r, const int32_t s, const int32_t p, const int32_t q, const int32_t dgrad_pad_h, const int32_t dgrad_pad_w, const int32_t dilation_h, const int32_t dilation_w, const int32_t pqg, // p * q * g, used to save integer math in kernel const int32_t qg, // q * g const int32_t hwg, // h * w * g const int32_t wg // w * g ) { const int32_t tid = blockIdx.x * blockDim.x + threadIdx.x; // x_hi_wi_ci const int32_t x_ni = blockIdx.y; int32_t x_ci, x_hi_wi, x0_hi, x0_wi; x_channel_reduced.divmod(tid, x_hi_wi, x_ci); x_width_reduced.divmod(x_hi_wi, x0_hi, x0_wi); x0_hi *= DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; // first height index of tile x0_wi *= DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; // first width index of tile if (tid >= num_tiles) return; // thread id exceeded number of tiles to process dyData += x_ni * pqg + x_ci; wData += x_ci * r * s; dxData += x_ni * hwg + x_ci; for (int32_t hi = 0; hi < DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; ++hi) { for (int32_t wi = 0; wi < DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; ++wi) { const int32_t x_hi = x0_hi + hi; const int32_t x_wi = x0_wi + wi; if (x_hi >= h || x_wi >= w) continue; T_MATH accum = cuGet(0.0); for (int32_t w_hi = 0; w_hi < r; ++w_hi) { for (int32_t w_wi = 0; w_wi < s; ++w_wi) { const int32_t xp_hi = x_hi - dgrad_pad_h + w_hi * dilation_h; const int32_t xp_wi = x_wi - dgrad_pad_w + w_wi * dilation_w; if (xp_hi >= 0 && xp_wi >= 0) { int32_t y_hi, y_hi_off; int32_t y_wi, y_wi_off; // NOTE: divmod gives erroneous result when numerator is negative. stride_h_reduced.divmod(xp_hi, y_hi, y_hi_off); stride_w_reduced.divmod(xp_wi, y_wi, y_wi_off); if (y_hi_off == 0 && y_wi_off == 0 && y_hi < p && y_wi < q) { const int32_t mode_w_hi = (IS_CORR) ? r - 1 - w_hi : w_hi; const int32_t mode_w_wi = (IS_CORR) ? s - 1 - w_wi : w_wi; const T_ELEM w_val = wData[mode_w_hi * s + mode_w_wi]; const T_ELEM dy_val = dyData[y_hi * qg + y_wi * g]; accum = cuFma(cuGet(dy_val), cuGet(w_val), accum); } } } } const int32_t x_idx = x_hi * wg + x_wi * g; T_ALPHA_BETA accum_final = (alpha == cuGet(1.0) ? cuGet(accum) : cuMul(alpha, cuGet(accum))); if (beta != cuGet(0.0)) { accum_final = cuFma(beta, cuGet(dxData[x_idx]), accum_final); } dxData[x_idx] = cuGet(accum_final); } } } // Assumptions: // 1. fully packed // 2. symmetric pad (padLower_w == padUpper_w) // 3. square filters (r == s) // 4. stride == 1 or 2 // 5. no dilation extern "C" __launch_bounds__(DGRAD2D_C1_K1_NHWC_THREAD_COUNT) __global__ void dgrad2d_c1_k1_nhwc_specialized( const T_ALPHA_BETA alpha, const T_ELEM *__restrict__ dyData, const T_ELEM *__restrict__ wData, const T_ALPHA_BETA beta, T_ELEM *__restrict__ dxData, cudnn::reduced_divisor x_width_reduced, // reduced divisor for wi of dx cudnn::reduced_divisor x_channel_reduced, // reduced divisor for ci of dx cudnn::reduced_divisor stride_h_reduced, // reduced divisor for h stride of conv cudnn::reduced_divisor stride_w_reduced, // reduced divisor for w stride of conv const int32_t num_tiles, const int32_t n, const int32_t g, // num groups = xDesc.c = wDesc.k == yDesc.k const int32_t h, const int32_t w, const int32_t r, const int32_t s, const int32_t p, const int32_t q, const int32_t dgrad_pad_h, const int32_t dgrad_pad_w, const int32_t dilation_h, const int32_t dilation_w, const int32_t pqg, // p * q * g, used to save integer math in kernel const int32_t qg, // q * g const int32_t hwg, // h * w * g const int32_t wg // w * g ) { // To keep function signature same as fallback kernel, the following are unused CUDNN_UNUSED(stride_h_reduced); CUDNN_UNUSED(stride_w_reduced); CUDNN_UNUSED(dilation_h); CUDNN_UNUSED(dilation_w); // NOTE: This template function assumes wDesc.dimA[2] == wDesc.dimA[3] == FILTER_SIZE const int32_t tid = blockIdx.x * blockDim.x + threadIdx.x; const int32_t x_ni = blockIdx.y; // for stride == 2, the input dy buffer only consumes half (rounded up) of the input on each spatial dimension as // compared to stride == 1 convolutions constexpr int32_t win_H = FILTER_SIZE + DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD - 1; constexpr int32_t win_W = FILTER_SIZE + DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD - 1; constexpr int32_t buf_H = (win_H - 1) / CONV_STRIDE_SIZE + 1; constexpr int32_t buf_W = (win_W - 1) / CONV_STRIDE_SIZE + 1; T_ELEM y_buf[buf_H][buf_W]; T_ELEM w_buf[FILTER_SIZE][FILTER_SIZE]; T_MATH accum[DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD][DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD]; int32_t x_ci, x0_hi, x0_wi; { int32_t x_hi_wi; x_channel_reduced.divmod(tid, x_hi_wi, x_ci); x_width_reduced.divmod(x_hi_wi, x0_hi, x0_wi); x0_hi *= DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; // first height index of tile x0_wi *= DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; // first width index of tile } if (tid >= num_tiles) return; // thread id exceeded number of tiles to process dyData += x_ni * pqg + x_ci; wData += x_ci * FILTER_SIZE * FILTER_SIZE; dxData += x_ni * hwg + x_ci; // populate w_buf with weight matrix for channel x_ci == y_ci == w_ci // const int32_t y_ni = x_ni; // const int32_t y_ci = x_ci; for (int32_t w_hi = 0; w_hi < FILTER_SIZE; ++w_hi) { for (int32_t w_wi = 0; w_wi < FILTER_SIZE; ++w_wi) { const int32_t mode_w_hi = (IS_CORR) ? FILTER_SIZE - 1 - w_hi : w_hi; const int32_t mode_w_wi = (IS_CORR) ? FILTER_SIZE - 1 - w_wi : w_wi; const int32_t w_idx = w_hi * FILTER_SIZE + w_wi; w_buf[mode_w_hi][mode_w_wi] = wData[w_idx]; } } // initialize dy buf, dx buf to zero memset(y_buf, 0, sizeof(y_buf)); memset(accum, 0, sizeof(accum)); // x' = x + P is x-coordinate shifted by P such that 0 -> P; const int32_t xp0_hi = x0_hi - dgrad_pad_h; const int32_t xp0_wi = x0_wi - dgrad_pad_w; static_assert((CONV_STRIDE_SIZE == 1) || (CONV_STRIDE_SIZE == 2), "dgrad2d_c1_k1_nhwc_kernel_specialized_window only supports CONV_STRIDE_SIZE == 1 or 2"); if (CONV_STRIDE_SIZE == 1) { // stride == 1 works similarly to conv2d_c1_k1_nhwc that simply applys 2D tiling // populate dy buf for (int32_t b_hi = 0; b_hi < buf_H; ++b_hi) { for (int32_t b_wi = 0; b_wi < buf_W; ++b_wi) { const int32_t y_hi = xp0_hi + b_hi; const int32_t y_wi = xp0_wi + b_wi; if (((uint32_t)y_hi < (uint32_t)p) && ((uint32_t)y_wi < (uint32_t)q)) { const int32_t y_idx = y_hi * qg + y_wi * g; y_buf[b_hi][b_wi] = dyData[y_idx]; } } } // compute accumulations for (int32_t hh = 0; hh < DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; ++hh) { for (int32_t ww = 0; ww < DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; ++ww) { // double loop over pixel in tile for (int32_t w_hi = 0; w_hi < FILTER_SIZE; ++w_hi) { for (int32_t w_wi = 0; w_wi < FILTER_SIZE; ++w_wi) { const T_ELEM dy_val = y_buf[hh + w_hi][ww + w_wi]; const T_ELEM w_val = w_buf[w_hi][w_wi]; accum[hh][ww] = cuFma(cuGet(dy_val), cuGet(w_val), accum[hh][ww]); } } } } } else if (CONV_STRIDE_SIZE == 2) { // populate dy buf // instead of iterating over every filter indices (R * S), // the even odd method iterates over (R/2 * S/2) by skipping filter indices where // dy is zero due to dilation in the input. const int32_t h_even_odd = (xp0_hi % CONV_STRIDE_SIZE == 0) ? 0 : 1; const int32_t w_even_odd = (xp0_wi % CONV_STRIDE_SIZE == 0) ? 0 : 1; for (int32_t w_hi = h_even_odd, b_hi = 0; w_hi < win_H; w_hi += CONV_STRIDE_SIZE, ++b_hi) { for (int32_t w_wi = w_even_odd, b_wi = 0; w_wi < win_W; w_wi += CONV_STRIDE_SIZE, ++b_wi) { const int32_t xp_hi = (xp0_hi + w_hi) / CONV_STRIDE_SIZE; const int32_t xp_wi = (xp0_wi + w_wi) / CONV_STRIDE_SIZE; if (((uint32_t)xp_hi < (uint32_t)p) && ((uint32_t)xp_wi < (uint32_t)q)) { const int32_t y_idx = xp_hi * qg + xp_wi * g; y_buf[b_hi][b_wi] = dyData[y_idx]; } } } // compute accumulations to accum for (int32_t hh = 0, p_even_odd = h_even_odd; hh < DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; ++hh, p_even_odd ^= 1) { for (int32_t ww = 0, q_even_odd = w_even_odd; ww < DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; ++ww, q_even_odd ^= 1) { for (int32_t w_hi = p_even_odd; w_hi < FILTER_SIZE; w_hi += CONV_STRIDE_SIZE) { for (int32_t w_wi = q_even_odd; w_wi < FILTER_SIZE; w_wi += CONV_STRIDE_SIZE) { const int32_t b_hi = (hh + w_hi) / CONV_STRIDE_SIZE; const int32_t b_wi = (ww + w_wi) / CONV_STRIDE_SIZE; const T_ELEM dy_val = y_buf[b_hi][b_wi]; const T_ELEM w_val = w_buf[w_hi][w_wi]; accum[hh][ww] = cuFma(cuGet(dy_val), cuGet(w_val), accum[hh][ww]); } } } } } // perform alpha beta scaling and write out to dxData for (int32_t hh = 0; hh < DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; ++hh) { for (int32_t ww = 0; ww < DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; ++ww) { const int32_t x_hi = x0_hi + hh; const int32_t x_wi = x0_wi + ww; if (x_hi >= h || x_wi >= w) continue; // do alpha beta const int32_t x_idx = x_hi * w * g + x_wi * g; T_ALPHA_BETA accum_final = (alpha == cuGet(1.0) ? cuGet(accum[hh][ww]) : cuMul(alpha, cuGet(accum[hh][ww]))); if (beta != cuGet(0.0)) { accum_final = cuFma(beta, cuGet(dxData[x_idx]), accum_final); } dxData[x_idx] = cuGet(accum_final); } } } // Dimensions of each intermediate-tensors (in order) // x == [n x w x c] // dy == [n x q x c] == [n x w x c] // xSmem == [C_PER_BLOCK x pw] // dySmem == [C_PER_BLOCK x pw] // dwUnrollSmem == [C_PER_BLOCK x (W_PER_BLOCK / WARP_SIZE) x UNROLL_FACTOR] // workspaceGlbl == [n * c * s] // dw == [c * s] // assumptions: // 1. W == Q // 2. s < W_PER_BLOCK // 3. c % C_PER_BLOCK == 0 extern "C" __launch_bounds__(BLOCK_SIZE) __global__ void wgrad1d_c1_k1_nhwc(T_OUT *__restrict__ dw, const T_ELEM *__restrict__ x, const T_ELEM *__restrict__ dy, const int32_t n, const int32_t c, const int32_t w, const int32_t q, const int32_t pad, const int32_t s, const float alpha, const float beta) { const int32_t pw = w + pad * 2; // padded width // NOTE: CUDA 12.0 is scheduled to add support for multi-warp groups // It might be useful to have a tile partition larger than 32, i.e. 128 cooperative_groups::thread_block block = cooperative_groups::this_thread_block(); cooperative_groups::thread_block_tile warp = cooperative_groups::tiled_partition(block); constexpr int32_t NUM_WARPS_W = W_PER_BLOCK / WARP_SIZE; // extern __align__(sizeof(T_MATH)) throws compilation warning due to varying instantiation size of T_MATH extern __align__(sizeof(float)) __shared__ unsigned char dsmem[]; T_ELEM *const xSmem = (T_ELEM *)(dsmem); T_ELEM *const dySmem = (T_ELEM *)(xSmem) + C_PER_BLOCK * pw; T_MATH *const dwUnrollSmem = (T_MATH *)((T_ELEM *)(dySmem) + C_PER_BLOCK * pw); const int32_t cLoadIdx = threadIdx.x % C_PER_BLOCK; const int32_t wLoadIdx = threadIdx.x / C_PER_BLOCK; // precomputed address offsets to save integer math const int32_t smemLoadOffset = cLoadIdx * pw; const int32_t glblLoadOffset = blockIdx.y * w * c + blockIdx.x * C_PER_BLOCK + cLoadIdx; // implicit-transposed load x and dy for (int32_t wSmemIdx = wLoadIdx; wSmemIdx < pw; wSmemIdx += W_PER_BLOCK) { const int32_t wGlblIdx = wSmemIdx - pad; if ((uint32_t)wGlblIdx < (uint32_t)w) { xSmem[smemLoadOffset + wSmemIdx] = ((T_ELEM *)x)[glblLoadOffset + wGlblIdx * c]; dySmem[smemLoadOffset + wGlblIdx] = ((T_ELEM *)dy)[glblLoadOffset + wGlblIdx * c]; // dy is not padded } else { // oddly, xSmem[smemLoadOffset + wSmemIdx] = {} throws compilation error const T_ELEM zeroVal = {}; xSmem[smemLoadOffset + wSmemIdx] = zeroVal; } } const int32_t w_tx = threadIdx.x % W_PER_BLOCK; const int32_t c_tx = threadIdx.x / W_PER_BLOCK; // precomputed address offsets to save integer math const int32_t cRowOffset = c_tx * pw; const int32_t dwOffset = (blockIdx.y * c + blockIdx.x * C_PER_BLOCK + c_tx) * s; int32_t convS = 0; #pragma unroll for (int32_t fact = UNROLL_FACTOR; fact >= 1; fact >>= 1) { for (; convS < s - fact + 1; convS += fact) { block.sync(); T_MATH sum[UNROLL_FACTOR]; memset(sum, 0, sizeof(sum)); for (int32_t convQ = w_tx; convQ < w; convQ += W_PER_BLOCK) { const T_MATH dyVal = cuGet(dySmem[cRowOffset + convQ]); #pragma unroll // computation for (int32_t innerUnroll = 0; innerUnroll < fact; innerUnroll++) { const T_MATH xVal = cuGet(xSmem[cRowOffset + convS + convQ + innerUnroll]); sum[innerUnroll] = convSumFma(sum[innerUnroll], dyVal, xVal); } } #pragma unroll // warp reduction for (int32_t innerUnroll = 0; innerUnroll < fact; innerUnroll++) { T_MATH val = sum[innerUnroll]; sum[innerUnroll] = warpReduceSum(val); } // write results of warp reduction to smem buffer if (warp.thread_rank() == 0) { #pragma unroll for (int32_t innerUnroll = 0; innerUnroll < fact; innerUnroll++) { dwUnrollSmem[warp.meta_group_rank() * UNROLL_FACTOR + innerUnroll] = sum[innerUnroll]; } } block.sync(); // reduce results from multiple warps into one and write to dw or workspacePtr if (w_tx < fact) { T_MATH dwVal = {}; #pragma unroll for (int32_t i = 0; i < NUM_WARPS_W; ++i) { dwVal = cuAdd(dwUnrollSmem[c_tx * NUM_WARPS_W * UNROLL_FACTOR + i * UNROLL_FACTOR + w_tx], dwVal); } if (IS_CORR) { dwWrite(alpha, dwVal, beta, dw, dwOffset + convS + w_tx); } else { dwWrite(alpha, dwVal, beta, dw, dwOffset + s - convS - w_tx - 1); } } } } } extern "C" __global__ void wgrad1d_c1_k1_nhwc_batch_reduce(T_OUT_REDUCE *__restrict__ dw, const int32_t n, const int32_t c, const int32_t s, const float alpha, const float beta, const T_MATH *__restrict__ workspacePtr) { cooperative_groups::thread_block block = cooperative_groups::this_thread_block(); T_MATH sum = {}; for (int32_t i = 0; i < n; ++i) { sum = cuAdd(((T_MATH *)workspacePtr)[i * c * s + blockIdx.x * s + threadIdx.x], sum); } const int32_t dwIdx = blockIdx.x * s + threadIdx.x; dwWrite(alpha, sum, beta, dw, dwIdx); } extern "C" #if (__CUDACC_VER_MAJOR__ >= 11) __launch_bounds__(WARPS_PER_CTA *THREADS_PER_WARP, 1) #endif __global__ void wgrad2d_c1_k1_nhwc(ConvInfo conv_info, const T_ELEM *xData, const T_ELEM *dyData, T_MATH *deviceGmemReplicatedDw) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t P_PER_CTA = 10; const int32_t Q_PER_CTA = 4; const int32_t H_PER_CTA = (P_PER_CTA - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_CTA = (Q_PER_CTA - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t WARP_ROW = 2; const int32_t WARP_COLUMN = 2; const int32_t PREFETCH_P_PER_WARP = P_PER_CTA / WARP_ROW; const int32_t PREFETCH_Q_PER_WARP = Q_PER_CTA / WARP_COLUMN; const int32_t PREFETCH_H_PER_WARP = (H_PER_CTA + WARP_ROW - 1) / WARP_ROW; const int32_t PREFETCH_W_PER_WARP = (W_PER_CTA + WARP_COLUMN - 1) / WARP_COLUMN; const int32_t THREADS_PER_CTA = WARPS_PER_CTA * THREADS_PER_WARP; const int32_t nIndex = blockIdx.y; const int32_t gIndex = blockIdx.x * THREADS_PER_WARP + threadIdx.x; // Prolog // Prefetch Dy int32_t pPerCta; int32_t pBegin; if (SPLIT_P == 1) { pBegin = 0; } else { pPerCta = (((P + P_PER_CTA - 1) / P_PER_CTA + SPLIT_P - 1) / SPLIT_P * P_PER_CTA); pBegin = pPerCta * blockIdx.z; } int32_t qBegin = 0; T_ELEM prefetchDy[PREFETCH_P_PER_WARP * PREFETCH_Q_PER_WARP]; int32_t p, q; int32_t pOffset = threadIdx.y / (P_PER_CTA / PREFETCH_P_PER_WARP) * PREFETCH_P_PER_WARP; int32_t qOffset = threadIdx.y % (Q_PER_CTA / PREFETCH_Q_PER_WARP) * PREFETCH_Q_PER_WARP; p = pBegin + pOffset; q = qBegin + qOffset; long long offset = nIndex * conv_info.y_strideA[0] + gIndex * conv_info.y_strideA[1]; const T_ELEM *dyPtrBase = dyData + offset; offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3]; const T_ELEM *dyPtr = dyPtrBase + offset; bool gValid = gIndex < G; int32_t pFinish; if (SPLIT_P == 1) { pFinish = P; } else { pFinish = min(pPerCta * (blockIdx.z + 1), P); } long long QLUP[PREFETCH_Q_PER_WARP]; long long dyStrideP2 = conv_info.y_strideA[2] * BYTES_PER_FP16; long long dyStrideQ2 = conv_info.y_strideA[3] * BYTES_PER_FP16; #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { QLUP[qIndex] = qIndex * dyStrideQ2; } #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { if (gValid && (p + pIndex < pFinish) && (q + qIndex < Q)) { offset = QLUP[qIndex] + pIndex * dyStrideP2; prefetchDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] = ldg((T_ELEM *)(((long long)dyPtr) + offset)); } else { prefetchDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] = cuGet(0.f); } } } // Prefetch X int32_t hBegin; if (SPLIT_P == 1) { hBegin = -paddingTop; } else { hBegin = pBegin * STRIDE_H - paddingTop; } int32_t wBegin = -paddingLeft; T_ELEM prefetchX[PREFETCH_H_PER_WARP * PREFETCH_W_PER_WARP]; int32_t h, w; int32_t hOffset = threadIdx.y / WARP_ROW * PREFETCH_H_PER_WARP; int32_t wOffset = threadIdx.y % WARP_COLUMN * PREFETCH_W_PER_WARP; h = hBegin + hOffset; w = wBegin + wOffset; offset = nIndex * conv_info.x_strideA[0] + gIndex * conv_info.x_strideA[1]; const T_ELEM *xPtrBase = xData + offset; offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3]; const T_ELEM *xPtr = xPtrBase + offset; int32_t hFinish; if (SPLIT_P == 1) { hFinish = H; } else { hFinish = min(hBegin + (pPerCta - 1) * STRIDE_H + (R - 1) * DILATION_H + 1, H); } long long WLUP[PREFETCH_W_PER_WARP]; long long xStrideH2 = conv_info.x_strideA[2] * BYTES_PER_FP16; long long xStrideW2 = conv_info.x_strideA[3] * BYTES_PER_FP16; #pragma unroll for (int32_t wIndex = 0; wIndex < PREFETCH_W_PER_WARP; ++wIndex) { WLUP[wIndex] = wIndex * xStrideW2; } #pragma unroll for (int32_t hIndex = 0; hIndex < PREFETCH_H_PER_WARP; ++hIndex) { #pragma unroll for (int32_t wIndex = 0; wIndex < PREFETCH_W_PER_WARP; ++wIndex) { if (gValid && ((uint32_t)(h + hIndex) < hFinish) && ((uint32_t)(w + wIndex) < W)) { offset = WLUP[wIndex] + hIndex * xStrideH2; prefetchX[wIndex + hIndex * PREFETCH_W_PER_WARP] = ldg((T_ELEM *)(((long long)xPtr) + offset)); } else { prefetchX[wIndex + hIndex * PREFETCH_W_PER_WARP] = cuGet(0.f); } } } // STS __shared__ T_ELEM smemX[PREFETCH_H_PER_WARP * PREFETCH_W_PER_WARP * THREADS_PER_CTA]; const int32_t W_IN_SMEM = PREFETCH_W_PER_WARP * WARP_COLUMN; T_ELEM *smemXStsPtr = smemX + threadIdx.x + hOffset * THREADS_PER_WARP * W_IN_SMEM + wOffset * THREADS_PER_WARP; T_ELEM *smemXLdsPtr = smemX + pOffset * STRIDE_H * THREADS_PER_WARP * W_IN_SMEM + qOffset * STRIDE_W * THREADS_PER_WARP + threadIdx.x; float mathDy[PREFETCH_P_PER_WARP * PREFETCH_Q_PER_WARP]; #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { mathDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] = cuGet(prefetchDy[qIndex + pIndex * PREFETCH_Q_PER_WARP]); } } #pragma unroll for (int32_t hIndex = 0; hIndex < PREFETCH_H_PER_WARP; ++hIndex) { #pragma unroll for (int32_t wIndex = 0; wIndex < PREFETCH_W_PER_WARP; ++wIndex) { smemXStsPtr[wIndex * THREADS_PER_WARP + hIndex * W_IN_SMEM * THREADS_PER_WARP] = prefetchX[wIndex + hIndex * PREFETCH_W_PER_WARP]; } } // Update Pointer qBegin += Q_PER_CTA; wBegin += Q_PER_CTA * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_CTA; wBegin = -paddingLeft; hBegin += P_PER_CTA * STRIDE_H; } p = pBegin + pOffset; q = qBegin + qOffset; h = hBegin + hOffset; w = wBegin + wOffset; offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3]; dyPtr = dyPtrBase + offset; offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3]; xPtr = xPtrBase + offset; T_ELEM mathX[PREFETCH_P_PER_WARP * PREFETCH_Q_PER_WARP * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop while (pBegin < pFinish) { // LDG #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { if (gValid && (p + pIndex < pFinish) && (q + qIndex < Q)) { offset = QLUP[qIndex] + pIndex * dyStrideP2; prefetchDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] = ldg((T_ELEM *)(((long long)dyPtr) + offset)); } else { prefetchDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] = cuGet(0.f); } } } #pragma unroll for (int32_t hIndex = 0; hIndex < PREFETCH_H_PER_WARP; ++hIndex) { #pragma unroll for (int32_t wIndex = 0; wIndex < PREFETCH_W_PER_WARP; ++wIndex) { if (gValid && ((uint32_t)(h + hIndex) < hFinish) && ((uint32_t)(w + wIndex) < W)) { offset = WLUP[wIndex] + hIndex * xStrideH2; prefetchX[wIndex + hIndex * PREFETCH_W_PER_WARP] = ldg((T_ELEM *)(((long long)xPtr) + offset)); } else { prefetchX[wIndex + hIndex * PREFETCH_W_PER_WARP] = cuGet(0.f); } } } // LDS #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * PREFETCH_Q_PER_WARP] = smemXLdsPtr[pIndex * STRIDE_H * THREADS_PER_WARP * W_IN_SMEM + qIndex * STRIDE_W * THREADS_PER_WARP + rIndex * DILATION_H * THREADS_PER_WARP * W_IN_SMEM + sIndex * DILATION_W * THREADS_PER_WARP]; } } } } // Math #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += mathDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] * cuGet( IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * PREFETCH_Q_PER_WARP] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * PREFETCH_Q_PER_WARP]); } } } } // Update Pointer qBegin += Q_PER_CTA; wBegin += Q_PER_CTA * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_CTA; wBegin = -paddingLeft; hBegin += P_PER_CTA * STRIDE_H; } p = pBegin + pOffset; q = qBegin + qOffset; h = hBegin + hOffset; w = wBegin + wOffset; offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3]; dyPtr = dyPtrBase + offset; offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3]; xPtr = xPtrBase + offset; __syncthreads(); // STS #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { mathDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] = cuGet(prefetchDy[qIndex + pIndex * PREFETCH_Q_PER_WARP]); } } #pragma unroll for (int32_t hIndex = 0; hIndex < PREFETCH_H_PER_WARP; ++hIndex) { #pragma unroll for (int32_t wIndex = 0; wIndex < PREFETCH_W_PER_WARP; ++wIndex) { smemXStsPtr[wIndex * THREADS_PER_WARP + hIndex * W_IN_SMEM * THREADS_PER_WARP] = prefetchX[wIndex + hIndex * PREFETCH_W_PER_WARP]; } } __syncthreads(); } // LDS #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * PREFETCH_Q_PER_WARP] = smemXLdsPtr[pIndex * STRIDE_H * THREADS_PER_WARP * W_IN_SMEM + qIndex * STRIDE_W * THREADS_PER_WARP + rIndex * DILATION_H * THREADS_PER_WARP * W_IN_SMEM + sIndex * DILATION_W * THREADS_PER_WARP]; } } } } // Math #pragma unroll for (int32_t pIndex = 0; pIndex < PREFETCH_P_PER_WARP; ++pIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < PREFETCH_Q_PER_WARP; ++qIndex) { #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += mathDy[qIndex + pIndex * PREFETCH_Q_PER_WARP] * cuGet( IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * PREFETCH_Q_PER_WARP] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * PREFETCH_Q_PER_WARP]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadIdx.x + threadIdx.y * THREADS_PER_WARP; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[(sIndex + rIndex * S) * THREADS_PER_CTA] = mathDw[sIndex + rIndex * S]; } } __syncthreads(); if (threadIdx.y == 0) { float reductionDw1[R * S]; float reductionDw2[R * S]; float reductionDw3[R * S]; float *ldsPtr = reductionSharedMemory + threadIdx.x; // Layout (SPLIT_P*N)(G/THREADS_PER_WARP)RS(G*THREADS_PER_WARP) const int32_t strideS = THREADS_PER_WARP; const int32_t strideR = S * strideS; const int32_t strideG = R * strideR; const int32_t strideN = ((G + (THREADS_PER_WARP - 1)) / THREADS_PER_WARP) * strideG; offset = nIndex * strideN + +gIndex / THREADS_PER_WARP * strideG + gIndex % THREADS_PER_WARP; if (SPLIT_P > 1) { offset += blockIdx.z * N * strideN; } float *stgPtr = deviceGmemReplicatedDw + offset; for (int32_t i = 0; i < R * S; ++i) { reductionDw1[i] = ldsPtr[0 * THREADS_PER_WARP + i * THREADS_PER_CTA]; } for (int32_t i = 0; i < R * S; ++i) { reductionDw2[i] = reductionDw1[i]; reductionDw3[i] = 0.f; } for (int32_t warpIndex = 1; warpIndex < WARPS_PER_CTA; ++warpIndex) { for (int32_t i = 0; i < R * S; ++i) { reductionDw1[i] = ldsPtr[warpIndex * THREADS_PER_WARP + i * THREADS_PER_CTA]; } for (int32_t i = 0; i < R * S; ++i) { reductionDw3[i] += reductionDw2[i]; } for (int32_t i = 0; i < R * S; ++i) { reductionDw2[i] = reductionDw1[i]; } } for (int32_t i = 0; i < R * S; ++i) { reductionDw3[i] += reductionDw2[i]; stgPtr[i * THREADS_PER_WARP] = reductionDw3[i]; } } return; } extern "C" __global__ void wgrad2d_c1_k1_nhwc_reduce(ConvInfo conv_info, T_ELEM *dwData, const T_MATH *deviceGmemReplicatedDw, T_MATH alpha, T_MATH beta) { const int32_t N = conv_info.x_dimA[0]; const int32_t G = conv_info.groupCount; const int32_t strideS = THREADS_PER_WARP; const int32_t strideR = S * strideS; const int32_t strideG = R * strideR; const int32_t strideN = ((G + (THREADS_PER_WARP - 1)) / THREADS_PER_WARP) * strideG; const int32_t REDUCTION_RATIO = 16; // Prolog const int32_t sIndex = blockIdx.x % S; const int32_t rIndex = blockIdx.x / S; const int32_t gIndex = blockIdx.y * THREADS_PER_WARP + threadIdx.x; T_ELEM *dwPtr = dwData + sIndex + rIndex * S + gIndex * R * S; T_ELEM oldC = cuGet(0.f); if ((gIndex < G) && (beta != cuGet(0.00))) { oldC = ldg(dwPtr); } float buffer[REDUCTION_RATIO]; float buffer2[REDUCTION_RATIO]; float buffer3[REDUCTION_RATIO]; long long offset = rIndex * strideR + sIndex * strideS + threadIdx.x + blockIdx.y * strideG; const float *readPtr = deviceGmemReplicatedDw + offset; for (int32_t i = 0; i < REDUCTION_RATIO; ++i) { buffer[i] = 0.f; buffer3[i] = 0.f; } int32_t nWithSplitP = SPLIT_P * N; int32_t nIndexBase = (nWithSplitP / REDUCTION_RATIO) * REDUCTION_RATIO; int32_t delta = nWithSplitP - nIndexBase; nIndexBase *= strideN; // Prolog #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { offset = nIndex * strideN; if (nIndex < delta) { buffer[nIndex] = readPtr[nIndexBase + offset]; } } #pragma unroll for (int32_t i = 0; i < REDUCTION_RATIO; ++i) { buffer2[i] = buffer[i]; } // Main loop for (int32_t nIndex = 0; nIndex < (nWithSplitP / REDUCTION_RATIO) * REDUCTION_RATIO; nIndex += REDUCTION_RATIO) { #pragma unroll for (int32_t i = 0; i < REDUCTION_RATIO; ++i) { offset = (nIndex + i) * strideN; buffer[i] = readPtr[offset]; } #pragma unroll for (int32_t i = 0; i < REDUCTION_RATIO; ++i) { buffer3[i] += buffer2[i]; } #pragma unroll for (int32_t i = 0; i < REDUCTION_RATIO; ++i) { buffer2[i] = buffer[i]; } } #pragma unroll for (int32_t i = 0; i < REDUCTION_RATIO; ++i) { buffer3[i] += buffer2[i]; } // Epilog float result = cuGet(oldC) * beta; #pragma unroll for (int32_t i = 1; i < REDUCTION_RATIO / 2; ++i) { buffer3[0] += buffer3[i * 2]; buffer3[1] += buffer3[i * 2 + 1]; } buffer3[0] += buffer3[1]; if (gIndex < G) { dwPtr[0] = cuGet(buffer3[0] * alpha + result); } return; } // these kernels support Q == W only, that's why there's only "w" in the params // NOTE: unused param "dilation_w" and "q" to keep the same kernel signature as conv1D_NCHW_wgrad_general() extern "C" __launch_bounds__(BLOCK_SIZE) __global__ void conv1D_NCHW_wgrad(T_ELEM *__restrict__ out, const T_ELEM *__restrict__ x, const T_ELEM *__restrict__ dy, const int n, const int c, const int w, const int paddedW, const int pad_w, const int dilation_w, const int q, const int s, const float alpha, const float beta) { CUDNN_UNUSED(dilation_w); CUDNN_UNUSED(q); int channel = blockIdx.x; x += channel * w; dy += channel * w; const int unrollFactor = 16; const int valuesPerThread = 1; // TODO: Make dynamic __shared__ T_ELEM xSmem[MAX_W]; __shared__ T_ELEM dySmem[MAX_W]; T_ELEM xLoadBuffer[MAX_W / BLOCK_SIZE]; T_ELEM dyLoadBuffer[MAX_W / BLOCK_SIZE]; __shared__ T_MATH outVals[128]; __shared__ T_MATH resultSmem[BLOCK_SIZE * unrollFactor]; if (threadIdx.x < s) { outVals[threadIdx.x] = 0; } for (int i = 0; i < paddedW; i += BLOCK_SIZE) { int wElem = i + threadIdx.x - pad_w; if ((unsigned int)wElem >= (unsigned int)w) { // padding needs not to be in dySmem, but we put it to the buffer as well xSmem[i + threadIdx.x] = 0; dySmem[i + threadIdx.x] = 0; } else { xSmem[i + threadIdx.x] = x[wElem]; dySmem[i + threadIdx.x] = dy[wElem]; } } for (int example = 0; example < n; example++) { if (example < n - 1) { #pragma unroll for (int i = 0; i < MAX_W; i += BLOCK_SIZE) { int wElem = i + threadIdx.x; // no padding in xLoadBuffer and dyLoadBuffer if (wElem >= w) { break; } xLoadBuffer[i / BLOCK_SIZE] = x[(example + 1) * c * w + wElem]; dyLoadBuffer[i / BLOCK_SIZE] = dy[(example + 1) * c * w + wElem]; } } __syncthreads(); int weight = 0; #pragma unroll for (int fact = unrollFactor; fact >= 1; fact >>= 1) { for (; weight < s - fact + 1; weight += fact) { T_MATH sum[unrollFactor]; for (int innerUnroll = 0; innerUnroll < fact; innerUnroll++) { sum[innerUnroll] = 0; } int wElem = threadIdx.x; for (; wElem * valuesPerThread < w; wElem += BLOCK_SIZE) { T_ELEM dyVals[valuesPerThread]; #pragma unroll for (int i = 0; i < valuesPerThread; i++) { dyVals[i] = dySmem[wElem * valuesPerThread + i + pad_w]; } for (int innerUnroll = 0; innerUnroll < fact; innerUnroll++) { #pragma unroll for (int i = 0; i < valuesPerThread; i++) { sum[innerUnroll] = cuFma(cuGet(dyVals[i]), cuGet(xSmem[wElem * valuesPerThread + weight + innerUnroll + i]), sum[innerUnroll]); } } } for (int innerUnroll = 0; innerUnroll < fact; innerUnroll++) { resultSmem[innerUnroll * BLOCK_SIZE + threadIdx.x] = sum[innerUnroll]; } __syncthreads(); #pragma unroll for (int i = BLOCK_SIZE >> 1; i >= 32; i >>= 1) { if (threadIdx.x < i) { for (int innerUnroll = 0; innerUnroll < fact; innerUnroll++) { sum[innerUnroll] = cuAdd(resultSmem[innerUnroll * BLOCK_SIZE + threadIdx.x + i], sum[innerUnroll]); resultSmem[innerUnroll * BLOCK_SIZE + threadIdx.x] = sum[innerUnroll]; } } __syncthreads(); } for (int innerUnroll = 0; innerUnroll < fact; innerUnroll++) { #pragma unroll for (int i = 16; i >= 1; i >>= 1) { sum[innerUnroll] = cuAdd(__shfl_down_sync(0xffffffff, sum[innerUnroll], i), sum[innerUnroll]); } } if (threadIdx.x == 0) { if (sizeof(T_ELEM) == 4 && fact >= 4) { for (int innerUnroll = 0; innerUnroll < fact; innerUnroll += 4) { float4 a = *(float4 *)(&outVals[weight + innerUnroll]); float4 b = *(float4 *)(&sum[innerUnroll]); *(float4 *)(&outVals[weight + innerUnroll]) = make_float4(a.x + b.x, a.y + b.y, a.z + b.z, a.w + b.w); } } else { for (int innerUnroll = 0; innerUnroll < fact; innerUnroll++) { outVals[weight + innerUnroll] = cuAdd(sum[innerUnroll], outVals[weight + innerUnroll]); } } } __syncthreads(); } } #pragma unroll for (int i = 0; i < MAX_W; i += BLOCK_SIZE) { int wElem = i + threadIdx.x; if (wElem >= w) { break; } // only update the pixels, padding will not change xSmem[wElem + pad_w] = xLoadBuffer[i / BLOCK_SIZE]; dySmem[wElem + pad_w] = dyLoadBuffer[i / BLOCK_SIZE]; } } if (threadIdx.x < s) { if constexpr (BETA_NON_ZERO) { out[channel * s + threadIdx.x] = cuGet(cuAdd(cuMul(outVals[threadIdx.x], cuGet(alpha)), cuMul(cuGet(out[channel * s + threadIdx.x]), cuGet(beta)))); } else { out[channel * s + threadIdx.x] = cuGet(cuMul(outVals[threadIdx.x], cuGet(alpha))); } } } extern "C" __launch_bounds__(BLOCK_SIZE) __global__ void conv1D_NCHW_wgrad_general(T_ELEM *__restrict__ out, const T_ELEM *__restrict__ x, const T_ELEM *__restrict__ dy, const int n, const int c, const int w, const int pad_w, const int dilation_w, const int q, const int s, const float alpha, const float beta) { int channel = blockIdx.x; x += channel * w; dy += channel * q; __shared__ T_MATH resultSmem[BLOCK_SIZE]; // Ideally we wouldn't be in the general kernel at all, but if we are, and s is not massive, we can go quite a bit // faster. if (s < BLOCK_SIZE) { __shared__ T_MATH outVals[BLOCK_SIZE]; outVals[threadIdx.x] = 0; for (int example = 0; example < n; example++) { for (int weight = 0; weight < s; weight++) { T_MATH sum = 0; for (int qi = threadIdx.x; qi < q; qi += BLOCK_SIZE) { int wElem = qi - pad_w + weight * dilation_w; if ((unsigned)wElem < (unsigned)w) { // handle padding sum = cuFma( cuGet(dy[example * c * q + qi]), cuGet(x[example * c * w + wElem]), sum); } } resultSmem[threadIdx.x] = sum; __syncthreads(); #pragma unroll for (int i = BLOCK_SIZE >> 1; i >= 32; i >>= 1) { // if (threadIdx.x < BLOCK_SIZE / 2) { if (threadIdx.x < i) { sum = cuAdd(sum, resultSmem[threadIdx.x + i]); resultSmem[threadIdx.x] = sum; } __syncthreads(); } #pragma unroll for (int i = 16; i >= 1; i >>= 1) { sum = cuAdd(__shfl_down_sync(0xffffffff, sum, i), sum); } if (threadIdx.x == 0) { outVals[weight] = cuAdd(sum, outVals[weight]); } } } __syncthreads(); if (threadIdx.x < s) { if constexpr (BETA_NON_ZERO) { out[channel * s + threadIdx.x] = cuGet(cuAdd(cuMul(outVals[threadIdx.x], cuGet(alpha)), cuMul(cuGet(out[channel * s + threadIdx.x]), cuGet(beta)))); } else { out[channel * s + threadIdx.x] = cuGet(cuMul(outVals[threadIdx.x], cuGet(alpha))); } } } // This is really slow else { for (int weight = 0; weight < s; weight++) { T_MATH sum = 0; for (int example = 0; example < n; example++) { for (int qi = threadIdx.x; qi < q; qi += BLOCK_SIZE) { int wElem = qi - pad_w + weight * dilation_w; if ((unsigned)wElem < (unsigned)w) { // handle padding sum = cuFma( cuGet(dy[example * c * q + qi]), cuGet(x[example * c * w + wElem]), sum); } } } resultSmem[threadIdx.x] = sum; __syncthreads(); #pragma unroll for (int i = BLOCK_SIZE >> 1; i >= 32; i >>= 1) { // if (threadIdx.x < BLOCK_SIZE / 2) { if (threadIdx.x < i) { sum = cuAdd(sum, resultSmem[threadIdx.x + i]); resultSmem[threadIdx.x] = sum; } __syncthreads(); } #pragma unroll for (int i = 16; i >= 1; i >>= 1) { sum = cuAdd(__shfl_down_sync(0xffffffff, sum, i), sum); } if (threadIdx.x == 0) { if constexpr (BETA_NON_ZERO) { out[channel * s + weight] = cuGet(cuAdd(cuMul(sum, cuGet(alpha)), cuMul(cuGet(out[channel * s + weight]), cuGet(beta)))); } else { out[channel * s + weight] = cuGet(cuMul(sum, cuGet(alpha))); } } __syncthreads(); } } } conv1d_c1_k1_nhwcconv1D_NCHW_generalconv1D_NCHWOnly 2-D spatial convolutions supportedconfig != FLOAT_CONFIG && config != DOUBLE_CONFIGconvDesc->dilationA[0] != 1 || convDesc->dilationA[1] != 1xDesc->dimA[1] != yDesc->dimA[1]xDesc->dimA[1] != convDesc->groupCountwDesc->dimA[2] != wDesc->dimA[3]Only 3x3 and 1x1 filters are supported(wDesc->dimA[3] != 1) && (wDesc->dimA[3] != 3)wDesc->format != CUDNN_TENSOR_NCHW(shared_mem < 0) || (shared_mem > deviceProp.maxSharedMemoryPerBlockOptin)reinterpret_cast(vars.getXData()) % align != 0reinterpret_cast(vars.getWData()) % align != 0reinterpret_cast(vars.getYData()) % align != 0stream != vars.getHandle()->streamIdconv2d_c1_k1_nchw_hw_packed_supported(handle->deviceProp, xDesc, wDesc, convDesc, yDesc)shared_mem < 0 || shared_mem > handle->deviceProp.maxSharedMemoryPerBlockOptinrtc[kernelIdx]->launchKernel( deviceId, gridDim, blockDim, clusterDim, smemBytes, stream, kernelParams, useCluster)rtc_info.execute(ConvForward4dC1K1NchwHwPackedKernel::kernel_enum::conv2d_c1_k1_nchw_hw_packed_t, deviceId, grid, block, clusterDim, size_t(shared_mem), stream, arg_ptrs.data(), false)Unsupported filter size dimensions passed during executionconv2d_c1_k1_nchw_hw_packed( vars.getHandle(), vars.getAlphaData(), op.getXDesc(), vars.getXData(), op.getWDesc(), vars.getWData(), op.getConvDesc(), vars.getBetaData(), op.getYDesc(), vars.getYData(), block, grid, rtc_info, stream, conv_info)!conv2d_c1_k1_nchw_shmem_tiling_supported(xDesc, wDesc, convDesc, yDesc, doBiasAct)Unsupported datatype config passed during execution(config != PSEUDO_HALF_CONFIG) && (config != PSEUDO_BFLOAT16_CONFIG)rtc_info.execute(ConvForward4dC1K1NchwShmemTilingKernel::kernel_enum::conv2d_c1_k1_nchw_shmem_tiling_t, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)conv2d_c1_k1_nchw_shmem_tiling( vars.getHandle(), vars.getAlphaData(), op.getXDesc(), vars.getXData(), op.getWDesc(), vars.getWData(), op.getConvDesc(), vars.getBetaData(), op.getYDesc(), vars.getYData(), false, tile_info.tile_p, block, grid, rtc_info, stream, conv_info)(!cudnn::ops::isValidGrid(deviceProp, grid)) || (!cudnn::ops::isValidBlock(deviceProp, block))conv2d_c1_k1_nchw_hw_packed_supported( *this->getDeviceProp(), op.getXDesc(), op.getWDesc(), op.getConvDesc(), op.getYDesc())!cudnn::ops::isValidBlock(deviceProp, block)grid_nchw_hw_packed(*this->getDeviceProp(), op.getXDesc(), block, grid)op.getXDesc()->m_is_large_tensorop.getYDesc()->m_is_large_tensorresize_kernel_list_size(rtc_info.getActivatedKernelCount())(deviceVer >= 1000) && (lastActiveRTCKernelIndex >= 0) && (rtc[lastActiveRTCKernelIndex]->getNvrtcVersion() < 12080)rtc_info.loadDLL(this->getDeviceProp()->deviceVer)!conv2d_c1_k1_nchw_shmem_tiling_supported( op.getXDesc(), op.getWDesc(), op.getConvDesc(), op.getYDesc(), false)grid_shmem_tiling(*this->getDeviceProp(), op.getXDesc(), op.getYDesc(), op.getConvDesc(), block, grid) constexpr int32_t windowSize = constexpr int32_t TILE_P_THREAD_ = constexpr int32_t TILE_Q_THREAD_ = constexpr int32_t TILE_P_CTA_ = constexpr int32_t TILE_Q_CTA_ = constexpr int32_t TILE_C_CTA_ = getMostCompatibleHeaderBytes(bytes_version_map, rtc[i]->getNvrtcVersion(), comp_header_bytes)generate_full_kernel_string(bytes_version_map, additional_template_string)rtc[i]->compile(compilation_flags, useNvrtcSassPath, useNvrtcHiddenAPI)rtc_info.compile(cudnn::fusion::c1k1_comp_bytes_version_map, *this->getDeviceProp(), generate_kernel_templates_string(), fromSerialization, fromKernelCache)conv2d_c1_k1_nchw_shmem_tilingxDesc->nbDims != 4Dilation not supported'c' per group must be 1'c' must equal group countFilter h and w must match!isTensorNCHW_HWpacked(xDesc)!isTensorNCHW_HWpacked(yDesc)Filter must be NCHWnullptr == vars.getXData()nullptr == vars.getWData()nullptr == vars.getYData()stream != handle->streamIdy_h_batch == 0!is_supported_filter_size!is_supported_conv_stride constexpr bool IS_CORR = half1 constexpr int32_t R_ = constexpr int32_t S_ = constexpr int32_t U_ = constexpr int32_t V_ = rtc[i]->loadModule()conv2d_c1_k1_nchw_hw_packed(kernelList.size() < activatedKernelCount)rtc_info.onKernelListChanged(getRtkList())       N5cudnn3cnn38ConvForward4dC1K1NchwShmemTilingEngineEN5cudnn3cnn35ConvForward4dC1K1NchwHwPackedEngineE ((typeKernelIdx < 0 || typeKernelIdx >= NUM_TYPE) || (qPerStageKernelIdx < 0 || qPerStageKernelIdx >= NUM_Q_PER_STAGE) || (nPerThreadKernelIdx < 0 || nPerThreadKernelIdx >= NUM_N_PER_THREAD)(stride < 1 || stride >= 3) || (dilation < 1 || dilation >= 3)rtc_info.execute(Conv1DC1K1NhwcBaseKernel::kernel_enum::conv1d_c1_k1_nhwc_t, deviceId, grid, block, clusterDim, size_t(smemSize), stream, arg_ptrs.data(), false)rtc_info.execute(Conv1DC1K1BaseKernel::kernel_enum::conv1D_NCHW_general_t, deviceId, grid, block, clusterDim, size_t(smemSize), stream, arg_ptrs.data(), false)rtc_info.execute(Conv1DC1K1BaseKernel::kernel_enum::conv1D_NCHW_t, deviceId, grid, block, clusterDim, size_t(smemSize), stream, arg_ptrs.data(), false)!conv1d_c1_k1_nhwc_impl::conv1d_c1_k1_nhwc_supported(conv)conv.convStride_w != 1 && conv.convStride_w != 2conv.dilation_w != 1 && conv.dilation_w != 2!isTensorNHWC_fullypacked(op.getXDesc())!conv.isCompatibleFilterFormat(CUDNN_TENSOR_NHWC)!isTensorNHWC_fullypacked(op.getYDesc())conv.padLower_w != conv.padUpper_wconv.nbSpaceDims != 2conv.c != conv.kconv.c != 1conv.convStride_h != 1conv.dilation_h != 1op.doBiasAct()conv.padLower_w > conv.s / 2!init_and_check_grid_size()!conv.isCompleteFP32() && !conv.isCompleteFP16() && !conv.isHHSH()(conv.r != 1) || (conv.s <= 1)(conv.h != 1) || (conv.p != 1)conv.convStride_h != conv.convStride_wconv.mode != CUDNN_CROSS_CORRELATION!isTensorNCHW_fullypacked(op.getXDesc())!conv.isCompatibleFilterFormat(CUDNN_TENSOR_NCHW)!isTensorNCHW_fullypacked(op.getYDesc())half2float2nv_bfloat162 using T_VEC = using T_MATH_VEC = constexpr int32_t STRIDE = constexpr bool IS_DGRAD = constexpr int32_t BLOCK_SIZE = constexpr int32_t Q_PER_STAGE = constexpr int32_t N_PER_THREAD = constexpr int32_t DILATION = constexpr int32_t C_PER_BLOCK = constexpr int32_t Q_PER_BLOCK = constexpr bool IS_CORRELATION = constexpr bool BETA_NON_ZERO = constexpr int32_t EXAMPLE_PER_THREAD = constexpr int32_t OUTPUT_PER_THREAD = constexpr bool BACKWARDS =  N5cudnn3cnn20Conv1DC1K1BaseEngineILb0EEEN5cudnn3cnn24Conv1DC1K1NhwcBaseEngineILb0EEE using T_FILT = using T_MATH_CONV = using T_MATH_ALPHA_BETA = conv2d_c1_k1_nhwcconv2d_c1_k1_nhwc_specialized!is_supported_data_type(xDesc->dataType, convDesc->dataType)!conv2d_c1_k1_nhwc_supported(xDesc, wDesc, convDesc, yDesc)rtc_info.execute(ConvForward4dC1K1NhwcKernel::kernel_enum::conv2d_c1_k1_nhwc_t, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)rtc_info.execute(ConvForward4dC1K1NhwcKernel::kernel_enum::conv2d_c1_k1_nhwc_specialized_t, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)conv2d_c1_k1_nhwc( vars.getHandle(), vars.getAlphaData(), op.getXDesc(), vars.getXData(), op.getWDesc(), vars.getWData(), op.getConvDesc(), vars.getBetaData(), op.getYDesc(), vars.getYData(), vars.getZData(), vars.getBiasData(), num_hgroups, num_wgroups, block, grid, rtc_info, stream, conv_info, use_specialized)!conv2d_c1_k1_nhwc_supported(op.getXDesc(), op.getWDesc(), op.getConvDesc(), op.getYDesc())c1k1_nhwc_determine_specialized(op.getXDesc(), op.getWDesc(), op.getConvDesc(), op.getYDesc()) == CUDNN_STATUS_INTERNAL_ERROR!calculateGrid(*this->getDeviceProp(), op.getYDesc(), block, grid) constexpr int32_t WINDOW_SIZE = constexpr int32_t CONV_STRIDE_SIZE = constexpr int32_t CONV2D_C1_K1_NHWC_H_PER_THREAD = constexpr int32_t CONV2D_C1_K1_NHWC_W_PER_THREAD = constexpr bool DO_BIAS_ACT = constexpr int32_t CONV2D_C1_K1_NHWC_THREAD_COUNT = constexpr int32_t H_PER_THREAD = constexpr int32_t W_PER_THREAD = constexpr int32_t CONV2D_C1_K1_NHWC_THREAD_COUNT_SPECIALIZED =        N5cudnn3cnn27ConvForward4dC1K1NhwcEngineE N5cudnn3cnn20Conv1DC1K1BaseEngineILb1EEEN5cudnn3cnn24Conv1DC1K1NhwcBaseEngineILb1EEEOnly 2-D convolutions supportedconfig != PSEUDO_HALF_CONFIG && config != PSEUDO_BFLOAT16_CONFIGStrides other than 1 not supported(convDesc->strideA[0] != 1) || (convDesc->strideA[1] != 1)(convDesc->dilationA[0] != 1) || (convDesc->dilationA[1] != 1)dxDesc->dimA[1] != dyDesc->dimA[1]dyDesc->dimA[1] != convDesc->groupCountOnly 7x7, 5x5, 3x3, 1x1 filters are supported!isTensorNCHW_HWpacked(dxDesc)!isTensorNCHW_HWpacked(dyDesc)dgrad2d_c1_k1_nchw_shmem_tiling_supported(dyDesc, wDesc, convDesc, dxDesc)rtc_info.execute(DgradC1K1NchwShmemTilingKernel::kernel_enum::dgrad2d_c1_k1_nchw_shmem_tiling_t, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)dgrad2d_c1_k1_nchw_shmem_tiling( vars.getHandle(), vars.getAlphaData(), op.getYDesc(), vars.getYData(), op.getWDesc(), vars.getWData(), op.getConvDesc(), vars.getBetaData(), op.getXDesc(), vars.getXData(), tile_info.tile_h, block, grid, rtc_info, stream, conv_info)dgrad2d_c1_k1_nchw_shmem_tiling_supported(op.getYDesc(), op.getWDesc(), op.getConvDesc(), op.getXDesc())dgrad2d_c1_k1_nchw_shmem_tilingdyDesc->nbDims != 4!is_filter_size_supportedconv_stride_not_supported       N5cudnn3cnn30DgradC1K1NchwShmemTilingEngineE!is_supported_data_type(conv) using T_ALPHA_BETA = dgrad2d_c1_k1_nhwcrtc_info.execute(KernelIdx, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)(config != TRUE_HALF_CONFIG) && (config != PSEUDO_HALF_CONFIG) && (config != FLOAT_CONFIG) && (config != DOUBLE_CONFIG) && (config != PSEUDO_BFLOAT16_CONFIG)!isTensorNHWC_fullypacked(xDesc)!isTensorNHWC_fullypacked(yDesc)xDesc->m_is_large_tensor || yDesc->m_is_large_tensor!dgrad2d_c1_k1_nhwc_grid( *this->getDeviceProp(), conv, h_tiles, w_tiles, num_hwtiles, num_tblocks, block, grid) constexpr int32_t DGRAD2D_C1_K1_NHWC_THREAD_COUNT = constexpr int32_t DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD = constexpr int32_t DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD = constexpr int32_t FILTER_SIZE = dgrad2d_c1_k1_nhwc_specialized       N5cudnn3cnn19DgradC1K1NhwcEngineERuntimeFusionEngineBase::getStatus()this->getDeviceProp()->deviceVer < 600rtc_info.execute(Wgrad1DC1K1Kernel::kernel_enum::conv1D_NCHW_wgrad_general_t, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)rtc_info.execute(Wgrad1DC1K1Kernel::kernel_enum::conv1D_NCHW_wgrad_t, deviceId, grid, block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)!is_supported_data_type(op.getConvolutionParams())wgrad1d_c1_k1( vars.getHandle(), op.getConvolutionParams(), useGeneral, block, grid, vars.getAlphaData(), vars.getXData(), vars.getYData(), vars.getBetaData(), vars.getWData(), rtc_info, stream) constexpr int32_t MAX_W = conv1D_NCHW_wgradconv1D_NCHW_wgrad_generalN5cudnn3cnn17Wgrad1DC1K1EngineEconv.s % 2 == 0conv.padLower_w != conv.s / 2 using T_OUT_REDUCE = wgrad1d_c1_k1_nhwcconv.g % wgrad1d_c1_k1_nhwc_impl::C_PER_BLOCK != 0conv.g % (2 * wgrad1d_c1_k1_nhwc_impl::C_PER_BLOCK) != 0(conv.h != 1) || (conv.r != 1) || (conv.p != 1)(conv.dilation_h != 1) || (conv.dilation_w != 1)(conv.convStride_h != 1) || (conv.convStride_w != 1)rtc_info.execute(Wgrad1DC1K1NhwcKernel::kernel_enum::wgrad1d_c1_k1_nhwc_t, deviceId, gridConv, blockConv, clusterDim, size_t(smemSize), stream, arg_ptrs.data(), false)(workspacePtr == nullptr) || (alignedWorkspaceSizeBytes < n * s * c * sizeofCudnnType(conv.cType))rtc_info.execute(Wgrad1DC1K1NhwcKernel::kernel_enum::wgrad1d_c1_k1_nhwc_batch_reduce_t, deviceId, gridReduce, blockReduce, clusterDim, size_t(0), stream, arg_ptrs.data(), false)wgrad1d_c1_k1_nhwc_impl::wgrad1d_c1_k1_nhwc( vars.getHandle(), op.getConvolutionParams(), gridConv, blockConv, gridReduce, blockReduce, smemSize, vars.getAlphaData(), vars.getXData(), vars.getYData(), vars.getBetaData(), vars.getWData(), vars.getWorkspacePtr(), vars.getWorkspaceSizeInBytes(), rtc_info, stream)_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N__d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c06ignoreE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__45__cpo5beginE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__45__cpo3endE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__45__cpo6cbeginE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__45__cpo4cendE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__419piecewise_constructE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__48in_placeE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std6ranges3__45__cpo4swapE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std6ranges3__45__cpo9iter_moveE_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std6ranges3__45__cpo7advanceEwgrad1d_c1_k1_nhwc_impl::wgrad1d_c1_k1_nhwc_supported(conv)(conv.c != 1) || (conv.k != 1)conv.s >= wgrad1d_c1_k1_nhwc_impl::W_PER_BLOCK constexpr int32_t W_PER_BLOCK = constexpr int32_t UNROLL_FACTOR = constexpr int32_t WARP_SIZE = constexpr int32_t NUM_WARPS_W = wgrad1d_c1_k1_nhwc_batch_reduce N5cudnn3cnn21Wgrad1DC1K1NhwcEngineEdwDesc->dimA[1] != 1 constexpr int32_t R = constexpr int32_t S = constexpr int32_t SPLIT_P = wgrad2d_c1_k1_nhwcwgrad2d_c1_k1_nhwc_reducexDesc->m_is_large_tensor || dyDesc->m_is_large_tensordwDesc->dimA[2] != dwDesc->dimA[3]dwDesc->dimA[3] != 7 && dwDesc->dimA[3] != 5 && dwDesc->dimA[3] != 3 && dwDesc->dimA[3] != 1(convDesc->strideA[0] != 1) && (convDesc->strideA[0] != 2)convDesc->strideA[0] != convDesc->strideA[1](dwDesc->dimA[3] == 1) && (convDesc->strideA[0] != 1)xDesc->dimA[1] != dyDesc->dimA[1]dwDesc->format != CUDNN_TENSOR_NHWC!isTensorNHWC_fullypacked(dyDesc)wgrad2d_c1_k1_nhwc_supported(xDesc, dyDesc, convDesc, dwDesc)realByteSize > workSpaceInBytesrtc_info.execute(Wgrad2DC1K1NhwcKernel::kernel_enum::wgrad2d_c1_k1_nhwc_t, deviceId, gridConv, blockConv, clusterDim, size_t(0), stream, arg_ptrs.data(), false)rtc_info.execute(Wgrad2DC1K1NhwcKernel::kernel_enum::wgrad2d_c1_k1_nhwc_reduce_t, deviceId, gridReduce, blockReduce, clusterDim, size_t(0), stream, arg_ptrs.data(), false)op.getConvolutionParams().isCompatibleFilterFormat(CUDNN_TENSOR_NHWC) == falsewgrad2d_c1_k1_nhwc_supported(op.getXDesc(), op.getYDesc(), op.getConvDesc(), op.getWDesc()) constexpr int32_t STRIDE_H = constexpr int32_t STRIDE_W = constexpr int32_t DILATION_H = constexpr int32_t DILATION_W = constexpr int32_t WARPS_PER_CTA = constexpr int32_t THREADS_PER_WARP = constexpr int32_t BYTES_PER_FP16 =        N5cudnn3cnn19WgradC1K1NhwcEngineE kernel_idx >= NUM_KERNELSwgrad2d_shmem_tilingrtc_info.execute(Wgrad2dGroupedShmemTilingKernel::kernel_enum::wgrad2d_shmem_tiling_t, deviceId, m_grid, m_block, clusterDim, size_t(0), stream, arg_ptrs.data(), false)!wgrad2d_shmem_tiling_supported(op.getXDesc(), op.getYDesc(), op.getConvDesc(), op.getWDesc())(tile_size_knob < -1 || tile_size_knob >= static_cast(tile_sizes.size()))kernelIndexAndTunings.first < 0kernelIndexAndTunings.second <= 0kernelIndexAndTunings.second <= tuningKnobgrid_shmem_tiling(*this->getDeviceProp(), tile_size_knob, op.getWDesc(), op.getYDesc(), op.getConvDesc(), m_kernel_idx, m_block, m_grid) constexpr int32_t REDUCTION_RATIO = constexpr int32_t P_PER_WARP = constexpr int32_t Q_PER_WARP = constexpr int32_t MATH_ERROR_Q_PER_THREAD = constexpr int32_t SHARED_MEMORY_PADDING_PER_Q = constexpr int32_t SHARED_MEMORY_PADDING_PER_W =     (P (P       N5cudnn3cnn31Wgrad2dGroupedShmemTilingEngineE (CUDNN_TYPE_KNOB_TYPE != attrType1 != elemCountCUDNN_TYPE_INT64 != attrType1 != requestedElemCountCUDNN_TYPE_LAYOUT_TYPE != attrTypenullptr == devicePropopSet.getHeurFeatures(f64)|nullptr == opset_ptrnullptr == deviceprop_ptrnullptr == norm_fwd_matchergetEngCfgList(out, len, MAX_NUM_KTM_PRUNED_ENGCFGS, deviceprop_ptr, opset_ptr->getFinalizedMode(), norm_fwd_matcher->getNormMode())kmmmmmmmmmmkmmmmkDlmmmmmmmmmmmmmmmmmmd N5cudnn7backend10LayoutInfoEN5cudnn7backend10KnobChoiceEN5cudnn7backend30NormTimingModel_ANALTYICAL_KTMESt23_Sp_counted_ptr_inplaceIN3ktm18HardwarePropertiesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE '*'**'*'$tJcIJIPII"!#$*"!#$*"!#$"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$"!#$"!#$*"!#$"!#$"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$"!#$"!#$*"!#$*"!#$*"!#$*"!#$"!#$"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$"!#$*"!#$*"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$"!#$"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$*"!#$*"!#$"!#$"!#$*"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$"!#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*@ @ @@ @ @@@ @@@@ @`@@ @@ @#@@@ @%@& @' @%`@( !"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*@@`@@ @@  @@@`@@@@ @`@@@@ @'`@ @) @ @- @ @@'@@.`@@@`@@ @/ @1!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*@ @@ @ `@ @  @@ @ @@@ @ @@ @ @`@@ @`@!@ @@@& @@!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$@@@  @ @0 @ @@`@ @`@@ @`@@`@@`@'@@@ @/`@12`@@.@ 6`@@*6@96 _ZN5cudnn6fusion16compute_dot_do_oILb0EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion28compute_dot_do_o_specializedILb0ELi128EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion35compute_dot_do_o_ragged_specializedILb0ELi128EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion28compute_dot_do_o_specializedILb0ELi64EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion35compute_dot_do_o_ragged_specializedILb0ELi64EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion16compute_dot_do_oILb1EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion28compute_dot_do_o_specializedILb1ELi128EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion35compute_dot_do_o_ragged_specializedILb1ELi128EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion28compute_dot_do_o_specializedILb1ELi64EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion35compute_dot_do_o_ragged_specializedILb1ELi64EEEvPKvS3_PvS4_jjjjjjjjjjjjjjjjjfS3_S3_S3_S3_S3_b_ZN5cudnn6fusion20convert_dq_to_16bitsILb0EEEvPKvPvjjjjjjjjjjS3_S4_S4_bb_ZN5cudnn6fusion20convert_dq_to_16bitsILb1EEEvPKvPvjjjjjjjjjjS3_S4_S4_bb_ZN5cudnn6fusion27convert_dq_to_16bits_raggedILb0EEEvPKvPvjjjjjjjjjjS3_S4_S4_bb_ZN5cudnn6fusion27convert_dq_to_16bits_raggedILb1EEEvPKvPvjjjjjjjjjjS3_S4_S4_bb_ZN5cudnn6fusion22rearrange_n_convert_dqILb0EEEvPKvPvS4_jjjjjjjjjjS3_S4_S4_b_ZN5cudnn6fusion22rearrange_n_convert_dqILb1EEEvPKvPvS4_jjjjjjjjjjS3_S4_S4_b_ZN5cudnn6fusion16fmha_reduce_headILb0EEEvPKvPvjjjjjjjjjjjS4_bS4_b_ZN5cudnn6fusion16fmha_reduce_headILb1EEEvPKvPvjjjjjjjjjjjS4_bS4_b_ZN5cudnn6fusion23fmha_reduce_head_raggedILb0EEEvPKvPvjjjjjjjjjjjS4_bS4_b_ZN5cudnn6fusion23fmha_reduce_head_raggedILb1EEEvPKvPvjjjjjjjjjjjS4_bS4_b_ZN5cudnn6fusion10fmha_dbiasILb0EEEvPKvPvS3_S3_fjjjjjjjb_ZN5cudnn6fusion10fmha_dbiasILb1EEEvPKvPvS3_S3_fjjjjjjjb_ZN5cudnn6fusion24print_dropout_mask_bpropEPjPfiiiimmm_ZN5cudnn6fusion24print_dropout_mask_fpropEPjPfiiiimmm_ZN5cudnn6fusion31gen_dropout_mask_4bit_transposeEPKiPKyS4_Phmmmmmmmmmj_ZN5cudnn6fusion21gen_dropout_mask_4bitEPKiPKyS4_Phmmmmmmj.@_ZN5cudnn6fusion21lean_reduction_kernelEPvPfS2_S2_S2_jjjjjjjjjjjjb_ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi128EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_S4_S4__ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi64EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_S4_S4__ZN5cudnn6fusion14matmul_dq_sm80ILb1ELi128EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_S4_S4__ZN5cudnn6fusion14matmul_dq_sm80ILb1ELi64EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_S4_S4_ '-27?GPYafku #.?GXct)=HSdt~0:DOZn}%9DO`jr&1<KVgq  1BQ\ny$5F                                                                                                                                                                                                                                                                                                                                                                                                       !!""##$$%%&&'' (( )) ** ++ ,,--..//00  !"#$%&'()*+,-./01$@5 r    -:rrrr D!":#$%&('( T)* n+, T-.|/0n12345689:;P<=>?@@ABCDE5FGHIJKLMNO PQDRS TU5VWPXYZ[\]^_r`anbcde-fgrhi@jk@lmPnopq rs tu:vw bxyz{ (|} r~DD @ rn:b@ !"$#r `$b%&>'()r*+,-./0123456789:;r<=>$r$r:@@5@@5T@rDrrn     -rn    >b>b     D rr r!"# $%& '()*+,-!"./01234567!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$   %*38@IRZep!&+05ATYdr'=KYglq$7GZmt +<HZ_diz *;LXdq~                                                                                                                                                                                                                                         !!""##$$%%&&''(())**++,, -- .. // 00 1122334455  !"#$%&'()*+,-./0123456$@- > @ b|(  @  !"#$$%@&'()P*+5,-./$01234567D89:;:<=>?@A$BCDE@FG HInJK$LMTNOPQ $RS 5TUPVWPXYPZ[\]^_`abbcde |fgPhi-jkDlm@nopqPrs$tu vw8xyz{|}:~n !"@#$%&'()*>b+,-./0123456789:;<$@5$@>:05:b$T $-D  n|:n>b( !"#$%&'()!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$  $(,047:>ADG    @H 0 H ``@ H!"#$                 "'/7<ELU_ir{'2AKTgrz "3DT_ju 0AN[l}&6@NXbr $2BRbls|#1?O_                                                                                                                                                                                                                                                                                                                                                         !!""##$$%%&& '' (( )) ** ++,,--..  !"#$%&'()*+,-./$@: r T  -nb( r  !"#P$%$&'@()*+,-:./01$23456789r:;r<= >?@A5BCPDErFGHIJK-LMDNO>PQRSrTUrVW XY Z[P\]^_ `a 5bc>denfg bhijk-lmDnoDpq@rsrtu@vw xyz{n|} n~:b!"#$@r%&'b()>*+,-. /r0123456789:;<=>$@$r: 5@@5T rDrrn -rn     >b>bDrrr  (!"#$%&'()*+,-./0!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$.E\s+BYp(?Vm%<Sj "9Pg~6Md{3Jax0G^u-D[r * A X o  ' > U l $ ; R i ! 8 O f }   5 L c z 2I`w/F]t,CZq)@Wn&=Tk #:Qh  7Ne|4Kby1H_v.E_y/Ic}3Mg7Qk!;Uo %?Ys)C]w-Ga{1Ke  5 O i !!9!S!m!!!!!! "#"="W"q"""""" #'#A#[#u######$+$E$_$y$$$$$$%/%I%c%}%%%%%%&3&M&g&&&&&&''7'Q'k''''''(!(;(U(o(((((( )%)?)Y)s))))))*)*C*]*w******+-+G+a+{++++++,1,K,e,,,,,,--5-O-i------..9.S.m...... /#/=/W/q//////0020I0`0w00000011/1F1]1t11111112,2C2Z2q22222223)3@3W3n33333334&4=4T4k4444444 5#5:5Q5h5555555 6 676N6e6|6666667747K7b7y7777778818H8_8v88888899.9E9\9s9999999:+:B:Y:p:::::::;(;?;V;m;;;;;;;<%<<<S<j<<<<<<<=(=B=\=v======>,>F>`>z>>>>>>?0?J?d?~?????@@4@N@g@@@@@@AA7AQAkAAAAAAB!B;BUBoBBBBBB C%C?CXCqCCCCCC D'DAD[DuDDDDDDE+EEE_EyEEEEEEF/FIFcF}FFFFFFG3GLGeGGGGGGHH5HOHiHHHHHHII9ISImIIIIII J#J=JWJqJJJJJJ K'KAK[KuKKKKKKL+LEL_LyLLLLLLM/MIMcM}MMMMM     !! "" ##$$%%&&''(())**++,,--..//001122334455667788 99 :: ;; << ==>>??@@AABBCCDDEEFFGGHHIIJJKKLL MM NN OO PP QQRRSSTTUUVVWWXX  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY                                                                                                                                                                                    "'05=FPYbt~ $6H\p.38GNXls|  )5AMYkw  %*/?LYk{'5GY                                                                                                                                                                                                                                                                                 !!""##$$%%&&''(()) ** ++ ,, -- ..//00112233  !"#$%&'()*+,-./01234$@- >  b|( $ !@"#$%b&'5()*+$,-./`01P23>4567:89:;<=>?@A@BCbDE$FGTHI $JKPLMNO@PQRSTU@VW@XYZ[ n\] |^_@`a$bcPdefghijklmnopqrstu-vwxyz{|}~ !"#$%&'(>)*@+,-$`./012345678 9:;<=>?$@5$$@D:0 5n$T $ -D b|:n>b( !"#$%&'(!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !%)-159>BFJ     H0  H ``@H !"                    )2;DLRSX`hpuz!,-5BN_ox$3<L[fq}&7ESbp!+8GVcnz|"1<HVcp{                                                                                                                                                                                                                                                 !!""##$$%%&&''(())**++,,-- .. // 00 11 2233445566778899::;;  !"#$%&'()*+,-./0123456789:;<$@5`  - D@ rrT  b !"r#$%&('(@)*,-./01@23456789$:;`<=>?-@ABCDEFG5HI JK5LM@NOPQ`RSTUrVWDXY Z[\]:^_P`abcdefg  hi-jk-lm rno pq rs(tu>vwxy@z{P|}~ TbrrbP !@ "b#$%&@T'()*PP+ ,(-./0123r456789:;<r=>?@@A @@-`$`r 5 $5>  r:  r DT (->  Tb@b   @  !"b #$%r&rT'()*r+,0-./0r123456!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$,BXn4J`v&<Rh~.DZp  6Lbx(>Tj0F\r "8Ndz*@Vl  2 H ^ t  $ : P f |  , B X n   4 J ` v  & < R h ~ .DZp  6Lbx(>Tj0F\r "8Ndz*@Vl2H^t$:Pf|,BXn4J`v&<Rh~.DZp  6Lbx(>Tj$B`~2Pn"@^|0Nl > \ z !.!L!j!!!!!""<"Z"x"""""#,#J#h######$:$X$v$$$$$ %*%H%f%%%%%%&8&V&t&&&&& '('F'd''''''(6(T(r((((()&)D)b))))))*4*R*p*****+$+B+`+~+++++,2,P,n,,,,,-"-@-^-|-----.0.N.l...../ />/\/z/////0.0L0j0000011<1Z1x111112,2J2h2222223:3X3v33333 4*4H4f444444585V5t55555 6(6F6d666666767T7r777778&8D8b888888949R9p99999:$:B:`:~:::::;2;P;n;;;;;<"<@<^<|<<<<<=0=N=l=====> >>>\>r>>>>>>> ?"?8?N?d?z???????@*@@@V@l@@@@@@@AA2AHA^AtAAAAAAAB$B:BPBfB|BBBBBBCC,CBCXCnCCCCCCCDD4DJD`DvDDDDDDDE&EHTHjHHHHHHHII0IFI\IrIIIIIII J"J8JNJdJzJJJJJJJK*K@KVKlKKKKKKKLL2LHL^LtLLLLLLLM$M:MPMfM|MMMMMMNN,NBNXNnNNNNNNNOO4OJO`OvOOOOOOOP&PSTSjSSSSSTT[\[z[[[[[\.\L\j\\\\\]]<]Z]x]]]]]^,^J^h^^^^^^_:_X_v_____ `*`H`f``````a8aVataaaaa b(bFbdbbbbbbc6cTcrcccccd&dDdbdddddde4eRepeeeeef$fBf`f~fffffg2gPgngggggh"h@h^h|hhhhhi0iNiliiiiij j>j\jzjjjjjk.kLkjkkkkkll> ?? @@AABBCCDDEEFFGGHHIIJJKKLLMMNN OO PP QQ RR SSTTUUVVWWXXYYZZ[[\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]                                                                                                                                                                                              )-16>EIR[ejnx $1;DGT^fhrx+9?ABHPVXY_gioqz                                                                                                                                                                                !!""##$$%%&&''(())** ++ ,, -- .. //  !"#$%&'()*+,-./0$@: `  -D@ b  @  !8"# $%&'r() *+@,--./`01234567`89:;$<=:>?@ABCDE@FG HI DJK LM$NOPPQRSTU @VW>XYbZ[$\]^_-`abcPdefghi@jk>lmno !"pq#$5rsTtu%&'vw(:xy)bz{*$|}+,-./@~01  @-`@$`>-  $:D  >b$5T@@:b$ !"#$%!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !%)-0369 H` 0   @              &/7>GOW^fnu| ./?@GWgv />M_t-ASfy(;L]jz!-=Obw ,>KXj /?O_qsw{}                                                                                                                                                                                                                                                                                                                                                                    !!""##$$%%&&''(())**++,,--..// 00 11 22 33 445566778899::;;<<==>>??@@AA  !"#$%&'()*+,-./0123456789:;<=>?@AB@5@  - DT0 n  !"  #$ %&r'(@)*,-./P01234567895:;<=>?@ABCDEFG$HIDJKrLMNO5PQPRS@TUPVWXYZ[n\]^_`a bc-deDfg hijk lm0no pqTrstu vw xynz{P|}r~@r $T !"#P $ %&'()*+,@-./0r123456789:; 5@ $D5r n r-D  T  nrT r! @"#$%&r'( )*+,-./0  :      ::!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$* #)/49?EJOTY_bgw $3I\osw &5DUhlp 4HVdks'59=IXet #0?L[_cgz   #(-258;DGPY\_hknwz                                                                                                                                                                                                                                                                                                   !!""##$$%%&&''(())**++,,--..// 00 11 22 33 445566778899::;;<<==>>??@@AABBCCDD EE FF  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG$@5 @  ->b T  @ !"$#$%&()*+,-./0123456789 :;$<=>?@ABC5DEFG$HIJK:LMNO5PQ0RSTU-VWDXY Z[ T\] ^_-`a>bc de@fghinjk|lmno:pqbrs@tuvwxy|z{|} n~!"@#$%&'(P)P*+,-.PP@P @/@0123456789:;<5$-D:n  T $ 5@ $|@-D !"n#$$%&'(@)*+! ++V!   !    V V ` !"#u"$% &'u"() *+u",- H./u"01H2345u*6789:;<=>?@ABCu*DE>aFGHHIHJKu*LMu*NOHPQHRSu*TUu*VW>aXY !"#$%>aZ[&>a\]'()*+>a^_,>a`a-./0123456!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*  $(,047:=   H0 H  `@ H                  !+3<ELT]enry!0AOep .<JVds(=Vfk},;JM_w#3AJ^lz"/<L\l}$4BEKQRXY_ekos                                                                                                                                                                                                                                                                                                                                                                !!""##$$%%&&''(())**++,,--..//00 11 22 33 44 5566778899::;;<<==>>??@@AABBCC  !"#$%&'()*+,-./0123456789:;<=>?@ABCD @  5 ->r T   !"#$ n%& '( )*@+,-. /0r12456789:;<=>?@A5BCDE FG5HI@JKLM$NODPQrRSTUVW-XYDZ[P\]^_`abcndefg hijk nlm nopqPrstuvwxyTz{|} ~$T@PP0 !"#P$%&'(r) P*+,@-.rrrr/012345 6789:;<=> 5@-$D 5r n  D T nrr T @$ !"#  $%&'()*+,-   :   : !"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$,BXn4J`v&<Rh~.DZp  6Lbx(>Tj0F\r "8Ndz*@Vl  2 H ^ t  $ : P f |  , B X n   4 J ` v  & < R h ~ .DZp  6Lbx(>Tj0F\r "8Ndz*@Vl2H^t$:Pf|,B_| *Gd/Li4Qn9Vs!>[x &C`}+He0Mj5Ro  : W t !"!?!\!y!!!!! "'"D"a"~"""""#,#I#f######$1$N$k$$$$$$%6%S%p%%%%%&&;&X&u&&&&&'#'@']'z''''' (((E(b(((((()-)J)g))))))*2*O*l******+7+T+q+++++,,<,Y,v,,,,,-$-A-^-{----- .).F.c.....././K/h//////030P0m00000001131I1_1u11111112%2;2Q2g2}22222233-3C3Y3o3333333 4454K4a4w44444445'5=5S5i555555566/6E6[6q6666666 7!777M7c7y77777778)8?8U8k88888889919G9]9s9999999 :#:9:O:e:{:::::::;+;A;W;m;;;;;;<#<@<]<z<<<<< =(=E=b======>->J>g>>>>>>?2?O?l??????@7@T@q@@@@@AA> ??@@AABBCCDDEEFFGGHHIIJJ KK LL MM NN OOPPQQRRSSTTUU  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV                                                                                                                                                                               !(/6<AGNTZ`ejpw} #.?J_o~ $<J_t,AP[n'<Mez"&*8IYiw&9J^ptx!%(25?HKTWZ]fjsw                                                                                                                                                                                                                                                                                                                                                                              !!""##$$%%&&''(())**++,,--..//00 11 22 33 44 5566778899::;;<<==>>??@@AABBCCDDEEFF GG HH II  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ$   5- D> @!" b#$ b%&'(T)*T+,-.$/012456789:;<=>?@A5BCDE$FGHIJK(LM-NODPQRSTU:VWXYZ[\]^_`anbcde fg Thi $jk 5lm@nopq rs tu|vw$xy|z{@|}-~>@ :b @P!"#$%&'()nP*+,-@./PP0P12@3456789:;<=>P?@AB$@5@$-:$  T $5 $|@-D @ !n  "  #$%&'()*+! ++V ! ! "#!$% &'()u"*+V,- ./V01 23456789 :;u"<= >?R@AHBCHDE u*FGu*HIHJKLMNOPQ*RSu"TU>aVW>aXYu*Z[u*\]H^_H`abcde !>afg">ahi#$%&'()*+,-.!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*  $(,0369   H0 H @  ``H                  $.8@AJSYcjor| %3GHWfi}/5?O^p '45CYj{#/:HR^jp| %,8:IW]l{                                                                                                                                                                                                                                           !!""##$$%%&&''(())**++,,--..//00112233445566 77 88 99 :: ;;<<==>>??@@AABBCC  !"#$%&'()*+,-./0123456789:;<=>?@ABCD@ 5   -r rD !" #$%& b'( r)* +,-.@/012 3456078r9:`;<>?@APBCDEFGHIJK LMNOPQRSTUVWXYZ[@\]^_`abcderfgPhijk@lmno`pq rs5tu vw$xy z{ 5|}-~ PP  @-5  !"#`$%&D'()@ *(+,-./bP0123456@789r:;@<=>?@@`5   -  $r   5  @: r  (  >  ! "r#b$%r&'()@*+ ,-./01!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$.E\s+BYp(?Vm%<Sj "9Pg~6Md{3Jax0G^u-D[r * A X o  ' > U l $ ; R i ! 8 O f }   5 L c z 2I`w/F]t,CZq)@Wn&=Tk #:Qh  7Ne|4Kby1H_v.E\s+BYp(?Vm%<Sj "9Pg~6Md{5X{*MpBe 7 Z } !,!O!r!!!!!!"D"g"""""#9#\##### $.$Q$t$$$$%#%F%i%%%%%&;&^&&&&& '0'S'v''''(%(H(k((((()=)`)))))*2*U*x****+'+J+m+++++,?,b,,,,,-4-W-z----.).L.o...../A/d/////060Y0|00001+1N1q11111 2C2f22222383[3~3333 4-4P4s44444"5E5h555556:6]66666 7/7R7u77778$8G8j888889<9_99999:1:T:w::::;&;I;l;;;;;<><a<<<<<=3=V=y====>(>K>n>>>>>?@?c?????@5@X@{@@@@A*AMApAAAAABBBeBBBBBC7CZC}CCCC D,DODrDDDDD!EDEgEEEEEF9F\FFFFF G.GQGtGGGGH#HFHiHHHHHHHI-IDI[IrIIIIIIIJ*JAJXJoJJJJJJJK'K>KUKlKKKKKKK L$L;LRLiLLLLLLL M!M8MOMfM}MMMMMMNN5NLNcNzNNNNNNOO2OIO`OwOOOOOOPP/PFP]PtPPPPPPPQ,QCQZQqQQQQQQQR)R@RWRnRRRRRRRS&S=STSkSSSSSSS T#T:TQThTTTTTTT U U7UNUeU|UUUUUUVV4VKVbVyVVVVVVWW1WHW_WvWWWWWWXX.XEX\XsXXXXXXXY+YBYYYpYYYYYYYZ(Z?ZVZmZZZZZZZ[%[<[S[j[[[[[[ \/\R\u\\\\]$]G]j]]]]]^<^_^^^^^_1_T_w____`&`I`l`````a>aaaaaaab3bVbybbbbc(cKcncccccd@dcddddde5eXe{eeeef*fMfpfffffgBgegggggh7hZh}hhhh i,iOiriiiii!jDjgjjjjjk9k\kkkkk l.lQltllllm#mFmimmmmmn;n^nnnnn o0oSovoooop%pHpkpppppq=q`qqqqqr2rUrxrrrrs'sJsmssssst?tbtttttu4uWuzuuuuv)vLvovvvvvwAwdwwwwwx6xYx|xxxxy+yNyqyyyyy zCzfzzzzz{8{[{~{{{{ |-|P|s|||||"}E}h}}}}}~:~]~~~~~ /R     !! "" ##$$%%&&''(())**++,,--..//001122334455 66!77"8899::;;<<==>>??@@AA BB CC DD EE FFGGHHIIJJKKLLMMNNOOPPQQRRSS TT UU VV WW XXYYZZ[[\\]]^^__``aabb  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc                                                                                                                                                                                                          %-2:>CGLRWXZepuy %/:>O\dou~ '/9BGMWckost{ $'/7                                                                                                                                                                                          !!""##$$%%&&''(())**++,,-- .. // 00 11 22334455  !"#$%&'()*+,-./0123456@  5 -$ ` @ "#$%8&' ()*+r,- ./@0123456789`:;<=5>? @ABC DE@FGHIJK-LM NO -PQPRSTUPVW $XY5Z[\]^_:`abcde>fghijklmbnopq ! rstuvw"#$xy%&'(z{$|})* ~+@,-./01  @@`5 - -  5 $: $>b !"!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$  #& 0  `                 "1<ETcm~ 0@L[l{ )8GVdr(9Td{ .<Pduw (9GXq1AGcw 3FYl|$7GQew  , < L ^ j   ' < Q c t   0 C T g z   0 C V i | }  % - A I Q e o y 2<FYi}.HUow*DZt'ASm        !!""##$$%%&&''(())**++,,--..//001122 33!445566778899::;;<<== >> ?? @@ AA BBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[ \\ ]] ^^ __ ``aabbccddeeffgghhiijjkkllmmnn  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno$@5 @  -@0  !"#$ %&'()* r+,r-. /0 12(345678 9:;< => ?@rABrCD@EFGHIJKLMN(OPQRrSTrUV !"#WX$%&'()YZ*+,-\]^_`abc@defg(hi5jk@lmno5pqrstu-vw:xyz{ |}-~DP D  n@ n 0 P@ T $@@ !"#$r%r@&d'()*PP +,-./001234567r8r9:;<=>?@ABCDrE@FGH@ 5@@--r     5 D  :0 r!" #$%&n'( )*0+,-.T/012 34r5678 9:r;<$=>?@nABCDEF$GHrIJ !"@KL(MN`OPbQR#$%STUV&'WX()* YZ+,[\-./r]^0_`12345rab670cdref89:;<=hi jklm no pqstuvwx@yz0{|}~@@         , , 1 ,>>D !"#$>$X`%1X7b& ' ()*+7XL|,-.7D|/0L123415|67b89:;Lb  <=>n  ?@ABCb DEFGHnI|JnKLMNOPQR!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$* "*8BJXfu %3AP_ly "$6BP[any  %5ASXcm{/:CFPZdi{.:?NZdns(7AMZjv'3@LYfy/F]ex  5 H ^ u }   # * B ^ q x   $ 7 O b i % 1 I a }   + C Y q !4Iaw,?Uc                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       !!""##$$%%&&''(())**++,,--..//00112233 44 55 66 77 8899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK LL MM NN OO PPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`$5  - r   !" #$ %& '(()*+, @-./012 34 56r78r9:(;<r=>r?@ABrCDEFGHIJKL !"#$%&NOPQRS TUVW$XY(Z[@\]^_`abc5defghi5jk lm-noDpq@rstu vw-xy:z{|} n~P DP@P nr(Pr@T !"0#rP$P%P&('()0*+,@-P./0123456rr789:;<=>?@@ABCD@ 5@@--rr5  D   :n     T( n $!"#$0%&'()*b+,-.0/0r12r34@56 789: ;< =>!"#$%?@&'AB()*+,-./CD@EF0123450GH6789JK LMNO PQ RS`UVWXYZ@[\0]^@_`abcdefghijkl mn opqrstuvwxyz{|}~  ,       >1 $ , 1 L >!"#$%7&'(>)*+D, -. /10n7X1>1X7X1231456Db|789|:;<X=7>|?@AnBD7XCDEFbGD|HIbJb    7 XKLMnNnOLbPnQRSTUVn b!"WXYZ[\n#$]^_`abb%&cdefghi!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$ )28AJPYajry':?DNZix',16N\q+>CDYjq$@Uelq{!.;K[iw|#056FXix "+.2;?CJNVZeimx| 5AW_v  1 = S [ r z   3 : Q r  % 9 X o  / J U ` s  ! ? R n 2K^t                                     !      !    !!  !  !   !   !      !!  !  !   !  !     !    !   !   !  ! !  ! !  !    !    !  !   !  !  !!    !  !   !    !    !       !     !  !    !   !   !    !  !   !   !    !  !   !   !   !  !   !   !      !   !                                                                                                                                        !  !  !   !  !    !  !  !    !  !   !   ! !   !   ! !    !    !  !    !   ! !    !  !   ! !    ! !   !     ! !  !       !  !  !  !  !  !      !   !  !     ! !  !   !   ! !  !  !  !    !  !    !   !   !    !  ! !  !    ! ! !   !  ! ! !  !  !   !  !     !   !     !    !    !  !    !    !    !     !    !     !     !     !    !  !    !     !    !  !    !  !    !         !!""##$$%%&&''(())**++ ,,!--..//00112233445566 77 88 99 :: ;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM NN OO PP QQRRSSTTUUVVWWXXYYZZ [[ \\ ]] ^^ __``aabbccddeeffgghhiijjkkllmmnnooppqq rr!ss  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst@5@  - 0 @    !" #$%& @'()*+,./012345@6789P:;5<=@>?@A$BCDEFGHI-JKDLM0NO PQ:RS TUVWXYZ[ \]n^_@`abcde Tfg hi 5jkPlm@no pqrstuTvw xy|z{|}-~DP$@ n!"#$%&'@`()*+,-./@01@23456789P:;<=>$@5$$@-0 :5@@  T -D@  |$n$ !"#@$@%&'()*+,-$  ./0   +L6 !"# $%!&' ()[*+u",-L./01623 45V67 89@:;<=u*>? [@Au"BCDEFGu"HI>aJK@LMNOu*PQRSHTUVWu*XY>aZ[ !"#$%>a\]&'()_`abcd@ef0ghijklmnop`qr@stuv@wxyz{|}~       1  ,  1> , 1 >!"  #>$X%&'()>*+,>1X-./012347XD|1X7X57L|67n8Lb9:;D|<=>|?@ABbCDb  EFGHIL  b bJnKLMNOPQRnSTUnVWXYZ[\]^_!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$ !,7BMXcny #*589@ALWcoz"-8CKS^iqv~ #%*+02                                                                                                                                 W     _W_ !"#$%&'()* +,-. _/012 _3456 78 9:;<=> ?@_ABCD !"FG HI JKLMNOPQWRSTUVWXY Z[ \]^_ `abcWdefghijklm_nopq_rs tu _vw xy z{ _|} ~S_ !    __ _  __!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*%*17=CMQW]foq| +0:DPY^glx'46FQ^isy$(,58AIKXZ\i|,CLe|&9AZp4=PXqz.Dcy5Qmw  ) > U o  . H ] w  5 F                                                                                                                                                                                                                                                                                                                                                                                                       !!""##$$%%&&''(( )) ** ++ ,, --..//00112233445566778899::;;<< == >>??@@AABBCCDDEEFFGG HH II JJ KK LLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ @-   5  @  !"# $%&'()P*+@,--./0123456789:;5<=>?$@APBCDEFG DHI JKLM5NO PQ0RSTU VWnXY$Z[-\]^_$`aTbc@defg !"#$Phi%Pjk@lm&'(opqrstuv@wxyz{|5}~@$- 5 @  -D @$n@ @  H(@ @ H(H( `@@0@              ,  !" #$%&'( )*,+, -./0,12>34 567819: ;<=>,?@ AB 1CD!"#>EF$%&'(>GH1IJLKL)*+MN$OPDQR,-./ST>UV012DWX1YZL[\1]^X_`37abDcdnef45677ghbij891klXmn7opLqr:;Dstnuv<7wx=|yz>?@Ab{||}~BCL|D7E|FGHnIJb|KLbMNOPQRnSTUbbVWXYnZ[\]^n_`abcdefghijkl!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$ "(08>DLRX^cfinq     H@ 0 `H@  H!"#$@%&'(                         %1?MWcq{$5FVcs'8HXhu!1AQcu|"5I]_i}*@Sq&.DXhz#3:Xm}$B`p  % 6 C W b m  ( < M ` q  # 3 C S d p   ) ; M _ e h m o u w |   $ 8 L T [ q (BJNVZt):Kc}2Ke}       !!""##$$%%&&''(())**++,,--..//00112233 44!55"66#778899::;;<<==>>??@@ AA BB CC DD EEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__`` aa bb cc dd eeffgghhiijjkkllmmnnooppqqrrssttuuvvww xx!yy  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz@5@  - @D0 r!"#$b%&r'( )*+, -. /012 r3456789: ;<=>?@ABCDEFrGHIJ@KL$MNOPQRSTUVrWX YZ!r[\0]^"r_`rabrcd#$%&'ref()*ghij+kl,-./mn0rop1234567qr89tuvwxy@z{|}~($-@5 5P -D:P  n 0D@ T $ n@ r!"@#$%T&PP'@r()*+,d-.PP/r0123456789:;<= >?@ABCDEFG     @5@50  -!"r#$@%& '($)*D+,r-./0 D12r34056 789: >;<  =>?@ABCDnEFGHrIJ KLMN$OPQRSTUV WX YZ[\r]^ _`0ab cd@ef!"#$%gh ij&'() kl*mn+,-.rop0qr/rst012ruv3wx4ryz56789:;<|}~    @ @  $ 0  $7711  7L1L 7!7"#$%1&'n(`>b)L*+,-.|/012X|3n4567n89`:;<=`  >?@!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$* !.6DMZgp*5EUdoz )9DR^nt'9HWo|2KN`v-9K`lx$0<NZfqw !*4>JWgsx(3<GW`iorwy   ' 9 E T \ k r / 6 > B J N c n  & : O d y 5 G [ p                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               !!""##$$%%&&''(())**++,,--..//00112233445566778899:: ;; << == >> ??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSS TT UU VV WW XXYYZZ[[\\]]^^__``aabbccddeeffgg  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh @-   5rD   !"#$ b%& '( )*+,-.@/00123456r78r9:(;<r=>8?@rABCDEFGHIJ !rKLrMN"#$%&'PQRSPTU$VW@XYZ[8\]^_5`a@bcde$fg@hijklm-noDpq@rsrtuvw-xyPz{|}@~n  5   T :P   D!"#$r%&r('(0$)n*@+,r-./d@00b123456789:;<=>?@dABCDEFGHIJ  @5 50 $D  r   -r  >   D !"(#$ %&'(@)*r+,n-./0r12034 !"#05678$%d9:;<=> ?@&'rAB()*+,CDEF-./01HIJK LM NO PQ RSTUWXYZ[\@]^_`abcdefghij@klmnopqrst`uv0wxyz{|}~    ,  ,`   7>11   $ $!X">#D$%&'()$*+,-L./01|2X3L45678Xb9b:b;<=n>?@ABCDEFGH!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$ splitsK_0H`x 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph(@Xp  0 H ` x  8 P h  ( @ X p  0 H ` x  8 P h (@Xp0H`x 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph ( @ X p !!0!H!`!x!!!!!!" "8"P"h"""""""#(#@#X#p######$$0$H$`$x$$$$$$% %8%P%h%%%%%%%&(&@&X&p&&&&&&''0'H'`'x''''''( (8(P(h((((((()()@)X)p))))))**0*H*`*x******+ +8+P+h+++++    !! "" ## $$%%&&''(())**++,,--..  !"#$%&'()*+,-./ @Y    !N%NN N!"#$%& '()*+,T-.SN/0O12N34!N56O789:N;<TN=>!N?@8AB4CDEFGHIJKLYMNYOP SNQRNST SNUV NWX!NYZO[\O]^_`abcdlefghijNkl8mnopNqrNstNuv-wxHyzN{|!N}~NNONMOH+TN SN<NOO NN!N!N"# $N%&'H(H)*N+,-l.2/l01234567 N8O9:`;<=NON`>SN?@ABCDENFGHIJKOllLMNOPQRXSTUVOWlXYZN[N    \ ]*MONSN^N_`abc4 !"l#$defghO%&ijk'(`)*+,-./0N123456*78lmno9:pq;<r=>st?@ABuvCDwNEFNGHIJxyz{KL|}~MN OPQRSNSTNUVNWXYZ[\O]^_`abcdOefghOijOklOmnNopOqrstuv wxyzSN{|N}~NONSNSNNNNSNMONMONMONNONONNO`NOONSNNNN*MOSN@NOONON NSNNNONNONMO  8 0!N `    SN`N*8 !"#$%O&'@()*+ ,-./01!N2345l67289O:;N<=N>?@ANBC-DEhFG-HIJK-LM-NO-PQNRS NTU lVWlXY,Z[\]^_l`a ObcOdeNfghiOjklmYnolpqrsltuvwxyz{|}T~NONNlN!NlNNO !"*#$%&NH'NNN`Ol(NMO)O*N+ON,-./NNO0O1234*Y H52H6789N:YH;O<O=SN`Y>?@@ABCO DN  E  FOGMOSNHNMOIJKLMNO*PQRSTUV!WXYN !ZO"#$%O&'N()*+N,-Y./01H2345N67[89\:;]^_Y<=T>?@A`BCalDEYFGbcdeHIfMOJKghiNLMjklmnoNOpPQqr`RSstuYTUvOVWSNXYOZ[wMO\]xyz^_{`aObcNde|Yfg}NhiHjkHlmNnoNpqNrsOtu~OvwMOxy`z{O|}~YOONONOOONMOMOMOOOMOSN                                                                                                 "(05=CJQW]cjou{1INSfw+@Qg{$=I\p-F\p (;Tr %*/4@N^ch|)7HYgv{ .>BFJPTX\`gkrv    # . 2 3 > D Q R X ` k    , 3 D J [ a g k o  ( ? I ^ u   2 G \ r $ ; R f z            $"! # $!" #!$"     $"!   $"!   $"! !# $" #$! "   !# "   $" !#! $" #! $"   !"   $# "!  #!" !#  $" !#  $"  #! "    $" ! $" !$ #"!  $#" !   $"!   $"!   #$ "! !#"   # $ !"  $#! " #! " # !$ "  # !" # ! "   #$!" $  #" !   $"!  "!$   $"!   $"!   "$! #! " !#  " !#$  "   #$ ! "   "$ !   "$!  # "$ ! $#!"     "$! $$   $# "!  $" !$$# !$"  "!#    $#" !   $# "!   "$! $$                                                                                                                                                                                                                                                                                                                                                                                                  !!""##$$%%&&''(()) **!++",,#--$..//0011223344556677 88 99 :: ;; <<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO PP QQ RR SS TTUUVVWWXXYYZZ[[\\]] ^^ __ `` aa bbccddeeffgghhiijjkkllmmnnooppqqrrss  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst@5@  - 0 @ $  !"@#$ %&'( )*+,./012345@6789:;5<=@>?@A$BCDEFG(HI$JKDLM0NO PQ:RSTU$VWXYZ[`\]n^_`a bc Tde fghi:jk@lmno  pqrs tuTvw xy$z{||}$~-T @5 n!P@"#$%&'()*+,-./0b1@@2345$678P9:;<=>?@ABC@PDEFGH @0  555 D -D @ -D n$n`    n $ !@"#$@%&'($ )*+,-./ !"012$%+&'()!*+ ,-+./01V23 45!67 89:; <=>?u"@AVBC DELFGHI6JK LMHNOPQu*RSTUu"VW [XYu"Z[>a\]H^_`au*bc@defghi>ajk u*lm!"#$>ano%&qrstuv@wxyz{|}~@0  1 ,  >   `X   $77 !0`"#$%&'($)*D1+,-|b./012b3b45670809LLn:;<=>?@ABXCDEFGHIJ!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$ !,7BMXcny%,7AKV`jt~!)17@HPX`fnv|}                                                                                            W   __  !"#$W%&'()* +, _-./012_346789:; <= >? @ABC DEFGHIWJKLMWNO_PQRS TUVW_XYZ[\]^__`a  bcde fg hi jk _lm_no pqst uv wxyz {|}~ ___  _   !"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$* $)-47;?CO[^`hwz %4CPU[go~ $/6IRUWXkt} +5>ENV^gqx&,9:@HS^iou0BXho $6LSW^bx&<Rdz&<Rh~                                                                                                                                                                                                                                                                                                                                                                                                !!""##$$%%&&''(())** ++ ,, -- .. //00112233445566778899::;; << == >>??@@AABBCCDDEEFFGG HH II JJ KK LLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] @-   5 @   !"# $%&'()(*+@,--./01234567889:;5<=>? @A5BC@DEFGHI JKDLM NO-PQDRS TU@VW XY Z[\]n^_`anbc@defghijkTlm$nobpqPrstuvwxy$z{ !"@|}#$%P~&P'()@*+,-./0P123456  505-D @-Dnn$@ @   H($@ H(H  @0@        !"#$ %& '()* +,-./0 1234156 7819: ;<1=>?@AB1CDDEF`GH>IJ !7KL MN OP"#$QR7ST$bUV%&`WXXYZ'L[\( ]^) _`abcdef*Lghij7kl+`mn`op,nqr-./0123,st4567nuvwx89:Lyz|{|b}~;<=>?@ABCDEFGHIJKL!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$*!"#$!"#$!"#$*!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$*!"#$!"#$!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$*!"#$ !)17=CIOU]ciosuw{}     H@@  ,@ @`0 !"#$% H'()*@+,-.                       (,5COSlpt&:JSZn| 0>GKOSUl !0<Zu,<Pdv,;M\dx6MQhqy%9CHM^bpq&),=Si # A V h  . C X g x  & / : C V i ~  *                                                                                      $# $ ' #&! '$# '$ !& #$" % $" %  " % # # #'$! &    #'$ !  #!' $  '$ # !" % $ # &!  $ '#  !! &#$!&  #$ &  !#'$   $" % $'&!#  $ ' #&!   $#&' !  $'# & !  &! #$'  & ! #$ $'#  !$' # !$'  #'  $# '$! &  #$' &!  #$' '  $ ' $# '$ !# " %"  %"$" % ' #" $ %"#$ &'!  #' $  % $" % "$'$  % $"% "#'$  ! $#'$  !'$  #! '  $ %  "$ '$$'  # ' $# '$'#$   !#'$   !# '$  #! % " %"  % "$ %""%   "% "%  "  %" % ' "$ '$  % $" "!# '#! "& "!#  #& '!#"  $#!!#  $    $  #"!&  ' " #!&& #"!   $  $%#"'  ! (&& !" '%# ( '%"# ! ( &  $ $    '# & "! & !"'#   " !'%#& ( #!!# "% '(! # $ $" !' ( %&# %&"' #! (&  %'"#! ( %#' " ( & ! %&#"' ! ( ('   "%!#$   %'"  # (!& %'"  #!(&"% '( !#&& "!#  &" %'#! (  (% "# ( % # ( % "# ( %#'%" !(#  ' "% (!#  %# ( % # $  % ' " (!#&%"'  (!#&" %' (! #&(   %# ( % # ( %# ( % #$   $ $   $  $   $    ( ' %!"# ( ' %!"# ( %# ( %# $  $ $ (  % #$   $    $   ( %# (% #    !!""##$$%%&&'' (( )) ** ++ ,,--..//00112233445566778899::;;<<==>> ??!@@"AA#BB$CC%DD&EE'FFGGHHIIJJKKLLMMNNOO PP QQ RR SS TTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeff gg!hh"ii#jj$kk%ll&mm'nn(oo  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop `  5 - !"r#$%&'()*+, r-. /0$12  34r56789:@;< =>r?@ABrCDEFGH !"#$JKLMNO PQRSTUVW@XYZ[`\]^_-`abcde5fghijklm5no@pqrs`tu vw xyz{|}r~ rPP    D `rrrr  b@PP$ !"#r$%&'() @$*+,-./012@ rr345678 9@:;<=P>?@@@ABrCDEFGHIJKLMNOPQRST @`5  @   5 -rP`  !"-#$r%&r'( )*+, D-. /01283456789:r;<=>?@bABCD EFGHrIJrKL MN OP QR(ST @UV WX YZ!r[\"]^_`ab#$%rcdefrgh&rijPklPmn'( opqrst)*+,-./01ruv2wx3@yz@{|P}~45678@9:;<=>?@ABCDr (rEFGHrrIJKLM NOP!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ )-6J^q &-26GSV_st|*=L[pz},AK^q~ )5:=FHIP\ajs|+89@Pdqr#*9FUds}                                                                                                                                                                                                                                                                                                          !! "" ## $$ %% &&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA BB CC DD EE FFGGHHIIJJKKLLMMNNOOPPQQRRSS  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRST@5 `  -r     !" r#$  %&('()*r+,-.@/012r346789:;<=@>?@A@BC5DE`FGHI-JK`LMNOPQRS5TU VW XYZ[ \] r^_`a bc de fg hiDjklm no pqrrsrtuvwbxy@z{|}0~ (PPr( !"#rP$%&'()rrrr*@@+,-./@@ 0123456789:;<@@5`5`-r -r r   D  b0 (  (r  @    !@"r r@@#$%&'()*+,-./01234 56789!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ splitsK_.E\s+BYp(?Vm%<Sj "9Pg~6Md{3Jax0G^u-D[r * A X o  ' > U l $ ; R i ! 8 O f }   5 L c z 2I`w/F]t,CZq)@Wn&=Tk #:Qh  7Ne|4Kby1H_v.E\s+BYp(?Vm+=Oas'9K]o#5GYk} 1CUgy -?Qcu);M_q  % 7 I [ m  !!!3!E!W!i!{!!!!!!!! ""/"A"S"e"w""""""""##+#=#O#a#s########$$'$9$K$]$o$$$$$$$$$%#%5%G%Y%k%}%%%%%%%% &&1&C&U&g&y&&&&&&&& ''-'?'Q'c'u''''''''(()(;(M(_(q(((((((())%)7)I)[)m)))))))))*!*3*E*W*i*{******** ++/+A+S+e+w++++++++,,+,     !! "" ##$$%%&&''  !"#$%&'(9                                                                                   #25:?EJORcp#08<IUiq)@BGINbf{/5BKTdy} (3?ISZcs~ "(29AI[ou'9?KRTgk}                                                                                                                                                                                                                                                                                   !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<< == >> ?? @@ AABBCCDDEEFFGGHHIIJJKKLLMMNN  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO(    $ $` !"5#$%&@'()*+, -./012 3456@78-9: ;<>?@A(BCDEFGrHIpJKLMNO PQRS`TU@VW`XYZ[5\]^_`a$bc`de8fghijkPlmno@pqrs tu@vw xy z{P|} ~P@    p- ` !"#$5%&  '()*+,-./0123456789@:;<$=>@?@ABP @ 5$`8-P@P-@   5      $` p:@ @ !!"#$"#$%&>%&X'()*'()* +,+, -.-b/0./12012334456@56789: !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !+6@KOXbktw +:JXgw +6;GMTbiq| )5DS\hu                                                                                                                                                                                                                                                               !!""##$$%%&& '' (( )) ** ++,,--  !"#$%&'()*+,-.   _ _    !" #$%& '( )*S+,./ 012345 67 89 :;<=>?@ABCWDEFG_HI_JKLM_NOPQRSTU_VW XY Z[\] ^_ `abcde _fg  hi jklmno_pq_rstuvwSxyz{S|}S~ !"#$%&'() WW __ _W          !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$*!"#$*!"#$*!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ !&)/8?IRW\_eqrt !$089:HR[iop|}  $-<EKLU_fjkmrz{} #(*05                                                                                                                                                              !!""##$$%%&&''(())**++ ,, -- .. // 00  !"#$%&'()*+,-./01@5 `  - $ @ !"#0$%&'@()*+,-5./`01234567898:;-<=>?@ABC5DE@FG@HIJKLM(NOPQRS TU-VW PXYZ[@\]@^_`abcde `fg hi$jklmnopqrs tuvwxy@z{P|} !"~#$ %& '()*+,@-./0P1$2345678@9:`5-`-5   :  $ > $@b@ !"#!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$!"#$ %+17=@CFILO 0, @  @ H@                8 И(00 П6666666@@8666hX660ȔȘ....*****''''':%''''****'*opset_ptr->getHeurFeatures(f64)fv[HEUR_FV_MODE] < 0nullptr == transformDescsrcDesc->nbDims > 8(deviceVer < 800)!isTensor_valid(srcDesc)!isTensor_valid(destDesc)srcDesc->nbDims < 2!is_both_booleandestDesc->strideA[1] != 1srcDesc->strideA[1] != 1is_bf16 && is_half(direction != CUDNN_TRANSFORM_FOLD) && (direction != CUDNN_TRANSFORM_UNFOLD)(nbDims > 8) || (destFormat > CUDNN_TENSOR_NCHW_VECT_C)(transformDesc == nullptr) || (srcDesc == nullptr) || (destDesc == nullptr)doFold && (srcDesc->nbDims != 4) && (isTensorNCHW_fullypacked(srcDesc) || isTensorNHWC_fullypacked(srcDesc)) == falsetransFormatToStrideOrder(transformDesc->destFormat, destDesc->nbDims - 2, &destOrder) == false(nullptr == handle) || (nullptr == transDesc) || (nullptr == srcDesc) || (nullptr == destDesc) || (nullptr == srcData) || (nullptr == destData) || (nullptr == alpha) || (nullptr == beta)srcDesc->nbDims != destDesc->nbDims!isTensorSameDims(srcDesc, destDesc)isValidDataType(srcDesc->dataType) == falseisValidDataType(destDesc->dataType) == falsestd::find(std::begin(supported_types), std::end(supported_types), srcDesc->dataType) == std::end(supported_types)transDesc->layout == DIM_1_IS_G!isTensorNCHW_fullypacked(srcDesc)!isTensorNHWC_fullypacked(destDesc)div_up(outputSize, BLOCK_DIM_X) > ctx->deviceProp.maxGridSize[0]isTensorSameDims(srcDesc, destDesc) == false!isTensorNHWC_fullypacked(srcDesc)!isTensorNCHW_fullypacked(destDesc)Encountered a boolean transpose case that is not supported.std::find(std::begin(supported_types), std::end(supported_types), destDesc->dataType) == std::end(supported_types)is_bf16 && !hardware_bfloat16_supported(handle)(srcDesc->vect != CUDNN_VECT_NONE) || (destDesc->vect != CUDNN_VECT_NONE)isDataTypeVectorized(srcDesc->dataType) || isDataTypeVectorized(destDesc->dataType)destDesc->dimA[dim] > 1 && destDesc->strideA[dim] != destDesc->strideA[dim + 1] * destDesc->dimA[dim + 1]destDesc->strideA[0] < max_stride_spatialdiv_up(dhw, 32) > ctx->deviceProp.maxGridSize[0]div_up(srcDesc->dimA[1], 32) > ctx->deviceProp.maxGridSize[1]srcDesc->dimA[0] > ctx->deviceProp.maxGridSize[2]srcDesc->dimA[dim] > 1 && srcDesc->strideA[dim] != srcDesc->strideA[dim + 1] * srcDesc->dimA[dim + 1]srcDesc->strideA[0] < max_stride_spatialZƴƴƴxƴlƴQƴHƴ?ƴ6ƴ-ƴ$ƴƴƴ ƴƴŴcƴ  !cudnn::ops::isValidGrid(handle, grid)(in_idx >= genericTranspose_f.size()) || (out_idx >= genericTranspose_f[0].size())_ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16S2_fLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16S2_fLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16S2_fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat166__halffLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat166__halffLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat166__halffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16ffLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16ffLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI13__nv_bfloat16ffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI6__half13__nv_bfloat16fLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI6__half13__nv_bfloat16fLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__half13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI6__halfS2_fLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI6__halfS2_fLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfS2_fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI6__halfffLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI6__halfffLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelI6__halfffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelIf13__nv_bfloat16fLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelIf13__nv_bfloat16fLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelIf6__halffLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelIf6__halffLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIf6__halffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelIfffLb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelIfffLb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nchwToNhwcKernelIfffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nchw2nhwc_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled25nchw2nhwcBooleanTransposeENS0_18nchw2nhwc_params_tIfEEPKhPh_ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat166__halffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16ffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__half13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfS2_fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI6__halfffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf13__nv_bfloat16fLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIf6__halffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb1ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb1ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb1ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb1ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb0ELb1EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb0ELb1EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb0ELb0EL21cudnnKernelDataType_t2EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelIfffLb0ELb0EL21cudnnKernelDataType_t0EEEvNS0_18nhwc2nchw_params_tIT1_EEPKT_PT0__ZN5cudnn24engines_runtime_compiled25nhwc2nchwBooleanTransposeENS0_18nhwc2nchw_params_tIfEEPKhPh_ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16S2_fLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16S2_fLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16S2_fLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16S2_fLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat166__halffLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat166__halffLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat166__halffLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat166__halffLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16ffLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16ffLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16ffLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16ffLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__half13__nv_bfloat16fLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__half13__nv_bfloat16fLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__half13__nv_bfloat16fLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__half13__nv_bfloat16fLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S5_S6_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfS2_fLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfS2_fLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfS2_fLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfS2_fLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfffLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfffLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfffLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI6__halfffLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf13__nv_bfloat16fLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf13__nv_bfloat16fLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf13__nv_bfloat16fLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf13__nv_bfloat16fLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf6__halffLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf6__halffLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf6__halffLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIf6__halffLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S4_S5_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIfffLb1EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S3_S4_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIfffLb1EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S3_S4_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIfffLb0EL21cudnnKernelDataType_t2EEEvT1_17cudnnTensorStructPKT_S3_S4_PT0__ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIfffLb0EL21cudnnKernelDataType_t0EEEvT1_17cudnnTensorStructPKT_S3_S4_PT0__ZN9fmha_cw_16hopper5fprop26fmha_fprop_fp8_sm90_kernelILb0EEEvNS1_17Fmha_fprop_paramsE_ZN9fmha_cw_16hopper5fprop26fmha_fprop_fp8_sm90_kernelILb1EEEvNS1_17Fmha_fprop_paramsE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo5beginE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo3endE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo6cbeginE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo4cendE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo6rbeginE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo4rendE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo7crbeginE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__45__cpo5crendE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std3__419piecewise_constructE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo4swapE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo9iter_moveE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo5beginE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo3endE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo6cbeginE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo4cendE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo7advanceE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo9iter_swapE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo4nextE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo4prevE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo4dataE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo5cdataE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo4sizeE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo5ssizeE_ZN57_INTERNAL_7f95284a_26_fmha_fprop_fp8_512_sm90_cu_687510a44cuda3std6ranges3__45__cpo8distanceE_ZN9fmha_cw_16hopper5dgrad26fmha_dgrad_fp8_sm90_kernelINS0_19Kernel_traits_dgradINS_28Hopper_qgmma_fp8_fp32_traitsILi64ELi64ELi32ELb0ELb0E13__nv_fp8_e4m3S5_S5_EES6_S6_NS4_ILi64ELi64ELi32ELb1ELb0E13__nv_fp8_e5m2S5_S5_EES8_NS4_ILi64ELi64ELi32ELb1ELb0ES5_S5_S5_EELj512ELj64ELj64ELj64ELj4ELj1ELj40EEEEEvNS1_17Fmha_dgrad_paramsE_ZN9fmha_cw_16hopper5dgrad26fmha_dgrad_fp8_sm90_kernelINS0_19Kernel_traits_dgradINS_28Hopper_qgmma_fp8_fp32_traitsILi64ELi64ELi32ELb0ELb0E13__nv_fp8_e4m3S5_S5_EENS4_ILi64ELi64ELi32ELb0ELb0E13__nv_fp8_e5m2S5_S7_EES8_NS4_ILi64ELi64ELi32ELb1ELb0ES7_S5_S7_EES9_NS4_ILi64ELi64ELi32ELb1ELb0ES5_S7_S7_EELj512ELj64ELj64ELj64ELj4ELj1ELj40EEEEEvNS1_17Fmha_dgrad_paramsE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo5beginE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo3endE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo6cbeginE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo4cendE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo6rbeginE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo4rendE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo7crbeginE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__45__cpo5crendE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std3__419piecewise_constructE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo4swapE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo9iter_moveE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo5beginE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo3endE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo6cbeginE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo4cendE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo7advanceE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo9iter_swapE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo4nextE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo4prevE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo4dataE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo5cdataE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo4sizeE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo5ssizeE_ZN57_INTERNAL_e7a788ba_26_fmha_dgrad_fp8_512_sm90_cu_b8e0a2b74cuda3std6ranges3__45__cpo8distanceEfmha_fprop_fp8_bsh3d_S_64_sm90_training_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_training_causal_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_training_nl_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_training_causal_nl_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_causal_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_nl_kernelfmha_fprop_fp8_bsh3d_S_64_sm90_causal_nl_kernel_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo5beginE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo3endE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo6cbeginE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo4cendE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo6rbeginE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo4rendE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo7crbeginE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__45__cpo5crendE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std3__419piecewise_constructE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo4swapE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo9iter_moveE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo5beginE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo3endE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo6cbeginE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo4cendE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo7advanceE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo9iter_swapE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo4nextE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo4prevE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo4dataE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo5cdataE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo4sizeE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo5ssizeE_ZN64_INTERNAL_09571ed2_33_fmha_fprop_fp8_bs3hd_S_64_sm90_cu_f055b6974cuda3std6ranges3__45__cpo8distanceEfmha_dgrad_fp8_bs3hd_e5m2_512_64_sm90_kernelfmha_dgrad_fp8_bs3hd_e5m2_512_64_sm90_nl_kernelfmha_dgrad_fp8_bs3hd_e5m2_512_64_sm90_causal_kernelfmha_dgrad_fp8_bs3hd_e5m2_512_64_sm90_causal_nl_kernelfmha_dgrad_fp8_bs3hd_512_64_sm90_kernelfmha_dgrad_fp8_bs3hd_512_64_sm90_nl_kernelfmha_dgrad_fp8_bs3hd_512_64_sm90_causal_kernelfmha_dgrad_fp8_bs3hd_512_64_sm90_causal_nl_kernel_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo5beginE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo3endE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo6cbeginE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo4cendE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo6rbeginE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo4rendE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo7crbeginE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__45__cpo5crendE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std3__419piecewise_constructE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo4swapE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo9iter_moveE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo5beginE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo3endE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo6cbeginE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo4cendE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo7advanceE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo9iter_swapE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo4nextE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo4prevE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo4dataE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo5cdataE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo4sizeE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo5ssizeE_ZN66_INTERNAL_0fff0e55_35_fmha_dgrad_fp8_bs3hd_512_64_sm90_cu_449b6e214cuda3std6ranges3__45__cpo8distanceE_ZN5cudnn6fusion9matmul_dqILb0ELi128EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_bS4_S4__ZN5cudnn6fusion9matmul_dqILb0ELi64EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_bS4_S4__ZN5cudnn6fusion9matmul_dqILb1ELi128EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_bS4_S4__ZN5cudnn6fusion9matmul_dqILb1ELi64EEEvPKvS3_PvjjjjjjjjjjjjjjbS4_S4_bS4_S4__ZN5cudnn6fusion20compute_dot_do_o_fp8ILb0ELb0EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion32compute_dot_do_o_fp8_specializedILb0ELb0ELi128EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion20compute_dot_do_o_fp8ILb0ELb1EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion32compute_dot_do_o_fp8_specializedILb0ELb1ELi128EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion20compute_dot_do_o_fp8ILb1ELb0EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion32compute_dot_do_o_fp8_specializedILb1ELb0ELi128EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion20compute_dot_do_o_fp8ILb1ELb1EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion32compute_dot_do_o_fp8_specializedILb1ELb1ELi128EEEvPKvS3_PvjjjjjjjjjjPKfS6__ZN5cudnn6fusion25convert_dq_to_8bits_sm100ILb0EEEvPKvPvjjjjjjjjjjPKfS6_S6_PfS4_S4_bS3__ZN5cudnn6fusion19convert_dq_to_8bitsILb0EEEvPKvPvjjjjjjjjjjPKfS6_S6_Pf_ZN5cudnn6fusion25convert_dq_to_8bits_sm100ILb1EEEvPKvPvjjjjjjjjjjPKfS6_S6_PfS4_S4_bS3__ZN5cudnn6fusion19convert_dq_to_8bitsILb1EEEvPKvPvjjjjjjjjjjPKfS6_S6_Pf_ZN5cudnn6fusion20fmha_reduce_head_fp8ILb0EEEvPKvPvjjjjjjjjjjjPKfS6_S6_Pf_ZN5cudnn6fusion20fmha_reduce_head_fp8ILb1EEEvPKvPvjjjjjjjjjjjPKfS6_S6_Pf_ZN5cudnn6fusion13qkv_tma_setupEjjjjjjPvS1_S1_S1_S1_S1_S1_bjjjjjjjjjjjjjjjjS1_S1_S1_S1_S1_S1_S1_S1_S1_S1_S1_S1_S1_S1_S1_S1_jjjbbcuda_commands.queueLaunchKernel(symbol, grid, block, smem_size, input_ptr, output_ptr, b_dim, h_dim, s_q_dim, s_kv_quantized_dim, d_dim, workspace_tiles, window_tiles, lower_bandwidth, contract_band_size, length_of_workspace, stride_b, stride_h, stride_s_q, stride_w, batch_offset_dbias_ptr, actual_seq_length_qo_ptr, actual_seq_length_kv_ptr, is_ragged_offset_int64, max_token)cuda_commands.queueMemsetAsync(output_ptr, 0, b_dim * h_dim * s_q_dim * contract_band_size * 2)cuda_commands.queueLaunchKernel(init_packed_dbias, grid, block, 0, output_ptr, batch_offset_dbias_ptr, actual_seq_length_qo_ptr, contract_band_size, s_q_dim, stride_h, stride_s_q, stride_w, is_ragged_offset_int64)cuda_commands.queueLaunchKernel(contract_dbias_v1, grid, block, 0, input_ptr, output_ptr, b_dim, h_dim, s_q_dim, s_kv_quantized_dim, d_dim, s_q_tiles, lower_bandwidth, contract_band_size, length_of_workspace, stride_b, stride_h, stride_s_q, stride_w, batch_offset_dbias_ptr, actual_seq_length_qo_ptr, actual_seq_length_kv_ptr, is_ragged_offset_int64)_ZN5cudnn6fusion14contract_dbiasILi16EEEvPvS2_jjjjjiiiiijjjjS2_S2_S2_bl_ZN5cudnn6fusion21contract_dbias_raggedILi16EEEvPvS2_jjjjjiiiiijjjjS2_S2_S2_bl_ZN5cudnn6fusion17init_packed_dbiasEPvS1_S1_ijjjjb_ZN5cudnn6fusion17contract_dbias_v1EPvS1_jjjjjiiiijjjjS1_S1_S1_b_ZN5cudnn6fusion18lean_reduction_fp8ILb0EEEvPvPfS3_S3_S3_jjjjjjjjjjjjb_ZN5cudnn6fusion18lean_reduction_fp8ILb1EEEvPvPfS3_S3_S3_jjjjjjjjjjjjbvector::_M_range_check: __n (which is %zu) >= this->size() (which is %zu)fort::softPlusBwd({a}, {b}, {c})fort::geluApproxTanhBwd({a}, {b})fort::reluBwd_Generic(typeConvert({x}[i]), typeConvert({dL_by_dy}[i]), {upper_clip}, {lower_clip}, {alpha_beta})fort::reluBwd_Simple(typeConvert({x}[i]), typeConvert({dL_by_dy}[i]))fort::reluFwd_LoClip(typeConvert({x}[i]), {lower_clip})fort::reluFwd_LoClipHiClip(typeConvert({x}[i]), {lower_clip}, {upper_clip})fort::reluFwd_LoClip_Sloped(typeConvert({x}[i]), {lower_clip}, {alpha_beta})fort::reluFwd_LoClipHiClip_Sloped(typeConvert({x}[i]), {lower_clip}, {upper_clip}, {alpha_beta}) {y}[i] = typeConvert<{output_0_data_type}>( {dL_by_dx}[i] = typeConvert<{output_0_data_type}>( cutlass::Array<{datatype}, {array_size}> array_{guid}_0{num_fragments}; for (int i = 0; i < {array_size}; i++) {{{a}fort::eluFwd({a}, {b})fort::geluFwd({a})fort::sigmoidFwd({a})fort::softPlusFwd({a}, {b})fort::swishFwd({a}, {b})fort::tanhFwd({a})fort::geluApproxTanhFwd ({a})fort::eluBwd({a}, {b}, {c})fort::geluBwd({a}, {b})fort::sigmoidBwd({a}, {b})fort::swishBwd({a}, {b}, {c})fort::tanhBwd({a}, {b})[(warp_mma_k + 1) % 2][0].kElementsarray_{}_{}{}); alphaalpha_betaoutput_0_data_typedL_by_dxdL_by_dy // activate {guid} logic array_sizenum_fragmentsactivation {activation} }} relu_lower_cliprelu_upper_clipinput_broadcast_patternoutput_broadcast_patternis_k_independentMTMLDKK|JJIDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDH({dL_by_dy}[i] // Activate_op {guid} decls Fragment_type_{guid} reg_{guid}_{port}{num_buffers}; // activate_op {guid} types using Fragment_type_{guid} = xmma::Fragment<{data_type}, {num_elts}>;fort::reluBwd_Generic(typeConvert<{compute_data_type}>({x}[ii].elt(i)), typeConvert<{compute_data_type}>({dL_by_dy}[ii].elt(i)), {upper_clip}, {lower_clip}, {alpha_beta})fort::reluBwd_Simple(typeConvert<{compute_data_type}>({x}[ii].elt(i)), typeConvert<{compute_data_type}>({dL_by_dy}[ii].elt(i)))typeConvert<{output_data_type}>(fort::reluFwd_LoClip(typeConvert<{compute_data_type}>({x}[ii].elt(i)), {lower_clip})fort::reluFwd_LoClipHiClip(typeConvert<{compute_data_type}>({x}[ii].elt(i)), {lower_clip}, {upper_clip})fort::reluFwd_LoClip_Sloped(typeConvert<{compute_data_type}>({x}[ii].elt(i)), {lower_clip}, {alpha_beta})fort::reluFwd_LoClipHiClip_Sloped(typeConvert<{compute_data_type}>({x}[ii].elt(i)), {lower_clip}, {upper_clip}, {alpha_beta}) // activate_op {guid} logic #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; ++i) {{ {output}[ii].elt(i) = {rhs_operator}; }} }} // activate_op {guid} logic #pragma unroll for (int ii = 0; ii < XMMAS_M; ii++) {{ #pragma unroll for (int i = 0; i < Fragment_type_{frag_num}::NUM_ELTS; ++i) {{ {output}[ii].elt(i) = {rhs_operator}; }} }}[{}][XMMAS_M]num_buffersNUM_ELTS_{}Fragment_type_{}::NUM_ELTSnum_elts[ki + 1][ki_next][0&1][ki&1]reg_{}_{}{}%f) output_data_typecompute_data_typeparent_idrhs_operatorfrag_numҶ$ӶӶ$ҶԶdն ֶֶ,׶$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ$Ҷ׶Tض$ҶٶLڶ$۶ضDԶ{8Fq-typeConvert<{compute_data_type}>({x}[ii].elt(i))({dL_by_dy}[ii].input_guid // Sigmoid op {guid} logic uint2 out_{guid}[Kernel_traits::Gmem_tile_o::STGS_PER_LOOP]; #pragma unroll for (int i = 0; i < Kernel_traits::Gmem_tile_o::STGS_PER_LOOP; i++) {{ // Sigmoid the gate input out_{guid}[i] = fmha::sigmoid4(out_{input_guid}[i]); }}cutlass::epilogue::threadblock::DefaultThreadMap{is_volta}TensorOpcutlass::epilogue::threadblock::OutputTileWarpRakedThreadMapoutput_loop_output_0_data_type // batch norm {guid} decls using OutputTileThreadMap = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}, {threadblock_shape_N}, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, {partitions_k}, {output_loop_output_0_data_type}, {elements_per_access} {element_output} >::Type; using OutputTileIterator = cutlass::epilogue::threadblock::PredicatedTileIterator< OutputTileThreadMap, {output_loop_output_0_data_type} >; int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; cutlass::Array<{compute_data_type}, kColumnCount_{guid}> {sums_array_name}; cutlass::Array<{compute_data_type}, kColumnCount_{guid}> {squares_array_name}; CUTLASS_PRAGMA_UNROLL for(int i=0; i<{sums_array_name}.kElements; i++) {{ {sums_array_name}[i] = ({compute_data_type})0.0; {squares_array_name}[i] = ({compute_data_type})0.0; }}{input_1_array_name}[{register_budget}] // batch norm {guid} logic if (warp_mma_k + 1 == MmaBase::kWarpGemmIterations) batch_norm_transform({input_0_array_name}[(warp_mma_k + 1) % 2], {scale_bias_buf}); // batch norm {guid} logic if (warp_mma_k > 0) batch_norm_transform({input_0_array_name}[warp_mma_k % 2], {scale_bias_buf}); // batch norm {guid} logic batch_norm_transform({input_0_array_name}[0], {scale_bias_buf}); cutlass::Array<{output_0_data_type}, {input_0_array_name}.kElements> {array_name}; // batch norm {guid} logic{array_decl} cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); int iter_start_row = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; CUTLASS_PRAGMA_UNROLL for (int column = 0; column < kColumnCount_{guid}; ++column) {{ // // Add the batch norm here after scaling the accumulators. // if ((thread_offset.column() + OutputTileThreadMap::Delta::kColumn * (column/OutputTileThreadMap::kElementsPerAccess) < {problem_descriptor}[1]) && (thread_offset.row() + iter_start_row + row_offset < {problem_descriptor}[0])) {array_name}[(group * OutputTileThreadMap::Iterations::kRow + row) * kColumnCount_{guid} + column] = ({input_0_array_name}[(group * OutputTileThreadMap::Iterations::kRow + row) * kColumnCount_{guid} + column] + ({compute_data_type}){sums_array_name}[column]) * ({compute_data_type}){squares_array_name}[column]; }} }} }} // batch norm {guid} logic {{ cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); int iter_start_row = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; CUTLASS_PRAGMA_UNROLL for (int column = 0; column < kColumnCount_{guid}; ++column) {{ // // Add the batch norm here after scaling the accumulators. // if ((thread_offset.column() + OutputTileThreadMap::Delta::kColumn * (column/OutputTileThreadMap::kElementsPerAccess) < {problem_descriptor}[1]) && (thread_offset.row() + iter_start_row + row_offset < {problem_descriptor}[0])){{ {sums_array_name}[column] = {sums_array_name}[column] + ({compute_data_type}){input_0_array_name}[(group * OutputTileThreadMap::Iterations::kRow + row) * kColumnCount_{guid} + column]; {squares_array_name}[column] = {squares_array_name}[column] + (({compute_data_type}){input_0_array_name}[(group * OutputTileThreadMap::Iterations::kRow + row) * kColumnCount_{guid} + column] * ({compute_data_type}){input_0_array_name}[(group * OutputTileThreadMap::Iterations::kRow + row) * kColumnCount_{guid} + column]); }} }} }} }} }} // batch norm {guid} scope {{ // batch norm {guid} logic {compute_data_type}* shared_{guid} = ({compute_data_type}*)shared_{shared_id}; // Compute the thread offset cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int shared_row = threadIdx.x / (OutputTileThreadMap::Delta::kColumn / OutputTileThreadMap::kElementsPerAccess); int sums_smem_offset = shared_row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn; int squares_smem_offset = (blockDim.x / (OutputTileThreadMap::Delta::kColumn / OutputTileThreadMap::kElementsPerAccess)) * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int c = 0; c < OutputTileThreadMap::Iterations::kColumn; ++c) {{ int k_start = thread_offset.column() + OutputTileThreadMap::Delta::kColumn * c - {threadblock_shape_N} * blockIdx.y; CUTLASS_PRAGMA_UNROLL for (int k = 0; k < OutputTileThreadMap::kElementsPerAccess; ++k) {{ if (k_start + k < {problem_descriptor}[1] - {threadblock_shape_N} * blockIdx.y) {{ shared_{guid}[sums_smem_offset + k_start + k] = ({compute_data_type}){sums_array_name}[c * OutputTileThreadMap::kElementsPerAccess + k]; shared_{guid}[sums_smem_offset + squares_smem_offset + k_start + k] = ({compute_data_type}){squares_array_name}[c * OutputTileThreadMap::kElementsPerAccess + k]; }} }} }} __syncthreads(); int num_column_sets = ({threadblock_shape_N} + blockDim.x - 1)/blockDim.x; for (int column_set = 0; column_set < num_column_sets; column_set++) {{ {sums_array_name}[column_set] = ({compute_data_type})0; {squares_array_name}[column_set] = ({compute_data_type})0; if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ for (int index = 0; index < blockDim.x / (OutputTileThreadMap::Delta::kColumn / OutputTileThreadMap::kElementsPerAccess); index++) {{ {sums_array_name}[column_set] += ({compute_data_type})shared_{guid}[(column_set*blockDim.x + threadIdx.x) + index * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn]; {squares_array_name}[column_set] += ({compute_data_type})shared_{guid}[squares_smem_offset + (column_set*blockDim.x + threadIdx.x) + index * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn]; }} }} }} // batch norm {guid} logic }output_loopmma_pipelineVoltasums_array_{guid}_{port}squares_array_{guid}_{port}is_voltathread_mapelement_outputelements_per_accessthreadblock_shape_Mthreadblock_shape_Nthreadblock_shape_Kwarp_shape_Kpartitions_ksums_array_namesquares_array_name(warp_mma_k + 1) % 2warp_mma_k % 2input_1_array_nameregister_budgetinput_0_array_namescale_bias_buf{input_1_array_name}[0]13batch_norm_opwarp_transformedwarp_loaded_frag // batch norm {guid} decls {compute_data_type} {sums_array_name} = ({compute_data_type})0.0; {compute_data_type} {squares_array_name} = ({compute_data_type})0.0; // batch norm {guid} logic {{ {sums_array_name} = {sums_array_name} + {input_0_array_name}[0]; {squares_array_name} = {squares_array_name} + ({input_0_array_name}[0] * {input_0_array_name}[0]); }} // batch norm {guid} scope {{ // batch norm {guid} logichfma2_relu({a}, {b}, {c}, 0u, 0u) // column reduce {guid} decls using OutputTileThreadMap = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}, {threadblock_shape_N}, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, {partitions_k}, {output_loop_output_0_data_type}, {elements_per_access} {element_output} >::Type; using OutputTileIterator = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< OutputTileThreadMap, {output_loop_output_0_data_type} >; int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; cutlass::Array<{compute_data_type}, kColumnCount_{guid}> {sums_array_name}; CUTLASS_PRAGMA_UNROLL for(int i=0; i<{sums_array_name}.kElements; i++) {{ {sums_array_name}[i] = ({compute_data_type}){default_value}; }} // column reduce strided dgrad {guid} decls int tiled_rows_per_filter = {threadblock_shape_M} * tile_m_per_filter; int start_h_, start_w_; int p_, q_; strided_dgrad_starting_coords(convolution_size, stride_h_divmod, stride_w_divmod, start_r, start_s, start_h_, start_w_); p_ = (convolution_size.H - start_h_ + convolution_size.stride_h - 1) / convolution_size.stride_h; q_ = (convolution_size.W - start_w_ + convolution_size.stride_w - 1) / convolution_size.stride_w; // remapping rows to find the mapped_row_offset for strided dgrad int npq_offset = curr_row % tiled_rows_per_filter; int n = npq_offset / (p_ * q_); int residual = npq_offset % (p_ * q_); int p = residual / q_; int q = residual % q_; curr_row = n * (convolution_size.H * convolution_size.W) + (start_h_ + p * convolution_size.stride_h) * convolution_size.W + (start_w_ + q * convolution_size.stride_w);(group * OutputTileThreadMap::Iterations::kRow + row) * kColumnCount_{guid} + column // column reduce {guid} logic {{ cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); int iter_start_row = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; int curr_row = thread_offset.row() + iter_start_row + row_offset; {mapped_row_strided_dgrad} CUTLASS_PRAGMA_UNROLL for (int column = 0; column < kColumnCount_{guid}; ++column) {{ // // Add the column reduce here after scaling the accumulators. // if ((thread_offset.column() + OutputTileThreadMap::Delta::kColumn * (column/OutputTileThreadMap::kElementsPerAccess) < {problem_descriptor}[1]) && (curr_row < {problem_descriptor}[0])) {sums_array_name}[column] = {sums_array_name}[column_set] += ({compute_data_type})shared_{guid}[(column_set*blockDim.x + threadIdx.x) + index * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn]{sums_array_name}[column_set] += ({compute_data_type})shared_{guid}[squares_smem_offset + (column_set*blockDim.x + threadIdx.x) + index * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn]{sums_array_name}[column_set] = fmaxf({sums_array_name}[column_set], ({compute_data_type})shared_{guid}[(column_set*blockDim.x + threadIdx.x) + index * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn]){sums_array_name}[column_set] = fminf({sums_array_name}[column_set], ({compute_data_type})shared_{guid}[(column_set*blockDim.x + threadIdx.x) + index * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn]) int squares_smem_offset = (blockDim.x / (OutputTileThreadMap::Delta::kColumn / OutputTileThreadMap::kElementsPerAccess)) * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn; // column reduce {guid} scope {{ // column reduce {guid} logic {compute_data_type}* shared_{guid} = ({compute_data_type}*)shared_{shared_id}; // Compute the thread offset cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int shared_row = threadIdx.x / (OutputTileThreadMap::Delta::kColumn / OutputTileThreadMap::kElementsPerAccess); int sums_smem_offset = shared_row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::Delta::kColumn;{decl_squares_smem_offset} __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int c = 0; c < OutputTileThreadMap::Iterations::kColumn; ++c) {{ int k_start = thread_offset.column() + OutputTileThreadMap::Delta::kColumn * c - {threadblock_shape_N} * blockIdx.y; CUTLASS_PRAGMA_UNROLL for (int k = 0; k < OutputTileThreadMap::kElementsPerAccess; ++k) {{ if (k_start + k < {problem_descriptor}[1] - {threadblock_shape_N} * blockIdx.y) {{ shared_{guid}[sums_smem_offset {add_squares_smem_offset}+ k_start + k] = ({compute_data_type}){sums_array_name}[c * OutputTileThreadMap::kElementsPerAccess + k]; }} }} }} __syncthreads(); int num_column_sets = ({threadblock_shape_N} + blockDim.x - 1)/blockDim.x; for (int column_set = 0; column_set < num_column_sets; column_set++) {{ {sums_array_name}[column_set] = ({compute_data_type}){default_value}; if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ for (int index = 0; index < blockDim.x / (OutputTileThreadMap::Delta::kColumn / OutputTileThreadMap::kElementsPerAccess); index++) {{ {operation}; }} }} }}fabsf({a})ceilf({a})__cosf({a})__expf({a})floorf({a})__logf({a})(-({a}))rsqrtf({a})__sinf({a})__tanf({a})!({a})erff({a})__frcp_rn({a}){a} + {b}{a} + {b} * {b}__fdividef({a}, {b})fmaxf({a}, {b})fminf({a}, {b})fmodf({a}, {b}){a} * {b}powf({a}, {b}){a} - {b}fmaxf(fabsf({a}), fabsf({b})){a} == {b}{a} != {b}{a} > {b}{a} >= {b}{a} < {b}{a} <= {b}{a} && {b}{a} || {b}{mask} != 0 ? {a} : {b}atan2({a}, {b})StridedDgrad-__FLT_MAX__default_value; }} }} }} }}compute_typeinput_0_array_idxmapped_row_strided_dgrad+ squares_smem_offsetadd_squares_smem_offsetdecl_squares_smem_offsetis_genstats_mode~5 54'43C32_21{1 105&0/B/555555555555555555555555555555555555555555555555555555555555555555555555555555555555..c-,%,+*F*))i('+'&%L%$$o#"!16column_reduce_op{sums_array_name({compute_type}){input_0_array_name}[{input_0_ar; }} }} }} {ind}// col reduction {_g} types {ind}using Fragment_type_{_g} = xmma::Fragment<{data_type}, NUM_ELTS_{ol_g}>; {ind}Fragment_type_{_g} reg_{_g}_{port}[ITERS_N]{num_stgs}; {ind} reg_{_g}_{port}[ii]{stgs_index}.set_elt({default_value}); {ind}Fragment_type_{_g} reg_sq_sum_{_g}_{port}[ITERS_N]{num_stgs}; {ind} reg_sq_sum_{_g}_{port}[ii]{stgs_index}.set_elt({default_value}); {ind}// col reduction {_g} decls{declaration_code} {ind}#pragma unroll {ind}for(int ii = 0; ii < ITERS_N; ii++) {{ {ind} #pragma unroll {ind} for(int jj = 0; jj < STGS; jj++) {{{initialization_code} {ind} }} {ind}}} {ind}// col reduction {_g} decls{declaration_code} {ind}#pragma unroll {ind}for(int ii = 0; ii < ITERS_N; ii++) {{{initialization_code} {ind}}} {ind}// col reduction {_g} decls {ind}Fragment_type_{_g} reg_{_g}_{port}[Gmem_tile_{ol_g}::STGS]; {ind}#pragma unroll {ind}for(int ii = 0; ii < Gmem_tile_{ol_g}::STGS_PER_ROW; ii++) {{ {ind} reg_{_g}_0[ii].set_elt({default_value}); {ind}}}reg_{_g}_0[ni]{stgs_index}.elt(i)typeConvert<{data_type}>(reg_{input_guid}_0[ii].elt(i)){ind} {lhs} = {rhs_operation};reg_sq_sum_{_g}_0[ni]{stgs_index}.elt(i)typeConvert<{data_type}>(reg_{input_guid}_0[ii].elt(i)) * typeConvert<{data_type}>(reg_{input_guid}_0[ii].elt(i)) {ind} {lhs_sq_sum} = {rhs_sq_sum_operation}; {ind}// col reduction {_g} logic {ind}#pragma unroll {ind}for( int ii = 0; ii < STGS; ++ii ) {{ {ind} if(mask_{ol_g}[ii] >= 0) {{ {ind} #pragma unroll {ind} for(int i = 0; i < Fragment_type_{_g}::NUM_ELTS; i++) {{ {reduction_code} {ind} }} {ind} }} {ind}}} ol_g[STGS][jj]1.0fnum_stgsstgs_indexdeclaration_codeinitialization_codelhsrhs_operationlhs_sq_sumrhs_sq_sum_operation ϊ^퉷| )Gֆe@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@cĂ%瀷H k~}-}|{N{zzqyxxwpad_hpad_wsplit_k_slicespad_dstride_ddilation_d const cutlass::conv::Conv2dProblemSize convolution_size = cutlass::conv::Conv2dProblemSize( {{ {N}, {H}, {W}, {C} }}, {{ {K}, {R}, {S}, {C} }}, {{ {pad_h}, {pad_h}, {pad_w}, {pad_w} }}, {{ {stride_h}, {stride_w} }}, {{ {dilation_h}, {dilation_w} }}, {{ {N}, {P}, {Q}, {K} }}, cutlass::conv::Mode::kCrossCorrelation, {split_k_slices}, {groups} ); const cutlass::conv::Conv3dProblemSize convolution_size = cutlass::conv::Conv3dProblemSize( {{ {N}, {H}, {W}, {D}, {C} }}, {{ {K}, {R}, {S}, {T}, {C} }}, cutlass::make_Coord({pad_h}, {pad_w}, {pad_d}), cutlass::make_Coord({stride_h}, {stride_w} , {stride_d}), cutlass::make_Coord({dilation_h}, {dilation_w} , {dilation_d}), {{ {N}, {P}, {Q}, {Z}, {K} }}, cutlass::conv::Mode::kCrossCorrelation, {split_k_slices}, {groups} ); cutlass::conv::Conv2dProblemSize convolution_size = {descriptor}; cutlass::conv::Conv3dProblemSize convolution_size = {descriptor}; int number_of_actual_pixels = 1; {compute_data_type} scaling_factor = typeConvert<{compute_data_type}>(1.0f)/typeConvert<{compute_data_type}>(number_of_actual_pixels); number_of_actual_pixels *= cutlass::platform::min(output_tensor_desc_{spatial_dim} + {pad}, window_{spatial_dim} * {stride} + {len}) - cutlass::platform::max({pad}, window_{spatial_dim} * {stride}); const {compute_data_type} scaling_factor = typeConvert<{compute_data_type}>({scaling_factor}f); {compute_array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column] += typeConvert<{compute_data_type}>({input_0_array_name}[fragment_offset]) * scaling_factor; auto index_used = {input_1_array_name}[fragment_offset]; if(index_used == index_current) {{ {compute_array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column] += typeConvert<{compute_data_type}>({input_0_array_name}[fragment_offset]); }} auto current_value = typeConvert<{compute_data_type}>({input_0_array_name}[fragment_offset]); auto& max_value = {compute_array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column]; if(cuGreaterThan(current_value, max_value)) {{ max_value = current_value; + (window_{spatial_dim} - output_{spatial_dim} * {stride}) * {window_stride} {output_1_array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column] = {window_index_calculation}; // downsample {guid} decls int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; using OutputTileIterator_{guid} = cutlass::epilogue::threadblock::PredicatedTileIterator< OutputTileThreadMap, {output_0_data_type} >; typename OutputTileIterator_{guid}::Fragment array_{guid}_0; // downsample {guid} decls using OutputTileIterator_{guid}_index = cutlass::epilogue::threadblock::PredicatedTileIterator< OutputTileThreadMap, {output_1_data_type} >; typename OutputTileIterator_{guid}_index::Fragment array_{guid}_1; using OutputTileIterator_{guid}_accumulate = cutlass::epilogue::threadblock::PredicatedTileIterator< OutputTileThreadMap, {compute_data_type} >; typename OutputTileIterator_{guid}_accumulate::Fragment accumulate_array_{guid}_0; {input_0_data_type} default_pad_value = typeConvert<{input_0_data_type}>(0.0f); {input_0_data_type} default_pad_value = typeMin<{input_0_data_type}>(); int input_tensor_desc_{spatial_dim} = {input_tensor_descriptor}.dims[{spatial_dim}+1]; int output_tensor_desc_{spatial_dim} = {output_tensor_descriptor}.dims[{spatial_dim}+1]; {compute_data_type} scaling_factor = typeConvert<{compute_data_type}>(1.0f); int window_start_{spatial_dim} = (output_{spatial_dim} * {stride_num}) / {stride_denom}; int window_end_{spatial_dim} = (output_{spatial_dim} * {stride_num} * {window_dim_denom} + {window_dim_num} * {stride_denom} + {stride_denom} * {window_dim_denom} - 1)/({stride_denom} * {window_dim_denom}); int window_len_{spatial_dim} = window_end_{spatial_dim} - window_start_{spatial_dim}; scaling_factor *= typeConvert<{compute_data_type}>(window_len_{spatial_dim}); scaling_factor = typeConvert<{compute_data_type}>(1.0f)/scaling_factor; output_{spatial_dim} += {pad}; int const window_start_{spatial_dim} = (output_{spatial_dim} < {window_dim}) ? 0 : (output_{spatial_dim} - {window_dim}) / {stride} + 1; int const window_end_{spatial_dim} = cutlass::platform::min(output_{spatial_dim} / {stride} + 1, input_tensor_desc_{spatial_dim}); int const window_len_{spatial_dim} = window_end_{spatial_dim} - window_start_{spatial_dim}; int const window_start_{spatial_dim} = cutlass::platform::max({pad}, output_{spatial_dim} * {stride}); int const window_end_{spatial_dim} = cutlass::platform::min(input_tensor_desc_{spatial_dim} + {pad}, output_{spatial_dim} * {stride} + {window_dim}); int const window_len_{spatial_dim} = window_end_{spatial_dim} - window_start_{spatial_dim}; scaling_factor *= typeConvert<{compute_data_type}>(window_len_{spatial_dim}); uint64_t residual = array_{input_0_guid}_output_row[row * kColumnCount_{guid}], temp; {divmod_operator}(temp, residual, residual); int output_N = temp; int output_N; output_N = residual / ({dividend}); residual = residual % ({dividend}); {divmod_operator}(temp, residual, residual); int output_{spatial_dim} = temp; int output_{{spatial_dim}}; output_{{spatial_dim}} = residual / ({dividend}); residual = residual % ({dividend}); int output_{spatial_dim} = residual;accumulate_array_{guid}_{port} uint64_t input_row = output_N * {input_tensor_descriptor}.dims[1]; input_row = (input_row + (window_{spatial_dim} - {pad})) * {input_tensor_descriptor}.dims[{spatial_dim}+2]; input_row = (input_row + (window_{spatial_dim} - {pad})); int index_current = 0; index_current = (index_current + output_{spatial_dim} - window_{spatial_dim} * {stride}) * {window}; index_current = (index_current + output_{spatial_dim} - window_{spatial_dim} * {stride}); destination_iterator_{index_guid}.downsample_load_row({input_1_array_name}, cluster, group, row, input_row, false, {problem_descriptor}[1]); CUTLASS_PRAGMA_UNROLL for (int window_{spatial_dim} = window_start_{spatial_dim}; window_{spatial_dim} < window_end_{spatial_dim}; ++window_{spatial_dim}) {{scaling_factor_calculation_strstart_loop_over_pooling_window // downsample {guid} logic {{ CUTLASS_PRAGMA_UNROLL for(int i = 0; i < {compute_array_name}.kElements; i++) {{ {compute_array_name}[i] = default_pad_value; }} // loop over the rows present in the fragment CUTLASS_PRAGMA_UNROLL for (int cluster = 0; cluster < OutputTileThreadMap::Iterations::kCluster; ++cluster) {{ CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{{row_divison_str} // calculate the window dims{window_calculation_str} {start_loop_over_pooling_window} {input_row_offset} {window_position_calculation} {scaling_factor_calculation_str} // set default value in the fragment that loads from the tensor CUTLASS_PRAGMA_UNROLL for (int frag_idx = row * kColumnCount_{guid}; frag_idx < (row + 1) * kColumnCount_{guid}; frag_idx++) {{ {input_0_array_name}[frag_idx] = default_pad_value; }} destination_iterator_{input_guid}.downsample_load_row({input_0_array_name}, cluster, group, row, input_row, false, {problem_descriptor}[1]); CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ int fragment_offset = row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column_access * OutputTileThreadMap::kElementsPerAccess + column;{pooling_function} }} }}{end_loop_over_pooling_window} }} }} }} ++destination_iterator_{input_guid}; // convert the accumulated result to the output data type CUTLASS_PRAGMA_UNROLL for (int i=0; i<{output_array_name}.kElements; i++) {{ {output_array_name}[i] = typeConvert<{output_0_data_type}>({compute_array_name}[i]); }}spatial_dimpadscaling_factorcompute_array_namewindow_stridewindow_len * {window_len}output_1_array_namewindow_index_calculation }output_1_data_typeinput_0_data_typeinput_tensor_descriptoroutput_tensor_descriptorwindow_dim_numstride_numwindow_dim_denomstride_denomwindow_diminput_0_guiddivmod_operator* {}.dims[{}]dividendindex_guid }pooling_functionrow_divison_strinput_row_offsetwindow_calculation_strwindow_position_calculationend_loop_over_pooling_windowoutput_array_namedownsample_modenumber_spatial_dimswindow_dimspre_paddingspost_paddingspad_mode13downsample_op scaling_factor *= typeConvert<{compute_data_type}>(window_len_{spatial_di // dropout {guid} logic for (int i=0; i<{input_0_array_name}.kElements; i++) { {input_0_array_name}[i] = ( __fdividef(((float)array_{guid}_1[get_cursor_{guid}()]), {num_bits}) + __frcp_rn({num_bits}*2.0f) > {threshold} ? {input_0_array_name}[i] : 0); } // dropout {guid} logic cutlass::Array<{output_0_data_type}, {input_0_array_name}.kElements> array_{guid}_{port}; for (int i=0; i {threshold} ? {input_0_array_name}[i] : 0); } // dropout {guid} includes #include __device__ int cursor_{guid} = 0; static __forceinline__ __device__ int get_cursor_{guid}() { cursor_{guid}++; if (cursor_{guid} == {num_iterations}) cursor_{guid} = 0; return cursor_{guid}; } // dropout {guid} decls uint64_t gtid = (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x; curandStatePhilox4_32_10_t rng_state_{guid}; curand_init( {seed}, //seeds.first, gtid, {seed}, //seeds.second, &rng_state_{guid}); union mask_type_{guid} { uint4 rand[{register_budget}]; cutlass::Array rand_array_{guid}; CUTLASS_DEVICE mask_type_{guid}() {} } mask_{guid}; for (int index = 0; index < {register_budget}; index++) { mask_{guid}.rand[index] = curand4(&rng_state_{guid}); } cutlass::Array& array_{guid}_1 = mask_{guid}.rand_array_{guid};num_bitsthresholdnum_iterationsbits_per_iteration10dropout_op>@?NORM_APPLY_ZERO_CENTERED_GAMMAFLASH_PAGED_ATTENTION_CONTAINER_KFLASH_PAGED_ATTENTION_CONTAINER_VDIM_INTERPRETATION_BATCH_MATRIXcutlass::SubbyteReference<{data_type}> ({array}, {element_offset})typeConvert<{data_type}>({array}[{element_offset}]) {ind}#pragma unroll {ind}for(int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ {ind} {output}.reg(i) = xmma::float2_to_half2({input}.elt(2*i+0), {input}.elt(2*i+1)); {ind}}} {ind}#pragma unroll {ind}for(int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ {ind} {output}.reg(i) = xmma::float2_to_bf16_2({input}.elt(2*i+0), {input}.elt(2*i+1)); {ind}}} #pragma unroll {ind}for (int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ {ind} {output}.reg(i) = xmma::float4_to_s8x4(make_float4({input}.elt(4*i+0),{input}.elt(4*i+1),{input}.elt(4*i+2),{input}.elt(4*i+3))); {ind}}} {ind}#pragma unroll {ind}for (int i = 0; i < Fragment_type_{guid}::NUM_ELTS; ++i) {{ {ind} {output}.elt(i) = xmma::f2i({input}.elt(i)); {ind}}} {ind}#pragma unroll {ind}for (int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ {ind} {output}.reg(i) = {input}.reg(i); {ind}}} #pragma unroll {ind}for (int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ {ind} float tmp[4] = {{{input}.elt(4*i+0),{input}.elt(4*i+1),{input}.elt(4*i+2),{input}.elt(4*i+3)}}; {ind} {output}.reg(i) = xmma::pack_fp8x4_satfinite<{otype}>(tmp); {ind}}}reinterpret_cast({input}[0])reinterpret_cast({input}) {output}[i] = {input}[i]; fp32_to_int32(&{output}[i], &{input}[i]); fp32x2_to_fp16x2(&{output}[i/2], &{input}[i]); fp32x2_to_bf16x2(&{output}[i/2], &{input}[i]); fp32x4_to_int8x4(&{output}[i/4], &{input}[i]); fp32x4_to_e4m3x4(&{output}[i/4], &{input}[i]); fp32x4_to_e5m2x4(&{output}[i/4], &{input}[i]); fp32x4_to_uint8x4(&{output}[i/4], &{input}[i]); fp32x8_to_boolx8(&{output}[i/8], &{input}[i]); fp32_to_int64(&{output}[2*i], &{input}[i]); int32_to_fp32(&{output}[i], &{input}[i]); int32x2_to_fp16x2(&{output}[i/2], &{input}[i]); int32x2_to_bf16x2(&{output}[i/2], &{input}[i]); int32x4_to_int8x4(&{output}[i/4], &{input}[i]); int32x4_to_e4m3x4(&{output}[i/4], &{input}[i]); int32x4_to_e5m2x4(&{output}[i/4], &{input}[i]); int32x4_to_uint8x4(&{output}[i/4], &{input}[i]); int32x8_to_boolx8(&{output}[i/8], &{input}[i]); int32_to_int64(&{output}[2*i], &{input}[i]); fp16x2_to_fp32x2(&{output}[2*i], &{input}[i]); fp16x2_to_int32x2(&{output}[2*i], &{input}[i]); r32 tmp[2]; fp16x2_to_fp32x2(tmp, &{input}[i]); fp32x2_to_bf16x2(&{output}[i], tmp); r32 tmp[4]; fp16x2_to_fp32x2(&tmp[0], &{input}[i]); fp16x2_to_fp32x2(&tmp[2], &{input}[i+1]); fp32x4_to_int8x4(&{output}[i/2], tmp); r32 tmp[4]; fp16x2_to_fp32x2(&tmp[0], &{input}[i]); fp16x2_to_fp32x2(&tmp[2], &{input}[i+1]); fp32x4_to_e4m3x4(&{output}[i/2], tmp); r32 tmp[4]; fp16x2_to_fp32x2(&tmp[0], &{input}[i]); fp16x2_to_fp32x2(&tmp[2], &{input}[i+1]); fp32x4_to_e5m2x4(&{output}[i/2], tmp); r32 tmp[4]; fp16x2_to_fp32x2(&tmp[0], &{input}[i]); fp16x2_to_fp32x2(&tmp[2], &{input}[i+1]); fp32x4_to_uint8x4(&{output}[i/2], tmp); r32 tmp[8]; fp16x2_to_fp32x2(&tmp[0], &{input}[i]); fp16x2_to_fp32x2(&tmp[2], &{input}[i+1]); fp16x2_to_fp32x2(&tmp[4], &{input}[i+2]); fp16x2_to_fp32x2(&tmp[6], &{input}[i+3]); fp32x8_to_boolx8(&{output}[i/4], tmp); r32 tmp[2]; fp16x2_to_fp32x2(tmp, &{input}[i]); fp32_to_int64(&{output}[4*i], &tmp[0]); fp32_to_int64(&{output}[4*i+2], &tmp[1]); bf16x2_to_fp32x2(&{output}[2*i], &{input}[i]); bf16x2_to_int32x2(&{output}[2*i], &{input}[i]); int8x4_to_fp32x4(&{output}[4*i], &{input}[i]); int8x4_to_int32x4(&{output}[4*i], &{input}[i]); e4m3x4_to_fp32x4(&{output}[4*i], &{input}[i]); e4m3x4_to_int32x4(&{output}[4*i], &{input}[i]); e5m2x4_to_fp32x4(&{output}[4*i], &{input}[i]); e5m2x4_to_int32x4(&{output}[4*i], &{input}[i]); uint8x4_to_fp32x4(&{output}[4*i], &{input}[i]); uint8x4_to_int32x4(&{output}[4*i], &{input}[i]); boolx8_to_fp32x8(&{output}[8*i], &{input}[i]); boolx8_to_int32x8(&{output}[8*i], &{input}[i]); int64_to_fp32(&{output}[i/2], &{input}[i]); int64_to_int32(&{output}[i/2], &{input}[i]); {output}[i] = {input}[i]; {output}[i+1] = {input}[i+1]; {output}[i] = {input}[i]; // general_data_type_cast code #pragma unroll for (int i = 0; i < {num_output_regs}; i += {steps}) {{r32 {}[REGISTERS_PER_COMPUTE_VECTOR_{}];reg_{guid}_{port}{index_suffix} r32 {output_name}[REGISTERS_PER_COMPUTE_VECTOR_{guid}]; r32 tmp_reg_{}_{}[WARP_REGS_{}]; fp16x2_to_fp32x2(&{output}[i], &{input}); bf16x2_to_fp32x2(&{output}[i], &{input}); reinterpret_cast({output}[i]) = static_cast({input}); fp32_to_int32(&{output}[i], &{input}); // general_data_type_cast code #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; i+=1) {{ r32 {input_name}[REGISTERS_PER_VECTOR_{load_id} * 4 / BYTES_PER_ELEMENT_{load_id}];[i % (REGISTERS_PER_COMPUTE_VECTOR_{} / 2)][(i / (REGISTERS_PER_COMPUTE_VECTOR_{guid} / 2)) * (REGISTERS_PER_COMPUTE_VECTOR_{guid} / 4) + i % (REGISTERS_PER_COMPUTE_VECTOR_{guid} / 4)]NOT_SETGENERALMMA_AMMA_BMMA_CMMA_A_SCALEMMA_B_SCALECOLUMN_BROADCASTROW_BROADCASTCOLUMN_BROADCAST_BROW_BROADCAST_BNK_BROADCASTSCALAR_BROADCASTSCALAR_BY_VALUE_BROADCASTGEN_STATS_COLUMN_REDUCEROW_REDUCELAYER_REDUCEINSTANCE_REDUCEFULL_REDUCEBATCH_REDUCEMN_UPSAMPLEMN_DOWNSAMPLESIGNAL_SETSIGNAL_WAITCONCATTRANSPOSETRANSPOSE_N_HWGLOBAL_LOAD_SCALEGLOBAL_LOAD_BIASGLOBAL_LOAD_XCOLUMN_LOOP_FOR_SCALE_BIASCOLUMN_LOOP_FOR_XCOLUMN_LOOP_FOR_APPLY_NORMROW_LOOP_MAINROW_LOOP_ELTSROW_LOOP_ELTS_XNORM_APPLY_MEANNORM_APPLY_VARNORM_APPLY_SCALENORM_APPLY_BIASIS_RMS_NORMIS_LAYER_NORMNORM_FUSIONNORM_BLOCK_SCALEMHA_BATCH_BROADCASTMHA_HEAD_BROADCASTMHA_BATCH_HEAD_BROADCASTMHA_HEAD_SEQ_BROADCASTMHA_BATCH_SEQ_BROADCASTMHA_STORE_WITH_PADMHA_GATEFLASH_ATTENTION_QFLASH_ATTENTION_KFLASH_ATTENTION_VFLASH_ATTENTION_DOFLASH_ATTENTION_DVFLASH_ATTENTION_DKFLASH_ATTENTION_Q_TFLASH_ATTENTION_K_TFLASH_ATTENTION_DO_TFLASH_ATTENTION_DQFLASH_ATTENTION_SFLASH_ATTENTION_OFLASH_ATTENTION_DP_TBAND_MATRIXPOINTWISE_MUL_FP8GLOBAL_STORE_AMAXGLOBAL_STORE_YGLOBAL_STORE_SCALE_INVMAX_POOL_FWDAVG_POOL_EXCLUDE_PAD_BWDfort::float_e3m0_tuint32_tuint64_tQKV_INTERLEAVEDNOT_INTERLEAVEDSEQLEN_INTERLEAVEDMAX_POOL_BWDAVG_POOL_INCLUDE_PAD_FWDAVG_POOL_EXCLUDE_PAD_FWDAVG_POOL_INCLUDE_PAD_BWDZERO_PADNEG_INF_PADDIM_INTERPRETATION_INVALIDDIM_INTERPRETATION_ND_IMAGEDIM_INTERPRETATION_ND_STRIDEDSKIP_CACHEUSE_CACHEPADDING_MASKCAUSAL_MASKDIAGONAL_BAND_MASKUNPADDED_CONSTANTUNPADDED_VARIABLEelement_offsetotype }}num_output_regs[c]tmp_reg_{}_{}REGISTERS_PER_VECTOR_WARP_REGS_[ki_accum&1][k_index]index_suffixtmp_reg_out_{}_{}output_nameREGISTERS_PER_COMPUTE_VECTOR_[m][n] / 1 not settmp_reg_{}_{}[i]input_nameload_idجx`H0諸ЫpX@(સȪhP8 ةx`H0訸ШpX@(৸ȧhP8 ئp`P@0p0䬸4< @unexpected_attriunexpected_topolunrecognized forSEQLEN_INTERLEAVAVG_POOL_INCLUDEAVG_POOL_EXCLUDEDIM_INTERPRETATIDIAGONAL_BAND_MAUNPADDED_CONSTANUNPADDED_VARIABLincoming output_layout not setincoming output_data_type not setERROR_KERNEL_PARAM_NOT_FOUND_OP_compute_data_type not setoopsCUTLASSCASK_XMMANATIVEDEPTHWISEDECONVARMSM70SM75SM80SM90SM100SM120ABSCEILCOSEXPFLOORNEGRSQRTSINTANNOTGEN_INDEXERFRECIPROCALCBRTCLZIS_FINITEPOPCREDUCE_PRECISIONROUND_NEAREST_AFZROUND_NEAREST_EVENSHIFT_LEFTSHIFT_RIGHT_ARITHMETICSHIFT_LOGICALADDADD_SQUAREDIVMINMODMULPOWSUBATAN2NEQGTLTANDBINARY_SELECTSCALE_BIAS_RELUFORWARD_ELUFORWARD_GELUFORWARD_RELUFORWARD_SIGMOIDFORWARD_SOFTPLUSFORWARD_SWISHFORWARD_TANHFORWARD_GELU_APPROX_TANHBACKWARD_ELUBACKWARD_GELUBACKWARD_RELUBACKWARD_SIGMOIDBACKWARD_SOFTPLUSBACKWARD_SWISHBACKWARD_TANHBACKWARD_GELU_APPROX_TANHSTRIDED_DGRADMHA_BPROP_DVMHA_BPROP_DQKMHA_BPROP_REDUCEMHA_BPROP_DBIASFLASH_MHA_FPROPFLASH_MHA_BPROPFLASH_MHA_BPROP_DSFLASH_MHA_BPROP_DKVFLASH_MHA_BPROP_DQvector::_M_range_insertGUIDis_forward_compat_enabledshared_memory_budgetthreadblock_shapewarp_shapeoperator_shapecga_shapegmma_shapegrid_maskmma_operatorgmma_stagesmha_qkv_layoutpindivmod_operatorsmethodoutput_portoutput_layoutimpltargetis_in_placematmul_params_xmma_inputmatmul_params_xmma_porttensor_descriptor_inputtensor_descriptor_portconvolution_descriptor_inputconvolution_descriptor_portresample_descriptor_inputresample_descriptor_portproblem_descriptor_inputproblem_descriptor_portfmha_descriptor_inputfmha_descriptor_portworkspace_portworkspace_inputallow_atomicsfuse_rootis_warp_specializedpersistent_ctassubtreeoutput_layout not setoutput_data_type not setmma_loopglobal_load_shared_storeglobal_storereceiveshared_loadreorderbatch_normsendnomasked_loopgemm_upsamplegemm_downsampletRRRRRRRSR10fusible_op // gemm downsample {guid} logic {{ float* shared_{guid} = (float*)shared_{shared_shared_guid}; cutlass::MatrixCoord thread_offset = DoubleOutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M}*2 * blockIdx.x), (int)({threadblock_shape_N}*2 * blockIdx.y)); static int const kTensorOpRows = 8; int cta_shared_row = thread_offset.row() - {threadblock_shape_M}*2 * blockIdx.x; int shared_row = (cta_shared_row / (OutputTileIterator::kIterations*kTensorOpRows*2)) * (kTensorOpRows*2) + cta_shared_row % (OutputTileIterator::kIterations*kTensorOpRows*2); int shared_column = thread_offset.column() - {threadblock_shape_N}*2 * blockIdx.y; int sums_smem_offset = shared_row * {threadblock_shape_N}*2 + shared_column; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < DoubleOutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < DoubleOutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < DoubleOutputTileThreadMap::kElementsPerAccess; ++column) {{ shared_{guid}[sums_smem_offset + row * DoubleOutputTileThreadMap::Delta::kRow * {threadblock_shape_N}*2 + column_access * DoubleOutputTileThreadMap::Delta::kColumn + column] = (float){input_0_array_name}[row * DoubleOutputTileThreadMap::Iterations::kColumn * DoubleOutputTileThreadMap::kElementsPerAccess + column_access * DoubleOutputTileThreadMap::kElementsPerAccess + column]; }} }} }} destination_iterator_{input_guid}.load_with_byte_offset({input_0_array_name}, 0); ++destination_iterator_{input_guid}; sums_smem_offset += DoubleOutputTileThreadMap::Shape::kRow * {threadblock_shape_N}*2; CUTLASS_PRAGMA_UNROLL for (int row = 0; row < DoubleOutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < DoubleOutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < DoubleOutputTileThreadMap::kElementsPerAccess; ++column) {{ shared_{guid}[sums_smem_offset + row * DoubleOutputTileThreadMap::Delta::kRow * {threadblock_shape_N}*2 + column_access * DoubleOutputTileThreadMap::Delta::kColumn + column] = (float){input_0_array_name}[row * DoubleOutputTileThreadMap::Iterations::kColumn * DoubleOutputTileThreadMap::kElementsPerAccess + column_access * DoubleOutputTileThreadMap::kElementsPerAccess + column]; }} }} }} cta_shared_row = thread_offset.row() - {threadblock_shape_M}*2 * blockIdx.x; shared_row = (cta_shared_row / (OutputTileIterator::kIterations*kTensorOpRows*2)) * (kTensorOpRows) + cta_shared_row % (OutputTileIterator::kIterations*kTensorOpRows); sums_smem_offset = 2*shared_row * {threadblock_shape_N}*2 + 2*shared_column; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ // // Add the column reduce here after scaling the accumulators. // {array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column] = ( shared_{guid}[sums_smem_offset + (row*OutputTileThreadMap::Delta::kRow)*2 * {threadblock_shape_N}*2 + (column_access * OutputTileThreadMap::Delta::kColumn + column)*2] + shared_{guid}[sums_smem_offset + (row*OutputTileThreadMap::Delta::kRow)*2 * {threadblock_shape_N}*2 + (column_access * OutputTileThreadMap::Delta::kColumn + column)*2 + 1] + shared_{guid}[sums_smem_offset + ((row*OutputTileThreadMap::Delta::kRow)*2 + 1) * {threadblock_shape_N}*2 + (column_access * OutputTileThreadMap::Delta::kColumn + column)*2] + shared_{guid}[sums_smem_offset + ((row*OutputTileThreadMap::Delta::kRow)*2+1) * {threadblock_shape_N}*2 + (column_access * OutputTileThreadMap::Delta::kColumn + column)*2 + 1]) * 0.25f; }} }} }} }} // gemm downsample {guid} decls int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; typename OutputTileIterator::Fragment array_{guid}_0; // gemm downsample {guid} types using DoubleOutputTileThreadMap = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}*2, {threadblock_shape_N}*2, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}*2, {warp_shape_N}*2, {warp_shape_K}>, {partitions_k}, {output_data_type}, 128 / cutlass::sizeof_bits::value{element_output} >::Type; using DoubleOutputTileIterator = cutlass::epilogue::threadblock::PredicatedTileIterator< DoubleOutputTileThreadMap, {output_data_type} >;shared_shared_guid, float18gemm_downsample_op // gemm upsample {guid} decls int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; typename OutputTileIterator::Fragment array_{guid}_0; // gemm upsample {guid} logic {{ float* shared_{guid} = (float*)shared_{shared_shared_guid}; cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); static int const kTensorOpRows = 8; int shared_row = thread_offset.row() - {threadblock_shape_M} * blockIdx.x; shared_row = shared_row / kTensorOpRows + shared_row % kTensorOpRows; int shared_column = thread_offset.column() - {threadblock_shape_N} * blockIdx.y; int sums_smem_offset = shared_row * {threadblock_shape_N} + shared_column; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ shared_{guid}[sums_smem_offset + row * OutputTileThreadMap::Delta::kRow * {threadblock_shape_N} + column_access * OutputTileThreadMap::Delta::kColumn + column] = (float){input_0_array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column]; }} }} }} shared_row = thread_offset.row() - {threadblock_shape_M} * blockIdx.x; sums_smem_offset = shared_row / kTensorOpRows * {threadblock_shape_N} + shared_column/2; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_add = 1; if (thread_offset.row() + iter*OutputTileThreadMap::Shape::kRow + row*OutputTileThreadMap::Delta::kRow > {problem_descriptor}[0] - 2) row_add = 0; CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ // // Add the column reduce here after scaling the accumulators. // // if ((thread_offset.column() + OutputTileThreadMap::Delta::kColumn * (column/OutputTileThreadMap::kElementsPerAccess) < {problem_descriptor}[1]) && (thread_offset.row() + iter * OutputTileThreadMap::Shape::kRow < {problem_descriptor}[0])) int column_add = 1; if (thread_offset.column() + column_access * OutputTileThreadMap::Delta::kColumn + column > {problem_descriptor}[1] - 2) column_add = 0; {array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column] = ( shared_{guid}[sums_smem_offset + (shared_row % kTensorOpRows + row*OutputTileThreadMap::Delta::kRow)/2 * {threadblock_shape_N} + (column_access * OutputTileThreadMap::Delta::kColumn + column)/2] + shared_{guid}[sums_smem_offset + (shared_row % kTensorOpRows + row*OutputTileThreadMap::Delta::kRow)/2 * {threadblock_shape_N} + (column_access * OutputTileThreadMap::Delta::kColumn + column + column_add)/2] + shared_{guid}[sums_smem_offset + (shared_row % kTensorOpRows + row*OutputTileThreadMap::Delta::kRow+row_add)/2 * {threadblock_shape_N} + (column_access * OutputTileThreadMap::Delta::kColumn + column)/2] + shared_{guid}[sums_smem_offset + (shared_row % kTensorOpRows + row*OutputTileThreadMap::Delta::kRow+row_add)/2 * {threadblock_shape_N} + (column_access * OutputTileThreadMap::Delta::kColumn + column + column_add)/2]) * 0.25f; }} }} }} }}16gemm_upsample_op // global load {guid} includes #include "cutlass/conv/conv2d_problem_size.h" #include "cutlass/conv/conv3d_problem_size.h" #include "cutlass/transform/threadblock/predicated_tile_iterator.h" #include "cutlass/conv/threadblock/conv2d_tile_iterator.h" #include "cutlass/conv/threadblock/conv2d_fprop_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_fprop_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_dgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_dgrad_output_gradient_tile_access_iterator_analytic.h" #include "cutlass/conv/threadblock/conv2d_dgrad_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_wgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_wgrad_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_fprop_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_fprop_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_dgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_dgrad_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_wgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_wgrad_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/predicated_scale_bias_vector_iterator.h" #include "cutlass/conv/threadblock/implicit_gemm_wgrad_fusion_multistage.h", cutlass::conv::StrideSupport::kStrided, cutlass::conv::StrideSupport::kUnity cutlass::layout::TensorNHWC, cutlass::layout::TensorNDHWC, // global load {guid} types using IteratorScaleBias = cutlass::conv::threadblock::PredicatedScaleBiasVectorIterator< cutlass::MatrixShape<1, {warp_shape_N}>, {input_0_data_type}, cutlass::layout::RowMajor>; using WarpLoadedFragmentScaleBias = typename IteratorScaleBias::Fragment; // global load {guid} types using Global_Iterator_A{guid} = cutlass::conv::threadblock::TileIterator< cutlass::conv::threadblock::Conv2d{conv_tensor}TileAccessIterator{iteration_algorithm}< cutlass::MatrixShape<{threadblock_shape_M}, {threadblock_shape_K}>, {input_0_data_type},{conv_layout} {stride_support_string} > >; // global load {guid} types using Global_Iterator_A{guid} = cutlass::conv::threadblock::TileIterator< cutlass::conv::threadblock::Conv3d{conv_tensor}TileAccessIterator{iteration_algorithm}< cutlass::MatrixShape<{threadblock_shape_M}, {threadblock_shape_K}>, {input_0_data_type},{conv_layout} {stride_support_string} > >; // global load {guid} types using Global_Iterator_A{guid} = cutlass::transform::threadblock::PredicatedTileIterator< cutlass::MatrixShape<{threadblock_shape_M}, {threadblock_shape_K}>, {input_0_data_type}, cutlass::layout::{input_0_layout}, {advance_rank}, IteratorThreadMapA>; // global load {guid} types using Global_Iterator_B{guid} = cutlass::conv::threadblock::TileIterator< cutlass::conv::threadblock::Conv2d{conv_tensor}TileAccessIteratorOptimized< cutlass::MatrixShape<{threadblock_shape_K}, {threadblock_shape_N}>, {input_1_data_type},{conv_layout} IteratorThreadMapB > >; // global load {guid} types using Global_Iterator_B{guid} = cutlass::conv::threadblock::TileIterator< cutlass::conv::threadblock::Conv3d{conv_tensor}TileAccessIterator{iteration_algorithm}< cutlass::MatrixShape<{threadblock_shape_K}, {threadblock_shape_N}>, {input_1_data_type},{conv_layout} IteratorThreadMapB > >; // global load {guid} types using Global_Iterator_B{guid} = cutlass::transform::threadblock::PredicatedTileIterator< cutlass::MatrixShape<{threadblock_shape_K}, {threadblock_shape_N}>, {input_1_data_type}, cutlass::layout::{input_1_layout}, {advance_rank}, IteratorThreadMapB>; // global_load for row_broadcast {guid} decls cutlass::Array<{data_type}, ({warp_M}/{operator_M})*2> {input_name}; // {op_name} {guid} for row_broadcast decls cutlass::Array<{data_type}, kRowGroups_{parent_guid} * kRowsPerGroup_{parent_guid}> {input_name}; // global load {guid} logic if (warp_mma_k == 0) {{ //if(gemm_k_iterations == convolution_size.residue_iteration()) {{ // global_iterator_{A_or_B}{guid}.compute_predicates(true); //}} global_iterator_{A_or_B}{guid}.load({array_name}); global_iterator_{A_or_B}{guid}++; //global_iterator_{A_or_B}{guid}.clear_mask(gemm_k_iterations <= 2); }} // global load {guid} logic if (warp_mma_k == 0) {{ global_iterator_{A_or_B}{guid}.load({array_name}); global_iterator_{A_or_B}{guid}++; global_iterator_{A_or_B}{guid}.clear_mask(gemm_k_iterations <= 2); }} // global load {guid} logic global_iterator_{A_or_B}{guid}.load({array_name}); global_iterator_{A_or_B}{guid}++; //global_iterator_{A_or_B}{guid}.clear_mask(gemm_k_iterations <= 1); // global load {guid} logic global_iterator_{A_or_B}{guid}.load({array_name}); global_iterator_{A_or_B}{guid}++; global_iterator_{A_or_B}{guid}.clear_mask(gemm_k_iterations <= 1); // global_load for scalar_broadcast {guid} decls cutlass::Array<{data_type}, 1> {input_name}; {input_name}[0] = {input_param}{input_index}; // global load {guid} decls IteratorScaleBias iterator_B_scale_bias = IteratorScaleBias( IteratorScaleBias::Params(convolution_size, cutlass::layout::RowMajor()), convolution_size, ({input_0_data_type}*){input_0_param}, ({input_0_data_type}*){input_1_param}, threadIdx.x, cutlass::MatrixCoord(0, (int)({threadblock_shape_N} * blockIdx.y))); WarpLoadedFragmentScaleBias warp_loaded_frag_B_scale_bias; cutlass::conv::warp::WgradScaleBiasReluTransform batch_norm_transform; // batch norm {guid} decls int const kColumnCount_{guid} = IteratorThreadMapA::kElementsPerAccess; // Compute the thread offset cutlass::MatrixCoord thread_offset_{guid} = IteratorThreadMapA::initial_offset(threadIdx.x)/* + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y))*/; cutlass::Array<{output_0_data_type}, kColumnCount_{guid}> {sums_array_name}; cutlass::Array<{output_0_data_type}, kColumnCount_{guid}> {squares_array_name}; int k_start_load_cursor_{guid} = 0; // batch norm {guid} load int k_start = thread_offset_{guid}.row() + k_start_load_cursor_{guid}; CUTLASS_PRAGMA_UNROLL for (int k = 0; k < IteratorThreadMapA::kElementsPerAccess; ++k) { if (k_start + k < {problem_descriptor}[2]) { {sums_array_name}[k] = {index_into_array_0}; {squares_array_name}[k] = {index_into_array_1}; } } k_start_load_cursor_{guid} += IteratorThreadMapA::Iterations::kStrided * IteratorThreadMapA::kElementsPerAccess; k_start_load_cursor_{guid} %= activation_C; // global_load for column_broadcast {guid} decls cutlass::Array<{data_type}, 4> {input_name}; int column_broadcast_stride_{guid} = ((threadIdx.x % 32) % 4) * 2; // {op_name} {guid} column broadcast decls cutlass::Array<{data_type}, kColGroups_{parent_guid} * kColsPerGroup_{parent_guid}> {input_name}; // {op_name} {guid} column broadcast load for (int c = 0; c < kColGroups_{parent_guid}; ++c) {{ {input_name}[c * kColsPerGroup_{parent_guid}] = {index_into_array}; }} // {op_name} {guid} column broadcast decls cutlass::Array<{data_type}, kColGroups_{parent_guid} * kColsPerGroup_{parent_guid}> {input_name}; // {op_name} {guid} column broadcast load CUTLASS_PRAGMA_UNROLL for (int c = 0; c < kColGroups_{parent_guid}; ++c) {{ int k_start = col_{parent_guid} + OutputTileIterator::ThreadMap::Delta::kColumn * c; CUTLASS_PRAGMA_UNROLL for (int k = 0; k < kColsPerGroup_{parent_guid}; ++k) {{ if (k_start + k < {problem_descriptor}[1]) {{ int element_offset = k_start + k + batch_{parent_guid} * {problem_descriptor}[1]; {input_name}[c * kColsPerGroup_{parent_guid} + k] = {index_into_array}; }} }} }} // batch norm {guid} logic if (warp_mma_k == 0 /*&& (k_start_load_cursor_{guid} < {problem_descriptor}[2])*/) { int k_start = thread_offset_{guid}.row() + k_start_load_cursor_{guid}; CUTLASS_PRAGMA_UNROLL for (int k = 0; k < IteratorThreadMapA::kElementsPerAccess; ++k) { if (k_start + k < {problem_descriptor}[2]) { {sums_array_name}[k] = typeConvert<{output_0_data_type}>({input_0_param}[k_start + k]); {squares_array_name}[k] = typeConvert<{output_0_data_type}>({input_1_param}[k_start + k]); } } k_start_load_cursor_{guid} += IteratorThreadMapA::Iterations::kStrided * IteratorThreadMapA::kElementsPerAccess; k_start_load_cursor_{guid} %= activation_C; iterator_B_scale_bias.add_tile_offset({{0, warp_idx_n}}); iterator_B_scale_bias.load(warp_loaded_frag_B_scale_bias);destination_iterator_{guid}.load(array_{guid}_{port}); ++destination_iterator_{guid};destination_iterator_{guid}.load_with_byte_offset(array_{guid}_{port}, -(OutputTileThreadMap::Shape::kRow/2)*(iter+1)*{problem_descriptor}[1]*sizeof(float)-((thread_offset.row()/iter_block)*iter_block/2)*{problem_descriptor}[1]*sizeof(float)); ++destination_iterator_{guid};destination_iterator_{guid}.load_with_byte_offset(array_{guid}_{port}, 0); ++destination_iterator_{guid};destination_iterator_{guid}.downsample_output_row_idx(array_{guid}_output_row);destination_iterator_{guid}.upsample_load_with_byte_offset(array_{guid}_{port}, 0, resample_size.P, resample_size.Q, 0, 0, {problem_descriptor}[1]); {divmod_operator_0}(output_HW, output_N, output_NHW); output_HW = output_NHW / {tensor_descriptor}.get_dim(0); output_N = output_NHW % {tensor_descriptor}.get_dim(0); ++destination_iterator_{guid};destination_iterator_{guid}.downsample_output_row_idx(array_{guid}_output_row); CUTLASS_PRAGMA_UNROLL for (int cluster = 0; cluster < OutputTileThreadMap::Iterations::kCluster; ++cluster) {{ CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ // calculate the output dims uint64_t output_NHW = array_{guid}_output_row[row * kColumnCount_{guid}]; uint64_t output_N, output_HW; {row_divison_str} uint64_t input_row = output_N * {tensor_descriptor}.get_dim(2) * {tensor_descriptor}.get_dim(3) + output_HW; destination_iterator_{guid}.downsample_load_row({input_array_name}, cluster, group, row, input_row, false, {problem_descriptor}[1]); }} }} }} // {op_name} {guid} logic {load_string} // global load {guid} decls Global_Iterator_A{guid} global_iterator_A{guid} = Global_Iterator_A{guid}( params.{input}_constants, convolution_size, ({input_0_data_type}*){input}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord(int(blockIdx.x) * {threadblock_shape_M}, {cta_k_string})); Global_Iterator_A{guid}::Fragment {array_name}; {array_name}.clear(); + ({}.strides[0]/8) * blockIdx.z{tensor_descriptor}.strides[{lda_indx}]cutlass::layout::{input_0_layout}::packed(cutlass::make_Coord({problem_descriptor}[0], {problem_descriptor}[2])) // global load {guid} decls Global_Iterator_A{guid} global_iterator_A{guid} = Global_Iterator_A{guid}( Global_Iterator_A{guid}::Params({lda_offset}), ({input_0_data_type}*){input}{batch_offset}, {{{problem_descriptor}[0], {problem_descriptor}[2]}}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord(int(blockIdx.x) * {threadblock_shape_M}, {cta_k_string})); Global_Iterator_A{guid}::Fragment {array_name}; {array_name}.clear(); // global load {guid} decls Global_Iterator_B{guid} global_iterator_B{guid} = Global_Iterator_B{guid}( params.{input}_constants, convolution_size, ({input_1_data_type}*){input}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord({cta_k_string}, int(blockIdx.y) * {threadblock_shape_N})); Global_Iterator_B{guid}::Fragment {array_name}; {array_name}.clear();{tensor_descriptor}.strides[{ldb_indx}]cutlass::layout::{input_1_layout}::packed(cutlass::make_Coord({problem_descriptor}[2], {problem_descriptor}[1])) // global load {guid} decls Global_Iterator_B{guid} global_iterator_B{guid} = Global_Iterator_B{guid}( Global_Iterator_B{guid}::Params({ldb_offset}), ({input_1_data_type}*){input}{batch_offset}, {{{problem_descriptor}[2], {problem_descriptor}[1]}}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord({cta_k_string}, int(blockIdx.y) * {threadblock_shape_N})); Global_Iterator_B{guid}::Fragment {array_name}; {array_name}.clear(); stride_h_divmod, stride_w_divmod,destination_iterator_{guid}.load({input_array_name}); ++destination_iterator_{guid}; cutlass::Array array_{guid}_output_row; destination_iterator_{guid}.downsample_output_row_idx(array_{guid}_output_row); destination_iterator_{guid}.upsample_load_with_byte_offset({input_array_name}, 0, resample_size.P, resample_size.Q, 0, 0, {problem_descriptor}[1]);cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); static int const iter_block = OutputTileIterator::kIterations * OutputTileThreadMap::Shape::kRow; destination_iterator_{guid}.load_with_byte_offset({input_array_name}, -((thread_offset.row()/iter_block)*iter_block/2)*{problem_descriptor}[1]*sizeof(float)); ++destination_iterator_{guid}; cutlass::Array array_{guid}_output_row; destination_iterator_{guid}.downsample_output_row_idx(array_{guid}_output_row); int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; CUTLASS_PRAGMA_UNROLL for (int cluster = 0; cluster < OutputTileThreadMap::Iterations::kCluster; ++cluster) {{ CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ // calculate the output dims uint64_t output_NHW = array_{guid}_output_row[row * kColumnCount_{guid}]; uint64_t output_N, output_HW; {row_divison_str} uint64_t input_row = output_N * {tensor_descriptor}.get_dim(2) * {tensor_descriptor}.get_dim(3) + output_HW; destination_iterator_{guid}.downsample_load_row({input_array_name}, cluster, group, row, input_row, false, {problem_descriptor}[1]); }} }} }}cutlass::MatrixCoord thread_offset = DoubleOutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M}*2 * blockIdx.x), (int)({threadblock_shape_N}*2 * blockIdx.y)); static int const iter_block = DoubleOutputTileIterator::kIterations * DoubleOutputTileThreadMap::Shape::kRow; destination_iterator_{guid}.load_with_byte_offset({input_array_name}, 0); // {op_name} {guid} decls typename DoubleOutputTileIterator::Params destination_iterator_params_{guid}(cutlass::layout::RowMajor::packed(cutlass::make_Coord({problem_descriptor}[0]{gemm_downsample_factor}, {problem_descriptor}[1]{gemm_downsample_factor}))); DoubleOutputTileIterator destination_iterator_{guid}( destination_iterator_params_{guid}, ({input_0_data_type}*){input_0_param}, cutlass::MatrixCoord({problem_descriptor}[0]{gemm_downsample_factor}, {problem_descriptor}[1]{gemm_downsample_factor}), //problem_size, thread_idx, cutlass::MatrixCoord((int)({threadblock_shape_M}*2 * blockIdx.x), (int)({threadblock_shape_N}*2 * blockIdx.y)) ); typename DoubleOutputTileIterator::Fragment {input_array_name}; {load_string} ++destination_iterator_{guid}; + {problem_descriptor}[0] * {problem_descriptor}[1] * blockIdx.zcutlass::layout::RowMajor::packed(cutlass::make_Coord( {problem_descriptor}[0]{gemm_downsample_factor}, {problem_descriptor}[1]{gemm_downsample_factor}))cutlass::layout::RowMajor::packed(cutlass::make_Coord( {problem_descriptor}[0], {problem_descriptor}[1])) // {op_name} {guid} decls cutlass::Array<{data_type}, 1> {input_name}; // {op_name} {guid} decls using ElementInput_{guid} = {input_0_data_type}; using InputTileIterator_{guid} = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< OutputTileThreadMap, ElementInput_{guid} >; typename InputTileIterator_{guid}::Params destination_iterator_params_{guid}({lda_offset}{strided_dgrad_size}{strided_dgrad_threadblock_m}); InputTileIterator_{guid} destination_iterator_{guid}( destination_iterator_params_{guid}, ({input_0_data_type}*){input_0_param}{batch_offset}, cutlass::MatrixCoord({problem_descriptor}[0]{gemm_downsample_factor}, {problem_descriptor}[1]{gemm_downsample_factor}), //problem_size, thread_idx,{strided_dgrad_fast_divmod}{strided_dgrad_start} cutlass::MatrixCoord((int)({threadblock_shape_M} * {threadblock_offset_m}), (int)({threadblock_shape_N}{gemm_upsample_divisor} * {threadblock_offset_n})) ); typename InputTileIterator_{guid}::Fragment {input_array_name}; {load_string} {problem_descriptor}[2] * blockIdx.z // global_load for column_broadcast {guid} logic {{ int local_stride = column_broadcast_stride_{guid}; int batch_stride = {batch_stride}; if (local_stride + 0 < {problem_descriptor}[2]) {{ {input_name}[0] = {input_param}[local_stride + 0 + batch_stride]; }} if (local_stride + 1 < {problem_descriptor}[2]) {{ {input_name}[1] = {input_param}[local_stride + 1 + batch_stride]; }} if (local_stride + 8 < {problem_descriptor}[2]) {{ {input_name}[2] = {input_param}[local_stride + 8 + batch_stride]; }} if (local_stride + 9 < {problem_descriptor}[2]) {{ {input_name}[3] = {input_param}[local_stride + 9 + batch_stride]; }} column_broadcast_stride_{guid} += {operator_shape_K}; }}{problem_descriptor}[0] * blockIdx.z // global_load for row_broadcast {guid} logic {{ const int stride = {cta_shape_M} * blockIdx.x + {warp_shape_M} * warp_idx_m + (threadIdx.x % 32) / 4; for (int i = 0; i < ({warp_shape_M} / {operator_shape_M}); ++i) {{ if (stride + i * {operator_shape_M} + 0 < {problem_descriptor}[0]) {{ {input_name}[i * 2 + 0] = {input_param}[stride + i * {operator_shape_M} + 0 + {batch_offset}]; }} else {{ {input_name}[i * 2 + 0] = typeConvert<{data_type}>(0.f); }} if (stride + i * {operator_shape_M} + 8 < {problem_descriptor}[0]) {{ {input_name}[i * 2 + 1] = {input_param}[stride + i * {operator_shape_M} + 8 + {batch_offset}]; }} else {{ {input_name}[i * 2 + 1] = typeConvert<{data_type}>(0.f); }} }} }} {{ for (int i = 0; i < 2 * ({warp_shape_M} / {operator_shape_M}); ++i) {{ if ({input_name}[i] != 0.f) {input_name}[i] = // {op_name} {guid} row broadcast load {input_name}[0] = {index_into_array}; // {op_name} {guid} load for row_broadcast CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ const int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; if (row_{parent_guid} + kRow_{parent_guid} + row_offset < {problem_descriptor}[0]) {{ int element_offset = row_{parent_guid} + kRow_{parent_guid} + row_offset + batch_{parent_guid} * {problem_descriptor}[0]; {input_name}[group * OutputTileThreadMap::Iterations::kRow + row] = {index_into_array}; }} }} }}is_band_matrix_kv_token_offsetFpropActivationWgradOutputGradientDgradOutputGradientFpropFilterWgradActivationDgradFilterIteratorThreadMapA{}Optimizedstride_support_stringconv_tensoriteration_algorithmconv_layoutinput_0_layoutadvance_rankinput_1_data_typeinput_1_layoutoperator_Mwarp_Mparent_guidop_nameA_or_Binput_paraminput_indexsums_array_{}_{}squares_array_{}_{}input_0_paraminput_1_paramk_start + kindex_into_array_0index_into_array_1y_cix_ciindex_into_arrayx_idx + x_idx_offsetdivmod_operator_0input_array_nameload_stringcta_kint(blockIdx.z) * {cta_k}cta_k_string + {}.strides[0] * blockIdx.zlda_indxint(blockIdx.z) * gemm_k_sizelda_offsetldb_indxldb_offset*2blockIdx.xblockIdx.y ,convolution_size start_r, start_s,threadblock_tile_idx.m()threadblock_tile_idx.n()/2gemm_downsample_factor ,gemm_upsample_divisorstrided_dgrad_sizestrided_dgrad_threadblock_mstrided_dgrad_fast_divmodstrided_dgrad_startthreadblock_offset_mthreadblock_offset_noperator_shape_Kbatch_stridecta_shape_Moperator_shape_M({data_type})1.f{input_name}[i]; }} }}row_idxbits_per_accessdim_interpis_ragged_batch_offsetlower_bandwidthload_row_dimstarget_row_dims14global_load_op //No global_load_op includes for xmma backend so far // global_load_op {guid} types for general tensor using Fragment_type_{guid} = xmma::Fragment<{data_type}, NUM_ELTS_{parent_id}>; // global_load_op {guid} types for column broadcast using Fragment_type_{guid} = xmma::Fragment<{data_type}, NUM_ELTS_{parent_id}>; // global_load_op {guid} types for row broadcast using Fragment_type_{guid} = xmma::Fragment<{data_type}, 1>; // global_load_op {guid} types for scalar broadcast using Fragment_type_{guid} = xmma::Fragment<{data_type}, 1>; // global_load_op {guid} types for row/column broadcast using Fragment_type_{guid} = xmma::Fragment<{data_type}, 4>; // global_load_op {guid} types for scalar broadcast using Fragment_type_{guid} = xmma::Fragment<{data_type}, 2>; // global_load_op {guid} logic for row broadcast #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ int row_index = row_{parent_id} + offsets_m_{parent_id}[ii]{batch_offset}; if (mask_{parent_id}[ii] >= 0) {{ {input_name}[ii].elt(0) = {input_param}[row_index]; }} }} // global_load_op {guid} decls for scalar broadcast Fragment_type_{guid} {scalar_name}; {scalar_name}.elt(0) = {input_param}{input_index}; // global_load_op {guid} decls for scalar broadcast Fragment_type_{guid} {scalar_name}; {scalar_name}.elt(0) = {scalar_name}.elt(1) = {input_param}{input_index}; char const *g_ptr_{guid} = reinterpret_cast({input_param}) + (bidz * params.c_stride_batches + row_{parent_id}*params.ldd + col_{parent_id}) * sizeof({output_data_type}); char const *g_ptr_{guid} = reinterpret_cast({input_param}); // global_load_op {guid} decls for general tensor{global_ptr_decl} Fragment_type_{guid} {input_name}[STGS]; // global_load_op {guid} decls for row broadcast Fragment_type_{guid} {input_name}[STGS]; // global_load_op {guid} decls for row broadcast Fragment_type_{guid} {input_name}[XMMAS_M]; {{ int batch_stride = bidz * {params_n}; int local_stride = bidm * Cta_tile_{pipeline_guid}::M + Xmma_tile_{pipeline_guid}::M_PER_XMMA * (widx % Cta_tile_{pipeline_guid}::WARPS_M) + tidw / 4; #pragma unroll for (int ii = 0; ii < XMMAS_M; ++ii) {{ int mma_stride = local_stride + ii * Xmma_tile_{pipeline_guid}::M_PER_XMMA * Cta_tile_{pipeline_guid}::WARPS_M; if (mma_stride < {params_n}) {input_name}[ii].elt(0) = {input_name}[ii].elt(1) = {bias_tensor}[batch_stride + mma_stride]; if (mma_stride + 8 < {params_n}) {input_name}[ii].elt(2) = {input_name}[ii].elt(3) = {bias_tensor}[batch_stride + mma_stride + 8]; }} }} int mask = mask_{parent_id}[ii] >= 0; char const *ptr = g_ptr_{guid} + (offsets_m_{parent_id}[ii] * params.ldd + offsets_n_{parent_id}[ii]) * sizeof({output_data_type}); bool mask = mask_{parent_id}[ii] >= 0; char const *ptr = g_ptr_{guid} + mask_{parent_id}[ii] * sizeof({output_data_type}); #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i+=ELEMENT_PER_STG) {{ int column_index = i * STG_THREADS_PER_TILE_N; if (offsets_n_{parent_id}[ii] + col_{parent_id} + column_index < {params_n}) {{ xmma::ldg({input_name}[ii].reg(i/ELEMENT_PER_STG), &reinterpret_cast<{otype} const *>(ptr)[column_index], xmma::MEM_DESC_DEFAULT); }} }} #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i++) {{ int column_index = (i / ELEMENT_PER_STG) * (ELEMENT_PER_STG * STG_THREADS_PER_TILE_N) + i % ELEMENT_PER_STG; if (offsets_n_{parent_id}[ii] + col_{parent_id} + column_index < {params_n}) {{ {input_name}[ii].elt(i) = reinterpret_cast<{otype} const *>(ptr)[column_index]; }} }} #pragma unroll for(int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ if(offsets_n_{parent_id}[ii] + col_{parent_id} + 2 * i < {params_n}) xmma::ldg({input_name}[ii].u16(2 * i), ptr + 2 * i * sizeof(uint16_t), xmma::MEM_DESC_DEFAULT); }} else {{ break; }} if(offsets_n_{parent_id}[ii] + col_{parent_id} + (2 * i + 1) < {params_n}) xmma::ldg({input_name}[ii].u16(2 * i + 1), ptr + (2 * i + 1) * sizeof(uint16_t), xmma::MEM_DESC_DEFAULT); }} else {{ break; }} }} #pragma unroll for(int i = 0; i < Fragment_type_{guid}::NUM_REGS; ++i) {{ if(offsets_n_{parent_id}[ii] + col_{parent_id} + i * {elements_per_access} < {params_n}) {{ xmma::ldg({input_name}[ii].reg(i), ptr + i * sizeof(uint32_t), xmma::MEM_DESC_DEFAULT); }} else {{ break; }} }} #pragma unroll for(int i = 0; i < Fragment_type_{guid}::NUM_REGS/2; ++i) {{ uint2 tmp; if(offsets_n_{parent_id}[ii] + col_{parent_id} + i * {elements_per_access} < {params_n}) {{ xmma::ldg(tmp, ptr + i * sizeof(uint2), xmma::MEM_DESC_DEFAULT); {input_name}[ii].reg(2 * i + 0) = tmp.x; {input_name}[ii].reg(2 * i + 1) = tmp.y; }} else {{ break; }} }} #pragma unroll for(int i = 0; i < Fragment_type_{guid}::NUM_REGS/4; ++i) {{ uint4 tmp; if(offsets_n_{parent_id}[ii] + col_{parent_id} + i * {elements_per_access} < {params_n}) {{ xmma::ldg(tmp, ptr + i * sizeof(uint4), xmma::MEM_DESC_DEFAULT); {input_name}[ii].reg(4 * i + 0) = tmp.x; {input_name}[ii].reg(4 * i + 1) = tmp.y; {input_name}[ii].reg(4 * i + 2) = tmp.z; {input_name}[ii].reg(4 * i + 3) = tmp.w; }} else {{ break; }} }} if (Fragment_type_{guid}::NUM_REGS % {registers_per_store} == 1) {{ xmma::ldg({input_name}[ii].reg(0), ptr, xmma::MEM_DESC_DEFAULT); }} if (Fragment_type_{guid}::NUM_REGS % {registers_per_store} == 2) {{ uint2 tmp; xmma::ldg(tmp, ptr, xmma::MEM_DESC_DEFAULT); {input_name}[ii].reg(0) = tmp.x; {input_name}[ii].reg(1) = tmp.y; }}load_global_memory_to_fragment // global_load_op {guid} code for general tensor #pragma unroll for( int ii = 0; ii < STGS; ++ii ) {{{mask_and_ptr_code} if (mask) {{{load_global_memory_to_fragment} }} }} // global_load_op {guid} decls for column broadcast Fragment_type_{guid} {input_name}[STGS]; #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i++) {{ int column_index = col_{parent_id} + i; if (column_index < {problem_descriptor}[1]) {{ {input_name}[ii].elt(i) = {input_param}[column_index{batch_offset}]; }} }} }} int base_stride_{guid} = (tidx % 4) * 2; int stride_div_{guid} = params.t * params.r * params.s * XMMAS_K; int global_index_{guid} = 0; // global_load_op {guid} decls for column broadcast Fragment_type_{guid} {input_name}; int batch_stride_{guid} = bidz * {params_n}; int local_stride_{guid} = (tidx % 4) * 2;{add_decl}(i / ELEMENT_PER_STG) * (ELEMENT_PER_STG * STG_THREADS_PER_TILE_N) + i % ELEMENT_PER_STG // global_load_op {guid} logic for column broadcast #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i+=ELEMENT_PER_STG) {{ int column_index = col_{parent_id} + offsets_n_{parent_id}[ii] + (i * STG_THREADS_PER_TILE_N); if (column_index < {problem_descriptor}[1]) {{ xmma::ldg({input_name}[ii].reg(i/ELEMENT_PER_STG), &{input_param}[column_index{batch_offset}], xmma::MEM_DESC_DEFAULT); }} }} }} // global_load_op {guid} logic for column broadcast #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i++) {{ int column_index = col_{parent_id} + offsets_n_{parent_id}[ii] + {local_col_index}; if (column_index < {problem_descriptor}[1]) {{ {input_name}[ii].elt(i) = {input_param}[column_index{batch_offset}]; }} }} }} local_stride_{guid} += Xmma_tile_{pipeline_guid}::K_PER_XMMA; if (global_index_{guid} >= stride_div_{guid}) {{ base_stride_{guid} += Cta_tile_{pipeline_guid}::K; global_index_{guid} = 0; }} local_stride_{guid} = base_stride_{guid} + (global_index_{guid} % XMMAS_K) * Xmma_tile_{pipeline_guid}::K_PER_XMMA; ++global_index_{guid}; // global_load_op {guid} logic for column broadcast{pre_reset_stride} if (local_stride_{guid} + 0 < {params_n}) {input_name}.elt(0) = {input_param}[batch_stride_{guid} + local_stride_{guid} + 0]; if (local_stride_{guid} + 1 < {params_n}) {input_name}.elt(1) = {input_param}[batch_stride_{guid} + local_stride_{guid} + 1]; if (local_stride_{guid} + 8 < {params_n}) {input_name}.elt(2) = {input_param}[batch_stride_{guid} + local_stride_{guid} + 8]; if (local_stride_{guid} + 9 < {params_n}) {input_name}.elt(3) = {input_param}[batch_stride_{guid} + local_stride_{guid} + 9];{post_reset_stride} + {}[0] * bidzscalar_nameglobal_ptr_declparams.mparams.kparams_npipeline_guidbias_tensorparams.nparams.cparams.trscregisters_per_storemask_and_ptr_code + {}[1] * bidzadd_decllocal_col_indexpre_reset_stridepost_reset_stride //No global_load_op includes for xmma backend s // global load {guid} includes // global load {guid} types // The global memory tile to load dP. using Gmem_tile_s_{guid} = typename Kernel_traits::Gmem_tile_s; // global load {guid} types // The global memory tile to load P. using Gmem_tile_s_{guid} = typename Kernel_traits::Gmem_tile_s; enum {{ BYTES_PER_LDG = 16 }}; enum {{ NUM_ELTS = BYTES_PER_LDG / sizeof(T) }}; // One CTA hidden vector for K and V enum {{ BYTES_PER_ROW = HIDDEN_SIZE * sizeof(T) * 2 }}; // The stride in bytes in dQKV enum {{ OUT_STRIDE_BYTES = 3 * HIDDEN_SIZE * sizeof(T) }}; // The offset in bytes in dQKV to the dKV part for non-interleaved heads enum {{ OUT_OFFSET_KV_BYTES = HIDDEN_SIZE * sizeof(T) }}; static_assert(BYTES_PER_ROW == HIDDEN_SIZE * 2 * sizeof(T)); // Size in bytes of the input tile enum {{ BYTES_PER_TILE = CHUNKS * BYTES_PER_ROW }}; enum {{ BYTES_PER_CTA = THREADS * BYTES_PER_LDG }}; enum {{ LDGS = BYTES_PER_ROW / BYTES_PER_CTA }}; static_assert(BYTES_PER_CTA * LDGS == BYTES_PER_ROW); union Vec_t {{ float4 raw; T elt[NUM_ELTS]; }}; // Setup the input pointers const int offset_in_{guid} = blockIdx.x * BYTES_PER_TILE + threadIdx.x * BYTES_PER_LDG; const char *ptr_in_{guid} = static_cast(in) + offset_in_{guid}; // The global memory tile to store O after gate. using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_o; // global load {guid} types // The global memory tile to load bias using Gmem_tile_{guid} = Kernel_traits::Gmem_tile_bias; // global load {guid} logic if (l < STEPS2 - 1) {{ // Load next part of S gmem_s_{guid}.load(s_regs_{guid}, mask_{input_0_guid}); gmem_s_{guid}.move(); }} // global load {guid} logic // Pack dP as Fragment_a fmha::Fragment_a frag_a_{guid}[Mma_tile_o3::MMAS_K][Mma_tile_o3::MMAS_M]; #pragma unroll for( int mi = 0; mi < M2; mi++ ) {{ #pragma unroll for( int ni = 0; ni < N2; ni++ ) {{ uint4 &dst = s_regs_{guid}[mi][ni]; frag_a_{guid}[ni][mi].reg(0) = dst.x; // row 0, cols 0,1 frag_a_{guid}[ni][mi].reg(1) = dst.z; // row 8, cols 0,1 frag_a_{guid}[ni][mi].reg(2) = dst.y; // row 0, cols 8,9 frag_a_{guid}[ni][mi].reg(3) = dst.w; // row 8, cols 8,9 }} }} // global load {guid} logic gmem_s_{guid}.load(s_regs_{guid}, mask_{input_0_guid}); gmem_s_{guid}.move(); // Move gate loader to next part gmem_o_{guid}.move(); // global load {guid} logic if (l < STEPS - 1) {{ gmem_{guid}.load(frag_{guid}, l+1); }} // global load {guid} logic uint2 out_{guid}[Kernel_traits::Gmem_tile_o::STGS_PER_LOOP]; gmem_o_{guid}.load(out_{guid}, ii); // global load {guid} logic // Load dP gmem_s_{guid}.load(s_regs_{guid}, mask_{input_0_guid}); gmem_s_{guid}.move(); // global load {guid} logic gmem_{guid}.load(frag_{guid}, 0); // global load {guid} logic #pragma unroll for( int mi = 0; mi < M; mi++ ) {{ #pragma unroll for( int ni = 0; ni < N; ni++ ) {{ gmem_{guid}.load(regs_{guid}[mi][ni], mi, ni); }} }} gmem_{guid}.move_batch(); // global load {guid} logic gmem_{guid}.move(bidstep); // LOAD Vec_t local_in[CHUNKS][LDGS]; Vec_t local_out[LDGS]; #pragma unroll for( int c = 0; c < CHUNKS; c++ ) {{ #pragma unroll for( int l = 0; l < LDGS; l++ ) {{ int offset = c * BYTES_PER_ROW + l * BYTES_PER_CTA; local_in[c][l].raw = *static_cast((void *) (ptr_in_1 + offset)); }} }} // Allocate the global memory tile loader for Gate. Gmem_tile_o_{guid} gmem_o_{guid}(params, binfo_q, tidx, {input_b_param}); // global load {guid} decls Gmem_tile_{guid} gmem_{guid}((void *){input_b_param}, params, {batch_broadcast}, {head_broadcast}, tidx, {num_heads}); // Fragment to load the bias fmha::Fragment frag_{guid}[Mma_tile_o1::MMAS_M][Mma_tile_o1::MMAS_N]; // global load {guid} decls fmha::Gmem_tile_mma_sd gmem_{guid}((void *){input_b_param}, params, 0, bidh, tidx); uint4 regs_{guid}[M][N]; // global load {guid} decls Gmem_tile_s_{guid} gmem_s_{guid}(params, binfo_kv, tidx, {input_1_param}); uint4 s_regs_{guid}[M{number}][N{number}];input_b_parambatch_broadcasthead_broadcastnum_heads // global load shared store %d includes #include "cutlass/arch/cache_operation.h" #include "cutlass/conv/conv2d_problem_size.h" #include "cutlass/conv/conv3d_problem_size.h" #include "cutlass/transform/threadblock/predicated_tile_access_iterator.h" #include "cutlass/conv/threadblock/conv2d_tile_iterator.h" #include "cutlass/conv/threadblock/conv2d_fprop_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_fprop_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_dgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_dgrad_output_gradient_tile_access_iterator_analytic.h" #include "cutlass/conv/threadblock/conv2d_dgrad_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_dgrad_filter_tile_access_iterator_analytic.h" #include "cutlass/conv/threadblock/conv2d_wgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv2d_wgrad_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_fprop_activation_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_fprop_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_dgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_dgrad_filter_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_wgrad_output_gradient_tile_access_iterator_optimized.h" #include "cutlass/conv/threadblock/conv3d_wgrad_activation_tile_access_iterator_optimized.h" // global load shared store {} logic if (warp_mma_k + 1 == MmaBase::kWarpGemmIterations) // global load shared store {guid} logic // Issue global->shared copies for the next stage int group_start_iteration_A{guid}; if (warp_mma_k + 1 == MmaBase::kWarpGemmIterations) {{ group_start_iteration_A{guid} = 0; }} else {{ group_start_iteration_A{guid} = (warp_mma_k + 1) * kAccessesPerGroupA{guid}; }} // global load shared store {guid} logic // Issue global->shared copies for the next stage int group_start_iteration_A{guid}; if (warp_mma_k < MmaBase::kWarpGemmIterations - 1) {{ group_start_iteration_A{guid} = (warp_mma_k + 0) * kAccessesPerGroupA{guid}; }} if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ group_start_iteration_A{guid} = (warp_mma_k + 1) * kAccessesPerGroupA{guid}; // global load shared store {guid} logic if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ // LDGDEPBAR //cutlass::arch::cp_async_fence(); // DEPBAR + SYNC //cutlass::arch::cp_async_wait(); //__syncthreads(); // Move to the next stage iterator_A{guid}.add_tile_offset({{0, 1}}); smem_iterator_A{guid}.add_tile_offset({{0, 1}}); // Add negative offsets to return iterators to the 'start' of the // circular buffer in shared memory if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_iterator_A{guid}.add_tile_offset({{0, -MmaBase::kStages}}); }} iterator_A{guid}.clear_mask(gemm_k_iterations == 0); }} // global load shared store {guid} logic // Issue global->shared copies for the next stage int group_start_iteration_B{guid}; if (warp_mma_k + 1 == MmaBase::kWarpGemmIterations) {{ group_start_iteration_B{guid} = 0; }} else {{ group_start_iteration_B{guid} = (warp_mma_k + 1) * kAccessesPerGroupB{guid}; }} // global load shared store {guid} logic // Issue global->shared copies for the next stage int group_start_iteration_B{guid}; if (warp_mma_k < MmaBase::kWarpGemmIterations - 1) {{ group_start_iteration_B{guid} = (warp_mma_k + 0) * kAccessesPerGroupB{guid}; }} if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ group_start_iteration_B{guid} = (warp_mma_k + 1) * kAccessesPerGroupB{guid}; // global load shared store {guid} logic if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ // LDGDEPBAR cutlass::arch::cp_async_fence(); // DEPBAR + SYNC cutlass::arch::cp_async_wait(); __syncthreads(); // Move to the next stage iterator_B{guid}.add_tile_offset({{1, 0}}); smem_iterator_B{guid}.add_tile_offset({{1, 0}}); // Add negative offsets to return iterators to the 'start' of the // circular buffer in shared memory if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_iterator_B{guid}.add_tile_offset({{-MmaBase::kStages, 0}}); }} if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_write_stage_idx = 0; }} else {{ ++smem_write_stage_idx; }} if (smem_read_stage_idx == (MmaBase::kStages - 1)) {{ smem_read_stage_idx = 0; }} else {{ ++smem_read_stage_idx; }} iterator_B{guid}.clear_mask(gemm_k_iterations == 0); }} // global load shared store {guid} logic if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ // LDGDEPBAR //cutlass::arch::cp_async_fence(); // DEPBAR + SYNC //cutlass::arch::cp_async_wait(); //__syncthreads(); iterator_A_scale_bias.advance(); // Move to the next stage smem_iterator_A_scale_bias.add_tile_offset({{0, 1}}); // Add negative offsets to return iterators to the 'start' of the // circular buffer in shared memory if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_iterator_A_scale_bias.add_tile_offset({{0, -MmaBase::kStages}}); }} }} // global load shared store {guid} logic if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ // LDGDEPBAR //cutlass::arch::cp_async_fence(); // DEPBAR + SYNC //cutlass::arch::cp_async_wait(); //__syncthreads(); iterator_A{guid}.advance(); // Move to the next stage smem_iterator_A{guid}.add_tile_offset({{0, 1}}); // Add negative offsets to return iterators to the 'start' of the // circular buffer in shared memory if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_iterator_A{guid}.add_tile_offset({{0, -MmaBase::kStages}}); }} // }} // global load shared store {guid} logic // if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ // LDGDEPBAR cutlass::arch::cp_async_fence(); // DEPBAR + SYNC cutlass::arch::cp_async_wait(); __syncthreads(); iterator_B{guid}.advance(); // Move to the next stage smem_iterator_B{guid}.add_tile_offset({{1, 0}}); // Add negative offsets to return iterators to the 'start' of the // circular buffer in shared memory if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_iterator_B{guid}.add_tile_offset({{-MmaBase::kStages, 0}}); }} if (smem_write_stage_idx == (MmaBase::kStages - 1)) {{ smem_write_stage_idx = 0; }} else {{ ++smem_write_stage_idx; }} if (smem_read_stage_idx == (MmaBase::kStages - 1)) {{ smem_read_stage_idx = 0; }} else {{ ++smem_read_stage_idx; }} }} // global load shared store {guid} logic // Issue global->shared copies for the next stage // global load shared store {guid} logic // Issue global->shared copies for the next stage int group_start_iteration_A{guid} = 0; // global load shared store {guid} logic // Issue global->shared copies for the next stage int group_start_iteration_B{guid} = 0; {{ // Async Copy for operand A scale and bias vector. Scale and bias vectors // are small. One iteration is enough. typename IteratorScaleBias::AccessType *dst_ptr = reinterpret_cast( smem_iterator_A_scale_bias.get()); int const kSrcBytes = cutlass::sizeof_bits::value * IteratorScaleBias::kElementsPerAccess / 8; cutlass::arch::cp_async( dst_ptr, iterator_A_scale_bias.get(), iterator_A_scale_bias.valid()); }} iterator_{A_or_B}{guid}.set_iteration_index(group_start_iteration_{A_or_B}{guid} * Iterator{A_or_B}{guid}::kAccessesPerVector); smem_iterator_{A_or_B}{guid}.set_iteration_index(group_start_iteration_{A_or_B}{guid}); // LDGSTS for operand {A_or_B}{guid} CUTLASS_PRAGMA_UNROLL for (int j = 0; j < kAccessesPerGroup{A_or_B}{guid}; ++j) {{ if (group_start_iteration_{A_or_B}{guid} + j < TBLDGSTSIterations{A_or_B}{guid}) {{ typename Iterator{A_or_B}{guid}::AccessType *dst_ptr = reinterpret_cast( smem_iterator_{A_or_B}{guid}.get()); int const kSrcBytes = cutlass::sizeof_bits::value * Iterator{A_or_B}{guid}::ThreadMap::kElementsPerAccess / Iterator{A_or_B}{guid}::kAccessesPerVector / 8; CUTLASS_PRAGMA_UNROLL for (int v = 0; v < Iterator{A_or_B}{guid}::kAccessesPerVector; ++v) {{ cutlass::arch::{cp_async_code}(dst_ptr + v, iterator_{A_or_B}{guid}.get(), iterator_{A_or_B}{guid}.valid()); ++iterator_{A_or_B}{guid}; }} ++smem_iterator_{A_or_B}{guid}; }} }} // global load shared store {guid} logic // Issue several complete stages CUTLASS_PRAGMA_UNROLL for (int stage = 0; stage < MmaBase::kStages - 1; ++stage) {{ // Async Copy for operand A scale and bias vectors. Scale and bias // vectors are small. One iteration is enough. {{ typename IteratorScaleBias::AccessType *dst_ptr = reinterpret_cast( smem_iterator_A_scale_bias.get()); int const kSrcBytes = cutlass::sizeof_bits::value * IteratorScaleBias::kElementsPerAccess / 8; cutlass::arch::cp_async( dst_ptr, iterator_A_scale_bias.get(), iterator_A_scale_bias.valid()); }} iterator_A_scale_bias.advance(); // Move to the next stage smem_iterator_A_scale_bias.add_tile_offset({{0, 1}}); // LDGDEPBAR - completes a stage //cutlass::arch::cp_async_fence(); }} CUTLASS_PRAGMA_UNROLL for (int stage = 0; stage < MmaBase::kStages - 1; ++stage) { iterator_{A_or_B}{guid}.advance(); // Move to the next stage smem_iterator_{A_or_B}{guid}.add_tile_offset({{0, 1}}); // LDGDEPBAR - completes a stage // cutlass::arch::cp_async_fence(); //}} //CUTLASS_PRAGMA_UNROLL //for (int stage = 0; stage < MmaBase::kStages - 1; ++stage) { iterator_{A_or_B}{guid}.advance(); // Move to the next stage smem_iterator_{A_or_B}{guid}.add_tile_offset({{1, 0}}); // LDGDEPBAR - completes a stage cutlass::arch::cp_async_fence(); }} iterator_{A_or_B}{guid}.clear_mask(gemm_k_iterations == 0); CUTLASS_PRAGMA_UNROLL for (int stage = 0; stage < MmaBase::kStages - 1; ++stage, --gemm_k_iterations) { iterator_{A_or_B}{guid}.add_tile_offset({{0, 1}}); // Move to the next stage smem_iterator_{A_or_B}{guid}.add_tile_offset({{0, 1}}); iterator_{A_or_B}{guid}.clear_mask(gemm_k_iterations == 1); iterator_{A_or_B}{guid}.add_tile_offset({{1, 0}}); // Move to the next stage smem_iterator_{A_or_B}{guid}.add_tile_offset({{1, 0}}); // LDGDEPBAR - completes a stage cutlass::arch::cp_async_fence(); }} // DEPBAR+SYNC cutlass::arch::cp_async_wait(); __syncthreads();gemm_k_iterations -= MmaBase::kStages - 1; // global load shared store {guid} logic // Issue several complete stages{kstage_loop_open} {pre_clear_mask_code} iterator_{A_or_B}{guid}.set_iteration_index(0); smem_iterator_{A_or_B}{guid}.set_iteration_index(0); // LDGSTS for operand {A_or_B}{guid} CUTLASS_PRAGMA_UNROLL for (int j = 0; j < TBLDGSTSIterations{A_or_B}{guid}; ++j) {{ typename Iterator{A_or_B}{guid}::AccessType *dst_ptr = reinterpret_cast( smem_iterator_{A_or_B}{guid}.get()); CUTLASS_PRAGMA_UNROLL for (int v = 0; v < Iterator{A_or_B}{guid}::kAccessesPerVector; ++v) {{ int const kSrcBytes = cutlass::sizeof_bits::value * Iterator{A_or_B}{guid}::ThreadMap::kElementsPerAccess / Iterator{A_or_B}{guid}::kAccessesPerVector / 8; cutlass::arch::{cp_async_code}( dst_ptr + v, iterator_{A_or_B}{guid}.get(), iterator_{A_or_B}{guid}.valid()); ++iterator_{A_or_B}{guid}; }} ++smem_iterator_{A_or_B}{guid}; }}{kstage_loop_close} {decrement_gemm_k_iterations}{sync_code}{post_clear_mask_code} // global load shared store {guid} types using IteratorScaleBias = cutlass::conv::threadblock::PredicatedScaleBiasVectorAccessIterator< cutlass::MatrixShape<1, {K}>, {data_type}, {layout}>; using SmemIteratorScaleBias = cutlass::conv::threadblock::RegularScaleBiasVectorAccessIterator< cutlass::MatrixShape<1, {K}>, {data_type}, {layout}>;cutlass::MatrixShape<{rows}, {cols}>cutlass::transform::threadblock::PredicatedTileAccessIterator static int const kAlignment{A_or_B}{guid} = {bpa} / cutlass::sizeof_bits<{data_type}>::value; using AccessType{A_or_B}{guid} = cutlass::Array<{data_type}, kAlignment{A_or_B}{guid}>;cutlass::conv::threadblock::Conv{dim}d{type}TileAccessIteratorOptimized, cutlass::AlignedArray<{data_type}, {bpa} / cutlass::sizeof_bits<{data_type}>::value> using Iterator{A_or_B}{guid} = {tile_access_iterator}< {shape}, {data_type}, {layout} {AdvanceRank} IteratorThreadMap{A_or_B} {stride_support} {access_type} >; using SmemIterator{A_or_B}{guid} = cutlass::transform::threadblock::RegularTileAccessIterator< {shape}, {data_type}, SmemLayout{A_or_B}, 0, IteratorThreadMap{A_or_B} >; // global load shared store {guid} types{access_type_decl}{gmem_iterator}{smem_iterator} stride_h_divmod, stride_w_divmod, // global load shared store {guid} decls MmaBase::TensorRefScaleBias shared_scale_bias_{guid} = ((MmaBase::SharedStorage*)(&shared_{shared_shared_id}))->operand_A_scale_bias_ref(); cutlass::arch::CacheOperation::Kind const kCacheOpScaleBias = cutlass::arch::CacheOperation::Global; IteratorScaleBias iterator_A_scale_bias = IteratorScaleBias( params.{input_0}_constants, convolution_size, ({input_0_data_type}*){input_0}, ({input_0_data_type}*){input_1}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord(0, 0/*threadblock_tile_idx.k() * Mma::Shape::kK*/)); SmemIteratorScaleBias smem_iterator_A_scale_bias(shared_scale_bias_{shared_id}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x); // global load shared store {guid} decls static int const TBLDGSTSIterationsA{guid} = IteratorA{guid}::ThreadMap::Iterations::kCount; static int const kAccessesPerGroupA{guid} = (TBLDGSTSIterationsA{guid} + MmaBase::kWarpGemmIterations - 1) / MmaBase::kWarpGemmIterations; MmaBase::TensorRefA shared_{guid} = ((MmaBase::SharedStorage*)(&shared_{shared_shared_id}))->operand_A_ref(); cutlass::arch::CacheOperation::Kind const kCacheOpA{guid} = cutlass::arch::CacheOperation::Always; IteratorA{guid} iterator_A{guid} = IteratorA{guid}( params.{input_0}_constants, convolution_size, ({input_0_data_type}*){input_0}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x,{stride_h_w_divmod}{start_r_s} cutlass::MatrixCoord({cta_m_idx} * {cta_m}, {cta_k_string})); SmemIteratorA{guid} smem_iterator_A{guid}(shared_{shared_id}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x);cutlass::layout::{}::packed(cutlass::make_Coord({}[0], {}[2])) // global load shared store {guid} decls static int const TBLDGSTSIterationsA{guid} = IteratorA{guid}::ThreadMap::Iterations::kCount; static int const kAccessesPerGroupA{guid} = (TBLDGSTSIterationsA{guid} + MmaBase::kWarpGemmIterations - 1) / MmaBase::kWarpGemmIterations; char *shared_ptr{guid} = reinterpret_cast(shared_{shared_shared_id}) + {local_shared_stride}; MmaBase::TensorRefA shared_{guid} = ((MmaBase::SharedStorage*)(shared_ptr{guid}))->operand_A_ref(); cutlass::arch::CacheOperation::Kind const kCacheOpA{guid} = cutlass::arch::CacheOperation::{cache_policy}; IteratorA{guid} iterator_A{guid} = IteratorA{guid}( IteratorA{guid}::Params({lda_offset}), ({input_0_data_type}*){input_0}{batch_offset}, {{ {problem_descriptor}[0], {problem_k_string} }}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord(int(blockIdx.x) * {cta_m}, {cta_k_string})); SmemIteratorA{guid} smem_iterator_A{guid}(shared_{shared_id}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x); // global load shared store {guid} decls static int const TBLDGSTSIterationsB{guid} = IteratorB{guid}::ThreadMap::Iterations::kCount; static int const kAccessesPerGroupB{guid} = (TBLDGSTSIterationsB{guid} + MmaBase::kWarpGemmIterations - 1) / MmaBase::kWarpGemmIterations; MmaBase::TensorRefB shared_{guid} = ((MmaBase::SharedStorage*)(&shared_{shared_shared_id}))->operand_B_ref(); cutlass::arch::CacheOperation::Kind const kCacheOpB{guid} = cutlass::arch::CacheOperation::{cache_policy}; IteratorB{guid} iterator_B{guid} = IteratorB{guid}( params.{input_0}_constants, convolution_size, ({input_1_data_type}*){input_0}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x,{start_r_s} cutlass::MatrixCoord({cta_k_string}, {cta_n_idx} * {cta_n})); SmemIteratorB{guid} smem_iterator_B{guid}(shared_{shared_id}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x);cutlass::layout::{}::packed(cutlass::make_Coord({}[2], {}[1])) // global load shared store {guid} decls static int const TBLDGSTSIterationsB{guid} = IteratorB{guid}::ThreadMap::Iterations::kCount; static int const kAccessesPerGroupB{guid} = (TBLDGSTSIterationsB{guid} + MmaBase::kWarpGemmIterations - 1) / MmaBase::kWarpGemmIterations; char *shared_ptr{guid} = reinterpret_cast(shared_{shared_shared_id}) + {local_shared_stride}; MmaBase::TensorRefB shared_{guid} = ((MmaBase::SharedStorage*)(shared_ptr{guid}))->operand_B_ref(); cutlass::arch::CacheOperation::Kind const kCacheOpB{guid} = cutlass::arch::CacheOperation::{cache_policy}; IteratorB{guid} iterator_B{guid} = IteratorB{guid}( IteratorB{guid}::Params({ldb_offset}), ({input_1_data_type}*){input_1}{batch_offset}, {{ {problem_k_string}, {problem_descriptor}[1] }}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x, cutlass::MatrixCoord({cta_k_string}, int(blockIdx.y) * {cta_n})); SmemIteratorB{guid} smem_iterator_B{guid}(shared_{shared_id}, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x); }}cp_async_nancp_async_zfillcp_async_codepre_clear_mask_codepost_clear_mask_codekstage_loop_openkstage_loop_closedecrement_gemm_k_iterations0,1,cutlass::layout::RowMajor, AccessType{}{}bpacutlass::layout::{},tile_access_iteratorAdvanceRankstride_supportaccess_typeaccess_type_declgmem_iteratorsmem_iteratorint(blockIdx.x) start_r, start_s,int(blockIdx.y)Alwaysshared_shared_idinput_0input_1cta_mstride_h_w_divmodstart_r_scta_m_idx{}.strides[{}]{problem_descriptor}[2]problem_size_kcache_policyproblem_k_stringlocal_shared_stridecta_ncta_n_idxis_batch_broadcast_gemmpage_table_block_sizepage_table_seq_strideuse_tmause_ldg_ststma_box_size27global_load_shared_store_op #include "cutlass/conv/threadblock/predicated_scale_bias_vector_access_iterator.h" #include "cutlass/conv/threadblock/regular_sdblock/implicit_gemm_fprop_fusion_multistage.h"global_load_shar //No global_load_shared_store_op includes for xmma backend so far // global_load_shared_store_op {guid} move code for xmma backend smem_tile_{guid}.move_next_write_buffer({buffer_id}); // Move to next SMEM buffer for multistage or double buffer. // global_load_shared_store_op {guid} residue code for xmma backend gmem_tile_{guid}.residue(); // global_load_shared_store_op {guid} disable code for xmma backend gmem_tile_{guid}.disable_loads(); // global_load_shared_store_op {guid} commit code for xmma backend gmem_tile_{guid}.commit( smem_tile_{guid} ); // Store the pixels and filters to shared memory // global_load_shared_store_op {guid} move code for xmma backend // Move the pointers and assemble the predicates for the next loop. gmem_tile_{guid}.move( next_trsi, params.{A_or_B}_delta[trsi] ); // global_load_shared_store_op {guid} disable code for xmma backend Gmem_tile_{guid} gmem_tile_{guid}(params, gc_params, loop_num_smem_{parent_id}, tile.bidx(), tidx, cta_id_in_cga, filter_pattern_index); if (warp_id == {warp_id}) {{ gmem_tile_{guid}.move_next_tile(tile.bidx(), tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER, params, gc_params, filter_pattern_index); gmem_tile_{guid}.prefetch(); }} // global_load_shared_store_op {guid} move tile code for xmma backend gmem_tile_{guid}.move_next_tile(tile.bidx(), tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER, params, gc_params, filter_pattern_index); gmem_tile_{guid}.move_next_tile(tile.bidx(), params, gc_params, SEGMENTK_CODEGEN);cta_id_in_cga.y < xmma::prev_pow2(params.cluster_m)params.mem_descriptors.descriptor_aparams.mem_descriptors.descriptor_bparams.loop_residue - segmentk_loop_lastnum_trs_of_flt_ptn * params.loop_residue_k(trsi == params.filter_trs_per_cta - 1) ? 0 : trsi + 1params.filter_coord_{a_or_b}[trsi] // global_load_shared_store_op {guid} code for xmma backend bool is_multicast_participant = true; gmem_tile_{guid}.offset_filter_coord(params, trsi); bool is_multicast_participant = {is_multicast_participant}; && cta_id_in_cga.y < xmma::prev_pow2(params.cluster_m) int is_wait_complete = buffer_empty_barriers.bar_peek(buffer_head, phase_bit); if (is_multicast_participant) {{ #pragma unroll 1 while (loop_taken) {{ if (!is_wait_complete{extra_condition}) {{ buffer_empty_barriers.bar_wait(buffer_head, phase_bit); }} buffer_full_barriers.bar_arrive_set_transactioncnt(buffer_head, COPY_BYTES, warpgroup_thread_zero); gmem_tile_{guid}.load(smem_tile_{guid}, {mem_desc}); cnt = cnt < (2 * buffers_ab - 1) ? (cnt + 1) : 0; phase_bit = cnt < buffers_ab ? 1 : 0; buffer_head = (buffer_head < buffers_ab - 1) ? (buffer_head + 1) : 0; trsi = {trsi_calc}; int64_t delta = {delta_calc}; smem_tile_{guid}.move_next_write_buffer(buffer_head); is_wait_complete = buffer_empty_barriers.bar_peek(buffer_head, phase_bit, loop != 0); gmem_tile_{guid}.move({move_params}); --loop; loop_taken = loop >= 0; if (loop <= {residue_last}) {{ gmem_tile_{guid}.residue(); }} }} // loop }} else {{ buffer_head = (buffer_head + loop + 1) % buffers_ab; cnt = (cnt + loop + 1) % (2 * buffers_ab); }} // global_load_shared_store_op {guid} code for xmma backend gmem_tile_{guid}.load( smem_tile_{guid});xmma::implicit_gemm::fprop::Gmem_tile_a_ttypename xmma::implicit_gemm::Input_related<0, 0, 0, false>,xmma::implicit_gemm::dgrad::Gmem_tile_a_txmma::implicit_gemm::strided_dgrad_indexed::Gmem_tile_a_txmma::implicit_gemm::wgrad_indexed::Gmem_tile_a_txmma::implicit_gemm::wgrad_indexed::Gmem_tile_a_nxmma::implicit_gemm::fprop::Gmem_tile_bxmma::implicit_gemm::dgrad::Gmem_tile_b_nxmma::implicit_gemm::dgrad::Gmem_tile_bxmma::implicit_gemm::strided_dgrad_indexed::Gmem_tile_b_nxmma::implicit_gemm::strided_dgrad_indexed::Gmem_tile_b_txmma::implicit_gemm::wgrad_indexed::Gmem_tile_b_nxmma::implicit_gemm::wgrad_indexed::Gmem_tile_b_t using Smem_layout_b = Smem_tile_{guid}::Layout; // global_load_shared_store_op {guid} types for xmma backend using Gmem_tile_{guid} = {gmem_tile_type}< Traits_{parent_id}, Tile_traits_{parent_id}, {input_related} {bpa}, xmma::Copy_engine::CE_UTMALDG>; using Smem_tile_{guid} = xmma::Smem_tile_hopper_{a_or_b}< Traits_{parent_id}, Cta_tile_{parent_id}, typename Gmem_tile_{guid}::Smem_layout, {bpa}, SMEM_BUFFERS, Gmem_tile_{guid}::GMMA_DESC_MODE, Gmem_tile_{guid}::USE_UTMALDG>;{smem_layout_code} // global_load_shared_store_op {guid} types for xmma backend using Gmem_tile_{guid} = {gmem_tile_type}; enum {{ BUFFERS_PER_SMEM_TILE_{guid} = Gmem_tile_{guid}::USE_LDGSTS ? xmma::Max<2, STAGES>::VALUE : STAGES }}; using Smem_tile_{guid} = xmma::Smem_tile_{a_or_b}; using Gmem_tile_base_{guid} = xmma::implicit_gemm::fprop::Gmem_tile_base_{a_or_b}_conv::Class, {input_related} {bpa}, xmma::Row, Cta_tile_{parent_id}::K, Cta_tile_{parent_id}::M, true, true>;, xmma::Copy_engine::CE_LDGSTS, true, Gmem_tile_base_{guid} // global_load_shared_store_op {guid} types for xmma backend{inherit_class_code} using Gmem_tile_{guid} = {gmem_tile_type}; enum {{ BUFFERS_PER_SMEM_TILE_{guid} = Gmem_tile_{guid}::USE_LDGSTS ? xmma::Max<2, STAGES>::VALUE : STAGES }}; using Smem_tile_{guid} = xmma::Smem_tile_{a_or_b}; // global_load_shared_store_op {guid} decls for xmma backend // params.{gmem_name} = {input}; char* {a_or_b}_smem_{parent_id} = smem_{parent_id}; smem_{parent_id} += Smem_tile_{guid}::BYTES_PER_BUFFER * buffers_ab; Smem_tile_{guid} smem_tile_{guid}({a_or_b}_smem_{parent_id}, warp_id < NUM_DMA_WARPS ? tidx : (threadIdx.x - (NUM_DMA_WARPS * 32)) & (Cta_tile_1::THREADS_PER_CTA - 1)); smem_tile_{guid}.add_smem_barrier_base(smem_barriers_{parent_id}); Gmem_tile_{guid} gmem_tile_{guid}(params, gc_params, nullptr, tile.bidx(), tidx, cta_id_in_cga, nullptr, SEGMENTK_CODEGEN); if (warp_id == 0 && elect_one == 1) {{ gmem_tile_{guid}.prefetch(); }} // global_load_shared_store_op {guid} decls for xmma backend params.{gmem_name} = {input}; Smem_tile_{guid} smem_tile_{guid}(smem_{parent_id}, tidx); Gmem_tile_{guid} gmem_tile_{guid}(params, nullptr, tile.bidx(), tidx); smem_{parent_id} += Smem_tile_{guid}::BYTES_PER_TILE;buffer_headbuffer_idwarp_idtrsi, deltaa_or_bparams.{a_or_b}_delta[0]is_multicast_participantextra_conditionmem_desctrsi_calcdelta_calcmove_paramsresidue_lastxmma::gemm::Gmem_tile_a_txmma::gemm::Gmem_tile_a_nfalse,xmma::gemm::Gmem_tile_b_txmma::gemm::Gmem_tile_b_ngmem_tile_typeinput_relatedsmem_layout_codexmma::gemm::Gmem_tile_{}_txmma::gemm::Gmem_tile_{}_ninherit_class_codeinherit_template_paramsa_gmemb_gmemimg_gmemflt_gmemgmem_named_shared_store_op includes for xmma backend so fxmma::MEM_DESC_D && cta_id_in_cga.y < xmma::prev_pow2(params.cluinput_scale_paramV (treated as K)matrix_namegmem_tileparams_tensor_setupparams_scale_bmm1q_offsetgmem_tile_declarationsmem_tile_declaration // global load shared store {guid} includes #include "cutlass/platform/platform.h" #include "fmha/fmha/gemm.h" #include "fmha/fmha/utils.h" #include "fmha/fmha/gmem_tile.h" #include "fmha/fmha/smem_tile.h" // global load shared store op {guid} logic // global load shared store {guid} logic // Commit the values for Q into shared memory. if( l < STEPS - 1 ) {{ gmem_a_{guid}.commit(smem_a_{guid}); }} // global load shared store {guid} logic // Commit the values for Q into shared memory. if( l < STEPS2 - 1) {{ gmem_b_{guid}.commit(smem_b_{guid}); // Make sure the data is in shared memory. __syncthreads(); }} // global load shared store {guid} logic // Commit the values for Q into shared memory. if( l < STEPS2 - 1) {{ gmem_b_{guid}.commit(smem_b_{guid}); }} // Make sure the data is in shared memory. __syncthreads(); // global load shared store {guid} logic // Commit the values for Q into shared memory. if( l < STEPS - 1) {{ gmem_a_{guid}.commit(smem_a_{guid}); }} // Make sire we are reading from the correct buffer. smem_a_{guid}.move_to_next_read_buffer(); smem_b_{guid}.move_to_next_read_buffer(); // Make sure the data is in shared memory. __syncthreads(); // global load shared store {guid} logic // Trigger the load for the next Q values. if( l < STEPS - 1 ) {{ smem_a_{guid}.move_to_next_write_buffer(); gmem_a_{guid}.move(); gmem_a_{guid}.load(smem_a_{guid}); }} // global load shared store op {guid} logic if(l < STEPS2 - 1) {{ smem_b_{guid}.move_to_next_write_buffer(); gmem_b_{guid}.move(); gmem_b_{guid}.load(smem_b_{guid}); }} // global load shared store op {guid} logic if(l < STEPS - 1) {{ smem_a_{guid}.move_to_next_write_buffer(); gmem_a_{guid}.move(); gmem_a_{guid}.load(smem_a_{guid}); }} // global load shared store {guid} logic // Commit the data for Q to shared memory. gmem_a_{guid}.commit(smem_a_{guid}); // Commit the data for K to shared memory. if( !Kernel_traits::SHARE_SMEM_FOR_K_AND_V ) {{ gmem_b_{guid}.commit(smem_b_{guid}); }} // Commit the data for V to shared memory. gmem_b_{guid}.commit(smem_b_{guid}); // Commit the data for K to shared memory. gmem_b_{guid}.commit(smem_b_{guid}); // Make sure the data is in shared memory. __syncthreads(); // Commit the data for K to shared memory. gmem_b_{guid}.commit(smem_b_{guid}); // Trigger the loads for Q. gmem_a_{guid}.load(smem_a_{guid}); // Trigger the loads for K. gmem_b_{guid}.load(smem_b_{guid}); const uint32_t scale_bmm1 = reinterpret_cast(params.scale_bmm1); #pragma unroll for(int it=0;it < Gmem_tile_b_{guid}::LDGS;it++){{ gmem_b_{guid}.fetch_[it] = fmha::hmul8(scale_bmm1, gmem_b_{guid}.fetch_[it]); }} // Trigger the loads for V. gmem_b_{guid}.load(smem_b_{guid}); // global load shared store {guid} typesusing Gmem_tile_a_{guid} = typename Kernel_traits::Gmem_tile_q;using Smem_tile_a_{guid} = typename Kernel_traits::Smem_tile_q;using Gmem_tile_b_{guid} = typename Kernel_traits::Gmem_tile_k;using Smem_tile_b_{guid} = typename Kernel_traits::Smem_tile_k;set_param(params.scale_bmm1, reinterpret_cast({input_scale_param}.storage));using Gmem_tile_b_{guid} = typename Kernel_traits::Gmem_tile_v;using Smem_tile_b_{guid} = typename Kernel_traits::Smem_tile_v;using Gmem_tile_a_{guid} = typename Kernel_traits::Gmem_tile_do;using Smem_tile_a_{guid} = fmha::Smem_tile_a; // The shared memory tile to reload Q as fragment b. using Smem_tile_b_{guid} = fmha::Smem_tile_b;params.o_ptr = (void *){input_0_param};using Smem_tile_b_{guid} = typename Kernel_traits::Smem_tile_v; // K is used like V in fpropusing Gmem_tile_b_{guid} = typename Kernel_traits::Gmem_tile_q;using Smem_tile_b_{guid} = typename Kernel_traits::Smem_tile_q; // The shared memory tile to reload Q transposed. using Smem_tile_b_t_{guid} = fmha::Smem_tile_b, fmha::Row, Gmem_tile_b_{guid}::BYTES_PER_LDG, 1>; // global load shared store {guid} types {params_tensor_setup} {params_scale_bmm1} // The global memory tile to load {matrix_name}. {gmem_tile} // The shared memory tile to swizzle {matrix_name}. {smem_tile} // global load shared store {guid} declsGmem_tile_a_{guid} gmem_a_{guid}(params, {q_offset}, binfo_q, tidx, {input_0_param}, params.q_stride);Smem_tile_a_{guid} smem_a_{guid}(&smem_[0], tidx);Gmem_tile_b_{guid} gmem_b_{guid}(params, {k_offset}, binfo_kv, tidx, {input_0_param}, params.k_stride);Smem_tile_b_{guid} smem_b_{guid}(&smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE], tidx);Gmem_tile_b_{guid} gmem_b_{guid}(params, {v_offset}, binfo_kv, tidx, {input_0_param}, params.v_stride);// The base pointer of smem_v; char *smem_b_{guid}_ = nullptr; if( Kernel_traits::SHARE_SMEM_FOR_K_AND_V ) {{ smem_b_{guid}_ = &smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE]; }} else {{ smem_b_{guid}_ = &smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE + Kernel_traits::Smem_tile_k::BYTES_PER_TILE]; }} // Allocate the shared memory tile loader for V. We use the same as K so be careful!!! Smem_tile_b_{guid} smem_b_{guid}(smem_b_{guid}_, tidx);Gmem_tile_a_{guid} gmem_a_{guid}(params, binfo_q, tidx, params.o_ptr, params.o_stride); // treating dout as QSmem_tile_a_{guid} smem_a_{guid}(&smem_[0], tidx); Smem_tile_b_{guid} smem_b_{guid}(&smem_[0], tidx);Gmem_tile_b_{guid} gmem_b_{guid}(params, {v_offset}, binfo_kv, tidx, {input_0_param}, params.v_stride); // treating V as Kguid_global_load_shared_store_mma_aSmem_tile_b_{guid} smem_b_{guid}(&smem_[Smem_tile_a_{guid_global_load_shared_store_mma_a}::BYTES_PER_TILE], tidx);guid_global_load_shared_store_mma_cSmem_tile_b_{guid} smem_b_{guid}(&smem_[Smem_tile_b_{guid_global_load_shared_store_mma_c}::BYTES_PER_TILE], tidx);Gmem_tile_b_{guid} gmem_b_{guid}(params, 0, binfo_q, tidx, {input_0_param}, params.q_stride);Smem_tile_b_{guid} smem_b_{guid}(&smem_[0], tidx); Smem_tile_b_t_{guid} smem_b_t_{guid}(&smem_[0], tidx); // global load shared store {guid} decls // Allocate the global memory tile loader for {matrix_name}. {gmem_tile_declaration} // Allocate the shared memory tile loader for {matrix_name}. {smem_tile_declaration} // global store %d includes #include "cutlass/semaphore.h" #include "cutlass/gemm/threadblock/threadblock_swizzle.h" #include "cutlass/epilogue/threadblock/epilogue_base.h" #include "cutlass/numeric_conversion.h" #include "cutlass/epilogue/threadblock/predicated_tile_iterator_strided_dgrad.h" stride_h_divmod, stride_w_divmod, // global store {guid} decls using OutputTileIterator_{guid} = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< OutputTileThreadMap, {output_datatype} >;::packed( cutlass::make_Coord( {problem_descriptor}[0], {problem_descriptor}[1] ){tensor_descriptor}.num_dims - 2 typename OutputTileIterator_{guid}::Params destination_iterator_params_{guid}( {tensor_descriptor}.strides[{ldd_index}]);(((int){tensor_descriptor}.strides[1]) typename OutputTileIterator_{guid}::Params destination_iterator_params_{guid}( cutlass::layout::{output_layout}{layout_param} ){strided_dgrad_size}{strided_dgrad_threadblock_m}); OutputTileIterator_{guid} destination_iterator_{guid}( destination_iterator_params_{guid}, ({output_datatype}*) {output_var}{batch_offset}, cutlass::MatrixCoord( {problem_descriptor}[0], {problem_descriptor}[1] ), //problem_size thread_idx, {strided_dgrad_fast_divmod}{strided_dgrad_start} cutlass::MatrixCoord( (int)({threadblock_M} * {threadblock_offset_m}), (int)({threadblock_N} * {threadblock_offset_n}) ) //threadblock_offset ); atomicAdd(&{output_0_param}[y_ci], {sums_array_name}); atomicAdd(&{output_1_param}[y_ci], {squares_array_name}); for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ atomicAdd(&{output_0_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)], {sums_array_name}[column_set]); atomicAdd(&{output_1_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)], {squares_array_name}[column_set]); }} }} for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ if (blockIdx.x == 0) {{ {output_0_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = {sums_array_name}[column_set]; {output_1_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = {squares_array_name}[column_set]; }} {workspace_param}[{problem_descriptor}[1] * blockIdx.x + {threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = {sums_array_name}[column_set]; {workspace_param}[{problem_descriptor}[1] * gridDim.x + {problem_descriptor}[1] * blockIdx.x + {threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = {squares_array_name}[column_set]; }} cutlass::Semaphore semaphore_{guid}({semaphore_param} + blockIdx.y, threadIdx.x); if (threadIdx.x == 0) atomicAdd(semaphore_{guid}.lock, 1); if (blockIdx.x == gridDim.x - 1) {{ semaphore_{guid}.wait(blockIdx.x + 1); for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ for (int index = 1; index < gridDim.x; index++) {{ {output_0_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] += {workspace_param}[{problem_descriptor}[1] * index + {threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)]; {output_1_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] += {workspace_param}[{problem_descriptor}[1] * gridDim.x + {problem_descriptor}[1] * index + {threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)]; }} }} }} semaphore_{guid}.release(0); }} }} // batch norm {} end scope }}atomicAdd(&%s[%d * blockIdx.y + (column_set*blockDim.x + threadIdx.x)%s], sums_array_%d_%d[column_set])fort::atomicMax(&%s[%d * blockIdx.y + (column_set*blockDim.x + threadIdx.x)%s], sums_array_%d_%d[column_set])fort::atomicMin(&%s[%d * blockIdx.y + (column_set*blockDim.x + threadIdx.x)%s], sums_array_%d_%d[column_set]) for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ {atomic_operation}; }} }}{workspace_param}[{problem_descriptor}[1] * index + {threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)]{output_0_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ if (blockIdx.x == 0) {{ {output_0_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = {sums_array_name}[column_set]; }} {workspace_param}[{problem_descriptor}[1] * blockIdx.x + {threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = {sums_array_name}[column_set]; }} }} cutlass::Semaphore semaphore_{guid}({semaphore_param} + blockIdx.y, threadIdx.x); if (threadIdx.x == 0) atomicAdd(semaphore_{guid}.lock, 1); if (blockIdx.x == gridDim.x - 1) {{ semaphore_{guid}.wait(blockIdx.x + 1); for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ for (int index = 1; index < gridDim.x; index++) {{ {output_0_param}[{threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x)] = ; }} }} }} semaphore_{guid}.release(0); }} for (int column_set = 0; column_set < num_column_sets; column_set++) {{ if (((column_set*blockDim.x + threadIdx.x) < {threadblock_shape_N}) && ({threadblock_shape_N} * blockIdx.y + (column_set*blockDim.x + threadIdx.x) < {problem_descriptor}[1])) {{ {output_0_param}[{problem_descriptor}[1] * blockIdx.x + {threadblock_shape_M} * blockIdx.y + (column_set*blockDim.x + threadIdx.x){batch_offset}] = {sums_array_name}[column_set]; }} }} // column reduce {} end scope }} // remapping rows to find the mapped_row_offset for strided dgrad int npq_offset = curr_row % tiled_rows_per_filter; int n = npq_offset / (p_ * q_); int residual = npq_offset % (p_ * q_); int p = residual / q_; int q = residual % q_; curr_row = n * (convolution_size.H * convolution_size.W) + (start_h_ + p * convolution_size.stride_h) * convolution_size.W + (start_w_ + q * convolution_size.stride_w);{threadblock_shape_M} * blockIdx.x + (row_set*blockDim.x + threadIdx.x)atomicAdd(&{output_0_param}[curr_row{batch_offset}], {sums_array_name}[row_set])fort::atomicMax(&{output_0_param}[curr_row{batch_offset}], {sums_array_name}[row_set])fort::atomicMin(&{output_0_param}[curr_row{batch_offset}], {sums_array_name}[row_set]) {{ int num_row_sets = ({threadblock_shape_M} + blockDim.x - 1)/blockDim.x; for (int row_set = 0; row_set < num_row_sets; row_set++) {{ int64_t curr_row = {curr_row}; {mapped_row_strided_dgrad} if (((row_set*blockDim.x + threadIdx.x) < {threadblock_shape_M}) && (curr_row < {problem_descriptor}[0])) {{ {atomic_operation}; }} }}{workspace_param}[{problem_descriptor}[0] * index + curr_row] {{ int num_row_sets = ({threadblock_shape_M} + blockDim.x - 1)/blockDim.x; for (int row_set = 0; row_set < num_row_sets; row_set++) {{ int64_t curr_row = {threadblock_shape_M} * blockIdx.x + (row_set*blockDim.x + threadIdx.x); {mapped_row_strided_dgrad} if (((row_set*blockDim.x + threadIdx.x) < {threadblock_shape_M}) && (curr_row < {problem_descriptor}[0])) {{ if (blockIdx.y == 0) {{ {output_0_param}[curr_row] = {sums_array_name}[row_set]; }} {workspace_param}[{problem_descriptor}[0] * blockIdx.y + curr_row] = {sums_array_name}[row_set]; }} }} cutlass::Semaphore semaphore_{guid}({semaphore_param} + blockIdx.x, threadIdx.x); if (threadIdx.x == 0) atomicAdd(semaphore_{guid}.lock, 1); if (blockIdx.y == gridDim.y - 1) {{ semaphore_{guid}.wait(blockIdx.y + 1); for (int row_set = 0; row_set < num_row_sets; row_set++) {{ int64_t curr_row = {threadblock_shape_M} * blockIdx.x + (row_set*blockDim.x + threadIdx.x); {mapped_row_strided_dgrad} if (((row_set*blockDim.x + threadIdx.x) < {threadblock_shape_M}) && (curr_row < {problem_descriptor}[0])) {{ for (int index = 1; index < gridDim.y; index++) {{ {output_0_param}[curr_row] = {{ int num_row_sets = ({threadblock_shape_M} + blockDim.x - 1)/blockDim.x; for (int row_set = 0; row_set < num_row_sets; row_set++) {{ if (((row_set*blockDim.x + threadIdx.x) < {threadblock_shape_M}) && ({threadblock_shape_M} * blockIdx.x + (row_set*blockDim.x + threadIdx.x) < {problem_descriptor}[0])) {{ {output_0_param}[{problem_descriptor}[0] * blockIdx.y + {threadblock_shape_M} * blockIdx.x + (row_set*blockDim.x + threadIdx.x){batch_offset}] = {sums_array_name}[row_set]; }} }} // row reduce {} end scope }}atomicAdd({output_0_param}, {reduction_val_name})fort::atomicMax({output_0_param}, {reduction_val_name})fort::atomicMin({output_0_param}, {reduction_val_name}) {{ if(threadIdx.x == 0) {{ {atomic_operation}; }} {{ unsigned int tid = threadIdx.x; {compute_data_type}* shared_{guid} = ({compute_data_type}*)shared_{shared_id}; if (tid == 0) {{ {workspace_param}[gridDim.x * blockIdx.y + blockIdx.x] = {reduction_val_name}; }} cutlass::Semaphore semaphore_{guid}({semaphore_param}, threadIdx.x); if (threadIdx.x == 0) atomicAdd(semaphore_{guid}.lock, 1); if ((blockIdx.y == (gridDim.y - 1)) && (blockIdx.x == (gridDim.x - 1))) {{ unsigned int offset = tid; int cta_count = (gridDim.y)*(gridDim.x); int iterator_cnt = cta_count / {remain_thread}; {reduction_val_name} = {default_value}; semaphore_{guid}.wait(cta_count); for(int i = 0; i < iterator_cnt; ++i){{ {reduction_val_name} = ; offset += {remain_thread}; }} if (offset < cta_count) {{ {reduction_val_name} = ; }} shared_{guid}[tid] = {reduction_val_name}; __syncthreads();shared_{guid}[tid + {remain_thread}] if (tid < {remain_thread}) {{ shared_{guid}[tid] = __shfl_down_sync(mask, {reduction_val_name}, 1)__shfl_down_sync(mask, {reduction_val_name}, 2)__shfl_down_sync(mask, {reduction_val_name}, 4)__shfl_down_sync(mask, {reduction_val_name}, 8)__shfl_down_sync(mask, {reduction_val_name}, 16) const unsigned mask = 0xffffffff; {reduction_val_name} = ; }}//end if (tid < 32) if (threadIdx.x == 0) {{ {output_0_param}[0] = {reduction_val_name}; }} semaphore_{guid}.release(0); }}//end of if ((blockIdx.y == (gridDim.y - 1)) && (blockIdx.x == (gridDim.x - 1))) // global store(full reduce) {} end scope }} // {op_name} {guid} row vector store {output}[{out_idx}] = cuGet<{output_data_type}>(array_{from_guid}_{from_port}[0]); // {op_name} {guid} row vector store // Compute the thread offset cutlass::MatrixCoord thread_offset_{guid} = OutputTileIterator::ThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * {threadblock_offset_m}), (int)({threadblock_shape_N} * {threadblock_offset_n})); CUTLASS_PRAGMA_UNROLL for (int c = 0; c < OutputTileIterator::ThreadMap::Iterations::kColumn; ++c) {{ int k_start = thread_offset_{guid}.column() + OutputTileIterator::ThreadMap::Delta::kColumn * c{batch_offset}; CUTLASS_PRAGMA_UNROLL for (int k = 0; k < OutputTileIterator::ThreadMap::kElementsPerAccess; ++k) {{ if (k_start + k < {problem_descriptor}[1]) {{ int element_offset = k_start + k; float elem = typeConvert<{output_data_type}>({input_array_name}[c * OutputTileIterator::ThreadMap::kElementsPerAccess + k]); // only the first row of CTAs need to store this out if (blockIdx.x == 0) {{ {output_buf}[element_offset] = elem; }} }} }} }} // {op_name} {guid} scalar store {{ {output_data_type} elem = typeConvert<{output_data_type}>({input_array_name}[0{batch_offset}]); // only one thread needs to store this out if (blockIdx.x == 0 && blockIdx.y == 0 && threadIdx.x == 0 && threadIdx.y == 0) {{ {array}[0{batch_offset}] = elem; }} }}transpose_shared_stride_{guid}TransposedTileThreadMap_{guid} // global store {guid} logic using {output_tile_iterator_type} = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< {thread_map_type}, {output_data_type} >; typename {output_tile_iterator_type}::Params destination_iterator_params_{guid}( cutlass::layout::{output_layout}::packed( cutlass::make_Coord( {problem_descriptor}[1], {problem_descriptor}[0] ) )); typename {output_tile_iterator_type}::Params destination_iterator_params_{guid}( {tensor_descriptor}.strides[{ldd_indx}]); {output_tile_iterator_type} destination_iterator_{guid}( destination_iterator_params_{guid}, ({output_datatype}*) {output_var}{batch_offset}, cutlass::MatrixCoord( {problem_descriptor}[1], {problem_descriptor}[0] ), //problem_size threadIdx.x, cutlass::MatrixCoord( (int)({threadblock_N} * {threadblock_offset_n}), (int)({threadblock_M} * {threadblock_offset_m}) ) //threadblock_offset );output_tile_iterator_type_declsoutput_tile_iterator_params_instantiationoutput_tile_iterator_instantiation // global store {guid} logic {{ {output_tile_iterator_type_decls} {output_tile_iterator_params_instantiation} {output_tile_iterator_instantiation} __syncthreads(); cutlass::MatrixCoord thread_cta_offset = {thread_map_type}::initial_offset(threadIdx.x); int thread_cta_offset_row = thread_cta_offset.row(); int thread_cta_start_column = thread_cta_offset.column(); CUTLASS_PRAGMA_UNROLL for (int iter = 0; iter < {output_tile_iterator_type}::kIterations; ++iter) {{ typename {output_tile_iterator_type}::Fragment array_{guid}_0; int iter_group = {thread_map_type}::Count::kGroup == 1 ? 0 : (iter / {thread_map_type}::Count::kGroup); int iter_row = {thread_map_type}::Count::kGroup == 1 ? iter : (iter % {thread_map_type}::Count::kGroup); int iter_start_row = (iter_group * {thread_map_type}::Shape::kGroup * {thread_map_type}::Count::kRow + iter_row) * {thread_map_type}::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int c = 0; c < {thread_map_type}::Iterations::kColumn; ++c) {{ CUTLASS_PRAGMA_UNROLL for (int k = 0; k < {thread_map_type}::kElementsPerAccess; ++k) {{ int shm_col = thread_cta_start_column + {thread_map_type}::Delta::kColumn * c + k; int col_idx = {thread_map_type}::kElementsPerAccess * c + k; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < {thread_map_type}::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < {thread_map_type}::Iterations::kRow; ++row) {{ int row_offset = group * {thread_map_type}::Delta::kGroup + row * {thread_map_type}::Delta::kRow; int shm_row = thread_cta_offset_row + iter_start_row + row_offset; int input_0_array_idx = (group * {thread_map_type}::Iterations::kRow + row)*{thread_map_type}::Iterations::kColumn * {thread_map_type}::kElementsPerAccess + col_idx; array_{guid}_0[input_0_array_idx] = typeConvert<{output_data_type}>({shared_mem}[shm_row * {shared_mem_stride} + shm_col]); }} }} }} }} destination_iterator_{guid}.store(array_{guid}_0); ++destination_iterator_{guid}; }}// end {output_tile_iterator_type}::kIterations }}// end global store {guid} logic // global store {guid} logic {output}[{out_idx}] = cuGet(array_{from_guid}_{from_port}[0]); // global store %d logic destination_iterator_%d.store(array_%d_%d); ++destination_iterator_%d; cutlass::PackPredicates<(sizeof({t}) / sizeof({t}[0]))> pack_predicates; destination_iterator_{guid}.store(pack_predicates({t})); ++destination_iterator_{guid}; // global store {guid} logic {output}[{out_idx}] = cuGet<{output_data_type}>(array_{from_guid}_{from_port}[0]); // global store %d logic cutlass::NumericArrayConverter<%s, %s, (int)array_%d_%d.kElements, cutlass::FloatRoundStyle::round_to_nearest> destination_converter_%d; destination_iterator_%d.store(destination_converter_%d(array_%d_%d)); ++destination_iterator_%d; start_r, start_s, output_datatypeldd_indexlayout_paramoutput_varthreadblock_Mthreadblock_Noutput_0_paramoutput_1_paramworkspace_paramsemaphore_param + %s[1] * blockIdx.zatomic_operation + {}[0] * blockIdx.zcurr_row{output_0_param}[curr_row]reduction_val_{guid}_{port}reduction_val_name{workspace_param}[offset]{reduction_val_name}remain_threadshared_{guid}[tid]; }} __syncthreads(); if (tid < 32) {shared_{guid}[tid + 32]; {reduction_val_name} = out_idxfrom_guidfrom_portoutput_buftranspose_shared_{guid}TransposedTileIterator_{guid}thread_map_typeoutput_tile_iterator_typeldd_indxshared_memshared_mem_strideneed_oob_checkmax_tokenis_swizzled_atomic_dq7;?CGKOSOKGC?;߻޻15global_store_op //No global_store_op includes for xmma backend so far {ind}// global_store_op {guid} tmastg tail code for xmma backend {ind}gmem_tile_{guid}.template issue_tmastg_tail(smem_tile_{guid}, &epilog_sync, xmma::MEM_DESC_DEFAULT); // global_store_op {guid} types for xmma backend using Fragment_type_{guid} = xmma::Fragment<{data_type}, NUM_ELTS_{parent_id}>;atomicAdd(&{output_param}[row_index], {input_name}[ii].elt(0))fort::atomicMax(&{output_param}[row_index], {input_name}[ii].elt(0))fort::atomicMin(&{output_param}[row_index], {input_name}[ii].elt(0)) // global_store_op {guid} logic for row reduction const int source_lane_{guid} = tidx % groupSize_{input_guid}; if (source_lane_{guid} == 0) {{ for (int ii = 0; ii < STGS; ii++) {{ int row_index = row_{parent_id} + offsets_m_{parent_id}[ii]{batch_offset}; if (mask_{parent_id}[ii] >= 0) {{ {atomic_operation}; }} }} }}reg_{input_index}_{input_port} // global_store_op {guid} logic for scalar broadcast int column_index = col_{parent_id} + offsets_n_{parent_id}[0]; int row_index = row_{parent_id} + offsets_m_{parent_id}[0]; if (column_index == 0 && row_index == 0) {{ {output}[column_index] = {input}[0].elt(0); }} // global_store_op {guid} decls for xmma backend Gmem_tile_{parent_id} gmem_tile_{guid}(params, gc_params, filter_pattern_index, start_d, start_h, start_w, bidm, bidn, bidz, tidx); Smem_tile_{parent_id} smem_tile_{guid}(smem_{parent_id}, tidx); // global_store_op {guid} decls for xmma backend Gmem_tile_{parent_id} gmem_tile_{guid}(params, gc_params, bidm, bidn, bidz, tidx); Smem_tile_{parent_id} smem_tile_{guid}(smem_{parent_id}, tidx); {ind}// global_store_op {guid} decls for xmma backend {ind}char *g_ptr_{guid} = reinterpret_cast({output}) + {ind} (bidz * params.c_stride_batches + row_{parent_id}*params.ldd + col_{parent_id}) * sizeof({output_data_type}); {ind}// global_store_op {guid} decls for xmma backend {ind}char *g_ptr_{guid} = reinterpret_cast({output}); // global_store_op {guid} logic for column broadcast #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i+=ELEMENT_PER_STG) {{ int column_index = col_{parent_id} + offsets_n_{parent_id}[ii] + (i * STG_THREADS_PER_TILE_N); int row_index = row_{parent_id} + offsets_m_{parent_id}[ii]; if (column_index < {problem_descriptor}[1] && row_index == 0) {{ xmma::stg(&{output}[column_index{batch_offset}], {input}[ii].reg(i/ELEMENT_PER_STG), xmma::MEM_DESC_DEFAULT); }} }} }} // global_store_op {guid} logic for column broadcast #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; i++) {{ int column_index = col_{parent_id} + offsets_n_{parent_id}[ii] + {local_col_index}; int row_index = row_{parent_id} + offsets_m_{parent_id}[ii]; if (column_index < {problem_descriptor}[1] && row_index == 0) {{ {output}[column_index{batch_offset}] = {input}[ii].elt(i); }} }} }} // store to shared memory float* shared_{i_g} = (float*)(smem_0); __syncthreads(); #pragma unroll for(int ii = 0; ii < Gmem_tile_{ol_g}::STGS_PER_ROW; ii++) {{ #pragma unroll for(int i = 0; i < NUM_ELTS_{ol_g}; i++) {{ shared_{i_g}[ii * Gmem_tile_{ol_g}::COLUMNS_PER_STG + tidx * NUM_ELTS_{ol_g} + i] = {input_name}[ii].elt(i); }} }} __syncthreads(); if(tidx < Cta_tile_{ol_g}::N) {{ int column_sets = (Cta_tile_{ol_g}::N + blockDim.x - 1) / blockDim.x; // Reduce over shared memory for(int column_set = 0; column_set < column_sets; column_set++) {{ if(column_set * blockDim.x + tidx < Cta_tile_{ol_g}::N) {{ #pragma unroll for(int ii = 0; ii < Gmem_tile_{ol_g}::STGS_PER_ROW; ii++) {{ reg_{i_g}_0[ii].elt(column_set) = (float)0; for(int i = 0; i < blockDim.x / Gmem_tile_{ol_g}::THREADS_PER_ROW; i++) {{ {input_name}[ii].elt(column_set) = {input_name}[ii].elt(column_set) + shared_{i_g}[ii * Gmem_tile_{ol_g}::COLUMNS_PER_STG + column_set * blockDim.x + i * Gmem_tile_{ol_g}::COLUMNS_PER_STG + tidx]; }} // global_store_op {_g} logic for col reduction {atomic_operation}(&{output_param}[bidn * Cta_tile_{ol_g}::N + column_set * blockDim.x + (tidx % Gmem_tile_{ol_g}::COLUMNS_PER_STG) + ii * Gmem_tile_{ol_g}::COLUMNS_PER_STG + {batch_offset}], {input_name}[ii].elt(column_set)); }} }} }} }} {ind}// Row Reduction default value initialization {ind}{input_name}[0].elt(0) = {default_value}; {ind}// Row Reduction default value initialization {ind}#pragma unroll {ind}for (int ii = 0; ii < STGS; ii++) {{ {ind} {input_name}[ii].elt(0) = {default_value}; {ind}}} {input_name}[{reg_index}].elt(0)__shfl_down_sync(0xffffffff, {input_name}[{reg_index}].elt(0), t_i, STG_THREADS_PER_TILE_N) {ind} // Reduction over warp {ind} for (int t_i = STG_THREADS_PER_TILE_N / 2; t_i > 0; t_i /= 2) {{ {ind} {lhs} = {rhs_operation}; {ind} }} {ind} {ind} // Reduction using global atomics {ind} if(tidx % STG_THREADS_PER_TILE_N == 0) {{ {ind} int row = row_{ol_g} + offsets_m_{ol_g}[{reg_index}]; {ind} if(row < {row_params}) {{ {ind} {atomic_operation}(&{output_param}[row], {lhs}); {ind} }} {ind} }} {ind}//global atomic reduction and store{final_reduction_code} {ind}//global atomic reduction and store {ind}#pragma unroll {ind}for (int ii = 0; ii < STGS; ii++) {{ {final_reduction_code} {ind}}} int mask = mask_{parent_id}[ii] >= 0; char *ptr = g_ptr_{guid} + (offsets_m_{parent_id}[ii] * params.ldd + offsets_n_{parent_id}[ii]) * sizeof({output_data_type}); bool mask = mask_{parent_id}[ii] >= 0; char *ptr = g_ptr_{guid} + mask_{parent_id}[ii] * sizeof({output_data_type}); {ind} if(offsets_n_{parent_id}[ii] + col_{parent_id} + 2 * i < {params_n}) {ind} xmma::stg(ptr + 2 * i * sizeof(uint16_t), reg_{guid}[ii].u16(2 * i), xmma::MEM_DESC_DEFAULT); {ind} }} else {{ {ind} break; {ind} }} {ind} if(offsets_n_{parent_id}[ii] + col_{parent_id} + (2 * i + 1) < {params_n}) {ind} xmma::stg(ptr + (2 * i + 1) * sizeof(uint16_t), reg_{guid}[ii].u16(2 * i + 1), xmma::MEM_DESC_DEFAULT); {ind} }} else {{ {ind} break; {ind} }} {ind} if(offsets_n_{parent_id}[ii] + col_{parent_id} + i * {elements_per_access} < {params_n}) {{ {ind} xmma::stg(ptr + i * sizeof(uint32_t), reg_{guid}[ii].reg(i), xmma::MEM_DESC_DEFAULT); {ind} }} else {{ {ind} break; {ind} }} {ind} if(offsets_n_{parent_id}[ii] + col_{parent_id} + i * {elements_per_access} < {params_n}) {{ {ind} xmma::stg(ptr + i * sizeof(uint2), {ind} make_uint2(reg_{guid}[ii].reg(i * 2 + 0), {ind} reg_{guid}[ii].reg(i * 2 + 1)), {ind} xmma::MEM_DESC_DEFAULT); {ind} }} else {{ {ind} break; {ind} }} {ind} if(offsets_n_{parent_id}[ii] + col_{parent_id} + i * {elements_per_access} < {params_n}) {{ {ind} xmma::stg(ptr + i * sizeof(uint4), {ind} make_uint4(reg_{guid}[ii].reg(i * 4 + 0), {ind} reg_{guid}[ii].reg(i * 4 + 1), {ind} reg_{guid}[ii].reg(i * 4 + 2), {ind} reg_{guid}[ii].reg(i * 4 + 3)), {ind} xmma::MEM_DESC_DEFAULT); {ind} }} else {{ {ind} break; {ind} }} {ind}// global_store_op {guid} code for xmma backend {ind}Fragment_type_{guid} reg_{guid}[STGS]; {ind}#pragma unroll {ind}for(int ii = 0; ii < STGS; ii++) {{{pack_to_output} {ind}}} {ind}gmem_tile_{guid}.template store( {ind} smem_tile_{guid}, &epilog_sync, xmmas_mi, mi, ni, {ind} reinterpret_cast(reg_{guid}), nullptr, xmma::MEM_DESC_DEFAULT); store_fragment_to_global_memory {ind}// global_store_op {guid} code for xmma backend {ind}Fragment_type_{guid} reg_{guid}[STGS]; {ind}#pragma unroll {ind}for (int ii = 0; ii < STGS; ++ii) {{{mask_and_ptr_code} {ind} if (mask) {{{pack_to_output} {ind} #pragma unroll {ind} for (int i = 0; i < Fragment_type_{guid}::NUM_REGS / {registers_per_store}; ++i) {{{store_fragment_to_global_memory} {ind} }} {ind} if (Fragment_type_{guid}::NUM_REGS % {registers_per_store} == 1) {{ {ind} xmma::stg(ptr, reg_{guid}[ii].reg(0), xmma::MEM_DESC_DEFAULT); {ind} }} {ind} if (Fragment_type_{guid}::NUM_REGS % {registers_per_store} == 2) {{ {ind} xmma::stg(ptr, make_uint2(reg_{guid}[ii].reg(0), reg_{guid}[ii].reg(1)), xmma::MEM_DESC_DEFAULT); {ind} }} {ind} }} {ind}}} {ind} shared_{i_g}[pos] = {input_name}[ni]{stgs_index}.elt(i); {ind} shared_stat_{i_g}[pos] = {input_sq_sum_name}[ni]{stgs_index}.elt(i); {ind}// store to shared memory {ind}float* shared_{i_g} = (float*)(epi_smem_{m_g}); {ind}float* shared_stat_{i_g} = shared_{i_g} + ROWS_PER_STG * Cta_tile_{m_g}::WARPS_M * Cta_tile_{m_g}::N; {ind}xmma::Named_barrier epilog_sync_out(15, Cta_tile_{m_g}::THREADS_PER_CTA); {ind}epilog_sync_out.wait(); {ind}#pragma unroll {ind}for(int ni = 0; ni < ITERS_N; ++ni) {{ {ind} #pragma unroll {ind} for(int ii = 0; ii < STGS; ++ii) {{ {ind} #pragma unroll {ind} for(int i = 0; i < NUM_ELTS_{ol_g}; i++) {{ {ind} int pos = (tidx_pre_swizzle_m_{ol_g} + warp_idx_{ol_g} * ROWS_PER_STG) * (ITERS_N * TILE_N) + {ind} ni * TILE_N + {ind} ii * NUM_ELTS_{ol_g} * STG_THREADS_PER_TILE_N + {ind} tidx_pre_swizzle_n_{ol_g} * ELEMENT_PER_STG + {ind} (i / ELEMENT_PER_STG) * (ELEMENT_PER_STG * STG_THREADS_PER_TILE_N) + i % ELEMENT_PER_STG;{reg_to_smem_copy_code} {ind} }} {ind} }} {ind}}} {ind}#pragma unroll {ind}for(int ni = 0; ni < ITERS_N; ++ni) {{ {ind} #pragma unroll {ind} for(int ii = 0; ii < STGS; ++ii) {{ {ind} #pragma unroll {ind} for(int i = 0; i < NUM_ELTS_{ol_g}; i++) {{ {ind} int pos = (tidx / STG_THREADS_PER_TILE_N) * Cta_tile_{m_g}::N + {stgs_index} * TILE_N + (tidx % STG_THREADS_PER_TILE_N) * NUM_ELTS_{ol_g} + i;{reg_to_smem_copy_code} {ind} }} {ind} }} {ind}}} {ind}epilog_sync_out.wait(); {ind} {ind} float {reg_var} = {default_value}; {ind} {reg_var} = {rhs_operation}; {ind} {atomic_operation}(&{output_param}[col], {reg_var}); {ind} float {reg_sq_sum_var} = {default_value}; {ind} {reg_sq_sum_var} = {rhs_sq_sum_operation}; {ind} {atomic_operation}(&{output_param_2}[col], {reg_sq_sum_var});reg_default_initialization_codereg_to_atomic_global_store_code {ind} {ind}if(tidx < Cta_tile_{m_g}::N) {{ {ind} int total_threads = Cta_tile_{m_g}::WARPS_M * Cta_tile_{m_g}::THREADS_PER_WARP; {ind} int column_sets = (Cta_tile_{m_g}::N + total_threads - 1) / total_threads; {ind} for(int column_set = 0; column_set < column_sets; column_set++) {{ {ind} if(column_set * total_threads + tidx < Cta_tile_{m_g}::N) {{ {reg_default_initialization_code} {ind} // Reduce over shared memory {ind} #pragma unroll {ind} for(int i = 0; i < ROWS_PER_STG * Cta_tile_{m_g}::WARPS_M; i++) {{ {ind} int pos = i * Cta_tile_{m_g}::N + column_set * total_threads + tidx % total_threads;{smem_to_reg_reduction_code} {ind} }} {ind} // Atomic Store to global memory {ind} int col = col_{ol_g} + column_set * total_threads + tidx % total_threads; {ind} if (col < {problem_descriptor}[1]) {{{reg_to_atomic_global_store_code} {ind} }} {ind} }} {ind} }} {ind}}} {ind}__shfl_down_sync(0xffffffff, {input_name}.elt(0), t_i, 32) {ind}for (int t_i = 16; t_i > 0; t_i /= 2) {{ {ind} {lhs} = {rhs_operation}; {ind}}} {ind}if(tidx % 32 == 0) {{ {ind} {atomic_operation}(&{output_param}[0], {input_name}.elt(0)); {ind}}} input_portatomicAddi_gfort::atomicMaxfort::atomicMinparams.nopqparams.ndhwreg_indexrow_paramsfinal_reduction_codereg_{}[ii]pack_to_outputiinireg_sum_{}_{}reg_sq_sum_{}_{}0.0finput_sq_sum_namem_greg_to_smem_copy_codeshared_{i_g}[pos]shared_stat_{i_g}[pos]reg_varreg_sq_sum_varoutput_param_2smem_to_reg_reduction_code{input_name}.elt(0)%Cҝa,xJٙxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx:]ᔼBeƑ'珼H =S //No global_store_op includes for xmma backend unintialized_row_boundary_params // global store {guid} includes // global store {guid} decls // Allocate the global memory tile loader for O. Gmem_tile_o_{guid} gmem_o_{guid}(params, binfo_q, tidx {pointer_string}); nl_traits.move_all(gmem_b_2, gmem_o_13, gmem_s_4); nl_traits.move_all(gmem_a_1, gmem_s_7); // global store {guid} decls Gmem_tile_s_{guid} gmem_s_{guid}(params, binfo_kv, tidx, {output_param}); // global store {guid} decls fmha::Gmem_tile_mma_sd gmem_{guid}((void *){output_param}, params, 0, bidh, tidx); gmem_{guid}.move(bidstep); // global store {guid} types params.o_ptr = (void *){output_param}; // The global memory tile to store O. using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_o; // global store {guid} types enum {{ STEPS_TOTAL_{guid} = fmha::Div_up::VALUE }}; // The global memory tile to store S pad using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_s; // global store {guid} types enum {{ STEPS_TOTAL_{guid} = fmha::Div_up::VALUE }}; // The global memory tile to store O pad using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_o; // global store {guid} types params.s_ptr = (void *){output_param}; // The global memory tile to store S. using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_s; // global store {guid} types // The global memory tile to store dK using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_v; // global store {guid} types enum {{ STEPS_TOTAL_{guid} = fmha::Div_up::VALUE }}; // The global memory tile to store dQ pad using Gmem_tile_o_{guid} = fmha::Gmem_tile_dq; // global store {guid} types // The global memory tile to store dK using Gmem_tile_o_{guid} = fmha::Gmem_tile_qkv; // global store {guid} types{dqkv_declaration} // The global memory tile to store dV using Gmem_tile_o_{guid} = typename Kernel_traits::Gmem_tile_v; // global store {guid} types // The global memory tile to store dV using Gmem_tile_o_{guid} = fmha::Gmem_tile_qkv; // global store {guid} types // The global memory tile to store dP. using Gmem_tile_s_{guid} = typename Kernel_traits::Gmem_tile_s; // ZERO-OUT invalid positions in dQKV const int total = cu_seqlens[batch_size]; if(blockIdx.x >= total){{ enum {{ BYTES_PER_QKV_ROW = 3 * HIDDEN_SIZE * sizeof(T) }}; enum {{ STGS = BYTES_PER_QKV_ROW / BYTES_PER_LDG }}; const float4 zeros = make_float4(0.f, 0.f, 0.f, 0.f); char *base_ptr = static_cast(out) + blockIdx.x * OUT_STRIDE_BYTES; for(int tidx = threadIdx.x; tidx < STGS; tidx += THREADS){{ *static_cast((void*)(base_ptr + tidx * BYTES_PER_LDG)) = zeros; }} return; }} // Setup the output pointers const int offset_out_{guid} = blockIdx.x * OUT_STRIDE_BYTES + threadIdx.x * BYTES_PER_LDG; char *ptr_out_{guid} = static_cast(out) + OUT_OFFSET_KV_BYTES + offset_out_{guid}; // global store {guid} types // The global memory tile to store dQ using Gmem_tile_o_{guid} = fmha::Gmem_tile_dq; // global store {guid} logic // Output the values. gmem_o_{guid}.store(out_{input_0_guid}, ii); // global store {guid} logic // Make sure the data was read from shared memory. if( ii < fmha::Gmem_tile_dq::LOOPS - 1 ) {{ __syncthreads(); }} // Output the values. gmem_o_{guid}.store(out_{input_0_guid}, ii); // global store {guid} logic gmem_o_{guid}.store(frag_p_{input_0_guid}, mask_{input_1_guid}); gmem_o_{guid}.move(); // global store {guid} logic // Move to the next part of the output. gmem_o_{guid}.move(); // global store {guid} logic gmem_s_{guid}.store(softmax.elt_, mask_{input_1_guid}); gmem_s_{guid}.move(); // global store {guid} logic Gmem_tile_o_{guid} gmem_o_{guid}(params, binfo_q, tidx, {input_dq_param}); gmem_o_{guid}.pad_sequences(STEPS_TOTAL_{guid}, 0.0f); gmem_o_{guid}.store_with_pad(o_{input_0_guid}, 0.0f); // global store {guid} logic Gmem_tile_o_{guid} gmem_o_{guid}(params, {k_offset}, binfo_kv, tidx, {pointer_string}, params.k_stride);{store_function} // global store {guid} logic Qkv_params dk_params; dk_params.qkv_ptr = params.dkv_ptr; dk_params.qkv_stride_in_bytes = params.h * 2 * CHUNKS * params.d * sizeof(half); dk_params.h = params.h; Gmem_tile_o_{guid} gmem_o_{guid}(dk_params, nl_traits.get_idx_dk(), binfo_kv, tidx); gmem_o_{guid}.store(o_{input_0_guid}); // global store {guid} logic Qkv_params dv_params; dv_params.qkv_ptr = params.dkv_ptr; dv_params.qkv_stride_in_bytes = params.h * 2 * CHUNKS * params.d * sizeof(half); dv_params.h = params.h; Gmem_tile_o_{guid} gmem_o_{guid}(dv_params, nl_traits.get_idx_dv(), binfo_kv, tidx); gmem_o_{guid}.store(o_{input_0_guid}); // global store {guid} logic Gmem_tile_o_{guid} gmem_o_{guid}(params, {v_offset}, binfo_kv, tidx, {pointer_string}, params.v_stride);{store_function} // PACK #pragma unroll for( int l = 0; l < LDGS; l++ ) { #pragma unroll for( int e = 0; e < NUM_ELTS; e++ ) { local_out[l].elt[e] = T(acc[l][e]); } } // STORE #pragma unroll for( int l = 0; l < LDGS; l++ ) { const int offset = l * BYTES_PER_CTA; *static_cast((void*)(ptr_out_3 + offset)) = local_out[l].raw; } // global store {guid} logic Gmem_tile_o_{guid} gmem_o_{guid}(params, binfo_q, tidx, params.s_ptr); gmem_o_{guid}.pad_sequences(STEPS_TOTAL_{guid}, Mma_tile_o2::MMAS_M, Mma_tile_o2::MMAS_K, mask_{input_1_guid}, 0.0f); // global store {guid} logic Gmem_tile_o_{guid} gmem_o_{guid}(params, binfo_q, tidx, params.o_ptr); gmem_o_{guid}.pad_sequences(STEPS_TOTAL_{guid}, 0.0f); // global store {guid} logic #pragma unroll for( int mi = 0; mi < M; mi++ ) {{ #pragma unroll for( int ni = 0; ni < N; ni++ ) {{ gmem_{guid}.store(regs_{input_0_guid}[mi][ni], mi, ni); }} }}, {output_0_param}, params.s_ptr, params.o_ptrpointer_stringdqkv_declarationnum_matsinput_1_guidinput_dq_paramstore_function // masked loop {guid} includes #include "cutlass/epilogue/threadblock/predicated_tile_iterator_predicates.h" // masked loop {guid} types using OutputTileIteratorPredicates = cutlass::epilogue::threadblock::PredicatedTileIteratorPredicates< OutputTileThreadMap, ElementOutput >; //masked loop {guid} logic CUTLASS_PRAGMA_UNROLL for (int cluster = 0; cluster < OutputTileIteratorPredicates::ThreadMap::Iterations::kCluster; ++cluster) {{ CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileIteratorPredicates::ThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileIteratorPredicates::ThreadMap::Iterations::kRow; ++row) {{ int frag_row_idx = (row + OutputTileIteratorPredicates::ThreadMap::Iterations::kRow * (group + OutputTileIteratorPredicates::ThreadMap::Iterations::kGroup * cluster)); int row_offset = row * OutputTileIteratorPredicates::ThreadMap::Delta::kRow + group * OutputTileIteratorPredicates::ThreadMap::Delta::kGroup + cluster * OutputTileIteratorPredicates::ThreadMap::Delta::kCluster; bool row_guard = ((row_offset + predicates_{guid}.get_thread_start_row()) < predicates_{guid}.get_upper_extent_row()) && ((row_offset + predicates_{guid}.get_thread_start_row()) >= predicates_{guid}.get_lower_extent_row()); CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileIteratorPredicates::ThreadMap::Iterations::kColumn; ++column) {{ bool guard = row_guard && mask_{guid}.predicates[column]; if (guard) {{ for (int i = (frag_row_idx * OutputTileIteratorPredicates::ThreadMap::Iterations::kColumn + column)*OutputTileIteratorPredicates::ThreadMap::kElementsPerAccess; i < (frag_row_idx * OutputTileIteratorPredicates::ThreadMap::Iterations::kColumn + column + 1)*OutputTileIteratorPredicates::ThreadMap::kElementsPerAccess; i++) {{ //masked loop {guid} logic }} }} }} }} }} }} ++predicates_{guid}; // masked loop {guid} decls typename OutputTileIteratorPredicates::Params predicates_params_{guid}(cutlass::layout::RowMajor::packed(cutlass::make_Coord({problem_descriptor}[0], {problem_descriptor}[1]))); OutputTileIteratorPredicates predicates_{guid}( predicates_params_{guid}, cutlass::MatrixCoord({lower_bound_M}, {lower_bound_N}), //lower bounds cutlass::MatrixCoord({upper_bound_M}, {upper_bound_N}), //upper bounds thread_idx, cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)) //threadblock_offset ); OutputTileIteratorPredicates::Mask mask_{guid}; predicates_{guid}.get_mask(mask_{guid}); using mask_{guid}_t = bool[OutputTileIteratorPredicates::ThreadMap::Iterations::kColumn]; mask_{guid}_t& array_{guid}_{port} = mask_{guid}.predicates;lower_bound_Mlower_bound_Nupper_bound_Mupper_bound_Nlower_boundupper_bound14masked_loop_opmask_typemask_value11mha_mask_opCta_tile_o1mask_template_ctaMma_tile_o1Cta_tile_p3Mma_tile_p3mma_tile_templatescausal_mask_dvrow_set_loopparams_scaleguid_mma_op1guid_global_load_op_mma_a // mha mask {guid} decls // Create the object to control the masks. fmha::Mask<{mask_template_cta}, (fmha::MHA_MASK_TYPE){mask_type}> mask_{guid}(params, binfo_q, binfo_kv, tidx); fmha::Mask mask_causal_{guid}(params, binfo_q, binfo_kv, tidx); // mha mask {guid} decls // Create the object to control the masks. fmha::Mask<{mask_template_cta}, (fmha::MHA_MASK_TYPE)0> mask_{guid}(params, binfo_q, binfo_kv, tidx); {causal_mask_dv} // Create the row loop control variables enum {{ M{number} = {mma_tile_templates}::MMAS_M }}; enum {{ N{number} = {mma_tile_templates}::MMAS_N }}; enum {{ STEPS{number} = fmha::Div_up::VALUE }}; // mha mask {guid} logic {{ }} // mha mask {guid} logic // Load the mask for that iteration. mask_{guid}.load(l); // Convert from the accumulator type to FP32 for Softmax. softmax.unpack_noscale(acc_o_{input_0_guid}); // Apply the mask. softmax.apply_mask(mask_{guid}, {mask_value}); // Make sure we are done reading the data. if( Kernel_traits::SHARE_SMEM_FOR_K_AND_V && l == 0 ) {{ __syncthreads(); }} // mha mask {guid} logic mask_causal_{guid}.load(l); softmax.apply_mask(mask_causal_{guid}, 0); params.rp_dropout = {input_scale_param}; set_alpha(params.scale_dropout, params.rp_dropout); params.rp_dropout = 1.f; set_alpha(params.scale_dropout, params.rp_dropout); // mha mask {guid} logic // Convert from the accumulator type to FP32 for Softmax. softmax.unpack_noscale(acc_o_{guid_mma_op1}); float s_mat[2 * M][4 * N]; {params_scale} #pragma unroll for( int mi = 0; mi < M; mi++ ) {{ #pragma unroll for( int ni = 0; ni < N; ni++ ) {{ uint4 &dst = s_regs_{guid_global_load_op_mma_a}[mi][ni]; fmha::to_float2(s_mat[2 * mi + 0][4 * ni + 0], s_mat[2 * mi + 0][4 * ni + 1], dst.x); fmha::to_float2(s_mat[2 * mi + 0][4 * ni + 2], s_mat[2 * mi + 0][4 * ni + 3], dst.y); fmha::to_float2(s_mat[2 * mi + 1][4 * ni + 0], s_mat[2 * mi + 1][4 * ni + 1], dst.z); fmha::to_float2(s_mat[2 * mi + 1][4 * ni + 2], s_mat[2 * mi + 1][4 * ni + 3], dst.w); }} }} #pragma unroll for( int mi = 0; mi < M; mi++ ) {{ #pragma unroll for( int ii = 0; ii < 2; ii++ ) {{ #pragma unroll for( int ni = 0; ni < N; ni++ ) {{ #pragma unroll for( int jj = 0; jj < 4; jj++ ) {{ float & s_dmask = s_mat[2 * mi + ii][4 * ni + jj]; const bool drop = reinterpret_cast(s_dmask) & 0x80000000; const float d_s = drop ? 0.f : softmax.elt_[2 * mi + ii][4 * ni + jj] * params.rp_dropout; s_dmask = fabsf(s_dmask); softmax.elt_[2 * mi + ii][4 * ni + jj] = d_s * fabsf(s_dmask); }} }} }} }}asm volatile(".pragma \"nvopt 0\";\n"); // {$nv-internal-release} //mma loop {guid} logic int smem_write_stage_idx = MmaBase::kStages - 1; int smem_read_stage_idx = 0; CUTLASS_GEMM_LOOP for (; gemm_k_iterations > (-MmaBase::kStages + 1);) {{ {pragma_nvopt} // {{$nv-internal-release begin}} #if CUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED // This knob avoids inserting extra LDS instructions between LDS{{M}} and LDGSTS instructions. // // See GA100 hardware bug http://nvbugs/2549067 // asm volatile (".pragma \"set knob SchedMemNoAlias=LDS+LDSM+LDGSTS\";\n" : : : "memory"); #endif // CUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED // {{$nv-internal-release end}} CUTLASS_PRAGMA_UNROLL for (int warp_mma_k = 0; warp_mma_k < MmaBase::kWarpGemmIterations; ++warp_mma_k) {{ if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ --gemm_k_iterations; }} //mma loop {guid} logic int smem_write_stage_idx = MmaBase::kStages - 1; int smem_read_stage_idx = 0; CUTLASS_GEMM_LOOP for (; gemm_k_iterations > (-MmaBase::kStages + 1);) {{ asm volatile(".pragma \"nvopt 0\";\n"); // {{$nv-internal-release}} // {{$nv-internal-release begin}} #if CUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED // This knob avoids inserting extra LDS instructions between LDS{{M}} and LDGSTS instructions. // // See GA100 hardware bug http://nvbugs/2549067 // asm volatile (".pragma \"set knob SchedMemNoAlias=LDS+LDSM+LDGSTS\";\n" : : : "memory"); #endif // CUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED // {{$nv-internal-release end}} CUTLASS_PRAGMA_UNROLL for (int warp_mma_k = 0; warp_mma_k < MmaBase::kWarpGemmIterations; ++warp_mma_k) {{ if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) {{ --gemm_k_iterations; }} //mma loop {guid} logic int smem_write_stage_idx = 1; #if defined(__NVCC__) CUTLASS_GEMM_LOOP #else #pragma unroll 2 #endif for (; gemm_k_iterations > 0; --gemm_k_iterations) {{ asm volatile(".pragma \"nvopt 0\";\n"); // {{$nv-internal-release}} CUTLASS_PRAGMA_UNROLL for (int warp_mma_k = 0; warp_mma_k < MmaBase::kWarpGemmIterations; ++warp_mma_k) {{ //mma loop {guid} logic }} // {{$nv-internal-release begin}} #if CUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED asm volatile (".pragma \"reset knob SchedMemNoAlias=LDS+LDSM+LDGSTS\";\n" : : : "memory"); #endif // CUDA_PTX_KNOB_SCHED_MEM_NO_ALIAS_ENABLED // {{$nv-internal-release end}} }} cutlass::arch::cp_async_fence(); cutlass::arch::cp_async_wait<0>(); __syncthreads(); //mma loop {guid} logic }} }}pragma_nvoptno_atomic_for_dQpadded_s_qpadded_s_kvis_batched_matmul_broadcast_ais_batched_matmul_broadcast_bis_mainloop_fusion_on_ais_mainloop_fusion_on_bmainloop_fusion_a_sts_idmainloop_fusion_b_sts_idtranspose_tensor_atranspose_tensor_bis_causal_mask_balancing11mma_loop_oploop_start - 1segmentk_iters_minus1 - 1compute_codeloop_start } } } // end of core loop int next_trsi = 0; trsi = next_trsi; // mma_loop_op {guid} code for xmma backend JETFIRE_MAC_LOOP_PRAGMA #pragma unroll 1 for (int loop = {loop_start}; loop >= 0; --loop) {{ JETFIRE_MAC_LOOP_HEADER const bool is_last = loop == 0; if (!is_wait_complete) {{ buffer_full_barriers.bar_wait(buffer_head_next, phase_bit); }} cnt = cnt < (2 * buffers_ab - 1) ? (cnt + 1) : 0; phase_bit = cnt < buffers_ab ? 0 : 1;{compute_code} }} // (mainloop) // mma_loop_op {guid} code for xmma backend JETFIRE_MAC_LOOP_PRAGMA #pragma unroll 1 for (int loop = segmentk_iters_minus1 - 1; loop >= 1; --loop) {{ JETFIRE_MAC_LOOP_HEADER #pragma unroll for (int ki = 0; ki < XMMAS_K; ++ki) {{ jetfire::ifence(JETFIRE_FENCING_ENABLED); if (ki == 0) {{ cnt = cnt < (2 * buffers_ab - 1) ? (cnt + 1) : 0; phase_bit = cnt < buffers_ab ? 0 : 1; buffer_head_next = (buffer_head_next < buffers_ab - 1) ? (buffer_head_next + 1) : 0; is_wait_complete = buffer_full_barriers.bar_peek(buffer_head_next, phase_bit); }} int ki_next = (ki == XMMAS_K - 1) ? 0 : (ki + 1); if (ki_next == 0) {{{move_buffer_code} if (!is_wait_complete) {{ buffer_full_barriers.bar_wait(buffer_head_next, phase_bit); }} }}{compute_code} xmma::warpgroup_wait<2>(); if (ki == 1) {{ if (TMA_MULTICAST_ENABLED) {{ buffer_empty_barriers.bar_arrive_dsmem(buffer_head, buffer_empty_notify_thread); }} else {{ buffer_empty_barriers.bar_arrive_normal(buffer_head); }} buffer_head = (buffer_head < (buffers_ab - 1)) ? (buffer_head + 1) : 0; }} }} // (ki) }} // (mainloop) // mma_loop_op {guid} code for xmma backend JETFIRE_MAC_LOOP_PRAGMA // Jetfire loop body; #if !defined(__CUDACC_RTC__) #pragma unroll 1 #endif for( int loop = params.loop_start; loop >= 0; --loop ) {{ JETFIRE_MAC_LOOP_HEADER #ifdef JETFIRE_ENABLED asm volatile (".pragma \"set knob SchedMemNoAlias=LDS+LDSM+LDGSTS\";\n" : : : "memory"); #endif #pragma unroll for( int ki_next = 1; ki_next <= XMMAS_K; ++ki_next ) { // The ki_next variable is "one-step ahead". The ki points to the current step. int ki = ( ki_next == XMMAS_K ) ? 0 : ki_next; jetfire::ifence(JETFIRE_FENCING_ENABLED); if( XMMAS_K > 1 && ki_next == XMMAS_K ) { if( STAGES == 1 ) { __syncthreads(); } jetfire::ifence(JETFIRE_FENCING_ENABLED); xmma::depbar(); __syncthreads(); jetfire::ifence(JETFIRE_FENCING_ENABLED); // Trigger the global loads on the 1st iteration of that core loop. if( ki_next == 1 ) { // Disable the loads for the last stages of the pipeline. if( loop < PREFETCH_STAGES ) { xmma::ldgdepbar(); } // Warp context switch halfway through if( ki_next - 1 == XMMAS_K / 2 ) { jetfire::warp_switch(); } first_loop_flag = false; int next_trsi = (trsi == (( STATIC_FILTER_SIZE ? FLT_T * FLT_R * FLT_S : params.filter_trs_per_cta )) - 1) ? 0 : trsi + 1; if( loop <= params.loop_residue ) { } #ifdef JETFIRE_ENABLED asm volatile (".pragma \"reset knob SchedMemNoAlias=LDS+LDSM+LDGSTS\";\n" : : : "memory"); #endif } // main loop end jetfire::ifence(JETFIRE_FENCING_ENABLED xmma::depbar(); __syncthrea xmma::ldgdepbar(); } // Warp context switch halfway through if( ki_next - 1 == XMMAS_K / 2 ) { jetfire::warp_sw if( XMMAS_K == 1 && ki_next == XMMAS_K ) { if( STAGES == 1 ) { __syncthreads(); first_loo } // end of trsi = if( loop <= params.loop } #ifdef JETFIRE_ENABLED asm volatile (".pragma \"reset knob SchedMemNoAlias=LDS+LDSM+LDGSTS\";\n" : : : "memory"); #endif } // cutlass::Array<%s, %d*%d> array_%d_%d; CUTLASS_PRAGMA_UNROLL for(int i=0; i 0) warp_mma_%d.transform(array_%d_%d[warp_mma_k %% 2], warp_transformed_frag_B[warp_mma_k %% 2], %s, array_%d_%d[warp_mma_k %% 2]); // mma %d logic if (warp_mma_k > 0) warp_mma_%d.transform(array_%d_%d[warp_mma_k %% 2], warp_transformed_frag_B[warp_mma_k %% 2], %s, array_%d_%d[warp_mma_k %% 2]); warp_mma_%d(array_%d_%d, array_%d_%d[warp_mma_k %% 2], warp_transformed_frag_B[warp_mma_k %% 2], array_%d_%d, true); // mma %d logic warp_mma_%d.transform(array_%d_%d[0], warp_transformed_frag_B[0], %s, array_%d_%d[0]); // mma %d logic warp_mma_%d(array_%d_%d, array_%d_%d, array_%d_%d[warp_mma_k %% 2], array_%d_%d); // mma %d logic // {$nv-internal-release begin} // Warp context switch halfway through if (warp_mma_k == MmaBase::kWarpGemmIterations / 2) { jetfire::warp_switch(); } // {$nv-internal-release end} warp_mma_%d(array_%d_%d, array_%d_%d[warp_mma_k %% 2], array_%d_%d[warp_mma_k %% 2], array_%d_%d); using MmaBase = cutlass::conv::threadblock::MmaFpropFusionBase; using MmaBase = cutlass::conv::threadblock::MmaWgradFusionBase; using MmaBase = cutlass::gemm::threadblock::MmaBase; // mma %d types%s using WarpTransformedFragmentA = typename MmaCore::MmaPolicy::Operator::TransformedFragmentA; using WarpTransformedFragmentB = typename MmaCore::MmaPolicy::Operator::TransformedFragmentB; // mma %d types using MmaBase = cutlass::gemm::threadblock::MmaBase; // mma %d includes #include "cutlass/gemm/threadblock/default_mma_core_sm75.h" #include "cutlass/gemm/threadblock/default_mma_core_sm80.h" // mma %d includes #include "cutlass/gemm/threadblock/default_mma_core_sm70.h" #include "cutlass/gemm/threadblock/default_mma_core_sm75.h"array_%d_%darray_%d_%d[warp_mma_k %% 2]array_%d_%d[0]6mma_opinput_a_indexinput_b_indexoob_typecompute_tileguid_aport_anum_bufferoob_declinput_a_portinput_b_port using Fragment_type_oob_marker_a_{parent_id} = xmma::Fragment; using Compute_tile_{parent_id} = xmma::Compute_tile_with_gmma_arf; using Compute_tile_{parent_id} = xmma::Compute_tile_with_gmma; // mma_op {guid} types for xmma backend using Fragment_type_a_{parent_id} = Smem_tile_{input_a_index}::Fragment; using Fragment_type_b_{parent_id} = Smem_tile_{input_b_index}::Fragment;{oob_type}{compute_tile} // mma_op {guid} types for xmma backend{oob_type} using Fragment_type_{guid} = xmma::Fragment_accumulator; //No mma_op includes for xmma backend so far // mma_op {guid} code for hopper compute compute_tile_{parent_id}.compute(reinterpret_cast(reg_{guid_a}_{port_a}[XMMAS_K - 1]), (XMMAS_K - 1), true, true); compute_tile_{parent_id}.increment_gmma_desc_group(); // mma_op {guid} code for hopper compute compute_tile_{parent_id}.compute(reinterpret_cast(reg_{guid_a}_{port_a}[ki]), ki, true); Fragment_type_oob_marker_a_{parent_id} oob_marker_a[{num_buffer}][XMMAS_M]; // mma_op {guid} decls for xmma backend{oob_decl} Fragment_type_{guid} reg_{guid}_{port}[XMMAS_M][XMMAS_N]; xmma::helpers::clear(reg_{guid}_{port}); if (ki == (XMMAS_K - 1)) {{ xmma::warpgroup_arrive(); compute_tile_{parent_id}.compute(reinterpret_cast(reg_{guid_a}_{port_a}[ki]), ki, true, true); compute_tile_{parent_id}.increment_gmma_desc_group(); }} else {{ xmma::warpgroup_arrive(); compute_tile_{parent_id}.compute(reinterpret_cast(reg_{guid_a}_{port_a}[ki]), ki, true); }} if (ki == (XMMAS_K - 1)) {{ compute_tile_{parent_id}.compute(ki, true, true); compute_tile_{parent_id}.increment_gmma_desc_group(); }} else {{ compute_tile_{parent_id}.compute(ki, false); }} // mma_op {guid} code for xmma backend{core_code} // mma_op {guid} code for xmma backend xmma::warpgroup_arrive(); #pragma unroll for (int ki = 0; ki < XMMAS_K; ++ki) {{ if (ki == XMMAS_K / 2) {{ buffer_head_next = (buffer_head_next < buffers_ab - 1) ? (buffer_head_next + 1) : 0; if (!is_last) {{ is_wait_complete = buffer_full_barriers.bar_peek( buffer_head_next, phase_bit ); }} }} if (ki <= GMMA_STAGES - 1) {{ compute_tile_{parent_id}.compute(ki, false); if (ki == (GMMA_STAGES - 1)) {{ #if (CUDACC_VERSION >= 120) xmma::warpgroup_wait<1>(); #else xmma::warpgroup_wait<0>(); #endif if (TMA_MULTICAST_ENABLED) {{ buffer_empty_barriers.bar_arrive_dsmem(buffer_head, buffer_empty_notify_thread); }} else {{ buffer_empty_barriers.bar_arrive_normal(buffer_head); }} buffer_head = (buffer_head < (buffers_ab - 1)) ? (buffer_head + 1) : 0; }} }} else {{{core_code} }} }} // for(int ki = 0; ki < XMMAS_K; ++ki) // mma_op {guid} code for xmma backend xmma::warpgroup_arrive(); #pragma unroll for (int ki = 0; ki < XMMAS_K; ++ki) {{{core_code} }} // for(int ki = 0; ki < XMMAS_K; ++ki) // mma_op {guid} code for xmma backend auto proper_zero = typeConvert<{data_type}>(0.0f); #pragma unroll for (int ii = 0; ii < XMMAS_M; ++ii) {{ #pragma unroll for (int i = 0; i < Fragment_type_a_{pipeline_guid}::NUM_ELTS; ++i) {{ if (0 == oob_marker_a[(ki_next-1)&1][ii].elt(i)) reg_{input_a_index}_{input_a_port}[(ki_next-1)&1][ii].elt(i) = proper_zero; }} }} // mma_op {guid} code for xmma backend xmma::helpers::gemm(reg_{guid}_{c_port}, reinterpret_cast(reg_{input_a_index}_{input_a_port}[(ki_next-1)&1]), reinterpret_cast(reg_{input_b_index}_{input_b_port}[(ki_next-1)&1]), first_loop_flag); //No mma_op includes for xmma b // mma {guid} types // mma {guid} includes // mma {guid} declsgemm_numberinput_0_array_idinput_1_array_idsmem_b_2glss_mma_b_guidsmem_tile_2glss_mma_a_guid // Declare the accumulators for the {gemm_number} gemm. fmha::Fragment_accumulator acc_o_{guid}[Mma_tile_o{gemm_number}::MMAS_M][Mma_tile_o{gemm_number}::MMAS_N]; fmha::Clear_accumulator::apply(acc_o_{guid}); // mma {guid} logic fmha::Clear_accumulator::apply(acc_o_{guid}); // Do this part of O = P^T * V^T. #pragma unroll for( int ki = 0; ki < Mma_tile_o{gemm_number}::MMAS_K; ++ki ) {{ fmha::gemm(acc_o_{guid}, frag_p_{input_0_array_id}[ki], frag_b_{input_1_array_id}[ki]); }} // mma {guid} logic fmha::Clear_accumulator::apply(acc_o_{guid}); // Do this part of P^T = (Q * K^T)^T. #pragma unroll for( int ki = 1; ki < Mma_tile_o{gemm_number}::MMAS_K; ++ki ) {{ // Trigger the load from shared memory for the next series of Q values. smem_a_2.load(frag_a_{input_0_array_id}[ki & 1], ki); // Do the math for the values already in registers. fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[(ki - 1) & 1], frag_b_{input_1_array_id}[(ki - 1)]); }} // Do the final stage of math. {{ int ki = Mma_tile_o{gemm_number}::MMAS_K; fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[(ki - 1) & 1], frag_b_{input_1_array_id}[(ki - 1)]); }} // WAR for bug 32385935 __syncthreads(); // mma {guid} logic fmha::Clear_accumulator::apply(acc_o_{guid}); // Do this part of O = P^T * V^T. dQ = dP x dK. #pragma unroll for( int ki = 1; ki < Mma_tile_o3::MMAS_K; ++ki ) {{ // Trigger the load from shared memory for the next series of K values. smem_b_{glss_mma_b_guid}.load(frag_b_{input_1_array_id}[ki & 1], ki); // Do the math for the values already in registers. fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[ki - 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // Do the final stage of math. {{ int ki = Mma_tile_o3::MMAS_K; fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[ki - 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // mma {guid} logic // Calculate dK using dP and Q #pragma unroll for( int ki = 1; ki < Mma_tile_o4::MMAS_K; ++ki ) {{ // Trigger the load from shared memory for the next series of Q values. smem_b_t_{glss_mma_b_guid}.load(frag_b_{input_1_array_id}[ki & 1], ki); // Do the math for the values already in registers. fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[ki - 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // Do the final stage of math. {{ int ki = Mma_tile_o4::MMAS_K; fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[ki - 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // mma {guid} logic #pragma unroll for( int ki = 1; ki < Mma_tile_o2::MMAS_K; ++ki ) {{ // Trigger the load from shared memory for the next series of Q values. smem_b_{glss_mma_b_guid}.load(frag_b_{input_1_array_id}[ki & 1], ki); // Do the math for the values already in registers. fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[ki - 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // Do the final stage of math. {{ int ki = Mma_tile_o2::MMAS_K; fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[ki - 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // mma {guid} logic // Do the final stage of math. {{ int ki = Mma_tile_o1::MMAS_K; fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[(ki - 1) & 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // mma {guid} logic fmha::Clear_accumulator::apply(acc_o_{guid}); // Do this part of P^T = (Q * K^T)^T. #pragma unroll for( int ki = 1; ki < Mma_tile_o1::MMAS_K; ++ki ) {{ // Trigger the load from shared memory for the next series of Q values. smem_a_{glss_mma_a_guid}.load(frag_a_{input_0_array_id}[ki & 1], ki); smem_b_{glss_mma_b_guid}.load(frag_b_{input_1_array_id}[ki & 1], ki); // Do the math for the values already in registers. fmha::gemm(acc_o_{guid}, frag_a_{input_0_array_id}[(ki - 1) & 1], frag_b_{input_1_array_id}[(ki - 1) & 1]); }} // mma pipeline %d includes #include "cutlass/gemm/gemm.h" #include "cutlass/conv/convolution.h" #include "cutlass/arch/memory.h" #include "cutlass/conv/threadblock/threadblock_swizzle.h" // mma pipeline %d end pre-scope%s: __pos (which is %zu) > this->size() (which is %zu)if (start_r < convolution_size.R && start_s < convolution_size.S) // mma pipeline %d scope %s { // mma pipeline %d types /// Number of warps present using WarpCount = cutlass::gemm::GemmShape< %d / %d, %d / %d, %d >; /// Size of a threadblock-scoped access static int const kAccessSizeInBits = 128; static int const kWarpThreadArrangementContiguousA = %d / (kAccessSizeInBits / cutlass::sizeof_bits<%s>::value); static int const kWarpThreadArrangementStridedA = 32 / kWarpThreadArrangementContiguousA; using IteratorThreadMapA = cutlass::transform::PitchLinearWarpRakedThreadMap< cutlass::layout::PitchLinearShape<%d, %d>, WarpCount::kCount * 32, cutlass::layout::PitchLinearShape, kAccessSizeInBits / cutlass::sizeof_bits<%s>::value>; using SmemLayoutA = cutlass::layout::RowMajor%sTensorOpMultiplicandCrosswise< cutlass::sizeof_bits<%s>::value, %d>; using IteratorThreadMapA = cutlass::transform::PitchLinearWarpRakedThreadMap< cutlass::layout::PitchLinearShape<%d, %d>, WarpCount::kCount * 32, cutlass::layout::PitchLinearShape< 8, 4>, kAccessSizeInBits / cutlass::sizeof_bits<%s>::value>; using SmemLayoutA = cutlass::layout::ColumnMajor%sTensorOpMultiplicandCongruous< cutlass::sizeof_bits<%s>::value%s>; using IteratorThreadMapB = cutlass::transform::PitchLinearWarpRakedThreadMap< cutlass::layout::PitchLinearShape<%d, %d>, WarpCount::kCount * 32, cutlass::layout::PitchLinearShape< 8, 4>, kAccessSizeInBits / cutlass::sizeof_bits<%s>::value>; using SmemLayoutB = cutlass::layout::RowMajor%sCongruous< cutlass::sizeof_bits<%s>::value%s>; static int const kWarpThreadArrangementContiguousB = %d / (kAccessSizeInBits / cutlass::sizeof_bits<%s>::value); static int const kWarpThreadArrangementStridedB = 32 / kWarpThreadArrangementContiguousB; using IteratorThreadMapB = cutlass::transform::PitchLinearWarpRakedThreadMap< cutlass::layout::PitchLinearShape<%d, %d>, WarpCount::kCount * 32, cutlass::layout::PitchLinearShape, kAccessSizeInBits / cutlass::sizeof_bits<%s>::value>; using SmemLayoutB = cutlass::layout::ColumnMajor%sTensorOpMultiplicandCrosswise< cutlass::sizeof_bits<%s>::value, %d>; using LayoutA = cutlass::layout::%s; using LayoutB = cutlass::layout::%s; using LayoutC = cutlass::layout::%s; using MmaCore = typename cutlass::gemm::threadblock::DefaultMmaCore< cutlass::gemm::GemmShape<%d, %d, %d>, cutlass::gemm::GemmShape<%d, %d, %d>, cutlass::gemm::GemmShape<%d, %d, %d>, %s, LayoutA, %s, LayoutB, %s, LayoutC, cutlass::arch::OpClassTensorOp%s>; // mma pipeline %d decls int gemm_k_iterations = cutlass::conv::implicit_gemm_k_iterations(cutlass::conv::Operator::k%s, %d, convolution_size); %s ThreadblockSwizzle threadblock_swizzle; cutlass::gemm::GemmCoord grid_tiled_shape = threadblock_swizzle.get_tiled_shape( cutlass::conv::Operator::kDgrad, convolution_size, {{ {threadblockM}, {threadblockN}, {threadblockK} }}, convolution_size.split_k_slices); int log_tile = threadblock_swizzle.get_log_tile(grid_tiled_shape); cutlass::gemm::GemmCoord threadblock_tile_idx = threadblock_swizzle.get_tile_offset(log_tile); if (grid_tiled_shape.m() <= threadblock_tile_idx.m() || grid_tiled_shape.n() <= threadblock_tile_idx.n()) {{ return; }} int tile_m_per_filter = strided_dgrad_tile_m_per_filter(convolution_size, {threadblockM}); int filter_tile_m = (threadblock_tile_idx.m() / tile_m_per_filter); // The subsequent fast_divmod() operations are equivalent to the following logical computation: // int start_r = filter_tile_m / (convolution_size.stride_w); // int start_s = filter_tile_m % (convolution_size.stride_w); cutlass::FastDivmod stride_h_divmod(convolution_size.stride_h); cutlass::FastDivmod stride_w_divmod(convolution_size.stride_w); int start_r, start_s; stride_w_divmod(start_r, start_s, filter_tile_m); // mma pipeline {guid} decls int gemm_k_iterations = (({problem_descriptor}[2])/{cta_k}) / gridDim.z; int gemm_k_size = gemm_k_iterations * {cta_k}; // Problem size is a function of threadblock index in the K dimension int problem_size_k; if (blockIdx.z + 1 == gridDim.z) {{ problem_size_k = {problem_descriptor}[2]; }} else {{ problem_size_k = (blockIdx.z + 1) * gemm_k_size; }} // Compute threadblock-scoped matrix multiply-add gemm_k_iterations = (problem_size_k - (blockIdx.z * gemm_k_size) + {cta_k} - 1) / {cta_k}; // mma pipeline %d decls int gemm_k_iterations = (%s[2] + %d - 1)/%d; int thread_idx = (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x; int warp_idx = thread_idx/32; //2*threadIdx.z + threadIdx.y; int warp_idx_mn = warp_idx %% (WarpCount::kM * WarpCount::kN); int warp_idx_k = warp_idx / (WarpCount::kM * WarpCount::kN); int warp_idx_m = warp_idx_mn %% WarpCount::kM; int warp_idx_n = warp_idx_mn / WarpCount::kM; int tile_offset_k = MmaBase::kWarpGemmIterations * warp_idx_k; if(!(blockIdx.x < {max_block_M} && blockIdx.y < {max_block_N} && blockIdx.z < {max_block_K} )) {{ return; }} // mma pipeline %d logic // {$nv-internal-release begin} #if CUDA_PTX_KNOB_DISABLE_IMPLICIT_MEM_DESC_ENABLED // This knob avoids the use of L2 Descriptor. asm volatile(".pragma \"global knob DisableImplicitMemDesc\";\n" : : : "memory"); #endif #if CUTLASS_AMPERE_256B_SECTOR_PROMOTION // This knob avoids the use of L2 Descriptor. asm volatile(".pragma \"global knob sectorpromotion=256\";\n" : : : "memory"); #else asm volatile(".pragma \"global knob sectorpromotion=128\";\n" : : : "memory"); asm volatile(".pragma \"global knob HoistLate=2\";\n" : : : "memory"); #endif // {$nv-internal-release end} // mma pipeline %d end scope } // mma pipeline {guid} split-k scope {{ const int elts_in_128_bits = 128/cutlass::sizeof_bits<{accum_array_data_type}>::value; cutlass::Array<{accum_array_data_type}, elts_in_128_bits> fragment; CUTLASS_PRAGMA_UNROLL for (int index = 2; index < gridDim.z + 1; index *= 2) {{ // mma pipeline {guid} types int block_idx = blockIdx.y * gridDim.x + blockIdx.x; int reversed_block_idx = gridDim.z - blockIdx.z - 1; int write_idx = reversed_block_idx - (reversed_block_idx % index) + (index / 2); write_idx = gridDim.z - write_idx - 1; int semaphore_idx = block_idx * gridDim.z + write_idx; cutlass::Semaphore semaphore({semaphore_param} + semaphore_idx, threadIdx.x); // Fetch the synchronization lock initially but do not block. semaphore.fetch();(({accum_array_data_type}*){workspace_port}) + (((blockIdx.x*gridDim.y + blockIdx.y)*gridDim.z + k)*blockDim.x + threadIdx.x)*{array_elements_1}*{array_elements_2} // Wait on the semaphore - this latency may have been covered by iterator construction if (reversed_block_idx % index == index / 2) {{ float4 const *fragment_pointer = reinterpret_cast(array_{accum_array_guid}_{accum_array_port}.data()); const int k = blockIdx.z; float4 *memory_pointer = reinterpret_cast({workspace_param}); CUTLASS_PRAGMA_UNROLL for(int i=0; i((*fragment_pointer), (void *)&memory_pointer[0], true); fragment_pointer++; memory_pointer++; }} semaphore.release(1); }} // mma pipeline {guid} logic if (reversed_block_idx % index == 0) {{ const int k = write_idx; semaphore.wait(1); float4 *memory_pointer = reinterpret_cast({workspace_param}); CUTLASS_PRAGMA_UNROLL for(int i=0; i, 16>(fragment, (void *)memory_pointer, true); CUTLASS_PRAGMA_UNROLL for(int elt=0; elt(); __syncthreadmainloop_code } }afterloop_code// strided_dgrad_params_xmmaStrided_grid_constant_paramsGrid_constant_paramsgrid_typeparams_typecomment_1comment_2smem_barrier_sizexmma::half_txmma::float_bf16_tgmma_mgmma_ngmma_karf_configin_typeout_typein_type_0in_type_1arch_traitscga_mcga_nsmem_buffersenable_segment_kthreads_per_persistent_tilexmma::Ampere_hmma_fp32_traitsxmma::Ampere_hmma_fp16_traitsfilters_constantsNAMED_BARRIER_ALLOC_ARF_BSMEMqmma_counts_before_updateqgmma_counts_before_updatetile.bidz()!is_one_itersegmentk_iters_minus1 > 0params.delta_img_head(params.loop_start + 1)(loop_num_pre % buffers_ab)loop_num_prebarrier_nameload_a_tensor_codeload_b_tensor_codemove_next_tile_a_codemove_next_tile_b_codecta_tile_load_donetile_a_idmma_countarf_move_buffer_codebuffer_full_conditionepilogue_core_codecnt_addbuffer_head_add //No mma_pipeline_op includes for xmma backend so far if (!empty_mainloop) {{{compute_code} if (IS_FP8_KERNEL_2XACC && (NUM_MATH_WARP_GROUP==1)) {{ asm volatile (".pragma \"reset knob WaitReqForEndGroup=2147483647\";\n" : : : "memory"); }} }}{mainloop_code} // mma_pipeline_op {guid} code for xmma backend constexpr bool JETFIRE_FENCING_ENABLED = true; int trsi = 0; //Kernel_traits::initialize_filter_position( params ); enum {{ USE_LDGSTS = true }}; //{{ Gmem_tile_a::USE_LDGSTS || Gmem_tile_b::USE_LDGSTS }}; // // S T A R T T H E P I P E L I N E // const int loop_count = params.loop_start + 1; const int loop_to_enter_residue = params.loop_start - (params.loop_residue - PREFETCH_STAGES); xmma::ldgdepbar(); if (ii == loop_to_enter_residue) { for( int ii = loop_count; ii < PREFETCH_STAGES; ++ii ) {{ xmma::ldgdepbar(); }} xmma::depbar(); __syncthreads(); if(XMMAS_K > 1) {{ } bool first_loop_flag = true; int ki = -1; #pragma unroll for (ki = 0; ki < XMMAS_K - 1; ++ki) { xmma::warpgroup_arrive(); } xmma::warpgroup_wait<2>(); if (segmentk_iters_minus1 > 0) { ki = -1; if (!is_wait_complete) { buffer_full_barriers.bar_wait(buffer_head_next, phase_bit); } } xmma::warpgroup_arrive(); xmma::warpgroup_wait<2>(); if (segmentk_iters_minus1 > 0) { #pragma unroll for (int ki = 0; ki < XMMAS_K - 1; ++ki) { if (ki == 0) { cnt = cnt < ( 2 * buffers_ab - 1 ) ? ( cnt + 1 ) : 0; phase_bit = cnt < buffers_ab ? 0 : 1; } xmma::warpgroup_wait<2>(); if (ki == 1) { if (TMA_MULTICAST_ENABLED) { buffer_empty_barriers.bar_arrive_dsmem(buffer_head, buffer_empty_notify_thread); } else { buffer_empty_barriers.bar_arrive_normal(buffer_head); } buffer_head = (buffer_head < (buffers_ab - 1)) ? (buffer_head + 1) : 0; } } xmma::warpgroup_arrive(); xmma::warpgroup_wait<2>(); } if (!empty_mainloop) {{{compute_code} if(IS_FP8_KERNEL_2XACC && (NUM_MATH_WARP_GROUP==1)) {{ asm volatile (".pragma \"reset knob WaitReqForEndGroup=2147483647\";\n" : : : "memory"); }} }}{mainloop_code}{afterloop_code} //mma_pipeline_op {guid} decls for xmma backend asm volatile(".pragma \"global knob HoistLate=2\";\n" : : : "memory"); asm volatile(".pragma \"global knob ForceLateCommoning=1\";\n" : : : "memory"); asm volatile(".pragma \"global knob EnableUR16Bit=1\";\n" : : : "memory"); //mma_pipeline_op {guid} decls for xmma backend asm volatile (".pragma \"set knob SchedResBusyOp=SYNCS_BASIC,2\";\n" : : : "memory"); asm volatile(".pragma \"global knob NestedHoistInnerThreshold=200\";\n" : : : "memory"); asm volatile(".pragma \"global knob NestedHoistOuterThreshold=200\";\n" : : : "memory"); // https://jirasw.nvidia.com/browse/CFK-8078 if (IS_FP8_KERNEL_2XACC) {{ asm volatile(".pragma \"global knob HoistLate=2\";\n" : : : "memory"); asm volatile(" .pragma \"global knob URFPromoteJtCond=1\";\n"); asm volatile(" .pragma \"global knob ForceLateCommoning=1\";\n"); asm volatile(" .pragma \"global knob RegAllocMacVregAllocOrder=0\";\n"); asm volatile(" .pragma \"global knob ForceTMAMovesContiguousReg=1\";\n"); asm volatile(" .pragma \"global knob URFConvertEachProfitableCandidate=1\";\n"); }} else {{ asm volatile(".pragma \"global knob HoistLate=3\";\n" : : : "memory"); }} typedef typename xmma::{grid_type} WAR_GCC_TYPE; typedef typename fort::{params_type} WAR_PARA_TYPE; {comment_1}const WAR_GCC_TYPE& gc_params = *(reinterpret_cast(__cvta_grid_constant_to_generic(OFFSET_WAR(WAR_PARA_TYPE, gc_params) + 48))); {comment_2}const WAR_GCC_TYPE& gc_params = params.gc_params; const int32_t buffers_ab = params.buffers_a; uint32_t warpgroup_thread_zero = tidx == 0 || (tidx - NUM_DMA_THREADS) % NUM_MATH_THREADS_PER_WARP_GROUP == 0; char* smem_{guid} = &smem_{shared_id}[0]; char* smem_barriers_temp = smem_{guid}; char* epi_smem_temp = smem_{guid} + ALIGNED_BARRIERS_AND_BUFFERS_SIZE_IN_BYTES; char* epi_smem_{guid} = xmma::align_1024(epi_smem_temp); char* tile_buffer_base = &smem_{guid}[SMEM_BARRIER_SIZE_IN_BYTES]; char* loop_num_smem_{guid} = &epi_smem_{guid}[EPILOGUE_SIZE_IN_BYTES - INDEX_AND_LOOP_NUM_BUFFER_SIZE]; smem_{guid} += (epi_smem_{guid} - smem_{guid} + EPILOGUE_SIZE_IN_BYTES); char* smem_{guid} = &smem_{shared_id}[0]; char* smem_barriers_temp = smem_{guid}; char* epi_smem_temp = smem_{guid} + {smem_barrier_size}; int* segmentk_smem_{guid}= (int *)(epi_smem_temp - 4 * sizeof(int)); char* epi_smem_{guid} = xmma::align_1024(epi_smem_temp); char* tile_buffer_base = &smem_{guid}[512]; smem_{guid} += (epi_smem_{guid} - smem_{guid} + {smem_epilogue_size}); uint64_t *smem_barriers_{guid} = reinterpret_cast(smem_barriers_temp); uint64_t* tile_id_barrier_bar_base = &smem_barriers_{guid}[buffers_ab * 2 + 1]; xmma::Arrive_wait buffer_full_barriers(&smem_barriers_{guid}[0]); xmma::Arrive_wait buffer_empty_barriers(&smem_barriers_{guid}[buffers_ab]); if (warp_id < 8 && elect_one) {{ int arrive_cnt = warp_id < 4 ? (NUM_DMA_WARPS - 1) * Cta_tile_{guid}::THREADS_PER_WARP + NUM_MATH_THREADS_PER_WARP_GROUP : Cta_tile_{guid}::THREADS_PER_WARP; xmma::bar_create(&tile_id_barrier_bar_base[warp_id], arrive_cnt); }} if (elect_one) {{ const int32_t NUM_ITER = buffers_ab / NUM_WARPS; const int32_t NUM_TAIL = buffers_ab - NUM_ITER * NUM_WARPS; int32_t expected_arvcnt = TMA_MULTICAST_ENABLED ? (params.cluster_m + params.cluster_n - 1) * Cta_tile_{guid}::WARP_GROUPS_PER_CTA : Cta_tile_{guid}::THREADS_PER_CTA; for(int32_t i = 0; i < NUM_ITER; i++) {{ xmma::bar_create(&smem_barriers_{guid}[warp_id + i * NUM_WARPS], 1); xmma::bar_create(&smem_barriers_{guid}[warp_id + i * NUM_WARPS + buffers_ab], expected_arvcnt); }} if(warp_id < NUM_TAIL) {{ xmma::bar_create(&smem_barriers_{guid}[warp_id + NUM_ITER * NUM_WARPS], 1); xmma::bar_create(&smem_barriers_{guid}[warp_id + NUM_ITER * NUM_WARPS + buffers_ab], expected_arvcnt); }} }} Tile_distribution_lightweight_{guid} tile(params, TILE_ID_BUFFERS, NUM_MATH_WARP_GROUP, SEGMENTK_CODEGEN); Tile_distribution_persistent_{guid} tile(SEGMENTK_CODEGEN, params, blockIdx.x); //mma_pipeline_op {guid} decls for xmma backend char* smem_{guid} = &smem_{shared_id}[0];xmma::Hopper_hgmma_fp32_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false, {in_type}, {out_type}>xmma::Hopper_hgmma_fp16_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false>Invalid data_type/compute_type config!xmma::Hopper_qgmma_fp8_fp32_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false, {in_type_0}, {in_type_1}, {in_type_0}, {out_type}>xmma::Hopper_qgmma_fp8_fp16_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false, {in_type_0}, {in_type_1}, {in_type_0}, {out_type}>xmma::Hopper_hgmma_bf16_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false, ::xmma::float_bf16_t, {out_type}>xmma::Hopper_hgmma_tf32_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false>xmma::Hopper_igmma_int8_int32_traits<{gmma_m}, {gmma_n}, {gmma_k}, {arf_config}, false, int8_t, {out_type}>Not supported by FORT as of now // mma_pipeline_op {guid} types for xmma backend using Traits_{guid} = {arch_traits}; using Cta_tile_{guid} = typename Traits_{guid}::Cta_tile<{cta_m}, {cta_n}, {cta_k}, 1, 1, 1, 1>; using Cga_tile_{guid} = typename Traits_{guid}::Cga_tile<{cga_m}, {cga_n}, 1>; using Tile_traits_{guid} = typename Traits_{guid}::Tile_traits; using Xmma_tile_{guid} = typename Traits_{guid}::template Xmma_tile; using Tile_distribution_persistent_{guid} = xmma::Tile_distribution_persistent_segmentk_warp3; using Tile_distribution_lightweight_{guid} = xmma::Tile_distribution_persistent_segmentk_lightweight; dim3 cta_id_in_cga; if (Tile_traits_{guid}::USE_RUNTIME_CGA_DIM) cta_id_in_cga = xmma::ctaid_in_cga(); else cta_id_in_cga = xmma::ctaid_in_cga(); const bool is_first_cta_in_cga = cta_id_in_cga.x == 0 && cta_id_in_cga.y == 0 && cta_id_in_cga.z == 0; using Tile_distribution_persistent_{guid} = xmma::Tile_distribution_persistent_segmentk; dim3 cta_id_in_cga = xmma::ctaid_in_cga(); enum {{ XMMAS_M = Xmma_tile_{guid}::XMMAS_M }}; enum {{ XMMAS_N = Xmma_tile_{guid}::XMMAS_N }}; enum {{ XMMAS_K = Xmma_tile_{guid}::XMMAS_K }}; enum {{ STAGES = {stages} }}; enum {{ GMMA_STAGES = {gmma_stages} }}; enum {{ TILE_ID_BUFFERS = 4 }}; enum {{ TILE_ID_BARRIERS = 2 * TILE_ID_BUFFERS }}; static constexpr uint32_t MCAST_DIM_A = Tile_traits_{guid}::ALLOW_TMA_MULTICAST ? xmma::Prev_power_of_two::VALUE : 1; static constexpr uint32_t MCAST_DIM_B = Tile_traits_{guid}::ALLOW_TMA_MULTICAST ? xmma::Prev_power_of_two::VALUE : 1; static constexpr bool TMA_MULTICAST_ENABLED = (Tile_traits_{guid}::USE_RUNTIME_CGA_DIM ? Tile_traits_{guid}::ALLOW_TMA_MULTICAST : MCAST_DIM_A > 1) || (Tile_traits_{guid}::USE_RUNTIME_CGA_DIM ? Tile_traits_{guid}::ALLOW_TMA_MULTICAST : MCAST_DIM_B > 1); static constexpr bool TRAITS_USE_UTMALDG = true; static constexpr bool IS_LDGSTS_GEMM_KERNEL = false; constexpr bool SEGMENTK_CODEGEN = {enable_segment_k}; constexpr bool IS_FP8_KERNEL_2XACC = {is_2xacc}; enum {{ COPY_BYTES = (Cta_tile_{guid}::M + Cta_tile_{guid}::N) * Cta_tile_{guid}::K * (Traits_{guid}::BITS_PER_ELEMENT_A / 8) }}; enum {{ WARP_SPECIALIZED_CONFIG = ( Cta_tile_{guid}::WARP_GROUP_M > 1 ) || ( IS_LDGSTS_GEMM_KERNEL == true ) ? 1 : 2 }}; enum {{ NUM_DMA_WARP_GROUP = 1 }}; enum {{ NUM_MATH_WARP_GROUP = WARP_SPECIALIZED_CONFIG == 1 ? 1 : 2 }}; enum {{ NUM_MATH_WARPS_PER_WARP_GROUP = 8 / NUM_MATH_WARP_GROUP }}; enum {{ NUM_MATH_THREADS_PER_WARP_GROUP = NUM_MATH_WARPS_PER_WARP_GROUP * Cta_tile_{guid}::THREADS_PER_WARP }}; enum {{ NUM_DMA_WARPS = NUM_DMA_WARP_GROUP * Cta_tile_{guid}::WARPS_PER_WARP_GROUP }}; enum {{ NUM_DMA_THREADS = NUM_DMA_WARPS * Cta_tile_{guid}::THREADS_PER_WARP }}; enum {{ BYTES_PER_ELEMENT = Traits_{guid}::BITS_PER_ELEMENT_A / 8 }}; enum {{ WARP_GROUP_M_STRIDE_OFFSET = (Traits_{guid}::GMMA_M * Cta_tile_{guid}::K * Traits_{guid}::BITS_PER_ELEMENT_A) / 8 }}; enum {{ SMEM_BUFFERS = {smem_buffers} }}; static constexpr bool MULTICAST_ENABLED_AT_RUNTIME_a = true; static constexpr bool MULTICAST_ENABLED_AT_RUNTIME_b = true; static constexpr bool MULTICAST_ENABLED_AT_RUNTIME_a = Tile_traits_{guid}::USE_RUNTIME_CGA_DIM && ({cga_n} > 1); static constexpr bool MULTICAST_ENABLED_AT_RUNTIME_b = Tile_traits_{guid}::USE_RUNTIME_CGA_DIM && ({cga_m} > 1); static constexpr int THREADS_PER_PERSISTENT_TILE = {threads_per_persistent_tile}; static constexpr int NUM_WARPS = (THREADS_PER_PERSISTENT_TILE / 32); enum {{ ENABLE_REG_REALLOC = THREADS_PER_PERSISTENT_TILE > 256 }}; static const bool SKIP_HALF_DMA_WARPS =(TRAITS_USE_UTMALDG == true) && !Traits_{guid}::GMMA_A_RF; static const bool JETFIRE_FENCING_ENABLED = true; enum {{ BUFFERS_PER_SMEM_TILE_A = STAGES }}; enum {{ SMEM_BARRIER_SIZE_IN_BYTES = 512 }}; enum {{ ALIGNED_BARRIERS_AND_BUFFERS_SIZE_IN_BYTES = 1024 }}; enum {{ EPILOGUE_SIZE_IN_BYTES = 17408 }}; enum {{ NUM_STATIC_TILES = 2 }}; enum {{ TILES_PER_TILE_ID_GROUP = 2 }}; enum {{ BYTES_PER_TILE_ID_BUFFER = sizeof(int) * 5 }}; enum {{ SEGMENTK_SMEM_SIZE_IN_BYTES = 4 * sizeof(int) }}; enum {{ SMEM_TILE_ID_SIZE_IN_BYTES = TILE_ID_BUFFERS * BYTES_PER_TILE_ID_BUFFER }}; enum {{ INDEX_AND_LOOP_NUM_BUFFER_SIZE = 1024, INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER = INDEX_AND_LOOP_NUM_BUFFER_SIZE / TILE_ID_BUFFERS, LOOP_NUM_SIZE = sizeof(uint32_t), LOOP_NUM_OFFSET = INDEX_AND_LOOP_NUM_BUFFER_SIZE - LOOP_NUM_SIZE }};xmma::Ampere_hmma_tf32_traitsxmma::Ampere_imma_int8_int32_traitsxmma::Ampere_imma_int8_int32_traitsxmma::Ampere_hmma_bf16_traits<::xmma::float_bf16_t, ::xmma::float_bf16_t> using Input_related_{guid} = xmma::implicit_gemm::Input_related<0, 0, 0, false>; enum {{ FLT_T = Input_related_{guid}::FLT_T }}; enum {{ FLT_R = Input_related_{guid}::FLT_R }}; enum {{ FLT_S = Input_related_{guid}::FLT_S }}; enum {{ STATIC_FILTER_SIZE = Input_related_{guid}::STATIC_FILTER_SIZE }}; // mma_pipeline_op {guid} types for xmma backend using Traits_{guid} = {arch_traits}; using Cta_tile_{guid} = typename Traits_{guid}::Cta_tile<{cta_m}, {cta_n}, {cta_k}>; using Xmma_tile_{guid} = typename Traits_{guid}::template Xmma_tile; enum {{ XMMAS_M = Xmma_tile_{guid}::XMMAS_M }}; enum {{ XMMAS_N = Xmma_tile_{guid}::XMMAS_N }}; enum {{ XMMAS_K = Xmma_tile_{guid}::XMMAS_K }}; {filters_constants} enum {{ STAGES = {stages} }}; enum {{ PREFETCH_STAGES = xmma::Max::VALUE }}; const uint16_t nan_oob_fill_16 = 0x7EFFu;NAMED_BARRIER_ALLOC_ASMEM_BSMEM // mma_pipeline_op {guid} code for xmma backend __syncthreads(); // // S T A R T T H E P I P E L I N E // if( TMA_MULTICAST_ENABLED ) {{ xmma::cga_arrive(); }} // The branch on whether it is DMA warps (warp 0~3) or math warps (warp 4~11) if (warp_id >= NUM_DMA_WARPS) {{ // Cause compiler to put DMA warpgroup code at lower kernel memory offset }} // The operations for DMA warpgroup (consist of warp 0~3) else {{ if (ENABLE_REG_REALLOC) {{ xmma::reg_dealloc(); }} if (warp_id == 0 || warp_id == 2) {{ xmma::Named_barrier dma_wg_sync(7, 2 * Cta_tile_{guid}::THREADS_PER_WARP); tile.ptr_init(tile_id_barrier_bar_base, tile_buffer_base); tile.wait_and_load_cta_tile_info(); int32_t filter_pattern_index; xmma::lds(reinterpret_cast(filter_pattern_index), xmma::get_smem_pointer(loop_num_smem_{guid}) + 16 + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); int32_t num_trs_of_flt_ptn; xmma::lds(reinterpret_cast(num_trs_of_flt_ptn), xmma::get_smem_pointer(loop_num_smem_{guid}) + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); tile.template done_load_cta_tile_info(); // DemoteToPred knob improves DMA mainloop latency hiding; see NVBug 3354592 asm volatile(" .pragma \"global knob DemoteToPredBlockIdxLimit=25\";\n"); if (warp_id == 0 || warp_id == 2) {{ // Warps 1/3 will skip the DMA loop, but warp 3 will load the tile id. const uint32_t active_threads_in_dma = SKIP_HALF_DMA_WARPS ? 32 * 3 : NUM_DMA_THREADS; // The regular hw barrier (bar.sync) used for the tile_id arrive sync. xmma::Named_barrier tile_id_buffer_empty_arrive_sync(6, active_threads_in_dma); // Named barrier for DMA WG. xmma::Named_barrier dma_wg_sync( static_cast({barrier_name}::DMA_WG_SYNC), 2 * Cta_tile_{guid}::THREADS_PER_WARP); int buffer_head = 0; int cnt = 0; unsigned int phase_bit; const int total_tiles_cga = params.tiles_all / (params.cluster_m * params.cluster_n); if (TMA_MULTICAST_ENABLED) {{ xmma::cga_wait(); }} xmma::acqblk(); while (!tile.is_last()) {{ int loop = num_trs_of_flt_ptn * params.loop_count_k - 1; uint32_t loop_taken = loop >= 0; phase_bit = cnt < buffers_ab ? 1 : 0; int32_t segmentk_loop_last = 0; int32_t segmentk_loop_first = params.loop_start; tile.segmentk_loop_control(SEGMENTK_CODEGEN, segmentk_loop_last, segmentk_loop_first); int trsi = 0; int loop = segmentk_loop_first - segmentk_loop_last; // Number of iterations, minus 1. bool loop_taken = loop >= 0; phase_bit = cnt < buffers_ab ? 1 : 0; xmma::set_knob_SchedSyncsLatency_40(); xmma::set_knob_AdvancedSBDiffXBlockRdSb(); if (warp_id == 0) {{{load_a_tensor_code} }} if (warp_id == 2) {{{load_b_tensor_code} }} xmma::reset_knob_SchedSyncsLatency_40(); xmma::reset_knob_AdvancedSBDiffXBlockRdSb(); tile.wait_and_load_cta_tile_info(); xmma::lds(reinterpret_cast(filter_pattern_index), xmma::get_smem_pointer(loop_num_smem_{guid}) + 16 + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); xmma::lds(reinterpret_cast(num_trs_of_flt_ptn), xmma::get_smem_pointer(loop_num_smem_{guid}) + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); tile.template done_load_cta_tile_info(); tile.move(SEGMENTK_CODEGEN); if (!tile.is_last()) {{{move_next_tile_a_code}{move_next_tile_b_code} }} {cta_tile_load_done} dma_wg_sync.wait(); }} // while (!tile.is_last()) int is_wait_complete = 0; if (warp_id == 0) {{ #pragma unroll 1 for (int loop = 0; loop < buffers_ab; loop++) {{ phase_bit = cnt < buffers_ab ? 1 : 0; is_wait_complete = buffer_empty_barriers.bar_peek(buffer_head, phase_bit); if (!is_wait_complete) {{ buffer_empty_barriers.bar_wait(buffer_head, phase_bit); }} cnt = cnt < (2 * buffers_ab - 1) ? (cnt + 1) : 0; buffer_head = (buffer_head < buffers_ab - 1) ? (buffer_head + 1) : 0; }} }} }} // end if (warp_id == 0 || warp_id == 2) if (ENABLE_REG_REALLOC) {{ xmma::reg_dealloc(); }} else if (warp_id == 1) {{ tile.ptr_init(tile_id_barrier_bar_base, tile_buffer_base); tile.wait_and_load_cta_tile_info(); const uint32_t ab_shared_phase_bit = 0; while (!tile.is_last()) {{ uint4 data; xmma::lds(data, xmma::get_smem_pointer(loop_num_smem_{guid}) + 16 + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); int32_t filter_pattern_index = reinterpret_cast(data.x); uint32_t start_d = reinterpret_cast(data.y); uint32_t start_h = reinterpret_cast(data.z); uint32_t start_w = reinterpret_cast(data.w); int32_t num_trs_of_flt_ptn; xmma::lds(reinterpret_cast(num_trs_of_flt_ptn), xmma::get_smem_pointer(loop_num_smem_{guid}) + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); tile.template done_load_cta_tile_info(); tile.wait_and_load_cta_tile_info(); }} tile.template done_load_cta_tile_info(); }} // End warp_id == 1 else if (warp_id == 3) {{ Tile_distribution_persistent_{guid} tile(SEGMENTK_CODEGEN, params, blockIdx.x, tile_id_barrier_bar_base, tile_buffer_base, TILE_ID_BUFFERS, threadIdx.x, NUM_MATH_WARP_GROUP, NUM_STATIC_TILES, TILES_PER_TILE_ID_GROUP); uint32_t smem_ptr = xmma::get_smem_pointer(loop_num_smem_{guid}); int filter_pattern_index; int cta_m_in_filter_pattern; int num_trs_of_flt_ptn; int bidm, bidn; bool is_fully_oob_cga; #pragma unroll 1 for (int i = 0; i < 2; i++) {{ if (!tile.is_oob_cga_id()) {{ bidm = tile.bidm(); bidn = tile.bidn(); get_flt_ptn_index_and_valid_trs_num(params, bidm, filter_pattern_index, cta_m_in_filter_pattern, num_trs_of_flt_ptn); is_fully_oob_cga = cta_m_in_filter_pattern >= params.round_up_num_cta_tiles_per_flt_ptn[filter_pattern_index]; if (!is_fully_oob_cga) {{ int mcast_cta_idx = cta_id_in_cga.x; int nopq_base; if (Tile_traits_{guid}::USE_RUNTIME_CGA_DIM) {{ int mcast_dim = Tile_traits_{guid}::ALLOW_TMA_MULTICAST ? xmma::prev_pow2(params.cluster_n) : 1; nopq_base = cta_m_in_filter_pattern * Gmem_tile_{tile_a_id}::N_WITHOUT_MCAST + TMA_MULTICAST_ENABLED * mcast_cta_idx * Gmem_tile_{tile_a_id}::N_WITHOUT_MCAST / mcast_dim; }} else {{ nopq_base = cta_m_in_filter_pattern * Gmem_tile_{tile_a_id}::N_WITHOUT_MCAST + TMA_MULTICAST_ENABLED * mcast_cta_idx * Gmem_tile_{tile_a_id}::N; }} uint4 data_trs, data_dhw; uint4 data_nopq[Gmem_tile_{tile_a_id}::NUM_TILE_BLOCKS_COL]; precompute_per_flt_ptn(params, Gmem_tile_{tile_a_id}::TILE_BLOCK_COL, nopq_base, filter_pattern_index, cta_m_in_filter_pattern, num_trs_of_flt_ptn, data_trs, data_dhw, data_nopq); tile.broadcast_tile_info(smem_ptr, cta_m_in_filter_pattern, bidn, data_trs, data_dhw, data_nopq); }} }} else {{ tile.broadcast_tile_info(); }} if (i == 0) {{ tile.map_cga_id(); }} }} if (TMA_MULTICAST_ENABLED) {{ xmma::cga_wait(); }} while (!tile.is_last()) {{ if (is_first_cta_in_cga) {{ tile.template produce_cga_id(); tile.template broadcast_cga_id(); tile.template consume_cga_id(); }} else {{ tile.template produce_cga_id(); tile.template broadcast_cga_id(); tile.template consume_cga_id(); }} tile.map_cga_id(); if (!tile.is_oob_cga_id()) {{ int bidm = tile.bidm(); int bidn = tile.bidn(); get_flt_ptn_index_and_valid_trs_num(params, bidm, filter_pattern_index, cta_m_in_filter_pattern, num_trs_of_flt_ptn); is_fully_oob_cga = cta_m_in_filter_pattern >= params.round_up_num_cta_tiles_per_flt_ptn[filter_pattern_index]; if (!is_fully_oob_cga) {{ int mcast_cta_idx = cta_id_in_cga.x; int nopq_base; if (Tile_traits_{guid}::USE_RUNTIME_CGA_DIM) {{ int mcast_dim = Tile_traits_{guid}::ALLOW_TMA_MULTICAST ? xmma::prev_pow2(params.cluster_n) : 1; nopq_base = cta_m_in_filter_pattern * Gmem_tile_{tile_a_id}::N_WITHOUT_MCAST + TMA_MULTICAST_ENABLED * mcast_cta_idx * Gmem_tile_{tile_a_id}::N_WITHOUT_MCAST / mcast_dim; }} else {{ nopq_base = cta_m_in_filter_pattern * Gmem_tile_{tile_a_id}::N_WITHOUT_MCAST + TMA_MULTICAST_ENABLED * mcast_cta_idx * Gmem_tile_{tile_a_id}::N; }} uint4 data_trs, data_dhw; uint4 data_nopq[Gmem_tile_{tile_a_id}::NUM_TILE_BLOCKS_COL]; precompute_per_flt_ptn(params, Gmem_tile_{tile_a_id}::TILE_BLOCK_COL, nopq_base, filter_pattern_index, cta_m_in_filter_pattern, num_trs_of_flt_ptn, data_trs, data_dhw, data_nopq); tile.broadcast_tile_info(smem_ptr, cta_m_in_filter_pattern, bidn, data_trs, data_dhw, data_nopq); }} }} else {{ tile.broadcast_tile_info(); }} }} if (is_first_cta_in_cga) {{ tile.wait_final(); }} }} // End warp_id == 3 return; // End of the DMA warpgroup. }} buffer_head_next = buffer_head; //*******************Math warpgroup execution region*************************** // The operations for math warpgroups: there are two math warpgroups // math warpgroup 1: warp 4~7; // math warpgroup 2: warp 8~11; {{ // Compute the role (index) of the two math warpgroups. const int role = (warp_id - NUM_DMA_WARPS < Cta_tile_{guid}::WARPS_PER_CTA) ? 0 : 1; // The regular hw barrier (bar.sync) used for epilog swizzle. xmma::Named_barrier epilog_sync((role == 0 ? 4 : 5), Cta_tile_{guid}::THREADS_PER_CTA); //**************Mutex synchornization setup********************************** // The setup of mutex synchronization between the two math warpgroup. // The mutex synchonization is implemented using bar.arv and bar.sync pair (low cost) // The mutex synchronization on entering the mainloop between 2 math groups. // math warpgroup 1: |------loop-----| // math warpgroup 2: |-------loop---| xmma::Named_barrier loop_enter((role == 0 ? 0 : 1), Cta_tile_{guid}::THREADS_PER_CTA * 2); xmma::Named_barrier loop_leave((role == 0 ? 1 : 0), Cta_tile_{guid}::THREADS_PER_CTA * 2); // The mutex synchronization on entering the epilog between 2 math groups. // math warpgroup 1: |------epilog-----| // math warpgroup 2: |-------epilog---| xmma::Named_barrier epilog_enter((role == 0 ? 2 : 3 ), Cta_tile_{guid}::THREADS_PER_CTA * 2); xmma::Named_barrier epilog_leave((role == 0 ? 3 : 2 ), Cta_tile_{guid}::THREADS_PER_CTA * 2); //*******************Persistent CTA's Tile Setup******************************** const int tidx = (threadIdx.x - (NUM_DMA_WARPS * 32)) & (Cta_tile_{guid}::THREADS_PER_CTA - 1); int warp_group_id = NUM_MATH_WARP_GROUP > 1 ? 0 : (warp_id - NUM_DMA_WARPS) / Cta_tile_{guid}::WARPS_M_PER_GROUP; int buffer_empty_notify_thread; int buffer_head_next; int is_wait_complete; unsigned int phase_bit; bool is_first_tile = true; if (ENABLE_REG_REALLOC) {{ xmma::reg_alloc(); }} tile.ptr_init(tile_id_barrier_bar_base, tile_buffer_base, role); tile.wait_and_load_cta_tile_info(); uint4 data; xmma::lds(data, xmma::get_smem_pointer(loop_num_smem_{guid}) + 16 + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); int32_t filter_pattern_index = reinterpret_cast(data.x); uint32_t start_d = reinterpret_cast(data.y); uint32_t start_h = reinterpret_cast(data.z); uint32_t start_w = reinterpret_cast(data.w); int32_t num_trs_of_flt_ptn; xmma::lds(reinterpret_cast(num_trs_of_flt_ptn), xmma::get_smem_pointer(loop_num_smem_{guid}) + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); tile.template done_load_cta_tile_info(); int loop_num = num_trs_of_flt_ptn * params.loop_count_k; int loop_start = loop_num - 1; int loop_num_pre = loop_num; if (NUM_MATH_WARP_GROUP > 1) {{ if (role == 0) {{ if (tidx == 0) {{ xmma::sts(xmma::get_smem_pointer(loop_num_smem_{guid} + LOOP_NUM_OFFSET), (uint32_t)loop_num); }} epilog_leave.arrive(); }} if (role == 1) {{ epilog_enter.wait(); uint32_t tmp; xmma::lds(tmp, xmma::get_smem_pointer(loop_num_smem_{guid} + LOOP_NUM_OFFSET)); epilog_sync.wait(); loop_num_pre = (int)tmp; if (tidx == 0) {{ xmma::sts(xmma::get_smem_pointer(loop_num_smem_{guid} + LOOP_NUM_OFFSET), (uint32_t)loop_num); }} epilog_leave.arrive(); }} }} int buffer_head = role == 0 ? 0 : (loop_num_pre % buffers_ab); int cnt = role == 0 ? 0 : (loop_num_pre % (2 * buffers_ab)); int buffer_head = role == 0 ? 0 : params.delta_img_head; int cnt = role == 0 ? 0 : ((params.loop_start + 1) % (2 * buffers_ab)); Tile_distribution_persistent_{guid} tile(SEGMENTK_CODEGEN, params, blockIdx.x + role * params.tile_move_step); if (TMA_MULTICAST_ENABLED) {{ constexpr int MAX_CLUSTER_SIZE = Tile_traits_{guid}::MAX_MCAST_CLUSTER_SIZE; constexpr int THREAD_GRANULARITY = Cta_tile_{guid}::THREADS_PER_WARP_GROUP / MAX_CLUSTER_SIZE; int remote_cta_id = (threadIdx.x % Cta_tile_{guid}::THREADS_PER_WARP_GROUP) / THREAD_GRANULARITY; uint64_t remap_table = 0x369CF258BE147AD0ull; remote_cta_id = (remap_table >> (remote_cta_id * 4)) & 0xF; if (Tile_traits_{guid}::USE_RUNTIME_CGA_DIM) {{ xmma::FastDivisor cluster_n_fd {{params.cluster_n}}; buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < (params.cluster_n * params.cluster_m)) && xmma::gemm::is_same_row_or_col(cluster_n_fd, remote_cta_id, cta_id_in_cga); }} else {{ buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < Tile_traits_{guid}::CLUSTER_SIZE) && xmma::gemm::is_same_row_or_col(remote_cta_id, cta_id_in_cga); }} if (buffer_empty_notify_thread) {{ buffer_empty_barriers.set_bar_base_dsmem(remote_cta_id); }} }} xmma::FastDivisor cluster_n_fd {{params.cluster_n}}; buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < params.cluster_n * params.cluster_m) && xmma::gemm::is_same_row_or_col(cluster_n_fd, remote_cta_id, cta_id_in_cga); buffer_empty_barriers.set_bar_base_dsmem(remote_cta_id); }} Compute_tile_{guid} compute_tile_{guid}( a_smem_{guid} + warp_group_id * WARP_GROUP_M_STRIDE_OFFSET, b_smem_{guid}, buffers_ab, buffers_ab, buffer_head, buffer_head); if (IS_FP8_KERNEL_2XACC) {{ compute_tile_{guid}.set_acc_update_count(params.{mma_count}); }}{arf_move_buffer_code} while (!tile.is_last()) {{ // Cache output-tile idx for this tile int bidm = tile.bidm(); int bidn = tile.bidn(); int bidz = {bidz}; bool empty_mainloop = false; compute_tile_{guid}.clear(); if (NUM_MATH_WARP_GROUP > 1) {{ if (role != 0 || !is_first_tile) {{ loop_enter.wait(); }} }} if (loop_start >= 0) {{ bool is_one_iter = (loop_start == 0); int32_t segmentk_loop_last; int32_t segmentk_loop_first; tile.segmentk_loop_control(SEGMENTK_CODEGEN, segmentk_loop_last, segmentk_loop_first); int32_t segmentk_iters_minus1 = segmentk_loop_first - segmentk_loop_last; bool empty_mainloop = segmentk_iters_minus1 < 0; if (NUM_MATH_WARP_GROUP > 1) {{ if (role != 0 || !is_first_tile) {{ loop_enter.wait(); if (tile.segmentk_is_enabled(SEGMENTK_CODEGEN)) {{ int expected = buffer_head; int2 tmp; xmma::lds(tmp, xmma::get_smem_pointer(segmentk_smem_{guid})); buffer_head = tmp.x; cnt = tmp.y; if (expected != buffer_head) {{ compute_tile_{guid}.increment_N_gmma_desc_group(buffer_head); }} }} }} }} if (!empty_mainloop) {{ phase_bit = cnt < buffers_ab ? 0 : 1; is_wait_complete = buffer_full_barriers.bar_peek(buffer_head, phase_bit); if (!is_wait_complete) {{ buffer_full_barriers.bar_wait(buffer_head, phase_bit); }} cnt = cnt < (2 * buffers_ab - 1) ? (cnt + 1) : 0; phase_bit = cnt < buffers_ab ? 0 : 1; buffer_head_next = (buffer_head < buffers_ab - 1) ? (buffer_head + 1) : 0; if ({buffer_full_condition}) {{ is_wait_complete = buffer_full_barriers.bar_peek(buffer_head_next, phase_bit); }} if (IS_FP8_KERNEL_2XACC && (NUM_MATH_WARP_GROUP == 1)) {{ asm volatile (".pragma \"set knob WaitReqForEndGroup=2147483647\";\n" : : : "memory"); }} }} compute_tile_{guid}.clear(); int32_t segmentk_reduce_len; // Size of this reduction. int32_t segmentk_reduce_base; // Buffer number for first CTA in this reduction. int32_t segmentk_buffer; // Buffer number for this CTA. int32_t segmentk_counter; // Counter index for this reduction. if(NUM_MATH_WARP_GROUP > 1) {{ if (tidx == 0) {{ if (tile.segmentk_is_enabled(SEGMENTK_CODEGEN)) {{ int head = buffer_head; int count = cnt; if (!empty_mainloop) {{ head = (head < buffers_ab - 1) ? (head + 1) : 0; }} uint2 tmp; tmp.x = reinterpret_cast(head); tmp.y = reinterpret_cast(count); xmma::sts(xmma::get_smem_pointer(segmentk_smem_{guid}), tmp); }} }} }} tile.segmentk_epilogue_control(SEGMENTK_CODEGEN, segmentk_reduce_len, segmentk_reduce_base, segmentk_buffer, segmentk_counter); int64_t work_space_{guid} = xmma::ptr_to_int64({workspace}); void *buffers_gmem_{guid} = (void *)(work_space_{guid} + params.split_k.ALIGNMENT - work_space_{guid} % params.split_k.ALIGNMENT); int32_t *counters_data_{guid} = (int32_t *)((char*)buffers_gmem_{guid} + {segment_k_buffer_size}); segmentk_do_epilogue = fort::segmentk_store_and_maybe_reduce( SEGMENTK_CODEGEN, compute_tile_{guid}.acc_, segmentk_reduce_len, segmentk_reduce_base, segmentk_buffer, segmentk_counter, buffers_gmem_{guid}, counters_data_{guid}, &segmentk_smem_{guid}[2 + role], tidx, epilog_sync);segment_k_epilogue_control_code if (IS_FP8_KERNEL_2XACC) {{ if(compute_tile_{guid}.is_acc_update_needed()) {{ compute_tile_{guid}.update_accumulators(); }} }} bool segmentk_do_epilogue = true;{segment_k_epilogue_control_code} if (NUM_MATH_WARP_GROUP > 1) {{ loop_leave.arrive(); }} if (loop_start >= 0) {{ xmma::warpgroup_wait<0>(); if (TMA_MULTICAST_ENABLED) {{ buffer_empty_barriers.bar_arrive_dsmem(buffer_head, buffer_empty_notify_thread); }} else {{ buffer_empty_barriers.bar_arrive_normal(buffer_head); }} buffer_head = (buffer_head < buffers_ab - 1) ? (buffer_head + 1) : 0; }} if (tile.is_last()) {{ xmma::preexit(); }} segmentk_store_and_maybe_reduce_code xmma::warpgroup_wait<0>(); if (!empty_mainloop) {{ if (TMA_MULTICAST_ENABLED) {{ buffer_empty_barriers.bar_arrive_dsmem(buffer_head, buffer_empty_notify_thread); }} else {{ buffer_empty_barriers.bar_arrive_normal(buffer_head); }} buffer_head = (buffer_head < buffers_ab - 1) ? (buffer_head + 1) : 0; }}{segmentk_store_and_maybe_reduce_code} bool is_exiting_first = false; tile.move(SEGMENTK_CODEGEN); if(tile.is_last()) {{ xmma::preexit(); }} else {{ is_exiting_first = true; }} if(NUM_MATH_WARP_GROUP > 1) {{ tile.move(SEGMENTK_CODEGEN); }} if (tile.is_last() && is_exiting_first) {{ if (ENABLE_REG_REALLOC) {{ xmma::reg_alloc(); }} }} if (NUM_MATH_WARP_GROUP > 1) {{ epilog_enter.wait(); uint32_t tmp; xmma::lds(tmp, xmma::get_smem_pointer(loop_num_smem_{guid} + LOOP_NUM_OFFSET)); loop_num_pre = (int)tmp; epilog_sync.wait(); }} if (NUM_MATH_WARP_GROUP > 1) {{ if (role != 0 || !is_first_tile) {{ epilog_enter.wait(); }} }} if (segmentk_do_epilogue) {{{epilogue_core_code} }} loop_num = num_trs_of_flt_ptn * params.loop_count_k; loop_start = loop_num - 1; if (NUM_MATH_WARP_GROUP > 1) {{ if (tidx == 0) {{ xmma::sts(xmma::get_smem_pointer(loop_num_smem_{guid} + LOOP_NUM_OFFSET), (uint32_t)loop_num); }} }} if (NUM_MATH_WARP_GROUP > 1) {{ epilog_leave.arrive(); }} if (NUM_MATH_WARP_GROUP > 1) {{ cnt = cnt + {cnt_add}; }} cnt = cnt % (2 * buffers_ab); if (NUM_MATH_WARP_GROUP > 1) {{ buffer_head = buffer_head + {buffer_head_add}; }} buffer_head -= (buffer_head >= buffers_ab ? buffers_ab : 0); if (NUM_MATH_WARP_GROUP > 1) {{ compute_tile_{guid}.increment_N_gmma_desc_group(buffer_head); }}{arf_move_buffer_code} is_first_tile = false; }} }} //No mma_pipeline_op includes f for( int ii = 0, prefetch = min( loop_count, PREFETCH_STAGES ); ii < prefe xmma::ldgdepbar(); if (segmentk_iters_minus1 > 0) { if (!is_wait_complete) { buffer_full_barriers.bar_wait(buffer_head_next, phase_bit); } xmma::warpgr xmma::warpgroup_wait<2>(); // mma_pipeline op {guid} logic }} using Kernel_traits = FMHA_kernel_traits<{s_q}, {s_kv}, {d}, 16, 1, {warps}, 0x00u, {elem_type}, (fmha::MHA_QKV_Layout){layout}>; Fused_multihead_attention_fprop_params params = {fmha_descriptor}; // mma_pipeline op {guid} logic {{ // Shared memory. extern __shared__ char smem_[]; using Kernel_traits = FMHA_kernel_traits<{s_q}, {s_kv}, {d}, 16, 1, {warps}, 0x08u, {elem_type}, (fmha::MHA_QKV_Layout){layout}>; Fused_multihead_attention_fprop_params params = {fmha_descriptor}; // mma_pipeline op {guid} logic {{ // Shared memory. extern __shared__ char smem_[]; // mma_pipeline op {guid} logic {{ // Shared memory. extern __shared__ char smem_[]; // The description of the CTA tile for the 1st batched GEMM. using Cta_tile_o1 = typename Kernel_traits::Cta_tile_p; // The MMA tile for the 1st GEMM. using Mma_tile_o1 = fmha::Hmma_tile; // The description of the CTA tile for the 2nd batched GEMM. using Cta_tile_o2 = typename Kernel_traits::Cta_tile_o; // The MMA tile for the 2nd GEMM. using Mma_tile_o2 = fmha::Hmma_tile; // The description of the CTA tile for the 1st batched GEMM. using Cta_tile_o1 = typename Kernel_traits::Cta_tile_p; // The MMA tile for the 1st GEMM. using Mma_tile_o1 = fmha::Hmma_tile; // The description of the CTA tile for the 2nd batched GEMM. using Cta_tile_o2 = fmha::Cta_tile_extd; // The MMA tile for the 2nd GEMM. using Mma_tile_o2 = fmha::Hmma_tile; // mma_pipeline op {guid} types // The description of the CTA tile for the 3rd batched GEMM. using Cta_tile_p3 = typename Kernel_traits::Cta_tile_p; using Cta_tile_o3 = typename Kernel_traits::Cta_tile_o; // The MMA tile for the 3rd GEMM. using Mma_tile_p3 = fmha::Hmma_tile; using Mma_tile_o3 = fmha::Hmma_tile; // The description of the CTA tile for the 4th batched GEMM. using Cta_tile_o4 = fmha::Cta_tile_extd; // The MMA tile for the 4th GEMM. using Mma_tile_o4 = fmha::Hmma_tile; // The block index for the head. const int bidh = blockIdx.x; // The step index const int bidstep = blockIdx.y; // The thread index. const int tidx = threadIdx.x; // The description of the CTA tile for the 1st batched GEMM. using Cta_tile_o1 = typename Kernel_traits::Cta_tile_p; // The MMA tile for the 1st GEMM. using Mma_tile_o1 = fmha::Hmma_tile; enum {{ M = Mma_tile_o1::MMAS_M }}; enum {{ N = Mma_tile_o1::MMAS_N }};fmha_descriptorelem_type5no_op // output loop {guid} includes #include "cutlass/epilogue/threadblock/default_thread_map_tensor_op.h" #include "cutlass/epilogue/threadblock/default_thread_map_volta_tensor_op.h" //output loop {guid} logic CUTLASS_PRAGMA_UNROLL for (int iter = 0; iter < OutputTileIterator::kIterations; ++iter) {{ const int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); const int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); const int kRow_{guid} = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; //output loop {guid} logic }} // output loop {guid} end scope }} //output loop {guid} decls const int thread_idx = (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x; const int kColGroups_{guid} = OutputTileIterator::ThreadMap::Iterations::kColumn; const int kRowGroups_{guid} = OutputTileThreadMap::Iterations::kGroup; const int kColsPerGroup_{guid} = OutputTileIterator::ThreadMap::kElementsPerAccess; const int kRowsPerGroup_{guid} = OutputTileThreadMap::Iterations::kRow; const int totalElemCount_{guid}= kColGroups_{guid} * kColsPerGroup_{guid} * kRowGroups_{guid} * kRowsPerGroup_{guid}; cutlass::MatrixCoord thread_offset_{guid} = OutputTileIterator::ThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * {threadblock_offset_m}), (int)({threadblock_shape_N} * {threadblock_offset_n})); const int row_{guid} = thread_offset_{guid}.row(); const int col_{guid} = thread_offset_{guid}.column(); const int batch_{guid} = {batch_offset}; // output loop {guid} end pre-scope // output loop {guid} end pre-scope // output loop {guid} scope {{ // output loop {guid} types using ElementOutput = {output_data_type}; using OutputTileThreadMap = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}, {threadblock_shape_N}, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, {partitions_k}, ElementOutput, {elements_per_access} {element_output} >::Type; using OutputTileIterator = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< OutputTileThreadMap, ElementOutput >;num_reduction_ops_with_smem_usageenable_tmastgfp32_swizzling_enabled14output_loop_op //No shared_load_op includes for xmma backend so far {ind}int offsets_m_{guid}[STGS]; {ind}int offsets_n_{guid}[STGS]; {ind}int mask_{guid}[STGS];bidm * Cta_tile_{parent_id}::M(bidn % params.tiles_c) * Cta_tile_{parent_id}::N + (bidn/params.tiles_c) * params.cbidn * Cta_tile_{parent_id}::N // output_loop_op {guid} decls for xmma backend char* smem_{guid} = epi_smem_{parent_id}; const int warp_idx_{guid} = __shfl_sync(0xffffffff, (tidx / Cta_tile_{parent_id}::THREADS_PER_WARP) & (Cta_tile_{parent_id}::WARPS_M - 1), 0); const int row_{guid} = {cta_row_index_code}; const int col_{guid} = {cta_column_index_code};{offsets_and_mask_decls} const int tidx_pre_swizzle_m_{guid} = tidw / STG_THREADS_PER_TILE_N; const int tidx_pre_swizzle_n_{guid} = tidw % STG_THREADS_PER_TILE_N; // output_loop_op {guid} decls for xmma backend char* smem_{guid} = &smem_{shared_id}[0]; const int row_{guid} = bidm * Cta_tile_{guid}::M + Tile_distribution_{guid}::compute_row(tidx); const int col_{guid} = bidn * Cta_tile_{guid}::N + Tile_distribution_{guid}::compute_col(tidx) * NUM_ELTS_{guid};{offsets_and_mask_decls}offsets_m_{guid}[ii] + row_{guid} < {params_m} && offsets_n_{guid}[ii] + col_{guid} < {params_n} && ((bidn % params.tiles_c) * Cta_tile_{parent_id}::N + offsets_n_{guid}[ii]) < params.c {ind} int offset = -1; {ind} if({oob_check_code}) {{ {ind} offset = (offsets_m_{guid}[ii] + row_{guid}) * {params_n} + offsets_n_{guid}[ii] + col_{guid}; {ind} }} {ind} mask_{guid}[ii] = offset; {ind} offsets_m_{guid}[ii] = mi * ROWS_PER_XMMAS_M_ITERATION + xmmas_mi * Xmma_tile_{parent_id}::M_PER_XMMA_PER_CTA {ind} + warp_idx_{guid} * ROWS_PER_XMMA_PER_WARP + tidx_pre_swizzle_m_{guid}; {ind} offsets_n_{guid}[ii] = ni * TILE_N + ii * NUM_ELTS_{guid} * STG_THREADS_PER_TILE_N {ind} + tidx_pre_swizzle_n_{guid} * ELEMENT_PER_STG; {ind} offsets_m_{guid}[ii] = xmmas_mi * Xmma_tile_{parent_id}::M_PER_XMMA_PER_CTA {ind} + mi * Gmem_tile_{guid}::M_PER_WARP + tidw / STG_THREADS_PER_TILE_N {ind} {stg_stride} {ind} + warp_idx_{guid} * ROWS_PER_XMMA_PER_WARP; {ind} offsets_n_{guid}[ii] = {ni} * Gmem_tile_{guid}::TILE_N {ind} + (tidx % STG_THREADS_PER_TILE_N) * ELEMENT_PER_STG; {ind}tile.wait_and_load_cta_tile_info(); {ind}uint4 data; {ind}xmma::lds(data, xmma::get_smem_pointer(loop_num_smem_{parent_id}) + 16 {ind} + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); {ind}filter_pattern_index = reinterpret_cast(data.x); {ind}start_d = reinterpret_cast(data.y); {ind}start_h = reinterpret_cast(data.z); {ind}start_w = reinterpret_cast(data.w); {ind}xmma::lds(reinterpret_cast(num_trs_of_flt_ptn), xmma::get_smem_pointer(loop_num_smem_{parent_id}) {ind} + tile.get_buffer_idx() * INDEX_AND_LOOP_NUM_BUFFER_SIZE_PER_TILE_ID_BUFFER); {ind}tile.template done_load_cta_tile_info(); {ind}// output_loop_op {guid} code for xmma backend {ind}#pragma unroll {ind}for(int xmmas_mi = 0; xmmas_mi < XMMAS_M; ++xmmas_mi) {{ {ind} #pragma unroll {ind} for(int mi = 0; mi < ITERS_PER_XMMAS_M; ++mi) {{ {loop2_pre_code} {ind} #pragma unroll {ind} for(int ni = 0; ni < ITERS_N; ++ni) {{ {ind}#pragma unroll {ind}for(int ii = 0; ii < STGS; ++ii) {{{offsets_code}{mask_code} {ind}}} {loop_body_code} {ind} }} // for(int ni = 0; ni < ITERS_N; ++ni) {loop2_post_code} {ind} }} // for(int mi = 0; mi < ITERS_PER_XMMAS_M; ++mi) {ind}}} // for(int xmmas_mi = 0; xmmas_mi < XMMAS_M; ++xmmas_mi) {tmastg_tail_code}{loop_outside_code} #pragma unroll for(int ii = 0; ii < STGS; ++ii) {{ offsets_m_{guid}[ii] = Tile_distribution_{guid}::compute_offset(si, ii % Gmem_tile_{guid}::STGS_PER_COLUMN); offsets_n_{guid}[ii] = ii / Gmem_tile_{guid}::STGS_PER_COLUMN * Gmem_tile_{guid}::COLUMNS_PER_STG; int offset = -1; if(offsets_m_{guid}[ii] + row_{guid} < {params_m} && offsets_n_{guid}[ii] + col_{guid} < {params_n}) {{ offset = 1; }} mask_{guid}[ii] = offset; }} #pragma unroll for(int ii = 0; ii < STGS; ++ii) {{ offsets_m_{guid}[ii] = Tile_distribution_{guid}::compute_offset(si, ii % Gmem_tile_{guid}::STGS_PER_COLUMN); offsets_n_{guid}[ii] = ii / Gmem_tile_{guid}::STGS_PER_COLUMN * Gmem_tile_{guid}::COLUMNS_PER_STG; int offset = -1; if(offsets_m_{guid}[ii] + row_{guid} < {params_m} && offsets_n_{guid}[ii] + col_{guid} < {params_n}) {{ offset = (offsets_m_{guid}[ii] + row_{guid}) * {params_n} + offsets_n_{guid}[ii] + col_{guid}; }} mask_{guid}[ii] = offset; }} #pragma unroll for(int ii = 0; ii < STGS; ++ii) {{ offsets_m_{guid}[ii] = Tile_distribution_{guid}::compute_offset(si, ii % Gmem_tile_{guid}::STGS_PER_COLUMN); offsets_n_{guid}[ii] = ii / Gmem_tile_{guid}::STGS_PER_COLUMN * Gmem_tile_{guid}::COLUMNS_PER_STG; mask_{guid}[ii] = (row_{guid} + offsets_m_{guid}[ii]) < {params_m} && (col_{guid} + offsets_n_{guid}[ii]) < {params_n}; offsets_{guid}[ii] = Tile_distribution_{guid}::compute_offset( si, ii ); }} // output_loop_op {guid} code for xmma backend xmma::depbar(); #pragma unroll for(int si = 0; si < XMMAS_M_{guid}; ++si) {{{offsets_and_mask_code} __syncthreads();{loop_body_code} }} // end of for(int si = 0; si < XMMAS_M; ++si)xmma::gemm::Gmem_tile_gmma_epiloguexmma::implicit_gemm::fprop::Gmem_tile_gmma_c_txmma::implicit_gemm::dgrad::Gmem_tile_gmma_c_txmma::implicit_gemm::strided_dgrad_indexed::Gmem_tile_gmma_c_txmma::implicit_gemm::wgrad_indexed::Gmem_tile_gmma_c_txmma::Swizzle_hopper_tf32_epiloguefort::Swizzle_hopper_hgmma_fp32_epilogue // output_loop_op {guid} types for xmma backend using Fragment_type_c_{guid} = xmma::Fragment_gmma_c; using Gmem_tile_{guid} = {gmem_tile}; using Smem_tile_{guid} = {swizzle_smem_tile}; using Epilogue_traits_{guid} = xmma::Epilogue_traits; using Fragment_type_{guid} = xmma::Fragment_epilogue; enum {{ TILE_M = Epilogue_traits_{guid}::TILE_M }}; enum {{ TILE_N = Epilogue_traits_{guid}::TILE_N }}; enum {{ ITERS_PER_XMMAS_M = Xmma_tile_{parent_id}::M_PER_XMMA_PER_CTA / TILE_M }}; enum {{ FRAGMENTS_PER_TILE = TILE_M * TILE_N / Cta_tile_{parent_id}::THREADS_PER_CTA / Fragment_type_{guid}::NUM_ELTS }}; enum {{ ROWS_PER_XMMA_PER_WARP = Xmma_tile_{parent_id}::M_PER_XMMA_PER_CTA / Cta_tile_{parent_id}::WARPS_M }}; enum {{ ROWS_PER_XMMAS_M_ITERATION = ROWS_PER_XMMA_PER_WARP / ITERS_PER_XMMAS_M }}; enum {{ STG_THREADS_PER_TILE_N = 4 }}; enum {{ ROWS_PER_STG = 8 }}; enum {{ ELEMENT_PER_STG = 2 }}; enum {{ NUM_ELTS_{guid} = Fragment_type_{guid}::NUM_ELTS }}; enum {{ STGS = FRAGMENTS_PER_TILE }}; enum {{ BYTES_PER_STG = 16 }}; enum {{ BYTES_PER_STG = {Xmem_tile}_{guid}::BYTES_PER_STG }}; enum {{ BYTES_PER_ELEMENT = Traits_{parent_id}::BITS_PER_ELEMENT_C / 8 }}; enum {{ BYTES_PER_TILE_N = TILE_N * BYTES_PER_ELEMENT }}; enum {{ STG_THREADS_PER_TILE_N = BYTES_PER_TILE_N / BYTES_PER_STG }}; enum {{ ROWS_PER_STG = Cta_tile_{parent_id}::THREADS_PER_WARP / STG_THREADS_PER_TILE_N }}; enum {{ ELEMENT_PER_STG = BYTES_PER_STG / BYTES_PER_ELEMENT }}; enum {{ NUM_ELTS_{guid} = ELEMENT_PER_STG }}; enum {{ STGS = Gmem_tile_{guid}::M_PER_WARP / ROWS_PER_STG }}; enum {{ STGS = {Xmem_tile}_{guid}::STGS }}; enum {{ ITERS_N = Cta_tile_{parent_id}::N / (TILE_N * STGS) }}; enum {{ ITERS_N = xmma::Div_up::VALUE }};cta_row_index_codecta_column_index_codeoffsets_and_mask_decls(ni * STGS + ii)+ ii * ROWS_PER_STGparams_moob_check_codestg_strideloop_body_codeloop2_pre_codeloop2_post_codeloop_outside_codetmastg_tail_codeoffsets_and_mask_codeGmem_tileSmem_tilexmma::Swizzle_hopper_epiloguexmma::Swizzle_epilogueswizzle_smem_tileXmem_tile //No shared_loa //output loop {guid} decls // output loop {guid} types // output loop {guid} includes //output loop {guid} logic #pragma unroll for( int ii = 0; ii < Kernel_traits::Gmem_tile_o::LOOPS; ++ii ) {{ //output loop {guid} logic #pragma unroll for( int ii = 0; ii < fmha::Gmem_tile_dq::LOOPS; ++ii ) {{ //output loop {guid} logic #pragma unroll for( int ii = 0; ii < params.b; ++ii ) {{whole_strmma_guid //output loop {guid} decls const int thread_idx = (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x; const int kColGroups_{guid} = 1; const int kRowGroups_{guid} = 1; const int kColsPerGroup_{guid} = 1; const int kRowsPerGroup_{guid} = 1; const int totalElemCount_{guid}= kColGroups_{guid} * kColsPerGroup_{guid} * kRowGroups_{guid} * kRowsPerGroup_{guid}; // compute final accumulation and do bias activation for (uint32_t y_hj = 0; y_hj < CONV2D_C1_K1_NHWC_H_PER_THREAD; ++y_hj) { for (uint32_t y_wj = 0; y_wj < CONV2D_C1_K1_NHWC_W_PER_THREAD; ++y_wj) { const int32_t y_idx = y00_idx + y_hj * yDesc.strideA[2] + y_wj * yDesc.strideA[3]; const int32_t row_idx = row0_idx + y_hj * yDesc.dimA[3] + y_wj; // it's not necessary to check (y_idx < y_elem_count) as we've checked y00_idx before if (((y0_hi + y_hj) < yDesc.dimA[2]) && ((y0_wi + y_wj) < yDesc.dimA[3])) { // output loop op {guid} logic {whole_str} cutlass::Array array_{mma_guid}_0; array_{mma_guid}_0[0] = accumA[y_hj][y_wj]; cutlass::Array array_{mma_guid}_0; array_{mma_guid}_0[0] = cuGet(accum); //output loop {guid} logic }} // end y_idx valid check }} }} // end double loop on y-hw index as compute data type is not supported. It might lead to omissions when emitting code. Consider using float.Input 0 is not set. Please check if input attribute for this op or one of its ancestors is set. cutlass::Array<{output_data_type}, {input_0}[0].kElements> array_{guid}_{port}[2];typeConvert<{compute_type}>({input_1}[{index_1_0}])typeConvert<{compute_type}>({input_0}{fragment_index}[stride + i*4 + j*2 + 0]) // pointwise calc {guid} logic{output_array_decl} {{ const int num_rows = {warp_shape_M} / {operator_shape_M}; CUTLASS_PRAGMA_UNROLL for (int r = 0; r < num_rows; ++r) {{ const int stride = r * 8; CUTLASS_PRAGMA_UNROLL for (int i = 0; i < 2; ++i) {{ CUTLASS_PRAGMA_UNROLL for (int j = 0; j < 2; ++j) {{ {output}{fragment_index}[stride + i*4 + j*2 + 0] = typeConvert<{output_data_type}>(); {output}{fragment_index}[stride + i*4 + j*2 + 1] = typeConvert<{output_data_type}>(typeConvert<{compute_type}>({input_1}{input_1_fragment_index}[{index_1}])typeConvert<{compute_type}>({input_0}{fragment_index}[linear_index]) // pointwise calc {guid} logic{output_array_decl} CUTLASS_PRAGMA_UNROLL for (int linear_index = 0; linear_index < {output}{fragment_index}.kElements; linear_index++) {{ {output}{fragment_index}[linear_index] = (typeConvert<{output_data_type}>)( cutlass::Array<{output_data_type}, totalElemCount_{parent_guid}> array_{guid}_{port}; // row reduce strided dgrad {guid} decls int tiled_rows_per_filter = {threadblock_shape_M} * tile_m_per_filter; int start_h_, start_w_; int p_, q_; strided_dgrad_starting_coords(convolution_size, stride_h_divmod, stride_w_divmod, start_r, start_s, start_h_, start_w_); p_ = (convolution_size.H - start_h_ + convolution_size.stride_h - 1) / convolution_size.stride_h; q_ = (convolution_size.W - start_w_ + convolution_size.stride_w - 1) / convolution_size.stride_w; // remapping rows to find the mapped_row_offset for strided dgrad int npq_offset = elem_row % tiled_rows_per_filter; int n = npq_offset / (p_ * q_); int residual = npq_offset % (p_ * q_); int p = residual / q_; int q = residual % q_; elem_row = n * (convolution_size.H * convolution_size.W) + (start_h_ + p * convolution_size.stride_h) * convolution_size.W + (start_w_ + q * convolution_size.stride_w); int elem_row = row_{parent_guid} + kRow_{parent_guid} + OutputTileThreadMap::Delta::kGroup * r_group + OutputTileThreadMap::Delta::kRow * row_in_group; int elem_col = col_{parent_guid} + OutputTileIterator::ThreadMap::Delta::kColumn * c_group + col_in_group;{remapping_rows_strided_dgrad} int elem_position = elem_row * {problem_descriptor}[1] + elem_col;(elem_position / {gen_index_axis_stride}) % {gen_index_axis_dim} // pointwise calc {guid} logic{output_array_decl} for (int r_group = 0; r_group < kRowGroups_{parent_guid}; ++r_group) {{ CUTLASS_PRAGMA_UNROLL for (int row_in_group = 0; row_in_group < kRowsPerGroup_{parent_guid}; ++row_in_group) {{ const int row = r_group * kRowsPerGroup_{parent_guid} + row_in_group; CUTLASS_PRAGMA_UNROLL for (int c_group = 0; c_group < kColGroups_{parent_guid}; ++c_group) {{ CUTLASS_PRAGMA_UNROLL for (int col_in_group = 0; col_in_group < kColsPerGroup_{parent_guid}; ++col_in_group) {{ int col = c_group * kColsPerGroup_{parent_guid} + col_in_group; {gen_index_loop_buf} int linear_index = row * kColGroups_{parent_guid} * kColsPerGroup_{parent_guid} + col; {output}[linear_index] = typeConvert<{output_data_type}>({operation_string}); }} }} }} }}typeConvert<{compute_type}>({input_1}[i])typeConvert<{compute_type}>({input_0}[i]) // pointwise calc {guid} logic CUTLASS_PRAGMA_UNROLL for (int i=0; i<{output}.kElements; i++) {{ {output}[i] = typeConvert<{output_data_type}>({operation_string}); }}typeConvert<{compute_type}>({input_1}[{index_1_1}])typeConvert<{compute_type}>({input_0}{fragment_index}[stride + i*4 + j*2 + 1])linear_indexi*2 + 1r * 2 + ji*2 + 0); }} }} }} }}index_1_0index_1_1output_array_decl); }}index_1input_1_fragment_indexremapping_rows_strided_dgradgen_index_axis_stridegen_index_axis_diminput_2index_0index_2operation_stringgen_index_loop_bufexponentgen_index_axisNOOaPPCQQ'RR SzSSb\TT>UbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbUNVVW-XXkY ZZJ[[\']]e^__B``aMbxOxwIwvEvuAut=ts9sFyr5rqFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyFyqSponAnmlKlkk`jiiwhg1gfeHed[c, ] 17pointwise_calc_oppute_type}>({input_0}[{index_0}]ut_1}[{index_1}]typeConvert({input_2}[{ as compute data type is not supported. It might lead to omissions when emitting code. Consider Input 0 is not set. Please check if input attribute for this op or one of its an); {output}{fragment_index}[stride + i*4 + j*2 + 1] = typeConvert<{output_d); }} // Pointwise op {guid} decls Fragment_type_{guid} reg_{guid}_{port}{num_buffers}; // pointwise_op {guid} types using Fragment_type_{guid} = xmma::Fragment<{data_type}, {num_elts}>;typeConvert<{compute_data_type}>({input}) int row_index = row_{parent_id} + offsets_m_{parent_id}[ii]{row_batch_offset}; int col_index = col_{parent_id} + i + offsets_n_{parent_id}[ii]{col_batch_offset}; int elem_position = row_index * {problem_descriptor}[1] + col_index; // pointwise calc {guid} logic #pragma unroll for (int ii = 0; ii < STGS; ii++) {{ #pragma unroll for (int i = 0; i < NUM_ELTS_{parent_id}; ++i) {{{gen_index_loop_buf} {output} = typeConvert<{output_data_type}>({rhs_operator}); }} }} // pointwise calc {guid} logic #pragma unroll for (int ii = 0; ii < XMMAS_M; ++ii) {{ #pragma unroll for (int i = 0; i < Fragment_type_{frag_num}::NUM_REGS; ++i) {{ {output} = {rhs_operator}; }} }} // pointwise calc {guid} logic #pragma unroll for (int ii = 0; ii < XMMAS_M; ++ii) {{ #pragma unroll for (int i = 0; i < Fragment_type_{frag_num}::NUM_ELTS; ++i) {{ {output} = typeConvert<{output_data_type}>({rhs_operator}); }} }}reg_{guid}_{port}{buffer_index}[ii].{container}(i)reg_{guid}_{port}{buffer_index}.{container}({idx})reg_{guid}_{port}[ii].{container}({idx})reg_{guid}_{port}.{container}(0)reg_{}_{}{}[ii].elt(i)row_batch_offsetcol_batch_offseteltbuffer_indexcontaineri / 2(i / 4) * 2 + (i % 2)i % 2((i / 2) % 2) * 2sB9>S5C@7;#3[A8<;4B+?k6:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB1A9p=4?6@;2@7X<3>5(::10/#/#. // pointwise calc op {guid} types set_param(params.scale_dropout, reinterpret_cast({input_scale_param}.storage)); // pointwise calc op {guid} types uint32_t scale_{guid}; set_alpha(scale_{guid}, 1.0f/{input_scale_param}); // pointwise calc op {guid} decls // pointwise calc op {guid} decls uint4 regs_{guid}[M][N]; #pragma unroll for( int mi = 0; mi < M; mi++ ) {{ #pragma unroll for( int ni = 0; ni < N; ni++ ) {{ regs_{guid}[mi][ni].x = regs_{guid}[mi][ni].y = regs_{guid}[mi][ni].z = regs_{guid}[mi][ni].w = 0; }} }} // pointwise calc op {guid} logic uint2 out_{guid}[Kernel_traits::Gmem_tile_o::STGS_PER_LOOP]; #pragma unroll for (int i = 0; i < Kernel_traits::Gmem_tile_o::STGS_PER_LOOP; i++) {{ // Pointwise multiply with output out_{guid}[i] = fmha::packA_and_hmul4(out_{input_0_guid}[i], out_{input_1_guid}[i]); }} // pointwise calc op {guid} logic #pragma unroll for( int ki = 0; ki < Mma_tile_o2::MMAS_K; ki++ ) {{ #pragma unroll for( int mi = 0; mi < Mma_tile_o2::MMAS_M; mi++ ) {{ #pragma unroll for( int ii = 0; ii < fmha::Fragment_a::NUM_REGS; ii++ ) {{ //Apply the dropout. frag_p_{input_0_guid}[ki][mi].reg(ii) = fmha::hmul2(frag_p_{input_0_guid}[ki][mi].reg(ii), params.scale_dropout); frag_p_{input_0_guid}[ki][mi].reg(ii) = fmha::hrelu2(frag_p_{input_0_guid}[ki][mi].reg(ii)); }} }} }} // pointwise calc op {guid} logic #pragma unroll for( int mi = 0; mi < Mma_tile_o1::MMAS_M; ++mi ) {{ #pragma unroll for( int ni = 0; ni < Mma_tile_o1::MMAS_N; ++ni ) {{ #pragma unroll for( int ki = 0; ki < 8; ki++ ) {{ acc_o_{input_0_guid}[mi][ni].elt(ki) *= fmha::to_float(frag_{input_1_guid}[mi][ni].elt(ki)); }} }} }} // pointwise calc op {guid} logic #pragma unroll for( int mi = 0; mi < Mma_tile_o1::MMAS_M; ++mi ) {{ #pragma unroll for( int ni = 0; ni < Mma_tile_o1::MMAS_N; ++ni ) {{ #pragma unroll for( int ki = 0; ki < 8; ki++ ) {{ acc_o_{input_0_guid}[mi][ni].elt(ki) += fmha::to_float(frag_{input_1_guid}[mi][ni].elt(ki)); }} }} }} // pointwise calc op {guid} logic #pragma unroll for( int mi = 0; mi < Mma_tile_o1::MMAS_M; ++mi ) {{ #pragma unroll for( int ni = 0; ni < Mma_tile_o1::MMAS_N; ++ni ) {{ #pragma unroll for( int ki = 0; ki < 8; ki++ ) {{ if (!(frag_{input_1_guid}[mi][ni].elt(ki) | 0x0000)) {{ // check if it is zero frag_p_{input_0_guid}[mi][ni].elt(ki) ^= (1 << 15); // multiply by -1 }} }} }} }} // pointwise calc op {guid} logic #pragma unroll for( int mi = 0; mi < M; ++mi ) {{ #pragma unroll for( int ni = 0; ni < N; ++ni ) {{ regs_{guid}[mi][ni] = fmha::hadd8(regs_{input_0_guid}[mi][ni], regs_{guid}[mi][ni]); }} }} // pointwise calc op {guid} logic #pragma unroll for( int mi = 0; mi < M; ++mi ) {{ #pragma unroll for( int ni = 0; ni < N; ++ni ) {{ regs_{input_0_guid}[mi][ni] = fmha::hmul8(scale_{guid}, regs_{input_0_guid}[mi][ni]); }} }} // pointwise calc op {guid} logic softmax.multiply(frag_{input_1_guid}); if (l < STEPS - 1) {{ gmem_{input_1_guid}.load(frag_{input_1_guid}, l+1); }} // receive {guid} includes #include "fort/type_conversion.h" #include "fort/type_values.h" #include "fort/descriptors.h" typedef cutlass::conv::Conv2dProblemSize convolution_descriptor; typedef cutlass::conv::Conv3dProblemSize convolution_descriptor_3d; // receive op {guid} logic namespace fort {{ typedef cutlass::half_t half_t; typedef cutlass::tfloat32_t tfloat32_t; typedef cutlass::bfloat16_t bfloat16_t; typedef cutlass::float_e5m2_t float_e5m2_t; typedef cutlass::float_e4m3_t float_e4m3_t; typedef cutlass::uint1b_t uint1b_t;{typedef_conv_str} }} extern "C" __global__ __launch_bounds__( {max_threads}, {min_blocks} ) void {interface_name}({params_string}) {{ extern __shared__ int4 shared_{shared_id}[]; // The destination tensor is written to in a strided fashion. Use the index and strides to figure out what address to write to. uint64_t N,D,H,W,C,residual; {divmod_operator_0}(N, residual, idx); {divmod_operator_1}(D, residual, residual); {divmod_operator_2}(H, residual, residual); {divmod_operator_3}(W, C, residual); uint64_t N = idx / ({peer_tensor_descriptor}.get_dim(1) * {peer_tensor_descriptor}.get_dim(2) * {peer_tensor_descriptor}.get_dim(3) * {peer_tensor_descriptor}.get_dim(4)); uint64_t residual = idx % ({peer_tensor_descriptor}.get_dim(1) * {peer_tensor_descriptor}.get_dim(2) * {peer_tensor_descriptor}.get_dim(3) * {peer_tensor_descriptor}.get_dim(4)); uint64_t D = residual / ({peer_tensor_descriptor}.get_dim(2) * {peer_tensor_descriptor}.get_dim(3) * {peer_tensor_descriptor}.get_dim(4)); residual %= ({peer_tensor_descriptor}.get_dim(2) * {peer_tensor_descriptor}.get_dim(3) * {peer_tensor_descriptor}.get_dim(4)); uint64_t H = residual / ({peer_tensor_descriptor}.get_dim(3) * {peer_tensor_descriptor}.get_dim(4)); residual %= ({peer_tensor_descriptor}.get_dim(3) * {peer_tensor_descriptor}.get_dim(4)); uint64_t W = residual / ({peer_tensor_descriptor}.get_dim(4)); residual %= ({peer_tensor_descriptor}.get_dim(4)); uint64_t C = residual;number_of_participating_blocksreverse_index_calculation_string // receive op {guid} logic for halo exchange // Only enter if there is valid data to fetch. // Such a check exists so that users can use the same kernel for all shards of input tensor. // Depending on the shard, a tensor might require different number of halo exchanges. But with this check user can switch off // invalid exchanges by specifying the peer addresses as nullptr. if({input_0_param}) {{ // Calculate the block and thread ID across the whole grid. // Assumes 2d grids with 1d blocks. int const blockId = blockIdx.y * gridDim.x + blockIdx.x; // The subset of blocks that participate in peer tensor fetching int const start_of_participating_blocks = {start_of_participating_blocks}; int const number_of_participating_blocks = {number_of_participating_blocks}; if(start_of_participating_blocks <= blockId && blockId < start_of_participating_blocks + number_of_participating_blocks) {{ int const num_elements_peer_tensor = {peer_tensor_descriptor}.get_size(); static int const elements_in_vectorized_access = (128 / cutlass::sizeof_bits<{input_0_data_type}>::value); int const equivalent_block_id = blockId - start_of_participating_blocks; int const equivalent_threadId = equivalent_block_id * blockDim.x + threadIdx.x; size_t destPtrStart = reinterpret_cast({output_0_param}) + {write_with_offset} * sizeof({output_0_data_type}); // Distribute all elements of the input tensor to all the threads equally. for (int idx = equivalent_threadId * elements_in_vectorized_access; idx < num_elements_peer_tensor; idx += blockDim.x * number_of_participating_blocks * elements_in_vectorized_access) {{ // The peer tensor is a contiguous block of memory. No strided reads are required. size_t currSrcPtr = reinterpret_cast({input_0_param}) + idx * sizeof({input_0_data_type}); {reverse_index_calculation_string} uint64_t write_with_strides = N * {destination_tensor_descriptor}.get_stride(0) + D * {destination_tensor_descriptor}.get_stride(1) + H * {destination_tensor_descriptor}.get_stride(2) + W * {destination_tensor_descriptor}.get_stride(3) + C * {destination_tensor_descriptor}.get_stride(4); size_t currDestPtr = destPtrStart + write_with_strides * sizeof({output_0_data_type}); *reinterpret_cast(currDestPtr) = *reinterpret_cast(currSrcPtr); }} }} // Make sure all the writes to input tensor in the halo exchange are visible to other blocks. __threadfence(); // Put a synchronization barrier as all threads need to finish fetching halo before a representative thread marks block as done fetching. __syncthreads(); int total_cta_count = {number_of_blocks_receiving}; if(blockId < total_cta_count) {{ if(threadIdx.x == 0) {{ // Mark the block as done fetching by incrementing counter in descriptor. atomicInc((unsigned int*)({workspace_param}), total_cta_count); }} }} // Make the representative thread busy wait for all blocks to finish fetching halos. if(threadIdx.x == 0) {{ while( *({workspace_param}) != total_cta_count ){{}} }} // Put a synchronization barrier as all threads need to wait for the representative thread to have made sure that moving onto convolution is safe. __syncthreads(); }} // receive op {guid} logic for halo exchange ends // receive op {guid} end split-k scope }} // receive op {guid} logic }} destination_tensor_descriptor_inputdestination_tensor_descriptor_port, typedef_conv_strmax_threadsmin_blocksinterface_nameparams_stringdivmod_operator_1divmod_operator_2divmod_operator_3peer_tensor_descriptorstart_of_participating_blockswrite_with_offsetdestination_tensor_descriptornumber_of_blocks_receivingparam_data_typeIDE_paramsync_blocks10receive_op #include "xmma/ampere/smem_tile.h" #include "xmma/tile_distribution.h" #include "xmma/hopper/traits.h" #include "xmma/hopper/fragment.h" #include "xmma/hopper/smem_tile.h" #include "xmma/hopper/compute_tile.h" #include "xmma/cta_reconfig.h" #include "xmma/implicit_gemm/fprop/gmem_tile_hopper.h" #include "xmma/gemm/utils.h" #include "xmma/gemm/gmem_tile.h" #include "xmma/implicit_gemm/fprop/gmem_tile.h" #include "xmma/implicit_gemm/dgrad/gmem_tile.h" #include "xmma/implicit_gemm/wgrad_indexed/gmem_tile.h" #include "xmma/helpers/fragment.h" #include "cutlass/cutlass.h" #include "cutlass/platform/platform.h" #include "fort/hopper_hsh_epilogue_swizzle.h" #include "fort/xmma_backend_descriptors.h" #include "fort/type_conversion.h" #include "fort/math.h" }} // receive op {} logic end // receive op {guid} logic template static inline __device__ void get_flt_ptn_index_and_valid_trs_num( const Params& params, const int& cta_id_in_dhw_dimension, int& filter_pattern_index, int& cta_m_in_filter_pattern, int& num_trs_of_flt_ptn) {{ params.num_ctas_per_filter_pattern.divmod( filter_pattern_index, cta_m_in_filter_pattern, cta_id_in_dhw_dimension); num_trs_of_flt_ptn = params.total_trs_num_of_each_filter_pattern[filter_pattern_index]; }} template static inline __device__ void get_start_index( const Params& params, const int& filter_pattern_index, const uint32_t& stride_h, const uint32_t& stride_w, uint32_t& start_t_index, uint32_t& start_r_index, uint32_t& start_s_index) {{ bool is_xcorrelation = params.cross_correlation; uint32_t start_rs_index; xmma::fast_divmod_v2(start_t_index, start_rs_index, filter_pattern_index, stride_h * stride_w, params.mul_stride_hw_v2, params.shr_stride_hw_v2); xmma::fast_divmod_v2(start_r_index, start_s_index, start_rs_index, stride_w, params.mul_stride_w_v2, params.shr_stride_w_v2); start_t_index = params.fake_t - 1 - start_t_index; start_r_index = params.fake_r - 1 - start_r_index; start_s_index = params.fake_s - 1 - start_s_index; }} template static inline __device__ void precompute_per_flt_ptn( const Params& params, const int& tile_block_col, const int& nopq_base, const int& filter_pattern_index, const int& cta_m_in_filter_pattern, const int& num_trs_of_flt_ptn, uint4& data_trs, uint4& data_dhw, uint4 (&data_nopq)[N]) {{ uint32_t stride_d = params.stride[0]; uint32_t stride_h = params.stride[1]; uint32_t stride_w = params.stride[2]; uint32_t start_t_index, start_r_index, start_s_index; get_start_index(params, filter_pattern_index, stride_h, stride_w, start_t_index, start_r_index, start_s_index); uint4 data; int32_t num_dhw_index = params.num_dhw_index_of_each_filter_pattern[filter_pattern_index]; xmma::FastDivisor num_q = params.num_w[num_dhw_index & 0x1]; xmma::FastDivisor num_pq = params.num_hw[num_dhw_index & 0x3]; xmma::FastDivisor num_opq = params.num_dhw[num_dhw_index]; uint32_t start_d, start_h, start_w; uint32_t start_o, start_p, start_q; uint32_t tmp; uint32_t tmp_d = start_t_index + (stride_d - 1) * params.pad[0][0]; xmma::fast_divmod_v2( tmp, start_d, tmp_d, stride_d, params.mul_stride_d_v2, params.shr_stride_d_v2); uint32_t tmp_h = start_r_index + (stride_h - 1) * params.pad[1][0]; xmma::fast_divmod_v2( tmp, start_h, tmp_h, stride_h, params.mul_stride_h_v2, params.shr_stride_h_v2); uint32_t tmp_w = start_s_index + (stride_w - 1) * params.pad[2][0]; xmma::fast_divmod_v2( tmp, start_w, tmp_w, stride_w, params.mul_stride_w_v2, params.shr_stride_w_v2); data.x = reinterpret_cast(filter_pattern_index); data.y = reinterpret_cast(start_d); data.z = reinterpret_cast(start_h); data.w = reinterpret_cast(start_w); data_dhw = data; if (num_trs_of_flt_ptn > 0) {{ xmma::fast_divide_v2(start_t_index, start_t_index, params.dilation[0], params.mul_dilation_d_v2, params.shr_dilation_d_v2); xmma::fast_divide_v2(start_r_index, start_r_index, params.dilation[1], params.mul_dilation_h_v2, params.shr_dilation_h_v2); xmma::fast_divide_v2(start_s_index, start_s_index, params.dilation[2], params.mul_dilation_w_v2, params.shr_dilation_w_v2); }} uint32_t flt_offset = start_t_index * params.dilation[0]; uint32_t tmp_o = start_d + params.pad[0][0] + (stride_d - 1) * flt_offset; xmma::fast_divmod_v2(start_o, tmp, tmp_o, stride_d, params.mul_stride_d_v2, params.shr_stride_d_v2); int32_t start_o_s = (int32_t)start_o - (int32_t)flt_offset; flt_offset = start_r_index * params.dilation[1]; uint32_t tmp_p = start_h + params.pad[1][0] + (stride_h - 1) * flt_offset; xmma::fast_divmod_v2(start_p, tmp, tmp_p, stride_h, params.mul_stride_h_v2, params.shr_stride_h_v2); int32_t start_p_s = (int32_t)start_p - (int32_t)flt_offset; flt_offset = start_s_index * params.dilation[2]; uint32_t tmp_q = start_w + params.pad[2][0] + (stride_w - 1) * flt_offset; xmma::fast_divmod_v2(start_q, tmp, tmp_q, stride_w, params.mul_stride_w_v2, params.shr_stride_w_v2); int32_t start_q_s = (int32_t)start_q - (int32_t)flt_offset; data.x = reinterpret_cast(num_trs_of_flt_ptn); data.y = reinterpret_cast(start_t_index); data.z = reinterpret_cast(start_r_index); data.w = reinterpret_cast(start_s_index); data_trs = data; #pragma unroll for (int mi = 0; mi < N; mi++) {{ int32_t nopq; int32_t n, o, p, q; nopq = nopq_base + mi * tile_block_col; int32_t opq; num_opq.divmod(n, opq, nopq); int32_t pq; num_pq.divmod(o, pq, opq); num_q.divmod(p, q, pq); o = o + start_o_s; p = p + start_p_s; q = q + start_q_s; data.x = reinterpret_cast(n); data.y = reinterpret_cast(o); data.z = reinterpret_cast(p); data.w = reinterpret_cast(q); data_nopq[mi] = data; }} }} // receive op {guid} logic{fort_decl} enum class NAMED_BARRIER_ALLOC_ASMEM_BSMEM {{ LOOP_ENTER_LEAVE_0 = 0, LOOP_ENTER_LEAVE_1 = 1, EPILOG_ENTER_LEAVE_0 = 2, EPILOG_ENTER_LEAVE_1 = 3, EPILOG_SYNC_0 = 4, EPILOG_SYNC_1 = 5, TILE_ID_BUFFER_EMPTY_ARRIVE_SYNC = 6, SMEM_PRESET_SYNC_0 = 7, SMEM_PRESET_SYNC_1 = 8, MATH_WG_SYNC = 9, DMA_WG_SYNC = 10 }}; enum class NAMED_BARRIER_ALLOC_ARF_BSMEM {{ LOOP_ENTER_LEAVE_0 = 0, LOOP_ENTER_LEAVE_1 = 1, EPILOG_ENTER_LEAVE_0 = 2, EPILOG_ENTER_LEAVE_1 = 3, EPILOG_SYNC_0 = 4, EPILOG_SYNC_1 = 5, SMEM_PRESET_SYNC_0 = 6, SMEM_PRESET_SYNC_1 = 7, MATH_WG_SYNC = 8, DMA_WG_SYNC = 9 }}; extern "C" __global__ __launch_bounds__({max_threads}, 1) void {interface_name}({params_string}) {{ DisableWar_SW2549067_MACRO asm volatile(".pragma \"global knob HoistLate=2\";\n" : : : "memory"); asm volatile(".pragma \"global knob EnableUR16Bit=1\";\n" : : : "memory"); asm volatile(".pragma \"global knob ForceLateCommoning=1\";\n" : : : "memory"); asm volatile(".pragma \"global knob RegAllocMacVregAllocOrder=0\";\n" : : : "memory"); asm volatile(".pragma \"global knob ForceTMAMovesContiguousReg=1\";\n" : : : "memory"); // The shared memory. It is allocated at launch time. extern __shared__ char smem_{shared_id}[]; const int tidx = threadIdx.x; const int tidw = threadIdx.x % 32; const int warp_id = __shfl_sync(0xffffffff, threadIdx.x / 32, 0); const int elect_one = xmma::elect_one_sync(); // receive op {guid} logic{fort_decl} extern "C" __global__ __launch_bounds__({max_threads}, 1) void {interface_name}({params_string}) {{ // The shared memory. It is allocated at launch time. extern __shared__ char smem_{shared_id}[]; xmma::Tile_distribution tile(params, blockIdx); const int bidm = tile.bidm(); const int bidn = tile.bidn(); const int bidz = tile.bidz(); const int tidx = threadIdx.x; const int tidw = threadIdx.x % 32; const int widx = __shfl_sync(0xffffffff, threadIdx.x / 32, 0);__grid_constant__ const fort_decl namespace fort { typedef cutlass::half_t half_t; typedef xmma::float_e5m2_t float_e5m2_t; typedef xmma::float_e4m3_t float_e4m3_t; typedef cutlass::uint1b_t uint1b_t; typedef cutlass::bfloat16_t bf // receive op {guid} logic }} #include "fmha/fmha.h" #include "fmha/fmha_kernel.h" #include "fmha/fmha/kernel_traits.h" // receive op {guid} logic {fort_decl} extern "C" __global__ void {interface_name}({params_string}) {{ _t; typedef cutlass::uint1b_t uint1b_t; typedef cutlass::bfloat16_t bfloat16 // receive op {guid} logic #define GROUP_SIZE {group_size} namespace fort { typedef cutlass::half_t half_t; typedef cutlass::tfloat32_t tfloat32_t; typedef cutlass::bfloat16_t bfloat16_t; typedef cutlass::float_e5m2_t float_e5m2_t; typedef cutlass::float_e4m3_t float_e4m3_t; typedef cutlass::uint1b_t uint1b_t; typedef cutlass::conv::Conv2dProblemSize convolution_descriptor; typedef cutlass::conv::Conv3dProblemSize convolution_descriptor_3d; } enum eDimension { DIM_N = 0, DIM_C = 1, DIM_H = 2, DIM_W = 3, DIM_DimCount }; struct DepthwiseConvKernelParams { void* output; const void* input; const void* filter; const void* bias; int N; int C; // == K == GroupCount int OutputH, OutputW; int InputH, InputW; int FilterH, FilterW; int OutputStride[4]; int InputStride[4]; int FilterStrideN, FilterStrideH, FilterStrideW; int strideH, strideW; int dilationH, dilationW; int padLeft, padRight, padBot, padTop; float reluThreshold, reluSlope; // no activation: threshold = 0, slope = 1, Relu: threshold = 0, slope = 0, LeakyRelu threshold = 0, slope = alpha, ThresholdedRelu: Threshold = alpha, slope = 0 bool isBackward; bool isCrossCorrelation; bool usesDilation; }; // FP32 / NCHW version template __forceinline__ __device__ void computeInputFilterProduct(cutlass::Array& values, const DepthwiseConvKernelParams& params, int n, int c, int ix, int iy, int fx, int fy, float*) { // check boundary if (ix >= 0 && ix < params.InputW && iy >= 0 && iy < params.InputH) { auto input = (const float*)params.input; auto filter = (const float*)params.filter; // simply loop over all elements we need to process in this thread (in C dimension). As the channel dimension for (int i = 0; i < ElementPerThread; i++) { int ch = c + i; if (ch < params.C) { // get the input and filter values float in_val = input[n * params.InputStride[DIM_N] + ch * params.InputStride[DIM_C] + iy * params.InputStride[DIM_H] + ix]; float fl_val = filter[ch * params.FilterStrideN + fy * params.FilterStrideH + fx]; // accumulate the product values[i] += in_val * fl_val; } } } } template __device__ __forceinline__ void copyAs(void* dst, const void* src) { *((T*)(dst)) = *((const T*)(src)); } // fp16/nhwc version template __forceinline__ __device__ void computeInputFilterProduct(cutlass::Array& values, const DepthwiseConvKernelParams& params, int n, int c, int ix, int iy, int fx, int fy, half*) { static_assert((ElementPerThread == 1) || (ElementPerThread == 8), "Unsupported"); // check boundary if (ix >= 0 && ix < params.InputW && iy >= 0 && iy < params.InputH) { auto input = (const half*)params.input; auto filter = (const half*)params.filter; int base_index = n * params.InputStride[DIM_N] + c + iy * params.InputStride[DIM_H] + ix * params.InputStride[DIM_W]; if (ElementPerThread == 1) { for (int gi = 0; gi < GROUP_SIZE; ++gi) { // get the input and filter values float in_val = (float)input[((base_index / GROUP_SIZE) * GROUP_SIZE) + gi]; float fl_val = (float)filter[((c/GROUP_SIZE)*GROUP_SIZE) * params.FilterStrideN + c % GROUP_SIZE + fy * params.FilterStrideH + fx * params.FilterStrideW + (gi * params.FilterStrideN)]; // accumulate the product values[0] += in_val * fl_val; } } else // if (ElementPerThread == 8) { half inputs[8]; copyAs(&inputs[0], &input[base_index]); for (int v = 0; v < 8; ++v) { for (int gi = 0; gi < GROUP_SIZE; ++gi) { float fl_val = (float)filter[(((c + v)/GROUP_SIZE)*GROUP_SIZE) * params.FilterStrideN + ((c + v) % GROUP_SIZE) + fy * params.FilterStrideH + fx * params.FilterStrideW + (gi * params.FilterStrideN)]; // accumulate the product values[v] += float(inputs[((v / GROUP_SIZE) * GROUP_SIZE) + gi]) * fl_val; } } } } } template __device__ void computeFprop(cutlass::Array& values, const DepthwiseConvKernelParams& params, int n, int c, int oy, int ox) { // loop over the filter kernel for (int dy = 0; dy < params.FilterH; dy++) { for (int dx = 0; dx < params.FilterW; dx++) { // get the input index int ix = ox * params.strideW - params.padLeft; int iy = oy * params.strideH - params.padTop; // convolution if (!params.isCrossCorrelation) { iy += (params.FilterH - 1 - dy) * params.dilationH; ix += (params.FilterW - 1 - dx) * params.dilationW; } else { // cross-correlation iy += dy * params.dilationH; ix += dx * params.dilationW; } computeInputFilterProduct(values, params, n, c, ix, iy, dx, dy, (T*)params.output); } } } template __device__ void computeDgrad_no_dilation_xcorr(cutlass::Array& values, const DepthwiseConvKernelParams& params, int n, int c, int oy, int ox) { int base_iy = oy + params.padTop; int base_ix = ox + params.padLeft; int strideH = params.strideH; int strideW = params.strideW; int offset_x = base_ix % strideW; int offset_y = base_iy % strideH; // loop over the filter kernel for (int dy = offset_y; dy < params.FilterH; dy += strideH) { for (int dx = offset_x; dx < params.FilterW; dx += strideW) { // get the input index int ix = base_ix; int iy = base_iy; // cross-correlation iy -= dy; ix -= dx; iy /= strideH; ix /= strideW; computeInputFilterProduct(values, params, n, c, ix, iy, dx, dy, (T*)params.output); } } } // generic version with full support for arbitary dilation template __device__ void computeDgrad(cutlass::Array& values, const DepthwiseConvKernelParams& params, int n, int c, int oy, int ox) { int base_iy = oy + params.padTop; int base_ix = ox + params.padLeft; int strideH = params.strideH; int strideW = params.strideW; int dilationH = params.dilationH; int dilationW = params.dilationW; for (int dy = 0; dy < params.FilterH; dy++) { for (int dx = 0; dx < params.FilterW; dx++) { // get the input index int ix = base_ix; int iy = base_iy; // convolution if (!params.isCrossCorrelation) { iy -= (params.FilterH - 1 - dy) * dilationH; ix -= (params.FilterW - 1 - dx) * dilationW; } else { // cross-correlation iy -= dy * dilationH; ix -= dx * dilationW; } // Process stride. Each dim should be multiple of stride // These integer % and / are very expensive, but we can't do much about them :( if (iy % strideH == 0) iy /= strideH; else continue; if (ix % strideW == 0) ix /= strideW; else continue; computeInputFilterProduct(values, params, n, c, ix, iy, dx, dy, (T*)params.output); } } } // receive op {guid} logic {whole_str} // receive op {guid} logic template __device__ void computeElementSet(cutlass::Array& array_{shared_load_guid}_0, const DepthwiseConvKernelParams& params, int n, int c, int oy, int ox) {{ // initialize the output values for (int i = 0; i < ElementPerThread; i++) array_{shared_load_guid}_0[i] = 0; if (params.isBackward) {{ if (params.usesDilation || (!params.isCrossCorrelation)) computeDgrad(array_{shared_load_guid}_0, params, n, c, oy, ox); else computeDgrad_no_dilation_xcorr(array_{shared_load_guid}_0, params, n, c, oy, ox); }} else {{ computeFprop(array_{shared_load_guid}_0, params, n, c, oy, ox); }} } template __forceinline__ __device__ void depthwise_conv_fp32_nchw(const DepthwiseConvKernelParams ¶ms) { // get the thread index int tx = threadIdx.x; int ty = threadIdx.y; int tz = threadIdx.z; int bx = blockIdx.x; int by = blockIdx.y; int bz = blockIdx.z; // get the output index int ox = bx * blockDim.x + tx; int oy = by * blockDim.y + ty; int c = (bz * blockDim.z + tz) * ElementPerThread; // check boundary if (ox >= params.OutputW || oy >= params.OutputH) return; // loop over batch dimension for (int n = 0; n < params.N; n++) { cutlass::Array values; computeElementSet(values, params, n, c, oy, ox); // write the output values auto output = (float*)params.output; for (int i = 0; i < ElementPerThread; i++) { int ch = c + i; if (ch < params.C) output[n * params.OutputStride[DIM_N] + ch * params.OutputStride[DIM_C] + oy * params.OutputStride[DIM_H] + ox] = values[i]; } } } template __forceinline__ __device__ void depthwise_conv_fp16_nhwc(const DepthwiseConvKernelParams ¶ms) { // get the thread index int tx = threadIdx.x; int ty = threadIdx.y; int tz = threadIdx.z; int bx = blockIdx.x; int by = blockIdx.y; int bz = blockIdx.z; // get the output index int c = (bx * blockDim.x + tx) * ElementPerThread; int ox = by * blockDim.y + ty; int oy = bz * blockDim.z + tz; // check boundary if (ox >= params.OutputW || oy >= params.OutputH || c >= params.C) return; // loop over batch dimension for (int n = 0; n < params.N; n++) { cutlass::Array values; computeElementSet(values, params, n, c, oy, ox); half outputs[ElementPerThread]; for (int v = 0; v < ElementPerThread; v++) outputs[v] = half(values[v]); // write the output values auto output = (half*)params.output; int base_index = n * params.OutputStride[DIM_N] + oy * params.OutputStride[DIM_H] + ox * params.OutputStride[DIM_W] + c; if (ElementPerThread == 8) { // Special case - use vector store for 8 elements copyAs(&output[base_index], &outputs[0]); } else { for (int v = 0; v < ElementPerThread; v++) output[base_index + v] = outputs[v]; } } } #if 0 extern "C" { #ifdef FP16 __global__ void depthwise_conv_fp16_nhwc_kernel(DepthwiseConvKernelParams params) { depthwise_conv_fp16_nhwc<1>(params); } #elif defined(FP16_WO_DIL) __global__ void depthwise_conv_fp16_nhwc_c8_kernel(DepthwiseConvKernelParams params) { depthwise_conv_fp16_nhwc<8>(params); } #elif defined(FP32) __global__ void depthwise_conv_fp32_nchw_kernel(DepthwiseConvKernelParams params) { depthwise_conv_fp32_nchw<8>(params); } #endif }; #endif struct Params { int dummy0; int dummy1; int dummy2; int dummy3; // cutlass::conv::threadblock::Conv2dStridedDgradOutputGradientIteratorOptimizedParams tensor_8245936360722299236_constants; // cutlass::conv::threadblock::Conv2dStridedDgradFilterIteratorOptimizedParams tensor_32210688909071479_constants; }; extern "C" __launch_bounds__(256, 1) __global__ void {interface_name}( {params_string} ) {{ #if 0 desc.filterDesc.size[TensorDesc::N] = OUT_CHANNEL; desc.filterDesc.size[TensorDesc::C] = IN_CHANNEL / GROUP_COUNT; desc.filterDesc.size[TensorDesc::H] = FILTER_HEIGHT; desc.filterDesc.size[TensorDesc::W] = FILTER_WIDTH; if (backwardConv) {{ desc.filterDesc.size[TensorDesc::N] = IN_CHANNEL; desc.filterDesc.size[TensorDesc::C] = OUT_CHANNEL / GROUP_COUNT; }} #endif DepthwiseConvKernelParams depthwise_params; depthwise_params.output = {y_data_string}; //void* output; depthwise_params.input = {x_data_string}; //const void* input; depthwise_params.filter = {w_data_string}; //const void* filter; depthwise_params.bias = 0; //const void* bias; depthwise_params.N = convolution_size.N; depthwise_params.C = convolution_size.C; // == K == GroupCount // For dgrad, output is H,W depthwise_params.{output_string}H = convolution_size.H; depthwise_params.{output_string}W = convolution_size.W; depthwise_params.{input_string}H = convolution_size.P; depthwise_params.{input_string}W = convolution_size.Q; depthwise_params.FilterH = convolution_size.R; depthwise_params.FilterW = convolution_size.S; // really? output is dy?? depthwise_params.{output_string}Stride[0] = convolution_size.H * convolution_size.W * convolution_size.C; depthwise_params.{output_string}Stride[1] = 1; depthwise_params.{output_string}Stride[2] = convolution_size.W * convolution_size.C; depthwise_params.{output_string}Stride[3] = convolution_size.C; depthwise_params.{input_string}Stride[0] = convolution_size.P * convolution_size.Q * convolution_size.K; depthwise_params.{input_string}Stride[1] = 1; depthwise_params.{input_string}Stride[2] = convolution_size.Q * convolution_size.K; depthwise_params.{input_string}Stride[3] = convolution_size.K; depthwise_params.FilterStrideN = convolution_size.R*convolution_size.S*GROUP_SIZE; depthwise_params.FilterStrideH = convolution_size.S*GROUP_SIZE; depthwise_params.FilterStrideW = GROUP_SIZE; // FilterStrideW is always 1 depthwise_params.strideH = convolution_size.stride_h; depthwise_params.strideW = convolution_size.stride_w; depthwise_params.dilationH = convolution_size.dilation_h; depthwise_params.dilationW = convolution_size.dilation_w; depthwise_params.padLeft = convolution_size.pad_w; depthwise_params.padRight = convolution_size.pad_w; depthwise_params.padBot = convolution_size.pad_h; depthwise_params.padTop = convolution_size.pad_h; depthwise_params.reluThreshold = 0; //float reluThreshold, reluSlope; // no activation: threshold = 0, slope = 1, Relu: threshold = 0, slope = 0, LeakyRelu threshold = 0, slope = alpha, ThresholdedRelu: Threshold = alpha, slope = 0 depthwise_params.reluSlope = 1; depthwise_params.isBackward = {is_backward_string}; depthwise_params.isCrossCorrelation = true; depthwise_params.usesDilation = false; if (convolution_size.dilation_h > 1 || convolution_size.dilation_w > 1) {{ depthwise_params.usesDilation = true; }} if (convolution_size.C % 8 != 0 || GROUP_SIZE > 8) {{ depthwise_conv_fp16_nhwc<1>(depthwise_params); }} else {{ depthwise_conv_fp16_nhwc<8>(depthwise_params); }} // receive op 0 logic }}shared_load_guidInputOutputy_data_stringx_data_stringw_data_stringis_backward_stringoutput_stringinput_string #define CUDNN_DIM_MAX 8 typedef enum { CUDNN_CONVOLUTION = 0, CUDNN_CROSS_CORRELATION = 1 } cudnnConvolutionMode_t; /* * CUDNN Reorder */ typedef enum { CUDNN_DEFAULT_REORDER = 0, CUDNN_NO_REORDER = 1, } cudnnReorderType_t; typedef enum { CUDNN_DATA_FLOAT = 0, CUDNN_DATA_DOUBLE = 1, CUDNN_DATA_HALF = 2, CUDNN_DATA_INT8 = 3, CUDNN_DATA_INT32 = 4, CUDNN_DATA_INT8x4 = 5, CUDNN_DATA_UINT8 = 6, CUDNN_DATA_UINT8x4 = 7, CUDNN_DATA_INT8x32 = 8, CUDNN_DATA_BFLOAT16 = 9, CUDNN_DATA_INT64 = 10, CUDNN_DATA_BOOLEAN = 11, CUDNN_DATA_FP8_E4M3 = 12, CUDNN_DATA_FP8_E5M2 = 13, CUDNN_DATA_FAST_FLOAT_FOR_FP8 = 14, } cudnnDataType_t; typedef enum { CUDNN_VECT_NONE = 0, /**< No vectorization */ CUDNN_VECT_C = 1 /**< Dimension C is vectorized */ } cudnnVectorization_t; typedef enum { CUDNN_DTYPE_UNDEF = 0, // undefined, for local context-dependent sensible default. CUDNN_DTYPE_FP32 = 1, CUDNN_DTYPE_TF32 = 2, CUDNN_DTYPE_FP16 = 3, CUDNN_DTYPE_BF16 = 4, CUDNN_DTYPE_FP64 = 5, CUDNN_DTYPE_INT8 = 6, CUDNN_DTYPE_UINT8 = 7, CUDNN_DTYPE_INT32 = 8, CUDNN_DTYPE_INT8x4 = 9, CUDNN_DTYPE_UINT8x4 = 10, CUDNN_DTYPE_INT8x32 = 11, CUDNN_DTYPE_INT64 = 12, CUDNN_DTYPE_BOOLEAN = 13, CUDNN_DTYPE_FP8_E5M2 = 14, CUDNN_DTYPE_FP8_E4M3 = 15, CUDNN_DTYPE_FAST_FLOAT_FOR_FP8 = 16, // This should always be the last data type CUDNN_DTYPE_COUNT = 17 } cudnnKernelDataType_t; typedef enum { CUDNN_TENSOR_NCHW = 0, /* row major (wStride = 1, hStride = w) */ CUDNN_TENSOR_NHWC = 1, /* feature maps interleaved ( cStride = 1 )*/ CUDNN_TENSOR_NCHW_VECT_C = 2, /* each image point is vector of element of C, vector length in data type */ } cudnnTensorFormat_t; #define CONV2D_C1_K1_NHWC_THREAD_COUNT (256) #define CONV2D_C1_K1_NHWC_H_PER_THREAD (2) #define CONV2D_C1_K1_NHWC_W_PER_THREAD (2) #define DGRAD2D_C1_K1_NHWC_THREAD_COUNT (256) #define DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD (2) #define DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD (2) typedef enum { CUDNN_ACTIVATION_SIGMOID = 0, CUDNN_ACTIVATION_RELU = 1, CUDNN_ACTIVATION_TANH = 2, CUDNN_ACTIVATION_CLIPPED_RELU = 3, CUDNN_ACTIVATION_ELU = 4, CUDNN_ACTIVATION_IDENTITY = 5, CUDNN_ACTIVATION_SWISH = 6 } cudnnActivationMode_t; typedef enum { CUDNN_NOT_PROPAGATE_NAN = 0, CUDNN_PROPAGATE_NAN = 1, } cudnnNanPropagation_t; typedef enum { CUDNN_DEFAULT_MATH = 0, CUDNN_TENSOR_OP_MATH = 1, CUDNN_TENSOR_OP_MATH_ALLOW_CONVERSION = 2, CUDNN_FMA_MATH = 3, } cudnnMathType_t; struct cudnnActivationStruct { double coef; // for the "clipped" relu : max{0, x, coef} , for ELU : if x < 0 output = coef* exp(x) double m_swish_beta = 1.0; cudnnActivationMode_t mode; cudnnNanPropagation_t reluNanOpt; __inline__ __device__ cudnnActivationStruct() {} __inline__ __device__ cudnnActivationStruct(double coef_, cudnnActivationMode_t mode_, cudnnNanPropagation_t reluNanOpt_) : coef(coef_), mode(mode_), reluNanOpt(reluNanOpt_) {} __inline__ __device__ cudnnActivationStruct(double coef_, cudnnActivationMode_t mode_, cudnnNanPropagation_t reluNanOpt_, double swish_beta) : coef(coef_), m_swish_beta(swish_beta), mode(mode_), reluNanOpt(reluNanOpt_) {} }; struct cudnnTensorStruct { cudnnDataType_t dataType = CUDNN_DATA_FLOAT; /**< Datatype of tensor */ cudnnVectorization_t vect = CUDNN_VECT_NONE; /**< Vectorization type of tensor */ int32_t nbDims = 0; /**< Number of dimensions of the tensor */ size_t nbElemsWithStrides = 0; /**< in Elements, including the striding, computed on cudnnSetTensor */ size_t nbElemsWithoutStrides = 0; /**< in Elements, excluding the striding i.e. only "valid" data elements of the tensor, computed on cudnnSetTensor */ int32_t dimA[CUDNN_DIM_MAX] = {0}; /**< Array of dimensions, by convention batch, feature, ... */ int32_t strideA[CUDNN_DIM_MAX] = {0}; /**< Array of strides, by convention batch, feature, ... */ cudnnKernelDataType_t kernType = CUDNN_DTYPE_FP32; /**< rounding mode ... maybe use dualType_t in the future */ bool m_is_large_tensor = false; }; struct cudnnFilterStruct { cudnnDataType_t dataType; /**< datatype of the filter */ cudnnVectorization_t vect; /**< vectorization type of the filter */ int nbDims; /**< number of dimensions of the filter */ int dimA[CUDNN_DIM_MAX]; /**< Array of dimensions; by convention batch, feature, ... */ cudnnTensorFormat_t format; /**< format of the filter */ }; struct cudnnConvolutionStruct { cudnnConvolutionMode_t mode; cudnnDataType_t dataType; /* datatype of the convolution math */ cudnnMathType_t mathType; /* math type of the convolution math */ cudnnReorderType_t reorderType; /* reorder type of the convolution math */ int arrayLength; int padA[CUDNN_DIM_MAX - 2]; int strideA[CUDNN_DIM_MAX - 2]; /* convolution strides */ int dilationA[CUDNN_DIM_MAX - 2]; /* dilation factor */ int groupCount; __inline__ __device__ cudnnConvolutionStruct() { memset(this, 0, sizeof(*this)); } }; //#include //#ifndef __REDUCED_MATH_H__ //#define __REDUCED_MATH_H__ //#include // Dynamically strength-reduced div and mod // // Ideas taken from Sean Baxter's MGPU library. // These classes provide for reduced complexity division and modulus // on integers, for the case where the same divisor or modulus will // be used repeatedly. namespace cudnn { namespace ops { // Count leading zeros - start from most significant bit. static int clz(int32_t x) { for (int32_t i = 31; i >= 0; --i) if (((1 << i) & x) != 0) { return 31 - i; } return 32; } static int32_t find_log_2(int32_t x, bool round_up = false) { int32_t a = 31 - clz(x); if (round_up) { a += !(0 == (x & (x - 1))); } return a; } static void find_divisor(int32_t denom, uint32_t& mul_coeff, uint32_t& shift_coeff) { if (denom == 0) { return; } if (denom == 1) { // if dividing by 1, reduced math doesn't work because mul_coeff would // need to be 2^32, which doesn't fit into unsigned int. the div() // routine handles this special case separately. mul_coeff = 0; shift_coeff = 0; return; } // To express the division N/D in terms of a multiplication, what we first // imagine is simply N*(1/D). However, 1/D will always evaluate to 0 (for D>1), // so we need another way. There's nothing that says we have to use exactly // the fraction 1/D; instead it could be any X/Y that reduces to 1/D (i.e., // Y=X*D), or at least to "close enough" to it. If we pick Y that is a power // of two, then the N*(X/Y) can be N*X followed by a right-shift by some amount. // The power of two we should pick should be at least 2^32, because in the // div() routine we'll use umulhi(), which returns only the upper 32 bits -- // this being equivalent to a right-shift by 32. But we might want a higher // power of two for better accuracy depending on the magnitude of the denominator. // Once we've picked Y, then X [our mul_coeff value] is simply Y/D, rounding up, // and we save shift_coeff as whatever further shift we have to do beyond // what the umulhi() implies. uint32_t p = 31 + find_log_2(denom, true); uint32_t m = ((1ull << p) + static_cast(denom - 1)) / static_cast(denom); mul_coeff = m; shift_coeff = p - 32; } static void find_divisor_v2(uint32_t& mul, uint32_t& shr, int x) { uint32_t p = 31 + find_log_2(2 * x, true); uint32_t m = (uint32_t)(((1ull << p) + (uint32_t)(2 * x) - 1) / (uint32_t)(2 * x)); mul = m; shr = p - 32; } __host__ __device__ __forceinline__ uint32_t umulhi(uint32_t x, uint32_t y) { #if defined(__CUDA_ARCH__) return __umulhi(x, y); #else uint64_t z = static_cast(x) * y; return static_cast(z >> 32); #endif } // TODO:in 3D convolution, the dividend of div_up can overflow if using uint32_t type. // may implement a function with same name in future. inline uint64_t div_up_uint64(uint64_t a, uint64_t b) { return (a + b - 1) / b; } } // end namespace ops class reduced_divisor { public: __device__ __forceinline__ reduced_divisor() {} __device__ __forceinline__ reduced_divisor(int32_t _y) : y(_y) { mul_coeff = 0U; shift_coeff = 0U; ops::find_divisor(y, mul_coeff, shift_coeff); } __device__ __forceinline__ reduced_divisor(uint32_t _mul_coeff, uint32_t _shift_coeff, int32_t _y) : mul_coeff(_mul_coeff), shift_coeff(_shift_coeff), y(_y) {} __device__ __forceinline__ int32_t div(int32_t x) const { // if dividing by 1, then find_divisor wouldn't have worked because // mul_coeff would have had to be 2^32, which can't be represented, // so we have to special case that one. return (y != 1) ? ops::umulhi(static_cast(x), mul_coeff) >> shift_coeff : x; } __device__ __forceinline__ int32_t mod(int32_t x) const { return x - (div(x) * y); } __device__ __forceinline__ void divmod(int32_t x, int32_t& q, int32_t& mod) const { q = div(x); mod = x - (q * y); } __device__ __forceinline__ int32_t get() const { return y; } __device__ __forceinline__ void get_mul_shift(uint32_t& mul, uint32_t& shift) { mul = mul_coeff; shift = shift_coeff; } protected: uint32_t mul_coeff; uint32_t shift_coeff; int32_t y; }; } // end namespace cudnn //#endif template static __inline__ __device__ T_ELEM cuGet(float); template <> __inline__ __device__ float cuGet(float x) { return x; } template <> __inline__ __device__ cutlass::half_t cuGet(float x) { return typeConvert(x); } template static __inline__ __device__ T_ELEM cuGet(cutlass::half_t); template <> __inline__ __device__ cutlass::half_t cuGet(cutlass::half_t x) { return x; } template <> __inline__ __device__ float cuGet(cutlass::half_t x) { return cutlass::half_t::convert(x); } template <> __inline__ __device__ int8_t cuGet(float x) { // Necessary buffer for conversion int intResult; // Compiles into F2I.S32.F32 & I2I.S8.S32.SAT asm("cvt.rni.sat.s8.f32 %0, %1;" : "=r"(intResult) : "f"(x)); // Return casted result (determined result after conversions) return (int8_t)intResult; } template T_ELEM cuNan(void); template <> __inline__ __device__ __host__ float cuNan(void) { // FP32 quiet NaN value, e.g. 0x7fc_00000 (the most significant fraction bit #22 // must be set, other mantissa bits can be zero or one). const unsigned nan32 = 0x7fc00000UL; const float nan_val = *(float *)&nan32; return nan_val; } static __inline__ __device__ __host__ float cuFma(float x, float y, float d) { return ((x * y) + d); } static __inline__ __device__ __host__ float cuMul(float x, float y) { return (x * y); } static __inline__ __device__ __host__ float cuExp(float x) { return expf(x); } static __inline__ __device__ __host__ float cuDiv(float x, float y) { #if defined(__CUDA_ARCH__) return __fdividef(x, y); #else return (x / y); #endif } static __inline__ __device__ __host__ float cuAdd(float x, float y) { return (x + y); } static __inline__ __device__ __host__ float cuSub(float x, float y) { return (x - y); } namespace fort { typedef cutlass::half_t half_t; typedef cutlass::uint1b_t uint1b_t; typedef cutlass::bfloat16_t bfloat16_t; }POOLING_AVERAGE_COUNT_INCLUDE_PADDINGPOOLING_AVERAGE_COUNT_EXCLUDE_PADDING #define T_ELEM {x_data_type} #define T_MATH {compute_data_type} #define PROPAGATE_NAN {PROPAGATE_NAN} #define T_POOLING struct pooling_func #define GENERIC_WINDOW_WIDTH false #define C_ALIGNMENT {C_ALIGNMENT} extern "C" __launch_bounds__(256) __global__ void {interface_name}( {params_string} ) {{ PoolingFwParams params; params.pooling_mode = {pooling_mode}; params.xData = {x_data_string}; params.yData = {y_data_string}; //xDesc.dim[0] = static_cast(s.width); //xDesc.dim[1] = static_cast(s.height); //xDesc.dim[2] = static_cast(s.depth); //xDesc.dim[3] = static_cast(s.channels); //xDesc.dim[4] = static_cast(s.batches); params.xDesc.dim[0] = static_cast({x_desc_string}.dims[2]); params.xDesc.dim[1] = static_cast({x_desc_string}.dims[1]); params.xDesc.dim[3] = static_cast({x_desc_string}.dims[3]); params.xDesc.dim[4] = static_cast({x_desc_string}.dims[0]); //xDesc.stride[0] = static_cast(s.stride.width); //xDesc.stride[1] = static_cast(s.stride.height); //xDesc.stride[2] = static_cast(s.stride.depth); //xDesc.stride[3] = static_cast(s.stride.channels); //xDesc.stride[4] = static_cast(s.stride.batches); params.xDesc.stride[0] = static_cast({x_desc_string}.strides[2]); params.xDesc.stride[1] = static_cast({x_desc_string}.strides[1]); params.xDesc.stride[3] = static_cast({x_desc_string}.strides[3]); params.xDesc.stride[4] = static_cast({x_desc_string}.strides[0]); params.yDesc.dim[0] = static_cast({y_desc_string}.dims[2]); params.yDesc.dim[1] = static_cast({y_desc_string}.dims[1]); params.yDesc.dim[3] = static_cast({y_desc_string}.dims[3]); params.yDesc.dim[4] = static_cast({y_desc_string}.dims[0]); params.yDesc.stride[0] = static_cast({y_desc_string}.strides[2]); params.yDesc.stride[1] = static_cast({y_desc_string}.strides[1]); params.yDesc.stride[3] = static_cast({y_desc_string}.strides[3]); params.yDesc.stride[4] = static_cast({y_desc_string}.strides[0]); int32_t const window_width_bounded = __NV_STD_MIN(static_cast({window_width}), POOLING_MAX_THREADS_PER_CTA); int32_t const total_thread_count = window_width_bounded * static_cast({y_desc_string}.dims[1]) * static_cast({y_desc_string}.dims[2]); params.total_yH_yW_winW = total_thread_count; params.windowDimA[0] = static_cast({window_height}); params.windowDimA[1] = static_cast({window_width}); // params.windowDimA[2] = static_cast(arguments.win_depth); params.paddingA[0] = pooling_forward_params.paddingA[0]; params.paddingA[1] = pooling_forward_params.paddingA[1]; params.paddingA[2] = pooling_forward_params.paddingA[2]; params.paddingA[3] = pooling_forward_params.paddingA[3]; // params.paddingA[4] = static_cast(arguments.padding_front); // params.paddingA[5] = static_cast(arguments.padding_back); params.strideA[0] = static_cast({stride_height}); params.strideA[1] = static_cast({stride_width}); // params.strideA[2] = static_cast(arguments.stride_depth); // params.window_width_bounded_divisor = cudnn::reduced_divisor(window_width_bounded); params.window_width_bounded_divisor = pooling_forward_params.window_width_bounded_divisor; // params.output_divisor = cudnn::reduced_divisor(static_cast(arguments.y.width)); // params.output_divisor = cudnn::reduced_divisor(static_cast({y_desc_string}.dims[2])); params.output_divisor = pooling_forward_params.output_divisor; pooling_fw_4d_kernel_vectorizedC(params); struct C1K1NhwcParams { // Since this kernel supports 2D only, it's fine to define 4 elements for the strides int32_t wStrideA[4]; cudnn::reduced_divisor y_h_reduced; cudnn::reduced_divisor y_w_reduced; cudnn::reduced_divisor y_c_reduced; C1K1NhwcParams(const int32_t strideA[4], const uint32_t y_h, const uint32_t y_w, const uint32_t y_c) : y_h_reduced(y_h), y_w_reduced(y_w), y_c_reduced(y_c) { for (int32_t i = 0; i < 4; ++i) { wStrideA[i] = strideA[i]; } } }; #define T_IN_ELEM {x_data_type} #define T_OUT_ELEM {y_data_type} #define T_FILT_ELEM {w_data_type} #define T_MATH_CONV {compute_data_type} #define T_MATH_ALPHA_BETA float #define FILTER_R {filter_r} #define FILTER_S {filter_s} #define CONV_STRIDE_H {conv_stride_h} #define CONV_STRIDE_W {conv_stride_w} #define CONV_DILATION_H {conv_dilation_h} #define CONV_DILATION_W {conv_dilation_w}(convolution_descriptor_0.C / convolution_descriptor_0.groups)(convolution_descriptor_0.K / convolution_descriptor_0.groups) #define C_PER_GROUP {C_per_group} #define K_PER_GROUP {K_per_group} #define USE_BUFFERS false #define C_PER_GROUP {C_per_group} #define K_PER_GROUP {K_per_group} #define USE_BUFFERS true template __inline__ __device__ void conv2d_c1_k1_nhwc_kernel({params_string}, const cudnnTensorStruct xDesc, const T_IN_ELEM *xData, const cudnnFilterStruct wDesc, const T_FILT_ELEM *wData, const cudnnConvolutionStruct convDesc, const cudnnTensorStruct yDesc, const int32_t y_elem_count, C1K1NhwcParams params ) {{ // NOTE: Variable name convention is as follows: // - ALL_CAP : template or compiler or pure constant var // - TitleCap : can be template or runtime. Optimized path only for template // - firstLower : runtime variable // Perf relies on using fetch buffers for wData and xData for data reuse and unrolling loops by using compiler-aware // values: TitleCap vars must take template values. Though the function is written to work correctly without this // condition, but not necessarily high-perf. const bool WS_TMPLVAR = FILTER_R > 0; // whether window size is template vars. const int32_t WindowSizeH = WS_TMPLVAR ? FILTER_R : wDesc.dimA[2]; const int32_t WindowSizeW = WS_TMPLVAR ? FILTER_S : wDesc.dimA[3]; const int32_t W_BUF_SIZE = 5; // fixed buffer size to use when WindowSizeH and WindowSizeW are runtime vars. const bool UseWBuffer = WS_TMPLVAR || (WindowSizeH <= W_BUF_SIZE && WindowSizeW <= W_BUF_SIZE); #if USE_BUFFERS T_FILT_ELEM wData_hw[(WS_TMPLVAR) ? WindowSizeH : W_BUF_SIZE][(WS_TMPLVAR) ? WindowSizeW : W_BUF_SIZE][C_PER_GROUP]; #endif const bool CS_TMPLVAR = CONV_STRIDE_H > 0; // whether conv-stride are template vars const int32_t ConvStrideH = CS_TMPLVAR ? CONV_STRIDE_H : convDesc.strideA[0]; const int32_t ConvStrideW = CS_TMPLVAR ? CONV_STRIDE_W : convDesc.strideA[1]; const int32_t XDataBufSzH = (CONV_DILATION_H * WindowSizeH - CONV_DILATION_H + 1) + (CONV2D_C1_K1_NHWC_H_PER_THREAD - 1) * ConvStrideH; const int32_t XDataBufSzW = (CONV_DILATION_W * WindowSizeW - CONV_DILATION_W + 1) + (CONV2D_C1_K1_NHWC_W_PER_THREAD - 1) * ConvStrideW; const int32_t X_BUF_SIZE = 7; // fixed buffer size to use when ConvStrideH or ConvStrideW are runtime var. const bool UseXBuffer = ((CS_TMPLVAR && XDataBufSzH * XDataBufSzW * C_PER_GROUP <= 144) || (XDataBufSzH <= X_BUF_SIZE && XDataBufSzW <= X_BUF_SIZE) // or they are smaller than fixed max. ); #if USE_BUFFERS T_IN_ELEM xData_hw[(CS_TMPLVAR) ? XDataBufSzH : X_BUF_SIZE][(CS_TMPLVAR) ? XDataBufSzW : X_BUF_SIZE][C_PER_GROUP]; #endif // Index for individual thread const int32_t tid = blockIdx.x * blockDim.x + threadIdx.x; // compute (n,h,w,c) index for the first pixel process by current thread. int32_t y_ci, y0_wi, y0_hi, y_ni; { int32_t y_ni_hi_wi, y_ni_hi; params.y_c_reduced.divmod(tid, y_ni_hi_wi, y_ci); params.y_w_reduced.divmod(y_ni_hi_wi, y_ni_hi, y0_wi); params.y_h_reduced.divmod(y_ni_hi, y_ni, y0_hi); } y0_hi *= CONV2D_C1_K1_NHWC_H_PER_THREAD; y0_wi *= CONV2D_C1_K1_NHWC_W_PER_THREAD; // yData index for the (0,0) pixel of the particular (n,c) image processed by this thread const int32_t y00_idx = y_ni * yDesc.strideA[0] + y0_hi * yDesc.strideA[2] + y0_wi * yDesc.strideA[3] + y_ci * yDesc.strideA[1]; // NHWC const int32_t row0_idx = y_ni * yDesc.dimA[2] * yDesc.dimA[3] + y0_hi * yDesc.dimA[3] + y0_wi; if (y00_idx >= y_elem_count) { return; // out of bound; should not happen when numbers of threads is correctly calculated. } #if USE_BUFFERS if (UseWBuffer) { // ldg wData for channel into wData_hw array for (int32_t hi = 0; hi < WindowSizeH; ++hi) { for (int32_t wi = 0; wi < WindowSizeW; ++wi) { for (int32_t gi = 0; gi < C_PER_GROUP; ++gi) { const int32_t w_idx = (y_ci * params.wStrideA[0] + hi * params.wStrideA[2] + wi * params.wStrideA[3]) * C_PER_GROUP + gi; const int32_t mode_hi = (IS_CORR) ? hi : WindowSizeH - 1 - hi; const int32_t mode_wi = (IS_CORR) ? wi : WindowSizeW - 1 - wi; wData_hw[mode_hi][mode_wi][gi] = cuGet(wData[w_idx]); } } } } #endif int32_t x_ci = (y_ci / (yDesc.dimA[1] / (xDesc.dimA[1]/wDesc.dimA[1]))) * C_PER_GROUP; #if USE_BUFFERS if (UseXBuffer) { // loads a XDataBufSzH by XDataBufSzW patch of xData starting at index (x0_hi, x0_wi) into buffer xData_hw; if // index is out of bound, set to zero. // (h,w) index of the first input pixel, can be negative due to padding. const int32_t x0_hi = (y0_hi * ConvStrideH) - convDesc.padA[0]; const int32_t x0_wi = (y0_wi * ConvStrideW) - convDesc.padA[1]; // const int32_t x_ni = y_ni const int32_t x00_idx = y_ni * xDesc.strideA[0] + x_ci * xDesc.strideA[1] + x0_hi * xDesc.strideA[2] + x0_wi * xDesc.strideA[3]; if (x0_hi >= 0 && x0_hi + XDataBufSzH <= xDesc.dimA[2] && x0_wi >= 0 && x0_wi + XDataBufSzW <= xDesc.dimA[3]) { // optimized branch. In this branch every (relevant) elements of xData_hw is read from global memory xData for (int32_t x_hj = 0; x_hj < XDataBufSzH; ++x_hj) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { for (int32_t gi = 0; gi < C_PER_GROUP; ++gi) { const int32_t x_idx = x00_idx + x_hj * xDesc.strideA[2] + x_wj * xDesc.strideA[3] + gi; xData_hw[x_hj][x_wj][gi] = cuGet(xData[x_idx]); } } } } else { // unoptimized path. In this branch some elements of xData_hw maps to out-of-bound read of xData. for (int32_t x_hj = 0; x_hj < XDataBufSzH; ++x_hj) { for (int32_t x_wj = 0; x_wj < XDataBufSzW; ++x_wj) { if ((uint32_t(x0_hi + x_hj) < uint32_t(xDesc.dimA[2])) && (uint32_t(x0_wi + x_wj) < uint32_t(xDesc.dimA[3]))) { for (int32_t gi = 0; gi < C_PER_GROUP; ++gi) { const int32_t x_idx = x00_idx + x_hj * xDesc.strideA[2] + x_wj * xDesc.strideA[3] + gi; xData_hw[x_hj][x_wj][gi] = cuGet(xData[x_idx]); } } else { for (int32_t gi = 0; gi < C_PER_GROUP; ++gi) { xData_hw[x_hj][x_wj][gi] = 0; } } } } } } #endif // Compute and output loop T_MATH_CONV accumA[CONV2D_C1_K1_NHWC_H_PER_THREAD][CONV2D_C1_K1_NHWC_W_PER_THREAD]; { // compute convolution memset(accumA, 0, sizeof(accumA)); for (int32_t hi = 0; hi < WindowSizeH; ++hi) { for (int32_t wi = 0; wi < WindowSizeW; ++wi) { for (int32_t gi = 0; gi < C_PER_GROUP; ++gi) { T_FILT_ELEM wVal; #if USE_BUFFERS if (UseWBuffer) { wVal = wData_hw[hi][wi][gi]; } else { const int32_t w_idx = (y_ci * params.wStrideA[0] + hi * params.wStrideA[2] + wi * params.wStrideA[3]) * C_PER_GROUP + gi; wVal = cuGet(wData[w_idx]); } #else const int32_t w_idx = (y_ci * params.wStrideA[0] + hi * params.wStrideA[2] + wi * params.wStrideA[3]) * C_PER_GROUP + gi; wVal = cuGet(wData[w_idx]); #endif for (int32_t y_hj = 0; y_hj < CONV2D_C1_K1_NHWC_H_PER_THREAD; ++y_hj) { for (int32_t y_wj = 0; y_wj < CONV2D_C1_K1_NHWC_W_PER_THREAD; ++y_wj) { T_IN_ELEM xVal; #if USE_BUFFERS if (UseXBuffer) { xVal = xData_hw[y_hj * ConvStrideH + hi * CONV_DILATION_H][y_wj * ConvStrideW + wi * CONV_DILATION_W][gi]; } else { // Not using buffer, perform totally unoptimized xData load here. const int32_t x_hi = ((y0_hi + y_hj) * ConvStrideH) - convDesc.padA[0] + hi * CONV_DILATION_H; const int32_t x_wi = ((y0_wi + y_wj) * ConvStrideW) - convDesc.padA[1] + wi * CONV_DILATION_W; if ((uint32_t(x_hi) < uint32_t(xDesc.dimA[2])) && (uint32_t(x_wi) < uint32_t(xDesc.dimA[3]))) { const int32_t x_idx = y_ni * xDesc.strideA[0] + x_ci * xDesc.strideA[1] + x_hi * xDesc.strideA[2] + x_wi * xDesc.strideA[3] + gi; xVal = cuGet(xData[x_idx]); } else { xVal = cuGet(0.0); } } #else // Not using buffer, perform totally unoptimized xData load here. const int32_t x_hi = ((y0_hi + y_hj) * ConvStrideH) - convDesc.padA[0] + hi * CONV_DILATION_H; const int32_t x_wi = ((y0_wi + y_wj) * ConvStrideW) - convDesc.padA[1] + wi * CONV_DILATION_W; if ((uint32_t(x_hi) < uint32_t(xDesc.dimA[2])) && (uint32_t(x_wi) < uint32_t(xDesc.dimA[3]))) { const int32_t x_idx = y_ni * xDesc.strideA[0] + x_ci * xDesc.strideA[1] + x_hi * xDesc.strideA[2] + x_wi * xDesc.strideA[3] + gi; xVal = cuGet(xData[x_idx]); } else { xVal = cuGet(0.0); } #endif accumA[y_hj][y_wj] = cuFma(cuGet(xVal), cuGet(wVal), accumA[y_hj][y_wj]); } } } } } // end double loop on y-hw index } template __inline__ __device__ void dgrad2d_c1_k1_nhwc_kernel({params_string}, const T_ELEM *__restrict__ dyData, const T_ELEM *__restrict__ wData, T_ELEM *__restrict__ dxData, cudnn::reduced_divisor x_width_reduced, // reduced divisor for wi of dx cudnn::reduced_divisor x_channel_reduced, // reduced divisor for ci of dx cudnn::reduced_divisor stride_h_reduced, // reduced divisor for h stride of conv cudnn::reduced_divisor stride_w_reduced, // reduced divisor for w stride of conv const int32_t num_tiles ) { const int32_t dgrad_pad_h = (convolution_descriptor_0.R - 1) * convolution_descriptor_0.dilation_h - convolution_descriptor_0.pad_h; const int32_t dgrad_pad_w = (convolution_descriptor_0.S - 1) * convolution_descriptor_0.dilation_w - convolution_descriptor_0.pad_w; const int32_t pqk = static_cast(convolution_descriptor_0.P) * static_cast(convolution_descriptor_0.Q) * static_cast(convolution_descriptor_0.K); const int32_t qk = static_cast(convolution_descriptor_0.Q) * static_cast(convolution_descriptor_0.K); const int32_t hwg = static_cast(convolution_descriptor_0.H) * static_cast(convolution_descriptor_0.W) * static_cast(convolution_descriptor_0.C); const int32_t wg = static_cast(convolution_descriptor_0.W) * static_cast(convolution_descriptor_0.C); const int32_t tid = blockIdx.x * blockDim.x + threadIdx.x; // x_hi_wi_ci const int32_t x_ni = blockIdx.y; int32_t x_ci, x_hi_wi, x0_hi, x0_wi; x_channel_reduced.divmod(tid, x_hi_wi, x_ci); x_width_reduced.divmod(x_hi_wi, x0_hi, x0_wi); x0_hi *= DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; // first height index of tile x0_wi *= DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; // first width index of tile if (tid >= num_tiles) return; // thread id exceeded number of tiles to process int32_t x_idx_offset = x_ni * hwg + x_ci; int32_t y_ki = (x_ci / C_PER_GROUP) * K_PER_GROUP; for (int32_t hi = 0; hi < DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD; ++hi) { for (int32_t wi = 0; wi < DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD; ++wi) { const int32_t x_hi = x0_hi + hi; const int32_t x_wi = x0_wi + wi; if (x_hi >= convolution_descriptor_0.H || x_wi >= convolution_descriptor_0.W) continue; T_MATH accum = cuGet(0.0); for (int32_t w_hi = 0; w_hi < convolution_descriptor_0.R; ++w_hi) { for (int32_t w_wi = 0; w_wi < convolution_descriptor_0.S; ++w_wi) { const int32_t xp_hi = x_hi - dgrad_pad_h + w_hi * convolution_descriptor_0.dilation_h; const int32_t xp_wi = x_wi - dgrad_pad_w + w_wi * convolution_descriptor_0.dilation_w; if (xp_hi >= 0 && xp_wi >= 0) { int32_t y_hi, y_hi_off; int32_t y_wi, y_wi_off; // NOTE: divmod gives erroneous result when numerator is negative. stride_h_reduced.divmod(xp_hi, y_hi, y_hi_off); stride_w_reduced.divmod(xp_wi, y_wi, y_wi_off); if (y_hi_off == 0 && y_wi_off == 0 && y_hi < convolution_descriptor_0.P && y_wi < convolution_descriptor_0.Q) { const int32_t mode_w_hi = (IS_CORR) ? convolution_descriptor_0.R - 1 - w_hi : w_hi; const int32_t mode_w_wi = (IS_CORR) ? convolution_descriptor_0.S - 1 - w_wi : w_wi; for (int32_t gi = 0; gi < K_PER_GROUP; ++gi) { const T_ELEM w_val = wData[((y_ki + gi) * convolution_descriptor_0.R * convolution_descriptor_0.S + mode_w_hi * convolution_descriptor_0.S + mode_w_wi) * C_PER_GROUP + x_ci % C_PER_GROUP]; const T_ELEM dy_val = dyData[x_ni * pqk + y_hi * qk + y_wi * convolution_descriptor_0.K + y_ki + gi]; accum = cuFma(cuGet(dy_val), cuGet(w_val), accum); } } } } } const int32_t x_idx = x_hi * wg + x_wi * convolution_descriptor_0.C; namespace fort { typedef cutlass::half_t half_t; } extern "C" __launch_bounds__(CONV2D_C1_K1_NHWC_THREAD_COUNT) __global__ void {interface_name}( {params_string} ) {{ T_IN_ELEM* xData = {param_1}; T_IN_ELEM* wData = {param_2}; T_OUT_ELEM* dxData = {param_3}; cudnnTensorStruct xDesc; xDesc.dimA[0] = convolution_size.N; xDesc.dimA[1] = convolution_size.C; xDesc.dimA[2] = convolution_size.H; xDesc.dimA[3] = convolution_size.W; xDesc.strideA[0] = {x_desc_string}.strides[0]; xDesc.strideA[1] = 1; xDesc.strideA[2] = {x_desc_string}.strides[2]; xDesc.strideA[3] = {x_desc_string}.strides[3]; cudnnFilterStruct wDesc; wDesc.dimA[0] = convolution_size.K; wDesc.dimA[1] = C_PER_GROUP; //1; //convolution_size.C; wDesc.dimA[2] = convolution_size.R; wDesc.dimA[3] = convolution_size.S; cudnnConvolutionStruct convDesc; convDesc.strideA[0] = convolution_size.stride_h; convDesc.strideA[1] = convolution_size.stride_w; convDesc.padA[0] = convolution_size.pad_h; convDesc.padA[1] = convolution_size.pad_w; cudnnTensorStruct yDesc; yDesc.dimA[0] = convolution_size.N; yDesc.dimA[1] = convolution_size.K; yDesc.dimA[2] = convolution_size.P; yDesc.dimA[3] = convolution_size.Q; yDesc.strideA[0] = {y_desc_string}.strides[0]; yDesc.strideA[1] = 1; yDesc.strideA[2] = {y_desc_string}.strides[2]; yDesc.strideA[3] = {y_desc_string}.strides[3]; const uint32_t y_elem_count = yDesc.dimA[0] * yDesc.dimA[1] * yDesc.dimA[2] * yDesc.dimA[3]; const int32_t strideA[4] = { wDesc.dimA[2] * wDesc.dimA[3], // k stride 1, // c stride wDesc.dimA[3], // r stride 1 // s stride }; uint32_t num_hgroups = fort::div_up(yDesc.dimA[2], CONV2D_C1_K1_NHWC_H_PER_THREAD); uint32_t num_wgroups = fort::div_up(yDesc.dimA[3], CONV2D_C1_K1_NHWC_W_PER_THREAD); C1K1NhwcParams params(strideA, num_hgroups, num_wgroups, (uint32_t)yDesc.dimA[1]); conv2d_c1_k1_nhwc_kernel //const bool DO_BIAS_ACT> ( {params_string} xDesc, xData, wDesc, wData, convDesc, yDesc, y_elem_count, params ); T_IN_ELEM* dyData = xData; int32_t h_tiles = fort::div_up(convolution_size.H, DGRAD2D_C1_K1_NHWC_DX_H_PER_THREAD); int32_t w_tiles = fort::div_up(convolution_size.W, DGRAD2D_C1_K1_NHWC_DX_W_PER_THREAD); int32_t num_hwtiles = h_tiles * w_tiles * convolution_size.C; cudnn::reduced_divisor x_width_reduced(w_tiles); cudnn::reduced_divisor x_channel_reduced(static_cast(convolution_size.C)); cudnn::reduced_divisor stride_h_reduced(static_cast(convolution_size.stride_h)); cudnn::reduced_divisor stride_w_reduced(static_cast(convolution_size.stride_w)); dgrad2d_c1_k1_nhwc_kernel //const bool IS_CORR, ( {params_string} dyData, wData, dxData, x_width_reduced, x_channel_reduced, stride_h_reduced, stride_w_reduced, num_hwtiles );AveragePOOLING_MAXint8x_data_typePROPAGATE_NANPoolingTypeC_ALIGNMENTpooling_modex_desc_stringy_desc_stringwindow_heightwindow_widthstride_heightstride_widthw_data_typefilter_rfilter_sconv_stride_hconv_stride_wconv_dilation_hconv_dilation_wC_per_groupK_per_group } } }param_1param_3 {whole_str} typedef signed int int32_t; typedef unsigned inlong long int64_t; typedef unsigned long long ui // reorder {guid} includes #include "cutlass/epilogue/warp/fragment_iterator_tensor_op.h" #include "cutlass/epilogue/warp/fragment_iterator_volta_tensor_op.h" #include "cutlass/gemm/warp/mma_tensor_op_fragment_iterator.h" #include "cutlass/epilogue/thread/linear_combination.h" // reorder {guid} decls FragmentIterator fragment_iterator({input_0_array_name}); FragmentIterator::OutputOp::Params output_op_params_{guid}; FragmentIterator::OutputOp output_op_{guid}(output_op_params_{guid}); typename FragmentIterator::Fragment array_{guid}_{port}; // reorder {guid} logic if(warp_mma_k != MmaBase::kWarpGemmIterations - 1 || gemm_k_iterations != (-MmaBase::kStages + 1)){{ fragment_iterator.load(array_{guid}_{port}, output_op_{guid}); ++fragment_iterator; }} // reorder {guid} logic fragment_iterator.load(array_{guid}_{port}, output_op_{guid}); ++fragment_iterator; // reorder {guid} logic typename FragmentIterator::Fragment array_{guid}_{port}; fragment_iterator.load(array_{guid}_{port}); ++fragment_iterator;elements_computed_per_operation // reorder {guid} types using AccumulatorLayout = cutlass::layout::ColumnMajor; using FragmentIterator = cutlass::gemm::warp::MmaTensorOpFragmentIterator< cutlass::MatrixShape<{warp_shape_M}, {operator_shape_K}>, cutlass::MatrixShape<{input_0_warp_shape_M}, {input_0_warp_shape_N}>, {threadblock_shape_K}, {input_0_data_type}, fort::half_t, AccumulatorLayout, cutlass::gemm::GemmShape<{operator_shape_M}, {operator_shape_N}, {operator_shape_K}>, cutlass::epilogue::thread::LinearCombination< fort::half_t, {elements_computed_per_operation}, {input_0_data_type}, {input_0_data_type} > >; // reorder {guid} types using FragmentIterator = cutlass::epilogue::warp::FragmentIterator{is_volta}TensorOp< cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, cutlass::gemm::GemmShape<{operator_shape_M}, {operator_shape_N}, {operator_shape_K}>, {input_0_data_type}, {comment_out}cutlass::Array<{input_0_data_type}, {fragment_size}>, cutlass::layout::{input_0_layout} >;//input_0_warp_shape_Minput_0_warp_shape_Noperator_shape_Nfragment_sizecomment_out10reorder_op //No reorder_op includes for xmma backend so far {ind}//No reorder_op decls for xmma backend so far {ind}// reorder_op {guid} types for xmma backend {ind}using Fragment_compute_type_{guid} = xmma::Fragment_epilogue; {ind}using Fragment_type_{guid} = xmma::Fragment<{output_data_type}, Fragment_compute_type_{guid}::NUM_ELTS>; {ind}// reorder_op {guid} types for xmma backend {ind}using Fragment_type_{guid} = xmma::Fragment_epilogue_pre_swizzle; {ind}// reorder_op {guid} code for xmma backend {ind}Fragment_type_{guid} reg_{guid}_{port1}[FRAGMENTS_PER_TILE]; {ind}Fragment_compute_type_{guid} reg_{guid}_{port0}[STGS][FRAGMENTS_PER_TILE]; {ind}#pragma unroll {ind}for(int si = 0; si < STGS; si++) {{ {ind}#pragma unroll {ind}for(int ii = 0; ii < FRAGMENTS_PER_TILE; ii++) {{ {ind} reg_{guid}_{port0}[si][ii].template convert(mi, (ni * STGS + si), ii, compute_tile_{pipeline_id}.acc_[xmmas_mi]); {ind}}} {ind}}} {ind}// reorder_op {guid} code for xmma backend {ind}Fragment_type_{guid} reg_{guid}_{port1}[FRAGMENTS_PER_TILE]; {ind}Fragment_compute_type_{guid} reg_{guid}_{port0}[FRAGMENTS_PER_TILE]; {ind}#pragma unroll {ind}for(int ii = 0; ii < FRAGMENTS_PER_TILE; ii++) {{ {ind} reg_{guid}_{port0}[ii].template convert(mi, ni, ii, compute_tile_{pipeline_id}.acc_[xmmas_mi]); {ind}}} {ind}#pragma unroll {ind}for(int ii = 0; ii < FRAGMENTS_PER_TILE; ++ii) {{{pack_to_output} {ind}}} // reorder_op {guid} code for xmma backend Fragment_type_{guid} reg_{guid}_{port}[XMMAS_N_{parent_id}]; #pragma unroll for(int ci = 0; ci < XMMAS_N_{parent_id}; ++ci) {{ reg_{guid}_{port}[ci].reg( 0 ) = reg_{input_index}_{input_port}[si][ci].reg( 0 ); reg_{guid}_{port}[ci].reg( 1 ) = reg_{input_index}_{input_port}[si][ci].reg( 2 ); reg_{guid}_{port}[ci].reg( 2 ) = reg_{input_index}_{input_port}[si][ci].reg( 1 ); reg_{guid}_{port}[ci].reg( 3 ) = reg_{input_index}_{input_port}[si][ci].reg( 3 ); }} // reorder_op {guid} code for xmma backend Fragment_type_{guid} reg_{guid}_{port}[XMMAS_N_{parent_id}]; #pragma unroll for(int ci = 0; ci < XMMAS_N_{parent_id}; ++ci) {{ reg_{guid}_{port}[ci].elt( 0 ) = reg_{input_index}_{input_port}[si][ci].elt( 0 ); reg_{guid}_{port}[ci].elt( 1 ) = reg_{input_index}_{input_port}[si][ci].elt( 1 ); reg_{guid}_{port}[ci].elt( 2 ) = reg_{input_index}_{input_port}[si][ci].elt( 4 ); reg_{guid}_{port}[ci].elt( 3 ) = reg_{input_index}_{input_port}[si][ci].elt( 5 ); reg_{guid}_{port}[ci].elt( 4 ) = reg_{input_index}_{input_port}[si][ci].elt( 2 ); reg_{guid}_{port}[ci].elt( 5 ) = reg_{input_index}_{input_port}[si][ci].elt( 3 ); reg_{guid}_{port}[ci].elt( 6 ) = reg_{input_index}_{input_port}[si][ci].elt( 6 ); reg_{guid}_{port}[ci].elt( 7 ) = reg_{input_index}_{input_port}[si][ci].elt( 7 ); }} // reorder_op {guid} code for xmma backend Fragment_type_{guid} reg_{guid}_{port}[XMMAS_N_{parent_id}]; #pragma unroll for(int ci = 0; ci < XMMAS_N_{parent_id}; ++ci) {{ reg_{guid}_{port}[ci].elt( 0 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 0 )); reg_{guid}_{port}[ci].elt( 1 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 1 )); reg_{guid}_{port}[ci].elt( 2 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 2 )); reg_{guid}_{port}[ci].elt( 3 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 3 )); reg_{guid}_{port}[ci].elt( 4 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 4 )); reg_{guid}_{port}[ci].elt( 5 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 5 )); reg_{guid}_{port}[ci].elt( 6 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 6 )); reg_{guid}_{port}[ci].elt( 7 ) = xmma::i2f( reg_{input_index}_{input_port}[si][ci].elt( 7 )); }}port0port1pipeline_idreg_{}_0[ii]reg_{}_1[ii] //No reorder_op includes for xmma backend so fa // reorder {guid} includes // reorder {guid} decls // reorder {guid} types // reorder {guid} logic // Repack for the next BMM. fmha::Fragment_a frag_p_{guid}[Mma_tile_o2::MMAS_K][Mma_tile_o2::MMAS_M]; softmax.pack(frag_p_{guid});p_dropout6rng_op // rng {guid} includes #include "fmha/philox.cuh" // rng {guid} logic auto encode_dropout = [](bool keep, float val) {{ return keep ? val : -val; }}; #pragma unroll for( int mi = 0; mi < Mma_tile_o1::MMAS_M; mi++ ) {{ #pragma unroll for( int ii = 0; ii < 2; ii++ ) {{ #pragma unroll for( int ni = 0; ni < Mma_tile_o1::MMAS_N; ni++ ) {{ float4 tmp = uniform4(ph_{guid}()); // We encode the dropout pattern in the sign bit of the non-negative softmax to distinguish from pre-existing zeros softmax.elt_[2 * mi + ii][4 * ni + 0] = encode_dropout(tmp.x <= params.p_dropout, softmax.elt_[2 * mi + ii][4 * ni + 0]); softmax.elt_[2 * mi + ii][4 * ni + 1] = encode_dropout(tmp.y <= params.p_dropout, softmax.elt_[2 * mi + ii][4 * ni + 1]); softmax.elt_[2 * mi + ii][4 * ni + 2] = encode_dropout(tmp.z <= params.p_dropout, softmax.elt_[2 * mi + ii][4 * ni + 2]); softmax.elt_[2 * mi + ii][4 * ni + 3] = encode_dropout(tmp.w <= params.p_dropout, softmax.elt_[2 * mi + ii][4 * ni + 3]); }} }} }} // rng {guid} decls Philox ph_{guid}((unsigned long){seed}, blockIdx.x * gridDim.x + threadIdx.x, (unsigned long){offset});{seed}16row_broadcast_op // row broadcast {guid} logic // Finalize softmax on the accumulators of P^T. softmax.scale(p_sum); // row reduce {guid} decls using OutputTileThreadMap = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}, {threadblock_shape_N}, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, {partitions_k}, {output_loop_output_0_data_type}, {elements_per_access} {element_output} >::Type; using OutputTileIterator = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< OutputTileThreadMap, {output_loop_output_0_data_type} >; int const kRowCount_{guid} = OutputTileThreadMap::Iterations::kGroup * OutputTileThreadMap::Iterations::kRow * OutputTileIterator::kIterations; cutlass::Array<{compute_data_type}, kRowCount_{guid}> sums_array_{guid}_{port}; CUTLASS_PRAGMA_UNROLL for(int i=0; i; {ind}// Row reduction {_g} decls {ind}Fragment_type_{_g} reg_{_g}_{port}[{num_regs}]; {ind}// Row reduction {guid} decls {ind}Fragment_type_{guid} reg_{guid}_{port}[STGS]; {ind}const int groupSize_{guid} = Gmem_tile_{parent_id}::THREADS_PER_ROW <= 32 ? Gmem_tile_{parent_id}::THREADS_PER_ROW : 32; {ind}const uint32_t mask_{guid} = (uint64_t(1) << groupSize_{guid}) - 1;reg_{_g}_{port}[{index}].elt(0)typeConvert<{compute_data_type}>({input}[ii].elt(i))typeConvert<{compute_data_type}>({output}) {ind}// Row reduction {_g} logic {ind}#pragma unroll {ind}for (int ii = 0; ii < STGS; ii++) {{ {ind} #pragma unroll {ind} for (int i = 0; i < NUM_ELTS_{ol_g}; ++i) {{ {ind} int column_index = (i / ELEMENT_PER_STG) * (ELEMENT_PER_STG * STG_THREADS_PER_TILE_N) + i % ELEMENT_PER_STG; {ind} if (offsets_n_{ol_g}[ii] + col_{ol_g} + column_index < {params_n}) {{ {ind} {output} = {rhs_operator}; {ind} }} {ind} }} {ind}}} {ind}// Row reduction {_g} logic {ind}#pragma unroll {ind}for (int ii = 0; ii < STGS; ii++) {{ {ind} if (mask_{ol_g}[ii] >= 0) {{ {ind} #pragma unroll {ind} for (int i = 0; i < NUM_ELTS_{ol_g}; ++i) {{ {ind} {output} = {rhs_operator}; {ind} }} {ind} }} {ind}}} {ind}// Row reduction {guid} logic {ind}for (int ii = 0; ii < STGS; ii++) {{ {ind} {output} = {default_value}; {ind} for (int i = 0; i < NUM_ELTS_{parent_id}; ++i) {{ {ind} {output} = typeConvert<{output_data_type}>({rhs_operator}); {ind} }} {ind} // Warp-wide reduction {ind} for (int i = groupSize_{guid} / 2; i > 0; i /= 2) {{ {ind} float ftmp = __shfl_down_sync(mask_{guid}, {output}, i, groupSize_{guid}); {ind} {output} = STGSnum_regsreg_{guid}_{port}ftmp{output}; {ind} }} {ind}}}u_ԖI3jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj|›eN9ܠ"Ţh S; {ind} }} {ind // row reduce {guid} logic {{ cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); int iter_start_row = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; int sum_array_idx = iter*OutputTileThreadMap::Iterations::kRow*OutputTileThreadMap::Iterations::kGroup + group * OutputTileThreadMap::Iterations::kRow + row; CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; ++column) {{ // // Add the column reduce here after scaling the accumulators. // int input_0_array_idx = (group * OutputTileThreadMap::Iterations::kRow + row)*OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column; if ((thread_offset.column() + OutputTileThreadMap::Delta::kColumn * (column/OutputTileThreadMap::kElementsPerAccess) < {problem_descriptor}[1]) && (thread_offset.row() + iter_start_row + row_offset < {problem_descriptor}[0])) {sums_array_name}[sum_array_idx] = // Reduce Logic // UNPACK float acc[LDGS][NUM_ELTS]; #pragma unroll for( int l = 0; l < LDGS; l++ ) {{ #pragma unroll for( int e = 0; e < NUM_ELTS; e++ ) {{ acc[l][e] = typeConvert(local_in[0][l].elt[e]); }} }} // COMPUTE #pragma unroll for( int c = 1; c < CHUNKS; c++ ) {{ #pragma unroll for( int l = 0; l < LDGS; l++ ) {{ #pragma unroll for( int e = 0; e < NUM_ELTS; e++ ) {{ acc[l][e] += typeConvert(local_in[c][l].elt[e]); }} }} }} // row reduce {guid} logic // Compute the sum. float p_sum[Mma_tile_o2::MMAS_M * 2]; softmax.reduce_sum(p_sum); // row reduce {guid} logic // Compute the max. float p_max[Mma_tile_o2::MMAS_M * 2]; softmax.reduce_max(p_max); // Compute the exponential value softmax.apply_exp(p_max); set_alpha(params.scale_softmax, {input_scale_param}, DATA_TYPE_FP32); set_alpha(params.scale_softmax, typeConvert(1.0f), DATA_TYPE_FP32); // row reduce {guid} logic float p_sum[2 * M]; softmax.reduce_sum(p_sum); {params_scale} const float scalef = reinterpret_cast(params.scale_softmax); #pragma unroll for( int mi = 0; mi < M; mi++ ) {{ #pragma unroll for( int ii = 0; ii < 2; ii++ ) {{ #pragma unroll for( int ni = 0; ni < N; ni++ ) {{ #pragma unroll for( int jj = 0; jj < 4; jj++ ) {{ softmax.elt_[2 * mi + ii][4 * ni + jj] -= p_sum[2 * mi + ii] * (s_mat[2 * mi + ii][4 * ni + jj]) ; softmax.elt_[2 * mi + ii][4 * ni + jj] *= scalef; }} }} }} }}row_reduce:Vr7SCdſ&G j˺,MeV}[sum_array_idx]({compute_data_type}){input_0_array_name}[input_ // full reduce {guid} decls using OutputTileThreadMap = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}, {threadblock_shape_N}, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, {partitions_k}, {output_loop_output_0_data_type}, {elements_per_access} {element_output} >::Type; using OutputTileIterator = cutlass::epilogue::threadblock::PredicatedTileIterator{strided_dgrad}< OutputTileThreadMap, {output_loop_output_0_data_type} >; {compute_data_type} reduction_val_{guid}_{port} = ({compute_data_type}){default_value}; // full reduce strided dgrad {guid} decls int tiled_rows_per_filter = {threadblock_shape_M} * tile_m_per_filter; int start_h_, start_w_; int p_, q_; strided_dgrad_starting_coords(convolution_size, stride_h_divmod, stride_w_divmod, start_r, start_s, start_h_, start_w_); p_ = (convolution_size.H - start_h_ + convolution_size.stride_h - 1) / convolution_size.stride_h; q_ = (convolution_size.W - start_w_ + convolution_size.stride_w - 1) / convolution_size.stride_w; // full reduce {guid} logic {{ cutlass::MatrixCoord thread_offset = OutputTileThreadMap::initial_offset(threadIdx.x) + cutlass::MatrixCoord((int)({threadblock_shape_M} * blockIdx.x), (int)({threadblock_shape_N} * blockIdx.y)); int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); int iter_start_row = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; int sum_array_idx = iter*OutputTileThreadMap::Iterations::kRow*OutputTileThreadMap::Iterations::kGroup + group * OutputTileThreadMap::Iterations::kRow + row; int curr_row = thread_offset.row() + iter_start_row + row_offset; {mapped_row_strided_dgrad} CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; ++column) {{ // // Add the column reduce here after scaling the accumulators. // int input_0_array_idx = (group * OutputTileThreadMap::Iterations::kRow + row)*OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column; if ((thread_offset.column() + OutputTileThreadMap::Delta::kColumn * (column/OutputTileThreadMap::kElementsPerAccess) < {problem_descriptor}[1]) && (curr_row < {problem_descriptor}[0])) {reduction_val_name} = // full reduce {guid} scope {{ // full reduce {guid} logic __syncthreads(); unsigned int tid = threadIdx.x; {compute_data_type}* shared_{guid} = ({compute_data_type}*)shared_{shared_id}; shared_{guid}[tid] = {reduction_val_name}; __syncthreads();; }}//end if (tid < 32) }}//end reduce {guid} scopeuY=!vZ>~[:xU4r14full_reduce_op; }} __synct if (tid < 32); {reduction; }}//end if (tid < 32) }}//end reduce {guid} {ind}// full reduction {_g} logic {ind}#pragma unroll {ind}for( int ii = 0; ii < STGS; ++ii ) {{ {ind} int mask = mask_{ol_g}[ii] >= 0; {ind} if (mask) {{ {ind} #pragma unroll {ind} for(int i = 0; i < NUM_ELTS_{ol_g}; i++) {{ {ind} {lhs} = {rhs_operation}; {ind} }} {ind} }} {ind}}} {ind}// full reduction {_g} types {ind}using Fragment_type_{_g} = xmma::Fragment; {ind}Fragment_type_{_g} reg_{_g}_{port}; {ind}reg_{_g}_{port}.set_elt({default_value});reg_{_g}_0.elt(0)-B&CCDD00011223D~33j4DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD45(66p788\9::H;;<4==|> ??h@ AA // row set loop {guid} decls //row set loop {guid} logic CUTLASS_PRAGMA_UNROLL for (int row_cursor = 0; row_cursor < {num_rows}; row_cursor += {row_step_size}) {{ //row set loop {guid} logic }} // row set loop {guid} includes // row set loop {guid} typesnum_rowsrow_step_size15row_set_loop_op // row set loop {guid} includes #include "fmha/fmha/kernel_traits.h" #include "fmha/fmha/gemm.h" #include "fmha/fmha/softmax.h" // No loop related decls using Noloop = Noloop_traits; Noloop nl_traits(bidc, binfo); // declare the number of steps each CTA tile takes int STEPS = nl_traits.num_steps_; // No loop related decls using Noloop = Noloop_traits; Noloop nl_traits(bidc, binfo); // declare the number of steps each CTA tile takes here int STEPS = nl_traits.num_steps_; const fmha::BlockInfoPaddedConstSeqLen binfo_q(params, bidb, bidh, tidx); const fmha::BlockInfoPaddedConstSeqLen binfo_kv(params, bidb, bidh, tidx); const fmha::BlockInfoPaddedVarSeqLen binfo_q(params, bidb, bidh, tidx); const fmha::BlockInfoPaddedVarSeqLen binfo_kv(params, bidb, bidh, tidx); params.seqlens_q = (int *){input_q_seqlen_param}; params.seqlens_kv = (int *){input_k_seqlen_param}; // row set loop {guid} types {seqlenDecl} // The block index for the batch. const int bidb = blockIdx.y; // The block index for the head. const int bidh = blockIdx.x; // The thread index. const int tidx = threadIdx.x; // The block info.{blockInfo} if( binfo_q.stop_early() ) {{ return; }} if( binfo_kv.stop_early() ) {{ return; }} // The block index for the chunk. const int bidc = blockIdx.z; // row set loop {guid} types {seqlenDecl}{b_idx_chunk} // The block index for the batch. const int bidb = blockIdx.y; // The block index for the head. const int bidh = blockIdx.x; // The thread index. const int tidx = threadIdx.x; // The block info.{blockInfo} if( binfo_q.stop_early() ) {{ return; }} if( binfo_kv.stop_early() ) {{ return; }} // row set loop {guid} types // The block index for the batch. const int bidb = blockIdx.y; // The block index for the head. const int bidh = blockIdx.x; // The thread index. const int tidx = threadIdx.x; // The block info.{blockInfo} if( binfo_q.stop_early() ) {{ return; }} if( binfo_kv.stop_early() ) {{ return; }} //row set loop {guid} logic enum {{ STEPS = fmha::Div_up::VALUE }}; enum {{ M = fmha::Hmma_tile::MMAS_M }}; enum {{ N = fmha::Hmma_tile::MMAS_N }}; // Create the object to do the softmax. using Softmax = fmha::Softmax; Softmax softmax(params, &smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE + Kernel_traits::Smem_tile_o::BYTES_PER_TILE], bidb, tidx); // Load over the entire sequence length. for( int l = 0; l < STEPS; l++ ) {{ // If we have reached the length of the sequence, stop earlier. const int loop = l * Kernel_traits::Cta_tile_p::M; if( loop >= binfo_q.actual_seqlen ) {{ break; }} const int loop = l * Kernel_traits::Cta_tile_p::M; // If we have reached the length of the sequence, stop earlier. if( loop >= binfo_q.actual_seqlen ) {{ break; }}guid_global_load_shared_store_mma_b //row set loop {guid} logic // Create the object to do the softmax. using Softmax = fmha::Softmax; Softmax softmax(params, &smem_[Smem_tile_a_{guid_global_load_shared_store_mma_a}::BYTES_PER_TILE + Smem_tile_o_{guid_shared_store_mma_b}::BYTES_PER_TILE + Smem_tile_b_{guid_global_load_shared_store_mma_b}::BYTES_PER_TILE], bidb, tidx); // Load over the entire sequence length. for( int l = 0; l < STEPS; l++ ) {{{loop_check} // row set loop 7 logic // Load over the entire sequence length. for( int l = 0; l < STEPS2; l++ ) {{{loop_check} //row set loop {guid} logic }} // Outer loop over the sequence length.input_q_seqlen_paraminput_k_seqlen_paramblockInfoseqlenDeclb_idx_chunkloop_checkguid_shared_store_mma_b // send op {guid} logic for signal set // Thread 0 of each block will check whether it is the first block that is running // and will set signal if it is. if (threadIdx.x == 0) {{ // Thread 0 signals that the CTA it is in has started. // Assuming that we don't 3D grids ever. unsigned int value = atomicInc({workspace_param}, gridDim.x * gridDim.y); // Thread 0 determines if its the first block to be launched. bool isFirstBlock = (value == 0); if (isFirstBlock) {{ atomicExch((unsigned int*){input_0_param}, {value}); }} }}{grid_size_M} * {grid_size_N} * {grid_size_K} // send op {guid} logic for signal set // Make sure that the flag variable is upgraded only after // the output tensor has been written to global memory. __threadfence_system(); // All threads in block need to finish threadfence before marking block as // completed. __syncthreads(); // Thread 0 of each block will check whether it is the last block that is running // and will set signal if it is. if (threadIdx.x == 0) {{ // Thread 0 signals that CTA is done. unsigned int value = atomicInc({workspace_param}, {grid_size_string}); // Thread 0 determines if its block is the last // block to be done. bool isLastBlockDone = (value == ({grid_size_string} - 1)); if (isLastBlockDone) {{ atomicExch((unsigned int*){input_0_param}, {value}); }} }} // send op {guid} logic for signal wait // Busy wait for the peer to mark its own halo as being ready for exchange. if(threadIdx.x == 0 && {input_0_param} != nullptr) {{ while( *({input_0_param}) == {value} ){{}} }} // Put a synchronization barrier as all threads need to wait for the representative thread to have made sure that moving onto halo exchange is safe. __syncthreads(); // send op {guid} logic {interface_name}({params_string});grid_size_Mgrid_size_Ngrid_size_Kgrid_size_stringsignal_set_kernel_startreceive_op7send_opgridDim.x * gridDim.y * gridDim. // shared load %d includes #include "cutlass/epilogue/threadblock/shared_load_iterator.h" // shared load %d types using WarpIteratorScaleBias = cutlass::conv::warp::%sWarpIteratorScaleBias< cutlass::MatrixShape<%d, %d>, %s, %s, cutlass::MatrixShape<%d, %d>, typename MmaCore::MmaTensorOp::IteratorA::Base::Policy, 32, MmaCore::WarpCount::kK >; using WarpLoadedFragmentScaleBias%d = typename WarpIteratorScaleBias::Fragment; // shared load %d types using WarpIteratorA%d = cutlass::gemm::warp::Mma%sTensorOpMultiplicandTileIterator< cutlass::MatrixShape<%d, %d>, cutlass::gemm::Operand::kA, %s, SmemLayoutA, cutlass::MatrixShape<%d, %d>, 1, 32 %s, %d >; using WarpFragmentA%d = typename WarpIteratorA%d::Fragment; // shared load %d types using WarpIteratorB%d = cutlass::gemm::warp::Mma%sTensorOpMultiplicandTileIterator< cutlass::MatrixShape<%d, %d>, cutlass::gemm::Operand::kB, %s, SmemLayoutB, cutlass::MatrixShape<%d, %d>, 1, 32 %s, %d >; using WarpFragmentB%d = typename WarpIteratorB%d::Fragment; // shared load %d types using ElementAccumulator = %s; using SharedLoadIterator = cutlass::epilogue::threadblock::SharedLoadIterator< typename OutputTileThreadMap::CompactedThreadMap, ElementAccumulator >; // shared load %d decls WarpIteratorScaleBias warp_tile_iterator_A_scale_bias_%d(shared_scale_bias_%d, thread_idx%%32); warp_tile_iterator_A_scale_bias_%d.add_tile_offset({warp_idx_m, tile_offset_k}); WarpLoadedFragmentScaleBias%d array_%d_%d[%d]; cutlass::conv::warp::FpropScaleBiasReluTransform batch_norm_transform; // shared load %d decls WarpIteratorA%d warp_tile_iterator_A%d(shared_%d, thread_idx%%32); warp_tile_iterator_A%d.add_tile_offset({warp_idx_m, tile_offset_k}); WarpFragmentA%d array_%d_%d[2]; // shared load %d decls WarpIteratorB%d warp_tile_iterator_B%d(shared_%d, thread_idx%%32); warp_tile_iterator_B%d.add_tile_offset({tile_offset_k, warp_idx_n}); WarpFragmentB%d array_%d_%d[2]; // shared load %d decls SharedLoadIterator shared_load_iterator_({shared_%d.data(), shared_%d.stride()}, thread_idx); // shared load %d logic if (warp_mma_k > 0) { warp_tile_iterator_A_scale_bias_%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_A_scale_bias_%d.load(array_%d_%d[0]); ++warp_tile_iterator_A_scale_bias_%d; } // shared load %d logic%s warp_tile_iterator_A_scale_bias_%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_A_scale_bias_%d.load(array_%d_%d[%s]); ++warp_tile_iterator_A_scale_bias_%d;%s if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) { if (smem_read_stage_idx == (MmaBase::kStages - 1)) { warp_tile_iterator_A_scale_bias_%d.add_tile_offset({0, -MmaBase::kStages * MmaBase::kWarpGemmIterations}); } } // shared load %d logic if (warp_mma_k == MmaBase::kWarpGemmIterations - 1) { if (smem_write_stage_idx == 0) { warp_tile_iterator_A_scale_bias_%d.add_tile_offset({0, -MmaBase::kStages * MmaBase::kWarpGemmIterations}); } } warp_tile_iterator_A_scale_bias_%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_A_scale_bias_%d.load(array_%d_%d[(warp_mma_k + 1) %% 2]); ++warp_tile_iterator_A_scale_bias_%d; // shared load %d logic jetfire::ifence(); warp_tile_iterator_A%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_A%d.load(array_%d_%d[(warp_mma_k + 1) %% 2]); ++warp_tile_iterator_A%d; if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) { if (smem_read_stage_idx == (MmaBase::kStages - 1)) { warp_tile_iterator_A%d.add_tile_offset({0, -MmaBase::kStages * MmaBase::kWarpGemmIterations}); } } // shared load %d logic if (warp_mma_k == MmaBase::kWarpGemmIterations - 1) { if (smem_write_stage_idx == 0) { warp_tile_iterator_A%d.add_tile_offset({0, -MmaBase::kStages * MmaBase::kWarpGemmIterations}); } } jetfire::ifence(); warp_tile_iterator_A%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_A%d.load(array_%d_%d[(warp_mma_k + 1) %% 2]); ++warp_tile_iterator_A%d; // shared load %d logic warp_tile_iterator_B%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_B%d.load(array_%d_%d[(warp_mma_k + 1) %% 2]); ++warp_tile_iterator_B%d; jetfire::ifence(); if (warp_mma_k + 2 == MmaBase::kWarpGemmIterations) { if (smem_read_stage_idx == (MmaBase::kStages - 1)) { warp_tile_iterator_B%d.add_tile_offset({-MmaBase::kStages * MmaBase::kWarpGemmIterations, 0}); } } // shared load %d logic if (warp_mma_k == MmaBase::kWarpGemmIterations - 1) { if (smem_write_stage_idx == 0) { warp_tile_iterator_B%d.add_tile_offset({-MmaBase::kStages * MmaBase::kWarpGemmIterations, 0}); } smem_write_stage_idx ^= 1; } warp_tile_iterator_B%d.set_kgroup_index((warp_mma_k + 1) %% MmaBase::kWarpGemmIterations); warp_tile_iterator_B%d.load(array_%d_%d[(warp_mma_k + 1) %% 2]); ++warp_tile_iterator_B%d; jetfire::ifence(); // shared load %d logic warp_tile_iterator_A_scale_bias_%d.set_kgroup_index(0); warp_tile_iterator_A_scale_bias_%d.load(array_%d_%d[0]); ++warp_tile_iterator_A_scale_bias_%d; // shared load %d logic warp_tile_iterator_A%d.set_kgroup_index(0); warp_tile_iterator_A%d.load(array_%d_%d[0]); ++warp_tile_iterator_A%d; // shared load %d logic warp_tile_iterator_B%d.set_kgroup_index(0); warp_tile_iterator_B%d.load(array_%d_%d[0]); ++warp_tile_iterator_B%d; // shared load %d logic __syncthreads(); typename SharedLoadIterator::Fragment array_%d_%d; shared_load_iterator_.load(array_%d_%d); // shared load {GUID} logic __syncthreads(); typename SharedLoadIterator::Fragment {tempArray_name}; shared_load_iterator_.load({tempArray_name}); cutlass::Array<{output_0_data_type}, {tempArray_name}.kElements> {array_name}; for (int idx = 0; idx < {tempArray_name}.kElements; idx++) {{ {array_name}[idx] = typeConvert<{output_0_data_type}>({tempArray_name}[idx]); }}cutlass::layout::ColumnMajor if (warp_mma_k == 0) {tempArray_{guid}_{port}tempArray_name14shared_load_op // shared_load_op {guid} move code for xmma backend smem_tile_{input_id}.move_next_read_buffer({buffer_id}); // Move the shared memory pointers for double buffering. {ind}// shared_load_op {guid} decls for xmma backend {ind}Fragment_compute_type_{guid} reg_{guid}_1[STGS]; {ind}Fragment_type_{guid} reg_{guid}_0[STGS]; // shared_load_op {guid} decls for xmma backend Fragment_type_{guid} reg_{guid}_{port}[4][XMMAS_M]; // shared_load_op {guid} decls for xmma backend Fragment_type_{guid} reg_{guid}_{port}[2][{xmmas}]; {ind}// shared_load_op {guid} types for xmma backend {ind}using Fragment_type_{guid} = xmma::Fragment<{output_data_type}, NUM_ELTS_{parent_id}>; {ind}using Fragment_compute_type_{guid} = xmma::Fragment<{incoming_data_type}, NUM_ELTS_{parent_id}>; {ind}// shared_load_op {guid} types for xmma backend {ind}using Fragment_epilogue_post_swizzle_{guid} = xmma::Fragment_epilogue_post_swizzle; {ind}using Fragment_compute_type_{guid} = xmma::Fragment<{incoming_data_type}, Fragment_epilogue_post_swizzle_{guid}::NUM_ELTS>; {ind}using Fragment_type_{guid} = xmma::Fragment<{output_data_type}, Fragment_epilogue_post_swizzle_{guid}::NUM_ELTS>; // shared_load_op {guid} types for xmma backend using Smem_tile_{guid} = Smem_tile_{input_id}; using Fragment_original_{guid} = Smem_tile_{input_id}::Fragment; using Fragment_type_{guid} = xmma::Fragment<{data_type}, Smem_tile_{input_id}::Fragment::NUM_ELTS>; // shared_load_op {guid} types for xmma backend using Smem_tile_{guid} = Smem_tile_{input_id}; using Fragment_original_{guid} = Smem_tile_{input_id}::Fragment; using Fragment_type_{guid} = xmma::Fragment<{data_type}, Smem_tile_{input_id}::Fragment::NUM_ELTS>; using Fragment_type_{a_or_b}_{parent_id} = Smem_tile_{input_id}::Fragment; #pragma unroll for (int ii = 0; ii < XMMAS_M; ++ii) {{ #pragma unroll for (int i = 0; i < Fragment_type_a_{parent_id}::NUM_ELTS; ++i) {{ oob_marker_a[{fragment_index}&1][ii].elt(i) = reg_{guid}_{port}[{fragment_index}&1][ii].elt(i).raw() ^ nan_oob_fill_16; }} }} // shared_load_op {guid} code for xmma backend smem_tile_{input_id}.load(reinterpret_cast(reg_{guid}_{port}[{fragment_index}&1]), {fragment_index});{oob_code} {ind}// shared_load_op {guid} code for xmma backend {ind}#pragma unroll {ind}for(int ii = 0; ii < STGS; ++ii) {{ {ind} swizzle_epilogue_{input_id}.{lds_code}(reg_{guid}_1[ii], ii); {ind}}} {ind}#pragma unroll {ind}for(int ii = 0; ii < STGS; ++ii) {{ {pack_to_output} {ind}}} // shared_load_op {guid} load compute tile smem_tile_{input_id}.template load(reinterpret_cast(reg_{guid}_{port}[{fragment_index}]), {fragment_index});buffer_head_nextinput_idXMMAS_MXMMAS_Nxmmasincoming_data_typelds_loadki + 1ki_nextoob_code // shared load {guid} declssmem_b_ // shared load {guid} includes // shared load {guid} types // The shared memory tile to swizzle O. using Smem_tile_o_{guid} = typename Kernel_traits::Smem_tile_o; typename Smem_tile_a_{input_0_guid}::Fragment frag_a_{guid}[2][Mma_tile_o1::MMAS_M]; // shared load {guid} decls typename Smem_tile_b_{input_0_guid}::Fragment frag_b_{guid}[Mma_tile_o1::MMAS_K][Mma_tile_o1::MMAS_N]; // shared load {guid} decls typename Smem_tile_b_{input_0_guid}::Fragment frag_b_{guid}[Mma_tile_o2::MMAS_K][Mma_tile_o2::MMAS_N]; typename Smem_tile_a_{input_0_guid}::Fragment frag_a_{guid}[2][Mma_tile_o1::MMAS_M]; typename Smem_tile_b_{input_0_guid}::Fragment frag_b_{guid}[2][Mma_tile_o2::MMAS_N]; // We keep the data in registers during the entire kernel. typename Smem_tile_b_{input_0_guid}::Fragment frag_b_{guid}[2][Mma_tile_o1::MMAS_N]; // We keep the data in registers during the entire kernel. typename Smem_tile_b_{input_0_guid}::Fragment frag_a_{guid}[Mma_tile_o2::MMAS_K][Mma_tile_o2::MMAS_M]; typename Smem_tile_b_{input_0_guid}::Fragment frag_b_{guid}[2][Mma_tile_o3::MMAS_N]; typename Smem_tile_b_t_{input_0_guid}::Fragment frag_b_{guid}[2][Mma_tile_o4::MMAS_N]; // shared load {guid} decls // Allocate the shared memory tile loader for O. We use the same as K so be careful!!! Smem_tile_o_{guid} smem_o_{guid}(&smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE], tidx); // shared load {guid} logic // Load from shared memory. uint4 out_{guid}[Kernel_traits::Gmem_tile_o::STGS_PER_LOOP]; smem_o_{guid}.load(out_{guid}); // Make sure the data was read from shared memory. __syncthreads(); // shared load {guid} logic // Load from shared memory. uint4 out_{guid}[fmha::Gmem_tile_dq::STGS_PER_LOOP]; smem_o_{input_0_guid}.load(out_{guid}); // shared load {guid} logic if( l < STEPS - 1) {{ smem_a_{input_0_guid}.load(frag_a_{guid}[0], 0); }} // shared load {guid} logic // Make sure the data is in shared memory. __syncthreads(); smem_a_{input_0_guid}.load(frag_a_{guid}[0], 0); // shared load {guid} logic #pragma unroll for( int ki = 0; ki < Mma_tile_o1::MMAS_K; ++ki ) {{ smem_b_{input_0_guid}.load(frag_b_{guid}[ki], ki); }} // shared load {guid} logic #pragma unroll for( int ki = 0; ki < Mma_tile_o2::MMAS_K; ++ki ) {{ smem_b_{input_0_guid}.load(frag_b_{guid}[ki], ki); }} // shared load {guid} logic // Load the fragments for Q. smem_a_{input_0_guid}.load(frag_a_{guid}[0], 0); // Load the fragments for Q^T smem_b_{input_0_guid}.load(frag_b_{guid}[0], 0); // shared load {guid} logic // Load the fragments for K. smem_b_{input_0_guid}.load(frag_b_{guid}[0], 0); // shared load {guid} logic typename Smem_tile_o_{input_0_guid}::Fragment frag_a_{guid}[Mma_tile_o2::MMAS_K][Mma_tile_o2::MMAS_M]; smem_o_{input_0_guid}.load(frag_a_{guid}); for( int ki = 0; ki < Mma_tile_o2::MMAS_K; ki++ ) {{ for( int mi = 0; mi < Mma_tile_o2::MMAS_M; mi++ ) {{ for( int ii = 0; ii < Smem_tile_o_{input_0_guid}::Fragment::NUM_REGS; ii++ ) {{ frag_a_{guid}[ki][mi].reg(ii) = fmha::hmul2(frag_a_{guid}[ki][mi].reg(ii), params.scale_dropout); frag_a_{guid}[ki][mi].reg(ii) = fmha::hrelu2(frag_a_{guid}[ki][mi].reg(ii)); }} }} }} // shared load {guid} logic uint4 o_{guid}[Smem_tile_o_{input_0_guid}::NUM_LDS]; smem_o_{input_0_guid}.load(o_{guid}); // shared load {guid} logic typename Smem_tile_o_{input_0_guid}::Fragment frag_a_{guid}[Mma_tile_o4::MMAS_K][Mma_tile_o4::MMAS_M]; smem_o_{input_0_guid}.load(frag_a_{guid}); // shared load {guid} logic if(l < STEPS - 1) {{ // Load the fragments for K. smem_b_{input_0_guid}.load(frag_b_{guid}[0], 0); }} // shared load {guid} logic // Load the fragments for Q. {smem_tile_2}{input_0_guid}.load(frag_b_{guid}[0], 0); // shared load {guid} logic if(l < STEPS - 1){{ // Load the fragments for Q. {smem_tile_2}{input_0_guid}.load(frag_b_{guid}[0], 0); }} // shared store %d includes #include "cutlass/tensor_ref.h" #include "cutlass/epilogue/warp/tile_iterator_tensor_op.h" #include "cutlass/epilogue/warp/volta_tensor_op_policy.h" #include "cutlass/epilogue/warp/tile_iterator_volta_tensor_op.h" // shared store %d logic if (MmaBase::kStages == 2 && warp_mma_k == MmaBase::kWarpGemmIterations - 1) { smem_iterator_A%d.store(array_%d_%d); ++smem_iterator_A%d; if (smem_write_stage_idx == 1) { smem_iterator_A%d.add_tile_offset({0, -MmaBase::kStages}); } } // shared store %d logic if (MmaBase::kStages == 2 && warp_mma_k == MmaBase::kWarpGemmIterations - 1) { jetfire::ifence(); smem_iterator_B%d.store(array_%d_%d); __syncthreads(); ++smem_iterator_B%d; if (smem_write_stage_idx == 1) { smem_iterator_B%d.add_tile_offset({-MmaBase::kStages, 0}); } } // shared store %d logic smem_iterator_A%d.store(array_%d_%d); ++smem_iterator_A%d; // shared store %d logic smem_iterator_B%d.store(array_%d_%d); ++smem_iterator_B%d; __syncthreads(); // shared store %d logic __syncthreads(); warp_tile_iterator_.store(array_%d_%d); // shared store %d decls MmaBase::TensorRefA shared_%d = ((MmaBase::SharedStorage*)(&shared_%d))->operand_A_ref(); SmemIteratorA%d smem_iterator_A%d(shared_%d, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x); // shared store %d decls MmaBase::TensorRefB shared_%d = ((MmaBase::SharedStorage*)(&shared_%d))->operand_B_ref(); SmemIteratorB%d smem_iterator_B%d(shared_%d, (threadIdx.z*blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x); // shared store %d decls /// Hard-coded padding elements added using Padding = cutlass::MatrixShape<0, 64 / cutlass::sizeof_bits::value * 4>; using EpilogueBase = cutlass::epilogue::threadblock::EpilogueBase< cutlass::gemm::GemmShape<%d, %d, %d>, cutlass::gemm::GemmShape<%d, %d, %d>, %d, FragmentIterator, WarpTileIterator, Padding >; EpilogueBase::SharedStorage::TensorRef shared_%d = ((EpilogueBase::SharedStorage*)(&shared_%d))->reference(); int warp_idx = thread_idx / 32; int lane_idx = thread_idx %% 32; /// Stores a warp's fragment of accumulators to SMEM WarpTileIterator warp_tile_iterator_(shared_%d, lane_idx); using WarpCount = cutlass::gemm::GemmShape< %d / %d, %d / %d, %d >; int warp_k = warp_idx / (WarpCount::kM * WarpCount::kN); int warp_mn = warp_idx %% (WarpCount::kM * WarpCount::kN); int warp_m = warp_mn %% WarpCount::kM; int warp_n = warp_mn / WarpCount::kM; cutlass::MatrixCoord warp_offset{warp_k * WarpCount::kM + warp_m, warp_n}; warp_tile_iterator_.add_tile_offset(warp_offset); // shared store %d types using SmemIteratorA%d = cutlass::transform::threadblock::RegularTileIterator< cutlass::MatrixShape<%d, %d>, %s, SmemLayoutA, %d, IteratorThreadMapA >; // shared store %d types using SmemIteratorB%d = cutlass::transform::threadblock::RegularTileIterator< cutlass::MatrixShape<%d, %d>, %s, SmemLayoutB, %d, IteratorThreadMapB >; // shared store %d types using WarpTileIterator = cutlass::epilogue::warp::TileIterator%sTensorOp< cutlass::gemm::GemmShape<%d, %d, %d>, cutlass::gemm::GemmShape<%d, %d, %d>, %s, cutlass::layout::%s >;15shared_store_op {ind}// shared_store_op {guid} decls for xmma backend {ind}Swizzle_epilogue_{guid} swizzle_epilogue_{guid}(smem_{parent_id}, tidx); {ind}// shared_store_op {guid} types for xmma backend {ind}using Swizzle_epilogue_{guid} = Smem_tile_{parent_id}; // shared_store_op {guid} types for xmma backend using Swizzle_epilogue_{guid} = xmma::Swizzle_epilogue; {ind}// shared_store_op {guid} code for xmma backend {ind}epilog_sync.wait(); {ind}#pragma unroll {ind}for(int si = 0; si < STGS; si++) {{ {ind}#pragma unroll {ind}for(int ii = 0; ii < FRAGMENTS_PER_TILE; ++ii) {{ {ind} swizzle_epilogue_{guid}.stsm_store(ii, reg_{input_index}_{input_port}[si][ii], si, 0); {ind}}} {ind}}} {ind}epilog_sync.wait(); {ind}// shared_store_op {guid} code for xmma backend {ind}#pragma unroll {ind}for(int ii = 0; ii < FRAGMENTS_PER_TILE; ++ii) {{ {ind} swizzle_epilogue_{guid}.stsm_store(ii, reg_{input_index}_{input_port}[ii], 0); {ind}}} {ind}xmma::fence_view_async_shared(); // shared_store_op {guid} code for xmma backend #pragma unroll for( int ci = 0; ci < XMMAS_N_{parent_id}; ++ci ) {{ swizzle_epilogue_{guid}.store(ci, reg_{input_index}_{input_port}[ci]); }} __syncthreads(); //No shared_sto // shared store {guid} includes // shared store {guid} types // shared store {guid} types using Smem_tile_o_{guid} = typename Kernel_traits::Smem_tile_st; // shared store {guid} types using Smem_tile_o_{guid} = typename Kernel_traits::Smem_tile_o; // shared store {guid} types using Smem_tile_o_{guid} = fmha::Smem_tile_mma_epilogue; // shared store {guid} types using Smem_tile_o_{guid} = fmha::Smem_tile_mma_epilogue; // shared store {guid} types using Smem_tile_{guid} = typename Kernel_traits::Smem_tile_s; // shared store {guid} decls // shared store {guid} decls Smem_tile_o_{guid} smem_o_{guid}(&smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE + Kernel_traits::Smem_tile_v::BYTES_PER_TILE + Kernel_traits::Smem_tile_o::BYTES_PER_TILE], tidx); // shared store {guid} decls Smem_tile_o_{guid} smem_o_{guid}(&smem_[Kernel_traits::Smem_tile_q::BYTES_PER_TILE + Kernel_traits::Smem_tile_v::BYTES_PER_TILE], tidx); // shared store {guid} decls Smem_tile_o_{guid} smem_o_{guid}(&smem_[0], tidx); // shared store {guid} decls Smem_tile_o_{guid} smem_o_{guid}(&smem_[fmha::Smem_tile_a::BYTES_PER_TILE + Kernel_traits::Smem_tile_k::BYTES_PER_TILE], tidx); // shared store {guid} decls Smem_tile_{guid} smem_{guid}(&smem_[0], tidx); // shared store {guid} logic // Swizzle the elements and do the final reduction. smem_o_{shared_load_guid}.store(acc_o_{input_0_guid}, ii); // Make sure the data is in shared memory. __syncthreads(); // shared store {guid} logic // Store dP to smem for transpose. smem_o_{guid}.store(s_regs_{input_0_guid}); // shared store {guid} logic // Swizzle the elements and do the final reduction. smem_o_{guid}.store(acc_o_{input_0_guid}, ii); // Make sure the data is in shared memory. __syncthreads(); // shared store {guid} logic // WAR for bug 32385935 // Make sure all the shared accesses are done after the mainloop __syncthreads(); smem_o_{guid}.store(acc_o_{input_0_guid}); __syncthreads(); // shared store {guid} logic // Store s * dmask to smem for transpose smem_o_{guid}.store(s_regs_{input_0_guid}); // shared store {guid} logic smem_{guid}.store(regs_{input_0_guid}); __syncthreads(); smem_{guid}.load(regs_{input_0_guid}); // upsample {guid} logic {{ {compute_data_type}* shared_{guid} = ({compute_data_type}*)shared_{shared_shared_guid}; int sums_smem_offset = thread_idx * 3 * {input_0_array_name}.kElements; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ int fragment_offset = row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column_access * OutputTileThreadMap::kElementsPerAccess + column; shared_{guid}[sums_smem_offset + {input_0_array_name}.kElements * 0 + fragment_offset] = {input_0_array_name}[fragment_offset]; }} }} }} destination_iterator_{input_guid}.upsample_load_with_byte_offset({input_0_array_name}, 0, resample_size.P, resample_size.Q, 0, 1, {problem_descriptor}[1]); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ int fragment_offset = row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column_access * OutputTileThreadMap::kElementsPerAccess + column; shared_{guid}[sums_smem_offset + {input_0_array_name}.kElements * 1 + fragment_offset] = {input_0_array_name}[fragment_offset]; }} }} }} destination_iterator_{input_guid}.upsample_load_with_byte_offset({input_0_array_name}, 0, resample_size.P, resample_size.Q, 1, 0, {problem_descriptor}[1]); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ int fragment_offset = row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column_access * OutputTileThreadMap::kElementsPerAccess + column; shared_{guid}[sums_smem_offset + {input_0_array_name}.kElements * 2 + fragment_offset] = {input_0_array_name}[fragment_offset]; }} }} }} destination_iterator_{input_guid}.upsample_load_with_byte_offset({input_0_array_name}, 0, resample_size.P, resample_size.Q, 1, 1, {problem_descriptor}[1]); ++destination_iterator_{input_guid}; __syncthreads(); CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ CUTLASS_PRAGMA_UNROLL for (int column_access = 0; column_access < OutputTileThreadMap::Iterations::kColumn; ++column_access) {{ CUTLASS_PRAGMA_UNROLL for (int column = 0; column < OutputTileThreadMap::kElementsPerAccess; ++column) {{ // // Add the column reduce here after scaling the accumulators. // int fragment_offset = row * OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + column_access * OutputTileThreadMap::kElementsPerAccess + column; {array_name}[row * kColumnCount_{guid} + column_access * OutputTileThreadMap::kElementsPerAccess + column] = ( ({compute_type})shared_{guid}[sums_smem_offset + {input_0_array_name}.kElements * 0 + fragment_offset] + shared_{guid}[sums_smem_offset + {input_0_array_name}.kElements * 1 + fragment_offset] + shared_{guid}[sums_smem_offset + {input_0_array_name}.kElements * 2 + fragment_offset] + {input_0_array_name}[fragment_offset]) * 0.25f; }} }} }} }} // upsample {guid} decls int const kColumnCount_{guid} = OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess; using OutputTileIterator_{guid} = cutlass::epilogue::threadblock::PredicatedTileIterator< OutputTileThreadMap, {compute_data_type} >; typename OutputTileIterator_{guid}::Fragment array_{guid}_0; const cutlass::conv::Conv2dProblemSize resample_size = {resample_descriptor};resample_descriptor11upsample_op // transpose {guid} decls using TransposedTileThreadMap_{guid} = typename {thread_map}< cutlass::gemm::GemmShape<{threadblock_shape_M}, {threadblock_shape_N}, {threadblock_shape_K}>, cutlass::gemm::GemmShape<{warp_shape_M}, {warp_shape_N}, {warp_shape_K}>, {partitions_k}, {output_loop_output_0_data_type}, {elements_per_access} {element_output} >::Type; {compute_data_type}* transpose_shared_{guid} = ({compute_data_type}*)shared_{shared_id}; int transpose_shared_stride_{guid} = {threadblock_shape_N} + (32+cutlass::sizeof_bits<{compute_data_type}>::value-1)/cutlass::sizeof_bits<{compute_data_type}>::value; cutlass::MatrixCoord thread_cta_offset = OutputTileThreadMap::initial_offset(thread_idx); int thread_cta_start_row = thread_cta_offset.row(); int thread_cta_start_column = thread_cta_offset.column(); // transpose {guid} logic {{ int iter_group = OutputTileThreadMap::Count::kGroup == 1 ? 0 : (iter / OutputTileThreadMap::Count::kGroup); int iter_row = OutputTileThreadMap::Count::kGroup == 1 ? iter : (iter % OutputTileThreadMap::Count::kGroup); int iter_start_row = (iter_group * OutputTileThreadMap::Shape::kGroup * OutputTileThreadMap::Count::kRow + iter_row) * OutputTileThreadMap::Shape::kRow; CUTLASS_PRAGMA_UNROLL for (int c = 0; c < OutputTileThreadMap::Iterations::kColumn; ++c) {{ CUTLASS_PRAGMA_UNROLL for (int k = 0; k < OutputTileThreadMap::kElementsPerAccess; ++k) {{ int shm_row = thread_cta_start_column + OutputTileThreadMap::Delta::kColumn * c + k; int col_idx = OutputTileThreadMap::kElementsPerAccess * c + k; CUTLASS_PRAGMA_UNROLL for (int group = 0; group < OutputTileThreadMap::Iterations::kGroup; ++group) {{ CUTLASS_PRAGMA_UNROLL for (int row = 0; row < OutputTileThreadMap::Iterations::kRow; ++row) {{ int row_offset = group * OutputTileThreadMap::Delta::kGroup + row * OutputTileThreadMap::Delta::kRow; {mapped_row_strided_dgrad} int shm_col = thread_cta_start_row + iter_start_row + row_offset; int input_0_array_idx = (group * OutputTileThreadMap::Iterations::kRow + row)*OutputTileThreadMap::Iterations::kColumn * OutputTileThreadMap::kElementsPerAccess + col_idx; transpose_shared_{guid}[shm_row * transpose_shared_stride_{guid} + shm_col] = typeConvert<{compute_data_type}>({input_0_array_name}[input_0_array_idx]); }} //for Iterations::kRow }} //for Iterations::kGroup }} //for kElementsPerAccess }} //for Iterations::kColumn }} //end transpose scope12transpose_op9reduce_opwith_padding_mask10softmax_op using namespace fort; static constexpr int THREADS_PER_WARP_{guid} = 32; static constexpr int WARPS_PER_GROUP_{guid} = FORT_MIN(4, {threads_per_cta} / THREADS_PER_WARP_{guid}); static constexpr int THREADS_PER_WARP_GROUP_{guid} = THREADS_PER_WARP_{guid} * WARPS_PER_GROUP_{guid}; static constexpr int BITS_PER_REGISTER_{guid} = 32; // NOTE: sizeof(uint) static constexpr int BYTES_PER_REGISTER_{guid} = BITS_PER_REGISTER_{guid} / 8; static constexpr int THREADS_PER_GROUP_{guid} = WARPS_PER_GROUP_{guid} * THREADS_PER_WARP_{guid}; typedef unsigned long long uint64_t; typedef unsigned int uint32_t; typedef unsigned short uint16_t; typedef unsigned char uint8_t; typedef long long int64_t; typedef int int32_t; typedef short int16_t; typedef signed char int8_t; typedef unsigned int r32; #define __FLT_MIN__ 1.17549435082228750796873653722224568e-38F #define __FLT_MAX__ 3.40282346638528859811704183484516925e+38F #define CUDACC_VERSION __CUDACC_VER_MAJOR__ * 10 + __CUDACC_VER_MINOR__ namespace fort { extern "C" __global__ __launch_bounds__({max_threads}, {min_blocks}) void {interface_name}({params_string}) {{ asm volatile (".pragma \"global knob ForceLateCommoning=1\";\n" ::: "memory"); asm volatile (".pragma \"global knob HoistLate=3\";\n" ::: "memory"); extern __shared__ char smem_[]; SharedStorage& shared_storage = *reinterpret_cast(smem_); uint32_t smem_{shared_id} = get_smem_pointer(smem_); extern "C" __global__ __launch_bounds__({max_threads}, 1) void {interface_name}({params_string}) {{ extern __shared__ char smem_[]; uint32_t smem_{shared_id} = get_smem_pointer(smem_); static const uint64_t AMPERE_MEM_DESC_DEFAULT = uint64_t(0x1000000000000000ul); static const uint64_t MEM_DESC_DEFAULT = AMPERE_MEM_DESC_DEFAULT; static const uint32_t MMA_PEER_BIT_MASK = 0xFEFFFFFF; #define NAN __int_as_float(0x7fffffff) #define POS_INFINITY __int_as_float(0x7f800000) #define NEG_INFINITY __int_as_float(0xff800000) typedef uint16_t half_t; typedef uint16_t bfloat16_t; typedef uint8_t float_e4m3_t; typedef uint8_t float_e5m2_t; #define FORT_MIN(a,b) ((a) < (b) ? (a) : (b)) #define FORT_MAX(a,b) ((a) > (b) ? (a) : (b)) #define FORT_DIV_UP(a,b) (((a) + (b) - 1) / (b)) #define FORT_ROUND_UP(a,b) ((((a) + (b) - 1) / (b)) * (b)) typedef struct alignas(64) { uint64_t data[8]; } cudaTmaDesc; typedef struct MatrixDescriptor { uint32_t Batch, Rows, Columns; uint64_t leading_stride; uint64_t batch_stride; } MatrixDescriptor_t; typedef struct tensor_descriptor { static const int MAX_DIMS = 12; int64_t num_dims; int64_t dims[MAX_DIMS]; int64_t strides[MAX_DIMS]; } tensor_descriptor; typedef struct FastDivisor { uint32_t val, shr, mul; } FastDivisor_t; inline __device__ void fastDivMod(const FastDivisor_t &d, uint32_t val, uint32_t &div, uint32_t &mod) { div = __umulhi((uint32_t)2 * val, d.mul) >> d.shr; mod = val - div * d.val; } __device__ __inline__ void warp_switch() { asm volatile(".pragma \"next knob WarpOpexPrev=1\";\n" : : : "memory"); } __device__ __inline__ void ifence() { asm volatile(".pragma \"next knob FenceInterference\";\n" : : : "memory"); } __device__ __inline__ void cfence() { asm volatile (".pragma \"next knob FenceCode\";\n" : : : "memory"); } inline __device__ void move_smem_to_next_ki(uint32_t &smem, int ki, const int k_steps, const int bytes_per_lds) { if (k_steps >= 32 && ki % 16 == 15) { smem ^= 31 * bytes_per_lds * 2; } else if (k_steps >= 16 && ki % 8 == 7) { smem ^= 15 * bytes_per_lds * 2; } else if (k_steps >= 8 && ki % 4 == 3) { smem ^= 7 * bytes_per_lds * 2; } else if (k_steps >= 4 && ki % 2 == 1) { smem ^= 3 * bytes_per_lds * 2; } else if (k_steps >= 2) { smem ^= 1 * bytes_per_lds * 2; } } inline __device__ void swizzle(uint32_t &bid_x, uint32_t &bid_y, int log2_group_cols, int params_tiles_x_, int params_tiles_y_) { // The corresponding mask. unsigned mask = (1u << log2_group_cols) - 1; // Is the code going bottom-to-top or top-to-bottom? Be prepared to change your mind. unsigned bottom_to_top = 0; // The row/col. Start with the CTA position. unsigned row = bid_x; unsigned col = bid_y; // Loop until we find the correct swizzling. for( ;; mask /= 2, --log2_group_cols ) { // test_col is the last column in group. unsigned test_col = col | mask; // bottom_to_top ^= (pos.col & group_cols) != 0 // For starting group_cols (which we know at least one group uses, due to rude assertion // above), this sets // bottom_to_top = (pos.col / group_cols) % 2 == 1 // That is, each odd group_cols goes bottom to top. // After that, it inverts bottom_to_top for each reduced-size group_cols that gets used // by some group. It's almost magic. if( col & (1u << log2_group_cols) ) { bottom_to_top = !bottom_to_top; } if( test_col < params_tiles_y_ ) { // Linear CTA index within current group. unsigned linear_local = (col & mask) * params_tiles_x_ + row; // row = linear_local / group_cols. row = linear_local >> log2_group_cols; // col = col_base + linear_local % group_cols. col = (col & ~mask) | (linear_local & mask); // We are done! break; } // If we reduce rightmost group_cols to 3 is the group inside? // colInGroup3 = group width == 4 && in rightmost group && gridDim.col mod 4 == 3 if( log2_group_cols == 2 && test_col == params_tiles_y_ ) { // Linear CTA index within current group unsigned linear_local = (col & mask) * params_tiles_x_ + row; // row = linearLocal / 3 row = (uint64_t(linear_local) * 0x55555556ULL) >> 32; // col = colBase + linearLocal % 3 col = (col & ~mask) - row * 3 + linear_local; // We are done! break; } } // end for // If we go bottom-to-top, we switch the row. if( bottom_to_top ) { row = params_tiles_x_ - 1 - row; } // The final position. bid_x = row; bid_y = col; } typedef struct AttentionDescriptor { // Input parameters // b - batch // q_h - num heads of q/dq/o/do // k_h - num heads of k/dk // v_h - num heads of v/dv // s_q - max sequence length of q // s_kv - max sequence length of kv // d - hidden dim (head dim) uint32_t b, q_h, k_h, v_h, s_q, s_kv, d_qk, d_v; uint16_t q_heads_per_k, q_heads_per_v, min_q_heads_per_kv; } AttentionDescriptor_t; typedef struct ConvDescriptor { uint32_t N, C, H, W, D; // from tensor X uint32_t K, R, S, T; // from tensor W uint32_t padLower_D, padLower_H, padLower_W; uint32_t padUpper_D, padUpper_H, padUpper_W; uint32_t stride_D, stride_H, stride_W; uint32_t dilation_D, dilation_H, dilation_W; // Derived parameters (computed on the host for better perf) uint32_t P, Q, O; int32_t group_count; FastDivisor_t opq, pq, q; FastDivisor_t pqn, qn, n; // Required by CDHWN WGRAD FastDivisor_t rsc, sc, c; // Required by WGRAD FastDivisor_t trs, rs, s; // Required by Native SM80 } ConvDescriptor_t; #if __CUDA_ARCH__ >= 900 inline __device__ dim3 ctaid_in_cga() { uint32_t x = 0, y = 0, z = 0; asm volatile("mov.u32 %0, %cluster_ctaid.x;\n" : "=r"(x) :); asm volatile("mov.u32 %0, %cluster_ctaid.y;\n" : "=r"(y) :); asm volatile("mov.u32 %0, %cluster_ctaid.z;\n" : "=r"(z) :); return {x, y, z}; } inline __device__ uint32_t elect_one_sync() { uint32_t pred = 0; uint32_t laneid = 0; asm volatile( "\n{.reg .b32 %rx;" "\n .reg .pred %px;" "\n elect.one.sync %rx|%px, %2;" "\n @%px mov.s32 %1, 1;" "\n mov.s32 %0, %rx;}" : "+r"(laneid), "+r"(pred) : "r"(0xFFFFFFFF)); return pred; } inline __device__ void acqblk() { asm volatile("griddepcontrol.wait;"); } template inline __device__ void reg_alloc() { // const int TARGET_REG_COUNT = 232; // Example values (use with reg_delloc's VALUE together): 224, 232, 208, 216 asm volatile("setmaxnreg.inc.sync.aligned.u32 %0;\n" : : "n"(TARGET_REG_COUNT)); } template inline __device__ void reg_dealloc() { // const int TARGET_REG_COUNT = 40; // Exmaple values: 56, 40, 88, 72 asm volatile("setmaxnreg.dec.sync.aligned.u32 %0;\n" : : "n"(TARGET_REG_COUNT)); } inline __device__ void preexit() { asm volatile("griddepcontrol.launch_dependents;"); } inline __device__ void named_barrier_arrive(uint32_t BARRIER_ID, uint32_t NUM_THREADS) { asm volatile("bar.arrive %0, %1;" : : "r"(BARRIER_ID), "r"(NUM_THREADS)); } inline __device__ void named_barrier_wait(uint32_t BARRIER_ID, uint32_t NUM_THREADS) { asm volatile("bar.sync %0, %1;" :: "r"(BARRIER_ID), "r"(NUM_THREADS)); } inline __device__ void cga_wait(){ asm volatile("barrier.cluster.wait.aligned;\n" ::); } inline __device__ void cga_arrive(){ asm volatile("barrier.cluster.arrive.relaxed.aligned;\n" ::); } inline __device__ void tmastg_arrive() { asm volatile("cp.async.bulk.commit_group;"); } inline __device__ void tmastg_wait() { asm volatile("cp.async.bulk.wait_group.read %0;" : :"n"(0):"memory"); } template inline __device__ void tmastg_wait_count() { asm volatile("cp.async.bulk.wait_group.read %0;" : :"n"(Count):"memory"); } #endif inline __device__ void fp32_to_int32(r32 dst[1], const r32 src[1]) { asm("cvt.rni.sat.s32.f32 %0, %1;" : "=r"(dst[0]) : "r"(src[0])); } inline __device__ void fp32x2_to_fp16x2(r32 dst[1], const r32 src[2]) { asm volatile("cvt.rn.f16x2.f32 %0, %1, %2;\n" : "=r"(dst[0]) : "r"(src[1]), "r"(src[0])); } inline __device__ void fp32x2_to_bf16x2(r32 dst[1], const r32 src[2]) { asm volatile("cvt.rn.bf16x2.f32 %0, %1, %2;\n" : "=r"(dst[0]) : "r"(src[1]), "r"(src[0])); } inline __device__ void fp32x4_to_int8x4(r32 dst[1], const r32 src[4]) { int32_t tmp[4]; asm volatile("cvt.rni.sat.s32.f32 %0, %1;" : "=r"(tmp[0]) : "r"(src[0])); asm volatile("cvt.rni.sat.s32.f32 %0, %1;" : "=r"(tmp[1]) : "r"(src[1])); asm volatile("cvt.rni.sat.s32.f32 %0, %1;" : "=r"(tmp[2]) : "r"(src[2])); asm volatile("cvt.rni.sat.s32.f32 %0, %1;" : "=r"(tmp[3]) : "r"(src[3])); asm volatile( "{\n" \ ".reg .u32 r4;\n" \ "cvt.pack.sat.s8.s32.b32 r4, %4, %3, 0;\n" \ "cvt.pack.sat.s8.s32.b32 %0, %2, %1, r4;\n" \ "}" : "=r"(dst[0]) : "r"(tmp[0]), "r"(tmp[1]), "r"(tmp[2]), "r"(tmp[3]) ); } #if __CUDA_ARCH__ >= 890 inline __device__ void fp32x4_to_e4m3x4(r32 dst[1], const r32 src[4]) { asm volatile( "{\n" \ ".reg .b16 lo;\n" \ ".reg .b16 hi;\n" \ "cvt.rn.satfinite.e4m3x2.f32 lo, %2, %1;\n" \ "cvt.rn.satfinite.e4m3x2.f32 hi, %4, %3;\n" \ "mov.b32 %0, {lo, hi};\n" \ "}" : "=r"(dst[0]) : "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3])); } inline __device__ void fp32x4_to_e5m2x4(r32 dst[1], const r32 src[4]) { asm volatile( "{\n" \ ".reg .b16 lo;\n" \ ".reg .b16 hi;\n" \ "cvt.rn.satfinite.e5m2x2.f32 lo, %2, %1;\n" \ "cvt.rn.satfinite.e5m2x2.f32 hi, %4, %3;\n" \ "mov.b32 %0, {lo, hi};\n" \ "}" : "=r"(dst[0]) : "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3])); } #endif #if __CUDA_ARCH__ >= 900 inline __device__ uint32_t fp16x4_to_e4m3x4(r32 dst[1], const r32 src[2]) { asm volatile("{\n" ".reg .b16 lo, hi;\n" "cvt.satfinite.rn.e4m3x2.f16x2 lo, %1;\n" "cvt.satfinite.rn.e4m3x2.f16x2 hi, %2;\n" "mov.b32 %0, {lo, hi};\n" "}\n" : "=r"(dst[0]) : "r"(src[0]), "r"(src[1])); } inline __device__ void fp16x4_to_e5m2x4(r32 dst[1], const r32 src[2]) { asm volatile("{\n" ".reg .b16 lo, hi;\n" "cvt.satfinite.rn.e5m2x2.f16x2 lo, %1;\n" "cvt.satfinite.rn.e5m2x2.f16x2 hi, %2;\n" "mov.b32 %0, {lo, hi};\n" "}\n" : "=r"(dst[0]) : "r"(src[0]), "r"(src[1])); } #endif inline __device__ void fp32x4_to_uint8x4(r32 dst[1], const r32 src[4]) { uint32_t tmp[4]; asm volatile("cvt.rni.sat.u32.f32 %0, %1;" : "=r"(tmp[0]) : "r"(src[0])); asm volatile("cvt.rni.sat.u32.f32 %0, %1;" : "=r"(tmp[1]) : "r"(src[1])); asm volatile("cvt.rni.sat.u32.f32 %0, %1;" : "=r"(tmp[2]) : "r"(src[2])); asm volatile("cvt.rni.sat.u32.f32 %0, %1;" : "=r"(tmp[3]) : "r"(src[3])); asm volatile( "{\n" \ ".reg .u32 r4;\n" \ "cvt.pack.sat.u8.s32.b32 r4, %4, %3, 0;\n" \ "cvt.pack.sat.u8.s32.b32 %0, %2, %1, r4;\n" \ "}" : "=r"(dst[0]) : "r"(tmp[0]), "r"(tmp[1]), "r"(tmp[2]), "r"(tmp[3]) ); } inline __device__ void fp32x8_to_boolx8(r32 dst[1], const r32 src[8]) { dst[0] = 0; #pragma unroll for (int i = 0; i < 8; ++i) { int b = reinterpret_cast(src[i]) != 0.f; dst[0] |= (b << i); } } inline __device__ void fp32_to_int64(r32 dst[2], const r32 src[1]) { int64_t* output = reinterpret_cast(dst); asm("cvt.rni.sat.s64.f32 %0, %1;" : "=l"(output[0]) : "r"(src[0])); } inline __device__ void fp32_to_tf32(r32 dst[1], const r32 src[1]) { if (::isfinite(reinterpret_cast(src[0]))) { dst[0] = src[0] + 0x1000u; } } inline __device__ void int32_to_fp32(r32 dst[1], const r32 src[1]) { reinterpret_cast(dst[0]) = static_cast(reinterpret_cast(src[0])); } inline __device__ void int32x2_to_fp16x2(r32 dst[1], const r32 src[2]) { r32 tmp_src[2]; #pragma unroll for (int ii = 0; ii < 2; ++ii) { reinterpret_cast(tmp_src[ii]) = static_cast(reinterpret_cast(src[ii])); } asm volatile("cvt.rn.f16x2.f32 %0, %1, %2;\n" : "=r"(dst[0]) : "r"(tmp_src[1]), "r"(tmp_src[0])); } inline __device__ void int32x2_to_bf16x2(r32 dst[1], const r32 src[2]) { r32 tmp_src[2]; #pragma unroll for (int ii = 0; ii < 2; ++ii) { reinterpret_cast(tmp_src[ii]) = static_cast(reinterpret_cast(src[ii])); } asm volatile("cvt.rn.bf16x2.f32 %0, %1, %2;\n" : "=r"(dst[0]) : "r"(tmp_src[1]), "r"(tmp_src[0])); } inline __device__ void int32x4_to_int8x4(r32 dst[1], const r32 src[4]) { asm volatile( "{\n" \ ".reg .u32 r4;\n" \ "cvt.pack.sat.s8.s32.b32 r4, %4, %3, 0;\n" \ "cvt.pack.sat.s8.s32.b32 %0, %2, %1, r4;\n" \ "}" : "=r"(dst[0]) : "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]) ); } #if __CUDA_ARCH__ >= 890 inline __device__ void int32x4_to_e4m3x4(r32 dst[1], const r32 src[4]) { r32 tmp_src[4]; #pragma unroll for (int ii = 0; ii < 4; ++ii) { reinterpret_cast(tmp_src[ii]) = static_cast(reinterpret_cast(src[ii])); } asm volatile( "{\n" \ ".reg .b16 lo;\n" \ ".reg .b16 hi;\n" \ "cvt.rn.satfinite.e4m3x2.f32 lo, %2, %1;\n" \ "cvt.rn.satfinite.e4m3x2.f32 hi, %4, %3;\n" \ "mov.b32 %0, {lo, hi};\n" \ "}" : "=r"(dst[0]) : "r"(tmp_src[0]), "r"(tmp_src[1]), "r"(tmp_src[2]), "r"(tmp_src[3])); } inline __device__ void int32x4_to_e5m2x4(r32 dst[1], const r32 src[4]) { r32 tmp_src[4]; #pragma unroll for (int ii = 0; ii < 4; ++ii) { reinterpret_cast(tmp_src[ii]) = static_cast(reinterpret_cast(src[ii])); } asm volatile( "{\n" \ ".reg .b16 lo;\n" \ ".reg .b16 hi;\n" \ "cvt.rn.satfinite.e5m2x2.f32 lo, %2, %1;\n" \ "cvt.rn.satfinite.e5m2x2.f32 hi, %4, %3;\n" \ "mov.b32 %0, {lo, hi};\n" \ "}" : "=r"(dst[0]) : "r"(tmp_src[0]), "r"(tmp_src[1]), "r"(tmp_src[2]), "r"(tmp_src[3])); } #endif inline __device__ void int32x4_to_uint8x4(r32 dst[1], const r32 src[4]) { asm volatile( "{\n" \ ".reg .u32 r4;\n" \ "cvt.pack.sat.u8.s32.b32 r4, %4, %3, 0;\n" \ "cvt.pack.sat.u8.s32.b32 %0, %2, %1, r4;\n" \ "}" : "=r"(dst[0]) : "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]) ); } inline __device__ void int32x8_to_boolx8(r32 dst[1], const r32 src[8]) { dst[0] = 0; #pragma unroll for (int i = 0; i < 8; ++i) { int b = (src[i] != 0); dst[0] |= (b << i); } } inline __device__ void int32_to_int64(r32 dst[2], const r32 src[1]) { *reinterpret_cast(dst) = static_cast(src[0]); } inline __device__ void fp16x2_to_fp32x2(r32 dst[2], const r32 src[1]) { asm volatile( \ "{\n" \ " .reg .f16 lo, hi;\n" \ " mov.b32 {lo, hi}, %2;\n" \ " cvt.f32.f16 %0, lo;\n" \ " cvt.f32.f16 %1, hi;\n" \ "}\n" : "=r"(dst[0]), "=r"(dst[1]) : "r"(src[0])); } inline __device__ void fp16x2_to_int32x2(r32 dst[2], const r32 src[1]) { asm volatile( \ "{\n" \ " .reg .f16 lo, hi;\n" \ " mov.b32 {lo, hi}, %2;\n" \ " cvt.rni.s32.f16 %0, lo;\n" \ " cvt.rni.s32.f16 %1, hi;\n" \ "}\n" : "=r"(dst[0]), "=r"(dst[1]) : "r"(src[0])); } inline __device__ void bf16x2_to_fp32x2(r32 dst[2], const r32 src[1]) { asm volatile( \ "{\n" \ " .reg .b16 lo, hi;\n" \ " mov.b32 {lo, hi}, %2;\n" \ " mov.b32 %0, {0, lo};\n" \ " mov.b32 %1, {0, hi};\n" \ "}\n" : "=r"(dst[0]), "=r"(dst[1]) : "r"(src[0])); } inline __device__ void bf16x2_to_int32x2(r32 dst[2], const r32 src[1]) { asm volatile( \ "{\n" \ " .reg .b16 lo, hi;\n" \ " mov.b32 {lo, hi}, %2;\n" \ " cvt.rni.s32.bf16 %0, lo;\n" \ " cvt.rni.s32.bf16 %1, hi;\n" \ "}\n" : "=r"(dst[0]), "=r"(dst[1]) : "r"(src[0])); } inline __device__ int32_t dp4a_s(uint32_t a, uint32_t b, int32_t c = 0) { int32_t d; asm volatile("dp4a.s32.s32 %0, %1, %2, %3;" : "=r"(d) : "r"(a), "r"(b), "r"(c)); return d; } inline __device__ void int8x4_to_int32x4(r32 dst[4], const r32 src[1]) { reinterpret_cast(dst[0]) = dp4a_s(*src, 0x00000001u); reinterpret_cast(dst[1]) = dp4a_s(*src, 0x00000100u); reinterpret_cast(dst[2]) = dp4a_s(*src, 0x00010000u); reinterpret_cast(dst[3]) = dp4a_s(*src, 0x01000000u); } inline __device__ void int8x4_to_fp32x4(r32 dst[4], const r32 src[1]) { #if __CUDA_ARCH__ >= 860 int8x4_to_int32x4(dst, src); #pragma unroll for (int ii = 0; ii < 4; ++ii) { reinterpret_cast(dst[ii]) = static_cast(reinterpret_cast(dst[ii])); } #else int* f = reinterpret_cast(dst); static constexpr int fp32_base = 0x4B400000; asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(f[0]) : "r"(src[0]), "n"(0x8880)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(f[1]) : "r"(src[0]), "n"(0x9991)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(f[2]) : "r"(src[0]), "n"(0xAAA2)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(f[3]) : "r"(src[0]), "n"(0xBBB3)); float* fp_ptr = reinterpret_cast(f); #pragma unroll for (int ii = 0; ii < 4; ++ii) { f[ii] += fp32_base; fp_ptr[ii] -= reinterpret_cast(fp32_base); } #endif } inline __device__ void int8x4_to_fp16x4(r32 dst[2], const r32 src[1]) { uint32_t* h = reinterpret_cast(dst); uint32_t i8s = reinterpret_cast(src[0]); static constexpr uint32_t mask_for_elt_01 = 0x9180; static constexpr uint32_t mask_for_elt_23 = 0xB3A2; asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(h[0]) : "r"(i8s), "n"(mask_for_elt_01)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(h[1]) : "r"(i8s), "n"(mask_for_elt_23)); static constexpr uint32_t INPUT_MASK = 0x03FF03FF; static constexpr uint32_t I8s_TO_F16s_MAGIC_NUM = 0x66006600; static constexpr uint32_t immLut = (0xf0 & 0xcc) ^ 0xaa; asm volatile("lop3.b32 %0, %1, %2, %3, %4;\n" : "=r"(h[0]) : "r"(h[0]), "n"(INPUT_MASK), "n"(I8s_TO_F16s_MAGIC_NUM), "n"(immLut)); asm volatile("lop3.b32 %0, %1, %2, %3, %4;\n" : "=r"(h[1]) : "r"(h[1]), "n"(INPUT_MASK), "n"(I8s_TO_F16s_MAGIC_NUM), "n"(immLut)); asm volatile("sub.f16x2 %0, %1, %2;\n" : "=r"(h[0]) : "r"(h[0]), "r"(I8s_TO_F16s_MAGIC_NUM)); asm volatile("sub.f16x2 %0, %1, %2;\n" : "=r"(h[1]) : "r"(h[1]), "r"(I8s_TO_F16s_MAGIC_NUM)); } inline __device__ void int8x4_to_bf16x4(r32 dst[2], const r32 src[1]) { #if __CUDA_ARCH__ >= 860 r32 tmp[4]; int8x4_to_fp32x4(tmp, src); fp32x2_to_bf16x2(&dst[0], &tmp[0]); fp32x2_to_bf16x2(&dst[1], &tmp[2]); #else uint32_t* bf16_result_ptr = reinterpret_cast(dst); static constexpr uint32_t fp32_base = 0x4B400000; float fp32_intermediates[4]; int* fp32_intermediates_casted = reinterpret_cast(fp32_intermediates); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(fp32_intermediates_casted[0]) : "r"(src[0]), "n"(0x8880)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(fp32_intermediates_casted[1]) : "r"(src[0]), "n"(0x9991)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(fp32_intermediates_casted[2]) : "r"(src[0]), "n"(0xAAA2)); asm volatile("prmt.b32 %0,%1,%1,%2;\n" : "=r"(fp32_intermediates_casted[3]) : "r"(src[0]), "n"(0xBBB3)); #pragma unroll for (int ii = 0; ii < 4; ++ii) { fp32_intermediates_casted[ii] += fp32_base; fp32_intermediates[ii] -= reinterpret_cast(fp32_base); } #pragma unroll for (int ii = 0; ii < 2; ++ii) { bf16_result_ptr[ii] = __byte_perm(fp32_intermediates_casted[2 * ii + 0], fp32_intermediates_casted[2 * ii + 1], 0x7632); } #endif } #if __CUDA_ARCH__ >= 890 inline __device__ void e4m3x4_to_fp32x4(r32 dst[4], const r32 src[1]) { r32 tmp[2]; asm volatile( \ "{\n" \ ".reg .b16 lo, hi;\n" \ "mov.b32 {lo, hi}, %2;\n" \ "cvt.rn.f16x2.e4m3x2 %0, lo;\n" \ "cvt.rn.f16x2.e4m3x2 %1, hi;\n" \ "}\n" : "=r"(tmp[0]), "=r"(tmp[1]) : "r"(src[0])); fp16x2_to_fp32x2(&dst[0], &tmp[0]); fp16x2_to_fp32x2(&dst[2], &tmp[1]); } inline __device__ void e4m3x4_to_int32x4(r32 dst[4], const r32 src[1]) { r32 tmp[2]; asm volatile( \ "{\n" \ ".reg .b16 lo, hi;\n" \ "mov.b32 {lo, hi}, %2;\n" \ "cvt.rn.f16x2.e4m3x2 %0, lo;\n" \ "cvt.rn.f16x2.e4m3x2 %1, hi;\n" \ "}\n" : "=r"(tmp[0]), "=r"(tmp[1]) : "r"(src[0])); fp16x2_to_int32x2(&dst[0], &tmp[0]); fp16x2_to_int32x2(&dst[2], &tmp[1]); } #endif #if __CUDA_ARCH__ >= 890 inline __device__ void e5m2x4_to_fp32x4(r32 dst[4], const r32 src[1]) { r32 tmp[2]; asm volatile( \ "{\n" \ ".reg .b16 lo, hi;\n" \ "mov.b32 {lo, hi}, %2;\n" \ "cvt.rn.f16x2.e5m2x2 %0, lo;\n" \ "cvt.rn.f16x2.e5m2x2 %1, hi;\n" \ "}\n" : "=r"(tmp[0]), "=r"(tmp[1]) : "r"(src[0])); fp16x2_to_fp32x2(&dst[0], &tmp[0]); fp16x2_to_fp32x2(&dst[2], &tmp[1]); } inline __device__ void e5m2x4_to_int32x4(r32 dst[4], const r32 src[1]) { r32 tmp[2]; asm volatile( \ "{\n" \ ".reg .b16 lo, hi;\n" \ "mov.b32 {lo, hi}, %2;\n" \ "cvt.rn.f16x2.e5m2x2 %0, lo;\n" \ "cvt.rn.f16x2.e5m2x2 %1, hi;\n" \ "}\n" : "=r"(tmp[0]), "=r"(tmp[1]) : "r"(src[0])); fp16x2_to_int32x2(&dst[0], &tmp[0]); fp16x2_to_int32x2(&dst[2], &tmp[1]); } #endif inline __device__ int32_t dp4a_u(uint32_t a, uint32_t b, int32_t c = 0) { int32_t d; asm volatile("dp4a.u32.u32 %0, %1, %2, %3;" : "=r"(d) : "r"(a), "r"(b), "r"(c)); return d; } inline __device__ void uint8x4_to_int32x4(r32 dst[4], const r32 src[1]) { reinterpret_cast(dst[0]) = dp4a_u(*src, 0x00000001u); reinterpret_cast(dst[1]) = dp4a_u(*src, 0x00000100u); reinterpret_cast(dst[2]) = dp4a_u(*src, 0x00010000u); reinterpret_cast(dst[3]) = dp4a_u(*src, 0x01000000u); } inline __device__ void uint8x4_to_fp32x4(r32 dst[4], const r32 src[1]) { #if __CUDA_ARCH__ >= 860 uint8x4_to_int32x4(dst, src); #pragma unroll for (int ii = 0; ii < 4; ++ii) { reinterpret_cast(dst[ii]) = static_cast(reinterpret_cast(dst[ii])); } #else uint32_t* f = reinterpret_cast(dst); static constexpr uint32_t fp32_base = 0x4B000000; f[0] = __byte_perm(src[0], fp32_base, 0x7650); f[1] = __byte_perm(src[0], fp32_base, 0x7651); f[2] = __byte_perm(src[0], fp32_base, 0x7652); f[3] = __byte_perm(src[0], fp32_base, 0x7653); float* fp_ptr = reinterpret_cast(f); #pragma unroll for (int ii = 0; ii < 4; ++ii) { fp_ptr[ii] -= reinterpret_cast(fp32_base); } #endif } inline __device__ void boolx8_to_fp32x8(r32 dst[8], const r32 src[1]) { r32 mask = 1; #pragma unroll for (int i = 0; i < 8; ++i) { reinterpret_cast(dst[i]) = static_cast((mask & src[0]) != 0); mask <<= 1; } } inline __device__ void boolx8_to_int32x8(r32 dst[8], const r32 src[1]) { r32 mask = 1; #pragma unroll for (int i = 0; i < 8; ++i) { dst[i] = ((mask & src[0]) != 0); mask <<= 1; } } inline __device__ void int64_to_fp32(r32 dst[1], const r32 src[2]) { const int64_t* input = reinterpret_cast(src); asm("cvt.rn.f32.s64 %0, %1;" : "=r"(dst[0]) : "l"(input[0])); } inline __device__ void int64_to_int32(r32 dst[1], const r32 src[2]) { const int64_t* input = reinterpret_cast(src); asm("cvt.sat.s32.s64 %0, %1;" : "=r"(dst[0]) : "l"(input[0])); } extern "C" __device__ uint32_t __nvvm_get_smem_pointer(void *ptr); inline __device__ uint32_t get_smem_pointer(const void *ptr) { return __nvvm_get_smem_pointer(const_cast(ptr)); } extern "C" __device__ inline void *__nv_cvta_shared_to_generic_impl(size_t __ptr) { return (void *)(void __attribute__((address_space(3))) *)__ptr; } inline __device__ void *set_smem_pointer(uint32_t ptr) { return __nv_cvta_shared_to_generic_impl(ptr); } inline __device__ void stsm_x1(r32 dst, r32 src[1]) { asm volatile("stmatrix.sync.aligned.m8n8.x1.shared.b16 [%0], {%1};\n" ::"r"(dst), "r"(src[0])); } inline __device__ void stsmt_x1(r32 dst, r32 src[1]) { asm volatile("stmatrix.sync.aligned.m8n8.x1.trans.shared.b16 [%0], {%1};\n" ::"r"(dst), "r"(src[0])); } inline __device__ void stsm_x2(r32 dst, r32 src[2]) { asm volatile("stmatrix.sync.aligned.m8n8.x2.shared.b16 [%0], {%1, %2};\n" ::"r"(dst), "r"(src[0]), "r"(src[1])); } inline __device__ void stsmt_x2(r32 dst, r32 src[2]) { asm volatile("stmatrix.sync.aligned.m8n8.x2.trans.shared.b16 [%0], {%1, %2};\n" ::"r"(dst), "r"(src[0]), "r"(src[1])); } inline __device__ void stsmt_x4(r32 dst, r32 src[4]) { asm volatile("stmatrix.sync.aligned.m8n8.x4.trans.shared.b16 [%0], {%1, %2, %3, %4};\n" ::"r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3])); } inline __device__ void stsm_x4(r32 dst, r32 src[4]) { asm volatile("stmatrix.sync.aligned.m8n8.x4.shared.b16 [%0], {%1, %2, %3, %4};\n" ::"r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3])); } inline __device__ void fence_view_async_shared(void){ asm volatile ("fence.proxy.async.shared::cta;\n"); } inline __device__ void sts_128(r32 dst, r32 src[4]) { asm volatile("st.shared.v4.b32 [%0], {%1, %2, %3, %4};\n" :: "r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3])); } inline __device__ void sts_64(r32 dst, r32 src[2]) { asm volatile("st.shared.v2.b32 [%0], {%1, %2};\n" :: "r"(dst), "r"(src[0]), "r"(src[1])); } inline __device__ void sts_32(r32 dst, r32 src[1]) { asm volatile("st.shared.b32 [%0], %1;\n" :: "r"(dst), "r"(src[0])); } inline __device__ void sts_16(r32 dst, r32 src[1], const int pos = 0) { *reinterpret_cast(set_smem_pointer(dst)) = reinterpret_cast(src)[pos]; } inline __device__ void sts_8(r32 dst, r32 src[1], const int pos = 0) { *reinterpret_cast(set_smem_pointer(dst)) = reinterpret_cast(src)[pos]; } inline __device__ void ldsm_x1(r32 dst[1], r32 src) { asm volatile("ldmatrix.sync.aligned.m8n8.x1.shared.b16 {%0}, [%1];\n" : "=r"(dst[0]) : "r"(src)); } inline __device__ void ldsm_x4(r32 dst[4], r32 src) { asm volatile("ldmatrix.sync.aligned.m8n8.x4.shared.b16 {%0, %1, %2, %3}, [%4];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]) : "r"(src)); } inline __device__ void ldsmt_x1(r32 dst[1], r32 src) { asm volatile("ldmatrix.sync.aligned.m8n8.x1.trans.shared.b16 {%0}, [%1];\n" : "=r"(dst[0]) : "r"(src)); } inline __device__ void ldsmt_x4(r32 dst[4], r32 src) { asm volatile("ldmatrix.sync.aligned.m8n8.x4.trans.shared.b16 {%0, %1, %2, %3}, [%4];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]) : "r"(src)); } inline __device__ void ldsmt_8bit_x2(r32 dst[4], r32 src) { asm volatile("ldmatrix.sync.aligned.m16n16.x2.trans.shared.b8 {%0, %1, %2, %3}, [%4];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]) : "r"(src)); } inline __device__ void lds_128(r32 dst[4], r32 src) { asm volatile("ld.shared.v4.b32 {%0, %1, %2, %3}, [%4];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]) : "r"(src)); } inline __device__ void lds_64(r32 dst[2], r32 src) { asm volatile("ld.shared.v2.b32 {%0, %1}, [%2];\n" : "=r"(dst[0]), "=r"(dst[1]) : "r"(src)); } inline __device__ void lds_32(r32 dst[1], r32 src) { asm volatile("ld.shared.b32 %0, [%1];\n" : "=r"(dst[0]) : "r"(src)); } // used for mixed input data type inline __device__ void lds_16(r32 dst[1], r32 src) { *reinterpret_cast(dst) = *reinterpret_cast(set_smem_pointer(src)); } inline __device__ void lds_8(r32 dst[1], r32 src) { *reinterpret_cast(dst) = *reinterpret_cast(set_smem_pointer(src)); } inline __device__ void stg_128(void *ptr, r32 val[4]) { uint4 *p = reinterpret_cast(ptr); p[0] = make_uint4(val[0], val[1], val[2], val[3]); } inline __device__ void stg_64(void *ptr, r32 val[2]) { uint2 *p = reinterpret_cast(ptr); p[0] = make_uint2(val[0], val[1]); } inline __device__ void stg_32(void *ptr, r32 val[1]) { uint32_t *p = reinterpret_cast(ptr); p[0] = val[0]; } inline __device__ void stg_16(void *ptr, r32 val[1]) { uint16_t *p = reinterpret_cast(ptr); p[0] = reinterpret_cast(val[0]); } inline __device__ void stg_8(void *ptr, r32 val[1]) { uint8_t *p = reinterpret_cast(ptr); p[0] = reinterpret_cast(val[0]); } inline __device__ void ldg_128(r32 dst[4], const void *ptr) { uint4 tmp = *reinterpret_cast(ptr); dst[0] = tmp.x; dst[1] = tmp.y; dst[2] = tmp.z; dst[3] = tmp.w; } inline __device__ void ldg_64(r32 dst[2], const void *ptr) { uint2 tmp = *reinterpret_cast(ptr); dst[0] = tmp.x; dst[1] = tmp.y; } inline __device__ void ldg_32(r32 dst[1], const void *ptr) { dst[0] = *reinterpret_cast(ptr); } inline __device__ void ldg_16(r32 dst[1], const void *ptr) { *reinterpret_cast(dst) = *reinterpret_cast(ptr); } inline __device__ void ldg_8(r32 dst[1], const void *ptr) { *reinterpret_cast(dst) = *reinterpret_cast(ptr); } inline __device__ void ldg_16_reg(r32 dst[1], const void *ptr) { uint16_t tmp = *reinterpret_cast(ptr); asm volatile("{\nmov.b32 %0, {%1, %1};\n}\n" : "=r"(dst[0]) : "h"(tmp)); } inline __device__ void ldg_8_reg(r32 dst[1], const void *ptr) { uint8_t tmp_val = *reinterpret_cast(ptr); uint8_t* tmp_ptr = reinterpret_cast(dst); tmp_ptr[0] = tmp_ptr[1] = tmp_ptr[2] = tmp_ptr[3] = tmp_val; } inline __device__ void ldgdepbar() { asm volatile("cp.async.commit_group;\n" ::); } template inline __device__ void depbar() { asm volatile("cp.async.wait_group %0;\n" :: "n"(STAGES)); } inline __device__ void ldgsts_32(const void *src, r32 dst, bool p = true) { r32 m = p ? 4u : 0u; asm volatile("cp.async.ca.shared.global [%0], [%1], 4, %2;\n" :: "r"(dst), "l"(src), "r"(m)); } inline __device__ void ldgsts_64(const void *src, r32 dst, bool p = true) { r32 m = p ? 8u : 0u; asm volatile("cp.async.ca.shared.global [%0], [%1], 8, %2;\n" :: "r"(dst), "l"(src), "r"(m)); } inline __device__ void ldgsts_128(const void *src, r32 dst, bool p = true) { r32 m = p ? 16u : 0u; asm volatile("cp.async.cg.shared.global [%0], [%1], 16, %2;\n" :: "r"(dst), "l"(src), "r"(m)); } #if defined( __CUDA_ARCH__ ) && __CUDA_ARCH__ >= 900 inline __device__ void warpgroup_arrive() { asm volatile("wgmma.fence.sync.aligned;\n" ::: "memory"); } template inline __device__ void warpgroup_wait() { asm volatile("wgmma.wait_group.sync.aligned %0;\n" ::"n"(N) : "memory"); } inline __device__ void warpgroup_commit() { asm volatile("wgmma.commit_group.sync.aligned;\n" ::: "memory"); } template inline __device__ T &__wgmma_fence_operand(T &®) { asm volatile("" : "+r"(reg)::"memory"); return reg; } #endif #if defined( __CUDA_ARCH__ ) && __CUDA_ARCH__ >= 900 inline __device__ void smem_bar_init(uint32_t smem_ptr, uint32_t init_value) { asm volatile("{\n\tmbarrier.init.shared.b64 [%1], %0; \n\t}" :: "r"(init_value),"r"(smem_ptr)); } inline __device__ void smem_bar_init_cta(uint32_t smem_ptr, int thread_count = 1) { asm volatile ("mbarrier.init.shared::cta.b64 [%0], %1;\n" :: "r"(smem_ptr), "r"(thread_count)); } inline __device__ void smem_bar_set_transaction_count(uint32_t smem_ptr, uint32_t expected_copy_bytes, uint32_t pred = 0) { asm volatile("{\n\t.reg .pred p;" " \n\tsetp.eq.u32 p, %2, 1;" " \n\t@p mbarrier.arrive.expect_tx.shared.b64 _, [%0], %1;" " \n\t}" :: "r"(smem_ptr), "r"(expected_copy_bytes), "r"(pred)); } inline __device__ uint32_t smem_bar_peek(uint32_t smem_ptr, uint32_t bar_phase) { uint32_t bar_phase_out; asm volatile("{\n\t.reg .pred P1;" " \n\tmbarrier.try_wait.parity.shared.b64 P1, [%1], %2;" " \n\tselp.b32 %0, 1, 0, P1; \n\t}" :"=r" (bar_phase_out):"r"(smem_ptr),"r"(bar_phase)); return bar_phase_out; } inline __device__ void smem_bar_wait(uint32_t smem_ptr, uint32_t bar_phase) { asm volatile(".pragma \"set knob ColdBlock\";\n" : : : "memory"); asm volatile(".pragma \"set knob DontInsertYield\";\n" : : : "memory"); uint32_t large_val = 0x989680; asm volatile("{\n\t.reg .pred P1;" " \n\tLAB_WAIT:" " \n\tmbarrier.try_wait.parity.shared.b64 P1, [%0], %1, %2;" " \n\t@P1 bra.uni DONE;" " \n\tbra.uni LAB_WAIT;" " \n\tDONE:" " \n\t}" :: "r"(smem_ptr),"r"(bar_phase), "r"(large_val)); asm volatile(".pragma \"reset knob DontInsertYield\";\n" : : : "memory"); asm volatile(".pragma \"reset knob ColdBlock\";\n" : : : "memory"); } inline __device__ void wait_barrier(uint32_t smem_int_ptr, int phase_bit) // Current phase bit the barrier waiting to flip { asm volatile(".pragma \"set knob DontInsertYield\";\n" : : : "memory" ); // {$nv-internal-release} asm volatile( "{\n" ".reg .pred P1;\n" "LAB_WAIT:\n" "mbarrier.try_wait.parity.shared::cta.b64 P1, [%0], %1;\n" "@P1 bra.uni DONE;\n" "bra.uni LAB_WAIT;\n" "DONE:\n" "}\n" :: "r"(smem_int_ptr), "r"(phase_bit)); asm volatile(".pragma \"reset knob DontInsertYield\";\n" : : : "memory" ); // {$nv-internal-release} } inline __device__ void smem_bar_arrive(uint32_t smem_ptr) { asm volatile("{\n\t.reg .b64 state;" " \n\tmbarrier.arrive.shared.b64 state, [%0];" " \n\t}" :: "r"(smem_ptr)); } // Barrier arrive on local smem inline __device__ void arrive_barrier(uint32_t smem_addr) { asm volatile( "{\n\t" "mbarrier.arrive.shared::cta.b64 _, [%0];\n\t" "}" : : "r"(smem_addr)); } inline __device__ void smem_bar_arrive_dsmem(uint64_t *bar_base_, const uint32_t& pred) { asm volatile( "{\n\t .reg .pred p;" " \n\t setp.eq.u32 p, %1, 1;" " \n\t@p mbarrier.arrive.b64 _, [%0];\n\t}" :: "l"(bar_base_), "r"(pred) ); } #endif inline __device__ void utmaldg_2d_tiled ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.2d.shared::cluster.global.mbarrier::meet_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3}], [%4], %5;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb1), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_2d_tiled_multicast ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.2d.shared::cluster.global.mbarrier::meet_tx::bytes.multicast.L2::cache_hint [%0], [%1, {%2, %3}], [%4], %5, %6;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb1), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #if (__CUDA_ARCH__ >= 1000) && (CUDACC_VERSION >= 128) inline __device__ void utmaldg_2d_tiled_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.2d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3}], [%4], %5;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb1 & MMA_PEER_BIT_MASK), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_2d_tiled_multicast_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.2d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.multicast::cluster.L2::cache_hint [%0], [%1, {%2, %3}], [%4], %5, %6;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb1 & MMA_PEER_BIT_MASK), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #endif inline __device__ void utmaldg_3d_tiled ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.3d.shared::cluster.global.mbarrier::meet_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4}], [%5], %6;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb1), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_3d_tiled_multicast ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.3d.shared::cluster.global.mbarrier::meet_tx::bytes.multicast.L2::cache_hint [%0], [%1, {%2, %3, %4}], [%5], %6, %7;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb1), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #if (__CUDA_ARCH__ >= 1000) && (CUDACC_VERSION >= 128) inline __device__ void utmaldg_3d_tiled_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.3d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4}], [%5], %6;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb1 & MMA_PEER_BIT_MASK), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_3d_tiled_multicast_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.3d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.multicast::cluster.L2::cache_hint [%0], [%1, {%2, %3, %4}], [%5], %6, %7;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb1 & MMA_PEER_BIT_MASK), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #endif // cudaTmaDesc, when issued using bulk copy async functions, are cached in constant cache. // But the producer kernel may have directly written to global memory, without invalidating this constant cache. // This acquire fence, invalidates the memory address in constant cache, using UTMACCTL.IV. inline __device__ void tma_descriptor_fence_acquire( cudaTmaDesc const* p_desc ) { #if (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 123) uint64_t gmem_int_desc = reinterpret_cast(p_desc); asm volatile ( "fence.proxy.tensormap::generic.acquire.gpu [%0], 128;\n" : : "l"(gmem_int_desc) : "memory"); asm volatile ( "cvta.global.u64 %0, %0;\n" : : "l"(gmem_int_desc), "l"(gmem_int_desc) : "memory"); #endif } inline __device__ void utmaldg_4d_tiled ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b int32_t urb5, // extra coord const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.4d.shared::cluster.global.mbarrier::meet_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4, %5}], [%6], %7;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb1), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_4d_tiled_multicast ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b int32_t urb5, // extra coord const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.4d.shared::cluster.global.mbarrier::meet_tx::bytes.multicast.L2::cache_hint [%0], [%1, {%2, %3, %4, %5}], [%6], %7, %8;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb1), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #if (__CUDA_ARCH__ >= 1000) && (CUDACC_VERSION >= 128) inline __device__ void utmaldg_4d_tiled_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b int32_t urb5, // extra coord const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.4d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4, %5}], [%6], %7;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb1 & MMA_PEER_BIT_MASK), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_4d_tiled_multicast_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // m int32_t urb3, // n int32_t urb4, // b int32_t urb5, // extra coord const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.4d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.multicast::cluster.L2::cache_hint [%0], [%1, {%2, %3, %4, %5}], [%6], %7, %8;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb1 & MMA_PEER_BIT_MASK), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #endif inline __device__ void utmaldg_5d_tiled ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.shared::cluster.global.mbarrier::meet_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], %8;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_5d_tiled_multicast ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.shared::cluster.global.mbarrier::meet_tx::bytes.multicast.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], %8, %9;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #if (__CUDA_ARCH__ >= 1000) && (CUDACC_VERSION >= 128) inline __device__ void utmaldg_5d_tiled_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], %8;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1 & MMA_PEER_BIT_MASK), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_5d_tiled_multicast_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.multicast::cluster.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], %8, %9;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1 & MMA_PEER_BIT_MASK), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #endif inline __device__ void utmaldg_5d_im2col ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n ushort3 im2col_offsets, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.shared::cluster.global.im2col.mbarrier::meet_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], {%8, %9 ,%10}, %11;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1), "h"(im2col_offsets.x), "h"(im2col_offsets.y), "h"(im2col_offsets.z), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_5d_im2col_multicast ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n ushort3 im2col_offsets, const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.shared::cluster.global.im2col.mbarrier::meet_tx::bytes.multicast.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], {%8, %9 ,%10}, %11, %12;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1), "h"(im2col_offsets.x), "h"(im2col_offsets.y), "h"(im2col_offsets.z), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #if (__CUDA_ARCH__ >= 1000) && (CUDACC_VERSION >= 128) inline __device__ void utmaldg_5d_im2col_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n ushort3 im2col_offsets, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.im2col.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], {%8, %9 ,%10}, %11;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1 & MMA_PEER_BIT_MASK), "h"(im2col_offsets.x), "h"(im2col_offsets.y), "h"(im2col_offsets.z), "l"(mem_desc) : "memory" ); } } inline __device__ void utmaldg_5d_im2col_multicast_2cta ( const cudaTmaDesc *p_desc, uint32_t urb0, // smem offset uint32_t urb1, // smem barrier offset int32_t urb2, // c int32_t urb3, // w int32_t urb4, // h int32_t urb5, // d int32_t urb6, // n ushort3 im2col_offsets, const uint16_t mcast_mask, const uint32_t elect_one, const uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.async.bulk.tensor.5d.im2col.cta_group::2.shared::cluster.global.mbarrier::complete_tx::bytes.multicast::cluster.L2::cache_hint [%0], [%1, {%2, %3, %4, %5, %6}], [%7], {%8, %9 ,%10}, %11, %12;\n" :: "r"(urb0), "l"(reinterpret_cast(p_desc)), "r"(urb2), "r"(urb3), "r"(urb4), "r"(urb5), "r"(urb6), "r"(urb1 & MMA_PEER_BIT_MASK), "h"(im2col_offsets.x), "h"(im2col_offsets.y), "h"(im2col_offsets.z), "h"(mcast_mask), "l"(mem_desc) : "memory" ); } } #endif inline __device__ void utmastg_3d_tiled ( const cudaTmaDesc *p_desc, uint32_t urb3, // smem offset int32_t urb0, // m int32_t urb1, // n int32_t urb2, // b const uint64_t mem_desc = MEM_DESC_DEFAULT ) { asm volatile( "cp.async.bulk.tensor.3d.global.shared::cta.bulk_group.L2::cache_hint [%0, {%1, %2, %3}], [%4], %5;\n" :: "l"(reinterpret_cast(p_desc)), "r"(urb0), "r"(urb1), "r"(urb2), "r"(urb3), "l"(mem_desc) : "memory" ); } inline __device__ void utmastg_atomicAdd_4d_tiled( const cudaTmaDesc *p_desc, uint32_t smem_offset, int32_t urb0, // m int32_t urb1, // n int32_t urb2, // h int32_t urb3, // b const uint32_t elect_one, uint64_t mem_desc = MEM_DESC_DEFAULT ) { if (elect_one) { asm volatile( "cp.reduce.async.bulk.tensor.4d.global.shared::cta.add.tile.bulk_group.L2::cache_hint [%0, {%1, %2, %3, %4}], [%5], %6;\n" :: "l"(reinterpret_cast(p_desc)), "r"(urb0), "r"(urb1), "r"(urb2), "r"(urb3), "r"(smem_offset), "l"(mem_desc) : "memory" ); } } inline __device__ void utmastg_4d_tiled( const cudaTmaDesc *p_desc, uint32_t smem_offset, int32_t urb0, // m int32_t urb1, // n int32_t urb2, // h int32_t urb3, // b uint64_t mem_desc = MEM_DESC_DEFAULT ) { asm volatile( "cp.async.bulk.tensor.4d.global.shared::cta.bulk_group.L2::cache_hint [%0, {%1, %2, %3, %4}], [%5], %6;\n" :: "l"(reinterpret_cast(p_desc)), "r"(urb0), "r"(urb1), "r"(urb2), "r"(urb3), "r"(smem_offset), "l"(mem_desc) : "memory" ); } inline __device__ void utmastg_5d_tiled( const cudaTmaDesc *p_desc, uint32_t smem_offset, int32_t urb0, // m int32_t urb1, // n int32_t urb2, // h int32_t urb3, // b int32_t urb4, // lean_tile_id uint64_t mem_desc = MEM_DESC_DEFAULT ) { asm volatile( "cp.async.bulk.tensor.5d.global.shared::cta.bulk_group.L2::cache_hint [%0, {%1, %2, %3, %4, %5}], [%6], %7;\n" :: "l"(reinterpret_cast(p_desc)), "r"(urb0), "r"(urb1), "r"(urb2), "r"(urb3), "r"(urb4), "r"(smem_offset), "l"(mem_desc) : "memory" ); } static __forceinline__ __device__ float tanhf_fast(const float &a) { #if (__CUDACC_VER_MAJOR__ >= 11) && (__CUDA_ARCH__ >= 750) float y =0.0f; asm volatile ("tanh.approx.f32 %0, %1; " : "=f"(y) : "f"(a)); return y; #else return ::tanhf(a); #endif } // Forward (non-ReLU) Activations static float __forceinline__ __device__ eluFwd(float x, float alpha){ if (x < 0) { return alpha * (__expf(x) - 1.0f); }else { return x; } } static float __forceinline__ __device__ geluFwd(float x){ float cdf_x = (1.0f + erff(__fdividef(x, 1.41421356237f))) * 0.5f; return cdf_x * x; } static float __forceinline__ __device__ sigmoidFwd(float x){ return __frcp_rn(1.0f + __expf(-x)); } static float __forceinline__ __device__ softPlusFwd(float x, float beta){ if(x > 0){ return x + __fdividef(__logf(1.0f + __expf(-beta * x)), beta); } else{ return __fdividef(__logf(1.0f + __expf(beta * x)), beta); } } static float __forceinline__ __device__ swishFwd(float x, float beta){ return __fdividef(x, (1.0f + __expf(-(beta * x)))); } static float __forceinline__ __device__ tanhFwd(float x){ return tanhf_fast(x); } static float __forceinline__ __device__ geluApproxTanhFwd(float x){ float c = 0.044715f; float sqrt_two_over_pi = 0.797884560802865f; float c_x3 = c * x * x * x; float res = 0.5f * x * (1.0f + tanhf_fast(sqrt_two_over_pi * (x + c_x3))); return res; } // Backward (non-ReLU) Activations static float __forceinline__ __device__ eluBwd (float x, float dL_by_dy, float alpha){ float dy_by_dx = x > 0.0f ? 1.0f : alpha * __expf(x); return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ geluBwd (float x, float dL_by_dy){ float cdf_x = (1 + erff(__fdividef(x, 1.41421356237f))) * 0.5f; float pdf_x = __fdividef(__expf(-((x * x) * 0.5f)), 2.50662827463f); float dy_by_dx = cdf_x + x * pdf_x; return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ sigmoidBwd (float x, float dL_by_dy){ float y = __frcp_rn(1.0f + __expf(-x)); float dy_by_dx = y * (1.0f - y); return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ softPlusBwd (float x, float dL_by_dy, float beta){ float dy_by_dx = __frcp_rn(1.0f + __expf(-(beta * x))); return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ swishBwd (float x, float dL_by_dy, float beta){ float sigmoid_beta_x = __frcp_rn(1.0f + __expf(-(beta * x))); float y = x * sigmoid_beta_x; float beta_y = beta * y; float dy_by_dx = beta_y + sigmoid_beta_x * (1.0f - beta_y); return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ tanhBwd (float x, float dL_by_dy){ float y = tanhf_fast(x); float dy_by_dx = 1.0f - y * y; return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ geluApproxTanhBwd(float x, float dy){ float c = 0.044715f; float sqrt_two_over_pi = 0.797884560802865f; float c_x2 = c * x * x; float c_x3 = x * c_x2; float temp = sqrt_two_over_pi * (x + c_x3); float sech_ = __fdividef(2.0f, __expf(temp) + __expf(-temp)); float res = 0.5f * (1.0f + tanhf_fast(temp) + sqrt_two_over_pi * x * sech_ * sech_ * (3.0f * c_x2 + 1.0f) * dy); return res; } // Forward ReLU activations // Relu helper function: clip the lower part static float __forceinline__ __device__ clipLowerEdge(float elem, float lower_edge){ return (lower_edge > elem) ? lower_edge : elem; } // Relu helper function: clip the upper part static float __forceinline__ __device__ clipUpperEdge(float elem, float upper_edge){ return (upper_edge < elem) ? upper_edge : elem; } // Forward ReLU: clip only lower part static float __forceinline__ __device__ reluFwd_LoClip(float x, float lower_clip){ return clipLowerEdge(x, lower_clip); } // Forward ReLU: clip lower part and upper part static float __forceinline__ __device__ reluFwd_LoClipHiClip(float x, float lower_clip, float upper_clip){ float elem = clipUpperEdge(x, upper_clip); return clipLowerEdge(elem, lower_clip); } // Forward ReLU: clip only lower part, but add slope to lower clip static float __forceinline__ __device__ reluFwd_LoClip_Sloped(float x, float lower_clip, float slope){ float lower_edge = lower_clip + slope * (x - lower_clip); return clipLowerEdge(x, lower_edge); } // Forward ReLU: clip lower part and upper part, but add slope to lower clip static float __forceinline__ __device__ reluFwd_LoClipHiClip_Sloped(float x, float lower_clip, float upper_clip, float lower_clip_slope){ float lower_edge = lower_clip + lower_clip_slope * (x - lower_clip); return reluFwd_LoClipHiClip(x, lower_edge, upper_clip); } // Backward ReLU activations static float __forceinline__ __device__ reluBwd_Simple(float x, float dL_by_dy){ return (x <= 0.0f) ? 0.0f : float(dL_by_dy); } static float __forceinline__ __device__ reluBwd_Generic(float x, float dL_by_dy, float upper_clip, float lower_clip, float lower_clip_slope){ float dy_by_dx; if(x >= upper_clip) { dy_by_dx = 0.0f; } else if(x <= lower_clip) { dy_by_dx = lower_clip_slope; } else { dy_by_dx = 1.0f; } return dy_by_dx * dL_by_dy; } static float __forceinline__ __device__ atomicMin(float* addr, float value) { float old; old = !signbit(value) ? __int_as_float(::atomicMin((int*)addr, __float_as_int(value))) : __uint_as_float(::atomicMax((unsigned int*)addr, __float_as_uint(value))); return old; } static float __forceinline__ __device__ atomicMax (float* addr, float value) { float old; old = !signbit(value) ? __int_as_float(::atomicMax((int*)addr, __float_as_int(value))) : __uint_as_float(::atomicMin((unsigned int*)addr, __float_as_uint(value))); return old; } static r32 __forceinline__ __device__ atomicAdd_half2(r32* addr, r32 value) { r32 old; asm volatile ("{ atom.add.noftz.f16x2 %0,[%1],%2; }\n" : "=r"(old) : "l"(addr), "r"(value) : "memory"); return old; } static float __forceinline__ __device__ atomicMul(float* addr, float value) { int* addr_as_int = reinterpret_cast(addr); int old = *addr_as_int; int assumed; do { assumed = old; old = atomicCAS(addr_as_int, assumed, __float_as_int(value * __int_as_float(assumed))); } while (assumed != old); return __int_as_float(old); } inline __device__ uint32_t hadd2(uint32_t a, uint32_t b) { uint32_t c; asm volatile("add.f16x2 %0, %1, %2;\n" : "=r"(c) : "r"(a), "r"(b)); return c; } inline __device__ uint32_t hfma2(uint32_t a, uint32_t b, uint32_t c) { uint32_t d; asm volatile("fma.rn.f16x2 %0, %1, %2, %3;\n" : "=r"(d) : "r"(a), "r"(b), "r"(c)); return d; } inline __device__ uint32_t relu_fp16x2(uint32_t x, uint32_t lb = 0u) { uint32_t res = 0; asm volatile( "max.NaN.f16x2 %0, %1, %2;\n" : "=r"(res) : "r"(x), "r"(lb)); return res; } inline __device__ uint32_t hfma2_relu(uint32_t a, uint32_t b, uint32_t c, uint32_t with_relu, uint32_t lb) { uint32_t d; d = hfma2(a, b, c); d = relu_fp16x2(d, lb); return d; } inline __device__ uint32_t fp32_exp2(uint32_t in) { uint32_t out; asm volatile("ex2.approx.ftz.f32 %0, %1;\n" : "=r"(out) : "r"(in)); return out; } class Philox { public: __device__ inline Philox(unsigned long long seed, unsigned long long subsequence, unsigned long long offset) : STATE(0) { //key.x = (unsigned int)seed; //key.y = (unsigned int)(seed >> 32); //counter = make_uint4(0, 0, 0, 0); //counter.z = (unsigned int)(subsequence); //counter.w = (unsigned int)(subsequence >> 32); //STATE = 0; //incr_n(offset / 4); key = reinterpret_cast(seed); ull2 * tmp = reinterpret_cast(&counter); tmp->x = offset / 4; tmp->y = subsequence; } __device__ inline uint4 operator()() { if (STATE == 0) { uint4 counter_ = counter; uint2 key_ = key; // 7-round philox for (int i = 0; i < 6; i++) { counter_ = single_round(counter_, key_); key_.x += (kPhilox10A); key_.y += (kPhilox10B); } output = single_round(counter_, key_); incr(); } // return a float4 directly // unsigned long ret; // switch(STATE) { // case 0: ret = output.x; break; // case 1: ret = output.y; break; // case 2: ret = output.z; break; // case 3: ret = output.w; break; //} // STATE = (STATE + 1) % 4; return output; } __device__ inline uint4 operator()(const unsigned long long subsequence) { uint4 counter_ = counter; ull2 * tmp = reinterpret_cast(&counter_); tmp->y = subsequence; // if ((threadIdx.x % 32 == 0) && (blockIdx.x == 0) && (blockIdx.y == 0)) { // printf("tidx = %d, counter_: %u, %u, %u, %u\n", threadIdx.x, counter_.x, counter_.y, counter_.z, counter_.w); // } uint2 key_ = key; // 7-round philox #pragma unroll for (int i = 0; i < 6; i++) { counter_ = single_round(counter_, key_); key_.x += (kPhilox10A); key_.y += (kPhilox10B); } output = single_round(counter_, key_); // if ((threadIdx.x == 0) && (blockIdx.x == 0) && (blockIdx.y == 0)) { // printf("Philox counter: %u, %u, %u, %u\n", counter.x, counter.y, counter.z, counter.w); // printf("Philox output: %u, %u, %u, %u\n", output.x, output.y, output.z, output.w); // } return output; } private: struct ull2 { uint64_t x; uint64_t y; }; uint4 counter; uint4 output; uint2 key; unsigned int STATE; __device__ inline void incr_n(unsigned long long n) { unsigned int nlo = (unsigned int)(n); unsigned int nhi = (unsigned int)(n >> 32); counter.x += nlo; if (counter.x < nlo) nhi++; counter.y += nhi; if (nhi <= counter.y) return; if (++counter.z) return; ++counter.w; } __device__ uint4 incr128 (uint4 ctr) { uint4 res; asm ("add.cc.u32 %0, %4, %8;\n\t" "addc.cc.u32 %1, %5, %9;\n\t" "addc.cc.u32 %2, %6, %10;\n\t" "addc.u32 %3, %7, %11;\n\t" : "=r"(res.x), "=r"(res.y), "=r"(res.z), "=r"(res.w) : "r"(ctr.x), "r"(ctr.y), "r"(ctr.z), "r"(ctr.w), "n"(1), "n"(0), "n"(0), "n"(0)); return res; } __device__ inline void incr() { counter = incr128(counter); } __device__ unsigned int mulhilo32(unsigned int a, unsigned int b, unsigned int *result_high) { *result_high = __umulhi(a, b); return a * b; } __device__ uint2 mulhilo32_v2 (unsigned int a, unsigned int b) { uint2 *res; unsigned long long tmp; asm ("mul.wide.u32 %0, %1, %2;\n\t" : "=l"(tmp) : "r"(a), "r"(b)); res = (uint2*)(&tmp); return *res; } __device__ inline uint4 single_round(uint4 ctr, uint2 key) { //unsigned int hi0; //unsigned int hi1; //unsigned int lo0 = mulhilo32(kPhiloxSA, ctr.x, &hi0); //unsigned int lo1 = mulhilo32(kPhiloxSB, ctr.z, &hi1); //uint4 ret = {hi1 ^ ctr.y ^ key.x, lo1, hi0 ^ ctr.w ^ key.y, lo0}; uint2 res0 = mulhilo32_v2(kPhiloxSA, ctr.x); uint2 res1 = mulhilo32_v2(kPhiloxSB, ctr.z); uint4 ret = {res1.y ^ ctr.y ^ key.x, res1.x, res0.y ^ ctr.w ^ key.y, res0.x}; return ret; } static constexpr unsigned long kPhilox10A = 0x9E3779B9; static constexpr unsigned long kPhilox10B = 0xBB67AE85; static constexpr unsigned long kPhiloxSA = 0xD2511F53; static constexpr unsigned long kPhiloxSB = 0xCD9E8D57; }; // Inverse of 2^32. constexpr float M_RAN_INVM32 = 2.3283064e-10f; __device__ __inline__ float4 uniform4(uint4 x) { return make_float4(x.x * M_RAN_INVM32, x.y * M_RAN_INVM32, x.z * M_RAN_INVM32, x.w * M_RAN_INVM32); } inline __device__ void pack_dropout_mask(uint32_t dst[1], const uint16_t src[2]) { asm volatile( \ "{\n" \ " .reg .f16 lo, hi;\n" \ " mov.b16 lo, %1;\n" \ " mov.b16 hi, %2;\n" \ " mov.b32 %0, {lo, hi};\n" \ "}\n" : "=r"(dst[0]) : "h"(src[0]), "h"(src[1])); } namespace fmha { static inline __device__ void swizzle_rows( uint32_t &a, uint32_t &b, uint32_t c, uint32_t d ) { asm volatile( "prmt.b32 %0, %1, %2, 0x6420;\n" : "=r"( a ) : "r"( c ), "r"( d ) ); asm volatile( "prmt.b32 %0, %1, %2, 0x7531;\n" : "=r"( b ) : "r"( c ), "r"( d ) ); } template struct Transposer; template struct Transposer { static constexpr int TILE_S = 128; enum { WARPS_M = 4, WARPS_N = 1, WARPS_K = 1, }; enum { WARPS_4x1x1 = (WARPS_M == 4 && WARPS_N == 1 && WARPS_K == 1), WARPS_4x1x2 = (WARPS_M == 4 && WARPS_N == 1 && WARPS_K == 2), }; enum { BYTES_PER_LDS = 16 }; static inline __device__ void transpose(int tidx, uint32_t smem) { transpose_(tidx, smem, smem); } template static inline __device__ void transpose_(int tidx, uint32_t smem_src, uint32_t smem_dst) { // D=64 and 4 warps. // Per warp we load 32 rows x 16 columns with LDSM.Tx4, 128 rows per CTA. constexpr int S = TILE_S; //The sequence length. constexpr int D = HEAD_DIM; //The head dimension. constexpr int ROWS_PER_LDSM_PER_CTA_WITHOUT_PACKING = 128; // LDSMx4 constexpr int BYTES_PER_ROW = 128; constexpr int ROW_PACKING = BYTES_PER_ROW / (D * BYTES_PER_ELEMENT); // The number of loads in K dimension. constexpr int K = S / ROWS_PER_LDSM_PER_CTA_WITHOUT_PACKING; // The number of loads in the D dimension. // 16 Bytes per Load constexpr int N = D / (16 * WARPS_K); int read_row, read_col; if (WARPS_4x1x1 && N == 8) { // D=128, 1 warp in N read_row = (tidx & 0x7f); read_col = (tidx & 0x07); } else if (WARPS_4x1x1 && N == 4) { // D=64, 1 warp in N read_row = (tidx & 0xe0) / 2 + (tidx & 0x1e) / 2; read_col = (tidx & 0x01) * 4 + (tidx & 0x06) / 2; } else if (WARPS_4x1x1 && N == 2) { // D=32, 1 warp in N read_row = (tidx & 0x60) / 4 + (tidx & 0x1c) / 4; read_col = (tidx & 0x03) * 2; read_col ^= (read_row & 0x01); } else if (WARPS_4x1x2 && N == 4) { // D=128, 2 warps in N read_row = (tidx & 0x7f); read_col = (tidx & 0x07); // For two warpgroups we do two steps in N at once. read_col ^= (tidx & 0x80) / 128; } else if (WARPS_4x1x2 && N == 2) { // D=64, 2 warps in N read_row = (tidx & 0x60) / 2 + (tidx & 0x1e) / 2; read_col = (tidx & 0x01) * 4 + (tidx & 0x06) / 2; // For two warpgroups we do two steps in N at once. read_col ^= (tidx & 0x80) / 128; } else if (WARPS_4x1x2 && N == 1) { // D=32, 2 warps in N read_row = (tidx & 0x60) / 4 + (tidx & 0x1c) / 4; read_col = (tidx & 0x03) * 2; read_col ^= (read_row & 0x01); // For two warpgroups we do two steps in N at once. read_col ^= (tidx & 0x80) / 128; } else { // assert(false); } uint32_t offset = read_row * BYTES_PER_ROW + read_col * 16; constexpr int ROWS_PER_LDSM_PER_CTA = ROWS_PER_LDSM_PER_CTA_WITHOUT_PACKING / ROW_PACKING; // due to row_packing uint32_t tmp[N][K][4]; uint32_t regs[N][K][4]; uint32_t smem_loc = smem_src + offset; int row, col; if (WARPS_4x1x1) { // [(0, 0), (1, 0), (2, 0), (3, 0), (4, 0), (5, 0), (6, 0), (7, 0)] // [(0, 1), (1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (7, 1)] // [(8, 0), (9, 0), (10, 0), (11, 0), (12, 0), (13, 0), (14, 0), (15, 0)] // [(8, 1), (9, 1), (10, 1), (11, 1), (12, 1), (13, 1), (14, 1), (15, 1)] // [(0, 2), (1, 2), (2, 2), (3, 2), (4, 2), (5, 2), (6, 2), (7, 2)] // [(0, 3), (1, 3), (2, 3), (3, 3), (4, 3), (5, 3), (6, 3), (7, 3)] // [(8, 2), (9, 2), (10, 2), (11, 2), (12, 2), (13, 2), (14, 2), (15, 2)] // [(8, 3), (9, 3), (10, 3), (11, 3), (12, 3), (13, 3), (14, 3), (15, 3)] // [(0, 4), (1, 4), (2, 4), (3, 4), (4, 4), (5, 4), (6, 4), (7, 4)] // [(0, 5), (1, 5), (2, 5), (3, 5), (4, 5), (5, 5), (6, 5), (7, 5)] // [(8, 4), (9, 4), (10, 4), (11, 4), (12, 4), (13, 4), (14, 4), (15, 4)] // [(8, 5), (9, 5), (10, 5), (11, 5), (12, 5), (13, 5), (14, 5), (15, 5)] // [(0, 6), (1, 6), (2, 6), (3, 6), (4, 6), (5, 6), (6, 6), (7, 6)] // [(0, 7), (1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7), (7, 7)] // [(8, 6), (9, 6), (10, 6), (11, 6), (12, 6), (13, 6), (14, 6), (15, 6)] // [(8, 7), (9, 7), (10, 7), (11, 7), (12, 7), (13, 7), (14, 7), (15, 7)] row = (tidx & 0x10) / 2 + (tidx & 0x07); col = (tidx & 0x60) / 16 + (tidx & 0x08) / 8; } else if (WARPS_4x1x2) { // Same as above, with second warp group writing next 16 rows. row = (tidx & 0x80) / 8 + (tidx & 0x10) / 2 + (tidx & 0x07); col = (tidx & 0x60) / 16 + (tidx & 0x08) / 8; } else { //assert(false); } col ^= (row & 0x07); int dst = smem_dst + row * BYTES_PER_ROW + col * BYTES_PER_LDS; #pragma unroll 1 for (int n_step = 0; n_step < N; n_step += UNROLL_N) { #pragma unroll for (int n_inner = 0; n_inner < UNROLL_N; n_inner++) { int ni = n_step + n_inner; #pragma unroll for (int ki = 0; ki < K; ki++) { ldsmt_x4(tmp[ni][ki], smem_loc + ki * ROWS_PER_LDSM_PER_CTA * BYTES_PER_ROW); } if (WARPS_4x1x1 && N == 4 ) { // D=64, 1 warp in N smem_loc ^= (ni % 2 == 0 ? 1 : 3) * 16; } else if (WARPS_4x1x1 && N == 2) { // D=32, 1 warp in N smem_loc ^= 16; } else if (WARPS_4x1x2 && N == 2) { // D=64, 2 warps in N smem_loc ^= 32; } else if (WARPS_4x1x2 && N == 4) { // D=128, 2 warps in N smem_loc ^= (ni % 2 == 0 ? 1 : 3) * 32; } else if (WARPS_4x1x1 && N == 8) { // D=128, 1 warp in N smem_loc ^= ((ni % 4 == 3) ? 7 : (ni % 2 == 1 ? 3 : 1)) * 16; } } #pragma unroll for (int n_inner = 0; n_inner < UNROLL_N; n_inner++) { int ni = n_step + n_inner; #pragma unroll for (int ki = 0; ki < K; ki++) { fmha::swizzle_rows(regs[ni][ki][0], regs[ni][ki][2], tmp[ni][ki][0], tmp[ni][ki][1]); //PRMT 0+1 fmha::swizzle_rows(regs[ni][ki][1], regs[ni][ki][3], tmp[ni][ki][2], tmp[ni][ki][3]); //PRMT 2+3 } } // After LDSM.Tx4 registers hold 2x2 elts: // [00, 01] // [10, 11] // With row offsets // x: + 0 // y: + 8 // z: +16 (g) // w: +24 (o) // // After PRMT 0, the : // [00, 01] [80, 81] => x: [00, 10, 80, 90], i.e. col 0 // [10, 11] [90, 91] => z: [01, 11, 81, 91], i.e. col 1 // // [g0, g1] [o0, o1] => y: [g0, h0, o0, p0], i.e. col 0 // [h0, h1] [p0, p1] => w: [g1, h1, o1, p1], i.e. col 1 // // Therefore, when looking at the transpose, quad q holds cols 2 * q + [0, 1], i.e. // - quad 0 holds cols 0, 1 // - quad 1 holds cols 2, 3 // - etc. // // This fits with the accumulator layout, since N strides in steps of 8 per thread. #pragma unroll for (int n_inner = 0; n_inner < UNROLL_N; n_inner++) { int ni = n_step + n_inner; #pragma unroll for (int ki = 0; ki < K; ki++) { stsm_x4(dst + ki * BYTES_PER_ROW * D, regs[ni][ki]); } if (WARPS_4x1x1) { // D=64, 1 warp in N. dst += 16 * BYTES_PER_ROW; } else if (WARPS_4x1x2) { // D=64, 2 warps in N. dst += 32 * BYTES_PER_ROW; } } } } }; } // namespace fmha namespace fmha { template struct Transposer { static constexpr int TILE_S = 64; enum { WARPS_M = 4, WARPS_N = 1, WARPS_K = 1, }; enum { WARPS_4x1x1 = (WARPS_M == 4 && WARPS_N == 1 && WARPS_K == 1), WARPS_4x1x2 = (WARPS_M == 4 && WARPS_N == 1 && WARPS_K == 2), }; enum { BYTES_PER_LDS = 16 }; static inline __device__ void transpose(int tidx, uint32_t smem) { transpose_(tidx, smem, smem); } static inline __device__ void transpose_(int tidx, uint32_t smem_src, uint32_t smem_dst, bool debug = false) { // D=64 and 4 warps. // Per warp we load 32 rows x 16 columns with LDSM.Tx4, 128 rows per CTA. constexpr int S = TILE_S; //The sequence length. constexpr int D = HEAD_DIM; //The head dimension. // Two warps in S dim. constexpr int ROWS_PER_LDSM_PER_CTA_WITHOUT_PACKING = 64; // LDSMx4 constexpr int BYTES_PER_ROW = 128; constexpr int ROW_PACKING = BYTES_PER_ROW / (D * BYTES_PER_ELEMENT); // The number of loads in K dimension. constexpr int K = S / ROWS_PER_LDSM_PER_CTA_WITHOUT_PACKING; // The number of loads in the D dimension. Use two warps in D dim (32 bytes each Load) constexpr int N = D / 32; // warp 2 x 2 layout int read_row, read_col; if( WARPS_4x1x1 && N == 1 ) { // D=32, 2 warps in N read_row = (tidx & 0x20) / 4 + (tidx & 0x1c) / 4; read_col = (tidx & 0x03) * 2; read_col ^= (read_row & 0x01); read_col ^= ((tidx & 0x40) / 64); } else if( WARPS_4x1x1 && N == 2 ) { // D=64, 2 warps in N // tidx = np.arange(128) // list(zip((tidx & 0xe0) // 2 + (tidx & 0x1e) // 2, (tidx & 0x01) * 4 + (tidx & 0x06) // 2)) // [(0, 0), (0, 4), (1, 1), (1, 5), (2, 2), (2, 6), (3, 3), (3, 7), (4, 0), (4, 4), (5, 1), (5, 5), (6, 2), (6, 6), (7, 3), (7, 7), (8, 0), (8, 4), (9, 1), (9, 5), (10, 2), (10, 6), (11, 3), (11, 7), (12, 0), (12, 4), (13, 1), (13, 5), (14, 2), (14, 6), (15, 3), (15, 7), (16, 0), (16, 4), (17, 1), (17, 5), (18, 2), (18, 6), (19, 3), (19, 7), (20, 0), (20, 4), (21, 1), (21, 5), (22, 2), (22, 6), (23, 3), (23, 7), (24, 0), (24, 4), (25, 1), (25, 5), (26, 2), (26, 6), (27, 3), (27, 7), (28, 0), (28, 4), (29, 1), (29, 5), (30, 2), (30, 6), (31, 3), (31, 7), (32, 0), (32, 4), (33, 1), (33, 5), (34, 2), (34, 6), (35, 3), (35, 7), (36, 0), (36, 4), (37, 1), (37, 5), (38, 2), (38, 6), (39, 3), (39, 7), (40, 0), (40, 4), (41, 1), (41, 5), (42, 2), (42, 6), (43, 3), (43, 7), (44, 0), (44, 4), (45, 1), (45, 5), (46, 2), (46, 6), (47, 3), (47, 7), (48, 0), (48, 4), (49, 1), (49, 5), (50, 2), (50, 6), (51, 3), (51, 7), (52, 0), (52, 4), (53, 1), (53, 5), (54, 2), (54, 6), (55, 3), (55, 7), (56, 0), (56, 4), (57, 1), (57, 5), (58, 2), (58, 6), (59, 3), (59, 7), (60, 0), (60, 4), (61, 1), (61, 5), (62, 2), (62, 6), (63, 3), (63, 7)] read_row = (tidx & 0x20) / 2 + (tidx & 0x1e) / 2; read_col = (tidx & 0x01) * 4 + (tidx & 0x06) / 2; read_col ^= ((tidx & 0x40) / 64); } else if ( WARPS_4x1x1 && N == 4 ) { // D=128, 2 warps in N read_row = (tidx & 0x3f); // tidx % 64 read_col = (tidx & 0x07); // tidx % 8 read_col ^= ((tidx & 0x40) / 64); // ^= (tidx / 64) } else { // assert(false); } uint32_t offset = read_row * BYTES_PER_ROW + read_col * BYTES_PER_LDS; constexpr int ROWS_PER_LDSM_PER_CTA = ROWS_PER_LDSM_PER_CTA_WITHOUT_PACKING / ROW_PACKING; // due to row_packing // static_assert(ROWS_PER_LDSM_PER_CTA == 32); uint32_t tmp[N][K][4]; uint32_t smem_loc = smem_src + offset; #pragma unroll for( int ni = 0; ni < N; ni++ ) { #pragma unroll for( int ki = 0; ki < K; ki++ ) { ldsmt_x4(tmp[ni][ki], smem_loc + ki * ROWS_PER_LDSM_PER_CTA * BYTES_PER_ROW); } if( WARPS_4x1x1 && N == 2 ) { // D=64, 2 warps in N smem_loc ^= 32; } else if ( WARPS_4x1x1 && N == 4 ) { // D=128, 2 warps in N smem_loc ^= (ni % 2 == 1 ? 3 * 32 : 32); } else if ( N != 1 ) { // assert(false); } } uint32_t regs[N][K][4]; #pragma unroll for( int ni = 0; ni < N; ni++ ) { #pragma unroll for( int ki = 0; ki < K; ki++ ) { fmha::swizzle_rows(regs[ni][ki][0], regs[ni][ki][2], tmp[ni][ki][0], tmp[ni][ki][1]); //PRMT 0+1 fmha::swizzle_rows(regs[ni][ki][1], regs[ni][ki][3], tmp[ni][ki][2], tmp[ni][ki][3]); //PRMT 2+3 } } // After LDSM.Tx4 registers hold 2x2 elts: // [00, 01] // [10, 11] // With row offsets // x: + 0 // y: + 8 // z: +16 (g) // w: +24 (o) // // After PRMT 0, the : // [00, 01] [80, 81] => x: [00, 10, 80, 90], i.e. col 0 // [10, 11] [90, 91] => z: [01, 11, 81, 91], i.e. col 1 // // [g0, g1] [o0, o1] => y: [g0, h0, o0, p0], i.e. col 0 // [h0, h1] [p0, p1] => w: [g1, h1, o1, p1], i.e. col 1 // // Therefore, when looking at the transpose, quad q holds cols 2 * q + [0, 1], i.e. // - quad 0 holds cols 0, 1 // - quad 1 holds cols 2, 3 // - etc. // // This fits with the accumulator layout, since N strides in steps of 8 per thread. // constexpr int ROWS_PER_XOR_PATTERN = 4; // constexpr int ROWS_PER_XOR_PATTERN = fmha::Rows_per_xor_pattern_ampere_b::VALUE; // 2 x 2 layout int row, col; if( WARPS_4x1x1 ) { // NOTE ANT: SWIZZLE_64B layout // [(0, 0), (0, 4), (1, 1), (1, 5), (2, 2), (2, 6), (3, 3), (3, 7), // (0, 1), (0, 5), (1, 0), (1, 4), (2, 3), (2, 7), (3, 2), (3, 6), // (4, 0), (4, 4), (5, 1), (5, 5), (6, 2), (6, 6), (7, 3), (7, 7), // (4, 1), (4, 5), (5, 0), (5, 4), (6, 3), (6, 7), (7, 2), (7, 6), // (0, 2), (0, 6), (1, 3), (1, 7), (2, 0), (2, 4), (3, 1), (3, 5), // (0, 3), (0, 7), (1, 2), (1, 6), (2, 1), (2, 5), (3, 0), (3, 4), // (4, 2), (4, 6), (5, 3), (5, 7), (6, 0), (6, 4), (7, 1), (7, 5), // (4, 3), (4, 7), (5, 2), (5, 6), (6, 1), (6, 5), (7, 0), (7, 4), // (8, 0), (8, 4), (9, 1), (9, 5), (10, 2), (10, 6), (11, 3), (11, 7), // (8, 1), (8, 5), (9, 0), (9, 4), (10, 3), (10, 7), (11, 2), (11, 6), // (12, 0), (12, 4), (13, 1), (13, 5), (14, 2), (14, 6), (15, 3), (15, 7), // (12, 1), (12, 5), (13, 0), (13, 4), (14, 3), (14, 7), (15, 2), (15, 6), // (8, 2), (8, 6), (9, 3), (9, 7), (10, 0), (10, 4), (11, 1), (11, 5), // (8, 3), (8, 7), (9, 2), (9, 6), (10, 1), (10, 5), (11, 0), (11, 4), // (12, 2), (12, 6), (13, 3), (13, 7), (14, 0), (14, 4), (15, 1), (15, 5), // (12, 3), (12, 7), (13, 2), (13, 6), (14, 1), (14, 5), (15, 0), (15, 4)] row = (tidx & 0x40) / 4 + (tidx & 0x10) / 2 + (tidx & 0x07); col = (tidx & 0x20) / 16 + (tidx & 0x08) / 8; col = col + (row % 2) * 4; row = row / 2; col = col ^ (row % 4); } int dst = smem_dst + row * BYTES_PER_ROW + col * BYTES_PER_LDS; #pragma unroll for( int ni = 0; ni < N; ni++ ) { #pragma unroll for( int ki = 0; ki < K; ki++ ) { // if (debug) regs[ni][ki] = {0x3c003c00, 0x3c003c00, 0x3c003c00, 0x3c003c00}; stsm_x4(dst + ki * BYTES_PER_ROW * D/2, regs[ni][ki]); } if( WARPS_4x1x1 ) { // D=64, 1 warp in N. dst += 16 * BYTES_PER_ROW; } } } }; } // namespace fmha namespace fmha { inline __device__ int32_t __nv_ptx_builtin_ocg_vimax3_s32(int32_t srcA, int32_t srcB, int32_t srcC) { int32_t tmp; asm volatile("max.s16x2 %0, %1, %2;\n" : "=r"(tmp) : "r"(srcA), "r"(srcB)); asm volatile("max.s16x2 %0, %0, %1;\n" : "+r"(tmp) : "r"(tmp), "r"(srcC)); return tmp; } static inline __device__ float max3Pos_(const float a, const float b, const float c) { // VALUE MUST BE POSITIVE! USED ONLY FOR INTERNAL AMAX REDUCTION. float res; int32_t a_ = reinterpret_cast(a); int32_t b_ = reinterpret_cast(b); int32_t c_ = reinterpret_cast(c); int32_t tmp = __nv_ptx_builtin_ocg_vimax3_s32(a_, b_, c_); res = reinterpret_cast(tmp); return res; } } // namespace fmha // inspired from the CUTLASS object with the same name from /home/gautamj/work/blackwell_flash_attention/kernel_store/cutlass/include/cutlass/pipeline/sm90_pipeline.hpp // Circular Buffer Index + Associated Phase // Assumes only one operation possible - i.e., ++ template struct PipelineState { public: static constexpr int Stages = Stages_; inline __device__ PipelineState(int index, int state) : state_(state), index_(index) {} inline __device__ int phase() const { return state_; } inline __device__ int index() const { return index_; } inline __device__ void operator++() { if (Stages > 1) { ++index_; if (index_ == Stages) { index_ = 0; state_ ^= 1; } } else { state_ ^= 1; } } int state_; int index_; }; ///////////////////////////////// /// TMEM STTM related instructions ///////////////////////////////// // 32 data path lanes, 32-bit pattern, repeated 128 times inline __device__ void sttm_32dp32bit_x128(uint32_t dst, r32 src[128]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x128.b32" "[%0]," "{%1, %2, %3, %4," "%5, %6, %7, %8," "%9, %10, %11, %12," "%13, %14, %15, %16," "%17, %18, %19, %20," "%21, %22, %23, %24," "%25, %26, %27, %28," "%29, %30, %31, %32," "%33, %34, %35, %36," "%37, %38, %39, %40," "%41, %42, %43, %44," "%45, %46, %47, %48," "%49, %50, %51, %52," "%53, %54, %55, %56," "%57, %58, %59, %60," "%61, %62, %63, %64," "%65, %66, %67, %68," "%69, %70, %71, %72," "%73, %74, %75, %76," "%77, %78, %79, %80," "%81, %82, %83, %84," "%85, %86, %87, %88," "%89, %90, %91, %92," "%93, %94, %95, %96," "%97, %98, %99, %100," "%101, %102, %103, %104," "%105, %106, %107, %108," "%109, %110, %111, %112," "%113, %114, %115, %116," "%117, %118, %119, %120," "%121, %122, %123, %124," "%125, %126, %127, %128};\n" : : "r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]), "r"(src[4]), "r"(src[5]), "r"(src[6]), "r"(src[7]), "r"(src[8]), "r"(src[9]), "r"(src[10]), "r"(src[11]), "r"(src[12]), "r"(src[13]), "r"(src[14]), "r"(src[15]), "r"(src[16]), "r"(src[17]), "r"(src[18]), "r"(src[19]), "r"(src[20]), "r"(src[21]), "r"(src[22]), "r"(src[23]), "r"(src[24]), "r"(src[25]), "r"(src[26]), "r"(src[27]), "r"(src[28]), "r"(src[29]), "r"(src[30]), "r"(src[31]), "r"(src[32]), "r"(src[33]), "r"(src[34]), "r"(src[35]), "r"(src[36]), "r"(src[37]), "r"(src[38]), "r"(src[39]), "r"(src[40]), "r"(src[41]), "r"(src[42]), "r"(src[43]), "r"(src[44]), "r"(src[45]), "r"(src[46]), "r"(src[47]), "r"(src[48]), "r"(src[49]), "r"(src[50]), "r"(src[51]), "r"(src[52]), "r"(src[53]), "r"(src[54]), "r"(src[55]), "r"(src[56]), "r"(src[57]), "r"(src[58]), "r"(src[59]), "r"(src[60]), "r"(src[61]), "r"(src[62]), "r"(src[63]), "r"(src[64]), "r"(src[65]), "r"(src[66]), "r"(src[67]), "r"(src[68]), "r"(src[69]), "r"(src[70]), "r"(src[71]), "r"(src[72]), "r"(src[73]), "r"(src[74]), "r"(src[75]), "r"(src[76]), "r"(src[77]), "r"(src[78]), "r"(src[79]), "r"(src[80]), "r"(src[81]), "r"(src[82]), "r"(src[83]), "r"(src[84]), "r"(src[85]), "r"(src[86]), "r"(src[87]), "r"(src[88]), "r"(src[89]), "r"(src[90]), "r"(src[91]), "r"(src[92]), "r"(src[93]), "r"(src[94]), "r"(src[95]), "r"(src[96]), "r"(src[97]), "r"(src[98]), "r"(src[99]), "r"(src[100]), "r"(src[101]), "r"(src[102]), "r"(src[103]), "r"(src[104]), "r"(src[105]), "r"(src[106]), "r"(src[107]), "r"(src[108]), "r"(src[109]), "r"(src[110]), "r"(src[111]), "r"(src[112]), "r"(src[113]), "r"(src[114]), "r"(src[115]), "r"(src[116]), "r"(src[117]), "r"(src[118]), "r"(src[119]), "r"(src[120]), "r"(src[121]), "r"(src[122]), "r"(src[123]), "r"(src[124]), "r"(src[125]), "r"(src[126]), "r"(src[127]) ); } // 32 data path lanes, 32-bit pattern, repeated 64 times inline __device__ void sttm_32dp32bit_x64(uint32_t dst, r32 src[64]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x64.b32" "[%0]," "{%1, %2, %3, %4," "%5, %6, %7, %8," "%9, %10, %11, %12," "%13, %14, %15, %16," "%17, %18, %19, %20," "%21, %22, %23, %24," "%25, %26, %27, %28," "%29, %30, %31, %32," "%33, %34, %35, %36," "%37, %38, %39, %40," "%41, %42, %43, %44," "%45, %46, %47, %48," "%49, %50, %51, %52," "%53, %54, %55, %56," "%57, %58, %59, %60," "%61, %62, %63, %64};\n" : : "r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]), "r"(src[4]), "r"(src[5]), "r"(src[6]), "r"(src[7]), "r"(src[8]), "r"(src[9]), "r"(src[10]), "r"(src[11]), "r"(src[12]), "r"(src[13]), "r"(src[14]), "r"(src[15]), "r"(src[16]), "r"(src[17]), "r"(src[18]), "r"(src[19]), "r"(src[20]), "r"(src[21]), "r"(src[22]), "r"(src[23]), "r"(src[24]), "r"(src[25]), "r"(src[26]), "r"(src[27]), "r"(src[28]), "r"(src[29]), "r"(src[30]), "r"(src[31]), "r"(src[32]), "r"(src[33]), "r"(src[34]), "r"(src[35]), "r"(src[36]), "r"(src[37]), "r"(src[38]), "r"(src[39]), "r"(src[40]), "r"(src[41]), "r"(src[42]), "r"(src[43]), "r"(src[44]), "r"(src[45]), "r"(src[46]), "r"(src[47]), "r"(src[48]), "r"(src[49]), "r"(src[50]), "r"(src[51]), "r"(src[52]), "r"(src[53]), "r"(src[54]), "r"(src[55]), "r"(src[56]), "r"(src[57]), "r"(src[58]), "r"(src[59]), "r"(src[60]), "r"(src[61]), "r"(src[62]), "r"(src[63]) ); } // 32 data path lanes, 32-bit pattern, repeated 32 times inline __device__ void sttm_32dp32bit_x32(uint32_t dst, r32 src[32]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x32.b32" "[%0]," "{%1, %2, %3, %4," "%5, %6, %7, %8," "%9, %10, %11, %12," "%13, %14, %15, %16," "%17, %18, %19, %20," "%21, %22, %23, %24," "%25, %26, %27, %28," "%29, %30, %31, %32};\n" : : "r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]), "r"(src[4]), "r"(src[5]), "r"(src[6]), "r"(src[7]), "r"(src[8]), "r"(src[9]), "r"(src[10]), "r"(src[11]), "r"(src[12]), "r"(src[13]), "r"(src[14]), "r"(src[15]), "r"(src[16]), "r"(src[17]), "r"(src[18]), "r"(src[19]), "r"(src[20]), "r"(src[21]), "r"(src[22]), "r"(src[23]), "r"(src[24]), "r"(src[25]), "r"(src[26]), "r"(src[27]), "r"(src[28]), "r"(src[29]), "r"(src[30]), "r"(src[31]) ); } // 32 data path lanes, 32-bit pattern, repeated 16 times inline __device__ void sttm_32dp32bit_x16(uint32_t dst, r32 src[16]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x16.b32" "[%0]," "{%1, %2, %3, %4," "%5, %6, %7, %8," "%9, %10, %11, %12," "%13, %14, %15, %16};\n" : : "r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]), "r"(src[4]), "r"(src[5]), "r"(src[6]), "r"(src[7]), "r"(src[8]), "r"(src[9]), "r"(src[10]), "r"(src[11]), "r"(src[12]), "r"(src[13]), "r"(src[14]), "r"(src[15]) ); } // 32 data path lanes, 32-bit pattern, repeated 8 times inline __device__ void sttm_32dp32bit_x8(uint32_t dst, r32 src[8]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x8.b32" "[%0]," "{%1, %2, %3, %4," "%5, %6, %7, %8};\n" : : "r"(dst), "r"(src[0]), "r"(src[1]), "r"(src[2]), "r"(src[3]), "r"(src[4]), "r"(src[5]), "r"(src[6]), "r"(src[7]) ); } // 32 data path lanes, 32-bit pattern, repeated 2 times inline __device__ void sttm_32dp32bit_x2(uint32_t dst, r32 src[2]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x2.b32" "[%0]," "{%1, %2};\n" : : "r"(dst), "r"(src[0]), "r"(src[1]) ); } // 32 data path lanes, 32-bit pattern, repeated 1 times inline __device__ void sttm_32dp32bit_x1(uint32_t dst, r32 src[1]) { asm volatile ("tcgen05.st.sync.aligned.32x32b.x1.b32" "[%0]," "{%1};\n" : : "r"(dst), "r"(src[0])); } inline __device__ void utccp_4x32dp128bit_1cta(uint32_t const& dst, uint64_t const& src) { asm volatile ("tcgen05.cp.cta_group::1.32x128b.warpx4 [%0], %1;" : : "r"(dst) "l"(src)); } inline __device__ void utccp_4x32dp128bit_2cta(uint32_t const& dst, uint64_t const& src) { asm volatile ("tcgen05.cp.cta_group::2.32x128b.warpx4 [%0], %1;" : : "r"(dst) "l"(src)); } ///////////////////////////////// /// TMEM LDTM related instructions ///////////////////////////////// // 32 data path lanes, 32-bit pattern, repeated 128 times inline __device__ void ldtm_32dp32bit_x128(r32 dst[128], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x128.b32" "{%0, %1, %2, %3," "%4, %5, %6, %7," "%8, %9, %10, %11," "%12, %13, %14, %15," "%16, %17, %18, %19," "%20, %21, %22, %23," "%24, %25, %26, %27," "%28, %29, %30, %31," "%32, %33, %34, %35," "%36, %37, %38, %39," "%40, %41, %42, %43," "%44, %45, %46, %47," "%48, %49, %50, %51," "%52, %53, %54, %55," "%56, %57, %58, %59," "%60, %61, %62, %63," "%64, %65, %66, %67," "%68, %69, %70, %71," "%72, %73, %74, %75," "%76, %77, %78, %79," "%80, %81, %82, %83," "%84, %85, %86, %87," "%88, %89, %90, %91," "%92, %93, %94, %95," "%96, %97, %98, %99," "%100, %101, %102, %103," "%104, %105, %106, %107," "%108, %109, %110, %111," "%112, %113, %114, %115," "%116, %117, %118, %119," "%120, %121, %122, %123," "%124, %125, %126, %127}," "[%128];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]), "=r"(dst[4]), "=r"(dst[5]), "=r"(dst[6]), "=r"(dst[7]), "=r"(dst[8]), "=r"(dst[9]), "=r"(dst[10]), "=r"(dst[11]), "=r"(dst[12]), "=r"(dst[13]), "=r"(dst[14]), "=r"(dst[15]), "=r"(dst[16]), "=r"(dst[17]), "=r"(dst[18]), "=r"(dst[19]), "=r"(dst[20]), "=r"(dst[21]), "=r"(dst[22]), "=r"(dst[23]), "=r"(dst[24]), "=r"(dst[25]), "=r"(dst[26]), "=r"(dst[27]), "=r"(dst[28]), "=r"(dst[29]), "=r"(dst[30]), "=r"(dst[31]), "=r"(dst[32]), "=r"(dst[33]), "=r"(dst[34]), "=r"(dst[35]), "=r"(dst[36]), "=r"(dst[37]), "=r"(dst[38]), "=r"(dst[39]), "=r"(dst[40]), "=r"(dst[41]), "=r"(dst[42]), "=r"(dst[43]), "=r"(dst[44]), "=r"(dst[45]), "=r"(dst[46]), "=r"(dst[47]), "=r"(dst[48]), "=r"(dst[49]), "=r"(dst[50]), "=r"(dst[51]), "=r"(dst[52]), "=r"(dst[53]), "=r"(dst[54]), "=r"(dst[55]), "=r"(dst[56]), "=r"(dst[57]), "=r"(dst[58]), "=r"(dst[59]), "=r"(dst[60]), "=r"(dst[61]), "=r"(dst[62]), "=r"(dst[63]), "=r"(dst[64]), "=r"(dst[65]), "=r"(dst[66]), "=r"(dst[67]), "=r"(dst[68]), "=r"(dst[69]), "=r"(dst[70]), "=r"(dst[71]), "=r"(dst[72]), "=r"(dst[73]), "=r"(dst[74]), "=r"(dst[75]), "=r"(dst[76]), "=r"(dst[77]), "=r"(dst[78]), "=r"(dst[79]), "=r"(dst[80]), "=r"(dst[81]), "=r"(dst[82]), "=r"(dst[83]), "=r"(dst[84]), "=r"(dst[85]), "=r"(dst[86]), "=r"(dst[87]), "=r"(dst[88]), "=r"(dst[89]), "=r"(dst[90]), "=r"(dst[91]), "=r"(dst[92]), "=r"(dst[93]), "=r"(dst[94]), "=r"(dst[95]), "=r"(dst[96]), "=r"(dst[97]), "=r"(dst[98]), "=r"(dst[99]), "=r"(dst[100]), "=r"(dst[101]), "=r"(dst[102]), "=r"(dst[103]), "=r"(dst[104]), "=r"(dst[105]), "=r"(dst[106]), "=r"(dst[107]), "=r"(dst[108]), "=r"(dst[109]), "=r"(dst[110]), "=r"(dst[111]), "=r"(dst[112]), "=r"(dst[113]), "=r"(dst[114]), "=r"(dst[115]), "=r"(dst[116]), "=r"(dst[117]), "=r"(dst[118]), "=r"(dst[119]), "=r"(dst[120]), "=r"(dst[121]), "=r"(dst[122]), "=r"(dst[123]), "=r"(dst[124]), "=r"(dst[125]), "=r"(dst[126]), "=r"(dst[127]) : "r"(src_addr)); } // 32 data path lanes, 32-bit pattern, repeated 64 times inline __device__ void ldtm_32dp32bit_x64(r32 dst[64], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x64.b32" "{%0, %1, %2, %3," "%4, %5, %6, %7," "%8, %9, %10, %11," "%12, %13, %14, %15," "%16, %17, %18, %19," "%20, %21, %22, %23," "%24, %25, %26, %27," "%28, %29, %30, %31," "%32, %33, %34, %35," "%36, %37, %38, %39," "%40, %41, %42, %43," "%44, %45, %46, %47," "%48, %49, %50, %51," "%52, %53, %54, %55," "%56, %57, %58, %59," "%60, %61, %62, %63}," "[%64];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]), "=r"(dst[4]), "=r"(dst[5]), "=r"(dst[6]), "=r"(dst[7]), "=r"(dst[8]), "=r"(dst[9]), "=r"(dst[10]), "=r"(dst[11]), "=r"(dst[12]), "=r"(dst[13]), "=r"(dst[14]), "=r"(dst[15]), "=r"(dst[16]), "=r"(dst[17]), "=r"(dst[18]), "=r"(dst[19]), "=r"(dst[20]), "=r"(dst[21]), "=r"(dst[22]), "=r"(dst[23]), "=r"(dst[24]), "=r"(dst[25]), "=r"(dst[26]), "=r"(dst[27]), "=r"(dst[28]), "=r"(dst[29]), "=r"(dst[30]), "=r"(dst[31]), "=r"(dst[32]), "=r"(dst[33]), "=r"(dst[34]), "=r"(dst[35]), "=r"(dst[36]), "=r"(dst[37]), "=r"(dst[38]), "=r"(dst[39]), "=r"(dst[40]), "=r"(dst[41]), "=r"(dst[42]), "=r"(dst[43]), "=r"(dst[44]), "=r"(dst[45]), "=r"(dst[46]), "=r"(dst[47]), "=r"(dst[48]), "=r"(dst[49]), "=r"(dst[50]), "=r"(dst[51]), "=r"(dst[52]), "=r"(dst[53]), "=r"(dst[54]), "=r"(dst[55]), "=r"(dst[56]), "=r"(dst[57]), "=r"(dst[58]), "=r"(dst[59]), "=r"(dst[60]), "=r"(dst[61]), "=r"(dst[62]), "=r"(dst[63]) : "r"(src_addr)); } // 32 data path lanes, 32-bit pattern, repeated 32 times inline __device__ void ldtm_32dp32bit_x32(r32 dst[32], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x32.b32" "{%0, %1, %2, %3," "%4, %5, %6, %7," "%8, %9, %10, %11," "%12, %13, %14, %15," "%16, %17, %18, %19," "%20, %21, %22, %23," "%24, %25, %26, %27," "%28, %29, %30, %31}," "[%32];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]), "=r"(dst[4]), "=r"(dst[5]), "=r"(dst[6]), "=r"(dst[7]), "=r"(dst[8]), "=r"(dst[9]), "=r"(dst[10]), "=r"(dst[11]), "=r"(dst[12]), "=r"(dst[13]), "=r"(dst[14]), "=r"(dst[15]), "=r"(dst[16]), "=r"(dst[17]), "=r"(dst[18]), "=r"(dst[19]), "=r"(dst[20]), "=r"(dst[21]), "=r"(dst[22]), "=r"(dst[23]), "=r"(dst[24]), "=r"(dst[25]), "=r"(dst[26]), "=r"(dst[27]), "=r"(dst[28]), "=r"(dst[29]), "=r"(dst[30]), "=r"(dst[31]) : "r"(src_addr)); } // 32 data path lanes, 32-bit pattern, repeated 16 times inline __device__ void ldtm_32dp32bit_x16(r32 dst[16], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x16.b32" "{%0, %1, %2, %3," "%4, %5, %6, %7," "%8, %9, %10, %11," "%12, %13, %14, %15}," "[%16];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]), "=r"(dst[4]), "=r"(dst[5]), "=r"(dst[6]), "=r"(dst[7]), "=r"(dst[8]), "=r"(dst[9]), "=r"(dst[10]), "=r"(dst[11]), "=r"(dst[12]), "=r"(dst[13]), "=r"(dst[14]), "=r"(dst[15]) : "r"(src_addr)); } // 32 data path lanes, 32-bit pattern, repeated 8 times inline __device__ void ldtm_32dp32bit_x8(r32 dst[8], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x8.b32" "{%0, %1, %2, %3," "%4, %5, %6, %7}," "[%8];\n" : "=r"(dst[0]), "=r"(dst[1]), "=r"(dst[2]), "=r"(dst[3]), "=r"(dst[4]), "=r"(dst[5]), "=r"(dst[6]), "=r"(dst[7]) : "r"(src_addr)); } // 32 data path lanes, 32-bit pattern, repeated 2 times inline __device__ void ldtm_32dp32bit_x2(r32 dst[2], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x2.b32" "{%0, %1}," "[%2];\n" : "=r"(dst[0]), "=r"(dst[1]) : "r"(src_addr)); } // 32 data path lanes, 32-bit pattern, repeated 1 times inline __device__ void ldtm_32dp32bit_x1(r32 dst[1], uint32_t src_addr) { asm volatile ("tcgen05.ld.sync.aligned.32x32b.x1.b32" "{%0}," "[%1];\n" : "=r"(dst[0]) : "r"(src_addr)); } template inline __device__ constexpr uint64_t build_utcmma_instruction_desc() { return (static_cast(0) | (MAX_SHIFT_FOR_WS << 30) | ((UTCMMA_M >> 5) << 25) | ((UTCMMA_N >> 3) << 17) | (B_TRANSPOSE << 16) | (A_TRANSPOSE << 15) | (B_NEGATE << 14) | (A_NEGATE << 13) | (SRC_B_TYPE << 10) | (SRC_A_TYPE << 7) | (SPARSE_METADATA_FORMAT << 6) | (ACC_TYPE << 4) | (SATURATE_ENABLED << 3) | (SPARSE_ENABLED << 2) | (SPARSE_METADATA_ID2 << 0)) << 32; } template inline __device__ constexpr uint64_t build_block_scale_utcmma_instruction_desc() { return (static_cast(0) | (SFA_ID << 29) | ((UTCMMA_M >> 5) << 25) | (SF_FORMAT << 23) | ((UTCMMA_N >> 3) << 17) | (B_TRANSPOSE << 16) | (A_TRANSPOSE << 15) | (B_NEGATE << 14) | (A_NEGATE << 13) | (SRC_B_TYPE << 10) | (SRC_A_TYPE << 7) | (SPARSE_METADATA_FORMAT << 6) | (SFB_ID << 4) | (SPARSE_ENABLED << 2)) << 32; } class Smem_utcmma_descriptor { public: inline __device__ Smem_utcmma_descriptor(uint64_t SWIZZLE_MODE, uint64_t BASE_OFFSET, uint64_t DESC_VERSION, uint64_t BYTES_PER_LEADING_DIM, uint64_t BYTES_PER_STRIDE_DIM) { // ------------------------------------ // Setup smem descriptor for operand A: // ------------------------------------ // Note 1: SWIZZLE_NONE = 0, SWIZZLE_128B = 2, SWIZZLE_64B = 4, SWIZZLE_32B = 6, SWIZZLE_128B_ATOM32B = 1, N/A = 3, N/A = 5, N/A = 7 const uint64_t SWIZZLE_MODE_IN_BIT_LOCATION = SWIZZLE_MODE << 61; // bits: 63-61 // Note 2: Base offset. Valid only for matrix descriptor 1, 2 or 3, 4 const uint64_t BASE_OFFSET_IN_BIT_LOCATION = BASE_OFFSET << 49; // bits 51-49 // Note 3: Descriptor version, needs to be set to 1. ??? const uint64_t DESC_VERSION_IN_BIT_LOCATION = DESC_VERSION << 46; // bits 48-46 // Note 4: Stride dimension byte offset, 16 byte aligned, 4 LSBs not included const uint64_t STRIDE_DIM_BYTE_OFFSET = BYTES_PER_STRIDE_DIM >> 4; const uint64_t STRIDE_DIM_BYTE_OFFSET_IN_BIT_LOCATION = STRIDE_DIM_BYTE_OFFSET << 32; // bits 45-32 // Note 5: Leading dimension byte offset, 16 byte aligned, 4 LSBs not included const uint64_t LEADING_DIM_BYTE_OFFSET = BYTES_PER_LEADING_DIM >> 4; const uint64_t LEADING_DIM_BYTE_OFFSET_IN_BIT_LOCATION = LEADING_DIM_BYTE_OFFSET << 16; // bits 29-16 desc = (SWIZZLE_MODE_IN_BIT_LOCATION | BASE_OFFSET_IN_BIT_LOCATION | DESC_VERSION_IN_BIT_LOCATION | STRIDE_DIM_BYTE_OFFSET_IN_BIT_LOCATION | LEADING_DIM_BYTE_OFFSET_IN_BIT_LOCATION); } template inline __device__ void set_smem(uint32_t smem) { int2 &tmp = reinterpret_cast(desc); tmp.x |= (static_cast(smem & 0xFFFFFF) >> 4); int2 &tmp_initial = reinterpret_cast(initial_desc); tmp_initial.x = tmp.x; max_desc = tmp.x + (BYTES_PER_BUFFER >> 4) * (BUFFER_COUNT - 1); } template inline __device__ void increment_smem_buffer() { int2 &tmp = reinterpret_cast(desc); tmp.x += (tmp.x >= max_desc) ? -(BYTES_PER_BUFFER >> 4) * (BUFFER_COUNT - 1) : (BYTES_PER_BUFFER >> 4); } template inline __device__ void stage_increment_smem_buffer(int stage) { int2 &tmp_initial = reinterpret_cast(initial_desc); int2 &tmp = reinterpret_cast(desc); tmp.x = tmp_initial.x + (BYTES_PER_BUFFER >> 4) * stage; } template inline __device__ void add_smem_offset() { int2 &tmp = reinterpret_cast(desc); tmp.x += (BYTES_OFFSET >> 4); } uint64_t initial_desc; uint64_t desc; uint32_t max_desc; }; // Adapted from : /home/gautamj/work/blackwell_flash_attention/kernel_store/cutlass/include/cute/arch/mma_sm100_umma.hpp // cta1 utcmma with A and B from smem and C stored in tmem, scale denotes if we want to accumulate C or not // Something like: // Accumulate or overwrite C. 1: read C, 0: ignore C [clear accumulators] inline __device__ void utcmma_asmem_bsmem_h_cta1(uint64_t sdescA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[4] = {0, 0, 0, 0}; // TODO : Figure out what this mask means, CUTLASS hardcodes to all zeros asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::f16 [%0], %1, %2, %3, {%5, %6, %7, %8}, p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3])); } inline __device__ void utcmma_asmem_bsmem_h_cta2(uint64_t sdescA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[8] = {0, 0, 0, 0, 0, 0, 0, 0}; // TODO : Figure out what this mask means, CUTLASS hardcodes to all zeros asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::f16 [%0], %1, %2, %3, {%5, %6, %7, %8, %9, %10, %11, %12}, p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3]), "r"(mask[4]), "r"(mask[5]), "r"(mask[6]), "r"(mask[7])); } // Adapted from : /home/gautamj/work/blackwell_flash_attention/kernel_store/cutlass/include/cute/arch/mma_sm100_umma.hpp // cta1 utcmma with A from tmem and B from smem and C stored in tmem, scale denotes if we want to accumulate C or not // Something like: // Accumulate or overwrite C. 1: read C, 0: ignore C [clear accumulators] inline __device__ void utcmma_atmem_bsmem_h_cta1(uint32_t tmemA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[4] = {0, 0, 0, 0}; // TODO : Figure out what this mask means, CUTLASS hardcodes to all zeros asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::f16 [%0], [%1], %2, %3, {%5, %6, %7, %8}, p; \n\t" "}\n" : : "r"(tmemC), "r"(tmemA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3])); } inline __device__ void utcmma_atmem_bsmem_h_cta2(uint32_t tmemA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[8] = {0, 0, 0, 0, 0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::f16 [%0], [%1], %2, %3, {%5, %6, %7, %8, %9, %10, %11, %12}, p; \n\t" "}\n" : : "r"(tmemC), "r"(tmemA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3]), "r"(mask[4]), "r"(mask[5]), "r"(mask[6]), "r"(mask[7])); } inline __device__ void utcmma_asmem_bsmem_q_cta1(uint64_t sdescA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[4] = {0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::f8f6f4 [%0], %1, %2, %3, {%5, %6, %7, %8}, p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3])); } inline __device__ void utcmma_asmem_bsmem_q_cta2(uint64_t sdescA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[8] = {0, 0, 0, 0, 0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::f8f6f4 [%0], %1, %2, %3, {%5, %6, %7, %8, %9, %10, %11, %12}, p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3]), "r"(mask[4]), "r"(mask[5]), "r"(mask[6]), "r"(mask[7])); } inline __device__ void utcmma_atmem_bsmem_q_cta1(uint32_t tmemA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[4] = {0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::f8f6f4 [%0], [%1], %2, %3, {%5, %6, %7, %8}, p; \n\t" "}\n" : : "r"(tmemC), "r"(tmemA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3])); } inline __device__ void utcmma_atmem_bsmem_q_cta2(uint32_t tmemA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[8] = {0, 0, 0, 0, 0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::f8f6f4 [%0], [%1], %2, %3, {%5, %6, %7, %8, %9, %10, %11, %12}, p; \n\t" "}\n" : : "r"(tmemC), "r"(tmemA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3]), "r"(mask[4]), "r"(mask[5]), "r"(mask[6]), "r"(mask[7])); } inline __device__ void utcmma_asmem_bsmem_i_cta1(uint64_t sdescA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[4] = {0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::i8 [%0], %1, %2, %3, {%5, %6, %7, %8}, p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3])); } inline __device__ void utcmma_asmem_bsmem_i_cta2(uint64_t sdescA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[8] = {0, 0, 0, 0, 0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::i8 [%0], %1, %2, %3, {%5, %6, %7, %8, %9, %10, %11, %12}, p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3]), "r"(mask[4]), "r"(mask[5]), "r"(mask[6]), "r"(mask[7])); } inline __device__ void utcmma_atmem_bsmem_i_cta1(uint32_t tmemA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[4] = {0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::i8 [%0], [%1], %2, %3, {%5, %6, %7, %8}, p; \n\t" "}\n" : : "r"(tmemC), "r"(tmemA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3])); } inline __device__ void utcmma_atmem_bsmem_i_cta2(uint32_t tmemA, uint64_t sdescB, uint32_t tmemC, uint64_t idescE, uint32_t scaleC) { uint32_t mask[8] = {0, 0, 0, 0, 0, 0, 0, 0}; asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::i8 [%0], [%1], %2, %3, {%5, %6, %7, %8, %9, %10, %11, %12}, p; \n\t" "}\n" : : "r"(tmemC), "r"(tmemA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(mask[0]), "r"(mask[1]), "r"(mask[2]), "r"(mask[3]), "r"(mask[4]), "r"(mask[5]), "r"(mask[6]), "r"(mask[7])); } inline __device__ void utcmma_asmem_bsmem_q_1x_cta1(const uint64_t& sdescA, const uint64_t& sdescB, const uint32_t& tmemC, const uint64_t& idescE, const uint32_t& scaleC, const uint32_t& tmemSFAAddr, const uint32_t& tmemSFBAddr) { asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::mxf8f6f4.block_scale [%0], %1, %2, %3, [%5], [%6], p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(tmemSFAAddr), "r"(tmemSFBAddr)); } inline __device__ void utcmma_asmem_bsmem_q_1x_cta2(const uint64_t& sdescA, const uint64_t& sdescB, const uint32_t& tmemC, const uint64_t& idescE, const uint32_t& scaleC, const uint32_t& tmemSFAAddr, const uint32_t& tmemSFBAddr) { asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::mxf8f6f4.block_scale [%0], %1, %2, %3, [%5], [%6], p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(tmemSFAAddr), "r"(tmemSFBAddr)); } inline __device__ void utcmma_asmem_bsmem_o_2x_cta1(const uint64_t& sdescA, const uint64_t& sdescB, const uint32_t& tmemC, const uint64_t& idescE, const uint32_t& scaleC, const uint32_t& tmemSFAAddr, const uint32_t& tmemSFBAddr) { asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::mxf4.block_scale.scale_vec::2X [%0], %1, %2, %3, [%5], [%6], p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(tmemSFAAddr), "r"(tmemSFBAddr)); } inline __device__ void utcmma_asmem_bsmem_o_2x_cta2(const uint64_t& sdescA, const uint64_t& sdescB, const uint32_t& tmemC, const uint64_t& idescE, const uint32_t& scaleC, const uint32_t& tmemSFAAddr, const uint32_t& tmemSFBAddr) { asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::mxf4.block_scale.scale_vec::2X [%0], %1, %2, %3, [%5], [%6], p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(tmemSFAAddr), "r"(tmemSFBAddr)); } inline __device__ void utcmma_asmem_bsmem_o_4x_cta1(const uint64_t& sdescA, const uint64_t& sdescB, const uint32_t& tmemC, const uint64_t& idescE, const uint32_t& scaleC, const uint32_t& tmemSFAAddr, const uint32_t& tmemSFBAddr) { asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::1.kind::mxf4nvf4.block_scale.scale_vec::4X [%0], %1, %2, %3, [%5], [%6], p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(tmemSFAAddr), "r"(tmemSFBAddr)); } inline __device__ void utcmma_asmem_bsmem_o_4x_cta2(const uint64_t& sdescA, const uint64_t& sdescB, const uint32_t& tmemC, const uint64_t& idescE, const uint32_t& scaleC, const uint32_t& tmemSFAAddr, const uint32_t& tmemSFBAddr) { asm volatile( "{\n\t" ".reg .pred p;\n\t" "setp.ne.b32 p, %4, 0;\n\t" "tcgen05.mma.cta_group::2.kind::mxf4nvf4.block_scale.scale_vec::4X [%0], %1, %2, %3, [%5], [%6], p; \n\t" "}\n" : : "r"(tmemC), "l"(sdescA), "l"(sdescB), "r"(uint32_t(idescE>>32)), "r"(scaleC), "r"(tmemSFAAddr), "r"(tmemSFBAddr)); } // Adapted from : /home/gautamj/work/blackwell_flash_attention/kernel_store/cutlass/include/cutlass/arch/barrier.h // Check for the utcmma to finish inline __device__ void umma_arrive(uint32_t bar_intptr) { asm volatile( "tcgen05.commit.cta_group::1.mbarrier::arrive::one.shared::cluster.b64 [%0];" ::"r"(bar_intptr) ); } inline __device__ void umma_arrive_2cta(uint32_t bar_intptr) { asm volatile( "tcgen05.commit.cta_group::2.mbarrier::arrive::one.shared::cluster.b64 [%0];" ::"r"(bar_intptr) ); } inline __device__ void umma_arrive_multicast(uint32_t bar_intptr, uint16_t mask) { asm volatile( "{tcgen05.commit.cta_group::1.mbarrier::arrive::one.shared::cluster.multicast::cluster.b64 [%0], %1; \n\t}" ::"r"(bar_intptr), "h"(mask) ); } inline __device__ void umma_arrive_multicast_2cta(uint32_t bar_intptr, uint16_t mask) { asm volatile( "{tcgen05.commit.cta_group::2.mbarrier::arrive::one.shared::cluster.multicast::cluster.b64 [%0], %1; \n\t}" ::"r"(bar_intptr), "h"(mask) ); } inline __device__ void fence_view_async_tmem_load() { asm volatile("{\n\ttcgen05.wait::ld.sync.aligned; \n}"::); } inline __device__ void fence_view_async_tmem_store() { asm volatile("{\n\ttcgen05.wait::st.sync.aligned; \n}"::); } inline __device__ void tmem_allocate_1sm(uint32_t num_columns, uint32_t smem_addr) { asm volatile("tcgen05.alloc.cta_group::1.sync.aligned.shared::cta.b32 [%0], %1;" :: "r"(smem_addr), "r"(num_columns)); } inline __device__ void tmem_free_1sm(uint32_t num_columns, uint32_t tmem_addr) { asm volatile("{\n\ttcgen05.dealloc.cta_group::1.sync.aligned.b32 %0, %1; \n\t}" :: "r"(tmem_addr), "r"(num_columns)); } inline __device__ static void get_next_block_id(uint32_t result, uint32_t mbar) { asm volatile( "{clusterlaunchcontrol.try_cancel.async.shared::cta.mbarrier::complete_tx::bytes.multicast::cluster::all.b128 [%0], [%1];}\n\t" :: "r"(result), "r"(mbar) ); } inline __device__ static void smem_bar_arrive_dsmem_V2(uint32_t smem_addr, uint32_t cta_id, uint32_t pred) { asm volatile( "{\n\t" ".reg .pred p;\n\t" ".reg .b32 remAddr32;\n\t" "setp.eq.u32 p, %2, 1;\n\t" "@p mapa.shared::cluster.u32 remAddr32, %0, %1;\n\t" "@p mbarrier.arrive.shared::cluster.b64 _, [remAddr32];\n\t" "}" : : "r"(smem_addr), "r"(cta_id), "r"(pred)); } inline __device__ uint32_t cast_smem_ptr_to_uint(void const* const ptr) { // uint32_t smem_ptr; // asm( // "{ .reg .u64 smem_ptr; cvta.to.shared.u64 smem_ptr, %1; cvt.u32.u64 %0, smem_ptr; }\n" // : "=r"(smem_ptr) : "l"(ptr)); // return smem_ptr; return static_cast(__cvta_generic_to_shared(ptr)); } inline __device__ float2 ffma2(const float2& a, const float2& b, const float2& c) { uint64_t d; asm volatile("fma.rn.f32x2 %0, %1, %2, %3;\n" : "=l"(d) : "l"(reinterpret_cast(a)) , "l"(reinterpret_cast(b)) , "l"(reinterpret_cast(c))); return reinterpret_cast(d); } inline __device__ float2 fadd2(const float2& a, const float2& b) { uint64_t c; asm volatile("add.f32x2 %0, %1, %2;\n" : "=l"(c) : "l"(reinterpret_cast(a)) , "l"(reinterpret_cast(b))); return reinterpret_cast(c); } inline __device__ float2 fmul2(const float2& a, const float2& b) { uint64_t c; asm volatile("mul.f32x2 %0, %1, %2;\n" : "=l"(c) : "l"(reinterpret_cast(a)) , "l"(reinterpret_cast(b))); return reinterpret_cast(c); } inline __device__ float2 fadd2_rn(const float2& a, const float2& b) { uint64_t c; asm volatile("add.rn.f32x2 %0, %1, %2;\n" : "=l"(c) : "l"(reinterpret_cast(a)) , "l"(reinterpret_cast(b))); return reinterpret_cast(c); } inline __device__ float2 fmul2_rn(const float2& a, const float2& b) { uint64_t c; asm volatile("mul.rn.f32x2 %0, %1, %2;\n" : "=l"(c) : "l"(reinterpret_cast(a)) , "l"(reinterpret_cast(b))); return reinterpret_cast(c); } #if !defined(__BUILTIN_OCG_FMNMX3_H) #define __BUILTIN_OCG_FMNMX3_H 1 extern "C" { __device__ float __nv_ptx_builtin_ocg_fmin3(float a, float b, float c); __device__ float __nv_ptx_builtin_ocg_fmax3(float a, float b, float c); __device__ float __nv_ptx_builtin_ocg_fmin3_nan(float a, float b, float c); __device__ float __nv_ptx_builtin_ocg_fmax3_nan(float a, float b, float c); __device__ float __nv_ptx_builtin_ocg_fmin3_ftz(float a, float b, float c); __device__ float __nv_ptx_builtin_ocg_fmax3_ftz(float a, float b, float c); } #endif inline __device__ float row_max_reduction_128_elems(uint32_t reg[128]) { float tmp_max_0[42]; float tmp_max_1[14]; float tmp_max_2[5]; float tmp_max_3[2]; #pragma unroll for (int i = 0; i < 126; i+=3) { tmp_max_0[i/3] = __nv_ptx_builtin_ocg_fmax3(reinterpret_cast(reg[i+0]), reinterpret_cast(reg[i+1]), reinterpret_cast(reg[i+2])); } #pragma unroll for (int i = 0; i < 42; i+=3) { tmp_max_1[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_0[i+0], tmp_max_0[i+1], tmp_max_0[i+2]); } #pragma unroll for (int i = 0; i < 12; i+=3) { tmp_max_2[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[i+0], tmp_max_1[i+1], tmp_max_1[i+2]); } tmp_max_2[4] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[12], tmp_max_1[13], reinterpret_cast(reg[126])); tmp_max_3[0] = __nv_ptx_builtin_ocg_fmax3(tmp_max_2[0], tmp_max_2[1], tmp_max_2[2]); tmp_max_3[1] = __nv_ptx_builtin_ocg_fmax3(tmp_max_2[3], tmp_max_2[4], reinterpret_cast(reg[127])); return __nv_ptx_builtin_ocg_fmax3(tmp_max_3[0], tmp_max_3[1], tmp_max_3[1]); } template inline __device__ float row_max_reduction(InputType const input) { if constexpr (size(input) == 32) { float tmp_max_0[10]; float tmp_max_1[4]; float tmp_max_2[1]; #pragma unroll for (int i = 0; i < 30; i+=3) { tmp_max_0[i/3] = __nv_ptx_builtin_ocg_fmax3(input(i+0), input(i+1), input(i+2)); } #pragma unroll for (int i = 0; i < 9; i+=3) { tmp_max_1[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_0[i+0], tmp_max_0[i+1], tmp_max_0[i+2]); } tmp_max_1[3] = __nv_ptx_builtin_ocg_fmax3(input(30), input(31), tmp_max_0[9]); tmp_max_2[0] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[0], tmp_max_1[1], tmp_max_1[2]); return __nv_ptx_builtin_ocg_fmax3(tmp_max_2[0], tmp_max_1[3], -__FLT_MAX__); } else if constexpr (size(input) == 64) { float tmp_max_0[21]; float tmp_max_1[7]; float tmp_max_2[3]; #pragma unroll for (int i = 0; i < 63; i+=3) { tmp_max_0[i/3] = __nv_ptx_builtin_ocg_fmax3(input(i+0), input(i+1), input(i+2)); } #pragma unroll for (int i = 0; i < 21; i+=3) { tmp_max_1[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_0[i+0], tmp_max_0[i+1], tmp_max_0[i+2]); } #pragma unroll for (int i = 0; i < 6; i+=3) { tmp_max_2[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[i+0], tmp_max_1[i+1], tmp_max_1[i+2]); } tmp_max_2[2] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[6], input(63), -__FLT_MAX__); return __nv_ptx_builtin_ocg_fmax3(tmp_max_2[0], tmp_max_2[1], tmp_max_2[2]); } else if constexpr (size(input) == 128) { float tmp_max_0[42]; float tmp_max_1[14]; float tmp_max_2[5]; float tmp_max_3[2]; #pragma unroll for (int i = 0; i < 126; i+=3) { tmp_max_0[i/3] = __nv_ptx_builtin_ocg_fmax3(input(i+0), input(i+1), input(i+2)); } #pragma unroll for (int i = 0; i < 42; i+=3) { tmp_max_1[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_0[i+0], tmp_max_0[i+1], tmp_max_0[i+2]); } #pragma unroll for (int i = 0; i < 12; i+=3) { tmp_max_2[i/3] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[i+0], tmp_max_1[i+1], tmp_max_1[i+2]); } tmp_max_2[4] = __nv_ptx_builtin_ocg_fmax3(tmp_max_1[12], tmp_max_1[13], input(126)); tmp_max_3[0] = __nv_ptx_builtin_ocg_fmax3(tmp_max_2[0], tmp_max_2[1], tmp_max_2[2]); tmp_max_3[1] = __nv_ptx_builtin_ocg_fmax3(tmp_max_2[3], tmp_max_2[4], input(127)); return __nv_ptx_builtin_ocg_fmax3(tmp_max_3[0], tmp_max_3[1], -__FLT_MAX__); } return 0.f; } template inline __device__ void warp_max_reduction(r32 reg[NUM_COLS], r32 final_max[NUM_COLS]) { static constexpr int threads_per_warp = 32; #pragma unroll for (int col = 0; col < NUM_COLS; ++col) { final_max[col] = reg[col]; #pragma unroll for (int i = threads_per_warp / 2; i > 0; i /= 2) { r32 tmp = __shfl_xor_sync(uint32_t(-1), final_max[col], i); reinterpret_cast(final_max[col]) = fmaxf(reinterpret_cast(final_max[col]), reinterpret_cast(tmp)); } } } template inline __device__ void warp_sum_reduction(r32 reg[NUM_COLS], r32 final_sum[NUM_COLS]) { static constexpr int threads_per_warp = 32; #pragma unroll for (int col = 0; col < NUM_COLS; ++col) { final_sum[col] = reg[col]; #pragma unroll for (int i = threads_per_warp / 2; i > 0; i /= 2) { r32 tmp = __shfl_xor_sync(uint32_t(-1), final_sum[col], i); reinterpret_cast(final_sum[col]) += reinterpret_cast(tmp); } } } inline __device__ void hmma_fp32_16x16x16(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k16.row.col.f32.f16.f16.f32\n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k16.row.col.f32.f16.f16.f32\n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void hmma_fp16_16x16x16(const r32 a[4], const r32 b[4], r32 acc[4]) { asm volatile( \ "mma.sync.aligned.m16n8k16.row.col.f16.f16.f16.f16 \n" " {%0, %1}, \n" \ " {%2, %3, %4, %5}, \n" \ " {%6, %7}, \n" \ " {%8, %9}; \n" \ : "+r"(acc[0]), "+r"(acc[1]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1])); asm volatile( \ "mma.sync.aligned.m16n8k16.row.col.f16.f16.f16.f16 \n" " {%0, %1}, \n" \ " {%2, %3, %4, %5}, \n" \ " {%6, %7}, \n" \ " {%8, %9}; \n" \ : "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[2]), "r"(acc[3])); } inline __device__ void bf16mma_fp32_16x16x16(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k16.row.col.f32.bf16.bf16.f32\n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k16.row.col.f32.bf16.bf16.f32\n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void tf32mma_fp32_16x16x8(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k8.row.col.f32.tf32.tf32.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k8.row.col.f32.tf32.tf32.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void ffma_mma_fp32_16x16x4(const r32 a[8], const r32 b[16], r32 acc[8]) { #pragma unroll for (int k = 0; k < 4; ++k) { reinterpret_cast(acc[0]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[0*4+k]); reinterpret_cast(acc[1]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[1*4+k]); reinterpret_cast(acc[2]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[0*4+k]); reinterpret_cast(acc[3]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[1*4+k]); reinterpret_cast(acc[4]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[2*4+k]); reinterpret_cast(acc[5]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[3*4+k]); reinterpret_cast(acc[6]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[2*4+k]); reinterpret_cast(acc[7]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[3*4+k]); } } inline __device__ void ffma_mma_fp32_16x16x4_tr(const r32 a[8], const r32 b[16], r32 acc[8]) { #pragma unroll for (int k = 0; k < 4; ++k) { reinterpret_cast(acc[0]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[k*4+0]); reinterpret_cast(acc[1]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[k*4+1]); reinterpret_cast(acc[2]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[k*4+0]); reinterpret_cast(acc[3]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[k*4+1]); reinterpret_cast(acc[4]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[k*4+2]); reinterpret_cast(acc[5]) += reinterpret_cast(a[0 + k]) * reinterpret_cast(b[k*4+3]); reinterpret_cast(acc[6]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[k*4+2]); reinterpret_cast(acc[7]) += reinterpret_cast(a[4 + k]) * reinterpret_cast(b[k*4+3]); } } inline __device__ void imma_int32_16x16x32(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.s32.s8.s8.s32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.s32.s8.s8.s32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void e4m3e4m3mma_fp32_16x16x32(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e4m3.e4m3.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e4m3.e4m3.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void e5m2e5m2mma_fp32_16x16x32(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e5m2.e5m2.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e5m2.e5m2.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void e4m3e5m2mma_fp32_16x16x32(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e4m3.e5m2.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e4m3.e5m2.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void e5m2e4m3mma_fp32_16x16x32(const r32 a[4], const r32 b[4], r32 acc[8]) { asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e5m2.e4m3.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[0]), "+r"(acc[1]), "+r"(acc[2]), "+r"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[0]), "r"(b[1]) , "r"(acc[0]), "r"(acc[1]), "r"(acc[2]), "r"(acc[3])); asm volatile( \ "mma.sync.aligned.m16n8k32.row.col.f32.e5m2.e4m3.f32 \n" " {%0, %1, %2, %3}, \n" \ " {%4, %5, %6, %7}, \n" \ " {%8, %9}, \n" \ " {%10, %11, %12, %13}; \n" \ : "+r"(acc[4]), "+r"(acc[5]), "+r"(acc[6]), "+r"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "r"(b[2]), "r"(b[3]) , "r"(acc[4]), "r"(acc[5]), "r"(acc[6]), "r"(acc[7])); } inline __device__ void e2m1e2m1mma_fp32_16x16x64_sfe8m0_vs4x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "_mma.block_scale.scale_vec::4X.m16n8k64.row.col.f32.e2m1.e2m1.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "_mma.block_scale.scale_vec::4X.m16n8k64.row.col.f32.e2m1.e2m1.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } inline __device__ void e2m1e2m1mma_fp32_16x16x64_sfe8m0_vs2x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "mma.sync.aligned.kind::mxf4nvf4.block_scale.scale_vec::2X.m16n8k64.row.col.f32.e2m1.e2m1.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "mma.sync.aligned.kind::mxf4nvf4.block_scale.scale_vec::2X.m16n8k64.row.col.f32.e2m1.e2m1.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } inline __device__ void e2m1e2m1mma_fp32_16x16x64_sfe4m3_vs4x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "mma.sync.aligned.kind::mxf4nvf4.block_scale.scale_vec::4X.m16n8k64.row.col.f32.e2m1.e2m1.f32.ue4m3 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "mma.sync.aligned.kind::mxf4nvf4.block_scale.scale_vec::4X.m16n8k64.row.col.f32.e2m1.e2m1.f32.ue4m3 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } inline __device__ void e4m3e4m3mma_fp32_16x16x32_sfe8m0_vs1x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e4m3.e4m3.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e4m3.e4m3.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } inline __device__ void e4m3e5m2mma_fp32_16x16x32_sfe8m0_vs1x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e4m3.e5m2.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e4m3.e5m2.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } inline __device__ void e5m2e4m3mma_fp32_16x16x32_sfe8m0_vs1x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e5m2.e4m3.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e5m2.e4m3.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } inline __device__ void e5m2e5m2mma_fp32_16x16x32_sfe8m0_vs1x(const r32 a[4], const r32 b[4], r32 acc_u[8], r32 sf_a[1], r32 sf_b[1], uint16_t byte_id) { static constexpr uint16_t thread_id_a_1 = 0; static constexpr uint16_t thread_id_b_1 = 0; static constexpr uint16_t thread_id_a_2 = 0; static constexpr uint16_t thread_id_b_2 = 1; float* acc = reinterpret_cast(acc_u); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e5m2.e5m2.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[0]), "=f"(acc[1]), "=f"(acc[2]), "=f"(acc[3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[0]), "r"(b[1]), "f"(acc[0]), "f"(acc[1]), "f"(acc[2]), "f"(acc[3]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_1), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_1)); asm volatile( "mma.sync.aligned.kind::mxf8f6f4.block_scale.scale_vec::1X.m16n8k32.row.col.f32.e5m2.e5m2.f32.ue8m0 " "{%0, %1, %2, %3}," "{%4, %5, %6, %7}," "{%8, %9}," "{%10, %11, %12, %13}," "{%14}," "{%15, %16}," "{%17}," "{%18, %19};\n" : "=f"(acc[4]), "=f"(acc[5]), "=f"(acc[6]), "=f"(acc[7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]), "r"(b[2]), "r"(b[3]), "f"(acc[4]), "f"(acc[5]), "f"(acc[6]), "f"(acc[7]), "r"(sf_a[0]) , "h"(byte_id), "h"(thread_id_a_2), "r"(sf_b[0]) , "h"(byte_id), "h"(thread_id_b_2)); } //receive_op {} decls //receive_op {} typesthreads_per_cta //receive_op {} includes } // namespace fort //receive_op {} code }} char *tma_workspace_{guid} = reinterpret_cast({tma_descs_array}); for(uint32_t batch_coord = 0; batch_coord < {tensor_desc}.dims[0]; batch_coord++) {{ cudaTmaDesc *actual_tma_desc_{guid} = reinterpret_cast(tma_workspace_{guid}) + (batch_coord); tma_descriptor_fence_acquire(actual_tma_desc_{guid}); }} if(elect_one && wid == 0) { //mma_pipeline_op {} includes static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int ELEMS_PER_BANK_{guid} = BYTES_PER_BANK_{guid} * 8 / BITS_PER_ELEMENT_{guid}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BYTES_PER_FP16_{guid} = 2; static constexpr int ELEMS_PER_VECTOR_{guid} = BYTES_PER_REGISTER_{r_id} / BYTES_PER_ELEMENT_{guid}; static constexpr int BITS_PER_ACC_{guid} = {bits_per_acc}; static constexpr int BYTES_PER_ACC_{guid} = BITS_PER_ACC_{guid} / 8; static constexpr int TILE_M_{guid} = {cta_tile_m}; static constexpr int TILE_N_{guid} = {cta_tile_n}; static constexpr int TILE_K_{guid} = {cta_tile_k}; static constexpr int TILE_O_{guid} = {cta_tile_o}; static constexpr int TILE_V_{guid} = {cta_tile_v}; static constexpr int TILE_DV_{guid} = {cta_tile_dv}; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int WARP_TILE_K_{guid} = 32 / BYTES_PER_ELEMENT_{guid}; static constexpr int WARPS_M_{guid} = {warp_tile_m} / 16; static constexpr int WARPS_N_{guid} = {warp_tile_n} / 16; static constexpr int WARPS_K_{guid} = {warp_tile_k} / 16; static constexpr int STAGES_{guid} = {stages}; static constexpr int GROUPS_M_{guid} = 1; static constexpr int GMMA_TILE_M_{guid} = WARPS_M_{guid} * WARP_TILE_M_{guid}; static constexpr int GMMA_TILE_K_{guid} = WARPS_K_{guid} * WARP_TILE_K_{guid}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int WARP_TILES_K_{guid} = TILE_{K_or_O}_{guid} / WARP_TILE_K_{guid}; static constexpr int WARP_REGS_{guid} = {warp_regs}; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid}; static constexpr int REGS_K_{guid} = WARP_TILES_K_{guid} / WARPS_K_{guid}; static constexpr int REGS_K_FOR_DP_{guid} = TILE_V_{guid} / 16; static constexpr int REGS_dQ_{guid} = {regs_dq}; static constexpr int REGS_O_{guid} = {regs_o}; static constexpr int CTA_TILE_M_{guid} = TILE_M_{guid}; static constexpr int CTA_TILE_N_{guid} = {capped_cta_tile_k}; static constexpr int CTA_TILE_K_{guid} = {cta_tile_n}; static constexpr int SMEM_OFFSET_V_{guid} = SMEM_OFFSET_Q_{guid} + SMEM_Q_{guid}; static constexpr int SMEM_OFFSET_K_{guid} = SMEM_OFFSET_V_{guid} + SMEM_V_{guid} * STAGES_{guid}; static constexpr int SMEM_OFFSET_D_{guid} = SMEM_OFFSET_K_{guid} + SMEM_K_{guid} * STAGES_{guid}; static constexpr int SMEM_ACC_MAX_{guid} = 0; static constexpr int SMEM_ACC_SUM_{guid} = 0; static constexpr int SMEM_ACC_O_{guid} = 0; static constexpr int SMEM_OFFSET_V_{guid} = 0; static constexpr int SMEM_OFFSET_K_{guid} = SMEM_OFFSET_Q_{guid} + FORT_MAX(SMEM_Q_{guid}, SMEM_V_{guid} * STAGES_{guid}); static constexpr int SMEM_OFFSET_D_{guid} = SMEM_OFFSET_K_{guid} + SMEM_K_{guid} * STAGES_{guid}; static constexpr int SMEM_ACC_MAX_{guid} = FORT_MAX(SMEM_OFFSET_O_{guid} + SMEM_O_{guid} + SMEM_O_PADDING_{guid}, SMEM_OFFSET_D_{guid} + SMEM_D_{guid}); static constexpr int SMEM_ACC_SUM_{guid} = SMEM_ACC_MAX_{guid} + TILE_M_{guid} * sizeof(float); static constexpr int SMEM_ACC_O_{guid} = SMEM_ACC_SUM_{guid} + 4 * TILE_M_{guid} * sizeof(float); static constexpr int BUFFERS_Q_{guid} = 1; static constexpr int BUFFERS_K_{guid} = 1; static constexpr int BUFFERS_V_{guid} = 1; static constexpr int BUFFERS_O_{guid} = 1; static constexpr int SMEM_Q_{guid} = TILE_M_{guid} * TILE_O_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_K_{guid} = TILE_N_{guid} * TILE_O_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_V_{guid} = TILE_N_{guid} * TILE_O_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_D_{guid} = TILE_M_{guid} * TILE_N_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_O_{guid} = TILE_M_{guid} * TILE_O_{guid} * BYTES_PER_ACC_{guid}; static constexpr int SMEM_O_PADDING_{guid} = 16 * (TILE_O_{guid} / 8) * (TILE_M_{guid} / 16); // Can be reduced for epilogue warp group less than 4; static constexpr int SMEM_OFFSET_Q_{guid} = 0; static constexpr int SMEM_OFFSET_O_{guid} = 0; static constexpr int SMEM_OFFSET_O_{guid} = SMEM_OFFSET_V_{guid}; // Share V-transpose buffer with O static constexpr int SMEM_OFFSET_O_{guid} = SMEM_OFFSET_V_{guid} + SMEM_V_{guid} * BUFFERS_V_{guid}; static constexpr int BUFFERS_Q_{guid} = {buffers_q}; static constexpr int BUFFERS_K_{guid} = {buffers_kv}; static constexpr int BUFFERS_V_{guid} = {buffers_kv}; static constexpr int BUFFERS_O_{guid} = 1; static constexpr int BUFFERS_D_{guid} = 1; static constexpr int SMEM_Q_{guid} = TILE_M_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid} * 2; static constexpr int SMEM_K_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_V_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_OFFSET_Q_{guid} = 1024; static constexpr int SMEM_OFFSET_K_{guid} = SMEM_OFFSET_Q_{guid} + SMEM_Q_{guid} * BUFFERS_Q_{guid}; static constexpr int SMEM_OFFSET_V_{guid} = SMEM_OFFSET_K_{guid} + SMEM_K_{guid} * BUFFERS_K_{guid};{smem_offset_o_code} static constexpr int SMEM_OFFSET_D_{guid} = SMEM_OFFSET_O_{guid}; static constexpr int SMEM_OFFSET_BAND_BIAS_{guid} = SMEM_OFFSET_O_{guid}; static constexpr int THREADS_ON_TILE_BARRIER_{guid} = 256+{tma_threads}+{band_bias_threads}; static constexpr int TILE_ID_SYNC_2_BARRIER_{guid} = 2; static constexpr int TILE_ID_SYNC_3_BARRIER_{guid} = 3; static constexpr int SOFTMAX_1_BARRIER_{guid} = 4; static constexpr int SOFTMAX_2_BARRIER_{guid} = 5; static constexpr int MATH_WORKGROUP_{guid} = 6; static constexpr int TMA_SYNC_BARRIER_{guid} = 7; static constexpr uint32_t BYTES_PER_GMMA_K_{guid} = GMMA_TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr uint32_t BYTES_PER_GMMA_K_NO_4LSB_{guid} = BYTES_PER_GMMA_K_{guid} >> 4; static constexpr uint32_t BYTES_PER_GMMA_K_TRANS_{guid} = GMMA_TILE_K_{guid} * 128; static constexpr uint32_t BYTES_PER_GMMA_K_NO_4LSB_TRANS_{guid} = BYTES_PER_GMMA_K_TRANS_{guid} >> 4; static constexpr uint32_t GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid} = 2; static constexpr uint32_t GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid} = 62; // bits 63-62 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_Q_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_Q_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_Q_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_K_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_K_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_K_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_V_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_V_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_V_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid} = 32; // bits 45-32 static constexpr uint64_t BYTES_PER_LEADING_DIM_{guid} = 128; static constexpr uint64_t STRIDE_BYTE_OFFSET_Q_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid} = STRIDE_BYTE_OFFSET_Q_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint64_t STRIDE_BYTE_OFFSET_K_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid} = STRIDE_BYTE_OFFSET_K_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint64_t STRIDE_BYTE_OFFSET_V_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid} = STRIDE_BYTE_OFFSET_V_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid} = 16; // bits 29-16 static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_Q_{guid} = 128 * 64 / 16; // Not used??? static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_Q_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_K_{guid} = 128 * 32 / 16; // Not used??? static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_K_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_V_{guid} = 128 * TILE_N_{guid} / 16; static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_V_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; inline __device__ constexpr uint64_t create_gmma_desc_q_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_Q_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid}; }} inline __device__ constexpr uint64_t create_gmma_desc_k_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_K_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid}; }} inline __device__ constexpr uint64_t create_gmma_desc_v_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_V_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid}; }} class Gmma_descriptor {{ public: inline __device__ Gmma_descriptor(uint64_t desc_) {{ desc = desc_; }} template inline __device__ void set_smem(uint32_t smem) {{ desc |= (static_cast(smem & 0xFFFFFF) >> 4); max_desc = desc + (BYTES_PER_BUFFER >> 4) * (BUFFER_COUNT - 1); }} template inline __device__ void increment_smem_buffer() {{ int2 &tmp = reinterpret_cast(desc); tmp.x += (desc >= max_desc) ? -(BYTES_PER_BUFFER >> 4) * (BUFFER_COUNT - 1) : (BYTES_PER_BUFFER >> 4); }} uint64_t desc; uint64_t max_desc; }}; alignas(16) uint64_t tma_o_0_full_mbar[1]; alignas(16) uint64_t bmm1_tile0_done_mbar[stages_kv]; alignas(16) uint64_t tma_o_0_full_mbar[FORT_DIV_UP(TILE_O_{guid} * BYTES_PER_ELEMENT,128)]; alignas(16) uint64_t tma_o_1_full_mbar[FORT_DIV_UP(TILE_O_{guid} * BYTES_PER_ELEMENT,128)]; alignas(16) uint64_t epilogue_done_mbar[1]; alignas(16) uint64_t tmaldg_tile_started_mbar[1]; alignas(16) uint64_t bmm1_tile0_done_mbar[1]; alignas(16) uint64_t bmm1_tile1_done_mbar[1]; alignas(16) uint64_t bmm2_tile1_done_mbar[1]; alignas(16) uint64_t bmm2_tile1_ready_mbar[2]; alignas(16) uint64_t stat_tile1_full_mbar[1]; alignas(16) uint64_t stat_tile1_empty_mbar[1]; alignas(16) uint64_t tma_v_empty_mbar[stages_kv]; alignas(16) uint64_t tma_v_full_mbar[stages_kv]; alignas(16) uint64_t tma_o_1_empty_mbar[1]; alignas(1024) ElementS smem_S[sBufferElems * stages_kv]; alignas(128) float smem_Stats[BMM1_TILE_M * warps_per_group]; alignas(1024) ElementO smem_O[oBufferElems * Tiles_Q]; alignas(1024) ElementO smem_O[oBufferElems]; alignas(1024) ElementV smem_V[vBufferElems * stages_kv]; static constexpr int MmaWarpRegs = 40; // warp 8 static constexpr int TmaldgWarpRegs = 40; // warp 9 static constexpr int TmastgWarpRegs = 40; // warp 10 static constexpr int SchedulerWarpRegs = 40; // warp 11 static constexpr int CorrectionWarpRegs = 168; // warps 4-7 static constexpr int SoftmaxWarpRegs = 240; // warps 0-3 static constexpr int MmaWarpRegs = 24 + 16; // warp 12 static constexpr int TmaldgWarpRegs = 24 + 16; // warp 13 static constexpr int TmastgWarpRegs = 24 + 16; // warp 14 static constexpr int SchedulerWarpRegs = 24 + 16; // warp 15 static constexpr int CorrectionWarpRegs = 104 - 16; // warps 8-11 static constexpr int SoftmaxWarpRegs = 192; // warps 0-7 static constexpr int MmaWarpRegs = 24; // warp 12 static constexpr int TmaldgWarpRegs = 24; // warp 13 static constexpr int TmastgWarpRegs = 24; // warp 14 static constexpr int SchedulerWarpRegs = 24; // warp 15 static constexpr int CorrectionWarpRegs = 104; // warps 8-11 static constexpr int SoftmaxWarpRegs = 192; // warps 0-7 static constexpr float ln2 = 0.6931471805599453094f; static constexpr float inv_ln2 = 1.4426950408889634074f; static constexpr uint32_t SchedulerPipelineStageCount = 2; static constexpr uint32_t AccumulatorPipelineStageCount = 1; static constexpr uint32_t SmemPipelineStageCount = 1; static constexpr uint32_t num_columns_per_tmem = 512; static constexpr uint32_t columns_per_allocation_slice = 32; static constexpr int stages_q = {stages_q}; static constexpr int stages_kv = {stages_kv}; static constexpr int Tiles_Q = {TilesQ}; static constexpr int SoftmaxWarpGroups = {SoftmaxWarpGroups}; static constexpr int CorrectionWarpGroups = 1; static constexpr int SoftmaxWarps = SoftmaxWarpGroups * 4; static constexpr int CorrectionWarps = 4; static constexpr int threads_per_warp = 32; static constexpr int warps_per_group = 4; static constexpr int threads_per_group = threads_per_warp * warps_per_group; static constexpr int threads_per_cta = threads_per_warp * (warps_per_group + SoftmaxWarps + CorrectionWarps); static constexpr int BUFFERS_Q = stages_q; static constexpr int BUFFERS_K = stages_kv; static constexpr int BUFFERS_V = stages_kv; static constexpr int BUFFERS_S = stages_kv; using ElementQ = {data_type_kernel}; using ElementK = {data_type_kernel}; using ElementV = {data_type_kernel}; using ElementS = {data_type_kernel}; using ElementO = {data_type_kernel_o}; using ElementAccumulator = float; static constexpr int BYTES_PER_ELEMENT = {bytes_per_elem}; static constexpr int BYTES_PER_ACC = 4; static constexpr int BMM1_TILE_M = TILE_M_{guid}; static constexpr int BMM1_TILE_N = 128; static constexpr int BMM1_TILE_K = {cta_tile_k}; static constexpr int BMM2_TILE_M = TILE_M_{guid}; static constexpr int BMM2_TILE_N = {cta_tile_k}; static constexpr int BMM2_TILE_K = 128; static constexpr uint32_t qBufferElems = BMM1_TILE_M * BMM1_TILE_K; static constexpr uint32_t kBufferElems = BMM1_TILE_N * BMM1_TILE_K; static constexpr uint32_t vBufferElems = BMM2_TILE_N * BMM2_TILE_K; static constexpr uint32_t oBufferElems = FORT_MAX(8, BMM2_TILE_M) * (BMM2_TILE_N + {padded_elements}); static constexpr uint32_t sBufferElems = FORT_MAX(8, BMM1_TILE_M) * BMM1_TILE_N; static constexpr uint32_t qTmaTransactionBytes = qBufferElems * sizeof(ElementQ); static constexpr uint32_t kTmaTransactionBytes = kBufferElems * sizeof(ElementK); static constexpr uint32_t vTmaTransactionBytes = vBufferElems * sizeof(ElementV); static constexpr int UTCMMA_TILE_M = 128; static constexpr int UTCMMA_TILE_N = 128; static constexpr int UTCMMA_TILE_K = 32 / BYTES_PER_ELEMENT; static constexpr int BMM1_XMMAS_K = BMM1_TILE_K / UTCMMA_TILE_K; static constexpr int BMM2_XMMAS_K = BMM2_TILE_K / UTCMMA_TILE_K; static constexpr int BYTES_PER_MMA_K = UTCMMA_TILE_K * BYTES_PER_ELEMENT; static constexpr int SMEM_BUFFER_SIZE_Q = BMM1_TILE_M * BMM1_TILE_K * BYTES_PER_ELEMENT; static constexpr int SMEM_BUFFER_SIZE_K = BMM1_TILE_N * BMM1_TILE_K * BYTES_PER_ELEMENT; static constexpr int SMEM_BUFFER_SIZE_V = BMM2_TILE_N * BMM2_TILE_K * BYTES_PER_ELEMENT; static constexpr int SMEM_BUFFER_SIZE_S = FORT_MAX(8, BMM1_TILE_M) * BMM1_TILE_N * BYTES_PER_ELEMENT; static constexpr int SOFTMAX_BARRIER = 1; static constexpr int BAND_BIAS_BARRIER = 3; struct SharedStorage {{ alignas(1024) ElementQ smem_Q[qBufferElems * stages_q]; alignas(1024) ElementK smem_K[kBufferElems * stages_kv]; alignas(16) uint64_t tma_o_0_empty_mbar[1]; alignas(16) uint64_t tma_k_empty_mbar[stages_kv]; alignas(16) uint64_t tma_k_full_mbar[stages_kv]; alignas(16) uint64_t tma_q_empty_mbar[stages_q]; alignas(16) uint64_t tma_q_full_mbar[stages_q]; alignas(16) uint64_t bmm2_tile0_done_mbar[1]; alignas(16) uint64_t bmm2_tile0_ready_mbar[2]; alignas(16) uint64_t stat_tile0_full_mbar[1]; alignas(16) uint64_t stat_tile0_empty_mbar[1]; alignas(16) uint64_t empty_mainloop_mbar[1]; alignas(16) uint64_t scheduler_mbar[SchedulerPipelineStageCount]; alignas(16) uint64_t read_tile_id_done_mbar[SchedulerPipelineStageCount]; uint32_t tmem_base_ptrs; alignas(16) uint32_t tile_id[8 * SchedulerPipelineStageCount]; }}; static constexpr int BUFFERS_Q_{guid} = 2; static constexpr int BUFFERS_K_{guid} = 1; static constexpr int BUFFERS_V_{guid} = 1; static constexpr int BUFFERS_O_{guid} = 2; static constexpr int SMEM_Q_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_DO_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_K_{guid} = TILE_M_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_V_{guid} = TILE_M_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_O_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_P_{guid} = TILE_N_{guid} * TILE_M_{guid} * BYTES_PER_ACC_{guid}; static constexpr int SMEM_OFFSET_K_{guid} = 0; static constexpr int SMEM_OFFSET_V_{guid} = SMEM_OFFSET_K_{guid} + SMEM_K_{guid} * BUFFERS_K_{guid}; static constexpr int SMEM_OFFSET_P_{guid} = SMEM_OFFSET_V_{guid}; static constexpr int SMEM_OFFSET_Q_{guid} = SMEM_OFFSET_P_{guid} + FORT_MAX(SMEM_P_{guid}, SMEM_V_{guid}); static constexpr int SMEM_OFFSET_O_{guid} = SMEM_OFFSET_Q_{guid} + SMEM_Q_{guid} * BUFFERS_Q_{guid}; static constexpr int SMEM_P_{guid} = TILE_N_{guid} * TILE_M_{guid} * BYTES_PER_FP16_{guid} * 2; static constexpr int SMEM_OFFSET_DQ_{guid} = SMEM_OFFSET_P_{guid} + SMEM_P_{guid} * BUFFERS_P_{guid}; static constexpr int SMEM_OFFSET_STATS_{guid} = SMEM_OFFSET_DQ_{guid} + SMEM_DQ_{guid} * BUFFERS_DQ_{guid}; static constexpr int SMEM_OFFSET_DV_{guid} = SMEM_OFFSET_STATS_{guid} + FORT_ROUND_UP(SMEM_STATS_{guid} * BUFFERS_STATS_{guid}, 1024); static constexpr int SMEM_OFFSET_DK_{guid} = SMEM_OFFSET_DV_{guid}; static constexpr int SMEM_OFFSET_DQ_{guid} = SMEM_OFFSET_P_{guid} + SMEM_P_{guid} * BUFFERS_P_{guid}; static constexpr int SMEM_OFFSET_STATS_{guid} = SMEM_OFFSET_DQ_{guid} + SMEM_DQ_{guid} * BUFFERS_DQ_{guid}; static constexpr int SMEM_OFFSET_DV_{guid} = SMEM_OFFSET_STATS_{guid} + FORT_ROUND_UP(SMEM_STATS_{guid} * BUFFERS_STATS_{guid}, 1024); static constexpr int SMEM_OFFSET_DK_{guid} = SMEM_OFFSET_DV_{guid} + TILE_M_{guid} * 2 * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid} * BUFFERS_DK_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_V_{guid} = TILE_N_{guid} * BYTES_PER_ELEMENT_{guid} == 128 ? 1 : 2; static constexpr uint64_t STRIDE_BYTE_OFFSET_V_{guid} = (TILE_N_{guid} * 8) / 16; static constexpr int SMEM_P_{guid} = TILE_N_{guid} * TILE_M_{guid} * BYTES_PER_ELEMENT_{guid} * 2; static constexpr int SMEM_OFFSET_DQ_{guid} = SMEM_OFFSET_P_{guid} + SMEM_P_{guid} * BUFFERS_P_{guid}; static constexpr int SMEM_OFFSET_STATS_{guid} = SMEM_OFFSET_DQ_{guid} + SMEM_DQ_{guid} * BUFFERS_DQ_{guid}; static constexpr int SMEM_OFFSET_DV_{guid} = SMEM_OFFSET_DQ_{guid}; static constexpr int SMEM_OFFSET_DK_{guid} = SMEM_OFFSET_DQ_{guid}; static constexpr int SMEM_OFFSET_DQ_{guid} = SMEM_OFFSET_P_{guid}; static constexpr int SMEM_OFFSET_STATS_{guid} = SMEM_OFFSET_DQ_{guid} + SMEM_DQ_{guid} * BUFFERS_DQ_{guid}; static constexpr int SMEM_OFFSET_DV_{guid} = SMEM_OFFSET_DQ_{guid}; static constexpr int SMEM_OFFSET_DK_{guid} = SMEM_OFFSET_DQ_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_V_{guid} = 1; static constexpr uint64_t STRIDE_BYTE_OFFSET_V_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; static constexpr int BUFFERS_Q_{guid} = {buffers_q_o_stats}; static constexpr int BUFFERS_K_{guid} = {buffers_kv}; static constexpr int BUFFERS_V_{guid} = {buffers_kv}; static constexpr int BUFFERS_O_{guid} = {buffers_q_o_stats}; static constexpr int BUFFERS_DQ_{guid} = 1; static constexpr int BUFFERS_P_{guid} = 1; static constexpr int BUFFERS_DV_{guid} = 1; static constexpr int BUFFERS_DK_{guid} = 1; static constexpr int BUFFERS_STATS_{guid} = {buffers_q_o_stats}; static constexpr int SMEM_Q_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_DO_{guid} = TILE_N_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int SMEM_K_{guid} = TILE_M_{guid} * TILE_K_{guid} * BYTES_PER_ELEMENT_{guid} * 2; static constexpr int SMEM_V_{guid} = TILE_M_{guid} * TILE_V_{guid} * BYTES_PER_ELEMENT_{guid} * 2; static constexpr int SMEM_O_{guid} = TILE_N_{guid} * TILE_V_{guid} * BYTES_PER_ELEMENT_{guid};{smem_p_code} static constexpr int SMEM_DQ_{guid} = TILE_N_{guid} * TILE_O_{guid} * BYTES_PER_ACC_{guid}; static constexpr int SMEM_STATS_{guid} = TILE_N_{guid} * BYTES_PER_ACC_{guid} * 4; static constexpr int SMEM_OFFSET_Q_{guid} = 1024; static constexpr int SMEM_OFFSET_K_{guid} = SMEM_OFFSET_Q_{guid} + SMEM_Q_{guid} * (BUFFERS_Q_{guid} + {buffers_transp}); static constexpr int SMEM_OFFSET_V_{guid} = SMEM_OFFSET_K_{guid} + SMEM_K_{guid} * (BUFFERS_K_{guid} + {buffers_transp}); static constexpr int SMEM_OFFSET_O_{guid} = SMEM_OFFSET_V_{guid} + SMEM_V_{guid} * BUFFERS_V_{guid}; static constexpr int SMEM_OFFSET_P_{guid} = SMEM_OFFSET_O_{guid} + SMEM_O_{guid} * (BUFFERS_O_{guid} + {buffers_transp});{smem_dk_dv_offset_code} static constexpr int THREADS_ON_TILE_BARRIER_{guid} = 256+64; static constexpr int TILE_ID_SYNC_2_BARRIER_{guid} = 2; static constexpr int TILE_ID_SYNC_3_BARRIER_{guid} = 3; static constexpr int TMASTG_DV_DONE_{guid} = 4; static constexpr int STS_DQ_DV_DONE_{guid} = 5; static constexpr int BMM_DQ_DONE_{guid} = 6; static constexpr int SOFTMAX_STATS_BARRIER_{guid} = 7; static constexpr uint32_t BYTES_PER_GMMA_K_{guid} = GMMA_TILE_K_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr uint32_t BYTES_PER_GMMA_K_NO_4LSB_{guid} = BYTES_PER_GMMA_K_{guid} >> 4; static constexpr uint32_t BYTES_PER_GMMA_K_TRANS_{guid} = GMMA_TILE_K_{guid} * 128; static constexpr uint32_t BYTES_PER_GMMA_K_NO_4LSB_TRANS_{guid} = BYTES_PER_GMMA_K_TRANS_{guid} >> 4; static constexpr uint32_t GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid} = 2; static constexpr uint32_t GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid} = 62; // bits 63-62 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_Q_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_Q_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_Q_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_K_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_K_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_K_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid};{swizzle_v_code} static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_V_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_V_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_DP_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_DP_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_DP_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_KT_{guid} = 1; // SWIZZLE_NONE=0, SWIZZLE_128B=1, SWIZZLE_64B=2, SWIZZLE_32B=3 static constexpr uint64_t GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_KT_{guid} = (GMMA_DESCRIPTOR_SWIZZLE_MODE_VALUE_KT_{guid} & ((1u << GMMA_DESCRIPTOR_SWIZZLE_MODE_BITS_{guid}) - 1)) << GMMA_DESCRIPTOR_SWIZZLE_MODE_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid} = 32; // bits 45-32 static constexpr uint64_t BYTES_PER_LEADING_DIM_{guid} = 128; static constexpr uint64_t STRIDE_BYTE_OFFSET_Q_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid} = STRIDE_BYTE_OFFSET_Q_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint64_t STRIDE_BYTE_OFFSET_K_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid} = STRIDE_BYTE_OFFSET_K_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid};{byte_offset_v_code} static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid} = STRIDE_BYTE_OFFSET_V_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint64_t STRIDE_BYTE_OFFSET_DP_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_DP_{guid} = STRIDE_BYTE_OFFSET_DP_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint64_t STRIDE_BYTE_OFFSET_KT_{guid} = (BYTES_PER_LEADING_DIM_{guid} * 8) / 16; // SWIZZLE_NONE=0, SWIZZLE_128B=8, SWIZZLE_64B=4, SWIZZLE_32B=2 static constexpr uint64_t GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_KT_{guid} = STRIDE_BYTE_OFFSET_KT_{guid} << GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid} = 16; // bits 29-16 static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_Q_{guid} = 128 * 64 / 16; // Not used??? static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_Q_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_K_{guid} = 128 * 32 / 16; // Not used??? static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_K_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_V_{guid} = 128 * 64 / 16; static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_V_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_DP_{guid} = 128 * 64 / 16; static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_DP_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_DP_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; static constexpr uint32_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_KT_{guid} = TILE_M_{guid} * 2 * 128 / 16; static constexpr uint64_t GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_KT_{guid} = GMMA_DESCRIPTOR_LD_BYTE_OFFSET_VALUE_KT_{guid} << GMMA_DESCRIPTOR_LD_BYTE_OFFSET_SHIFT_{guid}; inline __device__ constexpr uint64_t create_gmma_desc_bmm1_b_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_Q_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_Q_{guid}; }} inline __device__ constexpr uint64_t create_gmma_desc_bmm1_a_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_K_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_K_{guid}; }} inline __device__ constexpr uint64_t create_gmma_desc_bmm2_b_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_V_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_V_{guid}; }} inline __device__ constexpr uint64_t create_gmma_desc_bmm3_a_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_DP_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_DP_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_DP_{guid}; }} inline __device__ constexpr uint64_t create_gmma_desc_bmm3_b_{guid}() {{ return ((uint64_t)0 | GMMA_DESCRIPTOR_SWIZZLE_MODE_IN_BIT_LOCATION_KT_{guid}) | GMMA_DESCRIPTOR_STRIDE_BYTE_OFFSET_IN_BIT_LOCATION_KT_{guid} | GMMA_DESCRIPTOR_LD_BYTE_OFFSET_IN_BIT_LOCATION_KT_{guid}; }} class Gmma_descriptor {{ public: inline __device__ Gmma_descriptor(uint64_t desc_) {{ desc = desc_; }} template inline __device__ void set_smem(uint32_t smem) {{ desc |= (static_cast(smem & 0xFFFFFF) >> 4); max_desc = desc + (BYTES_PER_BUFFER >> 4) * (BUFFER_COUNT - 1); }} template inline __device__ void increment_smem_buffer() {{ int2 &tmp = reinterpret_cast(desc); tmp.x += (desc >= max_desc) ? -(BYTES_PER_BUFFER >> 4) * (BUFFER_COUNT - 1) : (BYTES_PER_BUFFER >> 4); }} uint64_t desc; uint64_t max_desc; }}; alignas(16) uint64_t tmastg_dv_done_mbar[1]; alignas(16) uint64_t tmastg_dk_done_mbar[1]; alignas(16) uint64_t tmastg_dv_dk_done_mbar[1]; alignas(1024) ElementdK smem_dQ_dK_dV[kBufferElems]; alignas(1024) ElementdQ smem_dQ[dqBufferElems]; alignas(1024) ElementdP smem_dP[Tile_M * Tile_N * BUFFERS_DP]; alignas(1024) ElementdK smem_dQ_dK_dV[kBufferElems+vBufferElems]; alignas(1024) ElementdQ smem_dQ[dqBufferElems]; alignas(1024) ElementdP smem_dP[Tile_M * Tile_N * BUFFERS_DP]; alignas(1024) ElementdQ smem_dQ_dK_dV[dqBufferElems]; // dQ shares buffer with dK+dV. 64 KiB total size static constexpr uint32_t SchedulerPipelineStageCount = 2; static constexpr uint32_t StatsPipelineStageCount = 1; static constexpr uint32_t AccumulatorPipelineStageCount = 1; static constexpr uint32_t SmemPipelineStageCount = 1; static constexpr uint32_t num_columns_per_tmem = 512; static constexpr uint32_t columns_per_allocation_slice = 32; using ElementQ = {data_type_kernel}; using ElementK = {data_type_kernel}; using ElementV = {data_type_kernel}; using ElementS = {data_type_kernel}; using ElementdP = {data_type_kernel}; using ElementdO = {data_type_kernel}; using ElementdQ = float; using ElementdK = {dv_dk_data_type_kernel}; using ElementdV = {dv_dk_data_type_kernel}; using ElementAccumulator = float; static constexpr uint32_t BYTES_PER_ELEMENT = {bytes_per_elem}; static constexpr uint32_t Tile_M = 128; static constexpr uint32_t Tile_N = 128; static constexpr uint32_t Tile_K = {cta_tile_k}; static constexpr int TileShape_KQ_VdO_M = Tile_M; static constexpr int TileShape_KQ_VdO_N = Tile_N; static constexpr int TileShape_KQ_VdO_K = Tile_K; static constexpr int TileShape_SdO_dPQ_M = Tile_M; static constexpr int TileShape_SdO_dPQ_N = Tile_K; static constexpr int TileShape_SdO_dPQ_K = Tile_N; static constexpr int TileShape_dPK_M = Tile_N; static constexpr int TileShape_dPK_N = Tile_K; static constexpr int TileShape_dPK_K = Tile_M; static constexpr int UTCMMA_TILE_M = 128; static constexpr int UTCMMA_TILE_N = 128; static constexpr int UTCMMA_TILE_K = 32 / BYTES_PER_ELEMENT; static constexpr int BMMKQ_VdO_XMMAS_K = TileShape_KQ_VdO_K / UTCMMA_TILE_K; static constexpr int BMMSdO_dPQ_XMMAS_K = TileShape_SdO_dPQ_K / UTCMMA_TILE_K; static constexpr int BMMdPK_XMMAS_K = TileShape_dPK_K / UTCMMA_TILE_K; static constexpr int BYTES_PER_MMA_K = UTCMMA_TILE_K * BYTES_PER_ELEMENT; static constexpr int SMEM_BUFFER_SIZE_Q = TileShape_KQ_VdO_N * TileShape_KQ_VdO_K * sizeof(ElementQ); static constexpr int SMEM_BUFFER_SIZE_K = TileShape_KQ_VdO_M * TileShape_KQ_VdO_K * sizeof(ElementK); static constexpr int SMEM_BUFFER_SIZE_V = TileShape_KQ_VdO_M * TileShape_KQ_VdO_K * sizeof(ElementV); static constexpr int SMEM_BUFFER_SIZE_DO = TileShape_KQ_VdO_N * TileShape_KQ_VdO_K * sizeof(ElementdO); static constexpr int SMEM_BUFFER_SIZE_DP = TileShape_dPK_M * TileShape_dPK_K * sizeof(ElementdP); static constexpr int BUFFERS_K = 1; static constexpr int BUFFERS_V = 1; static constexpr int BUFFERS_Q = 2; // Must be 2 static constexpr int BUFFERS_DO = 1; static constexpr int BUFFERS_DP = {buffers_dp}; // the same shared memory space as Q for fp16 inputs static constexpr uint32_t Stages_Q = BUFFERS_Q; static constexpr uint32_t Stages_DO = 1; static constexpr uint32_t Stages_KV = 1; static constexpr uint32_t Softmax_Warp_Groups = 2; static constexpr uint32_t Softmax_Warps = 8; static constexpr uint32_t Epilogue_Warps = 4; static constexpr float inv_ln2 = 1.4426950408889634074f; static constexpr int SchedulerWarpRegs = 80; static constexpr int TmaldgWarpRegs = 80; static constexpr int TmastgWarpRegs = 80; static constexpr int MmaWarpRegs = 80; static constexpr int EpilogueWarpRegs = 136; static constexpr int SoftmaxWarpRegs = 144; static constexpr int threads_per_warp = 32; static constexpr int warps_per_group = 4; static constexpr int threads_per_group = threads_per_warp * warps_per_group; static constexpr int threads_per_cta = threads_per_warp * (warps_per_group + Softmax_Warps + Epilogue_Warps); static constexpr uint32_t kBufferElems = TileShape_KQ_VdO_M * TileShape_KQ_VdO_K; static constexpr uint32_t qBufferElems = TileShape_KQ_VdO_N * TileShape_KQ_VdO_K; static constexpr uint32_t vBufferElems = TileShape_KQ_VdO_M * TileShape_KQ_VdO_K; static constexpr uint32_t doBufferElems = TileShape_KQ_VdO_N * TileShape_KQ_VdO_K; static constexpr uint32_t dqBufferElems = TileShape_dPK_M * TileShape_dPK_N; static constexpr uint32_t qTmaTransactionBytes = qBufferElems * sizeof(ElementQ); static constexpr uint32_t kTmaTransactionBytes = kBufferElems * sizeof(ElementK); static constexpr uint32_t vTmaTransactionBytes = vBufferElems * sizeof(ElementV); static constexpr uint32_t doTmaTransactionBytes = doBufferElems * sizeof(ElementdO); static constexpr uint32_t NUM_REGS_S_FP32 = Tile_N / Softmax_Warp_Groups; static constexpr uint32_t NUM_REGS_DP_FP32 = NUM_REGS_S_FP32; static constexpr int SOFTMAX_BARRIER = 1; struct SharedStorage {{ alignas(1024) ElementK smem_K[kBufferElems * Stages_KV]; alignas(1024) ElementV smem_V[vBufferElems * Stages_KV]; alignas(1024) ElementQ smem_Q[qBufferElems * Stages_Q]; alignas(1024) ElementdO smem_dO[doBufferElems * Stages_DO]; alignas(16) float smem_stats[Tile_N * StatsPipelineStageCount]; alignas(16) float smem_dot_do_o[Tile_N * StatsPipelineStageCount]; alignas(16) uint64_t tma_k_empty_mbar[1]; alignas(16) uint64_t tma_k_full_mbar[1]; alignas(16) uint64_t tma_v_empty_mbar[1]; alignas(16) uint64_t tma_v_full_mbar[1]; alignas(16) uint64_t tma_do_empty_mbar[1]; alignas(16) uint64_t tma_do_full_mbar[1]; alignas(16) uint64_t tma_q_empty_mbar[Stages_Q]; alignas(16) uint64_t tma_q_full_mbar[Stages_Q]; alignas(16) uint64_t bmm_s_done_mbar[1]; alignas(16) uint64_t bmm_p_done_mbar[1]; alignas(16) uint64_t bmm_dq_done_mbar[1]; alignas(16) uint64_t bmm_dk_done_mbar[1]; alignas(16) uint64_t bmm_p_ready_mbar[1]; alignas(16) uint64_t bmm_dv_ready_mbar[1]; alignas(16) uint64_t bmm_dk_ready_mbar[1]; alignas(16) uint64_t bmm_dq_ready_mbar[1]; alignas(16) uint64_t tmastg_dq_done_mbar[Tile_K / 32]; alignas(16) uint64_t sts_dq_done_mbar[Tile_K / 32]; alignas(16) uint64_t stsm_dv_done_mbar[1]; alignas(16) uint64_t stsm_dk_done_mbar[1]; alignas(16) uint64_t scheduler_mbar[SchedulerPipelineStageCount]; alignas(16) uint64_t read_tile_id_done_mbar[SchedulerPipelineStageCount]; uint32_t tmem_base_ptrs; alignas(16) uint32_t tile_id[8 * SchedulerPipelineStageCount]; }}; static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int NUM_GMMA_A_REGISTERS_{guid} = 4; static constexpr int NUM_GMMA_B_REGISTERS_{guid} = 1; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int ELEMS_PER_VECTOR_{guid} = BITS_PER_REGISTER_{r_id} / BITS_PER_ELEMENT_{guid}; static constexpr int NUM_GMMA_A_ELEMENT_{guid} = NUM_GMMA_A_REGISTERS_{guid} * ELEMS_PER_VECTOR_{guid}; static constexpr int NUM_GMMA_B_ELEMENT_{guid} = NUM_GMMA_B_REGISTERS_{guid} * ELEMS_PER_VECTOR_{guid}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX(NUM_GMMA_A_ELEMENT_{guid} * BITS_PER_ELEMENT_{guid} / BITS_PER_REGISTER_{r_id}, 1); static constexpr int BITS_PER_ACC_{guid} = {bits_per_acc}; static constexpr int BYTES_PER_ACC_{guid} = BITS_PER_ACC_{guid} / 8; static constexpr int CTA_TILE_M_{guid} = {cta_tile_m}; static constexpr int CTA_TILE_N_{guid} = {cta_tile_n}; static constexpr int CTA_TILE_K_{guid} = {cta_tile_k}; static constexpr int GMMA_TILE_M_{guid} = {gmma_tile_m}; static constexpr int GMMA_TILE_N_{guid} = {gmma_tile_n}; static constexpr int GMMA_TILE_K_{guid} = {gmma_tile_k}; static constexpr int GROUPS_M_{guid} = {groups_m}; static constexpr int XMMAS_M_{guid} = CTA_TILE_M_{guid} / GMMA_TILE_M_{guid} / GROUPS_M_{guid}; static constexpr int XMMAS_K_{guid} = CTA_TILE_K_{guid} / GMMA_TILE_K_{guid}; static constexpr int CGA_M_{guid} = {cga_m}; static constexpr int CGA_N_{guid} = {cga_n}; static constexpr int THREADS_PER_CTA_{guid} = {threads_per_cta}; static constexpr int BYTES_PER_SMEM_A_{guid} = CTA_TILE_M_{guid} * CTA_TILE_K_{guid} * BITS_PER_ELEMENT_{guid} / 8; static constexpr int BYTES_PER_SMEM_B_{guid} = CTA_TILE_N_{guid} * CTA_TILE_K_{guid} * BITS_PER_ELEMENT_{guid} / 8; static constexpr int STAGES_{guid} = {stages}; static constexpr int GMMA_STAGES_{guid} = {gmma_stages}; static constexpr int PIPELINE_SMEM_BYTES_A_{guid} = BYTES_PER_SMEM_A_{guid} * STAGES_{guid}; static constexpr int PIPELINE_SMEM_BYTES_B_{guid} = BYTES_PER_SMEM_B_{guid} * STAGES_{guid}; static constexpr int BYTES_PER_SMEM_BARRIER_{guid} = 8; // NOTE: sizeof(uint64_t) static constexpr int GMMA_ACC_UPDATE_COUNT_{guid} = 4; static constexpr int TILE_STEP_{guid} = {SMs} / CGA_M_{guid}; static constexpr int MAX_TMA_LOAD_ROW_BYTES_{guid} = 128; static constexpr int SPLIT_K_SLICES_{guid} = {split_k_slices}; static constexpr int SPLIT_K_BUFFERS_{guid} = {split_k_buffers}; static constexpr int SPLIT_K_STRIDE_{guid} = {split_k_stride}; static constexpr int ACC_ELEMS_{guid} = GMMA_TILE_M_{guid} * GMMA_TILE_N_{guid} / THREADS_PER_WARP_GROUP_{r_id}; static constexpr int ACC_COUNT_{guid} = ACC_ELEMS_{guid} * BITS_PER_ACC_{guid} / BITS_PER_REGISTER_{r_id}; static constexpr int SMEM_DMA_BAR_OFFSET = 0; static constexpr int SMEM_MATH_BAR_OFFSET = STAGES_{guid} * BYTES_PER_SMEM_BARRIER_{guid}; static constexpr int SMEM_SCHED_OFFSET = STAGES_{guid} * BYTES_PER_SMEM_BARRIER_{guid} * 2; static constexpr int SMEM_DATA_OFFSET = 1024; static constexpr int SMEM_TRANSACTION_COUNT = {smem_mainloop_a} + {smem_mainloop_b}; static constexpr int EPI_LDS_DONE_BARRIER_ID = 1; static constexpr int EPI_STS_DONE_BARRIER_ID = 2; static constexpr int SCHEDULER_BARRIER_ID = 3; static constexpr int SCHEDULER_DONE_BARRIER_ID = 4; static constexpr int EPI_WARP_BARRIER_ID = 5; static constexpr int SPLIT_K_BARRIER_ID = 6; static constexpr uint{init_size_in_bits}_t SPECIAL_NAN_{guid} = 0x{nan_val}; #define INIT_TYPE_{guid} uint{init_size_in_bits}_t #define GMMA_TYPE_{guid} uint{gmma_size_in_bits}_t inline __device__ void increment_bar_phase_counter(int &bar_phase_counter) {{ bar_phase_counter = bar_phase_counter < (2 * STAGES_{guid} - 1) ? (bar_phase_counter + 1) : 0; }} inline __device__ int get_next_buffer_id(int buffer_id) {{ return buffer_id < (STAGES_{guid} - 1) ? (buffer_id + 1) : 0; }} inline __device__ uint32_t get_math_bar_phase(int bar_phase_counter) {{ return bar_phase_counter < STAGES_{guid} ? 0 : 1; }} inline __device__ uint32_t get_dma_bar_phase(int bar_phase_counter) {{ return bar_phase_counter < STAGES_{guid} ? 1 : 0; }} inline __device__ void update_filter_position_{guid}( int32_t &coord_c, int32_t &filter_t, int32_t &filter_r, int32_t &filter_s, uint32_t T, uint32_t R, uint32_t S) {{ if (filter_s < S - 1) {{ filter_s++; }} else {{ if (filter_r < R - 1) {{ filter_r++; }} else {{ if (filter_t < T - 1) {{ filter_t++; }} else {{ coord_c += CTA_TILE_K_{guid}; filter_t = 0; }} filter_r = 0; }} filter_s = 0; }} }} static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int NUM_GMMA_A_REGISTERS_{guid} = 4; static constexpr int NUM_GMMA_B_REGISTERS_{guid} = 4; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int ELEMS_PER_VECTOR_{guid} = BITS_PER_REGISTER_{r_id} / BITS_PER_ELEMENT_{guid}; static constexpr int NUM_GMMA_A_ELEMENT_{guid} = NUM_GMMA_A_REGISTERS_{guid} * ELEMS_PER_VECTOR_{guid}; static constexpr int NUM_GMMA_B_ELEMENT_{guid} = NUM_GMMA_B_REGISTERS_{guid} * ELEMS_PER_VECTOR_{guid}; static constexpr int BITS_PER_ACC_{guid} = {bits_per_acc}; static constexpr int BYTES_PER_ACC_{guid} = BITS_PER_ACC_{guid} / 8; static constexpr int STAGES_{guid} = {stages}; static constexpr int CTA_TILE_M_{guid} = {cta_tile_m}; static constexpr int CTA_TILE_N_{guid} = {cta_tile_n}; static constexpr int CTA_TILE_K_{guid} = {cta_tile_k}; static constexpr int WARP_TILE_M_{guid} = {warp_tile_m}; static constexpr int WARP_TILE_N_{guid} = {warp_tile_n}; static constexpr int WARP_TILE_K_{guid} = {warp_tile_k}; static constexpr int WARPS_M_{guid} = CTA_TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARPS_N_{guid} = CTA_TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int WARPS_K_{guid} = 1; static constexpr int NUM_WARPS_{guid} = WARPS_M_{guid} * WARPS_N_{guid} * WARPS_K_{guid}; static constexpr int XMMAS_M_{guid} = WARP_TILE_M_{guid} / 16; static constexpr int XMMAS_N_{guid} = WARP_TILE_N_{guid} / 16; static constexpr int XMMAS_K_{guid} = WARP_TILE_K_{guid} / (256 / BITS_PER_ELEMENT_{guid}); static constexpr int QMMA_2xACC_COUNT_{guid} = 4; static constexpr int MAX_TMA_LOAD_ROW_BYTES_{guid}= 128; static constexpr int ACC_COUNT_{guid} = 8 * BITS_PER_ACC_{guid} / BITS_PER_REGISTER_{r_id}; static constexpr int SPLIT_K_SLICES_{guid} = {split_k_slices}; static constexpr int SPLIT_K_BUFFERS_{guid} = {split_k_buffers}; __device__ r32 oob_padding_vals_{guid}[4]{{0x7ff77ff7, 0x7ff77ff7, 0x7ff77ff7, 0x7ff77ff7}}; static constexpr uint{init_size_in_bits}_t SPECIAL_NAN_{guid} = 0x{nan_val}; #define INIT_TYPE_{guid} uint{init_size_in_bits}_t #define GMMA_TYPE_{guid} uint{gmma_size_in_bits}_t static constexpr int EPILOGUE_BARRIER_ID = 1; static constexpr int SchedulerPipelineStageCount = 2; static constexpr int TmemAccPipelineStageCount = {tmem_stages}; static constexpr int NumColumnsPerTmem = 512; static constexpr int ColumnsPerAllocationSlice = 32; static constexpr int CTA_TILE_M_{guid} = {cta_tile_m}; static constexpr int CTA_TILE_N_{guid} = {cta_tile_n}; static constexpr int CTA_TILE_K_{guid} = {cta_tile_k}; static constexpr int STAGES_{guid} = {stages}; static constexpr int CGA_M_{guid} = {cga_m}; static constexpr int CGA_N_{guid} = {cga_n}; static constexpr int CTA_MMA_{guid} = {groups_m}; static constexpr int SPLIT_K_SLICES_{guid} = {split_k_slices}; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_ACC_{guid} = {bits_per_acc}; static constexpr int BYTES_PER_ACC_{guid} = BITS_PER_ACC_{guid} / 8; static constexpr int BYTES_PER_MBAR_{guid} = 16; static constexpr int BYTES_PER_SMEM_A_{guid} = CTA_TILE_M_{guid} * CTA_TILE_K_{guid} * BITS_PER_ELEMENT_{guid} / 8; static constexpr int BYTES_PER_SMEM_B_{guid} = CTA_TILE_N_{guid} * CTA_TILE_K_{guid} * BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_BANK_{guid} = 128; static constexpr int BYTES_PER_BANK_{guid} = BITS_PER_BANK_{guid} / 8; static constexpr int ELEMS_PER_BANK_{guid} = BITS_PER_BANK_{guid} / BITS_PER_ELEMENT_{guid}; static constexpr int MAX_TMA_LOAD_ROW_BYTES_{guid} = 128; static constexpr int TMA_LOAD_ALIGNMENT_{guid} = 1024; static constexpr int SMEM_BARRIER_OFFSET_{guid} = 2048; static constexpr int BYTES_PER_MMA_K_{guid} = 32; static constexpr int XMMAS_K_{guid} = CTA_TILE_K_{guid} * BITS_PER_ELEMENT_{guid} / 8 / BYTES_PER_MMA_K_{guid}; static constexpr int EPI_WARP_BARRIER_ID = 5; static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int BYTES_PER_MBAR_{guid} = 16; static constexpr int NUM_GMMA_A_REGISTERS_{guid} = 4; static constexpr int NUM_GMMA_B_REGISTERS_{guid} = 4; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_ACC_{guid} = {bits_per_acc}; static constexpr int BYTES_PER_ACC_{guid} = BITS_PER_ACC_{guid} / 8; static constexpr int ELEMS_PER_VECTOR_{guid} = BITS_PER_REGISTER_{r_id} / BITS_PER_ELEMENT_{guid}; static constexpr int NUM_GMMA_A_ELEMENT_{guid} = NUM_GMMA_A_REGISTERS_{guid} * ELEMS_PER_VECTOR_{guid}; static constexpr int NUM_GMMA_B_ELEMENT_{guid} = NUM_GMMA_B_REGISTERS_{guid} * ELEMS_PER_VECTOR_{guid}; static constexpr int CTA_TILE_M_{guid} = {cta_tile_m}; static constexpr int CTA_TILE_N_{guid} = {cta_tile_n}; static constexpr int CTA_TILE_K_{guid} = {cta_tile_k}; static constexpr int WARP_TILE_M_{guid} = {warp_tile_m}; static constexpr int WARP_TILE_N_{guid} = {warp_tile_n}; static constexpr int WARP_TILE_K_{guid} = {warp_tile_k}; static constexpr int GROUPS_M_{guid} = {groups_m}; static constexpr int WARPS_M_{guid} = CTA_TILE_M_{guid} / GROUPS_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARPS_N_{guid} = CTA_TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int WARPS_K_{guid} = CTA_TILE_K_{guid} / WARP_TILE_K_{guid}; static constexpr int XMMAS_M_{guid} = WARP_TILE_M_{guid} / {gmma_tile_m}; static constexpr int XMMAS_N_{guid} = WARP_TILE_N_{guid} / {gmma_tile_n}; static constexpr int XMMAS_K_{guid} = WARP_TILE_K_{guid} / {gmma_tile_k}; static constexpr int CGA_M_{guid} = {cga_m}; static constexpr int CGA_N_{guid} = {cga_n}; static constexpr int STAGES_{guid} = {stages}; static constexpr int SCHEDULER_PIPELINE_STAGES_{guid} = 2; static constexpr int MAX_TMA_LOAD_ROW_BYTES_{guid} = 128; static constexpr int TMA_LOAD_ALIGNMENT_{guid} = 1024; static constexpr int SPLIT_K_SLICES_{guid} = {split_k_slices}; static constexpr int SMEM_DATA_OFFSET_{guid} = 2048;uint32_t actual_lean_tile_id = (lean_tile_id / num_2d_tile_k); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[kv_stages]), /* 1 tma/32 ldgsts */ {tma_v_full_threads}); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_v_empty_mbar[kv_stages]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_full_mbar[0]), /* 1 correction */ warps_per_group * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile0_done_mbar[kv_stages]), /* 1 mma */ 1); #pragma unroll for (int i = 0; i < TILE_O_{guid} * BYTES_PER_ELEMENT; i+=128) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_full_mbar[i/128]), /* 1 correction */ warps_per_group * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_o_1_full_mbar[i/128]), /* 1 correction */ warps_per_group * 32); }} smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.epilogue_done_mbar[0]), /* 1 tmastg */ 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tmaldg_tile_started_mbar[0]), 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_ready_mbar[0]), /* 4 Softmax */ warps_per_group * 32 * 2); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[1]), /* 4 Softmax */ warps_per_group * 32 * 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_ready_mbar[1]), /* 4 Softmax */ warps_per_group * 32 * 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile0_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile1_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.stat_tile1_full_mbar[0]), /* 4 Softmax */ warps_per_group * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.stat_tile1_empty_mbar[0]), /* 4 Softmax */ warps_per_group * 32);const int num_2d_tile_k = (attnDesc.d_v + 128 - 1) / 128; {decl_num_2d_tile_k} const int lean_tile_id = blockIdx.x; {actual_lean_tile_id_decl} const int q_step_{guid} = 0; const int head_coord_from_grid_{guid} = blockIdx.y; int head_coord_{guid}, head_coord_k_{guid}, head_coord_v_{guid}, head_coord_q_offset_{guid}, actual_heads_packed_{guid}; if (attnDesc.k_h >= attnDesc.v_h) {{ head_coord_k_{guid} = head_coord_from_grid_{guid} / FORT_DIV_UP(attnDesc.q_heads_per_k, TILE_M_{guid}); head_coord_q_offset_{guid} = head_coord_from_grid_{guid} % FORT_DIV_UP(attnDesc.q_heads_per_k, TILE_M_{guid}); head_coord_{guid} = head_coord_k_{guid} * attnDesc.q_heads_per_k + head_coord_q_offset_{guid} * TILE_M_{guid}; head_coord_v_{guid} = head_coord_{guid} / attnDesc.q_heads_per_v; actual_heads_packed_{guid} = min(TILE_M_{guid}, attnDesc.q_heads_per_k - head_coord_q_offset_{guid} * TILE_M_{guid}); }} else {{ head_coord_v_{guid} = head_coord_from_grid_{guid} / FORT_DIV_UP(attnDesc.q_heads_per_v, TILE_M_{guid}); head_coord_q_offset_{guid} = head_coord_from_grid_{guid} % FORT_DIV_UP(attnDesc.q_heads_per_v, TILE_M_{guid}); head_coord_{guid} = head_coord_v_{guid} * attnDesc.q_heads_per_v + head_coord_q_offset_{guid} * TILE_M_{guid}; head_coord_k_{guid} = head_coord_{guid} / attnDesc.q_heads_per_k; actual_heads_packed_{guid} = min(TILE_M_{guid}, attnDesc.q_heads_per_v - head_coord_q_offset_{guid} * TILE_M_{guid}); }} const int batch_coord_{guid} = blockIdx.z; const int p_row_{guid} = 0; {decl_num_2d_tile_k} const int q_step_{guid} = blockIdx.x{num_2d_tile_k}; const int head_coord_{guid} = blockIdx.y; const int head_coord_k_{guid} = head_coord_{guid} / (attnDesc.q_h / attnDesc.k_h); const int head_coord_v_{guid} = head_coord_{guid} / (attnDesc.q_h / attnDesc.v_h); const int batch_coord_{guid} = blockIdx.z; const int p_row_{guid} = q_step_{guid} * TILE_M_{guid}; int actual_seqlen_kv_{guid} = {input_kv}[batch_coord_{guid}]; int actual_seqlen_q_{guid} = actual_heads_packed_{guid}; int oob_for_stats_{guid} = {input_q}[batch_coord_{guid}]; int actual_seqlen_kv_{guid} = {input_kv}[batch_coord_{guid}]; int actual_seqlen_q_{guid} = {input_q}[batch_coord_{guid}]; int actual_seqlen_kv_{guid} = attnDesc.s_kv; int actual_seqlen_q_{guid} = attnDesc.s_q; int oob_for_stats_{guid} = attnDesc.s_q; const int tid = threadIdx.x; const int wid = tid / THREADS_PER_WARP_{r_id}; const int tiw = tid % THREADS_PER_WARP_{r_id}; uint32_t smem_{guid} = smem_0; uint32_t smem_q_{guid} = smem_{guid} + SMEM_OFFSET_Q_{guid}; uint32_t smem_k_{guid} = smem_{guid} + SMEM_OFFSET_K_{guid}; uint32_t smem_v_{guid} = smem_{guid} + SMEM_OFFSET_V_{guid}; uint32_t smem_d_{guid} = smem_{guid} + SMEM_OFFSET_D_{guid}; uint32_t smem_o_{guid} = smem_{guid} + SMEM_OFFSET_O_{guid}; uint32_t smem_s_{guid} = smem_{guid} + SMEM_OFFSET_D_{guid}; uint32_t smem_acc_o_{guid} = smem_{guid} + SMEM_ACC_O_{guid}; {head_batch_decls} {actual_seqlen_decls} {kv_seqlen_prefix_decls} uint32_t smem_v_tr_{guid} = smem_v_{guid} + SMEM_V_{guid} * BUFFERS_V_{guid}; smem_bar_init(smem_bar_tile_id_tma_{guid}, 1); if (wid == 0) {{ smem_bar_init(smem_bar_bias_tma_{guid}, 2); smem_bar_init(smem_bar_bias_mma_{guid}, 4); smem_bar_init(smem_bar_bias_tma_{guid} + 8, 2); smem_bar_init(smem_bar_bias_mma_{guid} + 8, 4); }} const uint32_t tid = threadIdx.x % THREADS_PER_GROUP_{r_id}; const uint32_t gid = threadIdx.x / THREADS_PER_GROUP_{r_id}; const uint32_t wid = threadIdx.x / 32; const uint32_t tiw = threadIdx.x % 32; const uint32_t elect_one = fort::elect_one_sync(); uint32_t smem_{guid} = smem_0; uint32_t smem_bar_qkv_{guid} = smem_{guid}; uint32_t smem_q_{guid} = smem_{guid} + SMEM_OFFSET_Q_{guid}; uint32_t smem_k_{guid} = smem_{guid} + SMEM_OFFSET_K_{guid}; uint32_t smem_v_{guid} = smem_{guid} + SMEM_OFFSET_V_{guid}; uint32_t smem_o_{guid} = smem_{guid} + SMEM_OFFSET_O_{guid}; uint32_t smem_d_{guid} = smem_{guid} + SMEM_OFFSET_D_{guid}; uint32_t smem_band_bias_{guid} = smem_{guid} + SMEM_OFFSET_BAND_BIAS_{guid};{smem_v_tr_decl} uint32_t smem_bar_qkv_tma_{guid} = smem_bar_qkv_{guid}; uint32_t smem_bar_qkv_mma_{guid} = smem_bar_qkv_{guid} + 1 * 8 * (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_V_{guid} + BUFFERS_D_{guid} + {v_tr_buffers_code}); uint32_t smem_tile_id_{guid} = smem_bar_qkv_{guid} + 2 * 8 * (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_V_{guid} + BUFFERS_D_{guid} + {v_tr_buffers_code}); uint32_t smem_bar_tile_id_tma_{guid} = smem_tile_id_{guid} + 16; uint32_t smem_bar_bias_tma_{guid} = smem_bar_tile_id_tma_{guid} + 8; uint32_t smem_bar_bias_mma_{guid} = smem_bar_bias_tma_{guid} + 8 * 2; if (elect_one) {{ for (int i = wid; i < (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_V_{guid} + BUFFERS_D_{guid} + {v_tr_buffers_code}); i+=12) {{ smem_bar_init(smem_bar_qkv_tma_{guid} + i * 8, 1); smem_bar_init(smem_bar_qkv_mma_{guid} + i * 8, 2); }}{smem_bar_tile_id_tma_init} smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_o_1_empty_mbar[0]), /* 1 tmastg */ 32); const int tid = threadIdx.x % threads_per_group; const int wid = threadIdx.x / 32; const int tiw = threadIdx.x % 32; const uint32_t elect_one = elect_one_sync(); if (wid == 0) {{ tmem_allocate_1sm(num_columns_per_tmem, cast_smem_ptr_to_uint(&shared_storage.tmem_base_ptrs)); }} if (wid == 0 && elect_one) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_empty_mbar[0]), /* 1 tmastg */ 32); #pragma unroll for (int q_stage = 0; q_stage < stages_q; q_stage++) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), /* 1 tma */ 1); }} smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[0]), /* 4 Softmax */ warps_per_group * 32 * 2); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_full_mbar[0]), /* 4 Softmax */ warps_per_group * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_empty_mbar[0]), /* 4 Softmax */ warps_per_group * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.empty_mainloop_mbar[0]), /* 4 Softmax */ warps_per_group * 32 * 1); #pragma unroll for (int sched_steps = 0; sched_steps < SchedulerPipelineStageCount; sched_steps++) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_steps]), /* 1 sched */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.read_tile_id_done_mbar[sched_steps]), SoftmaxWarps + CorrectionWarps + 1 + 1 + 1); }} #pragma unroll for (int kv_stages = 0; kv_stages < stages_kv; kv_stages++) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[kv_stages]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[kv_stages]), /* 1 tma/32 ldgsts */ {tma_k_full_threads}); __syncthreads(); uint32_t base_tmem_addr = shared_storage.tmem_base_ptrs; const uint32_t tid = threadIdx.x % THREADS_PER_GROUP_{r_id}; const uint32_t gid = threadIdx.x / THREADS_PER_GROUP_{r_id}; const uint32_t wid = threadIdx.x / 32; const uint32_t tiw = threadIdx.x % 32; const uint32_t elect_one = elect_one_sync(); uint32_t smem_{guid} = smem_0; uint32_t smem_q_{guid} = smem_{guid} + SMEM_OFFSET_Q_{guid}; uint32_t smem_k_{guid} = smem_{guid} + SMEM_OFFSET_K_{guid}; uint32_t smem_v_{guid} = smem_{guid} + SMEM_OFFSET_V_{guid}; uint32_t smem_do_{guid} = smem_{guid} + SMEM_OFFSET_O_{guid}; uint32_t smem_stats_{guid} = smem_{guid} + SMEM_OFFSET_STATS_{guid}; uint32_t smem_dv_{guid} = smem_{guid} + SMEM_OFFSET_DV_{guid}; uint32_t smem_dk_{guid} = smem_{guid} + SMEM_OFFSET_DK_{guid}; uint32_t smem_dq_{guid} = smem_{guid} + SMEM_OFFSET_DQ_{guid}; uint32_t smem_dp_{guid} = smem_{guid} + SMEM_OFFSET_P_{guid}; uint32_t smem_bar_qkv_tma_{guid} = smem_{guid}; uint32_t smem_bar_qkv_mma_{guid} = smem_{guid} + 1 * 8 * (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_O_{guid} + BUFFERS_DQ_{guid} + BUFFERS_STATS_{guid}); uint32_t smem_tile_id_{guid} = smem_{guid} + 2 * 8 * (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_O_{guid} + BUFFERS_DQ_{guid} + BUFFERS_STATS_{guid}); if (elect_one) {{ for (int i = wid; i < BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_O_{guid}; i+=12) {{ smem_bar_init(smem_bar_qkv_tma_{guid} + i * 8, 1); smem_bar_init(smem_bar_qkv_mma_{guid} + i * 8, 2 * WARPS_PER_GROUP_{r_id}); }} if (wid == 0) {{ uint32_t smem_bar_dq_tma = smem_bar_qkv_tma_{guid} + 8 * (BUFFERS_O_{guid} + BUFFERS_Q_{guid} + BUFFERS_K_{guid}); uint32_t smem_bar_dq_mma = smem_bar_qkv_mma_{guid} + 8 * (BUFFERS_O_{guid} + BUFFERS_Q_{guid} + BUFFERS_K_{guid}); uint32_t smem_bar_stats_tma = smem_bar_dq_tma + 8 * BUFFERS_DQ_{guid}; uint32_t smem_bar_stats_mma = smem_bar_dq_mma + 8 * BUFFERS_DQ_{guid}; smem_bar_init(smem_bar_dq_tma, 1); smem_bar_init(smem_bar_dq_mma, THREADS_PER_WARP_GROUP_{r_id}{x2}); #pragma unroll for (int i = 0; i < BUFFERS_STATS_{guid}; ++i) {{ smem_bar_init(smem_bar_stats_tma + i * 8, 1); smem_bar_init(smem_bar_stats_mma + i * 8, 2 * WARPS_PER_GROUP_{r_id}); }} }} }} const uint32_t tid = threadIdx.x % THREADS_PER_GROUP_{r_id}; const uint32_t gid = threadIdx.x / THREADS_PER_GROUP_{r_id}; const uint32_t wid = threadIdx.x / 32; const uint32_t tiw = threadIdx.x % 32; const uint32_t elect_one = elect_one_sync(); uint32_t smem_{guid} = smem_0; uint32_t smem_q_{guid} = smem_{guid} + SMEM_OFFSET_Q_{guid}; uint32_t smem_k_{guid} = smem_{guid} + SMEM_OFFSET_K_{guid}; uint32_t smem_v_{guid} = smem_{guid} + SMEM_OFFSET_V_{guid}; uint32_t smem_do_{guid} = smem_{guid} + SMEM_OFFSET_O_{guid}; uint32_t smem_stats_{guid} = smem_{guid} + SMEM_OFFSET_STATS_{guid}; uint32_t smem_dv_{guid} = smem_{guid} + SMEM_OFFSET_DV_{guid}; uint32_t smem_dk_{guid} = smem_{guid} + SMEM_OFFSET_DK_{guid}; uint32_t smem_dq_{guid} = smem_{guid} + SMEM_OFFSET_DQ_{guid}; uint32_t smem_dp_{guid} = smem_{guid} + SMEM_OFFSET_P_{guid}; uint32_t smem_q_tr_{guid} = smem_q_{guid} + SMEM_Q_{guid} * BUFFERS_Q_{guid}; uint32_t smem_k_tr_{guid} = smem_k_{guid} + SMEM_K_{guid} * BUFFERS_K_{guid}; uint32_t smem_do_tr_{guid} = smem_do_{guid} + SMEM_DO_{guid} * BUFFERS_O_{guid}; uint32_t smem_bar_qkv_tma_{guid} = smem_{guid}; uint32_t smem_bar_qkv_mma_{guid} = smem_{guid} + 1 * 8 * (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_O_{guid} + BUFFERS_DQ_{guid} + BUFFERS_STATS_{guid} + BUFFERS_DV_{guid} + BUFFERS_DK_{guid}); uint32_t smem_tile_id_{guid} = smem_{guid} + 2 * 8 * (BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_O_{guid} + BUFFERS_DQ_{guid} + BUFFERS_STATS_{guid} + BUFFERS_DV_{guid} + BUFFERS_DK_{guid}); if (elect_one) {{ for (int i = wid; i < BUFFERS_Q_{guid} + BUFFERS_K_{guid} + BUFFERS_O_{guid}; i+=12) {{ smem_bar_init(smem_bar_qkv_tma_{guid} + i * 8, 1); smem_bar_init(smem_bar_qkv_mma_{guid} + i * 8, 2); }} if (wid == 0) {{ uint32_t smem_bar_dq_tma = smem_bar_qkv_tma_{guid} + 8 * (BUFFERS_O_{guid} + BUFFERS_Q_{guid} + BUFFERS_K_{guid}); uint32_t smem_bar_dq_mma = smem_bar_qkv_mma_{guid} + 8 * (BUFFERS_O_{guid} + BUFFERS_Q_{guid} + BUFFERS_K_{guid}); uint32_t smem_bar_stats_tma = smem_bar_dq_tma + 8 * BUFFERS_DQ_{guid}; uint32_t smem_bar_stats_mma = smem_bar_dq_mma + 8 * BUFFERS_DQ_{guid}; uint32_t smem_bar_dv_tma = smem_bar_stats_tma + 8 * BUFFERS_STATS_{guid}; uint32_t smem_bar_dv_mma = smem_bar_stats_mma + 8 * BUFFERS_STATS_{guid}; uint32_t smem_bar_dk_tma = smem_bar_dv_tma + 8 * BUFFERS_DV_{guid}; uint32_t smem_bar_dk_mma = smem_bar_dv_mma + 8 * BUFFERS_DV_{guid}; smem_bar_init(smem_bar_dq_tma, 1); smem_bar_init(smem_bar_dq_mma, 1); #pragma unroll for (int i = 0; i < BUFFERS_STATS_{guid}; ++i) {{ smem_bar_init(smem_bar_stats_tma + i * 8, 1); smem_bar_init(smem_bar_stats_mma + i * 8, 2); }} #pragma unroll for (int i = 0; i < BUFFERS_DV_{guid}; ++i) {{ smem_bar_init(smem_bar_dv_tma + i * 8, 1); smem_bar_init(smem_bar_dv_mma + i * 8, 2); }} #pragma unroll for (int i = 0; i < BUFFERS_DK_{guid}; ++i) {{ smem_bar_init(smem_bar_dk_tma + i * 8, 1); smem_bar_init(smem_bar_dk_mma + i * 8, 2); }} }} }} __syncthreads(); const int tid = threadIdx.x % 128; const int group_id = threadIdx.x / 128; const int wid = tid / THREADS_PER_WARP_{r_id}; const int tiw = tid % THREADS_PER_WARP_{r_id}; uint32_t smem_{guid} = smem_0; uint32_t smem_q_{guid} = smem_{guid} + SMEM_OFFSET_Q_{guid}; uint32_t smem_k_{guid} = smem_{guid} + SMEM_OFFSET_K_{guid}; uint32_t smem_v_{guid} = smem_{guid} + SMEM_OFFSET_V_{guid}; uint32_t smem_o_{guid} = smem_{guid} + SMEM_OFFSET_O_{guid}; uint32_t smem_p_{guid} = smem_{guid} + SMEM_OFFSET_P_{guid}; const int kv_step_{guid} = blockIdx.x; const int head_coord_{guid} = blockIdx.y; const int head_coord_k_{guid} = head_coord_{guid} / (attnDesc.q_h / attnDesc.k_h); const int head_coord_v_{guid} = head_coord_{guid} / (attnDesc.q_h / attnDesc.v_h); const int batch_coord_{guid} = blockIdx.z; const int p_row_{guid} = kv_step_{guid} * TILE_M_{guid}; int actual_seqlen_kv_{guid} = {input_kv}[batch_coord_{guid}]; int actual_seqlen_q_{guid} = {input_q}[batch_coord_{guid}]; int actual_seqlen_kv_{guid} = attnDesc.s_kv; int actual_seqlen_q_{guid} = attnDesc.s_q; smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tmastg_dv_done_mbar[0]), /* 1 TMASTG */ 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tmastg_dk_done_mbar[0]), /* 1 TMASTG */ 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tmastg_dv_dk_done_mbar[0]), /* 1 TMASTG */ 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_dk_done_mbar[0]), /* 1 mma */ 1); const int tid = threadIdx.x % threads_per_group; const int wid = threadIdx.x / 32; const int tiw = threadIdx.x % 32; const uint32_t elect_one = elect_one_sync(); if (wid == 0) {{ tmem_allocate_1sm(num_columns_per_tmem, cast_smem_ptr_to_uint(&shared_storage.tmem_base_ptrs)); }} if (wid == 0 && elect_one) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[0]), /* 1 tma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_v_empty_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[0]), /* 1 tma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_do_empty_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_do_full_mbar[0]), /* 1 tma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_s_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_p_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_p_ready_mbar[0]), /* 1 softmax */ Epilogue_Warps * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_dv_ready_mbar[0]), /* 1 softmax */ Softmax_Warps * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_dk_ready_mbar[0]), /* 1 softmax */ Softmax_Warps * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_ready_mbar[0]), /* 1 softmax */ Softmax_Warps * 32); #pragma unroll for (int dq_steps = 0; dq_steps < Tile_K / 32; dq_steps++) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tmastg_dq_done_mbar[dq_steps]), /* 1 TMASTG */ 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.sts_dq_done_mbar[dq_steps]), /* 1 mma */ Epilogue_Warps * 32); }} smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.stsm_dv_done_mbar[0]), /* 1 mma */ Epilogue_Warps * 32); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.stsm_dk_done_mbar[0]), /* 1 mma */ Epilogue_Warps * 32); #pragma unroll for (int sched_steps = 0; sched_steps < SchedulerPipelineStageCount; sched_steps++) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_steps]), /* 1 sched */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.read_tile_id_done_mbar[sched_steps]), /* 1 sched */ Softmax_Warps + Epilogue_Warps + 1 + 1 + 1); }} #pragma unroll for (int q_stage = 0; q_stage < Stages_Q; q_stage++) {{ smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage]), /* 1 mma */ 1); smem_bar_init_cta(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), /* 1 tma */ 1); }} }} __syncthreads(); uint32_t base_tmem_addr = shared_storage.tmem_base_ptrs; const int is_math_warp = (wid == 4) || (wid == 5) || (wid == 6 ) || (wid == 7 ); const int is_epilogue_warp = (wid == 8) || (wid == 9) || (wid == 10) || (wid == 11); const int is_math_warp = (wid >= 4); const int is_epilogue_warp = 0; const int tid = threadIdx.x % THREADS_PER_WARP_GROUP_{r_id}; const int wid = threadIdx.x / THREADS_PER_WARP_{r_id}; const int tiw = threadIdx.x % THREADS_PER_WARP_{r_id}; const int bid = blockIdx.x; dim3 cta_id_in_cga = ctaid_in_cga(); const uint32_t elect_one = elect_one_sync(); const int is_dma_a_warp = (wid == 0); const int is_dma_b_warp = (wid == 2);{math_and_epilogue_warps_code} const int is_scheduler_warp = (wid == 3); const int is_unused_warp = (wid == 1); uint32_t smem_dma_bar = smem_{r_id} + SMEM_DMA_BAR_OFFSET; uint32_t smem_math_bar = smem_{r_id} + SMEM_MATH_BAR_OFFSET; uint32_t smem_scheduler_data = smem_{r_id} + SMEM_SCHED_OFFSET; if (elect_one) {{ if (wid < STAGES_{guid}) {{ smem_bar_init(smem_dma_bar + wid * BYTES_PER_SMEM_BARRIER_{guid}, 1); smem_bar_init(smem_math_bar + wid * BYTES_PER_SMEM_BARRIER_{guid}, (CGA_M_{guid} + CGA_N_{guid} - 1) * GROUPS_M_{guid}); }} }} __syncthreads(); {cga_arrive} const int is_mainloop_warp = (wid >= 8) && (wid < 12); uint32_t smem_mainloop_bar = smem_tmem_base_addr + 16; smem_bar_init(smem_mainloop_bar + i * BYTES_PER_MBAR_{guid}, WARPS_PER_GROUP_{r_id} * CTA_MMA_{guid}); const int tid = threadIdx.x % THREADS_PER_GROUP_{r_id}; const int wid = threadIdx.x / 32; const int tiw = threadIdx.x % 32; const uint32_t elect_one = elect_one_sync(); dim3 cta_id_in_cga = ctaid_in_cga(); bool is_2cta_peer_cta = (cta_id_in_cga.x % CTA_MMA_{guid} == 0); constexpr int MAX_CLUSTER_SIZE = 16; //MAX_MCAST_CLUSTER_SIZE; constexpr int THREAD_GRANULARITY = THREADS_PER_WARP_{r_id} / MAX_CLUSTER_SIZE; int remote_cta_id = (threadIdx.x % THREADS_PER_WARP_{r_id}) / THREAD_GRANULARITY; uint64_t remap_table = 0x369CF258BE147AD0ull; remote_cta_id = (remap_table >> (remote_cta_id * 4)) & 0xF; const int buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < CGA_M_{guid} * CGA_N_{guid}) && ((remote_cta_id / CGA_M_{guid} == cta_id_in_cga.y) || (remote_cta_id % CGA_M_{guid} == cta_id_in_cga.x)); const int sched_buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < CGA_M_{guid} * CGA_N_{guid}); const int is_scheduler_warp = (wid == 0); const int is_tmaldg_warp = (wid == 1); const int is_mma_warp = (wid == 2); const int is_unused_warp = (wid == 3); const int is_epilogue_warp = (wid >= 4) && (wid < 8);{decl_mainloop_warps_code} uint32_t smem_tile_coord = smem_{shared_id}; uint32_t smem_tile_coord_empty_bar = smem_tile_coord + SchedulerPipelineStageCount * 16; uint32_t smem_tile_coord_full_bar = smem_tile_coord_empty_bar + SchedulerPipelineStageCount * BYTES_PER_MBAR_{guid}; uint32_t smem_ab_full_bar = smem_tile_coord_full_bar + SchedulerPipelineStageCount * BYTES_PER_MBAR_{guid}; uint32_t smem_ab_empty_bar = smem_ab_full_bar + STAGES_{guid} * BYTES_PER_MBAR_{guid}; uint32_t tmem_acc_full_smem_bar = smem_ab_empty_bar + STAGES_{guid} * BYTES_PER_MBAR_{guid}; uint32_t tmem_acc_empty_smem_bar = tmem_acc_full_smem_bar + TmemAccPipelineStageCount * BYTES_PER_MBAR_{guid}; uint32_t smem_tmem_base_addr = tmem_acc_empty_smem_bar + TmemAccPipelineStageCount * BYTES_PER_MBAR_{guid};{calc_mainloop_bar_addr_code} if (is_scheduler_warp) {{ tmem_allocate_1sm(NumColumnsPerTmem, smem_tmem_base_addr); }} if (is_scheduler_warp && elect_one) {{ #pragma unroll for (int i = 0; i < STAGES_{guid}; ++i) {{ smem_bar_init(smem_ab_full_bar + i * BYTES_PER_MBAR_{guid}, 1); smem_bar_init(smem_ab_empty_bar + i * BYTES_PER_MBAR_{guid}, CGA_M_{guid} / CTA_MMA_{guid} + CGA_N_{guid} - 1);{init_mainloop_bar_code} }} #pragma unroll for (int i = 0; i < SchedulerPipelineStageCount; ++i) {{ smem_bar_init(smem_tile_coord_full_bar + i * BYTES_PER_MBAR_{guid}, 1); smem_bar_init(smem_tile_coord_empty_bar + i * BYTES_PER_MBAR_{guid}, CGA_M_{guid} * CGA_N_{guid} * {num_used_warps} + CGA_M_{guid} * CGA_N_{guid} / CTA_MMA_{guid}); // 7 + 4 warps: Sched, TMA, MMA, 4x Epilogue, 4x Mainloop }} #pragma unroll for (int i = 0; i < TmemAccPipelineStageCount; ++i) {{ smem_bar_init(tmem_acc_full_smem_bar + i * BYTES_PER_MBAR_{guid}, 1); smem_bar_init(tmem_acc_empty_smem_bar + i * BYTES_PER_MBAR_{guid}, THREADS_PER_GROUP_{r_id} * CTA_MMA_{guid}); }} }} __syncthreads(); uint32_t base_tmem_addr_{guid}; lds_32(&base_tmem_addr_{guid}, smem_tmem_base_addr); if (CGA_M_{guid} * CGA_N_{guid} > 1) {{ cga_arrive(); cga_wait(); }} const int tid = threadIdx.x; const int wid = threadIdx.x / THREADS_PER_WARP_{r_id}; const int tiw = threadIdx.x % THREADS_PER_WARP_{r_id}; const uint32_t elect_one = elect_one_sync(); dim3 cta_id_in_cga = ctaid_in_cga(); constexpr int MAX_CLUSTER_SIZE = 16; //MAX_MCAST_CLUSTER_SIZE; constexpr int THREAD_GRANULARITY = THREADS_PER_WARP_{r_id} / MAX_CLUSTER_SIZE; int remote_cta_id = (threadIdx.x % THREADS_PER_WARP_{r_id}) / THREAD_GRANULARITY; uint64_t remap_table = 0x369CF258BE147AD0ull; remote_cta_id = (remap_table >> (remote_cta_id * 4)) & 0xF; const int buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < CGA_M_{guid} * CGA_N_{guid}) && ((remote_cta_id / CGA_M_{guid} == cta_id_in_cga.y) || (remote_cta_id % CGA_M_{guid} == cta_id_in_cga.x)); const int sched_buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < CGA_M_{guid} * CGA_N_{guid}); const int is_scheduler_warp = (wid == 1); const int is_dma_a_warp = (wid == 0); const int is_dma_b_warp = (wid == 2); const int is_unused_warp = (wid == 3); const int is_math_warp = (wid >= 4); uint32_t smem_tile_coord = smem_{shared_id}; uint32_t smem_tile_coord_empty_bar = smem_tile_coord + SCHEDULER_PIPELINE_STAGES_{guid} * 16; uint32_t smem_tile_coord_full_bar = smem_tile_coord_empty_bar + SCHEDULER_PIPELINE_STAGES_{guid} * BYTES_PER_MBAR_{guid}; uint32_t smem_ab_full_bar = smem_tile_coord_full_bar + SCHEDULER_PIPELINE_STAGES_{guid} * BYTES_PER_MBAR_{guid}; uint32_t smem_ab_empty_bar = smem_ab_full_bar + STAGES_{guid} * BYTES_PER_MBAR_{guid}; if (is_scheduler_warp && elect_one) {{ #pragma unroll for (int i = 0; i < STAGES_{guid}; ++i) {{ smem_bar_init(smem_ab_full_bar + i * BYTES_PER_MBAR_{guid}, 1); smem_bar_init(smem_ab_empty_bar + i * BYTES_PER_MBAR_{guid}, (CGA_M_{guid} + CGA_N_{guid} - 1) * GROUPS_M_{guid} * WARPS_PER_GROUP_{r_id}); }} #pragma unroll for (int i = 0; i < SCHEDULER_PIPELINE_STAGES_{guid}; ++i) {{ smem_bar_init(smem_tile_coord_full_bar + i * BYTES_PER_MBAR_{guid}, 1); smem_bar_init(smem_tile_coord_empty_bar + i * BYTES_PER_MBAR_{guid}, CGA_M_{guid} * CGA_N_{guid} * ((GROUPS_M_{guid} + 1) * WARPS_PER_GROUP_{r_id} - 1)); }} }} __syncthreads(); if (CGA_M_{guid} * CGA_N_{guid} > 1) {{ cga_arrive(); cga_wait(); }} mainloop_steps_start = split_k_id * (mainloop_steps / SPLIT_K_SLICES_{guid}) + min(split_k_id, (mainloop_steps % SPLIT_K_SLICES_{guid})); mainloop_steps = mainloop_steps / SPLIT_K_SLICES_{guid} + (split_k_id < (mainloop_steps % SPLIT_K_SLICES_{guid}) ? 1 : 0); mainloop_steps_start = split_k_id * (tiles_c / SPLIT_K_SLICES_{guid}) + min(split_k_id, (tiles_c % SPLIT_K_SLICES_{guid})); tiles_c = tiles_c / SPLIT_K_SLICES_{guid} + (split_k_id < (tiles_c % SPLIT_K_SLICES_{guid}) ? 1 : 0); mainloop_steps = tiles_c * trs; const uint32_t coord_m = blockIdx.x * CTA_TILE_M_{guid}; const uint32_t coord_n = blockIdx.y * CTA_TILE_N_{guid}; const uint32_t coord_b = blockIdx.z % (gridDim.z / SPLIT_K_SLICES_{guid}); const uint32_t split_k_id = blockIdx.z / (gridDim.z / SPLIT_K_SLICES_{guid}); int mainloop_steps_start = 0;{split_k_mainloop_steps_reset} const uint32_t tid = threadIdx.x; const uint32_t wid = threadIdx.x / 32; const uint32_t tiw = threadIdx.x % 32;tma_descs_array // mma_pipeline_op {} code * 17ff77ff77ff77ff7 // mma_pipeline_op {} typesTILE_N_{} / 2FORT_MAX(2, TILE_M_{})FORT_MIN(TILE_K_{guid}, 128){tile_o}regs_o{regs_o}REGS_K_{guid}{x2}TILE_K_{guid}{tile_v}TILE_O_{guid} / 16192K_or_Oregs_dqcta_tile_octa_tile_dvcta_tile_vbits_per_accbits_per_elemwarp_tile_kwarp_tile_nwarp_tile_mcta_tile_ncta_tile_mwarp_regscapped_cta_tile_kbuffers_qbuffers_kvsmem_offset_o_codetma_threadsband_bias_threadsdata_type_kernel_obytes_per_elempadded_elementsstages_qstages_kvTilesQSoftmaxWarpGroupsbuffers_q_o_statsbuffers_transpsmem_p_codesmem_dk_dv_offset_codeswizzle_v_codebyte_offset_v_codedv_dk_data_type_kernelbuffers_dpgmma_tile_mgmma_tile_ngmma_tile_kSMssplit_k_buffersinit_size_in_bitsgmma_size_in_bitsnan_val / num_2d_tile_kcga_arrive(); // mma_pipeline_op {} declsdecl_num_2d_tile_kactual_lean_tile_id_declinput_kvinput_qhead_batch_declsactual_seqlen_declskv_seqlen_prefix_declsBUFFERS_V_{guid}smem_v_tr_declv_tr_buffers_codesmem_bar_tile_id_tma_init __syncthreads(); }} }}tma_k_full_threadstma_v_full_threadscga_arrivemath_and_epilogue_warps_codenum_used_warpsdecl_mainloop_warps_codecalc_mainloop_bar_addr_codeinit_mainloop_bar_codesplit_k_mainloop_steps_reset alignas(16) uint64_t tma_o_0_empty_mbar[1]) uint64_t tma_k_empty_mbar[stages_kv]; alignas(16) uint64_t tma_k_full_mbar }} const int trsc = convDesc.T * convDesc.R * convDesc.S * convDesc.C; const int r_plus_s = convDesc.R + convDesc.S; int filter_cnt = 0; int ldg_cnt = 0; const int row_{guid} = coord_m + (wid % WARPS_M_{p_id}) * WARP_TILE_M_{p_id} + tiw / 4; const int col_{guid} = (tiw % 4) * ELEMS_PER_VECTOR_{p_id} + mainloop_steps_start * CTA_TILE_K_{p_id} + {group_conv_offset_a}; const int col_{guid}_b = coord_n + (wid / WARPS_M_{p_id}) * WARP_TILE_N_{p_id} + tiw / 4 + {group_conv_offset_b}; const int row_{guid}_b = (tiw % 4) * ELEMS_PER_VECTOR_{p_id} + mainloop_steps_start * CTA_TILE_K_{p_id}; int acc_count_{guid} = 0; int col_index_{guid} = mainloop_steps_start * CTA_TILE_K_{p_id} + tid; uint32_t smem_trsc_ld_{guid} = smem_{r_id}; uint32_t smem_trsc_st_{guid} = smem_trsc_ld_{guid} + tid * 4 * sizeof(int);warp_group_id * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) uint32_t cga_id_x = tmp_m; uint32_t cga_id_y = tmp_n / CGA_N_{p_id}; swizzle(cga_id_x, cga_id_y, log2_group_cols, CGAs_x, CGAs_y); const uint32_t cta_n = cga_id_y * CGA_N_{p_id} + cta_id_in_cga.x; const uint32_t cta_m = cga_id_x * CGA_M_{p_id} + cta_id_in_cga.y; const uint32_t cta_n = tmp_n; const uint32_t cta_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; uint32_t coord_k = 0, coord_b = 0; uint32_t tmp_n, tmp_m, tmp_mn; fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n);{cta_swizzle_code} const int row_{guid} = cta_m * CTA_TILE_M_{p_id} + (wid % WARPS_PER_GROUP_{r_id}) * UNIT_MATRIX_A_ROWS_{guid} + tiw / 4 + {group_offset_code}; const int col_{guid} = (tiw % 4) * ELEMS_PER_VECTOR_{p_id} + mainloop_steps_start * CTA_TILE_K_{p_id}; const int col_{guid}_b = cta_n * CTA_TILE_N_{p_id} + (wid % WARPS_PER_GROUP_{r_id} % 2) * CORE_MATRIX_B_ROWS_{guid} + tiw / 4; const int row_{guid}_b = (wid % WARPS_PER_GROUP_{r_id} / 2) * CORE_MATRIX_B_COLS_{guid} + (tiw % 4) * ELEMS_PER_VECTOR_{p_id} + mainloop_steps_start * CTA_TILE_K_{p_id}; uint32_t tmp_mn, coord_b; // coord_b - means group_id fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); const int col_{guid} = (tiw % 4) * ELEMS_PER_VECTOR_{p_id} + mainloop_steps_start * CTA_TILE_K_{p_id} + coord_b * convDesc.{C_or_K};is_right_bound_bottom_right_alignmentis_left_bound_bottom_right_alignment inline __device__ int2 compute_kv_loop_bounds(const int row_coord, const int ROW_TILE_SIZE, const int COL_TILE_SIZE, const int actual_seqlen_kv, const int actual_seqlen_q, const int shift_right_bound, const int left_bound) {{ constexpr bool is_right_bound = {is_right_bound}; constexpr bool is_right_bound_bottom_right_alignment = {is_right_bound_bottom_right_alignment}; constexpr bool is_shift_right_bound = {is_shift_right_bound}; constexpr bool is_left_bound = {is_left_bound}; constexpr bool is_left_bound_bottom_right_alignment = {is_left_bound_bottom_right_alignment}; const int right_bound_diagonal = is_right_bound_bottom_right_alignment ? row_coord + (actual_seqlen_kv - actual_seqlen_q) : row_coord; const int shifted_right_bound_diagonal = is_shift_right_bound ? right_bound_diagonal + shift_right_bound : right_bound_diagonal; const int left_bound_diagonal = is_left_bound_bottom_right_alignment ? row_coord + (actual_seqlen_kv - actual_seqlen_q) : row_coord; const int kv_loop_left_bound = is_left_bound ? FORT_MAX(0, (left_bound_diagonal - left_bound) / COL_TILE_SIZE) : 0; const int kv_loop_right_bound = is_right_bound ? FORT_MIN(FORT_DIV_UP(shifted_right_bound_diagonal + ROW_TILE_SIZE, COL_TILE_SIZE), FORT_DIV_UP(actual_seqlen_kv, COL_TILE_SIZE)) : FORT_DIV_UP(actual_seqlen_kv, COL_TILE_SIZE); return make_int2(kv_loop_left_bound, kv_loop_right_bound); }} inline __device__ int2 compute_qo_loop_bounds(const int row_coord, const int ROW_TILE_SIZE, const int COL_TILE_SIZE, const int actual_seqlen_kv, const int actual_seqlen_q, const int shift_right_bound, const int left_bound) {{ constexpr bool is_right_bound = {is_right_bound}; constexpr bool is_right_bound_bottom_right_alignment = {is_right_bound_bottom_right_alignment}; constexpr bool is_shift_right_bound = {is_shift_right_bound}; constexpr bool is_left_bound = {is_left_bound}; constexpr bool is_left_bound_bottom_right_alignment = {is_left_bound_bottom_right_alignment}; const int right_bound_diagonal = is_right_bound_bottom_right_alignment ? row_coord - (actual_seqlen_kv - actual_seqlen_q) : row_coord; const int shifted_right_bound_diagonal = is_shift_right_bound ? right_bound_diagonal - shift_right_bound : right_bound_diagonal; const int left_bound_diagonal = is_left_bound_bottom_right_alignment ? row_coord - (actual_seqlen_kv - actual_seqlen_q) : row_coord; const int qo_loop_left_bound = is_right_bound ? FORT_MAX(0, (shifted_right_bound_diagonal - 1) / COL_TILE_SIZE) : 0; const int qo_loop_right_bound = is_left_bound ? FORT_MIN(FORT_DIV_UP(left_bound_diagonal + ROW_TILE_SIZE + left_bound - 1, COL_TILE_SIZE), FORT_DIV_UP(actual_seqlen_q, COL_TILE_SIZE)) : FORT_DIV_UP(actual_seqlen_q, COL_TILE_SIZE); return make_int2(qo_loop_left_bound, qo_loop_right_bound); }} static constexpr int CORE_MATRIX_A_ROWS_{guid} = 8; static constexpr int CORE_MATRIX_A_COLS_{guid} = 128 / BITS_PER_ELEMENT_{p_id}; static constexpr int UNIT_MATRIX_A_ROWS_{guid} = 2 * CORE_MATRIX_A_ROWS_{guid}; static constexpr int UNIT_MATRIX_A_COLS_{guid} = 2 * CORE_MATRIX_A_COLS_{guid}; // Each warp is responsible for loading one UNIT_MATRIX of A, but one CORE_MATRIX of B // That is, each warp group is responsible for loading one UNIT_MATRIX of B static constexpr int CORE_MATRIX_B_ROWS_{guid} = 8; static constexpr int CORE_MATRIX_B_COLS_{guid} = 128 / BITS_PER_ELEMENT_{p_id}; static constexpr int UNIT_MATRIX_B_ROWS_{guid} = 2 * CORE_MATRIX_B_ROWS_{guid}; static constexpr int UNIT_MATRIX_B_COLS_{guid} = 2 * CORE_MATRIX_B_COLS_{guid}; static constexpr int NUM_LDSM_{guid} = GMMA_TILE_N_{p_id} / UNIT_MATRIX_B_ROWS_{guid}; static constexpr int BANKS_PER_ROW_A_{guid} = CTA_TILE_{M_or_K}_{p_id} / ELEMS_PER_BANK_{p_id}; static constexpr int THREADS_PER_ROW_A_{guid} = FORT_MIN(BANKS_PER_ROW_A_{guid}, THREADS_PER_WARP_{r_id}); static constexpr int LDS_PER_ROW_A_{guid} = BANKS_PER_ROW_A_{guid} / THREADS_PER_ROW_A_{guid}; static constexpr int ROWS_PER_LOAD_A_{guid} = THREADS_PER_WARP_{r_id} / THREADS_PER_ROW_A_{guid}; static constexpr int ROWS_PER_WARP_A_{guid} = FORT_MAX(CTA_TILE_{K_or_M}_{p_id} / WARPS_PER_GROUP_{r_id}, ROWS_PER_LOAD_A_{guid}); static constexpr int LDS_PER_TILE_A_{guid} = ROWS_PER_WARP_A_{guid} / ROWS_PER_LOAD_A_{guid}; static constexpr int WORKING_WARPS_A_{guid} = CTA_TILE_{K_or_M}_{p_id} / ROWS_PER_WARP_A_{guid}; static constexpr int BANKS_PER_ROW_B_{guid} = CTA_TILE_N_{p_id} / CTA_MMA_{p_id} / ELEMS_PER_BANK_{p_id}; static constexpr int THREADS_PER_ROW_B_{guid} = FORT_MIN(BANKS_PER_ROW_B_{guid}, THREADS_PER_WARP_{r_id}); static constexpr int LDS_PER_ROW_B_{guid} = BANKS_PER_ROW_B_{guid} / THREADS_PER_ROW_B_{guid}; static constexpr int ROWS_PER_LOAD_B_{guid} = THREADS_PER_WARP_{r_id} / THREADS_PER_ROW_B_{guid}; static constexpr int ROWS_PER_WARP_B_{guid} = FORT_MAX(CTA_TILE_K_{p_id} / WARPS_PER_GROUP_{r_id}, ROWS_PER_LOAD_B_{guid}); static constexpr int LDS_PER_TILE_B_{guid} = ROWS_PER_WARP_B_{guid} / ROWS_PER_LOAD_B_{guid}; static constexpr int WORKING_WARPS_B_{guid} = CTA_TILE_K_{p_id} / ROWS_PER_WARP_B_{guid}; static constexpr int BANKS_PER_ROW_B_{guid} = CTA_TILE_K_{p_id} / ELEMS_PER_BANK_{p_id}; static constexpr int THREADS_PER_ROW_B_{guid} = FORT_MIN(BANKS_PER_ROW_B_{guid}, THREADS_PER_WARP_{r_id}); static constexpr int LDS_PER_ROW_B_{guid} = BANKS_PER_ROW_B_{guid} / THREADS_PER_ROW_B_{guid}; static constexpr int ROWS_PER_LOAD_B_{guid} = THREADS_PER_WARP_{r_id} / THREADS_PER_ROW_B_{guid}; static constexpr int ROWS_PER_WARP_B_{guid} = FORT_MAX(CTA_TILE_N_{p_id} / CTA_MMA_{p_id} / WARPS_PER_GROUP_{r_id}, ROWS_PER_LOAD_B_{guid}); static constexpr int LDS_PER_TILE_B_{guid} = ROWS_PER_WARP_B_{guid} / ROWS_PER_LOAD_B_{guid}; static constexpr int WORKING_WARPS_B_{guid} = CTA_TILE_N_{p_id} / CTA_MMA_{p_id} / ROWS_PER_WARP_B_{guid}; static constexpr int BITS_PER_SF_ELEMENT_{guid} = 8; static constexpr int BLOCK_SCALE_BLOCK_SIZE_{guid} = {block_size}; static constexpr int BLOCK_DIM_NON_K_{guid} = 128; static constexpr int BLOCK_DIM_K_{guid} = 4; static constexpr int SWIZZLED_BLOCK_DIM_NON_K_{guid} = 32; static constexpr int SWIZZLED_BLOCK_DIM_K_{guid} = 16; static constexpr int BYTES_PER_BLOCK_{guid} = BLOCK_DIM_NON_K_{guid} * BLOCK_DIM_K_{guid} * BITS_PER_SF_ELEMENT_{guid} / 8; static constexpr int NUM_BLOCKS_M_{guid} = CTA_TILE_M_{p_id} / BLOCK_DIM_NON_K_{guid}; static constexpr int NUM_BLOCKS_N_{guid} = CTA_TILE_N_{p_id} / BLOCK_DIM_NON_K_{guid}; static constexpr int NUM_BLOCKS_K_{guid} = CTA_TILE_K_{p_id} / BLOCK_SCALE_BLOCK_SIZE_{guid} / BLOCK_DIM_K_{guid}; static constexpr int VECTOR_SCALE_{guid} = 256 / (BITS_PER_ELEMENT_{p_id} * BLOCK_SCALE_BLOCK_SIZE_{guid}); static constexpr int XMMAS_K_TILES_PER_LDS_{guid} = BLOCK_DIM_K_{guid} / VECTOR_SCALE_{guid}; static constexpr int REGISTERS_PER_BLOCK_{guid} = SWIZZLED_BLOCK_DIM_K_{guid} * BITS_PER_SF_ELEMENT_{guid} / BITS_PER_REGISTER_{r_id}; static constexpr int SMEM_BUFFER_OFFSET_{op_id} = {offset} + (TMA_LOAD_ALIGNMENT_{p_id} - ({offset}) % TMA_LOAD_ALIGNMENT_{p_id}) % TMA_LOAD_ALIGNMENT_{p_id};SMEM_BUFFER_OFFSET_{} + PIPELINE_SMEM_BYTES_{} static constexpr int SMEM_EPILOGUE_OFFSET_{} = {}; static constexpr int TRANSACTION_BYTES_{} = {}; static constexpr int SMEM_BUFFER_OFFSET_A_{guid} = SMEM_BUFFER_OFFSET_{op_id}; static constexpr int SMEM_BUFFER_OFFSET_B_{guid} = SMEM_BUFFER_OFFSET_{op_id}; static constexpr int SMEM_BUFFER_OFFSET_{op_id} = SMEM_BUFFER_OFFSET_{reuse_ldgsts_id}; static constexpr int SMEM_BUFFER_OFFSET_D_{guid} = {offset} + (TMA_LOAD_ALIGNMENT_{p_id} - ({offset}) % TMA_LOAD_ALIGNMENT_{p_id}) % TMA_LOAD_ALIGNMENT_{p_id}; static constexpr uint32_t TRANSACTION_BYTES_{guid} = {tma_transaction_bytes}; static constexpr int SMEM_BUFFER_OFFSET_{guid} = {offset}; static constexpr int SMEM_BUFFER_OFFSET_{op_id} = {offset}; static constexpr int SMEM_EPILOGUE_OFFSET_{guid} = {offset}; uint32_t sts_s_row_id = (tiw / 4); uint32_t sts_smem_s = smem_s_{p_id} + wid * 16 * 128 + sts_s_row_id * 128 + (tiw % 2) * 2 * sizeof(float); const int lds_s_row_id = tiw / 4; const int lds_s_col_id = 0; uint32_t lds_smem_s = smem_s_{p_id} + wid * 16 * 128 + (lds_s_col_id ^ (lds_s_row_id % 8)) * BYTES_PER_BANK_{p_id} + lds_s_row_id * 128; const int left_bound = static_cast({input_left_bound}); const int shift_right_bound = reg_{guid}_{port}[0]; if (ldsm_smem_buffer_offset_{op_id} >= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{op_id}) {{ ldsm_smem_buffer_offset_{op_id} -= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{op_id}; }} else {{ ldsm_smem_buffer_offset_{op_id} += BYTES_PER_SMEM_{op_id}; }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=4) {{ uint32_t sts_s_col_id = ((tiw / 2) % 2) + (i/4) * 2 + n * 4; sts_64(sts_smem_s + ((sts_s_col_id % 8) ^ sts_s_row_id) * BYTES_PER_BANK_{p_id} + (n / 2) * TILE_M_1 * 128 + 0 * 128, ®_{pw_chain_guid}_0[m][n][i+0]); sts_64(sts_smem_s + ((sts_s_col_id % 8) ^ sts_s_row_id) * BYTES_PER_BANK_{p_id} + (n / 2) * TILE_M_1 * 128 + 8 * 128, ®_{pw_chain_guid}_0[m][n][i+2]); }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ lds_128(®_{pw_chain_guid}_0[m][ki][0], lds_smem_s + 0 * 128 + (ki / 8) * TILE_M_{p_id} * 128); lds_128(®_{pw_chain_guid}_0[m][ki][4], lds_smem_s + 8 * 128 + (ki / 8) * TILE_M_{p_id} * 128); }} move_smem_to_next_ki(lds_smem_s, (ki % 8), 8, BYTES_PER_BANK_{p_id} / 2); int2 kv_loop_bounds = compute_kv_loop_bounds(q_step_{p_id} * TILE_M_{p_id}, TILE_M_{p_id}, TILE_N_{p_id}, actual_seqlen_kv_{p_id}, {seqlen_q_code}, shift_right_bound, left_bound); int kv_loop_left_bound = kv_loop_bounds.x; int kv_loop_right_bound = kv_loop_bounds.y; kv_loop_left_bound += {lean_tile_id}; #pragma unroll for (int step = WARPS_N_{p_id} / 2; step > 0; step >>= 1) {{ uint32_t warp_offset = (wid % WARPS_M_{p_id}) * (THREADS_PER_WARP_{r_id} * REGS_M_{p_id} * REGS_K_{p_id} * WARP_REGS_{p_id} * BYTES_PER_REGISTER_{r_id} * WARPS_N_{p_id} / 2) + ((wid / WARPS_M_{p_id}) % step) * (THREADS_PER_WARP_{r_id} * REGS_M_{p_id} * REGS_K_{p_id} * WARP_REGS_{p_id} * BYTES_PER_REGISTER_{r_id}) + tiw * BYTES_PER_BANK_{p_id}; if (step <= (wid / WARPS_M_{p_id}) && (wid / WARPS_M_{p_id}) < 2 * step) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_K_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i += BYTES_PER_BANK_{p_id} / BYTES_PER_REGISTER_{r_id}) {{ sts_128(smem_acc_o_{p_id} + warp_offset + ((m * REGS_K_{p_id} + n) * WARP_REGS_{p_id} * BYTES_PER_REGISTER_{r_id} + i * BYTES_PER_REGISTER_{r_id}) * THREADS_PER_WARP_{r_id}, ®_{p_id}_0[m][n][i]); }} }} }} }} __syncthreads(); if (wid / WARPS_M_{p_id} < step) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_K_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i += BYTES_PER_BANK_{p_id} / BYTES_PER_REGISTER_{r_id}) {{ r32 tmp[4]; lds_128(tmp, smem_acc_o_{p_id} + warp_offset + ((m * REGS_K_{p_id} + n) * WARP_REGS_{p_id} * BYTES_PER_REGISTER_{r_id} + i * BYTES_PER_REGISTER_{r_id}) * THREADS_PER_WARP_{r_id}); #pragma unroll for (int k = 0; k < 4; ++k) {{ reinterpret_cast(reg_{p_id}_0[m][n][i + k]) += reinterpret_cast(tmp[k]); }} }} }} }} }} __syncthreads(); }} #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{softmax_guid}; ++m) {{ r32 tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{softmax_guid}_3[m], 1); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(reg_{softmax_guid}_3[m]) + reinterpret_cast(tmp_0); tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{softmax_guid}_3[m], 2); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(reg_{softmax_guid}_3[m]) + reinterpret_cast(tmp_0); float sum = reinterpret_cast(reg_{softmax_guid}_3[m]); reinterpret_cast(reg_{softmax_guid}_5[m]) = (sum == 0.f) ? 0.f : reinterpret_cast(reg_{softmax_guid}_1[m]) * ln2 + __logf(sum); beta_{softmax_guid}[m] = (sum == 0.f) ? 0.f : 1.f / sum; }} if (wid < WARPS_M_{p_id}) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_K_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; reinterpret_cast(reg_{p_id}_0[m][n][i]) *= beta_{softmax_guid}[row_indx]; }} }} }}{stg_code} }}{ldgsts_V_code} ldgdepbar();{ldgsts_K_code} ldgdepbar();{lds_K_buffer_update_code} for(int d_qk_chunk = 0; d_qk_chunk < TILE_K_{p_id}/128; d_qk_chunk++) {{{ldgsts_Q_code} ldgdepbar();{ldgsts_K_code} ldgdepbar(); #pragma unroll for (int stage = 0; stage < STAGES_{p_id} - 1; ++stage) {{{ldgsts_V_code} ldgdepbar(); extra_ldgsts_count += {split_k_factor};{ldgsts_K_code} ldgdepbar(); }}{ldgsts_V_code} ldgdepbar(); depbar<1>(); __syncthreads(); #pragma unroll for (int ki = 0; ki < BMM1_XMMAS_K_{p_id}; ++ki) {{{lds_Q_code} }} __syncthreads();{ldgsts_Q_code} ldgdepbar();{ldgsts_K_code} ldgdepbar(); {left_bound_code} {shift_right_bound_code} {kv_loop_bound_code} int kv_loop = kv_loop_left_bound; int q_row_coord = 0; int extra_ldgsts_count = 0; static constexpr float inv_ln2 = 1.4426950408889634074f; static constexpr float ln2 = 0.6931471805599453094f; {mma_loop_decls}{sts_S_decl}{lds_S_decl} // mma_loop_op {guid} code uint32_t reg_{p_id}_0[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; memset(®_{p_id}_0[0][0][0], 0, sizeof(reg_{p_id}_0)); static constexpr int BMM1_XMMAS_K_{p_id} = TILE_O_{p_id} / {bmm1_denom}; static constexpr int BMM2_XMMAS_K_{p_id} = TILE_N_{p_id} / {bmm2_denom} / WARPS_N_{p_id}; extra_ldgsts_count += {split_k_factor}; #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop+={split_k_factor}) {{ const int p_col_{p_id} = kv_loop * TILE_N_{p_id}; memset(®_{matmul_1_guid}_0[0][0][0], 0, sizeof(reg_{matmul_1_guid}_0)); {{ const int ki = 0; depbar<{depbar_count}>(); __syncthreads();{lds_K_code} }} #pragma unroll for (int ki = 1; ki < BMM1_XMMAS_K_{p_id}; ++ki) {{{lds_K_code}{matmul_1_code} }} __syncthreads(); {{ const int ki = BMM1_XMMAS_K_{p_id};{matmul_1_code} }} {pointwise_and_softmax_ops_code}{sts_S_code} {{ const int ki = 0; depbar<{depbar_count}>(); __syncthreads();{lds_S_code}{lds_V_code} }} #pragma unroll for (int ki = 1; ki < BMM2_XMMAS_K_{p_id}; ++ki) {{{lds_S_code}{lds_V_code}{matmul_2_code} }} __syncthreads();{lds_V_buffer_update_code} {{ const int ki = BMM2_XMMAS_K_{p_id};{matmul_2_code} }} // Update acc_sum of flash attention #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{softmax_guid}; ++m) {{ float p_sum = reinterpret_cast(reg_{softmax_guid}_4[m]); float acc_sum = reinterpret_cast(reg_{softmax_guid}_3[m]); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(alpha_{softmax_guid}[m]) * acc_sum + p_sum; }} }} // kv_loop depbar<0>(); __syncthreads();{warp_reduction_code}{softmax_update}pointwise_and_softmax_ops_code const int left_bound = static_cast({input_left_bound}); named_barrier_wait(MATH_WORKGROUP_{}, 256); actual_seqlen_kv_{p_id} = {input_kv}[batch_coord_{p_id}]; actual_seqlen_q_{p_id} = {input_q}[batch_coord_{p_id}]; oob_for_stats_{p_id} = {input_q}[batch_coord_{p_id}]; if (actual_seqlen_q_{p_id} > 0 && actual_seqlen_kv_{p_id} > 0) {{ }} // if (actual_seqlen > 0) int2 kv_loop_bounds = compute_kv_loop_bounds(q_row_coord, TILE_M_{p_id} * 2, TILE_N_{p_id}, actual_seqlen_kv_{p_id}, {seqlen_q_code}, shift_right_bound, left_bound); int kv_loop_left_bound = kv_loop_bounds.x; int kv_loop_right_bound = kv_loop_bounds.y; int actual_num_rows = 0; if (tiw == 0) {{ for (int i = 0; i < attnDesc.b; i++) {{ actual_num_rows += FORT_DIV_UP({input_q}[i], TILE_M_{p_id} * 2); }} }} actual_num_rows = __shfl_sync(0xffffffff, actual_num_rows, 0); const int actual_num_tiles_{p_id} = actual_num_rows * attnDesc.q_h; if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); #pragma unroll 1 for (int i = batch_coord_{p_id}; i < attnDesc.b; i++) {{ const int tiles_per_head = FORT_DIV_UP({input_q}[i], TILE_M_{p_id} * 2); const int tiles_per_batch = tiles_per_head * attnDesc.q_h; const int local_tile_id = tile_id - cumulative_tiles; if (tile_id < cumulative_tiles + tiles_per_batch) {{ batch_coord_{p_id} = i; head_coord_{p_id} = local_tile_id / tiles_per_head; q_row_coord = local_tile_id % tiles_per_head; break; }} cumulative_tiles += tiles_per_batch; }} }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); q_row_coord = __shfl_sync(0xffffffff, q_row_coord, 0); named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ uint32_t tile_coord[4] = {{tile_id, batch_coord_{p_id}, head_coord_{p_id}, q_row_coord}}; sts_128(smem_tile_id_{p_id}, tile_coord); }} named_barrier_arrive(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ uint32_t tile_coord[4]; lds_128(tile_coord, smem_tile_id_{p_id}); tile_id = tile_coord[0]; batch_coord_{p_id} = tile_coord[1]; head_coord_{p_id} = tile_coord[2]; q_row_coord = tile_coord[3]; }} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); tile_id = __shfl_sync(0xffffffff, tile_id, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); q_row_coord = __shfl_sync(0xffffffff, q_row_coord, 0); const int actual_num_tiles_{p_id} = num_tiles_{p_id}; if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ sts_32(smem_tile_id_{p_id}, &tile_id); }} named_barrier_arrive(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); tile_id = __shfl_sync(0xffffffff, tile_id, 0); int row_{softmax_guid} = q_row_coord + local_wid * 16 + (tiw / 4); const int row_offset_{softmax_guid} = (m % 2) * THREADS_PER_WARP_TILE_M_{softmax_guid} + (m / 2) * WARPS_M_{softmax_guid} * WARP_TILE_M_{softmax_guid}; if (row_{softmax_guid} + row_offset_{softmax_guid} >= {actual_s_kv_code} + left_bound - 1) {{ sum = {actual_s_kv_code} * 1.0f; }} tile_id = num_tiles_{p_id} - tile_id - 1; fastDivMod(tiles_bh_div_{p_id}, tile_id, q_row_coord, rows_temp); fastDivMod(tiles_h_div_{p_id}, rows_temp, batch_coord_{p_id}, head_coord_from_grid_{p_id}); fastDivMod(tiles_hr_div_{p_id}, tile_id, batch_coord_{p_id}, rows_temp); fastDivMod(tiles_r_div_{p_id}, rows_temp, head_coord_from_grid_{p_id}, q_row_coord); if (attnDesc.k_h >= attnDesc.v_h) {{ head_coord_k_{p_id} = head_coord_from_grid_{p_id} / FORT_DIV_UP(attnDesc.q_heads_per_k, TILE_M_{p_id} * 2); head_coord_q_offset_{p_id} = head_coord_from_grid_{p_id} % FORT_DIV_UP(attnDesc.q_heads_per_k, TILE_M_{p_id} * 2); head_coord_{p_id} = head_coord_k_{p_id} * attnDesc.q_heads_per_k + head_coord_q_offset_{p_id} * TILE_M_{p_id} * 2; head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; }} else {{ head_coord_v_{p_id} = head_coord_from_grid_{p_id} / FORT_DIV_UP(attnDesc.q_heads_per_v, TILE_M_{p_id} * 2); head_coord_q_offset_{p_id} = head_coord_from_grid_{p_id} % FORT_DIV_UP(attnDesc.q_heads_per_v, TILE_M_{p_id} * 2); head_coord_{p_id} = head_coord_v_{p_id} * attnDesc.q_heads_per_v + head_coord_q_offset_{p_id} * TILE_M_{p_id} * 2; head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; }} q_row_coord = 0; head_coord_{p_id} = head_coord_from_grid_{p_id}; head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; }} else if (local_wid == 2 || local_wid == 3) {{ uint32_t smem_bar_phase_bias = 1; named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); uint32_t batch_coord_{p_id}, head_coord_{p_id}, q_row_coord, rows_temp; uint32_t head_coord_from_grid_{p_id}, head_coord_k_{p_id}, head_coord_v_{p_id}, head_coord_q_offset_{p_id}; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q;{load_next_tile_id_code} // Persistent loop over output tiles #pragma unroll 1 while (tile_id < actual_num_tiles_{p_id}) {{{tile_extract_code} q_row_coord *= TILE_M_{p_id} * 2;{head_setting_code}{left_bound_code}{shift_right_bound_code} {kv_loop_bound_code}{load_band_matrix_decl} #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop++) {{ const int p_col_coord = kv_loop * TILE_N_{p_id}; const bool do_swa_bias_load = p_col_coord >= static_cast(q_row_coord) - FORT_ROUND_UP({lower_bandwidth},TILE_N_{p_id}); if (do_swa_bias_load) {{ #pragma unroll for (int row = 0; row < TILE_M_{p_id} * 2; row+=64) {{ if (!smem_bar_peek(smem_bar_bias_mma_{p_id} + (row / 64) * 8, smem_bar_phase_bias)) {{ smem_bar_wait(smem_bar_bias_mma_{p_id} + (row / 64) * 8, smem_bar_phase_bias); }} const int bias_row_id = q_row_coord + tid % 64 + row; const int bias_col_id = p_col_coord - bias_row_id + {lower_bandwidth}; const int align_bias_col_id = (bias_col_id < 0) ? 0 : (bias_col_id - (bias_col_id % 8)); uint32_t b_smem_loc = smem_band_bias_{p_id} + (tid % 64 + row) * (TILE_N_{p_id} + 8) * BYTES_PER_ELEMENT_{band_bias_ldg_op_guid}; char* b_gmem_loc = ptr_{band_bias_ldg_op_guid} + (bias_row_id * {tensor_desc}.strides[2] + align_bias_col_id) * BYTES_PER_ELEMENT_{band_bias_ldg_op_guid}; #pragma unroll for (int i = 0; i < TILE_N_{p_id} + 8; i+=8) {{ bool pred = align_bias_col_id + i < oob_N_{band_bias_ldg_op_guid}; ldgsts_128(b_gmem_loc + i * BYTES_PER_ELEMENT_{band_bias_ldg_op_guid}, b_smem_loc + i * BYTES_PER_ELEMENT_{band_bias_ldg_op_guid}, pred); }} ldgdepbar(); }} smem_bar_phase_bias ^= 1; // Data for the first warp-group depbar<1>(); __syncwarp(); fence_view_async_shared(); if (elect_one) {{ smem_bar_arrive(smem_bar_bias_tma_{p_id}); }} // Data for the second warp-group depbar<0>(); __syncwarp(); fence_view_async_shared(); if (elect_one) {{ smem_bar_arrive(smem_bar_bias_tma_{p_id} + 8); }} }} }}{kv_loop_bound_close_code} {load_next_tile_id_code} }} int heads_to_load = FORT_MIN(static_cast(attnDesc.min_q_heads_per_kv) - head_coord_q_offset_{p_id} * TILE_M_{p_id} * 2, TILE_M_{p_id} * 2); uint32_t qTmaTransactionBytes = heads_to_load * TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}; smem_bar_set_transaction_count(local_smem_bar_tma_q, qTmaTransactionBytes, elect_one); for (int head_coord_loc = 0; head_coord_loc < heads_to_load; head_coord_loc++) {{ uint32_t local_smem_q = smem_q_{p_id} + head_coord_loc * 64 * BYTES_PER_ELEMENT_{p_id}; const uint32_t row_coord = 0;{ldgsts_Q_code} }} smem_bar_set_transaction_count(local_smem_bar_tma_q, SMEM_Q_{p_id}, elect_one); {{ const uint32_t row_coord = q_row_coord;{ldgsts_Q_code} }}{actual_num_tiles_code} if (gid == 0) {{ reg_dealloc<40>(); const uint32_t local_wid = wid % 4; uint32_t tile_id; uint32_t batch_coord_{p_id} = 0, head_coord_{p_id} = 0, q_row_coord = 0, rows_temp; uint32_t head_coord_from_grid_{p_id}, head_coord_k_{p_id}, head_coord_v_{p_id}, head_coord_q_offset_{p_id}; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q, oob_for_stats_{p_id} = attnDesc.s_q; if (local_wid == 0) {{ uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t buffer_id_q = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_q = 0; uint32_t cnt_kv = 0; int cumulative_tiles = 0;{store_next_tile_id_code} // Persistent loop over output tiles #pragma unroll 1 while (tile_id < actual_num_tiles_{p_id}) {{{tile_extract_code} q_row_coord *= TILE_M_{p_id} * 2;{head_setting_code} {left_bound_code}{shift_right_bound_code} {kv_loop_bound_code} {ldgsts_Q_decl}{ldgsts_K_decl}{ldgsts_V_decl} uint32_t local_smem_q = smem_q_{p_id} + buffer_id_q * SMEM_Q_{p_id}; uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_q * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_q * 8; if (kv_loop_right_bound > 0) {{ uint32_t smem_bar_phase_q = cnt_q < BUFFERS_Q_{p_id} ? 1 : 0; cnt_q = cnt_q < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_q + 1) : 0; buffer_id_q = buffer_id_q < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_q + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_q, smem_bar_phase_q)) {{ smem_bar_wait(local_smem_bar_mma_q, smem_bar_phase_q); }} }} #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop++) {{ const int p_col_coord = kv_loop * TILE_N_{p_id}; uint32_t local_smem_k = smem_k_{p_id} + buffer_id_kv * SMEM_K_{p_id}; uint32_t local_smem_bar_tma_k = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_k = smem_bar_k_mma + buffer_id_kv * 8; uint32_t local_smem_v = smem_v_{p_id} + buffer_id_kv * SMEM_V_{p_id}; uint32_t local_smem_bar_tma_v = smem_bar_v_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_v = smem_bar_v_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 1 : 0; cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_k, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_mma_k, smem_bar_phase_kv); }} smem_bar_set_transaction_count(local_smem_bar_tma_k, SMEM_K_{p_id}, elect_one);{ldgsts_K_code} if (!smem_bar_peek(local_smem_bar_mma_v, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_mma_v, smem_bar_phase_kv); }} smem_bar_set_transaction_count(local_smem_bar_tma_v, SMEM_V_{p_id}, elect_one);{ldgsts_V_code} }}{kv_loop_bound_close_code} {store_next_tile_id_code} }} named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id});{ldgsts_band_bias_warp_code} }} reg_dealloc<40>(); }} else {{ reg_alloc<232>(); named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); const uint32_t local_wid = wid % 4; const uint32_t local_gid = gid % 2; uint32_t tile_id; uint32_t batch_coord_{p_id}, head_coord_{p_id}, q_row_coord, rows_temp; uint32_t head_coord_from_grid_{p_id}, head_coord_k_{p_id}, head_coord_v_{p_id}, head_coord_q_offset_{p_id}; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q, oob_for_stats_{p_id} = attnDesc.s_q; uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t buffer_id_q = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_q = 0; uint32_t cnt_kv = 0; static constexpr float inv_ln2 = 1.4426950408889634074f; static constexpr float ln2 = 0.6931471805599453094f; Gmma_descriptor gmma_desc_q(create_gmma_desc_q_{p_id}()); Gmma_descriptor gmma_desc_k(create_gmma_desc_k_{p_id}()); Gmma_descriptor gmma_desc_v(create_gmma_desc_v_{p_id}()); gmma_desc_q.set_smem(smem_q_{p_id} + local_gid * TILE_M_{p_id} * 128); gmma_desc_k.set_smem(smem_k_{p_id}); gmma_desc_v.set_smem(smem_v_{p_id}); {load_next_tile_id_code} // Persistent loop over output tiles #pragma unroll 1 while (tile_id < actual_num_tiles_{p_id}) {{{tile_extract_code} q_row_coord = q_row_coord * TILE_M_{p_id} * 2;{head_setting_code}{left_bound_code}{shift_right_bound_code} {kv_loop_bound_code} q_row_coord += local_gid * TILE_M_{p_id}; const int causal_mask_col = (tiw % 4) * 2; const int causal_mask_row = q_row_coord + local_wid * 16 + (tiw / 4); {mma_loop_decls} uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_q * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_q * 8; if (local_gid == 1) {{ named_barrier_arrive(SOFTMAX_2_BARRIER_{p_id}, 256); }} if (kv_loop_right_bound > 0) {{ uint32_t smem_bar_phase_q = cnt_q < BUFFERS_Q_{p_id} ? 0 : 1; cnt_q = cnt_q < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_q + 1) : 0; buffer_id_q = buffer_id_q < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_q + 1) : 0; if (!smem_bar_peek(local_smem_bar_tma_q, smem_bar_phase_q)) {{ smem_bar_wait(local_smem_bar_tma_q, smem_bar_phase_q); }} }} r32 reg_{p_id}_0[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; memset(®_{p_id}_0[0][0][0], 0, sizeof(reg_{p_id}_0)); named_barrier_wait(MATH_WORKGROUP_{p_id}, 256); #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop++) {{ static constexpr int kMulPipeCount = REGS_M_{p_id} * REGS_N_{p_id} * WARP_REGS_{p_id}; static constexpr int kSubtractPipeCount = {kSubtractPipeCount}; static constexpr int kConvertPipeCount = {kConvertPipeCount}; static constexpr int oBlockSize = {oBlockSize}; const int p_col_coord = kv_loop * TILE_N_{p_id}; const int causal_mask_col = p_col_coord + (tiw % 4) * 2; const int causal_mask_row = q_row_coord + local_wid * 16 + (tiw / 4); uint32_t local_smem_bar_tma_k = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_k = smem_bar_k_mma + buffer_id_kv * 8; uint32_t local_smem_bar_tma_v = smem_bar_v_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_v = smem_bar_v_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 0 : 1; cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; memset(®_{matmul_1_guid}_0[0][0][0], 0, sizeof(reg_{matmul_1_guid}_0)); if (!smem_bar_peek(local_smem_bar_tma_k, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_tma_k, smem_bar_phase_kv); }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < REGS_K_{p_id}; ++k) {{ if (k == REGS_K_{p_id} - 1) {{ BMM_S_GMMA_ISB(gmma_desc_q.desc, gmma_desc_k.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} else {{ BMM_S_GMMA(gmma_desc_q.desc, gmma_desc_k.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} int2 &tmp_desc_q = reinterpret_cast(gmma_desc_q.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_q.x += ((128*TILE_M_{p_id}*2) >> 4); }} int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_k.x += ((128*TILE_N_{p_id}) >> 4); }} }} {{ int2 &tmp_desc_q = reinterpret_cast(gmma_desc_q.desc); tmp_desc_q.x -= ((128 * TILE_M_{p_id} * 2) >> 4) * (REGS_K_{p_id} / 4); int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x -= ((128 * TILE_N_{p_id}) >> 4) * (REGS_K_{p_id} / 4); }} gmma_desc_k.increment_smem_buffer(); warpgroup_wait<0>(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_k); }} uint32_t wait_v_done = smem_bar_peek(local_smem_bar_tma_v, smem_bar_phase_kv);{rng_code}{mask_code} {pointwise_and_softmax_ops_code} if (!wait_v_done) {{ smem_bar_wait(local_smem_bar_tma_v, smem_bar_phase_kv); }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < TILE_N_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ if (k == (TILE_N_{p_id} / GMMA_TILE_K_{p_id}) - 1) {{ BMM_O_GMMA_ISB(reg_{softmax_guid}_0[0][k], gmma_desc_v.desc, reinterpret_cast(reg_{p_id}_0[0])); }} else {{ BMM_O_GMMA(reg_{softmax_guid}_0[0][k], gmma_desc_v.desc, reinterpret_cast(reg_{p_id}_0[0])); }} int2 &tmp_desc_v = reinterpret_cast(gmma_desc_v.desc); tmp_desc_v.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; }} {{ int2 &tmp_desc_v = reinterpret_cast(gmma_desc_v.desc); tmp_desc_v.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (TILE_N_{p_id} / GMMA_TILE_K_{p_id}); }} gmma_desc_v.increment_smem_buffer(); warpgroup_wait<0>(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_v); }} // Update acc_sum of flash attention #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{softmax_guid}; ++m) {{ float p_sum = reinterpret_cast(reg_{softmax_guid}_4[m]); float acc_sum = reinterpret_cast(reg_{softmax_guid}_3[m]); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(alpha_{softmax_guid}[m]) * acc_sum + p_sum; }} }} if (kv_loop_right_bound > 0) {{ gmma_desc_q.increment_smem_buffer(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_q); }} }} if (local_gid == 0) {{ named_barrier_arrive(SOFTMAX_2_BARRIER_{p_id}, 256); }} #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{softmax_guid}; ++m) {{ r32 tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{softmax_guid}_3[m], 1); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(reg_{softmax_guid}_3[m]) + reinterpret_cast(tmp_0); tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{softmax_guid}_3[m], 2); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(reg_{softmax_guid}_3[m]) + reinterpret_cast(tmp_0); float sum = reinterpret_cast(reg_{softmax_guid}_3[m]); {pad_softmax_sum_code} reinterpret_cast(reg_{softmax_guid}_5[m]) = (sum == 0.f) ? 0.f : reinterpret_cast(reg_{softmax_guid}_1[m]) * ln2 + __logf(sum); beta_{softmax_guid}[m] = (sum == 0.f) ? 0.f : 1.f / sum; }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_O_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; reinterpret_cast(reg_{p_id}_0[m][n][i]) *= beta_{softmax_guid}[row_indx]; }} }} }}{stg_stats_code} {rng_sync_code}{stg_o_code} tmastg_arrive(); {kv_loop_bound_close_code} {load_next_tile_id_code} }} tmastg_wait(); reg_alloc<232>(); }} uint32_t smem_bar_phase_bias = 0;actual_lean_tile_id = (lean_tile_id / num_2d_tile_k);tile_id_and_coord[1] & 0xFFFFu(tile_id_and_coord[1] & 0xFFFF0000u) >> 16int num_2d_tile_k = (attnDesc.d_v+127)/128; amax_o_{p_id} = amax_o_{p_id} / o_scale; uint64_t& tma_o_done_mbar = sub_tile_id == 0 ? shared_storage.tma_o_0_empty_mbar[0] : shared_storage.tma_o_1_empty_mbar[0]; beta *= s_descale * v_scale * o_scale; if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[1])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[0])); }} }} // inner loop{S_matmul_V_1_inside_mainloop} // inner loop for (int d_qk_chunk = 0; d_qk_chunk < TILE_K_1 / 128; ++d_qk_chunk) {{ const int kv_stage = kv_mbar_state.index(); const int kv_state = kv_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[kv_stage]), kv_state); ++kv_mbar_state; const int q_stage = q_mbar_state.index(); const int q_phase = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), q_phase); ++q_mbar_state; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[kv_mbar_state.index()]), kv_mbar_state.phase()); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[kv_stage]), kv_state); ++kv_mbar_state; const int kv_stage = kv_mbar_state.index(); const int kv_state = kv_mbar_state.phase(); // inner loop for (int d_qk_chunk = 0; d_qk_chunk < TILE_K_{p_id} / 128; ++d_qk_chunk) {{ if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile0_done_mbar[0])); }} // elect_one ++kv_mbar_state; if (kv_loop_left_bound < kv_loop_right_bound) {{ // Inner loop for (int d_qk_chunk = 0; d_qk_chunk < TILE_K_1 / 128; ++d_qk_chunk) {{{load_Q_0}{load_K} }} // Inner loop // Inner loop for (int d_qk_chunk = 0; d_qk_chunk < TILE_K_1 / 128; ++d_qk_chunk) {{{load_Q_1}{load_K} }} // Inner loop }} // if (kv_loop_left_bound < kv_loop_right_bound) const int shift_right_bound = 0; const float s_descale = {s_descale_input}; const float v_scale = {v_scale_input}; const float o_scale = {o_scale_input}; amax_s_{p_id} = fmaxf(amax_s_{p_id}, beta{index}); // dropout types and simple declarations r32 reg_{rng_guid}_0[TILE_N_{p_id} / 32]; const float dropout_probability_{p_id} = {p_dropout}; const float dropout_probability_scale_{p_id} = 1.0f / dropout_probability_{p_id}; const float log_dropout_probability_scale_{p_id} = log2(dropout_probability_scale_{p_id}); sttm_32dp32bit_x{sttm_size}(tmem_fp16_S + 0, ®_{pw_chain_s_guid}_0[0]); fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(bmm2_mbar + 0)); sttm_32dp32bit_x{sttm_size}(tmem_fp16_S + {sttm_size}, ®_{pw_chain_s_guid}_0[{sttm_size}]); fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(bmm2_mbar + 1)); amax_o_{p_id} = fmaxf(amax_o_{p_id}, fabsf(reinterpret_cast(fp32_reg_O[i]))); amax_o_{p_id} = fmaxf(amax_o_{p_id}, fabsf(out.x)); amax_o_{p_id} = fmaxf(amax_o_{p_id}, fabsf(out.y)); actual_seqlen_kv_{p_id} = {input_kv}[batch_coord_{p_id}]; actual_seqlen_q_{p_id} = {input_q}[batch_coord_{p_id}]; if (row_coord >= actual_seqlen_q_{p_id}) {{ out = make_float2(0.0f, 0.0f); }} kv_loop_left_bound += {lean_tile_id}; q_row_coord = blocked_row_coord{num_2d_tile_k} * Tiles_Q * BMM{p_id}_TILE_M; int2 kv_loop_bounds = compute_kv_loop_bounds(q_row_coord, BMM{p_id}_TILE_M * Tiles_Q, TILE_N_{p_id}, actual_seqlen_kv_{p_id}, {seqlen_q_code}, shift_right_bound, left_bound); kv_loop_left_bound = kv_loop_bounds.x; kv_loop_right_bound = kv_loop_bounds.y; if (actual_seqlen_q_{p_id} == 0 || q_row_coord >= actual_seqlen_q_{p_id}) {{ kv_loop_right_bound = kv_loop_left_bound; }} if (row_coord >= {actual_s_kv_code} + left_bound - 1) {{ total_sum = {actual_s_kv_code} * 1.0f; }} page_table_oob_{guid} = 0; for (int i = 0; i < TILE_N_1; i+={tma_box_size_1} * {pages_per_ldg}){{ page_table_oob_{guid} |= (((kv_loop + {split_k_factor}) * TILE_N_1 + i) >= {sequence_descriptor}[batch_coord_{p_id}]) << (i/({tma_box_size_1} * {pages_per_ldg})); }} #pragma unroll for (int i = 0; i < {num_loads}; i++) {{ if(((s_k_base >> log_block_size_{guid})+i) < {sequence_desc}[batch_coord_{p_id}]) {{ ldg_{bits_per_ldg}(&container_k_page_index[i], page_table_base_{guid} + (((s_k_base >> log_block_size_{guid})+i) * page_table_desc_{guid}.strides[2]) ); }} }} #pragma unroll for (int i = 0; i < {num_loads}; i++) {{ if((s_v_base >> log_block_size_{guid} + i) < {sequence_desc}[batch_coord_{p_id}]) {{ ldg_{bits_per_ldg}(&container_v_page_index[i], page_table_base_{guid} + (((s_v_base >> log_block_size_{guid})+i) * page_table_desc_{guid}.strides[2]) ); }} }} page_container_oob_row_k = 0; #pragma unroll for (int i = 0; i < {sequences_per_thread}; i++) {{ page_container_oob_row_k |= ((s_k_base + i) >= {sequence_desc}[batch_coord_{p_id}]) << i; }} uint32_t container_k_page_index[{k_pages_per_thread}] = {{}}; uint32_t page_container_oob_row_k = 0; uint32_t s_k_base = (kv_loop_left_bound) * TILE_N_{p_id} + tiw * {sequences_per_thread};{page_table_k_lookup_code} page_container_oob_row_v = 0; #pragma unroll for (int i = 0; i < {sequences_per_thread}; i++) {{ page_container_oob_row_v |= ((s_v_base + i) >= {sequence_desc}[batch_coord_{p_id}]) << i; }} s_k_base = (kv_loop + 1) * TILE_N_{p_id} + tiw * {sequences_per_thread};{page_table_k_lookup_code} uint32_t container_v_page_index[{v_pages_per_thread}] = {{}}; uint32_t page_container_oob_row_v = 0; uint32_t s_v_base = (kv_loop_left_bound) * TILE_N_{p_id} + tiw * {sequences_per_thread};{page_table_v_lookup_code} uint32_t * container_v_page_index = container_k_page_index; uint32_t& page_container_oob_row_v = page_container_oob_row_k; uint32_t& s_v_base = s_k_base; s_v_base = (kv_loop + 1) * TILE_N_{p_id} + tiw * {sequences_per_thread};{page_table_v_lookup_code} if (TILE_M_{p_id} < 64) {{ if (attnDesc.k_h >= attnDesc.v_h) {{ head_coord_{p_id} = head_coord_from_grid_{p_id} * attnDesc.q_heads_per_k; head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; }} else {{ head_coord_{p_id} = head_coord_from_grid_{p_id} * attnDesc.q_heads_per_v; head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; }} }} else {{ if (attnDesc.k_h >= attnDesc.v_h) {{ head_coord_k_{p_id} = head_coord_from_grid_{p_id} / FORT_DIV_UP(attnDesc.q_heads_per_k, TILE_M_{p_id}); head_coord_q_offset_{p_id} = head_coord_from_grid_{p_id} % FORT_DIV_UP(attnDesc.q_heads_per_k, TILE_M_{p_id}); head_coord_{p_id} = head_coord_k_{p_id} * attnDesc.q_heads_per_k + head_coord_q_offset_{p_id} * TILE_M_{p_id}; head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; }} else {{ head_coord_v_{p_id} = head_coord_from_grid_{p_id} / FORT_DIV_UP(attnDesc.q_heads_per_v, TILE_M_{p_id}); head_coord_q_offset_{p_id} = head_coord_from_grid_{p_id} % FORT_DIV_UP(attnDesc.q_heads_per_v, TILE_M_{p_id}); head_coord_{p_id} = head_coord_v_{p_id} * attnDesc.q_heads_per_v + head_coord_q_offset_{p_id} * TILE_M_{p_id}; head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; }} }} int actual_num_rows = 0; if (tiw == 0) {{ for (int i = 0; i < attnDesc.b; i++) {{ actual_num_rows += FORT_DIV_UP({input_q}[i], TILE_M_{p_id} * 2); }} }} actual_num_rows = __shfl_sync(0xffffffff, actual_num_rows, 0); const int actual_num_tiles_{p_id} = actual_num_rows * attnDesc.q_h{mul_num_2d_tile_k}; int head_coord_q_offset_{p_id} = 0; uint32_t blocked_row_coord = 0; uint32_t head_coord_from_grid_{p_id} = 0; uint32_t head_coord_{p_id} = 0; uint32_t head_coord_k_{p_id} = 0; uint32_t head_coord_v_{p_id} = 0; uint32_t batch_coord_{p_id} = 0; uint32_t is_valid_tile = true; uint32_t tile_id = 0, cumulative_tiles = 0; // Get next tile id wait_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()]), sched_state.phase()); if (tiw == 0) {{ uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); lds_128(tile_id_and_coord, tile_id_smem_int_ptr); lds_128(&tile_id_and_coord[4], tile_id_smem_int_ptr + 16); is_valid_tile = tile_id_and_coord[0]; batch_coord_{p_id} = tile_id_and_coord[1]; head_coord_from_grid_{p_id} = tile_id_and_coord[2]; blocked_row_coord = tile_id_and_coord[3]; q_row_coord = blocked_row_coord{div_num_2d_tile_k} * Tiles_Q * BMM1_TILE_M; actual_seqlen_q_{p_id} = tile_id_and_coord[4]; actual_seqlen_kv_{p_id} = tile_id_and_coord[5]; kv_loop_left_bound = tile_id_and_coord[6]; kv_loop_right_bound = tile_id_and_coord[7]; }} ++sched_state; is_valid_tile = __shfl_sync(0xffffffff, is_valid_tile, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_from_grid_{p_id} = __shfl_sync(0xffffffff, head_coord_from_grid_{p_id}, 0); blocked_row_coord = __shfl_sync(0xffffffff, blocked_row_coord, 0); q_row_coord = __shfl_sync(0xffffffff, q_row_coord, 0); actual_seqlen_q_{p_id} = __shfl_sync(0xffffffff, actual_seqlen_q_{p_id}, 0); actual_seqlen_kv_{p_id} = __shfl_sync(0xffffffff, actual_seqlen_kv_{p_id}, 0); kv_loop_left_bound = __shfl_sync(0xffffffff, kv_loop_left_bound, 0); kv_loop_right_bound = __shfl_sync(0xffffffff, kv_loop_right_bound, 0); {extract_head_coord}gridDim.z - 1 - tile_id_and_coord[2] tile_id_and_coord[0] = blockIdx.x; tile_id_and_coord[1] = blockIdx.y; tile_id_and_coord[2] = blockIdx.z; tile_id_and_coord[3] = 1; int head_coord_q_offset_{p_id} = 0; uint32_t head_coord_{p_id}, head_coord_k_{p_id}, head_coord_v_{p_id}; uint32_t blocked_row_coord = {blocked_row_coord}; uint32_t head_coord_from_grid_{p_id} = {head_coord_from_grid}; uint32_t batch_coord_{p_id} = {batch_coord}; uint32_t lean_tile_id = tile_id_and_coord[0]; {actual_lean_tile_id_decl} uint32_t is_valid_tile = true; {extract_head_coord} // Get next tile id wait_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()]), sched_state.phase()); uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); lds_128(tile_id_and_coord, tile_id_smem_int_ptr); ++sched_state; lean_tile_id = tile_id_and_coord[0]; {actual_lean_tile_id_decl} blocked_row_coord = {blocked_row_coord}; head_coord_from_grid_{p_id} = {head_coord_from_grid}; batch_coord_{p_id} = {batch_coord}; is_valid_tile = tile_id_and_coord[2] & 1; {extract_head_coord} if (elect_one) {{ arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.read_tile_id_done_mbar[sched_state.index()]))); }} uint32_t tile_id_and_coord[8] = {{0}}; int actual_seqlen_kv_{p_id} = attnDesc.s_kv; int actual_seqlen_q_{p_id} = attnDesc.s_q; int q_row_coord = 0; int kv_loop_right_bound, kv_loop_left_bound; {num_2d_tile_k}{actual_num_tiles_code} {left_bound_code}{shift_right_bound_code} {get_base_tile_id_code} PipelineState sched_state(0, 0); // index, state final_total_sum[i] *= inv_s_scale; final_total_sum[i] *= dropout_probability_{p_id}; const int swizzled_row = (i % 8) ^ (tid / 16); sts_8(cast_smem_ptr_to_uint( shared_storage.smem_S + kv_buffer_index * sBufferElems + i * 128 + swizzled_row * 16 + (tid % 16)), ®_{fp8_pw_chain_s_guid}_0[i/4], i % 4); const int swizzled_row = (i % 8) ^ ((tid % 64) / 8); sts_16(cast_smem_ptr_to_uint( shared_storage.smem_S + kv_buffer_index * sBufferElems + i * 64 + swizzled_row * 8 + (tid % 8) + (tid / 64) * FORT_MAX(8, BMM1_TILE_M) * 64), ®_{pw_chain_s_guid}_0[i/2], i % 2); if (wid >= 0 && wid < SoftmaxWarps) {{ // Softmax reg_alloc(); {rng_types} uint32_t tmem_fp32_S = base_tmem_addr + 0; uint32_t tmem_Stats = base_tmem_addr + 384; r32 reg_{bmm_0_guid}_0[FORT_MAX(2, BMM1_TILE_M)] = {{0u}}; r32 fp32_stats[2 * BMM1_TILE_M]; // Memory barrier states PipelineState kv_mbar_state(0, 0); // index, state uint32_t stat_mbar_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} int p_row_{p_id} = 0;{pw_chain_decl} stat_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile0_empty_mbar[0])), stat_mbar_state); #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop+={split_k_factor}) {{ int kv_buffer_index = kv_mbar_state.index(); int kv_buffer_state = kv_mbar_state.phase(); int p_head_{p_id} = head_coord_{p_id}; int p_col_{p_id} = kv_loop * TILE_N_{p_id} + tid; {{ {rng_decls}{load_band_matrix_code} wait_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm1_tile0_done_mbar[kv_buffer_index])), kv_buffer_state); ldtm_32dp32bit_x{tile_m}(®_{bmm_0_guid}_0[0], tmem_fp32_S + kv_buffer_index * 128); {pw_chain_code} #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ }} fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm2_tile0_ready_mbar[0]))); cfence(); stat_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile0_empty_mbar[0])), stat_mbar_state); }} ++kv_mbar_state; }} // End of mainloop // Cross-warps reduction float final_total_sum[BMM1_TILE_M]; warp_sum_reduction(reinterpret_cast(total_sum), reinterpret_cast(final_total_sum)); named_barrier_wait(SOFTMAX_BARRIER, threads_per_group); if (tiw == 0) {{ #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ sts_32(cast_smem_ptr_to_uint(shared_storage.smem_Stats) + i * warps_per_group * sizeof(float) + wid * sizeof(float), &(reinterpret_cast(final_total_sum)[i])); }} }} named_barrier_wait(SOFTMAX_BARRIER, threads_per_group); #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ r32 tmp_max[4]; lds_128(tmp_max, cast_smem_ptr_to_uint(shared_storage.smem_Stats) + i * warps_per_group * sizeof(float)); float sum_0 = reinterpret_cast(tmp_max[0]) + reinterpret_cast(tmp_max[1]); float sum_1 = reinterpret_cast(tmp_max[2]) + reinterpret_cast(tmp_max[3]); final_total_sum[i] = sum_0 + sum_1; }} #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ reinterpret_cast(fp32_stats[i*2 + 0]) = total_max[i]; reinterpret_cast(fp32_stats[i*2 + 1]) = final_total_sum[i]; }} sttm_32dp32bit_x{final_stats_sttm_size}(tmem_Stats, &fp32_stats[0]); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile0_full_mbar[0]))); {get_next_tile_id_code} {kv_loop_bound_code} }} // end of persistent loop }} final_total_sum *= inv_s_scale; final_total_sum *= dropout_probability_{p_id}; total_sum = ffma2(alpha2, total_sum, local_sum); float2 local_row_sum_0 = make_float2(0.f, 0.f); float2 local_row_sum_1 = make_float2(0.f, 0.f); float2 local_row_sum_2 = make_float2(0.f, 0.f); float2 local_row_sum_3 = make_float2(0.f, 0.f); #pragma unroll for (int i = 0; i < BMM1_TILE_N; i+=8) {{ float2 in = make_float2(reinterpret_cast({softmax_input_reg_name}[i + 0]), reinterpret_cast({softmax_input_reg_name}[i + 1])); local_row_sum_0 = fadd2(local_row_sum_0, in); in = make_float2(reinterpret_cast({softmax_input_reg_name}[i + 2]), reinterpret_cast({softmax_input_reg_name}[i + 3])); local_row_sum_1 = fadd2(local_row_sum_1, in); in = make_float2(reinterpret_cast({softmax_input_reg_name}[i + 4]), reinterpret_cast({softmax_input_reg_name}[i + 5])); local_row_sum_2 = fadd2(local_row_sum_2, in); in = make_float2(reinterpret_cast({softmax_input_reg_name}[i + 6]), reinterpret_cast({softmax_input_reg_name}[i + 7])); local_row_sum_3 = fadd2(local_row_sum_3, in); }} local_row_sum_0 = fadd2(local_row_sum_0, local_row_sum_1); local_row_sum_2 = fadd2(local_row_sum_2, local_row_sum_3); local_row_sum_0 = fadd2(local_row_sum_0, local_row_sum_2); total_sum = ffma2(alpha2, total_sum, local_row_sum_0); // To sync TMASTG for O and band Bias epilogue_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_empty_mbar[0]), epilogue_state); epilogue_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_empty_mbar[0]), epilogue_state); epilogue_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.epilogue_done_mbar[0]), epilogue_state);{read_tile_id_done_code}{get_next_tile_id_code} if (wid >= 0 && wid < SoftmaxWarps) {{ // Softmax reg_alloc(); {rng_types} const uint32_t softmax_gid = wid / 4; const uint32_t softmax_gid_s_offset = softmax_gid * BMM1_TILE_N; uint32_t tmem_fp32_S = base_tmem_addr + 0 + softmax_gid_s_offset; uint32_t tmem_fp16_S = base_tmem_addr + 64 + softmax_gid_s_offset; uint32_t tmem_Stats = base_tmem_addr + 0 + softmax_gid_s_offset; r32 reg_{bmm_0_guid}_0[BMM1_TILE_N]; r32 fp32_stats[2]; // Memory barrier states uint32_t bmm_mbar_state = 0; uint32_t stat_mbar_state = 0; uint32_t epilogue_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} int p_row_{p_id} = q_row_coord + softmax_gid * TILE_M_{p_id} + tid; {pw_chain_decl} uint64_t& bmm1_mbar = softmax_gid == 0 ? shared_storage.bmm1_tile0_done_mbar[0] : shared_storage.bmm1_tile1_done_mbar[0]; uint64_t& stat_empty_mbar = softmax_gid == 0 ? shared_storage.stat_tile0_empty_mbar[0] : shared_storage.stat_tile1_empty_mbar[0]; uint64_t* bmm2_mbar = softmax_gid == 0 ? &(shared_storage.bmm2_tile0_ready_mbar[0]) : &(shared_storage.bmm2_tile1_ready_mbar[0]); uint64_t* stat_full_mbar = softmax_gid == 0 ? &(shared_storage.stat_tile0_full_mbar[0]) : &(shared_storage.stat_tile1_full_mbar[0]); stat_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&stat_empty_mbar), stat_mbar_state); #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop++) {{ int p_col_{p_id} = kv_loop * TILE_N_{p_id}; {{ {rng_decls}{load_band_matrix_code} wait_barrier(cast_smem_ptr_to_uint(&bmm1_mbar), bmm_mbar_state); // LDTM : https://p4hw-swarm.nvidia.com/view/hw/doc/gpu/blackwell/blackwell/design/IAS/SM/ISA/opcodes/opLDTM.htm #pragma unroll for (int ldtm_step = 0; ldtm_step < BMM1_TILE_N / 32; ldtm_step++) {{ ldtm_32dp32bit_x32(®_{bmm_0_guid}_0[32 * ldtm_step], tmem_fp32_S + ldtm_step * 32); }} {pw_chain_code} {sttm_s_code} cfence(); stat_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&stat_empty_mbar), stat_mbar_state); float2 alpha2 = make_float2(alpha, alpha); }} bmm_mbar_state ^= 1; }} // End of mainloop float final_total_sum = total_sum.x + total_sum.y; reinterpret_cast(fp32_stats[0]) = total_max; reinterpret_cast(fp32_stats[1]) = final_total_sum; // STTM sttm_32dp32bit_x2(tmem_Stats, &fp32_stats[0]); arrive_barrier(cast_smem_ptr_to_uint(stat_full_mbar)); // This portion of the code may seem strange, please read the documentation here: // /home/gautamj/work/blackwell_flash_attention/kernel_store/cutlass/include/cutlass/gemm/kernel/sm100_tile_scheduler.hpp // Function: work_tile_info_from_workid_response, load_query_response{get_next_tile_id_code} }} // end of persistent loop }} float scale_tmp = s_descale * v_scale * o_scale; reinterpret_cast(fp32_reg_O[i]) = reinterpret_cast(fp32_reg_O[i]) * scale_tmp; if (TILE_K_{p_id} == 128 || tid < TILE_K_{p_id}) {{ #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ const int swizzled_row = (i % 8) ^ ((tid % 32) / 4); sts_32(cast_smem_ptr_to_uint( shared_storage.smem_O + i * 32 + swizzled_row * 4 + (tid % 4) + (tid / 32) * FORT_MAX(8, BMM1_TILE_M) * 32), &fp32_reg_O[i]); }} }} const int swizzled_row = (i % 8) ^ (tid / 16); sts_8(cast_smem_ptr_to_uint( shared_storage.smem_O + i * 128 + swizzled_row * 16 + (tid % 16)), ®_O[i/4], i % 4); const int swizzled_row = (i % 8) ^ ((tid % 64) / 8); sts_16(cast_smem_ptr_to_uint( shared_storage.smem_O + i * 64 + swizzled_row * 8 + (tid % 8) + (tid / 64) * FORT_MAX(8, BMM1_TILE_M) * 64), ®_O[i/2], i % 2); #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ reinterpret_cast(fp32_reg_O[i]) = reinterpret_cast(fp32_reg_O[i]) * beta[i];{amax_reduce_o_code} }}{downcast_o_fp32_code} if (TILE_K_{p_id} == 128 || tid < TILE_K_{p_id}) {{ #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ }} }} beta[i] *= s_descale * v_scale * o_scale; if (tid == 0 && head_coord_q_offset_{p_id} * TILE_M_{p_id} + i < attnDesc.min_q_heads_per_kv) {{ stg_32(partial_m_loc + i, &(reinterpret_cast(total_max))); stg_32(partial_l_loc + i, &(reinterpret_cast(total_sum))); }} float *partial_m_loc = partial_m + {lean_tile_id} * attnDesc.b * attnDesc.q_h + batch_coord_{p_id} * attnDesc.q_h + head_coord_{p_id}; float *partial_l_loc = partial_l + {lean_tile_id} * attnDesc.b * attnDesc.q_h + batch_coord_{p_id} * attnDesc.q_h + head_coord_{p_id}; else if (wid >= SoftmaxWarps && wid < SoftmaxWarps + CorrectionWarps) {{ // Correction reg_alloc(); uint32_t tmem_fp32_O = base_tmem_addr + 256; uint32_t tmem_Stats = base_tmem_addr + 384; {scale_correction_decl} float amax_s_{p_id} = 0.f; float amax_o_{p_id} = 0.f; // Registers uint32_t fp32_stats[2 * BMM1_TILE_M]; uint32_t fp32_O[BMM1_TILE_M]; // Memory barrier states uint32_t epilogue_state = 0; uint32_t bmm_mbar_state = 0; uint32_t stat_mbar_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} if (kv_loop_left_bound < kv_loop_right_bound) {{ // No correction for iter 0 arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm2_tile0_ready_mbar[0]))); {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_full_mbar[0]), stat_mbar_state); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile0_empty_mbar[0]))); }} stat_mbar_state ^= 1; }} else {{ arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.empty_mainloop_mbar[0]))); }} #pragma unroll 1 for (int kv_loop = kv_loop_left_bound + {split_k_factor}; kv_loop < kv_loop_right_bound; kv_loop+={split_k_factor}) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_full_mbar[0]), stat_mbar_state); ldtm_32dp32bit_x{tile_m}(&fp32_stats[0], tmem_Stats); float alpha[BMM1_TILE_M]; #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ alpha[i] = reinterpret_cast(fp32_stats[i]); }} arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_empty_mbar[0])); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0]), bmm_mbar_state); ldtm_32dp32bit_x{tile_m}(&fp32_O[0], tmem_fp32_O); #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ reinterpret_cast(fp32_O[i]) = reinterpret_cast(fp32_O[i]) * alpha[i]; }} sttm_32dp32bit_x{tile_m}(tmem_fp32_O, &fp32_O[0]); fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[0])); stat_mbar_state ^= 1; bmm_mbar_state ^= 1; }} // End of mainloop // Epilogue {{ epilogue_state ^= 1; ElementO *smem_O = shared_storage.smem_O; r32 fp32_reg_O[FORT_MAX(2, BMM1_TILE_M)] = {{0u}}; r32 reg_O[FORT_MAX(BMM1_TILE_M / BYTES_PER_ELEMENT, 1)]; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_full_mbar[0]), stat_mbar_state); ldtm_32dp32bit_x{final_stats_sttm_size}(&fp32_stats[0], tmem_Stats); fence_view_async_tmem_load(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_empty_mbar[0])); float beta[BMM1_TILE_M]; #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ float total_max = reinterpret_cast(fp32_stats[i*2 + 0]) * ln2; float total_sum = reinterpret_cast(fp32_stats[i*2 + 1]); float softmax_stats = total_sum == 0.f ? 0.f : total_max + __logf(total_sum); beta[i] = (total_sum == 0.f) ? 0.f : 1.f / total_sum;{amax_reduce_s_code} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0]), bmm_mbar_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_empty_mbar[0]), epilogue_state); ldtm_32dp32bit_x{tile_m}(&fp32_reg_O[0], tmem_fp32_O); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_full_mbar[0])); stat_mbar_state ^= 1; bmm_mbar_state ^= 1; }} // Epilogue end {get_next_tile_id_code} {kv_loop_bound_code} }} // end of persistent loop{amax_stg_s_code}{amax_stg_o_code} }} const int kv_stage = kv_mbar_state.index(); uint32_t tmem_acc = tmem_S_acc_0 + kv_stage * 128;{bmm1_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile0_done_mbar[kv_stage])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[kv_stage])); // change the smem buffer for K utcmma_smem_desc_K.increment_smem_buffer(); if (block % 2 == 1 || TILE_K_{p_id} == 64) {{ uint64_t* tma_o_full_mbar = sub_tile_id == 0 ? &(shared_storage.tma_o_0_full_mbar[block/2]) : &(shared_storage.tma_o_1_full_mbar[block/2]); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(tma_o_full_mbar)); }} uint64_t* tma_o_full_mbar = sub_tile_id == 0 ? &(shared_storage.tma_o_0_full_mbar[block]) : &(shared_storage.tma_o_1_full_mbar[block]); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(tma_o_full_mbar)); wait_barrier(cast_smem_ptr_to_uint(&tma_o_done_mbar), epilogue_state); if (sub_tile_id == 1) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_empty_mbar[0]), epilogue_state); }} else if (wid >= SoftmaxWarps && wid < SoftmaxWarps + CorrectionWarps) {{ // Correction reg_dealloc(); uint32_t tmem_fp32_O_0 = base_tmem_addr + 256; uint32_t tmem_fp32_O_1 = base_tmem_addr + 384; uint32_t tmem_Stats_0 = base_tmem_addr + 0; uint32_t tmem_Stats_1 = base_tmem_addr + 0 + BMM1_TILE_N; static constexpr int local_correction_block_size = 32; static constexpr int local_epilogue_block_size = 64; {scale_correction_decl} float amax_s_{p_id} = 0.f; float amax_o_{p_id} = 0.f; // Registers uint32_t fp32_stats[2]; uint32_t fp32_O[local_correction_block_size]; // Memory barrier states uint32_t epilogue_state = 0; uint32_t bmm_mbar_state = 0; uint32_t stat_mbar_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} if (kv_loop_left_bound < kv_loop_right_bound) {{ // No correction for iter 0 arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm2_tile0_ready_mbar[0]))); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm2_tile1_ready_mbar[0]))); {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_full_mbar[0]), stat_mbar_state); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile0_empty_mbar[0]))); }} {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile1_full_mbar[0]), stat_mbar_state); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile1_empty_mbar[0]))); }} stat_mbar_state ^= 1; }} else {{ arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.empty_mainloop_mbar[0]))); }} #pragma unroll 1 for (int kv_loop = kv_loop_left_bound + 1; kv_loop < kv_loop_right_bound; kv_loop++) {{ #pragma unroll for (int sub_tile_id = 0; sub_tile_id < 2; ++sub_tile_id) {{ uint32_t tmem_Stats = sub_tile_id == 0 ? tmem_Stats_0 : tmem_Stats_1; uint32_t tmem_fp32_O = sub_tile_id == 0 ? tmem_fp32_O_0 : tmem_fp32_O_1; uint64_t& stat_full_mbar = sub_tile_id == 0 ? shared_storage.stat_tile0_full_mbar[0] : shared_storage.stat_tile1_full_mbar[0]; uint64_t& bmm_done_mbar = sub_tile_id == 0 ? shared_storage.bmm2_tile0_done_mbar[0] : shared_storage.bmm2_tile1_done_mbar[0]; uint64_t* stat_empty_mbar = sub_tile_id == 0 ? &(shared_storage.stat_tile0_empty_mbar[0]) : &(shared_storage.stat_tile1_empty_mbar[0]); uint64_t* bmm_ready_mbar = sub_tile_id == 0 ? &(shared_storage.bmm2_tile0_ready_mbar[0]) : &(shared_storage.bmm2_tile1_ready_mbar[0]); wait_barrier(cast_smem_ptr_to_uint(&stat_full_mbar), stat_mbar_state); ldtm_32dp32bit_x1(&fp32_stats[0], tmem_Stats); float alpha = reinterpret_cast(fp32_stats[0]); arrive_barrier(cast_smem_ptr_to_uint(stat_empty_mbar)); float2 alpha2 = make_float2(alpha, alpha); wait_barrier(cast_smem_ptr_to_uint(&bmm_done_mbar), bmm_mbar_state); #pragma unroll for (int block = 0; block < TILE_O_{p_id} / local_correction_block_size; block++) {{ // LDTM #pragma unroll for (int ldtm_step = 0; ldtm_step < local_correction_block_size / 16; ldtm_step++) {{ ldtm_32dp32bit_x16(&fp32_O[16 * ldtm_step], tmem_fp32_O + block * local_correction_block_size + ldtm_step * 16); }} #pragma unroll for (int i = 0; i < local_correction_block_size; i+=2) {{ float2 in = make_float2(reinterpret_cast(fp32_O[i+0]), reinterpret_cast(fp32_O[i+1])); float2 out = fmul2(alpha2, in); reinterpret_cast(fp32_O[i+0]) = out.x; reinterpret_cast(fp32_O[i+1]) = out.y; }} #pragma unroll for (int sttm_step = 0; sttm_step < local_correction_block_size / 16; sttm_step++) {{ sttm_32dp32bit_x16(tmem_fp32_O + block * local_correction_block_size + sttm_step * 16, &fp32_O[16 * sttm_step]); }} cfence(); }} fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(bmm_ready_mbar)); cfence(); }} stat_mbar_state ^= 1; bmm_mbar_state ^= 1; }} // End of mainloop // Epilogue {{ epilogue_state ^= 1; static constexpr int stg_step = 16 / BYTES_PER_ELEMENT; const int local_row = (tid % 8) / {swizzle_factor}; {stg_stats_decl} #pragma unroll for (int sub_tile_id = 0; sub_tile_id < 2; ++sub_tile_id) {{ const int row_coord = q_row_coord + sub_tile_id * TILE_M_{p_id} + tid; uint32_t fp32_reg_O[local_epilogue_block_size]; uint32_t reg_O[local_epilogue_block_size / (4 / BYTES_PER_ELEMENT)]; uint32_t tmem_Stats = sub_tile_id == 0 ? tmem_Stats_0 : tmem_Stats_1; uint32_t tmem_fp32_O = sub_tile_id == 0 ? tmem_fp32_O_0 : tmem_fp32_O_1; uint64_t& stat_full_mbar = sub_tile_id == 0 ? shared_storage.stat_tile0_full_mbar[0] : shared_storage.stat_tile1_full_mbar[0]; uint64_t& bmm_done_mbar = sub_tile_id == 0 ? shared_storage.bmm2_tile0_done_mbar[0] : shared_storage.bmm2_tile1_done_mbar[0]; uint64_t* stat_empty_mbar = sub_tile_id == 0 ? &(shared_storage.stat_tile0_empty_mbar[0]) : &(shared_storage.stat_tile1_empty_mbar[0]); wait_barrier(cast_smem_ptr_to_uint(&stat_full_mbar), stat_mbar_state); ldtm_32dp32bit_x2(&fp32_stats[0], tmem_Stats); float total_max = reinterpret_cast(fp32_stats[0]); float total_sum = reinterpret_cast(fp32_stats[1]); fence_view_async_tmem_load(); arrive_barrier(cast_smem_ptr_to_uint(stat_empty_mbar));{pad_softmax_sum_code} float softmax_stats = total_sum == 0.f ? 0.f : total_max * ln2 + __logf(total_sum);{stg_stats_code} float beta = (total_sum == 0.f) ? 0.f : 1.f / total_sum;{amax_reduce_s_code} float2 beta2 = make_float2(beta,beta); wait_barrier(cast_smem_ptr_to_uint(&bmm_done_mbar), bmm_mbar_state); #pragma unroll for (int block = 0; block < TILE_O_{p_id} / local_epilogue_block_size; block++) {{ if (kv_loop_left_bound >= kv_loop_right_bound) {{ #pragma unroll for (int i = 0; i < local_epilogue_block_size; i++) {{ fp32_reg_O[i] = 0; }} }} else {{ #pragma unroll for (int ldtm_step = 0; ldtm_step < local_epilogue_block_size / 32; ldtm_step++) {{ ldtm_32dp32bit_x32(&fp32_reg_O[32 * ldtm_step], tmem_fp32_O + block * local_epilogue_block_size + ldtm_step * 32); }} }} #pragma unroll for (int i = 0; i < local_epilogue_block_size; i+=2) {{ float2 in = make_float2(reinterpret_cast(fp32_reg_O[i+0]), reinterpret_cast(fp32_reg_O[i+1])); float2 out = fmul2(beta2, in);{padded_output} reinterpret_cast(fp32_reg_O[i+0]) = out.x; reinterpret_cast(fp32_reg_O[i+1]) = out.y;{amax_reduce_o_code} }} {downcast_o_fp32_code} #pragma unroll for (int i = 0; i < local_epilogue_block_size / stg_step; i++) {{ const int swizzle_col = local_row ^ ((block * local_epilogue_block_size / stg_step + i) % 8); const int block_offset = (block / ((128 / BYTES_PER_ELEMENT) / local_epilogue_block_size)) * TILE_M_{p_id} * (128 / BYTES_PER_ELEMENT); sts_128(cast_smem_ptr_to_uint(smem_O + block_offset + tid * ({bytes_per_ld_qkv} / BYTES_PER_ELEMENT) + swizzle_col * stg_step), reinterpret_cast(®_O[i*4])); }} cfence(); }} cfence(); }} stat_mbar_state ^= 1; bmm_mbar_state ^= 1; }} // Epilogue end {get_next_tile_id_code} }} // end of persistent loop umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[kv_stage])); // change the smem buffer for K utcmma_smem_desc_K.increment_smem_buffer(); utcmma_smem_desc_V.increment_smem_buffer(); uint32_t tmem_acc = tmem_S_acc_0;{bmm1_code} // change the smem buffer for Q utcmma_smem_desc_Q.increment_smem_buffer(); // Q * K matmul for sub-tile 0 if (elect_one) {{ Smem_utcmma_descriptor& utcmma_smem_desc_Q = utcmma_smem_desc_Q_0; umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage])); // change the smem buffer for V utcmma_smem_desc_V.increment_smem_buffer(); const int kv_stage = kv_mbar_state.index(); // Q * K matmul for sub-tile 1 if (elect_one) {{ Smem_utcmma_descriptor& utcmma_smem_desc_Q = utcmma_smem_desc_Q_0; uint32_t tmem_acc = tmem_S_acc_1;{bmm1_code} // change the smem buffer for K utcmma_smem_desc_K.increment_smem_buffer(); // change the smem buffer for Q utcmma_smem_desc_Q.increment_smem_buffer(); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[kv_stage])); }} utcmma_smem_desc_K.increment_smem_buffer(); // S * V matmul for sub-tile 1 if (elect_one) {{ uint32_t bmm2_ready_mbar = cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_ready_mbar[0]); uint32_t tmem_O = tmem_O_1; uint32_t tmem_S = tmem_S_bmm2_1; uint32_t scaleC = kv_loop > kv_loop_left_bound + {split_k_factor};{bmm2_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_empty_mbar[kv_stage])); // Change the buffer for V utcmma_smem_desc_V.increment_smem_buffer(); }} bmm_mbar_state ^= 1; umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_done_mbar[0])); uint32_t tmem_O = tmem_O_0; uint32_t scaleC = kv_loop_right_bound > kv_loop_left_bound + {split_k_factor};{bmm2_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_v_empty_mbar[kv_stage])); utcmma_smem_desc_V.increment_smem_buffer(); utcmma_smem_desc_S.increment_smem_buffer(); uint32_t bmm2_ready_mbar = cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_ready_mbar[0]); uint32_t tmem_O = tmem_O_1; uint32_t tmem_S = tmem_S_bmm2_1; uint32_t scaleC = kv_loop_right_bound > kv_loop_left_bound + {split_k_factor};{bmm2_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile1_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_empty_mbar[kv_stage])); // Change the buffer for V utcmma_smem_desc_V.increment_smem_buffer(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[kv_stage]), kv_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[0]), bmm_mbar_state); uint32_t tmem_O = tmem_O_0; uint32_t scaleC = kv_loop > kv_loop_left_bound + {split_k_factor};{bmm2_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_v_empty_mbar[kv_stage])); utcmma_smem_desc_V.increment_smem_buffer(); utcmma_smem_desc_S.increment_smem_buffer(); uint32_t bmm2_ready_mbar = cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[0]); uint32_t tmem_O = tmem_O_0; uint32_t tmem_S = tmem_S_bmm2_0; uint32_t scaleC = 1;{bmm2_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0])); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[kv_stage]), kv_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[0]), bmm_mbar_state); bmm_mbar_state ^= 1; if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile0_done_mbar[0])); }} // elect_one if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile1_done_mbar[0])); }} // elect_one wait_barrier(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_full_mbar[kv_mbar_state.index()]), kv_mbar_state.phase()); stat_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile1_empty_mbar[0]), stat_mbar_state); stat_mbar_state ^= 1; const int q_stage = q_mbar_state.index(); const int q_phase = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), q_phase); ++q_mbar_state; {Q_matmul_K_1} if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm1_tile1_done_mbar[0])); }} // elect_one wait_barrier(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_full_mbar[kv_stage]), kv_state); // S * V matmul for sub-tile 0 if (elect_one) {{ uint32_t bmm2_ready_mbar = cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_ready_mbar[0]); uint32_t tmem_O = tmem_O_0; uint32_t tmem_S = tmem_S_bmm2_0; uint32_t scaleC = 0;{bmm2_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm2_tile0_done_mbar[0])); }} uint32_t tmem_S_acc_0 = base_tmem_addr + 0; uint32_t tmem_O_0 = base_tmem_addr + 256; uint32_t tmem_S_acc_0 = base_tmem_addr + 0; uint32_t tmem_S_acc_1 = base_tmem_addr + 128; uint32_t tmem_S_bmm2_0 = base_tmem_addr + 64; uint32_t tmem_S_bmm2_1 = base_tmem_addr + 192; uint32_t tmem_O_0 = base_tmem_addr + 256; uint32_t tmem_O_1 = base_tmem_addr + 384; else if (wid == SoftmaxWarps + CorrectionWarps) {{ // MMA reg_dealloc(); // Memory barrier states uint32_t bmm_mbar_state = 0; uint32_t stat_mbar_state = 1; uint32_t empty_mainloop_mbar_state = 0; PipelineState kv_mbar_state(0, 0); // index, state PipelineState q_mbar_state(0, 0); // index, state {bmm1_decl}{bmm2_decl} // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} //---------------------------------------------------------// //------------------- MMA Pipeline Begin ------------------// //---------------------------------------------------------// if (kv_loop_left_bound < kv_loop_right_bound) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stat_tile0_empty_mbar[0]), stat_mbar_state); const int kv_stage = kv_mbar_state.index(); const int kv_state = kv_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[kv_stage]), kv_state); const int q_stage = q_mbar_state.index(); const int q_phase = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), q_phase); ++q_mbar_state; {Q_matmul_K_0} }} // if (kv_loop_left_bound < kv_loop_right_bound) if (kv_loop_left_bound < kv_loop_right_bound) {{ }} // Mainloop #pragma unroll 1 for (int kv_loop = kv_loop_left_bound + {split_k_factor}; kv_loop < kv_loop_right_bound; kv_loop+={split_k_factor}) {{ const int kv_stage = kv_mbar_state.index(); const uint32_t kv_state = kv_mbar_state.phase(); ++kv_mbar_state; // S * V matmul for sub-tile 0 if (elect_one) {{ }} stat_mbar_state ^= 1; }} if (kv_loop_left_bound < kv_loop_right_bound) {{ const int kv_stage = kv_mbar_state.index(); const uint32_t kv_state = kv_mbar_state.phase(); ++kv_mbar_state; // S * V matmul for sub-tile 1 if (elect_one) {{ }} bmm_mbar_state ^= 1; }} else {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.empty_mainloop_mbar[0]), empty_mainloop_mbar_state); empty_mainloop_mbar_state ^= 1; if (elect_one) {{ }} }} stat_mbar_state ^= 1; {get_next_tile_id_code} smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[k_stage]), kTmaTransactionBytes, elect_one); depbar<{remaining_commit_group_size}>(); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[k_stage])); smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_full_mbar[v_stage]), vTmaTransactionBytes, elect_one); depbar<0>(); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_full_mbar[v_stage])); // Load K const int k_stage = kv_mbar_state.index(); const int k_phase = kv_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[k_stage]), k_phase); {increment_kv_mbar_state} {k_tma_transaction_count} {{ uint32_t local_smem_k = cast_smem_ptr_to_uint(shared_storage.smem_K + k_stage * kBufferElems); uint32_t local_smem_bar_tma_k = cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[k_stage]); const uint32_t p_col_coord = kv_loop * TILE_N_{p_id};{ldgsts_K_code}{k_load_arrive_events} }} // Load V const int v_stage = kv_mbar_state.index(); const int v_phase = kv_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_empty_mbar[v_stage]), v_phase); ++kv_mbar_state; {v_tma_transaction_count} {{ uint32_t local_smem_v = cast_smem_ptr_to_uint(shared_storage.{v_smem} + v_stage * vBufferElems); uint32_t local_smem_bar_tma_v = cast_smem_ptr_to_uint(&shared_storage.{v_barrier}_full_mbar[v_stage]); const uint32_t p_col_coord = kv_loop * TILE_N_{p_id};{ldgsts_V_code}{v_load_arrive_events} }} smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), qTmaTransactionBytes, elect_one); #pragma unroll for (int head_coord_loc = 0; head_coord_loc < TILE_M_{p_id}; head_coord_loc++) {{ uint32_t local_smem_q = cast_smem_ptr_to_uint(shared_storage.smem_Q) + head_coord_loc * 128; uint32_t local_smem_bar_tma_q = cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]); const uint32_t row_coord = 0;{ldgsts_Q_code} }} smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), qTmaTransactionBytes, elect_one); {{ uint32_t local_smem_q = cast_smem_ptr_to_uint(shared_storage.smem_Q + q_stage * qBufferElems); uint32_t local_smem_bar_tma_q = cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]); const uint32_t row_coord = q_row_coord;{ldgsts_Q_code} }} const int q_stage = q_mbar_state.index(); const int q_phase = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage]), q_phase); ++q_mbar_state; // Load Q sub-tile 0 const int q_stage = q_mbar_state.index(); const int q_phase = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage]), q_phase); ++q_mbar_state; // Load Q sub-tile 1 smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), qTmaTransactionBytes, elect_one); {{ uint32_t local_smem_q = cast_smem_ptr_to_uint(shared_storage.smem_Q + q_stage * qBufferElems); uint32_t local_smem_bar_tma_q = cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]); const uint32_t row_coord = q_row_coord + TILE_M_{p_id};{ldgsts_Q_code} }} if (kv_loop_left_bound < kv_loop_right_bound) {{{load_Q_1} }} // if (kv_loop_left_bound < kv_loop_right_bound) arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.tmaldg_tile_started_mbar[0])); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.epilogue_done_mbar[0]), epilogue_state); epilogue_state ^= 1; if (kv_loop_left_bound < kv_loop_right_bound) {{ {load_Q_0} }} // if (kv_loop_left_bound < kv_loop_right_bound) else if (wid == SoftmaxWarps + CorrectionWarps + 1) {{ // TMALDG Q, K, V reg_dealloc(); // Memory barrier states uint32_t epilogue_state = 1; PipelineState q_mbar_state(0, 1); // index, state PipelineState kv_mbar_state(0, 1); // index, state // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} {ldgsts_Q_decl}{ldgsts_K_decl}{ldgsts_V_decl}{page_tables_decl} // Mainloop to load K and V #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop+={split_k_factor}) {{ {load_V} {k_load_arrive_events}{v_load_arrive_events}{page_tables_code} }}{get_next_tile_id_code} tmastg_wait_count<0>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tma_o_0_empty_mbar[0]))); tmastg_wait_count<1>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tma_o_0_empty_mbar[0]))); tmastg_wait_count<0>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tma_o_1_empty_mbar[0]))); // TMASTG for sub-tile 1 #pragma unroll for (int i = 0; i < BMM2_TILE_N * sizeof(ElementO); i+=128) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_1_full_mbar[i/128]), epilogue_state); const uint32_t row_coord = q_row_coord + TILE_M_{p_id}; uint32_t smem_loc = cast_smem_ptr_to_uint(smem_O_1) + i * BMM2_TILE_M; if (actual_seqlen_q_{p_id} > 0) {{{stg_o_code} }} }} tmastg_arrive(); tmastg_wait_count<1>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.epilogue_done_mbar[0]))); tmastg_wait_count<0>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tma_o_0_empty_mbar[0]))); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_full_mbar[0]), epilogue_state); {{ #pragma unroll for (int i = 0; i < BMM2_TILE_N * sizeof(ElementO); i+=128) {{ const uint32_t row_coord = 0; if (actual_seqlen_q_{p_id} > 0) {{ #pragma unroll for (int head_coord_loc_ = 0; head_coord_loc_ < TILE_M_{p_id}; head_coord_loc_++) {{ int head_coord_loc = (head_coord_q_offset_{p_id} * TILE_M_{p_id} + head_coord_loc_ >= attnDesc.min_q_heads_per_kv) ? attnDesc.q_h : head_coord_loc_; uint32_t smem_loc = cast_smem_ptr_to_uint(smem_O_0) + i * FORT_MAX(8, BMM2_TILE_M) + head_coord_loc_ * 128;{stg_o_code} }} }} }} }} #pragma unroll for (int i = 0; i < BMM2_TILE_N * sizeof(ElementO); i+=128) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_o_0_full_mbar[i/128]), epilogue_state); const uint32_t row_coord = q_row_coord; uint32_t smem_loc = cast_smem_ptr_to_uint(smem_O_0) + i * BMM2_TILE_M; if (actual_seqlen_q_{p_id} > 0) {{{stg_o_code} }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmaldg_tile_started_mbar[0]), epilogue_state); ElementO *smem_O_0 = shared_storage.smem_O; ElementO *smem_O_1 = shared_storage.smem_O + oBufferElems; ElementO *smem_O_0 = shared_storage.smem_Q + qBufferElems; ElementO *smem_O_1 = shared_storage.smem_O; else if (wid == SoftmaxWarps + CorrectionWarps + 2) {{ // TMASTG (epilogue) reg_dealloc(); // Memory barrier states uint32_t epilogue_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} // TMASTG for sub-tile 0 tmastg_arrive(); epilogue_state ^= 1; {get_next_tile_id_code} if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); #pragma unroll 1 for (int i = batch_coord_{p_id}; i < attnDesc.b; i++) {{ const int tiles_per_head = FORT_DIV_UP({var_seq_len_q_ptr_name}[i], TILE_M_{p_id} * 2){mul_num_2d_tile_k}; const int tiles_per_batch = tiles_per_head * attnDesc.q_h; const int local_tile_id = tile_id - cumulative_tiles; if (tile_id < cumulative_tiles + tiles_per_batch) {{ batch_coord_{p_id} = i; head_coord_{p_id} = local_tile_id / tiles_per_head; blocked_row_coord = local_tile_id % tiles_per_head; break; }} cumulative_tiles += tiles_per_batch; }} }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); blocked_row_coord = __shfl_sync(0xffffffff, blocked_row_coord, 0); is_valid_tile = tile_id < actual_num_tiles_{p_id}; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.read_tile_id_done_mbar[sched_state.index()]), sched_state.phase()); if (tiw == 0) {{ uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); {kv_loop_bound_code} uint32_t tile_coord[8] = {{ is_valid_tile, batch_coord_{p_id}, head_coord_{p_id}, blocked_row_coord, actual_seqlen_q_{p_id}, actual_seqlen_kv_{p_id}, kv_loop_left_bound, kv_loop_right_bound }}; sts_128(tile_id_smem_int_ptr, &tile_coord[0]); sts_128(tile_id_smem_int_ptr + 16, &tile_coord[4]); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()])); }} __syncwarp(); ++sched_state; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.read_tile_id_done_mbar[sched_state.index()]), sched_state.phase()); uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()]), 16, elect_one); if (elect_one) {{ get_next_block_id(tile_id_smem_int_ptr, cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()])); }} __syncwarp(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()]), sched_state.phase()); lds_128(tile_id_and_coord, tile_id_smem_int_ptr); ++sched_state; is_valid_tile = tile_id_and_coord[2] & 1; else if (wid == SoftmaxWarps + CorrectionWarps + 3) {{ // Scheduler reg_dealloc(); #pragma unroll 1 while (is_valid_tile) {{ }} }} __syncthreads(); if (wid == 0) {{ tmem_free_1sm(num_columns_per_tmem, base_tmem_addr); }} // inner loop for (int d_qk_chunk = 0; d_qk_chunk < TILE_K_1 / 128; ++d_qk_chunk) {{ const int kv_stage = kv_mbar_state.index(); const int kv_state = kv_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[kv_stage]), kv_state); ++kv_mbar_state; const int q_stage = q_mbar_state.index(); const int q_phase = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), q_phase); ++q_mbar_state; {S_matmul_V_1_inside_mainloop} ElementO *smem_O = (sub_tile_id == 0) ? shared_storage.smem_Q + qBufferElems : shared_storage.smem_O; ElementO *smem_O = shared_storage.smem_O + sub_tile_id * oBufferElems;gridDim.z - 1 - ((tile_id_and_coord[1] & 0xFFFF0000u) >> 16)wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0]), dp_mbar_state.phase())smem_dP + dp_mbar_state.index() * Tile_M * Tile_Nwait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dk_done_mbar[0]), bmm_dk_mbar_state)local_row ^ (softmax_gid * 4 + (i / 16)) const int left_bound = 0; const int shift_right_bound = 0; #pragma unroll for (int j = 0; j < NUM_REGS_S_FP32; j+={elems_per_access}) {{ ldg_{bits_per_ldg}(®_{op_guid}_0[j], ptr_{op_guid} + (FORT_MIN(p_col_{p_id} + j, oob_N_{op_guid}-{elems_per_access})) * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{op_guid}); }} for (int j = 0; j < NUM_REGS_S_FP32; j+=2) {{ uint16_t tmp_0 = *reinterpret_cast(ptr_{op_guid} + (FORT_MIN(p_col_{p_id} + j + 0, oob_N_{op_guid}-1)) * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{op_guid}); uint16_t tmp_1 = *reinterpret_cast(ptr_{op_guid} + (FORT_MIN(p_col_{p_id} + j + 1, oob_N_{op_guid}-1)) * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{op_guid}); asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{op_guid}_0[j/2]) : "h"(tmp_0), "h"(tmp_1)); for (int j = 0; j < NUM_REGS_S_FP32; j+={elems_per_access}) {{ ldg_{bits_per_ldg}(®_{op_guid}_0[j/2], ptr_{op_guid} + (FORT_MIN(p_col_{p_id} + j, oob_N_{op_guid}-{elems_per_access})) * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{op_guid}); #pragma unroll //reduce_op {guid} code #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ amax_dp_{p_id} = fmha::max3Pos_(amax_dp_{p_id}, fabsf(reinterpret_cast(reg_{input_guid}_{input_port}[i+0])), fabsf(reinterpret_cast(reg_{input_guid}_{input_port}[i+1]))); }} #pragma unroll for (int elem = 0; elem < 4/BYTES_PER_ELEMENT; elem++) {{ bool mask = (reg_{rng_guid}_0[(i + elem - kConvertPipeCount) / 32] & (1 << ((i + elem - kConvertPipeCount) % 32))) > 0; reinterpret_cast(reg_{bmm_s_guid}_0[(i + elem - kConvertPipeCount)]) = mask ? 0.0f : reinterpret_cast(reg_{bmm_s_guid}_0[(i + elem - kConvertPipeCount)]) * keep_dropout_probability_reciprocal_{rng_guid}; }} #pragma unroll for (int elem = 0; elem < 4/BYTES_PER_ELEMENT; elem++) {{ bool mask = (reg_{rng_guid}_0[(i + elem) / 32] & (1 << ((i + elem) % 32))) > 0; reinterpret_cast(reg_{bmm_s_guid}_0[(i + elem)]) = mask ? 0.0f : reinterpret_cast(reg_{bmm_s_guid}_0[(i + elem)]) * keep_dropout_probability_reciprocal_{rng_guid}; }} // dropout types and simple declarations uint32_t reg_{rng_guid}_0[NUM_REGS_S_FP32 / 32]; const float keep_dropout_probability_{rng_guid} = {p_dropout}; const float keep_dropout_probability_reciprocal_{rng_guid} = 1.0f / keep_dropout_probability_{rng_guid}; const float bmm_scale = {bmm_scale_input}; const float deq_scale_q = {deq_scale_q_input}; const float deq_scale_k = {deq_scale_k_input}; const float q_scale_s = {q_scale_s_input}; const float deq_scale_do = {deq_scale_do_input}; const float deq_scale_v = {deq_scale_v_input}; const float q_scale_dp = {q_scale_dp_input}; const float scale_for_dot_do_o = (-bmm_scale) * q_scale_dp / q_scale_s;keep_dropout_probability_reciprocal_{} const float bmm_deq_scale_q_k_ln2 = bmm_scale * deq_scale_q * deq_scale_k * inv_ln2; const float bmm_deq_scale_do_v = bmm_scale * deq_scale_do * deq_scale_v * q_scale_dp * {dropout_scale} / q_scale_s; const float log2_q_scale_s = log2f(q_scale_s); float amax_dp_{p_id} = 0.0f; const float deq_scale_s = {deq_scale_s_input}; const float deq_scale_do = {deq_scale_do_input}; const float q_scale_dv = {q_scale_dv_input}; const float deq_scale_dp = {deq_scale_dp_input}; const float deq_scale_q = {deq_scale_q_input}; const float q_scale_dk = {q_scale_dk_input}; const float deq_scale_s_do = deq_scale_s * deq_scale_do; const float deq_scale_dp_q = deq_scale_dp * deq_scale_q; const float final_scale_dv = deq_scale_s_do * q_scale_dv; const float final_scale_dk = deq_scale_dp_q * q_scale_dk; float amax_dv_{p_id} = 0.0f; float amax_dk_{p_id} = 0.0f; const float bmm_scale = {bmm_scale_input}; bmm_tmastg_dq_mbar_state ^= 1; {wait_mbar_code}; #pragma unroll for (int i = 0; i < NUM_REGS_DP_FP32; i+={regs_per_iter}) {{ const int local_row = (tid % 8); const int swizzle_col = {swizzle_col}; sts_128(cast_smem_ptr_to_uint({smem_dP} + swizzle_col * {regs_per_iter}), reinterpret_cast(®_dp[i/{elems_per_reg}])); }} const int swizzle_col = local_row ^ (i % 8); sts_128(cast_smem_ptr_to_uint(smem_{dv_or_dk} + tid * 32 + swizzle_col * 4 + (block*2+(i/8))*128*32), reinterpret_cast(®_dv_dk[(i * stg_step)/1])); const int swizzle_col = local_row ^ (block * 4 + i); sts_128(cast_smem_ptr_to_uint(smem_{dv_or_dk} + tid * {bytes_per_ld_qkv} + swizzle_col * 16), reinterpret_cast(®_dv_dk[(i * stg_step)/4])); reg_dv_dk[i] = fp32_reg_dv_dk[i]; amax_{dv_or_dk}_{p_id} = fmha::max3Pos_(amax_{dv_or_dk}_{p_id}, fabsf(reinterpret_cast(fp32_reg_dv_dk[i+0])), fabsf(reinterpret_cast(fp32_reg_dv_dk[i+1]))); amax_{dv_or_dk}_{p_id} = fmha::max3Pos_(amax_{dv_or_dk}_{p_id}, fabsf(reinterpret_cast(fp32_reg_dv_dk[i+2])), fabsf(reinterpret_cast(fp32_reg_dv_dk[i+3]))); reinterpret_cast(fp32_reg_dv_dk[i+0]) *= final_scale_{dv_or_dk}; reinterpret_cast(fp32_reg_dv_dk[i+1]) *= final_scale_{dv_or_dk}; reinterpret_cast(fp32_reg_dv_dk[i+2]) *= final_scale_{dv_or_dk}; reinterpret_cast(fp32_reg_dv_dk[i+3]) *= final_scale_{dv_or_dk}; {downcast_fp32_code}(®_dv_dk[i / 4], reinterpret_cast(&fp32_reg_dv_dk[i])); #pragma unroll for (int i = 0; i < local_epilogue_block_size; i+=(4/sizeof(ElementdV))) {{ }} if (block == 0) {{{tmastg_dq_mbar_state_update_code} }} static constexpr int stg_step = 16 / sizeof(ElementdV); const int local_row = (tid % 8) / {swizzle_factor}; #pragma unroll for (int i = 0; i < local_epilogue_block_size / stg_step; i++) {{ #pragma unroll for (int i = 0; i < local_epilogue_block_size; i+=2) {{ {downcast_fp32_code}(®_dv_dk[i / 2], reinterpret_cast(&fp32_reg_dv_dk[i])); }} if (block == 0) {{ if (Tile_K == 128) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dq_done_mbar[Tile_K/32/{_2_or_1} - 1]), bmm_tmastg_dq_mbar_state); }}{tmastg_dq_mbar_state_update_code} }} static constexpr int stg_step = 8; const int local_row = (tid % 8); #pragma unroll for (int i = 0; i < local_epilogue_block_size / stg_step; i++) {{ const int swizzle_col = local_row ^ i; sts_128(cast_smem_ptr_to_uint(smem_{dv_or_dk} + block * 128 * 64 + tid * 64 + swizzle_col * 8), reinterpret_cast(®_dv_dk[(i * stg_step)/2])); }} // Epilogue for {dv_or_dk} #pragma unroll for (int block = 0; block < Tile_K / local_epilogue_block_size; block++) {{ uint32_t tmem_{dv_or_dk} = base_tmem_addr + {tmem_offset} + block * local_epilogue_block_size; if (qo_loop_left_bound >= qo_loop_right_bound) {{ #pragma unroll for (int i = 0; i < local_epilogue_block_size; i++) {{ fp32_reg_dv_dk[i] = 0; }} }} else {{ #pragma unroll for (int ldtm_step = 0; ldtm_step < local_epilogue_block_size / 64; ldtm_step++) {{ ldtm_32dp32bit_x64(&fp32_reg_dv_dk[64 * ldtm_step], tmem_{dv_or_dk} + ldtm_step * 64); }} }} cfence(); }} // Epilogue end fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.stsm_{dv_or_dk}_done_mbar[0])));tmastg_dq_mbar_state_update_code if ((i - kConvertPipeCount) % 4 == 0) {{{apply_mask_rng} {downcast_s_fp32_code}(®_s[(i - kConvertPipeCount) / 4], reinterpret_cast(®_{pw_chain_0_output_guid}_0[i - kConvertPipeCount])); }}{apply_mask_rng} {downcast_s_fp32_code}(®_s[(i - kConvertPipeCount) / 2], reinterpret_cast(®_{pw_chain_0_output_guid}_0[i - kConvertPipeCount])); // LDS STATS #pragma unroll for (int j = 0; j < {num_elems}; j++) {{ reg_{softmax_stats_guid}_0[j] = smem_stats[j]; }} if ((i + kLdsPipeCount < NUM_REGS_DP_FP32) && (i % 4 == 0)) {{ #pragma unroll for (int j = 0; j < 4; j++) {{ reg_{softmax_sum_guid}_0[kLdsPipeCount + i + j] = smem_dot_do_o[kLdsPipeCount + i + j]; }} }} // LDS STATS #pragma unroll for (int j = 0; j < {num_elems}; j++) {{ reg_{softmax_sum_guid}_0[j] = smem_dot_do_o[j]; }} if ((i + kLdsPipeCount >= NUM_REGS_S_FP32) && (i % 4 == 0)) {{ #pragma unroll for (int j = 0; j < 4; j++) {{ reg_{softmax_sum_guid}_0[i - (NUM_REGS_S_FP32 - kLdsPipeCount) + j] = smem_dot_do_o[i - (NUM_REGS_S_FP32 - kLdsPipeCount) + j]; }} }} float2 out = ffma2(bmm_deq_scale_q_k_ln2_x2, in, stats_x2); float2 out = ffma2(bmm_scale_x_ln2_x2, in, stats_x2); float2 out = ffma2(bmm_deq_scale_q_k_ln2_x2, in, stats_x2); float2 out = ffma2(bmm_scale_x_ln2_x2, in, stats_x2); {{ // FFMA #pragma unroll for (int j = 0; j < kFmaPipeCount; j+=2) {{ float2 stats_x2 = make_float2(reg_{softmax_stats_guid}_0[j+0], reg_{softmax_stats_guid}_0[j+1]); float2 in = make_float2(reinterpret_cast(reg_{bmm_s_guid}_0[j+0]), reinterpret_cast(reg_{bmm_s_guid}_0[j+1])); reinterpret_cast(reg_{bmm_s_guid}_0[j+0]) = out.x; reinterpret_cast(reg_{bmm_s_guid}_0[j+1]) = out.y; }} asm volatile (".pragma \"global knob SchedResBusyXU64=1\";\n" ::: "memory"); #pragma unroll for (int i = 0; i < NUM_REGS_S_FP32; i+=2) {{ if (i >= kConvertPipeCount) {{{data_convert_pipeline_code} }} cfence(); reinterpret_cast(reg_{bmm_s_guid}_0[i]) = exp2f(reinterpret_cast(reg_{bmm_s_guid}_0[i])); cfence(); // FFMA if (i + kFmaPipeCount < NUM_REGS_S_FP32) {{ float2 stats_x2 = make_float2(reg_{softmax_stats_guid}_0[i + kFmaPipeCount + 0], reg_{softmax_stats_guid}_0[i + kFmaPipeCount + 1]); float2 in = make_float2(reinterpret_cast(reg_{bmm_s_guid}_0[i + kFmaPipeCount + 0]), reinterpret_cast(reg_{bmm_s_guid}_0[i + kFmaPipeCount + 1])); reinterpret_cast(reg_{bmm_s_guid}_0[i + kFmaPipeCount + 0]) = out.x; reinterpret_cast(reg_{bmm_s_guid}_0[i + kFmaPipeCount + 1]) = out.y; }} cfence(); // LDS STATS if ((i + kLdsPipeCount < NUM_REGS_S_FP32) && (i % 4 == 0)) {{ #pragma unroll for (int j = 0; j < 4; j++) {{ reg_{softmax_stats_guid}_0[kLdsPipeCount + i + j] = smem_stats[kLdsPipeCount + i + j]; }} }} cfence(); reinterpret_cast(reg_{bmm_s_guid}_0[i+1]) = exp2f(reinterpret_cast(reg_{bmm_s_guid}_0[i+1])); cfence(); }} asm volatile (".pragma \"reset knob SchedResBusyXU64\";\n" ::: "memory"); #pragma unroll for (int i = NUM_REGS_S_FP32 - kConvertPipeCount; i < NUM_REGS_S_FP32; i+=(4/BYTES_PER_ELEMENT)) {{ {apply_mask_rng_leftovers} {downcast_s_fp32_code}(®_s[i / (4/BYTES_PER_ELEMENT)], reinterpret_cast(®_{bmm_s_guid}_0[i])); }} }} amax_dp_{p_id} = fmha::max3Pos_(amax_dp_{p_id}, fabsf(reinterpret_cast(reg_{bmm_dp_guid}_0[i+0])), fabsf(reinterpret_cast(reg_{bmm_dp_guid}_0[i+1]))); if (i % 4 == 2) {{ {downcast_dp_fp32_code}(®_dp[i / 4], reinterpret_cast(®_{bmm_dp_guid}_0[i-2])); }} {downcast_dp_fp32_code}(®_dp[i / 2], reinterpret_cast(®_{bmm_dp_guid}_0[i])); float2 out = ffma2(bmm_deq_scale_do_v_x2, in, stats_x2); float2 out = ffma2(bmm_scale_x2, in, stats_x2); {{ #pragma unroll for (int i = 0; i < NUM_REGS_DP_FP32; i+=2) {{ // FMA {{ float2 stats_x2 = make_float2(reg_{softmax_sum_guid}_0[i+0], reg_{softmax_sum_guid}_0[i+1]); float2 in = make_float2(reinterpret_cast(reg_{bmm_dp_guid}_0[i+0]), reinterpret_cast(reg_{bmm_dp_guid}_0[i+1])); reinterpret_cast(reg_{bmm_dp_guid}_0[i+0]) = out.x; reinterpret_cast(reg_{bmm_dp_guid}_0[i+1]) = out.y; }} // FMUL {{ float2 in_0 = make_float2(reinterpret_cast(reg_{bmm_dp_guid}_0[i+0]), reinterpret_cast(reg_{bmm_dp_guid}_0[i+1])); float2 in_1 = make_float2(reinterpret_cast(reg_{bmm_s_guid}_0[i + 0]), reinterpret_cast(reg_{bmm_s_guid}_0[i + 1])); float2 out = fmul2(in_0, in_1); reinterpret_cast(reg_{bmm_dp_guid}_0[i+0]) = out.x; reinterpret_cast(reg_{bmm_dp_guid}_0[i+1]) = out.y; }} float2 bmm_deq_scale_q_k_ln2_x2 = make_float2(bmm_deq_scale_q_k_ln2, bmm_deq_scale_q_k_ln2); float2 minus_inv_ln2_x2 = make_float2(-inv_ln2, -inv_ln2); float2 log2_q_scale_s_x2 = make_float2(log2_q_scale_s, log2_q_scale_s); const float bmm_scale_x_ln2 = bmm_scale * inv_ln2; float2 bmm_scale_x_ln2_x2 = make_float2(bmm_scale_x_ln2, bmm_scale_x_ln2); float2 minus_inv_ln2_x2 = make_float2(-inv_ln2, -inv_ln2); #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=(4/BYTES_PER_ELEMENT)) {{ {downcast_s_fp32_code}(®_s[i / (4/BYTES_PER_ELEMENT)], ®_{pw_chain_0_output_guid}_0[i]); }} float2 bmm_deq_scale_do_v_x2 = make_float2(bmm_deq_scale_do_v, bmm_deq_scale_do_v); float2 bmm_scale_x2 = make_float2(bmm_scale, bmm_scale); #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=(4/BYTES_PER_ELEMENT)) {{ {downcast_dp_fp32_code}(®_dp[i / (4/BYTES_PER_ELEMENT)], ®_{pw_chain_1_output_guid}_0[i]); }} int actual_num_rows = 0; if (tiw == 0) {{ for (int i = 0; i < attnDesc.b; i++) {{ actual_num_rows += FORT_DIV_UP({input_kv}[i], TILE_M_{p_id}); }} }} actual_num_rows = __shfl_sync(0xffffffff, actual_num_rows, 0); const int actual_num_tiles_{p_id} = actual_num_rows * attnDesc.q_h; uint32_t blocked_row_coord = 0; uint32_t head_coord_{p_id} = 0; uint32_t head_coord_k_{p_id} = 0; uint32_t head_coord_v_{p_id} = 0; uint32_t batch_coord_{p_id} = 0; uint32_t is_valid_tile = true; uint32_t tile_id = 0, cumulative_tiles = 0, kv_row_coord; // Get next tile id wait_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()]), sched_state.phase()); if (tiw == 0) {{ uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); lds_128(tile_id_and_coord, tile_id_smem_int_ptr); lds_128(&tile_id_and_coord[4], tile_id_smem_int_ptr + 16); is_valid_tile = tile_id_and_coord[0]; batch_coord_{p_id} = tile_id_and_coord[1]; head_coord_{p_id} = tile_id_and_coord[2]; kv_row_coord = tile_id_and_coord[3]; actual_seqlen_q_{p_id} = tile_id_and_coord[4]; actual_seqlen_kv_{p_id} = tile_id_and_coord[5]; qo_loop_left_bound = tile_id_and_coord[6]; qo_loop_right_bound = tile_id_and_coord[7]; }} ++sched_state; is_valid_tile = __shfl_sync(0xffffffff, is_valid_tile, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); kv_row_coord = __shfl_sync(0xffffffff, kv_row_coord, 0); actual_seqlen_q_{p_id} = __shfl_sync(0xffffffff, actual_seqlen_q_{p_id}, 0); actual_seqlen_kv_{p_id} = __shfl_sync(0xffffffff, actual_seqlen_kv_{p_id}, 0); qo_loop_left_bound = __shfl_sync(0xffffffff, qo_loop_left_bound, 0); qo_loop_right_bound = __shfl_sync(0xffffffff, qo_loop_right_bound, 0); head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; tile_id_and_coord[0] = blockIdx.x; tile_id_and_coord[1] = blockIdx.y; tile_id_and_coord[2] = blockIdx.z; tile_id_and_coord[3] = 1; uint32_t blocked_row_coord = {blocked_row_coord}; uint32_t head_coord_{p_id} = {head_coord_from_grid}; uint32_t head_coord_k_{p_id}= head_coord_{p_id} / attnDesc.q_heads_per_k; uint32_t head_coord_v_{p_id}= head_coord_{p_id} / attnDesc.q_heads_per_v; uint32_t batch_coord_{p_id} = {batch_coord}; uint32_t is_valid_tile = true; uint32_t kv_row_coord = blocked_row_coord * TILE_M_{p_id}; // Get next tile id wait_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()]), sched_state.phase()); uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); lds_128(tile_id_and_coord, tile_id_smem_int_ptr); ++sched_state; blocked_row_coord = {blocked_row_coord}; head_coord_{p_id} = {head_coord_from_grid}; head_coord_k_{p_id}= head_coord_{p_id} / attnDesc.q_heads_per_k; head_coord_v_{p_id}= head_coord_{p_id} / attnDesc.q_heads_per_v; batch_coord_{p_id} = {batch_coord}; is_valid_tile = tile_id_and_coord[2] & 1; kv_row_coord = blocked_row_coord * TILE_M_{p_id}; actual_seqlen_kv_{p_id} = {input_kv}[batch_coord_{p_id}]; actual_seqlen_q_{p_id} = {input_q}[batch_coord_{p_id}]; int2 qo_loop_bounds = compute_qo_loop_bounds(kv_row_coord, 2*TILE_M_{p_id}, TILE_N_{p_id}, actual_seqlen_kv_{p_id}, actual_seqlen_q_{p_id}, shift_right_bound, left_bound); qo_loop_left_bound = qo_loop_bounds.x; qo_loop_right_bound = qo_loop_bounds.y; if (kv_row_coord >= actual_seqlen_kv_{p_id}) {{ qo_loop_left_bound = qo_loop_right_bound; }}{actual_num_tiles_code} // Setup first tile for each CTA uint32_t tile_id_and_coord[8]; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q; int qo_loop_right_bound, qo_loop_left_bound, d_column_coord = 0; {get_base_tile_id_code}{left_bound_code}{shift_right_bound_code} amax_dp_{p_id} /= q_scale_dp; if (qo_loop_left_bound >= qo_loop_right_bound) {{ ++dp_mbar_state; }} bmm_dk_mbar_state ^= 1; sttm_32dp32bit_x16(tmem_fp16_dP + sttm_step * 16, ®_dp[16 * sttm_step]); sttm_32dp32bit_x32(tmem_fp16_dP + sttm_step * 32, ®_dp[32 * sttm_step]); sttm_32dp32bit_x16(tmem_fp16_S + sttm_step * 16, ®_s[16 * sttm_step]); sttm_32dp32bit_x32(tmem_fp16_S + sttm_step * 32, ®_s[32 * sttm_step]); stat = (softmax_gid == 0) ? (stat_scale * reinterpret_cast(temp_reg[0]) + log2_q_scale_s) : (stat_scale * reinterpret_cast(temp_reg[0])); stat = stat_scale * reinterpret_cast(temp_reg[0]); ElementdP *smem_dP = reinterpret_cast(shared_storage.smem_dP) + tid * 128; // Memory barrier states PipelineState dp_mbar_state(0, 1); // index, state ElementdP *smem_dP = reinterpret_cast(shared_storage.smem_dP) + (softmax_wid / 4) * 128 * 64 + tid * 64; // Memory barrier states uint32_t bmm_dk_mbar_state = 0; PipelineState dp_mbar_state(0, 1); // index, state ElementdP *smem_dP = reinterpret_cast(shared_storage.smem_Q) + (softmax_wid / 4) * 128 * 64 + tid * 64; // Memory barrier states uint32_t bmm_dk_mbar_state = 0; PipelineState dp_mbar_state(0, 0); // index, state if (wid >= 0 && wid < 8) {{ // Softmax reg_alloc(); const uint32_t softmax_wid = wid; const uint32_t softmax_wid_s_offset = (softmax_wid / 4) * NUM_REGS_S_FP32; const uint32_t softmax_gid = wid / 4; uint32_t tmem_fp32_S = base_tmem_addr + 0 + softmax_wid_s_offset; uint32_t tmem_fp16_S = base_tmem_addr + 0 + (softmax_wid_s_offset / (4 / BYTES_PER_ELEMENT)); uint32_t tmem_fp32_dP = base_tmem_addr + 128 + softmax_wid_s_offset; uint32_t tmem_fp16_dP = base_tmem_addr + 128 + (softmax_wid_s_offset / (4 / BYTES_PER_ELEMENT)); uint32_t reg_{bmm_s_guid}_0[NUM_REGS_S_FP32]; uint32_t reg_s[NUM_REGS_S_FP32 / (4 / BYTES_PER_ELEMENT)]; uint32_t reg_{bmm_dp_guid}_0[NUM_REGS_DP_FP32]; uint32_t reg_dp[NUM_REGS_DP_FP32 / (4 / BYTES_PER_ELEMENT)]; uint32_t bmm_mbar_state = 0; {rng_types} {scalars_decl_softmax} // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} {pw_chain_s_decls}{pw_chain_dp_decls} #pragma unroll 1 for (int q_step = qo_loop_left_bound; q_step < qo_loop_right_bound; q_step++) {{ int p_row_{p_id} = kv_row_coord + tid; int p_col_{p_id} = q_step * TILE_N_{p_id} + softmax_gid * (TILE_N_{p_id} / 2); //---------------------------------------------------------// //-------------------- Softmax: part S --------------------// //---------------------------------------------------------// {rng_decls} // Empirical data static constexpr int kLdsPipeCount = 24; // must be multiple of 4 static constexpr int kMulPipeCount = 12; // must be multiple of 2 static constexpr int kFmaPipeCount = 8; // must be multiple of 2 static constexpr int kConvertPipeCount = 8; // must be multiple of 2 float *smem_stats = shared_storage.smem_stats + softmax_wid_s_offset; float *smem_dot_do_o = shared_storage.smem_dot_do_o + softmax_wid_s_offset; float reg_{softmax_stats_guid}_0[NUM_REGS_S_FP32]; float reg_{softmax_sum_guid}_0[NUM_REGS_S_FP32]; char *stat_gmem_ptr = (softmax_gid == 0) ? ptr_{softmax_stats_guid} : ptr_{softmax_sum_guid}; float *stat_smem_ptr = (softmax_gid == 0) ? shared_storage.smem_stats : shared_storage.smem_dot_do_o; int stat_oob_N = (softmax_gid == 0) ? oob_N_{softmax_stats_guid} : oob_N_{softmax_sum_guid}; int stat_offset = (softmax_gid == 0) ? {stats_desc}.strides[2] : {sum_desc}.strides[2]; float stat_scale = (softmax_gid == 0) ? {scale_for_stats} : {scale_for_sum}; {{ r32 temp_reg[1]; const int stat_col_id = q_step * TILE_N_{p_id} + tid; if (stat_col_id < stat_oob_N) {{ ldg_32(&temp_reg[0], stat_gmem_ptr + stat_col_id * stat_offset * BYTES_PER_ELEMENT_{softmax_stats_guid}); }} else {{ temp_reg[0] = 0u; }} float stat; sts_32(cast_smem_ptr_to_uint(stat_smem_ptr + tid), reinterpret_cast(&stat)); }} named_barrier_wait(SOFTMAX_BARRIER, threads_per_warp * Softmax_Warps); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_s_done_mbar[0]), bmm_mbar_state); #pragma unroll for (int ldtm_step = 0; ldtm_step < NUM_REGS_S_FP32 / 32; ldtm_step++) {{ ldtm_32dp32bit_x32(®_{bmm_s_guid}_0[32 * ldtm_step], tmem_fp32_S + ldtm_step * 32); }} {softmax_stats_lds_code} {pw_chain_s_code} fence_view_async_tmem_load(); named_barrier_wait(SOFTMAX_BARRIER, threads_per_warp * Softmax_Warps); cfence(); #pragma unroll for (int sttm_step = 0; sttm_step < NUM_REGS_S_FP32 / (32 * 2); sttm_step++) {{ }} fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm_dv_ready_mbar[0]))); //---------------------------------------------------------// //-------------------- Softmax: part dP --------------------// //---------------------------------------------------------// wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_p_done_mbar[0]), bmm_mbar_state); #pragma unroll for (int ldtm_step = 0; ldtm_step < NUM_REGS_DP_FP32 / 32; ldtm_step++) {{ ldtm_32dp32bit_x32(®_{bmm_dp_guid}_0[32 * ldtm_step], tmem_fp32_dP + ldtm_step * 32); }} {pw_chain_dp_code} fence_view_async_tmem_load(); named_barrier_wait(SOFTMAX_BARRIER, threads_per_warp * Softmax_Warps); cfence(); #pragma unroll for (int sttm_step = 0; sttm_step < NUM_REGS_DP_FP32 / (32 * 2); sttm_step++) {{ }} fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm_dk_ready_mbar[0])));{sts_dP_code} fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm_dq_ready_mbar[0]))); bmm_mbar_state ^= 1; ++dp_mbar_state; }} // End of mainloop amax_dv_{p_id} *= deq_scale_s_do; amax_dk_{p_id} *= deq_scale_dp_q; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dv_done_mbar[0]), epilogue_dv_mbar_state); epilogue_dv_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dk_done_mbar[0]), epilogue_dk_mbar_state); epilogue_dk_mbar_state ^= 1; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dv_dk_done_mbar[0]), epilogue_mbar_state); epilogue_mbar_state ^= 1; ElementdV *smem_dv = reinterpret_cast(shared_storage.smem_dQ_dK_dV); ElementdK *smem_dk = reinterpret_cast(shared_storage.smem_dQ_dK_dV); ElementdV *smem_dv = reinterpret_cast(shared_storage.smem_dQ_dK_dV); ElementdK *smem_dk = reinterpret_cast(shared_storage.smem_dQ_dK_dV) + TileShape_SdO_dPQ_M * TileShape_SdO_dPQ_N; uint32_t epilogue_dv_mbar_state = 0; uint32_t epilogue_dk_mbar_state = 1; ElementdQ *smem_dq = reinterpret_cast(shared_storage.smem_dQ); uint32_t epilogue_mbar_state = 1; ElementdQ *smem_dq = reinterpret_cast(shared_storage.smem_dQ); ElementdQ *smem_dq = reinterpret_cast(shared_storage.smem_dQ_dK_dV); else if (wid >= 8 && wid < 12) {{ // Epilogue and LDTM + STSM for dQ reg_alloc(); static constexpr int local_epilogue_block_size = 64; // TODO : Make this a function of the tiles uint32_t tmem_fp32_DQ = base_tmem_addr + 128; uint32_t fp32_reg_dq[Tile_K]; // TODO : Should this be TILE_K, as it will change based on d // Memory barrier states uint32_t bmm_dq_mbar_state = 0; uint32_t bmm_tmastg_dq_mbar_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} #pragma unroll 1 for (int q_step = qo_loop_left_bound; q_step < qo_loop_right_bound; q_step++) {{ //---------------------------------------------------------// //------------------- TMASTG Atomic Add dQ ----------------// //---------------------------------------------------------// wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0]), bmm_dq_mbar_state); #pragma unroll for (int ldtm_step = 0; ldtm_step < Tile_K / 64; ldtm_step++) {{ ldtm_32dp32bit_x64(&fp32_reg_dq[64 * ldtm_step], tmem_fp32_DQ + ldtm_step * 64); }} arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.bmm_p_ready_mbar[0]))); #pragma unroll for (int block = 0; block < Tile_K / 32; block++) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dq_done_mbar[block]), bmm_tmastg_dq_mbar_state); static constexpr int stg_step = 4; const int local_row = (tid % 8); #pragma unroll for (int i = 0; i < 32 / stg_step; i++) {{ const int swizzle_col = local_row ^ (i % 8); sts_128(cast_smem_ptr_to_uint(smem_dq + block * 128 * 32 + tid * 32 + swizzle_col * 4), reinterpret_cast(&fp32_reg_dq[block * 32 + i * stg_step])); }} fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.sts_dq_done_mbar[block]))); }} bmm_dq_mbar_state ^= 1; bmm_tmastg_dq_mbar_state ^= 1; }} // End of mainloop if (qo_loop_left_bound >= qo_loop_right_bound) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0]), bmm_dq_mbar_state); bmm_dq_mbar_state ^= 1; }} uint32_t fp32_reg_dv_dk[local_epilogue_block_size]; uint32_t reg_dv_dk[local_epilogue_block_size / (4 / sizeof(ElementdV))]; {sts_dv_code} cfence(); {sts_dk_code} {get_next_tile_id_code}{amax_stg_dv_code}{amax_stg_dk_code} }} utcmma_smem_desc_dP.stage_increment_smem_buffer(q_stage); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_dk_done_mbar[0])); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dk_done_mbar[0]), epilogue_mbar_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tmastg_dv_dk_done_mbar[0]), epilogue_mbar_state); else if (wid == 12) {{ // MMA reg_dealloc(); uint32_t tmem_S_acc = base_tmem_addr + 0; uint32_t tmem_dP = base_tmem_addr + 128; uint32_t tmem_dP_acc = base_tmem_addr + 128; uint32_t tmem_S = base_tmem_addr + 0; uint32_t tmem_dq = base_tmem_addr + 128; uint32_t tmem_dv = base_tmem_addr + 256; uint32_t tmem_dk = base_tmem_addr + 384; // Memory barrier states uint32_t kv_mbar_state = 0; uint32_t do_mbar_state = 0; uint32_t bmm_mbar_state = 1; uint32_t dk_dv_mbar_state = 0; uint32_t epilogue_mbar_state = 1; PipelineState q_mbar_state(0, 0); // index, state {bmm_S_decl}{bmm_dP_decl}{bmm_dV_decl}{bmm_dK_decl}{bmm_dQ_decl} // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} //---------------------------------------------------------// //------------------- MMA Pipeline Begin ------------------// //---------------------------------------------------------// bool accumulate_dk = false; // we should clear the tmem first and then accumulate bool accumulate_dv = false; // we should clear the tmem first and then accumulate if (qo_loop_left_bound < qo_loop_right_bound) {{ const int q_stage = q_mbar_state.index(); const int q_state = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[0]), kv_mbar_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage]), q_state); // K * Q -> S (before the loop) {{ utcmma_smem_desc_Q.stage_increment_smem_buffer(q_stage); if (elect_one) {{{bmm_S_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_s_done_mbar[0])); }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[0]), kv_mbar_state); }} epilogue_mbar_state ^= 1; // Mainloop #pragma unroll 1 for (int q_step = (qo_loop_left_bound + 1); q_step < qo_loop_right_bound; q_step++) {{ const int q_stage = q_mbar_state.index(); const uint32_t q_state = q_mbar_state.phase(); ++q_mbar_state; const int q_stage_next = q_mbar_state.index(); const uint32_t q_state_next = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_p_ready_mbar[0]), bmm_mbar_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_do_full_mbar[0]), do_mbar_state); // V * dO -> dP (mainloop) {{ if (elect_one) {{{bmm_dP_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_p_done_mbar[0])); }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dv_ready_mbar[0]), dk_dv_mbar_state); // S * dO -> dV (mainloop) {{ if (elect_one) {{{bmm_dV_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_do_empty_mbar[0])); }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[q_stage_next]), q_state_next); // K * Q -> S (mainloop) {{ utcmma_smem_desc_Q.stage_increment_smem_buffer(q_stage_next); if (elect_one) {{{bmm_S_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_s_done_mbar[0])); }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dk_ready_mbar[0]), dk_dv_mbar_state); // dP * Q -> dK (mainloop) {{ utcmma_smem_desc_Q_T.stage_increment_smem_buffer(q_stage); if (elect_one) {{{bmm_dK_code} }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_ready_mbar[0]), dk_dv_mbar_state); // dP * K -> dQ (mainloop) {{ if (elect_one) {{{bmm_dQ_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage])); }} }} do_mbar_state ^= 1; bmm_mbar_state ^= 1; dk_dv_mbar_state ^= 1; }} if (qo_loop_left_bound < qo_loop_right_bound) {{ const int q_stage = q_mbar_state.index(); const uint32_t q_state = q_mbar_state.phase(); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_p_ready_mbar[0]), bmm_mbar_state); wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_do_full_mbar[0]), do_mbar_state); // V * dO -> dP (Final iteration) {{ if (elect_one) {{{bmm_dP_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_p_done_mbar[0])); }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dv_ready_mbar[0]), dk_dv_mbar_state); // S * dO -> dV (Final iteration) {{ if (elect_one) {{{bmm_dV_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_do_empty_mbar[0])); }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dk_ready_mbar[0]), dk_dv_mbar_state); // dP * Q -> dK (Final Iteration) {{ utcmma_smem_desc_Q_T.stage_increment_smem_buffer(q_stage); if (elect_one) {{{bmm_dK_code} }} }} wait_barrier(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_ready_mbar[0]), dk_dv_mbar_state); // dP * K -> dQ (Final Iteration) {{ if (elect_one) {{{bmm_dQ_code} umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[q_stage])); }} }} if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[0])); umma_arrive(cast_smem_ptr_to_uint(&shared_storage.tma_v_empty_mbar[0])); }} ++q_mbar_state; kv_mbar_state ^= 1; do_mbar_state ^= 1; bmm_mbar_state ^= 1; dk_dv_mbar_state ^= 1; }} else {{ if (elect_one) {{ umma_arrive(cast_smem_ptr_to_uint(&shared_storage.bmm_dq_done_mbar[0])); }} }} {get_next_tile_id_code} else if (wid == 13) {{ // TMALDG reg_dealloc(); // Memory barrier states uint32_t kv_mbar_state = 1; uint32_t do_mbar_state = 1; PipelineState q_mbar_state(0, 1); // index, state // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} {ldgsts_K_decl}{ldgsts_V_decl}{ldgsts_Q_decl}{ldgsts_dO_decl} if (qo_loop_left_bound < qo_loop_right_bound) {{ // Load K wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_k_empty_mbar[0]), kv_mbar_state); smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[0]), kTmaTransactionBytes, elect_one); {{ uint32_t local_smem_k = cast_smem_ptr_to_uint(shared_storage.smem_K); uint32_t local_smem_bar_tma_kv = cast_smem_ptr_to_uint(&shared_storage.tma_k_full_mbar[0]);{ldgsts_K_code} }} // Load V wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_v_empty_mbar[0]), kv_mbar_state); smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[0]), vTmaTransactionBytes, elect_one); {{ uint32_t local_smem_v = cast_smem_ptr_to_uint(shared_storage.smem_V); uint32_t local_smem_bar_tma_kv = cast_smem_ptr_to_uint(&shared_storage.tma_v_full_mbar[0]);{ldgsts_V_code} }} kv_mbar_state ^= 1; }} // if (qo_loop_left_bound < qo_loop_right_bound) // Mainloop to load Q and dO #pragma unroll 1 for (int q_step = qo_loop_left_bound; q_step < qo_loop_right_bound; q_step++) {{ const int stage = q_mbar_state.index(); const uint32_t qo_col_coord = q_step * TILE_N_{p_id}; // Load Q wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_q_empty_mbar[stage]), q_mbar_state.phase()); smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[stage]), qTmaTransactionBytes, elect_one); {{ uint32_t local_smem_q = cast_smem_ptr_to_uint(shared_storage.smem_Q + stage * qBufferElems); uint32_t local_smem_bar_tma_q = cast_smem_ptr_to_uint(&shared_storage.tma_q_full_mbar[stage]);{ldgsts_Q_code} }} // Load dO wait_barrier(cast_smem_ptr_to_uint(&shared_storage.tma_do_empty_mbar[0]), do_mbar_state); smem_bar_set_transaction_count(cast_smem_ptr_to_uint(&shared_storage.tma_do_full_mbar[0]), doTmaTransactionBytes, elect_one); {{ uint32_t local_smem_do = cast_smem_ptr_to_uint(shared_storage.smem_dO); uint32_t local_smem_bar_tma_do = cast_smem_ptr_to_uint(&shared_storage.tma_do_full_mbar[0]);{ldgsts_dO_code} }} ++q_mbar_state; do_mbar_state ^= 1; }}{get_next_tile_id_code} arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dk_done_mbar[0]))); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dv_dk_done_mbar[0]))); tmastg_arrive(); tmastg_wait_count<0>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dv_done_mbar[0]))); tmastg_wait_count<3>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[0]))); tmastg_wait_count<2>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[1]))); tmastg_wait_count<1>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[2]))); tmastg_wait_count<0>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[3]))); tmastg_wait_count<1>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[0]))); tmastg_wait_count<0>(); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[1]))); else if (wid == 14) {{ // TMASTG reg_dealloc(); // Memory barrier states uint32_t epilogue_state = 0; uint32_t dq_mbar_state = 0; // Persistent loop over tiles #pragma unroll 1 while (is_valid_tile) {{{read_tile_id_done_code} #pragma unroll for (int i = 0; i < Tile_K / 32; i++) {{ arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.tmastg_dq_done_mbar[i]))); }} {stg_dv_decl}{stg_dk_decl}{stg_dq_decl} #pragma unroll 1 for (int q_step = qo_loop_left_bound; q_step < qo_loop_right_bound; q_step++) {{ //---------------------------------------------------------// //------------------- TMASTG Atomic Add dQ ----------------// //---------------------------------------------------------// {{ #pragma unroll for (int i = 0; i < Tile_K / 32; i++) {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.sts_dq_done_mbar[i]), dq_mbar_state); {stg_dq_code} tmastg_arrive(); }} }} dq_mbar_state ^= 1; }} // End of mainloop // Epilogue for dV {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stsm_dv_done_mbar[0]), epilogue_state); {stg_dv_code} }} // Epilogue end // Epilogue for dK {{ wait_barrier(cast_smem_ptr_to_uint(&shared_storage.stsm_dk_done_mbar[0]), epilogue_state); {stg_dk_code} }} // Epilogue end epilogue_state ^= 1; tmastg_arrive(); tmastg_wait_count<0>(); if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); #pragma unroll 1 for (int i = batch_coord_{p_id}; i < attnDesc.b; i++) {{ const int tiles_per_head = FORT_DIV_UP({var_seq_len_kv_ptr_name}[i], TILE_M_{p_id}); const int tiles_per_batch = tiles_per_head * attnDesc.q_h; const int local_tile_id = tile_id - cumulative_tiles; if (tile_id < cumulative_tiles + tiles_per_batch) {{ batch_coord_{p_id} = i; head_coord_{p_id} = local_tile_id / tiles_per_head; blocked_row_coord = local_tile_id % tiles_per_head; break; }} cumulative_tiles += tiles_per_batch; }} }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); blocked_row_coord = __shfl_sync(0xffffffff, blocked_row_coord, 0); is_valid_tile = tile_id < actual_num_tiles_{p_id}; kv_row_coord = blocked_row_coord * TILE_M_{p_id}; wait_barrier(cast_smem_ptr_to_uint(&shared_storage.read_tile_id_done_mbar[sched_state.index()]), sched_state.phase()); if (tiw == 0) {{ uint32_t tile_id_smem_int_ptr = cast_smem_ptr_to_uint(&shared_storage.tile_id[sched_state.index() * 8]); {qo_loop_bound_code} uint32_t tile_coord[8] = {{ is_valid_tile, batch_coord_{p_id}, head_coord_{p_id}, kv_row_coord, actual_seqlen_q_{p_id}, actual_seqlen_kv_{p_id}, qo_loop_left_bound, qo_loop_right_bound }}; sts_128(tile_id_smem_int_ptr, &tile_coord[0]); sts_128(tile_id_smem_int_ptr + 16, &tile_coord[4]); fence_view_async_shared(); arrive_barrier(cast_smem_ptr_to_uint(&shared_storage.scheduler_mbar[sched_state.index()])); }} __syncwarp(); ++sched_state; else if (wid == 15) {{ // Scheduler reg_dealloc(); #pragma unroll 1 while (is_valid_tile) {{ }} }} __syncthreads(); if (wid == 0) {{ tmem_free_1sm(num_columns_per_tmem, base_tmem_addr); }} coord_k += CTA_TILE_K_{p_id}; coord_nopq += CTA_TILE_K_{p_id}; update_filter_position_{p_id}(coord_c, filter_t, filter_r, filter_s, convDesc.T, convDesc.R, convDesc.S); int mainloop_steps_start = 0; int mainloop_k = mainloop_steps; uint32_t smem_a_{mma_id} = smem_{r_id} + SMEM_BUFFER_OFFSET_{from_a_id}; uint32_t smem_b_{mma_id} = smem_{r_id} + SMEM_BUFFER_OFFSET_{from_b_id}; uint32_t smem_epilogue_{mma_id} = smem_{r_id} + SMEM_EPILOGUE_OFFSET_{guid} + {index} * EPILOGUE_SMEM_SIZE_PER_XMMA_M_{e_id} * XMMAS_M_{p_id} * GROUPS_M_{p_id}; int mainloop_steps_start = split_k_id * (mainloop_steps / SPLIT_K_SLICES_{p_id}) + min(split_k_id, (mainloop_steps % SPLIT_K_SLICES_{p_id})); int mainloop_k = mainloop_steps / SPLIT_K_SLICES_{p_id} + (split_k_id < (mainloop_steps % SPLIT_K_SLICES_{p_id}) ? 1 : 0); int mainloop_steps_start = split_k_id * (tiles_c / SPLIT_K_SLICES_{p_id}) + min(split_k_id, (tiles_c % SPLIT_K_SLICES_{p_id})); int mainloop_k = (tiles_c / SPLIT_K_SLICES_{p_id} + (split_k_id < (tiles_c % SPLIT_K_SLICES_{p_id}) ? 1 : 0)) * trs; if (loop_k == 1) {{ int tile_offset = (local_mainloop_steps - 1) * CTA_TILE_K_{p_id} + k_index * GMMA_TILE_K_{p_id} + col_{guid}; #pragma unroll for (int j = 0; j < 2; ++j) {{ if (tile_offset + j * CORE_MATRIX_A_COLS_{guid} >= implicit_gemm_K) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ reg_{incoming_a_id}_{incoming_a_port}[k_index][m][2 * j] = 0; reg_{incoming_a_id}_{incoming_a_port}[k_index][m][2 * j + 1] = 0; }} }} }} }} uint64_t oob_marker = 0UL; #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ auto ref_ptr = reinterpret_cast(®_{nanset_lds_a_id}_{nanset_lds_a_port}[k_index][m]); #pragma unroll for (int i = 0; i < NUM_GMMA_A_ELEMENT_{p_id}; ++i, ++ref_ptr) {{ if (*ref_ptr == SPECIAL_NAN_{p_id}) {{ oob_marker |= (1UL << (m * NUM_GMMA_A_ELEMENT_{p_id} + i)); }} }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ auto dst_ptr = reinterpret_cast(®_{incoming_a_id}_{incoming_a_port}[k_index][m]); #pragma unroll for (int i = 0; i < NUM_GMMA_A_ELEMENT_{p_id}; ++i, ++dst_ptr) {{ if (oob_marker & (1UL << (m * NUM_GMMA_A_ELEMENT_{p_id} + i))) {{ *dst_ptr = 0; }} }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < NUM_GMMA_A_ELEMENT_{p_id}; ++i) {{ fp32_to_tf32(®_{incoming_a_id}_{incoming_a_port}[k_index][m][i], ®_{incoming_a_id}_{incoming_a_port}[k_index][m][i]); }} }} #pragma unroll for (int m = 0; m < NUM_LDSM_{m_id}; ++m) {{ #pragma unroll for (int i = 0; i < NUM_GMMA_B_ELEMENT_{p_id}; ++i) {{ fp32_to_tf32(®_{incoming_b_id}_{incoming_b_port}[k_index][m][i], ®_{incoming_b_id}_{incoming_b_port}[k_index][m][i]); }} }} int32_t coord_k = kb_data[0]; int32_t coord_c = nopq_data[0]; int32_t filter_t = nopq_data[1]; int32_t filter_r = nopq_data[2]; int32_t filter_s = nopq_data[3]; int32_t pad_d = filter_t * (int32_t)convDesc.dilation_D - (int32_t)convDesc.padLower_D; int32_t pad_h = filter_r * (int32_t)convDesc.dilation_H - (int32_t)convDesc.padLower_H; int32_t pad_w = filter_s * (int32_t)convDesc.dilation_W - (int32_t)convDesc.padLower_W; uint32_t coord_m = nopq_data[0]; uint32_t coord_n = nopq_data[1]; uint32_t coord_b = {coord_b}; int32_t coord_n = nopq_data[0]; int32_t coord_o = nopq_data[1]; int32_t coord_p = nopq_data[2]; int32_t coord_q = nopq_data[3]; int32_t coord_b = kb_data[1]; coord_c = coord_b * (int32_t)convDesc.C + mainloop_steps_start * CTA_TILE_K_{p_id}; int32_t coord_k = kb_data[0]; coord_c = mainloop_steps_start * CTA_TILE_K_{p_id}; int32_t coord_n = nopq_data[0]; int32_t coord_o = nopq_data[1]; int32_t coord_p = nopq_data[2]; int32_t coord_q = nopq_data[3]; int32_t coord_b = kb_data[1]; coord_c = coord_b * (int32_t)convDesc.K + mainloop_steps_start * CTA_TILE_K_{p_id}; int32_t coord_k = kb_data[0]; int32_t coord_b = kb_data[1]; coord_c = mainloop_steps_start * CTA_TILE_K_{p_id};(cta_id_in_cga.y * CTA_TILE_N_{p_id} / CGA_M_{p_id})(cta_id_in_cga.x * CTA_TILE_M_{p_id} / CGA_N_{p_id}) uint32_t cga_id_x = tmp_m; uint32_t cga_id_y = tmp_n / CGA_N_{p_id}; swizzle(cga_id_x, cga_id_y, log2_group_cols, CGAs_x, CGAs_y); const uint32_t tile_id_n = cga_id_y * CGA_N_{p_id} + cta_id_in_cga.x; const uint32_t tile_id_m = cga_id_x * CGA_M_{p_id} + cta_id_in_cga.y; const uint32_t tile_id_n = tmp_n; const uint32_t tile_id_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; uint32_t coord_k = 0, coord_b = 0; uint32_t tmp_n, tmp_m, tmp_mn; fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n);{cta_swizzle_code} uint32_t nopq_data[4]; uint32_t kb_data[2]; nopq_data[0] = tile_id_m * CTA_TILE_M_{p_id}; nopq_data[1] = tile_id_n * CTA_TILE_N_{p_id}; nopq_data[2] = coord_b; nopq_data[3] = 0; kb_data[0] = 0; kb_data[1] = 0; uint32_t tmp_n, tmp_m, tmp_mn, coord_b; // coord_b - means group_id fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n); const uint32_t tile_id_n = tmp_n; const uint32_t tile_id_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; int32_t coord_k = tile_id_n * CTA_TILE_N_{p_id} + (cta_id_in_cga.y * CTA_TILE_N_{p_id} / CGA_M_{p_id}); uint32_t nopq_data[4]; uint32_t kb_data[2]; int32_t coord_n, coord_o, coord_p, coord_q; uint32_t opq, pq; fastDivMod(convDesc.opq, tile_id_m * CTA_TILE_M_{p_id} + (cta_id_in_cga.x * CTA_TILE_M_{p_id} / CGA_N_{p_id}), reinterpret_cast(coord_n), opq); fastDivMod(convDesc.pq, opq, reinterpret_cast(coord_o), pq); fastDivMod(convDesc.q, pq, reinterpret_cast(coord_p), reinterpret_cast(coord_q)); nopq_data[0] = coord_n; nopq_data[1] = coord_o * (int32_t)convDesc.stride_D - (int32_t)convDesc.padLower_D; nopq_data[2] = coord_p * (int32_t)convDesc.stride_H - (int32_t)convDesc.padLower_H; nopq_data[3] = coord_q * (int32_t)convDesc.stride_W - (int32_t)convDesc.padLower_W; kb_data[0] = coord_b * (int32_t)convDesc.K + coord_k; kb_data[1] = coord_b; uint32_t tmp_n, tmp_m, tmp_mn, coord_b; // coord_b - means group_id fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n); const uint32_t tile_id_n = tmp_n; const uint32_t tile_id_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; int32_t coord_k = tile_id_n * CTA_TILE_N_{p_id}; uint32_t nopq_data[4]; uint32_t kb_data[2]; int32_t coord_n, coord_o, coord_p, coord_q; uint32_t opq, pq; fastDivMod(convDesc.opq, tile_id_m * CTA_TILE_M_{p_id} + (cta_id_in_cga.x * CTA_TILE_M_{p_id} / CGA_N_{p_id}), reinterpret_cast(coord_n), opq); fastDivMod(convDesc.pq, opq, reinterpret_cast(coord_o), pq); fastDivMod(convDesc.q, pq, reinterpret_cast(coord_p), reinterpret_cast(coord_q)); nopq_data[0] = coord_n; nopq_data[1] = coord_o + (int32_t)convDesc.padLower_D - ((int32_t)convDesc.T - 1) * (int32_t)convDesc.dilation_D; nopq_data[2] = coord_p + (int32_t)convDesc.padLower_H - ((int32_t)convDesc.R - 1) * (int32_t)convDesc.dilation_H; nopq_data[3] = coord_q + (int32_t)convDesc.padLower_W - ((int32_t)convDesc.S - 1) * (int32_t)convDesc.dilation_W; kb_data[0] = coord_k; kb_data[1] = coord_b; uint32_t tmp_n, tmp_m, tmp_mn, coord_b; // coord_b - means group_id fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n); const uint32_t tile_id_n = tmp_n; const uint32_t tile_id_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; int32_t coord_k = tile_id_m * CTA_TILE_M_{p_id} + {multicast_coord_offset_a}; int32_t tile_c, filter_t, filter_r, filter_s; uint32_t rsc, sc; fastDivMod(convDesc.rsc, tile_id_n, reinterpret_cast(filter_t), rsc); fastDivMod(convDesc.sc, rsc, reinterpret_cast(filter_r), sc); fastDivMod(convDesc.c, sc, reinterpret_cast(filter_s), reinterpret_cast(tile_c)); uint32_t nopq_data[4]; uint32_t kb_data[2]; nopq_data[0] = coord_b * (int32_t)convDesc.C + tile_c * CTA_TILE_N_{p_id} + {multicast_coord_offset_b}; nopq_data[1] = filter_t; nopq_data[2] = filter_r; nopq_data[3] = filter_s; kb_data[0] = coord_b * (int32_t)convDesc.K + coord_k; kb_data[1] = coord_b; reg_dealloc<40>(); int tile_id = bid; #pragma unroll 1 while (tile_id < num_tiles) {{ int split_k_id = tile_id / SPLIT_K_STRIDE_{p_id};{coord_decl_code} if (tile_id >= TILE_STEP_{p_id}) {{ named_barrier_wait(SCHEDULER_BARRIER_ID, 96); }} if (tiw == 0) {{ sts_128(smem_scheduler_data, nopq_data); sts_64(smem_scheduler_data + 16, kb_data); }} named_barrier_arrive(SCHEDULER_DONE_BARRIER_ID, 96); tile_id += TILE_STEP_{p_id}; }} // while (tile_id < num_tiles) reg_dealloc<40>(); return; uint16_t multicast_mask_a = 0; #pragma unroll for (uint32_t i = 0; i < CGA_N_{p_id}; i++) {{ multicast_mask_a |= 1u << i; }} multicast_mask_a <<= (cta_id_in_cga.y * CGA_N_{p_id}); uint16_t multicast_mask_b = 0; #pragma unroll for (uint32_t i = 0; i < CGA_M_{p_id}; i++) {{ multicast_mask_b |= 1u << (CGA_N_{p_id} * i); }} multicast_mask_b <<= cta_id_in_cga.x; smem_bar_set_transaction_count(local_bar_{guid}, SMEM_TRANSACTION_COUNT, tid == 0);{coord_extract_code} #pragma unroll 1 while(mainloop_k > 0) {{ uint32_t smem_bar_phase = get_dma_bar_phase(bar_phase_counter); {ldgsts_local_decl} // mma_loop_op {guid} code uint32_t local_bar_{guid} = smem_dma_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}; uint32_t smem_math_bar_local = smem_math_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}; increment_bar_phase_counter(bar_phase_counter); buffer_id = get_next_buffer_id(buffer_id); if (!smem_bar_peek(smem_math_bar_local, smem_bar_phase)) {{ smem_bar_wait(smem_math_bar_local, smem_bar_phase); }}{set_transaction_count_code} {ldgsts_code} // mma_loop_op {guid} code{coord_k_code} mainloop_k--; }} // while(mainloop_k > 0) uint32_t coord_nopq = mainloop_steps_start * CTA_TILE_K_{p_id}; int32_t coord_c = 0; int32_t filter_t = 0; int32_t filter_r = 0; int32_t filter_s = 0;split_k_mainloop_steps_reset_codeset_smem_multicast_offset_code reg_dealloc<40>(); int tile_id = bid; int bar_phase_counter = 0; int buffer_id = 0; {multicast_mask_a_code}{multicast_mask_b_code}{set_smem_multicast_offset_code} {cga_wait} acqblk(); #pragma unroll 1 while (tile_id < num_tiles) {{ int split_k_id = tile_id / SPLIT_K_STRIDE_{p_id};{split_k_mainloop_steps_reset_code}{init_mainloop_coord_code} uint32_t coord_k = CTA_TILE_K_{p_id} * mainloop_steps_start; uint32_t nopq_data[4]; uint32_t kb_data[2]; named_barrier_wait(SCHEDULER_DONE_BARRIER_ID, 96); lds_128(nopq_data, smem_scheduler_data); lds_64(kb_data, smem_scheduler_data + 16); if (tile_id + TILE_STEP_{p_id} < num_tiles) {{ named_barrier_arrive(SCHEDULER_BARRIER_ID, 96); }} if (is_dma_a_warp) {{{dma_a_warp_code} }} // if (is_dma_a_warp) if (is_dma_b_warp) {{{dma_b_warp_code} }} // if (is_dma_b_warp) tile_id += TILE_STEP_{p_id}; }} // while (tile_id < num_tiles) if (CGA_M_{p_id} * CGA_N_{p_id} > 1 && is_dma_a_warp) {{ #pragma unroll for (int mainloop_k = 0; mainloop_k < STAGES_{p_id}; mainloop_k++) {{ uint32_t smem_math_bar_local = smem_math_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}; uint32_t smem_bar_phase = get_dma_bar_phase(bar_phase_counter); increment_bar_phase_counter(bar_phase_counter); buffer_id = get_next_buffer_id(buffer_id); if (!smem_bar_peek(smem_math_bar_local, smem_bar_phase)) {{ smem_bar_wait(smem_math_bar_local, smem_bar_phase); }} }} }} reg_dealloc<40>(); return; constexpr int MAX_CLUSTER_SIZE = 16; constexpr int THREAD_GRANULARITY = THREADS_PER_WARP_GROUP_{r_id} / MAX_CLUSTER_SIZE; int remote_cta_id = tid / THREAD_GRANULARITY; uint64_t remap_table = 0x369CF258BE147AD0ull; remote_cta_id = (remap_table >> (remote_cta_id * 4)) & 0xF; int buffer_empty_notify_thread = (threadIdx.x % THREAD_GRANULARITY == 0) && (remote_cta_id < CGA_M_{p_id} * CGA_N_{p_id}) && ((remote_cta_id / CGA_N_{p_id} == cta_id_in_cga.y) || (remote_cta_id % CGA_N_{p_id} == cta_id_in_cga.x)); uint64_t *dsmem_bar_base = reinterpret_cast(((uint64_t)smem_math_bar & 0xFFFFFFFFF0FFFFFFULL) + (remote_cta_id << 24)); smem_bar_arrive_dsmem(dsmem_bar_base + buffer_id, buffer_empty_notify_thread); if ((wid % 4) == 0 && elect_one) {{ smem_bar_arrive(smem_math_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}); }} fence_view_async_shared(); tile_id += TILE_STEP_{p_id}; }} // while (tile_id < num_tiles) preexit(); reg_alloc<232>(); return; } // else if (is_math_warp) // Store acc into smem if (tile_id >= TILE_STEP_{p_id}) {{ named_barrier_wait(EPI_LDS_DONE_BARRIER_ID, 256); }} named_barrier_arrive(EPI_STS_DONE_BARRIER_ID, 256); if (compute_tile_{mma_id}.acc_needs_update_) {{ compute_tile_{mma_id}.update_accumulators(); }} compute_tile_{}.clear_acc_tmp();reinterpret_cast<{compute_data_type}&>(compute_tile_{mma_id}.acc[m][i + j]) += reinterpret_cast(tmp[j]);compute_tile_{mma_id}.acc[m][i + j] = hadd2(compute_tile_{mma_id}.acc[m][i + j], tmp[j]); {{ int64_t split_k_buffer_cta_id = ((tile_id % SPLIT_K_STRIDE_{p_id}) * CGA_M_{p_id} + cta_id_in_cga.y) * SPLIT_K_BUFFERS_{p_id}; #pragma unroll for (int reduce_stride = SPLIT_K_BUFFERS_{p_id}, expected_semaphore = 1; reduce_stride > 0; reduce_stride >>= 1, expected_semaphore++) {{ bool is_sending_cta = (split_k_id < (SPLIT_K_SLICES_{p_id} - reduce_stride)); bool is_receiving_cta = (reduce_stride == SPLIT_K_BUFFERS_{p_id}) ? (split_k_id >= SPLIT_K_BUFFERS_{p_id}) : !is_sending_cta; int64_t split_k_buffer_slice_id = (split_k_id + 2 * SPLIT_K_BUFFERS_{p_id} - SPLIT_K_SLICES_{p_id}) % reduce_stride; int64_t split_k_buffer_id = split_k_buffer_cta_id + split_k_buffer_slice_id; auto split_k_semaphore = {semaphore_workspace} + split_k_buffer_id; auto split_k_partial_result = {results_workspace} + split_k_buffer_id * CTA_TILE_M_{p_id} * CTA_TILE_N_{p_id} * BYTES_PER_ACC_{p_id} / BYTES_PER_REGISTER_{r_id} + (warp_group_id * WARPS_PER_GROUP_{r_id} + wid % WARPS_PER_GROUP_{r_id}) * THREADS_PER_WARP_{r_id} * XMMAS_M_{p_id} * ACC_COUNT_{p_id} + tiw * 4; if (is_sending_cta) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < ACC_COUNT_{p_id}; i += 4) {{ stg_128(split_k_partial_result + (m * ACC_COUNT_{p_id} + i) * THREADS_PER_WARP_{r_id}, &compute_tile_{mma_id}.acc[m][i]); }} }} named_barrier_wait(SPLIT_K_BARRIER_ID, GROUPS_M_{p_id} * WARPS_PER_GROUP_{r_id} * THREADS_PER_WARP_{r_id}); if (warp_group_id == 0 && wid % WARPS_PER_GROUP_{r_id} == 0 && elect_one) {{ __threadfence(); atomicAdd(split_k_semaphore, 1); }} break; }} else if (is_receiving_cta) {{ if (warp_group_id == 0 && wid % WARPS_PER_GROUP_{r_id} == 0 && elect_one) {{ int semaphore = split_k_buffer_slice_id < (2 * SPLIT_K_BUFFERS_{p_id} - SPLIT_K_SLICES_{p_id}) ? (expected_semaphore - 1) : expected_semaphore; while (true) {{ int32_t spin; asm volatile ("ld.global.acquire.gpu.b32 %0, [%1];" : "=r"(spin) : "l"(split_k_semaphore)); if (spin == semaphore) {{ break; }} }} __threadfence(); }} named_barrier_wait(SPLIT_K_BARRIER_ID, GROUPS_M_{p_id} * WARPS_PER_GROUP_{r_id} * THREADS_PER_WARP_{r_id}); #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < ACC_COUNT_{p_id}; i += 4) {{ r32 tmp[4]; ldg_128(tmp, split_k_partial_result + (m * ACC_COUNT_{p_id} + i) * THREADS_PER_WARP_{r_id}); #pragma unroll for (int j = 0; j < 4; ++j) {{ {local_reduce} }} }} }} }} }} }} warpgroup_wait<{mma_counts}>(); compute_tile_{mma_id}.clear_acc(); compute_tile_{mma_id}.compute(); compute_tile_{mma_id}.increment_gmma_smem_buffer(); compute_tile_{mma_id}.compute(); compute_tile_{mma_id}.compute(); compute_tile_{mma_id}.compute(XMMAS_K_{p_id} - 1, reg_{incoming_a_id}_{incoming_a_port}); compute_tile_{mma_id}.increment_gmma_smem_buffer(); compute_tile_{mma_id}.compute(k, reg_{incoming_a_id}_{incoming_a_port}); compute_tile_{mma_id}.compute(k, reg_{incoming_a_id}_{incoming_a_port});{clear_acc_code};{clear_acc_tmp_code} #pragma unroll 1 for (mainloop_k = local_mainloop_steps; mainloop_k > 0; --mainloop_k) {{{global_load_code} smem_bar_phase = get_math_bar_phase(bar_phase_counter); if (!smem_bar_peek(smem_dma_bar, smem_bar_phase)) {{ smem_bar_wait(smem_dma_bar, smem_bar_phase); }} increment_bar_phase_counter(bar_phase_counter); #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{{lds_code_b}{pw_mainloop_fusion_b}{sts_code_b} }}{fence_bar_b} warpgroup_arrive(); int loop_k = mainloop_k; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ {{ int k_index = k;{lds_code_a}{pw_mainloop_fusion_a} }} if (k == XMMAS_K_{p_id} - 1) {{{gmma_compute_arf_tt_code} }} else {{{gmma_compute_arf_ff_code} }} }} warpgroup_wait<0>(); if (mainloop_k > 1) {{{bar_arrive_code} }} }} // for (mainloop_k = local_mainloop_steps; mainloop_k > 0; --mainloop_k){update_acc_code}{global_load_code} {{ smem_bar_phase = get_math_bar_phase(bar_phase_counter); if (!smem_bar_peek(smem_dma_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase)) {{ smem_bar_wait(smem_dma_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} increment_bar_phase_counter(bar_phase_counter); smem_bar_phase = get_math_bar_phase(bar_phase_counter); buffer_id_next = get_next_buffer_id(buffer_id); is_wait_complete = smem_bar_peek(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }}{clear_acc_code}{clear_acc_tmp_code} {{ {{ int k_index = 0;{lds_code_a}{pw_mainloop_fusion_a} }} #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{{lds_code_b}{pw_mainloop_fusion_b}{sts_code_b} }}{fence_bar_b} #pragma unroll for (int k = 0; k < XMMAS_K_{p_id} - 1; ++k) {{ {{ int k_index = k + 1;{lds_code_a}{pw_mainloop_fusion_a} }} warpgroup_arrive();{gmma_compute_arf_tf_code} }} warpgroup_wait<{wait_steps}>(); if (local_mainloop_steps > 1) {{ --mainloop_k; --loop_k;{global_load_code} lds_buffer_id = get_next_buffer_id(lds_buffer_id); if (!is_wait_complete) {{ smem_bar_wait(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{{lds_code_b}{pw_mainloop_fusion_b}{sts_code_b} }}{fence_bar_b} {{ int k_index = 0;{lds_code_a}{pw_mainloop_fusion_a} }} }} warpgroup_arrive();{gmma_compute_arf_tt_code} warpgroup_wait<{wait_steps}>(); }} #pragma unroll 1 for (mainloop_k = local_mainloop_steps - 2; mainloop_k >= 1; --mainloop_k) {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ asm volatile (".pragma \"next knob FenceInterference\";\n" : : : "memory"); if (k == 0) {{ increment_bar_phase_counter(bar_phase_counter); smem_bar_phase = get_math_bar_phase(bar_phase_counter); buffer_id_next = get_next_buffer_id(buffer_id_next); is_wait_complete = smem_bar_peek(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} int k_next = (k == XMMAS_K_{p_id} - 1) ? 0 : (k + 1); loop_k = (k_next == 0) ? mainloop_k : (mainloop_k + 1); if (k_next == 0) {{{global_load_code} lds_buffer_id = get_next_buffer_id(lds_buffer_id); if (!is_wait_complete) {{ smem_bar_wait(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{{lds_code_b}{pw_mainloop_fusion_b}{sts_code_b} }}{fence_bar_b} }} {{ int k_index = k_next;{lds_code_a}{pw_mainloop_fusion_a} }} if (k == (XMMAS_K_{p_id} - 1)) {{ warpgroup_arrive();{gmma_compute_arf_tt_code} }} else {{ warpgroup_arrive();{gmma_compute_arf_tf_code} }} warpgroup_wait<{wait_steps}>(); if (k == {bar_arrive_step}) {{{bar_arrive_code} buffer_id = get_next_buffer_id(buffer_id); }} }} // for (int k = 0; k < XMMAS_K_{p_id}; ++k) }} // for (mainloop_k = local_mainloop_steps - 2; mainloop_k >= 1; --mainloop_k) if (local_mainloop_steps > 1) {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id} - 1; ++k) {{ if (k == 0) {{ increment_bar_phase_counter(bar_phase_counter); smem_bar_phase = get_math_bar_phase(bar_phase_counter); }} {{ int k_index = k + 1;{lds_code_a}{pw_mainloop_fusion_a} }} warpgroup_arrive();{gmma_compute_arf_tf_code} warpgroup_wait<{wait_steps}>(); if (k == {bar_arrive_step}) {{{bar_arrive_code} buffer_id = get_next_buffer_id(buffer_id); }} }} warpgroup_arrive();{gmma_compute_arf_tt_code} }} // if (local_mainloop_steps > 1) lds_buffer_id = get_next_buffer_id(lds_buffer_id);{update_acc_code} warpgroup_wait<0>();{global_load_code} {{ smem_bar_phase = get_math_bar_phase(bar_phase_counter); if (!smem_bar_peek(smem_dma_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase)) {{ smem_bar_wait(smem_dma_bar + buffer_id * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} increment_bar_phase_counter(bar_phase_counter); smem_bar_phase = get_math_bar_phase(bar_phase_counter); buffer_id_next = get_next_buffer_id(buffer_id); is_wait_complete = smem_bar_peek(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }}{clear_acc_code}{clear_acc_tmp_code} {{ #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{{lds_code_b}{pw_mainloop_fusion_b}{sts_code_b} }}{fence_bar_b} warpgroup_arrive(); #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ if (k == XMMAS_K_{p_id} - 1) {{{gmma_compute_tt_code} }} else {{{gmma_compute_ff_code} }} }} }} #pragma unroll 1 for (mainloop_k = local_mainloop_steps - 1; mainloop_k > 0; --mainloop_k) {{ const bool is_last = mainloop_k == 1; lds_buffer_id = get_next_buffer_id(lds_buffer_id);{global_load_code} if (!is_wait_complete) {{ smem_bar_wait(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} increment_bar_phase_counter(bar_phase_counter); smem_bar_phase = get_math_bar_phase(bar_phase_counter); #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{{lds_code_b}{pw_mainloop_fusion_b}{sts_code_b} }}{fence_bar_b} warpgroup_arrive(); #pragma unroll for(int k = 0; k < XMMAS_K_{p_id}; ++k) {{ if (k == XMMAS_K_{p_id} / 2) {{ buffer_id_next = get_next_buffer_id(buffer_id_next); if(!is_last) {{ is_wait_complete = smem_bar_peek(smem_dma_bar + buffer_id_next * BYTES_PER_SMEM_BARRIER_{p_id}, smem_bar_phase); }} }} if (k <= GMMA_STAGES_{p_id} - 1) {{ if(k == (GMMA_STAGES_{p_id} - 1)) {{{gmma_compute_tf_code}{gmma_compute_tf_sync_code}{bar_arrive_code} buffer_id = get_next_buffer_id(buffer_id); }} else {{{gmma_compute_ff_code} }} }} else {{ if (k == (XMMAS_K_{p_id} - 1)) {{{gmma_compute_tt_code} }} else {{{gmma_compute_ff_code} }} }} }} // for(int k = 0; k < XMMAS_K_{p_id}; ++k) }} // for (int mainloop_k = local_mainloop_steps - 1; mainloop_k > 0; --mainloop_k) lds_buffer_id = get_next_buffer_id(lds_buffer_id);{update_acc_code} warpgroup_wait<0>(); reg_alloc<232>();{cga_sync_init_code} const int warp_group_id = wid / 8; {output_sts_decls}{lds_decls_a}{lds_decls_b}{sts_decls_b}{mma_decls}{pw_a_decls}{pw_b_decls} // mma_loop_op {guid} code int tile_id = bid; int bar_phase_counter = 0; int buffer_id = 0; int lds_buffer_id = 0; // Used by A-RF, B-smem flavor of GMMA int smem_bar_phase; int buffer_id_next; int is_wait_complete; #pragma unroll 1 while (tile_id < num_tiles) {{ int split_k_id = tile_id / SPLIT_K_STRIDE_{p_id};{split_k_mainloop_steps_reset_code} int local_mainloop_steps = mainloop_k; int loop_k = local_mainloop_steps;{mma_loop_decls}{global_load_decls}{pw_fusion_a}{pw_fusion_b}{split_k_code}{output_sts_bar_code} if (split_k_id == SPLIT_K_SLICES_{p_id} - 1) {{{output_sts_code} }} // mma_loop_op {guid} code{output_lds_bar_code} {bar_arrive_code} buffer_id = get_next_buffer_id(buffer_id);{math_warp_end_code}{set_smem_offset_code} if (is_unused_warp) {{ reg_dealloc<40>(); reg_dealloc<40>(); return; }} else if (is_scheduler_warp) {{{scheduler_warp_code} }} else if (is_dma_a_warp || is_dma_b_warp) {{{dma_warp_code} }} else if (is_math_warp) {{{math_warp_code}{pipeline_end_code} r32 reg_{op_guid}_1[TILE_N_{p_id} / THREADS_PER_WARP_{r_id}]; {sts}(local_smem_stats + (tiw + i * THREADS_PER_WARP_{r_id}) * BYTES_PER_ELEMENT_{op_guid} + (TILE_N_{p_id} * {buf_id}) * BYTES_PER_ACC_{p_id}, ®_{op_guid}_1[i]); r32 tmp[2]; lds_64(tmp, local_smem_stats + (tiw % 4) * 2 * BYTES_PER_ACC_{p_id} + (i * 2 + n * 16 + TILE_N_{p_id} * {buf_id}) * BYTES_PER_ACC_{p_id}); reg_{op_guid}_0[n][i+0] = tmp[0]; reg_{op_guid}_0[n][i+1] = tmp[1]; reg_{op_guid}_0[n][i+2] = tmp[0]; reg_{op_guid}_0[n][i+3] = tmp[1]; r32 tmp[1]; lds_32(tmp, local_smem_stats + ((tiw % 4) * 2 + i * 2 + n * 16) * BYTES_PER_ELEMENT_{op_guid} + (TILE_N_{p_id} * {buf_id}) * BYTES_PER_ACC_{p_id}); reg_{op_guid}_0[n][i/2+0] = tmp[0]; reg_{op_guid}_0[n][i/2+1] = tmp[0]; #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < 8; i+=4) {{ const long long int dp_row_offset_{p_id} = {padded_s_q} * BYTES_PER_ELEMENT_{p_id}; const long long int dp_head_offset_{p_id} = {padded_s_kv} * dp_row_offset_{p_id}; const long long int dp_batch_offset_{p_id} = attnDesc.q_h * dp_head_offset_{p_id}; char *loc_dp_{p_id} = reinterpret_cast({workspace}) + batch_coord_{p_id} * dp_batch_offset_{p_id} + head_coord_{p_id} * dp_head_offset_{p_id} + (kv_row_coord + local_wid * 16) * dp_row_offset_{p_id} + tiw * 8 * BYTES_PER_ELEMENT_{p_id}; stg_128(loc_dp_{p_id} + n * 16 * 16 * BYTES_PER_ELEMENT_{p_id} + p_col_coord * 16 * BYTES_PER_ELEMENT_{p_id} + m * GMMA_TILE_M_{p_id} * TILE_N_{p_id} * BYTES_PER_ELEMENT_{p_id}, reg_{pw_chain_1_output_guid}_1[m][n]); stsm_x4(smem_dp_fp16 + dp_col_byte_offset[n], reg_{pw_chain_1_output_guid}_1[m][n]);block * TILE_N_{p_id} * 64 * sizeof(float) }} fence_view_async_shared(); smem_bar_arrive(smem_bar_dq_mma); named_barrier_wait(BMM_DQ_DONE_{p_id}, THREADS_PER_GROUP_{r_id} * 2); fence_view_async_shared(); smem_bar_arrive(smem_bar_dq_mma); }} else {{ named_barrier_wait(BMM_DQ_DONE_{p_id}, THREADS_PER_GROUP_{r_id} * 2); }} r32 tmp_reg[4]; tmp_reg[0] = reg_{p_id}_2[0][i][j * 2 + 0]; tmp_reg[1] = reg_{p_id}_2[0][i][j * 2 + 1]; tmp_reg[2] = reg_{p_id}_2[0][i][j * 2 + 4]; tmp_reg[3] = reg_{p_id}_2[0][i][j * 2 + 5]; sts_128(smem_dq_offset + i * TILE_N_{p_id} * 16 * sizeof(float) + j * 8 * 16 * sizeof(float) + {smem_dq_offset_code}, tmp_reg); sts_64(smem_dq_offset + (i / 2) * TILE_N_{p_id} * 128 + 0 * 8 * 128 + {smem_dq_offset_code}, ®_{p_id}_2[0][i][j*4 + 0]); sts_64(smem_dq_offset + (i / 2) * TILE_N_{p_id} * 128 + 1 * 8 * 128 + {smem_dq_offset_code}, ®_{p_id}_2[0][i][j*4 + 2]); move_smem_to_next_ki(smem_dq_offset, (i % 2) * 2 + j, 4, BYTES_PER_BANK_{p_id}); {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x -= ((block * TILE_M_{p_id} * 2 * 64 * BYTES_PER_ELEMENT_{p_id}) >> 4); }} if (block == 0) {{ if (!smem_bar_peek(smem_bar_dq_tma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_tma, smem_bar_phase_dq); }} smem_bar_phase_dq ^= 1; }} if (d_column_coord > 0) {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x -= ((128 * TILE_M_{p_id} * 2 * FORT_DIV_UP(TILE_K_{p_id}, 128)) >> 4); }} named_barrier_wait(BMM_DQ_DONE_{p_id}, THREADS_PER_GROUP_{r_id} * 2); if (!smem_bar_peek(smem_bar_dq_tma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_tma, smem_bar_phase_dq); }} smem_bar_phase_dq ^= 1; int num_blocks = local_gid == 0 ? 1 : 2; #pragma unroll for (int block = 0; block < num_blocks; block++) {{ r32 reg_{p_id}_2[1][REGS_dQ_{p_id}][8]; memset(®_{p_id}_2[0][0][0], 0, sizeof(reg_{p_id}_2)); {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x += ((block * TILE_M_{p_id} * 2 * 64 * BYTES_PER_ELEMENT_{p_id}) >> 4); }} fence_view_async_shared(); named_barrier_wait(BMM_DQ_DONE_{p_id}, THREADS_PER_GROUP_{r_id} * 2); if (d_column_coord > 0) {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x += ((128 * TILE_M_{p_id} * 2 * FORT_DIV_UP(TILE_K_{p_id}, 128)) >> 4); }} if (local_gid == 1) {{ r32 reg_{p_id}_2[1][REGS_dQ_{p_id}][8]; memset(®_{p_id}_2[0][0][0], 0, sizeof(reg_{p_id}_2)); warpgroup_arrive(); #pragma unroll for (int k = 0; k < 2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ if (k == 2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id} - 1) {{ BMM_DQ_GMMA_ISB(gmma_desc_dp.desc, gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} else {{ BMM_DQ_GMMA(gmma_desc_dp.desc, gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} int2 &tmp_desc_dp = reinterpret_cast(gmma_desc_dp.desc); tmp_desc_dp.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; }} {{ int2 &tmp_desc_dp = reinterpret_cast(gmma_desc_dp.desc); tmp_desc_dp.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}); int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}); }} warpgroup_wait<0>(); #pragma unroll for (int i = 0; i < REGS_dQ_{p_id}; ++i) {{ #pragma unroll for (int j = 0; j < 2; ++j) {{ actual_seqlen_kv_{p_id} = {input_kv}[batch_coord_{p_id}]; actual_seqlen_q_{p_id} = {input_q}[batch_coord_{p_id}]; if (actual_seqlen_q_{p_id} > 0 && actual_seqlen_kv_{p_id} > 0) {{ int2 qo_loop_bounds = compute_qo_loop_bounds(numerator, 2*TILE_M_{p_id}, TILE_N_{p_id}, actual_seqlen_kv_{p_id}, actual_seqlen_q_{p_id}, shift_right_bound, left_bound); qo_loop_left_bound = qo_loop_bounds.x; qo_loop_right_bound = qo_loop_bounds.y;if (numerator >= actual_seqlen_kv_{p_id}) qo_loop_right_bound = qo_loop_left_bound; int actual_num_rows = 0; if (tiw == 0) {{ for (int i = 0; i < attnDesc.b; i++) {{ actual_num_rows += FORT_DIV_UP({input_kv}[i], TILE_M_{p_id} * 2); }} }} actual_num_rows = __shfl_sync(0xffffffff, actual_num_rows, 0); const int actual_num_tiles_{p_id} = actual_num_rows * attnDesc.q_h; if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); #pragma unroll 1 for (int i = batch_coord_{p_id}; i < attnDesc.b; i++) {{ const int tiles_per_head = FORT_DIV_UP({input_kv}[i], TILE_M_{p_id} * 2); const int tiles_per_batch = tiles_per_head * attnDesc.q_h; const int local_tile_id = tile_id - cumulative_tiles; if (tile_id < cumulative_tiles + tiles_per_batch) {{ batch_coord_{p_id} = i; head_coord_{p_id} = local_tile_id / tiles_per_head; kv_row_coord_tmp = local_tile_id % tiles_per_head; break; }} cumulative_tiles += tiles_per_batch; }} }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); kv_row_coord_tmp = __shfl_sync(0xffffffff, kv_row_coord_tmp, 0); named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ uint32_t tile_coord[4] = {{tile_id, batch_coord_{p_id}, head_coord_{p_id}, kv_row_coord_tmp}}; sts_128(smem_tile_id_{p_id}, tile_coord); }} named_barrier_arrive(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ uint32_t tile_coord[4]; lds_128(tile_coord, smem_tile_id_{p_id}); tile_id = tile_coord[0]; batch_coord_{p_id} = tile_coord[1]; head_coord_{p_id} = tile_coord[2]; kv_row_coord_tmp = tile_coord[3]; }} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); tile_id = __shfl_sync(0xffffffff, tile_id, 0); batch_coord_{p_id} = __shfl_sync(0xffffffff, batch_coord_{p_id}, 0); head_coord_{p_id} = __shfl_sync(0xffffffff, head_coord_{p_id}, 0); kv_row_coord_tmp = __shfl_sync(0xffffffff, kv_row_coord_tmp, 0); fastDivMod(tiles_bh_div_{p_id}, tile_id, kv_row_coord_tmp, rows_temp); fastDivMod(tiles_h_div_{p_id}, rows_temp, batch_coord_{p_id}, head_coord_{p_id}); fastDivMod(tiles_hr_div_{p_id}, tile_id, batch_coord_{p_id}, rows_temp); fastDivMod(tiles_r_div_{p_id}, rows_temp, head_coord_{p_id}, kv_row_coord_tmp); uint32_t kv_row_coord = (kv_row_coord_tmp / 2) * TILE_M_{p_id} * 2; uint32_t d_column_coord = (kv_row_coord_tmp % 2) * 128; uint32_t kv_row_coord = kv_row_coord_tmp * TILE_M_{p_id} * 2; uint32_t d_column_coord = 0;local_gid * TILE_N_{p_id} * 64 * BYTES_PER_ACC_{p_id} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_tma = smem_bar_do_tma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_mma = smem_bar_do_mma + 8 * BUFFERS_O_{p_id}; uint32_t batch_coord_{p_id}, head_coord_{p_id}, rows_temp, kv_row_coord_tmp; int qo_loop_left_bound, qo_loop_right_bound; int actual_seqlen_q_{p_id} = attnDesc.s_q, actual_seqlen_kv_{p_id} = attnDesc.s_kv; uint32_t smem_bar_phase_dq = 0;{load_next_tile_id_code} // Persistent loop over output tiles #pragma unroll 1 while (tile_id < actual_num_tiles_{p_id}) {{{tile_extract_code} {left_bound_code}{shift_right_bound_code} int numerator = kv_row_coord; {qo_loop_bound_code} {stg_dq_decl} if ({dq_with_atomic}) {{ #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int qo_col_coord = qo_loop * TILE_N_{p_id}; if (!smem_bar_peek(smem_bar_dq_mma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_mma, smem_bar_phase_dq); }} smem_bar_phase_dq ^= 1; {stg_dq_code} tmastg_arrive(); tmastg_wait(); if (elect_one) {{ smem_bar_arrive(smem_bar_dq_tma); }} }} }} {qo_loop_bound_close_code} // Get next tile{load_next_tile_id_code} }} uint32_t smem_bar_phase_dq = 1; uint32_t smem_dq_offset = smem_dq_{p_id} + local_wid * 16 * 16 * BYTES_PER_ACC_{p_id} + tiw * 4 * BYTES_PER_ACC_{p_id} + {warp_group_dq_offset_code}; uint32_t smem_dq_offset = smem_dq_{p_id} + local_wid * 16 * 128 + smem_dq_row * 128 + (smem_dq_col ^ smem_dq_row) * BYTES_PER_BANK_{p_id} + (tiw % 2) * 2 * BYTES_PER_ACC_{p_id} + {warp_group_dq_offset_code}; uint32_t dp_row = (tiw % 16); uint32_t dp_col_byte_offset[REGS_N_{p_id}]; #pragma unroll for (int i = 0; i < REGS_N_{p_id}; ++i) {{ dp_col_byte_offset[i] = (((tiw / 16) + i * 2) ^ (dp_row % 8)) * BYTES_PER_BANK_{p_id}; }} uint32_t smem_dp_fp16 = smem_dp_{p_id} + ((local_gid * 4 + local_wid) * 16 * TILE_N_{p_id} + dp_row * TILE_N_{p_id}) * BYTES_PER_ELEMENT_{p_id}; uint32_t smem_dq_col = (tiw % 4) / 2; uint32_t smem_dq_row = (tiw / 4); warpgroup_arrive(); #pragma unroll for (int k = 0; k < REGS_K_{p_id}; ++k) {{ if (k == REGS_K_{p_id} - 1) {{ BMM_S_GMMA_ISB(gmma_desc_k.desc, gmma_desc_bmm1_q.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} else {{ BMM_S_GMMA(gmma_desc_k.desc, gmma_desc_bmm1_q.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_k.x += ((128*TILE_M_{p_id}*2) >> 4); }} int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm1_q.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_q.x += ((128*TILE_N_{p_id}) >> 4); }} }} {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x -= ((128 * TILE_M_{p_id} * 2) >> 4) * (REGS_K_{p_id} / 4); int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm1_q.desc); tmp_desc_q.x -= ((128 * TILE_N_{p_id}) >> 4) * (REGS_K_{p_id} / 4); }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < REGS_K_FOR_DP_{p_id}; ++k) {{ if (k == REGS_K_FOR_DP_{p_id} - 1) {{ BMM_DP_GMMA_ISB(gmma_desc_v.desc, gmma_desc_bmm1_do.desc, reinterpret_cast(reg_{matmul_3_guid}_0[0])); }} else {{ BMM_DP_GMMA(gmma_desc_v.desc, gmma_desc_bmm1_do.desc, reinterpret_cast(reg_{matmul_3_guid}_0[0])); }} int2 &tmp_desc_k = reinterpret_cast(gmma_desc_v.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_k.x += ((128*TILE_M_{p_id}*2) >> 4); }} int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm1_do.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_q.x += ((128*TILE_N_{p_id}) >> 4); }} }} {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_v.desc); tmp_desc_k.x -= ((128 * TILE_M_{p_id} * 2) >> 4) * (REGS_K_FOR_DP_{p_id} / 4); int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm1_do.desc); tmp_desc_q.x -= ((128 * TILE_N_{p_id}) >> 4) * (REGS_K_FOR_DP_{p_id} / 4); }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ {data_cast_code}(®_{pw_chain_0_output_guid}_1[m][n][i/2], ®_{pw_chain_0_output_guid}_0[m][n][i]); }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ {data_cast_code}(®_{pw_chain_1_output_guid}_1[m][n][i/2], ®_{pw_chain_1_output_guid}_0[m][n][i]); }}{sts_or_stg_dP_code} }} }} if (d_column_coord < attnDesc.d_v) {{{stg_dv_code} tmastg_arrive(); tmastg_wait(); named_barrier_wait(TMASTG_DV_DONE_{p_id}, 256); }} {stg_dk_code} tmastg_arrive(); tmastg_wait();(local_gid * TILE_M_{p_id} * 2 * 64 * BYTES_PER_ELEMENT_{p_id}) if (!smem_bar_peek(smem_bar_dq_tma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_tma, smem_bar_phase_dq); }} if (d_column_coord > 0) {{ int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm2_q.desc); tmp_desc_q.x -= ((128 * TILE_N_{p_id} * FORT_DIV_UP(TILE_K_{p_id}, 128)) >> 4); }} if (d_column_coord > 0) {{ int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm2_q.desc); tmp_desc_q.x += ((128 * TILE_N_{p_id} * FORT_DIV_UP(TILE_K_{p_id}, 128)) >> 4); }} if (d_column_coord > 0) {{ int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm2_do.desc); tmp_desc_do.x -= ((128 * TILE_N_{p_id} * FORT_DIV_UP(TILE_K_{p_id}, 128)) >> 4); }} if (d_column_coord < attnDesc.d_v) {{ if (d_column_coord > 0) {{ int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm2_do.desc); tmp_desc_do.x += ((128 * TILE_N_{p_id} * FORT_DIV_UP(TILE_K_{p_id}, 128)) >> 4); }}{actual_num_tiles_code} if (gid == 0) {{ reg_dealloc<24>(); const uint32_t local_wid = wid % 4; uint32_t tile_id; if (local_wid == 0) {{ uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_stats_tma = smem_bar_do_tma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_stats_mma = smem_bar_do_mma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); uint32_t buffer_id_qo = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_qo = 0; uint32_t cnt_kv = 0; uint32_t batch_coord_{p_id} = 0, head_coord_{p_id} = 0, rows_temp = 0, kv_row_coord_tmp = 0; int qo_loop_left_bound, qo_loop_right_bound; int actual_seqlen_q_{p_id} = attnDesc.s_q, actual_seqlen_kv_{p_id} = attnDesc.s_kv; int cumulative_tiles = 0;{store_next_tile_id_code} // Persistent loop over output tiles #pragma unroll 1 while (tile_id < actual_num_tiles_{p_id}) {{{tile_extract_code} int numerator = kv_row_coord;{left_bound_code}{shift_right_bound_code} {qo_loop_bound_code} const int head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; const int head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; {row_broadcast_ldg_decls}{ldgsts_K_decl}{ldgsts_V_decl}{ldgsts_Q_decl}{ldgsts_dO_decl} uint32_t local_smem_k = smem_k_{p_id} + buffer_id_kv * SMEM_K_{p_id}; uint32_t local_smem_v = smem_v_{p_id} + buffer_id_kv * SMEM_V_{p_id}; uint32_t local_smem_bar_tma_kv = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_kv = smem_bar_k_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 1 : 0; if (qo_loop_left_bound < qo_loop_right_bound) {{ cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_kv, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_mma_kv, smem_bar_phase_kv); }} smem_bar_set_transaction_count(local_smem_bar_tma_kv, SMEM_K_{p_id} + SMEM_V_{p_id}, elect_one);{ldgsts_K_code} {ldgsts_V_code} }} #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int qo_col_coord = qo_loop * TILE_N_{p_id}; uint32_t local_smem_q = smem_q_{p_id} + buffer_id_qo * SMEM_Q_{p_id}; uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_qo * 8; uint32_t local_smem_do = smem_do_{p_id} + buffer_id_qo * SMEM_O_{p_id}; uint32_t local_smem_bar_tma_do = smem_bar_do_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_do = smem_bar_do_mma + buffer_id_qo * 8; uint32_t local_smem_stats = smem_stats_{p_id} + buffer_id_qo * SMEM_STATS_{p_id}; uint32_t local_smem_bar_tma_stats = smem_bar_stats_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_stats = smem_bar_stats_mma + buffer_id_qo * 8; uint32_t smem_bar_phase_qo = cnt_qo < BUFFERS_Q_{p_id} ? 1 : 0; cnt_qo = cnt_qo < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_qo + 1) : 0; buffer_id_qo = buffer_id_qo < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_qo + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_stats, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_mma_stats, smem_bar_phase_qo); }} named_barrier_wait(SOFTMAX_STATS_BARRIER_{p_id}, 32);{row_broadcast_reg_decls} #pragma unroll for (int i = 0; i < (TILE_N_{p_id} / THREADS_PER_WARP_{r_id}); ++i) {{{row_broadcast_ldg_code}{row_broadcast_sts_code} }} fence_view_async_shared(); named_barrier_wait(SOFTMAX_STATS_BARRIER_{p_id}, 32); if (elect_one) {{ smem_bar_arrive(local_smem_bar_tma_stats); }} if (!smem_bar_peek(local_smem_bar_mma_q, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_mma_q, smem_bar_phase_qo); }} smem_bar_set_transaction_count(local_smem_bar_tma_q, SMEM_Q_{p_id}, elect_one);{ldgsts_Q_code} if (!smem_bar_peek(local_smem_bar_mma_do, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_mma_do, smem_bar_phase_qo); }} smem_bar_set_transaction_count(local_smem_bar_tma_do, SMEM_O_{p_id}, elect_one);{ldgsts_dO_code} }} {qo_loop_bound_close_code}{store_next_tile_id_code} }} named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); }} else if (local_wid == 1) {{{tmastg_warp_code} }} reg_dealloc<24>(); }} else {{ reg_alloc<240>(); named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); const uint32_t local_wid = wid % 4; const uint32_t local_gid = gid % 2; uint32_t tile_id; uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_tma = smem_bar_do_tma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_stats_tma = smem_bar_do_tma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_mma = smem_bar_do_mma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_stats_mma = smem_bar_do_mma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); {smem_bar_dk_dv_decl} uint32_t buffer_id_qo = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_qo = 0; uint32_t cnt_kv = 0; Gmma_descriptor gmma_desc_k(create_gmma_desc_bmm1_a_{p_id}()); Gmma_descriptor gmma_desc_v(create_gmma_desc_bmm1_a_{p_id}()); Gmma_descriptor gmma_desc_bmm1_q(create_gmma_desc_bmm1_b_{p_id}()); Gmma_descriptor gmma_desc_bmm1_do(create_gmma_desc_bmm1_b_{p_id}()); Gmma_descriptor gmma_desc_bmm2_q(create_gmma_desc_bmm2_b_{p_id}()); Gmma_descriptor gmma_desc_bmm2_do(create_gmma_desc_bmm2_b_{p_id}()); Gmma_descriptor gmma_desc_k_tr(create_gmma_desc_bmm3_b_{p_id}()); Gmma_descriptor gmma_desc_dp(create_gmma_desc_bmm3_a_{p_id}()); gmma_desc_k.set_smem(smem_k_{p_id} + local_gid * TILE_M_{p_id} * 128); gmma_desc_v.set_smem(smem_v_{p_id} + local_gid * TILE_M_{p_id} * 128); gmma_desc_bmm1_q.set_smem(smem_q_{p_id}); gmma_desc_bmm1_do.set_smem(smem_do_{p_id}); gmma_desc_bmm2_q.set_smem(smem_q_{p_id}); gmma_desc_bmm2_do.set_smem(smem_do_{p_id}); gmma_desc_k_tr.set_smem(smem_k_{p_id} + {warp_group_k_offset_code}); gmma_desc_dp.set_smem(smem_dp_{p_id}); {smem_dq_dp_decl} uint32_t batch_coord_{p_id}, head_coord_{p_id}, rows_temp, kv_row_coord_tmp; int qo_loop_left_bound, qo_loop_right_bound; int actual_seqlen_q_{p_id} = attnDesc.s_q, actual_seqlen_kv_{p_id} = attnDesc.s_kv; {load_next_tile_id_code} // Persistent loop over output tiles #pragma unroll 1 while (tile_id < actual_num_tiles_{p_id}) {{{tile_extract_code} kv_row_coord += local_gid * TILE_M_{p_id}; {left_bound_code}{shift_right_bound_code} int numerator = kv_row_coord - local_gid * TILE_M_{p_id}; {qo_loop_bound_code} const int causal_mask_col = qo_loop_left_bound * TILE_N_{p_id} + (tiw % 4) * 2; const int causal_mask_row = kv_row_coord + local_wid * 16 + (tiw / 4);{mma_loop_decls} {sts_or_stg_dP_decl} uint32_t local_smem_bar_tma_kv = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_kv = smem_bar_k_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 0 : 1; if (qo_loop_left_bound < qo_loop_right_bound) {{ cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; if (!smem_bar_peek(local_smem_bar_tma_kv, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_tma_kv, smem_bar_phase_kv); }} }} r32 reg_{pw_chain_0_output_guid}_1[REGS_M_{pw_chain_0_output_guid}][REGS_N_{pw_chain_0_output_guid}][4]; r32 reg_{pw_chain_1_output_guid}_1[REGS_M_{pw_chain_1_output_guid}][REGS_N_{pw_chain_1_output_guid}][4]; r32 reg_{p_id}_0[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; // Stores the dv memset(®_{p_id}_0[0][0][0], 0, sizeof(reg_{p_id}_0)); r32 reg_{p_id}_1[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; // Stores the dk memset(®_{p_id}_1[0][0][0], 0, sizeof(reg_{p_id}_1)); #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int p_col_coord = qo_loop * TILE_N_{p_id}; const int causal_mask_col = p_col_coord + (tiw % 4) * 2; const int causal_mask_row = kv_row_coord + local_wid * 16 + (tiw / 4); uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_qo * 8; uint32_t local_smem_bar_tma_do = smem_bar_do_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_do = smem_bar_do_mma + buffer_id_qo * 8; uint32_t local_smem_stats = smem_stats_{p_id} + buffer_id_qo * SMEM_STATS_{p_id}; uint32_t local_smem_bar_tma_stats = smem_bar_stats_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_stats = smem_bar_stats_mma + buffer_id_qo * 8; uint32_t smem_bar_phase_qo = cnt_qo < BUFFERS_Q_{p_id} ? 0 : 1; cnt_qo = cnt_qo < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_qo + 1) : 0; buffer_id_qo = buffer_id_qo < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_qo + 1) : 0; memset(®_{matmul_1_guid}_0[0][0][0], 0, sizeof(reg_{matmul_1_guid}_0)); if (!smem_bar_peek(local_smem_bar_tma_q, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_tma_q, smem_bar_phase_qo); }} {matmul_1_code} gmma_desc_bmm1_q.increment_smem_buffer(); if (!smem_bar_peek(local_smem_bar_tma_do, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_tma_do, smem_bar_phase_qo); }} if (!smem_bar_peek(local_smem_bar_tma_stats, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_tma_stats, smem_bar_phase_qo); }} warpgroup_wait<0>(); {row_broadcast_lds_0_code}{rng_code} {pointwise_chain_0_code} memset(®_{matmul_3_guid}_0[0][0][0], 0, sizeof(reg_{matmul_3_guid}_0)); {matmul_2_code} gmma_desc_bmm1_do.increment_smem_buffer(); {row_broadcast_lds_1_code} warpgroup_wait<0>();{pointwise_chain_1_code} // Convert S into bf16/fp16/fp8 for the second gemm{down_convert_s_code} cfence(); // Performance hint for better SASS warpgroup_arrive(); #pragma unroll for (int k = 0; k < TILE_N_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ if (k == TILE_N_{p_id} / GMMA_TILE_K_{p_id} - 1 && m == REGS_M_{p_id} - 1) {{ BMM_DV_GMMA_ISB(reg_{pw_chain_0_output_guid}_1[m][k], gmma_desc_bmm2_do.desc, reinterpret_cast(reg_{p_id}_0[m])); }} else {{ BMM_DV_GMMA(reg_{pw_chain_0_output_guid}_1[m][k], gmma_desc_bmm2_do.desc, reinterpret_cast(reg_{p_id}_0[m])); }} }} int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm2_do.desc); tmp_desc_do.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; }} {{ int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm2_do.desc); tmp_desc_do.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (TILE_N_{p_id} / GMMA_TILE_K_{p_id}); }} gmma_desc_bmm2_do.increment_smem_buffer(); {contract_band_matrix_code} {cast_data_for_dq_matmul_code} warpgroup_arrive(); #pragma unroll for (int k = 0; k < TILE_N_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ if (k == TILE_N_{p_id} / GMMA_TILE_K_{p_id} - 1 && m == REGS_M_{p_id} - 1) {{ BMM_DK_GMMA_ISB(reg_{pw_chain_1_output_guid}_1[m][k], gmma_desc_bmm2_q.desc, reinterpret_cast(reg_{p_id}_1[m])); }} else {{ BMM_DK_GMMA(reg_{pw_chain_1_output_guid}_1[m][k], gmma_desc_bmm2_q.desc, reinterpret_cast(reg_{p_id}_1[m])); }} }} int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm2_q.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; }} {{ int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm2_q.desc); tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (TILE_N_{p_id} / GMMA_TILE_K_{p_id}); }} gmma_desc_bmm2_q.increment_smem_buffer(); warpgroup_wait<1>(); if (elect_one) {{ smem_bar_arrive(local_smem_bar_mma_do); smem_bar_arrive(local_smem_bar_mma_stats); }} warpgroup_wait<0>(); if (elect_one) {{ smem_bar_arrive(local_smem_bar_mma_q); }}{matmul_3_code} }} if (qo_loop_left_bound < qo_loop_right_bound) {{ gmma_desc_k.increment_smem_buffer(); gmma_desc_v.increment_smem_buffer(); if (elect_one) {{ smem_bar_arrive(local_smem_bar_mma_kv); }} }} {epilogue_code} {qo_loop_bound_close_code}{load_next_tile_id_code} }} reg_alloc<240>(); }} const int left_bound = 0; const int shift_right_bound = 0; float bmm_deq_scale_q_k = reinterpret_cast(reg_{input_guid_0}_{input_port_0}[0]) * reinterpret_cast(reg_{input_guid_1}_{input_port_1}[0]) * reinterpret_cast(reg_{input_guid_2}_{input_port_2}[0]); float q_scale_s = reinterpret_cast(reg_{input_guid_3}_{input_port_3}[0]); float deq_scale_do_v = reinterpret_cast(reg_{input_guid_0}_{input_port_0}[0]) * reinterpret_cast(reg_{input_guid_1}_{input_port_1}[0]); float bmm_scale = reinterpret_cast(reg_{input_guid_2}_{input_port_2}[0]); float q_scale_dp = reinterpret_cast(reg_{input_guid_3}_{input_port_3}[0]); float deq_scale_s_do = reinterpret_cast(reg_{input_guid_0}_{input_port_0}[0]) * reinterpret_cast(reg_{input_guid_1}_{input_port_1}[0]); float q_scale_dv = reinterpret_cast(reg_{input_guid_2}_{input_port_2}[0]); float deq_scale_dp_q = reinterpret_cast(reg_{input_guid_0}_{input_port_0}[0]) * reinterpret_cast(reg_{input_guid_1}_{input_port_1}[0]); float q_scale_dk = reinterpret_cast(reg_{input_guid_2}_{input_port_2}[0]); #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ reinterpret_cast(reg_{out_guid}_0[m][n][i]) *= {scaler}; }} }} }} fence_view_async_shared(); named_barrier_wait(BMM_DQ_DONE_{p_id}, THREADS_PER_GROUP_{r_id} * 2); if (local_gid == 1) {{ r32 reg_{p_id}_2[1][REGS_K_{p_id}][8]; memset(®_{p_id}_2[0][0][0], 0, sizeof(reg_{p_id}_2)); warpgroup_arrive(); #pragma unroll for (int k = 0; k < 2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ if (k == 2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id} - 1) {{ BMM_DQ_GMMA_ISB(gmma_desc_dp.desc, gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} else {{ BMM_DQ_GMMA(gmma_desc_dp.desc, gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} int2 &tmp_desc_dp = reinterpret_cast(gmma_desc_dp.desc); tmp_desc_dp.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id}; }} {{ int2 &tmp_desc_dp = reinterpret_cast(gmma_desc_dp.desc); tmp_desc_dp.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}); int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_TRANS_{p_id} * (2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}); }} if (!smem_bar_peek(smem_bar_dq_tma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_tma, smem_bar_phase_dq); }} warpgroup_wait<0>(); smem_bar_phase_dq ^= 1; #pragma unroll for (int i = 0; i < REGS_K_{p_id}; ++i) {{ #pragma unroll for (int j = 0; j < 2; ++j) {{ sts_64(smem_dq_offset + (i / 2) * TILE_N_{p_id} * 128 + 0 * 8 * 128, ®_{p_id}_2[0][i][j*4 + 0]); sts_64(smem_dq_offset + (i / 2) * TILE_N_{p_id} * 128 + 1 * 8 * 128, ®_{p_id}_2[0][i][j*4 + 2]); move_smem_to_next_ki(smem_dq_offset, (i % 2) * 2 + j, 4, BYTES_PER_BANK_{p_id}); }} }} fence_view_async_shared(); named_barrier_wait(STS_DQ_DV_DONE_{p_id}, THREADS_PER_GROUP_{r_id}); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(smem_bar_dq_mma); }} }} actual_seqlen_kv_{p_id} = {input_kv}[batch_coord_{p_id}]; actual_seqlen_q_{p_id} = {input_q}[batch_coord_{p_id}]; uint32_t batch_coord_{p_id}, head_coord_{p_id}, kv_row_coord, rows_temp, d_column_coord; int qo_loop_left_bound, qo_loop_right_bound; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q; fastDivMod(tiles_bh_div_{p_id}, tile_id, kv_row_coord, rows_temp); fastDivMod(tiles_h_div_{p_id}, rows_temp, batch_coord_{p_id}, head_coord_{p_id}); kv_row_coord = kv_row_coord * TILE_M_{p_id} * 2; d_column_coord = 0; uint32_t batch_coord_{p_id}, head_coord_{p_id}, kv_row_coord, rows_temp, d_column_coord; int qo_loop_left_bound, qo_loop_right_bound; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q; fastDivMod(tiles_hr_div_{p_id}, tile_id, batch_coord_{p_id}, rows_temp); fastDivMod(tiles_r_div_{p_id}, rows_temp, head_coord_{p_id}, kv_row_coord); kv_row_coord = kv_row_coord * TILE_M_{p_id} * 2; d_column_coord = 0; if (!smem_bar_peek(smem_bar_dv_mma, smem_bar_phase_dkv)) {{ smem_bar_wait(smem_bar_dv_mma, smem_bar_phase_dkv); }} smem_bar_arrive(smem_bar_dv_tma); uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_tma = smem_bar_do_tma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_dv_tma = smem_bar_dq_tma + 8 * (BUFFERS_DQ_{p_id} + BUFFERS_STATS_{p_id}); uint32_t smem_bar_dk_tma = smem_bar_dv_tma + 8 * BUFFERS_DV_{p_id}; uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_mma = smem_bar_do_mma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_dv_mma = smem_bar_dq_mma + 8 * (BUFFERS_DQ_{p_id} + BUFFERS_STATS_{p_id}); uint32_t smem_bar_dk_mma = smem_bar_dv_mma + 8 * BUFFERS_DV_{p_id}; uint32_t smem_bar_phase_dq = 0; uint32_t smem_bar_phase_dkv = 0; named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); // Persistent loop over output tiles #pragma unroll 1 while (tile_id < num_tiles_{p_id}) {{{tile_extract_code} {left_bound_code}{shift_right_bound_code} int numerator = kv_row_coord; {qo_loop_bound_code} if ({dq_with_atomic}) {{ #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int qo_col_coord = qo_loop * TILE_N_{p_id}; // The flush comes from the the previous qo_loop // dQ store completes; dQ SMEM ready tmastg_wait(); if (elect_one) {{ smem_bar_arrive(smem_bar_dq_tma); }} if (!smem_bar_peek(smem_bar_dq_mma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_mma, smem_bar_phase_dq); }} smem_bar_phase_dq ^= 1; {stg_dq_code} // Flush dQ store but do not wait; wait at the beginning of the next qo_loop tmastg_arrive(); }} }} // STG DV / DK {{{bar_peek_dv_code} {stg_dv_code} }} {{ if (!smem_bar_peek(smem_bar_dk_mma, smem_bar_phase_dkv)) {{ smem_bar_wait(smem_bar_dk_mma, smem_bar_phase_dkv); }} {stg_dk_code} }} {{ if (elect_one) {{ // Decrease TX count before dQ/dK/dV SMEM is ready to be filled // However, we utilize tmastg_wait() in the dQ loop to release dK/dV SMEM // TODO ANT: maybe dV/dK bar is not needed as they are already preceded by dQ bar?{bar_arrive_dv_code} smem_bar_arrive(smem_bar_dk_tma); }} }} smem_bar_phase_dkv ^= 1; // Get next tile named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); tile_id = __shfl_sync(0xffffffff, tile_id, 0); }} uint32_t smem_bar_dv_tma = smem_bar_stats_tma + 8 * BUFFERS_STATS_{p_id}; uint32_t smem_bar_dk_tma = smem_bar_dv_tma + 8 * BUFFERS_DV_{p_id}; uint32_t smem_bar_dv_mma = smem_bar_stats_mma + 8 * BUFFERS_STATS_{p_id}; uint32_t smem_bar_dk_mma = smem_bar_dv_mma + 8 * BUFFERS_DV_{p_id}; uint32_t smem_bar_phase_dq = 0; uint32_t smem_bar_phase_dkv = 1; fmha::Transposer transposer_q_do; fmha::Transposer transposer_k; if (local_gid == 0) {{ transposer_k.transpose_(tid, local_smem_k, smem_k_tr_{p_id}); }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < REGS_K_{p_id}; ++k) {{ if (k == REGS_K_{p_id} - 1) {{ BMM_S_GMMA_ISB(gmma_desc_k.desc, gmma_desc_bmm1_q.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} else if (k == 0) {{ BMM_S_GMMA_C0(gmma_desc_k.desc, gmma_desc_bmm1_q.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} else {{ BMM_S_GMMA(gmma_desc_k.desc, gmma_desc_bmm1_q.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm1_q.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; }} {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * REGS_K_{p_id}; int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm1_q.desc); tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * REGS_K_{p_id}; }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < REGS_K_{p_id}; ++k) {{ if (k == REGS_K_{p_id} - 1) {{ BMM_DP_GMMA_ISB(gmma_desc_v.desc, gmma_desc_bmm1_do.desc, reinterpret_cast(reg_{matmul_3_guid}_0[0])); }} else if (k == 0) {{ BMM_DP_GMMA_C0(gmma_desc_v.desc, gmma_desc_bmm1_do.desc, reinterpret_cast(reg_{matmul_3_guid}_0[0])); }} else {{ BMM_DP_GMMA(gmma_desc_v.desc, gmma_desc_bmm1_do.desc, reinterpret_cast(reg_{matmul_3_guid}_0[0])); }} int2 &tmp_desc_v = reinterpret_cast(gmma_desc_v.desc); tmp_desc_v.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm1_do.desc); tmp_desc_do.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; }} {{ int2 &tmp_desc_v = reinterpret_cast(gmma_desc_v.desc); tmp_desc_v.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * REGS_K_{p_id}; int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm1_do.desc); tmp_desc_do.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * REGS_K_{p_id}; }} if (local_gid == 0) {{ r32 reg_{p_id}_2[1][REGS_K_{p_id} * 2][8]; memset(®_{p_id}_2[0][0][0], 0, sizeof(reg_{p_id}_2)); static constexpr int XMMAS_K_BMM3 = TILE_M_{p_id} * 2 / 32; static constexpr int XMMAS_M_BMM3 = TILE_N_{p_id} / GMMA_TILE_M_{p_id}; static constexpr int GMMA_WARP_TILE_SIZE = 16; uint32_t dp_frag_fp8[XMMAS_M_BMM3][XMMAS_K_BMM3][4]; #pragma unroll for (int m = 0; m < XMMAS_M_BMM3; ++m) {{ #pragma unroll for (int k = 0; k < XMMAS_K_BMM3; ++k) {{ r32 dp_frag_fp16[2][4]; #pragma unroll for (int l = 0; l < 2; l++) {{ int ki = k * 2 + l; uint32_t read_row = m * GMMA_TILE_M_{p_id} + local_wid * GMMA_WARP_TILE_SIZE + tiw / 2; uint32_t read_col = ki * 2 + tiw % 2; read_col ^= (read_row % 4) * 2; uint32_t smem_read_offset = read_row * (TILE_M_{p_id} * 2 * BYTES_PER_FP16_{p_id}) + read_col * BYTES_PER_BANK_{p_id}; ldsm_x4(dp_frag_fp16[l], smem_dp_{p_id} + smem_read_offset); }} // After LDSM, dp_frag_fp16[0].xyzw corresponds to x=(0, 0:1), y=(8, 0:1), z=(0, 8:9), w=(8, 8:9) // dp_frag_fp16[1].xyzw corresponds to x=(0, 16:17), y=(8, 16:17), z=(0, 24:25), w=(8, 24:25) // Repack into dp_frag_fp8 so each register corresponds to 4 elements in one row and in the following order // x: (0, [0:1, 8:9]) | z: (0, [16:17, 24:25]) // --------------------------------------- // y: (8, [0:1, 8:9]) | w: (8, [16:17, 24:25]) r32 tmp_reg_0[2]; r32 tmp_reg_1[2]; r32 tmp_reg_2[2]; r32 tmp_reg_3[2]; tmp_reg_0[0] = dp_frag_fp16[0][0]; tmp_reg_0[1] = dp_frag_fp16[0][2]; tmp_reg_1[0] = dp_frag_fp16[0][1]; tmp_reg_1[1] = dp_frag_fp16[0][3]; tmp_reg_2[0] = dp_frag_fp16[1][0]; tmp_reg_2[1] = dp_frag_fp16[1][2]; tmp_reg_3[0] = dp_frag_fp16[1][1]; tmp_reg_3[1] = dp_frag_fp16[1][3]; {data_cast_code}(&dp_frag_fp8[m][k][0], tmp_reg_0); {data_cast_code}(&dp_frag_fp8[m][k][1], tmp_reg_1); {data_cast_code}(&dp_frag_fp8[m][k][2], tmp_reg_2); {data_cast_code}(&dp_frag_fp8[m][k][3], tmp_reg_3); }} }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < 2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ if (k == 2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id} - 1) {{ BMM_DQ_GMMA_ISB(dp_frag_fp8[0][k], gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} else if (k == 0) {{ BMM_DQ_GMMA_C0(dp_frag_fp8[0][k], gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} else {{ BMM_DQ_GMMA(dp_frag_fp8[0][k], gmma_desc_k_tr.desc, reinterpret_cast(reg_{p_id}_2[0])); }} int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; }} {{ int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k_tr.desc); tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * (2 * TILE_M_{p_id} / GMMA_TILE_K_{p_id}); }} // Each group of 8 contiguous threads write into 128B of SMEM row and reshape back // in the dq_convert kernel. Doing so eliminates 2-way bank conflict uint32_t smem_dq_col = (tiw % 8); uint32_t smem_dq_row = (tiw / 8); uint32_t smem_dq_offset = smem_dq_{p_id} + local_wid * 16 * 128 // each warp divided by 16 x 128B rows + smem_dq_row * 128 // each row is 128B + smem_dq_col * BYTES_PER_BANK_{p_id}; warpgroup_wait<0>(); if (!smem_bar_peek(smem_bar_dq_tma, smem_bar_phase_dq)) {{ smem_bar_wait(smem_bar_dq_tma, smem_bar_phase_dq); }} smem_bar_phase_dq ^= 1; #pragma unroll for (int m = 0; m < 1; ++m) {{ #pragma unroll for (int n = 0; n < REGS_K_{p_id} * 2; ++n) {{ // dQ tile is of shape [TILE_N_{p_id}, TILE_K_{p_id}], reshaped into: // // [TILE_K_{p_id} / 128B, TILE_N_{p_id} / GMMA_M, GMMA_M, 128B] // ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ // dim1 = n/2 dim0 = m basic blk // // When TILE_K_{p_id} (gemm N dim) is greater than 128B, split and concat from below // row0 uint32_t stg0[4]; stg0[0] = reg_{p_id}_2[m][n][0]; stg0[1] = reg_{p_id}_2[m][n][4]; stg0[2] = reg_{p_id}_2[m][n][1]; stg0[3] = reg_{p_id}_2[m][n][5]; // row1 uint32_t stg1[4]; stg1[0] = reg_{p_id}_2[m][n][2]; stg1[1] = reg_{p_id}_2[m][n][6]; stg1[2] = reg_{p_id}_2[m][n][3]; stg1[3] = reg_{p_id}_2[m][n][7]; uint32_t smem_dq_block_offset = (n % 2) * 8 * 128 // offset within basic blk + m * GMMA_TILE_M_{p_id} * 128 // dim0 offset + (n / 2) * TILE_N_{p_id} * 128; // dim1 offset sts_128(smem_dq_offset + smem_dq_block_offset + 0 * 4 * 128, stg0); // upper core matrix sts_128(smem_dq_offset + smem_dq_block_offset + 1 * 4 * 128, stg1); // lower core matrix }} }} fence_view_async_shared(); named_barrier_wait(STS_DQ_DV_DONE_{p_id}, THREADS_PER_GROUP_{r_id}); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(smem_bar_dq_mma); }} }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; n+=2) {{ // Reorder srcA regs to match LDSMT-PRMT-STSM style srcB transpose // Pack into 4x e4m3's r32 reg_s_tmp[4][4] = {{ {{reg_{in_guid}_0[m][n+0][0], reg_{in_guid}_0[m][n+0][1], reg_{in_guid}_0[m][n+0][4], reg_{in_guid}_0[m][n+0][5]}}, // (0, 0), (0, 1), (0, 8), (0, 9) {{reg_{in_guid}_0[m][n+0][2], reg_{in_guid}_0[m][n+0][3], reg_{in_guid}_0[m][n+0][6], reg_{in_guid}_0[m][n+0][7]}}, // (8, 0), (8, 1), (8, 8), (8, 9) {{reg_{in_guid}_0[m][n+1][0], reg_{in_guid}_0[m][n+1][1], reg_{in_guid}_0[m][n+1][4], reg_{in_guid}_0[m][n+1][5]}}, // (0, 16), (0, 17), (0, 24), (0, 25) {{reg_{in_guid}_0[m][n+1][2], reg_{in_guid}_0[m][n+1][3], reg_{in_guid}_0[m][n+1][6], reg_{in_guid}_0[m][n+1][7]}} // (8, 16), (8, 17), (8, 24), (8, 25) }}; {data_cast_code}(®_{in_guid}_1[m][n/2][0], reg_s_tmp[0]); {data_cast_code}(®_{in_guid}_1[m][n/2][1], reg_s_tmp[1]); {data_cast_code}(®_{in_guid}_1[m][n/2][2], reg_s_tmp[2]); {data_cast_code}(®_{in_guid}_1[m][n/2][3], reg_s_tmp[3]); }} }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; n+=2) {{ // Reorder srcA regs to match LDSMT-PRMT-STSM style srcB transpose // Pack into 4x e4m3's r32 reg_dp_tmp[4][4] = {{ {{reg_{in_guid}_0[m][n+0][0], reg_{in_guid}_0[m][n+0][1], reg_{in_guid}_0[m][n+0][4], reg_{in_guid}_0[m][n+0][5]}}, // (0, 0), (0, 1), (0, 8), (0, 9) {{reg_{in_guid}_0[m][n+0][2], reg_{in_guid}_0[m][n+0][3], reg_{in_guid}_0[m][n+0][6], reg_{in_guid}_0[m][n+0][7]}}, // (8, 0), (8, 1), (8, 8), (8, 9) {{reg_{in_guid}_0[m][n+1][0], reg_{in_guid}_0[m][n+1][1], reg_{in_guid}_0[m][n+1][4], reg_{in_guid}_0[m][n+1][5]}}, // (0, 16), (0, 17), (0, 24), (0, 25) {{reg_{in_guid}_0[m][n+1][2], reg_{in_guid}_0[m][n+1][3], reg_{in_guid}_0[m][n+1][6], reg_{in_guid}_0[m][n+1][7]}} // (8, 16), (8, 17), (8, 24), (8, 25) }}; {data_cast_code}(®_{in_guid}_1[m][n/2][0], reg_dp_tmp[0]); {data_cast_code}(®_{in_guid}_1[m][n/2][1], reg_dp_tmp[1]); {data_cast_code}(®_{in_guid}_1[m][n/2][2], reg_dp_tmp[2]); {data_cast_code}(®_{in_guid}_1[m][n/2][3], reg_dp_tmp[3]); }} }} uint32_t stsmt_dp_fp16_row = tiw / 2; uint32_t stsmt_dp_fp16_col = (local_wid * 2 + tiw % 2 + local_gid * 8); // 16 row x 16 halfs per warp == 16 row x 64 halfs per 1x4 warpgroup stsmt_dp_fp16_col ^= (stsmt_dp_fp16_row % 4) * 2; // apply xor factor uint32_t stsmt_dp_fp16_base = smem_dp_{p_id} + stsmt_dp_fp16_row * TILE_M_{p_id} * 2 * BYTES_PER_FP16_{p_id} + stsmt_dp_fp16_col * BYTES_PER_BANK_{p_id}; // Transpose Q and dO uint32_t smem_tr_src = local_gid == 0 ? smem_q_{p_id} + (buffer_id_qo - 1) % BUFFERS_Q_{p_id} * SMEM_Q_{p_id} : smem_do_{p_id} + (buffer_id_qo - 1) % BUFFERS_O_{p_id} * SMEM_DO_{p_id}; uint32_t smem_tr_dst = local_gid == 0 ? smem_q_tr_{p_id} : smem_do_tr_{p_id}; transposer_q_do.transpose_(tid, smem_tr_src, smem_tr_dst); fence_view_async_shared(); // Sync transpose named_barrier_wait(BMM_DQ_DONE_{p_id}, THREADS_PER_GROUP_{r_id} * 2); // Sync warpgroups to avoid RAW hazard if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_q); smem_bar_arrive(local_smem_bar_mma_do); smem_bar_arrive(local_smem_bar_mma_stats); }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ // Pack into 2x fp16s for STSM.T; needed by dQ GEMM r32 reg_dp_fp16[4]; fort::fp32x2_to_fp16x2(®_dp_fp16[0], ®_{in_guid}_0[m][n][0]); // x: (0, 0), (0, 1) fort::fp32x2_to_fp16x2(®_dp_fp16[1], ®_{in_guid}_0[m][n][4]); // z: (0, 8), (0, 9) fort::fp32x2_to_fp16x2(®_dp_fp16[2], ®_{in_guid}_0[m][n][2]); // y: (8, 0), (8, 1) fort::fp32x2_to_fp16x2(®_dp_fp16[3], ®_{in_guid}_0[m][n][6]); // w: (8, 8), (8, 9) // [n = TILE_N_{p_id} / 16, 16, m = TILE_M_{p_id} / 128B, local_gid = 2, 128B] constexpr int STSMT_DP_FP16_ROWS = 32 / 2; stsmt_x4(stsmt_dp_fp16_base + m * 128 + n * STSMT_DP_FP16_ROWS * TILE_M_{p_id} * 2 * BYTES_PER_FP16_{p_id}, reg_dp_fp16); }} }} {{ uint32_t epi_smem = smem_{dv_or_dk}_{p_id} + (local_gid * 4 + local_wid) * BYTES_PER_WARP_DK_DV; const int swizzled_row = (tiw % 16); const int swizzled_col = (tiw / 16); uint32_t stsm_base[STSM_PER_TILE_DK_DV]; #pragma unroll for (int n = 0; n < STSM_PER_TILE_DK_DV; ++n) {{ stsm_base[n] = epi_smem + ((swizzled_row % 8) ^ (n * 2 + swizzled_col)) * BYTES_PER_BANK_{p_id} + swizzled_row * TILE_N_DK_DV * BYTES_PER_ELEMENT_{p_id}; }} if (!fort::smem_bar_peek(smem_bar_{dv_or_dk}_tma, smem_bar_phase_dkv)) {{ fort::smem_bar_wait(smem_bar_{dv_or_dk}_tma, smem_bar_phase_dkv); }} // Calculate amax #pragma unroll for (int m = 0; m (reg_{p_id}_{port}[m][n][i + 0]); float& tmp1 = reinterpret_cast(reg_{p_id}_{port}[m][n][i + 1]); tmp0 *= {deq_scale}; tmp1 *= {deq_scale}; {amax_dv_dk}_{p_id} = fmha::max3Pos_({amax_dv_dk}_{p_id}, fabsf(tmp0), fabsf(tmp1)); tmp0 *= {q_scale}; tmp1 *= {q_scale}; }} }} }} #pragma unroll for (int m = 0; m < 1; ++m) {{ #pragma unroll for (int s = 0; s < TMASTG_PER_ROW_DK_DV; ++s) {{ #pragma unroll for (int n = 0; n < STSM_PER_TILE_DK_DV; ++n) {{ uint32_t tmp[4]; uint32_t stg0[4]; uint32_t stg1[4]; uint32_t stg2[4]; uint32_t stg3[4]; stg0[0] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][0]; stg0[1] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][4]; stg0[2] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][1]; stg0[3] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][5]; stg1[0] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][2]; stg1[1] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][6]; stg1[2] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][3]; stg1[3] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV][7]; stg2[0] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][0]; stg2[1] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][4]; stg2[2] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][1]; stg2[3] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][5]; stg3[0] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][2]; stg3[1] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][6]; stg3[2] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][3]; stg3[3] = reg_{p_id}_{port}[m][n * REG_BLOCKS_N_PER_STSM_TILE_DK_DV + 1][7]; {data_cast_code}(&tmp[0], stg0); {data_cast_code}(&tmp[1], stg1); {data_cast_code}(&tmp[2], stg2); {data_cast_code}(&tmp[3], stg3); stsm_x4(stsm_base[n] + s * TILE_N_DK_DV * 16 * BYTES_PER_ELEMENT_{p_id} + m * GMMA_TILE_M_{p_id} * TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}, tmp); }} }} }} fence_view_async_shared(); named_barrier_wait(TMASTG_DV_DONE_{p_id}, 2 * THREADS_PER_GROUP_{r_id}); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(smem_bar_{dv_or_dk}_mma); }} }} static constexpr int TILE_M_DK_DV = 16; static constexpr int TILE_N_DK_DV = 32; // 128B requires TILE_K_{p_id} >= 128 static constexpr int STSM_TILE_N_DK_DV = 32; // STSMx4 for FP8, need to consume 16 * 32 blocks static constexpr int STSM_PER_TILE_DK_DV = TILE_N_DK_DV / STSM_TILE_N_DK_DV; static constexpr int REG_BLOCKS_N_PER_STSM_TILE_DK_DV = STSM_TILE_N_DK_DV / 16; static constexpr int TMASTG_PER_ROW_DK_DV = TILE_K_{p_id} / TILE_N_DK_DV; static constexpr int BYTES_PER_WARP_DK_DV = 16 * TILE_K_{p_id}; static constexpr int O_REGS_N_DK_DV = TILE_K_{p_id} / 16; {{ const int swizzled_col = (tiw % 4); const int swizzled_row = (tiw / 4); uint32_t epi_smem = smem_dv_{p_id} + local_gid * TILE_M_{p_id} * 128 + local_wid * 16 * 128 + swizzled_row * 128 + (swizzled_col ^ swizzled_row) * BYTES_PER_BANK_{p_id}; if (!fort::smem_bar_peek(smem_bar_dk_tma, smem_bar_phase_dkv)) {{ fort::smem_bar_wait(smem_bar_dk_tma, smem_bar_phase_dkv); }} smem_bar_phase_dkv ^= 1; #pragma unroll for (int m = 0; m < 1; ++m) {{ #pragma unroll for (int n = 0; n < O_REGS_N_DK_DV; ++n) {{ uint32_t stg0[4]; uint32_t stg1[4]; stg0[0] = reg_{p_id}_0[m][n][0]; stg0[1] = reg_{p_id}_0[m][n][4]; stg0[2] = reg_{p_id}_0[m][n][1]; stg0[3] = reg_{p_id}_0[m][n][5]; stg1[0] = reg_{p_id}_0[m][n][2]; stg1[1] = reg_{p_id}_0[m][n][6]; stg1[2] = reg_{p_id}_0[m][n][3]; stg1[3] = reg_{p_id}_0[m][n][7]; sts_128(epi_smem + (n / 2) * TILE_M_{p_id} * 2 * 128 + 0 * 8 * 128, stg0); sts_128(epi_smem + (n / 2) * TILE_M_{p_id} * 2 * 128 + 1 * 8 * 128, stg1); epi_smem ^= BYTES_PER_BANK_{p_id} * 4; }} }} fence_view_async_shared(); named_barrier_wait(TMASTG_DV_DONE_{p_id}, 2 * THREADS_PER_GROUP_{r_id}); if (local_gid == 0 && local_wid == 0) {{{stg_dv_code} }} tmastg_arrive(); tmastg_wait(); }} named_barrier_wait(TMASTG_DV_DONE_{p_id}, 2 * THREADS_PER_GROUP_{r_id}); {{ const int swizzled_col = (tiw % 4); const int swizzled_row = (tiw / 4); uint32_t epi_smem = smem_dk_{p_id} + local_gid * TILE_M_{p_id} * 128 + local_wid * 16 * 128 + swizzled_row * 128 + (swizzled_col ^ swizzled_row) * BYTES_PER_BANK_{p_id}; #pragma unroll for (int m = 0; m < 1; ++m) {{ #pragma unroll for (int n = 0; n < O_REGS_N_DK_DV; ++n) {{ uint32_t stg0[4]; uint32_t stg1[4]; stg0[0] = reg_{p_id}_1[m][n][0]; stg0[1] = reg_{p_id}_1[m][n][4]; stg0[2] = reg_{p_id}_1[m][n][1]; stg0[3] = reg_{p_id}_1[m][n][5]; stg1[0] = reg_{p_id}_1[m][n][2]; stg1[1] = reg_{p_id}_1[m][n][6]; stg1[2] = reg_{p_id}_1[m][n][3]; stg1[3] = reg_{p_id}_1[m][n][7]; sts_128(epi_smem + (n / 2) * TILE_M_{p_id} * 2 * 128 + 0 * 8 * 128, stg0); sts_128(epi_smem + (n / 2) * TILE_M_{p_id} * 2 * 128 + 1 * 8 * 128, stg1); epi_smem ^= BYTES_PER_BANK_{p_id} * 4; }} }} fence_view_async_shared(); named_barrier_wait(TMASTG_DV_DONE_{p_id}, 2 * THREADS_PER_GROUP_{r_id}); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(smem_bar_dk_mma); }} }} static constexpr int TILE_M_DK_DV = 16; static constexpr int TILE_N_DK_DV = 128; // 128B requires TILE_K_{p_id} >= 128 static constexpr int STSM_TILE_N_DK_DV = 32; // STSMx4 for FP8, need to consume 16 * 32 blocks static constexpr int STSM_PER_TILE_DK_DV = TILE_N_DK_DV / STSM_TILE_N_DK_DV; static constexpr int REG_BLOCKS_N_PER_STSM_TILE_DK_DV = STSM_TILE_N_DK_DV / 16; static constexpr int TMASTG_PER_ROW_DK_DV = TILE_K_{p_id} / TILE_N_DK_DV; static constexpr int BYTES_PER_WARP_DK_DV = 16 * TILE_K_{p_id}; smem_bar_phase_dkv ^= 1; if (ldgsts_smem_buffer_offset_{guid} >= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{guid}) {{ ldgsts_smem_buffer_offset_{guid} -= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{guid}; }} else {{ ldgsts_smem_buffer_offset_{guid} += BYTES_PER_SMEM_{guid}; }} if (ldsm_smem_buffer_offset_{guid} >= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{f_id}) {{ ldsm_smem_buffer_offset_{guid} -= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{f_id}; }} else {{ ldsm_smem_buffer_offset_{guid} += BYTES_PER_SMEM_{f_id}; }} ++acc_count_{guid}; if (acc_count_{guid} % QMMA_2xACC_COUNT_{p_id} == 0) {{{update_acc} }} if (acc_count_{guid} % QMMA_2xACC_COUNT_{p_id} != 0) {{{update_acc} }} if (loop + 1 == mainloop_steps) {{ int tile_offset = loop * CTA_TILE_K_{p_id} + ki_next * 32 / BYTES_PER_ELEMENT_{p_id} + col_{guid}; #pragma unroll for (int j = 0; j < 2; ++j) {{ if (tile_offset + j * CORE_MATRIX_A_COLS_{guid} >= implicit_gemm_K) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ reg_{incoming_a_id}_{incoming_a_port}[ki&1][m][2 * j] = 0; reg_{incoming_a_id}_{incoming_a_port}[ki&1][m][2 * j + 1] = 0; }} }} }} }} uint64_t oob_marker = 0UL; #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ auto ref_ptr = reinterpret_cast(®_{nanset_lds_a_id}_{nanset_lds_a_port}[ki&1][m]); #pragma unroll for (int i = 0; i < NUM_GMMA_A_ELEMENT_{p_id}; ++i, ++ref_ptr) {{ if (*ref_ptr == SPECIAL_NAN_{p_id}) {{ oob_marker |= (1UL << (m * NUM_GMMA_A_ELEMENT_{p_id} + i)); }} }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ auto dst_ptr = reinterpret_cast(®_{incoming_a_id}_{incoming_a_port}[ki&1][m]); #pragma unroll for (int i = 0; i < NUM_GMMA_A_ELEMENT_{p_id}; ++i, ++dst_ptr) {{ if (oob_marker & (1UL << (m * NUM_GMMA_A_ELEMENT_{p_id} + i))) {{ *dst_ptr = 0; }} }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < NUM_GMMA_A_ELEMENT_{p_id}; ++i) {{ fp32_to_tf32(®_{incoming_a_id}_{incoming_a_port}[ki&1][m][i], ®_{incoming_a_id}_{incoming_a_port}[ki&1][m][i]); }} }} #pragma unroll for (int m = 0; m < XMMAS_N_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < NUM_GMMA_B_ELEMENT_{p_id}; ++i) {{ fp32_to_tf32(®_{incoming_b_id}_{incoming_b_port}[ki&1][m][i], ®_{incoming_b_id}_{incoming_b_port}[ki&1][m][i]); }} }} #pragma unroll for (int i = 0; i < REGS_PER_OOB_MASK_{guid}; ++i) {{ gmem_predicate_{guid}[i] &= oob_mask_{guid}[i]; }} #pragma unroll for (int i = 0; i < REGS_PER_OOB_MASK_{guid}; ++i) {{ gmem_predicate_{guid}[i] = 0; }} gmem_predicate_{guid} &= oob_mask_{guid}; gmem_predicate_{guid} = 0; ptr_{guid} += CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; ptr_{guid} += CTA_TILE_K_{p_id} * {tensor_desc}.leading_stride * BYTES_PER_ELEMENT_{guid};{move_gmem_ptrs} if (loop + 1 >= mainloop_steps - 1) {{ if (loop + 1 > mainloop_steps - 1) {{{oob_predicates} }} else {{{last_iter_predicates} }} }}{move_gmem_ptrs} if (loop + 1 >= mainloop_steps - STAGES_{p_id}) {{ if (loop + 1 > mainloop_steps - STAGES_{p_id}) {{{oob_predicates} }} else {{{last_iter_predicates} }} }} #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ gmem_predicate_{guid}[i][j] = 0; }} }} gmem_predicate_{guid} &= oob_mask_{guid}; gmem_predicate_{guid} = 0; uint32_t coord_c, filter_t, filter_r, filter_s, trs_tmp, rs_tmp; fastDivMod(convDesc.trs, filter_cnt, coord_c, trs_tmp); fastDivMod(convDesc.rs, trs_tmp, filter_t, rs_tmp); fastDivMod(convDesc.s, rs_tmp, filter_r, filter_s); uint32_t ldg_mask = (1u << (filter_t + r_plus_s)) | (1u << (filter_r + convDesc.S)) | (1u << filter_s); filter_cnt++; uint32_t filter_mask = (1u << (filter_t + r_plus_s)) | (1u << (filter_r + convDesc.S)) | (1u << filter_s); if (coord_c == tiles_c - 1) {{{last_iter_predicates} }} else if (coord_c > tiles_c - 1) {{{oob_predicates} }} const uint32_t ldg_c = 0, ldg_t = 0, ldg_r = 0, ldg_s = 0; const uint32_t ldg_mask = (1u << r_plus_s) | (1u << convDesc.S) | 1u;reinterpret_cast<{compute_data_type}&>(reg_{mma_id}_0[m][n][i + j]) += reinterpret_cast(tmp[j]);reg_{mma_id}_0[m][n][i + j] = hadd2(reg_{mma_id}_0[m][n][i + j], tmp[j]); {{ int64_t split_k_buffer_cta_id = ((coord_b * gridDim.x + (coord_m / CTA_TILE_M_{p_id})) * gridDim.y + (coord_n / CTA_TILE_N_{p_id})) * SPLIT_K_BUFFERS_{p_id}; #pragma unroll for (int reduce_stride = SPLIT_K_BUFFERS_{p_id}, expected_semaphore = 1; reduce_stride > 0; reduce_stride >>= 1, expected_semaphore++) {{ bool is_sending_cta = (split_k_id < (SPLIT_K_SLICES_{p_id} - reduce_stride)); bool is_receiving_cta = (reduce_stride == SPLIT_K_BUFFERS_{p_id}) ? (split_k_id >= SPLIT_K_BUFFERS_{p_id}) : !is_sending_cta; int64_t split_k_buffer_slice_id = (split_k_id + 2 * SPLIT_K_BUFFERS_{p_id} - SPLIT_K_SLICES_{p_id}) % reduce_stride; int64_t split_k_buffer_id = split_k_buffer_cta_id + split_k_buffer_slice_id; auto split_k_semaphore = {semaphore_workspace} + split_k_buffer_id; auto split_k_partial_result = {results_workspace} + split_k_buffer_id * CTA_TILE_M_{p_id} * CTA_TILE_N_{p_id} * BYTES_PER_ACC_{p_id} / BYTES_PER_REGISTER_{r_id} + wid * THREADS_PER_WARP_{r_id} * XMMAS_M_{p_id} * XMMAS_N_{p_id} * ACC_COUNT_{p_id} + tiw * 4; if (is_sending_cta) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < ACC_COUNT_{p_id}; i += 4) {{ stg_128(split_k_partial_result + ((m * XMMAS_N_{p_id} + n) * ACC_COUNT_{p_id} + i) * THREADS_PER_WARP_{r_id}, ®_{mma_id}_0[m][n][i]); }} }} }} __syncthreads(); if (tid == 0) {{ __threadfence(); atomicAdd(split_k_semaphore, 1); }} break; }} else if (is_receiving_cta) {{ if (tid == 0) {{ int semaphore = split_k_buffer_slice_id < (2 * SPLIT_K_BUFFERS_{p_id} - SPLIT_K_SLICES_{p_id}) ? (expected_semaphore - 1) : expected_semaphore; while (true) {{ int32_t spin; asm volatile ("ld.global.acquire.gpu.b32 %0, [%1];" : "=r"(spin) : "l"(split_k_semaphore)); if (spin == semaphore) {{ break; }} }} __threadfence(); }} __syncthreads(); #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < ACC_COUNT_{p_id}; i += 4) {{ r32 tmp[4]; ldg_128(tmp, split_k_partial_result + ((m * XMMAS_N_{p_id} + n) * ACC_COUNT_{p_id} + i) * THREADS_PER_WARP_{r_id}); #pragma unroll for (int j = 0; j < 4; ++j) {{ {local_reduce} }} }} }} }} }} }} }} {{ int st_vector[4]; // ti, ldg_mask, offset_a, offset_b uint32_t ti, ri, si, ci, rsc_tmp, sc_tmp; if (col_index_{guid} < trsc) {{ fastDivMod(convDesc.rsc, col_index_{guid}, ti, rsc_tmp); fastDivMod(convDesc.sc, rsc_tmp, ri, sc_tmp); fastDivMod(convDesc.c, sc_tmp, si, ci); st_vector[0] = ti; st_vector[1] = (1u << (ti + r_plus_s)) | (1u << (ri + convDesc.S)) | (1u << si); st_vector[2] = coord_b * convDesc.C + ci + ti * convDesc.dilation_D * {ldg_a_tensor_desc}.strides[2] + ri * convDesc.dilation_H * {ldg_a_tensor_desc}.strides[3] + si * convDesc.dilation_W * {ldg_a_tensor_desc}.strides[4]; st_vector[3] = ci + ti * {ldg_b_tensor_desc}.strides[2] + ri * {ldg_b_tensor_desc}.strides[3] + si * {ldg_b_tensor_desc}.strides[4]; }} else {{ st_vector[0] = -1; }} __syncthreads(); sts_128(smem_trsc_st_{guid}, reinterpret_cast(st_vector)); __syncthreads(); col_index_{guid} += CTA_TILE_K_{p_id}; }} int ld_vector[XMMAS_K_{p_id}][2][BYTES_PER_VECTOR_{ldg_mma_id} / BYTES_PER_ACCESS_{ldg_mma_id}][4]; // ti, ldg_mask, offset_a, offset_b #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int j = 0; j < 2; ++j) {{ #pragma unroll for (int l = 0; l < BYTES_PER_VECTOR_{ldg_mma_id}; l += BYTES_PER_ACCESS_{ldg_mma_id}) {{ int col_offset = 4 * sizeof(int) * ((tiw % 4) * ELEMS_PER_VECTOR_{p_id} + k * UNIT_MATRIX_A_COLS_{guid} + j * CORE_MATRIX_A_COLS_{guid} + l / BYTES_PER_ELEMENT_{ldg_mma_id}); lds_128(reinterpret_cast(ld_vector[k][j][l / BYTES_PER_ACCESS_{ldg_mma_id}]), smem_trsc_ld_{guid} + col_offset); }} }} }} int ld_vector[XMMAS_K_{p_id}][4]; // ti, ldg_mask, offset_a, offset_b #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ int col_offset = 4 * sizeof(int) * (k * UNIT_MATRIX_A_COLS_{guid} + (tiw % 4) * 2 * ELEMS_PER_VECTOR_{p_id}); lds_128(reinterpret_cast(ld_vector[k]), smem_trsc_ld_{guid} + col_offset); }} int ld_vector[XMMAS_K_{p_id} / 2][4]; // ti, ldg_mask, offset_a, offset_b #pragma unroll for (int k = 0; k < XMMAS_K_{p_id} / 2; ++k) {{ int col_offset = 4 * sizeof(int) * (2 * k * UNIT_MATRIX_A_COLS_{guid} + (tiw % 4) * 4 * ELEMS_PER_VECTOR_{p_id}); lds_128(reinterpret_cast(ld_vector[k]), smem_trsc_ld_{guid} + col_offset); }}{wo_smem_st_trsc} // Mainloop #pragma unroll 1 for (int loop = 0; loop < mainloop_steps; ++loop) {{ asm volatile (".pragma \"nvopt 0\";\n");{wo_smem_ld_trsc}{global_load_code} #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{{mma_code}{iterative_update_acc} }} if (loop == mainloop_steps - 1) break;{wo_smem_st_trsc} }}{final_update_acc} // Prefetch loop #pragma unroll for (int loop = 0; loop < STAGES_{p_id} - 1; ++loop) {{{gemm_coord_calculation}{fprop_predicates_and_offsets}{ldgsts_code_a}{ldgsts_code_b} ldgdepbar(); // Move to next smem buffer{ldgsts_buffer_update_code}{matmul_predicates_and_offsets_prefetch_code} }} depbar(); __syncthreads(); {{ const int loop = 0, ki = 0, ki_next = 0, ki_accum = 0;{global_load_code}{ldsm_code}{pw_mainloop_fusion_a}{pw_mainloop_fusion_b} }} // Mainloop #pragma unroll 1 for (int loop = 0; loop < mainloop_steps; ++loop) {{{gemm_coord_calculation}{fprop_predicates_and_offsets} #pragma unroll for (int ki_next = 1; ki_next <= XMMAS_K_{p_id}; ++ki_next) {{ const int ki = (ki_next == XMMAS_K_{p_id}) ? 0 : ki_next; const int ki_accum = loop * XMMAS_K_{p_id} + ki_next; ifence(); if (ki_next == XMMAS_K_{p_id}) {{ depbar(); __syncthreads(); // Move to next smem buffer for ldgsts{ldgsts_buffer_update_code} // Move to next smem buffer for ldsm{lds_buffer_update_code} }}{global_load_code}{ldsm_code}{pw_mainloop_fusion_a}{pw_mainloop_fusion_b} ifence(); if (ki_next == 1) {{{ldgsts_code_a} ifence();{ldgsts_code_b} ifence(); ldgdepbar(); }} if (ki_next - 1 == XMMAS_K_{p_id} / 2) {{ warp_switch(); }}{mma_code}{iterative_update_acc} }}{matmul_predicates_and_offsets_mainloop_code} }}{final_update_acc} depbar<0>();matmul_predicates_and_offsets_mainloop_codematmul_predicates_and_offsets_prefetch_code{mma_loop_decls}{ldgsts_decls_a}{ldgsts_decls_b}{global_load_decls}{ldsm_decls}{pw_a_decls}{pw_b_decls}{mma_decls}{pw_fusion_a}{pw_fusion_b} amax_s_{p_id} = fmaxf(amax_s_{p_id}, beta_{softmax_guid}[m]); amax_o_{p_id} = fmaxf(amax_o_{p_id}, fabsf(reinterpret_cast(reg_{p_id}_0[m][n][i]))); tile_id = num_tiles_{p_id} - tile_id - 1; fastDivMod(tiles_bh_div_{p_id}, tile_id, q_row_coord, rows_temp); fastDivMod(tiles_h_div_{p_id}, rows_temp, batch_coord_{p_id}, head_coord_{p_id}); fastDivMod(tiles_hr_div_{p_id}, tile_id, batch_coord_{p_id}, rows_temp); fastDivMod(tiles_r_div_{p_id}, rows_temp, head_coord_{p_id}, q_row_coord); uint32_t smem_{op_id} = smem_{shared_id} + SMEM_BUFFER_OFFSET_{op_id}; uint32_t cga_id_x = coord_m / CGA_M_{p_id}; uint32_t cga_id_y = coord_n / CGA_N_{p_id}; swizzle(cga_id_x, cga_id_y, log2_group_cols, CGAs_x, CGAs_y); coord_m = cga_id_x * CGA_M_{p_id} + cta_id_in_cga.x; coord_n = cga_id_y * CGA_N_{p_id} + cta_id_in_cga.y; uint32_t coord_nopq = 0; smem_bar_wait(smem_tile_coord_full_bar + sched_full_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_full_mbar_state.phase()); r32 tile_id_and_coord[4]; lds_128(tile_id_and_coord, smem_tile_coord + sched_full_mbar_state.index() * 16); fence_view_async_shared(); __syncwarp(); if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ smem_bar_arrive_dsmem_V2(smem_tile_coord_empty_bar + sched_full_mbar_state.index() * BYTES_PER_MBAR_{p_id}, remote_cta_id, sched_buffer_empty_notify_thread); }} else {{ if (elect_one) {{ smem_bar_arrive(smem_tile_coord_empty_bar + sched_full_mbar_state.index() * BYTES_PER_MBAR_{p_id}); }} }} coord_{m} = tile_id_and_coord[0] + cta_id_in_cga.x; coord_{n} = (tile_id_and_coord[1] & 0xFFFFu) + cta_id_in_cga.y; coord_b = tile_id_and_coord[1] >> 16; is_tile_valid = tile_id_and_coord[2] & 1; coord_m *= CTA_TILE_M_{p_id}; coord_n *= CTA_TILE_N_{p_id}; coord_k = coord_b * (int32_t)convDesc.K + coord_k * CTA_TILE_N_{p_id} + (cta_id_in_cga.x * CTA_TILE_N_{p_id} / CGA_M_{p_id}); int32_t coord_n, coord_o, coord_p, coord_q; uint32_t opq, pq; fastDivMod(convDesc.opq, coord_nopq * CTA_TILE_M_{p_id} + (cta_id_in_cga.y * CTA_TILE_M_{p_id} / CGA_N_{p_id}), reinterpret_cast(coord_n), opq); fastDivMod(convDesc.pq, opq, reinterpret_cast(coord_o), pq); fastDivMod(convDesc.q, pq, reinterpret_cast(coord_p), reinterpret_cast(coord_q)); coord_o = coord_o * (int32_t)convDesc.stride_D - (int32_t)convDesc.padLower_D; coord_p = coord_p * (int32_t)convDesc.stride_H - (int32_t)convDesc.padLower_H; coord_q = coord_q * (int32_t)convDesc.stride_W - (int32_t)convDesc.padLower_W; coord_c = coord_b * (int32_t)convDesc.C; coord_k = coord_k * CTA_TILE_N_{p_id}; int32_t coord_n, coord_o, coord_p, coord_q; uint32_t opq, pq; fastDivMod(convDesc.opq, coord_nopq * CTA_TILE_M_{p_id} + (cta_id_in_cga.y * CTA_TILE_M_{p_id} / CGA_N_{p_id}), reinterpret_cast(coord_n), opq); fastDivMod(convDesc.pq, opq, reinterpret_cast(coord_o), pq); fastDivMod(convDesc.q, pq, reinterpret_cast(coord_p), reinterpret_cast(coord_q)); coord_o = coord_o + (int32_t)convDesc.padLower_D - ((int32_t)convDesc.T - 1) * (int32_t)convDesc.dilation_D; coord_p = coord_p + (int32_t)convDesc.padLower_H - ((int32_t)convDesc.R - 1) * (int32_t)convDesc.dilation_H; coord_q = coord_q + (int32_t)convDesc.padLower_W - ((int32_t)convDesc.S - 1) * (int32_t)convDesc.dilation_W; coord_c = coord_b * (int32_t)convDesc.K; coord_k = coord_k * CTA_TILE_M_{p_id} + coord_b * (int32_t)convDesc.K; int32_t tile_c, filter_t, filter_r, filter_s; uint32_t rsc, sc; fastDivMod(convDesc.rsc, coord_trsc, reinterpret_cast(filter_t), rsc); fastDivMod(convDesc.sc, rsc, reinterpret_cast(filter_r), sc); fastDivMod(convDesc.c, sc, reinterpret_cast(filter_s), reinterpret_cast(tile_c)); int32_t coord_c = coord_b * (int32_t)convDesc.C + tile_c * CTA_TILE_N_{p_id} + 0; int32_t pad_d = filter_t * (int32_t)convDesc.dilation_D - (int32_t)convDesc.padLower_D; int32_t pad_h = filter_r * (int32_t)convDesc.dilation_H - (int32_t)convDesc.padLower_H; int32_t pad_w = filter_s * (int32_t)convDesc.dilation_W - (int32_t)convDesc.padLower_W;tmaldg_multicast_smem_offset_btmaldg_multicast_smem_offset_a int coord_{m} = blockIdx.x; int coord_{n} = blockIdx.y; int coord_b = blockIdx.z; int is_tile_valid = 1;{cga_swizzle_code}{smem_buffer_offset_code} if (is_scheduler_warp) {{ reg_dealloc<40>(); PipelineState sched_empty_mbar_state(0, 1); // index, state PipelineState sched_full_mbar_state(0, 0); // index, state #pragma unroll 1 while (is_tile_valid) {{ smem_bar_wait(smem_tile_coord_empty_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_empty_mbar_state.phase()); smem_bar_set_transaction_count(smem_tile_coord_full_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, 16, elect_one); if (cta_id_in_cga.x == 0 && cta_id_in_cga.y == 0 && elect_one) {{ get_next_block_id( smem_tile_coord + sched_empty_mbar_state.index() * 16, smem_tile_coord_full_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id} ); }}{extract_grid_coord_code}{cga_swizzle_code} ++sched_empty_mbar_state; ++sched_full_mbar_state; }} if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ #pragma unroll for (int i = 0; i < SCHEDULER_PIPELINE_STAGES_{p_id}; ++i) {{ if (!smem_bar_peek(smem_tile_coord_empty_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_empty_mbar_state.phase())) {{ smem_bar_wait(smem_tile_coord_empty_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_empty_mbar_state.phase()); }} ++sched_empty_mbar_state; }} }} }} else if (is_dma_a_warp) {{ reg_dealloc<40>(); uint16_t multicast_mask_a = 0; if (CGA_N_{p_id} > 1) {{ #pragma unroll for (uint32_t i = 0; i < CGA_N_{p_id}; i++) {{ multicast_mask_a |= 1u << (CGA_M_{p_id} * i); }} multicast_mask_a <<= cta_id_in_cga.x; }}{tmaldg_multicast_smem_offset_a} PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState smem_mbar_state(0, 1); // index, state #pragma unroll 1 while (is_tile_valid) {{{final_coord_code} #pragma unroll 1 for (int mainloop_k = 0; mainloop_k < mainloop_steps; mainloop_k++) {{ const uint32_t coord_k = mainloop_k * CTA_TILE_K_{p_id};{tmaldg_a_decl}{tmaldg_a_scale_decl} uint32_t local_bar_{guid} = smem_ab_full_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; uint32_t smem_ab_empty_local = smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; if (!smem_bar_peek(smem_ab_empty_local, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_empty_local, smem_mbar_state.phase()); }} smem_bar_set_transaction_count(local_bar_{guid}, TRANSACTION_BYTES_{guid}, elect_one);{tmaldg_a_code}{tmaldg_a_scale_code} ++smem_mbar_state; }} // end of mainloop{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; }} if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ #pragma unroll for (int i = 0; i < STAGES_{p_id}; ++i) {{ if (!smem_bar_peek(smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}, smem_mbar_state.phase()); }} ++smem_mbar_state; }} }} }} else if (is_dma_b_warp) {{ reg_dealloc<40>(); uint16_t multicast_mask_b = 0; if (CGA_M_{p_id} > 1) {{ #pragma unroll for (uint32_t i = 0; i < CGA_M_{p_id}; i++) {{ multicast_mask_b |= 1u << i; }} multicast_mask_b <<= (cta_id_in_cga.y * CGA_M_{p_id}); }}{tmaldg_multicast_smem_offset_b} PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState smem_mbar_state(0, 1); // index, state #pragma unroll 1 while (is_tile_valid) {{{final_coord_code} #pragma unroll 1 for (int mainloop_k = 0; mainloop_k < mainloop_steps; mainloop_k++) {{ const uint32_t coord_k = mainloop_k * CTA_TILE_K_{p_id};{tmaldg_b_decl}{tmaldg_b_scale_decl} uint32_t local_bar_{guid} = smem_ab_full_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; uint32_t smem_ab_empty_local = smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; if (!smem_bar_peek(smem_ab_empty_local, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_empty_local, smem_mbar_state.phase()); }}{tmaldg_b_code}{tmaldg_b_scale_code} ++smem_mbar_state; }} // end of mainloop{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; }} }} else if (is_unused_warp) {{ reg_dealloc<40>(); }} else if (is_math_warp) {{ reg_alloc<232>(); PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState smem_mbar_state(0, 0); // index, state const int warp_group_id = wid / WARPS_PER_GROUP_0 - 1; #pragma unroll 1 while (is_tile_valid) {{{final_coord_code}{mainloop_lds_a_decl}{mainloop_lds_a_scale_decl}{mainloop_lds_b_decl}{mainloop_lds_b_scale_decl}{mma_decl} #pragma unroll 1 for (int mainloop_k = 0; mainloop_k < mainloop_steps; mainloop_k++) {{ uint32_t smem_ab_full_local = smem_ab_full_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; uint32_t smem_ab_empty_local = smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; #pragma unroll for (int ki = 0; ki < XMMAS_K_{p_id}; ++ki) {{ if (ki == 0) {{ if (!smem_bar_peek(smem_ab_full_local, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_full_local, smem_mbar_state.phase()); }} }}{mainloop_lds_a_code}{mainloop_lds_a_scale_code}{mainloop_lds_b_code}{mainloop_lds_b_scale_code} if (ki == XMMAS_K_{p_id} - 1) {{ if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ smem_bar_arrive_dsmem_V2(smem_ab_empty_local, remote_cta_id, buffer_empty_notify_thread); }} else {{ if (elect_one) {{ smem_bar_arrive(smem_ab_empty_local); }} }} ++smem_mbar_state; }} ifence();{mma_code} ifence(); }} }}{output_loop_code}{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; }} }} __syncthreads(); if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ cga_arrive(); cga_wait(); }} uint32_t tmem_local_offset_{guid} = base_tmem_addr_{p_id} + TmemAccPipelineStageCount * CTA_TILE_N_{p_id}; uint32_t tmem_local_{op_id} = tmem_local_offset_{guid} + smem_mbar_state.index() * NUM_BLOCKS_{M_or_N}_{guid} * NUM_BLOCKS_K_{guid} * REGISTERS_PER_BLOCK_{guid}; tmem_local_offset_{guid} += STAGES_{p_id} * NUM_BLOCKS_{M_or_N}_{guid} * NUM_BLOCKS_K_{guid} * REGISTERS_PER_BLOCK_{guid}; uint32_t smem_a = smem_{shared_id} + SMEM_BUFFER_OFFSET_A_{guid}; uint32_t smem_b = smem_{shared_id} + SMEM_BUFFER_OFFSET_B_{guid}; uint32_t smem_d = smem_{shared_id} + SMEM_BUFFER_OFFSET_D_{guid}; coord_k = coord_b * (int32_t)convDesc.K + coord_k * CTA_TILE_N_{p_id}; int32_t coord_n, coord_o, coord_p, coord_q; uint32_t opq, pq; fastDivMod(convDesc.opq, coord_nopq * CTA_TILE_M_{p_id} + (cta_id_in_cga.y * CTA_TILE_M_{p_id} / CGA_N_{p_id}), reinterpret_cast(coord_n), opq); fastDivMod(convDesc.pq, opq, reinterpret_cast(coord_o), pq); fastDivMod(convDesc.q, pq, reinterpret_cast(coord_p), reinterpret_cast(coord_q)); coord_o = coord_o * (int32_t)convDesc.stride_D - (int32_t)convDesc.padLower_D; coord_p = coord_p * (int32_t)convDesc.stride_H - (int32_t)convDesc.padLower_H; coord_q = coord_q * (int32_t)convDesc.stride_W - (int32_t)convDesc.padLower_W; coord_c = coord_b * (int32_t)convDesc.C; uint16_t multicast_mask_a = 0; uint16_t multicast_mask_b = 0; if (CGA_M_{p_id} / CTA_MMA_{p_id} > 1) {{ #pragma unroll for (uint32_t i = cta_id_in_cga.x % CTA_MMA_{p_id}; i < CGA_M_{p_id}; i += CTA_MMA_{p_id}) {{ multicast_mask_b |= 1u << i; }} multicast_mask_b <<= (cta_id_in_cga.y * CGA_M_{p_id}); }} if (CGA_N_{p_id} > 1) {{ #pragma unroll for (uint32_t i = 0; i < CGA_N_{p_id}; ++i) {{ multicast_mask_a |= 1u << (CGA_M_{p_id} * i); }} multicast_mask_a <<= cta_id_in_cga.x; }} uint16_t multicast_mask_b_scale = 0; if (CGA_M_{p_id} > 1) {{ #pragma unroll for (uint32_t i = 0; i < CGA_M_{p_id}; ++i) {{ multicast_mask_b_scale |= 1u << i; }} multicast_mask_b_scale <<= (cta_id_in_cga.y * CGA_M_{p_id}); }} smem_bar_set_transaction_count(local_bar_{guid}, TRANSACTION_BYTES_{guid}, elect_one); if (is_2cta_peer_cta) {{ smem_bar_set_transaction_count(local_bar_{guid}, TRANSACTION_BYTES_{guid}, elect_one); }} const int row_a_{guid} = coord_m * CTA_TILE_M_{p_id} + (tiw % THREADS_PER_ROW_A_{guid}) * ELEMS_PER_BANK_{p_id}; const int col_a_{guid} = (wid % WARPS_PER_GROUP_{r_id}) * ROWS_PER_WARP_A_{guid} + (tiw / THREADS_PER_ROW_A_{guid}); const int row_a_{guid} = coord_m * CTA_TILE_M_{p_id} + (wid % WARPS_PER_GROUP_{r_id}) * ROWS_PER_WARP_A_{guid} + (tiw / THREADS_PER_ROW_A_{guid}); const int col_a_{guid} = (tiw % THREADS_PER_ROW_A_{guid}) * ELEMS_PER_BANK_{p_id}; const int row_b_{guid} = (wid % WARPS_PER_GROUP_{r_id}) * ROWS_PER_WARP_B_{guid} + (tiw / THREADS_PER_ROW_B_{guid}); const int col_b_{guid} = coord_n * CTA_TILE_N_{p_id} + (cta_id_in_cga.x % CTA_MMA_{p_id}) * CTA_TILE_N_{p_id} / 2 + (tiw % THREADS_PER_ROW_B_{guid}) * ELEMS_PER_BANK_{p_id}; const int row_b_{guid} = (tiw % THREADS_PER_ROW_B_{guid}) * ELEMS_PER_BANK_{p_id}; const int col_b_{guid} = coord_n * CTA_TILE_N_{p_id} + (cta_id_in_cga.x % CTA_MMA_{p_id}) * CTA_TILE_N_{p_id} / 2 + (wid % WARPS_PER_GROUP_{r_id}) * ROWS_PER_WARP_B_{guid} + (tiw / THREADS_PER_ROW_B_{guid}); const int col_a_{guid} = (wid % WARPS_PER_GROUP_{r_id}) * ROWS_PER_WARP_A_{guid} + (tiw / THREADS_PER_ROW_A_{guid}); const int col_a_{guid} = (tiw % THREADS_PER_ROW_A_{guid}) * ELEMS_PER_BANK_{p_id}; int coord_k = coord_c + coord_b * (int32_t)convDesc.{C_or_K}; update_filter_position_{p_id}(coord_c, filter_t, filter_r, filter_s, convDesc.T, convDesc.R, convDesc.S); #pragma unroll for (int m = 0; m < LDS_PER_TILE_A_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < LDS_PER_ROW_A_{guid}; ++n) {{ if (mainloop_k * CTA_TILE_K_{p_id} + (wid % 4) * ROWS_PER_WARP_A_{guid} + m * ROWS_PER_LOAD_A_{guid} + (tiw / THREADS_PER_ROW_A_{guid}) >= implicit_gemm_K) {{ memset(reg_{incoming_a_id}_{incoming_a_port}[m][n], 0, sizeof(reg_{incoming_a_id}_{incoming_a_port}[m][n])); }} if (mainloop_k * CTA_TILE_K_{p_id} + n * THREADS_PER_WARP_{r_id} * ELEMS_PER_BANK_{p_id} + (tiw % THREADS_PER_ROW_A_{guid}) * ELEMS_PER_BANK_{p_id} >= implicit_gemm_K) {{ memset(reg_{incoming_a_id}_{incoming_a_port}[m][n], 0, sizeof(reg_{incoming_a_id}_{incoming_a_port}[m][n])); }} r32 oob_marker_a_{guid}[FORT_MAX(LDS_PER_TILE_A_{guid} * LDS_PER_ROW_A_{guid} * ELEMS_PER_BANK_{p_id} / 32, 1)]{{0}}; #pragma unroll for (int m = 0; m < LDS_PER_TILE_A_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < LDS_PER_ROW_A_{guid}; ++n) {{ auto ref_ptr = reinterpret_cast(®_{nanset_lds_a_id}_{nanset_lds_a_port}[m][n]); #pragma unroll for (int i = 0; i < BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{p_id}; ++i) {{ const int bit_index = (m * LDS_PER_ROW_A_{guid} + n) * BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{p_id} + i; if (ref_ptr[i] == SPECIAL_NAN_{p_id}) {{ oob_marker_a_{guid}[bit_index / 32] |= (1 << (bit_index % 32)); }} }} }} }} #pragma unroll for (int m = 0; m < LDS_PER_TILE_A_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < LDS_PER_ROW_A_{guid}; ++n) {{ auto dst_ptr = reinterpret_cast(®_{incoming_a_id}_{incoming_a_port}[m][n]); #pragma unroll for (int i = 0; i < BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{p_id}; ++i) {{ const int bit_index = (m * LDS_PER_ROW_A_{guid} + n) * BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{p_id} + i; if (oob_marker_a_{guid}[bit_index / 32] & (1 << (bit_index % 32))) {{ dst_ptr[i] = 0; }} }} }} }} if ((wid % 4) < WORKING_WARPS_A_{guid}) {{{mainloop_fusion_a_code} }} if ((wid % 4) < WORKING_WARPS_B_{guid}) {{{mainloop_fusion_b_code} }}mainloop_pw_k_independent_b_codemainloop_pw_k_independent_a_code else if (is_mainloop_warp) {{ reg_alloc<232>(); PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState smem_mbar_state(0, 0); // index, state #pragma unroll 1 while (is_tile_valid) {{{init_mainloop_coord_code}{mainloop_indices_decl}{mainloop_ldg_decl}{mainloop_lds_a_decl}{mainloop_lds_b_decl}{mainloop_pw_a_decl}{mainloop_pw_b_decl}{mainloop_sts_a_decl}{mainloop_sts_b_decl}{mainloop_pw_k_independent_a_code}{mainloop_pw_k_independent_b_code} #pragma unroll 1 for (int mainloop_k = 0; mainloop_k < mainloop_steps; mainloop_k++) {{{mainloop_step_offset_code} uint32_t smem_ab_full_local = smem_ab_full_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; if (!smem_bar_peek(smem_ab_full_local, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_full_local, smem_mbar_state.phase()); }}{mainloop_ldg_code}{mainloop_fusion_a_code}{mainloop_fusion_b_code} fence_view_async_shared(); __syncwarp(); if (elect_one) {{ if (CTA_MMA_{p_id} > 1) {{ smem_bar_arrive_dsmem_V2(smem_mainloop_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}, (cta_id_in_cga.y * CGA_M_{p_id} + cta_id_in_cga.x) & 0xFFFFFFFE, 1); }} else {{ smem_bar_arrive(smem_mainloop_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}); }} }} ++smem_mbar_state;{mainloop_update_offset_code} }}{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; }} }} const uint32_t coord_k = mainloop_k * CTA_TILE_K_{p_id};{smem_buffer_offset_code} int coord_{m} = blockIdx.x; int coord_{n} = blockIdx.y; int coord_b = blockIdx.z; int is_tile_valid = 1;{cga_swizzle_code} if (is_scheduler_warp) {{ reg_dealloc<24>(); PipelineState sched_empty_mbar_state(0, 1); // index, state PipelineState sched_full_mbar_state(0, 0); // index, state #pragma unroll 1 while (is_tile_valid) {{ smem_bar_wait(smem_tile_coord_empty_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_empty_mbar_state.phase()); smem_bar_set_transaction_count(smem_tile_coord_full_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, 16, elect_one); if (cta_id_in_cga.x == 0 && cta_id_in_cga.y == 0 && elect_one) {{ get_next_block_id( smem_tile_coord + sched_empty_mbar_state.index() * 16, smem_tile_coord_full_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id} ); }}{extract_grid_coord_code}{cga_swizzle_code} ++sched_empty_mbar_state; ++sched_full_mbar_state; }} if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ #pragma unroll for (int i = 0; i < SchedulerPipelineStageCount; ++i) {{ if (!smem_bar_peek(smem_tile_coord_empty_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_empty_mbar_state.phase())) {{ smem_bar_wait(smem_tile_coord_empty_bar + sched_empty_mbar_state.index() * BYTES_PER_MBAR_{p_id}, sched_empty_mbar_state.phase()); }} ++sched_empty_mbar_state; }} }} }} else if (is_tmaldg_warp) {{ reg_dealloc<24>();{tma_multicast_mask_code}{tmaldg_multicast_smem_offset} PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState smem_mbar_state(0, 1); // index, state #pragma unroll 1 while (is_tile_valid) {{{init_mainloop_coord_code}{final_coord_code} #pragma unroll 1 for (int mainloop_k = 0; mainloop_k < mainloop_steps; mainloop_k++) {{{tmaldg_a_decl}{tmaldg_a_scale_decl}{tmaldg_b_decl}{tmaldg_b_scale_decl} uint32_t local_bar_{guid} = smem_ab_full_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; uint32_t smem_ab_empty_local = smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; if (!smem_bar_peek(smem_ab_empty_local, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_empty_local, smem_mbar_state.phase()); }}{set_transaction_count_code}{tmaldg_a_code}{tmaldg_a_scale_code}{tmaldg_b_code}{tmaldg_b_scale_code} ++smem_mbar_state; }} // end of mainloop{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; }} if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ #pragma unroll for (int i = 0; i < STAGES_{p_id}; ++i) {{ if (!smem_bar_peek(smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}, smem_mbar_state.phase()); }} ++smem_mbar_state; }} }} }} else if (is_mma_warp && !is_2cta_peer_cta) {{ reg_dealloc<24>(); }} else if (is_mma_warp && is_2cta_peer_cta) {{ reg_dealloc<24>();{mma_decl}{lds_a_scale_decl}{lds_b_scale_decl} PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState smem_mbar_state(0, 0); // index, state PipelineState tmem_acc_mbar_state(0, 1); // index, state uint16_t umma_arrive_bar_multicast_mask = 0u; if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ if (elect_one) {{ #pragma unroll for (int i = 0; i < CGA_N_{p_id}; ++i) {{ umma_arrive_bar_multicast_mask |= 1u << (i * CGA_M_{p_id}); }} umma_arrive_bar_multicast_mask <<= cta_id_in_cga.x; if (CTA_MMA_{p_id} > 1) {{ umma_arrive_bar_multicast_mask |= (umma_arrive_bar_multicast_mask << 1); }} uint16_t multicast_mask_b = 0u; #pragma unroll for (int i = 0; i < CGA_M_{p_id}; ++i) {{ multicast_mask_b |= 1u << i; }} umma_arrive_bar_multicast_mask |= (multicast_mask_b << (cta_id_in_cga.y * CGA_M_{p_id})); }} }} #pragma unroll 1 while (is_tile_valid) {{ uint32_t tmem_C_local = base_tmem_addr_{p_id} + tmem_acc_mbar_state.index() * CTA_TILE_N_{p_id}; if (!smem_bar_peek(tmem_acc_empty_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, tmem_acc_mbar_state.phase())) {{ smem_bar_wait(tmem_acc_empty_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, tmem_acc_mbar_state.phase()); }} #pragma unroll 1 for (int mainloop_k = 0; mainloop_k < mainloop_steps; mainloop_k++) {{ uint32_t smem_ab_full_local = {mma_warp_consumer_bar} + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id}; uint32_t smem_ab_empty_local = smem_ab_empty_bar + smem_mbar_state.index() * BYTES_PER_MBAR_{p_id};{block_scale_tmem_decl} if (!smem_bar_peek(smem_ab_full_local, smem_mbar_state.phase())) {{ smem_bar_wait(smem_ab_full_local, smem_mbar_state.phase()); }}{lds_a_scale_code}{lds_b_scale_code}{mma_code} if (elect_one) {{ if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ if (CTA_MMA_{p_id} > 1) {{ umma_arrive_multicast_2cta(smem_ab_empty_local, umma_arrive_bar_multicast_mask); }} else {{ umma_arrive_multicast(smem_ab_empty_local, umma_arrive_bar_multicast_mask); }} }} else {{ umma_arrive(smem_ab_empty_local); }} }} ++smem_mbar_state; }} // end of mainloop if (elect_one) {{ if (CTA_MMA_{p_id} > 1) {{ umma_arrive_multicast_2cta(tmem_acc_full_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, 3 << (cta_id_in_cga.y * CGA_M_{p_id} + cta_id_in_cga.x)); // 3 represents binary mask 11 }} else {{ umma_arrive(tmem_acc_full_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}); }} }}{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; ++tmem_acc_mbar_state; }} if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ #pragma unroll for (int i = 0; i < TmemAccPipelineStageCount; ++i) {{ if (!smem_bar_peek(tmem_acc_empty_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, tmem_acc_mbar_state.phase())) {{ smem_bar_wait(tmem_acc_empty_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, tmem_acc_mbar_state.phase()); }} ++tmem_acc_mbar_state; }} }} }} else if (is_unused_warp) {{ reg_dealloc<24>(); }} else if (is_epilogue_warp) {{ reg_alloc<232>(); PipelineState sched_full_mbar_state(0, 0); // index, state PipelineState tmem_acc_mbar_state(0, 0); // index, state #pragma unroll 1 while (is_tile_valid) {{ uint32_t tmem_C_local = base_tmem_addr_{p_id} + tmem_acc_mbar_state.index() * CTA_TILE_N_{p_id}; {output_loop_code}{extract_grid_coord_code}{cga_swizzle_code} ++sched_full_mbar_state; ++tmem_acc_mbar_state; }} tmastg_arrive(); tmastg_wait(); }}{mainloop_warp_code} __syncthreads(); if (wid == 4) {{ tmem_free_1sm(NumColumnsPerTmem, base_tmem_addr_{p_id}); }} if (CGA_M_{p_id} * CGA_N_{p_id} > 1) {{ cga_arrive(); cga_wait(); }} int coord_k = mainloop_k * CTA_TILE_K_{p_id}; const long long int dp_row_offset_{p_id} = {padded_s_q} * BYTES_PER_ELEMENT_{p_id}; const long long int dp_head_offset_{p_id} = {padded_s_kv} * dp_row_offset_{p_id}; const long long int dp_batch_offset_{p_id} = attnDesc.q_h * dp_head_offset_{p_id}; char *loc_dp_{p_id} = reinterpret_cast({workspace}) + batch_coord_{p_id} * dp_batch_offset_{p_id} + head_coord_{p_id} * dp_head_offset_{p_id} + (p_row_{p_id} + wid * 16) * dp_row_offset_{p_id} + tiw * 8 * BYTES_PER_ELEMENT_{p_id}; #pragma unroll for (int m = 0; m < REGS_M_{bmm1_guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{bmm1_guid}; ++n) {{ stg_128(loc_dp_{p_id} + n * 16 * 16 * BYTES_PER_ELEMENT_{p_id} + p_col_{p_id} * 16 * BYTES_PER_ELEMENT_{p_id} + m * 64 * dp_row_offset_{p_id} * BYTES_PER_ELEMENT_{p_id}, reg_{bmm1_guid}_1[m][n]); }} }} __syncthreads(); memset(®_{bmm4_guid}_0[0][0][0], 0, sizeof(reg_{bmm4_guid}_0)); {{ const int ki = 0;{lds_K_t_code}{lds_dP_code} }} #pragma unroll for (int ki = 1; ki < BMM3_XMMAS_K_{p_id}; ++ki) {{{lds_K_t_code}{lds_dP_code}{matmul_3_code} }} {{ const int ki = BMM3_XMMAS_K_{p_id};{matmul_3_code} }} {stg_code} int2 qo_loop_bounds = compute_qo_loop_bounds(kv_step_{p_id} * TILE_M_{p_id}, TILE_M_{p_id}, TILE_N_{p_id}, actual_seqlen_kv_{p_id}, actual_seqlen_q_{p_id}, shift_right_bound, left_bound); int qo_loop_left_bound = qo_loop_bounds.x; int qo_loop_right_bound = qo_loop_bounds.y; {left_bound_code} {shift_right_bound_code} {qo_loop_bound_code} int qo_loop = qo_loop_left_bound - 1; int ldgsts_buf_qo_id = 0; int lds_buf_qo_id = 0; int p_col_next_{p_id} = 0; char *qo_ptr_{p_id} = (group_id == 0) ? reinterpret_cast({gmem_q_ptr_code}) : reinterpret_cast({gmem_dy_ptr_code}); char *kv_ptr_{p_id} = (group_id == 0) ? reinterpret_cast({gmem_k_ptr_code}) : reinterpret_cast({gmem_v_ptr_code}); int qo_row_offset_{p_id} = (group_id == 0) ? {desc_q_code}.strides[2] : {desc_dy_code}.strides[2]; int qo_batch_offset_{p_id} = (group_id == 0) ? {desc_q_code}.strides[0] : {desc_dy_code}.strides[0]; int qo_head_offset_{p_id} = (group_id == 0) ? {desc_q_code}.strides[1] : {desc_dy_code}.strides[1]; int qo_oob_m_{p_id} = (group_id == 0) ? {desc_q_code}.dims[2] : {desc_dy_code}.dims[2]; int qo_oob_n_{p_id} = (group_id == 0) ? {desc_q_code}.dims[3] : {desc_dy_code}.dims[3]; int kv_row_offset_{p_id} = (group_id == 0) ? {desc_k_code}.strides[3] : {desc_v_code}.strides[3]; int kv_batch_offset_{p_id} = (group_id == 0) ? {desc_k_code}.strides[0] : {desc_v_code}.strides[0]; int kv_head_offset_{p_id} = (group_id == 0) ? {desc_k_code}.strides[1] : {desc_v_code}.strides[1]; int kv_oob_m_{p_id} = (group_id == 0) ? {desc_k_code}.dims[3] : {desc_v_code}.dims[3]; int kv_oob_n_{p_id} = (group_id == 0) ? {desc_k_code}.dims[2] : {desc_v_code}.dims[2]; int kv_head_coord_{p_id} = (group_id == 0) ? head_coord_k_{p_id} : head_coord_v_{p_id}; char *stats_ptr_{p_id} = (group_id == 0) ? reinterpret_cast({lse_ptr_code}) : reinterpret_cast({sum_ptr_code}); {mma_loop_decls}{sts_or_stg_dP_decl} // mma_loop_op {guid} code r32 reg_{p_id}_0[REGS_M_{p_id}][REGS_K_{p_id}][WARP_REGS_{p_id}]; memset(®_{p_id}_0[0][0][0], 0, sizeof(reg_{p_id}_0)); {ldgsts_K_code} ldgdepbar(); {ldgsts_Q_code} ldgdepbar(); depbar<1>(); __syncthreads(); static constexpr int BMM1_XMMAS_K_{p_id} = TILE_K_{p_id} / 16; static constexpr int BMM2_XMMAS_K_{p_id} = TILE_N_{p_id} / 16; static constexpr int BMM3_XMMAS_K_{p_id} = TILE_M_{p_id} / 16; #pragma unroll for (int ki = 0; ki < BMM1_XMMAS_K_{p_id}; ++ki) {{{lds_K_code} }} #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int p_col_{p_id} = qo_loop * TILE_N_{p_id}; p_col_next_{p_id} = p_col_{p_id} + TILE_N_{p_id}; ldgsts_buf_qo_id ^= 1; depbar<1>(); __syncthreads(); {ldgsts_Q_code} ldgdepbar(); depbar<1>(); __syncthreads(); memset(®_{bmm1_guid}_0[0][0][0], 0, sizeof(reg_{bmm1_guid}_0)); {{ const int ki = 0;{lds_Q_t_code} }} #pragma unroll for (int ki = 1; ki < BMM1_XMMAS_K_{p_id}; ++ki) {{{lds_Q_t_code}{matmul_1_code} }} {{ const int ki = BMM1_XMMAS_K_{p_id};{matmul_1_code} }} {softmax_stats_ldg_code}{rng_code} if (group_id == 0) {{{pointwise_chain_0_code} }} // if (group_id == 0) __syncthreads(); if (group_id == 1) {{{lds_S_code}{pointwise_chain_1_code} }} // if (group_id == 1) // Convert softmax output into fp16 for the second gemm r32 reg_{bmm1_guid}_1[REGS_M_{bmm1_guid}][REGS_N_{bmm1_guid}][4]; #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ r32 tmp[1]; {data_cast_code}(tmp, ®_{bmm1_guid}_0[m][n][i]); reg_{bmm1_guid}_1[m][n][i/2] = tmp[0]; }} }} }} __syncthreads(); if (group_id == 1) {{{sts_or_stg_dP_code} }} // if (group_id == 1) {{ const int ki = 0;{lds_dY_code} }} #pragma unroll for (int ki = 1; ki < BMM2_XMMAS_K_{p_id}; ++ki) {{{lds_dY_code}{matmul_2_code} }} {{ const int ki = BMM2_XMMAS_K_{p_id};{matmul_2_code} }} {matmul_3_loop_code} lds_buf_qo_id ^= 1; }} // qo_loop depbar<0>(); __syncthreads(); // mma_loop_op {} declscoord_b * convDesc.Ccoord_b * convDesc.Kgroup_conv_offset_agroup_conv_offset_bgroup_offset_codecta_swizzle_codeC_or_K //mma_loop_op {} includes // mma_loop_op {} typesmha_maskis_right_boundis_shift_right_boundis_left_boundM_or_KK_or_MSMEM_DATA_OFFSET_{}op_id + BYTES_PER_SMEM_{}SMEM_BARRIER_OFFSET_{}reuse_ldgsts_idtma_transaction_bytesSMEM_DATA_OFFSETactual_lean_tile_idinput_left_boundpw_chain_guidactual_seqlen_q_{p_id}seqlen_q_codesoftmax_guid2 * STAGES_{p_id} - 1{lds_Q_code}matmul_1_guidmatmul_2_guidmma_loop_declsldgsts_Q_codeldgsts_K_codeldgsts_V_codelds_Q_codelds_K_codelds_V_codelds_K_buffer_update_codelds_V_buffer_update_codematmul_1_codematmul_2_codekv_loop_bound_codeleft_bound_codeshift_right_bound_codewarp_reduction_codesoftmax_updatebmm1_denombmm2_denomsplit_k_factorsts_S_decllds_S_declsts_S_codelds_S_codedepbar_count tmastg_wait();{load_band_matrix_code} tmastg_wait();actual_seqlen_kv_{}attnDesc.s_kvactual_s_kv_codeload_next_tile_id_codekv_loop_bound_close_codehead_setting_codetile_extract_codeload_band_matrix_declband_bias_ldg_op_guidstore_next_tile_id_codeactual_num_tiles_codeldgsts_band_bias_warp_codeldgsts_V_declldgsts_K_declldgsts_Q_decloBlockSizekConvertPipeCountkSubtractPipeCountrng_sync_coderng_codestg_stats_codepad_softmax_sum_code* num_2d_tile_ktile_id_and_coord[1]tile_id_and_coord[0]tile_id_and_coord[2]tma_ktma_v++kv_mbar_state;smem_Ksmem_V++kv_mbar_state{load_K} const int left_bound = 0;s_descale_inputv_scale_inputo_scale_inputBMM1_TILE_Mfp32_reg_Olocal_epilogue_block_sizerng_guidpages_per_ldgtma_box_size_1sequence_descriptorsequence_descbits_per_ldgnum_loadssequences_per_threadk_pages_per_threadpage_table_k_lookup_codev_pages_per_threadpage_table_v_lookup_codemul_num_2d_tile_kextract_head_coorddiv_num_2d_tile_kblocked_row_coordbatch_coordhead_coord_from_grid // mma_loop_op {} codeget_base_tile_id_code{kv_loop_bound_code}read_tile_id_done_codepw_chain_declpw_chain_coderng_typesrng_declsget_next_tile_id_codebmm_0_guidfp8_pw_chain_s_guidfinal_stats_sttm_sizesoftmax_input_reg_namesttm_s_code{stg_stats_code}{stg_stats_decl}scale_correction_declswizzle_factoramax_reduce_s_codeamax_reduce_o_codepadded_outputdowncast_o_fp32_codebytes_per_ld_qkvamax_stg_s_codeamax_stg_o_codestg_stats_decl }}bmm1_codebmm2_codev_barrier{Q_matmul_K_1} {Q_matmul_K_0} Q_matmul_K_0Q_matmul_K_1S_matmul_V_1_inside_mainloopbmm1_declbmm2_declremaining_commit_group_size ldgdepbar();increment_kv_mbar_statek_tma_transaction_countk_load_arrive_eventsv_tma_transaction_countv_smemv_load_arrive_events __syncwarp();load_Q_0load_Q_1load_Kload_Vpage_tables_declpage_tables_code{stg_o_decl}stg_o_declvar_seq_len_q_ptr_namelocal_row ^ (i / 8)smem_dPkLdsPipeCountNUM_REGS_S_FP32{softmax_sum_lds_code}-inv_ln2scale_for_dot_do_o-bmm_scalefp32x4_to_e5m2x4elems_per_accessbmm_s_guiddeq_scale_k_inputdeq_scale_q_inputbmm_scale_inputdeq_scale_do_inputdeq_scale_v_inputdropout_scaledeq_scale_s_inputq_scale_dv_inputdeq_scale_dp_inputq_scale_dk_inputwait_mbar_codeswizzle_colregs_per_iterelems_per_regdowncast_fp32_codetmem_offsetdv_or_dk_2_or_1384downcast_s_fp32_codepw_chain_0_output_guidapply_mask_rngsoftmax_stats_guidnum_elemssoftmax_sum_guidNUM_REGS_DP_FP32data_convert_pipeline_codeapply_mask_rng_leftoversbmm_dp_guiddowncast_dp_fp32_codesoftmax_sum_lds_codepw_chain_1_output_guid{qo_loop_bound_code}qo_loop_bound_code {get_next_tile_id_code}{amax_stg_dp_code} }}sts_dP_codepw_chain_s_codepw_chain_s_declspw_chain_dp_codepw_chain_dp_declssoftmax_stats_lds_codescalars_decl_softmaxamax_stg_dp_codescale_for_statsscale_for_sumstats_descsum_desc {scalars_decl_dq} scalars_decl_dqsts_dv_codests_dk_codeamax_stg_dv_codeamax_stg_dk_codebmm_dQ_codebmm_dK_codebmm_dP_codebmm_dV_codebmm_S_declbmm_dV_declbmm_dP_declbmm_dK_declbmm_dQ_declbmm_S_codeldgsts_dO_declldgsts_dO_codestg_dv_declstg_dk_declstg_dq_declstg_dq_codevar_seq_len_kv_ptr_namenopq_data[2]cga_wait();from_a_idfrom_b_idincoming_a_idincoming_a_portnanset_lds_a_idnanset_lds_a_portm_idincoming_b_idincoming_b_portmulticast_coord_offset_amulticast_coord_offset_bcoord_decl_codecoord_extract_codeldgsts_local_declset_transaction_count_codeldgsts_codecoord_k_codecga_waitmulticast_mask_a_codemulticast_mask_b_codedma_a_warp_codedma_b_warp_codeinit_mainloop_coord_codesemaphore_workspaceresults_workspacelocal_reducemma_countsgmma_compute_arf_tf_codegmma_compute_arf_ff_codegmma_compute_arf_tt_codegmma_compute_tf_sync_codegmma_compute_tf_codegmma_compute_ff_codegmma_compute_tt_codeclear_acc_tmp_codeclear_acc_codesplit_k_codemath_warp_end_codeoutput_lds_bar_codeoutput_sts_bar_codewait_stepscga_sync_init_codebar_arrive_codefence_bar_bpw_mainloop_fusion_bpw_fusion_bpw_b_declspw_mainloop_fusion_apw_fusion_apw_a_declsoutput_sts_codeoutput_sts_declslds_code_blds_decls_blds_code_alds_decls_amma_declsglobal_load_codeglobal_load_declsset_smem_offset_codescheduler_warp_codedma_warp_codemath_warp_codepipeline_end_codebar_arrive_stepsts_32sts_16fp32x2_to_fp16x2fp32x2_to_bf16x2buf_idsmem_dq_offset_codeqo_loop_bound_close_codedq_with_atomicwarp_group_dq_offset_codematmul_3_guiddata_cast_codests_or_stg_dP_codewarp_group_k_offset_codecontract_band_matrix_codecast_data_for_dq_matmul_codeepilogue_codedown_convert_s_codesmem_dq_dp_declsmem_bar_dk_dv_decltmastg_warp_coderow_broadcast_lds_1_coderow_broadcast_lds_0_codepointwise_chain_1_codepointwise_chain_0_codematmul_3_coderow_broadcast_sts_coderow_broadcast_reg_declsrow_broadcast_ldg_coderow_broadcast_ldg_declssts_or_stg_dP_declmatmul_2_input_a_guidfp32x4_to_e4m3x4fp16x4_to_e4m3x4fp16x4_to_e5m2x4input_port_3input_guid_3input_port_2input_guid_2input_port_1input_guid_1input_port_0input_guid_0bmm_deq_scale_q_kout_guidscalerq_scale_sdeq_scale_do_vq_scale_dpbar_peek_dv_codebar_arrive_dv_codedeq_scale_s_doq_scale_dvamax_dvdeq_scaleamax_dv_dkdeq_scale_dp_qq_scale_dkamax_dksmem_dp_fp8_decldown_convert_dp_fp8_codetranspose_for_fp8_declsoftmax_stats_guid_1softmax_stats_guid_0q_scale_dp_codeq_scale_s_codebmm_scale_codedeq_scale_do_v_codescale_dp_q_dk_declscale_s_do_dv_decldeq_scale_bmm_do_v_decldeq_scale_bmm_q_k_decldeq_scale_bmm_q_k_codesoftmax_sum_ldg_declssoftmax_stats_ldg_declssoftmax_sum_ldg_codesoftmax_stats_ldg_code ++ldg_cnt;last_iter_predicatesoob_predicatesmove_gmem_ptrsldg_a_tensor_descldg_b_tensor_descldg_mma_idwo_smem_ld_trscwo_smem_st_trscsplit_kfprop_mainloop_filter_indicesfprop_ldg_initial_indicesfinal_update_acciterative_update_acclds_buffer_update_codeldgsts_buffer_update_codefprop_predicates_and_offsetsgemm_coord_calculationldsm_codeldsm_declsldgsts_decls_bldgsts_code_bldgsts_decls_aldgsts_code_a{split_k}kAddPipeCountscale_o_guidscale_v_guidscale_s_guidhas_right_boundoutput_loop_codemma_declmainloop_lds_b_scale_codemainloop_lds_b_codemainloop_lds_a_scale_codemainloop_lds_a_codemainloop_lds_b_scale_declmainloop_lds_b_declmainloop_lds_a_scale_declmainloop_lds_a_decltmaldg_b_scale_codetmaldg_b_codetmaldg_a_scale_codetmaldg_a_codetmaldg_b_scale_decltmaldg_b_decltmaldg_a_scale_decltmaldg_a_declextract_grid_coord_codefinal_coord_codesmem_buffer_offset_codecga_swizzle_codesmem_mainloop_barsmem_ab_full_barmainloop_fusion_a_codemainloop_fusion_b_codecoord_b * (int32_t)convDesc.Kmainloop_update_offset_codemainloop_ldg_codemainloop_step_offset_codemainloop_sts_b_declmainloop_sts_a_declmainloop_pw_b_declmainloop_pw_a_declmainloop_ldg_declmainloop_indices_declblock_scale_tmem_decltma_multicast_mask_codetmaldg_multicast_smem_offsetmma_warp_consumer_barmainloop_warp_codebmm1_guidlds_dP_codelds_K_t_codebmm4_guiddesc_v_codedesc_k_codedesc_dy_codedesc_q_codesum_ptr_codelse_ptr_codegmem_v_ptr_codegmem_k_ptr_codegmem_dy_ptr_codegmem_q_ptr_codematmul_3_loop_codelds_dY_codelds_Q_t_codefp32x2_to_fp16x2fp32x2_to_bf16x2fp32x4_to_e4m3x4fp32x4_to_e5m2x4 const int left_bound = nt shift_right_b beta_{softmax_guid}[m] = (sum == 0.f) ? 0.f : 1.f / sum static constexpr int BMM1_XMMAS_K_{p_id} = TILE_O_{p_id} / {bmm1_denom}; static constexpr int BMM2_XMMAS_K_{p_id} = TILE_N_{p_id} / {bmm2_denom} / WAR {{ const int ki = 0; depbar<{depbar_count}>(); __sy{lds_K_code} }} #pragma unroll for (int ki = 1; ki < BMM1_XMMAS_K_{p_id}{lds_K_code}{matmul_1_code} }} __syncthreads(); {{ const int ki = BMM1_XMMAS_K_{p_id};{mat{pointwise_and_softmax_ops_code} const int l const int shift_right_bound{stg_o_code} tmastg_ {kv_loop_bound_close_code} {load_next_tile_id_code} }} tmastg_wait(); reg_alloc<232>(); const float scale_for_dot_do_o = (-bmm_scale) * q_scale_dp smem_bar_phase_dkv // output_loop_op {} typeselems_per_vectorWARPS_PER_GROUP_{}WARPS_M_{}active_warp_count // output_loop_op {} declstid_row_index_declK_or_CD_col_id_offset // output_loop_op {} codelds_dk_codests_dk_declslds_dk_declsstg_dk_declslds_dv_codests_dv_declslds_dv_declsstg_dv_declsoutput_loop_declsdesc_dv_codedesc_dk_codegmem_dK_ptr_codegmem_dV_ptr_codeif (wid < WARPS_M_{})active_warp_conditionD_col_offsetselect_one_lean_tile_idfusion_and_stg_declsfusion_and_stg_codecommon_stg_dV_dK_declsstg_dV_dK_codecolumn_reduce_stg_declscolumn_reduce_stg_codelds_decls //output_loop_op {} includes static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int LDS_TILE_M_{guid} = 16; static constexpr int LDS_TILE_N_{guid} = 32; static constexpr int ACC_CORE_MATRIX_ROWS_{guid} = 8; // NOTE: fixed due to GMMA design static constexpr int ACC_CORE_MATRIX_COLS_{guid} = 8; // NOTE: fixed due to GMMA design static constexpr int ELEMENTS_PER_VECTOR_{guid} = 8; static constexpr int LDS_PER_TILE_{guid} = ELEMENTS_PER_VECTOR_{guid} / 2; static constexpr int LDS_TILES_N_{guid} = FORT_MAX(WARP_TILE_N_{p_id} / LDS_TILE_N_{guid}, 1); static constexpr int LDS_TILES_M_{guid} = WARP_TILE_M_{p_id} / LDS_TILE_M_{guid}; static constexpr int VECTORS_PER_LDS_TILES_{guid} = LDS_TILE_M_{guid} / ACC_CORE_MATRIX_ROWS_{guid}; static constexpr int STS_PER_OUTPUT_TILE_N_{guid} = WARP_TILE_N_{p_id} / ACC_CORE_MATRIX_COLS_{guid}; static constexpr int STSM_X4_PER_OUTPUT_TILE_N_{guid} = WARP_TILE_N_{p_id} / ACC_CORE_MATRIX_COLS_{guid} / 2; static constexpr int BANKS_PER_PAD_LINE_{guid} = BYTES_PER_ACC_{p_id} == 4 ? 1 : 2; static constexpr int PADDING_BYTES_{guid} = BANKS_PER_PAD_LINE_{guid} * BYTES_PER_BANK_{guid} * LDS_PER_TILE_{guid}; static constexpr int BYTES_PER_STS_PER_WARP_{guid}= 16 * THREADS_PER_WARP_{r_id}; // 16 bytes due to STS_128 static constexpr int BYTES_PER_LDS_TILE_{guid} = LDS_TILE_N_{guid} * LDS_TILE_M_{guid} * BYTES_PER_ACC_{p_id} + PADDING_BYTES_{guid}; static constexpr int BYTES_PER_WARP_{guid} = LDS_TILES_N_{guid} * BYTES_PER_LDS_TILE_{guid}; static constexpr int ELEMS_PER_STS_BLOCK_{guid} = 16; static constexpr int STG_THREADS_PER_TILE_N_{guid} = LDS_TILE_N_{guid} / ELEMENTS_PER_VECTOR_{guid}; static constexpr int EPILOGUE_SMEM_SIZE_PER_XMMA_M_{guid} = BYTES_PER_WARP_{guid} * WARPS_M_{p_id} * WARPS_N_{p_id}; static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int ELEMENTS_PER_VECTOR_{guid} = {elems_per_vector}; static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int LDS_TILE_M_{guid} = 16; static constexpr int LDS_TILE_N_{guid} = 32; static constexpr int ACC_CORE_MATRIX_ROWS_{guid} = 8; // NOTE: fixed due to GMMA design static constexpr int ACC_CORE_MATRIX_COLS_{guid} = 8; // NOTE: fixed due to GMMA design static constexpr int ELEMENTS_PER_VECTOR_{guid} = 8; static constexpr int LDS_PER_TILE_{guid} = ELEMENTS_PER_VECTOR_{guid} / 2; static constexpr int LDS_TILES_N_{guid} = FORT_MAX(WARP_TILE_N_{p_id} / LDS_TILE_N_{guid}, 1); static constexpr int LDS_TILES_M_{guid} = WARP_TILE_M_{p_id} / LDS_TILE_M_{guid}; static constexpr int VECTORS_PER_LDS_TILES_{guid} = LDS_TILE_M_{guid} / ACC_CORE_MATRIX_ROWS_{guid}; static constexpr int STS_PER_OUTPUT_TILE_N_{guid} = FORT_MIN(LDS_TILE_N_{guid}, WARP_TILE_N_{p_id}) / ACC_CORE_MATRIX_COLS_{guid}; static constexpr int STSM_X4_PER_OUTPUT_TILE_N_{guid} = STS_PER_OUTPUT_TILE_N_{guid} / 2; static constexpr int BANKS_PER_PAD_LINE_{guid} = BYTES_PER_ACC_{p_id} == 4 ? 1 : 2; static constexpr int PADDING_BYTES_{guid} = BANKS_PER_PAD_LINE_{guid} * BYTES_PER_BANK_{guid} * LDS_PER_TILE_{guid}; static constexpr int BYTES_PER_STS_PER_WARP_{guid} = 16 * THREADS_PER_WARP_{r_id}; // 16 bytes due to STS_128 static constexpr int BYTES_PER_LDS_TILE_{guid} = LDS_TILE_N_{guid} * LDS_TILE_M_{guid} * BYTES_PER_ACC_{p_id} + PADDING_BYTES_{guid}; static constexpr int BYTES_PER_WARP_{guid} = BYTES_PER_LDS_TILE_{guid}; static constexpr int ELEMS_PER_STS_BLOCK_{guid} = 16; static constexpr int STG_THREADS_PER_TILE_N_{guid} = LDS_TILE_N_{guid} / ELEMENTS_PER_VECTOR_{guid}; static constexpr int EPILOGUE_BYTES_PER_CTA_{guid} = BYTES_PER_WARP_{guid} * WARPS_PER_GROUP_{r_id} * GROUPS_M_{p_id}; static constexpr int BYTES_PER_BANK_{guid} = 16; static constexpr int LDS_TILE_M_{guid} = 16; static constexpr int LDS_TILE_N_{guid} = 32; static constexpr int ACC_CORE_MATRIX_ROWS_{guid} = 8; // NOTE: fixed due to GMMA design static constexpr int ACC_CORE_MATRIX_COLS_{guid} = 8; // NOTE: fixed due to GMMA design static constexpr int ELEMENTS_PER_VECTOR_{guid} = 8; static constexpr int LDS_PER_TILE_{guid} = ELEMENTS_PER_VECTOR_{guid} / 2; static constexpr int LDS_TILES_N_{guid} = FORT_MAX(CTA_TILE_N_{p_id} / LDS_TILE_N_{guid}, 1); static constexpr int LDS_TILES_M_{guid} = (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) / (LDS_TILE_M_{guid} * {active_warp_count}); static constexpr int VECTORS_PER_LDS_TILES_{guid} = LDS_TILE_M_{guid} / ACC_CORE_MATRIX_ROWS_{guid}; static constexpr int STS_PER_OUTPUT_TILE_N_{guid} = CTA_TILE_N_{p_id} / ACC_CORE_MATRIX_COLS_{guid}; static constexpr int STSM_X4_PER_OUTPUT_TILE_N_{guid} = CTA_TILE_N_{p_id} / ACC_CORE_MATRIX_COLS_{guid} / 2; static constexpr int BANKS_PER_PAD_LINE_{guid} = BYTES_PER_ACC_{p_id} == 4 ? 1 : 2; static constexpr int PADDING_BYTES_{guid} = BANKS_PER_PAD_LINE_{guid} * BYTES_PER_BANK_{guid} * LDS_PER_TILE_{guid}; static constexpr int BYTES_PER_STS_PER_WARP_{guid}= 16 * THREADS_PER_WARP_{r_id}; // 16 bytes due to STS_128 static constexpr int BYTES_PER_LDS_TILE_{guid} = LDS_TILE_N_{guid} * LDS_TILE_M_{guid} * BYTES_PER_ACC_{p_id} + PADDING_BYTES_{guid}; static constexpr int BYTES_PER_WARP_{guid} = LDS_TILES_N_{guid} * BYTES_PER_LDS_TILE_{guid}; static constexpr int ELEMS_PER_STS_BLOCK_{guid} = 16; static constexpr int STG_THREADS_PER_TILE_N_{guid} = LDS_TILE_N_{guid} / ELEMENTS_PER_VECTOR_{guid}; static constexpr int EPILOGUE_SMEM_SIZE_PER_XMMA_M_{guid} = BYTES_PER_WARP_{guid} * {active_warp_count}; int tid_row_index_{guid} = tiw < (CTA_TILE_M_{p_id} / 4) ? (tiw + (wid % 4) * (CTA_TILE_M_{p_id} / 4)) : implicit_gemm_M;int tid_row_index_{guid} = tid; {tid_row_index_decl} const uint64_t row_{guid} = coord_b * convDesc.K + tid_row_index_{guid} + coord_k * CTA_TILE_M_{p_id}; const uint64_t col_{guid} = block * ELEMENTS_PER_VECTOR_{guid} + tile_c * CTA_TILE_N_{p_id}; uint32_t tmp_n, tmp_m, tmp_mn, coord_b; // coord_b - means group_id fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n); const uint32_t cta_n = tmp_n; const uint32_t cta_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; uint32_t tile_c, filter_t, filter_r, filter_s, rsc, sc; fastDivMod(convDesc.rsc, cta_n, filter_t, rsc); fastDivMod(convDesc.sc, rsc, filter_r, sc); fastDivMod(convDesc.c, sc, filter_s, tile_c); const int flt_idx = cta_n / tiles_c; const int row_{guid} = coord_b * convDesc.K + cta_m * CTA_TILE_M_{p_id} + (tiw / STG_THREADS_PER_TILE_N_{guid}) + (wid % 4) * LDS_TILE_M_{guid} + {group_offset_code}; const int col_{guid} = tile_c * CTA_TILE_N_{p_id} + (tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid}; uint32_t cga_id_x = tmp_m; uint32_t cga_id_y = tmp_n / CGA_N_{p_id}; swizzle(cga_id_x, cga_id_y, log2_group_cols, CGAs_x, CGAs_y); const uint32_t cta_n = cga_id_y * CGA_N_{p_id} + cta_id_in_cga.x; const uint32_t cta_m = cga_id_x * CGA_M_{p_id} + cta_id_in_cga.y; const uint32_t cta_n = tmp_n; const uint32_t cta_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; uint32_t coord_k = 0, coord_b = 0; uint32_t tmp_n, tmp_m, tmp_mn; fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n);{cta_swizzle_code} const int row_{guid} = cta_m * CTA_TILE_M_{p_id} + (tiw / STG_THREADS_PER_TILE_N_{guid}) + (wid % 4) * LDS_TILE_M_{guid} + {group_offset_code}; const int col_{guid} = cta_n * CTA_TILE_N_{p_id} + (tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid}; const int row_{guid}_transposed = cta_m * CTA_TILE_M_{p_id} + (wid % 4) * LDS_TILE_M_{guid} + {group_offset_code}; const int col_{guid}_transposed = cta_n * CTA_TILE_N_{p_id} + tiw; {tid_row_index_decl} const uint64_t row_{guid} = tid_row_index_{guid} + coord_m * CTA_TILE_M_{p_id}; const uint64_t col_{guid} = block * ELEMENTS_PER_VECTOR_{guid} + coord_n * CTA_TILE_N_{p_id}; const int row_{guid} = coord_m + (tiw / STG_THREADS_PER_TILE_N_{guid}) + ((wid % WARPS_PER_GROUP_{r_id}) % WARPS_M_{p_id}) * WARP_TILE_M_{p_id} + warp_group_id * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}); const int col_{guid} = coord_n + (tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid} + ((wid % WARPS_PER_GROUP_{r_id}) / WARPS_M_{p_id}) * WARP_TILE_N_{p_id}; const int batch_{guid} = coord_b; const int row_{guid} = coord_m + (tiw / STG_THREADS_PER_TILE_N_{guid}) + (wid % WARPS_M_{p_id}) * WARP_TILE_M_{p_id}; const int col_{guid} = coord_n + (tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid} + (wid / WARPS_M_{p_id}) * WARP_TILE_N_{p_id}; const int batch_{guid} = coord_b; uint32_t tmp_n, tmp_m, tmp_mn, coord_b; // coord_b - means group_id fastDivMod(tiles_mn_div, tile_id % SPLIT_K_STRIDE_{p_id}, coord_b, tmp_mn); fastDivMod(tiles_n_div, tmp_mn, tmp_m, tmp_n); const uint32_t cta_n = tmp_n; const uint32_t cta_m = tmp_m * CGA_M_{p_id} + cta_id_in_cga.y; const int row_{guid} = cta_m * CTA_TILE_M_{p_id} + (tiw / STG_THREADS_PER_TILE_N_{guid}) + (wid % 4) * LDS_TILE_M_{guid} + {group_offset_code}; const int col_{guid} = coord_b * convDesc.{K_or_C} + cta_n * CTA_TILE_N_{p_id} + (tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid}; {tid_row_index_decl} const uint64_t row_{guid} = tid_row_index_{guid} + coord_nopq * CTA_TILE_M_{p_id}; const uint64_t col_{guid} = coord_b * convDesc.{K_or_C} + block * ELEMENTS_PER_VECTOR_{guid} + coord_k * CTA_TILE_N_{p_id}; const int row_{guid} = coord_m + (tiw / STG_THREADS_PER_TILE_N_{guid}) + (wid % WARPS_M_{p_id}) * WARP_TILE_M_{p_id}; const int col_{guid} = coord_b * convDesc.K + coord_n + (tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid} + (wid / WARPS_M_{p_id}) * WARP_TILE_N_{p_id}; const int row_{guid} = p_row_{p_id} + wid * 16 + (tiw / 4); const int col_{guid} = (tiw % 4) * 4; const int batch_{guid} = batch_coord_{p_id}; const int head_{guid} = head_coord_{p_id};blockIdx.x % num_2d_tile_k * 128 + const int row_{guid} = p_row_{p_id} + (tiw / STG_THREADS_PER_TILE_N_{guid}) + (wid % 4) * LDS_TILE_M_{guid}; const int col_{guid} = {D_col_id_offset}(tiw % STG_THREADS_PER_TILE_N_{guid}) * ELEMENTS_PER_VECTOR_{guid}; const int batch_{guid} = batch_coord_{p_id}; const int head_{guid} = head_coord_{p_id}; uint32_t smem_dV_{p_id} = smem_{p_id}; uint32_t smem_dK_{p_id} = smem_{p_id} + EPILOGUE_SMEM_SIZE_PER_XMMA_M_{guid} * LDS_TILES_M_{guid};blockIdx.x % num_2d_tile_k * 128{output_loop_decls} {{ // dV store{stg_dv_decls}{sts_dv_decls}{lds_dv_decls} // output_loop_op {guid} code uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} #pragma unroll for (int m = 0; m < LDS_TILES_M_{guid}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * WARP_TILE_M_{p_id} * WARPS_PER_GROUP_{r_id} + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{sts_dv_code} __syncthreads();{lds_dv_code}{stg_dv_code} // output_loop_op {guid} code }} // for (int m = 0; m < LDS_TILES_N_{guid}; ++m) }} memcpy(reg_{p_id}_0, reg_{p_id}_1, sizeof(reg_{p_id}_0)); __syncthreads(); {{ // dK store{stg_dk_decls}{sts_dk_decls}{lds_dk_decls} // output_loop_op {guid} code uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} #pragma unroll for (int m = 0; m < LDS_TILES_M_{guid}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * WARP_TILE_M_{p_id} * WARPS_PER_GROUP_{r_id} + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{sts_dk_code} __syncthreads();{lds_dk_code}{stg_dk_code} // output_loop_op {guid} code }} // for (int m = 0; m < LDS_TILES_N_{guid}; ++m) }} char *dV_dK_ptr_{p_id} = (group_id == 0) ? reinterpret_cast({gmem_dV_ptr_code}) : reinterpret_cast({gmem_dK_ptr_code}); int64_t dV_dK_row_offset_{p_id} = (group_id == 0) ? {desc_dv_code}.strides[2] : {desc_dk_code}.strides[2]; int64_t dV_dK_batch_offset_{p_id} = (group_id == 0) ? {desc_dv_code}.strides[0] : {desc_dk_code}.strides[0]; int64_t dV_dK_head_offset_{p_id} = (group_id == 0) ? {desc_dv_code}.strides[1] : {desc_dk_code}.strides[1]; int dV_dK_oob_m_{p_id} = (group_id == 0) ? {desc_dv_code}.dims[2] : {desc_dk_code}.dims[2]; int dV_dK_oob_n_{p_id} = (group_id == 0) ? {desc_dv_code}.dims[3] : {desc_dk_code}.dims[3]; && (lean_tile_id % num_2d_tile_k == 0) {active_warp_condition} {{ int row_loc = (wid % WARPS_M_{p_id}) * WARP_TILE_M_{p_id} + (tiw / 4); char *partial_m_loc = reinterpret_cast(partial_m) + batch_coord_{p_id} * attnDesc.q_h * sizeof(float) + head_coord_{p_id} * sizeof(float) + row_loc * sizeof(float) + {lean_tile_id} * attnDesc.q_h * attnDesc.b * sizeof(float); char *partial_l_loc = reinterpret_cast(partial_l) + batch_coord_{p_id} * attnDesc.q_h * sizeof(float) + head_coord_{p_id} * sizeof(float) + row_loc * sizeof(float) + {lean_tile_id} * attnDesc.q_h * attnDesc.b * sizeof(float); #pragma unroll for (int m = 0; m < 2; ++m) {{ const int row_offset = m * 8; if (head_coord_q_offset_{p_id} * TILE_M_{p_id} + row_loc + row_offset < attnDesc.min_q_heads_per_kv && (tiw % 4) == 0{select_one_lean_tile_id}) {{ float partial_max = reinterpret_cast(reg_{softmax_guid}_1[m]) * ln2; float partial_sum = reinterpret_cast(reg_{softmax_guid}_3[m]); stg_32(partial_m_loc + row_offset * 4, reinterpret_cast(&partial_max)); stg_32(partial_l_loc + row_offset * 4, reinterpret_cast(&partial_sum)); }} }} const int row_{guid} = p_row_{p_id} + (tiw / 4) + (wid % 4) * LDS_TILE_M_{guid}; const int col_{guid} = (tiw % 4) * 2 + {D_col_offset}; const int batch_{guid} = batch_coord_{p_id}; const int head_{guid} = head_coord_{p_id}; char *partial_o_loc = reinterpret_cast(partial_o) + (batch_{guid} * attnDesc.q_h * attnDesc.d_v + head_{guid} * attnDesc.d_v + row_{guid} * attnDesc.d_v + col_{guid} + {lean_tile_id} * attnDesc.d_v * attnDesc.q_h * attnDesc.b) * sizeof(float); #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_K_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ if (col_{guid} + n * 16 + ((i / 2) / 2) * 8 < attnDesc.d_v) {{ if (head_coord_q_offset_{p_id} * TILE_M_{p_id} + row_{guid} + ((i / 2) % 2) * 8 < attnDesc.min_q_heads_per_kv) {{ stg_64(partial_o_loc + ((m * TILE_M_{p_id} + ((i / 2) % 2) * 8) * attnDesc.d_v + n * 16 + ((i / 2) / 2) * 8) * sizeof(float), ®_{p_id}_0[m][n][i]); }} }} }} }} }} }} {active_warp_condition} {{{output_loop_decls}{fusion_and_stg_decls} {fusion_and_stg_code} }} {active_warp_condition} {{{output_loop_decls}{common_stg_dV_dK_decls}{stg_dV_dK_decls}{sts_decls}{lds_decls}{ldg_decls}{fusion_and_stg_decls}{column_reduce_stg_decls} // output_loop_op {guid} code uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} #pragma unroll for (int m = 0; m < LDS_TILES_M_{guid}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * WARP_TILE_M_{p_id} * WARPS_PER_GROUP_{r_id} + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{sts_code} __syncthreads();{lds_code}{fusion_and_stg_code}{stg_dV_dK_code} // output_loop_op {guid} code }} // for (int m = 0; m < LDS_TILES_N_{guid}; ++m){column_reduce_stg_code} }} if ((m == XMMAS_M_{p_id} - 1) && (tile_id + TILE_STEP_{p_id} < num_tiles)) {{ named_barrier_arrive(EPI_LDS_DONE_BARRIER_ID, 256); }} if (tile_id + TILE_STEP_{p_id} < num_tiles) {{ named_barrier_arrive(EPI_LDS_DONE_BARRIER_ID, 256); }}epi_lds_syncthread_code_inside_loopepi_lds_syncthread_code_outside_loop else if (is_epilogue_warp) {{ reg_alloc<232>(); int tile_id = bid;{lds_decls} #pragma unroll 1 while (tile_id < num_tiles) {{ int split_k_id = tile_id / SPLIT_K_STRIDE_{p_id}; if (split_k_id == SPLIT_K_SLICES_{p_id} - 1) {{{output_loop_decls}{ldg_decls}{fusion_and_stg_decls}{column_reduce_stg_decls} // output_loop_op {guid} code uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * GMMA_TILE_M_{p_id} + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{ldg_code} // output_loop_op {guid} code if (m == 0) {{ named_barrier_wait(EPI_STS_DONE_BARRIER_ID, 256); }} {lds_code} // output_loop_op {guid} code{epi_lds_syncthread_code_inside_loop}{fusion_and_stg_code} // output_loop_op {guid} code }} // for (int m = 0; m < XMMAS_M_{p_id}; ++m){column_reduce_stg_code}{epi_lds_syncthread_code_outside_loop} }} else {{ // if (split_k_id == SPLIT_K_SLICES - 1) named_barrier_wait(EPI_STS_DONE_BARRIER_ID, 256); if (tile_id + TILE_STEP_{p_id} < num_tiles) {{ named_barrier_arrive(EPI_LDS_DONE_BARRIER_ID, 256); }} }} // output_loop_op {guid} code tile_id += TILE_STEP_{p_id}; }} // while (tile_id < num_tiles) preexit(); reg_alloc<232>(); return; }} // if (is_epilogue_warp) // Epilogue if (split_k_id == SPLIT_K_SLICES_{p_id} - 1) {{{sts_decls}{lds_decls} {output_loop_decls}{ldg_decls}{fusion_and_stg_decls}{column_reduce_stg_decls} // output_loop_op {guid} code uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} named_barrier_wait(EPI_LDS_DONE_BARRIER_ID, 256); #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * GMMA_TILE_M_{p_id} + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{ldg_code}{sts_code} // output_loop_op {guid} code named_barrier_wait(EPI_STS_DONE_BARRIER_ID, 256); {lds_code} // output_loop_op {guid} code{fusion_and_stg_code} // output_loop_op {guid} code }} // for (int m = 0; m < XMMAS_M_{p_id}; ++m){column_reduce_stg_code} // output_loop_op {guid} code }} tile_id += TILE_STEP_{p_id}; }} // while (tile_id < num_tiles) preexit(); reg_alloc<232>(); return; }} // if (is_math_warp) uint32_t tile_c, filter_t, filter_r, filter_s, rsc, sc; fastDivMod(convDesc.rsc, coord_trsc, filter_t, rsc); fastDivMod(convDesc.sc, rsc, filter_r, sc); fastDivMod(convDesc.c, sc, filter_s, tile_c); const int flt_idx = coord_trsc / tiles_c; #pragma unroll 1 for (int block = 0; block < CTA_TILE_N_{p_id} / ELEMENTS_PER_VECTOR_{guid}; block++) {{{output_loop_decls}{ldg_decls}{fusion_and_stg_decls}{column_reduce_stg_decls}{ldg_code} if (block == 0) {{ if (!smem_bar_peek(tmem_acc_full_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, tmem_acc_mbar_state.phase())) {{ smem_bar_wait(tmem_acc_full_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, tmem_acc_mbar_state.phase()); }} }}{lds_decls} if (block == (CTA_TILE_N_{p_id} / ELEMENTS_PER_VECTOR_{guid} - 1)) {{ if (CTA_MMA_{p_id} > 1) {{ smem_bar_arrive_dsmem_V2(tmem_acc_empty_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}, (cta_id_in_cga.y * CGA_M_{p_id} + cta_id_in_cga.x) & 0xFFFFFFFE, 1); }} else {{ smem_bar_arrive(tmem_acc_empty_smem_bar + tmem_acc_mbar_state.index() * BYTES_PER_MBAR_{p_id}); }} }}{lds_code}{fusion_and_stg_code}{column_reduce_stg_code} }}{output_loop_decls}{sts_decls}{lds_decls}{ldg_decls}{fusion_and_stg_decls}{column_reduce_stg_decls} uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * LDS_TILE_M_{guid} + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{ldg_code} #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ __syncwarp();{sts_code} __syncwarp();{lds_code} }}{fusion_and_stg_code} }} // for (int m = 0; m < XMMAS_M_{p_id}; ++m){column_reduce_stg_code} // Epilogue if (split_k_id == SPLIT_K_SLICES_{p_id} - 1) {{ uint32_t smem_epilogue = smem_0;{output_loop_decls}{sts_decls}{lds_decls}{ldg_decls}{fusion_and_stg_decls}{column_reduce_stg_decls} // output_loop_op {guid} code uint32_t column_offset_{guid}[LDS_TILES_N_{guid}]; uint32_t row_offset_{guid}[VECTORS_PER_LDS_TILES_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{guid}; ++c) {{ column_offset_{guid}[c] = c * LDS_TILE_N_{guid}; }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{guid}; ++r) {{ row_offset_{guid}[r] = (m * 16 + r * ACC_CORE_MATRIX_ROWS_{guid}); }}{ldg_code} // output_loop_op {guid} code __syncthreads();{sts_code} __syncthreads(); {lds_code} // output_loop_op {guid} code{fusion_and_stg_code} // output_loop_op {guid} code }} // for (int m = 0; m < XMMAS_M_{p_id}; ++m){column_reduce_stg_code} }} //global_load_shared_store_op {} includes //global_load_shared_store_op {} emit_smem_offset uint32_t smem_{guid} = smem_{r_id} + SMEM_BUFFER_OFFSET_{guid}; //global_load_shared_store_op {} types static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_element}; static constexpr int BYTES_PER_ACCESS_{guid} = {bytes_per_access}; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int BYTES_PER_SMEM_{guid} = TILE_M_{guid} * TILE_N_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int BYTES_PER_VECTOR_{guid} = 16; static constexpr int ELEMS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_ELEMENT_{guid}; static constexpr int BYTES_PER_LD_{guid} = 128; static constexpr int LDGSTS_THREADS_PER_BLOCK_{guid} = BYTES_PER_LD_{guid} / BYTES_PER_VECTOR_{guid}; static constexpr int ROWS_PER_LDGSTS_{guid} = THREADS_PER_WARP_GROUP_{r_id} / LDGSTS_THREADS_PER_BLOCK_{guid}; static constexpr int LDGSTS_STEPS_PER_BLOCK_{guid} = TILE_M_{guid} / ROWS_PER_LDGSTS_{guid}; static constexpr int LDGSTS_BLOCKS_{guid} = FORT_MAX(1, TILE_N_{guid} / (BYTES_PER_LD_{guid} / BYTES_PER_ELEMENT_{guid})); static constexpr int SWIZZLE_SCALE_{guid} = FORT_MIN(BYTES_PER_LD_{guid} / 16, WARPS_PER_GROUP_{r_id} * 4); static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{m_or_n}_{p_id} * CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8{block_size_factor}{two_cta_mma_factor}; static constexpr int PIPELINE_SMEM_BYTES_{guid} = BYTES_PER_SMEM_{guid} * STAGES_{p_id}; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{m_or_n}_{p_id} * CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8; static constexpr int PIPELINE_SMEM_BYTES_{guid} = BYTES_PER_SMEM_{guid} * STAGES_{p_id}; static constexpr int LDG_SIZE_IN_BITS_{guid} = {bits_per_access}; static constexpr int LDGS_PER_REGISTER_{guid} = BITS_PER_REGISTER_{r_id} / LDG_SIZE_IN_BITS_{guid}; static constexpr int BYTES_PER_LOAD_{guid} = FORT_MIN(CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int THREADS_PER_LOAD_{guid} = BYTES_PER_LOAD_{guid} / BYTES_PER_REGISTER_{r_id}; static constexpr int ROWS_PER_LOAD_{guid} = NUM_WARPS_{p_id} * THREADS_PER_WARP_{r_id} / THREADS_PER_LOAD_{guid}; static constexpr int ROWS_PER_TILE_{guid} = CTA_TILE_{M_or_N}_{p_id}; static constexpr int LOADS_PER_GROUP_{guid} = FORT_MIN(ROWS_PER_TILE_{guid} / ROWS_PER_LOAD_{guid}, 4); static constexpr int GROUPS_PER_BLOCK_{guid} = ROWS_PER_TILE_{guid} / (ROWS_PER_LOAD_{guid} * LOADS_PER_GROUP_{guid}); static constexpr int BLOCKS_PER_CTA_{guid} = CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{p_id} / 8 / BYTES_PER_LOAD_{guid}; static constexpr int BITS_PER_OOB_MASK_{guid} = BLOCKS_PER_CTA_{guid} * GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid} * LDGS_PER_REGISTER_{guid}; static constexpr int REGS_PER_OOB_MASK_{guid} = FORT_MAX(BITS_PER_OOB_MASK_{guid} / BITS_PER_REGISTER_{r_id}, 1); static constexpr int SWIZZLE_SCALE_{guid} = BYTES_PER_LOAD_{guid} / BYTES_PER_BANK_{p_id}; static constexpr int bytes_per_ld_{guid} = FORT_MIN(CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int ldgsts_threads_per_ld_{guid} = bytes_per_ld_{guid} / BYTES_PER_BANK_{p_id}; static constexpr int rows_per_ldgsts_{guid} = THREADS_PER_WARP_{r_id} * WARPS_M_{p_id} * WARPS_N_{p_id} / ldgsts_threads_per_ld_{guid}; static constexpr int MAXIMUM_ROWS_PER_TILE_{guid} = CTA_TILE_{m_or_n}_{p_id}; static constexpr int WORKING_THREADS_{guid} = MAXIMUM_ROWS_PER_TILE_{guid} * ldgsts_threads_per_ld_{guid}; static constexpr int ldgsts_size_{guid} = {bytes_per_access}; static constexpr int ldgsts_per_bank_{guid} = BYTES_PER_BANK_{p_id} / ldgsts_size_{guid}; static constexpr int ldgsts_steps_per_block_{guid} = FORT_MAX(MAXIMUM_ROWS_PER_TILE_{guid} / rows_per_ldgsts_{guid}, 1); static constexpr int ldgsts_blocks_{guid} = CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8 / bytes_per_ld_{guid}; static constexpr int SWIZZLE_SCALE_{guid} = bytes_per_ld_{guid} / BYTES_PER_BANK_{p_id}; static constexpr int LDG_SIZE_IN_BITS_{guid} = {bits_per_access}; static constexpr int LDGS_PER_REGISTER_{guid} = BITS_PER_REGISTER_{r_id} / LDG_SIZE_IN_BITS_{guid}; static constexpr int BYTES_PER_LOAD_{guid} = FORT_MIN(CTA_TILE_{M_or_N}_{p_id} * BITS_PER_ELEMENT_{guid} / 8, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int THREADS_PER_LOAD_{guid} = BYTES_PER_LOAD_{guid} / BYTES_PER_REGISTER_{r_id}; static constexpr int ROWS_PER_LOAD_{guid} = NUM_WARPS_{p_id} * THREADS_PER_WARP_{r_id} / THREADS_PER_LOAD_{guid}; static constexpr int ROWS_PER_TILE_{guid} = CTA_TILE_K_{p_id}; static constexpr int LOADS_PER_GROUP_{guid} = FORT_MIN(ROWS_PER_TILE_{guid} / ROWS_PER_LOAD_{guid}, 4); static constexpr int GROUPS_PER_BLOCK_{guid} = ROWS_PER_TILE_{guid} / (ROWS_PER_LOAD_{guid} * LOADS_PER_GROUP_{guid}); static constexpr int BLOCKS_PER_CTA_{guid} = CTA_TILE_{M_or_N}_{p_id} * BITS_PER_ELEMENT_{p_id} / 8 / BYTES_PER_LOAD_{guid}; static constexpr int BITS_PER_OOB_MASK_{guid} = BLOCKS_PER_CTA_{guid} * GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid} * LDGS_PER_REGISTER_{guid}; static constexpr int REGS_PER_OOB_MASK_{guid} = FORT_MAX(BITS_PER_OOB_MASK_{guid} / BITS_PER_REGISTER_{r_id}, 1); static constexpr int SWIZZLE_SCALE_{guid} = BYTES_PER_LOAD_{guid} / BYTES_PER_BANK_{p_id}; static constexpr int bytes_per_ld_{guid} = FORT_MIN(CTA_TILE_{m_or_n}_{p_id} * BITS_PER_ELEMENT_{guid} / 8, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int ldgsts_threads_per_ld_{guid} = bytes_per_ld_{guid} / BYTES_PER_BANK_{p_id}; static constexpr int rows_per_ldgsts_{guid} = THREADS_PER_WARP_{r_id} * WARPS_M_{p_id} * WARPS_N_{p_id} / ldgsts_threads_per_ld_{guid}; static constexpr int MAXIMUM_ROWS_PER_TILE_{guid} = CTA_TILE_K_{p_id}; static constexpr int WORKING_THREADS_{guid} = MAXIMUM_ROWS_PER_TILE_{guid} * ldgsts_threads_per_ld_{guid}; static constexpr int ldgsts_size_{guid} = {bytes_per_access}; static constexpr int ldgsts_per_bank_{guid} = BYTES_PER_BANK_{p_id} / ldgsts_size_{guid}; static constexpr int ldgsts_steps_per_block_{guid} = FORT_MAX(MAXIMUM_ROWS_PER_TILE_{guid} / rows_per_ldgsts_{guid}, 1); static constexpr int ldgsts_blocks_{guid} = CTA_TILE_{m_or_n}_{p_id} * BITS_PER_ELEMENT_{guid} / 8 / bytes_per_ld_{guid}; static constexpr int SWIZZLE_SCALE_{guid} = bytes_per_ld_{guid} / BYTES_PER_BANK_{p_id}; #define LDG_{guid} ldg_{bits_per_access} #if __CUDA_ARCH__ >= 900 template struct STSM_SELECTOR_{guid} {{ static constexpr auto value = stsm_x4; }}; template<> struct STSM_SELECTOR_{guid}<1> {{ static constexpr auto value = stsm_x1; }}; template<> struct STSM_SELECTOR_{guid}<2> {{ static constexpr auto value = stsm_x2; }}; constexpr auto STSM_{guid} = STSM_SELECTOR_{guid}::value; #endif //global_load_shared_store_op {} emit_multicast_base_offset smem_{guid} += cta_id_in_cga.{x_or_y} * CTA_TILE_K_{p_id} * FORT_MIN(MAX_TMA_LOAD_ROW_BYTES_{p_id}, CTA_TILE_M_{p_id} * BITS_PER_ELEMENT_{guid} / 8) / CGA_N_{p_id}; smem_{guid} += cta_id_in_cga.{x_or_y} * CTA_TILE_M_{p_id} * FORT_MIN(MAX_TMA_LOAD_ROW_BYTES_{p_id}, CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8) / CGA_N_{p_id}; smem_{guid} += cta_id_in_cga.{x_or_y}{two_cta_mma_factor} * CTA_TILE_K_{p_id} * FORT_MIN(MAX_TMA_LOAD_ROW_BYTES_{p_id}, (CTA_TILE_N_{p_id}{two_cta_mma_factor}) * BITS_PER_ELEMENT_{guid} / 8) / (CGA_M_{p_id}{two_cta_mma_factor}); smem_{guid} += cta_id_in_cga.{x_or_y}{two_cta_mma_factor} * (CTA_TILE_N_{p_id}{two_cta_mma_factor}) * FORT_MIN(MAX_TMA_LOAD_ROW_BYTES_{p_id}, CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8) / (CGA_M_{p_id}{two_cta_mma_factor}); smem_{guid} += cta_id_in_cga.{x_or_y} * BYTES_PER_BLOCK_{m_id} / CGA_N_{p_id}; smem_{guid} += cta_id_in_cga.{x_or_y} * BYTES_PER_BLOCK_{m_id} / CGA_M_{p_id}; //global_load_shared_store_op {} declsqo_loop_left_bound * TILE_M_{guid}kv_loop_left_bound * TILE_M_{guid}(kv_loop_right_bound - kv_loop_left_bound - 1){page_table_data} + batch_coord_{p_id} * {page_table_desc}.strides[0]; const int block_size_{guid} = {container_desc}.dims[2]; const int log_block_size_{guid} = {log_block_size}; const int block_size_minus_one_{guid} = block_size_{guid} - 1; fort::tensor_descriptor page_table_desc_{guid} = {page_table_desc}; int32_t * page_table_base_{guid} = {page_table_base}; uint32_t page_table_oob_{guid} = 0; #pragma unroll for (int i=0; i< TILE_N_1; i+={tma_box_size_1} * {pages_per_ldg}){{ page_table_oob_{guid} |= ((kv_loop_left_bound * TILE_N_1 + i) >= {sequence_descriptor}[batch_coord_{p_id}]) << (i/({tma_box_size_1} * {pages_per_ldg})); }} + head_coord_{k_or_v}_{p_id} * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid}; // H dim char * container_ptr_base_{guid} = reinterpret_cast({input}) {global_ptr_base_offset} uint32_t page_container_oob_col_{guid} = (-1U << (({tensor_desc}.dims[3] * BYTES_PER_ELEMENT_{p_id}) / 16)); if (elect_one) {{ tma_descriptor_fence_acquire(actual_tma_desc_{guid}); }} char *tma_workspace_{guid} = reinterpret_cast({tma_input}); cudaTmaDesc *actual_tma_desc_{guid} = reinterpret_cast(tma_workspace_{guid}) + (batch_coord_{p_id});{tma_desc_fence_code}{tensor_desc}[batch_coord_{p_id}]{tensor_desc}.dims[{row_offset_index}]reinterpret_cast({page_table_data} + {ragged_offsets}[batch_coord_{p_id}]);reinterpret_cast({page_table_data} + batch_coord_{p_id} * {page_table_desc}.strides[0]); int seq_idx_base_{guid} = row_id_{guid}; // S dim const int block_size_{guid} = {container_desc}.dims[2]; const int log_block_size_{guid} = {log_block_size}; const int block_size_minus_one_{guid} = block_size_{guid} - 1; const int PAGE_TABLE_ELEMENT_SIZE_BYTES_{guid} = {PT_ELEM_BYTES}; uint32_t preloaded_container_block_idx_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}]; char * page_table_base_{guid} = {page_table_base}; char * page_table_idx_{guid}; uint32_t prev_block_idx_{guid} = 0; uint32_t precalc_container_block_element_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}]; precalc_container_block_element_{guid}[j] = cur_seq_idx & block_size_minus_one_{guid}; #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ uint32_t cur_seq_idx = seq_idx_base_{guid} + j * ROWS_PER_LDGSTS_{guid}; page_table_idx_{guid} = page_table_base_{guid} + (cur_seq_idx >> log_block_size_{guid}) * {page_table_desc}.strides[2] * PAGE_TABLE_ELEMENT_SIZE_BYTES_{guid}; preloaded_container_block_idx_{guid}[j] = (cur_seq_idx >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); {modulo_precalculation} }} prev_block_idx_{guid} = preloaded_container_block_idx_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}-1]; + blockIdx.x % num_2d_tile_k * 128 + {head_coord} * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid} // H dim + (col_id_{guid}{D_col_id_offset}) * BYTES_PER_ELEMENT_{guid}; // D dim{ragged_offset_tensor}[batch_coord_{p_id}]batch_coord_{p_id} * {tensor_desc}.strides[0] + {batch_offset_decls} * BYTES_PER_ELEMENT_{guid} + {head_coord} * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid} + (col_id_{guid}{D_col_id_offset}) * BYTES_PER_ELEMENT_{guid} + row_id_{guid} * {tensor_desc}.strides[{row_offset_index}] * BYTES_PER_ELEMENT_{guid}; uint32_t gmem_offset_{guid}[LDGSTS_BLOCKS_{guid}][LDGSTS_STEPS_PER_BLOCK_{guid}]; gmem_offset_{guid}[i][j] = j * ROWS_PER_LDGSTS_{guid} * {tensor_desc}.strides[{row_offset_index}] * BYTES_PER_ELEMENT_{guid} + i * 128; uint32_t ib_bit = (row_id_{guid}{head_offset} + j * ROWS_PER_LDGSTS_{guid} < oob_M_{guid}) && (col_id_{guid} + {D_col_offset} + i * (BYTES_PER_LD_{guid} / BYTES_PER_ELEMENT_{guid}) < oob_N_{guid}); uint32_t oob_bit = (row_id_{guid}{head_offset} + j * ROWS_PER_LDGSTS_{guid} + {oob_offset} * TILE_M_{guid} < oob_M_{guid}); oob_mask_{guid} |= (oob_bit << (i * LDGSTS_STEPS_PER_BLOCK_{guid} + j)); gmem_predicate_{guid} |= (ib_bit << (i * LDGSTS_STEPS_PER_BLOCK_{guid} + j)); const int col_id_{guid} = tid % LDGSTS_THREADS_PER_BLOCK_{guid} * (BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{guid}); const int row_id_{guid} = tid / LDGSTS_THREADS_PER_BLOCK_{guid} + {row_offset}; const int unswizzle_col_id_{guid} = tid % 8; const int unswizzle_row_id_{guid} = tid / 8; uint32_t ldgsts_smem_buffer_offset_{guid} = 0; int oob_M_{guid} = {oob_code}; int oob_N_{guid} = {tensor_desc}.dims[{col_offset_index}]; {paged_cache_load_decls} char *global_ptr_{guid} = reinterpret_cast({input}){global_ptr_base_offset} uint32_t shared_ptr_{guid} = smem_{qkv_code}_{p_id} + (unswizzle_col_id_{guid} ^ (unswizzle_row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + unswizzle_row_id_{guid} * 128;{gmem_offset_declaration} uint32_t gmem_predicate_{guid} = 0u; uint32_t oob_mask_{guid} = 0u; #pragma unroll for (int i = 0; i < LDGSTS_BLOCKS_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{{gmem_predicate} {gmem_offset_calculation} }} }} const int col_id_{guid} = tid % LDGSTS_THREADS_PER_BLOCK_{guid} * (BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{guid}); const int row_id_{guid} = tid / LDGSTS_THREADS_PER_BLOCK_{guid} + {row_offset}; const int unswizzle_col_id_{guid} = tid % 8; const int unswizzle_row_id_{guid} = tid / 8; int oob_M_{guid} = {oob_code}; int oob_N_{guid} = {kv_or_qo}_oob_n_{p_id}; char *global_ptr_{guid} = {kv_or_qo}_ptr_{p_id} + static_cast(batch_coord_{p_id}) * {kv_or_qo}_batch_offset_{p_id} * BYTES_PER_ELEMENT_{guid} + static_cast({head_coord}) * {kv_or_qo}_head_offset_{p_id} * BYTES_PER_ELEMENT_{guid} + col_id_{guid} * BYTES_PER_ELEMENT_{guid} + static_cast(row_id_{guid}) * {kv_or_qo}_row_offset_{p_id} * BYTES_PER_ELEMENT_{guid}; uint32_t shared_ptr_{guid} = ((group_id == 0) ? smem_{q_or_k}_{p_id} : smem_{o_or_v}_{p_id}) + (unswizzle_col_id_{guid} ^ (unswizzle_row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + unswizzle_row_id_{guid} * 128; uint32_t gmem_offset_{guid}[LDGSTS_BLOCKS_{guid}][LDGSTS_STEPS_PER_BLOCK_{guid}]; uint32_t gmem_predicate_{guid} = 0u; uint32_t oob_mask_{guid} = 0u; #pragma unroll for (int i = 0; i < LDGSTS_BLOCKS_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ uint32_t ib_bit = (row_id_{guid} + j * ROWS_PER_LDGSTS_{guid} < oob_M_{guid}) && (col_id_{guid} + i * 64 < oob_N_{guid}); uint32_t oob_bit = (row_id_{guid} + j * ROWS_PER_LDGSTS_{guid} + (qo_loop_right_bound - qo_loop_left_bound - 1) * TILE_M_{guid} < oob_M_{guid}); oob_mask_{guid} |= (oob_bit << (i * LDGSTS_STEPS_PER_BLOCK_{guid} + j)); gmem_predicate_{guid} |= (ib_bit << (i * LDGSTS_STEPS_PER_BLOCK_{guid} + j)); gmem_offset_{guid}[i][j] = j * ROWS_PER_LDGSTS_{guid} * {kv_or_qo}_row_offset_{p_id} * BYTES_PER_ELEMENT_{guid} + i * 128; }} }} r32 reg_{guid}_0[LOADS_PER_GROUP_{guid}]; r32 oob_mask_{guid}[REGS_PER_OOB_MASK_{guid}]{{0}}; r32 gmem_predicate_{guid}[REGS_PER_OOB_MASK_{guid}]{{0}}; int64_t gmem_offset_{guid}[GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid}]; #pragma unroll for (int j = 0; j < GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid}; ++j) {{ #pragma unroll for (int i = 0; i < BLOCKS_PER_CTA_{guid}; ++i) {{ gmem_offset_{guid}[j] = j * ROWS_PER_LOAD_{guid} * {tensor_desc}.leading_stride * BITS_PER_ELEMENT_{guid} / 8; #pragma unroll for (int l = 0; l < LDGS_PER_REGISTER_{guid}; ++l) {{ int index = i * GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid} * LDGS_PER_REGISTER_{guid} + j * LDGS_PER_REGISTER_{guid} + l; int k_offset = i * BYTES_PER_LOAD_{guid} / BITS_PER_ELEMENT_{guid} / 8 + ldgsts_col_id_{guid} + l * LDG_SIZE_IN_BITS_{guid} / BITS_PER_ELEMENT_{guid}; r32 mask_bit = (coord_{m_or_n} + ldgsts_row_id_{guid} + j * ROWS_PER_LOAD_{guid} < {tensor_desc}.{rows_or_cols}) && (k_offset < {tensor_desc}.{cols_or_rows}); gmem_predicate_{guid}[index / BITS_PER_REGISTER_{r_id}] |= (mask_bit << (index % BITS_PER_REGISTER_{r_id})); if ((mainloop_steps - 1) * CTA_TILE_K_{p_id} + k_offset < {tensor_desc}.{cols_or_rows}) {{ oob_mask_{guid}[index / BITS_PER_REGISTER_{r_id}] |= (1 << (index % BITS_PER_REGISTER_{r_id})); }} }} }} }} const char *ptr_{guid} = reinterpret_cast({input_ptr}) + coord_b * {tensor_desc}.batch_stride * BITS_PER_ELEMENT_{guid} / 8 + (coord_{m_or_n} + ldgsts_row_id_{guid}) * {tensor_desc}.leading_stride * BITS_PER_ELEMENT_{guid} / 8 + ldgsts_col_id_{guid} * BITS_PER_ELEMENT_{guid} / 8; uint64_t oob_mask_{guid} = 0ul; uint64_t gmem_predicate_{guid} = 0ul; int64_t gmem_offset_{guid}[ldgsts_blocks_{guid}][ldgsts_steps_per_block_{guid}]; #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ gmem_offset_{guid}[i][j] = j * rows_per_ldgsts_{guid} * {tensor_desc}.leading_stride * BYTES_PER_ELEMENT_{guid} + i * bytes_per_ld_{guid}; #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ int k_offset = i * bytes_per_ld_{guid} / BYTES_PER_ELEMENT_{guid} + ldgsts_col_id_{guid} + l * ldgsts_size_{guid} / BYTES_PER_ELEMENT_{guid}; uint64_t mask_bit = (coord_{m_or_n} + ldgsts_row_id_{guid} + j * rows_per_ldgsts_{guid} < {tensor_desc}.{rows_or_cols}) && (k_offset < {tensor_desc}.{cols_or_rows}); gmem_predicate_{guid} |= (mask_bit << ((i * ldgsts_steps_per_block_{guid} + j) * ldgsts_per_bank_{guid} + l)); if ((mainloop_steps - 1) * CTA_TILE_K_{p_id} + k_offset < {tensor_desc}.{cols_or_rows}) {{ oob_mask_{guid} |= (1ul << ((i * ldgsts_steps_per_block_{guid} + j) * ldgsts_per_bank_{guid} + l)); }} }} }} }} const char *ptr_{guid} = reinterpret_cast({input_ptr}) + coord_b * {tensor_desc}.batch_stride * BYTES_PER_ELEMENT_{guid} + (coord_{m_or_n} + ldgsts_row_id_{guid}) * {tensor_desc}.leading_stride * BYTES_PER_ELEMENT_{guid} + ldgsts_col_id_{guid} * BYTES_PER_ELEMENT_{guid}; + mainloop_steps_start * CTA_TILE_K_{p_id} r32 reg_{guid}_0[LOADS_PER_GROUP_{guid}]; r32 oob_mask_{guid}[REGS_PER_OOB_MASK_{guid}]{{0}}; r32 gmem_predicate_{guid}[REGS_PER_OOB_MASK_{guid}]{{0}}; int64_t gmem_offset_{guid}[GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid}]; #pragma unroll for (int j = 0; j < GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid}; ++j) {{ gmem_offset_{guid}[j] = j * ROWS_PER_LOAD_{guid} * {tensor_desc}.leading_stride * BITS_PER_ELEMENT_{guid} / 8; int32_t k_offset = ldgsts_row_id_{guid} + j * ROWS_PER_LOAD_{guid}; #pragma unroll for (int i = 0; i < BLOCKS_PER_CTA_{guid}; ++i) {{ #pragma unroll for (int l = 0; l < LDGS_PER_REGISTER_{guid}; ++l) {{ int index = i * GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid} * LDGS_PER_REGISTER_{guid} + j * LDGS_PER_REGISTER_{guid} + l; r32 mask_bit = (coord_{m_or_n} + ldgsts_col_id_{guid} + i * BYTES_PER_LOAD_{guid} * 8 / BITS_PER_ELEMENT_{guid} + l * LDG_SIZE_IN_BITS_{guid} / BITS_PER_ELEMENT_{guid} < {tensor_desc}.{rows_or_cols}) && (k_offset < {tensor_desc}.{cols_or_rows}); gmem_predicate_{guid}[index / BITS_PER_REGISTER_{r_id}] |= (mask_bit << (index % BITS_PER_REGISTER_{r_id})); if ((mainloop_steps - 1) * CTA_TILE_K_{p_id} + k_offset < {tensor_desc}.{cols_or_rows}) {{ oob_mask_{guid}[index / BITS_PER_REGISTER_{r_id}] |= (1 << (index % BITS_PER_REGISTER_{r_id})); }} }} }} }} const char *ptr_{guid} = reinterpret_cast({input_ptr}) + coord_b * {tensor_desc}.batch_stride * BITS_PER_ELEMENT_{guid} / 8 + (coord_{m_or_n} + ldgsts_col_id_{guid}) * BITS_PER_ELEMENT_{guid} / 8 + ldgsts_row_id_{guid} * {tensor_desc}.leading_stride * BITS_PER_ELEMENT_{guid} / 8; uint64_t oob_mask_{guid} = 0ul; uint64_t gmem_predicate_{guid} = 0ul; int64_t gmem_offset_{guid}[ldgsts_blocks_{guid}][ldgsts_steps_per_block_{guid}]; #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ int64_t mn_offset = j * rows_per_ldgsts_{guid} * {tensor_desc}.leading_stride * BYTES_PER_ELEMENT_{guid}; int32_t k_offset = ldgsts_row_id_{guid} + j * rows_per_ldgsts_{guid}; #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ gmem_offset_{guid}[i][j] = mn_offset + i * bytes_per_ld_{guid}; #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ uint64_t mask_bit = (coord_{m_or_n} + ldgsts_col_id_{guid} + i * bytes_per_ld_{guid} / BYTES_PER_ELEMENT_{guid} + l * ldgsts_size_{guid} / BYTES_PER_ELEMENT_{guid} < {tensor_desc}.{rows_or_cols}) && (k_offset < {tensor_desc}.{cols_or_rows}); gmem_predicate_{guid} |= (mask_bit << ((i * ldgsts_steps_per_block_{guid} + j) * ldgsts_per_bank_{guid} + l)); }} }} if ((mainloop_steps - 1) * CTA_TILE_K_{p_id} + k_offset < {tensor_desc}.{cols_or_rows}) {{ #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ oob_mask_{guid} |= (1ul << ((i * ldgsts_steps_per_block_{guid} + j) * ldgsts_per_bank_{guid} + l)); }} }} }} }} const char *ptr_{guid} = reinterpret_cast({input_ptr}) + coord_b * {tensor_desc}.batch_stride * BYTES_PER_ELEMENT_{guid} + (coord_{m_or_n} + ldgsts_col_id_{guid}) * BYTES_PER_ELEMENT_{guid} + ldgsts_row_id_{guid} * {tensor_desc}.leading_stride * BYTES_PER_ELEMENT_{guid}; uint32_t oob_mask_{guid}[ldgsts_blocks_{guid}][ldgsts_per_bank_{guid}]; uint32_t gmem_predicate_{guid}[ldgsts_blocks_{guid}][ldgsts_steps_per_block_{guid}]; int64_t gmem_offset_{guid}[ldgsts_blocks_{guid}][ldgsts_steps_per_block_{guid}]; #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ oob_mask_{guid}[i][l] = (ldgsts_col_id_{guid} + (tiles_c - 1) * CTA_TILE_K_{p_id} + i * bytes_per_ld_{guid} / BYTES_PER_ELEMENT_{guid} + l * ldgsts_size_{guid} / BYTES_PER_ELEMENT_{guid} < (int32_t)convDesc.C) ? static_cast(-1) : 0u; }} }} #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ const uint32_t nopq_tmp = coord_m + ldgsts_row_id_{guid} + j * rows_per_ldgsts_{guid}; uint32_t coord_n, coord_o, coord_p, coord_q, opq_tmp, pq_tmp; fastDivMod(convDesc.opq, nopq_tmp, coord_n, opq_tmp); fastDivMod(convDesc.pq, opq_tmp, coord_o, pq_tmp); fastDivMod(convDesc.q, pq_tmp, coord_p, coord_q); const int coord_d = (int)coord_o * (int)convDesc.stride_D - (int)convDesc.padLower_D; const int coord_h = (int)coord_p * (int)convDesc.stride_H - (int)convDesc.padLower_H; const int coord_w = (int)coord_q * (int)convDesc.stride_W - (int)convDesc.padLower_W; gmem_offset_{guid}[i][j] = (coord_n * {tensor_desc}.strides[0] + coord_d * {tensor_desc}.strides[2] + coord_h * {tensor_desc}.strides[3] + coord_w * {tensor_desc}.strides[4]) * BYTES_PER_ELEMENT_{guid} + i * bytes_per_ld_{guid}; gmem_predicate_{guid}[i][j] = ((coord_n < (int32_t)convDesc.N) && (ldgsts_col_id_{guid} + i * bytes_per_ld_{guid} / BYTES_PER_ELEMENT_{guid} < (int32_t)convDesc.C)) ? static_cast(-1) : 0u; #pragma unroll 1 for (int s = 0; s < convDesc.S; ++s) {{ if (static_cast(coord_w + s * convDesc.dilation_W) >= convDesc.W) {{ gmem_predicate_{guid}[i][j] &= ((1u << s) ^ static_cast(-1)); }} }} #pragma unroll 1 for (int r = 0; r < convDesc.R; ++r) {{ if (static_cast(coord_h + r * convDesc.dilation_H) >= convDesc.H) {{ gmem_predicate_{guid}[i][j] &= ((1u << (r + convDesc.S)) ^ static_cast(-1)); }} }} #pragma unroll 1 for (int t = 0; t < convDesc.T; ++t) {{ if (static_cast(coord_d + t * convDesc.dilation_D) >= convDesc.D) {{ gmem_predicate_{guid}[i][j] &= ((1u << (t + r_plus_s)) ^ static_cast(-1)); }} }} }} }} const char *ptr_{guid} = reinterpret_cast({input_ptr}) + ldgsts_col_id_{guid} * BYTES_PER_ELEMENT_{guid}; uint64_t oob_mask_{guid} = 0ul; uint64_t gmem_predicate_{guid} = 0ul; #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ uint64_t mask_bit = (ldgsts_col_id_{guid} + (tiles_c - 1) * CTA_TILE_K_{p_id} + l * ldgsts_size_{guid} / BYTES_PER_ELEMENT_{guid} < (int32_t)convDesc.C); oob_mask_{guid} |= (mask_bit << (j * ldgsts_per_bank_{guid} + l)); mask_bit = (coord_n + ldgsts_row_id_{guid} + j * rows_per_ldgsts_{guid} < (int32_t)convDesc.K) && (ldgsts_col_id_{guid} + l * ldgsts_size_{guid} / BYTES_PER_ELEMENT_{guid} < (int32_t)convDesc.C); gmem_predicate_{guid} |= (mask_bit << (j * ldgsts_per_bank_{guid} + l)); }} }} int64_t gmem_offset_{guid}[ldgsts_blocks_{guid}][ldgsts_steps_per_block_{guid}]; #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ gmem_offset_{guid}[i][j] = (coord_b * (int32_t)convDesc.K + coord_n + ldgsts_row_id_{guid} + j * rows_per_ldgsts_{guid}) * {tensor_desc}.strides[0] * BYTES_PER_ELEMENT_{guid}; }} }} const char *ptr_{guid} = reinterpret_cast({input_ptr}) + ldgsts_col_id_{guid} * BYTES_PER_ELEMENT_{guid}; uint32_t ldgsts_col_id_{guid} = (tid % THREADS_PER_LOAD_{guid}) * (BITS_PER_REGISTER_{r_id} / BITS_PER_ELEMENT_{guid}){split_k_offset_col}; uint32_t ldgsts_row_id_{guid} = tid / THREADS_PER_LOAD_{guid}{split_k_offset_row}; uint32_t ldgsts_smem_buffer_offset_{guid} = 0; #if __CUDA_ARCH__ >= 900 uint32_t ldgsts_unswizzle_col_id_{guid} = wid * 8 + (tiw % 8); uint32_t ldgsts_unswizzle_row_id_{guid} = (tiw / 8) * ROWS_PER_LOAD_{guid}; uint32_t ldgsts_smem_bank_id_{guid} = ldgsts_unswizzle_row_id_{guid} * BYTES_PER_LOAD_{guid} / BYTES_PER_BANK_{p_id} + ldgsts_unswizzle_col_id_{guid}; uint32_t ldgsts_smem_swizzle_{guid} = SMEM_BUFFER_OFFSET_{guid} + (ldgsts_smem_bank_id_{guid} ^ ((ldgsts_smem_bank_id_{guid} / 8) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id}; #else uint32_t ldgsts_unswizzle_col_id_{guid} = tid % THREADS_PER_LOAD_{guid}; uint32_t ldgsts_unswizzle_row_id_{guid} = tid / THREADS_PER_LOAD_{guid}; uint32_t ldgsts_smem_swizzle_{guid}[LOADS_PER_GROUP_{guid}]; #pragma unroll for (int l = 0; l < LOADS_PER_GROUP_{guid}; ++l) {{ uint32_t unswizzled_addr = l * ROWS_PER_LOAD_{guid} * BYTES_PER_LOAD_{guid} + ldgsts_unswizzle_row_id_{guid} * BYTES_PER_LOAD_{guid} + ldgsts_unswizzle_col_id_{guid} * BYTES_PER_REGISTER_{r_id}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / 8) % SWIZZLE_SCALE_{guid}); ldgsts_smem_swizzle_{guid}[l] = SMEM_BUFFER_OFFSET_{guid} + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} #endif const uint32_t ldgsts_col_id_{guid} = tid % ldgsts_threads_per_ld_{guid} * (BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{guid}){split_k_offset_col}; const uint32_t ldgsts_row_id_{guid} = tid / ldgsts_threads_per_ld_{guid}{split_k_offset_row}; const uint32_t ldgsts_unswizzle_col_id_{guid} = tid % 8; const uint32_t ldgsts_unswizzle_row_id_{guid} = tid / 8; uint32_t ldgsts_smem_buffer_offset_{guid} = 0; uint32_t ldgsts_smem_swizzle_{guid} = SMEM_BUFFER_OFFSET_{guid} + (ldgsts_unswizzle_col_id_{guid} ^ (ldgsts_unswizzle_row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + ldgsts_unswizzle_row_id_{guid} * 128; uint32_t ldgsts_smem_offset_{guid}[ldgsts_blocks_{guid}][ldgsts_steps_per_block_{guid}]; #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ ldgsts_smem_offset_{guid}[i][j] = ldgsts_smem_swizzle_{guid} + (i * {smem_offsets_cta_tile} + j * rows_per_ldgsts_{guid}) * bytes_per_ld_{guid}; }} }}gmem_offsets_and_predicates_code{row_col_index_code}{gmem_offsets_and_predicates_code}{smem_offsets_code} uint32_t local_smem_{guid} = smem_{guid} + buffer_id * BYTES_PER_SMEM_{guid}; uint32_t local_smem_{guid} = smem_{guid} + smem_mbar_state.index() * BYTES_PER_SMEM_{guid};(kv_loop - kv_loop_left_bound)ragged_offsets[batch_coord_{p_id}]make_ushort3(filter_s * (int32_t)convDesc.dilation_W, filter_r * (int32_t)convDesc.dilation_H, filter_t * (int32_t)convDesc.dilation_D)make_ushort3(((int32_t)convDesc.S - filter_s - 1) * (int32_t)convDesc.dilation_W, ((int32_t)convDesc.R - filter_r - 1) * (int32_t)convDesc.dilation_H, ((int32_t)convDesc.T - filter_t - 1) * (int32_t)convDesc.dilation_D)coord_c - coord_b * (int32_t)convDesc.Ccoord_c - coord_b * (int32_t)convDesc.Kfilter_t * (int32_t)convDesc.R + filter_r //global_load_shared_store_op {} code if (kv_loop + extra_ldgsts_count == kv_loop_right_bound - 1) {{ gmem_predicate_{guid} &= oob_mask_{guid}; }} else if (kv_loop + extra_ldgsts_count >= kv_loop_right_bound) {{ gmem_predicate_{guid} = 0; }} if (kv_loop == kv_loop_right_bound - 1) {{ gmem_predicate_{guid} &= oob_mask_{guid}; }} (gmem_predicate_{guid} & (1u << (i * LDGSTS_STEPS_PER_BLOCK_{guid} + j))) > 0 uint32_t ib_bit = (row_id_{guid} + {head_coord} + j * ROWS_PER_LDGSTS_{guid} + {oob_offset} * TILE_M_{guid} < oob_M_{guid}) && (col_id_{guid} + {D_col_jump} + i * (BYTES_PER_LD_{guid} / BYTES_PER_ELEMENT_{guid}) < oob_N_{guid}); if (ldgsts_smem_buffer_offset_{guid} >= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{guid}) {{ ldgsts_smem_buffer_offset_{guid} -= (STAGES_{p_id} - 1) * BYTES_PER_SMEM_{guid}; }} else {{ ldgsts_smem_buffer_offset_{guid} += BYTES_PER_SMEM_{guid}; }}+ precalc_container_block_element_{guid}[j] * {container_desc}.strides[2] * BYTES_PER_ELEMENT_{guid} // Page table lookup to retrieve container block index uint64_t container_offset = preloaded_container_block_idx_{guid}[j] * {container_desc}.strides[0] * BYTES_PER_ELEMENT_{guid} {offset_within_block} + i * 128;TILE_M_{guid} * {split_k_factor}d_qk_chunk == (TILE_K_{p_id} / 128 - 1) ? {gmem_base_increment} : 0 seq_idx_base_{guid} += {gmem_base_increment}; ((cur_seq_idx >> log_block_size_{guid})log2_page_table_stride_in_bytes << {log2_page_table_stride_in_bytes}); char * base_page_table_idx_{guid} = page_table_base_{guid} + (seq_idx_base_{guid} >> log_block_size_{guid}) * {page_table_desc}.strides[2] * PAGE_TABLE_ELEMENT_SIZE_BYTES_{guid}; page_table_idx_{guid} = base_page_table_idx_{guid}; preloaded_container_block_idx_{guid}[0] = (seq_idx_base_{guid} >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); preloaded_container_block_idx_{guid}[1] = preloaded_container_block_idx_{guid}[0]; page_table_idx_{guid} = base_page_table_idx_{guid} + {page_table_desc}.strides[2] * PAGE_TABLE_ELEMENT_SIZE_BYTES_{guid}; preloaded_container_block_idx_{guid}[2] = (seq_idx_base_{guid} + ROWS_PER_LDGSTS_{guid} >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); preloaded_container_block_idx_{guid}[3] = preloaded_container_block_idx_{guid}[2]; prev_block_idx_{guid} = preloaded_container_block_idx_{guid}[2]; #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ uint32_t cur_seq_idx = seq_idx_base_{guid} + j * ROWS_PER_LDGSTS_{guid}; page_table_idx_{guid} = page_table_base_{guid} + {seq_idx_to_page_table_idx}; preloaded_container_block_idx_{guid}[j] = (cur_seq_idx >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); }} prev_block_idx_{guid} = preloaded_container_block_idx_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}-1];{page_table_desc}.strides[2] * PAGE_TABLE_ELEMENT_SIZE_BYTES_{guid}d_qk_chunk == (TILE_K_{p_id} / 128 - 1) ? {page_table_idx_increment} : 0 page_table_idx_{guid} += {page_table_idx_increment}; preloaded_container_block_idx_{guid}[0] = (seq_idx_base_{guid} >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); #pragma unroll for (int j = 1; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ preloaded_container_block_idx_{guid}[j] = preloaded_container_block_idx_{guid}[0]; }} prev_block_idx_{guid} = preloaded_container_block_idx_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}-1]; #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ uint32_t cur_seq_idx = seq_idx_base_{guid} + j * ROWS_PER_LDGSTS_{guid}; page_table_idx_{guid} = page_table_base_{guid} + {seq_idx_to_page_table_idx}; preloaded_container_block_idx_{guid}[j] = (cur_seq_idx >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); precalc_container_block_element_{guid}[j] = cur_seq_idx & block_size_minus_one_{guid}; }} prev_block_idx_{guid} = preloaded_container_block_idx_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}-1]; page_table_idx_{guid} = page_table_base_{guid} + (seq_idx_base_{guid} >> log_block_size_{guid}) * {page_table_desc}.strides[2] * PAGE_TABLE_ELEMENT_SIZE_BYTES_{guid}; preloaded_container_block_idx_{guid}[0] = (seq_idx_base_{guid} >= oob_M_{guid}) ? prev_block_idx_{guid} : *reinterpret_cast(page_table_idx_{guid}); precalc_container_block_element_{guid}[0] = seq_idx_base_{guid} & block_size_minus_one_{guid}; #pragma unroll for (int j = 1; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ uint32_t cur_seq_idx = seq_idx_base_{guid} + j * ROWS_PER_LDGSTS_{guid}; preloaded_container_block_idx_{guid}[j] = preloaded_container_block_idx_{guid}[0]; precalc_container_block_element_{guid}[j] = cur_seq_idx & block_size_minus_one_{guid}; }} prev_block_idx_{guid} = preloaded_container_block_idx_{guid}[LDGSTS_STEPS_PER_BLOCK_{guid}-1];{predicate_code} #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ #pragma unroll for (int i = 0; i < LDGSTS_BLOCKS_{guid}; ++i) {{{gmem_offset_calculation}{predicate_code_recomp} ldgsts_128(global_ptr_{guid} + {gmem_offset} + {D_col_jump} * BYTES_PER_ELEMENT_{guid}, shared_ptr_{guid} + ldgsts_smem_buffer_offset_{guid} + j * ROWS_PER_LDGSTS_{guid} * BYTES_PER_LD_{guid} + i * TILE_M_{guid} * BYTES_PER_LD_{guid}, {predicate}); }} }}{gmem_increment}{stage_buffer_increment}{preload_container_idx}gmem_offset_{guid}[i][j] + {D_col_jump} * BYTES_PER_ELEMENT_{guid}{split_k_factor} * TILE_M_{guid} * {tensor_desc}.strides[{row_offset_index}] * BYTES_PER_ELEMENT_{guid}(d_qk_chunk == (TILE_K_{p_id}/128 - 1))? {gmem_base_increment} : 0{predicate_code} #pragma unroll for (int i = 0; i < LDGSTS_BLOCKS_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{{gmem_offset_calculation}{predicate_code_recomp} ldgsts_128(global_ptr_{guid} + {gmem_offset}, shared_ptr_{guid} + ldgsts_smem_buffer_offset_{guid} + j * ROWS_PER_LDGSTS_{guid} * BYTES_PER_LD_{guid} + i * TILE_M_{guid} * BYTES_PER_LD_{guid}, {predicate}); }} }} global_ptr_{guid} += {gmem_increment};{stage_buffer_increment} #pragma unroll for (int i = 0; i < TILE_{K_or_O}_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_q + {smem_offset_code}, local_smem_bar_tma_q, {split_D}i / BYTES_PER_ELEMENT_{p_id}, {q_row_coord}, head_coord_{p_id} + {head_coord_loc}, {batch_coord_code}, elect_one); }} #pragma unroll for (int i = 0; i < TILE_{K_or_O}_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_k + i * TILE_N_{p_id}, local_smem_bar_tma_k, {split_D}i / BYTES_PER_ELEMENT_{p_id}, p_col_coord, head_coord_k_{p_id}, {batch_coord_code}, elect_one); }}lean_tile_id % num_2d_tile_k * 128blocked_row_coord % num_2d_tile_k * 128 #pragma unroll for (int i = 0; i < TILE_{K_or_O}_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_v + i * TILE_N_{p_id}, local_smem_bar_tma_v, {D_col_jump} + i / BYTES_PER_ELEMENT_{p_id}, p_col_coord, head_coord_v_{p_id}, {batch_coord_code}, elect_one); }}(blocked_row_coord % num_2d_tile_k * 128) ERROR: UNSUPPORTED PAGE TABLE BIT ACCESS SIZE; ldg_{bpa}(local_pages, page_table_base_{guid} + {ragged_offset} + (current_s_kv >> log_block_size_{guid}) * page_table_desc_{guid}.strides[2]); if(elect_one){{ uint32_t local_pages[4] = {{0,0,0,0}}; #pragma unroll for (int j = 0; j < TILE_N_{p_id}; j+={tma_box_size_1} * {pages_per_ldg}) {{ uint32_t current_s_kv = p_col_coord + j; uint32_t oob_mask = 1 << (j/({tma_box_size_1} * {pages_per_ldg})); if((page_table_oob_{guid} & oob_mask) != oob_mask){{{page_table_lookup_code} }} #pragma unroll for(int page_no=0; page_no < {pages_per_ldg}; ++page_no) {{ current_s_kv += page_no * {tma_box_size_1}; uint32_t s_kv_incr = current_s_kv - p_col_coord; uint32_t page_elem = current_s_kv & block_size_minus_one_{guid}; for (int i = 0; i < TILE_{K_or_O}_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += {tma_box_size_0}) {{ utmaldg_4d_tiled({tma_input}, local_smem_{k_or_v} + i * TILE_N_{p_id} + (j + page_no * {tma_box_size_1}) * {tma_box_size_0}, local_smem_bar_tma_{k_or_v}, {D_col_jump} + i / BYTES_PER_ELEMENT_{p_id}, page_elem, head_coord_{k_or_v}_{p_id}, local_pages[page_no], elect_one); }} }} }} }}((p_col_coord + row_id) & static_cast(block_size_minus_one_{guid})) * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid} #pragma unroll 1 for (int i = 0; i < TILE_{K_or_O}_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ #pragma unroll for (int j=0; j < {elements_per_thread}; ++j) {{ uint32_t row_id = (tiw << 2) + j; #pragma unroll for (int col_id = 0; col_id < 8; col_id++) {{ uint32_t unswizzled_col_id = col_id; uint32_t unswizzled_row_id = row_id & ((1 << 3) - 1); // row_id % 8 uint32_t smem_offset = (unswizzled_col_id ^ unswizzled_row_id) * BYTES_PER_BANK_{p_id} + row_id * 128; ldgsts_128(container_ptr_base_{guid} + container_{k_or_v}_page_index[j/{elements_per_page}] * {tensor_desc}.strides[0] * BYTES_PER_ELEMENT_{p_id} // Block + {element_within_block_code} // Seq within block + {D_col_jump} * BYTES_PER_ELEMENT_{p_id} + i + col_id * {bytes_per_ldgsts} // D , local_smem_{k_or_v} + smem_offset + i * TILE_N_{p_id} , ! (((page_container_oob_row_{k_or_v} & (1 << j)) == (1 << j)) || ((page_container_oob_col_{guid} & (1 << (i/16 + col_id))) == (1 << (i/16 + col_id))))); }} }} }} #pragma unroll for (int i = 0; i < TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_k + {smem_offset_code}, local_smem_bar_tma_kv, i / BYTES_PER_ELEMENT_{p_id}, kv_row_coord, head_coord_k_{p_id}, {batch_coord_code}, elect_one); }} #pragma unroll for (int i = 0; i < TILE_V_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_v + {smem_offset_code}, local_smem_bar_tma_kv, i / BYTES_PER_ELEMENT_{p_id}, kv_row_coord, head_coord_v_{p_id}, {batch_coord_code}, elect_one); }} #pragma unroll for (int i = 0; i < TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_q + i * TILE_N_{p_id}, local_smem_bar_tma_q, i / BYTES_PER_ELEMENT_{p_id}, qo_col_coord, head_coord_{p_id}, {batch_coord_code}, elect_one); }} #pragma unroll for (int i = 0; i < TILE_V_{p_id} * BYTES_PER_ELEMENT_{p_id}; i += 128) {{ utmaldg_4d_tiled({tma_input}, local_smem_do + i * TILE_N_{p_id}, local_smem_bar_tma_do, i / BYTES_PER_ELEMENT_{p_id}, qo_col_coord, head_coord_{p_id}, {batch_coord_code}, elect_one); }} if (qo_loop == qo_loop_right_bound - 2) {{ gmem_predicate_{guid} &= oob_mask_{guid}; }} else if (qo_loop > qo_loop_right_bound - 2) {{ gmem_predicate_{guid} = 0; }}{predicate_code} #pragma unroll for (int i = 0; i < LDGSTS_BLOCKS_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < LDGSTS_STEPS_PER_BLOCK_{guid}; ++j) {{ ldgsts_128(global_ptr_{guid} + gmem_offset_{guid}[i][j], shared_ptr_{guid} + j * ROWS_PER_LDGSTS_{guid} * BYTES_PER_LD_{guid} + i * TILE_M_{guid} * BYTES_PER_LD_{guid} + {buffer_offset}, (gmem_predicate_{guid} & (1u << (i * LDGSTS_STEPS_PER_BLOCK_{guid} + j))) > 0); }} }} global_ptr_{guid} += TILE_M_{guid} * qo_row_offset_{p_id} * BYTES_PER_ELEMENT_{guid}; + i * CTA_TILE_M_{p_id} * 128 + i * CTA_TILE_K_{p_id} * 128 + i * CTA_TILE_N_{p_id} * 128 #pragma unroll for (int i = 0; i < {steps}; ++i) {{ + (cta_id_in_cga.{x_or_y} * CTA_TILE_K_{p_id} / CGA_N_{p_id}) + (cta_id_in_cga.{x_or_y} * CTA_TILE_M_{p_id} / CGA_N_{p_id}) + (cta_id_in_cga.{x_or_y} * 4 / CGA_N_{p_id}) + ((cta_id_in_cga.x / CTA_MMA_{p_id} + (cta_id_in_cga.x % CTA_MMA_{p_id}) * (CGA_M_{p_id} / CTA_MMA_{p_id})) * CTA_TILE_N_{p_id} / CGA_M_{p_id}) + (cta_id_in_cga.x / CTA_MMA_{p_id}) * CTA_TILE_K_{p_id} / (CGA_M_{p_id} / CTA_MMA_{p_id}) + (cta_id_in_cga.x % CTA_MMA_{p_id}) * CTA_TILE_N_{p_id} / CTA_MMA_{p_id} + (cta_id_in_cga.x * 4 / CGA_M_{p_id}) + (cta_id_in_cga.{x_or_y} * CTA_TILE_K_{p_id} / CGA_M_{p_id}) + (cta_id_in_cga.{x_or_y} * CTA_TILE_N_{p_id} / CGA_M_{p_id}) + (cta_id_in_cga.{x_or_y} * 4 / CGA_M_{p_id}) utmaldg_3d_tiled{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, {coord_0}{coord_offset}, {coord_1}{multicast_coord_offset}, {coord_2}, {multicast_mask} elect_one); #pragma unroll for (int {m_or_n} = 0; {m_or_n} < NUM_BLOCKS_{M_or_N}_{m_id}; ++{m_or_n}) {{ #pragma unroll for (int k = 0; k < NUM_BLOCKS_K_{m_id}; ++k) {{ utmaldg_5d_tiled{multicast_suffix}{two_cta_mma_suffix}( &{tma_input}, local_smem_{guid} + ({m_or_n} * NUM_BLOCKS_K_{m_id} + k) * BYTES_PER_BLOCK_{m_id}, local_bar_{m_id}, 0, 0{multicast_coord_offset}, (coord_k / CTA_TILE_K_{p_id}) * NUM_BLOCKS_K_{m_id} + k, (coord_{m_or_n} / CTA_TILE_{M_or_N}_{p_id}) * NUM_BLOCKS_{M_or_N}_{m_id} + {m_or_n}, {coord_b}, {multicast_mask} elect_one ); }} }} utmaldg_5d_im2col{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, coord_c{coord_offset}, coord_q, coord_p, coord_o, coord_n, {filter_coord}, {multicast_mask} elect_one); utmaldg_5d_tiled{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, {coord_0}{coord_offset}, filter_s, {filter_coord}, {group_coord}, {coord_1}{multicast_coord_offset}, {multicast_mask} elect_one); utmaldg_2d_tiled{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, coord_k{coord_offset}, coord_nopq{multicast_coord_offset}, {multicast_mask} elect_one); {{ int32_t coord_o, coord_p, coord_q, coord_n; uint32_t pqn, qn; fastDivMod(convDesc.pqn, coord_nopq, reinterpret_cast(coord_o), pqn); fastDivMod(convDesc.qn, pqn, reinterpret_cast(coord_p), qn); fastDivMod(convDesc.n, qn, reinterpret_cast(coord_q), reinterpret_cast(coord_n)); utmaldg_5d_tiled{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, coord_n, coord_q, coord_p, coord_o, coord_k{coord_offset}{multicast_coord_offset}, {multicast_mask} elect_one); }} {{ int32_t coord_n, coord_o, coord_p, coord_q; uint32_t opq, pq; fastDivMod(convDesc.opq, coord_nopq{multicast_coord_offset}, reinterpret_cast(coord_n), opq); fastDivMod(convDesc.pq, opq, reinterpret_cast(coord_o), pq); fastDivMod(convDesc.q, pq, reinterpret_cast(coord_p), reinterpret_cast(coord_q)); coord_o = coord_o * (int32_t)convDesc.stride_D - (int32_t)convDesc.padLower_D; coord_p = coord_p * (int32_t)convDesc.stride_H - (int32_t)convDesc.padLower_H; coord_q = coord_q * (int32_t)convDesc.stride_W - (int32_t)convDesc.padLower_W; utmaldg_5d_im2col{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, coord_c{coord_offset}, coord_q, coord_p, coord_o, coord_n, make_ushort3(filter_s * (int32_t)convDesc.dilation_W, filter_r * (int32_t)convDesc.dilation_H, filter_t * (int32_t)convDesc.dilation_D), {multicast_mask} elect_one); }} {{ int32_t coord_o, coord_p, coord_q, coord_n; uint32_t pqn, qn; fastDivMod(convDesc.pqn, coord_nopq, reinterpret_cast(coord_o), pqn); fastDivMod(convDesc.qn, pqn, reinterpret_cast(coord_p), qn); fastDivMod(convDesc.n, qn, reinterpret_cast(coord_q), reinterpret_cast(coord_n)); uint32_t coord_d = coord_o * (int32_t)convDesc.stride_D + pad_d; uint32_t coord_h = coord_p * (int32_t)convDesc.stride_H + pad_h; uint32_t coord_w = coord_q * (int32_t)convDesc.stride_W + pad_w; utmaldg_5d_tiled{multicast_suffix}{two_cta_mma_suffix}(&{tma_input}, local_smem_{guid}{smem_offset}, local_bar_{mainloop_op_guid}, coord_n{coord_offset}, coord_w, coord_h, coord_d, coord_c{multicast_coord_offset}, {multicast_mask} elect_one); }}gmem_predicate_{guid}[index / BITS_PER_REGISTER_{r_id}] & (1 << (index % BITS_PER_REGISTER_{r_id}))(gmem_predicate_{guid} & (1ul << ((i * ldgsts_steps_per_block_{guid} + j) * ldgsts_per_bank_{guid} + l))) > 0(((coord_c == tiles_c - 1 ? (gmem_predicate_{guid}[i][j] & oob_mask_{guid}[i][l]) : gmem_predicate_{guid}[i][j]) & filter_mask) == filter_mask) int64_t filter_offset_{guid} = (filter_t * (int32_t)convDesc.dilation_D * {tensor_desc}.strides[2] + filter_r * (int32_t)convDesc.dilation_H * {tensor_desc}.strides[3] + filter_s * (int32_t)convDesc.dilation_W * {tensor_desc}.strides[4] + coord_b * (int32_t)convDesc.C + coord_c * CTA_TILE_K_{p_id}) * BYTES_PER_ELEMENT_{guid};(gmem_predicate_{guid} & (1ul << (j * ldgsts_per_bank_{guid} + l))) > 0 int64_t filter_offset_{guid} = (filter_t * {tensor_desc}.strides[2] + filter_r * {tensor_desc}.strides[3] + filter_s * {tensor_desc}.strides[4] + coord_c * CTA_TILE_K_{p_id}) * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int x = 0; x < LOADS_PER_GROUP_{guid}; ++x) {{ reg_{guid}_0[x] = 0x7FF77FF7; }} memset(reg_{guid}_0, 0, sizeof(reg_{guid}_0));{calculate_filter_offset} #pragma unroll for (int i = 0; i < BLOCKS_PER_CTA_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < GROUPS_PER_BLOCK_{guid}; ++j) {{{register_reset_code} #pragma unroll for (int k = 0; k < LOADS_PER_GROUP_{guid}; ++k) {{ #pragma unroll for (int l = 0; l < LDGS_PER_REGISTER_{guid}; ++l) {{ int index = i * GROUPS_PER_BLOCK_{guid} * LOADS_PER_GROUP_{guid} * LDGS_PER_REGISTER_{guid} + j * LOADS_PER_GROUP_{guid} * LDGS_PER_REGISTER_{guid} + k * LDGS_PER_REGISTER_{guid} + l; if ({oob_mask_code}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast(®_{guid}_0[k]) + l * LDG_SIZE_IN_BITS_{guid} / 8), ptr_{guid} + gmem_offset_{guid}[j * LOADS_PER_GROUP_{guid} + k]{apply_filter_offset} + i * BYTES_PER_LOAD_{guid} + l * LDG_SIZE_IN_BITS_{guid} / 8); }} }} }} #if __CUDA_ARCH__ >= 900 STSM_{guid}(smem_{r_id} + ldgsts_smem_swizzle_{guid} + ldgsts_smem_buffer_offset_{guid} + (i * ROWS_PER_TILE_{guid} + j * LOADS_PER_GROUP_{guid} * ROWS_PER_LOAD_{guid}) * BYTES_PER_LOAD_{guid}, reg_{guid}_0); #else uint32_t dst_smem = smem_{r_id} + ldgsts_smem_buffer_offset_{guid} + (i * ROWS_PER_TILE_{guid} + j * LOADS_PER_GROUP_{guid} * ROWS_PER_LOAD_{guid}) * BYTES_PER_LOAD_{guid}; #pragma unroll for (int x = 0; x < LOADS_PER_GROUP_{guid}; ++x) {{ sts_32(dst_smem + ldgsts_smem_swizzle_{guid}[x], ®_{guid}_0[x]); }} #endif }} }}{calculate_filter_offset} if (MAXIMUM_ROWS_PER_TILE_{guid} >= rows_per_ldgsts_{guid} || tid < WORKING_THREADS_{guid}) {{ #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ const bool current_mask = {oob_mask_code}; if (current_mask) {{ fort::ldgsts_{ldgsts_size_in_bits}(ptr_{guid} + gmem_offset_{guid}[i][j]{apply_filter_offset} + l * ldgsts_size_{guid}, smem_{r_id} + ldgsts_smem_offset_{guid}[i][j] + ldgsts_smem_buffer_offset_{guid}, current_mask); }} else {{ fort::sts_{ldgsts_size_in_bits}(smem_{r_id} + ldgsts_smem_offset_{guid}[i][j] + ldgsts_smem_buffer_offset_{guid} + l * ldgsts_size_{guid}, oob_padding_vals_{p_id}); }} }} }} }} }}{calculate_filter_offset} if (MAXIMUM_ROWS_PER_TILE_{guid} >= rows_per_ldgsts_{guid} || tid < WORKING_THREADS_{guid}) {{ #pragma unroll for (int i = 0; i < ldgsts_blocks_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < ldgsts_steps_per_block_{guid}; ++j) {{ #pragma unroll for (int l = 0; l < ldgsts_per_bank_{guid}; ++l) {{ const bool current_mask = {oob_mask_code}; fort::ldgsts_{ldgsts_size_in_bits}(ptr_{guid} + gmem_offset_{guid}[i][j]{apply_filter_offset} + l * ldgsts_size_{guid}, smem_{r_id} + ldgsts_smem_offset_{guid}[i][j] + ldgsts_smem_buffer_offset_{guid} + l * ldgsts_size_{guid}, current_mask); }} }} }} }} + i * (128 / BYTES_PER_ELEMENT_{guid})bytes_per_elementbytes_per_access / BLOCK_SCALE_BLOCK_SIZE_{} / CTA_MMA_{}block_size_factortwo_cta_mma_factorx_or_yp_row_{p_id}page_table_descpage_table_data{page_table_data};container_descPT_ELEM_BYTESlog_block_sizepage_table_basek_or_vglobal_ptr_base_offsetbytes_per_ldgststma_inputtma_desc_fence_codehead_coord_k_{p_id}head_coord_v_{p_id}actual_seqlen_q_{}ragged_offsetsmodulo_precalculationragged_offset_tensorbatch_offset_decls + head_coord_{}oob_offsethead_offsetpaged_cache_load_declsqkv_codecol_offset_indexgmem_offset_declarationgmem_offset_calculationgmem_predicatekv_head_coord_{p_id}kv_or_qo{kv_or_qo}_oob_m_{p_id}q_or_ko_or_vinput_ptrrows_or_colscols_or_rowsCTA_TILE_{M_or_N}_{p_id}CTA_TILE_K_{p_id}CTA_TILE_M_{p_id}CTA_TILE_N_{p_id}split_k_offset_colsplit_k_offset_rowsmem_offsets_cta_tilerow_col_index_codesmem_offsets_codehead_coord_locd_qk_chunk * 128 + coord_kcoord_ncoord_mcoord_cfilter_td_qk_chunk * 128ib_bitD_col_jumpoffset_within_blockcontainer_offsetgmem_base_increment (cur_seq_idxconst_strides * {const_strides});seq_idx_to_page_table_idxpage_table_idx_incrementgmem_offsetgmem_incrementstage_buffer_incrementpredicate_codepreload_container_idxpredicate_code_recompactual_tma_desc_{guid}&{tma_input}batch_coord_{p_id}i * TILE_M_{} * 2i * TILE_M_{}split_Dbatch_coord_codeq_row_coordtma_box_size_0page_table_lookup_codeelement_within_block_codeelements_per_threadelements_per_pageldgsts_buf_qo_id * SMEM_Q_{}buffer_offset / CTA_MMA_{p_id}_multicastmulticast_mask_a,_2ctamulticast_mask_b,multicast_mask_b_scale,mainloop_op_guidcoord_0coord_1coord_2multicast_suffixtwo_cta_mma_suffixmulticast_maskmulticast_coord_offsetfilter_coordgroup_coord+ filter_offset_{guid}ldgsts_size_in_bitsoob_mask_codecalculate_filter_offsetapply_filter_offsetregister_reset_code(kv_loop_right_b #define BMM_S_GMMA hgmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem #define BMM_S_GMMA_ISB hgmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_isb #define BMM_S_GMMA_C0 hgmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_ignoreC #define BMM_S_GMMA bf16gmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem #define BMM_S_GMMA_ISB bf16gmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_isb #define BMM_S_GMMA_C0 bf16gmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_ignoreC #define BMM_S_GMMA e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_S_GMMA_ISB e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_S_GMMA_C0 e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_S_GMMA e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_S_GMMA_ISB e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_S_GMMA_C0 e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_S_GMMA e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_S_GMMA_ISB e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_S_GMMA_C0 e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_S_GMMA e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_S_GMMA_ISB e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_S_GMMA_C0 e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_DP_GMMA hgmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem #define BMM_DP_GMMA_ISB hgmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_isb #define BMM_DP_GMMA_C0 hgmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_ignoreC #define BMM_DP_GMMA bf16gmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem #define BMM_DP_GMMA_ISB bf16gmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_isb #define BMM_DP_GMMA_C0 bf16gmma_fp32_64x{cta_tile_n}x16_TN_asmem_bsmem_ignoreC #define BMM_DP_GMMA e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_DP_GMMA_ISB e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_DP_GMMA_C0 e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_DP_GMMA e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_DP_GMMA_ISB e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_DP_GMMA_C0 e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_DP_GMMA e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_DP_GMMA_ISB e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_DP_GMMA_C0 e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_DP_GMMA e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem #define BMM_DP_GMMA_ISB e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_isb #define BMM_DP_GMMA_C0 e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_asmem_bsmem_ignoreC #define BMM_{O_DV}_GMMA hgmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem #define BMM_{O_DV}_GMMA_ISB hgmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_isb #define BMM_{O_DV}_GMMA_C0 hgmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_ignoreC #define BMM_{O_DV}_GMMA bf16gmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem #define BMM_{O_DV}_GMMA_ISB bf16gmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_isb #define BMM_{O_DV}_GMMA_C0 bf16gmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_ignoreC #define BMM_{O_DV}_GMMA e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_{O_DV}_GMMA_ISB e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_{O_DV}_GMMA_C0 e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_{O_DV}_GMMA e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_{O_DV}_GMMA_ISB e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_{O_DV}_GMMA_C0 e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_{O_DV}_GMMA e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_{O_DV}_GMMA_ISB e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_{O_DV}_GMMA_C0 e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_{O_DV}_GMMA e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_{O_DV}_GMMA_ISB e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_{O_DV}_GMMA_C0 e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DK_GMMA hgmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem #define BMM_DK_GMMA_ISB hgmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_isb #define BMM_DK_GMMA_C0 hgmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_ignoreC #define BMM_DK_GMMA bf16gmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem #define BMM_DK_GMMA_ISB bf16gmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_isb #define BMM_DK_GMMA_C0 bf16gmma_fp32_64x{cta_tile_n}x16_TT_arf_bsmem_ignoreC #define BMM_DK_GMMA e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DK_GMMA_ISB e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DK_GMMA_C0 e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DK_GMMA e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DK_GMMA_ISB e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DK_GMMA_C0 e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DK_GMMA e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DK_GMMA_ISB e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DK_GMMA_C0 e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DK_GMMA e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DK_GMMA_ISB e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DK_GMMA_C0 e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DQ_GMMA hgmma_fp32_64x{cta_tile_n}x16_NT_asmem_bsmem #define BMM_DQ_GMMA_ISB hgmma_fp32_64x{cta_tile_n}x16_NT_asmem_bsmem_isb #define BMM_DQ_GMMA_C0 hgmma_fp32_64x{cta_tile_n}x16_NT_asmem_bsmem_ignoreC #define BMM_DQ_GMMA bf16gmma_fp32_64x{cta_tile_n}x16_NT_asmem_bsmem #define BMM_DQ_GMMA_ISB bf16gmma_fp32_64x{cta_tile_n}x16_NT_asmem_bsmem_isb #define BMM_DQ_GMMA_C0 bf16gmma_fp32_64x{cta_tile_n}x16_NT_asmem_bsmem_ignoreC #define BMM_DQ_GMMA e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DQ_GMMA_ISB e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DQ_GMMA_C0 e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DQ_GMMA e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DQ_GMMA_ISB e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DQ_GMMA_C0 e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DQ_GMMA e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DQ_GMMA_ISB e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DQ_GMMA_C0 e4m3e5m2gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #define BMM_DQ_GMMA e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem #define BMM_DQ_GMMA_ISB e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_isb #define BMM_DQ_GMMA_C0 e5m2e4m3gmma_fp32_64x{cta_tile_n}x32_TN_arf_bsmem_ignoreC #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < ACC_COUNT_{guid}; ++i) {{ reinterpret_cast(reg_{guid}_0[m][n][i]) += reinterpret_cast(reg_{guid}_1[m][n][i]); }} }} }} memset(®_{guid}_1[0][0][0], 0, sizeof(reg_{guid}_1));{gmma_input_type}gmma_{output_type}_{m}x{n}x{k}_{layout}_a{a_loc}_bsmem{isb}({a}, single_desc_b, {acc_name}[m]);__wgmma_mma_async_{dtype}({m}, {n}, {k}, {transA} /*negA=*/false, {transB} /*negB=*/false, /*scaleResult=*/true, {resultF16} {acc_name}[m], {a}, single_desc_b); warpgroup_commit(); static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_element}; static constexpr int BYTES_PER_ACC_{guid} = {bytes_per_acc}; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int WARP_TILE_K_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int TILE_K_{guid} = {tile_k}; static constexpr int WARPS_M_{guid} = {warps_m}; static constexpr int WARPS_N_{guid} = {warps_n}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int MMA_STEPS_K_{guid} = TILE_K_{guid} / WARP_TILE_K_{guid}; static constexpr int WARP_REGS_{guid} = 8; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid}; static constexpr int ROWS_PER_CORE_MATRIX_A_{guid} = {rows_per_core_matrix_a}; static constexpr int COLS_PER_CORE_MATRIX_A_{guid} = {cols_per_core_matrix_a}; static constexpr int ROWS_PER_CORE_MATRIX_B_{guid} = {rows_per_core_matrix_b}; static constexpr int COLS_PER_CORE_MATRIX_B_{guid} = {cols_per_core_matrix_b}; static constexpr int ACC_COUNT_{guid} = (GMMA_TILE_M_{p_id} * GMMA_TILE_N_{p_id}) / THREADS_PER_WARP_GROUP_{r_id} / {elems_per_reg}; static constexpr uint32_t BYTES_PER_GMMA_K_A_{guid} = {bytes_per_gmma_k_a}; static constexpr uint32_t BYTES_PER_GMMA_K_B_{guid} = {bytes_per_gmma_k_b}; static constexpr uint32_t BYTES_PER_GMMA_K_NO_4LSB_A_{guid} = BYTES_PER_GMMA_K_A_{guid} >> 4; static constexpr uint32_t BYTES_PER_GMMA_K_NO_4LSB_B_{guid} = BYTES_PER_GMMA_K_B_{guid} >> 4; static constexpr uint64_t gmma_desc_a_{guid} = {gmma_desc_a}; static constexpr uint64_t gmma_desc_b_{guid} = {gmma_desc_b}; static constexpr uint32_t XMMAS_N_{guid} = CTA_TILE_N_{p_id} / 16; if (!LAST_OF_K_BLOCK) {{ if(this->clear_acc_tmp_) {{ this->clear_acc_tmp(); this->clear_acc_tmp_ = 0; }} }} this->acc_needs_update_ = 1; if (LAST_OF_K_BLOCK) {{ this->gmma_count_ += XMMAS_K_{p_id}; this->clear_acc_tmp_ = this->gmma_count_ == GMMA_ACC_UPDATE_COUNT_{p_id}; if(this->clear_acc_tmp_) {{ this->gmma_count_ = 0; this->update_accumulators(); }} }} const int row_id_b = tiw % 16; const int col_id_b = tiw / 16; #pragma unroll for (int n = 0; n < 4; ++n) {{ precompute_b_offset[n] = smem_b + row_id_b * (128 >> {swizzle_factor}) + ((col_id_b + n * 2) ^ ((row_id_b % 8) >> {swizzle_factor})) * BYTES_PER_BANK_{p_id}; }} const int col_id_b = tiw % 16; const int row_id_b = tiw / 16; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ precompute_b_offset[k] = smem_b + col_id_b * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id} + ((row_id_b + k * 2) ^ ((col_id_b % 8) >> {swizzle_factor})) * BYTES_PER_BANK_{p_id}; }} bool reset_buffer = false; if(desc_b[0].desc >= desc_b[0].max_desc) {{ reset_buffer = true; }} {{ uint64_t temp_desc = desc_b[0].desc; int2 &tmp = reinterpret_cast( temp_desc ); tmp.x += (reset_buffer == true) ? -(BYTES_PER_SMEM_B_{p_id} >> 4) * (STAGES_{p_id} - 1) : (BYTES_PER_SMEM_B_{p_id} >> 4); desc_b[0].desc = temp_desc; }} inline __device__ Compute_tile_{guid}(uint32_t smem_a, uint32_t smem_b, int tiw, int wid) {desc_b_ctor} {{ const int col_id_a = tiw % GMMA_TILE_K_{p_id}; const int row_id_a = tiw / GMMA_TILE_K_{p_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ precompute_a_offset[k] = smem_a + (col_id_a + k * GMMA_TILE_K_{p_id}) * GMMA_TILE_M_{p_id} * BYTES_PER_ELEMENT_{p_id} + ((wid * 2 + row_id_a) ^ ((col_id_a % 8) >> {swizzle_factor})) * BYTES_PER_BANK_{p_id}; }} {offsets_b_code} }} inline __device__ Compute_tile_{guid}(uint32_t smem_a, uint32_t smem_b, int tiw, int wid) {desc_b_ctor} {{ static const int ROWS_PER_WARP = (GMMA_TILE_M_{p_id} / WARPS_PER_GROUP_{r_id}); const int row_id_a = tiw % ROWS_PER_WARP; const int col_id_a = tiw / ROWS_PER_WARP; uint32_t warp_offset = wid * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id} * ROWS_PER_WARP; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ precompute_a_offset[k] = smem_a + warp_offset + row_id_a * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id} + ((col_id_a + k * 2) ^ ((row_id_a % 8) >> {swizzle_factor})) * BYTES_PER_BANK_{p_id}; }} {offsets_b_code} }} inline __device__ void load_a(int k, int buffer_id, r32 a[XMMAS_K_{p_id}][XMMAS_M_{p_id}][REGISTERS_PER_VECTOR_{p_id}]) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ r32 tmp[4]; ldsmt_x4(tmp, precompute_a_offset[k] + m * CTA_TILE_K_{p_id} * GMMA_TILE_M_{p_id} * BYTES_PER_ELEMENT_{p_id} + buffer_id * BYTES_PER_SMEM_A_{p_id}); a[k][m][0] = tmp[0]; a[k][m][1] = tmp[2]; a[k][m][2] = tmp[1]; a[k][m][3] = tmp[3]; }} }} inline __device__ void load_a(int k, int buffer_id, r32 a[XMMAS_K_{p_id}][XMMAS_M_{p_id}][REGISTERS_PER_VECTOR_{p_id}]) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ ldsm_x4(a[k][m], precompute_a_offset[k] + m * CTA_TILE_K_{p_id} * GMMA_TILE_M_{p_id} * BYTES_PER_ELEMENT_{p_id} + buffer_id * BYTES_PER_SMEM_A_{p_id}); }} }} template inline __device__ void compute(int k, r32 a[XMMAS_K_{p_id}][XMMAS_M_{p_id}][NUM_GMMA_A_REGISTERS_{p_id}]) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{guid}; ++n) {{ {gmma_input_type}mma_{output_type}_16x16x16(a[k][m], b[k][n], &(acc[m][n * 8])); }} }} }} template inline __device__ void compute(int k, r32 a[XMMAS_K_{p_id}][XMMAS_M_{p_id}][NUM_GMMA_A_REGISTERS_{p_id}]) {{{clear_acc_tmp_code} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ uint64_t single_desc_b = desc_b[0].desc; uint2 &tmp_desc_b = reinterpret_cast(desc_b[0].desc); if (LAST_OF_K_BLOCK) {{ if (m == XMMAS_M_{p_id} - 1) {{ tmp_desc_b.x -= BYTES_PER_GMMA_K_NO_4LSB_B_{guid} * (XMMAS_K_{p_id} - 1); }} }} else {{ if (m == XMMAS_M_{p_id} - 1) {{ tmp_desc_b.x += BYTES_PER_GMMA_K_NO_4LSB_B_{guid}; }} }} if (DO_ISB && m == XMMAS_M_{p_id} - 1) {{ {mma_isb} }} else {{ {mma_no_isb} }} }}{update_acc_tmp_code} }} uint32_t precompute_a_offset[XMMAS_K_{p_id}]; inline __device__ void load_b(int k, int buffer_id) {{ #pragma unroll for (int i = 0; i < FORT_MAX(CTA_TILE_N_{p_id} / 64, 1); ++i) {{ #pragma unroll for (int n = 0; n < (4 >> {swizzle_factor}); ++n) {{ ldsmt_x4(b[k][i*4 + n], precompute_b_offset[n] + k * 16 * (128 >> {swizzle_factor}) + i * CTA_TILE_K_{p_id} * (128 >> {swizzle_factor}) + buffer_id * BYTES_PER_SMEM_B_{p_id}); }} }} }} inline __device__ void load_b(int k, int buffer_id) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{guid}; ++n) {{ r32 tmp[4]; ldsm_x4(tmp, precompute_b_offset[k] + n * CTA_TILE_K_{p_id} * 16 * BYTES_PER_ELEMENT_{p_id} + buffer_id * BYTES_PER_SMEM_B_{p_id}); b[k][n][0] = tmp[0]; b[k][n][1] = tmp[2]; b[k][n][2] = tmp[1]; b[k][n][3] = tmp[3]; }} }} r32 b[XMMAS_K_{p_id}][XMMAS_N_{guid}][4]; uint32_t precompute_b_offset[4]; inline __device__ void load_b(int k, int buffer_id) {{ }} Gmma_descriptor_b_{guid} desc_b[1]; inline __device__ Compute_tile_{guid}(uint32_t smem_a, uint32_t smem_b, int tiw, int wid) : desc_a(), desc_b() {{ #pragma unroll for( int xmma_m_idx = 0; xmma_m_idx < XMMAS_M_{p_id}; ++xmma_m_idx ) {{ uint32_t smem_loc = smem_a + xmma_m_idx * GMMA_TILE_M_{p_id} * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}; desc_a[xmma_m_idx].set_smem(smem_loc); }} desc_b[0].set_smem(smem_b); }} template inline __device__ void compute() {{{clear_acc_tmp_code} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ uint64_t single_desc_a = desc_a[m].desc; uint64_t single_desc_b = desc_b[0].desc; uint2 &tmp_desc_a = reinterpret_cast(desc_a[m].desc); uint2 &tmp_desc_b = reinterpret_cast(desc_b[0].desc); if (LAST_OF_K_BLOCK) {{ tmp_desc_a.x -= BYTES_PER_GMMA_K_NO_4LSB_A_{guid} * (XMMAS_K_{p_id} - 1); if (m == XMMAS_M_{p_id} - 1) {{ tmp_desc_b.x -= BYTES_PER_GMMA_K_NO_4LSB_B_{guid} * (XMMAS_K_{p_id} - 1); }} }} else {{ tmp_desc_a.x += BYTES_PER_GMMA_K_NO_4LSB_A_{guid}; if (m == XMMAS_M_{p_id} - 1) {{ tmp_desc_b.x += BYTES_PER_GMMA_K_NO_4LSB_B_{guid}; }} }} if (DO_ISB && m == XMMAS_M_{p_id} - 1) {{ {mma_isb} }} else {{ {mma_no_isb} }} }}{update_acc_tmp_code} }} #pragma unroll for(int xmma_m_idx = 0; xmma_m_idx < XMMAS_M_{p_id}; ++xmma_m_idx) {{ uint64_t temp_desc = desc_a[xmma_m_idx].desc; int2 &tmp = reinterpret_cast(temp_desc); tmp.x += (reset_buffer == true) ? -(BYTES_PER_SMEM_A_{p_id} >> 4) * (STAGES_{p_id} - 1) : (BYTES_PER_SMEM_A_{p_id} >> 4); desc_a[xmma_m_idx].desc = temp_desc; }} Gmma_descriptor_a_{guid} desc_a[XMMAS_M_{p_id}];increment_gmma_smem_a_buffer_codeincrement_gmma_smem_b_buffer_code class Gmma_descriptor_a_{guid} {{ public: inline __device__ Gmma_descriptor_a_{guid}() {{ desc = gmma_desc_a_{guid}; }} inline __device__ void set_smem(uint32_t smem) {{ desc |= (static_cast(smem & 0xFFFFFF) >> 4); max_desc = desc + (BYTES_PER_SMEM_A_{p_id} >> 4) * (STAGES_{p_id} - 1); }} uint64_t desc; uint64_t max_desc; }}; class Gmma_descriptor_b_{guid} {{ public: inline __device__ Gmma_descriptor_b_{guid}() {{ desc = gmma_desc_b_{guid}; }} inline __device__ void set_smem(uint32_t smem) {{ desc |= (static_cast(smem & 0xFFFFFF) >> 4); max_desc = desc + (BYTES_PER_SMEM_B_{p_id} >> 4) * (STAGES_{p_id} - 1); }} uint64_t desc; uint64_t max_desc; }}; class Compute_tile_{guid} {{ public:{compute_tile_ctor_code} inline __device__ void increment_gmma_smem_buffer() {{{increment_gmma_smem_b_buffer_code}{increment_gmma_smem_a_buffer_code} }}{compute_code}{load_a_code}{load_b_code} inline __device__ void clear_acc() {{ this->gmma_count_ = 0; this->clear_acc_tmp_ = 0; this->acc_needs_update_ = 0; #pragma unroll for(int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for(int i = 0; i < ACC_COUNT_{guid}; ++i) {{ acc[m][i] = __wgmma_fence_operand(0); }} }} }} inline __device__ void clear_acc_tmp() {{ #pragma unroll for(int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for(int i = 0; i < ACC_COUNT_{guid}; ++i) {{ acc_tmp[m][i] = __wgmma_fence_operand(0); }} }} }} inline __device__ void update_accumulators() {{ fort::warpgroup_wait<0>(); #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for(int i = 0; i < ACC_COUNT_{guid}; ++i) {{ reinterpret_cast(acc[m][i]) += reinterpret_cast(acc_tmp[m][i]); }} }} this->acc_needs_update_ = 0; }} r32 acc[XMMAS_M_{p_id}][ACC_COUNT_{guid}]; r32 acc_tmp[XMMAS_M_{p_id}][ACC_COUNT_{guid}]; // For 2xacc feature{a_rf_decl}{b_rf_decl} // Current GMMA counter uint32_t gmma_count_ = 0; // Predicate to say if acc clear is needed uint32_t clear_acc_tmp_ = 0; // Predicate to say if acc clear is needed uint32_t acc_needs_update_ = 0; }}; static constexpr int ACC_COUNT_{guid} = 8 / {elems_per_reg}; r32 reg_{guid}_0[REGS_M_{guid}][REGS_N_{guid}][WARP_REGS_{guid}]; r32 reg_{guid}_0[REGS_M_{guid}][REGS_N_{guid}][WARP_REGS_{guid}]; r32 reg_{guid}_0[XMMAS_M_{p_id}][XMMAS_N_{p_id}][ACC_COUNT_{guid}]; memset(®_{guid}_0[0][0][0], 0, sizeof(reg_{guid}_0)); r32 reg_{guid}_1[XMMAS_M_{p_id}][XMMAS_N_{p_id}][ACC_COUNT_{guid}]; memset(®_{guid}_1[0][0][0], 0, sizeof(reg_{guid}_1)); Compute_tile_{guid} compute_tile_{guid}(smem_a_{guid}, smem_b_{guid}, tiw, wid % 4); Compute_tile_{guid} compute_tile_{guid}(smem_a_{guid} + warp_group_id * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}, smem_b_{guid}, tiw, wid % 4);{utcmma_tile_m} / ROWS_PER_CORE_MATRIX_A_{guid} <= {num_columns_a} ? 0 : {utcmma_tile_k} * {bytes_per_ld_a}{utcmma_tile_n} / ROWS_PER_CORE_MATRIX_B_{guid} <= {num_columns_b} ? 0 : {utcmma_tile_k} * {bytes_per_ld_b}COLS_PER_CORE_MATRIX_A_{} * {}ROWS_PER_CORE_MATRIX_A_{} * {}COLS_PER_CORE_MATRIX_B_{} * {} constexpr uint64_t utcmma_instruction_desc_{guid}[{num_desc}] = {{ROWS_PER_CORE_MATRIX_B_{} * {} build_block_scale_utcmma_instruction_desc<{utcmma_tile_m}, {utcmma_tile_n}, {layout_b}, // Transpose for B {layout_a}, // Transpose for A 0, // Negate for B 0, // Negate for A {utcmma_b_type}, // Data type B {utcmma_a_type}, // Data type A {sf_id}, // SF_A ID {sf_id}, // SF_B ID {sf_type}, // SF Format 0, // sparse meta data format 0 // sparse disable >(), constexpr uint64_t utcmma_instruction_desc_{guid} = build_utcmma_instruction_desc<0, // max shift for WS {utcmma_tile_m}, {utcmma_tile_n}, {layout_b}, // Transpose for B {layout_a}, // Transpose for A 0, // Negate for B 0, // Negate for A {utcmma_b_type}, // Data type B {utcmma_a_type}, // Data type A 0, // sparse meta data format {utcmma_acc_type}, // Acc type fp32 0, // saturate disable 0, // sparse disable 0 // sparse meta data id2 ??? >(); // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_K({swizzle_mode_a}, 0, 1, {bytes_per_leading_dim_a}, {bytes_per_stride_dim_a}); Smem_utcmma_descriptor utcmma_smem_desc_Q_0({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_Q_0.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_Q)); utcmma_smem_desc_K.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_K)); // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_Q_0({swizzle_mode_a}, 0, 1, {bytes_per_leading_dim_a}, {bytes_per_stride_dim_a}); Smem_utcmma_descriptor utcmma_smem_desc_K({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_Q_0.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_Q)); utcmma_smem_desc_K.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_K)); // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_V({swizzle_mode_a}, 0, 1, {bytes_per_leading_dim_a}, {bytes_per_stride_dim_a}); Smem_utcmma_descriptor utcmma_smem_desc_S({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_S.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_S)); utcmma_smem_desc_V.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_V)); // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_V({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_V.set_smem(cast_smem_ptr_to_uint(shared_storage.{smem_v})); // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_{K_or_V}({swizzle_mode_a}, 0, 1, {bytes_per_leading_dim_a}, {bytes_per_stride_dim_a}); Smem_utcmma_descriptor utcmma_smem_desc_{Q_or_DO}({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_{K_or_V}.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_{K_or_V})); utcmma_smem_desc_{Q_or_DO}.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_{Q_or_dO})); // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_{DO_T_or_Q_T}({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_{DO_T_or_Q_T}.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_{dO_or_Q})); utcmma_smem_desc_dP.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_dP)); utcmma_smem_desc_dP.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_Q)); // NOTE: Q and dP share same buffer // Swizzle mode, base smem offset, desc type, bytes per leading dim, tile k Smem_utcmma_descriptor utcmma_smem_desc_dP({swizzle_mode_a}, 0, 1, {bytes_per_leading_dim_a}, {bytes_per_stride_dim_a}); Smem_utcmma_descriptor utcmma_smem_desc_K_T({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_K_T.set_smem(cast_smem_ptr_to_uint(shared_storage.smem_K)); // Swizzle mode, base smem offset, desc type, bytes per leading dim Smem_utcmma_descriptor utcmma_smem_desc_A({swizzle_mode_a}, 0, 1, {bytes_per_leading_dim_a}, {bytes_per_stride_dim_a}); Smem_utcmma_descriptor utcmma_smem_desc_B({swizzle_mode_b}, 0, 1, {bytes_per_leading_dim_b}, {bytes_per_stride_dim_b}); utcmma_smem_desc_A.set_smem(smem_a); utcmma_smem_desc_B.set_smem(smem_b); #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ {mma_code}(reg_{input_a_index}_{input_a_port}[ki-1][m], reg_{input_b_index}_{input_b_port}[(ki-1)&1][n], reg_{guid}_0[m][n]); }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ {mma_code}(reg_{input_a_index}_{input_a_port}[m][ki-1], reg_{input_b_index}_{input_b_port}[(ki-1)&1][n], reg_{p_id}_0[m][n]); }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ {mma_code}(reg_{input_a_index}_1[m][ki-1], reg_{input_b_index}_{input_b_port}[(ki-1)&1][n], reg_{p_id}_0[m][n]); }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ {mma_code}(reg_{input_a_index}_{input_a_port}[(ki-1)&1][m], reg_{input_b_index}_{input_b_port}[(ki-1)&1][n], reg_{guid}_0[m][n]); }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{p_id}; ++n) {{ {mma_code}( reg_{input_a_index}_{input_a_port}[m], reg_{input_b_index}_{input_b_port}[n], reg_{guid}_0[m][n], reg_{input_a_scale_index}_{input_a_scale_port}[m], reg_{input_b_scale_index}_{input_b_scale_port}[n], ki % XMMAS_K_TILES_PER_LDS_{m_id} * VECTOR_SCALE_{m_id} ); }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{p_id}; ++n) {{ {mma_code}(reg_{input_a_index}_{input_a_port}[m], reg_{input_b_index}_{input_b_port}[n], reg_{guid}_0[m][n]); }} }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < XMMAS_N_{p_id}; ++n) {{ {mma_code}(reg_{input_a_index}_{input_a_port}{k_index}[m], reg_{input_b_index}_{input_b_port}{k_index}[n], reg_{guid}_{acc_port}[m][n]); }} }}{bytes_per_ld_a} * BYTES_PER_MMA_K_{p_id} / BYTES_PER_ELEMENT_{p_id}{bytes_per_ld_b} * BYTES_PER_MMA_K_{p_id} / BYTES_PER_ELEMENT_{p_id} {instruction_name}(utcmma_smem_desc_K.desc, utcmma_smem_desc_Q.desc, tmem_acc, utcmma_instruction_desc_{guid}, k > 0); {instruction_name}(utcmma_smem_desc_Q.desc, utcmma_smem_desc_K.desc, tmem_acc, utcmma_instruction_desc_{guid}, (k > 0){d_inner_loop}); #pragma unroll for (int k = 0; k < BMM1_XMMAS_K; ++k) {{ if ((k % 4) == ((BMM1_XMMAS_K-1)%4)) {{ utcmma_smem_desc_Q.add_smem_offset<- BYTES_PER_MMA_K * ((BMM1_XMMAS_K-1)%4)>(); utcmma_smem_desc_K.add_smem_offset<- BYTES_PER_MMA_K * ((BMM1_XMMAS_K-1)%4)>(); utcmma_smem_desc_Q.add_smem_offset<{bytes_per_ld_a} * BMM1_TILE_M>(); utcmma_smem_desc_K.add_smem_offset<{bytes_per_ld_b} * BMM1_TILE_N>(); }} else {{ utcmma_smem_desc_Q.add_smem_offset(); utcmma_smem_desc_K.add_smem_offset(); }} }} utcmma_smem_desc_Q.add_smem_offset<- {bytes_per_ld_a} * BMM1_TILE_M * FORT_MAX(BMM1_XMMAS_K / 4, 1)>(); utcmma_smem_desc_K.add_smem_offset<- {bytes_per_ld_b} * BMM1_TILE_N * FORT_MAX(BMM1_XMMAS_K / 4, 1)>(); #pragma unroll for (int k = 0; k < BMM2_XMMAS_K; ++k) {{ {instruction_name}(utcmma_smem_desc_V.desc, utcmma_smem_desc_S.desc, tmem_O, utcmma_instruction_desc_{guid}, scaleC || k > 0); if ((k % 4) == ((BMM2_XMMAS_K-1)%4)) {{ utcmma_smem_desc_S.add_smem_offset<- BYTES_PER_MMA_K * ((BMM2_XMMAS_K-1)%4)>(); utcmma_smem_desc_S.add_smem_offset<128 * FORT_MAX(8,BMM1_TILE_M)>(); }} else {{ utcmma_smem_desc_S.add_smem_offset(); }} if (k == BMM2_XMMAS_K - 1) {{ utcmma_smem_desc_V.add_smem_offset<- UTCMMA_TILE_K * {bytes_per_ld_b} * (BMM2_XMMAS_K - 1)>(); }} else {{ utcmma_smem_desc_V.add_smem_offset(); }} }} utcmma_smem_desc_S.add_smem_offset<- 128 * FORT_MAX(8,BMM1_TILE_M) * FORT_MAX(BMM2_XMMAS_K / 4, 1)>(); #pragma unroll for (int k = 0; k < BMM2_XMMAS_K; ++k) {{ if (k % (BMM2_XMMAS_K/2) == 0) {{ wait_barrier(bmm2_ready_mbar + (k / (BMM2_XMMAS_K/2)) * 8, bmm_mbar_state); }} {instruction_name}(tmem_S + k * (UTCMMA_TILE_K / (4/BYTES_PER_ELEMENT)), utcmma_smem_desc_V.desc, tmem_O, utcmma_instruction_desc_{guid}, scaleC || k > 0); if (k == BMM2_XMMAS_K - 1) {{ utcmma_smem_desc_V.add_smem_offset<- UTCMMA_TILE_K * {bytes_per_ld_b} * (BMM2_XMMAS_K - 1)>(); }} else {{ utcmma_smem_desc_V.add_smem_offset(); }} }} #pragma unroll for (int k = 0; k < BMMKQ_VdO_XMMAS_K; ++k) {{ {instruction_name}(utcmma_smem_desc_{K_or_V}.desc, utcmma_smem_desc_{Q_or_DO}.desc, tmem_{S_or_dP}_acc, utcmma_instruction_desc_{guid}, k > 0); if ((k % 4) == ((BMMKQ_VdO_XMMAS_K-1)%4)) {{ utcmma_smem_desc_{K_or_V}.add_smem_offset<- BYTES_PER_MMA_K * ((BMMKQ_VdO_XMMAS_K-1)%4)>(); utcmma_smem_desc_{Q_or_DO}.add_smem_offset<- BYTES_PER_MMA_K * ((BMMKQ_VdO_XMMAS_K-1)%4)>(); utcmma_smem_desc_{K_or_V}.add_smem_offset<{bytes_per_ld_a} * TILE_M_{p_id}>(); utcmma_smem_desc_{Q_or_DO}.add_smem_offset<{bytes_per_ld_b} * TILE_N_{p_id}>(); }} else {{ utcmma_smem_desc_{K_or_V}.add_smem_offset(); utcmma_smem_desc_{Q_or_DO}.add_smem_offset(); }} }} utcmma_smem_desc_{K_or_V}.add_smem_offset<- {bytes_per_ld_a} * TILE_M_{p_id} * FORT_MAX(BMMKQ_VdO_XMMAS_K / 4, 1)>(); utcmma_smem_desc_{Q_or_DO}.add_smem_offset<- {bytes_per_ld_b} * TILE_N_{p_id} * FORT_MAX(BMMKQ_VdO_XMMAS_K / 4, 1)>(); #pragma unroll for (int k = 0; k < BMMSdO_dPQ_XMMAS_K; ++k) {{ {instruction_name}(tmem_{S_or_dP} + k * (UTCMMA_TILE_K / (4/BYTES_PER_ELEMENT)), utcmma_smem_desc_{DO_T_or_Q_T}.desc, tmem_{dv_or_dk}, utcmma_instruction_desc_{guid}, accumulate_{dv_or_dk}); if (k == BMMSdO_dPQ_XMMAS_K - 1) {{ utcmma_smem_desc_{DO_T_or_Q_T}.add_smem_offset<- UTCMMA_TILE_K * {bytes_per_ld_b} * (BMMSdO_dPQ_XMMAS_K - 1)>(); }} else {{ utcmma_smem_desc_{DO_T_or_Q_T}.add_smem_offset(); }} accumulate_{dv_or_dk} = true; }} #pragma unroll for (int k = 0; k < BMMdPK_XMMAS_K; ++k) {{ {instruction_name}(utcmma_smem_desc_dP.desc, utcmma_smem_desc_K_T.desc, tmem_dq, utcmma_instruction_desc_{guid}, k > 0); if (k == (BMMdPK_XMMAS_K-1)) {{ utcmma_smem_desc_dP.add_smem_offset<- UTCMMA_TILE_K * {bytes_per_ld_a} * (BMMdPK_XMMAS_K-1)>(); utcmma_smem_desc_K_T.add_smem_offset<- UTCMMA_TILE_K * {bytes_per_ld_b} * (BMMdPK_XMMAS_K-1)>(); }} else {{ utcmma_smem_desc_dP.add_smem_offset(); utcmma_smem_desc_K_T.add_smem_offset(); }} }} {instruction_name}( utcmma_smem_desc_A.desc, utcmma_smem_desc_B.desc, tmem_C_local, utcmma_instruction_desc_{guid}[k % XMMAS_K_TILES_PER_LDS_{m_id}], uint32_t(k > 0 || mainloop_k > 0), tmem_local_{sf_a_id} + k / XMMAS_K_TILES_PER_LDS_{m_id} * NUM_BLOCKS_M_{m_id} * REGISTERS_PER_BLOCK_{m_id}, tmem_local_{sf_b_id} + k / XMMAS_K_TILES_PER_LDS_{m_id} * NUM_BLOCKS_N_{m_id} * REGISTERS_PER_BLOCK_{m_id} ); {instruction_name}( utcmma_smem_desc_A.desc, utcmma_smem_desc_B.desc, tmem_C_local, utcmma_instruction_desc_{guid}, uint32_t(k > 0 || mainloop_k > 0) ); if (elect_one) {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{{utcmma_code} utcmma_smem_desc_A.add_smem_offset<{step_k_offset_a}>(); utcmma_smem_desc_B.add_smem_offset<{step_k_offset_b}>(); }} utcmma_smem_desc_A.add_smem_offset<-XMMAS_K_{p_id} * {step_k_offset_a}>(); utcmma_smem_desc_B.add_smem_offset<-XMMAS_K_{p_id} * {step_k_offset_b}>(); utcmma_smem_desc_A.increment_smem_buffer(); utcmma_smem_desc_B.increment_smem_buffer(); }} inline __device__ void hgmma_fp32_64x16x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x128x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x256x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x16x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x32x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x64x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x128x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x128x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp32_64x256x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x192x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[96]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n192k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95},\n" "{%96, %97, %98, %99}, \n" "%100, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x192x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[96]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n192k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95},\n" "{%96, %97, %98, %99}, \n" "%100, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp32_64x256x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.f16.f16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[4]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "%4, \n" "%5, \n" "{%0, %1, %2, %3};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x128x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x256x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[4]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "{%4, %5, %6, %7}, \n" "%8, \n" "{%0, %1, %2, %3},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[4]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "{%4, %5, %6, %7}, \n" "%8, \n" "{%0, %1, %2, %3};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[4]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "{%4, %5, %6, %7}, \n" "%8, \n" "{%0, %1, %2, %3},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x16x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[4]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3},\n" "{%4, %5, %6, %7}, \n" "%8, \n" "{%0, %1, %2, %3};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x32x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x64x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x128x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x128x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void hgmma_fp16_64x256x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void hgmma_fp16_64x256x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f16.f16.f16.f16 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x128x16_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_NN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_NN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transA.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_NT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_NT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transA.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_TT_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_TT_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x16x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( "{\n" "_mma.warpgroup.m64n16k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x16x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( "{\n" "_mma.warpgroup.m64n32k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x32x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x256x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( "{\n" "_mma.warpgroup.m64n64k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x64x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x128x16_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x192x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[96]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n192k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95},\n" "{%96, %97, %98, %99}, \n" "%100, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x192x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[96]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n192k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95},\n" "{%96, %97, %98, %99}, \n" "%100, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void bf16gmma_fp32_64x128x16_TT_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( "{\n" "_mma.warpgroup.m64n128k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0;\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void bf16gmma_fp32_64x128x16_TT_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k16.transB.f32.bf16.bf16.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b) ); } inline __device__ void tf32gmma_fp32_64x16x8_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x16x8_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x32x8_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x32x8_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x64x8_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x64x8_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x128x8_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x128x8_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x256x8_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x256x8_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x16x8_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x16x8_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x32x8_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x32x8_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x64x8_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x64x8_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x128x8_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" " 0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x128x8_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x256x8_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" " 0;" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void tf32gmma_fp32_64x256x8_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k8.f32.tf32.tf32.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x16x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x16x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x32x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x32x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x64x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x64x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x64x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x128x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x128x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x128x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x256x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x256x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x256x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x16x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x16x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x32x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x32x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x64x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x64x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x64x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x128x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x128x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x128x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x256x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x256x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x256x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x16x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x16x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x32x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x32x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x64x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x64x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x64x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x128x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x128x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x128x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x256x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x256x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3gmma_fp32_64x256x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e4m3.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x16x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x16x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x32x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x32x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x64x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x64x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x64x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x128x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x128x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x128x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x256x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x256x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2gmma_fp32_64x256x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e5m2.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x16x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x16x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x32x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x32x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x64x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x64x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x64x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x128x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x128x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x128x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x256x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x256x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x256x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x16x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x16x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x32x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x32x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x64x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x64x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x64x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x128x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x128x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x128x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x256x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x256x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e5m2e4m3gmma_fp32_64x256x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e5m2.e4m3.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x16x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x16x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x32x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x32x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x64x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x64x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x64x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x128x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x128x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x128x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x256x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x256x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x256x32_TN_asmem_bsmem_ignoreC(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x16x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x16x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x32x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x32x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x64x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x64x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x64x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.ignoreC.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x128x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x128x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x128x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.ignoreC.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x256x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x256x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void e4m3e5m2gmma_fp32_64x256x32_TN_arf_bsmem_ignoreC(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.ignoreC.f32.e4m3.e5m2.f32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x16x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x16x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "%8, \n" "%9, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x32x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x32x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "%16, \n" "%17, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x64x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x64x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "%32, \n" "%33, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x128x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x128x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "%64, \n" "%65, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x256x32_TN_asmem_bsmem_isb(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x256x32_TN_asmem_bsmem(const uint64_t &desc_a, const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "%128, \n" "%129, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "l"(desc_a) , "l"(desc_b)); } inline __device__ void igmma_int32_64x16x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x16x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[8]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n16k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7},\n" "{%8, %9, %10, %11}, \n" "%12, \n" "{%0, %1, %2, %3, %4, %5, %6, %7};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x32x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x32x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[16]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n32k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15},\n" "{%16, %17, %18, %19}, \n" "%20, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x64x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x64x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[32]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n64k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31},\n" "{%32, %33, %34, %35}, \n" "%36, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x128x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x128x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[64]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n128k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63},\n" "{%64, %65, %66, %67}, \n" "%68, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[10]), "+r"(acc[11]) , "+r"(acc[12]), "+r"(acc[13]), "+r"(acc[14]), "+r"(acc[15]) , "+r"(acc[16]), "+r"(acc[17]), "+r"(acc[18]), "+r"(acc[19]) , "+r"(acc[20]), "+r"(acc[21]), "+r"(acc[22]), "+r"(acc[23]) , "+r"(acc[24]), "+r"(acc[25]), "+r"(acc[26]), "+r"(acc[27]) , "+r"(acc[28]), "+r"(acc[29]), "+r"(acc[30]), "+r"(acc[31]) , "+r"(acc[32]), "+r"(acc[33]), "+r"(acc[34]), "+r"(acc[35]) , "+r"(acc[36]), "+r"(acc[37]), "+r"(acc[38]), "+r"(acc[39]) , "+r"(acc[40]), "+r"(acc[41]), "+r"(acc[42]), "+r"(acc[43]) , "+r"(acc[44]), "+r"(acc[45]), "+r"(acc[46]), "+r"(acc[47]) , "+r"(acc[48]), "+r"(acc[49]), "+r"(acc[50]), "+r"(acc[51]) , "+r"(acc[52]), "+r"(acc[53]), "+r"(acc[54]), "+r"(acc[55]) , "+r"(acc[56]), "+r"(acc[57]), "+r"(acc[58]), "+r"(acc[59]) , "+r"(acc[60]), "+r"(acc[61]), "+r"(acc[62]), "+r"(acc[63]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x256x32_TN_arf_bsmem_isb(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "0; \n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } inline __device__ void igmma_int32_64x256x32_TN_arf_bsmem(const r32 a[4], const uint64_t &desc_b, r32 acc[128]) { asm volatile( \ "{\n" \ "_mma.warpgroup.m64n256k32.s32.s8.s8.s32 \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127},\n" "{%128, %129, %130, %131}, \n" "%132, \n" "{%0, %1, %2, %3, %4, %5, %6, %7, \n" " %8, %9, %10, %11, %12, %13, %14, %15,\n" " %16, %17, %18, %19, %20, %21, %22, %23,\n" " %24, %25, %26, %27, %28, %29, %30, %31,\n" " %32, %33, %34, %35, %36, %37, %38, %39,\n" " %40, %41, %42, %43, %44, %45, %46, %47,\n" " %48, %49, %50, %51, %52, %53, %54, %55,\n" " %56, %57, %58, %59, %60, %61, %62, %63,\n" " %64, %65, %66, %67, %68, %69, %70, %71,\n" " %72, %73, %74, %75, %76, %77, %78, %79,\n" " %80, %81, %82, %83, %84, %85, %86, %87,\n" " %88, %89, %90, %91, %92, %93, %94, %95,\n" " %96, %97, %98, %99, %100, %101, %102, %103,\n" " %104, %105, %106, %107, %108, %109, %110, %111,\n" " %112, %113, %114, %115, %116, %117, %118, %119,\n" " %120, %121, %122, %123, %124, %125, %126, %127};\n" "}\n" : "+r"(acc[ 0]), "+r"(acc[ 1]), "+r"(acc[ 2]), "+r"(acc[ 3]) , "+r"(acc[ 4]), "+r"(acc[ 5]), "+r"(acc[ 6]), "+r"(acc[ 7]) , "+r"(acc[ 8]), "+r"(acc[ 9]), "+r"(acc[ 10]), "+r"(acc[ 11]) , "+r"(acc[ 12]), "+r"(acc[ 13]), "+r"(acc[ 14]), "+r"(acc[ 15]) , "+r"(acc[ 16]), "+r"(acc[ 17]), "+r"(acc[ 18]), "+r"(acc[ 19]) , "+r"(acc[ 20]), "+r"(acc[ 21]), "+r"(acc[ 22]), "+r"(acc[ 23]) , "+r"(acc[ 24]), "+r"(acc[ 25]), "+r"(acc[ 26]), "+r"(acc[ 27]) , "+r"(acc[ 28]), "+r"(acc[ 29]), "+r"(acc[ 30]), "+r"(acc[ 31]) , "+r"(acc[ 32]), "+r"(acc[ 33]), "+r"(acc[ 34]), "+r"(acc[ 35]) , "+r"(acc[ 36]), "+r"(acc[ 37]), "+r"(acc[ 38]), "+r"(acc[ 39]) , "+r"(acc[ 40]), "+r"(acc[ 41]), "+r"(acc[ 42]), "+r"(acc[ 43]) , "+r"(acc[ 44]), "+r"(acc[ 45]), "+r"(acc[ 46]), "+r"(acc[ 47]) , "+r"(acc[ 48]), "+r"(acc[ 49]), "+r"(acc[ 50]), "+r"(acc[ 51]) , "+r"(acc[ 52]), "+r"(acc[ 53]), "+r"(acc[ 54]), "+r"(acc[ 55]) , "+r"(acc[ 56]), "+r"(acc[ 57]), "+r"(acc[ 58]), "+r"(acc[ 59]) , "+r"(acc[ 60]), "+r"(acc[ 61]), "+r"(acc[ 62]), "+r"(acc[ 63]) , "+r"(acc[ 64]), "+r"(acc[ 65]), "+r"(acc[ 66]), "+r"(acc[ 67]) , "+r"(acc[ 68]), "+r"(acc[ 69]), "+r"(acc[ 70]), "+r"(acc[ 71]) , "+r"(acc[ 72]), "+r"(acc[ 73]), "+r"(acc[ 74]), "+r"(acc[ 75]) , "+r"(acc[ 76]), "+r"(acc[ 77]), "+r"(acc[ 78]), "+r"(acc[ 79]) , "+r"(acc[ 80]), "+r"(acc[ 81]), "+r"(acc[ 82]), "+r"(acc[ 83]) , "+r"(acc[ 84]), "+r"(acc[ 85]), "+r"(acc[ 86]), "+r"(acc[ 87]) , "+r"(acc[ 88]), "+r"(acc[ 89]), "+r"(acc[ 90]), "+r"(acc[ 91]) , "+r"(acc[ 92]), "+r"(acc[ 93]), "+r"(acc[ 94]), "+r"(acc[ 95]) , "+r"(acc[ 96]), "+r"(acc[ 97]), "+r"(acc[ 98]), "+r"(acc[ 99]) , "+r"(acc[100]), "+r"(acc[101]), "+r"(acc[102]), "+r"(acc[103]) , "+r"(acc[104]), "+r"(acc[105]), "+r"(acc[106]), "+r"(acc[107]) , "+r"(acc[108]), "+r"(acc[109]), "+r"(acc[110]), "+r"(acc[111]) , "+r"(acc[112]), "+r"(acc[113]), "+r"(acc[114]), "+r"(acc[115]) , "+r"(acc[116]), "+r"(acc[117]), "+r"(acc[118]), "+r"(acc[119]) , "+r"(acc[120]), "+r"(acc[121]), "+r"(acc[122]), "+r"(acc[123]) , "+r"(acc[124]), "+r"(acc[125]), "+r"(acc[126]), "+r"(acc[127]) : "r"(a[0]), "r"(a[1]), "r"(a[2]), "r"(a[3]) , "l"(desc_b)); } sm80_e4m3e4m3mma_fp32_includessm80_e5m2e5m2mma_fp32_includessm80_e4m3e5m2mma_fp32_includessm80_e5m2e4m3mma_fp32_includessm80_e2m1e2m1mma_fp32_sfe8m0_vs4x_includessm80_e2m1e2m1mma_fp32_sfe8m0_vs2x_includessm80_e2m1e2m1mma_fp32_sfe4m3_vs4x_includessm80_e4m3e4m3mma_fp32_sfe8m0_vs1x_includessm80_e4m3e5m2mma_fp32_sfe8m0_vs1x_includessm80_e5m2e4m3mma_fp32_sfe8m0_vs1x_includessm80_e5m2e5m2mma_fp32_sfe8m0_vs1x_includesbf16gmma_fp32_64x16x16_TN_asmem_bsmem_includebf16gmma_fp32_64x16x16_NN_asmem_bsmem_includebf16gmma_fp32_64x16x16_NT_asmem_bsmem_includebf16gmma_fp32_64x16x16_TT_asmem_bsmem_includebf16gmma_fp32_64x32x16_TN_asmem_bsmem_includebf16gmma_fp32_64x32x16_NN_asmem_bsmem_includebf16gmma_fp32_64x32x16_NT_asmem_bsmem_includebf16gmma_fp32_64x32x16_TT_asmem_bsmem_includebf16gmma_fp32_64x256x16_TN_asmem_bsmem_includebf16gmma_fp32_64x256x16_NN_asmem_bsmem_includebf16gmma_fp32_64x256x16_NT_asmem_bsmem_includebf16gmma_fp32_64x256x16_TT_asmem_bsmem_includebf16gmma_fp32_64x64x16_TN_asmem_bsmem_includebf16gmma_fp32_64x64x16_NN_asmem_bsmem_includebf16gmma_fp32_64x64x16_NT_asmem_bsmem_includebf16gmma_fp32_64x64x16_TT_asmem_bsmem_includebf16gmma_fp32_64x128x16_TN_asmem_bsmem_includebf16gmma_fp32_64x128x16_NN_asmem_bsmem_includebf16gmma_fp32_64x128x16_NT_asmem_bsmem_includebf16gmma_fp32_64x128x16_TT_asmem_bsmem_includebf16gmma_fp32_64x16x16_TN_arf_bsmem_includebf16gmma_fp32_64x16x16_TT_arf_bsmem_includebf16gmma_fp32_64x32x16_TN_arf_bsmem_includebf16gmma_fp32_64x32x16_TT_arf_bsmem_includebf16gmma_fp32_64x256x16_TN_arf_bsmem_includebf16gmma_fp32_64x192x16_TT_arf_bsmem_includebf16gmma_fp32_64x256x16_TT_arf_bsmem_includebf16gmma_fp32_64x64x16_TN_arf_bsmem_includebf16gmma_fp32_64x64x16_TT_arf_bsmem_includebf16gmma_fp32_64x128x16_TN_arf_bsmem_includebf16gmma_fp32_64x128x16_TT_arf_bsmem_includehgmma_fp16_64x16x16_TN_asmem_bsmem_includehgmma_fp16_64x16x16_NN_asmem_bsmem_includehgmma_fp16_64x16x16_NT_asmem_bsmem_includehgmma_fp16_64x16x16_TT_asmem_bsmem_includehgmma_fp16_64x32x16_TN_asmem_bsmem_includehgmma_fp16_64x32x16_NN_asmem_bsmem_includehgmma_fp16_64x32x16_NT_asmem_bsmem_includehgmma_fp16_64x32x16_TT_asmem_bsmem_includehgmma_fp16_64x64x16_TN_asmem_bsmem_includehgmma_fp16_64x64x16_NN_asmem_bsmem_includehgmma_fp16_64x64x16_NT_asmem_bsmem_includehgmma_fp16_64x64x16_TT_asmem_bsmem_includehgmma_fp16_64x128x16_TN_asmem_bsmem_includehgmma_fp16_64x128x16_NN_asmem_bsmem_includehgmma_fp16_64x128x16_NT_asmem_bsmem_includehgmma_fp16_64x128x16_TT_asmem_bsmem_includehgmma_fp16_64x256x16_TN_asmem_bsmem_includehgmma_fp16_64x256x16_NN_asmem_bsmem_includehgmma_fp16_64x256x16_NT_asmem_bsmem_includehgmma_fp16_64x256x16_TT_asmem_bsmem_includehgmma_fp16_64x16x16_TN_arf_bsmem_includehgmma_fp16_64x16x16_TT_arf_bsmem_includehgmma_fp16_64x32x16_TN_arf_bsmem_includehgmma_fp16_64x32x16_TT_arf_bsmem_includehgmma_fp16_64x64x16_TN_arf_bsmem_includehgmma_fp16_64x64x16_TT_arf_bsmem_includehgmma_fp16_64x128x16_TN_arf_bsmem_includehgmma_fp16_64x128x16_TT_arf_bsmem_includehgmma_fp16_64x256x16_TN_arf_bsmem_includehgmma_fp16_64x256x16_TT_arf_bsmem_includehgmma_fp32_64x16x16_TN_asmem_bsmem_includehgmma_fp32_64x16x16_NN_asmem_bsmem_includehgmma_fp32_64x16x16_NT_asmem_bsmem_includehgmma_fp32_64x16x16_TT_asmem_bsmem_includehgmma_fp32_64x32x16_TN_asmem_bsmem_includehgmma_fp32_64x32x16_NN_asmem_bsmem_includehgmma_fp32_64x32x16_NT_asmem_bsmem_includehgmma_fp32_64x32x16_TT_asmem_bsmem_includehgmma_fp32_64x64x16_TN_asmem_bsmem_includehgmma_fp32_64x64x16_NN_asmem_bsmem_includehgmma_fp32_64x64x16_NT_asmem_bsmem_includehgmma_fp32_64x64x16_TT_asmem_bsmem_includehgmma_fp32_64x128x16_TN_asmem_bsmem_includehgmma_fp32_64x128x16_NN_asmem_bsmem_includehgmma_fp32_64x128x16_NT_asmem_bsmem_includehgmma_fp32_64x128x16_TT_asmem_bsmem_includehgmma_fp32_64x256x16_TN_asmem_bsmem_includehgmma_fp32_64x256x16_NN_asmem_bsmem_includehgmma_fp32_64x256x16_NT_asmem_bsmem_includehgmma_fp32_64x256x16_TT_asmem_bsmem_includehgmma_fp32_64x16x16_TN_arf_bsmem_includehgmma_fp32_64x16x16_TT_arf_bsmem_includehgmma_fp32_64x32x16_TN_arf_bsmem_includehgmma_fp32_64x32x16_TT_arf_bsmem_includehgmma_fp32_64x64x16_TN_arf_bsmem_includehgmma_fp32_64x64x16_TT_arf_bsmem_includehgmma_fp32_64x128x16_TN_arf_bsmem_includehgmma_fp32_64x128x16_TT_arf_bsmem_includehgmma_fp32_64x256x16_TN_arf_bsmem_includehgmma_fp32_64x192x16_TT_arf_bsmem_includehgmma_fp32_64x256x16_TT_arf_bsmem_includeigmma_int32_64x16x32_TN_asmem_bsmem_includeigmma_int32_64x32x32_TN_asmem_bsmem_includeigmma_int32_64x64x32_TN_asmem_bsmem_includeigmma_int32_64x128x32_TN_asmem_bsmem_includeigmma_int32_64x256x32_TN_asmem_bsmem_includeigmma_int32_64x16x32_TN_arf_bsmem_includeigmma_int32_64x32x32_TN_arf_bsmem_includeigmma_int32_64x64x32_TN_arf_bsmem_includeigmma_int32_64x128x32_TN_arf_bsmem_includeigmma_int32_64x256x32_TN_arf_bsmem_includee4m3gmma_fp32_64x16x32_TN_asmem_bsmem_includee4m3gmma_fp32_64x32x32_TN_asmem_bsmem_includee4m3gmma_fp32_64x64x32_TN_asmem_bsmem_includee4m3gmma_fp32_64x128x32_TN_asmem_bsmem_includee4m3gmma_fp32_64x256x32_TN_asmem_bsmem_includee5m2gmma_fp32_64x16x32_TN_asmem_bsmem_includee5m2gmma_fp32_64x32x32_TN_asmem_bsmem_includee5m2gmma_fp32_64x64x32_TN_asmem_bsmem_includee5m2gmma_fp32_64x128x32_TN_asmem_bsmem_includee5m2gmma_fp32_64x256x32_TN_asmem_bsmem_includee4m3gmma_fp32_64x16x32_TN_arf_bsmem_includee4m3gmma_fp32_64x32x32_TN_arf_bsmem_includee4m3gmma_fp32_64x64x32_TN_arf_bsmem_includee4m3gmma_fp32_64x128x32_TN_arf_bsmem_includee4m3gmma_fp32_64x256x32_TN_arf_bsmem_includee5m2gmma_fp32_64x16x32_TN_arf_bsmem_includee5m2gmma_fp32_64x32x32_TN_arf_bsmem_includee5m2gmma_fp32_64x64x32_TN_arf_bsmem_includee5m2gmma_fp32_64x128x32_TN_arf_bsmem_includee5m2gmma_fp32_64x256x32_TN_arf_bsmem_includee5m2e4m3gmma_fp32_64x16x32_TN_asmem_bsmem_includee5m2e4m3gmma_fp32_64x32x32_TN_asmem_bsmem_includee5m2e4m3gmma_fp32_64x64x32_TN_asmem_bsmem_includee5m2e4m3gmma_fp32_64x128x32_TN_asmem_bsmem_includee5m2e4m3gmma_fp32_64x256x32_TN_asmem_bsmem_includee5m2e4m3gmma_fp32_64x16x32_TN_arf_bsmem_includee5m2e4m3gmma_fp32_64x32x32_TN_arf_bsmem_includee5m2e4m3gmma_fp32_64x64x32_TN_arf_bsmem_includee5m2e4m3gmma_fp32_64x128x32_TN_arf_bsmem_includee5m2e4m3gmma_fp32_64x256x32_TN_arf_bsmem_includee4m3e5m2gmma_fp32_64x16x32_TN_asmem_bsmem_includee4m3e5m2gmma_fp32_64x32x32_TN_asmem_bsmem_includee4m3e5m2gmma_fp32_64x64x32_TN_asmem_bsmem_includee4m3e5m2gmma_fp32_64x128x32_TN_asmem_bsmem_includee4m3e5m2gmma_fp32_64x256x32_TN_asmem_bsmem_includee4m3e5m2gmma_fp32_64x16x32_TN_arf_bsmem_includee4m3e5m2gmma_fp32_64x32x32_TN_arf_bsmem_includee4m3e5m2gmma_fp32_64x64x32_TN_arf_bsmem_includee4m3e5m2gmma_fp32_64x128x32_TN_arf_bsmem_includee4m3e5m2gmma_fp32_64x256x32_TN_arf_bsmem_includetf32gmma_fp32_64x16x8_TN_asmem_bsmem_includetf32gmma_fp32_64x32x8_TN_asmem_bsmem_includetf32gmma_fp32_64x64x8_TN_asmem_bsmem_includetf32gmma_fp32_64x128x8_TN_asmem_bsmem_includetf32gmma_fp32_64x256x8_TN_asmem_bsmem_includetf32gmma_fp32_64x16x8_TN_arf_bsmem_includetf32gmma_fp32_64x32x8_TN_arf_bsmem_includetf32gmma_fp32_64x64x8_TN_arf_bsmem_includetf32gmma_fp32_64x128x8_TN_arf_bsmem_includetf32gmma_fp32_64x256x8_TN_arf_bsmem_include //mma_op {} includesO_DV //mma_op {} update_acc_codesingle_desc_aa[k][m]fp32fp16int32gmma_input_typeoutput_typea_locacc_name/*resultF16=*/{},tf32/*transB=*/{},/*transA=*/{},dtypetransAtransBresultF16 #else #endifbf16: desc_b() //mma_op {} typesbytes_per_accwarps_mwarps_nrows_per_core_matrix_acols_per_core_matrix_arows_per_core_matrix_bcols_per_core_matrix_be5m2e4m3e4m3e5m2gmma_desc_agmma_desc_bbytes_per_gmma_k_abytes_per_gmma_k_bacc_tmpdesc_b[0].set_smem(smem_b);offsets_b_codedesc_b_ctorupdate_acc_tmp_codemma_isbmma_no_isbcompute_tile_ctor_codeload_a_codeload_b_codea_rf_declb_rf_declFORT_MAX(TILE_M_{}, 8)TILE_O_{}dO_T //mma_op {} declsfort::float_e3m4_tfort::float_e2m3_tfort::float_e3m2_tfort::float_e0m3_tCTA_TILE_M_{} * CTA_MMA_{}utcmma_tile_mutcmma_tile_knum_columns_abytes_per_ld_autcmma_tile_nnum_columns_bbytes_per_ld_bnum_desc }};layout_autcmma_a_typeutcmma_b_typesf_idsf_typeutcmma_acc_typeswizzle_mode_aswizzle_mode_bbytes_per_leading_dim_abytes_per_leading_dim_bbytes_per_stride_dim_abytes_per_stride_dim_bsmem_vK_or_VQ_or_DOQ_or_dODO_T_or_Q_TdO_or_QDO_or_Qhmma_fp16_16x16x16e4m3e4m3mma_fp32_16x16x32bf16mma_fp32_16x16x16tf32mma_fp32_16x16x8imma_int32_16x16x32e5m2e5m2mma_fp32_16x16x32e4m3e5m2mma_fp32_16x16x32e5m2e4m3mma_fp32_16x16x32hmma_fp32_16x16x16e2m1e2m1mma_fp32_16x16x64asmematmem || (d_qk_chunk != 0) //mma_op {} codeffma_mma_fp32_16x16x4ffma_mma_fp32_16x16x4_tr_sfe4m3_sfe8m0_vs{}xinput_a_scale_indexinput_b_scale_indexinput_a_scale_portinput_b_scale_port[k][(ki_accum - 1)&1]k_indexacc_portbsmemutcmma_{}_{}_hutcmma_{}_{}_qutcmma_{}_{}_iutcmma_{}_{}_o_{}x_cta2_cta1BYTES_PER_MMA_K_{p_id}d_inner_loopinstruction_nameS_or_dPsf_a_idsf_b_idutcmma_codestep_k_offset_astep_k_offset_barf_asmem_sm80_hmma_bf16mma_tf32mma_imma_e4m3e4m3mma_e4m3e5m2mma_e5m2e4m3mma_e5m2e5m2mma_e2m1e2m1mma_e2m1e3m0mma_e3m0e2m1mma_e3m03m0mma_fp32_fp16_int32_sfe4m3_sfe8m0_vs1x_vs2x_vs4x_hgmma_bf16gmma_tf32gmma_igmma_e4m3e5m2gmma_e5m2e4m3gmma_bsmem_includesm80_hmma_fp32_includessm80_hmma_fp16_includessm80_bf16mma_fp32_includessm80_tf32mma_fp32_includessm80_imma_int32_includes #if (CUDACC_VERSION >= 127 || (CUDACC_VERSION == 126 && __CUDACC_VER_BUILD__ >= 77)) // shared_store_op {} includes static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_element}; static constexpr int BYTES_PER_QUAD_{guid} = 16; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int WARPS_M_{guid} = {warps_m}; static constexpr int WARPS_N_{guid} = {warps_n}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int THREADS_PER_WARP_TILE_M_{guid} = 8; static constexpr int THREADS_PER_WARP_TILE_N_{guid} = 4; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid}; static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_store_element}; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{M_or_N}_{p_id}{two_cta_factor_m_or_n} * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; static constexpr int PIPELINE_SMEM_BYTES_{guid} = BYTES_PER_SMEM_{guid} * STAGES_{p_id}; static constexpr int ROWS_PER_TILE_{guid} = CTA_TILE_{K_or_M_or_N}_{p_id}{two_cta_factor_k_or_m_or_n}; static constexpr int BYTES_PER_ROW_{guid} = FORT_MIN(CTA_TILE_{M_or_N_or_K}_{p_id}{two_cta_factor_m_or_n_or_k} * BYTES_PER_ELEMENT_{guid}, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int BYTES_PER_VECTOR_{guid} = BYTES_PER_BANK_{p_id} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_ELEMENT_{p_id}; static constexpr int REGISTERS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_REGISTER_{r_id}; static constexpr int BYTES_PER_ACCESS_{guid} = {bytes_per_access}; static constexpr int ACCESS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_ACCESS_{guid}; static constexpr int SWIZZLE_SCALE_{guid} = BYTES_PER_ROW_{guid} / ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}); class Sts_tile_{guid} {{ public: inline __device__ Sts_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = (wid % 4) * ROWS_PER_WARP_{A_or_B}_{m_id} + tiw / THREADS_PER_ROW_{A_or_B}_{m_id}; const uint32_t tma_block_id = (tiw % THREADS_PER_ROW_{A_or_B}_{m_id}) / (MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_VECTOR_{guid}); const uint32_t col_id = (tiw % THREADS_PER_ROW_{A_or_B}_{m_id}) % (MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_VECTOR_{guid}); this->smem = smem; this->smem_offset = (tma_block_id * ROWS_PER_TILE_{guid} + row_id) * BYTES_PER_ROW_{guid} + col_id * BYTES_PER_VECTOR_{guid}; }} inline __device__ void store(int buffer_id, r32 reg[LDS_PER_TILE_{A_or_B}_{m_id}][LDS_PER_ROW_{A_or_B}_{m_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t smem_addr_base = smem + buffer_id * BYTES_PER_SMEM_{guid}; #pragma unroll for (int i = 0; i < LDS_PER_TILE_{A_or_B}_{m_id}; ++i) {{ #pragma unroll for (int j = 0; j < LDS_PER_ROW_{A_or_B}_{m_id}; ++j) {{ #pragma unroll for (int k = 0; k < ACCESS_PER_VECTOR_{guid}; ++k) {{ uint32_t unswizzled_addr = smem_offset + i * ROWS_PER_LOAD_{A_or_B}_{m_id} * BYTES_PER_ROW_{guid} + j * ROWS_PER_TILE_{guid} * THREADS_PER_ROW_{A_or_B}_{m_id} * BYTES_PER_VECTOR_{guid} + k * BYTES_PER_ACCESS_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}); uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / (8 / {banks_per_swizzle_unit})) % SWIZZLE_SCALE_{guid}); sts_{bits_per_access}(smem_addr_base + swizzled_bank_id * ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}) + unswizzled_addr % ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}), reinterpret_cast(reinterpret_cast(reg[i][j]) + k * BYTES_PER_ACCESS_{guid})); }} }} }} }} private: uint32_t smem; uint32_t smem_offset; }}; static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_store_element}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX(NUM_GMMA_B_ELEMENT_{p_id} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_REGISTER_{r_id}, 1); static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_N_{p_id} * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; static constexpr int PIPELINE_SMEM_BYTES_{guid} = BYTES_PER_SMEM_{guid} * STAGES_{p_id};r32 reg[XMMAS_K_{p_id}][NUM_LDSM_{m_id}][REGISTERS_PER_VECTOR_{guid}] const uint32_t row_id = (wid / 2) * CORE_MATRIX_B_COLS_{m_id} + tiw % CORE_MATRIX_B_COLS_{m_id}; const uint32_t col_id = (wid % 2) * CORE_MATRIX_B_ROWS_{m_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ uint32_t unswizzled_addr = (((n / N_MATRICES_PER_TMA_LOAD) * CTA_TILE_K_{p_id} + k * UNIT_MATRIX_B_COLS_{m_id} + row_id) * ACTUAL_ELEMS_PER_ROW + (n % N_MATRICES_PER_TMA_LOAD) * UNIT_MATRIX_B_ROWS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[k][n] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ stsmt_x1(precompute_offset[k][n] + buffer_id * BYTES_PER_SMEM_{guid}, reg[k][n]); }} static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_N_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t N_MATRICES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / UNIT_MATRIX_B_ROWS_{m_id}; uint32_t precompute_offset[XMMAS_K_{p_id}][NUM_LDSM_{m_id}]; const uint32_t row_id = (wid % 2) * CORE_MATRIX_B_ROWS_{m_id} + tiw % CORE_MATRIX_B_ROWS_{m_id}; const uint32_t col_id = (wid / 2) * CORE_MATRIX_B_COLS_{m_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ uint32_t unswizzled_addr = (row_id * CTA_TILE_K_{p_id} + k * UNIT_MATRIX_B_COLS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[k] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ stsm_x1(precompute_offset[k] + n * CTA_TILE_K_{p_id} * UNIT_MATRIX_B_ROWS_{m_id} * BYTES_PER_ELEMENT_{guid} + buffer_id * BYTES_PER_SMEM_{guid}, reg[k][n]); }} uint32_t precompute_offset[XMMAS_K_{p_id}];{global_variable_decl} class Sts_tile_{guid} {{ public: inline __device__ Sts_tile_{guid}(uint32_t smem, int tiw, int wid) {{{constructor_code} }} inline __device__ void store(int k, int buffer_id, {register_decl}) {{{store_function_code} }} private:{member_variable_code} }};warp_group_id * WARPS_PER_GROUP_{r_id} * BYTES_PER_WARP_{e_id} uint32_t smem_{guid} = smem_o_{p_id} + (wid % 4) * BYTES_PER_WARP_{e_id}; uint32_t smem_{guid} = smem_{p_id} + (wid % 4) * BYTES_PER_WARP_{e_id}; uint32_t smem_{guid} = ((group_id == 0) ? smem_dV_{p_id} : smem_dK_{p_id}) + (wid % 4) * BYTES_PER_WARP_{e_id}; uint32_t smem_{guid} = smem_{r_id} + SMEM_EPILOGUE_OFFSET_{p_id} + (wid % WARPS_PER_GROUP_{r_id}) * BYTES_PER_WARP_{e_id} + {group_offset_code}; uint32_t smem_{guid} = smem_epilogue_{binding_mma_id} + (wid % 4) * BYTES_PER_WARP_{e_id} + {group_offset_code}; uint32_t smem_{guid} = smem_epilogue + wid * BYTES_PER_WARP_{e_id} + {group_offset_code}; const int pre_swizzle_m_{guid} = tiw / 4; const int pre_swizzle_n_{guid} = tiw % 4;{smem_decl} uint32_t base_sts_offset_{guid} = smem_{guid} + pre_swizzle_m_{guid} * ELEMS_PER_STS_BLOCK_{e_id} * BYTES_PER_ACC_{p_id} + pre_swizzle_n_{guid} * BYTES_PER_BANK_{e_id}; const int pre_swizzle_m_{guid} = tiw % 16; const int pre_swizzle_n_{guid} = tiw / 16;{smem_decl} uint32_t base_sts_offset_{guid} = smem_{guid} + pre_swizzle_m_{guid} * BYTES_PER_BANK_{e_id} + pre_swizzle_n_{guid} * BYTES_PER_BANK_{e_id} * 18; // 16 lines + 2 padding lines uint32_t shared_ptr_{guid} = smem_p_{p_id} + (wid * WARP_TILE_M_{guid} * TILE_N_{guid} + tiw * 4) * BYTES_PER_ELEMENT_{guid}; uint32_t shared_ptr_{guid} = smem_p_{p_id} + (wid * WARP_TILE_M_{guid} * TILE_N_{guid} + (tiw % 4) * 2 + (tiw / 4) * 8) * BYTES_PER_ELEMENT_{guid}; Sts_tile_{guid} sts_tile_{guid}(smem_{guid}, tiw, wid); Sts_tile_{guid} sts_tile_{guid}(smem_{r_id} + SMEM_BUFFER_OFFSET_{guid}, tiw, wid % 4); #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m)reg_{p_id}_0[m][(i / 2)][(i % 2) * 4]reg_{input_guid}_0[m][c * STSM_X4_PER_OUTPUT_TILE_N_{e_id} + i][0]reg_{input_guid}_0[m][(c * STS_PER_OUTPUT_TILE_N_{e_id} + i) / 2][((c * STS_PER_OUTPUT_TILE_N_{e_id} + i) % 2) * 4]compute_tile_{binding_mma_id}.acc[m][i * 4]reg_{input_guid}_0[m][i/2][(i % 2) * 4]m * EPILOGUE_SMEM_SIZE_PER_XMMA_M_{e_id}{xmmas_m_loop_code} {{ #pragma unroll for (int i = 0; i < STS_PER_OUTPUT_TILE_N_{e_id}; ++i) {{ sts_128(base_sts_offset_{guid} + i * (BYTES_PER_STS_PER_WARP_{e_id} + BYTES_PER_BANK_{e_id}) + {xmma_m_offset}, &{input_name}); }} }}{xmmas_m_loop_code} {{ #pragma unroll for (int i = 0; i < STSM_X4_PER_OUTPUT_TILE_N_{e_id}; ++i) {{ #pragma unroll for (int j = 0; j < 4; ++j) {{ sts_32(smem_{guid} + (i * 18 * 2 + (j / 2) * 18 + (j % 2) * ACC_CORE_MATRIX_ROWS_{e_id}) * BYTES_PER_BANK_{e_id} + tiw * BYTES_PER_REGISTER_0 + {xmma_m_offset}, &{input_name}); }} }} }}{xmmas_m_loop_code} {{ #pragma unroll for (int i = 0; i < STSM_X4_PER_OUTPUT_TILE_N_{e_id}; ++i) {{ stsm_x4(base_sts_offset_{guid} + i * 18 * 2 * BYTES_PER_BANK_{e_id} + {xmma_m_offset}, &{input_name}); }} }} #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < REGS_N_{guid}; ++j) {{ #pragma unroll for (int r = 0; r < 8; r+=4) {{ sts_128(shared_ptr_{guid} + (j * WARP_TILE_M_{guid} * WARP_TILE_N_{guid} + r * 32 + i * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{guid} * TILE_N_{guid}) * BYTES_PER_ELEMENT_{guid}, ®_{input_guid}_0[i][j][r]); }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ sts_32(shared_ptr_{guid} + 0 * 16 * 8 + (n * 16 * 16 + m * 64 * TILE_N_{guid}) * BYTES_PER_ELEMENT_{guid}, ®_{input_guid}_1[m][n][0]); sts_32(shared_ptr_{guid} + 2 * 16 * 8 + (n * 16 * 16 + m * 64 * TILE_N_{guid}) * BYTES_PER_ELEMENT_{guid}, ®_{input_guid}_1[m][n][1]); sts_32(shared_ptr_{guid} + 1 * 16 * 8 + (n * 16 * 16 + m * 64 * TILE_N_{guid}) * BYTES_PER_ELEMENT_{guid}, ®_{input_guid}_1[m][n][2]); sts_32(shared_ptr_{guid} + 3 * 16 * 8 + (n * 16 * 16 + m * 64 * TILE_N_{guid}) * BYTES_PER_ELEMENT_{guid}, ®_{input_guid}_1[m][n][3]); }} }} sts_tile_{guid}.store(smem_mbar_state.index(), reg_{producer_id}_{producer_port}); sts_tile_{guid}.store(k_index, lds_buffer_id, reg_{producer_id}_{producer_port}); // shared_store_op {} typesbytes_per_store_elementbanks_per_swizzle_unitM_or_N_or_KK_or_M_or_Ntwo_cta_factor_m_or_ntwo_cta_factor_m_or_n_or_ktwo_cta_factor_k_or_m_or_nswizzle_rowsglobal_variable_declregister_declconstructor_codestore_function_codemember_variable_code // shared_store_op {} declsbinding_mma_idsmem_decl // shared_store_op {} codereg_{input_guid}_0[m][i][j]xmmas_m_loop_codexmma_m_offsetproducer_idproducer_port // shared_load_op {} includes((group_id == 0) ? smem_k_{p_id} : smem_v_{p_id})((group_id == 0) ? smem_q_{p_id} : smem_o_{p_id})((group_id == 0) ? smem_o_{p_id} : smem_q_{p_id}) r32 acc_{guid}[ELEMENTS_PER_VECTOR_{e_id}]; r32 reg_{guid}_0[ELEMENTS_PER_VECTOR_{e_id} * BITS_PER_ELEMENT_{guid} / BITS_PER_REGISTER_{r_id}]; ldtm_32dp32bit_x{block_size}(acc_{guid}, tmem_C_local + block * ELEMENTS_PER_VECTOR_{e_id}); r32 reg_{guid}_{port}[LDS_TILES_N_{e_id}][VECTORS_PER_LDS_TILES_{e_id}][REGISTERS_PER_VECTOR_{guid}]; r32 tmp_reg_{guid}_{port}[LDS_TILES_N_{e_id}][VECTORS_PER_LDS_TILES_{e_id}][ELEMENTS_PER_VECTOR_{e_id} * BITS_PER_ACC_{p_id} / BITS_PER_REGISTER_{r_id}];{smem_decl} uint32_t base_lds_offset_{guid} = smem_{guid} + (tiw / 8) * (BYTES_PER_LDS_TILE_{e_id} / 4) + (((tiw % 8) / 2) * 4 + tiw % 2) * BYTES_PER_ACC_{p_id};{reg_decl} const int post_swizzle_m_{guid} = tiw / STG_THREADS_PER_TILE_N_{e_id}; const int post_swizzle_n_{guid} = tiw % STG_THREADS_PER_TILE_N_{e_id};{smem_decl} uint32_t base_lds_offset_{guid} = smem_{guid} + post_swizzle_n_{guid} * ELEMS_PER_STS_BLOCK_{e_id} * BYTES_PER_ACC_{p_id} * ACC_CORE_MATRIX_ROWS_{e_id} + post_swizzle_m_{guid} * ELEMS_PER_STS_BLOCK_{e_id} * BYTES_PER_ACC_{p_id} + post_swizzle_n_{guid} * BYTES_PER_BANK_{e_id};{reg_decl} const int post_swizzle_m_{guid} = tiw / STG_THREADS_PER_TILE_N_{e_id}; const int post_swizzle_n_{guid} = tiw % STG_THREADS_PER_TILE_N_{e_id};{smem_decl} uint32_t lds_offset_{guid} = smem_{guid} + post_swizzle_m_{guid} * BYTES_PER_BANK_{e_id} + post_swizzle_n_{guid} * BYTES_PER_BANK_{e_id} * 18;{reg_decl} const int row_id_{guid} = tiw / 4; const int col_id_{guid} = 0; uint32_t shared_ptr_{guid} = smem_{qkv_code}_{p_id} + (wid % WARPS_M_{p_id}) * 16 * BYTES_PER_LD_{guid} + (col_id_{guid} ^ (row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[REGS_N_{guid} * 4][REGS_M_{guid}][8]; uint32_t ldsm_smem_buffer_offset_{guid} = 0; const int row_id_{guid} = tiw % 16; const int col_id_{guid} = tiw / 16; uint32_t shared_ptr_{guid} = smem_{qkv_code}_{p_id} + (wid % WARPS_M_{p_id}) * 16 * BYTES_PER_LD_{guid} + (col_id_{guid} ^ (row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[REGS_N_{guid}][REGS_M_{guid}][4]; uint32_t ldsm_smem_buffer_offset_{guid} = 0; const int row_id_{guid} = (tiw % 4) * 2; const int col_id_{guid} = 0; uint32_t shared_ptr_{guid}[2]; #pragma unroll for (int i = 0; i < 2; ++i) {{ shared_ptr_{guid}[i] = smem_{qkv_code}_{p_id} + (wid / WARPS_M_{p_id}) * 16 * BYTES_PER_LD_{guid} * REGS_M_{guid} + (col_id_{guid} ^ ((row_id_{guid}+i) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + (row_id_{guid}+i) * 128; }} uint32_t reg_{guid}_0[2][REGS_M_{guid}][16]; uint32_t ldsm_smem_buffer_offset_{guid} = 0; const int row_id_{guid} = (tiw % 8) + (tiw / 16) * 8; const int col_id_{guid} = (tiw / 8) % 2; uint32_t shared_ptr_{guid} = smem_{qkv_code}_{p_id} + (wid / WARPS_M_{p_id}) * 16 * BYTES_PER_LD_{guid} * REGS_M_{guid} + (col_id_{guid} ^ (row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[2][REGS_M_{guid}][4]; uint32_t ldsm_smem_buffer_offset_{guid} = 0; const int row_id_{guid} = 0; const int col_id_{guid} = tiw % 4; uint32_t shared_ptr_{guid}[2][8]; #pragma unroll for (int m = 0; m < 2; ++m) {{ #pragma unroll for (int i = 0; i < 8; ++i) {{ shared_ptr_{guid}[m][i] = smem_v_{p_id} + ((col_id_{guid} + m*4) ^ i) * BYTES_PER_BANK_{p_id} + i * 128; }} }} uint32_t reg_{guid}_0[2][REGS_N_{guid}][16]; uint32_t ldsm_smem_buffer_offset_{guid} = 0; const int row_id_{guid} = tiw % 16; const int col_id_{guid} = tiw / 16; uint32_t shared_ptr_{guid} = smem_{qkv_code}_{p_id} + (wid / WARPS_M_{p_id}) * 16 * BYTES_PER_LD_{guid} * REGS_M_{guid} + (col_id_{guid} ^ (row_id_{guid} % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[2][REGS_N_{guid}][4]; uint32_t ldsm_smem_buffer_offset_{guid} = 0; const int row_id_{guid} = tiw % 16; const int col_id_{guid} = tiw / 16; uint32_t shared_ptr_{guid} = + wid * 16 * BYTES_PER_LD_{guid} + (col_id_{guid} ^ ((row_id_{guid} / (8 / SWIZZLE_SCALE_{guid})) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[REGS_N_{guid}][REGS_M_{guid}][4]; const int row_id_{guid} = (tiw % 8) + (tiw / 16) * 8; const int col_id_{guid} = (tiw / 8) % 2; uint32_t shared_ptr_{guid} = + (col_id_{guid} ^ ((row_id_{guid} / (8 / SWIZZLE_SCALE_{guid})) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[2][REGS_M_{guid}][4]; + (col_id_{guid} ^ ((row_id_{guid} / (8 / SWIZZLE_SCALE_{guid})) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; uint32_t reg_{guid}_0[2][REGS_N_{guid}][4]; const int row_id_{guid} = tiw % 16; const int col_id_{guid} = tiw / 16; uint32_t shared_ptr_{guid} = smem_k_{p_id} + (col_id_{guid} ^ ((row_id_{guid} / (8 / SWIZZLE_SCALE_{guid})) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id_{guid} * 128; shared_ptr_{guid} ^= wid * 32; uint32_t reg_{guid}_0[2][REGS_N_{guid}][4]; uint32_t reg_{guid}_0[REGS_M_{guid}][REGS_N_{guid}][8]; uint32_t shared_ptr_{guid} = smem_p_{p_id} + (wid * WARP_TILE_M_{guid} * TILE_N_{guid} + tiw * 4) * BYTES_PER_ELEMENT_{guid}; uint32_t reg_{guid}_0[2][REGS_M_{guid}][4]; uint32_t shared_ptr_{guid} = smem_p_{p_id} + (group_id * WARP_TILE_M_{guid} * WARP_TILE_N_{guid} + tiw * 8) * BYTES_PER_ELEMENT_{guid}; Lds_tile_{guid} lds_tile_{guid}(smem_{r_id} + SMEM_BUFFER_OFFSET_{f_id}, tiw, wid); r32 reg_{guid}_0[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_PER_TILE_{A_or_B}_{m_id}][LDS_PER_ROW_{A_or_B}_{m_id}][REGISTERS_PER_VECTOR_{guid}]; Lds_tile_{guid} lds_tile_{guid}(smem_{producer_id}, tiw, wid); Smem_utcmma_descriptor utcmma_smem_desc_{guid}(0, 0, 1, SWIZZLED_BLOCK_DIM_K_{m_id}, 8 * SWIZZLED_BLOCK_DIM_K_{m_id}); utcmma_smem_desc_{guid}.set_smem(smem_{r_id} + SMEM_BUFFER_OFFSET_{producer_id}); r32 reg_{guid}_{port}[XMMAS_K_{p_id}][XMMAS_M_{p_id}][REGISTERS_PER_VECTOR_{guid}]; Lds_tile_{guid} lds_tile_{guid}(smem_{producer_id}, tiw, wid); r32 reg_{guid}_{port}[XMMAS_K_{p_id}][NUM_LDSM_{m_id}][REGISTERS_PER_VECTOR_{guid}]; Lds_tile_{guid} lds_tile_{guid}(smem_{producer_id}, tiw, wid); uint32_t ldsm_smem_buffer_offset_{guid} = 0; Lds_tile_{guid} lds_tile_{guid}(smem_0 + SMEM_BUFFER_OFFSET_{f_id}, tiw, wid); r32 reg_{guid}_0[2][XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_element} * {packing_factor}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_VECTOR_{guid} = BITS_PER_ELEMENT_{guid} * ELEMENTS_PER_VECTOR_{e_id}; static constexpr int BYTES_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / 8; static constexpr int REGISTERS_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / BITS_PER_REGISTER_{r_id}; static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_element}; static constexpr int BYTES_PER_QUAD_{guid} = 16; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int BYTES_PER_SMEM_{guid} = TILE_M_{guid} * TILE_N_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int WARPS_M_{guid} = {warps_m}; static constexpr int WARPS_N_{guid} = {warps_n}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int THREADS_PER_WARP_TILE_M_{guid} = 8; static constexpr int THREADS_PER_WARP_TILE_N_{guid} = 4; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid}; static constexpr int BYTES_PER_LD_{guid} = 128; static constexpr int SWIZZLE_SCALE_{guid} = FORT_MIN(BYTES_PER_LD_{guid} / 16, WARPS_PER_GROUP_{r_id} * 4); (wid / WARPS_PER_GROUP_{r_id} - 1) * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{M_or_N}_{p_id} * CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX(NUM_GMMA_{A_or_B}_ELEMENT_{p_id} * BITS_PER_ELEMENT_{guid} / BITS_PER_REGISTER_{r_id}, 1); static constexpr int BYTES_PER_LOAD_{guid} = FORT_MIN(CTA_TILE_{M_or_N_or_K}_{p_id} * BITS_PER_ELEMENT_{guid} / 8, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int SWIZZLE_SCALE_{guid} = BYTES_PER_LOAD_{guid} / BYTES_PER_BANK_{p_id}; lds_32(®[m][0], precompute_offset[m][0][0] + load_offset); lds_32(®[m][1], precompute_offset[m][1][0] + load_offset); lds_32(®[m][2], precompute_offset[m][0][1] + load_offset); lds_32(®[m][3], precompute_offset[m][1][1] + load_offset); lds_32(®[m][0], precompute_offset[m][0][0] + load_offset); lds_32(®[m][1], precompute_offset[m][0][1] + load_offset); lds_32(®[m][2], precompute_offset[m][1][0] + load_offset); lds_32(®[m][3], precompute_offset[m][1][1] + load_offset); class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = tiw % CORE_MATRIX_{A_or_B}_COLS_{m_id}; const uint32_t col_id = tiw / CORE_MATRIX_{A_or_B}_COLS_{m_id}; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ #pragma unroll for (int j = 0; j < 2; ++j) {{ uint32_t col_offset = ({warp_group_offset} + (wid % WARPS_PER_GROUP_{r_id}) {r_or_d} WARPS_M_{p_id} * WARP_TILE_{M_or_N}_{p_id} + m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id} + i * CORE_MATRIX_{A_or_B}_ROWS_{m_id} + col_id) * BITS_PER_ELEMENT_{guid} / 8; uint32_t unswizzled_addr = (col_offset / MAX_TMA_LOAD_ROW_BYTES_{p_id}) * CTA_TILE_K_{p_id} * BYTES_PER_LOAD_{guid} + (col_offset % MAX_TMA_LOAD_ROW_BYTES_{p_id}) + j * CORE_MATRIX_{A_or_B}_COLS_{m_id} * BYTES_PER_LOAD_{guid} + row_id * BYTES_PER_LOAD_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / 8) % SWIZZLE_SCALE_{guid}); precompute_offset[m][i][j] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} }} }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t load_offset = k * UNIT_MATRIX_{A_or_B}_COLS_{m_id} * BYTES_PER_LOAD_{guid} + buffer_offset; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{{lds_code} }} }} private: uint32_t precompute_offset[XMMAS_{M_or_N}_{p_id}][2][2]; }};(tiw % CORE_MATRIX_A_COLS_{m_id}) + (tiw / (2 * CORE_MATRIX_A_COLS_{m_id})) * CORE_MATRIX_A_COLS_{m_id}((tiw / CORE_MATRIX_A_COLS_{m_id}) % 2) * CORE_MATRIX_A_ROWS_{m_id}tiw % UNIT_MATRIX_B_COLS_{m_id}(tiw / UNIT_MATRIX_B_COLS_{m_id}) * CORE_MATRIX_B_ROWS_{m_id} class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = {row_id}; const uint32_t col_id = {col_id}; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ uint32_t col_offset = ({warp_group_offset} + (wid % WARPS_PER_GROUP_{r_id}) {r_or_d} WARPS_M_{p_id} * WARP_TILE_{M_or_N}_{p_id} + m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id} + col_id) * BITS_PER_ELEMENT_{guid} / 8; uint32_t unswizzled_addr = (col_offset / MAX_TMA_LOAD_ROW_BYTES_{p_id}) * CTA_TILE_K_{p_id} * BYTES_PER_LOAD_{guid} + (col_offset % MAX_TMA_LOAD_ROW_BYTES_{p_id}) + row_id * BYTES_PER_LOAD_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / 8) % SWIZZLE_SCALE_{guid}); precompute_offset[m] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t load_offset = k * UNIT_MATRIX_{A_or_B}_COLS_{m_id} * BYTES_PER_LOAD_{guid} + buffer_offset; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ ldsmt_x4(reg[m], precompute_offset[m] + load_offset); }} }} private: uint32_t precompute_offset[XMMAS_{M_or_N}_{p_id}]; }}; r32 tmp; tmp = reg[m][1]; reg[m][1] = reg[m][2]; reg[m][2] = tmp; class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = tiw; const uint32_t col_id = 0; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ uint32_t col_offset = ({warp_group_offset} + (wid % WARPS_PER_GROUP_{r_id}) {r_or_d} WARPS_M_{p_id} * WARP_TILE_{M_or_N}_{p_id} + m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id} + col_id) * BITS_PER_ELEMENT_{guid} / 8; uint32_t unswizzled_addr = (col_offset / MAX_TMA_LOAD_ROW_BYTES_{p_id}) * CTA_TILE_K_{p_id} * BYTES_PER_LOAD_{guid} + (col_offset % MAX_TMA_LOAD_ROW_BYTES_{p_id}) + row_id * BYTES_PER_LOAD_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / 8) % SWIZZLE_SCALE_{guid}); precompute_offset[m] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t load_offset = k * UNIT_MATRIX_{A_or_B}_COLS_{m_id} * BYTES_PER_LOAD_{guid} + buffer_offset; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ ldsmt_8bit_x2(reg[m], precompute_offset[m] + load_offset);{register_reorder_code} }} }} private: uint32_t precompute_offset[XMMAS_{M_or_N}_{p_id}]; }};tiw % UNIT_MATRIX_A_ROWS_{m_id}(tiw / UNIT_MATRIX_A_ROWS_{m_id}) * CORE_MATRIX_A_COLS_{m_id}((tiw / CORE_MATRIX_B_ROWS_{m_id}) / 2) * CORE_MATRIX_B_ROWS_{m_id} + tiw % CORE_MATRIX_B_ROWS_{m_id}((tiw / CORE_MATRIX_B_ROWS_{m_id}) % 2) * CORE_MATRIX_B_COLS_{m_id} class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = {row_id}; const uint32_t col_id = {col_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ uint32_t unswizzled_addr = ({warp_group_offset} + k * UNIT_MATRIX_{A_or_B}_COLS_{m_id} + col_id) * BITS_PER_ELEMENT_{guid} / 8 + ((wid % WARPS_PER_GROUP_{r_id}) {r_or_d} WARPS_M_{p_id} * WARP_TILE_{M_or_N}_{p_id} + row_id) * BYTES_PER_LOAD_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / 8) % SWIZZLE_SCALE_{guid}); precompute_offset[k] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t load_offset = precompute_offset[k] + buffer_offset; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ ldsm_x4(reg[m], load_offset + m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id} * BYTES_PER_LOAD_{guid}); }} }} private: uint32_t precompute_offset[XMMAS_K_{p_id}]; }}; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{M_or_N}_{p_id} * CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8 / BLOCK_SCALE_BLOCK_SIZE_{m_id}; static constexpr int REGISTERS_PER_VECTOR_{guid} = 1; class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ if (tiw % 4 == 2 || tiw % 4 == 3) {{ tiw -= 2; }} int idx_non_k = {warp_group_offset} + ((wid % WARPS_PER_GROUP_{r_id}) {r_or_d} WARPS_M_{p_id}) * WARP_TILE_{M_or_N}_{p_id} + CORE_MATRIX_{A_or_B}_ROWS_{m_id} * (tiw % 4) + tiw / 4; precompute_offset = smem + (idx_non_k / BLOCK_DIM_NON_K_{m_id} * (NUM_BLOCKS_K_{m_id} * BLOCK_DIM_NON_K_{m_id} * BLOCK_DIM_K_{m_id}) + idx_non_k % BLOCK_DIM_NON_K_{m_id} % SWIZZLED_BLOCK_DIM_NON_K_{m_id} * SWIZZLED_BLOCK_DIM_K_{m_id} + idx_non_k % BLOCK_DIM_NON_K_{m_id} / SWIZZLED_BLOCK_DIM_NON_K_{m_id} * BLOCK_DIM_K_{m_id}) * BITS_PER_ELEMENT_{guid} / 8; }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ if (k % XMMAS_K_TILES_PER_LDS_{m_id} == 0) {{ uint32_t k_offset = (k * VECTOR_SCALE_{m_id} / BLOCK_DIM_K_{m_id}) * (BLOCK_DIM_NON_K_{m_id} * BLOCK_DIM_K_{m_id} * BITS_PER_ELEMENT_{guid} / 8); #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ uint32_t m_offset = (m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id} % SWIZZLED_BLOCK_DIM_NON_K_{m_id} * SWIZZLED_BLOCK_DIM_K_{m_id} + m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id} / SWIZZLED_BLOCK_DIM_NON_K_{m_id} * BLOCK_DIM_K_{m_id}) * BITS_PER_ELEMENT_{guid} / 8; lds_32(®[m][0], precompute_offset + buffer_offset + k_offset + m_offset); }} }} }} private: uint32_t precompute_offset; }}; static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_load_element}; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{M_or_N}_{p_id}{two_cta_factor_m_or_n} * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; static constexpr int ROWS_PER_TILE_{guid} = CTA_TILE_{K_or_M_or_N}_{p_id}{two_cta_factor_k_or_m_or_n}; static constexpr int BYTES_PER_ROW_{guid} = FORT_MIN(CTA_TILE_{M_or_N_or_K}_{p_id}{two_cta_factor_m_or_n_or_k} * BYTES_PER_ELEMENT_{guid}, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int BYTES_PER_VECTOR_{guid} = BYTES_PER_BANK_{p_id} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_ELEMENT_{p_id}; static constexpr int REGISTERS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_REGISTER_{r_id}; static constexpr int BYTES_PER_ACCESS_{guid} = {bytes_per_access}; static constexpr int ACCESS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_ACCESS_{guid}; static constexpr int SWIZZLE_SCALE_{guid} = BYTES_PER_ROW_{guid} / ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}); class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = (wid % 4) * ROWS_PER_WARP_{A_or_B}_{m_id} + tiw / THREADS_PER_ROW_{A_or_B}_{m_id}; const uint32_t tma_block_id = (tiw % THREADS_PER_ROW_{A_or_B}_{m_id}) / (MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_VECTOR_{guid}); const uint32_t col_id = (tiw % THREADS_PER_ROW_{A_or_B}_{m_id}) % (MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_VECTOR_{guid}); this->smem = smem; this->smem_offset = (tma_block_id * ROWS_PER_TILE_{guid} + row_id) * BYTES_PER_ROW_{guid} + col_id * BYTES_PER_VECTOR_{guid}; }} inline __device__ void load(int buffer_id, r32 reg[LDS_PER_TILE_{A_or_B}_{m_id}][LDS_PER_ROW_{A_or_B}_{m_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t smem_addr_base = smem + buffer_id * BYTES_PER_SMEM_{guid}; #pragma unroll for (int i = 0; i < LDS_PER_TILE_{A_or_B}_{m_id}; ++i) {{ #pragma unroll for (int j = 0; j < LDS_PER_ROW_{A_or_B}_{m_id}; ++j) {{ #pragma unroll for (int k = 0; k < ACCESS_PER_VECTOR_{guid}; ++k) {{ uint32_t unswizzled_addr = smem_offset + i * ROWS_PER_LOAD_{A_or_B}_{m_id} * BYTES_PER_ROW_{guid} + j * ROWS_PER_TILE_{guid} * THREADS_PER_ROW_{A_or_B}_{m_id} * BYTES_PER_VECTOR_{guid} + k * BYTES_PER_ACCESS_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}); uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id / (8 / {banks_per_swizzle_unit})) % SWIZZLE_SCALE_{guid}); lds_{bits_per_access}(reinterpret_cast(reinterpret_cast(reg[i][j]) + k * BYTES_PER_ACCESS_{guid}), smem_addr_base + swizzled_bank_id * ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id}) + unswizzled_addr % ({banks_per_swizzle_unit} * BYTES_PER_BANK_{p_id})); }} }} }} }} private: uint32_t smem; uint32_t smem_offset; }}; static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_load_elem}; static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_{M_or_N}_{p_id} * CTA_TILE_K_{p_id} * BITS_PER_ELEMENT_{guid} / 8 / BLOCK_SCALE_BLOCK_SIZE_{m_id}; static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_load_element}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX(NUM_GMMA_A_ELEMENT_{p_id} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_REGISTER_{r_id}, 1); static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_M_{p_id} * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid};r32 reg[XMMAS_K_{p_id}][XMMAS_M_{p_id}][REGISTERS_PER_VECTOR_{guid}] const uint32_t warp_group_id = (wid - 4) / 4; const uint32_t row_id_a = tiw % 4; const uint32_t col_id_a = tiw / 4; #pragma unroll for (uint32_t m = 0; m < XMMAS_M_{p_id}; ++m) {{ uint32_t m_matrix_id = (warp_group_id * XMMAS_M_{p_id} + m) * 4 + wid % 4; #pragma unroll for (uint32_t i = 0; i < 2; ++i) {{ #pragma unroll for (uint32_t j = 0; j < 2; ++j) {{ #pragma unroll for (uint32_t n = 0; n < ELEMS_PER_VECTOR_{p_id}; ++n) {{ uint32_t unswizzled_addr = (((m_matrix_id / M_MATRICES_PER_TMA_LOAD) * CTA_TILE_K_{p_id} + i * CORE_MATRIX_A_COLS_{m_id} + row_id_a * ELEMS_PER_VECTOR_{p_id} + n) * ACTUAL_ELEMS_PER_ROW + (m_matrix_id % M_MATRICES_PER_TMA_LOAD) * UNIT_MATRIX_A_ROWS_{m_id} + j * CORE_MATRIX_A_ROWS_{m_id} + col_id_a) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[m][i][j][n] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} }} }} uint32_t k_bias = k * UNIT_MATRIX_A_COLS_{m_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid} + buffer_id * BYTES_PER_SMEM_{guid}; char* dst_ptr = reinterpret_cast(reg[k][0]); #pragma unroll for (uint32_t m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (uint32_t i = 0; i < 2; ++i) {{ #pragma unroll for (uint32_t j = 0; j < 2; ++j) {{ #pragma unroll for (uint32_t n = 0; n < ELEMS_PER_VECTOR_{p_id}; ++n) {{ lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), precompute_offset[m][i][j][n] + k_bias); dst_ptr += {load_size_in_bytes}; }} }} }} }} static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_M_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t M_MATRICES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / UNIT_MATRIX_A_ROWS_{m_id}; uint32_t precompute_offset[XMMAS_M_{p_id}][2][2][ELEMS_PER_VECTOR_{p_id}]; const uint32_t warp_group_id = (wid - 4) / 4; const uint32_t row_id_a = tiw / 4; const uint32_t col_id_a = tiw % 4; smem += warp_group_id * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (uint32_t k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (uint32_t j = 0; j < 2; ++j) {{ uint32_t unswizzled_addr = (((k / K_TILES_PER_TMA_LOAD) * CTA_TILE_M_{p_id} + (wid % 4) * UNIT_MATRIX_A_ROWS_{m_id} + row_id_a) * ACTUAL_ELEMS_PER_ROW + (k % K_TILES_PER_TMA_LOAD) * UNIT_MATRIX_A_COLS_{m_id} + j * CORE_MATRIX_A_COLS_{m_id} + col_id_a * ELEMS_PER_VECTOR_{p_id}) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[k][j] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} uint32_t src_addr_buffer_bias = buffer_id * BYTES_PER_SMEM_{guid}; #pragma unroll for (uint32_t m = 0; m < XMMAS_M_{p_id}; ++m) {{ char* dst_ptr = reinterpret_cast(reg[k][m]); uint32_t src_addr_m_bias = m * ACTUAL_GMMA_TILE_SIZE + src_addr_buffer_bias; uint32_t src_addr = precompute_offset[k][0] + src_addr_m_bias; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); dst_ptr += {load_size_in_bytes}; src_addr += ACTUAL_CORE_TILE_SIZE; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); dst_ptr += {load_size_in_bytes}; src_addr = precompute_offset[k][1] + src_addr_m_bias; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); dst_ptr += {load_size_in_bytes}; src_addr += ACTUAL_CORE_TILE_SIZE; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); }} static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_K_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t K_TILES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / GMMA_TILE_K_{p_id}; static constexpr uint32_t ACTUAL_GMMA_TILE_SIZE = GMMA_TILE_M_{p_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid}; static constexpr uint32_t ACTUAL_CORE_TILE_SIZE = CORE_MATRIX_A_ROWS_{m_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid}; uint32_t precompute_offset[XMMAS_K_{p_id}][2]; const uint32_t warp_group_id = (wid - 4) / 4; const uint32_t col_id_a = tiw % GMMA_TILE_K_{p_id}; const uint32_t row_id_a = tiw / GMMA_TILE_K_{p_id}; smem += warp_group_id * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (uint32_t k = 0; k < XMMAS_K_{p_id}; ++k) {{ precompute_offset[k] = smem + (col_id_a + k * GMMA_TILE_K_{p_id}) * GMMA_TILE_M_{p_id} * BYTES_PER_ELEMENT_{guid} + (((wid % 4) * 2 + row_id_a) ^ ((col_id_a % 8) >> {swizzle_factor})) * BYTES_PER_BANK_{p_id}; }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ r32 tmp[4]; ldsmt_x4(tmp, precompute_offset[k] + m * CTA_TILE_K_{p_id} * GMMA_TILE_M_{p_id} * BYTES_PER_ELEMENT_{guid} + buffer_id * BYTES_PER_SMEM_{guid}); reg[k][m][0] = tmp[0]; reg[k][m][1] = tmp[2]; reg[k][m][2] = tmp[1]; reg[k][m][3] = tmp[3]; }} const uint32_t warp_group_id = (wid - 4) / 4; const uint32_t row_id_a = tiw % UNIT_MATRIX_A_ROWS_{m_id}; const uint32_t col_id_a = tiw / UNIT_MATRIX_A_ROWS_{m_id}; smem += warp_group_id * (CTA_TILE_M_{p_id} / GROUPS_M_{p_id}) * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; uint32_t warp_offset = (wid % 4) * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid} * UNIT_MATRIX_A_ROWS_{m_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ precompute_offset[k] = smem + warp_offset + row_id_a * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid} + ((col_id_a + k * 2) ^ ((row_id_a % 8) >> {swizzle_factor})) * BYTES_PER_BANK_{p_id}; }} #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ ldsm_x4(reg[k][m], precompute_offset[k] + m * CTA_TILE_K_{p_id} * GMMA_TILE_M_{p_id} * BYTES_PER_ELEMENT_{guid} + buffer_id * BYTES_PER_SMEM_{guid}); }} static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_load_element}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX(NUM_GMMA_B_ELEMENT_{p_id} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_REGISTER_{r_id}, 1); static constexpr int BYTES_PER_SMEM_{guid} = CTA_TILE_N_{p_id} * CTA_TILE_K_{p_id} * BYTES_PER_ELEMENT_{guid}; const uint32_t row_id = ((wid % 4) / 2) * CORE_MATRIX_B_COLS_{m_id} + (tiw % 4) * ELEMS_PER_VECTOR_{p_id}; const uint32_t col_id = ((wid % 4) % 2) * CORE_MATRIX_B_ROWS_{m_id} + (tiw / 4); #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ #pragma unroll for (int i = 0; i < ELEMS_PER_VECTOR_{p_id}; ++i) {{ uint32_t unswizzled_addr = (((n / N_MATRICES_PER_TMA_LOAD) * CTA_TILE_K_{p_id} + row_id + i) * ACTUAL_ELEMS_PER_ROW + (n % N_MATRICES_PER_TMA_LOAD) * UNIT_MATRIX_B_ROWS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[n][i] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} uint32_t k_bias = k * UNIT_MATRIX_B_COLS_{m_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid} + buffer_id * BYTES_PER_SMEM_{guid}; #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ char* dst_ptr = reinterpret_cast(reg[k][n]); #pragma unroll for (int i = 0; i < ELEMS_PER_VECTOR_{p_id}; ++i) {{ lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), precompute_offset[n][i] + k_bias); dst_ptr += {load_size_in_bytes}; }} }} static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_N_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t N_MATRICES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / UNIT_MATRIX_B_ROWS_{m_id}; uint32_t precompute_offset[NUM_LDSM_{m_id}][ELEMS_PER_VECTOR_{p_id}]; const uint32_t row_id = ((wid % 4) % 2) * CORE_MATRIX_B_ROWS_{m_id} + (tiw / 4); const uint32_t col_id = ((wid % 4) / 2) * CORE_MATRIX_B_COLS_{m_id} + (tiw % 4) * ELEMS_PER_VECTOR_{p_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ uint32_t unswizzled_addr = (((k / K_TILES_PER_TMA_LOAD) * CTA_TILE_N_{p_id} + row_id) * ACTUAL_ELEMS_PER_ROW + (k % K_TILES_PER_TMA_LOAD) * UNIT_MATRIX_B_COLS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[k] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} uint32_t src_addr = precompute_offset[k] + buffer_id * BYTES_PER_SMEM_{guid}; #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ lds_{load_size_in_bits}(reg[k][n], src_addr); src_addr += ACTUAL_LDSM_TILE_SIZE; }} static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_K_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t K_TILES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / GMMA_TILE_K_{p_id}; static constexpr uint32_t ACTUAL_LDSM_TILE_SIZE = UNIT_MATRIX_B_ROWS_{m_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid}; uint32_t precompute_offset[XMMAS_K_{p_id}]; const uint32_t row_id = ((wid % 4) / 2) * CORE_MATRIX_B_COLS_{m_id} + tiw % CORE_MATRIX_B_COLS_{m_id}; const uint32_t col_id = ((wid % 4) % 2) * CORE_MATRIX_B_ROWS_{m_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ uint32_t unswizzled_addr = (((n / N_MATRICES_PER_TMA_LOAD) * CTA_TILE_K_{p_id} + k * UNIT_MATRIX_B_COLS_{m_id} + row_id) * ACTUAL_ELEMS_PER_ROW + (n % N_MATRICES_PER_TMA_LOAD) * UNIT_MATRIX_B_ROWS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[k][n] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ ldsmt_x1(reg[k][n], precompute_offset[k][n] + buffer_id * BYTES_PER_SMEM_{guid}); }} const uint32_t row_id = ((wid % 4) % 2) * CORE_MATRIX_B_ROWS_{m_id} + tiw % CORE_MATRIX_B_ROWS_{m_id}; const uint32_t col_id = ((wid % 4) / 2) * CORE_MATRIX_B_COLS_{m_id}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ uint32_t unswizzled_addr = (row_id * CTA_TILE_K_{p_id} + k * UNIT_MATRIX_B_COLS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % {swizzle_rows}); precompute_offset[k] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ ldsm_x1(reg[k][n], precompute_offset[k] + n * CTA_TILE_K_{p_id} * UNIT_MATRIX_B_ROWS_{m_id} * BYTES_PER_ELEMENT_{guid} + buffer_id * BYTES_PER_SMEM_{guid}); }}{global_variable_decl} class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{{constructor_code} }} inline __device__ void load(int k, int buffer_id, {register_decl}) {{{load_function_code} }} private:{member_variable_code} }}; static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_element}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX(NUM_GMMA_{a_or_b}_ELEMENT_{p_id} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_REGISTER_{r_id}, 1); static constexpr int bytes_per_ld_{guid} = FORT_MIN(CTA_TILE_{m_or_n_or_k}_{p_id} * BYTES_PER_ELEMENT_{guid}, MAX_TMA_LOAD_ROW_BYTES_{p_id}); static constexpr int SWIZZLE_SCALE_{guid} = bytes_per_ld_{guid} / BYTES_PER_BANK_{p_id}; class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t row_id = (tiw % 4) * ELEMS_PER_VECTOR_{p_id}; const uint32_t col_id = (tiw / 4); #pragma unroll for (int m = 0; m < XMMAS_{m_or_n}_{p_id}; ++m) {{ uint32_t xmma_tile_id = (wid {r_or_d} WARPS_M_{p_id}) * XMMAS_{m_or_n}_{p_id} + m; #pragma unroll for (int i = 0; i < 4; ++i) {{ #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ uint32_t unswizzled_addr = ((xmma_tile_id / XMMA_TILES_PER_TMA_LOAD) * CTA_TILE_K_{p_id} + (i {d_or_r} 2) * CORE_MATRIX_{a_or_b}_COLS_{m_id} + row_id + j) * bytes_per_ld_{guid} + ((xmma_tile_id % XMMA_TILES_PER_TMA_LOAD) * UNIT_MATRIX_{a_or_b}_ROWS_{m_id} + (i {r_or_d} 2) * CORE_MATRIX_{a_or_b}_ROWS_{m_id} + col_id) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % SWIZZLE_SCALE_{guid}); precompute_offset[m][i][j] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} }} }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{m_or_n}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ uint32_t src_addr_bias = buffer_offset + k * UNIT_MATRIX_{a_or_b}_COLS_{m_id} * bytes_per_ld_{guid}; #pragma unroll for (int m = 0; m < XMMAS_{m_or_n}_{p_id}; ++m) {{ char* dst_ptr = reinterpret_cast(reg[m]); #pragma unroll for (int i = 0; i < 4; ++i) {{ #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), precompute_offset[m][i][j] + src_addr_bias); dst_ptr += {load_size_in_bytes}; }} }} }} }} private: static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_{m_or_n}_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t XMMA_TILES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / UNIT_MATRIX_{a_or_b}_ROWS_{m_id}; uint32_t precompute_offset[XMMAS_{m_or_n}_{p_id}][4][ELEMS_PER_VECTOR_{p_id}]; }}; uint32_t src_addr_m_bias = m * ACTUAL_UNIT_TILE_SIZE + buffer_offset; char* dst_ptr = reinterpret_cast(reg[m]); uint32_t src_addr = precompute_offset[k][0] + src_addr_m_bias; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); dst_ptr += {load_size_in_bytes}; src_addr += ACTUAL_CORE_TILE_SIZE; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); dst_ptr += {load_size_in_bytes}; src_addr = precompute_offset[k][1] + src_addr_m_bias; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); dst_ptr += {load_size_in_bytes}; src_addr += ACTUAL_CORE_TILE_SIZE; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr); uint32_t src_addr_m_bias = m * ACTUAL_UNIT_TILE_SIZE + buffer_offset; char* dst_ptr = reinterpret_cast(reg[m]); uint32_t src_addr_0 = precompute_offset[k][0] + src_addr_m_bias; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr_0); dst_ptr += {load_size_in_bytes}; uint32_t src_addr_1 = precompute_offset[k][1] + src_addr_m_bias; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr_1); dst_ptr += {load_size_in_bytes}; src_addr_0 += ACTUAL_CORE_TILE_SIZE; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr_0); dst_ptr += {load_size_in_bytes}; src_addr_1 += ACTUAL_CORE_TILE_SIZE; lds_{load_size_in_bits}(reinterpret_cast(dst_ptr), src_addr_1); class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ #pragma unroll for (uint32_t k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (uint32_t j = 0; j < 2; ++j) {{ uint32_t unswizzled_addr = (((k / K_TILES_PER_TMA_LOAD) * CTA_TILE_{m_or_n}_{p_id} + (wid {r_or_d} WARPS_M_{p_id}) * WARP_TILE_{m_or_n}_{p_id} + (tiw / 4)) * ACTUAL_ELEMS_PER_ROW + (k % K_TILES_PER_TMA_LOAD) * UNIT_MATRIX_{a_or_b}_COLS_{m_id} + j * CORE_MATRIX_{a_or_b}_COLS_{m_id} + (tiw % 4) * ELEMS_PER_VECTOR_{p_id}) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % SWIZZLE_SCALE_{guid}); precompute_offset[k][j] = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} }} }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{m_or_n}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ #pragma unroll for (int m = 0; m < XMMAS_{m_or_n}_{p_id}; ++m) {{{load_function} }} }} private: static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_K_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t K_TILES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / (32 / BYTES_PER_ELEMENT_{p_id}); static constexpr uint32_t ACTUAL_UNIT_TILE_SIZE = UNIT_MATRIX_{a_or_b}_ROWS_{m_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid}; static constexpr uint32_t ACTUAL_CORE_TILE_SIZE = CORE_MATRIX_{a_or_b}_ROWS_{m_id} * ACTUAL_ELEMS_PER_ROW * BYTES_PER_ELEMENT_{guid}; uint32_t precompute_offset[XMMAS_K_{p_id}][2]; }};(tiw / CORE_MATRIX_A_COLS_{}) % 2 class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t col_id = {col_id}; const uint32_t row_id = {row_id}; uint32_t unswizzled_addr = (((wid {r_or_d} WARPS_M_{p_id}) / TILES_PER_TMA_LOAD) * CTA_TILE_K_{p_id} + row_id) * bytes_per_ld_{guid} + (((wid {r_or_d} WARPS_M_{p_id}) % TILES_PER_TMA_LOAD) * WARP_TILE_{m_or_n}_{p_id} + col_id * CORE_MATRIX_{a_or_b}_ROWS_{m_id}) * BYTES_PER_ELEMENT_{guid}; uint32_t unswizzled_bank_id = unswizzled_addr / BYTES_PER_BANK_{p_id}; uint32_t swizzled_bank_id = unswizzled_bank_id ^ ((unswizzled_bank_id >> 3) % SWIZZLE_SCALE_{guid}); precompute_offset = smem + swizzled_bank_id * BYTES_PER_BANK_{p_id} + unswizzled_addr % BYTES_PER_BANK_{p_id}; }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{m_or_n}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ #pragma unroll for (int m = 0; m < XMMAS_{m_or_n}_{p_id}; ++m) {{ ldsmt_x4(reg[m], precompute_offset + k * (32 / BYTES_PER_ELEMENT_{guid}) * bytes_per_ld_{guid} + buffer_offset); move_smem_to_next_ki(precompute_offset, m, XMMAS_{m_or_n}_{p_id}, BYTES_PER_BANK_{p_id}); }} }} private: static constexpr uint32_t ACTUAL_ELEMS_PER_ROW = FORT_MIN(CTA_TILE_{m_or_n}_{p_id}, MAX_TMA_LOAD_ROW_BYTES_{p_id} / BYTES_PER_ELEMENT_{guid}); static constexpr uint32_t TILES_PER_TMA_LOAD = ACTUAL_ELEMS_PER_ROW / WARP_TILE_{m_or_n}_{p_id}; uint32_t precompute_offset; }}; class Lds_tile_{guid} {{ public: inline __device__ Lds_tile_{guid}(uint32_t smem, int tiw, int wid) {{ const uint32_t col_id = {col_id}; const uint32_t row_id = {row_id}; precompute_offset = smem + (wid {r_or_d} WARPS_M_{p_id}) * WARP_TILE_{m_or_n}_{p_id} * bytes_per_ld_{guid} + (col_id ^ ((row_id / (8 / SWIZZLE_SCALE_{guid})) % SWIZZLE_SCALE_{guid})) * BYTES_PER_BANK_{p_id} + row_id * bytes_per_ld_{guid}; }} inline __device__ void load(int k, int buffer_offset, r32 reg[XMMAS_{m_or_n}_{p_id}][REGISTERS_PER_VECTOR_{guid}]) {{ #pragma unroll for (int m = 0; m < XMMAS_{m_or_n}_{p_id}; ++m) {{ ldsm_x4(reg[m], precompute_offset + m * 16 * bytes_per_ld_{guid} + buffer_offset); }} move_smem_to_next_ki(precompute_offset, k, XMMAS_K_{p_id}, BYTES_PER_BANK_{p_id}); }} private: uint32_t precompute_offset; }};ELEMENTS_PER_VECTOR_{e_id} * BITS_PER_ACC_{p_id} / BITS_PER_REGISTER_{r_id} #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{{data_cast} }} #pragma unroll for (int i = 0; i < LDS_PER_TILE_{e_id}; ++i) {{ r32 tmp[4]; lds_128(tmp, base_lds_offset_{guid} + i * BYTES_PER_BANK_{e_id}); {tmp_}reg_{guid}_{port}[c][0][i * 2 + 0] = tmp[0]; {tmp_}reg_{guid}_{port}[c][0][i * 2 + 1] = tmp[1]; {tmp_}reg_{guid}_{port}[c][1][i * 2 + 0] = tmp[2]; {tmp_}reg_{guid}_{port}[c][1][i * 2 + 1] = tmp[3]; }}{data_cast_back_code} #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ lds_128(&{tmp_}reg_{guid}_{port}[c][r][0], lds_offset_{guid} + r * BYTES_PER_BANK_{e_id} * ACC_CORE_MATRIX_ROWS_{e_id}); }}{data_cast_back_code} #pragma unroll for (int i = 0; i < ELEMENTS_PER_VECTOR_{e_id}; ++i) {{ *(reinterpret_cast(acc_{guid}) + i) = *reinterpret_cast(acc_{guid} + i); }} r32 reg_{guid}_{port}[LDS_TILES_N_{e_id}][VECTORS_PER_LDS_TILES_{e_id}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{{data_cast} }} }} r32 {tmp_}reg_{guid}_{port}[LDS_TILES_N_{e_id}][VECTORS_PER_LDS_TILES_{e_id}][ELEMENTS_PER_VECTOR_{e_id}];{tmp_reg_decl} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ #pragma unroll for (int i = 0; i < ELEMENTS_PER_VECTOR_{e_id}; ++i) {{ lds_32(&{tmp_}reg_{guid}_{port}[c][r][i], base_lds_offset_{guid} + m * EPILOGUE_SMEM_SIZE_PER_XMMA_M_{e_id} + c * BYTES_PER_LDS_TILE_{e_id} + r * 2 * BYTES_PER_ACC_{p_id} + i * 4 * BYTES_PER_BANK_{e_id}); }} }} }}{data_cast_back_code}{tmp_reg_decl} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int i = 0; i < LDS_PER_TILE_{e_id}; ++i) {{ r32 tmp[4]; lds_128(tmp, base_lds_offset_{guid} + i * BYTES_PER_BANK_{e_id} + c * BYTES_PER_LDS_TILE_{e_id} + {xmma_m_offset}); {tmp_}reg_{guid}_{port}[c][0][i*2 + 0] = tmp[0]; {tmp_}reg_{guid}_{port}[c][0][i*2 + 1] = tmp[1]; {tmp_}reg_{guid}_{port}[c][1][i*2 + 0] = tmp[2]; {tmp_}reg_{guid}_{port}[c][1][i*2 + 1] = tmp[3]; }} }}{data_cast_back_code} r32 {tmp_}reg_{guid}_{port}[LDS_TILES_N_{e_id}][VECTORS_PER_LDS_TILES_{e_id}][ELEMENTS_PER_VECTOR_{e_id}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ lds_128(&{tmp_}reg_{guid}_{port}[c][r][0], lds_offset_{guid} + c * BYTES_PER_LDS_TILE_{e_id} + {xmma_m_offset} + r * BYTES_PER_BANK_{e_id} * ACC_CORE_MATRIX_ROWS_{e_id}); }} }}{data_cast_back_code} #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ lds_128(®_{guid}_0[ki][i][0], shared_ptr_{guid} + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * WARPS_M_{guid} * BYTES_PER_LD_{guid} + (ki / 8) * TILE_M_{guid} * BYTES_PER_LD_{guid} + 0 * 8 * 128); lds_128(®_{guid}_0[ki][i][4], shared_ptr_{guid} + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * WARPS_M_{guid} * BYTES_PER_LD_{guid} + (ki / 8) * TILE_M_{guid} * BYTES_PER_LD_{guid} + 1 * 8 * 128); }} move_smem_to_next_ki(shared_ptr_{guid}, (ki % 8), 8, BYTES_PER_BANK_{p_id} / 2); #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ ldsm_x4(reg_{guid}_0[ki][i], shared_ptr_{guid} + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * WARPS_M_{guid} * BYTES_PER_LD_{guid} + (ki / 4) * TILE_M_{guid} * BYTES_PER_LD_{guid}); }} move_smem_to_next_ki(shared_ptr_{guid}, (ki % 4), 4, BYTES_PER_BANK_{p_id}); #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ lds_128(®_{guid}_0[ki&1][i][0 ], shared_ptr_{guid}[0] + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * BYTES_PER_LD_{guid} + (ki / 8) * TILE_M_{guid} * BYTES_PER_LD_{guid} + 0 * 128); lds_128(®_{guid}_0[ki&1][i][4 ], shared_ptr_{guid}[1] + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * BYTES_PER_LD_{guid} + (ki / 8) * TILE_M_{guid} * BYTES_PER_LD_{guid} + 0 * 128); lds_128(®_{guid}_0[ki&1][i][8 ], shared_ptr_{guid}[0] + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * BYTES_PER_LD_{guid} + (ki / 8) * TILE_M_{guid} * BYTES_PER_LD_{guid} + 8 * 128); lds_128(®_{guid}_0[ki&1][i][12], shared_ptr_{guid}[1] + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * BYTES_PER_LD_{guid} + (ki / 8) * TILE_M_{guid} * BYTES_PER_LD_{guid} + 8 * 128); }} move_smem_to_next_ki(shared_ptr_{guid}[0], (ki % 8), 8, BYTES_PER_BANK_{p_id} / 2); move_smem_to_next_ki(shared_ptr_{guid}[1], (ki % 8), 8, BYTES_PER_BANK_{p_id} / 2); #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ ldsm_x4(reg_{guid}_0[ki&1][i], shared_ptr_{guid} + ldsm_smem_buffer_offset_{guid} + i * WARP_TILE_M_{guid} * BYTES_PER_LD_{guid} + (ki / 4) * TILE_M_{guid} * BYTES_PER_LD_{guid}); }} move_smem_to_next_ki(shared_ptr_{guid}, (ki % 4), 4, BYTES_PER_BANK_{p_id}); #pragma unroll for (int i = 0; i < REGS_N_{guid}; ++i) {{ lds_128(®_{guid}_0[ki&1][i][0 ], shared_ptr_{guid}[i%2][(ki % 2) * 4 + 0] + ldsm_smem_buffer_offset_{guid} + (ki / 2) * 8 * BYTES_PER_LD_{guid} + (i / 2) * TILE_M_{guid} * BYTES_PER_LD_{guid}); lds_128(®_{guid}_0[ki&1][i][4 ], shared_ptr_{guid}[i%2][(ki % 2) * 4 + 1] + ldsm_smem_buffer_offset_{guid} + (ki / 2) * 8 * BYTES_PER_LD_{guid} + (i / 2) * TILE_M_{guid} * BYTES_PER_LD_{guid}); lds_128(®_{guid}_0[ki&1][i][8 ], shared_ptr_{guid}[i%2][(ki % 2) * 4 + 2] + ldsm_smem_buffer_offset_{guid} + (ki / 2) * 8 * BYTES_PER_LD_{guid} + (i / 2) * TILE_M_{guid} * BYTES_PER_LD_{guid}); lds_128(®_{guid}_0[ki&1][i][12], shared_ptr_{guid}[i%2][(ki % 2) * 4 + 3] + ldsm_smem_buffer_offset_{guid} + (ki / 2) * 8 * BYTES_PER_LD_{guid} + (i / 2) * TILE_M_{guid} * BYTES_PER_LD_{guid}); }} #pragma unroll for (int i = 0; i < REGS_N_{guid}; ++i) {{ ldsmt_x4(reg_{guid}_0[ki&1][i], shared_ptr_{guid} + ldsm_smem_buffer_offset_{guid} + ki * WARP_TILE_M_{guid} * BYTES_PER_LD_{guid} + (i / 4) * TILE_M_{guid} * BYTES_PER_LD_{guid}); move_smem_to_next_ki(shared_ptr_{guid}, (i % 4), 4, BYTES_PER_BANK_{p_id}); }} #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ ldsm_x4(reg_{guid}_0[ki][i], shared_ptr_{guid} + i * 16 * WARPS_PER_GROUP_{r_id} * BYTES_PER_LD_{guid} + (ki / 4) * TILE_M_{guid} * BYTES_PER_LD_{guid}); }} move_smem_to_next_ki(shared_ptr_{guid}, (ki % 4), 4, BYTES_PER_BANK_{p_id}); #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ ldsm_x4(reg_{guid}_0[ki&1][i], shared_ptr_{guid} + i * 16 * BYTES_PER_LD_{guid} + (ki / 4) * TILE_M_{guid} * BYTES_PER_LD_{guid} + {buffer_offset}); }} move_smem_to_next_ki(shared_ptr_{guid}, (ki % 4), 4, BYTES_PER_BANK_{p_id}); #pragma unroll for (int i = 0; i < REGS_N_{guid}; ++i) {{ ldsmt_x4(reg_{guid}_0[ki&1][i], shared_ptr_{guid} + ki * 16 * BYTES_PER_LD_{guid} + (i / 4) * TILE_M_{guid} * BYTES_PER_LD_{guid} + {buffer_offset}); move_smem_to_next_ki(shared_ptr_{guid}, (i % 4), 4, BYTES_PER_BANK_{p_id}); }} #pragma unroll for (int i = 0; i < REGS_N_{guid}; ++i) {{ ldsmt_x4(reg_{guid}_0[ki&1][i], shared_ptr_{guid} + ki * 16 * BYTES_PER_LD_{guid} + i * TILE_M_{guid} * BYTES_PER_LD_{guid}); }} #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ #pragma unroll for (int j = 0; j < REGS_N_{guid}; ++j) {{ #pragma unroll for (int r = 0; r < 8; r+=4) {{ lds_128(®_{guid}_0[i][j][r], shared_ptr_{guid} + (j * WARP_TILE_M_{guid} * WARP_TILE_N_{guid} + r * 32 + i * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{guid} * TILE_N_{guid}) * BYTES_PER_ELEMENT_{guid}); }} }} }} #pragma unroll for (int i = 0; i < REGS_M_{guid}; ++i) {{ ldsmt_x4(reg_{guid}_0[ki&1][i], shared_ptr_{guid} + ki * TILE_N_{p_id} * 2 * BYTES_PER_BANK_{p_id} + i * 2 * 16 * 16 * BYTES_PER_ELEMENT_{guid}); }} lds_tile_{guid}.load(ki, smem_mbar_state.index() * BYTES_PER_SMEM_{guid}, reg_{guid}_{port}); lds_tile_{guid}.load(smem_mbar_state.index(), reg_{guid}_{port}); if (elect_one) {{ #pragma unroll for (int k = 0; k < NUM_BLOCKS_K_{m_id}; ++k) {{ #pragma unroll for (int m = 0; m < NUM_BLOCKS_{M_or_N}_{m_id}; ++m) {{ utccp_4x32dp128bit{n_cta_suffix}(tmem_local_{guid} + (k * NUM_BLOCKS_{M_or_N}_{m_id} + m) * REGISTERS_PER_BLOCK_{m_id}, utcmma_smem_desc_{guid}.desc); utcmma_smem_desc_{guid}.add_smem_offset(); }} utcmma_smem_desc_{guid}.add_smem_offset(); }} utcmma_smem_desc_{guid}.add_smem_offset<-NUM_BLOCKS_K_{m_id} * BYTES_PER_BLOCK_{m_id}>(); utcmma_smem_desc_{guid}.increment_smem_buffer(); }} lds_tile_{guid}.load(k_index, lds_buffer_id, reg_{guid}_0); lds_tile_{guid}.load(ki, ldsm_smem_buffer_offset_{guid}, reg_{guid}_0[ki&1]); // shared_load_op {} decls // shared_load_op {} typesbits_per_elementpacking_factorr_or_dwarp_group_offsetcol_idrow_idregister_reorder_code * CTA_TILE_K_{}bytes_per_load_elementbits_per_load_elemload_size_in_bitsload_size_in_bytesload_function_coded_or_rload_functiontiw / UNIT_MATRIX_B_COLS_{}tiw % UNIT_MATRIX_B_COLS_{}tiw / 16tiw % 16(tiw / 8) % 2(tiw % 8) + (tiw / 16) * 8_1cta // shared_load_op {} codetmp_tmp_reg_{}_{}[c][r]data_castdata_cast_back_codeacc_{}{data_cast}tmp_reg_decllds_buf_qo_id * SMEM_Q_{}n_cta_suffix // global_store_op {} includes static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_VECTOR_{guid} = BITS_PER_ELEMENT_{guid} * ELEMENTS_PER_VECTOR_{e_id}; static constexpr int BYTES_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / 8; static constexpr int BITS_PER_ACCESS_{guid} = {bits_access}; static constexpr int BYTES_PER_ACCESS_{guid} = BITS_PER_ACCESS_{guid} / 8; static constexpr int REGISTERS_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} * {packing_factor} / BITS_PER_REGISTER_{r_id}; static constexpr int REGISTERS_PER_ACCESS_{guid} = BITS_PER_ACCESS_{guid} * {packing_factor} / BITS_PER_REGISTER_{r_id}; #define STG_{guid} stg_{bits_access} static constexpr int PADDING_SIZE_{guid} = 16; static constexpr int BYTES_PER_TILE_ROW_{guid} = LDS_TILE_N_{e_id} * BYTES_PER_ELEMENT_{guid} + PADDING_SIZE_{guid}; static constexpr int BYTES_PER_TILE_PER_WARP_{guid} = BYTES_PER_TILE_ROW_{guid} * ACC_CORE_MATRIX_ROWS_{e_id}; static constexpr int BYTES_PER_TILE_{guid} = BYTES_PER_TILE_PER_WARP_{guid} * WARPS_PER_GROUP_{r_id}; static constexpr int BYTES_PER_TILE_ROW_{guid} = LDS_TILE_N_{e_id} * BYTES_PER_ELEMENT_{guid}; static constexpr int BYTES_PER_TILE_PER_WARP_{guid} = BYTES_PER_TILE_ROW_{guid} * LDS_TILE_M_{e_id}; static constexpr int BYTES_PER_TILE_{guid} = BYTES_PER_TILE_PER_WARP_{guid} * WARPS_PER_GROUP_{r_id}; static constexpr int BYTES_PER_ELEMENT_{guid} = 4; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int WARPS_M_{guid} = {warps_m}; static constexpr int WARPS_N_{guid} = {warps_n}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int THREADS_PER_WARP_TILE_M_{guid} = 8; static constexpr int THREADS_PER_WARP_TILE_N_{guid} = 4; static constexpr int ROWS_PER_THREAD_{guid} = TILE_M_{guid} / WARPS_M_{guid} / THREADS_PER_WARP_TILE_M_{guid}; static constexpr int BYTES_PER_ELEMENT_{guid} = 4; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int WARPS_M_{guid} = 2; static constexpr int WARPS_N_{guid} = 4; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid}; static constexpr int BYTES_PER_ELEMENT_{guid} = 2; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int WARPS_M_{guid} = 4; static constexpr int WARPS_N_{guid} = 1; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int WARP_REGS_{guid} = 8; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid};{coord_b} * {tensor_desc}.batch_stride * {tensor_desc}.leading_stridemin(coord_n + (wid / WARPS_M_{p_id} + 1) * WARP_TILE_N_{p_id}, {tensor_desc}.Columns)convDesc.N * convDesc.O * convDesc.P * convDesc.Qcoord_b * convDesc.K + min(coord_n + (wid / WARPS_M_{p_id} + 1) * WARP_TILE_N_{p_id}, convDesc.K) + flt_idx * {tensor_desc}.Columnsmin((coord_b+1) * convDesc.K, {tensor_desc}.Rows)min(coord_b * convDesc.K + min((cta_n + 1) * CTA_TILE_N_{p_id}, convDesc.K), {tensor_desc}.Columns)min((coord_b + 1) * convDesc.K, {tensor_desc}.Columns)min(coord_b * convDesc.C + min((cta_n + 1) * CTA_TILE_N_{p_id}, convDesc.C), {tensor_desc}.Columns)min((coord_b + 1) * convDesc.C, {tensor_desc}.Columns)min((cta_n + 1) * CTA_TILE_N_{}, {}.Columns) char *ptr_{guid} = reinterpret_cast({output}) + {batch_stride} * BITS_PER_ELEMENT_{guid} / 8;coord_n + (wid / WARPS_M_{p_id}) * WARP_TILE_N_{p_id} + tiwcoord_n + ((wid % WARPS_PER_GROUP_{r_id}) / WARPS_M_{p_id}) * WARP_TILE_N_{p_id} + tiw const int col_{guid} = {group_conv_offset} + {col_offset}; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({output}) + ({batch_stride} + col_{guid}{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; uint32_t sts_smem_{guid} = smem_epilogue_{sts_mma_id} + (wid % 4) * BYTES_PER_TILE_PER_WARP_{guid} + (tiw % STG_THREADS_PER_TILE_N_{e_id}) * BYTES_PER_VECTOR_{guid} + (tiw / STG_THREADS_PER_TILE_N_{e_id}) * BYTES_PER_TILE_ROW_{guid}; uint32_t lds_smem_{guid} = smem_epilogue_{lds_mma_id} + (wid % 4) * BYTES_PER_VECTOR_{guid} + tiw * BYTES_PER_TILE_ROW_{guid}; const int col_{guid} = {group_conv_offset} + {cta_n} * CTA_TILE_N_{p_id} + (wid % 4) * ELEMENTS_PER_VECTOR_{e_id} + tiw; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({output}) + ({batch_stride} + col_{guid}{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; const int col_{guid} = {group_conv_offset}; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({output}) + ({batch_stride} + col_{e_id} + {group_conv_offset}{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; char *ptr_{guid} = reinterpret_cast({output}); uint32_t sts_smem_{guid} = smem_epilogue + (wid % 4) * BYTES_PER_TILE_PER_WARP_{guid} + (tiw % STG_THREADS_PER_TILE_N_{e_id}) * BYTES_PER_VECTOR_{guid} + (tiw / STG_THREADS_PER_TILE_N_{e_id}) * BYTES_PER_TILE_ROW_{guid}; uint32_t lds_smem_{guid} = smem_epilogue + (wid % 4) * BYTES_PER_TILE_{guid} * XMMAS_M_{p_id} + tiw * BYTES_PER_ELEMENT_{guid}; uint32_t sts_smem_{guid} = smem_epilogue_{sts_mma_id} + (wid % 4) * BYTES_PER_TILE_PER_WARP_{guid} + (tiw % STG_THREADS_PER_TILE_N_{e_id}) * BYTES_PER_VECTOR_{guid} + (tiw / STG_THREADS_PER_TILE_N_{e_id}) * BYTES_PER_TILE_ROW_{guid}; uint32_t lds_smem_{guid} = smem_epilogue_{lds_mma_id} + (wid % 4) * BYTES_PER_TILE_{guid} * XMMAS_M_{p_id} + tiw * BYTES_PER_ELEMENT_{guid}; static constexpr int chunk_size_{guid} = CTA_TILE_M_{p_id} / (THREADS_PER_GROUP_{r_id} / ELEMENTS_PER_VECTOR_{e_id}); uint32_t lds_smem_{guid} = smem_d + (tid % ELEMENTS_PER_VECTOR_{e_id}) * BYTES_PER_ELEMENT_{guid} + (tid / ELEMENTS_PER_VECTOR_{e_id}) * chunk_size_{guid} * BYTES_PER_VECTOR_{guid}; const int row_{guid} = row_{e_id} - tid_row_index_{e_id} + (tid / ELEMENTS_PER_VECTOR_{e_id}) * chunk_size_{guid}; const int col_{guid} = col_{e_id} + (tid % ELEMENTS_PER_VECTOR_{e_id}); const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({output}) + (col_{guid}{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; const int col_{guid} = {group_conv_offset} + {cta_n} * CTA_TILE_N_{p_id} + (wid % 4) * LDS_TILE_N_{e_id} + tiw; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({output}) + (0{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({output}) + ({batch_stride} + {row_stride} + {column_stride}{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; const int oob_M_{guid} = {oob_M_code}; const int oob_N_{guid} = {tensor_desc}.dims[3]; char *ptr_{guid} = reinterpret_cast({output}) + ({batch_offset_code} + head_{e_id} * {tensor_desc}.strides[1] + row_{e_id} * {tensor_desc}.strides[{actual_row_offset_index}] + col_{e_id}) * BYTES_PER_ELEMENT_{guid};batch_{e_id} * dV_dK_batch_offset_{p_id} const int oob_M_{guid} = {oob_m}; const int oob_N_{guid} = {oob_n}; char *ptr_{guid} = {tensor_ptr} + ({batch_offset} + head_{e_id} * {head_offset} + row_{e_id} * {row_offset} + col_{e_id}) * BYTES_PER_ELEMENT_{guid};local_gid * TILE_M_{p_id} + local_wid * WARP_TILE_M_{p_id} + (tiw / 4)q_row_coord + local_wid * WARP_TILE_M_{p_id} + (tiw / 4)p_row_{p_id} + (wid % WARPS_M_{guid}) * WARP_TILE_M_{guid} + (tiw / THREADS_PER_WARP_TILE_N_{guid}) int oob_M_{guid} = actual_seqlen_q_{p_id}; int row_{guid} = {row}; char *ptr_{guid} = reinterpret_cast({output}) + {batch_offset}[batch_coord_{p_id}] * BYTES_PER_ELEMENT_{guid} + head_coord_{p_id} * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid} + row_{guid} * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}; int oob_M_{guid} = {tensor_desc}.dims[2]; int row_{guid} = {row}; char *ptr_{guid} = reinterpret_cast({output}) + batch_coord_{p_id} * {tensor_desc}.strides[0] * BYTES_PER_ELEMENT_{guid} + head_coord_{p_id} * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid} + row_{guid} * BYTES_PER_ELEMENT_{guid}; static constexpr int cols_per_step_{guid} = (TILE_K_{p_id} <= 128) ? TILE_K_{p_id} : 64; uint32_t smem_{guid} = smem_o_{p_id} + (local_gid * 4 + local_wid) * 16 * cols_per_step_{guid} * BYTES_PER_ELEMENT_{p_id}; const int swizzled_row_{guid} = (tiw % 16); const int swizzled_col_{guid} = (tiw / 16); constexpr int stsm_per_tile_{guid} = 128 / (BYTES_PER_BANK_{p_id} * 2); uint32_t stsm_base_{guid}[stsm_per_tile_{guid}]; #pragma unroll for (int n = 0; n < stsm_per_tile_{guid}; ++n) {{ stsm_base_{guid}[n] = smem_{guid} + ((swizzled_row_{guid} % 8) ^ (n * 2 + swizzled_col_{guid})) * BYTES_PER_BANK_{p_id} + swizzled_row_{guid} * 128; }} const int row_{guid} = q_row_coord + (local_wid % 4) * 16; char *tma_workspace_{guid} = reinterpret_cast(o_tma_descs); cudaTmaDesc *actual_tma_desc_{guid} = reinterpret_cast(tma_workspace_{guid}) + (batch_coord_{p_id});{tma_desc_fence_code} const int h_{guid} = {tensor_desc}.dims[1]; const int oob_M_{guid} = {tensor_desc}.dims[2]; const int oob_N_{guid} = {tensor_desc}.dims[3]; int row_{guid} = qo_loop_left_bound * TILE_N_{p_id} + group_id * 16; const int col_{guid} = wid * 16 + (tiw % 4) * 2; char *ptr_{guid} = reinterpret_cast({output}) + batch_coord_{p_id} * (h_{guid} * FORT_ROUND_UP(oob_M_{guid}, 8) * oob_N_{guid}) * BYTES_PER_ELEMENT_{guid} + head_coord_{p_id} * (FORT_ROUND_UP(oob_M_{guid}, 8) * oob_N_{guid}) * BYTES_PER_ELEMENT_{guid} + row_{guid} * (oob_N_{guid}) * BYTES_PER_ELEMENT_{guid} ; char *tma_workspace_{guid} = reinterpret_cast(dq_acc_tma_descs); cudaTmaDesc *actual_tma_desc_{guid} = reinterpret_cast(tma_workspace_{guid}) + (batch_coord_{p_id});{tma_desc_fence_code} uint32_t smem_{guid} = smem_dv_{p_id} + (local_gid * 4 + local_wid) * 16 * TILE_{V_or_O}_{p_id} * BYTES_PER_ELEMENT_{p_id}; const int swizzled_row_{guid} = (tiw % 16); const int swizzled_col_{guid} = (tiw / 16); constexpr int stsm_per_tile_{guid} = 128 / (BYTES_PER_BANK_{p_id} * 2); uint32_t stsm_base_{guid}[stsm_per_tile_{guid}]; #pragma unroll for (int n = 0; n < stsm_per_tile_{guid}; ++n) {{ stsm_base_{guid}[n] = smem_{guid} + ((swizzled_row_{guid} % 8) ^ (n * 2 + swizzled_col_{guid})) * BYTES_PER_BANK_{p_id} + swizzled_row_{guid} * 128; }} const int row_{guid} = kv_row_coord + (local_wid % 4) * 16; char *tma_workspace_{guid} = reinterpret_cast({dv_dk}_tma_descs); cudaTmaDesc *actual_tma_desc_{guid} = reinterpret_cast(tma_workspace_{guid}) + (batch_coord_{p_id});{tma_desc_fence_code} int length_of_workspace = (1 + FORT_DIV_UP({lower_bandwidth}, TILE_N_{p_id})) * TILE_N_{p_id}; // TODO : Move these loops out int64_t sequence_offset = 0; #pragma unroll 1 for (int i = 0; i < batch_coord_1; i++) {{ sequence_offset += FORT_ROUND_UP({actual_seqlen_kv}[i], TILE_M_{p_id}) * length_of_workspace; }} int64_t head_offset = ({max_token} + attnDesc.b * TILE_M_{p_id}) * length_of_workspace; char *ptr_{guid} = reinterpret_cast({output}) + sequence_offset * BYTES_PER_ELEMENT_{guid} + head_coord_{p_id} * head_offset * BYTES_PER_ELEMENT_{guid} + (kv_row_coord + local_wid * 4 + (tiw / 8)) * length_of_workspace * BYTES_PER_ELEMENT_{guid} + (tiw % 8) * 8 * BYTES_PER_ELEMENT_{guid}; int length_of_workspace = (1 + FORT_DIV_UP({lower_bandwidth}, TILE_N_{p_id})) * TILE_N_{p_id}; int s_kv_quantized_tile = FORT_ROUND_UP(attnDesc.s_kv, TILE_M_{p_id}); char *ptr_{guid} = reinterpret_cast({output}) + batch_coord_{p_id} * attnDesc.q_h * s_kv_quantized_tile * length_of_workspace * BYTES_PER_ELEMENT_{guid} + head_coord_{p_id} * s_kv_quantized_tile * length_of_workspace * BYTES_PER_ELEMENT_{guid} + (kv_row_coord + local_wid * 4 + (tiw / 8)) * length_of_workspace * BYTES_PER_ELEMENT_{guid} + (tiw % 8) * 8 * BYTES_PER_ELEMENT_{guid};BYTES_PER_REGISTER_{r_id} / BYTES_PER_ELEMENT_{guid}r32 {output}[REGISTERS_PER_VECTOR_{guid}]; {{ {temp_decl_code}{data_cast_code} #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=REGISTERS_PER_ACCESS_{guid}) {{ if (col_{e_id} + i * {elements_per_register} < oob_N_{guid}) {{ STG_{guid}(ptr_{guid} + i * BYTES_PER_REGISTER_{r_id}, &{output}[i]); }} }} }} {{ int r = 0; #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ {temp_decl_code}{data_cast_code} char *local_ptr = ptr_{guid} + column_offset_{e_id}[c] * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=REGISTERS_PER_ACCESS_{guid}) {{ if (col_{e_id} + column_offset_{e_id}[c] + i * {elements_per_register} < oob_N_{guid}) {{ STG_{guid}(local_ptr + i * BYTES_PER_REGISTER_{r_id}, &{output}[i]); }} }} }} }} {{ {temp_decl_code}{data_cast_code} if (row_{e_id} < oob_M_{guid}) {{ STG_{guid}(ptr_{guid}, &{output}[0]); }} }} {{ int c = 0, i = 0; #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ {temp_decl_code}{data_cast_code} char *local_ptr = ptr_{guid} + row_offset_{e_id}[r] * BYTES_PER_ELEMENT_{guid}; if (row_{e_id} + row_offset_{e_id}[r] < oob_M_{guid}) {{ STG_{guid}(local_ptr, &{output}[i]); }} }} }} {temp_decl_code}{data_cast_code} if (row_{e_id} == 0 && col_{e_id} == 0) {{ STG_{guid}(ptr_{guid}, &{output}[0]); }} {{ const int c = 0, r = 0, i = 0; {temp_decl_code}{data_cast_code} if (row_{e_id} + row_offset_{e_id}[0] == 0 && col_{e_id} + column_offset_{e_id}[0] == 0) {{ STG_{guid}(ptr_{guid}, &{output}[i]); }} }} r32 {output_reg}[ELEMENTS_PER_VECTOR_{e_id} / (4 / BYTES_PER_ELEMENT_{guid})];(i / 8) * CTA_TILE_M_{} * (128 / swizzle_factor) utmastg_3d_tiled( &{output}, smem_d_{guid} + block_bytes_offset + i * CTA_TILE_M_{p_id}, coord_n * CTA_TILE_N_{p_id} + block_id * ((128 / swizzle_factor) / BYTES_PER_ELEMENT_{guid}) + (i / BYTES_PER_ELEMENT_{guid}), coord_m * CTA_TILE_M_{p_id} + (wid % 4) * (CTA_TILE_M_{p_id} / 4), coord_b ); utmastg_3d_tiled( &{output}, smem_d_{guid} + block_bytes_offset + i * CTA_TILE_M_{p_id}, coord_k * CTA_TILE_N_{p_id} + block_id * ((128 / swizzle_factor) / BYTES_PER_ELEMENT_{guid}) + (i / BYTES_PER_ELEMENT_{guid}), coord_nopq * CTA_TILE_M_{p_id} + (wid % 4) * (CTA_TILE_M_{p_id} / 4), coord_b ); utmastg_4d_tiled( &{output}, smem_d_{guid} + block_bytes_offset + i * CTA_TILE_M_{p_id}, tile_c * CTA_TILE_N_{p_id} + block_id * ((128 / swizzle_factor) / BYTES_PER_ELEMENT_{guid}) + (i / BYTES_PER_ELEMENT_{guid}), coord_k * CTA_TILE_M_{p_id} + (wid % 4) * (CTA_TILE_M_{p_id} / 4), flt_idx, coord_b ); sts_128(smem_d + block_bytes_offset + tiw * (128 / swizzle_factor) + (wid%4) * (CTA_TILE_M_{p_id} / 4) * (128 / swizzle_factor) + swizzle_col * 16 + {block_offset}, &{output_reg}[i*4]); sts_128(smem_d + block_bytes_offset + tid * (128 / swizzle_factor) + swizzle_col * 16 + {block_offset}, &{output_reg}[i*4]); if (tiw < (CTA_TILE_M_{p_id} / 4)) {{ static constexpr int swizzle_factor = {swizzle_factor}; uint32_t smem_d_{guid} = smem_d + (wid % 4) * (128 / swizzle_factor) * (CTA_TILE_M_{p_id} / 4); const int block_id = {block_id}; const int block_col = {block_col}; const int block_bytes_offset = (block_id % (4 / BYTES_PER_ELEMENT_{guid})) * CTA_TILE_M_{p_id} * (128 / swizzle_factor); if (block % (4 / BYTES_PER_ELEMENT_{guid}) == 0) {{ tmastg_arrive(); tmastg_wait(); }} {data_cast} #pragma unroll for (int i = 0; i < ELEMENTS_PER_VECTOR_{e_id} / (16 / BYTES_PER_ELEMENT_{guid}); i++) {{ const int swizzle_col = ((block_col + i) % 8) ^ ((tid % 8) / swizzle_factor); }} }} fence_view_async_shared(); if (((block + 1) * ELEMENTS_PER_VECTOR_{e_id} * BYTES_PER_ELEMENT_{guid}) % (128 / swizzle_factor) == 0) {{ #pragma unroll for (int i = 0; i < ELEMENTS_PER_VECTOR_{e_id} * BYTES_PER_ELEMENT_{guid}; i+=(128 / swizzle_factor)) {{{tmastg_code} }} }}{data_cast} #pragma unroll for (int i = 0; i < BITS_PER_VECTOR_{guid}; i += BITS_PER_ACCESS_{guid}) {{ if (row_{e_id} < oob_M_{guid} && col_{e_id} + i / BITS_PER_ELEMENT_{guid} < oob_N_{guid}) {{ STG_{guid}(ptr_{guid} + i / 8, reinterpret_cast(reinterpret_cast({output}) + i * {packing_factor} / 8)); }} }} if (row_{e_id}{t_suffix} + row_offset_{e_id}[r]{element_offset} < oob_M_{guid}) {{ if (col_{e_id}{t_suffix} + column_offset_{e_id}[c]{element_offset} < oob_N_{guid}) {{ #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ {temp_decl_code}{data_cast_code} char *local_ptr = ptr_{guid} + (row_offset_{e_id}[r]{row_offset} + column_offset_{e_id}[c]{col_offset}) * BITS_PER_ELEMENT_{guid} / 8; #pragma unroll for (int i = 0; i < BITS_PER_VECTOR_{guid}; i += BITS_PER_ACCESS_{guid}) {{{oob_col_code}{oob_row_code} STG_{guid}(local_ptr + i / 8, reinterpret_cast(reinterpret_cast({output}) + i * {packing_factor} / 8)); }} }} }} }} }} #pragma unroll for (int i = 0; i < BYTES_PER_VECTOR_{guid}; i += 4) {{ if (row_{e_id} < oob_M_{guid} && col_{e_id} + i / BYTES_PER_ELEMENT_{guid} < oob_N_{guid}) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + i), *reinterpret_cast(reinterpret_cast({output}) + i)); }} }} if (row_{e_id} + row_offset_{e_id}[r] < oob_M_{guid}) {{ if (col_{e_id} + column_offset_{e_id}[c] + i / BYTES_PER_ELEMENT_{guid} < oob_N_{guid}) {{ #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ char *local_ptr = ptr_{guid} + (row_offset_{e_id}[r] * {row_offset} + column_offset_{e_id}[c]) * BITS_PER_ELEMENT_{guid} / 8; #pragma unroll for (int i = 0; i < BYTES_PER_VECTOR_{guid}; i += BYTES_PER_ACCESS_{guid}) {{{oob_col_code}{oob_row_code} #pragma unroll for (int j = 0; j < BYTES_PER_ACCESS_{guid}; j += 4) {{ {atomic_operation}(reinterpret_cast(local_ptr + i + j), *reinterpret_cast(reinterpret_cast({output}) + i + j)); }} }} }} }} }} }} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ int from_tiw = (tiw % ELEMENTS_PER_VECTOR_{e_id}) * STG_THREADS_PER_TILE_N_{e_id} + tiw / ELEMENTS_PER_VECTOR_{e_id}; int from_reg = tiw / STG_THREADS_PER_TILE_N_{e_id}; // Warp-reduction float sum; reinterpret_cast(sum) = __shfl_sync(~0, {input}[c][from_reg], from_tiw, THREADS_PER_WARP_{r_id}); from_tiw = (from_tiw + STG_THREADS_PER_TILE_N_{e_id}) % LDS_TILE_N_{e_id}; from_reg = (from_reg + ELEMENTS_PER_VECTOR_{e_id} - 1) % ELEMENTS_PER_VECTOR_{e_id}; #pragma unroll for (int i = 1; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ auto tmp = __shfl_sync(~0, {input}[c][from_reg], from_tiw, THREADS_PER_WARP_{r_id}); sum = {rhs_code}; from_tiw = (from_tiw + STG_THREADS_PER_TILE_N_{e_id}) % LDS_TILE_N_{e_id}; from_reg = (from_reg + ELEMENTS_PER_VECTOR_{e_id} - 1) % ELEMENTS_PER_VECTOR_{e_id}; }} if (col_{guid} + c * LDS_TILE_N_{e_id} < oob_N_{guid}) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + c * LDS_TILE_N_{e_id} * BITS_PER_ELEMENT_{guid} / 8), sum); }} }}reinterpret_cast(reg_{}_{}[i]) named_barrier_wait(EPI_WARP_BARRIER_ID, 256); named_barrier_wait(EPI_WARP_BARRIER_ID, 128); if ((c == LDS_TILES_N_{e_id} - 1) && (tile_id + TILE_STEP_{p_id} < num_tiles)) {{ named_barrier_arrive(EPI_LDS_DONE_BARRIER_ID, 256); }}{epi_warp_syncthread_code} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=4) {{ sts_128(sts_smem_{guid} + i * BYTES_PER_REGISTER_{r_id} + c * BYTES_PER_TILE_{guid}, &{output}[c][i]); }} }}{epi_warp_syncthread_code} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ r32 reg_{guid}_{port}[REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=4) {{ lds_128(®_{guid}_{port}[i], lds_smem_{guid} + i * BYTES_PER_REGISTER_{r_id} + c * BYTES_PER_TILE_{guid}); }}{epi_lds_syncthread_code} #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ // Warp-reduction #pragma unroll for (int j = THREADS_PER_WARP_{r_id} / 2; j > 0; j /= 2) {{ r32 tmp = __shfl_down_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, reg_{guid}_{port}[i], j, THREADS_PER_WARP_{r_id}); reinterpret_cast(reg_{guid}_{port}[i]) = {rhs_code}; }} r32 tmp = reg_{guid}_{port}[0]; reg_{guid}_{port}[0] = __shfl_up_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, reg_{guid}_{port}[i], i, THREADS_PER_WARP_{r_id}); reg_{guid}_{port}[0] = (tiw < i) ? tmp : reg_{guid}_{port}[0]; }} if (col_{guid} + c * LDS_TILE_N_{e_id} < oob_N_{guid} && tiw < REGISTERS_PER_VECTOR_{guid}) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + c * LDS_TILE_N_{e_id} * BITS_PER_ELEMENT_{guid} / 8), reinterpret_cast(reg_{guid}_{port}[0])); }} }} #pragma unroll for (int i = 0; i < FORT_DIV_UP(REGISTERS_PER_VECTOR_{guid}, THREADS_PER_WARP_{r_id}); i++) {{ if (col_{e_id} + i * THREADS_PER_WARP_{r_id} + tiw < oob_N_{guid} && tiw < CTA_TILE_N_{p_id}) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + (i * THREADS_PER_WARP_{r_id} + tiw) * BYTES_PER_ELEMENT_{guid}), reinterpret_cast({output}[i])); }} }} if (row_{e_id} < oob_M_{guid}) {{ {atomic_operation}(reinterpret_cast(ptr_{guid}), reinterpret_cast({output}[0])); }}reinterpret_cast({}[r]) #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ #pragma unroll for (int j = STG_THREADS_PER_TILE_N_{e_id} / 2; j > 0; j /= 2) {{ r32 tmp = __shfl_down_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, {output}[r], j, STG_THREADS_PER_TILE_N_{e_id}); reinterpret_cast({output}[r]) = {rhs_code}; }} if (row_{e_id} + row_offset_{e_id}[r] < oob_M_{guid} && post_swizzle_n_{lds_id} == 0) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + row_offset_{e_id}[r] * BYTES_PER_ELEMENT_{guid}), reinterpret_cast({output}[r])); }} }} uint32_t coord_n_{guid}, opq_{guid}; fastDivMod(convDesc.opq, row_{e_id}, coord_n_{guid}, opq_{guid}); if (coord_n_{guid} < convDesc.N) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + coord_n_{guid} * BYTES_PER_ELEMENT_{guid}), reinterpret_cast({input}[0])); }}reinterpret_cast({}[m - 1])reinterpret_cast({}[m]) int base_coord_n_{guid} = coord_n_{input_op_guid}_{input_op_port}[0]; #pragma unroll for (int m = 1; m < XMMAS_M_{p_id} * VECTORS_PER_LDS_TILES_{e_id}; ++m) {{ int coord_n_next = coord_n_{input_op_guid}_{input_op_port}[m]; if (base_coord_n_{guid} == coord_n_next) {{ reinterpret_cast({input}[m]) = {rhs_code}; }} else {{ if (base_coord_n_{guid} < convDesc.N && post_swizzle_n_{lds_id} == 0) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + base_coord_n_{guid} * BYTES_PER_ELEMENT_{guid}), reinterpret_cast({input}[m - 1])); }} base_coord_n_{guid} = coord_n_next; }} }} if (base_coord_n_{guid} < convDesc.N && post_swizzle_n_{lds_id} == 0) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + base_coord_n_{guid} * BYTES_PER_ELEMENT_{guid}), reinterpret_cast({input}[XMMAS_M_{p_id} * VECTORS_PER_LDS_TILES_{e_id} - 1])); }}reinterpret_cast(reg_{}_{}) if (col_{guid} < oob_N_{guid}) {{ r32 tmp, reg_{guid}_0; uint32_t base_coord_n, coord_n, opq; lds_32(®_{guid}_0, lds_smem_{guid}); fastDivMod(convDesc.opq, row_{guid}, base_coord_n, opq); #pragma unroll for (int i = 1; i < chunk_size_{guid}; i++) {{ lds_32(&tmp, lds_smem_{guid} + i * BYTES_PER_VECTOR_{guid}); fastDivMod(convDesc.opq, row_{guid} + i, coord_n, opq); if (base_coord_n == coord_n) {{ reinterpret_cast(reg_{guid}_0) = {rhs_code}; }} else {{ if (base_coord_n < convDesc.N) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + base_coord_n * {C_or_K} * convDesc.group_count * BYTES_PER_ELEMENT_{guid}), reinterpret_cast(reg_{guid}_0)); }} base_coord_n = coord_n; reinterpret_cast(reg_{guid}_0) = reinterpret_cast(tmp); }} }} if (base_coord_n < convDesc.N) {{ {atomic_operation}(reinterpret_cast(ptr_{guid} + base_coord_n * {C_or_K} * convDesc.group_count * BYTES_PER_ELEMENT_{guid}), reinterpret_cast(reg_{guid}_0)); }} }} if (tile_id + TILE_STEP_{p_id} < num_tiles) {{ named_barrier_arrive(EPI_LDS_DONE_BARRIER_ID, 256); }}{epi_warp_syncthread_code} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=4) {{ sts_128(sts_smem_{guid} + i * BYTES_PER_REGISTER_{r_id} + r * BYTES_PER_TILE_ROW_{guid} * ACC_CORE_MATRIX_ROWS_{e_id} + m * BYTES_PER_TILE_{guid} + c * BYTES_PER_TILE_{guid} * XMMAS_M_{p_id}, &{input}[m][r][c][i]); }} }} }} }}{epi_warp_syncthread_code} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; c+=WARPS_PER_GROUP_{r_id}) {{ if (col_{guid} + c * LDS_TILE_N_{e_id} < oob_N_{guid} && (c + (wid%4)) * LDS_TILE_N_{e_id} < CTA_TILE_N_{p_id}) {{ r32 tmp, reg_{guid}_0; uint32_t base_coord_n, coord_n, opq; uint32_t local_smem = lds_smem_{guid} + c * BYTES_PER_TILE_{guid} * XMMAS_M_{p_id}; lds_32(®_{guid}_0, local_smem); fastDivMod(convDesc.opq, cta_m * CTA_TILE_M_{p_id}, base_coord_n, opq); char *local_ptr = ptr_{guid} + (col_{guid} + c * LDS_TILE_N_{e_id}) * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int i = 1; i < CTA_TILE_M_{p_id}; i++) {{ lds_32(&tmp, local_smem + i * BYTES_PER_TILE_ROW_{guid}); fastDivMod(convDesc.opq, cta_m * CTA_TILE_M_{p_id} + i, coord_n, opq); if (base_coord_n == coord_n) {{ reinterpret_cast(reg_{guid}_0) = {rhs_code}; }} else {{ if (base_coord_n < convDesc.N) {{ {atomic_operation}(reinterpret_cast(local_ptr + base_coord_n * {C_or_K} * convDesc.group_count * BYTES_PER_ELEMENT_{guid}), reinterpret_cast(reg_{guid}_0)); }} base_coord_n = coord_n; reinterpret_cast(reg_{guid}_0) = reinterpret_cast(tmp); }} }} if (base_coord_n < convDesc.N) {{ {atomic_operation}(reinterpret_cast(local_ptr + base_coord_n * {C_or_K} * convDesc.group_count * BYTES_PER_ELEMENT_{guid}), reinterpret_cast(reg_{guid}_0)); }} }} }}{epi_lds_syncthread_code}reinterpret_cast({}[0]) for (int j = THREADS_PER_WARP_{r_id} / 2; j > 0; j /= 2) {{ r32 tmp = __shfl_down_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, {output}[0], j, THREADS_PER_WARP_{r_id}); reinterpret_cast({output}[0]) = {rhs_code}; }} if (tiw == 0) {{ {atomic_operation}(reinterpret_cast(ptr_{guid}), reinterpret_cast({output}[0])); }} if ({oob_for_s_q_zero}head_coord_q_offset_{p_id} * TILE_M_{p_id} + row_{e_id} + row_offset_{e_id}[r] < attnDesc.min_q_heads_per_kv) {{ if (col_{e_id} + column_offset_{e_id}[c] + i * {elements_per_register} < oob_N_{guid}) {{ }} else if (row_{e_id} + row_offset_{e_id}[r] < {tensor_row_dimensions}) {{ r32 tmp_output[REGISTERS_PER_ACCESS_{guid}]; for (int i = 0; i < REGISTERS_PER_ACCESS_{guid}; ++i) {{ tmp_output[i] = 0; }} STG_{guid}(local_ptr + i * BYTES_PER_REGISTER_{r_id}, &tmp_output[0]);{tensor_desc}.strides[{actual_row_offset_index}] #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_O_{p_id}; ++n) {{ r32 out_0[4] = {{reg_{p_id}_0[m][n][0], reg_{p_id}_0[m][n][1], reg_{p_id}_0[m][n][4], reg_{p_id}_0[m][n][5]}}; r32 out_1[4] = {{reg_{p_id}_0[m][n][2], reg_{p_id}_0[m][n][3], reg_{p_id}_0[m][n][6], reg_{p_id}_0[m][n][7]}}; #pragma unroll for (int i = 0; i < 4; i+=(BYTES_PER_ACCESS_{guid}/BYTES_PER_ELEMENT_{guid})) {{ if (col_{e_id} + n * 16 + i < oob_N_{guid}) {{ if (row_{e_id} < oob_M_{guid}) {{ STG_{guid}(ptr_{guid} + (n * 16 + i) * BYTES_PER_ELEMENT_{guid}, &out_0[i]); }} if (row_{e_id} + 8 < oob_M_{guid}) {{ STG_{guid}(ptr_{guid} + (n * 16 + i) * BYTES_PER_ELEMENT_{guid} + 8 * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}, &out_1[i]); }} }} }} }} }} #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{ {temp_decl_code}{data_cast_code} char *local_ptr = ptr_{guid} + (row_offset_{e_id}[r] * {row_offset} + column_offset_{e_id}[c]) * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=REGISTERS_PER_ACCESS_{guid}) {{{oob_col_code}{oob_row_code} STG_{guid}(local_ptr + i * BYTES_PER_REGISTER_{r_id}, &{output}[i]);{padding_code} }} }} }} }} }} atomicMax(reinterpret_cast({output}), amax_{s_o_dv_dk}_{p_id}); && (blockIdx.x % num_2d_tile_k == 0) else if (row_coord < oob_M_{guid}) {{ r32 tmp = 0.0f; stg_32(ptr_{guid} + row_coord * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}, &tmp); }} else if ((row_{guid} + row_offset < oob_M_{guid}) && (tiw % 4 == 0){select_one_lean_tile_id}) {{ reinterpret_cast(ptr_{guid} + row_offset * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid})[0] = 0.0f; }} if (tid == 0 && head_coord_q_offset_{p_id} * TILE_M_{p_id} + i < attnDesc.min_q_heads_per_kv) {{ stg_32(ptr_{guid} + i * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid}, &(reinterpret_cast(softmax_stats))); }} if (row_coord < actual_seqlen_q_{p_id}) {{ stg_32(ptr_{guid} + row_coord * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}, &(reinterpret_cast(softmax_stats))); }}{padded_code} if ({oob_for_s_q_zero}head_coord_q_offset_{p_id} * TILE_M_{p_id} * {tiles_q} + row_{guid} + row_offset < attnDesc.min_q_heads_per_kv && (tiw % 4) == 0{select_one_lean_tile_id}) {{ stg_32(ptr_{guid} + row_offset * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid}, &{softmax_stats}[m]); }} if (row_{guid} + row_offset < {oob_M_code} && (tiw % 4) == 0{select_one_lean_tile_id}) {{ stg_32(ptr_{guid} + row_offset * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}, &{softmax_stats}[m]); }} #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ const int row_offset = (m % 2) * THREADS_PER_WARP_TILE_M_{guid} + (m / 2) * WARPS_M_{guid} * WARP_TILE_M_{guid}; if (row_{guid} + (tiw / 4) >= actual_seqlen_q_{p_id}) {{ tmp[0] = 0; tmp[2] = 0; }} if (row_{guid} + (tiw / 4) + 8 >= actual_seqlen_q_{p_id}) {{ tmp[1] = 0; tmp[3] = 0; }} utmastg_4d_tiled({tma_input}, smem_loc, {D_col_jump} + i / sizeof(ElementO), {row_or_lean_tile_id}, head_coord_{p_id} + {head_coord_loc}, {batch_coord_code}); static constexpr int TILE_M_O = 16; static constexpr int TILE_N_O = 128 / BYTES_PER_ELEMENT_{p_id}; static constexpr int STSM_TILE_N_O = 32 / BYTES_PER_ELEMENT_{p_id}; // STSMx4 for FP8, need to consume 16 * 32 blocks static constexpr int STSM_PER_TILE_O = TILE_N_O / STSM_TILE_N_O; static constexpr int REG_BLOCKS_N_PER_STSM_TILE_O = STSM_TILE_N_O / 16; static constexpr int TMASTG_PER_ROW_O = TILE_K_{p_id} / TILE_N_O; static constexpr int BYTES_PER_WARP_O = 16 * TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}; uint32_t smem_{guid} = smem_o_{p_id} + buffer_id_kv * SMEM_V_{p_id} + (local_gid * 4 + local_wid) * 16 * TILE_K_{p_id} * BYTES_PER_ELEMENT_{p_id}; const int swizzled_row_{guid} = (tiw % 16); const int swizzled_col_{guid} = (tiw / 16); constexpr int stsm_per_tile_{guid} = 128 / (BYTES_PER_BANK_{p_id} * 2); uint32_t stsm_base_{guid}[STSM_PER_TILE_O]; #pragma unroll for (int n = 0; n < STSM_PER_TILE_O; ++n) {{ stsm_base_{guid}[n] = smem_{guid} + ((swizzled_row_{guid} % 8) ^ (n * 2 + swizzled_col_{guid})) * BYTES_PER_BANK_{p_id} + swizzled_row_{guid} * 128; }} const int row_{guid} = q_row_coord + (local_wid % 4) * 16; #pragma unroll for (int s = 0; s < TMASTG_PER_ROW_O; ++s) {{ #pragma unroll for (int n = 0; n < STSM_PER_TILE_O; ++n) {{ uint32_t tmp[4]; uint32_t stg0[4]; uint32_t stg1[4]; uint32_t stg2[4]; uint32_t stg3[4]; stg0[0] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][0]; stg0[1] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][4]; stg0[2] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][1]; stg0[3] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][5]; stg1[0] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][2]; stg1[1] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][6]; stg1[2] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][3]; stg1[3] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O][7]; stg2[0] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][0]; stg2[1] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][4]; stg2[2] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][1]; stg2[3] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][5]; stg3[0] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][2]; stg3[1] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][6]; stg3[2] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][3]; stg3[3] = reg_{p_id}_0[0][(n + s * STSM_PER_TILE_O) * REG_BLOCKS_N_PER_STSM_TILE_O + 1][7]; {data_cast_code}(&tmp[0], stg0); {data_cast_code}(&tmp[1], stg1); {data_cast_code}(&tmp[2], stg2); {data_cast_code}(&tmp[3], stg3); stsm_x4(stsm_base_{guid}[n] + s * TILE_N_O * 16 * BYTES_PER_ELEMENT_{p_id}, tmp); }} }} fence_view_async_shared(); #pragma unroll for (int s = 0; s < TMASTG_PER_ROW_O; ++s) {{ utmastg_4d_tiled({tma_input}, smem_{guid} + s * TILE_N_O * 16 * BYTES_PER_ELEMENT_{p_id}, s * TILE_N_O, row_{guid}, head_coord_{p_id}, {batch_coord_code}); }}s * 64 * 16 * BYTES_PER_ELEMENT_{p_id} int head_coord_loc = 0; int row = row_{guid}; int head = head_coord_{p_id}; row = 0; head += local_gid * TILE_M_{p_id} + local_wid * WARP_TILE_M_{p_id}; int heads_to_load = FORT_MAX(static_cast(attnDesc.min_q_heads_per_kv) - head_coord_q_offset_{p_id} * TILE_M_{p_id} * 2 - local_gid * TILE_M_{p_id} - local_wid * WARP_TILE_M_{p_id}, 0); heads_to_load = FORT_MIN(heads_to_load, WARP_TILE_M_{p_id}); for (head_coord_loc = 0; head_coord_loc < heads_to_load; head_coord_loc++) {{{{ uint32_t smem_{guid} = smem_o_{p_id} + (head_coord_loc * 64 + (local_gid * TILE_M_{p_id} + local_wid * WARP_TILE_M_{p_id}) * cols_per_step_{guid}) * BYTES_PER_ELEMENT_{p_id}; fence_view_async_shared(); }} fence_view_async_shared(); #pragma unroll for (int s = 0; s < TILE_K_{p_id} / 64; ++s) {{ #pragma unroll for (int s = 0; s < TILE_O_{p_id} / 64; ++s) {{{stsm_tmastg_initial_sync_code} #pragma unroll for (int n = 0; n < stsm_per_tile_{guid}; ++n) {{ uint32_t tmp[4]; {data_cast_code}(&tmp[0], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][0]); {data_cast_code}(&tmp[1], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][2]); {data_cast_code}(&tmp[2], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][4]); {data_cast_code}(&tmp[3], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][6]);{mask_code} stsm_x4(stsm_base_{guid}[n] + {smem_offset_code}, tmp); }}{stsm_tmastg_mid_sync_code} utmastg_4d_tiled({tma_input}, smem_{guid} + {smem_offset_code}, s * 64, row, head + head_coord_loc, {batch_coord_code});{stsm_tmastg_final_sync_code} }} if (row_{guid} + local_row < oob_M_{guid} && col_{guid} + local_col < oob_N_{guid}) #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < 8; ++i) {{ const int local_col = (i / 4) * 8 + (i % 2) + n * 64; const int local_row = ((i / 2) % 2) * 8 + m * 32; const int reg_row = (i % 4) / 2; const int reg_col = (i % 2) + (i / 4) * 2; float *local_ptr = reinterpret_cast(ptr_{guid}) + m * (WARP_TILE_M_{guid} * WARPS_M_{guid} * oob_N_{guid}) + reg_row * (8 * oob_N_{guid}) + n * (WARPS_N_{guid} * 4 * 32) + wid * (4 * 32) + reg_col * (32) + tiw ; float val = reinterpret_cast(reg_{input_guid}_0[m][n][i]); {oob_code} {{ atomicAdd(local_ptr, val); }} }} }} }} ptr_{guid} += TILE_N_{p_id} * BYTES_PER_ELEMENT_{guid} * oob_N_{guid}; row_{guid} += TILE_N_{p_id}; cast_smem_ptr_to_uint(shared_storage.smem_dQ) + i * TILE_N_{p_id} * 32 * sizeof(float), // 32 is for the tma tile cast_smem_ptr_to_uint(shared_storage.smem_dQ_dK_dV) + i * TILE_N_{p_id} * 32 * sizeof(float), // 32 is for the tma tile utmastg_atomicAdd_4d_tiled({tma_input}, d_column_coord + i * 32, q_step * TILE_N_{p_id}, head_coord_{p_id}, {batch_coord_code}, elect_one); {{ #pragma unroll for (int s = 0; s < TILE_O_{p_id} / {cols_per_stg}; ++s) {{ utmastg_atomicAdd_4d_tiled({tma_input}, smem_dq_{p_id} + s * TILE_N_{p_id} * {cols_per_stg} * sizeof(float), d_column_coord + s * {cols_per_stg}, qo_col_coord, head_coord_{p_id}, {batch_coord_code}, elect_one); }} }} if (row_{guid} + (tiw / 4) >= actual_seqlen_kv_{p_id}) {{ tmp[0] = 0; tmp[2] = 0; }} if (row_{guid} + (tiw / 4) + 8 >= actual_seqlen_kv_{p_id}) {{ tmp[1] = 0; tmp[3] = 0; }} for (int i = 0; i < TILE_K_{p_id} * sizeof({ElementType}); i+=128) {{ utmastg_4d_tiled({tma_input}, cast_smem_ptr_to_uint(smem_{dv_or_dk}) + i * TILE_M_{p_id}, d_column_coord + i / sizeof({ElementType}), kv_row_coord, head_coord_{p_id}, {batch_coord_code}); }} for (int s = 0; s < TILE_K_{p_id} / 32; s++) {{ utmastg_4d_tiled({tma_input}, smem_{dv_or_dk}_{p_id} + s * 32 * TILE_M_{p_id} * 2 * BYTES_PER_ACC_{p_id}, s * 32, kv_row_coord, head_coord_{p_id}, {batch_coord_code}); }} {{ utmastg_4d_tiled({tma_input}, smem_{dv_or_dk}_{p_id}, 0, kv_row_coord, head_coord_{p_id}, {batch_coord_code}); }} #pragma unroll for (int s = 0; s < TILE_{V_or_O}_{p_id} / 64; ++s) {{ #pragma unroll for (int n = 0; n < stsm_per_tile_{guid}; ++n) {{ uint32_t tmp[4]; {data_cast_code}(&tmp[0], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][0]); {data_cast_code}(&tmp[1], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][2]); {data_cast_code}(&tmp[2], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][4]); {data_cast_code}(&tmp[3], ®_{p_id}_{port}[0][s * stsm_per_tile_{guid} + n][6]);{mask_code} stsm_x4(stsm_base_{guid}[n] + s * 64 * 16 * BYTES_PER_ELEMENT_{p_id}, tmp); }} }} fence_view_async_shared(); #pragma unroll for (int s = 0; s < TILE_{V_or_O}_{p_id} / 64; ++s) {{ utmastg_4d_tiled({tma_input}, smem_{guid} + s * 64 * 16 * BYTES_PER_ELEMENT_{p_id}, d_column_coord + s * 64, row_{guid}, head_coord_{p_id}, {batch_coord_code}); }} // only store if the tile is valid in causal masking and also belongs in the sliding window if (do_swa_bias_load) {{ #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ uint32_t tmp[4]; #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; i+=2) {{ {data_cast_code}(&tmp[i/2], ®_{input_guid}_0[m][n][i]); }} stg_128(ptr_{guid} + n * 16 /* TILE_N / 4 */ * length_of_workspace * BYTES_PER_ELEMENT_{guid} + (p_col_coord - kv_row_coord) * BYTES_PER_ELEMENT_{guid}, &tmp[0]); }} }} }} // global_store_op {} typesbits_access_transposedtile_c //global_store_op {} decls{tensor_desc}.Rows{}.Columns * {tensor_desc}.strides[4](coord_b + 1) * convDesc.Krow_{}{}col_{}{}filter_strideoob_M_decloob_N_declgroup_conv_offsetlds_mma_idsts_mma_idrow_stridecolumn_stride{}[batch_{}]batch_{} * {}.strides[0]{tensor_desc}.dims[2]batch_offset_codeactual_row_offset_indexoob_M_codedV_dK_ptr_{p_id}dV_dK_oob_m_{p_id}actual_seqlen_kv_{p_id}dV_dK_oob_n_{p_id}dV_dK_head_offset_{p_id}dV_dK_row_offset_{p_id}tensor_ptroob_moob_nV_or_Oactual_seqlen_kv(block / 2)(block * 2)(block )(block % 2) * 4 //global_store_op {} codetemp_decl_codeelements_per_register + i / BITS_PER_ELEMENT_{}output_regELEMENTS_PER_VECTOR_{} {{block_idblock_colblock_offsettmastg_codeoob_col_codeoob_row_codeatomicUnknownatomicMul{tensor_desc}.leading_strideepi_warp_syncthread_codeepi_lds_syncthread_codelds_idinput_op_guidinput_op_portElementdKElementdVoob_for_stats_{p_id} > 0 && oob_for_s_q_zerotensor_row_dimensions{tensor_desc}.strides[2]padding_codes_o_dv_dkoob_M_{}softmax_statspadded_code{padded_code} }}tiles_qrow_or_lean_tile_id tmastg_arrive();stsm_tmastg_initial_sync_codestsm_tmastg_mid_sync_codestsm_tmastg_final_sync_codecols_per_stgElementType&6F̗Tܖd앸tܓ6ꑸDR`nȊ!{Ո+QB+:®JҭZସhxJX ftΡ(ܟ5靸?M _^ ^]]\\[[ZZY_YXX____________________________________________________________________________________fWVV[UTTTSRQJQPOCONM9MLK2KWJGreinterpret_cast(t{padded_code} //global_load_op {} includes static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_VECTOR_{guid} = BITS_PER_ELEMENT_{guid} * ELEMENTS_PER_VECTOR_{e_id}; static constexpr int BYTES_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / 8; static constexpr int BITS_PER_ACCESS_{guid} = {bits_access}; static constexpr int BYTES_PER_ACCESS_{guid} = BITS_PER_ACCESS_{guid} / 8; static constexpr int REGISTERS_PER_VECTOR_{guid} = 1; static constexpr int REGISTERS_PER_ACCESS_{guid} = 1; #define LDG_{guid} ldg_{bits_access} static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_VECTOR_{guid} = BITS_PER_ELEMENT_{guid} * ELEMENTS_PER_VECTOR_{e_id}; static constexpr int BYTES_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / 8; static constexpr int BITS_PER_ACCESS_{guid} = {bits_access}; static constexpr int BYTES_PER_ACCESS_{guid} = BITS_PER_ACCESS_{guid} / 8; static constexpr int REGISTERS_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} * {packing_factor} / BITS_PER_REGISTER_{r_id}; static constexpr int REGISTERS_PER_ACCESS_{guid} = BITS_PER_ACCESS_{guid} * {packing_factor} / BITS_PER_REGISTER_{r_id}; #define LDG_{guid} ldg_{bits_access} static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int REGISTERS_PER_VECTOR_{guid} = 1; static constexpr int REGISTERS_PER_ACCESS_{guid} = 1; #define LDG_{guid} ldg_{bits_per_ldg}{reg} static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int REGISTERS_PER_VECTOR_{guid} = 1; #define LDG_{guid} ldg_{bits_per_ldg}{reg} static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int BYTES_PER_VECTOR_{guid} = ELEMS_PER_BANK_{p_id} * BYTES_PER_ELEMENT_{guid}; static constexpr int REGISTERS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_REGISTER_{r_id}; static constexpr int BYTES_PER_ACCESS_{guid} = {bytes_per_access}; #define LDG_{guid} ldg_{bits_per_ldg}{reg} static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX({num_groups} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_ELEMENT_{p_id}, 1); #define LDG_{guid} ldg_{bits_per_ldg}{reg} #define DATA_TYPE_{guid} uint{bits_per_ldg}_t static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int BYTES_PER_VECTOR_{guid} = BYTES_PER_ELEMENT_{guid} * ELEMS_PER_VECTOR_{p_id}; static constexpr int BYTES_PER_ACCESS_{guid} = {bytes_per_access}; static constexpr int REGISTERS_PER_VECTOR_{guid} = FORT_MAX({num_groups} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_ELEMENT_{p_id}, 1); #define LDG_{guid} ldg_{bits_per_ldg} #define DATA_TYPE_{guid} uint{bits_per_ldg}_t static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int BYTES_PER_ACCESS_{guid} = {bits_per_ldg} / 8; #define LDG_{guid} ldg_{bits_per_ldg} coord_b * {tensor_desc}.batch_striderow_{o_id} * {tensor_desc}.strides[4]{tensor_desc}.dims[0] * {tensor_desc}.dims[2] * {tensor_desc}.dims[3] * {tensor_desc}.dims[4]min((coord_b+1) * convDesc.K, {tensor_desc}.Columns)min((coord_b+1) * convDesc.C, {tensor_desc}.Columns) char *ptr_{guid} = reinterpret_cast({input}) + {batch_stride} * BITS_PER_ELEMENT_{guid} / 8; r32 reg_{guid}_0[REGISTERS_PER_VECTOR_{guid}]; LDG_{guid}(®_{guid}_0[0], ptr_{guid}); r32 reg_{guid}_0[REGISTERS_PER_VECTOR_{guid}]; reg_{guid}_0[0] = reinterpret_cast({input}); const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride} + {row_stride} + {column_stride}{filter_stride}) * BITS_PER_ELEMENT_{guid} / 8; char *ptr_{guid} = reinterpret_cast({input}) + {batch_stride} * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_0[REGISTERS_PER_VECTOR_{guid}]; LDG_{guid}(®_{guid}_0[0], ptr_{guid}); {reg_type} reg_{guid}_0[REGISTERS_PER_VECTOR_{guid}]; reg_{guid}_0[0] = reinterpret_cast({input});convDesc.N * convDesc.D * convDesc.H * convDesc.W const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride} + {row_stride} + {column_stride}) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_{port}[XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]{{0}}; #pragma unroll for (int m = 0; m < XMMAS_{M_or_N}_{p_id}; ++m) {{ int local_offset = m * UNIT_MATRIX_{A_or_B}_ROWS_{m_id}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[m]); #pragma unroll for (int i = 0; i < 2; ++i) {{ if ({row_or_col}_{m_id}{a_or_b} + local_offset < oob_{M_or_N}_{guid}) {{ char* local_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ *reinterpret_cast(dst_ptr) = *reinterpret_cast(local_ptr); dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} local_offset += CORE_MATRIX_{A_or_B}_ROWS_{m_id}; }} }} r32 reg_{guid}_{port}[2][REGISTERS_PER_VECTOR_{guid}]{{0}}; r32 reg_{guid}_{port}[XMMAS_K_{p_id}][XMMAS_{M_or_N}_{p_id}][REGISTERS_PER_VECTOR_{guid}]; uint32_t gmem_predicate_{guid}[XMMAS_M_{p_id}][2]; int32_t gmem_offset_{guid}[XMMAS_M_{p_id}][2]; #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ const uint32_t nopq_tmp = row_{m_id} + m * UNIT_MATRIX_A_ROWS_{m_id} + i * CORE_MATRIX_A_ROWS_{m_id}; uint32_t coord_n, coord_o, coord_p, coord_q, opq_tmp, pq_tmp; fastDivMod(convDesc.opq, nopq_tmp, coord_n, opq_tmp); fastDivMod(convDesc.pq, opq_tmp, coord_o, pq_tmp); fastDivMod(convDesc.q, pq_tmp, coord_p, coord_q); const int coord_d = (int)coord_o * (int)convDesc.stride_D - (int)convDesc.padLower_D; const int coord_h = (int)coord_p * (int)convDesc.stride_H - (int)convDesc.padLower_H; const int coord_w = (int)coord_q * (int)convDesc.stride_W - (int)convDesc.padLower_W; gmem_offset_{guid}[m][i] = (coord_n * {tensor_desc}.strides[0] + coord_d * {tensor_desc}.strides[2] + coord_h * {tensor_desc}.strides[3] + coord_w * {tensor_desc}.strides[4]) * BYTES_PER_ELEMENT_{guid}; gmem_predicate_{guid}[m][i] = coord_n < convDesc.N ? static_cast(-1) : 0u; #pragma unroll 1 for (int s = 0; s < convDesc.S; ++s) {{ if (static_cast(coord_w + s * convDesc.dilation_W) >= convDesc.W) {{ gmem_predicate_{guid}[m][i] &= ((1u << s) ^ static_cast(-1)); }} }} #pragma unroll 1 for (int r = 0; r < convDesc.R; ++r) {{ if (static_cast(coord_h + r * convDesc.dilation_H) >= convDesc.H) {{ gmem_predicate_{guid}[m][i] &= ((1u << (r + convDesc.S)) ^ static_cast(-1)); }} }} #pragma unroll 1 for (int t = 0; t < convDesc.T; ++t) {{ if (static_cast(coord_d + t * convDesc.dilation_D) >= convDesc.D) {{ gmem_predicate_{guid}[m][i] &= ((1u << (t + r_plus_s)) ^ static_cast(-1)); }} }} }} }}min((coord_b + 1) * convDesc.K, {tensor_desc}.Rows) const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride} + {row_stride} + {column_stride}{filter_stride}) * BYTES_PER_ELEMENT_{guid}; const int filter_iteration_{guid} = convDesc.T * convDesc.R * convDesc.S; r32 reg_{guid}_{port}[XMMAS_M_{p_id}][REGISTERS_PER_VECTOR_{guid}]{{0}}; #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ int local_offset = m * GMMA_TILE_M_{p_id}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[m]); #pragma unroll for (int i = 0; i < 2; ++i) {{ if (row_{m_id} + local_offset < oob_M_{guid}) {{ char* local_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ *reinterpret_cast(dst_ptr) = *reinterpret_cast(local_ptr); dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} local_offset += CORE_MATRIX_A_ROWS_{m_id}; }} }} r32 reg_{guid}_{port}[NUM_LDSM_{m_id}][REGISTERS_PER_VECTOR_{guid}]{{0}}; #pragma unroll for (int n = 0; n < NUM_LDSM_{m_id}; ++n) {{ int local_offset = n * UNIT_MATRIX_B_ROWS_{m_id}; if (col_{m_id}_b + local_offset < oob_N_{guid}) {{ char* src_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[n]); #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ *reinterpret_cast(dst_ptr) = *reinterpret_cast(src_ptr); dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} }} r32 reg_{guid}_{port}[XMMAS_K_{p_id}][REGISTERS_PER_VECTOR_{guid}]{{0}}; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride} + {row_stride} + {column_stride}{filter_stride}) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_{port}[LDS_PER_ROW_A_{m_id}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int n = 0; n < LDS_PER_ROW_A_{m_id}; ++n) {{ #pragma unroll for (int i = 0; i < BYTES_PER_VECTOR_{guid}; i += BYTES_PER_ACCESS_{guid}) {{ if (row_a_{m_id} + n * THREADS_PER_ROW_A_{m_id} * ELEMS_PER_BANK_{p_id} + i / BYTES_PER_ELEMENT_{guid} < oob_M_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast(reg_{guid}_{port}[n]) + i), ptr_{guid} + n * THREADS_PER_ROW_A_{m_id} * ELEMS_PER_BANK_{p_id} * BYTES_PER_ELEMENT_{guid} + i); }} }} }} r32 reg_{guid}_{port}[LDS_PER_TILE_A_{m_id}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int m = 0; m < LDS_PER_TILE_A_{m_id}; ++m) {{ if (row_a_{m_id} + m * ROWS_PER_LOAD_A_{m_id} < oob_M_{guid}) {{ LDG_{guid}(reg_{guid}_{port}[m], ptr_{guid} + m * ROWS_PER_LOAD_A_{m_id} * BYTES_PER_ELEMENT_{guid}); }} }} r32 reg_{guid}_{port}[LDS_PER_ROW_B_{m_id}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int n = 0; n < LDS_PER_ROW_B_{m_id}; ++n) {{ #pragma unroll for (int i = 0; i < BYTES_PER_VECTOR_{guid}; i += BYTES_PER_ACCESS_{guid}) {{ if (col_b_{m_id} + n * THREADS_PER_ROW_B_{m_id} * ELEMS_PER_BANK_{p_id} + i / BYTES_PER_ELEMENT_{guid} < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast(reg_{guid}_{port}[n]) + i), ptr_{guid} + n * THREADS_PER_ROW_B_{m_id} * ELEMS_PER_BANK_{p_id} * BYTES_PER_ELEMENT_{guid} + i); }} }} }} r32 reg_{guid}_{port}[LDS_PER_TILE_B_{m_id}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int m = 0; m < LDS_PER_TILE_B_{m_id}; ++m) {{ if (col_b_{m_id} + m * ROWS_PER_LOAD_B_{m_id} < oob_N_{guid}) {{ LDG_{guid}(reg_{guid}_{port}[m], ptr_{guid} + m * ROWS_PER_LOAD_B_{m_id} * BYTES_PER_ELEMENT_{guid}); }} }} r32 reg_{guid}_{port}[LDS_PER_TILE_A_{m_id}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_PER_ROW_A_{m_id}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_PER_TILE_B_{m_id}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_PER_ROW_B_{m_id}][REGISTERS_PER_VECTOR_{guid}];(kv_loop + {split_k_factor}) * TILE_N_{p_id} + (wid / WARPS_M_{p_id}) * REGS_N_{p_id} * WARP_TILE_N_{p_id} + (tiw % 4) * 2head_coord_{p_id} + (wid % WARPS_M_{p_id}) * WARP_TILE_M_{p_id} + (tiw / 4)p_row_{p_id} + (wid % WARPS_M_{p_id}) * WARP_TILE_M_{p_id} + (tiw / 4) #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = {row} + m * WARPS_M_{p_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} + n * WARP_TILE_N_{p_id} + (i / 4) * 8; if (row < oob_M_{guid} && col < oob_N_{guid}) {{ ldg_32(®_{guid}_{port}[m][n][i/2], (ptr_{guid} + (row * {tensor_desc}.strides[{h_or_q_index}] + col * {tensor_desc}.strides[3]) * BYTES_PER_ELEMENT_{guid})); }} }} const bool do_swa_bias_load = {col} >= static_cast(q_row_coord) - FORT_ROUND_UP({lower_bandwidth},TILE_N_{p_id}); if (do_swa_bias_load) const bool do_swa_bias_load = p_col_coord >= static_cast(q_row_coord) - static_cast(local_gid * TILE_M_{p_id}) - FORT_ROUND_UP({lower_bandwidth},TILE_N_{p_id}); if (do_swa_bias_load) const bool do_swa_bias_load = true; if (do_swa_bias_load)(col - sq_coord + {lower_bandwidth}) >= 0 && (col - sq_coord + {lower_bandwidth}) < oob_N_{guid}(col + 1 - sq_coord + {lower_bandwidth}) >= 0 && (col + 1 - sq_coord + {lower_bandwidth}) < oob_N_{guid}(col - sq_coord + {lower_bandwidth})(col + 1 - sq_coord + {lower_bandwidth}) {assign_sq_coord} uint16_t tmp_0 = 0, tmp_1 = 0; if (row < oob_M_{guid} && {col_oob_check}) {{ tmp_0 = *reinterpret_cast(local_ptr + ({col_idx} * {tensor_desc}.strides[3]) * BYTES_PER_ELEMENT_{guid}); }} if (row < oob_M_{guid} && {col_plus1_oob_check}) {{ tmp_1 = *reinterpret_cast(local_ptr + ({col_plus1_idx} * {tensor_desc}.strides[3]) * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}{m_n_reg_idx}[i/2]) : "h"(tmp_0), "h"(tmp_1)); #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = {row} + m * WARPS_M_{p_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} {col_offset} + n * WARP_TILE_N_{p_id} + (i / 4) * 8; char *local_ptr = ptr_{guid} + (row * {tensor_desc}.strides[{h_or_q_index}]) * BYTES_PER_ELEMENT_{guid};{ldg_16bitx2_code} }}{skip_swa_bias_code} {{ // setup for the next loop #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{{ldg_code} }} }} }} #pragma unroll for (int i = 0; i < BMM1_TILE_M; i+=2) {{ int row = {row} + i; uint16_t tmp_0 = 0, tmp_1 = 0; if (row < oob_M_{guid} && col < oob_N_{guid} && {band_bias_oob_check}) {{ tmp_0 = *reinterpret_cast(local_ptr + (row * {tensor_desc}.strides[1]) * BYTES_PER_ELEMENT_{guid}); }} if (row + 1 < oob_M_{guid} && col < oob_N_{guid} && {band_bias_oob_check}) {{ tmp_1 = *reinterpret_cast(local_ptr + ((row+1) * {tensor_desc}.strides[1]) * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}[i/2]) : "h"(tmp_0), "h"(tmp_1)); }} #pragma unroll for (int i = 0; i < BMM1_TILE_M; i+=1) {{ int row = {row} + i; if (row < oob_M_{guid} && col < oob_N_{guid} && {band_bias_oob_check}) {{ ldg_32(®_{guid}_{port}[i], local_ptr + row * {tensor_desc}.strides[1] * BYTES_PER_ELEMENT_{guid}); }} }}{skip_swa_bias_code} {{ int col = {col} + {lower_bandwidth}{col_offset}; char *local_ptr = ptr_{guid} + (col * {tensor_desc}.strides[3]) * BYTES_PER_ELEMENT_{guid};{skip_swa_bias_code} {{ int base_col = (p_col_{p_id} - p_row_{p_id} + {lower_bandwidth}{col_offset}); int alignment_offset = (base_col % 8); alignment_offset = (base_col < 0) ? (alignment_offset == 0 ? 0 : (8 + alignment_offset)) : alignment_offset; int aligned_base_col = base_col - alignment_offset; char *local_ptr = ptr_{guid} + aligned_base_col * BYTES_PER_ELEMENT_{guid}; uint32_t smem_band_bias_sts = cast_smem_ptr_to_uint(shared_storage.smem_O) + tid * (128 + 8) * BYTES_PER_ELEMENT_{guid}; uint32_t smem_band_bias_lds = smem_band_bias_sts + alignment_offset * BYTES_PER_ELEMENT_{guid}; uint16_t *tmp_out = reinterpret_cast(reg_{guid}_0); if (softmax_gid == 1) {{ named_barrier_wait(BAND_BIAS_BARRIER, 256); }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id} + 8; i+=8) {{ const int col = aligned_base_col + i; ldgsts_128(local_ptr + i * BYTES_PER_ELEMENT_{guid}, smem_band_bias_sts + i * BYTES_PER_ELEMENT_{guid}, (p_row_{p_id} < oob_M_{guid} && col >= 0 && col < oob_N_{guid})); if (i == 24 || i == 72) {{ ldgdepbar(); }} }} ldgdepbar(); depbar<2>(); #pragma unroll for (int j = 0; j < 16; j++) {{ lds_16(reinterpret_cast(&tmp_out[j]), smem_band_bias_lds + j * BYTES_PER_ELEMENT_{guid}); }} depbar<1>(); #pragma unroll for (int j = 16; j < 64; j++) {{ lds_16(reinterpret_cast(&tmp_out[j]), smem_band_bias_lds + j * BYTES_PER_ELEMENT_{guid}); }} depbar<0>(); #pragma unroll for (int j = 64; j < 128; j++) {{ lds_16(reinterpret_cast(&tmp_out[j]), smem_band_bias_lds + j * BYTES_PER_ELEMENT_{guid}); }} if (softmax_gid == 0) {{ named_barrier_arrive(BAND_BIAS_BARRIER, 256); }} }} else {{ for (int i = 0; i < WARP_REGS_{p_id} / 2; i++) {{ reg_{guid}_0[i] = 0u; }} }}{skip_swa_bias_code} {{ r32 reg_{guid}_0_temp[(WARP_REGS_{p_id} + 8) / 2] = {{0u}}; int base_col = (p_col_{p_id} - p_row_{p_id} + {lower_bandwidth}{col_offset}); int alignment_offset = (base_col % 8); alignment_offset = (base_col < 0) ? (alignment_offset == 0 ? 0 : (8 + alignment_offset)) : alignment_offset; int aligned_base_col = base_col - alignment_offset; char *local_ptr = ptr_{guid} + aligned_base_col * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int i = 0; i < WARP_REGS_{p_id} + 8; i+=8) {{ const int col = aligned_base_col + i; if (p_row_{p_id} < oob_M_{guid} && col >= 0 && col < oob_N_{guid}) {{ ldg_128(®_{guid}_0_temp[i / 2], local_ptr + i * BYTES_PER_ELEMENT_{guid}); }} }} uint16_t *tmp_out = reinterpret_cast(reg_{guid}_0); uint16_t *tmp_in = reinterpret_cast(reg_{guid}_0_temp); // NOTE: keep both branches to be the same for better perf if (alignment_offset < 0) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i++) {{ tmp_out[i] = tmp_in[i + alignment_offset]; }} }} else {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i++) {{ tmp_out[i] = tmp_in[i + alignment_offset]; }} }} }} else {{ for (int i = 0; i < WARP_REGS_{p_id}; i++) {{ reg_{guid}_0[i] = 0u; }} }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int col = {col} {col_offset} + i;{ldg_16bitx2_code} }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=4) {{ int col = {col} {col_offset} + i; uint8_t tmp_0 = 0, tmp_1 = 0, tmp_2 = 0, tmp_3 = 0; if (row < oob_M_{guid} && col + 0 < oob_N_{guid}) {{ tmp_0 = *reinterpret_cast(local_ptr + (col + 0) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} if (row < oob_M_{guid} && col + 1 < oob_N_{guid}) {{ tmp_1 = *reinterpret_cast(local_ptr + (col + 1) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} if (row < oob_M_{guid} && col + 2 < oob_N_{guid}) {{ tmp_2 = *reinterpret_cast(local_ptr + (col + 2) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} if (row < oob_M_{guid} && col + 3 < oob_N_{guid}) {{ tmp_3 = *reinterpret_cast(local_ptr + (col + 3) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} uint16_t tmp_01 = (tmp_1 << 8) + tmp_0; uint16_t tmp_23 = (tmp_3 << 8) + tmp_2; asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_0[i/4]) : "h"(tmp_01), "h"(tmp_23)); }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=(BYTES_PER_ACCESS_{guid} / BYTES_PER_ELEMENT_{guid})) {{ int col = {col} {col_offset} + i; if (row < oob_M_{guid} && col < oob_N_{guid}) {{ LDG_{guid}(®_{guid}_0[i / (4 / BYTES_PER_ELEMENT_{guid})], local_ptr + col * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} }}{skip_swa_bias_code} {{ int row = {row}; char *local_ptr = ptr_{guid} + (row * {tensor_desc}.strides[{h_or_q_index}]) * BYTES_PER_ELEMENT_{guid};p_row_{p_id} + wid * WARP_TILE_M_{p_id} + (tiw/4)q_step * TILE_N_{p_id} + softmax_gid * (TILE_N_{p_id} / 2)blocked_row_coord * TILE_M_{} + tid const bool do_swa_bias_load = kv_row_coord <= p_col_coord && p_col_coord - TILE_N_{p_id} < static_cast(kv_row_coord) + FORT_ROUND_UP({lower_bandwidth},TILE_N_{p_id}); if (do_swa_bias_load)(row - col + {lower_bandwidth}) >= 0 && (row - col + {lower_bandwidth}) < oob_M_{guid}(row - col - 1 + {lower_bandwidth}) >= 0 && (row - col - 1 + {lower_bandwidth}) < oob_M_{guid}(row - col + {lower_bandwidth})(row - col - 1 + {lower_bandwidth}) #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = {row}; int col = {col} + i; uint16_t tmp_0 = 0, tmp_1 = 0; if ({row_oob_check} && col < oob_N_{guid}) {{ tmp_0 = *reinterpret_cast(ptr_{guid} + ({row_idx} * {ld_offset_code} + col * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}); }} if ({row_next_col_oob_check} && col + 1 < oob_N_{guid}) {{ tmp_1 = *reinterpret_cast(ptr_{guid} + ({row_next_col_idx} * {ld_offset_code} + (col + 1) * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}[i/2]) : "h"(tmp_0), "h"(tmp_1)); }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = {row} + m * WARPS_M_{p_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} + n * WARP_TILE_N_{p_id} + (i / 4) * 8; uint16_t tmp_0 = 0, tmp_1 = 0; if ({row_oob_check} && col < oob_N_{guid}) {{ tmp_0 = *reinterpret_cast(ptr_{guid} + ({row_idx} * {ld_offset_code} + col * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}); }} if ({row_next_col_oob_check} && col + 1 < oob_N_{guid}) {{ tmp_1 = *reinterpret_cast(ptr_{guid} + ({row_next_col_idx} * {ld_offset_code} + (col + 1) * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}[m][n][i/2]) : "h"(tmp_0), "h"(tmp_1)); }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ uint16_t tmp_0 = 0, tmp_1 = 0; if (base_col_id + i + 0 < oob_N_{guid}) {{ tmp_0 = *reinterpret_cast(local_ptr + (i + 0) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} if (base_col_id + i + 1 < oob_N_{guid}) {{ tmp_1 = *reinterpret_cast(local_ptr + (i + 1) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}[i/2]) : "h"(tmp_0), "h"(tmp_1)); }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i++) {{ r32 tmp = 0u; if (base_col_id + i < oob_N_{guid}) {{ LDG_{guid}(&tmp, local_ptr + i * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} reg_{guid}_0[i] = tmp; }} {{ const int base_col_id = p_col_{p_id}; char *local_ptr = ptr_{guid} + base_col_id * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid};p_col_{p_id} + (wid / WARPS_M_{p_id}) * WARP_TILE_N_{p_id} * REGS_N_{p_id} + (tiw % 4) * 2 #pragma unroll for (int i = 0; i < 4; i+=2) {{ const int col_id = n * WARP_TILE_N_{p_id} + i * 4; uint16_t tmp_0 = 0, tmp_1 = 0; r32 tmp = 0u; if (base_col_id + col_id + 0 < oob_N_{guid}) {{ tmp_0 = *reinterpret_cast(local_ptr + (col_id + 0) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} if (base_col_id + col_id + 1 < oob_N_{guid}) {{ tmp_1 = *reinterpret_cast(local_ptr + (col_id + 1) * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(tmp) : "h"(tmp_0), "h"(tmp_1)); reg_{guid}_0[n][i + 0] = tmp; reg_{guid}_0[n][i + 1] = tmp; }} #pragma unroll for (int i = 0; i < 4; i++) {{ const int col_id = n * WARP_TILE_N_{p_id} + (i / 2) * 8 + (i % 2); r32 tmp = 0u; if (base_col_id + col_id < oob_N_{guid}) {{ LDG_{guid}(&tmp, local_ptr + col_id * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}); }} reg_{guid}_0[n][(i / 2) * 4 + i%2 + 0] = tmp; reg_{guid}_0[n][(i / 2) * 4 + i%2 + 2] = tmp; }} {{ const int base_col_id = {col_id_code}; char *local_ptr = ptr_{guid} + base_col_id * {tensor_desc}.strides[3] * BYTES_PER_ELEMENT_{guid}; #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ // setup for the next loop #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}/2; ++i) {{ int col = n * WARP_TILE_N_{p_id} + i % 2 + (i / 2) * 8; r32 tmp[1]; if ((gmem_predicate_{guid} & (1 << (n * (WARP_REGS_{p_id}/2) + i))) > 0) {{ ldg_32(tmp, (ptr_{guid} + col * BYTES_PER_ELEMENT_{guid})); }} else {{ tmp[0] = 0u; }} reg_{guid}_0[n][(i / 2) * 4 + i % 2] = tmp[0]; reg_{guid}_0[n][(i / 2) * 4 + i % 2 + 2] = tmp[0]; }} }} if (qo_loop == qo_loop_right_bound - 2) {{ gmem_predicate_{guid} &= oob_mask_{guid}; }} else if (qo_loop > qo_loop_right_bound - 2) {{ gmem_predicate_{guid} = 0; }} ptr_{guid} += TILE_N_{p_id} * BYTES_PER_ELEMENT_{guid}; if (qo_col_coord + col_id_{guid} + i * THREADS_PER_WARP_{r_id} < oob_N_{guid}) {{ LDG_{guid}(®_{guid}_1[i], ptr_{guid} + (qo_col_coord + i * THREADS_PER_WARP_{r_id}) * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}); }} else {{ reg_{guid}_1[i] = 0u; }} const int col_id_{guid} = qo_col_coord + (tid % 32) + i; if (col_id_{guid} < oob_N_{guid}) {{ ldg_32(®_{guid}_0[0], ptr_{guid} + col_id_{guid} * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}); }} else {{ reg_{guid}_0[0] = 0u; }} char *ptr_{guid} = reinterpret_cast({input}); r32 reg_{guid}_0[1]; LDG_{guid}(®_{guid}_0[0], ptr_{guid}); r32 reg_{guid}_0[1]; reg_{guid}_0[0] = reinterpret_cast({input}); r32 reg_{guid}_0[1]; reg_{guid}_0[0] = reinterpret_cast({input}[batch_coord_{p_id}]); r32 reg_{guid}_0[1]; reg_{guid}_0[0] = reinterpret_cast({input}[head_coord_{p_id}]);{batch_offset}[batch_coord_{p_id}] + batch_coord_{p_id} * {tensor_desc}.strides[0] + head_coord_{p_id} * {tensor_desc}.strides[1]p_row_{p_id} * {tensor_desc}.strides[2] const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride} + {row_stride}) * BYTES_PER_ELEMENT_{guid};kv_loop_left_bound * TILE_N_{p_id} + (wid / WARPS_M_{p_id}) * REGS_N_{p_id} * WARP_TILE_N_{p_id} + (tiw % 4) * 2kv_loop_left_bound * TILE_N_{} + (tiw % 4) * 2 const int32_t band_bias_kv_offset = reinterpret_cast(band_bias_kv_offset_tensor)[batch_coord_{p_id}]; r32 reg_{guid}_{port}[WARP_REGS_{p_id}]; r32 reg_{guid}_{port}[REGS_M_{p_id}][REGS_N_{p_id}][4];(col - row + {lower_bandwidth}) >= 0 && (col - row + {lower_bandwidth}) < oob_N_{guid}(col + 1 - row + {lower_bandwidth}) >= 0 && (col + 1 - row + {lower_bandwidth}) < oob_N_{guid}(col - row + {lower_bandwidth})(col + 1 - row + {lower_bandwidth}) #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = {row} + m * WARPS_M_{p_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} + n * WARP_TILE_N_{p_id} + (i / 4) * 8; uint16_t tmp_0 = 0, tmp_1 = 0; if (row < oob_M_{guid} && {col_oob_check}) {{ tmp_0 = *reinterpret_cast(ptr_{guid} + (row * {tensor_desc}.strides[{h_or_q_index}] + {col_idx} * {tensor_desc}.strides[3]) * BYTES_PER_ELEMENT_{guid}); }} if (row < oob_M_{guid} && {col_plus1_oob_check}) {{ tmp_1 = *reinterpret_cast(ptr_{guid} + (row * {tensor_desc}.strides[{h_or_q_index}] + {col_plus1_idx} * {tensor_desc}.strides[3]) * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}[m][n][i/2]) : "h"(tmp_0), "h"(tmp_1)); }} // setup the registers with value zero memset(reg_{guid}_{port}, 0, sizeof(reg_{guid}_{port})); // setup for the first loop #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{{ldg_code} }} }}qo_loop_left_bound * TILE_N_{} + (tiw % 4) * 2(row - col + {lower_bandwidth}) >= 0 && (row - col + {lower_bandwidth}) < oob_N_{guid}(row - col - 1 + {lower_bandwidth}) >= 0 && (row - col - 1 + {lower_bandwidth}) < oob_N_{guid} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = {row} + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} + n * WARP_TILE_N_{p_id} + (i / 4) * 8; uint16_t tmp_0 = 0, tmp_1 = 0; if ({row_oob_check} && col < oob_N_{guid}) {{ tmp_0 = *reinterpret_cast(ptr_{guid} + ({row_idx} * {tensor_desc}.strides[3] + col * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}); }} if ({row_next_col_oob_check} && col + 1 < oob_N_{guid}) {{ tmp_1 = *reinterpret_cast(ptr_{guid} + ({row_next_col_idx} * {tensor_desc}.strides[3] + (col + 1) * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{guid}_{port}[m][n][i/2]) : "h"(tmp_0), "h"(tmp_1)); }} r32 reg_{guid}_0[WARP_REGS_{p_id}]; r32 reg_{guid}_0[REGS_N_{p_id}][WARP_REGS_{p_id}]; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride}) * BYTES_PER_ELEMENT_{guid}; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl}; const int col_id_{guid} = (tiw % 4) * 2 + qo_loop_left_bound * TILE_N_{p_id}; char *ptr_{guid} = {tensor_ptr} + ({batch_stride} + col_id_{guid}) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_0[REGS_N_{p_id}][WARP_REGS_{p_id}]; uint32_t gmem_predicate_{guid} = 0u; uint32_t oob_mask_{guid} = 0u; #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}/2; ++i) {{ const int local_col = n * WARP_TILE_N_{p_id} + i % 2 + (i / 2) * 8; uint32_t ib_bit = (col_id_{guid} + local_col < oob_N_{guid}); uint32_t oob_bit = (col_id_{guid} + local_col + (qo_loop_right_bound - qo_loop_left_bound - 1) * TILE_N_{p_id} < oob_N_{guid}); oob_mask_{guid} |= (oob_bit << (n * (WARP_REGS_{p_id}/2) + i)); gmem_predicate_{guid} |= (ib_bit << (n * (WARP_REGS_{p_id}/2) + i)); }} }}reinterpret_cast({input}) const int oob_N_{guid} = {oob_N_decl}; const int col_id_{guid} = tiw; char *ptr_{guid} = {tensor_ptr} + ({batch_stride} + col_id_{guid} * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_0[REGS_N_{p_id}][WARP_REGS_{p_id}]; const int oob_N_{guid} = {oob_N_decl}; const int col_id_{guid} = 0; char *ptr_{guid} = {tensor_ptr} + ({batch_stride} + col_id_{guid} * {tensor_desc}.strides[2]) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_0[NUM_REGS_S_FP32]; const int oob_M_{guid} = {oob_M_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride}) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_0[1]; {{ int row = {row}; if (row < oob_M_{guid}) {{ LDG_{guid}(®_{guid}_0[0], ptr_{guid} + row * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}); }} else {{ reg_{guid}_0[0] = 0u; }} }} const int oob_M_{guid} = {oob_M_decl}; char *ptr_{guid} = reinterpret_cast({input}) + ({batch_stride}) * BYTES_PER_ELEMENT_{guid}; r32 reg_{guid}_0[REGS_M_{p_id}][WARP_REGS_{p_id}]; #pragma unroll for (int m = 0; m < REGS_M_{p_id}; m++) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=(4/BYTES_PER_ELEMENT_{guid})) {{ int row = {row} + m * WARPS_M_{p_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; if (row < oob_M_{guid}) {{ LDG_{guid}(®_{guid}_0[m][i/(4/BYTES_PER_ELEMENT_{guid})], ptr_{guid} + row * {tensor_desc}.strides[2] * BYTES_PER_ELEMENT_{guid}); }} else {{ reg_{guid}_0[m][i/(4/BYTES_PER_ELEMENT_{guid})] = 0u; }} }} }} r32 {output}[REGISTERS_PER_VECTOR_{guid}]; if (row_{epi_guid} < oob_M_{guid}) {{ char *local_ptr = ptr_{guid}; LDG_{guid}(&{output}[0], local_ptr); }} r32 {output}[VECTORS_PER_LDS_TILES_{epi_guid}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{epi_guid}; ++r) {{ if (row_{epi_guid} + row_offset_{epi_guid}[r] < oob_M_{guid}) {{ char *local_ptr = ptr_{guid} + row_offset_{epi_guid}[r] * BITS_PER_ELEMENT_{guid} / 8; LDG_{guid}(&{output}[r][0], local_ptr); }} }} r32 {output}[REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int i = 0; i < BITS_PER_VECTOR_{guid}; i += BITS_PER_ACCESS_{guid}) {{ if (col_{epi_guid} + i / BITS_PER_ELEMENT_{guid} < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast({output}) + i * {packing_factor} / 8), ptr_{guid} + i / 8); }} }} r32 {output}[LDS_TILES_N_{epi_guid}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{epi_guid}; ++c) {{ char *local_ptr = ptr_{guid} + column_offset_{epi_guid}[c] * BITS_PER_ELEMENT_{guid} / 8; #pragma unroll for (int i = 0; i < BITS_PER_VECTOR_{guid}; i += BITS_PER_ACCESS_{guid}) {{ if (col_{epi_guid} + column_offset_{epi_guid}[c] + i / BITS_PER_ELEMENT_{guid} < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast({output}[c]) + i * {packing_factor} / 8), local_ptr + i / 8); }} }} }} r32 {output}[REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int i = 0; i < BITS_PER_VECTOR_{guid}; i += BITS_PER_ACCESS_{guid}) {{ if (row_{epi_guid} < oob_M_{guid} && col_{epi_guid} + i / BITS_PER_ELEMENT_{guid} < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast({output}) + i * {packing_factor} / 8), ptr_{guid} + i / 8); }} }} r32 {output}[LDS_TILES_N_{epi_guid}][VECTORS_PER_LDS_TILES_{epi_guid}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{epi_guid}; ++c) {{ #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{epi_guid}; ++r) {{ char *local_ptr = ptr_{guid} + (row_offset_{epi_guid}[r] * {row_offset} + column_offset_{epi_guid}[c]) * BITS_PER_ELEMENT_{guid} / 8; #pragma unroll for (int i = 0; i < BITS_PER_VECTOR_{guid}; i += BITS_PER_ACCESS_{guid}) {{ if (row_{epi_guid} + row_offset_{epi_guid}[r] < oob_M_{guid} && col_{epi_guid} + column_offset_{epi_guid}[c] + i / BITS_PER_ELEMENT_{guid} < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast({output}[c][r]) + i * {packing_factor} / 8), local_ptr + i / 8); }} }} }} }}loop * CTA_TILE_K_{p_id} + ki_next * 32 / BYTES_PER_ELEMENT_{p_id}(ldg_cnt / XMMAS_K_{p_id} / convDesc.trs.val) * CTA_TILE_K_{p_id} + (ldg_cnt % XMMAS_K_{p_id}) * 32 / BYTES_PER_ELEMENT_{p_id} {{ int tile_offset = {tile_offset}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[ki_accum&1]); #pragma unroll for (int i = 0; i < 2; ++i) {{ int local_offset = tile_offset + i * CORE_MATRIX_A_COLS_{m_id}; #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ char* local_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; *reinterpret_cast(dst_ptr) = (col_{m_id} + local_offset < oob_N_{guid}) ? *reinterpret_cast(local_ptr) : 0; ++local_offset; dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} }} {{ int tile_offset = {tile_offset}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[ki_accum&1]); #pragma unroll for (int i = 0; i < 2; ++i) {{ int local_offset = tile_offset + i * CORE_MATRIX_B_COLS_{m_id}; #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ char* local_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; *reinterpret_cast(dst_ptr) = (row_{m_id}_b + local_offset < oob_M_{guid}) ? *reinterpret_cast(local_ptr) : 0; ++local_offset; dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} }}if ((local_mainloop_steps - mainloop_k) % filter_iteration_{guid} == 0) (local_mainloop_steps - mainloop_k) / filter_iteration_{guid} * CTA_TILE_K_{p_id}(local_mainloop_steps - mainloop_k) * CTA_TILE_K_{p_id} {load_condition}{{ int tile_offset = {tile_offset}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ int k_offset = tile_offset + k * GMMA_TILE_K_{p_id}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[k]); #pragma unroll for (int i = 0; i < 2; ++i) {{ int local_offset = k_offset + i * CORE_MATRIX_A_COLS_{m_id}; #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ char* local_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; *reinterpret_cast(dst_ptr) = (col_{m_id} + local_offset < oob_N_{guid}) ? *reinterpret_cast(local_ptr) : 0; ++local_offset; dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} }} }} {load_condition}{{ int tile_offset = {tile_offset}; #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ int local_offset = tile_offset + k * GMMA_TILE_K_{p_id}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[k]); #pragma unroll for (int j = 0; j < ELEMS_PER_VECTOR_{p_id}; ++j) {{ char* local_ptr = ptr_{guid} + local_offset * BYTES_PER_ELEMENT_{guid}; *reinterpret_cast(dst_ptr) = (row_{m_id}_b + local_offset < oob_M_{guid}) ? *reinterpret_cast(local_ptr) : 0; ++local_offset; dst_ptr += BYTES_PER_ELEMENT_{guid}; }} }} }} #pragma unroll for (int m = 0; m < LDS_PER_TILE_A_{m_id}; ++m) {{ if (col_a_{m_id} + coord_k + m * ROWS_PER_LOAD_A_{m_id} < oob_N_{guid}) {{ LDG_{guid}(reg_{guid}_{port}[m], ptr_{guid} + (coord_k + m * ROWS_PER_LOAD_A_{m_id}) * BYTES_PER_ELEMENT_{guid}); }} }} #pragma unroll for (int n = 0; n < LDS_PER_ROW_A_{m_id}; ++n) {{ #pragma unroll for (int i = 0; i < BYTES_PER_VECTOR_{guid}; i += BYTES_PER_ACCESS_{guid}) {{ if (col_a_{m_id} + coord_k + n * THREADS_PER_ROW_A_{m_id} * ELEMS_PER_BANK_{p_id} + i / BYTES_PER_ELEMENT_{guid} < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast(reg_{guid}_{port}[n]) + i), ptr_{guid} + (coord_k + n * THREADS_PER_ROW_A_{m_id} * ELEMS_PER_BANK_{p_id}) * BYTES_PER_ELEMENT_{guid} + i); }} }} }} #pragma unroll for (int m = 0; m < LDS_PER_TILE_B_{m_id}; ++m) {{ if (row_b_{m_id} + coord_k + m * ROWS_PER_LOAD_B_{m_id} < oob_M_{guid}) {{ LDG_{guid}(reg_{guid}_{port}[m], ptr_{guid} + (coord_k + m * ROWS_PER_LOAD_B_{m_id}) * BYTES_PER_ELEMENT_{guid}); }} }} #pragma unroll for (int n = 0; n < LDS_PER_ROW_B_{m_id}; ++n) {{ #pragma unroll for (int i = 0; i < BYTES_PER_VECTOR_{guid}; i += BYTES_PER_ACCESS_{guid}) {{ if (row_b_{m_id} + coord_k + n * THREADS_PER_ROW_B_{m_id} * ELEMS_PER_BANK_{p_id} + i / BYTES_PER_ELEMENT_{guid} < oob_M_{guid}) {{ LDG_{guid}(reinterpret_cast(reinterpret_cast(reg_{guid}_{port}[n]) + i), ptr_{guid} + (coord_k + n * THREADS_PER_ROW_B_{m_id} * ELEMS_PER_BANK_{p_id}) * BYTES_PER_ELEMENT_{guid} + i); }} }} }} int filter_offset = (filter_t * convDesc.dilation_D * {tensor_desc}.strides[2] + filter_r * convDesc.dilation_H * {tensor_desc}.strides[3] + filter_s * convDesc.dilation_W * {tensor_desc}.strides[4]) * BYTES_PER_ELEMENT_{guid}; int filter_offset = (filter_t * {tensor_desc}.strides[2] + filter_r * {tensor_desc}.strides[3] + filter_s * {tensor_desc}.strides[4]) * BYTES_PER_ELEMENT_{guid}; int tile_offset = coord_c * CTA_TILE_K_{p_id} + k * (32 / BYTES_PER_ELEMENT_{p_id}); {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ #pragma unroll for (int j = 0; j < 2; ++j) {{ #pragma unroll for (int l = 0; l < BYTES_PER_VECTOR_{guid}; l += BYTES_PER_ACCESS_{guid}) {{ int l_index = l / BYTES_PER_ACCESS_{guid}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[k][m]) + (j * 2 + i) * BYTES_PER_VECTOR_{guid} + l; if (ld_vector[k][j][l_index][0] >= 0 && ((int)gmem_predicate_{guid}[m][i] & ld_vector[k][j][l_index][1]) == ld_vector[k][j][l_index][1]) {{ LDG_{guid}(reinterpret_cast(dst_ptr), ptr_{guid} + gmem_offset_{guid}[m][i] + ld_vector[k][j][l_index][2] * BYTES_PER_ELEMENT_{guid}); }} else {{ *reinterpret_cast(dst_ptr) = 0; }} }} }} }} }} }} }} {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ r32 tmp[2] = {{0, 0}}; if (ld_vector[k][0] >= 0 && ((int)gmem_predicate_{guid}[m][i] & ld_vector[k][1]) == ld_vector[k][1]) {{ LDG_{guid}(tmp, ptr_{guid} + gmem_offset_{guid}[m][i] + ld_vector[k][2] * BYTES_PER_ELEMENT_{guid}); }} reg_{guid}_{port}[k][m][i] = tmp[0]; reg_{guid}_{port}[k][m][i + 2] = tmp[1]; }} }} }} }} {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id} / 2; ++k) {{ #pragma unroll for (int m = 0; m < XMMAS_M_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ r32 tmp[4] = {{0, 0, 0, 0}}; if (ld_vector[k][0] >= 0 && ((int)gmem_predicate_{guid}[m][i] & ld_vector[k][1]) == ld_vector[k][1]) {{ LDG_{guid}(tmp, ptr_{guid} + gmem_offset_{guid}[m][i] + ld_vector[k][2] * BYTES_PER_ELEMENT_{guid}); }} reg_{guid}_{port}[2 * k][m][i] = tmp[0]; reg_{guid}_{port}[2 * k][m][i + 2] = tmp[1]; reg_{guid}_{port}[2 * k + 1][m][i] = tmp[2]; reg_{guid}_{port}[2 * k + 1][m][i + 2] = tmp[3]; }} }} }} }} {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < XMMAS_N_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ int col_index = col_{m_id}_b + m * UNIT_MATRIX_B_ROWS_{m_id} + i * CORE_MATRIX_B_ROWS_{m_id}; #pragma unroll for (int j = 0; j < 2; ++j) {{ #pragma unroll for (int l = 0; l < BYTES_PER_VECTOR_{guid}; l += BYTES_PER_ACCESS_{guid}) {{ int l_index = l / BYTES_PER_ACCESS_{guid}; char* dst_ptr = reinterpret_cast(reg_{guid}_{port}[k][m]) + (i * 2 + j) * BYTES_PER_VECTOR_{guid} + l; if (ld_vector[k][j][l_index][0] >= 0 && col_index < oob_N_{guid}) {{ LDG_{guid}(reinterpret_cast(dst_ptr), ptr_{guid} + (col_index * {tensor_desc}.strides[0] + ld_vector[k][j][l_index][3]) * BYTES_PER_ELEMENT_{guid}); }} else {{ *reinterpret_cast(dst_ptr) = 0; }} }} }} }} }} }} }} {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < XMMAS_N_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ int col_index = col_{m_id}_b + m * UNIT_MATRIX_B_ROWS_{m_id} + i * CORE_MATRIX_B_ROWS_{m_id}; r32 tmp[2] = {{0, 0}}; if (ld_vector[k][0] >= 0 && col_index < oob_N_{guid}) {{ LDG_{guid}(tmp, ptr_{guid} + (col_index * {tensor_desc}.strides[0] + ld_vector[k][3]) * BYTES_PER_ELEMENT_{guid}); }} reg_{guid}_{port}[k][m][2 * i] = tmp[0]; reg_{guid}_{port}[k][m][2 * i + 1] = tmp[1]; }} }} }} }} {{ #pragma unroll for (int k = 0; k < XMMAS_K_{p_id} / 2; ++k) {{ #pragma unroll for (int m = 0; m < XMMAS_N_{p_id}; ++m) {{ #pragma unroll for (int i = 0; i < 2; ++i) {{ int col_index = col_{m_id}_b + m * UNIT_MATRIX_B_ROWS_{m_id} + i * CORE_MATRIX_B_ROWS_{m_id}; r32 tmp[4] = {{0, 0, 0, 0}}; if (ld_vector[k][0] >= 0 && col_index < oob_N_{guid}) {{ LDG_{guid}(tmp, ptr_{guid} + (col_index * {tensor_desc}.strides[0] + ld_vector[k][3]) * BYTES_PER_ELEMENT_{guid}); }} reg_{guid}_{port}[2 * k][m][2 * i] = tmp[0]; reg_{guid}_{port}[2 * k][m][2 * i + 1] = tmp[1]; reg_{guid}_{port}[2 * k + 1][m][2 * i] = tmp[2]; reg_{guid}_{port}[2 * k + 1][m][2 * i + 1] = tmp[3]; }} }} }} }} //global_load_op {} typesnum_groupsr32 //global_load_op {} decls * {}.leading_stride{}.Rowso_id{tensor_desc}.dims[1]{tensor_desc}.Columnsreg_type(coord_b + 1) * convDesc.Crow_or_colrow_{a_or_b}_{m_id}col_{a_or_b}_{m_id}int32_t sq_coord = 0;int32_t sq_coord = row;- band_bias_kv_offsetcol >= 0 //global_load_op {} codecausal_mask_col + TILE_N_{}causal_mask_rowp_col_{}p_head_{}p_row_{}h_or_q_indexcausal_mask_colcol < oob_N_{guid}col + 1 < oob_N_{guid}(col + 1)col_plus1_oob_checkcol_plus1_idxassign_sq_coordm_n_reg_idxldg_16bitx2_codeskip_swa_bias_codeband_bias_oob_checkp_col_next_{} + (tiw % 4) * 2row < oob_M_{guid}{tensor_desc}.strides[3]row_oob_checkrow_next_col_oob_checkrow_next_col_idxld_offset_codecol_id_code{tensor_desc}.dims[3]attnDesc.q_hstats_ptr_{p_id}epi_guidtile_offsetload_condition //pointwise_calc_op {} includes //pointwise_calc_op {} types static constexpr int BITS_PER_ELEMENT_{guid} = {bits_per_elem} * {packing_factor}; static constexpr int BYTES_PER_ELEMENT_{guid} = BITS_PER_ELEMENT_{guid} / 8; static constexpr int BITS_PER_VECTOR_{guid} = BITS_PER_ELEMENT_{guid} * ELEMENTS_PER_VECTOR_{e_id}; static constexpr int BYTES_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / 8; static constexpr int REGISTERS_PER_VECTOR_{guid} = BITS_PER_VECTOR_{guid} / BITS_PER_REGISTER_{r_id}; static constexpr int REGISTERS_PER_COMPUTE_VECTOR_{guid} = {bits_per_compute} * ELEMENTS_PER_VECTOR_{e_id} / BITS_PER_REGISTER_{r_id}; static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int WARPS_M_{guid} = {warps_m}; static constexpr int WARPS_N_{guid} = {warps_n}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int WARP_REGS_{guid} = {warp_regs}; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid};(BYTES_PER_BANK_{p_id} * BYTES_PER_ELEMENT_{guid}) / (BYTES_PER_ELEMENT_{p_id} * BYTES_PER_REGISTER_{r_id})BYTES_PER_BANK_{p_id} / BYTES_PER_ELEMENT_{p_id}FORT_MAX({num_groups} * BYTES_PER_ELEMENT_{guid} / BYTES_PER_ELEMENT_{p_id}, 1)FORT_MAX({bytes_per_compute} * {num_groups} / BYTES_PER_ELEMENT_{p_id}, 1)FORT_MAX(BYTES_PER_ELEMENT_{guid} * NUM_GMMA_{a_or_b}_REGISTERS_{p_id} / BYTES_PER_ELEMENT_{p_id}, 1)FORT_MAX({bytes_per_compute} * NUM_GMMA_{a_or_b}_ELEMENT_{p_id} / BYTES_PER_REGISTER_{r_id}, 1) static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int REGISTERS_PER_VECTOR_{guid} = {register_per_vector}; static constexpr int REGISTERS_PER_COMPUTE_VECTOR_{guid} = {register_per_compute_vector}; //pointwise_calc_op {} decls r32 reg_{guid}_{port}[REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_TILES_N_{epi_guid}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[VECTORS_PER_LDS_TILES_{epi_guid}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_TILES_N_{epi_guid}][VECTORS_PER_LDS_TILES_{epi_guid}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[WARP_REGS_{guid}]; r32 reg_{guid}_{port}[REGS_M_{guid}][REGS_N_{guid}][WARP_REGS_{guid}];[LDS_PER_TILE_{A_or_B}_{m_id}] r32 reg_{guid}_{port}{lds_per_tile_bound}{lds_per_row_bound}[REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}{loop_bound}[REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}{buffer_bound}[REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}{buffer_bound}{loop_bound}[REGISTERS_PER_VECTOR_{guid}];reinterpret_cast(p_row_{} + wid * WARP_TILE_M_{} + (tiw/4){col} + n * WARP_TILE_N_{guid} + i % 2 + (i / 4) * 8{row} + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{guid} + ((i / 2) % 2) * 8 const bool do_swa_bias_load = p_col_coord >= static_cast(q_row_coord) - static_cast(local_gid * TILE_M_{p_id}) - FORT_ROUND_UP({lower_bandwidth},TILE_N_{p_id}); if (do_swa_bias_load) {{ if (!smem_bar_peek(smem_bar_bias_tma_{p_id} + local_gid * 8, smem_bar_phase_bias)) {{ smem_bar_wait(smem_bar_bias_tma_{p_id} + local_gid * 8, smem_bar_phase_bias); }} smem_bar_phase_bias ^= 1; const int loc_bias_row_id = local_gid * TILE_M_{p_id} + local_wid * 16 + (tiw / 4); const int loc_bias_col_id = (tiw % 4) * 2; #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ int row = causal_mask_row + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = causal_mask_col + n * WARP_TILE_N_{p_id} + (i / 4) * 8; const int base_bias_row_id = row; const int base_bias_col_id = p_col_coord - base_bias_row_id + {lower_bandwidth}; const int pad_cols = (base_bias_col_id < 0) ? base_bias_col_id : (base_bias_col_id % 8); int local_row = loc_bias_row_id + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int local_col = loc_bias_col_id + n * WARP_TILE_N_{p_id} + (i / 4) * 8; uint32_t b_smem_loc = smem_band_bias_{p_id} + (local_row * (TILE_N_{p_id} + 8) + local_col + pad_cols) * BYTES_PER_ELEMENT_{band_bias_ldg_op_guid}; uint16_t smem_tmp_0 = 0, smem_tmp_1 = 0; if ((col - row + {lower_bandwidth}) >= 0 && (col - row + {lower_bandwidth}) < oob_N_{band_bias_ldg_op_guid}) {{ smem_tmp_0 = *reinterpret_cast(set_smem_pointer(b_smem_loc)); }} if ((col + 1 - row + {lower_bandwidth}) >= 0 && (col + 1 - row + {lower_bandwidth}) < oob_N_{band_bias_ldg_op_guid}) {{ smem_tmp_1 = *reinterpret_cast(set_smem_pointer(b_smem_loc + BYTES_PER_ELEMENT_{band_bias_ldg_op_guid})); }} asm volatile("{{\nmov.b32 %0, {{%1, %2}};\n}}\n" : "=r"(reg_{band_bias_ldg_op_guid}_0[m][n][i/2]) : "h"(smem_tmp_0), "h"(smem_tmp_1)); }} }} }} }} if (do_swa_bias_load) {{ fence_view_async_shared(); __syncwarp(); if (elect_one) {{ smem_bar_arrive(smem_bar_bias_mma_{p_id} + local_gid * 8); }} }}{smem_load_band_matrix_code}{skip_swa_bias_code} {{{tmp_decls_0}{tmp_decls_1}{data_cast_code_0}{data_cast_code_1} #pragma unroll reinterpret_cast<{compute_data_type} &>({output}) = {rhs_code}; }}{data_cast_undo_code} }}{smem_load_band_matrix_code}{skip_swa_bias_code} {{ #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{{tmp_decls_0}{tmp_decls_1}{data_cast_code_0}{data_cast_code_1} #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ reinterpret_cast<{compute_data_type} &>({output}) = {rhs_code}; }}{data_cast_undo_code} }} }} }}{smem_bias_mbar_code} // pointwise_calc_op {} code int row_index_{guid} = row_{epi_guid}{row_batch_offset}; int col_index_{guid} = col_{epi_guid} + i * BYTES_PER_REGISTER_{receive_op_guid} / {bytes_per_elem}{col_batch_offset}; int elem_position = row_index_{guid} * implicit_gemm_N + col_index_{guid}; int row_index_{guid} = row_{epi_guid} + row_offset_{epi_guid}[r]{row_batch_offset}; int col_index_{guid} = col_{epi_guid} + column_offset_{epi_guid}[c] + i * BYTES_PER_REGISTER_{receive_op_guid} / {bytes_per_elem}{col_batch_offset}; int elem_position = row_index_{guid} * implicit_gemm_N + col_index_{guid};static_cast<{compute_data_type}>((elem_position / {gen_index_axis_stride}) % {gen_index_axis_dim}) #pragma unroll for (int c = 0; c < LDS_TILES_N_{epi_guid}; ++c) {{ {tmp_decls_0} {tmp_decls_1} {tmp_decls_2}{data_cast_code_0}{data_cast_code_1}{data_cast_code_2} {tmp_decls_3} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; i++) {{{gen_index_loop_buf} {lhs_code} = {rhs_code}; }}{data_cast_back_code} #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{epi_guid}; ++r) {{ {tmp_decls_0} {tmp_decls_1} {tmp_decls_2}{data_cast_code_0}{data_cast_code_1}{data_cast_code_2} {tmp_decls_3}{gen_index_loop_buf} {lhs_code} = {rhs_code};{data_cast_back_code} #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{epi_guid}; ++r) {{ #pragma unroll for (int c = 0; c < LDS_TILES_N_{epi_guid}; ++c) {{ {tmp_decls_0} {tmp_decls_1} {tmp_decls_2}{data_cast_code_0}{data_cast_code_1}{data_cast_code_2} {tmp_decls_3} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; i++) {{{gen_index_loop_buf} {lhs_code} = {rhs_code}; }}{data_cast_back_code} #pragma unroll for (int m = 0; m < LDS_PER_TILE_{A_or_B}_{m_id}; ++m) {{ #pragma unroll for (int n = 0; n < LDS_PER_ROW_{A_or_B}_{m_id}; ++n) {{ #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i += 2) {{ {cast_string}(&{cast_output}[m][n][i], &{cast_input}[m][n][i / 2]); }} }} }} #pragma unroll for (int m = 0; m < {loop_bound}; ++m) {{ #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i += 2) {{ {cast_string}(&{cast_output}{buffer_index}[m][i], &{cast_input}{buffer_index}[m][i / 2]); }} }} #pragma unroll for (int m = 0; m < {loop_bound}; ++m) {{ r32 tmp[2]; {cast_string}(tmp, {cast_input}{buffer_index}[m]); {cast_output}{buffer_index}[m][0] = tmp[0]; }} #pragma unroll for (int m = 0; m < LDS_PER_TILE_{A_or_B}_{m_id}; ++m) {{ #pragma unroll for (int n = 0; n < LDS_PER_ROW_{A_or_B}_{m_id}; ++n) {{{lds_per_tile_loop}{lds_per_row_loop}{tmp_decls_0}{tmp_decls_1}{tmp_decls_2}{data_cast_code_0}{data_cast_code_1}{data_cast_code_2}{out_decls} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; ++i) {{ {lhs_code} = {rhs_code}; }}{data_cast_undo_code} }} }} #pragma unroll for (int ki_accum = 0; ki_accum < 2; ++ki_accum) {{ #pragma unroll for (int k_index = 0; k_index < XMMAS_K_{p_id}; ++k_index) {{ #pragma unroll for (int m = 0; m < {loop_bound}; ++m) {{{buffer_bound_loop_code}{loop_bound_loop_code}{tmp_decls_0}{tmp_decls_1}{tmp_decls_2}{data_cast_code_0}{data_cast_code_1}{data_cast_code_2}{out_decls} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; ++i) {{ {lhs_code} = {rhs_code}; }}{data_cast_undo_code} }} }}abs({a})({a} / {b})max({a}, {b})min({a}, {b})({a} % {b})max(abs({a}), abs({b}))bits_per_computeWARP_REGS_{}bytes_per_computeregister_per_vectorregister_per_compute_vector r32 reg_{guid}_{port}[1];[LDS_PER_ROW_{A_or_B}_{m_id}]lds_per_tile_boundlds_per_row_bound[XMMAS_{m_or_n}_{p_id}][XMMAS_K_{}][XMMAS_M_{}][NUM_LDSM_{}]loop_boundbuffer_bound //pointwise_calc_op {} codereg_{}_{}{}[i]reinterpret_cast(p_col_{} + (tiw % 4) * 2batch_coord_{}{} + i{} + {offset}smem_load_band_matrix_codedata_cast_undo_codedata_cast_code_1data_cast_code_0tmp_decls_1tmp_decls_0smem_bias_mbar_codereinterpret_cast<{}&>({})reinterpret_cast( + implicit_gemm_M * coord_b + implicit_gemm_N * coord_breceive_op_guidtmp_decls_3data_cast_code_2tmp_decls_2lhs_code if (m == 0) {{ }} }}XMMAS_M_{}XMMAS_N_{}NUM_LDSM_{}int8x4_to_fp16x4int8x4_to_bf16x4cast_stringcast_outputcast_inputout_declslds_per_tile_looplds_per_row_loopbuffer_bound_loop_codeloop_bound_loop_code0l<S j $ ; R*[*)W)(S('O'&K&%G%_+$C$#_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+#a"!!Q A/o_ for (int i = 0; i < BMM1_TILE_M; ++ WARP_REGS_{guid reinterpret_cast<{compute_data_type} &>({output}) = {rhs_code}; }}{data_cast_undo_cfort::reluBwd_Generic(reinterpret_cast({x}), reinterpret_cast({dL_by_dy}), {upper_clip}, {lower_clip}, {alpha_beta})fort::reluBwd_Simple(reinterpret_cast({x}), reinterpret_cast({dL_by_dy}))fort::reluFwd_LoClip(reinterpret_cast({x}), {lower_clip})fort::reluFwd_LoClipHiClip(reinterpret_cast({x}), {lower_clip}, {upper_clip})fort::reluFwd_LoClip_Sloped(reinterpret_cast({x}), {lower_clip}, {alpha_beta})fort::reluFwd_LoClipHiClip_Sloped(reinterpret_cast({x}), {lower_clip}, {upper_clip}, {alpha_beta}) #pragma unroll for (int c = 0; c < LDS_TILES_N_{epi_guid}; ++c) {{ {tmp_decls_0} {tmp_decls_1}{data_cast_code_0}{data_cast_code_1} {tmp_decls_2} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; i++) {{ reinterpret_cast({output}) = {rhs_code}; }}{data_cast_back_code} }} #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{epi_guid}; ++r) {{ {tmp_decls_0} {tmp_decls_1}{data_cast_code_0}{data_cast_code_1} {tmp_decls_2} reinterpret_cast({output}) = {rhs_code};{data_cast_back_code} }} if (m == 0) {{ {tmp_decls_0} {tmp_decls_1}{data_cast_code_0}{data_cast_code_1} {tmp_decls_2} reinterpret_cast({output}) = {rhs_code};{data_cast_back_code} }} {tmp_decls_0} {tmp_decls_1}{data_cast_code_0}{data_cast_code_1} {tmp_decls_2} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; i++) {{ reinterpret_cast({output}) = {rhs_code}; }}{data_cast_back_code} {{{tmp_decls_0}{tmp_decls_1}{data_cast_code_0}{data_cast_code_1}{out_decls} #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ reinterpret_cast({output}) = {rhs_code}; }}{data_cast_back_code} }}{lds_per_tile_loop}{lds_per_row_loop}{tmp_decls_0}{tmp_decls_1}{data_cast_code_0}{data_cast_code_1}{out_decls} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; ++i) {{ reinterpret_cast({output}) = {rhs_code}; }}{data_cast_back_code} }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{{tmp_decls_0}{tmp_decls_1}{data_cast_code_0}{data_cast_code_1}{out_decls} #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ reinterpret_cast({output}) = {rhs_code}; }}{data_cast_back_code} }} }}{buffer_bound_loop_code}{loop_bound_loop_code}{tmp_decls_0}{tmp_decls_1}{data_cast_code_0}{data_cast_code_1}{out_decls} #pragma unroll for (int i = 0; i < REGISTERS_PER_COMPUTE_VECTOR_{guid}; ++i) {{ reinterpret_cast({output}) = {rhs_code}; }}{data_cast_back_code} }} }} //activate_op {} includes //activate_op {} decls //activate_op {} code //activate_op {} types׺H׺ֺκպպpԺӺӺκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκκҺ0Һκк к@ϺѺ(ֺ|tٺ\ߺߺ޺,޺tٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺtٺ|ݺܺtٺۺںٺ<ܺ({ static constexpr int BYTES_PER_ELEMENT_{guid} = {bytes_per_elem}; static constexpr int BYTES_PER_VECTOR_{guid} = BYTES_PER_ELEMENT_{guid} * ELEMENTS_PER_VECTOR_{e_id}; static constexpr int REGISTERS_PER_VECTOR_{guid} = BYTES_PER_VECTOR_{guid} / BYTES_PER_REGISTER_{r_id}; coord_n + (wid / WARPS_M_{p_id} + 1) * WARP_TILE_N_{p_id}min(coord_b * convDesc.K + min({}, convDesc.K), implicit_gemm_N)min((coord_b+1) * convDesc.K, implicit_gemm_N)min((coord_b+1) * convDesc.C, implicit_gemm_N)min(coord_b * convDesc.C + min({}, convDesc.C), implicit_gemm_N)min({}, implicit_gemm_N) / trs r32 reg_{}_{}[REGISTERS_PER_VECTOR_{}]; uint32_t sts_smem_{} = smem_d + tid * BYTES_PER_VECTOR_{}; uint32_t sts_smem_{} = smem_d + (tid - ((wid%4)*16)) * BYTES_PER_VECTOR_{}; r32 reg_{guid}_{port}[LDS_TILES_N_{e_id}][VECTORS_PER_LDS_TILES_{e_id}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[LDS_TILES_N_{e_id}][REGISTERS_PER_VECTOR_{guid}]; #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ reinterpret_cast(reg_{guid}_{port}[c][i]) = {default_value}; }} }} r32 reg_{guid}_{port}[VECTORS_PER_LDS_TILES_{e_id}]; r32 reg_{guid}_{port}[XMMAS_M_{p_id} * VECTORS_PER_LDS_TILES_{e_id}]; int coord_n_{guid}_{port}[XMMAS_M_{p_id} * VECTORS_PER_LDS_TILES_{e_id}]; r32 reg_{guid}_{port}[XMMAS_M_{p_id}][VECTORS_PER_LDS_TILES_{e_id}][LDS_TILES_N_{e_id}][REGISTERS_PER_VECTOR_{guid}]; r32 reg_{guid}_{port}[1]; reinterpret_cast(reg_{guid}_{port}[0]) = {default_value}; const int oob_M_{guid} = {oob_M_decl}; const int oob_N_{guid} = {oob_N_decl};min((coord_b+1) * convDesc.K, implicit_gemm_M) ERROR: REDUCE_GENERAL_FRAGMENT not found! reinterpret_cast(r32 {}[REGISTERS_PER_VECTOR_{}];reinterpret_cast(reg_{}_{}[i])reinterpret_cast(reg_{}_{}[c][r][i])reinterpret_cast(reg_{}_{}[c][i])reinterpret_cast(reg_{}_{}[0])reinterpret_cast(reg_{}_{}[r])reinterpret_cast(reg_{}_{}[m * VECTORS_PER_LDS_TILES_{} + r])reinterpret_cast(reg_{}_{}[m][r][c][i])if (row_{e_id} < oob_M_{guid})if (col_{e_id} + i * BYTES_PER_REGISTER_{r_id} / BYTES_PER_ELEMENT_{guid} < oob_N_{guid})if (row_{e_id} + row_offset_{e_id}[r] < oob_M_{guid})if (col_{e_id} + column_offset_{e_id}[c] + i * BYTES_PER_REGISTER_{r_id} / BYTES_PER_ELEMENT_{guid} < oob_N_{guid}) reinterpret_cast(reg_{guid}_{port}[i]) = {default_value}; reinterpret_cast(reg_{}_{}[0]) = {}; #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; ++i) {{ reinterpret_cast(reg_{guid}_{port}[i]) = {default_value}; }} reinterpret_cast(reg_{guid}_{port}[m * VECTORS_PER_LDS_TILES_{e_id} + r]) = {default_value}; reinterpret_cast(reg_{guid}_{port}[r]) = {default_value}; #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ reinterpret_cast(reg_{guid}_{port}[c][r][i]) = {default_value}; }} }}reinterpret_cast(tmp) #pragma unroll for (int j = STG_THREADS_PER_TILE_N_{e_id} / 2; j > 0; j /= 2) {{ r32 tmp = __shfl_down_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, reg_{guid}_{port}[m * VECTORS_PER_LDS_TILES_{e_id} + r], j, STG_THREADS_PER_TILE_N_{e_id}); {lhs} = {layer_rhs_code}; }} uint32_t coord_n, opq; fastDivMod(convDesc.opq, row_{e_id} + row_offset_{e_id}[r], coord_n, opq); coord_n_{guid}_{port}[m * VECTORS_PER_LDS_TILES_{e_id} + r] = coord_n; else {{ {lhs} = {default_value}; }} {tmp_decl}{data_cast_code} #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ {row_oob_check} {{ {lhs} = {rhs}; }} else {{{init_code} }} // Warp-reduction #pragma unroll for (int j = THREADS_PER_WARP_{r_id} / 2; j > 0; j /= 2) {{ r32 tmp = __shfl_down_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, reg_{guid}_0[i], j, THREADS_PER_WARP_{r_id}); {lhs} = {rhs_code}; }} r32 tmp = reg_{guid}_0[i / THREADS_PER_WARP_{r_id}]; reg_{guid}_0[i / THREADS_PER_WARP_{r_id}] = __shfl_up_sync((uint64_t(1) << THREADS_PER_WARP_{r_id}) - 1, reg_{guid}_0[i], i % THREADS_PER_WARP_{r_id}, THREADS_PER_WARP_{r_id}); reg_{guid}_0[i / THREADS_PER_WARP_{r_id}] = (tiw < (i % THREADS_PER_WARP_{r_id})) ? tmp : reg_{guid}_0[i / THREADS_PER_WARP_{r_id}]; }} {tmp_decl}{data_cast_code} #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ {lhs} = {rhs_code}; }} named_barrier_wait(EPI_WARP_BARRIER_ID, 128); #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i+=4) {{ sts_128(sts_smem_{guid} + i * BYTES_PER_ELEMENT_{guid}, ®_{guid}_0[i]); }} }} named_barrier_wait(EPI_WARP_BARRIER_ID, 128);{init_code} {row_oob_check} {{ {tmp_decl}{data_cast_code} #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ {col_oob_check} {{ {lhs} = {rhs_code}; }} }} }} #pragma unroll for (int r = 0; r < VECTORS_PER_LDS_TILES_{e_id}; ++r) {{{init_code} {row_oob_check} {{ #pragma unroll for (int c = 0; c < LDS_TILES_N_{e_id}; ++c) {{ {tmp_decl}{data_cast_code} #pragma unroll for (int i = 0; i < REGISTERS_PER_VECTOR_{guid}; i++) {{ {col_oob_check} {{ {lhs} = {rhs_code}; }}{instance_reduce_code} }} }} }} {layer_reduce_code} }} //reduce_op {} includes //reduce_op {} types(cta_n + 1) * CTA_TILE_N_{}implicit_gemm_N / trsmin({}, implicit_gemm_N) //reduce_op {} decls r32 reg_{}_{}[1];[i])reinterpret_cast(tmp)layer_rhs_code //reduce_op {} codetmp_declrhslayer_reduce_codeinstance_reduce_codeDxDDZEE(reg_{guid}_1[i]) = NEG_INFINITY; reinterpret_cast(reg_{guid}_3[i]) = 0.0f; }} int row_{guid} = (wid % WARPS_M_{p_id}) * WARP_TILE_M_{guid} + tiw / THREADS_PER_WARP_TILE_N_{guid}; float* shared_ptr_acc_max_{guid} = (float*)set_smem_pointer(smem_{p_id} + SMEM_ACC_MAX_{p_id}); float* shared_ptr_acc_sum_{guid} = (float*)set_smem_pointer(smem_{p_id} + SMEM_ACC_SUM_{p_id}); #pragma unroll for (int i = 0; i < TILE_M_{guid}; i += THREADS_PER_GROUP_{r_id}) {{ if (i + tid < TILE_M_{guid}) {{ shared_ptr_acc_max_{guid}[i + tid] = NEG_INFINITY; }} }} __syncthreads();reg_{input_0_index}_{input_0_port} fp32x2_to_bf16x2(®_{guid}_0[m][n][i/2], &{input_reg_name}[m][n][i]); fp32x2_to_fp16x2(®_{guid}_0[m][n][i/2], &{input_reg_name}[m][n][i]); reg_{guid}_0[m][n][i] = {input_reg_name}[m][n][i]; fp32x4_to_e4m3x4(®_{guid}_0[m][n][i/4], ®_{input_0_index}_{input_0_port}[m][n][i]); fp32x4_to_e5m2x4(®_{guid}_0[m][n][i/4], ®_{input_0_index}_{input_0_port}[m][n][i]);p_col_{p_id} + (wid / WARPS_M_{guid}) * WARP_TILE_N_{guid} * REGS_N_{guid} + (tiw % 4) * 2 if (kv_loop >= kv_loop_right_bound - 2) {{ #pragma unroll for (int i = 0; i < BMM1_TILE_N; i++) {{ int col = p_col_{p_id} + i; bool mask = col < attnDesc.s_kv; if (!mask) {{ reinterpret_cast({input_reg_name}[i]) = NEG_INFINITY; }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int col = {causal_mask_col} + n * WARP_TILE_N_{guid} + i % 2 + (i / 4) * 8; uint32_t mask = col < attnDesc.s_kv; if (!mask) {{ reinterpret_cast({input_reg_name}[m][n][i]) = NEG_INFINITY; }} }} }} }} - log_dropout_probability_scale_{} if (i >= kAddPipeCount) {{ local_sum.x += reinterpret_cast({input_reg_name}[i + 0 - kAddPipeCount]); local_sum.y += reinterpret_cast({input_reg_name}[i + 1 - kAddPipeCount]); }} #pragma unroll for (int i = TILE_N_{p_id} - kAddPipeCount; i < TILE_N_{p_id}; i+=2) {{ local_sum.x += reinterpret_cast({input_reg_name}[i + 0]); local_sum.y += reinterpret_cast({input_reg_name}[i + 1]); }} if (i >= kDropoutPipeCount) {{ bool mask_0 = (reg_{rng_guid}_0[(i + 0 - kDropoutPipeCount) / 32] & (1 << ((i + 0 - kDropoutPipeCount) % 32))) > 0; bool mask_1 = (reg_{rng_guid}_0[(i + 1 - kDropoutPipeCount) / 32] & (1 << ((i + 1 - kDropoutPipeCount) % 32))) > 0; reinterpret_cast({input_reg_name}[i + 0 - kDropoutPipeCount]) = mask_0 ? 0.0f : reinterpret_cast({input_reg_name}[i + 0 - kDropoutPipeCount]); reinterpret_cast({input_reg_name}[i + 1 - kDropoutPipeCount]) = mask_1 ? 0.0f : reinterpret_cast({input_reg_name}[i + 1 - kDropoutPipeCount]); }} #pragma unroll for (int i = TILE_N_{p_id} - kDropoutPipeCount; i < TILE_N_{p_id}; i++) {{ bool mask = (reg_{rng_guid}_0[i / 32] & (1 << (i % 32))) > 0; reinterpret_cast({input_reg_name}[i]) = mask ? 0.0f : reinterpret_cast({input_reg_name}[i]); }} float total_max_scaled = (total_max == NEG_INFINITY) ? 0.0f : total_max{fp8_scale}{rng_scale}; float2 minus_scaled_max_x2 = make_float2(-total_max_scaled, -total_max_scaled); if (i - kConvertPipeCount == 64) {{ sttm_32dp32bit_x16(tmem_fp16_S, ®_{guid}_0[0]); fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(bmm2_mbar + 0)); }} if (i >= kConvertPipeCount) {{ if ((i - kConvertPipeCount) % 4 == 0) {{ {data_cast_code}(®_{guid}_0[(i - kConvertPipeCount) / 4], reinterpret_cast(&{input_reg_name}[i - kConvertPipeCount])); }} }} if (i - kConvertPipeCount == 64) {{ sttm_32dp32bit_x32(tmem_fp16_S, ®_{guid}_0[0]); fence_view_async_tmem_store(); arrive_barrier(cast_smem_ptr_to_uint(bmm2_mbar + 0)); }} if (i >= kConvertPipeCount) {{ {data_cast_code}(®_{guid}_0[((i - kConvertPipeCount) / 2) % 32], reinterpret_cast(&{input_reg_name}[i - kConvertPipeCount])); }} #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ reg_{guid}_0[i] = {input_reg_name}[i]; }} #pragma unroll for (int i = BMM1_TILE_N - kConvertPipeCount; i < BMM1_TILE_N; i+=4) {{ {data_cast_code}(®_{guid}_0[i / 4], reinterpret_cast(&{input_reg_name}[i])); }} sttm_32dp32bit_x16(tmem_fp16_S + 16, ®_{guid}_0[16]); #pragma unroll for (int i = BMM1_TILE_N - kConvertPipeCount; i < BMM1_TILE_N; i+=2) {{ {data_cast_code}(®_{guid}_0[(i / 2) % 32], reinterpret_cast(&{input_reg_name}[i])); }} sttm_32dp32bit_x32(tmem_fp16_S + 32, ®_{guid}_0[0]); // Cross-warps reduction float current_max[BMM1_TILE_M]; warp_max_reduction({input_reg_name}, reinterpret_cast(current_max)); named_barrier_wait(SOFTMAX_BARRIER, threads_per_group); if (tiw == 0) {{ #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ sts_32(cast_smem_ptr_to_uint(shared_storage.smem_Stats) + i * warps_per_group * sizeof(float) + wid * sizeof(float), &(reinterpret_cast(current_max)[i])); }} }} named_barrier_wait(SOFTMAX_BARRIER, threads_per_group); #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ r32 tmp_max[4]; lds_128(tmp_max, cast_smem_ptr_to_uint(shared_storage.smem_Stats) + i * warps_per_group * sizeof(float)); float max_0 = fmaxf(reinterpret_cast(tmp_max[0]), reinterpret_cast(tmp_max[1])); float max_1 = fmaxf(reinterpret_cast(tmp_max[2]), reinterpret_cast(tmp_max[3])); current_max[i] = fmaxf(max_0, max_1); }} // End of cross-warp reduction #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ current_max[i] *= total_max_scale_{guid}; }} // Update total max float alpha[BMM1_TILE_M]; float total_max_scaled[BMM1_TILE_M]; #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ float total_max_tmp = fmaxf(current_max[i], total_max[i]); current_max[i] = total_max[i]; total_max[i] = total_max_tmp; // Optimized version of alpha = __expf(current_max - total_max); float tmp = (total_max[i] == NEG_INFINITY) ? current_max[i] : current_max[i] - total_max[i]; alpha[i] = exp2f(tmp); total_max_scaled[i] = (total_max[i] == NEG_INFINITY) ? 0.0f : total_max[i]{fp8_scale}{rng_scale}; // Send stats to correction warp reinterpret_cast(fp32_stats[i]) = alpha[i]; }} sttm_32dp32bit_x{tile_m}(tmem_Stats, &fp32_stats[0]); arrive_barrier(cast_smem_ptr_to_uint(&(shared_storage.stat_tile0_full_mbar[0]))); #pragma unroll for (int i = 0; i < BMM1_TILE_M; ++i) {{ // FMUL reinterpret_cast({input_reg_name}[i]) = __fmul_rn(reinterpret_cast({input_reg_name}[i]), total_max_scale_{guid}); // FSUB reinterpret_cast({input_reg_name}[i]) = __fsub_rn(reinterpret_cast({input_reg_name}[i]), total_max_scaled[i]); // EXP reinterpret_cast({input_reg_name}[i]) = exp2f(reinterpret_cast({input_reg_name}[i])); // Data cast // FADD total_sum[i] = alpha[i] * total_sum[i] + reinterpret_cast({input_reg_name}[i]); }}{padding_mask_code} float current_max = row_max_reduction_128_elems({input_reg_name}) * total_max_scale_{guid}; // Update total max float total_max_tmp = fmaxf(current_max, total_max); current_max = total_max; total_max = total_max_tmp; float2 bmm_scale_x_ln2_x2 = make_float2(total_max_scale_{guid}, total_max_scale_{guid});{scale_max} static constexpr int kMulPipeCount = {is_fp8_pipeline} ? 64 : 12; // must be multiple of 2 static constexpr int kSubtractPipeCount = {is_fp8_pipeline} ? 16 : 6; // must be multiple of 2 static constexpr int kConvertPipeCount = {is_fp8_pipeline} ? 12 : 6; // must be multiple of 2 static constexpr int kReleasePipeCount = {is_fp8_pipeline} ? 8 : 4; // must be multiple of 2 static constexpr int kDropoutPipeCount = {is_fp8_pipeline} ? 8 : 6; // must be multiple of 2 and less than or equal kConvertPipeCount static constexpr int kAddPipeCount = {is_fp8_pipeline} ? 6 : 4; // must be multiple of 2 and less than kDropoutPipeCount cfence(); #pragma unroll for (int i = 0; i < kMulPipeCount; i+=2) {{ float2 in = make_float2(reinterpret_cast({input_reg_name}[i]), reinterpret_cast({input_reg_name}[i+1])); float2 out = fmul2_rn(bmm_scale_x_ln2_x2, in); reinterpret_cast({input_reg_name}[i+0]) = out.x; reinterpret_cast({input_reg_name}[i+1]) = out.y; }} cfence(); #pragma unroll for (int i = 0; i < kSubtractPipeCount; i+=2) {{ float2 in = make_float2(reinterpret_cast({input_reg_name}[i]), reinterpret_cast({input_reg_name}[i+1])); float2 out = fadd2_rn(in, minus_scaled_max_x2); reinterpret_cast({input_reg_name}[i+0]) = out.x; reinterpret_cast({input_reg_name}[i+1]) = out.y; }} if (softmax_gid == 1) {{ named_barrier_wait(SOFTMAX_BARRIER, 256); }} // Optimized version of alpha = __expf(current_max - total_max); float alpha = (total_max == NEG_INFINITY) ? exp2f(current_max) : exp2f(current_max - total_max); // Send stats to correction warp reinterpret_cast(fp32_stats[0]) = alpha; // STTM sttm_32dp32bit_x1(tmem_Stats, &fp32_stats[0]); arrive_barrier(cast_smem_ptr_to_uint(stat_full_mbar)); asm volatile (".pragma \"global knob SchedResBusyXU64=1\";\n" ::: "memory"); #pragma unroll for (int i = 0; i < BMM1_TILE_N; i+=2) {{{local_sum_code}{dropout_code}{middle_cast_code} cfence(); reinterpret_cast({input_reg_name}[i + 0]) = exp2f(reinterpret_cast({input_reg_name}[i + 0])); cfence(); if (i + kSubtractPipeCount < BMM1_TILE_N) {{ float2 in = make_float2(reinterpret_cast({input_reg_name}[i + kSubtractPipeCount + 0]), reinterpret_cast({input_reg_name}[i + kSubtractPipeCount + 1])); float2 out = fadd2_rn(in, minus_scaled_max_x2); reinterpret_cast({input_reg_name}[i + kSubtractPipeCount + 0]) = out.x; reinterpret_cast({input_reg_name}[i + kSubtractPipeCount + 1]) = out.y; }} cfence(); if (i + kMulPipeCount < BMM1_TILE_N) {{ float2 in = make_float2(reinterpret_cast({input_reg_name}[i + kMulPipeCount + 0]), reinterpret_cast({input_reg_name}[i + kMulPipeCount + 1])); float2 out = fmul2_rn(bmm_scale_x_ln2_x2, in); reinterpret_cast({input_reg_name}[i + kMulPipeCount + 0]) = out.x; reinterpret_cast({input_reg_name}[i + kMulPipeCount + 1]) = out.y; }} reinterpret_cast({input_reg_name}[i + 1]) = exp2f(reinterpret_cast({input_reg_name}[i + 1])); if (i == BMM1_TILE_N - kReleasePipeCount) {{ if (softmax_gid == 0) {{ named_barrier_wait(SOFTMAX_BARRIER, 256); }} }} }} asm volatile (".pragma \"reset knob SchedResBusyXU64\";\n" ::: "memory"); {final_local_sum_code}{final_dropout_code}{final_cast_code} static constexpr float inv_ln2_{guid} = 1.4426950408889634074f; float bmm_q_k_scale_{guid} = reinterpret_cast(reg_{input_guid_0}_{input_port_0}[0]) * reinterpret_cast(reg_{input_guid_1}_{input_port_1}[0]) * reinterpret_cast(reg_{input_guid_2}_{input_port_2}[0]); float scaled_inv_ln2_{guid} = inv_ln2_{guid} * bmm_q_k_scale_{guid}; float s_scale_{guid} = reinterpret_cast(reg_{input_guid_3}_{input_port_3}[0]); float inv_s_scale_{guid} = 1.0f / s_scale_{guid}; r32 *flattened_s = reinterpret_cast(reg_{in_guid}_{in_port}); r32 *flattened_s_fp8 = reinterpret_cast(reg_{guid}_0_fp8); r32 *flattened_o = reinterpret_cast(reg_{p_id}_0);{padding_mask_code}{bmm_q_k_scale_decl} float tmp_max_level_0[REGS_N_{guid}][4]; float tmp_max_level_1[REGS_N_{guid}][2]; float tmp_max_level_2[REGS_N_{guid} / 2][2]; float tmp_max_level_3[REGS_N_{guid} / 4][2]; float tmp_max_level_4[REGS_N_{guid} / 8][2]; #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; i+=2) {{ tmp_max_level_0[n][i/2] = fmaxf(reinterpret_cast(reg_{in_guid}_{in_port}[m][n][i+0]), reinterpret_cast(reg_{in_guid}_{in_port}[m][n][i+1])); }} }} }} // FMUL #pragma unroll for (int i = 0; i < kMulPipeCount; i++) {{ reinterpret_cast(flattened_s[i]) = __fmul_rn(scaled_inv_ln2_{guid}, reinterpret_cast(flattened_s[i])); }} {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < 2; i++) {{ tmp_max_level_1[n][i] = fmaxf(tmp_max_level_0[n][i + 0], tmp_max_level_0[n][i + 2]); }} }} }} {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=2) {{ tmp_max_level_2[n/2][0] = fmaxf(tmp_max_level_1[n][0], tmp_max_level_1[n+1][0]); tmp_max_level_2[n/2][1] = fmaxf(tmp_max_level_1[n][1], tmp_max_level_1[n+1][1]); }} }} {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=4) {{ tmp_max_level_3[n/4][0] = fmaxf(tmp_max_level_2[n/2][0], tmp_max_level_2[n/2+1][0]); tmp_max_level_3[n/4][1] = fmaxf(tmp_max_level_2[n/2][1], tmp_max_level_2[n/2+1][1]); }} }} if (TILE_N_{p_id} == 128) {{ reinterpret_cast(reg_{guid}_2[0]) = fmaxf(tmp_max_level_3[0][0], tmp_max_level_3[1][0]); reinterpret_cast(reg_{guid}_2[1]) = fmaxf(tmp_max_level_3[0][1], tmp_max_level_3[1][1]); }} else if (TILE_N_{p_id} == 256) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=8) {{ tmp_max_level_4[n/8][0] = fmaxf(tmp_max_level_3[n/4][0], tmp_max_level_3[n/4+1][0]); tmp_max_level_4[n/8][1] = fmaxf(tmp_max_level_3[n/4][1], tmp_max_level_3[n/4+1][1]); }} reinterpret_cast(reg_{guid}_2[0]) = fmaxf(tmp_max_level_4[0][0], tmp_max_level_4[1][0]); reinterpret_cast(reg_{guid}_2[1]) = fmaxf(tmp_max_level_4[0][1], tmp_max_level_4[1][1]); }} // Apply the functor for each row inside each group of 4 threads. #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ r32 tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{guid}_2[m], 1); reinterpret_cast(reg_{guid}_2[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(tmp_0)); tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{guid}_2[m], 2); reinterpret_cast(reg_{guid}_2[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(tmp_0)) * scaled_inv_ln2_{guid}; }} // Update acc_max scale of flash attention #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ r32 curr_max = reg_{guid}_1[m]; reinterpret_cast(reg_{guid}_1[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(curr_max)); reg_{guid}_2[m] = curr_max; }} float alpha_{guid}[ROWS_PER_THREAD_{guid}]; #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ float p_max = reinterpret_cast(reg_{guid}_2[m]); float acc_max = reinterpret_cast(reg_{guid}_1[m]); float tmp = (acc_max == NEG_INFINITY) ? p_max : __fsub_rn(p_max, acc_max); reinterpret_cast(alpha_{guid}[m]) = fp32_exp2(reinterpret_cast(tmp)); }} #pragma unroll for (int i = 0; i < ROWS_PER_THREAD_{guid}; ++i) {{ reinterpret_cast(reg_{guid}_4[i]) = 0.0f; }} // Broadcast scaled_max and alpha float flattened_scaled_max[REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}]; float flattened_alpha[REGS_M_{guid} * REGS_O_{p_id} * WARP_REGS_{guid}]; r32 flattened_s_reordered[REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}]; float max0 = (reinterpret_cast(reg_{guid}_1[0]) == NEG_INFINITY ? 0.0f : reinterpret_cast(reg_{guid}_1[0]) - log2(s_scale_{guid})); float max1 = (reinterpret_cast(reg_{guid}_1[1]) == NEG_INFINITY ? 0.0f : reinterpret_cast(reg_{guid}_1[1]) - log2(s_scale_{guid})); #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 0] = max0; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 1] = max0; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 2] = max0; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 3] = max0; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 4] = max1; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 5] = max1; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 6] = max1; flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 7] = max1; }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_O_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; flattened_alpha[m * REGS_O_{p_id} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + i] = alpha_{guid}[row_indx]; }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 0] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 0]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 1] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 1]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 2] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 4]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 3] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 5]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 4] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 2]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 5] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 3]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 6] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 6]; flattened_s_reordered[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 7] = flattened_s[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + 7]; }} }} cfence(); if (local_gid == 1) {{ named_barrier_wait(SOFTMAX_1_BARRIER_{p_id}, 256); }} cfence(); // FSUB #pragma unroll for (int i = 0; i < kSubtractPipeCount; i++) {{ reinterpret_cast(flattened_s_reordered[i]) = __fsub_rn(reinterpret_cast(flattened_s_reordered[i]), flattened_scaled_max[i]); }} asm volatile (".pragma \"global knob SchedResBusyXU64=1\";\n" ::: "memory"); #pragma unroll for (int i = 0; i < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}; i+=2) {{ // cast and FADD if (i % 4 == 0) {{ if (i >= kConvertPipeCount) {{ {cast_code}(&flattened_s_fp8[(i - kConvertPipeCount)/4], &flattened_s_reordered[i - kConvertPipeCount]); }} }} cfence(); if (i >= kAddPipeCount) {{ #pragma unroll for (int j = 0; j < 2; ++j) {{ int m = (i-kAddPipeCount+j) / (REGS_N_{guid} * WARP_REGS_{guid}); int ii = (i-kAddPipeCount+j) % WARP_REGS_{guid}; int row_indx = m * 2 + (ii / 4); reinterpret_cast(reg_{guid}_4[row_indx]) += reinterpret_cast(flattened_s_reordered[i-kAddPipeCount+j]); }} }} // exp flattened_s_reordered[i+0] = fp32_exp2(flattened_s_reordered[i+0]); // O update #pragma unroll for (int j = 0; j < oBlockSize; j++) {{ if (oBlockSize*i+j < REGS_O_{p_id} * REGS_M_{p_id} * WARP_REGS_{p_id}) {{ reinterpret_cast(flattened_o[oBlockSize*i+j]) *= flattened_alpha[oBlockSize*i+j]; }} }} // fmul if (i + kMulPipeCount < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}) {{ reinterpret_cast(flattened_s_reordered[i+kMulPipeCount+0]) = __fmul_rn(scaled_inv_ln2_{guid}, reinterpret_cast(flattened_s_reordered[i+kMulPipeCount+0])); reinterpret_cast(flattened_s_reordered[i+kMulPipeCount+1]) = __fmul_rn(scaled_inv_ln2_{guid}, reinterpret_cast(flattened_s_reordered[i+kMulPipeCount+1])); }} // fsub if (i + kSubtractPipeCount < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}) {{ reinterpret_cast(flattened_s_reordered[i+kSubtractPipeCount+0]) = __fsub_rn(reinterpret_cast(flattened_s_reordered[i+kSubtractPipeCount+0]), flattened_scaled_max[i+kSubtractPipeCount+0]); reinterpret_cast(flattened_s_reordered[i+kSubtractPipeCount+1]) = __fsub_rn(reinterpret_cast(flattened_s_reordered[i+kSubtractPipeCount+1]), flattened_scaled_max[i+kSubtractPipeCount+1]); }} // exp flattened_s_reordered[i+1] = fp32_exp2(flattened_s_reordered[i+1]); // O update #pragma unroll for (int j = 0; j < oBlockSize; j++) {{ if (oBlockSize+oBlockSize*i+j < REGS_O_{p_id} * REGS_M_{p_id} * WARP_REGS_{p_id}) {{ reinterpret_cast(flattened_o[oBlockSize+oBlockSize*i+j]) *= flattened_alpha[oBlockSize+oBlockSize*i+j]; }} }} }} asm volatile (".pragma \"reset knob SchedResBusyXU64\";\n" ::: "memory"); if (local_gid == 0) {{ named_barrier_wait(SOFTMAX_1_BARRIER_{p_id}, 256); }} cfence(); #pragma unroll for (int i = REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid} - kConvertPipeCount; i < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}; i+=4) {{ {cast_code}(&flattened_s_fp8[i/4], &flattened_s_reordered[i]); }} static constexpr float inv_ln2_{guid} = 1.4426950408889634074f; float scaled_inv_ln2_{guid} = inv_ln2_{guid} * reinterpret_cast(reg_{input_guid}_{input_port}[0]); static constexpr float inv_ln2_{} = 1.4426950408889634074f;{exp_scale_decl} r32 *flattened_s = reinterpret_cast({input_reg_name}); r32 *flattened_s_fp16 = reinterpret_cast(reg_{guid}_0); r32 *flattened_o = reinterpret_cast(reg_{p_id}_0); {padding_mask_code} float tmp_max_level_0[REGS_N_{guid}][4]; float tmp_max_level_1[REGS_N_{guid}][2]; float tmp_max_level_2[REGS_N_{guid} / 2][2]; #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; i+=2) {{ tmp_max_level_0[n][i/2] = fmaxf(reinterpret_cast({input_reg_name}[m][n][i+0]), reinterpret_cast({input_reg_name}[m][n][i+1])); }} }} }} // FMUL #pragma unroll for (int i = 0; i < kMulPipeCount; i++) {{ reinterpret_cast(flattened_s[i]) = __fmul_rn({scale_max_code}, reinterpret_cast(flattened_s[i])); }} {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < 2; i++) {{ tmp_max_level_1[n][i] = fmaxf(tmp_max_level_0[n][i + 0], tmp_max_level_0[n][i + 2]); }} }} }} {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=2) {{ tmp_max_level_2[n/2][0] = fmaxf(tmp_max_level_1[n][0], tmp_max_level_1[n+1][0]); tmp_max_level_2[n/2][1] = fmaxf(tmp_max_level_1[n][1], tmp_max_level_1[n+1][1]); }} }} if (TILE_N_{p_id} == 256) {{ float tmp_max_level_3[REGS_N_{guid} / 4][2]; float tmp_max_level_4[FORT_MAX(1,REGS_N_{guid} / 8)][2]; #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=4) {{ tmp_max_level_3[n/4][0] = fmaxf(tmp_max_level_2[n/2][0], tmp_max_level_2[n/2+1][0]); tmp_max_level_3[n/4][1] = fmaxf(tmp_max_level_2[n/2][1], tmp_max_level_2[n/2+1][1]); }} #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=8) {{ tmp_max_level_4[n/8][0] = fmaxf(tmp_max_level_3[n/4][0], tmp_max_level_3[n/4+1][0]); tmp_max_level_4[n/8][1] = fmaxf(tmp_max_level_3[n/4][1], tmp_max_level_3[n/4+1][1]); }} reinterpret_cast(reg_{guid}_2[0]) = fmaxf(tmp_max_level_4[0][0], tmp_max_level_4[1][0]); reinterpret_cast(reg_{guid}_2[1]) = fmaxf(tmp_max_level_4[0][1], tmp_max_level_4[1][1]); }} else if (TILE_N_{p_id} == 128) {{ float tmp_max_level_3[REGS_N_{guid} / 4][2]; #pragma unroll for (int n = 0; n < REGS_N_{guid}; n+=4) {{ tmp_max_level_3[n/4][0] = fmaxf(tmp_max_level_2[n/2][0], tmp_max_level_2[n/2+1][0]); tmp_max_level_3[n/4][1] = fmaxf(tmp_max_level_2[n/2][1], tmp_max_level_2[n/2+1][1]); }} reinterpret_cast(reg_{guid}_2[0]) = fmaxf(tmp_max_level_3[0][0], tmp_max_level_3[1][0]); reinterpret_cast(reg_{guid}_2[1]) = fmaxf(tmp_max_level_3[0][1], tmp_max_level_3[1][1]); }} else {{ reinterpret_cast(reg_{guid}_2[0]) = fmaxf(tmp_max_level_2[0][0], tmp_max_level_2[1][0]); reinterpret_cast(reg_{guid}_2[1]) = fmaxf(tmp_max_level_2[0][1], tmp_max_level_2[1][1]); }} // Apply the functor for each row inside each group of 4 threads. #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ r32 tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{guid}_2[m], 1); reinterpret_cast(reg_{guid}_2[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(tmp_0)); tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{guid}_2[m], 2); reinterpret_cast(reg_{guid}_2[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(tmp_0)) * {scale_max_code}; }} // Update acc_max scale of flash attention #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ r32 curr_max = reg_{guid}_1[m]; reinterpret_cast(reg_{guid}_1[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(curr_max)); reg_{guid}_2[m] = curr_max; }} float alpha_{guid}[ROWS_PER_THREAD_{guid}]; #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ float p_max = reinterpret_cast(reg_{guid}_2[m]); float acc_max = reinterpret_cast(reg_{guid}_1[m]); // disable FMA for scale * P - max float tmp = (acc_max == NEG_INFINITY) ? p_max : __fsub_rn(p_max, acc_max); reinterpret_cast(alpha_{guid}[m]) = fp32_exp2(reinterpret_cast(tmp)); }} #pragma unroll for (int i = 0; i < ROWS_PER_THREAD_{guid}; ++i) {{ reinterpret_cast(reg_{guid}_4[i]) = 0.0f; }} // Broadcast scaled_max and alpha float flattened_scaled_max[REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}]; float flattened_alpha[REGS_M_{guid} * REGS_O_{p_id} * WARP_REGS_{guid}]; #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; float max = reinterpret_cast(reg_{guid}_1[row_indx]); flattened_scaled_max[m * REGS_N_{guid} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + i] = (max == NEG_INFINITY ? 0.0f : max); }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_O_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; flattened_alpha[m * REGS_O_{p_id} * WARP_REGS_{guid} + n * WARP_REGS_{guid} + i] = alpha_{guid}[row_indx]; }} }} }} cfence(); if (local_gid == 1) {{ named_barrier_wait(SOFTMAX_1_BARRIER_{p_id}, 256); }} else {{ named_barrier_wait(SOFTMAX_2_BARRIER_{p_id}, 256); }} cfence(); // FSUB #pragma unroll for (int i = 0; i < kSubtractPipeCount; i++) {{ reinterpret_cast(flattened_s[i]) = __fsub_rn(reinterpret_cast(flattened_s[i]), flattened_scaled_max[i]); }} asm volatile (".pragma \"global knob SchedResBusyXU64=1\";\n" ::: "memory"); #pragma unroll for (int i = 0; i < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}; i+=2) {{ int m_0 = (i-kConvertPipeCount+0) / (REGS_N_{guid} * WARP_REGS_{guid}); int ii_0 = (i-kConvertPipeCount+0) % WARP_REGS_{guid}; int m_1 = (i-kConvertPipeCount+1) / (REGS_N_{guid} * WARP_REGS_{guid}); int ii_1 = (i-kConvertPipeCount+1) % WARP_REGS_{guid}; int row_indx_0 = m_0 * 2 + (ii_0 / 2) % 2; int row_indx_1 = m_1 * 2 + (ii_1 / 2) % 2; // cast and FADD if (i >= kConvertPipeCount) {{ reinterpret_cast(reg_{guid}_4[row_indx_0]) += reinterpret_cast(flattened_s[i-kConvertPipeCount+0]); reinterpret_cast(reg_{guid}_4[row_indx_1]) += reinterpret_cast(flattened_s[i-kConvertPipeCount+1]); }} cfence(); // exp flattened_s[i+0] = fp32_exp2(flattened_s[i+0]); // O update #pragma unroll for (int j = 0; j < oBlockSize; j++) {{ if (oBlockSize*i+j < REGS_O_{p_id} * REGS_M_{p_id} * WARP_REGS_{p_id}) {{ reinterpret_cast(flattened_o[oBlockSize*i+j]) *= flattened_alpha[oBlockSize*i+j]; }} }} // fmul if (i + kMulPipeCount < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}) {{ reinterpret_cast(flattened_s[i+kMulPipeCount+0]) = __fmul_rn({scale_max_code}, reinterpret_cast(flattened_s[i+kMulPipeCount+0])); reinterpret_cast(flattened_s[i+kMulPipeCount+1]) = __fmul_rn({scale_max_code}, reinterpret_cast(flattened_s[i+kMulPipeCount+1])); }} // fsub if (i + kSubtractPipeCount < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}) {{ reinterpret_cast(flattened_s[i+kSubtractPipeCount+0]) = __fsub_rn(reinterpret_cast(flattened_s[i+kSubtractPipeCount+0]), flattened_scaled_max[i+kSubtractPipeCount+0]); reinterpret_cast(flattened_s[i+kSubtractPipeCount+1]) = __fsub_rn(reinterpret_cast(flattened_s[i+kSubtractPipeCount+1]), flattened_scaled_max[i+kSubtractPipeCount+1]); }} // exp flattened_s[i+1] = fp32_exp2(flattened_s[i+1]); // O update #pragma unroll for (int j = 0; j < oBlockSize; j++) {{ if (oBlockSize+oBlockSize*i+j < REGS_O_{p_id} * REGS_M_{p_id} * WARP_REGS_{p_id}) {{ reinterpret_cast(flattened_o[oBlockSize+oBlockSize*i+j]) *= flattened_alpha[oBlockSize+oBlockSize*i+j]; }} }} }} asm volatile (".pragma \"reset knob SchedResBusyXU64\";\n" ::: "memory"); if (local_gid == 0) {{ named_barrier_arrive(SOFTMAX_1_BARRIER_{p_id}, 256); }} else {{ named_barrier_arrive(SOFTMAX_2_BARRIER_{p_id}, 256); }} cfence(); #pragma unroll for (int i = REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid} - kConvertPipeCount; i < REGS_M_{guid} * REGS_N_{guid} * WARP_REGS_{guid}; i+=2) {{ int m_0 = (i + 0) / (REGS_N_{guid} * WARP_REGS_{guid}); int ii_0 = (i + 0) % WARP_REGS_{guid}; int m_1 = (i + 1) / (REGS_N_{guid} * WARP_REGS_{guid}); int ii_1 = (i + 1) % WARP_REGS_{guid}; int row_indx_0 = m_0 * 2 + (ii_0 / 2) % 2; int row_indx_1 = m_1 * 2 + (ii_1 / 2) % 2; reinterpret_cast(reg_{guid}_4[row_indx_0]) += reinterpret_cast(flattened_s[i+0]); reinterpret_cast(reg_{guid}_4[row_indx_1]) += reinterpret_cast(flattened_s[i+1]); }} // Update acc_max scale of flash attention if (tiw % THREADS_PER_WARP_TILE_N_{guid} == 0) {{ #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ atomicMax(shared_ptr_acc_max_{guid} + row_{guid} + m * THREADS_PER_WARP_TILE_M_{guid}, reinterpret_cast(reg_{guid}_2[m])); }} }} __syncthreads(); #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ reg_{guid}_2[m] = reg_{guid}_1[m]; reg_{guid}_1[m] = *reinterpret_cast(shared_ptr_acc_max_{guid} + row_{guid} + m * THREADS_PER_WARP_TILE_M_{guid}); }} // Update acc_sum of flash attention #pragma unroll for (int i = 0; i < TILE_M_{guid} * THREADS_PER_WARP_TILE_N_{guid}; i += THREADS_PER_GROUP_{r_id}) {{ if (i + tid < TILE_M_{guid} * THREADS_PER_WARP_TILE_N_{guid}) {{ shared_ptr_acc_sum_{guid}[i + tid] = 0.0f; }} }} __syncthreads(); #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ atomicAdd(shared_ptr_acc_sum_{guid} + (row_{guid} + m * THREADS_PER_WARP_TILE_M_{guid}) * THREADS_PER_WARP_TILE_N_{guid} + tiw % THREADS_PER_WARP_TILE_N_{guid}, reinterpret_cast(reg_{guid}_4[m])); }} __syncthreads(); #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ reg_{guid}_4[m] = *reinterpret_cast(shared_ptr_acc_sum_{guid} + (row_{guid} + m * THREADS_PER_WARP_TILE_M_{guid}) * THREADS_PER_WARP_TILE_N_{guid} + tiw % THREADS_PER_WARP_TILE_N_{guid}); }} // Update acc_max scale of flash attention #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ r32 curr_max = reg_{guid}_1[m]; reinterpret_cast(reg_{guid}_1[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(curr_max)); reg_{guid}_2[m] = curr_max; }}{padding_mask_code} #pragma unroll for (int i = 0; i < ROWS_PER_THREAD_{guid}; ++i) {{ reinterpret_cast(reg_{guid}_2[i]) = NEG_INFINITY; }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; reinterpret_cast(reg_{guid}_2[row_indx]) = fmaxf(reinterpret_cast(reg_{guid}_2[row_indx]), reinterpret_cast({input_reg_name}[m][n][i])); }} }} }} // Apply the functor for each row inside each group of 4 threads. #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ r32 tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{guid}_2[m], 1); reinterpret_cast(reg_{guid}_2[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(tmp_0)); tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{guid}_2[m], 2); reinterpret_cast(reg_{guid}_2[m]) = fmaxf(reinterpret_cast(reg_{guid}_2[m]), reinterpret_cast(tmp_0)) * inv_ln2; }}{update_acc_max_code} float alpha_{guid}[ROWS_PER_THREAD_{guid}]; #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{guid}; ++m) {{ float p_max = reinterpret_cast(reg_{guid}_2[m]); float acc_max = reinterpret_cast(reg_{guid}_1[m]); // disable FMA for scale * P - max float tmp = (acc_max == NEG_INFINITY) ? p_max : __fsub_rn(p_max, acc_max); reinterpret_cast(alpha_{guid}[m]) = fp32_exp2(reinterpret_cast(tmp)); }} #pragma unroll for (int i = 0; i < ROWS_PER_THREAD_{guid}; ++i) {{ reinterpret_cast(reg_{guid}_4[i]) = 0.0f; }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; // disable FMA for scale * P - max float tmp_fmul = __fmul_rn(inv_ln2, reinterpret_cast({input_reg_name}[m][n][i])); float max = reinterpret_cast(reg_{guid}_1[row_indx]); float tmp = (max == NEG_INFINITY) ? tmp_fmul : __fsub_rn(tmp_fmul, max); {input_reg_name}[m][n][i] = fp32_exp2(reinterpret_cast(tmp)); if (TILE_O_{p_id} * WARPS_N_{p_id} < TILE_N_{p_id}) {{ constexpr int o_chunks = TILE_N_{p_id} / (TILE_O_{p_id} * WARPS_N_{p_id}); if (n % o_chunks == 0) {{ reinterpret_cast(reg_{p_id}_0[m][n/o_chunks][i]) *= alpha_{guid}[row_indx]; }} }} else {{ constexpr int o_chunks = TILE_O_{p_id} * WARPS_N_{p_id} / TILE_N_{p_id}; #pragma unroll for (int k = 0; k < o_chunks; ++k) {{ reinterpret_cast(reg_{p_id}_0[m][n*o_chunks + k][i]) *= alpha_{guid}[row_indx]; }} }} reinterpret_cast(reg_{guid}_4[row_indx]) = reinterpret_cast(reg_{guid}_4[row_indx]) + reinterpret_cast({input_reg_name}[m][n][i]); }} #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; i+={data_cast_step}) {{{data_cast_code} }} }} }}{update_acc_sum_code} //softmax_op {} includes //softmax_op {} typesBMM1_TILE_N //softmax_op {} decls * dropout_probability_{}k_scaledropout_descaleoutput_elemsfp8_reg_decl //softmax_op {} codeinput_0_indexinput_0_port - log2_scale_sfp8_scalerng_scaleis_fp8_pipelinepadding_mask_codescale_maxmiddle_cast_codefinal_cast_codefinal_local_sum_codefinal_dropout_codein_portbmm_q_k_scale_declscaled_inv_ln2_{}scale_max_codeexp_scale_declexp_scale_codedata_cast_stepupdate_acc_max_codeupdate_acc_sum_code if (BMM1_TILE_M == 1 || (i+1) % 4 == 0) {{ {data_cast_code}(®_{guid}_0[i/4], reinterpret_cast(&{input_reg_name}[BMM1_TILE_M == 1 ? i : (i-3)])); (i+1) % 2 == 0)/2], reinterpret? i : (i-1)])); // FADD total_sum[i] = alpha[i] * total_sum[i] + reinterpret_cast({input_reg_name}[i]) local_sum.x = 0.0f; local_sum.y = 0.0f; flattened_s_fp16[i + 0] = flattened_s[i + 0]; flattened_s_fp16[i + 1] = flatten {data_cast_code}(&flattened_s_fp16[i/2], &flatt flattened_s_fp16[i - kConvertPipeCount + 0] = flattened_s[i - kConvertPipeCount + 0]; i - kConvertPipeCount + 1] = flattened_s[i - kConvertPipeCount + {data_cast_code}(&flattened_s_fp16[(i - kConvertPipeCount)/2], &flattened_s[i - kConvertPip //mha_mask_op {} decls //mha_mask_op {} typesis_bottom_right_alignmentuse_greater_equalq_varkv_var || [m][n][i] //mha_mask_op {} codeif (input_inf_codereg_codelast_iter_check_codetid_offsetmni_index static constexpr int WARP_TILE_M_{guid} = 16; static constexpr int WARP_TILE_N_{guid} = 16; static constexpr int TILE_M_{guid} = {tile_m}; static constexpr int TILE_N_{guid} = {tile_n}; static constexpr int WARPS_M_{guid} = {warps_m}; static constexpr int WARPS_N_{guid} = {warps_n}; static constexpr int WARP_TILES_M_{guid} = TILE_M_{guid} / WARP_TILE_M_{guid}; static constexpr int WARP_TILES_N_{guid} = TILE_N_{guid} / WARP_TILE_N_{guid}; static constexpr int WARP_REGS_{guid} = 8; static constexpr int REGS_M_{guid} = WARP_TILES_M_{guid} / WARPS_M_{guid}; static constexpr int REGS_N_{guid} = WARP_TILES_N_{guid} / WARPS_N_{guid}; inline __device__ bool compute_diagonal_band_mask_{guid}(const int row, const int col, const int actual_seqlen_kv, const int actual_seqlen_q, const int shift_right_bound, const int left_bound) {{ constexpr bool is_bottom_right_alignment = {is_bottom_right_alignment}; constexpr bool is_shift_right_bound = {is_shift_right_bound}; constexpr bool is_right_bound = {is_right_bound}; constexpr bool is_left_bound = {is_left_bound}; constexpr bool need_oob_check = {need_oob_check}; const int diag = is_bottom_right_alignment ? {q_var} + (actual_seqlen_kv - actual_seqlen_q) : {q_var}; const int shifted_right_bound = is_shift_right_bound ? diag + shift_right_bound : diag; const bool right_bound_mask = is_right_bound ? {kv_var} <{use_greater_equal} shifted_right_bound : true; const bool left_bound_mask = is_left_bound ? {kv_var} + left_bound >{use_greater_equal} diag : true; const bool oob_check = need_oob_check ? ({q_var} < actual_seqlen_q && {kv_var} < actual_seqlen_kv) : true; return right_bound_mask && left_bound_mask && oob_check; }}kv_loop >= kv_loop_right_bound - {}kv_loop <= kv_loop_left_bound + 2 || kv_loop >= kv_loop_right_bound - 1 bool do_mask_row = ((q_row_coord < actual_seqlen_q_{p_id}) && (actual_seqlen_q_{p_id} <= q_row_coord + TILE_M_{p_id} * 2)); bool do_mask_col = ((p_col_coord < actual_seqlen_kv_{p_id}) && (actual_seqlen_kv_{p_id} <= p_col_coord + TILE_N_{p_id})); if (do_mask_row || do_mask_col) bool do_mask_col = p_col_{p_id} + TILE_N_{p_id} >= actual_seqlen_kv_{p_id}; if (do_mask_col) bool mask = compute_diagonal_band_mask_{guid}(row, col, actual_seqlen_kv_{p_id}, {seqlen_q_code}, shift_right_bound, left_bound); uint32_t mask = col < actual_seqlen_kv_{p_id}; uint32_t mask = col < actual_seqlen_kv_{p_id} && row < actual_seqlen_q_{p_id}; reinterpret_cast(reg_{input_0_index}_{input_0_port}{reg_index}[i]) = {input_inf_code}; if (!mask) {{{reg_code} }}p_row_{p_id} + (wid % WARPS_M_{guid}) * WARP_TILE_M_{guid} + (tiw / 4) {last_iter_check_code} {{ #pragma unroll for (int i = 0; i < {num_regs}; i++) {{ int row = p_row_{p_id}; int col = p_col_{p_id} + {tid_offset};{mask_code} }} }} {last_iter_check_code} {{ #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row = int col = {causal_mask_col} + n * WARP_TILE_N_{guid} + i % 2 + (i / 4) * 8;{mask_code} }} }} }} }} bool mask = compute_diagonal_band_mask_{guid}(row, col, actual_seqlen_kv_{p_id}, actual_seqlen_q_{p_id}, shift_right_bound, left_bound); uint32_t mask = col < actual_seqlen_q_{p_id} && row < actual_seqlen_kv_{p_id}; reinterpret_cast(reg_{input_0_index}_{input_0_port}{mni_index}) = {input_inf_code}; if (!mask) {{{reg_code} }} {{ #pragma unroll for (int i = 0; i < NUM_REGS_S_FP32; i++) {{ int row = p_row_{p_id}; int col = p_col_{p_id} + i;{mask_code} }} }} #pragma unroll for (int m = 0; m < REGS_M_{guid}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{guid}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{guid}; ++i) {{ int row = {causal_mask_row} + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{guid} + ((i / 2) % 2) * 8; int col = {causal_mask_col} + n * WARP_TILE_N_{guid} + i % 2 + (i / 4) * 8;{mask_code} }} }} }}kv_loop <= kv_loop_left_bound + || kv_loop >= kv_loop_right_bou {causal_mask_row} + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{guid} + ((i / 2) int col = {causal_mask_col} + n * WARP_TILE_N_{guid} + i % 2 + (i / 4) * 8;{mask_code} }} }} }} float* ptr_{guid} = {mask_output_param} + (batch_coord_{p_id} * attnDesc.q_h + head_coord_{p_id}) * attnDesc.s_q * attnDesc.s_kv; char* local_dropout_mask_ptr = reinterpret_cast(dropout_mask) + (batch_coord_{p_id} * {tensor_desc}.strides[0] + head_coord_{p_id} * {tensor_desc}.strides[1] + p_row_{p_id} * {tensor_desc}.strides[2] + p_col_{p_id} ) / 8; // 8 because this is in char whereas the original data is in bool if (p_row_{p_id} < attnDesc.s_q && p_col_{p_id} < attnDesc.s_kv) {{ #pragma unroll for (int mask_load_step = 0; mask_load_step < TILE_N_{p_id} / 128; mask_load_step++) {{ ldg_128(®_{guid}_0[mask_load_step * 4], local_dropout_mask_ptr + (mask_load_step * 128) / 8); // same reason as above for 8 }} }} else {{ reg_{guid}_0[0] = 0; reg_{guid}_0[1] = 0; reg_{guid}_0[2] = 0; reg_{guid}_0[3] = 0; }} const uint64_t leading_offset_{guid} = (attnDesc.s_q + 15) / 16; Philox ph(static_cast({seed_input}), 0, static_cast({offset_input}) + (batch_coord_{p_id} * attnDesc.q_h + head_coord_{p_id}) * 32 + tid % 32); uint32_t shared_ptr_{guid}_0 = smem_d_{p_id} + ({wid}) * WARP_TILE_M_{p_id} * TILE_N_{p_id} * 2 + tiw * 4; uint32_t shared_ptr_{guid}_1 = smem_d_{p_id} + ({wid}) * WARP_TILE_M_{p_id} * TILE_N_{p_id} * 2 + tiw * 16;{mask_output_str} char* local_dropout_mask_ptr = reinterpret_cast(dropout_mask) + (batch_coord_{p_id} * {tensor_desc}.strides[0] + head_coord_{p_id} * {tensor_desc}.strides[1] + p_row_{p_id} * {tensor_desc}.strides[2] + p_col_{p_id} ) / 8; // 8 because this is in char whereas the original data is in bool if (p_row_{p_id} < attnDesc.s_kv && p_col_{p_id} < attnDesc.s_q) {{ #pragma unroll for (int mask_load_step = 0; mask_load_step < NUM_REGS_S_FP32 / 64; mask_load_step++) {{ ldg_64(®_{guid}_0[mask_load_step * 2], local_dropout_mask_ptr + (mask_load_step * 64) / 8); // same reason as above for 8 }} }} else {{ reg_{guid}_0[0] = 0; reg_{guid}_0[1] = 0; reg_{guid}_0[2] = 0; reg_{guid}_0[3] = 0; }} const uint64_t leading_offset_{guid} = (attnDesc.s_q + 15) / 16; Philox ph(static_cast({seed_input}), 0, static_cast({offset_input}) + (batch_coord_{p_id} * attnDesc.q_h + head_coord_{p_id}) * 32 + tid % 32);{mask_output_str} if (i >= kDropoutPipeCount) {{ bool mask = (reg_{guid}_0[(i - kDropoutPipeCount) / 32] & (1 << ((i - kDropoutPipeCount) % 32))) > 0; reinterpret_cast(fp32_reg_s[(i - kDropoutPipeCount)]) = mask ? 0.0f : reinterpret_cast(fp32_reg_s[(i - kDropoutPipeCount)]); mask = (reg_{guid}_0[(i + 1 - kDropoutPipeCount) / 32] & (1 << ((i + 1 - kDropoutPipeCount) % 32))) > 0; reinterpret_cast(fp32_reg_s[(i + 1 - kDropoutPipeCount)]) = mask ? 0.0f : reinterpret_cast(fp32_reg_s[(i + 1 - kDropoutPipeCount)]); }} named_barrier_wait(MATH_WORKGROUP_{}, 256);wid + q_step_{p_id} * (TILE_M_{p_id} / 16) r32 reg_{guid}_{port}[REGS_M_{p_id}][REGS_N_{p_id}][WARP_REGS_{p_id}]; const uint16_t p_dropout_16bit_{guid} = {p_dropout}; #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ uint16_t fp16_mask[8]; uint32_t fp16_packed_mask[4]; uint4 tmp_32bit = ph((kv_loop * (TILE_N_{p_id} / 16) + n) * leading_offset_{guid} + m * 4 + {q_step_code}); uint16_t *tmp_16bit = (uint16_t *) &tmp_32bit; #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=4) {{ fp16_mask[i + 0] = tmp_16bit[i + 0] <= p_dropout_16bit_{guid} ? 0x3C00 : 0; fp16_mask[i + 1] = tmp_16bit[i + 1] <= p_dropout_16bit_{guid} ? 0x3C00 : 0; fp16_mask[i + 2] = tmp_16bit[i + 2] <= p_dropout_16bit_{guid} ? 0x3C00 : 0; fp16_mask[i + 3] = tmp_16bit[i + 3] <= p_dropout_16bit_{guid} ? 0x3C00 : 0; pack_dropout_mask(&fp16_packed_mask[(i / 4) * 2 + 0], &fp16_mask[i + 0]); pack_dropout_mask(&fp16_packed_mask[(i / 4) * 2 + 1], &fp16_mask[i + 2]); }} uint32_t loc_smem = shared_ptr_{guid}_0 + m * WARP_TILE_M_{p_id} * WARPS_M_{p_id} * TILE_N_{p_id} * 2 + n * 16 * 16 * 2; sts_32(loc_smem + 16*8*0, &fp16_packed_mask[0]); sts_32(loc_smem + 16*8*1, &fp16_packed_mask[1]); sts_32(loc_smem + 16*8*2, &fp16_packed_mask[2]); sts_32(loc_smem + 16*8*3, &fp16_packed_mask[3]); }} }}{sync_code} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ uint32_t loc_smem = shared_ptr_{guid}_1 + m * WARP_TILE_M_{p_id} * WARPS_M_{p_id} * TILE_N_{p_id} * 2 + n * 16 * 16 * 2; r32 tmp[4]; ldsmt_x4(tmp, loc_smem); fp16x2_to_fp32x2(®_{guid}_{port}[m][n][0], &tmp[0]); fp16x2_to_fp32x2(®_{guid}_{port}[m][n][2], &tmp[2]); fp16x2_to_fp32x2(®_{guid}_{port}[m][n][4], &tmp[1]); fp16x2_to_fp32x2(®_{guid}_{port}[m][n][6], &tmp[3]); }} }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ int row = {row} + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} + n * WARP_TILE_N_{p_id} + i % 2 + (i / 4) * 8; if (row < attnDesc.s_q && col < attnDesc.s_kv) {{ ptr_{guid}[row * attnDesc.s_kv + col] = reinterpret_cast(reg_{guid}_{port}[m][n][i]); }} }} }} }} uint32_t tmp[4/BYTES_PER_ELEMENT]; #pragma unroll for (int elem = 0; elem < 4/BYTES_PER_ELEMENT; elem++) {{ bool mask = (reg_{guid}_0[(i - kConvertPipeCount + elem) / 32] & (1 << ((i - kConvertPipeCount + elem) % 32))) > 0; reinterpret_cast(tmp[elem]) = mask ? 0.0f : reinterpret_cast(fp32_reg_s[(i - kConvertPipeCount + elem)]) * keep_dropout_probability_reciprocal_{guid}; }}wid + kv_step_{p_id} * (TILE_M_{p_id} / 16) r32 reg_{guid}_{port}[REGS_M_{p_id}][REGS_N_{p_id}][WARP_REGS_{p_id}]; // setup the registers with value one const uint16_t p_dropout_16bit_{guid} = {p_dropout}; #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ uint4 tmp_32bit = ph(qo_loop * (TILE_N_{p_id} / 16) + n + (m * 4 + {kv_step_code}) * leading_offset_{guid}); uint16_t *tmp_16bit = (uint16_t *) &tmp_32bit; #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i++) {{ reg_{guid}_{port}[m][n][i] = tmp_16bit[i] <= p_dropout_16bit_{guid} ? 0x3F800000 : 0; }} }} }} #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ int row = {row} + m * WARPS_PER_GROUP_{r_id} * WARP_TILE_M_{p_id} + ((i / 2) % 2) * 8; int col = {col} + n * WARP_TILE_N_{p_id} + i % 2 + (i / 4) * 8; if (row < attnDesc.s_kv && col < attnDesc.s_q) {{ ptr_{guid}[col * attnDesc.s_kv + row] = reinterpret_cast(reg_{guid}_{port}[m][n][i]); }} }} }} }} //rng_op {} includeslocal_gid * 4 + local_wid //rng_op {} decls99mask_output_paramseed_inputoffset_inputmask_output_str //rng_op {} codelocal_wid + q_row_coord / 16q_step_codelocal_wid + kv_row_coord / 16kv_step_code@ // receive_op {guid} decls }} namespace fort { // receive_op {guid} typesweight_typectas_per_rowbytes_per_ldg enum {{ ROWS_PER_CTA = Ktraits::ROWS_PER_CTA }}; enum {{ WARPS_N = Ktraits::WARPS_N }}; enum {{ WARPS_M = Ktraits::WARPS_M }}; enum {{ THREADS_PER_ROW = Ktraits::THREADS_PER_ROW }}; enum {{ VEC_COLS_PER_LDG = Ktraits::VEC_COLS_PER_LDG }}; enum {{ VEC_COLS = Ktraits::VEC_COLS }}; enum {{ BYTES_PER_ROW = Ktraits::BYTES_PER_ROW }}; enum {{ LDGS = Ktraits::LDGS }}; enum {{ NUM_ELTS = Ktraits::NUM_ELTS }}; enum {{ CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }}; enum {{ VEC_COLS_PER_LDG_PER_CTA = Ktraits::VEC_COLS_PER_LDG / Ktraits::CTAS_PER_ROW }}; enum {{ COLS_PER_LDG = Ktraits::VEC_COLS_PER_LDG * Ktraits::NUM_ELTS }}; enum {{ COLS_PER_LDG_PER_CTA = COLS_PER_LDG / Ktraits::CTAS_PER_ROW }}; enum {{ USE_GAMMA_SMEM = Ktraits::USE_GAMMA_SMEM }}; enum {{ BATCH_SIZE = Ktraits::BATCH_SIZE }}; enum {{ isAdaLN = Ktraits::isAdaLN }}; enum {{ isBatchFirst = Ktraits::isBatchFirst }}; extern __shared__ char smem_[]; const index_t tidx = threadIdx.x; const index_t bidn = blockIdx.x % CTAS_PER_ROW; const index_t bidm = blockIdx.x / CTAS_PER_ROW; const index_t lane = tidx % THREADS_PER_WARP; const index_t warp = tidx / THREADS_PER_WARP; const index_t warp_m = warp / WARPS_N; const index_t warp_n = warp % WARPS_N; const index_t r = bidm * ROWS_PER_CTA + warp_m; const index_t c = bidn * THREADS_PER_ROW + warp_n * THREADS_PER_WARP + lane; // receive_op {guid} logic // receive_op {guid} includes namespace fort { typedef half half_t; typedef nv_bfloat16 bfloat16_t; typedef nv_fp8_e4m3 float_e4m3_t; typedef nv_fp8_e5m2 float_e5m2_t; typedef uint8_t float_e8m0_t; #if CUDART_VERSION >= 12080 typedef nv_fp4x2_e2m1 float_e2m1_t; #endif } // receive_op types using ITYPE = {input_type}; using OTYPE = {output_type}; using WTYPE = {weight_type}; using CTYPE = float; constexpr int CTAS_PER_ROW = {ctas_per_row}; constexpr int BYTES_PER_LDG = {bytes_per_ldg}; constexpr int WARPS_M = {warps_m}; constexpr int WARPS_N = {warps_n}; constexpr int DESIRED_OCCUPANCY = DESIRED_OCCUPANCY_VALUE; using Ktraits = Kernel_traits; extern "C" __global__ __launch_bounds__(Ktraits::THREADS_PER_CTA, DESIRED_OCCUPANCY) void {interface_name}({params_string} PersistentLnFwdParams params, reduced_divisor divisor /* divisor is div_batch for batch-first cases, otherwise it's div_seqLen */) {{ using output_t = typename Ktraits::output_t; using index_t = typename Ktraits::index_t; using compute_t = typename Ktraits::compute_t; using weight_t = typename Ktraits::weight_t; using input_t = typename Ktraits::input_t; // global_load_op {guid} types // global_load_op {guid} includes // global_load_op {guid} decls = __ldg({input_tensor_param}) {vec_type} loaded_data_{guid}_{port}{rhs}; {ind}// global_load_op {guid} logic// fusion full row broadcast load// fusion partial row broadcast load// fusion column broadcast loadhelpful_debugging_comment_for_reviewers {ind}loaded_data_{guid}_{port}[it].load_from({input_tensor_param}, column_idx_{parent_loop_guid}); {helpful_debugging_comment_for_reviewers} {ind}loaded_data_{guid}_{port}[b][it].load_from({input_tensor_param}, column_idx_{parent_loop_guid}); {helpful_debugging_comment_for_reviewers} {ind}loaded_data_{guid}_{port}[it].load_from({input_tensor_param}, column_idx_{parent_loop_guid}_row_broadcast{row_dims}); {helpful_debugging_comment_for_reviewers} {ind}loaded_data_{guid}_{port} = compute_t({input_tensor_param}[row]); {helpful_debugging_comment_for_reviewers}Vec<{type}, NUM_ELTS>compute_t[BATCH_SIZE][LDGS]input_tensor_paramvec_type// scale// bias// x// fusion general loadparent_loop_guidP0PPPP0PPPPииPPPPPPPPPPPPPPPPPPPPPPPPPP0ллλ|ллѻл`ʻллллȻ»лллллллллллллллллллллллллллллллл`ʻ // column_reduce_op_norm {guid} types // column_reduce_op_norm {guid} decls constexpr compute_t rn = 1.f / compute_t(Ktraits::COLS); {ind}// column_reduce_op_norm {guid} logic{ind}compute_t xf[LDGS * NUM_ELTS];{ind}Vec z_math[LDGS];{ind}index_t column_idx_{guid} = c;{ind}index_t column_idx_{guid} = row * Ktraits::VEC_COLS + c;{ind} column_idx_{guid} += VEC_COLS_PER_LDG; {loop_structs} {start_idx}{pre_loop_code}column_idx_{guid}_row_broadcast{row_dims}(row % {mod_val}) * Ktraits::VEC_COLS + c(row / {div_val}) * Ktraits::VEC_COLS + c((row / {div_val}) * {mul_mod_val} + row % {mul_mod_val}) * Ktraits::VEC_COLS + c((row / {div_val}) % {mod_val}) * Ktraits::VEC_COLS + c {ind} {lhs} += VEC_COLS_PER_LDG; {ind}#pragma unroll {ind}for (int b = 0; b < BATCH_SIZE; b++) {{ {ind}{inner_ind}// CL-14115: The unroll factor 128 for LDGS was chosen based on the compilation/perf results for FORT LN_fwd engines {ind}{inner_ind}#pragma unroll 128 {ind}{inner_ind}for (int it = 0; it < LDGS; it++) {{{in_loop_code} {increment_idx} {ind}{inner_ind}}}loop_structsstart_idxpre_loop_codediv_valmul_mod_val {ind}index_t {lhs} = {rhs};in_loop_codeinner_indincrement_idx // row_set_loop_op {guid} types // row_set_loop_op {guid} includes // row_set_loop_op {guid} decls compute_t variable_{guid}_{fp8_scale_port} = 1.f; variable_{guid}_{fp8_scale_port} = __ldg({input_tensor_param}); {ind}// Row and batch initialization {ind}int batch_idx = 0, remainder = 0; {ind}int remaining_rows = params.rows - bidm * ROWS_PER_CTA; {ind}int row_increment_step = params.ctas_per_col * ROWS_PER_CTA; {ind}int batch_increment_step = 0, step_remainder = 0; {ind}if constexpr (isAdaLN) {{ {ind} if constexpr (isBatchFirst) {{ {ind} divisor.divmod(r, batch_idx, remainder); {ind} divisor.divmod(row_increment_step, batch_increment_step, step_remainder); {ind} }} else {{ {ind} batch_idx = divisor.mod(r); {ind} batch_increment_step = divisor.mod(row_increment_step); {ind} }} {ind}}} {ind}// row_set_loop_op {guid} code(int row = r; row < params.rows; row += row_increment_step, batch_idx += batch_increment_step, remainder += step_remainder) {ind}if constexpr (isAdaLN) {{ {ind} if constexpr (isBatchFirst) {{ {ind} if (remainder >= params.seqLen) {{ {ind} remainder -= params.seqLen; {ind} batch_idx++; {ind} }} {ind} }} else {{ {ind} if (batch_idx >= BATCH_SIZE) {{ {ind} batch_idx -= BATCH_SIZE; {ind} }} {ind} }} {ind}}} {ind}compute_t variable_{guid}_{x_port} = static_cast(loaded_data_{global_load_x_op_guid}_{global_load_x_op_port_}[it].data.elt[jt]); {ind}compute_t variable_{guid}_{y_port} = 0.f; // output; {ind}xf[it * NUM_ELTS + jt] = static_cast(variable_{guid}_{port});( int jt = 0; jt < NUM_ELTS; jt++ ) {ind}compute_t variable_{guid}_{x_port} = xf[it * NUM_ELTS + jt]; // y_ij; {ind}compute_t variable_{guid}_{y_port} = 0.f; // output; {ind}z_math[it].data.elt[jt] = variable_{guid}_{port};{pragma} {ind}for {iteration} {{{temp_variables}{in_loop_code} {ind}}}fp8_scale_portx_portglobal_load_x_op_guidglobal_load_x_op_port_ {ind}#pragma unrollpragmatemp_variables // compute_stats_op_norm {guid} types {ind}// compute_stats_op_norm {guid} code {ind}if( bidn == 0 && warp_n == 0 && lane == 0 ) {{ {ind} mu_ptr[row] = variable_{guid}_{mean_port}; {ind}}} {ind}int rows_per_cta = remaining_rows >= ROWS_PER_CTA ? ROWS_PER_CTA : remaining_rows; {ind}stats_t s = stats.compute<{is_rms_norm}, LDGS, NUM_ELTS>(xf, rn, rows_per_cta); {ind}remaining_rows -= params.ctas_per_col * ROWS_PER_CTA; // for next iteration {ind}compute_t variable_{guid}_{mean_port} = Get<0>::of(s); // mu {ind}compute_t m2 = Get<1>::of(s); {ind}{mean_tensor_code} {ind}compute_t variable_{guid}_{inv_var_port} = rsqrtf(rn * m2 + static_cast({input_epsilon_tensor_param})); // rs {ind}if( bidn == 0 && warp_n == 0 && lane == 0 ) {{ {ind} rs_ptr[row] = variable_{guid}_{inv_var_port}; {ind}}} // compute_stats_op_norm {guid} decls using reduce_t = typename TypeToVec2::Type; using RMSReducer = typename Ktraits::RMSReducer; using Reducer = typename Ktraits::Reducer; using Stats = typename Ktraits::Stats; using stats_t = typename Stats::stats_t; params.barrier = {barrier_param}; params.workspace = {workspace_param}; Stats stats(params, bidm, bidn, warp_m, warp_n, threadIdx.x, lane, smem_, nullptr); compute_t *rs_ptr = static_cast({input_inv_var_tensor_param}); compute_t *mu_ptr = static_cast({input_mean_tensor_param});mean_portis_rms_normmean_tensor_codeinput_epsilon_tensor_paraminv_var_portinput_inv_var_tensor_parambarrier_paraminput_mean_tensor_paramcompute_stats_norm21compute_stats_op_norm // global_store_op {guid} includes // global_store_op {guid} types // global_store_op {guid} decls {ind}// global_store_op {guid} logic {ind}Vec z; {ind}z_math[it].to(z); {ind}z.store_to({output_tensor_param}, column_idx_{parent_loop_guid}); {ind}amax = reduce_max(amax, warp); {ind}if (threadIdx.x == 0) {{ {ind} atomicMaxFloat(reinterpret_cast({output_tensor_param}), amax); {ind}}} {ind}if (blockIdx.x == 0 && threadIdx.x == 0) {{ {ind} *reinterpret_cast({output_tensor_param}) = __fdividef(1.f, variable_{y_scale_guid}_{y_scale_port}); {ind}}}y_scale_guidy_scale_port // full_reduce_op_norm {guid} types // full_reduce_op_norm {guid} decls {ind}// full_reduce_op_norm {guid} logic {ind}__builtin_assume(amax >= 0); {ind}amax = fmaxf(amax, fabsf(variable_{guid}_{y_port})); compute_t amax = 0;static_cast(loaded_data_{guid}_{port}[batch_idx][it].data.elt[jt]) {ind}using add_one_t = ADD_ONE_TYPE_VALUE; // from macro in compiler flagsstatic_cast(static_cast(loaded_data_{guid}_{port}[batch_idx][it].data.elt[jt]) + static_cast(1.f))static_cast(loaded_data_{guid}_{port}[it].data.elt[jt])static_cast(loaded_data_{guid}_{port})pointwise operation not recognized {ind}// pointwise calc {guid} logic: {helpful_debugging_comment_for_reviewers}{temp_variables} {ind}{output} = {operation_string}; row broadcast scalar broadcast column broadcastcompute_t norm meannorm varnorm scalenorm biasfusion fp8 outputfusion y_scale invfusion {operation_name}{type}variable_{guid}_{port}RlSSVTr]XbV_[0dnUf^YcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffW`,\HeT]YYubV`[dU^qZcAX]a\eQT̋Dl$䉼ĉ\Ĉ|,䇼 elem) ? lower_edge : elem; } // Relu helper function: clip the upper part static float __forceinline__ __device__ clipUpperEdge(float elem, float upper_edge){ return (upper_edge < elem) ? upper_edge : elem; } // Forward ReLU: clip only lower part static float __forceinline__ __device__ reluFwd_LoClip(float x, float lower_clip){ return clipLowerEdge(x, lower_clip); } // Forward ReLU: clip lower part and upper part static float __forceinline__ __device__ reluFwd_LoClipHiClip(float x, float lower_clip, float upper_clip){ float elem = clipUpperEdge(x, upper_clip); return clipLowerEdge(elem, lower_clip); } // Forward ReLU: clip only lower part, but add slope to lower clip static float __forceinline__ __device__ reluFwd_LoClip_Sloped(float x, float lower_clip, float slope){ float lower_edge = lower_clip + slope * (x - lower_clip); return clipLowerEdge(x, lower_edge); } // Forward ReLU: clip lower part and upper part, but add slope to lower clip static float __forceinline__ __device__ reluFwd_LoClipHiClip_Sloped(float x, float lower_clip, float upper_clip, float lower_clip_slope){ float lower_edge = lower_clip + lower_clip_slope * (x - lower_clip); return reluFwd_LoClipHiClip(x, lower_edge, upper_clip); } // Forward Sigmoid activations static float __forceinline__ __device__ sigmoidFwd(float x){ return __frcp_rn(1.0f + __expf(-x)); } // Forward SoftPlus activations static float __forceinline__ __device__ softPlusFwd(float x, float beta){ if(x > 0){ return x + __fdividef(__logf(1.0f + __expf(-beta * x)), beta); } else{ return __fdividef(__logf(1.0f + __expf(beta * x)), beta); } } // Forward Swish activations static float __forceinline__ __device__ swishFwd(float x, float beta){ return __fdividef(x, (1.0f + __expf(-(beta * x)))); } // tanhf_fast utility static __forceinline__ __device__ float tanhf_fast(const float &a) { #if (__CUDACC_VER_MAJOR__ >= 11) && (__CUDA_ARCH__ >= 750) float y =0.0f; asm volatile ("tanh.approx.f32 %0, %1; " : "=f"(y) : "f"(a)); return y; #else return ::tanhf(a); #endif } // Forward Tanh activations static float __forceinline__ __device__ tanhFwd(float x){ return tanhf_fast(x); } // Forward GELU approx Tanh activations static float __forceinline__ __device__ geluApproxTanhFwd(float x){ float c = 0.044715f; float sqrt_two_over_pi = 0.797884560802865f; float c_x3 = c * x * x * x; float res = 0.5f * x * (1.0f + tanhf_fast(sqrt_two_over_pi * (x + c_x3))); return res; }X `0<䐼4L \ l̔,lؠ(xȝhXforward_softplusforward_gelu_appbackward_sigmoidbackward_softplubackward_gelu_ap // block_scale_op_norm {guid} includes // block_scale_op_norm {guid} types // block_scale_op_norm {guid} decls {ind}float *mxfp8_smem = reinterpret_cast(smem_ + Stats::SMEM_BYTES); {ind}// If we are mxfp8 output type, we need shared memory for amax calculations across warps {ind}// 2d1x1x (not yet implemented) requires 1 (1 for a 32x32 block) {ind}// 1d1x1x requires 0 (since it reduces over a row which can be done with warp reduce) {ind}// 1d2x2x requires 32x(32+1)xNUM_ELTS, more details as follows: {ind}constexpr int nvfp4_block_size = 16; {ind}constexpr int mxfp8_block_size = 32; {ind}constexpr int block_scale_size = {isFP4Out} ? nvfp4_block_size : mxfp8_block_size; {ind}BlockScaleRowHelper, Vec, block_scale_size> rowwise_scale_helper{{}}; {ind}BlockScaleColHelper, Vec, mxfp8_block_size> colwise_scale_helper{{mxfp8_smem}}; {ind}// block_scale_op_norm {guid} code {ind}static constexpr int SF_COUNT = NUM_ELTS * THREADS_PER_WARP / block_scale_size; {ind}index_t sf_row_idx = (row * VEC_COLS + it * VEC_COLS_PER_LDG + (bidn * WARPS_N + warp_n) * THREADS_PER_WARP) / mxfp8_block_size; {ind}rowwise_scale_helper.blockQuantizeStore(z_math[it], {rowwise_scale_tensor_param}, sf_row_idx, {rowwise_output_tensor_param}, column_idx_{column_loop_op_guid}); {ind}colwise_scale_helper.initTile(z_math[it]); {ind}index_t sf_col_row_idx = 0; {ind}index_t sf_col_col_idx = 0; {ind}index_t sf_col_row_width = 0; {ind}index_t z_col_idx = 0; {ind}index_t z_row_offset = row - row % mxfp8_block_size; {ind}sf_col_row_idx = row / mxfp8_block_size; {ind}sf_col_col_idx = it * VEC_COLS_PER_LDG + bidn * VEC_COLS_PER_LDG_PER_CTA + warp; {ind}sf_col_row_width = VEC_COLS; {ind}z_col_idx = (z_row_offset + lane) * VEC_COLS + sf_col_col_idx; {ind}constexpr index_t group_size = mxfp8_block_size / NUM_ELTS; {ind}sf_col_row_idx = it * COLS_PER_LDG + bidn * COLS_PER_LDG_PER_CTA + warp * NUM_ELTS; {ind}sf_col_col_idx = row / mxfp8_block_size; {ind}sf_col_row_width = params.rows / mxfp8_block_size; {ind}z_col_idx = (sf_col_row_idx + lane / group_size) * params.rows / NUM_ELTS + z_row_offset / NUM_ELTS + (lane % group_size); {ind}colwise_scale_helper.blockQuantizeStore<{colwise_block_scale_transpose}>({colwise_scale_tensor_param}, sf_col_row_idx, sf_col_col_idx, sf_col_row_width, {colwise_output_tensor_param}, z_col_idx, THREADS_PER_ROW * WARPS_M);isFP4Outcolumn_loop_op_guidrowwise_output_tensor_paramrowwise_scale_tensor_paramcolwise_output_tensor_paramcolwise_scale_tensor_paramcolwise_block_scale_transposeblock_scale_normblock_scale_1d2x2x19block_scale_op_normTiming model assertion failure.St9exceptionSt13runtime_error' Unexpected data type ߼8޼{ 9$ؼA  @ ????>_ttt__ttn__tnt__tnn__ntt__ntn__nnt__nnn__valpha_vbeta_cgasize$@@?@p@T@P~@I@1@p@Q@X@j@`d@@?@p@T@P~@I@1@p@Q@X@j@`d@7Ѝ@? @F@T@P~@I@1@p@Q@X@j@`d@\@? @F@ T@P~@I@1@p@Q@X@j@`d@\@? @F@ T@P~@I@1@p@Q@X@j@`d@@?@@T@P~@I@1@p@Q@X@j@`d@@?@@T@P~@I@1@p@Q@X@j@`d@@?@@T@P~@I@1@p@Q@X@j@`d@@?@@T@P~@I@1@p@Q@X@j@`d@pW@@e@?ףp= @@T@P~@I@1@p@Q@X@j@`d@pW@@e@?ףp= @@T@P~@I@1@p@Q@X@j@`d@pW@@e@?ףp= @@T@P~@I@1@p@Q@X@j@`d@pW@@e@?ףp= @@T@P~@I@1@p@Q@X@j@`d@@?zG?@ T@`{@I@1@0@Q@T@S@U@x@?Q?@ T@`{@I@1@0@Q@T@S@U@x@?Q?@ T@`{@I@1@0@Q@T@S@U@H@ffffff? @V@ H@ffffff? @V@ y@ffffff? @@@? @T@@? @@@? @@@? @@@@?zG?@ @?zG?@ @?zG?@ @@? @@@@? @ș@H@? @@0|@??ș@`P ZHd `@??P@@@y&1@.A0@H@?q= ףp?Q?@@`@@?333333?q= ףp??h99p9p9p9p99p9p9p999  @ ff?:0yE>Unexpected layer type224455<<==>>FFHHKKPRVVWVXVYYZZddeeffggxhPVWXdefgvector::_M_fill_insertTMA instruction only supports after Hopper.TMA instruction only supports in Hopper.Unexpected SuperMMA instructionUnexpected ClusterMMA instructionunexpected meta data source formatUnexpected ClusterMMA tiling patternUnexpected GMMA instructioninvalid latency unit.XXXTtttttttttttttttttttttttttttTTh0luS  D l  ```t8   H  @ ??@`??@ @@?@Unexpected memory load type.Unexpected memory store type.ư zo ?p@0UUUU5@@@@@@@UUUUUU@UUUUUU@UUUUUU@UUUUUU@?qq@qq@qq|@qq@qq@'Z&Z(Z)d *d ,d +d )e *e ,e +e )f *f ,f +f )g *g ,g +g 10004|24,0,30,0,34,0,33,0,35,0,36,210004|24,0,30,0,34,0,33,3,35,1,36,210004|24,0,30,1,34,0,33,0,35,1,36,110004|24,0,30,1,34,0,33,0,35,1,36,210004|24,0,30,1,34,0,33,3,35,1,36,110004|24,0,30,1,34,0,33,4,35,1,36,210004|24,0,30,1,34,1,33,0,35,0,36,210004|24,0,30,1,34,1,33,0,35,0,36,310004|24,0,30,3,34,0,33,0,35,1,36,110004|24,0,30,3,34,0,33,0,35,1,36,210004|24,0,30,3,34,0,33,0,35,1,36,310004|24,0,30,3,34,0,33,1,35,1,36,310004|24,0,30,3,34,0,33,2,35,1,36,110004|24,0,30,3,34,0,33,4,35,1,36,110004|24,0,30,3,34,1,33,0,35,0,36,110004|24,0,30,3,34,1,33,0,35,0,36,210004|24,0,30,3,34,1,33,0,35,0,36,310006|14,0,24,0,34,0,33,0,35,0,36,1,42,110006|14,0,24,0,34,0,33,0,35,0,36,2,42,110006|14,0,24,0,34,0,33,0,35,1,36,0,42,110006|14,0,24,0,34,0,33,0,35,1,36,1,42,010006|14,0,24,0,34,0,33,0,35,1,36,1,42,110006|14,0,24,0,34,0,33,0,35,1,36,2,42,010006|14,0,24,0,34,0,33,0,35,1,36,2,42,110006|14,0,24,0,34,0,33,0,35,1,36,3,42,010006|14,0,24,0,34,0,33,0,35,1,36,3,42,110006|14,0,24,0,34,0,33,1,35,1,36,1,42,110006|14,0,24,0,34,0,33,1,35,1,36,2,42,110006|14,0,24,0,34,0,33,2,35,1,36,0,42,110006|14,0,24,0,34,0,33,2,35,1,36,1,42,110006|14,0,24,0,34,0,33,3,35,0,36,2,42,110006|14,0,24,0,34,0,33,3,35,1,36,0,42,110006|14,0,24,0,34,0,33,3,35,1,36,1,42,110006|14,0,24,0,34,0,33,3,35,1,36,2,42,110006|14,0,24,0,34,0,33,3,35,1,36,3,42,110006|14,0,24,0,34,1,33,0,35,0,36,0,42,110006|14,0,24,0,34,1,33,0,35,0,36,1,42,010006|14,0,24,0,34,1,33,0,35,0,36,2,42,010006|14,0,24,0,34,1,33,0,35,0,36,2,42,110006|14,0,24,0,34,1,33,0,35,0,36,3,42,010006|14,0,24,0,34,1,33,0,35,1,36,2,42,010006|14,0,24,0,34,1,33,0,35,1,36,2,42,110006|14,0,24,0,34,2,33,0,35,0,36,0,42,110006|14,0,24,0,34,2,33,0,35,0,36,1,42,010006|14,0,24,0,34,2,33,0,35,0,36,1,42,110006|14,0,24,0,34,2,33,0,35,0,36,2,42,010006|14,0,24,0,34,2,33,0,35,0,36,2,42,110006|14,0,24,0,34,2,33,0,35,0,36,3,42,110006|14,0,24,0,34,2,33,0,35,1,36,0,42,110006|14,0,24,0,34,3,33,0,35,0,36,1,42,010006|14,0,24,0,34,3,33,0,35,0,36,1,42,110006|14,0,24,0,34,3,33,0,35,0,36,2,42,010006|14,0,24,0,34,3,33,0,35,0,36,2,42,110006|14,0,24,0,34,4,33,0,35,0,36,0,42,110006|14,0,24,0,34,4,33,0,35,0,36,1,42,110006|14,0,24,0,34,4,33,0,35,0,36,2,42,010006|14,0,24,0,34,4,33,0,35,0,36,2,42,110006|14,0,24,0,34,4,33,0,35,0,36,3,42,110006|14,0,24,1,34,0,33,0,35,0,36,3,42,010006|14,0,24,1,34,0,33,0,35,1,36,2,42,010006|14,0,24,1,34,0,33,0,35,1,36,3,42,110006|14,0,24,1,34,1,33,0,35,1,36,1,42,010006|14,0,24,1,34,1,33,0,35,1,36,2,42,010006|14,0,24,1,34,2,33,0,35,1,36,3,42,010006|14,0,24,1,34,3,33,0,35,0,36,2,42,010004|24,0,30,0,34,0,33,0,35,1,36,110004|24,0,30,0,34,0,33,0,35,1,36,210004|24,0,30,0,34,0,33,0,35,1,36,310004|24,0,30,0,34,0,33,2,35,1,36,110004|24,0,30,0,34,0,33,2,35,1,36,210004|24,0,30,0,34,0,33,3,35,1,36,310004|24,0,30,0,34,1,33,0,35,0,36,110004|24,0,30,0,34,1,33,3,35,0,36,110004|24,0,30,0,34,1,33,3,35,0,36,210004|24,0,30,0,34,1,33,3,35,1,36,110004|24,0,30,0,34,1,33,3,35,1,36,210004|24,0,30,0,34,1,33,3,35,1,36,310004|24,0,30,1,34,0,33,0,35,1,36,310004|24,0,30,1,34,0,33,1,35,1,36,110004|24,0,30,1,34,0,33,2,35,1,36,110004|24,0,30,1,34,0,33,3,35,1,36,210004|24,0,30,1,34,0,33,3,35,1,36,310004|24,0,30,1,34,0,33,4,35,1,36,110004|24,0,30,1,34,0,33,4,35,1,36,310004|24,0,30,1,34,1,33,0,35,0,36,110004|24,0,30,1,34,1,33,2,35,0,36,310004|24,0,30,1,34,1,33,3,35,0,36,110004|24,0,30,1,34,1,33,3,35,0,36,210004|24,0,30,1,34,1,33,3,35,1,36,110004|24,0,30,1,34,1,33,3,35,1,36,210004|24,0,30,1,34,1,33,4,35,0,36,110004|24,0,30,3,34,0,33,4,35,1,36,210004|24,0,30,0,34,0,33,3,35,1,36,110004|24,0,30,1,34,0,33,0,35,0,36,110004|24,0,30,1,34,0,33,0,35,0,36,210006|14,0,24,0,34,0,33,0,35,0,36,0,42,110006|14,0,24,0,34,0,33,1,35,1,36,3,42,110006|14,0,24,0,34,0,33,2,35,1,36,2,42,110006|14,0,24,0,34,0,33,2,35,1,36,3,42,110006|14,0,24,0,34,0,33,3,35,1,36,3,42,010006|14,0,24,0,34,1,33,0,35,1,36,1,42,010006|14,0,24,0,34,2,33,0,35,0,36,0,42,010006|14,0,24,0,34,2,33,0,35,0,36,3,42,010006|14,0,24,0,34,3,33,0,35,0,36,0,42,010006|14,0,24,0,34,4,33,0,35,0,36,1,42,010006|14,0,24,1,34,1,33,0,35,1,36,1,42,1???  @ @l@p@@@@@凿І Hp  @ @@  @   @ UUUUUU?hSPSVSPS`S`S`S  @ @B  @   @   @ @@M?  @ ķ̷Էܷ`Ai@^@ y@E@r@P?Hz>  @ X@  @ @@@@@@@h@  @ P@X@ @@0@ @ؘ@@ @@@ @`@@ @$@h@@@@@Ћ@@@@X@p@@0@4@ȉ@@@@@@x@@@P@h@D@@@@@؈@@̕@@ȉ@@@@T@8@x@@8@P@ܔ@@@@@؈@d@@@(@@@@p@@@p@8@t@p@@8@H@@@ @@@@@@@@H@@@ @@@Б@X@p@@X@p@X@0@p@@@H@@@H@@@ @h@@ @,@@ @@h@@h@h@@@@@@x@@@@@@@@@@@@@@@@@@@X@ @@@X@@0@@@0@@@@0@@@@@0@ȉ@{Gz?q= ף00@333333E@@`@@I +@0@333333?q= ףp?(\u'@@Cl@sm50_sm52_sm53_sm60_sm61_sm62_sm70_volta_sm72_sm75_turing_ampere_sm86_sm87_sm88_sm89_sm90_sm100_sm101_sm120_sm121_PPPP         @ PM_INVALIDFMAXUALUMIOSMEM_READSMEM_WRITEGNIC_READGNIC_WRITEL2_READL2_WRITEDRAMSTITCHPM_SIZEUNKNOWN_PMINVALID_PHASEPROLOGMAINLOOPEPILOGREDUCTIONDataFormat::INVALIDDataFormat::INT4DataFormat::INT8DataFormat::INT32DataFormat::FP4DataFormat::FP6DataFormat::FP8DataFormat::FP16DataFormat::FP32DataFormat::FP64DataFormat::BF16DataFormat::TF32MmaInstructionClass::INVALIDMmaInstructionClass::SIMTUNKNOWN_MMA_INSTRUCTION_CLASSOpSource::INVALIDOpSource::RFOpSource::SMEMOpSource::TMEMUNKNOWN_OP_SOURCEKernelType::INVALIDKernelType::DUMMYKernelType::GEMMKernelType::CONV_WITHOUT_SMEMKernelType::CONV_WINOGRADKernelType::CONV_TWOD_TILINGKernelType::CONVMMA_NQ_TILINGKernelType::CONV_FIRST_LAYERKernelType::NORM_APEXKernelType::NORM_TMAKernelBackend::INVALIDKernelBackend::SPEED_OF_LIGHTKernelBackend::CUTLASS_7XKernelBackend::CUTLASS_8XKernelBackend::CUTLASS_9XKernelBackend::XMMA_9XKernelBackend::FORT_NATIVE_9XsplitKTypes::NONEsplitKTypes::SPLIT_KsplitKTypes::STREAM_KLayerType::INVALIDLayerType::CONV_FPROPLayerType::CONV_DGRADLayerType::CONV_WGRADLayerType::GEMMLayerType::CUSTOM_MEM_IOLayerType::NORMALIZATIONROW_MAJORCOL_MAJORUNKNOWN_RASTER_ORDERMIO_AMIO_BMACL3_READL3_WRITEDRAM_READDRAM_WRITEMEMORY_OPISSUERF_READRF_WRITETEX2GNIC_REQUEST_EGRESSTEX2GNIC_REQUEST_INGRESSL2_RCV_TEXDRAM_EVICTLST2CORECORE2LSTSMEM_DMASM2SMTMEM_TC_READTMEM_TC_WRITETMEM_SM_READTMEM_SM_WRITELST2COREBLINK_HORIZONTALLINK_VERTICALfmtA: fmtB: fmtC: fmtD: fmtBias: MainloopFusionPattern::NONEfmtX: fmtW: fmtMath: fmtO: typeLayergemmNgemmKgemmMbatchactivationTypel2SetupBytesAl2SetupBytesBl2SetupBytesCl2SetupBytesDbias: beta: gemmN: gemmK: gemmM: batch: activationType: l2SetupBytesA: l2SetupBytesB: l2SetupBytesC: l2SetupBytesD: type: nbSpatialDimsinDimsoutDimskernelDimsstrideDimsdilationDimspadDimsinPortselemSizeInBytel2FractionextentoutPortsinDims: typeKernelkernelBackendctaMctaNctaKwarpNumMwarpNumNcgaMcgaNsecondaryCgaMsecondaryCgaNoccupancysharedMemBytesnbRegisterssmArchinterleavedLayoutisPrecomputedisIndexedisAnalyticisWarpSpecializedhasEpilogFadddoSwapsplitKTypetileKtileGstagesplitKFactorsplitKBuffersplitKKernelssplitPgemmDataFormatfmtAfmtBfmtCfmtDfmtBiasdataAlignmentalignAalignCmatrixLayouttransposeAtransposeBtransposeCl1ByPassbypassAbypassBmmaInssparseinsClassmmaShapemmaFmtmmaOpSourcectaCountblockVecSizedataPathBitsrasterPatternenableHeuristicrasterOrderswizzleSizefusedOnAfusedOnB ctasPerRow: loadSize: DMAWarps: stages: useBulkStore: normDataFormat: typeKernel: KernelBackend: ctaM: ctaN: ctaK: warpNumM: warpNumN: cgaM: cgaN: secondaryCgaM: secondaryCgaN: occupancy: sharedMemBytes: nbRegisters: smArch: name: interleavedLayout: isPrecomputed: isIndexed: isAnalytic: isWarpSpecialized: hasEpilogFadd: doSwap: splitKType: tileK: tileG: stage: splitKFactor: splitKBuffer: splitKKernels: splitP: gemmDataFormat: dataAlignment: matrixLayout: l1ByPass: mmaIns.sparse: mmaIns.insClass: mmaIns.mmaShape: [ mmaIns.mmaFmt.a: mmaIns.mmaFmt.b: mmaIns.mmaFmt.acc: mmaIns.mmaOpSource.a: mmaIns.mmaOpSource.b: mmaIns.ctaCount: mmaIns.blockVecSize: mmaIns.dataPathBits: pattern: fusedOnA: fusedOnB: ctasPerRowloadSizeDMAWarpsuseBulkStorenormDataFormatfmtXfmtWfmtMathfmtOsmCountsmVersionsharedMemCapacityl2CacheSizesmClkdramClkvsltdplrcFactorcalibratedenergyHeuristicenergyDelayProductperfMetriclayerhwPropsElapsed cycles: Limiter: workload: utilization: %Phase names: Loop count: Phase level perf metrics:Kernel level perf metrics:standard.cycles: standard.timeMs: calibrated.cycles: calibrated.timeMs: energyHeuristic.cycles: energyHeuristic.timeMs: energyDelayProduct.cycles: energyDelayProduct.timeMs: SM number: SM version: L2 cache capacity in KB: GPC frequency in Mhz: LTC frequency in Mhz: DRAM frequency in Mhz: GPC Skyline: Num of micro-gpu: GPC number: L2 slice number: Static L2 latency: Static DRAM latency: L2 to GPC clock ratio: DRAM to L2 clock ratio: Register file capacity(KB): L2 Rcv Tex bandwidth: Stitch bandwidth: DRAM bus width(bit): DRAM bandwidth(bytes/cycle): DRAM bandwidth(gb/second): calibrated: energyHeuristic: energyDelayProduct: perfMetric: nbSpatialDims: g: inDims: outDims: kernelDims: strideDims: dilationDims: padDims: nbInputs: nbOutputs: input: elemSizeInByte: inputDims: l2Fraction: output: (,(<(L(\(l(|((((((((())))) ++,+<+L+\+l+|+++**|,,,,,......//(/8/H/..t00$040D0T0d02222222<7,77 766666666|6l6\6L6<6,66 655555555|5l5\5L5<5,55 544444L7d:t:::::::::D:T:UUUUUTUlUtgtgg8ggggggggggdwdwwLwwwwwwww4w4wإ ȥMmaInstructionClass::TENSOR_COREMmaInstructionClass::GROUP_TENSOR_COREMmaInstructionClass::CLUSTER_TENSOR_COREKernelType::GEMM_MAINLOOP_FUSIONKernelType::CONV_IMPLICIT_GEMMKernelType::CONV_FUSED_CONV_ACTMainloopFusionPattern::PIDEN_MATMULMainloopFusionPattern::PADD_MATMULMainloopFusionPattern::PMUL_MATMULMainloopFusionPattern::PCMPEQ_PIDEN_MATMULMainloopFusionPattern::PCMPNEQ_PIDEN_MATMULMainloopFusionPattern::PIDEN_PIDEN_MATMULMainloopFusionPattern::PIDEN_PEXP_PIDEN_MATMULMainloopFusionPattern::PIDEN_PCMPEQ_PIDEN_MATMULMainloopFusionPattern::PIDEN_PIDEN_PMAX_PIDEN_MATMULMainloopFusionPattern::MATMUL_PMULMainloopFusionPattern::MATMUL_PIDENShared memory capacity in KB: Effective L2 cache capacity in KB: Thermal design power(TDP) in Watt: GCC to SM inst bandwidth(bytes/cycle): GCC to SM const bandwidth(bytes/cycle): TPC gnic response bandwidth(bytes/cycle/SM): TPC gnic request bandwidth(bytes/cycle/SM): GPC gnic response bandwidth(bytes/cycle): GPC gnic request bandwidth(bytes/cycle): LTC slices response bandwidth(bytes/cycle): LTC slices request bandwidth(bytes/cycle): L2 read bandwidth(bytes/cycle): L2 write bandwidth(bytes/cycle): Y@>zDKTM_STATUS_UNKNOWNonly_exceptionalwaysdisableillegal env '': fileconsolenone[%s]: %s [%m-%d %H:%M:%S.%e] [%l]: %vtracedebugwarncriticaloff. Choose from: 'always', 'only_exception' or 'disable'. Logging is disabled.. Choose from: 'file', 'console' or 'none'. Logging is disabled.unexpected range of cache dirty thresholdCache block {(:{:[սŽueUE5%ռżueUE5%ջŻueUE5%պźueUE5%չŹueUE5%ոŸueUE5%uh[NA4'ŷշ, $$tt$Dt,tL|TTTTTTh@@X@$XXX ,Ll8((@XpkklljjWlflullkkk ll*l9lHlllllll mm)m8mGmVmjemtmmmmmmmmmm nn(n7nFnUndnsnnnnnnnnnn oo'o6oEoTocoroooooooooopp&p5pDpSpbpqppppppppppqq%q4qCqRqaqpqqqjqqqqqqqrr$r3rBrkȏȏȏȏ0ȏ̐<<<$< < 0@P`phбHX__cudaInitModulek2IӨ3ЎN,4I) ex\f's" ofdpQRK).Cɢ|=6Tbs+ټLW<gBoNڞI/zhy? "_!]Z2'5>0H^*VO8Җ}vktEpYdq [e-`%Fai4@~UG#Q:\κ&,S n( AMRj7l${ Jxcm;9fXwruK 1DPۙ3 UpK4`|aCm~Ɠ3n!hUؕ/Gk] a ] #4NAve U.111U.U.U.U.11p1U.U.U.U.U.X1U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.@1U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.01U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.1100000p0X0@0(00//U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.U./U.U.U.U.U.U.U.U.U.U.U.U.U.U.U.///h/P/8/ //...`.4450(500044400044400000000004400X5 9889 9 9 9 9889 9 9 9 9 98 9 9 9 9 9 9 9 9 9 9 9 9 9 9 99 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 99 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 988888888888888 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 98 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9889898889898xMNNKLdUDUUU$UVVV@VhVWWWXLXYYY Z`ZTeleDebb!1Lյ6yU0[EMv﻽FƢ )J .".defg,-./0X !"#$%&'()*+,45b  #$%+,-1ABCDE'cudaGetDevicePropertiescudaGetDriverEntryPointByVersioncudaGetDriverEntryPointcudaMallocFromPoolAsynccudaFreeAsynccudaMallocAsynccudaStreamSetAttributecudaStreamGetAttributecudaStreamCopyAttributescudaStreamUpdateCaptureDependencies_v2cudaStreamUpdateCaptureDependenciescudaStreamGetCaptureInfo_v3cudaStreamGetCaptureInfo_v2cudaStreamGetCaptureInfo_ptszcudaStreamGetCaptureInfocudaStreamIsCapturingcudaStreamEndCapturecudaStreamBeginCaptureToGraphcudaStreamBeginCapturecudaGraphLaunchcudaGraphUploadcudaGraphInstantiateWithParamscudaWaitExternalSemaphoresAsync_v2cudaWaitExternalSemaphoresAsync_ptszcudaWaitExternalSemaphoresAsynccudaSignalExternalSemaphoresAsync_v2cudaSignalExternalSemaphoresAsync_ptszcudaSignalExternalSemaphoresAsynccudaMemPrefetchAsync_v2cudaMemPrefetchAsynccudaLaunchHostFunccudaLaunchCooperativeKernelcudaLaunchKernelExCcudaLaunchKernelcudaStreamSynchronizecudaStreamAttachMemAsynccudaStreamAddCallbackcudaStreamWaitEventcudaEventRecordWithFlagscudaEventRecordcudaStreamGetPrioritycudaStreamGetIdcudaStreamGetFlagscudaStreamGetDevicecudaStreamQuerycudaMemset3DAsynccudaMemset2DAsynccudaMemsetAsynccudaMemcpy3DPeerAsynccudaMemcpy3DAsynccudaMemcpy2DFromArrayAsynccudaMemcpyFromArrayAsynccudaMemcpy2DToArrayAsynccudaMemcpyToArrayAsynccudaMemcpy2DAsynccudaMemcpyFromSymbolAsynccudaMemcpyToSymbolAsynccudaMemcpyAsynccudaMemset3DcudaMemset2DcudaMemsetcudaMemcpy3DBatchAsynccudaMemcpyBatchAsynccudaMemcpy3DPeercudaMemcpy3DcudaMemcpy2DArrayToArraycudaMemcpyArrayToArraycudaMemcpy2DFromArraycudaMemcpyFromArraycudaMemcpy2DToArraycudaMemcpyToArraycudaMemcpy2DcudaMemcpyFromSymbolcudaMemcpyToSymbolcudaMemcpycudaGetKernelcudaGetFuncBySymbolcudaKernelSetAttributeForDevicecudaLibraryEnumerateKernelscudaLibraryGetKernelCountcudaLibraryGetUnifiedFunctioncudaLibraryGetManagedcudaLibraryGetGlobalcudaLibraryGetKernelcudaLibraryUnloadcudaLibraryLoadFromFilecudaLibraryLoadDatacudaGetDriverEntryPointByVersion_ptszcudaGetDriverEntryPoint_ptszcudaGraphConditionalHandleCreatecudaGraphExecNodeSetParamscudaGraphNodeSetParamscudaGraphAddNode_v2cudaGraphAddNodecudaGraphReleaseUserObjectcudaGraphRetainUserObjectcudaUserObjectReleasecudaUserObjectRetaincudaUserObjectCreatecudaGraphDebugDotPrintcudaGraphDestroycudaGraphExecDestroycudaGraphLaunch_ptszcudaGraphUpload_ptszcudaGraphExecUpdatecudaGraphNodeGetEnabledcudaGraphNodeSetEnabledcudaGraphExecExternalSemaphoresWaitNodeSetParamscudaGraphExecExternalSemaphoresSignalNodeSetParamscudaGraphExecEventWaitNodeSetEventcudaGraphExecEventRecordNodeSetEventcudaGraphExecChildGraphNodeSetParamscudaGraphExecHostNodeSetParamscudaGraphExecMemsetNodeSetParamscudaGraphExecMemcpyNodeSetParams1DcudaGraphExecMemcpyNodeSetParamsFromSymbolcudaGraphExecMemcpyNodeSetParamsToSymbolcudaGraphExecMemcpyNodeSetParamscudaGraphExecKernelNodeSetParamscudaGraphExecGetFlagscudaGraphInstantiateWithParams_ptszcudaGraphInstantiateWithFlagscudaGraphInstantiatecudaGraphDestroyNodecudaGraphRemoveDependencies_v2cudaGraphRemoveDependenciescudaGraphAddDependencies_v2cudaGraphAddDependenciescudaGraphNodeGetDependentNodes_v2cudaGraphNodeGetDependentNodescudaGraphNodeGetDependencies_v2cudaGraphNodeGetDependenciescudaGraphGetEdges_v2cudaGraphGetEdgescudaGraphGetRootNodescudaGraphGetNodescudaGraphNodeGetTypecudaGraphNodeFindInClonecudaGraphClonecudaDeviceSetGraphMemAttributecudaDeviceGetGraphMemAttributecudaDeviceGraphMemTrimcudaGraphMemFreeNodeGetParamscudaGraphAddMemFreeNodecudaGraphMemAllocNodeGetParamscudaGraphAddMemAllocNodecudaGraphExternalSemaphoresWaitNodeSetParamscudaGraphExternalSemaphoresWaitNodeGetParamscudaGraphAddExternalSemaphoresWaitNodecudaGraphExternalSemaphoresSignalNodeSetParamscudaGraphExternalSemaphoresSignalNodeGetParamscudaGraphAddExternalSemaphoresSignalNodecudaGraphEventWaitNodeSetEventcudaGraphEventWaitNodeGetEventcudaGraphAddEventWaitNodecudaGraphEventRecordNodeSetEventcudaGraphEventRecordNodeGetEventcudaGraphAddEventRecordNodecudaGraphAddEmptyNodecudaGraphChildGraphNodeGetGraphcudaGraphAddChildGraphNodecudaGraphHostNodeSetParamscudaGraphHostNodeGetParamscudaGraphAddHostNodecudaGraphMemsetNodeSetParamscudaGraphMemsetNodeGetParamscudaGraphAddMemsetNodecudaGraphMemcpyNodeSetParams1DcudaGraphMemcpyNodeSetParamsFromSymbolcudaGraphMemcpyNodeSetParamsToSymbolcudaGraphMemcpyNodeSetParamscudaGraphMemcpyNodeGetParamscudaGraphAddMemcpyNode1DcudaGraphAddMemcpyNodeFromSymbolcudaGraphAddMemcpyNodeToSymbolcudaGraphAddMemcpyNodecudaGraphKernelNodeSetAttributecudaGraphKernelNodeGetAttributecudaGraphKernelNodeCopyAttributescudaGraphKernelNodeSetParamscudaGraphKernelNodeGetParamscudaGraphAddKernelNodecudaGraphCreatecudaRuntimeGetVersioncudaDriverGetVersioncudaGetSurfaceObjectResourceDesccudaDestroySurfaceObjectcudaCreateSurfaceObjectcudaGetTextureObjectResourceViewDesccudaGetTextureObjectTextureDesccudaGetTextureObjectResourceDesccudaDestroyTextureObjectcudaCreateTextureObjectcudaCreateChannelDesccudaGetChannelDesccudaGraphicsResourceGetMappedMipmappedArraycudaGraphicsSubResourceGetMappedArraycudaGraphicsResourceGetMappedPointercudaGraphicsUnmapResourcescudaGraphicsMapResourcescudaGraphicsResourceSetMapFlagscudaGraphicsUnregisterResourcecudaDeviceDisablePeerAccesscudaDeviceEnablePeerAccesscudaDeviceCanAccessPeercudaPointerGetAttributescudaMemPoolImportPointercudaMemPoolExportPointercudaMemPoolImportFromShareableHandlecudaMemPoolExportToShareableHandlecudaMallocFromPoolAsync_ptszcudaMemPoolDestroycudaMemPoolCreatecudaMemPoolGetAccesscudaMemPoolSetAccesscudaMemPoolGetAttributecudaMemPoolSetAttributecudaMemPoolTrimTocudaFreeAsync_ptszcudaMallocAsync_ptszcudaMemcpyFromArrayAsync_ptszcudaMemcpyToArrayAsync_ptszcudaMemcpyArrayToArray_ptdscudaMemcpyFromArray_ptdscudaMemcpyToArray_ptdscudaMemRangeGetAttributescudaMemRangeGetAttributecudaMemAdvise_v2cudaMemAdvisecudaMemPrefetchAsync_v2_ptszcudaMemPrefetchAsync_ptszcudaGetSymbolSizecudaGetSymbolAddresscudaMemset3DAsync_ptszcudaMemset2DAsync_ptszcudaMemsetAsync_ptszcudaMemset3D_ptdscudaMemset2D_ptdscudaMemset_ptdscudaMemcpyFromSymbolAsync_ptszcudaMemcpyToSymbolAsync_ptszcudaMemcpy2DFromArrayAsync_ptszcudaMemcpy2DToArrayAsync_ptszcudaMemcpy2DAsync_ptszcudaMemcpy3DBatchAsync_ptszcudaMemcpyBatchAsync_ptszcudaMemcpyPeerAsynccudaMemcpyAsync_ptszcudaMemcpyFromSymbol_ptdscudaMemcpyToSymbol_ptdscudaMemcpy2DArrayToArray_ptdscudaMemcpy2DFromArray_ptdscudaMemcpy2DToArray_ptdscudaMemcpy2D_ptdscudaMemcpyPeercudaMemcpy_ptdscudaMipmappedArrayGetSparsePropertiescudaArrayGetSparsePropertiescudaMipmappedArrayGetMemoryRequirementscudaArrayGetMemoryRequirementscudaArrayGetPlanecudaArrayGetInfocudaMemGetInfocudaMemcpy3DPeerAsync_ptszcudaMemcpy3DAsync_ptszcudaMemcpy3DPeer_ptdscudaMemcpy3D_ptdscudaGetMipmappedArrayLevelcudaMallocMipmappedArraycudaMalloc3DArraycudaMalloc3DcudaHostGetFlagscudaHostGetDevicePointercudaHostUnregistercudaHostRegistercudaHostAlloccudaFreeMipmappedArraycudaFreeArraycudaFreeHostcudaFreecudaMallocArraycudaMallocPitchcudaMallocHostcudaMalloccudaMallocManagedcudaOccupancyMaxActiveClusterscudaOccupancyMaxPotentialClusterSizecudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlagscudaOccupancyAvailableDynamicSMemPerBlockcudaOccupancyMaxActiveBlocksPerMultiprocessorcudaFuncSetSharedMemConfigcudaLaunchHostFunc_ptszcudaSetDoubleForHostcudaSetDoubleForDevicecudaFuncGetParamInfocudaFuncGetNamecudaFuncSetAttributecudaFuncGetAttributescudaFuncSetCacheConfigcudaLaunchCooperativeKernelMultiDevicecudaLaunchCooperativeKernel_ptszcudaLaunchKernelExC_ptszcudaLaunchKernel_ptszcudaDestroyExternalSemaphorecudaWaitExternalSemaphoresAsync_v2_ptszcudaSignalExternalSemaphoresAsync_v2_ptszcudaImportExternalSemaphorecudaDestroyExternalMemorycudaExternalMemoryGetMappedMipmappedArraycudaExternalMemoryGetMappedBuffercudaImportExternalMemorycudaEventElapsedTime_v2cudaEventElapsedTimecudaEventDestroycudaEventSynchronizecudaEventQuerycudaEventRecordWithFlags_ptszcudaEventRecord_ptszcudaEventCreateWithFlagscudaEventCreatecudaStreamUpdateCaptureDependencies_v2_ptszcudaStreamUpdateCaptureDependencies_ptszcudaStreamGetCaptureInfo_v3_ptszcudaStreamGetCaptureInfo_v2_ptszcudaStreamIsCapturing_ptszcudaStreamEndCapture_ptszcudaThreadExchangeStreamCaptureModecudaStreamBeginCaptureToGraph_ptszcudaStreamBeginCapture_ptszcudaStreamAttachMemAsync_ptszcudaStreamQuery_ptszcudaStreamSynchronize_ptszcudaStreamAddCallback_ptszcudaStreamWaitEvent_ptszcudaStreamDestroycudaStreamSetAttribute_ptszcudaStreamGetAttribute_ptszcudaStreamCopyAttributes_ptszcudaCtxResetPersistingL2CachecudaStreamGetDevice_ptszcudaStreamGetId_ptszcudaStreamGetFlags_ptszcudaStreamGetPriority_ptszcudaStreamCreateWithPrioritycudaStreamCreateWithFlagscudaStreamCreatecudaGetDeviceFlagscudaSetDeviceFlagscudaSetValidDevicescudaGetDevicecudaSetDevicecudaInitDevicecudaChooseDevicecudaDeviceGetP2PAttributecudaDeviceGetNvSciSyncAttributescudaDeviceGetMemPoolcudaDeviceSetMemPoolcudaDeviceGetDefaultMemPoolcudaDeviceGetAttributecudaGetDeviceProperties_v2cudaGetDeviceCountcudaGetErrorStringcudaGetErrorNamecudaPeekAtLastErrorcudaGetLastErrorcudaThreadSetCacheConfigcudaThreadGetCacheConfigcudaThreadGetLimitcudaThreadSetLimitcudaThreadSynchronizecudaThreadExitcudaDeviceSetSharedMemConfigcudaDeviceGetSharedMemConfigcudaDeviceUnregisterAsyncNotificationcudaDeviceRegisterAsyncNotificationcudaDeviceFlushGPUDirectRDMAWritescudaIpcCloseMemHandlecudaIpcOpenMemHandlecudaIpcGetMemHandlecudaIpcOpenEventHandlecudaIpcGetEventHandlecudaDeviceGetPCIBusIdcudaDeviceGetByPCIBusIdcudaDeviceSetCacheConfigcudaDeviceGetStreamPriorityRangecudaDeviceGetCacheConfigcudaDeviceGetTexture1DLinearMaxWidthcudaDeviceGetLimitcudaDeviceSetLimitcudaDeviceSynchronizecudaDeviceResetcudaProfilerStopcudaProfilerStartcudaGLUnmapBufferObjectAsynccudaGLMapBufferObjectAsynccudaGLSetBufferObjectMapFlagscudaGLUnregisterBufferObjectcudaGLUnmapBufferObjectcudaGLMapBufferObjectcudaGLRegisterBufferObjectcudaGLSetGLDevicecudaGraphicsGLRegisterBuffercudaGraphicsGLRegisterImagecudaGLGetDevicescudaEventCreateFromEGLSynccudaGraphicsResourceGetMappedEglFramecudaEGLStreamProducerReturnFramecudaEGLStreamProducerPresentFramecudaEGLStreamProducerDisconnectcudaEGLStreamProducerConnectcudaEGLStreamConsumerReleaseFramecudaEGLStreamConsumerAcquireFramecudaEGLStreamConsumerDisconnectcudaEGLStreamConsumerConnectWithFlagscudaEGLStreamConsumerConnectcudaGraphicsEGLRegisterImagecudaGraphicsVDPAURegisterOutputSurfacecudaGraphicsVDPAURegisterVideoSurfacecudaVDPAUSetVDPAUDevicecudaVDPAUGetDevice/proc/%lld/ns/%sOUTBCREDOUTBCUFDOUTBHELL"1!"paramsArray%s cannot be NULLCUDAfmtDescunrecognized error codeValue of flags is not validflagscallbackValue of flags is invalidmemHandleDescbufferDescmipmapDescsemHandleDesclaunchParamsListnumDevices cannot be 0attrfuncdevPtrpHostpitchpitchedDevPtrattributesarrayPtrmipmappedArrayPtrpResDescpTexDescpSurfObjectdriverVersionruntimeVersionnodeParamspNodeParamscopyParamsmemsetParamseventevent_outparams_outdptr_outchildGraphisEnabledpCaptureStatuscaptureStatus_outhGraphExechGraphkernelPtrentryFuncAddrcuGetProcAddress_v2cuInitcuGetProcAddresscuDeviceGetCountcuDeviceGetNamecuDeviceTotalMem_v2cuDeviceGetAttributecuDeviceGetP2PAttributecuDriverGetVersioncuDeviceGetByPCIBusIdcuDeviceGetPCIBusIdcuDeviceGetUuidcuDeviceGetDefaultMemPoolcuDeviceSetMemPoolcuDeviceGetMemPoolcuFlushGPUDirectRDMAWritescuDevicePrimaryCtxRetaincuDevicePrimaryCtxReleasecuDevicePrimaryCtxSetFlags_v2cuDevicePrimaryCtxGetStatecuDevicePrimaryCtxResetcuCtxCreate_v2cuCtxGetFlagscuCtxSetCurrentcuCtxGetCurrentcuCtxDetachcuCtxGetApiVersioncuCtxGetDevicecuCtxGetLimitcuCtxSetLimitcuCtxGetCacheConfigcuCtxSetCacheConfigcuCtxGetSharedMemConfigcuCtxGetStreamPriorityRangecuCtxSetSharedMemConfigcuCtxSynchronizecuCtxResetPersistingL2CachecuCtxPopCurrent_v2cuCtxPushCurrent_v2cuModuleLoadcuModuleLoadDatacuModuleLoadFatBinarycuModuleUnloadcuModuleGetFunctioncuModuleGetGlobal_v2cuModuleGetTexRefcuModuleGetSurfRefcuModuleGetLoadingModecuLibraryLoadFromFilecuLibraryGetModulecuLibraryGetGlobalcuLibraryGetManagedcuLibraryGetUnifiedFunctioncuLibraryGetKernelCountcuLibraryEnumerateKernelscuKernelGetAttributecuKernelSetCacheConfigcuKernelGetNamecuKernelGetParamInfocuLinkAddFilecuMemGetInfo_v2cuMemAllocManagedcuMemAlloc_v2cuMemAllocPitch_v2cuMemFree_v2cuMemGetAddressRange_v2cuMemFreeHostcuMemHostAlloccuMemHostGetDevicePointer_v2cuMemHostGetFlagscuMemHostRegister_v2cuMemHostUnregistercuPointerGetAttributecuPointerGetAttributescuMemAllocAsynccuMemAllocAsync_ptszcuMemAllocFromPoolAsynccuMemAllocFromPoolAsync_ptszcuMemFreeAsynccuMemFreeAsync_ptszcuMemPoolTrimTocuMemPoolSetAttributecuMemPoolGetAttributecuMemPoolSetAccesscuMemPoolGetAccesscuMemPoolCreatecuMemPoolDestroycuMemPoolExportPointercuMemPoolImportPointercuMemcpycuMemcpy_ptdscuMemcpyAsynccuMemcpyAsync_ptszcuMemcpyPeercuMemcpyPeer_ptdscuMemcpyPeerAsynccuMemcpyPeerAsync_ptszcuMemcpyHtoD_v2cuMemcpyHtoD_v2_ptdscuMemcpyHtoDAsync_v2cuMemcpyHtoDAsync_v2_ptszcuMemcpyDtoH_v2cuMemcpyDtoH_v2_ptdscuMemcpyDtoHAsync_v2cuMemcpyDtoHAsync_v2_ptszcuMemcpyDtoD_v2cuMemcpyDtoD_v2_ptdscuMemcpyDtoDAsync_v2cuMemcpyDtoDAsync_v2_ptszcuMemcpy2DUnaligned_v2cuMemcpy2DUnaligned_v2_ptdscuMemcpy2DAsync_v2cuMemcpy2DAsync_v2_ptszcuMemcpy3D_v2cuMemcpy3D_v2_ptdscuMemcpy3DAsync_v2cuMemcpy3DAsync_v2_ptszcuMemcpy3DPeercuMemcpy3DPeer_ptdscuMemcpy3DPeerAsynccuMemcpy3DPeerAsync_ptszcuMemcpyBatchAsynccuMemcpyBatchAsync_ptszcuMemcpy3DBatchAsynccuMemcpy3DBatchAsync_ptszcuMemsetD8_v2cuMemsetD8_v2_ptdscuMemsetD8AsynccuMemsetD8Async_ptszcuMemsetD2D8_v2cuMemsetD2D8_v2_ptdscuMemsetD2D8AsynccuMemsetD2D8Async_ptszcuFuncSetCacheConfigcuFuncSetSharedMemConfigcuFuncGetAttributecuFuncGetNamecuFuncGetParamInfocuArrayCreate_v2cuArrayGetDescriptor_v2cuArrayGetSparsePropertiescuArrayGetPlanecuArray3DCreate_v2cuArray3DGetDescriptor_v2cuArrayDestroycuMipmappedArrayCreatecuMipmappedArrayGetLevelcuMipmappedArrayDestroycuArrayGetMemoryRequirementscuTexObjectCreatecuTexObjectDestroycuTexObjectGetResourceDesccuTexObjectGetTextureDesccuSurfObjectCreatecuSurfObjectDestroycuSurfObjectGetResourceDesccuImportExternalMemorycuDestroyExternalMemorycuImportExternalSemaphorecuWaitExternalSemaphoresAsynccuDestroyExternalSemaphorecuLaunchKernel_ptszcuLaunchHostFunccuLaunchHostFunc_ptszcuLaunchKernelEx_ptszcuEventCreatecuEventRecordcuEventRecord_ptszcuEventRecordWithFlagscuEventRecordWithFlags_ptszcuEventQuerycuEventSynchronizecuEventDestroy_v2cuEventElapsedTimecuEventElapsedTime_v2cuStreamWaitValue32cuStreamWaitValue32_ptszcuStreamWriteValue32cuStreamWriteValue32_ptszcuStreamWaitValue64cuStreamWaitValue64_ptszcuStreamWriteValue64cuStreamWriteValue64_ptszcuStreamBatchMemOpcuStreamBatchMemOp_ptszcuStreamCreatecuStreamCreateWithPrioritycuStreamGetPrioritycuStreamGetPriority_ptszcuStreamGetFlagscuStreamGetDevicecuStreamGetDevice_ptszcuStreamGetCtxcuStreamGetFlags_ptszcuStreamGetIdcuStreamGetId_ptszcuStreamDestroy_v2cuStreamWaitEventcuStreamWaitEvent_ptszcuStreamAddCallbackcuStreamAddCallback_ptszcuStreamSynchronizecuStreamSynchronize_ptszcuStreamQuerycuStreamQuery_ptszcuStreamAttachMemAsynccuStreamAttachMemAsync_ptszcuStreamCopyAttributescuStreamCopyAttributes_ptszcuStreamGetAttributecuStreamGetAttribute_ptszcuStreamSetAttributecuStreamSetAttribute_ptszcuDeviceCanAccessPeercuCtxEnablePeerAccesscuCtxDisablePeerAccesscuIpcGetEventHandlecuIpcOpenEventHandlecuIpcGetMemHandlecuIpcOpenMemHandlecuIpcOpenMemHandle_v2cuIpcCloseMemHandlecuGLCtxCreate_v2cuGLInitcuGLGetDevicescuGLRegisterBufferObjectcuGLMapBufferObject_v2cuGLMapBufferObject_v2_ptdscuGLMapBufferObjectAsync_v2cuGLUnmapBufferObjectcuGLUnmapBufferObjectAsynccuGLUnregisterBufferObjectcuGLSetBufferObjectMapFlagscuGraphicsGLRegisterImagecuGraphicsGLRegisterBuffercuGraphicsEGLRegisterImagecuEGLStreamConsumerConnectcuEGLStreamConsumerDisconnectcuEGLStreamProducerConnectcuEGLStreamProducerDisconnectcuGraphicsUnregisterResourcecuGraphicsMapResourcescuGraphicsMapResources_ptszcuGraphicsUnmapResourcescuGraphicsUnmapResources_ptszcuProfilerInitializecuProfilerStartcuProfilerStopcuVDPAUGetDevicecuVDPAUCtxCreate_v2cuGetExportTablecuOccupancyMaxActiveClusterscuMemAdvisecuMemPrefetchAsynccuMemPrefetchAsync_ptszcuMemAdvise_v2cuMemPrefetchAsync_v2cuMemPrefetchAsync_v2_ptszcuMemRangeGetAttributecuMemRangeGetAttributescuGetErrorStringcuGetErrorNamecuGraphCreatecuGraphAddKernelNode_v2cuGraphKernelNodeGetParams_v2cuGraphKernelNodeSetParams_v2cuGraphAddMemcpyNodecuGraphMemcpyNodeGetParamscuGraphMemcpyNodeSetParamscuGraphAddMemsetNodecuGraphMemsetNodeGetParamscuGraphMemsetNodeSetParamscuGraphAddHostNodecuGraphHostNodeGetParamscuGraphHostNodeSetParamscuGraphAddChildGraphNodecuGraphChildGraphNodeGetGraphcuGraphAddEmptyNodecuGraphAddEventRecordNodecuGraphAddEventWaitNodecuGraphEventWaitNodeGetEventcuGraphEventWaitNodeSetEventcuGraphAddMemAllocNodecuGraphMemAllocNodeGetParamscuGraphAddMemFreeNodecuGraphMemFreeNodeGetParamscuDeviceGraphMemTrimcuDeviceGetGraphMemAttributecuDeviceSetGraphMemAttributecuGraphClonecuGraphNodeFindInClonecuGraphNodeGetTypecuGraphGetNodescuGraphGetRootNodescuGraphGetEdgescuGraphGetEdges_v2cuGraphNodeGetDependenciescuGraphNodeGetDependencies_v2cuGraphNodeGetDependentNodescuGraphAddDependenciescuGraphAddDependencies_v2cuGraphRemoveDependenciescuGraphRemoveDependencies_v2cuGraphDestroyNodecuGraphInstantiatecuGraphInstantiate_v2cuGraphInstantiateWithFlagscuGraphUploadcuGraphUpload_ptszcuGraphLaunchcuGraphLaunch_ptszcuGraphExecDestroycuGraphDestroycuStreamBeginCapturecuStreamBeginCapture_ptszcuStreamBeginCapture_v2cuStreamBeginCapture_v2_ptszcuStreamBeginCaptureToGraphcuStreamEndCapturecuStreamEndCapture_ptszcuStreamIsCapturingcuStreamIsCapturing_ptszcuStreamGetCaptureInfocuStreamGetCaptureInfo_ptszcuStreamGetCaptureInfo_v2cuStreamGetCaptureInfo_v3cuGraphExecHostNodeSetParamscuGraphExecUpdate_v2cuGraphKernelNodeGetAttributecuGraphKernelNodeSetAttributecuGraphDebugDotPrintcuUserObjectCreatecuUserObjectRetaincuUserObjectReleasecuGraphRetainUserObjectcuGraphReleaseUserObjectcuGraphNodeSetEnabledcuGraphNodeGetEnabledcuGraphInstantiateWithParamscuGraphExecGetFlagscuGraphAddNodecuGraphAddNode_v2cuGraphNodeSetParamscuGraphExecNodeSetParamscuDeviceTotalMemcuDevicePrimaryCtxSetFlagscuCtxCreatecuCtxPopCurrentcuCtxPushCurrentcuModuleGetGlobalcuMemGetInfocuMemAlloccuMemAllocPitchcuMemFreecuMemGetAddressRangecuMemHostGetDevicePointercuMemHostRegistercuMemcpyHtoDcuMemcpyHtoDAsynccuMemcpyDtoHcuMemcpyDtoHAsynccuMemcpyDtoDcuMemcpyDtoDAsynccuMemcpy2DUnalignedcuMemcpy2DAsynccuMemcpy3DcuMemcpy3DAsynccuMemsetD8cuMemsetD2D8cuArrayCreatecuArrayGetDescriptorcuArray3DCreatecuArray3DGetDescriptorcuEventDestroycuStreamDestroycuGLCtxCreatecuGLMapBufferObjectcuGLMapBufferObjectAsynccuGraphicsResourceSetMapFlagscuVDPAUCtxCreatecuGraphAddKernelNodecuGraphKernelNodeGetParamscuGraphKernelNodeSetParamscuGraphExecUpdatelibcuda.so.1Failed to load CUDA driver!Insufficient driver: %d < %dcudaDriverGetVersioncudaRuntimeGetVersioncudaGetDeviceCountcudaGetDevicePropertiescudaChooseDevicecudaGetChannelDesccudaCreateChannelDesccudaConfigureCallcudaSetupArgumentcudaGetLastErrorcudaPeekAtLastErrorcudaGetErrorStringcudaLaunchcudaFuncSetCacheConfigcudaFuncGetAttributescudaSetDevicecudaGetDevicecudaSetValidDevicescudaSetDeviceFlagscudaMalloccudaMallocPitchcudaFreecudaMallocArraycudaFreeArraycudaMallocHostcudaFreeHostcudaHostAlloccudaHostGetDevicePointercudaHostGetFlagscudaMemGetInfocudaMemcpycudaMemcpy2DcudaMemcpyToArraycudaMemcpy2DToArraycudaMemcpyFromArraycudaMemcpy2DFromArraycudaMemcpyArrayToArraycudaMemcpy2DArrayToArraycudaMemcpyToSymbolcudaMemcpyFromSymbolcudaMemcpyAsynccudaMemcpyToArrayAsynccudaMemcpyFromArrayAsynccudaMemcpy2DAsynccudaMemcpy2DToArrayAsynccudaMemcpy2DFromArrayAsynccudaMemcpyToSymbolAsynccudaMemcpyFromSymbolAsynccudaMemsetcudaMemset2DcudaMemsetAsynccudaMemset2DAsynccudaGetSymbolAddresscudaGetSymbolSizecudaBindTexturecudaBindTexture2DcudaBindTextureToArraycudaUnbindTexturecudaGetTextureAlignmentOffsetcudaGetTextureReferencecudaBindSurfaceToArraycudaGetSurfaceReferencecudaGLSetGLDevicecudaGLRegisterBufferObjectcudaGLMapBufferObjectcudaGLUnmapBufferObjectcudaGLUnregisterBufferObjectcudaGLSetBufferObjectMapFlagscudaGLMapBufferObjectAsynccudaGLUnmapBufferObjectAsynccudaWGLGetDevicecudaGraphicsGLRegisterImagecudaGraphicsGLRegisterBuffercudaGraphicsMapResourcescudaGraphicsUnmapResourcescudaVDPAUGetDevicecudaVDPAUSetVDPAUDevicecudaD3D11GetDevicecudaD3D11GetDevicescudaD3D11SetDirect3DDevicecudaD3D10GetDevicecudaD3D10GetDevicescudaD3D10SetDirect3DDevicecudaD3D10RegisterResourcecudaD3D10UnregisterResourcecudaD3D10MapResourcescudaD3D10UnmapResourcescudaD3D10ResourceSetMapFlagscudaD3D9GetDevicecudaD3D9GetDevicescudaD3D9SetDirect3DDevicecudaD3D9GetDirect3DDevicecudaD3D9RegisterResourcecudaD3D9UnregisterResourcecudaD3D9MapResourcescudaD3D9UnmapResourcescudaD3D9ResourceSetMapFlagscudaD3D9ResourceGetMappedSizecudaD3D9BegincudaD3D9EndcudaD3D9RegisterVertexBuffercudaD3D9MapVertexBuffercudaD3D9UnmapVertexBuffercudaThreadExitcudaSetDoubleForDevicecudaSetDoubleForHostcudaThreadSynchronizecudaThreadGetLimitcudaThreadSetLimitcudaStreamCreatecudaStreamDestroycudaStreamSynchronizecudaStreamQuerycudaEventCreatecudaEventCreateWithFlagscudaEventRecordcudaEventDestroycudaEventSynchronizecudaEventQuerycudaEventElapsedTimecudaMalloc3DcudaMalloc3DArraycudaMemset3DcudaMemset3DAsynccudaMemcpy3DcudaMemcpy3DAsynccudaThreadSetCacheConfigcudaStreamWaitEventcudaD3D11GetDirect3DDevicecudaD3D10GetDirect3DDevicecudaThreadGetCacheConfigcudaPointerGetAttributescudaHostRegistercudaHostUnregistercudaDeviceCanAccessPeercudaDeviceEnablePeerAccesscudaDeviceDisablePeerAccesscudaPeerRegistercudaPeerUnregistercudaPeerGetDevicePointercudaMemcpyPeercudaMemcpyPeerAsynccudaMemcpy3DPeercudaMemcpy3DPeerAsynccudaDeviceResetcudaDeviceSynchronizecudaDeviceGetLimitcudaDeviceSetLimitcudaDeviceGetCacheConfigcudaDeviceSetCacheConfigcudaProfilerInitializecudaProfilerStartcudaProfilerStopcudaDeviceGetByPCIBusIdcudaDeviceGetPCIBusIdcudaGLGetDevicescudaIpcGetEventHandlecudaIpcOpenEventHandlecudaIpcGetMemHandlecudaIpcOpenMemHandlecudaIpcCloseMemHandlecudaArrayGetInfocudaFuncSetSharedMemConfigcudaDeviceGetSharedMemConfigcudaDeviceSetSharedMemConfigcudaCreateTextureObjectcudaDestroyTextureObjectcudaCreateSurfaceObjectcudaDestroySurfaceObjectcudaMallocMipmappedArraycudaGetMipmappedArrayLevelcudaFreeMipmappedArraycudaStreamAddCallbackcudaStreamCreateWithFlagscudaDeviceGetAttributecudaStreamCreateWithPrioritycudaStreamGetPrioritycudaStreamGetFlagscudaMallocManagedcudaStreamAttachMemAsynccudaGetErrorNamecudaLaunchKernelcudaGetDeviceFlagscudaLaunch_ptszcudaLaunchKernel_ptszcudaMemcpy_ptdscudaMemcpy2D_ptdscudaMemcpyToArray_ptdscudaMemcpy2DToArray_ptdscudaMemcpyFromArray_ptdscudaMemcpy2DFromArray_ptdscudaMemcpyArrayToArray_ptdscudaMemcpy2DArrayToArray_ptdscudaMemcpyToSymbol_ptdscudaMemcpyFromSymbol_ptdscudaMemcpyAsync_ptszcudaMemcpyToArrayAsync_ptszcudaMemcpyFromArrayAsync_ptszcudaMemcpy2DAsync_ptszcudaMemcpy2DToArrayAsync_ptszcudaMemcpyToSymbolAsync_ptszcudaMemset_ptdscudaMemset2D_ptdscudaMemsetAsync_ptszcudaMemset2DAsync_ptszcudaStreamGetPriority_ptszcudaStreamGetFlags_ptszcudaStreamSynchronize_ptszcudaStreamQuery_ptszcudaStreamAttachMemAsync_ptszcudaEventRecord_ptszcudaMemset3D_ptdscudaMemset3DAsync_ptszcudaMemcpy3D_ptdscudaMemcpy3DAsync_ptszcudaStreamWaitEvent_ptszcudaStreamAddCallback_ptszcudaMemcpy3DPeer_ptdscudaMemcpy3DPeerAsync_ptszcudaMemPrefetchAsynccudaMemPrefetchAsync_ptszcudaMemAdvisecudaDeviceGetP2PAttributecudaGraphicsEGLRegisterImagecudaEGLStreamConsumerConnectcudaEGLStreamProducerConnectcudaMemRangeGetAttributecudaMemRangeGetAttributescudaLaunchCooperativeKernelcudaEventCreateFromEGLSynccudaFuncSetAttributecudaImportExternalMemorycudaDestroyExternalMemorycudaImportExternalSemaphorecudaDestroyExternalSemaphorecudaLaunchHostFunccudaLaunchHostFunc_ptszcudaGraphCreatecudaGraphKernelNodeGetParamscudaGraphKernelNodeSetParamscudaGraphAddKernelNodecudaGraphAddMemcpyNodecudaGraphMemcpyNodeGetParamscudaGraphMemcpyNodeSetParamscudaGraphAddMemsetNodecudaGraphMemsetNodeGetParamscudaGraphMemsetNodeSetParamscudaGraphAddHostNodecudaGraphHostNodeGetParamscudaGraphAddChildGraphNodecudaGraphAddEmptyNodecudaGraphClonecudaGraphNodeFindInClonecudaGraphNodeGetTypecudaGraphGetRootNodescudaGraphNodeGetDependenciescudaGraphAddDependenciescudaGraphRemoveDependenciescudaGraphDestroyNodecudaGraphInstantiatecudaGraphLaunchcudaGraphLaunch_ptszcudaGraphExecDestroycudaGraphDestroycudaStreamBeginCapturecudaStreamBeginCapture_ptszcudaStreamIsCapturingcudaStreamIsCapturing_ptszcudaStreamEndCapturecudaStreamEndCapture_ptszcudaGraphHostNodeSetParamscudaGraphGetNodescudaGraphGetEdgescudaStreamGetCaptureInfocudaStreamGetCaptureInfo_ptszcudaStreamSetFlagscudaStreamSetFlags_ptszcudaGraphExecUpdatecudaGetFuncBySymbolcudaCtxResetPersistingL2CachecudaStreamCopyAttributescudaStreamCopyAttributes_ptszcudaStreamGetAttributecudaStreamGetAttribute_ptszcudaStreamSetAttributecudaStreamSetAttribute_ptszcudaGraphUploadcudaGraphUpload_ptszcudaGraphAddMemcpyNode1DcudaArrayGetSparsePropertiescudaGraphAddEventRecordNodecudaGraphAddEventWaitNodecudaEventRecordWithFlagscudaEventRecordWithFlags_ptszcudaDeviceGetDefaultMemPoolcudaMallocAsynccudaMallocAsync_ptszcudaFreeAsynccudaFreeAsync_ptszcudaMemPoolTrimTocudaMemPoolSetAttributecudaMemPoolGetAttributecudaMemPoolSetAccesscudaArrayGetPlanecudaMemPoolGetAccesscudaMemPoolCreatecudaMemPoolDestroycudaDeviceSetMemPoolcudaDeviceGetMemPoolcudaMemPoolExportPointercudaMemPoolImportPointercudaMallocFromPoolAsynccudaMallocFromPoolAsync_ptszcudaGetDriverEntryPointcudaGetDriverEntryPoint_ptszcudaGraphDebugDotPrintcudaStreamGetCaptureInfo_v2cudaUserObjectCreatecudaUserObjectRetaincudaUserObjectReleasecudaGraphRetainUserObjectcudaGraphReleaseUserObjectcudaGraphInstantiateWithFlagscudaGraphAddMemAllocNodecudaGraphAddMemFreeNodecudaGraphMemFreeNodeGetParamscudaDeviceGraphMemTrimcudaGraphNodeSetEnabledcudaGraphNodeGetEnabledcudaLaunchKernelExCcudaLaunchKernelExC_ptszcudaCreateTextureObject_v2cudaGraphExecGetFlagscudaGetKernelcudaGetDeviceProperties_v2cudaStreamGetIdcudaStreamGetId_ptszcudaInitDevicecudaGraphAddNodecudaGraphNodeSetParamscudaGraphExecNodeSetParamscudaMemAdvise_v2cudaMemPrefetchAsync_v2cudaMemPrefetchAsync_v2_ptszcudaFuncGetNamecudaStreamBeginCaptureToGraphcudaGraphGetEdges_v2cudaGraphAddDependencies_v2cudaGraphAddNode_v2cudaStreamGetCaptureInfo_v3cudaFuncGetParamInfocudaLibraryLoadDatacudaLibraryLoadFromFilecudaLibraryUnloadcudaLibraryGetKernelcudaLibraryGetGlobalcudaLibraryGetManagedcudaLibraryGetUnifiedFunctioncudaLibraryGetKernelCountcudaLibraryEnumerateKernelscudaStreamGetDevicecudaStreamGetDevice_ptszcudaMemcpyBatchAsynccudaMemcpyBatchAsync_ptszcudaMemcpy3DBatchAsynccudaMemcpy3DBatchAsync_ptszcudaEventElapsedTime_v2cudaSuccessno errorcudaErrorInvalidValueinvalid argumentcudaErrorMemoryAllocationout of memorycudaErrorInitializationErrorcudaErrorCudartUnloadingdriver shutting downcudaErrorProfilerDisabledprofiler already startedprofiler already stoppedcudaErrorStubLibraryCUDA driver is a stub librarycudaErrorDevicesUnavailablecudaErrorNoDevicecudaErrorInvalidDeviceinvalid device ordinalcudaErrorDeviceNotLicensedintegrity checks failedcudaErrorInvalidKernelImagecudaErrorDeviceUninitializedinvalid device contextcudaErrorArrayIsMappedarray is mappedcudaErrorAlreadyMappedresource already mappedcudaErrorAlreadyAcquiredresource already acquiredcudaErrorNotMappedresource not mappedcudaErrorNotMappedAsArrayresource not mapped as arraycudaErrorNotMappedAsPointercudaErrorECCUncorrectablecudaErrorUnsupportedLimitcudaErrorDeviceAlreadyInUsecudaErrorInvalidPtxa PTX JIT compilation failedcudaErrorNvlinkUncorrectablecudaErrorJitCompilerNotFoundcudaErrorContainedcudaErrorInvalidSourcecudaErrorFileNotFoundfile not foundcudaErrorOperatingSysteminvalid resource handlecudaErrorIllegalStatecudaErrorLossyQuerycudaErrorSymbolNotFoundnamed symbol not foundcudaErrorNotReadydevice not readycudaErrorIllegalAddresscudaErrorLaunchOutOfResourcescudaErrorLaunchTimeoutcudaErrorPeerAccessNotEnabledcudaErrorSetOnActiveProcesscudaErrorContextIsDestroyedcontext is destroyedcudaErrorAssertdevice-side assert triggeredcudaErrorTooManyPeerscudaErrorHardwareStackErrorhardware stack errorcudaErrorIllegalInstructioncudaErrorMisalignedAddressmisaligned addresscudaErrorInvalidAddressSpacecudaErrorInvalidPcinvalid program countercudaErrorLaunchFailureunspecified launch failurecudaErrorTensorMemoryLeakcudaErrorNotPermittedoperation not permittedcudaErrorNotSupportedoperation not supportedcudaErrorSystemNotReadysystem not yet initializedcudaErrorSystemDriverMismatchcudaErrorMpsConnectionFailedcudaErrorMpsRpcFailurecudaErrorMpsServerNotReadycudaErrorMpsMaxClientsReachedcudaErrorMpsClientTerminatedcudaErrorCdpNotSupportedcudaErrorCdpVersionMismatchcudaErrorStreamCaptureMergecudaErrorCapturedEventcudaErrorTimeoutwait operation timed outcudaErrorExternalDevicecudaErrorInvalidClusterSizecudaErrorFunctionNotLoadedcudaErrorInvalidResourceTypecudaErrorUnknownunknown errorcudaErrorMissingConfigurationcudaErrorPriorLaunchFailureinvalid device functioncudaErrorInvalidConfigurationcudaErrorInvalidPitchValueinvalid pitch argumentcudaErrorInvalidSymbolinvalid device symbolcudaErrorInvalidHostPointerinvalid host pointercudaErrorInvalidDevicePointerinvalid device pointercudaErrorInvalidTextureinvalid texture referenceinvalid channel descriptorcudaErrorAddressOfConstantinvalid address of constantcudaErrorTextureFetchFailedfetch from texture failedcudaErrorTextureNotBoundcudaErrorSynchronizationErrorcudaErrorInvalidFilterSettingcudaErrorInvalidNormSettingcudaErrorMixedDeviceExecutioncudaErrorNotYetImplementedfeature not yet implementedcudaErrorMemoryValueTooLargecudaErrorInsufficientDrivercudaErrorInvalidSurfaceinvalid surface referencecudaErrorDuplicateTextureNamecudaErrorDuplicateSurfaceNameincompatible driver contextcudaErrorLaunchFileScopedTexcudaErrorLaunchFileScopedSurfcudaErrorSyncDepthExceededcudaErrorStartupFailurecudaErrorApiFailureBaseapi failure baseMems_allowed:/proc/self/status/sys/devices/system/nodeGLIBC_2.10accept4GLIBC_2.9pipe2GLIBC_2.7eventfdGLIBC_2.6sched_getcpuGLIBC_2.2.5bindGLIBC_2.3.4pthread_setaffinity_nppthread_getaffinity_np/proc/sys/vm/mmap_min_addr%zu/proc/cpuinfo/proc/meminfoHugepagesize: %zu kB%nHOMETMPDIR%s/%s%d.%d.%d/proc/self/exeNode %lu MemTotal: %zd kBi386i686armv7lx86_64aarch64armv8lppc64leARMv8ARMv9/cudart.shm.%x.%x.%llxrb/dev/urandom/cudart.shm.%08llx%08llx%s_in%s_out%s_%s/proc/self/task/%d/commwbCUDA Graph Node memory was not zeroed before use.Value of deviceFlags is not validInvalid value for flags parameterCannot use this function with a non-primary current contextnumDevices cannot be greater than than device countlaunchParamsList members cannot specify multiple functionscuDeviceGetTexture1DLinearMaxWidthcuMemPoolExportToShareableHandlecuMemPoolImportFromShareableHandlecuMipmappedArrayGetSparsePropertiescuMipmappedArrayGetMemoryRequirementscuTexObjectGetResourceViewDesccuExternalMemoryGetMappedBuffercuExternalMemoryGetMappedMipmappedArraycuSignalExternalSemaphoresAsynccuSignalExternalSemaphoresAsync_ptszcuWaitExternalSemaphoresAsync_ptszcuDeviceGetNvSciSyncAttributescuLaunchCooperativeKernel_ptszcuLaunchCooperativeKernelMultiDevicecuGLMapBufferObjectAsync_v2_ptszcuEGLStreamConsumerAcquireFramecuEGLStreamConsumerReleaseFramecuEGLStreamProducerPresentFramecuEGLStreamProducerReturnFramecuGraphicsResourceGetMappedEglFramecuEGLStreamConsumerConnectWithFlagscuGraphicsResourceSetMapFlags_v2cuGraphicsSubResourceGetMappedArraycuGraphicsResourceGetMappedMipmappedArraycuGraphicsResourceGetMappedPointer_v2cuGraphicsVDPAURegisterVideoSurfacecuGraphicsVDPAURegisterOutputSurfacecuOccupancyMaxActiveBlocksPerMultiprocessorWithFlagscuOccupancyAvailableDynamicSMemPerBlockcuOccupancyMaxPotentialClusterSizecuGraphEventRecordNodeGetEventcuGraphEventRecordNodeSetEventcuGraphAddExternalSemaphoresSignalNodecuGraphExternalSemaphoresSignalNodeGetParamscuGraphExternalSemaphoresSignalNodeSetParamscuGraphAddExternalSemaphoresWaitNodecuGraphExternalSemaphoresWaitNodeGetParamscuGraphExternalSemaphoresWaitNodeSetParamscuGraphExecExternalSemaphoresSignalNodeSetParamscuGraphExecExternalSemaphoresWaitNodeSetParamscuGraphNodeGetDependentNodes_v2cuStreamBeginCaptureToGraph_ptszcuStreamGetCaptureInfo_v2_ptszcuStreamGetCaptureInfo_v3_ptszcuStreamUpdateCaptureDependenciescuStreamUpdateCaptureDependencies_ptszcuStreamUpdateCaptureDependencies_v2cuStreamUpdateCaptureDependencies_v2_ptszcuGraphExecKernelNodeSetParams_v2cuGraphExecMemcpyNodeSetParamscuGraphExecMemsetNodeSetParamscuGraphExecChildGraphNodeSetParamscuGraphExecEventRecordNodeSetEventcuGraphExecEventWaitNodeSetEventcuThreadExchangeStreamCaptureModecuGraphKernelNodeCopyAttributescuGraphInstantiateWithParams_ptszcuGraphConditionalHandleCreatecuDeviceRegisterAsyncNotificationcuDeviceUnregisterAsyncNotificationcuGraphicsResourceGetMappedPointercuGraphExecKernelNodeSetParamsCUDA_ENABLE_MODULE_LAZY_LOADINGInvalid device number %d provided, must be in the range of 0 to %dGrid Dimensions (%u,%u,%u) include one or more zero values. All dimensions must be nonzeroBlock Dimensions (%u,%u,%u) include one or more zero values. All dimensions must be nonzeroGrid Dimensions (%u,%u,%u) include one or more values that exceed the device limit of (%d,%d,%d)Block Dimensions (%u,%u,%u) include one or more values that exceed the device limit of (%d,%d,%d)Total threads per block %u exceeds device limit of %dTotal threads per block %u exceeds nvcc-set limit of %dcudaGraphicsUnregisterResourcecudaGraphicsResourceSetMapFlagscudaGraphicsResourceGetMappedPointercudaGraphicsSubResourceGetMappedArraycudaGraphicsVDPAURegisterVideoSurfacecudaGraphicsVDPAURegisterOutputSurfacecudaGraphicsD3D11RegisterResourcecudaGraphicsD3D10RegisterResourcecudaD3D10ResourceGetSurfaceDimensionscudaD3D10ResourceGetMappedArraycudaD3D10ResourceGetMappedPointercudaD3D10ResourceGetMappedSizecudaD3D10ResourceGetMappedPitchcudaGraphicsD3D9RegisterResourcecudaD3D9ResourceGetSurfaceDimensionscudaD3D9ResourceGetMappedArraycudaD3D9ResourceGetMappedPointercudaD3D9ResourceGetMappedPitchcudaD3D9UnregisterVertexBuffercudaGetTextureObjectResourceDesccudaGetTextureObjectTextureDesccudaGetSurfaceObjectResourceDesccudaBindTextureToMipmappedArraycudaGraphicsResourceGetMappedMipmappedArraycudaGetTextureObjectResourceViewDesccudaDeviceGetStreamPriorityRangecudaOccupancyMaxActiveBlocksPerMultiprocessorcudaMemcpy2DFromArrayAsync_ptszcudaMemcpyFromSymbolAsync_ptszcudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlagscudaEGLStreamConsumerDisconnectcudaEGLStreamConsumerAcquireFramecudaEGLStreamConsumerReleaseFramecudaEGLStreamProducerDisconnectcudaEGLStreamProducerPresentFramecudaEGLStreamProducerReturnFramecudaGraphicsResourceGetMappedEglFramecudaEGLStreamConsumerConnectWithFlagscudaLaunchCooperativeKernel_ptszcudaLaunchCooperativeKernelMultiDevicecudaExternalMemoryGetMappedBuffercudaExternalMemoryGetMappedMipmappedArraycudaSignalExternalSemaphoresAsynccudaSignalExternalSemaphoresAsync_ptszcudaWaitExternalSemaphoresAsynccudaWaitExternalSemaphoresAsync_ptszcudaGraphChildGraphNodeGetGraphcudaGraphNodeGetDependentNodescudaGraphExecKernelNodeSetParamscudaThreadExchangeStreamCaptureModecudaDeviceGetNvSciSyncAttributescudaOccupancyAvailableDynamicSMemPerBlockcudaGraphExecMemcpyNodeSetParamscudaGraphExecMemsetNodeSetParamscudaGraphExecHostNodeSetParamscudaGraphKernelNodeCopyAttributescudaGraphKernelNodeGetAttributecudaGraphKernelNodeSetAttributecudaDeviceGetTexture1DLinearMaxWidthcudaGraphAddMemcpyNodeToSymbolcudaGraphAddMemcpyNodeFromSymbolcudaGraphMemcpyNodeSetParamsToSymbolcudaGraphMemcpyNodeSetParamsFromSymbolcudaGraphMemcpyNodeSetParams1DcudaGraphExecMemcpyNodeSetParamsToSymbolcudaGraphExecMemcpyNodeSetParamsFromSymbolcudaGraphExecMemcpyNodeSetParams1DcudaMipmappedArrayGetSparsePropertiescudaGraphExecChildGraphNodeSetParamscudaGraphEventRecordNodeGetEventcudaGraphEventRecordNodeSetEventcudaGraphEventWaitNodeGetEventcudaGraphEventWaitNodeSetEventcudaGraphExecEventRecordNodeSetEventcudaGraphExecEventWaitNodeSetEventcudaMemPoolExportToShareableHandlecudaMemPoolImportFromShareableHandlecudaSignalExternalSemaphoresAsync_v2cudaSignalExternalSemaphoresAsync_v2_ptszcudaWaitExternalSemaphoresAsync_v2cudaWaitExternalSemaphoresAsync_v2_ptszcudaGraphAddExternalSemaphoresSignalNodecudaGraphExternalSemaphoresSignalNodeGetParamscudaGraphExternalSemaphoresSignalNodeSetParamscudaGraphAddExternalSemaphoresWaitNodecudaGraphExternalSemaphoresWaitNodeGetParamscudaGraphExternalSemaphoresWaitNodeSetParamscudaGraphExecExternalSemaphoresSignalNodeSetParamscudaGraphExecExternalSemaphoresWaitNodeSetParamscudaDeviceFlushGPUDirectRDMAWritescudaStreamGetCaptureInfo_v2_ptszcudaStreamUpdateCaptureDependenciescudaStreamUpdateCaptureDependencies_ptszcudaGraphMemAllocNodeGetParamscudaDeviceGetGraphMemAttributecudaDeviceSetGraphMemAttributecudaArrayGetMemoryRequirementscudaMipmappedArrayGetMemoryRequirementscudaOccupancyMaxPotentialClusterSizecudaOccupancyMaxActiveClusterscudaGetTextureObjectTextureDesc_v2cudaGraphInstantiateWithParamscudaGraphInstantiateWithParams_ptszcudaStreamBeginCaptureToGraph_ptszcudaGraphConditionalHandleCreatecudaGraphNodeGetDependencies_v2cudaGraphNodeGetDependentNodes_v2cudaGraphRemoveDependencies_v2cudaStreamGetCaptureInfo_v3_ptszcudaStreamUpdateCaptureDependencies_v2cudaStreamUpdateCaptureDependencies_v2_ptszcudaDeviceRegisterAsyncNotificationcudaDeviceUnregisterAsyncNotificationcudaGetDriverEntryPointByVersioncudaGetDriverEntryPointByVersion_ptszcudaKernelSetAttributeForDeviceprofiler disabled while using external profiling toolcudaErrorProfilerNotInitializedprofiler not initialized: call cudaProfilerInitialize()cudaErrorProfilerAlreadyStartedcudaErrorProfilerAlreadyStoppedCUDA-capable device(s) is/are busy or unavailableno CUDA-capable device is detecteddevice doesn't have valid Grid licensecudaErrorSoftwareValidityNotEstablisheddevice kernel image is invalidcudaErrorMapBufferObjectFailedmapping of buffer object failedcudaErrorUnmapBufferObjectFailedunmapping of buffer object failedcudaErrorNoKernelImageForDeviceno kernel image is available for execution on the deviceresource not mapped as pointeruncorrectable ECC error encounteredlimit is not supported on this architectureexclusive-thread device already in use by a different threadcudaErrorPeerAccessUnsupportedpeer access is not supported between these two devicescudaErrorInvalidGraphicsContextinvalid OpenGL or DirectX contextuncorrectable NVLink error detected during the executionPTX JIT compiler library not foundcudaErrorUnsupportedPtxVersionthe provided PTX was compiled with an unsupported toolchain.cudaErrorJitCompilationDisabledPTX JIT compilation was disabledcudaErrorUnsupportedExecAffinitythe provided execution affinity is not supportedcudaErrorUnsupportedDevSideSyncthe provided PTX contains unsupported call to cudaDeviceSynchronizeInvalid access of peer GPU memory over nvlink or a hardware errorcudaErrorSharedObjectSymbolNotFoundshared object symbol not foundcudaErrorSharedObjectInitFailedshared object initialization failedOS call failed or operation not supported on this OScudaErrorInvalidResourceHandlethe operation cannot be performed in the present stateattempted introspection would be semantically lossyan illegal memory access was encounteredtoo many resources requested for launchthe launch timed out and was terminatedcudaErrorLaunchIncompatibleTexturinglaunch uses incompatible texturing modecudaErrorPeerAccessAlreadyEnabledpeer access is already enabledpeer access has not been enabledcannot set while device is active in this processpeer mapping resources exhaustedcudaErrorHostMemoryAlreadyRegisteredpart or all of the requested memory range is already mappedcudaErrorHostMemoryNotRegisteredpointer does not correspond to a registered memory regionan illegal instruction was encounteredoperation not supported on global/shared address spacecudaErrorCooperativeLaunchTooLargetoo many blocks in cooperative launchtensor memory not completely freedsystem has unsupported display driver / cuda driver combinationcudaErrorCompatNotSupportedOnDeviceforward compatibility was attempted on non supported HWMPS client failed to connect to the MPS control daemon or the MPS serverthe remote procedural call between the MPS server and the MPS client failedMPS server is not ready to accept new MPS client requeststhe hardware resources required to create MPS client have been exhaustedcudaErrorMpsMaxConnectionsReachedthe hardware resources required to support device connections have been exhaustedthe MPS client has been terminated by the serveris using CUDA Dynamic Parallelism, but the current configuration, like MPS, does not support itunsupported interaction between different versions of CUDA Dynamic ParallelismcudaErrorStreamCaptureUnsupportedoperation not permitted when stream is capturingcudaErrorStreamCaptureInvalidatedoperation failed due to a previous error during captureoperation would result in a merge of separate capture sequencescudaErrorStreamCaptureUnmatchedcapture was not ended in the same stream as it begancudaErrorStreamCaptureUnjoinedcapturing stream has unjoined workcudaErrorStreamCaptureIsolationdependency created on uncaptured work in another streamcudaErrorStreamCaptureImplicitoperation would make the legacy stream depend on a capturing blocking streamoperation not permitted on an event last recorded in a capturing streamcudaErrorStreamCaptureWrongThreadattempt to terminate a thread-local capture sequence from another threadcudaErrorGraphExecUpdateFailurethe graph update was not performed because it included changes which violated constraints specific to instantiated graph updatean async error has occured in external entity outside of CUDAa kernel launch error has occurred due to cluster misconfigurationthe function handle is not loaded when calling an API that requires a loaded functionone or more resources passed in are not valid resource types for the operationcudaErrorInvalidResourceConfigurationone or more resources are insufficient or non-applicable for the operation__global__ function call is not configuredunspecified launch failure in prior launchcudaErrorInvalidDeviceFunctioninvalid configuration argumentcudaErrorInvalidTextureBindingtexture is not bound to a pointercudaErrorInvalidChannelDescriptorcudaErrorInvalidMemcpyDirectioninvalid copy direction for memcpycannot fetch from a texture that is not boundincorrect use of __syncthreads()linear filtering not supported for non-float typeread as normalized float not supported for data typedevice emulation mode and device execution mode cannot be mixedmemory size or pointer value too large to fit in 32 bitCUDA driver version is insufficient for CUDA runtime versioncudaErrorCallRequiresNewerDriverAPI call is not supported in the installed CUDA drivercudaErrorDuplicateVariableNameduplicate global variable looked up by string nameduplicate texture looked up by string nameduplicate surface looked up by string namecudaErrorIncompatibleDriverContextcudaErrorLaunchMaxDepthExceededlaunch would exceed maximum depth of nested launcheslaunch failed because kernel uses unsupported, file-scoped textures (texture objects are supported)launch failed because kernel uses unsupported, file-scoped surfaces (surface objects are supported)cudaDeviceSynchronize failed because caller's grid depth exceeds cudaLimitDevRuntimeSyncDepthcudaErrorLaunchPendingCountExceededlaunch failed because launch would exceed cudaLimitDevRuntimePendingLaunchCountstartup failure in cuda runtime/sys/devices/system/node/%s/cpumapaddress sizes : %lu bits physical, %lu bits virtual/sys/bus/pci/devices/%04x:%02x:%02x.%x/numa_node/sys/devices/system/node/node%ld/meminfo /proc/self/maps$tIPU@4@2 ( ELF3S # ! 22@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&8allgraphprototype[oactioni1-!id2= >Z}gi` / ' !7 0* @ U!%!.p@ s(%6 V  LWB'O' $N70[GL)8W lKb2PK@`' @ $@(@  g,wB@i / @) ! @$z)p@$Xb@1h$ @\i @  @@(8TB@Xq2@ @Dh 8 p 8pP@< ( ELF3S # ! <<@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&8allgraphprototype[oactioni1-!id2= >Z}gi` / ' !7 0* @ U!%!.p@ s(%6 V  LW'O' $N70[GL)8W lKb2PK@`' @ $@(@  g,wB@i / @) ! @$z)p@$Xb@1h$ @\i @  @@(8TB@Xq2@ @Dh 8 p 8pP@= ( ELF3S # ! ==@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&8allgraphprototype[oactioni1-!id2= >Z}gi` / ' !7 0* @ U!%!.p@ s(%6 V  LW'O' $N70[GL)8W lKb2PK@`' @ $@(@  g,wB@i / @) ! @$z)p@$Xb@1h$ @\i @  @@(8TB@Xq2@ @Dh 8 p 8pP@($F ELF3S   FF@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&debug_frameI ahallgraphprototypeoactiona)ZzU2  >ngx S$@|  (( $40 TR A&(S/" ' !6K17 ` U!%!1. s(%6Db@$v/y%(y!$$z p\p`PPx"` ]aM `zXc$vZ YsB!MPPGy  %` @  @) #D Uh TH+p ,)'#@ b@0)h,!D3 (  @h@s 8@WK x@8XTB@xq D2@ D@SD@8 #x 8pP@K ELF3S   KK@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&debug_frameI ahallgraphprototypeoactiona)ZzU2  >ngx S$@|  (( $40 TRA&(S/" ' !6K17 ` U!%!p s(%6Dj@$v/y%(y!$$z q\p`@@x"` ]aM `zX$vZ YsB00MPPGy %`" @  @) #L Up TH+p ,)'#@ b@0)`,!<%3 (  @`@s 8@WK p@8XTB@xq D2@ L@SD@8 # 8pP@84P ( ELF3S # PP@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&debug_frameI ahallgraphprototypeoactiona)Zc2  >nfx" S$@|  (( $40 TRA&(q/" ' !75 ` U!R%!p Ss$%6Dr@$v/y%(y!$$z q\p`@@x"` ]aM `zX$vZzF`zYy0 0M`PGy /q%+ @ L B@) # UR THp ,)'#@ b@0)\,@ 8C ( h @X@(8WK h@8XTBx@xq D2@ S['h @8 q8 h@84V ( ELF3S # VV@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5constant08?rel<&debug_frameI ahallgraphprototypeoactiona)Zc2  >nfx" S$@|  (( $40 TRA&(q/" ' !75 ` U!R%!p Ss$%6Dr@$v/y%(y!$$z q\p`@@x"` ]aM `zX$vZzF`zYy0 0M`PGy /q%+ @ L B@) # UR THp ,)'#@ b@0)\,@ 8C ( h @X@(8WK h@8XTBx@xq D2@ S['h @8 q8 h@ppZ @ELF3S #(  Z Z@8@ .shstrtab.'ym0_shndx.nv.info.text._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5# reserved.0.debug_frame.relanv.callgraphprototyponstant00Smem.offset0 .0__nv_RSMEM_0_0_alias:@}2 *W! c  H&J.gfx 0 W$ @| (( 0,0 l)<##/ ' !73 OU!>%!Pa "p6>SD$7Qc{ !b"yv-Sny%p{Rd$|L/zTC p` xA$ a MCÀ{p""``a|@P@|Pr00py  MyopQGy /Oc@#d  B ) #\ UHTxh )p3@ b@0#@d @! h@  T @((82 Ti  ,*B@(@ qW8%  p 88 `@d HELFAS  Ch d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuvertext._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5#reserved.0 compat.debug_frame.relanv.callgraphprototyponstant0capmercH!8 e L f c8W ,Smem.offset0 .0__nv_RSMEM_0_0_aliasy>&! }Q !@u  DH&t gx 0W$ @| (( 0,0 l)<## NVIDIA Corp 6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d/" ' !73 U!>%!PJa  p6B Doac{Ib"ySny%bwr {@Rd$|L/ |p` OxR` Pa M Rppp"pCpCk ab|p|y( /MyopQGy /c  bAi@0 "R@ @B24 "BAT`  f982@< @d/ 4A [& %@%Z4"m*X  ފRc ++NL$'jx0H 05=      x-G  r  @81 # A Px . T#` ,) c@9@@[M|  @H p'@ ` p@ @M &D @: @T@  "(T x@|8Q)$+{ CVB@Y R@ "  %Cɀ    _@ @@ /@@ *@@!D+p  _b@/ q8(LI '88P@x H< // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ%13simple_memsetIfEEvPvT_m( .param .u64 .ptr .align 1E_C5_0,M?f32?1??2 ) { .reg .pred %p<2>;b32 %r<5(%f"64 %rd<7>; ld%rd2, [60];Ho1G 1G3H 2]; mov.ur1, %ctaid.xl2, %ntD3, %qad.lo.sE#4,J8r3; cvt.s64 dfr4; setp.lep"; @%p1 bra $L__BB0_2Ha.to.globalptd2; shl#5,i`2; add~X61T5; stK[!], %f1; v: ret; } `@x HELFAS  Ch x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuvertext._ZN5cudnn6fusion13simple_memsetIfEEvPvT_m93oshared5#reserved.0 compat.debug_frame.relanv.callgraphprototyponstant0capmercH!8 e L f c8W ,Smem.offset0 .0__nv_RSMEM_0_0_aliasy>&! }Q !@u  DH&t gx 0W$ @| (( 0,0 lQ<## NVIDIA Corp 6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1xq/z" ' !73 U!u !PJHa  b66 Doa{ r"ySny%bwry{@pd$| /x |p` OM R`p`"`C`Ck ab|P|@p@y /MyopQGy /P  A@0 "R@ @Av 4 "BTGp  982@@ d/P 4A p[& %@%Z4"m*X  ފRc ++NL$'jx0`05=      x-G  r  @81 # A Px . T#` ,) c@9@@[M|  @H p'@ ` p@ @M &D @: @T@  "(T x@|8Q)$+{ CVB@Y R@ "  %Cɀ    _@ @@ /@@_*@@!D+p  _b@/ q8(LI '88PU8<@2 ELF3S  @22@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3Eallgraphprototypehoactione:.U$}2  :.f`" /  ' !7t 0* @  >999%!@! .`hxP)`SsO%6 N  |Lg w\WmKP'H8 wP09A W@ W N WO '0[wN7 0 (8LL  gN O@W[ ` 0[@OwNO0[w0[G0S#'7B @` ,gB@ @) !h U$!j)p`t$Oo@)$ @( @ @H@(8TBX@`q2@ D  8 ( 8pP@< ELF3S  @<<@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3Eallgraphprototypehoactione:.U$}2  :.f`" /  ' !7t 0* @  >999%!@! .`hxP)`SsO%6 N  |Lg w\WmKP'H8 wP09A W W N WO '0[wN70[ (8LL  gN  O W[ 0[p  NwN@ 0[w0[G0S#'7cB @` ,gB@ @) !h U$!j)p`t$Oo@)$ @( @ @H@(8TBX@`q2@ D  8 ( 8pP@= ELF3S  @==@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3Eallgraphprototypehoactione:.U$}2  :.f`" /  ' !7t 0* @  >999%!@! .`hxP)`SsO%6 N  |Lg w\WmKP'H8 wP09A W W N WO '0[wN70[ (8LL  gN  O W[ 0[p  NwN@ 0[w0[G0S#'7cB @` ,gB@ @) !h U$!j)p`t$Oo@)$ @( @ @H@(8TBX@`q2@ D  8 ( 8pP@F ELF3S    FF@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3debug_frameV auallgraphprototypeoaction6$ }2  :=gx S$@|  (( $40 TRA&@(/# ' 62A7d1 [`   3999(%!@!1.`p SsG%6D2zSy&(y!$r 8 z]pbM @P'"x  1%b$zP"`$`A_ /%vX sixu$z@x| PPrR؏0q^p@0%vZPsQOMyPGyy /Qk%; 2@t @ 0B T@p ,)'#H'Wo@0l@, @0# / X @(@(8W 8@8XTBH@q D2@/i@S @W8 q 8pP@K ( ELF3S #  KK@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3debug_frameV auallgraphprototypeoaction6$}2  : 1fx" S$@|  (( $40 TRA&@(/# ' 62A7d `  mu999(%!@!Pt3 Ss?%6DAzy&(y!$r 8 z]pbM(`P'"x p 1%b$zP"`$`A_ /%vX sixu$z@x| PPrR؏0q^p@0%vZPsQOMyPGyqc'P=ڼ @# @  0G0 T@p ,)'#HWo@0l@, @   @ @(8W 0@8XTB@@, 2@/i@T h @Wt8 @q 8 h@P (ELF3S #  PP@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3debug_frameV auallgraphprototypeoaction6$}2  :=fx" S$@|  (( $40 TRA&D(/# ' !7\5 W`   /999$%!@!Pp{ sC%6Azy&(y!$r 8 z]pbM @P'"5t GzFA%b$z`"p$pA_ /%vX y` xu$z@x| PPrR؏0q^p@0%vZy OMy PGy /%G;@  @ @  0G0 T@p ,)'#HWo@0l@, @#@ /  @ ](8W 0@8XTB@@q D2@/i<T h @Wt8 @ 8 h@V (ELF3S #  VV@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB)constant0E&?relI3debug_frameV auallgraphprototypeoaction6$}2  :=fx" S$@|  (( $40 TRA&D(/# ' !7\5 W`   /999$%!@!Pp{ sC%6Azy&(y!$r 8 z]pbM @P'"x pzFA%b$z`"p$pA_ /%vX y` xu$z@x| PPrR؏0q^p@0%vZy OMy PGy /%x<@  @ @  0G0 T@p ,)'#HWo@0l@, @#@ /  @ ](8W 0@8XTB@@q D2@/i<T h @Wt8 @ 8 h@Z HELF3S #0 Z Z@8@ .shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB0 reserved.0.debug_frame.relanv.callgraphprototyponstant0%=Smem.offset0I .0__nv_RSMEM_0_0_alias(:$_K}2 vW! s   AH&qfx" 0S$@|  (( $,0 lR<#L#/G" ' !7t0 999u!@!P`a  Rp 6>SD$!P{uS"y &bz SyMpdr n8/ |pb M/y 'p#y%pa{p{p$| p$~`/%xOx 4%`CPp(y0@ `Px|0@a$r @rB؏ 6~ 00_0040p%xpy0 #My?@QGy /Wk@#  @.  @ 8k .T@h ,)p0`u4Wo@0@$ @7   "% 8@(|82/L$ T  SB@0  q8(  0p88 ``Z@d XHELFAS  @C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver,text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB0reserved.0 compat.debug_frame.relanv.callgraphprototyponstant0)capmerc|.E  )Y1s 8 SSmem.offset0? .0__nv_RSMEM_0_0_alias>Z(U.N}Q P!pu?  kH& fx" 0W$ @| (( 0,0 lR<#L# NVIDIA Corp 6`ptxasCuda 4ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1dq/J" ' !7 N999u!@!PJt8a  Pp 6B Do!{S"y&bwr 0  -pdr 8/ |0pb OM/py 2'p#y%pk {0pCp$| P$~`/%xx 4%{Pp(y0 Nx|0@a$r @rB؏ 6~ 0 0040p%xpy OMy?@QGy % *@;p  AU"B@yL0HA10 YA@ @9`R`(   q82@n C@</  4>   t%Z4"m*X  ފRc ++NL$'j `&p5=   8     x-\Cp h @$U3@ D #Xh .1h ,)` c@9@@[$ $D  @H p'H@O @l@L @_&i  @a @@  2OT 8!|Q)($ x ' C}B@R@ kq %   0$N 0@@H/@@ x@p!+p@  _@/( q8( p88P@x /H< // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ226reorder_block_scale_factorEPKjPjiiii( .param .u64 .ptr .align 1R$_P?_0,ZE1Z/32+2L83L84L85 ) { .reg .pred %p<2>;b32 %r<264 %rd<9>; ld%rd1, [r*=0];U2U-1U4T-3T5T-4T6T-s5]; mov1, %ctaid.y; shl"7,7,2, %tid.x; add.s8$3,/2; setp.gep\ 4; @%p1 bra $L__BB0_2; cvta.to.global32/d1428z; mad.lo9-2$(r36%107x71=610; mul.wide93d5,)405#nc:1R%rd6]U16X8414$72, 2; and1`6, 124Fr8/515 2Cm(19<2%5CU2Ct!!32: 8]"E12; M: ret; } `XX@x XHELFAS  @C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver,text._ZN5cudnn6fusion26reorder_block_scale_factorEPKjPjiiiiF@)osharedB0reserved.0 compat.debug_frame.relanv.callgraphprototyponstant0)capmerc|.E  )Y1s 8 SSmem.offset0? .0__nv_RSMEM_0_0_alias>Z(U.N}Q P!pu?  kH& fx" 0W$ @| (( 0,0 lR<#L# NVIDIA Corp 6`ptxasCuda 4ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1xq/J" ' !7 N999u!@!PJt8a  Pb 6f Do!{c"yN&bwr 0 -pdr8/ |0pb OM y'pp%pk { 0pCp$| $~ `/%xfx4%{Pp(y0 Nx|0@e$~`ar2؏ 0r $r D00`%xpy OMy?@QGy % *@;p  A"B@yL0H1A3 PP  09`R`)   q82@n0 ;/  4>   ')%Z4"m*X  ފRc ++NL$'j `&p5=  Q 8     x-Cp h @$U3@ D #Xh .1h ,)` c@9@@[$ D  @H p'H@O @l@L @_&i  @a @@  2OT 8!|Q)($ x  l}BDR@ kV %  O_$i 0@@H/@@_x@*!+p@  _@/( q8( p88PUp3@2 ELF3S  @@22@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! allgraphprototype@oactionh =}2 -vg` @/" ' !70*  U%!!.X@ s(%6 >  LWB'O' N70[@GmKb2P8H8)8'L 7L  "gX\$@ N-_C@ @")(t $b)p@$G@@h$ @4q @@ @X@(8yTBh@Tq2@ )@D( '8 X 8pP@< ELF3S  @@<<@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! allgraphprototype@oactionh =}2 -vg` @/" ' !70*  U%!!.X@ s(%6 >  LWB'O' N70[@GmKb2P8H8)8'L7L  "gX\$@ N-_C@ @")(t $b)p@$G@@h$ @4q @@ @X@(8yTBh@Tq2@ )@D( '8 X 8pP@= ELF3S  @@==@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! allgraphprototype@oactionh =}2 -vg` @/" ' !70*  U%!!.X@ s(%6 >  LWB'O' N70[@GmKb2P8H8)8'L7L  "gX\$@ N-_C@ @")(t $b)p@$G@@h$ @4q @@ @X@(8yTBh@Tq2@ )@D( '8 X 8pP@F ELF3S  ! FF@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! debug_frame. aMallgraphprototypepoactionhd Q}2  gx S$@|  (( $40 TRA&(S/w" ' !6K17 ` U%!!1.` s(%6D2zmy%(y!$$z!  z\pbM xp%vZ@FX!s.su!rqOs!#MyPGyc' @  @R)! #l xT p )'#@< G@01h, @#) /O @@)(8W P@|8XyTB`@tq D2@ l@S l @8  8 hpP@K ELF3S  ! KK@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! debug_frame. aMallgraphprototypepoactionhd Q}2  gx S$@|  (( $40 TRA&(S/w" ' !6K17 ` U%!!P s(%6D2zmy%(y!$$z!  z\pbM x`%vZ@FX!ssu!rqOsMyPGy  %" @  @R)! #t xT p )'#@< G@01`, @#) /O @8)(8W H@|8XyTBX@tq D2@ t@S l @8  8 hpP@P ( ELF3S # ! PP@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! debug_frame. aMallgraphprototypepoactionhd Z}2  fx" S$@|  (( $40 TRA& (q/" ' !75 ` U%!!P Ss$%6D2zmy%(y!$$z!  z\pbM 5tzF%vZPCXay/ yu!rpOy@ p#MyPGy /a{%W @ t j@R)! # xG zT p )'#@ *G@01\, @h#)O @0)(8W @@|8XyTBP@tq D2@ _ 'h @8 0q 8 h@V ( ELF3S # ! VV@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_iosharedconstant0?rel! debug_frame. aMallgraphprototypepoactionhd Z}2  fx" S$@|  (( $40 TRA& (q/" ' !75 ` U%!!P Ss$%6D2zmy%(y!$$z!  z\pbM x`zF%vZPCXay/ yu!rpOy@ p#MyPGy /a{%S @ t j@R)! # xG zT p )'#@ *G@01\, @h#)O @0)(8W @@|8XyTBP@tq D2@ _ 'h @8 0q 8 h@haZ @ ELF3S #(  Z Z@8@ .shstrtab.'ym_shndx.nv.info.text._Z6vecAddPfS_ioshared reserved.0.debug_frame.relanv.callgraphprototyponstant0&iSmem.offset0Y .0__nv_RSMEM_0_0_alias`: Ro#c2Uy!3s H&gx $0 W$ @| (( 0,0 lR <\/" ' !73 OUu!!Ppa "p6>SD$7aA{-S"y=Sny%p{0qd$|\/z a | pb M3À{""@{ab%xPy`   u/y u!rpOy MQGy /OHd@ @f)A #l LThh )p3@G@01dd @ Xi O  x)((82 $yT  B@$@ q8(  p 88 `@d xHELFAS  `C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuvertext._Z6vecAddPfS_iosharedreserved.0f compat.debug_frame.relanv.callgraphprototyponstant0capmerc n f1K, 8 Smem.offset0' .0__nv_RSMEM_0_0_alias.>=}Q !@u H& # g?x N0%S$@|  (( $,0 lR <\ NVIDIA Corp P6ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1dq/z" ' !73 Uu! !PJpa  p6B Do {qS"y,Sny%bwr0{@qd$|/ |b OM `{q"`Akc{ a%x`y .%x  uOy !rʏyx MQGy\ /bP   0A]@0 "BA@(@@0PR 0#Q  B990,082@ V8 /P 4A [& T %Z4"m*X  ފRc ++NL$'j0&5=    e  x-GCH h / @4k1 #L p T`h )8 c@9@@[l   @H p'@ f@@ @_   @@,@ / T P@(8Q/$Ti RB@Y R" k  %CB # ) WZt@ h@@@/@@ @ kW!+p8@  -@/H q8( p88P@x WH< // .version 8.8 .target sm_120 .address_size 64 A+ .visible .entry _Z6vecAddPfS_i( .param .u64 .ptr .align 1*_(?_0,212/32V2 ) { .reg .pred %p<2>;b32 %r<6f5f<4b64 %rd<8>; ld%rd1, [v=0];-2-1-r,s2]; mov'3, %ctaid.xl4, %ntD5, %qad.lo.sl#1,J8r5; setp.ge p 2; @%p1 bra $L__BB0_2; cvta.to.global?rd1ld2; mul.widn3rd5o4; add.s6/T5/nY%rd6]57/45C%rd75JcOt%f2; st- 6]53; : ret; } `@x xHELFAS  `C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuvertext._Z6vecAddPfS_iosharedreserved.0f compat.debug_frame.relanv.callgraphprototyponstant0capmerc n f1K, 8 Smem.offset0' .0__nv_RSMEM_0_0_alias.>=}Q !@u H& # g?x N0%S$@|  (( $,0 lR <\ NVIDIA Corp P6ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1xq/z" ' !73 Uu! !PJpa  b66 Do {c"y,Sny%bwr0{@qd$|/ |b OM `{q"`Akc{ a%x`y .%x  uOy !rʏyx MQGy\ /bP   0A]@0 "BA@(@@0PR 0#Q  B990,082@ V8 /P 4A [& T %Z4"m*X  ފRc ++NL$'j0&5=    e  x-GCH h / @4k1 #L p T`h )8 c@9@@[l   @H p'@ f@@ @_   @@,@ / T P@(8Q/$Ti RB@Y R" k  %CB # ) WZt@ h@@@/@@ @ kW!+p8@  -@/H q8( p88PUN@842 hELF3S  @H22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE3 , }2!=0F 00 = 3  , 3{   m2 < 3 < 3 F #   J   Q 3 T 3   4[  $F @Vs)c%6HW WWL`\,l#x;p h`lXPTH@8d04(04&xp @(3 @AH#h]<H9 G4@y @h@8K0x@8X=X@28Xp  8 88P@84< hELF3S  @H<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE3 , }2!=0F 00 = 3  , 3{   m2 < 3 < 3 F #   J   Q 3 T 3   4[  $F @Vs)c%6HW WWL`\,l#x;p h`lXPTH@8d04(04&xp @(3 @AH#h]<H9 G4@y @h@8K0x@8X=X@28Xp  8 88P@84= hELF3S  @H==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE3 , }2!=0F 00 = 3  , 3{   m2 < 3 < 3 F #   J   Q 3 T 3   4[  $F @Vs)c%6HW WWL`\,l#x;p h`lXPTH@8d04(04&xp @(3 @AH#h]<H9 G4@y @h@8K0x@8X=X@28Xp  8 88P@XQF ELF3S  @`FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE@ 9}2 = 000 = 3  , 3 {   m < 3  < 3  F #   J $ @  Q 3  T    4 [  .1 @Vs)c%6H WWL`\,l;xSp h`lXPTH@8d04(04x @ @ @AH#hKT`9  j|'@ t @@@8Xp@48X= p@2 `8 88P@XQK ELF3S  @`KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE@ 9}2 = 000 = 3  , 3 {   m < 3  < 3  F #   J $ @  Q 3  T    4 [  .1 @Vs)c%6H WWL`\,l;xSp h`lXPTH@8d04(04x @ @ @AH#hKT`9  j|'@ t @@@8Xp@48X= p@2 `8 88P@XQP ELF3S  @`PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE@ 9}2 = 000 = 3  , 3 {   m < 3  < 3  F #   J $ @  Q 3  T    4 [  .1 @Vs)c%6H WWL`\,l;xSp h`lXPTH@8d04(04x @ @ @AH#hKT`9  j|'@ t @@@8Xp@48X= p@2 `8 88P@XQV ELF3S  @`VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6\ `10sequal3seqE@ 9}2 = 000 = 3  , 3 {   m < 3  < 3  F #   J $ @  Q 3  T    4 [  .1 @Vs)c%6H WWL`\,l;xSp h`lXPTH@8d04(04x @ @ @AH#hKT`9  j|'@ t @@@8Xp@48X= p@2 `8 88P@@9Z HELF3S  h@Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_alias@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__Kruct_psa_from_dynamic_exts_values_tagE{90>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6_ `10sequal3seqE !   W2! sa t   0  $3 0  . 3    3 n  $ :x 5 # 7x @ 3   E 3  N 3  P 3  T 3  . @S) "  0  t t 4xp<h`XdPH@80(t$L" p @)-@ }`$dT@0(@y8S' @2  H@ 0P H8,  0p` @d X!HELFAS  x C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE590>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6_ `10sequdal3seqA e % e Q!@7u s    0  8$3 02 M 3  > #  / $    xT  3 _  3 d  3 m    xo   3 s"NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1d`S" ! #  LtL `x0|phddX0<PHt08l0\(th$$  $   $  <   4 J . 'z0H4 x  HDp  HD 0xT H4_ 0\0 dL Hm\ Ho\ Hs 00 -Xh\ @) `]$@PT  )C @09@@[$(( @VO @h @ @@G@( 8rT'@QA eOg@ H k@p@@@ @}p@@!. +p@a  @RL@@ @` x8,  pp^P`\@x H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];O0?allZ5__cpo5beginJiO3endgP/6cU/4cTrVrS/7cV/5cO0_GLOBAL__N_6ignoreJ19piecewiseorJ8in_placK20unreachable_sentinelsFv6ranges_4swapoW9iter_movVG o7advanH rL pJ nM qK o[_4nextW_4prevoXOdataoW/5cp[4 Xsp[_8distAA6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6# `10sequGal3seqE[1]; ` @x X!HELFAS  x C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias@_ZN48_INTERNAL_0b29a531_17_layer_norm_fwd_cu_f81153f84cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE590>allw/5__cpo5beginP7O3endN7/6c9iter_mov . o7advand/ Y3 W1 U4 X%2 ViB_4next >_4prevV?OdataV>/5cWBO4sizd@sWB08di &6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6_ `10sequdal3seqA e % e Q!@7u s    0  8$3 02 M 3  > #  / $    xT  3 _  3 d  3 m    xo   3 s"NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1x`S" ! #  LtL `x0|phddX0<PHt08l0\(th$$  $   $  <   4 J . 'z0H4 x  HDp  HD 0xT H4_ 0\0 dL Hm\ Ho\ Hs 00 -Xh\ @) `]$@PT  )C @09@@[$(( @VO @h @ @@G@( 8rT'@QA eOg@ H k@p@@@ @}p@@!. +p@a  @RL@@ @` x8,  pp^PU8O@HG2 ELF3S  @22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 W 3   3m  ' 3 ? 2 > 3x b 3 0 3  [  & 3  O 3   3z F @Vs)c%6HW WL\,l<x|p h`lXPTH@8d04(4&8p @(  @H#h]ع G@y @@8K0y8X=9@2X  8 88P@HG< ELF3S  @<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 W 3   3m  ' 3 ? 2 > 3x b 3 0 3  [  & 3  O 3   3z F @Vs)c%6HW WL\,l<x|p h`lXPTH@8d04(4&8p @(  @H#h]ع G@y @@8K0y8X=9@2X  8 88P@HG= ELF3S  @==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 W 3   3m  ' 3 ? 2 > 3x b 3 0 3  [  & 3  O 3   3z F @Vs)c%6HW WL\,l<x|p h`lXPTH@8d04(4&8p @(  @H#h]ع G@y @@8K0y8X=9@2X  8 88P@heF PELF3S  p@FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@heK PELF3S  p@KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@heP PELF3S  p@PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@heV PELF3S  p@VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@POZ ELF3S  @xZ Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_aliasM_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__Xruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_S!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE> !T > U2!3sa t   0 &$3 0   3 b  3 zH 5 3 : + # Hx R 3   3   I 3   3 y  ?  0   i 4 3   . @S) "  0  t t 4xp<h`XdPH@80(t$L" p @)0]@ 8`$dT5@0@y8S'=@2h  H@   H8,  0p` @d "HELFAS  "C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasM_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEBF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_S!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08diR 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequdal3seq  %  hQ!@4u s   Z 0  E$3 02 & 3  ;  t T 3  J 3 x  3 q < 3   3 h 0 3   ^   % 3  S 3 >"NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build ]_r/@er.35813241_0-arch smq -m 64 *1d`S`   LtL `x0|phddX0<PHt08l0\(th$$4  <  $      <   4 J . 4z 0H4 0 H Dp H 0Dx 0q4 H \0 hL H\ H 0\ H0 -Xh\ @)hq @`]$@,Ta  )C @09@@[DA$(( @Vh@h @ @x@G(@ 8rT'h@QX eOg@ H k@p@@@ @}p@@!. +p@(1  @RL@@ @! x8,  pp^Ppj@x pH< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];\0?allg5__cpo5beginWvO3endt]/6cb/4carcr`/7cc/5c[63_GLOBAL__N_<!6ignorexW19piecewiseW8in_placX20unreachable_sentinelSv6rangese_4swap|d9iter_mov}T o7advanU WY }^W {eZ ~lX |sh_4nextd_4prev|eOdata|d/5c}h4m es}h_8distN6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6`10sequal3seqE[1]; ` @x "HELFAS  "C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasM_ZN61_INTERNAL_3b2bc94d_30_layer_norm_fwd_infer_engine_cu_b6a9f1654cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEBF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_S!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08diR 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequdal3seq  %  hQ!@4u s   Z 0  E$3 02 & 3  ;  t T 3  J 3 x  3 q < 3   3 h 0 3   ^   % 3  S 3 >"NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build ]_r/@er.35813241_0-arch smq -m 64 *1x`S`   LtL `x0|phddX0<PHt08l0\(th$$4  <  $      <   4 J . 4z 0H4 0 H Dp H 0Dx 0q4 H \0 hL H\ H 0\ H0 -Xh\ @)hq @`]$@,Ta  )C @09@@[DA$(( @Vh@h @ @x@G(@ 8rT'h@QX eOg@ H k@p@@@ @}p@@!. +p@(1  @RL@@ @! x8,  pp^PU8O@HG2 ELF3S  @22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 W 3   3m  ' 3 ? 2 > 3x b 3 0 3  [  & 3  O 3   3z F @Vs)c%6HW WL\,l<x|p h`lXPTH@8d04(4&8p @(  @H#h]ع G@y @@8K0y8X=9@2X  8 88P@HG< ELF3S  @<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 W 3   3m  ' 3 ? 2 > 3x b 3 0 3  [  & 3  O 3   3z F @Vs)c%6HW WL\,l<x|p h`lXPTH@8d04(4&8p @(  @H#h]ع G@y @@8K0y8X=9@2X  8 88P@HG= ELF3S  @==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 W 3   3m  ' 3 ? 2 > 3x b 3 0 3  [  & 3  O 3   3z F @Vs)c%6HW WL\,l<x|p h`lXPTH@8d04(4&8p @(  @H#h]ع G@y @@8K0y8X=9@2X  8 88P@heF PELF3S  p@FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@heK PELF3S  p@KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@heP PELF3S  p@PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@heV PELF3S  p@VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+M_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_P!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di* 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9}2 = 000 W 3   3 m  ' 3  ?   > 3 x b 3  0 3   [ $  & 3  O 3   3 z . @Vs)c%6HW WWL\,l<x|p h`lXPTH@8d0(4 8 @   @H#hKT  j<'@ H @yG8Xp @48X= @2 X `8 88P@POZ ELF3S  @xZ Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_aliasM_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__Xruct_psa_from_dynamic_exts_values_tagEF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_S!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08di 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE> !T > U2!3sa t   0 &$3 0   3 b  3 zH 5 3 : + # Hx R 3   3   I 3   3 y  ?  0   i 4 3   . @S) "  0  t t 4xp<h`XdPH@80(t$L" p @)0]@ 8`$dT5@0@y8S'=@2h  H@   H8,  0p` @d "HELFAS  "C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasM_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEBF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_S!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08diR 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequdal3seq  %  hQ!@4u s   Z 0  E$3 02 & 3  ;  t T 3  J 3 x  3 q < 3   3 h 0 3   ^   % 3  S 3 >"NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build ]_r/@er.35813241_0-arch smq -m 64 *1d`S`   LtL `x0|phddX0<PHt08l0\(th$$4  <  $      <   4 J . 4z 0H4 0 H Dp H 0Dx 0q4 H \0 hL H\ H 0\ H0 -Xh\ @)hq @`]$@,Ta  )C @09@@[DA$(( @Vh@h @ @x@G(@ 8rT'h@QX eOg@ H k@p@@@ @}p@@!. +p@(1  @RL@@ @! x8,  pp^Ppj@x pH< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];\0?allg5__cpo5beginWvO3endt]/6cb/4carcr`/7cc/5c[63_GLOBAL__N_<!6ignorexW19piecewiseW8in_placX20unreachable_sentinelSv6rangese_4swap|d9iter_mov}T o7advanU WY }^W {eZ ~lX |sh_4nextd_4prev|eOdata|d/5c}h4m es}h_8distN6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6`10sequal3seqE[1]; ` @x "HELFAS  "C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasM_ZN61_INTERNAL_1395949a_30_layer_norm_fwd_train_engine_cu_9199a8184cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEBF0>all<5__cpo5begin]DO3end[D/6cI/4cHrJrG/7cJ/5cB63_GLOBAL__N_S!6ignore>19piecewisef>8in_plac?20unreachable_sentinelg:v6ranges_4swapcK9iter_mov2; o7advan< f@ d> bA e? c\O_4nextYK_4prevcLOdatacK/5cdOO4sizMsdO08diR 36thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequdal3seq  %  hQ!@4u s   Z 0  E$3 02 & 3  ;  t T 3  J 3 x  3 q < 3   3 h 0 3   ^   % 3  S 3 >"NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build ]_r/@er.35813241_0-arch smq -m 64 *1x`S`   LtL `x0|phddX0<PHt08l0\(th$$4  <  $      <   4 J . 4z 0H4 0 H Dp H 0Dx 0q4 H \0 hL H\ H 0\ H0 -Xh\ @)hq @`]$@,Ta  )C @09@@[DA$(( @Vh@h @ @x@G(@ 8rT'h@QX eOg@ H k@p@@@ @}p@@!. +p@(1  @RL@@ @! x8,  pp^PUN@@92 @ELF3S  `@ 22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE @0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08dii i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE ,}2 =0 00 K 3  O #   S   " D #7  3d " 3 ~ : 3  V   3 n - 3 F @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4&p @(  @8H#h]  G4@y @@@8K0P9809 x2XH  8 88P@@9< @ELF3S  `@ <<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE @0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08dii i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE ,}2 =0 00 K 3  O #   S   " D #7  3d " 3 ~ : 3  V   3 n - 3 F @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4&p @(  @8H#h]  G4@y @@@8K0P9809 x2XH  8 88P@@9= @ELF3S  `@ ==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE @0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08dii i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE ,}2 =0 00 K 3  O #   S   " D #7  3d " 3 ~ : 3  V   3 n - 3 F @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4&p @(  @8H#h]  G4@y @@@8K0P9809 x2XH  8 88P@`\F ELF3S  @8FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08div i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE 9}2 = 000 K 3  O #   S     D # O  3 d " 3 ~ : 3   V     n - 3  .  @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4 @   @8H#hKT8  j'@ t @X@8Xph948 Hy x2h `8 88P@`\K ELF3S  @8KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08div i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE 9}2 = 000 K 3  O #   S     D # O  3 d " 3 ~ : 3   V     n - 3  .  @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4 @   @8H#hKT8  j'@ t @X@8Xph948 Hy x2h `8 88P@`\P ELF3S  @8PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08div i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE 9}2 = 000 K 3  O #   S     D # O  3 d " 3 ~ : 3   V     n - 3  .  @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4 @   @8H#hKT8  j'@ t @X@8Xph948 Hy x2h `8 88P@`\V ELF3S  @8VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+G_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08div i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6. `10sequ'al3seqE 9}2 = 000 K 3  O #   S     D # O  3 d " 3 ~ : 3   V     n - 3  .  @Vs)c%6HW WWL\,<x|p h`lXPTH@8d04(4 @   @8H#hKT8  j'@ t @X@8Xph948 Hy x2h `8 88P@@@Z  ELF3S  @@Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_aliasG_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__Rruct_psa_from_dynamic_exts_values_tagE@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08di i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system61 `10sequ'al3seqE !   W2! sa t   0  $3 0  J 3   P 3  V $ :H C  x U 3   3 u  0    L 3   3 d  3  Z . @S) "  0  t t 4xp<h`XdPH@80(t$L"@ p @)vE@ `$dTD@0y8S'%@2  H@ p5H8,  0p` @d 0"HELFAS  P!C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasG_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ ruct_psa_from_dynamic_exts_values_tagE<@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08di i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system61 `10sequ'dal3seq > % > @Q@6u s   0  ?$3 02  3 i   o  3 u  3 bx  3 t 6 3   O 3   3 kh % 3   > 3 "NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1d`S" `   LtL `x0|phddX0<PHt08l0\(th$$4   $   4   <   4 J . .z 0H4 0i H oD Hu 0Dbx Ht4 H\0L H 0\k H\"> H `0 -Xh\ @)@ i`]$@PT )C @09@@[$(( @VO @h @ @@G(@ 8rT'@Q eOg@  k@p@@@ @}p@@[p@p  @RL@@ @8! x8,  pp^Phc@x H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];V0?alla5__cpo5beginQpO3endnW/6c\/4c[r]rZ/7c]/5cV7_GLOBAL__N_6ignoreHQ19piecewiseyQ8in_placR20unreachable_sentinelzMv6ranges_4swapv^9iter_movkN o7advanO yS wQ uT x R vIb_4next^_4prevv_Odatav^/5cwb4 _swb_8distH6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE[1]; ` @x 0"HELFAS  P!C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasG_ZN55_INTERNAL_5dfcdfaf_24_layer_norm_bwd_engine_cu_68465eb34cuda3std3__48__detail44__ ruct_psa_from_dynamic_exts_values_tagE<@0>all~65__cpo5beginW>O3endU>/6cC/4cBrDrA/7cD/5c=7_GLOBAL__N_6ignore819piecewise`88in_plac920unreachable_sentinela4v6rangesa_4swap]E9iter_mov 5 o7advan6 `: ^8 \; _9 ]8I_4next5E_4prev]FOdata]E/5c^IO4sizGs^I08di i-6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system61 `10sequ'dal3seq > % > @Q@6u s   0  ?$3 02  3 i   o  3 u  3 bx  3 t 6 3   O 3   3 kh % 3   > 3 "NVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1x`S" `   LtL `x0|phddX0<PHt08l0\(th$$4   $   4   <   4 J . .z 0H4 0i H oD Hu 0Dbx Ht4 H\0L H 0\k H\"> H `0 -Xh\ @)@ i`]$@PT )C @09@@[$(( @VO @h @ @@G(@ 8rT'@Q eOg@  k@p@@@ @}p@@[p@p  @RL@@ @8! x8,  pp^PUN@872 ELF3S  @22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 C 3  ; 3  3 2 ` 3  3i  3|  . 3 @ 3  K 3  X 3?  e F @Vs)c%6H WWL\,l{xp h`WXPTH@8d04(4&xp @( @XAH#h]<9 G4@y @@8K0@8X=@2X  8 88P@87< ELF3S  @<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 C 3  ; 3  3 2 ` 3  3i  3|  . 3 @ 3  K 3  X 3?  e F @Vs)c%6H WWL\,l{xp h`WXPTH@8d04(4&xp @( @XAH#h]<9 G4@y @@8K0@8X=@2X  8 88P@87= ELF3S  @==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE ,}2=0 00 C 3  ; 3  3 2 ` 3  3i  3|  . 3 @ 3  K 3  X 3?  e F @Vs)c%6H WWL\,l{xp h`WXPTH@8d04(4&xp @( @XAH#h]<9 G4@y @@8K0@8X=@2X  8 88P@XUF ELF3S  @@FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9 }2 "= 000 C 3  ; #    3  ` 3   3 i  3 |7   . 3  @ 3  K 3  X 3  r . @Vs)c%6HW WWL\,<xp h`WXPTH@8d0(4 @  @xAH#hKT9  j'@ t @@@8Xp@48X= @2( `8 88P@XUK ELF3S  @@KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9 }2 "= 000 C 3  ; #    3  ` 3   3 i  3 |7   . 3  @ 3  K 3  X 3  r . @Vs)c%6HW WWL\,<xp h`WXPTH@8d0(4 @  @xAH#hKT9  j'@ t @@@8Xp@48X= @2( `8 88P@XUP ELF3S  @@PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9 }2 "= 000 C 3  ; #    3  ` 3   3 i  3 |7   . 3  @ 3  K 3  X 3  r . @Vs)c%6HW WWL\,<xp h`WXPTH@8d0(4 @  @xAH#hKT9  j'@ t @@@8Xp@48X= @2( `8 88P@XUV ELF3S  @@VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diS '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE 9 }2 "= 000 C 3  ; #    3  ` 3   3 i  3 |7   . 3  @ 3  K 3  X 3  r . @Vs)c%6HW WWL\,<xp h`WXPTH@8d0(4 @  @xAH#hKT9  j'@ t @@@8Xp@48X= @2( `8 88P@@=Z ELF3S  @@Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_alias _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__Nruct_psa_from_dynamic_exts_values_tagE~<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diV '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequal3seqE !  S2! sa t   0v  $3 0  : 3   4 3  . $ :   x_  3 s ) 3  5 # W8  E  @ Q 3   #  . @S) "  0  t t 4xp<h`XdPH@80(t$L"@ p @)-@ `$dT`D@0@y8S'P%@20  H@ p H8,  0p` @d !HELFAS  CX d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE8<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diV '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequdal3seq  %Z  2  Q!@:u s  l $ 0  ;$3 02  3 Y S 3 D M $ x .  x~ 4 3  H 3  T 3   # hd  3 p ' 3 "NVIDIA Corp!$P6`ptxasCuda #ilation tools, release 12.9, V.41Build 7_r/@er.35813241_0-arch smq -m 64 *1d`S" `  LtL `x0|phddX0<PHt08l0\(th$$  4 < $    $ <   4 J . *z 04 0Y  `D  HD 0x~ H4 0\0 L H\ 0d H\p H0 -Xh#\  @)2@ i`]$@PTp )C @09@@[$(( @V8@h @ @H@G(h@ 8rT'8@Q( eOg@  k@p@@@ @}p@@!. +p@a  @RL@@ @ x8,  pp^P`^@x :H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN51_INTERNAL_95451fab_20_instance_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];R0?all]5__cpo5beginMlO3endjS/6cX/4cWrYrV/7cY/5cR3_GLOBAL__N_6ignore(M19piecewiseuM8in_placN20unreachable_sentinelvIv6ranges_4swaprZ9iter_mov_J @7advuZO M qP tN r-^_4nextZ_4prevr[OdatarZ/5cs^4U [ss^28di @6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6} `10sequwal3seqE[1]; ` @x !HELFAS  CX x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN51_INTERNAL_95451fab_20_i"ce_norm_fwd_cu_c7ff5bde4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE8<0>allz25__cpo5beginS:O3endQ:/6c?/4c>r@r=/7c@/5c93_GLOBAL__N_6ignorey419piecewise\48in_plac520unreachable_sentinel]0v6ranges-_4swapYA9iter_mov1 @7adv\A@6 G4 XN7 [U5 Y ~E_4nextA_4prevYBOdataYA/5cZEO4sizB/5sZE28diV '6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequdal3seq  %Z  2  Q!@:u s  l $ 0  ;$3 02  3 Y S 3 D M $ x .  x~ 4 3  H 3  T 3   # hd  3 p ' 3 "NVIDIA Corp!$P6`ptxasCuda #ilation tools, release 12.9, V.41Build 7_r/@er.35813241_0-arch smq -m 64 *1x`S" `  LtL `x0|phddX0<PHt08l0\(th$$  4 < $    $ <   4 J . *z 04 0Y  `D  HD 0x~ H4 0\0 L H\ 0d H\p H0 -Xh#\  @)2@ i`]$@PTp )C @09@@[$(( @V8@h @ @H@G(h@ 8rT'8@Q( eOg@  k@p@@@ @}p@@!. +p@a  @RL@@ @ x8,  pp^PU8O@HC2 XELF3S  x@822@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE# , }2!=0600 ] 3   3|  < 3 ] 2 e 3 , 3 f 3  2 3 #8k  7 @   j";    F @Vs)c%6HW WWp@L\,l x|p h`lXPTH@8d04(P4&xp @ # @8H#h]<8 G@y @X@8K0h@8X=H@2(X`  8 88P@HC< XELF3S  x@8<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE# , }2!=0600 ] 3   3|  < 3 ] 2 e 3 , 3 f 3  2 3 #8k  7 @   j";    F @Vs)c%6HW WWp@L\,l x|p h`lXPTH@8d04(P4&xp @ # @8H#h]<8 G@y @X@8K0h@8X=H@2(X`  8 88P@HC= XELF3S  x@8==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE# , }2!=0600 ] 3   3|  < 3 ] 2 e 3 , 3 f 3  2 3 #8k  7 @   j";    F @Vs)c%6HW WWp@L\,l x|p h`lXPTH@8d04(P4&xp @ # @8H#h]<8 G@y @X@8K0h@8X=H@2(X`  8 88P@heF ELF3S  @PFF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@heK ELF3S  @PKK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@hbP ELF3S  CP P@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@heV ELF3S  @PVV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@PMZ 8ELF3S  X@Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_alias _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__[ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_t$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6? `10sequal3seqE !   W2! sa t   0 )$3 0   3 ng . 3 H P 3 : O 3 x  3  P 3   3  S 3   $ 3  W   $ 3  q . @S) "  0  t t 4xp<h`XdPH@80(t$L"p p @)]@ `$dT5t@0y8S'=@2  H@ @ H8,  0p` @d H#HELFAS  h"C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_t$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6? `10sequdal3seq! U% U Q!@7u s   0  H$3 02 / 3  M    .o0 n 3 x 4 3   # _ ? 3  3 r  C 3   3 v  C 3 PNVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1d`S`   LtL `x0|phddX0<PHt08l0\(th$$   4   $    <   4 J . 7z@0H4 ` HD 0@  HDx 0 04o 0\0 L 0r\ H 0v\ H 0 -Xh\ @)q `]$@PTY )C @09@@[A$(( @VO @h @ @@G(@ 8rT'ȁ@Q eOg@ H k  p@@@ @}p@@!. +p@1  RL@@ @P" x8,  pp^Ppl@x H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN64_INTERNAL_0e6c2186_33_instance_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];_0?allj5__cpo5beginZyO3endw`/6ce/4cdrfrc/7cf/5c^66_GLOBAL__N_]$6ignoreZ19piecewiseZ8in_plac[20unreachable_sentinelVv6ranges_4swapg9iter_movW @7advg\ Z ~] [ k_4nextg_4prevhOdatag/5ck4 hsk28diM6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6`10sequGal3seqE[1]; ` @x H#HELFAS  h"C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN64_INTERNAL_0e6c2186_33_i/ce_norm_fwd_infer_engine_cu_fd9286044cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_t$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6? `10sequdal3seq! U% U Q!@7u s   0  H$3 02 / 3  M    .o0 n 3 x 4 3   # _ ? 3  3 r  C 3   3 v  C 3 PNVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1x`S`   LtL `x0|phddX0<PHt08l0\(th$$   4   $    <   4 J . 7z@0H4 ` HD 0@  HDx 0 04o 0\0 L 0r\ H 0v\ H 0 -Xh\ @)q `]$@PTY )C @09@@[A$(( @VO @h @ @@G(@ 8rT'ȁ@Q eOg@ H k  p@@@ @}p@@!. +p@1  RL@@ @P" x8,  pp^PU8O@HC2 XELF3S  x@822@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE# , }2!=0600 ] 3   3|  < 3 ] 2 e 3 , 3 f 3  2 3 #8k  7 @   j";    F @Vs)c%6HW WWp@L\,l x|p h`lXPTH@8d04(P4&xp @ # @8H#h]<8 G@y @X@8K0h@8X=H@2(X`  8 88P@HC< XELF3S  x@8<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE# , }2!=0600 ] 3   3|  < 3 ] 2 e 3 , 3 f 3  2 3 #8k  7 @   j";    F @Vs)c%6HW WWp@L\,l x|p h`lXPTH@8d04(P4&xp @ # @8H#h]<8 G@y @X@8K0h@8X=H@2(X`  8 88P@HC= XELF3S  x@8==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE# , }2!=0600 ] 3   3|  < 3 ] 2 e 3 , 3 f 3  2 3 #8k  7 @   j";    F @Vs)c%6HW WWp@L\,l x|p h`lXPTH@8d04(P4&xp @ # @8H#h]<8 G@y @X@8K0h@8X=H@2(X`  8 88P@heF ELF3S  @PFF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@heK ELF3S  @PKK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@hbP ELF3S  CP P@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@heV ELF3S  @PVV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE I0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_q$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6< `10sequal3seqE0 9}2 = 000 ] 3   3 |  < 3  ]   e 3  , 3  f 3   2 3 0#0/8k  7  @   j ; #   .! @Vs)c%6HW Wp@L\, l#x|p h`lXPTH@8d04(P4x @ 0 @H#hKTP  j|'@ H @p@@8Xp@48X= `@2 `8 88P@PMZ 8ELF3S  X@Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_alias _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__[ruct_psa_from_dynamic_exts_values_tagEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_t$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6? `10sequal3seqE !   W2! sa t   0 )$3 0   3 ng . 3 H P 3 : O 3 x  3  P 3   3  S 3   $ 3  W   $ 3  q . @S) "  0  t t 4xp<h`XdPH@80(t$L"p p @)]@ `$dT5t@0y8S'=@2  H@ @ H8,  0p` @d H#HELFAS  h"C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_t$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6? `10sequdal3seq! U% U Q!@7u s   0  H$3 02 / 3  M    .o0 n 3 x 4 3   # _ ? 3  3 r  C 3   3 v  C 3 PNVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1d`S`   LtL `x0|phddX0<PHt08l0\(th$$   4   $    <   4 J . 7z@0H4 ` HD 0@  HDx 0 04o 0\0 L 0r\ H 0v\ H 0 -Xh\ @)q `]$@PTY )C @09@@[A$(( @VO @h @ @@G(@ 8rT'ȁ@Q eOg@ H k  p@@@ @}p@@!. +p@1  RL@@ @P" x8,  pp^Ppl@x H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN64_INTERNAL_26d27c51_33_instance_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];_0?allj5__cpo5beginZyO3endw`/6ce/4cdrfrc/7cf/5c^66_GLOBAL__N_]$6ignoreZ19piecewiseZ8in_plac[20unreachable_sentinelVv6ranges_4swapg9iter_movW @7advg\ Z ~] [ k_4nextg_4prevhOdatag/5ck4 hsk28diM6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6`10sequGal3seqE[1]; ` @x H#HELFAS  h"C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN64_INTERNAL_26d27c51_33_i/ce_norm_fwd_train_engine_cu_daa2df794cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEEI0>all?5__cpo5begin`GO3end^G/6cL/4cKrMrJ/7cM/5cE66_GLOBAL__N_t$6ignoreA19piecewise%iA8in_placB20unreachable_sentinelj=v6ranges_4swapfN9iter_mov;> @7adviNC A eD h%B fnR_4nextkN_4prevfOOdatafN/5cgRO4sizmO/5sgR28di 46thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6? `10sequdal3seq! U% U Q!@7u s   0  H$3 02 / 3  M    .o0 n 3 x 4 3   # _ ? 3  3 r  C 3   3 v  C 3 PNVIDIA Corp!$P6`ptxasCuda ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1x`S`   LtL `x0|phddX0<PHt08l0\(th$$   4   $    <   4 J . 7z@0H4 ` HD 0@  HDx 0 04o 0\0 L 0r\ H 0v\ H 0 -Xh\ @)q `]$@PTY )C @09@@[A$(( @VO @h @ @@G(@ 8rT'ȁ@Q eOg@ H k  p@@@ @}p@@!. +p@1  RL@@ @P" x8,  pp^PUN@@<2 ELF3S  @22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE C0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEi , }2#=0~ 00 Q 3   3^    3kH ! 2  3nx 2 3 [ 3   |  A 3 4b 0 # 3 > ZF @Vs)c%6HW WH0L\,K<cx|p h`lXPTH@8d04(`4&p @(i  @8H#h] G@y @@8K0989 x2pX  8 88P@@<< ELF3S  @<<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE C0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEi , }2#=0~ 00 Q 3   3^    3kH ! 2  3nx 2 3 [ 3   |  A 3 4b 0 # 3 > ZF @Vs)c%6HW WH0L\,K<cx|p h`lXPTH@8d04(`4&p @(i  @8H#h] G@y @@8K0989 x2pX  8 88P@@<= ELF3S  @==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE C0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEi , }2#=0~ 00 Q 3   3^    3kH ! 2  3nx 2 3 [ 3   |  A 3 4b 0 # 3 > ZF @Vs)c%6HW WH0L\,K<cx|p h`lXPTH@8d04(`4&p @(i  @8H#h] G@y @@8K0989 x2pX  8 88P@``F ELF3S  @FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEC0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEv 9 }2 != 000 Q 3   3 ^   3 k !    3 nx 2 3  [ 3   $ x|w  A 3  4 b0 # 3  K .g @Vs)c%6HW WH0L\,Sl<{x|p h`lXPTH@8d0(`4 @ v  @PH#hKT  j<'@ H @@8Xp948 y x2 `8 88P@``K ELF3S  @KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEC0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEv 9 }2 != 000 Q 3   3 ^   3 k !    3 nx 2 3  [ 3   $ x|w  A 3  4 b0 # 3  K .g @Vs)c%6HW WH0L\,Sl<{x|p h`lXPTH@8d0(`4 @ v  @PH#hKT  j<'@ H @@8Xp948 y x2 `8 88P@``P ELF3S  @PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEC0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEv 9 }2 != 000 Q 3   3 ^   3 k !    3 nx 2 3  [ 3   $ x|w  A 3  4 b0 # 3  K .g @Vs)c%6HW WH0L\,Sl<{x|p h`lXPTH@8d0(`4 @ v  @PH#hKT  j<'@ H @@8Xp948 y x2 `8 88P@``V ELF3S  @VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+ _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagEC0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_/6ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di% .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqEv 9 }2 != 000 Q 3   3 ^   3 k !    3 nx 2 3  [ 3   $ x|w  A 3  4 b0 # 3  K .g @Vs)c%6HW WH0L\,Sl<{x|p h`lXPTH@8d0(`4 @ v  @PH#hKT  j<'@ H @@8Xp948 y x2 `8 88P@PIZ ELF3S  @ Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_alias _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__Uruct_psa_from_dynamic_exts_values_tagEC0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_26ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di( .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWal3seqE !   W2! a #t   0V #$3 0  V 3   3 eH  3 t:  # GHjx % 3  M 3    3 o 4 3  T 3   3 v . @S) "     t t 4xp<h`XdPH@80(t$L" p @)E@ `$dT@5@0`@y8S'0=@2  H@   H8,  0p` @d "HELFAS  !C0 d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE?C0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_26ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di( .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWdal3seqm  %3  @Q@9u s  D 0  B$3 02  3 u )   9 3 P & 3 x D 3   3 l  , 3  S 3    s  4 3 "NVIDIA Corp!$P6`ptxasCuda "ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1d`S" `   LtL `x0|phddX0<PHt08l0\(th$$ 4  $   4   <   4 J . 1z 0H4 0u H Dp H 0Dx H4 0 \0 0L H\ 0s\ H 00 -Xh\ @) q i`]$@PTHa  )C @09@@[$(( @VO h @ @ @G(@@ 8rT'@Q eOg@ H k@p@@@ @}p@@!. +p@б  @RL@@ @! x8,  pp^Phf@x H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN58_INTERNAL_ac48ca15_27_instance_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__construct_psa_from_dynamic_exts_values_tagE[1];Y0?alld5__cpo5begin TsO3endqZ/6c_/4c^r`r]/7c`/5cX60_GLOBAL__N_6ignore`T19piecewise|T8in_placU20unreachable_sentinel}Pv6rangesA_4swapya9iter_movtQ @7adv|a'V .T x5W {<U y^e_4nexta_4prevybOdataya/5cze4 bsze28di G6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6O`10sequal3seqE[1]; ` @x "HELFAS  !C0 x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_alias _ZN58_INTERNAL_ac48ca15_27_i)ce_norm_bwd_engine_cu_f9376c6b4cuda3std3__48__detail44__ruct_psa_from_dynamic_exts_values_tagE?C0>all95__cpo5beginZAO3endXA/6cF/4cErGrD/7cG/5c?60_GLOBAL__N_26ignore;19piecewisec;8in_plac<20unreachable_sentineld7v6ranges_4swap`H9iter_mov)8 @7advcH= ; _> b< `JL_4nextGH_4prev`IOdata`H/5caLO4siz+I/5saL28di( .6thrust61THRUST_200802_SM_500_6 10_700_750_800_860_900_10200_NS6system6 `10sequWdal3seqm  %3  @Q@9u s  D 0  B$3 02  3 u )   9 3 P & 3 x D 3   3 l  , 3  S 3    s  4 3 "NVIDIA Corp!$P6`ptxasCuda "ilation tools, release 12.9, V.41Build _r/@er.35813241_0-arch smq -m 64 *1x`S" `   LtL `x0|phddX0<PHt08l0\(th$$ 4  $   4   <   4 J . 1z 0H4 0u H Dp H 0Dx H4 0 \0 0L H\ 0s\ H 00 -Xh\ @) q i`]$@PTHa  )C @09@@[$(( @VO h @ @ @G(@@ 8rT'@Q eOg@ H k@p@@@ @}p@@!. +p@б  @RL@@ @! x8,  pp^PU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU/@2 ELF3S   3! 22@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.y+ }2#p=B0m00 > 3z P z  3 p N^j. @Vs)c%6HW @W 80( ,4}L8 @ y@H hq@`]tp9y @@8K80@@8X=P@2  O 8 88P@< ELF3S   3! <<@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.y+ }2#p=B0m00 > 3z P z  3 p N^j. @Vs)c%6HW @W 80( ,4}L8 @ y@H hq@`]tp9y @@8K80@@8X=P@2  O 8 88P@= ELF3S   3! ==@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.y+ }2#p=B0m00 > 3z P z  3 p N^j. @Vs)c%6HW @W 80( ,4}L8 @ y@H hq@`]tp9y @@8K80@@8X=P@2  O 8 88P@F H ELF3S  h 3! FF@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE,;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.8 }2 !p= Z000 > 3 J P #    pH [w @Vs)c%6HW @W 80( L4DyL8 @ @`#hq`KTK ,jp@$h @@ 8Xxp@48X= \P@2 '  @P 8 88P@K H ELF3S  h 3! KK@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE,;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.8 }2 !p= Z000 > 3 J P #    pH [w @Vs)c%6HW @W 80( L4DyL8 @ @`#hq`KTK ,jp@$h @@ 8Xxp@48X= \P@2 '  @P 8 88P@P H ELF3S  h 3! PP@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE,;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.8 }2 !p= Z000 > 3 J P #    pH [w @Vs)c%6HW @W 80( L4DyL8 @ @`#hq`KTK ,jp@$h @@ 8Xxp@48X= \P@2 '  @P 8 88P@V H ELF3S  h 3! VV@8@ .shstrtab.'ym_shndx.nv.info aglobal constant4.debug_frame.relallgraphprototype1oaction+L_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE,;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.8 }2 !p= Z000 > 3 J P #    pH [w @Vs)c%6HW @W 80( L4DyL8 @ @`#hq`KTK ,jp@$h @@ 8Xxp@48X= \P@2 '  @P 8 88P@@:Z 0 ELF3S  P @Z Z@8@ .shstrtab.'ym_shndx.nv.info shared.reserved.0aglobal constant4t.debug_frame.rel"A.pica8allgraphprototype"Smem.offset0U__nv_0BMEM_0_0_aliasL_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_lOruct=8in_placeY9v6ranges3_4swapbJ9iter_movK`7advan.  W2! ca u p  $0f 5$3 0 H 3 z   a * 3   @SH) @ 8 0(  3t\$\t @)q$ K1dTpOp@($0@88S)P2  H@ 48 8,  0'`@d HELFAS  C d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasL_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreEQ;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_&Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movKu7advanck%C Q!@9% s u L 0  T$3 0  $ g '    I 3  BNVIDIA Corp!XP6`ptxasCuda Bilation tools, release 12.9, V.41Build 6_r/@er.35813241_0-arch sm_100 -m 64 *1d`SH pk 80 (f  $4A@@@@@@@ @@ 4 .  C?0800g040H-xH\ @) 1Tx) O)@ @9@@[$(( @p3@@ * @< @P@X@p@8rT =P@Q@ eOg@ G @ k@p@@@}p@@.p@5 RL@@ @ W8,  ppJP86@x /H< // .version 8.8 .target sm_120 .address_size 64 .global .align 1 .b8 _ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreE[1];Q5__cpo5beginu\O3ends\/6ca/4cY19piecewise_constructhV8in_placSv6ranges_4swap{c9iter_movd7advanceE[1]; `@x HELFAS  C x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0aglobal constant4mpat.debug_frame.rel-A.picaCallgraphQprototypeJmerc\ Oeh jA AySmem.offset0U__nv_0BMEM_0_0_aliasL_ZN60_INTERNAL_d9d6c48e_29_wgrad1d_c1_k1_nhwc_kernels_cu_81f241c04cuda3std3__462_GLOBAL__N_M 6ignoreEQ;5__cpo5beginE\BO3endZC/6cH/4c@19piecewise_&Oruct=8in_placeY9v6ranges3_4swapbJ9iter_movKu7advanck%C Q!@9% s u L 0  T$3 0  $ g '    I 3  BNVIDIA Corp!XP6`ptxasCuda Bilation tools, release 12.9, V.41Build 6_r/@er.35813241_0-arch sm_120 -m 64 *1x`SH pk 80 (f  $4A@@@@@@@ @@ 4 .  C?0800g040H-xH\ @) 1Tx) O)@ @9@@[$(( @p3@@ * @< @P@X@p@8rT =P@Q@ eOg@ G @ k@p@@@}p@@.p@5 RL@@ @ W8,  ppJPU@`Y2 hELF3S  @x22@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y< hELF3S  @x<<@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@`Y= hELF3S  @x==@8@.shstrtab.'ym_shndx.nv.info callgraphprototyperel.action]L }2"N@ Ts%s%6 &<@] @ @ , $iHh`CpH H @h@(81 Y88P@xwF ELF3S  P@FF@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwK ELF3S  P@KK@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@xwV ELF3S  P@VV@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xP@9@x DH< //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@33P #ELF3S 0@#2 PP@8@'.shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion16compute_dot_do_oILb0EEEvPKvS3_PvS4_jHfS3_bgaJosharedcJconstant0fG?reljT,28_specialized_Li1288sKuK(xH:|HL-35poraggedSNzRZ|RaOhOo/64]r%_JWwGO{GG% yQU{Q\~NcNj^ 1R8a9:c9"f6 j61^ _s*K(xH:|HL**z*ZRaOhOo :rJ_tJWwGO{GGN:yQU{Q\~NcNdebug_frame a`allgraphprototypeoactionIC$__internal_0_$__cuda_sm70_shflsync_bfly_p\ $Df6tS1S-KexHw~?zR,&2-*RO  :rJtF3-F wGry:yQ{M4-M ~Nv  M5M-Y9=f6!~*sKuGS6S-G xHw ~?zR|N7-N O  :rJtF8-Fz wGry:yQ{M9-M ~N :.E X& jq6!)p1 5 1S & j q61p!4 {2T"0 3 0 O H3 H N0 3HBp?500& `  HJ [ 0]! < H%!3 0 g " H"h 0&# H#h 0&$ hH$h 0&% H%h 0& & qH&h 0&g O *X0 (`[x 6xh0DF@|  (( $40 RHA5)X< pL(o`(#3 !"Hpp%dKPd)X$#h"C0?p%X )A5X@ L$4``]Ј`5@  `L`=%   `L`=? `Lp`5X@ `L#P_`q/+: 5 + C/*? * G/)H $) G/(H $( C/'_ b ' / l$^ $$ H$H'$4$#H$V $ $ * <l,\!7HC5 K`uu!99xB 9hud 9`9\9X9T9P9L9H9 D9 @9 <9 89 4909,9 0p !) (  0 `  `   (  <8 P0@ p L  LP@L  <9(_ px_ Px <ݐ`_p<Xh, ;  gL 1< W< $ Ss$%6% $0,Dl08d D,P L tĬ( l  H  hP$̾0D$v $vcSy9S"ypb$tR*@@z+ x,p`ARx/  k3p` ".#0K0@4 37 @r -$|/ zbM 64  rpP azF=, a^p M!S#xT1G,`#yup$%vp`py+  r0ROpp_P'pcEypG P$t&%f"y "b`zAo-p{+ qx0&!@$zg.r1 1r@?$x !ra| pC `3 n`!/c{|I$pP pR h$p@% a% A   d$@WO$    pr-0 Br03 Cp`@$x21@z"@zP` ADA0""@x@c$zmIpy@@Dk@$z l1 /!r0 pPr`1~@z'1C]GIp9$tptpC i $z f#0$zj1Puzg @@Ee`@v@ 72 Ux QwS@Ux % %cp0<@ Pf ab%  5 WdGd/v % pdr 85@Sxr 3x T$x  Z#x0@0 3 [``$YAr05`0r 0UO0rP0r ď0r `0r  r rfCA00r 0 9 4 P`d0r  0@0r 04p#r <0@70Y r PQ#r /+P@ T r@0  0!r @#ry0x ` 0$ 0 @QGyC Px-QDy A06$rP y65P`uG0 $ /p ``!pH r  ` zq1A 0y@ M `` ` %@  P %@P *0?@ / !$t$HyH"`9u`PyP`E _  &(  0x$@ !xp@ `  rP P P "P P 15t P pP )P 2 'r5x0`  @x 4xG0p  z ` 6$z %  P6z  @ 0 p/| 2 0 "r P !d~``p  2 ^G*P0 `!` ` 0 'QOp0r0  @ z ( 1  3z    I ? =x  `y  % //Cxx9 3  $D    1```p?Vp!` ` i< @$z p  P  p 0  p `=z ` 0 p5z `    $ Pt=` & Wb0    v 0  gr ` 0  /   `    !@ 6$           4   9  , 39#   0P  & Gy `M 3!r ?0,"06N6!r0@   E @  @ -/ O z #5t Dtp  `   P  #p !p p@aPĐ R !/@p%0 t  ` PP?xP 0P `P00  Hs`s Fb  `  DSP ` 6$r5x$~0Ex Ƞ#`!v pP`P5x x PP1 0 PAz pP `  pB@&0@@ x o/pB &0  4$t 1%v#5y ux qy   yu"%vP0C uhy` bpP`%`uhy`zb%v`&`0*`9 `*`*`&`fy` h b/P$ Pp4Tx  pOr ST10Ex vxyr 0' Ur & 3p&   +  `+ @  + @`+  ;x @ +  00Hx0+ `%@@150Dx  G@  /   %"07y @*b4 00%P * & zr  `:P  0`P @% @`` %0`p  &y( 4 0%*& : 0%   @@@0 0`  p%  &c$za!r$QpEx0 &r>Q `zgOp"wY` 0 ` +t 0 ``aOx`#p a`#&pbP   5z@p#Gy!Cr A$x @ " 0 8r 0s%A 1$rp 5r dR 1sab.xxP %/` as PO6$r@ ! 0@  #R'rP0 @0  # 00r  p@`$  E "$ pr P4<`00b'Pf$ q @3 a$r  @$x@  " 07y0@aP!rOp0  %P ^!0| EpR _u$0 pP20P0PP!0pw$!`  zp2 p %1p2   !0& !p$z @&E$z    19r1 zp(!"$0 f$ @2z0Dr   O*   %8 E f u"$ p 2 pB S R  cS@&G"$i p/$P0$ @$ @"A$ `*O "0   A #P " p"5$ 0#$@0& P &@p0PB02""5P 5`"! " !4``" ! K0r `"" #9  0i r0"`" P @#@p`4p" ""F @!@@)  P]Gy 07Tx!0p E$z`5z@%pp3!$(*( @*!yP  #-0*"z  0 @ $ ,?`#$PC  0PP P$PppP9P @``*P`0P (`0P0P/PP ` $$$`$8$+$$<2e ʀ$+$p$ 0 pp$x  P p $ 00$ p$  @@#`p$9$P $X0 0$/ $ `$ $`$\ " p1@ Ɛ# 2rk`$p  $$p $pp`$   @ /  $- @/x$ % $$ $ p% $+ $$P $* $p?r $  $+00v#y+%0 &  $ $%P0 `>$%0%`#%`$`$`&`0&`k x$fh y b `$0 &y$* $+$ P  n$0 & 0P-  0'0' PP`(0"xpir0+  @!  $ `+  `+ @  + @`( Hx 0P@%$ $ 53!v  !$  " $ ` P@$* $0P"`P" %  'P '0"P' Ur P% 0'x$@B 0 P` $0$ #$$* $P$%*& %@00@#P $""  7D 3PEp @00 0`r  &xP@@ʠ5L$z $ `01x`= $Ex0$0$ $0$P0$P 0$D0$ 0$%0$ 0$0%0$ %P"@9 0$ :Cr;0$ p #8r $2s ! 2$ $ $@%$ "$$$&$#$ "$0$ 45@&Ir$ FEp$0.`!1r$$P$$`$ $!r0xkP p =P $@0 $P $ `#$"$$*$`$# "$/$+$ $$$ $$$ $$ $ $u $ $$$ IJ z$9  $  $* $v _ $ ==E $9$$ $*$*$# $+ $$:$ $$$$$$$$$ #  $pPHK5 z$ `$0$$&$0 $$` `F@:#$$$$ p +$$'` 5`$$$ 4"##Pp#POp#  P#PO` F$0* `:`:$ F $GE!rPP$ J r;*0$:0!0$ 2 P$b%#@e:0@0:(@##% ###:#E#*#*# ##G# #P# `0;xx #p0 :@ ##ppp:9P#0; @/##` :& :/# UU U%`$ P &HT UUW2xv8 FQOxt 1x  U1x CT  7 @ @ 0p @ @? @t 1x 00( pUp1x 0 0T@1#r2 T<@0  LIPTT!`2 U`3!r[tU USU 5uU,'$UU@ȰU5BpU=0;$x U'P! 0 ( O  P p"> 0U?  >     @   P  9 r@p  @%P@   ? 0 Ax       @ 0< 9  0  > ` @aP@UT00=HU@0Y >pT p0= 0UQTp=T  U =!U6xp`"-P"/0"` c `0@  0`p0 `U #0 P" P# #P \# p"U9  jUd"U"$aUg"y &y yyy00&$ pTyUMy$U `$`$ a>d#T#U# > P$$T $$`$U+;x$$$:(T@ P:F: : T@# 0UP G*$P$Ā#(U;$ :$$w4# $*U$0$\$ U`TU_%_ @#I  @8 @@+ m An\.T#81 ,pCxAT1$@0#XC@!A @!xE'L@@/@!G'<@@/N@.J@ @/ @!#"8r #2s0##!$#@#/A@$`$#P#: `"Ss@5#`EP  .#`#4 $# p)#9#@ #$#: ##P#&p0# #%  _$x# &< #``#!Dr#0 "#"##'!Z#/#+######'###* #* #! Cv# #< "@1:z#9  #* #* # # # <#TST`00Tw `# w`#/`#`#8Tw(T-0 @I @8 @[ m N.T#81 ,Kx`\ $@0#XC @@!xE'L@@/@#G@@/N@.J@ @/ @!H*HZ0000 0Tx,P!7 71 ruu!99x9p6ud9`9\9X9T9P9L9H9 D9 @9 <9 89 4909,9(,9 t 0 9!P)(@ @  ~ q  p6f# [ H 0(  @ ` @ @ p8  PPi  @pPP pDDD9(S p _p @@t@t4$ '$ [P$ - D$ K!@$ $ "4 SHL |00|TxHDia{ s"ypbzz6xSypr \Op r lO @xPbp` ACx 3p` "$0R@ @# $03x1|+/$|O |TM ƀz fz @ |P@pP pjz ;"p 0S x pG.3u"{p$%xy  rPap` ' PEypiG À'&x`&y (b czC{ !b`C @1$|ppxp?|""0r?@q$xP`a$rp| 1@@$r /G(.C0 bx` @ r @pRE% p/% A   bWO$s6xP`Br 0d~@r#0g |T |P0 B1@@|@@|   DA  SbyC`F``T$|@ 0PC b@$@`Dr   93|@1r D~|@3 P13G`]Pc{`"PC `PCC P0L$| `Ex`ƀ@S 9|pP@`x   `$  0r  p$~ P 0"/ppC$| cPSSbG^6{&&O!PPuʏ ab% % \dG  vNx  WO  pr o er Sx - !x $`@/x0P0 1 6x0! 1#xPq 05px?'&@ `0r 0 `O0rD   `ď0r @ @6 @0r@4 p pP@ r# 0@Y r  [ 00rP@#r ZPpP9 PP@ @@ W r@@#r  0"!r!`@#r $ d|pT!r KH@puj #0x*D0`a/G 1 r0 ` $ | A@y@  pM Ƞp 0B @  2@ /p6Gy0p `0x  1r A@!| #y "P  0   "   d  !?  5p 1 'rE$x 0 ` Rx " Txx΀ #y'     @ 1x 1|   @  @  R/|` @T$r` f_r  'G  &0PV% ! D b !  p 0p `` `p  p 9p  p  p `p -p  ` `     PԠpo>#y @*"`%P ` ` `  ` ` 1 $G +`   Ƞ?Vp  % p %    /p pp  p /@!  ab%  p % "dP  `'p+b.O W/ P % "d "?@P  ʠ4 f` $N   0 fub$|pȏ$r/p4pp xP  ` ! 1 0 P1? ư@` 5! (`  P  8 *-6!r0 p W@ 9 U `  40-/ p  p S5t ?pG$t Bx cHs0s ``a?5t P`  Ptr@ p#pppp,pppp(6Gyt`p 0 0b! 6$r  % B/$~$xuOx ,0 `x00 $$ Tx @ p x p`0```0p"$x" `@5t 0 $pBPPp @pB  6{sb6x A%xe/y @ 1y P ! u"%x @Sy h% P% Pb# 5y `b`0`& `jy`*`3 _`*`%`:yP&p %`%P% 0b6xp$ Tx @ sO6xƏr x91PF6x yr  ' Ur  5xp>@&@ % @& @% Dr00%00`P+ p0/ %0P  `% `% 0&@p#|mp 0000(0    40 U6xpuOx` % 4@@k6x 90 `Ur %05r p* @9 + % 0@$G%1%x0ʠ"  40 pR ` %  [r %   :G @ p  f$%x@@%@u6x @` !!%xOr9G P %   E6x065t` )r 0# |`&0 0%   Ґ0` pp 5| # )`"rM E%x %   pOx  pPP$pb m9p#(1r0 H|&0 =er hr @s7A p !rC@% bsP $$@r0 1s@!>vd$ra$r ``b/$rpp'r]` @p! f"r @pP% 1p@@$[  x6@ r CpR$ @br`<@@x` &0b"`f$ "3@0b$r@p3r 0)x!/ 0(``DrcOG @'?( )0@$ 1pRE( #b(@",0 B,S, @ $GfH  ̰R !0B  `1 12 0 # (% 1$|@!1p1r2' Q$   @4@ O)  *     6   C)u) s"$ d 0p PB P!#F`P p00-f` @f0."p`@%&pP&f"u( " 0a$ / @: %*@ a # @$3  P%@ 23 n@%@p 1$@E 5p, 2p5 p1, !2`5)`6`@%%%%%%Ɛ$4$4Pp%90r$%%%`%%k0r& &0%i r% % p@%60r@&`%`  P&& &g rp! @#r%E!r & f$P%/yh`jAxP G!r`D?G O`- p D| `#|p.AH$|`+Pp,! Qr@,P.,FD.P.C6|0 WG &5 @ J$@!t N/ 00 $AyN  7rP" ` $``Lp`N40 ' ` 6(( (0(8("Nx ` 05( x(( (!1 p (0'('`&('  &'R $<x'!' p''p p'p'p6Gy 't ''"'"& ' ' '@'p'@&@' & ' #'00`%%00'P+ p'0%0/ %0P  '`''p'`''`E6x@''0 `'@%'@* @' + ''c)p& -('''@& @' ''0'z% 3p%Ȁ'' $ ')?$%" ' Ȁ''5(@L' '`$xz#1' @&@&0)'Bp* 0 &O-r''/'{0)Mp'Xp'<`p'  p'`JP'P' P'P' 70 P'@'@)r2P( p(&t p' @@s (/@ `' `'`'& ' $ P'@ @p6GyP &P.]PI ] 1p1\]/8]@-]L]"$:0]L0x@2]A~R]b]!/ ZMP"QZ&Q0_/]M_O_+Q`Q!<QD3%Y_1|`<]O0a]P]\]B NE6]1@\`]&|TĐ] ] Dx ` %!~ \]]5| @0|Pj/ 6N\ OP\& O !\% OP\\0P\&\\\ `7a$r.0<%  `!rO7 7#x}7C 9O ]7!p \nG  '@\\ 5 -]`xT@HOx v  1x  0J1x04=1x 671x 000p`:"3 r @@ T:#661xP*PP P0 D  1#r071#r < \P7]!?4 074$~] ]]9]#_e@70e] 0C 7]]6]0!xh< D^j]o]&B?Bj_]]O5P66x F@B \\E$|  Z]]# ]i` `[]j] m]%>fb$S 0P=]APmH/ p %p?K|0@A]],  ] Z^];] ] ]]`j]]MlW: P]]]] p4!x 4 ]/0N4 p\ @#p 4pP &x`](@p] 5\o/ ]`p?` T5E` 5 -D1xp  tP6x@ @ 0  @  W  p @ @ O @p   E rPE 0 "#r0GD`  0 ; r@ 0T#rE EJp  P 4 p[]*]N4* 5` ]-D 5 A D \C0C] C e]PP(( @Dp`pO*pp( Cpp$]6]*\]]\ ] \ ]h] \ ]]8W]]`12X]*pX\`]`?]0.p5 0Z\ ]PW P55-`]3A$0] _5`5`]:`5` _]5!]]85 5505]] ]5/ ]5/&p5Kp#]\$07\ ]6 ]!]M6]] @lR P]H$(  ]]R\pl]b]pO$x p ]_@]] $&/"@%O p%0%\*p`0/00P0(P%P&%Y r@&@ `&&]P \pP "#rP+ \@&4 p %`&?]ZP(0]*`&`*`% +M M]P&5]  5] @5 _s 0 5  " P 0p00@6 ]``pop `pp]@;(( ]P(490 ](( ](&((] 0E'?PD' `] D =C0' pppp ]'j`'@V p( ~p h,'W'0W]*@$Z]L]&] 0]]'' @`]\ \]p'Y`W]''' ['0]8'P']@]!^'''0'][p '?G]3]+']`'' M]p'p$]mp'$! Љ `E@? Lp0M0&@pp' ]@%p'$p']$P]l]\Os\P'P'  ']@ ]&&P'p ] D! @ 0 @E&,E&D "p.HCC#. T 13" ,)g @53h1@0#07@% @!A @!L9'P@@/9@!;'D@@/@!='@@@/@ 4@@/L@.TB@@p@@/ @.F@@/D @.I@@/ @.DK@@ "xMTHH@<82T^%OIdF/j@.]@@/@#l@@//@#@/@) /@< @/@!? @/h @#@@@/ @#@/* @yt     @o@@@/F@. @@.H@/=@.@@.@/2@.4@@.@E5.|@@. @/@. @,(-h8% 8p 88e`KK@d 8HELFAS " "`d@8@C*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver,text._ZN5cudnn6fusion16compute_dot_do_oILb0EEEvPKvS3_PvS4_jHfS3_bgaJosharedcQreserved.0A$/atC,28C_specializedO_Li128U8sKguHX-35poragged_NzRf|Om/64]r%]GU%uyQc{Nj1R8a9:c6"1_s*FHX**z*fOmJ:rJ]tGU\:yQc{Ndebug_frame.relanv.callgraphprototyponstant0 Jf *xD%3~?6 [*\/D?H~*oapmerc%Uh$i a++{ eG^&5Ba$a+:+{ aGaAFa%   Jz if*{ G* wB9 df*{ eGB*7   dSmem.offset0  .0__nv_RSMEM_0_0_aliasM t I X& jq6L!)p1  1y& j q61p!! }Q!s!@u  H &   R t  9    (fDP"  "  w H%C# P 0 x  S H x \ ! :"# 0$% &' ()D@|  (( $,0 \Rt<6\h%h8& hh0`D&,h/th/8880hl0EphDh81*@g8<hh NVIDIA CorpBV;6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1/400F `RHKx00 0Tx,P!7 u!99x9pud9\9X9T9P9L9H9 D R 9 <9 89 4909,9(<9  0 9e!P)(0 J F q 'p6f,# 3 H( @ p P dp ddT@0PpwdT``  HHD9( P "p  DD P|.88D '4 _TH  ?_`и H4 O!DD 4 @@|4 "8 S HL<t0`|HDYa{߹"w vsbyPy.!0Au0Cx{x pr Zp /rFpxbp` ACx # 05p`0@@4@@#` @rq`|On  1|`@ a | 0Ax@q|P0#M w}"0& xn`ppcws0P| C k pP y! &  S p OGu {@%xoy@ @ rqpO`4@'r p`Ey0G !"p$x "R1tC{ p$x B C| b0 O qr@$rR B$| p| 0@  1r %1D6Gu(`{0 `xP` pR%/%pK 0 1$PbOl C0Pg | W | @rW@@|`1@| [ p@  %cSAy@ @  !r   9*Я%o &z0r,b A|  `4| $G  @ r@pR@ 0P  @Wp By1 0M ~ Kr5|f/Gu C/bNB%Pu/ Rb% V"db"w/ /ЏpN{ p&/ VO ab%  % !dCs"$|p "o0 7x Ȑ$~`f$x` 0r@@ar $`PT | @ 0| ` |"03xn0~"@ @|"@A50r " `O0rh0r0t0r 0  P6 Pi0r 0 0`  B r$A@00r 9   9 7`@#r @#r  @`7`@#r p03!r p@  4`x2PH `u0 x"Bp@%r@ %paG 3p40 " a |A6Gypp 6y p bu   0x @rȏ ` +O@` 0 0 @  @ 0 " @@  VO{ $ R?yP   P @ @x@ @  @ "P@ ux 0 0 " pP 0 Q$r0 Vo1t @ H| Or @ @ @ &@ @ @ ` T@ @ p @ @ @ *@ )@ 9 @ 9 @  @ p @ @ +@ 0@  @ Fr  P Zr@  @ k @ b`@ @ W/$|`|@@ @ 5 @ QO| @ @x 4@ @ @  @  @ 0 ?| @  @  P *@  @ @ %  @ C*@ ` P P P P P P P P  P #y0@  : &  O "@ @ @p !h   @       r`#|p@ /@ px^# P0 @0| ` 0 4 s|P  %xP 0 O0  p P  p  P P P P  ` P P P $  P P P 7`P P P @3Gy8 c 6!r   W@  R @*dP * 4@C/ `  0p01t ` 1x ! A$t cHs`s DdP!?``Dr`P A`p!pp (pp  6Gyt MpCt 9$r   `f$xe/x  4  Px Tx   & `% fb1tP `0!r!1PTx `/r@ ~@@1$~{y  Sy C (0C hH H H H  4  `P0  H  !  H H H C bPpT6x3uO6xpƏr40P dr 7x` V6x@tr0p' P P%P 5r @*@9 * 4 `* `4  `* @9 * 4 `* ` `*@4 `0% 0`x p A3(0Tr P3 % 4 $X"1TGup  bx p@lpdPPP P P P P P@ `0` 0%0'#P p1pE6x P>p40`& `% % Pp!p 04@ &u0:p<Wb,`@p@8@ *b C%"f/r0&y@!  p@ ``0ExpxOrEGu0 d%8;"p` P 91tP1x 6$r&& `"nP  @" #! #cG /"@ 1%x0uy$P0p 0@!ʏ@3"pb@#G Cx 1$r P$ kOG |P8r&@$x Z2 8r F$rbs P    @bs 6x3 0rK; As (q!$ `r@s$r 01'r`P p p   `!"p@$ $=3E`Ppr @"4|p&@0p&6& "&@E6x&P!&#4&@&!' & * &pP&p&@* @0 * 4  :x `&`* @& * &*`&`&PP& p&* *`&P &&&0&@/`*O&@E6xƀ&p$ & `&@&`& &P% P&@ 0`!&@%&=0&@p&- /E  -&2*0A`E6x0ʀ&p&=1xp&`%&m - &`&&(61r& Ȁ&,9p&`&8 #p0 )p&4Ȁ&/ p &r%Ȁ& kJ &*W60&&/& & (J&9&&!xpE/&7& &jEPA&&=P&0N&Z$LM&Ā&o1$)p& &&? P&& &&z O$ 0&9p&`3p&&rJȀ&LR$P)(p&Đ&p& & &p&*(&/b&& D <p&&p& & & p&&& p& &&&D&& `& &`&{6`&r+`&`& %U4`%P?% `& 0?P&p% p&%`& Vx  `%`  26Gyl  %-@ [@[04 [[/ Z [@[!5Z`Z[ Z [Z[[[ P-[[!*[46$~[[+ Z"6[  N[P4p [+x4[, \ N[2%0N[pN ;D`6[[{ [^ NZ[YN ZZN[&N[` 9` ON [# 9[ [  p[N  5 N7R[N*[/ //[ `##  Q+O[6`[ @[#x6 [ Z @ '@ 7 '% `8[@|PF6$~["~[![% [xv@ QOxp1x"1x C T Y#r Z@ 0p  @ _ r@t 1x0@?@1x001#rZ0N> rT  P!1#rW@ NZP@ @6   0@[[[}[@# @[[6` 3!3 /R0R[E$x p4@[[+6[ @ [.@ @ [x P[: @ b`[fmDȀ3l[-S$~[P [` vP P d 6xp ʏ0  A  @0 H r`B0  00 `      @ PT#r ` 0B K  [6x T0`P0 B  0RP pB [pB1`3[@  p[[r3` 0pA/3 3O0Ph'p$ 1p hp$pp 04p [ [  [4%0[% 4,4[ `[+4|*`P[4p:y4*[*[*[*[*[*[*[%P[% W% W+ WW*W* W&W[E6x4ZP1%4TUZZr[% U/% @'@Ur`N5r0[@[0@@*@ @[ 0 0X% 5x p 4p %  [0`  pW0 %4@ @[ VPP4R[WZ PO0P(P P PPP4pl66xZ0 06[%Z4  `& /@0^ 66x  4BHbe4, p9 4[4 by@[/[ `  ` 4s 4"PZ[x[W[3p[ R [4 PW[@2:|[[" 0=4X[@,[& `4 5 [0;[[a(0\[8[t=`O3rPXr `42sZE0 [O#s Z%Z@3SsgZ p 0 p4 WZ `44 P  Z`zZ.# $5` }Z bZ<ZZPuZZ`4 p   `1$xZZ%oZYZZr% 0 2: Z% Z& Z% `X038 PXZO* ZZ* Z/Z  W@ Z#@Z V nZ%pP!:`4Z PVZ tp`4Dr XZ % `X|P ZPsZ: Z%Z% `4#*XZZ @#pZZ% pZ Z"Z%P55  Z[(`sP[& 4 ZE ghQ$|9O\!| @ R 2[# #1$| pa \!g0J3xr# r%%#u Z 0x #!r ` A$x  $E Z06pZc" $ [B @ [[E pP% `(@@E [ 5 bP%%\%`&P.H1$` &rPY`$9$Ơ*p$@$0 PrP@$kP@$P p Cp47  p4  r@v$%!D $T r p$4 p$b@=[B PW!r `JxZ%0*2k@Z* p [0* p 0E * p t * 4ZE0Z ZoZ ZPZZ 4 ZZ` "tp ,t s? s  Z  `61ts 9? 40x[ p0p p$p  pp p$Z5'![''-N[ 'm p K'*@̀'@>[ 0  `'䐂 Z [p'[ 'Ā'p`' ''' p'@'' '  'Ơ'< '' CP''0''%'` '[0 ' Z' A`' &p `' @Bp[p ЁЂpPC[&o &9$~%|P&6sP#%&0WZ& ' & ' &0V&PUEx`V@[0&pP[&&0 [& 0Xʰ#X'$@ X&& & 0 & # [ P!`}$[O#&&P3O\ Ȁ&@&0& &0&    0&@(@( &@\ &&p&A&?#I 0(& 3x a@&&  p& &*&̀&/61t&#$*`&*p  t&4 Z &Zk&Z[`, $&P&& Z&;$& %&&&:P&0& ĀJ&}6+@?&Ā&& Z&p$&pP$&p`&$f/ `&b`& '//`&Z `&4@Y@p1%aP&, p&#p& p&@021t Z /6$t f%`& `& ZML~/?soa~0?}  kAA"B>3@(00@@0 90,@Rj @ , h`0`D h,7@ eQ  ZD9B6 UXB@B2"l,l@,X@  \ A |#,`82`Y   ,x L) 4P  Lb82@Hph@"0hxx8@04 ` xhD@ HFA  ]b|00@*rQGn pYd "}PppPp'?W]:0@{ィ p5@(  p x P9 `  ``P P T P$P1 0  p  p0 up pPppp*p p)Dd4? ppB`,  0 ~0@eK#|@["SP`p p{@п>϶?W˯[ v T   59  h  3$<85A  ` $ l @)$ + 0@L    p4hhd0 @ `    h h H@  0 ,,`p H   H X `PO"4   z@ۄ"FPm Oʠ  ޼   / "#o t  BO˯] _  kH @   A^ "#^ p8~p}p+p  `#T  h pD @p Xp<d  *p+"}p pkp"Bpyマ? /["' % p,$@ p | p pD piA@p7@ @p(p) p! p" @ 0  p*tp  Px' !X" p  p p*5G p@% ""Fp/pUp" pr _{ A| p   p p7 @@ "# 6 $S@|  (( $40  uRA5P)p)pEpp%pp3E(&pp@B+P#Xp3 ]$O $##*0:p0$`#p*ppPp3('p0a/p3p01/" ~0000\`K&0b0f* 0Tx,P!7%Z4"m*X  ފRc ++NL$'jh"3 U0%!b:~ud0089T/7r b 69 < R r1bb:9 0B!P)D( JP tB{ <#  H1( =@pk P0t Pt)@":0#`#%%@&&t/$hǃ9(/ <@  d 8U"S$0 ` @ p  < s "X&`toptH H## $ "&h$`'t0@%h p t @p 0` dD  @#04"5=`T0,tP͂0t$0+` Q7-*!"s/ A H+ &, - . R/ t0 1 9 2 3 n (VP 8=& w  0 P    (  x-[ @ #  @#!@W H -4. T P7 ,#), `;:/9@@[#<@(V @H!'(@hV @#=3[ @_#?@ / P @T@/c@#B@@/@#XD@@/$@!F'8@@/v@@/@.J@@] .DM@@/n @.O@@/ @.Q@@ #T# "  (@|8@Qu"UG^ 8@#c@2 @/@#q(@@/Y@@/@#@) =@#@@/:@#@@@/ @#̨@@/ @@/T @#@@ `  " /@p@.@@.(@/g@.<@@.P@/\@.d@@.x#@/:@.'@@.+@/0@./@!p"3dC@, /@"@9@@@?@@@/@"D@@@@"J@t@@/@@ +@@x@.U@@@[@@/u@.Pa@@@.0g@@%p ["l@`e  rW9q ` O#@@l3C< *@@#t@+@/z@#w@,@@Hd@-@/v@VGX@.@@.@~@/@/`@.|@0@@.@1@/]@.X@2@@.@3@ X^9 B(I !r+p,*@_@/ p8( # pX  88Q2@V?V@x NHj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ/35compute_dot_do_o_ragged_specializedILb1ELi64EEEvPKvS3_PvS4_jHfS3_ b( .param .u64 .ptr .align 1]_?_0,~123/32>d4q5q6q7q8q9q1]f1PgCg6r17r18r19r1:r1;r1<r2<f0f2< t2JuXufutu8ie 7 ) { .reg .pred %p<27>;b16 %rs<232 %r<30%(U%f<36b64 %rd<80>; ld{%rd28, [c73];/r7g49f5/81f8b2f(21g/22/30g X 3=g2Z@h \3g6 s8h7]; cvta.to.global$ 1,1/31 2 0 3 2 4 3 5 s29; mov1Xtid.x286, %cta3shl*9/4c3; and56; setp.eq.sp00ub`5@%p1 bra $L__BB0_1X4=#15X"lt%p26Y%75kuko2o4n$95T-U2neg1r2795; add.s7#T3: .pragma "nounroll"#ncQ96, [Z0+-3nGCr97,! $hr3#8,4/9?285n6100o)28o!10# q!10z! s!10 /99t4t4t# tk! t 3u8u0u*# u410,! u1 7u&12u*16u1+# u! u 1uB1B"11,1D!11(! u H2H G2+2G2G2G2 1H2H G2*2G2G2G2 G2G q&2C! YM C3C m! A3!3A3 A3A 3$3?33?3 ?4? 4'4?4! Z4 3?4? 4(4?44?4 ?4?+4)4B5B4B5 B5B n5)5C5#5C5 C5C V5)5D5$5D  #64V#ne360.3.3+4:4848 1g75E8}5E7; mul.wided 5&6x*356; \6U6u68 p6u,356! sT6 "16K t6t,356s6s7S6sM s7s-357'7s7! s7st 7(7s ! t 8? h" 8B8B8 78B (8C ! 8 C8C 8)8D9D8D 78k7kA 6' l_  3lJ@%p7F0n6n7n6G97D99999D4 M ,37nL ! 1 ! +P  $207n2. ! s2/ 2O 2O  1P $207n2. " t O  34,10D2C8Y3Y8Y7Y81'212i28j 2 4! 497Q1J3M9B2!3:N#lo03WFg2pr'0_'40Ke4f97gG   57n?d28!/d7q?d74!deB02#29 3)5 9w 22 8'290 /17 s GXg 4 2  &adKG"723 6S e3sub#213d2; div1|;#21&X;82142 9 + I u1; bra.uni2819:'*19 nLZ F17; |:d% h44h2h4p #21?4cW7 3&pKy122psg1 2b9 n 4F 5s5s2s6s K s_'5:  $h0 /26Dg.19} -81J p<69;==218:  0: T o:d496$8$8:25X 2,3T0; stvckc20], {%}7# D! H 2  9 j9j Jx4 5j-#5j3 )31jO jN65js7j.32j6W$g/17j  cbP+ 2M75: /.68:~*226 *d5T$ C 6 6  66s:/63Z3Z6c 6Fs c C:3Ke ($g1H%h g1D %g7C  2"2` 5 G\/ + #8` 3!$22l +l L#1} #30Dt  R .  23Rn   {C306}6 - Z q7  qUrq(70Cc  0;=4.!.flo, hi{}o32, {0, lo}3ahi}; }5>f25&fD r26(23"f6Wcul.ftz/#f6; fma.rn,T/f7|89R2*nt 04p<Kf,42]ef `Z#f1 H/14 r2d94f2S7( 8r24f #24=f [f Z5 5>f /25R 5+8r258f95,/f2d[#f2.E2 !r2+fshfl.sync.bfly D7|%pC`6, 4, - f"5y+3!r2f9y9yO8, 2y\$r2o X!r2fYy 61y= O0, 1y@ ~4i w D2*%f:_#d 0#+1f072]R 6 p.{%2[!]40: ret; }F -28F F^EF!Lp;Lh;L`;=~LJ;~_4;~_;~_@ L@ ~L@ ~LE M x_E MkE MkE Mk1k~E }LwE M CMnn n.n<MEMFE8EFE5111%FE/68FE$L4L6BLg!3FAL8L9*L#3`;3Z M +F. r!M<3$M!3%M F/r3*MM4M`&4N`1O4O`1P4P` ,KLK `{K2!`tK2"a RMs`2St`_K4MXK 26*8K3z #d2"!8K 6Ky,3zL!%7eK"2hD7gD+$K27F8/KsKw/$r4Z5 B1.B+po+1&sS3 B/1_#d214@( 4 9 &4.J 791K/14notWT?pw$or0-p7<1; 6.!>%r2'Ir! 9 <71_8/000;1UD>!p)Q  '00-30-c-7:X)  t3}.t2';1_8=0#|3 %7 $ |>%r45'5 *%r>'i+d31$ S$#66$6:$N97]&)3}3>*1B$$|394# t3P!O$4 o"e54& 2Owr]8d 981_124E91" ,M   919 8I= v3v 4R[9v4(16T1a 3N537 G#r5Q3%G 3 8': /$-)653H8 c%?6v@ q).K ;dGs@2; 0:#*;p 8}D+/ su&414]U. 9R>l28y 24831_2 K55 9 x52@v5dv = v2? n: SH*T(22@Xl = 031_2. X 59/d5=TX6Xz?vX 5P1v V v8X7`6`+0]455Dm !3 6wM%#10*@! %C6/*x[ x%*10E!:96,Z:5> :?Zi]9WM)R :{ -5XjW*X 6,O ,8W ,W, d 4{l?W04%F? ;;w::u,4X=7W07V0 747R0107Q07P0 747L04H)10W07`5 172173/r7851375 8 7148j04k(10rNR!38W38%148}71685 y848y4m18w5  :H3/r87`9H9V 49 {4KI4%954*4`4 =4%974*4954DA4955`46 4 { 1s4~`20 4G44kE)4:z?128;zv!94! MA*TH*TO*_0TH*gA*g:*g}/ T/ T9r4  TGz9t(4 U@s4 UBs4 UDs4 UFs4 TQzGT(RzG)b3Upv~v 5U5%=309WzH5WzK6( +eXz.( + 1T|Zz3(8.T.h.`7"U ^'/U `0U bh U/U / bz .bz 1sO$cz 7%$2cz07 k0%r2 cz2cz3cz7cz2cz=7v0bzK"bz $z>z =obz p& raz: s5s! '\`z td"9t_z: t>z3t^z9 t=z A]z: s\z \z9 s;z B[z6 pZ-12>Zz8 r9z <Yz8 r8z :Xz9 sWz :Wz9 s6z :5 |Vz s5z =Uz9 s4z >Tz9 s3z ? 6!l7Szz3eSz q1%2_-2Sz Sz"25Szr Sz4 Rz p+Rz`6tRz r1z o+ oQz rPz Pz9 sOz sOz8 s.z nNz: s-z8=Mz9 s,z >T >8>  Lz s+z ? %Kz2{9 ; 6z3$ dKz#2Kz f w jo Kz CJz  JzfJz r)z Iz8 rHz Hz: sGz sGza4Gz2Gz Uy5/; ډy'2Gz= 3Fz3y`Fzt1dJn2Fz2Fz7. 1Rc+] X>2FzC$(7A5T%Hz. (Iz  Cx3Jz89ej1nZiCJzVJz2Jzi24jJz?v5? 4y1U:Jz Iz lyIz?< u?2Iz34Izu3D ;Iz7Iz 9uIzH22dt3< Iz):Iz3wK ~@2Iz|Iz2_;s@ 8u@5u@g@IzWIz%2_B=Iz 272Iz2IzS2Iz2IzK2Izi M7hKz% |}KzND49BAAB%3E#51AB Kz=2KzB2Kz86Kz72Kz2KzS2Kzs [wA [wKz"k@|!hS~/y (Mz7~MzO~Lu @Mz#2Mz9MMz3kMz2Mz Mz)Mz?,6v'h[Xx}/,) 9% (d[p{/")K 6hRz OERz7 E'z84Rz Rzzr z h/z+tRz *z x uy>w[y E 678 {I2RzA8ERzA8UrqRz2Rz:N x)@RzVBRzLBRzW BRz RzoERzRzm~ FFRz8DRzP9FRzP=FRz E.6Ez$3|E,AF :,G~6Mm z' zF zا8z7N2zFz !FF;cM;M;M M;lEM;`;`A }MA MA MNF N}`@F Nl2F Nl$F NlF NlF MFN/ nEN*o8oFENEE.5113%z8.z=T!94rM GAM"3q&M E'M9.Mz'1(z') 0r/[-]̛3 "$N"z') Fz,)Wz')Xz')Yz')Zz'( e-&LML$aL2%az<&) \szaz<) ^]:NK z3c6z,z*HLl{ 3{8{3{z8{3{8s{ 3{Q3{3E{A3{3{M3{N3{<3{6e2#t 'w{3{S3{3{V {Ln2{-) 4{y3{!C{$3{.B{3{3{3{<34y{{;v{n A { 1{3{3{<_M{3{3{<v{na{'({L +{^ #{ pX4{7X 89tX XqX X1Y5 -3{ W02G5{ ;.;{ ?{j 1{  {k j4{B{l c7{ B6{l{D5{G@5{G<5{a;55101;5,;5;5 5 }{7PPa&2r 4~{3~{,16e{Is4%*4{;*{;*{;l*0m;K*mN**mN *mN3|<Z \3<v]|]2e<2/3022242 ; !) /v; '1v;D-1v;1-0v;-ELf2OOT20d;B2Vw<0w< ,0w<|q0w<_0w<4O1O1O1O1S;1x< wx< xDOX1< F1v<41{al$ax!Dg#3c'46f(51!Cselp a_t&*p51[)p4Uyr'#%pTc}mb}z 4}3,5Kr+r5T75nQ,* '_O8nXJ2;n^3402I q%4_,g8`j$92*42^Q96b42 $p 2$2p/ 426Jj) e^$ x15 42y '42U4242M42)j$ .] jpT)6cLyƭV 42,2ƭ )42_6ƭ55 2)2)-~e~7  w427 42V42vƭ942 < 2mh>ؤ}lc7#^kwu42  29 R8pP p(7u :B 2Fs ?0b42m d22:1424;v2n 2 214 2 242;1~36X79v2 2;2w;0c58 g F)r7 z vK;7[)s- +H _v7]#x E- X% k 1s -! Cc m6TOW# 1c E 2H 67fXT2 2c2  [ 2 {]2h2 ;2421/28g18k ~R/r8j1f18f19Z38-9$5,f(11* d93-7/r9D194<XyY5f} Yf *F|D19]4/{3..o f}9 k ͭ2D [#f2(12Ů2 0x/ 878 9 rTv  T[ X?W4_30:32}9 '111 K9h263 g_12h 34q@9r2^3 >fo0ELi64=r$1!L\)Ss)S)`.S)f)f)fN. Se. S9q2  S2 TC!f(3  T7r18rp3 T:r3  T<r3  S3TJ2TXufutu`4ATx4%27S4Jg&30%Jg6x484 c2<1S 5, 2S K,)d' 18_S 30`S]/gu/i T Xx'=g/33 T \ T/T/ /* p ,s)54g!I02 ,27R7AR o Y9-U'Kk'"Y <,/ T9| l  aK q.K0cY tUW ,s t# S0 uT9uKT 7u&y!1#2u u!iu#u"" 8X! u" H2H N2G2G9 02G G2G #C3# C8  7 A3A &! s s 8 t! t!9 t ?"9 t# #9 t$ t$8 t D q$x1 % 4j,5%5% %"5r5% %4 &  &(6& s'> s(  7<35+0" t) t)8 t* t*8 t+ t+9 t C , t D -8k- l-#5- Hn ت-' D. , .n. s/ s/7 s0 s0: t1 t+1'* +Cq'51  Y 112(51= 424 7Q8>JJ7525252 6E1 252?Y(+1*+90*+/ D ( 3.>CL ~6D.wA5.v=.2.;.- GB 9iB 2D /6 \B5/32/| @7#21ʭ/" /I1><5/5/*E./1xL C5/5/ v/4h4&/W7A5/5/5/S5/s ѥ'èQW5#d7s 47k;1 $h0 tDg-%5ި-6ި-5-B5-85-E5-5-S5-s j-;5-* +,(WS+M+8:+A5+9 +#29+5+5+9++6g ($U*T H%h g1D %g7C R2P UE&(O %& 2+ ,#8`3&4&lo&      {  )K|5&A4zD&Aծq&5&`f16 loo@%{9Q1f32-*.lo3G } BM23&>[ @S56 3~BDY4A(489%3< C9W$,D6 4MYE/f1CD C&F C54534}0:r24C-}788r24E-24CM6[ZE6E4S. 348r25K#25Df HD2EED0!r2Z5257,]wPVE2[PE1VEE!26bw- bwr R 8G& 3.@. 6% 1]=$:$`EZ;w+`;LX;LP;.A~L:;~_$;~_;~_@ L@ ~Lx@ ~LE M x_.,kx MkE MkuE MkgE L`EM mjyM n.n<=EM6EI6E5111%6E9 +4pL @y%LW!BL EL9Lw{M+{M 0.[$\w7+ v#, Fu(,Mt#,Ns#,O|MP4P`z`rK `kK2a Qyz"a Rs`{LOKMHK i45i!sK_v7K!/ yKyh 6h7yj6y^4 $28(7h6yYu y?p| yh 6y!u5 s1{Mz5 <6yeSr 6EDhA6y6yM6y)#lu $ [8}lu!5q'S rFy1#g:6y5WuΫy# yP!J$g43' #ue"h06y$u 12$1v 96y t*145M/D 9614v hL6yoM 3ghk6y5dCc@ <f#}&& {}uk˂ yB y7.5yzy1D6y`*wC6f<y6y6y;vyn ? f mt {6f6y;y6y6y;vynX6`6`dL iy4n x6$ !Om 6PV 9zd}B|W,5WX ,O 8s ,W, d y Xl/W04y \X3;g:6yT0 X /7S07R0347N0 M07L05 47H04Hu 671(767x 3G~)2 7'838Ob04k& t8f78e7x 814Qyu 68d78c7L 8c7. 8u4m-11~587874:2w h9979714 6+} w4KdI4 9539*4`1!53<z94*~4TGܫT ۫5` ^!6ګ6ګyAh!!4M)4!T1*T8*T?*O0T8*g1*g**gm/ Tt/ T9ry4  T'z9!t4 U@s4 UBs4 UDs4 UFs4 T4UT23Ubvpv~v8 e5&5309&55857zK ( |+8z3( +9z3(:z:(8;z3(.[-).=z.) ^(/$U `/U bX U.U. BzBzT$Cz 7T7me. r2Mck Cz7Cz3Cz7Cz7Cz=7f0Bz g0 Bzp0w20v00p& rAz: s5s! p0[@z tT"9t?z: t>z >z; tz A=z: s:z8 rz <Al9z1 r8z 8z9 s7z s7z9 s6z s6z8 s5z s5z9 s4z sy 0d1 Hz" sz ? 6!zzq, 62k63z73z73z 3z"753zr 3z4 2z  2z`2z r1z rH ,35j! r0z r0z9 s/z s/z8 s.z s.z8 s-z s-z9 s z >T >8> 3'" s z ? %8c+z d+z#7+z f w+z' C*z ) *zf*z r)z r)z7 r(z r(z: s'z s'za4'z7'z U7U 'zPt'z; 3&z3y`&z5Uz5tJ5xr67&z7&z7. w;r2] H>7&zCt):'z.(%(z.()z  3, 1.M*z89Ej fw :iC*z6w 5?7*zikij`7*zw*z4 )z kysxU )z8 )z7)z34)zu)z 7)z 9u)zHgt g b))z3w27K n@7)z7)z 2)z6g)z4W)z7)z7)z7)zS7)zs u)z;7)zi M7h+z% lF+z.72:6T9pBH9 $ D5$ۀE$<Mp<5~&B7+zB7+z87+zE7+z7+zS7+zs l+z;7+z7|!h,z"h-z7z~-zO95,u4ǹE*d58$< D7-z9M-z3k-z7-z7-z9-z?CW}4(KXX}/) 9%6h1[$T\x[:+d2z T rm z82z 2zz2zz h2'+t2z  z x Uy Kdy sy 678 V%2z@8E2zA8Urq2z72z: C2zh B2z [F2zi B2z }2ziV2z H2zh.}5I2z8D2zP)F2zP-F2z3zGQEF5263},1F *G1 z] z zF7  qX.7N zz? !F z!@;z4(;M;MpDM;`;`;`A MA M@ M>F N}`0F Nl"F NlF NlF NlE MEN/ nz@ (2*o8oFENEE5113%Ez=()4rM 7AM!3a&M Ez'M9~.Mz'1(N Fb/[-]z;)"z') Fz,)Wz')Xz')Yz')Zz'(z:) Y8,$az<) [&b \az<) ^ MKz 6X4Kz 8L?vz 8z8z8zz8z8z8z8zQ8z8DzA8z8zM8zN8z<8z6e2#z08zS8z8zV L8z<) 4zy8z!Kz$8z.Bz 8SUz8z8z<z8z8z<vzn A z 4z 8z8z<OM8z8z<vzn 7z-(z'(zL +z^ z `X YG}X Lz z dX zY wYz8z W175z ;;:!v3A1zd 170zwze \4z1:3zf M7z 06zf :z45zG05zG,5>4+5Fa+5'100֯y7,5 5]{70Pa2B 4|x1F4,16Q`Is44!{;*{;o*{;\*x0m;;*mN*mN)mN,/ ;/ m;9mY3 ;z n<SN <GZ1HZ3 J<JZd3 <LZ@3 ;.3|<Zr1|<h|]v|]|]2<23v2 2242; )% .v; '1v;4-0v;!-v;-eLV2OOD20d;22Vw<0w< ,s0w<{a0w<O0w<4O1O1O ^fіL}1S;~1x< l1x< xDOH1< 61v<$1{aPtid.xXx9fM\a#3S'46V(51!Dselp,0tsZ, %p51[j)p45yr'#%pVc}y3z)b}A3, 3 4}3#v5pvr+r5T: nQ,* _&nr_rvv6Y26c 2I428@%p}%9_,O.@pred92*92^6Ȣ{96b92 {z$p 2$2p/ k926*j~ :a[6xd{g9%92y 302T9292M92^ ] k$ .] #%rZb`T)68cL y~#d3h x$(}$ѣRe :8=gtcvta.toum29t9T  #nl 92 # 92_65Ĥ5 2_2+163 2d? UG1߱ y27 92V92v^  xn .92 < 2Mẖ>$ 51̱ c7#Tk xkd k"t652u92  290,R8pP ypY7 n7pB 2|,$2zb92m d22:n9292;v2eUSul.loH=*114c 2 292;1n329292;v2n2;z2w;0c58 Ϭ. F$r7<z V+;7[)s֑ +??v7]8#  8,% 8 )11 3V{! CMm6T8 50 -+W*d6@A  /E u( 67_XD2 2S2 b2` [ 2 {]2g2 ;6.21!28[1}|87zb/r8>1Z1s>9>8ǩ)ڬ9O,901:f981922 8198194T|yU1fu WqYfƈE8E@2#49816q1Q9-1181M.cnm!7> 6~/f28 [#f2E2-12*4U;5/j/ 728 8 RTF S[ 3B8?W9_30:3Y2|}8V'111K-Ig5# gO12~X2Sd1 Je2c@9r2N3ff: ret; } `::@x XHELFAS "@"x@8@C*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver,text._ZN5cudnn6fusion16compute_dot_do_oILb0EEEvPKvS3_PvS4_jHfS3_bgaJosharedcQreserved.0A$/atC,28C_specializedO_Li128U8sKguHX-35poragged_NzRf|Om/64]r%]GU%uyQc{Nj1R8a9:c6"1_s*FHX**z*fOmJ:rJ]tGU\:yQc{Ndebug_frame.relanv.callgraphprototyponstant0 Jf *xD%3~?6 [*\/D?H~*oapmerc%Uh$i a++{ eG^&5Ba$a+:+{ aGaAFa%   Jz if*{ G* wB9 df*{ eGB*7   dSmem.offset0  .0__nv_RSMEM_0_0_aliasM t I X& jq6L!)p1  1y& j q61p!! }Q!Ps! 4u  H &   R t  9    (gDP    w CH # P 0 x  x x 0 \ ! :"# 0$% &' ()D@|  (( $,0 \Rp<6\h%h8& hh0_D&,h/Xh/880hP0DphDhE)@gFhT NVIDIA CorpBV;6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/S400F"`RH1x001RH 0Tx,P!7 u!99x9pud9\9X9T9P9L9H9 D R 9 <9 89 4909,9(<9  0 9e!P)( J0 P F q b6,# 3 H( p  p d7 p @ ddTH TЀ}p{$THHE)(bp "  DD D||8D '4 _TH 4 1 H4 O!D  4 4 4 "8 S HL<t0`|HDYa{߹"w vsbyPy.!0A u06x sxPJr /xp@p` A{p` x Cx0 "$  #0 #P pr# 0p| aO^ |PD |  0 Ax@P|$`#M {#ync bCkRx@p2|!y p rpRG `%x@@AybQ @2pOws"EyP0 |Qp&s p'p{ P&{0$x `1t E1riw|@i1t 0` `r/$|O @b|Rp5| @0p5r "@$rTȏGv!{u$xP pR% %p  b @GOPax@`V5r d | ' @| {$1@| @  `" DAP0 &0b@" */,%  -&z`6r C r +b:|%p|k1@|1 $G ^Pp@vpR\VqCy0 PM f{x"n Cx$|B r&pOQ% pu  pab% 5 !d P6$|+?@ 0+ 0  +  5 bpCpp@0Cx`qwI 09$x @$r  P$ `pr   3xe$` 7  /@4R$~6rp rF1tfx P@P0"0 0T5|p5  `0r 0E `O0r<0r u0r P0r 0 P@70@ r #!  @Y r  7 00rP@0r  p4p9P P3#r6 P#r  `@0r 0W rpS!rz!`@#r P 0 0`x2PH`unx!3p@ r $paG P 1 P s |`6Gypp #y !@   `  "x a/$x ʏ +O   ʰ  ` +   0$x"` ! ` pxoO 161t0 ` "   p     *⏀ ,P p +    ;% * +   5p @  * Ԁ%  x O@x{O 3 C      +    p     @     f$|  #  ` & &y@$|pVOr  `& ` " 80    0   0 .5D|r@ 0   O@ '06r 04 0  p P70r  0ď  @   60rp  90r ; r  Y r    9  p   #   `c( @#rp0 !r-A     X@3Gy8 R33!r @  9 W @ % @R  @*d *4 @ /  а  7x   1x03Hsm 0s'  p?` #r8PP  p)@ ` p \ p+p p P 6Gyt  @=Ct 61t`ps"r0 0p P P */@ Gu @xp px P CGu bq3 @}-bPPxpar1S/|@ a y C (0C hH H H H 4 P0   2H  H  H  H C bx 0# T5x@P/x0vOx`r 1@Fx yr % zr % zr`+ % @ % @ @% @ ` @+ % ` % `  @% `0 ,!1PEGu@Q`2x`l@f{ad%x /@@ @ @ @ @ @@0 @p@`(xBr0  0  p 0  xp :<WP]Ȱ@(@ xbr ax p0%DOp( dp  "p`p !1x#x"@@ n`"  "00cG /"# 1%xPuy$`&`ux   rp#"pb@'GP0T |kOG ` xP0r ar 16r bs` ! 3r` 0# 2s Q`ďr@sp{!$ 04 0$r `'r $ ȰP% "p@"0`Epr:pr % rT0 @H#r M1x   `41x Xp p @Y`p4 M&PO MPY*6x   Vx  0   ?0  W `    K  P 0g0#!r  9 |  @YuYW@LYYYM%K30V Y Y `X Y `YVY1PSp&$`P}PSNY@YY8Y&LY3YYMYY  0YT3YYk*Y> Y#RX`XXdX/X@VXXXXdXWXC5 6 X`v; XXV@Y*f X9/XZXX Y*,`Yf"Yl(YYpo@ Y&X./X% Y@^0| ! Y+OYSY  EX6` Fr >YZYX 95 YY YYYC YYjY``WW5 f$|Gr PYPY"TaxP#/"tqx  Qx` @# rP0`p@9@0W:r``X PP;x   W rp7]QO#r Y@!@#9@#r#qX q XYYXYg * 3c / 3 *YY Y  Y0YU Y  2 2`Xfpq_DcpqY 3 2p2@  3r+0,@fp Ypp0 p Y@&&Y &oY &YQ&p%V Y Y `X Y YB&&Y&@Y&;&< Y &Y]&DPY& Y% $&%&% #Y%b%@'YR P%~pap X;x %` H4`%$ p% % p p%0%%1&p Y q.qkPy쿧_g?y}Q  J+A T"B@"00@0 90aD@R@hA. "$,$hd %-Q  T9 ,6Ar dUFBbn D\ A `@L X@ A TA PLl,$p82 `     L  P @B^?@`pl@@ x  84D( D,@HzB `4bޮ000D$rQGn $JR d uPʣ BU^{%(4L / 0 L(_c @4x  4d h@d H ,   -K#t [e@"S D`tUrP}}7xd t*tl T   h @ ` 5d9A $  R$@$@ h 1Ŧ$ 4$A\ ` $ 8   @)X A+ o`D   3Az\ T\ l ( , ( X  h 0`   _   l    8H T 4 D  $ XPX  @l  h   4:@0"D'0Ð I  r@; `$A % "#P?hp mp o_ p fN ""P~n0J` ^x*A +p&xLD$ (H"@  h| !@"C0*@ p __  p  p `@@5'p "# P&-$S@|  (( $40 `)RA&`p)pEppp p,E(@%pp#""p+P1)XpP3 )C  p30(`p03pppP i0,r(@&p0#"p+pP3p1/l+h" +00|`_"` x300J'HV 0Tx,P!7%Z4"m*X  ފRc ++NL$'j!3 U20%!^5^1ud0B079T.6 V B39 < 9 421/929 0B!P)H1(V1qJ @ p P2<#  !( k p0t~p/tH tP!!! # $ %t0#h!p)(16@"pd P##P$d/"X `  _P< p+"`g0t tH  """$ %h&t $h LX@@p d `K$`41I5=\T0(tLM0p$0+` Qj+-*!"sü/ A H+ &, - . R/ t0 1 9 2 3 j (VP 4]& w  , P  |  $  t-[ PM#  @#!@ HÃyC4. T P749#) `;3( O#9@@[#<@/U @H!'(@hV @"= \Z @_#?@ / P @T@/c@#B@@/@#XD@@/$@!F'8@@/v@@/@.J@@/ @.DM@@/n @.O@@/ @.Q@@ *TQ "  (@|8@QO1#U  @28@b$@@/@@/Y@#@@/@#@ݱ@@@/:@@@@/ @@/ @#@@/T @#@ 9M*/@p@. @@.@/g@.@@.@/\@.@@.@/:@ y @. (@ .4,@!p"P0B@, /@"05@Z:^B< @@":@*B@ @/@"@@8@@"F@@/@.L@@x@E+@@@.PV@@/u@.\@@@.a@@%p "g`, `9(l ` O#@@"m@< *@@9o@+@/z@#@r,@@A\S@-@/v@" w@X@.@@dȑ@/@/`@.{@0@@.~@1@/]@.|@2@@.@3@_X98 B_ !r+p,(*@_@/@p8( pX  88M2PUH@P bELF3S #@b ] PP@8@.shstrtab.'ym;_shndx.nv.info.text._ZN5cudnn6fusion20convert_dq_to_16bitsILb0EEEvPKvPvjPS3_S4%bbXR;osharedT;constant0W8?rel[E1>RT W'[7N_raggedU*Y0[0^-b-"  Y$['^.bdebug_frameo aallgraphprototypeoactionop)W&OR)T&' WL  'Y0[-b- ^-" x Y$[.b*^ Lo: 6I IX { P . {2@  )  J  D ` fo"  Q S$@|  (( $40 RA5x)p)pDpMhLd)P'p1/" 0>0J   0Tx!75 `RRVuQ9PuH! 9 @9 8u 409 09 ,.9$9 .99!0Pp mXXEXD!<Ss$%6,`$. D(@$v{@li"$v_ byf!b$t@px00d$x Sy\% r%pRpx"rA s R !rU Y`$xsD q$r@ P ȏ'r" pr3'x@u'ra/$r`a$r!tzp`$r_   p` r!p`$(p(w$8 U8 ``p pP`ZHP@rt @TrR$|O z^MpN1&` zj!)x h  Dt  RkS@'zF0C2" PSi Sp)r Cx N@Szc`$z`G4$0` pR0R$ 6$p%0 a%0Po  d  WO$\G h(1$zd!c$zear`?4  p| @P@r 0$P0D fưEgzZz[   #$t0vpqy4 p!OPpP `0"y M  CMy à 6 IrzX`#$x YPy<1y@r !r `1$r  PpS 0"  0p>r D@1$rP `P 6$>r@5 tO>r0T>r0P9   4 PGy0/  ,    P    & \` @ Ex du$x@P* !3 !     & QO'r  ( 1$r$tp%3$p@ rP@ Ƞ 1fG`1$vPS/x`@x PxP" T x@!REx@Ҁ0s ! 0E r`Azp@1s *  % $$r t'r `4+t   Ey Sy C  (0C b@4@?!x  7 1$rP Dr0$`!xPa$xy'r ```DH!x@@d'r @0Er`4 0@!rp  EH @FrpX0`05h@5h@Ƞ05X090@5H @ UX pP!@H0 @"pRPTr  6:h@rP@ 0dr00GIP! ?st!v 2s*  d  @ 5 t/'r  Eyfx@!x% PPDr '"$(@@080Wx`Cr p1$r  P@pfG)@$zL<`p/ |`@p0 #M)6yp"p% &xP 03R 'r%p`?`( !rp@#x/pp  dG  [?s 0   `$ *    &0   `  0a$x P 9 @  ) P  50@ Tr 0z p!|01p20G+Ex P 9z @ $ Ur+9s 1|_ @p6yPhbr@Pp ` 2s@ s/Wa0s+ N@erh,@  p0*Op/ QO$r ȏ%@8r`P@' T'rP40`/P#p@P0 0rP5r p0*ȀH r T r #< 5 @$pb 0'P  & 0D  '8p&` 4  `0rPp  Ey@ $0D  h0z H$zPi` `C `1@  p  0Pp*0`B "0* A" 0#)@0uh PW$ 'QOr00P$x 0Uz  ! % p*"xy @*#%  5"" 5)0 p%O p5   0z%h  %$0P"PpƏr%$;$0F$`  " 3 @Ad0!!&01$@0x1@Bz"2$f$ P40`7@z" @ p ;>rp`Op*GT>r 0p9  EA !zi6@@r@? 0& 0  v @(+^% @ oY]C @8 @%2 Pq(DOL# УL ! K#L$)l^p0 KXqC@/(@.x@@/@uhE@/@a@@@N@X<  @hN @x@8 !@8X!'#B@/@.|@/@.0@/T@.@2%!N@T  @ @.*@ @P@CMtNL(/J@.H@@L(b @8( *8C 8b h@V bELF3S #@b ] VV@8@.shstrtab.'ym;_shndx.nv.info.text._ZN5cudnn6fusion20convert_dq_to_16bitsILb0EEEvPKvPvjPS3_S4%bbXR;osharedT;constant0W8?rel[E1>RT W'[7N_raggedU*Y0[0^-b-"  Y$['^.bdebug_frameo aallgraphprototypeoactionop)W&OR)T&' WL  'Y0[-b- ^-" x Y$[.b*^ Lo: 6I IX { P . {2@  )  J  D ` fo"  Q S$@|  (( $40 RA5x)p)pDpMhLh)P'p1/" 0>0J   0Tx!75 `RRVuQ9PuH! 9 @9 8u 409 09 ,.9$9 999!0Pp mXXEXD!<Ss$%6,`$. D(@$v{@li"$v_ Sy!b$t px00d$x Sy\% r%pRpx"rA s R !rU" `@r 3i`$xsT q$rP` Pȏ'r 'x0'r Q/$rPa$r!tz``$r   p` r!p`$(P(w$8 U8 ``p pP`ZHP@r @Tr R$|O z^Mp Q&` zj!)x h  Dt  RkS@"y"'zF0Si SPPC2 0 3x N SzcP$z`G4$0R0R$ 6$p%0 a%0Po  d  WO$\G h(1$zd!c$zeprP?4 p| @P@r0$@0D fưE`gzZz[   6$t0vpAy4 p!OPpP `0"y M  CMy aO b̀  6 IrzX`"$x  YPy ,1y@ar !r`   PpS 0" 0p>rd@1$rP`P >r@5 QO>r`0T>r 0P99 4 PGy0/  ,0    P    & \` @6$r  du$x@zx !3 !  VO'r!r ( 1$r pp%t$@ rP@ Ƞ 1fG`1$vPS/x`@x PxP" T x@!REx@Ҁ0s ! 0E r`Azp@1s *  %$$r 'r `4+t   Ey Sy C  (0C b@4@?!x  7 1$rP Dr0$`!xPa$xy'r ```DH!x@@d'r @0Er`4 0  EH @FrpX0`05h@5h@Ƞ05X090@5H @ UX pP!@H0 "pRPTr  6:h@rP@ 0dr00GIP! ?st Ys*  d @% p/'r 0 9r Eyfx@!x% PP0rPW r$@(@@080Wx`Cr p1$r  P@pfG)@$zL<Pp/ |`@p0 #M)6yp"p% &xPPSxR 'r %p`?`P $(( !rp@#x/pp   ` G 0[?s 0@  0 0* 0 00&@0  p @ @a$x ` 09 P  ) ` 050P Tr 0z p!|@1p20G+Ex P E z @P0$ Ur+9s 1|o @p6y`hbr@ @ p 2sP s/Wa0s; N@erx,@  0*Op/ QO$r  ȏ%P8r`F'r4P4 Q/!#p@`@ 0rP5r D`5P T r #< 5@$pb`p 8  & P D  '8p&p 4 0 `0r`p 00Ey@ $@D  h0z H$z`ip0 `28z01r1P   @p*0`B "0* A" 0#)@@uh `W$0@aOr002$x!0Uz  !  p*"xy @*#  5"" 5)@Đ5   0z%x  %$00"Ər%$%C F$`  " 3 @Ad0!!& 0x1@Bz"2$f$ `4@p7@z" @ ;>rp`O'*GT>r 0p9 $ EA !zy6`@r@? 0& @ 0 @(N% @ oY]C @8 @9 Pq(DOL# УL ! K#L$)l^p0 KXq3@/(@.x@@/@ehE@/@a@@@N@X<  @hN @x@8 !|@8X!'#B@/@.|@/@.0@/T@.@2%!=@T  @ @.*@ @P@CMtNL(/J@.H@@(b @8( *8C 8b h@Z gELF3S  f@aZ Z@8@.shstrtab.'ym;_shndx.nv.info.text._ZN5cudnn6fusion20convert_dq_to_16bitsILb0EEEvPKvPvjPS3_S4%bbXR;osharedTBreserved.0 1 >R T7_ragged*Y0[- "` Y $[debug_frame.relanv.callgraphprototyponstant0;W W  ^  #lySmem.offset0 .0__nv_RSMEM_0_0_aliasJ R)T&F  Y0[- "' Y $[ +6I I  P p}2  W'! sV  wH  l v n g# ^"  x U S$ @|  (( $,0 R<6\h%h8hD_&8)8h 1/|5*  0+0   0Tx!71 *uQ9PuH! 9 @9 8u 409 09 ,9$9 9$99!P2qR pR6V\;\L9L S|,S0'D1A{50{}b$ty 0C@Sya%"x/$xPp r=pRpȏxBrd ! s !rm s<`d.6x/s !$r@ /P0P'r1r3'x@'r QO$r` $r0t@p`$r _5  p` r!p`$8w$H S68kP6H `p0pP6P`(@pr0@Tr$| rSMy&PpC"z z@ |@pP @S 0c{ Pp'$r%p3G(ÀO{Px@` "pR1%@1%p  b$`0bOl Cf$x000 Dt !/PPs2"Cx P&r@@@%b@+@@a/%@@*@@WO$@5  Qr? 3|Pcz @p| 03 C pr 02r1D D @|p@@|@  3G0R$%x`Sy` %YOGP ay MO  4M0 P Fʠ 6 #1|0@0"$xp p@Pyq0yP !r `p!r 1$r  P@S 0" 0p>r P `&  @>r@5 tO>r0T>r0P9 9 4P 01Gy P/   )    P     9z` *CP */0*bO$x`:x !3 s0! s0@ uN6x0!O1s@  00@P006$r p @%P`$PC"ڰʰP2G ? @Px0"6$r 0x0 Fx@1pR6G "Pb4 E r  v$6x Pr P2s $5 `'r 0x #  /%x @y @1y AC  (0!  b6x % Dr O'r !r0$  `T rp`!xa$xt'r`44pp0H@0T'r@ƀ!rprpZ'r @@E6H!r  1$r`$r pX@p008hE6h 7X0U$HP?H U6X` pTr `@ 3pR04 0R6h`Tr  pr@Pp 5r &I4cG|]  0`1sf"%xu/6x bs 0`d5t  & V/r @А 0 !r p0pp%u6x!x p4 5r P0r  ' E$( ` ( @P"800WxCr  @`9G)@08|@ |p2p0@)6y"P6r  p%  r_&t08A"`05(4Sx% 3|@6GPi?s p?$r`P 6rƐ P% ̀ %p/'r  $% pa$x ` `(0 p E{& '  T  P%p00  4 @   #p24(E6x PSrE9| & =PEr&)fsp S"y)! !|`11$rP 6rP @1s01 ` Ts@a0s %Pur)*`  0*O *` Tr ʏ0 ! Tr0`5r@ T'r  ` 3'r`V/!@PJr0 `@r4< `@ r1pb "6   PT rP 4   P(@@  Ea  `pp *r0&p  @$r@EyP'(` ! T$| @3| `d`  1Ǡ6{0!p  "SEx`#4 @ C 0P75t  " 0B  B" P `B  ) P!Shp!"& @& 0 pOr 0 0! A| @  ! 0p  !P"& 9 07 06"k"#p"D   5""5)0" p D  P+|%$E # ! %$k&0pF$@ !`2   T>r@"0F$ "1 1rP3d`@ _P0x1!A|" !T>r "0B    @yP!*G T>r 0P9 P ```EA@0@r@? 7Tp !)v @*^RT7 _ragged*Y0[- "` Y $[debug_frame.relanv.callgraphprototyponstant0;W W  (^ oapmercZ"/ /a s   ;kZZ; a*{E e    7Smem.offset0 .0__nv_RSMEM_0_0_aliasr J C%I I,P  X}QF!@uu  H   n g ?")  (x 4S$ @|  (( $,0 R<#]h)hghEf&/ /8h NVIDIA Corp<6`ptxasCuda n ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1/$l"   0H : 0Tx!7D 0%9PuH!  9 8u 4 9 09 ,9(*9 949!PJ0 qR pR6Zp?p`(P=P4 S|L0Da{q"w zIn{U$txw/x@ @xLO$xx@p0#yl %fx0Pr y `s $rU 1r 3s26x̏s !$$rP `P'r 'x0'r qOrP$r ` p$t@`a$r @Q rp` rp`$8u$H pH 1C68c``p pP6@R6(`pr 0@Tr p$|pp /`$SML0&@ yA@bHC k  C Sy 'Pbr @r @S T$r%p@Gu(` OP0C`bx@ "pR1%`/%p(   b$`@bOl!#x "@5    .O *  0GO$v @1tp!r 0 Pcwq0f0 sx! uqr`s$|P@Fr``| 04 pqr` 2r1DT|@a/$x @@| @D`6Gu0Cf$%xSyp0 SOG ` |r 1pP< NS By  MO  CMy !tCubCp/a/|FrIr@|O$x 1|P@ Py 0y`  0" !r c  0a$0@>r7$``@1$P2eX$p4p44 !OT>r0@%94 pP1Gy p/ e  Y    @    C  ` CrP ` "0 /"PP P ppR Ə2PP`sJ@pbr# `r@@L0vd.6x@/@0@d#@T'r@ 0(01$r@4ʀ%`Q$`EP4pP@@"6(0%ʰ0 0UGu`x1p`"1t[ 0px  "@6x.   P p4@ p0Cw"P`p0apsr`x@@r@ 4$~@2| 0 y  `Sy  Sy (0C hC  C "4  0C 0@C " v$6x Rs@% 4 @0"pPTr  `  t'r `7     4 `pp* T2  p0Xp@ ``P680PErC6Xp@Tr@@!x00a'r P@W&6HpZ6h`Cr Cr#P`Cr Hp@$r  #@0r ># ``!x@E r r   @ &r $X r"RK rA$x PF EX @ 5H058 @'h@F ` `fy  Y'r 0r  ƀ2X1$x% @Sr % `Ȁ7 0W'r '68*r!x Drp5H4 R6X@ 7P1$r@r  58@pȀ'68 BȠ P#C`0Dr  !O p PƐP 6`)r6'r P!rWb &x6p@8 !xp5X4 @hp6'r0@Hr`T$r PDrp` *6h0pd'r 4`4TB%0PX@p@ @h 5r E6H   0 8@H6h ARp *6H0%8h`H@@# H"` "p 6rar P P 58h @r P `pRp Trp4R6X`Cr+$`#c 2H`Tx@p6 0)P4  p x 1r `PGu ! px @p` PTxp %0P #!P %`  %    %   % ` % &   *p %b.@0x #. gb$r p9 $ %x%Tr   % & 4 p`  ` p5@ p  0P@ @ %Ƞ@  X*'$X@ 6P %  Ơ@  p @ @ @%6'r`5X 6'r  9(@`6 0%0 5r h@P!r ` @"(  A$r 6@  p58 0 7hP5(P ƀ26( 1B E6X `0 Fr` &'Cr@0 `$3r  0Tr #)p"H *6(1rX0P# ` # #  #%@Tr `04  Π%x (: $  0 `5xpp* &0& +$f/$r 0$ &xp     %0 @ 9`% pp!rE'r 0 0) @p9r r' T$rp 0   @ 00` *H`p `p'h` 8  (`X( #6p4  #   6 Ar% 1r 0`*"p   (f"%x  /@@* @ +@Cx `,!x` P)5r0Dr0 (4  4`@@0'8p# p1$x  1Gu0 )0u$$| + *02p0*8@* 0c"x]1P6xCnp b/ʠ @P?pPp  Cr`A/0 $$PcGL@*/0p.`,`bbr : 1C$1 **1*@11k/{$@,% ax0) P  c{ '&00 p % % 2,$G<` 2r0 fGp**P"r|86sS"yM>b@+0  2s P b0s D:uNx0 `3 P33| ;`f"r50p%p0 4@3P` 5P1T'rpp` 0r0r@0  34% 0@p@P"$ '6` FU6   0R /0  4<11pb%8@"$ "`1/P6r0` 4  `6)!1$r/p`/pEy0a!C r0'@`07b""4p0b"303 D|c/Gu8S@304a$r@@r10`3&4 3%d /3 P S<>7r0%pib1t "6Gy(P 5 @!@#  5f !3# *h@2%@?"P2(8#`46fr 4P42@%5| sO$| p5|0 /0 0 4$@ 4Cp 04Dr P`0| @ 2@5r3P@|!{@  P@r@@Ay 02) 29 2 2O0P%c  0! bD22a9 20|p4R$p: `23P0p`33 0|1D$3 3? 5*GpT>r0p63  33`DA20p%$  7@ 5P343){R\) )R)@)))R);)ARl5pMV   BA;a";C@L "R EPL?P8>P  ig0#+9 D,H]B`  B=I900 B6B@JP Th@hh0  P3B8282`> *HD B$ A( ND?WEPQI`L`X@  C w{{W}`P"!@  7H  0? 00  `0A`0pW A H"`5APp  @8  P !A0)A@! ") PP @ `  p7B.(@D D    H LZi/L K`MXjҏ 4 # FK5\Kp(pEpMhOP#@9"+Pp,%Z4"m*X  ފRc ++NL$'jdX ܍ďP+<Vp6=ZG$e0 8m #^ #l -LYW@ @8` @ x]1\g.pTo [ M'Vh9@@[#T ( #x@( @@a` @_\hpo @/x@@/@"  /@(C@@@ xk  " @`|8̜@/g@&!} @/\@0`d @/f@.Y@ @` B@ҹ/@.Ԇ@j@.@@@.|@R& "PV$@ %6f@.@ @@##r$@ /;@.@ @% [" 1+ @$@@@#4`q$ @/@.@@v@#4@@.@@ 8 h *$ 0R +p@x@ _p @L@ص @8( gp88*N~@x pHj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ27convert_dq_to_16bits_raggedILb1EEEvPKvPvjPS3_S4bb( .param .u64 .ptr .align 1k=_i?_0,s^1s/32D2eQ3eQ4eQ5eQ6eQ7eQ8eQ9eQ1F1T1tUtU!8E!eF 6 ) { .reg .pred %p<24>;b16 %rs<532 %r<33264 %rd<61>; ld0.s8;O2, [Ed]; and#4,pF255;_%rd23F/0]o4oF1o?101oF2oG3o9oF5oG7o5oF8o 6oF1,pG1-p7pG4pyG1cvta.to.global1?d25 2 7 3 d6; movD, %tid.xUY410,15; setp.eq.spg#0@ne.s3pb0\e7rp3; addIEr111gP%r109j%lp`2, 5, sp1; shr="1253, 128; di#%r-H99, %cta wb0a1290@%p4 bra $L__BB0_15>X3, -1X6TV"lt&p55280"2854p5117V-W3neg|"27#17051*3+ 3: .pragma "nounroll"&#nc~a118, [[0+-3W-)11!12" \"12"?290x&22x*28x:122x" x1"1x6x4x7x6x&8," x&"5x'30x0x&31x)30x3" x3"/29x4x '35x4x" x&"3xX1X3X3X46" x4&"7x4X W4W4W4W4W4"W4W V4V4V4V4V4V"V5V t5R5R5R5R5R"4R5R 5P5P5P5P"P5P 5N5N6N5N6N"N6N 6N6N6N6N6N"N6N 6N6N6,6N6N"N7N+7Q7Q7/7Q7Q"6Q7Q 7R7R"7R7R"R7R 7S7S" "/ !#64 p6i6i3 +4:" 878)137 8F8~8F7; mul.widehd/ 4? 88*29888c88"8,29888" !18"9,29999a99Y"89-29999" 9e"9w 99"209s"%20N &20Q)20Q2" #201"&20Q &20R)20R!20R" wR"R&21R &21S)21S2 " w"87_9?   3 7U@ I03  3#21)+31J&)21&!21&" J"2 +312 2 2  2 "% +31'22$ 2} "  "$ ,312 2 2]2$"54,10(*11g3g2[u 8g22/122J 9993" 9"qC8, 1SG2G2!3:S#loZ|1gapA5`3`d31; re wnwT3!43d0; not@33Y76;53 0V1? 5*203 37$dXFb$23 B$23X3." 5/67mad{e=#g#p19R 1E%ub35$5c#23&8X9;2c2A 99C4q54; bra.uniz2219:FQ4-h4 otd }:#d1 :86h 3W#24m z rK7 G <6 l445Q Ui2V 2#p2?5l4shlD24>4=54@d 6i3iq4{i4 2z/z w3 } L iW3'ia&6:}<G1h/27G1 2$ 1-244>275:g9244j2QC4, 3*/137QW2vTv$d4$ :o$)59$5E~.1095}#249248W $ n$6$ 626DBnc.v0{%rV#%r, 222}W29{M53189E(h6 <& |8T3l &26~3j #%r24<+488    2 3 P37J7 @<3<8 6 0; // cvt.rn.bf16x2.f9@),. _1. j[$st @22],pO258}S33 W24&Q57. 7-c5 h sF270} #30 $9 U22!]1: ret; }/-0/Wk /As+, e+eF+eF4eQu+F/,/,e/,e/,e/-f..ttUtU!1/M!eF/!/O03 !oK T/#o o/!o i-/!o/6o/6o/6o/7p -z/!p/4n/1/s1/S1/1/1/( :7#/1/1/ /&1/$6 / 1/G1/1/1/@1/1/61/$1/1/E /P1/1/1/7/V1/q1/S1/H/c /;1/7/7p/1/1// +/ -/ -/J6/ {/ --// -/ -/D /.1/1/0$__<d$/"l++-^+o+^?Y+^?C+^?<+^?V/ +O/ ^+H/ ^+A/ ^+:/_,K.m,mNmN.8,^?/1^^6103%^/46^, /1.+/11?h+4.g+ +@?%r4Bg+|.33]g+6g$-g+.A!]g+ .30g+9gMB=1:41+ ]m@01o@_1q@/,/ 1d_? V@C e_C ^ c_4E DGb_Cd C-C^_ C:AD? \_C9[_y2z5/xLJ@A` MJ,Z25#2?J4X5QNI4JpH_!2_@D511UPR'[VK 2_UfP[ 3]NP cK"[pHI WMK:% TCY6LfF1F$ }RqpNS o*F1|E' }+14NI7N+63NF~ZQ  $ m3U zM$ O$4]h ON' J16 N I6(7R3101IW  71f@, %r[E%r977 Lr11[WG?2_1oK8S ]9J "\{V&89: Jk]9  Y] Mh 6e F]  [/'6: Jb6+I Dbr0J b/00Y #L1Itbi?74}8 +b9 \4+ %9" f`V9! k%86sJJ ! yd$: l^^?^?^?^?%%^%^%^&_'mmNmN*8^?{H Nh N g z!g.g.g.g.g.g/h :iLii1 ii z + z3l33U33M3333U33M333CU o83  N33 ( , +D3 t * * *=3P } `&&@x HELFAS  xC8 x@8@%*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver*text._ZN5cudnn6fusion20convert_dq_to_16bitsILb0EEEvPKvPvjPS3_S4%bbXR;osharedTBreserved.0ocompat1>RT7 _ragged*Y0[- "` Y $[debug_frame.relanv.callgraphprototyponstant0;W W  (^ oapmercZ"/ /a s   ;kZZ; a*{E e    7Smem.offset0 .0__nv_RSMEM_0_0_aliasr J C%I I,P  X}QF!@uu  H   n g ?")  (x 4S$ @|  (( $,0 R<#]h)hghEf&/ /8h NVIDIA Corp<6`ptxasCuda n ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/$'    0H : 0Tx!7D 0%9PuH!  9 8u 4 9 09 ,9(9$9 9949!PJ`9R qR bR6p?p`p(P=P4 S|LDa{q0{@1b1tSy 0CuSy, %"xwa/x plr! 0x:pxb@r0sA 0roPqs"d.x b/s !rq/$rȏ'rp1`1r/@3@'x 'r pOr11 Er p$t@pQ$r  R r@p` ! rp`2`8`@pPB`` UH@pp`W(0pr@@ Tr$|P rSMbS"y!&awk$ r Vr{PC pC" @pRy "  $r @/$r DG~ ROdxP /`` @% @p"%pp  bGO0WG0+*wv"b(`@1t0cw q@P$rpCxb01t @Ȑ^`prPs?$| P 2|bp5| 0 'PO5r   V5r Y5r E| PSG(%xqyPQ %VOG@ܰBy M?  CMy !t`9r`cwu C p+W$|/%HrPDrp| `O|  @ Py 1y `  0"@ P&r S  0b0R'PVP906A @@>r44 4 !O  T>r0@994ʀ`1Gy / N      @    &;r p Crp "@pC0S0yj0 Qr@pR p00Ar 0 0 00fr@L@% @@ @d@4 p/'r  61t @0% 0% !tp 18 p@`'(0p0r@@Gup x @p` @x  "@x N ` 9r Er p44 pw`Pxpsr@@x/|@Рa  Sy Sy (0C  hH$ H" H H   @H _ H H H  H C bbs@4x@3xT5x@ bsE$%@s@W1t y$rP Tr Or ư4`Dr  sr0ArB'rp4$ $ Ơ  Ir04" "0$09 0%P5r  0r4r# pdr @p rP "pA$rpp5(07$B rPP 7"@Er4 pD2 %0$880P"bH@$r"@"R`9'rUh`5X  P% (`7Tr `@6 <Bp8HpX'r `8 h'r@9r"ph 9(5r!@ 5r  S Er@ !8 1$r`@5X@!Dr  4 07h0' @9'rp0rBp'r0EHp`2 pU8 p``J'rh 5( 0P %5r!5r 0XPPh@rR$r 0H`@0r Cr P PX'r  05(`&r#  PTr` 7b P% P@Uhs##@` p5r`P88PVrSr 7H !VrPir6:(H r# Pr pp8P p5h `H0r 0@`fr2"0p` p8P 8 DrP`Hpp4  @h PDr @@ # @ `PGu 0 pCGu, @x 3p`P 4P ` P #P! 6{$%x"" `  `  `  ` ` `  `  ` ` 9r`  \)& @ ` *0  0 0  `0 5Vr0 # `e'r@ ` 09r 0$p#`  @0@g$r@$6r %  p2BFr H$p @ d"@405(Pİ 22Fr0 0&r 0h@p&r P P8R    ;'r 0)% @ 9@% @hPUr0``72  `P@H `P 0 #)"U(PRP9X h` % P0Ir0  5Hp0 0@9# # r)0'8#n3 (080X Ir 4  0#3p `$0  '%t ':4@  PP+$/]'r &`V'rp* `% p* `)&rp`Y$r p4` + "R'XƠB0HP2:8` P(-&rP0P #P+``+X# 'h ( Vr @dr -- *"b)  P&)2s 4*" /` ` p `* 0 7   pUx P 4  OP.$PPp@w"-7(00  , $ 0 )u$$| *a | @p0 pM70*#yU"p0+#x`*a+np bP% 0P* 060?5" ArA @."/*$ sGP/sC0+.as+z$x   Pf$1t 1`   `0rz7*a%x $P,% 0ax p%   `  `00(E$r  p!|`-1p29G*x2rP !| #pR@&p**PCrp #sp2p"|6r+@@+0s9@2s+ b%  ̠ 2  @ f/r*P d` '3 ``$  #P@39 p 9,Ir,ư!   #1t4 @Bp@P  P`&%  Wp30 r0 Brp<  A2pb0 1 rp 1pR'35& @  1 k# @H`#p04p  4@pP 5% pEy`$A@WOGL`2""40b20!| P0 333G8]P3 4cwx 'd` Ar p!@@r!K@Ty 3gdr!`VGu@` P 5$r  ` @`* ` `y`2`p8'b   0r/0 2;P"5  04`22 02 A 59 0!h`271t 4/37r2xdx 046w 2r 04pPPp83|06/5rP 5 $  204s|" 2#  2$" 2 % /#@  Ty" 2p5"46D " 3$% Ā 6r6 37" 3@ @203,0303 032@3@30d O54$P3 p5#G@T>r@`99 `3P3E`DA03` # @ 70 533)@RR) )),P)))R)*n*DR_}  B AQ"rBC@a 040]R0xDP  Y ]c+OP H JQ  ba59^B , , @y 0u"$x0%0ΠnO>r `P@pR U>r 6 A>rp  @r ư  Vr @@\ @]  TyP/  TGyHp   #\9@O" @C8 @K m&(+ TX ,)K*CH/$ #@0@Tq@ @/@@L,@@, +m*@H8, @@(8"(( @ |8X!3#B@@/@.@@2NL,T,D  @"!@ @C/07 8k@@7 @8 &88P@ V 8ELF3S  7@3VV@8@.shstrtab.'ym@_shndx.nv.info.text._ZN5cudnn6fusion22rearrange_n_convert_dqILb0EEEvPKvPvS4_jPS3_S4b\V?osharedX?constant0[r ;t>r  6 d>r&rp   JM@z\O 0] B@@/  TGyHp#\9@D& @C8 @K m&(+ TX ,)K* )()@0@Tq@ ?@@L,@@, ++ o H! @@8  0@8X!3#B@@/@.@@2Nw$T,D$ @"!@ @C/07 8k@@7 @8 &88P@hcZ 0@ELF3S  ?@X:Z Z@8@.shstrtab.'ym@_shndx.nv.info.text._ZN5cudnn6fusion22rearrange_n_convert_dqILb0EEEvPKvPvS4_jPS3_S4b\V?osharedXFreserved.0.relAOrelaXAS1BVX!WXdebug_frame anv.callgraphprototyponstant0?["t$mSmem.offset0 .0__nv_RSMEM_0_0_aliasC:M]}2 /W3! sb   G`  V 'fC" `H 8%S$@|  (( $,0 R<#Ph)hgh /  j* 0!7p "$uXuP!9H9 @u <09 89 49 09,9(9$999!P`0Y  Y6RX7 XdS$5DA{Spy%{ x?O |<p0 ڏM Y/{@Pby'zz0pxp2y_@F 0@ rppP/@S@P$| DO pd% /  x 3@P0y"$x`@y9&bs! @ r 1pP6xxp6x As<``.r?z @6xP3 1s q$$rMa/$r  $r !P'r 0@aȏ$r@@P$r @{f`p`$w @u6 b@pP @!1|r0S 0V$r P$|Z6`@ 3@#PE$x 0x O$r  04pr01P@|(|  0p@Dx 0| ` ` `$G@%` !x a/y@` pVOGP@pdp PBy0@ M pP`1pR``T$|  PCPp$|  0px 1@x  P@$r # P1|@@ 8pD6x `x5x `&r0e ?x$~ 1x `c6x P`4p5r P`Gx pr00`$G@6|`$P0x PpP )r @Dx'dr 3@A rp3"pp"ub60`0@P$  `@~ @!?  H $ 3/6x 03@A0~@*01pO6x `10$x$ &PPR P  a1pRpE6xa/G)tX 13GL@$x Ax"0H$x @ P1 xU6x 0 @#6` @"p ) "|0DP K@p%p@) @0  @% ʠQ    1S{ 0`P70 1x x Qx   % `80!|  * ( 2xp7 ppP`$ `"r4|p4p0x 0x 01| "@@$x PT r`@rp0& `U 6x@@%7@T r p$% /$@ugb$0V$0q1E q 0pt"H o@P6$ư0PrĐ(ip0`` h30i#G) @E{  !x  @|  !x!x  Dx 0qOr 3 %p@% `  p !@6O &  @/9G @ 0 0 1$x_`!PC6| P   p"p`@ @ 0|0d"$| <ԐOz(@x? 1>r d$xU>r  P(PT>r  0P"pR0T>r  `1@p p SMp   #|!P A| 01y  # 6GyHP  a=t' @# @* H?* 1*s ".ThC ,)p38/H$ #@0@Xq; @/K@.@ @ 0|#" H" P@8/P@ @@ 0h 2m$\0< /@.#@ @XCP#5  +2@ OC  @B?i/O@.7@? 8(  %p1P Q`xt@d aHELFAS  `CpX d@8@!*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver/text._ZN5cudnn6fusion22rearrange_n_convert_dqILb0EEEvPKvPvS4_jPS3_S4b\V?osharedXFreserved.0 compat.rel&AOrelaXAS1BVX!WXdebug_frame anv.callgraphprototyponstant0'?["_pmerc`^%   ?o^"`' _ CSmem.offset0> .0__nv_RSMEM_0_0_aliasP3capMs,"& Q"R!@u 0)0q` !&Q fm" ` Hb%S$@|  (( $,0 R<6\h%h8h NVIDIA Corp<6ptxasCuda 3ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d/   x* 0!7 rXuP!9H u <9 89 49 09,9(9$9 9t!PLJ Q`лY  Y6Zp? pL S$54D(1c{USpy%{xO |#p0 ڏM À/{@PbyI'wvA kpp#yT&({P"wx0Sbyb`Cu jC p rppP/S$| O ad% /  r` $r P$| pCr 0@$|    0@x /$x  `xp@xdxp0x@@pOx`4 0x00 pGu ` C @!x @ 0q/y @` ` `SOG`Dx*{pdpPsCA @@ r1pP`#qPasd.6xPC2s. !$r a/$r ȏ$r  p'rS0o@a$r @% @ P@p`@$ 0c6#000'6 ap"3`6$rDr40xp0;PrTQ1|@pO B$~ @ @@y  Mc{01pR16x c ?0@xPa$~  5r # !Tp x 6x @|"Dr  `P@  c Br HxPPx!P2$rp!Ax2yCx@T r@`ex?`@$t!Rr/x6|0 @px01p@ x1p"xS6x Wx0C6x` P!`0p"vp  0p"t Ux@ Pr0a6360&f p" /6P 0  0U 0eO6S<0A Xp@ oƏ0@6xS X@D `O@T  0 p3pRp%pa/Gl 1@xPSG9:y {bx 0x p @@  "Tr p/| @p"@E6xPP 0@ 000"r @0D` F P%) ̐P"@ !S{ `cw t bp 0x _%  X$x PTx|  0@4 dTx  # 0@4x0 Cx Ex 00x00trCx 03Gu P9y 9x Txp dTxp#p`P ItP " Tr@ @Tr  pP0r P! 0P$|  P0x   #`3~ 0   _0p"t0Rx 3p%P   2p"vqh  /  p0Z 0`4 Pu0pP/R @6@!/p#@0uC6x a/GuP1p D6x h pPҀd6w` @ Ex p 4@p/$| @pO$x @ 02 @`06| p Pp pƀ P2$x   pp$ oP `u  p/ 3 @ &x  0    Cw4"Ct*ffb.w  P#r@Sr@ O !(F6xPP P%@P   O PP*P@P4 pP P P 0P /PPC$|P 0 P0| Q$x %`@!T6|0 P 1rP@C6|" E| 0٠A|/P$0| 01yaab|3`B~0  U&  ` @ 1|\@ @ 0{S>r1>r@ u>r tO>r % x @̏`!/@P?6Gy H *"H8WM߿E_N4A  Ap)P  0A+p"R*/%@"@  , P`1PPBz04A  .@99@$8`@5P(A0B.$D$B6B@,L@L` Q+ B82`!63,/T%3,d! P / @ Q#04!   &$$&$$$&$$ $$"$A""FA ZZ|E#@ +sGZz+ $zT BvB*XH (DX<0 H @ HB%B0"0`KTJ45P* t% *=%rCrC 4 #!A&pwC .?zCpp8pB@%Z4"m*X  ފRc ++NL$'jB=gP!!3 0I'II bI`-CD4#z   @8 @> # 1 R.T8 ,)Jc  9@@[4KjF @HZ 3X@  @p@` @_h&P @/u@@2#po " @8@/z@@@ 0h QF7L<k=/"@.)@ @XCP?@ @ ˛:@ 9y@Q@0Vp"F  h/2@.L@ @%T [2U!B,_*S 0 @@@\@q@@/@.T@@ r8!`V?JH@@@/2@*PW t 0LQ+p@@ O_j@(@T` q8(  +p@18@x hHj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW5smem_E[];kisible .entry,22rearrange_n_convert_dqILb1EEEvPKvPvS4_jPS3_S4b( .param .u64 .ptrh:_f?_0,p[1p\2p/32BA3bN4bN5bN6bN7bN8bN9bN1C1cD'Q1qRqR)k16 ) { .reg .prs%p<51>;b16 %rs<332 %r<30064 %rd<54>; ld#%rd6, [@70];k/97kC5k8kC6k?104lC)12m9lD3l/10mD3mov1, %ctaid.z2y5105cx; shl$3,30T4, %t,rsC5; add.sZ6;S; and\ 268435454:7!h6, 127h7O5108536870784; sub9Q-l:9l8l1mJ67108863O5:, 1L,1K%12L5; setp.gep:97; @%p1 bra $L__BB0_47h/27D1cmul.loX!27r3%r1@eq.s^p023; cvta.to.global.2d10n3wid #rd2$, 02!92|U[$>.3:=D)115mC9lWD8l3lC71%r2; mad1/RE3111:"):2798$:d}=114 Mr115%"6F(2y9x3x7x/d9w5w8w#nc%3118z#lt8#41#neR5R 133A6T9; or a!p5{7{ YOrd51C%di&202[2t$'2291:4A 23/(7y&8,)d124O2aV9$d5> r21264tvc22], {%}; bra.unix 7F2*C#4]9 210737418= b283333\7, -8[>*9#p8 8 k4133 I%r17j3"2j)3438* % [aKd4max{7 9 83854285 9 0y9, 4194300; neg!287 M138,KJ<:1384P1283 v2, 409610: .pragma "nounroll"18#-` p*  `  141- ) (76"vp@41, t// cp.async.cg}B280] 025]3MA141; J'2:!145- p;:145N8#N5N4i44204-8j j317/j 8j3?147j4146j8j7j4j%50j O j3;+15#j 1e3r150^ M3 M31M/53M#52M&31M+53M6M5M 5/56MI; 15#M2 7M:614#59I i 33 *36i8i7i4i8i8i  FT, 81905 505 M#p2T @ 0Q!3;20:2Z > #285#28C5, 1/607#16Z+16$'2020 0 78  29/ p 64/644288*6429 8 2;'22*5:ommit_group; A !$wan 9@bar.< 8j E(43$162L 4 4R65j4$/ L16m   A+48|91 y 2 #70  #17 0, 1342177 H1)17$1")1754  %29 2 3#299, -%178( 7( 9 R 1*#5I#5H#292~ 3  ##590s15R 9L  "2983I?     #p3 3#19KJ // ?[.$(//- //pA:9 3 4 p J@%p3  86*Z O-512678626 Npk 3 202;20249%40201p394 3 #21J:2, 222/09 #10 o 3 - ,*25 90K9 42a-3J +3{4~4 ;#29#r1b 2w 2  26R >2s C2#21S$ 2# 2#5 #2295, 2 1K $ 0 3 U  ;4^4rL N p@ O2} 2}+224W F G lE)5qDK7C 4C 4:43: 4u 'S  6C N%D#5D K'25n e!r[H7!v4N{83B236}3)G5,5 5 2S26a =I23#41#42Xvt.rn.bf16x2.fS4.6!5. 93P\\$26"266 P6,2672659262$=265Dq6 2Q(OV2RdF>=A72$..6976)d4!#27H' 4!PW8\d R=  I" f&4%%i&4x / s8'+UE)"{352}b+p' -50h5hK74+16:8(R741}Q 7: ret; }@3(03The-/@4)p/pQ/\0/bC/bC/bC3'3'b3'b3'b3(cNC36Q1qR3D3~03"k30k6k3l31l31m3132h3913o131=31m ?^WD313113V3V Y03313131*3131313j1313n13!33X1313n1313"r3 34*,3 > 131313H\3y3a131313k13{3L13y13V13B13V13w ~3o l 3_31 +1313k13BV 3mnC 3C %3 N3l#3l3u3 -3 -3 -3 +3"Q3S13i13P } `84@x bHELFAS  xaC8Y x@8@!*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver/text._ZN5cudnn6fusion22rearrange_n_convert_dqILb0EEEvPKvPvS4_jPS3_S4b\V?osharedXFreserved.0 compat.rel&AOrelaXAS1BVX!WXdebug_frame anv.callgraphprototyponstant0'?["_pmerc`^%   ?o^"`' _ CSmem.offset0> .0__nv_RSMEM_0_0_aliasP3capMs,"& Q"R!@u 0)0q` !&Q gm ` HbS$ @|  (( $,0 R<6<\h%h8h NVIDIA Corp;6`ptxasCuda 3ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x/ "  x* 0!7 rXuP!9H u <9 89 49 09,9(9$9 99t!PLJ 0 PY  Y6p? pL S$54D(1c{UbpyV%{xO |2p0 ڏM À/{@bby 'wvA kpp1y/&({P0Cpb r]pR/yjCpb$| O#ua%    $r@ rp$|  `h$|pPxPƏ$|0pr`@ PP /xxq$x p`x00Pxpp4 p`1t O   3Ga%x0ppyPp 00VOG@0Dx{pdpp`sP1 @ r@pPq`asTwd.x@p/sP!rP{ /Q0ʏ$r p'r0'r@rP11$r%P@p`0pD00 pP"36r$rfrDr400[5r @(|`@y@  `M@ r01pREx@c?@x0!~Dr  /x Txpp x| r@000f(0x b|@x #pHx@34ƀp6GԀSy! !p6xE x?WrBx ``r`/x1| !0 dx @xP x0p"rBx0Hx`Cx@ |0p"tpp@#00@@p"x@ vd F@U I T5f`5 f 5 V/ 0 ' R$1oC  01pRT5bO, 0'Y5`@x '5Ept5`/Pvx`Q/GX 1@4x1p`#yp0xU Tx #|fwpTr %p0| O@P5p"#|@#@E5|#Pp+0 `6`p0#/G İEp@p !S{ 0C t zb$x{ @$x_P@@% 0 @ H$x`Tx|40Xx9  #p"x`@  Cx 4x1x0`x 0 r  Cx   aGup@ p#yt@@0xWxTx0 Px @$  2xp 4r P1r.Q/| `r P   E 0_1p"t0PP Cx @ r1p"v0Cr 0h!/p0Z0pdxsnp/*!/p#@0!C0!u@ Cx P @PҀd P @%P4@p/$|@pO$x `$x@P`3| `@rPPHr pDr 04p0  #` Pu p/4@P)u  -xpp%&w 0 f1t 4"Ctb !b.P#r0kx_g1t#`O$r #40 P(0 +"|C$|  6$rrP p 6r ⏰& 2$x9r@C5r  @G$xA|;d$x  !(p `% y|03| 0 1|P` syyAd  ! -c{b>r b/>rR>r RO>r P oPx pp#M| /@@P6Gy@ H@ p*Q8}=&|Dh  A!`  0,"R@a#p  , 6`!PPB P4A  j#H9@9@8, $FAr 5T,A4$0t(TX( Q+ \A PT82`&730+&H3A, 4X$$ $/$ !$HQ#04 '  ((((,,&,0L! L^5A,@A ^^E#@ :bGZlz A<$< ~T BwB*XHD 4 #@ B&pCD%)p)pDpC@$Z4"m*X  ފRc ++NL$'j8pCC 0p 0 Ee3E /|B 0/\. 0xe?=D JHJT,?& 2J0JJJ ^J`-CK#z x  @8g4 @VE E 1 R.T ,)Jc9@@[49KHG @HU#X@  @p@` @^h6@ @/u@@2p " @8@/z@@@ 0h Q{N <=/"@*!@ @XC/QO @;CcB y9y@ܑ@!cp"G  h/2@.`M@ @%T [E!#C,_*S @@@#(T6q  @/@.U@@ rW8`o @@@/2@ t 0LNR+p@H@ O_j@(@T`a q8(  ,p@1 PU؂@..P hELF3S  @PP@8@.shstrtab.'ym7_shndx.nv.info.text._ZN5cudnn6fusion16fmha_reduce_headILb0EEEvPKvPvj@S4_bRL5osharedN5constant0Q2?relU?18LNQ #U ,23o_ragge(S+U+X(\(  S U#X *\ debug_framei aballgraphprototypeoaction$__internal_0_$__cuda_sm20_div_u64 $Q!I L$N 1:Q > V $S+U'2%' X(  S U 3A 'X `:W 0C CW y J }2"" 0 .1 H3H H 90' HJ"H 0'Y QH3H 0' (X t c18 ( SS$@|  (( $40 RA5)X< pL(o`(A!"H,p` 15t%8 B*`H8hDh#H"T*Pp%X LK0/1/ %"  !/B$$"$$c$$$$* <l!75  `YY >uXuP!9H 9 @ 1 809 49 09 , 9$Z99@2! @ ` d`PPP  Pp" DD Ss$%64h0,$084̞0DDD@$vW$v`Sy| !"{^ b$rm0#y%x x#0pCx3sb`` ` s,$-b/sdx`/s ( !dP /'r Ex@'r  PP&'x `r u# `!r  p$t@$  P" rp` r@p`p``p$z  0r13PH 0PDpy 5H 'z ]SzPSʀP'(Wqr0PBr   @ z0| O 0_ 00TM)p HP&x0~"&0EzF] r<PpPSrr0h %QPriS '(paz 0`&0Qr 0c%z a%z dTGxczn p |`bpR 0!0Pah@z yS b`j` &`@$z @u%za$xPʀ$Pcx @Dy!1r 0yT'r 0 !z'   @# 09$rpP! {SbxlR/" PE$*O'" @@!" @ P0* PP5*PCApv09:`98 `@x@H0pD" p ' azeA0E$x 0Gb Szflmpr?rp| `c`!|@ 2rp@d~01r0 zZ"$x1 TrP 1DPz[ !x@`lm` $-O `pSM @y@ *My 2$v005t/ Sxl. 1 z$p@` PG @xk3``@zW1@x0@?@x6$rp@Y 0 x0xb&1$x9$r 6r @   ! a|01$r3%0k|00@5| `0r 00 APO0r0t!r T!r% 0rPp0r1 T!r@@%@`"0r@0@Dx@4@6pA r"pR00r  @@y!r 4 `0rY!r0P 9 4 P!r  @,` @ P9 9  @`@ @ %`4 4  P0@d0r @6 `  6   ` ` *  B|pP @ @P @ 4 `P 0*40  @%P  %P0P   E r ` 6yux@@W@  E!r H!r @d@ 3!r @*P   p&@>rY>r94ʀ^P |?!} z00``$x ` as  $%z  #` r C`4  03` Dr p%r  #  `3 0r1@@$~E%z   r P00z  :r  %r V$r X'r 2'r @ Tr  0x @  pƀ  0[$r@ ` Tr  P Drp@ @p @r `103x@ ` `  0 0E z #rp@ r!a0Px10Er '  $ " #!$tE z 5x 07r P p# b   p 1SpHrP@x vP5xPy"B#E  *"n $   /`  0@P`0`H &v .'$"  E p(P -p@yx T / O dxv0P !r1x``@% 0` 0T/@0%0v01x@0( `=@v@ p0H!r 1xP 0 P P %0 ` PP T1x p P0 %p  `T@` v%@P0$L`0P  0t4@ ` ` (`  p#8@ 6xp @ %0@** ppp @ 4 p '   .#5t0,$#yDA%& *ax--"-#s|@.p- d."-`#9-&--[--&x0t @(Er0&3$)$"0% \`@`'00(3r& \P5xPp/Ux %``(5r%#P2s| /i"5t 0  0z @/ r `0>%   <  tp@%v@( Ty 0(qy*C (0C b% @7 Tr aO$x@( !r A$r@`1'r4,`!x ``u'r 0$/`Er0&r@C@$rA0+p4 5(  J(P@ 10$1p`/"R`+`EX`p7HpUH078 7hX80Vr 0,=(  -Dr 0`h`X`2r@ p@@14 %0S) $.9s 0r0F$t p 9r1%v $ ` *  0fdr*@!04 /@    0*(xpdrqO'r 0"$  P,p)p8  @p 0Cx @'fH( !!x.#$$E$z4R |"p02 0-6{P6`!` 4 /H r@9|$Ar?00P p3,,0",2sP "0#/,Jx`6p3s"d$rP@r??/J`1r/@@1r`" 00] ? ΰ3| )&@r P1?Er02*09x#x.H$x0$Crq PRp100 1 "?30@p P$$ax "?0Tr P1\P02#@E [s  '2`/ $ 9r 2s l  %,  4x @`l6`4 s$~ 2| 20% 0C$% 35r 030rp3 5P  #0$z 4 0| &p26p2`(`5@ PPGp`PP72rfs` "0 ` 8&`8r@ pP -Bs  sD0 * NP`r p;`$ @  0sOr 2s + Op$ ȏ) 4(   % p0T'r * ``)%  /$p@0 ``1r)"<`T r -b:5 7@p+D208 %̠` (&`1  63| <6  5rpGr%x$ P6$~ #EyG@p p6P  iz `;@a |02` PEr-Tr L HO ;2rp!P0rP?`!$~4 ppp5.;;0@$zJ%z ;& PPP2|  p( p P #p&rp* <9'$@B01& & 8# P+9D @ 9 * 05 T  Pbpt<*(`@v@P0T@ &  R9v@@ 7r0 ;@; 0;0;&  P @0z P=95tE$z @=   1r 1P $`   00 !$~Bz;(#0!x @@z;&$9x0` @ 1y /p;4 ;:580$4`#&P;9 8Ơ4@`9i!r   @9-8Y!r@99   9`!40`% $4`;0p"0 070;; ;(E!r!0; 0E!r!8 ;,P`; 9 @;0$ :; ` `0` 0P@ ;@@!*: 0$ @ P 0$`; 0@P@ ;p< =P `p`  = pP` &Pp;p@0G ` %5@ &@$P  %   @ p@0  `  0H00p#|A0 P0 !!$~0` a P%a P8# Dk0rPP (% @ Ơ@A`* ( P7!(@Y!P( ( @+!&`00pP Vz eP E>r = %H 4  P 0405r 0<G P C Z P #T>r P0z Gp4  > GEA"P!F%5r  @#D @"KP&P  pG >02} > * > >%  >) <&r0>p"5r p <4r @>6 `P%r = P= >O /1r p> >% Pp>  PP@ J'r  >7 J$r p>( C'r ` :   Fz%r 9   `%  3r  ``00?05z @P9 ?` 5z >!x 0E z >>* ># b3P?`)t>Er `>Đ PP ? '> o p> >>?'( '(^W\' P'(_':5t @`('' (<'@$x( '0'P (''(' ( '(( `'(( "$X (ȠAB(p'(( ( (' ( (((op ( ((? #(H0!x(0 I!(> ' ((/ '( (Ȁ ' ( (' ( (P(( P (~1#(K$ ` (  (= ^('Q5!(  6(/ * OP#(6"$87!( &"rd( PN ( ' ((y(# (P ((P6$~%((y9$~ P*('$(&`7 &z j' &p&` ' (Ti ,|p0X .G{@0Pq7@ @/@hؑ@@/@!D@@{.@@̀ @@9B@!D @`@t8" p@8X!#B0G;@/@.@/<@.@/@.d!@2 3#gt@ @:@@/D@Q@{@@ (-@@ x8( #P 8pP@h.e.V ELF3S #@  VV@8@.shstrtab.'ym7_shndx.nv.info.text._ZN5cudnn6fusion16fmha_reduce_headILb0EEEvPKvPvj@S4_bRL5osharedN5constant0Q2?relU?18LNQ #U ,23o_ragge(S+U+X(\(  S U#X *\ debug_framei aballgraphprototypeoaction$__internal_0_$__cuda_sm20_div_u64 $Q!I L$N 1:Q > V $S+U'2%' X(  S U 3A 'X `:W 0C CW y J }2"" 0 .1 HH 90' HC# 0Y QH3H 0& (%X t cP18 ( SS$@|  (( $40 RA5)X< pL(o`(A!"Hptp%8`]*P5Xh#P!C#0]p%X TK<0/5 $$$$&C$$H$* <l!75 `YY >uXuP!9H 9 @ u 809 49 09 ,^9$9 99 2!  @  PP= P0@" DD Ss$%6l4 H  ,h`8$̞0DD@$v$v`{^ "y!b$r 0#y8%x\ x@pCxBsp` ` s#bs$x`s !$P 'r\ Ex@  V'x``&'r a/$r# `00tPp$r #  0`@ r p` r r pq$z P$Pp0w$H XH W'r  0@r"3`c'z ]!r  [(0v0#qr0@Br  1 z0!|'pO 0_ 0@TM) y.q"rzF P Sr BqhpP0X aiS@ r0EpP@^:(@1z 6 0Pr p@d%z a%z dTGczna p |`bpR 0a0Pah@z yS b`j` &`@$z0y%zp0x PP$0Px @sDyI!#GyT'r 0z  @u 00( # P0  {Sbx p6$r&pR`/" `05*O'" @@!" 0 01$*5*@C0Apv 9:P8`@x@ `3" P' aze5x @Gb Szf1l Szc 03m pr?r`!| 0@1$|@0@0p$2d~  1ী@$xP11r @ ZPAr1DPz [ P Ppl  @% $!OPPP pCMPy0 #My6$v0cxE 7$r  #x0R]p@ 6r0G @x@3``@z 02x@?0@xz Y  xXPxAVpA$x 36$rP Pp pA| 2!0 !1 E|" 0`% 0a$r#0!0*"0% "0"0#`% b40r0"pR00r`0 APO0r%0 p  !r@ i!r%  P!r ` `9 9`9   @9 5 @y!r 5 9 @`9 9 @9 `@9 6 @)  @9   9 6 `i!r 6 i!r  ` 9 @  @ 9 @ ` @ @ 9 6 `i!r 6   `@|D@  @   `  @  Pr # (  E r@ ` Ey @#|@!`    Z!r  `*  `  ` ` `  `Đ( &@>r Y>r94pp^@ |??!} z00@`$x 01s (1 0E%z P  p r AP T'r  !r11$r PT$r p%r P   `11$x0  0r1 ` @$~E%z  r 0`    `E'r0 "r @!W%r V$r X'r 2'r Dr    00`ƀ 0  0[$r@ ` Er  @E%z @ @r `0$ ` `@p !r3 `#P `! p r0?a Er >'3  % ' $8J z  5r 3S6r  t /0x1ExPy "B#E oR$r% @  @ Ơ0`  p` ʀ*Opڀ9$x  p`  ` p 9$"  p؀1$r xT\. Oxv  @ @$ P P @1x ( ` `1x@ 1x`  @  1x ` (  1x` 1x ` ``(` `@(1x  ` P 1x `  ` 9 `O$ `@( `    9     0 4p@j ` P `  @@ `@ `  @1!%9 ` ` `Ȁ-!x@% P p # p ppp p -#y%% P6r#`x+%,",0s9,@-"#Tr0+,ud.x,0/,",fr,&,tO'r+,%,`'0t,ErP%B$H &\"@'0(#<&&p1$vPP( @6x$p.$DxR`cG`#s /0$ !@,$ l % ar /+bs . 0. |  t`@%v `' Ty P'y *! ! *(0C b%$.x@ 0-A$x , * `40aƏ$r0`Tr 'r @ 4 ` @/!x R r?@Y'r PF=% Dr .`rk 3p`P!rP0 w$( 0'2 r 4p`p/+ 007X@X(p580`!Ba'h@ 8XP-(00,p0( H8 Vr p+dr `h@X@1r`@0 /P4 % 0S)PP#&#s.2x ?P 1%v `!! 22 *d`+/p @%fx@04 P! !r@@0'`-@@ 0`- P40@r_##E$z@3p |"p00 ,;{05056z#p  9|#@r?1cpP +Rx3+2s<!"40%P04P@5J r(1s/*h0@5pRp4 @0 -`/ -r??@x@&@r@/1r@ /]P ? ΐ EP%@r 1?,`/``p.q  p @00 1 #?3`!x @p Cx > 1x@"?Tr `0\1#@(p.-Cs^ #p0 ` &&r 4 &%  `5 4 dx Pl54 | ,0/0$~ P(P.% @$x 7 !0* 0  0 0@0 30  Tr 5z 4 25p1"x @ PpP 0p40P1"rD %Fs@ :M`0| *'PPPP2sP sPD09`uNxar@ux 0*O%@0 O`'`.9 ''`)` (@`  4 P   0@p@T'r  @z/r   (0`1 r %pR &   (@r 4< @b9H$8 38 ' p3P&@` 0   *p6 0r  pC$|P"$r #xpar$  cEy`p`5}1 iz : a60:P0:,Tr3~+2| a . :2rp!@0rA?@0$~2`6$~pp69 ::0 E$z 8:%:P  : #:*:p9{ p^  .   $ @.% P - 5r , P `' z99 9 00 6 @=`@  ```P`&~ ` 6(  ` 1p6$r``JpR ; p :PpA &  " fd %# 9H .5 0 6 PAW$ P00 0 5 @Mbpt;9* `@v.0T@ 06 0SQ#$vP@#xP97r@ T #xP@ z ##&  @ `0z Pp*P %P%%Z0$0#|@A ~04|A` a % P Co0k0r%;0rp%   ?p%PAP@  + )* (?Y! 80:0 `p? <`9`5P55Ƞ Fe T>r @= % PGP` '40  * $` " F0$ P 9T>r P0z Fp4  =/ PFEA9@!%@5r #D \*J&` F @>2} @> / @>+@>P@%2rp6 @>@>( @>@>P@>@>0@>@> <"F@> ' @>( ' 1r? 0 0@>@>>@> p@>* !?P'@ @> B@>&zP&z0> !x@  > =='@>P)3rD' &Cr  ) ``P$p pQP! ` 0> 'p( 5x0> 5x @>/@>>->( (p U(@` (`S($P#P" P#0 (/p((q'(((-5xS(' ''=(!xPp'@'('(`5r  (`  'Q' (( '( (p'? ('7H`  (' (( 'İ '0( (( (o+t +(Y !x.(^ @((,xJ(`8r '  ((6$~ (, \( ' ( '(-  (z4 0) @w 1=O;>TA ,{pC8chG{@0@D @0 @.H@@/@!D@z.@@̀ @ s$!D @@@^8"l @P@8X8Bv@/@.@/<@.@/@.D!@2 &@S(@ @#9@L&@/D@#P({@@ 5@@( `x8( * 8pP@44Z ELF3S  p@0Z Z@8@.shstrtab.'ym7_shndx.nv.info.text._ZN5cudnn6fusion16fmha_reduce_headILb0EEEvPKvPvj@S4_bRL5osharedN<reserved.0.rel7OrelaN7I18LN ~M~N I,23o_ragge(S+U(T+U(P  S U "T U debug_frame anv.callgraphprototyponstant05Q Q D QX  KT  Smem.offset06 .0__nv_RSMEM_0_0_alias$__internal_0_$__cuda_sm20_div_u64; !4N!}I L$N 12  N  ) S+U'2w'U( !S U 39w $U 3 V +H 0C C'J p \}2 W! sD e"1 #`' 0300 0 0B#0 0( 030` L0 | f "  "( h x  TmW$ @| (( 0,0 R<6\0!"<hxTp%8КA*@x-X,&p&ph*xp%XtHx1/>u B 6$$$ G/$$ $$  <l!71 *uXuP!9H 9 @ u 809 49 09 ,9(9$j99 !P@  ,"qY pY6NTTT#LL%LL SLH(DT(0t0P00x x D0A{EI0{bzIsy a}; 5tt Sy6%&s px /x+ x3s! 2$r 0 1r`3p4pd.x`/sQ!dP d0P'r d!c{ pd6xPt P'x@0'rpOr 1p$tP a$r# 0pR r_ap`Pp`Pr pO$| @"C6@H@$H  T'r  @Ɛ T'r x/r '6(0| qr00Trp |0@p` @$|P@p |p` 00 @ #M9{0Q"yB&)x0H cz@1|0P Cr c{ Wb(Pa| @C3`1pP@r PBPCPrP@P1ST%r  /%rTOG@Cx?pR Gp-@Pr@#@C# @P@y0o bpMp0$r +0`U %rp$x  0 0Pcx MpDyD@2 "r ar fGyPP4 f5t !r`# 0| p"p`pE @8 `00"6( `7 `3GyX2rU{b&r!P@y0@ #x('@xP1pR 2rPf" 5"uO'" *" P0, @P5,PC@pv0I<`8`@x@+6Hp"p΀'czz 1x @#D|  0CƀCpbr?Par?`0| D ``"$|hp@r@0 p  M$~p/r 0@2$xD p|p1Tr p@$~@|A  1r 00 $G* @$0@Pp03P #M ?@y@@ *My @ Sx  *r 0|pp 5taG @@Hx`60xT@|P0PxP@?@ x @|@@  @x ``65t 0x` 0  @  Tr0@!@ @|1@r03P%0f|0ʰ`1E| `0r 0 APO0r0t!r T!r% `0rP4P4@@%@"@0@Dx@4@p 00r  @@!r 5 P0r90P 9 4 P@9  @,` @q!r06 i!r  @0@ @(`T!r `4  PP00rm  @4 @`  6   ``J!r 2|pP @ `9 @: 7 `0*70P @(P   (1$r10PG ! p ڠp fyux @@@U   `%  ( @%@"  *P   p1G x@>rY>r94ʐ % "p pasz00p$xas $%r 4 p A U'r 03` 4 P 0p30 P@'r`37@r K1  %  0r$0P4 @ 0'V$rd'r  %@ P:  $@@0C$rP @`( * @ p@@rp0p 0r4 `4 `10r  0r"a @x ~ $ x3  9 $|6` @ r CpP0 ``  #x`@1S`;r$D@@x%PyL !!6GyE S p   &(o6a pp@pP0 p`Ȁ 0p509p@'/ @ `0 ʀC6pr`     6PȀr@1$r 0 0 Er ʀ6pƀ P O6``\@$x p0 p @  pP  `piG  pp6P pƐ6x\E$x0   !r P-C T00-Op `xv0 1$r1x`@E!r1x`T6x0T` 0(P`01x@H!r`Tp$ P@v@ PpH!r` P 0 P `P (P1x ` 0 /PȀ0 aOx `p P0 %`  `D p@ Pv%@ 0<p`0 P 04@` p` (` P  p p&6x) @p  p6xpp@ %0J!r* p@p p  4p 6r p6ppM p( xp: p\0 7pz!pp  p*>p `` P   0'@p?Pp / .+@Cpn6pax..A#sL.  ..%.C/$P..,.-0/+0/..@t&*$`ae:@.50'O@@0Cr[1@6G %#x 0%0P`@p,p+ SG|&2s < 0"@1)0&p(@!x 2r ` e& 0'  \ 0fr 5 O/  @/%x &Ty (y !+  *(0C  b4P `'TraO$x'0 ȏ@1 , Tr0a'r`  %`PPur 0rK>P1T'r PDrP4  @% Pp0rp 6$r ,0R r`@@T"`(pDr`/p"R0&2X1X6HpVB@d2h/,Cr 1-(-Cr 00'6hp#X 0rpTr @02% @-p2Dr 0&)4`  Tr3 6r %" @!/ 0 % 4as6fd$r 40P<2rE%  1$x p Er @ 4    -` @`% @`0Sx '# #-  p9G 6z -|0|L/p0-4}@@4p7`b|3 @r1pP "`/( ,2s `(`E'r0#%/``Q$r_r#p0, P `r??`5@r00Par@/"00 P00?0c| *P@r @1? Ɛ4 30#x/8./!$xQ*C@6 Z0A ?@3Pdx dx 0 @x "?00r P% @p3#' l Ts  '6&r c|@  uzP8x p6z P 0% 04 00% `&@  @ @xd| 5!$~6y ` 4 `008+r 0 `01$ `` 0   8p!|4$p27 1xP0 `P/ P `*p`&r>@6sP "@%&@@| Pp6rPp'1pP2s 1 p- : P** 0uNxpcrP* vx 0cOr  f5t   %Op8`$rT'r  P3 ư` P( @*T'r`  `<%P+$,3p@`(@!0r  *1r4<( $"$b@$P@!ra>@pRT2  @ ʰ!`@;` p 5;$;0 96r0s$|p6 44@`p0x$ :#+% Ey0`P96! h0p0=< <%  <!r4<&| @2Wr#|G&~  JAp72r!@0rA?2|`0: 59<=0@ C$|`d%| !xP$P# `cxP <0P     %  $@ 5Pe$| .4 p % P0|  P p(  600 1(3Gy=` E$~   &  1pR* 'P &"Wp.PC&@b/ g5t  D W f'  D 0 & 0  `) !p Apt5" @Z(@v@pT# &@ 6P6 > P$ 6r``$p ` 6x `D| %  0  P@<`2 1p$  %2>3@ P6!r ` @ p <`0; >pP%P@<4@< | 0 ` "rN FD*&@,P 0p$ @0 @p@0*` ) 00p#|B Bp P C$~ @2 @ :A `BPP (&' p@ 0P p'0Pj0 & P@)Y!`p 0 pA(  @&`'!0@'!P@ @I@I0Ip'% > % @HDr  @4@ 6  #IJ| p 4 p P7 P1| ` p4  ?  HEA@#p``M TG0pHP 6| "} 00R * ?Z?0| @?0|   ?5r Q  P&@ `4 0?  ? @ p ?`G ??5|  ?0|  Q ?*  ?7 4$r0R`?% % Jr  @ ?@ Dr % `@?` " @?ƀ 10?0A0 8| @Yr ?? ?D|@ '0|  ? $??   @!  Q  : ? ?n` p($ ]`Ex?% ??p(( ?(m6(f/5tp&`?(-p)( "$?(6(( 6(Xp( (0  pNPC (@(=P p((6(!@$Ȁ(p$(h(E$xp(p(9`( !x@ (G`( (5P'p((Ȁ(\(pY8(P (&(0H$X@ (7H (E$8 ?p( ( 0(( (p((((m pU(ƀ( & 0 ((0/ `( 6(p( A (L6%0 (p#(]   (6(` ( p(" ( (Ơ(ʰ((P((ƀ(?  (( p( ( (Ҁ(6P( PR`( ( ( (6( 9(=6$~ #  #(1$x - 0(; ʀ(@ 0#0!( -p6*   P0( (` ( Ȁ(@SP p(((: @1 ( `( ( ( p( ( (   ̀( D"P (( p(0p((( ''(( l&(X @) `)(0?$~& 6$~ (]% 8((#5t j( 6((9P ( `( @ P(0N((` (6((` PTJ ( (@Jv0 8r p(P 'E!r(((0ppMJL%("0M P"PM0!K `M/PM* L(`( 0M (p @%p & p( pPp(pL@@pK4Op`PK(pp`%)p0$p$ `(4 ( +p( @Mpp  p @k q( `(ƀ( P p(Ȱ */((;x0"N ` k)  pPP)  + `(@`+,0. P@Ā( )(#0I(#$@(( 'P<|(.((;(J6(0(x ` (: (A`((x0! * ((ƐQ((``j (Ġ(`)(Q(-( @#$ \C @е*3@ ثq>ӕ` ,)E 008#tG'{@0@TqH @/@.D@@/@'DL@/5@.@@@.@pP@@8/@@/@@/1@@@  @2y0@X/@G @@/D@#O@@/@8G "M O@B@#i /#@.@t@.X@@.ħ@*p18( p 88`\\@d =HELFAS "<"`1d@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver&text._ZN5cudnn6fusion16fmha_reduce_headILb0EEEvPKvPvj@S4_bRL5osharedNrTY>r 9 4ʐ0 `bs 0Đ00s P$x ps @ @T%r p$rP`P02r`0r pp"2'r @ P34    3 @ $~0E%r  R$r @p F1tP$ @ PW%rV$r A'r   Jr  P% 0  0 $` ;  ` $ P J%r @ @p@  p1PTx $P`@ rp2ap 0x . Cr1 Sr   #@ #@0 r #x~*`"S@;r# "0x3% Py !!@1GyH%PE%-0$r]%% $%@$3 %%16x%C%$dP$/$  %ud6xP% $ %1$r 0$ @ 0t Pd$r "0PG r"$0 `p/O% #0T$pw$8 #6% #6$  d'r %/# % p%+6H`$ ?r%0"%%C6$ E |% %%%%2%"6P  $%*6@% %% @ %#;r%%% %%%@% `%&t$x $5r p` %# p@+r0%  06 P0%'6( 0 0 %8% %%@ %4'$"`#5" %!"0  %6$rP%6%%@%#7$"`%!xHP#" %$*"%ub$xP %$ $% %j/$|%# 0@ #p@| % , ?%  `$!r p  %P0x@ S 4 $ %A| %` P1 0@|P%@ !|` %4  %4  % % %u $&r %@@%%` @%#@ %) %%$< p %;@@ Ey4 30@!00pP00*CTOxv H!r1x@t0(PT@(1x`@ @%  i!r$`"TD 01x0 P% 0%(p %ax `0( "Tax 0 P ` @ @ @ @ @6r P 0`0 0   0 p @ ` @ pPv Axp%` %! @ :䏐`%p" ``*  *0 ` (@ @0 0`  *  p   $/`C6$0$ `p /O P0P` @ 0P`P @P 0@01$rp   p 9!r *  % ;G $0   /$ Tr @!r$8 $4   -$ 0&$@%p@@@r 1@9!r(0Er 0 /6y 0*%xC6$$ 0@  0 0   Ơ#  `p $ -@  $ "  @  0 0  p 00P ONpp  p Dİ0*0 * ` <!TxB( $ F!rp1  #]$%@*0* )$!$ @@@*@@(@4 (  P$@( 6x $I!r` $ - p @@ p@$%$ p$`     @ P$   (p$P0'  1P`$@## >p$p$# 0p$p$0`p$6xp$p$-`$@ 11$r 0 p$ p$`!xp$p$0#0 p$ p$p$p$p$%0x%  $ `%$)p$%0 p$ p$ p!r@`$`$0 `PE`p!xAP #p @ $ix$P$@Jr #, p$I r t %#xA$ p$ $  $ * p$% `$5x p$? p$ @%$I61tP(??fr >0? 0FQyI `EaOxII 'IȀI $0r`HPrPF`#sI% 0I$P*$ $  `I$PpDt!@ $aUpI#00"6 Cr"`FPsxp@x px $" 1pRHCGu,Q E`+ Pxp P%x ppy@ y  Q K"s&& C 0`br/F  6r  F  P,4 "GF 0E6x&bs , `$p5 `p%  1r PO$xZ Pf'r*i'r  %A C  @( @$r l K 1 rFP&PKS$PD2p00'@U6850F2 r Z( "X@0Sr 3UCr 0r   0cy ("P4 `$ @$`'4a$x`$pfpB@'% (Dr@ ,KrpM!r005Hp,0 @ 0`0`" "6hp#58p!p`5(0X@ƀ0 Cr 6]4  HTr  Gr  C 8`h`C <%b` P%&r p5r  6r'ȏ`P*P%P2A$r `4`  4p!40 Na$X@ )6r6@5r00*04 0p 0@&r!x@T'r Pp)0!r P&`40&0 0 HX   I$(hpXPP;6(Fr ƀP58hp` EH ʰ Cr 1@# Tx`=pWr   0J 4 ``' # 2'`Cx 034O0ȏ0/P&r%!rP@* % P `  "`+p P:b`"(P@=P@Đ"6HP``h@ ,8p #  @ #H  '`Cr 0 PGu 0 EGu, ux- 4    D  p8!x  * * % (%  % % % %  fbs ps 3*b.0Y %   V&rP 5 04- 5x F&rPgOr4` 3P40 0H  $ 3 Q@@ @4 Er  `@4P P4 0FrP "!r< Pp7DrP%@!r ,p p0@6rp p ` (@YP):b!R  ;%p5@8PH4  p p@2`Q 7 h` 5 X5` ` @bP6"@ P(@W>[0``: `!3P[#6@ Cr[ArP1r 0P`p009hX00@(@`=\)9" p$  8^CGut I:Z    ` `ĠP 0*`:`:9 4  ` pY% %x'r 0J'r p% @` 5r   6r`  @ `   0Dbp ``PPp P  p 5 :"(p0'84  0X`*h@Wr0Cr>o  P  0*`@[p p9 P ,(*p P6& @ b */pP5p0P"6x@^4`p% PȠ=[6x ^ΰ&$[ [(@6s @ @F 1^zAf0@ @P0>F% br 0E!p p $p& 4 ax  Pb| &<2| pQ% axp`% !p4 `` ` 0`  "$r? p=20#G~@]%x 0`"` d= P#r PCh"`-&{CibrP-p0eR1s sPbsP*N0k ux Os ubx ; rN@ 0u"x0f$r bO|P= #`U$r p Ɛ   S p_pj`a@%CO$PU = ( T'r`4 4 %p 3p@/0p%@ 7PO p!rp 0 5 ` Pb!1 r]  Pr $<a1pbT^p28  1 r++`PYD 0 P XppHP)rP4 i1$r p&F"4`00ΰDp$x P$~pN`#|%EyW3pPcG @cpiFtEx i! W1r`BiCr F6| 03|=  6| (@  i j@c@d2r0@1rp1  j0` p`db@#|v  I3| /%| 1$xpY` PET-e `o o#f@pP 1s # Ex P  l1#^h%4  &!r p4@,!| @  5| p &  0- #" 0@m0 &yPj0( gp  p 06!r 3!r@)rTGu#@  p1$r 0-@ Olkmk 6@=Guh )0C@ #@L)P&y  tM`00 @N`  P;|  ` N @&r  `p`P qvP f`q&~ pO pq0 @ { pu0vv% p`0    P` ``  "%x:0|Pm`0   u p `  Pk Đ!  x 9|  pR ` Arjo6$~ y PTr `J ppG)u`(lp!<Plp    0 00t @ @t p 0 ` P 0 z 0 pp| @\  P j @ 9r P ΐ p5uD0p  0@p P@ p0 ` p  p p pq q">r` `DY>r 9  !l1|W0| pl  DABn Dd /@'TGpRP #} "0l * l3l!|Xp l!|@ lʠ% !0 Fpw!4 0 l  `k% 1  `lP&}1rlf PH5| 0l!|  *n"%ul7 1$rFp3H'r #x=m-0 Er00x  `  Ir 9   p% # 0U% l0y%@@ E$|PP/pH 2p | @02$x;@0 | gp y@l:x`H$ b'l:pH T  G|@" ` p$ 9`H, @H PH@"@HPH ?,PHH-PHM%P0 HH6H8  2HK ,H ,H` H  Hp @$mIH(Dp;"H\5x 0%;OHHG@PEG4G&xD90G@H' 9Г HC$-82$8p3`C 1HC6H0Eƀ>HD E HpE<H bHG H1$r`563r@HƐ:<HR'H9@ CG0Hb G;pCH,DȀ0JP6@@HpLHPCC@_ 58@H @?> HHJ@_P(xH @ HpPD@K`G G&rL0H A H =@DP>@ `>0H0P: '0L @E GHPHH  :p0G 0`0H ?GH8H>H  HG @C GPLH0@@603HO LH(@ JP H @ P < <H p H8 :p  H HC6H OH8/d.GP'@6r*H H6$x0H GH*`PS=H@7H G H  H LHG0&xP pF$x V  H G0  | P8PGHpPIGiH5rP H HhG H@ pJG 6 H0G HGH#6G` H  `C G0 H pxH00N  G @ C@PYHHGp `DX H@H P>pHp0 HHpH $046H D`HH?H0GHG<PP` HX P H"$h`@8@ G UPp`SHGP 6G@ H G6GG 0H HH`@ H5: GPBH 5H DH$@ H H PH @c H 5x <pGHE6x `K:np HJ+C -HW 0`ʰ H3 pIH/H 6$r`H6H#H6H H̰HhHGp  61t<GHH\ЋY` HHGHC H0 G HH 6G` G HGPG`0H HH 0H6Hp HH`(HH0H)PCH`H H6$~ H J HH  !% W (HU6Hs HS`+HZ6H` HH H!H pHL LHP6HHpHk6H HH&Q`` H u G HH0Y`uHxHJE6x H=HK @ K H5 `:P: G 0 y >% p}@0 H!r>0 % 05 F=ІPЈ G0T&|G pG H;(G  8 6 @ ;> p0 :p p 8 Pp@6000@ = 0   `  p; p8P@P p07 p @ @8@0?`P`) G  G @  A    P p >6!r > P G [B6$~ ?`B@! Gap  p  P@ G 0 GA?ƀ p @  GJP0` O G@A  G ` GĠ '0 p G`B @ p@  0HGP+G  `@`     G FPB G P CG  0ƠP P P`  ` PFGj  Gz 0 PG@GF` Pp Fvp 0 Pp G G @@P@ ` 0 @ `@ p@ P@`G)GGGG_Gx0 GKapG G G G G GG G G  O#pGaL[Bkyމ?6  _ _ڸa  ~A:p"2@r7p"R P  YB*d,Db3+bAtt@t AE `Q  z:9 `c$+$fAB.ttX8 @x P w  4d,(T 8 bQ D`PBHd B282`\Z3@ !Q @A@+@P#XAA$E'A9D, 006HH `A &    D  d4  ` P@, \l,IPC@cvR(;+Xߵ? <a߯?x @$dFP8`)A0`/0  0x(*/  T $@p Ax d D0)d t 1 " C+ A0p @$ @H $ #%B $TDl 3@C8"s ? XC 0/  40 $@d `h@ + F@ 0   (HA( $2ݎr W!zO mn$@|  (( $40 >CRpA$b@< pL(o`(#3 !"Hp#~o8(/# +"CP4X( Z%p#W"0 5X(cpCQ/" 3W ,$$ $v)$ e Ժ$ H,$+* <l@7D$Z4"m*X  ފRc ++NL$'jND3 UX2%!    r% R  9 , rf9b 2 2!PJH#_+P)x xPx//xVp/ZpX6 cp$| %< l&l8&:@l=H00Bh =j $ H  QU"4fc }"2 M`& 00 0' 0 0& 0` v0 'f а #p6X $i + @ # g @B .=  @0$ p1 <# hK` ,k ȳ9@@[l ! @H21@H@PCXl @_JkT  @!@@/@#!@@/_@.`"@@! ##  "T @8P? @@/@@/[@@@  @Q_% j&@J@@/n@#naU ]@(@@(`*OB@ٹ /M@\Fn@@8>&@@b@!Np_>0 u Z@ @i7&@@@03,@ /Q @@,< @%  2) @@ *!@9'&@@"t(@x@/& @.)@@z@"d+p@@.,@@_0 9H. @`@@@x@@/9 @@@@@, ! +p@#/9  _ @1@ #<) l8( #p88mCC@x `Hj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ23fmha_reduce_head_raggedILb1EEEvPKvPvj@S4_b ( .param .u64 .ptr .align 1e7_c?_0,mX1m/32>2_K3_K4_K5_K6_K7_K8_K9_K1X@1L1N18-?O@ 6 ) { .reg .pred %p<29>;b16 %rs<432 %r<550fUf<282b64 %rd<992 ld%r129, [==2];i/30i@3i1i@4i8i@6i3i@8i$ B1 s8A1vB15]; cvta.to.globalp 1,l/29 2 t30; mov, %tid.x; shr439,ec3; andB268435455M140, 128; dia$3,8%r2z 503cta~etp.eq.sJp b42@%p1 bra $L__BB0_1"dd> r5>X3, -16T#15p"lt&p26q5491u24p7T-U 5489U3: .pragma "nounroll"; mul.wide_dr4~1q0dpr144, [C3>!14@8144"14E" t"14"?502q8q++4s9s @F150," s5"7s%52s8s&53s*52s4X35"W%56s1Z'57t6t8Y7t"5t&60t6t&61t)60t6" [6"/59t?;+20tB6B6 " t"3tB2C6C6C7C6C7"C7C2D7D7D7D7D7D"D7D 7D7D7D7D7D"D8D3D8D8D8D8D8D"7D8D4D8D8D8D8D8D"D8D4D8D8D9D8D$"D9D4D9D9D9"9D9D"D9D5D9D9D9"9D9D"D&20D5D&20D)20D2" 2%"/19D&20D6D&20D)20D!20"" t" 7#ne31%r7:3:3+4: 6481 1t75F8~5F7X3 X4Xa$20a ^&20^)20^!21^" q!21^"X$21^4X&21])21]!21" s1"]$21]4X&21\)21\!21:" s\"\2\4X'22\2\2\2\2"1\2\4X'22\2\2\2\!22"?2? X'22B g 2" \# "&23B X'23C3C " to"C3C X'23D3D" t"58l7l0'6f  3m3m7G4G7G0o5o6o4 44444"o8 6o: 2: 2 2: 2: ": 6o: 2: 2 " +2: ": 6o; 2; 2 " t"14,108Y3g5r0M2R784  2 2 "18R1 J5h 19e9B20!3:n#loW3^gp0`!46"%d3N$re142|53N]660l g3#51321I5y >9? 2Q 1X7Ms!9 dM*EM 2BA)26#262" 6E6madb.q0OB3  3sub2SS1$4f*1;8V'5X2g\ x#26Iu98?2u @Y9WbR9; bra.uni2g'9:1 o / F17; }:i2n /4 7h4 7"27< 1 '45"[A /48jA7 p0&d 2Oj#6,l c4cay8= p.9]r'r5r4r +@ D6 A#-429496729#p ; 1 2#322:d)d9732716?273h "6:W8;  F8F O FK;"rd F51 5-/53F<)29F r1r0F r&1],L43H!>31: =1 4+>1] k4j@9iA0g71 1/ O:  7d~54 l58 2Sqdh $$6$_ J%rd8[6@85 ( z@S` 8v J W & $ / $8}L$  ] M *54 7 56789t   #axi!# v28@# y3;2Pcs-8; neg?528!f/f30f0 G" 6789 n'4o)d9\Bnc.v{"r222B296} 1A%//&&flo, hi{}H^5, {0, lo}6ahi}; }..f9f9f+f9ff) 2fJ2PfD2B3ftz>1Ifa4jf48424W#f24\r 4_(f2:f4d h 943o%Yfh l3#f3 4 +3+3e#08/6797]A](30Or300f#30Af%\f3fAf%!3r30 #30Jf-97#33 Zk3V3 fD3f#30443xf-30V4-3044 e4Pl 33 3x$2083S3r30 U19U1S3r31 f9f% #31 f9f$ fJfh#f5 z5if-31T55$! 5f 3|+3i5b -31v^ 5^ 3m#fp 6t16366 e 6 3"r339Dr332 )32 #32 U29U  r3 29f% #32 9f$33r33 f3Jf6 ud -32T:6e3jo7T-32Tt7f n 3 3 T 7 n 3`e6 3983*#r3q!#44/703 3 U9U 3r33 f9f$43 f49f%R3r34 fJf"3u8C-33TH3 uh88 8#f9 u %f; 93 9;,3 ez 9#r3*$5/714 4 U9U ` 3r34 f9f% 5 f59f%3r35 fJf9E u31Q<81S(10k#f1D 6;13f10 [1-)101' 1)(10A f1,6 a1" *101 1 1!l l x1 1 6#r3A 36/725 5 jNj r31  6Nf% 6 6Nf%%3r36 fJfi511i3f11i1c18 f1 #11d113&2e1#12 #12f(12 f1 nm2u(;I 62h , 3f122zM 3 4r38/737 6 th t O 3r37 fXf% 7 fXf$83r37 fJf]3 1-37p3"f1#37p3907p33f13  >1 7p { f1 OE 4 7  y8(3A1v 4 +   8 P o"  )zg o$4-,4 '6:3'@8'2+4y?3$J" 79wp:  4r39@9 8V#38 E8Q+ r3r38 fQ9m3r38 f9C+ $r3 fJw8 " B78f13c#f1E =1=4 Q7( 7B3WlA#54kA7( 7fAM MA7( 78M vA7( M  # 7*f11 FA5gA7( 7*39M2MR 7( { T"r44. 5r405W9?r39 9 %4?r39 9 f%$r4z #40 f%q3r40q fJf<P'3P!KCH #f1xL269b 196( 77 7( 77 C4x9C Q f3C7s 7k7d :/ 64>"r44 5r417"(40h$r4! u76f f1uf% #41 fuf% #41 fJf4!1#  Q f8E7  fE48E 2E7?  7@ }.41A f f E41B 9C953} 7:*73 &4"r4)415r43T)42 #41 2u $r4 fuf% R4 fuf$ 3r42 fJf9O lFM42f941 f6G4 1 41)#f2, 2fG 2 0f\G4@ }G"2bH fGM G82y/$G4' #2020FM 27 ;$ 6Ni853;50D(g 2O0H *g 2 Mi0H 8$fRJ-45 2H g +4s"20H Eg +yJ4"2(7g !f2@M3 bg kO $c 'D)42j   9"eq#p274not^p 9 A4fEE@ #69")46X/45x5x+6[?r46x6x+ $r4'# 6x63r46 fJ$f27(7 m1 M4 %fMK 7(7q2]fL fhLa 5F(7212yc 0657(76 vcfJ %7(7L LI*46?I469 b6pc  q7fIfE4pE 7F":7V4CCB cvt.rn.bf16x2<3r47[$9;s=.&7. '5. `3xa3rd8$st>zHe84], {G479}'5:AK4=naaKxKtB2%!rPO2G1F46: ret; }/m)0/mQe /m=mwi(_vi6j_3_Kgi@Xi_@/m(|/m(_/m(_9_K/m)/m)`bl*n8 >/m7@/m*.M1ji kh3ki4i/mi6ijSi/m2i/m1h j0;@/m1/ms1/m81/m1/m1/m%/m#1/m1/m m/m$1/m* /m1/m 1/m1/m1/m@1/m1/m6$1_+j61ag1/m1/m6 /mPq/m1/m1/mj/mU1/m1/mR1/mr j4g 9/m1/mi h/m ; /m1/mR1/mr F5i 7/my  /m-o)o)/m3j/m2j9io)/mi0/m1/me1/m1/mbf/m/1f32-)k5w36v3-md9Txd8d9d&rdc@dRDd$ d4d5d2'm#9[7[8[b7d %m )md(md$u#32d4d&Vvd6d7dm1/{S9StS1'ydl?d3d& /31/31%m G1)31T0;m2 m2 %32 m# dmd#333T2Bm3 3 3 &3 3 3 b434&444=b=Bm4 4 4 &5 4 4 555&K b55l5 5 5 &6 6 6 666&666l7 6 7 &7 7 7 777&877l sL lRl'mJ\'Kl 1l8o8E8E8E&8E8E8Eo978797&979797:llO999%l (99Ol dll"l dldOl l lW1lW1%l 1l$ l l2 l2 %l W2 lW#2>l>&3>ld >l9l' l'1l8 4 4 &4 l@ &4 4 4 &4 4 4 lO!4!4!&4!4!4!&4!4!4!&4!4!4!l Z l;<uli "j #i d"dJjd$6M4d5d&66-l1l3 Bvll -l -l -l~1lXXNKl,169^l!f&h X&2XDhk&hX9hX9{l &tl X&ml X&fl X&_l Y'rE'}kX'mg'95l1d3TE<341 udw5LW7J&0ZK2\kb&%L7a: jq?%r7{& jaa&5a:S8k&7a na& 2m2a9 cNa6T&1kb\b'k&Ob' \Pm:n' nc' :Vz,C$rdgV,i3~.,?K ,>yz},09B1PKb = 0NH*E?XD82{$2_d*y(L -@ `s|p9y 1|Gsr3/ts92_5>% WP@y} 2_92_5V3 q2q1q 'U @ %rU?,d;7+0#2_DKM%rd8()d73[-zy9 u7mXZ 8lX 2A W 2g0O| r P7rgvr7r"7V{#7, 1ڑ1hX*0=4 p ,%ŗ$c+4847s31RF\NK\$ 45:g$6Kf2[4;ls o >q 7Y5ʘ['[ k5# 7W]$3 5ކzچ!pF0?2_1Ȇ56%{$58Yf78 |+V0"17%}B]yZcamF 3F56789 n 3:p2>8nN&2":p8q9 ; 92_2WY #30fއŜ2d7 `r3125g ѮrGB@'1>gMf2 $r1` 14f,r{2JfX1[ >1H#11!#114;44= 4#12h94  443ˋ1Z1 Օ#1<31375 r^B^ ~fo( @fB%YrGfJff $ 1 131G1f1QO5 O-13 -13e f4 3$146#14 V D1V ږrf% 4 Af% 4 fJf 3|X   1%" 1L 1E 1ۓ   1j  565$61+& r"1Vf 5 1f% 5 f:f$ Ef*fhX1R VX 1 16 f 1 s f 1D -15 ; -^7$73 V:V ;)f:f$ 1f9f+ 7 7J2#X B  !8u53 1 _ f -16UY f 1 7^8/63 07:Vk"7  f88 f8:$ k1k1kR V o 4L0f^1gK0; l1Sl1Z6 б 681Q/64 8O$ p1p1p+ &( )fJ2X1d \dr-18E  nE0  7.19nE Dfn71# _ pD& 1' 2+ fYA2f8f3 12(2 ڳ  D7 q 61j  .20 &j !  3 A% 347} 3 P  3* P!9h B=$#21s r !1i(2)' 2z3! ~2! O $222`X2X+2f 9 2$ f f$ -2-2f;X(21%0  (21 fkM  N1F34  1X%5 Mu Ck  F 32 !&2f f &22$& $f623 U2 w26d7 .772r 1X +6- h  "r2%243$r2 w_7rHf8f* 2 $ $r2 f4f7 9  7 2  22 c)2  2n5791c 1 p!#%rµf$25r #24  v$ H2] f f%L$r2] f3f+ U] fJ7 ` S24"  2x ?  06 < / 2  f0v"  0u   q7  3 v71z h9162M6  2v6Y2v2U# 2v2e!f%/r2v2e!f%3r26 e!f(W]c 2`!scF N222 c ѻo2 c 24  c 2 c09 f97  7NX! d2O &%$&X  5"f%rf f$ 2f5"fX3BI  v2[$2I 7 f 0I 7 2"2'0I4/ A0I 7 .,$4;   '7,I4  "n I 7  X4Q 4 4; 72'8o9! p9rpwe8 bra ^v D7  d%2d%2d%  E_#+C f_#+f_#2_#6voLf7   q/v M   5.v*r2# !*28 7  + ' O M 6X f    6 6  y A2i  _: D#29x23.X. B 4\@ p%04@W/Y (RR#^ W6fiT!XhTVXYTX9YTX9JTX9W!`W!XW!X9XDW"3 i\YsGW!H87WM =XzWbpT7a: TW TWa TSWa6aWaW*aW*a9aWaW+bkWbW+c W%Za Wc WaWp3OW3W3W3WQ3fV3W3Wb uW :W3WR3W3W:R W3W3W3W+=W:33W3W3W3Wbx 1ELWw'Aw"W d7dv%#125_2ϊKA#2H^d3,G'dW2d\̄fC\#d3]d9dm)d$4d)d3d&  d6dW4>T%W 4W( d4&444W5 5 5 &5 5 5 555&6566V )W6 6 6 &6 6 6 766&7778Vy4;W7 7 7 &7  7 888&88 )W.1.1.&1.1.1.&1.oD9&w99W 2~W %2~fDd2~&2~JDd%2SWd W8? ?9 L9W%WW,3W8S@E'&222&W 2Ek"2223\WWP22&22H#3k 2Hd$3d3k RdP`@W@  3 &H d 3 H d44& d39 @L]W4 W(KX.51M9dd$Adad3d&7MA5Ay{W3{W3{W3{W822222&yW 222&wW d[ 6[ &6[ 6[ 2sWP7 7 7 &7 7 !#7 7 7 &qW 8 ' XO UjPkWkkWG3kW8"%2"%2"% #2#2#&2#2#2#&2#2#2#cW3cWibW -aW -`W -_W@c@: ret; } `MM@x (:HELFAS "9"-x@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver&text._ZN5cudnn6fusion16fmha_reduce_headILb0EEEvPKvPvj@S4_bRL5osharedN x`Dyb A6Gy\00@b! x R/xp@pfjO' 9  ap,5( @ @H03c{p4ibr9r 1x ``Cw@@ 0cw zru/$|"OH@$|   $b|lGr 9r @5|P p5r5r 4  &@U5r@)@3|p/5| 6Gu,p0  p`OGP$ SM /py`@ *My Ps "P `SxY a `fwr@#x 9r@r0p@ Gulc x0RHx` 4p L   @`CG Pxm `   9x"  ! t5r$p%$ ! $ Vy " @% !d 0r$ `O0r 0!r$J0  9 # 5# PP0r 07 $ 0T!r"#"P4! !p4 P > `00re0r{!r @@i!r   Ā7"" W!r @P@) 4 P 4!! p% P `0r@`V0rP T!rPP4 !r  -0J!rP40@,Pp9 $ 4@` 6@0 `@ Z!r @@)   00Fyp!@0` (  0  @P4#p00"0 @p0`00r00P 4  DpR`% 0p`P @,##@0 % @0$䏰@0@pp9""%  p `*##,""00 p      @ 0  @0P9!r @ p9   0@p H!r 60r(# ;0r% !!95r 0(!!p P ( PG !Tr@r# 4"0 `! 0@  1 r  )0@ @ x dx p @  07y 6 `U5r0% 0q5r`@%x$  @%@p"|`@ % b@  4 @"P !@U0r %  0H!r W!rP P* P70r l!rP *P P  @  `DA p,`*0 *  @@ ,@@`  ( `  @@    p p  ` p@ P  9 @  %)PT x 0!xP@&@ @  Ƞ@  ` p*p (`  @  ,` 0 `  ` `  P   ` p!`       p @    0 p>r$9    0``c{p`bs 0$s $x E_1s &1 1%r@   0rAP0rAT'r @@ `0 4 0p3   P30 p`0r 3 m!@ $~0E%r p  61t `7 V$r U'r & P:$ 0@ 0 @  `H$r `Tr pP( P`  p% `ʀ  p`5 , 1r K  `E ` '5 pt > PPy`!p1Gy#` P#E1$x `@ #p#`###/"#!bx$T'p#dxvQx% dp #(#p#@0("%P1xP% (!`T6P( p#PvP0+P(#1x@ (`v`  ($1x ` P#`#@(!v0*#pI!P X!r%H!r " 0%``!- $ax #ax( @v@%" Pp(##1x@  @($$@E!r%%p #65r Ɛqx ` Ty `%"0$0 0*""0 @0 @  0 !@`(%% #?x!$0PP P(""`  0(P!``Pt((%%P  $`  @P4   p p p!` p  P`& p` +6x"`p 9%%0 ( @( #Đ##(" # P0( %p#t#vPp  #0 v #pP P P @ p #P P  #p #` L    ` v `` @p #p `@ `@   @ #;x @  #  P   0   #;x !#Ɛ  #P p #@@  #`` # `# `  # P `    )@# # # #@ -@  # 0 #`#####G61t&>4p<> ;>PCFNU5"<1 >0xE%G"PE@%2s~SFG4F`rD0&#s(ud.xFFF 0&F " &T'xPBDʰF  #`-!r@>t0D5@0D' `B3TTGux=xEpx@@x^&)? & `? p`?P* =Pxp 3 30PHP=4- ?y+ !B!)Q@(`C' hC!  H# C% 0H H H (H $H ,H  0H  4H 8C <bbs Dd0+Bb.@:0H:x #B@B@6ʰ)  Tx4 tr--O'r- 4++ I%  `*4+0H0r -+%0P)' 0I@$r+04))par'GR r@1T'r)!6`""5rƐP8 'Pb01'r`,ur P!r#07@$r)%0IJ0r'0%[P1'rT r -q! Q rA3p` @Er5hp@r@$ro#pE(@PA@4 @- fY%@G r 2R7` g rL"b@:8W'r0pE8X @ 08p50"0@g'r1r"0B @P@%8"p8!rZ``*p8p5Hp5(p` " "Er `@2"P$r PI#pP`5 r;;h0  PdrH67Br1@0 `O  P58 `1"%K`PhP!r |`p$00!r`H6"P1'r  $ pXP`:@`Hr&J r$P7Er 04&&0P(0Q@5(5@3:B@$r(I r& 8``pR P@P G r(=H Ar# bS2" XP22b#T#ZAr? `H p7 PCr~``Pr 8(`Cr`@7Tr @58@h0R`7 P8r$` X`H` frPh`4Dr0x@B8r PPGu !LEGu, x0 #J 4@ `L1%x P  * * * * %  %  * %  P P K P P *P P bVp5  04  0!x Op@ (  @ %& @P  4 0 @4 @P @7 6r ` $r) &rp7"@ !rl@G rPJr )r 0 09"B;'r    p9Hr V$r0 @   @ X(@E r   bp` Frp ` @8p` `@P @ Hp h @ p0XP "0@ 8  ;B@ `@  @S X 0P P P `5H Ph p0p2@#78 T @60frP(# p6Y'Vr  Br @0r0Dr 3ut X#GX * **%  =P G  9  P6r@fOr Ə] Y'r  &r'r 0`p9   ` 0 &r P0 6rP    = PDTbhp@  p "PPp p I 0HXpCrU p $  Erp +  !r 00 fs *"p0 / B% !@ Q1tO ?+ %/P 6yP !p#  V  %  A !r   00 4   @AWGu X$Y% Z@^|!1p0\ X#y!%Z#ubX`]`X @ZCrZ@'r JrP`2 *P `0 _p 0Yp5x8_ $@$0sG FP PEPP P/`Ecp\bs  k$1t p5 4 Cpo%x ȕyp F@@* @ @@ @ @# ]`^!|"p2 ['xp@F!|E@ڀ-CC 6r`femF` 0 %pRp_1s"00#snPuNxP/|!P]2s<3Pu"x0Vrnf0fb1t /`BOLf:r "rGbs %e$r P 0fp `G 2r0P&6{g 00@!rT$r pf4 @  0G4@G%Pv'r p0%`5hW 5r 0 P @ Ar'00ePa hp he@Bd`D% p"`)] 0] []P%@7(p7W!r) PhOh iP0\`(` h d P] P9!r! FE5|`` ``*` @@ p@00%^`@d ^*## `*PZ*&0\0G(@B P: \%p7 8(@p7 `p@ p`@a0]*P p``% `` ]\\`8p `#`\Ohp0 P(;0rpa @m0]P F pI*@p ``0 j ] P@0 @;!r0J bc @H`  @ 0bP c `( P$hpK5|$ p PE9!rH!r pWGu2| t:|%)r`1r!p1P 0^`g5$ @4%% @0  @=GuDP @( !x2 5x!@(@!   fr p0 h3|$K09|  4&$pp%x$5|hp"`#` cfO!r' o%@!##`2@% 0M0` J( ` p0Pc`,@d@(  `*''P h *Pc0 P 0 $+~ph O ` (''  0N0h      @` hh  @i@ 9!r (!!p *  &"PPPh@ Cxh`& ``P6rph 6!r0P   ` `@0J%@  * @ PPs( m @İ/D`h @@ @         `#qc>r"0h)! 9 4  %`%h P}DAhnfdr -/0%WG!} #|4} @iP$ @i @i:|@i%$|@i @iO @i / @i  `h @i5| @i!| 0 @i0xA@i @i !@i @ip 0r   2'r 0@i# @ @i* @ipE%| P`  @i pP% `$@i! @i P0  Pi`5 i@`@p @i @i? @iiE#(E,E|E@4E}0;E HpE H`EP;`E@;x$OxxX!rE@ x*!0 @y%#0E`4("E;5|P= @E+E`{p6xy`y`~0AE?pE 56xy y5A5E4D4K65|A p?P% |% " '@%/|26|0D79_N`%(%&(`0 E  (@@T `Ep@ E-T PA@2P_ @ ~  @%@  ` |D0p~= pP~ | ; 89P8`%(%ЈP0p8% <PE"@@4`~``8` `E p0Pp0p (  @E@ K@pF@P@P `PP @  A6x@ @PI!rF `;!rpp% @    P p `EPP; " % 0;? `E$ `EPE!HOPEDPE?`E8)|D PE EPEPEPE E EpEP `E0F@N%0`E0 `E  `Ep p0D@0`D `E P `E C@ @?@p @ PPCnh @`E `  F `P  P  `0` `E  p@ ``E0   p @`E @ `  `E `E0 `E  ` `E  H0IP@FE`E  `E U@ `E  @    @`E `E`E`E`EU?`E`EId )Ч0SC 0@ PA  d"B3@|Zp"R PHP0dA B*  03+f@ X(@xA $ %+pV AQ  ^|9Az <2z<X H \@ -P w 9 ,(t 4 8 , P b @@A TOA PTl @Av 82`:3] L2 d_ @A@@ P$_PA H hAA$Ef4r B RDc$$CZ#T'!PS)p;p,pMS ҿ;_7߻}~o_7 ]0L8 A{x/a$ ,A$ ; < < \   O@ 0 60 0(0 `0 p 8 5  (p` , (P  P  ,APx0) @! "11@0)FA P l X$@ $   X 3  4 T@4 x T 4(4 800t @X 4  (d T4AEB N+ B,  T     d )  A/  !v b _ v $ $ KJd?O E_i 0 !   "$FP|  (( $40 #@&aE RpA5!)X< opL(o`(K@!"<Bp%8/-0BP5X)U#PS"0 `4X/@]#Z"C1/t03 @$$i0 / t( $x$ $$|* <l@7D%Z4"m*X  ފRc ++NL$'j8# xUX%!  V  %  b9 ,: 2!PJF0&x_/-xVP'Up\&0]p$ &6. 7l =H00<h =d $ H D0 Q>V"4sc +u" L M`' 000 0TN 0 0( 0 v0Nf &#03X#@[` $b +< @ Ϣg @B .9  @ ( p1 d.T#h , ȳ9@@[l ? @H; '@H@PCXl @_JkP  @/9@@/@=dl /_@`@@@ &#@* "T @8? @@/@@/[@@@  @Q%H)@Y@@/n@#l@E@@/@.@@( ,B @9 @/M@.@@.@@@F !Np_p63l,@ @. @@@Pv3],@ /Q @7@%  [y@ >#@(i , @@@@x@@/& @.`&@@z@"'p@@.H)@@_0 9* @@@@@@/9 @.+@@@@ @! +p@#8,9  _ @1@ #9) 8( p88mPU@**P ELF3S #@  PP@8@.shstrtab.'ym8_shndx.nv.info.text._ZN5cudnn6fusion10fmha_dbiasILb0EEEvPKvPvS3_S3_fjbHB+osharedD+constant0G(?relK5W1W.B WD WGWKdebug_frameX aallgraphprototypeoaction;$__internal_0_$__cuda_sm20_rcp_rn_f32_slowpath; ^Gj1@RG v:&9 d}2 " `I! 0q0 .1 }HH 0 ' >mn f"M S$@|  (( $40 4RA5)X< pL(o`(#3 !"H,p` 15t%8p]*` 1/\C $ $* <!7 5 `AAu @u <9 89 4909,9(9$9 u!9p"! DGHHHI0IPI   Ss$%64>0D8@$vqy|'a Rzqpr?2@pP jz F S {  b$v ep*`$vc @@Px]`0CW@#y%@`zaA@z0 0Fb@@$~ 04^000A ne $01S02s . p/x1  `%WWar bs^ +~%abs+N|?p1y &1pP1  Y`b.x s_"x ROs  ux p/r ȏ`?cs "sPfrPcOs5 1$r%`Q/$r@ p1$r ""r0r??@'r@Tr p``'r p@r0 !0r p O@ @W$x `Tr Q rAp@9| f$z@gC| @r 0 ? @r P 1p`p $8 0 pP$pR " r01p` Er pr @<!RP@`!b@0pPx@1r01p` r( Q(@X p'd@! *HP1"3 1 "?3!"P8( P@ | "p01rD PxUAx0@$xp1xP 4@`Xa #38`G a?$rcx- p;x*.@ "6@.&(0;$r56 9x2cGy ( p02zP@xGx@7Tr 7 ArV$r4`vxBB@H$xAr0@@|@xTr @P!x: h9@r44?P0p"pR0H$x99Pr::#D Tx8<P r9` BtB r8 r` Gx;9pJx=9 Yx?9 =v YxC9@ @(BB$ `;( @ 0VxA9 @ABB P`;` `;$|J9DD7  ?pp4E90 P@$8=@@4G9@`K8BB@?@@4I9 @`J(BB@+A@6K9!@@C@4M9(@@+8A@4O9)@ D@P@ $8C0E8P@P G@6Q901(@ @.8EVxS91@G@8U98@.I8W99@@KȀ0.8I00K%0'0-M0@0O0 0-8M00O00-Q00S00-8Q00S!0(0,U0@0W0 0,8U0 P%p@ 0    0DDl!|@1x pb G0   p9z0@ 0@  @` _, cwb@y "(00 &PH$|J@ r0pBPI|  @pB@@r<0PP |@Cpfz8xAr> !Ex02rp#@P*x` v 0HxHHSxO`$v`ACx IHHH@ p@08xDDE8HH0 @@C@Ā@t98HH@ @ `KrE @ @ @` $@ 0 @G  $r  I ` `p 0K@ 98HH` Mp` p@pP  pOp` zpP 2x %` P Qp OXDDz%DD`(DD0 #%DD05XDD ` DrS@ @0 0 Up p  pWp  `$|  `0r5pR@Cp00"x !0$ux00)P!!X 2x# p P97vpp1Hx`  @ p@  00@ 0@ H09xF p P<x0P@9x`P "xPP9x@00 P @ @`` 0 `3  @ @0x !U <x @@Ix@?x 0  P;x` `pKx@@@`P   0   0`0  Hpր~pLPHppp ppppp  p;HHHFp @*U5t PpFxY0@0 6xX0``(HH6xV0` 0T0`0`0R0`08(HH6xP0`0``N0` 0P`P0`0p`@00`)00!` p P@P 5rLP pP `PP pP P NP Y@ By`&@` H0`y 0!  `! R%0(y R&#b00Ux`!!#p`0rFp %QO0r arFF`00r@00hr0CrY S!r11@p`0 4rP00!䏀A0r0'0P`!0r' 0` 1r% )@ 2PC!r*P@ @p# Cr377o S!r(( P07// \0r @0 0 @   0 3''oJr6 ` `Cr p #&r @`S!r%% `    9!!`#.2!7pCr 00r p#6 #"$ `Jr  7 p3##Cr p 3Cr  p` 6 `@3--o@JrpPPp0(pc!r55_PC!r0"9 % 0p 00r   @ p #pP #$#Pp#,$ # 30 Cr P#33F3O0C!r2Y##$ $3#% 3++pC!r& 3#( 3PGY";x$ ` DN (&pP#y,c$v`'`"'!+R' xp@6x'prP  +@7 p(  0x@-H$x(&@Px `Q@@Dy6p$r .@@{%`$#t!A/0#r P p(B r3P@Br)Y r22 0-0) @cEy0  766 x r11 Arp`455 ` ppT r** p$x@*Tx7000T r))qsv p)4 P;((@2@4#p(7 p%*`6//`0&6 ` v zdp.V r&& @1V r.. @cpdr6%% @5r2@4$$ p4##0(* p4"" `0(0 `4-- 04  `) 4 407(0`4,,0(/ `4 0(' `4++ 4`&4 `407.00$ @`#% `  #$ P!# "m*! *- 9 (9)* * 9,091* *+ x<099* & #{%GP`y<3@$zp3 .@y 0 b3 1v@p|0@ 1xpB -q0zZz[@>r `d 4U>r  5 t/>r V0 ( 1pP`@&Hx.@y@  2x `x P#p`2z   p@`6 `P`f ppcx2v  @x  P @1  S ! `Ex 0/$@ (@P 0`p` @`@ @!p 0& Ƞ`0@`  Ayo 4 ?00P 0J, . 0 B z0 p0 M[M !2*0  C0 > ` +v  nC   p  0rD$~  > 6>r0 0B@@Bz P 1$r  6>r :  Cz@$)+` 'pP2 @ p 9xE z&x   0H zp H z 0@x      p0E0  T px@x  U00$ 6 1xt`Uy9M :y@/pN 5M*`P`P6$v B% ʀ GȰ"P# '@!"#x _`2s0G`$#t`%p ppP_`p pPx/!x"7&0Vx @A$t@1xF&1r BE!PH@ 0%* Lb#r ep% p r 3$%/`x _Tr  Ơ A1r p 1r@BC 9(`GP0`% <@/@@)`1$r`@b`7" RPʐF   3$r-$  H"$t"0`PyPbpEsM&@M&&(%N))+n' @J 0J JM M M M@ MMMMM*MMMM@M`xT+tOx <`+&rF J0. `M00KM@,`KPLMM@* M0+M pMH0I0 1xĠMM0@L L0MM 02 MU JcCT 1x  K@0MFP@4r p6r`Mp(  IID`INK `M  N  @M@M?1 T?M N`MP  @P N M M LLEZP0 M ^#$% 6rM0NL LAx 1x @Mp!rM M`M/15`ML0/M @MQ M;rL LCTCT MPM@M@_v` `M0  L0MPM%L R PM@PMNM%'R#& ' #, "% M0HP%*pS`%M` MMMm@MM"@MMUMM[ `M 8@MM`ML MpM`L0M0)M*MM(M'M 0MM&M PM#% MMD$M #M-M,M<+M*M"MMMM]%MYMPM MM& Mj&lO<4};O @{8 s@hBk  qXtt.) Sp3`1qp0@d @/@@@! #( @ 1, @H@|u8"$ X@@RB@@N @\@@2cD \+/@.^@ @CP 8]S@@&( 8 *H8t8P@h-g-V ELF3S #@  VV@8@.shstrtab.'ym8_shndx.nv.info.text._ZN5cudnn6fusion10fmha_dbiasILb0EEEvPKvPvS3_S3_fjbHB+osharedD+constant0G(?relK5W1W.B WD WGWKdebug_frameX aallgraphprototypeoaction;$__internal_0_$__cuda_sm20_rcp_rn_f32_slowpath; ^Gj1@RG v:&9 d}2 " PI!00q0 .1 }HH 0 ' >mn f"M S$@|  (( $40 4RA5)X< pL(o`(#3 !"H,p` 15t%8p]*` 1/\C $ $* <!7 5 `AAu @u <9 89 4909,9(9$9 u!9p"! DGHHHI I@I   Ss$%64>0D8@$vqy|'a Rzqpr?2@pP jz F S {  b$v ep*`$vc @ @Px]`0CW@#y%@`zaA@z0 0Fb@@$~ 04^000A ne $01S01s :d.Ppx1 WWar 2s~ ( b|?`1y "& 3pP  'N00x /s@a0s_`Ex 0pOrb̏s 0vx00`?0cs j s@g"rPQO$r" 3sQyO!`Q$r01$r @  "Pr??/'r@#0Tr 'rppr0r `  0 08x PTr pi| @ r 1p@@rPVz@gC| 0Ġ  P1?`@ P1p`P@$  C| @ pp% p@pRp@ rDp`p@@r "<`!R`Ġ01p`P`$b x@X PdZpr@2("'H`!@1 #?3!"3 E( P@0| "p09$r`AxP   Pxe X`00Q `T$x@Dx53dG !?x `;x*>` "60&.q026$r1V`9$r6 cGy ( P @2zP@xAxW$x`TrGx  1V$r@vxBB0H$xAr00@@|7@txpWr P1x:p h 9OP@r737p P0p#pR00x990Pr::#D Vx80P r09` BtB r8 r` Gx;9pJx=9 Yx?9 =v YxC9@ @(BB$ `; @p 0VxA9 @hBB@ P`;` `;$|J9DD7 $0?pp4E90 PDr8=@@4G9@`K8BB@?@@4I9 @`J(BB@+0A@6K9!@@C@4M9(@@+8A@4O9)@ D@PPC0E8P@P G@6Q901(@ @.8EVxS91@G@8U98@.0I8W99@@KȀ0.8I00K%0'0-0M0@0O0 0-8M00O00-0Q00S00-8Q00S!0(0,0U0@0W0 0,8U0 P%p@ 0    0DDl!|@1x0 pb G0   pP`01 p p@  _,)u b@y "(00 &P@ r0pB0X$|>J  J|@0|00Cpfz8#x@Ex@ xP v 0HxHHCx p$vpA0# 0IHHH pp  I8HHv@ @C  @r<>70%  E  $t   KrG   !>>@ #%HH ĀpI   @ $ K %r P MP `P `pP   O` z@2x % P QpEXDD %DD58DD"x0 #%DD0;XDD`S@ @0 0 KrUp  pp  pWp%DD $|  #R`3@Cp0 DpRH4pux00)P0!X 2x#%HH   ``P)7vpp1Hxp  @ 8 @  P0@ 0@ H06xF00 P<x0P@9x`P "xP"xp9x@00 P @ @`` 0 `3  @ @0x:`!U <x @@Ix@?x 0  P;x` `pKx@@@`P   P   0O`0  HpրPpLPHppp p pppp  p;HHHFp @*U3t`D`PpFxY0@0 6xX00`(HH6xV0` 0T0`0`0R0`08(HH6xP0`0``N0` 0P`P0`00`@00`)00`!`  P@P PL` PpP ` pP Y@ `@by`&@` H0&0#P  y  `(y R&#b@Ux!##p`0rF` EQO0r P0r 0arYF  Sr Cr0S!r55 S!r11  Y!r6Y600Y 3))O00rPer@ ' #pY!r//P4 P@P@0rp#p0C!r(@04r@ pXrP00r p #.pJr `6 ` S!r##O 0@ #$r pPp  S!r%%_ ) 9"" 6 ` ` * P p`#4 #@@ 0#"06 p Er    @@ ` 03 `@ ` Cr  #   03(0%  39 # #   P 00r `  #@  `S!r++#$# # @pCr#2Y$3333''#& $03- -3! !#, B%0#%3#*% 3#R& 3#&PGY";x$ P  Dn (&pP#y" 0C`'`"+!+ /'Q x82p@06x'prP *@7 p(  0x @-*((0#*x `1.Dy@0 {y7!,$#tL!@P4#r,1x `(B r6@Br)V r55 gr )1 r2d;@0 r47711x0733 Ar`7)) W r//W$x 0/W r(( 1 r'26...)PxA r&0@%29--$8  *)V r## i r""!@@ r ,999999++999**9v996g$x 0 qs!P PcEy P+@5@ 0,0 0 z83/@#2  cpdr#4 `!0132*) */ (09'*. *& %0-*$ *# "r0* *, 0* * +"0B* ** h<02#* & #{,GP``y<30z 0P( .1yw<0fb$x 2 1v@36xp| 1 @>r T`r -6zZpU>r @5 u/>r @[@fG0pp ( ppApP0G0&Hx."yP%A  2"x` 2x>+@ zP#p`2z 2z p@`=`P`f pp`x 2v @x p@x@ cPpp6S ! 0`Ex0/$@'@P 0`p` @@ @!p  Ƞ` `` ` Ayp?x 0@6*p0ĠBzĠ ! . 040 p0 MKM 0% 0 0 00A&v p|  0    $$~0  6>r p  p/$rPBz `  A$r  6>r  @BB$ ( + ` 'pP2 @ @ @ 0       0 0Hx    9p0 0   00 @ 00 E  @x P! 9M  ;x@ /p# `N 5M    0# 5 0  `PHE&x  `G.P" 6@!" #x _$`#s@dpP}?!rppE@6#xP pPxp!x!7&0Vx@A$t0p1xF#1r AP6sH@ 0%@ @ b#r 5% p r 3%/`x @@r |p@ 01r ` 1r0B#.!x9( 0@0P% <0/@)`1$r@b`7@" R#P8` '{a$$r% I pt_"0`Py`b@#0E/MV*L J K J J JM)p.**&N& @J 0J JM M M M M M M M MHMHMo FF=M0)FF;pHJ7FFpM4FF@L(FF<M FF@H<M)FF<Iv@=I M%FF=Ā >`M)FF> ?LG@ >M%FF>?M/FFM %FFJ M)FFJ@M%FF@M )FFVM @MVM@M@M@M@M@WQ MPMJMM@@YM/pM(ZPM  PM0M0M FM JPMMWpM`MM0MZFMFMM M*pM)FMMiM FM FM !PNEM MFM p `EpMp MFM  pM9p M+FFMJp?pMj/FFM/FFM/FFM/FFM/FFM/FFM+J $pBM/FFM  M M `B0M P M 0 M pM MP@CP  M PPM `P M p M P MM P M  MP M  M YPM `PM, p*0oM6N`MPVMFpMRFMM `MPMMMpMpMpMP M`xTB+O`M H0M ) L0 FM@0=CvpJGPM M`=` LK pM@0= L M00d KFMPP/ M pN00 6rMG M6r@MĠKFM4 ,L ;1x  #&rppKP0 3%%?@ P. L@`MM@t=!r'PIM NpET `@LLL0 3,, `  1x ` `PPC!r$2!O ` ` L P@PLAx @ p PL9r POH!r0M `T/IOpLo0g `K p0 L OK MPMp @OH!rMM@CTCT    `MB1x 5 #*$M` MPMMSM pM#" $`MpM #R(@ SO!rM MM PMM pM @MM pM `MM `MM pM PMM 0MM- PMM OM (M +'`MM %M*$`M M#M"M,M+M<*M)M M)@MH ?MM" M M MMMM,Mz& <4};! #{ &d X&Q 1X'l.T) ۣq# P #q@0@d @/@@@dCb#( @1, @H@'8"|% X@@RB@@N @.\@@2cD \+/@.^@ @CP 8mS@@T( 8 *H8t8P@..Z ELF3S  h@Z Z@8@.shstrtab.'ym8_shndx.nv.info.text._ZN5cudnn6fusion10fmha_dbiasILb0EEEvPKvPvS3_S3_fjbHB+osharedD2reserved.0.rel-OrelaD-?1b.B bDLC LDdebug_frame anv.callgraphprototyponstant0|+G\USmem.offset0W .0__nv_RSMEM_0_0_alias$__internal_0_$__cuda_sm20_rcp_rn_f32_slowpathD,<5 D{1{8r{D  +; 9 4s2 T! C s&  \" I30I x & 0 0 0=gNxx KH W$ @| (( 0,0 R<6\Jp P F|p0|2Epfzpp 8 x@P  ExP Pxp` v 0ExHHp@% pv$A0#b0IHHHpp@E8HHĀ@C P 0<>70% pE `$t   KrG   !>> #%HH PI`  $ KP %r `M  p@NrO z @  % QpPEXDD %DD58DD"x #%DD0;XDD ` S@ @0 0 KrUp  pp  pWp%DD $|  #R`$Cp0DpR` !@4pux00)P!!X 2x#%HH   `P97vppCx `  8   P0 0 H06xF00 P<x0@9x`P "xPp9x@00 P  @`` 0 `3  @ @Ex0!U <x @@Ix@?x 0   P ;x` `Kx@@@`0   P   0 `0  HpրPpLPHpppppppp  p;HHHFp @*U!t @pFxY0@06xX0``(HH6xV0` 0T0`0`p0R0`08(HH6xP0`0`p`N0` 0P`P0`00`@00`)00`!`p  P@P PLP PpP `PP pP C  @ @byp&p&` H0&0#0N y  `(R #b@Ux! " P`0rF  EQO0r&0   arYF0  Sr CrpP@W!r550`P000rPp`#0') @0r@QrP '0p#0S!r//_ `#`000r `'(` `Zr` ` #.B`Hr `G!r10  S!r##/  0@ #$B#pPp  @S!r%%_p* 9"" 6 ` `  ( 00r  pp#4##@p 0#B!0@6 pp@0r Er `  @P ` 03 `@ `00r Cr  # 03(0%  39 # #   P 00r `  #@  Pc!r++#$# #0#4r pCrp36Y6o3333''#& r'3- -'! p$S!r, 2$0#$3#*2% '%W!r@%c!r0#(PGY !'Kx$ P 4h@ 0C)S"y ,Pb6x.aQ x52p@ 6x&p/r0*07p `( 'Ɛ' P,*/8x ($G 6Px `%000Dy3A$Gyn   sy.`$#tB!0@.D#r,`-0!x )6x8r r6@f r55gr )V r11 @ r44@04x0733 @r $`7)) V r//p. Đ6(( A r'2Y r..&0 %;29--$* 9##7""1r@ ?0,S r!9@ _, 6999@ `9++999**9`96P| He{.b"rp`+ p* 2!+0 `+QEy02|0/As!P+-6` 0507P,A|`(`1 xhs1 p% ,0 _,0#4 p `0! 0 0|0Cpdr 33 !0#) 0*/ (A 09'*. *& %0-2*$ *# "0"* *, 09)* * +0* ** 90#* # S{cG0yq:`410`40#H$x .1y :@ b0  10ࣀAx "-0 !1|!5@ 0@>r  >r  5 t/>r cG @1x 01iH  JApP0)t0E6x x v/C6xbqx 2vn5 3+@p``_ 3 %`6 Ap`@@y@w  `@# @` @xp@ @x  @f pC6x 5c   W W 0`0XmO 07@7GyL0p@@0 0 P!# '$Gy   ) @`` 0`@$Gy ` Ay@xP# *pڰ,@:/2 Q0       / *O . ,@` S4 0 |O ApdpP M:. 0f$r >  C@ AP  p 0 A>r p 0rO$~!0!p1>r  C| p    + $pPPp086xPx   P0       @   "yPE`@P   @@Q>`p T  % % $-Ex  % ;M 60 !0 p@/0 pMp     `PPu$$x !0H#P@`# #UiG0 #x!_ G $N?F}ȟ!rP@#y@a6xDP!x`"ڰAVxU$t G = xp?0$@r u@;s 0%  @0R#r Ex p r 3%/`x Tr  *r H!r  @r 4"E )$ `P%% &>*n+`&Nd N")@ N PNONr N 0N @NP N_HNcHpN FF>N0)FF;HL7FFpHE8FFP<L(FF@=N FF'PpI0=N:FF@Iv@@ N%FF>Ā>`N)FF> ?N:FF@ p?N%FF`?P@N/FFN %FFJ N)FFJpAN%FF`AN )FF`VN @N@`N@N@N@N@N@@@NPNJNU@N,pN(`Z8PN  *FN0N0N FNJMNWpN`NN0NZFNFNN N*FN,FNNiN FN FNN NFN p EpNp NFN  ppN&p N+FFNJ?pNj/FFN/FFN/FFN/FFN/FFN/FFN+J0$MN/FFN AN B0K P N 0 N pN NPCP  N  N@O L `P N p N P NN P N  NP N  N YPN `PN, pPZNWp.MNpM@NNF NN MM N0NR)/M P NcxT @r--@Q$~`pRP1x@pb @TGu`pp 'bP`0Er ȀƐ$Sl  SWcO !֏@ W  E` 0/p 0&~p P9h0udGu * bC x@` Cpp fr P  ax@p P40/'1x PP 0.  4-$~ pȏ B @2y 0 `x `PdO6x1/ r/O0p@ S6x0 ` r/ B0 |QpR0B r1@ P1@p@` Q r, Bp #0 oP00r00AP0r    b"P0P00r 0 S"  74 1V0r5 `S"`C"P, B5rp%r@@3r2@"0@# 0p3@p/ S"44p`C"55P `y !r++_ `%rp  s!r* 2 S6x 0W!r)2) $r0C!r(3r @ PC" 0@C!r& Pp#0$1 0!r'2'/`$/  :%% $, `bp 0@!@@C!r$ B p2`PO0r3@S"22p0 P40@#33 5 @p`S6x00     @P#p0#` p S!r##$r0@ P@ P@ P0`W6x60!`'1$" C!r" p34),#0 @pp60(!24r20 p0p @C!r" p4  @ /@@@"8 `4r:0pp$/6#5B 5`@%0P0 ``( 3 @1@38? 0 pS6x801/642 PP&,80U6x20p@(:C!r5bp!x@W6x:00`   )/2944090$189# P ` 4 00$/:06J!r9@Exp%P  Tr @ p:9 %704 4#40p#pp1@` p<x9p&,Fx8p0P`%p2`0  0 p2@73pRP 10p$pRp@ pP`C"110p @9p4pR 806 @  0`0@`P##`4r````@ 3OPC!r r32#   %0%N!#3  # PGu P 0h0{@P$6x/SA!Q x0!PTG PPx00Dy4ZA $Gy00sqP$#t} !`!rA T#r"`O`#yn@3x-0P r   r9999999++9((9''9&9%9$$ p9 "9 !9  @971r w/ r 0 rpPP`906c r0 W r  P@x`PEy! Px ! 0 C6|o @xP!dx`@4 a$xV r*f r)QsPU@S{!f 2 @$( `#@O B 0x8@@ 'P#$ !|&O$x] ppP p`/`$$p |@pdr#MC  %  x P C  a 9 `@p 0 * * I(8)* * L$0 r* * $0H9* $ S{cG 0$x# !q0s"$r Px$@@Cy%  $xn$p ?$ P1 2r!d~0 1@ @>rO4`U>r 4 aO$r `p 5  1$r0a G#P    #y@@c 6x `@ r 2p`#@@&@8Gy BxP#pPPnPF6x5 Ơ04p` !x SP!@# 9@0p=O0& 0%Gy*' rx2v/Px   # !#   @@P    #   ` `@x  @i0p @x 0 0S0pqWW 0S DA@ p$ @# pp Ax @/%   3࣐`!!D` '/ İ<0 #m  `@ ` ( @  `@ `@` `PP@P`P P@P`0XQ/xP@gGyL0$PPP*P4GP% //" 'Q / $" @x p p M#0#yn @%'r@ `b   "@ P " 0'   `@ 4 `>r F>r @i>r 0/G` `  $pP `  0 `       `   `@` "@ Ơ A0`  `         -Ex ! ` 4M @ 01 0 p!  0 `pM `   p0`P 7{@x,3r0/P( +#bGP#@_p!s;0%d.Pdk?!rP@6#xP &yp0As0x0 U0T$t   p? @r )+s 0% `)  l!@B#r.p%p r 00xO$0x] Dr  !r" & .p!rP+CAx1?4 m+& t/ҚҚ ikw5 ך%A*ښښ*cp3cښD/PN XCPX%Z4"m*X  ފRc ++NL$'jTDIJK0KKKK,L " GPLPMMMN@NLlf{3U18Q 07o0LS(z=$60=8 СС$СzOf0СС"KС00С2LС #pQxСx$S +lf @#  @v8 @ | P"R. Tзq {@ =gP9@@[$ ,g! @H'H$d @@, % @ O @/9@: 5 "z 0@8@/@@/(@ $ Q/g /@.K@ @ҔCPq@@ /?VB @.ć@0&p#UH  @/.@.@ @olT [#i o*d@@@Lq@@.@@ 2#`Gq0 ~@@@@@ t 0v+p@#P) O_@ 1@T @8(  qp@1 P10@x H< // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW6smem_0E[];lisible .entry-10fmha_dbiasILb1EEEvPKvPvS3_S3_fjb( .param .u64 .ptrT&_R?_0,\G1\H2\H3\?f32b-4NuN/5N:6N:7N:8N:9N:17/1*T'12 ) { .reg .p%p<131>;b16 %rs<3432 %r<507e%f<422b64 %rd<50>; ld:%rd11, [,>0];X4X/1X2X/2X3X/3X?r59W/5W607W]08W\09Wc1 d s8c201dcvta.to.globalr,x4 2 3 3 c2; movgTtid.x; shrI1, 5; and.3(31@4, %nctaid.z5yO6, %/7 .5 6GT6; di6G5r66; mul.lo.sQ668,#c6; sub868gl928e$10Hc6; addE ||w)W; madg+r7=7q&1w#27t 1T+dr72; setp.eq.s#p1$8, 04503b@%p1 bra $L__BB0_Ptul.wide]#1545#nc<j[E6]; d: 4'I@%p247P748,4:l/49m0 !9%r4r3%r5"ltpw<D#ov358, 0f0 c" /601234567877777777778888888888I@%p3S 53$_)7406GVS4; orr2"773s64d d1;r78BI D-79 2#80 3rd2 ]3m5N5N 53m2>R=up)?0  '15az !15`5 a'1&< 5"rd 3~#2~  vA{%r9E9a9201}g3CO81>%13;3+51?hm&25?O1024@V7@ 53%//flo, hi{}?90, {0, lo}1ahi}; }CselpG1 9!p3GK%p371;K #2?O#!f14r16#le$ U1}1w12,hpB)6)]p )0%f1<U62|8|79)P#p4/9O5?r93O4O n?0mn;p355;KO6?O O4r1630Y1 1Jp )2) 1"BH%f17!f1!rG \4\3< #f1dc r I7 7$p383l9;r `?r z4r16|4|7c67<$%p  (17]"f1.1752 98<$%p o/31#10C92#10N@,HB 41<r 44@Q 5+17S p* &8<7184@!f14r1758*<>#f1:Or102Q5Q3W|H\ 7=N0 6$W$f1EX -6J o9<$%p o#19|N 7 7#9 <$%p8o/787 r18x8 A;%p28 I;%p2 =N8  8J 9<V*19 8%90 09</g (11Or108>8j A;%p2 8k Io 0\=r AR 02D8n 84Zf7 J 0-20<3%p4x7# n 2# 80W4 J <3%p4l/Q833r11 #118 AH8 I  =N8AR8L  * 2 <)20u 29(-21* 1</U 13r11 @9V A 9W IO =N#X 2951J 1<` (21 $f20 -21J<$%p80/ 1 3r11 88 AW9 I p 1  2  * 2<(22#f29(2<j/X 23r12n 2@X A%%pabK X I4%p1 1=#r1 DF+ (2 5Z4`2J 2<` (223f22 5s0 .222.22<` $9,/   3r12 88" h#x1 I4%p1E 5=rp h= 3# 33.23< P& 6C3f2333.23<  / 3r12p @X A4%p1zX I4%p1  Y;X 2oX 3@ 5 33.23<` <(6c"f2-2154.243.24<` /8 3#12 8381 A4%p11 I4%p1 3=N0 1 2~44.24<*24x 24.24<h/X 33r13p @X A4%p1X I$ #X 5 1X 2H"  744.25< %p%*25x "15455.25<` / 33 88 A+%p2 H+%p  3i . J2 C# 55.25<*25v 25.25<&/ )) nC 5 **58*3)'4:>,sZ9Z6Y55*?9n70#drcp.rn2'4b2 $f24323- r 3$3336[rH ;f26|7r1 3f26K4f53 N 3%3f  $f26373  3f26/3f  3 393wrJ f2y63$ 3 6P313Hf :f27|7$ f{3 3 f 5 c3 5 3 5 3 5 777 f 8<2 3 8M 3 M8 388 3 8P 3 {83 8~3 N893 83 898998998O)]53w,<u)3? 5 19}453:u-5,AIF 1= j3201 (sA@#stFg[ 3](28{8B2 ]"]5]6]96Nr !$20/#w7w8LB9g" B3$20o$##31^2^hj6, 230 #^ ^#33B33 40 ^#4uT6, 434#^444 44B 43{K6, 63#4o^:400@#^5@555 5 3D:819"5#554+845#^5@668B 663B06, 0 #6$6 3_4 f $_6B B66 B73&2  $773C;125"!$_e  77>B73 B*43  $8"_5$8$_88 8n 8F 88bar.sync(  Gd5 *51 l:: %_. #h,$ld !v4 {""2r Br2905 29K  N!r_ r#2953296r`// cvtbbf16x2:r297. 3. P3o\5.I3 91, 9r:781    3#C3 Ctp.gHpYq5#4H$orNJ?"p69?6G83 :r3".34I_ 73#349VIe 4`8d3# d+ &}"0* 'E7t8(9sI; 306}; bra.uniIu 818:$ 3]5 C)212}/0A \$#@ ww"+8 *21 6 !eq#%p" C29/FE # k3+4]23 y#y 6y8y)26y6E Z6N ] #12z6 528:B{%rs s<P5u16e+;4#>#B6*ENk+&s1A+30\5s2}5^ PM 5^6D3^Ps)32+< #  A3x6 *34 2#s4 V 5%O6|3's5 %54xj0 /# *70x @x"10y4y #s6 5y5y 4P4y&s7*40y#y&)1#4uP`|`85   :#r3&6 $36 v27[% >7V $37V Z 7 '\@    & D(61_ 8 p+ _ 8v 5( d7`_ rhC  _  #pC8_  8mfL)"_ 8r8JJ"J &J9x#F m("d1; not8 pp@ _"s8 7*30y B#8 488 i #s9 r&39: F9:8 581L59 9= 5z9x2e3s11_  {9;85W81X5 9 i# 5;81 +56~sFk 4 ? # 51](58&40 ag#z9dZ 8r 69860:@ p 7&40 G#  kG6 /40r O#y 6yW6&409 D#y X y 6)75&40w #  Tw71  _8bIW ,S ~ 454w4N~ 4>40!r4c00r40[[G# 4 ~ [ .044!4414[5[" *41.B.21. 5 ~ 3,`$ ~ v pI@ 9$%42W T 3eA ( 7~ 4E g ~ /#X99~ "#43P~ )"~ 9-9J!J"J *~ #43~ F#  1!b*101% \NA"$s3N:XE$*10/m 1+75eCrs16 (-&43 E$ P -)770 IP${ j({ 1/+79|"s1O *42zD4 8$ )814 D${ (  *83B%3s20 /44yQ$ 8{'s2+ *85_uAv| z 9 .2059A(87524jTz$ 8m *89(F \S${1 9{){9J C${ p { (93# {*19 4 ,D$  y /25 g)95 W^!1  5"4674y  i!45@4X/3r45U3454C 7[46W>4458[9[B S".3. 5. 9 2\  E>E1 h1#12M/ 7} Y "41 Q i41  X &8, 7#hh0 L.#47` 3X# 1D)12U##472 AD#M 1[{#47 )jD# !d 11)F :;/46.3L4C0uC$2D*10V$10 F+10'+3s23  2$ f*10z *10|8I f8X~ +)10, $10@2y+100]+sZ w6B$ /103$10 2*104; $~ /11K2 +11+e3s27 8V A1sc*11-8c8:$  7 1N:\Y]#9h  o 0 W/49 2Im1~ 1G%<~ 1 9d  ~- % 2U {*63 9 ~93 { /69 2 Z23: ret; } {0{@T{0\ x|\ {)\ {N {N {N {N {N {N {N {O*{N{ 0yx%u-Xpz e.r3X/fX{ {$W {$W 8W\09Wc1 d{ {1{P1{01{P1{% {1{&{1{1{1{1{"tp- i{~Uwg91{1{&|x{Zf{0cvtPF,{-lo1\{MM3M4M6f{867f{/ { 09041{}4063f;{6h{666f{u1F898` {63676%6 {v6459L }6{6B,7686 {u2829N {6 86{ 8{63h963{33{633{1{) ??{"1{1{&* {{-y{ -{ "q -{1{1{71{W zYqZJ|c{1{c1u>V7=V| {51{W1{+{W7v%Z7A[1{+ y{* X0x{  8s{d1{* {E1{* {*1{* {F1{1{:1{1{W1{+ (h ^p{ `{G^fIw{ Y YB| Me{ Z{ { -{c1{1{61{K1{u1{1{X1{+ {*1{1{Y1{+ e qe{1{, {H1{,{{1z{ 4 d z {Mf{1{+ $ e{1{+ y4y Cf{ ]R { 6 z r?t/>ru>r tO>r PYr  `! @ P GJ#`. #y@@P x)jP (@@& @8Gy @xp#pPP. &x0&` @0p` 3xs@!@# P pO& 0$Gy)#  Px2v] pP  r}` @0 0``0 0p@@x@x  f pPx 0 0 W W @0 q!SAy(0# @$0x*b* 0"^8rp 9rJ5|0U>r V5| @4 0 #̑0 pLxPP   P) !y@'` %P `pP 0PP p``P`p 0XQx #`'yL0!.@`` @``` `/" % 0x Ơp M @ p ) k$r0@% 0i1t   %k/r * p& @P P  p  0  $pP@    P  @ y  ! r 00&       %  `& @x J0 ( H 4H 5 -Ex ``% 4M@ @  P0@ 0! m    `  Q$xax -,P(C r# ZbG #x _T@}?!r4@6#xP@#y Px@0x`x0 U@T1t@ Q?ppr"2s `*``'` !@B#rP@ r0UxȐ O0 x_Dr 3 .pr4$ r1?3 p  0PP7P1P888%4pp8+P08 `98 0 p878#""7@ 84C828808D#``8 8 8@88 #068/p68 0838 8 88 P9 9 98 @ p98 88B:8:8 8 8 68 77888 888#88($r7/0$100838 8 *5 * 8*88888880`8888888#8388m888 8 88p8u8}Py!V{w  1&w;{?pwܝu`+  Q Ap"R.!@DP  )0S9@@t$` 0`D0Bz0FAz @D1 b%09C|PDhAh,9,A0l]ttt*A $ A |L(,1|2 8|DAEDB NB+ Ё`#Ghh0 *P* *@ @  C+ 3FHHA TA P 4 x|,L.1  #HAl' $,( "1HP@(,"T,| :X),p`, XCGZW P`82 `c2q W 8P   @@@ `  @ @  `   @*.J821 Hj !  ) ` `      , , #, L`  L`   , L@ /l-,   ,  D,L@8D xX`@8X @ $``8x `P  | %1ߣ ~?{6$     U P   ` `  a/~V 4 #I5 [%?'^^*cPN^D/KU@PX%Z4"m*X  ފRc ++NL$'jؙԐB@GHH IPIIL "DIJKpKKKL~91@LY 0&l#0 _v=~$/= PP$PP0P~P&P00PPP #NxPx$0Q +xO(  @v8/$ QR. T] BpF Tg 9@@[$+! @HH@` @@,$ @ Mԅ  @/9@: כLO "z 0@8@/@@/(@ @Q/iPY/@@ @ҔCPG@ /?V @.ć@!Rp#`]S /.@.`@ @ϚT [#&si o@@#Hq@@.@@_2#t ~@7q~ @@@@ t @! ^+p@@ O_@ 1@T @8(  qp@18PU@AAP ELF3S  @PP@8@.shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion24print_dropout_mask_bpropEPjPfiiiimmmF@)osharedB)constant0E&?relI3MfM,@MBMEM#IMZ31gen 4bit_transposeEPKiPKyS4_PhmjQ)oS)V&Z&2NDF{InMdebug_frameZ aallgraphprototypeoaction*+E;=@3BM#MEM&^Q)oS%$__internal_0_$__cuda_sm20_div_u64}%+ V&-DF1%p I Mp: $7 7% HL }2 : 1 "p9!0;0' \H3H 0' %E a fp8"  > &;S$@|  (( $40 `A5)p)pDpp#P"p+DD pD< OPL(O`(!"<,*P` 15t%h `?:@l1/FkT %^$ $~$$ W0* 0T!75 `88 >f%!9(%99P !u o@ pu`ll 9 h09 `09 X9 P9 H98P o `9 u`TTXH[  Ss$%6[x<0|$n0Dh@$vuy &"y'!bz]] 0Px?0c|? Pl G"@A^0  %$x&' p/ z&0pbr {rb ? @ ? `r l H?Tr @ ` P@* @ @4 @@r `Or  `DMA b ` x&r  7& $z''_0gx& @r  Wx& 6$x'b7&0@r @$ P6& Z$z6& Zr7 & J$z@7 & 0d7 & 4|Wx & TrP 6 & Z$z6& Z$z 6& Z$z 6& Z$z 6(& Z$z 6)& Z$z 6& Z$z 6& Z$z 6& Z$z 6& Z$z 6& Z$z 6& Z$z  +Z$z 9!& *(( 6"& Z$z)) 6#& Z$z 6$& Z$z 6%& Z$z 6& Z$z 6&& X$z Tr p ( @r H$z fz FE$z!! %""*##*$$*%%*&&%@0px@Ar%(  B|A|!P@z1``zY@y@ PTxEypp `` `B z@@x0 3"+"PZ@pp[+B%PAO-?cGIpx"B|'PPP x "pPC|' p3x+p @[y+ AyP4@-0s*% #@rY z2$P@*A`@dx00*$o2)A`!0$`B zP3E T T#4y03,#` `D,P0X*"@TxU/" 8G*Pg P@*0p Dx2!00H  3,! @5*  @ #  p`!&D` 071 0p5@``Tx*`03`)4P@E z*`G,PuPps`G,p 0,P`0 53`5p/@ `G05`e#*pp2P!$+%Cp @pP6*PpCP e/%)@ %,)'@,!3 `p! 5@ZG F|( xF|( #pB $z4x$40` `  P 5P `%C8 ` 5`8p  c* ` KEp 4 3-`"-E ` @WxC,   @G* P`83  6%   C* /  43,  ,@ H* @ @3 $+ %@P+  0/  5   3, p   S@  +  ? ` 7+ 0pE@4*`s` %  $ E,P $C` `) P   @E+ 5*`#   pH+0`$ @+07pI* 'P6 P003 $  0    0%0)* c@%@` 0 @@1v+c/#P @@ 1pB@$x(+ (PS*  ) ) %0   G!x  @5p  @!xa$x  !!""`## $$%%&&''` `           ` 3D& QGy0M@ # E 9 P!$P@@ 6zGr1x@~S(yi$pb%z PP$| pp%z P p`  1x 00Uz aP$z`&rpp  0/' @1$r E$x`  ` 3c2z p@$|Xx!r0Ax "@ 0p@%zƀ  PCe0p1 @6x`r3rP0PJz 5Px o Ux  `5x  !r @@@@p% 5x P3pb% @ %`OP ! 3   @00 @3 `p @  4 ` `4 0 &Q$   T `T@V@pd@D@U0 `t `% P` p 3`T P@ 0T0!%- 0$ 0 j p` T 00! `0!/p@ P@DO' $ Q0T0#G-P4 `04 ` % `!T 0G@ !`% "p! 5x p"p`"p0pp00 #2 pȀ00pEx $ pr p$0004P/0Ex 0T `7P@% @  p$0p $ ppp$ p# p$0p`8  ( (E 0 Ā,00p$  PE @p$ 0@@@10$0AP0 #pBT8`DpPp!2@@V4@p$ `%06>c>>P>>(p >`= K=g=b= =*=== >= `==p=bP=b=+0= 1 =P+v===-=j> 0%0== ="$ihP0`N=vN=* =A e0M`>070z == =02r,Sz ip 5xur0`E$x=@5 `== 4 = ' 5x=u%x`: @ xp@ <$s?&N%x =er >Dr p1Fr UxP>px>?;a|q"N p<@x`<0P0| P$<0 9!| P Pp>hEr>6x  = 9x `Dr @% ?P*0>P*p4P= )@0|  ƀ;:@98x>`> P P P??@= ?1r`[* P  P<P?0P P>*` @` >@<!|08|  @zAoJ%x   <@x0:B@ 5x@ ?0|I@A 05rP )@!|@ )@&x < = A 0<BA3| Pp<'P@3<Dr   !|0Ix @:zp%pP`!z0<+xP=( P9x =E| `>` P`nDl 8z E| *  $%!xp>P= #rO 4ADl8x= =:z P!zDx < =% !x # @:x (@x  >1r!4; @0 0<@&x BP675Jx  % 90 <`= =AsP,!= F4 0090`7 0 @ `T0 P P# 0 !* @* P* `& p0? ,D ?0 0 W  00p x[P@Vzj "y?   ` Szk 5zps@ʐ`^ @5M`o#{@ p(b pcPpb p cp bptp$p0ppPp p`0 p@p`pp#BLp.tPP,x@P`+`3``` "|BN C*0 @j8a@\2Q $ .] ,)#0`/$|o@0@ @/@@@/@h+l /@#/@@ERh! @!D @@+ 8",< @8XBC@/>@@@#H@@9 U0G@2@H@D0P/@#:@ @L@@%8I >@L @/n@@C8/@@/k@@/@@  D@8( *h8`8P@??V ELF3S #@  VV@8@.shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion24print_dropout_mask_bpropEPjPfiiiimmmF@)osharedB)constant0E&?relI3MfM,@MBMEM#IMZ31gen 4bit_transposeEPKiPKyS4_PhmjQ)oS)V&Z&2NDF{InMdebug_frameZ aallgraphprototypeoaction*+E;=@3BM#MEM&^Q)oS%$__internal_0_$__cuda_sm20_div_u64}%+ V&-DF1%p I Mp: $7 7% HL }2 : 1 " 9!`0;0' \H3ЫH 0' %E a fp8"  "= &;S$@|  (( $40 dR`A5)p)pDpp#L"p+DD p0< OPL(O`(!"<,*P` 15t%h \?:@l1/F D %^$$~$$ W0* 0T!75 `88 >f%!9(9 u099P !u o@ pu`ll 9 h09 `09 X9 P9 H98P o 9 u`TTXH[  Ss$%6[x<0|$n0Dh@$vuy &"y'!bz]] 0Px?0c|? Pl G"@A^0  %$x&' p/ z&0pbr {rb ? @ ? `r l H?Tr @ ` P@* @ @4 @@r `Or  `DMA b ` px&l r  7& $z''_0gx& @r  Wx& 6$x'b7&0@r @$ P6& Z$z6& Zr7 & J$z@7 & 0d7 & 4|Wx & TrP 6 & Z$z6& Z$z 6& Z$z 6& Z$z 6(& Z$z 6)& Z$z 6& Z$z 6& Z$z 6& Z$z 6& Z$z 6& Z$z 6& Z$z  +Z$z 9!& *(( 6"& Z$z)) 6#& Z$z 6$& Z$z 6%& Z$z 6& Z$z 6&& X$z Tr p ( @r H$z fz FE$z!! %""*##*$$*%%*&&%@0px@Ar%(  B|A|!P@z1``zY@y@ PTxEypp `` `B z@@x0 3"+"PZ@pp[+B%PAO-?cGIpx"B|'PPP x "pPC|' p3x+p @[y+ AyP4@-0s*% #@rY z2$P@*A`@dx00*$o2)A`!0$`B zP3E T T#4y03,#` `D,P0X*"@TxU/" 8G*Pg P@*0p Dx2!00H  3,! @5*  @ #  p`!&D` 071 0p5@``Tx*`03`)4P@E z*`G,PuPps`G,p 0,P`0 53`5p/@ `G05`e#*pp2P!$+%Cp @pP6*PpCP e/%)@ %,)'@,!3 `p! 5@ZG F|( xF|( #pB $z4x$40` `  P 5P `%C8 ` 5`8p  c* ` KEp 4 3-`"-E ` @WxC,   @G* P`83  6%   C* /  43,  ,@ H* @ @3 $+ %@P+  0/  5   3, p   S@  +  ? ` 7+ 0pE@4*`s` %  $ E,P $C` `) P   @E+ 5*`#   pH+0`$ @+07pI* 'P6 P003 $  0    0%0)* c@%@` 0 @@1v+c/#P @@ 1pB@$x(+ (PS*  ) ) %0   G!x  @5p  @!xa$x  !!""`## $$%%&&''` `           ` 3D& QGy0M@ # E / P!$P@@$6zGr1x@~6$r0  pb%z ``$| p%z  p   1x @@@  p PC a0|p1$rE$x p  pp   8| pZSzc )xAx !0@%zp04P0[Ce0!r106x``r1r!P0p _UxP5x  0`0` p% p PpU@O0 ! 3  P PEx  @ 1@0 1 z0T 0  Pp@ `@T @ `T1$Qpp pT pT@ V@pd@#$0U Pt `p% @3@P$ P#  T0 5x   @* p 0T 00 q`Q5x 0 P@DO' $ A0T0#p 7-@4 P5` 4 ` % P!T 0O@ 0p! "p % `" pp`"0`00 0ppȀuO0 Ex p$ pb p$00`P0/Ux   4 `P7P@% $@ p$0`  @pQ& pEx #p$0pH ( (h 0$,0`!$ pE $0@@@ ~p 40A 0 &pB$8`E`p !B @V 4@p$ `% 6p= `@1p=1p=;@p=b p=bp=+0p= 1 p=Pp=p= p=p=p=%`=p=%p=3p=lp= 42yp= @NPb$zx=L*p=%`L`N2f= = * PL9 `3C i @hP%p=p'x5 !#0\.p=uL0x3 4F%xp9p=0P xp=@p= ;Jx p=% P=*0;94  !r 0<p=p= 9( 0  :% =0 =%5 =P% => % ; *p <*=*>@=  P* =;**@' =< 0  @=<<0  00/ =`*x;Fr  =p 0@* = >% 0= 0+ 0 :x P= @4P9 * p=`*x'@; 0<5z 8z :|5r 0<5x<% p0)x@=Jx >!z=E|`:z% *|8z 0Ixp=`* 0  =<|`0* ` 1z  8xpHz `:|5xp<0? * =(p`<;`2 *x=!z  =(1r!`<3%3{6( @1z  pO&x =`02P # 5x 0-%=P!"@4FX$@'9 4 >YJp pqsA)0P0P !* 012 * P* `&p> >P4pI @x0 PPjPpP>`I0x  >>#y Ij` rkI%`=`VP  U0P 0)b` (0X0b 0c0 b0t0$000P 0P00`000`00A0.t P0@ + 3p `^ _%M S#*  @j8a @  1$.T] ,) 0pC/$o@0@ @/@@@/@#h(l /@##/@@C3Rhy @1D @@K 8 P@8XB+@/>@@`@#H@@9 EHG@2@H@D0Ph@#:@@L@@5 I@=@L@/n@#@ @C08/@@/k@@/@@@( @8( #@8`8P@(>!>Z ȯELF3S  @Z Z@8@.shstrtab.'ym=_shndx.nv.info.text._ZN5cudnn6fusion24print_dropout_mask_bpropEPjPfiiiimmmF@)osharedB0reserved.0f,@BZ31gen 4bit_transposeEPKiPKyS4_PhmjQ)S&?relR)aS<N2D}FpEcFdebug_frame anv.callgraphprototyponstant0S)EE &V uO+kdSmem.offset0 .0__nv_RSMEM_0_0_aliasOz`z@G)Q)S%,$__internal_0_$__cuda_sm20_div_u64m%zS&SDF1hF +$7D 7{% H=  }2W! s   AH  ":100H' 03 0 H0x cE"1 @ J x eS$ @|  (( $,0 Rd<#h)hgL&h/lh/fLh <.78L(7`(0)"P8x` 15t%hA* x|1/ $ s$$S  S -  0T!7x"Bu0!9(u9P !P`!p8 J86FP  N89 `89 X j9 H98@X :l?lI Tj5T4 S|_,X00p |DiA{ 9S0y< &y# bz0|?Kx?azsy'p%p`r O$x!# /r?r ?0pr L@?@ |! Hpb r P  `0Er `04 @  tr  `TM Àz06x!"@  3! Tr  3! Wr S6x! fz fz E6x! %! 0%! 9 % ! 6x !03 ! %| pC6x !{ 5 P % ! `H`0 @r$%! %! P$!d#!%!  #!"3! p%! 0%!C#!$!P #!r #! 3! #!K 0# !;3!#!!P$|##E$| ****%P%`* * * * % `%`****%`%`****%`%`**** %!!`%"`&x#q{%e"6x@6$d6x&pxp4( pr@@(0 0p|'1@|*@@ rpb|'P0R r$ `P 'C* P&007&0P @@y$ bEypPPP(p03GY @ #0 x'$|(#@@ 1| P x'0 pP   (x'?y Ay! 0fGI@?x$$;   `  $P!P   )  . 9    ,Y@  @ !@ !]@ ! W  W) Ws|(0       /@+ @ Q P  `x$ P @@ 43pBp `  P P  o  _ , o ,   @Z  /:  @ @_ @ P  @Z  Z/9@ p#&0 p&   ``#&,`@.pP#F F@F"" @ x$HpBd{! 00@$x" "PQ$xQ$x@`!x         `  ` `   `!! ##aGDM1Gy  E /a "D"!% . ! /`!"`! u{0""$r` %  !1x ! !@""p@"P"1x0q$~ q/$|QOr!P"1%|"Tr   d$~`"  p&r@0|" !W%| Er0#" 0 1x@Tr D| !r@ !!1%| "!!@@4  `%` %qx 0#P !@|`"Ȁ @ a/r,PPP5p9% Ey `#@!Z6x!%!!|@ $@  Hpb   @ 3pb  `` "p+@ gOD ``"c 0`PqPPO4 Pd PP%p#q @0#@5`0$ $ epT pp0$p2@t@8-0%0A/p 4 0d `S p$ 0 %!P$@`p%`G 0 (0$p@+p$ @P0%`&0`P0pPDO@P0$ pp'T @@@p'0!$PP`O0p0Ppk"4(4pWO030`& pp%P 0 0P U/0` p%@ 0@00000$`O0% 00%T@`%0U PT % P$@A0 &/@ 05pP$ (`p# $,0$`pH6x`E $ 0p@1  @`  "pB'%0$ 8`b 030 g 40p@ #! &<@Ax  %  @`0= `z 0 bp "pP` @.P 0x:%`Dyb4?r003?p 0pr` `0  6Gy\p @10P} r @pP #sO4 N0Os 4sro PO 1 ? 14 1P1pu/r`14  Pp` pa00 @?P ?314  0@% 3 ,C ay` .y@1SBy. 5+" ?"" l bP ur 0$ a$xƐ?*%P 3 3C `pr"?&   $(p3@x1P Y| 1x1P%xW 1@ x`Cr %x SQ@ROr <@V%x `| 1pxg3Tr@ dy71|  @E%xPe 72P3| PpD ]v H%x@@r$Dr * @** @  ``* 7 @6xrn< @%Ȑ*P p%00|P P@ P Cb0f+mڰ# ( pA@r *  6xx $ 0Dhxnd  p! pI%x &|( p4|#yN$  @*P Pc `0P4 z%xp  p% @0# xwwww 0/EVL1x P %P#  !x @!pDrPP@$x Gxp7xPdr  pPPP%P D|P@%@ @@%@0:x%a$x@00 3r@Tx! Gx `Ar0 ?PeOx 5x 05r 0r $ M0% @9x P:xp%0:rpPr p$ M 'pWxBr`)<0rPPpr4 0@  ux 5xP% @9x0rPp `@r 3@% @ )!r 0r @@Ex011rP0:x  * p" "1r` ps0Ec{!   "/ @  @$~ `#0=Px 2 1x  rB P70x/P1x P# "x06g$~ 1$xpp#y 0 @%| ` H$| 0 p@PP4 Pp p 3~pHr `C&p p 1%|@ =D| s6| r@ 2$| p a%|P@x 0f/|@"1Vx@Vx @ 6  Px`@`% 7x Pp p( PAr @|TDB  GXx 2r0  p 0Ax  P* P( 0@x @" cx2w@2v)1r ` #`Hr 1x 94P r % 0    * p% ` pr "ؐG$xFx0PWr @x $9  Qr@@Fx04  JxP :x%:x(8xUx@*@(P1rA00r?3 @#  %p*  1x % `*P* P'0Pr p '@Ur *% ( @r `p,Ar`( 3x %0%'pUx  (0Yr( 2r@ !@x ` (  ( Tr `9( Ex% p 0P0@1rPA @* % @ M0% %707 @ `( @Exp * p%@%% @ (Tr0`P @r ir* %p`* *`&`h/xTrpp( 0@r(p1x * 9'Px1 * %0 *  @1r P%1x @   ` (@r( P"rDP(Ex +( @Ex  4P/ 1r E( PGxU$x P* 0@x @Tr0 QEx%   #!r Zr `Ex`'   ' Ux@* % (Ex @'9!p4  `(@`@00`  ` (  :x%* `* H *  *'  *  `0 ( 1r`` p @Tr0% * %  ( 1x0p'p Jx ! `Mp!  @x   H$x @Ex  C  % H @0%P@(@ (Yr' * P! 0Ex*@* ( Yrp(1r * 0  ( y Ex% @(0@pYr  T`1x ( E`-@  `  p%7xir( 5xP@p%P0 p *`` 'p$p%0`**% 0%  /P`   % ( Kr  @   `% %P @(Jr (Ex Pp` 0p ' P [&%% 0Ex p 0 pP` % 0 oB 0 ( 0`@5x0  0  0 (@@p@@ @ *0PYr  0( Ex 0p3xPpZx*@<x  `0 ,a0 (0Yr@( %p pa0*P **  ( 1r 0 @ 0@ @ 0! @0*  1rT (00r A@ 0KO @!% %0" .Q Er P 'pP%pZx `*%@J? @ p ppA# Jr0+  !5   p @@ p/PP(  00p0)0 ?"@@x  @  x* 0o4 @ ` ' @Fr ``  s 0@ _Z6x`!O0 @1r * x0  2N/) `& @ `qp 3 %  Er@p0*  P@`p@@3p% 9  ? A@6x@O 1r P`0$x  @ `PP &0@@pP49p(0 0pP Pdr ( "  @p1rp0P`  o% 0% Pp0"  @Er 0 P% P 06x ` ? *@% 00o!x ?Ar @@r @`*p*' @`*`*@( 07'  P(0P 6x0@ *l0 EP0 ` ` 0!`o&@@ @ @@ @` `@ 0p2P &0`@% @* &0? `p@ir0* %   P@ 5 /PKr1|P) *  .o%# @|P(E|p( (00 P  '+E| pE| ( E| @5| 0P  pp @* @* @ @@ r!3P:| @(@@yp! >%0;y< pN{?= P@!=@?!@ @@/ @0N@@@I?@@P@@ @ @ @4  @B@NP@bQ.? !/004 ?06 06@?>?,P4 61r ?p9 @B1xq ? ? ?pp6%f6x@?G=P|0 Ur  9!O`? <2| Y<@?Wx`@Ux? | @`r0>p: R@!@O ?3|9>%? !|P;>Er ;`?%:? @@`A@? Gr< 0=? @r q  ?!| > @3@%?@>* p@@p8  ) 1r1 >9 ??P?@?`` ?*? A(PJ| P*@ @ @) D| @ @1| P@`??F6xp? ``? 0C1r  )!r` A ?I%x 07x=8==P!|P@>"` p>D| 6x =5r p !xP$P%p9@!r 1@ &x @04  `@  @ A@%> @) ?!| 3x @8rp1rU @:r@ ! @5r  @> @ `A?P)?Dr @(x AA ?05X A@!r`?0@8xP!rG0>0% `8x 0@ @@`A?4>p64p1P>5AP@ @2r;@AJ|: \ # Z!| p@$x_ @@['!y@/d@%p\`4 xI `A@  @\?8.\ @#( Li @h @## `K 1$.T@e]0)3peo@0ed@/D@Tue@@/@ ue^ /@<%C/'@ @(} @pH@8/m@@@ h 2T '3"@@;!@ @@cJ  /]@( @C3q@ @ //e@/@@BS H@;@#ȠH@@@"8|@@@"8d@@ 8( p88p&`II@d HELFAS  C d@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver,text._ZN5cudnn6fusion24print_dropout_mask_bpropEPjPfiiiimmmF@)osharedB0reserved.0ocompatf,@BZ31gen 4bit_transposeEPKiPKyS4_PhmjQ)S&?relR)aS<N2D}FpEcFdebug_frame anv.callgraphprototyponstant0^)EE &V uE_pmerc H/H 2*Y 52 f )YH[H [)Y [!S.[&  '    SSmem.offset0 .0__nv_RSMEM_0_0_aliasN1 cap$__internal_0_$__cuda_sm20_div_u64`&XS&Ni 1F  +^7 7{% H= Q } }Q!@u?  kH *"`Y1"6!p0H& 0B@@0 r0V fAh ,< t# x 9S$ @|  (( $,0 R<#Ih)hgLh/,h/_L&h 78L(7`(0)"P8ix` 15%hPt* x| 1 NVIDIA Corp@3`ptxasCuda 1 ilation tools, release 12.9, V.41Build r/@er.35813241_0-arch sm_100 -m 64 *1d/ C  !/ $$$   0T!7\"Bu0!9(|%9fP!PJP  p8 N86J.   .P 9 X J9 H98   %Lh 6$l5l $$h 0T* 5T$ S|X00p DdMa{s"ybws $x l/ | pb OM?py 2'``w t0 pcwr`l{q|wq0@CpS*y &`x /y2@% `r r `r tC vpabx`O{T%|`a$|P@r {p$x@@p@rh r !0$|BPYrCk 0p4 pi/$x0r@p؏| 0؁@S6x  r pb 6x k P$~@ A|3P# / B r P`p 1|0P2Ey C@ @@# ` yw bAP1$r$GI s p|0ـPx`r 0~ 0| BA0@ x01pP|   x ?3ay@ #Ay      !r# F/1/Px`.Z$r  Qo| '$.66xP?I$r Q| 3 `$ %  %   76x /# b) 9 ; #B4$);~4 P`D6x :$r`% 0x0` ` [x```& `:` ` 0.`$ p1$xP `?P PpPp$ |1$x  9p    # r )p   0  @  @ %       `  ,(@&(&)p/p    7  \0 \p <> p p p  p &#! @\!'<p " NGI    P  p7$x    *@    * 0p 4 ! jx  p  P *` 0Zx P  @ ?     d@/   `pDp  % `PGd5(!M01Gy! E /!!9!0'!"!n!! ! @!`! "!p!!%! ! ! / 0 p! 0 `!"!4  ! O  ((!@r0  !4  !!4`"A䏀 P!0!d""Tr P `!fw r r U|$`4`04!"4 `u/|!ʏ$~`!d|`! 0! P f6xAa|`)0U6x@!& $@pb #P@B | 0PPC$~ "*P P@|1" |P3pbP# p 0@|30*T q!4P*40 !` @`Q0Y PpPpEa_-P0aPE%P"@T @%P5p1 pptPW/@$ '00,@T@`OT $`!`P !QD0!0 @%``#pp$(`M00T,0%@ p$ 0@@@+@$`  `& 4p@%0$8@`{$pO%P0$@x 0% @P'p 0`P% `pPP `%%& P&p% @*@0*@@@@@@ @@@@ @@@*@@@ @@ @?W@* %@ o@' p%@0o@0  %  $ `1&@% %p0!|* p 0%pp. 006P! 6PP1rO`%@ # p $0'*& P @@ _@@r %/,0\$01y H 60%  p `  0|`!r7%|@WyG|W$x @H| $|pg3$PE|@ $P"C|`Ey !r #3|0 0$0@$ PE6`4 p4}-j006`$6x6cCqs?p $6N-])@6r2toԐ3``P6 5P34 D) @p3454l -0r230rP6Cp  p)3$ 5QC  / A$~ 0rP&P[e@# PD& 25Tr 0 Q4Dp" pKr 2% P+ 6 7   $ *Q0rD@``ErP A` P08$ `80`0r Gx1r@ @a `0r  h"rg%7p #x8` CpP  `` @r01S1r #%Py8!@gI<AuQ7nI%I; ;`;@97b7/6$r Ss\,0 <1 r0,Y<<<% #0/@ p90$rA` @'r/u'| %Op8 @/'`/ Pp`$p20R6,00'6 0! ,"31.v 1#xm;m_{0lQr 0 PE$~P  ` P $r0s%rp`0r0 p@  ;l;pm;>.`;m1S"yFP&jPC@ay ,;./{ ; DN@M%;@;C%r;$r  @#0r ; Pr 1$T$| u$| n0m  P5 mx"`b/x. P%1p;6 90r ;8':Zr ;*;& 7O8 : p 0|8Hx;;Ex:8T x;```: p;;!r9J%x ( ;E6x`;@   <@8<#0 @; :48p3<@P<)!|  ` ;%P P !P@ ;%0@5r <0@= p4@FP -|@; ; P% %0;`( 1r 5I6x;!r 0Ȁ=`)|6w6%@03rp<)`;3| ;)!|#y> ;%@  p;0|;9;-/`pB!x x p$|60  ` 3r`K` >@!$r"# ArP!` @`11| 0Pp)9PP @P3x0@P0#!aP r"x C!Er#Cr 3x Sr `"p0@4I r&tp* # 2Cx P+`4``` !@N 8D׿{!$  aA"BA@jj(P  9!)0š,0GP, HQ"p, @RR   )9P` 0, 1 -9B82@ @e $ $/\&P ș@8݊o߽w6 *(h+  HAP ( + 0](C@| !   ) @    `   $  `( , 0 4 `8  < @ `D @H L `T @P \ @X `` d `h l  p t x  | P%p`Xv? %:9Q7>~d 0|, * Q+ fd  d  L0 `P``  |GB%B  hD0,h 0)h @VfA@g@H09 9PGZI'$D@ DX @  x @4   ` 6? / D) 8%`   $A$EB6B@ $@| P) w CI 0A, , ,@T+  6d|( | @@0,  8PL  `P  +AlGlH|HAgH@L PWmA@l `L    ( $./Pf 4 "9 6)L(k@np(/p0p,E(`gp#f"p< ~)P /~`h#@h xA n=x%Z4"m*X  ފRc ++NL$'j&9Щ/?(o PgD?HfP0|0-_ &1810 00=vx>=$ H p( d+}1` 2!"'  N ,"n #* 0 3.  @7.hwx 1PB .T] )(cP9@@[#4( @H  X@ @! @^& #@ @/n@@/>@x, /@Ե !<@@s-g "4 @8?@@@ h Q /1@#>! @@L( K @/@[C @C3qػ` @ @/@@p@@)@ # 9@O//n@.@@@#p @U"\8@@0R(p"082Y,@ P@"p)j,@ @@")vq,@ @/;@"`)@,@ @% #V&@ $@*,0@@@(@@@.@@/=@#8 ,L @# @!@_&d /= @.(@!@@X@"@0 +p#9 _ @1@ T @@8( ` p.@88#0KK@x 'Hj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW5smem_E[];kisible .entry,21gen_dropout_mask_4bitEPKiPKyS4_Phmj( .param .u64 .ptrV(_T?_0,^I1^J2^J3^j.4P<5P<6P<7P<8P<9P/32J/10 ) { .reg .p-c%p<3>;b32 %r<26864 %rd<69>; ld%rd10, [.>2];Z2Z15Z3Z16Z4Z17Z5Z18Z6Z19ZF210]; movT3, %ctaid.x; cvtd1, %r3; and417,K-4294967296; setp.ne.sp9,0; @%p1 bra $L__BB0_2i#324T 5GD; di$6,4; mul.lo.sc4; sub817_6458; bra.uni43; "2:Jd26Q&2<<8c'3:,[23[Z21\tZq%95rzz4,95A4:& Q6QyQ] Q$9,_Q8 )50d5; shl5d4; add752,]*47$*51$057-r1s% U\a.to.global56>: 57r29Z259r1 6T96-Q"60+i0{%rP%r98}?d616(1d65!v24A{%r9p100}, [(J/10J1J3-766435501;J Dwidet15;n 02103(19`--845247145`2)?`i2105`s20; xor3106% :#)990#98 S7p2-164053152 "*0#p15083301[4#11'22A6F #11)22%4% #8(112#9!1, 101390424$11zP, 199??2583A893F4A224#12_2%1 # bA-626627285!x0, 842468235@ @2;31276@2G2 3^ Z# y3>]s#2$32@2027808485133@-3083647807A|3$137F8A3 3 :#33(35$#)33 $40A38727695&41@145919779^3|44F3D3443D46% : 94<#4= a4F25325457h4FQ16849E3~7#503D3 #15 H54%6# = 5]7#C 4` 3, 1o #54 4x>2 1 #56 #151%# s5tmh 4, 654, #62F 1o "6 f# / . 6#6#166F71#16 N#16b# # 7@  #1##770 5B77?37:#7# 75#bW>574@B7`#18@4 #18b3%# 8@ 5#3  845B88@ #18b# '#4"188#4469D] 446A89 92!98#41 N#9e200431807$94!%r2; not;5 1p4Op< "*/96`#yClop361B0x4dz0-2!20p! 2! 2 ; 7203)20#=2027w,1f7"20114532461()19225 )2! t ; 7#2w,11*1Y 5773062c'U !  ; 17n#-217w,1J0286331153P'3 2y$823 )df! dz ;d2d W82d9w,1dd9w8B8k3k_2&" 2 _[w+8[ 0 wU w0 (|: 8<7! t |3s9o#2 w,1[ 0 w- w '& l 99 -  #2qw,1_0 w w'2D $ w5m9w5g9w= _98062#9 &% /gtt%0.u8C257]+3+16 1 #32 2 #48 3 "64T 2+80  95#11 bar.sync8S"gtS#p2I@%p2S53m^)11;2W "- 6mads2r p"26$ld !v4c{y2 260 //FD 75: ret; }M' 3'_transpose''c$'!k+'k+'k+' ]+' ]+' ]+' ]+( ]+( ]+()]+1w+ #^, ^<9),3F)43)16 %rs<66jV<1040Z)?111[)A'+h)(g+4g5g>6gs&+)9g>( B'2_++/11h1? m)[<$'I 5* b )5*,5*15**4'5**Y(*5)918_5*$N*{"97*17*17*L8**9&'*V*q>2f:*k%+< ,;h<e-0?1>*c6 )5)*B$R*-00S-6"*  9 )C * );*)$U:*'* 0@  0G*t10*Z#BLN*,*J* *1 (04L*L2K5J4Q* uz1")$10&}/`2*3`!w2220j| {*2*L)#4)23* 4*^5*#15l!D7F6 F Y'i1e! p124(@ &)D*?C* 8B9*2&!w'* i2[!3'1v22!7*w)B*4* '2(&!3|33'f3 'A3%^ V#&r3*7A* '(2*37"&4 %'g R#34!# 1B+ $+# |*E&3*4*3e34q' 39&4 1&g ( #15$^ @E#4-5K* 4*J3$)3I3I3s'5 '58%6A6*)5^)'#5H 5j *&6&>?%r3r ) {){ h)1( {& {k#0%4.6)q4.) n&(# T# 5,56-#1'1*7c&&2E( 4# h)4 77+7%#23*7D45B.) (# # ' 5,#255*85B ) (# h)# J!12"85H#3, - 5*8F5B8"@ )# )# 5)+8V#N! 9469Da 4A56A9: )1)! # * )N6"&"; *!?*9-)4OO#9< "y )K  #0#)#4(& )6); ))207# '+wh)*8* '***)+ >}! );1X8)#%7wi))*2(&(*(&*) *m7'9! )2z)2179* 6w)0 /*0(&9( <8-8CQ* Q* E*wN)0.Q* 8Cr(Q*  38N)Q*4w))Q*4)Q*2 7! Q*  9Q*8w) 0 0**Q* o+ QQ*@Q*@Q* Q*>Q*2w,-E7{* **Q*92W** )B0(!v2u[''9B} ( (1( ^j<C(b+v)0oV _+1:3)H4$H) *, 0-+ 15+0+ +' )0u16)ssss+O#0,6A 7R s  Iy*s*z,y9 G sws -3 +6e J3h q +3 6,f*1033a t561/2 v 5 232!IsdJG2  24 u17- n 5,hCK   N38 r22 N .854t N 8BJN9N-$ NS&9n9N04, m;/"eqp#0Q5elp_(po "*p Z9+ 9 64 p507 p89I91(9 S"X#30l"k3 03"{#30+!S2 SD 3 53! #30 53 O'6$30,&k317O/3&t97-3138 i3> On\ )s1=3E O-31X#31 #32 P $32N3%rsO,  82Ff' R6R 6Rq7R9R z3h9R)333_ 5l$3352K3 N$335  3( N1m #34 3 N )343.N  a*34] ].h s3]3 s131]#34Q 4> 3 R s_  T5t' T3T w5w55 t5f( *35j3  6 ! ~n 2Fn P(61& 966& )k  P pAs :, 3 7A h8 3w7W; c  Tt8]T   S768  SY85s  M S+38'7 8o P 3a6 t   zEOaO 9t! !R 9P419gP51P9E 5 m!696 5 ! U4 :.#40t54 ! U7Lk4U 4$  TtS4& T R4)  TZtl4+ 2}4.  T)41#41 . 9X#3d#410   4 Ps+C!#429C47 >420VU, U#42/34  U0vE#42   U? /42E]U S3%1T/43D+ T RJ  /uD1 T QP  T *434234@p?4402z 90+123 3 72] 2K Blzd Z4z  @< C*44 36G4; '  " ry4 W 4 ! V55 4A ! V8b5 V  ! V4#45 F  U\5[6   U6w6 #46   U@Es 6? m 5L4 6 4  " W71x7t70" W67v7t! V7s7s0G ! V8ws8sII ! VTs8s0J U8r8r0z Uv 4 #49 4 9102R 7 9 479 " sN9#49Xr" XQ9K3X5 Q X5* 5P5P3 5 ! W.50#508<5 ! W!8y#50 5 ! W .5053 #51-1V`  #51 5O 8204 5T 9#51 # Y5.51 5X " X; .52#53_X]" X$0z5  X^" X#0z#52YW! W3Yy3~ 3W!! W!1.~ W 5K! W1y64 y #53S! e584095YZ1 )4 p! 5 '*7Y tR14E#546F # YT2{[Y F {7Xx[z4F " } #55#F " X#54F ! W"_5 W m1! W\*60 S5 +s4k_8819 5 662 # Y6161GY7# Y 633Y # Y53 Xa& X%53Xb& X53.X " X8o4z5X 5 ! W8SX=#58l6!16V'5 8 m98u # u 9T9ZU#ZW9"4 Z'c5ZE'5'Z N # 6,6,46 "Y7f5#60-Y74Y8|654-YA7Y'8| z2'6R4"6 H3276 6 8@j#6131l3[l~E#61 Zge6Zd}H6#3Z/p9Z 9/>6l3 Zk#Z @76q3Zl#Z>9}6vZ : D8YAC|z3" uB0a2K""4Y:256F 45c=9 964Z 9 6 !*65.6@109&.i|6 '-ga8w&?1 5[W $[;6 6 536ie5Z/64s-53#647Z6P$6\536 # Z5?:bk53#65[:3Z6 6 5356YV5(6 5k eC  !1131e} #666T]T!TE6i:'{ ]H6t6t]79\76y6y5 [ h76}6}j[5[M6#67c[8[8U665X[ 8\< 6p@ 1\ !1262)@8S ; T ;; !T9K9Ty 85 !T=a8 6$'V9>4xa}2#69 1@$|9b\?#70[7# [7{ .70#705V7Y #[.70#706[p0-70#70 #71 pl7d !X52428e 7+71T9O7] !TL^ 76  O#716TD170 T #729T7$7R D47T %]$7U 5#25\@7W 7W 5[8[3G7$7Y 5[3rA1[N-737 #1 27 !h104857 #73 #734. !U4P 7r 1 !44U4U 0-!UA U7U 47U;4R7 6MP%#5N7 Df $]7S7 % O56\i7 7 6s /-7 !A2097G#76( #769J6Jo3Ui 6  x66Ui6 Ue79Up7 7F 7 !T7EiJo #775U6 #772/78^ 7 2/8$ 7 4 27 !h419430 7 #784( !U 7 U r !U9Z U ({ !UG9S U (97U>9q8M U r8n !8)80|8j 7 #80br3U$80r8 7C#806yZ8 8 #81 8 !A8388=8#K 8 #819;#81NI3UZH 8h  c#816UZ #81s c#829U8c_8a  ;8 !T*82gJ #825U628T U ;J!UJ)82#83v c8o !U6D,oP57+38_ 5,59/24] 5o8 5  8 !i167772v8#835 3&4 !VJ1   8 !V^8 8 V  !V  6847V #847V4> 8 !5a 8tV #85L3VM 5@ #856V= 8] 6 8!i3355449#86 #86Uu< 8!V= 8  66V= #86)O79V7 8   !X78 8 V 75V=7x V 78VP7x8\ ! 8 5p2 P#88Dz:A7108X #884  !V 8   !V-P  V  !V= #89z 4 #897V= #90P 5 9 !X99 9  9 !V)90x#90@ @9!V=9 9 6#91 9 !y134217799X 9 #919!9 !W? M9n0B#916W@ 9 W ##929W[9 9 W $9 !\9 9 W2W5WC 9 W F#928W3D #93c " 9!3D@90 f,W *:90 !y2684354/8#93D 34)1 !W4D   J92 !W 3 9BU K93 !WD 4 9 W )!WD 5 9 W )5 !W5 6 9 W )6 !W 7 #95GO*!WD8 98 q24 98 !y536870998#96 9 #969)9 !WD : 9  R66WD ; 9 W )79W7 < 9 W 9< !\7 = 9 W )75WD > 9 W )78Wn ? #98f9)81WD@ 9@ {  mM9@ !10737418x89p B #984*B !Xq D 9k8TD !X% % X ,F !XH H 9Y #997XI  10*  /#10b##10y2 ]3] 5"10S #]0* 3100Y 41006]Y2 $10` 41011#10b d)01"10: &k4.P21474ٙ #10j 91"10 -3101o$_&7,3 _ $10r$_z eu4102n #10r$_A3 _p #105r$_0 2 3102:$`0 kp0 3103;`p4dn6x7w#rx#t$6 ]ء W}A nj^D:_]67K_13,MI<8q988Z9 l3^0>E 84Z8fZ*82Z/8347'_"LZ@j0IZ< r7678*20X`A` 3 8(9~9(9!{ZC$9237;k#03G. a9a9a9a9a9a810231030z^ aB+ a 9a9a#~[b$10c "10 }0 !{  }| *10h s$10kcz24print>fpropEPjPfiiiimmm8R4"Z[2L83L8*- 06L8 8W&67'5<75f7f<3|&?<3208U- Ls4U- (?T+ T+\ՉVĉV8@ k 7?c#gec1Ա w 2_ hY3\0cvt 5_9_(1 K N2 16$ p 2!   OGx2j5<3ڈ 2 3 y<-3Mk/d7$d82Z1f  > 2 لka# 'װU  gk"9;.1?  m*2_@#$z"eqg#lpc1, 0f0 33F8 ga f% &f1"4:y07G@%p4)2_b eh 02)%p +f& 92_60^x6 64} 3 &f38738 lln p{ 4 s !124)10vQ|!0 2g 1v 5  252",4jC2 23k1%v 6 !+2{'f6 ?8MA 2  Bkhnl1s 7  2 7 2 7  272\ n 8 2`12ISo 22X k 9 c&f92., y2m22?j", T ` 1@ 23P0 3$ 1  H.3 L"2i # #4#1(2$3$1*%2%2%3%R 3112 2(4(152); 9W*292*5iR yf ? 2,'f1B2-s< D7 . lp: d K 20501M31= NN3232kmu8 44R 3454S34=5c4343444&@ $ 1X 3565Y35P>4 5/353545H P` ^ 3666_36>1 ~a 63646{F ` d 3868e3848<] 8 Y33YD _ j 3:7:k4:4: l4Q^4: V:D 4[ 2o 4;'f2o4;5;2o4B] ;4;5;@ 5=2r 4= 'f2r4=5=2r=4=4=5=E> tZ u 4?8u4??L1 fXu4?BmY9< & 2x 4@8x2x4@B x[x4@5@5@Q: & {  $+'f2{5A5A 5DW5A5A6An8 C~ 5C9C~5CC. 5C5C6C5 D6D 5D'f25EjDo) 4 E h6E3 5  5F 'f25G4B0 6G5G5Gr 1 N  5I#10J5J6Jp8@ J6J6J/ @O  5L'f26MVF' "r6M6M7M /  N3 6N136OFB.  R# a6 Z$!L$!L$!L$!L$!L$!L$!L$&20${&<8$E%f<9R$ $$"V$3U-$cQ$$3U.$%$$U$$Vt!I#d1!j$#z 09$L}1 $93_24j$$ $h|24x$\%y15ў #1$ $ $$$$. <B -%q$ #$#$$= 0 &28}0j6$$2$4B/Z%2524$$$5$4$b 8&8N 4D4 &SP4/4P4647huR4 3K Q8Qc[ q 7% @7GJ313/ "-0O- r &)3_Aw3 5Gg &5ݏ& P l1' (d'D9 ('.'r#*31&30kk rkp )3_[xkMae! [+3G( O k# k# 5Ұߧ (  93_7k5kukN93_9k6k 5l k 3kV 8; 4 4k*41'K3_9:S8nS 3_0 P* )Km T" TG7  46# 5[*46l(#Nzm(43_1׌n61oDm  Аq :4,n# # q55*51 )& qR:)2]193_1 ^qV&)" M 1 5V 3# q5@ q*"& q6q wfo!q 1aq^)) 1( \;Sq [ q2# q66*61I*& q  6q 1Iq10d*2 w T,Z !3C r6:r# r6*'rRXx[ k X  8 v6} 5̥ f 3"nQ8" +$3_ 7By f 9 21: ret; } `II@x HELFAS  C x@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver,text._ZN5cudnn6fusion24print_dropout_mask_bpropEPjPfiiiimmmF@)osharedB0reserved.0ocompatf,@BZ31gen 4bit_transposeEPKiPKyS4_PhmjQ)S&?relR)aS<N2D}FpEcFdebug_frame anv.callgraphprototyponstant0^)EE &V uE_pmerc H/H 2*Y 52 f )YH[H [)Y [!S.[&  '    SSmem.offset0 .0__nv_RSMEM_0_0_aliasN1 cap$__internal_0_$__cuda_sm20_div_u64`&XS&Ni 1F  +^7 7{% H= Q } }Q!@u?  kH *"`Y1"5!@0H& 0C@I r0  fAh ,; t# x 9S$ @|  (( $,0 R<#Ih)hgLh/Dh/fL&hP <(78L(7`(0)"P8ix`4 15t%hPt* x|  NVIDIA Corp6`ptxasCuda 1 ilation tools, release 12.9, V.41Build r/@er.35813241_0-arch sm_120 -m 64 *1xq/S  0/'$$<  0T!7\"Bu0!9(9 |%099fp!PJP =p8 Nr86.p   .P 9 X J9 H98   %Lh 5$l5l $$h 0T* 5T$ S|X00p DdMa{s"ybw s $x l/ |pb OMy"P@t0 "4 `bly00&pcwr Aqd,ð%px/r${!Tr @ @@`r "  v f``qOr P0Tr q|3 7 `@rXPar P#Ckdr  TrpP' Ur `#pP @ P% 4ppx @11t0@x p rpb x `5|0r r 0x 0   P| `O` 0 00P| 0@p` 03Ey:pPy  b!p@p0P$r 04G) x qax p 5| 0x @pP0@ .`2  x ?0@y  Ay0X 2x1$r S?G Q@ p   # `VxV$r LG)  @$ $#I$r P/5f$r 5& %*p* #@**"P C #)i /`0  80x09  @x0f?5|0%0*0 3pP0 /9  Y    ? /  I 0 0?    @ F5|@P?  PP L  ``  /KP99 pp L  F I$.   w   w   w   w   P A  P  P A   WP 5-@ % P*    @P 5   ( ` *     Q    / ` +     /+ `ƀ``/f'3 C  @`@`/"?     @ @.@  :P@ S|PGl%(!M`aGy! E !!! !!+!"!V'! `!!P!!"*!@ !&*!! !! `!` `!!  P `!`! !Ơ  P1r`1x ! P!b! ! !7 `1r P"!r Tr "!Tr!4zr 4 !a/x!k1t!##@E5| 40! !ay ux!xx )Gx `$!  `#B |#r%#p" T | %!p0"65|0/d|P``@|0` %`!"" b@ !$p T0!02%@p! P#P03 Ppd@RPd 09 `#4$ $0d p#$@/P 0`$0PH0ApT p@$ 0p-!%@p$$p d(@ 0" $ ,0 ! P$p`<`+0 `T 0p@0$40D`0`&($8p0 0T <0/pp $   $@'p5`% d Dp@"0 $H0DO 000P T Lp `$P0p@P0p! 0P/$T@)p"O 4X0 4$ \0@ 0 @%`p`d@/$pG |0Ux$ hP 0`p!pl@'@ 3 @@p+P*`WpP#  @  "pB$ P#`# t`d`$# x0! '|G80P cwtb/p//.p"r pP /Gul/  w0w adZr 1 /0rq,, }$03r /x /b\r0!! ` ` | 07rP %`arP#Ȑ P/!Ώ`0 .1r101r0/ p` 4.` 00 pP"3` /   )#y4Ax@3Dy0"w  10r 'A 1p00P00 00 Tr  1$  1  @`0@ 0C2"p2<2" ( //zufy QrN@ iOy` 10_ 2@ x}/1p@@Fr  /Pxr  Er `%0Ȱ2(  Ar! 01r 11$Ur @`% ``Q" Ax Q`$`&x>p5x 0%xW3y0pH%x @r `/%x SQ@xy7pȏr@!pfr  Prp x %xp1r   dgP9%x @r00f ]v0'Prp `f rn<0* 0 `x0*00 0ư* f +mP*P*   * 4  p7 pG 72; @Fx0 Ar* 5 c{@7b0p0x`*% @Pfh0*09 * P*6 4Vndp P xwwww p* 9 p,FVLWr Ax   0% p:x0(Ir`#@!r Ex P`!r 0r #<`&r10!x `Fr`6 )`7x 0 Dr pĐ* `.p`)`5x `5x Grp@r$M-( `;r  Jx' 4pJx 4"rWr 1x8PWr01r$M`  x DDDD09x0r 0 00r `0xp1r:`0 `e"""" ` ` P3P1xx0@xpyp0 S{o & +@< Exx1 Cx !x  C { @#r py `|O ;| Q/| `09 0O%| P 0<$ a$|;cyP``|0 P$ P040pr1 pC| cx`x 2w @9`@ 6x@( 8x  3x0: `Hx x @9@< `P0 "x@ @r3ȏ%pHp1x``1x 407 (0`&Q/rpGx@PPPr HxPEx p%$x qx2v0$00 6x *$@ k"`( @r 3$  *%@?G$x  P @ ExPC 0*  9@ '`@r Bx` 1x7 @r)P 0%0( @x  `1xAx PEx# @P 0px pD PEx @*0!Ax 1xp>$`0@x  0!@'!P! $ *p%% @!"P  pT$x`8x# pBx""P0' Rx@I#@r"``"fx !"@00 ,   * (@1x"?' ix 0( Tx P@@x" @Pp !@  0$`' p #0Px   Py a b 4p7 6!$"0F  % p'`$ P0 @P  %P!5x p@P (0@x 0w$x" 0@' dx! P % O @4@0%" 0!/@@ 5@P  @, `pix@* %* `+!`A4@!!0  %   'pQx!!0 Tx p!H$x!Yx %P4@ % @'! Px $ P1r ( Ex!``0   0  % P6 ",p%0W#  " "@  W$x" `(@r #%`@ "@ %#@@* 000)  # '# '!`@% `@P   'pxx p !0$0'!  ($pEr'% p!I  $@!(@x" !"@ # q` @P% "N p@(#@x PP' Zx   @ @   PH 4# @'p`P  PD* " " %" @ %`@*!!@(@r "| p% Pp%" @p *   %"-@ ` "  % 0 %`%p, @0%|#P-0E p%`0|#P5x#@ @%0`( %p`E p*%# p 0p&| * 0) !|`pP P  @PU$x  0 Px" %" =x P;%|  P* p !!p`p!|  +P p PE$x#` '@ P%`  p'Px`* @%`'"@Px '$`  * %0@  *   !`'$0 !p `*   *!#%P !@!@% 0!|0!%P`` ` 0P5x (  *#   *"   P P P00P  0 `Z$x '@ aOxP @&@  %"@*   %"P@PU$x  ` @P*@A`@p0p`0 ;x%  Ap`xP0`P+P@0%``@ ` `p0*0# "Q @# ""@@@ [ ? %#pP 0`P  @ *8 ` `p@`   !P*!POZ%| ;@@PP@00%! 0|   PP@'"P* P04!p;%|`&5|!  !%!% !| p&@&@p]0$x#_@p `0P ` @ @ U$x @ P0&0Pp``7`p `  ` &`' `@ `?`*@P ?  P &EP/@`*!@`@ _0 E@^!/D,:|* **%P%`  % !`$` @ 0x/J%`0_XP_(  ` ( p@*p`@" (0x @ @@ ` /[ px.`@`'@x`P0P`%@  'P1x p %@ '` _`@0 `'p@P 0P%@#S0@  %$( `86`Ty0F* ) *1  o@ EPe36w30}/=0$sP50x@51*@EP60s { $5Qr`p BTr`2 @/r P4Tr 00 )P$5 5`4p2!| 94 0r 5P5 ` 6 6 " Gep 1D@! P$~ 0r"4 )@ @!$ `h0r 1% f0 `E% P 70 pfE5 E@ 6ErFȠ6C`  &1Er `f66 @hgB`@57@ 7{Dp` 7 ` 8*7 r `pR @P 8 8pt:ΐ9| PPyx1/pI ;Au7nI%I: >:`:{ 46r`.Rsp b.h +g=s5 d.: "s`Gnw1tG+ ʏ$r0bp'r u'|`sOr:1$~`iPp` 1700 ,$3 j71t ::Mm :p:R_{  "p$0/&r 05$rp`IpP"r8040r 04 9`4 @: =::C 01:<:!h/:N{@fbx9!yJsm1`%$*@^9s"$| U%r P Ƞ * CrP/.@; 0:0Q` ;4 4 0 <6r9 >` Ux @9P;;Ix:*x :5r ; &r;( P9:xP) !r09 8Dr @0$ @;6r p:pp:*  `6r:@&r*x:+x P; <0e wwww5rp 8r  0 P;  P; T# ]3)c P9@@[4$(? @Ho 'X@ @#6!|! @_&@6 @/n@@/>@#@V, /@/ @]H# / "4T @8#B@@@ U Q H@#>@5@ @@#Mb;@@/@@4 C31 p` @ @/@@]m@)@z 9@On@.@@@!p?'@/ @"\8@@ R d@ +"0Y,@ %O@&p@ @@#p@@/;@"8,@ % #p`G~ @z '0 A> P0@ `Y 3>Pc00|"# 1p @y q  D'pp or?65t 0pr @ Er   "  `#&~ @q r1? /`N `/x@ !@p`  cD p fGy 0M  # E /%? @ + *@V8Y @ Cp)d, TX%p ,)'#@,p0@Tq, @,#@& / , @`@8"/ p@8XB@, 2-<-D ǔC0 L(3 8 #(8t8P@V 4ELF3S #@3 0 VV@8@ .shstrtab.'ym6_shndx.nv.info.text._ZN5cudnn6fusion21lean_reduction_kernelEPvPfS2_jbRL5osharedN5constant0Q2?relU?debug_frameb aallgraphprototypeaB 0|2 0j 1 fx"& S$@|  (( $40 TA5( )/L" ' !75 `YY /XuT9P9L9 H9 D9 @9 <9 8949,u !99!p%< Ts%%6D |@$v z`pPze #y%bx? @RaS@c|?Kpx ? 16| `-tf|  | pR G1ozh`@r@?6|Pr @0(@r PP( PPr!`Px@0Pr Pp$My!1$rf@e@` Tr00pxp0pF| @x Fr  0@ x1p`0@r czF@ a$xVp/x!0$xr0Wr  Px| %zjPqO|` d p   `%zkpx`@@$xg|pP$x 4 00 p@ z$p`PEypa`xPx!p1xTG @'pPC$~p1|#)~ 1Ey x RpP!rPr`08x4ppr`@PTG px 040PP r G0$zl$r Ɛ0 !pE$x 0 1z Z z [ !/ 1 R AyapCx9Ay G z#@b/0440001v0 fx  q r p `dxW/$Dx 04p7 04 U$ 5 02 T$  @ 0@$0  B @E$#P 0A9 &02 `J  U p8 0#"0%p p `I   "@"W$0Q rE$ 5!0 P9@J *! %#Gp !`а `i/x pp@  @5 ( @C `V$  0 8 4H$ $``0`@ P  6 @P  00p@ rpApdp0 ` V/$r``5x@ `Ez0 p `"?` z # `# 004`0Nd$z m/$x a$xp @| DP0Ix 0~@@1x 1p`z \@pcz ^ E ]pz _3!#!z 0 Ȑ!`6$zf/x  1 E$z ` "| #` %@@| !@x Wx #~# 0Ux0U$z 0x `@:z % 8| B|Bz `P+~ )#|/   6p 5z  )x 3z00 FP`x@@*@P@@Jz `@ Fz @" @O @"00* % `P# 0`P#0 T r   0 EH / #  &z `&z@9| (xPP5|`9x  #|  3$~#   ux  p* #z  p ?`9 E `(@ R/r3Ɛ0|p#% ƀ<` p  p"x?`@0 @! P |@P  #{ u&@!y?@V$v Q/y? e d` `@O6`&p `@ r pRO$tS0`x1$r Px@!PE$x r@!|@Dx)rPEy`y _ Y0 pb r#P  x#@!!#0!P  ;?A H "G$xd r#p`r#`T" p r$ fO r! ! \! 7@#r !`#r P$Ey!`x r pH!##P1|@H  @#r ph r P9rH %#@Ey$"#V#r" `A$x@ Af(y0h #; b r  O&!!V$rƐ5`/@ Qpe r$$Pe! pW#r#H  9|$w r%pW r! X r H$x$$PG r P#r %e#r! #5  $`p/#r 0 P#r#" @Ey% #` 1pR0Ey"fb| aO$x $Ph!2 F$r52 58p% @13[f3 b$ N " r%%p!ȏpe r"" Pp"@E r$ @@& *' A#r  i#r   ##% w r Z r ' i#rp  p6 0A#r  &p@ r0|0p4 `PEy  ` 4Dx pE! &ra@6 @D @%@ pF r 5 WO r!@W rP#r @ 9 P& `  `PEy0fb$~  0%0 pTr  &y0%'/ 7!PƐ 06 PƠ`!P!"& `fO r * ' Br@6P #r : )4Đp Ey  % x 6rP: p4 u! `E 054r$U rpa '   / `+@1r       p r o$t ?n%3~ 0Ar 8p@  b "pR U r 0u/ r  9 6 P$~ 1 @z #'1 A>>  ``Y 3>0d01| 1! @p @y q  D'p! r? 6$r sr! Erp 4` p  r1?` /`N p/$P! 0!P fp`  RD 1 G`!M  # E C%? @  @V8Y @; )p), T#X ,)'#@,$p0@Tq, @,#@& / ! #`@(8"/ p@8XB@2-<-D(ǔC0 (3 8 #(8t8P@0-Z 8ELF3S  p7@3Z Z@8@.shstrtab.'ym6_shndx.nv.info.text._ZN5cudnn6fusion21lean_reduction_kernelEPvPfS2_jbRL5osharedN<reserved.0.rel7OrelaN7debug_frame[ anv.callgraphprototyponstant0N1ISmem.offset0, .0__nv_RSMEM_0_0_alias0W\}2 W! sD   `>Efa"( 0 W$ @| (( 0,0 lR8<3 !/b  ' !7T" uXuT9P9L9 H9 D9 @9 <9 894909,9(%!999 !P'bpY :Y6 SD$5A{Mbz 5z p |@pP x ?y^%|?g@ S@x ?  9|06|`>0&pR GPCprRz?ƏrQrOr pr1?@xl@@rb?SMSyebycz P 4  a$r @6xFTr 0S{p" Dp ~ @Dx `F`C| " Px0P`)|0@x0@p` Ur@r! H !x `O| " x0px| 0@%|r @6| V%|@szpAx@bO#|`xEy pp r@p` Px0 1xG Xx&@@@$~7$x p6g$~@Pr P!8W6|PQEy`#x !Ex `!r@@x`P0703GP@ 7 _Ey$`$ fG4Pcz0| `@r@ 1|p"3$rPP|0!P|?!! @/T Ay2x0$Ay @   O#`p xBp4PP S6x E-6$ E5 fp"`fO rP6Pb@@ ȏ @6`$s6x 0E  $@53o74xO`6$6x PPP $ p /0J p5bPd$Puu p@Ay/%0 B4 uO  ʠ! p!4X 0  #0 Ȁ@PpC6x 0H r6 f`00@p4 rO 04  a$Pc$+`*p! 0PP @@ 1@H`E6x P20`P0@0O0"`g P 3p0Apdp PP `P% `5| 0$r`@| 0 OP P?P$ 4A 0 rp czP@ ,    \ PpP #r@ Td{@9zV| `d| a$ra0eO6xP!| 1Px @ 0~ 11x 1T|@|0 P|   1    0 T  - 1$x0 0 π 0 80 =1xQ %pO x ` f6xd| `P&PY|PS  *   ` `Y| '  ` #~ `  E| `7 T| `P PX$x T| @  0 60 ` `+~ (! b|00 @x  * 4@0*0'0p rO|ps@ p5 @0"* % p#  `P#0 P 0 `'w  g G$` 0 @p M,W$rG$rE| `5|0` `ux @ @4 ` % 0* 0# 0PS| 0`#  ;# `pp & (  p` `L@N lƐ - p"x? # |"p@@@S{ 7 @yK N` P 11y0houG `@1 5x@pR P3G@x!? @S|c @r#? E~@tr 05t30 !| 0@x@)~Ex 40y( 4 P% P00ppb r@ xd r p!!q!@!0 ;?A H @$xP1 Tb4 "p rpQ rqu r ԰6W!U r 0p#r x Ey`&r (0T!p PpP#r p @5 @g r d r u/ r `  xjP6$~0s 0T r PfO$~00r@01roP  pPW!F$rP408`H ;$r@76Pv rf r j r '`0U r hy0@#r0 u#r r xEy@b bP P  !" pU!"v ( PYO5t E ( b# @"P4 f/# p0eO r0&*'PP&`6 00' G r0W r  ' P#rQ/#r  6  dGX X6r'r`r?6r$ !~ 0Ty` p $ % " pG!U!5p p8 Tp0@W rZ r*%vO #r P#r & p2#rp  `40i$~Tx 0P4@ar % ` O@ ȐE!  *   @& ';  0r 13Gd @ 4 0 ` @Dx`p   &  $  `! / 6 ! &01 *'`O`` Π `@ r 1x$?px$ ` pʏr#8@ "p$ "3| Er P"   u r  B r2 r0İ01|P11>0P1 #>0001|(10%P1p @y` q @'pp'G %6p Yr?@pr @ ErȐ`p qr1?@ !O} @x !"p`& DPKM`6Gy0E /@c @U@  #,~ +T#.@h ,)p3@(t. p0d@\qc @ # 2xT !@@ ( @2T+P//TC#1 1 w"@ @ B@i X7 q@8( ` ppp88 `@d GHELFAS FC? d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver%text._ZN5cudnn6fusion21lean_reduction_kernelEPvPfS2_jbRL5osharedN@% -0 !3$r Jr '0  P0Rr) Dr 5%!0(+P%@#r(6 p @@%@00 0(0 % p@$x'&' /r)&)`( + + vr-&- P$x0`Or`$H@ @` AGdAy8r !` #0`X?@cxР!r` 0dPEx ` o$ p0x d6| 0 "  X G@`"B@`"  6cP%0c G @r#! CcM +@=d{tn|Fr#B$r ox  p!r1 "@PEx0P(~ U|"@7|  Ax@ 3$~@ C|  P 9@@0xT|@ 7x" p` %@@S|@6  %  F| "`/x$$u% '"@X$xPE| @%O| p*%u/|$03|$p#"  `#"0@H rP 0 G(6G,4a"x #a |p @S{ EE|#pOy`W x## sy "yu!,p/6x 0uc b#` Pur  6~&@P1t( !r*  `/$|&&0 0r$0p )~) 4|"0Ty` bp$`% 00! b@@pR Fy&ey'"p$x&)?&@py+"p" ro x Pe r% b x%  @!1`Ap ;?A H V!%@W!P* x @E ,04(0sp$p` r)*f rypx r- J r'*'I$~'6ypbE#r (0`/#r)(;)V1t ! `#r*(a*0@#r(- (Wr''&Ay("0 $ r++ d r%pƏ#r&*p +O0E x@P'PW rP n`#r))ppt rp/#r  V#r$A|P $   x/6 %W!Qy",f$r%0%+ 8,Ey '"r'*gr"`t/!-`!`fb$r'xď --T%+p'-b`%+0fΏ"0 &uO r(('f r g rZ r' 0% 9% $$ &0V r/p` ))0G r W r% "z#r"( ) $pPGuT 0 EGuP `&rr   $ P 5|##p0"`shr00%&#P0&`@ @P "" %$"P0%"  &"@ 5" 6%W r*&&% P&p/ #r %9 5@1$r``TGu Y| %&#0xv r/p   f" P/"";"";Guh40  %##0 : `%@`" 9!`6@W ` `@ `4$# &#P &p '`$0#``0r!+C{`bs g|pH$xp`qb r0@ `  ```"a%x@pxd rx-a |F r@ Q rpi r6C|S| @B|!#>@  #> t   @yq  0'pP3G (.sOr 61tPqr|0 Er  P2  Pqr1? / P{  !!x$! $p44 DMP6GyPE %0P4αj7?mݰ, {  A "R@} P  )T0B 0$4 P 8P*P0HB6B@X,(@xCZ+s|$H9,A0`O"P7%B L(BGZ4((|XH,|B282P  @   /33 4Q #7 3 "4'5&@3$Z4"m*X  ފRc ++NL$'j42x3&7x3LF3 / + 0 35=P5 7777077 - 3 D)< @]@ <5 `5R.X)h ,)Xc@9@@[d""(n  @ ?'@G @@d @_JT  @  @ @ / _ \4p@@8/@ ( @Q:"TC11 PP` @ <J @y ,v %C V(  _@@ 4@@@q@_[@1p>xo@ @@@@ ;ppE _@@(@E q8(` pp@!88 PN@x THj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW5smem_E[];kisible .entry,21lean_reduction_kernelEPvPfS2_jb( .param .u64 .ptr^0_\?_0,fQ1fR2fR3fR4f/3275XD6XD7XD8XD9XD191Y:Y:Y:uE1vE1wt17 ) { .reg .p s%p<42>;b16 %rs<332 %r<341fUf<255b64 %rd<10:2 ld|%rd21, [7.];b2b92b3b93b4b94b/r1;5b7b97b:8b8b99b9b9/10c:/11c:1u/30c: vc:1w5c:x6c:u6]; mov$2, %ctaid.x; cvt0d1,[)3220yGtEmul.wideF>%r1$3,l @$6,ARadd.s&4,!d\| 9}]5#d27; setp.eq}p  rd*0 1102@%p1 bra $L__BB0_2`a.to.global2>d24&3 :$lo d53M#d0; shl3S$ E34; :7]14"ltp38!2!s56; andP2, 31rN55t72@67l43F$13s4-5, GYK-K ZH1, 94x4641@1, -$ub5 NM >1S]-258#39/9, 34?9O *40717!4=126o4'Np3}W# 512i7z| K1251I6, 82#43 7$149ts# kdN3#44 4io1hC F8|I2048+72I7, -25%dy52:730"4:g|'p3!:@7*4:3min 253#18$gpEPB.2r14&64Y:"7g53c543D0.I@%p51o9s# d4'adp4N5#15!9X/511/b`8, 16;jcp.async.cgm! [F ], @d45]3M*;8+ 9690s6s 1- 2$ 5h &55' ( 75/6/53$528*53#11F9T8; or]7p5;3160(21OCselp ?!p9-10Q8i2$ 5  k$16k 666666/ 66&5163 H  1)8z #33 .+16999d #33 : D 5170: 3" t-70 g 5D,Z=22.D1] 334G \ 7\ "17DF;1753C6(7-64A8A+ A$L2, 9#323+ 79s6#15_ 1P 5$33 -5 $6 %*d67/8743264"87 "$3366$ u 4329*33u6 d(5 i43286*33A& &68B 98 .57</179 fb3#22[105 $88 :188%< P $ 3b1 5V8V@ # e 4AD, 76: # 3q2 R 2 *0, 2 `6` ~!92b |a 5{1 2192{<-13<& =5127 #19K, 10\ $93 /96 $9346 9J5=77 9>?200?200-17=A21 T8:24: #21818P 8Y8&#-57Y$d8n3#21S1#2143201w71jq $207Y1 $218/8 /7p R7h5/78 0^Y/79Y ^W9 2 99# 8KW93W9WW%/80 A`1/81Y k ^W2 (94W[# : 9 O30728`W8Y` h  h 9#*5:ommit_group$wa @bar.{HI o"22h 2N#554Q3e$ldO !v4{hl]2 126}""f2o2 9F 556sb N[%r9{589 [;UD@4 U U} r3z 2373@ :9D4}_m#w3+452/338}1ls+ s4W/2444T:2$43Vcax.ftz( %f&eq#p)`0fFF80C2 30f0 5" k f1M #f1 '0f3FB8AA3B; ex2.approT3gMf&f1l631:"f1` 2i (8,C7; fma.rn9#f1  a-9a#8 a{3aa1a8 a3da4a3a?*f1U#236a5a3a 5;& o4'10o5\4X55Y" 53S*95S QiWN PsP8PGf 3r&- f39fL'13)33O53C2G(13f% +`4`Z~)13#%.243.6``3+!fa$>249`8`C$bK4` i/26J 6FJ5! 4r26J6J6J( 6J6J( 6.6 6M6M3,fM6M} 5MX' 44 Tf`1 D )35Mu6M4Cb "5M57`KZ5" f".25M2 7`0#15!`3D `4#!Z*15Q"6MQ` `2"7M7F& M6"$M7M7M Y7N7N&7N7|!N 7N7NW -gOq3P2PO $3~'P2A b%'8Wg'g67RSR6C I66S6pa [4a T6a a*#f#.2667u29c1ta TC#av a 8' q  #ne$2!& 09e6 + oR P)&28 # k7k2 722$28886 sB 83838U3 8383g )4242 V47 76 '7 HVf  7 4x)39(L8L}^+ L - M7- M *17/ #27ib8/ Nbl*18&bO8`8Ob>8&b{bPb#18D@ 8 9 EV& G29129a+&29L9I9I9*#295S9*S j472#cp  @^ "44 + UQh 'r4gT 9 9 4\2w+v0f9"9^ 9 9ab  9 9 9b bK$963f19>b bb `<$b b9  /303R!,303"r3"#30.30&30 Xn#04>"#30m7 7V6V5 Bp )( G4 G4Z#20\s'a-20( 2kVf\&f8f20( Y2 o#C  29o.#b 8 #21 o7#b1 b=9 b2Lb i1 ^9f21 2Nb2b b?f21 R-648:/F s8FCD:1sAGpPg05@?rcp125 1 T,*pl3' n1n! 1@!51G!!)34m !r3| #10' vtbbf16x2"r3E3 4 "r31!r3|Z@1Zubra.uniA5W"'50h"r3 7?3r31.1Y9% Y%)%hB/10E:0b#p3P+> M* rT"D9/x%P"rd  d BC910'#K $st|C!v2$=:9){139}8|=rh&09p & B c]Z $N/lg"8"M$ 2317,;Z >9r=D pf 10=*i4(955:'P1+E#'4 e6: ret; } `@;@x PFHELFAS  8EC> x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver%text._ZN5cudnn6fusion21lean_reduction_kernelEPvPfS2_jbRL5osharedN @0>    py@   O@ 6r`aƏ|0"@ " !2ud#r1? / B  0 #" $ 4xDMP`6GyE /q !`; 7o|o]fu}/+g=  q Ap"B3@L :!P  )0$0R^,0 0 0AOpAz A ( XXP  xFB%BH9,D8d ,A 4R" P@LH A0 -, @ b998L? T& (h4 @<o @B,p 8A PQ#04 +  l" 2 VBA ZZ -/@V~A^P  &* ***N $ .HD D D $ @b   B"B) B"B  TT P jJ6 (   @   @`   @8 #@ ")SGZb X 0(D1 DB <XX 0bp82P  DAA $ (@((( /P2323 ) wY73'3)t2$Z4"m*X  ފRc ++NL$'j12f42,#.// / L `2?=26*666066 -3 7d @]@ t4 4rd X)h ,)Xc@9@@[d/7 @ O@G @@d @_J` @ @ @ _ 43p@@8$@ ( @Q!#TC#/ 1 P;`@ <j@y09(p`a*1  #; /,_@ "@@ (q@@_[@1=xo@@ hD(0@p8@ _@@(@ E q8(` p@!88 PUЛ@&&P ELF3S  @PP@8@.shstrtab.'ym>_shndx.nv.info.text._ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi128EEEvPKvS3_PvjEbS4_a[Doshared]Dconstant0`A?reldN/64EZ\_%c1G[ ] `!d+vZ_%cdebug_framep aallgraphprototype%oaction2! `000Z0\%!_W[ ]!d`+Z\%c!_ :V?RQR}2  @ v I x  g$ % v00C# @| (( $40 IRA$8p+pDp4pxp)EL#Ph1/Xs 0 0J 0  0Tx!75 `xxV%!9h9`uPuL9H9D9 @9 <9 89 49 09,9(99 99`9!0"#0#P#%b0P b@b@d Ss$%6tH$@. 8D@$v_yy'b ztpP$vsb0z F @0uS$4 `p%yP/ s;r @rpPp#y !spCtap@Rq S@$zlyixynpp\ACoSp*y0Ax` `p/%yP* yA@0r 0(@U t dx m)l pb y0s$zyfp$x 7! Py@c{l af.xFepfrF dx q 100x  Txrq0Ȑ0Q$xr0r0xqqAr00@ r @pRpT$xrpa@EIq@Ax$00p]rIpr "<@$x]0]`@\yz>2&`x o P`P@0%m"rH%dcx( ;x.,206`:8><B@*& " 6 F  F@$x^dLIrmHm`Txns?Oxnn nnR @ xn"pbcG p{ b.$vJ`@$zm0xHH(oo1x{zP@z@y !r_pgzc !xHpHpYxgo (pWxfo@ %zxy_z`Wxeo` @s@xpA?0xpYx 7iHTx %P4hi@px@?Pxa/sD v$r0a/$r)@pO$z))P'r)``p'z)1$r@#) !v J@P"p`@0 5))P00 1)P 3`s0)`Π*d. P4\0*0u$x `4v @ P I),@QO$rI I PIPDrzP`'rJd)JzP0rJPT$JJ500P pPPUzgAxvPrvv@!pPrw"0xq@m kr Yrm4kk* 0xm0zy7xdPDrH%HHP1z0@@$xm@3y0%jP4H `1xV_`1x  ?2IrVxp4VPa%|P@v@$| VzZ@z[P|H 0!@@|I25|TH @ "y  |UI0*PT0%HH00%QU0P%LT *%PPb0XVEx__4aV@ $Xs x`X 0xZX ziepdB r`@@z`XaPB rZ  zaYP ZxXX0phpp!`  Psk!C3A# q |`a/ #0a$rqaO 3HB@u|`@  3IC@@`$J@P%`@`$K@ @ Lfu9ME*N *O P@P4QGP%R &S !0jJ@*xtjJ0z p0j`` x|`P1jHP` |b|0P@aB||P⏐PPJ E|||P!rc0J0JP}P@ b@J @j|\ @J T r_n` CS"yS{ ,4;xHpG `;xXe;xTgh0&Pf *Le0oPu(;x`gpNrH540 T>rI989J=<4KA@"/P`0zq  ppqWp!G @@y" @ !Gy H EAP $v@#0  x9q @z404Gࣰ9@04>?>07<762z5P#D 5?CB t/>r=;:Ơ@9P,4P $4< P%4EP"/P4@ @ p044%$@95)(96-,47100/@ 4 Q%:x)@5x$Ir)tp"$$` T>r./.4,'&P%P#$~ 4-+* 04/32]GP) ,$P$$, /P%$E/OP$P+4$9%9&4'! PE0 $$ 0 PP.PP*P44PP4 04#"PP,PP$ /P4EE``p 4 >r   4@E  $  #M)OqP7t>r 00 7 Y>r 4 P*M @;M0`P ! E@Fo$J$ E$$  #$J$$4EP" $ .vF#$ ##$ $8z>J$@  $!y `$#%J0$$"8*J$@%J#p* J %##%Fuh )>%b$@$E$zJ#@$7J#F{#pbrGP$@J%# %GP$5 d  ʐ$"_$ #f/x $0    `6yL#h#p 0(Brp#%##G`#$G@  P2rD$b r`5x$GPDr@(CD#0" 1$x@&@"! `"  @" "0# 1xD%DpCCp!? `"*AE`" AA`"4AA 5xA`"@0# 0p"p"`"?`"*`"7@@1xMLPF$r*P":p'Jx9@P" @Wx8@@ @%zJJL !P"7 @$xBGpph9$x<Jx&"'&"&"+'"*++"1''+&")+'"&v'#$P+ 0v$0' :z""'++ 0 ;+":+"+" ` 0 )"G @"%`:xI"`p9$+' "-0$0p-p` &G DP L`p' 0x&&C0pL5x=&0 $$+ %== `"$4+H''TrHI P1x$`?`4$$?(%$$Z`T'+""5x+@%*'"'pIpI, !T$x'?p0z%K %%: 4$':p 8z'"P"@r"0x$?$ Er%"P5x::0x(K'%;$ %N*0"ʀ4%NJP*7&N(`@%|$%H"' "*2$" 3%"'""Ȑ!4$2! &"$D|P2!D|Q3! 5|0P 5y,PPz"|1Q0%400@(51 Ey00@uh/y44"@:0pDrO! =1 @%2 @*3 405*6 &7 ! 0;_!F PF F`! R!F!/ %$B0  %0@ %,94$0P`4$2@ %08009$.`%,+0 ` ``` `"`@00$@00`&@ux** Gr*A P0   */ %/%CƠ~&DxD@ *004D)@ 5xp%GG C2 %0xG%CCp$@@p GxGGTs00zLLCE zC00 GL3P/p>  `0*% p!0 /!` &,~`ey`a(y?&  %  % % f>r!/@DrGF 0hď>rF>r/OG` P  `&G!0P - 0F>rP,7PKPExCC  `[/>rP p/@  pG@@ !@@0 a =O===0=0=0==0=0=0=0=0= =0===0=p=p=0==0==0==0==0=0=0= == < ===0=0= ==`= @0=  `< @` =  p! @p =0  = = = == ====5=== ==@=`=0===p8H<p=R==0=`====PI=q=P=0=P====@I< >=c= ==P=3`===0=`=0=`=`=p< @;p0 @;``<=`=pp0@ = =1 0 = 0;={==;====P===@==;p?<=b= ==0=%D u  @Ri ^ 01cCWvS>xTu @ kpS$NS p0 q@/]@.@@/-@@!@-t@@@"@nT @ @@U8 @8X!BH@/@.@/@.@/@.x!@2VcM@S @G!H@L X@@ `(G@@C/8/@@/@@/Z@@ @8( #@8`8P@&&V ELF3S  @VV@8@.shstrtab.'ym>_shndx.nv.info.text._ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi128EEEvPKvS3_PvjEbS4_a[Doshared]Dconstant0`A?reldN/64EZ\_%c1G[ ] `!d+vZ_%cdebug_framep aallgraphprototype%oaction2! `000Z0\%!_W[ ]!d`+Z\%c!_ :V?RQR}2  @ v I x  g$ %" v00C# @| (( $40 IRA$8p+pDp4pxp)EL#Ph1/Ps 0 0J 0  0Tx!75 `xxV%!9h9`9X%@uL9H9D9 @9 <9 89 49 09,9(99 99`9!0"#0#P#%apPp a@a@ d Ss$%6tH$@. 8D@$v_yy'b ztpP$vsb0z F @0uS$4 `p%yP/ s;r @rpPp#y !spCtap@Rq S@$zlyixynpp\pS%oSp*y0Ax` `p/%yP* yA@0r 0(@U t dx m)l pb y0s$zyfp$x 7! Py@c{l af.xFepfrF dx q 100x  Txrq0Ȑ0Q$xr0r0xqqAr00@ r @pRpT$xrpa@EIq@Ax$00p]rIpr "<@$x]0]`@\yz>2&`x o P`P@0%m"rH%dcx( ;x.,206`:8><B@*& " 6 F  F@$x^dLIrmHm`Txns?Oxnn nnR @ xn"pbcG p{ b.$vJ`@$zm0xHH(oo1x{zP@z@y !r_pgzc !xHpHpYxgo (pWxfo@ %zxy_z`Wxeo` @s@xpA?0xpYx 7iHTx %P4hi@px@?Pxa/sD v$r0a/$r)@pO$z))P'r)``p'z)1$r@#) !v J@P"p`@0 5))P00 1)P 3`s0)`Π*d. P4\0*0u$x `4v @ P I),@QO$rI I PIPDrzP`'rJd)JzP0rJPT$JJ500P pPPUzgAxvPrvv@!pPrw"0xq@m kr Yrm4kk* 0xm0zy7xdPDrH%HHP1z0@@$xm@3y0%jP4H `1xV_`1x  ?2IrVxp4VPa%|P@v@$| VzZ@z[P|H 0!@@|I25|TH @ "y  |UI0*PT0%HH00%QU0P%LT *%PPb0XVEx__4aV@ $Xs x`X 0xZX ziepdB r`@@z`XaPB rZ  zaYP ZxXX0phpp!`  Psk!C3A# q |`a/ #0a$rqaO 3HB@u|`@  3IC@@`$J@P%`@`$K@ @ Lfu9ME*N *O P@P4QGP%R &S !0jJ@*xtjJ0z p0j`` x|`P1jHP` |b|0P@aB||P⏐PPJ E|||P!rc0J0JP}P@ b@J @j|\ @J T r_n` CS"yS{ ,4;xHpG `;xXe;xTgh0&Pf *Le0oPu(;x`gNrH540 T>rI989J=<4KA@"/P`0zq  ppqWp!G @@y" @ !Gy H EAP $v@#0  x9q @z404Gࣰ9@04>?>07<762z5P#D 5?CB t/>r=;:Ơ@9P,4P $4< P%4EP"/P4@ @ p044%$@95)(96-,47100/@ 4 Q%:x)@5x$Ir)tp"$$` T>r./.4,'&P%P#$~ 4-+* 04/32]GP) ,$P$$, /P%$E/OP$P+4$9%9&4'! PE0 $$ 0 PP.PP*P44PP4 04#"PP,PP$ /P4EE``p 4 >r   4@E  $  #M)OqP7t>r 00 7 Y>r 4 P*M @;M0`P ! E@Fo$J$ E$$  #$J$$4EP" $ .vF# $6$8z>J#0 $P ##!%J0$$"8*J$@%J#p* J %##%F%b "v/)> `r6 $ 5zJ#P$8J$6{#"#%@$0J%$0 8x Eafx#" # $Y/x $E r#$x  `6yL#hp` ``#7ex0#`#$@$x @2rD$$`5x?PDr8xCD#0" 1$x@&@"! `"  @" "0# 1xD%DpCCp9?$?`"*AE`" AA`"4AA 5xA`"@0# 0p"p"(p" !?0"1xML@R$x@@@"&r*!p0zJJ`LPEx9@`"48@@ %%0K @0s7"f.0dZx&!'{&!&!+'!!++0!1''+&!*+'!'@+ !v ( :z!!&++0 ;+!:+!+!0*d. 4)!0!%0:xI!P`9(+'!-0(0`-`Dr-'LP5x'$%!r(@- !x:p*'I0r(+LPE$x5x$:@+Dr(+0xB_P"4((p8--TrHI PP (K@%WrI' P$xH4PhPtC &x<(=*X-+"5x==0p%+@%p0z--"!@,?4?@)%00x'?!-"0Dr':pp&:: ?6$x;0"*$0"*G*0"0"@"0"4%GJp* &G0#@%|$%@H0" '&0"*$$0" %%0"'0"42$!0"3?0"Ty$$!!%0200 5y,2 x|13@E|400`(51 Ey00@u(/y44b :0 5x**0 =$P!4=&P! =% PG0P!C=-# $$`Os=."@p r$E#dv4% 0*0$ p0*0% 0! /0!0 &,(@0 `ey(u(y( %(`(`%(`%(`f>r !/@Dr)F phď>rF>r0/O`@- /&)!0VO>r `- pF>rP,P [PGxCCp @@ `@[o>rP@ p/@P  p@)@@F@!@/O@@@@0@@ @-Q=O===0=0=0=`=0=0=0==0= =0==`=0=p=p=0==0==0==0==0=0=0= ==@p==0=0=0= ==`= `=  < @` `=  p@p =0  = = = == ==p==`6=== ==@==0===8H`==R==0=3 A====PI=q=P=0=P====@I`=>=c@$= ==P=c==<0=0=0===@===`= <=@ <@ = 0<=@ = =p p;===0<=== =P==0===@P<=P@= ==@0=.%K;v[ @Sj _ 01#DWvT>xTv @ k#pT$NT/0 qd@/]@.@@/-@@!@-u@@@"@nU @ @@V8W @8X!BI@/@.@/@.@/@.x!@2VdO@S @GHH@L P@@ 4 .Co8/@@/@@/Z@@ @8( #@8`8P@H)B)Z xELF3S  `@ Z Z@8@.shstrtab.'ym>_shndx.nv.info.text._ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi128EEEvPKvS3_PvjEbS4_a[Doshared]Kreserved.0.rel*FOrela]FX/64EZ\[\W1G[ ]\ ]X kZ[\debug_frame anv.callgraphprototyponstant0D` _/`!S  3 Smem.offset0 .0__nv_RSMEM_0_0_alias  I ?R8 Q RY }2P WB! sq   `` $   g& O 00 C x  =bW$ @| (( 0,0 R<#ph)hg&th/$h/fF8/ P S   0  0* 0Tx!7"rup!9`9X%0uL9H9D9 @9 <9 89 49 09,9(9$9 d99!Ps$%0%&x x6Nc0 @`qH qH  S|l50 D09A{Yp{mSyl'z0z0p$~u&@00{00C pb rUppPOBS@C0f a%F ʏ up P`a$|n0"Oyb>2%E rC%3 S F Tx 0 ppP/ 2S& 0a" " 0)nb$~v1x$|%P Pa @ #yM b00x?f vuhab |@@pR 06y `bxH x(P;x.6  206`4:8><B`@`*&  1xP Yf/x `"` @@rB(  0H H x x  ``1x$ 6x@0x g  p@@3xo` #x@7I 1xF@$0 1P@$xrIH`r F! K x@s @ 4  rlr`Txts %0 Pxs$st t0 @$  e  @(t02rL ce9 ds 9xFProLo`#fptd`p$xdcW$xPrcc37#x0@r < `upPS6xqu?`@xqq`pFqb2qxCpbGL~Cc{)ab}M@ !P@x?1PYxLL0(locz`F Txip a$xLPL0Vxhp@ b0Yxgp` 7kLPfzp9$xPsMM_aN$rfE cz9x F C6xjkRp6xJM.PsKJ !$rJpaO$rOKpuȏ$|OO 'rNKOJ4ON)@a/$rN@O@`$|KN0)` K@p` 06 K6OO# 00 aO"3C|P1%~zP) PsM4 p O(L  0|opx "?@$r {0Wx  0%|z0 Tx D|a  0gb.$r)  a{@a@ p/$xMms   M0#tHxmM` 0P7mmp1xH`x`@rNOKP`Q N T'rKKQPJ@"o`WrJJopT'|KK0ƀ)JJPK`@$~NO0N  o Jƀ N@p` TrL0lPl$NN(KKPrxIx ``AryIP6@@K#3F|KK`Ux px?0r`op4p4Vf@P P@x ?1`TrVzP4VaP 0|@x`%00|1 @|2`"|H I`  %TH @ 0y` |UI0*PT0%HH00%QU0P%LT *%PPb0X0V4]V3x\Xr $Xuu 6xZXs6xXXr 0P |k&1pdH6xffB r\P@@|\`@]B rZ  A|]@ 0`! B |j Psmu!C3A# \P a/ #0a$r@]p 3HB@u|\ @  3IC@W$r@`$J@ 5H\@`$K@I@ Lf3ME$N $O 4PF@4QG %R &S ! @l\/JH@!x tlHp*zAp``@x|\010lHP"^|D$r`|L|P/PRH %||!r_A #rMO$r}@LP @l^@H @l|| AH @rfq DS"yS{ ;xHrq;xXp!( %Tih%Phz;xg0Lp@uh.;x\iNrH5 @Y>rI989J=<4KA@S/G` 0 $e@Wp#G P@yD@" #Gy` H EA #@0%MSG)pPS6x9e01|41OࣰT>r>?>@9P7<76 2|5P!D0 T>r?CB />r=;:/P!9P4P P$4< -PF6x4G /`#P@$4-` @4  44%$95)(96-,4710@#@$D4 @`)`T>r./.`%$4,'& p))v$+*CO7-+*02|%0$~T>r/32 p)0$pp$$, p&$G//p$p+4$! p9%9&4'pUp@$D$ pp4pT>r#" pp*p70;|p4 p#pp  03GG`@ ` P4 5 4 `U` 0#M);6xep4 p9 4 @7 0;|p4  p`#M Fyp;M0  TGy  &L&G&mL&G&(@L &$&6y+ &"p&%L @&&//&L&p(|@&"0" L% &@ &H &%@%! %%@r ?O`&L`&P&6 H-b &@L%`&$ f/y&d !0&7P&tr& $ux$&$ $ _ $p)p$4)$$@% #@ $@ @`# DO"@#pP"& & H$x #2rF$%'$ $@|C 8@#/& #3|-'P"%EF$p*p$C0#C P& @& 0& & %& `%;x4@&pP& #0&&@%&.  P'`&F D&/- TrB*/%E0EpP*AG`$A`$A`$ A+0Az xA`$403/`$-`$`$`$1x3B&r8!p(=Bp##Wr33B@$#Gx;C$Iz #Ex330p(':C$ds@$`N$x37%3$(9C$J6x($9)($($/)$%//p$ ,)($4/,-@$,@/!0|,-$z6 $$//$0$ $/$2$L-$ $/0@&@$r%%M-P&@5|LLPD|%%09*d.P# +&#   && F#E$x&E   p%?&p 0r,/ #pO|??#P!r1,T'r))15x1*'(@@0x*M%T'|5)0(%%d@501$x$@#1 0~,/@,#E$x<$0Dr,/#4,,#(55@TrJ'"ErB)&/P%>)@Dr3$pDrK'(0# !x==6$r$ Y5/$055/ &)x P&#/(5 $ %I8 $4%IL@4&I*$ $%J$'T|6$  7%'$$$Ȁ#%$6#fx$426PD|37#%02 P%,2P$*130%400(51 Ey00@(%44bP$<! ?$0#3?& I`s/6x&$@O $Gdvs?%m & t#&$`$%$$`$Dr%>I@#r@$p#pC?-#`|$(`1%P3." 11~p$2r&0 (f $x-)`@$,@Rr.0!0p #'`1r,- 3P$4?/P$'% "@0900/$r- 12p#%p"`#2@#304<# ?54#5?6 @&7 # 0=# B=&#"=# ,#  #"%$D "u/;x0C"%,;"p9$2@ %0:0P0 $%,90  ` ``0!p`` ` "p#@/00$@00&@f6x8?P.Dr8A /P0  ` 4Pp0pFx$6Dx++@  6y%6!6x'7/r''0p'  2hO$x%Ep1x $)`2 &F 0 r/P0:PP!) 6{(  !x$'@ 0x'E@30 a$x* p0%EE P0r0$%P3+3+p 0|((` E P!5|EP$*@!**@!**@!$* @@!%*@!*$* @! `0r+p#( !x@.@` E$x P *` &,0` C$~` %0 uy0 ( 0  %0  %0 % 0 %0 f>r#@S/G)8$+H  X>r!F>r"/O!$+  p$  %)) '+P|)p  &p<@$ + %'#PPP0`!E6xEE@ 00 pVO>rP-0$ 00+`F>rxO6x)6>r P@02  00#+0! pP0}A;A?@A A0A0?0 A0A0AA0AA0A0A0A A0A A A0ApAA0AA0AAAAPA AA0A AAAAp@ AA0APAA@AAA@A A AA0A AA ApAA0A@AAPAAA AA APA AA!A'`AAAAA AA@"A@AAA@'AsA A0A0A0AAA@p@>A"pAA0A0pAA0AA0`QAQpAI%A0A@ pAAA`A0A`A0A`AAp@ @?p0 @?``@ A`App0A1 0 A ? AA0AAAA @AAAAAA0'AA @B0A00A@0A-PlQ\ M,`Lfz  @d' -p< q3TMbCd T x; /Np@;_b p0@qd@/h@.L@@/-@g @/@'d@@ @8Pd@" @@8/y@@/A@@/@@@ ,m<82ƈ=@-/@G! @/@,cU @/@( @C/q@ &h @ //@@=@@@B#<O/@.@m@.@@.@H 8(s p88 `::@d HELFAS "p"0 d@8@1*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver-text._ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi128EEEvPKvS3_PvjEbS4_a[Doshared]Kreserved.0/compat.rel5FOrela]FX/64EZ\[\W1G[ ]\ ]X vZ[\debug_frame anv.callgraphprototyponstant0D` _/`!oapmerc, c!K!g 9 1Dtcb c! h< e#M%.B$ eO RSmem.offset0  .0__nv_RSMEM_0_0_aliasP3cap]N; ^R Q R#l Qa!@u 0)0` N  V  g'' y 0  0 m x  , W$ @| (( 0,0 R4<6d\h%h85hг)_D8 NVIDIA Corp;cP6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1/>" <  0  0  0Tx!7D"rup!v^9XuP uL9H9D 9 <9 89 49 09,9(9$9 e999!PLJ`% &@&`&x `x6Vk00jh yX T S|d50<D`Ia{p{}Sy|h ww0A k*{@b0Ct0n`C pC)pb repPOy&&@ r S$| > y C xat\   r"/uPfP}! PW6 q"$~t@/sYAbpa% t6xPP0o0  ps<e!"ppS 1$ra/$r0 `d$|pp'r0c0C  T'r )`p |@@pP PPad$r uo "bPp$|P)@`1p``7$~sQxuk6@O 0`  '/``36 Z)sbxrk g$xlk3x&@2yj%`#x "  0 0x}a `*6(1 B3p@6xpSsL $ p1pP#x;x.. RpPVT`6`4N+V.xL @ZXp^Fxnj@ Ix\ *//$ #!r ` `pW'r cxlxll0  d'|pOrn n F$r`xV@ư;$0r1p`@Urm pt/$xu0p$ H6Arrr@3` Txu`%k0xmmP   p@`"30#xp@rlm1l@$xm` 0 r @`@D|(@!#zb`P@  +((x 2pRCxqt?_@xqq`pFqjP@q @ rqpRG@X Cv/xp0 P$| 0|1%~|0)4hpp pps6|}Bp@rh+3@ `T%|||`//P5|i```< 0n@ `P0^0 1$rP1`Yw  i}iP p C=@  +j`u0@x ++  @C2@ b|* !@x)+  (+3p0iPCFP 0x===O%r(=* 400=`r((2pȏr)3 @0T%x0=@qy((0  Q%x8 0Ey00 @ !x< 8 %88 uy<<a6|C@r@C$x@kp4 pSy Sbr !@C6xECRdx@@8@% 0CxIC0/0@ rC_ 2p` 0xzuA E|Khx `U |@ B/xAxA@PJCxH0@|DK00F@a|BK   B |Ap#ACEPPrEJG ~`B rC#Dp4@Kp P$Itsr0ArIH3A0AI0@pP@"04FKF ` @ @ GJ GP@rIr"<4rKpJ@(HIH rK W$xIk Cra`@HxKH1|H"8 B rJPxIz|I0xKHKp4rJ`CrH`#`a4pP pp1 ryI(@'!C3)A#* u x(p !/ #+0$x)k !O 30B `x*p!kx0 31C C))`8~+`Ex**`#2`0 y*p)p`&3`0x) + 4xy 0058D0Wxwy@ @$xzz)Vxvy` p39E@#:P*; 9<F9=G*> &? "? !OS  ` D@ PE |q`  B  îK@  F  D  aîKB  Q@D S"y-S{ b;x(N %Dyuh.;x@xuN;x0!0O'ns @>rH9  />rI%$ 9J=<4KA@pD  G `0|n@p` 0Wp``D A #@7M$G)b0C6x8n20|$!Ot>r>?> 807<;: 2|%p0D0T>r?CB 4='&` 8  9G PEy$0SGyp < -PUx$G `#P`p $$` `4$5409%109&-,4')(@#` @4D@@$D$ @96x&`T>r./.$t,4,76 p(&s2|$$W>r-3202$~p4/+* pp&0p, pp/pA$p)9&4'! pU $D$ pp4pT>r pp*p70;|p4#" pp,p $ p5GG`p4@ #)8>P4 @5  94`U$D 0S6x3|0"6|SM),0@n4 7  @ 7 T>r@"p/np$M 0p4M0P TGy E@/a'&' &" wj%$ ''C| l0p'Syq&'SOy %'6w & '6y1' !t  &&0'&& 4 p'Wȏ @Z1%` p̏ 0p' " P1 Sp7$| &V} `''9/0'vh `V{p(`"A1"1@H) @1s K t uN6x p'Os @'!b&@pP `1 |'" S&&%O@' `#>/@'  !1,/3`'4 Pa,%@ p" "8$|7``2pP0| 6)7` b@00!6,@sP 'C6( 2 w68`& P& &! &Rsj6x !yP$# "(d'r)""p/'|" "(  `@((Q~ $ 1 2r@ E r `R$( Gx1%U$x:10u6(@$5x10`0% ''! (# `(p& )'`%1%r 0 R4x ? pxP1!@FN01 3B &1x1%p%d `Tr8&pp P0x:#1x&0`&00| 8  pExE| 0 93)`#3&@ &'  P&r @0  @Gu &@r8"p`8x@!@|;"  & &@xp 1 1%~< @&Jx:0&5x0-5|588|=Gx49 P$x;;  6@ Tr 0&5<<439@`Hx29`"$|<0# 55 ,R  &Ġ`& @ %Hx $1$x %Tx   P Pp P %C:>`P&%0x)0ʀ%)% )%@:C|)< 0/@%|) )P!r("TrP O`*%+@r>(%p Dy( %&4,pȀ-01PEy,0 ( C6( p E3)!#* p&6|(,`O-`%,( !@#+P )0̐,P&%((!.@2"@u$x1`(&05#p1 |>  b`#`@#@&%&# %0 $0c 6|)8"Tr@$*$'` |) @1Tr  $%*$#+ #E6x)`0&(B|+`PƏ - 0P2Pr+00  3,&QC$x,0Cr,$03-'` ,p%P$.P#/0#" 5 "u6x,)0' ) @|+6/r(0' #`1 @#`,@00)%*%)p5r*@ +/|+@2d~'6~!# /# %;"u/;x(9P#dp5 (p P"%(40 00$0p Z;x(30 0 00`""`0"0;x;"`$"f+ 00+ 0+0$"000&00 20,,$` /  2P#y7x`6'(04  Sy !!x)  `p ) ! "p %@İ%:0@% !x/ WxP ;x1 '* P    Tr((050 rl5 4(((*: !b!*!!%*! $! ` +Es*! !`! 0%#1" O$#`p$| #` 0Dr( xB07 a$x) E| )0!@0 uhy$0!f$~!P!P!% @!@(<@!@p@!Sy %  % f>r/0c/G), PT |( ,O  .P  R  '# P(@WpT `-P /O ((@"|P)   ;| @`     0@"pPFx## @ P#"G>r00PP0  $  - P (;>r "/` F>r  p%(@p/ }PCCAC>C0C>C0Cp@C0C@>C0C0C0C C0C`CPC`CpC`C0C`C0CC0C0C0C`C0C C0C CC0CpCC0C0C0C`C0C0C0*0x0C0C0CC0C0CC0CPCCCCCCCPC C@C CCCC CL;C:CCCC @ CP"C0; DC@CCC@'CsC C0 C0C0CCC@pBFC#pCC0C0p @C@C0CC0`QCCC C0'pC%ppBC0C0C0C0C0C@C@CpC0C0C0C0C0CC@BC000B00C0C@!0 C(C C(C0C0CCC @ C C@C0CACPC0CC@FCPCpCm,cPeZ3oo_>ϖW$I2Id$;sTQ  ~WAap"pC@[X0@0@x,0frQ  n99`0DgPA SY h ,A /B.  P:D@D(H` `DH hPH$ TyR  Z,H  0*B+ W@P0 ** ***+ ****,A + 7TdPD&000Td4 DTd c\A4< , \,     $DB@)0A),H@O * @  (Q#04 y  Bh   ! 0rs  u! 8  (  0  8#@ ЕCGZ@qbpZ& !   @?  @? @? @? @?  @?  @? @?  @? @? @? @? @?  @? 0@  s@@ @@ @@ @@ @ @  O  O  @@ @sq/ @ @  @  @O  O  @@? o  O @@  @@ @  @ @   @   @   @   @  @@  N 4 . ,@Hpp82`} $DqOB H H P"dd@df@L- %4h 2dX d>d  ހ3 '_{/zG?dLI2u޿_߹u\p"  xvd  @XA9 ,(3A D4@T,Dp<vD@`2C+ !AhAB@  ,@$    H T d8@ 4 dPAXXg@ ` h8 @C h @pP0`0n `  p  x d  D  @   V$gv( llD0  0  @  @@ @D @ @ ?       @D=  4J ),"*"T#f tR 6 ho  2hDh 2 .Hh   d hxwhZ h  CP !!! p!! !!0!! l!!0! !,!l!!!!!!!@!@!!!@!@!!!!!!! !!!!@!@!!!@ !!!!!!! !!@!@!@!@!!!!!!!!!!!!t !D ! ! ! ! ! ! ! !!!!!! 5!P 4!"0> 5 m0ıؙppE,p% p <p+DMP(%Z4"m*X  ފRc ++NL$'j`e<== >8*+++1+j2#C` /l/,`M5=,$0-R Q4  T /0 !'  # $ t ' 0 0-4 jO @8 @.  31r5>T p; #)@c" 9@@[@*vN @H'@ @hl @_w @!$@@/W@@@/@|+@@@ &(%9@@" H@8_@@/k@@/0@@@ `< Q',;Q@M! @/@i( @/@ @mLC/qa@ @ X//@@@@BO/8@.@@.@@.@!V p!?3@ @  0@ @/ @.݀ @~@.p @%  @6 0 8@9Ը" @@@q0? @i@.\@!@@.(@"@/. @.@#@_ 8 @@!@/Y @ "@@P@#@/"@@0 !< @@  _Z@@ #p) 8(  p@F88slP@x H< // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW6smem_0E[];lisible .entry-14matmul_dq_sm80ILb1ELi64EEEvPKvS3_PvjEbS4_( .param .u64 .ptrl>_j?_0,t_1t`2t/32NE3fR4fR5fR6fR7fR8fR9fR11G1 gHS1S1S1S1T-1]U1uV!uU2/uV1 ) { .reg .p s%p<33>;b16 %rs<232 %r<321964 %rd<67>; ld %rd18, [D72];p?383pG4p4pG5p5pG6p/05QH7q/87pG8pH9p9pG/10q/90qH1q1qH9H19H1 s8QI H1qQI q6qG2qH2cvta.to.globalw,S; mov$tid.x; shr2)1, 5; and3(31@4, %ctaid.z5y6petp.eq.s4p0; @%p1 bra $L__BB0_298; mul.wide0d20S4, 4; addh3rd2j9!20),5]; :'>00305Ar385242O3g9/2344'4:$11l1X2, 11 39 4=97,m ~@8@0N $(121"H8192c4; xor3400"!40!)11K$4072~ 193!40#8397#1O pW3* !40KJ6, 1 (63!40d"T&in7; bra.unip7)6:p8pW8qK@v dw49 341052; 3 41Tul.lo"050 h 3 49585/26679w5589 1 3K5/29 ,=11:/ /04 Id3]; di4&44%6madH4v] (Ay1L +54p5101& 1789/60123466667777777777888 88J@%p64u I[ )19I'28418x4#yB  7 J 3 2! .  . 3]d 1rd3 d#1V<388V@5V))42A 2y7, 84483  *57 72u,# 3)70#,)96+$83N:3i7, 9083)213*47Q,:934Q*60,997246)98Q499854,10 9B~?46Y 5 4]7 1Cs3(d Y00.t @$058123" `5 07 0 0000 0008 H8999999) 91 H/10/101H/10/10/10/10/1011 I11111T 22222222 333333333344444444445555t X55` 1`  ` 0` H0` 1`  `` 000`  H` 00{13: .pragma "nounroll"UI3sE1pTHI"28b1"28  5g#p7%;389T~640287m3,413:&4q1 3288k I1587~"28m@J3s64$d;28888_0, 49( U$d4kn$3$d6>(47Bnc.vC{%r4o;B439}4$X5_5 X43447X+51X1X4*4k4455X2X _U444463X"S// stG2[#]bS433; 2 $#27$5$8$7$9$9$"31L$2$#33$#34$#35$ D5 D5 D5 D5#40$4h64h6 %28' 65=-5x I W75 3elp 28w)p74U0@!p8Scp.async.cg8$_3DWI+  3" "281b 4 4 _, 20444668K1m598%5"& 3289=u  &'9'1( @, 40> 4468(9( gF1 59H Q5^0, 4289H07,  ,J S , 4 o, 6144,7CC7ommit_group$waw@bar.// ldmatrixe9ed.m8n8.x4.trans/{4H4? #47 /4 5Uv$4 42480v?481w6wO1024x%y 4g 43 #48>486x9 15`f#a$499]#44#49#15\5: )4#50$50x6xdx55J'5#50.505(5x!55$511]#e$5W145 (55v5e$5222+5v5e#52/523+5v5$533#l5[5J#53#44\L +0 5c 5D$544x6x)54/5414+5X5$555#5"554LL+5. 5 5 $566+O5>5-#56/567) a D%r577k// mma 16n8k16.row.col.f32.bf16Wf32 {"B182},  WS /; / '3S3178 S0d1b#S0u?146 bS0/11 S0?114 bS/("8V8 bS 1y# bS /Jj/17 0S17/17 S0/14bS1R  /13bS0$.$N$/11 bS0%?%_%/10bS/p((bS 0)0 bS /!!!/160!S16"/16S0%&4&/13bS1R%'E'/13bX'S0V*v**/10 bS1R+99b++S/.. S 0/0 b0S/''90%9S0( )#: FS0<,\,|,/12bS1Rm--/12b-S/0009 bS 1&9 bS 0+@5bS1RQ6 bS/  p v sb05  bS0 bS0 bS0 bS/  bS 1 S / b S1# 2 b g!S0b%S1R b n  n 0s/ $S 0  b o $I g +%v s/ bS1 bS0 bS1 b nu b o b o L(Is0  ( t b n b n b o b o b n b mM4 2 o K3 s  4s0  bS0 bS0 bS/  bS 1 S /  l6&S1  7S0bS1 b m b m  m b n b n 0:I f : s b m b m b m b m b n b n = e > s b m b m b n b n b m b nI PH p H t I n b n b n b n b o b o L&I`Bf.P9L t b n b n b n b n b o b o OI g {P t b n b n b n b n b o b o S f ?T t b n b n b o b o b n b _a]Fm#nep%P%0e '13m4VWlF` l9Éa"29a! k9?Uvl{#29e:8R9?l C"29ua 4299{13332c$33}9!42993R3P]2.{O2995Ȉ ܃"29 "42#Cn"29P`~ f9 A }m"30L L #30 0"F,'~!?0 e#30M.0f g*(3efK~08  Y4289Y56l$v4 l-?], c c]"28a?0, 5~ ~l a9a, SE a#9083}v; 7ώ 7nps`Ў 6q$orƜE>p79_0_%}8*#309 l"30+[9n4301b4b5jVt 3T_ 48ms 'p 7 "rd$6^p2  $lt~S#937{2o{!S {|0>px@ l 0k{#10@0tVc?23:\ M$8301?24:V}4V 2)}5bLb 3 br } M U${ 2CmUb m2C2mS m>p7 2 m49+6 0<o/28o^zq I'/u/95 #6x$30 6b6b  7b4t0Q65y4@6Y 66 3x3L#L2L3L0^S ]>"p3L3z3L4$114o3L3L\)`P'34: ret; }$?128Wm2Ҧ1u%u#g3gS##g6gSgH9gS$$6%$h T1 T($8 T*# V,2+V.2//54/F6248& <8 *6:)˪/69q?592 r Ϊa/70qI ]q?~ 7797Ft/70I uT 7rTIIrÜwZ w1ww2 w1w ?592,i7%w1ҬҬ% Ҭ1ҬZ 1Z7L Z7- Z7"Z"59$S74! 1Z1Z?713pW3Z1Z I1%7 d$7 >152677y F>5F4F>5%&6> >1>g7I !]v1 ." 7| "; "*J7m  8h'7#7 f[| (2,M =B.7+W 2*V#;'1%r6ru_ 1234567893333333333444444444455555555556666666666777777777788 #1# E˭ #69 $lom hd##˭ 70\ V˭]$$72 7 I$72iдn6 59c #59[;927 ^X 023R H5  073446T 4444>x4551 x556f` 066PH06:H 077777777778888888888999999999 6p5 6666606506206&-01 1 011v`X 022_ x2222KxK 0` 6+ 03qH` /60` 6T(` /60` /60` /60` ?604` 6`)` 6ңH` /60` 6H` /60` #60`` 6` 6Q06` /60` 6x` 6H` /60` /60` /60` 6w` 60` 6nLH` 60405` /60` 6R` /60` /60` 6/C`` /60` 6@D`8` H v2HH0{0` CH` 1` H` 1` `` H` 0` H70` 1` Lx` lz0` }H` H` 1` 1` `` 1` ܜ`H`  0` fH60` y`` A0` 1`` RCH` CH` n040` 1` 1` ˊ` E0` -I/59! Js0sJ )(s!I )7/WqD+I0 )5j5 J5c:<#55p7c6@z%-90.Ba!5&|b'jR7jW7W ɷ7&5A H55N=5;"16Y7 #55b) #55#8575e˷$8&d#727*#73E d5- 7/x5xt 7K 7" 7R d5*X_X*#7 77Z&+57Xx_Xd774756X8z#55c- dCJ1  e(I1Nn@ w 556 l0#552:1637 p+81IKM"72#72b?7 K2sM@7@8@9@-IK@N=3'K M@D7J @V@<7> @5@7L@3@3@M@@3@3@/89U@4@ .74A4A?1284ByI4B?1154C.GAC?1404D4D4DE5E5E/795E5E5E/665EA 5E-5EC K.51N4(.58# 3583;!C*92,57o#55%5/#55=8R< 0 s   2")5587k0@DHDW#0#556( #17OU Iɼ3757ʼ#75^W 3594 22J 2%5C& 7r# ۻ73hr)9)#76F  )[  9)|F» xc)7 ) 7 )U) $61)9). !, l 5>0-b-42 0-g-y) V4- 7T- - 3-7R6@7,0&0751*8%76\  ڼ0IS I%775 5O1228:4769376m0 v73143w 7'44 >}(g#56z8Z$ 'qU77o#77 3777T7< x!7 7 1x/82x7x y  7B 7$7889) y!7u$7996f '#56# )#56& R 677 6( 7 dqYp7_7$7998y!8%3r80$8083y88;8^/80<9#y!8b8($811v &81ZwG<LP$8117~(8! ($822y)t8c8a23 k 8Z8$833[O[wJ88$833~)) G D%r8442y) 88$8445)88#853$855'"85s8/85$ ~)Rb $866 ) 8 667) r_ D%r8777  8 8 8 8 =s z! y zV z  8 8 z9 z! 8 8 9)q f8q 8q 8q &90*r g9r 9r 9r =m9s 'g9s 9s 9s '91(/!9t 9t 9t A(9v Vg9v 9v 9v 9v 3,w 9w 9w 9w 3-x F9x 9x 9x ;z)y ;;9y 9y 3){ ;;9{ 9{  ; );Ng;9| 9| 9| 5-} ;gg9} 9}  ;z)~ g;9~ 9~ o'F?f??7  QS E.W@w@@P_S01A1h bS1B3iA1 bS/4 5,5L5 bS 1e6=6]6 bS .N<.8s?598 bS 0=i bS .E7uE7uuS1)FF6 S0 Q34?610 bS00)0G089 bS/4;T;t;; bS 1)#L<< bS .B/0  bS 00=C  bS .22Lwu 0S 1)M'M5@ :MS00^0^0u9 bS/+;K;k;; bS 0:QAA%60RAA S1)kRBB bRC CS.HI  &S 1)1/J  &S .9 9^R C0S 1 Q:/61 :S39"9"9"9 b@Sb/sAAAA bS 0WGH$H bS02)2 2u bS.&O*fO  &S 1)-wP  &S .H?h???0S 02y@@@ S/FF3608ubS 1)3G/60 bS 02^2 ^/01 bS0=O]O}O bS.nU2U  S 1)?M8 bS .^EE!0S 02F_+"S/LM2MRM9 bS 1)CNcN bS 0tTTT bS1)3UU b3U S.]JJ}@ bS 0?K3Ku bS .KeX1)%0S 1))M/61 %S/:SZSzSS bS 0kTTT bS 0ZZZ bS1)30R3b3 \@\31vbOOS b.bOO/44 bS .>k`R/61'9S1)f m) S S/YYY/60bS 0ZZ/60 *V%S.`8rDa bS 1 B5b3 bS 0~TnT^TbS1)Log5 b"US.+ v= ;S 0@,  ;&S0@,  z<S1@, bS/+  bS 1@, bS .+ b#S 0+ bS .+ >&S1 Z @, a?S0@,  bS0Ca@, bS/+ $S 1 @,bS .+ b#S 0+ S .+ dBS1  @, C@,t b f ,b/+  bS 0+ b@,o b@,g b@,p b@,p  F`,u/@, FS/+ & bS 1 @,bS 0+b%S0B@, bS.+ b#S 1r@,bS .+ bI ,02@, b PJ@,t b@,o b@,o b ,/]{@,  bS.+ &#S 1 @,bS .+ bNM6,02@, b M&S/+ b$S 1n @,bS 0@,   ,1n 3+S .+  bS 0+ bS .+ P:,1@,u QS!N/+ b$S 0@, b@,o @,o , .+ #S 0+ bS b.+ TS12+3U@,tu b@,o b@,o b@,p b@,p b@,n b@,m=i f@,o g&,90@, AhS1 @, b@,f b@,n b@,n b@,o b@,o j& c X&0!X (kS0@, bS0@, bS/+ #  bS 1 B@, bS .+ b#S 0+ bS .+ +nS1 @, n@,s b @,f b@,n b@,n b@,f b@,o b@,o q @,f tr@,s b@,n b@,n b@,m b,.+   &S 1@,bS .+ bsu6@,eb v@,s b@,n b@,n b@,m b3,&.+ &#S 1@,bS .+ by6@,^b y& ,b/+ b$S 1n XbS 0+b%S1n 3@,b3Xf &@,o &@,o |@,^ X}),u0YX b@,n b@,n bYX0-X9@,sb@,o b@,o V, /@, S/+ u bS 0Xb@,n b@,o @,o b@,m b@,n @,p I&@,f  ,/@, bS/+  bS 1 BX bS .+ b#S 0+ bS .+ L&S1E@, S0@,  bS0@,  bS/+ $S 1 B@,bS .+ b#S 0+ S .+ S1@, @,t b`@,g b@,o b@,o b@,n b@,p b@,p  @,g ;@,t b@,o b@,o b@,n b@,g b@,p b@,p 96X^\ ܡ@,t b@,o b@,o bXfX .+ 6 bS 1@,bS .+ bڤ6@,_b }&)@,f b@,o b@,o bY,u/@, bS.+ &#S 0+ bS .+ {@,f )@,f b@,o b@,o bY@,g b3,&.+ &#S 0+ bS .-X S1n 2X @,t b@,o b@,o b@,p b@,p b@,n b@,yx#ne<r %EG)13'13'4EO^[#66ssG5s0sJ I955"ank #57$2OoI/" (W 5A56 671686rνf 1Z3U6Q"\d9W A#57#84h:790 Y|5>4)y+198 *sa16]5C/ 8(8)99% $v40560#1 z#56l5za$12az #56a<105 b+X bb,587b2" b,b26 X bg32b3 G ^b-31 b " b&?369 4 1Gb#424 b5-47b5H,vq5b-58 6'qb6C6b-68 7;b#73u7 b,78;P 8T48U2- 6(u+ld{8Es6r 69["#916l1`96&66`6`7``6R 0/70'70`7Ew#700/701pb9 C7%711bb"7-#7111bbq7 222/60b#555722Hp#X55573334b#5Q55733*b bU5Mb 7p5.5557445pE7 %7555#63b#555755b6r #7"l55766](b8r #p#57%766// cvt.rn.bf16x2.f -71 -/b7)b9baobJ-$d7|,5 .P09; @ 97,"23757At.globalR}qHե; bra.uni 978J95/89IDp 8por.pred9$8,?p8h0 h}9 TGJ0Z>Z1-e 9 6 H41 7y/69b  00b69U3u64dh 6 =d19, Stp.lt0B*203)GJG/90IGG1G 7k Gl ?p@ QzGG8%b[?23:[ Y0(812i1J/ % 8 %b5  b92b$67"r.9D< f2fa f2f 2_I0I 2 9901?pM 2  D7+64  /28^22  ?573b *0#$\ #91 3 334I0I4 3?p 35 E7+12 m3_J>4/72 6)Qk1b.'+ 4v }  $86lt 1"6Y6]N7#44I;I;30  7;?p@ Q 7$108844\_6 C4 J ( 72b (@9$# X2915> 4446I0I n 5?pY 48 C7+19!53l4_ 88(4J%{*/74 "50Q7/75b 5x#  ) .L4p5pp#W#;557,I;I;57;7B ?"p55059d19855\_N (8954: ret; }G.visible .entry 0ELi64EEEvPKvS3_PvjEbS4_( .param o.ptr .align 1l>_j?_0,t_1t`2t/32NE3fR4fR5fR6fR7fR8fR9fR11G1 gHS1S1S1S18F]U1uV!uU2/uV1 ) { .reg S<33>;b16 %rs<2!V<3219>'rd<67>; '  | 2 ?383pG4pd!5pp!'3E7q'!8pH9p*!2/39'q"1q#q"9H19H `+ s8QI 1H1qQI q!2qH401?1AS@1@3#A?K?z b?.6x0$eqr/,01?2_298; mul.widf"rd&42-+9Z9$ld9 CM:'dy+"303"38242O3g944'4:C1VBs.' B*33U] 6smem_0E~@0$11"E4; x+4%# 8B4A*! 9K$4072~1;4Y#$394J#FO pW3* 4NC~ 6ND!40"T#in3305762_7)6:p8pW8q77@v  w49 4 2E3 41CSul.lo/3; h 3 p49x]-daL!rd,5.D679w5 2_89 1 9?5Z# ,-11E3yrb Et13]; di4&44% /?4v] (Ay1L +5$41>^p53C01& 6789"xxD23466667777777777888 88J@%p64u [5I[ 1I42K418x4#yB  7 J 3 2! .  . @]d&. d#1V3L V@ )842127L 3  *57 72u,# 3:7L)96+$83N:3P7, 902)21,4 *3,*93*3Q66F3,997246)98Q499854,10 J9B~?46Y 5w#o4]7 @ 1Cs3#d Y'OVt @$05 323" H5 07 0 0000 0008 H8999999) 9 }/10TH{0/10/1011 I11111T 22222222 333333333344444444445555t X55` PU` H00` 1` 4 ` 000`  H` ^` 0{13: .pragma "nounroll"UI3 FpTHI223Q2, 58 %3J T~64:28793,413:&1 3288k I1587~#28/u724@J3s64@d+ 880\ ( U$d4kn$3$d6>5$ncOC{%r4d4@3g4$X32_5 X44XRX;X {4*4k4R;d52Xa4_XU44c4F" AY^046][4BD!$4]$5$8$9Yl#29$5 $"31Llb]#33$#34$#35$ D5 D5 D5 D5#40$4h64h6 2  65=-5x I ,7255;  "T c6elp08, w)p74U0@pY@cp.aAg4.cg"y3WIW\6d3" "281b 4 C, 20H[ 44668K1m59 %5"`I 3289=M &'9'1( C, 40Xa( 8(9( gF1 59H  ,^BR 2, E 1J S|& 4 4, 6v\, 7CC7>ommit_group$wajNZamatrixk8ed.m8n8.x4.trans/{4H4? #47 Z_4 56^v4 4 #48|Z.48{Z4w%10&]xW4g 43 #48$48Z9%15\xt"r44`4`]#444`#15\5 )45``xdx5`55``(5x!5Taaa]#e$51Tf5`45 (5QwTaaa2+54R+a*a)a3+5MS@a?a#>aMJ5;a#44\ +0 5c 5QaPaOa4+5faea14+tLX5}a55#zaGxa4LL+5I 5aaa 4L,aJH6\/567)h`6vamUx7k// mma16n8k16.row.col.f32.f16G32 { @$18IBUS _y'/O$17S.^~$15| ^S.m1˦ ^S.b{/11  ^S. ?114 ^S-"8Hp  ^S /i# ^S -8Xx/17  0S/v7/17 S./14 ^S/N  /13^S.#p4$/11  ^S.%#%C%1 ^S-R((^S .v)0 ^S -p!Ƥ!/16 0!S/v""/16^S.%%&/13 ^S/N&'/13^0'S.,*L*l*/10  ^S/N[+99^++S-.. S .v/0 ^/S-}85 q0'S.((94 S.,&,F,1H ^S/N5-U-/12^h-S-d0009 S /vM99 ^S .40^S/Nv6 ^D6S- cn _zP 3^.5 ^S. ^S. ^S. ^S-  ^S /S - ^r S/v g2^ !S.^%S/N^l l l ^m ^m &$e $jP 3.x^S/ ^S. ^S/ ^lk ^m ^m ' 3. {(r ^l ^l ^m ^m ^l ^k3 &2m 2q 33.  ^S. ^S. ^S-  ^S /S - 5S/v {6S.^S/v^k ^k k ^l ^l 9d /:q ^k ^k ^k ^k ^l ^l B= c  =q ^k ^k ^l ^l ^k ^l3I Gn /Hr Hl ^l ^l ^l ^m ^m BKAd Kr ^l ^l ^l ^l ^m ^m Ne Or ^l ^l ^l ^l ^m ^m R d - 0, ! .  ^S/vMA ^l^m ^m v4v40A  eWSk_`ރFlY%%0d Y2Y?305o!_ k9j` #29e! j9MT6#29d:b@D C"29D 4299{1b 46~$33}9!2 l3P\ O2995ȇ ܂"29 R 6"295O4 e9X@ }l"30FK L 32a/33'}!90 d#30L.0e  (3dJ Y4289Y56k-ߝ% ^2Nl *a D a#90q `8(` 7t[0l8 VuVu 2t45s4 7sM%2t2t 5 l68{C>2p167 3300[M%} 8(#309 "30 3m430170 5hNs 3HW 08i237{ oũVo2jbN32 w2oư S w0>#p2 &y  ji3R2ĨĨ\0%^#8301t4T 2(s2<3302A` 3`q q A T$; 2I; 2I iz i>p+; 23ͷ(k9#g^fm A't/95A 6{w$30 6`6`  7`$s0g־i40.Y ./ 2Z3D#D2D3D ]S \>"p33D3D4& \?_&32?128 Wm¥1u7%u #g3gS # #g6gSwgH9gS$6$h T1 T$8 T# V2+V2/54F6248& <8Q/69q?592r TETF Mq/c8Fd8rG T 7rTII:gJ g3gxg2 g3g YHz0«3««% «3«J 3J 12J"J\,S L3J3JpW3J3J `1{%b . .,37z F!59Y#r7$6,M.5F43. ~6. .3.g7Iz !]v3 ݪ7|{ 5; *J N6 #y[| (2, =B.J7q $72* =6lu#11#1_ 03 05! 0W w 9 3003G H x444 x44 0o 05 H5 H6666 x h6 070 077 `788}x 3 E 2 Ǔ {#W V,@  v4:/- P.Q 59c #59K;927 \ 0f23R H `   0344 xS444`>x4551 x0e0 00P00) 06/6 x70Z07 H77m Q H0T0G 09999 9 6`5 `6&66 606506206-010 011(v`X 0g H<2H2XKH 0` /60` #60ރH3H33` /60` 6T(` ?604` /60` ?604` 6h)` 6¢H` /60` 6Ha00` 6?` 6?0p0(D0` /60` 67` 6` 60` /60` /60` 60-6-42 0-g-y) V4- nVV #63- ~R6@ο7,003 51 %76\ i7 ʻ0IV+975 5O1228*4769376]0 v73143w 7'44 >m(g#56z8Z$ '%V77o#77 3777T70 < x!7 7 1x/82x7x y  7B 7$7889) y!7u$7996f #56# #56½& R 677 6( 7 daYp7_7$7998y!8%3r80$808yy88;8^/80<9#y!8b8($811x&81ZwG<LP$811,(~(8! 8$822y)t8c8a23 k 8Z8$833[w&J88$833~)) G D%r8442y) 88$8445)88#853$855'"85s8/85$ ~)Rb $866 ) 8 667) r_ D%r8777 = 8 8 8 8 o=s z! i zV z  8 8 sz9 z! 8 8 9)q f8q 8q 8q &90*r f9r 9r 9r =m9s g9s 9s 9s '91(/!9t 9t 9t A(9v Fg9v 9v 9v 9v 3,w 9w 9w 9w 3-x FxEx ;z)y ;;9y 9y 3){ ;;9{ 9{  ; );>g;9| 9| 9| 5-} XgWg9} 9}  ;z)~ ;e9~ 9~ _%&&d??7  OS s,5'U'u'@[S.1gGZ%61f ^S/B3  ^S-45"5B5 ^S /[616Q6 ^S ,@< <8 ^S .o=}i ^S ,^,E7k7kS/FF6  xS.P33?610 ^S.00yG0' ^S-;:;Z;z; ^S /i<< ^S ,xBP(B  ^S .':C  ^S ,22Kk {0S /LM5  MS.0\0\0k9 ^S-;#;C;c; ^S .3\0QAA ^iS/3 353 S ,HH  S /19 29  ^S ,88,Rx 0S / [:/61[ x[P:S[199k9k9 ^@S^-;A[A{A/60[^S .HWGGG ^S.22 2ʩk ^S,NG*(O  S /L-A|WP ^S ,?&?F?f?0S .5@U@u@ FS-dFFFF ^S /GG ^S .2\2]/01N  NS.NO1O ^S, U2`U  ^S /L8 ^S ,>E|^u1u6!0S .mF_[!S-LLLLx ^S /M N ^S .T:TZT ^S/IUiU ^|U S,P]JpJ@ ^S .J3JRk ^S ,vKdu1u$0S /[LL^ h%xS-RRS4S ^S .ϓ#TCT ^6TVT S.RZrZZ ^S/[^[[/b8O(OS ^,WbXwO/44 ^S ,QQQ/61u9XS/Kf  ( [0S S- Y,YLY/60u^S .;Z[Z/60[ W*$S,j`d8`  ^S / fBa ^S .`]SL9^S/^Lf5 ^TS,m+ < :S .f+  7;H&S.+  ;S/u+ ^S-m+  ^S /uK+ ^S ,m+ ^#S .m+ ^S ,m+ ,>S/ mY + >xS.+  ^S.f`+ ^S-m+ $S / K+^S ,m+ ^#S .m+ S ,m+ AS/  + cB+r ^'f ,^-m+   ^S .em+ ^+m  ^Kn ,^,m+ ^#S / +^S ,m+ ^XES/L m+E+r  ^+m ^+m ^+l ^K,k,m+ k ^S /.+^S ,m+ ^H ,.+ ^ I+r ^+m ^+m ^e+e ^,k,m+ #S /+^S ,m+ ^|L ,.+ ^ MH&S-m+ ^$S /L +^S .+   - ,/L m+ S ,m+  ^S .m+ ^S ,m+  P u,/+k PxS?M-m+ ^$S .m+ ^+m  E, .m+^%S,m+  ^S .m+ S  -+ SS/m+^?TS-m+  ^S .+   ^+m ^+n ^+n ^+l ^+k;h e+m ~fH&h,-W  ;gS/ f+ ^+d ^+l ^+l ^+m ^+m siW.f W jxS.+ ^S.f+ ^S-m+ N  ^S / + ^S ,m+ ^#S .m+ ^S ,m+  mS/ + m+q ^+d ^+l ^+l ^+d ^+m ^+m pWx.-W'@q+q^+l ^+l +l ^K+d ^+m ^+m 1t +c t+q ^+l ^+l ^+k ^+d ^+m ^+m w +\ cxH& , -m+  ^S /L W^S .m+^%S/L +^Wd +m +m S{ u+\ {x,k.W ^+l ^+l ^+d ^,,m+  S .m+ ^S ,m+ ~S/+ +q ^+l ^+l ^+m ^+m ^+k ^+l $+n őH&h+d ,.fm+ ^S-m+  ^S / W^S ,m+ ^#S .m+ S ,m+ S/+ [xS.+  ^S.f+  ^S-m+ $S / +^S ,m+ ^#S .m+ S ,m+ PS/h+ +r ^+e ^+m ^+m ^+l ^+n ^+n +e +r ^+m ^+m ^+l ^K+e ^+n ^+n w W\$ +r ^+m ^+m ^+l ^+e ^+n ^+n  +] H&+d ^+m ^+m ^,$-+ ^S,m+  S .m+ ^S ,m+ X+d :x+d ^+m ^+m ^+e ^+e ^+n ^+n *u'.+  ˪+r ^+m ^+m ^+n ^+n ^+l ^+yx#ne<L %EG)13'13'4E>5]F)16ssG5s0sJ I955/ #57S2Oo." (W3o56 6761686rλf 1ZU6"\9W A#57#84h:790 Y5>4)y0+19" *a16]5̈́/ 8(8)99% $v405600 z#56l5za$12aP* #56a 101 bW bb,587b2K+њb262OϪb323 G b-31 b " b&?369 40NNb#424 b5-47b5+Zuԝq5+bt&-58 6.'pb6C6b-68 7b#73u7 b,78;P 8T4*8U2- 6(u+ld{8E6r 699>["#916l1`96&66`6`7``6R 0/70'70`7Ew#700/701pb9 C7%711bb"7-#7111bbq7 222/60b#555722Hp#X55573334b#5Q55733b bU5Mb 7p5.5557445p#7 %7555#63b#555755~b6r #7t"l55766(b8r #p#57٫%766// cvt.rn.f16x2.f ,70 --`7(`9` ]k`F-$d7x,5"geIp*P09; @ 97("23757=t.globalynFӥ; bra.uni 978J91/89I@p 8por.pred9$8,?p8*g0 g}9PGJ0Z5>Z1(` }9 0 E40 7r/69`  00`6<9Q u` 6<d19, Stp.lt{s:*203%CJC FCC1C 7c Cd ?p@ QrCC8%bW?23:[ V.(812a1J+    `*  ` 82`$67! 988 ^2^] ^2^= 2MH,I2 9901?p 2 D7+64 /28^JlH5826d1 J067/70 w #7175/71`  4#72`% 3X64[ 9 9767#333H3I33 V7^3?p]@ Q 4d90&>i033[Xw7839-3J -22   ?573` ͹0H #91 3 334I,I4 3?p 35 E7+12 Y3_J:4/72 6(i0` %'' 4^ e  $86Tl 1".I6MR7#44II7457 77?p@ Q 7$104444\\4 34 J ' 7)j p` n(<9# 9i2915: 4~44J,I n 5?pV 48 C7+19!5j4_ 88$4Jx%_*/74 "577/75` 5X&969 8) *44h5hP#HW#7557(I7I75777&?"p55059d19455\\. (8954: ret; } `::@x HELFAS "h"(x@8@1*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver-text._ZN5cudnn6fusion14matmul_dq_sm80ILb0ELi128EEEvPKvS3_PvjEbS4_a[Doshared]Kreserved.0/compat.rel5FOrela]FX/64EZ\[\W1G[ ]\ ]X vZ[\debug_frame anv.callgraphprototyponstant0D` _/`!oapmerc, c!K!g 9 1Dtcb c! h< e#M%.B$ eO RSmem.offset0  .0__nv_RSMEM_0_0_aliasP3cap]N; ^R Q R#l Qa!@u 0)0` N  V  f'") y" 0  0 m x  , W$ @| (( 0,0 R <# h)hg6hh/fG8 NVIDIA Corp=6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/>H  <~  0  0  0Tx!7D"rup!v^9XuP uL9D 9 <9 89 49 09,9(9$9 t999!PLJ'p(((x |Rx6kjh yX  S|d50<D`Ia{p{}wk0Aw0,{0b Ct nPCo`Cx0p rUpROyP'0C<@ "00/r w xfhpn%O o /$| 0  @q"Zr }4 0 F rx4f Qxp/s ^!r O$|p'r p 1!h0< 00 0P@r p1@6$|j  p<0f j Pf |`p` @A |P  `00@ 0a P"3 s sdsL".` P#y&7xtOsb|n/%8pSy%P1 rPpP`fd9ngdraO$r #Cd % ĀZf    1|0!ErPp$~ x@ 0p`1pR0x1xq@@xq"Tr D p$xiE8 'W$xqTxm`$xh UP!mm@!Hxcxhư @0 0cxhh0@cxR6xP hih 0B  4ii P*(&@" ,0]. 20P4 @Txlo?`pȏxllH2ll2 B rl @$| mp P$|>p7r ;r @P|P;x64Tr>>>@: 9x89r?p1G{^ 20vhb$xkpIrw@ 4|p#|@%~<<`9vkp`P@ 0@|=p5rv>PT%|z<p//`E$|p $x Wr{Ww@w@  ʀ CM >q@x"Wr<zWr=@$x>>=  p5|< @ 0x>>"kpTrMMMʏ$rE=Mpp%r<<>p05==E0pppO%xDM<0qy< 0#? v@ /' @3DB@3EC@t5|><@ƀ$F0@$G0pD/ 3HD f5|DDP@3IE p5F< p$J@`4<< %FFPP$KP0 U$xI3LF0 Jk` xeOxHk 07MG0FII 0|K 2P)N`J &OP@xHHK 0|tJPIp"0T P 0H rUTruuH`7rt@pTD@Txpt`  4st pF pT< > Dp!lp îTF0Q<DP"y S{ Vq;x% @/ Dp Dp@?$DL $DN@6DT 4DV@?@DX D@  pG &0p 0pL(0xz I`CJp00xxPEy4  0&r@si`m pI@O 34A%9 902 @Pfx9 0@5P @r90 `5` Hr0@$|JI!/02pp p$KP isi07,`6EEj07 %DE`E``9 `5$@T5|FD !Ə("09@5P@ @y4h`hy0hPC,h`(y$hp04 hHhHhHh4h@HhH hHh#@hA&@ (h 8h_  rLA@ &/>rM)( 9N984O=<pF@ $Gp@ d0 @&/RVqPPD A0#@%(KToG 0Yx=)4@CB4B;:=0T5r8D(007C?>0F5|88 4A+* ʠ0 =  #G @Ey80TGyM @ -PWxI #@`P*ڀ` P2Eyx+PT>r854o>r910 9:-,4;%$0P 0?F@0 $F8 06x+PDx$(@%`4./.P+PT>r,76 Ir$D$`4-32 :|$$`4/'& 0 +0,0$``$$, `@`J4$! 5%`9&4'`E0 $F$ ``4(``4``4#" `4 `*`4 ``` 0``  p@ T>r P5  94  $$F  Yx((@@&r(%((SM/P9xT>r 4 `4 04@@/`M&(`4M  TGy  ))'` C| lP)')`)))fr p)p)@' #y0#p')ďwu@4)&+)Wb%`'fO$|( @'b"p !P)P"  ")5)0a%`F  )(`pR '*l.*$*b)Cs')$`5 ) $%!) ) 6Kp+(  ) '!| )7$|8`B/BP+0+bB" +W<)fI8'b*)pC8 )(`& )$!c fyp)"`)!b * " *+d.)/)+$P%/) )fr)ʀ`09jp)$p)  0r@p`@W" 0 P1x0&`)'K$x4 r9(Fx)Srq#` '())8E+0 )%;)&Saڏx' P$|9p1x '1p' s@J !20x; ' %0x*@@-b(E & (@|: )@)) & $#r "#` ! @(@ (@%+(TrrGu(a@ ((#@|p3 p P*@x $%#@#2r0<0 Tr<((W|9 # #rP`@$x7`&W|E$x`T%|@@(5: Hx@(@c5r>> 0)46@(4:P Vx:` `,+p(#r'(A Hx`#Yx p6wP(p pp"p"pF;>Hx&1r 9r( @&@$xoF5|#(( (;PT$|@Ȑ4D04EE@@ D|DD`OyD (!  fO5|B2&y(0z5|0B %,B uy00)#=0Ex==($=0 /''Py7! %3 #s |96x' ȏ$ʠ&%`& P&@0"x`)O |@@@ (%(P)4`P  Er P3r `@ rp3`8rp'E5|>`3("pP&C7)#@'47#*0!|(&37+@&%&C70& @#B &C71' %* x/5|&2,$pPD0&0(3-%@#.@*/ #2 #3`& 06 % 0%%!%`& `&/% %@#%(:%uh.;x,5p@=2rp Ey( $r!-%Ey!(r!!8@Uy !zr !`%!fr! `%! %" b/yvhy`!%`!fb>r' !cOG(1 >p $P%&!"P!p/ 3VqP!$"P P!%-//P!P8| C5r  p0 %P!P!  P!0p$ P_x  0 @pW/>rW>r @  "@! $"  Ux@@@P&r ` `>   $`3@ F FpF@@?F@F@ DF@F@ DF@F@F@F@F F FFF@F%F`FF@FF@F`F@F@F@FF@D!p#FF@FF@FFPFF`F`F@F@F@F@FF@JpHF FF@FF@FFpF F F F FF@F F FF@F 4DVF F"$Fx>F#FFFF>F0FPP" GFFpFF00Fc FF@FCFFPFF`IE@(FC FF@ p'p)F``FPF@Fp)FFPpNF0Fp)F0FFF@FF@FF@FFPFF@FF@FF@F0$ D@ F"DF&@F0!0 F!F(FPFFFFF0FF FFpFF FF @FF g@ _x]"~?`^wH#"" AD1sWkZV_uU  bWAiW`"C@lP  pA901-`,0h\P p @A  @`, ( , HjFAr DT,44$@xx(JA H DHHh`  @~P+ vA@p$R  48HD<ΘP9` uA +@ X04** * *** * ******* * `#GA PD / $=,x4,n, ,A $i@A T @)uA@( Q#04   s)H> @!@ba@@   ``]"  (u k  0  8#@ ztCGZǗsZ&W'y"  " B7 BB7" B7 BB7"  B7 B B7 " B7 BB7" B7 BB?" D? " D7 " dB7 B7" 0 BL LBT TOT OT T TB "  B B o" O"B "2 l2l2 l2t2 O2     RB7" Z Z  D\ \ DDf f DD ) DDz z D D  DD  DD> D> `r,\ H | 4 6 t tp82`` UT t$B^D`w8 |L.L  d@d { & ll ΃2dj)  2k d /  ~ P2 7 (/@}|#"FD8f$$S\L Dh xD0t@4hh x A(,X@&v (Ph $ `C+ !F@*T<44&+PgA.t$D  $ T d    $ T d P @  DH@ fHA S P  dDD@D0*0`0t=   (,T p pU  ! P ! ` o N i B   B n B B 8 BB * B       &%,b ZH")Rrf v : D Bf  6 bD b L  #hz J   l  _ 0"0"0"  0""0"" 0"f 0"0""0"0"0"D0"0"0"0" 0"0"0"0"L0"L0"T0"T0"T0"T0"T0"T0"0"0"0"0"0"0" 0"0"0"20"20"20"20"20"20"20"20"0"0"0"0" 0"0"0"*0"*0"40"40"0"0"z0"z0"0"0"0"0"0"0"@0"XN 0" 0" 0"n 0" 0"8 0"j 0" 0"(!0"0"0"0"0"   ` 0"0"^,D 40 ;K)5 a%0/)p)pDp% pp)EL#Ph#Z4"m*X  ފRc ++NL$'jTZ9:::T,Sp'` /($DXG, , + `M5=$$ڦ0D;D   T 0hO| 0# f  x  00- \;@j= @8 @ / @1xuH? %O@ 3 0@ / @. @~@.P @%  4N3 0 Y@" @@"@q0L @i@.P @!@@. @"@/. @. @#@_ 8 @@!@/Y @.@"@@H@#@/"@x@0 e[p@@  _Z@@ #h) 8(  p@F88kmPU @xtP ELF3S  PC P@8@.shstrtab.'ym _shndx.nv.info.debug_framecallgraphprototyprel.actionjY}? [@ Ts%s%6 & @ j @ @ D $iHh2`@  Jp@ $ @i(88 Y88P@Z XELF3S  @Z Z@8@.shstrtab.'ym_shndx.nv.info shared.reserved.0.debug_frame#callgraphprototype"xSmem.offset0U__nv_0BMEM_0_0_alias& W2! sa t @) @ q7 @  @ p)`DHT@  Up@ $2  `  T x8( `XT@d HELFAS  C d@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(x@9@x DHd--ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < //" .version 8.8 .target sm_120 .address_size 64 `XT@x HELFAS  C x@8@ *.shstrtab.'ym_shndx.note.nv.tkinfo`cuverv.shared.reserved.0compat.debug_frameallgraphprototypMmerc1g ASmem.offset0U__nv_0BMEM_0_0_alias<"Q!@ u d^P XNVIDIA Corp!{P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x`X X X- , @B)(T `$ZrTx@  )xc@9@@[U$(( @gp3@@ @ @P@ @HQ  p F @  @Ro @  @R@@  88(xPU@@P ` ELF3S 0 20 PP@8@t.shstrtab.'ym[_shndx.nv.info.text._ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16S2_fLb1EL21P&DataType_t0EEEvNS0_18O 2nhwc_params_tIT1_EEPKT_PT0_osharedconstant0?rel#[2##]#`#g#&16FB FFc#c#`#!`#[i E93#]#`#g#A0F7#C7#F4#M4#[i D9#]#`#g#=0 ;#?;#B8#I8#[F@9 #]#`#g#Am;#C>7#F4#M4#[FD9#]#`#g#^6__halfbA+Fg/d3!d7_ EA77a7d7k7 n :E7Fg7d7!d7_D 7b7a7d7k7Eenu77G77J47Q47_nHA7a7d7k7A nq;7C;7F87M87_nDA 7a7d7k7E nu77G77J47Q47_nHA7a7d7k7M ;+:a%^!^Y E51[^eR?:a^!^Y | :[^e?B7A7D4K4Y\[^e; 2k;=;@8G8Y2>5 [^e? 4B7A7D4K4Y\[^eE8 ^d:^,P%Fg+d1!d7_EA77a7d7k7 nng7g7d7!d7_D 7b7a7d7k7E47H77G77J47Q47_7b7a7d7k7A  q;7C;7F87M87_nDA 7a7d7k7ED 47H77G77J47Q47_7b7a7d7k7M ~|R=.[X!XSE)+UX_\zA.[X!XS  2UX_94<7;7>4E4SVUX_5  8;7;:8A8SVUX_9 4<7;7>4E4SVUX_= S܏YYV!VQE%)SV]Rz?*YV!VQE%)SV]7P4 797<4C4QTSV]3(86;5;88?8QTSV]7d 4:797<4C4QTSV]X[J:a ^!^Y:51[^eDsN:a^!^Y 251[^e?4B7A7D4K4Y\[^e;8>;=;@8G8Y\[^e? 4B7A7D4K4Y\[^eEYd_n"_^VB^a>_gG<J^f 5p`c`!`_ViB03^]gc<o 4D7C4M4I3VM( B0^]gc8 "sp8@;?8I8E7VMp>0 ^]gc< A4D7C4M4I3VMpB0^]gc  [4%>Add!dcZD B87bFdkO\%@h ! d%BAdd!dcZ ,8b~7kg@a9F4H7G4Q4M3Zi`bakg<q! n8D;C8M8I7ZiB8 bakg@ 3F4H7G4Q4M3Zi`bakgk ?a&85^^!^]TB,1\j:^eC%@, # %<5^^!^]T 8\Xf1ea:3@4B7A4K4G3T?Z\[ea6 C<8>;=8G8C7T?Z\[ea: 3@4B7A4K4G3T?Z\[ea9> (Y dgd!dcZB87bakg dgd!dcZp B87bakg@3F4H7G4Q4M3Zi`bakg<}"7B8D;C8M8I7Zi`bakg@ 3F4H7G4Q4M3Zi`bakg!  y:)XX!XWN!B +V4.X_7J1!!y%w>)XX!XWN% \0VN+_[4}3:4<7;4E4A3NTVU_[0-!7688;78A8=7NTVU_[4% 3:4<7;4E4A3NTVU_[ b np^8%VV!V~U|LG )|T*V|]3:#8 |6#w<|%V|V|!V|U|L )|T*V|]36U|23|84|:7|94|C4|?3|L|Q|T|S|]|Y|. 748|6;|58|?8|;7|L|R|T|S|]|Y|2 3|84|:7|94|C4|?3|L|R|T|S|]|Y|BlG5^^!^]T 0,1\@:^eC8F]@#pK5^^!^]T X,1\X:^eCXF]:3@4B7A4K4G3TY\[ea6!7X<8>;=8G8C7T?Z\[ea: 3@4B7A4K4G3T?Z\[eaG VYV!VU|L"|Q|T|S|]|Y| V|Y|V|!V|U|Lt B)|T|S|]|Y|2'384|:7|94|C4|?3|L|R|T|S|]|Y|.w 7|48|6;|58|?8|;7|L|R|T|S|]|Y|2 3|84|:7|94|C4|?3|L|R|T|S|]|Y|"x8pPjPd!P^OXF2B#XNPXW'?*OX!"q<XPXPX!PXOXF ~ *XXN.#XWXSX,a3X24X47X34X=4X93XFXLXNXMXWXSX( 7X.8X0;X/8X98X57XFXLXNXMXWXSX, 3X24X47X34X=4X93XFXLXNXMXWXS25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,g!s,Co,debug_frame anv.callgrapprototyperel.action+u2" f# Gd `0@0 ` e@`@@70 p ` f@Z `@@ 0 ( ` og@`@@0 ` ' `  _0 ` i@`3@ 0 P ` j@:`@@0 !` Ok@` 0 "` !l@!`  ?"0 x##` $m@b%` %0 <'$` (n@2)`  )0 +%` [,o@-` -0 .&` +0p@0` k10 2'` 3q@4` ;50 |6(` 7r@r8` 90 L:)` ;s@B<` <0 >*` k?t@@` @0 A+` ;Cu@C` {D0 E,` Gv@G`  KH0 I-` Jw@K` L0 JM.` Nx@.O`` O0 P/` 9Ry@R` mS0 T0` Uz@V`@@W0 NX1` Y{@2Z`@ Z0 [2` =]|@]`3@ q^0 _3` `}@a`` b0 Rc4` d~@6e`3 e0 f5` Ah@h` ui0 j6` k@l`@ !m0 Vn7` o@:p` p0 r8` cs@ t` t0 u9` 3w@w`  sx0 y:` {@{` C|0 };` ~@z` 0 T<` @J` 0 $=` s@`` 0 >` C@` 0 Č?` @` S0 @` @`  #0 dA` @Z` 0 B` G@`  o0 C` Ϝ@j` 0 D` W@` 0 E` ߣ@z` 0 0F` g@` 0 G` @` 0 @H` w@` 0 ȰI` @` '0 PJ` @"`  0 طK` @` 50 ZL` @&`` 0 ־M` @` -0 RN` @` 0 O` @`@ %0 JP` }@` 0 Q` @`` 0 BR` u@`@ 0 S` @` 0 :T` m@`@ 0 U` @` 0 JV` @.` 0 W` 9@` m0 X` @` 0 NY` @2`3 0 Z` =@`0 q0 [ @`0@ 0 R\ @6`00 ] A@`0 u0 ^ @`0  !0 V_{:0 0 ` @`0  A0 fa @2`0` 0 b  @ `0 9 0 ^ c @*` 0 0 d @` 0 10 Ve @"` 0@ 0 f @` 0 )0 Ng @` 0 0 h @ `0  !!0 F"i y#@$`0 $0 %j &@j'`0  '0 )k /*@*`0 G+0 `,l -@.`0  .0 /m 0@r1`0  10 3n 74@4`0@ O50 h6o 7@"8`0` 80 9p :@z;`0" ;0 =q ?>@>`0 W?0 p@r A@*B`0 B0 Cs D@E0 2G1abgGxC$@|  (( $40 "R<A5t)p) .< pp3 ,8p3 f pp3p" p%$()#0EP3pPp3$F < 5%P)p43p PpHp3``Mp P`4@`Rp| `4 G`Rp `4 , `4pp p`4p `4%PGPp`4p p3$0 F  pp3p9)% G  3p  3p| @BCJEzH0JKBM,"./R12470J9:>0?rDH} Fyyu:I0qJmmiN0eeaR.0]]YYUUQQMMIIEEAA==995511--))% h! # 0 ;" C&: 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , P t     ( L p     $ H l   !7q5 5`XX VUP!9H"@ = n8pP 0p`"_8"`8"d8@`4(b  8_$8|& (8P#,0(-08(%40(-88(%<8(%@8(%D4()H8(%L8(%P8(%T0(pPX8_ \0(d,_0`8P_d8X @h8ppl4_@p8b`t80O x8p|0(x%8P %0x-8P %8P %8P %4P )8P %8P %8P %0(-8(%0(-8(%8(%8(%4()8(%Ą8(%Ȅ8(%̄0(x%Є8x%Ԅ0(x%؄8x%܄8x%8x%4x)8x%8x%8x%0bA8"P0`Pt | -@($8_pР8_ 4@?8($8#_ p8`F/"0(- 8(%$0(%(8(%,8(%08(%44()88(%<8(%@8(%D0( LH8@ L0("tP80GT80PX8_0 \4'`81_d8(@| h8H*_H*j.p;H.lc Gc%6;3a;4;Č< ;T;3 ;tWUSQ ?0;$; @ ;D;|A x;dp;3 h;`;X;C0P;4H;ČD @;T,;&0;t; ;Y4P ;$;@ ;D;A :d:> :::40:4:|> :T:|? :t:: O0:$S5 :D:&x:dp:&h:`:X:SpP:4<:-6 @:T8:U 0:t: : W0: X 26 }9|Z 999[0949Č\ 9T9e7 9t99 _09$9&|9Dt9sg@l9Dd9P\9T9L970D94H9Čd @9T89e 09t9/809r9*mD+$v %"zF$Ey 20eShy߀x}pr@(P@$x /x0x@@0@` [ zўBpb` ` OG P @a"x02(!ru T$tp1p0zz[%vj fG xpB& Px sEy !r @x1@x/0`P xP1p`@xA!p$v 0T$x!`j$r0 T$x @%PPPp%p@qj0 `@x/0U%x 0! p %p-pA r1pRTx0!Pp!$AyΟfG 0Wx 6$v@ax !x pC0P `$ @%P40!xP@ x<@pBp@rk@@x"@@rA 0r+2P0rC @p! P10 0Vx0A%x PB zp04    %`! F Ua%@ u a% @ E uh  bx@@1%xP080x`Xex(e/x! B z6 u0 (PO@p TP e z@T@   `f/ a%ad% eO@ux  U z 404@%  PpH ư0"p4 P0T `P@  !$0&A$  p ug"%x GWhppVb@5Evx`!/p@1%x  #P!O# 0!菀$ p @%#  !P/0P#$ S 0  P p(  0+x0``p`p0&0P f()6%  PE CP& @*bf/ 0uNx pӠ00% 0% /0 % P0@% p3 0 -C A r 4p 0 `PPPf% `&P`) PA $ 6` @ fypsDAGyѪ    5x  p% 0 )yp1%x `    &y0p&yb % % @APDs 0DA@C{MhPEx0 &0 @ P;x@4 p00ÿ0 ?  PT$xp 0v   _p$z $!0  %  `E z0`$%r % ʠPcy P'xVUUU 7$t @/P rxTd zg`>r d 0 vl P@y@ 0 1x 1$x_hGP @@ x@"p`#M  % P% %`,z   p:z*'  @F$x`)!xp`1$x0cx 0&x p0J$x*% 0PPp y* @)*9   1Ey #o'x)`9yp&vpPA r Dx`#@0P!x A$x 1$x&M`P  %Ơ 0Ey  @q/y!y! "7zZ$z* ' 0P P6'x4O'x  E z@    \J'x ` @#i>rH'x09r`Tr u z7  ;$t7 H z @!>r @%v9 % Ry=@+ ) ' $  $   E@mn0`*&`!#P@$@  /@$t /p%pP xB * a$`+ pT`!T6$t  1x* / " q)P0Pq93`p0pp&t ` p#PP``  "` */fO z&x$  0<pHx`Ex P`! @$``@ x1$z  p;z   % x' `P' ( 6'x@`#r`$0%0 0" * @ _ ir !$z' `0`G$ %p%   6 0+    08\PYG @p8p83N`&p88  (Z`*p8 p8p8p8(P"p8 p80* 68  $#6@'%`*881:p*P #+0907 8p  '`8#,8dЀ8 `88 08 8PP27 8@8 8 P8>8`8`8`8`8Z) / 3Z60`8Z4Ơ60`8cZ*5`8ZZ6`8%`8!2 `8`8 `8`8E`8%  `8`8  `8 `8`p`8:`80`8(`8`8p`8u`8r0`8 @`8h  `8<_`82zsrG2s  0s. $ Q1`sa!$rp Q$r@ O`0PD 901'r @:1$rPH!r@04" rP1p@"$ " @ z7T r6pz "'@9@9`;P!z@:` 9&t*P*A :@O *(b@%9 &z9D@ +O986x09PU z 0 /0`6%xDP  @p`&E x p%P ` 7 3>r0 PA`@7 G$ @0$ 0PE90) 0`Eʀp 99!*;$@VV ,% , ,VpP/K pW`Zb$P WNZ/ `+>@@'P'W!`M-S$Mp   p     P0\U,  RTW(: 55efb% @ ' V$ @0 0  0WV5VpQ&30@! @ &Q3*`)H @xv&'v@Tw> P@%0^Up`TPj0.1h@2X0[ 0X  !`"$ T~@8 /  P `6\ F zp   H z @ ` S P0 NDnD66p6Bp66}p64 p6636 65;z5500T+'rkP+p|6366 6'3-0F@7p;6 5Yp56U:3p`~ 6@G_. pp 4 p/pp6@K3#$J@/f @|!E r&.D@ ~5pROp$.ʏ h R# :02/5 0/U}PuE$ UPqH8p  6u!`I6$Mp 5`6|@p0 66 @pSz`p{k%0 P 2 &1-'PzO @`6 P@p6N@2``T 6&`  E%  0ppM`|`v  'G/`a d109 0!  m00p@}Wր@G KE%J 0 0 &  (0 / @ /      0 8@@3  @ +h@@@v @ 6py`P?0xp666%% t0+/ `& ưȠ  Ȑʠ4vP7 qp=07 !zxPOzRp@6yz` Pp79xp p7`>{ T @xT)@g`x*t\> ApP P0p  0{ @P ypq+ y ] 87VPa=  p9@Pr`pTq @8-BU,@sБrP8 5s0U 8p5M`Ppp    808100 p0f0 0080006x 0"/TP8PPP  @+%E @ 6x Ux P#;9P p% 9+    P@@&@m @@*00 P@Q /0$@@0TSS0")y`/@\ pV>T )gPP&r?P%0 Sp$6y@Vy%::@ zzr% `*/`Ȑ9z/"0p@@Z0.;0!y`0q "`,p q q qD␩q(PBPq`  o``? 8 `o 0:$x`o 8g0@/ 0phpP`o5P `o Ѝ`5 @k/`o 0r04,vl`&zpl`o  `o `Q P p `q&xP pIx93t`o pPSoİ>y 8 p%`9r jj6`)rm`>p1 o%0p Po0H%v`7 ! oPRn1 o%p5S) 8 &v7` @UЮ9%`0%oo5Xo7ƀo 7oPpo` Tpo` 5`op7`op@W&z `o o<`o6 z ZP `@ o@8 po;oU U o@`oPW 9UPU U`U 7  m2S`5`) l`005 mm 3.JO #>2 / `105m B p`23n@P8'G$ n3 n*bn& p&z&% n n 6@ nn*T nP nP1 &@`Nn'>[ @n)n'%`5x n)PnE%n 0 n-m@  nnP0Yn 03m 4 0 4@n!$29b |r* * p $!x   ]p& s ^FxQ$x:pP%P!]0$[ / U p3 p3( p3p^   @x `%@x @x&v _&xP^_5x @%&$ 4 !  &r ! E$xY aE% @%` p% 0`4%`  `#R@ p(@@@   0r `# r7xU x Er$(P Kr` Ġ$` p@P``$5% p 8 `E% Pa% X7a%P U u(b`%6x  @?@ &PyPx&1%!Eh&@'O@T p %pFpp`!xP!#'aB%%$ 7ux TA  &%!/Op`"!$0`%@```& 7? &@> &x@h@b0% !E !x `}P`5x0P0`0'S/!f` 0@'0@@@(P`*%& @h%07P`&&&fb%h`0@ 0uxpDF $0% ` 0 $%D@  p0pP$5  @ p   PkE%x@  *%@C%0p&x % `    $ 'P/(3 03 3 ` 0 3;x0Cp@`  pA`lP`Pf,$ !pAd_0%pGmв7xe 0plMgʰ  fp7Ex @ * pl`plNI`lG c'$Pgpl` NE rPf5F 0L 05 pl @2p3le3 0 * % `!z n`ux  &x p8x o $ % :x`/ #$.Zx 3%ph`3J@5N9J k* o@  Ȁ lE *$`E%@0M? h*Oip!  L5   @#l"gD  @/l@q4P/lEx  O5 g9 & @  P lh    + l 00E%00 +@@"`t l ȏ@@+l`4 O)ȠpƠ` p b`l% pl &x 0v Rpl;l0 ll ll 05 lllll"4al))l15Q Pj 5#PzO j 5@Pf,k pp2  j5ذkpRp pP& `Ї`'0Pf ` `m`  5p ```G`i0)6 @5 0*p8MƠ '0k9 '$1Z#"%01WO> "İ Q O/ pp0k!p. kp, k  k k*"0X kQ P kINQl- k@P  -P ]`kP 8 k"Ypk k 8 k8 @x)  9$v ,pk% 0, kĐ0Pk#@8%`V#B8?1p/5r@ #8& 0Ix ( 0m 10@8$ @P   1 08P%!Ex/08 B z 08Y`' %2Y   45 /0xY 3ZY`8%0&Df/ u%33:d08WO4fP9ux P208& 089 E% @88 'T@84 `p: /0(0؀`0808&040   856`(& 8% (64 0Cr0 @h080808  08 6%  -&x0`08`080808 0% 08$  9;s 08 08/ 08 8 7kڐE   , 8 P 8k" dJ/8/kp@ik0x``N0P F  䰣 % @B` N*"@ptPN*/@ - i%pM r$p k5x 2k  Ak{ k Q kp3`  Mk &x 0J$xE$x İ@;kp]Jpk` pP`@ k8*")ak 9p7p @T@ &vk4`8  PI0NpR kƠ 0 PR` @`Rhk"`N&zk=** ' P P puO'x *6*/ S70U:"rJ'x ` U5p0(06rp&r  Wr  ;$t@H z @1%v@ P % 0l  ' % P:$ Pn VȰ SPSb* /PPl5t /  p40p T@OPpipl*%Q4 "pq)0z9@0`p0pptZ p#PPn`` Z` @q'zp$ Pp`@  c% P`! %6 i` L p` Y5z `8x `P'8x 6'x@`#r`!pE'x0 0":x p@G$\Ir `Z2$ ]"$    "rrA0"0 +  '  0:: / :M`0pJ9p9pP} ppt `2p x PP @2'%v- w r `P  : <'  $P~p49 5z@ p9`~r5z  9 ``56x@\9Đ90px ops P P"rP`9 pP! p S* p S``1 9 *q*`>%q9`;PpS @p*‥A P⠥*(b@%9 Pq0V WP F z 0T*( 55%fb% @ ' [5 opS`V5V30@t ``:> )" @Ex&&v`04"1%PfUp`P5xP9`\0[0 X  $ / ~@8 / 46x tf/ zp  @spH z @ ` P_  P0 N0kim @zp`sQNA )1sEI$a3bs+!$rQ$r0{pO$r `pHSrT'r PPY<@ Pw0p0TrkP+p|#p@ 32|@ zn3-0p1$ p1`"3PKYh&pU/  6S_0 @ p/)&zKİ3ХJ`K' . }@ ~ pO0 AgTPU/? 6  /E r`8p 00'P~6'  O6,666C`p 6k'P TP  '`0@P   7p6ЫN@2P'$ 6& P +%  Y  00P!  m00p0 PU@pO  T 0 / @ K/      ` P 8@3   @@ pv@ PP`Ex Pp%0%% t0/ `& ưȠ ȐʠP!p=^07   6y}2{ T`0p` t \  >xP%  r p6 `{y7%Ъg<<  8% p``a`(/@Prp!;T@8 P8BU,@s8r6 6 8ppppp0V  p0E 0800  0f0 0080007x /"8PPP   @+%D 6x $ 0W9` PK0p% 9 Щ P`w@&@m @@@00 P@Q /Щ! 0z%tS S` Y`TP@\ pVTP  * ?6>r@[P%0 SȰX)y:U@@[0rzzr% `*/` *  "*@ȠW0.;`@!O 0=`,$ ЧD ␩(p @]&Нd ` % G @ P0 ````P @ ` ` `Ơ0U`a% pQ%  %6 fh Pb4@ Ц`Z`%````pt/x%  3 %  p+`% p`P_`  ` ``p`:`0,0`( ```p`u`r0` @`hp`f :``? 8 `"600@/_;00pP`o5`o Ѝ`5 @k/`o 0,vl0`o l`o ' ;*M 2`8o pPS oİ> 8 rp@r jo26t`rm`>YyOpo0 Po0H%v`7 ! oPRn1 o%p5S)  `@P*o%o8o1oƀo  po` Tpo  1x`op7`op`o `o poP x7< ZP `@ o@8 po;oƀoU o@`oo U9UPU U 8`U7  S$`54`) l`0` mm 3/P0kP0$>2 % `1m2  pW2`6n` @P8'' n3M&*bn& p&z&% n n6@ nTPn nP nP1 @@Pn'>[ @n)n'%`5x n#85n 0 n-m@  nnPn0Y& M. 00 m 4 0 4@n!$29%x P# rLS( /x01x p@@^!x $]!x  ]p&&   ^1x`!(A$x:pP%P!]0$[ /3jp3 0p3( p3^ P*  @x `%@x @x&v _&xP^% & 4 !  !r0 E$x(% @30%` p5x 0`4'"? ?? #!&P9Ayp3(p35@@   0r _5`3@# 5 r7x x`pB!x1r`3P Kr`3@3_Ġ5%3p3+ p3 -@&x 15 >5 9P3a% ;7a%P U (p3b%p3  .3 @?@80%%(Py1_1%PEvhu O@3T p 4Xp34P0&p34@ &P!xP!05aB%%$ 7ux/4@500P3)P3&34P!/p0`"!`36%3`` -7?p@> &x7Vh6b07 ! 7!x 6`qx 6S 0`0%p'S`5C!P/pgf`Z  #T x ڠ  0@ذ'3@Ġ@(P0%& @h%07P&&fb%h`0@ 0uxp!菀F $0@:% `j 0 $&p %  $-C.@ r@ 1pp`a}0 5 p3P `fP0 (p$5 0@   %VAGy0   PkE%x@  *6y a%@C&y0(%p&x % `  $ P;s $ :0.KP/( 03 Ȑ ` 0 3;x04p`lpAP`@&x% F_03%pG rmP7xe0iiMplMgʰ fp,`plkGK  c'$Pg@,g( Pf5F` pl @ p3le3PJ@PP k@O   l'*$@ư pj PC hWO0H   W#  k/klP/l   `      + l 00"%@ '>0@@+@@" PPExl ȏ+l4 O)ȠpƠl Llpll!.`l OPll ll 05 lllll"4al)/Pl5Q Pj  + +p^#PzO j 5@Pf,p2  Pذk5p pP& `B z 0`'0g ``O`  5p ```G`W00)6X0@5 0/&P5p80] '0kG 1W# WO> "İ Q  / pp0k!p. kp, k  k k*"0X kQ P kINQl, k@P  -P kP 8 `8p/# #@0D](p;[p 88 ,k k8 0)1xP ( 9$v ,pk% 0, kĐ0P8%P,0/P-p 4-,%`V@ B8?1-8-& 0 k 0mk k10@81$r$ @@m kk k k kl1 kk08P%/ʠkYp(BY`' c P- 08kY fkuY ikZY`8k%kkk0hkkEk% @88 PBk  k k`pk:k0k(0؀q`08085P54085&`= 856(: 8% (6$ 4'Ckr0k @khpD 080808  &x 6%  A&xЙ08`08 0808 v E$x 08$  9;s 08 08/ 08 8 7k=D P$0 8y0FPG` 1JkH`Kk 7pN@ F@ 0%PNG' ` 1' 5x 1N &dx/% dPPFP]`NZ$z' @ml p!x ef/$x @E$x p( @EWx0g Pp70EQ@8& " Q`60-bE' P`2& f' W u$' 0P) X ) 6 p!6p%p TpQ8Q1"%@1  ORpTp 1@2E 95`G` H ExQ$x Q0  0 S 0QD+t pT Q%0 p p@4PQ PQ.6$zpjШ0 6$xp`%0 pH'x@6'x !O0 Q Yr0* 0r0 j!v@T8'r)z UUy R%@0T 0*0+ 0)0@@# T#GyF0`3-#@@ 5@@ d )UP'(0 @#pA `jПpKj`Kx 'r`ʀ/ M%-08x UG@5P0[{`@ +Pp `P)+6$x +xZPU02] p YpTp ($tPP `  4`%̀ P@ M"a) .j93Y 6$vP@4P#Rp #@p`  @ư,`00`W$z)@` -O  Qp    V >/  5z   V p  @@. )$@ @  @@ @#7 $ p !p S S  po /05  S м0!zp@@6$xp @5x7Ā H z`O@E7%PWyP+t @&t` 00`?P ~ PS  o' y7 &z3pI`45z@%0P` @ `7`7 n `p`P?$tp %p@p`@@*%v &) >@198 -1  *Po*!%o$0 P 8*8 S`& /9 PR  t8f z P p!x00rB x0 s7 U%x ~u$098 7 p8`8  BT$P?xT `P o /K S 0bPPp-p ʰ`S SpUpa    `  `% p* * '  `SPS 09`S`S 0`S@S:9&0n&P8bp &0&@5 5'`% P 25 `6RR`E% 9R R `R0RnRS p!x 0; 031PS,RRU ;I 0:S% 6% 8S_Gp>Q@k  7Ġ R   R ̀>pp'x )P6 p ` 6 06Q R6 zP6 RRNk @zmP0sOA )2sq$axas!$r xPNz0xpO$r `PHCr@T'r zPY<@ 3`t0prNpy#p@ !p2y@ zQW r2-0)"$`p1`"3cP4Y5,mmp _0 `m03 %55pk5Т " {f . z { `m0#gfSP.0  PP67``  /l`5`554 R/Op'@M`Ni 5` @~-/p01X OR@p|8 P0 `L+08  Pe O0! i`P 01  np1& !([ p~P-/+0  p/f E%0  u`O  /$ `} % X%W( V `pPp@  5 R@@@ @ u 0PZ ` @6*$5=5z 4% P5P`*$< < )P!z PE%x 5p@0=0/ * ` % @   @p@Ro-B6$Pj4P6 3 R 6p6 ` `PR$M6x *O06&5'/@!' `K&  S+`6@Y  0` Љ#`E``)`E% PP5P6 .*P ,$%Xb PP9F @GW// 0H Y#6$v@  # p ppp `= @@=@p0  / p` `@ p m0=`)$ & 9x@] Сp\ ␣Ɛ#P &ЗdЀ `  C @ P>``$``P P$```uР`Z`%``@6``E`%  ``  ` ```E,0`(` d`q`r0` @`h`v 7`55, `k `O `O`O0*x5 5fp е `MJhPPL`k%3`k P.@'$t @v00 `k' 8*M `k 3P`p,z  m08x6$x@:x pp 6k @ 0Ġ; kk0n Oi g n/jЈk % pka k j k%PY pp 5x  P5 @5p kU pQ @Q504(@4 pk@06p5 4pkPpk` pkk6`5Pkk`QR kpk k Qk 5k kQ 05`&`3$@`34 ilJ pi@i0i  i v i   /h@İ) /zPL0P* ' 0   gP jp&v0+  j  j2 0 6 j  j0 jE%  j%  j j `Ex ư*  i 04U$x4 PjNPj( @G$x@ Pj*O4@0j`h6 j@h&@j* j8P40j`j!`N@jjĠ1jiм6  j!#1`S%x "r3$( /x@x 6@Y!x #$ "U@ZYp%@!& Ɛm!xpe$xnpP$P ]0#[S[T0v `p2 p2 <!rZ$   s `$s s@0v  PZ% @$ԀP   + !r E$xpq'% @2% 5x 0'"@= &A\R@ % !P  Ap2(#@ ?  0r _4`2@ 27x`` x`B!x1r `2Gx`2@2[ p #p2&A%xP`p2 Ƞ#,@&x 05 0Tu% Wa% U7a%P U u(bu@ 6x -2 `9@80$%(P,_ P'1%P&vhu O@2@A E'p u4Xp24P0&p2p2&P!xP!5'uB% P5 %$ 7bxpa00!P0 p 4P!/p/`!`255H`#0` 0?, EP* &f&%xV&&b07 ! 6!x 5E`qx 5S 0`0%pP'SC!P/pcb` $ ڠ  0@ذp'2@Ġ@(P`)$& @h%07P(&&fb%h`0A 0 f%p!菀 $0!` `f 0 $&p %  $-C @ r@ Dpp `e p2p2PWP0 (p$5 0 @ %A` &v ^ PgE%x  )6y `B %0P)&x % `    $ :H4P/( *02 `}Et 0M ;x0 `h%K +p@`a_0Pf0j !x` 0/fPph ʰ@c,@Kph00ph 4* Eph"I2  ux 0 :x p j 6xP`p:zL ' .pp $ЂP; @N5 hp   f 2% 0PK@h)@G8 `cp hȠh'%0fZc& 0   Ѓ% `M 9H:$h pd36PIYp' h-OH "  'vj& L%Н%PP ;0` h!q` h @9x pyKo 2h# pg  LhC `hpM 1x  h 4 hRpPM @3-3 p'f f `Yi@3p.ppp f * Mf"00@0 g0 g 0 0Ȑ  g `K   "% 0'pb*6"03 1%p'( g!N@1pNP&p g g:@X".@5x 95x 0P` % @p9x @@V#@ʀ/ g@3-!x g0PP g gO gggP-@@ ԍp`!O (P 5Fx5p,!6$t@5 Yp!z@@P8[ 55 g g5 @3@xp5 5p &)pg gĐ-P5@0,P* $4P%) ?+$p,5r 5$g 0ig g.0 g@i gg g gp& ghCpP5 g05#,ʠgY%XYp& _@#/Y05 15 ,0gxY egZY3g%ggg0dpDu/ @u%007d05&1GO1fP6ux P/05& 05@  gEg% @55  T@5P g g`p05 10m,'20 5@^g(g:gugr0g @gh05 0505  \ P%  >5x 05 05  0505 r E$x 05В+6;s 05 05/ 05 5 C 4g4g,# @$ p G06 g ` g 0p/0r33A 1)z` `>r ` P0{$e C5 og08xN` P G  y0rP9@ 0k:9a g j g@Pg`o  S@{' `80O3  @*/p*h h`Og"`% 5:` !  `Ƞ% @ OP ph!0r%P0Q400r/hhM0V>r0#>rP"J&r00( 06r 4 0A N&tP> 9 У+ ) ' $  0 @5nй_ P#P@$@ h$0` *{`M GQ@O`S3 @ ʐ  P%S3R"q)"30q9 @.``p0pp*t pPph@k`%@*p#@O po6$x  'p  oP!%PpEx P`@% 1 Z`h x6$z #p 8x "$xP'8x 6'x@#r`pp5x0@ * @@$ ir "$] `0G$ ;Y"P  0+    08>mB3N0pmW800Ⰽ`` p8 p8p8p8*p8p8 p8 m8%$p( +8pD,D a&x+0 f9&r䐠` '`8#d_m o `86zׄr#: 40PDPo0T'r P:!rP }!r@04" rP`@t">`"p`pi@z0>9D``&p+ 8Yz1 : /  :p`lpPp^5xĀ 0 p p9pPzUG ppS*t)t  `02jx P 2@v ` 7 : nP  : o'p&xp4`&zPxp4` p` 0E oP% `pm B9\9Đ9m   @509p-@&tm!)  S*9c`1# 8@ UUPo*@s%PU 0 00С&v :n09b@*@o O 890rP96 zP  f z p /0`6%xD0 @p`E x p5P9` @B>r  4 8 @ 00PE9`) 0`Eʀp U9!$@`b%z x ,pP/K p`b P H0`J/ `+>@@'P . 1   p     P ЍU .   r&9 (Pp  Q56% @ ' G$P[5  p 0P003`Q5 V000Q)0V'$=E @Y Q:>`&5 ֚sv6$&v` @!@op%p3#PjfA@2]@`i 0`0$  !`"$ / p P V/ zT%  8z @ ` S P0 NPnD66p61 )1s00$Q3bs+!$rP5P4Dp64 p664*pHDr 650 55e!r 6 0T6P+p|6366 6nW r3-0FP7"$p;6  pp3 U:pp4@G_0 @ 4^@9x&zKİ30 & ~&. }@~5H0GOpXʏ 0#gT.PU PqH8p  60!76$M' 6p 566|6,66C`pp60k'P 2 y  T[ `@7PT p67@2p`T 6@1px  :%6pMY z 7$u/0 G V# 0 02% p K 0 09 &   K/0        3P @ +h@@ [ 6py`Ȑ%6%6( p / @ ưȠ Ȑʠ4 P7 qp=^ p zRp@6yа` Pp7&xp0@{ T`!xz3#\*t\\ApP P U@P` y0xВT0yT@? 87VPa@prpJ;Tq @8-B,@sdr6p.pppp   5 p0E 08100 00f0 008/&7x /TPP@P  @9x  0;9 PKp%  " o@&@m @@P00 P@Q /`$@@!z0TSClP:P` #"@\ pV*TP!x)g ?P 00TPp0&y*X"Ə@ zzr% */S /"00p@@ȠW0.;`0=`,$q qqDqq(q` : o`; 8 `o &x6 8 880;9pP`o5`o P`5 @k `o 0r04,vl```o `o 20 3`p@:zo '  q pIxP38o p`oİ> o 8 r@2%`9r jjP `km`>p00o %0p Po0I%vS! oPRn ! o%p5S  &v7WV 05xp&9 'Po%@o17ƀo 7oP po`po` `op7TPZ@W&z`o  o`oTZf/ z `@ x7o@8 poƐoo UU o@`oo U9UPU U`U 7  m2S`5`) l`0Ш` mm 30kO@kK#>2 . `105m  p`2`6n` @P8'G$ n3M&*bn& p&f&% @R n6@ nk4Pn nP n '$@@`n n n'>[ @n)n'% 1% n)PnE%n 0 n-m@  nn 0Yn013m 4 0 4@n!29%0sx 0T rlC(`Dx /x`7 @!x $!x   ]<@& s ^FxQ$x:pP%p@` / U p3 0p3( p3^ v  @x 0@x @x&v _&x?% Up0! 4 !  &r E$x aE% @7:%` $5x 0P'"0^`R`^% #!P PYG7@@   0r =3p0` x`B!x Ur$(P @r #C P $" 0ƀ%a%xP``$% Z  D p>5 9a% ;7a%P U u(b*w`%6x`Zp% @?@80%%(Py@&1%P5vhu OT p 4X`TP0&4@ &P!xP!w'zB% %${x40q !P0 }4P!/$`PO`"!$0`5H```g? &@> &xV&&b07 ! !x `}`qx B0# 0`0%pP'SC!P/pf`G($ ڠ  0@ذp'0@Ġ@08xP`* h%07P(&&fb%h`0@ 0 j%p!菀$  $0!` `( 0 $*@%  $-C @ r@ 1pp`ap 0p00@ 6%PWPW (p$5 0 @ p%KAGy`&v   1PkE%x@ P &y a%@C&y0p5yp&x % `  $ P;s $ :0.4P/(3 03 3 ` 0 Ф;x04pP`4 !% F_0`d%`d @nв7xe0iiMplMgʰf( pl G I0j` c'$Pgg+ PfPf5F H H 05 pl @ppPN`1le33* % !z n`fx &x p /( 8$z3K$z3$ % :x`/ #$.Zx 3`4 NJ@5N9Jpj @O  Ȁ lE *$`E%@0M? hQO0PgpL5 O  lR gD  @/ljl4P/lEx  O5 g9 & @ k `      #l l 00E%00 +@@"p @&l3 ȏ@`7+l`%O)ȠpƠ` p b`l% pl 0O l0 4ll  kl 05P 0kllll"4al)/l>5Q PP  + +p^#PzO j 5@Pf,pKOp2  j5ذkppP& `B z 0`'0g ``O`  5p ```G`0)6X@5 0*p8Ơ '`'0G ̀1Z#"%01WO> "&2`Q 0 / pp0k!p. kp, k  k k*"0X kQ P`X kCNQl, k@P  -P ]`kP 8 `@# #@0 8` jY8k k8"pk $ 9$v ,pk% 0, kP-P#@8%`V B8?1-@ @8& 0Ix (&v@888@5x (10@8$ @P% P PE x08 Dr80 $7Dr8%P8@8 0%08 08%/08 p4Yp(/Y`'% 2Y08 45 /03E%/4& !@ 08P8a% @ 4 p6 Pb`1%0p  8 40 8%8073&@8e/x ! B z6 02%  (6$`/6 0`8`8F086@608   f/ u%3 d08&4GO41&P9 zP2P6& 089 &8*5% P84 P@6% 7+p7&  % P8E P8P@88 PB@84$ p  2&'g"%x /P35&@2&b@(8T35x8`;(@1%x  T3!O `25F 08@08)08/08!08'  P66 p(  8@p.P@0``08`0808&04  8)6% 8 PE CP& @*bf/ 0uNx pӠ08%0% 0%  0 8$  8% 8D ` 0808 `PP0808 P 0808$ 08@0E 0808   6%  &xЙ08`080808   E$x s @A 08 08$ 08 8  7kڐE  P k" ddJ 1$zGkp@ik"x  G0P F% PB@NP*`d(`MTr7Pp k5x 2k 7Ak{ k k k9k Mk0p 0J$x5x ;PpPp] ` ]  ] 98tPP0 `PYrP@ k`a)j9p7P @T&vk4`8  1$xIBk K 0@R `h``NЩW$zW$z K$x0 0`P5x @&r`U O lk-/ pgaUPl*60r U5P7H'x0>r fr08x 0Tr   @6r P&tl( @ P % 0l  '  P  6U Ȱ SPqSb /Pl Pl %``0ʰS@OQ lpl%Q@-"q) .0q93``p0pptZnPpP`` `` @q'zp0 'p  70!%PpEx P`@% %P W`,$` Y5z `5x@_P'( 6'x@#r`!pE'x0@:x @7\Ir `Z2$ ]"$  (s6>r "rrA0"\ + '  0:: / :M`@o*x9` %0Ā0:?`Q9t p9pP} pp5t `2` x PP 2BvC< 7Q0z pp : o' 4 $PPCp49 &z @``'rP% `:p`@@H\9Đ90p 9PP P@5`У9 p P!) S* p S``1 9 % >P>*`>%q9`P`pS % Y5yA P⠥(0 P`P9 @P f z 09/ `ƀ9 z p` xkP{ 9`pp : pp Y :@@`@X ʀp91# 20!x@1 /K p `*bp00 `@ @@'P 2     p     PUU0  @>q)  5efb% @ ' [5 opS5 V 30Q:> #4" REx&&v`P4 P1%P^UPjPQ`\0[X  $ / ~/ 470r tV/ zS   p8( @$>r#P"P_  P0 S!0im n@zp`sQNA )1s,$a3`sH!$r}0{pO$r `pHSrT'r }0z <@0!b ,0p0THrkP+p|#p@ 3u2|@ z#pR@Gr3-0p"$p1`"3+P5Yp5#$ U U5 6S_0 pp 4 p/)&zKİ3ХJ ' .t@ ~5G0УgT.PU/5 L  4 8p  6P~U' 6 O6,666C`p{0k%0 P 2P&P5  7@p6N@2P'$ 6` P p+%  `| z ``00P  m00p@}PU@@p; 0 U _ @ / `     3 P37$@3   @@ pv@ @ PP`0x6%% t0+/ @ ưȠ PʠP!p=^07   ` Pp7`=@ t \\>xPЦ r p6 )y@pP r )0 g<<  87}VP|f@00p9p8;T@8 P8BU,@s8r6 s6 8ppp`Ppp0V  Н0E 0800 00 0080007x /"pPPPP   @+%D &  $ 0W9` p% 9 Щ Po@&@m./@@@00 P@Q /Щ!  S,? pV*TPT= ? >PT 00TEyX&y*V@@ zzr% */S+s p0@@ȠW.;``P!O 0=`,$  Ч6Ey␩ Ơ#@]&`Xd ` 0 G @ P0 +``Р`P @ У`Ơ0`cЦ`Z`%`` ``@)`@`%  ``  ` ``p`:`0,` ``p`u`r0` @`hp`f :``? 8 R`"600@/_;000;pP`o5`o Ѝ`5 @k `o 0 l`ol0`o l` Q"p`*M 2`o p@oİ>  8 r @r jo6t`rm`>YyOro0 Po0H%v`7 ! oPRn1 o%p5S)  ` @' o1o7ƀo  poT` t@>pop56`oPZ@W&z`o `C o0 xk<6 z Z /Po`@ o@8 poƐo oШU o@`oW`o9UPU U 8@7 S$`54`) l`0Ш05mm 3/P0k1 $>2 . `1m2  pW2`6n` @P8'' n3M&*bn& p&z&% n n6N@ nT nP n'$@@`Nn'>[ @n)n'%5% n#85n 0 n-W  @  nnPn0Y& ML.010 m 4 0 4@n!$29%1x PrLC(`p/x0!x @!x $]!x  ]p&&  ^1x`Q$x:pP%p!]0$[T?/ p3 0p3 ^   @x 0@x @x&v _&xP^% & 4 !  !r0 E$x(:<%` p% 0`4%`   ?? #!&P Pp3(p35@@   /0r =`3@# 5 rC 'U x!xEr$(P Kr`3 5x3p3p3P`p3 p3 18 `E% `a% a%P U u(bP*w`%6x .3 @?@ &Py-P x(1%PE6'O@3T p %pFp3`0!xP!05aB%%$ 7ux T00  &3%!/$`POp0`y`36%@3`` -7<&@> &x7Vh@b0% !E 7!x 6P`5x 6DP0`0%p'S0C!P/pgf`[ $ ڠ  0@'03@Ġ@(P`*p3& @h%07P&&&fb%h`0@ 0uxpT& $0% `j 0 $%D-C.O r p00p3P$5 0 @ %VAGy0   PkE%x@  *6y0a (6yp5yb % `  $ P;s $ KP/( 03Ȑ3 ` 0 3;x04p`l%P`@&x% F_03%pG @n7xe0iiMЃ Mgʰ fp,plNIPg@,pl+ Pf@5F` pl @ p3lPP NPPk @o@   l'*$ư pj/ h*Oi0D 0  l  k/klP/l  mP l    + l 00"%@ '>0 +@@"Ex PFxl3 ȏ+l4 O)ȠpƠ` L#pb`ll!. l 4ll ll 05 l0k<lll"4al96l+5Q Pj j#Pz0M j 5@Pf,pOk pp2 5ذkp pP& `Ї`'0Pf ``O`  5p ```G`00)6 @5 0/&P5p80] '0k1W#01WO> "İ Q 0 / pp0k!p. kp, k  k k*"0X kp P kINQl- kP0@ ]`kP 8 `8p/# #@0D](p;[p 88 8k kTEy pkpk`k#`, ,pk% 0, kĐ0P8i0/p 4-,%`V@ B8?1-0)8$& 0 k&v@8 k k10@81$r 8$ @%P kk k k kl8 kPk08P%!jkYp(BY`' c%2Y h  45 /0kxY 3ikZY`8k%k2&086k0h`T%f/ u%33:d08gWO4fP9ux P208& 089 kEk% @88 PBT@84 k k`pk:k0k(0؀q`08`80080   8p*&(& % (64 0Ckr0k @kh080808  u6%  0&x0`08`080808 v E$x 08$  9;s 08 08/ 08 8 7k=D P$0 8 0FPG` 1Jk`Kk0x G@ F@ 0%PNG' ` 1X5x 1N &dx/% dPPFP]`NZ$z' @ml p!x @ef/$x @E$x p( @EUx0Pp70EQP& " Q`60-bE' P`2& f'  u$' 0P) X P) 6 p8 p60p%p0DpQ8Q60Q@60 ORpTp D@%95`G` H ExQ$x Q0  0 S 0QD+t  Q%0 p p@4PQ PQ.G$z0 '  6$xp`%0 p6'x jO QTr0* 0r0`Z/r kRPT 9 z U 0*0T 0*0+ 0)0@@# T#GyF PCʀ% -#@@PP @@ ~ )UP'(0 @#pE aПpKj`Kx'`ʀ/ M%-08x  @5{`@Лqr  , `bP` +x PU0+ pp YpTp($tPP `  9% P@ ],a) .j93Y 6$vP@ kBrg8 - P 0p`  @-,`0`)@` -O  QpA V0    5z   p  @@. )$@ @  @@`@#7 $ p !`6 p 0n6z4#`7B `.PBPp0T'r 2!rP ~Dr`@uK0 `pz 7`o&}+ IYM`1p S S , po /05  S м!zp@@6$xp @5x9Ā E z`05% P @&t` 00`?  ~ P  S  o' y7 &z37I`45z@%0P` @ `F7 n `p`P?$tp %p@p`@@*%v &) >@198 -/} Po*!%o8$0 PP 8*80 S!T0& /9 Ќ:&z  ;8f z  0P6 z5x F00 s7 U%x JR$@98 7 p8`8  BT$P?xT `P o % V0I Sb `k S  E$z W SpU  9/p08 :z % p* * '  `S PS k`S @S*9)p9PS+$`7&P!P'$S5 0&`5  V0p% :G04V/0R( 0ST0 *R*R*R SH  S R@5Ra$x ; 6JRV!x RRR% !"@k  7  R   R ̀>0W0r )P6`p+/` 06Q0P6 RRN0 bpj5 5p5p5:p54 p55#5 54 44H!r 5h5Npy5p55p5'2-0)P6"$`p;5 Ȑ4Y@.55,05mmp _@ `m03 %55pk5Т P[%" f . z { `m0# geJ '$S .0pP @T ~7`j 5`5`'0 5R hM/Op'@Mri 5` @~-/ppu 1X OR7|5 7 @  `L+08  i5 *O! ``P 01  0pp1& Ф[ p~Pf/$00  @/f 1%TP    `4   /% P}W% X ( Pq `pPP@   !5 R@Đ@0@ @ u9xPZ ` @6*$5=5z `5x P5P*$< pZ * PE%x 5p@Oy * % @   @no=B6$j43 R 66 ` `PR$M6x *O06 &'/V8+0&  S+`9p)  0` Љ#`p`)`E% PP5P6 .P Pp7&Xb PP% 76 @GX0/ 7H Y#6$v  # p 7pm `=@Yp0 Mp:0=`)$ & 9x@] С ␣Ơ#P &ЗdЀ ` ^ C @ P>a3  ` ``P P$`  `ƠFP *! a%  @60 h Pb%P Р`Z`%```t``E`%  ``  ` ``pd6 Ж-9d( `0`(` d`q`r0` @`h`v m`0.5, `k 5 `O5O0&x3. 5f`O Pl `M@Jh`k5`k *".@'$t @v00 `k `k  `n+x 4p,z  m0 @ x pp   k @ 0Ġ; kk0`k i g n/jЈk % PP gQ k j k%PY` pp E$xkk1UpQ `k@`k504( 4 pk@06p5 4 'rpkPpk`pk 6`5PkkR kpk k Qk 5k kQ @5`&`3$@`34 i`2i+xPP(J pi`i 0i%P p5z ưi   /@İ) ,zj``PZ$z  ' 0  g ` jp&v+  0j @T   j9 0 jjp2% Wb$N0j05 P4 5 " j% i%@& @j `@j N @jg8 E$x i3`j 40j+pjpj)`j@j@4@j%P `N @j Mjiм6  j!#1SyS%1xҰ rC(4 /x0x @Y!x #!x @ZYp%0#& Ɛm!xpe$xmpP$P ]@[S[T0v 0-p2 p2( p2Z$   s `$s s0v @PZ% ԀP 0x +oA$r E$x`'4 **% #5x 0'"@=!- p2(4@ ?  0r _4`2@# 4 r7x x`pB!x1r`]`2Gx`2 `2 `#p2,a%xP`p2 ,@&x 05 0TȐ2% 9P2a% U7a%P U (p2b%p2; -2  680$%(P,_ P'1%P&hP.&u O@2@A E'p u4Xp2&p24@ &P!xP!04aB%%$ 7{x&@4Cd0!P0 p  4P!/p/`!`255H`` 6, EP* &v&x6Vh5b0?7 ! 6!x 5`qx`5S 0`#00%pP'SC!P$@CЕcb`PC $ .S  0@ذp2'2@Ġ@(P`,& @h%07P(&&fb%h`0@ 0uxp!菀 $0@9% `f 0 $&p%-C @ r@ Dpp `e 5 p2PWP0 (p$5 0 @ @ @%A@6$v ^ PgE%x  )6y a%x 6y0(%P)&x % `    $ :H4P/(  *02 `}Et 0 2;x0 `hK /p@`a_0pffJ$r!x` 0/fPph 1ʰ@c,@phphPph 4PF2ph"I2  ux 0@% :x p j 6xb`p:zL ' 2p-:xH~PK@% hp    % 0W0@PK6f`c6$ fpȠh'%0hZc   % `M)6$h pd36PIYp'0 h-OH " h &vj% :xL%НPP ;0` h!q`  h pP9x py[R 2h# pg  LhC `hpMM 4 M:J xi+pPh3 p'`! f `Yi0pp.ppp f * Mf"00@0 g0 g 0 0Ȑ 3 g `f   "% 0'pb  &"P3  g E%Н g!N@ g P&p g g:@X"00.  @5x 00P % @`;x @ @@V#@ʀ/ g@3-!xgSgSg LMpԍ]P3g 5Fx5p,!'$t:;Yp0z@P8[ 55 g g5 @31xP5 5p &)pggPP5%P*0,P*4P%Ⰷ-g5 `r!!`*/P.YG5% %P0iP` g` .# 0i pgg  5Ā555$5p& 23g45P5! @5&g @505 ,ʠgPB z 05Y% _/Y05 g `0g g0)g 9gg 1ggY eP0%* 5%50h4`(&@5A42!  B z g0/ `r (31>@25zg @5`5102 3g 0d6E a%051d05%@3SO1.5 p P/P3C @  g%@@3% 4 5zg"p% P5T P@5  $01$ pg8&`ua"%x PP02&5 b@(5A25x5`8(@1%x  cP O03 `p2T  @#@ @5S`057Е0505'  P3p05gg 0g(`0505&0050& 5&"  PE C& @*bf/ 0& p05%0% 0% /0@T  5% 5E t 0505#  0505050g `g05`05`) PA05$ 0505005Us05 A&v \ P%  &x05p] 05 05p&y05 r@d1s<@1s Hp6Ts @ #` 55  4g00 M$ pp   M0@0 &xPd@C0  MWb'& PE % 0|PM-@}I`/>_ E!c `%Je @M`gB Pg* `g` 0g`g0Mp#@ 1% }@ @O    MB @]`@ P"p ` 6x<) 2"hPu' 0δ u"' )`6) @g  `>06 P E' @xv41>{6 cO6 PiP >``>MpL%M@`!`0 T0   G @H Dx 3    p  0   f't 0/fd`Ā3f0!H NR` "@`p`k `4' = *' z@u/'x 0g` p<@OrN P@x  П>PgPP@x P# r9PиP@p@x P@>Pg0p@ @СE%v0  ) ' @ Z#GyC0PP=P^ p`JOp#@@g(ppxV@)   ~g `t0PxKxF'@Kp py0@ X@{@  p ,;$x@&xİ3,@ !`(p Pb#t@R  P;x9%pR9p$?!0 z)`#z9 "i!4#` $1$xapP +t @ P&y@&00% @ mkP  n 'O.%@ОZ08( PpNux1X`A `U   p @Z%( 6'xp#r`!J'x :x @@"$O r \ `W0p "$` ">Є "%v XF>r P 0`0P ) ' $ ! llfhy ]lp3kl?"l#l)lPll5pl p3NP kp( ЋP'p_@ 6 66666 pp` 7 P#$@50 %p%:x(D `&xP*508&rph7&P7b7  666`0 6 7 l6 766@16e P11`f -06xg*0I 6`f666666E6% `566  6 6`p6:606(066p6u6r06 @6h36/_kw66zsr2@sp1 2s/ $`3Qu`s!P}+r4P`m0T'rP2!rP{!r`rp#p@pM0 "1 rP"p`1@z "< @4 @C`П&!13@ `0YPy: /   &t P k ^&x%Є<`;5xP 31  p 1'%vMy8)   ,' 4&xp~&zPPp &zP4p:` @h 9 ` @ `\`0l `p`p 4pppp46%v3@p`@ &t`l!)  *  1  %!!*!P 09`P<@ 0 -E$z9 mfO zP<Ə6 z @P/ x*q5x w0 p` @4  5 E$  8ƠpT>r o8 @ 0 px4 @080  82p)T$:+%++T`PTH pT`@TM@T Ȑ' @! PT` `  PP3 Pk T 2U$z * '  `S/pS Ј0SSS@009&5 8 &4mPƠ20qp!OS `<5 @qS)6 0@WPSp SS3E% `Z!`3 SS 9S  6 3S0% !$`70 000pS 0/p  0 /P7  Rp9PR% R 5PR @R>5C55p5p57x 5tO$r p554GDr 54 4400R0+05N*1 r53555'2-0)P6"$p;5 Ȑ4Y`6@S:nn  0F_ 03*xm55P Pyp5 P&.C`5 ` T`Xʏ 0#g WO$S `J@Tp .PJ 5"65$M'0 5O%5L`Nii'5p@10&Rp-p10$00 j07P:P08Up  8ji`0@& R 6y 'Q/  6 V# k` k2z`yPI P`D `  #0_  K/ 6$  `+h   sp5v` 5x59% PW@p  P& ƐȀp pp09 4O@P6 t@ @6!z`G @65wm ` |  6HP 6ax !hs@#<g`*t@S = 09 @n@np5yXp&y`T @71x `8#z`7XR`R P p6&yax 7`\P\p*`69`/.72e30 p.ppp    000700070J 00 0@8 8'/p![PPP\>% `8P 0"& `60PH/pKO PpY+0 0+m@pj./@@`*00 ` @!  /0gO$v @8k7+    p Q@J87 % p`` P p( 0% Vyp/`  @O`9p0Sp p n "*$n pnn#p0nn'z c#nT`9 0mpl: `7 l `! pNp8~7@jl5%0{ l Њ40&t00NzpNpjPpo`. O`v`jl ' @:$M@71B 0o}9x&x@nJxЊp3Prp7m m 5 m76 mmQ%7pi)t' zpPP0 @`2k`  h0+`0,0400`@0` 0`% `'@ POP g4 ` G` Xi Pj$7axd5p4P 0i5f$ X#P@p@@ "00 ` @0i/ & 0i@ D5p+   0i P5P5- iN` i i i i0) `0P i+$hh i( i  iO i i`# ׅ N@@76 i"Yp 66 n6 &i6 4! hh 9$v *h% * i/Pi# @5a& `Ix '&v@@0P6 p!Е# @@%p p #6 666 $6 !Ex .6Y ' ]Y &Y  00xY1ZY6%0DT%u/ .u%2p88d6&2GOɀ2f7ux 06& 67 E%   `p6 6p.( 6@ -P*' 49``6 <ur0 @h` 66 6   4%  @% 0 6 6 / 6 6 06 6 6 6/ 66@K6 P6 i00 $6N/PPzD NN''CPp6@Np -NG NʰNN h i hp NhN( 067$x y0 % 6&x pB ]`@0f6Ѓ  O E"hP OE' 1`e' )`X)  B4R05 ` ,606 P-/E' @!P&ObO'Ow `54`Đ64!P0O0 `!80 "% -p !x @:  p5 <pp$  p кd@6x pRO"0_ KBPKl %p m@6$xppp0 p' z@u/'x НzRr~6'x078x 3>rMPRYrJ'xP% 0IrPIr0J'x P%  hi Tr P 0$  ' 0n`i @4-^лp Q ( 9x Q#@@(px'@) @ %`Pit0t`fOfG'xJ (r`Mp p Ѓ@0Ѓ44 ZЃ{@   @pppY@ *2  c#`tpO  +040е@O"%v0@ q)`#z90Q#iQ  p $@c 6P кe*yPtPUtmP`h `5k0p0 0bF zP 6 z'O.%@pp\0Pa% @Pux1Z`` V p h"$x% ( 6'x0&xp#r`:x   @47Ydr  # Zp"$ P0PY@P>0Po2y ' $ !@67=) A3NP !(P(p!P4 6 6 m606 6@@5 m7  #&@50 %p%:xC#4pP*5Z&r䐠i7&T_m`o 6zلr#:4PDr 20Po1'r 81$rP}!r`" rp00t"@ z1 r`"p`@z "< @45`&p|+ `0YM1pR R /0  #t 0pl@OP^&x 5@ztP 31.`#r p0hy-t   ,b8p@px4PpI`3`PsE$z0` @ ```\``Pm ``p 4ppp`@46%v30@ !`@ P! p  !*9  @1  %!!*! = pPm (P9pQ6$z@9P6 z p9/ `ƀ6 z 9p  "$r@8p`` 4 `p`<&x` 82 :+%++ +` /K pT `p Ȑ''@. PT`&x   [  P 20$zЃ`* ' S0=pS @SSS'$ 0@&05 8*ƏPn 2PS0E% PS)6 %@p SSPE% `Z0 p SS SS0m  6 3S0% !0p 00SpS/G+/`l R  mEx R 5l5R>5C55p5! 0s!2q$Цa2`sH!$rP4C 5tO$r p55#e*5 54 440pR0+5N*1 r5p555'2-0)@6p;5 Ȑ4Yp4@S:n P0F_0&x +x@J2P& P ' 0.z mP0 ApgGO$S.;5% SP6tp. .G  "6S'0 Pn4 PO%5L`NiiP 5p 0RP &p PQ00P 0  607P:P08P'$p  04j i`0& Pn J B/0@ k` kP䐉 P@PI P1@  @j/  K/0 p6$0U  `+h   `spPv`0P+9`W% PW  P& ƐȀp ` p3 4P!@ @60z} 5wm`pư6"Po6B0n =p<@*t0 @n5 5y:`&y`Tp@7@700rR*XЉ@T=RP% P*/ ``B0`p`4*`69/.`p5y2ep30p0S 07pppp    dE 0m#M 80700070J 00P 00@8 '/!PP@9P\>% `6J88`u 0"f$ `60# pp 4+H +0m05&j./@@`00 `@  /& PVO$v 5k7+    P  Q@J m % p` `Њ*@p( 0$ 05y$`/` ` OPxp n "*$n pnn#p0np)nZzn`9 0m mOl: `7 l jЊpNl%Њ0hЊ40t0l pjPpo/N'%v@`!zPP9E' @:$M 1B* 0o)P JxЊ`3Pr `Qp m7P85@ `6 mmQp%2)t' zpPP2@5tQ`2k0$:% 5x 0^&S0Tp&A`^RP % :!P ##YG(#@0@   11$r# =Dr pp` x`B!x #%0rp  "@P Yƀ6[%x Z_%Ȱ#ZP  !:5 9a% ^7a%P U u(b4@p<`Z  =@80( Z0`'1%`6vhu OEp 4X40&4 &P!xP! u'aB%%$ 7ux@9 Ԕ@P0  TxP!/$PO` $`5H`#060` ⏀`%P* 5 Px@ V&&b07 0%   Pۅ`qx0(0# 0`#`0%P#@0S` "\P/p`e@d`= ` ,S  0@pp'0@Ġ@(P gp& a%pPP(&&fb%h`0A P0g(!菀F $0* `gP p@, $&p %  $-C @ r@ Dpp/ 00 0=f%P0PW (p$!A 0@  fyps   hE%x@  %i&y0(%b    / A@/(2  * 2 2 `  P;x 4`iP`Dx ! `@`F_0}gk@7x/gpLi  Pd`(i`ipE iƐegȠgdpP d&p+F` L P12jNPMhP0j P i pOp i p` p0j'*$ PƠ  h/ 'xO0  W# 40i9 0j. 09@ *P#@j 0j  "%@ j'> @p+  "0j% 0&P0j ȏM%' )Ȁn&ƀ` Ȁ0jP0j! PPg P  "   jP  j^ 3 j j jN jxN0l   j N=j wO#@4#Pz`N h  4,'dp,hpp_O> h0+p000i00`00i00i 0`% B z 4`'+POP ` ` G` fPi PfƏ$@Jp7@k@x 44+5p4P 0i5i$ '#@f@ "@@ "00 `@ /  & 0iW$v 5$5@+   50i! P5W iN` i i i i0) `'y0P i$  ih i( i  iO i i`# ׅ N@6 i"Yp 6=@%v666 5i6`!hh *h% * i+P6%*-+%  +`$% @-6` @-6& 0Hx 6@P69$xYp0$ 0@%4!@5x67 :7$765x`6Dr72P66 66 p.% .6% 12Y '.Y &%P$`1Y6025-0p2E%P.4%Д!@ 06a% @ $ @3 4 Pb/%6p 6 030 6%606 2&6B% ! B z6 01%  ( 54 P 5 P/66F65@66  Df/ u%2 d2&2GOɀ2P0&7ux 06& 67 &6'0dx  6% 24% @6@*5&0P % 6E 6P6 p&6@3$ p  :'01W"%x 314&0&b@%2`D25x6&66(@1%x  T02!O 6 6@6)6/6!6'  P55 p( #p0@ -P@0``6`66&0 3 6)6%  PE CP& @*bf/ 0vNx `6%0% 0%  0 $ 6% 6E t 66 0 `PP66 P 66$ 6@666   4%   % 0 6 6 / 6 6 eKs 6 6 6/ 66?`0 0606N/PEP @IL PL@ 6D0 N_ LG'& FW/  Opp6 fO%PKN0 /cʠNN h N h LN 0;$x p lP NpB  0 f pp1& Ѓ ". 5pub' F` O:' 05 4f"'0`D H'@t `)  & 0Pp5 @@M6 Y OP1% f5@ O '@E  p%P0 T 0f$v 0`OH Dx A$xP 1$x  po00O@ @ưgd ' `@@ 7  Ex 9+yPOgP<@ KP 0 00nt@ 0 O R0PQ`U5g P%  $`3 ^d P 030Q.'px W  #%@^If'xI&ʀc# yph ^  3Tr@q  *İXp+9   p"P tpNPh&z Ph+9^@NP Rp j)0#j945jY@@@    p "p0`@  &tp @`g((@b% pƠj p pjP!W$z!!0" ff'xk-/`4 '⏰eE z P 00 0PPf$`P*x PDr  * 7 @&r `i$0Ј00)0% 9#;0) 0% 0"!y/M0 CGy`?Pp  }!45 <$ l@ 3N kr&t%p_p p5 p5 @%vp5p5 p5@'3'p`'#0%3 % f:xA%lP l(04Y&r $P3`5#)5d l 5`55@5 5`P/k 5@5 5 P5?5`5`5l,`5Z ,-0`fp4P`5fƠ30`5cPd00/`5Z`f`5%`5`5`51`5`5E`5% 3`5`5  `5 `5`p`5:`50`5(`5 q`5x`5r0`5 @`5h  `5,_l6zsr02s6 4P @0`I1'r 071$rP{Drp@`  @ zpT r`pz "< 0@4``&z+ 0z Py Q 0E 7PmP / Q p&z0MНp^  :\@TEy@p@4ppPp "p p&t p !v`P} ` P PpQP P oPb07~%@@ ``PP7qE$z7P` 6\k `` `p`P0E%v` `&) `. &9   P ` `1 l %  !*0!%PQ`&0 @  p` `# l Pk` 7 & poP   9 Po@9'z`!$@PE xo!  @P7R$=@07@7 7 `P7`7$p 2@(R$@++ +PP `, /K pR pΰ @N0 p@'PPR$0P0@ \ @  Р@@0%8 M0$z` 0N' Q08Pp< Q8& &@O&`70 0& l @o 4 QE% !2`- @5`k@k( pQQPQ/pQ5 )vQ 1$x 0: ,EQj  P!x Q0%  `Q `^Ġ6 6fh.y "@k_ @  P5P 7 z5)/ 5z ƠP2p4, )41`0& 040wp& n&.B@ yX 0#gQ R4 0  IRF5g p 4`5Q 'K4pj p pOpp4KL KF$z/ 4P1%@3P -/`Ps@0O! D5 @  06 @50) } 5 O@P! 0tg wp1 p`Ppp590`k+ F 02)h P  ` 4+hp`G P04P*04P `4( 0U @000  0m@!;0Q 0 4 k  t  @5  <&z @@m/$08X0з+\O#z    P7;/d  uV@ @$`P5  P/5,#@栕 5P0  k  N5zp ^24_*f4`ЊP 4 ) 0VO# 5 @N 5: 5 \ J@P5HOP4 6Pm``@5`p& @P:`6 V pppy 9`P'5+  0-/P:$&fb   Q% P6 V @ 57 W#/P5PPh5 kp k8 r pP`=P@@.@  8sP 5 P AjP`4, h ` `h  @ `i НHPh+@h--@'$t2 @h00fh  h B  ky:xy0/Ix@@@n pM i i`3 iİ| N ii%@  g g5K.g.Ѕi %`g"%vPPxN iZ i%`I p&vp'04@%%@i?pi* 2p@O303(i2 h.00OhPhpl3i@hih Phi P4iiip`2, `g/ `g0lP.02`g*@eȀ`g&@ O0/`g2 p 'x / 9x 0,z3p 4 *  '  `ep gp'vp  gĠg2 g% 0*bNgE% `06 g  0% p:x %g`p3,g@2ggg L%2 h50e5p `Lgg p K .g` pgP2  g1p6%1x Rr2#(Pp/x@@x L@П!x 0"p"xP7lP& Obe$xPkp@]@"[R0v& `9&p Hx $ v  ; p#p p&v P&x; !r Rn '%OP09%p "5x 0P' !;$ 5rqP8p ( "@0  $ !r@QrUC 'U x`@!x Ex "Ћ@ @ %pP7 `;  H% 6%0a% o7a%P U (Pb%P0 ?@ `&@!@0 `&1%6 h0&P% O Ep%pFPP!xP!q'aB%0%$ 7uxpY 0%@&p  Ex0!/0O` $@%@` 6pEP*&pAf&%xV b0& 0 [!x 0$`5x $0`#`0P#@0S`/P!P`CPPY"pBTGА+ 0@p6p('0`@Ġ@(P( +& Pa%pPPP&&&fb%h`0 0xxPP& %  `% P pP+d`%DPP  00PPPP 0 @ PP    E%x@ P' 0pA%p[&yp5y`P P P P P/ P@@/( F* Ex   1 `   e0JI  0+G@H`  0J$r@!x`.ce 1ʠ a`+( JeCP0/e` 2p*0D0e"1 p&xp5z 0Jfx &x 0-( @ 1W$z1 pP'Zx 1p0$x]Pe ~ f EP  0pp 1` I @F5 @`H&p 0f`dI%`6 fV PpK0PI PPJ6$Pf @b2 HVJ  fO0 &``@3P +$Kf@ f*O0`J$x p1'  /* f  K PK @ f@8 N y K9eP&y0ff 2ffKOLPP3f-fff~ &( za`/`p. pdpdO   P`2pd"0000H0P100&P0Ȱ \@#[$*000"% GI0g ȰX" WO# 0B%@& +Ȑ ef`%6`h@V"0p-04 /* * `P% @;x @ @'V#`/d\Ɛ!d3 d.d dOddd%3X&C`@03@r@@?@@x1?@x? 3@1rP5? ) R`$!| Opb c`RFq0*CP  $1$%1`P31 |2U(ix`$-1xPPOЀ@(4xvn@$v m '"a pz j0 A$r 1 p40z Pc' dP$!r 0` e P$ " 4   `@$z p'0"7x P5` 1@x P Paj pk@2@ P"P@x 5pr ` !O  Ex .)!|"Dpb 0W <E |P"!|p14pb!S4pb@pb 1 |@4pb 'Gi@     "J'j   %?j  :`f`J$z   p7Yr   Bz  # :y * 0   ;4 0@6 % 0 0 TEyS +   UJ'  65!  P   &`f`p]ʰ1r6  *9`p1+`  PXJ' 0`!  0( `f`@$zЍ1xYrJz*`%    `)+` &J' @[ `]`#` ` ` *<P9+` PJ' 0p[ `1$zP01xP `*`*`*%> )I+` PJ' `/`f`@$zYr` *PC@ `` 0GY ;$v0 Pp*0 *0`  1`f`@$z *1x#r`{PPJz*P*P0 80r %`yA6$vP| 3 @ 0 0 0 @ 6x6 0`U | ` 6@Fx 8 #W؀p0 @8@@ 8 'R@&p@@D`8`" P6@.5`P p@!0P9P& &P X t `P `9 `7 `FP`5 ` `05 P`(F Pj" 0@ @b|@@cx@@ u$p !0PTP! I3$ ;(Ef0 @5 96E H5D @ W0 y`E!`` @u@E ! 0p9 p !p 005 5P p @@Ȁp 0@0 9pDG@@@ :$@Pp   3 PP;x  p`@P5p *$ڰJ |& PDP p@0 @8@EP"@E0& `0`@5 D P ) PH6xp!F OT ` 6P&Pj `p@ɀp* p  p90p(0 @ *@ @ P@ P X@h+Ȱ! I HRďU$F `;)EP!015 !@9!00P ! @!5@!@050p@=1z"0Vm/Pp " 3* 0 @j8/]H@ ot  ]f@h" nwI= 02C' ,) B@̎"$~@0"̴@@@/@.P@@=@@/6 @.X@@/Y @@@/|@.`@@/@@@/@.h@@/@@@/@.p@@// @@@/f#@.x@@/&@@@/)@.@@/ -@.@@/B0@@@/y3@. @@/6@@@/9@.@@/=@@@/O@@.@@/hC@@@/F@.$@@/I@@@/L@.,@@/O@@@/R@.4@@/U@@@/Y@.<@@/0\@@@/O_@.D@@/b@@@/e@.L@@/h@@@/+l@.T@@/bo@@@/r@.\@@/u@@@/y@.d@@/>|@@@/i@.l@@/d@@@/_@.t@@/Z@@@/U@.|@@/P@.@@/K@@@/F@.@@/A@@@/<@.@@/5@@@/&@.@@/@@@/@. @@/@@@/@.(@@/ۮ@@@/̱@.0@@/@@@/@.8@@/@@@/@.@@@/@@@/@.H@@/ @@@/$@.P@ /=@@@/V@.X@@/o@@@/@.`@@/@@@/@.h@@/{@@@/l@.p@@/]@@ @/N@.x@ @/?@@ @/0@.@ @/!@.@ @/@@@/@. @@/@@@/@.@@/v@@@I.@@/@@@/@.$@@/ @@@/ @.,@@/h@@@/@"4@d/g@@ @  0 @@81`j @@<8X2B"x@/.@.0@/Q@.@/t @.@/@.X@/@.@/@.@@.@/#@.8@/F@.@/u!@.@/$@.`@/'@.@/+@.@/Q.@=@/1@.@@/4@.@/7@.@@/-;@.h@/d>@. @/A@. @/D@. @/G@.H@/J@.@/M@.@/Q@.p@/T@.(@/8W@.@/QZ@.@/j]@.P@@/`@.@/c@.@/g@.x @/:j@.0"@/qm@.#@/p@.%@/s@.X'@/w@.)@/Mz@.*@/}@.,@/@.8.@/@./@/@.1@/@.`3@/@.5@/~@.6@/y@.8@/t@.@:@@/o@.;@/j@.=@/_@.h?@/P@. A@/A@.B@/2@.D@/#@.HF@/@.H@@/@.I@/@.pK@/@.(M@/ظ@.N@/@.P@/@.PR@/@.T@/,@.U@/E@.xW@/^@.0Y@/w@.Z@/@.\@/@.X^@/@.`@/@.a@/@.c@/@.8e@/@.f@/@.h@/x@.`j@/i@.l@/Z@.m@/K@.o@ @/<@.@q@/@.r@/@.t@/@.hv@?@. x@/g@L/:@.{@/ @.H}@/ @.@/@.@/@.p@/@.(@2.&S '@#@@/x@@ @/ @#ۀ@ @/ @@@/@#*@ @/@@/'@J330@/J@#c!@/m@@%@/@@)@/"@#-@/%@Ӏ1@/5)@#5@/l,@- 9@//@#(=@/2@D@A@/6@_E@/H9@#xI@/<@@M@/?@Q@/B@U@/E@#@Y@/I@&96@]@/L@=a@/3O@9@e@/LR@.S@i@/eU@#nm@/~X@@q@/[@#@u@/^@#@y@/a@#@}@/e@@/Uh@eG @@/k@-*@/n@#H@/q@d@@/1u@@/hx@#@/{@@@/~@@@/с@#@/̄@< @/LJ@#%!@/Š@? @/@#]@/@y@@/@@/@#@/@@@/@@@/@@/@#d@@/w@-7 @/h@#Q@/Y@n@@/J@.@@/;@#@/,@@@/@#@@/@#@@@/'@= @/@@#'@/Y@C@/r@#\@.@/@#z@@/@#@ @/@#@ @/@Ȁ@/@#@/@@@/@= @/@=5 !@/@Q%@/@#k@)@/@#@-@/@#@1@/@#@5@/@ր9@/@#=@/r@ A@/E@#&BE@/@BI@/@#^M@?@w@Q@/@@U@/d@@Y@/7 @@]@/ @#@a@/@#@e@$@Q2 @LnkEC20@@G - E;@@/@@/ @@/ @@/@@/=@@/`@@/@@/@@/ @@/$@@/?'@@/v*@@/-@@/0@@/4@@/R7@@/:@@/=@@/@@@/D@@/G@@/6J@@/OM@@/hP@@/S@@/V@@/Y@@/\@@/_@@/(c@@/_f@@/i@@/l@@/p@@/;s@@/rv@@/y@@/|@@/@@/@@/@@/@@/@@/@@/@@/ܔ@@/ח@@/Қ@@/ɝ@@/@@/@@/@@/@@/~@@/o@@/`@@/Q@@/B@@/C@ %-/\@-/u@-/@-/@-/@@'/@-/@-/ @-/$@-/-@-/@-/@- @-/@-/@-/@E/@-/@-/@@/@-/^@-/1@-?@-/@-/@-/}@-/P @-/#@-/@-*(# 8(D :G ,޷P@xxZ iELF3S 0g@xZ Z@8@.shstrtab.'ym[_shndx.nv.info.text._ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16S2_fLb1EL21P&DataType_t0EEEvNS0_18O 2nhwc_params_tIT1_EEPKT_PT0_osharedreserved.0.relOrela[2..]_]&16FB FFc`c`[^ E93]_]A007C4E7C4[H D9]_]=0` ;?8A;?8[0@9 ]_]Am;C>4E7C4[0D9]_]6__half A Fd$g(d_` EA7,a,c,ab Xt :E,Fd,g,d_# ,b,a,c,aE.Xu7,G4,I7,G4_XHA,a,c,aA Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a; :^a^Y` E51[][|v?:^a^Y P :[][?B7A4C7A4Y\[][;0 k;=8?;=8Y>5 [][? 4B7A4C7A4Y\[][?7 Q]:N],PFd g&d_jEA7,a,c,aS XXg,d,g,d_# ,b,a,c,aE]4,H7,G4,I7,G4_,b,a,c,aA  q;,C8,E;,C8_XDA ,a,c,aE# 4,H7,G4,I7,G4_,b,a,c,a ||=.X[XSE)+UWUF4zA.X[XSc  2UWU94<7;4=7;4SVUWU5v S 8;789;78SVUWU9c 4<7;4=7;4SVUWU QYVYVQE%)SUSJz?*VYVQE%)SUS74 794;794QwTSUS386;587;58QwTSUS7C 4:794;794QwTSUSZJ:^a^Y51[][|TsN:^a^Y 51[][?4B7A4C7A4Y\[][;8>;=8?;=8Y\[][? 4B7A4C7A4Y\[][SX;yB*VYVQ%)SUS 4YVYVQC TSUS774:794;794QwTSUS386;587;58QwTSUS7C 4:794;794QwTSUS"R~Xs<PSPKE#MOMkt?PSPK8 ,MOM1447345734KSNMOM-80;/81;/8KSNMOM1447345734KSNMOM25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototyponstant0 ( 4Rq4`B'8F3I4cFrV8FE Fv FJi   ;bfl jJ Nv Cv Nzq! 7ltlBp %p BtJ  Jw  1] NJ N w$Nv v Nz +dbd~6j j 6nlx  dd~2he h 2ldwx ]x]wBp %p BtJ fhf^ 2^ 2x2hq dh 2ld ^y~^xx&b7 b &fL|iy8*s.shstrtab.'yme_shndxrqsE ZIU~L4Oinfor1t>breservedSmem.offset0 .0__nv_RSMEM_0_0_alias9<&wGBI6w_VM@[^]_z3cFF50`c`c_VG0[^]_]<.J40A4D7C4E7C3VB0\^]_]8R I0>8@;?8A;?7VB0\^]_]< 30B4D7C4E7C3VB0\^]_] g$14dgdgcZ}B87baca! $BAddgcZ 8`b~7ca@Z38F4H7G4I7G3Z^8`baca<>"78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`bacaN!%85^^a]T\",Z\Tf1][d%<5^^a]Tv ,Z\Bf1][:3,@4B7A4C7A3T4,Z\[][6!7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][A og#72dgdgcZf!8`baca 8dgdgcZ 8`baca@N38F4H7G4I7G3Z^8`baca<"78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca" 2:,X[X[W}N!B +}V}U}W}U}!%w>})X}X}[}W}N  T}VN+}W}U}4F3 :4}<7};4}=7};3}N  T}V}U}W}U}0 7 68}8;}78}9;}77}N  T}V}U}W}U}4 3 :4}<7};4}=7};3}N  T}V}U}W}U} dlpA8y%VwVuYsUqLRqTF)qUqSqM"w<q%VqVqYqUqL RqTF)qUqSq2384q:7q94q;7q93qLRqTqSqUqSq.748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq>jG5^^a]T,Z\*f1]["pK5^^a]Tv ,Z\Bf1][:3,@4B7A4C7A3T4,Z\[][6 7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][$Fn $VYVYyUqL!RqTqSqUqSqv VqYqVqYqUqLS B)qTqSqUqSq2384q:7q94q;7q93qLRqTqSqUqSq. 748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSqd"x8eP_PYSSOMFB#MNPMOMPM  "q<MPMPMSOMFl LMN.#MOMMM,*324M47M34M57M33MFLMNMMMOMMM(7.8M0;M/8M1;M/7MFLMNMMMOMMM,l 324M47M34M57M33MFLMNMMMOMM25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototype,}onstant0.o ay"1cFB5cvIf3JFrF7FF Fvur FJb$  Dbl jJ Nv Cv Nz( 7ltlBp %p BtJ  Jw  1] NJ N w$Nv v Nz +dbd~6j j 6nlx  dd~2he h 2ldx ]x]wBp %p BtJ f^ 2^ 2x2hq dh 2ld ^y~^xx&b7 b &fL|i-8* v2# g#S! } 0 D" x J H 0 H H" 3 0 l H KH- 0 H H  0 H H :0 sH RH 0  H H 0 !H !H A"0 z#"H Y%H@ %0 3'#H )H )0 *$H ,H |-0 .%H 0H A10 2&H m4H 50 G6'H 28H  80 :(H ;H <0 =)H ?H U@0 A*H CH D0 [E+H FGH G0 I,H KHH K0 L-H NH ?O0 tP.H MRHH R0 T/H UH V0 W0H YH "Z0 W[1H 0]H ]0 ^2H `H da0 b3H rdH" e0 :f4H hH h0 i5H kH Gl0 |m6H UoH o0 /q7H sH s0 t8H vH xw0 x9H zH ={0 ~|:H i~H 0 C;H .H  ǂ0 H }H 0 W?H BH ۑ0 @H H@ 0 AH H 0 :BH H 0 CH ~H 0 4DH H 0 EH xH  0 .FH H 0 GH rH 0 (HH H |0 IH lH 0 "JH HH t0 KH ZH 0 LH ˾HH V0 {MH H A?0 Z@r B FC1vafCH## 0s Dt 9Euv Fw "Gxy hHz I{| QJ}~ K FL M ;N O 0P xQ R [S T >U V !W oX Y dZ [ Y\ = B^ x_ ` Ia b c Nd e f Kg }h i Pj k 3l um n Xo p +q ]r s (t Zu v w ?x ey z {S$@|  (( $,0  RD<6\h% D#h&X\h% @h,h0 Lh80 &h0+hhDh0ph$ 80hD hDh0*@g*?@ AB0 &DEFGH||yyvvssppmmjjggddaB3^^[[XXUURROOLLIIFFCC@@==::774411..++((%%"[ 3 { 30 # " : 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , P t     ( L p     $ H l   @7L# #TUP!9H@Np =":qX N;X6)9`p@"@Hb  HP0@ Hbt Dbp00H @P<@_H`@P! HP!@P!"HP#HP$HP%DP&HP'@P!(HP)@P" `*H +@PP ,H -Ht)_P.H/D/8 0Ho`1@Pb|# 2H@O 03@P4H 5@P6H 7H 8H 9D :H ;@P<H =@P!>HP?@P!@HPAHPBHPCDPDHPE@P!FHPG@PHHI@PJHKHLHMDNHO@PPHQ@P!RHPS@P!THPUH0VHb@0 WDPXHPY@P_p0`ZHP`[@P!\HP]@P!^HP_HP`HPaDPbHPc@P!dHPe@P%_@@ fHOPg@P(:HhHb> iH+`O jH"(-kDx!lH,-Hm@PM_nH0 ,0 o>."/pl4a ST=_p0l00=H041̝40$1dH1@0l11,$=AH1\1Q50 2D2$h2TBH2T2h?02236H@3Ld3?0c|33@HD460<4t`4 4KH4<4L04l5857H\545lO0$=d5&$=6,46Q8xX6\|6TS066$6& 7T079xT7x77&7L$=TXx8|$=P89Ht8D$=Z08t8 9[H(9<L9& $=l99l^x94:̨C0$:d$=9;0l::,:ĈDH:\:E0 ;D;$h;BldH$=TeIfHLt0S|HD^A{8D"5YSnybz4Ey\ #yQ&{``xf?OxAa/r.h(xkx@qa$x91 0C6| r0pbr9(֏G N:y'2z x @p$~{K@1$rU @c{ @ "$@ `0C `pb$|  p%x 4 /GP xpBG qHxoT CEyo2rux!`1xz0菐P xP0p``PxA#PQ`Cya9Df"xŏ0x{ &r `p0xp@%abr ?``| a u/%`p`@ S6x 8 @x 0PS6x@E%x Pp P A !pRU6x paG Ԡ 1@AvP9G7{p@ p1xP #p  p f `"B05xpr O1 1@@r 1p6| B3 "xM1p6%x 9# 3GXK`&"`pV6x  R r@ Tx   `  _%P0T% ua%@u a%@ 3u(b%0 000P8U%xtx``u/hpOP P 0A%0P0e r@ & Ea%x`a/%a$%  ad%@ F hbEx0`40`/6xASe!3H1%x  `@`T` p0P0) ʐ !h#$ 0 !x&9gpV "6x_1%x  1fO%x p"/p  xpS0$p0$ #  4G@r p$ pp)p6`@6p@p4 @p @P6 `P@`pF%@0:%ɀpPf(fh0fb%@ 0h00A`@ @px_!/Ӡ D0%@% P`   $* @pPEx %C0$- 1 r @pp$G 0P `` @`PF R &@ ($ !E`P$6  @&y ps DEGy@ 0xo  `@ &y@ ` y `y@b0 0 P  %0 A!0 DA 0#{ `fz@!|@pb M @x1? # |2@SG,  `9Hxfz # q P@| 0z!I*0f{ 00%@0 `0*`0!| p@$!*"N@a$x `  `4 0  K&6x0P%0 P r0 GOyx O'x VUUU | 00@p1r "@>r 0E@y } S6x@Ur  @V/G , "p``#M #yVs6|Op p'x YOzJx P6{ 0 % 0ab$| ďRp1$|  u$|:eO$| 0@% 5 ) 5| P@  ` Vr  @ A H$x Ex @% P@0    u6x0pJr @ py p* p+ p) pp+ppWG"  'x G)+$`\'x `8 9,d`_'x GP Ar8/PV rpd6x@q@4  @$ Ґ KM P&|Ȁ% %@ O &Px|  ʀ0ey % (0 hR 0"$|Rȏ$|2$|@* %@kH$x Hx @H'xE'x @ & 07 &@e'x @ p S |  1%x @Ex p`( 01r c`F%x@   @(@T>r @ w>r !yP `7 E%x 0$ 0$6GyE/h>*>.p$t 6x O  x0B0$ w# P0=0 `0000 0``.60p P 0600-C0 0 0 `Vr  P& @ #@ @ PHx pJ$x ( 6Po0E$x 00 PC@p@ 0" 0b5t Ƞ  P`A@` `bxA6#  K )+"/ K 9+b+ K6#"'0/$  " 1$x p-- p3&",86x5#60 0)6 %% % !b P  %xx   u$x00%  # @ $  ` P;x % `x/ |0E'x ``$; |@K'x @@ P6 @4@$p  pP$6 `H$P1>r{,@%  7 G$@P $ P7P"y8@ )30<;< = =!'==O= -7G :p,p,3p)=P%=@ -p`*@=p=% %`$~P $ /`=<@0/gȏGH`.9G `= 1$r=+<;x`=%`.`=`=p!x-Jx.B`& @0 p=pP=% 0 / 4 `=-`=7`,P=6=.E%x P3 `=`=3 ?`=P`= P?x `=P=`P=Wr=1$r@ `= /==T x`7P* = =4= 0=3 =0 =@= `0P@=4@@=ap;17 @=@=04 P@=4@=@@=6*9 "P=P@1'6*" @=B$-p@=`=ƀ 0=;P= Pp==f/xP=u%<P5886p=`= @;%5@EP=5x:Ƞ6p@=/@=8@=9$09@ ; (E8f"x@=7%0P95x9p 6+ P=>-$C 7P=`@=  p5x@=@=0?@=//@=%@=0b@=`8 O` =& P= p=8 9`@@=P@@=@=@=pP6 @@= P` P`p ?p0E'p/@ P=,@=@= P0=  <=0=#p=0E6 &  0=0= 0=PC&* C@%CE:p@=<    0%  R4 O@= E6x@=%@=$@= @= #6@=`D `@5DP@=@@=pEB5 @=@=@=@=̠<@=@= `  5x @= @= @=6r80 73|8@= Ksr   P=r qs 1 <"s$6xsx5# r pO$r `;T'r Kbr`$ @N$ PP 8 > `>4>}>P0O @8$x`>F|  >p?0<" 46T$r  7p6 <?0|  P5|0N >P8 0B>YZ p   `  5ʰ `ڰ   5 >$ >  @9FG`>> @#0/N0 0@`>% /p9f$r `P?@ ` Tx `% ( 08>5|  9( S6x  0%0 /)p>*`p`P 0 $ P%p>b@ @  @ 06%xp>9- >@b. @# )` /bnA   9/bA@ %0   >Ar["VV$x 0&>H$x p$>-F C$r#y% "@f@% h% g$| ,@6| C==# = '` i | p`"095t1 | pI>@$r  E x p(   6%x@> PW;%x >7 0Y$ 5 @> @ XG p @`0`DP> > "i @P?PlPl `]x []ʀZ  @  p0'` p ppP/Yp ]0%`0]Qo! v [&%\W $m >`7$5;2 @ʏ>S@5SPg]$ #M1 /"0W 0W>66x\m1 Pm' Fx p 0 a$|_!r%@T$|@@:|`)87| ]`% \ & pjx % )!|`a6 "qCpb $4pb1pb 295 f".uf `9& f0f&f*  "4 @f fp0ubP& 50040u/@Wȏb 0f$Pt  >T  `>08%pd> >8Ee% ' $20A@Hr P_E%5!xW@E%9O007G@ p[ @ 0 0"[/"@@0  7$%h% % @b )@ 0;;@x;PM% ;6$x0U;@&r;0:P2#6;;L;, ;АpKx=  ;"8P*  3  ; 0 |1u*Q";pq.a0&@ b u @& JJp;0\`;pB& :W% : f qʏ  0p# p5f/7P P3UpK00@>`@0 YG   @<=& _6|`p1$r 0 @\4 9@%p% !|O0;;0 *0;%  06%"` "4 b % p;P 0` P'_9O@X!}ȏ#:P6  p;6PG!07'>;xvu/!h0@a 6`P"@`0 WN@*/YO$@h  @R'[& P͗P PP_f>@  @@!@ @ W"b Ox 8 P/ P @  @/&@Z@  pP   ;!; ;[9< pW$0?PB  p? <5`?/P\ 0p 0 p `%pEPQ&|P!r<#MHfyP0 0 PA T  9P@(}I %x/<%&|@p!" =!= ;p7\!=L |p_ =`= & @ :bP=f *=   =8% ==u  E Q# T0d=[=-  #  >>   @#  [6  = = =/| p=G f P!:@&pZ b =pfO 0=pab.% ; l f  B# 7>`@ '@ D`! pg6x"`n5|>X 6@@ @ B%0Z# 5 E B/#f6x#@\&> @  v "& & bWO%@@< 7 P?@ %$ 5 p#"@p >6Po[[Ppe7$0`E   *@5`>`Wf6|``,p&``c9p y00%0%@Ə` P  *9% @?[p[P" | %P$w@Q@@{*@0 @ 0!` @~` ? Dzc֏G `HD{+{{@ { P y3=@r @n`y`y6pP@`00@w@p050|\Z!| >ypy  @ @`y$ p%?`y :`Z0$`y2 =00Pv 4@T@0@`y   `y `y @ @ @ 0x%fO6xP[ \ 7y b 4 Ġи1$|p>% ( 06rp7| P`E6x >Й  / @]x Й y%; * &]yP y% @y t@ Wt ` @% @% @'  ^y% gb.x ;B y% yNy!% 0yNy PH= ~A$x pw =Ex =Py8!|`_c p"<y \ y&:`\% P\pD@h% vb$| 0=T$r >9xpy*y `\y ` pyp _c\$ x Fp. `p+ yB0/ P]yp? bpF J?]y? \ 0y 0] 0`y0=]w @w0Ц@x `?6| , P8``0qpp:@X P4 .PQ `:^9 w% uw 5`w w Qw/5050:w S2w2< w#x\3  w6xww wwP[< :@ 9t5|05|arZ0Z Grw Frp`VA|pw0T ZxDx+60]x%@x"`xxM^ @/N x   a% `bp% & `  `xpWw0g8x6$x 8x  w @xw `   0  PX 8="9p*pZp 'pgE6| 9G 7P&\p7p \"@^] % #gW/$~`  \ е* `оg0HpLaF@ p&!@~tr  _ F*b 0g5r``` `* f0I`@ ` `f@`A` ) 0(1x```Ar`&`-E @@ !r I!xPP PA@"xp'@r@6%x Pe _`( B @@+$'0D&x %$ pp& pJ P0T%  P5 ?u% 0@&0F!P 'pub6xЫP!rp $8x E%x a0x@C'R 5x0 p05'⁠%@A%0 kA @@@Pkp @  69(!PB4%H@E@h0b`%p`%`4 3 0o 4 H%`0`  ` 4P`%0S4@ ЭB% &Cg p  0ub/6x-(в`kt0$`00DPS 0P% @ P&`@ppPW0 ` PWPK' + W Pp *%  P@(F%Pp&0Ȑ@& & E@A& @pKf0u6xp0DE!08P@N% P0MT@@`%% W p`0@00&W P) P@ $ Pp@S@&yp@% @ pI@&y`*H `0``    1s0@$ @$ @$ @0i*N7  O*_pp88`PpUEz ppUP`opv pU ` % 84!` `pQ.$|0В Pp  `!|q``vW`P& P&KPs@lo p8!x0yE6x6`v `vG/$P06OL! P9`sB#`f 3p0`v /9poMP po`v`P0!|v 08X6x08p8mND| Đp(36xU#@e$| u$|p&r7|  Z|( 4 @`N 3 !UPT@7vX vU 6@ " p8I$@; rvOv 0 !ȏ008;/`tfv0'w@& */@PP&vP%v% t @9Pu`VW@v% sp6wBO#pQv v P v Pxv@ЯI @ w@v "v0 v @Pv PW *v%VV   " Ex8v*9  7v0Vpyvv v` 9 v 8@"&|Q0^PT`%p *ʏsv  P v-$vPU PUvut wuA upvubv@@wv@au Wvc$PWErn%`ʀ p v*p`p&Pv v0 p(p  pkvv 6P#"7 @ s (> t: t  } P(0rt  :p5& t:@Pp @pp[> :t0<!060 `W0000 C @: : 0 : 0@'3 `!0  @00GN0) G/p u @ u u u"S  @=`0u$ W`* 0u tXb.*/s u tRO#@#66x P" u % Pu  u `* u u`!0zt*"0u% Py @@ h@w0`60p 0yP@"!x@`[3* u0@`wz0"   0"`s6  u  'P' ;s*OP; s`62 `t xA\upt ptp `+ptB*ptuppt=pt0Xpt% 00 uptu00utPvpuPv@y `u D0P7< `P<"Q3r P Aru`:P< 0"~a 0b@"p!~ p`=b = &PP4!$pB`0  = =6=p0r $<=6{ = P5r =  =* -004 '%x'6@4 = H =`Jp (p, Pe1x = = =p= ?1 f =^p?D`,p=  /=p p = |+ P ,apf@ `@= @pP 5xP90& 0  @= @= P@=1 9a%@@ 0@ 34f(*b@  *5=0 P1%x@ `=`pp8  7%0+p=0@=;<5xP-@?%Pd@ F h!bE00` `+P=$p586P#6 0H r1%x  `7%`=@+0`=P00p= p=  '9!h# `= @=p%0@@/@p@ !" @= "%x8  p>$8y xP=@ 0@= @=@Or   @=  0 6pP4@p+ p%0<* PP ɀ@=P0&:&@=%0A@=@& @@ 7!/:$D@@P0Đ P`  @ @%@=%@=$ 1pp3G@P@@0 @P@=<@=@@@=$@@= @y?@=% @= @= @P@ =` 0=`y@=0 P  HU@= AP=$@=$@=5 0l = 7P=@u 0 0=,   @X` PX @Xq  0V u PM p<0u:00Q@ pu@*"N 55*`P `   P <`050 0PP<PuPu` O'x VUUU @Q Pu!r 1 0QAr$ 0@u Y`4  & @u66|S  @u tO @ o 0 ( Pu@P 0Pp%@u 0@=% 0u=0u Nfr  @pL H$x C@% u 0  p 0 0u0pG* PTup6% p* p+ pup`Wpppu =O'x G)+$`\'x `8t `9p,d`_'x G@$!8@sM 0u$@@C@Ґ 70]P&|0Ep#%%@  0`PC Yʀu%5y % Z& Y& PYA=@@|$  Z %  %@(p PZ Hx @H'xE'x @ & 07 u:u'x @u0rp  aZ[#&xp 00r A{`T%x>Z@(@u0@ @ Z@[9@@] ~ @u{0;  h>* [l&,pP" P-  xj  0=0 `0P000 0 60p 060`v@20 * 0 0 ` P8P p #@ Hx pn ( 6Po0E$x 00 =3@pP{X0" 0S5tXp6(  P`A@` `gx`XO K )+"8  K 9+b+ K6@[' /_$ !x "@ "[0Z ` < pƀ&"B 86x5#60 0)&y"B@г% % !b PP  %xx  G'u$x00<P;P"P $ P0]9< ;x Py0E'x `]@K'x @0 @4 p` p $6 `E$`@E%x  7 "$`@PP@`o _6%x PPp'y o@ > z3%Je = =!%==O= 07G :! zC"`,@z0-p j@=p=P0)W$~z/`=<z1%x "pcz `=1$r<@xk%`.!x-JxkL.p @0 >%P= xr / 4 `11-r( .P= z "І`=`=3 "`=PPsP*z `=`P=J=1$r  `= /==@ x;pzP* = =pe 0=3 =0 P?@= `0P@=4@@=@=<5 @=@=04 P974@=@@=6 w9 "P=Pz6*" @=pVP:0@`z`=  0=;P= Pp==f/xP=u%<88&up=ƀ;z4P 5P=z@z!p//@=8@=9$@=@  (E@|8f"x97%<y`zz`=O;$ @z`= `=/'P95x`=w&p  7+ P=@|$C <P=`@=  p5x09@=0?@=//@=%@=@bM% @=p9Pz =@ p=8Ђ `@P7>z: @=@=@=p z@= P`p6z:*#6pp[2P0=z0 p 0=0= 0=PC@&@p C@PR,  0`  ?`@5@=P@=@@=pE@=% @=`@=@=@=̠<@=0<@= &x % @= D@= @=6rpR0 ZZ Kar `s P=ur#=as 1 <"s`$~``Q0r ʀȀ,@  D P ` K1p@`K 9@"p`XC66 6pz>`!rP > > %> \ @;$x {p? 4T K  N<? \6r >>>B>` p@&t u0 5 `ڰ% {V+r 5 > 8>7E$x |WG\ > @# 0/N0 0@ b -0;$x `[p   ρ@U6x  ( 089 9% p6xpp E$|00 /)p>*`p+@ P 0 $ %p>b@ p@ 9 6%xp>9 V"%\\6  >  !9>@@    FDF  " #yO% "@f% h% ! ,@6| C#  ['` X5x i | p`"06 | @@0r E x p(    ^ W;%xK0G$ 0Y$ 5 @> @@c G[ @>9 @`]@`D > "[%pPl x @]P<P @LrpP 0]* u%z );D wwS@pz0- >66x\m1 Pm& pW s!|!_5r p/@}*>@ 8 Й@/  & pjx % `pxPz_pY# $` 0%95 f".uf `9& z0&0f*  "4 @Wy0y~ab0aV 60@x5@Wȏ@ b 0f$Pt  >T  `>08%pd> İ485yR%p0T r20Aup* -55!x[W@E%k}pM @y ΀06|/"Dr  7$%h% % @0#& )<5r%@0<@{7x@ ?; 0 y :Ɛ@# pZZpp p ZWEr 3AQ;6;379p>;;+ : ;@x;)#6:`@x;8:;;*:58/;;?;, :1:`D{ 0;O@x ?%@x@x$>@x @x=P@x;5+ @x; 9;};`;/@OPG;;,/&r;!P#6;0;;6$;Ȑ;; ;, .YEy[0Kx=pK  038P*  3irP p3; 0 |1u;j.`&@b0`  ?& J * L 0z`; & :W% :;Q002A AT  0p# @f/@6 ` %5L@0  !@;@<p& _p6|`p1$r0 @\ p0 p=%p@5x !|% 00 *0;% 0 06 %   b % +8@9OQ"0sf  %1 p;6PG!07'>;0&e/@В! 6G6x  @@pYO0@p  A0@R@; P PP@ @0% ! ` p"b O,ȏ8 P P  @@  @)Z@  pP P[ 9 ;!;p ;[90A$x G  4  ` <5`? `0# 0 %pEPQ|Zp\&| < VHfy ,(`@ 6x u0rPD@< 5|@P&xPpx<`A pD`* ж 'y@@Bp#@`@ ;0E  @ !``!?bp8 Dy !!pQ `RP\[\\P_ [  p@[p@_ M( \ \pW \PW \\`U\\6\PW\\ ]PV\P  XW \*ʏ\\.\N[\\  X\0@Y\\hY\9h/\C"\0 \\0\[ Ȱ \\ \#\6G @\! !![ ! pLp` \ !\d=!> !! =-\=M!|0z0@`= P` P= & 0*=    =8% =@ i 0 0d=[=- #  6 >>   0#  O0g`> = = =/|  G f P!:` &pZ b *O ` b.pp f  B# 7>`@ @ P$`! pg66xm'6 !@  0Z(0@5 B/#f6x#` `  v5 `` b@ 7 *%$ =5 p#"p @p >6 & [ ``#  `"7 P *@5`/``:f6|`` @``c90*pP0p 0зp@% @0!P*"@&z`*@0 @ 0!P4 ? D` ` { .{{@P @=@r `% Z`y P6py 00@w@p050|py!| >yƀ py% 6 @%$ pF?`y$ 0$`y2 =)t 9 T@40049`yPv 4 p-0u ' `y |SM_]  @ @ 0xp* ?*66xP[ \ y b ( 0 и1$|p@[% ( 0 p7| Kr W$:E6x >Й  / @;yЙy]yP ,y% @y t@yt@t @& p9@% @p x% fb.x 8C)/bnQy!% 0/bQy} '# ~X$x` _Ex =PP#8 cC&|< p"4y \ y&:`\% `pD0h% \ b0# .\4 >9xy*yy  ` py \\$ x F H | K$x y` y `yp?`ypF J?y? \ 0y y0]0` ` 0]w`wA5xЦx `?6| , P8``p pP:@X P4 . `:w auw 6`/w pXw P @4www@1w2p \5  w6xww w% 0& ]P 95|05|( Ertw Frp`VA|pwp ZxDx+;0]xxO`xxM^ap"N p x  a% `bPp% & `   ` f07w0gx $xP /@>'x @xw w  0  8=!o(4(' !AxZ \!x@PB@ 9G 7#y.&p 7\"> % 'g/pO'`P<е* &x  #B0ip!6!@~Ir 0g @)*bЙ ``&p@C f(p" ` `f@% `p"Ix 0(1x``'p Ar`&A$r I @(@ !r j#0x PA3ppP0@6%xW `( BW@%PDr'0D&x %$ p +6% pk P4  q&Ea% &0F!P m'pub6xP!rp 8 $8x E%x a0x0C'0U 5x0W% 00,'⁠%@A%0 ApT U@V@@%0G@9(PU!PB4%H@E@h0b%p`%% Ю3 0opV 4 H%`0`$`  P  P`%0t4@W Э0a% [ 5P`' p  0ub/6xV-(в`kVD`t0W0`DS 0& P `@pOPx0 ` PpYؠ'Wx wp' W* WpW% PW`6%x@  0& & `E@Ap& @p@ 0u6xpD1p    @` 0T* ) 5xx% x-`2O rx ppY p @0pPFW P& @@$!E` $ Pt@&yp@%@  I &y`@`+ `I0 `@p   - 1sp@$ @$ @$ @j*N7o*_pp88`PpU=z pvpU8 `opv `   85!P ``8ab.$|m Pp% I `I| qP8`vW`P& P&PpU@lo p8Exf@y k& `v@/$plp P9 rB#`f s`m0`v%9poMP po) p2 3*M`P0!|v 08X6x08p0X4 Đ(36x@v#@e$| u$|7|  Z|( 4 @ $U 3 !UP @7vX vU p76@ "% v v 0 !ȏ008/`tfv0'w@& */@PV&vP%`v$ `T& `9 @`Vf0v% PU@6wBO#@v4v P s Pxv@ЯI @ @@v "v0 v @Pv P /&*v%V 0P( 8 Ex8v*9  7v0v p vv v 9 v 8@"&|Q0vPT` 5rp tisv W`$08 v-$vPU  ]65t9u!t w\ upЖP v VuAv@ vvs C Wvcv PHv% p@p `@ p Ȁ<v p#pf6j# .@>@`@pv @`p (T t:@U0rt tp` 9`o:5& t:@pPp pp[> :t0:!060 #0 0000 Cp @: 1rY0 p0 P'3     :00GN0) G/p u @0 u u u"0u @/@=` D WY 0u tWb.06H/0 u(@#66x P" u % Pu 06 `* u u`!Pt*"0u% Py @@ h@w00`60p 0Vp"!x@`3* u 0"   0"`s6  u  'P' ;4@'0;!r V s`)2 `t tupt ptp+VB*pt@ppt=pt0Xpt ` ` uuu0utPvpN;y|"Z6Gyp P<t0m= << @"Q3r P Kru`:P@)  )C$~a  $C @"$@ )`=b = &P6G  =  + 0 *0.6  "x ;0A6$r `p 6{ = P5r =  =I 1'%x'65 2@4 = H =`J? 8x 1x== `e`7YEyp% -- d =Ȑ`,p=P= 2 /d ` l+@@` ``/( `@=4E%x@9Er7t r 4 % < % p*D7=0! !1  3!@ 0@'7f(*b@  )0 P7!x@ P `0`7P8PXP P;7%İ7+p=@:*@=;<5xP-@uPd@=@ F h!bE9> `+ $p5 ;%H`>%P8: ;%`=@` 0`=0 p=) 89!h# `= @=@=%0@d@*@p8@ "% $ @= 8  p>$8y xP= @ @0@=@ @=@6r p@=7?x @= P@`p96P4@@@  @P' :@PO%@= ɀ@=P9&@=0&:&BE0A@  `@`C!/:D@=@@%@% @ P@O@ @$@=%@==@ @pp3G %  Cư@=p@0 @P@<&@@=$ @=p@=$@@ @y?@=% @=  @ =@ 0=`)y P ` `k0 @  HU@=% `AP=$@=$@=/ @= = 7P=@@u 1xI?9@0 0= @X` 0=   0V̐Q =M p< u0@ p@u@*"N@ 5 @I `N `   <`050  E r PuQ@Ģ'x VUUU!r 1v@+XLpu( pu0ud 0q FpXEr  0V/G@< 0u66|Sw 0u tOp 0   @6 ΰ00=ab$|` `0 P0u%0u 00=%  u< u Xfr  @qPHx H$x Ex 0% pu@  ;p `:2r P@T$` `6( J'x ```/` uYy`P`= O 0v ) " @Ϡ p@ Pt @90b @@W % P  !8r #@B@@  p]pY@@ 6 _C Yp% % 0% YY%  b Y; @Yp* %0|@'| pu) x@v` Z %% % u'x `VP&x   &) % E7 "%x$ Z Pv%pp%@50Zpv 4%xQ   u@T>@O@ :9 @,`Y @(".fn9$tPUP% *0P p@ p$ @0 `0  @Z`0`)0Б60< 060Pu0* 0 0 ` @7P@ ` "@ Jx  p( 6PE$x 00 P @zQoW! 00 0pT 5% P T T   `0``O fx W )$P`ϰ . 9d .6P& /^$ !x o  !0Z-`&|P(!{D6x06x !'&y0"pApjNy + @`% )5x @<  0;u'x0`p.cO `%  `;@; |0x p@  `@ `r>pP@  p0 '>p ``hP `' ^%0x`` pp5@;@ !;}%H! ; ;"#;"x! ?\0\8`xp7x*x rx? x;!|,pC7G 8p #P  p h@;p;Pk@'W$~x/`;:@&`;?ȏx`, `; :$ `;%`,o5x&xx:xp;L, $A@. <p0vpx vp6/`6% `//+p*i3 x/"Є`;`;`;`x 0 P p;,`P;"@$r1" "r-px)Dx`4 Lpx<pQ`}0ԠU< <<& Z 6$x5   @<  M 0  F r : yа@<6@'t3/0L<P;P9*%  <@% pzP 0" /N 0P0b6% /⏠`P  pp( S6x pH6x  P77 =% p6x`"$|  E$|  /C@9U 6x0cx@`&@0*@p<)p<@%@bFP<; &@@б  y6x ?O6x)0 `+ `9Ћ&xA+ `+0} p ` ``0% p-̐P` @D;`0y <% "@(f0% h0& )@Dr pp;  pP `` p p ` A; | @!N0@ Y@< p$Pp<`@<$Y-_#00=ii oa@03Gt`.X` X Z =Lr6j *   %0ZZs3px03 4 t@x@0,6\Z 066x PZj 7&x ;@*/0w0!|`!]Dr @_@@@U$|707| @0 P O8 `Qx@PU6x 06u 0]2wE |@\% `85 `&ff&0@&% f* Pb ?F@v)0E%PUP[5W5@50*̏!Pra7p`5PpUDUE0b  E$ 0v' 00T pwVm% \@o@  0Y v ΰ "Y6!SP *O`P@CY%h* & p p4  0` C9>@9|pYp J |  X 0` 0! 9:*  u up r k u (`jPw@u  )P@usl@<'V rP(po %@ "50l Pq!@&kq@u@n q "PuPh'n" x@$@)=pA%xPpPuJD6x"F`&'pou/xu%t=`u0qpu`u` s4P mPu!x`!p//@up@uq$@u@  (E"6xo$t`#0Ь!Osm ! `+E%xq0(u0 ʏ  o+.PuPuKtPu`   p5x0qprpr@u*@u50Wh/x0"{0upP u@pu q40P(%  rp `xPo:@uPx@ur@uP@0@@u Pp Pspwp'` uPW6x pPu`@6pP.@u 0@uж&0W0u& 0u`C {@%Sp@u@ut% )% 0O@u E6x@u%@u$ @u pp x ``@uF@uP@up}@u@u%P@u̠t@u@u J&x F  @u `@u @u6rpM0  ar pM  Puarbsp8! "sN2$PV 0s!# rr OР T'r ЃH"r$"؏0W"^D  a"P 0Pd + 4p Ə    `!!`WO@5    Д 5`+   {@   `:P @: `:`Y :@FW$pWď pP4 P 0\@ 0@8 ;\@/Y @_P00T P0 ?%C`:&|@ Xu0Vy0p: >P|`  `Y  x% +$pe |!| 6%xP &: ;B% 0x$p(0 w*% & Y::@ `  p@   P ʰ$p;@Y XY}  ZȀY0rA^Y[ Ym  Y06Y pY pYIPf8r  Y Ā`p@P   0  p( p Д `p@#P d *BC  3/  *䏀 PДДpE@A/  N P -䏀 P 0$A Pp6p p0  0 pp`P, PĐp @p   P/% ʀ$@@}!5t/ uh@# Pʀ,!&r !P#6066$o&r0 Y#Y;*P"|= 9` 05j`;ЮP;p:5& P5`ppp//;0;, 0P;p!00\O00,PX0 0P70P 8p0$0`<;PP= 0C%  Z@:F  G# W/% `*Ā&x<X0.e  uO#! b@` 0Ы5|P\*⎠W/% 5 p*!$dt`pZ@Pp@0 0 P<  0 P= fO p#  ~@0$/ 0$OP( 0,p (p:` Y "wsv!֏  @ @p`Bw=@ = P;@r @@% `;`W @ п&| P@20Ps @pW@puD| pmI 8% `4 @P$ @<`u00`uP:006%x`uP2Q`u@ 5* `u `u P9&|40- @ 0t$% P`&&:!OPp@@b4 Đв1$|W% ( 0 7| . 5p"AE6x uД +/ >uДDPZ$ 'u Xkb5t6% u5/ 00 0@&=u  Xhb.x8 u! @Y/bn`!'u!% W/b`! V@`u@#yX$x P,Z%u=|0_ Y":Q 9 u&XpX 0;0% YP& Y@Y4 P<9-u9t p Xu yu u `9a YuPC`uu pYP@ puu`8sppPP s ?6| , p6 0Xpm 0s4 -p02#6`W:Assn8pT'%Us   S/04sP 30]s9p s s6xskO6xs6s&3 8^90Q 5|`K5|0( Tr@@7| Fr`@0Sd|@ WEttOtp%f".t%Vt t%ptPt4@1ttPc`QUr 65t?b D6p t t U 0I(0ts7*s5s8*0tV&`tut@tu P/tt@t:@0"N   tTTsTb@Th S%bt sss 0tt0ta"#!@T(& {!Ax6jCE6| O d7G Cy.&P\6p "P'< 7Đ%"pDiW/$~  @@ ?&&YT @# E#p  (Ar @Y& @()bp% p` ```h6N9 @L& @ ` M0 ` `  @% ` & / `p1$xArp%Tpf@0T !rF01$xPU x 4@p%` P P6%x ` `\``$b)0 @@t+N$&&x t%# t&(T G Pt0m5 a% tnk&! `JE bq%PMps`OU6x $Dx80U0C4` r/ rPR%td3(6 pl0p~'⁠pR%sRA%0 kUPlO0t6sR@@%DsF9(@ !6%0Hj/u0t&Q ' nR4 PT& t5% s$`t0`$`  P @Tt ts`@ Us Tp% wt &xu5P`w' J t&0ub/xt`%TĀ*&pT`p5x0t`DTPqS 0`TU pPt&t_xtPT0"pB m3GpP PTt'Wx `Tp' T Pp.p@% 0RP R`6%PtZ@@  0& & rE@A& @p u6xZD  t%@00% 0[0T$* @%t% ttT pp P/ptPFW P& @@$@ t$ t Q@&ypt%t@   &y`* `4 0&y `t  ( 1st@$ @$ @$ <.!y*N6o*_p@Z!|gN77IPXprEz p R7pr p 7`  7.0 u``o P7  `!|uoP7VW`N0' Rh" p7Ex U O 0 v/$Q @80@pjP# @W`lpr0l0lppr"@Q5|1 p 7 7PvppS4 pp(36xPr#We$| 0%r&r 7|  Z|(P3@#$0 p3 P|{  er 807+/r@ @0Rrr r 7KP0 5 1 @:0Q!Prr @rqEN5 S5  SS Pw rfb.D ` p9S!Sps@&r@` r TbP`9  5|r T % `rPx5 / T/3+h  ( 7 pxr*7ppPt0r50rp8r=p$P p:Tr TP7ΐ r `PD|!rPЫ ` `q0  p r"% rr rrr r0S@ `TP8prrPr7r `Ur r rs  s/  r_0  trU=J rpr)Py r yr^ ` r )  6  a `1r Pp0rPrpʰ0rr  (6 `r#06pr`X@`, =  E0p 9*f*/  @00o O 0p"  0 #p    *`,6 #y66G`ErjP6ppp0@ `p   - @ P 0Prr 6P PƐr r)1$x@ A8 p8 p> @ UXư `Pnp &"< 5 5p p") 0@,ONop q+P qp q: qp`pp/opp```@ @-  q```1P bq`" q &А"rr"u*pb0q 30qp q Ep0 q; p <:@G/ = q  @ : q  p`O0p`(p  @ @,p  (q+q? 9 P"Q!r`W>drq`7P czp5x9@$|81$~[)P^PrpD`:bP! : !/>P10P1  ::3 ~ ! P9Pb  : :$ :* : .p% P`0 /@1P F<P  0#p`; f : 5xD) , /@=pWr @: @:( p @ep%= &6(; + @:`@: %P6& Х @: 5: P@ @@@: @ 74u(b@ $0:P5p 0` p 8 80]5İ+p:0@:9P6xQ/%@%Pd@:%p 2& h!bE` P:%P 8%1%x@ O06 `%`:;@/ 0p:6!( @  @:@ %0P4@$ 0 (0f 0bp0@:5) p6$59xP: @@@:& @:@ p@ @:  0 '?B@<' @:@%  P@:@:@: ɀ6P& &03&7@:%0A@ p@:@/7@@=%00@:0 @@ @p#%@:$@:@ @P @:P@: <@:@@@:%@: @: @y<@ @:@ @:p #&x @$!@ :` " 0:`y@@:0 P  EpR@:AP:$@:$@:/ @: :p @q@@q 0@0:,0: TP0 T @q  R 0q*7 :J &{0P 0!| q @N@O @q  I$ 0P T`(p=PpPq0r kAeO'x @N( Pq >r NU0y /Pq @Tr  @Pq Pq6Pq< Pq pO  l8 8 0ab$|`q6q 0MrPq%Pq 0`:% @q : 6@q K`tP% `U ( ""5x qP 0`:C6 8 !r`@* q% @p9 p+ p q1rp+ppq% o'x G ,$L'x `8p ` % d_'x Gp6:@rO 8Q/$x Pp qE6xXP@@0Ґq<V30A6xF  \" V 9V $y7rB H | E%x@>r 0@4 P 07 @r0% ` % W 9  :h>*h/,pP Sʀ P  x_/P  @0=& `00: <0 60p 060V 00* 0 0 ` ! P  @T@ Hx pk ( 6PoE$x 00 PC@ w `V0" 0@+t   P`A@WG`⠐T+O K ) / K 9fbxZ; K6p/]$ !x "` _0YJ-PC Pƀ&",D6x@ {0)@&y"pA % % !b P  %xx   YU$x00BP" @ xo` P x`  Y/x H'x `1 |P xX0E'x @rP!B x@p l$Cq A  $ `P)  05` 5@@ @`  `  <%x p'0!yp-3<;e@,  =!%==O= 07G :p P%-p g@=0cd$~C`7$P: 5/?ȏw`.`=%`.050$`:x w@0 P=o'/s60@ /`P= 6$r0 +0x;@q%a`!PS  `>4>%> [ 6$x +| 6 @z?0<E| pp4  7> N<?0|   [r`q p>>% 7>$ p0 pp n n  n6>r 5D |>U> yoG > @A@ 0@`> 6 `0xp@t` Hx S6x G6x #89 9% 6x q0 E$|00 /pEEAA 6x`P`` +@ *p>pF)p>P%p>+tʐ9 PP6%xp>90   ` $" ) /bnA   9453@@ %pJ`PArq$ p`p&>-̰з0 `xs"$r #yO% "@f@% h% `'| ,@8| #=#0='/P>@w ` 9x@H | 01$r@P( P"R&x> xD"$}6%xpPG$ 02$P)@U$  G p @@>`DP> >y @P?PlPl c@c9Gx Pp" @0` 7p ppФ@]  ]p@l*  @upt%\ $v0T  G05! @ Wʏ>S@`py`, >66x\ Pm  `> _!r@0*>` 8@ l `%95 % [9& @y0&p0f*  |% Y9pp@ }b0P& "0 @9T0 50t00  pW p`Pv pP>pp0> 8D@"!mp@`}$  0Hr P_E%5!x@g@E%00'07G@ pps@0 ΀06| c"!0rp 7$h% %  b );xvVu/!h0@`& @ @ @WN0@*/SOE[P A@!? #$:@ PP P_f>@ px0F@"!p p`"b%,ȏ8 Pp P  @/&@Z@  p B P[ `; ;<; ;[[ Gй  ? < $5`?/P\ 0 p A%pEP&|P <pfyд D@ T 9P (͡5`[?<PDPp!"!=p\P;=L |p$ =`= P 0  & /}!=8% =T= @6 `# 0)=[=-    6 >   0#  [`> = %0= /| & G  P!:P@&pZ bp>'0@+O=p b.p` @%y6 B# 7>`@ @ 0@ & ,0A`p!' 6@p@ R%0Z(u  B/#66x#p@\&>` @u 3&`& b@,7 *%$ 5 p#" @p >6 & [ 0p* 0[O$7  *@5`!p`VP&|``&``ʀ>p @0004@Ə` /*P% @?VyP+"@] (`] P{*@0 B6y@0!*@~0yDzc֏G `.D+C"+{@ P >`*=@r 1`Ex Z`y pX6$xp@0/0NP@p05D| py!| >Pwpy 0 @ 0$  #?`y`A`3G $1`y2 =00`y9 Pv 4@Tp-0@uA@!x `y ASM_0 @ @  0x% 6p?f{ P y b4 +ďи1$|p@[% ( 06r#' `0E6x >Й )/ 9`_PЙ* &]+&P 0)y% @+t @@ypt@  @% | y"% Db.5x> y% /bnQy!% 0fbx P:Cy=,$ ~X$x _yF&|<P p"4  \ y&:`\ =@% p\uNy D6| 0P%=!rp@9x+`\P\yP\ yOyP0\`\6 | Pp py% 0+py 0/ P]yp?+?y5 y?0y & \0] ]ww ЦЦx `6| " P8``p bp:@X P%Ə i `:0P\% w: `w w Qw/7250:w S2Pw<p@3x<3  w6xww w% 0&< :@b9t5|0p5|arZ08| Ertw FrpVA|0T Zx4dx260]x%@xа0?9xM^7 #"N p x  a& P h% b`  `xp @]WppVвaw ` `@* p ` 8 Xx0"#4(' !AxZ2p!xnpgE6|@ h7#y.&@|p7p 0"P(>p  % g` /O'pP<е* C\ #&0ip!6!@~Ir 0giP` U(``l'`< * f(P0'>K ` W% Ԑ (7G: Ex e0(Px?k@`Ar`&`OI@(@; I PPP x uPA3ppP @r֣P&xW ʠ( BW@W+W$'x x%$ xp@& pJ Px4  q&@ua% xro&0F5 oxSfb6xP!rpwr 8 $8x E%x Ra5xwC'Rx 5x0Ww pp05T%w@UA%0`@40O0x6w@Vm@@%0GpVF9(PU!PB4%H@E@Wh0xb%pS`% r0% s3 0opV x% 0 /Q%`xx0`$`  P  xP@`%0S%wW rB% Wq&Cg pu  0ub/6xx ,%W% kP& x0W$`t5x0x`DsPuS 0Pu5 pPW&x`xpOPx0x P` PWؠ'Wx wp' W&  Z(wEx P-`F%xt  0& & `p}P@Ap& @p 0@%pD xxEx @` ƀ0T* )W%x% xWW  p p @0pWPFW P& @(!E` x$ xxS@&ypx%x@  I &y`* `0`(x@ 38$x p 1s0@$ @$ @$ <`/0i*N7o*_pp88`U!pUEz ppU8 `opv ` E6| 4!PP `Q.$|mВ Pp  `!|yqPP`vW`P& P& PsPopExp@y 8& `vG/0p0pkp P9 rB#`f 3`m0`s /9poLpo`v`PP!| 08X6x08pz8mV4 Đ(E6xP#@{:% %7|  Z|( 4 @ $U 3 !Uv @7vX vU =6@ "% vP v 0 !ȏ008 /`tfv0PF@*/@PP&vP%v% t v @`VX0`v% pv%rF wdO#_v P v PPv@V9 @ :@@v v0 V5 Pv P W@*v%V: v  0P( 8 Ex8v*9  7* vv $ v`S9 v p}@" Q0^PT`%pisv `$ 7 v-*$PUt&u PUPU`9`9u!t wu upx u vuAv@@wvP vc@ Wvc$:= eo% hp@p p p Ȁ<vp#pf6j# .@:@`@pp6G@& @ s ( t: t0rt  :` 'p %:5& t:PPp pp  :t0!!060 `W`:0Cp @ : 0 Er``+0 P'3 @   :0`W"N0)  7p u @ u u u0*p@/@=`0u$ W`Y 0u0ttWb.0 * u(@#66x P" u % Pu` u `* u u`!0z 00u% P y @@ h@00`60p 0Vp0#&x0A`[3* u !/T 0"   0"`s6  u`'P' ;`_!r*OP; s`)2pPptupt ptp+;B*ptu@pt=`&ppt% `00 *" u00u 0tPvpu8yP`u  <<0wP-@"==*=!===3r P Aru`:)P@)  ) #4|;`11$~ 0P "G`=b = &P 6G  =&;x0 *0.6c   P00p0fbB = =  =* - 4$_'%x' 2@4@;P =`J?&/x `7fEyp> f = 5xD`,p=  /`=p=% `|+@= p ,0J `@= @6@=%P9@=& 4Fx  @= @= P@1 a%@@= 0@ 77f(b@$@7=Pp@`=` pP' =5C 7%İ7+p=0$@ @=;<5xP-@uPd@=@ F h!bE0`70 $p5% E%x@8 O `7%`=>@+0>0p=  '9!( `=  @=<%0@$ 3 P7f xbx0= 8  p9$8>9xP= @@@=:& @=@ p @= @=  0%9'BpP' @=` 0`@=+ @= k@=Pɀ9P&@=06& P0A@=@ @@=@/:@@@%00@=0O@ @pD%@==@=@= @P@ @=P@ ?@=@@@=%@=@= @@ @=@ @=p @= @ = =`@y @p 0@u@@u 1xI@?# |0=, @X` PX   Q 0V̐Q =M p<0u:0P!| p3u 0N *Pʐ PX  `I4@ P5`X0 @p~Pu`0mO'x VUUU mPu0 "0Q Ar$ 0@u Y`4  &PO x @u86|`? @u7$x O  o X0 ( Pu@p0P U$|@u 0@% 0u p80u Nfr  @P( H$x 1x `t Ex u 0=0;00Jr PTup% p5 Tp+ pup`Wpp P =ϰ G) ,$L'x `8 9<d_'x G@$ O!8A$x P $@@C@fG7  G] P&|0Ep#{@  0`&P Yʀu%5y % Z& Y& PY$>| C  Z % %@ PZ  Hx @H'xE'x  & 07 `Z0w 5x PpZP70r Y | Z00r0r `7%x0[`( @uH | G%x6~Z@P 6p{0` 0@] ~ 0Z{0;  h>* [#`2,pP" P`  x?m 0=0pF$x `0P0000[0 60p 060`0!* 0 0 ` ! P p V@ Hx pJ$x ( 6Po"$x!0 =3@p0  0" 0`tY@6(  P#p`@@` `D5T @< K )p+8 `3 9Xbx0^+ K60p/_$ !x " 1$x b[K- Pƀ&"B D6x@C Pq@pf6y"B @г% % !b PP  %xx  C=U$x0pYP" P' r@ @T xPd  ypA)x J'x `(` xCE'x @&r` p6@ ``  `P)00_2$P5`@ @` pp@<%x pP > z3%Je = =!'==O= 07G :p P%0-p j@=`=Pm00g$~z/`=PA@B "pcz `=`=%`.`45x`&x:xp=Lp=p=P=%0xP= xpS %> \ @;$x6 6 >0<]  O  <? |6r > M >    { p0 p0 @= `ڠ% {V&r 5@i p; P>7 E$x | > @# @P>0@ b /⏰ `[pv pO ( T6x P( 89]% 6x q0  E$|0 /pEEp>`Ux0p *p>p>$%p>+t!/t0P6%xp>90 V"%\Wb.x0|/  >  !945@6w@`?`>Ar_$ p& `&-̰F`  "pW0=#yO% "@f% h% `'| ,@ P#=# P@'/P@C3 `` 9x@6 | 00!rм B x P( P"R]  @pPG$ 0Y$ 5  E%x \ G p @% ]@`D > 0/߲#@P?PlPl x @6]P @9Mrp ]p@l* u );D wwS@pz  > ;6x Pm0- еʐW `u0/_!rP 0 O* 8 Йl p% fxn`X% 6px P/|`spz#0V0%% f".uf `9& z0&00f*   % YWy0y~`4f "0 0Ќ@8T0 Wȏ@ b 0t00PD `>pW'P 0~88%p@> 8D0g`m~y/pyo8r 0AEp* `55!xW@E%0pM @y ΀09|6"Dr  7$%h% %  b )5rt0:@[!p@0 # %)| @ `0pP@ pZ Z ppZp pu;:;;x0x ; * xp@>;;6;0 :@x8;9@x@x 9@x@x; P0; ;; t*";;*" @xy$0*>xp0xq:P;:;Px?;;; $; *(E;C"6;O)ww` uO`9;=x`x; : `x*ʏ;;.;-p>Px;`; ;L; fh/>u"x :Ɛspt-O; `xu;p< ;;.;/@xЀ @x @x vp %`B'@x\6x@x>@x`=,@x@x@x 0@x%uй5f0x% 0x0x`C?PD&0x@ ~( 76x@x@x#p@xQ=D0?w@x x p- 0O@x @x@x%@x$@x @x=P@x@xG`P@x @xw@x@x@x`2`7H̠w%@x G,@x,@x `@xpNB sr K  Px`r/ask1 "sO$p|Ps10P1snu!pS r MЅ O@v1'rp@/I0r4;0&e/@В& @ "@`  p@@p  A00*$'`[& P PP@ P6@@!@  p"0%,ȏ8 P P @  @ @)Z@  PPA 9 ;!; ;[ P$xF 4  ` <` $5`?  0 # 0 5rpE &|&| < Vfy E< ,(`< [P< 5| x/ pD pD`* жp'y+ @@ k  з8ʀo!!K?p8! !!@@X\ `[\}A\1r \ `p,  H6x 1xpp p@LPm8r @"rЋ !\=!> = ! =-!* ! `7 py)|l: :@`= P` P=& 0/!$8% == i 0 d0)= = #  6 >>   P"#  Ol 6  = = = /| p=G , P!:` &pZ b  ` b.p;P f  B# 7>`@ '@ P@ & ,`" >'6 !@ `0Z@5 B/#/F\&>p,  u& @-`?  & b@ 7 *%$ =5 p#"6& >  P> 0``"7 P T* @ `` `,`c90*pP0p 0зp @@?`+"@]@@C@] 9 >]*@0 @ 0)Dyp?  $ Dzc֏G `2DC" .{0@ @ P y3=@r @ ``y  pX Z00@w@p05!|`p>!| >yƀ py= @ @ $ C?`y`A@l@Pv0"0047`y: 4@TV)x0uNA 7Gp@ `y  @ @ 0xF%  O  ?y b 4 +ďи1$|p@[% ( 0 ' :66x Й */ )_PЙG]L`P py% @&t 8Wypt@t @sF%x p9@ y"% Db.5x>#)$- /bnQy!% 0gbx <@By ME ~X$x` 0!x _yF!|`_ pF p"<  \ y&:`\ \@0 uNy \D6| .\4 >9x<:P\yP\ yOyP0\`\6 | Pp @y% 0LpyPF0 P P]yp??"$F08?0y & \0] y0=]{P` wЦЦx `6| " P8``p !|P:@X P%Ə i `:w% u_Ow 6w% :w w Pw6050:w`42w2 y<6  w6xww ww: ]d 9x5|0p5|( Er06w fr pVA|0x Zx4dx2;6%x%@xа0?9xM^ ~"N p x  a&  h% b`   `X X@x Pe7/ppV waw w w@* p # @x88M # V('!AxZp 0gf3|#"Ph9G 7#y.& fp7p 70"@^ 8 % bg` /O' %ȏP<е* Fо@X0x#B`p!6!@~Br i"P 0g5r``l&p@C f( %0' ; ` `fp ` '@Gx 1xWWP&W@$r )jGr0' W0 W1r@n @#@x ``A`B3p% ;@ Pe PH0Hx6xax@'& 'E6x! P`P6  U a%@nFru% o␯W(px48 $8x E%x yȰy3`/0cu@rЅ4(% p0pu4P `s!0 kd@0в d E 6@G!x@G1%iFdf%H`d P%0@bP%ptu6x Or% sw% 0pwu%@ 5x  /v$`x5r0@%` ` @0]0u4PpT0x 7b 0E pv& Php&0 b/#O x% kt@0x0DsPuS 0U pP@@@`%pOPQx Pp Pvpx@'0*W6x w*0w% p P|p 7  P-@L%0&t P70&x v@%@A& @p pxp1pxxP@N% P0pT* )%x% x-`2O rx p7x Ɛ@0xPFW @ @(!E` x$ xx@&ypEsx @ iI &y`* `I0`(x@p 38$x   1s0A!0<`/j*N7  OT_{@@ p88`PpUEz ppU+ pv `?| 4!`e `Q.$|mPU P!x  `!|yqP8`vW`P& P&.pU&Po`Hx` o `v `vG/0p0*pL! P9 rB#`f 3p0`v /9poMpo& P8P8#M P(| 08X6x08pzX4 pp(36xU#@{ %prk Z|( 41r n@ $U  Ut`U@7vX vRb.% p76@ " @7$ @v v0 !ȏ008u`t0fv0P7w@& */@PV&vP%`v% t @0W0@5 s@6wQO#tv v P s Pxv@ЯI @ @ V v0 V! @Pv PW *v%V: v  pP% 8 Ex8v*9  7*v p vv $ v` 9 v  " Q0v  %pȰ P &yv  0 v,/$PU PUvP>*vUVt w\ u% xubv@ v9bu@ Wvc$W:=J0 :rpv)!r P%vȀ^  s @. (: t: t0rt PQ pp %6pt t::Pp pp  :W<"#M0@/0:060 #00(0000 Cp @: 1rY 0  ": 0@"@'3 `0  @00GN01 G/p u @p u u u"S@@/@=` D W`0u 0u0ttWb.0v%/s u tRO#@#Z  u % Pu`"b06 `* u u`!Ptp0u% Py @@ h@`@0 @@`@ @  3`[ u P 0 0"   0"`s6  u P' ;4@' p  s)2&pPtppt pt0 P<;B*pt@`pt=pt@pt%  @W*" u}uutPvpuPv-y|` t  <<#y `<`P<"<u3r P Ur )u`:PХ0-u4|;01$~ 0P "G`=b = &P@I6G  = *0.Pq 0 P/<@ДfbB = =  =* - 4 o@'%x'7~@4 =%    `Jp (p, Pe 0;fEyp>1 f = 5xʐ`,=  /@@p p0=p{`Hr p`a pp(`H 0>. @=`@=H6x 4?6@(@9V r 4Lx @ @ @= P@1  =@@;@@ 77f(*b@5 0@5*50Pp@p0`7D 4 :p8 ;%70İ7+p=@:%`=&;<5xP-@?% d09@ F h!bE0`7CCp0   p5 J%x@80BO `7%`=>@` 0>0`=>  '9!( `=  `=P5x0&$3 (f b`(0= E8  p9$8>9xP= @@@= @=@ p@=@= @= P `096p@0@' `=` p`C% :p k@=@= ɀ@=P&@=0&:@=%0A@=@& @g6x@/@@@@%@0<`@0O@ I&xpD%@=$@ 1pp3GNo%?pp  `@=@0 @P@ @@@@=%@=@= @@ @=@ h*pP `@=' = =`@y @0@u@u 0 0= @X` 0=@u P @V 0uK =M p< u0P!| u@*"N@*@ʐ PX  pI0Pu`XP!p p@P-PuQĢ'x VUUUu!r p1@+`F op( pu0q FBX0Dr  &0u 0u66|SZ 0u7$x Op  o` @u @u66x `0 P`0u%0u 00=%  u< `8 u Xfr  @P( H$x CT% pu@  =>0G P@T$` `6( J'x ```/` uYy```= O  ) " @Ϡ p@  9;b  C` Ar`8PA$x p  !B@p%@<@  `7 Fp] tp& `!O&p3 @)x` &pC6| Yp%   09% YY%  b Y@*O@ EYp @u% ux@@Y Xx Z ( "$xp%%p % u'x 04 YZ` `@ 9 Z0vzI"%x$MȠ( H |E%x05  4%x P   uPT>@O0Z  :9 @,o@4P+;\7.)n6$tT7@ P0YxpP@ p$ @0 0G$x `FG0`)0Б60< 060Pu0* 0 0 `  P ` U@ Jx % ( 6PE$x 00 P @z ?00 05@% P 0&t   `0``O5 )$`ϰ+ 9d fx 0YƠ6Y /^$ !x o ;4`- l&|#b0#$,3 `! o&y0"pApjNy + @`%  Px    P;x'xP в r w06 | p;( 70r @ #`  x@Bo6 | @ `r.65t@@`  P 0p PP  ` E$0x -` p5@;@ !6GyP ;0;  =%H! ; ;"0%;"x!1?1x0u10;rx*x r;; 07G 8p pAP P(p h@;`;Pk0.g$~x/`;P?@*O`;?ȏx`, `; :$%`&x:xp;Lp;p;a ?TGU< `<<<& Z P6$x5   @`5  MT$r  6< pq  z6r < PZ <% <6&tpT P P;@`*%  <07pz% pz`< 0"0P<0P0b6% /⏠)|$P  ` 0q@c6x E6x 077 =% 6x a@ E$|  /C?A 6xcx@@ *p<p<)p<@%@&x`Z &0@@б  y6x ?O6x`)L& `+ `9pA 5`  0}  P@p$%p-`pPp @Dc$rp yP&p<&|% "@(f % h<& @<)@0rP{7%xP; OYP( #x;  0 ` p0$ Ex P!N; Y p$Pp<`@<$-;`  00=ipt`.X`[Zp =<ri *  r@ s@R !`PD t@x@@x 0  @6U PZj  @*/0w0!|1]Dr p7@p#@U$|707| 2 PuO6x fxl0% 06u D6x 2@wZ5|Е% `85 V&fff0@&% f* Pb ?F@v)0E%oUD7W"0 D*ʏ!@`ra7pD@D/ 0b  ж% 00v' 0Vpp'0T p hVP @Y'@o@  0Y v ΰ "YEr )O!`PuY%h* & p %@q  C / D X0a0qa@ 0 0\:\:*{` :`u:9 % ":( :p;0Pu =p /; l `ii0 pmsP 0 pr# P s"о`u`uup `u ( ?x `uJ`Puu1$r@ `u#gu@ xr`$%  u08r u uu0u u  * up@=(Pu`@u'@o@@u+@u&P( @u @u@u0l0q!@&kq@u@@unu "PuPhF  @u&$@)PuuP90unPuPPpuusPuu%t`u0qpuƀs4P mPu5xrI!p@u/@up@uq$@u@  (Ef"6x`oo$t pt`u O`u0q`uE%xq `u ʏp n+.PuPuPu`   @u (0q @upr@u*@u&Wh/x"% @upqP u `u q40P(% 0r&x @u@u@u@u@uPC@u@u p sp p)/x@u'@u`@u@u@u@@u 0@u&0W0u& 0u`C {@u@u#p@u@ut@u u K% 0 @u E6x@u%@u$@u @u=P`pmF@uP@u @u@u@uP $G `mG̠t%@u F% @u `@u @u@uM M ar PM  PuurCas 1 "sN2$pyP.N0s!# r k04 O@s'r `H"r`W$ :p@@`S4 +ďв1$|W 4 ; @T`8| 0 `' Kr AE6x uД  / @ :.uДDPZID0>pMu X&t 8T4 pTu5/ 00 0 0tu XDb.5@7 u! @Y/bn`!'u! Yfbx<` V@`uݑ?!xпP9#yW$x !Z""ru=0_@0}P Y" 0 9 u&XpX 0;0% YP& Yu@`?@Fr @ u ,Y X -/ up [ u u Y6 |uPPYuƠu`u2Y`8s ppPPP8 s ?| , p6 0Xpm %Əpp0hpW % ` qsn840Os s/04ss1 sp up9 p s6xXkO6xs6s&Ss8^90Q8%s%0( Er4' Hr 5d|@ WbW+ΏtOtp%f".t%Vt t%ptPt%TttPc`QTtst46Dp t t U 0(0t7*s@DPq58*0tV&`tu0t@tu P/ttPtt; @ ^@"N   tTTsTbP@Th S%b /60r`s`: s  ^ ` t!c!p!1xs% j d9G 66y P\6p s"P'< < PD W/$~# @@ k5 Y/ ;PY@xP`p4!0jr p@()bp% p'```h5h * t acp& t@j ` t% ` & ( B @'1x`@@ !xUr 0fm&@1r% tE6x`'":x t@f@pp"0t f%&x p_ >`vt(p#t@@'nt$&@ t% t@`& pg Pt{m5 a%p tnf!c +6kbq:@pspA6x080 u@Dx` w'@nl `0ts pl0p~q%sA%0 kUPlO0t6s@s J@@%D sF9(@ !6%#j/u0tbP%t 4 04 )#0ops5% 0 /r$`t0`$`  P  tp%s`^d@ np% tu5P`w' pq  t&0b/xP3`p`p5x0t`D tS 0Pq5 pPt&tPx@.fGczplpltPzڰ@%p Pr`t@+@Ex p' t Pp.p@+ t,F%Ptp@  0& & rE@A& @f0@%@sD  t%@00% t0r$* @%t% ttt  p P/ptPFW P& @@$!E` t$ t@p@&ypt%t@ +x t &y`* `  t t(tp  ~ast !A!0<.6y*N6 oD_{@ Ѝ1 |gN77gPXpr6z Pn R+kpr 16|p 6$x`  7p b.`P P R`!|uoPNpr%W`N0' pmRh" T6xC@1   6r SW/0Q @8Pm @W$plpr@prppr"@'Q(|` P%p 65F{p0p4 puOx#w% e$| 0%  Z| p pP`U pS er 8P8/r@ @0Rrr  r 7KP0 5 1 @:@rPrrrrqEN5 S5  SS Pw rWb.00 $` Pp)SDS9s@mr@a pp T: 05|r*0䀏% `rPxt/ T/3+h  Ex v p&x!@ }pT*rPt0r50)r05r=p$P r:Tr x ΐ r ` 4 p7P0 `7 `q0 `  A80` rr rrrpq0S@ 08rrPrPr" rs  U/  &|r@A `9 p}r 8=ZprPZ@%#? `r yj P Dr  @pa P06   `Gr@D0  *@8Pp0Pp p0`P @  (6``#P 06~ X@`p=  E  " 9*f*/  @0  O 0@  0P 0#p    *`,6P }60 =r`$Pp Pp 0#6p `  @p   `- @ P 0! p # *1$x@ A$p p8 pN+RPnp 60 58p#6 0 ` 0 + 80  ΰN qop q+0 q q@: qp`pp/opp```@@- `  q```1 q q &А"r"u*pb0q 30qp q Ep0  7< @X q@< = q (@ : q p 0pq`hp @0p@(p  p qp ? 9 P"<V x*1 J6|!r>Ur)q`70 P 9q ~&p@^@rТCA$~0[=`:bP! :f/GP0 6G F q 0 * ~3 ~ ! 0&r `p^6{  : : :P  : * * 01pP% 1Ce @1P @ F<P  p; fp :5x#ax := P: . /+)p ]3,+ 3   &]; p @`"p&0=6x @ V r Lx @ @:% 'O P@6@@@@:% 0& 3@f(|8'@ P05 0p%pp@p%`:` Q 7p %0]D Pİ40p:0$ @:9@:!x u/%a$% U d@:%082& h!bE6 @ : //'d@%0%0:`;1%x 7 PC ;@4p0P  #6!($ 0  !xP@@;(0f 0b0"@:41%x pȀ p640i xP:S`p 7@@# `01@"@: @: !`  6p' p' @:@0`@:% @@@:@@: ɀ@:pP& &03&7@:%0AP@ @@:%!/@@:%<%00`@:0  $@: @%%@:$@:@ 0p3GN@=p  `@:p @:P@`" @:@@:$ @:5@:$@:@: @y<Us @: ` 0 @@:P@ :`@"'y `y p 0 P  EpR @:P `@:$@:$@:$ @: : &r`@q@@q 0@0:0 T0p0 T T  R 0q* :J &{0 0!| pq @N@ T 3T`RI 2`  9p=PIPq-Pqu'x 0N& @q;pB>@n i@80y@/@q Tr  P @q66|kp @qU$x !lO 0 lq&x :Pq Pq6q  M U$|@q 0@%  @Up0q JWr P% m ( MM% q@  Fx 0<8 !rP@* q`f `% `!r`1E%x@Ȁ q*Op`";oN'x G) Π@>p @9@o'x G@ Qr8PA$x  0q@"@"@Z@   Z @q@Г $ Hx &p"( Cp`ߪ(@V% Pq ; 0S ` pB `V$@*ď: 0"Vp*%ux '| q "$xP`Ix@5x u'x%` % f | u'x @4 ` @``P3Tr  @ ">`&@@P/` )ey pPOp( p` 0P  9T>* p-/.)06$t VPk @O  x/i - p0=0P`000 p0 60` 060pU P0 0 0 `  P p' @ Jx  p5 6Po"$x p 0 PC@p 0"0 0<$t P0  `0``D5D+ON )p`+)N 9fbxY;N6@ :1$xt/r  !x ! 1$x  G W '| zO ƀP&{%p,$ @5x 1 '0y5 @@t%* + 0$Pp@"* 0Xo$|  %("$xP" n9x `H'x `  @F | `@ xA0 @`F | @/p@`:x @ ` #12Z$ # p P!>r aPE$`p4@">А@P`  "$oP `&p0d  ;"#)uu*uu;; 07G 8p #P  p e@;d$~A`5$@u `;?ȏW `;&xhu"@. <,3`;*`;' %Wp2`2 P&R;u ; ;; ;l>0;1 ; &;@; `.w@;'@5@;+5p2" P  @;@  r0  @;\ p@pG64 0;1:6pp;P;P;5x836@;@;69&P C"` : :/`;O`;3u`;H/ P; w+@; =@; @;K@;@;p65(0bA76p8Pkp; 7$6} <@; @;w@;6@;WpI P %88 Pz'8` @;F%P;Cp& p80;0; 0;  Ex p@;P@;:@` 0 @. P;@;%@;@;$W @;`@; @@;pC@;@;@; @;@;  ʀ@; @;  @;!5t/lȀʀ,=!r`L !0t#6&5r_7 ^T7 K pw `<@3 <K/< Y P;$x5 5 p <<=E| p4  6pT"L=0|  !|0<<  p p't P 0P9 x   l;>r P4  S<@`W 7 < 0"00`0b6 /@A'|V$r PX0@ pЭ2x P{E6x 0 ' #P7<p p T6x@A  E$|  /p%p<*p*  $ %@+t%@P06%x*<P"%606A>Яp & A>000!@kTr?!`)@@45x͈0U08% \`G0o@    ! ΰ 04!S` w&ypP6$h  & p.4 p0@ 9  @ ` @. vDP :X a @X5y0X}P`W@u=: :@u :w@<|BpmFҠ@:6::1$r9#D r p9::6:E92`/37  :: l:,% @:pJ Yp7 p7`::pL!|@WpA^w.Pp `&@I6P:`407Pp*O9OD p# F 2 2WK`w Y#Mt PP0P<& _6|E$r&P6 p`%:`% $|`|p :P:`:* :%  0P %  `'3 " % 0?S1pb'`9 @$f  %*O S%`:6a%PpWO>ppEP 0$ / 0*d./ CaO  0!`A; @@ @_f>0 0V060`pu% P 0 ` 0!5B p`@ @ ` 0p/&``0X!(00`O :@ : : :YP~;F`  ?$ P#5 >/@Z  `;0 @@PP @;"&|:01%x`9Fypp`!v; xx% x%D#x f5t>ЯCV 0 P;#!p 0x @A by%; x_ C*9 @ =PY5y\% p6xpP[p< D@ `J`*`]Dy` "` %  `<     <b <08% <;p p p ?<0 0 0  <ΰ8 pZ 0 `< 0 == 0  # p 0 PZ0 0 < 0 <` </| 0  0 p0  V@ &Y "p=p <` b.б ; `# `?& B#0 p? pD`6  '6 RN%X;(u  B/#66x"0&= %pbh 8 J |& +O*%$// (="p Ж0` `=00` PZ wP+$09 0?*5`p  ' C6= J 0 PIr  `0wp=[@"g &y>r  P@6y(Pb`P#| x*   ? Z  O`> [ [Cx!֏` BC" yy@P w@30@r 11Ox `w 9| : p P0`S@p0Pu@pwQ`pw0| `upw 5 z 0p?`w0~0028 `t P4 U)x2sM   `w `w    @ 0vo5VO6x pP  0@bp`0 д1$|p=% P0 @`7| 66x Ж )/ 0] z%:@!r FP\0& ew Z&t <z/r0r 09 0+ 0 `w" ZDb.50v. w @[wx0w! [gbx ;2w @1$xD`    P*\Pw8@ EPP [ w]y&  `C0% h& 0$pCP>5 pw p[ 0"$ 0 p[ [w гu upp!x@P9 u 6| " `70`0Z 1 p% `.8 u% pu/"96uu  V/  p6uu8  u6xu uu% ΀949Pr 5|5|( Vr P Hr@TA|pS v0Dvv% ve.p &vsk*@*v0vv/v *v uD vu5@vv4@vSv% @0s5WvvPvvYv0vi@0 v  p &   !;p<ƀ , p6`  6@P  u P0 up 7=&""x ?WOp /P4(!`p 1x YppC6|Ap90`?3G aACy.&@6p y"P'`= 7@ %0 P 7$~O&`A? `1x#`A0 pLaB p %@$x (ar @Y!` p p'\ /A``* 'O% N! &` d@$ r#`|Ex c@'1xp 1$xp Arp%1$r }N H`&01$x@`0@ x _3pB p@Ex` :06%x Pb ?0'FGX@%$&   P&P# @'(o% P06%pO&u% 0@% %B5 m0pub6x@P!r38Hx С )PB' T6xRE "@ 4 A%0 UPO & 6@`f`@ F9(!0AE% gf/h@b%Q% 0% 03 0oG r % P / %`0` P* P@P0`$U  % % [@-g p  0tb/6xBLp UB@O0DU!@1F @P@ c6x3c@PB`O x@ ` P%p  +  Pp *%  P06%Đ@&0Ȑ@& &ЯE@A& @f0u6xE0:%L% P0pT@v%@v p`0P/ `0&fPP) P@ $ PP @@&yp@% @ ` Fy` `y@N@ (@   @@$ @$ @$ @g*N6p!xoM_pp7P7  p2AGA-@pEz p pt7mpt C6|b 74!`"` ab.$|@0`P P S `I| pqptWO0&  Jpqjb E6x`  7% X/$KQ @8PpB#W$kq 0/ptNpt"Pp  07X6x07F{0@T4 Ā`(36x T  61r"?0E$| @%&r7|  Z|(`31r m@#$@ t& 7pTt 0t W ts `"9-@p`r  9@b r r/pK 0k99, !6U0 C` 9 1  ErPp* 030R0!  ̰ s@)pG/p s @ sP sP"P(0[ /O``h9$ W` 0sڐr0 $`)O s%PB#P0 ! s os#b  s> )t  %  6  s  h06` <0/"&x?| s s !)!op6  s `?&΀& :Ppp4 p`Upqp"A`/srr* qr]`&y s)0@rs0*p5y  srs`{r0t@sO< t@y0z< Pv sD`+; P"<o<r@ars`9@   P(0(B$~`_p0#@`@"0!~@"`<b` < ! 0'&P0-6G  < <50*<p&r `p;0[E{ < < <` <* <@03P E%x P5| < <% @&gG p `9GH>P%8x+ `cp$;=00 fp ;5x%?P"rp+p< @ p .p @< ' '` ; @<`@< P@<%5%P80& Ux  @<%  90P@<%;252a%@>E % 3e*b@ *4<` P1%x@`<$```D 3 9p7P< 9%60İ6+p<@9*@<@<;01!x`v/%@a$%  d@<% h!bE 0& </pp6P<$p4$ %0<% 9% `6%`<@@`E`<=p$Pp<  '8!( `<  !x0*@$/ &pf (0< 8$0@% @< p88=9xP@<% @< ` 0 @  < <` @< `yP@<0 P  Gpvs>A@<$@<$ @<  &r@s @s 1x<1?  0< V0<  V  p T <̠H2 p  `0s9kk!| ps @N@**` @? `  5V`@ Ps-Ps_k'x VUUUE | Ps0"@P `*j@s pW4  &`O x @s86|PY @s rO ``m08 @0W0 ( Ps@ 0 O%@s 0@<%   70s @Wfr  @oP% PW ( B% s0  <C69Q  % P* s`P5(  E'x `!r`PpC@rOp`B < N Gr ) Π@> 9'x G' 0Tq 8Q/$x  0s0#@B@pfG  R\@sȠ @P 60  &p pXp# %  N@ pX&  `s`:y ] p09%0Ў 7| s xt@)@5x u'x%P % @%!| p E:u'x @7 @ t``P%P 4  @& p0F%x@Y `pLs0Kp[@Y Y @@}T>* &7.)06$t T P-O  x0 p0=p& `00000Y0 60p 060``t0* 0 0 `  P p T@ Jx   ( 6Po"$x`p 0 @<3@x W0"0 0'$tX P#`p  `0``D5D+ON )E`+)N 9Wbx\;N6@0Y/]$ !x n 1$x #0I-'| `O ƀ6{p,$ @5x 1 'pA@v@9* + OPp@"* 0C$u %(E$x *0`?)x `H'x ` ]& @8 |_6'x @`F | @0@* @ `<  ^p&r  p P < ``PP]H%x 0>r`@`>  "$oP ` Xp0f ; ;"0%Bp w;-;3|&w8p #P  p g@;pDg$~w/`;:w `;?ȏw `;$@h%`,O5x0&xw,*L-,$ @. <p yP; #pwo@6/`/6% `//.*`;3 w% P10*`;`;% P&`;``;w  `; 1x w;4``;"rH;@$r, p;; @ x5pw;; ;e 0;1% @@; `.P@;'@5 9@; @ P@;@;%P O P7! .17@;@@;7 t7 "P;P'4*" @;w@&@;64 0;66xP;6p;;!/`PU%:6@S&rp;@8w%P;3P;w0@;p&@;/@;6@;7$@;645 (E6u"x75%:v:`;:/`;O`;3w`;<0P7!xr6p  5/ P;P; `   p&0=@;@;r&f(bPK% 7   ;6<@; @;t'@; wP @;@; `?P`p =p@;wp%88 PP4P``;PwP0` &  0;0; 0;PC&`m A@@pðp@;DX:@` 0p @. P;@ @; @; P/@;@;@;Pw@@;pC5 @;w$P@;v@;$ @;  w5@; @;  @; w50XPpX Ier /0 P;urCas 1 S"sDR15t P O41'rm@r4>:>P 9 :?:,: Ġ7.7@u7:*9е:/:l:, 0. YMF!|@W p<^J.[pf `&IP w0 p8@K PA0n0 A4 a# F 2 2\p% @ K[>"``0P& _0(|4 1$r0  :(  `%05x 9`|p% q:`:* :%  6@%    " ( '$9 ЇP"0 & e# "OP `:6% WO>&e/P E P *d.X/00O  1A'[& @ @@0 0D@`z% P 0 P!%+Op`@ @` 0 ` 0p 0) X!(`00` :@ : : :Y9;wF+OF Pp >5 >_"0` `;`PP @;"&|`E:0P&pVy%_q `%,*(``0r%x *tPxCEC`  P ;00%;`0PY5y0ZP[p<"< 6y`5EpPDy< YZ}  [ȀZ2r̟ȀZ 3Z06Z pZ  pZJP1Z( Z PZQTppZ TQPY 0P[PZ0`Z ZX*pZZ(Z3@@Z' @ `ZpZZ-Z ZYW0 Z V ZdZ *BZ/Z ZPW\ZZ Kp\H`G V ZZ@Е Z\ZE@WZ0b]Z ]Z ?NZ Z pZ J H 0ZA_QT  >   P `< p@9P<  < !`p<[0p p p <pZ-U#M@ ΰ@m pZ0 0 60 =0  @# p 0 PZ06p  0 < 0 %0<< 0 p<`0 ; V@ &Y " p=< `ub.% +`?& B#0 `p+D`6  ='6 RN%X+0E B/#66x"`   pb`s8  &  G *%$` 0< (=p Ж0`0r W#60 Z ^Ar@``(0!i 05` ' C6= J@BpPPP[>/"(  >pZ(Pz+b`0p@*   > p ``> p [cxg֏G `vBC"0 yyP2 y P w@3<@r % pY`w 9| : + PpYp0Pu@pwQ`pw0| @pw %O y P(pY`w`z<`w@< 0028 `t P4 @n @``w  `w `w    @ 0vo5vVO6x pP  w bp4 qд1$|p=% P0 `7| P 66x Ж */ ]PЖ0P\w.w Z+t 0/r0  0+ 0 `w" ZDb.5Z/ w @[wx`0w! [gbx ;2w 1:#{A$x   <p<w=@P [  ^ w]y&  0#0% h& &OЕ6P>E pw p[ 0"$ 07>r% p[Đw [w[u uppPP u 6| " `70p`0n  p 7%Əp% `.8 uu@u p96uWu  V/  p633u18 w# p u6xu uuu΀ 94995|5|( Er`5' fr TA|pur @ pYFvv% ve.p &vsk*@*v v/v *v uD vuv@vDvSv% @0s5Wvv|:vYv0'=8W'0P s`@ p @0 v  p@* &   `8ƀ , p6`  6@PP  u P0 up7Mc<Q=p }"p 1x Y0x;!pE6|;0P 3G aACy.&6p 0["`=@ %P&}'~O&`A?* `@x@#`A!r A p [ar @Y Ȁ `' /A``5R0 * d'P! & d  r#` /  1$xpArp% &01$x@' @ x O@ 3p%` :@06%x a ?`0`%@T @@%Dr&   %# '(o% P06%o&w% 0pF&B5 ppU%@P!rp38Hx СV PB)S%p 5x0 p"@ pS4 A%0 hUPO06S W6@`fE?9(S!_E% gj/0b& %`UPU4 @3 0oG r  Ex P /`%`0` P* P@P0`$U  % % @-%P`' J hp0ub/6x0+&P@O0D11F @PU `U%[[v ,ؠh v% [ P0[p7  Pv`6%`v@  0& & E@A& @ 0ux"   %` L% P0  $@@%@  7x ƐP/@PFW P& @@$@ $ @&yp@% @ @I &y`@ @y`N@`(p   ( 1s@$ @$ @$ @!y*N6p!xoM*_pp7P7PA-p?z pt 7pt /4!`` `ab.$|L`P P7  `I| oOptWO0&  Jptjb pt(` ^n pt pt2/0nptQ @8PpB#f @2opt%7mL0pt"PP(|p  `07Џ07`R@4 ``(36x T#09% @%r '  Z|(`3Vr @#$@ & 7pTrS0t W ts <6S" p77$0 0t F tQtt ft p'uPU`5  0S&tepsE t% 0T dt0r&uQO#rT*$t @ r @vt0 pF 0t`00 ttp5  U t@t @p*&`*t%t 0 ` P %p !` $PO@Uy7t* 87t ` tt #pb9 /  @ pP0t &t&t@pr ʏ` t t`` t,"rTts s 0  t@UXTt tPYst0/yt 5@ pUP:tt,PuttS$99=@!r $t^ `  t԰%3Ay= !6p @F  Vr t tP % t p&0tt  (bPapt0- =  E     *f*/  r9&p 9'`r  9@_ r rH/0K 0kr996#0 0 C` 9@ras FrPF$x!9 !0 03 @ ` P9 ̰ s17p s ` sP sP"0(00spq /O`h9$ W!` 0sڐr0 $`)H0O s0r"P9`766x ! s  sb  s> )t  %    s  h"6` v<0/!&x?$3* s !)!op6  s p66|΀& :Ppp4 p`Upqp":`2%srr* q Pr]`&y sVrs0 ;P=9yss rrr0t@`O<@ys? ;;#y2`;P"<o<*<<<.%<r"krs`9 #;s&r$|:@1$~p+PP"  `<b` < &P0-6G  <0* <50 A P.% [ Pd < < <P* <* < %0 6% P`2 1@3 <@ H>F p&#=  )  fp ;5x<?P"rp+p< ./p p p @< 0r*? 'F4@p  @<`@<( 3U r%P8 & Ux   @< `0P@<%;2@@>'@ 76u(bP`*4<PP1%x@`<`<` p<` :64 ЎĀ+p<0@<;01!xpv/%@ $% d@<% h!bE0`6<p <PP<$p4!X r% ? P O `%`<P@%`<=0P?8!( `<@ !x@$/ (0f 0bp87O@@<~p889xP< @<& @<#096G ,$6$r @< @< @`08'A0P'  @ 0`% 9 P#`@<@@< ɀ@<pPP0&9@<%0AP@<@ @ !/9@@?%00`@ƀ T@< Ȱ%%@<$@< Opp `  `@<p@0 ҠDP@< @<@@<%@<@< @y>@%Es @<@ )6%x @  < <` @< `yP@<0 P  G Fs>A@<$@<G@< <p @s@!| 0 0̀s0<7  VP V2|q pP T 2 p L `0@M|9p 0 䏰4-P 4  @s0 5Vpp@ V ' VUUU& P5Q/ 0q0 V*br L f/ O@/,V 00VP0p PV 4 P @W  %  VV P6|@S  7 0 Ax 00E$x( 06$x @( @0W&  %0@ 1x`0#6@# P:5 0@% @U!8E P8@' !5 @@Dx`tpEPe/ f&P;% 9*/`b0Wu" 0!H' `V8nDy'0D p&5D@@P@ Q' bb  M@U5D 0=$@ 0pWN /9'07G@6 `W9 % P0r W@ruNy & [`p8%    vy P C Hx $@F #$xs@5x u'x`rp_P  @Br   P%@GWr  4%x  9*$x06 |spXsSy!Pr$@9 $0 (@4p`"4`@O@ `l / &  0"P % ` `*  `3@ `WP$-P@R P O6r cR$P@0`' PgFG`%I`,; `Ў 76x 6,O36x p00Jb@p @u`` H$|0 p7| Kr ` S` ;x% 0PR 66xp5x 0PP 9 # :w U `# #$$&ƀ% C p J xp0&t % 2  @WG@5 ),$+ 9pd_'x fx Wƀ"*W+  /`\$PA$x  ` p fG t- p%`0x K& &ut"?^`8u t u t@ C$( y ($ ` Hx@7 | h'x6 | 9W`< 0"r.06 |` Y3 |%P@/E'x&r p0* 0P #v6r25x0ư:p 0 0pp 0:0+0050=y !6Gy99  =%F  :!p ::O: p7G Ps ?0  pe99P W$~v/&!0?  @v99+9&x@v@*L$ , ʀ1$r('/00.6% - .p-1/9 6% P0 99 0 p%9v`9` 1$r@ 99 `;  ` X%` X  09F6|  p# Dr  :P Ơ!| @o p5| @P P`;P% P`SOy/ /P<7%xP;P0*  pH@FG`0 =50iO|pq`KB W `!Pp<Ώ Gx 0:#$P `@O6x *O\ 0 5pw P7 G$|0 E6x p;vO 6xSx &**)%`:&xp %`s&t00P@w6x ?VOx@ )@,  9`h#+45@pz` @Pv Zx@ 0@-; @& ;``&6| 0r Ơ`$ %@h% @h`& @0% p9Dr0 @:pp`: @T x( `@0% Pp  !  P >P0`^0#<P`;#P;!*/ pgg o_@=3Gp-P=Є@ X"ppd 4p @opP< PpgX@ Tp.`0Q% u SXu  16x 0/66x@X`6h P*/ pX& 4 1 `R@R%*|: uP@:O0X`eX0XspX X2`u0X@X7+@X0t& X`W*7&Xfj PbW W>X506pWD*@"  /WW@ W2&b6WU6 ]W`W*W XYO%`0YP5Wu X0 XG@7G`p ` 0t`9`)| @6P `9P#"W% * &   #5 `0 Ȑ-0 P@ /Pp 9 9p !8TU0`t 9 0K`X `M07M!|UP@2G`*.`p03Pf X36@Q8`u&  `ta# pf @2P6P O `1 @@p  9` Pt& _`?|p9 1$rp2 96 %PFx PRy @ 7E6x8P P @te@` q% prv  0 pf0pr4 po! ['R"# u#$`74@RP9%@ x  6&`tpD !" s P$ +S4p` O `p 1%Su % `t!ȏ42+  ?P9 p9P9 p9Wx W 0 7 +; [`7[!0}p#|&V|!&| O`9 Fy` P]06$t  "~BQ@vP A` 5|( 6%x@ &9 `<% pV% p\e#| & 0 Ap`yК]: ʐB$`:P%@нX `WX}`>X0r?X`X}XА % `)W ` WXPXPX XԀ:*@:x0Pp`:pP: : b w ;Er :Ы ?: :,6 P:Б6 X 0@#P @  :C` 367 : @ @"'%SG#[O```  6P; P:[ȏ `H ``p>& ' P@<p#pWb.%OP * ` Y`?yy!`< @; Y  `!`'Tp0Pp `m "@;@`  [<0P0 ` ; P P ; P! utg֏G uu PuЍ P `@9`:  `s % `:`s~NO6| 1P`UP/0N @U4 5| ps 9/ `sPUp pp  0`s0os`sp8`slnЈ0`s&:P `s `s 8T@ P0=@ @r  1O@```p0Pb</ď 1$|@s!4P: 0500 ' Kr p6 `P  / @?p .sPPX`0иPqs% @&t5Е( sO%x   s!% Db.5p < s!n@'s! fbx9@pU@s P8#`ws  ` 6 @:s= БʰW"0 8 /PWYbsZ5y pWБ% 7'|P"!r7@;u$x s=&x@ s, sW /p6 |'O 9psP#@6 |s!Z ssА ss `7 q xP7 q `#|& 5  0V0 ư ư26Gq27q`q4q   @7qq7m s# 96x q6xq9O0P 9n 5| @5| O  @FrP@4:|pV7+Ώrr`% r%W".Tr%vhr%0rqr%5r0 7%rr%qr&qr6!06P&rrrrp7*r U5OW TV`r @ r/r@r:PY&|;  r&| r̠=&yqp% ;y 0*ȏ>r  ` 0)  q rr8p6M! .*5 [ !5|p V=3G  `Cy.&@W{p "P&;%"` `y'~p@u* F$0@x#?!r z#0   }Jr @'(b`w0  * &P= 0% `԰ &7GxEx P&1x 1$xp@Ar$1$r p0 S1$x@' 1 x/"pB@r)3p( %1r@^ P=~WCx@_03GX  @Ex T r%6P]%EJ `0&F% P\a%@U a%@ 6g(Ae6x@38Hx p03`/ PX0P(Ґ E`0[a%0 U T 'Ep6@`F!x0 # 1%]Faf% hb%06x OP4 @%$0p B $ 0d#Hc М0@` @0YP@4PpE~ 6]% $6`^f%xf Php&0b/6xO `` OD@15 P@`b ErPYpY^1 x0`#] p%p P0p0 ذ%0-' `% p Pp 7  P`P@L%` `P70&& %@A& @ 0uxp0  %@% P0 p$ %`P 96x 7x Ɛ`.PFW f @(!E` $ @&yp% @ @x o+ &y`@ `0`b 18$x  ( 1s $ $ $ <. y*N5!xo`*_p`p66D66z ` 6 Lpp @P3 64!`a  6 b.0p P%OP`E|`0A| mMpp`f M& f%PN&P" 6p`` j5 ppQ/ 07P0 0fp1pppjpj@pp&(|P fEx0W6x 6``0`r4 ``@(36xQs `1r0A?@l5| %`rоp Z|p(22r p2p &6Qoe p P706+/p  Pp   Qp  pJЌP4F OnQT'$ppoE0(0 pu b pqt pa"% PqpN0Rn9pp0fp 0 hn lS@8 ppWOn0 rR//3+ p%   6$x < %`6@*6puO#K0<p<0$ 09/ p p p@6{ 040p!rQ *ʏpop 0p` 0S%p@ popopopp`7pSp*ppp qPSSP p?+SS=J` rpp)ar 0#pȀ^  @ %06   1rP WEy K0)P nn`ln  7pp pFr nK/ pp!ʏ`4 7n0707060#0&000P` 0C@ 7  0O0 Fr0F$xO 0 %1 @8  @00 o  /@[l o0@0m ` o1    [/08 @ o"/ o o1p bof o &(" o@s*NpP 30o P (PPP   60 p9 o[7V o P7 <p0 &sP " op0 `$ &mPn9` %oo@ o` % v p@%@)%Sbr'!p ?(1?4 <"r45? ) $y3/ /Pp)nC"9P`/`%8.Dx&cG<  5|w`8p_P4sxvD $?0`+S6x #  #-# P3G t 5HC%9!|`'P 0a|:"P 1$r:1$r41$r "8x`A u p$' 09p@ VP P# W):5r@X5|yʠ`;p0r10@8 1| 91@| @1;1y " 2x 1rP O  Ex091 |p0pbS6xb_7P0%P%[ x&'Gi@_0`6)p@1pR+kp5bp$ P1b    P p10 :`1r @;   E`Tr*4d 1 `P="A*p B# A:=     -:   /    *   ).Ap/r  E  5 0P% /  K9.Aa?$rP@,02 /  I /      *   0   @@9GYP5 p`#` `9``? R`#P#ppPpFp * pA0r "@6Gy $@ ` : B p   p@5|5`@2& fp@4@2!66Pp8& 0KS$p D@!/@@:pb$0fOp5`@`Q@!0&!P05P&70 @Is@0 @ 2DP& PR"$QFExG70E0QO"P6@`:!E3 `" PJPD  PWِ f"@H  `)UPG/ ub@HP&PeOP@`pT@uƏ@QD@`00F509PD@T`# 4p`DCtPEfbİu E Fp U$p vSʏ$` G pY0!#@u@mP&P[p9p!ppp p & ppP9`0@`50@I$0 !0 p9G4   #00%00  "3!0E  p  J @PE | E |P& Xj$0`$@ I& @!b`P#$ H 6x00fP50z05q/$`"ʏ!p5ap' OP Pv `!A&` ( PF C` @ &M  @ t5 @ [``0*0 E ` `8 ` P``5p */p (` %`P0T$  T9#  P '[ D 0;$Ƞ0%p h$ E001@ذ_ Ep0! I  `  p9!5@ & pp`AP;|0/#=$8%H0 @ *ZO |@ 8 P@"$$$3=% nC$ ,)pBE@u@0"R@@/@.4S@@/@@@/+ @.DT@@/C @@@/[@.TU@@/s@@@/@.dV@@/@@@/@.tW@@/@@@/#@.X@@//&@. Y@@/[)@@@/,@.Z@@//@@@/2@.,[@@/ 6@@@/79@.<\@@/c<@@@/?@.L]@@/B@@@/E@.\^@@/H@@@/K@.l_@@/N@@@/Q@.|`@@/T@.a@@/W@@@/[@.b@@/^@@@/Ga@.$c@@/sd@@@/g@.4d@@/j@@@/m@.De@@/#q@@@/Ot@.Tf@@/{w@@@/z@.dg@@/}@@@/@.th@@/@@@/@.i@@/@. j@@/w@@@/g@.k@@/W@@@/G@.,l@@/7@@@/%@.@@/`A@@/nD@@/|G@@/J@@/M@@/P@@/S@@/V@@/Y@@/\@@/`@@/0c@@/\f@@/i@@/l@@/o@@/ s@@/8v@@/dy@@/|@@/@@/|@@/l@@/\@@/L@@/<@@/,@@/@@/ @@/@@/@@/ʟ@@/@@/@@/|@@/b@@/H@@/.@@/@@/@@/@@/@@/@@/*@@/8@@/F@@/T@@/b@(/p@@/~@@/l@@/R@@/8@@/@@/@@/@@/@ @/@ @/@ @/@ @/P@ @/@@/@@/@@?p@@/8@@@@/@@/ @-/X@@/C@ @.2.3@g'@rF@@/x@#@ @/ @#@@ @/ @#!@@/@%@@/@D@@@/@a@@@/@-|@/ @#@@/8@#"@/d"@׀%@/%@#@(@/(@=+@/+@=2.@//@S@1@/@2@r@4@/l5@@7@/8@@:@/;@#@=@/>@#@@@/A@-@C@/ E@="F@/H@@@I@/(K@\L@/6N@#|@@O@/DQ@#@R@/RT@#@@U@/`W@#@X@/nZ@@[@/|]@- ^@/`@-(a@/c@#H@d@/g@#f@g@/,j@#j@/Xm@@m@/p@@p@/s@@s@/v@@v@/z@=y@/4}@#8* |@/$@V@/@#u@@/@#@@/@#@/@@@/Ԏ@@@/đ@- @/@-( @/@#H@@/@#e@@/z@@@/`@#@@/F@@@/,@@@/@#@@@/@= @@/ޮ@#4@@/ı@=O @/@m@@/@@@@/@@@/@#Ā@@/@@@/@'% /@= @/@#=@@/@#Z@@"@3t @@/@@@@/@@@/@@@/@#@@/@ 9@@/@-& @/@#F@@/@#e@@/f@#@@/L@#@@/2@@@/@@@/@@@/@- @/p@#/@ @/8@=K ) @j@@/@@@/@@ @/X @@ @/ @#@@$@ X@#@@kC=P#@- " @@ ?/@@/ @@/ @@/@@/@@/)@@/A@@/Y@@/y @@/#@@/&@@/)@@/)-@@/U0@@/3@@/6@@/9@@/=@@/%@@@/3C@@/AF@@/OI@@/]L@@/kO@@/yR@@/U@@/X@@/[@@/^@@/a@@/e@@/Ah@@/mk@@/n@@/q@@/t@@/x@@/I{@@/]~@@/M@@/=@@/-@@/@@/ @@/@@/@@/ݕ@@/͘@@/@@/@@/@@/k@@/Q@@/7@@/@@/@@/@@/ϵ@@/Ÿ@ &D/ӻ@D/@D/@@/@D/ @D/@D/'@?/5@D/C@D/A@D/'@D/ @D/@D/@D/@@/@D/@D/q@ @/W@D/1@D/@D/@D/@D/Q@D?@D/@@/@D/q @D/9 @Dq[Beh@[/@.@@[@.P@@[/Z@. @@@. #@@[/@.%@@[/C@.'@@[@.X*@@[/@.,@@[/,@.(/@@[@.1@@[/v@.3@@[/@.`6@@@.8@@[/k@.0;@@[/@.=@@[@.@@@[/`@.hB@@[/@.D@@[@.8G@@/U@.I@@[@.L@@[/@.pN@@/8@.P@@@.@S@@[/z @.U@@[/!@.X@@[@.xZ@@/]"@.\@@[@.H_@@[/#@.a@@[/F$@.d@@@.f@@[/%@.h@@[/;&@.Pk@@[@.m@@[/'@. p@@/0(@.r@@[@.t@@[/~)@.Xw@@[/%*@.y@@[@.(|@@/[+@.~@@@.@@[/,@.`@@[/,-@.ȅ@@[@.0@@/b.@.@@[@.@@[//@.h@@/30@.Б@@[@.8@@[/e1@.@@[@.@@[/2@.p@@[/03@.؝@@[@.@@@[/b4@.@@[@.@@[/5@.x@@[/-6@.@@.H@/o7@.@/8@.@@.@/R9@.@@.P@/:@.@;@. @@.@/w<@.@/=@.X@@.@/B>@.(@@@.@@/t?@.@/ @@.`@@.@/?A@.0@@.@/qB@.@/C@.h@@.@/*D@.8@@.@/PE@.@@.p@/vF@.@/ G@.@@@.@//H@.@@[5g1-8t8%AD #4pX-F88!`22@d  HELFAS 0 @ d@8@.shstrtab.'ym_shndx.note.nv.tkinfo`cuverJtext._ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16S2_fLb1EL21P&DataType_t0EEEvNS0_18O 2nhwc_params_tIT1_EEPKT_PT0_osharedreserved.0at.relOrela[299]_]&16QM QQc`c`[i E93]_]A007C4E7C4[H D9]_]=0` ;?8A;?8[0@9 ]_]Am;C>4E7C4[0D9]_]6__halfA Fd$g(d_` EA7,a,c,ab Xt :E,Fd,g,d_# ,b,a,c,aE.Xu7,G4,I7,G4_XHA,a,c,aA Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a; :^a^Y` E51[][|v?:^a^Y P :[][?B7A4C7A4Y\[][;0 k;=8?;=8Y>5 [][? 4B7A4C7A4Y\[][?7 \]:Y],PFd g&d_jEA7,a,c,aS XXg,d,g,d_# ,b,a,c,aE]4,H7,G4,I7,G4_,b,a,c,aA  q;,C8,E;,C8_XDA ,a,c,aE# 4,H7,G4,I7,G4_,b,a,c,a }|=.X[XSE)+UWUF4zA.X[XSc  2UWU94<7;4=7;4SVUWU5v S 8;789;78SVUWU9c 4<7;4=7;4SVUWU QYVYVQE%)SUSJz?*VYVQE%)SUS74 794;794QwTSUS386;587;58QwTSUS7C 4:794;794QwTSUSZJ:^a^Y51[][|TsN:^a^Y 51[][?4B7A4C7A4Y\[][;8>;=8?;=8Y\[][? 4B7A4C7A4Y\[][SX;yB*VYVQ%)SUS 4YVYVQC TSUS774:794;794QwTSUS386;587;58QwTSUS7C 4:794;794QwTSUS"R~Xs<PSPKE#MOMkt?PSPK8 ,MOM1447345734KSNMOM-80;/81;/8KSNMOM1447345734KSNMOM25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototyponstant0 ( 4Rq4`B'8F3I4cFrV8FE Fv FJi   ;bfl jJ Nv Cv Nzq! 7ltlBp %p BtJ  Jw  1] NJ N w$Nv v Nz +dbd~6j j 6nlx  dd~2he h 2ldwx ]x]wBp %p BtJ fhf^ 2^ 2x2hq dh 2ld ^y~^xx&b7 b &fL|iy8+I8_pmercL:  Rv5bt#Hf9b-H@8bLu >u Ly<>| Fo o Ty Ry T} FooHs 4s Hwh G M  @` TMT z$Ty y T}$ :gg<m m <qx,0{* g&g8k  k 8op5 {`0{`zHs 4s Hwh iB9C' 8aa {8k pk 8op a|a{,eR e ,iXl>9.;9 qr qW v7c\Il7cLuN >u Ly;>l 4 v4gFo P, 8T.o Ty Ry T} FooHs 4s Hwh   M  @` TM T z$Ty y T} { :gg<m m <qx,* g&g8k  k 8op46 {`0{`zHs 4s Hwh MB 8$a 8M |8k pk 8opvM a|M{,eR e ,iXld93  `9`"HL=`>"FP<`Pw6 Hw P{@H Pq q X{ \{ X PqqLu >u Ly|  O  Jb XO$X |$X{ { Xt Dii@o  o @s@2l}> i:i<m m <qx,64}&bD}b|Lu >u Ly| k 7.c <c <}<m xm <qx,&  c~c}0gd g 0k`Er)reserved.0|jsymtab`.shstr/.?_shndx.noteb#tkcsUcuver%rVis[9i%nvSmem.offset0 .0__nv_RSMEM_0_0_aliasP3capjOmpat "7@9DV7[^_?`+D 5`c`c*LV0[^]_]<40A4D7C4E7C3VB0\^]_]8 I0>8@;?8A;?7VB0\^]_]< 30B4D7C4E7C3VB0\^]_]J" .N"14dgdgcZ}B87bacaz" $BAddgcZ 8`b~7ca@Z38F4H7G4I7G3Z^8`baca<>"78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`bacaN!N%85^^a]T\",Z\Tf1][d%<5^^a]Tv ,Z\Bf1][:3,@4B7A4C7A3T4,Z\[][6!7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][A Wd#72dgdgcZf!8`baca 8dgdgcZ 8`baca@N38F4H7G4I7G3Z^8`baca<"78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca" P9,X[X[W}N!B +}V}U}W}U}!%w>})X}X}[}W}N  T}VN+}W}U}4F3 :4}<7};4}=7};3}N  T}V}U}W}U}0 7 68}8;}78}9;}77}N  T}V}U}W}U}4 3 :4}<7};4}=7};3}N  T}V}U}W}U} dlpA8y%VwVuYsUqLRqTF)qUqSqM"w<q%VqVqYqUqL RqTF)qUqSq2384q:7q94q;7q93qLRqTqSqUqSq.748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq>4r"pG5^^a]T,Z\*f1]["pK5^^a]Tv ,Z\Bf1][:3,@4B7A4C7A3T4,Z\[][6 7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][$Fn $VYVYyUqL!RqTqSqUqSqv VqYqVqYqUqLS B)qTqSqUqSq2384q:7q94q;7q93qLRqTqSqUqSq. 748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSqd"x8eP_PYSSOMFB#MNPMOMPM  "q<MPMPMSOMFl LMN.#MOMMM,*324M47M34M57M33MFLMNMMMOMMM(7.8M0;M/8M1;M/7MFLMNMMMOMMM,l 324M47M34M57M33MFLMNMMMOMM25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototype,}onstant0.o ayi1cFB5cvIf3JFrF7FF Fvur FJb$  Dbl jJ Nv Cv Nz( 7ltlBp %p BtJ  Jw  1] NJ N w$Nv v Nz +dbd~6j j 6nlx  dd~2he h 2ldx ]x]wBp %p BtJ f^ 2^ 2x2hq dh 2ld ^y~^xx&b7 b &fL|i-8*vQ g #!@ "0)0n3 x < H" 0 H H ] 0 H uH" 0 C H "H 0 !H H" d0 "H |H" 0 J#H )H 0 $H !H k"0 #%H %HH &0 ]'&H H)H@ )0 "+'H -H -0 .(H 0H k10 2)H 4H 050 q6*H \8H 80 6:+H !H XH 0 2?H H 0 @H H {0 AH H @0 BH lH 0 FCH 1HH 0 DH H@ ;0 dEH +H 0 FH H 50 ^GH %H 0 ۤHH H /0 XIH H 0 իJH H )0 RKH H 0 ϲLH H #0 LMH H  0 ùNH H@ 0 4OH H  0 PH fH 0 QH H b0 RH HHH 0 SH H D0 iTH *H 0 UH Hh &0 KVH H 0 WH }H [ & EXH H 0 YH H R0 ZH `H 0 ([H H 0 \ H 50 j] CH 0 ^ H w0 _ H 0 M` &H 0 a HH R0}wbv8 0 c H 40 Yd  H  0 e H   0 ;f H  0 g mH  0 h H  i0 i OH 0 j H K0 pk 1!HH !0 "l ~$H %0 &m 'H  P(0 i)n +H  +0 ,o e.Hp .0 0p 1H 720 P3q 4H 50 6r L8H 80 9s ;Hh <0 7=t >H k?0 @u 3B pC1dgCH D0vw cEx Fyz LG{| H} 5I~ {J "K pL M eN O ZP Q CR S &T hU V KW X @Y Z 5[ \ *] l^ _ =` sa b Dc xd e Cf ug h @i zj k ]l m @n o #p Uq r s Rt u v Cw ix y "z H{S$@|  (( $,0  RP<6t\h% ># hh0  hh0 h0 n/h/8$p)pD$ d$h)DD h$$h)@|8h0hp1 hDxh@1h1)Hg1hD)g81hDhD)PgFhp1* g`h0hh0hh0*X gh0hh0(0hh0hpPh0h h0`xh0h@h00hx1XP 1@ 1hX 1h D8X8 1h0 1)g0 1ph@0 1hp1*@gh1h@1)g 1xh1hPp@1)Hg81hD)gFhEhp1P 0 1h0 1) g 0 1h0 1h0 1)Xg80 1hp0 1)(g0 1hP0 1h80 1*`gXh0h8h0*0gh0h1*g h0hh8h0hpHh0*8gT`)h h0)gX 1phThE*@gEh1*gExh81h1*HgEhE) gFh40h8 2!g1h81) "gh0h81hpE*X#g! )h\80(#  1hl-&4[NVIDIA CorpB;#P6`ptxasCuda compilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1//k" 11022 0340405`z6j7f8`Z8V9H::06;*; =0=>?@A0C0DjF0ZGJH:I*J0H00p0`0`HS0x||y`yvvssp`pm0mjjggd3axa^^[H[X0XU0URpRO0OL`LI0IF`FCC@HxN =P=::7744101..++((%x%"# `{ k`0    x3&: 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , P t     ( L p     $ H l   !7  P!9H@NLJ   =4 ;qX <X6*TA>tИ9b0 d  L_Lo` L_ ИL L  L_L`H` LP!HP"LP#LP$LP%LP&LP'LP(LP)H p*L" p +HP@ ,L_@-L_@ .L% /L00L 1L  2L_@@3H 4L 5HP6L 7L 8L 9L :L ;L <L =HP>LP?HP@LPALPBLPCLPDLPELPFLPGHHLIHPJLKLLLMLNLOLPLQL_pxRLx `SH O PTL/UL 0VL_`WLH`0XL"< p YLPpZL0[HP\LP]HP^LP_LP`LPaLPbLPcLPdLPeHpfLgHP+hL/iL)p jLPkLP0lL" mL @nLPo=/ ..P/pp` 4>>0l00L?H041̵40<1d`1A011,<=BH1\2&82\2$2LEx2T2F0234356HX3L4Id|33LJHD60T4tx4 4LH4<<=M05l,5P57Ht545&5d5&<=(6,L6i8p6\64T066$<=LUH$7TH790l77<=&7L<=Ix 8|<=<=9H8D8ܴE08t8 9DH@9<d9& 9l99L_x94:L`0<:d`:Q;0::,:bH:\;4d08;<=$;xEH;TXX0SPQ>Lt0S|uGHFDQ{1DlS"yi>Sny)&wkHEyT yTJ"w A({pSpy1P'0 !_@xf ppO$x /x M9px;|6u@P r{b$r$|xPG ԅwa"$r `xZfqx0@x`wpr+pb GutG/P! ip"r0AxPPpr @d~@|{|1 @| IB $~ @d~ @%x D0py @ @%x 0 0 00%0uy ( % b Pf"x5p$xk`pr` ps y!A T!$  # 0gGy` b [11$r   r  e}30B9p1 PU/O `  | `!rbr dAl  s6x [T ppA x I@p`Wx E6xaGD 1Au !| S{0V pC/M8Pr " PF |@DG A{  CtP8r1$x6w   #w`.!   /P0! Eb0 PP pbȏ$x`d | p!O@>@Fxh6x@" xF0p`03rΠ!y$@'xVUUUQ |  @02r!>r Dp/y @  @xg1$xo6GDM@ {@ rrp0x b3 r0 @1$| Pu/6x fy py !uR (R0p $|u/$| u$|  'G$| @5x ) @5x x'xPJ'x % P4Pr px'x 0Tr ư5e/$x C@U%x Or P& P F$x `4@( @E%xp ( W>r ` P>r 04 % `!* $ p6GyE/ I  &    /    ) 40  /  &  ')        ' \    4B0 p "'    ;%  / , <b  >  V D    P       ,9y @1t a$`   9'x x*AR@rA ʐ`/$ X  @ ʠ0 60 @2r (0 0 "1$x "t0 0 Ex $  "0` * P pP  P 0 bP 0 *@ *@ % @ "   uO$|@ 8x` 0P ) p @ Pu'xPP p x?  PRƏ |`P0u | !x U |00v0AR6$x  0+000E'x  PCR0* 0  p p 0$'\ ``r   @ u$( P  QO>r@  48$ % PP 8%x dy @  `     pn #qp! w    @`ux` P!r %TG ~ 5x p `` p#p | pp =p pp p0A{ 04ebr Z 2sh! @"s $6x@@s !$r PaO$r 0Dr T'r 4 Pʀ! `!@$r @@ !rp@$-# @ ` 0 Pp @Pr "<0b C6 ` f/ `1 `3`0 ! g #x pB    % p @7 0rQp Ə $ @a/6|   #6 ))0!y ʠ 0 Y, 7  1yD6xu@r P$   0P*  *b*   @PDr 0Q/y  %@ &% "@%  % h% $|`00@ p 4 P P pp Pe |  p % P O0  x "`   ` `7x pU$|<` "$  % 05  G$( @  0  0 H%x 0 0 '  0 =   s  J  P      +   @    @'` - */p(!   @:r    ' "r6$x@ + - * "`a$r@ ' p # p p (!Op @ f qb E&W%g$%# W$p/ 0f0WO>6@  * ` - p p !r`  'p     P  P p'   % 4b@  P'P`'  O`/  0 >E%x 00'& Pp & ' & p&(` p & 7 &p&$ - &[&&&E$x Bp&x,s@#r p2Pr3@p&;36| @p& $ pp2 p&  `p& p26p& p2p2 =01tO %3@  ,Ȑ   0P ;6  )0'[ f/$r !  `1&r ʀ 1 ( 0(   0   ' 5r   66|  @ @ S"5q & *bp u 6`"x4p`/P4 Wrp6$ 5 p s 41#  PRT % 5@p$ (p @  tD * p n!r &x (P%&| 6!|   %/P%@uOy  (16x p& pp%  :$ xx '340 !|(:x 0'``xv% *(P xy p (*P % P4 0 0. p5| */P'؀ 0  PE6xX>'| 0  !  @84Ey%%p?N*   !y07LD B @?%Pp,?0@pB@0*@* @ 0Z@Fx /0(96xT>rp )5|     p      @ %` 0 b 07  <   %C/ `    6P6/6:  N@&Q4ppN LP`1 )x&9r& P4 ?@`pN,0% pN/pB 4p2PB0@p @%ʏ&B`4`4`4  `N`4 0`4B @ PpN@B &7 `4 P 0 pN `4Sx88QP'P' @' pN%  '''f B&p'pN '"%  0 +O0M  `P04 (*"3 6x@p4N@`0AH |  d`04P5Dp44U"$8T M8# 3(`9   300R`C 0EO(%C (-`44404 'P4p'' >A 0@MP20 YY%p F@ %p %MĐK ]` Kp, ` %$P2 P2%P2 P2I&5x SP2 P24P2I@%PI @%P2   P2Ȱ1 `2 @M `2`2K$* pM P (@2  YY O p%):x 0 L@2X p> 2* 0 p2 02X`2P 02P2@2 2 `pd  %0=@2P0 b- r,p1 <   6pUpX <P0P0 P0 P0P0 p4Jr P0=P0`,P0=0.]P0P0 UP0`=P0" i p00  J!| 100P.Y@0 @0p`!  <@0@0@0 @0 L@0w@0@0@0@0$ @0@0t ?@0 ? ]. A6PA0 . . (. .  . m @ -.  . .d. ._` ..T @ . ?/} m@E+}}F` PcqV0}C@; }WP  } `<0}&@< } }>} }6p ?`}}70 }0pK}~0KP PK@K2?K#x6;/p}0 p} }ƀ}}( X@@o MQO0p5 A0M} 6$ }) _@X}HPom}}B/0&  m}8p~}- @dB0P3}d e}oe}o Ȁ  @M~@M}po}9}}5N`{ ! Pn ` N//p+} 0 `[N } }0}M M |N }K d ~N }?0r } gN[}j` }x&}}0} s} }'p 2}0 p2} 0}0@22p]ЭpAЭpP0%0P0p}P0}# P0 p@0 n }J@0p<}9 @0O}Y @0< 0M@0 @0}"@0? }$p">-@  4. A `.p}. (}@ ."  @ . }}M - . }@.` ..T }  /}Y K KKp @p-9y #` I@p}p}%"o  p*" P@Ox  b  p Ѭ% p  ` P@/ p 0Xx0 0$& p   V 0} 0 p 0*$ $ #pp(p@p '(Hp  p   $ &@ TT (a l| | ,pȰ`b`, `P p ` @ 0 &x P % p 0 PI*@ qp  # `P S C |@ '   @p0 xʺp p 0 ;@;8 F%x @ ;%00 @58 @ 0 06Gy@#`#   GY p c p cccsMQkT "r 0-к 0!r  0 & Q0  2  |o. `     TP0@5xp'p 8r ` @ dp0 p`Zy%0p% pp  @ @  0 @b @   @ E6x `@+0 p5| `  `0 ` H@  @ ` p@  % ``&r t   /  00 0P P2 *  "`#%92g/ `2 `2Ȑ     0P  @@*      $ S pPu%x P= *0' 0 %6 |`%%  %%[%p|  `kmR @+0 0 K |,/00$p2kO     /#p !` ` P ``0`6$|k``%  p`  p&!P0` `2 zVO$t }p )0 )p@  xy @ P&0J*hz   CO#2 ?( @ P`* & 2ey " p%P<'| P ` P0KA#|1л$ xp` `% N+⏀m@`pp&Մ _Ў  Ar4<  "pR2A r#b!$$"6`0 |1ք/r `5 `1  m 9r6$x & p  4 0L 6=p ?0 0 G r$p (0 O  P  P =05x @ fOy p fd#| @ % P p>9y ` $&  +    K%x  ( 6  @'"'/" pp   P  3M 30${@  C/M  //1W1 > 1@ 1  1 @ 0% 1P 1 01>`W 02 1pN1 1 1y %%01$& `1P> 0>`11 > 1 +@ ?@ ?K | @ 1 K1p1 1% ? 1@ ? 1oP ? =p P0@ b 00@; @0 P0p P0 P0 P0VP0P0`HP0P01  P0  86x P0Ix / !`00   @0 @0@0 J @#0 "    p @= J@= 00%pP J  =+ U@0 -#z]. {_p . H P.E.  ..  P; ." .0 k. PV@  ..`:.k.  .Y. y"P . .O p...Lp@m. >P_5 ,b '0%x)#  T A x @-Ux % 0-p0q`f bP- 6r0+p!x@ -S @-/Ġ  0GP- F P-!GP-  0- p@-  =@- @- @-A@-P !@-Y` G@-` @-! P @ @-- m0mm m `x m ^x -x- -v$4*x j E1rP5j@6u0 -="  -' "W6x  " 0 " &| F!& )^$px{xxxxx x*Oxl^`xP x8Rx7 ! px xưll x x Є4  x% `Dr *pxg0r%` y; | R ` 0 >p @0% `02-0& PS $ E- @ # ~  ya  F r 1$x- P C w0.Pm-- 0-b0 R|N0# ȏ@u0 Я`#| |jy:, y ! 9E'x Q 9  y @ P9P90 4 pRP9"y )r 61tP:@ 16xm/@ #  @ "C* P pP  `9 y,& @ Є.@ !p^@.@ ( $  0y u'xP P p Ƞ^04ưP9 ._0. x; 0 @.9& &x  0.k9<'x yP0xЅ* 0 p4 00 Ir y"$`J x%``   0&@yAC "t `br AA`sA @"s`} 0$OQ@ `s!1t/Q Evj $Ov0Cr, T'r .4  O% M0% R1p@Y0w 46@ Rr@  %8x Pz?G `_0G p(&xƐ%l *   pl 4 0 / _p3P @<% <"P< % 0pl% %y`% x@ p  `Vp P ` @; 0% p  @P3&| $@  p  % ĀG =@m@` "$ F$| 10U$   6p  S~y=x y Iy %6%#0$yW00IyGO> @> y- pb I  yP @T  5x  `I,  PI & y Ȑ&%/Ъy@  9< &V0r@ &1%x'IS@& & &  ý P&&1z! pS% 0(U P? wz066|LzOzC & *bp u A zp _& _Y  ?  p z zU0r` `aH+(0rГ`zi P 0 L7x|` P90A{p) 0  {pB@0 *( PKx( Р@'L   %0p {%@0N+P7 o+ &@{ @ ?x   e(Op pN B"`K{`N`N{ `40 `B@`B`4 `4 /@B &`4% `4 P3x1  `4 @B@Bư& 08N PDpNpp6| ' B '&߹EfPN ''pN`p!"40M3 M*O Y*/@E*"A &3 4A+ 0 45`q\ 4P`5'bD#A 40{94z>5 h MP48p4{ q9/E 4 q P20 {`{Ы { P2I{P2K {2O>  {@%P2  (Ȱ1 fB p2  @M OOr`2K*P fy 0 {20M{1%OPX02P2 ? [? L 10Y( `2`2 P2 {  2p p2P202 P2X @0$XBEF{]P0 {6 wpX P*@ *"PPp {P0 qP0 P0=P00 X j @09@0QY @04 p@0 @0|@0t $p">0 4. A| P= *@ ." . @p-P  @;`[ . .T @}>pi  / qq}`p m}}Vp @}c$0}`@;}W`  } <0}&@} }`} }6p pq`}p3 pp0K G!0K K}w V 0K}&V} pK 0K} }!0Ml R};}}Ko o@M ofO0 U}6 Ж`` З`$}@}\ 0coo pK@@M:@}i @M<o   @M}"}0}ƀ}8 AA0ZU PkԀ *-@ `:r+  W$p ` `+r  0N0 0   @m `%pfP%p} 0 @})}@'}Yİ  |N } N }~ }  N[r}` }x }&} s} } }'p P2} }6}`@}P0pS} `}mpP0p+`0}P0P0 P0 }P0"p# @pE$| pop% K@p'P@p@"p<@0@01&@0}Y 1}`@0 @0}"@0? }$p"P}0# )0%Tx  0!*Cx+@r`Apb 0ud[@ P 0 "r0PAx``0D r Pd~1|u@P41|0ീA| @1$~@|@d~ 1%x +Ɛ  0 008Puy ( % b@ p0!0P, 0cs !A !$  # 0cGy`Q r3,+1r "$x1@T$xB9pP@1 36| : 0-  #. Ap . . (}@ ." A$x@ / v$|@ /@b`-O@` @ M ||.Ɛ  - `   }. . @_p}..T }  /} %  A$ :  @ ֐<&p1|<%@" @@@ @ cG )r 0  ,P=A;@ b0 p p P Ə C6P+pР-6y *"ʐ@  I( "y=/%;" P O* p&% J'x }`Pp`&  $V }P  @ P$ 0*$06GyP @0-  ~ H Ҁ 6H@ HH FȀ  $  P    0pp`F0ѩ̀(a l| p$(0` "pp ``@`P`, ` ` `'f$x P%0 E'xp  0% 0   @ *  @`3 | `kr #P `Gp 'ЭЭ9rP 0 `P  P` 8 E%x b @ E$(090 ;% @ P@  ?GTQ T]T 6r`Tp!x( T  $8r 0 QT" 0>2 .b 0|" @` 2 @ DA0  P'GT @4 oHxp p 8r ` dpe pp`Zy%p% %bp@Đ P @ 4r'p p p%   `+ 60r3% [` H |PG$|` L @ 0 ` 0 0 p 0 P P@  a at p    "   0Dr P  #  01 *0*bP " O `2Ȑ   P  40P* @    4b  * %p = %V%x 0=% %J%x@`%% %%[DŽ=  = .=O=# =Tr "l ? ?0`0 0p%0#qP->p%0%=p6x$?@s !1toPF`0!p Ol0 @2rp$PT'r "  m T |a!  6$x< m % P  6|   K0 1x`1p K m@`|`uO 0 C / '@y/{  !0C K P~ ``?< k>>%   >` +pKP0` `>Kk% pfO$t @ƠI @+Ex` 6|  @P `% E@ Ə0Jh%P & CO#p2 ?% P* % & 2ey -"'Ex@r'| P  !0KA#|1p` `%!N 0-@p+pQ8#My 33 Jc2+ = P  1$r ={ C6{!{Zf/r 0{z` S3O { { "$x 4 {-p   ` 0Lp ?0 0 G0 _  &| P =@ fOy Kfd#| @   P D  ` $& /   K%x  0 *  @'   Jy  4*P  `3-@  &,PW|W\W3WpW @ J ?pZ b#pK0@ pK K?"@&r1 1*=pK12?|pK pK PKYR 2%ʏ/Z`K1+`1@f"1t b1 1 /P  P0%1P  1 @ pK 1 1 pP1`W5|M@2 1 pK1 1 1yN1%011 `d1`> P>> >J193J> 1@% 1Ġ`L1>1p1F`   V/#VP0@ SV  @ p @0/p V` 0 ` P$P0pP0 P0  P0@P0P0 P02  P0 P0` # P020  @0 ;P0 p  0#0= 0 pz0V 00@ @0`   # #  p&x0V. zp z.62 `!E. . r.. .   P;.  q =. + m`. .@P m x.`:4O1..k@.@ . .c.. .O p...Lp@m.   M05x )py "rD3y;"Ey<= a$< _P- ":S :/!  ! F*`*"F:0 0G: p P-!P-  @-  =@- @- @-A@-@-@-\` Pm@-` @-! P @ @- --0mm Ca?s"xpG=!xt05@ !Px1`1|{"1 r}0pbUA$r F$|%`xP1`17G Mtp"$r 4DWxe ⠄1 ( C@$~P| 0@&R| P| - 1|143 `t4 @3 `\ 1xu@A1$x1   6$x`- #|PG G26%xȠpxpx p, px- pxb! -px    @v0 (px ,.:E& OI `x`xE`x ȏ P'PV |-/`x D0H ^l:`x2 `xO Epu`j *@*O3 q@l`x*b  `:%P* / px`x */ j&|.E% p#P$ kpxpxA!S`  +^Ox R px7 p x@I) 05x pl(pl lH'x 3 | Pl0x pxp-@xl9x@R @"dr 0-&@$lМ "0/%S0b@E`   4a pi  ! `x?u @O*(  p8P  ʐ %O8M @T@8  1$x@V`x  pW 71t!vx  "E6x x   % ȰB  & % % 0%  +b px -- px -P;"0P  ( <'x pxp  9/0x& OP w  xX T pC& `p9@06'x p p 0 `lPAR0"$0Tr 0j#>r0 "$J@9 0@@p@ @PP @$ @5. @_?@  1&` (cPPpy^@'HT3*$9`!r cG  % Z` 6Ppp pp p- p _Xx 0p p*p"% ^)p ,^p/ ppp0c{ Y`r X`/s,A A"s`T ;d.^?pQdpQ p ^ ^% p:r P^ p #O r p pPEE6ppfO `Q: `Q pN$rg`^ 0   `Q FPQ FwEj& ] @Oj qj` /Ow 0 2w   6 |E   w%P `  [` p ` *` w=` :` ` 0 j@&` `kE|   F p;F ^01$| Ey p ;P%  (&  $@kPQ/$|`2`#$Q /Pk:OP; #0% 'ȏ Є k  #  E%x w E%x00  02 @  % @  `    00^   p^ "& Tk(p^  p^#p0 +6^ .Op^p^p^lpp @Of p^01 w G#wk GpG 0 *P1*$%G$ @ @>P^0^0`kw-'(Pw "$ k!/ @0   Fx w *  %  %" 0+/ww  3 |Р@1   w0 @$w0`* 1  0 @%Ey  %G[/0 / `0p|/p0L p0p-`Bp; 9ww% pj p0p0 = pj wfpyw ,w +pj  pj  Opp pjpjww =P #p w= I-bw6pj0 /0=A ?w VO$Pw  ж @ I !rR 9@]!|; w % pjx7PppPIf ` $x80/7@1kx ~P8& E6x  x xw IP% pR$  & зз зE6x%@cJE%x # ʠlP*& k@  /ʏp>@ @%Ex p>'8!x~)p>K's_ pDVR  K'px  X$  /O 0?   =b  @(pw p 0   $x/0 @0 0 `pB  0p4 `3 `A pD` (` d` x*`x @y  P $x?pP `x/p0 `0   K 4 ## px %pbK `2 pVpK6$x#p2 P2&pxpKP% `xpK`x`0 `//=# m `x0 O `K`2[ O V?`x,?%J `2$% `m%% PMX5xP Cw&% h %%% $ % z @J 2 > 9f'$pz>161` P%10J )PB p  P39JP?  && P22P2 ) = P0  @0 pa[H@0w 0_ C P$w P0'`FP0 w$ VP0@[`wP06E  P0p  p @ ̀ V      < @0` PJV 0 PJV @0 @0# pU/ I*ȏ# < @ w0<000  U@U ",IP"I"0 pw "0 M: pw /P.@ `_&x@.8`  +0@ o$| 7*`k `M`kb`kP:*`k0P./P.P:P.OP..P.pkW#`wV$ @) `QP./ G bdtPPP.  4 P2 `a5ypw@.pk@.  `P@. ,(p-@.>@.w@.`@.@.@.@.T@&@.pH 0 ,.b .  6 @ , 6r0  _P*  p  ,p &ʏ0 &,0  =,  , ,T, ,_ ,,I pPx, P  - Px- -)p_x0x-#x00lP-S1%xFPP-S@lp#@#p  0 4x0 x x&@x x&xR xx&@x`x 0F< '6Gy(@ P1l[Q@Fl=6l'xx x0x$@x xpx xƀx 䀑rHxp/4Px`-j &x+6$xLax(0rxH@J- xx` xx@J(x* k  k @J0k00xPx8x{%Kx  *x @ 0Kx  x6K IPxM p x$xY0r xxP xx x8Px 8x nx0 x`x Pxx<x`xx @UxK"xP.3O lP..P.lb ,=x) x`P.PlP. x pjx8P@.?@.w@.k@.l@.@.@.Tx( @.H-Hx s,x `  ,p x0 ,0  0 ]x@  x, x@,p xx, xp ,/ px, ?x"x;/Hpxp/ %0E` f lb' !(3 & p@!/p Ġ@8 @@0Dx 0 0%*0 0p % P*O0\А E6x & % % %%( *b(PE'x` 0 A 6 U'xP p0% `7P6 | f%x 0p& @ p(E |@@p*  ` _Y 6r Pp&x   P 2-  1 *@p6$x &XfƏx*  E6x` < A$r05$N1e4`w%p  p P ` P`#6Vx    SOy *b%p * p * p %P * "0P    %`P  Yx x78x `+ `K | `*0 `  @O  @ & @ в@ PP. Ơ"` @08 9 P 0( 0:(0+` `580'  ` 00 p p ___P      н!Q 0  @     "r  pN  O @& /  N   E `@  @1 p# Qp + P  pPp ʀ //p P  @b# `G | 0г04$| 00 Qp  F |` PO x (0 U$(  ;8 $ /# P p|p-n*w= O 0)#l~   P &x @` 8% P !x` 0]`0    6 *$ l  % @0  "  # $ 0p @$P%` &ȏ 6 |` 0/0   [p/ p p  Pw 0 iH (D@0  ) i v0 H  n@2 %/P#Ey ` 6$t p @`  PPu | g%`ad#| `/PPV$|  $ $0% 0P&0% CO#  @  $* 0$P P% $&001 +0P 0@% .`N0P``p `% > Or 6 B%  > 1 ` >vp p0 00 'b4 0 5 @ p<0 % 0 66x p P ""P t E 4` ` `  ` 0% 5|`% p@  E%x p 0P  `=Ey 5x  &8F | P  Pf#| p   2?P0; : @0@0( P0P0P= P0@'O`P0+  IP00%P0= P0 P0 0I"/P03 0`$ &0$ @0t%@0<`$ @0 @=@0`@00@0_`   >%P0= ;. . .&.X..-0Ex / u.6  S `.. PHpp @/@ S  (:p!.@ p% .".0".p3 | .p%.". .@H@G S.! ' @/P-P i P-/"P- pi P-O]p p<u C@` F1pE) @^ `P-i`0-* "+0-@- GpRP` @- "PS0 @-0`9CwN@- @-@-8@-g@-@-C@-@- @-O p@- @-9 `. @- LpM% P '% DfG-V&R%0QP+ 1 ` P+up /ʏ0 P+0 0 ` P+@+0  `0  /@+0 @+p@+P (@+ P `sOPt@+9@+ p@ @+I 08@+@+ @+@@+ @+ :Pd@ 0%%p(s ! #r`ep1xgPx@0#r!G#\!O0@90@ P(ph!kPT`EyAPx@dT6x Sa |-# <C6x- 36x Ec|p=CUPcwv DPy Cb' bOar@H1 xSp0&drE x a$r 3# 0F!rnC'|$`fph|"CrpU@1$r`# 0T!|P Op$@0pp4xppCrp01x` @| 0p1`| !PmAy<@x"ArP!O  Exp` `q00pbc6x"pE | !|q4pb W4pb`14pbX@pb P'Giؠb)Z" @$ !rP'V#( %Ə@ P  O( [ Px/$r pC$| p;x *  " S|  #y PaO$x[ Z   3    Y     #     ( p%$|!   +     P   % g 0 @@ =     O     /    ( p      /     ) N ,    `/   ( pJ$| p  p @ ;|  /     9 @   @@  /%O'|  /   pp$p` "r: `@J| * * * ! %@X  +I       ``    b /  Ђ   pJ$|@   ;  9@   P P 0Y0 P   0C'| (@ @    9`@  ```}dfr` 0 p[pKO!|p000 @ OP P 0 0!r /0@#z$0WP /@* !_;~  A@0 A 90Ё"B0X@FQ" , (pH0A0( p  lR Hp9,@ BGZ`0  A@  @ `0<P ` Pp82  @&` % <    ! &5P #w% /A ` | 4<p$' !  @6P ʀw/D / D    pMd$ 0)@+ gA@ `` A4  T 4 P t    ]C\[7h 0 \*/ P l   P pe @ <~{~  @` >P $t@@0 Q `$oD 0/@pP@ `@$d $ D  d@P3``w/` `@  @ P@@@@ϝ{%< F| 00L@  p@  \$`  @\@  | `  `忾|L @<,8 l,H  < |x | "/oO FT+T! $ $P  hH rC  {z# U[<'''''I`')@'''  '${?`79O @P6 p6C/  08  /  p" 5 H6_p 0  Ph_ "@ P8@0H @@H" Q8H" p( x  + p#(0( _ +  & ; tH&:VcHi~f j ~k `L|I xe |@ H<`4/HL`L`L@5`,`L5&`L<`L@5e`L`L|4`L5`5`L`L@5 5|`5 `55el@  M@5enM,`LM ``\`` 5 5̀`5l` 5 ,`@L ``4L`5@``l`  `5 `\`4@````5>@ M`5@M@ M`5 `5@ `\d6L@ 5@ 5`@ `@ `fj5=x]4]k0]T]a0^t,^P^mHt^$^n0^D^5b0_d(_Nq0L_p__vrH_4_b0`T$`6l0H`tl``elH`$`c0`D aԾx0Dadhay0aaaQdHa4b&@bTdb}`btbbeHb$c.u0 p0 Yq: DsH s0 u; wH w0 x< zH g{0 |= ~H ,0 m> XH 0 2? H 0   H {0 A H @0 B lH 0 FC 1H 0 D H ;0 dE +H 0 F H 50 ^G %HΓ 0 ۤH H /0 XI H 0 իJ H )0 RKH H0 0 ϲLH H0P #0 LMH H0  0 ùNH H6 0 4OH H0 0  4@fH0 0 QH H0> b0 RH HH0 0 SH H 0 D0 iTH *H 0Ƒ 0 UH H 0% &0 KVH H 0 0 WH }H 0 0 EXH H0 0 YH H0@H R0 ZH `H0 0 ([H H0 0 \H H0 50 j]H CH0h 0 ^H H06 w0 _H H0 0 M`H &H0P 0 aH H0 R0}wbHu80 0 cH H0 40 YdH  H0 0 eH H0  0 ;fH H0& 0 gH mH0 0 hH H0 i0 iH OH0 0 jH H 0 K0 pkH 1!H!0 !0 "lH ~$H"0 %0 &mH 'H#0  P(0 i)nH +H$0 +0 ,oH e.H%0 .0 0pH 1H&0f 720 P3qH 4H'0> 50 6rH L8H(0 80 9sH ;H)0 <0 7=tH >H*0ƌ k?0 @uH 3B+0 pC,VCH %  T2 ? @8*J|2 O"qx#X/O "x@" ,) "p@9@@[5 o$ @H'8@3@"2\ @/%@@/=@.$@@/U @@@/m @.4@@/@@@/@.D@@/@@@/@.T@@/@@@/ @.d@@/-#@@@/Y&@.t@@/)@@@/,@.@@//@. @@/ 3@@@/56@.@@/a9@@@/<@.,@@/?@@@/B@.<@@/E@@@/H@.L@@/K@@@/N@.\@@/R@@@/U@.l@@/#X@@@/1[@.|@@/E^@.@@/qa@@@/d@.@@/g@@@/j@.$@@/!n@@@/Mq@.4@@/yt@@@/w@.D@@/z@@@/}@.T@@/@@@/у@.d@@/@@@/@.t@@/@@@/@.@@/@. @@/q@@@/a@.@@/O@@@/5@.,@@/@@@/@.<@@/@@@/ͩ@.L@@/@@@/@.\@@/@@@/e@.l@@/S@@@/a@.|@@/o@.@@/}@@@/@.@ /@@@/@.$@@/@@@/@.4@@/@@@/@.D@@/@@@/@.T@@/@@ @/o@.d@ @/U@@ @/;@.t@ @/!@@ @/@GH@/@. @@/@@@/@.@@/]@@@/%@.,@@/@@@.<@@/}@@@/E@.L@@/ @@@/ @.\@@/y@@| ' T2@@E" @x@@8/@@/ @@/2 @@/J@@/b@@/z@@/@@/@@/@@/!@@/%@@/B(@@/n+@@/.@@/1@@/4@@/8@@/J;@@/v>@@/A@@/D@@/G@@/J@@/M@@/P@@/S@@/V@@/Y@@/]@@/.`@@/Zc@@/f@@/i@@/l@@/ p@@/6s@@/bv@@/y@@/|@@/@@/@@/@@/@@/v@@/f@@/V@@/F@@/6@@/&@@/@@/@@/ڢ@@/@@/@@/@@/r@@/X@@/>@@/$@@/*@@/8@@/F@@/T@@/b@(/p@@/~@@/@@/@@/@@/@@/|@@/b@@/H@ @/.@ @/@ @/@ @/@ @/@@/@@/z@@/B@@/ @@/@@?@@/b@-/*@@/@@/ @@/@@/m@ q/Q.U@. /@ T@@/@#@K @/ @#&@ @/ @#2@HN. /@#A@@/@#N@ N /@#Z@-L@@/2@#d@/J@q@@/b@}@"@/"@%@/%@#@(@/(@#@+@/,@#@.@/>/@#@1@/j2@#@4@/5@#@7@/8@#:@/;@@=@/?@@@/(B@=C@/6E@#PF@/DH@ @I@/RK@,L@/`N@#9@O@/nQ@FR@/|T@#R@U@/W@#\@X@/Z@h@[@/]@s@^@/`@@a@/c@#@d@/*g@#@g@/Vj@#@j@/m@#@m@/p@#@p@/s@#@s@/w@#v@/2z@@y@/^}@@|@/N@@/>@= @/.@#@@/@##@@/@#2@@/@#?@@/@#K@@/ޔ@#U @/Η@b@@/@n@/@#z@@/@#@/p@@@/V@@/<@#@@/"@@/@#@@/@#@@/Դ@@@/@@@/Ⱥ@#@/ֽ@@@/@ Z@/@@@%@%@@/@2@@/@>@$ @J@-G@@/8@#T@@/F@._@@/,@#k@/@w@@/@@@/@@@/@@@/@@@/@@@/v@@@/\@#@@/B@#@@/ @@@/@@@/@#@@/b@=) @/@#@@/@#!@/@,@ @/ @6 @/J @#A@@/@#LH b-`E!G` @ //@@/ @@/ @@/#@@/;@@/S@@/k@@/@@/ @@/#@@/&@@/'*@@/S-@@/0@@/3@@/6@@/:@@//=@@/O@@@/]C@@/kF@@/yI@@/L@@/O@@/R@@/U@@/X@@/[@@/^@@/b@@/?e@@/kh@@/k@@/n@@/q@@/u@@/Gx@@/s{@@/~@@/w@@/g@@/W@@/G@@/7@@/'@@/@@/@@/@@/@@/ɞ@@/@@/@@/{@@/a@@/G@@/-@@/@@/@@/@ `D/@D/ @D/@D/'@D/5@D/C@D/Q@D/_@D/m@D/k@D/Q@D/7@D/@D/@D/@ @/@ @/@D/@D/@D/[@D/#@D/@D/@D/{@D?C@D/ @D/@D/ @D/c @D\BdS,/>@.c@@[@.g@@[/@.k@@[/'@.`o@@[@.8s@@[/m@.w@@[/@.z@@[@.~@@[/V@.@@@.p@@[/@.H@@[/G@. @@[@.@@/@.Е@@[/<@.@@[@.@@/@.X@@[/1@.0@@@.@@/@.@@[/ @.@@[@.@@/b@.h@@[/ @.@@@[@.@@[/E!@.@@@.@@[/"@.@@/(#@.x@@[@.P@@[/p$@.(@@[/%@.@@[@.@@[/e&@.@@[/ '@.@@[@.`@@/Z(@.8@@[/)@.@@[@.@@/O*@.@@[@.@@[/+@=p @@[/ ,@.H@@@. @@[/V-@. @@[@.@@/.@.@@[/'/@.@@[@.X@@[/]0@.0 @@[@.$@@[/1@.'@@[/(2@.+@@[@./@@[/Z3@.h3@@[@.@7@@/4@.;@@[/%5@.>@@[@.B@@[/W6@.F@@.xJ@/7@.PN/:8@.(R@@.V@/|9@.Y@/:@.]@@.a@;@.`e@/<@.8i@@.m@/:=@.p@@/l>@.x@/?@.p|@@.H@/7@@. @@.@/iA@.Ћ@/B@.@@.@/.C@.X@@.0@/TD@.@@.@/zE@.@/ F@.@@.h@/3G@.@@@.@/YH@.@@!H; q"н! %_nI@.@@/J@"Pŀ @@@G\ @/`K@@C@@/L@"@:@@@.@@/RM@"ـ@@"p@@/N@.@/DO@"@@.P@%@/P@.(@/BQ@+@@.@/R@.p1@/@S@.@4@@=p 7@/T@=0 :@/>U@=P =@@- @@/V@.@C@/0W@= F@@I@/xX@- L@/Y@=0! O@@.p%@R@/dZ@.0)U@/[@",X@@.1[@/P\@5^@@.8@a@/]@.<d@/N^@@g@@Dj@/_@.Hm@/L`@.0M@ % O@.Ps@/a@)v@/Jb@.Xy@@\|@/c@.`@@/0d@.Pd@@h@/le@l@/ f@.p@@.t@@/Fg@.x@@.p|@/h@.@/ i@@@.P@@/Xj@.@@@/k@@/,l@.p@@.@@/dm@.p@+@.0@@.P@/8o@@@.@@/p@.г@/$q@@@@/lr@.0@/s@.p@@@.0Ȁ@/Xt@.ˀ@@.Ѐ@/u@@/G .visible .entry _ZN5cudnn24engines_runtime_compiled25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPh( . .align 4 .b8vNu_0[68],u64 .ptr1U1p 2 ) { .reg .pred %p<26>;b16 %rs<4732 %r<18164 %rd<23>; ldZ!.u*O1, [QTl0+12];2Y.203Y.444Z5Y.366Y57Z8Y.48/19Y2/20X  X1Xcvta.to.global 1,*c3; mov!2ctaid.x; shlc322,8/R3, %t-Qadd.sf&9,2^Sul.lo310,6324, 7zr1325,"31#6,2G70I%r26J87, 3; setp.gep8; @%p1 bra $L__BB?  1. G%#10(Q40, 0Z2ZC#eqQ"13Q$hi9u5!3j4g#lp&313&+p43(-#ub'33;23#8763&p13(68;f7; madg&396"E9-46% w4, w$430$ J 3C.s64Nd4I4:8\%rd5]; and$46~<4<3#~3u16:!s1B#47J41; '3:c1Ik 55167&48c 4 &503&+p7e5( &52;5{5# 5 &553&,p6( '57; &585"E56% 6N $620$ J #63I7660 I%rd7$65~ 6`X>r65#662s $T2; or2)5).2) )8)71)9)R&67d *6} *&693&p 7o) +&71<767/#x7 &743&,p9( +'76; &77,74"Ef+7% +8 +$810$J8^ +#82I+9+8+8I%rd9+$84~x8<3# + #85+.2cd 4'4'7'4'  <!(1 93)C o*&86f5&, *&883&,p18) *'90<*9# *9 U&933&#p1  9B) +'95< &96x,93"Ez)r9s 9% +9 +41001%K#10X 0.3101N 11? 2 10n 144103 5#1038O:1049H`? 8979995949!9491 :5:6:6105h ;!104! =61076),p1 !10=, A8109@C19E1 0 G1 R *8C 2\ 3\4i  \]&30])11^,$, ^^7^^9^2j 41O6)#p1g1{, ^L@, 1r&I3j 9^3 #p1z- 1|~1` 1%l4 k) ^3Q 6^3]^3U 8^3^11 ^ #145^81^ 5i^A 3 '33^ E3, 6*^7^*20^^o^q 1h ^! O),p2o #14R 5 1@^& ^" ]*#p2^- ^A59G ^5v2^)53 50 1! ^5] b 1$T8P^s1t1^ v1 ^6w'^1^6i^  6R ^ z  h] *23^4^4^5^h ^"! ^)-p2 , @:^& ^647]*,p251- ^A  ,9%1^)72  ) 74^7]76^$ ^13178^ 1: ^8o9^1]7D8D,7:B 9CwdrtxZ322]B~8: ret; } # 16#ToNhwcKernelIfffLb0E!21;$DataType_t0EEEv$0T1_$oT_PT0_$&NC$8Ug$-U$.maxntid 2M1, 1$9w$0&<7$fEf<28$3$p// .sha$%x&$NE5shbuf[422#F%N+`!g$W"5}3#~.60P"W68~1&3 (W l)&U% 'U%  %3% )3DQ &y] (#5.5. >&  .\z?  3' $ .$# 3$t+ 01($ &31_6 w$2C$ltC, 1 &10o'$u 37, @4W y24i|_Cwide72;1>+#U%5F% 7w 1% $Q1$V -#st [&f3r  KQ3QW/+R"ltcp!268@%pR'1_6: bar.sync 9z,r1F<&91_1k 6H&7T5U5)&U4+&#5 &# a|W&4VV2m59W7$d1 w 2,(ldu"%f7 #%f2&p y %f9; fma.rn19 W9%f1P1 29105M%3z-42K8.pe -&1s# #123C3u64)+ 4,+ 5 15|7 d w(1 "g7#%+B,1+( !48 A93# 105;5/2]lt z3t6t4t!64t"^W7W5W!96W7; bra.uni0n  ;14:6 `1"1X ?,"5 G%i!1 r1 v, 0O0-H ['I1 *29J4J K5KZ!%fOL92? #-!+ 73V'?# 6+*31879fZ"31 .. 8/2.5  y+   4+21$%f%%)33 [  \_- 3   2).7 3"O# 4 3316  *35 6 5 7 f  5 MQ lP2ll?0L#lcl&14I=-<8m%43mlmhm^!m^!m^!m^"CJ!m_" mP!m_m^mOf7m77 m7mr2m32m8miW 28m8w2m-* m2m8m2m K8m*7m"8m8m2m2m@2m42mnm`U,m=m 8zm$=m2m8m2m8m%8 m23absb511equ4`0f7F80]MfA B 40<.Y0{ p4G _ ?2K 9 892. 2*Ag+2a 8> 8# H; 7  6T &J0+B61W 7 K5!9 "L qAI!p"l7r   242 j[ 24h'.$998I Rb8?!p -?2)5HA lI13|$ 1?;/64?3? ? ?X,/ fS(879-  Q4FjG35 KJ4J  F*98 333_-@&f3I79 o-8j-!Iw, #2w;192vwL9wI9w91^vQ29G2vD;[90;vD; vYJ}EK;x']$ ;E9D9O>9<333>9c22>93cI 3U>9 2+13 >9k33@343>9JUF >9a3>93>9 7>9"97#K83338wEH3@8_B38P 8&38 88 6;336 80E8 2 +?w1*B8f1M$$8 l 8fo:843$@8fN@8651O86rj w&#fc8&32$ka^!^!^!^!_" \76y2_K^O\7<434\7c.22\74\74\74\7}44@444\7JUF4 \7a4\74\7 7\7& J+f 6H+f40if=z707S71!7}4!4!4!7VE!4!4!70E7z5 1P NuT4166 U7 6iR3v76 1B ,6^F8 6E8 ?81?8 9e6c% Q3?8[ ?86g[S <8.8B6 S\62 f !\6 2$\6`2 2272 2 6 86{8 6y8gx]{8 471p6H=E= 68p`6C6+e@2Q,???q6I}7}@? Z0"o#@6,?:~ 8(u,K?A=@=: IqQ Iq9 Iq Iqp8qaB /BKq7pI ҁ'C( "1{br|MqppMqk1 *oEC Nq5dSNOqp2X5QQ 5~ %914mi-6 3 iDkOq9m1,qOq)4Oq72852861r  6G OqmOq{ela8Oq552l5GPq5,3divP p"512Q5Wp!iI3q5 5d5Suj`j)ISXQT pK  O2 Xx7O:2Do7 q57uq8) L2qO583ʕ D&Z Ut@8 q&Zj q555946q8/75glqQFq q#9M9u4=15v q58y8_888/52q QMqq$/52qB/52q5p UR $`766} {D6zoU , 3#1T U( n6xql dW7 UTq;9 [sj Wq89 7u #U Vf ~Siq"CT  T&q8 q\ S  }T S [ 89  SqI52U19>p 22f2c2993qY[63h3_!}OS,6I3_I!3^!3^!3^"3J!3_" VK}3_K3^3O93839a3( "3]6346393| 3ޫ3a3m 363836; 6/ 3U7383836363A63633`+93B8u836<3638%39) 32S<$O15qs  qs 1W<32,6qs69g989_ "$ 2qs6669Jg+663 4 #D  UW8  9IK+6 ە>T7sx M;aq k^M;< M;3r i Wi Y is/70isx) s`q  7V>s+7*1s `#s/70sy s <Is*g)6L}H J4}s/70sx~ s~1uX)84s.6= ;SCoi6= LF2= I9= o=sYZ6o=G9< E;< 0;< D<J7J}< DJ; < Y260GK;*$<0;E9D9O878+( "]7478b2 377f:7P[7t 6P[7 E<_4< 6 +<77u<E7u2< 7u77<KE< Ru8$ZRuJ6dW  v78s&n9W -t42W 3s *73*4 9   7GV   7 W f%WL1LQ Y&0Y)81L*.q sWi& eIe d>~ WQ ( 9)a 9)9'J a!$92:] 9b9 9 9a+ $95$85w X$I.96$99$)97$.9$UWQ_#"$f$c$ W9"WAZN"hW"J!"^!"^!"_!"^!"_"^"O9!8=9 Km  \/10!3/10"9 !i 38!o/10 8 /10: !C" {p3qUypP!b4 d9&!?) "%I # u"`\+9! 9M"/10J: :L9O (2<  '99~8 #!3:%3u64}.d1 9a^+  D"0e 6#50? # {3/oQq& # 67Xu 68dUUGV9zGV":0t  S>O! V9249 (6 F Q 69s6 9 6)d>r tB^ QFW9F}q|  | 6|` 6 W99j=W 8 .6__halffMQ@8'G!-['16 %rs<115<76\9%28J@3b9+[W8]LW(@R)V] XK.VI9V]5K>bhP 7t5195.: 4h7}5?>1.y7:[9 uC&// { cvt .f :`rs1;} 8.,# ٧ا0kZ rnYaX@9]%rs[<'1111 K9@ Bbl$r4p:2 o) 3r75S4o:$(# @ r`vrr$48u:5e!&=4tu:k A:3C?!7r d)r15 G8R %8 5r98? 18V73%rs\ b3rs3E2h KW|-] 4$rsE *=539E 7 OY.s5O3mfn O5O"] O6O7$rs(O 2=P 2P 7 P7P3P.s7P5P6P7P4eP8]PL)rs OvP4a P 7 P/35Ps4 7P8P 5WP!a )shZj:m 80)hih ui8iU@ igie!id!id!id"ic!ie" iV!ieidiOX2]<g_|,!4B7  8&79 jNfTT(29>f30199=}ao0 !u6;7; 3;&9;39- D3w)9> tj x!pd ;?f207  3 m)#3# 4-i0/f44&]9z? 080S2s 2=Awe 2s Z9s O9s Yr _ =YA?"2# q M2*q J;Y=6;q J; q /=<;K< <;K9J9O/==3437h29/=3/=3د 0Y377 ?n"7733A3537ObF/=33RY3/= 8.=_23w<1((11<33<3g<_42Z<Cw p<C'9<<%=< S<8E< V2A8  %   k;e ;265E(5 X< "F;H2F;R9i`F; E; A)gE;K#9fU!d!d!e" V!edO:=444:i29:4:4:S4:~44A454:PbF:4:4: 8:88-2928i:"/7:ES6:16:w-95:j45:4j4j4j5:\Ej4j4j5:8E5:  1!A88 8PvX9" 9U99 X<9 < U9_Y9al625 -2; s9; s9S!s9 Y s9 s9fX4<<2< 9 <w &7291X<94O@9f29x 2y <2z 3{ 82| +x < 8D?!8 54=1v6N=K=8v8vf6I6+Б2s2?82?X<=@V7V1FV? 1w8@ѕ3# ?6 !.J u1o8WF=: Dz8 Ʋ2QEƲ Dz9/ Dzz /ɲ7a N*15Mw#wk β,15As `H@ :7;Ϗ /15</155w6,425MZNT :͉UvL|Z7j#Y |Z552Xw"2w5AϠ O yp5kO Su<{/6/15> > ]l67M.26S[,SZ? 15 7) s;&z$ 0_9%r2r80_ 05 5 5  4Ax8/959 ! =?@] 9s;9rQū|4n u2nID6s;_:s;/52Ax,s;;4tAxA+Ax5 5F-t YZ  3+ YZ{2SIt6\x  a \x5 =\x O6\xFF= \x&E1A;V Y2P!Y A P7P\x3.  P 4 X ] P\x5:[3\xD5 :l:i:=;9;\x_6;n 27O! ;P!;d"V;P!;d!;d";P!;e" ;V!?GZ6 ;dU;O9;8;9;( "re 3?e S"3/16;56;p[; :v/16;s 6;x6;y};A6;6;}BS/16;8;6;8;&9M ;?g8?x7z%6mU a41 9zI23 m$˹: j49 2z666NS663 4#w 6;6 D].z }s F 9O* +Fwcshared"y=! V 5= BWv.zU\ E=v Y'ĠY.zO/ q 8q &.zy, .z6, V EB.zO7 !-| ! .z-  ! .zz9.z 7.zN7 ! .z ! .zzI .zr f .zV6E"AG.zo6kE"SR2E"O9E"AH_.z~A.z_~6M~AM9C"K; C"6;C"J<VC"6;C"J; C"X_86x!MW;s F&2W?!KW9!J9!O@B7!57!8!h2K :7! @7!7!7!{ 6`7!7!@m7!7@B7!7!@PE@7!@7!@ a0U7=!{`87 dr@c7 7 7 r@} E r@f4r@ 9r@&<{r@{2r@{7 7 r@SEr@ |8\FY[F _@d|@\G]|"?f|?1|<{!M?_[c82|A7[$>H{li> >|_ [g+d!PP!d"VP!d!d!e" >><:y]L9dO4y]>>>858>>i2K :>>8>>8>>X8>>~88B88>>PE>>8>>88%9J >r}$X }=- =}H8<9<=m8<8<8<=\E<8<8<=SE= w77}rH|;} G }[ 7\: x=}Nx=_00}?) }=} =}O7=\$^=}@9@<2<}O/ Ad"ltip0U. 5({9914}1M 9 8~636I B&v f5h9Nvhg:103#10|#loY aa5U3v505r*64102+225Zo9p$hi v14316557t3shr3L|? q`p?{ 9910354 3$ ~ HTH924+w ;G2  |{h 4[J@%p9D99 C~{5?{587 8~{ ;X3 S5V WX/461bh:/47 ;$47{ ;3 -7 ;B/47 ;99"1J(z 6LvO [ Z[ Z[>6R: [  ~8-ՙ[#1N#@ So)73ScB7kc#5GyF}9$3J x|1Q8I 2I aO D m8818$87$8\1q=?e _f89Nf Z})!$92&b 99- 91& $95$8 \g1gQ.96g99 gT9g[[Q9);glgig[9e[A~Ten[eP!ed!ed!ee!ed!eeedeO9d8s9 cr c[/20c3/20c9boC98b7`/20`8`/20`8`C`G - _4_"9^]&]?/]I ] {\fb+9[kY 9XMW/20<5VV(Ud9TY7F2m28 ~L|e #98/h2: ret!3:>'3u64 !.d179g+ r #0 6#5A  3z  67{'6D[ ,kZ9&jZ!;0[F= FFٗ Fǥ>" F}Z9}ZI6Z x6[5 [92y[; [>/80[gb ,x Z9x8(?Z<6   `4 ".69+"@3]U&U.13__nv_bfloat16fLb0͏ ;&HP8cX-c`&^7[;%28+ <3t3// .align 4 .b8B''\&;+\K<P8Z[(Q(e f9;fe[ y.Q)c(c:3t=L<+21992;t=+21^=3t= : :?O3 AT/216 16051T6$%r Q@1Jv=7-= 5>v=v=I o]=5j5@5@_\] +7G5 z=U) ' 3'A5s a=8_72m \ UA =\ J7% Bbf16H=? cfma.rn)e\ZX l LF&21Z 1 M<3<<27:L)y3#~<< v4(M H] OT|5o3 <T  w T  <5@)r1A5g >8*`5i<5 5rA@fB @3 <Aq v AHm ,}Y ,: O , G;> \ E 4 Q{CQ4ӗ3Q4Q0:+f2r64/!`&; RER69 R7R:R8I?R D {4!  RR8:(R 1 -R 9S/10 bnQ: Z:01 q y iUH%  ox6YDc: Xe! l! l"UWX! m"  ^! m l O WX] PR lR4KA7 A AAW: z+ ]]0wY6|  f ( 9393/!2')f32$f3Wj2equB)2*9x :@ 28zy 3f$64> y z"` <` 18 27!2?Iz0!P2!b9!W9![?[A&2 !U2J!R;?R;!R; !` D;` S< ` D;` S9` R9` Ok>=3` 43` 7` p2@ Ak>3` k>3` 6 0\3` 7` 7` q` "7` 7` 3` 3` A3` 53` 7` WjF` k>3` k>3` k> 8j>4 !\ I%4 >11 >3d3 >3d >r'Ed!? >_42>=z > X: > >`> > d >@E > ص2R9 [S% d " =e\[2\[ڵ"C=fZC=/Z4O(2h ?=:2=:4K\=:f7=: 49 9> 975] 95h#4qE1x6&qV=qS=q9Z_qxg'61qQ6Ki!X:?pM?2e6e?;(Kf?N? ]z@@$? lG]`:g? O= N= :B ѷ8 з2 зr зG \yѷ /Dӷ7O 4Z( "mbݶշyշ9vS"39Yַ*25 y#cz ׷,25  &`H^ B7Տ ./25 /25 X6cz6]535   xW.l 2a "2dz5ՠ rT5k 6F5 \6/25 6 6 \m \No tc6 <0%2  \}2 8\8e \?\a ؘ5 5 5  &4R3o]#48/;5;9:?@ ;<9|8R6i45xo7a 5<<_B<</52z8z, z2z5 5e [(w#[ 5\Ln  zdz Q@z3H>^ 7lE_^ .q Rz_z RaZ sxzd zq5c4zL tq]>Zzg6vV2UW! z:6me!l!l!l"X!m" U.!mlO98 в( "^656m[`H^ Bu/26}vP6u6u}A66uB[}/26}8&9m | |V o1Q 5|J6 9 P  Ϟ|9  2|6 6 6 N[ 6 6 [[2?  X]7h 5? x5x>)f2xx0@, |ek> k1|,!p× |W_8#!'|y<. |6V. X ! C|P7!.!y )| C !|z9| |Pf| [" |zO |h |4 |W6"InI|w6G"Zb2"W9"BAaSa "|g6BU9"S;!">;"R<fB>;"R; "Qa@6B"Ug; ('/B>;B"S9B"R9B"O/BB7B"57B"8B"p2 B7B" /B7B"7B"7B"'~ 6b7B"7B"/Bm7B"7b/B(7B"7B"/BXE/B7B"/B7B"/B c0W7|~97F!ǢAc7F!7F!7F!AEF!\TCA_4WA 1A">~A>A~ A~7F!7F!A'[EA ~8mAH~=iAd~iA>$I_~"Af~A1 =_~"%"@_ge@2~B7Jc4A@PJtJqJA@ K@@~gg 'KoKKl!KX!Kl"fKX!Kl!Kl!Km" ?D:KngKlKO5z_e??8K58K?q`2 B?8K?8K?Z8K?~8K8KB8K8K?XE?8K?8K8K%9K t$fb87ft(?- (?eI8'?~888'?dE88'?'[E'? 7?> >! >O>_0?p* c> c>P7c>\c>+AA2A 9A>2>P>f> 4= = =U8S Ed/S &\S 0cS -cS 85105B T A(\T +\LT c\e/_m9e(e1g;2<)c<(c<:$ }!10{  }6 } }F  }} .}z>}9-`;104 (( }~5Cu7r36tK6l[ }973} 96~ ~ ^6`44\B&99!4z30z3o"W#rd t);1 #U$d5m w$10999 99+99999r!0dQ9'i8F/ IdWRXJ0k/w59<9<1<1M5M 1Z4656I xU n5p9xpo:103%"#10= 2Rc,10Mc:35h5r664102c225b-[7#hiBv14316557v3shrѝ3TC?9 atUi:77R2v9103 T$ T0# HPq TI9T24,x 8<H21]l 4]J@%p9W]9]9]  ~"%5%a}5A7 A ~><4R3 \5 /46:u;/47?<$47 ~?<3 ~?< /47?7&   8(_1_@m dw)73d9u] 2Peu] , 7Xew7N Gx89$3 1Q8HK 2;3elp~P X o8828$87$8]1>?/889g 9Oh uh!9099A 92& $95$8B*8 ??.9699h hU9c]Q^1tq]9]A\vm!l!l!m!l!mlO989 u Ҙ\/303/309$ʙwA8w/308/308C ]x3c8"99&?7 %I  nj+9 9M-/30=d9[8O2~ OHFMD9C9B88B g!3:'3u64!.d1B9Ao+A  A;$A0 {6b5 B ZyRz b:3Ex)&k%@ 6?# "6p2c Z ?[9Wn=0O> OO O>D# O<\9<\J6[ \ \9{\< \#>/80\8d \9,G]\=aR  a a`4ai K#.69]="]F  } .entry _$U6__halfffLb0  <&T8[-[&424_2 .b8'T[ t9T+;uA\'J(] -VJo<V] \ z-J)[([:3=V<+319=21=*_4 =>,r3  P(l=7rd3 76=( a1:/316 1 P \TrEnU1|3UM(53%r76,A1L=6^=f>==I6=7 g5h5A5AWT 7 7>3l5tz =8 /31NA-=78-=54lffs ۸)27546X!f5RкfC18 u4o5*5239%r222 < %r` 1117<3< %+r;x;777 7=7=S=)/18%48y9udy7 2EVh> yu 488Yssy4!< v4v4v==.,`3"= } &  1A5 "5`<5Tz  5r  CfB) B777&9 Y,  7;NHR! g+L;6#12+5 p y/s8+8>1T'8'f 6 5(9()9 P7) f&)P7P\fA)`fkw7q !|Q4v@ ))o62+158 ?s10UU5,|cfma.rn==-5-F S Yn 9}90 )iySS n,d!d!d!d"c!e" V!edO *[ V >8Zt/ 4 1\(-399^<7c" xBg!/p19.1]PX<R1   2  e dd]f82PWR'ff'= = w37x(p}!- <7 -4- 3- 3I& -D-d/ '(33>f34379> 6Z^ 3C,!p/ U3|E?By0pH2R9O96Y71)y92+GZ=dUO98 M( "^656A e < Ww8F6/368v @/8866B66e+ /36 8& `3x"W xNT 58fx"3g9% %F%49%Y 2x6%6%6%U9%xP+%46%6%Ht!x%%io&9/6 <1x79x EbE x)s~/ /70x =6+ x 1A2C=? 2@7,62( a D xyG ~ 3) x*7   xLy4„ 6Vx/6!AFxo6!RR2!O9!-@#x_6 -@M9!K;D !6;!J<V7V!JV; ! ^86y MW;ƺ3; K9 J9 O6?;7 57  ! S2M <7 7=y 7 "?7 ?7?7 7 B7 7 ?OE?7 ?7 ??_t7G?" cG?b7" 7" 7" UG?_E" 47" 7" G?"EG?,z9?z8>z:!>z@7[(E>HliE>$z_  ^g,d!UP!d"VP!d!d!e" =<:-\L9dOA4r==858=k2M <=8=8=8=~88B88=OE=8=8=?_=o|"o o|_=5_=o|"8_=8=8=8=U_=_E=48=8=_="E_=, \w ;|&= f= 9|* = \|=h\<| <|+< >]|>9|<t\ <|*< ]|?]<2 8]<?+r8~|.8) r;/&T0[-[95105LB!Tg+T-Y]\]8]_(]_z]_:2)W[([:2 y!10  y6 y0 y)  AxXyB  .zziy9-`,10? H( gqG3w2 q7r36t'8 y93y 1y9 { zH\644TI&99G{46qJ[6 qy0 y$105993f9,999 0V9En8F/M[f ru5y99P1O 9ș866s6I Hu6 ^5nu"ng?1035m{,y#lo[3 >5U<556iw410222A9u9v$hiv14316557r3shr~T4 a696b#U7N2Rsy?103PQΒ 5[P50"924$R3 ;?  Xzb4{[ 999 2Zz3s3a$4BHWg1C45[z-[z,/47[z/47[z3!vT7[zD/47[z99" Ilo 6L12e d!z d6M$dV:dz B ' 8Zz@%!69z/71Z)Wb7U)3a)+4 Oh J 7JӁR9$ '[1[V8j.J0]F ) r[++ i$86i i>F S/71[Ve e89*Jf /n $92a 99* 9,& $95$85 \1 \ mX9* 9/m9u2C,!9m[[Q )@mlmim[9k[ATkn[kP!kd!kd!ke!kd!kekdkO9j8q9 iYr i\/40i3/40i gnE;8g9/40e8e/40e8eEe ' d;d"9c9b(b?6 bIbEaeh+9`s^ 9]M\/40\Ux[[0Ze9Y)Y D2r/9Hyd 98.h2: ret!3:H'3u64 !d<..9j+3  #n% 0 6(59A  >u  6M 6[ /w7/69!Z8n=0_D< DD D3 :0F*/695+;S | 7S6 S9ySn; S6>r; S~b S/69Z:6 +  ` VWe[? } .entry _#nS2_fLb0 | ;&VI8]K-]M&2D['< ;+]Z;_Ss[.<U)Z_ W4ZE;Z_Z x4E) ](]:3$=<+41992$=+41=3$=:_J< =/416 1 Ey173%r78@1L=8  i0;=I=7 s5 @5@[Vj 757/41<787<7 =w>6 ORWbrn.f16L rs~Pf5;} !7u16w7rs8 D 17!><3< _7DWO<547, S<-; V/48<4!<.8/627[1\2898x7[81S( H +b6;k!#12q$3,Ѷ0f32[Crs13ArW0r s \0^ P=R#31v R 6y 5w 2 DQCwE( x6xS'\Crs16Axh1 7f21^ xx3x b$ {4! x8xW78x9x5xx2x7$xx50 ][Lo]d:0+]k]y^%86Z[) "^p4^f!^f!^f!^f"^e!^g" ^X!^g^f^OC; M<  >; M9 L9 O?=3 43 AO f2 =?3 ?3 ?3 Q8S7Pnr9/4DK"lt$p4{? Xw %rA 5|T3 A3 53 7 PjF ?3 T\3 7 &?{3f6w3>7M(11>33>3U>aE433>E>_:z4D M048 k;9C&  @V>g0 e@FR7<= @=hf?@k|@a(; w!=g4}4<! 5"-15%=3]J0dnk%=%=;A+"i4f!f!f!f!g" X!gfOx<=444x :2 a 6:!: 4?0:q6P=M=:[u::Jza!6K63v4?G?BFZ.E H? {:@.$ ? 6 u4bE I = H= : Ǹ8 Ƹ2 Ƹ Ƹ( zǸ /ɸ7 Vj46( "m bз˸h\˸\9J(x"36̸*45 4O(x22͸,45 @ -&iP< 7}֒ (/45 }/45  (E  56 >/<m׮ <5 5 2W"2{5}֠ z5 5o"a55 V*/45/!*/!+$i#/80#]]z]S]8%a ]5  &| V4Y]Oq3D4Ju  | 6 3?)q &i16x6 |8 |85 b |8 ^ |0Ib` |G1l@ Z+ w |8 ['^[ |lKV0 xV[8l @$j] |53 ]2>F 3 n3 k3 >4 94  |a6T 4 i϶2yQ!Z464 gY!T@4 R!4 f!4 f"4 R!4 g" 4 X!4 g4 f4 O94 /464 564  4y} !4fR >/464 /464  E164 B64 64 G-+/464 4 84 &94 t74 5}"6:W 599}G6 9  *%r4u b9 ~% %9(6 6A6 U5WO 46 6 3 B-)r6,6- ?S vS p  7 O+v? }7W[f}* }D 2ӥ}Qz/ yh!/70h!h!'f}`7})/7F ,C}J"9/" "/70"  "'}{9}L &C }Q7 '""9",}{ }D 7D}U6<#C}JoCu2<#T9<#Q9<#oC6b ;#}a!6);#O9;#M;!;#8;;#L<Z;#8;;#L; ;#4b:6?"N[;t4[?"M[9"L9"OBB7"57" C"P2e >7" B7"7"7"B7"B~7"7"B7"7"BQEB7"B7"B?c2B 7y_c7!geBb7!7!7!U8!`E!47!7!eB$EeBzc8!^BfBbX )J#Ah@bA `"4Aaa4A S`#dEd%(7]7&@J:Vnk@@a "1i4f!<R!f"ZR!f!f!g" $@>:h[fO6X`$@858$@mP2e >$@8$@8$@88S8X`n/X`8X`8X`88B88$@QE$@8$@8$@?pu/6 16?G8(?}8(8(8(U?a<E(48(8(?$E?9(V b?; b?M^?`05;>+ >0>Q>g2b AQ@9ہ >2>P>h4>B ?3> 3>B+r8=U8 &20oO3To4J &Vj 0] -] 95105  @#V: +V5 c]_`':_F(_F1[/<2) ](]:# ~!10/  ~6 ~q ~7P<~i .zy~9-`,10HJ( ,v~;z~'36t6aV ~!2~93~ 9 XP64,4,V[&99Y40k3S4rd1 yL>1Te#p5$10Z99 991v !0V ~/f sY5~991>1O 9ş8 9-|z6 'b5p Upi?103r#loyi @5U355Q5 562|!10n 225]Z9^$hiv14316557w3shrL 46Xd//10Q= 94 RG 24I3<d2=^k 4^ ^999 W2H34)[3 G$4DHg: 5VWVN-7_ N7NN-7NE7N9  N# c 6L, S ^ 6$$<^ D P 8^Bf^ W23} 3N4 9ȍ -   7 3 @z1zq876 zDQ$82 s^! ^-"- "H->62 n ^1H?Y/889Ri 9Pj$ <1 7$92ke 99 9W& 7$95$85^R 1R t.96R 99,9V9R ]^Q+R nR kR ^9P ^AVP p^P R!P f!P f!P g!P f!P gP fP O9O 8T9W N bv;N \/50N 3/50N  L pW=8L  yJ /50J 8J /50J 8J EA3p y I =I "9H 9G (G ?82G %I ]G GF gj+9E C 9B MA /50>|@ @ u? e9> \A0k2<T9m998Uh2: ret!3:V(3u64"$d1.9El&+3!  $0 6b(59C b b3u~ bu~ 67~ 62'] 1^ 7/69\]I 0i k> kk\ ku` 0v "/69B]a6{ f ^ F |9||6= |ħ>/80|e |f/69f]` N  }`cM }}^g } .entry _|%13__nv_bfloat16f&*HB8nbN-iZ&N[H=+i]=k~n^.+H*rk 14rQ =rk]!sk )i,(i8:3?<+51:9<2=?+51:r?3?_H7 I/51F6 F1F ED1FC3%r7D1L?DD?9=6I r?7 #55B5Bsbv^5R ?ira s5)53Z|? E4672mA/51<)<5E/%bASaa4; fma{j0W)1:k} F1F j>3> &Й3$>*>:ۥ/[JX.G>. 6>.w=>8> >.8>E8> R+81  E"n5f9>E 5rD)>uv .2.&>9\98f.xK Kp!V -j!p6{2ٞ0!s<ɜ0t5 uj+f2pz w4&  | ch5y[. zC3< z7A h) !4 z [ z78 fIk2@bi9 1Kd\Q7w<0iKw|K}Laf[y .L|dLr!Lr!Lr!Lr"Lq!Ls" :4HLssLrLO2LA2L52LGHvLmR8L 8L5RL2LL8Yr^2L^7EH0 H? S9_0UH 2A154^i5 2$?9  ^Y8^ 2U W[422' f"5^[6>  l6 dm6Fxlx l2Fl 32*0%X59` 2`Gf 7 Sa " 3 ` (1(2 b'Z $f2F,99XAth3$ I 4 !h! x 6 J!3" q"8f3016%2,fgAB *C4K > !&&R -b+ 4Bo@!4! 9!-M{c MC dMT"#21@#35*T"2T"O'0'&!2T"`9T"]9T"^A^AbA[9AY;AD;S"X; S"@J;!Y< ,!J;!Y9!X9!O@=3!43!>R!r2~ I@3!@3!@3!T 9>0T ,`%v9/5"lt$p4KA wM%r16s>3!A3!53!7!\vF!@3!@3!7!&7 (5T @3 3_3 U@mE 43 3 @E@p@{_g9='  B$@gR$@u!D RS#?h5AgB =LB83FB  Z"T?gTT? ZR"T 'U'}>Ma1pw>1bM>[,X2us!r!r!r!s" ,d!srO7>=4447>y~ 9I7>47>47>4 ."8844A4547>]vFD;7>47>47>?( M65r 74o2* =0 g/4/=}4/4/4/U=mZE/44/4/=E=/#JVs= Xs=9 s=J/] fF9p= o=fo=B9Y>/) ߛ ={) ߛh8 =1 =hi = @j2W1  A<2< 2<2<|@/p1'@ S7~@/q> ~7~q>5!2L"2X5~ݠ S2x95oc0x{5K6 /550" 0" ?g`^H:7e _5! ˕  =Y4k\][c3^4V[8" _'g=g=jf0 8!aaS8]N_q N_8] baQeh5y!^(`^^ T~ ``1y@#*aw& B%95 ,`hL#,`2%K59!i7@R z]\=9!w|9!@:!cm6@W6d:!r:!s!:!r"r:!^!:!r!:!r":!^!:!s" :!d!:!s:!r:!O9:!8:! .:!( ":!^6:!56:! sEN 6 J/56:!_{6:! E6:!B6:!6:!G)/56:!:!8:!&,90:!d746XZ s9"H6!9!!I9%r2 K e9 e C9)6!6C6!U#W[!46!6!3!  .6K-6  AN6 z 3&!7 ˍ= I}A!;[ $fC@fZ !f Z Ek i2;?Q|`7y~  ]F1C,!/p1! $)-i0'+7у5 #! #({9;  , FQ0~ ]8- 4hSu2549:# 9#-{  *r8҃W6B$OL}6 B$`n2B$]9B${Ee A$m6A$[92C;"@*6A$Zq;A$X;A$X; A$eF?#Ys;'j@s?#Ys9#X9#ODB7#57#>8$#a2 J7# D7#7#7#D7#D~7#7#B7#7#D]ED7#D7#D?f97"j)52}Dk " ["j" ]7"7"7"U8"lE"47"7"dD0EdD@"_DfeD{c#*>ChE CFEH#0Cad0C HcBgGg'(7i/BVVzwBBm  .udr!^!r"rBDF:WUU6r+!s" ,BJ;ssrOU8McAB858Byt2 JB8B8B88S8Mcp/08Mc8Mc88B88B]EB8B8B?Jy}/ }A6A}H8A}888UAmIE488A0EA{;V5A OA1~ ;NKA`0=f`91_ jgCl6, @0@R@gBW X @9c@@2@Q@h4@D ?@ @ @W8!20nchwToNhwc3To4Lr21cudnn*I"!&b!0i!-i!95105!!@/b!+be! `k>;k# (k# 1s=2j)-ij(ij: 10 #nd63WNxctaid.yry7ˤWSL.x. .9-z?9-`,10 ML( yIK'36tK56 7_ 9e3 19d#39 Rwb644b&99+4@03KV4rd1 OI> R#2U(}dz$109h93Dh91v h"0nV / ' f %\5)9k9k1J1O5O 8 8:6I 4~6 d5|9/51oX|u?103Qr#lo%52g,10B5U355Q556V4102225i+7,$hiv14316557#hr  . [E6-10JWq 5bU6[<H924Jj3>e2>B4> Aa999 62 34]3 &$4aFF]u44j0S 5oWo? x]#J(st[ 9%#1|$%:2| |~/22/3 : 4ީS|3v4v4v"32v `Y5Y5Y"48Y 99 k$ N 6L  a =a>6=ha2 6P i =8`K /N7x/69[[ ]2k Z3O4 NO _ bF7FG3 RK 1K q8  ZFR^ 0aw0 P. . 0@.>0c 0a 1Ot8 OEl8*89 Ql 2u 9$929h 99 9X& 9$95$855a#!1#!t.96#!999#!W9#!i@aQ^ 7#!z#!w#!@a9!!@aAb!!|@a!!^!!!r!!!r!!!s!@!!^!!!s!!r!!O9 !89 !y;!\/60!3/60! !|I8!|!/60!8!/60@ !E!  !I!"9!9!(!?Dy5!Ip!S!sv+9!m! 9!M!/60=@U!!*!e9!3D4_81x2IU9z x nv d u 9t _wx12: ret!3:@)3u64"$d1t .9Rs x3+s 3F  s i%X' %;: 6$(59KE $ B $l > $ 6q 7X q 6i =;!7(m_ Łm_d!0;!x}@ x x xF  0G "/69_bj)7!}! }9g}Y }n>] }6h }7/697E`a  s s `-O ~~`h } .entry _]&α fI8b\-c' d7`?SI>+c_?>e`'I*fe -fRϡfe_% "ge)c(c:34@7 q Q ?37@4@74@8377 4@X<4@+61<2t>4@+61@,_4@mA1 53\ 714o9'@I  @7 5p5C5Cpp ?V 55: @ 325 Go1 :6L9?7+˶~7_,<227]Bu2?cfma.rn6 !f5b<RM^1T .?22d  %r` 11(? ">3(? C&œ3ăW>: IHHtG!?. 7!?.=!?8!?4!>2>!? 8!?E8!? s !?5y1l HE7 N C 5r<C#5GA# =7(u#s7YAmrKA1A,\KfB~  ,x "Ѣ "a28_ (*31(1 (? fKH!( B) 2;! )[2*9R7*3*8*7W_,\*fv%"52l *4! *E2E+c` W2&|E  U0~=.5.H @ ]^ru\&a 1L;0c]qp]} ^8^T! (^vL^l!^l!^l!^l"^k!^m"  -I^mg^l^OhJi] ]b] ]c] ]c] ]] ] ]+$ ^7^s2^42^L ^v C8^^2^7 ^2^8^2^ W]-16](^@2^52^O^mp,^ ^ 8^5 o^2Q<8^2^8^&0D^M3abszLf`2equ;sf ?= S RO:ip>2p229 8][ <2U83\xj+422<` w%@ x"5pd #8l7(# 6,, ~ 6)X+ /62/s4:Z 6 8-:  ;A ><:6Z?p10@ <9 ;;4z_W28 818w'/ 99cA>Hfa)70a!,2*5I &1 2,4, I!6 -˾y6"7' !~39? M_4p" m># ,`O`+ \e4 |3f Fl 3}ټ3fX\ 3üa9@ 61aC!pT *f `1 f 2f I|0|f P25f Z9f W9f [ e =[AC"'2p=U2Ke R;؜=>;e R; e =D;S< D;S9R9O==343N b2\2B C=3=3=3=~33A353=WpF< =b3=37&=A96/ [q<<50;T< S<6&C '<0<hIŚ7m m3mc"mj"mtmqm;$ɹT:6D(,noLnl!nl!nl!nl!nm" n^!nmnlnO ;=4n44n ;sB 9C ;4n ;4n ;4n ;~4n4nA4n54n ;WpFnu8n  ;b4n ;4n ;@n:;d U.8͗S.'fQ:j Q.@,: 6:}444U:g/E444: E:- XC*7 a2: 6W L5a} :4t95:  : 2Y586=< 1;99 c:q< c:ҷ5<c: {c:9<& Ÿ<<:=qX*& D=y < ":X\": ": Y O >.f2 1̶799I8{<=9 < v4vE1w6*vV=vS=v9wg'6uX6K}&t:?tM?&;@!@f 'RNf? Df yw:f? 6 -R O= N= : ?8 [=3Lbx[gx8[ x[ /i[ J4t( "m bHy.xyJx y"3q y5 4ym E,65 Ut 4bbI` 7ؒ ./65 2[5  .Ez7>L J>/[7ql2785 2"M y5ؠ 5 5o \6z5 I6(/65 ( _my/80]<\Me4<6 ? % my-`>H }[5  ؎ L,r4=Up}9W>P\3 4P8u [  3E2R9y7IOv[8 vy\N5 "y8Z V (\ Z\ yf7 )3)]yee  *yZ~0 *Y~+_yz5?c*4=L ?t?q?=~yg6=Q6L@l@m!@l"f@X!@l!@l"@X!@m" @^!@m@l@O9@8@ @( "@^6@56@ Q 4X` D/66@[u@6@ Ew*6@B6@6@@y+/66@@8@&9@e4O{" O{-V d68O{" 3e   i9j 2O{666UPY\466t2j{67, \UO+C>7JUj{) VdVH+2/<j{*/ p j{7'{,Bj{ Bj{+7 $j{1}!j{{ I{j{*37 !3j{@ j{ sj{/6H"IHj{w6H"Zb2H"W9H"A#j{g6G"U9 >>; i{:6G"Te;G"R;G"R; G"_@?!Sg;:g?!Sg9!R9!O@B7!57! "![2 D7! @7!7!7!@7!@~7!7!B7!7!@WE@7!@7!@@a8@ e@b7 7 7 U@gE 47 7 @*E@-L}9X@L}8@L}:!?L}@7Oc$?POtOqO?$L}g (PoLPl!PX!Pl"f7fPlf!Pl!Pm" >D:PngPlPOz5$^>>8P58P>sb2 D>8P>8P>8P8PS8$^/$^8$^8$^8P8PB8P8P>WE>8P>8P>@P>"  >5>"8>888U>gE488>*E>- {^z q.&h> wh> :.*h> ^.=*_<k'>. '>.+'> 5_.>9.=k =.*= _.?=2 = +r8..8X Ih/X &\ X 0cX -cX 95105G Y @)\Y +\MY [eD<w9e(e1g;2A)cA(cA: e|!10V  f|6  f|78YOAxsA|z{9-`,10gI( s41:2 t7r36tP$ `|!2`|9<33#ltH2}p9;}  b}^6`44\903M$d127L> )#2U4rd5"$1069?93{9?,99?9?!0V98N/ Ld"ltkp0e|59B9BQ1O e|984F w90x6 `5v kTvo?103}$#lo[ @5U355&6J410272299$hiv14316557Zu3shrd ,P6i3UK?103UZQ Z5R5DZ"24%3?<@ T ]k ZJ@%p9Fc9c9c |3t6YF FCFf d= 5>798L-7L7L3!L.7LE7L9d L=# p 4?Zm n mכ m6$ 2; ^]J 8 8\H[\_]1kW; W3r+4 q  7[ 7  ']1]"V8K0G ")] I] ,, ,> 2l ]1] V/889g 9*4h 0p $92c 99> 9-9$95$85]1I9 992C,!(9c]QZ1tq]9]A\v]X!l!l!m!l!mlO989 t;\/703/70+ vC8]w/708/708E w C"99(?>IGMmp+9 9M5/70ze9*[ M209QOIM9L9K87K )!3:'3u64dK.9'Jr+J3  J$& J0J 6x(59B x] ]> xI xy 6Hu6[HUF+ 7H/69[80M> MiMa M3e 0Wz+/69L\96S   T9i{T< T¤>qz TOd T /69  \:cR  c Wc`/L WpXp$]? } .entry _H~6__halffLb0͘ N<&b8i-i&2cW@c<+i\;<kN]6+@)rk ˺<rIѺ=rk\ p{<,I)-i(i:3><+719W:2<>+71t>3>^gn@7 I/716 1 EM1C3%r7Dv1L>D p F<>Iqn>7 #5 A5Asbv 75#55t7p/ @/714/yF My  6ٲ4; fma.rn 8T,W$"16( rs(#f5j x 1 i=3> 87px_S=>.7~P7F>/17.K#(st}[>8>4!>.8>E8> ?H ]9 D7' 8D MR 5r<R#5FPRu X27t898Y791)  6 o=DK[uo#12r3 R?Y3s13Ay90s t ^,7f20^ j?l#31w y 62!5 + xxC y6y P(yCrs16Ay1y 1 1^ yy3y 7E &V~`6`8yX88y9y5yy2y7yyMy50@FdqFpr$<07FwF|G%86)\cu .G|dGr!Gr!Gr!Gr"Gq!Gs" Gd!GsGrGO NV9^ݯ9,}2>Q 2UQ_S4226' a"5Z+>!g% 6  6 ?i5v hmv h wv+-+< XV 2_!/p11 { 7 M>{ 4{ { { ( 2  .f2 1 -f@bgT P!P"4 !w7 A3~!4? u ! !3" 3S " f3C] e,9 }B (A4e/p1: : !7 !4! 9!,2$~=m"f ,#=ho$f3ho * c9xC 8c#!p*#O" 2O"Og~0O"V2O"`9O"]9O"^<"bE&<7N"^A8$-2A[2cN"X;}AD;N"X; N"@J;!Y< ,!J;!Y9!X9!O@=3!43!Q!r2~ I@3!@3!@3!UT8S7-Sq#U9/ g7 %r. e%=3!A3!53!7!\vF!@3!8Wf_3!@@~f!5@7Z(11 @3 36_3 U@mE 43 3 @E@"< 4F ' 49 /=99'  B@g0 r!B H/? ?h-A_B GDBY) V"N?g4Z4" 5#>-15>3i\1p9zw>>mc ,.udr!r!r!r!s" ,d!srO2>=4442>y~ 9I2>42>42>4V |T"8844A4542>]vF2>42>42>[4 J6 0p 0+f=0R6= /4=4/4/4/U=mZE/44/4/=E=/7/fZ 6: (G*6p=9 p=\] fm= l=fl= A9Z99I: 99=|)  != bi=hi= @j2W1}\<2< 2<2<|@< 3@  oqob7q>5!2\"2N5ܠ R5) 5oc55 bn/750"n0"8%v$/80 b`]bb`(V_96e _5!   9Y4f\eS3]4Vu _  3K  k=6^E!_8 5 o8![a5K+c yI1qoA ^)8! ^'`^l7 ^8m! B%&`54!i7@R 4!z4!w4!@5!95!m6 @W6d5!r5!s!5!r"r5!^!5!r!5!r"5!^!5!s" 5!d!5!s5!r5!O95!85! m5!( "5!^65!56 C5!e n; "4B^ JM/765!M/765! MEM65!B65!65!MO!+S/765!S5!85!&95!u75!7"6<Z 79R6!9!!!*%rx d9A & *&rW !6!U_S!46!6!3! .6E-6  A xzݿ ! 7 ![+vA!!7W ^d* D 2Qym/ xi"/70i"  i"' i.`a7o*07ŃT CJ+#a0%#ƃ/70# !#'{9 (D bQ7 )##9#,{o+ 7U6=$OLqE2 =$`9=$]9=$9$(e <$m-6<$[9=2C;"@*6<$Yq;<$X;<$X; <$eF?#Ys;V@s?#Ys9#X9#ODB7#57# $#a2 J7# D7#7#7#D7#D~7#7#B7#7#D]ED7#D7#D@f9[Vf7"j)52tDj "Z"8? "" 7"7Vf7"U8"lE"47"7"[D0E[Dqf8"^CfeC ydM!*L#Ch7eC `#3_&PEe!T:#d*C Hc%O7i<'BVVzwBBm  .udr!^!r"rBDF:CUU6r+!s" ,BJ;ssrOQ8CcAB858Byt2 JB8B8B88S8Ccf/Cc8Cc8Cc88B88B]EB8B8B@@ys/6ś4 36:sG8A}888UAmIE488A0EAz;VLA1LA1u GMHA`0=>7, @0@Q@g2W |BE@9Dž @2@P@h4@D ?@ @D+r8U8!&20rO3To4LI!&b!0i!-i!95105!!@/b!+be!`k>;k# (k# 1s=2j)-ij(ij: !10  6 7SS, .ڂz5%98`-,10qF-( y}K'36ty 6Y !29e3 19dك Rrb644b&99!4?[0['t$d1 OH>1T#/5pt$109h9389h91v h"0nV /if 959k9k1J1O5O 8 6I +~6 d5| /51kX|u?103Gre#lo#52)fD B5U355Q5t56!10n 225i+<9:a$hiv14316557O{3shr  "XdD5UV!rd/d2{ TX  `UG24J`3>e2>;ak 4> =a999 ,234]3 $4aFB]uwjG4S5S 5oWo? s]#J(st[s9%w#12G$:2; /22/Ys 3 I|3v4v4v"32v `Y5Y5Y"48Y99 L$ Mf 6Lݣ  |a 9a>6= a2 6P i 8`=N6d1W23J )73N4 Np   bF FG3 K 1K r8  7Fj٥Q$82 .a! P. . 0@.>0Z 0W 0L 1A  Y/88 9(l *89 Pl3 A2u 9$925h 99 9X& N$95$85B#!s.96#!999#!V9#!i@aQ^ 7#!z#!w#!@a9!!@aAb!!|@a!!^!!!r!!!r!!!s!@!!^!!!s!!r!!O9 !89 !y;!\/80!3/80! !|I8!|!/80!8!/80!8!E  } !I!"9!9!(!?D!2Ip!S!sv+9!m! 9!M!/80=@Q!!*!e9!3D429 _1x2IU9z  x nv 9u 9t _w !3:@)3u64"$d1t .9Rs x3+s 3F  s %s 0s 0  6$(59JE $ B $l 3 $ 6q 7T q 6ثi =;!7Fm_9m_]!0;!x|@ x x] xF  0G %/69_a6| 7!}! }9g}> }X>/80}6h }7/697 E``   s `-O ~~`g 2; } .entry _]&ıAS2_fĎ<8f^-e&g7` ?b<$?+e_K>g`6<*jg <jEޡjg_=""kg9)e5(e1:3R@78+75 Q ?38:@R@7R@878 R@v<+813<2>R@+813<@,_43@A Bg83^ 7Q4YI<3.  ?551 E"j59E 5rDR".1 822A252Qor,R8 85+S2828&R2^7Ff0 f+? \S96`yU/p8;2449 gx12: retS8E^z+422> k' "5f %89 5G> y 6 +Z+h6Z9|% aD.$. $2E$ :Ibf&2equ&p-4y E 2)aE E1 9 7 9 D9 D9 49 9 (9 (1(2 )f2 $f2+99@h#7hG 4Z  -5L )1% H3 4w? Z1 ,6IZ 3P" ZP" f3f! f3 ^ 2j*f@oB ,B4I  q!W& q!-c<"q!4q! 9q!-K{)d K[d Wdif`!p " #21 "2 "K+0( align 4 .b8A=2 "\9 "Y9 "^A^A#)2 "W2S "T;4A@; "T; "\@F;W!U< W!F;W!U9W!T9W!O\@=3W!43W!{Q _5W!^2V E\@3W!\@3W!\@3W!\@~3W!3W!A3W!53W!\@YrFW!W! 7W!57W!3W!\@3W!7W!&\@{4_3g ?}3g 3?3g U?iEg 43g 3g ?E?;^89& b r"?g? I3!7 #2?h@]As t=A)/ "BY ">g> 41\A 5|#5 }j]I%YlYvYsYf>1Hb&f> c8H2Zqk]Uj2ZZi!Zn!Zn!Zo" Z`!ZoZnZO==4Z44Z=u2V E=4Z=4Z=4Z=~4Z4ZA4Z54Z=YrFZ:Z =b4Z=4Z=@Z 55O 301 S=/ Q4S=}444US=iWE444S=ES=x#V< <~8 <( f8< i< <i #<1d #i6#W9#U;"#@;#T<jD@;#T; #_gbK;g(g1kk=2+)!e+(e+: 10i  6  _xxz9-:,10DLL( xg5'36tK56c [ ~ 9&3 9% Ra6H4X4X^9 rd7rd3}UY4rd1 @N> #2U$d5R|$10j9)9 9)9S1v )k"02V9Kn8P/ S*f 54,9,1F1O5a 8 9}6 d5x Wxq?103{)| 2>f,10A3556N!10n22W99j`#hi#v14316557;z3shr  9]C4W X7R2zxUDQ D5T6#DH9D24K?3>f2? j`k 4` l`9M9M9M  234 ]3 $4EiF4L5L 5hWh? \ #'st.shared.u16"47o9 #1$9:2Ԝ Z}/22. 3  |3v4v4v"32v `Y5Y5Y"48Y9N:O$ pU 4w3shl)x  ` h`>6X= a2x 6L b <8_`/70J`W23+ Z)73O4 KK  _ D q7 3} Y 1 r8 4)81pR)^ [`x.t . F. .->.9 .`x 1 x X8 ܤkk8*89x Ql ?2t ;$92cg 99 9Y9?$95$85` 1 u.96 999~ W9 ek`Q*3 v s k`9 k`A^ xk` Z! n! n! o! @ Z! o n O9 89  x;j \/90 3/90 m  xE8 { /90 8 /90 8 E  c E "9 9 ( ?@ 2I8 O or+9 2 9 M{ /90 ~   e9 3329 2u2FV9; h9 o7 96 95 8_5 h2: ret!3:(3u64"$d1a5 .9O4 t0+4 3;  4 &%' J%;:n 6(59D l &m !- 3  62 7D 2 6xe 9 72 /69^^ 0 u? uy u^ u C [0 $/69_b%)   ~9g~D~ ~}>H~ ~gg ~/69 |_aw  r w w `N XX_h90_12; } ``'Z'@x  HELFAS 0 @` x@8@.shstrtab.'ym_shndx.note.nv.tkinfo`cuverJtext._ZN5cudnn24engines_runtime_compiled20nchwToNhwc3To4KernelI13__nv_bfloat16S2_fLb1EL21P&DataType_t0EEEvNS0_18O 2nhwc_params_tIT1_EEPKT_PT0_osharedreserved.0at.relOrela[299]_]&16QM QQc`c`[i E93]_]A007C4E7C4[H D9]_]=0` ;?8A;?8[0@9 ]_]Am;C>4E7C4[0D9]_]6__halfA Fd$g(d_` EA7,a,c,ab Xt :E,Fd,g,d_# ,b,a,c,aE.Xu7,G4,I7,G4_XHA,a,c,aA Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a; :^a^Y` E51[][|v?:^a^Y P :[][?B7A4C7A4Y\[][;0 k;=8?;=8Y>5 [][? 4B7A4C7A4Y\[][?7 \]:Y],PFd g&d_jEA7,a,c,aS XXg,d,g,d_# ,b,a,c,aE]4,H7,G4,I7,G4_,b,a,c,aA  q;,C8,E;,C8_XDA ,a,c,aE# 4,H7,G4,I7,G4_,b,a,c,a }|=.X[XSE)+UWUF4zA.X[XSc  2UWU94<7;4=7;4SVUWU5v S 8;789;78SVUWU9c 4<7;4=7;4SVUWU QYVYVQE%)SUSJz?*VYVQE%)SUS74 794;794QwTSUS386;587;58QwTSUS7C 4:794;794QwTSUSZJ:^a^Y51[][|TsN:^a^Y 51[][?4B7A4C7A4Y\[][;8>;=8?;=8Y\[][? 4B7A4C7A4Y\[][SX;yB*VYVQ%)SUS 4YVYVQC TSUS774:794;794QwTSUS386;587;58QwTSUS7C 4:794;794QwTSUS"R~Xs<PSPKE#MOMkt?PSPK8 ,MOM1447345734KSNMOM-80;/81;/8KSNMOM1447345734KSNMOM25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototyponstant0 ( 4Rq4`B'8F3I4cFrV8FE Fv FJi   ;bfl jJ Nv Cv Nzq! 7ltlBp %p BtJ  Jw  1] NJ N w$Nv v Nz +dbd~6j j 6nlx  dd~2he h 2ldwx ]x]wBp %p BtJ fhf^ 2^ 2x2hq dh 2ld ^y~^xx&b7 b &fL|iy8+I8_pmercL:  Rv5bt#Hf9b-H@8bLu >u Ly<>| Fo o Ty Ry T} FooHs 4s Hwh G M  @` TMT z$Ty y T}$ :gg<m m <qx,0{* g&g8k  k 8op5 {`0{`zHs 4s Hwh iB9C' 8aa {8k pk 8op a|a{,eR e ,iXl>9.;9 qr qW v7c\Il7cLuN >u Ly;>l 4 v4gFo P, 8T.o Ty Ry T} FooHs 4s Hwh   M  @` TM T z$Ty y T} { :gg<m m <qx,* g&g8k  k 8op46 {`0{`zHs 4s Hwh MB 8$a 8M |8k pk 8opvM a|M{,eR e ,iXld93  `9`"HL=`>"FP<`Pw6 Hw P{@H Pq q X{ \{ X PqqLu >u Ly|  O  Jb XO$X |$X{ { Xt Dii@o  o @s@2l}> i:i<m m <qx,64}&bD}b|Lu >u Ly| k 7.c <c <}<m xm <qx,&  c~c}0gd g 0k`Er)reserved.0|jsymtab`.shstr/.?_shndx.noteb#tkcsUcuver%rVis[9i%nvSmem.offset0 .0__nv_RSMEM_0_0_aliasP3capjOmpat "7@9DV7[^_?`+D 5`c`c*LV0[^]_]<40A4D7C4E7C3VB0\^]_]8 I0>8@;?8A;?7VB0\^]_]< 30B4D7C4E7C3VB0\^]_]J" .N"14dgdgcZ}B87bacaz" $BAddgcZ 8`b~7ca@Z38F4H7G4I7G3Z^8`baca<>"78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`bacaN!N%85^^a]T\",Z\Tf1][d%<5^^a]Tv ,Z\Bf1][:3,@4B7A4C7A3T4,Z\[][6!7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][A Wd#72dgdgcZf!8`baca 8dgdgcZ 8`baca@N38F4H7G4I7G3Z^8`baca<"78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca" P9,X[X[W}N!B +}V}U}W}U}!%w>})X}X}[}W}N  T}VN+}W}U}4F3 :4}<7};4}=7};3}N  T}V}U}W}U}0 7 68}8;}78}9;}77}N  T}V}U}W}U}4 3 :4}<7};4}=7};3}N  T}V}U}W}U} dlpA8y%VwVuYsUqLRqTF)qUqSqM"w<q%VqVqYqUqL RqTF)qUqSq2384q:7q94q;7q93qLRqTqSqUqSq.748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq>4r"pG5^^a]T,Z\*f1]["pK5^^a]Tv ,Z\Bf1][:3,@4B7A4C7A3T4,Z\[][6 7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][$Fn $VYVYyUqL!RqTqSqUqSqv VqYqVqYqUqLS B)qTqSqUqSq2384q:7q94q;7q93qLRqTqSqUqSq. 748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSqd"x8eP_PYSSOMFB#MNPMOMPM  "q<MPMPMSOMFl LMN.#MOMMM,*324M47M34M57M33MFLMNMMMOMMM(7.8M0;M/8M1;M/7MFLMNMMMOMMM,l 324M47M34M57M33MFLMNMMMOMM25nchw2nhwcBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototype,}onstant0.o ayi1cFB5cvIf3JFrF7FF Fvur FJb$  Dbl jJ Nv Cv Nz( 7ltlBp %p BtJ  Jw  1] NJ N w$Nv v Nz +dbd~6j j 6nlx  dd~2he h 2ldx ]x]wBp %p BtJ f^ 2^ 2x2hq dh 2ld ^y~^xx&b7 b &fL|i-8*uQ" f #!@ "0)0n@ @x < H 0 H H ] 0 H uH" 0 C H "H 0 !H H d0 "H |H" 0 J#H )Hh 0 $H !HH k"0 #%H %H  &0 ]'&H H)H )0 "+'H -H -0 .(H 0H k10 2)H 4H 050 q6*H \8H 80 6:+H !H XH 0 2?H H 0 @H H {0 AH Hh @0 BH lHH 0 FCH 1H  0 DH H ;0 dEH +H 0 FH H 50 ^GH %H 0 ۤHH H /0 XIH H 0 իJH H )0 RKH Hh 0 ϲLH HH #0 LMH H  0 ùNH H 0 4OH H 0 PH fH 0 QH H b0 RH HHH 0 SH H D0 iTH *H 0 UH Hh &0 KVH H 0 WH }H[ & EXH H 0 YH H R0 ZH `H 0 ([H H 0 \ H 50 j] CH 0 ^ H w0 _ H 0 M` &H 0 a HH R0}wbv8 0 c H 40 Yd  H  0 e H   0 ;f H  0 g mH  0 h H  i0 i OH 0 j H K0 pk 1!HH !0 "l ~$H %0 &m 'H  P(0 i)n +H  +0 ,o e.H .0 0p 1H 720 P3q 4H 50 6r L8H 80 9s ;Hh <0 7=t >H k?0 @u 3B pC1dgCH D0vw cEx Fyz LG{| H} 5I~ {J "K pL M eN O ZP Q CR S &T hU V KW X @Y Z 5[ \ *] l^ _ =` sa b Dc xd e Cf ug h @i zj k ]l m @n o #p Uq r s Rt u v Cw ix y "z H{S$@|  (( $,0  RT<6d\h% ># hh0  hh0 h0 n/h/ h$p)pDpT$h)DD $h)@|h0hhlh0 1xh1hE*Hg1hD)gFhp1hD)Pg1hE* gP0hh0hh0*X gxh0hh0(0hh0hpDh0h h0` )h4h00 1h 1h0 1hX 1h D8Xx0 1hp 1)g Fph 1h0 1*@gEh1)gFxhEhP@1)Hg0 Fhp1)gFh1hEP0 1h0 1* g0 1h0 1h0 1)XgH0 1hp0 1*(g0 Eh0 1h80 1*`gP1hh1*0gh1h1*g' 0hhxh0hp@h0*8gT)h( h81)gX hXh0ph1hE*@gEh1*gExhEhE*HgEhE) gFh,0h81*P!gh0h8`h0) "g1h81hpE*X#g! )hE(# 0hl-&4h[NVIDIA CorpB;#P6`ptxasCuda compilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1//3" 11022 0340405`z6j7f8Z8H::06;*; =0=>?ߨ@AHC0D&jFZGJH:I*JHH00&0`0HSH`||yxyvvsHsppmHmjjggd`3aa^^[`[X0XU0URRO0OL`LI0IFFCC@HxN =h=::77441H1..++(`(%%"# x{ kHH   ` 3&: 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , P t     ( L p     $ H l   !7  P!9H@NLJ -p  =4 ;qX o 9_ P L_H0_ L_ ИH `@L", H PLL` LP!HP"LP#HP$LP%HP&LP'HP(LP)Pp*L_P`+H_  ,L`0-H_@ .H_/H`00H_` 1H_2H_  3H4L 5H 6L 7H 8L 9H :L ;H <L =L>LP?HP@LPAHPBLPCHPDLPEHPFLPGPHLIHJLKHLHMHNHOHPHQH@KPRL@SH 0TL_ UH  VLx!pWH@0XL@YH ZL@x![LP\LP]HP^LP_HP`LPaHPbLPcHPdLPeHp/(fHgH_phLiLjLPkL00lLZmLPnLPo=/ ..0/pp` 4>@0l00L?H041̵40<1d`1A011,<=BH1\2&82\2$2LEx2T2F0234356HX3L|34Id|33LJHD04x60T4tx4 4LH4<4M05l,5P57Ht545&5d5&<=(6,<=i8p6\64T066$7LUH$7TH790l777&7L<=Ix 8|D8<=9H8D8ܴE08t8 9DH@9<d9& 9l99L_x94:L`0<:d`:Q;0::,:bH:\;4d08;<=$;xEH;T8P0SPQ>LtD=|uGHFDQ{1D4cD"i>Sny)&wkHEyPdyTJ"w A({ pDp0'] ! _@xf ppO$x /x M9ax| roH0pbP x0 P`$r $| x 0SwTG N;w`"r} `Ex ax0p@r pb GuhC:J0 P! i!xa1tx 55r 5r $ 0 |5|%x 0qy ` %x 00 0% 0uy (P%b01!Df"xE` {pr |Pps !A$ $  #0gGyP 9bqr  Wr @ PP$x B7 //# p | pf x` 0pA x I!p``Ux @ax oaG 1@APP b$S{0&3/MPrs"xF |@DG A{߇P#tP3r`!r *0 $B0C w`,! a$|*/0!q b01|P 0ȏ$x$|@@P Ox0 J B x  p `0`!#yA0 'xVUUUQ |   @p2r!@>r Q p/y @  dx4 fGDM@ 4r6{5x% p4  "p*p p @$|@pf/{`dy    %(!AhR 0b$|pe$|z$| ' PJ$x% x'x@H'x  $xpOr P%  |   C | @W>r H$xE |0%@4 @>% />r 0P(P2r0ƀ W%xWr 09>r`G%x02y ` + ) ' $ Pp6GyE/a R (  ', p"1t QOpp    xmR ʐ `/$ /X  / 0  2 px0  ' 0  /` ư Pf % % &   p ׏p  `O | :" 0 `0 +0.(AR@H | 5x  p@  xNfP @0$Z#E$p  05( 78  0/  >r   5x ` @  @   p ` 0 @ ` @ P P @ Q@  - @#qp! %* %8x p`C$r "/KE[  00 <& PO$x , (a@?| ` 0s"r `Twb  _e #sHZ! p s $@Q`s!1t`r 0pO$r @'rP 1r"< T'r  P  "T$r `!r@p@T RP  1 r$pb%  @P   @ & q 3p0@f/r04 /!  @p#x  7B@#yY p*. 0% 0 !r2r  | % 0y(!yoP p `  ` X| 7 1%x   *` `?G ` 01$xP6r 5x  * 0r  %   % bP` UxQy_%&  P PuO$| |`' p /@ 0P& `6{v"$x ` ( 0 0% 0  0 0  5(   78 @   04 0  p & ppp 0   &^ F/     + p$ $% m$ $~  @&$ $+    7 4 & PJr     *@ 4 ( #p@ H      @$  @ P0r  5  6 0 p 0 CG&  %&& (0 P !x0  @  "P%  @ P" %!O@ $% f qb_u %0 W$f$%"5x W$ a/ 'F/RO>,`&xv 6x a"  * -  6r@@ %P&%  /  `&*0`!r /`& @)D|,   p& !@p& P '  &    &% &4 @ p%p 0 0 $x2 p    P% %p @ `%@ @ P  @ P#y  ,1 1 1+  1!@   11P K@  P 2  @   Ȱ!  2P    03   3`      *P P"^Pq & *b u5R"x 3p0%% `3 2H/$ GO$%`  aȏ#p i & @% %@p"$(P% 6>0  p  P4   @4P5  5| `@% 0%/@ WOy p7 4 @`  "@ x@ xo0   p  ;pYx 1#|pR@@  35| @0 %  0rP P P6y(!( 2Pfy :(0 % 1 1x 0E$| $ 0;9@6y)d07Ƞ  `Ey?O(83/ a=p*`4$ 0 @(0 < A ` p)?0O0]0` &|  !" *0%   % P    @(*  P( 7$| p p/x   `'  < @( 2 P  A}   5 5-(=0&pM@''pM K =&r$P%K& 3`Rp?&& ?, @0?|pM O#5|  ʏN`1|%333Q 30%3B 3 pM' 'Q3 P 9' 3 PPM A 3 @' AbAA(@ "3 @3AAA%K*'`3 0&%0A @( p Ā&+ @A8p(x | 0 @A 30pB@N 3`A B3 p'0 3p'0M34'A'`'@M 3' X F ,/ 44;'*@'4 ('p'/ `(X+XE?XXX4 P,AAAA/Ak4=p*X@0AXXp'X"3Fx  @A @20  O%@2 02  ΰ2p 02/p C` P ` %%@2%@2@0@2 %@2 $5x @2@2%p%@2  % 0Z % @2 %@2 0 @2@2 X X X'@2&|@2?W%X@  X Xp X ` K?  *O2 %` @2 MpX@2 W #p  p p E | X >P[ Lp2p> WK O  2@" @0  c  c @0pc pf@.@a4 c@0cgpI@0&|Pc !| L0.00  00i 0000000 00:1tPL5| P.00`. 00T00000000# 00d 100 @. A@.0 .0 -)| 0. `  0.0.t 0.0.D p 0.p= ?@#Jw|Y|x|& & o`.|po|4` 0$|>B/ n |&|, :@/ |Tp|^ ||||0|}|+ @T`|0 I|  |.P I|000T A|X |{0l|x0|;0@|d |h K+| !0r ||8|Sp| 0=|,0|$|K0`|$ e|M0 |  |p| |3|'| 4 q '|@||& 2|)P | L|!@9 "=@ o"<0o|I 00O|Y 00< p P00 00d |$"00p? pЎ(*/|p @.r0 .|$ 0.^ ` |`0._ |0.0.D p|  {= P ?| P0"Ч ^#y Px@p` 0 @p@p%0@2@P@ 7x@PP $ (@n%no@ {`n+@* o 6$x */`{  P { G p.p#&0$`0b0{ 0 ( 6 | 0 @0*$ P  Q@  *(a  /E 2   0 &|@@@ `@ @      `p PP(   pe/'x  `  V'xz 0 p0 x P pE'x xU p: uO x0 ` `rp  @0 0 2$: @ :(0& 0 ;%0@ ` @" p 0` @ Э# @7 @ p Р   p Pxo p{p ` "y0 *  &p P/p0:|0  % '$x@*`n `n6$xp6`P $ H |P 0    G  o  P / p& P p . pxp 0&     ]  "@  fx   &`Ġ `B   P@ `     @   *" ` O &xP+/ V |  $ 6 |$ 5x`0 9 |%  %%?<  @" 2&   0 @ ` z p# 0#$ p2  3#  p  0% 6x `  2% ` @QO#| 0 6|  (@% @0xy@ vƏy ` % ` {l`m Ȁ&K@&%uy *"( P0% pp'2a#| z 0Jp`@% N0>&pO@pJ2 p r @=*`S" "@f pp  p8$T` %ރȏ# P$/? p> P'|   @    K$?@@ p0   50 /0  0 P( 2  6x @P& % d@'% b  0 %%6y  7x @A  '% $%  P`  @ )*P? @&0- P&P&Wo1? $G   1Fx1J 1 J?1t1  1)///.@/ 16rP 0KK1 K@  %/>p`?PK % K1 K K %40 >/ $ $ 0>1 $(  >H | `1 `11x x17$| P %> >1 %2 %0 %1JE$8@ ' >  @0p/ //   p5|0 @/#@// `/1  &r :  = P/       J O @$/ p/ / < x / pI I%  /  - 0  )r- 9 - P P"-P- P f1t p p-`-P9P% j- -c l- p"p.-? p---IpOw- - @ @, = 0,X@,@, @,/ @,/@, 0@, k @, +|  0, 0,p 0, 0,  0,Q0,  0,TP * 00,$ P0, &wD+"w ],7$Phw@A, wp 0$p *Ov 4Ơ!!0!,7  !,p4 p`/>r  p 0@( p w Х`r QHPk` 060r ʠ? 7 L w 4J   P7 @:" pN%007N  0 xTRİ ( &&x xp7i7@j0R#`]`aRp  E5(0778 0x0/  p.9p08 0xp 0x;$x `xpP] @ ( P  % 0 0 ` P )P @ S@8 " j ,* p0`xyA| 2!@p)cs  4!A 04! !750#0gGyP 9b-% <!r| PR$x B(@ //# -`7T | 6SI WP5p 0 A6 YUx @.!x oPLgG` `AP@P6!|IS{&3/Mp^K@ YrpCr H@,1s)1 p"sPg+0$!Qs<!1t`r `0RO$r p@'r0[1rB"r@ 00r  /@!p0P00`E6{`m0"@0;EE x 0 (E@@0    S&@T'0 G%GBO>  1x 6x `E!%k k0wP] -"PG` wG G G0P$kP `w]PzPJ5|wwR`R w/w! w &    &% @%4 @ p%  @ `   %/ ' 0dy @Hp  1&" o2  : 4   Jr `*4 @xx @ P> "x `tG/0 PphX \@ 0xJ% >@ k k4!`  x xP5p  Tx0+ j@Ud  (P $ @ kP pxРd06%xp+Ƞ @ '>r ?$?VO0rp, z@ xz0y**@l'P ( (01' (0(6 )0ymw ` G$x p+ 0=@y0>$; _+p $a (0   p5  5 5-/55 455+55$/@515P55E5[/5 55555l PO$x 5,5 P 5r55 n 3`7 =0n py@w ndpy /X` 0 pynPwn@3 @ 3X3B 3k A&AA%L,AA3n%0A o p3 `A8p(90AB pM 3Po 3B3F>rM 3`' @A 3 ''@Mp'' ' X F ,/    *  //A; ` A +A -A 0 O%xA%A P, A   /  aAAf A PA5x @A@9G  oy`Wo ΠP?zp z` Ozyz z 0$n8xc @2% @2` 2 P@2X MpX `>2`0 p 9 | z X  P[`X C@2  202K  P.-2@"16| @0 z @0Co @0 +|o pN00  PP00 Q=@000Q00n00@ h0"00NY 00<00# 00d 0#{00 @. A $<@.0 .$ 0.^ `  00p/x  @L< 0.0.D p0. @J- ?@##pP)C pP0P'0 C R"x@,4#`O.  ".%#ƀ60]%X x.T$r P!#Ёd`"rAapg#; d#d #-d #dM._ . dQ.P #d@d{ .a"|LP_p //Pp0 6rP`$U0-* U  po*d .UU U o @o n nn |I|&@o |0|D` 0$|?sO4 r/ <01 t  @$ PQS#f  0R| |, :| |Tp P |C |%||  | |} |( @T| 0|0 J|)P I|'0T|X m<'m! =p % mKmfx((LI8 > 0z0|; 0 |h ?|Z K+| pd ||8|Sp| 0=|,0|$|K0p|$|M0 |  |p| || '| 3 '3 |@|  0<=x@M P\@X_/6r~X}LX X X'*X~ /L@PX(@M X X X ` X  |I #|)P`>||0|!f .P P. ap0( @  "=@0 o"m00oi1tP00nP.0000s|Y100<0 p P1 00d |$"00p?|p @.r0 .|$ 0.^ ` | 0|0.0.D p| 0.{- @ ?{| |"#y P@@ */0 @p@p%0쐲P# 6r@p{P#+ P#P# { ${ @#0p{@p& @# O{% 0p#`{4 n,o* o @ */ #K $ P:p P@$6 p.P&0$`@0b0{  % ( 6 | 0P$ @*$ P  Q@  *(` 91t !A C/$p $ /E 2{  { { |@||| ||  |!"    .* zX$xp '{0k$x     p /  ` 6'xz ` 9 |pa ж E x &0 % p@жx` P uO x00Arp%  0 02$ @  *0%@ 0 ;%0@b @ @  A0$ pp4 :@5 @Ƞ `6r0p  00 00  @`# @0r   ` Q: 0S/| Р   p p{p Ȑ-  p&p 7 P ">p<@    !b  % `P p*&  S< 2 H |` g | %  @    G b    /  p p   ' p0 @#xp 0pF  P "  P* %   @@pb @g  @`"@@ O  fx I`  I  @n /  @ PA$r       @   *" 0I  % *O +/ ;V | p  $ 6 |$% 0 0% %?   &  p @  ` >Oz Jp# J &# U 1p 1$ 0>1 $(  ?[ |0 p1>16$| @o01 1 (>1 +`>J%p1JE$8@ ' N6Gy 0 ? @0p/ / < //  #@ @1| //-@/* G/ `/1  &rx   = P/ #U   x x I U/PH@$ p/ // `l/ 9 | /I`I  %  T - 0 `99@  @   99P P 4- 0< - --P-pGf1t p T-`-P9j- -c l- p"p.-? p---IpOw-- @ @, = X @,@,"/ @,/@, 0@, w @, +| !0, 0,p  #0, 0,  0,Q0,  0,TP * 00,$ P0, ,&w   N0Z4  '`#5| 0LcG ! 1x 1 0CxTrrGuhpb  7 #5r@@Z@| @P/B| P|  2  3  9 % /p%x $0Kp0p0 0 ( 0b pW1cs A!Ap!$ @ #`gGyP b0 @U$x eWrKd 4`(15|P*/  0Nf *)&B0 A AUx 05# Gpp)`+%+!Y/G +p* ] )+E$|N!P, ! iȏ$xh 0,v;N@` v A+wp [0o500 @k"v[E| Pk/+w1 PkR ` p!"@+b w+ Pv `k 7 |p, ` jF | P^& @w`w0,`j Tj` ">P" ^`$ P@$ 0"l " vB Pi7 | p7 L⠂v v vH0v "  & % hv  f" |* !"  P966 |0i O  Rpp9@ % @.7@7 7h5 4  h( G$8 w!/ 0 PFw w 0P ;>r P  pw"m q`/x0VPx  Q|+) `x #`q3rОd$r Pdq`"@*/pb@ppp 0pP5|sp ]ebr O+0 6w." # A0s<)A J"sft+0d.MQL`/s!1th3W0pO$r `0Tr 'r Z1rC"<@ Jr i p1 r](9w^wP/0[ `8w@NPP$v  p0.3r  v+j   E - Ev3 61t.7 @  @ #0`  * $v2#: *bPjE|!r @jpx0%  % 0% 0=j / -O -O ] '` G P;F | 6D0;9j  ư 0; k k (v   P&p ␾   0 0E @/- w`%& vlv0 p]0Gp] @1 0= \` 0&0 +   v  vv@ *`1$v"; G GB/>0G P0hp!*0vyv @]  0G @ Q 0G  "  P  0w% PG @G =/   % 0pv &%`%4   @ P `$%@   @G  O0& (0@/0p0-k   + @$ p0 0rm0$`1" 5   0 0 i w #xe    S*I3r # 0I@= P@=60I!@/$u>vv/O6 <  w&w=i% @   ʀ %p i`ߛ /hI DP @ (%0 09 `z$x  pi  w w `5|  J% //p p j 0w(k  *w Ey* jP)*4>@&`'0  p" '0    , BPB 5x Px? &OP P= , w  0  v 4*dPDx0B0plax P p &a >w%  `5' :x  P (  & pw* % x  @uxp `y0` @pxʰP5P* @ . `'-@  ;4? m$@3KT < 0 wK%KQ*/NK09K$&w 707K2wP%2`$` w P$222/ &w&w>2cPmK ` 1`Kf K * 2 K"?&%&J%%@@2 2 x ?w& @22?ƀ@ p@@ 22( (20 @P&2ư2pp&% 22 022  I&,*& ???&`)W? (&p&? `'@W8;VVLVP8V V> VV$VL?\V +/V]p&? "@& p X0  $ 0 $   0p+pwP 0 0-=50p=0 Pa -0@D = f'@0 V +b/x Ixp p$ V  0 UP Pp0=V0 P 0 =  @  U0 U   0  a .U.  .` ` w  , w.g pxplx! . U.Pl. . kPI .? @!.. d..T 0m.P!   @-   @- 0 @- `n0 0-0 0-0-d P0- 0-?` 0-  0-9 ` 0- ?@"HtHmy6pm- -`9y*y0yF` Ty y~0A ,yPRy& @9y 09yIpyP` yy y PFyy;y pH0y0%y 0`Ry00l`%yw'0PyX Pk<y Pyx PJ+ yd VyPPJ*y !0r+y4y  y yl KKy]60r  y$yk0 y y @ K` PW0Ly yxP2y y2y ypy y&@ 0yy0y 9 !=. y!:yh.?yY .<y ..T @my!!!ylp @-ry0 0-y y]0- yyk0- y@ 0- ` 0- --0yy, !y1PЃ 3/M0 `P'x@9G|@  p0P"O / W$x H' Ќ!!  !@@9Fxx5b` P_ 6xм@*/y0| P )x "y h* & p  *%#wb &0 4P@5xk% pP:x  ! z/'x090 !`Yr0&0e%x 0Ƞ"*(6 |P0p 70  0&%*$p9yA px0  " `6r @p ` p" 0pp f  b p @wp%90b wP  @ p 0 p F | p*0 p7 | @ @87 |0 PJ'x   xZP0 @ `4 P`0P_@!y0 J$ 0+ 0( 0:(0+0(0580 M 6Gy0 P   - Э(*p= 0$ n , 4 ` P / p  p`    p&x 9  % D   `P   P P 0@ @ P 0' 0 0       0   &$ 2p p  0#P0  #"` Bp  3p   @ P      !\P% @ F%x 0  P *ȏ 0% P pG | ` P$ 0 s 0"=0|61pb  Pp@;r % @p `6r0 pp     @   P?r 6P0*"" & pp-po p `0A/ ` 1#`"`0@ 0"$(`#@ . @6r0 !r '|  P ` fOy@6x ` P0!P %0 vb |hVO#| 025x  p  'p #`$% 0p&% +h `: 0&  $` `p% (` %$i  `/ʏ HP1Ey/.H`v&%0  @      p ' 0 @>  ` `p @/0 ,0 - 0 ?Ex   @ PEx    ` 6%x  5| p /"0 K%xp  %  / (   d  f/#|  @$ @0I :p;.@0 @I@0 @0/@    1@00I"0I @ 0 ;T`&x#=/@I @`0 < =@ P @=(=3 | q@06$|P`/7| # = P`0& 00!O0b0̠1 op;>k1sfEy @xT |`o%29 4 #0%b@6<G Cpp?CvPpR'|pKOq@1 xP`@p/rl@^Rr@m@5x 00n 3Pa3#'|ofph|0PSrrEr`py , #   +   W        0 * /  -@ I @@    @@y@0 %PY@/ @ + `  #2 p@@ @@ 0 * p@*  ;@  Y   nm|    0  8'| `P}pKr p  ` !r}``  ` Y    r O z "% 0 ?0*!7kgJ  A@0 A 90"B0X@FQ" , (pH0A0( p,  ]R@H: PT9,X&TABGZrX0@@  0<P  Pp82  @ @P  @P@ !   ! & @# C~ P & %8d / T@0)+ :gA `` At $  $  $ $$P C  ;{[/A/~"   0L J82 , \ <   -0 @ &P   { $$$ d@0$@  $$=$t D@ P p`od  `0@ PP @`@$  @ @3P ŀπw/  P @Pc` `D  ` 3}  f  0< PL   ,A < 0 w ߻L  E   X`D |  g{O_ fd    0\    \ P@ \q!@@{z~ @u ` $D@ ` @7 )))  )  )iπ)I`))))@)   }; 9  - P  `A4<` @a_]CHP    #X/0L $pjt@oT4pp;/oә  Y l `  0  P  <  T|`> l]P <  4/p]p I@ C p p Dp   @4 p  , P뽻lPG lLvC $P=pL  L p | pP-PG   P L00}~,b ,C 5~]~ $ D T0 0`  D9R (t $ 0T8@h  [ yx 8  m ;X_< $$P 0 P& < < <w hh F P$@|  (( $40 h03'RA5)p)pD/p#"p+D/p,P#W PP3 S_p,0 pp,pPP3CpW $p #* `ppp,pW pp,``Pp`M `Pp`M @`@0,pW p,d`Mpp`Mp P P, W p,p0p0p3$0 F`3ppp3$ FPSp@P@0,pW P3$` FW p$#*p p3$@ F P ,pW P3 'Rp`M'p,ppPPp,pMRp  `)0` p9p)GRRpM``M```M``M ,p0M `Mp`M@ ,pp@@p,p' ))%PGPPPp,ppp3$0FPSp)%G  0`P3ppW p9 )p pi p)%`GЧ p3p p0,$@Fp@p,p Ppp,$ F p@4p`W p4#`0pP,ppW pp,p p3$PF p` 3pPIP,$0F W 4p `4%G`Rp`Mp `4%` G`0,p p,$@!F@ `Lp`M) "o P90 )pM)#o  3pppP 4p p3P$# 0,p@ pp,$0%F W p)pWp3$&FW p 3p "P,p p4%`'GP 0 1/D' X\0h  0 00`uHߨHHH00L0`0HAH`||yxyvvsHspF,hmHmjjggd`daa^^[`[X0XU0URRO0OL`LI0IFFCC@H@=h=::774.1H1..++(`(%m x" xMuHH T `$(: 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , P t     ( L p     $ H l   @7L$Z4"m*X  ފRc ++NL$'j]"A%!F5"PLJ  E14 l2Iu" +Py"@ .o@q ~o `_ `!$0" +@B( 0  }C " N./ _ 0x B ;)Hz;Px Z<"0 5 >" ;@ >_  HB 0 0 0 P_ @ m'" ; ;P`8_ _ P@]s /` x hn;@@H_P 8 T_p 0_p 0XB`28`  PP/x \h%P -ph%` 3@ ; tH&@:ܢdSG;zf j Lzk <)J `5}@ `/l <l``4/LH`J `5@ L`i ```5n<L  LL@ 5,`5܀`<`L`L|` @M`5̠ 5L`6 `5M`@ 5\` 6@@ 5<`5n,L `5`L5`5 5,`L`Ll`@ @M `555 \`  `5<8 |X``5L ,`4`<``5n`M`M@`5 `5@5|5,L| `@ `@`5 5l5`5@`5bj5=t]4]k0]T]}a0^t(^L^mHp^$^n0^D^1b0_d$_Jq0H_l__rrH_4_b0_T `2l0D`th``alH`$`c0`DaԺx0@adday0aaa&a4b& XH 0 2? Hʁ 0  C H {0 A H @0 B lH 0 FC 1H 0 D H ;0 dE +H 0 F H 50 ^G %Hʓ 0 ۤH Hh /0 XI H 0 իJ H )0 RKH H0* 0 ϲLH H0 #0 LMH H0 0 ùNH H6 0 4OH H0  0  0@fH0 0 QH H0: b0 RH HH0җ 0 SH H 0 D0 iTH *H 0ٚ 0 UH H 0 &0 KVH H 0" 0 WH }H 0 0 EXH H0X 0 YH H0@ R0 ZH `H0҉ 0 ([H H0 0 \H H0 50 j]H CH0Z 0 ^H H0ҋ w0 _H H0 0 M`H &H0) 0 aH H0 R0}wbHu80 0 cH H0  40 YdH  H0 0 eH H0  0 ;fH H0 0 gH mH0 0 hH H0 i0 iH OH0 0 jH H 0 K0 pkH 1!H!0 !0 "lH ~$H"0p %0 &mH 'H#0 P(0 i)nH +H$0y +0 ,oH e.H%0@ .0 0pH 1H&0 720 P3qH 4H'0 50 6rH L8H(0 80 9sH ;H)08 <0 7=tH >H*0Œ k?0 @uH 3B+0 pC,VCH-  T2 ? @8*J|2 "qx#T/O "x@" ,) "p@9@@[5$O& @H'8@;@"2\ A@/%@@/=@.$@@/U @@@/m @.4@@/@@@/@.D@@/@@@/@.T@@/@@@/ @.d@@/-#@@@/Y&@.t@@/)@@@/,@.@@//@. @@/ 3@@@/56@.@@/a9@@@/<@.,@@/?@@@/B@.<@@/E@@@/H@.L@@/K@@@/N@.\@@/R@@@/U@.l@@/#X@@@/1[@.|@@/E^@.@@/qa@@@/d@.@@/g@@@/j@.$@@/!n@@@/Mq@.4@@/yt@@@/w@.D@@/z@@@/}@.T@@/@@@/у@.d@@/@@@/@.t@@/@@@/@.@@/@. @@/q@@@/a@.@@/O@@@/5@.,@@/@@@/@.<@@/@@@/ͩ@.L@@/@@@/@.\@@/@@@/e@.l@@/S@@@/a@.|@@/o@.@@/}@@@/@.@ /@@@/@.$@@/@@@/@.4@@/@@@/@.D@@/@@@/@.T@@/@@ @/o@.d@ @/U@@ @/;@.t@ @/!@@ @/@CD@/@. @@/@@@/@.@@/]@@@/%@.,@@/@@@.<@@/}@@@/E@.L@@/ @@@/ @.\@@/y@@@' T2@WG2 @x@@8/@@/ @@/2 @@/J@@/b@@/z@@/@@/@@/@@/!@@/%@@/B(@@/n+@@/.@@/1@@/4@@/8@@/J;@@/v>@@/A@@/D@@/G@@/J@@/M@@/P@@/S@@/V@@/Y@@/]@@/.`@@/Zc@@/f@@/i@@/l@@/ p@@/6s@@/bv@@/y@@/|@@/@@/@@/@@/@@/v@@/f@@/V@@/F@@/6@@/&@@/@@/@@/ڢ@@/@@/@@/@@/r@@/X@@/>@@/$@@/*@@/8@@/F@@/T@@/b@(/p@@/~@@/@@/@@/@@/@@/|@@/b@@/H@ @/.@ @/@ @/@ @/@ @/@@/@@/z@@/B@@/ @@/@@?@@/b@-/*@@/@@/ @@/@@/m@ q/Q.Z3L( /@# @.@/@#jK @/ @Y. @/ @#1@H2. /@#@@@/@#M@@/@#Y@-L@/2@#c@@@/J@#p@@/b@i_"@/"@#@%@/%@#(@/(@+@/,@#@.@/>/@#@1@/j2@#@4@/5@#@7@/8@#@:@/;@#@=@/?@@@/(B@#PC@/6E@@F@/DH@@I@/RK@-(@L@/`N@#6O@/nQ@C@R@/|T@N@U@/W@X@@X@/Z@d@[@/]@o@^@/`@#z@a@/c@#d@/*g@g@/Vj@#@j@/m@#@m@/p@#@p@/s@#@s@/w@#@v@/2z@#@y@/^}@|@/N@#@@/>@# @/.@-@/@#@@/@#+@@/@#8@@/@#D@@/ޔ@#N@@/Η@#[@@/@g@/@.r@/@~@@/p@@@/V@@/<@#@@/"@@@/@@@/@@@@/Դ@@@/@ހ@@/Ⱥ@#@/ֽ@@@/@Z@/@@@%@-@/@#*@/@5@@J@?@@/8@#K@@/F@.W@@/,@#b@/@n@@/@{@@/@@@/@@@/@#@/@@@/v@@@/\@#@@/B@#@@/ @@@/@@@/@#@@/b@#@@) ?*@3 @@/@#@/@a @/ @. @/J @#9@@/@#DH b-XEg@ -@/'@@/ @@/ @@/#@@/;@@/S@@/k@@/@@/ @@/#@@/&@@/'*@@/S-@@/0@@/3@@/6@@/:@@//=@@/O@@@/]C@@/kF@@/yI@@/L@@/O@@/R@@/U@@/X@@/[@@/^@@/b@@/?e@@/kh@@/k@@/n@@/q@@/u@@/Gx@@/s{@@/~@@/w@@/g@@/W@@/G@@/7@@/'@@/@@/@@/@@/@@/ɞ@@/@@/@@/{@@/a@@/G@@/-@@/@@/@@/@ -V!/@D/ @D/@D/'@D/5@D/C@D/Q@D/_@D/m@D/k@D/Q@D/7@@/@D/@D/@ @/@ @/@D/@D/@D/[@D/#@D/@D/@D/{@D?C@D/ @D/@D/ @D/c @D\BPS,/>@.[@@[@._@@[/@.c@@[/'@.`g@@@.8k@@[/m@.o@@[/@.r@@[@.v@@[/V@.z@@@.p~@@[/@.H@@/G@. @@@.@@/@.Ѝ@@[/<@.@@[@.@@/@.X@@[/1@.0@@@.@@/@.@@[/ @.@@[@.@@/b@.h@@[/ @.@@@[@.@@[/E!@.@@@.ȿ@@[/"@.@@/(#@.x@@[@.P@@[/p$@.(@@[/%@.@@[@.@@[/e&@.@@[/ '@.@@[@.`@@/Z(@.8@@[/)@.@@[@.@@/O*@.@@[@.@@[/+@.p@@[/ ,@.H@@[@=  @@[/V-@@ @[@.@@/.@@[/'/@.@@[@.X@@[/]0@.0@@[@.@@[/1@.@@[/(2@.#@@[@.'@@[/Z3@.h+@@[@.@/@@[/4@.3@@[/%5@.6@@[@.:@@[/W6@.>@@[@.xB@/7@.PF@/:8@.(J@@.N@/|9@.Q@/:@.U@@.Y@;@.`]@/<@.8a@@.e@/:=@.h@@.l@/l>@.p@/?@p9@.Hx@/7@@. |@@.@/iA@.Ѓ@/B@.@@.@/.C@.X@@.0@/TD@.@@.@/zE@.@/ F@.@@.h@/3G@.@@@.@/YH@.@@[!HpC"е@j1 %_nI@.@@/J@" @@"@@ @/`K@"@z@@/L@"P@Z@@@.@@/RM@"ҀGn@@@"p@6|/N@.ڀ/DO@."@@.@%@/P@.(@/BQ@.+@@./R@.P/@S@.@4@@.7@/T@.p/>U@= D@= @@/V@. @C@/0W@= F@@.I@/xX@= L@/Y@=P O@@. @R@/dZ@=$ U@/[@=p( X@@.,[@/P\@.0^@@.4@a@/]@.8d@/N^@.<g@@.@j@/_@.PEm@/L`@.I@ % O@.Ms@/a@.pQv@/Jb@{ y@@.Y|@/c@.]@@/0d@.a@@.e@/le@.i@/ f@.Pn@@.r@@/Fg@.v@@.pz@/h@.~@/ i@.Ђ@@.@@/Xj@.@@.@/k@.В@/,l@.P@@.@@/dm@.@+@.p@@.@/8o@"Ы@@ @@.@@/p@"p@/$q@"@@@@"@f@@/lr@"@F@@/s@PA@@" @@@/Xt@"@"@@.Ѐ@/u@. @/7#F4#M4#[FD9#]#`#g#76__halfE+9E/<B3CB7_^:A7a7d7k7E g 777G77J47Q47_nHA7a7d7k7A nq;7C;7F87M87_nDA 7a7d7k7E nu77G77J47Q47_nHA7a7d7k77?+9?%<<C<YJ:5[^e? g7A7D4K4Y2B5[^e;a 2k;=;@8G8Y2>5 [^e?2o7A7D4K4Y2B5[^e(a+ KKrT%*T+-Q14Q7_V+A$7a7d7k7E X7 77G77J47Q47_nHA7a7d7k7A nq;7C;7F87M87_nDA 7a7d7k7E nu77G77J47Q47_nHA7a7d7k7/He|>A1A4>;>S&2)UX_9X _7;7>4E4S<)UX_5 e;7;:8A8S8) UX_9[i7;7>4E4S<)UX_/C1y?1?4<;<Q2%SV]7E _797<4C4Q:%SV]3 c;5;88?8Q6% SV]7?g797<4C4Q:%SV](IN*N -K4KY+5[^e? X7A7D4K4Y2B5[^e; 2k;=;@8G8Y2>5 [^e?2o7A7D4K4Y2B5[^e)G)P0rF +E.B5BQ,%SV]7W Y 797<4C4Q:%SV]3k c;5;88?8Q6% SV]7?g797<4C4Q:%SV])\As?+?.<5<K^,MPW1 Y73764=4K^4MPW- ];/;2898K^0 MPW1a73764=4K^4MPW%25IBooleanTransposeEifg?hPhj/l/go,C!s,debug_frame agrallgrapprototypeoactionD ]܃An!c_VB03-ca`g`<k pA4D7C4M4I3VMB0^]gc8 pj8@;?8I8E7VMp>0 ^]gc< pn4D7C4M4I3VMpB0^]gc2 H747B:E9BCB?AZi88bakg@ d 4H7G4Q4M3ZiF8bakg< n8D;C8M8I7ZiB8 bakg@ r4H7G4Q4M3ZiF8bakg2XOz~<:?9<C<?;T?v8,\[ea: d4B7A4K4G3T?X@,\[ea6{ Xh8>;=8G8C7T?X<, \[ea:k Xl4B7A4K4G3T?X@,\[ea#3ffoQ+T*Q4Q0PZi)8$bakg@ U 4H7G4Q4M3ZiF8bakg< n8D;C8M8I7ZiB8 bakg@ r4H7G4Q4M3ZiF8bakg*tv>2A1>;>7=NL0 VU_[45 \4<7;4E4A3N: VU_[0 b88;78A8=7N6  VU_[4 f4<7;4E4A3N: VU_[*'P>v<2?1<;<~7;|L0|T|S|]|Y|2 \|4|:7|94|C4|?3|L8|T|S|]|Y|. `8|6;|58|?8|;7|L4 |T|S|]|Y|2 d4|:7|94|C4|?3|L8|T|S|]|Y|#oK+N*K4K0JT?0),\[ea:K XU4B7A4K4G3T?X@,\[ea6 Xh8>;=8G8C7T?X<, \[ea:k Xl4B7A4K4G3T?X@,\[ea$k1XpB,E+B5B1A|L *|T|S|]|Y|2 HV |4|:7|94|C4|?3|L8|T|S|]|Y|.S `8|6;|58|?8|;7|L4 |T|S|]|Y|2 d4|:7|94|C4|?3|L8|T|S|]|Y|$Mp<p,?j+<d5<^1;XF*XNXMXWXSX,  VX4X47X34X=4X93XF2XNXMXWXSX(= Z8X0;X/8X98X57XF. XNXMXWXSX,} ^4X47X34X=4X93XF2XNXMXWXS25nhwc2nchwBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,g!s,Co,debug_frame anv.callgrapprototyperel.action+ u2$"$ f  GR `@"@0  S `@#@70 p  T Z `@ @ 0 (  oU `@&@0  'V `3 _0  W `@ 0 P X :`@ 0  OY ` 0  !Z !` ["0 # $[ %` +&0 l' (\ b)` )0 <+ ,] 2-` -0 / [0^ 1` 10 2 +4_ 4`@ k50 6 7` 8`@ ;90 |: ;a r<`  =0 :> }?b @`@!@@0 A )Cc C`3` ]D0 E Fd vG`3 H0 >I Je "K`@%@K0 L -Nf N`@ aO0 P Qg zR` S0 BT U &V`@ V0 W 1Yi Y`Z0 [ \j ]` ;^0 |_ `k ra` b0 Lc dl Be` e0 g khm i` i0 j# ;ln l` {m0 n` po@p`@ Kq0 r` sp@t`@ u0 \v` wq@Rx` x0 z` ?{r@{` g|0 }` ~s@b` 0 ` Ot@` w0 ` ׅu@r` 0 (` _v@` 0  ` w@`@ 0 8 ` ox@ `@ 0  ` y@`  0 B ` uz@` 0  ` {@` 0 :` m|@` 0 ` }@` 0 2` e~@`@ 0 ` @z` 0 *` ] 0 ` ٯ@r` 0 :` }@` 0 ` )@ʷ` ]0 ` պ@v` 0 >` @"`4 0 ` -@`3  a0 ` @z`` 0 B` @&`@ 0 ` 1@` ]0 ` @N` 0 ` 1@` U0 z` @F` 0 ` )@` M0 r ` @>` 0 !` !@`` E0 j"` @6` 0 #` @` 70 P$` w@ `@-@0 %` @b`  0&` '@`@+@?0 X'` @` 0 (` @j`  0 )` /@` G0 `*`{ 0 +` @r "OPgx C @| (( $40  R0A5)p) | p0p3  pHp3PF p%(P)p  p%( (p)#0E0P3pM)o P43pLp4`LpM)@oNp 4% GRp4P p3pp\ p3pl p p3PG | p)p  p)p)0G Dp3p, Xp3$ F3pMp5 G  4pN oO pN oMp5GRpp4p@4%PGRpL)0oO pM)o4pP 4p M)`o  4p 4%@G Rp 4% G@  4p 4%G 3ppp3p0,p3$PF3p3$0F Php3pp3$F3p4p4%`GRp p4%@GRpL) op4pL)ol3pp ȩ)p 3$PF \3p@3$0F0P4p@ MT@@3p 0Lp1/"" & &0'B)*    .0:10sj46729:b<"J$%z')*B,-r/ 12:45j79:2<=#j%'(2*b-0}.y0u*2q3mmi60e8a":]]YR=0U>QQMMIIEEAA==995511-))%0!# +3   : 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , !7q5 *`XX EUP!9H!uPP!# = n8! 0@#8_0o "p%8_ `0/`  8_$0 !(8 %,0 !08 %40 !88 %<0 !@8 %D00 H8P L0bp0,P8O @T0P X8P D \0P /0"`8P _ d0` %h8@%l0` %p8@%t0@!x8@%|0@!8@%0` !8 %0` !8 %0 !8 %0 !8 %0` %8` %0` %8` %0` !8` %0` !8` %Ą0S_ !0pȄ8Pph ̄0 PЄ8*&@Ԅ0HAx؄8*O p܄0_Є8_P0 !8 %0 !8 %0 !8 %0 ! | - %0b l50.@$@**+ .t,д.HfP'(.  ` 8h2  00 8bph".8 #%O G^c%6,0M0T0<1 0t//))0/$/L3 /D/Լ4 /d/5 ///)0/4/7 /T/<9 /tx/p/L:0h/$Sa* X/DP/&H/d@/=@8/0/(/>0 /4/* /T/1 0x@菐P x P"p`@xA@P`p4 ! 4pE$z ` x3 T$x ppp  2@ 00@ 2 0 G@ 0A« x DtDx %00z @ @ 0 A "pRcx @!@!P$AyPQGpVx U$x 6 #P @7  6x`5z SxX#( @ x ( 1xPp8z Cx`x B΀0@BB zU$t %0zB z@%@  @00 4PC B @1P@ # 02 ! 5 @@x E Pp7PWPhP5 Psp7PFu@a$@5 b ( p0600A$z0 5@  00  U x 3 5 A`& `c0 ` /0P `# 03 p03 U/P1 P`& ` "`$8@`$ 5 p`E z 0`)@  cO  # p g P &[9 P0 PPDxH@`ɠc04B 0p P4P Dx` P u pp`0C@0)pXp@p*O@h@  ` Ñ2 3 1 0P3 ` P@p'ِ!30@$ `p%/ Dx p1$z` '` P P$ P" PP# P#pPb PP PPXP9P#P*P PP%P4 @jx @2!O`3`p Q`c0 4  4 2 | /  @ p XB   @   @ &t p5z    P  @ `& !`P @ `0 @ P   p`&xp#pC` Cx # # #  $ @%0%# Gp`@ 4 PW$z p C ``%`h"xpC@  0E 9 303O@ `9P0 P#P 6P#09P3` &PpPp@ P `@` 6p*t0 p/ !@ ` ` P@%p  ` p @E % $P*-E r@0 1rp5pP   p @ P C #C  3 @ # `P" @ ' *W"  A% ` &`G 03r@0z0 5yp EswAGy@p8$zQ$v Ɛ5x  p%x  9y1%x      &y ( b 5x@  $Ds0Ds 0 @DASy^%("@&e$xpM#yya"x0(A$x @5tp_p]%vlȠ  ;xC`@ `#0vpx;%5x` Dx!0`x3!r  1x 5x ` ` p0 !rp 4 p@0@ r @pR01y $xT a zJ0t\P x&B"$Brp@>rU p1@y0} "x> p`     hG) " x0SMP1r P F$x @ b x$ @$x O#@r P `0 @% 5x0r P 1x @ 0x `6  Tx 2z  Gx 0P 00  @0ra f"$tax  %  0$ `4  -@'Eyp9Q PI0=|30p`C0ذ!x@@P `TrSrP p`    `0& M 6$xu%x 5x pj!u(y h  ̭ C 0axt E z OO z &v0@@s @@@5x { z 000&t  ` 0"$@u$P`T>r  0:  1%x0 !yoP4 0$ @@ Ty $ `p E$9$$$# p$"`:z$$ ;p.4 ;$!;x$ $  $;$ 0;$$1x$$ ; $Pp$!p#p#f0 !d:)a`Ux/ 0@@5T> pp!  $W $$$P"p$M@ $$4r #$$" `cr P.. $Tr # , $@/x$($#$#$, $# ,0$5% ,<$P#@ &`@ &P#W!0 !0 $! 0 5 `"H  bx v4pT>D C',@xP#)P( % (1! "F$@u$!0( $!$ #"`"@# ##"" #"$Y0? " 0"&x "%,# &0" % `b,, % #%0"_y 0#pxp0#  &z `" 0 #% 0"0"E z " )r -" p"@5yp"P"`"`"# "!7Gy. / .bP3 /!zE$ @Aư.\ /2A @E@E"  #VC$ !@d@[Pe@" @p f"#`f$#p@ fn f  f f f(dV@Rh$eЉ6&Pf/ Pf % Pfa`cW/c@O 0ip`R#cc:$ЊcS3p Pրfe` `fi>cb p pc f @00 pBrP`f H $xP`f _ PPd)x f=x pf9f* *% f5z@fڀ`u@f@P!$g@9@0eEx fP @&reГ` E$Pp"jdpc f6$rfug(`0W!9 Ex h kPp P# g`/e0(g0oEg &P İh6$g@h`h@!@@9@`h&P006%gf/>h0 1x Ef h@% V@ @@%g0@hʏ @h *@@`P!r0f@E$x `ph ph `@PiO P 0h)y6$x&vx % @hN@k5y*bP9z!z@:$tx P   P1%xo ghy 'x /P ih d x*9  ` ` (i */Q *䏰p P5zPp@F  &,# @&t&R` && *&p&  R & & &&# && P&@&0&0&9 %@"+x @& 0&0&(`& &P& #0P&0&0&)@*0&6x%P &1"+0&p  0&&P %%! %%DP %9x%`0+%%%%$%%@#%%%%G% .00'%"%K %%(%@%KO>#@% @%@%@% 0%)`$0%P% p$ P%K/P%P%P%(0&(@ P%P%`VP `%_%,%0r%@#$$ /P$%% 9$/ p%Я&y#*0$"P@ P&zP@p*@%@$0/N&  $ %p$$!Hh$Fcj  "!H 0 @f5tP␑ 0bJ$z @$,#`@ $# e&v px01@b?xp pp p p` pEyp  x !@kc c`i "r"r hhx h0 `@A pg0rLPi*  pi@@k@k@ x#p`Дk ?  Pk` Pk 0Er  `k4  Pk* * % ! <xi h  j@0r 0 p `&tE x `jD `Pg f-00pi9POI0=Pl0oEyDj @l@ nБ o@l#p% p@pk P A%x6$x pۏEy kh% j% Pj`o@kuO z`x  *`kj@@`@00&t%B x 0 "$@u$0T>r P:  1yk4 00ll+$ Pn0Gy0n#$  ]$ $$ p$"`:z$$@0!@ x#pB!  @x"5!!?xnP $  P % 0f0 !d !Ux/ 0 PD p $  P$P"p-pP P$P #$P@%$ # $$Tr #P&x $$'$#p$#$0@$ $##0$`% 2r #p'#&`@ &P#a `"0 0 8 p'Б0 0 "" P Hx p2>@2> S'!@xp09$P( % (@0 "F$! $ $!$ #"$""@# ##""#p @PV " 0"&x "Ў&0" % `b 0 % #%0"p(Oy 0#00# d&z `" 0 #% 0"0"E z "P" 8%x" p"`е"`"" "!@E"  #VC$ !@`/0pc3 Aa&5R$Cpp րfe` fcxpbZЈf f@i@ffk$x / `f `f  `f g pfpf)i*$xeW@`0j@  % fP 05zpd&reUE$PPPP  Dc )` 0W 9xp$ kPp Pp`/epppGp h+$`h@H@`h h6$P0`g#gC/>0  @ @ @5@K @@` O`  `@PiO P 0h6$x@l&v5xh @h h@k5yP Er@)&zp*tx{ ``/ opg0k*/0 rph* 4 x/m*0  `i+(@j+/Q% p @j+0rP p%Pp0Dy@F  &,# @P n    ` f%h H  %Ќ 0K/0&&&# && P&@&0&0&9 %$+x @& 0&0&(`& &Ġ& # P&0&0&)@*0&6x%P &'"+ !0&&!,>%%# %%DP %9x%E zP %%%%$%%@#%%%%G%'.%` %@$H0%K %%(%@%KO>#@% @%@%@% 0%)`$0%P%p$( P%K/0P%P%P%P' $@+P%P%VP `%_%,%0r%@##$P#$ @/P$/b%*9$/ p%p%p%Vy#*0$"P@ P&zP@p*@% P@@0'0/N&  $ %pp$Hh$Fcj  "!-2'a piO$z `@$,#@@k k $# e&v xh!@b@x @3Pe%0``k@@j pPx j+ jgEy f3j% j`ej`d@ r `k@pRPꐈ% pg "`j`gt@pj`1x Pfu z  0% @@c< AypExpk0r 0zx  5x k k k@ x#p` j ` xw$x 0k0k$ 0k !xf `!`j0k4 ph#P4 P k pjm 0rp f"$t` x pD @my0Ph9 ? IS"rp#`jP`&Oy Di `pm0plkpo60kp@PmPk g%xj6$x PppP@kh%Ў%j Po% P&tk% 0pk@@*%P%PPp$ x`B x`!x@`0uy@Г P$ `j#  $?@ $$ &@ x#pB! p@x 5  ;x$ $  $p x `"p`?x$@P ! $+r  $ $  $0$p!# % W&b@0PE r @$P4 P! @ u/ & p!&pa x %#$##  #p # #(x #$pp#E z @&xЎ p#0#Ȁ# 0&& a0)6"0D80i$P E @P &P` "1r&1pб $""xPP 'x`' `5y$ %0"#@ "PfG` `"F$vp)5x @!"`" (E$x ) % Pb @% p" % `!1("" p`  H%x !6x)-Ə"E z % !E z !@!!!#@+&6x+Qr4(+$p +0+# `#!x,# /@P@+^B%P-b)-Szg uxpTz\ 3fҀ,&@ @ &` ;x @ 4$@  @-0*0 0 0DP` $!`f$r 0z  'P$xp'0 `*0  `'"0p j k 0 % p 5tp% p P00z  A le Ap $pR C @! 0-fGppEx ,% % ,#P @ @!r`-$  5z PH$z c x`  ( 1xP@( Cx'`x $/#p P@B @U$t% 0 %@  ` A P -C B @1@@  2 !5 @@x E Pp.7PWPhP5 P@p7PFu@a$@fPb ( )600A$z0 P%pp !z 00 p `U x 3 5 A`& `c0 ` /0P `# 03 p3 P1 P`& ` "1$8@`$ 5 p` 0`)@  cO  # p P' P &[9 P0 PPDxH@`ɠc04B 0p@ EP4P Dx` P u pp`0C@0)p5Xp@p*O@h@ 3 p`4  3 1 0P3 ` P@ 0'ِ!30@$ `p%/ Dx p1$z` '` P P$ P" PP# P#pPb PP0PPXP9P#P*P PP%P4 @jx @2!O`3`p Q`c0 4  4 2D! /  @ @   @   @ &t 015z    07$P  @ `& !`P@@ `0 @ P 7p`P0 #p@4C` 0x 3 # #  $ @%85# Gp`@ P84 PA$z pp C ``%` "pC@p E 9 3`3O@ `9P0 P#P 6P#09P3 &PpPp@ P `@` P@1pR6p*t0 / !@ ` ` P@%p  ` p @E % $P*-E r@0 1rp5pP  ;p 3 04P C #C  3 @ # `P" @ ' *W"@  A%  &` P@3r@9z0z0 5yp EsKAGy(zQ$v pƐ5x PA?r% iy1%x @'y    &y ( b 5x  @Ds0Ds 0 @:Yy ${ C"VAcpc 0 !!p,#P@c_@Gcc`ZMPL`b& bVK Y`VcN ( pVO#pGW T#pKd0dp cac c ccKPN0r^p>% X@1xPZcKȠcp?@ acW$cX VO#PO0dI!r[ ELpd&PL@L#$] &@d (`c%a@6xPMPE zd0D  #Pg$@cE/00epJc8dp p]&Wd+b`ei  0e0R6%d050@[$"p)PeH'e*/hO@S0r N X  0`  0 pee00 e0f$x 00&0 e Pep)y@ &t 5x ʐe$09z05z PP&vf0xKe05x @Np$eM@ @$ 00)y *`PfЇfPf*$PЇЎ/ *@ffP   x?kph$ppPb $=P}%@-@3(| `p{P0zp0i0z%vl@p`r/@%@4p$ %Ex P0 #@v:x !x p Px$$p A l0$Pah$  8 pOx$ E r`$pl )e!Щ5 P}`$ ?$ @Fx P$Py!x P%  Txar~* 4 0p$$ /$Ё E$k(%$# #$bP $&$`$p#$)@ `$ 0#'/  O$5(u" aO$ 0%p#6 #PP P1uW$5$0# E  $p$$~U 0#0p5%# p"ps  #5rt'%#&pP"`9!`${5rvP /#& T%xp)y' #p#p ( ! #!5xP"&yp'P#20 P#p 0#% Đ% #a#z  @# 0#p# ## @$""!"E#Cf-!!k"xf f% eb`0z e_ f 1#` f`f5xp``ppfpfpp dfp` pEpp"r@ @ea  `6y$0r A%Pc&t@ efP@>rp@g``` @`p  d @G)f@ x#p`+r  @ h x g$ g `p &xP P$ * g`g% gj Ex f d% Pfdp0P g % gW"$t0r 0i` xKc5 @ 0kpp9g/"Q I0=pPpkEyDf !x P@@@f0j `0hSr p@P`l Ph O h `P&ygh`0r`5z@o P&z@@@%@@ `i;z 00@&t % @` 0"$ku$P 0l0>r  0:    0ipP4 0$ @@ Ty $ Ph$@j?@#J$z$$ 0  $  $0:x $ $1x$0 *dЊ0`Њ( 0#p D pppP $` P"-p$$4r #$$! %1r p $Tr ## p$' "#p$#$ $#`0$`% 0r $`#@ &`@ &P#W0!0 Dp0 0T0 0  0 $P8 fx v@0>p 0> `@C'@xP)P( %)(1 " 1$' p$!0( $0# #"`"@# ##"0#P"pV " 0"5x @#!Ey &0"в5y `%b"@* #/ # ## # " #P" "d0r @ #% @0"08z 0>r  )r 0P) p"p"`"`"" "!"@Ef"  #VC$ !@- @" @p p_f#`spB P:f#p@` fn f  f f f (dV@eЉA0 cpDpPf/ Pf % H0cQ/`tcO B#c06$;TpE r րfe` `fcb pdpc f fP@0p Or `f `f P  `f$ ` f=x pf9f $ Pf5z@fo`du@fW$0@a@@pV#pp% fP 5z@0$` E$Pp0ff ff&rfugD`?0 '0!:P Ex hPp P# g`/e0(g0o5g ? İh6$ge`h@@9@`h&P006%gB/>hPf1x Ef h@% e % i@b&g@gʏ @:$@@#p$ @ O `ph ph `@PiO P 0hP6$x @ 8x6$x @`h@k5y*bP!x&z0z(*tx `  PE%x @i05y`xy 00r k/P   *p  ` ` (i +/Q% /⏠K$@F  & @&!# @&t&Rp! && *&p&  R & &&&&# && P&@&0&0&9 %#+x @& 0&0&(`& &P&  P&0&0&)@*0&6x%P &'"*p+00&0&0&0&&%%! %%DP %9x%`%%%%%%% %%%G%'.%` %@$H%K %%(%@%KO>#@% @%@%@% 0%@%`$0%P% p$( P%K/P%P%P%(0&(@+P%P%PVP `%_%,%0r=%x$$ /P$/b%$% #p%p%Я&yp%*0$"P P&zP@p*@%&@$0/N& zz %p$$!Hh$Fcj  "!Ha`ff Аxe"$x h0 ecAy0mExkg!rPi!@  pi@p@ x#p` m k04?  Pk Pk 0Tr Pk `k4 k Pk* h$ ! m@k  h  @0rj'G)p `&tE x D `Pg f-00p9/"QI=kPlpoEyDj l@l@ nБ o@l3p@pk P0 A%x@j6$x pۏEy kh% j% Pjk+i@k%` 0 j@@`@0&t%B x 0 @$@u$P0>r o P:   2ylkP 0l@Ơ$ P$  @!$c$z _$$0!!!?xnP   P #f0 !d"Dx/ 0  G E r  P$P"&A`@P$$P #$P$ #pp $$Tr #P&x $$'$#p$# $## #@ 0r $P#&`@ &P#Q0`!0 0 8 p(0Б3O 0 !" P Hx pT>00 `0cP@x@06$ % !P'@  "06$!$ $!$ #"$""@# ##""#p @PV " 0"&x "Ў&0" % `%b"@* #/ #f0r# # " #P" "d0r @ #% @y #!H z 0>r  )r 6%x@"p"p"`"`"GA@E"  E!#"C$ !@W/0c[O a&5R$Cpp `fրfe` fcxZЈ f@i@ffk$x / `f `f  `f 0pfpf)`*$xeWW$0@0cDb@  % fP g0%E$PPPP  0, )` 0'0`0p$ k&p0f$p`/epppGp İh+$`hPk@6$P00#gC/>0  @% i@ 5@K @@0 O`  `@PiO P 0h6$x@l&v5xh @h0h@k5y*bP9z&zp*tx{` ``/ PPh0kr*/0pnrpnh 4 x/m*0  h`i+(h@%*/Q% !O jp80Dy@F  &@& `&&# && P&@&0&0&9 %$+x @& 0&0&(`& &Ġ& P&0&0&) *0&6x%W & "#0&p  0&0&&!,>%%# %%DP %9x%`%!%%%$%%!%%%%G%'.%` %%K %%(%@%KO>#@% @%@%@% 0%@%`$0%P% p$' P%K/0P%P%P%Ȑ @+P%P%VP `%_%,%0r6%x#$@$ @/P$%% *$% #p%#Vy#W0r@$"P$ P&zP@p*@% @@$0/N& zz %p$$!kHh$Fcj  "!-  `] %vlG`@$,#@@Ph $# e&v xc!菐@x @3Pe%0``@p pPx `( E z`Eyp f3P% `e 0E r !Pꐈ% pg "`j`Pft@pj`T0r Їu z 0 0% @@c Ay`Ex@0rd 0zx  6x ` k k@ x"p` j#M j ` xw$x 0k$ 0k !xf !`j0k4 @ph#P4 P! k  p `k p f"$t`E x D @my0 P`9 ? IS"rp#P P0@`Oy Di 0plkpo60kPmO0Pk g%xj6$x PpP@kh%jЎ%jj@mi% P&tk% 0pk@0k'䏰0E zP%PP kp`B x!x@ `0uy@Г P$ ` $?@ $$ &@ x#pB! op@x 5  ;x$ $  $p x `1p`?x$@P ! $!r "! $ $( E z $0$p!# % f Sb04 0 E S/$ $pE r `$Z & p!*M ##!$###P*# ## ` p#E z @/x # 0P#Ȁ#p6 0&fd$дf D P5 @p) "'0p"50pf$0`$6 ` ) "!`%` $ !`' $" "xP '0r`'%$ $p"0"#p" "V` `"F$vp)&x`"@!"`"P`"% ) %Pb @% p" % `!y "   &r  O! !60r)а "J z   !E z !@!!!!C"VAcC# !!p,#P@c_ cc cd$@c`_!ςPfh$ bbp0 a x-Opc  c@PX/ pVO#p_W T p0 cp ca`cF $x 0 Pcp@:rp>* %c`% cc5z`S@ aW$0PX QO#00db!rf C⠇&PT@ #$b E`@6x-PE zP 00 #003$PdU/0'@e (0 aHp&Wd09 !`e46%d050Є$"p)8'0e-/ 0hİ f H  0`  0 pe000 0f$x 00&0 e Pep)y@ &t 5x pe $09z@5z PP&vf02x @05x epe$e`@ @$ 0 *`PfЇPf*$PЎЎ/ *@ffP   x+p,p0GyjP$0$-@]%@-'3p!( F$xP&t `0@$zp`@$z@  0/@%p$ %@x %:x PpP`x$p Pq 0W@$!  8 pOx H rPEx $@)e!05 Pp`$&p?$ @ Fx P$0  P%  "r  4 4 $!5x %4 0@!$$ /$) pE$k(%p$$#+0$$&$P$`!$p!)0 P$P%5$'" ?#P$&Pa$  &p"fO%$p#6 #PP P5$#0 6 P0!T0!50#05 ` # #05 `/@#!p( ##PWx@ p!`$r ` G @%x# ' p#p# ! #! p#&yp'P#Lp 0#*0#p#:""!"E#Cf-!H0ґ"zF!H0J@M&@l1xLLbrq(P!J#Jp 0 `G$ G pJ@G/HL`#@FZL"y %&s!i pspjHub.$x Pm1s0ru!d`J`JB$rJJ ppm3r @'rFJ1z4ru  0f`f0yP"     G)fT xZM0r  p&x  h2rpfpr 3 0 P0p0pP% p 1x d @8E 9x` `e e1r f p&r`   @@!>r@iP@9 %5I@@ p#f@D  @"x @P `@x0 pTr0kGr   0kP 6$x %xp @g p @ hy @C `@ P hf`5 /@ `E z0 O00Pj6z 000H%x 0 `k5o`@ d>r  $0g>r 0gy @  Dy @$jP$p&$$ $ PP-@ $ '$$/ $p,#`!# #P  d`. *& S/ "G @ `$00$ 0$! :o#&Ю#& ##9 @# 7x ###;`## #P# #Ю #####`#Ġ<0&# #p#`#04 + p4`#&#P&`#p&p&"C ``@p`#p6 Ox v0)t> 0ƀ%:P"+`$0>0pP&0#p"1!@x6$# %p!,E" $/' "$" @" # `#`"+ " `" P"#fGM P)<! `" y@"*&! % `"*f! * p"/ p"&z"*/! p!Ȁ%0*O!'z )! !!! "!!!?F FjC ES(y@D*bEP.!z0E`DFx06$@\`*p+Fp.PDPD"D!"BA ! a_,t 0$  Ѐ#00 6$vPP"'Fxd`[ d d d ! Ёc! #0 bbd % dPTaPO B#@b )p T#p`e@d`Erf>b0` eE p_ee` de 0 d@ deP@dP 4 ep e*% d@d@&P&d( 10090! 0% PeP  Ј$@ 0EeR$$ʀdhd`d `d/r 0T@v`19!b`f@&p@ 1$`0 a`1>0& d eEpEe*. 0gPE$ Їa0ʏ 0f p 0`ЇЉ1%WO>f``Exf50f h `fP hjA r %e00&000Ј @Ppg fP @P@O`0g_`fE%xP 6$x@`f{1x@&z&v`u#z&tP06x E%x Ԡ&r 0 5y@g 0&y%Pg%Pg"`%@0z gpД@%  pE%x 0Ppy zz?   ЉEQ%60G%%d`%%`%%%` "p% $%%%% %ʰ % P%@%O)0%0(0%$@ %H z +0%0%0%W$\&>$ $$9x$@Љ+   `$#'>$P!$( $$$$ $$$$$+%@$#@$ @$@$@$ 0$Ā#0$P$ #0 P$P$P$P$P"#& P$`$`V` #_##0#@'* ## 0 p#//"*P$ $'DyP$#0#2%#$#,y?+p# #I!iFPG@#PE!!hFc,t  #0h   Ѕ` 0p + PcEy  0Ph#xb Ph/% @ei"$tІE z  p p p3r0r PpcAy` `d!r Pp   hh@ x`"p`g#M p '  4 `@e@`p #Ph j  f@h i@ r`h 0d )t6$r ĀE x hD @e@d`-@f9p/"/ @5I@p@0@pj 0D  @5x0j `jP@ p`i6 i0 pА 9 p( 6$t % ih% hЌ% C g @ E z0 OP05x `0 p‌@% i0 1$pPE$Pj@@ P 00E%x 9 Ѝ$j@4$ #`$@5 !P$P $P&PAP###@# 7x ###;`## #P# #p## * % !&# #`# Pг ##  '%  0r #[`#!`%"6$`#0&"&"W "C Я*>!" @pOx 2> Ў0XP"*`$2>6$0#0p"1Ex &#1P   ' "$" @" " `#`"@" `"p"PV P) ! `"5y `"*&! % `"*f! * p"/ p"6zB/>rK#p!Ȁ%0*O! & )!! !` ( p) !!! Њ"!PD"BAB!6#00#@Pd *Ђ$b;P`H @Dpb0Ї@` P0a AO i/$pE Tpp @a$@d` 0S>``1$x ep P(PPc&d `X00PP P ; Pe T@ 0'R$$ʀd6 00P`f?p&p@ @$000 h   0g*$U00K f*p5 %[%@P@ @@@  P `P&ex0000000d 0@P fP @P*O(gO`-U0r@eO z@h)vf6#z&tP0  pE%x fԠ&r0*  `"0r% *pfy*`k $ x %P +0rzz?   ЉEQ%60 %%% %ʰ % P%@%@O)0%(0%Vx$Z %E z[00%0%0%P$,>"!rP+$$9x$@   T$@!'>$$ $$$$ $$$$$+%@$#@$ @$@$@$ 0$Ā#0$) #а P$P$P$P$P"! O P$`!#&` #_##0#* ## 0 p#//"` $ (#$fy#0#2%#$#,yp# #I!  0>,t K$z  PG#PE!!h0FFFFF F#P0#0@  _#&vЅpxb11xa30c4```G Px3 % PHTEy 300e#x- !Ppa% @eu"r`0dt0p`0% 0  % 0pa0 Ayq`p !rf Ѕ%  Phh@ xP"p`g#M  I`e@/ @rBJ& g`Ox * `P JЋ %fi i*$@'$Ԁ & hub    &@& @TB #@ @#0 @@ r@@i  %@hp0L' V$ `G @k  0iZ"$tp* zP1r !e1$ x@$x w$`y_`РhD9 G$r@x P 0r@%x P k@$x `h ii`ik00i6$x%x`%i"$v Eyhb%@%`p%`  P0E z  */@5z xO x E%xp6 z a%x0i' x`R$A%x@ 00`h P @ kTGyg g#N0"zF 0# l$( !#Pn ` P$ 4 @/ pj[p &Zcr 1s 0s $xs  u!d0  !r  /$ 0p'r  yB%k P 'rP$p@ R$# 0z #pRDr @ yB'1zP4<@3pSz g Wpf$ a "3c$z\`S`% @c zf ppZ @Sz Y` p@ xpB`&@ Jx  &r      r x 6x D@`4!05z  x $  K$x   Pp @@ !p ` j  k̐s `$r%@ 5t %p 0% 00z ` T ` AL$pRpC @!   fG``GxP #p %%axs 06x'@ `( @ x@5x 8z@Sx` cx@ p#p ` @ @B%pu5t3f fu@$zP` %  @  P W0C B PP  !@  r ! tD @x "  P9P5 P@&@`3 p9P5Pu Pp$@5 ubxp``'A$z 0'0A$z0  pa/$z !z050@ 'O0U@S # DP a`h z%Pws0Q `1p'0sPE p# @ p Dx (0!05 Pp5" P@5  03 `(P pP' PS $PPP0PPE z `'r`P#P2 3ppEP!b8 0) P p5`p B` 0608H0c0&0`P0c %S @p@$3 @p30P`Pg &pPPp PX$ P PP  PPP# ! #PPP`5x` `XP`{POP*P% p0* P@`03 5` x`  "0#@) 4 `- 6 1b!A $B /  @ cEy@    0   @ &t @ 5z  4  `3   ! &p P    `   0 0 P0# p  `c# @F # 0)I$z #  PG$zC#  #(Pxp PeC 0 0  p pP `c"Pe/pPpP03p`pp5`0PP#06@Sp9P0PP ` EPt@4 3 ``@`  `&p*tb P !P pP)O@  P//@p @ 0 @ @ `%$0 5xDp*-E r@`P5p09x )x 0 3 P 3  D# $   3  B0`D 00 @'9* (  *A  0 3r09z0z y s A 0!`01vƐP5x !r % )y1%x  06y   Pfy (P6$xp !#H1sqH@s   :4#{!P PMj #0j`0#0 ?z# ` ;x`4p# ##`#Pppp# Dx!@#!r  @x#+ p@P"# 0 b  `#@ r $pRP 6 !/@pЋ  @Ћ   Ћ6x !r N I$x 3r0Er 8x0#pl0  #$x@ x"pB0@r 08$x`#P ;x`#`#% @ 5x `# G&`@& /p n`# p %  (xp0 '  `F `!p&`! Dxpu #b% PE #$0P 1 ` 0 a f" #( pF  % ` 5 O@p001%0"PU @ p"$ E a$@1E z%1 qUu @(  e ` @%  /$$0 p#C C bP P &  `ar @G$%# %"1$ 0p0a&%  UD E$ 1 , ($$0E P6 #PE P&`#r @q @C$x3 @&0XV0& @S/$0 H G `S (F @ @@c `@ 0P0"/p0fb$p$(Q Q Uff % 5`p!x 'd$0 +5 'xB xp 6 p6pe f   @u$   W ڀarp`0@D$x p/P ,/#0$   p@ @0+0& !0 P& &`@& p). &Pgb P% &0 /'`PF  O `"  P0F$0P5 'Г#r ` ` *p @#2% 5rp``6 T$xp@@$ @5r&P6 @c$ @&  O 0' Fr f P% P /`PTP-p H r 0&x0 r@Fx 0Pp @6 j(F sN$ E @u /6  5 $cM9P.0p'x`P, P!x &z /p + f$v`-5x0y_&(Ey -f0'@By@ -( -E%x- - -+ z,@6z )O, !x` ,@/ʏ,@-0,- P+P+KP+NN!! NNO%N3pN 3NX/N p*G L#yn=6 bp$>(@$z08%I>L\#O6LL P94 & &4`ML@@L (=# p9:GL"L +0z 0L2L+LC0N iyy, y `DpsA&v h{;x y y  PB y  py% `~ja @@xG0nsh$ @y|6`|&w @䀜% C0CElSiiRO# s`s&T  E#xpE ryz05 k0x`y/p y+r ~X $x @ym ` m@yyH$x $`М0Ar3@  w%y % @m`0G`O0li !t`p% m*5Иmpqp Y1$ HpFEm (ml Ex nĠz Ѐ n`9!md0T`H&PW/$Pq&5q( xP p5 nm&y 0|R%u5 m$"p)060ph % `5r  `i/ hG$@Dr PI% 0 s V  o@%x9y V !yZPo"М) !z x9$v`B x  &x ~`ao$o p  Pv&yo1%x`0p $fy0d&/ `0VO#zxp`@q $X$p#$'! #$ P h@$Px !!1x#$$$K$$ #p*$# #$$$ #Er @##& #4 `#_$x # p!###4 {r#$   ##(# p###"P"0#P#&# #!E &@`#Ȁ&5 #&"p 5 O# #*"p60"V #E$"5 "P; " "V0# V"*"/"" "0" 0 "P&Q#50 ""ПV`p".)v0" p"E$x" E%x@"!`"0%@"/@"@"` " ""%" /p ! " P "`P" P# & @#!}E!p +!'%ppp !xp ppp*pp%p&/pp p P p P@p' p-P3$!`pp:z p  K$x P- PPp` P (PP/ P, ,P/U$z s8  6x'@p+@0( P p(@;xPPP% ` P@0p+  P   `.2  @$z P(C  % P2 ps k 0Yp@P4@PR@P9P@& P4`.P 9PP9pP`PPEx PA$zp,0,'0s %У!z  T  % ) 3 P`% ) 4 P # й  ди& @  40p0 PP$04 @P2 @#v#Pb P5xȠ0f.00 @vPA&P%Ш`Dx ``@E @@w@pp' `P@0( 0Y @4 @x3$ `*P @ 0 %p ' ``% @&p bppP`& иPTP `P`+ 5 `P9P#`4P"P P* @0 90F ``@P P*P$0xP @ PP} P p 2P PPp# P&P @ @ p `` @P 3 ```#0&  # )  # `  70/@@A@ `3  `*($  8`@@@3`PPPf"`*P# P9P&`P P@P Pt@0P0 0`?P` -rEx` PP`:0p0P p /` 9Op 1@ &  P%DpPPP`  P 0 PP PP@ $  `P P0   ; P# P P P*P P$P P  p`3rPp9z9z&yP%PK$v P9 pArP:)yE%x pP% pPp(`bpP$;JsP* P/ P:9P C"A   0%X0-@d]`0@r@?`01x@1?Cx?@J1r@j5? , ,  P |h1/ +b偹zFfg#@ ?k@p@gA#`0 j?q- P/ix9G04FDxxv`.p.c$v ep'z g . o0z a n"$r C0z Pc' cP0 0 d P !z г P`eP5z pp L20r -100x _C CSz=3z9/ʐ. P"P?@x P0r ` !O  Ex .2!|B0pb `7 E |P@k!|pJ4pb`j4pbl@pb B | 1Gi     :j  D /j  `e`J$z   rYr  @#zkP: * * p   OE$ 0ax % 0 0 p2Ps + PG!z  :  :!  P     `@$z2`11x1rP  *9%Fn+`  PJ' F  3`e`@$zYrJz*** `0R   `)+` *0  `@$zS0` `&*K%R 9+` PJ' K !   `1$z777x0M9Jz`*`*`*`M&I+` PJ' 0` M`e`$9g M?&*9@ ` hGY`0 Pp*0 *0 @u`e`E$z@ P;0 ;`*P0 pP!r`% Gy0`6$v5xC} @ 0 0 0 @ 6xp$NE | ` "`@ L 8 E{؀p0 @8@@ F '@ `&pC1C``9 6G5`P MD`P9P& 0&P C t `P `9 `7 `FP`5 ` `05 P`(F PC p 0@ L @cx@@ @$PCp!0PTP! #DD LT rƠC(Ef0 u 96E H5 D @ W0 y`E!`#@V @u@S$! 0p9 p !p 005 @5P p @@Ȁp 0@0 9pư0@W@& :$@ p 3  PP   p`@P8/ *$ڰJ |& PDP @0 @8@EP"@E `0`@5 D P ) H6xp!F OT ` 6P&Pj `p 'ɀp* p  p`PppP` @ *@ @ @ P X@`p+Ȱ! I HRď @u$F `;)EP!015 !@9!00P ! @!0@!@0"'p@=czl Szm!`/` =N"8#D @@/t@@@/w@.L?@@/z@@@/}@.T@@@/܀@@@/̓@.\A@@/@@@/@.dB@@/@@@/@.lC@@/@@@/{@.tD@@/@@@/@.|E@@/ƞ@.F@@/ߡ@@@/@.G@@/@@@/*@.H@@/;@@@/,@.I@@/@@@/@. J@@/@@@/@.(K@@/@@@/@.0L@@/@@@/@"8M@@@/c@@@/6@.HN@/ @@@/@.XO@@/@@@/@.`P@@/1@@d@!ޔ "HQ@ !5ބ @h@8"u x@q|8X=.0g "V@&/.@.W@/Q@.xY@/t @.0[@/@.\@/@.^@/@.X`@I@.b@//@.c@/f@.e@/!@.8g@/$@.h@/ (@.j@/B+@.`l@/y.@.n@/1@.o@/4@.q@/7@.@s@/;@.t@/ >@.v@/9A@.hx@/RD@. z@/kG@.{@/J@.}@/M@.H@/P@.@/T@.@/TW@.p@/Z@.(@/]@.@/`@.@/0d@.P@/Cg@.@/>j@.@/9m@.x@/4p@.0@//s@.@/*v@.@/%y@.X@/ |@.@/@.Ț@/@.@/@.8@/@.@/ي@.@/ʍ@.`@/@.@/@.Ц@/@.@/Ι@.@@/@.@U @.@@/@.h@/2@. @/K@.ز@/d@.@/e@.H@/V@.@/G@.@/8@.p@/)@.(@/@.@/ @.@/@.P@/@.@/@.@@/@.x@/T@.0@/'@.@/@.@/@.X@/@.@% .@2%R%@&$T !/U@#@"@@/x@#r#@ @/ @=23 @/ @#^@&@@/@#@@=@@@/'@#@@/J@#@!@/@V0 %@/@#6)@/"@Y-@/&&@#z@1@/])@#@5@/,@Ā@9@//@#@=@/3@= A@/6@/@&!E@/49@#QI@/M<@s@M@/f?@@%@Q@/B@U@/E@#ڀY@/H@@]@/K@-a@/O@#C@e@/8R@#eȯi@/oU@m@/X@#@q@/[@#u@/_@@y@/Kb@=}@/e@#:@@/}h@#_@@/xk@=@/sn@@/nq@#@@/it@#@@/dw@-@/_z@#4@@/Z}@#Vj@/K@z@/<@#@/-@@@/@@@/@- @/@#%(|@/@H@@/@i@@/@@@/@@@/-@#Ҁ@/F@@/_@"1@/x@.;@@/@#^@@/@#y3@/@@@/@@@/}@#@/n@ @/_@#.@@/P@.Q@@/A@#u@@/2@#@.@/@"@u A @/@ @/@2 9+@ @/~@3@@/Q@-W @/$@#y@/@@@$@@7L&"k$C2@G$ l8˄@@/@@/ @@/ @@/@@/=@@/`@@/@@/@@/ @@/0$@@/g'@@/*@@@@/ 1@@/74@@/P7@@/i:@@/=@@/@@@/C@@/F@@/I@@/ M@@/BP@@/yS@@/V@@/Y@@/]@@/U`@@/c@@/f@@/i@@/l@@/o@@/r@@/u@@/x@@/{@@/~@@/p@@/a@@/R@@/C@@/4@@/%@@/@@/@ W$/0@$/I@$/b@$/{@$/@$/@$/ƫ@$/Ϯ@$/@$/@$/@$/@$/@$/u@$/f@$/K@$/@$/@$/@$/@$/j@$/=@$/@$8%%  86 9 8`-8P@Z @#ELF3S 0("@(Z Z@8@t.shstrtab.'ymT_shndx.nv.info.text._ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1E!21P*DataType_t2EEEvNS0_18O 2nchw_params_tIT1_EEPKT_PT0_osharedreserved.0.relOrela[0..]_]A0F7C4E7C4[^ D9]_]=0v ;?8A;?8[0@9 ]_]Am;C>4E7C4[0D9]_]76__halfE 9B$;E(9B_H:A,a,c,aE g ,7,G4,I7,G4_XHA,a,c,aA^ Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a7Z? 9<;?9<Y4:5[][?n g7A4C7A4YB5[][; k;=8?;=8Y>5 [][?o7A4C7A4YB5[][(* JJrT*Q ,T&*Q_@+A$,a,c,aEz X, 7,G4,I7,G4_XHA,a,c,aAD Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a/c|A1>3A1>S2)UWU9^, _7;4=7;4S<)UWU5 e;789;78S8) UWU9:i7;4=7;4S<)UWU/B0y?1<3?1<Qw2%SUS7$ _794;794Qw:%SUS3 c;587;58Qw6% SUS7g794;794Qw:%SUS( HN*K,N*KY+5[][?v X7A4C7A4YB5[][;^ k;=8?;=8Y>5 [][?o7A4C7A4YB5[][)F@)/rF+B-E+BQw,%SUS76 Y 794;794Qw:%SUS3 c;587;58Qw6% SUS7g794;794Qw:%SUS)j@*s?+<-?+<KS,MOM1V Y7345734KS4MOM-8 ];/81;/8KS0 MOM1a7345734KS4MOM%25GBooleanTransposeEgfe?hPhj/l,debug_framei anv.callgrapprototyponstant0؇`I!wFFFr Fr FvFvFl -7<Nzl NNv Nv NzNzNl2BtlBBps Bp BtBtB]<Pw$Nz]N Nv Nv NzNzNd;,~6nxd66jU 6j 6n6n6d- ~2lfd22h3 2h 2l2l2]^wBt|]BBpW Bp BtBtB^x2ll^ 22h? 2h 2l2l2^ x&fR^&&b &b &f&f&JS-+ .shstrtab.'yme_shndxB\[G]16nhwcToNchwKernelI;]E37OinfoT\]>creservedSmem.offset0 .0__nv_RSMEM_0_0_alias0`-BM`-LV83[^]_ad* <6x70A4D7C4E7C3VB0\^]_]8e? Zj8@;?8A;?7VB0\^]_]< 30B4D7C4E7C3VB0\^]_]2 S6447B:E9B;E9AZ^8`baca@ 38F4H7G4I7G3Z^8`baca<78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca2em"~<:?9<;?9;T4,Z\[][: 3,@4B7A4C7A3T4,Z\[][6f7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][#7 Q:2)Q+T*Q,T*PZ^8`baca@ 38F4H7G4I7G3Z^8`baca<78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca*v>,/>2A1>3A1=}N  T}V}U}W}U}4L 3 :4}<7};4}=7};3}N  T}V}U}W}U}07 68}8;}78}9;}77}N  T}V}U}W}U}4 3 :4}<7};4}=7};3}N  T}V}U}W}U}*T;0<y2?w1<u3?s1;qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq.748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq#roK+N*K,N*JT4,Z\[][:F 3,@4B7A4C7A3T4,Z\[][6j7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][$uo5:$*B,E+B-Ey+AqLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq.2748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq$,Q;*<e,?_+<Y-?S+;MFLMNMMMOMMM, 324M47M34M57M33MFLMNMMMOMMM( 7.8M0;M/8M1;M/7MFLMNMMMOMMM,l 324M47M34M57M33MFLMNMMMOMM25nhwc2nchwBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototype,}onstant0.o 16[-lc0I 3JFr7FF Fvr Fl(:A@Nz NNv lN NzNzNl#;2@BtlBBps Bp BtBtB]@aI1$Nz]N Nv Nv NzNzNd=,86nxd66jU 6j 6n6n6d- Pn472lfd22h3 2h 2l2l2]pJ 1Bt|]BBpW Bp BtBtB^ w2ll^ 22h? 2h 2l2l2^ x&fR^&&b &b &f&f&J-+u2"( f T! C s   D@'@x  H2& 0  H0%@3 0 l  KH2* 0  H 0  HH :0 s RHh 0  H 0  !H@ ]"0 # %H "&0 c' N)H@ )0 (+ -H@ -0 . 0Hh q10 2 4HH 650 w6 b8Hh 80 <: 'K0 sL LNH` N0 P QHH R0 S UH` !V0 VW /YHX Y0 [ \H ]0 ^ `H Ra0 b ~dH  e0 Xf ChH h0 j lHh l0 m* oHH fp0 qH sHh +t0 luH WwH w0 yH zH@ a{0 |H Q~H ~0 H ΁H@ [0 H KH@ ؅0 H ȈHh U0 ~H EHH Ҍ0  H Hh O0 x H ?H ʓ0  H H ;0 ` H !HH 0 ћ H H 0 BH H 0 H tH` 0 $H HH p0 H VH` 0 H ǮH@ Z0 H hH 0 0H HH 0 ѷH H@ =0 rH KH ޽0 H Hh 0 H HH 0 UH .Hh 0 H H Z0 H @H 0 H HH <0 aH "H@ 0 H H@ 0 CH Hh 0  H uHH 0 %!H Hh q0 "H WH 0 #H H"4 )0 B$H HX v0 %H >H1P0 &H Hp 0 )'H Hp ]0 v(H %HH 0 )H rH 0}*H @N ,OfHH"# 0+x L,- . 5/0 {1 23 h 4  56 ] 7  89 R :; < ;=> }? @A `B CD OEF G DHI J 9KL oM NO @PQ vR ST CUV uW  XY @!Z[ z"\ #]^ ]$_` %a @&bc z'd (ef E)gh w*i +jk <,lm b-no .p /qr A0sCs @| (( $,0 R8<6 \h% ~ hHh0 h@h0 \ h/h/h4h/4 h/)g80phh0h8h0)@g8@1hT@1g @Exh@1h@E)Hg@1h@1)g@Fh0hh0*Pgh0hh@0 Dth0hPh0h`h0XD܌ )x1(d1hx 1hE*` gEh1)0 gh)h 1) g@1hh Eh@E)8g 1h@E)g@1ph@1h@1)@g  1h 1*g Exh Dh D*Hg 1h 1*g 1h@Dh80*Pg@Eh@0* gL )h0hh0*Xg1h81*(g@1h@1h@D*`g@Eh@1*0g@1hp@1*g# ph0hh#h H)h0)8g$@0hp0)g0 ,h0ph 1h0)@gl$&4ph1/V%3" 6' *'0( ) *+,-./0j20Z3J4:5*67 88:0#||yxyvvssppmxmjjggddaxa^^[[XXUxURRO")XLLIxIFFCC@@=x=::774C1x1..++(k`%xS""Hx  3 x# k"* 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , @7# CUP!9H!P0%' ="p/qX /X69#U&@0P#%H " $VEE _&)H$@P@ `$H"@@!H@@@!H@@ @H@@@!H@@ $0PH@`# P@@O#PH`!@#@ _%0(H`  @@ _#`H"P @  H@@ H@ H@@ H@ hE@@@!H@@ @H@@@!H@@  H  @@  H  @   H  @@ H @ @H$@x@@!H"!x @ O% H"p@ O$@H/p"0@ @H@@ @H@@ @H@@ @H@@ `_$P > -@01@23!>(P`"> H`./`01#>0#_%$HPO# %@(#/0#!&HpO! '> ^."4&(lL SL1L&'*08'L\'L3(N|,'d4H'D(*04(tX( |(6H(<(70(l )0)+HT)4x)d:0)d)&)*,,*I,xP*\t*L>0**$*d?H+T(+,0L+p++&+L1&,|$,1-l,D,70,t, ,FH1<D-& h-l--6x-4-50.d@.&d..,.Lx.\.LN0/xa/rR(x]VxP`$x/A 0P$x O |^.pb G {s"r {CSyi<b0# s 0s-3$6xNas [H/q$r Q$r  O `p'r K# yE4@* 07$r`  `q{ af r @p@P0$ s6 @ r`@pR @ r1p`@$~ ;@@rRb<0@"b0Ex %p$|  `/6x  0&  3P  0 10d$~  x  0#pb5| G xpB9G AHx  pEy A1$rP0@x 1 1x@0PP x P"p`@xA#l>#y>4@"}U3PT$x !4G$r Q{ U`b$x$p{0ar@?p1|p@`E r/p" 62 1 0@ 1@ @ @0p p# @1$r cO6x H6x1$x p ppd !RS6xsqG 1$Ay.9GhP T6x ?Rx_3p 0 Fp S6x @1x00U6xP3`@tx E$r`% z$r%/P Pʀ7 3G@5" 0`06{ l7PPPp(:16 s@ O03 P'SP0!Pu ' T`P50W,bC%@$ `5pZpEc"0`T0`5@&!%0 !۰@$x @W/ b`%p !x01$x q E c@ $ pBp`U r " 03`6P"03!p !`P f&B pSp0GS" 0o 'ː" `cp5cbP 4#$P0p&P"`ʐ@$# @3!p8? *#0$ t/@Ȱ@ @6`H P`0 c 0&pPP3  'O*p!3@p p!3P p#@` @b p` *O*"c ` SC  &  $@P@` cb0&T/<P 3$)0`  #0`% H6x "O P x "#0  4&@ L!䁀 Gp   # ` $ `  `l0  P'04` pPP#` ?YC ` / @F 6x  ` 0U rP ch*3` & #Ҁ !   /@T  ` 7 d W@ T $/p $ &0 #   %  D `cE 0#  ` "`  DO`  03!& P ' @!#4 '*4 @1X` `` 0  p    P  A%$ D0* &  E r@ p2p\ P p ' p p '` Tb.0 @40 C ` X  0 o3/  @0O P@  "pƀ   % @G06 NSr@cr00|@0@|A 5ys WEGy\P Drr0%x  a%x     P'y(% b0p01s0Ds`! 0 DA%TC{&%px?̏6|BA@@M@A{ a"x  (!O@ 1$x pT | ``'{@C 0~;0|OiG P 9HxP`1x ```_1`%P %   4!p`x  U9pr x8 u/{bP%  $!/  !r 0 @ R  1$G P0y@$ `r | @p@$t xB "$Ur P `>r $1 @y0@  D6x J6x%  6G) <@ xpSM @0r 6r O6 r  @p `@ 8r 8$xAx  0r P @ 6$x@!` %  5xP4 PΠ 4p0 , p /@ hO 6x & p  &@@$G)>0R  &t*@4@00p0$?7 4 -0WG9D Q I>PPp&t``8@3M"C/y/"~@@@@"%@ P#"Pkp -#r PTr $ LX"$x" a$x  `4KM ` P6$xu%x   &t0(  Ƞ% 0u(y " ^@C 0"> u$xcO | x ȏp&xx |@H |6%x  (  x?` " ?p5  0Qy`7 B>r@$1%xp f>r P04 P'`1%x@P$Ty $ 6Gy"E/(+(L( (5((( ((`p$((p (.@& ((( P( P(ooP(P($ (@(PO6p( ( B*(E(ff'f -0($5$!P6L`%(  W>@((#I>&'`(6`)`4T #WG) '& ''' )'P( ) %>Gp'P'P'0(P'P' p'P'P'@,FG<P'CP&P'2P'P'P' 0'P'& h | `& &H |0JP9&@&p'& && &`'-'1#`Or8O#yP4-"`O O`M@N8 Nb2=286x MA$r0M 8)5|`4//MP LM7MMPKM-Ƞ9@8M̠9 8B43M* 3 M8I0+M/M< M ' 8M ' P3M M4?M@MM=5r M"2p9O6x M:&IK%!&P}*1t0xt0xJJ  pKPV0{*u 4 Hsr@'r`I@9yPL6{ L!f0P7$rpW`x1 r pvH`SRpS$}&~LК` E$xL0 ЋTLDrPP0`x!| 0T$r @J0)~86x`Mx@w `My`M p 0Y K`M %";E$r N!x x6{0*b&{  ~@ / /%``M  `M`M*`M`M% LP( 1$x pK `MT* `M`T@/ `M % `M( @M9x66x `ME$r PM* M% M`M% 0`MU% PP P``M % @X!r' 5 DVp7F@3 p 8p`O p! 0%P$Y QPP& -1 |P5 %`p$p9 @0 `Q& *$p"  5 ````& `!bP % PdT%$ҁ1$x0   D␗`P$ c4G$ f(Б ЎC ``P% p# + . $ c`$`6 "p( 0 P3@@f".$x@& &(55 0 %=00. 0 00p&pfh!b00 @P%Ќ$ Ќ 0%P0`%p p!b.&P !O`%Dp$pp  P!x0!O  5 pЕ& _ p0p: ` %0`'bp@#$P&P4`@ bP38  3 $0:$x@`" 4  p`( 0zH J** )/     ` t 0a3`@pbB@P& @     ` 0@@ c(cb⠟P/@#@P  5`f`& ?    d  Џ` @4 0d P  @  50@3`&x !/ cCp` D`p 66x 0   pS/P` H  0 0  Ȁ P9 p0 p Wp&%` @` P Ч*/  , P 0 К%D0& 0p P pP  @ !P3  p B       0#|0%% 04:r @Ey% p ' @ 0 @ 05s `$ $ 0B#@_ r&0`  O | r r% rX PP n#0  `r+`` k!xpp``"$!@0x# !|f1pbpC` 1O bpox$P6&" ( P36x@ `@$ lf/$ooD of$ a#C=4pp  p  p0n!l1$x @nR@p;G)Po#M @0r tYr    p H $xpup00p@i@o'pfx @X$x 0"r p % SO| лP% @ %1pb6f>u r@re/$aO PPrkrPT#P P P @ H$E sb&>pxv p df@P0s0f/#% 0p)P  R$N$0$ sC$ ` @x@0@ h0& 0F$PsO)PDR#t& PPP 1%  +>  `0pa"x000 `+`%PP% @P "0*䏰p6`Q  `0\` PPp3rUr p !x ` # pPvfGtE%x &y/P @` t 3 0w^ @Лot` a#|s &tx`p p 0  `EyPu!(` &yp  *Ot ;|!  !* p( v bp@0&x0p8p 0v*@F*.P*j7P(*U'$(**&**@**p*)p& **W/$*@*Zȏ#p*'> * * P*@*p&)0*0*H+0*0*[& *( *(0`" * ***,>))')Ȁ"'`W&)5) pP*ud |K`%0G#)) ?))`p&)4Ax`($)!B%))($) )))'%@)@.@ @)@) @) @)G *N0)0p(@)P)@) ( H$@)KO @)@) 0( 0)9)0)0(Z(-P( ((`(    5 5yvy@ Ə@())(6>r.% '`('`)*"(+3|0*00 `*@)P+N;(p`( p( (1SMS2< 0R R SP QpRb' @/A$rM : Q/ Q P 7G  70@  Q 7 Q  Q7  0Q Q@Qp.0Q?p=0QJI0Qp0(70Q @10Q@3000QC % 0Q"' 60Q 0QQ0QP p% 0Q Q0 pQ 0Q  0Q,( 0Ov&I&p{ЄСЌ rx* RMON0Ns"r 0K O Сbs{@N* ,Se!{# {5r 'r }K%|@* 0RG$r` M P6{ Of  U u6 [P!rp#p`O0rP P8xPPE$rO!|`"/V & D @ 04 @xPВ#pb5| 0^9G Q9Hx 0` ``% N` `? `)Z P `# `+ ZP P*X"/ P 4 !PR ppS6x `%P`8x66x@``P p %P Pʀ/ P   @ (@4Ƞ] 3P%OP]@`'SP@]3aE '1@`P50*,yb3%@Dr `5s +b@e`p$0I`5@ %0 ۰@$x P V*0E$x @W5x 0E eE c@ 0`R r@p@6P"`&^ B% p@p' p1 30o "$  ⇠p5cb4#%_p&P `ʐ@$ X#!%? 00^#0 Pc$@` P000@D 6pP$  'O"pbY! p! p#`  @D `*O*"D ` @C@0 $@P` b0/<h 6 3$)3]` #0`У @ J  J * * ) /  #pBp&`&x P`DP3pg/     `ch`#SKҀ !Р3  `e/@T   d @ g p p $ &0 # 9x` EP0 ` " 3DO`Н# 03!& P   P/p@pJ r*& ` @ @&  p   P  %$ D0&    P 0 0p 'D.0 @408  0 o3 !p@0  pƀ  % G00# |NЛSr@03|`je% Pp n@r0u%x k% к   0g'y`'0p0Ds`$ 0  B" p  (O `    w PP@@j6x `*@j%@j0j %pw$!p0С j$ u/{b`%  `!/ !r @   1$G 0y p p@Ur P Pp  C$x 0x0o@p-D6xP  x 6G)w@ xpSMlm 2r 6r r  p `@8r 8$xAx 0r P С6$x@p``t  ` `%P% P %0# ``% /$@ hO 6x & p  & >0% Pxr&tp:x@4@0PE$t4 `uDy-0WG9% x/"Q I>PPp&t0` @xw!x/.,0v/"~)x @w%@ P#0 -FrTr 3 @"$x" % zx&x ` P6$xu%x   &t0(  % 0x% % pw& vОp pv  x1 @p&x (@H |6%x  (  x?` " KpE$ R$ 0Qy wG$ B>r@$E%x f>r PDr '`1%x@0uPy $ 6Gy"v m(+(L( *(% ( ((`@?((p (@& ((P%(P( P(ooP(P($ (@(`&O0(G$@("(E( f'S0"`=%$ %`%(R @W>@((#P#`(6`)p'P'P'0(P'P' P'P'`&<P'CP&P'2P'P'P' 0'P'` `& &00 9&@&p'& && &P'-'1 JOf8O y(N p @NNb;=266x =0M `7*5|`4MM LM79Jp  MPKM-Ƞ9@8+ 0M * 3 Mp0pM/M< p ' 8M ' P3[x M4LM@MM=5r M"2p9O6x M:&IK%,PKPJ9*~{ pI,x  V0{*u 4 Har |@T'r }@PL6{ L!f0@L0JP@5r0 pvH{RpS$}PК`x"r E$xL `2`3@E$rP0`x!| 0T$r @J`Mx@w `My`M p 0Y K`M% Y% YJ lY @M НA@+`M)  p*`M % L `MC `M % `M( @M  PM* M% M`M% 0`MU  `M  % @X`N0 B r ` 5 4Vp0@PF@3 p0p`O p! 0% $Y a\P -1 |P5 %`$p9 @0 `Q& +$Px  5 ````& `!bP % &dR%P3(O1$x0    QD␗P$ c4R0@ `f( Ў`C ``P% p# +ڰ. $ c`S$`6 "p( 0 P3@@f".$x@ &(55 0 %=00. 0 00p&pfh!b0 @pEЌ$ Ќ 0%Pp p!b.&P!O`%Dp$p` pX!x0 !O  5 pЕ& _ P4pp:! ` %0`'bp #$P&P4`@ bP38  3 % @`" 4  p`( H J** )/P     0 t 0a3`@pbB@P& @     ` 0@%`c(cb⠟P/@#@P  5`f`& ?    d  Џ#@4 \P  @  D@3`&x !/ cCp` 5Pp 66x 0 0 pS/P` H  0 0  Ȁ *# pp^) p0 p Wp0&$` 0@` P Ч*/  , P 0 К%D0& 0p P pP@4  !P3  p B  0   i 0#|0  %% r:r @Ey% h ' @ 0 @ 05s `$ $ 0B#@_ r&0`  O | r  ; r% rX P n#0  ``+`` k!xp ```"$!@<$r   !|f1pbpC` 1O bPox$P6О6"e( P36x@ `A0@ A/$oO  of$ a#pTp  R$ # r3>i@ @nR@p6G)@nr#M 0r tYr    p H $xpup00p@i@o'pfx @X$x 0"r p % SO| P% @ %1pb6f>*"u @rA/0aO P0rkrPT#P P P @ H$E sb&>p଀xv p df@P00f/#% 0p)P  R$N$0$ sC$ ` @x@0@ h0& 0F$O8PDR#t& PPP 1%  D`@pa"x000 `+`%P]`@y/ r"0*䏰O0`x `0\` PPp3rUr p !x ` # pPvfGtE%x &y/P @` t 3 0w%+$ЛP0rt` a#|s &tx@p p`0  5yPu!(` &yp  0/P@u+!  1* p( v bP!`0P&x0p8p 0v*'0*[/$**Zȏ#p*'> * * P*@*&)0*0*Z0*0*0*[& *( *(p *  ***,>))')Ȁ"')W&)5) pP*ud |K`%0J#)$)0&0&* `%$)1x`($)!PE%))($) )))'%@)@)@) @) @)V 05*N0)0p(@)@) ( H0@)KO @)@) @0( 0)9)0)0(Z(-P((!(9(    5 5yvy@ Ə@(`'())(6>r% '`('`)*"(P'*00 `*@)@P+N*(p`( p( (1SMS2< 0R R SP QpRb' @/A$rM : Q/ QQ 77G YHx7N07 Q7 Q7R5x7ڠ7Dp50 Q7  0Q Q@Q &{PN 66$rp0 Cp= @p0C @J!JI0Qp0Q(70Q* 7( A000QC 6P7E$x 0Q"' 60Q 0QQ0QP1 E6x 090Q Q0Q pQP 0Q  0Q,( 0Ov&I{ N0pCPU &``MoN0`"r Q O Сbs{@N* ,Se!{# {5r 'r }K%|@ 0|7$r` M P6{ Of  O u6 pP!rp#p`O0rP P8xPPE$rO!|``"/V F$ " @T@ 04 @@ xP$ @OX5| `M` `PP % N` P/ `)Z P !O@Y` `+ PZP P/`<P 4 ! PR ppS6x `%P``0``P p %P P/ P   l@@ (@4Ƞ] 3P%O e`'SPT#E '1`P50*,yb3%@Dr `5s +b@e`p$0I`5@ %0 ۰@$x PU*0E$x @W!x `UE eE c@ 0%r r@p@`FP "`&^ B% p@p"  30o "$  ⇠p5cb4#%Јp&P `ʐX$ X#!%? 0^#0 Pc$@` P000 D 6pP$  'OWp! p! p#` @D `*O*"D ` @C@0 $@P` b0/<h 6 3$)3]` `\#0`У @ J  J * * ) /  #pBp&`&x PDP3p/     `ch`#SKҀ !Р3  `e/@T   d @ g p p $ &0 # 9x` EP0 ` " 3DO`Н# 0` #!& P   P/p@pJ r*& ` @ @&  p   P  %$ D0&    P 0 0p D.0 @408  0 o3 !p@0  pƀ  % G00# |NЛSr@03|`je% %r0u%x k% к   0g'y`'0p0Ds`$ 0  B" p @ (O `  n4  A@ (0j@@j6x zx@j%@j0j0j % Pj4!ppС j$ k%0j%  $%  !r ! k@   16G $fyPf"$t c |Ш@Er`!x`m D6x@ l6G)rw@ x`SMlm p`rkp j3r @$x p  1P0u"r `Ax 0r P3 00,`Pt VO| lpm``s %P% @ %0% /$0 h 6xp &p pp p &p #G)`p uy @x$ +'6$t@ P @u:yp WG9w /! I``tt tPK4PP ?$w`P `tN$x T%x p"'? 0pxFr`Tr !/@x" yw& @w qR%x0q (p `$ Ey%w %pvfd $x0İxp v 0h | 0H x 6%x` 0 6pPPwF |P/{#P@#P0"y @% @4P0( 0p xPP6Gyp`v }(+ (0@((( ( *(*(((" ''Q/x'0P00( (d!%  ((1x((%b( ?( 1$! @'u !&b- @'f$ 0 D"/!R $ '@` @E'ʐ@@7ro''!' 'p'`'( `-  0 `' `'`'' '@EP #pE0+5| 0'p'% '& '/PE6x `'p@p'0| PP' ' `'p'@ E `'"`;ffi$E f@S0b % +0#&+ %&#! <" |0" 0:&P@"$&D @0?W0'G ( %% %i"$x& &&`'$x0, %( (&"p P4I0/ &0&L00$&% @ &E%x @ &y-01% `% %&* &% &b& &= 1 && & &' V$x @S/ | Z@)%p, &%% &&1H00@ r4( 1*`  K!x`  O8N y0M KL010Mb,@<66x P<: L 50)5|2 LM PK2  + 0  @5  &r`69PIp L // 4 ,636+ *=  0 2 L@ Lp+@p L/ L<& P E$x  L"' p [x L  K L@ LL <5r  L"%P L L&I J$,MJHJ9J*JJ{J GJJ  PL0`{*PR  TP"r0T@@'rGOJ6{ J!f0JHP@5r0T%OPG0Q$z !rPЗ`N)r@QE$x`KT `2`PK5rP0`J3| O0T$r HKP$x0  KK#PO H1x}  JHx VVPKuZx KK QK& K A@+K)  p*K % J KpF K 4 !K( K  P L* LVK% 0K@S  K  % VV' 5 DT0NF@P3 p5Ж`Opp! % ~P Y -T  O5 X%`$p9 @0 O& +$Px  5 ````& `!bP % &d Q%P3(O1$x0  ] T␔`P$ c4ҀX `f( Ћ`C ``P% p# +ڰ. $ c`pR$``Y6 "p( 0 P%@ @f".$x@ &(55 00Z 387b0. 0 00p&pfh!b0 @pEЉ$ Љ 0%Pp p!b.&P!O3p`%Dp$p`  !x0 !O  5 pВ&  P4pz$4  00 PZ%0`'bp #$P&P4`@ bP3H  3 % @`" 4  p`$R@ !H J** )/`Y    0 0t c3`@bB@P& @     `  @%`c(cb⠜@#@P  d5`f`&  a  d  b#@4 [P  @  D@3`@&x !/ cCp` 5Pp  0   p/P` H  0 0  Ȁ *# p\) p0 p Wp0&$` 0@` P */ Ф, P 0 З%D0& 0p P pP@4  !P3  p B  @   i#r 0#|f  %% `g4:r* PnUyf  ' @ 0' @ `i05s `C   $ 0B#@_@e %&0k`  O | pphp p@p$ P  `@e+`@e !xpp ppА4!pP6$r 0lm @ % p!|d1pbpg1P@oXPRla$0q`o  .@jDp( P36x `p pV$mO  laȏ#`&0W Tp pp@pqh WP hppppr eYrp  ` ppH $xP&PC$x 04p'PAx g$x 1r pE6x eO|@%  %`ppڰ f>*u p' lc n a#p 6$T E p 9$ri  bo% b5pE @t% 0@vqƐPs!E R($0t 05 q6 fpx |L*"P E Pop500D /#`T% T 0$  p &qu"%*Oj%0"1 @rp#0'$050 p3r pm0 E$0%prn0 ! rE%x&yP/&t )x `- 0q00 q1 |0 pqCO#p1p @rP*&` pnsЗp8y  `rJ |r`r  + @r7y *  sp@s  @+$p)y))) )&D) )0`B)*")x Jx))6)&(()70&1@) p$K)P%)3)@ )(())@ ))!(0F  ((.`( (#((  E(!(Q/r .((6@Z$x(  (6 ((H6 @uN#`3 P((&И*&`'# &((0&'!@ %D#6 @;`'6`'@;# b3 ()I'&#&)`0(p' p'4 p'(' &("(P 'vO$( ub%'p5 ! (pH"#'& `6p$p&(( E6x'' 5*/'@9'00' @)'0'D4"p>!r YG0'%0'p'!p'N*%P& &P (0&0&P' 'P'p0'p & &P( 0'p '  'p 'Ppy3&'PMP/<P9y 0O#y4'PM NpOb`0@U$r 6=0/ N/ NN 7G N K  N4Ф4 NA  N4, 0N N@N ʠPK p84//@p: =@.@ =G,GI0N%p80N(40N* 4( >P 0 * 0p<9Gh .G6x 0 % 0N"' 40N 0NN0NP1 E6x ;0N N0N pNP 0N  0Nw1'u0LE%F! KP{pCPP (`%]H] Cr HLHG LCr rx2sR@K* @ % 7 {#yH%w0 0y7$r` J 06{ Lf  Q w@|!r#p`L@"rS<00RH$xPME$r0L!|``Л86x F$ D @ X04 @ Dx MЌM% @YM  M/ @T@#}(K$x MYM M*MM"/ M '( MJx%MZ@`M " P M   Pl@%X qЕP(@4WЀ 3P%O pW`'SPQ#[P` 1`P50*,yb3%@0ZDr `5s b%v"09`5@ %0 ۰T$x Z*0E$x @T!x `RE eE c@ 0%r r@p3`6P"\& B% p@p"  30o "$  ⇠p5cb]4#%p 6P `ʐU$ U#!%? 0*#0 0$@B`H P`\000 D 6pP$  'OpV! p! p#` @D `*O*"D ` @C@0 $@P` 0#0/<h 6 3$)3Z` `Y#0`Н @ J  J * * ) /   #pBp&`@h P@ DaP3p/    `\`ch`##P !# #  U@T  d @ c P4gp p $ &0 # ` EP0h ` " 3DO`З# 03!& P   P/p@pJ r*& ` @ @ `>  P  %$ D0&   _  P 0 0p D.0 @408  0 03 !p@0  pƀ  % G00 Sr@0:|`@pb% % j lr0w%x   Л  0d'y`'bp0Ds`$ $ Bl ` & sm s% s ss (0g@@g6x :x@g%@g0gr %sg4!p`r0m qu/{0b0g r@n!/ f !r 0 p ` 0  $G 6yPs`$0r0 APk@0l6$txUr P `>r $# s l0@  E6xP*% P ro6G)@ xpTM]i0rr g6r `or  p `@8r 8$xAx  0r P @6$x@0p`P  ijP% %sEy `Pi%`s0/@ hO 6x & p  & >0% s &t0r@4@@D @ 0o$-0WG9& tQ I>PP&t`@Px4pP!x!@x1y.,0r-"~1$x@@@5@ P# %-1rp"rv3 @#$xР`Pt/Л u%x Ȁ &t0(   0u(y % s% "O`0rCO 00r0 ȏpp u |0 6%x w8|  x?`  $w5  0@pt7 ">f>r P04 o`1%x@0r ' 0 v6Gy"s tm(+(L( +%(eO%x ( ((`p$(((x@& 0&((P%(P( P(ooP(P($ (@(fO0(G$@( (2 f '& W00($ &$5`%(W>@((#">`P#'`(6`)< #WG) ') ''' )&P( ) %>p'P'P'0(P'P' P'P'&<P'0P&P'2P'P'P' 0'P'P'x | `& &H |0'P9&@&p'& && &P'-'1tOm8O6yN `M@NNb;= =0M `7)5|`4MM L@4 @4 % z x & 6  6$r79Jp( MPKp?@@/4 -Ƞ9@8p+ 0>% 43Ф!O2 3 MpE0pM/M< 3E$x pB&p @B6x M M4LM 0MM=5r M"2p9O6x M:&IK% PPJ0@rF( ~0|UN~t0xpI,x  V0{*uHtO$r Har |@T'r } )yPL6{ L!f0@L`@`x1 rW pvH{RpS0}PК`x"r E$xLR$ Ћ0w23@E$rP0`x!|0T$r @J`MA$x@w `ML`MpX` HHx 0Y& L@Jx `M`M /`M+ P{ A@+`M)  ЅPJ6x`M % L `M> `M 4 !`M`M @M  Pzx M% M`M% 0`MU  `M  % @X`N!r' 5 4Vp0@PF@3 p0p`O p! 0% $Y a\P -T  Q5 %`p$p9 @0 `Q& +$Px  5 ````& ` bpP % PdR%P3(O1$x0@1$x    QD␗`P$ c40@ `f( Ў`C ``P% p# +ڰ. $ c`S$`6 "p( 0 P3@@f".$x@ &(55 0 38=00. 0 00p&pfh!b0 @pEЌ$ Ќ 0%Pp p!b.&P!O`%Dp$p pX!x0@VO  5 pЕ& _ P4pp:! ` /V%p`'bp #$P&P4`@ bP38  3 % @`" 4  p`( H J** )/Z     t 0a3`@pbB@P& @      `d0@%`c(cb⠟@@P  5`f`& ?    d  Џ#@4 \P  @  D@3`&x !/ cCp` 5Pp 66x 0 0 pS/P` H  0 0  Ȁ *P9 p0 p Wp0&$` 0@` P Ч*/ Ч, P 0 К%D0& 0p P pP  !P3  p B  0   i 0#|0 0@| %% r:r @Ey% p ' @ 0' @ 05s `$ $ 0B#@_ r @!(P 0`  1 |`@pb @P'  ; r% rX P n`1x `f+`f k!xpf``"$!@<$r    !|f@pb C` 1O bpox$P6C"s3p ( P36x@ `@$  if/0oO  of$ a#pTp  ր # r!>lo1$x @nR@p6G)@nr#M `op0r @gYr    p H $xpup00p@i@o'p`&@X$x 0"r p % SO| лP% @ %1pb6f>*"u rWd0@ru/$aO P0r`6xrPT#PD|P  @ H$E sQ&>rxv pPk df@@00f/#% 5|)P  R$N$0$ sC$ ` @x@0@ h0& 06O)PDR#t& PPP 1%  D`@pa"x000 `0`%P}r`@y/ r"0*䏰vO$`Q  `0\` PPp3rUr p !x ` # pPvfGtE%x &y/P @` t 3 0w%*$Л xot` Pa#|s &tx`p p90  5yPuu(y` &yp  BO0`0uo@u+!  1* p( v b+@0P rp8"  0v*@F*.P*j7P(!*J$$(**&** *p*) **W/0*WO *Zȏ#p*'> * * P*@*&)0*0*Z+0*0*[& *( * * *  ***,>))')Ȁ"'`P)5) pP*ud |K)0G#)):))`p&)4Ax`($)!PE%))($) )))'%@)&@)@) @) @)G *N0)0p(@)@) ( H$@)KO @)@) 0( 0)9)0)0 p%(J(-P(((@-    5 5yvy@ Ə@())(>% '`(`)"(/'#0*00 `*@)@P+N;(p`( p( (1SMS2p9G <S9y 0R R SP QpRb% QȰ2' @/A$rM : Q/ QQ P 7G Q7N0@  Q77 Q  Q7 0Q Q@Qp.6{PN 66$rp//Cp= @p0C @J!JI0Qp!?70Q @1( A "0?0QC 6P7E$x 0Q"' 60Q 0QQ0QP1 E6x 0Q Q0 pQP 0Q  0Q,( 0Ov&IY N0pC`{ p{ЄСЌ rx* M K OpUO Cr !! O2r Сas+@N* ,Se!Р O 'r }K%|* 0RG$r` M@NF{ Of  U u6 [P!rpV0rP P8xPPE$rO!|`"/86x F$ D @ 04 @@ xPВ#pb5| `M`' ``% N` P/ `)Z P `#` `+ PZP P*X@9GhPS O6x P 4 !P` ( PJx%P``@``P p %P PP/ P   Sl@ (@4Ƞ] 03P%OP]`'SPT#aE '1`P50*,yb3%@Dr `5s +b@e`p$0I`5@ %0 ۰@$x P*0E$x @W!x `UE eE c@ 0%r r0p@6P"_`&^ B% p@p"  30o "$  ⇠p5cbЖD#%Јp&P `ʐX$ X#!%? 00^#0 Pc$` P000 D 6pX$  'OWp! p! p#`  @D `*O*"D ` @C@0 $@P` b0/<h 6 3$)3]` `\#0`У @ J  J * * ) /  #pBp&`&x PDP3pg/    0`ch`#SP !Р3  `e/@T   d @ g P4p p $ &0 # 9x` EP0 ` " 3DO`Н# 0#!& P   P/p@pJ r*& ` @ @&  p   P  %$ D0&  b  P0 0p D.0 @408  0 03 !p@0  pƀ  % G00# |NЛSr@03|`je% %@r0u%x k  С  0g'y`'0p0Ds`$ 0  B"!@ @O `pf 4%  ww (0j@@j6x :x@j%@j0j % "$!ppw0С j$ u/{b0j r r!/ !r k`   1$G 0yop  p@Ur P Pp  C$x 0x0o@p-D6xP  x 6G)w@ xpSMlm 2r j6r r  p `@8r 8$xAx  0r P С6$x@p``t  lmP% P %0# `t% /$@ hO 6x & p  &0)>0% Pxr&tv&rz@4@ڰ%t@ `uDy-0WG9% x/"Q I>PP&t0` @x4pP!x!x /.,0v-"~I$xx @@5@ P#0@ -FrTr P3 @"$x" % zx&x ` P6$xu%x   &t0(  % 0x% % pw& v p pv  p 0wPȏ x~p{&r (@H |6%x  (  x?`  $ww5 R$ 0Qy wG$ ">E%x f>r PDr r`1%x@0uPy $ (+(L( *(eO%x ( ((`P((p (@& ((P%(P(P(yoP(P($ (@(POp( ( @2(E( f'S0@%*$5`%(R @W>@((#P#`(6`)p'P'P'0(P'P' P'P'`&<P'CP&P'2P'P'P' `P'MP3  `& &00''P9&@&p'& && & '1 JOf8O6yN `M@NNb;= =0M `7P-5|`4MM L@4 @4 % z x 0ڠ,l  6  ,&r7MMPKM-Ƞ9@8p+ $ pM * 3 MpE0pM/M<$ ` 3E$x M"' P3M M4LM@MM=5r M"2p9O6x M:&IK%,PKPJ9*N0t0xt,x  V0{*u 4 Har |@T'r }@QL%&{ L!f0@L0JP@5r0 pvH`SRpS$}PК`x"r E$xLR$ `3JE$rP0K!| 0T$r @J86x`Mx@w `ML`M p|) HHx 0Y`& OL@Jx `M`M /`M+  A@+`M)  *`M % L `MC `M 4 !`M&p H6x @M Zx M% M`M% 0`MU  `M  Q% @X`N0W 5 4Vp0@PF@3 p0p`O p! 0% $Y a\P -1 |P5 %`$p9 @0 `Q& +$PR R5 ````& `!bP % &dT%P3(O1$x0@$   QD␗`P$ c4R0@ `f( Ў`C ``P% p# +ڰ. $ c`S$`6 "p( 0 P3@@f".$x@ &(55 0 38=00. 0 00p&pfh!b0 @pEЌ$ Ќ 0%Pp p!b.&Pp!O`%Dp$p` pX!x0@VO  5 pЕ& _ P4pp:! ` %0`'bp #$P&P4`@ bP38  3 % @`" 4  p`( H J** )/Z    0 t 0a3`@pbB@P& @     ` 0@%`c(cb⠟P/@@P  5`f`& ?    d  Џ#@4 \P  @  D@3`&x !/ cCp Pp 66x 0 0 p` S/P` H  0 0  Ȁ *# pp^) p0 p Wp&$` 0@` P Ч*/ Ч, P 0 К%D0& 09p P pP@4  !P3  p B  0   i 0#|0  %% r:r @Ey% h ' @ 0' @ 05s `$ $ 0B#@_ r&0`  O | r  ; r% rX P n`1x `f+`f k!xpf``"$!ax@<$r    !|f1pbpC` 1O bPox$P6ОC"s$p( P36x@ `A0@ГV/0olD of$ a#pTp  ր # r3>i@ @nR@p6G)@n#M i0r tYr    p H $xp p00p@i@o'p`&@X$x 0"r p % SO|P% @ %1pb6f>*"u fd0Q/0НQO P0r`6xrPT#P P  @ H$E sb&>p଀xv pPk df@@0s0f/#% 5|)P  R$N$0$ sC$ ` @x@0@ h0& 0F$O5t R#t& PPP 1%  D`@pa"x000 `+`%P`@y/ r"0*䏰pE`Q  `0\` PPp3rUr p !x ` # pPvfGtE%x &y/P @` t 3 0w%*$Л Er` a#|s &tx@p p`0  5yPu!(` &yp  *Ot;|!  1* p( v b+@0 r0p8pP 0v*'0*[/0**Zȏ#p*'> * * P*@*&)0*0*Z0*0*0*[& *( *(p *  ***,>))')Ȁ"')P)) pP*ud |K)0J#)$)0&0&<&`%$)1x`($)!PE%))($) )))'%@)@)@) @) @)V 05*N0)0p(@)@) ( H0@)KO @)@) 0( 0)9)0)0(Z(-P((!(9(    5 5yvy@ Ə@())(>.% '`(`)"@)(+:|00 `*@)@P+N;(p`( p( (1SMS2< 0R R SP QLpRbP?' @/P$r ` : Q/ QQ 77G Q7N07 Q77 Qpp50 Q7/ 0Q Q@Q &{PN 66$rp0 Cp= @p0C @J!JI0Qp!?70Q* 7( A000QC % 0Q"' 60Q 0QQ0QP1 E6x 090Q Q0Q pQP 0Q  0Q,( 0Ov&I{*b0@CPU &``MoN0`"r Q O Сbs{@N* ,Se!Р RO 'r }K%| 0|7$r` M@NF{ Of  O u6 pP!rp#p`O0rP P8xPPE$rO!|`С:6x & D @ 04 @p xP$ @O0~5| `M`' `PP % N` P/ `)Z P !O@Y` `+ PZP P/`<P 4 ! PR p 3 `%P``0``P p %P PP/ P   l@@ (@"p@] 3P%O e`'SPT#E '1`P50*,yb3%@Dr `5s +b@e`p$0I`5@ %0 ۰@$x P*0E$x @W!x `UE eE c@ 0%r r0p@6P "`&^ B% p@p"  30o "$  ⇠p5cbЖD#%Јp&P `ʐX$ X#!%? 0*#0 Pc$@` P000 D 6pP$  'OWp! p! p#` @D `*O*"D ` @C@0 $@P` b0/<h 6 3$)3]` `\#0`У @ J  J * * ) /  #pBp&`&x PDP3p/     `ch`#SKҀ !Р3  `e/@T   d @ g p p $ &0 # 9x` EP0 ` " 3DO`Н# 0#!& P   P/p@pJ r*& ` @ @&  p   P  %$ D0&    P 0 0p D.0 @408  0 o3 !p@0  pƀ  % G00# |NЛSr@03|`je% %@r0u%x k% к   0g'y`'0p0Ds`$ 0  Blp @ (O `  n  A@ (0j0@j6x `*@j%@j0j % Pj4!ppС j$ k%0j Dr%  !r ! k`   16G $fyPf"$tPspc |Ш@Er`!x`m D6x@ l6G)rw@ x`SMlm p`rkp ,3r @$x p  1P0u"r `Ax 0r P3 00,`Pt VO| lpm``s %P% @ %0t% /$0 h 6xp &p pp p &p #G)`puy @x`z'6$t@ P"$p WG9w /! I`a%`` PK4P  ?$w`P `tN$x pT%x p"'? 0pxFr`Tr !/@x" yw& @w PR%x0q (p `$w%w%w %pvfd $x0Q0rvw vx | 0H x 6%x` `0 a%x@@F |P/{#P#P0"y @% @4 Xy 0p xPP6Gyp`v }(+ (0@((( ( *(*((("P7x'Q/x'0P00( (d!%  ((1x((%b( ?ΐ$ 1$! @'u !&b- @'P4 0 D"/0R0"$ '@# @%ʐ@@7ro''w$x 'p'`'( @`-  0 `' `'`'' '& P #f/z0+5| 0'p'% '& '/PE6x `'p@p'0| PP' ' `'p'@ E `'"`;ffi$E f@S0b 4 *0#0#&+&&#! <" |0" 0:&P@"$&D @0?W0'G ( %% %i"$x& &&`'0r0( %# (&"p P4I0/ &0&L00$&% @ &E%x @ &y-01% `% %&* &% &>b & 0 1 &`&& &' ) @S/ | #@P&)p, &%% &&1H00@ r4( 1*  K!x` ` O8N y0M KL010Mb`:@< P<: L 5 ,5|2 LM PK L`6 L L // 4 ,636+ *=  0 2 L@ Lp+@p L/ L< ' 7p@.Q L"  L L  K L@ LL <5r  L"%P L L&I J$,MJHJ9J*JJJ JJJ  PL0`{*PRG TP"r0T@W'r OJ6{ J!f0JHP@5r0T%OPG0Q$zPЗ`N)r@QE$x`KR$ @H0t23NE$rpHC$| O0T$r HKP$x0 vK#PO H1x}  JHx VVUuAx v V+ V VQ0z3GlV Q A@+K)  p*K % J KpF K 4 !K( K  P LVK% 0K@S  K  % VV' 5 4T0NF@P3 p5Ж`Opp! % ~P Y -T  O5 X%`$p9 @0 O& +$Px  5 ````& `!bP % &dR%P3(O1$x0  ] T␔`P$ c4ҀX `f( Ћ`C ``P% p# +ڰ. $ c`pR$``Y6 "p( 0 P%@ @f".$x@ &(55 00Z %7b0. 0 00p&pfh!b0 @pEЉ$ Љ 0%Pp p!b.&PS !O3p`%Dp$p` V!x0!O  5 pВ&  P4pz$4  00 PZ%0`'bp #$P&P4`@ bP3H  3 % @`" 4  p`$R@ 0!H J** )/d    0 0t c3`@bB@ @     `  @%`c(cb⠜@#@P  d5`f`&  a  d 4  #@4 [P  @  D@3`@&x !/ cCp` 5Pp  0   p/P` H  0 0  Ȁ *# p\) p0 p Wp0&$` 0@` P */ Ф, P 0 З%D0& 0p P pp0 P@4  !P3  p B  @   i#r 0#|f  %% Dr:r* PnUyf  ' @ 0' @ `i05s `C   $ 0B#@_@e %&0k`  O | pphp P Oh`p$ P l  ``+`` !xpp ppҀ4!pP6$r 0lm  % p!|d1pbpg1P@XPRla$0q`o "Лv .0d( P36x `p pV0mO  laȏ#`&00Tp pp@pqh WP hppppr ppYrp  ` ppH $xP&PC$x 04p'PAx g$x 1r pE6x eO|@%  %`ppڰ f>*u pg$0 lc n a#p 6$T E p%$ 6$r t* bo% bDZ$E @t% 0@vqƐPs!E R($0t 05q6ufpx |L*"P E Po000D /#T% T 0$  p &qu"0*Oj0"1 @rp#0'$050 p3r pm0 E$0%prn0 ! rE%x&yP/&t )x `- 0q0 q1 |0 pqCO#p1p @rP &` "sЗp8y  `rJ |r`r  + @r7y *  sp@s  @ʐ+$p)y))) )&D) )0) *")x Jx))6)&(()70&1@) p$K))3)@ )(())@ ))!(0F  ((.`( (#((  E(!(Q/r .((6@Z$x(  (6 ((H6 @uN#`3 P((&И*&`''& &((0&'!@ %D#E (@;`'6`'@;# b3 ()I'&#&)`0(p' p'4 p'(' &("(P 'vO$( ub%'5 ! (pH"#'& `6p$p&(( E6x'(p2PP*/'@9'00' @)'0'D4"p>!r YG0'%0'p'!p'N*%P& &P (0&0&P' 'P'p0'p & &P( 0'p '  'p 'Ppy3&'PMP/<P9y 0O#y4'PM NpObP<0@U$r 6= N/ NN 7G N K  N4Ф4 NA  N4, 0N N@N ʠPK p84//@p: =@.@ =G,GI0N%p80N(40N* 4( >P 0 * 0p<9Gh .G6x 0 E$x 0N"' 40N 0NN0NP1 E6x ;0N N0N pNP 0N  0Nw1'u0LE%F! KP{pCPP (`%]H] Cr HLHG LCr rx2sR@K* @ % 7 {#yH%{0 0y7$r` J 06{ Lf  Q @"6w@|!r#p`L@"rS<00RH$xPME$r0L!|`Л86x F$ D @ X04 @ Dx MЌM% M p%3M#YV#}(E'M% `LWG M"/ M M (M1xM% MZ @%0MM %M P pV#p]?{  Pl@)Y!ra Y PDW3 @D[u@ W$p%Yp3`Q @\uO0 "`W&p(C  `&0p* (p+``&`ʰ $o@% %`!x0 T!x `Rq @ Ќ 0 0"`R r@@$@`'@$pP &% p(3"` $% ː " PS5rBPP424@ 5P"*b`cU$!$%&'b0 #0@"@/@30 P` 00 @  PB @0'0*p.!"3` pEp!3 $@ @c  %T^*"`C SS@  d H G` #0p$'pO PPP p$$ 3 ` #D03 @@  "=i x c 50 3@)O#`-21P0Z#BGpY @   #pBp&`@h00 @ DaP3pe &  @  P 0 @ p 0 0093#@'` +tfP0#@p#' f [00p0#p p 5 p#P#g@ &  ` /ЛFx 0 ` p D pcEp@ # `p ` PE* @ $   p  6p2  P#pp#p&W4 ` 0 ` `E  @  P  E$D0&  _  0 9/@@@#` P P0@ b`  H  0 @$ i0PP $ 0( 0% 0G00 Sr#01|@p$@l% (0 `jo@j#rhh# `   py bb'0p0Ds`$ p$ B l  p` & sm s4 sO xs (0g  0 :x@g%@g0gr % g r$!p`r$   5{00gP@np% f!r p  0qmf/G $Qy !$l @ 6$t:x`Ur @`>r # sl0@  ` E6x @*% P @ roи T x`SM\00rr g6rƐ Л0  0 P0Hr 8$xAx 0r P 06$x0 ``@P% pjpP% *0`p P iO 6xP 0p  ` $p@pp `m R f"$t`qD|0   PT$0vo$p WG9! pt? I``V> |0``@40P` x1y`.( -"~`1$xF |05 #Р%-1r ,` "rpv`t$ #$x0䀠Py t u%x `@#5x P&t (  Ȁu(y   {wUC `"E | OTE |0 0 %  6`B x `02$0P%@P`p d>r   5 0P `@ o@T>r 0p E%x q' @ Pv6Gyp`s ps}(+ (0@((( (`(4 *(( ("P;x'*,x( @ (d!% %6$x (( `%(`%f/{%/b  ?r$-/@'Ѐp#bb % %%  /`t>  " /!R0/U  Dнp% PA%#M `"' '!x %''@`' `-  ! `' `'`'  '& P "iOzP'?| 'p p% 0!?pE6x `'p0P'5| ' '  `'p'@ H `'p0f&uh. &0S1 @04!/ E  Ox v %'>p& #& '#!0&@>`xPp)@," |`$$&%02& Йa5,G @(% %@( & &Ȑ&& &'>rP'@(&0 P/ & 0&DPP$ @ &% ` i|&0%/ + y0*@&ЖEy&* &/ & `&*O &&& %& ' -)r P2 & & 5y-&&1sNm8N y0M KL010M@:0< @< / L 5 D|  LM PK L L  LG  L% 0  L L/ L< P2G$x 7 L   L L'  L@ LLC5r L 0L L `17O6x  L&I J$1%o@(`a0kd&x plp Pep"Npl@@$~ bppQ%xp`eoOGD p llp/ppfpNj`n j jpp k6xp0jQ/ |@pb 0TnQlR la$0l`90dm% `m_cF6xg`$`ȏ  @mfO$ #  ϵg @@p$p `pրp  ЗEr pG jВppWpfG)0lp -e p6$x`p? ppr96xЗE$x p7 pG6xeIx p rYO|p ppP* %pp`5| pڠf" p 0pXb.$uO б4DW/$0p$p!r= P@ T H$E p&>p%`ppPtf do`p @ /#0%r5|)@ #qR$N$Ж0u1qn``q`pt 0 @qh ? 'qfO$`e  rp#PidqP@@0`1%0x#ra"x  @p@`poe -"@j0 `vBI rp6@x @s0@ ErP ʏw u pp@s ppr 0$00G0 `rE%x0 `&y or `&x  pr-00pE%PrP$xPO |qa#|Bx p T>r uE%x 0Dypuy@/* % pȐ*z  P@s*(&yP(sмo |pF%x tO s``&+pʰP@ ***@*jl*}$$`(`(;***0 /))*`&*ZO#)'>)0 ) ))&)))Z P))) O ) )'/)),>P))`P)`$6`)P)0)W) d@(p)G#p))p%W">&ƀ1x'$)D$))($)@' )))'%())(( ( (G (*N( '.(((KO ((*ʏP( ()() 0%p(p(p(P @(@( @(@'/")&z>r ( ('(#p5y( ())`)И'6>r`)   ) (((((`(' ' (1 P( N&1O O0u6$x@  pl!~Й k`O%x k loGv po@x1l@x`10B P %+P B rp@pbE6x mTEyА@ 0pq0x S/G $l@ % @ $pn$m q`Л0r n1$xvfAyꐠ*% qq!r `!r 6G)Pq@v@ x@p`s#M\ x0rϖ@`r 6rs0x pr 00 0Hr 6$x 0 p P4 p0P`0H6x``P* %0`%p rp0pbU 6xux&p   r#` p  % vW"$t0 |0`ТP54- WG9% v/"A I``V> |0`P0x@0w`v"r`v`{{Ty/.(t-"~`9$x0w6 |5ut -1r`   " p{ p# @6G @vu%x `P% P&t (  Ey vu% v% u"01 |( E |0  %  P`B x 0 $Н!5@ p B>r0v0!yOuE$ 0P E%x v@'@T>r 0*  % v @ x(+0 1$ P "E r p(`E Н Н 6G)P" `4x!'>@? Tr '7 @?$x `' `'' `O6x p'fOz0+o| '@('* '& '?'p('% `'@$T | p,'' '  `'p'@ p'H `'P5 #uh. &f0,P@b p" pT> "#5 O #p&& '#5&P#Ix)@,H | `$$&%@1#1$*#!`vLG @(% %@( & &Ȑ&) 0.&'>rP&@(&% p䀝 P/ & &D&P$&&% &&&0%' &Py0*@&0 %&* &/ & `&*O &6| %&E | p4 )r 9%x & & 5y-* &&1 L&I J$1!0 Aʏ  @mfO$ p# qmP/ @@p cpp `pրp p `mp0 `pj1$x @m lWpm&)0lp - p9$x0p_r ppl96xЗ9$x Wr pH6xp9x p YO|p ppP* pp%ppn pqql oT"x@pE 0pXb.0uO e6xpDW/$Зp1pbp1$r`o `oP QmPpH$E p&>p%`pP!rpp6 do`pu@0/ /#0%rq)@ #qR$N$Ж!qn$`q`pt 0pvoh ? 'qxO05 rp#P@@01%0 p r01x  @p@`u -"@E6xqt% q /v&e0@x @s0@ Tr ʏ pp@s prpv 0$00G0 `r1%x0r6y/r `v @ (@r%Pr0reO |sa#|Bx ` E%x 0Dypuy@*e%x pȐ*9  P@s*(&yP(s00r@sspF%x tO p``+pʰP@*(0'G *ZO#)'>)0 ) ))&)))Z '+))[&) O ) )'/)),>P))`P)`$6G`)W&P)f6x)) d@(+0p)G#p)T/)*''>(ƀ1x'$)D$))($)K0)))'%()(( ( (G (*N( '(( ((KO ((*ʏP( ()() 0%p(p(p(P @(@( @(@'/")&z>r ( ('(0Yy ( ()0') '>)`)   ) (((((`(' ' R1 P( N&1pl poG'0l oQzКuEypxpo@x@@x`1`p0xl@`U$x0МPPcG|k"yl"pq 6$xhxA$r `1xC/b%  @@pbPT6x rm"TEy@ 00x 0$G py @f"$t | n!5x pp؀ 1y AyqJ6x$ 1$r @1$r 6G)@q0v@ x@p`s#M\ `broO3r @$x   0F{ (xpXr p@r @4  P1x+0@PH6x e/| 0pP* %0#`0%p r qpb 6xuFr`  0R r#P `)ey v$ |6$t @"$p)o`WG9@d?! In0000QOr400P ?$ v@%@.$tN$x T%x '?vv1rPr`Br "% p {`   x6G@vu%x p @(@ 0pPEy u%uP%0u"p  %  @ 6%x0%0'E | P4v  1$ 1%x0`  $ P@0` `vP  0P `&##!x `#!(S$~ P'"' p"w`{ 0~ @ p$м0pbOGX"@ x#pB$ , p" '"'''%'r x@%!# @6x'Ȁ$''Ҡ `p%' 'p$''`%'%  @&@&!O %'&p$ 0&&X0#e0%b. @! !%'" _ P O #P$&PP " "*M0)'5 " ?$&p)0'4 ' !r$ ' P' "0r 0'&p @ x0`@'Bx "psx r4 #P # '$& "66x` #dA#P,p*@!@r)66x"'%%'P')':@$' :0 `  `0PU'f"6`$efb0f$5$f0q'0f* b a$@Ġ3(Ue p/1U  t  O' P6*!CPE@704 0R/$x` G rCGY؏y &Wb$r0('T%x )Ȱ'(E |% / %` ).'5 `/P$0D`u pP3HR0A-p3x pX S6x8?'"3X`(0k$ 0P?c!.+ SrV/'c@p)" P06P@-4 @!,phxd p(S`0'"@d @TOGi.@Qya+%x p O + I DWːb@3@BU@t 0-C$ pP P)5W 0*N0 -C ab$r @a$r p) `/ p&p p- p3r 2X@F eO @-#x V h$`Fb @А@pp /D&*E6x -@-%`!?00  `4 txPE$x+#x @Ԑ 4P P  p$ PP, 1    p P  %  (@0@0 0    'F 'fPF  P  % 0"  5p* v V$ U 0Q/$0T  O'P #   c  #  E`XGYP1  -O '$r4 %P1;|P lOF pSp `f/ P   0@` C$ 0@ p   00 Ex '/02 `% P0;$x 2 1 % 08& %ΐ09Opp8 6  P  60 : ) @306 df$p6 @ pa  5 p p39 !9!5SM9pp.p+xpp` ` p0<05% Ȁ4/@5  `4 "y/P `4Ey P5) 5y`5 `5E | Ȁ 0% -Ư4 8?4\127x 2,O26$x/'D|  2*2 2a$~2 Z%I XC21 `4ЯpYpYYYpNpYpwpvppp pw{pxw   /[@@pb 3 x6~bb y%|f$p@ |#0/ p0|(`{E  zpO#x z& 0T#p P p|ErЬ p7r 9x 8$x 0WrI6x@ гI$x @r D6x `{P@ }ʐ@1pb(V 8 |2  `~1U# p?p}p#_ 6$ E 0}$~6 b|$ {b@{E #G$`~2| _E  pp 1@E `p($  `D&0~6ufxE | 8}1 p/#&Ї!$ `2$P~$pE }%XP6 N~u Џ%@`% $  5p  p5 p1r@` ʏ P% !r1$x0 D &y0&b&t &x   &y"1#|p  0 @P &`0 00Vy0&3# 0p5y&% д` @& ``+ 6Gy0E /(+( '( (1`( ( ((/(P$8xp (d^("Ux ((((%$' $`o((&!&p(( @# (5(0%  0(b0( Tr p#0(0(0(0Wr 0( 0('0(/ 0(/0( 0(p'!ZN0( P0(5 0(&`& 'ڠ&Rb pP(%`'!P(`&'ЦE (!(` &#b' )PI'5 `а''''p+  && +P#&`%"'06$@$u"%`'uO (! ($P (&V$ p@(P'$PP&%8 E6x0'&&P'`'3 /P)H rP'& ``'e#`'u r0x 9G@P p$'>'x/&>&  &&&O&`&&`&& &Ⰺ%&@!| & &`) ` &' P&p& 0'&1 M7&I K5$%P`y`Opy%}Syr0tabrt?0U3T1?@x?T`t!0% R 0T|ʀ|xP$M K }{"C0u}&P!KF$xN0~ OpcG<` Q Q0 `UT6xxvyz$  0{# B`#}0P3sG tpVh{F s'| P@|S"@@ &r 0T$PPc 0 pb' ,RRpQ Va/$r `!|vWP@!rz0|00p11rV3W4Wb|U!@|`@P2y`y~@x "@r O 0 Ex0N 0pbc6x"PE | *TS{ {{'Gi؀ *` 0r'r |1pR:k *kHb 0bP) 5|@ZpP`1r  2|Y## PKy OZx@xO" +    * 9 O) :|  /    /  # +    ?   ) :|  /    /  ).&r  ?   ) :|/ /`]9.+ ? ) @b /  I  p    Ћ 0:|P    ** !5@ 9GY p`#` a| p` ` 0p  ``%` ` P@6xe? *@5`r "P6Gy $Pp#Gb     0E |u`bcf fpf!#P&P@b5 u$`! @!/@@&pab$Ј0fOpP5`&@PE@V!PEP&  bfp `25& PR"$Pae/xe0E0QO"P6@3 `" P&PD  PWِ f"` d`)1@ЊW/ ub@HP&PeOP@`pT@ Ə@@@ 0e0fPD@TP#Pc4pT r @WtPfbİpE E e$p@ v05 w pY0!#@@u@s$P 0PP[pp p&pp p9 HppȐ D50@I$0 !0 9G4  3|0f00k;  1 0 0iU  ip p0kPE | E |*P& Xj$q"$ "& @ !b`P#$ H 6x 0&`fP5ƀp5/$"ʏ l1p5p' OP Pv `G` &`  ppF C` @ @' 4`5 @ [```0 E ` `8 ` P``5p */p (` @5`P0T$  T09#  P '[D`K$Ƞ %p x$ E001@ذ`Ep0! I  `  P 9!5@ & pp΀tP;|@y/n}Ե̶%X0 @ 5ZO0@  8f~@$.ڔ"@# ,)pB@D5d@0"@@/@.@@/@. @@/+ @@@/C @.@@/[@@@/s@.,@@/@@@/@.<@@/@@@.L@@/+#@@@/W&@.\@@/)@@@/,@.l@@//@@@/3@.|@@/6@.@@/9@@@/+<@.@@/9?@@@/GB@.$@@/UE@@@/cH@.4@@/wK@@@/N@.D@@/Q@@@/T@.T@@/'X@@@/S[@.d@@/^@@@/a@.t@@/d@@@/g@.@@/j@. @@/m@@@/p@.@@/{s@@@/kv@.,@@/[y@@@/I|@.<@@//@@@/@.L@@/@@@/@.\@@/NJ@@@/@.l@@/@@@/@.|@@/@.@@/@@@/@.@@/@@@/Ǣ@.$@@/ե@@@/@.4@@/@@@/Ϯ@.D@@/@@@/@.T@@/@@@/g@.d@@/M@@@/3@.t@@/@@@/@"@@@/@.̀@/k@@@/3@.,΀@/@@@/@.<@@/@@@//@"L@l@@5@ @8@/@@/@@/ @@/ @@/8@@/P@@/h@@/@@/@@/!@@/%@@/@(@@/l+@@/.@@/1@@/4@@/7@@/:@@/>@@/A@@/D@@/,G@@/:J@@/`M@@/P@@/S@@/V@@/Z@@/<]@@/h`@@/c@@/f@@/i@@/pl@@/`o@@/Pr@@/@u@@/0x@@/ {@@/~@@/@@/ԃ@@/@@/@@/@@/l@@/R@@/X@@/f@@/t@@/@@/ @/@@/@@/@@/@@/@@/t@@/Z@@/@@@/&@@/ @@/@@/@@/@@/P@@/@@/@@/@@/p@$/8@@/#@ < 2%3@&(@%/`@2%'@@/x@'@&&@ @/ @#N%@ @/ @s*@@/@#@@@/@.@@/@#@@@/@ @/4@#=@/`@d"@/"@#%@/%@(@/(@#@+@/,@=@.@/@@!*d /A@-C@/D@:@F@/G@a@I@/J@-L@/N@#O@/0Q@Հ@R@/\T@#U@/W@-!X@/Z@#K@@[@/]@.t@^@/ a@#@@a@/8d@#@d@/(g@#g@/j@j@/m@#9m@/o@^p@/r@#@@s@/u@.@v@/x@#@@y@/{@= |@/~@(@@/@N@@/j@t@@/P@@@/6@@@/@@@/@0@/@4@@/@\@@/@@@/@@@/ @@@/.@@@@/<@- @@/J@F@@/X@l@@/>@@@/$@@@/ @@@/@- @/ֹ@.@@@/@V@@/@~@@/@@/P@#@4@@/@7@/@#%@2@@/@#X@@/p@#@@/8@.@@@#@@$@w@#@@"kTC7 3@$ $B @@ ?/@@/ @@/ @@/@@/@@/)@@/I@@/u@@/ @@/#@@/&@@/%*@@/Q-@@/}0@@/3@@/6@@/9@@/<@@/?@@/B@@/E@@/H@@/L@@/EO@@/qR@@/U@@/X@@/[@@/!_@@/Mb@@/ae@@/Qh@@/Ak@@/1n@@/!q@@/t@@/w@@/y@@/|@@/@@/@@/@@/u@@/[@@/A@@/'@@/@ & @7/+@@7/9@@7/G@@7/U@@7/c@@7/q@@7/@@7/}@@7/c@@7/I@@7//@@7/@@7/@@7/@@7/@@7/@@7/i@@7/1@@7/@@/@@7/@@7/Q@@7/@@7QIB @h1@@.@@/@.P@@I/:@.@@I@. @@I/@.!@@I/#@.#@@I@.X&@@I/i@.(@@I/@.(+@@I@.-@@I/^@./@@I/@.`2@@I@.4@@I/S@.07@@@.9@@I/@.<@@I/B@.h>@@I@.@@@I/@.8C@@I/%@.E@@I@.H@@I/g@.pJ@@I/@.L@@I@.@O@@I/P@.Q@@I@.T@@I/@.xV@@I/E@.X@@I@.H[@@/@.]@@I/:@.`@@I@.b@@I/|@.d@@/@.Pg@@I@.i@@/M@. l@@I@.n@@I/@.p@@I/@.Xs@@@.u@@/R@.(x@@I@.z@@/@.|@@I/@.`@@@.ȁ@@I/O@.0@@I@.@@I@.@@/"@.h@@.Ѝ@/d@.8@/@.@@.@@/G@.p@@.ؙ@/@.@@/"@.@@.@/T@.x@@.@@?@.H@/@.@@.@/Q@.@@.@/w@.P@/ @.@@. @/0@.@@.@/V@.X@@.@@I5("(1$.8%3 7 9= p$-888`@d C HELFAS 0xB @ d@8@V.shstrtab.'ym_shndx.note.nv.tkinfo`cuverCtext._ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1E!21P*DataType_t2EEEvNS0_18O 2nchw_params_tIT1_EEPKT_PT0_osharedreserved.0at.relOrela[099]_]A0Q7C4E7C4[i D9]_]=0 ;?8A;?8[0@9 ]_]Am;C>4E7C4[0D9]_]76__halfE 9B$;E(9B_H:A,a,c,aE g ,7,G4,I7,G4_XHA,a,c,aA^ Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a7Z? 9<;?9<Y4:5[][?n g7A4C7A4YB5[][; k;=8?;=8Y>5 [][?o7A4C7A4YB5[][(* JJrT*Q ,T&*Q_@+A$,a,c,aEz X, 7,G4,I7,G4_XHA,a,c,aAD Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a/ d|A1>3A1>S2)UWU9^, _7;4=7;4S<)UWU5 e;789;78S8) UWU9:i7;4=7;4S<)UWU/B0y?1<3?1<Qw2%SUS7$ _794;794Qw:%SUS3 c;587;58Qw6% SUS7g794;794Qw:%SUS( HN*K,N*KY+5[][?v X7A4C7A4YB5[][;^ k;=8?;=8Y>5 [][?o7A4C7A4YB5[][)F@)/rF+B-E+BQw,%SUS76 Y 794;794Qw:%SUS3 c;587;58Qw6% SUS7g794;794Qw:%SUS)j@*s?+<-?+<KS,MOM1V Y7345734KS4MOM-8 ];/81;/8KS0 MOM1a7345734KS4MOM%25RBooleanTransposeErfp?hPhj/l,debug_framei anv.callgrapprototyponstant0؇`I!wFFFr Fr FvFvFl -7<Nzl NNv Nv NzNzNl2BtlBBps Bp BtBtB]<Pw$Nz]N Nv Nv NzNzNd;,~6nxd66jU 6j 6n6n6d- ~2lfd22h3 2h 2l2l2]^wBt|]BBpW Bp BtBtB^x2ll^ 22h? 2h 2l2l2^ x&fR^&&b &b &f&f&JS-,#-_pmerc&/) 8bHabLu Lu Lyw Lo E 4T} TTy DoT T}T}To JHwoHHs Hs HwHwH` :&z$T}`T Ty Ty T}T}Tg<qg<<mj <m <q<q<gl 2 8org88kH 8k 8o8o8`+zHw`HHsl Hs HwHwHaS,{8oxa 88kT 8k 8o8o8a {,i^a,,e& ,e ,i,i,M-/- [(\ [WI cLu Lu Ly.;>?  7go TTy DoT T}PJoHs 2oHw ~&z$` z$Ty>~T T}P.,Dg<mj R `<qxl tgr8k0p~,z`zHs~H Hw Yd v `a x{8kT pk 8opda^{,e& a  ,iXk.4- "F"`"F<`Pw|@PB P{@< ~ Dq X{ qX X`ZqLu Bq"DD <0% D6|$b |$X{NX X`(i@ox r b  @s R |iz<mV i<qx+,)@B-b|LuL Ly0 (c }<mb  b0 <qx0  rclcf}0g4 `g 0k`E \˷reserved.0@Vsymtab`.shstr/.?_shndx.noteb#tk\UcuverǸ[V1!][9i%nvSmem.offset0 .0__nv_RSMEM_0_0_aliasP3cap´Ompat4. 3b4l-LDV[^_?`< 4A4D7C4E7*Z3VB0\^]_]8  0=8@;?8A;?7VB0\^]_]< 30B4D7C4E7C3VB0\^]_]2*%h-847B:E9B;E9AZ^8`baca@ 38F4H7G4I7G3Z^8`baca<78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca2?9427<:?9<;?9;T4,Z\[][: 3,@4B7A4C7A3T4,Z\[][6f7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][#7 -N:2)Q+T*Q,T*PZ^8`baca@ 38F4H7G4I7G3Z^8`baca<78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca*@t>,/>2A1>3A1=}N  T}V}U}W}U}4L 3 :4}<7};4}=7};3}N  T}V}U}W}U}07 68}8;}78}9;}77}N  T}V}U}W}U}4 3 :4}<7};4}=7};3}N  T}V}U}W}U}*T;0<y2?w1<u3?s1;qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq.748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq#sK+N*K,N*JT4,Z\[][:F 3,@4B7A4C7A3T4,Z\[][6j7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][$uowB,E+B-Ey+AqLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq.2748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq$,Q;*<e,?_+<Y-?S+;MFLMNMMMOMMM, 324M47M34M57M33MFLMNMMMOMMM( 7.8M0;M/8M1;M/7MFLMNMMMOMMM,l 324M47M34M57M33MFLMNMMMOMM25nhwc2nchwBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototype,}onstant0Wlc0I 3JFr7FF Fvr Fl(:A@Nz NNv lN NzNzNl#;2@BtlBBps Bp BtBtB]@aI1$Nz]N Nv Nv NzNzNd=,86nxd66jU 6j 6n6n6d- 472lfd22h3 2h 2l2l2]pJ 1Bt|]BBpW Bp BtBtB^ w2ll^ 22h? 2h 2l2l2^ x&fR^&&b &b &f&f&J-+ uQ#" f !@u "0)0n@ @x < H2 0  H2 ] 0  uH0@ 0 C "H 0  Hh d0  |Hh 0 J )H 0   !H "0 # %H L&0 ' x)H@ *0 R+ =-H@ -0 / 1Hh 10 2 4Hh `50 6 8Hh %90 f: Q ?H# @0 A CH# &D0 [E 4GH#@ G0 H JH hK0 L vNH O0 >P RH R0 S UH` KV0 W YYH  Y0 3[ ]H  ]0 ^ `H  |a0 b# dH  Ae0 fH mhH i0 GjH 2lHh l0 nH oHh p0 qH sHh Ut0 uH wH x0 7yH zH {0 |H {~H 0 1H H@ 0  H uH@ 0 + H Hh 0  H oHh 0 % H Hh y0  H iH 0 H ږH e0 H KH ֚0 H H@ G0 lH -H 0 ݢH H )0 NH H 0 H H` 0 0H H 0 H H %0 ZH 3H ƶ0 H ԹHH g0 H uH@ 0 =H HH 0 H H J0 H XH 0 H H@0 H jH@ 0 H H@ f0  H LHH 0 !H H@ H0 m"H .HH 0 #H H *0 O$H H 0 %H H 0 &H H@ S0 l'H H@ 0 (H hH" 0 )H H :0 S*H Hh 0 +H OHh 0 ,H Hh !0}:-H @&%VRfrH10.x v/ 01 _2 34 H56 7 9 89 : . ;< | = #>? e@ AB HCD E +FG yH IJ nK LM cNO P 4QR jS TU ;VW mX YZ 8 [\ j!] "^_ E#`a $b (%cd j&e 'fg =(hi o)j *kl :+mn f,op -q .rs E/tu k0vS$@|  (( $,0  <6\h% \ h&\h% 4hh0 V\ hdh0hhX0Eph$)D$h)@|8Eh8@1g 8@1xh@Dh@E*HgEh@1)g|x@1hh)h80*Pgh0h@Lh0* gEh1h1)X g )hD( Eh1h 1`XDhE01hH1#8Ehh 1X@18(@1h EXEph@1h@1)@g Fh8 1*g Exh@ 1hE)HgFh14 18h0h8h0)PgX xh0h+H==::7074041x1..++((%8%""k x  ; x  30c#* 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , !7 n P!9H@!L>LJ  pp  = } qX f1X6 >o p 9 L0 H0/`L H GL_PHPL@H@L@H@L@H@L@H_` L_ H`_0LH@L H pL, HLHLHLHLH@,x9@H@L@H@L@H@L@H L  H  L  H  L  H L HuO XL_ xHXL4 H@ LH@L H@L@H@L@H@L@H@L@H`_ PP L_ p!H8 "LT #H$LC %H @&L_P'=L&`d< 8&(pN 22&'*0@'Ld'4N|,'45H'D(*0<(t`( (&(<(Դ8x(l)8)+H\)4)&)d)U&)*,$1Q,X*\|*?0**$*4@H +T0+-0T+x++&+L$1 7x,|,,P,-Ht,D,ܴ60,t, -6H(-<L-& p-l--]4Jx-4.4K0$.dH.9/0l..,.ĴMH.\.O0 /D/$h/7H/T/?0$1PU082D0S|zd08DL-5A{A8-S"y&bwq syy2EyРPE}r"wk`cw wP(Pq'0`xQ$x /x }qxx"1 |Ppb OG r{ i-3r Cpqbx0 4r?sK 0s$6xs?!$ra$r p O ` 'r 0%0 q{ 9-5%$0`pr`1@$r `a rp@$ f6j0 P@pR @ r{1p`A{y(@pr@"<0@b6`f$q@3 `$| pOe2 `$| 0p  #r 3| 0ʐ cG @@! YW$r 1$xpp!1!x  Pr r  0@2$x  P k1Cr@@0| 11r| `@ $~@Ar !P@| @ @`# `@y@ @|PP0| @B p  P@| 0Bd~ P%PP  p%  (% Sby:f"xv@0x @@r@@@|  asD!A33  2 0 fGy`00$x" &r Par $P0B@s6|  A{+-bC6|U | Pa )*c" !4Q` 0 H8@ d~*0C6x d$x R/PtA x pu6x @`0xaG$1Aqb{0d"6|? 0$x/"#@A{120S{`a/$~p$|COM 06w"001x$ `TGdz0#z b pp%`x@r7C3 6w a%xPxP  @| /| @1WrE6| B0!r` `1r` 02xT%x1$r `H6x$G P#y@1t\$  \q |VP xORRv7p>rpy@ 56x'r06p &pDMP p @!x[ `abx ar {1|!y``pyp C (@C0 b + uO$xpxOaƏ |  /`0 %@v |0@ x2$t `G | 00$x_P " `@( @ x/p#  q#@ xD00` `0$X # R$HƠ4 58  @ :(  0 uPUy P4 0@   $ 6GyE/ Ȁ   x+ Y ! -pp"<p `Ā-p1$r  }`p0Ԁ6x  *@``p 1  9pp p ` fqb `p e` a/ @& rP` > x v 0 u0 ' p - -6rfx !rP `         O !Cِ  0M~ ` 'x  ` /0 P  5x 9 0( P0 @H | Ɛ 0 p  ^& "Π@*bP@!|p!|p   L   #        %0   /  @ Dx@  L 7/ 0  ;#   p qp   $ P  j 0/  _ 1 m&   & , % $  44N+46*444 4+44 4`3  tf`+Ys 3.33%Op4P3 p+3`3(3-,p% ." r03 3 303Tr 3.&{ P p35| 3*4`-5| 34 43% P/`4 P,533# 3!+51$x 0Ar@/*6x 0%63Ar`3P P0# 0+3p$@`Dr  05 `# `3p%4 p% p 3 P 3  ;  % 43*33% 3P.p $ . .0sQ3A 3* 3/ 3@23 Pa| 8"P3% @3 P!003 3 @661r 6(3 3 p%/3#353 3333 0Ex% %45.Ap%$ 6p%4Bp%3p%  p%p%, #r3pp6`R"x&"p5%%*3g/$ #VO$#pď 0%V$a#pD +o`1 @͋@p"$(0-43J%%%0%%%P&P@% '$90 0P2Ȑ;%Ɛ&*y@&%90&t`&04P:04x!4%'p3cO |p @2#|9@rp3&$ x`=@r 1D$@ 31|4'&r @x ( 5 @&+(2; 1%x@`3 /p8>xO& Q#|p xz60   @5%'*M  P:%xyp '#y p= .pP`xpPp`P@r@08 ' )4}p xp9D9 5  ) p   ,B`4( 6r 16 P  !x B Pp%B*@ nO@!rB((B Bp4 3p(J  4+'& x#1> *  p  6?G4 j#r`?$~D pB D|Cp pp `@)Yk`* ` 7%x@/P P D7O p6y/&$50y@00 *66'>r@8pC]1 ) 5 505 P!|pF50KO5S  / % 4  /     P O ȐO P A O 5#RO `@ pO  0 OP!  O    p԰ .p[ư = 10) ZC N 0)/0H0)B0H0 @N0/ p & [00>D0x0 k7k6kBk@,kp)kbk @ k k6 y`ko !F6 k;  (1 B/B6P~8- BxBk  `k`jpk "$ kTJkȀk\Mk0rd k `\ Op\ k OPBkg\_ @kO\`k-OpkԀkO 00 f0 AWOipkpBk4 k*O0hʀkx2kJOY0r k4k; OO^k p` kk4kzPQk}zkPQM k k k(0 zk kpk. 0^4pPQ)pk8Ġk$k;!0rnkk 0x k^Z)^^o0 00q0xk0 0 01000 k kU@ 0NO kyp  0L B0| (@ 0\'0]7k0 &-7J6P7Lm 6 `` 0С *%" u0@x0 6:Q'J 0 мP"Vr&K мgEx'$G `/$P&t00p/%9p7 6G(B p?   *$ f$x`*b| # b/| 0 y #]+0 0( 0|P xE x'@  "$5 5`Pk% 58$ p`B$  ` P0P@/ `0`  `@)p/c `L ))-Й"x ax    г  @  6 `  П @`` -6GĐ `0pp >       C" 1`#|!`1| B1@|4P` ` 00$x/p5x PG j0 5x P+6| @* %   >@ 0    9 5pr0\ P p       -1  = +uOx@   p 1    K  % Fj   (p% %0  ! 0$   p3 L`  i`` ` i2&im5  P /`d  0 # iMP `1@  @!  MЫ] /P*d $ &1 MYO# Z 2 4 p`$ PiP$0 #1*p#03 pM-M fVO#| PDpMf$t%2 3`?AD0|$$5y%p&$ @ #+b0& `Y 6 T @`4 1$% *z/ |  `1 5% $2`  (  % p@02ԍL=P  |!p2 p \ `p  20 000%0B&0#Cr P gPP9p p  26y +"@hO   h$ &% "P " /  3 ` @pp P% P@]F | ``%PCC  1 '^76- p3@$3p 0>3 hg0& @ho000Q>p=0 0/b t00Q L0_ 0 0 00/& 0 Jp 0:0 J0 0 fPEP6{ @$fPe@PSR r`S2p@P)@^fe"$_fp.!p]# |02 ,E$| `aGr p`+$+`p+``)1 P&r>`4 pP,f"`< P PWX@04W  XX 4XPQW/ XX3X 4XXXW 4XPXpSr PP4B LL0ZT!@1P-$ `  _@ d~0WEY LX`( pc/ X6Xp XX1@20E |X%"r0\W f@$x`3@X" X&U@ 4  V fLL4!L WL4m LL  '#yP$6$tp20r0# f00>@0 f 40*P &  fB Xar %fXXX%b *Op XZf@Y Pf&0&36$t `0| P_ uPXf0"p_X+ 04f1|`E x PfIX4HP3pT>r `F>r3@f( @Z`& 4t  tJ p @U@j0% 0X) @ @O `Cr PB` pO Đf L f;$x?$  P[  t2 fO6`O `f=4 00r  pf 1p  ?pp f ` 0(?pfX0pf (B>0 0C#fPBf0 f6rfx !rP ` #rs f 0t    Oـ 0  0 PsM~ `   ` f 0 P4 @9   puP, 6 r[ 5r  _   YZ    1   m gpL (1 @@60b@ m ~ 'g N %(  <L= P+{ `,OCpp,pbx+0I@r 1`s] 0s.$6x#rsQ(e!$p\6$r $ % /P)"'re03!`!( `g/ ~HO00 е M8%; 3Ȁx2J/0r0& % 4е; `A  P+[`4`[ `4`i ` . z6_ 'V#|jʠ5h455P086$ f &4Ā L.Pp. `P)p+ @\@$+ D*w@8C7$  */~AP)  u `1@`M u @ .U@ > Q P  +1 6+w  ]w ]P0 p   0(@ .0i@0Q ]kkB"$8kk6k0 @kk* E `  )k0 k k6 y`ko !k[0  (1 55kT 4k  k Ь 1qfpp ^pk; jʀk(k;60rʀkkȀ=  ְ/  0 @08 `k0 +1 6n"66=kPr.0 @k kz! A  0Ы WG4AP'Fw9{ p ư0H@  [(3 )P)%M 0H 4p 0k!0 k 0& ]p yY4 `CS{ 6 6Q/$~06`  SOM ?6 `pؐa7@x @` "%x@ *0 E6|!p%\;$r 0 0м5/$-`@) PQ6GB A$~ D$ $f0r#+ƏQ/|0 P(  6+0 0|A`K | 004 @0@ky$ 5(5j58 `%0$ *$ 0/@p@@ p6yPS B,x 0P(  P  `E ` Ґ   @1 `@p@Đ `0p <p`0   `  C" 1`#|!`@|  C  C  ` p  `D@  P /@d0r 0 & 0( `x E |   >& ^`  C' P  @ $NS6x s0@$x/ P ' 4 aԀ'1 O  [P   z *p 0     L   ' @  @;r0@ 1    3 %   3 1 O i%  o   &`9D`>%`k0!1tL 'r` 0'R r01  p p`Pr'#<,&{ 2 p#pb0| b-*2 012 p3p% 0pO$r @@p 3| @** -T$r p! p-p#@101$x =@p`## pP= 01|#`#`#@`Ir  4  3r p#$4 ` P< # P $    0| ##by  V($% Pby0gW."!x+C0 pRs``!A1# .02 0fGy`01$x  &r P1P.1 0! 11$ "Wf6  0@6   `@ d~*@    P@ P@.6P@7P@#p1 P1*11E`?xP@=0 !p# i1x c2 # `@i $*rP@ii Ԡ ZiM+diZf/piMsO#   N/QPp@$( PE%x/`$Pp@0 #1p#jp  @&@$x013Cx3 |!@&|  0࣐F$t2%20p 3p ZAD 1|p$($0P5y%p&$ 3P0& Qy2+bP2*  6 Z@`4 1$%  pj/ |  `0%*$`   pU0r%%:x@ a4`2MQ*@  0 'N0N /O|!p!r  0  P .6x@'@&ր(p"db pp h `p  20 0000%0B0 0Cr @Fx !r P@ppf  26y +"@hO@h !h2 @  2" P " /  3?*` ! pp PPTP% F | `e/#|PCC@ 'ZW06h  0L0 0 P@00 E$x 0 Z0?ZU$x00 M@xh *b   6$p 0(1   @g0-& M0 --%@6*r0@ Px!P1Px402PpSOG |@n2-U"r 0Cp5bx Er_`s̃ 0s$6xZ22sMe!,@\4 2 O1`"'r10 @e c{ Q,&340^@34 4PR/Br44446f 44 4 %Pa4P+3| 4 PS4%1` ,3rpG1$x @]2r @p3ar 3Br p!04!r0R@C@-13rP] p& @J& @t| ,3J-2r 3PQ `Cr % `P@. @-1| X  #y`4#4 @. 41| , 4 4 34C @4B ` 4\".p1 3&x<P@2 @@E|e3p3 PpPS@@@ 90 0%p#6x @32/Lz$5@30eeeO$|/e1x@ 8#$x@ p%= 1b`pP%e3 @3@Lp%1/78 W1Oc1eL@4e&LЁB x ' `1%xf`O̰e5f"$t Ue/@0 P0P P"6x10'G`e(8X phe 8P%  8@%`1p!yQ3z3&2!e2 KYC `"`': $%0Wi3İ%  O1p5)`e'䏀2  @e603#^ 0^P2 `eR$XP|P@| P@;H3⠶@>& 7( @g>r 1%xzP 0& @6!y;@e$ % p 2  l  52   op I@e@ep  `& 0eb =6 e/0Z W>  000 @e 5 up0e! 6r p20  rF @ & P *  *  %  *b 0H01C  F0H!|@14~r   r e -O 7 | e ?@  & 0/ p   @J      1%Pg" *b!|L000L0 0U   @0&)6Npb00p00+0]0 0p0Ep00p0p0p0p0@m0 0pP0!(  dYd0dP'd'd0dd!x /Gpddp\Fr dpd3r dpd!r 05|/0d1| 0#|p0pdp 0pdd0 p0 00#r dp" `p0@0p0& # 01| `, 0p0(% d0E|/00*0* 0/ 0*0 dPJO{0@JP0 @J 0J:0*0pd20   0040/0;pd 6pd0 pdOpd0 pd =`3>0## U0`d0!# `d g? o7"bM $/"RO P%/3 SP!6$0a.`d.0&`.ax  07%xPV#PV # 2$ PV   "PV % 3 p dd# PV pOD#21 dbT@cZ$t 0s+|@ #@| P$1x  P$*(p#Vk V E%x 3 /c%gP3P %Pd% p2&@%4 `` W;P!yP%`%0//  PPW% @'6Gy0 `0 1 1 p9/ʏ0Pp 000@rd%0d4 d0PD0OA0r cr@ @ eP P `@ @ %  2 z `d /p %/ 4p   1 3 3 33 P!|I3 03b  C6x  & P|`@K  PJPpjİ P^ =dʰ0?   0 0 35&0+6ff8@4"$8 f f Yf PYfM sffL ` f 3f f0%1 >% >0Z>qfzP0 `<0   0&I fZfP `ceOffePK PKfPKf@, fPK PfK0e0 AfXpUf(>PK0cfU #f=fDf;f4f+0f(pn Yp <t Yp pYY,Yt\& wt|Lxo%tMfpf 0=L00r`0f$fK 0z  yf`f+ 0fptf  f f@ 9  =?P)  1 4) 4s0x0 fa ,` p  p( p  > *p ̰ % `P0PcP@& К  0 ߞP2|=p 1|Ј@ 6 | *O` @.6 | .0| p3 p&0@ x *p%p @p 5 5P˻ $( $ ` 58 @`Y0   $`3 06@pP44`r A@1? n , u h1x p  \// ̰ J1r| p p    5P H 0 @!| @ 4  ` p& p p P!O 0   9Ə0  & p  0 = 1 % % % Z:$  N000- 00Oe"U@V#P ƀ"P "$ Ax #" /p 0,&ri@' -/ +ddWO#  -Pap;( -!/ #  "`!|U"`0@$&t -+pVZO#| p#r@*/p0 P4P#9&@PP#@/ p15y#  V $'& 0!`//PV Pp`% pdpp0` `$`00Og0v1ss  t000 =ls    Ȱ rİ     p   P  =0 P .` Pp%O 6y pp!R"`@100  p70 1 d  ` d   0@ 01 `   @@ p`1 1 1}166 1V0Z0 rA`0~0 0 0  0 0 pAp$%)hwr pr@3x 1x@#rO!0$x 0&!O0b0* )0b & 0e$x+(kV fEy@xG6xU |@+# bS6x #`QC6xR% #"Y3G x c{bppCw{0"C yn 4P @rK0@x(dr  %P$ + U'rp`r+pC `ʠPa$|ЋPaO$r T`1$|aʏx `"`0! P S R1P`p"1x@(" O ' Ex`DAP0pb`c6x #`E | 2| @.+@pb 1 |P1pb'Giؐ"b*.b &Qrȏr` 50PQ/$r  aOxp1r @| 0Q|p0 Jy* [ O CNpp+   0P U'rp0  `J$| *   ' S| *  0]    %    P 0'rY @``  `  *   * * 0 ! / )  %  P1'r` 1r1#]04 1`|0****  ] p 9<  @  *6  04 3J$| 2r@`@H0`^0*4  @%$ _ I<5P e@ ;'r(# `d #0P 2r K| *P7@0Y 0 0 8 `)bP ``r/ `i $(P:' +/7 %3  A"B X@ d@  9X@1 9P,P8P11,0(P@@ R 0) A+ Zb @`HN, <` H8@  @0GZp0 A  0PP @p82  0@pppp6  @@ PC}3so P pi "ϼW\\-<\o7 \r ?~_ /A,;Ad g@X xX 0 0{ [ tQ `l8 t   P t T   @@&c0 ,O p  @` ?d y ;@M| |&)hh /{h~[$;@% P;,[;)@0(7Cp\,, ,@( (&@0=0 8 )[0 ,2 0PpJp,   @ Co/_  @Y,A= `W;`&@p8 $ d  s[@Y0pg?Y sDY@dP| d ܣ$lyv) l]}k   Q y3 /```= x/ l 0<&U |`5<.< xN  | ```Ll`L`5LL`4,L`4  4\`4  ?H0l @0 A CH0Vn &D0 [E 4GH0@ G0 H JH0x hK0 L vNH0 O0>W# RH0 R0 S UH0nx KV0 W YYH0k Y0 3[ ]H0` ]0 ^ `H0fj |a0 b\ dHr Ae0 f mhH i0 Gj 2lH l0 n oH p0 q sH Ut0 u wH@ x0 7y zH@ {0 | {~H@ 0 1 H@ 0   uHfv 0 +  H>v 0   oH} 0 %  Hq y0   iHl 0  ږH@ e0  KHvu ֚0  H} G0 l -H&u 0 ݢ Ht )0 N H( 0  Ht 0 0 H 0  H8 %0 Z 3H H ƶ0  ԹHp g0  uHs 0 = H  0  Hs J0  XHh 0  H@0  jH@ 0  H@ f0   LH@ 0 ! Hr H0 m" .H 0 # HVr *0 ON HNq 0 % Hr 0 & H S0 l' Hq 0 ( hHq 0 ) Hfq :0 S* H8 0 + OHq 0 , Hp !0}:-  &VRfrHq-Q D ? @ *02  ER&D7>/T 2;( ,) "x@9@@["@~ @H=~'@@Dp"jL@5  /%@@/=@@@/U @., @@/m @@@/@.< @@/@@@/@.L @@/@@@/@.\ @@/) @@@/U#@.l @@/&@@@/)@.|@@/,@.@@/0@@@/+3@@/96@@@/G9@.$@@/U<@@@/c?@.4@@/qB@@@/E@.D@@/H@@@/K@.T@@/N@@@/Q@.d@@/%U@@@/QX@.t@@/}[@@@/^@.@@/a@. @@/d@@@/g@.@@/j@@@/m@.,@@/p@@@/s@.<@@/v@@@/y@.L@@/s|@@@/Y@.\@@/?@@@/%@.l@@/ @@@/@.|@@/׍@. @@/@@@/@.!@@/@@@/Ǚ@.$"@@/՜@@@/@.4#@@/@@@/@.D$@@/ @@@/@.T%@@/@@@/߱@.d&@@/Ŵ@@@/@.t'@@/@@@/w@.(@@/]@. )@@/=@@@/@.*@@/@@@/@.,+@@/]@@@/%@.<,@@/@@@/@.L-@@/Y@@D _' D.2(@@"T h@8/@@/ @@/2 @@/J@@/b@@/z@@/@@/@@/@@/"@@/>%@@/j(@@/+@@/.@@/1@@/5@@/8@@/;@@/,>@@/:A@@/HD@@/VG@@/dJ@@/M@@/P@@/S@@/W@@/:Z@@/f]@@/`@@/c@@/f@@/i@@/l@@/o@@/zr@@/ju@@/Zx@@/J{@@/2~@@/@@/@@/@@/ʉ@@/@@/@@/|@@/@@/@@/@@/@@/ @/Ȥ@@/֧@@/@@/ҭ@@/@@/@@/@@/j@@/P@@/6@@/@@/@@/@@/z@@/B@@/ @@/@@/@@/b@@/M@ H=< Q%' 5238?( !C]4 @#D@<% @/@#Q@@?@ @/ @#^@P?@ @/ @#i@@@/@x@@/@#@@@/@#@@@/2@#@@/^@#@@/@#@"@/"@#@%@/%@.(@/)@@+@/:,@#@ @.@/f/@*@1@/2@# 4@/5@@7@/8@'@:@/;@3@=@/>@>@@@/A@#M@C@/D@#Z@F@/G@#g@I@/K@#r@L@/.N@#@O@/ZQ@#@R@/T@#@U@/W@#@X@/Z@@[@/ ^@#@@^@/6a@#@@a@/bd@#@d@/Rg@#@g@/Bj@#@j@/2m@=m@/"p@#9Fp@/s@!@s@/v@#/@@v@/x@#=@@y@/{@#I|@/~@W@@/@d@@/@p@@/z@{@@/`@#@@/F@#@@/,@#@@/@#@@/ @#@@/.@#@@/<@.@/J@@/X@#@@/f@@@/t@ @/@-@/h@##@@/N@#/@@/4@#;@@/@F@@#T@@/@b@@/̿@o@@/@{@@/z@@@/B@#@@/ @#@6@/@#@/@@@@/b@@@@/*@@@@/@@:@@"TLP=ƽk* %8R*@n@ %8_/@@/ @@/ @@/#@@/;@@/S@@/s@@/@@/ @@/#@@/#'@@/O*@@/{-@@/0@@/3@@/6@@/9@@/<@@/?@@/ C@@/F@@/)I@@/CL@@/oO@@/R@@/U@@/X@@/\@@/K_@@/wb@@/e@@/{h@@/kk@@/[n@@/Kq@@/;t@@/+w@@/z@@/}@@/@@/ӂ@@/@@/@@/@@/k@@/Q@@/G@ pJ$/U@@7/c@@7/q@@7/@@7/@@7/@@7/@@7/@@7/@@7/s@@7/Y@@7/?@@7/%@@7/ @@7/@@7/@@/@@7/[@@7/#@@7/@@7/@@7/{@@7/C@@7{JBI/@.X@@I@.0@@I/d@.@@I/@.@@I@=@@I/M@.@@I@.h @@I/@.@@@I/:@.@@I@.@@I/@.@@//@.@@I@.x"@@I/}@.P&@@I/$@.(*@@I@..@@I/l@.1@@I/ @.5@@I@.9@@I/O@`M@@.8A@@I/@.E@@I/2@.H@@I@.L@@I/z@.P@@I/!@.pT@@I@.HX@@/o@. \@@I/@._@@I@.c@@I/d@.g@@/ @.k@@I@.Xo@@I/A@.0s@@I@.w@@I/w@.z@@/@.~@@I@.@@I/H@.h@@I@.@@@I/|@.@@I/@.@@I@.ȕ@@I/G@.@@I@.x@@/y@.P@@I/@.(@@I@.@@I/L@i@@.@@/@ o//@.`@@.8@/q@.@/@.@@.@/L@.@@@.p@/~@.H@o . @@.@/I@.@@@.@/{@.@/@.X@@.0@/4@.@@.@/Z@.@@.@/@=h@/@.@@@05p5" ڀU %_(@. @@@"v @/t @.`@ @/ @"@@@/f @"@/ @.`#@@.&@/\ @.*@@/@.."@@. 2@%@/Z@.5(@/@9+@@.=.@/X@. A1@/@.D4@@.H@7@/J@.`L:@@.O@=@/@"`S@@/6@WC@@"@[F@/~@.^I@/"@.`bL@@.@f@O@/v@. jR@/ @.m@U@@. qX@/t@u[@/@.y^@@.|a@/r@. d@/@.@g@@.j@/L@.`@m@@.p@/@s@/& @.v@@.`y@/b!@.|@@.@@/"@.@/6#@. @@@@/n$@@/ %@.@@. @/B&@.@@"@@@/'@.`@/.(@.@@@.`@/v)@@@/*@.@@@.@/b+@.`@@.@@/,@. @/6-@.@@@. @/n.@@@/ /@.@@.@/B0@. @@@/n1@.@/2@3 n@@=  @/03@- @@= @/\4@= @@" @7@%d5q"@6_y5[ 9< nU6 *@@5LF ! @/06@@x@@.G@y@/|7@.DH@z@/"8@@{@@.I@|@/n9@.@@@@.|O@@/`?@.$P@@/ @@@@@.tQ@@/RA@.R@@@@@/B@.lS@@/>C@.T@@@@@/D@.dU@@/*E@. V@@@@@/~F@.\W@@/(G@.X@@@@@/|H@.TY@@/&I@@@@.Z@@/zJ@.L[@@/K@@@@.\@@/TL@.D]@@@@@/M@.^@@/.N@.<_@@@@@/jO@.`@@/P@.4a@@@@@/>Q@.b@@@.,c@@/vR@@@/S@.|d@@@.$e@@/JT@@@@.tf@@/U@.g@@/6V@@@@.lh@@/~W@.i@@/"X@@@@.dj@@/jY@. k@@/Z@@@@.\l@@/>[@.m@@@@@/v\@.Tn@@/]@@@@.o@@/J^@.Lp@@@@@/v_@.q@@/ `@.Dr@@@@@/8a@.s@@@<)o@/db@@ @"u@/@!lc @" v@`@wI/d@@x@@@y@/de@.@w@z@/ f@@{@@.x@|@/\g@`@}@/h@@~@@. y@@/Xi@@@/j@@@@.@z@@/\k@@@/l@.{@@@`@@/`m@@@/ n@. |@@@@@/Xo@@@@.@}@@/p@@@/Jq@.~@@@`@@/r@@@/G .visible .entry _ZN5cudnn24engines_runtime_compiled25nhwc2nchwBooleanTransposeENS0_18 _params_tIfEEPKhPh( . .align 4 .b8vNu_0[72],u64 .ptr1U1p 2 ) { .reg .pred %p<26>;b16 %rs<4732 %r<18164 %rd<23>; ldZ!.u*O1, [QTl0+16];2Y.403Y34Z25Y56Y.487Z48Y6/19Y2/20X  X1Xcvta.to.global 1,*c3; mov!2ctaid.x; shlc322,8/R3, %t-Qadd.sf&9,2^Sul.lo310,6324, 7zr1325,"31#6,2G70I%r26J87, 3; setp.gep8; @%p1 bra $L__BB?  1. G%#10(Q40, 0Z2ZC#eqQ12Q$hi9u4!3j#lp&313&+p43(c2; sub'33;23#3663&p13(58;f7; madg&39+36"EJ9-46% w4 w$430$ J 3C.s64Nd4I4:8\%rd5]; and$46~ x4<3#~3u16:!s1#47J41; '3:c1Ik 55167&48c 4 '503&+p7e5( &52;5{5# x5 &553&,p65'57; &585"E-86% 6N $620$ J2#63I7660 I%rd7$65~ x6`X>r65#662s $T2; or2)5).2) )8)71)9)R&67d *6} *&693&p 7o) +&71<767/# 7 +'743&,p9(56; &774"E 7% +8 +$810$J8 +y#82I+9+8+8I%rd9+$84~8<3# + #85+.2cd 4'4'7'4'  <!(1 93)C oD &86f *8, *&883&,p18) *'90<*9# 9 *&933&#p1  9B) +'95< &96x,93"E9s 97+9 +41001%K#10X 0.W 3101N 11? 2 10n 144103 #1038O:1049H`? 8979995949!9491 :5:6:6105h ;!104! =61076),p1 !10=, A8109@C19E1 0 G1 R *82\ 3\4i  \]&30])11^,$, ^^7^^8^9^ ^2j 41O6)#p1g1{, ^L@, 1r& 3j 9^3 #p1z- 1|~1` 1%JZk) ^3Q 6^3J]QU 8^311 ^ #145^81^ 5i^A 3 '33^ E3, 6*^7^*20^^o  1h'! O),p2o #14R 5 1@^& W" ]*#p2^- ^A59G ^5v2^)53 50 1! ^5] b 1$T8P^s1t1^ v1 6w'^1^6i^  6R ^ z  h] *23^4^4^5^h ^"! ^)-p2 , @:^& 47]*,p251- ^A ,9%1^)72  ) 74^7] k 76^$ ^13178^ 1: 8o9^1]7D8D,7:B 9Cwd txZ322]B~8: ret; } # 16#ToNchwKernelIfffLb0E!21;$DataType_t0EEEv$0T1_$oT_PT0_$&NC$8Ug$-U$.maxntid 2M1, 1$9w$9 &<8$fEf<30$@48>;'@.sha$%x&$NE5shbuf[422!#N)+6" X J"X06}5['3#LW2 ~$3~M) >{1'y%1&<U% %{ 9}$2!%$L);&Q&ye (5.`F&9 .1.z "-35%-1_!+T  "2g$! ! "7!2#lt2" %1#b'7[ (54> 4 y"  i3N   8[+3:13#1_-"1$:dd# + 5*,#st [D*f z 1011/ 9Ku}(e2|^1(6: bar.sync O~ Dj  "&# {6" '\'518 6I93S*1 /774#$r7l-(sul.wide$d3 -);3i43!U)}49;71H(ld %f 3%f14&["; fma.rn3 Z %fT*R| 2B -vA3/ X_- -]- &1##12!3:&52* ;5W &6876c2 5 -)"\*66Y"* *6w9#* wf 4/2]+:L^* 62 # 65G/26A2112;+9?2 7# 9e/30A31689; bra.uni1  "145u64-4vc 33H*  3/3 7D8372  # 33D+2/76"-7# " *39"6"5"7"f"!39Q10^ 4#3 9]$ %4 RS! !89 )43$9n$|fx$3   ) 2  2,*454% 5] %fy "45 69X *46879I6R  P2=@0#c&14 -<9%45lh_"B4 J" 4 J!_!_"K!_" P_P922Y4  899K988D[8294j_<929":9w9:992299 : /-_2529\i,292 9 X54abs41u`0f7F80;78P4, 40=. 1{!p7  > e 992 2Y 9xO+2$S## h E7l  9I3+GF# o 96 0Z>' >$89F)1@JH!I12)01V-123 132323] %f.R8 8394J% 9I;!!pj 3nK6L'j33G "' !&]-j!$f3F Pj9j  j<88?&56;Iji3i "Mi3 i4B M4]-M &f4GMM79Ma M )88MA !KM 2;1:2L9I9:%9_:d2:G2E<M 6< 0;E;:E<1;?0;?0;I<1;N E9N E9N Q0N 3h03div5w< I5$^4a:M5648;Pf5^ mT/^1%a593 59<9b3 9= 86 ;LMA-C2 ^z 6=  5 r33 43 8+/ `*86 3  H < ? <8<7<3 3 0 1( ;eT7@49;7@)A5s<3 7tX6;<3 5 j7ukN(`<4<]5<3 <3 /89 5)< |< 0-$ <8~/<e < 0< c3< 3< 3< S' \!9<\6b`<L:3 S)f ;:6<7Ne2jB 6q3U$|&%< lfc<-10<]\2a`" (7FI"<12`L!_"K!_!J!K!__PsZ44uYE  v7wv9t9mr494>n94}9?:99449x "^454y,494 9I2S>98;]92kgP5>%4> 3|pf qY=R >4r4r4rOsltuT+t4t4t8&tthG+|  u4uI4+:?r83u>5>x >[ nF>7>5>y>a * 9a >6b>5>x2( >M0j>:r91j>T5I >x9>J2M47J M>.4 71y6 H= E=>%y1y]M6 m#6> 9@L> -?> A?> A@> -?> ,@ 8/ y,=A=P95]5k yd6  yd5g;::<5g8\:e}"(71 y-J4= y5e8]5e1 yy2Ts;/#585\*4_5\w 85\;555xwxstI%wD;tc}x x 9C= xxW76x =xWjx8T55x3IC] w1Lv 2YZ[G B03DZ[VXx4WZ1 KZLx %Lx655jdRY] xr8r7r&B1 w2 _ :>6fFc:w3$kaUW:C>`L!_!_"K!_"^_P666)wFC6 )wi6)6)wR )w6)w}66)w656)w_J6)w69 =81 $l1+ovv 2v xvV < ,v666 98Q^* VB v[I66v3I?vV54}6u }6Tr19~v8 3!v 1?Og"}_mwVx1x 9#jv2jvW9jvjv w 22w2t2z#(Sd+v2: -W7+v229 ]989Mw 0 |;9uX' u O!u w 6#;Ri6"#LF2#I9;7%u;7]2"G2T*W3Gu2>"FL;"E;"E<"1;"Gu,>?yW,?;yW-?yWA=lE:9lQxW7xW794 4GuL6a lwW ;u1vWGu747GuR4 9Eo7Gu}77Gu7Gu&7Gu{JGu7Gu78n 9\ 9t ՙ V_V8e 9ױ7Z7Z7ZuwZuatIV 9u 9 u(4>uq76uf!u| 9 u 657Z7Zu3II? 98sܸ 9}t 90t  9t 9LItr 9&7UD0 9Brfc 9 t9]\2aa"'S12NesBi L!_"K!_!J!^!__PziY:88esG6c 9 K4ges8es89nes:8es}88es858es`J8es89 /:&98w4 g $s:$8q $sn888 :R $s\I88$s4I$sf8 1c81c8,zc8: 9I87r:r.:@_r2r:6r!:r+:4% :gr: gr:Ugr:?r :]E(r: (r:.83o6__hal@DGAG;e&<1n@2:7(@+B=J[H)J)I=I=J)I :(J<G=GP79!Y9@:s`@v @sc9B@s9B@sR+3:lB@s}9B9B0@s9A@s&9A0;=@saT -YO!dj';t 7 OT2IIs9I12 u// { cvtO .f c:`rs1;} o1XQ j1j|-] 16dZ3`3ʯ'rs:s}949494sw9oS$YNr<D9898sRT  |<StBsx x-s3x2x4x x=x*rs ftY|mY $M6`sB M 5] 6sMt(rsQJ< R<6 75s7 178Z5U$rs' 48 i3 8%rsi :$rs2 $9] ~ -) @9[2<:li =)v%U@yg1>W@fW"Q!e!e"Q!e"deP9/10/10wB!@x C,r6-5<A/10w/10wR6w:fw9= z6tn( pF_ +Jw[ T/10B< S(B<5wwSw 6w1!u 6B YYgwMX *3:/ww wWS ;8`?m   )>SCw2X 8 7 M5303 1e(x(x 306z  696(|)(31 ;%w 89x3Λ 2sv!xx63#z3+213- 8 59cl 8yc!p/22un $4En #3n # 4E-4mEK4e4y,4y !4 ! . pYye@4 !RR2 !O9 !y ! ?\@ !M9 !L<><<a 6; !K; !K< !7; !C6;_( @_>I _=G`"K9`"Q0`"1L,11"{`@V N) "`C {@/11"_/11"{R" U {1@ _9 Xu {&J "{w T{h7:@T5@/11"{" e"B6"N"1N"| N"1N"{wN"{] S_ @{:/22{:){qz{ D&;N"{N"^x!N" 8K N")>S#K{@ ~N" @E| # !6!@w9!X$| @Z@ V7}:Uli@~@c!g-e"./[_#HfX!e!e"Q!e!P!Қ)IeWePNuAB22~C@X l/1292R5t2}.(2\%T2 wBBD9B;u6uBJ2 [# 2 P j XS 2 2  khU?S 2>?  Bz( BB B9  #!Bz L8- B @B[$aa3aB ! Bz  B ByE [" ByPOB BV2"='0Bo6"N="K="BćU 6"&(@*o }AI"2X6E 3c3?I"G?I"G@I"3?I" 2@ F= G= P= 33c3j $j60 dd/13f 73c3f &R4f 8Mf '}K@3K@3c83c 83cu3e *&J e 0Bf+k J!+/13d ,d UH$v9\ZfXvʀ1n6bˀ}[ d3d΀w΀yI HwP;6bЀ >I+Ha &1"G 9a ^oc1Z*3226H <`' &^2c4H?_kbC R kkA^5Jb>;k 63b>D6klRkikb> lJeUlgy=I>lfX!le!le"lQ!le"ldlelP~4l4l~Lu65 0*~_4l~4l~Rl ~Ժ~4l4l9l~4l64l~e Jl4ll Q0pj[1pp>~5>~ 3>~9- =~4m;9l j;4[ i;/GF443;j+<~IB<~ "#8@g=f19x0l8Az\5z }| } һkzs],)22? :39b,= 5z} 3Jz}>z} d\2  P}= }1!>}$^ 3 3 { v v |&S 3Cf| 43v4vAY9s2KvR9vO9&c9g F 2uM2*uL<q97;uK;uK<u7;u |2 *\2?*\3?*\G=KX9Q)\5)\5S  |j6  |d5S %\5S  |RS  |S 5S }S 0! 7R( ,72-714:&3:Cg&p546; @%p5 bra S $\'5S  | J |5S  |5S );85{}55;5{w;{gI![ {\{ {|76N2112g|{wg|/30Wq ;{ >I{  uz'z;F{N;Iz ;;gzK;L5I[2!zD IlIiI; z;c Kg,Kf"GKQ!Ke!Ke"KQ!Ke!KP!KQ!KeKeKP%oX6L6LuyM- 6 yug/16P9P6PuyRP uyP6Puy~6P6=P/10Q 9Qu6=Q'6Quyf%JR6Ruy6R 7 1=&c= 6 5 B=B6y666 =d0 l66y Iy = %=46=x1x=xC==&89D ) D = Px=[Px!=PxP=>FM' Pw=zw3=?4 =w' w=T6b 313__nv_bfloat16fwwHFr DOz AO vwwzy'Hp  9(HK=Rpx)RHL!)QT!=Q\!=Rd!)Ql! (R <O& =O. Px7D]7x`H Zxe77L]7xRI7x 7x~773l 784Q#ltC=]x!35C=6C=70xk(\ x7x7T $bI]& %y7w7w7w%yw;%yo[-y ICn=-yF[VE5y[BO BO 8c * ~ C`:AL\  %.( ?:HWtbq$?zDUHon"5Hoh!m!m"l!m"lmPr>88{BH 9 H8{8{R {89i1, 105_T/1Պ9og$p4.(24w488{868{[(\8{8 Eo2> QȷEPM[?L7EG8=\|~8=8=8= >\|R= W[=8=8=d|F[l| 2\ &ӷ*ԷzQ,ַz3ַ1}ַ 1}ַB~ڷyR!!8!I]0v!P2!Z9!W9!O@~%30b64 %rd<48>e.shared .align 4 .b8 _Z# '2!U2K!S<!K< 3>>;!S;!S<O@?;!:E>;a(RHa)Qa=O#S9#Qa9a9#.`H T@W9#a9#6R# 6=B9#6~9#9#69#a'9#6w(\a9#>9# H<##I #9#}9#9#9#w#][a =B~Z%HRm9#9#F[L֞=BZ=B O$ 9O=By ^&8!=B܀ =B9 c7 j t q =Bb>Bk') oM m"`?2gv`?; m! m" Y! m! X! Y! m m PxC/20 /20 uCU K}g/20 }/20 }R }}I!-  3J }\-\ /20   #3DDP3!* *ꂅ]- *3:'x7! X[8!f EucG[ 9D 09DzA= \ #29D] $!9DzQ9D.!&9DzR9DM# I #9DyR9D(e@% 9Dw6#V=#S=#e4n &6#<(HJ"Ph6 ";?"O?"O@";?"!:@!N=!O=!Pԃ/211e,21!ԃr6 1e 81e8+ 7.~վ"ovcu5@/21!71e/21!ԃR} ԃA1e 6[( ;3Ob-664:46! &J ԃ(Jԃ/21 ԃ k$dǛ  *B843y/+o6[i [iA%r29[i8[i\* 1pwpIjIw CpFIp -aH y5):`  ^0?LY6tbq?  UM'o>Q>nh!m!m"Y!m"lmPbw=222T6 +!^/222/222R 2~ 22 ''22m(J22)4* ΀ 2l ΀j ΀iKI22$2O ΀ :;k<3Q=4>&% DX ;{2 Z9 W9  ;9^16C[ > U9 U< ;?; S; S< ?; ~:6]O??];?]O=p S9p Q]3]3 ~r6 ?] ?6(90:<7P <D3 ]3 ~R ~ 3 ~} ~ ~&J ~(J]3 ~ ^ 3^ ,~|\* ^ 3^ ,~w^ ,~oI\ DJ C\,~FI,~ <-<}Et:9O44{I{ >>({>.z!7Q>Mdz4>'4!26__halffA KH @H >y8]22)A:[21_ž"A+w<Ko(K]y!(Jq!<Ji!<Ka!(JY!='K ^u?9<VHP:;^5;^5R ]y4 sp4$13 @ypz<%r75Qssw5?56,%A Lzh^5z5G5z5GHu1%rd!$rd# 'd3͉ :3u16R/5MMio$52vh7k8k8kLF3 :z5K9^'5K0] #r7?##72(71/734zo3h436Cwide,~$d3*4I;3 xUhdB0UA1z5Aڏ1z// { cvt.C#s6 )47α6]8)X$stR'f8]fz1fzN55cD5[(][5+#(57;D;y8W64 6/15<#87286$? >'63'26?IYe #2%f'22/21 s60+528],662D # 965'/26Z!r6v26 *7#9@/30?584u55xz6['368L8< E7HT^#58pzk7yk9G[& &4mJ n0ffKpz$f10t  #3M4 4) (42E8s81*4>1!#:|=$343]  4tA}/449/321* j 1!3-K%f192D1ә#5] (E[ /+42*46,22 /23, X{5X[_3( -J-O>CXiX?>Y9{4rYS Yg,Ye"Yd"UYQ!Ye!Ye"3YeX! "YWYeYP(rY6Y6Y9Y9QY%9Yh 'Y8u ZC9 6Y{6Y96 # ;Y9Y6Y Y[Yh8Y9Y9Y6Y6<Y9Y 9u6Y66Y9;8Yn,Y6<Y6Y {YM3abs:9Osetp.equG`0f7F80#w4, 4096-iCselpw5 /p8fA 5e U9U9U666 {\k+ 66&{ h7%H3 "7"P+{Y0   2/   ,91 ) 2C,!/p1y yf8' 'M#  &94' 6fi!p  ) ()6)&/80)4) # 98T# ]f#)>f3059Q M*)86LH!p3% /805 is74 6" q6q'u"q3  *q9q q8q(!/p1a -396a AGhya H25a R9a O9a =|=c2` M2+` K<` J<\` 7;` K;2G33?6<3` }' 'X; _'J|(J?K9!K9!Q^7^7>"-4{6>"9?6 ;5i!7q332 5t7 S|7>"^7>"8f~8!>"],85>"7>"| >"=>"۵a"lt $p4d Rv %r8H@%p4R7>"7>"F~ ?7U( ѹ>ѹ-714=k>ѹ !ѹ7>"|'7>"|6 #?u ^6?]5?7>"|7>" /89}>"MN ? U9v )`& !8/! V7!7!7!}?=[<%;=; = W64?t??^ ?} 6 1 t??_5??9?e5?Dc$r7 ?l5? 7!7!}$, ?r@?C 9 #(80gIF <! ?/83 !?9n '3~!?/83?76[&6b 6l6i6?}?c!8g-8e"44P"48Q!8e!8e"8Q!8e!8P!8Q!8e8e8P$t@898999/10:2/10;h 9;=L  9<;8=9=8=9]=d9]<8=!~ =? =&9=9=9=8=8=8>68>) c @m,@8@~8@ 9@d*6~A#6!941~A08I~ 9f  A888 /`k+I888w(Axh2J32  $8$P+*I /835A6A+ A5z A8A, QKcA:r89A5!%CA $9cARAV5!A2R AM2q+:r93qA.8N"= Ao6!N"N=N"K=N"A=" a56L"'{;6+!H@!3?!G?!G@!3?!K 2@K F=K G=K P~99a9~6 ~19~9~9~}99o}6X( >`988 /@b6&p68QH@%p69 >^z8\b9aPJ9a9~9 ~4>U54>7f9W~~999W~jIh`  >eg >W~[99W~ IW~,607&?1_1'E_f~7-F}1^}B8)28KfS 'B}*9L9U} \9p[H"=D Eplpip:U}2qq oqg,qf"mqQ!qe!qe"qQ!qe"qdqeqP"r;/30q.30q| 6 h 5*|+/30q|/30q|q|| q9q {q* "q^q+Jq< qnq/30q3q|q:g ooi6o|7 ._2l| 8Z ? :k|S 3Zk|dII U:k|IAZk| Z1P *|4*| %*|6 *|!w!*|  f*| [7]8} ;39I 8&{`)84<<!{ 0={C }[M2MRM2M59M{} {2}!{ }{ [23'22 2792m{2g 8~!m{ } y- 6Y9s2MyR9yO9yAx 5\xW2xM2+9L<tx7;xK;xK<x7;xz2 [2?[3?[G=KX9Q[/31[.31V z*6 [/31V 4V 1V 8Oe z:8e [J[)P[[8[zT1V vfq 3KR( ;z_ V z&J V zJTzp/31V z1z V  ;} zV 1zjIZ9ZdUz IE0z;Hz;GzB;ey;? NV+;HoNlNiNOy;c2pPgxI "LPQ!Pe!Pe"PQ!Pe!PP!Pd!PePePPm=2Q2Qx 6 x2/32U9U2Ux ;x2UxV42VLxbJX2XxXxX1=#96<6 k.! x="2x 2xeIxW8P&=xIr(x%=Wq= Zx= Zx=Zx=X8=* O = x=5xD=W;& =w= w=Vw=Xw =Lw2bJ =.2f 9?S2_<j RCl GCn 5 m 2Z bw)[!<n 9.<3CFk/F!/E!!CE#!CF %!/E'!!=.FBCCCPn3\3Nfx< hx//33Lhx/33LhxLhx|B3L2hx Khx&J KhxP \P!'d4Q] 7 4Ѱd2NmxNmxh <58 75W rn,p '='=1(=x}'33;3\3;xfO\B ; .xW;xW K 3K}O!EV^ /=>9rx?j5Y1[ 1^9] +#11`) \9  y L#12t4> 3At2t 2u3f14auz8rs1 ^ ͕5=4ʚ!Crs16A=rp r=7 =K~^\8 .s1n *?9A B /0  ,22]+{) \3]4g?@>i?JCkdm?4{[<=ih"f"S!g!g" S!g"fgPq44{ CP.{,4{4{4{}44{464{cP4N>4 {]9p>5 scp[|[|  7*p84>}n8 >4|xO 44|`#J )E <OE|9xO$ #e #x2Gx0x x|x |4:;0:4 4 } 4 '4 e) 2g  i [2j !k i l `j~} + ~}f1~}4  6 '  ' 3 " 3|5#5#'5#P7 9;BBO5B5#5# Q_77^7B5S#0HY ՟8e  S#5S#fO%b5S#5S#S#^fOmM8"{AS#6A9R#,B$B9"(<#"'#"B9#B5 ]8 d@BT k BVBe2>BO25 g~ i" S! g! g"  S! g!  R! f! g g P>xED6 6 m rG6`1$r6N /36 9 6 6 | 6 6 66 ^P 6 "6 9 tm:D79D"D DH6!6!6md6!a!O!D ode; `7 ;6\=6i$r6:$ 64&;dOm#2c :d h%#_2(st`[B+528v*r6\  # I`/A5463105 ]Zkk#z|7R J# 395B025845]6!6!ND_8kH^O!aD6DD D@ %"' H@EAD]t2CB+D D]PCde !"'Dz :0D 0CDuWD D DV6#?q Dq6 #P=#M=#D1f/$O!<O#.<3J#J}=J#K?J#I?J#I@J#H?J#B4@!H=!I=!Pz!74f7g!84fwԼ Qw5r,r75Q;e/_Z)h< @0/37c!47c!47c!4}7c!7c!747b!4'7b!078N+LP7Y4{7`!47`! 4=Wf[;Wׄ7)11Dׄ7j 7j 7j ׄl 6Ae 1( `h f0h ZWׄ5IlJׄ \6֋ I68 ?d93 =d4pe0b f9 m)f`i9c  F AC8 1$f3X :b M$4D! Cfkg8&1s%7a]1(align 4 .b8 _M.anaka+CbC[W"- bi4bh"X?5: !bg!bg" ?5 ?bg\!R>I\=bgZbPwb8b8b6  +,8b8b8b}8b8b8b68biJb8b8 b6e ym877t7v86-85 8a=5~888`C;w 885ID5|9Q: E*|9=0~h>* Ёc=9΁ _9}/C5 }139kyC k:!k 12k"2v2vu3"3  2;Gp?o "21|@ 3 .?2i l 9n 89Y2j 6! jEa!j8jC[;u26jT9jQ9j2i _;Y!2SiO23iN<_i9;iM;iM< i9;i4q  _4?5? M9 M9 Q_9_9K!6 fR6_9K!_9K!9K!}9K!9K!{9K!'9K!J9K!9K! K! K!3 9 }9 9 9 l*I^9 9 IG ; =4=m~"{~=j~ =h9C]i4=JHCnCkC D~=e2MEiZ}K ";ES!Eg!Eg" ES!Eg! ER!Ef!EgEgEPq ?/40F.40FZ} 6 6BHZ}/40JZ}/40JZ}JZ}|Z}-JZ}K3JKNZ}dJM/40MZ}MZ}M/3?067 `8 48|?F4 | }*3:c|mI|* Y\|I||?W6?|' |?5>?U8?Z ? /|?\/|## /|?X9z {? {?}{?Yi{2u i{? i{?U } .entryf^+13__nv_bfloat16fLb0(F 7g!@Hs!RO!GO?&z87_5?P-H!;.HcCRt[s\ f"/tQr"CQ~"CR."/Q"?.RH!BOT!CO`!Pr_!1h`.41 |HG ;|0/41 |/41 | |1 5| |&J |\|/41 | |%b8IUؓ C?W!.fo$%f[SA}8 8M`4/3tW `U"lt?/e / %rg@%p8 bra ?h2: ret A}f[Y`h   HM} Q &fr[3_3/f __fUe8r)|i+ [GY}9z9|ՙ >^1 ` Q2^3f11a/`1}f| >^ 14aAv^2|L _^ ^ w4^ _%*4d442j n}g}3n}5?[ /? #?d^?L) ?7#_wc"()~8"$ wB0"9" ""4" ndqa_ "b9_&c hd6p`AJwxA%~[Hut"r"_!s!s"._!s"rsPu22VG OL0b+/42b/42b ?b2bY,2bc\2nWn ^1A4'y%47j_t1  29Aр}pF 6A_ р`+[   2 2 ݀  [DYl L35p~I2 0<G)f2p"LauE OEx"!}J"!R "!("!o*1p*2 f>~= 39 Z*3 G 4 !"5! !( !3"  )324 5937!I 78! Z"-2MEZ"'2$^$$ 3 .9f368 U793E K""2"O!aB2"h9"]9"5dmd"2Bs-2"b2c"Y<"X< "E;"Y;"Y<."E;"GD;-e.;փ/QeCOg$Y+9g$Qe3e3$FHA e/43$4$3$$|-@3$ $&J $\e3$$$^D>3Y$q| Y$3Y$qf[e} ce}  [O=#Y$ (CDM%2%D["#[$#($#D A$"'A$"Dr3!iD:DVD`9!w|!DUDq2D[2e!s!u"!_!!s!!s".!_!!s!-!^!!r!!s!s!P|QF4!4!MD 69!4!4!4!}4!4!4!64!Z^\!4!4! 9!u]<![<U>Z<~:7? X<<9r808FI4",10" eg9egf fg=H@%p9gg4"4gg4" 6=(62/64_bC25"W%4"4"% : [1" vdScFGF F!+#(!OBMCFb8F3C F F]##"#(9#Fa9Fc3cF~dFȉ3 ȉF ȉFW4$K F}6!$\=$Y=$Fɉ5%ɉa-6$2/?6cD$V@"D$A?D$U?D$U@.D$A?D$D@@"T="U="P~"5"i5I"6 915E"5E"5E"8i1FXi)52380`409 v %rIyH@%p45E"5E"95D"'5D"07tl e7A7, 6&(71Z=Je5B"5B" E ZF Q5K!5K!5K!x7I.h I! 5I!5I! Iu^u9o )gQ)Je0 B fh94*fAb$f1;!>U! 2A34 ~ ~4>Ei3{ 5j$d 5>i2=BR >z>w>%d?[(6?uAWt6?tt!?s!?s".?_!?s"?r?s?Pc{?6?6?a6 dJ-a,6?a6?a6?9?.?. ?0?9?9?6?6?a6?66?auJ?6?a6? 9?7:X87 \6~66I 66 IrFaJJW1 J J9o ;׀vHz* 1H93K 3KFt"3"L3߈wQ3OJ2w)w Lτ2τL w3 .τMYC Mq7AA kM ZG 6G OJ=2)G `9G ]9N&F b} =e-2F [2cF Z<=E;F Y;F Y<.F E;F @E m\8a@?A?aU=!Y9!Qa7a7@"F6 a7@"a7@"7@"}7@"7@"(9`"X(9"rCr> 4=;9\g&p5 !46W@5W@7@"'7@"Jh9d}4rd3@7>3Z3J2@"7@" ?[7!T}7!7!7!Tx7I`T7!7!T II !T??n"p ? ?i78i5?Vy8z8w8??q2:u?[t2:tt!:s!:s".:_!:s!-:^!:r!:s:s:Pqu@8;8;  =38?8?9?s9e1@8?}8?8?8@68@ZpJB8AB8B BA:A"f 1: 48AH8888sI888(  i _8&k 8@ IAAW6A;A ;%.~*}p^ A91y A@8Am, A A]#!AX9(P0wqA~qAYQ A A AW8P"2 p^OfLb0H 9J"9I%D"CP>"@PpA'$"~T'I0"='IK<S2/[_s"S B(R"<R"<S"(R"@'SG!;PA!<P;!Pbu:!9-b9 lI f09 f9  -C%rd1< M#<?q3%rd3HGglobal.u'1rs1 d1t{st.sharedQ 9 f}9 9 5f9 f'9 fx]#`4shlOP?45? ?4r?1s ]9 ] "7] Πa B8}7]z<Ms9 9 9 s_D\a   m9 9 m P ~F6?+38 h 8ƞ]#5 /77&\H6?7||?#s7q^ * })39} ~ m1m9]a$f1}V4 4 /42  .rs$3$ ~5 3'18X)5d44j B/449195 ,0`*f2Ay.@b ,_ K ]aNa~_u 9c[1jtq-@ T(oLm"l"Y!m!m"3mh!=?<SImfPu/50.50#I -+/50/50:8J+J\]/50>Mv9 "u8 uP P*43 =2fؿ?%p8BB.}( .o\ F ](6>K7979W 7{Pi i2i` v> A9a* 2C,!>>* *f6 ,*c *c 3c=Z 1r uA)B /26u$27a!p /276&L4 <t 98&304j/f359j)86NC!pb x" 56! cq>b vb 58!,34r6r')35r.% Žr9r3y%/p1 ,39 ^ } .entry 9:p\>{2 [9 W9>8c>k'2#  U2K S< R< ?; S; S< ?; C>;a'u;(Rc"Sg9c"S9c"Qa/51a.51"΀I XaȀ/51"a/51"Ȁ Ȁ1"ȀA&^#lt6 t6J "Ȁx] a|@d5@/51"""M @ ^9| 3 8e D 8=@ U"1U"Հ_D\`π]U"πLU"Tt!@9ElgU"*aU";2? a|U" ƀ|@݀#@9!'@@V ^&@Ptq@@k2on"^?2nh!m!m"Y!m!X!Y!mmPIvIB22y ;Rs2/5292s s.2s,2TsW]2jqjM5B#6D1 l7B%2 + 2 Z\ ~N _ ~ h{_\u uB6BB BB8Bˁ6ˁB6!%B* BB9r91NBVqB3|S E3B/2"E Bw6G"V="S="У"U-<8c1#AH# '6"296KF"P@* +B;?F"O?F"O@F";?F" :@ N= O= Pw 3(c3W 6R (c7 4c3S /53S S |S  R #69=@ =@3R 07| x67(7177J(c3P P 4P W5by@8Wbw @3Y<  4IX;{2Z9W9 %;k D;_'2 U2K T< ?; S; S< ?; >}: +8Y]:?Y];?Y]O=s S9s QX]5X]5 >}:6@ V]>}5 43w5 >}5 |5T]nys W7 T( _ >}'5 >}JZU>}q5 >}5 >} 3 =5\<S&}g5i 5i 5i }r I|\}5i 5i }IG<(i }=| =G|C=eB| =@5co3=Pptq|=k2oN{Q "Y!m!m"Y!m!X!l!mmPpi>66N{ 6C N{3696N{6|zR6N{666TN{jJ6N{6 %3!3>#967 /nI3 {>"6{666{mI{668'>)2%9UcWT9 "{,>W> z> z>z >X8>* a > Z>6zE>W1 >M0N> Pz>VPz >X 7Nz2K 3>.6 !Ao6__hal@!ZG!OG#! "!2!)zc-@'!:6@c.KJ47J!7I!KI!KJ.!7I">6J JG KG PNq 7_7' {@G ${17) ${7) ${7) ${}7) 7) 4| #>_8_u7( ${'7( ${T $_zUHyTy4rd3 7K32/ -{7/ -{} )7> *7)7 8 75WW rnVOgsg>2_{~7 7 7 {nS_g   G{7 7 {)   E SF 9Y{ @e[0g1] x19n] +#11[) _9 &xM| \2u4r@u3s13A\2u : O2v3f14av| rs+  = @|=`| )5>4*> 3s16A>*T >7!>5>`a%(^#ah} #'a !@!4!9!2 !,2__}) ^7i6@HZ@RGw| A ~ c@uLs@ts"_!s!s"._!s"rsPt88@G /,888}88868kT8@8 ] u@d vso9Do g b7p 88@~8 8 8 $95;5 556*S   8 8 )@7NK Vm SG9{h k  K |2H|0|  | 4 =0;!!6 !'!h* 2  2 "  xj N 14{ !6!'1  !' !3" ݻ 3v%&359&m7 V3!!V74! U"-M %U")2$(=% v#v\/f31T8F93ME -$9""8"OHy"V2"`9"]9"Bu u -2"[2c"Y<"X< "E;"Y;"Y<."E;"GD;-d6@ނ7IdKGb$Y9b$Qd9d9$F@A d9$d9$9$}9$9$9$'9$T8Dh5D9$9$ $]D=9T$}9T$9T$9T$nSd9T$9T$)T$^Pd9:Q8R 3 S|O8#AT$ Cl9S$,D %#(%" 2! %D]9#(3m$#'$#D: D9!i::!p!z!w!DޅDq1/!ue!s"dE-2s!_t!!s!!s".!_!!s!-!^!!_!!s!s!P{GF/60!.60!߆ID 2/60!/60!内!|b9!冞X!+J!ZfT!/60!!9!uU<!F/9FM1 8FG GtrKx12: ret oto.S"7z Sz"kn}f S" hd"!@FGF F !&#'!&#8!;FF?8F+C F xF]^jtgmgtg5#"#'Fz9F*QF CFu+Ft F FU } .entry _*; F}6" $\=$Y=$F1i0%Wu -6$2q?6c?$V@"?$A??$U??$U@.?$A??$"@@"T="U="P~"1i.61D"8i؜} 4, U#54` 5;E5]h7=6 0/61@"/61@" 1@"9+J ?"0a7a 7(71/737e)Dn/61="="4)D:M|Y7J!}| G!1G!5e=|F h`8I h E! cE! IcLЄu6 C69 g9 g E8f0 ? dh9 p *f"f1ч;<pE!Z 1i3" e G n4=#+f] ? ,15  >d28BR >z>w>? c?.?ud?t"?_!?s!?s".?_!?s"?r?s?PU{?2?2?R8 6 dH-R+/62?R/62?R R2?R?,2?RuJ?2?R?R?6& }27w7EUb 48-8 2?} ? ?xI 22 ImFL9 <F'G8т 0Ӂ +)f1a$ 9o ;΀w 139 'b 'w<!' 1'"2w cwQ3$p3w݈wʦwĄ2Ą1|AĄ 3 .Ą :2 g 2 89ZaA a'8a G dG 2G O\=2G `9G ]9G  F  }b} =e-2F [2cF Z<F E;F Y;F Y<.F E;F @ m\8a@?aA?aU=!Y9!Qa3a3@"F6 2a/63@"a3@"@"|a3a @"&J @"Jh/63@"@"@"?B3!K||R !3!Kx7I`Kc`K II u!K? ?m}"p } ? ?h38i5?Vy8z8w89?q2:uW " :_!:s!:s".:_!:s!-:^!:r!:s:s:Pmu@4;4; 6 34?4?4?}4?4?4@64@ZpJB4B4B B4A0f 2:A AG4,10218HV$6+6"ltpf2 f@%p9 bra h44V_4W_6(62b/64bC^9lWAbX_f82$$67 9!6866;dO;#u;'d3 ?2lst.sharedjb65+528vUHA:*r6[:  # 595463105xYZf\:;%r7R J# V9502584=Z44IAW6A8A 8A5x AZ8AA A\#! AX9kp2pA}pAY 2 Q  AV4P"AS2_fLb0H 9( align 4 .b83<H"ZCD"OCxA&8a5xAX)<:"=6<SKF7F "7E"KE"KF""7E"@6F29]!KjCY!PuX!5Kb5 < 15 5 5 4Ye1t>I, 52384b5 v %r]H@%p45 5 55 &08, qV"ltpR !35"6" Pa5 5 %6d U;  abf16.fn$%f[~U85 5 5 nO b] "1(  f0 2 E"1E"0cvt3 Si 63L  e0 L b  ^0  B6b  ^0 5 5 OHPm Z@9;}9|0>`1a P2#`x3f11aa1 BfkK .?\` Q$1%4B2w x4%` a4;5@ ʉ@x *w#¡_ a1  k @7q#eae*8#'C#9#*# Lf-_ #&d<u u5e6lSARsAec<qp"n"[!o!o""[!o"noPVw66 CB/,66691/1 29966666n@ kP66 ^g74z5J*9r7574g =  BM6= 6= XM}(O=  = 6= 6= IOEZ0bu"d> d y=dZ1I2" 0B<@ [a<7[q     ( "*1#*]F3]] ] 47 w!"^ T w!(T w!&32 T T .x%T59 w3w _ 7 "-x 2D"'2$",226# f3S8( VZ79܃3?E a""6"KMUB}2"d9"Y9"\dd"1UBo)2"^2S"U<"T< "A;"U;"U<""A;"NG@;!(e6;^7E eKC$U9$Qe7e7$R>< |<0N7$e7$N7$N}7$7$N7$N'7$NPe7$J7$ J$^$8 $7 $ d) dd8e H9d8G7 $7 $7 $nO A 7 $7 $ON"GD9 $-GD %?%3AGDs""s $"($"GD؅ #4"'#4"' #X##GDE7!e9GDRxEGD\9!st!GD-HDm2HDW2U!o!q"x![!!o!!o""![!!o!!!Z!!n!!o!o!P{E8!8!  9!ZBV9p7W8!8!8!}8!8!8!68!fP!8!8! 9!v;!9#-f9'89=7> =BF BFI88" 8;"8;"8;" i,O<"1 8="8=" OHFcHFFtkHF kHFn !"(!ABHFb8HFB HF ҇HF]Ӈ#x#Ӈ U"x#(U"x#HFa9F6W07"HFw8HF|X HFHF HFW8$G HFy6[!$X=$U=$HF[$])6$2;6S#R@!#=?#Q?#Q@"#=?#)D<@"P="Q="P}"9Ah9"臧6f 19"9"臆9"}9"9"9臗9"'9"0V7S+857EBr7, 2?(71!%63P%臊9!9! 4C@-Y9 !84CC3]lO} 8 CCw CC9!9!9!t1IMg ! 9!9!Inn9J Hf)"e0 "h9|K)fr@aCe1;D U 23 V V4rDh3 y !Cc1*9eR2AN vsDc9Dc3{*qTp"[!o!o""[!o"noPJz/70.70= 6f ),=+/70=/70==|@=3J=qJ/70==:G݄8܄ x6 ۄ zۄI 4 _vۄIEۄW1ma=:2~8U<;pB 9c,s :2tV MH1NHf&f&34 fa1" =b2x 3I2xȇxox2 x3 h. YB l7l  [‡G 2; } .entry9& <}Z^ \9 Y9& a:  a)2 W2S V< A; U; U<" A; <A6D!`<?=?`Q=m!U9m!Q`/71`.71!>6X J`/71!`/71! !1!9_XW(9"3b= 4E=.Y=9~#ge5~ !465z; !&J !J$R'31!6S4rd3?7>3=3wid!rd2!z !>B N9l>4q'71c!1> c!4t4I_9__c!4I2I nc!}>́ >nd"% d > >h `E5>RVvs>>m2qS "[!o!o""[!o!!Z!n!ooP`t]@22 6[ U2/72/72 F2@4> VJVlJ2@2 @:f 9 e48@H2x12: retoI< O8-(3_5 K3ZW&;& &6&s&s&_?+38(8&P2d4f?.9  @W6@@ @ 1. @@8@, @ ~@]~# ~ @X9mU~2U~@~U~@Y} @}@ }@W2_12; } `@x 0M HELFAS 0L @ x@8@V.shstrtab.'ym_shndx.note.nv.tkinfo`cuverCtext._ZN5cudnn24engines_runtime_compiled16nhwcToNchwKernelI13__nv_bfloat16S2_fLb1E!21P*DataType_t2EEEvNS0_18O 2nchw_params_tIT1_EEPKT_PT0_osharedreserved.0at.relOrela[099]_]A0Q7C4E7C4[i D9]_]=0 ;?8A;?8[0@9 ]_]Am;C>4E7C4[0D9]_]76__halfE 9B$;E(9B_H:A,a,c,aE g ,7,G4,I7,G4_XHA,a,c,aA^ Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a7Z? 9<;?9<Y4:5[][?n g7A4C7A4YB5[][; k;=8?;=8Y>5 [][?o7A4C7A4YB5[][(* JJrT*Q ,T&*Q_@+A$,a,c,aEz X, 7,G4,I7,G4_XHA,a,c,aAD Xq;,C8,E;,C8_XDA ,a,c,aEXu7,G4,I7,G4_XHA,a,c,a/ d|A1>3A1>S2)UWU9^, _7;4=7;4S<)UWU5 e;789;78S8) UWU9:i7;4=7;4S<)UWU/B0y?1<3?1<Qw2%SUS7$ _794;794Qw:%SUS3 c;587;58Qw6% SUS7g794;794Qw:%SUS( HN*K,N*KY+5[][?v X7A4C7A4YB5[][;^ k;=8?;=8Y>5 [][?o7A4C7A4YB5[][)F@)/rF+B-E+BQw,%SUS76 Y 794;794Qw:%SUS3 c;587;58Qw6% SUS7g794;794Qw:%SUS)j@*s?+<-?+<KS,MOM1V Y7345734KS4MOM-8 ];/81;/8KS0 MOM1a7345734KS4MOM%25RBooleanTransposeErfp?hPhj/l,debug_framei anv.callgrapprototyponstant0؇`I!wFFFr Fr FvFvFl -7<Nzl NNv Nv NzNzNl2BtlBBps Bp BtBtB]<Pw$Nz]N Nv Nv NzNzNd;,~6nxd66jU 6j 6n6n6d- ~2lfd22h3 2h 2l2l2]^wBt|]BBpW Bp BtBtB^x2ll^ 22h? 2h 2l2l2^ x&fR^&&b &b &f&f&JS-,#-_pmerc&/) 8bHabLu Lu Lyw Lo E 4T} TTy DoT T}T}To JHwoHHs Hs HwHwH` :&z$T}`T Ty Ty T}T}Tg<qg<<mj <m <q<q<gl 2 8org88kH 8k 8o8o8`+zHw`HHsl Hs HwHwHaS,{8oxa 88kT 8k 8o8o8a {,i^a,,e& ,e ,i,i,M-/- [(\ [WI cLu Lu Ly.;>?  7go TTy DoT T}PJoHs 2oHw ~&z$` z$Ty>~T T}P.,Dg<mj R `<qxl tgr8k0p~,z`zHs~H Hw Yd v `a x{8kT pk 8opda^{,e& a  ,iXk.4- "F"`"F<`Pw|@PB P{@< ~ Dq X{ qX X`ZqLu Bq"DD <0% D6|$b |$X{NX X`(i@ox r b  @s R |iz<mV i<qx+,)@B-b|LuL Ly0 (c }<mb  b0 <qx0  rclcf}0g4 `g 0k`E \˷reserved.0@Vsymtab`.shstr/.?_shndx.noteb#tk\UcuverǸ[V1!][9i%nvSmem.offset0 .0__nv_RSMEM_0_0_aliasP3cap´Ompat4. 3b4l-LDV[^_?`< 4A4D7C4E7*Z3VB0\^]_]8  0=8@;?8A;?7VB0\^]_]< 30B4D7C4E7C3VB0\^]_]2*%h-847B:E9B;E9AZ^8`baca@ 38F4H7G4I7G3Z^8`baca<78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca2?9427<:?9<;?9;T4,Z\[][: 3,@4B7A4C7A3T4,Z\[][6f7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][#7 -N:2)Q+T*Q,T*PZ^8`baca@ 38F4H7G4I7G3Z^8`baca<78B8D;C8E;C7Z^8`baca@ 38F4H7G4I7G3Z^8`baca*@t>,/>2A1>3A1=}N  T}V}U}W}U}4L 3 :4}<7};4}=7};3}N  T}V}U}W}U}07 68}8;}78}9;}77}N  T}V}U}W}U}4 3 :4}<7};4}=7};3}N  T}V}U}W}U}*T;0<y2?w1<u3?s1;qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq.748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq#sK+N*K,N*JT4,Z\[][:F 3,@4B7A4C7A3T4,Z\[][6j7,<8>;=8?;=7T4,Z\[][:v 3,@4B7A4C7A3T4,Z\[][$uowB,E+B-Ey+AqLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq.2748q6;q58q7;q57qLRqTqSqUqSq2 384q:7q94q;7q93qLRqTqSqUqSq$,Q;*<e,?_+<Y-?S+;MFLMNMMMOMMM, 324M47M34M57M33MFLMNMMMOMMM( 7.8M0;M/8M1;M/7MFLMNMMMOMMM,l 324M47M34M57M33MFLMNMMMOMM25nhwc2nchwBooleanTransposeENS0_18 _params_tIfEEPKhPhj/l,debug_framei anv.callgrapprototype,}onstant0Wlc0I 3JFr7FF Fvr Fl(:A@Nz NNv lN NzNzNl#;2@BtlBBps Bp BtBtB]@aI1$Nz]N Nv Nv NzNzNd=,86nxd66jU 6j 6n6n6d- 472lfd22h3 2h 2l2l2]pJ 1Bt|]BBpW Bp BtBtB^ w2ll^ 22h? 2h 2l2l2^ x&fR^&&b &b &f&f&J-+ vQ# g !@u "0)0n@ @x < H0 @0  H2 ] 0  uH0@ 0 C "H 0  Hh d0  |H#h 0 J )H 0   !H "0 # %H@ L&0 ' x)H@ *0 R+ =-H@ -0 / 1Hh 10 2 4Hh `50 6 8H@ %90 f: Q ?H @0 A CH@ &D0 [E 4GH#@ G0 H JH# hK0 L vNHh O0 >P RH R0 S UH` KV0 W YYH Y0 3[ ]H@ ]0 ^ `H@ |a0 b# dH  Ae0 fH mhH i0 GjH 2lHh l0 nH oHh p0 qH sH Ut0 uH wH x0 7yH zH {0 |H {~H 0 1H H@ 0  H uH@ 0 + H Hh 0  H oHh 0 % H H@ y0  H iHX 0 H ږHH e0 H KH ֚0 H H@ G0 lH -H 0 ݢH Hh )0 NH H 0 H H` 0 0H H 0 H H %0 ZH 3H ƶ0 H ԹHH g0 H uH@ 0 =H HH 0 H H J0 H XH 0 H H@0 H jH@ 0 H H@ f0  H LHH 0 !H H@ H0 m"H .HH 0 #H H *0 O$H H 0 %H H 0 &H H@ S0 l'H H@ 0 (H hH" 0 )H H :0 S*H Hh 0 +H OHh 0 ,H Hh !0}:-H @&%VRfrH10.x v/ 01 _2 34 H56 7 9 89 : . ;< | = #>? e@ AB HCD E +FG yH IJ nK LM cNO P 4QR jS TU ;VW mX YZ 8 [\ j!] "^_ E#`a $b (%cd j&e 'fg =(hi o)j *kl :+mn f,op -q .rs E/tu k0vS$@|  (( $,0 <6\h% h&\h% hh0 V\ h\h0hhH0h0ph$)D$h)@8@1D8@1g 8@1xh@Eh@E*Hg<@1h@1*g@Eh0hh0*Pghh0h@Hh0* g0h0hh0)X gt8 )hx1(1h1h 1`XDh101hE8@1hh@1X8@18(@Eh EXx@1phh@1h@E)@g 1h8 1*g Exh@ 1h E)Hg 1h 14 18h0h8h0)Pg xh0h+@h0* g@00h 0hpH1*XgHh0h@E)(g@Fh@1h@E*`g@Eh@E*0gEhp@1*gL)hh@h0hdh0)8g$,h0h0*g0phh0hTh0*@g &4NVIDIA CorpAS?P6`ptxasCuda compilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/&;" ((0)*,`,0-z-0j.0Z/xJ0:1*23 4456789:;S0|0|yxyvvssppm8mj0jg0gd0daa^^[[XXUUR0)XO0OL0LIIFFCC@>==::7074041x1..++((%P%"0"00k   ;  0 0300c#* 0Tx,Pt(Lp$Hl Dh@d<`8\4X| 0 T x     , !7 n P!9H@!L>LJ   = } qX f1bX6>o @ 9PP Lop H0@0L H p Lp$pHPL@H@L@H@L@H@L@H@PL (PH@L H_0 pL_ H_` L_ H@ LH@ LHLHLH@,x9@H@L@H@L@H@L@H@ L  H@  L  H  L  H L H@L_ иHXL|&HLH`L H@L@H@L@H@L@H@L@H ` L" 7p !H "Lo #H$L  %H _00&L_P'=L&`d< 8&(pN 2?5&'*0@'Ld'4N|,'45H'D(*0<(t`( (7H(<(Դ80(l)8)+H\)4)&)d)U&)*,4*Q,X*\|*?0**$*4@H +T0+-0T+x++&+L$1 7x,|,,P,-Ht,D,ܴ60,t, -6H(-<L-& p-l--]4Jx-4.4K0$.dH.9/0l..,.ĴMH.\.O0 /D/$h/7H/T/90$10M0AL00S|zd08DL-5A{A8\NS"y&bwqL syy2EyРPy!}r"wk`cw wP(Pq'0`xQ$x /x }pxx |0pb OG r{ i-Cr cwpqbx0 CrsK $s2E3$x02sN_!1t `r 0pO$r `'r/@ pr R<  @pra1@$r Pq{ (5a& r p@`1 r@pb0 r0Ap`A{-p$| P P0R6p$|@qO3A | 12 @&r@  $ 4 0|`ʀ ` cG $r<@! Yu&$x paxPPa$x   p@5r 0 0 0 0 070H5r@25r P*0% s5|5| 01x  Ay 5r `Ey    % $p0@% Sbyy:f"xv@!x 1r0|  ps D!A3 3  20 TGyTr.(r `A| [3rf0B>0A{q+/b P@3 @a* 0 "W5pW x @$x  u/ A x p 5x @px aG$1A qb{0E|`!rR``!12S0{`#`p/$~aO$|EMm"0# `1 |Pa$xp`iG`#y @#zbP` P a%x10xp0 Tr`1r@% % 01x@1p`Ex0 @#y_@@1t D P0@@ x_0`$! 0p>r`ay@@ Tx PfGDM@  T$x!-b@#rnu0 ?#y Pby l pC (@C0f 1tf$x  %  A | 5x 0v | `%0xO | 0 x H |0  xw @045r 0   3|5|  c$ sF%xPƠ4 p#( ms@580 01%x  4 04@ * * $6Gy E /+ P WO5  4 "@ 0 / <O &  W qb < 0 H$ `/ pvWO> x v % pa 'p `    71tP U5r@ E5rp Ȁ     b0p  Ȁ `  0% v | /   0 5xP<     *` 0 0 4P   @ $  10_ `" +bp 5| 000y T0$= 12P7"$.$i 42 p$P51x1p09 $-2 $V/$ 0fO$ $@݉p1T $# P2 $p0C@p0$( S#/ $b> +2$./$ "4 $3|71%x`0P36y8-2 $`=$x2b472% 2 p2 P3a#| 4 `35%$F1t 4`2 p2 %@3p%$ p3+d5 %`$ U148 0Dy p$fy@"% %@`%%0 7 x :4''f%x2 %Sy3:*+/60&* 4ڐ3@@3 (7 3'Ey06@;u$xP?N*`*`46`&0 3x11  3+3 ?B*0Cʰ    @E&r33  *@4A`@ @xoH   /@  0Cp `  `*" ppT>r   P`4 P@K  *PC/&@& @@F @@T>r0 p401A506Wi6ii0iP^[0i~"i+ i0i0i` i0350502WM,00 ph0 A!i Zi6pi0Yi0i0h0i8i:0i8i+T0r iZi$i$ ii .iLT0r ii, pi i;00h0i$i;PiiB@ 0@ 0"55i 06Wi@xЌ0P␐53n+$ ⠝Ȱ Pip']3r 0 N`    /$ pЎ& 1| pO00 x b| P!p `8;|@@ P@  6 |p  '1 H x0  0# 5 )5(0e$8 `0$ 1*  = &l0 P     Ѣ *Op4pp  0  ` fЬ00 ` y  Ы@ b@  p!1| 01 `P 0   @p %  7 | /0(p p  '0U | ` P % P   `=P  12   T0` 1$$0PE$|WOp ƀA@x$ $$ /b h/ O>@Yp$&p$ &!$p#p#!`#`#`3ʰ$9x P10P+gOP @%P2@2$/"`$ʠ$P3|P# PY`$P fVO#| 0%%1 & 02ڐ+ $#yp3bPPp% @ p p /PZp$p%E2* P2! 0 2&0 @2t ` +dp 2 p0/0L 0* @ 2    @x @  `*  `*/P2+( 0    b@(  13' 01 500 1%4LE5rVpe@40/0X#oX@54/eVfG%e]@%@% `e @%`ep2- `eЌ0 Н 39 |peT0r 0`e `e 340Й eE x `e $X30 p`e`e  `& 3= eW$ @YPƠ X( 4@58070`W(0 V/ eWO> 0   Ɛs& /   0 T0rPf >p  İ0` 0A'1? 0}= 12,F$ 0VVO0 $ P XXP62`XfP0fG2 f"403|0Љ42yVdfXfbо%Ȁ0 T0r0&08'* P+/Y`hg4ڐ3 >`+E$xP!p@$$ A .@*pg`g0CA$g Ȁ `*u"0vȀ + P $+ P@@>@B@  04*15x0(PZZM( &a X +  06Waiwii0ii0i~@2@2pw`51p C *b4 urU5rPu@ D00 0D v 05vNv0vb@5vpv uuȀ `uiI i0i0i` i035i50i60 i iXpPZ.i Xi0i @ji8i: Ѕi8i+U0rP iZi$i$ p3i .iL ii, pi i; phi(i;P*iiiB@ i@ 06 .055i 06Wi@x@0YP`w`w-//`Y `&`~P /$ 0 7 %/`0] 0[ 0Z` 0[  0[/$ p'  & Q/| \qO0'0 E xp P0 `+@ 1| @  @6 |pp 1| 010  \P   {5 )5($h ^Gy  E$8@ $ $6GyP @ 1@0`2@ rp$/p$ &!$p#p#!`#`#%ʰ) $2x P1p(-PX+gO0%  3 "&@% +$ "1 p1 p2ʠ$P 3|P#T$ 13`$`P h&XVO#| 0%% + & ڐ+ $#yp"p%* (p %J x+@ % p /PZp+p$p%E2*t ` /dp 2 p0/0L 0* @62  0  @"x :   ?J |  @/ 9 ?(+(     b@h/#|  13' 01 500 O&QO)=S%p)yEy%)eN" *Ck"P PQ(P'@'0`xO P)@$x=MPU  0Px`T R`x"M1 |'PcOG OQpOs"r 2TO#psbx`QPNErQas+P1 `]0s( $QQRbs!1tOPr 0 OTUN@'rTNar]"< UQV@3Vr+ @c{ S &W 4UX{W XQW*W  W,`Qp,pQ4  , & P,%0.*P  @ P"yV0,0  -#y@V (`,X/X 2|$XRX  WXC@XB` X`.`1nX F| @bi$r pXWW`-W=.!11 `̀1Y.W WW'V Yp0\\3 !~.\W\p\W P\@W%W]bY| 1 pp1 pV `e aZ`eVp0p\`VPe"|b 05xWPe0Z 0P0`2Pe@61t 0e" ]`@000 1 >pP %0cVPe8 XZ P%00[$rP%p^ @% y~`b`e&@%e C @0`,d `eI |@e6 | e O \ d 0 e%5|@7 |@X&P30  ee$@=e% dPp fp0(30U$803> fP4 0e* X $@3 3     p     P   @'  pA pA h  `e @p r p Op  Pp @ Pe Pe+b V @eW/>    0 2  `e0  pe  k@ / @  @ +b l1%xq? `  ` `  0 U | >r F%x 0` , 030      1/i 0m" p bpppL%p 0p0p  0  90[{= 10#@J !# ##-#2b @ "Pd #-0 /@/$17aO 5.p#k 0!6 c.@`pp@$(00 #@v P#@# 0`b@.0"Pb`0`"̰ 6@pd#% `#0"0Ub)5|T0 1#|`dC#*`10p##F1t2c `dP101$`c$+d @$%pce>p2 fy0$& @ P3c4@&  6%x`V05p03Ȱd*/02ڠ1P1 $`W  &20e  ̺1@L1@  `6 +1p_  p*p  pt/ʏ1`Mpd0$pd  ? 2 0? fq@ )  pd@c pd2>d   ` @  d`(?P0 29&  p d ?9d  O  O G/>r30" 40'fc@%fT 'f0&0Yf0f0ff P f&@f0f0%1>10|0G<f0e0 AfXP f, ff f8f+0ef8% &f f4f0 f 1Lf<00r `ff; ff+ f f f  '(fB 4f 0@15h px @x`<p Ԡ! ` ` 4 X'O#Ќ-bb | !`1| P0`F |00 0@  < |0 10 0< |"%x 5 X'G$0U$(м58e@$   `< !   d    P" P 23  p fЛc ` ` `"  P2| ` @   0P Ц0  0p  p %!O0  E |  Ə P F |  @  p= P 120 @ - 91(0 1/PJh"/ 1xQ "" /b VVO# /" a$|""`*@1`p P 8x /#g | O#0% 0* P# "/ /E5r0P#@ "3|@@T$ P/0"P/%0| !1%xp# &  @#` @d$p`% pdpp`1/`$`$50l +d 0?  /`   P P@ =  P0` +bPd0  P ;/ +(` ` ` 1 q@  1100 0 91( 0 `wp0%0)hwr '! @r%a/xP1'1x*11rV1V#!O0%0* K)#M *Q$x0'Z k"EycxvD`$`LV0(ix4 Y @096CG x}CbppCw{00@Cb'r/rr+ N@pR0rW  ar}1@$rK1'rWp'@rpC `urP@X0|0@O` 0`1$|P !#y%h,p)0r 11xP -s/y x O X Ex`DA0@p0pbpSx 0`G | @ *4pb @pb 'Gi"b" &Qr @r] ur@ 00J'r0 4`%PW$rNT$| *O(p"rN 0&fyjx TrPpxNpp% 0\; \* P0** uO$x1` +   @  @r RS  @R     *   PV* *   %0 )     @  @r U        *   0 * 0   & p 9   % 0    05 p #2' *' '@* %7 @ I, 0      p\YP gp;@Y     !  @`  4 B<0Ar@z1x`h * ?* %}߿7~73c߷w_?  A"B X@ d@  9X@1 9P,P8P120(P0)@P]RPpPPB+ Z!AP PH6? PT &TPH,@< < L ,,0GZ|0 LA\ 0P t @T82 y *t@tP   @@  & @@@ w0@ @ @@_  T@x@@@ P @   @@@& @Vyk}!< @l  P]#P @w~ D  x Q 3`?$     X    $  ,@$ ?d`` `$ \{`\<E\ @ <  < ( @@`@ǀ [/ <P  )@ )@   I` )@   @1߷F(,{Av|A7@T,,<=%1 Pl,x< LA 0 1@((-C001{,0{1 4pAQ0,- @lA0sA 1|A 0# )0@ 7\0xI-sASPw0<ٰ ݿ4p AX$ d {4AA A <A<$ <  PP y}`UpQ4  P0= EhUx0b<0@ Ͽ}` {  / , Y@/oa @@)@@/{Ӏaa@I`@)@@@X(@  @ )@   I` )@  a JDEDQXPMY a00 Qa0aWaaa9Pa0aa ߿6o ,/AoG  ,m8 ļحPy } @SP}߷& "\) @8u   8u @u xu hDH ϼ߷qC`mW'ϰ w60  y`Шxаp =Ǿoud/ D|</ T  ,,  `0u00>p0"|0ITP !3>}￿  7܈( H Xx! , |԰@@@װ@ذ@0@@@ܰȐ /y}G*$)T#6c@? &$ P .* y  >y{+".8K.<>4 \> 2 Ŀ7 ; .ow_ .\P.` {}d>63H6x   {=% =9`>8HW lB(    \< }.\\U-?{~  [ E?] 0*]D9Ap XA 0|< B``( 0 Hs//(;   D; d;   D<   [2  ?H0@ @0 A CH0 &D0 [E 4GH0@ G0 H JH0x hK0 L vNH0c O0>W# RH0c R0 S UH0jc KV0 W YYH0 Y0 3[ ]H0 ]0 ^ `H0 |a0 b\ dHP Ae0 f mhH i0 Gj 2lH l0 n oH p0 q sH Ut0 u wH@ x0 7y zH@ {0 | {~H@ 0 1 H@ 0   uHbv 0 +  Hr 0   oHv 0 %  Hu y0   iH 0  ږH e0  KH ֚0  H@ G0 l -H"u 0 ݢ Hzu )0 N Ht 0  Ht 0 0 H@ 0  H %0 Z 3H@ ƶ0  ԹH  g0  uHs 0 = H 0  Hs J0  XHao 0  H@0  jH@ 0  H@ f0   LH@ 0 ! Hr H0 m" .Hzr 0 # HP *0 ON H*r 0 % Hr 0 & H@ S0 l' Hq 0 ( hH@ 0 ) H :0 S* Hh 0 + OH 0 , Hh !0}:-  & 1VRfrH q-Q D ? @ *02   ER7>/T 2;( ,) "x@9@@["@z1 @H9~'@@Dp"*L@98  /%@@/=@@@/U @., @@/m @@@/@.< @@/@@@/@.L @@/@@@/@.\ @@/) @@@/U#@.l @@/&@@@/)@.|@@/,@.@@/0@@@/+3@@/96@@@/G9@.$@@/U<@@@/c?@.4@@/qB@@@/E@.D@@/H@@@/K@.T@@/N@@@/Q@.d@@/%U@@@/QX@.t@@/}[@@@/^@.@@/a@. @@/d@@@/g@.@@/j@@@/m@.,@@/p@@@/s@.<@@/v@@@/y@.L@@/s|@@@/Y@.\@@/?@@@/%@.l@@/ @@@/@.|@@/׍@. @@/@@@/@.!@@/@@@/Ǚ@.$"@@/՜@@@/@.4#@@/@@@/@.D$@@/ @@@/@.T%@@/@@@/߱@.d&@@/Ŵ@@@/@.t'@@/@@@/w@.(@@/]@. )@@/=@@@/@.*@@/@@@/@.,+@@/]@@@/%@.<,@@/@@@/@.L-@@/Y@@d _' D.20@@"T h@8/@@/ @@/2 @@/J@@/b@@/z@@/@@/@@/@@/"@@/>%@@/j(@@/+@@/.@@/1@@/5@@/8@@/;@@/,>@@/:A@@/HD@@/VG@@/dJ@@/M@@/P@@/S@@/W@@/:Z@@/f]@@/`@@/c@@/f@@/i@@/l@@/o@@/zr@@/ju@@/Zx@@/J{@@/2~@@/@@/@@/@@/ʉ@@/@@/@@/|@@/@@/@@/@@/@@/ @/Ȥ@@/֧@@/@@/ҭ@@/@@/@@/@@/j@@/P@@/6@@/@@/@@/@@/z@@/B@@/ @@/@@/@@/b@@/M@ H=< Q%'#5@8?( ]4 @C@<% @/@P@@?@ @/ @\23P? / @#h@@/@w@@@/@@@@/@@@/2@#@/^@@@/@@"@/"@%@/%@#р(@/)@@@+@/:,@@ @.@/f/@@1@/2@"(4@/5@#@7@/8@"@:@/;@.@=@/>@9@@/A@#G@C@/D@#U@F@/G@#a@I@/K@#m@L@/.N@{@O@/ZQ@@R@/T@U@/W@#X@/Z@@@[@/ ^@id@^@/6a@@a@/bd@#րd@/Rg@@g@/Bj@@j@/2m@m@/"p@#9Fp@/s@@@s@/v@%@@v@/x@-2y@/{@#?@|@/~@.L@/@Y@@/@e@@/z@p@/`@#@@@/F@#@@/,@#@@/@#@@/ @#@@/.@#@@/<@.@/J@Հ@/X@#@@/f@@@/t@@@/@- @/h@#@@/N@#$@@/4@#0@@/@;@@#I@@/@W@@/̿@AM@/@p@@/z@}@@/B@#@@/ @#@6@/@#@/@@@@/b@@@@/*@@@@/@@H:@@"TLP"½k* %8R*@@ %8_/@@/ @@/ @@/#@@/;@@/S@@/s@@/@@/ @@/#@@/#'@@/O*@@/{-@@/0@@/3@@/6@@/9@@/<@@/?@@/ C@@/F@@/)I@@/CL@@/oO@@/R@@/U@@/X@@/\@@/K_@@/wb@@/e@@/{h@@/kk@@/[n@@/Kq@@/;t@@/+w@@/z@@/}@@/@@/ӂ@@/@@/@@/@@/k@@/Q@@/G@ I$/U@@7/c@@7/q@@7/@@7/@@7/@@7/@@7/@@7/@@7/s@@7/Y@@7/?@@7/%@@7/ @@7/@@7/@@/@@7/[@@7/#@@7/@@7/@@7/{@@7/C@@7{JBI/@.X@@I@.0@@I/d@.@@I/@.@@I@.@@I/M@.@@I@hL@I/@.@@@I/:@.@@@. @@I/@.@@//@.@@I@.x@@I/}@.P@@I/$@.(@@I@.#@@I/l@.&@@I/ @.*@@I@..@@I/O@.`2@@I@.86@@I/@.:@@I/2@N@I@.A@@I/z@.E@@I/!@.pI@@I@.HM@@/o@. Q@@I/@.T@@I@.X@@I/d@.\@@/ @.`@@I@.Xd@@I/A@.0h@@I@.l@@I/w@.o@@/@.s@@I@.w@@I/H@.h{@@I@.@@@I/|@.@@I/@.@@I@.Ȋ@@I/G@.@@I@.x@@/y@.P@@I/@.(@@I@.@@I/L@.ء@@.@@/@.@//@.`@@.8@/q@.@/@.@@.@/L@.@@.p@/~@.H@o . @@.@/I@.@@.@/{@.@/@.X@@.0@/4@.@@.@/Z@.@@.@/@.h@/@.@@@05p5" 61"U_/(@=`@@@"@  @/t @. @ @/ @"`Z@@.@/f @"@/ @@@.@/\ @. #@@/@.`'"@@.@+@%@/Z@. /(@/@.3+@@.7.@/X@;1@/@9?G64@@.C@7@/J@"H:@@.K@=@/@"OB@@/6@.SC@@"XF@/~@.[I@/"@._L@@.c@O@/v@. hR@/ @.l@U@@.oX@/t@.@t[@/@.x^@@|a@/r@.`d@/@.@g@@.j@/L@.@m@@.p@/@.s@/& @.@v@@y@/b!@. |@@.P@@/"@.@/6#@.@@@@.@/n$@.P@/ %@.@@.`@/B&@" @@"0@ @@/'@"@@@/.(@.@@@Ͳ? @/v)@.@@/*@"؀@@.@/b+@.`@@.p@/,@.@/6-@.0@@@.@/n.@.@@/ /@. @@.@/B0@"@@= @/n1@@@/2@" @E@@=  @/03@"@@@@@/\4@"@@#@@"d5 "%6_y5[ 9E nU6@@5O !@ @/06@.P@x@@.@Q@y@/|7@@z@/"8@.R@{@@.8S@|@/n9@@}@/:@.T@~@@.0U@@/d;@@@/<@.V@@@.(W@@/b=@@@/ >@.xX@@@. Y@@/`?@@@/ @@.pZ@@@.[@@/RA@@@@.h\@@/B@.]@@/>C@@@@.`^@@/D@._@@/*E@@@@.X`@@/~F@.a@@/(G@@@@.Pb@@/|H@@@/&I@.c@@@.Hd@@/zJ@@@/K@.e@@@.@f@@/TL@@@@.g@@/M@.8h@@/.N@@@@.i@@/jO@.0j@@/P@@@@.k@@/>Q@.(l@@@@@/vR@.xm@@/S@. n@@@@@/JT@.po@@@.p@@/U@@@/6V@.hq@@@.r@@/~W@@@/"X@.`s@@@i @/jY@@@/Z@.Xu@@@.v@@/>[@@@@.Pw@@/v\@@@/]@.x@@@.Hy@@/J^@@@@.z@@/v_@.@{@@/ `@@@@.|@@/8a@.8}@@@@@/db@.~@@@"0@@!lc @@`@wI/d@. @x@@@y@/de@@z@/ f@.@@{@@@|@/\g@.@}@/h@`@~@@@@/Xi@. @@/j@@@@@@/\k@.@@@/l@@@@.@@/`m@`@@/ n@@@@. @@/Xo@@@@@@/p@.@@@/Jq@@@@.@@/r@`@@/6__half *O5_S6 H?0@?4C<8J<<b <p<d<g<n<H  <V5<J5<M2<T2<b AC<d<g<n<> +L90@9*C6$J6\ j^ahB P5D5G2N2\ A7 ^ah/ & *=N*1N04K6;K<b <p<d<g<n<H6 '<V5<J5<M2<T2<b 2C<d<g<n<62}0;$8;;8 B8V &=X[b<&] 5>5A2H2V0 9+ X[b6"69989;6B6TWVY`:~ 2=5<5?2F2TWVY`/$:=H1H4E;E\27^ahB 2E5D5G2N2\_^ah053?2?5<<<TWVY`: 2=5<5?2F2TWVY`0!+3ElV8:2956<6Nd \PSZ42 'B56592@2Ndx 3H+ gP SZdebug_frame a,lallgraphprototypeOloaction o; i";8=7G/Q g'=J1G(je4LG(DQ '(R5(F2(P2(L2(^hxD;(`(j(f(>"1-O= ?0@<4J<8F<<b <p<d<n<j<H 9I <V5<J2<T2<P2<b AC<d<n<j<>?#+>L90@6*J6$F6\ j^hdB P5D2N2J2\ Ak&+ ^<hd/  *=N*1K0;K67K<b <p<d<n<j<H6 '<V5<J2<T2<P2<b 2C<d<n<j<61;x)/0;$88B8 >8V kVXb^<&] 5>2H2D2V?+Xb^6"69986B6>6TWV`\:S d! <,2F2B2T='V`\/Rk_/H1E;E7E\_^hdB<p5D2N2J2\<E7^hd053?2<<<8<TWV`\:e ^5<2F2B2T='V`\0!+ eB0926<686Nd \PZV4  B562@2<2Nd7PZV n o:ۃY {9?A c,cr>'D94 Md'g4c7+C ( GV'a(T(94 4 Mb'g4[B7*\  4 D'[[T z T _2u6 Ta/Dn*(gHn((U T__U*+er+   9 S }2Q -@ZR . S  /T . 0U f1 V 2 JW 3 X 4Y >5Z \6[ z"7 #\ %8 :&] (9 v)^ ,: F/;!`@2< *3a 5= *6b 8> *9c ;? *<d >@ *?e AA Bf |DB Eg rGC Hh hJD Ki ~ME Nj PF >Qk SG \Tl VH zWm YI pZn \J f]o _K \`p bL Rcq eM *fr nhN is FkOt nP*+f oK 9pK0 eq rx` 3s`0H at0` uH v Qw`0 x ypX` /z@0( I{` a|H } ~`0 =hP U8` 0 m y0C$@|  (( $. l$ATp $p)p Xp2Dp2#PEpP3p\)0o3pM*o3pdp2pLp2`?tp2p\p2#@Ep03p3$ F@3pPM)o3pp3p@M*PoPMp@3$0 F@3p@3$ F @3plp2pTp2#` Ep2pP3$@ FpSp3 FLpM)o3pp @p2php2#PEpPp1/b  nnmmllkkjjiihhggffeeddccbbaa``__^^]]\\[[ZZYYXXWWVVUUTTSSRRQQPPOONNMMLL 0Tx,Pt(Lp$Hl Dh75 s`qu!ux z090 P  A d_do@6d  ddddd_`PdddHd@d@ d"$d&d(d*d,d.d0d2d_Ј4d_pp6d_08d:<d>d@dBd Dd_P @FdHd`t, F,s%6$ D* # $!04$" T|# ttld$0\$T% LDD' <d4( ,$$)04 $* T+ t,0$/ 4V3z@$vjx0́$vQT SyjS%"$vT 2z1Ur@ U U AU @sS $vqUP U0$ 0`$v U00 U0$(0`$v !V` AV0$00 p "/q!`O$v V $ 8P V 0$X0 !W AW0$ @0 n$vy$H0 7oPU!.` C `$``z 0@C!0$P@C Cp$h0C !/`$0`C 0C`$ 0 D OzB$z/qp$ @$v@RzX@F  Pt`p`$Ppxr#C@Đ0PXaP _0p`0$@0 @0C |z} P(PC~ \(0C z P# !*** x*upP# pCMY"pPAz]\pG @0PtpHuDpD`ydr 5tndpxqO zZ^P x$;`pp>rLT  pQvq ix1y_p 0GMp1zp3x\!Az  @ x@p` 1$t;p!r\p*r &t@GTx@`Sr[`ppx" 1xt0p$x$ Tx0 @qykpy0rTr@!m0a"s tn 0saps rq0s b.x qs ?!!Fx  t/s ab$r  r `k/$rpuOr aso4 n &r%  s0b'r ? Dr  @p'r P 0 0000@? P0`/'r P$ 0 @ƀ 0#r_`Ur 04 p   @ r1p@P@$ % 1r"r/P /-E$z0/y//10/0/z?a/(D &0 0/ P/E /a6f6H<  666 p6` `6 P6P6P6@P66  " P6 p60 40 P6 p 5,pP6} 0 P6hP6` !  =`6P6)4P'`6*,06, 6 p6*P6ȰBr P6@601P6-P6\ P6P69P60 `& (P6*$P6J r`(P6J+4p /P .P6<p,`` p6P6@60 6 p6 06 /#&0p%`6$r P68 2 >P6. `62P6(8`6 P6<p<P6Y@6 PP6(P%  P6*$6P6 !P6 @6 `6P60#6P6E &P6*$6p6p$'8P6W$ P6 Kp)P6B ! )P6 @6 )06,)/ @6/)P6/2P/ `)/ P6}@*@6+`(9`606 6P'/..`6/`6/9P6@5@/ `69060p6` 0`O @6 /0P6T0P6 @0P6 @6`6P66r06P6 P6`@P6hD /W 9p P6pD19P@6 `6P6-`P60`P6 @6``6`P6 p%3P6P6,9 @62p!Y0% P6 6P6GFp25`6= P6 %P6P6@6H P @6 6@6PP4P6Y9P6A P69 @6 `6 P66P6 P6 P6 P P6@bE`MP6o@6 6` 66M6fp65==*max=B:OmƏ zv=C# m05 Pm0m$6!P"" 6 60m0m%m@m@mP/%P/*PmPme`/ Pm`/*`/`m0`m@77f@7 mȐm2mK6;6-m66im% K`. 6o00r0 Al ȀX0mXPu `bȏs 0sI $x s !"@&r0 `%`` 4  ʠ`Tsp@r P0< 1su" r 00y@I r `( Jx 7 '$Ґ  @7 P  C`fOr!rp$ 0  PP4 @yP@9@ @@ Drpp$0bOs@ 4@ % PG@@@p b0p @ % P  P``T r  0 p`5P Ex Pƀ0 ) E pr06$r`   $ P P!p C| y C($ % ` 0C8@r 0pC 4 0pp@ `*:  3p@ `0P p$  * `` `WH0``$0 0   p @x_  HH rpT5xP3`bpsEud.x/s@ Vr P&r  4  p!r  `4 0 4p@Pp p$0@0   00u$rWO$P0 f$$rIr@  ` cDdGyp4l@fG`Tx 0xP``y A `cy C@(0C bp4p `p2s  0sb% ΐ 0   bbr  `/$r0` `  9Pp@9 >@ 9  +  00E 0@"p` ZhP3r     `u"x4 !rp /$   Ex P O0p*PCh$ P8 @ r$pR$@ 9P   G/$P&@ 4`` H(  %p 05t 4@ `0VP$ pƐ ppPb P1$r@  P`` p0  PP P  E    PX x! 0 Dr  @`Er  & p@p!qp% p%  ppp0p@pPpPpPp/*bP *ƀ`00W$r0 00p `- ``&`` 6r0p%d T 5rP p `p  @@p  # P!bp` `` `  ``` +````%@f 0`4 `Xp`!P"P% 0u(y *b0p`@p 4bp.s@Ox @ Fx 6$r @ %; 0 @  7rp P 4p@ "$rP` 1$r  $r 0$ `ذ E   ` fr 0@  P@ 0pHPh0 p & 2r 2r@bs            p @ 8 P  6xP@  ` P  `0r@-PpO'r@ E$rP( `p @0`p%@$P!r p!P % @D PP0 5@``'4 D@0r0%@@$tp0`/Ȁ8@7x7-#/+00.66()r 6up6*$`76? 6 66#,6 @#5 08665 P/60*$؀66:Z$p@6^T`$ 6"696Pp')' 66M`0P*6p0`0 )`0&76}D +0,(0,(966 7'/p/p/6`06`0* :675P0 696p 6P 07 6 `006T06 06 60*66 p 6 6 Ơ6``@6hD 00//p"6pD2:P6 66-`60`6 6`6`6 =6\@:@6 `3` B0 6 076G G2`66= 6 666'6 76@QC6( 'r6A 6 6 6 6Ɛ66 6 6 P 6@08EM66-6x06@$v1Kp:40LSvZ Sy %>$v[ 0e@Hb Hl Fc @s@ $vd @Svf0$ 0$v g Sv h0$(0$v i `C j0$00 p qPTzsO$v k $ 8PpCm 0r0$X0Cn Co0$ @0Cx $vy0$H0 AP<@!.` C `$``az G 0@C!0$P@C 0Cp$h0C `!/`$0`C 0C`$ 0 D Oz3@!p$ @$v@@D^@F  PR`p`PP$PpxqfUSv@Đ0Psaa _0p`0$@0 @0 TPz} (PC~ \(0C z P# !*** x*#DP# pEM@Q1 z"p`zF ]_G H`1z Am Om `Q@@P xND P0  fxay@@p 0pRpM`P1zP"3B@x_m1Az C?5xB @0x1p`@ 5 p`Y)t06fG6xS @]!pp@0x"Xx xA  SS*S%SpQ L`!%M"C @V0FP!S PCGC% `CS @Ck"x GM`CfbrpF@4 PV0O^ ZD% Lb0N E0WT @WG0N% D HT'r GOr 65t"p'r ` `GW W04 ` H4  P 4 P @4 c\ @eW T'rp Cd$PDT5Wd6rGP pKTNJ'r Z`$ K8'09e5'EypWf4 0`0dG`]`]6H&x pJ0hG6rh`g@ ]GpP44 @cʀ`J ]$ FP` c[g00P[@` Ppf`VJi(Ey@SV4PPFKW*0:r IP5 ] 5rg aPJPj P gH0`&%0Ngg+@JpX0`j `@N`Kư%`4 P4@_%[  4 0`000$ Iڀ% cg jڠi J `@`fPLX0m!@b0mE$ -0m?p`m kfH r` 0m0Pa 0 0Nk0m(W$pk$0m/ҐceZ*&0m"$00m E`TQ0m7$ 0m` m6r 00m`6V0m 0m60m`6 rxV0m`60m mp0m8 b@W @m0m`65 0m`60m  *00m(`6~ p`0mQ`6p4ƀ)P6 p60m+@ /Ġ@6 /f6P6 f0mmfl/ 6@6 m @ f f m6l f0m` `65P6@m 0m0m 0m`6`6L``<Pp6`# 0m@"40m9  g)   Pp p@6m p<m!n Pmlj@sf0m= `6``m@m `60m `0mZ?w1` p6 6 i0m" m0m@m ml@m@60 m `60m m`6*0m=P m @m 0m"00mf5t(#p`6<``);r9@m `6 0m0450m>Ct@%py*A $5t *P.@0 c%v m @e /@m /( /6x. / // /y///(D @l/6l6:t 4u 005 9(#z p"6066 P6@P6P6`P6v5P616P6) P6 p6`5r AP66$rP61 P6 ` P6hP61@6 2@65`6P6JP="r 4P6p°P6l  6 `6*P60]p3pBp.P6``6P6P6["$]-P6' 0P6y()r P6p P6fQ jl 0-RP6lP6' `cp*0`0p6 l`OlP6@6. . ep6 06 6p 6lP,0ziP,lll l+pz `lvl Nl0llj.lpk ll*䏠l0l`l@nln l ll l l0l @l^@*ll`lP @l lll@ l`l l llpnpl`ll0 l0 l/l+llllllll"@l&46by=0 Pj6 6+O3#l5 l=ؐBl9P6f57l85P6 lP6Ƞl P6PCgPlp1 l `6pll0/(0/l l @/@vQ@/l@/lllC 6 l=77920km*/m7 0> 7  m$@6U`60`6 0m p`6]br@p m ` mp 6 `r g`9 0mp0h` pL m} m pip+ m6A@m 6/0m6@mP66fm'65tB04 AЪ%ЪPm>nB>P35@6sv p _o Уmg/mm@ `m m@ У 6 p5 p4 |У6ZУm5 0 6M@6 -*@6*Pp 0 p6 Џ У PУY"$0K'r -``@ΰ 3r@02r 0 ` Uu"x0`6rP /$0`Q̋% P O0hP `0У  pУ P PP0@ `6 P @``   @70<$r'0 p@0` `- ``&`0pad$r_ EH 0 @p@+ @@ `@` `````! @   ]##  / 0 ( 0* T0 r 2p` 1"@pH = 0 $Ys @ p fb.x   *  Ws 9 ^ Fxp/ %E r 0%P0 7 0`7r <"r    p- $P `@5!r0  0p0 @` 'PP@ _5   14 `m/ У  m /@ /+ /0m /4// /-@$zR//7p @0 066fm4l6<z 6 =6 p6`6 0>P6 mVȐlP6Qm9 U 0 0r g! p`#p;4u$x  rY`4   5r ʠ@@B0$1r $<s@ < P 0 ( Jx   $*$0?P p8 p  DrP #  Dr @y<00 ppB*  C $ C4 ``Gr @o%T r%%R,$ Ox  P$pb!PPp` E r` 0C%p4 p0`cyW$pPp!6`P'`H`` pW"80 0@ 6@4C-&`p"pP%0p @!   65t >4 P!!P0`0 p+ 0$ 0000$0D` `)@A` P@A E rJ r% p4 `8T'r  G2sp0 5 p!p(0P0p&`0 0 @B p8p6r 08 p p@%P@T40r 0`pPC@ %$EY'r`%@# @4@p 00)r;'rp$`P@ 4@ % `T$P@ $@5r%0 @ )% P@  P- $ Pp+p&P*( Ex Pu0Ȁi" *$ؐ'$r$00r >  `@P 0!p C| y C($  ` @0C8@%r0#$ pC 4 P5  @ `*:  3p@ `0P $  $ p/` PF0(0``$  `p @x@@PPW$ p9'ExPP@9@ @@ r` p$ ROsp/ @ % PG@`@@ pb` p @@% P    P  p`5P Ex P0 "p E ` p 6$r` 9  "p@P $  C| y C($ % ` 0C8@`r pcy 4 0pp@ `*: ' `` P D ʰ' P0 `` &rWH0``$0  p`p @x_P HH rpT5xPO` fd.xP̰/@  P% @ 4 p0 4p$r0$00;@0 u$rWO$Pp f$$r5r@  ` cDdGypȀ PG` `0x`Jy`% `%(0% b p `p6s  p4b%  0   Qb5t U% `@90 `@ 9Pp@; 03r P70  0 E 0@"p` ZhP        `u"x6r0 /$ 0Ex P O0pPh P8 $$ 9P   G/$P&@ 4`` H(  %p ``@ `09pPpPp`7   `    `1$r@  P% p0  PP P  E    PX xT$r  @`Er  & p`p% p%  ppp@pPpPpPp/*bP  ƀ` 0W$r0 00 p``= ``&``p!p%d g  5rP@p0  p`p  P pp` `?` `  ` ` +````%@f 0`4 `Xp`%"P% 0u(y *b0p @p 40&*p." " & b " @ %;     7rp P 4p   "$rP` 1$r  $r$0$ `ذ E   ` fr 0@  P@ ` pHPh0 p & 6r!P(s   `#  0)      p @ 9 P $ 6xP@  ` (   `0r@-pO'r@ E$rP( `$@0`p%@ $P!r p0 !P % @ ,p% PP 5@``'4  @)43 0%Dt 30Ct0@mp*PmP/4P/*OƀH@7x7-#/@6Ȑ`6m $6 06x 36 ҐP"6 rP)"6T$ 6P6'$5046@6"$06@8@6 6<p`66,"$@E P6 Q5t;0.66( 6u0-08 6*$`76? 6 66#76 @#5 0866P/6/*$؀66:Z$p@6^TP 6686P I6 6 6M&6}*60,(66 7)'/p/p/`0`06`0 :6@5P0 6966 06T06 06 060*66 p 6 6`@6hD 00*/6p 6pD2:P6 66-`60`6 6`6`6 6\@:@46 `3ƐPZP 6 6076G G2`66= 6 666'6 76@QC66" PZ0:6A 6@: 6 6 6Ɛ66 6 6 P 6@08@cEM66xG"SzPSvfpsL $v g Sv h0$(0$v i Sv j0$00 $vp `gqDsO$v k $ 8P$vm Cr0$X0Cn Co0$ @0 $vx $vy0$H0  A tz E 0y<@!XNp Cp$`p H00$P0C C0$h0C CF $PC C!O0$ 0C 0z-0@!0$ 0$v0C^@ @`p@`@$@pxaL0D_@F a@$@` a`@D z@ T$PC } C~!⏀(0C \#0!@**** x*#D`# pEM@PQ1 z"p`zF ]_G &$v 1z A`m Om P!@$$`P xND P0   ay@@p 0PR0TMyOR1zPB@x_m1@Az C *5xB @0x1p`@ 5P l`Y)t060m 5p0$!Y0m=+xS0m6rpF0m0N0mX&r " h%Ol`n0mN` 0mJ 50m*030m+0 c[0m `6&5  000my0`6E c0ml`6A@b0m`6Mp`m kfH rs 0m0mf 0 Pmk0m(`6/ҐceZ&/0m`65`TQ0m`6n m6r 00m`6V0m0z0m60m`6p! rxV0m `60m mp0m8Pzb@W @m0m`65 0m`60m  *00m(`6~ p`0mlP])P6 p60m=i+/Ġ@6 /f6P6 f0m9mA 6@6 m @ mHa m6l f0m` `65P6@m )0m0m 0m`6}``<Pp6`#`6(@"40m9  g) 6 `6 Pp06<<06p=y Pm @7 Pm@sj@sf0m= `6``°<@m `60m `0mZ `6w1` p6 6 p60m" m0m@m ml@m@60 m `60m m`6*0m=z m @m 0m0 0mFF`6`6<`-P)`@m `6 0m%50m> m`% P .0 H%v m @e /PiOx@1E z0/ / // //$///(D @P6/@$v102PDx0`5Z `4]%`4/[ 0ge3b Hl Fc @2#23Cd 3p6p6p6p6+?`6 .`6 6`6@z `64`64P64 p6`66p64P6/P6 60 6 P6p6@z`6`6 P90@z`6 6 3p6p6 6 `6`66pp6/P6 60 6@z@6 6p669p6p60 705 66666666"6`t905u -/6pȀ6@6 `@P6P6`P6Uʀ 65 `6/0)`6 P6 `P6]P6@6 . e[e p6e `6 06+ 6p 66_ k06@c0z@j@6[dzq/l2l2l150Pl pli l0ll,"⏰h l Pl)l5l3ld 6 l5C P5 l`6 lPl06O06065l 06*ďl5l5 9_ 6Pll 6 65`llp3 5 6/5P656+l6666666"@l6O6 pj"6 6+O3#lPl`P6Z@Op ll `P6=0&rOQ plY% l0lٍEp&l] P epil+P lq  p`PW)&rƠlL lu'R k `#@yPTx,(l `6pll0/*0/p6l"@vQ@/l@/lN 6l07f`m+7, 0>7 m$@6Z6 mO66p 6JP @ m66L/f6/ `pm`P66_06kpPpmb5tp5@O=4 >`350xv`> utOn _G 6U  o0 `pmm ڄx@Gx6pm`l4 Dr)r`8?uOr ` 0s бppsjp0s ߬ub.xΠ!!ЬZi pmlPF5 0%m  [u P 0rp$ % pm04'"P% ̰4 f*@6rpƐFp@p  $ pm @pm )r @$  Ap` E r ڀ 0 0`m pm`s* 6/ 6@ F zpO /4// /n-p@$zbmTy/*70/ @6 066f6H406= 6 p6`6 P6PP6l9p5rP6  P6 D46 h 04 Р@0 4P6p404$ 4 `6P6)*"@6*`6*,06 6 p6*P6*6pP608@6 6 @P3 ,4p; 0/0P6E pP6*$0?0 <PW'r  >C?84p> p8 p<7  `y$ 90 P9 9"p`=2r@ bs@p9@p,$`0 Jx > @@ Pp 3pb`<04p0 P@9`C5rp4 p`CcyW$`#Rp>3_p``@@!R0 pW"80 z 9`?  4C-&p?pp?$p PA@?   65tв԰4 !1@P0`0 p+ 0$ @000<$05<  @A@AP@A/ @ J r 9 4 `A5`4   G2spP1r C5 = 0(0PP0p`'&PD 0 @BI rp8p08 pp   0!@TD9 0`pPC@ %$EY'r` p >P@4@p 00Pp$`0 @pGTs $T$P`@ @ 0P r b0 @ % P@  P`$ `ApE rp5 P*( Ex PEƀi" T  F`0&r`H   0!p Py ($` 0C8@!r@A`CpC 4 u rp@L@ `*:  3p@ `0P pCD  p4p`` WH0``$ڐ0 `p4P PEP@p1;OExP@ t65/M2zlxAz 5x Ax@ 0m6.@m Pm@/%p/*`m`m.`/$.@mE zP/@/`m `m@77f 7USzB`@7 m 7m6/06mK6K6m# 6 PmPm@>'v6hz$@K`l%. 6o00r0? A| /+6r@%`p)rP @40 04b0s %p`P`% ̀0 b`$ @? `!5t qp'r   pfO$r P04 `P @$ P  0 9$r  T'r:p$ 5P"p`6r5r  * ` H'0E'Eyu$r %bȐ`` f,@&x p7r@@9 @  044  ʰ $ @ pAp`00p  f$x Pp$b0$ 4 %p4@P0*0 P;'r P u  3pRP% Pp"P p'"H0f$uy`*$k&p`` `p`7pT$r P4@% P00`000$ ;  4p`$   W$@`P P4 Y%   P01r  0I r `( Jx  Hp 9 @   @ p @$r 04 @%@ ppp* : PD pp'  pisE r  ,`0?x  H r`6r E rP %4 p@@EyW$@0%04``E `0P80 `u0%*&@0&` 030 `0`%00r@ P  @ P!q` `  p+ 0' 0"$00$`5`0pP0E r0  P% %04  `60P0 H  0E r p(0P@p&` PW p8p0 8 5x  !06r 0 D9 $pp0` 0%$ Y'r` p p>P@ @ @@;'rp $fOs p@ % `V`0 ` !r p0@Ā% P     E r E$  `5P Ex P &ƀ"p *$ؐ0r % p Ir 9 P P $  C| y C($  ``0C8@%r@@pC 4 0`@ p%p: ' `` p D  bp' `'` 0WH05 ``0 ؐ  `p 0@PPR$pH rpT`5xPO`fd.xP!/@@  P4 6rp0 `4P0r0$00;@0 u$rWO$P  *04$r0%@ P$r` cDdGyp4bx4 `Tx 0x`cy C %(0% b #s`0 4b%  0 `"&  *bP090` ` 9Pp@; 03r @ rP70 T r5 5 0@"p` ZhP3r " 4  aps  `u"x6r0 /$ 05x P O0Ph H P  '2rp4P`/``HpP  8r pp9PPP0P6r0  %p @ p 0 9 P0  @7 pp p0 PP P PE0`T x60 d 0`Dr 0& p`p% p%  bp p@pPpPpPp/p@ @ ` 0W$r0 P0 p``  P`. ``&``!p@"4 0 Đ)@  Pp `P P PPP PP +0P P@` ` @P+```5r@`& 0`4 `Xp`%" % 0u(y *b0p@p`%4P*p." " @ 6x"@ %0;  0p@ Dr 0$p PZ'r  T$r a$r  0 *@ 00 0 ' @  6r` fr 0@  E r@ 0  'H@Ph @ & 6r!   #B`(Fr" 00       P0D@ 9 p 1$r06xP( `  0 0PP!5t(#PpO'r@5rP/`P2rP`'``$` p@ 0(!@ % @5RPPp  `%54 DP0r0%pp%vp%/T0r`/9 /@7o 7 Ȁ86/!)r P6+p6g8p 6!'$#60 6p66::?6 60%P'66 `00 .6(x'046xZ$0- 6=:60 6 06 *$P66H 6^r 66 5r:6oW$p2 66<P:6E `? #6#6 66 06# 6@!`66<6D $66`6 @`6<p!p@6}f$$06),6L75t @&6p`& & 0p0. &p0p0&05p06P`($ 6 P0P,2/6 3 66 066 62r |@) *0*06 `66` 6 0`6 0 6`@-E ) 6 60/66 6 6l`. 6`@6(%d69D  65`3`=p!1p6 `6OP p6 ` <6````6 666 6]6`M6 6 6/6666H66I `6E6 66 6 `7 6J _ 666P<66PPF6<@ 6 7P:666 6 6 P 605@6'866.6oWSz` VvfPsL $v g Sv h0$(0$v i Sv j0$00 $vp E@qDrO$v k $ 8P$vm Cs0$X0Cn Co0$ @0 $vx $vy0$H0 0A tz E 0y<!"NP Cp$`p H00$P0C C0$h0C CF $PC C!O0$ 0 0z-0;!0$ 0$v0C^ p3` f$@pxaLD_@@$@`saa0a@ |$@C } C~ (0D \z #@!**** x*`# pEM- `Q@ z"p0F ]_G &1z APFP z@0@@5tq@P xND P Cp pfx`ay0@o @`6CMy?R1z@BxAz U5xB0x@p`1$tTx0 0)\0"pfG6xSp.ep 0x  xA@`  SbrDS*S%SpQL@O`V"C @VPl0hC CGC% `CS @Ck"x GM@l6$r0m0mHG mr   0m` rC 0mL`_0m(030m+"$_@30mPM^000my0`6 O%v m.*0@@C m@-:z/%/ O..4`-./.(D @$v1pDx0/CZ `4.%`40F[ gze/Xvb Hl Fc @2/3p3d p6 06p6p6 6 p6p6p6+?`6 .4p6`6@z `6 `64P6/p6`66p6`/P6p60 8 P6 p6@z`6`6 7 `666 `p6 6 `6`66p`/`66~96664p606+66666666"6`tp70:u CƠt u6 @ 6 P6P6`pP6UʰwpQ/`6 PW5@'t6P6l&r` P6/+x P6C 5pa@6 0YP64 S0:kP6 XԀ P6p pPʀOl: pPIb]l<@>{ Pll 4 怣l@ʀ?l@8 P 䀣< @Wll+50 s-l"p\% nҀgl 0eʰl/El:~hPfl l `fMxйpO fb`o l l'/@Pe@fll@f`bМE0f 9ll `flE tl l` l p ‣`l`@lhDl plpDlP l@s`İl-`l l`l (ipp  lƐ@i p lJ⠣ l0 l  @z l䀣<lp'p pp l䀣lAl lEʰlCP6@6 . ed8z0g p6 06+ 6Ple6_ k 36"0z@j@l[dzqil2l2 6`l0Pl 6/Olll,1 l Pl)l5l3 6O 6 6l5Pl l`6 lp5 06O0606506*ďl5lPl59_ 6Pll 6 6lpll3 5 l 656+66666666"+06j55"bA : 06  6Ey0,l #6Dl=Ơl2l0V P6OP6 P6% B `6P6P60 @6 `6 '@P6^ @F P6P60@6[!p0_  ` +tP6(`l e/ ll0v /@#P6tl?ʏlb@66f6 =6lP6P6`P6Z`lZ P6Ol`9ljAHP6<l @6 .lp6 llp 6l%Kgj @ # o  @M8#) @Z#Vx$SL .nT%Xm) " #j@0"(@@Q@/@@R@/@.x@S@/F @. @T@/r @@U@/@.p@V@/@.@W@/&@@X@/\@.h@Y@/z@.@Z@/ @@[@/#@.`@\@/&@.@]@/*@@^@/R-@.X@_@/0@.@`@/3@@a@6@.P@b@9@@c@<@.@d@/?@.H@e@/B@@f@/E@. @g@/H@.@!@h@/K@@i@/N@."@j@/Q@.8#@k@/T@@l@/ X@.$@m@/[@.0%@n@/]@@o@/`@.&@p@/c@.('@q@/f@@r@/i@.x(@s@/fl@. )@t@ @ @ d @  !nD @@81n @@] |8X!#B"8,@P@ /6@..@ /^@.0@ / @.(3@ /@.x5@ /@.7@ /2@.:@ /n@.h<@ /@.>@ /@.A@ /!@.XC@ /$@.E@ /"(@.G@ /^+@.HJ@ /.@.L@ /1@.N@ /4@.8Q@ /7@.S@ /:@.U@ /=@.(X@ /@@.xZ@ /C@.\@ /F@._@ /I@.ha@h@/L@.c@ /O@.f@ /S@.Xh@ /2V@.j@ /8Y@.l@ /.\@.Ho@ /$_@.q@ /b@.s@ /d@.8v@ /g@.x@ /j@.z@ /m@.(}@ 2" &6@ SL /Z@.@M@/@#7N@/ @-#O@/ @.Z@P@/@.@Q@/J@#y R@/@S@/@=4@T@/@#k @U@/@@V@/#@W@/:&@=@X@/v)@.E@Y@/,@#{* Z@//@[@/*3@.@\@6@=@]@9@=V^@<@_@?@.@`@/ B@#a@/E@0b@/ H@-gc@/K@.@d@/ N@.@e@/>Q@= f@/\T@-Ag@/zW@.x@h@/pZ@.@i@/f]@.j@/\`@-k@/Rc@.R@l@/*f@#jm@/i@n@/k@.o@&j%H Vt( Hv 8pP@81Z X" ELF3S 0@! 2 Z Z@8@u.shstrtab.'ym^_shndx.nv.info.text._ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16S2_fLb1EL21SK&DataType_t2EEEvT1_17 TensorStructPKT_S4_S5_PT0_osharedreserved.0`0`D05F2^xG;`>6__half*O5_S6H?@<b pdHZ V5J2bACd>+$L9@6\p j^Bv P5D2\pdA7 ^/ "*( =N1Kb pdHF'V5J2b2Cd6};88VX  =X<] 5>2VX(9+ X669986TPWV:2=5<2TPWV/:J =H1E\p27^B2E5D2\p_^0B$ 53?2<TPWV:2=5<2TPWV0+3E28:26N8 \P4'B562N83*+ ;P debug_frame.relanv.callgraphprototyponstant0:@c I'qHqn1 )CP ['uPq" +Q D U'oDbq' B P ['uPi,87 8 zB |'i8i  6I 4mj +B"pbxb|Dc)V c4mp}44c b |4) ( G(g(;XnnSmem.offset0^0 1.0pRSMEM_0_0_alias11 $;*q^ !11@GDT =D5F2^^`>!v' <,>?@<b pdHL'V5J2bKCd>>( V l9@6\p , L7 ^Bp5D2\pdAu49^</ S  ( =N1Kb pdHF'V5J2b2Cd6$   =;88VX dX<j5>2VX(98o1*oY?1Y,c%F-4094 *Cd'g4c4 $9 ( &=V'a(T1C* 4 4b'g4[+7\1  4P' T[T [ _v';s95*kG' 4@THn(UHr_8oU  l+   9 Y }2,ʃW! s= P ^H- :. / 0 1 2 3 4 h5 >6 7 8 9 : ; < N = "> #? %@ X'A )B *C ,D h.E >0F 2G 3H 5I f7J $9K :L <M :>N ?O An*fA tB CH 6D jE` FH 2G UH ZH;x I "JkH VK rL`;&H NH 2O0 RP zQH R &S`H >Tc JUH VVxQR WS BXTU YV 6ZWX [Y (\Z[ l]\ ^]^ ^_D ``!a@Jabc bd cef Rdgh ei (fjk lgl hmn Biop vjq krs 2ltS$ @|  (( $ Q<U \h% hh/g 8h/*8g8 h/h0)gFphDhE)@g8/h/ h.7 8Exh8Eh@0)Hg0h@D*g80h0hEP%DhE) g0h0h8EXh80hh/)( g/h@0/h8x0)` gl 0hE*0 g` 0h80h%h )hhL @/h80)8g8 1/ # KKJJIIHHGGFFEEDDCCBBAA@@??>>==<<;;::99887766554433221100//..--,,++**)) 0Tx,Pt(Lp$Hl Dh!7@0 :!ux d090P P4 E"p G6Zf_ @Nto 5Ot_``PtQtRtStTt_0`pUtVtWtXtYtZt[tp\t]t^t_t`t0at@btctdt"@  etftpgthtitjtktPltP mto3ntotp S|S*V0'0300'D0# 017tF17 v1#4!H1'<1F 2'l627f2##x2'423̴$02'd&3#&0V37;,3#4'H3'\43(0F4'/"$? )H'!T53+91534,H/L5#-0&6'|h/+# H6|) aP{ 0{Sby%6x0cz@z@by -;`C p&0ps1 #{ !" $ { Pb$|dO0#0{ 0R |p` { # @{ % ( s{ b $ 0 O{ `$8 C 6C !b.@#H 0#PE{0#X pD P$h C 1N#`0 x /`  Pa `C@b@#x@{ " $ !I @$  $ ) $ C $ C $ C $ C0$ C # !I$a)#CMx r@pBczTG >0  `"z 5pr ?pPCC@qny. $t@@$x  pO |p @ x$ P p>rDxv0Vxpyp %PaG OM0@@r3HxX 0@$x! S6xK @ xo1p`` `5t E00~ @1$t@!r&t GpxP! PSr1&r`px"@|@`@$x# !r4p0 P0qy}(y SrSrcy0"s ! 2s qps #@b0s 6b.x 0qs ', !@P6x T/@ ab$r r P/rOr s4 44 vb.6x9% a/$r 0r @$ 1s+p'r  @4 @r 0@'r P 0 075t4 ` @ppO'r @#r Dr @ `Ơ @ pT'r@ @# @!r"@5/fP5 @5K ;  P5 ; 5`5 ; 5 4 ;`5Ā5 p>p5`5`; ; `5 P P5-; pP P5 pPP56P5A ;P5f/r @ P5P5P5 P5J'TP5fOr2>@Up5-@5 pV  P5P5fP5P5E0 =`P50P5GP5C/P5 P5  P5 0A @55B6 @5 `56r pp`5 P5 00^#r07P5@ 5P5P5 5  P5Ȱ5%9P5I 5`5b5055"@5 0F /*d P5 5 5 5 5 P 55`5j pjjj @;*.j 55x*O 5P;%p#| pAj3j]jp5'j2Pjp5 j `!jp5 0Wp5 jpr/jp5 j 7rp5jL/j @H jhp5pE 5 j` j/j05,5(j- jjAjPRjp5j&5@ jpXjj j5 p5p&@ Hjp5 p5P"9**5`(jp5&r% 5 pj 0i `j@(p52j p5j|Hj]j *" p5@&rj p5}mp5hk pj p50j p5j-p5=jjZ `5 5j p j @2j{ 5jl@ p5 `jp5Mjj4p5 p5 6js5.jp5 pe1j p5H`5jp5 8Pe`]p5 jEPp5jh p5*/@jLp50 1jp5 jp5] `5 j!<jp5,j57 `5 p5@/06 3%jj 0qPE6p5@'j.( zp7jp5*+&rUj9p5 jjjj ! p5qj` 5j\`jj=pj`+@;j(p5Pcj E0j p5?j P( `5jjk p5ppj-jPd-j jp5 pd%`[ P5Opdpd7r`., @5; 0\j  p5*`d`///p5@j05j jcM0(*Ə0e?0j 05' e`@.@_ 0dj@P0`@dpd . Pd5jĀ/`5/5 /))` <pO5. . j `dP,$@ p5.5j 5p5jjP PP .  p5@-p5M ;`59I qjP 5 `q;j'; 5 `<p5 P<1FȰ*d;0 jp5 0<p5,p8 p86;@@/,Pjw0 p5.j& p5@ w;5 p5j j;jp5 p5 0 j p5\P rD@ j @?j]'h5j]ưj`5:P jp5j=p5?jD j p5% pp5 `50r pz jpP5 5P#PO@k`jp5 `j`5 PPj0605jp5 `j<j8 p5jAjj@/p5jp5jʠj%`/5/j6{kp|`:j5x/  0 j#jd j &tkk\5 j 6 5kk45k 66s 6,@k.5 8`/9 2(@k; : 5 F@k/ 0@ks E Р P7@k q5M p 5@k @k5p)`@k= J@k| А75 PkHN/5 k55k-@55cP/ k P5- /j-` `0r0 A0 $ &Pp50m p  l`@@xr 0x+x*C@pp`0" P`bps ``0& /OL % pE$r  /  p/9  Ok1r0 5r0 S60 8:`2sw/, `  P @p6$rPp4P   0r @ $ 0R$P' 1s Ts`*$p@$bPpp "Q Pp!r @0 p*$ⰶ@ r3pR4ذ4 P@p``R"6@@*6H  $&   O @00`0KEGr Йp @Ȁ@:- @l0֝ p  ֻ1rPpp ؐ`$p   p cyO@1pRTsP E@Y  0  ! - +r%P 4 0 0t @  00,P@ a" r  '(  6  2r PC|pcy  4`0 0҄0r/ F& j660 6-P5-(p14'ʠ %-`0x51p``Bz4 25*p1Dt0bGp45!5 Tx. `6 553.P `5650 2Ex  p5P  05o50*5,/f5 ,5 4%25 /5+p&rp+4 + W'r@T$r 35-` 855:5%5R$ 5:*050&5 5*5 @%@9555@4 5@ 75P&r5*55L4H /5z2% 2(%<% 5$5,5O @9505K@2 957PҀ25= 5% *4 0( @15:*`+"6(  5 2'$Ҡ;6 P?6@3Y'r + 98@;5P0   2E$r @4+C<525T 8;A p=p,`4*,p50p=%  545P>D.P< @ 52u0<4<4P<P`65 5p 5! 5p y"3  : 5  4 _T 04p`;>`; 1>6 pP?8 @@W$p0%00% `!r 9? PD5  ` @(@ @CPʠ% bs0 0 p8pE0P@! ? EA8@0  !T'r@&% $P >`2s xh'r6r%  F*`4 P Pp @BB3 O%b  4pbp45 C@C& / 55p 5,u" 55 5 5 5*  5@ؠD`6D55 P4P `p50 5k'$6J40J'rP$ 4`@5  @H rpEH%`D 8` Ap 0 0N EP`6 @04 @  txP'P& 0x0 PL Lf$.xL` 4  4 ? p0 P@ 4p0r$J0`AJ @ 6$0@$r P@AO'$0: T$r PIr 4 5 P pG 0#O2xP03Gp@O*@O% @Oy@(C bPOG  `0 O @06s PpO5.  `  " b ppOP @70@P@J6r PP@ #T'r pP$@<0< '6@ $p`N Z6hP3r  `   Cfs Da"$rJ!@% &rL /0@*  5x @ʏ$ 5 0KP0b$p<  `&r !  4G K 4 ` @MP W p 0  6r @ `@`@$r `% MP`O Np0AF SP P p05@0N6DxM` 4 cG, pO`Up% p%  bpPp@UPP*0`P%0*0P pQb5t_!0pp(0   P P0P0ư @6rpPp ppP 6`  P  PP @  0B K 0+  Ȑ Rf$@J$r@M p !50 +p9 0 @S   !b` 07 pp ``` PP%# @ P Pp `f `4 G`0%PO`C 8`% fbrPp`p ;sP`bp.s PE6x p@F6x  Y/rHp4 T'r   %0p  PT$r0$ %^Q)  C@ )hp0 Up&p`p?p2r  04 P 5r0`  T$r`P f $`ub.0 E r@P0&x`P^Z/H% p ) 9 p 1$rX O2$r`f/r J pPp`^ 8r0O'rpP2r0`%00P`ΰ % @a 0PP! 0b`)D Dr pu$r`֝`e5`/k-HA{ 1"3QC@?  6{pny@ ` `k Pk; 3@@k@k: ` ;0ORy  % kP5' `P5 \ k/ .f{.up{ 0/f$t .0/C`/%x0.uy0/p%x6P.`/$| /*Ojfȏx.u |P/ʀ@/.P; @/0/$0/  6@a ;?GL 5A{000CSby1%U6x0LEzf` #yRP!`C`p&asR #{ !" $ { b=0#0{ 0*C # @{ % ( s{ b $ 0 O{ `$8 ! $@ !W!b.@#H 0#PE{0#X p!LP!"P$h C 1N #`0f xpI5| `C@b@#x@{ " $ !I @$  $ ) $ C $ C $ C $ C0$ %Ph# !I$#pA!)#EM>40?B PUxv0P 5ППpj( 5x`3.$Ҡ p444 Ȑk`4 fOrj05 57$r 5OT  5\`l&x  Pjc 5lf$7@#Rb%0@ c8P rd#R R"680P1$T uyp"3Op5` m  O02y ! 8"dpj`E 04p` f$P0R"$ؐeO6x   ppmpm @@ rW$p*k4 9 4   98(:6rP&5 g `p@(@ @E 0 p pp8pSr  @$r0p '68@ p`mT'r @&0:0xPp $`;7g`!hg@4@`% h*g4 P @p< @% ; *brp5%@& /`j @jPjȀj `pjpj5 pj ( pju* pj'$k pjpj pj@@pj@pj|"$ؐu ĐD4 J'rPk4` 5   pppw5p D p` AE r#R P`6@AP0 `!MPP& @Ex [P  Ts u$.x ` pT&r   P6r p0 pT@`P 9`4 A00`@v, @ PP&0@$r P@ErtO  H$rY$r 4 5 P pG 0!Tx Qx T`T6x@0xо0cy  C  C@ !  b  p`f"r0 s06s  0 b.@ `  u"x΀a b@ fr@ 6$rPp70@'r PTr PP@@#E'r P$P` p-6 P)P@ 0 P6rp     !"$r Dr@% &rP5r@*  5x @`ʏ$#zK PP bp$~0 DrW  4@P   @$ `P P09 p 0  76r @  `W$r W$r pT rp [ 00T P P  E@06!xp!r0 04 cG, p@`p% pC <p@pPp@*0PP*0`P%0P0PpPpQb5t_ 50 p``  0P0P0ư 6rp0Pp p@pP6`  P   'h@ư 6rx  0+   #,$rzRf$J$r{`  p */50 +p9   p` ' pp `` PP4 @PP{P5  f `4 aG`0C0P 8`% fbrPp`p ;sP`p.s5x p@F6x  Y/r @ p4 T'r   Q( PT$r00 ;`E e1p`6r C0 p0 %p&p`@? 2r S4 P 5r0`  T$r`p f $ `ub.0 P0&x` "Z/H% p ) 9 p 1$rT`f/r pPppO'r8r0O'rpP#r0P`%00P   % @DPP!pp '$`ʠ)D Dr pu$r` 5DO0rP/ PjA>rP/ P/9x02y@`jD@5-DQ5S p5 5 P5?pj( 5x @0x1p``qD5 3~P pj&raGp_p16x0 06$t` @ 0x" (Dr   @`'+x*% @ *"p` `% `   @  p!/(% ` ` %   6x0%% 0 4 0 asKW$r   4 $r 0 00 %  ur P/ 9 ` W'r  p _T$r @@ `` @ 2r P  W$r "6rDr @P I'r #5p @$0 %p`$@050R "$#"$@P`&Dr p#Ȱ2s0"(0% f Pp%&rp`9 P$$  P P:'r0r  @($ P&` *$ `pP$% ` `@(P$@Ey`%(P&r 0@%p)P#P`E r %%@ / p2r, `x"`@"6H  `&%P&(+`Ġ @$`04 `0)4 P%P+ %#  4 0`000$ % 0 /$ @  P5)(+r`+P5pj0 -p. p.pj @5Ȁ'6 5P ,*PP5` P5 P5Y mP5, .1 p 05 n 3 P5(0 P$0 P5@5 `5  P5`P5`P5 ' P5\@ P50 P5 @550P5p@5 pp5C *P52dP5  P50#P5P5 % P5KP  )0 P5P5P5m P ; 9F P5@5x *@57 `;P5 /2$90 @@5p  P5@E@!. 0'`% $P5-0P5 P5O*$' @5p5 P5@<`` `5@ D@3&@5p!`6P P5`P54P56P5 P5`@+P P5'4@P5@50P5 W$Ȱ5@50( @55/OP5 0=P56P5 P5ar/P55@5.9 5P55*p@505/p5(6r@.!0%-/ 5(p5(P5- .%. P5P5P5 p. `5 p.uƏ ?/P5 /   @. . P4@5. p5`@.+.2r)5@2 . p`5 4`/@55 . `p5``5 . .'$.`5. .P5.5.@5 p5P5P5 P5P5P50PP P5P5M ;@55 ```5P5;@;` 5 @5::P5 <: : 0 @<P5 P51FȰ*d;P5 <P5,` ;@@/ 5;`P@ ;;@5p 5P5 `p`B8J P5@Ұ;P`5 P5P5 P5P5P5 %P5X ʰ P5 @(#6P5$P5:'h50 P&P5'05%Ə3@0-P5! @ H P5P5hP5P5"$3P5=P5C/6P5 P5% pP5 @50r`+`(? `5p`$ p56rP%O+P P58P(=@5PP55P5 P5 D P5% Pp5` P5 &07P5L0 @5`j P5 / 5 5` 5 5 P 55`}52` ./RP*Oj+䏀jj]p57@Lp5 p5 45`5 5 p5p5` P `` p5M"|0` "$x `>0@p5PQp5p5 p0p5 Q& p5O6p5p5PK0 `5 O5/p5 4p5G5tp5 !0Bp5Hp p5Hp r p5O6p5p p5H p5:^PS 5*,`5]P5 504 p5CPpp55&p5k"$& 2p5 @5p5 5p# 3p5p5]6p5pp5p5`]p5 $0&p5 p5 p5PI 8p5+ p5O p5 '05dp5'$5@('6@dp.dP=9p$i% 7S*0=$   )`80\+P0 +jJp5] h8 @ij p5`;ƀ50 `2P240 / jP 0 jj j6P75j 0 o@qp/Ek,(6p5 `5 j@kj 2rH  3#p5@ PBC|5@5pcy  4`Rj0/p5 5j=p5- @5@(8 jj 5` `^07A#( c0 b@5uyP/ pM0/0 {# cpk 5@k F5 j @e 5k` k45 k 6T16s k 6*@k.5&u09Y4@k 00@k 0=@k5PkE$x`e5/k?@55 eP/ kP5- / P A`0XPp50(6@ Tx  ֝6@  p P` oEx p,/f 0@'r 0 6r //+  Rp) 80@$rp @%p` `50P@A$:*" * *" p p @ Dr  $ P  mP&rpBy@PLЮK 44 @70c %PCP $,O @ 000$  '$<P= ʠ  2s ! p1r  "<1s 0 `0% $֏  Pp 0`   `  +r(0!p/p/i$ j6*P5-(p1Dxʰ(% 1@x*!`P, p_5t5)&r(aGp-5"t2 ) 5 5 ,4 , 3P)P50x7p2ʐ.C .ry 2r@`.3pcy0"`, `/`,b0s p024 `,D05u*5655Ex50+2p655Tr 70 64 01/  019 0 05`1 4r P/5`,4  p5-334   `@5 8 PB344 P0,.0r14p@`511pb,6r5MC65W5p/050p5\P P65+T p@p4 p4*$@4* 4p/$/ :5 5T/ 2P;'r55O5W6H5 5@8'0 5*&5 p7  bOr 3p 807pT$r P@5r04C505E P 74p` 250T p5a 5h5`= '(505x 4'$Ҡ;D 9` @54 %   @;># P0r@  :E$r @4H<p 5OT   7is7 574P 5  5 06P`<5B4 Cf$o`   =Erp0 p@cy P.@74P09  * 0 0?) < % * 0 =@ȏs@@%!" P00 95tFE r0 `*`4 `P!rP @ ; `!0 Sr E6 D ?p 0bE r@p8dy@ % p-/p4  !r00 @`@ 4`pp%$@ P`$R ( 6$5x ITs "CJD`Lp 9Pppp 0C|$E C  4 4 0``C8@r @ 4 !  E'rP04`& 0 Ơ HH rp@%?D P1p`*$ E r@#R P 1 r`F``&0 `4H@Pa6xp!PpDpDx0HP $L 4P0$`4 p J9r@ 4@ $-`4@R 50p0p  0@$G "$P0 JaO$rPFP4 Ā4`0r0TG 0P4pʐ 03Gp  @Oar$p*p% pC@(p% b` fs PK`P004p%  0f5t @ p4?  T'r p` 0PPPpP` ( p`$p p"6 0$p`PE Z6hP_ @   Efs `a"$r0$@%`aOr*/` `0N @uƏ x6 0 `F0`@.$  47 "H`6rI Q4@ 0 7 `6r@Fd$r @ 0p ; `p `O 4 `O 5R0 @@P PP"$@ D p)pT x0Dr` R5 SG,pO`pC p%  b@pP p PPPEx0 PP  0`%`  pPP 006rpP  `0!r΀`DpS ` P X@0P  @"  0+   00e/rPȰ!dUP 86r` ` P  W `P p@0 0 p`P@!P  `PP E$r p"p $ `@5  @p `f `4 G`0%TP`% 0`% fbr  p`p ;sP`bp.sP"%  ?x %P%0 4@@$T'r   %P%(p  !r0PZ$r $ '@(260  C@  )hp0 `U6p`p !@!%Ə0 `4 P"! @ PT$r`P p h $ pxb.$'6  P' 66x@ 6xW/6H`0 % pp p+  Urp@Up@ @%O+ 8r0O'rp 6r(\0%pP`0Pp !0 % @EP  P)5`Ƞ0' !T !*pV$r pU$r`֠5=k/HA{ 1"31C"?@3  6{pnyA ` `kPk;0@@P$P xD 7` ;0ORy  % kP5' k/ .f{.up{ 0/@$pD.0/C`/%xcuy0/p%x67G0| /4 kiƏx.E |P/@/@/dP; @/0/$0/  6@a ;?GL 5A{000CSby1%U6x0MAz~e #y^LP!`C`p&asR #{ !" $ { b=!O0#0{ 0*C # @{ % ( s{ b $ 0 O{ `$8 !PP$@ !`E!b.@#H 0#PE{0#X p!]P!"P$h C 1N #`0f xp /` `C@b@#x@{ " $ !I @$  $ ) $ C $ C $ C $ Cp$ %Ph# !I$#pA!)#EM>40?BBcziG <05Zp;5 4444'0= jJi Y@ j\4 24/b4 5"4 {2*4*O44pk4 4gGX44M3 06Gy /E /5Tj: ij5j by:o . j +Op`#|7r0jNP(0j9 `P 0`@|Ex ~~`~ P}P @ԀO"$PWPC`p 0P p` P P p P*Їp!"PPpƀ䐉p5P p-"PPPp @$W&r  5 ȀO6``* Ч p`!  `'P ` 0p p&‟ W@P*OƐ@+x-p P*p `В "В%b@p!//`P  * Вp @?.‟   -ʏ@Pb*Đ0 0   `жp @P ;r `  0p 0`ИИ @    ` 䀟 ƀꀟ6ХPХP Х    &rpp p@ `p P ` 0P  @6r0 ``r 䀟/f 0`  p  5P P  P    Ȑ  0 p  ‟쀟6  @ Ȁ\@  `:6%pbOr @ -⏀ 0`   䀟fʀE0<6op 1` p`6r p⠟/O;p`#r @ @P0@ ‟ȀP ` @9.`5/`50 P5 /`@/`hj|0j`5PjC#@j`/ @j p/*5`j 5 5`j5]ʰ j5j P5P5'jNp j"$ 0( p40P5@! P5&rpԈ+  AP5j `5 @5 5L=?j)`jf$t`T pj6 | O0pp>:>5@v0? 55'`j9 N`j @4&r PT% J Y% G`j`5 @GP5`j-Pk 5 55Ȁk6J4OPP@$r   VEy``jOT `j\L&x @`PJPpK R%p  U@KEy0R$88c@`0N8L]Ȑ]`]Z5ppL3pR N@80P1$VT uy`"3Op5p  ?Y2y  %]0^LJ'r 0: 0' 0E O0p$PWpV::*"fP00 50U 0T`*`4 ` 4  Z!r ;Ҡ;PQ&@T5 0O p[(@`Xp `2s0 p` ReSr Sr '68@ eT'r@&R<5x <Z $ 2rP=2s a!hgPW&r@=%PZ`  P &rp : pj Qpj `iEy06x /#p`X5r Y jP pjmg`j`j,$`j`j<`j<ΰ$`jF |p0jpY>r@/ @/T@/p@/@/@jH 5M@q5S `j 5P5?P5'%J`jE*1P5]04 `2`j`-`j`-6`j3P5*@.P5 &r1P5 @5Pؠm1 p5 P5 P5P5'6 5P5P5P57P5P5\ 4P5) P1P5["$PP5W03P5 6 P5p 26rpP5m@5 `5P5PP5`P5 % qP5m`pP5@5 p5 P50P5dP5P@P5pp/P5pP5ʠ5@P5M-p8P5P5P5m87 0 ЪЧp P5@`  0> @@ ;P?6@K;W>&r0& 0 !=9!r`;u$ D :P$И  0 bПp0E 0pp<P `6 6r P 'PȰ @8E r=`0r <pbП< `6r*0-/0П0- P`   A$pE A` И`Ə00G?P PP0D @ @Ap  0 `p~02r@A5B7 @ П @  P @`П@F '$@P  0 0П䰟Ȱ ⰟppBy% G(% pJbp0FPEP /"P M P G `0ʰ΀@` J@ P 6` 0rY60@ I FȰ*d0  p` p `KК p@@@0`P@p P `L@$r   @ `p`p@! p ư䰟 ư갟   䰟\Tʰ  #6: 0 T*O%Ə ` -`VPP ⰟhȰH$=pC/6 % p1r@'$ +  Urpp`O0$r` N@P%O :PP ư ʰ D PR  Pp"5` !p@P505@5Pj P5/ 5=T 55\]5aY p"b `AyPo bj0դ.$x#05@p Oj/jQjПp57Cx@ x 1p`cz`"3~Pp5 5dGp0``5  W@x" 2|0"$x P4 +x*"  0p`6r%"  ^0\bps  `p76x ZP& /PZ % \^`'0[ &@Z% pZ  2$r0`d {T'r Dr @  P  pP\065t`Dr ` !䐬7  @Z_Dr @`  @4 `  4 @ @\6r 0 P` pp r] pe80 T$r"%p`$` "5W6`.pH 1 rp [@c%  &Ȱ2sui,]6rP5x P-Pa4 a@&4g p ;r g$   p$ % p`0]P` P @@0b@^% %!( P!r %p^' @*$ E r34d @#2rPa `pd5` p*6H '0ay0$0k&  ?g P#94 P@Dr@C*j 0jK0g-c`dj @0 `5-`Ȱ@d Pd` @)П p5'@+jJp5] h g g$ 0p5m @i@2` 5ƀ5j@7j(up#h.j p5 jP2(jZp50 4/j`p5j`5j  j 5bj &j jjj@ jp5jp5o 2% pnp5yj=jj 0pj @<@<j @l/5n p5- (6 5 j'0 l2 lp ` :p5? - 54`  J'r0   p5-0@5@(8 55 0 50  pH0  `5<  p5Z 0p5 p5(Dr .T$r `(050%P.0 ,`5 5=P( @ 5 p5Pp y70 5   5 P5 P 0 @/1PP%3r0 p5 `5  .p@pP `.2r   1! (@ "p(` +6 s 00  p p 0)`}p5 )0 P/p5p5`5-` *$r)0/p5+ @5 5/<p5 p5 p56p5;p57 0;0` p5L;`p5P : ;p5'Ƞp50 p5! !!0~ `> ~%"*@<*PA @<*/|ʰ 0ʐ00p5 ;;@p @p5   pPp55p``5 5p5p5  ՠEx B p5 p5  '!% 0 T'r  p5 ` p5\ p5Z 5 `55p5L@p5` Fp &x;%@E( p5`(fr ="p *50&r`J@5 p5Pp$+ P /p&ƀ(0)`5E$r @ p5 5p5A`/"P//p5bjuyp/5 `/ i"$t 0px5M5 1@0`?k p 5k+k/k85@k 6P1690k6@6@k#5 5'M䀠P&r8-`k?8(05`<p0kPk P@k5xЄ5Pk $x/d`e55-D55bU@/`5-P5-/ 5-00rP1 A Y`p50 (0֍  Н&x Puy" 00 @_E `4p`p%"0  B0/Y/6P5-(Pހx&P5x@ xAp`P` @5t@03~2$t & &rGp3_& ` P0x#`Dr&``C P(ry  `(p3pcy0"@ `'@ 0 P@ ` b. p0 `& @b(0 @0% 4 bps04 %)9% !/p P[7    $ `9 0 0 P 0`(0 P@9 ` T'r  n*4 @  `@ 2r P*04P+0r@# @!r`4<**3pb*`)I'r 5 4P0r%p` DpR0@$ # @Pcy@4 ppȰ2s'"P` 7rp,,&rp,  0$$  @P0r  `@@2r0,  r0`pP $`0b,P 0% C %,@ P0!r @`0:r  P!` 0 /2r` `x"` "6H  P&!0& +Ġ / @5r P094 P4@C  4 0`000$ /%  /$ `  P50!R*$@ 0P 1p6$r% 0:   p a"r bs@ 0"6`  "( ` J6x  0.$  24 @@2@2 @ p# P0r 04 @H<  Ppp 03* : 0$ 00  o` %,0`0 P41r0  p P!5tP   %44 p`p cyf$ @%043p  3` ;P"pR pP8055 5P5:Dr@ 7 @ 2y - @%00`  00' 0"$05:0  6PO6x  p 6r `( !0  8W   5( 0  p pp P W  p80 r !0  8@pĠ45Pi ppP8%@! P@ud'r @0ppp9 @:@ p  0P94 P!OP9` P9*b` p@ 8 % p-/1 r#p`!r @ 0 ` `4 p` p5  P p  p( '$ 5x  ؐ6r9Pp pp P C|$  C  4 +0<0`C8@r  @4 !  E'rP0@Dr`& 0 P @`p @(4@?BBcziG 805Zʐ5 4444'0= jJi  jo4 24/b4 5"4 {2 cnc/4*O4gG\44M306Gy/E /a4Pi`:*0b:p:`: ifypi/bi@0:*.@#|;7BiC$:*i-OTr@qHxi|ZҠ @  K ` P0 4pivy/ 5/i6{jE |4*O`j`/4`/*ʏi*iip `5i50j 50jP5P5P5'0j0 @PW PP5 @`pP5 P5  PP ` P+ <PP~P PEP56|@@j(p5 +`jj  @#X  @">o!#l) @ n  0$).XAT# ,TJp@@2mn@0"P @,@/@.@-@/@@.@/x@.`@/@/X@.@0@/@ @@1@/( @.p@2@/@. @3@/@@4@/@@5@/@.0@6@/t@@7@/P@.@8@/8@.@@9@/ @@:@/@.@;@/@.P@<@/ @.@=@/l"@@>@/0$@.`@?@/%@.@@@/'@@A@/n)@.p @B@/,+@. @C@/,@@D@/.@. @E@/0@.0 @F@/t2@@G@/B4@. @H@@.@@I@/7@@J@/|9@.@K@/4;@.P@L@/<@.@M@/>@@N@/8@@.`@O@ @ "  @ "vAT @ 0@`9|8 2 @&5@+/$@"L@@*@#@+@/@,@/@.@-@/ @=".@/ @W@/@/p @-0@/X@#À1@/.@@2@/@--3@/@#b4@/@5@/@.̀6@/@* 7@/h@-88@/P@.m@9@/ @#:@/!@@;@/#@-<@/`%@#C=@/'@x@>@/(@?@/*@.@@/X,@-A@/..@#MR@B@/0@@C@/1@D@/3@.@E@/n5@=#F@/,7@X@G@/8@-H@/:@#ĀI@/T<@4@J@@=-K@/?@#cL@" @ @B@Y/HB@@@@/C@@/4D@@@@1@/E@@/,F@@@@/vG@@/H@@@@/\I@@/J@@@@/TK@@@@<@/L@@/4M@@@@/lN@@/O@@@@/:P@@@@D@/vQ@@/R@@@@/\S@@@@/T@@/*U@@@@/XV@@@@/W@- @#@!0 1 t8%   p  &8`0.@d ^ HELFAS 0] 2@,d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuverMtext._ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelI13__nv_bfloat16S2_fLb1EL21SK&DataType_t2EEEvT1_17 TensorStructPKT_S4_S5_PT0_osharedreserved.0/at`0`D05F2^xG;`>6__half*O5_S6H?@<b pdHe V5J2bACd>+/L9@6\p j^Bv P5D2\pdA7 ^/ "*( =N1Kb pdHF'V5J2b2Cd6!};88VX  =X<] 5>2VX(9+ X669986TPWV:2=5<2TPWV/:J =H1E\p27^B2E5D2\p_^0B$ 53?2<TPWV:2=5<2TPWV0+3E28:26N8 \P4'B562N83*+ ;P debug_frame.relanv.callgraphprototyponstant0E@c I'qHqn1 )CP ['uPq" +Q D U'oDbq' B P ['uPi,87 8 zB |'i8i  6I 4mj +B"pbxb|Dc)V c4mp}44c b |4) ( G(g(oapmercU_; eN ZNzNtZ' EV ^ xVt P T J X'rJe? @ V E'xVl :e > E 'l>l zl :pv:1 6'EeJfG:p|::f v ?7 . J.j. }-. u-Zt 3L tNt, ' lFV ^'xVtA t J T Jx?Je} @ V E xVlc J E > R'l>l zl :pvA :e'EJxJJf:pBe::f 4 k7-:<.j\ DHME %I pSmem.offset0G 1.0NRSMEM_0_0_alias2†XYC IYC I6D,i,cG%L'eR\94 Md g4cH . (C ( GV'a(TNn 4 4b'g4[W T  4 D'[[T 6[ _2uW5 *U'R4@THn(UHr_8oU  ZU+   9 Y :s m}Q/P-!u\ S H0 d1 @2 3  4 5 6 7 8 h9 >: ; < = > ? x  @<"A$B %C 'D @)E *F ,G .H h0I >2J 4K 5L 7M N9N ;O <P d>Q @R An-gB# 4C `D  E# .F \G0 H I LJ K L *M DN 0 \O |P` Q0 8R` PS0 hT` tU0 VxT $WUV lXW YXY `ZZ [[\ R\]^ ]H 8^`!a@_u 0`c!d@tae bfg Hchi |dj ekl Rfmn go 8hpq lir jst 4kuv \lwS$ @|  (( $,0 Q<U \h% hh/ghh/8h80hT*g80ph0h0*@g8h/h h/7 h/xhh/h0*Hg@0h@0*g80hTh0*Pg80h0* g0hEh0*X gh0h0*( gEh8/h80*` gh0hE)0 g 0h80* g0hhh/h0*8ghPNVIDIA CorpA@7jptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1/  KKJJIIHHGGFFEEDDCCBBAA@@??>>==<<;;::99887766554433221100//..--,,++**)) 0Tx,Pt(Lp$Hl Dh!70 !ux t090PJ@`3 Ebq p6Zj/2NiPpOx PQxRxSxTxUxVx0`WxXxpYxZx[x\]x^x_x`x@ax@bx@cx@dxexfx@`gxhixjxkxlx0mxnxP ox` p| S|++v171#01'D2# 0627tf2' 2# "H2'<2F &3'lV3'3#$843#̌%04'dF4#&0v4';',4# (H5'\653t)0f5'5'$5#*/!T"+0V6'1'6# -H/'L.#t.0.7|@0+# H* |) Y{b"y~;Sny%b6x0{@pp{H0CC $|/xI{0pb r-pp` 0Pa0C0"s E{  $( { b #0 !##8{0p# @ 1  b $ H {  SP$P0pD P$X #p !N $`  @$ !p $ ` ` C` `$ C  0$ C # !P$ C$ #CMpw40Aw]!} 0  xx0p$| %por5؏wp3x]#xApxpb Gut"B PD1tO00$tJTP`@p` 1$r  001~0`WGut@x1#rI@r p# D~ `ps6xCr0Ayu&y r?`SrPs! Tsapse0sb.6x@s!"6x f/$rp040`rp@P$r'r4 P*`4Os" )Ώs 44%a$rP" Tsa"$r 9r1xP04&r@` )ppb'r pȠ9PP` @0Tr`  7p@'r@ rP@p@1r"<T'rP r@0b T$rpPP@# p0$^4 4 4u"6$!%P1p@ A r!Rcy0p@pW,6pp$C``A3 @ r@1p`@E6xfr0ƀ#P a$$r`" Er0r04P%$4p1p@ p06'r $01p@0W@`  $:&31 r@pb`@ r$p`W`@!R T6p000X0E  W0"$ 0T @@Y'rPfOr`ʀ`$   Eyas 2sE $`7 ` %@ 06'r`09p,$rp? 9 $P`0 `5pb5p` `6r@ #B  u$x` 4 4p@%ʐ 0@P r$R p'60* 5b@ 3P!pT @@      66x 0P 0  ,( @x?  P$xp"P$ 5  3pb`%@`@ Ey" 4  n#    8 % @@ r4pR@  u @  1$@6`$ p  8P0r 0   T'r@4 P@* P  p pf0s%Pb0s @%b. p%pp%p*/@*d`grP %@ @ʰ p%@ !@"$p @%p`MP ` `0 00W$@ 0 91t K6 @ P ` 0E@ pp'6 R$` WPT (@*P 0r0 0'r`#R P Ox  9P4P 4  !" @b 6r*`f&r6@5 `00    @`4 4`  f0s*b    !$. E6xƀ Z$6r$ 3xpPE$x0%%`%`@  1 r0`    p@ % (%b0$`  uy` *    % P` p% P@050pX*䏀 !05 P  ,( Pp&&p`Ā ` & &r 406#Ex*`ubpT      PPR Dr@ pp  D@ $`p  %0Ɛ p0P pp5x `p'`  `)E r 04@!ru@ DP0* @7 T6x `0 O$ G @R@ pwGu Tx0ax@ WGu0 @  PEx000 5rPp#"    4   " 7  p6$r@*/`P0&x@pO'r6sfr !"` @p07 0 `0 d@'0pJ'r0 p5@  /P/@  u$00Pp6rp(p6y0P00 ` %p  @%`  P %p$ $@$@ Ȑ`  P 80 `  8P`  P P$P%p)0"(p9$r@ p T'r0p 54 R 0#&0@P- 9 p p00   %0 0 0p ["$ &0@`p @ P PP 0@0 4$rp# 9r6y@"%pb P&Ey`kr0@Z$r$!P %p`$ ` 0`$N%& @ 0B6 PE$ `` H`Ҡ& 5@0; !`0  @p(E rp@ pD &`P2% T$r 0"rs# pP @ `" : 0'`0@Dr-O0HT`@4 0 4P!p  0 7  6 `;$x %P ``% `!b   pp +`#!1s `(0bp.s ` u"x@f/rp% %b"E6x @&0" `4  Dr %- @'r %pp (#'r)4$r  6 p26 ""$ @`# 0` &r P b ""6P060p&  p k*0OP @0 90@000 `E6x @6r!p E6x@΀`)6r@ P%&rP!/0  @P 3@ PP5r0 pp' 0p`P$ 0P P @T PP "$ &)1]  T$r $r ax 1ax  ΰC ~..!5b! c.P0|1-@|p@$~P0p(y A `"0x  !xN0fƏx1R |0@@@@1t,.P xo0 P`@|  0>rU0|  !|/ROy`p  0@a pTG0SMy@01Gy7PE /4^344` rk@4M #4 4&4<P4004 B4 `4p 4 054 +r4+/4 8P:04@"4 64*3@Ȑ3@%444S @14< 4 3 44`4_ "ab$}4`4=6r//44*;4}"$ذ= P8 4P4" 3'$`04P344 D" 4/4 4K40<4M0'4M2MMf/r#46rK4 L4 p?4 @ 4 (P4|B44E 3pD35x` P-/3 44 34 P 333 MM 43 3 pL3!@5 +)4br02S 3 /3'$p(04 313pR 3Pp% 0B3 ҐB3 p ʀ* 54g4PP4Z+ 4PA`+ + 43@5 @+ 4 3  0@Q4 43 / /4nE 4T 4? ``3p-E C4 43*@/@RR484 pp 4'p49 44/6474=@C.4J*O3P4 D44:`8 Z4- 3434 4:344"@3`MCb6 4 4 R-/  040@ ?3 00A4`404 4M8 0344P=p 04 44 044pI06442r5 4I 44 4 44 rF010 404L 4074O44`3 3 4 434 p4 `@3 W4`p`444O<43O344h h!gP@0g#g`hgg Pggg#Tg&P]g` g g`fLgf($rp ag @N/Ng322g;E ((%g 3` *` g{3g0' 4&]gKpug3*O3P3gP'phg3Ns g 3Rg3 3h!pU+)2!@U@}C/hp 73g*gP3Dr pg 3 `z0Sg3 4 3j3 33 @g4hg- P$  UBphgg [ g 3gap& g # o g; 3Ё [g3`ggĐUU h X 2-Oh gg3  3}&r9g-3 h v-pg P3z 3e 3?`g g3p%%g3 hg3 g ppgg 4 h"44 g +)g 33hg3<*dgĐ77*/h3=g@1g2gX/0 g3ig h3m rsgx]gP. pgg3E g30/mg'3 g<33Og,3@E/6g 03 4g0tg=3[gP0g3 13|`c03 eg 3 30:33 g?4 g3 93g3 g3g f l2h9 4g 3g Āg(ȠphPwg g`g@ P637 g3z@70@2r0t0 h 3-g 3 @4g 3 g`$GgPg.hgChP#|@gЖT|h"/ 0h`"|Pg3d~ `gM`gfyh h%` h% ho6xB |p hOP4@hp#|f1t@hh &PhPh hP hPhЊ|s h @h$@hgG`40h4N4PQ P,@  '>4+Pi# *0bf3 /4+  0*& *\4V4M0'gе 4 %0h4 3*(3ʰ3-3 3 3/3h"36m/*$ /00r`Ϝ Aʏ ?**@&0p4 +@00@ rP`<`4`P 0T6  Ppp!R "@01$  1KT p(@7 @$rp!Pd'r@04 0Os`2s@5$%*$`P P` PT$r ʐg"r 0"pbTr@sf&r`p9 rp6rp@@ *0bP$0 /&.. %0 @0 */ a6x@@$xP%@*ʐ4@4@$rcyp @p@"$*01p@0T  p # 5rC@(%bp$@ @0su$6xy`/P 4 0P % P6 @$@"X !䏀 P'$pR,$W2se&&p`Ā6r!pP 2pR0rE6x+Q$`H`T `6r /@@T$r@ :44pp4@`!r  0`  E r0ذPpTPP `7 E r iE r 0$r07$DP@Dr6@ 40rp O$ G 4P6pЍ!"6 11t/440p-P!    b"r Ώs  @ eb0s " Đ$ `%p*/%"p@ E6x`pO'r@p*p is0  P@p   4 00.`  0d` 00 J'r0 @4@ `/@ *d P0 Bp`5x  x/y0 @ 0 0   E'rP 6yp p%P $  PE'r`P:@$0@Ȑ 5p`@p8 0U r0 @ H6P 0 % $@ 0  `)p *6(pVrBr`1$rpY'r 0` '$Ґ\4 pp ʀ 0  0 @ @ pP- 9 #@ !r 7$r0  %0 p4[" D @P `@:x@@ @'$r)0 @ 0@ P4@ %f$x  %b@  Eyfr`@ 0:u 5p`$ `  0:  0 `k6@ p5 `  HP  :$P0  0  H @ pp@ ppD GH60r  0rsE6x`0P0@Pp : $@0+0   4 @ &6pe$rPP` 0pGu 0 Rrp$P%` p `% `fbr `p p @ 6s   p.s"@% +/    -/ "$r`0  9 ='rFr % p  H'rH'r$r D@D{6Ppp  `P 6r  p Ơp@r Pp@9*0& Pİ 0OP @0 900p `pP(@0r 0 Ex0`*P /)P 4@p PP`1$r%@ P p`0 pP$p4 `@D #P@ E r0p40&&0!MPPDr @Dr xF2  Л 4 8U 464E 4>f($r!%p4< 4 @'44 4*0 4b*3%"`/ 4 $P%P#644 44*& 4&r/* 4)74p`/ "4`4  P4+/4'$34 p"@&46r 4w@ 4740 44SI49 4 30p( 4447 ubp44=4*/4"$0 4}E`-4`8PE r3 4'`044 4 p544u@4 4O64E `9WGu'9wЂ1x$0ax`!@1WGu0 @4464442&4`/4 +r&46r 4 4@`-4|* 54"$$ 0`4 4*%* 4 44 4 4 `3` 4 4%44@4 4 4E$@: 4+*4p3`3 / 4P1 pp @4'Ҁ. 0404p0` 0404p ' 4 Ҡ 44@C4X 4&r@>4Z+$ 4 3 p0"A+P+p6 4% 4 5- 4 4 4 4/4k1$P 14@$@ @4: ` 85 4 4C4 P+5H`/pDP/94p!@4 8 4'$p4@. 44+4H480&r>4J-O@4H 4 @4p48P+x 4-44 3 3404444 4:3D 3; ?0 3 P4A@%"0 /3 0444p+rI4K8 p34   9 4 34 `I7 44464`; 4"$` 4 4 4 442r0r4647 46r@ 4074Q 54 4 4 434 3@'3 Q4PM'$p44d~a<  pbC t P0|I4h4@$~ `4p(y06hGG0x ?r$x34V hP9@@P@| 1h x<g@| A `9N@1 |@p` @G"yP %g0Iggph#hCn  Ck x#x >` $| DorK؏@@ pbP7-P!1t!t @TxO@&t0 ~@ WGutPx_N!L 6r  ~ n`pP  ;rpA*` % G  @ M`CpL=@M = =  E6x   P IP0N$"P0N4 LH@NI@N>@N@B J@H>%@N`0 Y` &x MP0O `E  PO ?N pB` `> N&r0Kp$4G%>P# PR`U4 IAU 4p@D 4`V0AE6$pIpI r `Vp0@AW,6p   NC`P`" KP%P[E6xDLP  \ 6r`0r  EZ%P%$G Up% ;rOU5I`pF Y"P% `` ID@* pD*6X0E CN)I'$V&@X`[9PH*O^0)  Ey0ZZW$r `%@ 06'r`MPpN OP2s0PJ%p *$? R T r`Xp`X0ZP` pQU`0U O```_ @+%` 0@p$R p0* 5&@ `D @  ]L  ,0RP $r  ( %@p`$ p  P6yU0# %") MD P^  8`E$r  0!0R0OO5 @[ p" 1$@@6N P;`"8P0r 0 _]4@4 P@* P  p`/!0db%Pd%b.P pp,&xPdȰN 0YpKP @ /  p%`$00p1 r`X@d0"0 #` hP@ 0 h 6hp*@Vp+43 h Kh? 0 h @$ h4p +ha4Mhf/r4h> p, 4h4X 3p?3@.3  3pOxk . 4 4 4 3*3gG 333 3!p3p3p3#"p3 3p3p3 Pp3p33p3/p3-(p3$p3pg P$`N P@BMgpgpggpgp30gpgCapg`gc"|@3i/`w#|g  3Eyggg0 p 3]`gg0gpO#|p/t`4 h*gڠg /` ggg3`ϟg 4Npg4 `gm)4h3d44!|@0*/ 4 O@`P*043+pg3  -4Yh0r A@ PPp61tgpg  02>r`00| 4 @ Ɛ|/g 044^pȐ(00P0r}0Մ'r0PJ` P Ox ;04 p0!"i`P@*f($r)@, p0000  p@4@@pf0s+b`Wr`P1s!&.@p p `E6x00P z@ 0@6x"rp"`Eyp0p %p%*ڠ%p`$0@ 0 pp%%(%b0Ex@uy! (5 05 pX  *@H 0spW,$` 5 02p H r 0 Rb$``A /6 o`J/p `40 `) @0T0@P` PP$r0%ذ`@E r5x ``@0E`![ 0r0f$"@E$r@Bxp `P00p ` O`G 03/^P PPP@"# `p`` `p` @ p P p`4 P @ P " &rĠ!Dr   %P @'r6s*p ! "}'r 4@  '0 60`Rp$# P2p`5x  /0 %@   76y` (P  $ P %`04@0 $0P@ #<   @*80 PPEPP6y"@Đ  "6(P9$r@P2r`X'rҐ  !R-6 000!d `4   ` % p<  ["$ &/  p  P @@Ɛ   `   %pb PEyPfr0 r0 : %p`P$ p `@ @ 0 B0pE `p"6HP 5` *5`0 & p!  @  p }D &` "p3 brbsE6x `6rP0`0@@ : p+`0@Dr*O0& `D`@4 04P!p  07 @@P%` fy`% `fbr ` 1s @  6s  @ p.s " ub6x`  -/ Tr  4 ``p4` 7 6$r 0R$r.  "  `"6 Z r P$p &r CP `'6p  @!9 && P kĀ @0 92s@@`` b.P ``p PE6x`7$rP`(  /$04@  PP 2r@ 0 00@4P( 00rpP$   @`E rPPT 00`$ !$@Dr xax  ΐg  gP@| PP3@|p@3gPb(y4 3O3 3 4I/ ($ $ P$%  @+/$03.4@g!> /2|Pg3d~ `g$ 4fy4" = 4r$x6`0rI0h9*O 61t@h4 &PhPh 6 2>r=7 @h$@hgG`4P4N4.=4h [3e344 3*(3ʰ3-3 3gG 3/3g 4h 09#xrr$| xormB؏mrq4R36`0r F4 3Dp`3 0@`@$@  0|1pbPr0<$@@0 @$r@ p0r 4pRp@"60sЬ@0050a$  aK13W "(@Sr O`@$r+@'rSr /Os 0s$$6xs !$rp$rPP'rP"T$r ʐps"r00"pbSr?Tsa($r``a$`@ `0$r  4 @``1r@$u6x`@4!pp0s .b+r71s&.'rTrP7@$rE6x'`6$r@ 4p`4pAsAr0`y PK0; 007cyp  2p@0%p`` 2p@0000 0 3pb p4`0Pcy@(%b0$ ;@@@@x@Py`-P6$r % P % Pu 0@`"6X 3p@ 0WpTs a,$ W2se&&p`ĀE&rP "pR0 *Rb$`G "6p!1t5@$pRB/pp4@ !)p@4@0P``  r 0 0%0ذ `FPp5x `0`   E`@H r '$ 0W$` 7xDrP00p pO$r  G 6x/`  $жGu0@ @x@pR @x@PWGu0 0Y6x*% uy`fr@ !"@@bs@ bpsub0s ub.6x4u"6x / 0@ " 40@ 0  6s " 3 Ώs  @  " $ Drb/r !5* 6x`O``0 f$rfs" pp4 4 00>`  0d` 00pT'r p4@ '0 6 O:/ap$ 0@ P"p`@$x Pu/yp0 *00 p0 (6y` H$rP  $ `%`04@00 @W6@8@*80 P#p`!r#Pp EPPP Ey0 "@Đ  "6(9$r@2r 2r  $@ 8)P, P4  -6 00 0 !/0`4 p    0 %0 p94["$ D % '"p P  P  P@@   p4@ %f$x  %pb PEyPfr`0 r0  :$!P  4p` $ p  $@R$ @ 0 pep pE `"6HP 5` ` *5p`0D` p!   @ pp p D D`0*   0OrsE6x PP%@ @` :  `p0@Dr*O0T`@! p@4P!p  0 7   :xP%`  `% `fbr `p   @ 6s   Pp.sy " ΀ b `  -/ Tr  4 -` ='r @ 0% p 7 6$r 0$r@   E  `"6 Z r P$p &r CP0@P `'6p  0"$09 && P p k0OP@@0 9(2s@P `PEx``$ `P E6x``bp P`% /$ 4@ PP 2r@ 0 00@ PP p00rpP$   @`#PPT  0p`0$ !$@Dr x@  И4@@4 'p0 @!64`4 *$0" 4@44%44M4"*$(4|f&r4I)Drp4X4(P P4$4/74'$7)4p!:x 4 4 54[134 `,9P44_64P(4JC64 4&44='$p4a&r@!$4 44,4` 4'`!+*36r// 4 4 *;4`!r p @ 44 4 P 0 pP`4" 3 4@4P464 044 44604440 P9Gu4 4!4@44+x@'4 3 4 `<44p461t74Tr464 4"4-/$ $@$4 244 4| 6(4* 5-/ 4 )*d`40 4z P 404-4 44Ȑ0.C464!@5+*4 p2'64P / 3$4 33 Fr 3@8'B 4 3444pp 4<Dp),4ʠ) @4044 37 / 4;+ 4`Ap+0+04@4@ 7 4p-4 04xP74 E 4Z 4C64  3``41$P 400@04@5H4* p4 8 44O304{"$4*O3@ 44-@1G464p0 4 4 0  4 94 J  4`4  3054 3@4 4> 4 4 442r0 I404 0J 4?O4*4b/464 Er9 70 47466p754; 344`44 59`&54Q~a<ppGbC t `L@| `40P @|4@$~ `4p(y06@ GJ`0x 3pOgaƏx441 |P9@@@| 1 x<3@| A `9PNE1 |7@p` @G"y`?p  0I@a `>?G a{JA#y>9!nyQ%T6x0{@p{c{Cp$|b@P<9x c{0=o`MaAc{0"s= E{  $( { b #0 !##8{0p# @ 1  b $ H {  SP$P0pD P$X #p !N $`  @$ !p $ ` ` C` `$ C  0$ C # !P$ C$ #SM , 0L6wM"Cn Ck  M` #x >$| orK؏@@x1UxUPpMP pbP9-!1t#!t Tx` 6$t0 ~ WGutCxpMLa 6r 0"~ C`p` p>@N0 @N0@">M`CpL= 0NM=0N%0NpX P"@0N 4 p@NOM@N@B@N O@N@H0O%%  p0HP6xp0OP 0`*bH PO  `A4 N )r@GȰ4G7p6'rP#@ DRU`H4 I URDrpp@ ^ T4 Yu"6$pIpI r% 0MLLpPW,6p C`P0BK`YP[E6x#  (KEr0r ZZEy$K]!pp 6'rȐY ` ``pAYVZ JP` I O J!^X0E 0(R6I!&@XP'9PD*@]  Ey0ZG Z & J@S7 `%@ 06'r`M PpNP2s J%pJNJ PI@MR T rP$0 `$_Pa%bG ` Rp B 0U O/$O P+ P_%` 0pG"6H['60* \ʠ%@ 3P`&@`.@$rL  ` P Ts  Hy @ U%ppQ$ pTPTUR@ Ey"  n%P^  8PE$r  !0 0@QO5 @'G  1$@6T 0V8P0r 0 _4` T'r@4 P * P  p!0d%pd%b.P ppPdPd 0Y %`%'rP %@ X c p%R$Rph- h 4h @!4h4h@ h 4h4Z4a h334` 4 i-O4h+h4X 333@.3  3!O 4 4 4 4 3*3gG 3CMy,0TGy E /a33 3!p3s0p3#%p3 3p3p3 0p3p33p3/p3-(p3$p3pgW PMpgep30gpgF`bT|pggc"|@3/|g`3g  TEyggg0 PZ 3.gpep3 pgpO#|t`4 h*gڠg / 3ggg33P44Npg44h3d44|k0*/ 4g 4 O@`P*043gpg304Yhp G  0 ύ ؐրrf/r ̀P P0P03 @ `3@33gbgE |@*/`g`g/Л 2>rP 0|  0 ƀ0/u4344P@4p@@` 0b2P00@.@p@p `E6x0$p@z@ 066xp%p%ppp%p%*4p`000 0` Ԁm%0%(%b` uy* p% P0505 pX  *@ 50pW,$9 4'&P&rP   ab$`W K6p@p`7ƀE` 44 6r/O,0=ƀ?3: 3/43?gI"$p.@.p,%p`/p.Ȱ+0 ++ W$@p,'>pb+{6 ,0R/p-W60Z$@ `,00gu -p3> (2p.up4G .@$r`0$23 $r 0P34 p3p)p30p3 `3*03 p3P3"*/3p2p3) `304 3 /*&3p*Dr0W$pp3 @0@$x3/p30`3p3O'$3p3_6p3"p36r p3 2p3p3M'$3p3Ip39`3!3 `3 3p3 `p3p3E`3 3`3P7 303p3*/p6p3Lp!r p pTP544 P@ r8@p@PE8P 7p5x @6``7 06@0p0  PR@$r0u@P p6T$rp4@0 T6x90 8p O$ G 0@/rp@Yx*% 0:uy91 ;&x:;8;# ;@ bps;ub0sP9ub.6x7as!"x0:pg6$r4`90`T5rPr bOs 8" 3 Ώs  34 " p3p3-/`36$rp3Pp33  d'r:pJ'r< p5< //=*d@ V 0P`"p`Er=8r;Eyf'r0>`% 9<6y<@%=4?%p$@$@P $@ΐ<`;?#< 5 ưp'68<`3p`sPpH6P6r@ PP>%=$P%p& (p2$r2r$ <T'r @p+Ҡ4p?R0"pb?00  pP-@0s &r=@@A4 ?Ts@T 5x Pn `9E rA@p 5r P90@p  ?1$rA 9rEyp%pb  Ey`fr`B@Z$rPPBpB!p4p` $ `  $0pv؀C @ 0 po6P E$ `` H`! `6 5 Bp@0; !`` @ 8E rp@p BPD D "3  rs CEx CPP@ 37r`  : ^@E`0@Dr-O0HT`@4 @4P!p  FpGu 0@ 6 `;$x %P ``% F`!b  Ā p  b E1s `40bp.s P u"x@f/rp %b0HE6x @%"4 Dr p PH`I @ 0rpp (H'r$r0  6 p26 ""$ @H P` p&r P b` ""6`1$r HPH 06H&  I3 @OP @)0@00` HP% @ Bp E6x@΀`6r@ `%0C&rP /$0 G7@P PP5r0 pP`W r 0p`P$ 0P P @T PP@ "$ &J)1= T$r $r axax  g.f9|fg9/$pg%`34g&g"g $xO ȏpp-OPO#|  >g &ggG34N4P80+4p4M0'442 464 p44 :=4/O3 3ʰ3 373gG3/3 k36?Pp оP 0 pĀ@P>f&rp)@: r6r@ p@ p*0bp%йPp1s/&.. p0p *p% ʐP@+r7E$r 0%PP001 r@ 4   6rpпϜ% P p% *pPT r%rCPн@ < p ` 6"$0*=6r// 1$r6r ` 09p@0P"$ذp@`'$`Pƀ  @ ĀO0+"/ T" ʀ `6$r  @| @ ȀE0 p5x P-/p  p P ppP p p60` p! 0  P p P'$ İ `@`Vr `@07p Ґp p  gƀpp@=+  p  p 0P p 0 /nE ȀT Ȁ? ``6ppp Ԁ `8 pp 'p ,6 =@H*OPP €:P-p`pp"@@ bp  -/  @`P`0 M@ 00P   p06p2r0  I   Pψ r0 07$rP 0O ` p @ p4 `@ P`p0 00r{? Ai?4(@4$4@2'r@4 0@'@'`*P P4 ʐP/p/Pp%6s@f($r4L!r/4ZP /p4(333434%$"4'7(%4p *p %p 05%4ʰ.4]'$34 `p@4&*b 3p@P!4@ )3/P4(C4P4p7404=E ".4Q5@  384+ 3`+4p!+)2! #R/`p /4*$;42D043`&`3Dr `034 P8p 43`0 4 4 45`4 44 @ux0r 5u$r@0r  '4  G P03/4^0'% %`:@ `&Pp3 x&46sp$0`0c P#'0)4Ex P %44p% = 2!O  W'r'6sp(4 /4|&r94@=0 '0 60#Ȁ)Rp$, P4z 3)(P> *344%&Ep`4I$@:84 P3 p4/6P24 @4" 4 4 3P %2r' 444 P04Dr`/ /48rG3;` bpI 464p;  pH2!I 4 D 04 4Ā4706<9 (2s@7P PpPEx@ `$ EP 647`4P7 2r@ 0 04="$P  ( p4 P4 4``I9&!$@HDr x  Ϙ4 )0Cw t `L@|I@@9@|4@7 `4q(y70 n@1t60F0x AB| ``  `1 `0 |}P@K1x44` xO{3Rpp61 |7@p` @4"yP?p   I@a ??G#y8@{8S"y>9!ny90%8t6x0{@p{`@Oc{Cp$|b@P<6xC0bBoPNP@"a7c{0"spJ E{  $( { b #0 !##8{0p# @ 1  b $ H {  SP$P0pD P$X #p !N $`  @$ !p $ ` ` C` `$ C  0$ C # !P$ C$ #SM <0?awrcwnCk xPC1x@>$| Dor:؏wp@x#xVaxP:pb Gu-@PZ1tK tJ`EP PE&t0:1~!WGutCxpM3r `; 6r ?0"~ C`p K@N@N @N0@t@N=PN0N=0N%PN0N@M}z0@4@4 *`IHYO?MfΏs0Y0O O!0@O>E6x%J=>>O YK&xI4pBI?@ PYNv@T'rN@@@9r@ O4G%B``XPFP>`4ERDrp`B&r@ ^#pBT$r 4u"6$p}%`W$G 0ML%0WpAW,6p0G C``0BK$p`P[E6xx0D# %$BErR0r`F J04P%$G@0TU0YȠ%OJЍ pLPO`pA DPD J A` #Rx J@WD*6X0E  FW0'$&J@@Y'rP*O^@]  Ey!o@TZZ6Z~ "H' `%@ 06'r` P^PO^p_L6x*$N? 90F`@M `0LPA r%bSG ` TpOB \\O`_`4p%` 0pG"6|GH0* \PE@ 3P!6PL@@Z@$r=L  ДU0X6$r p u  ( PLPLP` pQ$ STPOEy@R@ Ey/"^ M n%P  8`~E$r @SP]0 J@T'$G5 @G  1$@6Д {ДV8P0r 0 ` ` T'r@p4 P@* P  p@p!0d% Td%b.P P `5xp 0Y*d`pQ %@ @ c p%@ $PSpX@d0_S @ 0 `V"6Л@P ` 0*@p_hip[7 P^0ax@ WGu0 @6@[` he~.. Xx.4@ 3ʠh14`44 @ 3E |3 4*/3gG$35M03/TGy @3@3-33 3!p3p3p3#"p3 3p3p3 0p3p33p3/p3-(3$p3 `393N6|gpg4 3"/p.3"00303@| Sgfygg%"3P3%pgp_Kyggg 3344Npg4 3 4pg: PN$` PtBgpgpggpgpggpgC34=Л/d4|b/ 4 gp#|4 @`Ȁgpg30.B/4@< o_?{3 ~~oO?  A@0 X "R@v( , ( , 0  8B.d,$@p8 Q7 @H@#;@P@@0 A8 `X@@@@`@'?`@h , ``P@@'? d@@`@@'?)@@@@@>9@@ @@ @,@@   @`@a"B (1@ H9@A@2 08 @"(A  ,A @)050,0@PPR+ 8PJP @!@11F@P,P P@@)FA@PP ;@ `,@@(,p(p90KA0ApJp ,   @A@   ,A` `:@`6"  H09pF0 ` `,  @A @ ,"P@ P`A` J , 1A`I@6, ,  @ !A p*@"A :A2 p   ` 282 o3_" 1    3?   ]  SP1 7 Al ߿~߯}?}ۿ~ ￿_!_?6  @` `P7B*0 ^  x $ " 8 "P"32 & 6 ` ? 3׿ /& X&^ q& 'Њ.=3 34 35 3'&?9&b M& 36 3@  Y߿@@/3v@3!7 3 3L/ g4@g Mrg0 g)/{ogI S9 5 ZK?w Z @ggZg;@3  Z: 2 3*? l3M m t ) #; @3')k M o< g 6Y_?o= gUog!> &@3*o&^@4 @Gg!? 3@ 3A 3&+3n&3!B 3'3C Z7Zj^g[D  giE 3*oMm  F '3G 3)/3J 33H 3U/s3I I 6 3`P?P#׿P?w  dqg ' CJ & _ `߿ _  $ & X@M  [B2PK J3jL 3M 3g*3o&3!N 3  g3O t3J?t@ AzP FH @`"(8Y 9 ,A )|P,0@PPP`+  8PJP @!@11F@P,P P@@)FA@PP ;@ `,@@(,pPp90KA0ApJp ,   @A@   ,A` `:@`6"  H09pF0 ` `,  @A @ ,"P@ P`A` J , 1A0"`I@6, ,  @ _uSP / )/6gICQ p'Z/;pc3  ZРR pg3)/g9 @hXt$ @|  (( $40 @@s.*ATC*p)pEVp`p+Dpp+P_iCPV2 P$0jSpP+#EV2p0pp2pVPP+#`E p+pp+@Nzpjp+pFpp+ nMpMnMppMpM)PoNpM)0 opNp My2` `+pMpM)` o/P+pM)@ o0 NpM) oNp\)oPNpp `p+pM)Po@Q/j<"  !/wKJJIIHHGGFFEEDDCCBBAA@@??>>==<<;;::99887766554433221100//..--,,++**)) 0Tx,Pt(Lp$Hl Dh07>&Z4"m*X  ފRc ++NL$'j8  W %!ux 090PJp 0 E"@@ pР@0 P`   p@  "1=X$K*#0JDIԪ$0HdG%0FEE#&H#$G4BV AGT@Cr)`?Gt>=*H<G$;+0:9*-087:.065.4b/H3'42#r001'T0#10/'t.'-#3H,'$+# 0* () QX W-!/\ ty dz @{ |  } ~4   h >      x  <"$ % ' @) * , . h0 >2 4 5 7 N9 ; < d> @ A2fB+/ 4Cb8z1 `D`` E3 .FX. \G40 H0 Ib.0 LJ K` L`h *Mh DNPO+ |P Q"0 8R` PS hTH- tU-X';  dk0 @8&l,@d" X $0 #.AT P3p  ,)6 4h9@@[4 <)? @ =#@8  @"@;/@0C #x  /@0@/@.8@1@/@@2@/@.@3@/j @.H@4@/R @@5@/:@.@6@/@.X@7@/@.@8@/@@9@/@.h@:@/z@.@;@/b@@<@/J@.x@=@/2@.(@>@/@@?@/ @.@@@/"@.8@A@/Z$@@B@/&@. @C@/'@.H!@D@/)@@E@/V+@."@F@/-@.X#@G@/.@H@/0@@I@/2@.h%@J@/l4@.&@K@/*6@@L@/7@.x'@M@/9@.((@N@/^;@@O@/ =@.)@P@/>@.8*@Q@/b@@@R@@ 5+8H@ @ "A @` <8 bg#/O -@+N 3 @c@*@/*@@+@/@@,@/@@-@/ @3 @.@/ @g@/@/ @@0@/@@1@/X@2F32@/.@#7@3@/@k@4@/@@5@/@@6@/@ 7@/@;@8@/z@o@9@/> @@:@/"@@;@/#@ @<@/%@?@=@/H'@-s>@/)@.?@/*@@@@/,@@A@/X.@-BB@/.0@.vC@/2@@D@/3@@E@/5@-F@/V7@#E)G@/9@y@H@/:@@I@/~<@J@/*>@#K@/?@I@L@ )}@p/rB@#p10@/C@.@1@@.P@/^D@.@/E@.0@@.@/VF@.@@.@/G@.@/BH@.`@@.Э@/I@.@@/.J@.@@. @/~K@.@/&L@.@@.p@/^M@.@A@@.P@/N@.@/0O@.0@@.@/dP@.@@.@/Q@.@/BR@.`@@.@/S@.@@/ T@.@@=  @/TU@.@@. @/V@.p@/W@.@@.P@R>XR'@ %O@.)@*@/Y@"6& +@/3Z@.C@,@@.P-@/[@.]@.@/0\@.`j/@@.pw@0@/]@.1@/+^@.`@2@@.@3@/u_@.P@4@/`@.`5@@.@@6@/pa@. 7@/b@.0@8@@.@9@/ec@. @:@/d@= ;@@.@<@/Be@= =@@.-@>@/|f@.9?@/g@.F@@@@-A@/[h@.`@B@/i@.mC@@.z@D@/Jj@.E@@.@F@/k@.G@/!l@.@H@@.I@/Um@.@J@@.K@/n@.@L@%o "1,_/o@ 9T %0@@@ d'xT @x@@.4@y@/p@.@z@/5q@@{@@.@|@/r@.t@}@/2s@.D @~@@. @@/t@@@/-u@. @@@. @@/wv@.T @@/w@.$@@@@@/rx@.@@/y@.@@@.d@@/gz@.4@@/{@.@@@@@/D|@.@@@.t@@/~}@.D@@/~@.@@@@@/]@.@@/@.@@@.T@@/L@.$@@@@@/@.@@/#@.@@@.d@@/W@.4@@@. @@/@@@!X 9! % %6p@3% :  !T @8G@0/]p-8%Z % #Mp&88#0||@x Hd--ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 AI .visible .entry _ZN5cudnn24engines_runtime_compiled23genericTranspose_kernelIfffLb0EL21CKDataType_t0EEEvT1_17TensorStructPKT_S3_S4_PT0_( .param .f32s_5_0,align 8 .b8zf1[104]u64 .ptr1z2}345 ) .maxntid 512, 1, 1 { .localg_ _depot0[208]; .reg .b64 %SPLpred %p<9>b32 %r<193YE%f<7Urd<44>; mov9[%SPL,B; ldFO1, [Ty'0]ur}91+8}3~)24L/46|O4+967|18~)10B!v2{%r49, %r50}~8O!512d!534/72566785"z6z4z6z6z4z6z6z3z-/10|  2|3O%r65|4!667}4!689 70/71!723!7457z7z7z7z8z8zT}t5]; addM 02104; st.gk A[%rdp, )#40) )8) )#56) )#64)~ )7Y )84))E9O%r4782)))))^)9) )26265; 8Ytid.x?5 29%f4; fma.rn '6V1%f5dR7$%f  45u#gt*x8Z4: ret; },,Y2,,g,k,X,`,k,'1,!&10,,5,%,16 ,Sj0,R,c,b,d,d%L%d~% ~%\!~%7"~,m,%,U%,M ,S,a,p$|,od|&d~W'~2(~,U)d~,MZ,2,J",1,1,A1,9g-,W+g-8H1* $ ,1,4q$ ,)73,1,4,"t",3? 9j"1t-,y ) ,d" , ,4U$,, 6),,4$,,,:"(,'.,, (&,y8-, &-/"),4,*3,3G(,1,4,1,21,1,8,+, ,',~  , , K  ,, 8,j8-, ),j+,,,, , ,1,,CT,|3, ,>,iR ,4X+1, 3+?@,3abs-w ,u&,`0f7F80 - ,-#40:0f1g#lpz? -m/p8- -n- -9-92-M1Z0-M7-Q7->7-F7-Q7-'2-!Z4$-2"-9h70A-87-I9-Y37-Y37-9~&<55!4Z9&"=5$4:dP5$49&5$49&?=5)(49&96z&=6z&t>6z&-37  /Pd07, 1/r6149"714:cJ7"549D,77"54d97z7z7z8z8z8z,37,@o-WXtYJ )W% )jX )jX )jX )jX )l)uEYYjX'49\Y)))))^)9) )gYt[Y1YY?PYYnYTG,2,5Y #OY3615PZ!86Z02-A2-tYKZ2-Z.7C2- -z"kQ- "XZ9KZz9L9sOZX Z ZaQ-MZYA9V0GUZ+Wn!?$,Z "U~ , -V!0-, =VZ(CURY6Y3nZ1 Z)97YX0%2TZ T\Y1Y1ZX Z.1  7 Z+Y 2G, N&fY!QIYSRZ.X0=rRY +N0Y1R-^^ZW4Y Z8 X,N[2  kYZ1UKX Z5Z:,IA,MA,:A,BA,MA,'4,!Xv16 %rs<:4M,5A ,5A,EC,P/A-Y/A -Y/C4&7C:&Ɔ7Dp̆7CF&҆7CL&؆7CR&ކ7CX&7D7Cd&A-/A 5ACA-  -6qC.p7pC7C 7C&7D,7C&./A,.@` WXHZA )W" )X )X )X )X))XHZXHZgZ\HZ#)))))764,.74.A4.3ZU4.3Z.748 3ZF0Xk(. z3Z3Z7S41Z4824..gLZ40..V0.8 b8b8 6 8 b 88 b8ą8740.740.0.818 6 8i7 40. LZ40.'C67-x; 78ZZu'h// { cvt% .f ZQrs1;}Z6]3]4Z5W 16^UZ.$rsZJ4 .4 .oKE  .f .m .q .^ .f .q .'5 .!Z!.25O".Y ".Y".i".h".j".j`& R`&|p] `&>!`&"`&#`&".[P".[`&".S ".Y".g".v*7$) *&|".up\(p=)*".[".S".ZH5".5".A5".9\U5".9\.".5". 9\k!h[$". 9\Z5".7\5".25".5".4X".". ".d<".~ d ".4 &_ ". dgZ5".5".".C ".Z5". R\5".7".\&f48\ hI\ah \4.:\75.5.U09L0.S7.W7.D7.L7.W7.'6.!9..2\ 6.?7 .?7.O9.+\97.+\97./7A.7C&7D fN[)&7pC&7C&7C& 7D7C&.97 5XA . -c .+6qC/\p77pC=7CC7CI7DO7C .97 .@Z/\ )Zy )ZZ )Z; )Zw6 .w6".A6".D\U6".D\.[6". NBRk!D\2QD\D\- wP6F\6[6 .w6 . X . . Z  .+\6 .w6 . . .+\6 . +\6 .'[a[[2x-3,u#f2[3\[ 3]-886-6-oD-]-m-q-^-f-q-'7-![- [ܶ 7-Y -Y-i-h-j-j%-[%-[ p!R% %!%"%-[[`$p%-Sf -Y-vB7( -up-[-[-[ -[-S-rH7-7-A7-9[U7-9[.-7- 9[-N- Rr7-r7-7-7-W-- -+' [7-7--C [r7-  [7-M3Z#f4z, r5Z <Z Z6Z -\\--9-9-7-7-K13__nv_bfloat16B-II-MI-:I-BI-MI-'8-!Z3Z- 8-5I k-5I-EK-/I.[/I .[/K&7K'7L7K'7K'7K#' 7K+'7L7K;'T./I )5I1CI/ [6KA7LZI7Ḵd5/Y6Ka7Ki7Lq7KU//I]/@ [t\ )t\ )t\ )t\l )t\U)8]/8H/A8H/_\U8H/_\.8H/ _\NOH/8]\828_/8a/ZXa/a/x\8a/8a/a/x\_8a/ x\8a/'4!\ \#bCW{8*/8*/wF\9*/u*/y*/f*/n*/y*/'9*/!]+/ ]7;b<44>; QSPL, __local_depot9,/a J,/a,/q,/p,/r,/r',/c',/c ,/c',/c',/c'#$Z',/c ,/c',/[ ,/a,/o,/~,/c Z,/c,/c7lI,/},/c ,/c,/[,/H9,/9,/A9,/t^U9,/t^.,/9,/ t^u"Q,/ U9,/r^9,/29,/9,/oZ,/,/ ^9,/9,/,/,/9,/ ^9,/7_//^79/9/]_0/K0/[7/_7/L7/T7/_7/'/10/!V/P7 /G7/W9/9^A7/9^A7//#9'7K' 7L6K'7K'"7K'*7K'27LQ7K'/A7 J5hI/ i6KiZ7Lb7Ki7Kir7Kiz7Ki7L7Ki/Ai7/@ p]=^ )=^ )=^ )=^ )=^ )=^)v)6bH/48 10n|?z@2,3))))))) )27266;oE8Ytid.x# 7(04rem"(41 =9= T5|%N"94({5{f 2 25f.51f38 3rdח15)-325 ~/54=6=5ϕ%N*45 5*'3383v`5/=ƉN0* F" 8:3.3. . Cwide)y\*3.@#f62equpe`0f7F80`b ;.Mc0, 4090f1#lp..m/p8.9i7+T.S0.C0.S7.W7.D7.L7.W7.(4.!_W4\?7 x.?7.O9.\97.\97.7.69&6D&6Ep5D&6D&6D&ފ6D4֊6E6D&.9o7 4XB- Mc-5qDND6D6D6D6E~6D-97-@\ )Ey )Z ); ) ) ))uGO4-4.B4.\V4.\.n4. 9"\n  '18u#-168#9)%-18t#0"^-99:#10ON/18r#0i%LD%0#9#0 %05 b%0y&>103b%%19< b%'20b%1&2&0+~0&0n2&1N)971 j 1#12S'1`/12=[&22 S'13N01 a%#17 12%%1 2R1S''2322Y&2&2.~/20=r&|1N02>5SE)E)5 2\ `/25=  *%N,152 *  )/29x  636(~3X3 6'('N2+33/,7).27<`31T/27N%N+ 92#89 %-1B#ne[ 1aW4aW4. \4n4-4-W-0)^U!9 +494~4494m%N --  -  - ^ w-- 6-j1- X-i2---4-6 \4- 6  \6:#0/n-35 6U83=P/35 %N 6  6.36`6~ N +4- 1,3A\)[[Ps1;} [[3[2X\$[3[D4$-4$-oD$-]$-m1&+p$-^$-f$-q$-(5$-![[L5%-Y0%-X%-i%-h%-j%-j &GV R &(p  &  &! &" &%-[PN & &%-S %-Y%-vӷ6B%-up%-[%-[%-[%-[ %-[%-S%-I5%-5%-B5%-3[V5%-3[.%-5%- 3["vNA A+) q,b$1&92 z99&1&[#H R5%- 5%-5%-5%-V,%- %-[5%-5%- %-E/E1%-[5%- 5%-ZPfC Z4Z -Z6 Z6IZ!- H[[45-5-Q?S2_6-O=-S=-@=-H=-S=-(6-!Z4n-Ur<193`"6-;= IZ;=-K?-5=-[5=-[5?&=?&=@t=?&=?&=?&=?&=@=?&-5= ;=I=. <?=@6=?=?=?=?=@=?.5=.@z Zѷw6.ѷ6.B6.[V6.[.É6.Z .O. O.O.4.. d%959..Z *'S[U[*[/T0X[[u[[ U[8[[ Zu#fY7r0[:0[7?XP[0[[ [Nx|Y1O\U[e][ZZQ1[ [s[T[\ 6[[[{*8Z[Q2 U[1Q[p]2r[X1Z)09[U1[#W[!3[5JZC.12$3[[ [s[ W+F[ @ [8Z Q4[S3ZZ 3 S[[ WO(W[0[60\[7=[]7[V:\S[86[6É36.1Px1; @%p6W6.W.R[6.5[6. . Z[Y6. [6.+:ѷA շLE\-b-s2E\5_\ X.WaZ.$rs^ .0.db8.6.qEV\? .o1,r.`.h.s.(7.!b\.5.7*7.[0.Z.k.j.l.l&.]&.] t.]&.]&.]&.]&.] .]&.U .[.i.x.] 6.].].].].] .].U.^I7.7.B7.+]V7.+]..7. +]!P. T9+} .z * . , .-)4h-**+7*.k!*.4%.yXӈ.6.-- ...-.i. ..Z.R0/&13N3) N7. )]7.37.7.$Y. . D]7.7. . .D]7. D]7.7.] #f77. ]8] s]' ]51/:1/]7]71/WQ01/E01/U71/Y71/F71/N71/Y71/(81/!]]T///8,//A70//@7//Q9//];7//];7//5?W'=?W'=@t<?W'=?W'=?W'=?W'=@Ѹ=?W'//;07 ;\=. ׸<?-=@M?72}.<t?-=?-=?-=@=?-.;-7.@] ) )8.鸹8.B8.4]V8.4].ċ8. c\&wP. R[4]X4]5-ċ1 '4]#Z4]86]8ċ8.8.X.]8.8. . .8. ]8.+BT-#f3\37]\2:f\>8-8-qyE-_-o-s-`-h-s-(9-!\ - \X!96-[ -[-k-j-l-la&-]a&-] t-\a&-]a&-]a&"=$Ta&-] -]a&-U -[-x--] -]-F=* --]--]--] -]--U-RI9-9-B9-'\V9-'\.-9- '\-jO- SR9- )\9-9-9-W-- \9-9- - -\9- \9-s4}[ R5Dx[5x[ cx[ x[6x[ $.\[89$.9$.Q13__nv_bfloat16*O5_S60.DB<.OIH.SIT.@I`.HIl.SIx.'/20x.!\[\w. w.AI .;I.KK.5I.\5I.\5K'|=K'=L=K'=K'=K'=K'ċ=LЋ=K'/5I ;III/ <K\ =L~=K\$=K\0=K\<=K\H=LT=K\N05IZ0@ ]#40] )] )] )#64) )#72))8))8ݳq/47 10;G%r48c2?).)) )))) )266#ov:8Ytid.x" :HI)0wq)0x)0x)0x'!`'y )0i')0i')0i'5$4)0i')0i')0a )0g)0u)0\P')0\.)\*\ +\+\,\)0a)0H/21)01)0B1)0n`U,21)0n`.61)0 n`l#!&%)0 W ll`)011)01)0g\)0)0 /;c*)0~ A )08 7. )0)0 C/)0 8)0zb0)0 ,)0iM/ 0/)0)0-1 )01`0/ )0 )0E )0`)0`A)07a10/`7x?0b '0Z00a70e70R70Z70e70(20!V`V7 Q`M70]907F70+`G70'539a(=Ka(=L<Ka(ɏ=Ka(Տ=Ka(=Ka(=L=Ka(0G7 ;tI0 <K)=L5=KA=KM=KY=Ke=Lq=K0G70@_ m]^U:f,220/220B20D`V20D`./220c S" V^#0 n8.27T 0/0 \00 ^ 0+`20O+`20 +`20+N.\Ck/|G$?e/{//l/t//(3/!_lK'23_M Z/g/w/v/x/xj'/ij'/i /hj'/ij'/ij'/ij'/i /ij'/a /g//i /i/i/i/i/i /i/a/H/23/3/B3/*_V3/*_./3/ *_/mR/ V n,_3T /3/Z// /1^_3/3/ _3/ _3/s/h^83//G .*4^<C/HJ/LJ/9J/AJ/LJ{/(4{/!^2o:4z/4J t/4Jn/DLh/].Jb/,_.J\/&_.L'"6L'6M6L'6L' 6L'6L'6M6L'&/.J 4JBJ/ A$/ڎ5LԎNLΎ6LȎ6LŽ6L6M6L/.J/@ ^ ) )N )Nl )NU)N>)')NӾO4/Ӿ4/B4/^V4/^.4/& 1Uв^Ӿ4~/.&434/Ӿ4/^4/4/ / 1 #16b6ؐy6`666 N9W^4/+4shl344d:?d39^:,`rs1;} ?/~$muof:cfma.rn60PRMa&/1#gt181!411814/4/wF /n/u/y/f/n/y/(5/!^/]35/a 5/a/q/p/r/r&!Z& &!&"&}#&/cNG&&/[ /a/o/~6J/}/c/c/c/c /c/[/I5/5/B5/^V5/^./5/ ^Z"8U^/ V5/^5/35/5/Z^5/5/ / /5^-5/7 /*u.`0f7F80S; movoX)/ D/Nw0, 40960f 1g#lp/E!/m/p8/9i/7/9/9/5/5/]0a80/[7/_7/L7/T7/_7/(6/!K/3!-6/G7 /G7/W9/ ^A7/ ^A7/-.J/6L'6M  9L'6L'6L'6L'6M6L'/Al7 4hJ. 5Li֍6MЍ6Liʍ6Lič6Li6Li6M6Li.Ai7.@ \ p6.6/B6/&^V6/&^.6/ P6(^66.6.Y.Y ^ Y0Y.28Y4Y0Y467=Y0Y5|%N9  8)C693d3>d315Y-325555_[/3252Zi28 6.6. . . ^6.  ^6.+]2]]3]2c^$%.3.%.]6%.6%.wE%.e%.u%.y%.f%.n%.y%.(7%.!]$76&.7D&.a &.a&.q&.p&.r&.r&&.c&&.c 25"&&.c&&.c&&.c4&.c &.c&&.[ &.a&.~i&.c &.ci&.ci&.ci&.ci&.c &.ci&.[&.̻I7&.7&.B7&.5]V7&.5].&.7&. 5]3>.'$ 5]N >'18#-16&$9Z%-18b$0^-99:5101;`$06%L<194u%0)94%05W %0&3%%19< %'20%1&2&0+~00n2&%N)971_( 1#12m4remM1`/12=&27mad1%N0'1 G7 4V%7 2832G'-2352.~/20=r35|1N0)24S/d25 2`{3 *%N,152 9* 3/29x  63~(~33 ~@N2#13$13`,7).27<`35138=N+ F`*@&38U"nep53)4`T7&.-T&7&.7&.7&.X&.'^!9i-9d~4494m%N -1&.  &. &. A -&. &.j_.&.&.xJ-.9-15/&.&.7&.7&. &.E &.]7&. ̻7&.\QfD \4\ .\ \#.5\!. J]&2,4\7.7.Yo6__hal+O5_S6.L:.WA.[A.HA.PA.[A.(8.! ]\ͻ:8.CA0.BA.SC.߻=A.]=A/]=C'ڌEC'EDEC'EC'EC'EC'EDEC'9/=A CAQA/ 3DC\"ED~90}0.DC\4EC\:EC\@EDFEC\,0=A20@ X^ ) )i820i80B80C^V80C^.i80 0 QR RU0)*0/]9(05-00/$j'B0_U:0870U 0"k/uZ%L. z)0+07,"028=z) 0N).1f0y)010;/0"0=0X0 0/)B0>1 6;080 50.2730+/ 2pI22r0X-1>/)09?0S1$(,0+  2/`2\X2: 05.b0/ k+,F;0 @ 80. Q300.0"0 3 0/"0 )Z01060X07=b079 wY002010108A^8R3840i860\(0(0 ^`9(09(0 (0 (0^`9(0 ^`9^`+ 0(07(0`#f7/ `8` 500t`P> `50:0`9090cy'0Z00a70e70R70Z70e70'/300!ܽ`0ɏp v%G7 PϏC\"70]90)`G70)`G70 =C`(EC`(EDDC`(EC`(EC`( EC`(EDEC`(0G7 #CtA0 ODC/ED5EC;ECAECGECMEDSEC40@_ _I40],N )-`= )-`, )#64) )#72) )8))9O%r48 10;@2?).)) )))) )2760%r8Ytid.xk _=?';E?'7E@3E?'/E?'+E?''E?'#E@E?'P/== C=Q=/ 7D?0 E@fE?0E?0E?0E?0E@E?0/==/@ $\]o9f,32//32/B2/^V2/^./32/&' .REO^ U/T^40^ U9wZ^^X CV^^ l8+( ^22k /1/Z// /^2/9cQ^2/ A/)"5p^#_#s1^ ?/kbCW'{/x8G /p/w/{/h/p/{/(3/!-_/ -_7=3/c /c/s/r/t/tv'/ev'/e /ev'/ev'/ev'/ev'/e /ev'/] /c/q/0/e f/e0/e0/e0/e0/e /e0/]/2$3/3/B3/h_V3/h_./3/ h_/Rh_/ V l\ f_3/33/3/a[// /^_3/3/ _3/ _3/7`<0/_83<0M<0\('<0V0<0]7<0a7<0N7<0V7<0a7<0(4<0!wW4w:0I7 *:0I7:0Y9:0)_C7:0)_C7:0c=? (PE? (LE@HD? (DE? (@E? (6__half*O5_S6H?@<b pdHe V5J2bACd>+/L9@6\p j^Bv P5D2\pdA7 ^/ "*( =N1Kb pdHF'V5J2b2Cd6!};88VX  =X<] 5>2VX(9+ X669986TPWV:2=5<2TPWV/:J =H1E\p27^B2E5D2\p_^0B$ 53?2<TPWV:2=5<2TPWV0+3E28:26N8 \P4'B562N83*+ ;P debug_frame.relanv.callgraphprototyponstant0E@c I'qHqn1 )CP ['uPq" +Q D U'oDbq' B P ['uPi,87 8 zB |'i8i  6I 4mj +B"pbxb|Dc)V c4mp}44c b |4) ( G(g(oapmercU_; eN ZNzNtZ' EV ^ xVt P T J X'rJe? @ V E'xVl :e > E 'l>l zl :pv:1 6'EeJfG:p|::f v ?7 . J.j. }-. u-Zt 3L tNt, ' lFV ^'xVtA t J T Jx?Je} @ V E xVlc J E > R'l>l zl :pvA :e'EJxJJf:pBe::f 4 k7-:<.j\ DHME %I pSmem.offset0G 1.0NRSMEM_0_0_alias2†XYC IYC I6D,i,cG%L'eR\94 Md g4cH . (C ( GV'a(TNn 4 4b'g4[W T  4 D'[[T 6[ _2uW5 *U'R4@THn(UHr_8oU  ZU+   9 Y :s m}Q/-!@u\ S H0 d1 @2 3  4 5 6 7 8 h9 >: ; < = > ? x  @<"A$B %C 'D @)E *F ,G .H h0I >2J 4K 5L 7M N9N ;O <P d>Q @R An-gB# 4C `D  E# .F \G H I LJ K L *M DN \O |P Q 8R PS hT tU0 VxT $WUV lXW YXY `ZZ [[\ R\]^ ]H 8^`!a@_u 0`c!d@tae bfg Hchi |dj ekl Rfmn go 8hpq lir jst 4kuv \lwS$ @|  (( $,0 Q<U \h% hh/ghh/8h80hT*g80ph0h0*@g8h/hh/7 h/xhh/h0*Hg@0h@0*g80hTh0*Pg80h0* g0h0h0*X g80h0*( g0hh/h80*` g8h0h0*0 g0h80* g0hhL h h/h0*8ghPNVIDIA CorpA@7jptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/D" KKJJIIHHGGFFEEDDCCBBAA@@??>>==<<;;::99887766554433221100//..--,,++**)) 0Tx,Pt(Lp$Hl Dh!70 !ux t090PJ03 Ebq b6jNi`Ox PQxRxSxTx Ux/2Vx@`WxXxpYxZx[x\]x^x_x`x@ax@bx@cx@dxexfxP`gxhixjxkxlx0mxnxP ox` p| S|++v1'1#01'D2# 062'tf2' 2# "H2'<26 &3'lV3'3#$843#̌%04'dF4#&0v4';',4# (H5'\65#t)0f5'5'$5#*/!T"+0V6'1'6# -H/'L.#t.0.7|@0+# H* |) Y{or"y#~;n{qw1 x0]1{00@DCy%bs `E{ؐ #( !0#0 {`p{ a"$|" #/{ bx#@C p |"+qp` 䏀#8{0!b # @ { "$ H '{@ $P G  $X C $` C 0"$ C p$ C $ ! "$ D @$ C  # !G0$$ # C'M`w40Pr"P !] b!} xx0`$|%`pr5Ow`r r @xpb Gut"B P`1t 0P11t_ `Ap` 0!x%01| &`΀7p@x@@3rp@*x P D|`D|px@Pp$x1Py0yz$x 0% 0"4P% @bs 0Fr) 4 qbs'Qsb.xs0!!Ex f/1t0P0r! 0r!! p'r @04r"pSrO$r@4# CrP3s@bs 04 04!b.PvDx tsP4 Op0/$rDP"ir h'r`as$r!6rD/b@'rP$rP6xYOrTrppp$40`$ `@` 0@(fr$rPp`P7P9r@'r! bp5` ! " @ r@p@pV$r `P0 rAp`@0/ 9s  4"P+`1s `P%P4p1p`p@ r 1p@Ex @p,`@Cp` %sfr#P%##5!!7##  "<'(0@pR`1 rq3pbpp!0#`@"3p6r@#!ExP`r@T'r!  !!$!ڐ!@ K0 0RPE!!`2!*&r444 !PPP$  @$r!p4p :x%&xuy*"%##p5`u% " % %!%0 %0/b4!!@ 0  @!R K$r#@E0  Rr p` 4 `pUr@ p @% p @*  H'r!!1 r #pRX05##%   p%PP`aOs    $p  Dr   40  @$r% ir  @ /(0% P  {W0`3p`0 !ȏb& 4    1r  p (.0 #b@ u  9x `Tr@* :r4  %` 4p@`3pbP 4 &r0 6rP  D@P` 4 `Ơ` `+r p @-.A r#R4 u$P %   6 WW$r @ &0 P   7 `  (.'r B r0 P 'Pp5x u##P # p  p Sr@ 4p &r0' J$r7 0Cx 0* %(   ``8 @ % p! 6r@4 'p; 2rp 4 P %  1p@ `%"("; Pp %""@0 %"0*bP % "@#*dd` `u/y ! $#Qp @$ p p  #u`0.pGX@p @ %8  6x #pJ' `H '$P` P&r` 5 P:P80U$r  P( P %5 4 $4 P7 6r (@5r 7 T r  p '$ `FPp5p!0p @pp @p`  Dx@`ҐP H rb €  @9I r8`$r% % 4@ $8 T 0 Pf  4""p`x`T$r4 4 5ppOG PP4 sr Gu 00ax` 70 @Jx * * ( Jx 0 * @% @k"$x %Pb%0" p& (2s4@%0 % g/r 040 r!   ` #r O` Pp 4` $r 0@ @P4P  p0 @0% rD`4r!P6r@@ %!!P pfNx p5# ``1s @Ey! P4# @  &xuOy 0P 0P4&x'r" @Pp6r`7 P07 0@Pg1t4P00@ &r(@@P@%@'T$r  @$ 0 4P P`0%"0 r0@` I$r5` @00'80R # K'*@(0T&`  p`Er@7@p$rp&r ``0I'r@!`6sP8p@$r' p3p@ P0 9r 2s@50&@`l/ 0@H r `%5 P7P@5x`@8P &r P  %  6` `5p 00@   `%0 (p@$r 6r  5 %p  ( P0!`; 0&r`% @ ! rcT r@@ DpH8p 8 pP%pb@  0 ʠ@P' 0  P 8`P P%@@& G  P@ 4  $P4! ȏ$ 4  4  9   `&%p % %  (p %  !b  ` dP%` `a"s M@ 6s$ " $vbx p  !g/r0P% pp40P"W$rP  'P2rp 9r Er@'r%P9p p0`T$r0P p  0 2p` Fr @5@#'` P $]P p 50 & ` #00&P  ư p `0'$ P7xP 0(bp u) 2r `@0 9  0% ` P`   )&rp 4 p %% L5 '@ 0pP 0`P#E0"  f$r  Ax0"@.1x  L2cw ~.R"5r.p/@1t<P.6w 1b5|4.``p*y "5r 0?/D0U5|0` $x% p |@@ x0P$NTU@ D| 1pO>r0py  G PTMy`01Gy7pE /4/3*/33 3344h hg>0g#9gphg`MgPg"9g @KgVg&gg=gk @$Ђ SB`hgggggPg`ih hChg@ghhu/y g Ph&hh e/$xgȏ |gh @#|`x h/&0h/`4 0h?`44N4 3/(3 *3gG0h/0g)30r A<"r^`4c4=3#-@rgx!gP| | g<gP | P@/1tp x R$ P | p` Oy  GMyTGy E /`{"y#!n{ P5x0{00@DCy%bs `E{ؐ #( !0#0 {`pC p"$|""j#/{ abx#"@C 0$"0!䏀#8{0!b # @ { "$ H '{@ $P G  $X C $` C 0"$ C p$ C $ ! "$ D @$ C  # !G0$$ # T'M awrTr"0l Cn b@k xxp$|`pr\8Owl r @xpb Gu-00 PQ1t P  `Ap` 0Gx0@| `΀7pRx@4rq:x PD|`D|x@ 1Py0yz$x 0% 0"3 P% @bs 0cr /`Ts bsQsb.x s0!!Ex 0P0r! 0r!! p'r 3r"Po4O$r@4 brP3s@bs 04 04!b.PvDx tsP4 Op0/$rDP"ir h'r`as$r!6rD/b@'rP$rP6xqTrppp$40`$ `@` 0@C@@fr$rP `P7P9r@'r! b er` ! " @ r@p@pV$r `P0 rAp`@0/ 9s  4"P+`1s `P%P4p1p`p@ r 1p@Ex @p,`@Cp` %sfr#P%##5!!7##  "<'(0 0r@pR`1 rq3pbpp!0#`@"3p6r@P!PExP`r@T'r!  !!$!ڐ!@ K0 0RPE!!`2!*&r444 0PP$  @$r!p4p :x%&xuy*"%##p5`u% " % %!%0 %/b4!!@ 0  @!R K$r#@E0  Rr ` ` 4 `pTr00rp @% p @*  H'r!!1 r #pRX05##%   p%PP`aOs    $p  Dr   40  @$r% ir  @ /(0% P  {W0`3p`0 !ȏb& 4    1r  p (.0 #b@ u  9x `Tr@* :r4  %` 4p@`3pbP 4 &r0 6rP D@P` 4 `Ơ` `+r p @-.A r#R4 u$P %  s WW$r @ &0 P   7 `  (.'r B r0 P 'Pp5x u##P # p  p Sr@ 4p &r0' J$r7 0Cx 0* %(   ``8 @ % p! 6r@4 'p; 2rp 4 P %  1p@ `%"("; Pp %""@0 %"0*bP % "@#*dd` `u/y ! $4#$@p @$ p p  #u`0.pGX@p @ %8  6x #pJ' `H '$P` P&r` 5 P:P80U$r  P( P %5 4 $4 P7 6r (@5r 7 T r  p '$ `FPp5p!0p @pp @p`  Dx@`ҐP H rb €  @9I r8`$r% % 4@ $8 T 0 Pf  4""p`x`T$r4 4 5ptOG 4 sr Gu 00ax` 70 @Jx * * ( Jx 0 * @% @k"$x %Pb%0" p& (2s4@%0 % g/r 040 r!   ` #r O` Pp 4` $r 0@ @P4P  p0 @0% rP"`4r!P6r@@ %!!P pfNx p5# ``1s @Ey! P4# @  &xuOy 0P 0P4&x'r" @Pp6r`7 P07 0@Pg1t4P00@ &r(@@P@%@'T$r  @$ 0 4P P`0%"0 r0@` I$r5` @00'80R  *@(0T&`  p`Er@7@p$rp&r ``0I'r@!`6sP8p@$r' p3p@ P0 9r 2s@50&@`l/ 0@H r `%5 P7P@5x`@8P &r P  %  6` `5p 00@   `%0 (p@$r 6r  5 %p  ( P0!`; 0&r`% @ W rT r@@ DpH8p 8 pP%pb@  0 ʠ@P' 0  P 8`P P%@@& G  P@ 4  $P4! ȏ$ 4  4  9   `&%p % %  (p %  !b  ` dP%` `"s @%$ " $vbx p  !g/r0P% pp40P"W$rP  'P2rp 9r Er@'r%P9p p0`T$r0P p  0 2p` Fr @5@#'` P $]P p 50 & `  &P  ư p `0'$ P7xP 0(bp u) 2r `@0 9  0% ` P`   )&rp 4 p %%D p5 '@ 0pP 0`P#E0"  f$r  P3"@.1x 0 4C ~.R"5r.pP.4- 440c|44 44E |3*O 4fȏ | 4 /3$ 3oG3444 43 03#3p43`3P3"3 @3"3&33 3k @$N"N"`N43333 43C4'gbA5|3."/P04"03py4 y`K@ ` h */3M0f61 | bhpO#|  0/ h he/ hP44N4 pht4+f44 g3 ljji#| 46x ph hh Ph$ 3+/ h4*61t0g3+15r h E5|00r Ah h x `p @>r0ű04 ` @ g4?3//3 3 3 hPg015r g u/y * &/"h %/Oh1#|hh/&0h0h?`44N34 3/(3 *3gG0h/ о4$30r A<!r1 W`4^4=3#w t 5| `gPP3C *y  "rx!g@| P| g9g | P@/1t  x R$ @` | p` Oy  G `{"y#]!n{ P5x0{00@DCy%bs `E{ؐ #( !0#0 {`pC p"$|""j#/{ abx#"@C 0$"0!䏀#8{0!b # @ { "$ H '{@ $P G  $X C $` C 0"$ C p$ C $ ! "$ D @$ C  # !G0$$ # @'MwrTr"0l Cn bCkxxp$|`pr\8Owl r @xpb Gu-02 PQ1t P  `Ap` 0Gx0@| `΀7pRx@3rp*x P D|`D|x@p$x1Py0yz$x 0% 0"4P% @bs 0cr /Ts bsQsb.x s0!!Ex 0P0r! 0r!! p'r 3r"Po4O$r@4 brP3s@bs 04 04!b.PvDx tsP4 Op0/$rDP"ir h'r`as$r!6rD/b@'rP$rP6xqTrppp$40`$ `@` 0@C@@fr$rPp`P7P9r@'r! bp5` ! " @ r@p@pV$r `P0 rAp`@0/ 9s  4"P+`1s `P%P4p1p`p@ r 1p@Ex @p,`@Cp` %sfr#P%##5!!7##  "<'(0 0r@pR`1 rq3pbpp!0#`@"3p6r@P!PExP`r@T'r!  !!$!ڐ!@ K0 0RPE!!`2!*&r444 0PP$  @$r!p4p :x%&xuy*"%##p5`u% " % %!%0 %/b4!!@ 0  @!R K$r#@E0  Rr p` 4 `pUr@ p @% p @*  H'r!!1 r #pRX05##%   p%PP`aOs    $p  Dr   40  @$r% ir  @ /(0% P  {W0`3p`0 !ȏb& 4    1r  p (.0 #b@ u  9x `Tr@* :r4  %` 4p@`3pbP 4 &r0 6rP  D@P` 4 `Ơ` `+r p @-.A r#R4 u$P %  s WW$r @ &0 P   7 `  (.'r B r0 P 'Pp5x u##P # p  p Sr@ 4p &r0' J$r7 0Cx 0* %(   ``8 @ % p! 6r@4 'p; 2rp 4 P %  1p@ `%"("; Pp %""@0 %"0*bP % "@#*dd` `u/y ! $4#$@p @$ p p  #u`0.pGX@p @ %8  6x #pJ' `H '$P` P&r` 5 P:P80U$r  P( P %5 4 $4 P7 6r (@5r 7 T r  p '$ `FPp5p!0p @pp @p`  Dx@`ҐP H rb €  @9I r8`$r% % 4@ $8 T 0 Pf  4""p`x`T$r4 4 5ptOG 4 sr Gu 00ax` 70 @Jx * * ( Jx 0 * @% @k"$x %Pb%0" p& (2s4@%0 % g/r 040 r!   ` #r O` Pp 4` $r 0@ @P4P  p0 @0% rP"`4r!P6r@@ %!!P pfNx p5# ``1s @Ey! P4# @  &xuOy 0P 0P4&x'r" @Pp6r`7 P07 0@Pg1t4P00@ &r(@@P@%@'T$r  @$ 0 4P P`0%"0 r0@` I$r5` @00'80R  *@(0T&`  p`Er@7@p$rp&r ``0I'r@!`6sP8p@$r' p3p@ P0 9r 2s@50&@`l/ 0@H r `%5 P7P@5x`@8P &r P  %  6` `5p 00@   `%0 (p@$r 6r  5 %p  ( P0!`; 0&r`% @ W rT r@@ DpH8p 8 pP%pb@  0 ʠ@P' 0  P 8`P P%@@& G  P@ 4  $P4! ȏ$ 4  4  9   `&%p % %  (p %  !b  ` dP%` `"s @%$ " $vbx p  !g/r0P% pp40P"W$rP  'P2rp 9r Er@'r%P9p p0`T$r0P p  0 2p` Fr @5@#'` P $]P p 50 & `  &P  ư p `0'$ P7xP 0(bp u) 2r `@0 9  0% ` P`   )&rp 4 p %%D p5 '@ 0pP 0`P#E0"  f$r  P3"@.1x 0 4C ~.R"5r.p/4( 440c|44 44E |3*O 4fʏ | 4 /3$ 3oG$y44 43 03#3p43`3P3"3 @3"3&33 3k @$N"N"`N43333 4bC4'gbhh/P04"03*hay`K@ ` h */3M0f61 | bhpO#|  0/ h he/ hP4h4I4 ph@f /4 g3 ljji#| 46x ph hh Ph$ 3+/5M g@TGy3@g Pg4  J|0 3`h(3gppgs5r @h-g%5|0pH | xߜ @P 4@>rН /4M3 Ƞ3g 4*3-O4 3g3r3 g!h`)/$h! hP @h40h* h"h$x%-O@#| (0h0h 0h` h4 h@4@44*/ oGЪ34/O33/ 340r AX@44 3&`rx! 0r20P| 0| 0P | 0 @/ x R$ {@0 | p` @4Py g G36y{"y# !n{wtx0{00@DCy%bs PE{ؐ #( !0#0 {`pC p"$|"b#/{ abx#"@C @$"@!䏀#8{0!b # @ { "$ H '{@ $P G  $X C $` C 0"$ C p$ C $ ! "$ D @$ C  # !G0$$ # T'M wrWr"pcwn bCkxxp$|`pr|8Ow ` @xpb Gu-02 PQ1t kpPP `@p` Wx0@| `΀7pRx@3rp*x P T|`D|x0p$x1Py0yz$x 0% 0"4P% @bs 0@ra 4 bsQs{b.x s0!!Ex f/1t0P0Pe! 0r!! p'r 4r"pSrO$r@4 brP3s@bs 04 04!b.PvDx tsP4 Op0/$rDP"ir h'r`as$r!6rD/b@'rP$rP6xYOrTrppp$40`$ `@` 0@C@@fr$rPp`P7P9r@'r! bp5` ! " @ r@p@pV$r `P0 rAp`@0/ 9s  4"P+`1s `P%P4p1p`p@ r 1p@Ex @p,`@Cp` %sfr#P%##5!!7##  "<'(0 0r@pR`1 rq3pbpp!0#`@"3p6r@!PExP`r@T'r!  !!$!ڐ!@ K0 0RPE!!`2!*&r444 !PPP$  @$r!p4p :x%&xuy*"%##p5`u% " % %!%0 %/b4!!@ 0  @!R K$r#@E0  Rr p` 4 `pUr@ p @% p @*  H'r!!1 r #pRX05##%   p%PP`aOs    $p  Dr   40  @$r% ir  @ /(0% P  {W0`3p`0 !ȏb& 4    1r  p (.0 #b@ u  9x `Tr@* :r4  %` 4p@`3pbP 4 &r0 6rP  D@P` 4 `Ơ` `+r p @-.A r#R4 u$P %  s WW$r @ &0 P   7 `  (.'r B r0 P 'Pp5x u##P # p  p Sr@ 4p &r0' J$r7 0Cx 0* %(   ``8 @ % p! 6r@4 'p; 2rp 4 P %  1p@ `%"("; Pp %""@0 %"0*bP % "@#*dd` `u/y ! $4#$@p @$ p p  #u`0.pGX@p @ %8  6x #pJ' `H '$P` P&r` 5 P:P80U$r  P( P %5 4 $4 P7 6r (@5r  @T r  p '$ `FPp5p!0p @pp @p`  Dx@`ҐP H rb €  @9I r8`$r% % 4@ $8 T 0 Pf  4""p`x`T$r4 4 5ptOG 4 sr Gu 00ax` 0PJx * * ( Jx 0 * @% @k"$x %Pb%0" p& (2s4@%0 % g/r 040 r!   ` p#r O` Pp 4` $r 0@ @P4P  p0 @0% r@"`4r!P6r@@ %!!P pfNx p5# ``1s @Ey! P4# @  &xuOy 0P 0P4&x'r" @Pp6r`7 P07 0@Pg1t4P00@ &r(@@P@%@'T$r  @$ 0 4P P`0%"0 r0@` I$r5` @00'80R  *@(0T&`  p`Er@7@p$rp&r ``0I'r@!`6sP8p@$r' p3p@ P0 9r 2s@50&@`l/ 0@H r `%5 P7P@5x`@8P &r P  %  6` `5p 00@   `%0 (p@$r 6r  5 %p  ( P0!`; 0&r`% @ W rT r@@ DpH8p 8 pP%pb@  0 ʠ@P' 0  P 8`P P%@@& G  P@ 4  $P4! ȏ$ 4  4  9   `&%p % %  (p %  !b  ` dP%` `"s @%$ " $vbx p  !g/r0P% pp40P"W$rP  'P2rp 9r Er@'r%P9p p0`T$r0P p  0 2p` Fr @5@#'` P $]P p 50 & `  &P  ư p `0'$ P7xP 0(bp u) 2r `@0 9  0% ` P`   )&rp 4 p %%D p5 '@ 0pP 0`P#E0"  f$r  @3"@.1x 0 P3C ~.".Hp. 1| #3 13PPa(y@@ 3'p3p 3iO | 43 3oG g33 3p3p 0p3#`p33p3p3Pp3"0 p3 p3@"p3&`3p3p3k @$PN"@N"M3p3p3p3 3"0e3`bC3p3ff43"/.3"0g  gP83fy33%"3ʀgp *f"PegP xBg, g`e 33g3 `g 4N4 gg/d4;-O4 3*3!g 3+/p5M 3TGy3@3`3  B/5@< _o}_߻_߭} q@0?F0)>}   A"R@V(|B"  ( @ 0 @8@  @8 Q@ pL0#+ P ,@  H , P  X;v E8D,D` ! @h@'? @@@  d@'?$d@@`@@'?*@ @ @,@@ @@@ @,@@ @@@'? `'@BD d10 X9@A @@A h("(A , ,  : @,A @,A`@) @+ |2FAJP  , @ ,A  G@ 0 `, `G P@ !p)K00 <@ J@ P, `)AP `P,P , @p1pG@ (0 0 "A0)@Ip8:AP60J  O@ +@ @@ ,A@ ,A @, P$AG@$0 + @"`:0;: `, A@ @ @* $PP9@ "A Gl l p? P    3A TDhh( Q2 w3kP0 2 T?Ю ZЎ1 8 @Ss0}~ݿS??k @0F0)_?k  (`o8B*  \X%p x4 " $ R#2 & L/ Z '&3 34 35 36 37 4 3K?@gM@xgh8@n#@sO1 UۀsPt$ Ht SP96 `ZK? `g\g1hjXg j3: 3 T?? = Xg P\; @3K i< `g= `g> &@K ? 3@ 3A 3B 3C  D  E  F  G 3U/}ԴAԴ ,  @A PA T H 3U/ yI 7 K?5 >#@ J & L& bK K3YL 3M 3N 3O @t3K??@@ `lF0 S("(At` ,  : @,A @,A`<)@+ 2HA*P  , @ ,A  G@ 0 `, `G P@ !p)K00 <@ J@ P, `)AP `P,P , @p1pG@ (0 0 "A0)@Ip8:AP60J  O@ +@ @@ ,A@ ,A @, P$AG@$0 + @"`:0;: `, A@ @ @* $PP9@ "A Of pZR8g@8gG@i%P #P 0 Uk@g( Zt& Q U/@   x   ` g P8ZR P0gK?۟ 5 (t& s$B @|  (( $40 @.'ATA*p)pE pp2Dp`+PuCVPp+pM0NppPP+*PPp0Mp0p2`QQ@ypPP2ppp2 NMpM-QppMpp@@+Mp0M)0 oO pMY2NpMpM)` o NpPM)@ o0 NpM) oO pPM)o Npp MpM)PoQ/j"  !/vKJJIIHHGGFFEEDDCCBBAA@@??>>==<<;;::99887766554433221100//..--,,++**)) 0Tx,Pt(Lp$Hl Dh07?&Z4"m*X  ފRc ++NL$'j8  W :%!"% 090PJ* 0 Ẻ"@Рp @`@0@ @@0`"1=X$K*#0JDIԪ$0HdG%0FED&HC4u#& -GT@Cr)`?Gt>=*H<G$;+0:9*-087:.065.4b/H3'42#r001'T0#10/'t.'-#3H,'$+# 0* |)  QX W-!/\ ty dz @{ |  } ~4    h >      x  <"$ % ' @) * , . h0 >2 4 5 7 N9 ; < d> @ A2fB)z, 4C-Z+ `D`` E* .FHx \G5` H` I"02 LJ`` K` L`"1 *MHx DN` \O`` |P` Q@ 8R`` PSH hTx@ tU``-X';  dk0 @8&l,@=" X $0 #.AT P3p  ,)6 4h9@@[4 <)? @ =#@8  @"@e/@0C #x  /@0@/@.8@1@/@@2@/@.@3@/j @.H@4@/R @@5@/:@.@6@/@.X@7@/@.@8@/@@9@/@.h@:@/z@.@;@/b@@<@/J@.x@=@/2@.(@>@/@@?@/ @.@@@/"@.8@A@/Z$@@B@/&@. @C@/'@.H!@D@/)@@E@/V+@."@F@/-@.X#@G@/.@H@/0@@I@/2@.h%@J@/l4@.&@K@/*6@@L@/7@.x'@M@/9@.((@N@/^;@@O@/ =@.)@P@/>@.8*@Q@/b@@@R@@ 5+8H@ @ C@` <8 Hbg#/O -@+N 3 @c@*@/*@@+@/@@,@/@@-@/ @3 @.@/ @g@/@/ @@0@/@@1@/X@y2@/.@7@3@/@k@4@/@@5@/@@6@/@ @7@/@;@8@/z@o@9@/> @@:@/"@@;@/#@ @<@/%@?@=@/H'@s@>@/)@@?@/*@@@@/,@@A@/X.@C@B@/.0@w@C@/2@@D@/3@@E@/5@@F@/V7@G@G@/9@{@H@/:@@I@/~<@}w&3J@/*>@#@K@/?@K@L@ ) @p/rB@.p@0@/C@.@1@@.P@/^D@.@/E@.0@@.@/VF@.@@.@/G@.@/BH@.`@@.Я@/I@.@@/.J@.@@. @/~K@.@/&L@.@@.p@/^M@.@@.P@/N@.@/0O@.0@@.@/dP@.@@.@/Q@.@/BR@.`@@.@/S@.@@/ T@.@@=  @/TU@.@@. @/V@.p@/W@.@@.P@R>X"'@ %O@.+@*@/Y@"8+@/3Z@E@,@@R-@/[@.`_@.@/0\@.@l/@@y@0@/]@΀1@/+^@.@2@@"3@/u_@@4@/`@5@@.@6@/pa@.7@/b@@8@@9@/ec@.@:@/d@=` ;@@@<@/Be@-! =@@.0.@>@/|f@=; ?@/g@H@@@@UA@/[h@.a@B@/i@.nC@@{@D@/Jj@E@@.p@F@/k@.@G@/!l@@H@@ƀI@/Um@.@J@@"ՀK@/n@.@L@%o "1,_/o@ 9| %0 @@@@ 'xT@x@@.\@y@/p@.,@z@/5q@@{@@.@|@/r@.@}@/2s@.l @~@@.< @@/t@. @@/-u@@@@. @@/wv@.| @@/w@.L@@@.@@/rx@@@/y@.@@@.@@/gz@.\@@/{@.,@@@@@/D|@.@@@.@@/~}@.l@@/~@.<@@@. @@/]@@@@.@@@.|@@/L@.L@@@.@@/@@@/#@.@@@.@@/W@.\@@@., @@/@@@!X 9! %@ %6p@30% :  !T @8G@0/]p-8%Z % #Op0&8*PUf@eeZ ELF3S  @0Z Z@8@.shstrtab.'ym#_shndx.nv.info.text._ZN9fmha_cw_16hopper5fprop26 _fp8_sm90_kernelILb0EEEvNS1_17F(uparamsEf`IosharedbPreserved.0>aglobal constant4O.relUKOrelabK]+1L`-b /a-b debug_frameC.pic <anv.callgraphprototyp-0Ie(A GB@Smem.offset0 .0__nv_RSMEM_0_0_alias _ZN57_INTERNAL_7f95284a_26_2512cu_687510a44cuda3std3__45__cpo5beginHj>_3endEW?#6cZ>/4cDrFrC/7cF/5c>19piecewise_Oruct 6v6rangesB_4swap_G9iter_movedG`E: = a ; _7advancHDKO4nexfIOprev_HOdata_G/5c`KO4siz@H/5s`K08diSb f| Tf& W&J g ( e4 s2TQ! C s  H 0  $J0m   3 y , 3 F 3  3 h ( $ M x 3 kh * 3  e X G ^d B[ `"u lHnS$ @|  (( $,0 R<#h)hg&h#/#, S"n" 0!7X$!P1 `YYY)@?&B(@P&p&&&6666@=p===O O`OpOZ ,": q6vsst7P&&'' @pCCCJJJKdehh/t%S$(     txp &d`3XP,H3@#8 0#(  \ TDxA{Sbyv&{zz @q{TPu . ! pQDnÀfbx pC @p%xOyT {0fy C x  y0pb#$rpȏ$xfrbs 0 s x ̏s!"r M `(``qru a$ru  t$rx Q'r; @Rrppra$x `a/x00`0`px 1r ` @ 2r Trpx?0@ @x!0Sy /@1r ?|O04| @$x FOr 5r 4 P $ P7@$r $p7 @$r  p r`p@0p@gxp@rp"<@1$xp$p01p``1xTr`0p1pb00 rPAp`TrCb$x Ex u6  Tr $) PP@r1 `@$| ,%@Er pq r0R H6 p1r#3GTrp4 @% 'P Br  "(PEr%PP@ r 1pbT$r 0%`  p%r`@$x p# d$x# 4 0 +#0 @xa004 +@r?1P 0Dr-+`ax30 00| 1p@r?P"SP@Hx p1 @xO1?DPA| !D6x 4 @G%x -Sr  0@ r0pb`SrX  W$x B r 0p6| p"09|@xCx ?@r8 1@H%x#9|cz@  1@@| 3 `pr @0$xAP!0 P %|0@p@  pP 0Tr'@0Q0 x Ag%x@9x B|@|1p#00|@ P#|@0 @@ r0A0Ur  x#; AxP$G Q/1pbW$t@9|2r)x e!r(p@Fx @3&  2r'@! ` 7 @ r@1pR3G<x3` P$ `4$!r%@%0%r6$r%P$% @ 04%P%p1%x@%-P@|" `0 @|#C~  % xopB2x4Bx @ "12x  @Ft@0 px ?2r `Hx  pc6x8@@  H  1$r="@Ar#  s6| pXrEx ` # Hx #P@$x1JHx!p( pC @x H 0!/`##Br##r`rrOrPFrpP $!p5rp  00C6|  Er6|! `4))$`` ((`C% P"pR 10!@tr''$@#!0 "04&&p0#0%0u/r aGYpOG@4@!r 1$r`'`  P(P d$x`P)Txp%x@,@1x0pTr)a%xPp pTr' 0x Tr!x``Wr& &|!p`" p0! !5 h/6| @  $p$ !o  @ "y@S{ fG P01x`  1x`1Hx3p TxGxAr!@1x@dr   Qr@0@ x3p` 1  @0 % `!%"r<@4 #Fxp (P!x@ %x`p$pR% & P4Pp%(br00  4p44)a;xBb.6|*0 Dx ) 4((@ @` (Px dD/x1u  t x @x 4Ox pDx*px!)@x"@#` "@Ux+!PP0$Q06x)!p/x))pE;x,+ fx)Ppp/x $% "$%@x!& ' #& ' @x$,0-pďx&,0-P %. /P '. /PP $ @ *h* P;x  b   %$),.-p/p,8TG` TG` &E|0`p0  @"x ExP#@1|180XExP6x "Fx@O$x"P !  #  )R  0"PV/GP  0USsSNx6Dh<`@'fz @6$r P |05A6x8:<1 |`1p2@6x>   `B F@pJLNr`RT#`6{4@p 30 Pcx` %`$ p$ 0  0P `@%x0 P O30( 3r #P4p  F RGr  &  j$xV   DOGyMP 4O0# Ša$~[\|'#y^Ar^[0V r^  Cpf\z Wx^^Tr 'O`x ?p`Px4|p 0`Er% p@ `*(@  ? * 71x@% @( 0Tx (fx ?@Ex`4? ( @x Ex $| *G| `yp `* ( 0Ex  @%  * % ʠ P% 7Y r9X99  6!P r1V r i r7$$Y rX@7 V r%A rp6 PP6(( i rZ 6!" @ @6) @)Z 6## @@6,, @!@6%& @$@6"- @#@6'' @@600 @%@6)* @(@6&1 @'@6++ @@644 @)@6-. @,@6*5 @+@65/ @"@6/2 @-@633 @0@616 @5@977 %&@0/0%4 +Z3 * 1 . ~( b`7  %YZ  5.. /.@@5YZY eO2Y @%.p/!."@A$r G! 6.;?6r.P%8Z T rY2pO6@0&r2!  Y ^*.Z`' H Fx6 /`_ 22P @B r6 p46xZpO!%pP"Y P H!XXp6r6`%[XP X 26/U Z |@J!%PX@@@H!6xZ@ u/ P02x6N- A0 2Zp J!%P[@@@( 6r \2@ `' @@%!!`P'!P(7x\P)P"\@^@&#[Or# x!W/#`($6$r$P^0 '$`&%P 0 P%P'P`*^P5](/@ `&'V/$r'PP5x%/O'``((6r(6(`&)p"`p')`(P(P5P 5) Q/^`&+p+p pp%$`'+pp,6r,pPDx1 @0,pp*-- - Pp&"" &a, " b*55P&5@p&0p0%`"//0 >ra`a0p E!/@/ /@&&08`&&p p3kO$r3pP49p344&X 4`1p1p%Zp1`**7%]p&`4fO x[*a>rp`F x-0p%77Ġ#@ F x'Pf/ x5 &e1V78_`6x.0)b 6x* &\p* %/>rc`P# @(`!T!r.: 8xY0G x2V xd7t!rY2YP`6p `T!rXYX  F x^` _ *( 9fde(+ J x)*_&*`0*d3(e/1>raPZ b 9XX[ _c 9 f 4XX! Dr\ 0# 04$$4XX%}88pT!r]$] @9XX'9]](4XX)`4]]^ + , -9]]"4XX5@0 / & 39]]44XX1@*47X70% ]uh"7u!r ] /`!``%"7 % P%Y"P4X 0R/$t" E!rY"-O3G0 (: @$ `1rj/u6x j 9     !%1?@@r ?1?@r"p`@x Pr :a  P,  ` `0; 0[@; rZJ r]P00p)rY r_] ]*Z[@\@9__ ^ Z r @Z 8 r` @) @b*!Z_@a i r!\! d @c @^@f @_@e @`@. @a@iZ r!b@g@* c@0@*!d@2@* e@1 f@h`g@/ @.@6* i@5 @0@4( 1@C6x&j%!2@(`% /@* %#h@ ~C@%!5@ 4#6#p;3 !*"400 %%"0%#!p% #P"%" %$% @% #@S/x?p 4!%$0DO!P# 4$j p D!P0@@ $P :x@ p`&# Pz@03xnEUxj /pbs=>Uxj)0OE!@&% &7 $06x&@Er88f/ r99h r<<E![[@'== BsS6xj1O %[[@'@@@Z rAA(DDE! w rEE  0`pPG rHH@Z rII*LL*MM'PP2zP5::0 /@&;; (>>1!QX r?? J rBB)CC@)FF :rGG(JJG!RZZ0 p8rKK@J XZZ)NN :rOO(QQ`G rRR GS)ppE6xj gO rSSPW rTTpZ!p*VV0'UU0 5rWW@*\\P* 5\\Pp?+\0p`5]]`5]]Pz!R^^5,]``E X^^@ES-^00G j/! J!``3|I ``"7G 00*__%__P0*bb5Z_`0%bb@05[b00`^0*aa%aa`:dd5\ap0%dd@E]d00#x(/(@:cc%cc`:Rff5^cpp%ff@ES_f0b0*ee%eeP8.6$r.pD`ep `0.@pp%ggx? %gg`8R0 UagX@&S0p pE!ii@%ii@62@2 @4bi`&@&x2 pPj2,@UxjjPi O 1@1Ɛ 6Rhh1`'xke/ XhhcK0 `zp%//650Op/&@`) 0p'5p0%jc'6@!@9@)d+xhe!R4p 66Py>reX'x@%a4 " 1>rf'xP0! g&xPy>ri0i `ddY>rh@F xh"0e!r$#05r%%` @ee@J>r(hb E!r$$ pH xf_01>rg e; xdg0@>ri00ujk %$$ e %%% f %$$&AU!r,%*$$*3,%$$`3'%$$P 5r33 ]933^4_$_@4`3`%__   9bab42_2@%bb``4c2c  c@@ %#b@%"c@%#b *$c"P%%$P%"#0 /$PpO#rX"1r$@#rY0% 9 `G rX#(` cEy4bR% b@Y@E rPw/ r8@ *<*==*@(!AP r9R0*%D 9= *EE 5('H PG r#I i r@')L i r!(MM WYPY r%E0'+P0p'QQ p)'#@'-T  `.*UU 4+Q@`4)M 4-U@%P-/@E r205:0 (;; J r>(??Y r'/B );*CC 9? *1F *0'GG Z r3J(KK '5N i r/C*OO 93K '7R `'SS `)1G@'AV d r$5OP0;AW @$7S p% P07] 5V r=f r9i rE9!!9M(# H>r p W ri rU6%Qi>r!!P'i>r## (PG rX rG r`X r'!%``" /$ p!"#@y01`MT>r'' p(7 0#0  P!#'0TG75{#V0G/C[9K9W9!S9?7;1>r0P%8r1>r@ '@Z>r"(0>r9@( H rpi r A(!@>rp @x # O @&0@r1@>r! " Pr# !Ey@! !EAP!!bn@ S6x@2H |<O1r3@??!6,TGP = Rs?bBNU\ S"x.D01r?1@"3s?RpX@@|@ 08O@@p B1|  a/ pN Pt  EM"6Gy?E /[*d[[ [C0p Zfby [n0 [@%x#Z% Z*0[Z% <@[uy["PP[P bPZ Z[u/ypvhy0j$x [^ [`1 [  [@6x [ [  [6x Vp/r R0[+  [> [4 Y0 pC% 0[I `# ? ` PXp< T1xI [  DPP!r6[A0]*bZ* [/[ [4r=p6rh`p@`ZT'r `4 4!rU`$r E@ &[EY@PJ1p@0L@$xʰJ%Z pTx8 Y0 [@5x`J0r0K4VEWr0```[P[$0PpB'?T$xPp`];x p[( (TxpZ]$FF @)PPE r J@ 0OAr @3!xP1$ ` p@^ 7`0[ 8| [@r 0[8 1x@'@X\O5r% [ O0[% G6(P0[]0[ PV!x00[Q/$   @[ [Drp p!x1P[ Pr 0[D6x K0[G$x31PUHx DY 1`  @[) 0[0@YD P( 3P@|M@[PB 0[()0[P| 0H| PW$x0@x+0R 1r)[ P[E| `)##r `R 0[E|  [  +0Jx^!x! 1 PE 0 R@B@%|  [# 0R [ 0R0`'`P @R W x A T%x@p3 ?o`H$x E| [P#5|P[FP 0[10pJ|@[6 Z x0[PQ(G0[O 0[ `I0[5.@Fx [, 7`Hx! L6$r*P[@ 0O r!0[ *0[ &Cdx( 0 0[%P 0@Q01$x!Q Pp00[%3P60|$ 0[ '0[*  %! 0[S WPr$)WW1Ft0[0[`W$0[$0W)rW0['  0[0x'`+pZGr 0[## @ [16|%P [H$x!p pZ0[6S`K [W6x C#0["Hx0[Y 0=!0[%PBr" %@`=Yr )`"# 8rS$x!@@8@Er"p=(xp@pX $x#@Er//&P04% 00x,,`(/& [0$@[ 0[#%"PTr--&Ppa $0 "**"' % 0(! 0[0[0_ T$x @[1Ft`P/ `, 0  A$r - $ @!r * 0r"d$x`4 - 0/P[ 40Y 1%x@ 0!x``a$x!` &|0@ 3][ d0[o/ #5) / 0[&i  !o[ @0[6Hx [axMT @[HHx0[TrpYFx@@U6x T`Dx @@[2xp0U(0[6x[ 7xir4 @0[@ x jA0[)1r %xP @[  $x0' 0@[00[@4` !4 [ [ @# 0[E6|` X`V0[%4 !x%VS1pRE;x$VPX(Z[/x*PX)PX +" PXVPZ8x$S`Z %$V$(V 0[0[ Z"6x  /`^s % pfxP00Y2 10[30[/0[ *00[0[`Z0[( PZ0[PZ.(t0[ "()@x!* +X* +PZDx,0[) 0[0[ *(/1 &0[%mx'0$0[ 0[ %0[P5| M0xo``rEx0[P3x@*5|0[ZpP ` 0[ 0[%Ơ  b 60[+O]/_)(0[0[30[&O/G 0[[7$r fdGT0CX0 v(x P[AxZx50`@q)r@& 0  ^[ %&xXF Ώo`2^/[ [? [  [(9[;[< 3$V{ [/[+k@[@@%x0 [9[%  !x @ &rP` "&` VG$r` &` [xp[{/4dfpdqy7 [6xsg3C6xo@ [*O[Yp[) z%[DAz !pdr p0*/D [P:5r]@-7r\(Z rD'^+i r`'&g r]\@)V r C r@IA9Y^`0_IP)H r%)Y rYY *&0D*@6 Z r)6a(U r *0:rD*Y6)) 0D,@')@+*pD 0D'$`)@@'+)Z r"%@6 ' @&@''D@)a" (L@ @'iD@)@(hP(J rY*@6k1 @'@'jD@$@'mPD@+@(l(J rY(@'[(@i@n0Mh@(6(H r"k@1$~0!a`(Yj@E6x/ ("m@D6x3  (Yl@ Z %"[@ 4PP-*Yn@7` 6!PDd@0)#600xY0 E.#0$1Y pT rY $/ 9$1 `b00pE r!"ED%,! 3D4.#. fO$r#- \E4"!,0\D,\"`8`4!.- V(.,@8P@ 8!->F!/?p94#.@80 pJ 1-`-`H 0/ P`09,U;Pp =`/-0C6x10AO@0 << @9.@E!@0|T ;(;<100>\: pDU6x[W`UD{!pp; S*1`C3`@(#y-*f.V];+`P@U;P3]PPG@%F@ @ZE!0U`` A3O 0B<5 B@@pG0\J!__7`GP|%B 0BU\_@07&&!p A0(&&PJ!%%] 0 (%%P1^ @0% 0( @J!aa_>P0!B&raƠ`@0!~ 0# Of `uE!**f`(**f P*))5a*0(())p gb  Pp@gE!$$Pg %$$P@:''c| )%''Pphd s P@%((p%((P*++?e(Pp0(++P2fL BA,)rhJ!iig|6 PC&riPphp%jj@1|` @*j`j`D:kkipp X kP6rk`Aj'5 p0F *Z@P{dZSQҐAr #q`M%=8llE%x**@@)4(@%d&W1x'/H llH%x((0@r' P5kl o.PO.@u%xGr$)`Vr+0p}H%x @r)#q8nn01r&s`*$$7(@H nn 6xrn< @P%&&(mm`6x ]v@ ' @%()p8mE%x @ *)`6x' 72`4$ P($%` P4)%@"&rl0 / '6$rm `0>q%**p&l`pd+m0@@!m` @  ++r$$@'~'PE![[Cn bNVxP PJ!667*6xP)*+P866PF%x&'PpC@*'@doh6x` @r(o0  E xnp>/0p6x'VL@x+(6xnd 7n `@4))*P 4*(0TxpP0!r(Gp`2s@ `5brs%p(6r%`{%ro*R1xq yt3+P1 rp#0/S6pa1p`@3Hx@1x}#Ax*xBr C p`(nn`Ixo`a$rPDr`n'X(qp4rP`+`r`X r `%)`%@)0'@DroprP%z$P7oo\1xu`$0Y rrr] wp$Ѐ1x~$ t00%$('4rv4r@$`'  Dr..#E€6䐏' 0F$r$ 6$010$r0'$$06 pPH (g!r--,@Đ[0H (([[4rpP%--0HP`sG rpppDrnP`(s)s 0qP@P0(``(qq 4rt@;4-416p(tt4r'P(440J 4r)0@7''`P@%440J@%|u(P_0Pz %zw@ 7w14r6P7+^ | @7((a 4ry@Jsp P7yydPHx|J`{pP~0e0@~p4rz@g0 |07zzeiP}uPk0s 0?uuh mP* 00KdOr}x?}}lE#40b>rwwC'Ax06x*xDr~ W r{f` 7v_ :>r0Q8rpY rxxm'~A>rr `D9|g 4}} 0 $0 w0(nT>ro0 %5.M*#@_M @5N`z0F4[Di4yy0@9sj 9xx 96c  7)b W r*k>rtqr0E!r55@Oi#z 9$t^08@y @`@ }E x0b0p Pd Dr55f@P@P h 0jl@RP&O%$5`O%_#0O4$5$x]@O/bhpi/e2GT0 &0`0V$r\59 g"0 gP%["#F @$xy^`*PViP h'j hyph p ~({y$ h $ ~ }$@h ##c# #T rba#O rg#i rbcb $i r!g e#@@ #0 r!g$*b@$#J#*be@(#*!$@ P$*b@ $*!(@mP#*bg@,#*!&@ $*b%@ p$@,@l0$@6n. Z r!*@-P$bp#*!l@'$*bm@r#*!n@s$*b-@t#*!p@+$*b'@h#*!r@w$*bs@f#(#t@J6x1y#(b+@E6x3y0!%#hg#*bw@*5y$*.f@466!V@V%#."Pjcď r/`F"`#*P#`%0/ P%"!$P4!/0q!"g9x.6$r0D!0*!]p @ '#!@|Π. 1‡T!c"c`D! 50c``g]'/| 0ppP"b0 Ə'"#y`=P^!a10"#2z`"?`"E6xy`#4"@fp" j30#5 '4  0P5P `#&4e"ey^!E!=`bD$!$05Pb !P/6P@#dt!"P #T!(!( "#P0 [` obp0 y0#W6xy@ g!g"g6$x@ ` cG&!&0 gdP#`d@#``Ig &4%"%` `#2!,@(ep#`,@(Og,0P!T!"p %T!*!* 0%#/j"0(4)")p"D!l pk# U P0lp!9"mp`cG!n06xn`m d,n`@%y" D-"-@-*@p kOxpoL @p@p%y'(yyU!'"'-" $G!r06$rr`q0$``rʠ5"sp#sp@#^@#*OP%^^ 0!x""E!t`0ts`{0 (6:'t@[x&P#P#EP#T!+"+p%&&0@#4$0@0%0%P#gƏu@%Q$rP(## @Gr*`#Ar06%0p|!$#PMPĠ }`E%xP@ 7%&0T!w"w`P4&$! )@ -pH wwpT!f!fP€y#"' 0k`*@y 4% !xy!@i P07'#p#"*()7+p! Tr,)0 *@9%&@*,,%&pƐ}"4)-*@ p%yM`}Ny`"7*wP $`0@(Tr%)!+"y `! %`+H x`"96x{p"Tr,0PPDh!h"s "`&xv @k"$76xw")p{ ";x(@"p "pP"&&kfx,@"P;x-@ ! 1r%w!1r6$ob @Gp 'E%xy0  !rw4r` ,0!$v` 7rIx,#;xy{ #,5x,-`("p h0E r`%`pp00#`,`+0#w`(wwp`|8xf 0@% 0"@@$&f@++0!@%f%@%0#"0`$%E!r00" -`0" W r--`'xx@Axf/# X`@/"4r%00!00@(//""`H r  @ k  9//b )0e v %d/ "(00 "E!rgd!"6 %gg0!xz@ ,%gg f (00 `'(,,z`'gn@Jxvy@700o P(9ggp %q  r@Lxz{s  `7ggt 4rp '0P;mPixv *6xz`#} 00;{{n*`#(`#q``*`P`* #7u`H r;he `(06xp 'y0Fr6u0uDr Y>r!7oPW r}p1>rh0,"(PH r1>r(@0T!ruu*!9 4"a`  9{{ 9!\ 7 E&g$@/(6 x(0@&x\p x`r3 r  9w|wp%$upgs(0p !(~Y>r'0$(%%Fs\P}" P7%vs@@>rh(f#Y rf)t7''rW>r7!r&p v `&88pPm*<<*==*@@*AA'DD0- o *??*BB'CC q p'FF 00oЁ0W rMMW rNN00qW rRR0W rSSZ rTT0*VV *UU (WW {E!r$u` k %%f0E%&@{&^PJ %6#%/u%%&)c/!r#-Pt _\0(0t $Pt ](p/# `%t FPT@kPt]#XX Pt @4]h`t_P 4_ 0$ 0Pmr 8# *)<*==*+@(AAJ r't*-D 9)= *E 4*/H 9+A@'$I qG*1L 9-@*#M *@*3P 9/$@*QQ '5T i r1#@'&U @oOH3tp#7:Ъ*;;'E>0{p'?? ('IB 7Pt (MF P 'UJ` *KK *Et*[N 9MG *OO `*]R *It'SS Z r_V'WW `s%UtFs%]t 0*[pt4_W09@pP(pT@P6=KPt*K*`q#\Xpr$* P pp&G r& Z r'@t9@(p&1>r%}`'0& '#@W r(PX r) T>r&&'p .` -#%@yPt )(`& E6x% #0Pt%P#@rPt()Pt# M,+Pt&s/pt*pt*pt*#pt9%W'&ptp *(/*$*p 9'# (w1>r* +w)I9%[*&v)40/#$Pl+Pt%' 1r@/* Pr+$Pt@t$# @t%%Ptdz`Yqo$| DvbzPqPF  tTrY 3 @pAr ##4$@ Ơj0|$pP|$$0 3 @a #%i0i1 |B VP$"`q0udITy!`1y02 Wr#Pu @WG@` WP pub"s pu/bpu@puib$~F pu$~  +؏pu/pu @v 'ia' @E]6S @l'Pl -.(TP5- ,L-* E g@0h@ @/@.X@@ H0- H" @8/@@/J@ @@ @q@"8,< r8@0@2TU:y4/F@d&u@#@CPyq` @  @g@ ( @/BWMx@.X@ P@8, p8j )8P 1 XPU@poZ ELF3S 002 Z Z@8@.shstrtab.'ym#_shndx.nv.info.text._ZN9fmha_cw_16hopper5dgrad26 _fp8_sm90_kernelINS0_19K r_traits*qINS_28HHa_qgmma<Cfp32(cILi64Ea32ELb0a13__nv.e4m3S5_S5_EES6_S6_NS4_91955m2986 `cLj512ELjp1ELj40EvNS1_17FuparamsESM7osharedO>reserved.0aglobal constant4[O.rel9OrelaO9Jy77*97qsrsdebug_frame C.pic <anv.callgraphprototyp\ 0 7 R?9 2Smem.offset0 1.0RSMEM_0_0_aliass _ZN57_INTERNAL_e7a788ba_26_s2512wcu_b8e0a2b74cuda3std3__45__cpo5begin j>_3endEW?#6cZ>/4cDrFrC/7cF/5c>19piecewise_C Oruct 6v6rangesB_4swap_G9iter_movedG`E: = a ; _7advancHDKO4nexfIOprev_HOdata_G/5c`KO4siz@H/5s`K08diE'Xn FX+D<Rv2S! sG  hHs0 0J0 4   "@"L" q  / 3 Q $3  xs  2 3h0  X =^dB7 ` `H nS$ @|  (( $,0 R<6J\h%h8h P/#, "" 0!7@6$!P1 56 6C " lq6hE%h S$      dxp Td`3XPH3@380#(  \~ DDhA{qSpy&&zz.UDSy Sy f"x PC@HHF@x,O$~$~y. y.px?P/b|?{pr00; ?0px  drPpx!@?#y pr`@pR T$~@ @r, { "  cr$r] /|04|1@r ?"?3`3r  `@r 0@`2}0 @@x` s{%b*s?qd.{0p{8b@%@b6x /x2s !!@c{:P%>Ph@!88@P b_Q/xqr0@r{@Tx`%::`dr??0TrPprΰ#$rB Orv !H@ g p@r?̰7 9|Ar @<@@r   p@r`@p@ 3r@xp!x(  0x t `q$| P0 !x"@@ D 0r`Ap`@$xPErax$| 0`1r "> Ir@Jy(:$~M8x @}@C$~O  `'BMCr*w9|8r(W%xDO@g| B pHr'>@1$~B" CY$~C " D` * p 7 r/z42z2Ir$;!r`3r&7  (%: F r< @@2z }!p sz4, D|` 6AAPx44P1x22pY$~G 7F 1%x@1@@rG@p6x!|@PP a 6xp `| P C6x %E DBE r F| W%xB0Ax    S 6x$K(@|1 D6x@H6x1xPU6xx)p% %90% 98%P0 *G0 )0 : I  1r "" 0 4`05D $K06B F G p 6B @ 9 A$x'  &K $Kp0 @xpp @ ` D 06 C  %D' JDC` p 0;D  !Op @ &   0 @ D P  pr=0 P/ 0  0 WO 0r==#00  & ! 0  &0 ;D0 P0 ==#x@JD`d$x`,/ ` p` ==1x 1$r# 0(@ P$x @&  P ;D ɰ0 6D ΰ 6D  ' p Π` MP ` 6D 7 ! E%x@O@ED` 1$r( F   u| ` ED #p P@WD0C6| `+O/` 0P#Par/`#P4  @ "@ @#@ p W|A ` PG$ qP0  O{ b"xxVxFF Bz *Vx  p Vx @ p @r!"P@ |͠ 1AWrF 9| 1x#')|P&9| 1rADr$` 2$x P 0xO## xCgx@ #`%`Sx  @`T$x00| # 0x 0A| 8 1x@6x0 Px89 6x  9 pp6xА  1|=`Gr`#x.   0 3xJ/` 3(  0/0@P`z|~`R0`0@cG0""0" ( p0x2p&r   0@$Cx 0&Cx 09x Ex`G| @ p# |[,PEx @p P@$x"P@ @%x" 0#Px "`#"H @r0 A%x@ @r 3#@@r @H$x##Tr @8| @0PP #P   OP& 3 e6| p` (#0 0 0P6$r $0!r  0&0@"$ /&  j$x # !P% SGyN0p `c{fb.| &"x)Dp ` Ex` (@ 0 ƀ 0fx `Ex @@ 0Hx T|$0b;x 00B&@x 4` 0` 4 1$x$ $ Ex `_ x"x6x * @"{ @'efxp  !% **(Hx`;x!% ` ( 0!x dP%tOx  D 1u @* "@zx "@ Zx @x 6@x"@ PDx$@ 0px!@Ex @) #@ Ux%` `Hx P! %p% p% %   Sy&b  4@ |p1p"@#x8A|09xZ @!R`9x\   ^ #x8p;xbdfhjlnp`r`tvP  s/GPb @$~@6A |pR GbAy80` h. .`0@.0D.R:0H.0L.F9WP.00T.9p*bD~$x@1G4 ( ` 1;xpbr P$`7/Hx1$x0@x@1E6|.Ӏ 0r//k 0% $  @@E6x'/F|4U6x)/ 02@#fSQҰ%dx-/0P%+/` -/C6xĠ0 9$~@5 I6x/pG|00$x@ 00PDx QP`x20S6x/_@x1@pD6x/_ ` 3@ @)1x--@0 `0< t 0Axp2;x4@p30!y F6x!/75PH6x#/P-B |/1$r@ 1P@|!1`EyP0"(.6x 4Cx/p dẀ|E;xbx%0/&v@Qyܡ;d"x@0%1/x%y7p4x@`3@3 @@@x$g` HypB |`Px`FySxP#cx * | Cx @3x #0!@0t@!0#Cx" # x@# 3x$%0v@%0`'Cx&  ' 4x(0)@@| "Ŗ@3x)@P*+v3x+0@F%x@6- ,0 `@|-003x. 0@x2/@@Cx/@3x0(ހE |1Pt 1 P&@2@p7&p 6Tpx676$~2D~3 @ 7ߐ@1|P#2P!@P|0@x4x45F%x0 40x!$ ]v@@x6@ X%x ā 5P2H%x1px %rn<=@| &7`P 7€P0| H|`D+m@|ſ`%`Ƞ*Ơa$ 72p %0p P4!1|`Ā`D H%xŀ1|(@Fx*@ @Ơ €PH|@F` E|P 4FEa|4 a/|0Py2.8!y2. x%xðDhx"$nd 6|6P `  Ss b.0(44"(66@Ws`ADVLJ|5 0E|171P#r@3P%0@x  @x5p x74@1Hx! 0Ex` 31xppp pEx!!  p6Jx 4@5x65p1pp4P r00`@"_C"p`3Ex &xP(!!6x`fx p *@ƀp 5p 76 203 6 7* `4%!!*" %# 0&3 33pP4% % 0"Ex"Ex @% pP%` PHx " ` % 0rű 1p`@C| @%p$| !JP'%@p 3p`0%0 TrA p3r @ @   ư@ 0 5X@X@(4rP@3r@ 1x  0p(6xܠP  @Dr܀Jxp@@1xDrP ސ@PDr ްExP%%`p @ @*0ĐP@@;xPPp-P0Dr`P%`% pPP`0ByX0;$ ```PP4r0 0@p#r,.fxP @@ x;?&V#r%%P`sDt#r 09116!!V x%p/p( U x )s(pE x! 6))@i#r9--6 1P614 gs $ V x@P45504 )04),0P@5$@ au x0@&-`9-0``,41`P%50P*)x1@T#r0`/sN' P%@̀"P4330 @5 @p4'@ * 00Ps1#r"@%p@"0#0O * f/s*/l 3436P4770#045& mOs&+ */`+.0E r317@T r u r 0P+7r 0f r$V x$7p/Ws'Pp!P7 x%)-P5p2p$W @@`! 0bs%@0 4))p 9--9/p0.216 " r0(033|$[0PI |\\6r2'72P#r[Pz |__@60U r!103r50`%%p1',00U r)=%-P/9449'p4U r"/@3|``8'4X rp3E r#2 %`29''&1 '+1V rP1%/`0(1p=Y r666Y |]]8|cc@#r 0(ff W r*[PU#r\_6[`@f#r&]f#r`c0Y |2Y`8|eeV#rff0X |Yd I |]lFr\7\f r7X r7 G r&i r[`7V#r`ei rc'f 7Y G#rff#rY2Y |ZZ9|kk7r`5f r5Z |XX0(5)V rf rfYf#rZZ`f#rkY |^^`:|gg(mmY#r(X(nn J |aa)XiGrH r_!Y riZ'Pf#r.^f#rg'm3r W r$PI |bb8|ooW#rmn`Y r@*^t092anp(tu0G r.Z re97V#rof#rbbW#rX rY,PJ |w6 W r2S |(V#rntpS r(3`6 )39!!']/f r/f r#f ro#b(3|pp7/0J rkŀ8#n8|hh@4rZG rn0 P>r@H | 0I |Fr"@f rm"mW r,,Y |33@:|*!!)9r/0Fr0f#rppCr" I |P:|(ls0Y r))`7^^`V#r0hg r%0J rX+97-J>r*dq7''0Y r7--pY>r3P(jjPX>r! Gr^^@4rp@0V#rq"lA>r0)!)PGrPX r"6"9|0:| *YY*)*XX***'')6r0% 6jZjX r%`I |@:|Z#(3"4rbPX |rr4rh  Y>r Y `7Y& 0Y>r")X *X$ 8 Grq6qX>r' 8|İI |'%Ir6+j@8%Z@Gr W#rbd V#rrhrPY r+43|)X@ )ZYIrh1h0(bߠX>r8| J |***++(hhY>r)Z)p(g\H |deJ>r'bp(Z( J |a**cc*ef*\i(vvPH |b. ADx``/y>r!8|(ZpW>r# @]@w>r$+ J |*\@7&3h V#rspvX |+b0H |lm *``*f7*[[&a`f/ |e`*g&cOd0*^^`*i2*jo*mn*h5(kk` `,X rssIr44711r@$B7H |_Y>r(( *` 9** *f 9++ ([ J |i*j*k& m&!hP(]]0F |%^ *o0 **r,*t6*n/*p-*qq*ss*u4(v11>rp 0&]  *#l ):| 9% % * o *!(r J |"t*n*$p*/q*'s*-u(&vD>r#Hk 9""%'@ 9$-$4&/&(/#(p0@8@  2"4+9-/, ` P -`/ 9-!P5)#u/>r+%9/'5 `OP)0J+4&T}88!("`4|#oTA}8 0"% p-x$@'(ix,`%0@P;x4=?%p R s;x 0!(0%$$ *((*,,%00(y8A0 p2<p>rw0@2A 3@ 467 47!O07D04 ƀ3H 9L(9P07T8P02!ppp 5P607`6  7pP00 2` $ @%p()04.p/92p93u44wp&q9'-9*04+1}x4x$"}'5x  rZZe@`T ra\a1ZZ0 4YXY  a 9bbg 9YZY 4ffi `9YYb 4jj[ `9YYf `0] j  x$xN6|"( @}(0$;dcd```;ror d ;tt r ;hhk t `;ll] h ;ppu l `;vvq p `;^^m v ;nsn ^  *pqrP.)r.pr!.7rY;f rvv7 J | 7 `5:|[79r98r@:H r1pr [ `)|@7Y>r @5 [7X7Y>r'P# :*("^W#r1V#rr6r @87r0< ]@67@W r;P9(%8rh6@; 9*$a %2P0*3(%Y>r## * %"[ 1+|$6 7J |11(&6E>r'X`1PX6**_la3P1p6; |[ 3)hh)r`@ p6I |Y)09|Z,Grd\c@H rkk`8`5p/*%03(4E>r$`24&1& P54P77 |846 89|tt6|! D^08g 7i 8*dd 6 089 |c6 `647r]D``'|5 *(6 7@6\@7(]+E>r`P7*p688@%5o7` 6l7mP6*):rP@9ww8q7r)|)p9P6 6("o0J>r 8 67 |7e:0 J>r*$@(05`(PJ |sj*ww**vv 7Y>r))+0:96 p6 *#"*@%$`"@73P''@7J |&7T>r++`*"0&w0P6(&(07('  @7 @7p73!723-73*6P4)7+7P7@44(074$0704&P3 70) 7(67 74@707*07( f 1 !p1cEy`1 p70 p7h 7 `7#$)^;x@7`7073|j802J;x44 %u9 @*n:(; 7p%8*P$) 6"`5#p7*O`7& 7 6)@)@7@7 P6` # *@:``P6!p" `6"` P:`86866 7744p:89$;  708 7$2@(<<8@(== J |>>*??*@@*AA*BB*CC*DD*EE*FF*GG*HH*II*JJ*KK*LL*MM*NN*OO*PP*QQ*RR*SS*TT*UU*VV(WW`e$ 3G NsC |$=N*%u*'E*,A*.M*/I*1U(2QA>r&$p`*$j 9-', *%< 90./ ('D J |,@*.L*/H*3T(4PT>r112p@ %%p&16x$`1>r'$-pp/00Fy`` 1310H |$0#'0<$/~&10 3G |uH |$?F |% &&G *'C*-O*.K*0W(1S;>r,(3V 1x%@~(4R Y>r/&'@*&n 92-. *'> 9501 (-F J |.B*0N(1J1r$10,Pr% #A-/ 1>r12%$'@F3%5p>%$-%$13DA-w 5(<0 rX0< < <u S6x @R02|P:P <4ii^@;4n@;%jP<<Z 09XXi 9=<= 9jj 4cbc   =4>>?0p4=j= < >=9[[h09XXc0(( >Y r@@A04==>0*kk=4XX[ 9BBC 9==@ *]\<4XXk `9DDE 4==B `9eef 9XX] F 4==D `*m`<4XXe `9HHI 9==F 9ss 4XXm `9JJK 4==H `9aa 9XXs 9LLM 4==J `9olo *XX`?9NNO 9==L 4 0D?^ 0?oP@ @ ?4PPQ`4==N04qq  9RRS 9==P %gt@@Đ!oq04TTU0PR 7wvw 9r0Pg07VVW0T 2rP6PW rXw T r=V$3Gy\vv v8$xFuIxN>9xv ;6$~*v@?0|(F`EPE*z>z>z6 z ;@r+*>z0u0u` z96|? 0? ?( 0sC|)N90$ u $u<P9x= -/;$~@B$ d A $o%9x6t@x&@p @%x+ @ &@ `A 0p 5 j0n*507%Knh%Mnz"x 3 5 P@P`3xP4 @50v@ `7  7 ?#O4 p?06r ztH |6x 4@?~ lx`k@p -rAp k @6  ?6?p>txv>? A p@m@@?P? ?`p`@vz0|`B`@@v0@@@15|@0Ȱ P P@ 0@p?88@|9@?6x nyH$x89Ex z7?1x=$8 9o@#xBGp @|@;"=3r?`GqP:(BB@p0wAr<0(88< ppAH%x@@0E|D9`xA0P$r=!@|>A8p;H%xDD:E|8C (<< ::@|;=?@@|=E:(>> @`/|E9<0 `9(:;@@|G?pD0 0p@q"w`90|B;B@H%x<=6x# ;0@|H=@PEx##L pq7=C"Hx##T|8F2 %6 `:(DE p:C|9N`C # : pL60EyN8 @*FG4:E-?%HH@(::0  *p x@ xp A@ G|?G P @I> A0*>?04G; 0ư7I=  n0|B? H`A DA FPpxx(HIP!Ơ9B%RRp1;079A B0=1xC B %>P<RP1#r=P9PPH96xT`@Q`P:E`V`1#r 9`3r<p1x@ DrGB @;e@ P>P>0`ExHC @7C$1xPPP@(FA@H xA Jx@? (== 3r$P 1#r9@; R75;1QxD0?HR3rB`P H xCC1#r; ;L44=S0?@5((@p@p0@P!@T/rH04!3$@D0`=$GV?`F7A%ExVS@Gs%CpFT`F xC(p(0P?%VIPT0@ I3rR0`B*O`V0?1xUI,s   Bp ExUp@&?ApOpH xS, )Dr, 0<:> (;;p`}0-`0/<S`0<J`>Ad6xS0p0 %QQItp 9ExEP &54Cp6s;'bPU@? |$6x4Q@=PPz)|ð26x pms8b;3rL: |Z q8xEU 4+|[@m*q`:Cr4p>: |U:+|^8*il8(qr@09r&|WP= ]4a0p*|i6)|dn@#rr>p3K`h J |ce*fh*jmn9܀9@6bpPs r)|`43rP ;9 |h@2 6W#ro l; |e@fS`oW |gkg#ru:\@0#rs@9'TY6s5v'8xGIW#rvPX0Y#rtU9pBc9nLnkpo9mf9jFj9\49Y06WP#rK3MpA A0x; `6)w@OA0AAA`A`Aw`AApAA#rJpAX x99p>30>6rN@AfO r.N@u r;N;w6c(S rN,p(JJ`:s7 >5r)NA@9PP6-.uf r:.:  G r.;;I xTs99A6r+07@>';PA P E xIO >?=5xQQ P6r2Nv@ 0@&x!?P4;JPD p@7r5N`AI x6?: xU`&x@@= "* <)` 3r  %wwPX `A` b  =@(@T rL5LpCC  E4SDSp?9II 4ZRZ 4[<[`?9QQ04],] 04a@a0'@t#r`$` 04f*0530Tr&`T#rgg0@4dHdO@`BDr3)o48r)59T#rh&h@Pe"`E6`q4i^i049N9`@%Y#rM"q04?N?050F r;80@58 r&2sd rV2V4wwP:r2?>6B?Bd rT9T4UU@pE6r?;>04=N=fsq`F3r@p4 *(66ANAf rCNCh rI8I8|P7I |T7r#8:f rQ8QX r=p;TsGGb *N09*l9 ;&!85FCF@99A0&80?E'u8f rKIKf rO8OE&#[I>7r5Q?P39(s8Y r##<8QQ,9|VP)|P;UsEE08nb@7r,!8f r*|u3r=w- P<(I!>rP5`t*#$)&QIr6'ap s)99Hr>%>0Ir''@9DUD9HH'^qAY>rrGrod I |:: =) >8|>0J>r&6*BB  P +|0u)DD7r&7Cf rGNGC |9a3 *#H*<< =G rXuC=)%r(jC0B=:ErENE '%GJY>rB0:7r4G@D`0D8GrpAY X rr;_)|'vJ>r#Y>r!P=I>r`)|= )|=I>rD)|=Y>rA A #;2L ;9$; *"g P tH>r&=0;J rm}9vqi9WEW9twh7M7M ?*!*l,)":|mm *# >*pp t P=hA*i4n ?*qW*rr Ao7(uu H |wM=H | l; |@>*Co!t @t2 >Bt8%6; |E B$ w*Dn#=; |GPuF= @> uu: @! >4C Cp9BB9E$E9D#D9GG4FF@@puuD0>P9rĀ;@>:A9=C9E9?G:P?`909:;>; <  ==9>D: ??${0}813p *@u DPuOP>KxLPuPPuT > 8=<@u#@@ u%DDp=%HHh%LLu%PP%TT@u@uPt 6EP@<Pu$ u`8+(u,u0u4u:<=5;>p`>` B0 ><F0F>rP:09<< =>p:0;@?@>JK$N=O4HH`9II9LL@;MMRp9S4Vp`4W8*4JP 9KQ9NT4OU%x8@7@u< 7@u8@7b48P8 7@ct 8 %[[u`c@4eje @ 77 7%?}xH@uL@u;gfg 7;mmp 5;svs 7/a^`7 ;ool a@@;qnq 6 ;wwt p6;ihi 6;uur 0:P* @u)Xu @u 5<@6@u @6;xFt@6 ;$~$06L060696|%59|M`5@$x/$i5x<%6 @5%JLP+6?EyLL`+"044O4 u 6?p46Vr.u@up46V;x@6b0+.uP6#;x0'.uv06'3U6x.0t/x.t0P1v@5.@pv# (.0v52b 3t 5 t0z0 14p20%!.0uO6x#.3 0t1t(&.wt9$~6p7t 4 0v`2 ltp&t 7# x05'.0 w9).404@5`&z0(+.w p4p6t0Ы3730 @@v'-.0xp5p5 8@uPut 405P5 08:pv+4F6x2.w@ 5-Vx3.8`58Px06-00Ы@x8@:4 x:@:Px9B C ;B CH6x..wK |32.06/op: @<` :8P:@xB0? C>  P64 P6`7|.59@/$@-`6EyK6:p%M6:- </06P:p:/696Ȁ6 6p6 < 6 P1`16P6 6@6p = 7 = 2 = P7 766 60=6 ;$y@/6Ȑ 66 7 6P2 60lp68`6p065h5 <:@7` 79707 `7<P8P7@707q @7 66 = 09 79 80607 7P6 `4 `7@75` P7 7EP7 p7BP7`7G`7H`7 `7 P%?Ep5P*P9808.87+6 8)55 5)Ba 59_X /g&5`+h*p5p5 P5A#rL9H rP9 @`57084p 406502 4H r-p988x6 506r/2 6P9p4./9`2 591v *9)LL9x%7r37:U r7P6+x: @5Z rl= 5&7-7 6 -  p6 )m9P,)x=0 @ `5 09@?@ 507P1p!7==&r6@7*Ώ060L@p09Px5ss ?C99 6`6P}5`@8 : [`6 <: rZ5&rR05 08 `6p;@36'A8pF r@8<08 P8 7 6*s809%?89P87`'C88;p=&;:}7'%8=ݠ:f rJJ:305A3Z rXA@4)P>I r] 8: r46&rn2`A16(?h p4O@8:r''`:'H!6Y rg!58r?CP7 8)|w s ::r,%8)B%8:|P*@8 :|%J )$;:r)08/`4 H r>I`7I>rP2 :8/5 0u 908 72>r%e; |P8 8:|$*R)Gr&s&I |## 9|>>'r=9`8*O< `8 7 @8 `8Y>r$$94 v*|9)|Q`9J>r>7`8=`8 @8 8 @8$|' 08r5P8I>r:4)r03I>rQ0q)r86 089|AAp 5J>r#BP7 8*Q1 uR8T5U5W49 r\9; |S08YpXv)VV =08f 8)&AP5)|` @89r+`=+|A7] P88|cZ ; |b@a@7*\<_4&P&Q`*R*W&T&U@*S8 & V@8*^8[@7 7 788 7 97 9`9"0:*| P98r))`>; rk7)*C@:?rM=p7+ xp7e7p7(gg ; |h< 07 wd <f`<; |i: 7m:l9 p7j`7 ;@99 |C`9 `7 : `7 `:; |$;D:; |#7G 8F97 |708P8`7mP`7m`7u7`rp7(3p74 u`7`7D@7W/x@p7 LKxܰ`7uB87`fH7`7#078PC*w0`7 8p70u880P8@u8`;<08 ;98;@w7=u8 8``w`y>9v&80&0w 8999`8:v*((P=9>*)) :w;@(** J |++*,,*--*..*//*00*11*22*33*44*55*66(770"@>x#p?0x&0u pu*!q*#*$*&-*')*A5(B1Y>r" !s* p 9%#$ *!t @s(# J |$*&,*'(*C4(D0T>rAABpH"Ps#%'@`s@>rACA01x u10Ty#pu  . 5 's0Asu( wF |!s0 &" *#*%/*&+*@7(A3;>r$(C6 ;x!u(D2 Y>r'"#@*"r BpJ |#v Es (% J |&*@.(A*1r u0##"x;r!u%' 1>rABUy # ` C Eu$ %P?% ACu"%PPq9 u7ppq u1PP0;c<%sr;;9pp04QQR ;*PP<9utu 9pps %ab0< "Q0 0rP;E}x@> 4SSX`p<P=(`>Y r0%pp@<=PS ;@ Us%PP>`9 4pp `*__ w9PPU 9 4pp `*eev4PP_ `9)() 9pp 9kkn %PP>`* )F`9YYV *PP`?9,,- 4))* `*ggw*PP?.@{ @, %if >/x8u%PP?@9<`?4001`4)).0`*mj%PP> 9223 9))0 %]d`%PP?'!E ]u44450P20v46670@@ 0@7))4uP?4)6ul@xڏ=@44 .Tr@l۝:@lBx2200@x !j`p( w;@r5?p?0 3?@!D? z 0GL@(# Y |xx'* *yy * (zz T r#x *{{ 9y (%PW rJ |||@9 z@* @9@* 9%|@*}}`9@*~~ 9{@*(`9 } *@ `('@H |0H |" Y r( J |@() Y r@(0Y r~**@9( *@**+@9'@,@ *@9)@,,@ *-@9"@(@H |.0H | (0Y r*`,/@ *!@9,@,0@ *1@9+@(@H |0H |2 (0Y r-`,3@ *@%  ,4@ *@9.@(5@H |0H |6 (&0Y r!0`,7@ *$@92@,@ *@91@(9@H |0H |8 6{?@ b(P*;`%@,@ *:@94@(@A |>EJ |=@ `(@Y r6`,<@qp} 4$@P@%&9< ;9 `;; @$8 Ȑ$: `0P( J |**"* (!!1>rp(# J |#($$Y>r@*% @*'* *!*%(&&pS6xbp1>r!"0Uy# #0F%@!#&J |** (#@p( 1xS?`  (" 1>r@* 9!  @* H |#1r4   9? !>r#!Uy $%0&0 p/ r0 P?6 +O@ P*PP *y*:(Y>r *xx *( | *; |*; E>r}0 x  `Fy 0PKx@0@P%@@$@@ @J |<*8**{*( (zz K>r ~ *P* % ( ; |**=(9E>r%@Sz@@ 0  @@@@Ix@Dr!p/r#?ap2r ErP0xP@$xנ#`a$~ :@`+1` B$x@ `@x4$40z I1x2 2 GPFqbs !B@/{OS"x!? ry FEs @p C@$~ @ p t/$~     EOMpTGy0E /A{0"y婓zpz.CRy" y^cxAPC@! HHF@x,_O$~D~R% Sy.qx0N5bb|LBr00`NQx $ trP!`H yNTч `#pRPD~@r_{ "  cr 31$r  @/|.ZC|1@r ?"?3`!r_`@r 2@`@} 1 @x1 s{%b*s? d.{0p`C8b@%@b6x3A2s!!@c{:P%>PJ0 0$FrQ/xK1r0@r1Tx`%::`dr?ITrPprΰ#4r#3r  !4@% 0΀?p`S9|Ar @<@@r  p@r`@p@ 3rF!pExP   # ID `P"|` Px1$xHTr@ `0r`@$xEry$| 0`Tr'p@b0@%|%0"p@P,(  c{<p P 1x   @%|P#?pJS6x PBr qErP $P7"J6$~ 0' ? W$~S '(@K  @x0OA{r ( @0| 1$r`2r !(EP0 G|`Z!PW|pTr `(S@x1 1?d~`X|`0x"pc{?`$S!!1x@1@Ey< I9r@Jy(:$~M8x 2}0C$~O  ` 'BMXr*9|8r(0cO@g| B pHr'>@1$~B: C Y$~C " D` * p 7 r/z42z2Ir$;!r`Jr&  (%: 3 rqo @@cz ʠpz!4, D|` 6AA !!P'~G 7F 1%x@@q@rG1@h6x!|@@b a 6xp g| C6x %E DBE r F| W%xB0Ux0%nr  S 6xP[$K(@|1 S6x@H6x1x#S6x@gE6x %90% 98%P05 *G0 )0 : I  1r "" =E rC4`05D $K06B F G p 6B 9 A$x'  &K $Kp0 @xpp @ ` D 06 C  %D' JDC` p 0;D  !Op @ &   0 @ D P  pr=0 P/ 0  0 WO ` ==#00  & ! 0  &0 ;D0 P0 ==#x@! d$x`,/ ` p` ==1x 1$r# 0(@ P$x @ `   P ;D ɰ0 6D ΰ 6D  ' p Π` MP ` 6D 7 ! E%x@O@ED` 1$r( F   u| ` ED #p P@WD0T6| P //` 00#PdrPp@#P4  @ "@ @#@ p W|A ` cG$ 00=O{ b"PxVxFF sz @mFx  p Vx @ p @r!36 ͠ PJWrF 9| @x#')|P&9| 1rADr$` 2$x P 0xO## xCGx}3`%`Sx &@`T$x00| # 0x 0A| 8$Ax@6x0 Px89  E  9 pp6xА1|=`Gr`2xl`.6x @p+x Fx  (?  @P``z ~```AG0""0" ( `'0x2p&r   0 $Cx 0&Cx 09x Ex`G| @ p# |[,PEx @p P@$x"P@ @%x" 0#Px "`#"H @r0 A%x@ @r 3#@1rK@H$x##Tr @8| @0PPE$x#P   O`&# e6| p` (#0 0 0P6$r $0!r  0&0@"$ /&  j$x # !P% SGyNп p pc{fb.| &"x)Dp ` Ex` (@ 0 ƀ 0fx `Ex @@ 0Hx T|$0S00cx P` ,@x F 1$x$ $ Ex `S_:`"x6x y* @&{ @@fx !%  **(Hx`6x!% ` ( 0!  `!`Tx  м@* "@#Jx Jx 0px  @UDx$ U10H@ PEx%` B`Hx P! %p% p<0 %   Sy&b  41 |Z1p"@6xX|, Z @!R`9x\   ^ ;x`bdfhjlnp`r`tv   c/GPb @$~@6pPR `J#bAy80` h. .`0@.WD.0H.WL.(0P.50T. [p`wD~%pbG(7 9;x0@r P$`7/Hx1$x3x I6|. Er//% $ /#rP sE6x'/p/@/ ` 0x%p4-/0P%+/` C6xĠ0 !P9$~@5 I6x/p>0$x@ 0``@x2`S6x/_@x1@_ ` 3@  @6xP@@00' Љ@ p 0r1y F6x!/75PH6x#/P-`@!r@ 1P@|pN1`PP0"(. 4Cx/p (`~0E;x'b%0/&7|/Qyܡ!p E6x1/@`E`3@vP v;xЅ` `PFyPy@p | #0!@0t@#`@ x %v@%@`' '@(0@@| P*P+p@F%x@60`' `E| p.@042/9P/@PdSQ0E |1Pt 1 F%x@@p7&p 6Tpx676$~2'~3@@ 7ߐ1|P 220|0@x4 45 0 409x!@x6@ X%x Đ 5PP H%x1p00 &7`P 7€P00| H|`P(E%x`@ %0P 4!1|` 0(   (*@% €PH|@F`*`%P 4a|4 !|0Jy2%2 ðp@0d"$nd 6|6/p 0 J%x00(44"(66@Ws`A p*5 0E|171 PE|0  5@G97iH%x1Hx! 06x@( 1xppp`0pEx!! 0 p6 1|45x65 @ P /%'P 0Ex`(!!6x`<`@    P5x7Dr6p  67*" ` +3 *3pP4% "Ex(""Ex @ %`` PHx " ` %  0rű 1p`0 Exp@ P'%@ ␆%0€  @ @ `@ưЄ@5'K$p4 ('@@  0p(6xܠ   @$܀JxpPp@1xDrP ސ@Dr0ްExP%%`p `@ @*0ĐP@@;xPPp-P0`P 5x pP`0@/ ```PPP4r0 0`PPfxP @@ x;?&pP`<T#r 09116!!@U xP6))@ Pi#r--6 1P614 ds 06!$ V x@P45504 )0)pF x@5$@`#ra0u x0@&-`9-0``,41`P P*)x1@T#r0 45 P%@ @V x5 =@p4'@ * 00P!1a#r@%p@"0#0O * !// 3436P7Ѕ00#045& mOs&+ */`+.0E r317@T r % 0P+7r 00&$V x$7p/ Pp!PJ x%%) -P5p2p4$$p*b@@*0P4))PЄ9--9/p0.2`16p " r00P33|$[0 I |\\'r7P#r[`| PFr0U r!105r501 %%p1',00U r)=%-P/944'f r/ *|`7r4 U r#29''&1 '+1K r/(1p=Y r666K |] P@#r *|fGr*[PU#r\_6[`@f#r&]f#r`c0K |2eЎV#rff0J |YА*|]`Fr\7\77G r&i r[`7V#r`ei rc'f 7Y G#rf&2*kk'`5X r5 0(5)(f V#rZZ`f#rkP^`:|gg(mmY#r(Xnp6 |aP`X8rH r_!G riW rPf#r.^f#rg'mGr$Po`W#rmn`Y r@*^t092an tG r.Z re9'f#rof#rbbW#rX rY,PJ |w6 W r2_ V#rntpS r(3`6 )39!!']/Z r/'#f ro#b('|p`7/0J rkŀ8#n8|hh@4rZ`0 a0; |p)Fr"@f rm"m,Y |33@:|*!!)9r/0Fr0f#rppp I |P+|0lЃ`7^^`V#r0hg r%0J rX+*7-J>rdpGr''0Y r%--93P(jjPX>r! Gr^^@3rp0V#rq"lA>r0)!)PGrPH r"6 ; | * *YY*) P:|*')6r0% 6jZjX r%`I |@+|Z@(3"4rbPF |rP$rh  Y>r Y `7Y& 0Y>r")X *X$ 8 :rq68' )|Ā: |'Ir6+j@8%Z@Gr W#rbd V#rrhrPY r+4+|)PZP9rh18|bߠX>r8| J |***++(hhY>r)Z)p(g\9 |dJ>r'bpZ*a**cc*ef\`v9 |b I>r!)|(@W>r#  @W>r$+ J |*\@7&3h V#rspv : |l:|__*``*f7*[[g&ep*g&c&d0*^^`*i2*jom@*h5 P` `,0X rssIr44711r@$Bо79 |ЊY>r(( *` 9** *f +`m``*j*k  00F |%^ *o0 **r,*t6n; |p u(v1J>rЌ;>r *#l ):| *% 0* o *!*"t*n$|0 */q*'s-0(&vE>r#% 9""%'@ %$- (&/`#p@8@  4+p-/Њ ` 4*04`/0-`)/0 /0-  )0J+4&TA}88@ 8@8 7x ux$@'(Kx,Њ0Њ@P;x4=3Exp @# !@%$$z;x(( %00@8@<@p>rw0 /l%@P67p!O0D`0pƀHpLp9P0Tp02P/pp 5P607`6  7pPP0 2` $ @0%%@E()04.p/92p93u44wp4&,9'-9*04+14x(p"?}@+*ZZ%a\@x*ZZ@Yx9ZZa *bb9YZY f`9YYb 4jj[ x9YYf *`_%YY0 $#x(`:&|"(%1# J}(@;dcd``;ror d ;tt r ;hhk t `;ll] h  l `;vvq p `;^^m v ;nsn ^  * @)Yn @ g@7P6+x66 7!666% 71x) =0#p56 `;p6764@60P r_7 66$~ 06X6x6' 6P;6 6j6x@2p8Ox | 6 p6 @73rp65(%ƀ 7W6x' p6C$rp67x6+@fxPg6x- 4x*p72@7@ t&#ư/  7(b`62+2 6`6jpC 3p$Ex!P94)1 P7 6p PA p67%P7@@p0 7@67p6@06 7@(Ơ646`6 .6*6 6#0065P 6& 6@6Pz@6`5608 6 66+6P5@606p66@@066 ;x?C 6=@.7T|5: = 7`9;;5| ; 69: 63  :d|20N 6:+ 8)6//P7@ 72&O71 7K |Ơ7p74$@7 7 7P7 7 7P7 7 7\743 @7676 7 P7 7 76 66 P77 6-7P77 6 6`7P7P 6`P7 `69 7 7 p7"  `69x5 73sP7 @35P$!P7PP79 6 075`5P77 à6(!pi9|77 p7 7 7܀7 @652P12!0/P2j 66|`7P 7 p6 6!3@4 676 5 66 6Ex 6"aEx 6#6 @l6 8%## PpF6 ::P11 6 `7@2 069x`3`62 @7@7@7 4P72 `7:p `35`3P 5804P356@P5Ơ`P;x6P4p067 8 67P@00 75( 6 7@p5p5P7` 507%0 p67 @6086x4507P6`6 p  6@@6(5`7 7 `6x688`1x07 P706@ 7Fx@ 66&60@p9 77p36p694`6 06@7 6207"8x44 P6` 5`66%%0`7@7 6655500`4 @73@7%P7603P70`3 8 3@6-538P44403 @406(@77 `66@7`70"6#6&5'79** 7.5  9227 666F x7@)"s! %&b 0500:*p@5")p6*p6 4 39W r-3$43`5&r6p74`&|$5X5@*|\2(r7f#r44)g#r55`70 5@'\Ɛ3V r401P5@5X xI r3 p35p5U r(dP)|1555500&40'5!3 HrX 09xd'*|,8x `8  ; |0)'4  PY#r$$0*p* 5 Z/ x.`:x22]9`5*i@(// J x*##(e6Ys+ 797r01U r)@7r00jd#r,,0P]r [ )|@7Y>r @5 [7X7Y>r'P# :* W#r1V#rr6r @87r0< ]@67@W r;(%8rh6@; 9*$a %2+*3(%Y>r## * %"[ 1+|$6 7J |11(&6X6* a3P10P1 3)hh)r`@ p6I |Y)0 0 rd =k`8 `5p/*%03(4E>r$`24&1&`'|P54P77 |84 : |8 F |! 6 08g 7i 8*dd 6 089 |c6 `6`0 47r]DY>r!`'|5 *(6 7@6\@7]pE>r`7*p688@%5o7` 6l7mP6*):rP@9ww8q7r)|)p9P6 6("o0J>r 8 67 |7e:0 J>r*$@(0PPJ |sj*ww**vv 7Y>r))+0:96 p6 *#"*@%$`@"@73 '@7J |&7T>r++`*"0P6(&(07%'7 @7 @7 3!723-73*6P4)7+737@44(074$0704&P3 70) 7(67 74@707*07B p7 `7#$);x@7`7073|j80nJ;x44 %u9  *n:(; 7p%8*P$) 6 0*O`7& 7 6)5)@7`P6*p7P6!p" `6"`+6`8@7866 7744p:8$ 708 7$2@(<<8@(== J |>>*??*@@*AA*BB*CC*DD*EE*FF*GG*HH*II*JJ*KK*LL*MM*NN*OO*PP*QQ*RR*SS*TT*UU*VV(WW@9e$ 3G N$*%u*'E*,A*.M*/I*1U(2Q@>r&$P$``*$j 9-', *%< 90./ ('D J |,@*.L*/H*3T(4PA>r11@`%&16x$`1>r'$-`p/00`` 1310H |$ 60#'0&10($?F |% &&G *'C*-O*.K*0W(1S;>r,(3V ;x%(4R Y>r/&'@*&n 92-. *'> 9501 (-F J |.B*0N(1J1r$@P',;r%-/ 1>r12%$'@F3%5`>%$-%$13"%jjpp8 *XX<*ii`%n@;%jP<`<Z @;P9=<= *jj%cbpA =4>>?0`$j= < > 9[[h00(( >0 r@04==>`*kk= 9BBC 4==@@k `;DDE@B 9eef F 4==D@`*m`<4XXe `9HHI 9==F 9ss 4XXm `9JJK 4==H `9aa 9XXs 9LLM 4==J `9olo *XX`?9NNO 9==L 4 xD?@-?oP@*04==N04qq  `9RRS 9==P %gt@@Đ 9XXq0Tp9==R 4wvwPp7)r0Pg07VVW0PT 'Xw T r=V$3Gy\v|v ?8$xFuIxN>9xv ;6$~*v@?0|(F13PE*z>z>z6 z ;@r+*10 z0u0u @?96|? 0? ?( 0sC|)N90$ u $P} P -/;$~@B$ d A $o% @x&@p @%x+ @ &@ `A 0p 5 j0n*507%Knh%Mn!"4 3!3 P@P% 3P4P 0@p7 07 @vO4 p?06r ztH |6x 4@?7 @5x`k@p -rAp k @6  ?6?p>txv>0Ap A p@Pv@@?P? ?`p`@vz0|`B`@@)0@@@15|@0Ȱ P P@ 0@p?88@|9@?Ex yH$x89Ex z7?1x= L$8 9o@ #xBG@|@;"=3r?`Gq>(BB@p0wAr<0(88< ppA E|D9`xxp|0=!@|>A8p;H%xDD:E|8C *<< ::@|;=?@@|=E: P @`/|E9<0 `9(:;@ppD0 0p@q"w`90|B;B@H%x<=6x#( p0T|H="`# pq7=C"Hx##T|8F2 P%6 `:p p:C|9N`Cp:o: pL60EyN8 @*FG4:E-?@ Ey88 &p#Q x@ xp A@ !|?P @ A0*>?0/G; W|I= Jx B? &|D(FGpxx0(HIP`Ơ9P(>? Af %VL*<B%RRp1;079A B0=1xC B >0<RP1#r=P9 FxT`@Q`P:E`V`1#r 9`3r< 1x@ v0@ P>p:>0`ExHC @7C$1xPPP@:HxFA@H xA Jx@? (== 3r$P 1#r9@; R75;1QxD0?HR3rB`@-8xCC1#r; ;L 24=S0?@5((@p@pp3rP!@T/rH04!3$@D0`=pP>?`FA`;UxVS@&s%P/pFT`F xC(p(0P?%VI@T0@ I3rR00N`*O`V0?1xU0I,sP  Bp ExUp@&?ApOpH xS, )Dr, 0<:> (;;p`}0-`0/<S`0<J`>Ad6xS0p0 y@%QQItp@ExEP&54Cp P D&x4PPPz @6x s 03rL P4+|[@m*qSr4p>`^8*il8(qr@8|YY r&|WP=P]4a0p)|ii @@#rr>p3K`h 0 *fh `n9܀9@6bpPs r P3r@* ; 6 J |evp p@H#ru:00#rs@9'TY 8xGIW#rvPX0Y#rtU9pBc9nLnkpo9mf 09\4 9Y0 PIAP#rK3MpA A6s; `6)w@OA0AAA/v`Aw`AApAA#rJpAX x99p>)3. fO r.N@,V#rc(`,p(JJ`:s7 >(r)i rPP6-.uf r:.:  G r.;;I xTs99A6r+07@>';PA P E xIO >?=5xQQ P6r2Nv0@&x!?P4;JP> p@7r5N`AI x6?: xU`&x@@= "* <)` 3r  %wwPX `A` b  =@(@T rL5LpCC  E4SDSp?9II 4ZRZ 4[<[`?9QQ04],] 04a@a0'@t#r`$` 04f*0530Tr&`T#rgg0@4dHdO@5Dr3)o48r)59T#rh&h@Pe"`E6`q4i^i049N9`B9M"q04?N?056r;8@58 r&2sd rV2V4wwP:r2?>6B?Bd rT9T4UU@A&?;>04=N=fsq`F.3rPp4 (PP6ANAf rCNC`8|P7I |T7r#8:X r=p;TsGG`:rN09*l9 ;9FCF 99A0&8CE'u8p60#[0I>7r5Q?P39(s8Y r##<8QQ,9|VP)|P;UsEE08nb@7r,!8f r*|u3r=w- P<(I!>r4; |`t*#$)&QIr6'ap s)99Hr>%>0Ir''@9DUD9HH )rHrod09|:: =8@8|>0J>r&6*BB  7Cf rGNGC |9a3 *#H*<< =G rXuC=%98rjC0B=:ErENE '%GJY>rB0:7r4G@DPGrpAY X rr;_)|'vJ>r# P= = )|=I>r`>)|=Y>rA A #;2L ;9$; *"g P`)| tH>r&=0;J rm}9vqi9WEW9twh7M7M ?*!lAJ>r"p=*mm *# >*pp t P=hA*i4n ?*qW*rr Ao7(uu H |wM=H | l; |@>*Co!t @t2 >Bt8%6; |E B$ w*Dn#=; |GPuF= @> uu: @! >4C Cp9BB9E$E9D#D9GG4FF@@0>PD0>P9rĀ;Pu9A9=C9E?:P?`909:;;;< ==>;?0?!}@(""Ppn0}&DOP>KxLPuPPuT > 8=<@u#@@u%DDp=%HHh%LL/%PP%TT@u@uP%. 60P@<Pu$ u`8+(u,u0u4u4:;`>p`>` <B0 ><p>9@< =>p:`;@?@>JK$N=O4HH`9II9LL@;MMRp9S4Vp`4W*4JP9KQ9NT4OU%x8@78}< 7Ex"% 05_`4@7b`44P8 7 ct 8 `c@;eje@ 7*]\`t 7%0}xH06@uL@u;gfg`];mmp 5;svs 7/a^`7 ;ool a@@;qnq 6 ;wwt p6;ihi 6;uur 0:P* @u)Xu  P @65<@63/6@60 @61xFt@6;$~$06L060696|%59|M`5@$x/$i5x<%6 @5%JLP+6?EyLL`+"044O4 u 6?p46Vr.u<% 6V;x@6b0+.uP6E;x<<60'.uv06f3U6x.0t/x.t0P1v@5.@pv# (.0v524q 3t 5 t0z0 14p20%!.0uO6x#.3 0t1t(&.wt9$~6p7t 40v`2 ltp&t 7# x05'.0 w9).404@5`&z0(+.w p4p60Ы3730 @@v'-.0xp5p5 8@uPut 405P5 pm:pv+4F6x2.w@ 5-Vx3.8`58Px06-000@x8@:4 x:@:Px9B C ;B CH6x..wK |32.06/op: @<` :8P:@xB0? C>  P6@*`7|.54'~9@/P@-`6EyK6: :6:- </06@: P: p:696Ȁ6 6p6 < 6 P1`16P6 6@6:6z 7 = 2 = P7 766 6 0=6 ;6 6Ȑ 66 7 6P2 60lp68`6p065h5 <:@7` 79P707 `7<P8P7@707q @7 66 = 09 79E%xDE07 7P6 `4 `7 @75` P7 7EP7 p7BP7`7G`7H`7 `7 P%?Ep5P*P9808.87+6 8)55 5)Ba 59_X /g&5`+h*p5p5 P5A#rL9H rP9 @`57084p 406502 4H r-p988x6 506r/2 6P9p4./9`2 591v *9)LL9x%7r37:U r7P6+x: @5Z rl= 5&7-7 6 -  p6 )m9P,)x=09pE  `5 09@?@ 507P1p!7==&r6@7*Ώ060L@p09Px5ss ?C99%U 6`6P}5`@8 : [`6 <: rZ5&rR05 08 `6p;@36'A8pF r@8<08 P8 7 6*s809%?89P87`'C88;p=&;:}7'%8=ݠ:f rJJ:305A3Z rXA@4)P>I r] 8: r46&rn2`A1*(?/p4O@8:r''`:'H!6Y rg!58r?CP7 8)|w sGrI8I@J r,%8)B%8:|P*@8 :|%J )$;:r)08/`4 H r>I`7J>r56O8O 8/5 1 908 72>r%e; |P8 8:|$*R)Fr&s&Y |## 9|>>'r=9`8*O< `8 7 @8 `8Y>r$$94 v*|9)|Q`9J>r>7`8=`8 @8 8 @8$|' 0Gr5r`X>r:)r03I>rQ0q)r86 089|AAp 5J>r#BP7 8*Q1 *'X4R8T5U5W49 r\9; |S08YpXv)VVGrKIKP08f 8)&AP58|`]P @89r+`=+|A7] P88|cZ ; |b@a@7*\<_4&P&Q`*R*W&T&U@*S8 & V@8*^8[@7 7 788 7 97 9`9"0:*| P98r))`>; rk7)*C@:?rM=p7+ xp7e7p7(gg ; |h< 07 wd <f`<; |i: 7m:l9 p7j`7 ;@99 |C`9 `7 : `7 `:; |$;D:; |#7G 8F97 |708P8`7mP`7m`7`'0376p7(3p74 u`7`7D@7W/x@p7 LUxܿP7 `7uB87`fH7`7#07F`PC*w0`7 80u880P8@u8`;<08 ;98;@w7P: 8`w`y>9v&80&0w 89v9`8:v*((P=9>*)) :w;@(** J |++*,,*--*..*//*00*11*22*33*44*55*66(770"@>x#p?0x&0u pu*!q*#*$*&-*')*A5(B1Y>r" !s* p 9%#$ *!t @s(# J |$*&,*'(*C4(D0T>rAABpH$"`p#%'@`s ACA01x u10Ty#pu  . 5 's0Asu( wF |!s0 &" *#*%/*&+*@7(A3;>r$(C6 ;x!u(D2 Y>r'"#@*"r Bw*#v Es (% J |&*@.(A*1r u0##"x;r!u%' 1>rABUy # ` C Eu$ %pu% ACu"%PPq-=W rppq u*PP=cqE rsr;;9pp04QQR ;*PP<9utu 9pps %ab0< "Q0 0rPu  =! =u4SSX`p<0(`>Y r0%pp@<=PS ;@ Us%PP>`9 4pp `9__^ 9PPU 9 4pp `*eev4PP_ `9)() 9pp 9kkn %PP>`* )F`9YYV *PP`?9,,- 4))* `*ggw*PP?.@{ @, %if >/x8u%PP?@9<`?4001`4)).0`*mj%PP> 9223 9))0 %]d`%PP?'! ]o r4450P20v46670@@ 0@7))4uP?4)6ul0@xڏ=@44 .Tr@l۝:@lBx2200@x M`p( w;@r5?p?00r3?@!@? @w 0GL@(# C |xxP* *yy * (zz T r#x *{{ 9y (%PW rJ |||@9 z@* @9@* 9%|@*}}`9@*~~ 9{@*(`9 } *@ `('@H |0H |" Y r( J |@() Y r@(0Y r~**@9( *@**+@9'@,@ *@9)@,,@ *-@9"@(@H |.0H | (0Y r*`,/@ *!@9,@,0@ *1@9+@(@H |0H |2 (0Y r-`,3@ *@%  ,4@ *@9.@(5@H |0H |6 (&0Y r!0`,7@ *$@92@,@ *@91@(9@H |0H |8 6{?@ b(P*;`%@,@ *:@94@(@A |>EJ |=@ `(@Y r6`,<@E.qp}@4$@P@%&9< ;9 `;; @$8 Ȑ$: `0P( J |**"* (!!1>rp(# J |#($$Y>r@*% @*'* *!*%(&&pS6xbp1>r!"0Uy# #0F%@!#&J |** (#@p( 1xS?`  (" 1>r@* 9!  @* H |#1r4   9? !>r#!Uy $%0&0 p/ r0 P?6 +O@ P*PP *y*:(Y>r *xx *( | *; |*; E>r}P0 x  `Fy 0PKx@0@P%@@$@@ @J |<*8**{*( (zz K>r ~ *P* % ( ; |**=(9E>r%@Sz@@ 0  @@@@Ix@Dr!p/r#?ap2r `P0xP@$xנ#`a$~ :@`+1` B$x@ `@x4$4y ICx20WfGPFqbs !B@/{OS"x!? r{ FEs @p C@$~ @@p pT$~     EOMpTGy0E /[lk@#]  @yY() @[' 9#7.Tm# ,|s#H#|p0P@hd@/U@@@y " 7   2 @@8/ @@/@@ &@ @g@"980< !9@ @@2TV#:%7"/@"r8@#@"CRx B@ @  @.@ ( @/ BW/@.@/00P@8, p o8P 1 #0PUУ@Z nELF3S 0@m2@` Z Z@8@4.shstrtab.'ym5_shndx.nv.info.text.fmha_fprop_fp8_bsh3d_S_64_sm90_training_kernel>8!oshared:(reserved.0Rglobaconstant4O.rel#Orela:#5ocausalS&?Z A/@6 A<n9' ;5=1 <-=8e?B7D>CED?i/&101,#3-6 87  839 24 34//6 9 t:;debug_frame_C.pic]u <anv.callgraphprototyp0# ! =D @G$!r;!$r>   Smem.offset0 .0__nv_RSMEM_0_0_alias _ZN64_INTERNAL_09571ed2_33_(3hcu_f055b6974cuda3std3__45__cpo5beginEWqE_3endE^F#6caE/4cKrMrJ/7cM/5cE19piecewise_OructJ=v6ranges_4swapfN9iter_movekNRgLHA OD hVB f7advancOnRO4nexPOprevfOOdatafN/5cgRO4sizjO/5sgR08diq; e r 7 ! /r6/2h9V-|V0n=#D*-G$!r;!$r>/ t2S! s # )H$4$000  `d   $ 3$ E 3$  3$  K 3$  3$' S $   3$ h S 3$  X       J jg  ( " V0|0g !h0,?-./ 0>1y23D~@|  (( $R(<#{h)k &hh0`,5hp1)8|&hh0h ,&8/h/hph0ph5t h 1)h&hLh1/~L 0"FdS++*sx*S))( 0Tx!7G#1!P1 p)@&(@/0#/2pGGGGpabhi {0{`{p{  "2 q a6V7/p00`2H0HPH bbc0|@|||/P1 0~~~7&'(0)??@Y0[acrr0sPs/2  07')p++@@AA[\e0tttt/p"1/7q-P.`:p:: R@STUaabb/@4 @`7,-1 ;0;`;p аV`WPc`Rcc5 eee7q$@%'03P4p4LMNO`[[[[f6 ff g7 #`%''33R5K0P0Q\] ]@]/g7 S$> 3n #  X # 0   H `dx0pL  `XlPH @8 l :  D \4 DY D  L<  0` |  H DDA{Sby&{%zbzm DSy50F @%x Oy yp"rtA?`0xvSy~ fx x@px:@? T|?prpR $~"@r ?"?3#y ``@p5rxrCr@c{^0b}0 Ay^^0 nswd.6x3/s!dr /r??r0pr0# A0#rTOrCr!1$rM@  @$x, pr1 6r@ g`2r000x1P ?@x@axP dxAP0rWxpA$x@1r@`@p@ 1x `1$xHxW$~ 1x@@Q$| 1xl3 ``6r!| $pd a%|kP@P @r4<@Ap`1$r ArP (j%k(*kk@kHl*ll=,.-/P,&l2r(c6xm``xqTr %mm@!xpPB(`*`)`+`%  0pp$0ph0m"`4!@  #  @1x$ a/$x%@! @x?p1  @$x'#$0 E$x%0F|!'Ax ' arP `1$|!P !@  `x) A$x3~!@$ 0#r C p0x!  p0 p P9P)|!1 G%| )PS|,`9 ?P% )P@) )@D|- $x 0x  P| ! @Ax@@B|   p  p0d~pBr #0! 4~ @#@E$x @ p SsSNx# `Gp`0 D\` wx @pB r[2A@tz00 #p!r' $4% x;` 1$rYP p |[[0AA$rZ p9|p @  X@ @x? 6x$ *x$|$h$ x\\C@ Ώ/6x8:< ?x>  `B@# ?xF 3 b%@6xJ`LN%@RT i8e/{#b.x`!"pBHx0x 6@Ex a` 2|B ȐSF$x`a/$x@@%x%0@0x3rPE6|p @ 1$r` P 0o G$rPM 9xV1$rv@#,!rw-#G^ SOGy / O@$ HŰx E6xb&px@D6xd(PTx payP@C @ |b1pb[x !_ ( T |d  *@'eXx @7  S6xf?Hx W |e @x ) e ?Pf@@*@%f)@6y`'c_g0A 6x^y7 Ex|:@d_nd @yP 1pTx "bP% @3'PAr ` @r@p i/$~y0'@x `&6x0%`0%@#5x 0%p& !ŠV rd[/@i r/[,9b[.9-[-9)[)6%[%x./30p6'[' Zx/b 7b[+ V r+[*Sx,-0PY rh[$ "*)p" 6&[& Zx-d@6x[! Sx)+ @06x+ p@$!@#$%@Y r[`*%' 6'[# `@W r[ Cxhh6d[( Xx&& # +V r~[@pCxxx`6z[@Cx' 7|[ H |!" Hx C6x  #`6}[@Dxd7[ `'g[@ Sx~~@S6x1@ rk+36[0@Cx(61[1 @6e[ Sxzz:9)~9[4@(||6yb, bz@6[5@Cx+65[2 Z r|@73[3 H |0@x@6{[6@Sx}}97[7 # %x"SQpH rh`c{f6PCxggPPT r}@%$P0#ee00'g E rd0+e * @+ . %' 5xff OĠ%@`*,P7&Jx41+0%5|#pJ r4@%)@0#pp%00(E r `*/P#55p`</*-0#63p*5 #{{P%6 0~@ Cx77P%{P00xy b0 t/x%:700@  3qP%%0004`OrPsWr@@a$r!  P*1r`)!^U%x@0r #_ r2!fr0@U%xP * P  Pd rz/%x220 "!0P%00`43 @ d P41d^rn<D6x!_ ]vJ%x""p * # !0U r#jO%x4300@sf00d^+m0Tr02p !r# @%xxu!rhh@ Ȑd;? J xxx(hh6x_ 72 !(23`H!rE!r44 @ 43`Ơ(; r"P*@411`d_T!rgg" d!^xcs%43P(PE%xp(1s3`*1`41 0 @6x^`Tr20%}pEs}p1@E!r~(6x_h` 2s~!@F%xw/r!H x!p6%x0%1z7`6x^VLJ x1P&tx (1g01rzE!r2e` 501x5x x2pWx3 1xJ%x% !s1@%|0a/xepgp`9 x2WrI!r%:x|!L7!xp1xp1s2@@6x"P;x@@E!r+@(@p`$2s+U@*"!p`&I xEx%3p,3'pp1p`P2s'Jp`r\@H x33p 08xgpF r!0f/xxe QOs3AP6rp!ď`p9r1 #re@%zpFrxU!rx$g@`0s$ @e/B1xPz`@Ir %&7s&  (p1xzH xz03rhpt/s%p "`x!rdP5$SOr`#P4dzp'*xO!r*PCr0/ xPp|p1s DHb@|P rh%hSrz`vO r `4N*4*xx| V!r|)" e rdSr5z}z P(| ;x4)"@`@F!r(OgB0Dr|@(`(O`1xF!r.V r|+|DrW r~ 1x``7s.'2Dr`:~}~F!r,,H x Hx@H x 3r@s,(`&/Sr@,0X xHxUs/ h/ x@3rGr'`Y r'-Cr@P4-dbr P&Of r) @H x Fx&T/r 4r@0e r/Er3 (7sQxFr-@Dr X!r!!3r (11 V r`Fs'"`&{0 F rOg!r!0!1xTs{cr/g!r 1`HxH!r22;x 7 ' :r @f r& Cr@ 7++2` (7@>rggP 1p 6s7b>r F x 7,Y>re0(e40W>rh E!rh5€40OH>rH!r 3@9 x3 rh@#hO!r6`Y>rP4+$+P45e:x`&7Q/>r@%x 7x*@>rpE!r%%6@64@U!r+&4%d%`5h %**0`en-P>r|0V r(p`@%%(p 4))* P'.PP>r00p%..P gY!r,,) ` 7--.  9//,  V r|ePO PG rz@0G rx5d!r--p&6P 7/ $ (66@@>rxpY!r55 |h 46e6 045p! +770${4747P!%!d}88p % 7 u!r! %$7uO !uh%$@%e!0@%d$@ O! 4 `G.0"1$rg"&% 3!rh # ΐ0[0%d&`p 0%PPPTx  ~?%21x  G  @p$1|" p:)"Y7#X )T|%Z 9Ҡ%3o%`)t>Bx ?4"6! %C &>P>7:x  '  B> A % >pK  `7&r@: % !@0:?0#@N@C|#7 H6|#@Hx >#!> 1HxP1H6x Hx p ?>90[ 0&p 4@0CC%/`%`&P`O#8+59'( E|p#%B@: %0:# ':EHx @ /  p)J|*:C6|PPE|"@C`:(0:##0 0Q x:$pR%0 01+j/P(!"$0BWx,H6|@Ex p8"76;86 P7 05 7@`4 @6 3@ p5 240) 0 3 2@3 99 676@&~! I 960p p 6( p9!9 2 7 "2P@x! d p9 K| Y4XX7ZZ00@9 @9(@9 @x(d p/x()@x* + * + ;6x( 9kOx* 9) 92+ 9 9( 9$ 9 6x$9&p 2%`'4 9$99@ 5+8(88 8$8(8  8(8$8 7877h7 7585  05 NL0"pR+ o0.P 0K9x 0 02( @$xy P&06x`& ! N T6xx 0.'{0,p 9r&0x`+ `1H |{ *Ax P/1H |,` G6xzp-1'|1186xp0 1H |z -0/z 1/0P00/0#0P;`9$~x([ 0;'x( 2 0P x#0  `@(Wr@#pH pT!rp(L0r ? M60rUP 'P@r0@a c@$`p4p `{ 0I r.E6xP30x08 r/*/ x@-@/ -+. /# +.(4 0-~0Zx@3!? /|@0Sx`1/z`0`.11 @/8 r`2p-/P6 @0/ 2/ 03E |`- 6-P3 1 2230_pCx`3-71@ 4a r{h0.)r,p4 .+40( 2 4Y rx01Zx  1Jx . 5J6x1(-E%x( 3 8 r41g r}@96x) 7Gr"-15@g r~@56Cx,, 61E r@02 H rH%x"P(E | -("9%x 14x-509"0*"@#00/(`;6x,7&!.E r$,0% ()( W r-$03x1P1`H%x&&E r*0`@+3x..< `#44 $1*@4%! .@0r')+p01*$%%4`4*#P%5 )`,(** 4x/81%sbx66 p5%`/*++%((00"p+r )&%p, 01Pp/ &P,**+` 0/@4#+$`&//P- / $! `%`%0 0(,J%x"#7*'* 96x'.Yr#%$$`0.u!%'%((pWr) :06V r2[3 p.*"+/0.Gr3[7@Jx22`P4&@33 `.0%&* !*""`4$!(P5(g+ .`!` T r(@P4#*/`)!r`*&&`%|0`0p$@+@PEx&"@(}}@*&0)66x7=DP# H x}} !0% F!r% &z0H!r 29 x"`.W r+&@H x 1r%`#7@9!r~06s'`3@97++P 03Ax( %$H x~~pH r&@ p<p3 4*& ,Ex*$P*{{@()@ U r'(`% ,4&}" r(.)@,@*`& 4E r*/3$*~e r)'x}`$.& `(E r+2pp*5)p(*6F x+p~@@G@$)U r308x~~,` 0@V0Q.xP`(${Ex` /*044r}"@T~/'p)fr~01. @@@207 2@11es""P0x@2 OP%P)5x `8 9{` p$N~p` @2 30Z x p%%pp -p0+< ))xP@/ H!r-P@`/-0-0%p`2 `G!r0U!r1€.Pp10@-`(3 /6x`,`41.' ,x01@0 @/`(P/`-0T r'0@06r+`+O 0 `p00+p-`P@.@E!r5 *`@65*`)x%9-0'6`Ix@0H!r `H!rzz `+: `,@( 4, @@' -'// - `'@Gr2(//@+P()x0  (..`(@Jx7(|@)+. `(xx`J x.. `7* .esx`8xxz`4r@ '` / {9 x{0<8xz7Gsx5`@4 94r`X x`z 54r@`/.{  0<6xz Jr7 8x@7 <'bP7*z@`3 rD0` Er0 :`= 5+@97 9x/@/`5 7sz6h x6Hx0J r"/--P09 &@ %3pP6s P .P6r6z0w>r@.E r*.Ds'/p r ,936@P2@-$ 7`4`6r2p/40!/ -47 `//a" r`00 @ `%@4xxP%\ U r$}Pu/ r}!~P&/9%!$-/ }!#``?7r6pX rh(66.b( 02%!"€(~1H!r2G r{g>rh/T!rg)x=Ts5%PiO x0/%!&x7U r.`` ; 8rg,/9 rrg %--1 @ %'' 2/,(00p1U r88hpfO r99j r<<*==*@@*AA*DD*EE&::`f r;;*>>*??*BB*CC*FF*GG*HH*II*JJ0*KK*LL0*MM*NN0*OO*PP0*QQ*RR0*SS*TT0*VV 'WWW rUU0A>r`@722' @>r`<~ 4110 P%2}7p3%44@80%//04454 p3%/6@4@%4%0*3 "@% /`3%!4`3*$/`3%!433@3@"33%3pO#rd3S"g6$r"p#reh7% 3$3!pSUG.Q rB0 0$t;$?$Ey}  b 8u bPdP 4d N p%"&880 *99*<<*==*@@' A 89`:rDD 9<= 'E e r(HH J r%I( 9 r  0Y r@ (MM  *QQ*TT'UU ` ` *>>*??*BB*CC*FF*GG*JJ*KK*NN*OO*RR*SS(VVY rD`'WW O'H% 3G ZV r]=0i r]9']#i r ] '%]#i r$]M9']U7(]QW>rp 8 A>r! < A>r& 7]D @9%]H9$]L9)]T6*]PA>r'p<@C6x@&P! %&0@yv@ @>r') '0H |`0`0!a<&'0$G [ E{-n 6]?; 5]G 9]C9!]O9$]K9&]W7']S=>r : *%6]> i>r(!$ 6!]F i>r+&' 7$]B N9']J9)]V6*]R0 !%-P O( 1rdP`=+ Pr-w0(1y!')EA-7$~0eo: ` $W$|yydW rLLM`@$xp P*H r@`!x@*y@* bry  <@T rPPQ0  `(LT1x8!pS$x4TTUP@P@3| re bT r::;@X pbT| 505&0vfapp T r>>?`#p%:pP4 `0" 04BBCP$>@`)`4FFG0 +B0`;JJK0F0 c0[ rNNO0J00P{/ rRRS0N0T r7VW0Tr,v`R0% V%0 p- 6PCG9/0`OPc == 9$t( 9x0;x= 0|=Jx =x(z t w P=A==c` H  1$r# uPw<=Hx >66| pc ( <>Ex @#1@0x/s! d3d<`2 C "= J &rH @r3|4  1$r'@s@>` 6$x5d|i /1u Wr3rp1%xe?S&=  21Fx%@|0A%x @&Cn< PH @Fx+i@X$x5pe9x @?p@=E P)? `1$x!`!C   p1$x0s0PJ 3pb@|# `0V%x"@ p#)PwP%Pg$x1 @ '"fw|$t1%x&0U @TFx7%u `Or`@$x##1@6x` 1  J|s`)}# $ @9P$9x p? I C) +@B @{)1?P$ ) h1$x''PB  0P %@@/Hr"`'  pH$x#`0PPA5PB*1Fx)~C"p9xpC) 4$@@A#&9`) PC|% pF| pOlVFx @0h|!`6 @/76|'  ( pH$x1`3$ 00B1$x#$#1$x% % ~ 096| 6?pD  nBr+0@n9xo nD0xP1/@Er PdO|`E$x!@E1|&P G @4( D "'C#$ 0%Br*&` +s|)! 0+P@mps/$x+'(.( ` O`|@(@C &@I76|3`%14S3(P1$rP `4`103p7Q$r$@@H$x/)"*`66|5FP&r0@G#$ Pq#5.@ C50eD pDpD"ApD| 0A`DPB0APB0Dt0DA0DPB@>@}C0}?OC<CK}@C9CK|C*)C-|@0C k0G@20C|`CCCgcx?p #x`v"p?QG@`bs?bBN`& a"x1pBr Es@p{@  l@ p  V$~ rR/   0 EMTGyE //@O zƀ y"P  4t +Z$t5&{Xpux "pR 9$~ /h EyXXX}'/d 7@r  3r 1 gr 0x@QΐPz)~@r 0!`S ` AE!r  3r ?( 1xAir 6x#@ Ex4 PEAH$x@r P P#yz%ubr0P`"p@ BKr0 t PAr?3p 0 0x `*0H$x`F `: `p"P)t0r@Cp`    `76xβ0(xPP!r@6y qo%1'pW(rr p1$r1 PE @4 @4 @ Ex c/xap pGr P#yN.!bP X p#  rZUx @`H8r `"$x pp4 0W4 /  P%~p0x Pr P{Wr+9$~2r7$~ % "!@6 @ I|pC|bEx0 *[1H%xP1x p( @x Q4  G%~@Px C?D0 H$r@3r)P9$r0xN W$r#M7r`Sr   @x p`:$r#r'p'-`(М&PJ%~ &^!z#0(8r%@P%~P|{04 pWr$G%~@Cr/Cx  J%~030 pr2!" Br10r.@Y0-p;Pr0P#J%~4vz>Ђ B|x P@w {PW | p3r-!yPК7tx1r,1pW$x@| p!xuyB| %('0 Cz0"-`!3| $PCv0& #,` 0` `%)p`t``*+(` pj`p# 3PFx @5`0`4/ % + /0\. H' JC| *0 \51OĠЛP#0 % P0%#@%3000@(2@$ r0 $ %2/`Лtr '@!O#!x$dr -a$x &0 4 /p`P0,P  .p`p5 )Q/r30``(4 P@p01$x0*P0@10%#O`Л`!@p P 6r 0PP0r@`2@Fr  `05r '!$ -5r (! p$p ,@+!5r" @Ơ " 0#P Л01 %# !0$ +' @ 0#!P p%p '!!0p$`$pgr$Pp #0 %Gx P# t$x 0PDr&F6 `"pFx p'@Par  8x @x p 0@r !`@0( 0 P p (@1 @"0 0 ЛsbE6| @yQ4 C/P>4 p% P &     [% 0?#/ F  ` # % !P 4 !-x A6xa 1 b)~XPb0x` b@   pd@ bb/ Cb P(bb 6x( *)+ b0b bE6xc e$ &pb Pd' #{\@86x`    b5( bc*d /ddL  f!0bd%e `g*ee c e%f 0h*ff=N *f%g 00PU:xgg02HxЛ;x13 (P0 i*@P$)@+@Np a'@0(@oT‣%# @L7! 1x%5@$x $$# &*& ?# @pDx' )` (&p p'`F|!' 57  p I|! '`2   E$x')~!@56$r 0!x @PpQO$r+ 0 Ā $ ')`e |,  @H%~)P @ x+H|-5@$x+   @ @B| ـ@ ,f%$  0  ++@,2GS0!7 @V r[XX: ~d #!r 4&PG_,@ |[[ jЛ 1$ri @Wx ?9$rlЛ9x1$rk 0Ix 0|)PcЛ Л /Л!0=Л xNЛ8Лp8 Л p%  1 pw$ Л ЛЛpЛ@s.%p`w:rЛЛ<PЛ'|Л}ЛW Л жj9$~h`Jx Л#m4Pk  W$xhh@Jx pj$`Hx 36xDh( @P rmh@ BX x  `wEx2r@@Xx G6xsfUx0 3    (qf` @'nh` @6yЛ<Frmnp@ xzO B6Dxm8 @k @k%H@!5x 0@r @p! iF ro[P* [Dph9 r$ hHxp``DSx!o f gUxo ^g gP'h69 rf BXfCx)`pj@spi( Zx%$(iG rK r0i`gk@q gg@ g@7$[ Jx jY rn4 jZxpi@@~iKx`iP@j+ n lCx((` g@`#B` @h 9 rc j  VI r2`hCx6 dj J%x"c%Pbp96x7Pi1 rA{A4x1h` A*!0%0`b0o0$``3 rU @$$ 0%0H r C9 rK r(  ppĐhi+0@@beJxpp@P$n5  q0smi9{s0K rp1m m ~`P0amP@0*)ym+ Лp9xss@5rqq*`n.`3`j %@ Л3 g%`P%P@j#p20#0p* j 1x, @E r6 00|m`t/$~ *% %q@*0x@%n)*,,5rp@ Wrs@$x  E5rc!0 H%x&hWr*`9x  Dr.'@l`(**`Ex  (sVr#lX%x..0Wr+p3|`6-@ P5qqp/=@"0n*&a@peEqp@h5rr5` j7,,`As/3 iTr**p0h7rYZf6x n@T' I6x `Yk.0WE!rooPP%p*,, J!r@ `nWr#-@E!r))0%qpPk*.7+9 x.apjP@'`@* +`p ' 0B'T!rq0@*@*4-&k%110@% @n95,* %(( Tr+#*`%,-m8x PH x((j `#nP@'~~@U!rpp`e o '# kH xppE%x5@4'+*66+ !r#E!r!%P@ p-qI@H x57s!0[V6xo06` `( [@nZ%x&'  (#oPH xo @`f5! o1x*1,  0`Dx,"`5-`X%%p !x-pb`ds%o! *'%pP,hv8x000Jx p(** @m(%"dH x44`@ @g`k W!r $"0(")`T r/b^,x)ej0Ds''@Д dX!r`*bX x*`P&&Hx,-@; xj e*- ( J!r307`Fs3% d 9 x h p&x kpmp`m&o`mw/!r$PqmfP Gs~o`X x,11g9xPF r5 l`p? d+!`8r `6x `pp*`p0+ Pcpf r(pp'/o,`6x@l`i65pn`lc0k`o`w bh&'eOP'+`g hP 0pop2s# ! W r"5$ / P#rpieP @0Fs`@j#` `F r%f@0s0% ``p&/`g rp` 4t:x!r` P`Pp&;x* PPoP(0 0)pN&4@p+70`7tPP4Pp`p0`pj-P&)i E!r~``$%oouE!rpo)x` 0F!r j`p&so0 ubxP& q0P0  p$r0p l@X r6Ds/p">r ^9 x@n9 rX>r06rol7 H!r2U r02pj *9 x W>r`F r,Pny>r 5 0&&m6/G x uC4_9`P^9 9# p7r.` k@>r@y/ r7@@H!r..iT>rltpl4.!.00 ^p @&2Our%.5P q6r-P P 71 aF rk%.#p8rP >r@@h@(.%@(@Y>rh j0h`4'"' p4oo%&& P! 0`h)0 p4 0 l*// НP h,kưhb 0,1,o+,3ʰ%!,@ hx/o E!r!,hhphT}8 `%o 0h4p!p/Oh 6| A00@`` 7 `"9$~ 1x `$l **9j <+#k`i%T+W:$t D5x`V@96"7Kx`&( U@Ft P0 Z x  ' 7 9p  &Fr ![  (`L$r =@$|!A@`W9)r j ;``p@@6r  V=@ X$xp @E$x 0 mP >4" ;0(#x S$x# @0WP9] `$x%<`O9` BWx  9 @&% p9T|ll8T|jj 709 667@05`4@@6@ 3 p5  4 3;|ki7 :: PX/6 9`X9! p6O`:1pX9 0U`9 `9 @7ppX>9  `9 ``9 pX @9 @9 8 pX8`g `6`Y@x  $?0% ȰQ2pX"  Or  1A6|a 03 P 30` `00( G6x@0 @1,p,Y  3 0 Ax  1, D6x0&;6x0 @2` ,1`# 'МGr. 1S6x ? Jx 1*1( 'S6x02# 2p'% 1@1p1#R&x@ P'@x  8 r 0P/111`.1 ~0*/ // 1 b P2Sx `9 r! ,8 r$22 /< r`2`1- `1@2 / 2" @#1-1 `)1-/`11 10322 x411Cx1`0 / 9{"13 V%-P0 - #bp0( 7H rr- ,W rq 7/ `0 7 , P#@76 r-.4P0r ?0pE r0%07,% 0rPZ`3.(p@rpP(!pw@1 r`2Cx#`E$|#"0/pup4!&`/$ (6x %!p 2$x1K r00%!$ 2 55+`P%p*%%,0(Cx01Cxp@1E r02 2-%%00% 1+1P00`+x71+@5@@PP%2(7@E r4 %3 %p `3% E5x#02 ~ 6ƀ%/z&x2` %0 O6!](r%P2Z%x(* &F1r"@yp7Er*)2@0 P)T r//*/*`$/`%.  OE>&@2&0/@+0W!r/ *P5r@08%P,Н @0`.p #0P-.0@%@ 9'"@%p0 p 1r(0))'@0,p2@%%0p. p(P2` p.*p./ P. @P` @0P p3  u@(77@E!r33P2%02' 050' 3%29 x- /E!rP0$@/ `((#9 x -9s0($!4 (--4 02&Aq6s0`%,,P!8x--H%x*+@ .J x,,@ @02(@ 0'54"%"p@66x%1@, `P@6$ fs!6b6*""040 8 2(p;6x'1'*P, 4 1(0P %6+ТP' *P P5.*0-1r+0#P)$$`5x(&(2-)/-/ $!('0 $!P'( 61 r@'X`&'',6`'!@p (1x6p6--'@-`( .(Hx+6x6`( p '!6pH!r6@1++- +  +xP(66x0-/  #r+ &@( P4Zx 0*%) #3r65-20#2 2@4p5x$)p5p0(*  /p Er**@p P-p /P0.04`1( $`1x%P.5 p&@$p20Exp$p ($# 4r#@``0`(((@`2$0`(`,PXx("P p@p(0 (`&x$ @/7-`%064r6P0)xp- "`.`2`$p@"3r0`3 0@"@` $`H!r~26x"@&s21'/,xP4P"p5r6%@ /. @; 7 9~0J x3?6 x3. 1E x0 0."<&&! @0Ѝ&' `%1`/)5x'70P/ @ U r"`)`,7&` :"&@ P+%&/-`E x&&Ds4 515 00P 0 /4'0>rК,%К@9`%00 %5`1pFtO!r~p @0/ 03'sP0%4P /7@6!r$p7 E!r5&(fO r7@401 @B%L:sFr@@%0Y>r774(( 06"pI %r@pErr)0 /@`0>rQN1)x)С 7P>r*rD0:r-176`I!rqp@6`&2Srr 1J x*905&P& Fr7,7 `1'E!r 0 7 0& (@ `1E!r0),,P8@&q3: P00B"`&#430P@ #Fp4 p8@I %50&44101P!rq`.`-F r2:%&52 =06r+r0X!r12`J>r 3%&+P0 r4B@E!r''0p&88p0&99*<<*==*@@*AA*DD*EE&::0 /P*>>*??*BB*CC*FF*GG*HH*II*JJ0*KK*LL0*MM*NN0*OO*PP0*QQ*RR0*SS*TT0'UUИ 0'WW E!r'4r/05 ' %545 %"'  `%%"4# @% "0 ppP# @#roo  UTG}ptA/;3  0#`&`~'3 RD|b3PE %X#p@*99*<<*==&X *@@ *AA*DD*EE*HH*II*LL*MM*PP*QQ*TT'UU *;;*>>*??*BB*CC*FF*GG*JJ*KK*NN*OO*RR*SS*VV'WW9]E9]A 9!]I#$78 " +r !9%]T&4##$p`7 16x :@;>l"@y|`<##000 |@$|#&)z` !"#%J>r *$ i>r'"# B"#&0 ! E wa>r#$ 1r@r %@r)@%!#%- 0!8;X <P 1Y8Y@4@@A `>9"0<04DDE0 "*Y@ 4HHI 0D0 H J rYL *YP p9!r g +x rYT0dPPTr ]`?p%::P' @f h6 rCP50|hP`<@?@`i0|h&@ 6 rGp@Й7::C`9 rKE|& pd@G@E|7`dT|P O@$r 08P i 4::K@q@k rS:::O0P `;ZZ0`Y rW `S0@h rZZ0%6r,@7Y:W Ar--@0*/d` `>`> 9$t9 0 `>0 `>x9{@ 0z М`> `>0P=@X  0{P{@<p>Xx P?S6| `=' C6|b/2F$x5@*/@0!0YO 0xVr5z=G~ y0I PDx7` lp> Hx`WFx%@@~ 0?1Fx(`|@{p>@>75x96|)?J 7@0ZEx p +Zm0?E$x!7pm0: `y9)`p0,   7+{  9$x3 7+ 0$z`p%  .p!x%n{`(UrxPXO6|PeFx 3 @#@pA W$x3Ж"?9 ,`APAPp 0Pi9x  `ƀ P/!x'p+P !Up'|)B@pp @~#)"p 9x0P(G)6$ :@( pUFxOA6r `%  PUFx9@p%@B!B` @ ;x '0K +30 PE$x#7z )|`9 Ur5C- @ ;x71;x*%7}@E& Oo9`p/`DUr&`Pq @p@1E(`971 4*&5@E0М)Gr9P P/0`/O  I| P1$x0_96|5<03pP#5(p66|3pG` 1p?5 O66|7F 3j rr;7070 0DD b.?B{ |D D0#D0??@~ C  .D,04@0;`#`0"_00/0% Y@ 0!0 @~ 0@0A{R\!yΈuc0!Y$qz!)МP@ @p ;@ AyA @%Cy.U)`&x.&yw`m x@x;p qX$x$p#y U$r0`3y6r Rs`v j a"r@G*ΏP%sM!b.@GpV6{>m%!xn;xrFx P q ?`S x# ( Cr0sOl"r  x I  p"@x&Fy>>PQ$r0! {d$r  a'rPU P!x 0r0'rR@3?@$rpUr@.'{ Sp@/'P2$r=E$x@`z$p@14 @1rnp $^3 006:PR1p` 2rPP9PP9xp" r`P0Axp6x @p6x`0m4( Xr!x 1r"31%rt$;x%7r01r C$pP#x@1xsrDrq !x 0`i$rv `pTr rt!uuP1r vw 1r Џ'680x sP1u2$xmW & &4 m@P#"P| p EHxW%Zm@  Wx#0E%x Z`033pbP2FtP4$r 5C$r``0( Pp % Z5r9#Ppp@E$r 0%r#pP 5 3r' 0r1 0B| % Zp0r-sP@C| H%rE%r@4)r 7Gr%r0G%r @Pr+sPrs.Л@!r Trr ` * 4 rp6pZ%r0 9s 9@4r7p `@r#s-!J%r P 7sC7# P(&&Cr3rp&t!@P!x Gr/r PH6x 1r55s6|&@@s1`@rEHx 7 p`i1P`Q|PP1Fx! p@P #P ")p  PC|#2|+B| /@ 0#PE|%03| 1@Y0 E|3P{| ' # P^E|5P*# - @$##P`@@16x ` C|7P%$``$ P\5|";P# 0@EHx 0!r )@C| 9 0$0 "`#Urp 0r 0EpPiPPP+01$x 1p@P"p4'@5@p" wr%1$x0-" pu Fx@p@@_`@6|t #Pp1$x @7@! @!@H1%r0' p@9 # P0Tr$@' pDr%` !x"`;4Pa6x%P Vr$$1x!@  #`% p06'pC$x'er /p$O`pTr P@ % P5 $)`pp`63``7'$0U$r(!%%%5Vr"$/`S$x'$н`!x! + "!r) (pC$x#' 0#!a#$C$x%'HHx E|(P  E$x$0| )P@Tr 0#n%0`T6| &䰹!$`D Pc{ f. c P &0@bNx0 @  0> @!$@ ` 0P   @ 0 `(P` b# .0%  !D@ `Gx aVx ex/r  2;x0B4E;x "Pb1PP` Њ E$x4p(0x !x $p@x 0@Ȑ @x@$x  0bx d @x @  Px    A| @ - @xPo@xPp6x b 0 r0% * 0Й $YDx * %eЙ* "!#  P  @r *H*$&%'e$  e7xg  +`G% @c) (@cJ6x%`P5X* B*/ `.* (0) cEx  aux  [( Hx `;x8:9; @ BgAC* 80% @cn 0 4 ưE"`@ Ux@P( Ex \aa%  nGr9zpcM%8nʰ8`8`08TrX8p %XОp$x\8P# 0x\0U16xKU6x9:0p0pqP$x/ U r 9v r9``pd`J!| pp)yPЎ#9(3$000#P`c5O0>*N*E*P(KH6xCxNN@[_H r< 0JxEE *9" #PP G rM UxKK P3)00'eSxOO0\'LpSx<@!? U r(30P0|[!0?AxYp"?0x p8E)(a$xpj!`0r(`a`&x `Fr  W@@I%x$ZDrY`5xP%*@!/WA0a]7%P #``b`ja@_E+*H 4&!kpa@(""1rj%,(p*$% # k\a !r#0cjXE%,/a qP96xi`b66xha*(<i@ph *"#] *`7)#&`96xf`96xg0`^s#(fU r!*+`p_)p&@Dg*_P_f ;6xd4$+"@en@(&&pT r ,%/O )dp ]0r#`e *7#%(@66xbp_*@ b0c0` d%b !:cW!rMM Q 2sl[!!Tr$`(MMQ0*0p6OO!pZ!rNN'LLF6x`_'EE Us&MQYx?[G!r99@Px2[x x+O^ ()N H x#L6xM [pT8x$E H!rKK96xa`@rP`H!rGG06xE0(L0`N0`OY6%x`f(*9Ex92`8x'K a`d)AA!rKaH xGG@F x] l0,@p`H!r88T rl9)(yAP1rda`HxLXGN ]@`@1xAK0H!rFF6xU G /P`(68@r] # H!r8;`OZ`^l @+9P%Kp09a%AA ((F1xKP[; x8F ]&lAFxK'<0`<0`S0EP]P,CCM ] #r`^FxE #r:  L!r==P%?GpP`GpP@Z x2C0;@@%EEp (C=0`pHxGG@G!rBBCrp-E.@`>`@CP3r>`@+0P(BB9 xGExC<`f/rEP!s{[` C`a?@B`p=0@aaN (Kp3rAPYW!r<0pCrC  '@@ pU0\bPK00 p0Y x<3rLPZ xo@ O 0].@,5G@`&B/@O0QP7/< 3r9p`[|[`S(PP3rM@Pb<AO kx'HH`'JJ  esyyZG(PP! 8xHH P5 h`(JJ@F!r7p2P&$`TBPP!r@ aZ7"; ;xKp'3 \522'44W!rDDU>r;R@P" o'1U!rII@4zz5xDDPW s,@p6+00*0~P*II 87J "rJE r9xUb3hP6rFyS@0U05||0%4 5rL/PU00p_lRГa%E*`Va4@a>r9F9@5r:'T0t r2C pa5&@4z4}D@#rW rA,V">`R0e0Gr{0E r8+V (N"pG rO~@U$7<040@Q"P5I `P>rP9 @;d LVG rN5Ua'8AVU rG|G 'P T>rO%Vf r=(=%<4?@?`V4BQB{pG {@>r O =? )`16xn3VxZp 8P$x\p|'0fxqp U$xpp 0`#&rs@Lt]!cnΠ/  bVr/\yppWerpy3#p -\=r@7&p{p4@$x.Zx0#'qU$x,Z<`;3x!qExO5t0+x )O!r0Hx  @Ft#P H6$rC% pu 00X%%p73&':7  :`4$x!P`R@ 7 3pP@ x"A6|1p8#%;7@00 5' 0;Dr&P2!R0*3"P4nnP(rr6$ryh)rxk6$r{ u  `- 3P =EP 2  2$2P+ 2(2$2 2`+ 2$2(2=4@ .+ 2("0$2 2 `2$`2(`2? @2(@2$@2  2$ 2( 2 @ 1(1  11&N@R\ kox % 0~zp1 p 000xz @@T6x}^(MC6x0  Ax 0 0S6xp2 H r}P0 4 @2; V r Ux 2/Hx Е %?& @3`/p@3/Hx @ P3`?` 3  _@!aF %   P  &5r~`'U r@{%p1@&|`07z9! %,&wX r}PCx||, (1Cxzz`.6%@ 6' @g r o*306"@d r|s)`6 Xx}}G r 3(2p`&~9~(@@ (*@v@ 7++ (.E r`-`7// @+2 `4Д633@U r`k666 @')`w@@0@2G|[@711@`/.(@G6x3Ix`/H6x 3H r@H r4`p/P` H r5Cx** p50x T r /P(+`0$$x+2pE%x*04#../Er#/4+p/Cx//1 p3E r/#5r!0 `2"( ~0r0!P0227$3"` 0-Yr%#6Y r7$@$0Er&# 0,0T r6P 6%0`4``%P%!p0 0z`0 p1r10 1/ - / *`+ f` @1 /4'pPg 0H'`Њ/@00* p0*""1/%%#00'&@W r,0P0%/#&&00 @04x@@ @04"-34}t!.E r 'p-#-0/Ё$`-*|| '- 3 rP#6x"| $`-P0Z!r@ 6x0 1x)0@0@(H r$H%x&@``H r9 x$0# P) @ @'0( ( J r%@ 0 0T r'%@`7'°,p:$p$ @$('@!@,Dr X r@ p6x()&F!r+`P|3@(F r,7(22@ 0)) 9 x3Expp/0,0,0,pp:-#)#pE r0Hx1-Cx~5p@%5*@@1@+J x551-pux%)1&rp&@'lH!r.P**!bPp!0 Ap!Ex!'.)5`-Cr@&5%p@P-° 1&s. 0uO r11p4rH9s/@14rPGď1`1x50OS%55@ #rp5"P5P(576x!@Kr*`0;rp!pP 4!0Fx2%}},(77 4rP5( W rl7J x7}}P(@)( `}09 x}p 2`8x 3r 4(`4r +}b+0 P%zz`$r` '(( | H x|Hx p2+@(zz@6x3rP3r1 -0%}/1(3r`%)@`#r (`%#02.7HxP!@ R#r3Er|p  4r@4($$p3r `N*$P 0U r7*`(&0U!r$' `9@&h%'"&pp-` B@($)9x 1F x14Erz80%z70+H!r,@Jx4,   p36r@0%~p #r0@//05p 8(4@HxP1>r@.F xp16&pi>r0V r-0'/6s~P6x@/P5,@w>rT!r}|}`.7 U r6@b250&4`- U>rPp2P%0`(+@E!r**.5 "1)Er" T!r++*`P7@6!r9 )x0@>r A!r!PP 050W>r 7 xP&)8r' 3 X r2@@>r H r. Y>rp7 s  p  H r30@0+ @ |`"p2W!r И6r( @@ %./0@%& p(0 0@p%(@P2E!r0 0&st06& 42320`,@P1 4 `s &   (@T!r5655 P4 588t`g r99 *==*@@*AA*DD*EE5::s*>>*??*BB*CC*FF*GG*HH*II*JJ0*KK*LL0*MM*NN0*OO*PP0*QQ*RR0*SS*TT0*VV 'WWW rUU0P>r@ ~0E"5+fp#p%~3@#6#3%5 5  ` U!r$5"p(%$ E!r#~@ %"# %&$2p/#rXs1& 1E!r%#pO#rmtm20 1U 4!`G1J rmlN?1 xT%; y"!bl `0tepH rXp3 r?$Aȏ r8*99*<*==*@(AH rJ rD %'EE A rP`6$t00'H0W r I@'@G rL g r0ZW r E @`'#P `) @'Q  (%T E ro@ ( U 4Mp9 #0P`Z0[ r% 0 &':Wp*;;()> pup(?? J r+B'CC$';'-F  '/Ji r'KK Z r1N*OO*3R*SS'5Vi r+C*WW 7)? 3G (o r> rU r @?9  9  Pf09=69g>r   7 9z1>r`@  * 0&'  0 & 9%6#P|v`3 (#oo`@v QD|wЏP   < @y0`000 0# 0P: &0$G \P76{`vb. r>9;9 C& `?0'  @pK9W'`Z>r0'&i>r ( %Y>r '  i>r ' $%$1>r   p1x@e`k#0p(%E r%;Dr@0 `P>r 0 @-`1x;$Soy,& Y{0pbr^;z4-GP7P|F%p^0:/K@'@1$x@vH r1pP{ %@pU %3Pp Dr = *50p pB% >`= TxP ?PF$x:esP"7O40> ?0>~ /h@0  a= Ȁ& $r0} E$x =0W!|{==@0J1x`@"@ | p `/PPrc|0 !p!@1  0&~ 0$0 $ SMy|TGy E / !!806y:@ . @4@Oymm!A15989p@c:PQi"599@P7 :P P v/x1p?p%' p+ 0!"0 0 0**/b0 3s0 0 ` 1 o!^^..#A%>>p!@{@ zP.>1$x4  1$r 4r@1'rp@@ " !r!r @~'P 1 rP#p@>@{@ r,'9' PE$x:p`Gr990 Exp  $$A# 6x0% : p' @Đ# 9R`' PP A$x\0w`@xGPBd$rp`(x#g$rn 8 1x]@\@W$rqJr \(30  n{9rC$x ]DphyPA8@?y9`4H6x7 Hx%U$xvyp0B02`I;r/%E%x vP+IIr%pp)PpE%x v`5r&\0 0l%`04]/  4\0I:r-'(\yU%r #`0 0r]K%\y Dr']+0P*0 I /]0 /0Gr\  4#])P )`0r-]- P9,\ 4*\ 5 +]@+`H6|@r)] )p1$x%I@6Hx` \ 5NE2| NC|#@0P}`z"p @J|(@ 0% 3|'0G/#NyB| *PNP{C| )P&,@ & # NGE|+@#  9Fx`p{@{%'O@@$N`{3|-= %$P|$YH|"1P| p % 3| /1rS@G04(@@r !@H^$7K!xN'HP )6dr,PpN p0 +07%Dr & X|N@J`I@6 NPV#% p@J$/L~-H#P#N0 pIp/ `@6`T6xH% p#r  1`Cr$`0 0$/@&pL(M `Er` )MUr $(`` %$@/p @ E$x& @+P8"$*P3x!&X$r'%Yr$$,##&p=$xw $ @1$x%@+ G|F$x:/ u'Ap'0@0C6|   Bx0 6{%b.% Lp _POW%@ PE6| Q$L%( -0EyP /N:,: y*4:P0d4 : 08xp1x%`0 zzzfxz}`x   Pc@xPw N N NO/  PL/PL   +"# L[x" ! PB#&1u/PPI @N @N@N!`I$ `N`N`NH 0~IN "00 NNN%pCpO$NN H  NNH >0 NNA@BAC D FEG3@pD0O0O< 0Oz@`" OP%z"Wʀ $ ! z`^Tx|P M x vH |Z|@ W$r8@xX>@x s!x 1x[`?@ @$x|p96xkw66xlw Z(xjwH6xiwH6xgv6xh^+mڐ86xf^xF6xe0v`cu0dpuI6xat96xbs1xzp` pJ9z a? 9b!9  bZPPU %4pBPI6xS 0.T rQ`&*&A /pK-I 8 r=I6xЀ~IB r0; rJ`%G,7~@E rO0}#JJA9 r; P8 r ~@E rU?3xQQ`MC@PMP~@K$B 0P9E rSĐP`p}`&4JQ%#B@E@96xW@)OpM0'K4@ IP-'000PW%-)pBp'L@P`Npp$pf0PFP0( PP(HPp`$LN@B=``@FFK rD#@ĀM@,`@0 @4@ H@p+0*@ #44,P PP0M 8 r8p 0P.@P./4KP` .@$x:PE rMP`:;6x2pP@ `E60C&UK rPP'33pH+@b`'@6@Ar@pW Zx63`*:T<@S PpH%x$XJR P(6pP$rZYw  %@0Ex X ZP@I r(<0@r[`d rr P7bS`k @Q Vr*@ 5x`` kOpl p@ `l Oo/PjPPQ#p9)!$ &pP`*@0g QE+rk*d0'!hPu*o0/Q$R QQR9#0R *'!Q !QuO@Q(p*&'pR#c1smpi$0* !04'"PRpN9rr+  0@ pRwr@ R@6LLo  'FFV!rIPL(>"C9 x)w0r7Ag#aP /0`(BBpp %J M X x(N J x"Fw+xF0G&A3OI x`@6xLR1NOp'T rm>pEi x'}Ex>/PL&rI T8xP 0 Kx?@RG!r;@y)mJH!w%B7pB'99PG8x1x>I I1r@0}#`q3@6s#@"m x0K9 x/@BJ!rHHPB7(CC3rG1s&yp6xL #r>P { 0ExI@G8xFC0V`6xB90*9-I `T`;PV $r}(+DL&s PzRL7D/I0`F5-FP| $$m-&JI %3pF0~03rII(==p 6xL&HF@ CrF``0&mHX!r7. p@4rAP"ExH?.{ 4r=P0pT$mNK$mPPJ@i/`T$rH0@ #rL0'3,@IxNMKH!rEEHxP;0PPDr;9s}P3r PR0H xEEЉ4rG@P(N P*?2P`OR P`+x$ЉN OCP-KE8x??P3rB@`R'44T0 s2kp$ W0O00'1yCr8p (NE pW6x@ WH x443rEp@ Gs1? Z*QQ9`#rN 0J(5  Q0OEs@@D$mPJ x*Q` U<`" DV&" @ V(KK6xp@ (MM06rRp04440p@ )xK 4r`F[%@`Dr 9 x7VE!r::@%6 @`J `FJ&x:P @e0Yt rR5R0ЀK0L@#r I%C4 Ap%L}%;~`Ap4//0p9RR&D%0pQ4I(IʐTT rJ'J p&+@N48-8@A4C@:b4;;L p4B)B@@  r9*9 B I@4JLA48`7G2G@ `A9P1P  @&E EO%9B@`'N`Px 9!?)0`f r>/>@ 7r=,@E @  07GPGpEx l@%8&wO>rENE@F rF#`9A&A(96E r:= @>r  /mE R A = :0R@(l@*+3%%(OT!r))*% %$$} + !S @ + %&&L@0`4//&0`(..J!r--p`%00SЁ7227 pV`*11P%~~0RMM J!r16pQPN` * * 4@%5R M4 %#%!4zzs"0*zz;x x81$xsP$z CC s!$ "spE!r(@@20|#s %&P3 %%@$|+"<#pD "`9$:E'&pb|z"\ DT$x |"8!|}p6]%$v`03 `1||5\ s C P 0:GxynP#A|{%Ё%!!P5| /\ n&Fp1%xx  3!r]!;Gu4\p AkxtqЁ1xwp30 Ё vu 0@?#/&qz` 5(pz4$uP8Tr-q|P6v 4&p|4 .\}S$x't1$x, {=2#)t ROx Qp-Hx vWr(3 ( P   PP 09Hxp7'$1$r!`) H  P)`:9r 29Hx !: P$X C3x)p@Ё<'4X `0'53$x `5  7r`0 % pCr( (xP 1%  4g6|Ё/`00i  `<&  (uuH6xvv;$rz}|-p)"*hN|,/2 -Э" -! -# --, 3(3 (`$ (`p4 * +@1* +(p3OTx Q$w bڠ\pQ3xM oM 3pR4P # sr ]C6x0 * $O @@   -d |M .@>@E r *x x  *+  $p)P 0*@\ ,`% 0 Cx0Ex ж% P@C? %Ё΀303Ex%P%0?pT@ P%  ]? FQ .` 0a ΀ Pap2~K rm PE6x25x~~ -` 1Cx P&`@*3 @P1B3"y g+ P4 P2@ 0-z(`1!z`` E r01`48|Z`Y r `30H(,0x0 (]`2Cx  #,(`-9%x(0+{ `@ 4r)(-!W r77E r%@/5xP`40g6x8p3 r"@lP0`p.03%01@x2%.("3x5104`0Gr!P@1p%0$B 3k%x/4530P`8`8;%xP,%!(8r$)P/E r2@P.#0Y r,0 `-_.*0 ,`/( E r-x!Dr(!(0/("#E r!0`|0Q:x(( 4! P%k,*x0# *%0%507'0r%;%x 94@'Er)/p 07#`Eubr! p1%%/# p`/0&0 Pp/`#''` /(hP` 0.1r#P 1r*0p/41 00e4x!p(.Tr%`@P4x%5 p***0p< r#P@ Er+07 @ `0@$p$P.`( 2`#$$003`+p,/p,2p,p,*PP,//// Cx  x_ 5% o`5#."0/+0((PE r(`4#@%@ &( @ r)E x0%pp`8x 6x.`1* `(&4@(@b0 4@vT rmP) `H r` p.$P0,%@(&@G!r P2r X r~@H x ;x)vw/ r~'~@ '9***(%@G!r1 `@`-&90 tT r3!p`~763 6x2`'s3 ( 9 x}(H!r-6xP$r% */w'"P2p{4Er(d48x*00p @7P ,T r76 &6-W r770,`%(~0E!r7,0   E r v0p, 0* f+0%0@H x`px/ x 4r0@!`Er/ 6@P0 0 @00*0` 0-15%P@sp*@/`1x*`Exp$rpP|`'m @@$r0P5\!r50 2`F xPPP550p&)@wPPE!r) #`4*'@(43rPP6*  (Ex.@(.$@3r`P5$4 4(@, H!r <x5. p2H!r.@77s4.`@`A&Jx* {+L@ @)xP3r@09r0}$r `p5./  |9x H!r9xF r3./@@P| (Jx%((P 00F r./`'x``gO!r&`4&fx1`7x2 < } :r7Ћp 2F x`08'!08 6; 2@p}.(pJ!r 3@'~@ 6  27r, K x7U r&0 & 5$ .7@Ts@150`25"@ (//`.@6s1@~&~@~2-?3P~15%'pP6 .p  >  30p5'pP*%`*,,` @6&s%`@ Er`1& P(,7.<>r0`5!P 5+`>rV r4 `(++@/@>rp019 x@T>r30%o )r`'s06Y xr3rp2 ? / %P ?p">r`4*1` 0 3'5p00 /7P6s `U!r&~18|Y3 r P@@>*??*BBAp*FF> @B*II*JJ0*KK`E@*MM*NN0=0*PP0*QQ*RR0*SS*TT0'UU 0'WWpcE!r%4@5p0 p+%04~@ 5@%5$04~~ⰷ06x p  :%~@p! `4PP ;E! pp"p%%" @%! 3p0nno@$ro*0, `2y@"6!r$6 ]]@$P#P ! ) %*+F0 -/ 1 3) ' `=$P&C|xPC6xss'BzЩ 4 0&P(+   (&2"'(0/0"b `+`G - ziw4/O0 </"/1 Tr P>O r3~p  < 4@= %D`lV "0z`>> 0| %prp&o ${U.{! >z  -(S.y~2U`bxZ+`Ђ%  @`ona$rpdr 0&/ Pb$xi@!Hg70H$t0 1x 13rBx`1@F#r1x @2sc"r -1$r $rM3rWr Fr pr ?b"?33 u$r4eF~ ` bs@X d@ /$ 0\ `/1 Hx `3rP0O@ЁH$xPЁP`@ -3r `> p2rPg0Dr Pep"p@0T$~P01r0<4rCpAr 60b "$@pg06Jf`O%E@!@pE0$x:0 . xZ ?F$x C0"| PzE1x`!0# Ѐ0| ? E(x Wx@T$r p`0xP  0?%@]!|oC"1r`p|E4r4  `h 0 0r /@% @% 5|par08?p0E@%| 1|p  `q##B @r04q 7/0@r2p@C x m PB!x QAY%|1r%1x ф`PIr"p(- !r'1E$|EDrp #p1 "@p"%|P3  jp'p~ %p2x`:!@|kq:~+x+5x Wr&+H%| H|np@1?H$|) 3r$pA%|H|o`Ar $p4@Ir. @r?#S2|fn`P7| @P/Px 3p, Vr*Ax@3 --0P@r@<@r+@+E)t3r(F$~`!pbX6x71r)0)D| 1Ft pX%x1 |"pb x  HP8'$ p0x`!pP| !|PP0B|   Go4V #go@ P@r `W|(@@jV " @ Ё# &p#) 8|*@fLp;C|+@`O$V5|"P+ %` lVF5|#+!'`  `Fx@0P00H p $,*/  \ VG`}- p .PzOr $`1#V|H| /`Tr `Frp PZ>p6 pp @@| p"*0 1T|& #+0p&(O0 # )@ 0 @pG| " U| % 00%!#@5, /P#P#-P /$V@3| ' %.`0@# /@A p p4$500& 4 $&  N @"p`0# )PpLF|*O0o @E|" 䏰+``Jrp%"%p0& p% #p@%#'pK|,`?`%.sH|-`0=`E| @0&{'N@o#$$%/4% %0M8 5|!7%&p`%(p#*% )04" 0`@`9+ p4#!@0Ex@ "PE0+U$x 䠆`Gx  gr`"x pp<`cD %h%  b#$P 8|`!p T6x,* p%p 4({Tr  1@ /  P $@{VE;x }* ( 0x PȀ%   1$x pP `ʰ F# xD~ P!x P 0@ !x N@x 3 ~M/M @+@ NkOx&% ' Ex N* () $O0(, 16x @x O0213 ,0- ,0-@x. /pO . /PZDx 0 O m0 *( *a%aaP,.O-0/ `P `P%`P'`P, a*c*cc> cd*dd@ 0d*e*ee % 0%(e(`%PL%ht0pp` Hxhh@Tr#pF5" @T@-0P2P1P3P(&@Ex$" 0x&#&,0@o %h#" !x$$`1xp^p^ %& #05x"$00G|&%6xpG"!|` &p^%p "` @ p7`@x _WP[W`0xP2@)|P@x(` )  + `xO%| 6x #l` 1$|ЙP  @1%|P7x`  0x@C|m@&^ Z 0_*`_!013@ ``Qar@ 3?0Q1~ (V$rXP @ N`pt/G\RP  F r\ 2!@@:1$r%0 xpD;/A$r  0|\\ 1A`1$r @ ? Ex$   ? `b@ `9x`1$rZ@;x [  |!r  9 Y `@x`#x~Lv :<!raP?x>  `B@D@?xF 3 H 6xJ`LNPRTdG)lB/P|p"!bS` RxpBHx`&@P(!\014x%@&^\ ;@'(]\1P$_G r\  '`\XSx'\ YFx#T 6\ 1xX6\ Cx^'3\P0A r!MV r7\7 Cx 03_94x 0Op(\YE r!^S"Ex``p/90L`0QH r!` H |"`1`H r!0Exp& P9"\1%]$0tH6xЍSxp(1\QT r]*]PI`R%]( pG r\YP.0@70\4 4x" Y*4\XPgPP,P H r] *]" P*]0 # 0(]4 0XEb];94r!r@`3N%r  7M(r E rr '%p5b]b8%r+ Pp%5bK) `/-134]b50@45\6< ^^P=Cx5`H!r`` E!r6 (b^pBE rr58x^` H!r`$@Q JH rr7@E!ri*0P%>%G(66pE_r  @x7 xbpE(``O~%## `C5x##P*e!r&@<p0&Pwp%b"0 r`r_0ODip %_(0p%i`p&_0%_.0&s$!@,@_ p&s,P%00$`i(C @4@ !!aE!r0%P%%!!pDs__H6xrb &@ 0K FH!rC%77€4GH x%%pH!r))@K0 {F xw(f xx.0P%'P*O `b!p!0% p0|4s 0i LON05r M+R&/0OH0u'H"*5@ "@F!r-0p/%_5xv'0`T$  F{pH%! p+3E x, />r}@%b  ~%s :(zE!r35P%)@%-P|4)7@%409*14t@*`#GxUP07ypE xu p4^^P(+ E xt||P5 P1 % ƀ*~%i <9 (& Wb'# V x^&r%##L4rir7"@&2@I4# #0@ БyE!r#60z F x1` { &/ @ v|@*" x} (v0 G xw3W xx7@}~@E!rss *#^ 4tts @G#P|@P4t't #p@%tu K!r#*0+0W}8GK!r#(0/0. 1 +,, - %__ N5 $"_ 3 0 7 4 % % b 00b7U!rt)0Ġ %! `|%#t 0H%#tuO"! *b|`%^# P%_!HP4^#^-O`9Gm6|H& 0b Am#)d6z ;p  p0$~71x  9T$~  6| @,4Z ) !Y0,T|#[ )3o z pyW|*`|A0+8x @z@Ft Zx  ' A$r * 1a  -  [  yI$r `0y#p`/P+H6x3|P*0E6|! ( P @ O@aHxP@H6x p/P+ 0&p  C6xP9`< /`#P0 ! .2PH E|p##+-E| %0,o$-EHx @./e  p.*tO6| 3T|  !@-p #! 0,` x $pR# G)m/p,9| 5 H6|@`@ 6$~ 0  P,d| `0+ 0+ P*p, )<* (*@'@) ' ( & (0(0 p' @&T|ZZ P 9YY 7[[ 0?;x`- 6x,0{z.0{R- d#/0{ gx (&",!,0#@$P#,P# ,,, 0*)+ `-&`-`- ) $`, `,*  }~+ @, @,(@,$@, }+  ,( ,  ,6x,p)--  0!@& %" #<x'*  ,, ,@ *)++ 0+h+ + +$+(+ +)) $!03r 0C p>& @eo$xub4bb#%iu<$S6xruuAD6xtuo @ $J |i0#su  rz$E |ts$u' # 0#`0#0% {7 0Jx (P# $P( # $p#% p#{@$%##0$ @$0 %P$P6  % H @@@$P{@S0EA `*#"aP{S  Ȁ |$r#H ri!U6xu% t# # "W6xup&Sxrr s#Xxii H6xu&G |pP$ Xxtt  #3x"@H6xu'H |"`Sxss vP#n0# G6xu(`P#"Cx"`"! P$ ( u(H |8 rP$   # P% "# P&!p%E rr !*#u"$P" '!u)Xx & x0'U r tw P&&`& 'Ps 'J |! 1#$)s  0'4x(P&`z#J r!"#|#0$#%!v08|#` $$03x*p ( $ (%p% @(` p%, (0#Њ%E r!*P0) $/@" Cxxx"*#,`!$ x_@$"%xP#)Dx.#%%00##41 p1&E r%.00###0Pp #zzp4@p(||@E r%z 9i`*%| 7'4x)0E~% $4''0+)$% `&*'p }E r@$%0%'~`t$%% @0''*!~$(2 0z20bp4P0E r2) +6'+Ps /%!~%61 b'rr (36p F x%r(ssE!rr(0`%-""(tt0@ s  (7&0E!r5$!(--@ `" E!r||P€52tsi%r*0%vv#%u, %xx !]! )&vv`( t@&6`v&6z P*xx%3up%0e7r!Nu- 5΀*0%,0u0 sp%5.P7   @$P%@t`@(ii 6!r5'p$!$`$ `%%##%@op$xp&t]]&%'%p%( &b@(E!r110p* p('' P(pĐ$E x'' `(`u'|%4$vi "vp#$)( $s!!Πvx@#" #@$+{#/p`y%b`@! %0!O"%|"&s)#0#40`%x &s/0'y U x#1 @"ap#u%w '`'#0O0(P#+"h0z`P@0'%--  $%P 0)x #E!r-$lС4}%+p+2@&@@`%0%-(0(`6 x&'P&{0# 0'4r`( '0%-*]g'P%|@%%,,@7'$J x'433`q` p&7 x~'5`%] )1(0{$y%33`#Ȱ {$%30q`@&vPP{&7v]v@9!r36$r] P#%vi0t 5%&wp *z'|1I x}'H!rvsp1>r`&% *p@'`@P>r{@ 0E!rvuPP%44 u} (ww@ Oot @oO *>>*??*BB*CC*FF*GG 0*KK 0*OO 0*SS 'WWo0` w4554 4yyx04665 `4zzy 4676(%z1((%z) *z/+++`t1$r`p#rp#% P%"#o# `'%%" 0*`$P`' @'P `p'[[` %#r^'^pT#r_t_P PUG ؠ"@o_1& $t|0'{- #0>#_Pn P^PE r /7r88` *<<=0*@@(!AT r89f*DD 9<= `5p 37rHH0C r#0'LL g r@!2#-E'D G r"M@`*(P 9H#@*&Q (0 G r%UU |`4L"p4(&&O@)T%05::0(;;(>>  (BB6 r*CC *:o(FF 0Y r>?0'JJ i rp'KK u (OOJ r(RR  (VVY rBC'WW 'FG 3G)@B86=0W ri r9!!("PY r##'%W r&Y>r0Ir8 p Ir< 9$"# &0p9!@9"L&# 09'T'(d>r%%&p7{G6xA>r! 1>r#$@ylo %'%0 `cyl!0ol&%0$G)'+!r`u/ rG 9!C9 O9#K9$W'%K>r9'V *"9: *& '!P>r)$@' B'$J%(0`}2"0 +%& 1rL ') Pr+m0 0y5#%' `I@%JoP PI004XXMapp E rN o0n P-0p=p=%R o@pP(VoTrll`p0%XXPArm-061G9L PI00b 009$t( P"P"00 a00Jx 00x(_p00 /A0000 0 H  qPHx/@/Xx 1C6|  {`/@Ux 0x/  J'1P %C ". J &` nH Ur1p  1$r'@o@Hx 6$x3J/ b`$x/qgr1np@%x@"`19x1Fx%a0A%x @&7bK 1Fx+^@X$x3pKHx p /` PE|) `1$x!`!KC 2pb p1$x0o0@`!%@` !1V%x"@ p) `%Pg$x- @F) p0p^'p/1%x&pP @TFx1 %qQ `(n`1$x#PT-@6x`*-R*o`)4 a# $b9P$9x p3 I C)1%x&4 0(C)pWr$1 N1$x''04  0P@/0Hr"`'  pH$x#`0@P$а w*1Fx)c  42  )Pd"$i/P&9) PC|% 0PF| pO`R7 @`7`a(!`6 @/76|'  ( pH$x-`3$ CP @WP+1$x% %аp 06@P9x `T90r=Pk/Pp9xU Tk!xXEr PsO|p)`%!@p&P@@d @64( 7p4'A6`"*&!x`:+s|)! 0+P`Z#+'Fr(p`YYS`p&@p<76|1%!-# 91 7%3a$x1p%)3p8##*`P V9#@dS3SpJ S/"S 1`]%,0+0O0/ T`6aaa5a `6`6`6U;x$ (63*6)607+6@4`6@4 @4`6 b`6 `6 $07&8%07'8 3@ @+ $`6`6b b@    bb `6 `6`b `6P`6@b`6 `6`6`6  `6`_0 0`6 Hxv6pp3$`@7xpbsbBN  us@qp{@"$~0`a%Oo PQ$~ ` p/ O@P PA{@J&y0/l~ İ~0*0 E}  % :>y )%$~0IPPn@'rP9  `o , N<[#GA$| p 5rpD%i 0x!5@q@% ~Pc@ `?|r(/ sH/r&` "%"4lrP##msPI%$?|p ?|q "@` @f!Ppz }T| #0 @ !@l@" "$ #pp@j@  P(&@%P$ p0?I#0)" p $$ m' | ?| & %%}9@^p&#)"4$ LЁ% " p!% % !/P  O0!E|0/ 4p !"P%#0$p b./W  `&x$*0p@ $ *]*dE & # "[x#0-O $#0@%0 p%1x0% #[#0P@xP"#x@$x#@x  P "04&~ @ ! @  # @ @86x VPx  @@$ % P  %( " V{.@-@/@ { "* ,T @ T @WW(@/R  R0 0P 0* (` T `$X >  `T   *$ef Y _/ff /  *$fgY*gg  g 0"@  [@@6/r"Wr! Ex#[;x021pW3pW ,@kx.-!/%%!0$"@!@ % % @'(0) , @F$x %0$'P5|)'!a$|)p)4 '`!x+ ) 00x   ;x `/`C|n G%| p @1$|TP!|Pp` @%  0(v0  7o!   $pp!   8x" 0! @@NP::'c0 x ,  '%EЀ ` @[7/C$~^ y|Z0E W$x^^@w| P[4)xu B0rBp[ 9`\@y@['iZc0 [86xa`{`\`(_V @'~^ *~p k@ @~EbP\\P[[ ZCx` @`b6t\(\bV`bp[J r{ G rwH rvZ~ ZB r{s DxX` Z Z*{ ` Z`u \ @^J r{``]` b!*{$`#0]i'P\[%]*{b`*\` ^70Z%{(`b5rc<`[` [%{t@@P:0^~%{,0pap0[p- [E r{v@@p[p00p_pP[1Ppx@@7/\2 PP[4@ P[Z%{z 'y~H r{| 4x_^E{K'b^#`p B%$w~ `[^0>+0$u~ \H r!0E r{@\@b0%@%5LP\p&i~ [%00"+*p\%'0p\`+0p0-0^@%)0 \-0 /_@p0p]0T!r"_T@%1 ( 4x(bb H r/@ W@+& @@UV%@(5@\ H x&&T Ѐ0(7@ \7 xP W3p%``p]%aO(*$ E!rvvY`(zz E!r||T&۱}F!r( /\6 xc[:x"" PH x**Q`(X 3\0.0~0P^5aaO, P0Q(ba0 \%4@ Y%p@n5`T rbab Y`Ya]\ \`\%\%W(P P\pY@`V[p! V*` %+00/Y%11 &sup[%'0 `H x11T0`  E!r))![p~  `^@ `4iP[.0W0PWP[%#PpЀ*/`~+\Z%]\00]@Y0\|[ 0  ΀v"[& /``E x& zP[ `411`X %yvp~~/PP4aaP*f0p4cc *\PZ%ap@\!b"P5x(@+} ^P4**@pY%1 pM+@c  `]2[l>r@[$E!r3"YP^ b 0-0%3 0P[)`!4b0&"PZ {p]Pt (#1>rzO5Ppx]%ti~@O7yF x/0e!r3&p a7@\\&i@PW(t!pE!r3$P X+## *  F| \1>rP] { x[ \0]F xz7 @&vvX` xp\%3(PY (v'\ @]Y%v+0P36!rv`\E!r320 Z(v/0 ^0-0pZ 1 4 5 +`` 7 $a``% % c c%v)0v  6!r# Z`pZЁ4a!"@Z%`## Tc `Z  ,7 @ Q3| 0* P '   +GJ `aQ @(0?| MQP( Gб0p # :`Ip% pp `/00!pH%@HJ`. P `76|PI4-0!4C p4 0-  x1x + -@| PvP#+ +@0-@*. + p)( '@Ш &(01 0(P# .H~  @-  - - -~@)#  eMs  ,@/O/  % (,@P `Kg +$ )' ()) 0) pNx @ #?0 5xtc 0D|t PbPK )~?`+#t0 &xz#0%x 6x}$ 0P ЦH6x{%`z`3y @ 36xw` @#b@(u$  (i$ @$z 0@3cc? @@@,`@@bt% 0% %4P$ $# $ $ " F rt@Ё`# @&!%`0a"$`&`}7%\( ( &Z rv`) &`, &Ф`$- &Y rvv`0`{1& 5%Z r`"%`@%+$*v / $'@2 $0 %%!p*%""%v$#@"(`$`w```'`+,,` `u`"`,` ' p00`i`00` # *v4 P%Pg"p$p$%5 P${z%$0 r{a5(z#Ѓ$(x0&0%0yPv0u/ ryx&`%v+r#('@(`$"y`$x*`@ 0E rx&0.`) $E ru'w@ 4u*u `5F r#0/p.@7#p-K!rw! i@/x$ %i* (3t@p60Hx6/E!ry%0 %u5x/3` J!rv@*26(u Cxi@ E ri3"p @a*wwo(7u H rit@H!ru*yy@(@9 xi`E!ru P5$w $c pV. xu 5!u@`%w,`t0 p#$%$%(@ s%) Ġp%)uv  #7!rx 4(y`,0y`P 0%uv`# 0v#_ 4iiQ#E!r%% %'' %**%&%P '(55`y)0P& Ё  0)0p% &H!r E!r++F!r4 &}@H x++ &)03's_P)&x "%"`@4&.0 0y#@$&r5xiP!${}!0)0$#~@#'@-p *0$&PЃp %w&@1P P& @(&p$%%*#&szpb&70RO>rf0"E x{ `|F x&Ƞ%~ %"'p~'`00`0+`#`7 x$0&'k>r@*1@ Ds//@&(`'$ub 0(Ptg "@(%% ( +)p% *&x@$~$7$; x&%PP% $%2/Є4xwx$%P) 0(*|p}0(7 x'eO!r27p0(P%0+ 'x%'@*ii` ~    7 i }v  } *==*@@*AA*DD*EE&::*>>*??*BB*CC*FF*GG*HH*II*JJ0*KK*LL0*MM*NN0*OO*PP0*QQ*RR0*SS*TT0'UU| 0'WW  04!! ư$p'{p.$'4{.{ @'(7050%))'*tt %,,0 5p%--䰂 0P %33 *44 *bb0(%410@'`/1$rb $u $P_00()r_@$T!r'*'  %!4 '% '2%!4'%"'  p 0 aaP 9!r%1#r`% 7԰e@ ra0 .>"P`P  | _`@/p+])]9(]G r!] X r"]H r#]`>H r%]G r&]0] ] ']D ]]]]An%n!pnn0 ;r]%];]]])]K+$]] ] ] ] ])]B9$]N+%]]' n o/nn+!o-& 1  h r0;Fx#0 s :00} #$`#p p1';x1(3p % 1O@2  7dP$9$x5 p,R`za@d@P0x1%sЁh/r3p  G$x5@}@+| {S5z1$xqpz` ~7+pp 9$x/7+{r p*A|%si 7|O`$//}`)|9|}{ `6Fx- 4`P@` p  `3 Ђ ``1`` 0' ``p~p@O@ P)p ~7p)p+ p;6|% p p9% 6 p 3%~5 p G$x/0'#5@ @` 3/O 0@`Ђ1 66|-P*%5Ёm& @ U@P ` Pp 0`-p`V#-$3 p @P1#  #37#0!C3(p0P`w!x@G3e$x5 5@9`(1* Є`1 2355 90V.;x,07.\0 pd07 07P\s 07 PdPd 07~  07P~ d 07 0707 f cн07  07 a07V䐂1"PΐPx~l? 1r, /  b'@zzPC^&p!. @@%x pOy@ @&Ay!|  %^_gPyndDNMPU$x__@A4 n0qPSU$x.P/x+p Sr _/cyB&fbr as2 0x91&6{Xra"r @(`C%  #6xP||1 EyXX = ? 8% <` VCs/p -` `y 0 pyĀyŰ@>`y0`#( `p` pP7a Л(ba1 rCP$xbp#b 5xbs |0P16x90/x;p$a&9 S6x=(V r;`0W (= 3x;`d90|@`(x9@ >T r8@=***'>Sx88Lu4x@G r@0X rCx>>@0GE r8A*B 0#@@00)>0'D!0SxBB0@Q*@0'$$0SxDD`B0*<&0 U'%% Q#&$`D`0Hx,@'P!8r" G rH(@0*y%&; ~+))pH r:# pR%HH( 'Y|PQ(J,p,PTpHpp(L-@Cx::P1ExJJ,`'N0`Sx<<`@R'F' SxLLPQ%JP W'11@AxSxNNpLP(0*@CxFF'P4  zNp(R5P`%PP`4P#RRP 0Ru CA0z:4  x/Y 0DE r<0%++@*F %T. @#.+*00*V/0#TT0*.0'220SxVV0@*T0'330W rd6S2pV@ 5Y Y/6 @G48YMP8y0*f7p#dd %8P #ff@0d f %* d%* (2G!r>>Z!r@@*&&(((F x">0L@ y('(H!rJJPJ!rLL'44 sp(*JPH x+LW r_2 p{*p{ zJ!r<<'FF P 0zL Q QP(-4G!rPP W!rRRU x<<0POp%FF 'TTW!rVVVP0E x1RQ(..@S %TT@`%VVN4PPP&dPg!rBBPZ!rDD%HHP2O&fP @J0 5N"@{0O SE xj.pUv}E x$B0@N0%%D %(H04g< %), `x50F  z(NNUp%66`7iTPE!r:: 0%887dV0F x&O/ Q*O@Q0(,N U` x`Uf Sx.p`%::0@%88`4!0 =0x`hpS0TR00X0QYRRP0+4$$0R*;R%40%+p%g (nS 4))bp+<`z@U 7pU >P%d0@X,@R@&f@ T`4--@?`Q{/`4e:0pU5jj966kj lb>r@ `pUAST9>rBT pzzv x) 07 x:Pe/x P0H;  U= Ex @x? J x9-@ :< `V*8e*h*:j@( @ <BEx `P@ . 2|  0QQP x @y %""P4x 4##" $ 7 QJ!r4e %&&P@*gg ' $0g%((P@h R %jj =% PQ7**) T!riijp4++*P7idi@ 0@@(66@1x Й`P00,R@%kkpR+,/ 'fk@`y+,1@.@T.@ %#,@ ubx!!p. %"k  ! !-1| ap$!@x?010$xaL# *W$x bA$x'@a2$|%`б @P%xZ@ZP@,Q/$|#%@+-' tO%|$a `%),@ f3 ,ZE(k "4%%#",01|e0R|h"(!$~0V xAd6x&?c'&0Hxg\.1|#P!d~0)@x"009x  2@%xfg$-6!r^UT&]k`" Z@ 2G16x\'Vx[ P,P$x`2bp,X$xc /Trd\4 4J?`!o# Ur+`e#.0($ce'!r \ 5"ch(Q$r d 4)`h($!x*0S$x#b`(Qr([(0% (PCK'tK\Ox `C!rGD @FtP0X 6x@,GFt A$rP@&P  0 &@Xx@ 0%`@r$@(zA& 8x Tr#0`0x#@-HHx&9xHHx H Cp. F L pC%C6|#0@S6x`3 ,#"$I&&#.*&XX 2r` /`-6r`'w/6|!/S#.@ `'1'rP`,# drQO0'9$xPY x5" `-%$PE|+-!`P0E$x#@`/'*P,P3x%07G (W6x\\p1reI6 P!rh )p` #P'fhN;xP'@D#%#@$@$ &@ &#$$p& `yr+ P& p{P& 6xP!p"P! "P!  P!"!#0& p{$0&0&@  @D) $& && % % % %$p{ %%%$%-%pB!r* a/$r(  ```PP ` %$%{OHr 0kox (` @$~Pp@0xZ  P% w P<1@PC6xiw z(@Gxw`=Xx PH6xkw@$Hx H r$ ' &i Fxz #w P Ux ? ( p@%(  G rk@!Р0 `Xx @@3iw %mw% (0V rmp &`  Ex@@ '%0(``*(@  ?P  7@r 0p% Pz   V rji r9k96oUxjj !rq@2Jx 6 pW rm! ExkkP `*s {%j `%w%*@(u0a'i{Sxoo7 H rkJ6xw%#ii@@%:y(@o@H raCxqq@ 7{) J ri@7## Cxmm3w0I rqIr},@"(`bJ rm@'- ||P(!w$G r0f rl0@Sxuu711 J rs'n@|}@(wG r '#yy7(2`J ru(,w'P&pp%#{{0#%yPP#pxx '`=Dxw10!3x}}P$*{P#PzP&6'Dxw{''yU r }`(yCxllp(*@}E r#w%@6 `~7/7 G r &"#l `0)5r!5@$* 4@%nn@`%5%%" %n '#y@'%"*PP~%"@ }%#@` }*"@@!'Gr+E r"P k|`@ |Z@ Cp2 p`&+#'*` ($p0l0'4$-$4oo "{%0/  ms%#o!@(nn E10 $E!rss0"%uuq 0&(}} @w 9 x)6 x+Pz`)x20{E!rmmP ! *&mP*ll (!j H x"kE!rqq0v*3l0%yy0(%q U r601!(1} J!r{{@(.y p"(766 xov !(0{@E!r44`)pzP%`"4`'E xYY P$#422""6%7n@@q#@t46`(%0P#0&(0(P(* @| %$&(` &p`#"s" '%%Pmp'P{&' `%*P% P}% `n`yW xP#` '0j@&%-``pk`&p*@0%rn%!!  &z$l&!*%ywo$o#E>rq&q$px9sp &pj *06 x'u>ro%-%/ zo&/&s/&m d#E!rp,`@x*r&r'Tsoo`~%(@ *ppt%>rrq6 x,0%q6 p-&*'s@'0qE!r"! %t& $ ,`%vo`*/0$p'7..6 xu|$@0[#7 xt*)P$%0&t'0P@w %&)$ "%++p@ud!r+.#@%r`444@u!PuȀ4ii()@$)"4vs`v*w xsU!r00@7vw0s_P>rsrV`w0(vP*rp'l(`-%kk%4YYxp($uw 9110  7mml Tspqy0`42210` mP{|T!r''n 3` r8 2`{ *==1@0*AA/ *EE5::p`P*>>*??*BB*CC*FF*GG/*II*JJ0*KK 2@*MM*NN0*OO*PP0*QQ*RR0*SS*TT0*VV 'WW{0 ( )*yp )(%--(Pz7p)(- `*38p(* %,_P(P(4` C| 00z6(%,oP4!(@%4@4( E!r!,*@%pp/#r^YU* g@)#0z0]p]`R@ о%yp#'i0H r]`U rpQO rpHpU r 8 *99*<*==*@(AAJ r *D *'EE A r/G rH m4?"@ @)@'L i rA(M =]`Y r E0'P0p' Q p)I@'!T  *UU 4  @@4 4!U@  06#: '%>  ''B'CC 0#*)F 9%? 'GG '+J P (-NY r*OO 9'C(/R J r1V(W; r`'SS $)G`4+K%0 `9-O@41`04/S  &P'X{Z rX{9X9XI9 XU9 X 9XE6XAe>r 9X 7  `zT`M@9X@ FrX ( X 9 X!'XP|f`3#aa  (4g` 2  @yA@0 '0 0O{E& 0$G O{0 :rX{*X{*X{* X@* X{* X{a(X{ #(XW rXpX rX@G rXP4 9 7@x ?!3r@ Ar0!0 T>r F0S% -{ !s]AB@ f*bnf7@g%PP @ |`f g%؏ @-/@P#%Og ;M0Gya /qgOg gg c2@g1$x `1 g9$xg@rc$dbyf0g9x c g4r2/,0gSd g"s+-g7$t)p17 gg|5g?06x-f g0#gfg gg f-/gg!f0faa`d&$gL K9$xe f`O`eO1r0!)dr p7 f" r?f ff@bV% 7Ġ%8x @f`g   01eT7 @0!$#0Wr p*6 fTr `Wdf x$V2r8gpg g0W gB rp3fgfc80g f`fK%r\pgfe# p3d`d@ )x`f6ff\`204` ^@1( d@$xe`_Ppf@8*ef @]f@$xeef@ff6pg f&reP9 f&x^f fgff`5J'ff gf ]9| af%5f4%[f%pfp+1f E%r f*" `ffPf@d`df&pep9'3 hf"U%rPƐ-epfg.f `gPf5P epAr 1f#f$`f+n1!pzWr*Pff 3 3@g +xf%`f8" g`g%`:6x`fr11f7f4 fbfHHxp91$x96|!fg$/ f`7`a&|ff f#1` %@f %@ f$0."&ffa##-` f1Fxf4)a?pfa#3@@&',@ g" )(70Er'p cPTd f#.a#(b7 '  fgf!@f Pf+$'f'`f9c f*p:%pdf 1pfQP:f0f"Cf`0!x#0-fKr'ff@`@3@`f$'.:'/0fPif 5:@0f7'',C6| f0f(7@d1%r+pplAx) A-P'/f pe, f.`PffWr!(/pf`"%np gUr + `#`+&+ff)(+0g8r) fpg@(+@@$x ,`  f1$x) pj f f g@$r+P C$x,p@@ f`g f6{pf! P @g ff+P3hfEx@f0f+f66|pg 0P f0gx#dg fof (f 0f 2$x @ DfPeff ?of @f@?$pf0%Y 0#(@UyX $6x(cf@5f0 @f&@f`4 4@  4 f?g:% :0H% @fP& g p f4 @f0 B f#x5x (f Dx  1| g =`: p>f@x T >  :pfPapfP`f`f@Dx ;r!fE6x (f( 06x @b"!# ;? ;?* @% @f<& (f/ < `B bb`B* @) @@ g(f gcc,pd.B-B/pd$@ fpf AJ6x(f g/1  p5H;;x f A@6x(f gCC? C f) Ao `0A A$`D&`8%(gEl%P@'0ph f f f f0A0{<> := `G rP$f *%90>`:(`:4x<#BF r@bP%%; `D0Ux99`@0?/=!@<#;;@9@+$$@@%==;@/?%@%f=@+((@>+??%@/A)@V ?@+,,@<+AA)@/C-@-<A@+00@:+CC-@E6x8@,?rE1P1 CPK r44@8%EE1@/G5@+54E@%GG`p5 =% G%[p<7rW rd r[/ B0@3xC ?B+`PpP]K r4"0D0BA@Ph)@/##@#b4E r@[>0> @+>&p<@BQ r@#B<0B g<Z`?K r''pPb@l@AP\PK r@*@:@$Bb#:'0PA `l(++Pl*:0(B.0G r8` 8g l(D/Pl80*220lB0(330T rZ!Z @2gl (66@T!r Z9g2@(F7@Cx660Pj%6 P%F3(i=U r(0i/.fc!;G!r99PZ!r??*&%eO x#9`:*p`5x'? )4a.'s&=;&--p*CC'55a> &4@&>>0'::P=@< P*0*+C*>` `B; x.@B>`i dJ!rGG%BB`'#` g hJ x/G`% @5h xBB0H xDDG!r;;_@`@h`Pg%6 : h'AAPW!r11 0`'==0W!rEEU x p@5f>@g%$;009h:0%() i0 %)A0ΰB%== *,1%-Ejk&<<`@>̠46D0b@%@@@k 0bg `%0lh@?%2 P=P>P0&x7j/@6 x@l 1@@`g 0`B6 x`Ap=k0|hA*;PAP=C4g f g4%=0Agfh@0g`epE@< >/p`g>pB9 xegP> D`>?`Aing2g@m0nD\>rB p&!лAph gH x0?D9 ?8 x:PB`0(810>rug2 =gg*iP4:9@g*:2 +8gC08`DJ xm(KpC )f7 g*hh g9iih g%i2B?)iCg ggƠg S `T B6p >B(..P?BB '/. `>?kB(!. 3` g!dp%cc00g g ddPcPgcP%g \d9x#? gT$|$cgpgp.%0|## $gY%|hc g%'. g,\ E&k ! ii##g0;|ggjg$g&4_`P/0%$0 gg g@Gg@`4|4@%xh_h-F!r`.D&_k#\#% ;Gؐg^g]gbgdgegXZ1$rf@\^p֠ g$bg 9g$eg`(g^Tr)bjP)gf ""e @)#*]ggd#(]g#%d?Πg\ g9rf?x g, gg 0\ gg`#P2rrA96|f9Hx`g9$xg g`h gH ^ g@ ghC`&.g "Hx@i9xpg9rg g g0i`( Pp#%p0Vrpj/x &PgOg `C#`/P'4$x@g4$xg0*Pgg Ə0@g A!o< ,!%@g`)ggP)gg<%^^g70|1$rg +G?$rjg-#b "!gn+  ' g ' b0@#$#`&&#% %`" % g ' hPi'`d g  g &@ %%g+ &g &f g g  &g &`&g g `&g g gYEx0@` Opb t0Or g  0rU6|rg?|@z %pr  dr@!s$nr 1@ r0!hE6xr%% h%lr % *  'tr %hE6xvrP" pg hE rr9 '  Ў`n hP @vh%f giʠ'g0g9xh gg `ig* g%g6x pg0r ? gg g@gl g$ @@R( P 3 rЎI'gi r Ў0Sx  #r!ApX r$g'`Gr%% E rx P#r( `@E6xr( `)p9kx`(,fG rnW r-0Kpd0/J`1 r#(1PK`W r44 Jx `'MZ rk(#LJ r'&g6''  '*e`'+cFx$(@622 !777 E rl'`"%x$0#d(%k%p0``(``e`)`t` e`,`t``-`v`+11`0`:k5`vp0((x1p6x4`k0$(k5 &\ rm4kG rPl(Xxm03xkp&'7`0(`h7" A rn`'gp`ph&','mP /@$n0##&P b0)m0&@'*l >iiP$l0.'@9+30(l`T rt[u rm#P p'E rl&@p& (m'@3 r"Ѐ PDx/6*6 p.p4m"!]$x3p (k E rl/@(n$ 3x60`5xkk`!*3@(@G rv Z xnn@7+2@ `&@X!ro%`3x p!n H x+m3xpE!rm `h(7H xoo@d0pDs*kv r7pf@mF!rn-@/dP5|\j0(l7p( P" b!` %q%*O!4!m@0e(@0$d%m)0`cr!-/E r77` &s(c ,P#ď0/,%o0@`w!-@g&m5@v"@)d@&k4@ƐlPA!rk" +i^E!rg%'(@%4P&&1Ogp@&%%(@c0P4Zl @hP$mP& &s%@$0 P%#phlh!p$(@'&&@/`@#$P&/0p p*+(E!r30tp#@pp5&%'Pi'"'%'3pht`YP%4vqq,v-Cpd7 x'&'gs`eP%c(% 0f&. `(@1`%tp`@ofj&u h ЏW>rrJ xr 0&0&0(Fsq e*yhPf'PX*t%t*0%2 4.r`@%*#&g iW!rt7aJ xum`$ h"@&r6*6 *tt&q`(rr ``gp2@( b`(!qh*x0xPp+' d!rmmP`9u0iuP(`a)7wvpg6 xvP)P7xyPg H xx10; xy'w (k`z *@+%%mlh& gs g4rt`&{a T!rnon``%##  &h&996*<<*==*@@*AA*DD*EE5::rh&;;*>>*??*BB*CC*FF*GG*HH*II*JJ0*KK*LL0*MM*NN0*OO*PP0*QQ*RR0*SS*TT0'UUZ rVV0'WW`)) %,,(`(&`)P\ (@(%//0h0h422/ 01`*h j0%550%3p` $45 +66 Z p" h(6a)1$ra 7 $E5 m%qq0Ph4q.q@5% q055 05%   uPh!  $0mP1E!r$ pO#r__$ > p 'BB@h @:@h*FF 9>? 'GG 'JJ @h (NN@h *B@h(RR J rV(W@h'S $FG`/J@h `=*N@h4`04R @h&Y=@hY@h)Y+Y@h)Y + Y@hY@hY@h  h @hV rY8@@h)Y< @h'YD @9 YL* Y9 YT6YZ|h@h'cc@hi@h<`@h2@hP?6Y?0 @hY@hY@hY+ Y@h)Y9Y9Y:(YF9 YB9YN9YJ9Y6YYR@h0  @h@@h@h ?YY@h@h@hYPj h2s+@h*N0/b@hw@h hCT@hO@h @hh->L;a 63  @;#) @-@z I#@}y4(;.H T#0*@ ,Bp$# 1Gg@0UMe@Q @./@@/@p<X@/#@`@@/\@.P2@@/P@.@3@@/\@.04@ @/_@. 5@!@ @#6@ @"DT 0@@8/z@@/@@쏂@@@/@@@ @=@!@j@ @@@p@km @g*09@@2@%B:(K(/~@#@)@/@s@*@/@&@+@/0@#vR,@/@--@/-@#zr.@/)@2Fh@/@C(@@ @ ( @//.@@/e@@/@@/@@/@ @/@!@ B@؇ V@XV+@ /@ @.0O@ @.R@@@v+ @.W@ /6 @.Z@ m@.h]@ ,@mP8,  pp+  98 H88 PU@XQZ PlELF3S k^" Z Z@8@4.shstrtab.'ym3_shndx.nv.info.text.fmha_dgrad_fp8_bs3hd_e5m2_512_64_sm90_kernel<6oshared8&reserved.0Rglobaconstant4O.rel!Orela8!3/nlE$ 9H; :;6Vcausa:h=' ?+>/ ?:p6" @9!B<# A?!B=1$ 3 2 3.(- b 46 561 t 8 :9 :5R ; =# <&=debug_frameeC.pic_{ <anv.callgraphprototyp0'  ;> [B'( 6o&v=}   Smem.offset0 .0__nv_RSMEM_0_0_alias _ZN66_INTERNAL_0fff0e55_35_ u_449b6e214cuda3std3__45__cpo5beginEXYsG_3endE`H#6ccG/4cMrOrL/7cO/5cG19piecewise_OructV?v6ranges_4swaphP9iter_movemPhiN^C eF jlD h7advanc QzTO4nexROprevhQOdatahP/5ciTO4sizvQ/5siT08diK k m;!-%0\4k 5_ (SZ/a;!y+(B@{6o&v#=}5 t2S! s # #H$.$000  `d   ( 3$ O 3$ " 3$  _ 3$ 1 3$'  3$q  A 3$   $h{  k X       J ?f"6 "70G" ~```Y&` 2,m-./ 20h123D~@|  (( $ \R<6I\h%h85h&"\h%808SLx0h1DphEh1/L 0"Fd+`+*`*)`)(`( 0Tx!7.$AP1 5@5`5C "Bq q6hp0l1l 606P6/62h "p&0/3l !4h %5l !6h %7l S$  3> 3n #  3    4 x p  `t X< P H, @ 8 <   |  l \   \ )L |00|TxHDDA{bby&{%z,{@ S.yfbxz@H   H Cp25 pb%xO{0y ,2P C ,p$x@x0Qpr/v?/%F$r@`xlr d|.04|/8r 0tx.Rs ! @rP@ c{8a"$r Qx@Ey Dr?00P p@x/ p?D ? @S @E{Jsfr. 1s sr/ P1x0"?sN|P?!88 b{Lp"6x  as !x @@ @r  @p'r J90Rr! 0x `axpx WxTr `0 9x0Er Dxq$|0@$| `pp4 P% Ppr !<DrP 0@ r `@pb`Er@`7 `@ rT1p@01x @ `  c{ p%| !P r3p@7V%|B 0Qr3p D p0 @r"T 0 P@p`0H$@B r0 S6T$|  0P0Cx /{ @  Ey R6A r0RpTrCC ! @#  srW`1$~?@c/rH `0~ Px`P%x ?l Bpc{ubysN|H@T%x@`bHx !Q|V 00Hx @|`1 C6|D 1 r02pb@0|S1pT|T @ 1|W 3P`SpT|U @` Cb"r "01pb0Fy `.|[@Gx^P1@D /l|S@@ W|T2rP(3|U0@D l |VG$~0drA? C b.xp?Dx\ 02y `axCx?P*WTTrUH_ Px H  `V`W`  pp1x`c{ q"rQHCy,$p !Mb.r ( Tr0 Dr@P x@0%G b!` PP$x`à@x QFyEPw#xQpT$x<p4p/$|  0xYr=<7IT$x` <`<0xI#IxDr7== @$xAp Xx5r P40F@@%x:AP?0PrFF0! H%x@A1xOp0'<PCxNP`00(B`Gx0dxw6x]0ix % 9 %h 9 0 %H 98 % Sr@Cx 1pT6x9@ 0  4 P G|?;|% ExP 0r??9| 09|$3r&r'?O6x0(O04(@cr)/ 3r*Pb r V@A@3PPP x opB0 WrT@x 3pB @@@EHxP"x \ p1$r}U /x 0 p` !r0W B r # `4Rp  `WrVfx T$xM` @8 @@%xL T|SS (H|TT1%x@@H`W|D @x`H$x!K@|VV3` J``Tr0 CR 0H|UU@$x` F|HP$x ! !WWP!0C6|!H #  p @x@`@ r]0pR`x  @#T@`@@e x @#@Hx `Cx[ 7 C!V@Hx `@|Z"0[x @ x @|[0 3`(  "@6?B re ?`!N  + @@ ( @9x_ 1x`Fxa/x  $ G|X wx %Y G|Y B r Px@"pR`  dy@S{ b` HŀPy~0P @Oy@% @PP$  ( `T _Ptx@[   Ga W rNZ  ' W c `G33 G r0U #p@@NV e@`G11 6xp F{404}60 @pD550@D774g PP0:!!0 0:i"00 :##0 :k$00 :%%0 :m&00 :''0 :o(00 :))0 :q*00 :++0 :s,0 0 :--0 :u.0 0 ://0 0k w0p X_D0`[X p:y2p]pZa@Z @c@`*e JX@P JX@g@i@!@#@k@m@%@'@o@q@@)@+@Ps@@u@+-@+/@+w@$P RP$XyP!`1@!#HX30DX{0@HX} HX5 DX7 `Gi$Op  P P 6x sr . 0  Sr /! 6x  ! PT rb`P0xIpI 0J !p 7$rp`xU0px` C|Kp @x  "? 9x c{   "6|Hx TrQQ@( `   0r @ - @(` p / P  P E0!!0! 9 M@ 9 S 2| 0~`" JMw@@%xU@ %JS@  hp  7 ` U ȰM0 /p4UPp9JM ` 6 W ` W`` ` ` %J````S` ` 0`#`` ` !P``T|!%f/ p p p p'p@  `%````p PP Z/ ppp+p@ p  `)``%J/ @ 4@  ( F /|A   )Bp 06 J3H|CpV|` %p0 @FP* E|>% P&-(?(@ %|1p^ 04<  p\  pO50 %: 50 4= 0(;V6|$1 xZ07BxPrP & !l Pr P$  @ @r0`O  a$x@P7x%&0(!0&50aG1/}+*@0#A{U+E r EEPf rE W rGGsz@SrPfx x 3r @x 8P9(@ 9rP 1| Tr !Q U rEE`/ | 3Ap%G ! Hr E 3r@qxC@O|I  c6x 0#xb/1 |9Bp2 0   /`20fx-````z|~]``*1#` 6{+pbxH6xEr*x x$Hr,@x1p#!ix 6x!!x @1 Ex! + %  -Hx $Hr!+@ $ Exp$$@"Wr#HHxE6x **F$x`/0$+ .>P  @$x3A| @%xB | ( %@x 0)H %@|3` #p H6| H|@@$xpp#Drp@'#d|!  !r H|݀4|%\?ڀ4P 00wrP1$rݐ 0#' j$x TGy ` %PAxp(/x  2xP `'9x `Vx@ `1r"@(` P"xPp0@ Vx$pB{3Wr`0bGGr Wx`@x ,0` C!P@Hx  86|`;x  n6B 7$@Wx P9r 1x ?@xfx 0 Ar0# ( P Wx PHx % b r`3Pp&( Hx@H$x pP6xp(@HxHx @|38@$% P @%@P% 0x(ExP( 1$xbx d5x"dx 1u @x"@zx@ "@ Ux %PqDxUux0p px "p Px9@x!@9x4@x#@ Ux% Hx `# "% "@ 0(:x0% %  a6x P0| 1@#x: @ | 3p" Z  #R \ @R ^  ;p;xbdf CC#6xj pIpnprptPvcG<   GbPAy8p6dr,P05000<,`0 1Py@,  @$x3 0D,=ph00H,WL,(0P,0T,V<`%2P3`D, .@$*0080&0R| >0.Pr10D6x@x1p#OPpP" ro U6x1@@p0 x@Pv04T6x1o Ex1.x03x` |Cx0#00pc6x!13x0 Tx#1 `[@  |`3x@#'%1 Cx0Yx'1 "`%`/ @@!@'$)1>@#0@9+1!$ &@`@%@+3-10`3x'0@9/1)( *@`?@)@/6318Cx+0@9511, .@` @-@ Wx119pE r5/0020@(|  p1`* `3x3 453x6P4x70Gp #0@ B;x xb|8@$x* x"*y7@ Hxİ @$~@9Hx x#)gx+) ]vPE;x  0@(a!*rn<  f0*+mPf1) 72f2)f7*xf5*``f6)h   d3)nd p+> @xp $p/x` *@x  `x Px  px00 0P ʰ @AaW u/;xРpd|Ǡ(" 6xԠfOx֐Ps SQp;xՠנ>0|ɡ@<!65xĠ0 Ɛp*p pxSH%x @;+Pp`% 0|0 pp|0P(΀@x0Px(0@|`ʰi|ϐ!05H |2 %%478&~! aTsA@ !F%xP4d4*VLy,p @&0ps6cy, 0&93`@0x ` p%SspNx`p1A6!Ű?.FxӰ(@P`@+d|4 */`ǀ`Vx  Pr؀`Xxǐ@r05q0p`0FrP5x@ 0pWr`0`@!p`p'5|BP`(0@1rA9x6rp(  P)ɍ"1|Pp'( 6x   P`Hx @ &hOx8 #`(0Ex``' `'% %88)|9x 5 %" 0%#8 3%@#!0 yBPHx Ex 4 `@;@%( ;x *%pP% @p@ *" %# @5x *$|!$Y04r0p `EFr001x + ϰ1 4r@) PX0X5`D|0p5xҐp6r P@ 4r0@T|7 @PPPP( 2 D|6pp4rҠ5 94@;xɀFxװP @ 1p` Hx`1|3rpɀ 04r@@ `;x```Ex˰6xp `5x0 5x006rϰ  p0 Cr P0 p4rPCrFrא`J @ ExPCr P`@@000 0@Ax00#| 1F@@ 0 'tx;?'3rPp `%PEs`He#| x#| H xАH#|$$ F#|h/ x0E x "s[E x$$0%((`Oe#|! %((@0P`F#|%0`O#|Ơ@!.@p&)@j/#|@@%^b& -@*""@0%$10g/s %&&@ @%** 05x&&  %,,p%**0P). %p0P&("0'00*00pP%$ %` %,,0@(.. J#|22%660% # "@@#@p&$+@O7 x@'P*&(3@/E x00@ %&/@bOs+VH x..0 @*22 (66E#|*7`Ơ-VP" `p$fs p1 fps bP+40)p*Ώs"" @MP$`/`W &p 3(\ Vs( 7Zp)P"  Dr2-/ r.% %-3 G|cc@+I#|44 Er,0v r%h r#8|ddPY r1 *`` % 3`j |\\0'@i r&14 9'''+1i r$$% 4 9&&9339"('70/U r@p#r(`<3)44r)d U r4`Hr` 8|ff V#r6\ X |__ H |`aJ#|5'/As5]'(.f r.f#r.ff r W r61f#r\_0W#rg r10H |_XI |db8r.'`3Y r11\9''(\,`I |YP:|]])p7r7Y |)Z 8|X^Y#rYd6p_X |[[0J |Zl)`nGrV#rn]Pf r f rYYf rf rppf#rXXX xH |btV#r[0f#rZX |ao0I |dwGronJ |fq 8nX Er55f/ rq-(X2V#rbbi r *Ǡ60hs9|ee:|^k*mm*hh)sGr[5bH rbH rsV#r*ep*^&m i#re6chX |ggV#raaPf r$πZ rd$*]%9`@6 f reeCr$ @GIr,  !8|jjV r00f rc0cDr@3X#r4g:|,iP6&@f rZ&aCr0PX |tu@4r& pH |lr H r` @W#rr)Y#r$6jjg r@Y r4#49-71#r,PXp7## W r2Y#rt0t05 52@Fr&f@Z r"(f"G r+Pf ri+ji rrr8h,3|+p*"*'),#Hr5PIr%($9Y r%%7`:p>r"+@ W r H r)` X>r,09|9|+$5r!<0%@= `)@9|,%Gr@X r:|$)0'! Z r&@ 6jh>r)+Gr!! Y#rl l'30 i>r+,@@!89| ְ:|'*,)FrPf r**Y |!0:|**!***#**0&***(0>r E:| 9&, ( J |**'*9,( *-*(vvPT>r4!!9##4*#,P9 *- 7 W#rv2vW>r% H |m11>r'0Grk3lPX>r$$ :|//@9(0 (0 J |1\*2Y*..*34*l6(ooTDx " rat8|0@@Op0x |2 E |.0$+0w rg7vpH |nnJ |pp*qq*ss*rr% 3:|4X &/ fO |1*o&%l*6[P*7](aaH>r@(w>r F |mp('nJ>r *$p 9%% (q J |s*&r*!6*7* a(5Z0 *cc&)4@*dd *hh*ii*bb*ee*ff*gg*jj(kkI>r'6|5 $04 *+` 9&& *(c 9)) *d %! (h J |*i*b* e*[f*#g*Yj("kT>r++4((9***#% Y0("[P $bb(   ' TA>r!"0+T>r%[\9Y'2  [`YP`U}880U>r))/ %!O7p*%("4|#n!0+`070XA?%!b`#  )0;x$/^ '*@ !00\?004"P%P@0 0 !@2@1P>rXXp2 4[@0P O0P #P$2 Z@P[@ xXx(5^_9\\p  ]^_Ps\@xPfxX@Ux @;," uh;xXX00:%\pP% 0%\\"@#0@0` 0 p` @Z`#[`p` 54( `01 7_9|"`(`P rspsq!Y rrrq1ss0 4olo 0)sr 4nnm  9oro 9101 9non 422/ `91n1 4,,- `4112  @ Y r3.3P4,1,P`:cch ),3 ;iid c ;747 i py2",U[ r5`50702<0!@9@9D9H 9L(9P07T84eej4,,5 4kkf e ;a6a k 4ggb `a ( u Y r,g  00@4g0@3/p21 p21rpq18;$~@2 `2629x 2@$xP2p2 `2222"p21+p20p21p26p24p2pT`5p2 2p2`2 2 p2 /`0p2`0p21`2`02p2`1p2('4 p(p00(p2 140(312|P;pO$~11; )1 P ) 2a%x԰1@ 3222p+*701 21912%1 2 2( T|6*=&sϐ2 3$4`p2@2  ,)/e 0 2 2ib.%x45*P+`))0@' p) *Fxp)'D|32%`'ex0 (ʠ2Ԡ2Hxp2Ix19xP+p)2 2 *2@6x2$0( Ȱ( `2 p3rа:``*`-03P;p0.02 `2 @2 `*10  @3 2 3 6x 31 2*! 0% p PY20#2222+##1@2p2% !0p2^g 0 0 01I|"pp2 ` ƀ2 P5x`4.`/Ő 2 2E 3( 26x 2 2 2 !0422.00P.(D|0`*ՠ p7&@3 2p 213. `/ 41xӀ.Ӏ2 `41p$5 P3`2`9pƀ: 1ɰ1Fx 2p   1``P/P0Đ@00  P2/İ`@  29`Mp`2 3 3p 3 1p1$` 50@ 0p2`Kx`` `(0`4P1Ɛp2P30243` 02302P2 Fx& 1 2 2 32.04P+ 02@ 2'*G#|12 2 @21 "2 01@2131 02p2 1/ 6s / p0 1 2P@2 10% 11 P3 `103W x1 @22ʀ2@11 22#0(p2p40@"1@3   1 214@*3 02P1 1`6PP(1 `1p$023pp1p`0P22p4`2&3!/02*3 3 0235@ 1'9P3 b.1*O2^* .0.2&12@10 "02p2022-2p3'r0122W#r @,U r!*% 09!"`* 2P,0P, 2Z r"!)'@)I |0-@1p22 2(2'2O222-@ - ?2U x@  /03 2; |$4 2)0Ԁ)|22Ts0*|X1)r%4V#r$$P00f0(," r8@:82&2P161%X 103"&*!$)/-&|b2 `0`2$/U r4*`P&^01)---7r,/,*, 3Hr 8rqX-V#r66W r,/0`$ 331H#rW#r/$ ; |Z3 3\3+|$46 3W rYY Z r6P4 029 |21Y#r]6**/)\'$f#rZZe rπ )8 -0H r177`.P@3@/_3a3I r59ro 7rm*Z#r2`((@61 rb&Fr\ 8r$4r d`1+|l`3*.0'İ4DrP1 33r( 1I |$024r* 2+|k 4 02F rrZP.P@16Zap+229//'gp&\l`Z#r2p8*%%0*0'`3 666f#r`hi#rfk06tt X#r(W#rj*j0G rP86600)0:r`0(.05C rh(9k23''0W rXXi r#%ff`  &*+'ijP+ 1+|/)2:r#&8)e1:r+&jpP0 0*'0P1P1%0*30 @1 0\00:r528&)|wp8C*) :'``pg>rp*9 |)1J>rP-&1E>r%-%('-V#rwwd>r '%09\)204GrG r16Z r$7*6((W r.3@+0J>r)&,31 20$4:|&*%2 2J | '2*1 6**.(2--J |. &(0 -@1&+ O2F rnn*+3.#60-  1@*%/2('ʐ.V#rvvp.)Ƞ*&1.*1!*,, 2J |l0 1 1*3"@027rZZi rw)ctGrdv7E>r*#`.P2% `.`8|!1@; |2*#,*/p17 |P2"3I | p3243 01 0$1 2*mm61*7 1 1  2 !P`3%#/ * 01 `3'2(" 0; |02&032219 |17 |(1p5@4 32 2 2 2 22 3P32132+`2 6`2J>rP 22 222@3Ġ2`%*0%(Y2 22@2 1[011P- 2 22"2Z!P3/@3/O`22`22`20* 2P! 3.P/ 02" rr#pbR&x$@3(0 P0P0 0/02p33 3@t,$ ,$Eyi 31pD|s8 ` 1#((P:|:: % "@%<< P*>>*@@*BB*DD*FF*HH*JJ*LL(NN 1,/01 01@1Z!2P(&x23`1[@1@ 2@%PP 5%RR p*TT(VV0G 8߁.x |^A J |tI*99*8=*AE*IM*vQ*QU#88 *99*AA*^^*II*tt*QQ(vvA>r=80c`J |8s 9EA^ *9< 9MIt (AD J |^@*IL*tH*UT(PT>rQQvp 991=H6x=g1>rA$E`pIM0Ty9 `U Q0E r=0#A@!@IP&Q0#G w&9;p? *^C*;G*tK*?O*vS*CWp *;; p*?? p*CCp (GV 1x9`$ (R J>rA;*;: *E?*^> %IC@p(?F J |tB*CN(vJ1r8@,T>r;^;r9p#?A`1>rCE%8;` >rGGIƀ%8? CGS Ay @+99zx7& `8 999:_ & 9xp7( % @!rssMk! $  (:: T rqqn4PX @:AHrsa! J!r>>@7rmr@J!r@@ %qq7 (BB @r:s`3: (DD 6 rl7@*FF %qq7 *HH 9p@*JJ 9lql@*LL %-.7`*NN 9ll@*PP 9003@*RR 9-l-@*TT 2P8*VV 4--0@687%--89e`e ,@ /ii@7p7,a4@7i@;5b5 @7`777`,kk8`70;c6c 7,7d8c 17@k78p X % " " P <0<0 ` 0 Y $`@ < = p  (p0Ȑ4Ȁ.6"/0> % ]">P@> >C| p @BDFHJLNPRTVWHrp @<`@?TGyt llxp:6r(`sƠ ` zTr/prp4&r)psp?C*@wk0w w 9 w `l 9 vhO6x+/ vC6|0w vAyJ( Ь v e0/(0`jmx5x-s w80ob+p F;x$lbp`o|A0/t@pt0EyK(pt" e 44p;B$ dϭ$;%p 9$~$@k9|%k6x 5P &P'xEx 3 &` e{ 0-ďy@%x/$9 pm`n 0fP})~8=3luyM9h9%Lkix"Pu Y/$x9p 99 u 9x!fui( " t hu! 4pu! pgE r ix ?E rv  ?x ? ? 6x+?vVsN;9v@vuur uP svp0 0Kpz0w1v0@v uu:`/7pvz0wPvvu*u P? u Pvuu0uu@t0x@uuu uv`vpPvupu@<u8%x8@sdx>  H%x:<69rAo@|=9 `sh'>>`drB<0p:E|D;t@(<=p;x"PC#@C0(BB0@|9= :pr+r; o ACA8E%xDD 0|;?; %@A 0|FE8`J%x89 =A >@P@6 ;J%x:; C90 D@9x!CJ%xFF0 D;B0@n0*BC0 >G!<0 PD@|;C F T|==pED 09F?+@` >;P>p 9E @P %@ 00rA[ >0%89 p7H? Ey?@ b 7E9#00%O@ fB7C=+ %HHP@+E=6x F@%DE@ʰ  @= x9t4=C `%FG`08|8E@ =<;H:Pq W|>  @=9%x< pm0F0<< :Kx9<$=0 %;; P>9@p(>+mA0P/@%CG@9=4r P I x50)|P:G#|5&X x"07sX>*''0(##0: |@9*|Sn 8GP=&F#|-*pH ;E8c6; xQŐ9: |1P:+|iplj_P70sPo P&I95:*|C;*|U`88x\'@#rl<0M"07gB 9 xs9 |Y;: |Wp?)|[<: |b< k2sT@P 9 |f08V#ro>]Dr-08 j3r' Z |ak  ds̀b@ % ;4rS  ;*|h9&|u8PEsp%`v `5]p *|q<&|r9p7`V#rp W@i#rn(b4kRe@=4Z#@Drj[ @9i0i9hJh6ffDr#Ys*Q`6e0i#rb9Wu GL?Y#rC!C91%19E;E9555QVc`y/#rIAI 9Y9Y9U)U9[#w9c=9a-a9^'^9__9``9dSd5M4q 6L]r V#|++ *r.*q3(t/I x++:xrr(qqDb E(v2PG#|36P r/?0) e r:?:A5u?H 4w?DE*77`4F?F0@8xttX rD?D DrP?P*OC6r?@B='8?@W r?09W r?:d rK?sNN0-7r? @W r?`;f r?C$/ 0A2 b rR:R 06BFBd rgFg4.s@E7r+/rd r/:kD4r0b`4s?T 35x?3p05Hq0P'KPlf rbKbU xK7@:`!@5xvv 0Fr>P>@d roPo@F @Dr@D@ 06mDmd r7@9\\@'O >V rDOE#&O 3 @4NON0KP{7r*O>*AA*99)=3r$,9IDI(D:p=J r\O>%"ZEIr):U7:FE>r@=09| *|`?5rPOPc9>@ <1>rP`*R 8A ErV8V` 638Qi rJJ*8s9\%p0 &vOm/0P@H>r:m#;7$ 9 | =J |#V*%J*&7*K$@*DD's:r.O@8]v]9|??0:|""&89&p(,pxH>r # W r60 Y r7S.SJ>r%&P9(&]p:*2 *8*E (#D=H |': W r4MW rkvL@>r"PL=M=)!6` @?*-- )"SGrlulY r(wj90i(Tx>@0rhǰ I>r&>GrWW C |L(MJ>r!Ȑ<(N+J>r"-@<(ll ; |Or =S?)TTHrGZG!r5p=V;n<(UW`q)8r1\ FH |N ; |`=)ASGr[P[@p P?q)EV0+|?(PG>*W5 *qY@>P*T=GrjF`J |QC`& U0A*R1 `=aPp(c3J>rb0BI>r`DGri.d@>rA6|!P*p*WqIr_H_`<$?9E E)QP:| R*@`#0?(rIsD r*d)0*f**g^ 0?I>r!+|es%q/ >*h_0`? ; |!`@0s@>r@# p; |#?) E)| `@Y>rD%D (Cg ; |B0?"A%0?G0?F0?y0?4C C09B#B9G"G4F%F`T?0?@0?`Dq@1 plp> ;l91:#08>;01;`9`15+w/}8U>rAA15EEVxH=

P#%"%q49C`P?4;G  AE;xHH=!PEP79B0 >q4;F` %<?@>;o:4^<o 8  4?x@ `O`q` C [`>q5=:?<4:;q?<1= 4_90 Pe`5E rmm@:7q7%mm:97%mm9 9qqp@%lm9 :ONO )lq 4PWP `9OlO 4LLM Pp5 p5@9QQRP4LOLP`*c`89LLQ p94LLc ;SST@i qq*ggr;LLS0q pq$q(q,q0q4q*aaPq*LL9 99LLa 4UVU@ 9%ej:`U q)Le E q5<@7/@7@-@7//-@7+@7 @7[B@7@7@76 @7 P6 `7 `O%x-P7+ 7 2@7*7p7P7`7+ p2 7`7 0 @ q P7 p7 P7 p7 P7 3P7 7P6 7p47 P7 7 P7 7 P7 7 `77`7 7p7p75 0  5`7<7p7 6@5p7 `(6 @7  0606%5p7p7 6p76p7 p7p7 8@ p7pp7Ь046 6 6P4-77  7 0750777 5 07 707 7 075P`x `77 7`70707Ġ077 P@7@7x@7~5 p4`67@7 5P7P7,4`796 6p7m @4-b<7<7 p7 6p7 6 p7  877)  `7 P7 6 `7`70 p6 `7 6 6 p7% 7 06 6 67 76 67 58 P8 8 65^Т 69 |_6 8 58k8l88 ;#rjP6pP6 5V#ro`64(rn7 60 77 l8>)rm6 76 7 6 7G#rfV66&Qp67 5 7 6 :u+|q5 5 5P7, : `7P7>'P7 @:87_-_ J#r^p7`7 : x27'ru6/p7 @:@5637`7 P76 x860:06q6'D? 4U r$u 2: %(: 5P 06&x:5P'D2 05 `| 7@6 086 rH7΀7{07p8U57 }2{K66{,7@4D:@87 /75 7w77X x77p7's`8 @7?@7 075:8)0@7 7*)85'2@ `7(ns3V r2-f r___ r8D@7 7@7< ?07P 66 p92 67r3K66Ir, 6 @87Z rVK 9 5(KH6H r^D 9 69 rD7 6C | 3`` #6 @7 7 7; |76 `62 6J rj+47:'+u<P57'/p<54 6606 7)rT5Y>r"709b/b 8#2 +|77 6/6i608*4PM5; |L0*!00 6)rep6 `8 7d08""7rJw9X rhw66 69 |6J>r$986 p82 `6*nn 69|Se 6E: 6 0:6`8K0: : 7U7q7R7*,,; 7 36=p6 s 7A`65,|Q 7EN 7o 73 7 7*|7'|P78%6%)r-07J>r'K46PP7O@7*VV(a,07*Wb 07)|`:X>r==)r.P7; |!6 @7 998r[H9@78A A+|7 <@9#7@7 @8b@7*d*e6(g.@7c@77@7f7h`{ 7@79<#P7"8%7; |CP7 7@7%? = 9>#>9C"C%B%`7P@7 <@7@@7=`383P7/ 7`5P5 7@7`q83@3:07P>p5; 75pv 6pvD8&+xHpv@pv=pv<074=407<6 6x88 7pv"#DDpv5`5|tqƀ8 :| %@@@5| ** *""*$$*&&*((****,,(.. 5l 5pv<` 626Z57<708 6[6@ 5|00 9%22 p*44(66pv! J |v)***!%*)-*1*15#**!! t*)) PvJ |11(2>rAr9 |@tJ>r%!s* 9-)v (!$ J |^ *),*v(*54(0T>r11p 6;6xpv!%s)-0Uyspv110`pv!s@*) ! pv&pv&0#*'*v+*/*3*#7p * p* p*##p ('6 ;xpv(2 J>r!* *%*^ %)#@p(& J |v"*#.(*1r@1T>r^0fppv!`1>r#%%pv '')pv%`v'pv ?pv?pvQq p2;qpv ?u%q0? *  ?B` @( @0 rq;u*"" <@*$$ v*&& %nk<@*(( pv*** 9oop@*,, 7nqn:J!r.. 9mjm@*00 9nno@*22 N[0v*44 m ;J!r66 4MML@<4NmN0<*PP=9MNM *VV`%MM`=@d<9MMV ;TTS@d ;beb T 4`W` `b fp=9MM` *RU=9MMf 4hhc `R `v$Mh P P6@X`BYPB  PD @  P PB@  3pBq 0(tP B` B v= v @Hrz% v  3^w @ w`v 0w  u"$&(*,.024pv6pv=@xs #> @x{E OLFWrjp V r=  BBx`@ @$rY1RrpG!0wJ | **(E!r *(H |@H |WHrH | J |(1rp}*(0H |Pr@*@(0H |@@*@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |#@@(!0H |@@(0H |"@ @ P{%@#?| @@E rAP /@@H |0PEy q@7xx@H |yy H |zz0H |{{@@(||0H |}}@@(~~0H |@@(0H |@@(0H |@@(0H |@@(0H |@#@(0H |@!@(0H |@@(0H |@@(0H |@ H |0H |@ H |0H |@@(0H |@@(0H |@@ 9rP3G@(J |0J |*@  J>rP*  * 9 ( J |**" >P`Fy@"0d E6x0 @`%$#cG |M0 (F |& ****(;>r@( %U( ;>r * # J |**!("T>r`5rsYr%0  U !##!0!-@0&00 ` ') @P(} F |yoP **** (!@x @| @ J |***"(#@0@@@E@4O@@@@@@(F |{ ****( <>r0z @(" J>r*~ 4!* $o ( J |* (#Er@'@@   @ $@ @ WxW@r0'Pp$x~bor p3@B@r- |  @Y0p2`Pr "a @$x)01%x@$F fG@$y @s 1B@1{ 3> 1;1r 1@Es @00F@2| 2 |KAp "~    EMTGy E /qA{L@!ypC0z@C%x@pOy @yp$x `y.u$r cr URs P pp0 d6x /rs1KP!$! d$r  p  iOr2raK@1$rP0tr@!Ї!r @ r1pb0@'r 0 0T'r @  @P @p@ @$ ES0$ `w $!rv3601 r1pRv"$@pr@ 3??1xP 010x T rtTڏMM`R/y2bbr#yPCxHr dz p4pqHx 0!fz0 #b @ y!VTPF@@x pC = @p@ 2{>a"r@?O{ R$x61xp~v4|/Y# @r0 3 y.&2r  sx P|4<p$0@r @@pP 01 r0i 6x<  _# T$x8 1x4 0`1$x1x 0`)1x < @r?"SVr 0Ux 0GxP$| `p8x A$r 1$x Cr pF$x #  @$|A{apd%r @4 P0;0r@3p%H`"@4 Q 0 A@@p@; pE$r P4UPp =0x%6x"O@4!   pF)0x"`A$x#c{`5x U P !x  @!Dx# 6 @Ax  05r&P ax  0xUpp'  r@-0rC0P `4Er= $U "PT0r PTx|> p '' &0X%rD 0@x"0$x`/ !$#!x !xCC@r6$rB P%UU0xEE@'0x  (="xp?U00Q/| 1U@r0 #`x`@%xvD@| 0(Pr? B? !BpB@C|  . !r]!xM<`E6x[U 8xD;|pJPP!rKTx  ^&|P)|U r?6# 4 w6xT AxE6xZax^PH6x\ ixn0 `0 c6xb%dc p%f`  h3j(l`3p1 rB0lS6xt9P@6x]]xopB@ A|N)0 3 1pB 9$r` HHx] BxP0PDx a #0 7 H|QQH$x#G6x @:`@x P rZU#R` @W6|L pVr#d$x`@$x!  CN  W6|!;Hx@$xSSp1|M q` @##; HxE$xzUs!Pp   53pR ( E!` 0 0x0 Hx C#R @9x T rTU0a @ xx@1x~@ a"|XRxPB r P(@|YL`@P((1xV!OpA|Vz ?@ 0@|W`pp@`+0@xp4pR@ `Z`cy@@-PqCx@\PPSx ,w/y qEx p%po`8 _J'\[Z c? pW ? 9xW ? W e?T rrUGa? 9xV ? Fx 6? `^W 1?@ 'p[06x(}?D9x06x U g? `83?pV H" Prp'tU0[V@0F!?!0^ ZXa@0$t[P`D?6`55?@CȀ4i?"`p`PD7?70@(#?pGE rbp@@0k@N0d00(%?~` 0:m?&0d00:'?'0f0oph00()?JJ rf0:q?*0h00:+?+0j0sMl00:-?-0j0:u?.0l00'/? n0(y?H0 `0:{?20T0pXQc YVe @ JV@ JV@g@`i@b!@p#@0k@ m@%@0'@o@q@)@+@s@u@1$r)PN !/-P+/P0y@8 $V{@!010!x 3HV30DV}0@HV HV5 DV7 `Gi!9x 5 9xMXr @0rHM:@`sr 0P   `W$rF`9x^p 1%xPJ 6xZP `x`P0@rYMGP@x! |@P H0Hx p @$xYI@Hx H%xJ9x@H r~9x ` p(@@|AQ0~0 Zx *HJ( 0`0 0 000 0 @@@0p00000ʠ!` `$ؐ@#p  6 0p` 4@&P!/0PP P8P&@PP%>P0'0G0@!rF$J@@pL@p0R00&*/ @)pT@ X@EN- \EN  ^ PFx^&/P1P`1| p + V3!|` Y`  @Z6 uO|Fp/@p] Z6x\&P' /Pp$<EN30$ YGptx@X@7D `rC$p"k" 5pP4EGr'`7` 0`/O!O& E$x&"d"F@tx  Ə$350 %;H@%0 $06 0 P@|  P$@+@!$*%P@J  $p%@ #B"`A|v`1$x%!#pC|C"P| !8`! xJ B|w@ v;)QB;x?Ћ`s/v. r: @d! Ox1u@   px  00 U@  "P#p @` 0UG4H.P%CP&  DA|#  !0U r::hx 1xP9`ix 0Ax8  0G r`  xWr 0x0xx Pe6x Xx W| czP( DpQ txCP % ( cxpPF  % * % @P&y0bNr!0)E6|!`P) PeP!x P$ O@Tr , Ex" )( # 0'0x""21x#p" 14##" ) # * , #*y45x9,! .@$6(@0*@T|!,0)PFx+PP $ &WDx(6x%P '0,(P$"% 8, .V @$x3 `& /18@@x PP " #E6x'3&fx p@3&"P ,@x)3 &3-30?0Ey.+w6x%$p ! p V r%c6x%3OP3 f 6x131 Fx# p P(Ty. '334 |"  `<0T@e/6x30* b`0P x`sy 000`DxЁ$E6x53'?@  0 "* c"x`oU6x!3(z%#3(  r;|@33? p@$x: @E%x<@vHx@4x 0(P`X x  t @ P3x"pP%33)P!0P 0 :;1r@ &;P"0 @@0rHC$P :Ap= ATrFE?Pp pJ%xHHp ??`A(::@ @*FF  ;WrCIDP   <;1K 0TrDGB0 ;H%x>?   @?;0(BC@@4GEH0pP@K`@6xMC; 0p м0r>=0MPf=xP;0PP04C<5r< ЈE$x= @ %< (%

>@ 4AF `@s9Ő1xBP@8HHxA8@}TxE >0U`( r9ǀEx9`(P Tr:pPi/xp9x;Ex9: p}0 0 `%=B` `~P`Ex9:0( TriOx"4r  P @ rY1p`  0^$p`P>  6x@ D `= < @&CPFxB @;`Mx: 9` 0 F HJLNPR`TV % P#  [ 8"8 ` V#r@i#r96@ E xxF6ЅW#r `Hxɼ ! b/sl@H x ` p50P4%Pa/#r(P30L`E%x̐" Tr  F%xp!н4--00611 dr 6)) g#r$$Us(д7,,01xP`'0PFr 644 P aix@U#r 6"" Zx@6&& Fx(O#r++ Y#r** ۀ I x1x`g#r''@4r-  2sñ1x@f#r//@@`7.. 9x9 x6x@`633@Dr1f#r66 677 Cr@;Ѡ5ϰ%Ex ׀*)%0 ( 3r)5Š'װJ x`Pp@ Dr@Hx״PӀ``Axٰ@ !`ۀ @@p6x۠@$0@0` @$!8x`Ex$p Ex p`00Zx(`0( "4r0p $ #P @ 9x0 p$r#($& +Ђ6xPC](,,@P(00 6s`H x**0P%&%&'0 's47(2 pp)x1xЊV r@@U rAA07ɐT r° s, V x@4 5rDD` `s9` PpEr̰%P 6xp42*@0%//p %ӂ Sr' p bV#rAA@W r@°+(..8 x,V x06/` `V#rDCrp5rCC'FFp74 Ts@" (EE@Y rΰ(4G r880U r+J`4/` V &ʱp+e rб( C $41F` @&/R`f/ r>>p6Ri r4J`İ 4! @9ɰ99ݰ9V4Ds6.pp4(  ( .H rTTT#rE-E0&.(F,T rD 4, (-T#r8@ذ500)0/5r''2$> 'ʺ`/&&d#r'T (::0Y r&A6RU rR @6RV'Z rOOP*'V'99 C r?1F%`/65:Z rBB0*NN*;;'LLG r<< W rHH/6e#r7Oe/ r<@5Ʊ 5@5?)?@0(;Y#r99*P66W rpW r f rıf#r)B)#N6;;f#rLX r==0Y#r!< 6L U r7=P9H0(:.0H r*W`G rV(0f r(9 ` Z rSS@')`Z rBƀ*(`*PP@6f r;8rII@ P :r$@6"f#r== 'J H rN>V#r*Cr!  6SS P'GGCr p(KK J rMM(UU@#rW rQQ f#rI f#r++f r*0X r0G r@f rSi#rGGP6> f rf#rKK0f#rMMf rP,0W r,@f#rT!U0f#r3#3Pf#r//X rɀW#rQ@W r G r,X r`?J r06 Z r 9 V9 6<W r.@i rW?%%  96E.  f rK&U rP3 9'Ci r' 0f r 3V r ^)Ir (0V r W r 0 9 @9" B6 Di rH0'@f r! W rF i r# 7 Y>r9> > )PFrN N `bf 9"" ' i rR R9/ *9+ ( E>r!Fо`(#PHDxP@$ 0 @н4+pe%34>~1K$ ( ,Y>r+R (+ Y>r/ 6/ . P 4&! `O+%/ЌĠP5|*O4)N6GrJJ=pp@p71G T rEO00p8r `I |K$p:|WW*JJ*V8***I%)H&6r j/ |S- 5 )R1 :|)Er00M@ 9TT7ݦ(@ FrW Z r'0W r@Y |M)9|L2FrDI0W r!W rG * 6Y |p:|7*0*(***U'**TT****)7rF0Z>r(AJ>r(PI>r@7r`i>rD!D %C 9G G &@%`GrB G r" W r=0i r?' W r<p `@ '>d>rF#F%A 9CC%B ?P9= =4<<`%>!  0D :`AT rP} ~94@} 9JKJ 4 00rQ7T rVVW04J05PU`4IH04@@, (V~Tx< `L@07V0 p`E r0P;xD506Z r*(Ex80H5P8r0J r*'PyP@" Љ(   %L`F!rsG r Z r!!'""dHrP{'2p H r##P@Dp06!r~#D ~ `@ 0~30&LLPp `u7r$$Z r%%*&&%''ʀ f!r!` Hx !@%((p %P-OЃE;x 5r))@***'++X!r'&@r$%$p4JK  $$#'(,,pE rRS`*1>r` .{HF"P&)(P@ `*..4);!r)4R %P 9@`;!r'4@P/ p[ r9=PD%H r22@N04@J!r'0;E rp:Ap*444BL@%`4P'--P  (// H r11 G r33 @@'55 Z r66'77O`'1x+:9`r& 06370%)pW>rCMP@P@r+ 1p9|NE rTU O0m 4~p2~ ` PrH&Hp  4#PB r#d r04F p4G!P6 I&@+H rT6r@$p{0$t+A p880wSu pyH }sH rT THr# ` H" .y Fp``r-9{N;@qy Pr0$PR 0h0(P 10,Ph@00P 04P2*08P 0rP%@611 U r0pH@4)J)p|@LG rLpX r%!z(4#) G r9@X r8T>r1L1(!'$f r-<%0 10wp8#b;$$9`%W>r--8@wʀ#-0 SGPC,"& 5##9''+@p 0W r&W r; `Z r**%'2!P':P$#`P4$$+p9&&37((;"x@,0 4"50 !`x`4%%*0!, #` ''&& (Ey !%pX);HV 1xN6x @#ȐP  (08!pBrp ArN`!6]Hx @xPA79|bHx0C6x: <`@3|` oBt&AE8xHx }XX(HxPW|  Y|  1rJ3PM`3}xxb 3D}X@ E0?xD`WG`G rxx Z ry*zz({H!rx J!r(zH r||@G r}gHrG r~~ V r'& "@P *'0X rV@*|@("0H r@@*@( 0H r@~@((0H r@@( 0H r@@(.0H r@@(0H r@@(40H r@ pH r80H r@@(<06y  @(@H r@@@E r @ @/@0'D0@ @%Xp6Y@ @'ZX r@@@6\\0 &] 0V r^^0 &_@@'`P @@6bb0X r$@@6dd0 &e4@'f &g@@'hЪX r,0@8@6jj0 @@'lPp@<@6nn0f r6o@'pf r:q@@@6rr0f r>s@V rtt ))u6vv@7Fw0E!rD @3G3rO9 # 99 9  * &4 9x 9 9| 9 7 9 9 96d>r p  P 1>r   % ` E6x  $0 M % @  @  PP')`[/ rP ' 'PK>r9 * 9z *9~ 9 7 Y r 9 9 6@ @ @xp  Tr Pr!KyP$ `% / 00P5 P  @ *  P  p** *  *'@  0@00 0@ 0  /  7')3P  p  @ + ` * *  *  * *'pW r4 P `71xY*/0p40@Tr`*|P4   2s#Ћp@ЋSbx.Ћ3rPPU |Ћh#ЇpWЋ pQ/$~ @]  / * #y.J P% `9z 0@0`ab%x] W p 5 *!x&/%`8r @x0Y@@3|,C|-@r p`k,P2s %B"PpY1xqEyxNr1x@%-m pfr, m2s psr-1x0p@sh|PEx[@% !@p`s ~ Ma$$r02r15%⏠ 0 ppiA'r P2r4MPUx%@7@$xP @6x@0%a`0|{` `@Cr o@$x p pWr %@'r P5rO0r  WCpbQ%P7 P@ r`1p@0 0r ``0rO1%|C T$p1rVp@$ 1r "H6 00 r@d%|<   PD"r35pЍ% `5xPPЌD| "P^4OP%> RP@$|0Аn#Tˢ6$ ` ==@ar #@!  @!~;5@#0-@%x;0@ROr%ďr(Cr)*'&/ "R6x ܐ Њ0x\\rHx Њ9rpHxEHx\ )x 7$rk/x 0pP`1$rpT|L  @p`Ix )xЊH P ЊT|MM  $(@%xH`H`@|RRHx9$x!Њ@rP1%xЊ0H|QQHxC|SSPmC6|O  Z@$x`PPlE6|T? #L zH$x@T|!T@i`Z( C Љ kV rar0lCP0 9xZ1 rPЊX x  P` @k Y 0!2Ex`Y0@|X ` kP P l@Y 0 l0 T rc15x` '0s '@x`j wb `D|V `/04W 0Gr?@ B rU$aZtbP p' (0'Oa}%)P` @)'P$(  `G iJ@x 8 I  6kJ0T& Z`j J @H mJ `83J-V Jp  'ZV oJ@`c21J:xd7Jg`%J J@  55J/@57J0.4qJ PeP0&!J00  0'sJ0e0 0'#J /0 'uJ0_0 &%Jp10 @:wJ&0_0f0'`` :yJ(0]0 1` :{J*0]0h0'+J0  '}J 0[0 '-J20 'J!0[0j0:/J/0p}@@0Pk J0p !`*P/P  Z7J k@Fm@`*o  Pp| q@s@!@#@u@w@%@'@y@{@@)@+@P}@@@`-@ .L PP%`0DV0@HV  `;Gi$ z 6xP0 Tr ,  p 7 - 6xHp΀ixR @$xK@0K  `A $r`C|` ` 03(9xTP Hx @Xx  H|F QxO `3 C|G &`  ( HxS0 H rb   6xL  y ? Ax#0|PXAr`" OWx  &rx/xF$x@(9$r` 3rs Q@4 $|!@HrA@H xܠ3r"p0%p 0(@@|D0`H6xԐ2rp8KP0xԀP@x0"x`hTxsA0t@ | 0p2PFx    0ptP``x ;x|~`` pP  0 @p`IpI.b0 @6x$ %(  1p@OHx Cx `pW|Bx#p# $+0($   P$p 1 |*"pbIx #@2| C|0#H #P@%x` "@K0O1%xp001P"#Gr A$x@ 0H6|@2r/0! P RrW000`oZ    `*$^@ `@ P&Y/x 7! Exp)x 2$x@Cr ,# '3r  1x @ !9{66rՀ-@.4|P/%!r (0|`){}2r` @0x ,@@$x@݀Hx C6|P;x *B Ā) 0x/1x ?Hx G P/ &P&* p;pb"0% % PP{( HxJx 0`%`( 0Jx % `"P@% `pzx ExP@<6xP%`İ(ADxݰ `3@xpx p Zx @zx @ 0#0Z`Hx   xCo6 @| 1p Е1 |R3p" Z0 R \ @R `f` `@p*p: t PD@l ! `R `R48*`Rb  ?er00<*00 ;1@Ty@*RR9D*R9H*R9L*R9P*R7T*RHx.!*@$x0p%.b `.@/4*fhy2% b| .` d/6xPP r B2  s x OxЇ PB r@@$bP#,5pB 3pp p00,#"Q@6x3x P%*-P4#x0 p4x p00*"007r"00@.p"0 #+ % `&{*0,p2 p!R04x(0)b ** Cx8/4x*P`+Y0.@/0 1p@@3`406770G.@ C|P A;xC6|@ @r #8090~p39x I%x8x @x9)`@$x@P H;x`@x(p  7(@@x8)`f5)+mf6( 72 3(p 4)`f1)`  *f2(h   # -* /( @x $`  P~@x @  Px !O` @`x00 0P  ݼYn`!@| <e/%x`0%d0@% 50|#1Җ6xư@|30`(`;x0(0> @t{!/@  ;70  `}i$~pY|5`@@  H%x0|62|"3H`|X`0sܼ( @|@x0)VL @%x@P|1]  (cy*0.|2pTy*`fxPƠ(1x" 0 @Csfb.xP$ O ?D|0 »)P6xP< PĀ;$ A@pk@@ Gx`@p?( 1xPp"$$Ppp%`x36r0x Y00 P$% 0Ex`@r`x` Ex @4@ %(;x°Exp 1|`@x`9P A &6r`36x@ `( @P0Hx@ %0(0 @pmD|0&|p2&Ex %p-pZ 8y ` Ex*P% `%ppp* % 00  @`P%&|P5|`@ XX04ExĀİ @%746:xpp`45p:4ppp 0 `p 43&x 42   @J|1`P)xPP PPP (X6%x4/ "ppp p0$%P@@   @9x3r0`P0 `0Dr@P 6r@P P@0 0 P  P9x0 3r@`@#|)!CG#|0CrP!Exp0 ``G#|PFx@' Crp (09 xP`]8x  ( 3rp8x@G#|""' H#|##03r`@:x`($$* 0'&&` PG#|''0Z x"#P(((J x#$ ***@ H#|++ 'P*,,p'0H#|..PJ x(* (// ;r`(*+0 PJ#|%%+pH#|00 3r`*,.0(22 .Ќ7|330X#|pJ#|`J#|))*--*11*44(55H x%%H x/0G#|0 @V8x020J x23* J x!!*))-0J x11*34(556s.Pt5x  #<E" %(D|cc(ps0|9p04@!S09'') +`9--/ 911933455u#|47*Џ&"p0p/#rcc%*%ddPЎ`5|ee 0%66pВF r.Ѐ%ff@47r#2W r."aS r7"@@3#rddc |__ 1r%007"e0 'x6P *``P%$p0Ercf@*(3Y r(3H r@Y r'!1l)'9))9++'-0W r/3i r11(3@E r5?6r@36#df r#h#r__ 8|[[PTs44(1F r#%(aa@W#r*`py *$@`yAs&W(,H rV r$_f#r[[&aU |_Y 5|aZ 0)\\FrpU rZe466(XX@X#r_5rP6gOs(@*bb@6_af#r"\PX |mm0H |ll1x\#0` HrXX@5r 4Er!7cbF r@(_H |ggV r @pP9r!!8|Y]@W#rm3rX |^^0H |iY#rll@m@(iv0P |\.+!2*V rW rX_f r44X |wwPJ r @'\ W rЉCr7&& X#rg8|]jpW#r YF rP,@&7*hhP8[^pErY+l0%a-`#r'6P3u`4r0W#rimip3rl 0 6r(5iO r*8|dq`W#rwwPG rc4Bs07r`H r0~Z |kk`9]`6&&0W rU r[@`7^hW#rfG rm6 hf rh6iV r+bP7@G#rflX r6)H rj(0W#rkk3r+ 8rd(@C |*(gr0J | *%%*`)&&HrƀFr@2P8riH#rk+@E>rP 9|nnJ r'6^'^V rg5P(i)X>r%p8r'5I>r&9|:|*&****%**)776r,`8v#ren`h |( 0:|)#)oop8|ppX>rEr00p`b4& Pb4%0b4Er-@ 97 6, f re,eS |( *,)****-!(ttV#roo0f#rbph r7r&0` p$ (ss`J |+(*@V#rttf r/pW rb/pdX rk0`Y>r,P522 (3J |..*,*/\)08|#V#rssP`-(!0J |5 `)' Gr2Y>r)l16|.p`*+*,*/)%:|c* *'m)6Hr]2sGrf1fH>r#0`J |0"*1$*2[*6X*7Z**`_9&**"j*$**[l @1>r`8|0Y>r *1 9%% *5 ' `*2 9  (6 J |7*(`J>r!04""Iro4$[$  &@0'33i '4wE>r@%%(pp@pp8|  @$R@H |j^0  *ii*33(44`Ѝ :|i4І@C8|cY`F |!3@&$g &%h0&"40*la * $ *#%*0*'d&0&jp*e*bb@*&]*af(kk><p8|c` `:|l %! `@*#"(' J | b*[&*Ya("kp%@ %@9 Y %"[ 4@0@ p0 P00`Y19[# 4p0@>rY p[Hxdڐ* p7#9,p7/0"9xT }#|8P}8|?80C;xdHxHxT r6 %Xh* @9``7@%\Ў`'pY r50506* @4``@7221p@yp)1*`8T r5`50$[ r-*-@5<@ W r252Pp5@0T r./.P;-2-07D04(()00+-.07H 09++,0;(-(07L(04iji0!/5P002>r04Z!O07T804[  X@ Y$2Z`" [^ 9_Pp!@}xXT>r\\ ]P^@`_ Tx`@(+4'' i 9lcl 9'(' :e $'l `;bba  `;&k& b 933$ &P `:%%4  `0#TxX@0ʠp\  `%\@ %XX u;x\\:P @`0p? @+   ?\1Gyf>62P 222I$~p26x@221$x`zp. 2 26x`22Pr (=2)2/2021262 p2`42 p29x52 p22`S22?/2 (212(2|_10*4`) 202/`2/0(0 32f&~R,4102 *b2/26)ƀ242,52+p2O2@2 P2 p2p2*Np221 (5|4P)2!/P)) 2İ)fx1*2 **k)0*(p 3) 2 `+(P6r1`2P+@ 1`p+,G|»23@2p2p.",2 P1-&x-L! %'@* D|pE 30p20 P301 3* 0% @01uOx 03)|`4 p 1 03 0 P1 01P1 2 PP% 2Ȱ2  1-2p1 2P 03F@426x 32 35`344 3  2 `2 P5`20`20pp210p2 2p2 1 22p54@p2-1@345` 2 ; 026|@3 202222@2`1P1 2@1@12@101 3P 01 301 3  01 @1 @3@101  1 3 1501/ @1 $ P1 3`1+ P1 @4p `1 1 p11 41 P1 41P11 P1 41 4 0p 0 4 0 4Ā2 @1 42 4 `4 & 1@4 02 1 @ 1 3 0``  p1=3&|71Pp3P3O @3 307;03N 3 `12-*r$ 3@!r21 1 @1;#r" 1 1Ys$$( 01G r"1 @1*`30*p3/%#"` p36 |"/p3 2!c3`&"2 02 O@/3' / "P+ 2 232[ p2;6#r2p2 22 1H rc@4 21 r$$ 0/ 0`2@0)|Y16 |\ 2P,1 64YY%\2@3c2X 1!r^"5@2@ @2 1W rY\0. 2:OP0 1 V#rXY#rc0 p42 - 2 48#rX2 `4 /X r\-P0*e4 3X rccp/ 7 @- 438#r`-Dr I |a21 1 p5+p2 p2 p50H rXX, `18#rb5`0 8 @07r_P70. 2'**7P4`1H#r`5 ;2 05 @3 @6X rZ[/02'!p8p2 .p35]@55-1J rf0'g8 6h23` /ra 2j4 051 2@2- 5]H#r03`2 5G r[h: 2p2'k W#rhlj` p2#r q@ `2W rj`:p/1P2)`P202 2 1P2 1 P21 `2p)r.`=p2&n-2p2 028 @2 8@2p@279(.P2 @2 1/|,@2 020p 7 22 03 7Z |22/@2+ .@2 02GrbbI rl519rhh= `2, p2 p32@0; |@2@2p2*e @2m@2&= 38r3F rii`P2!6370/`P2 .*ccP2a 2 32l`2T>r'm-21 2*kk 2 2 2 2K |6 P2@2; |//`2p6r.op293t3 )%l037r4w U>r$k2Đ2p2p2! 6 p2; |e4k@1(jj 2p2p=@ 2 2Y rs@ 2 1+2@3 2 p2* h#3; |a6l5 2m 2d@2 4 *onp7@321; |1`2İ2*m0 2 ( d 7 |'3*%g("o 22 2$% `0/"'2&.2%2'2p2`2'5p24p24|0p2/@22  @#,2 9xp3 `2b_0#0,")x 2 `22$`.7f86x@. .H |::0J |<<(>> 8|@@ J |BB(DD!;x@(FF J |HH(JJJ;x@(LL J |NN*PP*RR*TT(VV. /p /121O/ 2*䏐102P 21``19x12[ @ 4hP0%``G 8?m@E(^A J |nI*99*8=*AE*IM*pQ*QU#88*99*AA*^^*II*nn*QQ(pp@>r=8WPJ |8f 9EA^ *9< 9MIn (AD J |^@*IL*nH*UT(rPT>rQQpp 9906$=`AEIMTy9 PcUrQ0Ex=g0#A@0{=PI`3Q0SG t01F |9;;&8? *^C*;G*nK*?O*pS*CWp *;; p*?? p*CCp (GV # 8|rR J>rA;*;: *E?*^> %IC@p(?F J |nB*CNp`P1r8P,W>r;^;Yr9`?Ap1>rCE%8; GGIp$8?p%8CG-  97<P:6>r"@ p4 0;`_<" p:@' @ ! pfPY>r ' (<< T r77b7P8PHrff! J!r>>@7`c`@9!r@`@7J!rBB 0 ;6!rD@@;*FF (16 ;J!rHH 9070@*JJ ;J!rLL 9001@*NN 92+2*PP 9-0-@*RR  ;*TT 9--2@*VV 7/,/T6x@P<@;4eej09/`P9,mm9e ;aal m `%kk <`a `;gdg k ;oo g `;33h o `*ii9+((9:` X !@ p?@9 P @ p ` @< 2>r<` `3 @4pp\A! <1>r]^1< 9_= 9 9E!r: f  <>@BDFHJLNPRTVWHrp :"2}` Tr.wm0m{0/ 36xm r%B.0rP PFV$x+pr9fFyC.pr 0lv9v0lvfxv  x `j6|;0 0TP 0Ux8Kl@vPlV;x ? > ?I%x2+2?@x<809@x>809P =: ;P ?: ;P`<p0$<0ouyI2nhn%H2n/b;< Pn9" m @P9@ @9p8 7( @7Jx 7* 7%@68u `lux `@ut/v % 00uuup l`} j8 89$~B6x=pn&xB:0u9r?p<(F6|8;sCTr@;6%88h7<979$r9;ErD @ %E{ʠ%KDp%JD "i7E|@t 7(= @|?0?0< !|9`l9 (<<@ :9x D6x D%>?`@=0|A:P70|=@@B%@9G|9? 9x vj(:ABpD B@|F`86xD(pwD%FF8@> GG <%::@ 4@9 @ 0|<@ F0 >;0> E0@EƠ*FG%<<4A0*>> Dw/|:G p6s=u b)?`E-^ @ T x(DD T|  *88 *>;.EExD;7A9T r=4*/o@$E.@ =Đ*:AP(8  1#|fBjQO|>>q>> P>n =0H E jF5D8 1x@BD;Dp0V#|P4 1x?>pA>>H x4 0D@+xkk@ $=>D19P9H#|PEx>?P0`c`"'xkg/#| !@V x ).D%>ApA`@ @0s;Ppl < E9r?P Ex<)xD@p'%php4"j5% 6ax0< Q/x< < Q0j6r$PD  @r@)@0<@ ?<l`L@9sG7x<`p*>l0rP @3r,b @F#|-/*<S6%x =3rE F#|80pp<Is-!xl`Cr0`/*xM/`I x8 xP`F%x  ;(# q1x:0D `3r@p 'F*pG xDsS/r#P`L'@$=N``w`*=+`&<<`(+FG#|F20X x== 4<<:)xPPH x C FLl:x::0tC9F x.@t`AB0bp*33@'77B Pt6 xR@pPAZ5 : |69&xCs@ @ p5xq709MM033 8QQ rPbsS000!qP9:: @ Lsn 2sPfΏsNs='|+`:56jK<.K? F,0(3IPt6rF!0@%,!9P8`DrBKB  !H`0*bp4dd05PP0o 5C V r= 4vR #r\\` 5q &CJ@0q @p9 |.nC r7J0%B@@*B9 :Fr9J9 Z r;J9iJG*MJ9QJQ f rSJS Y rJ@mrY rUJU 6WJWg rA%dT#rB0a`p @jGrJK:0V r=f r!=\d#r%1b@P Pp8r:KH r=C7H rVK0@X#rL$X:r07p@9K>'CCi#r$ ]@5>KN 7%Bj09o#oY@ r; |/P='TK>V rRK9%?^` op'rKof r2K2Z rK'8K:i rKv*`K0j ?8r\jPEPt> gY#rP4l* Rp9>(Y 9;9( 7%'w0W#rkkH r(<>@8n0:|ZZ'4-@5W rP-P q@9*L7#-`@)% 6c`H AX#r[O[Hr7VO@7r`:Z rO9':u P>7?R? Y#r')Zp7>T) 3r:` Pr7R@tW#rhhH r)M0=W#rG5c`X#r"m0 y nW#r++@J r#U'RU h#r6:6`:rG655X rbr loPJ |*E*?*0 r:|;;*>>*==*\*55**,9AA )@Irrg%*0m@3|Ap`J>r; **@ 47> p1%=87%5r ,\&p)FF:|GGE?*D*CC)BBGrJJ_J r,@ 6gHpm'j** l(FH |E r:(B ; |H@A*JJ*KKI?J |*1)!#9r8 @'|u`L&G:&D`*C&/@ ()>  >*K :H J |I*). *LL0*NN*OO*M'**-`G(44 J |9*-(*"(#3I>r:| & *0* *)(++ ; |"+LPN*'O(M04p%-Pq%#*n+ +;;'0)0Pq'pnH |Q$` j8 J |``(WW q0(d8tp;q;.;2@oq&WP(PPJ |UU `B Pr*RR*S%aq*VV BdP@f ? ?&QP&T *P%UP*Bq`?*%R* Sp?*'V$pB; |! ?*f(&g?*?0@1%%B09' '9$$(&! u q@91">rp0$qt;%@?@5=mpp9190#xpP<@P?#x~ >p2  `0?&&  = " 7x$V/x&p;x*0r .02`4@60@0 : 0@?78ps 0@%=@5:;4Z8P [: 9o ;@< A7r;0r<rpp6r0(8 Ar4AAD7beb T 4PPU Apr4``Q @P ;fcf :4dgd `f *RRs9AAd ;VVS R P4AV 0`gr@r2?/ p9?8 9*`8  09 rB7@@8 rP8 ffr/@8@8Wr+P, j1@8]@ @8P8@8@8@8(`u""@8'7pP8P8k@8- P8@88@6@8 6@8" @@8 `8@836|2@8/@8(@8"@8=@8*⎐q@8/@8;rpP8 )@8@8`< 0@8 @8, @8P @8ʐ%E@A@808@8P8/@8^ 0 r 86 p8 088 @8@8<@87s@8 P7P8P8,P87 ƀ88 P78 8 88 p8`8KP8@8 @8>" 6@9P8U 6P8Ơ6*: . `8 P8 766 `8 6p6 p6 7 7@5 P97  999 8  8 09 8 909Rp 8`7*Ġ8N8 5*5V/ xi`8p97 65 pG rA6s7 G6 FsV7`'66=6/6@8C7O08*:* 8p@9: 9P9fpsR8 4N 4Ji"Ъ `35(90 9`:5 0x0+rN5j5G rv9u 606 5:p796F : 8`7@:40603g r*KV6#r``:0@6 P6>#p `9P;p+rK40:{9#rU2*(V rJ!` :9KK 3 :*rP`8 9 P3@9 p: 08 <L@4(%G@4G rE:24:@99r:A@9p;: P9770 w 9 3;#rBp9708 ; 8 9 :)A@ 8:#r!:9rAv8 G rVT`2Z rT04 7(1r7:#r`8 p8*C@;(TC@;7 0C0:9#ra:9( F@4 9 8'`-P 6 9:#r-08 8G r?j`8;&jC<0:6a9f ri>iW rLGDr>P: 0:3r= 9+rc08%28J>r,3,5J>r232`88 `8*<94*rh:9|A P8M 8 @5G#rD>@:9=9'!v x25*%1+|P49,9 ,4 @8@:r+W e :o7`7W`8 3Ip8 78r;;0AW r/=P8,7   4`4@4 7 4 @4*S; 04Gr$r[J |!@0,`8+|%<p6 74`378@7`804`8S `8 404 5 `6@8 `808 `8%,0(+ @8,y+|#9P8.%)9J |"/*P@'60%P8 p8P8+P8,P8)P8 %,/'P8 %507P8 w 7 P7 P8@8%,080P8 8P86/7 xp  `8 p8 8 P 0n w*oo70wp7P87@8F @8m 9 |%p8J | ip8' 8*$k!wJ |n(&o@8"@8 px*@@ pxD4(p0sHx< 8H |00 (E;x@@@4( J |""($$J;xDD@(&& J |(((**J;x<<@(,, ~ *00*22*44(66@74 n84$92`448p4O4 px8p`nP7px(8P7 4px 6px! J |r)***!%*)-*t1*159'**!! px*))*rr*11(ttгu v*%!u* 9-)r (!$ J |^ *),r:|54(v0T>r11tp$`P!%)-u%upx 15pN10=xpx!pxpx! px1upx&px&0#*'*r+*/*t3*#7p * p* p*##p ('6 `& px(v2 J>r!* *%*^ %)#@p(& J |r"*#.(t*1rPpx7^;rpx!p1>r#%%px '')px$`x%#'px5B px5C ?=@`B@? =A@ 0<Fs%ppsG * 7> =H rOP@H!r@WHrpp sH!r E rNN=*"" @ *$$ %ST@= *&& @ *(( %UR > *** 7NNS=J!r,, 9IJI@*.. 9NNU@*00 HAJ!r22 9INI@*44 9MML@*66 7HIH@px4WWV@Ġ4HHM0>4chc 9HHW *mmx9HHc %g`@x`xP*af0%HH@x ;kkn a 4ool ` x4ebe ` xd e ?HxD `?Pxx4YE  `xnF B`  B pxA<GA=A8px 9pxpxp` px "$&(*,.024px6px=Wx Hx x@ ( rpb0v !3p71Bx '1$r @0!`GyJ | **(E!r@*(H |@H |WHrH | J |(1rG(0H |@@*@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H | @@(0H |@@(0H |@@9{#O |@@@ r/BO |@@H |0PEy a!+@#xx%(yy@@(zz0H |{{@@(||0H |}}@@(~~0H |@@(0H |@` (0H |@@(0H |@@(0H |@ ` H |0H |@ H |0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@ 9rP3G-G@p(J |* 0* @9@* 9 * `WH | J |**  p#p0@XUyZ7 Kx03@s0%`fG |&& *****(T>r@  $#P!( $@* %* 9 ( J |*(1rsYr#   % p$ - 0&00 @ %V' @0&} &y`&0****(@x @| @ J |***( @L%٠0PP0PА@@/@(F |{& ****(;>r0( @( 2>r@"J |z +`~ 9! ( J |*(Lr@ @@@ @p  @%@r#px!!0@Pr 1o$x0GBr@ @'Wx@@%xI1 |1p2Tr' G0$} @F@ S2s/X!B5{ՙcx.OBrpEs @00F@1$~r@01 |@@p @T| Np  Ԫ  EM`ZTGy E A{\Cb>u@z@Cp%x'OyJC$x0Sya$rq  r Pbs# 8`d6xJ`s P!$ $r  pK   iOrTr@L!r P0tr   L@ r'r ͉@ 0T'r @P P @ r p@$ 601r36001pR0z"$@`prU@4?p P 0101x  T r PuTڏMMp@/ya3rP\@yC x Hrdzp4p F P0#y.e:P% @p@2{8"r@O{ R$8` `xv4| @F @rR03 y.&`2r  vx 00xzE Ar 1pPTx: 3*68xP@C6x:`P@Hx 1p:$Gx@T$x 8x`@r?"SV r: A$x@1 r@F$x` : W$xEx @T{`wr@$|  Qx`@$r `sr @@$| :@Sr R 0x;pCr2@ @%|:pwxЊc{"P%0 N@ `Pp: fx @$~ `/x=89F0r:#`S{Ɛf$ @%%`$~)`Q|* 2$x@|NC@;P|M!T%x)@Cp OpE  c6|J;bdPG|RAx3P*X|N!r M (S 7*pczp U0J_PR @6|>; 7M1$rR7 O01$r S Ey-@"$ E{F  R r P 7p >p1x@Q!xp e.y# C p!7Q> (` %"`0Ё8Ey uh/ybc{ d % @pd$x Q`U Tx 7@1r#5~'` Ax0$x&z#Txp6sz 0r+`Dx&!x"``1x &r@  4 P*? ` $Q@"0rAFx@  B Tr?P:i#H%r 0@x$$x Q @%x T$x'cr oCr  )@x""#'x5xQQ0  CC0+H$x&p@r(?3`A0A@@@ P("|p 1@x1?Xxz800xtB6xvppW$x1%x@@@|3(4@@0@r?`1?51$r[KP:0C6xYQ0E6xP0 w6xX B6xZP16x\K0#^@`n%b P%d f `hn@j#lk3n1pPr`H%xBC| @H@@!rIP6|0`+|1x9|dW| C r%5@Er%0@'-CrAl@}49#@ܰC[[4` Qxo@ @|L* C 1pB 7$r/@@@HHx[@ Ex ! e )r 0I$r  )r @ P I$r@xI@Dx!G`  MM 1P @%xF HxH|NNPH`1%x@` ArR8 !0pWx 0H|OOH$x#E1x 43? D`@x4?&XP1pR G|J@@0xp!Ex !x  CL P G6|!>Xx@$xp#pE  SS z&Ex##>C!N @Jx%xQ0 @0  7@ r`G3pR @##R`  T rPQp{x@ !@1x|0  @ 1|V @ `( 0pR @1|W0@@PCxT@  v0`!|Tr@xGxUpP@Q@|U@P?Hx@xp4pRsy@1ȀqXCx~ `ZP  Ex@`0̠0 q 0/@"Ex pp5xpК qH ]9MW rZYH a9IH rnG 9IxI 97c90NP$pQG_9 9xE 9O Q89`GG r\j 191 $nY0PP'{9Ix09x @H eJ^839HT]0" Pp'rQ[T@07!9F\ ZV_@0$rYP`5}9H559Ȁ(g9I0p`PD7970@%#9 `p@@0'i9Ѕpb00%%9 ` 0kG0b00'0d0m LJ rf00()9LJ rd0:o9*0f0!r* L`@(+9J rh0q`j00:-9-0h0(s9`J rj00(/9`J rl0;w900 `0'y9 0iVa YTc 0 JT@ JT@^e@pg@`!@#@@i@0k@%@@'@m@o@)@+@q@s@/ -@+/@9 w@$$Ty@!10ͫ3HT30DT{0@HT} HT5 DT7 `Gi!9xP 0  @<PKvs/r  P%rFKDuirP @W$rD`9x\p 1%xNHp 6xXP `rU`@ W$rWKE@x! @|a|@@(X$x (Hx"!` E>F%s|A   ` 0%J|tp4! 7 E|u`tpDx@@`# x0| #8{2|BP{@$x A|C` @ Qo[&h.Kpx ж19x"л@x! Ix#6xPfxP`X0e fx`Ѓ`0;0UGxH.`1ph bNPE1x0px1" !  `3 p% @2r ! Ix G r @ x @Hx ;$r 0xPP W|@+P( W | 69xf6xpHx 0 x C0/pCp%, % %  % @ @r p0"P0P1&sd.6| b0Er""*08x$"*$ /(`p"@&$`*$0T$x<2%% )!@$P6xK ]v%%p7!!$*2s$@4*CP*!!p2;x PB(7,"P"@f %9,49$Vx&p),00% 8,P  '` 78  Dx$ p7  uy@+"0 0 p`vx&/0P,)!~=)/cy $.!0%/;0$.;w 6x. 1.30pB0U6x0.'@$jOx&P5x.0 ( 0t ďx* 0!@x)" # +" @$b$/;x% ' @0@(0(pp=#".#@';@$`($/dx =`0 bU6x*.)6/`4&&.0O@`p@*";0$b"``!p&P@@#00$ P/@b!$*;@@%..*`)p@p4x' (0$*/0@0*@P+ ` *0/`-P0;.;P00.P0:-y:`/  0 @ fbx6p !xB  p/rAp <=< @r> $<7 ;1rDQ@ 4xF0E%xBB 0r==!`Pr@?`;`5xDD``* @ ( rHCFP .`0 ?@ drFEA(<=   ( PW` PH%xHHp030(FF`0%  :=0T?0Jx CAK * %p@p9DID(::Tr?GBƠ Ap@Ay(,%BC@0dI+m0Pr<;>  :CI FdEp00%>? E 0r<00B@6xC4A?H !r?PnC@$x=`@8 Ey< h%<` %`) %0  )WrIG>@@Fx /@A  З`fG`98?B0%p%BI`p >GP DrC@p C%>>P 499:0dnd06xVL0r?8  ? %@A=оPr97@TrAF$?p>0)x; 6x?  %9 <%/#8`0r $9p%A ; : =@0< ;x@BDFH`JpLNPRT`V%pp8 @V#rPd#r@(  %`P/`!0Ƞ pDr)) ` Ts~-Wr9 x V#r  `AxÀ`8a x 001 Hx)-`%F x p6r@006x $r@`  @)0!/'-h`3r)px611 u6(( Ax Pv/#r$$ `H x14r@(Ex1 @pFr55`600 @s4r `(((`1($$ 4r1@`6`p5x͸Ϡ6@dr@6 Ax@@6s"@%p*00 {744@Hxհ@V#r""f#r,,0 0Sr(` 6##@`Z x55@6&&@AxĀ@6'' Cr$@v#r.. W#r22 Jx633 Ax4p (ϰH x 4r`(F 0 %@J x0 cr  pp4r0p(p1xPpՠ 3r`#  *׺0 p48x"`H x,,9sp3r"P׀Ā1x4 /,P1xOx4@,J]9x#$r#0 6xـ*&@&@ݠPX x'@1x*`Cr'`67 ` ݰ7+09 x+0p/ V#r6X x¶0I x/7r6 I x22@&x6pp(*p PTs044p05 99991`P+@9//37Pps2 96H G rDDpH rGZ r@@*BB'4V rjO r>>0'CC#r!DpG r88 Z r<<(7U r۬` uD GP'??@f ri r.'p,i r955լ7%@Y#rBB*;;6ͬi rϬ9Ѭ9Ӭ9׬9٬9+%*p93%9 996@g#r0CW#r>>H rOOW#r/<0Y r3D 9C8 *==@9D?`*8'WW0g#rB(;0Ts0*rAIr< 9;>' Pg rW#r>,OpH rFF`Ts(/W rCY#r==(LLPH rCY#rD*W'990W rEEi#rA5A`6B, W rHH0W rTTi r(,0Ts@8rPP@Y#rFF7= E r>p*p(::@H r.W r?51#r=1C**p70E0&50 9919 'D.>i r2(7;E rAՀ0P7E'TPW#r1HG rL4`1i r)F%+P9#P@*KK0((`Y#rF$:'SS0f r='i r:.99'E'.2=W rMMP0)$(221#r$%O1 p  G rII`Ј4rH0Y#r&S`(JJ0A r6 pU rTP'VV@4Y#rMM&@*71&W#rN"NY#r$IP( W r6W#rJHJ@W |&I |7r66 `X#rGTVP:rUU5ˮ0'P4V rM2(IY rѨ9N(03rN W r9@T V rKHY r$:rRR7@@G@>rd`6P#UPP:|G***#D)E9rFH|E 9|::5r0׀/6RNRg r H |DC@J>r@*CF %#P(NH>rGW r&R T r#E:rP 9|008r`6I |F? :|H7)6r! )-@9|BB0:|M(7)J |?3*3 (CDxW r##sH |<rB7rB g r)7?pG r7 &/(0A`8|0-Y r 3`7+׬`F |P(I>r<7r< h r-!0`8|@0 r0@8r! X>r#B7`8|7+Y>rF *+8 8H 8r% X>r 8|LJ |II*OO(KH>r!<0``9<+7(%%4rW@P8|55 G r+ P Q05Ů4Ipi%O`9WQ@`f("I |==8r PY r8%5(//W>r"+  W rWWP ) :'5 ` (0G r PY |>>:|..*11)WW:r 9 (+ * 56r (9T>r=@08|N H r J>r9P %>4W.@(10Y>r *66 )+p:| : L(%( Y r/;/P('' H | W rŪP0PP;@Y rD%6(**@W rE, @ (+@0G r Y | :|C2&4X/ rU r 6P&%$0**)G&6r '! V r" ` /P)( W r' H r' Y rA #Y>r6r @6+*@ p) @(( H>r!"Pf r%` &%    }4//80p%%' +#( %`4"+"}4/r=10?'-`Q /`V 9` 7< ==@P" P0@>T r@)!. p0.0*!/W .0 24p  P6 Ex @!#4! F `G (O}8Q @(O}<0C |d8xs 9!rrM12p8|66 ExL 8M`TrOO o 9p:p;0`*C `=P:P;R`z!rR,P ;>@4@S0Bpp6AVf>rBWP @ @A AB4BGG01rRRCE B@(B0@1>rDC@rGR GPJ*J2@4FK  9GGG  BC CFH!rI4P1rJ@J`4GN /60T>rHO I@I<2 FG1 |`DpR p@H T rp`4IIcG  >" | J |***!!(##@y0b  # 0<@` *))*++*--*//*11(33(55 P05$0c{Lpb.rA@1`5( 0P`; 5,( 2rd!w# P200!@`@ @[@r@@*@rP 1`#G aO$tB.66!`A@ Vu @yP%@i yE r EGr3G 6{Hx00/`0'`l=@r@eC`pC0 HpOrI1XAyH<73yp;OF;P@t-vc{P0 b@`h8 J6G P3i!Py`P0 (00$3W( W,(0004 @b406| &Jx%!!z>rJJ%  'L%U |$@Jw p A>r!L0(N- E |%,w#!0Ty@U%110 1>r)@P}@(@(50H |-4T>r%%(p043! 41``GH r!`@>r--)P00SG Q6{$0 8|J |**##*'*++*/*33* 7**""&&&***!.*22(%6z} 4#9+7 3$ 䏠4")$z !!2@0 p| $!0%KH y WPs6x R3<!P36@%K (08DH0*p6 `bC6x<PX79x 9fx9 0/`h@ `?J@xA xOxp@$r2@#r kr}X8 X(*@pp1| {  20x<U 07X@  @7| wPP<`?xDWG E |xx P*yy*zz({{H!rx J!ry(z@H |}1Hr 3(~~ J |(VJ!r{( 0H |@@*|@(0Љ@@(0H |@~@(0Љ@@( 0H |@@(0H |@ @( 0Љ@@(0H |@@(0H |@@(0> @(@@ rkyH | PP(0@@ @ д@@ @ @([[0 0@@ @@@ ж8|``@@ @ @*cc@ @@*ee@ @@ @@*ii@jP@@ `@@ @@ 8|pp@@q 7 |rp@ @ @@*uu@(vv@  ``3G(P 3 |2@** * * aP(T>r *x 9 *| 9 ( J | * * pp(T>r pp P     $  @ H6xPTy `@  0 $ 0 ` @@Ц(F |{ & * ** * ( ;>r* * *z ** ~ 9 ( J | * * (@>r   1x`p  Tr Tr` $ @$  @  ']V |Y &e0* a* m* i* u(q X \ d J | `* l* h*t(p  0@00p 0P    _F |[&g *c*o* k* w( s *v  `XpJ |Z 9  *^ 9 (f J | b* n* j(rJ>r      Z# [r 0   PEspPCx^#P3r@` `!|pY"p H6$~ i4PPa$~ `@ip@ /` p,.b9zEz j Pmb@ ْBЊp4 ,0N 5 , R$xp  !x0(brz{C/ym* b@0J0PSr2PC|.4|/p8r 0Xx.Ts ar`"@ @Ey pDr"00 /N@?D` E{Jfr. o6s `esr/'1x0{"N|PEx\!88fb{L@"p% px `1s kp[% `[7$r ^pr R0 T$rp'r p 2rP`$% 7TrP3N0Er ap1|Z!| p4r`Tr P% PHDr p%drP 0@ r `@XUr@  0"`@ r0 1p@ Ќ0 pbP@P0|  `G$@7V%|B 0ArP^А  p0 @r"E   P0x$@0 r`U5dD|  PV3 /.6{ !|  Ey R6T r`  CC` `_" ar 0Y0`1$~?@c/rP "$~Px@UP) ? @ubysN|H@T%x@`gA|V 0b( @|`C6|DR 0Z@0|S`4T @!W ``T|U @`  q"r r.]0pZ`& t.|`l'^P$0DPl&C|S 7T2rP(3|U0Dl |VG$~0CrAЉ   b.Z%\0  `ax@x?3 *WTTrU# ExbpHK  `V`W`&xpp1x 6{p"rQP@HP h$p t.r ( 1rv4J x@EyG b!` @W1$x`à%1x'FyEPi#xQ5x?0TrFF`'`X1xO00G%x<PCxNP`00(B`Gx0dxc']0ix % 9 3 9 0 9 98 % Pr-S6x 1T6x9@ 0 g4 P 9|;|% ExP Gr?@9| 09|$3r&$#r%O6x!3r(O04(@ )/ 3r*q5r B +PP  WrTHx 6r  %P)x `U`Hx 0V r   W W r#`4R0  `WrVIx 0DxM` @8 @H%xLT|SS (H|TT1%x@H`C|D  `H$x!KW|VVH%xJpTr0 "BlH|UU F|Hg$xiC|WWn0C6|!H # p/@x@ aV r]@rXx @\CT&@PT r@rx x \P@Hx ` } ?E,@#!VЋ mW|Z`Kx @ +"x@|[0 `0 m  "@pT r ( 0b NPxm @@]pm _ 1x1x`Ex/x'1x kW|X JxYpS`W|Y 0.dx2`NPu 6xb` ' ( @'Oa/5)0b @:P Pc p) `C _#y@H >  Ga W rNH PW c `83`B$0U  P 0@NG eJ`710K@ z8{0vV\5}@x HE rp55C@57D4g PЊ(!pF 0(i0KO r0 :##0 (kPKP0 '%B0 (mL`0 :''0 :o(00 :))0 :q*00 :++0 &sB  0 - :u.0 0 ://0 0 W wI   {X,@2`8`P+X N7yz#z*Za@ 5jZ c@`*e JX@P@*X@g@i@!@#@k@m@%@'@o@q@@)@+@Ps@@u@ *X-@r /@ *Xw@$XyPGX1@ k(X30DX{0@HX} HX5 DX7 $ { @ # . 0# /1 6x PD&{ b@@$xIpI 7J 7$rp@ @xUPpXxC|Kp Hx  #P{ 6{ސv "6|Hx TrQQ ( `  (  Wr@ - @ { / { P E0!!0! 9 M@ 9 S 2| 0~`" JMw@@%xU@ %JS@ ِ  7 ` U ȰM0 /p4UPp9JM ` 6 W ` W``` ` %J```S` ` 0`#`` ` !P``T|!%f/ p p p p'p@  `%````p PP Z/ ppp+pp  `)``%J/  4@  ( F /|A    @)Bp 06 J3H|CV|` %p0 @FP* E|>5| P`4(?(@ 6`d|1p^  4<  0 0 Ip50pC5|: 50 4= 0(;V6|$2 x/E -07Bxdr=/ !l Pr P#!/G ^"00rD = O  E1$xPD%&0(0D+@%AG14Q/}@0#6{0PZ' EWf rE @fIzk#r& ( 3r @x 8P9(@ 9rP 9|02rc!Q cS/ |ApI@`(9i@( E 3r@6xЅtO|I  E6x  0 xͺpQ@ |1p2p6x     R@RP``R(`;x `@  K#` ,pbxPH6xEr*x x$H,@x3p+!<PI Ax @3O%! + %L-Hx $Hr!+@ $Exp$$7IWr#HHxE6x *@*F$x`/0$+ .$T` $` x0 0|"pb@%xB | ( %Ux0h %@| 3`  #p H6| H|@@$xpp#Drp@'#d|!  !r H|݀V|% @dr"00wrP1$rݐ` *$`   I` %P2xзpw/x  02xP  p `Vx@ `1r"`p2$xPp0 2x$66{6b7`0b%@Gr Wx`Hx 0` pV7@Hx 1x 86|E Pp$@Wx P9r 1x ?@xHx P0# ( P P(Ex X%Upb r`6xp&( Hx@H$x @pP6xp(@HxHx T|`% P @P@(P@x(ExP( 1$x@Fxxx"6xp Р6xЋRx M#6x% %PP`$@W* `uxP "pp !ix46x#p%% hx `# @ 0(5xP"0%0  ֠L P0| 1P V#" Z@ @ |@3pR @R 8 hP:ptpTGw  G-!8pRTr,P05004<,S0!p!Ty@,Sb L 9D, S9H, S L VS9P, S7T, SE$x2`3h4,Pb@$*0080&0R|0.@r1`nPU Tx10PzOPpP" ro U6x1@ 3Dpx@Pv04S6x1Qp-%1.@`03x | #0?.Cp@!pX`{Tx#1P`O "|@#'%1 `Yx'1 P"py`/ @`'#)1b@`@9+1!p@&@`@%@+-`@9/1)(P@@`)@)@/6318@9511,P.@` @@ 1x1 uE r5 02p@T|  p * `5А@0Gp #0 S;xpH|8V$xـx"*y7@ Wx @$~@9Hx @x#)0@x+)PE;x  0@( !*Ў0 0*P 1) 2)p 7*`f5*``f6)h  + 3)Ќ p+> @xp $/x1u  Px UDx`x00 0P Н%̰A%u/;xРpd|Ǡ(" 6xԠ ֐Pc SQpKxՠנ0|ɡ@<2;65xĠ0 Ɛp*p p|x/%x @@K|+Pp@%0|0 pT}I|0P(΀@x0Px(0@|`ʰi|ϐ!05H P|2  %%47&~! aTsA@%`&P4 4*cy,@&0ps6cy, 0&93`@&x p%*paNxl1A6 ``?p:Ӱ(@P`@+d|4 */:ǀ`Vx  Pr؀`XxǐTr ɀ6rP5x@ 0pWr`0`@@%|BP`(001rA9x6r0 0P)ɍ"1|Pp'( 6x   P` P'iOx8 `D|#`(01x`5`' `'%88)|9x 5  @"(#8  & %3|! y3Hx 6x 4 `@;@%( ;x *%pP% @p@ *" %# @5x *$|!4r0p `EFr00@+ ϰ1 4r@) PX0X5`D|0p5xҐp6r @ 4r0@T|7 @PPPH%x 2 D|6pp4rҠ5 94@;xɀFxװP @P 8x`1|3rɀp04r@ `;x```Ex˰6xp %`5x0P%`(X06rϰ  p0 Cr P0 p4rPCrFrא`P @ Hx4rPCr P`@@000 0@Ax00#| 1F@@ 0 ) `3rPp `~5|P'se#| x#| H x H#|$$ F#| GsА E#|((`O! P0F#|%0`O#| @Жp&)@j/#|@@9%$& -@*""@0%$10g/s %&&@*$$@%** 0&x&P %,,p%**0P).@`%p0P('00*00pP$Г %`  PH#|.. J#|22%660% # "@@#@p&$+@O7 x@'P*&(3@/  @/@Os+*`(..0 @ `6E#|*7`Ơp*b`p$`fs 1pfps PDr0)p*Ώs"" M$`/ &p 3 Vs(P6p)P" @5Dr2- /@P1`5r-3 8|ccI#|44 Er,0~6%@(#8|ddPY r1 *`` % 3`Z*\\0'@i r&14 9'''+1P)$% 4 9&&9339"('70/U r@p#r(`<3 #r)d U r4`Hr` 8|ff V#r6\ pe H |`aJ#|5'/ds54p'(.f r.f#r.ff r W r61f#r\_0W#rg r10H |_XI |db8r.'`3Y r11\9''(\,`I |YP:|]])p7r7PrZ 8|X^Y#rYd6p_X |[[0J |Zl)`nGrV#rn]PW rf rYYf rf rppf#rXXX xH |btV#r[0f#rZX |ao0I |dwGronJ |fq 8nX Er55f/ rq-(X2V#rbbi r *Ǡ60hs9|ee:|^k*mm*hh)sGr[5bH rbH rsV#r*ep*^&m i#re6chX |ggV#raaPZ r$*d$*]%9`@*6eeCr$ 0FIr,  iV r00f rc0cDr@PyX#r4g:|,iP6&@f rZ&aCr0Pwh |tu@4r& pH |lr H r` @W#rr)Y#r$6jjg r@Y r4#49-71#r,PXp7## H r2Y#rt0t05 526&f@Z r"(f"G r+PP ri+Y rrr8h,3|+p*"*'),#Hr5PIr%($9Y r%]A`d`7 H r)` I>r,9|9|+$5r!<0%@= 9|@9|,%Gr@X r:|$)0'! 0@ 6jh>r)+Gr!! Y#rl l'30 i>r+,@@!89| ְ:|'*,)FrPf r**Y |!0:|**!***# *0&***(E>r ' 0 &,  ( J |**'*9,( *-*(vvP1>r@UE>r!Π9##4*#,P *- 7 W#rv2vW>r% H |m11>r'0`Grk3lPX>r$$ :|//@9(0 (0 J |1\*2Y*..*34*l6(ooTDx "Irat+00@@ }(2 E |.0$0 rg7vpH |nn`p *qq*ss*rr% 3:|4X &/ fO |1*o&%l*6[P*7](aaH>r@(E>r&mp('n *$p 9%% (q J |s*&r*!6*7* a(5Z0 *cc&)4@*dd *hh*ii*bb*ee*ff*gg*jj(kkI>r'6|5 $04:|+` 9&& *(c )P*d %! (h J |*i*b* e*[f*#g*Yj("kE>r+Е`m4((9***#% Y0("[P $b P(   ' А4%[А9Y'W>r$`@[0`Y` `Uw}8U>r))/ P O7p*%("9|# +`07(XP )0;x$/^ 'P*@ !0%\0P%P@0 0 !000XXpp 4[@ &O0P #P$2 Z@[@ 0xX@@!P^_ 9\\p  ]^P_Ps\P@xPUxX% @;," uh;xXX00:%\pP% 0%\\"@#0p0` 0pp` @Z`#[`p` ( `01 _9|"`(`T rsps`9rrq7sspT rolo @9rsr 4nnm P9oro 9101 9non %22p`91n1 4,,- `4112  @ Y r3.3P4,1,P`:cch ),3 ;iid c %74pi x2,p;5`50702<0 vI@9D9H 9L(9P07T84eej4,,5 4kkf e ;a6a k 4ggb `a ( P 9,g  00@540@3/p21 p2@r٠(#8+~@2 `262@(9x 2@$xP<9xp2 `2222"p21+p20p21p26p24p2`pT`5p2 2p2`2 2 p2@p2`0p21`2`02p221p2('4 p(p00(p2 140(312|P;pO$~11; )p1 0*2P ) 2԰1@ 3222p+*701 21912(Ey 2 2( T|6*=&sϐ2 $4`P%@2  ,)/ 2< 2ib.%x45*P+`))0@' p) *Fxp)'D|32%`'ex0 (ʠ2Ԡ2@p2Ix19xP+p)2 2 *2@6x2$0( Ȱ( `2 p3rа:``*`-03p0.02 `2 @2 `*0@3 2 3 6x 31 2*! 0% p PY( 06x#22221 0p2% !0p2^1 0 0 01I|"pp2 ` ƀ2 P5x`4.`/Ő 2 2E 3( 26x 2 2 2 %!  22.00P.(D|0`*ՠ p7&@3 2p 213н`/ 41x@Ӏ2 `41p$5 P3`2`9pƀ: 1ɰ1Fx 2p   1``P/P0Đ@0P0 P2/İ`@  2S|qqMp`2 3 3p 3 1p1$` 50@ 0p2`Kx`;Xx0`4P1 Ɛp2P30243`   2302P2 Fx& 1 2 2 32V r.04P+01@ 2'*G#|12 2 @21 "2 01@2102 02p2 1/ 6s / p0 1 2P@2 10% 11 P3 `103W x1 @22ʀ2@11 22#0(p2030@"1@3   1 214@*3 02P1.PP(1 `1p$023pp1p`*P222`2&3!/02*3 3 0235@ 1'9P3 b.1*O2^* .л2&12 10 "02p2022-2p3'r0122W#r @,U r!*'Y#r!"`* 2P,0P, 2Z r"!)'@)I |0-@1p22 2(2'2O222-@ - ?2Z xP0 /03 2; |$4 2)0Ԁ)|22 *|X1)r%4V#r$$P00f0(," r8@:82&2P161%X 103"&*!$)/-&|b2 `0`2$/U r4*`P&^01)---7r,/Y r*, 3Hr 8rqX-V#r66W r,/0`$ 331H#rW#r/$ ; |Z3 3\3:|$_6 3W rYY Z r6P4 029 |21Y#r]6**/)\'$f#rZZe rπ )8 -0H r177`.P@3@/_3a3I r59ro 7rm*Z#r2`((@61 rb&Fr\ 8r$4r d`1+|l`3*.0'İ4DrP1 33r( 1I |$024r* 2+|k 4 02F rrZP.P@16Zap+229//'gp&\l`Z#r2p8*%%0*0'`3 666f#r`hi#rfk06tt X#r(W#rj*j0G rP86600)0:r`0(.05C rh(9k23''0W rXXi r#%ff`  &*+'ijP+ 1+|/)2:r#&8)e1:r+&jpP0 0*'0P1P1%0*30 @1 0\00:r528&)|wp8C*) :'``pg>rp*9 |)1J>rP-&1E>r%-% 6wwd>r0'%09\)204GrG r167*6((W r.3@+0J>r)&,31 20$4:|&**% 2J |'2*1 6**.(2--J |. &(0 -@1&+ O2F rnn*+3.#60-  1@*%/2('ʐ.V#rvvp.)Ƞ*&1.*1!*,, 2J |l0 1 1*3"@027rZZi rw)ctGrdv7E>r*#`.P2% `.`8|!1@; |2*#,*/p17 |P2"3I | p3243 01 0$1 2*mm61*7 1 1  2!!p.p 3%#/ &01 `3'2(" 0; |02&032219 |17 |(1p5@4 32 2 2 2 22 3P32132+`2 6`2J>rP 22 222@3Ġ2`%*0%(Y2#2@2 1[011P- 2 22"2Z!P3/@3/O`22`22`20* 2P! 3.P/ 02" rr#pbR&x$@3(0 P0P0 0/02p33 3@t, , 31p!|sPC;x((*:: % %<<  *@@*BB*DD*FF*HH*JJ*LL(NN 10 01 01@1Z2P(&x23`1[@1@ 2@%PP 5%RR *TT(VV6G 8`x |^A J |tI*99*8=*AE*IM*vQ*QU#88 *99*AA*^^*II*tt*QQ(vvA>r=80cpJ |8s 9EA^ *9< 9MIt (AD J |^@*IL*tH*UT(PT>rQQvp 991=H6x=g1>rA$EppIM0Ty9 0 QU Q0E r=0#A@$IP&Q0#G w&9;p? *^C*;G*tK*?O*vS*CWp *;; p*?? p*CCp (GV 1x9`$ (R J>rA;*;: *E?*^> %IC@p(?F J |tB*CN(vJ1r8@,T>r;^;49@`?A`1>rCE%8;` >rGGIƀ%8? CG @+99zx7& `8 997:_ & 9xp7( %p ssg%  (:: T rqqn4PX @:@Hrs0@J!r>>@7rmr@J!r@@ %qq7 (BB @r:s`3: (DD 6 rl7@*FF %qq7 *HH 9p@*JJ 9lql@*LL %-.7`*NN 9ll@*PP 9003@*RR 9-l-@*TT 2P8*VV -7%,,87%--89e`e ,@ /ii@7p7,a4@7i@;5b5 @7`777`,kk8`70;c6c 7;7d7 c 17@k78p X % "" P <0<0 ` 0 Y $`@ < = p 0p0Ȑ4Ȁp\ " >P< >C| p @BDFHJLNPRTVWHrp @<`@?TGyt llxp:6r(`sƠ ` 9@4/prp4&r)psp?C*@wk0w w 9 " 9# `l 9 vhO6x+/ v26|k vAyJ( p v e0/(0`jmx5x-s w80ob+p F;x$lp`o|A0/t@pt0EyK(pt" e 44lB$ dϭ$%9$~$@k9|%k6x 5P &P vx 4 &` e{ 0-ďy1%x$9 pm`n 0fP)~8=3luyM9h9%Lkix"Pu Y/$x9p9Mu 9x!fui( " t hu! P6pu! pgE r ix ?v  ?x ? ? 6x+?vVsN;9v@vu@gur uP sw P0 0Kpz0w1v0@v uu:`/7pvz0wPvv)*+ P? u Pvuu0uu t0x@uuu uv`vpPvupu@<u8%x8@sdx> h(:<69rAo@|=9 `s0'>>`drB<0p:E|D;t@(<=p;x"PC#@C0(BB0@|9= :pr+r; o ACA8E%xDD 0|;?; %@A 0|FE8`J%x89 =A >@P@6 ;J%x:; C90 D@9x!CJ%xFF0 D;B0@n0*BC0 >G!<0 PD@|;C\ F T|==pED 09F?+@` >;P>p 9E @P %@ 00rA[ >0%89 p7H? Ey?@ b 7E9#00%O@ fB7C=+ =E%xHHP@+E=6x F%DE@ʰ  @= x94=C `%FG`08|8E@ =<;H:Pq W|>  @=9%x< pm0F0<< :Kx9<$=0 %;; P>9@p(>+mA0P/@%CG@9=4r P I x50)|P:G#|5&X x"07sX>*''0(##0: |@9*|Sn 8GP=&F#|-*pH ;E8c6; xQŐ9: |1P:+|iplj_P70sPo P&I95:*|C;*|U`88x\'@#rl<0M"07gB 9 xs9 |Y;: |Wp?)|[<: |b< k2sT@P 9 |f08V#ro>]Dr-08 j3r' Z |ak  ds̀b@ % ;4rS  ;*|h9&|u8PEsp%`v `5]p *|q<&|r9p7`V#rp W@i#rn(b4kRe@=4Z#@Drj[ @9i0i9hJh6ffDr#Ys*Q`6e0i#rb9Wu GL?Y#rC!C91%19E;E9555QVc`y/#rIAI 9Y9Y9U)U9[#w9c=9a-a9^'^9__9``9dSd5M4q 6L]r V#|++ *r.*q3(t/I x++:xrr(qqDb E(v2PG#|36P r/?0) e r:?:A5u?H 4w?DE*77`4F?F0@8xttX rD?D DrP?P*OC6r?@B='8?@W r?09W r?:d rK?sNN0-7r? @W r?`;f r?C$/ 0A2 b rR:R 06BFBd rgFg4.s@E7r+/rd r/:kD4r0b`4s?T 35x?3p05Hq0P'KPlf rbKbU xK7@:`!@5xvv 0Fr>P>@d roPo@FT r@D@ 06mDmd r7@9\\@'O >W rDOpwS r&O 3 @4NON0KP{7r*O>*AA*99)=3r$,9IDI(D:p=J r\O>%"ZEIr):U7:FE>r@=0 *|`?5rPOPe9>@ <1>rP`*R 8A ErV8V` 638Qi rJJ*8s9\%p0 &vOm/0P@H>r:m#; , =J |#V*%J*&7*K$@*DD's:r.O@8]v]9|??0:|""&89&p(,pxH>r # W r60 Y r7S.SJ>r%&P9(&]pk*2 *8*E (#D=H |': W r4MW rkvL@>r"PL=M=)!6` @?*-- )"SGrlulY r(wj90i(Tx>@0rhǰ I>r&>GrWW C |L(MJ>r!Ȑ<(N+J>r"-@<(ll ; |Or =S?)TTHrGZG!r5p=V;n<(UW`q)8r1\ FH |N ; |`=)ASGr[P[@p P?q)EV0+|?(PG>*W5 *qY@>P*T=GrjF`J |QC`& U0A*R1 `=aPp(c3J>rb0BI>r`DGri.d@>rA6|!P*p*WqIr_H_`<$?9E E)QP:| R*@`#0?(rIsD r*d)0*f**g^ 0?I>r!+|es%q/ >*h_0`? ; |!`@0s@>r@# p; |#?) E)| `@Y>rD%D (Cg ; |B0?"A%0?G0?F0?y0?4C C09B#B9G"G4F%F`T?0?@0?`Dqq#10 p>;l91:#08>;01;`9`15 6qp/}8pA1m6xH=

q"49C`P?;@ AE;xHH=!0EP79B0 >q4;F` %< :o9o8,q;o:4^<o 8  4?x>@ `O`q` [`>q5=:?<4:;q?<1= 4_90 Peq%mm@:7q7%mm:97%mm9 9qqp@%lm9 :ONO )lq 4PWP `9OlO 4LLM Pp5 p5@9QQRP4LOLP`*c`89LLQ p94LLc ;SST@i qq*ggr;LLS0q pq$q(q,q0qq*aaPq*LL9 99LLa 4UVU@ 9%ej:`U q)Le E q5<@7/@7@-@7//-@7+@7 @7[B@7@7@76 @7 P6 `7 `O%x-P7+ 7 2@7*7p7P7`7+ p2 7p7O P7 p7 P7 p7 P7 3P7 7P6 7p47 P7 7 P7 7 P7 7 `77`7 7p7p75 0  5`7<7p7 6@5p7 `(6 @7  0606%5p7p7 6p76p7 p78p7 8@ p7pp7Ь046 6 6P4-77  7 0750777 5 07 707 7 075P`x `77 7`70707Ġ077 P@7@7x@7~5 p4`67@7 5P7P7,4`796 6p7m @4-b<7<7 p7 6p7 6 p7  877)  `7 P7 6 `7`70 p6 `7 6 6 p7% 7 06 6 67 76 67 58 P8 8 65^Т 69 |_6 8 58k8l88 ;#rjP6pP6 5V#ro`64(rn7 60 77 l8>)rm6 76 7 6 7G#rfV66&Qp67 5 7 6 :u+|q5 5 5P7, : `7P7>'P7 @:87_-_ J#r^p7`7 : x27'ru6/p7 @:@5637`7 P76 x860:06q6'D? 4U r$u 2: %(: 5P 06&x:5P'D2 05 `| 7@6 086 rH7΀7{07p8U57 }2{K66{,7@4D:@87 /75 7w77X x77p7's`8 @7?@7 075:8)0@7 7*)85'2@ `7(ns3V r2-f r___ r8D@7 7@7< ?07P 66 p92 67r3K66Ir, 6 @87Z rVK 9 5(KH6H r^D 9 69 rD7 6C | 3`` #6 @7 7 7; |76 `62 6J rj+47:'+u<P57'/p<54 6606 7)rT5Y>r"709b/b 8#2 +|77 6/6i608*4PM5; |L0*!00 6)rep6 `8 7d08""7rJw9X rhw66 69 |6J>r$986 p82 `6*nn 69|Se 6E: 6 0:6`8K0: : 7U7q7R7*,,; 7 36=p6 s 7A`65,|Q 7EN 7o 73 7 7*|7'|P78%6%)r-07J>r'K46PP7O@7*VV(a,07*Wb 07)|`:X>r==)r.P7; |!6 @7 998r[H9@78A A+|7 <@9#7@7 @8b@7*d*e6(g.@7c@77@7f7h`{ 7@79<#P7"8%7; |CP7 7@7%? = 9>#>9C"C%B%`7P@7 <@7@@7=`3 6A/ 7`5P5 7@7`q83@3:07P>p5; 75pv 6pvD8&+xHpv@pv=pv<074=407<6 6x88 7pv"#DDpv5`5|tqƀ8 :| %@@@5| ** *""*$$*&&*((****,,(.. 5l 5pv<` 626Z57<708 6[6@ 5|00 9%22 p*44(66pv! J |v)***!%*)-*1*15#**!! t*)) PvJ |11(2>rAr@@tY>r%!^ * 9-)v (!$ J |^ *),*v(*54(0T>r11p 6;6xpv!%s)-0Uyspv110`pv!s@*) ! pv&pv&0#*'*v+*/*3*#7p * p* p*##p ('6 ;xpv(2 J>r!* *%*^ %)#@p(& J |v"*#.(*1r@1T>r^0fppv!`1>r#%%pv '')pv%`v'pv ?pv?pvQq p2;qpv ?u%q0? *  ?B` @( @0 rq;u*"" <@*$$ v*&& %nk<@*(( pv*** 9oop@*,, 7nqn:J!r.. 9mjm@*00 9nno@*22 N[0v*44 m ;J!r66 4MML@<4NmN0<*PP=9MNM *VV`%MM`=@d<9MMV ;TTS@d ;beb T 4`W` `b fp=9MM` *RU=9MMf 4hhc `R `v$Mh P P6@X`BYPB  PD @  P PB@ PB 3pBq 0(tP B` B v= v @Hrz%pr 3^w @ w`v 0w  u"$&(*,.024pv6pv=@xs 4 {E3F OLiWrjp V r=  lBx`@ @$rY1Pr0G!0wJ | **(E!r *(H |@H |WHrH | J |(1rp}*(0H |Pr@*@(0H |@@*@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |#@@(!0H |@@(0H |"@ @ 9{%@O | @@E rAP /@@H |0PEy q@7xx@H |yy H |zz0H |{{@@(||0H |}}@@(~~0H |@@(0H |@@(0H |@@(0H |@@(0H |@#@(0H |@!@(0H |@@(0H |@@(0H |@ H |0H |@ H |0H |@@(0H |@@(0H |@@ 9rP3G@(J |0J |*@  J>rP*  p* 9 ( J |**" >P`Fy@"0d E6x0 @`%$#cG |M(F |& ****(;>r@( %U( ;>r * # J |**!("T>r`5rsYr%0  U !##!0!EA0&00 ` ') @P(} F |yoP **** (!@x @| @ J |***"(#@0@@@E@4O@@@@@@(F |{ ****( <>r0z @(" J>r*~ 4!* $o ( J |* (#Er@# @@   @ $@ @ Wx@r0'Pp$x~bor PS6x@BWr)P@%x@ |Y0p2`Pr "a @$x)01%x@$F fG@  g@s 1B@1{ 3> 1;1rK11@Es @00F@2| @Ap "~    EMTGy E /qA{L2!ypC0z@C%x@pOy @qyap$x `y.u$r cr URs P pp0 d6x /rs1KP!$! d$r  p  iOr2raK@1$rP0tr@!Ї!r @ r1pb0@'r 0 0T'r @  @P @p@ @$ ES0$ `w $!rv3601 r1pRv"$@pr`3??1xP 010x T rtTڏMM`R/y2bbr#yPCxHr dz p4pqHx 0!fz0 #b @ y!VTPF@@x pC = @p@ 2{>a"r@?O{ R$x61xp~v4|/Y# @r0 3 y.&2r  sx P|4<p$0@r @@pP 01 r0i 6x<  _# T$x8 1x4 0`1$x1x 0`)1x < @r?"SVr 0Ux 0GxP$| `p8x A$r 1$x CrP`F$x #  @$|A{apd%r @4 P0;0r@3p%H`"@4 Q 0 A@@p@; pE$r P4UPp =0x%6x"O@4!   pF)0x"`A$x#c{`5x U P !x  @!Dx# 6 @Ax  05r&P ax  0xUpp'  r@-0rC0P `4Er= $U "PT0r PTx|> p '' &0X%rD 0@x"0$x`/ !$#!x !xCC@r6$rB P%UU0xEE@'0x  (="xp?U00Q/| 1U@r0 #`x`@%xvD@| 0(Pr? B? !BpB@C|  . !r]!xM<`E6x[U 8xD;|pJPP!rKTx  ^&|P)|U r?6# 4 w6xT AxE6xZax^PH6x\ ixn0 `0 c6xb%dc p%f`  h3j(l`3p1 rB0lS6xt9P@6x]]xopB@ A|N)0 3 1pB 9$r` HHx] BxP0PDx a #0 7 H|QQH$x#G6x @:`@x P rZU#R` @W6|L pVr#d$x`@$x!  #N  W6|!;Hx@$xSSp1|M q` @##; HxE$xzUs!Pp   53pR ( E!` 0 0x0 Hx C#R @9x T rTU0a @ xx@1x~@ a"|XRxPB r P(@|YL`@P((1xV!OpA|Vz ?@ 0@|W`pp@`+0@xp4pR@ `Z`cy@@-PqCx@\PPSx ,q!@y qEx %po `8 _J'\[Z c? pW ? 9xW ? W e?T rrUGa? 9xV ? Fx 6? `^W 1?@ 'p[06x(}?D9x06x U g? `83?pV H" Prp'tU0[V@0F!?!0^ ZXa@0$t[P`D?6`55?@CȀ4i?"`p`PD7?70@(#?pGE rbp@@0k@N0d00(%?~` 0:m?&0d00:'?'0f0oph00()?JJ rf0:q?*0h00:+?+0j0sMl00:-?-0j0:u?.0l00'/? n0(y?H0 `0:{?20T0pXQc YVe @ JV@ JV@g@`i@b!@p#@0k@ m@%@0'@o@q@)@+@s@u@1$r)PN !/-P+/P0y@8 $V{@!010!x 3HV30DV}0@HV HV5 DV7 `Gi!9x A 9xMXr @0rHM:@`sr 0P   `W$rF`9x^p 1%xPJ 6xZP `x`P0@rYMGP@x! |@P H0Hx p @$xYI@Hx H%xJ9x@H r~9x ` p(@@|AQ0~0 Zx *HJ( 0`0 0 000 0 @@@0p00000ʠ!` `$ؐ@#p  6 0p` 4@&P!/0PP P8P&@PP%>P0'0G0@!rF$J@@pL@p0R00&*/ @)pT@ X@EN- \EN  ^ PFx^&/P1P`1| p + V3!|` Y`  @Z6 uO|Fp/@p] Z6x\&P' /Pp$<EN30$ YGptx@X@7D `rC$p"k" 5pP4EGr'`7` 0`/O!O& E$x&"d"F@tx  Ə$350 %;H@%0 $06 0 P@|  P$@+@!$*%P@J  $p%@ #B"`A|v`1$x%!#pC|C"P| !8`! xJ B|w@ v;)QB;x?Ћ`s/v. r: @d! Ox1u@   px  00 U@  "P#p @`+0UG4H.P%CP&"0@ 1|#  !0U r::hx 1xP9`ix 0Ax8  0G r`  xWr 0x0xx Pe6x Xx W| czP( DpQ txCP % ( cxpPF  % * % @P&y0bNr!0)E6|!`P) PeP!x P$ O@Tr , Ex" )( # 0'0x""21x#p" 14##" ) # * , #*y45x9,! .@$6(@0*@T|!,0)PFx+PP $ &WDx(@x%0P '0,(P$"% 8, .V @$x3 `& /18@;  ` PPPE6x'3&fx p@3&"P ,@x)3 &3-30?0Ey.+w6x%$p !p V r%c6x%3OP3 f 6x131 Fx# p P(Ty. '334 |"  `<0T@e/6x30* b`0P x`sy 000`DxЁ$E6x53'?@  0 "* c"x`oU6x!3(z%#3(  r;|@33? p@$x: @E%x<@vHx@4x 0(P`X x  t @ P3x"pP%33)P!0P 0 0r:;1r@ &;P"0 @@0rHC$P :Ap= ATrFE?Pp pJ%xHHp ??`A(::@ @*FF  ;WrCIDP   <;1K 0TrDGB0 ;H%x>?   @?;0(BC @TrGEH0pP@K`@6xMC; 0p м0r>=0MPf=xP;0PP04C<5r< ЈE$x= @ %< (%

>@ 4AF `@s9Ő1xBP@8HHxA8@}TxE >0U`( r9ǀEx9`(P Tr:pPi/xp9x;Ex9: p}0 0 `%=B` `~P`Ex9:0( TriOx"4r  P @ rY1p`  0^$p`P>  6x@ D `= < @&CPFxB @;`Mx: 9` 0 F HJLNPR`TV % P#  [ 8"8 ` V#r@i#r96 E xxF6ЅW#r `Hxɼ ! b/sl@ p p50P4%Pa/#r(P30L`E%x̐" Tr  F%xp!н4--00611 dr 6)) g#r$$Us(д7,,01xP`'0PFr 644 P aix@U#r 6"" Zx@6&& Fx(O#r++ Y#r** ۀ I x1x`g#r''@4r-  2sñ1x@f#r//@@`7.. 9x9 x6x@`633@Dr1f#r66 677 Cr@;Ѡ5ϰ%Ex ׀*)%0 ( 3r)Cr5Š'װJ x`Pp@ Dr@Hx״PӀ``Axٰ@ !`ۀ @@p6x۠@$0@0` @$!8x`Ex$p Ex p`00Zx(`0( "4r0p $ #P @ 9x0 p$r#($& +Ђ6xPC](,,@P(00 6s`H x**0P%&%&'0 's47(2 pp)x1xЊV r@@U rAA07ɐT r° s, V x@4 5rDD` `s9` PpEr̰%P 6xp42*@0%//p %ӂ Sr' p bV#rAA@W r@°+(..8 x,V x06/` `V#rDCrp5rCC'FFp74 Ts@" (EE@Y rΰ(4G r880U r+J`4/` V &ʱp+e rб( C $41F` @&/R`f/ r>>p6Ri r4J`İ 4! @9ɰ99ݰ9V4Ds6.pp4(  ( .H rTTT#rE-E0&.(F,T rD 4, (-T#r8@ذ500)0/5r''2$> 'ʺ`/&&d#r'T (::0Y r&A6RU rR @6RV'Z rOOP*'V'99 C r?1F%`/65:Z rBB0*NN*;;'LLG r<< W rHH/6e#r7Oe/ r<@5Ʊ 5@5?)?@0(;Y#r99*P66W rpW r f rıf#r)B)#N6;;f#rLX r==0Y#r!< 6L U r7=P9H0(:.0H r*W`G rV(0f r(9 ` Z rSS@')`Z rBƀ*(`*PP@6f r;8rII@ P :r$@6"f#r== 'J H rN>V#r*Cr!  6SS P'GGCr p(KK J rMM(UU@#rW rQQ f#rI f#r++f r*0X r0G r@f rSi#rGGP6> f rf#rKK0f#rMMf rP,0W r,@f#rT!U0f#r3#3Pf#r//X rɀW#rQ@W r G r,X r`?J r06 Z r 9 V9 6<W r.@i rW?%%  96E.  f rK&U rP3 9'Ci r' 0f r 3V r ^)Ir (0V r W r 0 9 @9" B6 Di rH0'@f r! W rF i r# 7 Y>r9> > )PFrN N `bf 9"" ' i rR R9/ *9+ ( E>r!Fо`(#PHDxP@$ 0 @н4+pe%34>~1K$ ( ,Y>r+R (+ Y>r/ 6/ . P 4&! `O+%/ЌĠP5|*O4)N6GrJJ=pp@p71G T rEO00p8r `I |K$p:|WW*JJ*V8***I%)H&6r j/ |S- 5 )R1 :|)Er00M@ 9TT7ݦ(@ FrW Z r'0W r@Y |M)9|L2FrDI0W r!W rG * 6Y |p:|7*0*(***U'**TT****)7rF0Z>r(AJ>r(PI>r@7r`i>rD!D %C 9G G &@%`GrB G r" W r=0i r?' W r<p `@ '>d>rF#F%A 9CC%B ?P9= =4<<`%>!  0D :пT rP} ~94@} 9JKJ 4 00rQ7T rVVW04J05PU`4IH04@@, (V~Tx< `L@07V0 p`E r0P;xD506Z r*(Ex80H5P8r0J r*'PyP@" Љ(   %L`F!rsG r Z r!!'""dHrP{'2p H r##P@Dp06!r~#D ~ `@ 0~30&LLPp `u7r$$Z r%%*&&%''ʀ f!r!` Hx !@%((p %P-OЃE;x 5r))@***'++X!r'&@r$%$p4JK  $$#'(,,pE rRS`*1>r` .{HF"P&)(P@ `*..4);!r)4R %P 90@`;!r'4@P/ p[ r9=PD%H r22@N04@J!r'0;E rp:Ap*444BL@%`4P'--P  (// H r11 G r33 @@'55 Z r66'77O`'1x+:9`r& 06370%)pW>rCMP@P@r+ 1p9|NE rTU O0m 4~p2~ ` PrH&Hp  4#PB r#d r04F p4G!P6 I&@+H rT6r@$p{0$t+A p880wSu pyH }sH rT THr# ` H" .y Fp``r-2{Nh";@qy Pr0$P=0h0(P 10,Ph@00P 04P2*08P 0rP$vFr11 U r0pH@4)J)p|@LG rLpX r%!z )pC6x) G r9@X r8T>r1L1(!'$f r-<*%0)0;$$9`%Wp>r--0@$p` cy-0 SGPC,"& 5##9''+@p 0W r&W r; `Z r**%'2!P':P$#`P4$$+9&&37((;@x! ,0 4"50 !P`x`4%%*0!, #` ''&&@y )) (Ey !%pX);HV 1xN6x @#ȐP  (08!pBrp ArN`!6]Hx @xPA79|bHx0C6x: <`@3|` oBt&AE8xHx }XXSHxPW|  Y|  1rJ3PM`3}xxb 3D}X@b0?xD`WG`G rxx Z ry*zz({H!rx J!r(zH r||@G r}gHrG r~~ V r'&br@P *'0X rV@*|@("0H r@@*@( 0H r@~@((0H r@@( 0H r@@(.0H r@@(0H r@@(40H r@ pH r80H r@@(<06y  @(@H r@@@E r @ @/@0'D0@ @6XX@f rY@ @'ZX r@@@6\\0 &] 0V r^^0 &_@@'`P @@6bb0` @@6dd0 &e4@'f &g@@'hЪX r,0@8@6jj0 @@'lPp@<@6nn0f r6o@'pf r:q@@@6rr0f r>s@V rtt ))u6vv@7Fw0E!rD @3G3rO@ 9 # 99 9  * &4 9x 9 9| 9 7 9 9 96d>r p  P 1>r   % ` E6x  $0 M % @  @  PP')`[/ rP ' 'PK>r9 * 9z *9~ 9 7 Y r 9 9 6@ @ 1xpp  Tr Pr0P$ `% / 00P5 P  @ *  P  p** *  *'@ H 0@00 0@ 0  /  7')3P  p  @ + ` * *  *  * *'pW r4 P `71xY*/0p40@Tr`*|P0 @  2s#Ћp@ЋSbx.Ћ3rPPU |ЋhV!pWЋ pQ/$~ @]  / * #y.J P% `9z 0@0`ab%x] W p 5 *!x&/%`8r @x@@3|,C|-@r p`k,P2s %B"PpY1xqEyxNr1x@%-m pfr, m2s psr-1x0p@sh|PEx[@% !@p`s ~ Ma$$r02r15%⏠ 0 ppiA'r P2r4MPUx%@7@$xP @6x@0%a`0|{` `@Cr o@$x p pWr %@'r P5rO0r  WCpbQ%P7 P@ r`1p@0 0r ``0rO1%|@L$p1rVp@$ 1r "H6 00 r@d%|<   PD"r35pЍ% `5xPPЌD| "P^4OP%> RP@$|0Аn#Tˢ6$ ` ==@ar #@!  І1$~;5@#0-P @%x;0@ROr%ďr(Cr)*'&/ "R6x ܐ Њ0x\\rHx Њ9rpHxEHx\ )x 7$rk/x 0pP`1$rpT|L  @p`Ix )xЊH P ЊT|MM  $(@%xH`H`@|RRHx9$x!Њ@rP1%xЊ0H|QQHxC|SSPmC6|O  Z@$x`PPlE6|T? #L }H$x@T|!T@i`Z( C Љ kV rar0lCP0 9xZ1 rPЊX x  P` @k Y 0!2Ex`Y0@|X ` kP P l@Y 0 l0 T rc15x` '0s '@x`j wb `D|V `/04W 0Gr?@ B rU$aZtbP p' (0'OaZ`%)P` @) 0; P | `G iJ@x 8 I  6kJ0T& Z`j J @H mJ `83J-V Jp  'ZV oJ@`c21J:xd7Jg`g%J J@  55J/@57J0.4qJ PeP0&!J00  0'sJ0e0 0'#J /0 'uJ0_0 &%Jp10 @:wJ&0_0f0'`` :yJ(0]0 1` :{J*0]0h0'+J0  '}J 0[0 '-J20 'J!0[0j0:/J/0p}@@0Pk J0p !`*P/P  Z7J k@Fm@`*o  Pp| q@s@!@#@u@w@%@'@y@{@@)@+@P}@@@`-@ .L PP%`0DV0@HV  `;Gi$ z 6xP0 Tr ,  p 7 - 6xHp΀ixR @$xK@0K  `A $r`C|` ` 03(9xTP Hx @Xx  H|F QxO `3 C|G &` @  ( HxS0 H rb   6xL  y ? Ax#0|PXAr`" OWx  &rx/xF$x@(9$r` 3rs Q@4 $|!@HrA@H xܠ3r"p0%p 0(@@|D0`H6xԐ2rp8KP0xԀP@x0"x`hTxsA0t@ | 0p2PFx    0ptP``x ;x|~`` pP  0 @p`IpI.b0 @6x$ %(  1p@OHx Cx `pW|Bx#p# $+0($   P$p 1 |*"pbIx #@2| C|0#H #P@%x` "@K0O1%xp001P"#Gr A$x@ 0H6|@2r/0! P RrW0000oZ    `*$^@  FxY/x 7! Exp)x 2$x@Cr ,# '3r  1x @ !9{66rՀ-@.4|P/%!r (0|`){}2r` @0x ,@@$x@݀Hx C6|P;x *B Ā) 0x/1x ?Hx G P/ &P&* p;pb"0% % PP{( HxJx 0`%`( 0Jx % `"P@% `pzx ExP@<6xP%`İ(ADxݰ xx`3@xpx p Zx @zx @ 0#0Z`Ex!   xCo6 @| 1P Е1 |R3p" Z0 R \ @R `f` `@p*p: t PD@l ! `R `R48*`Rb  Mr00<*00 ;1@Ty@*RR9D*R9H*R9L*R9P*R7T*RHx.!*@$x0p%.b `.@/4*fhy2% b| .` d/6xPP r B2  s x OxЇ PB r@@$bP#,5pB 3pp p00,#"Q@6x3x P%*-P4#x0 p4xp00*"007r"00@.p"0 #+ % `&{*0,p2 p!R04x(0)b ** Cx8/4x*P`+Y0.@/0 1p@@3`406770G.@ C|P A;xC6|@ @r #8090~p39x I%x8x @x9) @$x@P H;x @x(p  7(@@x8)`f5)+mf6( 72 3(p 4)`f1)`  *f2(h   # -* /( @x $p/x P~@x   Px !O` @`x00 0P  ݼYn`!@| <e/%x`0%d0@% 50|#1Җ6xư@|30`(`;x0(0> @t{!/@  ;70  `}i$~pY|5`@@  H%x0|62|"3H`|X`0sܼ( @|@x0)VL @%x@P|1]  (cy*0.|2pTy*`fxPƠ(1x" 0 @Csfb.xP$ O ?D|0 »)P6xP< PĀ;$ A@pk@@ Gx`@p?( 1xPp"$$Ppp%`x36r0x  Dr0 P$% 0Ex`@r`x` Ex @4@ %(;x°Exp 1|`@x`9P A &6r`36x@ `( @P0Hx@ %0(0 @pmD|0&|p2&2Ex %p-3 PEx*P% `%ppp* % 00  @`P%&|P5|`@ X\ExĀİ @%746:xpp`45p:4ppp 0 `p 43&x 42   @J|1`P)xPP PPP(X6%x4/ "ppp p0$%P@@   @9x3r0`P0 `0Dr@P 6r@P P@0 0 P  P9x0 3r@`@#|)!CG#|0CrP!Exp0 ``G#|PFx@' Crp (09 xP`]8x  ( 3rp8x@G#|""' H#|##03r`@:x`($$* 0'&&` PG#|''0Z x"#P(((J x#$ ***@ H#|++ 'P*,,p'0H#|..PJ x(* (// ;r`(*+0 PJ#|%%+pH#|00 3r`*,.0(22 .Ќ7|330X#|pJ#|`J#|))*--*11*44(55H x%%H x/0G#|0 @V8x020J x23* J x!!*))-0J x11*34(556s.Pt5x  #\E" %(D|cc(ps0|9p04@!S09'') +`9--/ 911933455u#|47*Џ&"p0p/#rcc%*%ddPЎ`5|ee 0%66pВF r.Ѐ%ff@47r#2W r."aS r7"@@3#rddc |__ 1r%007"e0 'x6P *``P%$p0Ercf@*(3Y r(3H r@Y r'!1l)'9))9++'-0W r/3i r11(3@E r5?6r@36#df r#h#r__ 8|[[PTs44(1F r#%(aa@W#r*`py *$@`yAs&W(,H rV r$_f#r[[&aU |_Y 5|aZ 0)\\FrpU rZe466(XX@X#r_5rP6gOs(@*bb@6_af#r"\PX |mm0H |ll1x\#0` HrXX@5r 4Er!7cbF r@(_H |ggV r @pP9r!!8|Y]@W#rm3rX |^^0H |iY#rll@m@(iv0P |\.+!2*V rW rX_f r44X |wwPJ r @'\ W rЉCr7&& X#rg8|]jpW#r YF rP,@&7*hhP8[^pErY+l0%a-`#r'6P3u`4r0W#rimip3rl 0 6r(5iO r*8|dq`W#rwwPG rc4Bs07r`H r0~Z |kk`9]`6&&0W rU r[@`7^hW#rfG rm6 hf rh6iV r+bP7@G#rflX r6)H rj(0W#rkk3r+ 8rd(@C |*(gr0J | *%%*`)&&HrƀFr@2P8riH#rk+@E>rP 9|nnJ r'6^'^V rg5P(i)X>r%p8r'5I>r&9|:|*&****%**)776r,`8v#ren`h |( 0:|)#)oop8|ppX>rEr00p`b4& Pb4%0b4Er-@ 97 6, f re,eS |( *,)****-!(ttV#roo0f#rbph r7r&0` p$ (ss`J |+(*@sV#rttf r/pW rb/pdX rk0`Y>r,P522 (3J |..*,*/\)08|#V#rssP`-(!0J |5 `)' Gr2Y>r)l16|.p`*+*,*/)%:|c* *'m)6Hr]2sGrf1fH>r#0`J |0"*1$*2[*6X*7Z**`_9&**"j*$**[l @1>r`8|0Y>r *1 9%% *5 ' `*2 9  (6 J |7*(`J>r!04""Iro4$[$  &@0'33i '4wE>r@%%(pp@pp8|  @$R@H |j^0  *ii*33(44`Ѝ :|i4І@C8|cY`F |!3@&$g &%h0&"40*la * $ *#%*0*'d&0&jp*e*bb@*&]*af(kk><p8|c` `:|l %! `@*#"(' J | b*[&*Ya("kp%@ %@9 Y %"[ 4@0@ p0 P00`Y19[# 4p0@>rY p[Hxdڐ* p7#9,p7/!T }#!!}8P}8|?80C;xdHxHxT r6 %Xh* @9``7@%\Ў`'pY r50506* @4``@7221p@yp)1*`8T r5`50$[ r-*-@5<@ W r252Pp5@0T r./.P;-2-07D04(()00+-.07H 09++,0;(-(07L(04iji0!/5P002>r04Z!O07T804[  X@ Y$2Z`" [^ 9_Pp!@}xX#T>r\\ ]P^@`_ Tx`@(+4'' i 9lcl 9'(' :e $'l `;bba  `;&k& b 933$ &P `:%%4  `0#TxX@0ʠ\`%\@ %XX u;x\\:P @`0p? @+   1Gyf>62P 222I$~p26x@221$x`zp. 2 26x`22Pr (=2)2/2021262 p2`42 p29x52 p22`S22?/2 (212(2|,10*4`) 202/`2/0(0 32f&~R,4102 *b2/26)ƀ242,52+p2O2@2 P2 p2p2*Np221 (5|4P)2!/P)) 2İ)fx1*2 **k)0*(p 3) 2 `+(P6r1`2P+@ 1`p+,G|»23@2p2p.",2 P1-&x-L! %'@* D|pE 30p20 P301 3* 0% @01uOx 03)|`4 p 1 03 0 P1 01P1 2 % 2Ȱ2  1-2p1 ( @3P 03F@426x 32 35`344 3  2 `2 P5`20`20pp210p2 2p2 1 22p54@p2-1@345` 2 ; 026|@3 202222@2`1P1 2@1@12@101 3P 01 301 3  01 @1 @3@101  1 3 1501/ @1 $ P1 3`1+ P1 @4p `1 1 p11 41 P1 41P11 P1 41 4 0p 0 4 0 4Ā2 @1 42 4 `4 & 1@4 02 1 @ 1 3 0``  p1=3&|71Pp3P3O @3 307;03N 3 `12-*r$ 3@!r21 1 @1;#r" 1 1Ys$$( 01G r"1 @1*`30*p3/%#"` p36 |"/p3 2!c3`&"2 02 O@/3' / "P+ 2 232[ p2;6#r2p2 22 1H rc@4 21 r$$ 0/ 0`2@0)|Y16 |\ 2P,1 64YY%\2@3c2X 1!r^"5@2@ @2 1W rY\0. 2:OP0 1 V#rXY#rc0 p42 - 2 48#rX2 `4 /X r\-P0*e4 3X rccp/ 7 @- 438#r`-Dr I |a21 1 p5+p2 p2 p50H rXX, `18#rb5`0 8 @07r_P70. 2'**7P4`1H#r`5 ;2 05 @3 @6X rZ[/02'!p8p2 .p35]@55-1J rf0'g8 6h23` /ra 2j4 051 2@2- 5]H#r03`2 5G r[h: 2p2'k W#rhlj` p2#r q@ `2W rj`:p/1P2)`P202 2 1P2 1 P21 `2p)r.`=p2&n-2p2 028 @2 8@2p@279(.P2 @2 1/|,@2 020p 7 22 03 7Z |22/@2+ .@2 02GrbbI rl519rhh= `2, p2 p32@0; |@2@2p2*e @2m@2&= 38r3F rii`P2!6370/`P2 .*ccP2a 2 32l`2T>r'm-21 2*kk 2 2 2 2K |6 P2@2; |//`2p6r.op293t3 )%l037r4w U>r$k2Đ2p2p2! 6 p2; |e4k@1(jj 2p2p=@ 2 2Y rs@ 2 1+2@3 2 p2* h#3; |a6l5 2m 2d@2 4 *onp7@321; |1`2İ2*m0 2 ( d 7 |'3*%g("o 22 2$% `0/"'2&.2%2'2p2`2'5p24p24|0p2/@22  p",2 9xp3 `2b_0#0,")x 2 `22$`.7f86x@. .H |::0J |<<(>> 8|@@ J |BB(DD!;x@(FF J |HH(JJJ;x@(LL J |NN*PP*RR*TT(VV. /p /121O/ 2*䏐102P 21``19x12[ @ 4hP0Ut`G 8?m@E(^A J |nI*99*8=*AE*IM*pQ*QU#88*99*AA*^^*II*nn*QQ(pp@>r=8W$pp:*8f 9EA^ *9< 9MIn (AD J |^@*IL*nH*UT(rPT>rQQpp 9906$=pAEIMTy9 PcUrQ0Ex=g0#A@0{=PI`3Q0SG t01F |9;;&8? *^C*;G*nK*?O*pS*CWp *;; p*?? p*CCp (GV # 8|rR J>rA;*;: *E?*^> %IC@p(?F J |nB*CNp`P1r8P,W>r;^;Yr9`?Ap1>rCE%8; GGIp$8?p%8CG-  97<P:6>r"@ p4 0;`_<" p:@' @ ! pfPY>r ' (<< T r77b7P8PHrff! J!r>>@7`c`@9!r@`@7J!rBB 0 ;6!rD@@;*FF (16 ;J!rHH 9070@*JJ ;J!rLL 9001@*NN 92+2*PP 9-0-@*RR  ;*TT 9--2@*VV 7/,/T6x@P<@;4eej09/`P9,mm9e ;aal m `%kk <`a `;gdg k ;oo g `;33h o `*ii9+((9:` X !@ p?@9 P @ p ` @< 2>r<` `3 @4pp\A! <1>r]^1< 9_= 9 9E!r: f  <>@BDFHJLNPRTVWHrp :"2}` Tr.wm0m{0/ 36xm r%B.0rP PFV$x+pr9fFyC.pr 0lv9v0lvfxv  x `j6|;0 0TP 0Ux8Kl@vPlV;x ? > ?6%x2+2?@x<809@x>809P =: ;P ?: ;P`<p0$<0ouyI2nhn%H2n/b;< Pn9" m @P9@ @9p8 7( @7Jx 7* 7%@68u `lux `@ut/v % 00uuup l`} j8 89$~B6x=pn&xB:0u9r?p<(F6|8;sCTr@;6%88h7<979$r9;ErD @ %E{ʠ%KDp%JD "i7E|@t 7(= @|?0?0< !|9`l9 (<<@ :9x D6x D%>?`@=0|A:P70|=@@B%@9G|9? 9x vj(:ABpD B@|F`86xD(pwD%FF8@> GG <%::@ 4@9 @ 0|<@ F0 >;0> E0@EƠ*FG%<<4A0*>> Dw/|:G p6s=u b)?`E-^ @ T x(DD T|  *88 *>;.EExD;7A9T r=4*/o@$E.@ =Đ*:AP(8  1#|fBjQO|>>q>`>P>n;0H E jF5D8 1x@BD;Dp0V#|P4 1x?>pA>>H x4 0D@+xkk@ $=>D19P9H#|PEx>?P0`c`"'xkg/#| !@V x ).D%>ApA`@ @0s;Ppl < E9r?P Ex<)xD@p'%php4"j5% 6ax0< Q/x< < Q0j6r$PD  @r@)@0<@ ?<l`L@9sG7x<`p*>l0rP @3r,b @F#|-/*<S6%x =3rE F#|80pp<Is-!xl`Cr0`/*xM/`I x8 xP`F%x  ;(# q1x:0D `3r@p 'F*pG xDsS/r#P`L'@$=N``w`*=+`&<<`(+FG#|F20X x== 4<<:)xPPH x C FLl:x::0tC9F x.@t`AB0bp*33@'77B Pt6 xR@pPAZ5 : |69&xCs@ @ p5xq709MM033 8QQ rPbsS000!qP9:: @ Lsn 2sPfΏsNs='|+`:56jK<.K? F,0(3IPt6rF!0@%,!9P8`DrBKB  !H`0*bp4dd05PP0o 5C V r= 4vR #r\\` 5q &CJ@0q @p9 |.nC r7J0%B@@*B9 :Fr9J9 Z r;J9iJG*MJ9QJQ f rSJS Y rJ@mrY rUJU 6WJWg rA%dT#rB0a`p @jGrJK:0V r=f r!=\d#r%1b@P Pp8r:KH r=C7H rVK0@X#rL$X:r07p@9K>'CCi#r$ ]@5>KN 7%Bj09o#oY@ r; |/P='TK>V rRK9%?^` op'rKof r2K2Z rK'8K:i rKv*`K0j ?8r\jPEPt> gY#rP4l* Rp9>(Y 9;9( 7%'w0W#rkkH r(<>@8n0:|ZZ'4-@5W rP-P q@9*L7#-`@)% 6c`H AX#r[O[Hr7VO@7r`:Z rO9':u P>7?R? Y#r')Zp7>T) 3r:` Pr7R@tW#rhhH r)M0=W#rG5c`X#r"m0 y nW#r++@J r#U'RU h#r6:6`:rG655X rbr loPJ |*E*?*0 r:|;;*>>*==*\*55**,9AA )@Irrg%*0m@3|Ap`J>r; **@ 47> p1%=87%5r ,\&p)FF:|GGE?*D*CC)BBGrJJ_J r,@ 6gHpm'j** l(FH |E r:(B ; |H@A*JJ*KKI?J |*1)!#9r8 @'|u`L&G:&D`*C&/@ ()>  >*K :H J |I*). *LL0*NN*OO*M'**-`G(44 J |9*-(*"(#3I>r:| & *0* *)(++ ; |"+LPN*'O(M04p%-Pq%#*n+ +;;'0)0Pq'pnH |Q$` j8 J |``(WW q0(d8tp;q;.;2@oq&WP(PPJ |UU `B Pr*RR*S%aq*VV BdP@f ? ?&QP&T *P%UP*Bq`?*%R* Sp?*'V$pB; |! ?*f(&g?*?0@1%%B09' '9$$(&! u q@91">rp0$qt;%@?@5=mpp9190#xpP<@P?#x~ >p2  `0?&&  = " 7x$V/x&p;x*0r .02`4@60@0 : 0@?8"s0@%E rOO709KHK0Pn T rNON@57JIJ@pqr4KNK009[ rCFC@q P7JKJPp r4BBGP;CJC0$r9AA@0B0`(r4DED0;ABA0T rTTW0@r0r<@=@64r@$<2 >=@5:;4Z8P [: 9o ;@< A7r;0r<rpp6r0(8 Ar4AAD7beb T 4PPU Apr4``Q @P ;fcf :4dgd `f *RRs9AAd ;VVS R P4AV 0`gr@r2?/ p9?8 9*`8  09 rB7@@8 rP8 ffr/@8@8Wr+P, j1@8]@ @8P8@8@8@8(`u""@8'7pP8P8k@8- P8@88@6@8 6@8" @@8 `8@836|2@8/@8(@8"@8=@8*⎐q@8/@8;rpP8 )@8@8`< 0@8 @8, @8P @8ʐ%E@A@808@8P8/@8^ 0 r 86 p8 088 @8@8<@87s@8 P7P8P8,P87 ƀ88 P78 8 88 p8`8KP8@8 @8>" 6@9P8U 6P8Ơ6*: . `8 P8 766 `8 6p6 p6 7 7@5 P97  999 8  8 09 8 909Rp 8`7*Ġ8N8 5*5V/ xi`8p97 65 pG rA6s7 G6 FsV7`'66=6/6@8C7O08*:* 8p@9: 9P9fpsR8 4N 4Ji"Ъ `35(90 9`:5 0x0+rN5j5G rv9u 606 5:p796F : 8`7@:40603g r*KV6#r``:0@6 P6>#p `9P;p+rK40:{9#rU2*(V rJ!` :9KK 3 :*rP`8 9 P3@9 p: 08 <L@4(%G@4G rE:24:@99r:A@9p;: P9770 w 9 3;#rBp9708 ; 8 9 :)A@ 8:#r!:9rAv8 G rVT`2Z rT04 7(1r7:#r`8 p8*C@;(TC@;7 0C0:9#ra:9( F@4 9 8'`-P 6 9:#r-08 8G r?j`8;&jC<0:6a9f ri>iW rLGDr>P: 0:3r= 9+rc08%28J>r,3,5J>r232`88 `8*<94*rh:9|A P8M 8 @5G#rD>@:9=9'!v x25*%1+|P49,9 ,4 @8@:r+W e :o7`7W`8 3Ip8 78r;;0AW r/=P8,7   4`4@4 7 4 @4*S; 04Gr$r[J |!@0,`8+|%<p6 74`378@7`804`8S `8 404 5 `6@8 `808 `8%,0(+ @8,y+|#9P8.%)9J |"/*P@'60%P8 p8P8+P8,P8)P8 %,/'P8 %507P8 w 7 P7 P8@8%,080P8 8P86/7 xp  `8 p8 8 P 0n w*oo70wp7P87@8F @8m 9 |%p8J | ip8' 8*$k!wJ |n(&o@8"@8 px*@@ pxD4(p0sHx< 8H |00 (E;x@@@4( J |""($$J;xDD@(&& J |(((**J;x<<@(,, ~ *00*22*44(66@74 n84$92`448p4O4 px8p`nP7px(8P7 4px 6px! J |r)***!%*)-*t1*159'**!! px*))*rr*11(ttг ?t; | v9%!^ * 9-)r (!$ J |^ *),r:|54(v0T>r11tp$pP!%)- xupx 15pN10=xpx!pxpx! px1upx&px&0#*'*r+*/*t3*#7p * p* p*##p ('6 `& px(v2 J>r!* *%*^ %)#@p(& J |r"*#.(t*1rPpx7^;rpx!p1>r#%%px '')px$`x%#'px5B px5C ?=@`B@? =A@ 0<Fs%ppsG * 7> =H rOP@H!r@WHrpp sH!r E rNN=*"" @ *$$ %ST@= *&& @ *(( %UR > *** 7NNS=J!r,, 9IJI@*.. 9NNU@*00 HAJ!r22 9INI@*44 9MML@*66 7HIH@px4WWV@Ġ4HHM0>4chc 9HHW *mmx9HHc %g`@x`xP*af0%HH@x ;kkn a 4ool ` x4ebe ` xd e ?HxD `?Pxx4YE  `xnF B`  B pxA<GA=A8px 9pxpxp` px "$&(*,.024px6px=Wx Hx x@ ( rpb0v +3p71Bx '1$r @0!`GyJ | **(E!r@*(H |@H |WHrH | J |(1rG(0H |@@*@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H | @@(0H |@@(0H |@@9{#O |@@@ r/BO |@@H |0PEy a!+@#xx%(yy@@(zz0H |{{@@(||0H |}}@@(~~0H |@@(0H |@` (0H |@@(0H |@@(0H |@ ` H |0H |@ H |0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@@(0H |@ 9rP3G-G@p(J |* 0* @9@* 9 * `W( J |**  p#p0@XUyZ7 Kx03@s0%`fG |&& *****(T>r@  $#P!( $@* %* 9 ( J |*(1rsYr#   % p$ - 0&00 @ %V' @0&} &y`&0****(@x @| @ J |***( @L%٠0PP0PА@@/@(F |{& ****(;>r0( @( 2>r@"J |z +`~ 9! ( J |*(Lr@ @@@ @p  @%@r#px!!0@Pr 1o$x0GBr@ @'Wx@@%xI1 |1p2Tr' G0$} @F@ S2s/X!B5{ՙcx.OBrpEs @00F@1$~r@01 |@@p @T| Np  Ԫ  EM`ZTGy E A{\Cb>u@z@Cp%x'OyJC$x0Sya$rq  r Pbs# 8`d6xJ`s P!$ $r  pK   iOrTr@L!r P0tr   L@ r'r @ 0T'r @P P @ r p@$ 601r36001pR0z"$@`prU@4?p P 0101x  T r PuTڏMMp@/ya3rP\@yC x Hrdzp4p F P0#y.e:P% @p@2{8"r@O{ R$8` `xv4| @F @rR03 y.&`2r  vx 00xzE Ar 1pPTx: 3*68xP@C6x:`P@Hx 1p:$Gx@T$x 8x`@r?"SV r: A$x@1 r@F$x` : W$xEx @T{`wr@$|  Qx`@$r `sr @@$| :@Sr R 0x;pCr2@ @%|:pwxЊc{"P%0 N@ `Pp: fx @$~ `/x=89F0r:#`S{Ɛf$ @%%`$~)`Q|* 2$x@|NC@;P|M!T%x)@Cp OpE  c6|J;bdPG|RAx3P*X|N!r M (S 7*pczp U0J_PR @6|>; 7M1$rR7 O01$r S Ey-@"$ E{F  R r P 7p >p1x@Q!xp e.y# C p!7Q> (` %"`0Ё8Ey uh/ybc{ d % @pd$x Q`U Tx 7@1r#5~'` Ax0$x&z#Txp6sz 0r+`Dx&!x"``1x &r@  4 P*? ` $Q@"0rAFx@  B Tr?P:i#H%r 0@x$$x Q @%x T$x'cr oCr  )@x""#'x5xQQ0  CC0+H$x&p@r(?3`A0A@@@ P("|p Ch1?Xxz800xtB6xvppW$x1%x@@@|3(4@@0@r?`1?51$r[KP:0C6xYQ0E6xP0 w6xX B6xZP16x\K0#^@`n%b P%d f `hn@j#lk3n1pPr`H%xBC| @H@@!rIP6|0`+|1x9|dW| C r%5@Er%0@'-CrAl@}49#@ܰC[[4` Qxo@ @|L* C 1pB 7$r/@@@HHx[@ Ex ! e )r 0I$r  )r @ P I$r@xI@Dx!G`  MM 1P @%xF HxH|NNPH`1%x@` ArR8 !0pWx 0H|OOH$x#E1x 43? D`@x4?&XP1pR G|J@@0xp!Ex !x  CL P G6|!>Xx@$xp#pE  SS z&Ex##>C!N @Jx%xQ0 @0  7@ r`G3pR @##R`  T rPQp{x@ !@1x|0  @ 1|V @ `( 0pR @1|W0@@PCxT@  v0`!|Tr@xGxUpP@Q@|U@P?Hx@xp4pRsy@1ȀqXCx~ `ZP  Ex@`0̠0 q 0/@% qp5xpК H ]9MW rZYH a9IH rnG 9IxI 97c90NP$pQG_9 9xE 9O Q89`GG r\j 191 $nY0PP'{9Ix09x @H eJ^839HT]0" Pp'rQ[T@07!9F\ ZV_@0$rYP`5}9H559Ȁ(g9I0p`PD7970@%#9 `p@@0'i9Ѕpb00%%9 ` 0kG0b00'0d0m LJ rf00()9LJ rd0:o9*0f0!r* L`@(+9J rh0q`j00:-9-0h0(s9`J rj00(/9`J rl0;w900 `0'y9 0iVa YTc 0 JT@ JT@^e@pg@`!@#@@i@0k@%@@'@m@o@)@+@q@s@/ -@+/@9 w@$$Ty@!10ͫ3HT30DT{0@HT} HT5 DT7 `Gi!9xP 0  @<PKvs/r  P%rFKDuirP @W$rD`9x\p 1%xNHp 6xXP `rU`@ W$rWKE@x! @|a|@@(X$x (Hx"!` E>F%s|A   ` 0%J|tp4! 7 E|u`tpDx@@`# x0| #8{2|BP{@$x A|C` @ Qo[&h.Kpx ж19x"л@x! Ix#6xPfxP`X0e fx`Ѓ`0\0UGxH.`1ph bNPE1x0px1" !  `3 p% @2r ! Ix G r @ x @Hx ;$r 0xPP W|@+P( W | 69xf6xpHx 0 x C0/pCp%, % %  % @ @r p0"P0P1&sd.6| b0Er""*08x$"*$ /(`p"@&$`*$0T$x<2%% )!@$P6xK ]v%%p7!!$*2s$@4*CP*!!p2;x PB(7,"P"@f %9,49$Vx&p),00% 8,P  '` 78  Dx$ p7  uy@+"0 0 p`vx&/0P,)!~=)/cy $.!0%/;0$.;w 6x. 1.30pB0U6x0.'@$jOx&P5x.0 ( 0t ďx* 0!@x)" # +" @$b$/;x% ' @0@(0(pp=#".#@';@$`($/dx =`0 bU6x*.)6/`4&&.0O@`p@*";0$b"``!p&P@@0$ P/@b!$*;@@%..*`)p@p4x' (0$*/0@0*@P+,` *0/`-@0;.;P00.P0:-y:`/  0 @ fbx6p !xB  p/rAp <=< @r> $<7 ;1rDQ@ 4xF0E%xBB 0r==!`Pr@?`;`5xDD``* @ ( rHCFP .`0 ?@ drFEA(<=   ( PW` PH%xHHp030(FF`0%  :=0T?0Jx CAK * %p@p9DID(::Tr?GBƠ Ap@Ey( %BC@0dI+m0r<;>A  :CI FdEp00%>? E 0r<00B@6xC4A?H !r?PnC@$x=`@8 Ey< h%<` %`) %0  )WrIG>@@Fx /@A  З`fG`98?B0%p%BI`p >GP DrC@p C%>>P 499:0dnd06xVL0r?8  ? %@A=оPr97@TrAF$?p>0)x; 6x?  %9 <%/#8`0r $9p%A ; : =@0< ;x@BDFH`JpLNPRT`V%pp8 8Es6Pd#r@(  %`P/`!0Ƞ pDr)) ` Ts~-Wr9 x V#r  `AxÀ`8a x 001 Hx)-`%F x p6r@006x $r@`  @)0!/'-h`3r)px611 6(( Ax Pv/#r$$ `H x14r@(Ex1 @pFr55`600 @s4r `(((`1($$ 4r1@`6`p5x͸Ϡ6@dr@6 Ax@@6s"@%p*00 {744@Hxհ@V#r""f#r,,0 0Sr(` 6##@`Z x55@6&&@AxĀ@6'' Cr$@v#r.. W#r22 Jx633 Ax4p (ϰH x 4r`(F 0 %@J x0 cr  pp4r0p(p1xPpՠ 3r`#  *׺0 p48x"`H x,,9sp3r"P׀Ā1x4 /,P1xOx4@,/]9x#$r#0 6xـ*&@&@ݠV rPX x'@1x*`Cr'`67 ` ݰ7+09 x+0p/ V#r6X x¶0I x/7r6 I x22@&x6pp(*p PTs044p05 99991`P+@9//37Pps2 96H G rDDpH rGZ r@@*BB'4V rjO r>>0'CC#r!DpG r88 Z r<<(7U r۬` uD GP'??@f ri r.'p,i r955լ7%@Y#rBB*;;6ͬi rϬ9Ѭ9Ӭ9׬9٬9+%*p93%9 996@g#r0CW#r>>H rOOW#r/<0Y r3D 9C8 *==@9D?`*8'WW0g#rB(;0Ts0*rAIr< 9;>' Pg rW#r>,OpH rFF`Ts(/W rCY#r==(LLPH rCY#rD*W'990W rEEi#rA5A`6B, W rHH0W rTTi r(,0Ts@8rPP@Y#rFF7= E r>p*p(::@H r.W r?51#r=1C**p70E0&50 9919 'D.>i r2(7;E rAՀ0P7E'TPW#r1HG rL4`1i r)F%+P9#P@*KK0((`Y#rF$:'SS0f r='i r:.99'E'.2=W rMMP0)$(221#r$%O1 p  G rII`Ј4rH0Y#r&S`(JJ0A r6 pU rTP'VV@4Y#rMM&@*71&W#rN"NY#r$IP( W r6W#rJHJ@W |&I |7r66 `X#rGTVP:rUU5ˮ0'P4V rM2(IY rѨ9N(03rN W r9@T V rKHY r$:rRR7@@G@>rd`6P#UPP:|G***#D)E9rFH|E 9|::5r0׀/6RNRg r H |DC@J>r@*CF %#P(NH>rGW r&R T r#E:rP 9|008r`6I |F? :|H7)6r! )-@9|BB0:|M(7)J |?3*3 (CDxW r##sH |<rB7rB g r)7?pG r7 &/(0A`8|0-Y r 3`7+׬`F |P(I>r<7r< h r-!0`8|@0 r0@8r! X>r#B7`8|7+Y>rF *+8 8H 8r% X>r 8|LJ |II*OO(KH>r!<0``9<+7(%%4rW@P8|55 G r+ P Q05Ů4Ipi%O`9WQ@`f("I |==8r PY r8%5(//W>r"+  W rWWP ) :'5 ` (0G r PY |>>:|..*11)WW:r 9 (+ * 56r (9T>r=@08|N H r J>r9P %>4W.@(10Y>r *66 )+p:| : L(%( Y r/;/P('' H | W rŪP0PP;@Y rD%6(**@W rE, @ (+@0G r Y | :|C2&4X/ rU r 6P&%$0**)G&6r '! V r" ` /P)( W r' H r' Y rA #Y>r6r @6+*@ p) @(( H>r!"Pf r%` &%    }4//80p%%' +#( %`4"+"}4/r=10?'-`Q /`V 9` 7< =P" P0@>T r@)!. p0.0*!/W .0 24p  P6 ;x#4! Fi|`G (@}8)C @(O}<03 |3d8xs 9!rrMp8|66 ExL 8M`TrOO o 9p:p;02`*C `=P:P;R`z!rR,P ;>@4@S0Bpp6AVf>rBWP @ @A AB4BGG01rRRCE B@(B0@1>rDC@rGR GPJ*J2@4FK  9GGG  BC CFH!rI4P1rJ@J`4GN /60T>rHO I@I<2 FG1 |`DpR p@H T rp`4IIcG  >H |@J |***!!(##@y0b  # 0<@` *))*++*--*//*11(33(55 P05$0c{Lpb.rA@1`5( 0P`; 5,( 2rd!w# P200!@`@ @[@r@@*@rP 1`#G aO$tB.66!`A@ Vu @yP%@i yE r EGr3G 6{Hx00/`0'`l=@r@eC`pC0 HpOrI1XAyH<73yp;OF;P@t-vc{P0 b@`h8 J6G P3i!Py`P0 (00$3W( W,(0004 @b406| &Jx%!!a>rJppw  'L%U |$@JP%)) p Y>r!L!(N- E |%,wx w$@U%110 1>r)@@(@(50H |-4T>r%%(p043! 41``GH r!`@>r--)P00SG Q6{$0 8|J |**##*'*++*/*33* 7**""&&&***!.*22(%6z} 4#9+7 3$ 䏠$~4")$z4!!*z %% p| $!0%KH y WPs6x R3<!P36@%K (08DH0*p6 `bC6x<PX79x 9fx9 0/`h@ `?J@xA xOxp@$r2@#r kr}X8 X4Jx@pp1| {  20x<7X@  @7| wP<P?xDWG E |xx P*yy*zz({{H!rx J!ry(z@H |}1Hr 3(~~ J |(VJ!r{( 0H |@@*|@(0Љ@@(0H |@~@(0Љ@@( 0H |@@(0H |@ @( 0Љ@@(0H |@@(0H |@@(0> @(@@ rkyH | PP(0@@ @ д@@ @ @([[0 0@@ @@@ ж8|``@@ @ @*cc@ @@*ee@ @@ @@*ii@jP@@ `@@ @@ 8|pp@@q 7 |rp@ @ @@*uu@(vv@  ``3G(P 3 |2@** * * aP(T>r *x 9 *| 9 ( J | * * pp(T>r pp P    $  @ H6xPTy `@  0 $ 0 ` @@Ц(F |{ & * ** * ( ;>r* * *z ** ~ 9 ( J | * * (@>r   1x`p  Tr0 Tr` $ @$  @  ']V |Y &e0* a* m* i* u(q X \ d J | `* l* h*t(p  0@00p 0P    _F |[&g *c*o* k* w( s *v  `XpJ |Z *  *^ 9 (f J | b* n* j(rJ>r     @>rZ# [r 0   PEspPCx^#P3r@` `!|pY"p H6$~ i4PPa$~ `@ip@ /` ;484.# l- @C @3  UC#@$1 .H T`?@ ,,pC-1Ge@0'@@@!A @(C@@/@@@/@@@/6@h@@/0@@@/:@< @/W@@!@ @B  @"<T 0@@8/X@@/@@/@@/@@/@@/@ @/ @!@j@ @@@pwD( @g*05@@2@śD56(1/t@#ly/ @/@x&7*@/@ 0rF+@ @#@,@@#j-@/=.@/@=/@C3E4@ @ @ ( @// @@/C@@/g@@/d@@/r@ @/@!@ &l@ Y @. H@ /8 @.@K@ z@.`N@@@.Q@ @.T@ /. @.W@ k@.Z@ k0P8,  pp 8P i 88 )PU(@((Z ELF3S  @@Z Z@8@.shstrtab.'ym8_shndx.nv.info.text._ZN5cudnn6fusion9matmul_dqILb0ELi128EEEvPKvS3_PvjsbS4_S4_\V?osharedXFreserved.0.relAOrelaXAS/64@UWVWR1qBV!XW!XS U VWdebug_frame anv.callgraphprototyponstant0r?[Z[l8 $1 Smem.offset0 .0__nv_RSMEM_0_0_alias y :M L ] M s}2W3! sb   G`   M} g,  200 x & S$ @|  (( $Rl<6X \h%h8h&l\h%8D8P/ R S `  0  0* 0Tx!7"rux!9p%  9X9P0uL09H9D *9 <9 89 49 09(9$t99!P)**+6 6Ns @`h h 4 S|5(0LDpA{1bzSy 'x?{u@D@ p"x?l @ hzpi % CpC`b$~P0 |pP }n 0 0czpPCPp rpPΏyB#sP b.0 0cSP{ p6x/sq$r/$rDO'r V  h $@a$rP# 0|00p` 6 W6 ` W@ 0@S0x?c{ Z6(`""36Pa%p/ @ "% e r?0R 6$r SyQ &Dx0 u$| PfxeaJ qOxP Px`P@rT 1(Px- Ax @x?0x p ? pT$x  #P0$ (xp`ð@ !!@F0Pr!" E P@pp7pWx@xP$ @x ? Q/$x[``0x `03p@`r?ppr@?D1p#G%0@Cpdx`P@ r @pR10`B  A0# @ hPW$pqO|806$r0r[ <@'GPP2pR@2P B  P20@B199)@$x` Gx 9G)3x%3xtT "P &(*@.`02468:`<`>@B F`H`JLNPR`T`VcGy8cz S{fb} 0@x? $ 6 sz P FUx `| # 0x  8p  *Np8<u6x @ /O sp *(6$r@aO$r P@pȏ$|  'r `4@ @ @ 2p` 9  5 0  * |0 0 as l4  kpP*d. 4  Ȱ @05 0P  @"r ! T$x P'| @ `P 1%~  @@HxP@$~` Xx 0x `    T%| p3p` % D|P P j@x? ([0T$0 801x@$x[[P 4 #X[ArZ ! W$| Ar " !x  Ar `6 5| pp5| Đ  p#x133p4 p5|Y PG|p p@$xYY p0 `P|@3ǐ  P"r 1D1x0 PrZ Z P|@ @r ` Ұ7 p2y   &~] p%x   \]Ey@uy\f"$~P@@\Pf/y0b@DxY aOs6|PE6xns6x b  2p`H| 0|[@pz@!p D~[ fp ` 5| ! # #  1@\ /AR  `  0O  P6;wbx@P< @`@2 C~0P`!|`k`R %p |X`Apt "bP!@1$h C@  0o_N  xӰ/pc_ p `#zpp  pp(K. P`g[`@ r?`W X0+ aNx `!p@LA!r1 1R0PB01d~01$X 0 @  _r,``D" p  P`(`T  0 OP`0'/P@P8P'P#yL@"S{  rx`( @x? 0Hh,aNx p p`x4?%  x @Jx #| @P%|L ŐOyap Wx @Ex  /PPP$@PP   Ƞ1pb e/%x`0ySby&`PEyq [PCX0fxD|XX0 O)P'PAx0 P )x %pP "Wrp@x % 5xp)~#y/%9x 0xl 4 @0 5xp $x  s`P0rZ00 39 9$09(@9,P 90` 94p$8p9<9@9D#H@3LP3P 2T0* DxL@p0xLLp#0R$rLY 0 0X 0  3 % `!r#$ DyZp 0 $y ZP 0xB CZ` pdx gO$x`syZp0hyZH ZH$ZH(Z4,Z@H0ZH4ZC8ZcbG Fy(r0$L0@ 0cEyp@ Z @h DZ_ yrHAq|O02D 6I e>rJEDtO>rK=<T/G^@@0p 4pP @Wp 6G `pyN@ P G  H TAy $` T>rFGFP8xT>rDCB #L @4G?> !| | 4E@*`P` `,` `$D EA@ `C`@PPF$x,PPT>r< @ 9= 0$~1>r>Pd@T>r?^< / @T>r t>r 4 ppp4@`^P)`pH6xPʯ |  4PY>r ! 7 %$ T>r )(   @7$x 4&'& @"!x " W>r$0 Y>r%#" p4'+* `#8`$`_3`P&$)PPP0 T>r 10@P7 54 9 98 4-, i @6$xʰ4SM)/ L`4676P'6|Pp44/.@4532 47;:P $M 0 `;M_y4 TGyE@/,0 ,*, + 0 +Ȑ +/"+ +P + +(P(+ u r`(̐&+p*b++"#, +++@+!+0@+0)/+,O+ `,++.,%<!+/.+ 4@+%+p! ++  0!)~0 +` ,E r   @ ,1F@pf/x,+.   4p0r /hx+0,E r 0x 0,+  +@P,+ P,+ ` ,0,= , ,`%, ,) +, ,=0P%Or,  ,+ , ,<2, ,1= , ,*<<,) !< T$x :x,* @), #yL<` ++ +2r p&+@$x İ<-++*-( * -`- % *aOs p4g$r 0( )4 P)&  (E$|  0 z6 )&0) /) : )2)*d.0)Ex @)@)$ )@ r 'pJ'| ) "p1%~ `)Hx () @$~ ) *( @1x  C%| 0B)0* 5| &)E$x) *Ƞ()8(!oE6Ɛ 5x8r )@%|  H| P/ p*0 )p*'6! p)) p%`0/)  )6x P8| p*Er )x$x2r*`)r:)) ) @x *@ 4  *6@ @1$x8 8@Vr9 )) )!r::)!r4*)%)f$~ *)0u%x f$~@*4P * P (P * $ "@" 0"# 0$ @" ##0#* 8!C2(k6|*#;#@)3v P;1pt'00` Qp&0r00/%0W;p'6N@pp6$~;*(W+p(8|;; % 4 ;9)-/%'`(f@;:) P%%' P(f@%@ !,0+0ِQ";*T2 aO0+/$8 ; `*P;2@! ( 0?`& )p*P3 ;+`' (!/ ( (@*$0** *`%//0(0*-%%P(( 0 ((+d.'/&`'< P@'P' ' P'PP PP'4TP';$~@!`'p `'8`'&y`&p'488p'  '`'`'''pp'$0`'6x'Pp'0%0@$ 6$x@  & `'04@İ#`' `'@%'Esp'p P 1r:4' Dr9 @'  ` ''''''*PP0r&Q/$xz%&4<&rP& &`&@$x<=`<&`%:@%hP%&:'&"<)Ey :'u(y:&p&%:&f>r@%p*5x $ )@Eb@p&@$ ?&p&PP@Ey$:p&(%(:p&`&12;$x-`&,p-`&` Z|-$` G>r` $P$ P&#,"$, $n   `H$x9 6>r* ` Y>r(@ 9>r) 1|`+@&0&|P&`` -`` $( P&,P&` P 0P P&7>r@&0&P|7>r0&QO| P @&P -%9P @  P ' p&O@ `H!&k|` &P&P "pP 'P  P } ^ L`$: P$$$ PP$PP )L L"LLLLIL IL@FLI'C%-"DL %L GLLL pJ% PI%@ FNL `^*%`MpGLL L L I + H +L L 0 L pL`'8+L`LL L+JT LF0L$LPL L/'r'' KP'0 P'L %L@&L&LL` L 0LL L%LL )LP 'JP L0ML LLL4]"p]!r t}/  @x՝5 @4 eC1X.T`7a ypa$a@0qCn @/J@.D@@/@.@@/@.@@!.T @$p@@8_?L@@/ @/@@/@ }< 2W1,@ d/@wH @/@l@ @/S@t @C/q@  @ /]}@@/@@J#B/sO@.@@. @/Z.@h 8(X p88@PUj@XRZ XELF3S #@  Z Z@8@!.shstrtab.'ym2_shndx.nv.info.text._ZN5cudnn6fusion20compute_dot_do_o_fp8ILb0EEEvPKvS3_PvjePKfS6_ZT=osharedVDreserved.0/32_specialized_Li128##f>5h;1B 1#T, V)^1,Rf;11n@T )^1XRf;1 X=T )^f>h;debug_frame.relanv.callgraphprototyponstant0p=Y0k0YkY,k Yr  Smem.offset0@ .0__nv_RSMEM_0_0_alias@ )b@ 'f@ )h1(T, V)B/ B f>h;1 ,T )^2  f>h;1  T, V)^XOf; +8 Kx ]pr Kj ] K> ] j KPd}2zW-! s\  }H       2 bf~  "  & 0q00  0v00  w ;  j S$ @|  (( $,0 ,RX<6\h%h8|& h&\h%8E8DhEDphEh 1/Nr" 0*r0   0Tx!7&1 ZuH!9 @u < 9 89 49 09,9(9$9 9!P)4( PP paP zpP6R8# ( Hp`HH8#H8#H8#H d(04  X L|  0 |  H D0 P{ S"y$bz x@x 0 @p` #ya% A xn 05xxP{`p` 0#@# g0@4@ @|/$|xO` @W | `c M| x I? 'p3y)pCpP| `c{ axG$ 0! 2pr?/{ pb$|K O@p$r,3$~ 0p$|1@p$r@Sx0@r`@#x  4 p|p@@#x^02 O|@3 "PpP p$| @`/x?ppFp@x 0O>r0U>ru>rQx@@0r0up!x  ` T>r P@@ 1x@@@ 1>rP0 0`6Ax0 ` `1x  @% @2>r T>r p r L 1@`g>r0@ @pp#r  $   O r 9`4```9`@` @` 9` @#rd Y#r p7 pT$| P @`npp  p P#r   9`00000rY#r94    1@0S!r P* ` 71r1@@| 1W#r PW!r1|@@| 1T!r  0u  0dPp rMpR@a/G `Cp"0@pby y .pp1 r0 O.A`y1M`  6GyE / N    ` !x pa/r @ 1 | ڠ`x"p `&6x PƐ P  `  p% f  2 2$r` 5| aO$r@p  F|    @` aƏ|  ` P |`  Ȁ 4p  %*``  !@  ` P 0 0  T r  0 p P1 r@P 0p  p `  *0    J r  ` 1#r@#r     @   0 P  ` @#r`p p P0 90r` 0p9@ `  Y#r  P  ;  0 p1#r @  İp p@4  `p"#r @P P b%  $ ʰ !! c/r  0 @pE$!`|1s  `    N  p  @ PAʏp p   <6PfD`tj$@f 9`D`v&@''p '''d'D` T'L` ''4' 'D`'$@''$@' '} :p'0 'D` '$@ t'*` $'  ' '$@ ' $@'Vp '  '@n:9X` t`3T ` @ʛ. @a kqVb^s.Ts@ ,)p@$3 1GU@0`W|pc @/@H`aGH@/@.(@/@@/@.+@/@Hr@/@.-@/*@..@!( T @#0@ @"  @0@|82X1[b@ /C@#;!Se @/t@e4re @/o@#O(@/@X@/@.b@/@k@/@.v@x`  OD#B@` @`@/ @Y@a@. @@.@/% @.@@.@@@.@( 18( Np 88 j`@d HELFAS  C d@8@9*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver!text._ZN5cudnn6fusion20compute_dot_do_o_fp8ILb0EEEvPKvS3_PvjePKfS6_ZT=osharedVDreserved.0/at/32_specialized(_Li128.#f>@h;1M 1#T, V)^1,Rf;11y@T )^1XRf;1 X=T )^f>h;debug_frame.relanv.callgraphprototyponstant0{=Y0k0YkY,k Yoapmerc 8 \ n  \ K."n ^/1% io a=m \n g\ Nn N\ Nn  \  \ q!c `=Smem.offset0  .0__nv_RSMEM_0_0_alias  y K h ] u Kd  ]  K  ] P@ lk  z Y k Y k  Ns}QL!@u{  H    0 + \ g   Q$ P 000 C 000 H  e  )!"#S$ @|  (( $,0 ,Rh<#%h)hg|/ h;gF8EhE*gEphEh NVIDIA CorpC(6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1/^" 0000000 0  0Tx!7 JH! u <9 89 49 09,9(9$$ 9!P) (0J aP pP6VL# k(  \bp\\\L<'L<'L<'Lc5%d |  L  0 |  H< D`  a{ "wt sbyPy %x>px x qp` /A xK  0k4p`0 04C  3@r@x|@pO A|@0  | 2x4 @P|  A|`! $M My "&a{ ! y  cwk0C0'0{ b$r { T$r  pȏ$|$r@px eSx!0@$| @prb | `@$r`P|l/x`psr`P|1@|r1#x0@0|1@ Np$~  wrp&$| @ ʠ  1P>rO>rƏ0r0e0r>r 0P7 B r A0@>r[0`` /`00r 49941#r&  W r09 pY r@@ @p00r 4``@0 @#r P` p 0P Pp000r p1#r@4>r     P  7Y#r 0  (  P9W#r000rp@#rp 60rp 001!r @|p1@W#r 1r4@$ @@B 4  `x2 x|`p@ r}u$!rPaG 0 ``C`0Cqby`@ey p. r3pR04 0cO r?LA@`y@ @#My_ 6GyE / #yL P P  @x`@a/r@" 1 | +O 5xP"  ax1@0   *. b +/  $r   9 @  0/| O@   0 @ *fu"yuhypb xP@P` Yf0r ! 5 p d>r @4 @4  r@4>r@0p070@P@40 `  ` 9 r @1#r@@#r0  P0p @0 @ p  p p    p  P @@  ` pJ#r @Y#rp 0` 0 $!rp@ ` P7  @  4  O@   u!r 0R 0"      | 4pc ra`A@ \P| t0   *`d Tpd &@ %% %%%4 %$  %%D`%, %% p% %D`%t%D`%%M%f % D0%` %$@ % ]@%$@079 %$@ % %M8Xz{3U?  2gA9gp"R{3@jg( 0@@0 90gP IhQ"PP$0p, `  XI9P0y9$8 ]BAjR I[*P uOAr ) @Ha82@c] {P^PP(ӡ}U/L,\l  \/L @L`$ l ,(l<< L,@ @H6A@lLl1P,w;PG`` 7PG`7PEr 40 yz<ip)pE`ppp3EMPPpM0QNpMu$Z4"m*X  ފRc ++NL$'j<@' @qp ̉\ P l" Dl(`Tv 9=؋ ؋t؋؋&HX$A 0 ؋؋QfȞވȞ7Ȟ%t Ȟ'Ȟ(O4)Ȟ*Ȟ+ \ HȞ  ȞP0Ȟ0Ȟ0Ȟ00Ȟ0- Ƞ<0 @8X@  PȎ#." T@ ,)c(9@@[Z% @"#@ V @C<@@_bC@/$@L@/@.p-@/@..@/@./@/(@.41@/G@.2@/T@.3@R@ #5 "@  (@'|8Q6 /m@@@/@@@/@R@/@.[@/@e@/@.m@/@w@ ` OnB@й @@.Ѓ@/2 @.@@.p@@.@@/O @.@@.@/ @.@!~ p_" B@8@ @uG^@@/H @.0@@./@.ী@n@.0@@@/8@.஀@% #>__@  80 @@@")\@$@/(@"<8l@%@@.&@@.'@/`@.p(@@.̼)@/*@.8*@@.+@_* @, !+p@@ _,@1@  @O 8%s  Jp088ӭ((@x Hj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ32compute_dot_do_o_fp8_specializedILb1Ei128EEEvPKvS3_PvjPKfS6_( .param .u64 .ptr .align 1xJ_v?_0,k1l2/32rQ3r^4r^5r^6r^7r^8r^9r^1S1sTwa1b4 ) { .reg .pred %p<7>;b16 %rs<4932 %r<91fEf<62b64 %rd<22 ld%rd5, [P71];{?r19{S4{/20{S5{1{S6{2{S7{3{S8{4{S9{]U0|6|T/27|T2||U3|8|T4movI, %tid.x28, %cta3shl,329,4rD 301, 3; add.s%2,230; setp.gepw"0; @%p1 bra $L__BB0_5UUcvta.to.globalyd, 1/d5 q8d21#32c4; and333,8112%34z5y; mad.lo336,'r34; mul#%7,)[!d1.372r143d13$ 6,",15 3#5%;r38#4,39"gh4h,41Fh.42:)40[g.1644ol{,17SNxtbX83, 0B8)8356789$90I@%p23Bnc.v{@}, [_]6k76 "3:z#16sf86; { Ttmp; Q@{tmp%3s4}, }v{Jrn.f16x2.e4m3x4mAs1;}F1%rss';E0f32F2 %f"2< +s3 ?#s4)655< B P//90P310}-Q 6S#s7p!s9G/46<8< +s9 Q7*2s1271!9D!0ftz1 %fqf7; fma<f%I?f35%$f31?r85g/85  ]O5J/48]#$s1"  894rs1"3F" `y?r89`2s/89` 5 o1J/506+@"5F "`#51* "2414rs2,"7F" K/f1Sfn *rfs'ifx{r 2 /84 h a?O%r52E4rs2%"9F " F3)/53"1F" `3/88`38` 1335$ +3`5* 52,`F" q3 ?f23#-S/f4'/f4.f q"w43 4/83 Z#M353%7F "7*2rs4X5+@9F" q?r87`B7`  `2rs4B5B3E4B3 ` |5B!4B $s4 q?f31qS/f46/f4-f5pw57ffshfl.sync.bfly %r77|%p)04, -Bf@,77z5 7!zt@9|%p=)2t=r79t=fN1%r8MtQ81|%pU)1t-81tz7&8rd7A\ ]1 J6/8<>rd8[#61[9[5 f85"nep6PT5; st]`15: ret; p6# /206#*#$#4f'#!n.|n.w`.V`A" ." `." `." `." `.p" `.^" a/A:"/O""".10"0"3"9/  i.! i.!p i.!^ i.!6iA!.9ii.!$j/u!3j/LBQ!  x )ltx 32,65U0129R#lp6 w18, `*p33f)p21100  )p1hx6m66,  m/6ep 8Men9k4n49n&n)"#r4)-"40W E {G@%p4 >1_7_".M"j.?;"B4""Y""  '( """" "" )"""  o#5$%< !>80H <5"_1#6_Ad_%_ b6#"J"54J"s2q+92J"9/9$/9456789I@%p5mJ""90 "k66J"1J"99 5 J"5J" Q\) J"7J" 8J"J" J"69J"  6  K"6$]F$ ? ?f10N"8"s"% 8*3G P"9P"9 6 P"6!F "@6L P"6Z!P" 6F" ``P"9 616P" a `[ o6 ,N N /f12"Z- -6 5*P"3"<44;- 9P"9 64" P"6$%" ] P"654F" ` 9P"9 6# `/P"6 !% `Dh6 , q6)"/26#7"'-] N9q"- "w3 P"/92 /70P"7 %!P"7! P"7Z!! q;/r9-B- 7r P"7B!%F "q7L P"7!'P" 6F" qc)"Z,g "F,5sq"-f5 0! '4:2 !9!x)Gv"U9e|9"87"%60j74,:.6="="=!2r{"7> " " 4e8e("8;'"8N7'"G7'"]E0]EdxK"!9@ r@rS" @" r@" r@" r@" r@" r@" sAS##AxaG#]ES ]E+{j#R@|#{@#1 {@#${@8{${@#5{S#6|T]E+#@]E?]E2]E? #@0]EX2#]EH2#]E?5m2]Eo!B #4(%AC@ M]E&]EqH! #5]E# #5~&2$%]E" ]E]Ep]Eb]E2]E90h5% f "n.|nOw.V`A" ." `." `." `." `.p" `.^" a/A:"/O"]E~F+ .! i.!p i.!^ i.!K i.!8 i.!]E!$.u!]ELB]E3]E3M".;"\]E3J"]EH3J"]E]Ek/"K"]E]Ep]EoDP"]EGCP"]E]Eq]E3]E3]E3L]E'"]E3]EA0dxK"!7@ r@rS" @" r@" r@" r@" r@" r@" sAS##AxaG#]E ]E,{j#R@|#]E&#$@#${@#${@#${@]E;h#]E'| |U]E:]E4]E; #@"#\ 4#]EH4#]E1 )3=H\xs{F(`$hLF(` jh4<6j(`1h6b aK5h>fqC%N*h !j3:%Mf+ jh6#4]E50Rf#!f8n|n.w`.V`A" ." `." `." `." `.p" `.^" a/A:"/O"]Ez  i!  .!p i.!^ i.!]E!.!]E!]Eju!]EjLB]E5]E/M".;"\]E5J"]EH5J"]E1J"C+\J"tq!P"4"P"Gq4"P"N5]E5]E/L]E5]E5]EE|>xK"!7@ r@rS" @" r@" r@" r@" r@" r@" sAS##AxaG#]E ]E0{j#R@|#]E*#]E*{#$q@#${@#${@#%|A#]E+i;$ ;|]E6]E?#@"#\]E 6#]EH6#]EjXCB1h]F&]E>`]EE`]EE`]E6]E9 j $#7 f "n.|nOw.V`A" ." `." `." `." `.p" `.^" a/A:"/O"]E~F+ .! i.!p i.!^ i.!K i.!8 i.!]E!]EjJ]EjLB]E7]E3M".;"\]E7J"]EH7J"]E&]EE`h3+bEMj]EE`eo ]EF`7]E7]E3L]E7]E7]EP } `@x PHELFAS  8C x@8@9*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver!text._ZN5cudnn6fusion20compute_dot_do_o_fp8ILb0EEEvPKvS3_PvjePKfS6_ZT=osharedVDreserved.0/at/32_specialized(_Li128.#f>@h;1M 1#T, V)^1,Rf;11y@T )^1XRf;1 X=T )^f>h;debug_frame.relanv.callgraphprototyponstant0{=Y0k0YkY,k Yoapmerc 8 \ n  \ K."n ^/1% io a=m \n g\ Nn N\ Nn  \  \ q!c `=Smem.offset0  .0__nv_RSMEM_0_0_alias  y K h ] u Kd  ]  K  ] P@ lk  z Y k Y k  Ns}QL!@u{  H    0 + \ g   Q$ P 000 C 000 H  e  )!"#S$ @|  (( $,0 ,Rh<#%h)hg|/ h;gF8EhE*gEphEh NVIDIA CorpC(6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/^R"  0000000 0  0Tx!7 JH! u <9 89 49 09,9(9$ 9!P)(0J  aP bP6L# k0( v P\p\\L<'L<'L<'Lc5%d |  L  0 |  H< D`  a{ "wt rby@ i Py %x>px x qp` /A$ Kp` x[ 4x0 4   ## 4!@r@ 0`|0q O |04 |  @x4 @S|< A| `! #M y&C up"x Sxe!Aw ` f' a{0'{ p"r+$|  O   "⏰kp*$~ 1$| ws1$r 011t@r@0 drqr1q5|pt/5|``@@pr pru( @pRO|TrPq>r>r  4 0r0u>r @0r  @>rK@6@A>r[ 9 9 9 @r rAD>r06 Pi>rp4 P9P 0@#rFppp7PT0rp @@`@ @  @ @    00r @#r00r0@#r 40p0 0 Y r P0`P#r P 9  `P  P61t@PPi#r  0@#r p15|PB0 @S!r   @#r `pA|#r @@7 @@|1@  axK" x`p@0`u rPP%PQG @ `pCP0`CpbyP yp. r 01pRT r  O`LAP`y @  @#Myo 6GyE  #y b  #y  0x 0/rPa ʏ p+Op4p ?xax" p`  S0y b $"/0  Sb$| f{@ "@%@qy@"@ Pv&y  `$|pp 9 p$r0 p $p  QO$r0@ P 0 0    b $px@@`  @ p 0  @  3 rAP6P0  9  @@W rp  ` `  P P ` 7` @  0        p  p 0 0   Y r Y#r0 p @ @#rh 0    1#r0 p   p T!rP     `P@ @4f$!rp@ P 2!r0E 065| ʐ 0U!r@R r`я| U r    ` Tp4pD`$@+,@9dP$`f%%0%d%`%d%F`%&@%; %%4P%$@%$P%D`%%d%-%M0 4%4P %&@ %  % % %P % DP%$@ %v %D` %@L[Pof ܣ~  2gA%s"RW3@jg L0@0 9I YhPP@yQ ` ",0_"0PIA0P803 (9B* @Y@A TpcOAr *d @ H<a82@\y8@w00$՟Z]տ_,5, <*,A,@@$,+ P(`@ \\ 8,   \ H*L (laP07P07P01bʊ 4  zyxϊopp)pEpeyp%pp3EMPP P0NpMsD%Z4"m*X  ފRc ++NL$'j|'   \ @ o0 ` l*Tz 9= tj*H$@ 0$)G7% 'ez {8)*+\Ė   000000- <0 @8X@ KPB." T@ ,)(c(9@@[Z$ @H'@ V @C<@@_bC@/$@L@/@.p-@/@..@/@./@/(@.41@/G@.2@/T@.3@R@ #5 0(@|8Q6 /m@D` @/@ @/@R@/@#[h@/@e@/@.m@/@w@ ` iOnB@й @@.Ѓ@/2 @.@@.p@@.@@/O @.@@.@/ @.@!~ p_" .@8@ @yGJ@@/H @.@@.0/@.@n@.@@ٗ@/8@.0@% #z _@#184 @@@")\@$@/(@"x8l@%@@.䷀&@@.@'@/`@.(@@.)@/*@.t*@@.о+@ /@@, !+p@#9 _,@1@  @O 8%s  Jp088PUp@Z |ELF3S  {@tZ Z@8@.shstrtab.'ym@_shndx.nv.info.text._ZN5cudnn6fusion25convert_dq_to_8bits_sm100ILb0EEEvPKvPvjPKfS6_S6_PfS4_S4_bS3_gaJosharedcQreserved.08/1982(Q)S&?relX1XPZ?XPn=D S|80\DQA{q-0{SbyI Sy %x/s ! @2$r- s"d.x/sq$5t? /P 'rr03'x0 'r QO$rpr $tppp$rR rp` rp`$R"@`s6+0( 0``p pP68PpPsrTr p$|pʏ`CM-{ 0"z{ P@P&0C 0C py  n{  % pb! |@pP  0S `T$r @aOr @nG( %bx 00 P"pR0@% @t/%f q  b$# zg5t 04 !Ə   % p+         #yp'8r` 00HC a"01|0@0 DxPar0?0p| 1@  ``0r 0Pp !r 1$~ @#|pǰF@0 p r3A` `P3࣠0@| 0PB D  `@  ` `%a$%x0    `@SOG Qya@ #MyO AySy C&C (@C0uhybxT@S/x 03r~ 1 r;uO rFyLW r P!r2Pj!r  v rQHr^ V!r@S r@(pr@&@@ 8 @@*@ 0C r @4 0İp3 r( A 3 rPpJ!r`6 X rH!r0@ |P p / 0ArP' Z r '@@( @>rpB`( "Hr G r0p @b0sB r 0J rZ r' i>r& f/ r 04  004       2|aOp @@ P 1Gy  / ` p` px@?0 |`p0   "P b  HP @ 0!P%b5Q#x  xP `x P@|6`0xPe /Ppr  !Ey0pOx 4  C`P $ 01|@pPp 01@Fxc$x fx dy @  b` $`fy u$%x" P%$Pud%x   %" b4 % @%&@ %& b  &U$|0@* @&@%!P 0 @P/P 0E%xP@ ` Ȑ`F r%   C r A 1>r!pH!r G r `xHr 3 r0p `*@%  73 rP Pp  d r`%@G rU!r pP'P ` P 0$ 00C   % ` PH r   44 "%   0% "Db  PP&  e r@  & E!r%@ Ȑ0%0  `7& &p@ '@7''@6r&ex0 040!~ P@40@"r#4 ` ) r0p f r )Ps %+ @ s0  ` P$ @ ` Ā ! dx 0 /0$0 $&u%xf>r&@ |/y X!r))2HrP  L!r@)@E!r 4   p@1%xp  0 %  %(h$'@9+ *&$ 00  0(p 0 ` @ @ `pu%x0Ȁ Hp@EyPuHr 0@ ` 9!r@@@%@P`@Pr0%$$P*  p@ @% "@`040%0$*  PP 0 0 @ ';!r V/!rp4  % 0PPP @g>r 0@ Tx@`p&& ` @p- 0 P*) 3'@&x)`  +`&p-E%x %  ``&Ƞ+@C $k!r&' @&@) aHrP3+P@@0G r%p tHr&@P% pb`% 5+'Pe/%x&) % a rKH r$ Pr 6%x" x>r! 6yP"0v(y P % %0  PxpT>r$+$ $$!*%0`%p  `1$rp 04 % Ȁ 4`#@PfHr  5%#0 P( %P6!r#`P`@ THr #p@ @pX>r %pH!r##@6>r% 6 r@ph>r p 70V r#@ '@@*  6 i>r 7 4%` 0@0$ 0@ @ D r#@$ 0 @#p0` $i!rTr @ @2r ` ` @p@7!r 3PA) 6!rp / & p1HrCy )+hya 0(0%b" sO!b""0T$x pO|PC$~br$ PB r Qr @!3rCrB| p /p%Qy0Q@ ' pp''p'''''''''`'' ''&@'p$'p''p 0'Ip'P'6P'''F`'Dp' 'f 'G`''p'l''0&0&'`'' ' ''@J)lJ @#~ |V @PK  @Y `3#1HK b.T7R C\ F $I p0*@d@/@cP@@/_@0c'B/q@Фa@ @ EaD"T @@ /g@@@ `p 2TF[55Tc $j@STl @$@ q\c@ @$#@ P?  @C=k1"T@`@ / /@/@@8cBS @Pf@Ol@ m7h@@@.o@/(@.xr@{ 8( 9 NpG88 `@$=$@d  HELFAS  Cȗ d@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver/text._ZN5cudnn6fusion25convert_dq_to_8bits_sm100ILb0EEEvPKvPvjPKfS6_S6_PfS4_S4_bS3_gaJosharedcQreserved.0AocompatC/19C=3Q)#S&?relc f" " 0w0 x  %{W$ @| (( 0,0 R<6D\h%h8&,h&H\h%8E8 NVIDIA Corp=6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d1/>" < s0 0  0  0Tx!7D ~p!v%^ 9X9P9H 9 8u 4 9 0 :9(9$R9 99!P1 J  x x6nt1LxdPx00p1XhhXh X r  &4 S|<`0DQ`{ 0{bwk0 C Cpx/s1 P2y p"y{ hEybr y| %@psd.x 0b/s P!1t /$r <O'r ̏'x  $prQpP $t@`p$r `p r p` r `R"@ps6(kPP`P 0pPrp30"8p@Cr <#Crk @@$| pp$SM &cw |bpH C & 'cr  @r @S 0T$r qr aGu( { 0bx DR@% Pt/%u b   b$`Zcw{0g"1t 5  O  [{ H +     % 2 PaO$ AtaErQ ro @A0sw u0f$rPvP% C~   ar$|  u/rtO$|a|  ra|10Er  !`2r010|.`! 900$~0@|k@0| D@  @@C0a$%xfy @P TOG0T |  `"y@ #MyOAyP pC&y Sy (@C 0uhybxT S/x03y3rA p Q rSO rC rVA!r C r`0j!r 5 P H0pHr !0H!r@H!r3 r @Pr3 f r C r @@@ A#r` Z!rA6W r X!r @@r0pH!r G r@W r@( @>r B`PA r( G r PI rJ!r( X r Y>r '  `i>r  @( 1HrpG r  x" r !roi ( G rd>r0  0   p2|>0p p@  1Gyx  /  %   5  S"x`0 | Bp0@1y eCy:p Cy  !&  %  'C 0P `d` @ s?$| Ox pW rfx0 @ q  E| `P  0pBwbx``rC` 1 A$rP `  ` `!/ Ȁ! `p% 0 Dy 0 #P%x$` p@%$0"x 0%"0d$x @Ey"@&0%0`%  `9`*0( 01%xP( 0 0!0y2`#01r " F r@@ 4vO r@040 "  `%09'F!r00a/rp   @4@05~p$rTr`0%%' U r p '  U!r `7  pE%x ``% p `% pP' pH rX r  J%x`' d>r @(  Y>r '&`Psp p%  1Hr P6y  Ơ ! _>r&`' `E!r @4&&@  s Hy $p1r "Tr  /$  0s % P $ &O5 % 0 '6!r   0ey "@@ &`0@4 %'` U!r@ @W>rpWx P8 r eHrp Đ%p0$0 % % (0$'@f!rpr `3 P$  5 / PPP @& ppP6!r`*`Pp p 0p x>r@EHrp 4   ($;!rpȠ 01 p 0 % % "PP  ( K>r f!r Ơ0 YHr0@ Wx@06!rp&` 1r@  1%x % %@9@$ &x)`` %  p&p9 P&p( -p @'0E!r&&P%'vsp%"P (%"/&6 r"p & 04&' 6#")`p 'g>r#�T r  *`4& ! $ p  fy$@  Fy0-( Ey "`%""(#P% $!"0!!!0 @5 P*@ @#` ` `$# P `7 H!r #; r'  @#0 0E>r '#  %06!r * #`6%@P ` Pp9  p pH0H>r##@6!r 0`6!r0 6!r  ar@p $ &pp%5 0  p5  /0`9* % 4#`@@  @@H>r%  `P`  P$  />r#p0ax!0 7 p@Cf p 0x!! 6!G!rC{  Dr0pTr A6rP 0x0Cy!*qy0q(yo  %` p`WxpR$|#00@@b  1Hr@`1$x#@|Sr5p!|1$~E |ar0B r!@Ar# `CrCr 1y@RO| $ y '@ / 'p''$@'tp'p&'''''w'' '''0''Vp'Vp' '80 ''d'''''' 'Ip'0'F`)&'8`'Vp0&'4`'Tp '$P'' '0'p'0');PeW{o^]  D Ap"R83@ag9Q  7:900(8 PKA@0 0MO3+WA0 \Q"`BK ,  * B6B@(9XhX /Xh hXh h$ `( 0 @p u, 1B80PB282` -SCP,DHta`DB&{Bp2 U <DpM$2 l2_C'T$ϟ}}=!, \&,,X   *"A|  Q0 (H<  d#, XHA8aDSGZ[? 0A?JB *  3c " T  J?C@P-@@buu 4~ #j5u%P )p)pEupov##"p+DMP[ Tu%Z4"m*X  ފRc ++NL$'ju=! /dtNiun tudu,rf@#u/$x4u2<C  r9=u$u 0u Qn-,3 +H 2" 2  00-@0 @8%7'jG#R p U#1T'S.T ^; #)(ca89@@[dmU,r@ #@@ @ T @_M[dq @/@X@/@$@/@s@!   " @98_?@@m@ `h Qk 0@#-@, @/+@ @/M@#T@ @"C3oo{s@ @ /3/@@/@@0@z O@#r`@@@.v@/R@.z@R@xyC,@ %@m@&`@ @j@. @@. @%,  "  A @*܎,AR@@ l3Ā@@@"08x@@/ @.h}@.l!@#* /1 @*( @@@@"@ p@x@ _ @B@ T @8(Np@F88 5))@x \ Hj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW6smem_0E[];lisible .entry-19convert_dq_to_8bitsILb1EEEvPKvPvjPKfS6_S6_Pf( .param .u64 .ptrc5_a?_0,kV1k/32<2]I3]I4]I5]I6]I7]I8]I9]I1F>1zL1lMlMlM5 ) .maxntid 128, 1, 1 { .reg .pc%p<2>;b16 %rs<3332 %r<428fFf<26b64 %rd<6L2 ld6o%r9, [;74];e|5f>/12g6g?3]; cvta.to.global 7,V68592, [%rd8]37]; mul.ftz4"1,9%f3; mov10, %ctaid.x; shl/6; setp.gep9; @%p1 bra $L__BB0_2S1T?50h? }Or427h?1h@0h[?9g4g>?423g>7g2g>6g<?;5? 8g> 36St3and!36K79 31r 37!3=?d61 @^!H?d60!2!*5814%72z3yClo.s$4,3 $5, 0cvt+ d1]Mr375:$6, 2:{:376717 u48; add!18"18M.+38W2' W8$3Q)38M384, oW; mad8%A '6.37'p).86(3387  1:d16$42$ ?8453892R539046'v6l(21V !v2@ 0{%f2f5}` #22a 3wid rd{ <h/23a$f7a4a9a6a 3 $f9a6a8a8a7a4f11c S &39je >% |)30|9|3f13|:30]EL$f1+31E2Eg$f1+32E3EKq$f1)33 5%f2sC2+12 3 ,$f2#/24,  2 /26, 2#28,2.323n& 5/34-2-5}3Lg$f3J+36E7E"$f3c+37E8E$f3|3%f3xC2+25E z$f3#/24,4 4 /26, 4#28,_1, 6434u4-4-44L4J4J4E4c4c4)43E5$f5|45%f5xC2+38 5#5#/24,  5 /26, 5#28,^1, 9644 45%f6- L6J6J4)47E6c6c46$f6|#48 J9J  81728394-105 'bs3 =f68 f6j#ov s f= @)77P2, 0;max.s16x- 1J#; K#)4# -70m )789 {/20# fx  #f7 M f .818{7#] 5 9f8235{3##; %f g  !328 3 2  3728 3 ~h-f8N 3 a2=-f8g 3 F+-f9fy#f9 4 3 28#f9J 31 : [&96 &97 9191&10,19$!10P.9369c4 D=102@/41@#"105y9!4L548.9795-)1056H /55#\9y )1068&63/62#'?109(1#* # 192 #69xl`1E6 2#6=9BlG#119_2 1`1P ;5y71176 )2 11xV2&112&122i2h 21 x922!22 222 q #12i qe 2(& ^ cx @9c#_ C )127*j Z 6#+ -12l #13  )13# .13p   # r 1+)13 b3v 9 #O3w 1# #25?!37  25$743C3717A337 v2D #147 f24 J2/ 2$7f7 e.144 t3 3-#w 1u 53 4 4qC 5+ 5 V H#<4  )15c .15 `  %44 A 55 11 &4 35Ir5E .5  &n5 69.167 2 77 267 267 }23N 7 v2 6-7 I6 -7 82d6-i<*<r3T 5#17n q 9f 7 % L2&7f 21 4 6 8 3&?1@#18  D3F! &( k B8 R8 1x) &v[1\#v_1= 7 2c#187 fg#187 2k#187 }2Uo1  s#19Q7 w#197 82{1 549}4~44= xr4Y 5@2 #5#20 #20 qo 2 2 L5&#20 2 2k/20  6& 21%22@ &|22x22D &v2#210 2#21*7 2\22I 7 2\2#21n 2\2#21v7 }#29 27 v2%2#217 ?2#21982>22> 15 A55552 xX2 #22n q 22I L8 &222U2/22  &2#23 2n29D &vGx22h2/v&v#23 22$ d 7 22h 72237 2B 2,p 7 }#30 2 n v344Qn 3$ 7 7 832226<6z 5 5 q L &h )24  :2 & 22X2kN&X 2R i3D &v2 b3e 267 3 267 3'  m  3`"n }3 2&"7 v3T6z7 3 7 83 %//>>%lo>R16 hiY5rn.satfinite.e4m3x2'!loz'. "hi.Yr{Pchi}; }C.}f'%r/A646d6[r7@rf#(# 56C#65656CHF 666CQ66666C# =76C56 G/276CC2< 86C68686CRP 696CS6 /296BP *r3/306B Q 6)306/306C  @:r31616?9>!235 +:385J<>1=m@{%rs @rs2};S// stO8 [ 5]!sw~7A6AA,H9  2rs47^ ^0 e8A A91T q#s6;9[+["20>5>E 8U"s8858"21^^r8"22AJA38H8R3s109"23\\`6\9#4]g?F :3rs16<`h=&5C Y#s16?7@6^@ F @^#s17@1\h@31@6x~p#s17@3@36^@31F @^#s28@3'@h@#/9B5@#@22 8@ j9^46^@2F @y#s2 9a 5h@#B696~#s2 9@ >&49994W&?F @"s2</30@4 2 74= 4#:>43s30A4!2!4A_4YG B}"s3U /31B"aB4V 4%'bar.sync=G4 84wI#4184 I LB; !v4:{ 8#34F< 35A 5< gg\5a933A3C \|c\ 3r35L6c\ 6J66 w#41 ^J4z FL9 AJ5$JA9gM&t=vL=5  ^AL*41K!3 J7NsM4$41MF<45, K#41o;O7, 1 1767\d; atomNAQS2%rd t Tr: ret; ] /25]o_sm100]S4_S4_bS3_]s4]!{;3ZZm;4ZmN5ZmN6ZmN^ ;'^ m;7^ m;G^ m;W^ m;g^ n<Db|<S|]b|]q|]|]|]8L1]9`9_```HE<106`67`*54`Vp\?< Z]7vNO\/13vN 7\r^a;6u}_u;]\u;8u9uN_L c;`1^w< YPgd2P;T(ah< x,Od1/O12O1!s8vO O/19Fg7Da]8 ]!39^__jb7b`TI%diyg 6 Z ao1ajg`9AT`@#r11c`E}!$ub T [ h2 hT_pBhh? h$1_~M` OL463i"eqlpU,G@%p2i71_5/tkp.3. _L01, A2YO` gSj5j2sbra.unii .4:t6t YFA`t\a+5:242 5J49JJ5.4 J8 J <J39J98J J3,$ tJty`a-9:5?O0  .%rD 205:*w:  5r_?a c _3:$3d1:b_ 7- 4682 ^3k^ w^$5hdW/4eE q-e64p 619 A V\]] \]:7Q]#ltn7M@%p71#ne#80 {1![}Y713:$v4cf Jfps0tfT e412+ 51O-, .eO12+3lTmE7`?12+^28> >x43T4E9' 6A9A9@9@lSZoSZNIZSZ3 ZIZ< ?< #:3K"#]3"#Z _3 .,""#* ! ~^< ?< , -6L {g(#$#e"W >< ]8LM"L {4~&x%#)8 Z2 L L {5A{5$#2:B(288#H"H {5{%#XS <'3'#f<5 I {A6>'#)' 8DT v30O+X445{7( #%$T 5TY4I3I {>D{88'#_ 4s Cfg"-49 fg? G5gF 2gExd("%rDF#d 45F$2 X9(F&2 +5rdd17) 9^C/};*6(sY55C 4(o0oOc (!$kT$Q']+5$]>$]>#]>#]>#]>#]>#]>( +( ^,'l,lMlMlMo (!-g6g?o2o.!["6;$#, 2 %h, %h@%o&og "gz)+ #to&gX+;o %+o5?5m2o.9oIm o .oImo .oHmo .oImo .X Io4mo .oImo .oHmo .oImlo.oHmo .oImo .oHmo .oImo .oHmԅcXO.oPmo .oHm1a6{ Po2o:P oAs\]ZtX\x {3ZL[m;4ZmN5ZmN6ZmN^ ;'^ m;7^ m;G^ m;W^ m;g^ n<D]S|]b|]q|]|]|]o]of Zo%v^o v 7\o$u]}_;]\u;^]u;_o `o w^2Py_Pځ x1aU; 4cbx< x/O{ h2Oo3F fOo3oj3o3oU oL3o33o3oUJoL3o4oJ3o3ov~o63oo- 5o ,oMjo,oMjo,oFjo.o3oP } `X$W$@x HELFAS  C x@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver/text._ZN5cudnn6fusion25convert_dq_to_8bits_sm100ILb0EEEvPKvPvjPKfS6_S6_PfS4_S4_bS3_gaJosharedcQreserved.0AocompatC/19C=3Q)#S&?relc g#" 0w0 x %{=W$ @| (( 0,0 R<6X\h%h8&,h&\h%8D8 NVIDIA Corp=6`ptxasCuda compilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x1/OD"        0Tx!7D"rup!v%^ 9X9P9H 9 8u 4 9 09 ,J9$9 9 99'!P1P` J  x x6t1Lxdx0p1XhhXh X r  &4 S|`0DQa{10{bw k0 C Sy2  C q"y nEy< %"y  pb x/s ! rs d.x  b/s P!1t /$r<O'r 'x'r  prQrA3Er p$tPp`$r  p r@@p` B r"Pp(@ rpP2`` U8 @pp`W0pr0C#$|q`TM R`@`N!&@rfr@C@pC @vpR'B r O$r 0/$r DG^ @Cdx /` "pR@% 0pT% u0q  b GO0WGp +  *0(0`wtA 71t@ r AF1t @Cu@$rpi1t0c{ @Cv"$x`w   b"|rr?$|[O|05 @6 qp@5|`` q5r`5|0Hr Drp| @Y5r 1U5|`VG pa%x  0 % p% VOG@*@"yP@  #My?p!0@Sy  C (0C 0b{ f0%Sb#x!`cxTPcr00 r: SO rC r ( !r X!r1 r @S r P!``Hr/!3 r 0P>@f rPPF!rS/ r Ap001 r `f rZ r'  G r Z r*(PF!r%0p>rD`P3 r  A0x$!rp%Ȁ`H!r!@E r!!0 ; !P1 r{ 1>r G!r#p `#P#PE r p |@p PG r W!r%#p '##0P>r4p'0%0  @ @QsBd rPe rP ` !&2| 0`@ @@  0 1Gy  /  %     ` @  4  hE`Rbx/ |p0 C_y"  P   eb%SDy / 0@C0u r1 !x[  v$| t/r p px "Yx04 @ 8| @|016w `&r oA@61t 5r   #  <1t 0 0@0 ! ! Tr ! @ 0Ty  p%x$@ ` @xp U0% $0"P %0P( E$x0*"0( "0p` 02x00 S02r#x!~0 &0 %x!rT r v rP` W r  dHr 4@`P' W!r UHrP@%  `:` %0%`$`` H rPx@% a>r0 @$r P 8!rpA%xYHr%  5yp 0  U r %@7 E%x p p@& " A8!r dHr1r0!THr ps @$vHrȐ`G r U r @p E r  ( Tr7 `V r0Qy u r`` 'U>r``0$`,P@TrP%  $   $ @% "  Ƞ0(6 r0/"ʀTsEs0  5    & @0pGx  6Hrƀ&Y/!rE%x 4@``*  P% P p#   Px/HrE%x`"$/4 9 9!rTHr0 @$ &PW P@0#0/$pp6Hr`@ `K r%"p`(@fy`PP %4 *$`   `(  @p pp  0@x '` ` P`P% pp@Fyu Hr &p*%@@%0ư3 @ ` P ( 6!r (J%x %  &   4 *%  @fO!r &P@p@  &%@0%"*4"%@u>r""p7`6 r u!r P(E%x$ 409 r!6Hr p`P 0@@ 3 "PP( EHr P@$@5x"u/ye%x0& p p, U r@#` 0' 0 0p@% P@!!%0P(%P`*p/`@%$@4 $0@ + 0 @'@E>r #pP0p%P%@@`%p 9Hr6 rp  `0*  p @* p( PPE>r! p 0 0pP6!r`  @p(@ !0(` 4P @)0/p% 0p9 0('G!r 0   0  1>r0PH>r  p b@ @P #pP % $! ``@ p Er @0 P 50Cy/6 3{` P2x0HHr Txpƀ% `"y r(y%" */P O@P0Sr!5a$r&%Exxx`5"!x &x | 25|'@6r"%!h5rp#5"p@b"|ppy!!*'P @ `)Rp))0)p)p)0))2)){)F`)s))G` 0)6 )p)|0 ) )f)y)) )Y)c)))Vp) )0)))7P) *P)P))p)@)) ))0)m,;PnQ  M A"R@elp:Q  :990,08`900EP  0a;3+g@ p`p:p0$X ]B,  P>HAr uTHXhX  2 $ A (`p@0 @ )@A TAA P p82` YW3_,dHZ6& # }2 U$`EfpM$2 SqNb8PX'~x,8`@ @l AA|H` )P(P Pl+%, Q08SGZB_4 A l p @ Y$X @VY @#r  #@-0x0~zz 4d PjH5z% 'p)pE(&pK{#`%"p+DMP 0z$Z4"m*X  ފRc ++NL$'jpOy\w2d `xm  @xhzDw,|wd# /p&x4<|I3xqn3=r[p30w zzQ-)83 +H 2" .  00-80 @8%7nG| pfU#1|k.T#   #)ca89@@[#d8(o @  #@@ @, @_Uek / @/@X@/@$k@/@s@mg " @98_?@@/@ `h Q#@r0@. Y, @/+@#J( @/M@W @"Cot@s@ @ /3/@@/@@0@" O@#w`@@@(\@/R@.@R ",@ %_@ 07@ @j@.Њ @@.` @%,  ##x 0A @*4R@@ H3q@@" 8x@@/ @.'l}@.H!@* /1 @@!@@@"@0 `{+p@#P9 _ @>@ Tȧ @@8(` SpX@F884PUO@(&Z 8?ELF3S  >@`:Z Z@8@.shstrtab.'ym;_shndx.nv.info.text._ZN5cudnn6fusion20fmha_reduce_head_fp8ILb0EEEvPKvPvjPKfS6_S6_PfYSg ` RH S$ @|  (( $,0 R<6\h%h8h1/Fb0 8 * 0!7P "uX!9P9H9 @u 8@9 4 9 ,9(9$9 99E9 !P1p``  `6JP/ PT S$50D!A{0{bz syEq}ZP @C@S0y$%bsP`x/sP r xʏscs`b.rx@/r`bs!5t? p/$r ҏ'r$'x 'r QO$|0@P1ra#5r @ pP`rA3@$tpp$r  d'rp r@p` r Urp$|ppfB  ```0K5Ha |pCp` P @pP+8@@qr0Vr 1,P0 ($ @ 6# "PD| WHPR013p#M)y'"pFpfz8rpCx"E `#x C#y|&0!9x@7r&P  9x6r0{ 0C pr `?r  /p    `pT$|X$~zPar! P#`P|*0@0@|B@@|+B0 E cG D0QHx `1@x@?75t& @x  0 x  0x "CG0r   *qy *ӝ y* C*(0C*0b!,*@"`@r-+!S!r# # O!r(  995u!r @9 7 &Ky ,,!r'0f!ri!r9  6!f!r$i!r%7""Ey,p`,`**,`9+-`5&P`5%5@5  9' 4  04## @9(( 6f!r)9 6!f!r$P)7""`F!r&VO|&p%(0+r'%%00%##pp*&@&@ @P' ` * (( G!r!!`$*%(""Ey &@`&`&`tx` P#pRP 2|*&p@0+'#P% *p p p,&&(pp%p PG Q@@pl pTr*4+%* &%* Đ *#***&@ ' Z!r & P@ PP(&P;!r!$% c{ 0 Cb! ey D.03rP   *  @p  rA`bx TdU r## Q r @ 96!r#( V r0i r!QHrQ "@ J!r P%0pr` 30%0  /  @ @! @% C%$ 0C0QpsB|'`O `p #PP r p@ rk 9"  9Be r fO r j r^***%%**  P &f/ r ** !'P>r ` @`T>r`  0 !` @py@ 0#My< 6GyE /app`p{ l'0 @ 4:2 #8w @#@eh1.N8THC ,*p3E*H (/0`@Pq @/@@ @h [3+H"V  @0|82T@3/@@4@@4`&5 O@B@p @.7@> 8( (p 88`85@d YHELFAS  WC0Q d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver*text._ZN5cudnn6fusion20fmha_reduce_head_fp8ILb0EEEvPKvPvjPKfS6_S6_PfYS f" 2` |HS$ @|  (( $,0 R<#h)hgh NVIDIA CorpB 6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d@/d 0   0!7 rX!9P9H u 89 4 9 ,9(9$9 999 !!P1``Jp`  t``6Nd3 d4S$50D=c{u0{bw s y=0C0S0y!%b}  Nxl/s1 pr s cNs b.x 0ROs80!Fx R/s "r paO1tp/$| $r 'r'x 'rara@P@r@Er  p$tPpP `p r@Ap`00r 0r r 0 PErp2P0|Pp8pPdB  @`;H0 |`@p` 0@ r0pPP@r23'qr(p0 `PVr0X0 @$|`Q |0P T | Π P10@30$M @0n&"pAtErcxM01 |`1pcwvfbx0!rP1'0`w p@@@Āa{ 0c{ CbPC /$ p O$  wkp&$~@ !p$~#x@#x@r!@" @0rP|$!zď|" 1`9xP@|%~ @ @|#@ 6r!@cG  x0p`A1t/0Px P%RHxG p@xp?P0r @    @ `İ%py y @ * 0sy "P0+ !PS!r$j U!r  9 5% u!r& @7(Ey*!r V!rf!rsy0@4, *p4!!00& *t!r 5@94P**p9-+P4$0PA@9 4 *, &%%P*&&(`E!r((0O!r P***+,P5* ,t!r0-p!`f!r @)4& , 0* 5  * + 5/+ Rr$0 dx  & %Pp%0(%`Ar% !1 r1pR 3r*&*%( - #rP5`5p97PG P `1 x  !x@pP 3Gq PP,6r-ʰP* (b 4* $9+%5)5099&'Pp&*(0*/ p`(@` $$3 ` %% Cd~`+' )@`*@*@%@P **PP P&P%$% $p*$p%$b&*+PP PP **&pP `*%p{ Cb@! p y D.` !3r  B r PA cx T  5  y r p  7 !r *(W r! !@W r AHr #( @H!r !W r @@r 1PT r  ar  Vy,0$ P  @E!r p@  /  @  d@Hr0C0ur!| p |)P0P )j A`. r 09 9 9'   P9 9 6% % @fO r5 *  * P  *'  * ***!!&f r3>PB`' % d>r 009p    @Ppy"0@ $My1GyPP E /+p pp@p,"P^wJ9i5   /A3"B@.%"R 0!PHPP$P  y+A+ 60DA,`(Q Z" q0000p5p@,@@"@`@,@;082 89`+p + 0pB*B8@HX5AXPP XH`2 U$ 9pM$2 4+:6C@ OB& Q82r:A@@H4@BA 4 =6r,5GA%P)p)pDp@@%Z4"m*X  ފRc ++NL$'j@ f@<;A@tY<3=: @C Q-!FFFFF BF`-h BA pG80 L  @8,9 @2 ~ :1pB!=>bT5 )Xc+H #9@@[D.$/*  @T 9#h@ d @@T @__H H @/@@ &h" @0|8@Q> I /j@.&@@h` =OB@9 D@Q@R^2/)F@@ %O@p@@ ; [#LF5  )@V@ :@@12_K3_K4_K5_K6_K7_K8_K9_K1X@1L1N1nOnOnO6 ) { .reg .pred %p<9>;b32 %r<120fUf<408b64 %rd<35>; ld%rd10, [(=>0];i1i@1i/r9g@3g8B4h7h@5h8h@6hA7h2h@8h3h@9h4h@1@/15iA/16iA2iA1j=BG4mov9, %tid.x; shr320,4-21, 128; di@322,6^8r10r23, %ctat0!24,9Jmad.lo.sz,l@ r2'ul"%5,E3sub<3X5; setp.gep^17; @%p1 bra $L__BB0_116z; cvta.to.global$ rd9!7!$hlZ3p]8py( %r 344K%r26h3# ,29"32 t32; addmu%73 2Ed0"JdE08i$,r36&37.#36b_3v7 c#383 9OtO %r9#ovD 376, 0f0 " 89/801234568899J@%p2 Z$39w r3#ax41l3I@%p3#nd4cs-4; neg1j4'[-23nJb43; 4: .pragma "nounroll"Qnc.v4A{%f1#!f1!f1f119}, [Y;~ f1n5123;+>!f1!f1Ff127>3|_!f1IFf131>4 3ftz16>391!3 >390!4'>389!5A#38>387!7V#38 B>385!9!4!4>383!#38:4.38J#43!J4J4nJ'46.37J#47X!Aj4j4U574f15j2M 5"15 5o5155;! 5555/20! 66"166/20!62 (65 3:6|6K c !V37 B#71!|74747=J#75!J 4JF4JQ4J "16J4JB %( 1 1 %18j! 1 1 $18/21!  1 1 %191! 99991!9](97 69#99A!#20p6#20V6#20p73203! #207#20782067J3207B J"20}7J#20!#213Jc2!J!y(!2!f2!f25f21j2 2 2 2 /22! 2!f2!f2%f2 /22! 2222 /22! -19(  -19_ '-19#38#19! <0V0;p0r2 -20000J8W0J0J!0Jc1J7[1J!3 H3rd2% LS4"eqp1rQJ2rL@%p4ubra.uni4 '5:63~X0`5` .6.1.6.82{ 2 |52 2^!f24f23O/33  2f 2L $23R/33 : 2 2 $24R/33#24Ilw #24c w #245 #245 #245 -#24Vw #255 2 #235 #255 #257w #25J #23J w 2 w 2 w 2 &24w  2 2 2 2 2 2 %264!  2f 2L $272 2: 27"f2 $2725 5  5' 5645<45V4:5p5|5-2555w5B55J5.25J55J55J55J5#25J4 5$81pd1; not]!pV8/10eH 1 Fn4 0X478"875C882Z=z8JJJJh=10:h3!A1" ~#A1 9rd3K2>!/26? ?3?"  b3!9bB!_!8!L B#30L!5!B3!JBJ#30J#30J#30J#30J1J7abs#3155`33!#313!//y@s16x  %r #)5# 78] 93134k i #9 .83156698# b0 3E#8= 6#!f3'  #30 rD #31!2l H#.30Eo  2EiL322;%A9#tH04|)324246#04O  424##! rdDatom5max!8$8]OKV 3+) 3# 6&26 1y& 737 1 @ c1 7 7 1& 7l#7]3 37 137 +1& 7 a1& 777 1 7%@#11& &.33&7 &.34&17 &I.34&G7 &f4&]7 S#3T%//J1eb16 lo 1Q16 hi.rn.satfinite.e4m3x2 5lo,Qr- 5hi,NN {Nchi}; }/VL, 1D @  6C61>6$st@v/+B], {lWr113}Y1: ret; ;&0;Qe ;:mL7%_K7 8_<7_@-7_@7_@;%|;%_;%_;%_;&`L;4(:'nnOnO;}+ m;!iV(i;g!g;h h7h@ W; a A;.8h`9h9h4h@;/;/i$s8A;0;1;*1_^>;j1;1; ;1;1;.;1;[1;C.  g 2` |HS$ @|  (( $,0 R<#h)hgh NVIDIA CorpB 6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x@/d 0   0!7 rX!9P9H u 89 4 9 ,9(9$9 999 *!P1pJ@`  `6d3 d4S$5D=c{u0{bws sy= A r"Zr& OrpP xv/sQ! p0r/€}^4sb.rOx@a/s<!x \r`!|a1t/| P$rO'r  PrA'x0 Er'r `r@Er0tPQpr10 rPp`p! r/Pp` @r1 @r0a"Ap(p@#@"2Cr 3y>%h8`0r 0pP @r3@p` 'Wpsr@C0`Cr@p `@$|q/ |ZP@3M e0P&"DtP#p3x 1r!0w uibx0 $r`1y$'0C v@@@;x`wpp @C#"P1p@PUrur tOr  /  0k "PP!~##S|0!0r"# #PW$| p#xN5|""`SƏr`PP@`7 P4&PppaGu xsx p1Jx16|0`5`*@@x$ P p P Cr0y*P y * i|'cy* $ 0&'*P!Pcy* 0 cb!r%0)O`!r  9 5) u!r$ 0'+!T5|** !r 0$!r 96Fy !r @0@ ",4@4P%,pb &%%O0P +H !r)) P%$ P9 9 6 f!r )7Ey,`0,0"@60f!ri!r!!7E5|*,p7%% @97h***!!%`%,P`-***!!+txȰP"pR`P` ***!!( **%9%0 0:PGuP!p@x 10 3Gu`P '@x!x@pP 1Gu0@%&+&&(0%&b%$&POF!r'` `(`-**!!0(Jy$P* $P*$P($PErp`&``30` 0*0(0p  * ( `p` *!!%%P p F!r *QP/0P **P+P{  0Cb  0 ey D. 0#r! B r @A cx T p$ r 0y r   7 !r *(W r @W r AHr ! W r  V r! !5yPd@ @! %00p | @p Pp@ 0!0C fP01sO`B )O )j # r B r 9 9'  P9 9 6% % pfO r5 * p *  *'*** **&f/ r' %P>r@`@> 9!  0  `  @Ppy"0@  #MyQGy /pp`p!PfK ~ϔ_c'Q  ~$A3"B3@80'`" F, PD0P,A0&A AEB N  0A53+0C+ H0l,lCpp8pA@%Z4"m*X  ފRc ++NL$'j,B B&,B<6BtY<?=BA Q -"G0GGGG BG`-D@8`  @8,9 @C 0U6C'?>bTe O)Xc; #9@@[D/Jr  @ 9h@ d @@T @__cJ RJ @/@@ &hP" @0|8@Q^A/j@'!@@h` >OB@9/@.A@R^2 E3ڀ@ %O@.I@@% [#zM6  )j*\N4 :@@@tq@@@.P@@_*QL  p@ _(@(@Y q8(I.pX88PU[@Z 4ELF3S #30Z Z@8@ .shstrtab.'ym(_shndx.nv.info.text._ZN5cudnn6fusion13qkv_tma_setupEj[PvS1_+bj Ujjjbbsosharedz reserved.0.debug_frame.relanv.callgraphprototyponstant0o`YSmem.offset0 .0__nv_RSMEM_0_0_alias:n}2 6W! s  H&Ogkxm0 W$ @| (( 0,0 lR<#/D" ' !7\3 DU%91$u0  9/9.u-!09,9+H*9)9(9'9&9%9$9#9"9!9 99H99999|9x9t9p9l9h9d9`9\9X9TH P@9 H 9 @9 89 09 9999 9P@  "jq& :p&6fSD$5QP{S"ytEpbz P |Xp` /M R0ax2x/?REyp az @PPr/?0R @x7L@?@x22" (8 @r.2E?``fz(@x9?@`Tr!2@4#2(P@fz:Tr(204,2;CpC<@px1p1p1x; 1Br<0 @fx"c1;@::`x" Pcx"?';@@x::"?`@$~""p "=UC$0@7:@cz&  :=Tr 2 P9$2$7&2&@x""L:@7*2' @x ? 1x$$|"~1x& & Y$~ "H- 'gTr+2%@@Wr)2) 0|6r%@ 0x;o7& Tr-2-@' 0Hx00pEx11@H@ 3GF4Phz56PHPH  HHHHH 7 WHF6x@ 77%@*88%99`d/;1x..--,, !!++**##))`%% ((0|0' ' $P ;| &{Ppp{$w C a%x/{ by~ " %x$0$0uOy$$ bEy0@ r p x A%xKPa/%x`@@QRP!'rGl-peOx:3P̠0q  ar @101$r10| `S6x 1r!+@4T$~Py   $O%20a$P 0!E$ @ 15t4-`p|307/ T$~70  v1#!*0#SAyC €!PP PzO r pP*)+ & @0`@x: U|9/Q: 1 p+rP5@ p`Pp p- @(aO(! K$C$ʏ| 4 arFy    C  b.$0pR0 A$xpAx #$` Ax_ p pA|# "  10 B|    @ '?G)h99:  . pE6x$Ā 8p5< 9<5 2 )  T|/4|  PFĐ@&@K r 0  5{P 'j*G@6y }4"0 @pP s@6x ̏s Xw$$r r $|4'r }0@a/$r Q$|@"p`0,pD6( B00'68 a #3 5|p5|r U%r @! 0x [ 3GyX@ /" g$6xtsgd $rvrZ$| `* kO$|   %0 % rƀ%P  Rx:8=5t , F A|!0 G~0`@| p@ 0  @9:@ 0 `pP  C PX/x P@04p9 04 p  000 0 0%  6 60 ` #66x!080I~ 1@"# 0$ &<5<5 :206r@`W|T$~+  `r`Zyp$pA CƀPP P 2 'P /$P P0(GPP;5P3pPP9P&P P!5t p pP45@ 4 P P  @P"p`06pT@0"6( 1P 9| 5x P54 ` r Hr ` `` p p p p p   /p  ! pp0 Ȑ4<Pp @`Y|P7% p Y|p *@ &~"#p)~  P@  @ 1x  ` 4 p 7 H #)  E0v P )` 1  ` 0*/0 5 `Q/|@7%,WO$,B$"p #6  `$( @$0 ) T| P `T| p  7 2'p/  $Fx ` Ƞ0"0 @I  5    &A0 (p 0p)r3r7   İ$ p 0  @p !/` 'W%pWO$@p 01xP T| & @T| %  "x@%6qG0A M1Gy 0E /`ds "5$0 @U{ S#  P)%%.T@ ,  3Hi4* *@0l@|9 @!]* G_2 * (<8@2@+$+ &-  1#B@6@3 q8(  08p 88 `@d xIHELFAS  `HCB d@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuvertext._ZN5cudnn6fusion13qkv_tma_setupEj[PvS1_+bj Ujjjbbsosharedzreserved.0 compat.debug_frame.relanv.callgraphprototyponstant0scapmercx R Js h8a 1Smem.offset0E .0__nv_RSMEM_0_0_alias>r[x}Q !@u  IH&y fx"" 0W$ @| (( 0,0 lR<#X NVIDIA CorpC P6 ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_100 -m 64 *1d/" ' !7 N2%91$u0  9/9.u-!09,+H* 9)9(9'9&9%9$9#9"9!9 99HZ9999|9x9t9p9l9h9d9\9X9TH P@9 H  ^9 89 09(9 9999PJ! 6q& 8p&6j D5 a{="ybw'd |p` /M \Q0#ab%x01t Ey l0@w` @4@@w{ 0 6 sw a&$r`r1$r  Awb  @0x/w~@pfr0wpR 1xE @cw$r&r EOr ur fx | % px B @% C x Cz`  w""PC 0a$r0Ġ%x@0@x1`3xYTwb`'`xFCxP`pR p px@px&$dx2 &@0&$"0ex##$~0!1xpHrPEr p!x0!x  5r0 %8:r 7 @x$$0PFc0x" @x (cx/!x!x ! Hx%%pdw>kCDzCCq`4BA @H<sPH:H8 6 4H2H0H.H,H*y (Ex/x""p@x@# ('$1x``1x     P |l   9 p{  "|  {P`r P$x p y @pb r@p pfEyQrPʏ$x@A r@`RO'rG0exGD@ `$Gq     VO u @@ 1& 0r0! p`|$ 4Fp$xG~ 61t $~ WaO$r 0 :!0S6x   0 ; #4 &``yf >y SAyn ``!"#P  /6a$`%D~98 rP +x40  &~ p4"p ?A! p p@5 0 ʏ| 8D| 94 *ar ;    &r!r 0p pC r0 p b0 p4p  @ 'Ar P/$x @p/G)5) !,` ',p fe$5x 9$ 61tP&~ ` 1E6x04O@p 3 4@0 7 4 p Q r pB$r4#@  # !),0f{ 00GP Gud0 `#y }C !  PpP sd.6x/s!$r/` ȏ$|`"p@'r01r1 1$|@@"p`p06, C6(008 a"3`P$r  uO%r @ 16|f| cGy\3r 6y 䎀Rs g$1t  .   %ȐP@k/$| %0"8 p;4 Ojx0D~pI| 48 )r0 @8 5&r`8 9F #66x 0 5 0 p'rPP    *` D~% +|@5@ @ D~ 4 2@ 4 PH| 3D~ @  P pD~#@0 `"OB?pP"71tBB1p`060!0x `   Q ʰ   P'0 ` +$p0 #d~10\P &~  p7 % 66x0 G|P@ *r 0 p p G *B T +2  E * P7!~("TrP r@   e ! )6P $~ P ~ G|. 4/`? @  4 @ G"pP p 1< $`p 6 `T< )p 4 )`9P 7 1|8%)r #DP 7'@Cx<<` 4,PpD|-@HDS6xR,1xA P$A!P @@ "@ A0rGx`#AyM@1Gy!0E /@,`|P,+?߿+_߿  Q A5"r0@   W  -,@`@lR X A  ` @ p ,  RA%T@`, @ @`Q  D900PP,    A  ,  ,    ,    ,    ,    , H  @ B"` p  , B.8R2 $ 1 d*D d d  0:BhO h P $B+ ! YA<    080T000/0= x?! hh/P44 4> #03#&P4 3$Z4"m*X  ފRc ++NL$'j"34(/043?=3Q X99 3 I9 9 x-C@|l @8] @ :p5l .TH b7  ,)P:c@9@@[Ts;4;  @Dp'x@G @@9 @00 <  @? @,@ @"- P@<8Q @l<$|  C[B@ 8:@ k%C: %U| #= 0?3 *\>4@@@@@@046 @ Q!N+p@8@  0l3 @/HH q8( p88@x kHj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A .visible .entry _ZN5cudnn6fuJ13qkv_tma_setupEj[PvS1_+bj jjjbb( .param .u32n_?_0,1234564 .ptr .align 1u67891#512A8pu1A1B1C w16x)xxw2xxx222222 3,:HVdr4r4r4r4r4r4rqw4dxVxHv49v50 ) .maxntid 128, 1, 1 { .reg .pred %p<39>;b16 %rs<432 %r<28364 %rd<196>; ld'%r159, [t70];/84w85w96w17x18x2 s81x3b6"x/14#y5#y6#y7x1G%/70x Hgx2H2x H3x H7k x2J7Jx2J7Jx2J7Jx2J7Jx2J7Jx2J8Jx2J y4Jx4Jx4J-x4J-x4J-x4JzJzJz JX@y H>x5cvta.to.global 1,}/87 2 8 3 6 4 5 5 c4; mov 2%tid.x; setp.ge p ; @%p1 bra $L__BB0_43y3,xN2 y @y@eq.sp0#lp1264,M%p2; min1$3Uzf U@9, 70T7+p]#64#ne5p90, 1630245E:%p4v9*#5#61#lp2$hl 99+%r%or5)89#5796, 25522, 94r$7,J  9x  204 t 97"207"20 lZ  7r0E7, {I209}717Ar211I8I2211}; add2r21-)-1898!8Z3, 2; andX 268435455X{) Y8385C 85868E 87878G 8988I 82982K 8! #22 8-167736322M S2-2-4-2m-0924}6, 520097q2516618UV7>h)25>#22k2  k4k7/07, jm1T6T8JP?e8P w3582( 8# 8 *31Ysmul.wid 0rd1 4R  3b2i 09, Z6Z 5  Z%rd79zz9 ~;9d78;; 1;;x g3 2: .pragma "nounroll"  x3s z Cx6 A#p66 k:d17%ld [%6^ k9^#61]8ypT~0V35 )&!p787 D  L"0.9.5j rd 3 $!23*#d6%;8k233; bra.uni]6(5:1 ? 23*&{03HS2#646235~/6:=x=y 1386r636 M 1` { ?36}$10l #10^ 6a 1t  v4>k!4]*'  Xb X4% ?185u5+32xr0 &7:0#p103 5)1217I 8*1310 x ; "8  &11+10!9!7!9xk7v 8}1 !u+34~ ~Y!Z~t~9~1Z1u } %7$13j1a1 6'13K1'16/12-8l#x2"!0p 4 d; ]W1p15c*16+ -\71#11 /40W :%y14 1'y4   1%y,31{79SMrsG2G6i? 4243Xf# WwWG21+-+22=v2 yF{ $21w2`ow4X1M})20L2N}2(20%&y  x#S S 1F%di42E#76 =\&lo$12> /45G252 (20r x $1 x 72X6X (0:7c'4u$-k7249 'x,35^7 9k /503+50 3/993R33 {+ 3o3,22iSS" / 1;4 = 51/ 3r#/51 o?251/ 2/ / 5f1 !25, '53/ H/x+3237#9210 /54<254 40 1[(39+40 1  1 %39]op(42 1 221  @31 9 C31 "yW x1 , 578 8S p1  13144>61631 31 {/x 8.1 :x 1 4Z12-0#r2-%bzD')571 6$-k72601 y6^7{ )93246c#H 524 : 5 z3 44R (1533 . k . 33   3}b -5h5c/62 u634 34 4 6 :1554 6s3 44 x+335m #944 3*$5 6%u#(e/13V (58;1596 fr@$586   5 3$3 44 334 }] /62$64z4z6x+64O2, ;6|4;@0y+376`8`9+46}9h' 6(4(67B ,68  70 $676$p'704]  x"Z4*12R(})+51!888bd5, 102y1l8^) $3d43: ret; } `@x JHELFAS  ICD x@8@*.shstrtab.'ym_shndx.note.nv.tkinfo`cuvertext._ZN5cudnn6fusion13qkv_tma_setupEj[PvS1_+bj Ujjjbbsosharedzreserved.0 compat.debug_frame.relanv.callgraphprototyponstant0scapmercx R Js h8a 1Smem.offset0E .0__nv_RSMEM_0_0_alias>r[x}Q !@u  IH&y gx 0W$ @| (( 0,0 lR<2 NVIDIA CorpC +P6`ptxasCuda ilation tools, release 12.9, V.41Build cuda_r/@er.35813241_0-arch sm_120 -m 64 *1x/" ' !7 N2%91$u0  9/9.u-!09,+H* 9)9(9'9&9%9$9#9"9!9 99HZ9999|9x9t9p9l9h9d9\9X9TH P@9 H  ^9 89 09(9 9999PJ 6q& 8b&6 'E a{=`"pbw'd |p` /M \À{)@!8 1tEy` 1%x(`w4@qrA@9ra{-"w<~@b`7&@`'x0A@$%x$0`F0cwr0 0"xp/w, SfrY`0@@pbx >w>bCpCpnr|@pR 1x `=`Px4x0Px @  xQfx0@r ;Ow;p6| Stp pFr5 fr949P5Q!1tp3r5^ h/r4PFr4 ( ? Hr7Fx0Sx?cx7csw|@aJr ; pGr66 Zr88(::Zx @53pR 5Pc|K4/"?&99Ox77(<<CxPH| @x @ Hx Px424 @Gr>>@Px@(1x1`Fx   0x!x  Hx@2|0Y|99 79 7 xJ 1x761x98;:=<? `x22 Jx00*..(,,cw*k@Cq``4(p&M@P$ "0H HHFHxHxax>@xH (I4x@pp    2| 0;| 8;|6:<> `fw@PhwBHDy Fg P$|X  0#| Ps0pb.{ qN{{ p"5|(P?r]N@2ry* 5r ( Oy bEyT5r$0R rpRʏ r@p&sGd k"|   @%@ p  KO 0E5(f S` T5r&07JW|Cx@ QO|[Pu5| /y*#r/ey PSAy^ S `F r SGh@  * &p  eO$ u$Sp 6r% y   /PP0#@  X@p& `"0!&E5r$pPG)  , 65 9) ! !0Ex 0,P`8,`6 '0G0T5|&, ( ``ra`fr r 6r0` P pP&P2G9$@@"00`+ (GpV/yZrL" }LPx bs !!91t Pr 0p$|`p'r  0@ 11$|@@`"p` pP , 00@( 08a P"3pP$r 0O%r 4 P %u|pfGy\*p*ʠ / 9rp   *+  ;%`ְ 4   O `` "p$&0`f P)r#p;| @@ P% * 0 r /00'  0 >p& _oG)@ /$ '6#|  `61t# 3`.0  `/>/GL,05p`"P  ' ! PiT ; 2 7: P   @ ` p-pP?p&sp& q @7Gl@` P &P 5 (D`E5$X p P0<"| `P 6gOY: P@ M _G +$D (FP5 $[ @0> I  Bn Wx A5x((  &&@ T |M $Q G\!#Ay/M 1Gy<0E / @%Eo %+@+| A#la?86nƿ  =A%">C@%Q", $$@_+,   ``]RX@ p @ T@    @%@ @ C' ]*$5` @A.S 6#@A@v.  2 s  G, _  S m"@M  R  9 9   t,  , t,A T` @ , @ @   `\m `  , H  (@AF  h   , A TAf 0 PGB^ P`Thq8R2% #(4`# 5. 5\D@Bb<10 $ ""L%O A( + !RA@0 O@4x$ 8 / Hh(< L P| \`xfA Rd  K e   V  /P55 ( #`,4 5'+*5%Z4"m*X  ފRc ++NL$'jL53/P,L55C=1 ::::: x-$C4| @8] @ Y64 .THh6>" ,)d@9@@[T<d<2 @D  x@G @@9p @0/p33=  @? @,@@"- P@<8Q @$ E# C[B@R@ k"03 %U| #? 0?0 @@@@@@@048 @*PC !N+p@h@  0l/4 @/xI q8( p88PUZ@`O]OZ ELF3S  x@Z Z@8@.shstrtab.'ym6_shndx.nv.info.text._ZN5cudnn6fusion14contract_dbiasILi16EEEvPvS2_ji 2S2_%blWQ:osharedSAreserved.0.rel pp6FSf0 6 ``````PpP T-T?-T $%ahj5ah S|$5|0D,eA{i0{fby z z{@?M c"y ) @,pC "0>.0' @ rpP/y:Pb  BSC `HHCCEab$r BPC p O{   !0@p `ppPȏ1SRr?  PxP 10 \C@@"S@@x b$xI@r ?r?` ?3t/xII8r?0@r P 0Ap`0x}Px @@0$xJ$%`xr @$x J@!"O%r  x` 1$| ;@$x  p| 1ITG @pC$x&R 0`B "0 ;A " 0  h f$a$ Or?00  0~@$~ 0 0Px01pbS6?@x@?T$| pp " `2$x !@1(@@$xJ0I`x`7 `1E @$xG!@Ax p 40% #hF13G t   R 6$r ax@@?`Pp |P`pR ր^`E6x 0  j 0 | D6x _@p'  B | !~"B |  Tx %x`C`PC q"r p 8@P$x T6x`0$rP`PrI046x 1@xIP10@| @ @r  B 5  9  1r !p@ |@pd| C$x `  x  @ @O # @ O    "p0r2pR`!Yx GpG$x P 03r P "p`p P`Ey@#rp#3dt@!dr$dv  p  &fp W0$ f a" p /$ PaO n" Pʏ$  P 0PZTP3G  0P%P 03 ! !$~ 'ySAyop9Gy` @96x Pp6x p9xI C|`@9|;z 0 P`%̀@x@@| @  $p `$G P% P0| 01A| 0 $G^@4@ڀ  (yCGy @ QL @r 0?d~  !/ !$ @ 41D@@$ @@ @  WxPp '`sG`%` $cx @@0r 2pb 6x0 @"@@Vx 0 0@@.0;x(*6| J8I 3x @` r E` 6x   pB r0R r  0E 0&  ` a"$ `u/$ ` &@D  0fOPa $ PT p `&` ! K$&0"4 p/ `U$`eO$`PE PyP T09`Db` h 9,5(CdMF$x t/x P Tx  @Bix   x 86xCAx  g6x  x P@x@I6xD 0p@d6xF E@A$x ``6 g6xH`1x  @@@H" `  F& Hx fx2 1$x"@"@H6  & 6 A$x2 2 9 6  `  $}   907  949 $ 8`; 0`6: P$x  x % px @)6P$x  `@   @x0 $<=4 0 ` 0@1`* A`8 * @`fx A$x   P$x0@Px`fx6' W$x11@ix`::Yx/@65```fx f$x3 6  &@Z$x2@*`8@fx(A$x 6`I$x@@H$x[x8`93p@'9 0A$x06:P$x66 7`Hx `G$x7  p   ::`;`8W$x; Iz=$x<@@ <<=Ix 7x=  9$x@   @@pAp 5x4%A0`7@ ${` 4  ? [6|> '? ? U6x$?`  60 & &  ?>f/0ub$` "000Ix` @#6%@0#x@ E r$ DuƏ"@ u$%??`&/xpP&%@ D'0 ) F&&6K`"$"$% 5"" &$`L" " IM! v LCx% $>?Ke$>>0>>&1ǰ@?$$Pp5$>pixO@86xK@ exL `/#0P  @ O @Q $~T0`ArL $#P PK@ Fx?0ĀK@ xM2vM0` 3p@ L L UM@ > >@Txp@s0P@xN0N0$LP3!uC >00$K? `Ec3` xd/3 N 'K puS5p0U x>6 eC5 `$KĐ5!0% >0@xES7Ux  P%7` ,% 0)K6)`%9,$- fxpvx.+9-$pEC 0 1%;.P&/0 P -%;/`$K0(0% 09`%=(`&-P)PP&+%=)0$K-6C@@x*p+A*P; F`"b E3A+p$H@6C@E1` #O`p%0  C0`&P000$OHE2PPx(P(P%3P0?%E2 @@E3?K40f{> d%5(&0+4*5P+6 6S7  ppK60Fx! p7P`P&"P+8 %9@K8!0Vx$`O9@P #J:"+(%;``p)L&J:#%M'0 0*; F$~K <$0*=-`J<%$-H D3=(p$@&pDSAL`@'P@rKK C8$AMP- 3$rRp& LKp0>P'P|NK >@"prMR1d~@@$ 0rPK 12rO0p"d |>KP0 0xQR1? G$xKT!Fr?@syG/2TyG0!,G. 4(G"P |K@ B 4pdx CzD @P "a# tCL,iG Uy>( YGy /0%0  9@UyPPi#Ay@ B B N /E!C C L -䇠D@ D  > <  %p!PP+srUr@CrB Cr6#Or.7 #R#>8#, r-!-p4.".4/#/ #($fr)%)ir*&*4+'+0D @KMp6Gy`E / 0/%n/!/ex7p-06$r%*&/DSy6"P.0REx.a/$x={1x;0.(ar +ax>. `%==.) >;04<>@ q|<1 ,E&y b !@2r0  #C@70r@$DTr@0 @:!r4@1 Hx DAx0PExp-crPC6   P& 05xB0x0@3r Q`6ʂ `3/0SGA|= =C0p!x ` 1r(@=0`   7A|)# @5x `a@P0=@|((0 1@9 P3G8] 3?0 @r??p`!r PPTrPPFTr @@ ?@ 0Ex @ @  @ @x()(DX$x))6GTP`R@&r/D &`@Er >$԰ @C0x$0`0% A  38 `@x&#>6%= D<0 @(Vx &@dx /5|@< 8x@DT | CP7&0PE$x $x  7`@| @ `>@"!| 0 ?1d~ p!| 3  3~  @ `H vp"٠A 6| `0;2|@!P | 0z`B`@ p0 "ɀ=0BD DٰD50p'!|   T  p $ `D| P&x6@D0$r0`v`D0p03r@6 (*&1Cfb$D& `2Dp <@($0! @P<@  p<9 @G0 @0%`1  P0@@TPD Pp"Hs?#=HQ'6xY40| J#2?$$@$pJ0#?PG?+?  !@35p3G@PE0)0&`4! 0(?3 JH`53@?`@?0 `J5 `D PpO0 uƏ$ ` EPu @? ĠB5?44ub 5 uh*bu !d`FDr;:00 @ DF!P#h^x@8Hx:? *Hx:PC6x!;r C&;+F6|#0Dx;&|"4 ,$ P@$xp!E |#P7x:Ix E$x@ "$=P  5 P@K0E#9O5% ,4P$@ 5 O$:    6 8 ƏP  ." 0,8@!d~0p  !r@0&&#``Ox D$!<P$! 2P5x:68 `0,H37@pHx 0,.S8 -.- 2-U#70G  "@'!,E8! 0 GC6E$8 ` 77@ p.'5-@@x?? E#6  P ?!C $!P`%P "& P042!p& :p73%30B@@ 2 p  `G$! P8#43p6'PGP`3xP6x@0U#E!P?P 09 1x86xB0& `@6ixDU33 `1%2pP5! EC1 4&;BpP5% 35'2Fx /VS1p09%0!`5x# vc/0e6x## 0%;`!6$!B`46#/P P.7p&;DPAx;66S+ `3x ;@F3.<D&4+ F d.* 9`3$$   $%*p$: 4 6$9 85:`E!@A( /@ P &`  B r 75 71x@7%d@ # P4$@04 !2V"0  L "` p'" @p%,Ex0`;p7;p%8, 8`7U$"#)"%8 5V$@ pN0L03P@0 P6' -O%  Hr P66360 0pW PFx p/`6E#60@p `ES4    J `%4&~  1x 0 Ex P50%2  ( 7ES2 `BEx  5E0`6 BEC0 Dp`Vx 00=96c.D &   81x!! E#. 6$x @D3* 5`Ec*!`t+e.r? @ )x Ey<9 f`0&r@09% < 94,?[*pYp"N$-@ [ ,`'#  CrE$ 54  p\0?lF 0@Y@E ڰf0.,br #  Tr @%  <   0 ,G: 0Tx!7D"rf%!N%fX 9P9HuD09 <9 89 49 0 9(Az$999!PLJ&p p6N[f` +  p`plp qp-pp-p t"#tat 5at S|50D\a{0{5bby :&ws00 T "w k0(PC P"0%0PCxP4`*@C@Cv p"$~?Vq⏠#w p rmpP/   pS0 pP{ "0 S p O{>0bx  x@  ? b{`"{ @x `O00C0p$xP1@ |@@$x+!P$x< 0@r @"F tx8PE|<0@yB1$r pp|`10T%r  p$x  #G- PC$xd@@ r pR" 0B   P" ,0B  )  h f"$ P!  6?Tx Ar `!`@r0"P> /rAr3P!@ rp`$~ RQx$0@; Ax tO$x7=@r;;@ Xxp@0x==`=`@ x;1pb1r1%6|/Tr`0x @# @x  !x`@ 3G8PZ "6x<0T6x< qxS6x<0 7 1$r "; Tw b0P#0x `@ |<ppv !t 2|r p 2|,@P @p` P!Ey @ P|@@p1$rGIv@` r<1p`@PEy"P p$  @1$ + `P @  Gɞ;`D2``8` '9PTAyfGp@$({`>| @ Pr  "~yWGyP--L r[G ~ P  PC6xPPx1@E6x d #pR!I 3Dup`s 0 Sx 3x@@ @PT @@ fxpp@ |p`  |;0b 0Sx` 3G`p% 0x 0C6x f r>@U 6x@&r 0  S &qp  p$" u6x5f P D @u/$ 0&0pb2=D@Ə@p" T `0D P w/ 60`) eO uhb$  Dpa P1=@! 0 u ` hp1pR#M4  b0 9@ :0p 0x  cw y00 999 :0: @x @ 90!0F6x,  5 9 !O@ p59 `$x:p ix!9(   9#90   6%98 A$x" ! @xn1$x$ # Q/$x& %  66x-p Đ.`  `6|  Gx@1$x9@r p3  Sx 5;` @r  $@E6|6;9  (Yx9`77;@ |"@pP 09$x'Vr9 A$x@r `5x'@ 0r "A$x8@ @r p@3!'`?@   @$| Pr  '!! Pr8 `8 0x` & V6x 'p ` @S V6x''P 0: @p@ H$| `  0r K$|'' , !x @0x!!!B |- v ` . t '' '@HxBV$x SxA ! Sx@  Fx  ' Ix  8x/Hx G$x0`x8 %1 5x4/6x P#{u7D:06xC0$>0 x"2vvPG /PT8<p 1=@!1d~P@ʀ p5$4p)$$`-%`0```9(0`2((")3~0  P921P222Px`pU6x:S/3p#p94pb P40@x a| C@0@P cs8 3 cmPC6xu/xuO6x: 3|$CP#p`T8 @%@$:@!/300@x@ `I|0 | 04`# P'::xPcc 0Pf I| 0:P>$"Pp " u $fxP Ȱ :`@`&`S0c| P) PTP 006x J`':6x& $  E$(!8`C| 6x` 0:0 1p@$`IxpPpC @@% @c |0$  T `'06x `$:` ` hC07x*(̠%(2(C |P0  4 :@ #% `p0O8`"& 8p0`pSC 0!$# Pd ^p) T# 0p0 !`T#8!p0pE#PpP) "S"N pP4 `P+ #4#^0pP% P0P&$O)$>0P4 0P) %T#%N00P% P P) &S&.` P: p)'Z#'>0 @ ( 2@@d(pA: Ex) 3).0@ #y p.`*`%* 48*@`3yN P 0`: 0  3+03 #+0 @'3@E$x e/xaPCr Ex PC ?0|2   @ |5@p` Cy2A&(y2h!2'4 2p"rC7  D 3G)ܑP&2 N $C2ppO$3D3`T r,?02DG``` 0T2P-p* H rB ^C{3243D3 y P 0-!L r-A0"pR0/G <P .@ P  P<$pb%66Cx77%553|//  %11 &`$#! a/$#!!"0#$0a$% &'` (@B$P")0*+E r6P5|00 0%44p%;;@7PPM`6GypE ( ' 'np'Cr)r0`'`% 'R ďr0$#Ux&59 Qx7& # :" (99&C6|b@T$x:748:aGu@# x1p`9$r Ux@ (`4 `P `P #P)a$%x y&qy #'C (y  P&Xy H HHH H$H(H,H0H4H8C<!b  < 3pR%'@% aƏr3Џ& tr  ur5x 0u6x 0 `&   & @ +  + @  + @  + @  + @+   (0-` %ax!Sx0PCr0l@     bH.  `fOr@00P0$+   @ 0*  0@ 0% @x p<W _@(@ *"f%x5y! `%`+ u$$|p.*@p0 $M ]` @$x6 0H$x"1x" 0P#66 ! 'P" "V$x77fr6p swn"%60| !%6` 76 Ex 6 (7Ex 6  @96(   960   %6p !x $ (5!1$x  4   )30!!x  2@@(&7r1P!Gx-p+ /o  !Hx1r@' 7x#Q/r( 9x-@r -*O $$(cG F$r@%P ,p3 @(,p2  /  p$ p pʏx @. P)@ O 23G8>,@42 P3#03!r 0'1&Pr  !p p)) +6|) O@10r @p1$rP@`6G |NFr p$!r(@#0| ) @1s1 6r@P86psU d.6x  pas +* " 6-`E5 -P @.@P *0 ab$"<0 ""p&O44  Ex  ES50.`?0J40.DC5 .P@pT4 PJS5 @.@/P%5$P.Q  30Ex$ g @&%P@$30.% '# $4%.fpJ``/pD "p0!0&.P0% & 8p91x - TC2 .'.DS3 0A@ )` & .O  051%'pp@%  p P7 P EC1 /  '`PJ35P/ƀ$2 PPJ50/`0Ec/ 0/@Vx *50/` `0@ 0x0 9% @E5P/9 ( `Ix V5.@1x2#0 $40/pD3 .WC56c0/ 00Ȱ tP'` .0`8/.8>%d..B >H@93! pp:1pbEy 80/p@`a$0 Hp"PM0 LHE ! @b**5 /p`p6' "% QC@#!~p Fy8`0P%00' + +*+*+! !!P"# U00 !"$,& ,-* ,p9G +Tr  @-!WGL0, ,@S,%@3R7w$0P *#S"~1p ,fnGu 0RCP  pyp d%PM##`CE"0puNx"6%a%(ESh @HR`#0$-$ :0G/-&! 01p$l6$  8<p"`%a/|1(Ar`$~$| S/6| b"rQ1@0|002$r)p CD3PS@ P7G` 0`'@s *T 0.`P}Z` @#pPP/"~@4 `*p"&b.PUW pW %"/ȏ pQs"PDr@aO 83rQ-1$x G԰ % UarP&&ƀJ"r#P%*N`R#0"rP ``*(@@*fx"9xF6Gu,01"`W@ P0B"0 p0SP" 1 @ 1&&p ! O@ 6{'&&*P,@. @pp"  3 %`&5;'#  'l@C@ 4P@%0s" x @!p ~ 6x 44ZN~ %/Z (&xK00b-xPQPF6x Pƀ @ r 1$|!'x5P!~ #P @-&b+% =0!r @ 3 @H&x,5x0  `'p p` \/ b@(`"x `O\1r!A0pQp" O4 phO$ 0N@]s6|DHE6|E `E$@+0 ] @T` ` !**/@%`b PO#x@6@e$|P-OP#x !C6|bP F P@I`=C0 )1|Hx@B#q D|`40|  ` 0X# P ?`%`p1Ƞ+!P$G~ '$|` f 6 P, PaP`&p!x0p5xP  @p0 J|0 0+000 0 1|p!0P0D| `5|0xZ@D| ?@@@@6|@2x t:$~Dx0%V6x" 0!:ೠdp b%s "C6|  &x'#t  p 0#25|W/$p\[+$CODW`D!1p 9|p2D@Q@xpp T`p@P 2xPpp6$xƠr QV$~X0[.p, 0'@)+p#p+46 %r0&x %p`00 "xpD.!P  ) Z1x pp!C,@`"$D~@ G905x `pC6x2 E|P% p5r@p    "`&~&p @`P  &`3#&2 1| @3p p ! pc!pPA$| 4 3|@  8 %  `"_P4@ %u$x5| pp ` `@ 6$xp  @3d~$) Ex0$" `9| H   5| % 0 @!I x&~Đ` 5x  3!? T6x` 47P)P@+.11$x 0 $ S` *%pp!| T P` `  8r @x Exp'0)p5| C6x> k&|  0@DPP @Pp0 PP$%0`'A p3)/'@B P!P O8P0` 6|%P+@ @ !`F6x PP0F$~*/"%0?@<@$|`x6|@$x 0`P5|@!``1x*2$x@7p9 1fPP``0 `!| Epvp 4 0 "n   U$x` 3pdz '/PT6xǰ S6x 1E$x0 P@9|p`1ðP'&$% pS@h`.@<p% @/ Ope( W@5x p$A ` @P d$APg390@ @ 2ـp@`h$x@rpvpG$~ p3 :$|0Āj!xPs 0 02pb`Dx'|@ p9x|)!qG&8#d|P rL xA$|@B@x0/ x PH@pWp"%"Ώ9P!010$00E$|p" PpPg0 `1PpP`0U x!20& p`#00 0`xp@xP1 @p6 pPC$ P9#|P P1   @x !y!0$.t&Pj}w|)/z^w6k_/K+Q  *A1"R@0dy0Xp"B 00  :9p@X@u3p 0$1 d H@@4 3bB.  MRAX(,88    , dA$(D Oc!,  ZsB+@f @A0!p82!` Q@ @ @D_XQ X :Z***x  4   @ @H@ x4$!||\Xll| (  0 9B2<@GZLT)D|$ $ $ + * * 9@ L! LU\@ @ L  LD18e(nп:` 0- I -{?߽}pUR>F{h *| -H H %   ` 3 `@4PLF  mi*P`p @ @4  @ 0) A@ h GA ` h0 @  @<` P@, `0 P  B0B%B (T t 3+ f@PP$ (4 , t  , <     (l$/$ $$\  *$ , ,  / !lDH @ @4 @  H   4 \ $pP(P 4   p @X  4tt4t t tT T T @dd dP ,T TLvk- @ lDH @ D 'd2P  }z[p 0 P 9 A@XB6B@  Ld ,h $`` 5H  U M) :O%].z;:tv῵kw_s;a@ <@&(4p  X&X h ,0 C+ FA| ` PXS JJDH $   0  X $   h@4` 8l<$ `4 @ 4@ DHHbJ#^@<d 9B dX@PdQdA @/H8D8xD  D   XD / 0 4h T hdD ( T  Dd @dd 0th N dd8@D$hhxT  )  ( t)$N$X   ,, 1, d  `8@d 0 \ 1pX8!$D ! ?޷ 4B`s5 hN ppE(PHp%p#@F"pDøp)PST`  #)c[C9@@[#D8(& @ e #h@ @@1 @_YQ\U @/^@@/@(CCo, /@@t@@ pW@" @8iz@@/q@ `W Q'"'A (@#E",@ @/@q@ /v@u(^ @{_C3 ``@ //8@@/@@B@O@.p@@/R@!`?'@@"8@@ ,q@ R,@ %O;@`Y ,@ @@" )q,@ @@) ,@ @%1 #ξ oF@*G @W@@hq, @@")@@"8o,L T@@!@ h!)P` @@ @c@@@"@!} +p@#9 _ @@@ T @8( ` pX@F88q#KPbNb@x _Hj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW6smem_0E[];lisible .entry- 17contract_dbias_v1EPvS1_j@iiii2S1_b( .param .u64 .ptr\._Z?_0,dO1d/3252VB3VB4VB5VB6VB7VB8VB9VB1k71^C1_C1`C1a+E1peFeFK18 ) { .reg .p;%p<171>;b16 %rs<3432 %r<41064 %rd<136>; ld%rd41, [4>0];`2`71`8_83_/39`84`/84_75_987_/87_71=/d5`8=8`82`u3a9 a9a86a/40a8 C s8/33`88]; cvta.to.global("1, 2 2 3 s38; mov%ctaid.y3Ux; di04Er91; mul.lo.s!9544sub67c5; shl62I6 *d^2; setp.eq.sp2K0; @%p2 bra $L__BB0_49~Pekb2; addd1rd45!44k#nco':D0y3\!84346M 7(8,573844T 3.448p1O5/793 50E,495ubra.uni.8(7:t5 '52t,51t7rd +&97y'8:A/318#9]|"lt_pCv9-|  #64M#geM7Md99; or Mj!p78(81  10t3shr[c5; andH83Fzy#32#10'5104L1g!10$6698105 1037c%or c1#2_&10f2; mad17d .10&m- %E,8;naI1, 491V )11I"11T^ ??5&16Wb8R295$3117pH1rd5 ^%#54q:*63, --;b 4+83943@7I@%p9kiWb vl{Tq}811:2!, A{%rs3s1}L #s35#s5 W#s77v74x8x)39= ?4001@h y 2K5+1285*13F, 325C%rs9r+91;400 3s151u 4Pu#40451 $24 5C$124o65 66(61564L3s17s,3s193#21>)$s25@ 6#4089 )  F$2796 C6^ 6`'k47. 89C/298c  31282 s$s2T7$s2732 3q$s3 #29 4 3Dy3129!D# k! 41 !4293tU#p1 D3, -lrD2318 z p?p14; not ~ pN r2 X 7F7Fw /369/34G9G/298 h&34p= 0!2< 3'^+76! r19Y$ M6t1u16, 067]$sm.19579/3178(86- B u2/l")1371B1Ci "$46F]$$geW)31*_?p:Np7  z@<   h6f823 %5  .v)$46#& B*    5 R(70595"705).2152588YX8eH E!2j '02C8320m >9p25 2-234/368a/359*/29R 8Z!2U 75~,351E3 5a+3777 [*d7'73/7236388 $15;!^  Sf54R6W86m $ ]313?)p34  8{3{5/36J808 {5 1g v` 1N$ 63{*76 6565559/32a8/30q8 6 6 /6/#,30ru P 4> f\ 3=x)32Z g>-p3 @33376q8L8 6 1 !*30! $,-8! $? 1*.70w18L:989459a8`8 1 0 j  h "-f7l )3  7! F>#F:3 F?$p3" 4MM@%@ M8!7 7 7 D [8*9!8f8:5d2/81"823688 8}V8^'887^-30WV!'; 8b*4d$ 8h5. X%3 1 "84236'8289@ ! G #r1"8 8*8 7 9* (w359B7(! @ #?pp ! 59!3 8 1 b8 1b68z8`8 $+#,9:$:$30W 49xB5]{*x&9|u %fz  5 ^3 >p *Z**O@+*55:p48T36858 x8 m -(5 2 W3A2C**20 18M'20 2!1$5u67?$p5y @ 9#?9"6o"9@19@728"2 8!8 2%" 9 2 )202#3#) #20~' #20Y*9 51 9?6>)p6   6 1M!9 13 78M 8 (20 9#20 n N**N2'$< '21N A 2 !)VT$N2( '?)p6 /7/4 9 8 B 9 14 7H8W8/8 /09, 9lB 5:")30Z A 2A38 *v.9A !9+'Yz A 7 )32#>-p7A 7?@ 7F4cF 19142785 8@ 38  T1, -2  @  $ 2N=355W3A2a&*8 q1$K\$&%7n 3;?-p7' Y [!?8V  Ig%9I;4I7 9 388 2" "3. '3 *#^2n28283"4>p 8j0 /20$10 0 }+838 I270 2i 5d* :*22%;8 8t83?)p8  9 01 2#102 9A1 H8AL8: 8 6z(!62 3"$306"  A2 *1X372S39|0B+9u)33O>-p9 9!9?; 45 >p12#10 2$5  85T9 8 t#   265W3A23*-@2J2@% F %N  3v ?p.6@9T=  C 2#10 25 # 8381 8 ' "3KB2$'e "$*9*242$10n!2F&)33CAp,D$+10 C$ #10 25 88 Y2%@ -2%%3#v*-%E22-D 43B+ J$ JB5 4L2#118 258 848Je898 v 4-65P7{Eor6.A2@22*;G2# T 1&8'. H)331h>\+du>' 1Y>DG1G< 1$#11 255 8<8588   O6 7 27-35&W3A2*5.J2/ 21#/  J&1 )331<B+>771=D2 #111 6883888@O7T3) Q$",31M2 ' #*1 \M 5lI O IA+ (5,$1   #11 6 8v8sV99l6)7W@%W*6ZO227W 8gI&W2>)34:1xB+ k$F37 1 9k k 88k87,8 K 7B4927% ;1#?#r7B%q2 :*U29Z V1DK 6XI4YIA+9w3'w[DK 3hh$V2H36H85 8K 458 K K I K L 2g7 =^W3A#26*,2 .3?.4m7LJ&3 +34ZB+>0 YD_4bb3U2bbH8488K 8 K b79 ",3172&` 85#H*E  E2E'K}9U4W A,p1$K 7 3/23.79l8K )3 % W*2" 322K  =)J4 JB+ $K 7Pk 32 27 9k87`8 K 7Jy7B7 r7hA2@2* >32H5e*34cA+>45' DK 7 V 2H27H845a9K 8 K .78 2i b/!)@3A2()*)8Cb$288 *34C B+8DK 7y3b3b2_7b9i8489`18K Q'  8P $)A0X*833N84A+ 6Z$K 773y32=7n9A 8K >)9 K A% W)*95 +29 S'vZ#!)D 59 7 L B+ $i 7G3V[2<81: ret; }zzinit_packedzz1S1_zzN *t wzV wV7w3H4vFx5H4v)v vHv v 7r<2v+.?<25v"05Q) $t=DQ) tT* _QQ tSQ6QQt>Pwt i Sol2x,syGqEi1s(Z3wid& enb&81qbvsJG Rt71_9r}rs?1_53o 1 h v4r%1_e N1_5:95wX u n2 &F8nx2 2uo36o36to3 G *0oF oG È*H 6oE/20 h#7 n9  1 5R/{2 /`p0,{C{6-uz0 ~-11V5.X&wQ78 +<* \@ H+K756+6{uWH88p@:fb402484, :7o6h|P9m6f)2_G5l@U 692_3: .pragma "nounroll" {03L5,#7U)33%2Qs!Qi(83()63n:33+g}( p8r"0p%](,7u:33+|)v%! p5% p`#%& NQ,p[# q[&8q8! 6qw!q6qJ" q4Y! R2J 90+hH93eH939%s 4q324q" p! >n u &304253\ 5c! q 5&305353PZ05$N! q1r 5&31535p=" SX153X 53 5K'" q, 5&ߌ32 /q 5" q.5! SG4 1525452DY5H0! q6dq 25552\5O25 53555" SWL 53> 5\+6535J35 '@17^n4Ps9B%2_L2)\4:5 ?u8 2{ (4( p3R5  CI4O45;( 75(Z4! pu8 NFG4N4N5()! p%( pq M5M5(v" qoB5MA M5M5(Q" q7P k/ 050 (ӄ" q#>63 563 (> " qj 46~ 464 (!G6586 8T7TakU6U6U8 $8@%pw32_14#RWi- W7 7B7H[777Ba3W77W ! #/ Q  7Wq-71 GFVI3 3 7W8F8c>  =; 4,10q=X:O2_12891 4 7 .8 .#41_ !-3{$Y5,'( kr 02_11A/\ 30+ 59@ >96>oH%^90:[z}(pd@0|l49{x@8 8%r1 9G4PAf&%n2ϖ7282J)'agqg9[3_ U6, 20P69409;VS, 614ba4v 2)Y:, 7K? r04@ 9\{21P0{78Tm 4#1ub|4s1-3 ]4])00<4>I m#41{" ?z WS #1>6 51f)0147413 64+"Ch( H#8217a 24930274D H1," . .I# 31kDL__9403 U%41@6#42" 252/X##42/ 2i9, 503wJ%42\6#42 #42s (##52mA8 *D:604*2P#42 I#42 7S7, 626bSD8PK:705*2S#42 #43  #3729?EO.D%#64" xG 0,% 5R   e: 7@ V2 +64 970cvti06$Irj#43m 44ܖ8 J_%63p9f   2z(N38˦zY$ l 4&8oR;4[=$rF3z4= 794(2P ? )4p ! w14ubdU6_| 6 3L1A1>A0" @<6x(n4Z  (8( p0la94 O4, }  C* 6*14&2_Sct 5568 trt35lw( 5 i4g 9] *9U5U8  64V35Kѡ#etd6 2_/ e45'm oSHQyLG8lf$1S g r :42Q9.44%6Ux$8$$@5% #44|  S"$lpr 9UB5sW1 n3    g 3neg6 r4 486Hd 1[76U f6 Cz Yp,gA%2_}w 7f4J7p,%4 },30w  3 5Y;:6F9?< 2v 623B6C4<\"&N 88  : 9y9V:o :=1O] 6Ω4e l3h55b|34N@F M:6 0;D#st93[%r&!};=/45>*|+7> q7`  ' )<2_42m#471Ds#47KGk ] P̛b K,͛& U\U7 (40O:G$ @) q# :4c4oL[0Sd  78(762e^$ 8l.*68Y 6  41>5  66 5]4 ~45#55[^ c6 ޵#67O CF6_, 102#49#Q6~ tD #68Y6{Zuܶ4=685\ 9?2_657cC#c5@ N#68J  {5}!~#50HC 67 S "51Z `95  M"68Bm47`6w1a7F a7f6M7gw.0d  6 92_75  1755 5"w0" f#7!eE 5r 2_96 7!+ 58j18jhy  6585  1 85 * 81, 6 )8#" "68+5*8628 8jr18j8d  Q#68% O#r5s3 2299  56 5j2+9& 4΀ 6 96296}69j7 %9jusd  6sJ@%p692= #5229f86+10 5 2,$10 7! 6! -7 $10  Pf /10o2'10p 6f  ѻ#692 P#r59 33.10764u3:2491085x h 8jZ3A; ;-,61 5%e$f+.53C.5 ˤVU 8*%  R5R12G8o,C؝8 >&7] 1 1ez(53/"r5"+.53z5q+f+W"i 7V1787b78#70 46 ؀ Z5$+.54\h59 919%  )91 |=067779 3 55 $9 9o* _"d 4%u634 [ *118T53a $11$$-k7\ 050  3b 1"*![ 3Vc 5! [ 222"5 3 $12w "5w 7w   3 :124#s3t &2y3 1^(7u 7u 2'3 &(X1s37#75(8Y&#7 3 4&(PJ &8 3 L3s39#_ ; 815zK,40\ 1 8"30  3n1c F3s41i8i343FW 8 ^7444F4 "$s4 8 #56 44& :2_1}53 44F 3s45i8$ $5 62 44UF!F  ;#57OF R44F8 F$s4853B N4? 5%5 j4F8#3&2_!5} 7s5pF9F9 857%  5!f 3s51# 958iF s55d H  5K1 5F@ t#3#9 <5&6 8s5F%F  "5c7 56F&F$s59 #56A%F  $  F^ #9 A%58"7V; 8s5F9 9!F  :!17FV0$Bt0` :&k$ 7_2  >X $5?cS4& //g 20,D+20=f)M+> X?*4| ( #47>E6S=[A[ <#K9(6;T,I.73^wsH 7 P-942c|3 ;%1!V* 3ؙ H *z ,m88%61Y9&0$ 9@ m!Q-5596 Bo+ u m>!;J/ f112v1:3 /8u2@ 9,$ B8B,,+9&,L | 8  nB2P   496;8<7@$ .*11 4 7G187:iC0<a8$ M 4`8?|4ctq@c$mq!k+|m ]+tm ]+3]Idm +\mm]+6]I7]Im>m]>'q ++^+J9+J9+\l+lMp,p^+pp F<598p9ЁtXJ;0jkp +m 5kg+mӴg* mc?p3? mab; mg7g>1k*16s*!6< po:+#p2?p2?p7,?7 >3 B UBY_o[2[[32UJ İ Wo%0Wo3 Wo4 n Wo! YWo(Kn" XY9xN1 Q-p 1)5@334=N3xP] 5WbQ%27\)3/Ԓ 3,8#23/3_8O 6R Q5 :f Ae? OR4 O5!S 8SS U$3_nh S3usFu(m KQ3z3eI32 sSpp+3 x}@,5b1+m Qif2Bh( 1O^BB1mT(8p13Sf o2`? /#S2x'"']3gY 7b5zI=d$11S8W131 5s:G LJBk3$W$9Lo0ASz'mJ)61=#562?S3^ZS)+ 33N x! ,4X[P ~)b,WpF95mK iQ2Q)x 6+ W#n 38-6%ԩerF72$2 4^69 }y6CU5h6bp*p322@3[3ti ? 7.504J EQB'k.1U3[ mlS"+3_ 43 )z04){%}{}:"4X 7h2Ș Sr  i~3C$3_QW H1QW U 4^vVSy| vYa:L" 8^!S }9},g5gX63T" 47UVn5{%}1^ }5 " Z<l}p5}`^}7}#3](_p5}3p7j }2   ^1} } ' 9!2"22uXF uXmuX Y& 3-  8 4X%8 X1#4 m *W?280Y5YLmY9mY9)54#f9 2,34; XC4 7 8H , +2 ,6 Y[3E,06v P #   \T b ; q,w 58a06 b >s5+&d5@2| |;5[W<2: 6 _Z3N }|)" 0}97^0\c}6<6|@6}6|@}9i*33U} VW5' 5VW  `< }/ z06blu@6  $56SW6p5 } 5# : 1UZ }6}6}5\ `0 }z6y }u<4}3{,3W + X j@2) 3 Dw Dw={D Dw7%0<8tu8 _2/1t13{8X7#7u5K5̈́,8xx)318 nv%- G8 m :#(12s-8Av-8nvķ9-] nvzI? 6H{# nv%.2  nvą 5h m.25 nv9nv nv3DF  a 99nvD7l9G0nv ["3a 3 < # nv9 nv2 nv  цe93$ ov274  qv1 + 3 ?6$ sv7ɶnMr uv1 3~W~3O~} 5$wv l:181 1}R*25my5 D4F =47 Rl +27Si2 &$J Q$5k& 6 B3N6^ J Xߊ_ nM1, 8T eB W"1+p8p*$*p6''%p23-4 Y @ f, X 3_` fD E/ .7|Sd 3_cG E/cZ4> Q"s6N)551P3PH f8!#37D6B~f#55b :IXC4 s8} d 3_(IcC E/ Q_5b C \t Z3 f43_45d39؉8!_ 3 EK {(8{f4 59 E/~ 5CRD5Cdc f#55b + !d #38J fL1b u z\3`9{5jf#55 6`9w1a6 W5}6f f0df4d  f#55b 639^ 365g  9  6s49 f d3z9}6(95 !7j17j f#55S  zX9 91 7"9 v1d #39 N1)76)8;'|3s19>b *727&,867jZF f1 6}  f5 d*3_%40G4Dl28A 5d*3__9 3405 ,8 A 4f 1d?3_8'G f1 68n#1028oa6f 6e 8 Jl287  ;A < 239    f5b 491 9 i  9s f1f \0f f5|&79397479j2 (99L{-7bK6"R 9]] H Zs6 pR!c b 4k4(3_2 ; d5# >b!3_#3850 dM#35>b5 -rA#ik4^F.r^ d#57 ^49>b #455yBF5OF I+14P 46 F dd 9[4<3  d7  #46q k d<FM t d5:959 6 dG @b6 I5I,* K x i9Bb #46y dM1N Cb8 XrO  O!+P ) d5 H068d#46 dMQS+2  6d k5S4S d a 176  0k k dNVCR?VC fh'444( [N4 Q[NK6a8a*62k4A8e9 $47d6 2cN=fr8 4H %$48P=[P7 /48}[R=[.6 $49 :.x08X~E% q\ p1  '7x29e8DA3 i|fD8{B%}fPr.: < egeB A:#507Ail{%BB:>96gA% ~6t/t P11 g8T P8ktsE(t t,t 9EK~A~20t  fr98W Š/50DF9i0 tGS1-!  t{~S311 u.m#A :C6B5< X}7x,3>  @7, 7w9 ? r8=8=C G# O Z3 G55Os3 6  O118iDƟD7C2D7 d3K7: ret; } `SS@x HELFAS  C x@8@-*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver%text._ZN5cudnn6fusion14contract_dbiasILi16EEEvPvS2_ji 2S2_%blWQ:osharedSAreserved.0compat.relD" <  S B ,F: 0Tx!7D"rf%!N%fX 9P9HuD09 <9 89 49 09 ,Z9$9 $999!PLJP0&p p6[f` ,  p`plp qp-pp-p t# $tat 5at S|50D\a{0{5Sbyn&wk00C0S"y| "0As`6y  C yPS(y' F x@WwP@ rMpR/{ b0Iv00{0W0W  C0pb O{  0    @S|w a@#w$ P5 Pbxp$x@ `x@@ |pR 1tA D0 p0A|!x@@8pbb.r0Qp$x0"@r 1t %r `yP@$x $ P@5|@PPr `!pT$| pp5r0D?0O Pp/r"3p3G0YÀ{ 0C bx  pR 0pB  P K P` 0 h i 1  O Fp`r4 #xT5r Par@0TrrP7 pP@$~ P0x0pbAx #05r270 pAx 0b|1 r 07000Wr 9r1PP$x O3G( Tx`x % !rP"0r v`Ax Wx Wx ` 0Cqi| @ |`@pv B |#t Prp @9|`6| p ` /E,GIm r0 3|cEy@0#2" r-p`W$50p G0H;@K52@9@TAy@OTG$ `pE5| ?wypDG@!+@ / @ڰ5ppp @S Ay Tx x x @ Ơ#pR!I$x 1P` #ups 0u cx #x@@ 7xCx4 @@ 2` @ | pp` Ob@pPPh$x PHr@@61tP0Dx 0:x % 0p 0p`g rB r  p p&fp &p$   I c "$@/5 0 f0b$0Op*p&@$@@p C50X0)06 p50@s5 050 45A/p91t P9r91t 2 ĝ b5`kOr@@9@D  @kďr@@u @uhcdMIPf"y -b@ 6w r`;0 =0 1P` ?@  @@`|A 00p07B @x .0Iw0 6wP @   / b$ ď  V|@ Ȱ4@px  @Wr /;  =1px Er   @$x O |? @$x    p 70 Gx9pH|/ @x"Hx Vx   Tr  4x"@Fr  `r/ 0r / / `8""@5xP9 `6Pdr0 /"{5! tOx$ p6| 6&( Z$| 9 6(0 Z$|" 7 @8 4*8@`'Yr!!% 9"""6dr$$P`4&& 9((4**0x  @r/`P!x  ,//$   -/K& " " ./p(s//**00 r@p@0Yr8 5r:'<0Ur>0S{P3x54@x2v>0` r53b@ 4 @dx7p@ @@x Vx9ЀPx   @x!@#|5r4Ɛ 4 0c=@7@$`@4@Vxp /3 | $PS#  0$@iT8 fx/503``Fx C !|0P%PCx @Dr ufx  "p@0*p  /@$ S PP I | p pfx pT`P$7@`* `$`%!/300C,|  $`% ` ) `$30C-|  P6@*` %,`)6% !؏`3 06C.| 6% &x$ `6%-` ) 4 !30PI/ | )TP` `p% O03!p#PxTx 9`Yp`Tc @ 60v" >0J6x"  F p/ b: &$ % u/$090 &<JP6x*p0 6x( % P%( (404@x 0 $ 003 ^'O  P2TS 00& !04!p0ES P) "Y"N0 TS &#P$#^0  & $$$> ZS ) %ZS%N0  )&Y&. ZS, %':'>06% (0pp4(pdS- P@ ) $).0`01 `%,```%*@İ4*p`$``:.0@@x5+5 #+0 '-5@F$x pVOx pP @ux @x ? 40  T |@@sy4&(y4m!4 4 4*"YPF1tCp @0$;5r42B`f/6d5646 p/6 CG'@X$5@t6@  `#G@ J5|64466p`p@@-AG r= pp#@ ?ڰ #44+44p4p @ @: `1pbExAA#BB'@@g|88 Jx99 %<< 0%::@)>>5x " "6.`2@QO{U"u/# *Q;@%9'6 (f )i*7+@ rAp#pRPGYt M6Gy@E / '&*n'Cr i1t70'($r"rp 7r O$f/x%P$x9p1x5%1 Fx :%  7998 T|  :5: ` 8: "0u0@ %1xP p`uxP 6r7 @pR pTGu`@Axp `6|p'p$%xy %y!'C(y  `%Xy H H HH H$H(H,H0!H8C<sbxP0 `Ɛ%p% ' &`r3Џ&  yr % Sr$@% ?@  @% @%   @& * % ` % @ +  % ` % ` + @%7 ` %77(,@ &EGu ax'#P+lb%7x):<W D7@(@ "@ f%x!  O. -| P 0|7@p0 #M P 0  1r1xP P "!p (p 0 %66  55 "#tP Dr6@iw'Tr56 p%6  46(P"Cnpux60%46` & %36 ' "Ux26`60 % 6#- Ar1p Jx !%5 r Ur5 !959 5 9,54453`4*52 r0? px-aOr/ #|`%+@r. 6x7r-K| @ ,o ,@ #8r+@#`'*,Er) "3x5!%5p`5x5P"Ώ3`$  QF{ 2"r $Cz@%b ` C{ 4@xR/|8@0Ey$ ax "u$r p'``2`$G"?`@x3p%  `` @` p3  `p+ @#|0%pSOr'ڏxp Cxp2"r04p6Gu4r R+6r qs! @|`#0 r 4 1sT6$xsr`2s`!d1t`4`%$`s/$r 3`'r 1rk !r` 08p30"p@p3T p30- +Pr@4<P60b'@  !E1 p`r /#@Fr00, E$x('f{4" bw )76"4:(? C"}bP#8 fw!0q"x co0@!p)Ex 5b|@ ] .8 .P&%p 1xPx Qp3|  @ 0A"#P37% p "@ 02#7`(| >Đ#p%$ ./$809&@,% R"rPS 0 U$|>0ur 9 C/r 0|6r-0r `7@x"0pbVx , p070 `0f c"rQPO`0fʂpxr (3C P06! x ApbCb#%C5|>>%83r `@>@ % #x? 3G@!6Yx @(5x!P-05r#0"0- .0T |",0@ 8x##PE5|>@@?4pdv64pdr x!p`p0 4""@p6&u"5p& p1&p1&P0&P'5P5 s/5 12c5O u050Ȑ4 C r#  6G p/00-E P7Wr4x@WFxr 0 &   Er;-G`" |9Ex 0)N @ 1 4 ;3H.%;; (G44 :;pG|9 4E|   :94p44& 44;`& 3' 444@C/` "9@`+b$@GO4P=PH56Pa$ Jp4"5PE  +5 :`P T5 &0C5@E504 4 P"40P?Đ4`4P4)@6 05 @5@uh `dGY   Hx<0> 3 r 2x;;@3p?S|< p` O5 4CNȏ   //80 &x 5| b$ P 0 91pbT0 5   DƠ%80"PB `pxb5pF5/$ 180P!T p  p-Z p-#0+p-Zp-'p-`p-1)P!0  7-`-*-&-@@-4r?0 0#WG0p- . -S{`H -!. T*`-`- |y&OT!/p Q%x) , !"P $$ O$ *" /6%a%p) %bh '* .0pb OM &S&`4P"! :- P%l@0 pVppbrP*G&`E5|`4u$|f1t0|`$0Er  E5r 05|pO #4'P   @Wb&1PX1@X/0l@Cs l.{ 0Ss. XpJ5x#/#"`2)0 1 0r`DT 5b@V!P0 E$r @#%r *ȏP#P&Yah'|! "Q$~`I`pe&0PP Qp #0# PG  YC/02F$x #&ru$~ `Y#$ @'P%P0&0 Dr9@" `&T 1ppp/ /Gu0'F{#`0#%0#0`-PP" @XRO  P"0B )@uhf`p"%-O,@ b [0pSx "0! !p 35s"xP \[P,&(CPpx L0/((5 5(5x M @/ `#0r0@Dr  p FrpU xp -!| 0!O0P\$05xp60r #5xP6Pufr+H& s5 <#UP 0 `  &p3U$x `0 P#/ 35r5x  0% 0 Eabr!0%C5|PC|0A|15@!`%4x0PP)0Tr!03s/|(#?QX0!x@QCpBpp$p`-!| -#!r%PP$@0p A x0F 1|`+01pxP#% P#@pdx2 r2pdV 1$ #)& b 0* !D @5 F@4  @5x 2x t Spd PF "$P @$#0P#`#x0@#G)PF !?2 )P!| !P$ p`` qExH!|%2'r!@5r0Y  / [>AI &r*0! "0|# 5 W?G9 *! f* #ExC% ;|   HEx!T %%E5 WG@xQ W$  ao65"I@*+ 0* ! r Cpd`V% % u "!PQ`71x$$1x1Ұ%0  48x@@ x3pF"=@ %P(Ҁ P!|#"⏰&P*b&&0`'5  Gr"`t' $  "!p` `8x[C$$06`8r '##@,W5$$'05r""0'5[ a&grfO5""$/, b0 0 Wx *W"!pT5r`pf6r% !x  6|!`O.R xp E5$(/`E !p&5r p$8r G$| !!!` p>p p6$"@%V@Dr"` P !xPW5x  (`75r/P0 0!| 5r" @+0DxP   ($@'@Cpp Er`/ 'r@PEr0ur  P a 'ZƏ0H xG$|`i5|@ ` 9r+p %" @ "Wx [@ eP+r !6rp%0&xh p 6/a`:x`  PP2c 1x@( 5r@ 5r5/ pp1x'D'p , 1$x"0"0Dr 05 PȐ  $ %   8x#r 40  ] `E5%"P% E P##@]0 J p@&# E$| p `8x8 @  P @E$@X5r P@_"%# ,f$|@&`* _DxP ^@!% E5  h'    %#  `P  `v5<*r0.81t##p@@)r P0 65 ,!4)|0' "   ^3pdzeF5 "/0pP0  E . Y$|$`  @001P-0P P 067۠fb.5 7|0Y%00E5r$ @"`a" g` P5r5ri)| @"Ġ@` &&p&T5 `@)!&r pW`,r  ` P|pp  H x 01x P. pVG$|  @$ a4#pr`Dx10@@ 8 @ # (@p )r 0 X   % f| 8r  j`A`l @x  <00'5r8xP0 E5 P /s 4@ &5 0 Cp x  A$|!p@ 7$@8!|0 6rgP' 5r ĀP')!b.pp%9` `P P m )3r(0 250v  P5 #*O8E5rP)&rp=  %0)'@'5 !/F`E 5*W 0@!%0E5P>@p&@%`0+5@>pSMiEx P % uPeז"Et>ͷ5S,RpÆ x<X  A58"R@FWX0@1 99@,@P@001Bp05A00H0 E0`,A0D3 BAr DD8D 4D,A$.dx X,`(  $ K7Av|,A TA P+db@H`T<A H0 h!$ P82!` 430QDDDl(. (Q x **Pl4 l  @ @ $$  / D$/$4x A<4 TH  P <|0 rGZp)pD$D$|10,/DH H 4H x H 4H$)$ $ PT, |$C82)D! 9DD (P6LP(4iPA 0 b${o}KnK~g>58 00 T T.    P8  3,  4 6 pA( ADk/:6ގ]C;^m=ΏvA $$0@    XpDLX$ d4 t,   h lt3Az,  DH* \ ` h   @ p  8@ `  @d$ | L<(FAd A@!8 !$# LLhb$@,%.8 h <7 8 x #|` )PP L < < p < (T/h (| ^$| ( . < l D H LXLD8d&c!hH@@ LdTdt h hP@p Pt l l l4l  tp X@ h\H  T,PT,  pT <$ 0"HT t  @ /2j 4 "`: 75`72p)pE(Fp $`hp+DPp)P%806p%'1(ĺ%Z4"m*X  ފRc ++NL$'jUfP:toppF7,@ U=@9X,L5 6n/F 0|P 2=,D$ U0x  Q!+0 xܠJu  &Z  -# @ @ <@ PCqO.ST #/!Ml7P9@@[#D8(l @i #h@@@@1 @_Yh&U @/^@@/@(eCo, /@@t@@ p.L`" @8iSz@@/q@ `W QE@E2-@ @/@#ra @/v@v@%@ @s`C/#  @ //8@@/@@B@O@p@@/R@"`@@@@"8@@!wp8@,@ @/;@")H,@ @@")q,@ @@") ,@ @%1 j 0F@*,,7 @W@@@q, @@py@@/ @"8o,P" T@*@!@ )` @@ @c@*ـ@"@!} +p@h@ _ @@ T @8(` #}@pX@F88q;PU@4~4Z 0ELF3S  @X{Z Z@8@.shstrtab.'ym:_shndx.nv.info.text._ZN5cudnn6fusion18lean_reduction_fp8ILb0EEEvPvPfS3_jbVP9osharedR@reserved.0.rel ;OrelaR;M1<PRQRdebug_frame anv.callgraphprototyponstant09U  Smem.offset0 .0__nv_RSMEM_0_0_alias%opa4GS }2 W!! sP   )`  Vg3 N` HS$ @|  (( $,0 R<6 \h%h8&4hl#/  j* 0!7 "$uXuT9P9L9 H9 D9 @9 <9 894909,9("%!99&!P1Y"6Y  Y6F\#_ 2\ \l S$5DA{p{PyRUz z %@ 0H F@#y %"EyP@ 4&bxOsLQ r " Nxh SO|4s!d5t4O$r /'r $03'r pʏrQ1 @$rPp rp` 0p0#`pP0r 3! rAp`p3G)1'xF6rpr @?Er|? 01@0rCA?@@$t 0$ Pr  T r@!$@a"p0(L pPPA| 0!{W8@# a0A| P0 cEy!cG8?@/y>b$| PCx`$|  Ơ 21@r @@|;@ @|1 @r?/|@0" !?J Ay 4   01G810#Ay?@c{ b. pz2|v @&r   #!r@p/%|v $_pcG (y 2r`0xj `0` a r0| ? xp4rp x.Ap@`r 0 9G00֠# `pTr0Ir 2 Ix  0  !Ex v$| p  1 B| p@x 0| A 5r8| `Xx@&r"@(@Ar`"3|ppp 0J x ux@rh| 8|P@x``Ur %pP#  / P*@) 5| 3|  @s e|" Z 0"0' U|p#  @#0 P!x0E0 $B` 0kG@ 0P P&pP @0 14`)P` p6x P `P 6r0& @  0+rP4  @Yx P#r ` Ex Pp1x0 B|  06 0$@"  $@P%PG|PEr   90W| )0 % @x"p`/T` @7$| `P Plor0 0% P@  ' Z|  `#| p%  ! V-P   <" Ex" x pEy ]@ qȀ  C  4 pp#|` r  0D|  *o`   @     ?P ay`pr` !y? y"G@ # !x  A5t  Dx x  ` Lp 4 p &p0x  0 $pB ( @ xp 1pBAEyPp #  ` ڐ# D$r @r Q  ' Ey pbP0 Ay p br0 %P(%uy!@@qO r Pa!rA!r PEy x;?A(0 rq`"/@qbsO&!r p ub!r OpF x ` rpU r ``p#rP#r/ pP"( h &e rpO rE r @C @d!rw!rFs@v x6r@4@0  #p#r%u y rv re r p%p#rcOx @P%0 0H x6!r` 7r3 P"%  /`P @`% p6pp% @ b 6sf xΰ2rPs@pv rtr@`2#0p! %p4 P0@P`!r0Ey " ' V r`RP@#r5 p``*f@@T r  P %P O0( 0H xE rg x%f s`b @6 ru/y@h6`PF $` 9 x@cxp @'0U$raƏsoEr5@(EyPu" rwOr@ U r p/#r00`%@ @P( PE!r00 0 `p' Fy+f p% 0p$ ̐bP%0 o@#rP` #r  "P %@"0u/ r!O0  9 /9r04 b0% % Pvb rV rȰ95 `  1P 4  0%@  T#rP(H!r  ƏP9!rU re/!r (@1y&@0 *p py ; .s0 6 A #r` p1 rxOy`p0#r!Ad!r0 ! 0 %@@'@P$@&@0(09 x 0 pG!rPBs @ O*b p  !@  `p-b  "P cb  r  p % `00  U r P7 ` u/s ` 0 P `05`e r0 B/#r0@TG 00 p @  PP@@h P  pp% @6P`Fr@9 x@E r!p u !rʰ 6 x0 0 Pp0&@p@  4  4 P r @ %  &400 % 0 & 00! 04@b@( V#r@g #r`6y *&@ P& O$ /0  7 3 r @!b`@  (@# 0  %P `&pP -d ` *O!`&x@0 "@` a )/078 r U r v#r0&0Uy %  0 ;r "%  p % Pb& O% @*p`&0 Vy@&P0%0` 00 P b0EsN, 0P)P  0p  f r 0pp    A  P4@c/ r4  OP$@V@#B_3G?%P$?r` P  % 0P0R0 `%0p"% @( 0E!r@ 9 xEy $p*/dU!r p@P  pp 6F r 0p dpp& `  @6r4 iy`Pp&@ E!r 0 bp @ @ 3 rp 6!r@9$@00ʰ@ 0 &P0g rPdp& 0 %% p  YG  p| Ex @*@& @V/$r  % `( (#r0Er #p `"% ΀%  b ' `*E* * Cx@*0 / Pr* 0 0H!r 1rkI x 5x  !-0/1s )!r*%  QO#r! 'G */H`!0 &%sEy@ 0|@pP #S1r0Vp3GX^@0+C0!pb. r00`05to.$?@ %C + +px*,+`b,%bOpR *@%|@+p!a/>q,3p`-#@@E rbO>0!`P.1%|+@>  a>`Dr)b `1| -P(py`}  P##M < b"|"2|/,#xr1? Rʏy   Mp6Gy` 3b2v{2222`2020224pďx20. ' e/{ 12b#9xp% $ 1 @7@@x-#04 $!/ p @6GH*@&b4 pp8$| ) 01r p!8SxP.`17'3| 1 ?(1# p1$ O1 ++ @4/ x +`0 `0&x@0 0%44 0!/+X/x Sx P@Er +& @p' Y$|  1pH$| 06r 0+0| C/Ur`/%0/3| +3r  /R| / %`5 ` 1@.1|0,O 0#pp|PGx"!!  +fGtp.Рd 05 ?p P.Fr@' +@ PP5  */3P+)% 05-@   6rp `8 q + oO|@+ @-0  6!6 9)| 6@11r @9 611r  ʠ$p Qr-695t6xp@6 6&O663P4iΏGpE{2&P6)61r`,t x  '6d|/@6r @ @p6 ' Fx :  3 @`D|p ;044pG| p0E|5r 00#r @6p0"Q6  @6Wr `Ux 2|@J| p3%  @Ex pO$5. / 47 `7' pZx 04% p%03  02`6 `2#| P7p9p6@46( E| ` 6U66p:x6% 0 P 67/6@P 6PP6 9{ 6xP0 Ap6r@&ra$xP/5  0O` @`!| 2`6 $r#r@;% `' Ax Ax 06|4!|$ 405| `6@"@99 4 4 pP6 5P9/ @6 6 `/NPPe/r @P P@ Op0 Jx   % p% !  660H x6 69xp66 060H jr 6E/6646 666 76% ('6bb$G0`6@ @065x60 6Jx 6P6Tr 6` 6 6"0`&66 `0#   3H`+% @b % 6!x`) @5y "36% ` `&P$ @ rp*@! (Ey   ( p"& 0# P*% "/@64#'& 0 4d rp  N  5 @%$@&& % % @& 0% `, p4 &r,1Op4PppA#r0>0$"p@0$ P4e y @5@0$/.< ( 0$1#rP*0*"!p"00! 0E r@ /@$( @$E!r 61,E x@*p460&: P* @*% 0+$`3&`.E r@% %bp!% 4* E!r 'P&`8D49 xPE!rPP&P-% 4"@ @6,@&ƀ(@6 xp&) pP-% % 34%@1`%H #r7 P* P%% 0"`%P@% 4bE#r5%qD05E!r` # ,'P53 (5% `&x90̐*0,#2r % :A#r`-PP&p`)%206 r':p % %P9 @% 4.6F x@ `, E!r$0+0 `4bp *p& #r69-(5'6  % 'rp8%% 3 %`)x/F#r$'.@,p-@ `8@% 5dEy 3d00 6` 0/Ey p`0/A r`*@&0 r`,-%&0P3% ``@ ;@ @P  pG#rI xP8!r5P%p' ' PEy p%)  Hp54C 0 @P@' )'  ? , 9 P:6 r!O@P5r  *@B>'  @E r ,%0# % @0 0& 5%@&@&)`()d 50"'0"p6x (%   02b@(0  %(`% ",' P U r*' @ @ 6y + ?% Pn0 %6@4p p/ (7#r4:%@(E#r@ 0 `"PDF &@G!r0 * /@%  % ,5A<`0 4p@=% 40> 4% ]W!rW#r CF x  PCH r 02 @ 5"pEp` P% P4@&@ 0P@Pfp"p& @ @ % `##NW!rpW!r Gd. `g/ x/<& p 4H0 `@7%  " pA#rpHDPW!r 0#@ ` J r` 0 -ȏ87!r @/-Bp B`` 6&`< % @ 5 `%  6r QO#r `4 PE r @ % APP49G  pp @4p`&p/?D%  h?`% vȏ rP 0@@ `P %Ơ"0   DQ@G @GAF`e#r: 6!r@0 @`*n :0H!r E rP   0!r @ &P  @@<@P[/5 @4% `08 p%[(%  )p7xP O3 E_#`&05|P3!b`3p%3  (QOx. !` % @30@23<&  %3 P#r   3P x@R3I333 Y3(Q"303*P33`)/3006333/O3? 3333?ʏ3$J0#b F> @"`!? @ 6 1  .lTf ,) x4&8$ #@0@\q @!'A @.4@ @  H" @8/@ @@ 0h 2. r<_/@C. @ @X/#v  Ht@ Ow# @B?i -@2@ 8(h #fp1P  `88@d PHELFAS  8C d@8@!*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver)text._ZN5cudnn6fusion18lean_reduction_fp8ILb0EEEvPvPfS3_jbVP9osharedR@reserved.0compat.rel;OrelaR;M1<PRQRdebug_frame anv.callgraphprototyponstant09U_pmercNFX!  9iXZ#G 5 21Smem.offset0 .0__nv_RSMEM_0_0_aliasP3capu> G+ d"  Q"@!@uo 0)0S` &  g11 x`/ H S$ @|  (( $,0 R<#Ph)hg&a*@`2>p0P A> 60|%a/|,`%py} t5d0P PP S#M d#xr1?  ʯ @ PM@6Gyp0 1P0P00 00109" 0@+L7& ,01b,09w@x0Or / 4p` ڏG l )/ 1`brp0#| #p%5x&#pp,@|p1(#1tP0@x| +T x P00&/Q/x 00x+4p@ 0ʐ 9Gl, ",$% *F Ex@%,% .0'@A$r ,2r@4#@1 %`5rp8 )5xP07 *1|3-5  0@ p @$ ) ) 0 # /Ex 'f/G`P, GxUx`Ox`. 3p3/3 % u$rP,  E$r 0,2xK0,Wr 0Fr0 " ,Er * P 1Er   0  +$r@+R|  ( @| 0*P| Er #* `5Vr 0 %%*5 f/G E | @2b`2@`2`2+P2p67 P2P% * 202@2@2p)\  P2 P2%P2Ȁ+ 0"*'Ur 0%p0 ȏx 4  !0E|,0U| `0#|p/9x $|P2PHxp1x-) 0V|-S|P. P2P2' % P29 P2&  @/ % P//ƏP2 oP2:x@2(@2Ex02 P+/ 5| %  %@*@2' 3 `4 p p``( `3|  % pF| `4@7 p1x 94 `7 3| %P$G|  5`180h| @Ex%p P1%p /2 1@*@ @7 0% 00 P(`T| yOI| 02 `P# @2# 0@2(0 HP`@2P `@2pHP 0P2%` p%P2oP2@ Cx P2 @26r :/r P @21|  #  ? +?BGu$$ ;Cx @20Cx 2Cx02P4x 6xS`5`0#020ax` `4r Cr 2 !` tp/Hr `1Cx10 @7 @!xPpRy1 Wx 1@y Cx 1 !! (04`>p04 !Q 0 8@-aȯ r q!r 1%4 @6 0X xH xT!r @' As0P2' H xP X x W!r `6 xp)!7ub. x 0 ( !s_2t s  b P&p2@&! d$%p36 P#r Aya p0 8 x @@!r0 W!rp7  `U rY x31s @7r09 x@U#r p0p Qd p$60# @3  0p P5L x 0@p%py9 x@Cs0!r 1#rZI3@ "4 xO!r H x p y`@`(2-b Ay %Pp@=Fs*`CP'7 xP$'P@ G7 rpG x`!=0 ` *H!r 5 b`. `)5ri xp4($5x  pT r $E*P 4 Pp*%0)0&@X r# `` b @ r@'4 `P'$ `#D0@3V rP@G!r X r`T#r pC $`7rpp# 0$g r`'PW#r@V r `Pvy8G!r%Sx, P9 x .%@ʀ%@@!5p0(cy(PP& 409Np 7 9 x@%3,hP@pn6 r1@0* ab#rP5r 0 @#0G r0` P1#r@6 rg xC44 @ p y~@'F!r/p.`  ( @85rPw!r W r W!r `*p(0X xF r fs @( 0p`Q r`P  (   /P+P5r 00) 0@#r  1 r` P5r  =  P@ 0,  A00W#r  @PGu 0  P 0@000 @0 0 0000L0P  #   9 xp   @  `@  @' K x % p6p` p -  @ 0  @0 @$@$ " &A-& (    @,0H` 0p p> g #r   4@E r`/0$ !   `5` %0P# @'@U!r` &P%b@3@0rFyp " 6 rV y p 7 0#r p% @ p `0@0p0 " P P  A@`" !N G x 0&P  0    P0F rp0 p !r0@U r +0 4   ,`4 pP%`0 8a #r+G r   D p`;2VpP9P !P*PP`#R0 P`` `P% p'p`V!r G!r0 ``.)xH r@-  `H  pP@ P%P P3 r ` 0+`F!r @ 0 % 4 P4 ,@ G r `  P   ` % ̀N ` ` , 54 H @XGu` $x.p,ErpErP` `Er @$! ( 3rX % p*" P0P40 F r;@< P   ` 00#0 P   @ % . o @ $;O9Gu $ ,b xp@.. &--@3GX@p.!).@.*@ r @@]@*.P#x .2-!R00%|.9 7Dr !OP.*E%| .j>.".! .Er'S>".+ ` .p .pYop0 .0^xp"`]ar, 1#x. 10Ə0\6r %Z2r(2|1 /  0/: [v _|   Ap"Rn3@87C0@0PBL 0Q  :9`0KP, 4 , p0 IPPP P H ` 3+`f@0,Q#04 e  r"b`<   L @&T$?%k@    rrr&R8r @r @@/  @    @FU#@ lR GZ^d 3qQGn  X<8@ HB&b82;&,P BB2D@DD$AR&}Pxo߶}KoL|*\ 000"|` , ZAhPZ:RRr &r  @ D 0T?TADB%BtXtX @x,v |  \ @       PP  %@B6hX h 8<x   3,|@H P(D Pxx 40 #Io5Pgx%E)p)pD)Gpp#@F"x>%Z4"m*X  ފRc ++NL$'jLx%fIIv$xYfPFGL'3p ww  /,/L, H| / 0E=y Q(<(0('(( )&`j-{ @ %% @r8i @#A  1 R.T} ,)Hc@ 9@@[t{ @I   @@@d @_VDy/QT@@ # " @8@/D@X@@ 00 Qw<Qp@!~/@ @XC/|1h@ C<B 9/7@.\w@ ( +@?~f %{F@   @%<T #ʆy,_Q* 0 @b@@@q@@@.x@@ "@` l@`@x0 @@@ 4 @0'+p@ O_@(@T q8% p@1 @x tHj-uumn --ext-desc-file="/dvs/p4/build/sw/rel/gpgpu/toolkit/r12.9/bin/x86_64_Linux_release/ptxExtDesc.txt" < // .version 8.8 .target sm_120 .address_size 64 A.extern .shared .align 16 .b8 _ZN5cudnn6fuW5smem_E[];kisible .entry,18lean_reduction_fp8ILb1EEEvPvPfS3_jb( .param .u64 .ptrb4_`?_0,jU1jV2jV3jV4j/32;5\H6\H7\H8\H9\H1)=1]>]>]>I1I1#Z17 ) { .reg .pUs%p<22>;b16 %rs<732 %r<293fUf<110b64 %rd<82 ld(%rd6, [;-];e7e=2e8e=3e9e=4eOr104f=5f/13f=7f0>/11g>1/10g>/11g>2g>u6]; mov04, %ctaid.x; cvtw0d1,*14252y22252B, %t`mul.widea0037Radd.s#sd1; shr8 27Y5; setp.gSpm 04; @%p1 bra $L__BB0_7Jl3116Je2; and$7,=12417"09$lo1 #1Vt V )d2VUe6; not8(2=351:11893s"eq7p9I@%p2p43120H1x20 3#239, 9n=24, sTH#16esz,(31!12$mj#26q6 N6e2; neg4H8122-5127. 2 1z+T128; )3: .pragma "nounroll"Z+26/829#$ov"30W// cp.async.cg.global [02], @d17]3MA130; C2048]1= x1 #ne 3033Z"4:#lt4A49 3& /323H31324+31$ !137q l#27k5, 409964-7o68 m5137Q8Q~:1379( :: Z%69=Q1,6:G3269+6G#25# G,G B3, -wd/46d3139d&21d"46d B  2   4* 41412v s# 33514542733:g 54l5441454. O248192f170T 45 567 w <6<u  $47*j )474 #3384 L# 3281gJ@%p7 4149` `5I 5Z 3s/15 6mad( &15 55 5 6@5V5V}c5j#26 #65 2 < 5H:0, 5   /10 %6 4 #39 ~#']z_ > 4Va 6V3 A"62=7=8=N>5=   7 E O 4E 801UG J@%p9= &!16- 8R6} ! 3S-25 77 5; 7 ;5 7>qc  c*c6c %68j 1(B6)$:102} 61$ oM$o43z 5)50#253B5, - /88 1 %42,88 #176l( $17-43Z MT c MKi#M4M 5M M-44Y< 6Y(   9!$27P79# 969U79} 858 26X%X4 7356     %18\=9=Y ~3U, 4 876 pX 1 *10=:14: ommit_group`$wa @bar.?h #954 <9< !19q/5#$ld  8 0i$&//f!9X7 )92q7q#91q2q*19p %98q S"19x8q3q4q-93t 2.-_6200  9|; b^7 120 2T0yl &20y  >[) SJ56h$M2 )-4} 886> (7:3 21*20PT0To11 4T3Tncax.ftz IfC 8sub1%0f3FB8AA3B; ex2.approi=f32b!a$a4#f3X y29; fma.rnp7F9F7F4I9F l l-83 1, #23aS7S5S4r219 S4S8j% 2b j p4 < $ f h a$am #f453"t n5E3E1EFmE #223R 2}2} *22}2}5 2|2 26e#2 .26S" eR k5k /|P $ X  #23' 9=2 &23P u  )Bx7 2 9 z #r7w(5P/214-89 :.91: :rl/45Z,81&\91 c8 %b-f8 22\ # G0Gi9& 9!" w9! d 81 Z 12?#22?g7> 3- s8.<.?B,?&p130f0^; rcp 9k)3elpK9 8<,(-p1O2 f s'p$%1A2* S  0/'%lo/R16 hi.+rn.satfinite.e4m3x24lo,Kg. (hi.5 2{P`hi}; }ubra.uni*2k 825: 6%;5m22I .. y$:+5I0> g/>9fi4 -; '7 M,V  @, 9 (,G ;- n), V]Z-Ca.to)0CF3}%st908 [2 0]$238# 9e0Yp*9$or47p*- 9\> /lg=9E "S317218 571 E)0~7 . \4 *rd"7w" &7#7()"(9: ret; "=$0"=Nb 6Q9=%j^9jKk9jK3jV9#9#\9:\"=#\"=#\"=#\"=$]="=$>I1I"=#s"=<"==mE<256"=5[= 84&9  Y<e#=:f %;1:f4f/r9>"; > #=9/>8e: n/:99fR>9f 2>>0->1)>>9@W=1! 1_>0>3323y>$%@8 ?dUB77=1 =r&0>&3,"#d1 =4!''0j @'AIN' < 78$ 6-4/z43T2; di$23+4$%r'5D4M D@t1_5; re#!10cK.^~ j!#,29)A'1b%4w7i( ?1?Z-&?] )d1 j)( n9*_(]A0"$11B16; 2!.)d2/10v;0S-90v;4(_f6/434 >%1_*<1_5W?; 1_q81C;C9f41)37 4w9" 84d 981_9nD78 s4B0148 3%r2f23=?AaC 0o, 825 2548C 8B8B*>x8r3234 a$ ; 8F3I4%23r>z8p2 /83B2R1=i >301 *3%%9'9n%1_!$1_ #}l o<?D*8(w +0Q8"8"Q8:9:8 #:*f h|NNG1Cy P 3G$X $$e/Y 2V69-11C$235s<A 84^-. 0:5085<$134385<l6l C38Z N *484N54 324N *N C$8C38Y89-35Y :6&7:('>':wH :83/ 3895838s?X 8_ 4w<5Y85S8H0747M=58=m4o&) v8Qc 88R8) R%28B5 t/D/1C.D8-54)E5?GI??i*WDo05\ #!p.w1(Dpm/1$ 9r OB*1_b 4 8B 87 1;488!;1-1M$)16#2448, z69 a79 7,) p7A @ tA$16': *1P#kG PBeF9#b @\'@1P#= 3@  $R91# 94B8 2j9_1_15:7824uc 1@i1-899#18c<8R2vQ80T#7x89_/3Bq94q9)18 =P9.BS8#207S7S3u?q9XJ@.245 4 F9FG V9@ ,999@54 2V9]16A=J-C(04 9#2006,0V9kQ& Q(RF nS4H7'. 56 839dT9|/ g509j0E D n  #20 1 2"==$20@x  D D6 q *rCB D0v r#B1 9 TR91I; D5919Qmt  357 41A4Q19 R>#20"m n8!92!>999@5g:96a DD3H 9!94KB09):9. 9 &1_S 9/ 8% 9HC.. 4sO3\YT4sS{dS28 55 6c #70c<n- 38!8p& >W1=7:666v: ret; } `;;@x HELFAS  xC8 x@8@!*.shstrtab.'ym_shndx.note.nv.tkinfo`cuver)text._ZN5cudnn6fusion18lean_reduction_fp8ILb0EEEvPvPfS3_jbVP9osharedR@reserved.0compat.rel;OrelaR;M1<PRQRdebug_frame anv.callgraphprototyponstant09U_pmercNFX!  9iXZ#G 5 21Smem.offset0 .0__nv_RSMEM_0_0_aliasP3capu> G+ d"  Q"@!@uo 0)0S` &  f1#0 `/ H S$ @|  (( $,0 R<#4h)hg&*1`0,C5|p'` 2> 0p@>p0a> f$pyp} "tRd |(@pR **p#M lpd#xr1? ʯ @ *My@6GyP 0/  0 0 0#0`09"/Sy6P/"0 0b`09w@x`p0Or.P | , ڏG P V/{0Qbr/61tP$8x@&6|p0%7p,C|+'Px|$4 ,`$,( 5|p//|`  /* #p* P#4@, +{ Wx0Ex fr 0,#@'Ur %5 ROr &)@0,% 0p4 (#0/@ #0/ D0," # /Ex 'f/G`+&+9x Gx0@ P ++  + O  02$rp+* %+  ! "rI1t 9r 0+ 0 `.I1t @15rp@.f5r gr@T|`1PP"xPT5r P@ 1Y5r ( `P+ 0p!| *0|  P0"00 0 5`@ Gr%U `P `( 0o ``P 0/ `V/Gt@ E |0 2b0202!P `@67P 2% @*122| P  2   21*2% /"%p5r %P0 ȏx  p4 0%U|0,E| @00   2$|/  %P.%@66|0. /P0.) 2 " 0 % 0/ 2 WoG 0 2k 650 //% ` 4% P 50 % P%@025xPP 6r @802 ` 11d5|  p8| 2  @%0L % 0(0@xPP4  JxP7 0 ` 83 @1@x`*p%(J P PP* P%P8|P65|p #r/H  4Z 0#@r0`2*  ~  2%@  2Do2  Cx 2@ 22r 3P:/r  21| @4  ~ 2    ?@Gu$@@ `;@x 0@ Tx 14x 6x S`5`0#11x p#p 04r @1 Cr 10 ҐtEP( PP1CxP1@7 @iF Pր20 0x 45xp  Cx P1 pAy  !4$``*o1#  "!1 >&@!Q@1 r5P#!71@!rP3 V r @QyGb*0X xH xV!r  0OP r i!rp6 0f!r 0Fs b  @v x( V!r  As "  $( @" 0&p!'2P(P+@)PJ x`@$$ @Ȱ, `` Fs r@P6A r` p! @ b@F r( ; x !C PuN r )x` p36%)71#r$5 F r0!pV!rX x 3 r! )$@@X rp1#rp@/y@`p P/ `'`9 x2(`*&#$* !$9 xp y 2sG!r P#r##P`@yA0 r`&07 x 1cy@#r !`E r#C!0#*60W rA r '0p" y 0s >(rpF x&+C` LH ^P@`U r6r PPss  60$@p"& P09# F09 xY!rP6 #0y1#r2(@@ $Qy Q#H x@#r@4  y%`&( 7!r PH$4$'-$p@C8@P) p-H x Cxp,@( 20!e r+` C(pd0 6s300&P 'B rư40 C,p%p'P&Fs4#bPG!r0P#r9 x yH r9 x @7s@#^@2` Er C0@! `& @/ 0$9C 4pb&2)$`ud !r04 .p @+8x@`  @6f#rg r U r P 0  p  05@'@ F rp@&@ <1#rp6s `'5 P$P 94@#6A#rP +;Dr P#%` p  @#r`F r %@5 `-  @PGu 0 @ P /@7 @0% `@p @h 000000 ` % '#`@  ?  @3'  ) P& 0F x p  'W!r `&0p .  f!rpX r  I x 6 xp0 b @ 10y` 9 x` P  T r by p v r P(`W#r Pp  p7 `'0; 5 `,6y  $ p0; %  0 !`06 0%@(7r! 7y =P@#r!A@   `:% )#@@  &`%  ' .@-'( P P2W#r!!  >0P@pp @ QB  p@#r!`.ĠB p0#K@% P&.C F'`5 Pf/ r 0p d``( &p%p%0 0/2VpP?P )P@b`#R P0 @  `` `\; r `' @*' T!r ` `I xPG!r @ 9 xPpp@ 6s6b* @b`5% *`7 p*p b  P ` 4p, H 76  PD1#r` p 04 `6r &0F r &P? )DP  F r 0% 04'Hu` $x-!XpHrP9x pEr @p 5r`  #0 ppT pb 0*(@H!r "!r )0: x P)x 0" `#r`0 5p2 )0IGu )vp@0.0.Xn0.0.0.0.0. @0. 0.0.&0.8%0.)&!%| 0.0[5|** .`Z!| @. +#p0.P.@. P`. 0 Y|p3a`.  `.Xo> `.0&`.%0/`.x` 0%1"`-.*b0-ar0p#x.P0ƏP0r@ p%"4 Z("| 4|@)-/  /w6XG_ /     Ap"RJn @4c0@0PB< 0(01 ~ 99`,0dLP, 4 @p0 IPPP P  H  4 3+`f@U0FA P3,Q#04 je  z*3p  L Ta PA T$#  @ ) ~x~  @rr8 @  0P&0P/ @ "   @U#@ o R GZd 3qQGn )h,X@ "@B&P82@z%J?t BAv D@D!DV?#P nPx^}W;|o?[3)/)w\* < 000 Hbh | Ht$AlP$hzhzV b@b   & @  h?h DB%B&|t j (^0X0  @ &` @@ Xf  PPN  %@B6hDD H D D<P D:D$  l(@/xy 4B#Hp5Px0typA)Fpp#`E"@xXx:$Z4"m*X  ފRc ++NL$'j"wxf0HHxhxYfPEF3Lxz |8 % < Mt L ,xg 0 ?=@y Q.R @8<hh0hhh *&`f-{ @ #  @r8i @#HB @ 1 R.T3 ,)uc@9@@[tԀN @ E#@  @@d @_VDxF% @/QT@@   " @8@/D@@@ TQw.̂< 0@ /@ @XC/}@ @ &B 9/7@ܜ~ @ t3 +~Ch %8@~  @%<T #,_Q@ @b@@88|Cq@@.@@|"@@` l@@x0 @@*  @I[p@H@ O_@(@T` q8( #_p@1 ;$!2@2<-2-2-28. 27272d?2_(2`M2q~2z2ȿ222Ć.2222 2@22\h2ؗ2(22ؘ2,@2`2H2H222hl22ܤ2P"2@2l^262n22X2f22222d:2.2 2h42\2 22D2F2$|2x2t22t28022l 2 2R2h2x2L2.2Xl2Ծ2$22Կ2(D22422*2d22022(222< 222l222lJ2|203l3P33  3|z 3 3, 33 3\^3x*3`3D33p 3$B 3lX 3!3!3!3!34"3T"3"3"3#3F#3@#3#3X#3#3` $3$3h '3 ~)3`-3-3..3D.3 /3`030313\1313B23:33$43 53273@8393;3xN<3<3$<3x=3=3 j>3>3>3,>3?3@3LA3ZC3<F3ZJ34fN3|N3P3R3PR3tS3(TT3T3 "U3t8U3NU3\U341V3W3,X3l"Y3jY3tY3Y3 Z3pZ3Z3Z3Z3\Z3Z3 `[3 [3h  `3 b`3 `3 `3 `3Da3,b3Xb3&f3 bg3lg3xh3h3h3,h3|h3i3i3,i3i3i3hj3j3j3l3 ,m3!2u3t!ru3!v3#3>b3>3>3,?3@@3@ƣ3@J3@A`3B3hBc3C3\C3CL33_3`b3a3cn3d3f\34i3i3j3Tk 3kf3k~3Ll3l3dm03LnF3ot3(p34q3q3r 3s3hs3s3Ptp3@u3u3Xvx3wL3m`4t>a4>a4?a4x?a4?fb4HA|b4\Bb4Bb4c4 wWc4lxc4tyc4$z3d4{~d4}d4d4`d4Fe4e4\4h4āh4h4ЂXi4 i4ti4ȃk4l4ȅl4l4pfo4o4lq4|,r4 44\444 4`4444\P44,4B4R4 444T4f44T4.444X44 484.44PB44448J4d`4Tz444d4&44l4D48^4x44X448L4f4444844P4*4@4D4X4V44^44l4444448 4h T4 4( 4 P4 4,4XF4z4444f555L5Xj5555@65P5 n5t55|55$55 5X 58 5 5  5` 5 54  5  5  5D! 5!l5"5l"5"Z5`#5#5$N5%^5h%t5%j5@&5&5&25'5'5L(5)05(*J5|*h5*5L+5+5,5,5,454-5-v5/j5(1515285T3r53( 54!54"540"545$#55z#56#57$588$59j$5d9$59$54:$5:$5:%5X<%5<%5<%5P=.&5l>>&5>T&5P?&5?`'5HAp'5A'50B'5B'5C'58D'5lE'5E0(5(FJ(5F)5G)5G0*5HHJ*5Hf25 I750L95L*95MD95dM95M:5@ND5N\J5Nl5@O‰5O5HPҠ5P5LQV5Q05PR5R5S5S5SB5XTf5T5U5UB5r68r6r6Xs6Ts6t6~6n666dF6(6d6ވ6*66066Ь6 Ќ6Ѝ66زB60666|L6Ĵ66t06̵|6$Ȑ6n6v6`:6,`6t66|6\6D6j666D(6N6Լt66d6ܽ 6|6t6ܿ6PЙ66B6l66X6,6 66R66J6B6:686t06(6$6D666<\66D6<6 b6686ު6 «6 6&6 L66<66Tʯ6$6 6 ,6\66P6³6L6&64V666|64F66B66(6N666L6dr66 6l666P*6P6v66@6|646 6\66T6z6686 ^6@66,66h6D66686H&6L6j666@6|6(6N6(66h6LZ66 6 6X 6 6 >6h d6(z66@06f666Dh666,V6f66l66T6X6$6p686X6h6466Z6H6 6\!6"6#6,$6$B6(%h6%6h&64'6p'6H(Z6)|6)6,*6*6P+6+6,6d-6-"6$.X6.6.6/60606T1-61=6D2626364646P5&65D66f6|6666d9696p:6:`6;6;6,<6|<6<6=D6l=j6=6 >6\>6>6>(6L?N6?t6?6<@6@6@ 6,A26|AX6A~6B6lB6B6 C6\C<6Cb6C6LD6D6D66Ld6lL6L6 M6\M6M"6MH6LNn6N6N62>430>3)>D4>>4U>5_><6t>6`w>,7w>7w>7>8p>09p>9p><:>:@>x;>; >4<P><>D=?=?<>0)?>p5??B? @`D?|@D?@D?APE?CK?XCK?CK?EK?W\?Xei?lp?m u?Pny?p?ts?(u?Lu?(wp?Lw?x?xЈ?yp?y?@z?z?8{?|?|@?}?}?xP??d?Č ?p?|??`???P???@??lЩ??tP?<??0???t? P??\а?p? `? ?"?\&0?h(`?h+?/?2@?44p?7?9?l=0??p?A?D?F@?@> @?@0SЎ@x_Џ@_А@4ap@Pq@z@@hP@|p@@@@@@а@@@0@D@d@x@@ @0@@@P@p@@@,@@@T@hв@|@@@@ @0@@@P@`@0p@D@X@l@@@г@@@@@  @ 0@4@@HP@\`@pp@@@@@@д@@@$@8@L @`0@t@@P@`@p@@@@@@(е@<@P@d@x@ @@@P@`@p@@@@@,`@@p@T@h@|@@`@@@@@@и@0@D@X@l @0@@@@@ @0@@@ P@ `@4@H@\@p@@к@@@@@л@@$@8@L@`м@t@@@@0@@@P@`@p@(@<0@PP@d`@xp@@@@@о@@@@,@@@T@h@|@@ @0@@@@ @0@0@@DP@X@l @0@@@P@`@p@@@ @ @4@H @\P@p@@@@0@@@@$@8@L@` @t0@@@@@@ @@@(`@<@P@d@x@@ @@@`@@@ @ @, @` @t  @ 0@ @@ P@ `@ p@ @!@!@(!@ FAH> GAx>JA> NA?OA?@PA?PSA4@ UAh@PbA@eA@nA@xA,A zAXA {AAAAAAABADBApBABABAB@A$CAPCpACACAC ADІA8DPAdDADAD0ADAE`ALEAxEAEAEAF@A0FA`FpAF AFAFPAGАADGAtGAGAG0AGA,H`AXHAHAHAHAHA4I A`IAI@AIКAI0AJPATJAJpAJAJAK0APKAKpAKAKALALL0AxLлALpALALAMPA,MAPMAtM AM@AMAMA0N0AdNpANBNBO0B(OBPOpBxO BO BO"BO,B,PFo?Fp`@FKPAKح`JK,KKLܯ@L@LPL LL@pL0L3LL JLJL,`_L0aLoLTPwLL L4L@LԃLLL$LАLLLĄL؄L L0L@L(LLLpL pLLLpLLЋLL0LDLXLlLLL0LЩLؐLPL8LhаLLȑPLL(зLXL@LLLL@LpL@LܓL0LܔLpL$LX M`5M6M8M9MT:M M ?M@M@M|BMHMJMHMM NMPOMdOMQMTMUMPVM@ZMZM\Md_M`aM̞bMeMD fMhjMkMП mMpmM 0oMPoMxpM`qMؠsMtM8@uMduMMPM$0MHMMMM MMXM`MpMlpMMСM`M0MDMlMܨ0MMD MMMMԱ@MM$MTM̳MMMM@MTPMpMMM̷M@ N4@ NH N\Np NNNNN(`NTNPNNN N,!NP"N0#N$N4%N\%N&N 4NhP4N4N05Nؼ6N6N47NH7N\7Np`9N GNMNQN@^N0iNrN|tN0wN NPNpNX`NNЯNL`NN`N,pN\N NNXNNN4@N`NPN4NNpOL0OPO#O@-OlpAO0[O<`^OoOqOH |OpOOxOpOpOO@OPP`P@1P1P(pGPpJPXP@YP0`PmPnPhnP| nPoPܻqPĽvPwPt`yPDzP{P4 |PH|PpPP0@Pl`PpPPPPЄPPP P PPPxPPPPPP,pP@pPpPPP PpPP$pPTPhP`PP@`PtPP@P PpP|PPPPP4P`P@PP0PPPTPP@PhPP`PP Qp`QQ Q0Q`PQQPQ QQQ$&Qt/Q3Q(9Qt@QQjQvQ(Q|0QQP@QQЏQ(Q|QQ$QxQ Q QtQQ@QP0QxQ@Q\Q@R|PRR8@"R&R'R(R@0R1R04R< 6R?RERHRRhRoRh|RRXRRPR@R`R|R@RRlRRRD`RR<0S@SS$SSPS|S,PSSSS0S\S| S0S@SPS`SpSDSXSPSdSxФSSSSS0S(PSH`S\pSpSSSSSХSS PS0STЦSS SS,SS S4 SHPShSS\SSS`S@S4PS\@SSSS S8ShSS|SS TpTH@TTTP T T` TT T0@ T TTPTT`T8TlTTT"Tx#T`%TP'T(Tt)T+T`+T+T<,T,T-T-T .T`.T.T4.TT0T0T@ 2Td2T3TX4T05T@7Tp:TL0=Tx`ETITNTpPT]T_TPaT fTp iT  rT T0 АT PT T0 ЖTd T 0T0 Td  T PT `T`T лTtTT<pTTTTT T0T@T$pT8TLT`TTT `TXT TTT(TLTxUxPU8 `U U UP `U|  U  U  U p U U UH U`0UPUU0UDUX UpUUHUU@UU(UTUx U U@"Ut#U%U0)UH,U,U.U/U4p0U2U`8U9U DUP@Ut U U !ЫU!0U!U"U#`U#pU,$UL$U$ U$U %UT%U%pU%0U &pU`&U&`U'U\'PU'U4(U(0U(0U8)U)pV)V<*V*dV$+mV+PuVD,{V,}V-VX-V- V.V|.V.PVD/V/0)W0*W0.W0AW$1`BW\1KW1LW1PdW<2yW2W2W@3@W3PW3W40W84W4 W\0Wp@WPW`WpWWWWWW$W8WLWWW W0W@W$PW8`WLpW`WtWWWWW@W WdW`WWPW`WWWWW,WW0W\W|WW@WX0pXdXXXPX4@X\ X X0 X`X XD XL"X"X"X"X#XT#pX'X*`Xx+X+"X ,%X /&X 50&X 5)XD5)X50*X5*X46*X6 +X6p+X$7+Xt7,X7`,X8,Xd8-X8-X90.X9/X9/X9/X:@1Xt:4X:@9X<;9X\;p;X;AX;BX(<HX|<MX<QX=]X=bX=oX0>qX>qX>pvXH?0wX|?zX?{X?{X@}X\@P~X@XAXApX0BЭXBXB@X$CPXxCXCpXDXXD`XD)YDp.Y,E ;Y`EP;YEBYEQY4QY<:PRYd=RY\ASYA`TYTF UY|FXY GYY4G`ZY\G [YG[Y@Fp\YG\YGp]Y(H^YxH^YH`YHbYIpbY(IbY\t@>\uQ\\uR\uPS\ltPZ\t`a\te\uk\v@n\,wpo\@wp\twPs\w\wЋ\x`\v`\wp\px\x \yP\8z\Lz0\z\y\ z\z0\zp\ {\ {\{\{\ |P\(}\|\|\} \}\}P\~\<~P\}\~\~\~\~\D`\X\\\\ \t\Ѐ](]L]]́ ] ]@%]؂0], M]N]\]~\]^]<0`]Xa]8a]Xa]l0b]pb]b]̄b]d]p@f]Pf]$`f]`g]Hg]ąs]@~]@P~]T]|]]]40]H] ]8@]`]]p]t]0]ĉ] ]Ċ ]p]<@]]ԋP](@]\]P] `] p]\ ]]@]]]]HP]t]0]P]]0P]P]x] ]`]؍]] ]8P]X ]P]܎]0^\p^ ^Џ^ ^$^T^^4^E^Tf^g^p^l^^^@^T^h^@^^Г^^@^0^P^p^0^^ܔ^d^0^@^^0 ^T^x^^^^^,p^P`^t^^0^D^xP^^̘^4^p0^^___< __d_`_._L3_p7_p8_ :_8@N_x P_Q_̗S_pU_U_U_d`W_ęW_X_X_@p__p____`_ܛb_̝e_@n_<n_P`o_d@q_q_Оs_ v_Lw_|_p_̠`_P_p_0___0_@_|___L_@_@_8p_@_0``H `\0`h`ܢ`0`@ `p `"`ȣ#`L`/`x@;`;`;`$;`D0<`dp<`<`=`@`Ȧ @`ܦ0@`̧@`HK`tW` W`X`$Y`P[`x`\`\`a`j`@ k`dPw`y`p`\`0``X``ܬ``Ԩк``0`\@`P`` `4`\p`paa,a\a0 aȯ a a a|@"aа`.a09aTbacaرtatauaв0ua@uaua,uaL@vaH`zaaha|atapa0a0apaaԴaa0aXaԵa`aaaa aaa< aPaaXalaaalaaa,aL ap0aa@aaXbĺb`bb< bP!bD!bX"bP#b'bD*b,b -b -b0Fb`HbMb@YbXcb@|bP|b`|bbb @bĽbbbL@b|bbb8bpbblbDcc( c|`Ec Gc@Yc$YcP]c]c]c]c^c 0_cccPgcpcc`cd`c0c`cc0cDcdc`c`cdcccpc@cLPc`ct cc0ccTccpccdt d3d3d(@8d|@BdDdPIdT TdPmd8`md$td|wd@xdpd,ddДd`ddЖddpddPdd@dTddУdd0d d(PdT dxЦddddd`ddd, ddd`dd0dTd@dd dL`ddddd`d d4Pd d4dle@ e peL!ex,e,`-eH.et.e/e/e(0eL8e@:eP:e`:ep:e:ee@?e@e@eEeP`Je0KeQeWe Ye[e \e80^ed0aeee@jere ueX{ePePeГe8epePee@e@PeT@e@ee`e0ee8`ehзeee8e`e@e`eTee4Pe`epePee0e f f f f0 f4 f ff8pfLf`ftff\0ffff $fl*f1f\p2f`4f5f7f:f@>fpDf@Lf@Xf_f@ifxqf@sfPsf wf@wfT xfhxf@yfzf{f@|f4fpf$fX ffLpfffPff f8Pff@fPffpfH f\fPff Pf0fPf0f@fpffflpggdPg*g@+gh+g+g`,gP0g3gl5g>g>g,>g|P?g@g$0DgTg@^gdgPsgP~ggLg``gpggg@g gD`gxggggg0g8ghggg`g$g`gg @g<glpg@gg0gglggh`h h h hh#h2hHP=hxHhRhRhRh ShSh@Th4UhXUhVhWh`h<`hP0ahqhrhP@shthhlPhx`hh hhh h h h4 Phd  h h зh @h иhHhh h hhh<0hh h h h h h$ h8 0hL @h` Pht `h ph h h h hP h h  h Phhh`hi8 iliiX0ii@ipii(iPixi i0i@i@i@ ip@$i0@(i@,iP,i 1iH4ip4i@8i`8i;ikH?k?k@@k@kAk$BkBkA0kdA0kAkA0kxB lpClClCl D l D0l4D`lHD%lD@+lD6lFFlF`}l$ElTElElElEl Fl`FlGl0Gl`G@lGlGlGl H@lPHlHlH`lHlIl(I@lPIlxIlI lIlI`lJl@JlhJ@lJlJlJ lKl0K`lXKlKlK@lKlKl L lHLlpL`lLlLlL@lMl8Ml`M lMlM`lMlNl(N@lPNlxNlN lNlN`lOl@OlhO@lOlOlO lPl0P`lXPlPlP@lPlPl Q lHQlpQ`lQlQlQ@lRl8Rl`R lRlR`mRmSm(S@mPSmxSmS mSmS`mTm@TmhT@mTmTmT mU m0U` mXU mU mU@ mU mU m V mHVmpV`mVmVmV mWm0WmPW`mWmW'mX/m8X 8mhXP@mXHmXPmXXm(YamXYamYPbmYbmYcmY0dm ZdmHZpempZfmZfmZPgmZgm[hm8[0im`[im[pjm[km[km\Plm(\lmP\mmx\0nm\nm\pom\pm]pm@]Pqmh]qm]rm]0sm]sm^ptm0^umX^um^Pvm^vm^wm^0xm _xmH_pymp_zm_zm_P{m_{m`|m8`0}m``}m`p~m`m`maPm(amPamxa0maЂmapmambm@bPmhbmbmb0mbЇmcpm0cmXcmcPmcmcmc0m dЌmHdpmpdmd md mdmeЏm(ePmeЖmePmeЙmfPm0fМm\fPmfПmfPmfТmlmlУm gm4gm\g0mgPmgpmgmgm$hЬmLhmthmh0mhPmhpmimqp>q ?q?q@qВ@qCq4Dq0Lqԓ@Nq(@SqYqiqpiqiqjq@kqDlqlqmqnqܕ0oq pvq0wqpyqPzqԖ |q|q(}q` qqȗq0qlPqqqԘ`qq q@`q`ЎqPqqКqqУq4qqpq4q0qܜq0PqD0q8`qdqqqprrrr rԞ0r@rprr$r8rLr`rtr`rr0r `r r4rHr\ rpPrrrrrԠ@rprrr$r8PrLr`rt r r rP r r0 rD rXPrlprr0rТ@rPrPr Pr rH@rlrrr0r`r4rHr\rr0rr0r<rh0rr0 r@ r"r"r("r<"rP#rd@#rx$r%rئ&r (rT`.rx0r2r0:r|@;r0xdPCxVxPgxix@lx\lxlx0mxmx( oxxpoxpx qx0`rx`}xxH0xpx(x|xxx,x`x xxx8xd0xxx pLyLy LyPPMy|MyNyQy$PZyxpyyzyDzyp}yyyH`yyy0yТyy$0yy(yP`yyypy`yyp yyy,y@yT@yyypyyDyypy yztPzp'zP^z0z|zz @zH0zzz{T{ &{06{l@e{{0@{\Ц{{{X{xм{ {{{0`{{{о{{  {H{t{{ {{pp{{0{{p{p{{{H{p{{ |4`+|E|G|TI|L| @S|xpS|V|[|T\|\|^|4`a|l|l|<@m|m|0n| n|4o|`r|`u|Px|@y|Ty|`~| |l`|hP|0| |}X}Y}t@Y}Y}Y}@Z}b}e}0i}0pj}XPm} }}4@}}`}0}Xp}к} }X  }l 0} } p} `}$ }L } }0 0} } }D `}x } ` ~4 9~d @~ ~ ~ ~ ~ p~$p~t0~P~~P~`~ ~,~~~~~0~d@~~ ~0~~HHHPIJ<@J\K@QWt``aa Pb4 c\Pdj{0}0( PT0$PpЩ@D0`ptpP@<hP t0@PTT@(|@P  P !$ $4%`!%!=! @4"F"X#X(#n|#$8$`$`$$Л4% %%&Ҁp&p׀&߀#߀# '@'pl''(0((P)H)t)`))0 D**+|++3(3(3(,4P,06, :,KP-W- X-X- Y(.YT.PZ|.[.[$/\X/ z//.Pā.Ł 0`Ɓ|0 ǁ0ˁ0ցD1p11H0\0@(2P2|2`23`p33PX44P4&P57575859h6:6:6=6C87@K7pT46TH6T8U(8VT8W8X8p],9@e9f9lP:r:Pz ; {X;{;~;;P <t<<===:8;=@>4>>`>?l?0?@?P=p=4@`@0@p@@pAdAংA@AЭLB @@@BC,C@XCC@C`DTDD0DƂBƂBƂDpǂ$EPȂE@ʂEςDF`ЂxF݂F݂GPނDGނhGGHdH@bH`II`IIࣃ JЦDJ0pJJ`@K KK`LL0,MM`N9\NNZOOnPцP:QQRR6R`mJ@nK o|KppKpLL rMv\OPOОdPP0LjhQ`׈QPlRp8SdSPS T TPatT0bTb U@c4Uc`UdU0gV`XV VW@WW4[\@\ $]x]0])8^\^pWp$Xr\X`sXtXvYPwwIxbxexexPf$ygxykHzxyz0z॒z{h{{@|ǒ|pǒ| Ȓ }Ȓ8}ɒd}ɒ} ʒ}0˒,~PҒ~ے|ے|0ܒ~ܒ$pݒLޒߒHȀ,ԁpP|4:;܃@0aab,0cXc0ddeLfhvl0@Є` 0Hh؇Л(<P0dptpʓ  ͓͓͓$͓8ΓL0Γ`pΓtΓPΓϓ@ϓ8ϓh Гѓѓ$ғғԓdP֓ד`ٓ(Pۓ@ݓ@@ޓԑ Tpēؓ 0@(P<tД 0 @ P4`Hp\pԕ$08@LЖ   40H@00@P`0PplpDPԜP`ԝpX ܟPP@`ptd`P0@,`pPpP|pp"<0p44@4T45$05@88MTMhM|MMPN$pN@Nl@OW_|__`Ш` aa@a|@bb`rsttPu`uv(v<vP0z`Pz̫z @{@{t|~@,0$$@0@H` ܴ40 < `xз`D@໔ȸ@<Ô`ĔܹƔ`ǔ,Ȕtʔ˔p͔0ΔTϔДҔ\Ԕp֔@ؔ4۔|ܔݔ`ޔ0p̾0Dh|  @4Pp\  @ @ T |0  0 | @ `pP)P)`-p.p/@ 0T0p1|2@4h56 4ҕ56 8P9@::;0< <0==>>`>Xp>l>pGIIpJ`JtJ K KdLLN$0STPX[8\t ]a$`bb@c$Pc8`cLhilT| }0}`l`<З0P h@Pd@L@P4ౖ0`ೖ ඖL` LٖPږ@Pp0`hP@`T`@ 0 h @ @HP\"0#p#$|P& (D`(X(l((p)*8*L *`0*t**0++./0,0hP1122X034P6$p7t`>> @?8?d@@@pA,ATBBCCJKK@L$L\MO8pPhS@T(0VVVWW<pXhpYY`[ \8`\d\] ]0]_X```0````aa a 0a @a4PaH`a\papaaaa@bD`d@f`g\iPjjPk4k`PllmmnPnnnnnpopp``qrs`s80v@vv w$`wTwwwwwxx@xPx0y zX{||@}(P}<p}P~| P DP` L d0|HP Ъd x 0 ` Ы 4 `  04 PP pl   p  Ю     @ T pt ౗ `  в p 0  p   @TPXнx` 4H\pPŗ(ŗ<˗Pӗ\ӗpPחۗݗ8pݗXݗx@ D@X`lpp@0`$8L` p 8l@`P(p `4@ P  0p `0p`@t  PP%8( 8x 8 @9 9,!:<  ; =!>! @("@A<"Ax"B"@C"PD,#Eh#pE|# F#pF# G$@HD$H$I$`J$J@%pK|%0L%L%M&MD&P&`Q&SL'U'U'W`(p](_,)`)dD*j*lh+@m+ o,@p,@s,py(-z|-P|-~<.p. //P,0@0l1 1p\2P2 2`H3P34Щ<4೘4 5зh5๘5(6604p$7p77P˜7`˜7Ř8 Ř80Ř(8@Ř<8PŘP8`Řd8pŘx8Ř8Ř8Ř8Ř8Ř8Ř8Ř9 Ƙ9PƘ,9`Ƙ@9Ƙ|9Pǘ9`ǘ9ǘ:Ș :˘:P̘:̘7̘87`͘8;͘T;@Ϙ;ј;ҘD<Ԙ<@֘<ؘ4=٘=ۘ=@ݘ$>ߘt>>?@d??@T@@@@DAA@A4BBB@$CtCCD@dDDETE@E E DF F@F4GGG@$HtHHI@dIIJ!TJ@#J%J&DK(K@*K,4L-L/L@1$M3tM4M6N@8dN:N;O=TO@?OAOBDPDP@FPH4QIQKQ@M$ROtRPRRS@TdSVSWTYTT@[T]T^DU`U@bUd4VeVgV@i$WktWlWnX@pdXrXsYuTY@wYyYzDZ|Z@~Z4[[[@$\t\\]@d]]^T^@^^D__@_4```@$ataab@hbb@c >L?@@A܄APB<BhDE`FF GL@H|H I؆ JJ8@KdKpLMMN@OlpPQĈQRpRDRl0SpUĉUVWDpWlW0XXX PY4YdPZZċ`[\$]T^ __@`a@blcdčefgHht@iiԎj k4kd`lmďm@n$nTo pp`qrDrt@ssԑt u4ud`vwĒwPx yLy|`zpzzԓzz0{,{\P||}@~~D`tԕ@4`\``L|@̗І`,0\0  @ l0̙ (XЗ̚$`PpܛP О8@hPȜ@HТx@ԝPच4@\Х`ܞP 80dЫ0DpPЯ@8d0@tේԢpH༚x@أ0`šÚĚԤŚ@ŚƚDƚtƚPǚ`ǚȥ ȚȚ(pɚXɚ`ʚ˚˚P̚<͚h͚@ΚΚϚ0КDКpњ ҚȨҚpӚ ԚPԚ|՚`՚̩՚0֚$֚Tךh0ٚٚPښښ `ۚPۚpܚݚݚޚ@ޚpߚߚЬ,0\``Lpxخ<l@̯P,\`Pܰ 0<lı`$T` $Lt̳$P | ܴ @<lP0pX0pԶ,Xp   P H tP  Ը`  4dĹ0 `,T P08h 0ܻ@H\pԼ 0@$P8`Lp`tĽؽ( <0P@dPx`pȾܾ,@Th |0@P`̿p0DXl 0@P` p 4H\p 0@$P8`Lp`t( <0P@dPx`p0-l2 202@2P2`2p22$282L2`2t22233 303@3P3(`3<p3P3d3x33333344 4,04@@4TP4h`4|p44444444405D5X 5l05@5P5`5p5555 5 545H5\5p66 606@6P6`6p66$686L6`6t66677 707@7P7(`7<p7P7d7x77777788 8,08@@8TP8h`8|p88888888809D9X 9l09@9P9`9p9999 9 949H9\9p:: :0:@:P:`:p::$:8:L:`:t:::;; ;0;@;P;(`;<p;P;d;x;;;;;;<< <,0<@@> >0>@>P>`>p>>$>8>L>`>t>>>?? ?0?@?P?(`?<p?P?d?x??????@@ @,0@@@@TP@h`@|p@@@@@@@@@0ADAX Al0A@APA`ApAAAA A A4AHA\ApBB B0B@BPB`BpBB$B8BLB`BtBBBCC C0C@CPC(`C<pCPCdCxCCCCCCDD D,0D@@DTPDh`D|pDDDDDDDDD0EDEX El0E@EPE`EpEEEE E E4EHE\EpFF FJpKK 0L@@LTPLhL|QR`R R4XdaPaf,$0.Pp5|PBCYYX Zx`]`@a@jjPkP0llmw x8xL|}0p<d@PPpXЗlP(0<@P P ,@ࠜ`࡜࢜@ज  < PЭ00<pŜƜpȜ`ʜ<֜ۜߜ$0T P@0tP <l !$@(,.\115 8A,J\`TUZ^^p_Lh`Pitj0kkloHrxux yPz0p{\|}P~~ @plЃ p 8\0LЊ0  P@pЏ0,d0,d0ঝ Txp0P(Xp`H`x00008Ýlŝǝɝ˝0͝`ϝѝpӝ՝ ֝P؝ڝ`ܝ0ޝߝ@pp00` P@Pp 0`   Pp@p "$@'4)d +0-/244d78:<(>X@B`DF HH Jx L N P R8 Th 0W Y  \ ^0 ah c e g i( kX m o q s uH w| z P| p~Dtp08hЎpp(pX@PP`PPp@ L00еDt0<ÞpŞȞP˞͞@0ОpҞԞמڞ8ܞpߞ@@@@p4hP(Xp` P ``$`TPPPp!D#t`%') ,< .l@0@2@406,8\9;=?BL@D@F@HJ LD Nt P R T!V4!`Xd!PZ!\!]!_$"bX"d"f"h"j#lH#`n|#0q#t#v$$xT$z$0}$$ %PT%P%P%%&H&|&&0&'D't'Н'П'С( <( l( (p(p)p0)d))))ฟ(*ຟX*༟*ྟ**ß+ şH+@ǟx+ɟ+̟+0Ο ,П@,ҟp,՟,Pן,ٟ-ܟ<-pޟl-@-`--,.\....`$/X// /@/`0H0x0001 810 l1@11202Pd2@202p2(3 \3`#3`%3'3)$4,X4P.414345$57T5 :5<5>5@6BL6D|6F6H6K7M@7Op7R7T7W80Z<8\p8_8pb8@d 9f<9ht90k90m9o:q8: th:v: y:{;P~8; p;Ѓ;;<H<x<P<< =<=l===>0>С`>>0> >@(?X?ఠ?ಠ??P @P@л@@P@ AĠ@AƠpAɠAˠA͠ BϠ@.AJ AM G (>@.AJ AM G (>@.AJ AM G (@?@.AJ AM G ,D?@{.AC Cq H (t@@wY.AJ ED D ,h@@9.AC Cq H (@@w.AJ ED D ,q@AN C  ,>q@AN C P>tr@$AC AZ 0p>r@AC M J ^ 0>pz@? AC M I V 0>|@? AC M I V 0 ?@oAC M> I V 0@?Ğ@? AC M I V 0t?Щ@? AC M I V 0?ܴ@AC M M ^ $?x@AN G $@@AN Gs $,@h@AN G $T@@AN G $|@x@AN G (@@!JC DD  B4@@ AC FK I  H ,A@AC I^ E (8A@!JC DD  B,dA@ ;AC DIN/ E ,A'AAC DGH1 H 48$6A "AC HI F AhBAAJ M BhBAAJ M C 7AC FJ" J 4<>|CSAC FJ K 4t>C oAC HH K 4>CL AC HH8 D 4>C1 AC FJ) C 4?D AC HHe G 4T?tDc AC HH H 4?DAC HH B (P].DAC DH F ,|]1DGAJ DGL D 4]BDrAC FJp I ~ B (]D AN FD M ^D$AC AZ (0^ĿDAC DH L (\^XDAC DH G (^DAC DH L (^DAC DH G (^DAC DH L ( _DAC DH G (8_\DAC DH L (d_DAC DH G (_DAC DHt L (_DAC DH O ,_DAC BI F [ ,`,D~AC IT O $H`|DAC E K (p`4DAC DO J $`DAC E K $`DAC E K (`hDAC DO J $aDAC E K (@aDAC DO J $laDAC E K $a`DAC E K 40D8D'AC P B 4hD0DAC HD A @D ?trAC I E S E  F DK10(bxDAC DO E (b,DAC DO E (bDAC DO E (cDAC DO E $Q4|VI@>AC BTy E \)1B 4kItAC BJMr A z,14$}IAC BEEEP B /1}<xIiAC BEGD F S E `F/1~l4ԀDIxXAF FEHc C p/1(:4(pI &AC BEGD B D/1||,I8{E LvFvxvp vhE v`EvXAvP.C.i.B.}.P. M D .[.A.a.8l01dEvXvPv v` vhvpvxX8I E LvBvxHvpE vhJvX v`HvP .P.Q M B 8821vXvPv v` vhvpvx<ЂI1aAC BJ.g.L G 214PJoAC BEM J ~ B ~ 8$RJAC DHHA G Q G K E 8,SJSAC BJH D Q G z F $hKAC CT E 4TJqAC DEJL D ] K 4<,VJ AC DHk E 9154cJKC BJ_ G p916pK$AC AZ $K$AC AZ 4K$AC AZ ,ТDKAG FER  H ,KAI I E 4KAG FJ A X܅iJ[C HD^ H e K ..81 D}JWJ FDm BBBA I C E  0LJyAY Ix E x81+,x|JAC BD_ G c E , LAG FER  H ,ؤLAI I E D|JAG M B  F  E l$<1NTlȪJAC C{ N f J R N R N r N R N R N R N L8@JHAJ BU H C E [ E  D 0;1B<$JkAF BELG H  F ;1^0J KAN G+ O J$AC AZ , L1AN G L H 4J AC I J dN<1H0؉pJ4AQ AB K  A $zPLRx! )  ,<1j(ܧ L>AN G[ O \v5 L0dLDNXNlL LLL40L@wAF T A ;12\QL$RL8TLLhVL3`WLt`YLx0YLJAC BEMi A L2j:1(ةYLAC M (p[LAC Ga D 00]LnAC BEIDB F M (d@]LyAC BHK H (^LAC BHK H 4_L/AH FFE I  D bLfL4Xs5%SAQ HH A p81;(p4w5=AJ BO  (fLAC DGA H ȫ\gLAC A@ K hLlAC A@ K $diLVAC Az A U $8iLAC BHz H `$jLAI BK 0pN#AE DD A 4NAQ E G m C a G 4ddjL AJ FQD J D71$DwL0A] F dwL0A] F ,wLAC BIK F B (PxLAQ BK{ N q ,yLAQ DKt K v yL$PzL 8LzL4HzLAQ HKe F n61(ijNAG BEH A $̮NvAC BGL G <h@{L NAC IS H  D P51>)$PN\AC BD I 4|LAC G E  A ('510@LAC FHX F Z51<L ~AE BJA E  F x51N4LL4 :AC HD B ̒41H4@8L AQ BQ J  41H4NAC BEGL A 4̓|LAG BGKj J 41X(8LAC M 4L,LAF P C ,`41,4Lj AJ BGLO F 841<LzAC DEF A 1.0R.ܔ41n0PxNiAC DD G N-AC BD^ 4L AC BQB G 41:,LAC En I H<51B4HLAL BEKHH A (n51U4|LmAC BJEEH] A |p51F4L2AC BJEEH] A Ж251 4дLaAC DEJL D ] K ,,LAC DFED F 4 L3AJ BXX C 41]4 M IAC DKK E 41)$4TMR AC BJEO F 44104 MUAC FIE H t410, MAC BEEIf A y 40 MHAC BEEK I 41k4!MHWAC BEEK I 8^4134ؙ"MAC BJ> B (4198,|&M%AC Eu B D D @41/4(M|AC I  J d41I@ؚ@-MAC BEIEGQ G b.p.Ěv412D84MAC BM .k.K .k.G B (D51g00(SMAC BEEId C y ,\SMAJ FFH D 8UM6AC BEELO E 91DXZM AC DEEPj D .p..p.H:1LcM0AC BHOv.o.P A S.p..o.:;1D(wMAC BTO.k. A I.k.>1<M-AC BEEEP H .p.t*B1<MAC BEGD F S E НB1~4DMxoAF FEHc C $B1(QL0M =AC BEH<.v..o. F S E B1DdMDAC BEK F B.P. A C1 @hPM=iAC BELFy.~. E TD1R(T0NAC DHH 0 NAC DHHe C Q G ,!NAC BK E Q 4`"NqAC DEJL D ] K 4#N AC BJ% K pK1[4T1NGAC DHG H ĠVL164X87N0NC PM.. F  H <L1SD<INWJ FDm BBBA I C E  0`LN%AJ Iu G ԡ4L1,,Կ@bNAC BD_ G c E DxbNAQ Mv K  E  A h:P1N\hwNAC Ch I f B  N  I  I R N  I { M t 4<|zNqAJ I" J O1Bg(HNSAC Ad G O1:4أNAF BEJI D O1A0,LN AN G+ O N$AC AZ  u5$ЪN8QAF D XQlQQQ|QxQ$NAM A[ F LN ȱN9 $Q4 QH̱N\رNpԱNNN NN NܱN ,رNAC FF G ,HQ@DQ T@Qh1z,pRBAC BJF A RFaI AV Lh kO*AJ BX H 7 A . R.. R.`x>1#,`TRiAF FF H #RNiI AV 4$O AC DGKS C ?1r34xO  AC BQ D XB1s,̺,Ox`AC En I aE1BJ4`O6AE BLKH K E1S0|"RJC I E4O$AC BEJEH E E1,OAC BEHD C 4$$OAE BQ E 0E14xO AC FR H XE14̼OAE HIG B ^F1|4 Oe AC HD J F1|4tO AC FFF J TF14ȽOAC BEEEK A F1h4 O?AC BEH A F1Dm0OAC BEEId C y 0!Rm}C U K4ľdO AC BIOr H F1(,OAJ FFH D 4OqAC DEJL D ] K  RmC U I$,OAC E 4ȿO dAC BGF G F1uPOkbE LvBvxEvpI vhNvX v`AvPP M C 8pF1vXvPv v` vhvpvxPO1ME LvBvxEvpE vhNvX v`AvP M E 8H1xkvXvPv v` vhvpvxP<P7E LvBvxEvpE vhNvX v`AvP M F 8H1vXvPv v` vhvpvx< P XAC BEH D f J I1a@(p%P` NAC BGEK D  A rJ1><p.PAO BGF J d A pTL1z<2PAO BKF J b A rL1z(HR[AC Cj G b 0|RAC FJ D [ 4,XRKAG FEHH E } K ,dpRAC BEFJ H 0 6PAC BEEIf A y 4<6PHAC BEEK I K1c47POAC BEEF K pfK1s4?PH`AC BEEK I L1<48@P@(AC BEET C K1p&DAPAC DHn B  H z A |K14xCP] AC HD K K1U4DLPFAL HI A $K1'PRP AC FM@ I K E .P.o E z F ZK1<^PCAC HD I 3.P.K124dtPAC BEH H DL1X`{P. AE I F ; E 8.{..s..r..r.HL1E4X0P  AC BEIEO J 0.s..m..l..k..k.4N1X`P AC BEIEO E .s..m..l..k..k.Q1W` P DAC DEIO I /.r..l..m..k..k.B.l.,T1 4PAC BEEF A W1XԫP AC HGC J  .P.5.s..n..n..l.tW1dU\PAC BDx F k M k E k E k E k E k E k E k E 4ܷP AC HH D $Y17,PAC BD_ G v J 4PRAC BNH F 0 R.AC FD D 4RAC BEEGy H 0R.AC FD D 4(RAC BEEGy H <`(PHAC M D k E HqY1,j,HPpAI BN D 4\P6AC FED A Y1~^4@P NAJ BGLO J  DY1.<dPAC BID J .0R.|Y1*4RAG FJ A D(P. AC MQ F  E K E Y184LQAC DH I lY1HQ AH I I S E S E b A TY1G(@ QoAC KG J 4t Q AC BEEJP F TX14<&R.AC G A Q G j A @&RAC DJ J Q G k A 4LQ AC ^ I ,FX10(RE?AG DD E 4Q30AC ^U I mX1Vw4(RQ`,cAJ DV9 B pY1<|~QU AF BJHF I  K dY10Q AN G G Q$AC AZ 4,,Q 0AC I H  Z1H&@xQ1AC DE# H  E  D xY1nlc5((R>FU n G  E ] $R RRRR(0R(,R<(RPt(Rd(R0l*RJAC BEMi A R7AC DD I z F 4BR1AE BD O I G I G 0GRAJ A& F K E K E ((RAG BEH G 4R AC GZ K  F ,HRt AE HD H $zRx  ,R1<lUR/AC HHj B b F TLR10 RAC A F k E <VRAC HLR F b A Q1,@XRAH HH{ D 4R TAC FEH B 4x]R*AC HEO H ,Q1,_RQAJ HD  D (dR!JC DD  B,hRBAC BJF A (,RqFC BFV I,XRBAC BJF A RFaI AV DLgR\AN DIHK F  .0R.M.0R. DP1tP4xR sAC DH C `dP1K8DR{AC E D  D ,XT1B4,lRAC BEL K  FT120 ؉RAC BEEId C y 0@dRAC BEEId C y ,tRAC HHx D $0RAC CT E <RAG DEDH C [ E M C J 0 RAC BEEIf A y 4R,AC BEEK C hR1!4`R,rAC BEEK C R1!N4\Q1!4S<AC BEEK D d Q1!4SAC BIH K P14XPSAC BEEF E 8 Q1W4S~AE BQ= J Q1 ,UAC DM H 40hSzgAQ DEEH% C Q1`4SLAC BEEFb H dQ1d:<PSF&AE FMS D S E Q144DSAC DH D Q1M4SAC FED" K hQ14|SXAC BGED9 A vR1<0S}AE BQU B H.P.S1/^4SJAC HD F lvS1B;4SHL'AC BMK J dS1  <UAG DEDH C [ E M C J 4t9T AC FEH F T[1c(TUAC I K ,4BTpAI BN D 4$UTAG FJo I 4\UHAC I F PIT)$JC BQJ F ) F Z114NTAJ BGEEK B Z1$0XPTTAC Gr C Z18UTAC DED E c E `Z1,c8WTOAC DED E c E Z1,1TXZTnAC BIN G .P.5.P.N.R.@.R.XjZ1~4 pT{jAE HKC D Z19Z0 8xT34FAC PK A Z1 UAAF Ic E 4T% AJ FIN~ A tJ[1\T@AC BPDD B .P..P.T.P. .R..R.[1w$h TAF x Q h H W I T L j F h H M K M K M K M K F J n 0hTAC I F f_1B4 T~AC DO C T_14"tUAC A_ D x H K E x 4Ud iAC FIK F x_1,"UAC BD_ G  F <0UAJ P . ^.m G a1< 2UfAJ P| . e. K ta14 GUAJ FQ H b1y%4<XUa(AJ P B 4b1W0hUNCAJ HRl G lb1,/4oUAF BJHF G b104dwU AN GK O $U$AC AZ 4UyAC IX K hb1B4UiAJ P F c1E%a5%W%U %UYg[  I0DUJAC BEMi A 0c10DUJAC BEMi A 4b104 DUJAC BEMi A b1{0 DUJgAC BEMi A ԯb1?0 DUJ+AC BEMi A $Hb10$ DUJAC BEMi A tb10t DUJAC BEMi A İa10 DUJwAC BEMi A a1O0 DUJ;AC BEMi A d`a10d DUJAC BEMi A &a10 DUJAC BEMi A `1, DU~AC Cq A 8`1Io4P ]5%oAQ HH A 0 `1W(0*`5AJ BO $\*UAC BHz H *UAI BK (*,UAC DGA H *U"AJ AU  *UlAC A@ K 4 W2kAC DEIH A D UQAJ I] G  E a A  _1D(0U$AJ I I  E y A l_1,UUY] F T$8,d7WAC DEGD  K S E x H ,>9W?AC FP H <t!tWAC M D  A <!$WAC M D  A ??WQYC AZ I ??WQYC AZ I $? @W.AC AV E I <d"@WdIAC BEEFD A S E L"c1Y^<"(CWJAC BIEED E S E "c1$;4#DW'AC DIED E "c1|^<p#(IWJAC BIEEDJ I S E X#c1$;4#KW'AC BEEED H #c1< $xMWAC BEIED K S E $^c1$<|$,OW(AC BEEEE G S E d$&c1P8$SWAC HED I a G c1D0%SW|AC DEEH E L D L A  %b1,nL%TWZAC BEEED H N.R..P..P.%b1UD&8XW|BAC DEEH E L D L A %b1,4d&TYW AC FIG F D&b1%4&_WuAC FEK F &c1>4 'Y AAC BJGR G =Z1DL[d(Y'AT F ,t>t(YAC BH A Z14>(Y+AC BEL B >[Z1[4?+YAC M& I >bZ10h?0/YAC BF A *Z1^,D]PMYBAC BJF B 4?P/YAG FF E ?Y1x(]0YAC M Hh@3Y6 AH FIs E S E S E S E \@Y1"0@MY&AC FD D 4ANYgAC BEEGy H ,^\YnAF C[ A X1D_@>Y@AC Av d_ *9|_NY<AC Av ,_NYKC BHLQ K <_HSY<AC DGGi A F J f A PBHTY/ JE BEOx C   H |BW1- |`_YEM X F (`t`Y.EM A G y 4@C(9%AQ HH A  CDW1( a,9AJ BO (LaYAC HP (xaYAC HP (aaYAC DD E <DDdgYPAC C B U K ~ B V1~(,bXiYAC M A 0Xb94F`>9%kAQ HH A FV1S(dP1(|rHZAC FDK G 4UZ[AC BGEL H TPR1f4rZAC BKLEFI G n (4sZQqC BK G4UZ( SAC HL B UR14(V`Zd yAC DEN K VMS1Jw4|V|ZhcAC DO B \VCS1$a8\tZAC BEEFo K b N M ,t,Z AC BOGH K t<9oAJ EZ t(Zu$ZuPZ0AE Ah 4u`Z,Hu|Z6Ah L huZ<aF T uZ<aF T uZ<aF T $uZAC BD C 0uDZAC DHq O Z F $$vZvQC D H P 4XZ#]AP BLD J tF$Q1,9(vZ' AN FDZ M (vZ' AN FDg H v|9AJ n wZ $0wZAC n F h Xw|Z(lwxZAC BED~ C w9^AJ N (wZ>FU n G  E ] wK14Hy0q]cAP BLD\ A fJ1?((,}] AN FD M (T] AN FD H Tw9hAJ EW @]<]̗H]3AH Ah h],]6Ah L  ]<aF T @Ĕ]<aF T `]<aF T $]+AC BD G $\]vQC D H P 4D{]#AP BLD J hxI1,_($`]' AN FDZ M (Pd]' AN FDg H |v9AJ n ^^ę^ؙ ]](]AC DGA H $,(]oAC C J Tp]bAC ] t]s4,]AC FFj F  E <4}] AJ BGIK G .0R.}G16 h]kAC AT G 4}], AC BEW) E }jG10~]AC FH H kI1mx4X~]dAC BMK I 8~I1_4~ ]dAC Cf C  G J1Bt4(]DAG I  B ~J134T$]AG HK J 4J1$,4]AJ AU O T L K 4] KC I~ K XJ1,4, ^#WAP BJF K m0J1(3(  ^ AN FD: M (8,^ AN FDG H dr9AJ  "^ 0 "^AG BGD` K n|I1h$"^AC BHz H $d#^$AI E K (8l$^AC DGA H p؁$^2AC DO .0R.y.0R.p A .0R..0R..0R..0R..0R..0R.H1UPW^,W^AC BELGGq J (8|X^AT DDw D K <dY^AC FEH1 H E K { E `[^AE X B 0Ƞ \^AC BEEEIn L S 4\^AC M~ A a A S  4p9AJ E 4̃^^AC BEKD A #G1,hq^ AC DJJt H 4PX}^ AC DH D 0F1}4ԇ^(AJ Kd I G1f ,`^AC HD\ D L(^sAC DEN B .[.D.g.c.i. Q1o s9AJ Eo D^X|^l^4A_ M ^9Ad M (^(AS M ̣8^ $4^YAC Al G ^ l^<aF T $(^WAC BDy M P^0dp^cAC DF N P A s9AJ E ,^AH DLw H 4`^AC DEJ F $$^AC BG C 4^YKAC DL D (^QqC BK G0$^AC DDV A $^AC BD $ ^AC BD $4^AC BDv 4Ј^ xAP HI H O12U,^ AC HO J ,t^ AC HO G v9VAJ g 4_H|_\_4A_ M |_<Ag M _+AV M (_ $Ч$_YAC Al G ^ \_<aF T $|_WAC BDy M @u9AJ E ,dp_AH DLw H 4_]AC DEJ F $̨(_.AC BG K 4h0 _  AP HI H HL12,HL_ AC HO J ,x )_ AC HO G \y9VAJ g ̩H_D_p6_ l7_$AM R  (|7_KAC CC L7_ `7_l]J 07_AG BGD` K zPK1xd̪H8_ YW IE E @ D  A K A 84E_AC BJ A a A ^ ,p_ AH HHG H $H_AC BHz H ȫH_AI BK (HI_AC DGA H I_AC DGD E  D .0R..0R.E.0R..0R./.0R..0v. .0R..0R.I.0R.vI1,8d_0AC BGI I O 0h_AC DF N  A  e_~04pe_AC BLGGk E u (h f_AT DDw D K ,f_AC FEDw F ĭu9AJ E 4\|_cAC DEJ H 0i_rAG BH F D~H1,N,pm_AJ HH) D t_kAF AT D Įn_KC E[ B  o_KC E[ B 4xo_JAJ Bm G `G1 ,`_AC HDg I 4_pAC BGEL B Q1w0X_0 AC Ib A 4,R1,4_ AH BN{ D 4ؒ _CAC ML C 4_OAC Mm B 4H_VAP DJED` H (HR12,(,_AC HO J ,X_AC HO G v9AJ E _ _(Աx9AC BIA A `4_JAC BGLD J Q G <L_l#AC DJED E  E k E `d AC BJ.0_.G.Q..0[..R.} E .e.`.e.].H.0[..O.} H -.0e.F.R.#.0b..P..0[..P.HZP1d|`AC BJ .b.V.c.V.Y.0[..Q._.0\.@.R.8.0\.@.P..0[..P.} A s E P1@c0ؖ`[AK DF N X A dt&`*AC BGEEK A H.PR..PR.~.0c.D.O..0b.C.O.O18P`AC BEEGI L S E S  4v9AJ E 4x`Q` AC DH G XO1S4̗,\`$AC ^ H P1 ,`AC HD\ D LP`AC BGN J v.[.D.g.c.i.H S1 ' Hy9AJ Eo lغ``&`4A_ M ` ȶܗ`<aF T ,`KC Ch G l D z9AJ E ,<`AH HH D (l`RAC FG H 4 ̜`AC FF C rR1W4`8`AP DJED H @vR15,@` AC HO J ,p` AC HO G $~9VAJ g ĸ`ظ,`)H`4A_ M  h`  d`<aF T (@` KC G{ H o I l}9AJ E ,`AH HH D (`RAC FG E 4`H`AC FF D @P1i4` AP DJED H P15 ,a AC HO J ,ĺa AC HO G @9VAJ g a(a <aPadal]J 0a AG BGD` K O1 ,л4 aAC FKM F ,4aAH HH E $0 aAC BHz H 0XaAK DF N x A as0 aAC BLF D Q G pH!a  AC HD K .0R..0R.t D .0R.(.0R..0R..0R..0R.d>N1f H؟*aBS AC BU.0R..0R..0R.p A ̟N1K, d@.a  AC FED K .0R. .0R..0R.q K W I W A PLN1B 4Pd3a AC FK E   E  ~9AJ E ,?a%AH HK; I $ܾxeaLAJ Aj J K 4xeaj AC FETi D XM1i 4̡ia  AC B_ A M1= ,hsaAC HD\ D 4PtaB AC BGEL F 0O1fF 4ya 3 AJ FF& C 0P1_ 4pa,AP DJED H آP15,abbb @aLC C VN1a00aAC BLEGK> I d a Dxa MF BEFDl H  I a!a!al]J (paAC BEHJ C 0aAC BK ,TaAC FKM F  a,a}AC BDK K I G , a}AC BDK K I G Dl\aQAC BLH.0R. I S E \ L1@ШXax{AC BGF.0R.y I c E K1K4xa`AC BEEED H S E a*a*X9,AJ \ ,bAG CM H ,xbAG CM H 8XaAC EX G  K k E 4 aAF E D  E o I (b!JC DD  BHXaKC DEN B @ A xI14dHaPKC DEN B @ A I14 aKC E[ B 44a;AC RO E I14 ab AC KO J ثDJ1:4LLbAC BEO F 4 b AC BEO F 4|%bAC BELD A 4ai AF BTK= K ԬL14HbiAF BTK= K (L14b5AC BGED J |0M1 s4 be_AC BGED F ЭL1 ;(%b' AN FDZ M (0b' AN FDZ M ((;b7 AN FDg H (T0Fb7 AN FDg H $~9SAJ E> \b\^bX^bT^bP^bPbl]J ($QbAC BEHJ C PQbAI BK (t@RbAC BEHJ C $RbYAC Al G ^ ,]b}AC BDK K I G ,^b}AC BDK K I G (,`b;AN BDa $LH`bAC DLm G $t`bAC DLm G $xabAC DLm G $bbAC DLm G <`bb AC DEM.0R.m D H(gbAC BGKv.0R.m C .0R.p C xkbAC A} F 4hlbxAG I: E ,HrbiAG CM H PbKC E[ B D,Qb+AC BID H S E z F `H1\!(xbRAC E K , G (zbbAC E% J (@|bAC BIHO J (@}bAC G@ E ,lbAC DH K O (Hb&AC DH  D 0Lb@AJ DH* O O A 4pXb+AG HHa G 4PbEAC BEO F 4hbEAC BEO F 4b #AC BE] J 4PHbz.AC BSON J 4b AF BU7 K 4xbAM KL4 G z9+AJ T blbXbTb$bGAC Ek L F b 00bAM I H E K dbxbl]J (bAC BEHJ C tbAC BK , b}AC BDK K I G ,pbAC FKM F Tbd?AC DEEK.0R.L F .0R.} H S A C1 4bAC FED* K k E db.U A] F$pbAF A, D <(b*Pw9,AJ \ 4bsAG Ih G ,btAH E J S E 8L G (HcbAC E% J ,IcAC BKJO F (KcAC FD} E ,NcAC DH K O (LXRc&AC DH  D 0x\Wc@AJ DH* O O A 4 h_c AC BE] J 4X0kczAC BSON J 4xrc gAF BU7 K 4`|cAM KL4 G 8s9+AJ T cc@c010xlcRAC BEEEH A Hq9,AJ \ 0@c`AG G A 0DcAC EQ F  J HcKC DEN B @ A p=144cAC BEO F 4H c AC KO. D (.=1ELcm[AM OKM K .V.B.d._.h.@1K4ce%AC BGED F `@1 $(c' AN FDZ M (c7 AN FDg H @n9+AJ E dcx d d$$cGAC Ek L F Lc Hcl]J (cAC BEHJ C $ c,8c}AC BDK K I G ,h cAC FKM F D c/#AC BEGH.0^.@.P.E K l>1"(cYAC BEK& D (,p9,AJ \ 4 d"AG Ih G 0cAJ DH0 I Q G 8(Pc#AC BEHX E  A nl=14"4c"AC K] F `L=1nq#4d]#AC BEO F 4 ,cM S$AM PB H .?1g$4`(d%3+AC BGED C @z?1 +,@dF AC BKIHw G ,p(dV AC BKIH J 0m9V*AJ I- E dp>1?|*GdGd$h3dGAC Ek L F D3d XlGdXAC BDM ,|Gd}AC BDK K I G (83dAC DGA H $3dAC BHz H (Hd_AC DN B @4d$/)AC BEIK.0R.m D .0R.`=1 )47dUAC BIDp E  E  o9,AJ \ 4X Kde(AG Ip G (X[d AJ FHX G 8|:d(AC BEHX E  A s<14(4dd (AC BEO F 4L ;d (AC BEUL H ,B<1b5)48jdkC)AM PB H ,dpxdF AC BKIHw G ,dV AC BKIH J 08Pm9V(AJ I- E t<1?(Pd(\d^$<dGAC Ek L F dЎd ,x̎d}AC BDK K I G (dAC DGA H $dAC BHz H dAC BK 0 đdKAC DL F  I Ld'AC DEEK.0R.4.0R.o C .0R.P;10e',d9AC FEK C ,dAC DP H Tn9AJ E 40de&AG Ip G 4|dAC BDf H E K  G 8(d&AC BEHX E  A w4:14&4d&AC DWETx H `:1'4do'AC BEO F 4 dk'AM PB H ,dF AC BKIHw G ,4dV AC BKIH J 0$n9V'AJ I- E x<1?'d ek( e$tdGAC Ek L F ,dAC BLEF C ,d}AC BDK K I G $HLdAC BHz H pdAC BK $dAC BHz H d;AN BDa HT$d&AC FED.0R..0R.u B k E Hz:1 %,H|dAC I\ G 4l ee%AG Ip G 0d AE E G  E 8Xd%AC BEHX E  A {914% <dKC E[ B 4e Z%AC BEO F 4 d %AC KO G *91&4`x ek&AM PB H ,$.eF AC BKIHw G ,T9eV AC BKIH J 00m9V&AJ I- E H};1?h&<HDe T&AC BIDH E @ H 0;1^& 0o9+AJ T TЌeh.  E   E  A +1d $tfAC g E w Pvf$LvfAC  H z @$xf$T xfgAC - G n |hyf$dyfgAC - G n zf 9AJ E  9+AJ T `zf (\zfAC <`zfRAC P| H . B E x*1$d~f^AC  D } fAC H ,9^AJ N  l9+AJ T $,XfAC { A } TfAC H $tfAC { A } fAC H $fAC { A }  fAC H $ fAC { A } ,fAC H L8f <4fAC P;. y H k E u(1$9AJ E , fAC MF G \(1 4|9\ SAT h H ('1GA ,fAC MF G (1 4D49 AT h; H (|'1A ,4fAC MF" G  (1 4l9DAT h A ($'1A 8fAF A\ D T D T D T D 9+AJ T ,<fAC MF G '1 49 AT ho D (,'1A ,`f AE OD E `: AJ  ,4 fAC MF G v'1 4:t AT h E ($3'1A ,fAC MF G T y'1 4 :lAT h H (6'1A 8fAF Al D T D T D d D ':+AJ T ,fAC MF G \!'1 4\':$AT h D (&1A ,f AE OD E 5:t AJ  ,fAC MF G T"&1 4C: 7AT hl G (&1+A ,@ g AC MF G "&1 4<|O:AT hC H (t&1A 8,gAF Al D T D T D d D hU:+AJ T ,grAC MF2 G $u&1 4DU:AT h F (|2&1A ,4&grAC MF2 G $x&1 4d:LAT h H ($5&1A ,4gAC MF" G T%{&1 4t:$GAT h H (8&1;A 8@BgAF A\ D T D T D T D 4{:+AJ T ,BgrAC MF2 G \&&1 4z:tAT h H (%1wA ,xPg AE OD E :x AJ  ,8XgrAC MF2 G T'%1 4:AT h G (%1A , fgAC MF" G '%1 4<:$kAT h H (t%1_A 8,!sgAF Al D T D T D d D h!:+AJ T ,!tgQAC MFB G )w%1 4Dt:tAT h J (|4%1A ,4"g AE OD E d"`:LAJ   ,"gQAC MFB G )*%1 4<L: AT h> E (t$1A ,,#8g AC MF G *-%1 4:AT hF E ($1A 8#gAF Al D T D T D d D $:+AJ T ,4$gAC MFb G +$1 4:tAT h D ($$1A ,$HgAC MFb G T,$1 4d:gAT hd G ($1[A ,%gAC MFR G ,$1 4< ;AT hg D (t$1A ,,&gAC MFb G -$1 4 ; AT hO D ( $1A ,&gAC MFR G L.$1 4 \);;AT h@ C ( $1/A ,|'g(AE BUK D '=;AJ  8'gAF A\ D T D T D T D (,@;+AJ T 8,(gAF A\ D T D T D T D h(?;+AJ T ,(xgAC MFr G 0#1 4D ?;DAT h F (| #1A ,4)hAC MFR G 0#1 4 lX;TcAT h F ($ #1WA ,)hAE OK# E  *8n;AJ   ,,*8hAC MFR G 1#1 4 t; AT hg D ( B#1 A ,*`&hAC MFR G L2#1 4 ,;4 K AT h B ( E#1? A ,|+X4hAC MFR G 2#1 44Ĕ; AT h G (lH#1 A ,$,Bh(AE BUK D T,;AJ  8t,`JhAF Al D T D T D d D ,;+AJ T 8,JhAF Al D T D T D d D -;+AJ T ,4-`KhAC MF G 4~"1 4;|s AT h F ($;"1g A ,-XhAC MF G T5"1 4; AT hg D (>"1 A ,.PfhAE ODB E .;AJ  ,.mhAC MF G L64"1 4;\[ AT h G (!1O A ,|/({hAC MF G 67"1 44D;4  AT h C (l!1 A ,$0hAC MF G 7:"1 4;4  AT h G (!1 A ,0hAE BV> D 0<AJ m 81hAF Al D T D T D d D X1<+AJ T 8|18hAF Al D T D T D d D 1<+AJ T 1h0d<OAG BGD` A !1#,@2ĮhAC G E H 0p2hPNC KOD A,2hGAC BF E f B (2hAG BEH G 4thOAC HK G T 1"4hAC I A 4XhAC BQ I 14TD<-AJ DIM A 4k1a44 <L4h4ThcAC BQ F L154<+AJ T 4h4lh4h 5h&H$5hd AC G9 D X A N A  A h A 4p54hfAC BEEEI H S E 45lh_ AJ BEEED E S E 5<,AJ \ ,648i+AC M I 0064:iAI DEF^ I  4d6iAC k A h $<>iAC k A h $d>iAC k A h $>iAC k A h $>iAC k A h $>iAC k A h $?piAC k A h $,?iAC k A h $T?`iAC k A h $|?ؠiAC k A h $?PiAC k A h $?ȡiAC k A h $?@iAC k A h $@iAC k A h $D@0iAC k A h $l@iAC k A h $@ iAC k A h $@iAC k A h $@iAC k A h $ AiAC k A h $4AiAC k A h $\AxiAC k A h $AiAC k A h $AhiAC k A h $AiAC k A h $AXiAC k A h $$BШiAC k A h $LBHiAC k A h $tBiAC k A h $B8iAC k A h $BiAC k A h $B(iAC k A h $CiAC k A h $jKC  E h $`X?jKC  E h $X@jKC  E h $XAjKC  E h $XBjKC  E h $YCjKC  E h $(Y|DjKC  E h $PYtEjKC  E h $xYlFjKC  E h $YdGjKC  E h $Y\HjKC  E h $YTIjKC  E h $ZLJjKC  E h $@ZDKjKC  E h $hZAC  J } $th`jAC ] G z $hj>AC  J } $hjAC ] G z hj DtKjAC NE. W B  H q G 8902 di<AJ E  i<+AJ T $ijAC z B } $iPjAC z B } ixj <LtjAC NV. v B a G @: 0 lj8<AJ E  j<+AJ T j0j 4 F V 008WkAC DEHZ A D0uPk(u\k2AC Ah $HukAC BHz H (pukAG DHJ B 4ukAC DM A q G 4ukAC DM F q G 4 vhkAC DM E q G $Dv kAC BH H 4Xȿk,+AC DFD A F8044YkAC BJ E Y04Yk6AC BJA G hYt0zhwfn>(fn><(gn>PTgnB(dgnnAJ q D b F D (gnnAJ q D b F D 8hnCAQ  M D L F J C E D ,in* HjnJ knJ4ln*Hmn$\nnXAC b J B F $ pnXAC b J B F Xqn Trn ԓPsnoAC FMD H <040CoAC HL A n0y0dDoFeAC BEEId A 4w.0=`;FtPDoLDoDo ApJAC A@  ԧ@ApWAC AM $lDoAC BHz H ( DorAC Eo H O A (LHEorAC Eo H O A (xEoAC DGA H (FoAG DHJ B ШFoAC A 0hGoFAC BEEId A y`0oLGo [AC DGH4 E Z F [ E [ A  0,64$Ho"AC HD E 0Hxp[oNC BES/ FH l0sb4`o NAC HD J 0N?P4tgo0+NC BGO E  H 00{44ko AC FJ E 0Hto NC DO CH 0%4`o4AC IG D @j0 4oAC HHO E 0V4po]CAC HD B V04\|o"ئAC I D <0r4oAC BQo J 04oAC DO E (0#P;;AJ Ef 4x o!AC BJE K X04̐p~5ߧAW FQ D 0$:pAC BHz H ԮP;pb$;pKC Iv C ,TsAC BHz H (p;AC BIA A 4T>s_AC BIM A 404Ss*H Tsq$\xTsKC I{ F 0 UsYJ BIH J HM04H`VsnE DIGF C 0:^4Ws JAC I3 H |0R4(cs?AC DHh H Ч09PDhs PC HD E  H @0NĠ4us AC FF> B 0q4@sAC BQ4 E 0H\܈s |KC BIOL DH PL0\WHĩsbCKC BJ BH @07_P,s"LPC BJ._. HH (0o4LsX)\YC DO F |B0y$|8;+AQ E $0sAC BHz H 4@srAC BPND G 0t4s`AC HD F t064 s#|AC HD A ȫ0ߠ4<t*ˠAC HDb F 80VpX:t,0HtBAC BJF A ,Ԭ$:t?AG Ck A B0,ItIAC DF% M H ,JtAC FFs E 4HLtAC FMJ G 0DNtJC I E,xlPtAG FER  H ,QtAI I D 4L8t ۟AE HK I ,0(,xCtAC BJ A $XLFtPAC Ao D W  d;+AJ T Vt Vt ,VtAJ BD{ D O C 0HWtAJ BEJ G j A (0$XtAG DHJ B 4\XtAC DM F q G `[tAC A $lttAN GY $ČtgAN GL D||[taНPJ BGH DH @p0D\t PC BLFD KA &0UPD4]tAPJ FEK B p H @0P_tPC HDP A x A ~0Ad;H,`dtLAC I K ,wtAW DO E $t$8܌tiAC BDM A `t2AC Ah (t6AC BDU A M (t6AC BDU A M (,tAG DHJ B 0xt)YAC I D T030ȳtFAC BEEId A x08t?AC BEH D W I @ A (tgAG Ce H g A 8 t?AC BEH D W I @ A H;;4дؐt +AC BEEG E 04$tAW FQ K 0ڙ4x@ti ƙAC DEIQx A Xv0ԙ4̵\t AC BJ E 0t t piu|iu2AC Ah 0tAJ BEH C U C 4<xtAC BEH H W I ] C 4t`tAC BEH H W I ] C ,HtAJ BD{ D O C 4tAC BEH H W I ] C (tAG DHJ B @TtgAC Aa 4طt GAC FEK C 06;;,t (AC FED D ,uf^AW FQ O (,xgurAC Eo H O A (XgurAC Eo H O A $ huAC BDY M 4 huh.AC TF E 09 4tku]AC VD F T0XPȹsuЖPC BJ A  H Ĺ|01u$luAC BDn A Ļu2AC Ah ( uAG DHJ B 4LHuAC DM A q G 4uAC DM E q G H0u&AC HDx H [ E ] A } E $0@D$@u AC BJ0 H  D  B c E 4ȪuAC HD# E N0$,4uAC C C hQ&0n@ uAC BEKI A y G  B Y A P;:4d u AC DDe G \ D Hhu ʔNC P GH >0U$uKC Ix A <XudPC DD] HH c03<uPC DD] HH Xd0HXuxړ]C DKD FH L024uAC BGM H f0P4urAC BPJH A ̬^0H4lAC BJ G \ D [ E [ E ^ J P0}TtvUiAC HD C [ E [ E  E  J 048`#v{AC HD K 0 ;B,,6v6AC FED E ,\lvAW FQr; O $x wyAC BDU Q $ wKC I{ F 4Px wqЏAC DVD F 0D0N4 wAC BJ G >0\4wjAR HM G F0j֏PL3wPC HDP A  H H@0͏LBw/PC I E  H ~0B4(`qwi@ AC DKD% F l0!( xwAC BED` B 48ܱwLC BEDN HA 04w"AC BED A 4n0P4wPC HD D ` H 00ِ40w*AC Ac T@w h024y"QM HDH F d0P4yuAC HD K 0ć4,,yO AC DEFD C  0O$ (yAC BHz H 0y]iAC HDo A 0da8y^MAC FDg K  J 04&4Pȱy7 AC FEK D 00;4yHy ,\ymAC BF D X H 4yAC BDR D G A N C 8yAC BEHZ C M A T C $4yAC BHz H 4(yAC DM F q G (`dyAG DHJ B $zUAN G: $zHAN G- ,zAC FED I 4xy{KAC I8 K `z0i"4y^AQ DEFGZ F 0@L(y܄AC BH C Z F X H Y G Z F d00 TyAC BEEId C y 4y jAC BJ G 040f :|;AQ E $<:UAC BHz H d: VDW  (:VAC DGA H 4:$WAC DM A q G 4:YAC DM E q G ( ;\VAC BDk K T (L;\VAC BDk K T 0x;\AC DFD{ C b A 4;"AC FFD J V A 4;0#AC FFD J V A 8<]AC DKS J O A  D ,X<#BAC BJF A <$FaI AV (<L^AC DHDT H 4H^l dAM BNIK C (0Bd4l$].dAC BGG E 4jYdAC BEFH B  L0c4( kjcAM BLJH G  0c4| lcAM DNK1 D \ 0Pc4 Xt#|cAM DO G  0-d,>D$iAF FF H 8T!TUTdAC BEIIOP@ D 8!z0 g8!\YgAC BEIIH=G F !0Fi4"D3iAC BQe A !h0F"yt4X" ftAC DO A 8"Z1 (8@,'AG P <"`~AC BQ F V J "91 -(@d9}AG Pd 4`#-bAC DPID? E @#lE1 D(@AdNAG P 8#hiAC BEIIHwF A #O1(Ag~AG Pe 4d$t+KkAC DPID$ F D$fX1D(DBu!AG P 8$$4B5AC BEIIH3$ A $~_1(Bl AG P 4h%h%]AL DPID F H%b1HCܒDZ  4%lU܈AM DPID> D %g1440&m6!AC DPEH( J &xn10(D0rAC Eo H O A 4&YQAC BEFH B h$s1(4' AM BNIK D &r1`!H\'  PC HD KH P'r1#~PE DZ  4'$SKAC BQ A 's1j E@ TAC AN $E| AC BHz H (FAC DGA H 0(xߋAM DIk J Zx14)QAM DIK F  x124T)$&nAM BNT A 4)w1D4), ϋAM DRK~ C )x1P)l9q`eH OK H  A )\y1Hl*|ZC BEEP GH `*1 R `Hu;AQ E $H)AC BHz H (H*AC DGA H $H|?AC Ak H F 4t+MAC BEEG G 4+M{AC BEEG G 4+MWAC BEEG G 4,M3AC BEEG G 4T,MAC BEEG G 4, MAC BEEG G 4,$MǑAC BEEG G 4,< MAC BEEG G 44-T!MAC BEEG G 4l-l"M[AC BEEG G 4-#M7AC BEEG G 4-$MAC BEEG G 4.%MAC BEEG G 4L.&MːAC BEEG G (LT'VAC BDk K T (140p[=6AC BQ H 0|1$L1\D:[C I H  D 141x41@ˆ'3eAC I D h11z41ܔAM HHw K 1؏1>ӕ4O*AC M G { E [ DO+AG DEJ A  E I G T L 42Xt;CAK DM A (2B1EOA 03w;37AQ Ls3 A d'1]*P;$Q-AC BHz H ,38.hڔAM BKD A 143\.AM DIM J 314@4MAM BNIK J  4>1j[44]uGAM BNIK A t4T1$tR@uAC BHz H 05ueAM DIk J `Ē1?4`5hv/+AM BNIK G @51̖(@SKAC I (lSMAC I 4 6|aAM BLKK A 51l 4`6x!)AM BNF~ F @6Ƙ1z$DT NAC BHz H (lTNAC DGA H (TOVAC BDk K T (TPOVAC BDk K T 4d7OAC BGEM A D7147eAC BGEPn A 7ߛ10 8|AM DIk J \ 14\8,} yAM DILK A <8148膈=8AM KOD D 8z149Ծ, AM BNIK I 8D16"(V AC I 49tlAM BLO F d91x 49VVAM BXn J 91 š$WAC BHz H (WAC DGA H (XVAC BDk K T (gAM DIk J t1A4t>D-AM BLIM E T>1+}4>ZiAM OK E >z1:4?+M)ߩQM DO D >`1fp4p?TmX]AM DO H P?r1  4?Z  AC DLM A ?14@̹Z AC DJN J ?10p@ŋAM DIk J 1ͬ4@xƋx"AM BX F @14A: AC KPIL G @14hAp" AM BLIM H HA1Z$L_(>AC BHz H 8A>,AC BEEEWr A A14@BTAC DEEM A  B10BiAM DIk J "14BjmAM DQH I B1GUP8C@mV#A[C HDF H O I 4C14C0AAC BL E C.1 $ahьAC BHz H 0(Dь̮AM DIk J x<18xDҌ"AC BGIIHO J \D1c}4Dh֌iAC HD F D1U4$E$[ӮAC FFN$ B E1S(cPEgAG Ce H g A <EEZH DIp AH 14FHFίAM DLLH E ET1¯4TFM1AC DKF D 4F1m$4dp~AC BHz H (\d~AC DGA H 0FlAG DJQ I L1ܯ0LGȯAM DI C ~1PG/eC BQe H  D G(14 HͯAM DILD E G1V $e;AQ E 8HPhүAC BEFFD+ A lH1,8HhoAC BEFFD2 A H\1,s48Iu_AC BEFD. A 64150gAC BEEId C y 4I8 AC DH C I1$$gÍAC BHz H (gčAC DGA H 4lJčAC BEFD J  8>1z4JōfAC BEFD J t81=4KǍ )AC BEIJ J J1>4hKpэN+AC BJ I HK1G^ HiL;+AQ E liH$iTAC BHz H (iAC DGA H (i$qFC BFV I4tL$AC BEFD J (:V1j4L`VAC DOD H L1/98j#SAC M A Y A S <XM'?AC FEH E P H 4M`Q1ϬAC BGIH J xM|1T xkL;+AQ E $kh*AC BHz H (k*AC DGA H 4dNd+ɬAC BEFD J <N14N,AC BEFD J l<1c4 O-OAC FED I N1sE4`O(41AC DIEHJ H @O13] @m;+AQ E $dmJYAC BD} A m_m$_2AC Ah $mJAC BHz H (m KAC DGA H (nKAG DHJ B @nL&AC A` 4P$La*AC BEEOy A P14(Q@L AC BEFD A >z14|QLAC BJ F \Q@1j4QS{ AC HD  D QV1 ot;OAQ C5 (o0]AC BIA A $p]AC BHz H 4R^ AC BEFD A P@H14R^ ۩AC BEFD A @14DS_ AC BEFD A @1s8SP`Q _AC BIIID H |S1X$|q;+AQ E (q0iAC BIA A 4qiAC DM E q G 4|TLlAC BEFD J 0B>14Tm{AC DFFD D T1,d4$UoPAC DKDZ G U19:$s;+AQ E (,stAC DGA H 4UtӧKC DOR A (Vn1A 40VȌFAC FGx G V1.g4VěSAC BJ$ D dV1vZ$dtp;+AQ E (t8AC DGA H 4,WAC HIE F Dj1ʧ4WX AC BL` F `W01^ۧ `u;AQ E $u܎YAC BD} A uhut2AC Ah $u܎AC BHz H (vlݎAC BIA A (4vݎAG DHJ B `vdގ6AC Ap 4XގaAC BEEOy A X14HYގ sAC BEFD A F1I4Y\ߎ 5AC BEFD A PG1 4YAC DFID A Yf12ڥ4DZƥAC BJ J $ZD13  $x;OAQ C5 4Hx<} AC FEDC J   F 0xAW FQ L xxxxyy ,y zPLRxy9& P$4BEB B(A0A8G 8A0A(B BBBE ,zPLRx9& 41nf$yMAN S DJ ZA$z\AN0KADz +H[D$4BBB D(A0G@ 0D(A BBBA (zPLRx8& @01&zC{C{C)({C)<{C1P{C8Hk0h" AX A zPLRx-7& (d1Cߢb E 8YעnFA zPLRx6&  (D1&,|XC P$wBEH B(A0D8G  8C0A(B BBBK ,zPLRx%6& 41:|B2He|B2He,}C9GDA dABEHD}CBBA A(G0u (A ABBH D(A ABB4}dCBBA A(G0(I ABB4}DBBA A(G0z(I ABBH~DBBA A(G0 (A ABBN D(A ABBL(BBB E(D0D8G` 8A0A(B BBBI (zPLRx4& `01cC~D H~DBBA A(G0 (A ABBM D(A ABB8@FBBA A(G0(I ABBH|GBBA A(G0[ (A ABBJ D(A ABB8HBBA A(G0`(I ABBH0JBBA A(G0 (A ABBN D(A ABBL4(ϞBBE E(D0D8P#^ 8D0A(B BBBG ,zPLRx2& #4K1 @\:ٞAC N D X H ~.\.k A (zPLRx1&  01{4<{Dp} A zPLRx)1& p$1QS8ȁ\JBBA A(G0(I ABB;.DWLKAr E X H ^ J Z F H H H H H H H H H H H@0 (TBGB D(A0| (A BBBE <t dLpBBE A(G0p (D ABBF $zPLRx/& 0,1$P PBEE B(A0A8J 8C0A(B BBBH ,zPLRx5/& 4S1>̃X;.DW4 `SOAC BEEEH. h H ,zPLRx.&  41&1d0Tx,T(T$T T ȄT ܄T TT 4 THAAG  CAD G AAG P$U d U%AP G F0U ,U (U $U ԅ U U U U $U 8 U LU `U tU T T T ĆT ؆T T TT0(TNAGDpc AAG SAA\U pU U T T T ԇT T T T $T <y)Py3HflTH K A8UAQ;4Kc A Ĉ U0؈UwAAG V AAO DAA0 UwAAG V AAO DAA4@Dy'AAG  AAG DAA,< VAD0c AAA zPLRx)& 0(1&ŖP; BNB B(A0A8G 8O0H(B BBBM $Z1YA`V,8VWFA bD H1&dXV ЊTV ,PV,AID  BAC (1L <V^BEA E(F0 (A ABBE 1\ߕ<HWCϕBEA E(F0 (A ABBE 1r,XYFG@ EAM zPLRx&& @(1re, YUAFD  AAI &1L4,TZ$WFA bJ *1&, [AID  AAE 1Lє,[WFA bR d 1&,,\WFA bR 1&c`tt\lSBED E(F0 (A ABBF s (A ABBG L (A ABBA ( 1L8,h]BED A(GPj (A ABBE ,,]ADJ  AAI \1L,t^AD0f AAA <`1&j L_ ZFA 0J1&@D0` 0BAA DP  CABG D  HABA $zPLRx=#& P,1Ӓ `uÒJFA 1&0swAAG V AAO DAA0,twAAG V AAO DAA<$`/BED A(D0h (A ABBB  *1!|`{BBB D(A0GPt 0F(A BBBM { 0A(A BBBE D 0E(A BBBH q`dXAPD 0A(A BBBA (zPLRxq!& P0x1!YH(sBBHB E(D0A8D` 8A0A(B BBBE 8LahAAD0 AAH B AAD p1L֐hhbx ƐBBE B(D0C8Gp 8A0A(B BBBF  8A0A(B BBBE (zPLRx! & p01:ِܒ;s s8)0T2HeLrr8`TsBBB A(A0W (A BBBJ (tAz E O Q S E Hȓ\uAYX`u֏BBB A(A0G@ 0A(A BBBA | 0A(A BBBD T1r0wIDD k ABA $zPLRx-&  ,R1&7$̔xcADG0TAA\PxKBHE D(A0J 0A(A BBBE   0A(A BBBA (zPLRxe& 01L<\yxBEG D(GP (A ABBE $zPLRx& P,x1|UL,}`FBBB E(D0D8Gp 8A0A(B BBBK 1~<D$oBEG D(GP (A ABBG R10hؖl؎ Ԏ.Al莏0DD@X< l8 .Al0`(BAA } ABD Hr1DȦj$ A^((EBDI rABHL}L lBEE E(A0D8DP0 8D0A(B BBBI (zPLRx & P01lcL\BBB B(A0A8DP 8A0A(B BBBK 1(X,0lH (DBHD ABķc, 4AAD g AAA 1L h@UFA T&1& !lAԌVFA 1&,X!AAG ^ MAA 1LP!ȸyBBB B(A0A8J 8A0A(B BBBA ,zPLRx& 41{Hxȏ=BBB B(A0A8G@k 8D0A(B BBBG D"pǏzBBB A(A0D@j 0A(A BBBB h!n1LG$P;.DW<Ώ<#Dɏ BID A(O0Q (A ABBA 61ԋ0|ΏwAAG V AAO DAAܜHɏDɏ9pʏ lʏ L#hʏaBBB B(A0C8G 8C0A(B BBBJ ,zPLRx=& 401x 4ĝ;BFA D@ AAB͏bAG X A0͏BHD D0  AABI 0PtΏBHD D0  AABI 4ӏBBA A(G0z(I ABBHӏBBA A(G0u (A ABBH D(A ABBtLԏKBE E(D0A8GP8A0A(B BBBIHP 8A0A(B BBBK <D&͏,>BBE A(G@ (A ABBD $zPLRx& @,l1O׏BFB D(D0D@O 0A(A BBBC  0G(A BBBA D 0F(A BBBG D 0F(A BBBG LH' ϏkMBFB B(A0A8DP 8A0A(B BBBH ,1$HWAAG S CAH m CAG J CAB QCAH8 XAAG S CAH v CAF J CAJ QCAH`XAAG S CAH v CAF J CAJ QCAHСXAAG S CAH m CAG J CAB QCAX5$0$YeAzH E(D0WAXlY9,lYNADD z(A0GAA`׏BBB J(E0A8GP 8D0A(B BBBH [ 8D0A(B BBBH dُAW<)hُ~BHD C(GP6 (A ABBA  H1&<8*ڏzBBA A(DP (A ABBA  1Lz<*ۏjBFA A(DP' (A ABBA 8 1L?4*܏~/BAA D@  AABB $zPLRx]& @,1&ބ<`+ݏ΄BFA A(DP, (A ABBA 1L<+@ߏAEDPU AAG  AAH zPLRx & P(|1LD,4,T.4AEDP AAJ p1L<|,< AEDP AAI 9 AAE t1Lރ<,ts΃AEDP AAE 9 AAE  h1L<,-BLD C(GPi (A ABBA \1Lh<-4XBFA A(DP" (A ABBA ,P1L-L-lpBEB E(D0A8G` 8A0A(B BBBD (41PD.tBHE B(A0A8GI 8D0A(B BBBH T$n1ׂL.݂BEB E(D0A8G` 8A0A(B BBBF )1(TADK0 AAD (dADK0 AAD (ADK0 AAD ,/|0AAD0 AAA d1&,/AAD0 AAA 1&܁ ,0́qFA -1&(RADK0 AAA ЩD5AL  AA `5AL  AA <0|.BEI C(F@ (A ABBJ  (1L p49AL  AA P MAL  AA (| ADK0 AAD  MAL  AA ,1, ZAAD0 AAJ !1&8,2t(AAD0 AAH !r1&(RADK0 AAA ,2AAD0 AAJ P"$1& 85AL  AA D2TtAAD I AAG H AAF f AAH 01L<DT3,AAD L AAD H AAF f AAH 01L~,3~AAD@L AAD !1&~,3\~AAD@L AAD `!1&~,D4~AAD@D AAD !r1&a~,4|Q~AAD@A AAG !P1&0~,4 ~AAD@ AAG 8".1L~,X|AN0 AJ W AA ,L5}FA \b 21&}ЮP5P {}BEH H(A0C8M 8A0A(B BBBA ,zPLRx& 4x1ow}$49DP G(A0A8K@P$49DP G(A0A8K@P$Я49DP G(A0A8K@P$49DP G(A0A8K@P,64|BDA t EBN 1!|L,7\5|BEE E(D0A8D`J 8A0A(B BBBB  21Go|X76_|BFE H(G0G8J`pkhA`H 8A0A(B BBBK 21<|D`:,8l:|AAD ~ AAJ 51&{,d8;{AED  AAL 51L{;;P8< {BEE E(D0D8M 8A0A(B BBBF ,zPLRxU& 41*{xE,DF E(B0Z̲E,DF E(B0ZE,DF E(B0ZH HIBBA A(G0u (A ABBH D(A ABB8XIBBA A(G0z(I ABB X:JyzNFA 71&rz8:DJbzBFA R  AABA $zPLRx% ,21zD;KyBBB A(A0G@  0A(A BBBF 91yLp;Z yBBB B(A0A8GP 8A0A(B BBBH T1y0t;.DW<,dADD0k AAJ ^ AAH `AAHlHeuBGB E(D0C8Dpy 8A0A(B BBBB 4|h BDF  AEG KAM(TiDH AG CA(j0jHDnQBEB B(A0A8G` 8A0A(B BBBA LT=jxBFB B(D0A8DP 8D0A(B BBBA 81w\|oBBB B(A0A8DP 8A0A(B BBBH D8C0A(B BBBXjlDPE G [xn&wBBA D(G0 (A ABBB P>povBKB B(A0A8J 8A0A(B BBBG ,zPLRxq% 41v<T?4o&vBBA D(G0 (A ABBB <?$p&kvBBA D(G0 (A ABBB P?GvBKB B(A0A8JJ 8A0A(B BBBG ,zPLRxU% 41u<p@xpuBED G(K@h (D ABBB P@ buBNF B(A0A8Ga 8A0A(B BBBG ,zPLRxy% 4D1j]u4pBAA { ABN AABHĺpBBB B(A0A8D@j 8D0A(B BBBK PAn;tBGB B(A0A8D2 8A0A(B BBBA $(B1tAPPBq;tBGB B(A0A8D2 8A0A(B BBBA (B61tA8 HpBFA A(D0| (A ABBA P Ct;r ?tBIB B(A0A8Gw 8A0A(B BBBG ,zPLRx% 4B1s;PC;sBGB B(A0A8D2 8A0A(B BBBA (D1sAP@D;sBGB B(A0A8D2 8A0A(B BBBA (D41sA8nBFA A(D0| (A ABBA PD; [sBIB B(A0A8G  8A0A(B BBBG $PEp1CsA  ;PE;#sBGB B(A0A8D2 8A0A(B BBBA (E1sAPFX;rBGB B(A0A8D2 8A0A(B BBBA (dFP1rA8̿mBFA A(D0| (A ABBA PF\; rBIB B(A0A8G 8A0A(B BBBG ,zPLRx]% 4\1Or;nn 0G mrBDD _ ABA ,1Lq4nHm $\mLADG }AA,HHmqAED " AAB E|1&qPHxv4qBEB B(D0A8D| 8A0A(B BBBF >61q<yPy d x 01&q4xBUG E(J0R(D ABB@xBHG b(X0F(D A ABG aAB8@DySBII H(G0e(D BBB(|hyADD0r AAC <lJyPpBBA A(D0 (D ABBE @(1&oPJz-oBEQ B(A0A8J 8E0A(B BBBF ,zPLRxe% 410ot`KhioBBB B(I0D8QoJMDDDDD[Z 8A0A(B BBBA )R1&o<KHoBBD D(N` (A ABBA $zPLRxM% `,1&nLpL؃nBBB B(A0A8DP2 8B0A(D BBBC T-1n8BIH H(H0(D BBB4P4jBEE H(J0B(D ABB\LMlmBIA A(GP (A ABBD DXU`IXAPJ (A ABBE 11=m4MtmBDA G0X  DABC $zPLRx% 0,t1&Wm(xADG0X DAG  *A[ L A NSlhFA K1&l<N ulAC BEEED.0c. H PD1l;.DW(ADD0r AAC PONlBBB E(A0D8G 8A0A(B BBBG E1lPODIkBBB B(A0D8GL 8A0A(B BBBF ,zPLRx5% 4 1#l(LP$-$lBBB B(A0A8DP 8D0A(B BBBE 121;k$H쥑1ADR TDA4QkAAD I DAD _ DAD _ DAD _ DAD _ DAD _ DAD _ DAD _ DAD _ DAA O1&:kPQb*kBBB B(A0A8G 8A0A(B BBBC ,zPLRxM% 4(1akDxRZmkBEE D(D0GP 0A(A BBBD :1!3k;.DW0,ؽxADD0r AAC uAAP$S$mjBEB L(P0A8G 8E0A(B BBBH ,zPLRx% 410jtS‘R}jBEE B(A0G8JxDDDDDDN{ 8A0A(B BBBG ,zPLRxE% 41&i@TđiiBEE D(D0E (A BBBA (zPLRx% 00*1piHDđBBA A(G0 (A ABBM D(A ABB8ƑBBA A(G0(I ABB(ǑAGN N DFZ PUȑhBAA JvObDMp~  AABH $zPLRxm% ,10?hpPVɑ//hhAA GPQHAABVu AABC`A$zPLRx% ,n11gdWˑgRAA GsMHAABVu  AABJ hH 11;gLW$͑&+gBVT GWAMGMQu  AABJ 10fDW͑fAVUWAMGMPR AAG $zPLRxI% ,10wfDtXdΑ gfAVUWAMGMb[ AAD b10-fDXϑfAWTWALHMI| AAD 210epDБK(Б.AEG  AAG ёsAK L (ёAAG i AAD (ӑ.AEG  AAD 4(ԑvAEG  IAK z IAL `ՑAt K T֑xXZ`֑dPAA NaxADMPS  AABF DxADMPzH1`NdPZlّ>dBBB B(A0D8J 8A0A(B BBBC ,zPLRx=% 4n1mdkP[LeBBB B(D0A8J 8A0A(B BBBG ,zPLRx% 4,1eHtBBA A(G0 (A ABBN D(A ABBHBBA A(G0 (A ABBN D(A ABB4 8BBA A(G0(I ABB4DBBA A(G0(I ABBD@] dAC BHEED.05.t.0 G .RR1td$H>ADG oAAЌ;.DW H]mMdBGB D(D0N 0A(A BBBQ (zPLRx=% 01rct^cBBB H(G0D8JJMDDDDDId 8A0A(B BBBA ,zPLRx% 41&GcDD_7cBIB D(D0N`I 0A(A BBBD (zPLRx% `0.1b4 $_BLE K(J0m(D ABBDD0$^BEE F(H0G8J@e8D0A(B BBB$H$?ARR TDA<x``$ .bAC BEEF.0. K U14b ;.DW$0 P`0qbBBE B(A0A8G2 8A0A(B BBBH d1b(9[BLK ~AB$498ADR [DADaL9aBEE D(D0G@t 0A(A BBBI `1&paHX9BBA A(G0 (A ABBM D(A ABB<;BBA A(G0(I ABBu|u  xu <94=-H=\(=p$u uuuuu uu u $u 8t Lt `t tt t `d<_]FA a1_ dl<^WFA bZ1&^< (< << P1&(\,4hB\AAD@ AAM U1L[,|hC[AAD@ AAM U 1L[4h$E[BDA G@  AABH =1&[hiE[BBB I(D0H8Gp 8A0A(B BBBG  8A0A(B BBBJ (P1@[`LS(LxBDD jAB(M]BDD OAB4@4MmBEA D(G@S(A ABB4xlMBED A(GPq(A ABB(MLBDD ~AB(MsBDD eAB$BBE E(D0A8MR 8A0A(B BBBE ,zPLRxY% R41Bj>4ӒXBED G(M@f(A AFBdԒ">BBB B(A0A8D` 8A0A(B BBBI D 8A0A(B BBBJ 41&=dpג0xlגAJ S MM d DP kA(גAG u AR @D\ؒ0xؒ<ؒ ؒ 0(ؒdADD@H AAE IAA\ؒpؒ#ْ#$ْ1ADG0UGA4ْA$pْ1ADG0UGAْ!L؏ڒ <BED D(G0z (A ABBJ H (A ABBA x>1&;| ڒ ڒ  ڒ ڒ ڒLےU;BBB B(A0A8D` 8W0A(B BBBH 1';H L=AG sAh l3AG iA DQ =AG sA kAG aA 6AI fA,ȑ G\:QAF d AAJ H,1L@:,(t0:AAD  AAA 01L: `n$ KADJ wCA< |AAG R AAC D FAE DFA8Ԓ$ 9ADG ^ CAB b HAE `19d ,<B{9AAD P AAA >1&W90 wAAG V AAO DAA8|9AAG0q EAH T EAI ظ18Hf8BAD Gd  EABF   AABO Y 18, D9GDA dABE( T5BAA mAB<Дh&O8BBA D(G0 (A ABBB <X+8BED G(K@d (D ABBF PPU; 8BBI E(A0A8G  8O0A(B BBBH ,zPLRx٣%  4,17(<^;<Xu `7XFA H1&H7,P87AAD I AAA Г&1L7|,AK L p H _ I N J ,,hAMD QCA8 8M 6AAD 3 AAE o AAG 164t46BDA D0  AABH I41D6`8ܗle6BDA } ABI QABT  0,g6BAH l ABF xrD a A L|<}'6BEE B(A0D8DP 8A0A(B BBBJ ,̘5ADD0 AAH (15P$[;^DNHl<BBD D(H@ (A ABBD u(A ABBH=BBD D(H@ (A ABBC v(A ABB8BBA A(M0 (A ABBH p4iFA 1&48BBA A(M0 (A ABBH H _4FA 1&E48!BBA A(M0 (A ABBH D!h8X!BBA A(M0 (A ABBH `"E8"BBA A(M0 (A ABBH #Y3FA ¸1&?38 #BBA A(M0 (A ABBH h$2FA p1&28$BBA A(M0 (A ABBH ,`%`2OFA b` 1&e28x%BBA A(M0 (A ABBH %2FA 1&18p&BBA A(M0 (A ABBH &!8'BBA A(M0 (A ABBH t'c1FA X1&I18\(*BBA A(M0 (A ABBH H\*0BBE I(A0G- 0D(A BBBA (zPLRx՚% 0x1"0 ,0FA `^1&08dp-BBA A(M0 (A ABBH Pd-W0BBE J(D0A8G 8D0A(B BBBA ,zPLRxř% 41^0@<H/BGL D(E0D@0A(A BBB@D4/BEA I(G (D ABBA (zPLRx% 0>1"e/8̠\6(U/BDD G  DABA $zPLRxu% ,1.PH7.BBB E(A0A8J 8D0A(B BBBA ,zPLRx% 4X1x.PT:h.BBE B(A0A8G 8A0A(B BBBA ,zPLRxE% 4̳1-@?-BEA I(G (D ABBB (zPLRx% 0T1-(DPABAD uABP4AD-BEB E(A0A8G 8D0A(B BBBA ̲1,\C,AAGs DAG L DAG Q DAJ L DAG L DAA $zPLRx}% ,<16,8|CBGA D(N@(A ABBH\F"BHI B(A0D8U`8A0A(B BBB8Ȥ@L3+BDD G  DABA 1+@,M+BEA D(Gv (D ABBA J1q+HxpNa+BEE A(I0Gl 0D(A BBBA  16;+HܥOm++BEE A(I0G 0D(A BBBF Ȱ1G(+P@Sr+BBB B(A0I8G 8A0A(B BBBA G1F+H[6+BEJ A(A0G  0D(A BBBE (zPLRx%  01X+H<]*BBE A(D0G 0D(A BBBA (zPLRx% 01*`̧a}*BAA Gq  DABE L  DABE p  DABI L  DABA $zPLRxM% ,'16 *PphaW)BEB B(A0A8G0 8A0A(B BBBA ,zPLRx% 41)8 ,ess)BDD GR  DABA D}1D)P`XfG4)BEE E(D0A8G 8D0A(B BBBA ,zPLRxɏ% 41b(<8# jBGB A(K05 (A BBBE D<m(BGB D(K0FP 0D(A BBBG |1k(H#o3BQE B(A0A8D@j 8D0A(B BBBI Dq(BEJ D(A0G 0D(A BBBA (zPLRxM% 01'($tsBAD AB8$sBID D(G0(D ABBDܫu 1'BIB K(A0G` 0D(A BBBH L=1&x%7\@P(1&BBI D(G (D ABBK  1!&@ &BBI D(GA (D ABBF 0 1!i&H`Y&BBE A(A0O 0D(A BBBG j1!&@l $&BEI A(G (D ABBA , ,1".&Pȭ&BBB B(I0A8G 8A0A(B BBBA l1B%\4t%BAA m ABD I ABD s ABB I ABD I ABD H1&%'(D4(uBEA \ ABI AABL(`(\[ I c(D(BKD  ABD V ABG x ABA (()),)@)T)h)쌓|)茓)))쌓)茓)䌓")!* AS#VFA Tb1&7#<,'#BBD A(K0N (A ABBA 01&"*t *pTHK*3AqL؍"BBB B(A0A8G` 8A0A(B BBBE 1z"L(?s"LBB B(A0D8OP 8A0A(B BBBK  1K"(+XnAAD e AAK +A;<Dw, AW4$!BAA D0  AABB 4ę1&!4D!BAA D0  AABB e1&!4o!BAA D0  AABB ex1&E!4t5!BAA D0  AABB $fN1& !44䗓 BAA D0  AABB tf$1& 4T BAA D0  AABB f1& 4ԴĚ BAA D0  AABB gЧ1&] 4$4M BAA D0  AABB dg1&# 4t BAA D0  AABB g|1&4ĵBAA D0  AABB hR1&4BAA D0  AABB Th(1&u4deBAA D0  AABB h1&;4d+BAA D0  AABB hԦ1&4ԤBAA D0  AABB Di1&4TDBAA D0  AABB i1&4}BAA D0  AABB iV1&S4$CBAA D0  AABB 4j,1&4D BAA D0  AABB j1&4BAA D0  AABB jإ1&4tBAA D0  AABB $k1&k44䮓[BAA D0  AABB tk1&14T!BAA D0  AABB kZ1&4ԹıBAA D0  AABB l01&4$4BAA D0  AABB dl1&4tsBAA D0  AABB lܤ1&I4ĺ9BAA D0  AABB m1&4BAA D0  AABB Tm1&4dBAA D0  AABB m^1&4dBAA D0  AABB m41&a4ԻQBAA D0  AABB Dn 1&'4TDBAA D0  AABB n1&4BAA D0  AABB n1&4$BAA D0  AABB 4o1&y4DiBAA D0  AABB ob1&?4Ó/BAA D0  AABB o81&4tēBAA D0  AABB $p1&44œBAA D0  AABB tp1&4TǓBAA D0  AABB p1&W4ԾȓGBAA D0  AABB q1&4$4ʓ BAA D0  AABB dqf1&4t˓BAA D0  AABB q<1&4Ŀ͓BAA D0  AABB r1&o4Γ_BAA D0  AABB Tr1&54dϓ%BAA D0  AABB r1&4dѓBAA D0  AABB r1&4ғBAA D0  AABB Dsj1&4TDԓwBAA D0  AABB s@1&M4Փ=BAA D0  AABB s1&4$דBAA D0  AABB 4t1&4DؓBAA D0  AABB t 1&4ړBAA D0  AABB t1&e4tۓUBAA D0  AABB $un1&+44ܓBAA D0  AABB tuD1&4TޓBAA D0  AABB u1&4ߓBAA D0  AABB v1&}4$4mBAA D0  AABB dvƟ1&C4t3BAA D0  AABB v1& 4BAA D0  AABB wr1&4BAA D0  AABB TwH1&4dBAA D0  AABB w1&[4dKBAA D0  AABB w1&!4BAA D0  AABB Dxʞ1&4TDBAA D0  AABB x1&4BAA D0  AABB xv1&s4$cBAA D0  AABB 4yL1&94D)BAA D0  AABB y"1&4BAA D0  AABB y1&4tBAA D0  AABB $zΝ1&44{BAA D0  AABB tz1&Q4TABAA D0  AABB zz1&4BAA D0  AABB {P1&4$4BAA D0  AABB d{&1&4tBAA D0  AABB {1&i4YBAA D0  AABB |Ҝ1&/4BAA D0  AABB T|1&4dBAA D0  AABB |~1&4dBAA D0  AABB |T1&4qBAA D0  AABB D}*1&G4TD7BAA D0  AABB }1& 4BAA D0  AABB }֛1&4$BAA D0  AABB 4~1&4DBAA D0  AABB ~1&_4OBAA D0  AABB ~X1&%4t BAA D0  AABB $.1&44 BAA D0  AABB t1&4T BAA D0  AABB ښ1&w4 gBAA D0  AABB 1&=4$4-BAA D0  AABB d1&4t BAA D0  AABB \1& 4 BAA D0  AABB 21& 4 BAA D0  AABB T1&U 4dE BAA D0  AABB ޙ1& 4d BAA D0  AABB 1& 4 BAA D0  AABB D1& 4TD BAA D0  AABB `1&m 4] BAA D0  AABB 61&3 4$# BAA D0  AABB 4 1& 4D BAA D0  AABB 1& 4 BAA D0  AABB ԃ1& 4t u BAA D0  AABB $1&K 44!; BAA D0  AABB td1& 4T# BAA D0  AABB Ą:1& 4$ BAA D0  AABB 1& 4$4& BAA D0  AABB d1&c 4t'S BAA D0  AABB 1&) 4) BAA D0  AABB 1& 4* BAA D0  AABB Th1& 4d+ BAA D0  AABB >1&{ 4d-k BAA D0  AABB 1&A 4.1 BAA D0  AABB D1& 4TD0BAA D0  AABB 1&41BAA D0  AABB 1&4$3BAA D0  AABB 4l1&Y4D4IBAA D0  AABB B1&46BAA D0  AABB Ԉ1&4t7BAA D0  AABB $1&448BAA D0  AABB tĕ1&q4T:aBAA D0  AABB ĉ1&74;'BAA D0  AABB p1&4$4=BAA D0  AABB dF1&4t>BAA D0  AABB 1&4@yBAA D0  AABB 1&O4A?BAA D0  AABB TȔ1&4dBBAA D0  AABB 1&4dDBAA D0  AABB t1&@DSEADD0y AAD Q AAE { AAA LLLF<KBFB I(E0E8DP 8A0A(B BBBA 01gHS$GtBFB B(A0A8D@R 8A0A(B BBBA HX]MBBB A(D0D@Q 0C(A BBBF D0F(A BBB\P]@\\][BDA F0y  FABA D CAB@x]BBE A(C0DPq0A(A BBB ]]H4]]BEA D(D@ (D ABBA D(H DBB]D^X(]^<ADD i AAA 0]^gAAD@v CAH ZCA]^ AC AV ,^^AF DEEK B ,D^PbAF BGEKY G ,t^f AK FM E (^rAC BH J ,^tAC BEH E ,_uZAC BHq A  H 0_z$D_zAC E_ H (l_{!AC Ga D $_|\AC E` G k $_|\AC E` G k ,_,}pAC BEHj C o ,`l}pAC BEHj C o ,H`}pAC BEHj C o ,x`}pAC BEHj C o (`,~fAC BHe E m (`p~fAC BHe E m (a~fAC BHe E m (,a~fAC BHe E m (Xa<fAC BHe E m (afAC BHe E m ,aAC BEEEIb H ,aDAC BEEEIe E ,bĀAC BEEFt F ,@bTAG BIH G r ,pbAG BIH G r $bԂRAC EW H i $b RAC EW H i 0bDAC KT E  I ,$cpAC BEHj C o $Tc0RAC EW H i $|chRAC EW H i ,cAC BEHV G o (cAC BHe E m ,dAC BEHV G o ,0dAC BEHj C o (`dfAC BHe E m dȆhd$h d+AC R J J  d+AC R J J ,dAC FEDI D (,eAC DHd D ,Xe AC IV E z F ,eAC BELx A r ,e쌔AJ I` D E C (e̍wAC Kh I $f ~AC E` G M ,pAC BEHj C o ,l>pAC BEHj C o ,>pAC BEHj C o ,>pAC BEHj C o (H,?fAC BHe E m (tp?fAC BHe E m ,?pAC BEHj C o ,Т?pAC BEHj C o ,4@AC BEEEHD G ,0@AC BEEEHD G ,`@pAC BEHj C o ,4ApAC BEHj C o (tAfAC BHe E m AI$AAC Iw D $(BAC Iw D (PdCAC K J (|8DAC K J ( EAC M H (ԤEAC M H (F AC M G (,G AC M G ,XH}AC BEEEHt G ,H}AC BEEEHt G , D w 0LAC BEEF^ D z 0$AC BGEDJ H z 4AC BEEFl F C ,8nAC BEEF4 F ,xnAC BEEF4 F ,LNAC BEGD E ,|ؼdAC BEGD E 4AC BEEFK G Z ,NAC BGED E 4ØAC BEEF& D Z 4L8ƘAC BEGDI A c 4ȘAC DEED; G [ ,X˘uAC BEGD A ,͘uAC BEGD A ,ϘAC DEEK D ,LјNAC BGED I 0|ӘDAC HK K s ,֘'AC BEGD I ,ؘeAC BEGD G 0 DژUAC BGK H L ,D pܘAC FEK F ,t @ޘAC FEK F , 'AC BEGD I , >AC BEGD E ,  #AC DEED B ,4  #AC DEED B 0d  JAC BEEEK  E ,  D w ,(iAC DEED* H 0(AC BEEF^ D z 0(}AC BEEEK3 E 0)!AC BGEDJ H z 0L)h$AC BEEF^ D z 4)&AC BEEFl F C ,))AC HK D ,),+AC HK D 4*,AC BEEFK G Z ,P*d/NAC BGED E ,*1AC DEEK D ,*T3NAC BGED I 0*t5DAC HK K s ,+7NAC BEGD E ,D+9uAC BEGD A ,t+AC BEEF& D Z 4+@AC BEEF E R 4,CAC BEGDI A c 4L,EAC BEEF3 G Z 4, HAC DEED; G [ 0,J AC BGK C z 0,L AC BGK C z ,$-`N'AC BEGD I ,T-`PeAC BEGD G 0-RUAC BGK H L ,-TAC DK K u ,-VAC FEK F ,.\XAC FEK F ,H.,ZAC FEK F ,x.[AC FEK F 0.] AC BGK C z ,._AC DEEK F , /aAC DEEK F ,AC BEGD E ,0(w7AC BEGD C ,,18y7AC BEGD C ,\1H{7AC BEGD C ,1X}7AC BEGD C ,1h7AC BEGD C ,1x7AC BEGD C ,2AC DEEK F 0L2x AC BGK C z 02T AC BGK C z 020AC BGK I z ,2uAC BEGD A 03L AC BGK C z 0L3( AC BGK C z ,3AC DEEK F ,3䒚AC DEEK F ,3ĔAC BEGD/ K 444AC BEGD@ J Z ,H4'AC BEH E ,x4NAC BEGD E ,4ܝAC FEK F ,4AC DEEK D ,5|AC DEEK D ,85LAC DEEK D ,h5AC FEK F ,5즚7AC DEED C 05?AC BEEEK G 05NAC BEEEK H ,06$AC FEK G ,`6䮚AC Nk C T ,6TAC Nk C T 06ı?AC BEEEK G ,6г#AC DEED B ,$7еAC DEEK D ,T7AC HK D ,7@AC HK D ,7ບAC FEK D ,7AC HK D ,8@AC HK D ,D8࿚AC FEK D ,t8AC DEEK D 08pÚAC BGK I z ,8<ŚAC DEEK F ,9,ǚAC FEK F ,89ȚAC DEEK F ,h9ʚAC HK D 09̚?AC BEEEK G ,9ΚAC DEEK F 09К?AC BEEEK G ,0:ҚAC HK D 0`:4ԚWAC DEM B v ,:`֚AC DEEK F 0:Pؚ?AC BEEEK G ,:\ښAC DEEK F ,(;LܚAC DEEK D ,X;ޚAC DEEK D ,;ߚAC DEEK D ,;AC DEEK D ; @;rBDF G0c  AABF J  AABB @<tqT<qh<q|<q<q<q<qH<8eBBB B(G0A8GP 8D0A(B BBBF H=\BGB B(A0A8G 8A0A(B BBBH d= x= = ==H= wBBB B(A0A8Dpt 8A0A(B BBBD >@(>LWAK IAH>3O Y`>DN\x> BPB B(A0A8D` 8A0A(B BBBK \8C0A(B BBB>lDV>tDV?|DV ?DV8?L? `?t? ?|?x ?t?p ?l?xy@@`y(@@<@HBNB D(A0J 0D(A BBBF @AL8@BEK I(G~ (A ABBJ @,DT@4DO4A<{ALJ c AAD g CAE 8@ABOI _ ABD A ABD 4|AAED w CAK ICA<A2BLA D0  DABF l JABLABBB B(A0A8G 8C0A(B BBBH TDBBBB A(A0G@ 0C(A BBBH d0F(C BBBBYD f F ^B0BBAA G0`  CABG C`$C\IADF yCA@CDRXCDN<pC$AAG@ FAH _ CAE \FACDN8CBED D(GW (A ABBE @D0BDE A(D0D 0A(A BBBB HD\DAV0xDBJD G0  AABH HDhYBOB B(D0D8G! 8A0A(B BBBE DD| BDE A(D0G 0D(A BBBK X@EBOB D(A0J 0C(A BBBA Q 0F(A BBBB <EhBIC L  AABG O FAB4EHeBKD GA  AABA F@Gx,F^GV0HFBIF Gm AABL|FHBGJ E(D0A8G~ 8D0A(B BBBA 0FBFI G  AABD GAVG0G(DGRAID k AAA pG6]KG6]KG$dG0aIM K(G0Y (A BBBG d (D BBBJ A(C BBBFLHLBE L(A0A8G= 8D0A(B BBBF @lHBBB D(D0G 0C(A BBBK (HJADD q AAD 0HOAAD c GAG TAAIDN(I#PL@ITINDIlI0DIlI0BBE L(K0A8GPLQA\JVAz 8A0A(B BBBI I)Dd J7Dh D F,J=Ac D HJGAf I V$hJAT [ C E K,JtBKD O AEJ (JtAKN K DAF (J(lAKM C DAG LKlBIK A(Dp (D ABBE L (D ABBC <hKXBED K(N0I8H@X(A EBBLKnBEE E(D0K8N@IHHP_8D0A(D BBBHK BNG B(A0A8Gw 8A0A(B BBBE DL D[L\L#LBB B(K0A8G\ 8A0A(B BBBE HL BBB B(A0A8DP 8A0A(B BBBH `L "BBB B(A0A8DP 8A0A(B BBBF  8A0A(B BBBJ <\MH$,RDF  CBB Q AEI KM8&TM4&BBE A(C0D` 0A(A BBBG T0F(A BBBHN&BBE E(D0A8Gp 8D0A(B BBBD 4TNp(BCA R CBC YCBHN(}BBE F(D0D8IP 8D0A(B BBBG N)Dj B $N*ACGp{AAO8+ (0O4+ABDD l ABA H\OX+BEB B(D0D8Gp 8D0A(B BBBA LO,BBE E(D0D8G$ 8D0A(B BBBB Ol. Ph. Pd.4P`.HP\.\PX.HpPT.iBBF E(E0C8G` 8D0A(B BBBE HPx/BBB E(E0D8IP 8D0A(B BBBG (Q<1]KDG _AA4Qp16RQLQ1,DddQ1AQQ1AQQ1DNQ1(Q1AALs CAK Q2%D ` R2 R24R2DQ,LR2ICA MP{ AAB0|R(3hBDC D0U  AABJ (Rd3`ADD0U AAH (R3cADD0U AAH S3S30S3DYHS3@\S3BBB A(A0D@F 0C(A BBBD <S$4BNA D0O  AABH Z AABSt47AD pAT47AD pA T4!D\8T4!D\PT4dT4xT4T4A[T4DN0T4WBDC D0x  AABG (T5OADD0x AAE ( U45WADD0{ AAJ 0LUh5BDD D@  CABI U$6DNU,6DNU46DNU<6U86&DaUP6VL6VH6EE{8V|6AQ(TV6>BCA pAB(V6BAE AB8V(7BED D(D0 (A ABBA 0V7hADG0v AAD VDAW8;A] B VBGE K(D0B (D BBBG (Z>ACG l DAL 4[>FKDG T CAB JCABT[?h[>L|[?lBJD F(G0 (C ABBD X (A ABBB L[(@VBFB E(E0F8J@ 8A0A(B BBBB L\8BBHB F(I0H8Ja@ 8A0A(B BBBI Ll\F8BQA D(G@v (A ABBE b (F ABBA 4\GOBDD r FBD ACB4\GOBDD q FBE ACB,]G/XVH]G0YVd]HtAN A 8]`HBDK A(I0 (D ABBF ]H]H]H]H^H$^H8^H(L^H2FDG SDAC x^HAG i EJ ^HI^DI(D^(^\IDBLG iCB(^IGBDA r ABD _If^^TOF$D_I.ADG ZDAl_I8_IGBEA E(Np (A ABBB _K8_K$BBD A(G (D ABBK ( `KSFAG rDAKH8`,LBBB B(D0A8D@_ 8D0A(B BBBC `N +g  +g  +g  +m  `[x >} */:} 1)** %aYL M}=fz=fz=fz=fz=fz=fz K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r K7^r A Dv Dv Dv Dv C C C WAfz W@fz WAfz C C;D      f   EPIFIJ 8&! ! &bb&ik<2E%<2EP P \QQQ P  PP?MMMMNMM"M#$M&M'(M+M,-M0M1M2N5M66M9Q=N>?NBNCDNFNHRIPM{?mmm m  mmmm9mmmll!l"$m'm()m,m--m0m3.4l7l89l;l<=l?l@AkBCkFkGHmJkKLmNkOPkQ5RkUmUVlYkY\j_j`ajcjdekhlkkkkkkk<2E&ik+Vj~.iW             D_s%Vj~ bj~             Pau-#}-#}-"{    }-"{    }I<             }-#}-#}-"{    }-#}-"{      }5({}-"{}){}){}){}9.{        }  ش־ξĴ "%'''.1222̴339<>>?@DEEEEFIKKKLOQTVY[[\_`Ҫbbêcfhhhilnnortttuxzzz{~وЏė˝֧Ʃ˩ĴЩթکߩٯܿ! YL M}mc }mb   }I?  }]Q  }u }t        }QD   }QD  }UK}QE  }QE  }QE  }QE }QD    }QE  }MA}=4 MA}MA}MA}MA }MEa5 5q55595#%5666  M8 8  8 9:A99A:99A98A::A9:A9:  A:!9""A9$9$$A:%:%&A9':((A:)9**A9+9,,A:-:..A9/:00A8182@38448568788 "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T "m  T <2E%E ?RA   Y?RA   YERA   ERA   ?RA   Y?RA   Y?RA   YERA   ERA   ?RA   Y?RA   Y?RA   YERA   ERA   ?RA   Y<2E%t t t t t t t t t t t t t t t     Pp, "4C)/B `[x 6S+"!%a 8w 9#f9q9 99#   Q    " ; C;   C__p5h   S   ,7 7+%7'"L |  [   -! * L.. 'PoNn  z=%""""]$$ $$"$$%%%  $  %  %  $  $  $  $ _ "  " !""!!!!#$$$#$$"""#####"""#!!!!!!"!$!!!!###### # # A~Un,"&A&A&bb@P  &ik&bbi%EA9A AAeAAmA#A')A00>A27AxS L      ) F    &  );VpN# )Cq4+ : U    8g61       -,%'>;>,=<<===,===;;%<<<<<%<<<<<%<<<<>< >!=!=!=!="0="%=%%>%>%>&,>'>()>(>)>:=:=:=;=l??dsTt6QaE (  K   l$:r**)))))))))*D)(0( ) ) * ) *)*((*r*)))()))"(")")#)#($)$)'(() 8m##$$###$####i$$$# $$$$$$$$$$####h#$!$"$"$&,G{bS4?~W""!'"!'!#[f?##tF3,U,%       loooHono-nono-nooooo p p!p"o#o'o)Fo*o+o+-n-o0n1o1-n3o;n<o<n=o=o>oCeoDoDoDoEnG0oGnHnHnInInJ oVoVoWoof59 X9:9/999999999+9+9,9-9h ߻    +     2h߽,׽Ͻ,ǽ "(+,,-H.ϻ.ǻ////00001111222׻23:::;>>Ͼ>Ǿ????@AAABCDDEEFKLMMPPPQQQRRܿR̿SĿSԿSܿSTTTܿTUUUܿUVϺVǺVܿYZZZ'\ddde)ܿf3gggܾh׾hhhi׾iiij׾jjjk׾kkkl׾rsst׾{||}}}}}~~~łܿʉ׾ ׾ߺ׺ܿӡǣܿæ̭ܿϼܿǼб׼ܿ߼չ ,),,!C0+8Vp7 "  |:&&&I'& & & &&&&'/&&&i&&i& &->|*+++++++++++ + *  * *  *  ,**3*,*++7*+,,,,,,,,,,,,,,,+**** >) ) ())"#(()0/"+  1&ik+Vj~.iW               Ԋő ċ  Ċ """"##$$%&ۉ*++,-/؋/ԑ////00000Ӊ133ӏ38ӈ:;;ɋ;;;ԎABCDEԌEÏGHHHHIJѐKKKŌLˏLMMŌMˏNOِPR’RRRۈRRRSSSĈSSS̊UVWXXXĉXYYÍYYǒYY[\\\]]^_ڍ`bbbcҍdeeeghhijjkl̎mm݋mnqsssstĎxzٌ}}}}~~~Ō~ˏʅۉِÇȇѐׇ͇҇܇ҍڍ̎ĎΛġɡ̤ԨϫլǮƱַ޵õݹ//     ! /   ,(!, "4C)/B `[x3P""'^+  %a 1w -      7 - C4   Cgg)n}Ih   S   ,/ /%!/'0V  h! * L.. 'PoNn                  LwZ91\n," &AX &AX&bb@P  &ik&bb^%?595+5 5 55m55%)5//5l+Pw$'Qx+3)kN L )F&qP6 6 : U    0wYv=,     ' ;  ; ; ; < ,<;;;;%;;:;;%<<<<<%<<;<<<<<<:<0<%====,= =!);!=":-<-=-=/<0=0=1=2=3=3=3,=7<8;8;oF?d s     B     T6QaE %  Z   . 0~ 8m&&'&''((''''i'&(& ' ( ' &&'&&'&'c'&'&& )' &!(!&"'"'#'#?&$&$(%&%'&'$:r233222223232K2201 3 3 3 3 1 2 3 231122m22112222")1#1#1$3%2%1&1&1'1(2,1,1,1-1.3/1028,Gp^Wj?rI   ' !'!nf?##xF ,  ,   X  66C'; U o        e FUe     +2++ &+,0)112466778889999::::;;;;<<<<<DDDEHHHIIIIJKLLLMNcOOPPPPQQQQQRRRRRSSSVVVVWXXXXXYZ^)_ __``aaacc'egiiijkkkkllllmmmmnnnnooooovwwwԊŒēߟ Ŭݳ޴ } ,&/3!k0!!< W f   "  {B###I## i# ###########}##Y,~))),,,,+++++ + + + + + + + + + + + * * * * * * * * ****))),))3),)*)*)*)*) LA6* * +.*!*$+**>*,+  1 n!&ik+Vj~.iW               ܋   ҈Ñ ""ƌ""##ƌ$$%ߐ&*+ڌ+,-////Ў//0Ê000013338:;;;;;ABCÎDEEGHՌHяHHI̋JKˎKKLLˎMMMNڇPPPPPPωQАQQэQQȑQRRSWXYԋZ[ߎ[[[Ҋ[[\\\]_ב__`ב``abddeʈfgghhikkߌkllߌmnppppqܑsssstxމy||ƌ}}~ˎ~~~בӀߌʁ҅؆Î݆ߐڇƇˇЇܑՇҹƗژʞĬƷε͹#/    !  , "4C)/B/B `[x3P 76O 3'R9%aYL M} <!G E   qh   S   J   ! X30 00 0!V0"0#0%0(N0)0)0.0/K0*3213 2 2 2 2322213111131112U32222"13"2"2#1$2'3/1J/Tv   L.._ 6    M@b                            BvZ91cu; *Ei2&bb@P  &ik&bb'''&'''3P  *      '8H  + $&ik+Vj~JJGbX)U>.iW                  njχ̋Ԇ ""ۋ""##ۋ$$%ډ&*++,-//ƈ////000Ď0ք013338:;;;;;ABCDێEEGHHHHI̍JKÊKKLӎOՈPQċSʇSSDŽSSSST֌TׇTTTT̆VWXYYYߊYڅZZZˉZZZ\]]Њ]҅^^Њ_҅`ԍacccȊd݈efffgʅii܍jkk܍kmnnnopqqqrsvĆxz{ۋ{{||Њ|҅}}܍~ց݈ʅăɃՈ΃ډӃ؃݃ԍ˒ޓֱݖԩŘݙݝƞʩšгϩͬͮگӴ!b{Peefeeee+eXe"eIeIePeQdUeVeXe\e]e ~%XpXX"X$&X8X9?XBFXIIXMXNOXUX5/! *  4+! ) ) ) ) ]/B/B/B `[x%a- :` &o E(";sS"   *8(###### #"#" #6$Tv   LhZ                 v%^1&bb@P  &ik#JCFBf           KoW***)* ) *******) *''*)*A<2E/s,J(E+q**j+E&+++%8++&+&+ 3 *  *  *  * g**)L***)H)))))*}**R**!*! *!!,)""-)#E#&*$2%-)%&)&*&*&*''()(()()((-)g=h          q      1v!,K&ik+Vj~.iW               ć   ӎ ""։"Ҍ"##։$Ҍ$%&ˆ*++,-/Ȉ/Ď////0Ӈ0000Æ13щ3Ì39Å:;;;;;ċABCӋDEĉEGHHHHH܈JKۋKKLLۋMMMNOɍPRRRR˅RR߆RSSSS؎SSUVWXXXXYYYYYY[\\\]]^_ʊ`abbڅcŠddҊeefhhiijjkmm͈mэnopppІqquwɉyz։zҌz{ۋ{{{|||}}~ˆӋɍ„DŽ̄ŠфʊքۄܨˤƦԬϬѭڮɯεӵ30! /B/B/B/B7y}  49D} `[x3P "v 6r7u%aYL M}7T7T-        7Th   S   Z ۗPӗ**+ 667<×==CCD SS˗Sqqq!! *Tv   L..4@O=(')' ($$$%%$(' '  &  '  '  (  $  %  %  %  %  %  %  %  '  (('((''('('('V%%(''('(%%%'&&&&&&&&&&&&&&&%$$$$$ $  $ $!$!$!"%""$"(#$(#'FW/4Je<"&bb@P  &ik<2E<2E&bb7  E  #;  Y % 6WX$+`Q4C        sWMCh   F 4**Ev&&&Fa.a6       Tf-K]%S"Z7qU+^I / >Ra  o         4cF` v 7 *   E ,      % % % %+O%>m  k -2 Д ؗ .0-15PPPQQRRSSSTTUUVVЗVȗV___```adiiЖiȖjjjkllؖllmnnnoooppqqqrrrsssttuuuuvz{{{Е{ȕ|ЃރĆˈؕՊؔŎʐˑȔW0#=ft S s       b K ,>#M 8  5 /W<g<g ,,z ,+,,,=,+,,,N,,,,=,,, ,!,!,",*,*X,+,Z~$.    .h2hhh hhg g'g(h/^g4h4gg7^h8g8BhDhEhHhIgOhTgVZh\^h_g`gahcgchd4gdgegfggg3D(  194 0]~~~, ,~  !)~""#%%%&&&''()+--../0)111݀889s;;<=)~>>~>~BhCIJJN~NNO~VV~WW~X5Z)~[[~[~`acccddfՀgi~i8~j;k,l)̀mmm8o݀o݀oŀp݀ppq݀q,s,t~u~u}u~uvv~w(}x+y~y~z}z~zz{~{~|~|}|~|}}}}~O O 1jpN % %Z% %%%% %##%$%$$%       e///./..///!P/"/#/'/'/'/+.+/+.,/[qw**********!*%*&*&`*'*'*'*'*mj>### " ####"# " # #"#"#"#"#C&ik+Vj~.iW               ܋   ҈Ñ ""ƌ""##ƌ$$%ߐ&*+ڌ+,-////Ў//0Ê000013338:;;;;;ABCÎDEEGHՌHяHHI̋LNˎNNNOˎOOPQڇRSTTTUUUωUАUUэVVȑVVWXYԋ[[ߎ[[[Ҋ[\\\\]_ב__`ב``acddeʈfgghhikkߌkllߌmnppppqܑsssstxމy||ƌ}}~ˎ~~~בӀߌʁ҅؆Î݆ߐڇƇˇЇܑՇ¹Ɨ٘ɞݭ!bcB               O i% / /(/ [  !5  4/B/B/B/B/B/B/B/B/B/B/B7y}  49D} `[xk " " %a-        5       D34       R3h   S"   #] W* L.:@       yO 'PoNn  4                       P6gW1 &AX:G        ) yO&bb@P  &ik<2E<2E&bbMCh   F 4&B RXW            .  f,>=> ,> ,> >>>=== ,= !>!#>$%>&*>+1>47>7 s       b K ,C3 2=6 I JJ0J(JJJ0J(J $I$/I/I0I36I7I7I8I8I9J:I; GJGHIHZc      =h2hhh hhg g'g(h/^g4h4gg7^h8g8BhDhEhHhIgOhTgVZh\^h_g`gahcgchd4gdgegfggg3&ik+Vj~.iW               ć   ӎ ""։"Ҍ"##։$Ҍ$%&ˆ*++,-/Ȉ/Ď////0Ӈ0000Æ13щ3Ì39Å:;;;;;ċABCӋDEĉEGHHHHH܈JKۋKKLLۋMMMNOɍPRRRR˅RR߆RSSSS؎SSUVWXXXXYYYYYY[\\\]]^_ʊ`abbڅcŠddҊeefhhiijjkmm͈mэnopppІqquwɉyz։zҌz{ۋ{{{|||}}~ˆӋɍ„DŽ̄ŠфʊքۄܨˤƦԬϬѭڮɯεӵ)/ A   !   $j%$4  4 Oaf~CF %a%4m}&bb@P  &ikWYd)+****+++/* ,  ,  +  +  +  +  *  *  ++**++**),++*++**** eb8Db+.!F}BHB%u   \s      \Q2f0)-(\k,` 42]-.bWF-(\V,`%+')Db?!CarG@]C'!Car\+Y ~    -  8     ~`+Y~;'Dw}+Y ~   " X        '    w Z+Y ~a          -!Ik B7b?&2(-@  ' "  G 6:I*G-IIGIII I I I .G I -G I G I IGIHGH-GFGFGFF:GFGFGFGGGGGG-GGGGGK-GKK4GKGK-GKKGIJ :G!J!-G"J"J#G#K#J$;G$J%4G&G&G&J'{G(J(J)G)J*3G+J+G+J+J,I,J,I,I.G.I.J.J.G/G/G1RG28I2H3I3H3H4I4H4H5I5H68I7H7uI9G9I9H:H:I;H;8I<H<H=I=H=G>8I?G?I?IaWX    -<2E->*aWW    -<2E-> aW[P97999] `[x5  "L } */:}  )-??R</2V67D "M0@_#57  <2E/f0 >l `[x#}n:;%<2E J<2E> O O*O+9N.N2/N5NHOMN0f+ `[x;          %'<2E Y;J `[xM/...// /./#/$.&.(.).++.,.-.-.<2E J L  `[xtD$!N     S I  #  `[x:=` >y  <\5qj}              Tqy              }&bb  m_s'"2:  a E2` 8_8858668-6! ! ;5;8(Os  """"""""""#""%$$"$$$"$$$"$$$ " $ $ $ " # & & " & & & " & & &"&&&"&&&"&%&"%%%"%%%"%%%"%%%"%%$"$##"###"###"###"##"""#"|"''""TfT  -      -          } &bb@P  &ik&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ų6"! lq*(*(  AEBB)B* :B;ABA A#BNLMMLL M L O O L L LMNMMMMMNLLMLLLLLL M M!M#K$K&M'M'P(P(P)O)P*O+P+L,O,P,O-O.O.O/O0M0N1P1O1O2O3P3O4P4P4P5P6O6O7P8P8P9P9N9N;N<N=N=N=N>N>N>N?N?N?N? NJNJNJNKNKNKNKNKNKNKNKNKNT+[m z!!!! ! !!""!!""!!!!!!!!! ! !!!t %a E   &bb@P  &ik&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ų6"! ! = R   <\5q !   !!                    Q|q  -             }&bb@P  &ikv "&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ų-! l =%1i}u V M<\5q""##""!!!###"## # " # # # # #                    !!!!!!!!!!!!!"""#"#""""""Q|q  -             ~&bb@P  &ikv "&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ų-! [-6! !1<\4oj                 T#8\r              vdz1&bb@P  &ik&bb/^ &&^&C#&&$d&&.1^ +I++%++++"nX!&&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ų-:! CFNdosee#e&9e9ReSVeWXeXYe_{aeddeASq%   $Tv   ]v57       LFMLLNMLLMLLMLKNLL L K Q M L L L L NOLMQOLOOOLONNLNNNLOKOLOKLLMMKLLLKLMLM)LNNLNNNMP P P!P"P#P#O'L("P*L*P+O+L+O,O,O-P-N.N.N/P0M1M1L1N1M2P2M3P4Q4Q5P5P5P5P6P6P6Q6Q7P7Q8Q8Q9P9Q9O9O<MCPCMDPDKDKDMGPGMGPGPJxPKLKPI>=!!!!!! !   /+v =Vj~4 ! ' =4 ! 'CFp566 5$(5)o+5-.5/05125345%aYL M} =5        w! ! * PTv  +,,,,,,,,,,-,-----------,,,, 0 0 , 0 0 0 0 0 0000000//,11111100111111--.,...,...,...,...,..-,///,/// , / .!/!,!/"/"/",#/#/#/$,$-$,$,%,',(,),j|-  T   ~meD             wF&bb&ikv "&ik+Vj~.iW             D_s%Vj~ bj~             Pau-#}-"{}5)}-#}-"{      }5({}-"{    }-"{    }-#}-#}-#}-"{    }){}){}){}9.{        }A4{     }A5      }yzyyyyz  rqwxvv}ywywy"v#v#z$w%x%w&}'{+~-~0r2q2q2q5w6{7{7z8~:~:|;|>~?~@l@lA~E~KzLwOwRwTwWrZq\~`zhzhhxiyiyi{i~k~kk~k}krklkykwkxkzk{kwkvk~k~kykzkkzk~kvlwlwl}lrqsuxyy|z|{|}~܀! I? MYL M}YL M}mc }mb   }I?  }u }]Q  }t        }QD   }QD  }UK  }QE  }QE    }QE    }QE    }QD    }QE  }=4 =4 MA}MA}30)!0 'Ga   Y5z     5e]K%?U)-wU/U5UABUDDUHUIUTUTTUUU! $i4M  tj7       ' GHH H I H IH,G0^H1G2G2H2H2H3H3G3G3G4G4G4G4H5H5H5H5H6H6I6I6H7H7H7H8G?UGFHFGFGFHFGFGFHFIGHGGGHGHGGB\4oe[=###$###$#d$#$##$##%JuEWI? M&bb&ik&ik+Vj~.iW             D_sVj~%Vj~ bj~             Pau-"{    }-"{    }-#}-"{}5)}-#}-#}-"{    }5({}-"{      }-#}-#}){}){}){}TTZZUO\ O `UVS[VUVU`a_`!Q!Q"S#_#`$\%`&\*`+\.U/U0]0\1]1]2]3]3U4]5^5^6a:]@UA^A\A^A\A^B\B\C`K\K`L[LUL`L\M\N`N]N]NSNSN`NQNUNVNUNZNTNN_N`N]N`NaO^OUOVO]OUOOOOPZ[[\]]]___`aaa! YLU}YL M}YL M}YL M}mc }mb   }I?  }u }u }]Q  }QE  }QE  }UK  }QE  }QE    }QE    }QE    }QE  }=4 MA}MA }MA}32*!2 *WWI? M&bb&ik&ik+Vj~.iW             D_sVj~%Vj~ bj~             Pau-#}-#}5({}-"{      }5)}-#}-"{    }-"{    }-"{    }-#}-#}-"{}){}){}){}UU[[UO] O aUWS\WUWU`b``!Q"Q#S#`$`$]%`&]*a+]/U/U0^0]1]2]3^3^4U4]5_5_6a:]@UA]A]A_B]B`B]B]DaK]LaL\LUL`M]M]NaN^N]NSNSN`NQNUOWOUO[OUOO`O`O]O`OaO_OUOWO^OUOOOOQ[[\\^^^__`abab! YLU}YL M}YL M}YL M}mc }mb   }I?  }u }u }]Q  }QE  }QE  }UK  }QE  }QE    }QE    }QE    }QE  }=4 MA}MA }MA}32*!2 *CFN     !7&   e1   ! ! *%1i}W P$Tv   =zj|  -    T         }aX/?O_r  .GWI? M&bb&ik&ik+Vj~.iW             D_sVj~%Vj~ bj~             Pau-"{}-"{    }-#}-#}5)}5({}-#}-"{      }-#}-#}-"{    }-"{    }){}){}){}TTYZTOZ O ^UVSZVTVT`_^`!Q!Q"S#`#`$[%`&Z)^+Z.U/U0\0Z1[1[2\3\3T4[5]5]6^:[@TA]AZA]AZB]B[BZC^KZK^LZLTL`LZMZN^N\N[NSNSN`NQNUNVNTNZNTNN^N`O[O`O^O]OTOVO\OUOOOOPYZZ^[\\^]^__``9.{        }! YLU}YL M}YL M}mc }mb   }I?  }t        }]Q  }u }QD   }QD  }UK  }QE  }QE    }QE    }QE    }QD    }=4 MA}=4 MA}MA}32*!2 *s@l6 % @ 6 %  %aUE UE 5       * P$Tv  s@s@T2a                   M~_q|- P       Y~_q|- P       Y&bb@P  &ik&ik=2L  >a=2L  P&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ųl! l! 6% 4% % [ UE :l(  ' !!,%Q~_q |E    P       Y~_q |E    P       YX                            e &ikMBLAZ   g%  %  %a[5       * P$Tv  I_x                _q | -    P         j&bb@P  &ik&ikI>S  ;b~&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ųl! 6% 4% % UE [ 4l(  '  !!,%Q~_q |E    P       Y~_q |E    P       YX                            e &ikMBLAZ   6   %aYE5       * P$Tv  s@_q | -    P         ja                 M&bb@P  &ik&ik=2N  >T&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ųl!     %a[5       * P$Tv  I_xa      n          i_q | -    P         j&bb@P  &ik&ikI>S  ;b~&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ųl! %% [    * L$Tv  I_x_q | -    7          u     &ikQIS  "% %  %  %[    * L$Tv  I_xA             i_q | -    P         j&ikQIS  6%  %  [    A L$Tv  I_x_q | -    7          ua                    &ikQIS  Fl' ( '!!!, 6  %aYE   * P$Tv  s@                _q | -    P         j&bb@P  &ik&ik=2N  >T&ikiW             bj~               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ųs!  !'!f$$$%}&bb@P  &ik&ikbj~             <2EBiW               ܣȣףɓ ē  ׯ§ɴشذɰ !###٧#ԧ$$$٧$ԧ&'+,ͥ,-./0000ѝ00111ʳ12334ٳ9DZ:ĉ<<<<̱<BCDEFFG҈I͈II݃IIJLʧLуLŃMMʧNуNŃNOPTUVWəWWXXXXXXXZ[ϧ[[\ϧ\\]_`aڈaѓbcddٓdegghhiijllڙlΙmnooopqtãvyyy٧yԧzʧzуzŃz{ϧ{||}}ҁȂ͂҂ׂ܂ɓ҈§ĉՆچԊύ̒Ԡ߯ԫ߲ųJ'' ''!'"'#'$'$'''''''H~     PFa  6(%((( \pu*52555 \pu(%((( \pu+63666 \puW    -'  P   )> \pu)> \pu)>   \pu)> \pu)> \pu)>   \pu)> \pu)> \pu)>       \pu)>      \pu)>      \pu)>   \pu)>      \pu)>!!!!! \pu)>   \pu)>      \pu)> \pu)>       \pu)>.*.+... \pu)>)%)&))) \pu)>-)-*--- \pu)> \pu)>)%)&))) \pu)>2-2/222 \pu)>,(,),,, \pu)>-)-*--- \pu)> \pu)>($(%((( \pu)>.*.+... \pu)>%!%"%%% \pu)>""""" \pu)> \pu)> \puC< 5555 5 5 5 5555555!5"5#5$5%5'5,5-5.5/50515151525253535454545454545455m<2E -  Ot         `[xg  (   ;7    ->-#:]=  ,1m-#8 ,1t oABA^AABA A2ABA#B&A'A((A)B)A+A5RA6B7A7A9A:B<A<A=AAAAAABAAAAQ%1A4B8A9A::B;A;>A>?B?AAA#FrUrXra&!JIII IIJ$III I I%I)I)I*I,I.I.I/mI3IHIHIII  6 6)   k======= = M======>==>2>>#<%=%=(=*=,+=-=.=.=.=6>6=8=;>;><="Vs];y;;;;;; ; ; ;;;;<;;;;!;#;%;(;*;*;-;5;%?V+++&+ &FK B ->X%JO455-5556666 5X56665'6 5 5!5"6$ 53555  %@"g***'* &FK$o-B$%$% $%$-$$%#%%_*D !! ! !  ! !!!!!!!- O-> 03  \Q[w    8 -]~-~''' ' ' '&'&&&'&&'!'"'$'$'&'YLLKKL/KK K L L L L K KLKLKK L RK!K&L) K5L5K<KAKAKCKEKGKHKKLKK?%ee'1YeYeZcecde&ŋƁ΁͋# Fu w+P   :Bu |<5  8 4u(*&d|@@#,c A.)m{  E(Zx./q@    ""./q    &/./qYD90wD  F'fF5+n4.0 411$411 422 423 433 MT                     "??  ?? ?? }  ->*PT       l!,r  c * I+PT         ->->'P''%%%%V%&_%% % % % r% % % %%%%%%%%% % % $#$C@DADBC0#       #!!!!!!!! ! ! ! !!!!!"!!!!!!          ("78B8>B>@BA (j][!""! ! ! !!"!"!"""-N(zT) z*R      Pl777$77777777777!-7#7R T$$$$##$$#$$# bru n            k               I&E'0"3 F  = E0"/`217-122 1 22211%1(I2)1*27VVVV VVVVVVVVUUU#U$U%U'0U'U(U)U)U*U2V2V3U6/V6V7V8V8V9V@@#VCVC!VDUGUG#UH!UIUKUMUOUPVQVRV("9H:?H?EHE(g~  l l l]-eBy-V:, 5, ,,,,!,!,",$,$,$,+V,UA AAAAA A$A''A(A*A*A1A2,A3A4A4A7A8A99 l b )  ())))))))())) ) ) !)!")")")#)#)$)$*$)%(%)&(&)')*=I IIIII5I= I"V!II I IHII"I#I#IAIAIAI/%-D-g--*- &FK  y!1"c#EqZ^a_   '}#@Za[     *4eX%Y$$$)$$$Z%b%%%%%% % $%$$$$$$4$%%%%$)h[--,+,,c-]-X----,, + + ,,.+++,-,,3+++,,,,,,,-----++!+!+"+#+#,%++,++x.sJ    9;*V   `    ;  m*r  O ml    l'1+!#+#(+((ha%@"g***'* &FK ["{}E q.3. C   )  ->K,2/+BfA  #   %%%% %%%%%%&%"%#%$%$/%$%$%%%;#3 &  4J 'S3k;>>>#J=)=4>5E>6z=7^=:>:>;'>;>;'><=<=<=<><><><==>=>===>===>=>(  ;.  o ;^  P * *@  -/!!! !!!!4 dG bF      Pa   47@## #B###j# ###2#N##!#!#"#"#"#"####PzG'  ~4`%%%&&&%%"%"%#&#&#vTID$i p 'WhW,W, ,&,'U,(,),*,*Z,+,+,+3,+,,,,,,,,,e[,w   l0]] ] ]]]]]%]6]7]8]8]8]9]=]>^?]?]C]H(]I]N(]Q]T]W]\]+ ~~~~~ ~/~01~28~9~=T~?K~NN~P~R~TV~WW~XY~]^__`ـaрaa~abb%~bcɀcc~c~d~d~dde}filopp~p~tv~vyyy}}~}~}~}}~H,v((( ( ()((((I->"5$  5 W = `=1 J   P=,  |$V> > >>>>W>> '>">%'>(>/I>1>7>:>:><8>>>{"4 444444544!4!4!4"4#4&4(40424 R q .      319+  u]   > l q ~D    - ->)111N '1 H,!B00*0 !&`Bt i  $   %u}!v}X~:R%%$%o% m$ $%#$%%%$m$w%%%%$$%%%%"$#%$$$%$$$%!oggggfgggff f f g$g+f/f/g/f6f7f:/f<f>fBfJgKeNfPfRfTMfWeXe]f^fcfc`fdgefefeeQ% /H44I8H8H>I?H?BHBIBlDHDA'$8\z__zaazpAF=,,,,,, , , - ,-,-,-,-,-,-,-,-,- ,!-",$-%,&-',(-),*-+, 38i-YH476-7i776 6766666"7%6+7/6375766( ',(    -7]       ~ )d;\a'"5^u /5-;X W XXWWXXX"W&X*W.X3W6X6X78X8W9X>WV" 0W}6  j)^Y"R{''   B$U UTUTUT#T&T*T-U6 UFTIUIUIUITIUKUNTSUSUS'TSUTUTTTUTUTTUTTTUs2G ĺ!̺<Ļ=>? K ܺW\pԺpuuu B̺̺Ř7åղ̻̺ܺʶ۶I̺ܺзܺĺ'̺Ǹظĺ¹ιĺڹMy?"{  Z  4"    K mG  -ed""# " # # # # """#"#"" b P  4 34 bru LDV  e  ->  $[ i     )...='. &FK E ->R49*<_  =  @  1)///(/// &f+$o-$x    -*D#####$# ################%5P+++&+ &FK1=''&&' ' Y'&'''''&&''' & & &!'!'#'&'4),,,=', &f+  ->L3IOVyMMMLNMM NMNMNMMLNMMNL M L N M$N'L+L.L2M:N:M=M@M@MALAMANALBNFLFLFNFLGNHLKMKNKLKMKNKLLMLLLMLM  QG$R7777188887 7'7  "-$-B->B"CqCp&X #-* jr}*t%# # ###"""####""#"""#nY%'O;f:;: ]: :;:::: :!:#:%:6:::I# A   l 41   "G84J  -jR"""""""""" " """"" " bf   *!!!  ! !  !  ! ! !!!!!!!!!!!! ! !-.g  4(;   - - bI         M         O         1WS          ->$R ^     I  ->59 % m!;oe  ->    -> EU}P- +q $rK   {e,z  3*!Em      8 9D+7 (7(;H=@AA6A&CD?DEEEFFFIILLuNQXYYmmooqrrssuyyy7z~͐א6ٖۚPǠĦӹٺӻڼýe :[yxxx[xvv v v x x x x wxw:xyyxxxxwxxxxy+x y"x"x#x+v;x;w=x=y>vAvDvDxHwIwIvJwJvJwKxLyNxNvNxNwOxOyPxRwTxTxTvVvWvXxZxZvZxZx[w[v[w\vcvcwdvdwevewfwf.xgvgxixjxkvsxsvsxuxuwuxuwuvuwvvsHd  a)  + 7$L     4PfEEEEFE E E EEEEEEEEEEEEFFFFF F!F!F"F#E#F$F'D(F)F+F+F-F-F.F/F0F0E2F2F3F3E6F6E7F7E9E9E:E;F<E<F=E?E@FAFAFDEDFDEDEDFDF46ݤ Qդ     դZݥݥեݥŧݥŨ !!"$&ͦ*ͧ*է++,|է-.ͥ...A//0011226:=AŦEIMQTryݥէͥȊ‹ڋݥэťզݦݧِͨŤͤёɚŦɛէݥťݦ̣ݣզŤͤ=ɱ    ٱ ѱ Ѳ  !)*+39=BCEWXX_``gnׅɲʏÐؕٲҜШٲ! V2ىщɉ[Z   ݇,͇//͇00̈2Ԉ2܈4<<====>>>>Ĉ?EEF/IIJJK2NPQTUWZZZ\ي]_ъ`bbBcegooppŇsstvΌvvwwwwwɊz}͇ȁǍێÏ݆ŕՆߕ͆ٙņњ˛Ӝ۝݅ՅͅŅОՇ̸ӿYΌ֌ƌ,,ތދ֋΋ɋ(<ۀˀÀӀҒtޓ˖ʘsՙ ݄ ՄZ̈́ńңȤޤťߥ݃Ճ̓ŃŦ̺݄؂ЂȂ݄؁Ё݄͇ȁ:ȁ݄ń݄ņ݄Մ !=sS   %&''(+++-..///2233445778;<<>>?CDDJNOXXXYYYZZZZ[[[\\\]]]]^^^__=_`cccdddddejmmor?ssttttuuxzzz{{{{~Ӏfˌ̍ɏВϓ֔ݕΖޗřɚߛܜָܹߺػٽ/ڂÃۃ̄߄ƅڅ܆̇ΊӍPɑɞߞϡ٣Ϥ٦ïbʰޱͻ*::%eKڿoڿ    Eڽҽʽx`ڿdڿھڿ)½)*+,..//1567ҿ8ʿ8¿<??@@EGoINNNNRҾVʾ[[]]^^__abcdefgg twzz{ڿҾȓȔڿӜҟĢޢ¾1ڿϨsֱٲ͹ڼ'=  ֿV":#**s+-668?BDGNOPQRUUWYcfghhhiiijjkkkkkllosŃń݅ӊC׍ʎǐԧC«βO޿ѿ =  !!""#$ 122223333444O7;;@BFFFGGLO Z\^_adjkk̝   =$;     ۔ Ӕ ˔ӕەӕ!"##$}˕&&'')*++,..00 Õ?@K˕PS `ddeeÕffjk˕mÔn˕np˕pp˕uvwwwzÕ В3˕ƓғÕ=jj j j j j j j j jijiiii j$i$j$i*j+i+i2iBiI jViVjYi\jbihjw -KJKJKJKJKKKKKKJKKKKKKGKJ K!K!1K"K#K%K1J2J2J<K=J@KDJJKl -ҫʫ«Ȫ!!""#$%Ъ&''(),-ت.ګ2245J:RƩRΩUUVVWWrrs}֩ЃتƩګƔީت֩ۗ֩Кި̛֩Ҝت֨ت֩ѦΨɨ =l llkkllllllllllQl!l%l*kGlHlRlZkZl[k\l  +AHSb  -,>~44444 4 4 4 4444444!5#4&4(4)4*4+4,4.4.404152435!XB ߦצ_ Ǧ Ϧ ǥ  >?BTW`aahֆևߥץϥ 2@-P[@56u55{55 5 5 5565W55565 5"6#5%5'5)5,5-5/5sYLW  et?ɽ 3 پٽ  "##%*-0ɾ223w68/8ٿ9ѿ;ɿ<ѿ<=ѿ?AѿBBCFHJ$KILHOOVVY\^^Ѿ_aaggѽjjloprvv2wxy!yR~ڂѿʚĬ HϜߟ ZϜϜϜߠנߠ#%-ߠ2ם37Ǟ5ל56:::<ߞ<>ǜ@EEFtGǟGIOSߠXX>ߠZZϠZǠZ`bUߠchLߜlKmߠrsߝy{}łמٌ҅ϟhן͚ߜƠȡϝǝͤϝ٤CíםߝïǞ̰ߠ·ɺǞߠϞߜߠߜϜߜߜߠߠߠןߟϠǠߠ"τڄϝߠߠߑГߠؙ<<<<<<<<<<<<<<!JU1FFFE F E F D F FFDFDFFFEFEFEFEFEFEF"E"F$D&F&E&F)E)F+D,F.D.F/E1F1E2F5F5F7D7F9D9F;E<F>E@F@F@FAFAFCFDFDEW @^-w> !!!!  !! !!!!!! ! !  !T!pjkjk?jllk k Ak #ljllkkkkkkkNkjjlIj j k!j&j-k0k2j:kAkAkDEjFjIlLlNjRjRkSjSjVk[j[j^jdj;O+sssdssssss s  s r s sssssrrtrsrsrt Cr!s"s%t%s*t*s-s.t.s3t4s5t5s6s6is8r8r<t<t=t@sDsJtJrNtOtOtRsSrTrT0tUrVrXrYrZt_t`t`tetethtiritntntotqt#fdce?f?eAeDeEeEfEdEdIeJdLeLdNePdQeQdReTdTcWeXeYeYeYe[e^d^e`eJU"&'''n''&&r't& ' & & &'&&&&&&C&'&S'&|&'&''>&&&& ' & B'!&!4'"&#'#&$'$&%'%&%'&&&'&&&'A6@#CDgDFgGfgB0@`LW$???c???>>>?>??>? >+>->4>4>HS>     zHSL0a00 0 0 00000000000$0$0%0)0)0+0 2Hb ^^?^^^ _ ^ ^_]^^^9^^_^_^_ ^!_#^#^$^&]*^*^+^,^.^.]1^1_3^3]4^6]7^9^:^<]>^>]?^B^B^B]F]F]H^H_I]L]L]M^O^P^P_Q]T_U_V^V_W]X_Y]Y_Z][^[][^\]\^]]]]Hcy6    &&.449:>>AHHNNP ^bbffi uvxΌ ȶLX2QQQQQHQRRR 'Q RRRQQRGQQQQQQQ"Q%R%R)R)P)Q*R*R+Q+Q.Q.Q1Q2R3Q3Q6Q6Q7Q7.P:Q;P;&P<Q<P>P>P@Q@PAPAPCQCRDQEPFPFPHPHRJPJRKQKRMPMPNQNRPQPP%="z---)- ,1u%?---)- ,1u)  2`HXa   -T_(n,nn nnnnoonnnpnJnoo n!o"n%n&n'o(n+o+o,n-n-n.p/hn0n4p4n5n6n9p:n:o;n?oAnFnHnHnHnIoJnKpKpLnMoRnRnSpTnVnZ#n[o\n^n`#nanbnfogoiniokolRomnmnHSLVVWX*WVW V5VWWVVVVVVVBVWWW!W#W'W*W*V-V.W/-V0V2W2V4W5V7W8VAVFVGCWIVJWJVKXMWNWOVOWQWRVTVUV{S^*    0?!&'))++,//044777P8S;;=>V?CEEHIJMNOPQQSWWY(؂\:݊zΎҐؒØݘĜǠZޡѫϴԶɹݹź T_lѪέ٪ɪ   ٬Ѭɬ8٪"֭#ɪ#٪$&ƭ(015679:ɬ:<>:?BCD0٪EE٫FLNR٪SUWXXZZ[:\ѫ\ɫbcefmnnqs4t9wwxyzz{ѫ{{9~ɩx܁٩ѩш‹܋4ڐؒ<]ޭ3ßȤɨ 2HYb   DHU— ʔڔ26  !!&'()*+++,--./02233469˜:;ڗ<<<@ʗBCEHIJJKKOҕRRږRTTWZʕZ[•\\Җ]ʖacddeegghijjklotڕuҖu6wwҗxyy{–{|||~ҔɊ̍˒”L\eF  !#0&'2*.ӥ.355˥7;<ˤ>>CCEOoRRUUU\ۥ\^anno}vvåv}ۤ}WpیåۏåʑҒɗˤ˛Ӥڞä£ΣӤڣHU4     3ў0!"$%)++,,./1g25789<џ=BCCѠGGG?HHHIQQSUUVVVWٟX`cc٠f6gimnoprstzҀ؈IɞٞЍɠ͒mɟHS_JsJJJJJ J J JKIIJIJKIIJ2IKIJJJII!I!J"J$J'J'J(J*I,J.J.K0J0J3J3J6J6J7J8K9J9J;I;I<J=K>I@I@IAICKCKDIEKFIFKFIHIIIe!F= !&b!F=00+0 !&`  2Hx$%$'$$@$`%$ $ $ $ $%%'%$%$%%%zP[33 3 4 34-343433343333 4#4%4'4'4(4,4.4.4/42434;`%QpQQQ QRRQQQ!Q!Q%Q&R& Q3R4R:R;R;R;R=Q?RBQD RNQNRQRQRQRQQP[(`կ ͯ ů       ͮ~$hݯ&o)*,,./146oկ99;ͬ<?լBCCݭDխDͭDŭEEEFI[JLݰKoհMNOݮWWծWOXX YŮ]iij/կklttuOuv/vNwĹɂՃ݇ݬͰٗŰ՟հӥܨհհŬ-#?k=  ,1m-#8 ,1t 2P[DD-DDDDDDDDDDDD! D,D-D5D7D7D8D?DADBD:ss s sssswsUstss#Fs$s$s)s-s>s>sBsBsFsGsGsGsIsIsLsVsWsZs\t]_s`t`sgtksHx7%8(77@7\77 7 7 77'77777777$ 7e-"=,,,', Xu%="z+++'+ ,1u  2HxB79FFF 7F FFFFFFFFF!F"F(F(E(F-F1F4F;F;E<E?E@F@EBFCE?rނւ΂ !}ւ#΂#'+-Ɓ-.134΁9ց9<=>>ւ>@BƂCCGJƁLLPPށQXƁ`cƁeekklnqxƁ 2#4%y^u'''''' & ' ''''''''''',' &"'"'#'$'%&%&&'WƵε 4ζƵ0޵2ֵ4޵5޶8:@޵=ƶCCHƵOεTζY[Ƶ`޵ahhjkkmtvy޵޵ՏֶҮʹٴֶ K(Hl    l&NQbbbc b bcbbbbcb!b"c&b(b)b.b/c/c8b9c=b?b@bEbHcJbL'cLbNcNbOcPbS baba)b 2EE121 2 221212121$1 1"1"1%1+1,1/1/1/11111tHm55 5555#5$@5&5'5('5)5)5*5+5+'5,515)K8')K' R}U$x(4 J  R RI+c%   g[22 2 2 2222!2%2)2*2+2.21222 R(P*!:2Ebbb abbbbb$a$a'b+b,b-b-a.a5 bKbNbOaPbTaTbZb\a\a_b` a R R*$t      P`+D,,- - - :, - ,&-&-&-'-'-'-*,BY R}*T  eNrtyc    R} R} R}129T | R%P'$ % v l 4//=/// / / 0 0 01000100010000000!1!0#0$0%1&0'0(0*1+0,0-0./// 2R  );.J7f7u?77777$7/7 b YQAAAAAA#A'A(A)A-AAA BY R} R}(P@-{5   (;HO.I%3I }!}!(GQ/XM5%!V}}t!}}`!& PP'P).P14Q89Q=QDGPLNQNQOPOPOQOOQPQPP,vn}|!}h! . /"e9o!5,)g{p u; Kaa u;pu;pp;;^cm/V_h(i1@;Zt D])a g&;A5 (("(#(#(#(#($)$($(%(%)%(%(&(&)&(&('(')''''oN              3I                   Grhz;.8/9 Mxn;0c I5K);B>;.BfJ#g 2;D; 8D;  ;  ;;;I;H;!.q/]{+9l/]{Q'.7UsQ  ; $  $ ; ;    ;|_())#)#)$($$($(%(%(%(%)&(&)&)&)'('('),foxG657         ;pH   'gq[ 1BdzB 1BdzB;1&iLaf;;%i)')')()))I^c.Ba+D5*;h~5*;h~90 ;5*;h~5*;h~90 ; q5*;h~5*;h~90 ; $;M   -:H 6Kf-P $i5@         Q d(YA., vAK6'     D 8  52               )]R* ;,,, + + ,,,+,,,,,],",&,)+)+*+*+*++++++++,+,++, ; y5Q         -Ea  .+ , , l++ e+ e+ e+'iJH+5$8i99 9 9m988988C8 8"8-9/9/928282:383938394849494:595959596969686878797978787879787989lX'SRX2v323 2 R122322213 3#3$3'2*3,2.2/1/2/1/2/102010211131211121313111313;hc7;&1Ea #     B0PQY3   8:SOAz! v pz   EOEOEOEOt~t~ ; ; )8       LZ d Z         B'0p ?b  y   @oy ' #a Ua nCPoy # Ovbv S()aZ!7(AZ%x}PgG;.B;.BH/ $  a'EOEO d /'v3@"/X +)ClJ1I%_C/$       Mk     5$%-e}* " X=h      ; ;R 0:;.B S :q{ i;N& & & &!&!&!&!&"&"&"%"&#%#&#%#&$%$&$%%&%%%% *!M{} 97(XD"7X&&&&&8'<\&&& 5 $  (  $M   5  @ 0B% $  &| "%:E%Dd>%*Bz*I          E Q%W ( 0;q% !)  0O  =><>;>@;>:>:>`9>B> B>A>@>@@>?>?>`>>G> G>F>E>@E>D>D>`C>L> L>K>J>@J>I>I>`H>Q> Q>P>O>@O>N>N>`M>V> V>U>T>@T>S>S>`R>[> [>Z>Y>@Y>X>X>`W>`> `>_>^>@^>]>]>`\>e> e>d>c>@c>b>b>`a>01>)> >>p>@>>==y> x>v> u>s> r>p> o>m>DDDDDV nnnPnnp l 5l Kl ^l vl l l l l l l l m m .m Dm Rm `m tm m m m m m m m m m n n ,n 7n Dn Vn jn ~n n n n n n n o ,o >o Wo ro o o o o o o o p p 'p >p Pp np p p p p p p q -q Kq fq q q q x q q ਨ r r  0 ,r ?r Sr X nr r r r r r r s Щ  8 1s Cs Vs ps X s s s s s Ȫ t $t 2t >t  [t st t t t t t t u u 'u =u Mu ]u vu u u u u u u u u v v -v Fv Zv uv v vvvvvw5wFwYwrwwwww w w w x !x :xQxcxtxxxxxxx yy0yKyhyyy0Xyyxyzz2zHzbzuyzzzzp@pzpz@zX {X{X/{XE{XU{Xg{X~{X{X{X{X{X|X|X7|XL|Xh|X|X|XpX|XX|X|X|X}X&}XA}XY}Xt}X}X}X}X}X}X}X~X'~XB~XX~XXs~@~@~@~@~X~X謨XX0XXXXxXXȭX!@:@XT(#(#p(#@(#(#'h'''''讨''0'' ''7'G'd''''̀'逨''':'O'j'X''''Á'؁''x' '$'@'U'j'z''''̂'肨'''.'H'c'u'''''诨$'''у'@$'h$'$'部$'***ذ**/*H*f*}***+̄'܄'@+`++++ر++(+X+ +++'+в++C+ +@+`++]+v+ + + +Յ +ㅨ + + + +8 +M +_ +t + + + + +س +Æ +܆ + + + +( +X + + +ش + +8 +` + + + +0+*+B+_+v+X++++++҇+쇨+ +% +ض +> +V +t + + +4+4+84+X4+4+ψ4+>+>+舨H+ȷH+....'.B.R.U.g.v....ʉ.≨...8.`.-...B.и.^.r...@.p////蹨///ϊ/ከ// /!/?/Y//u0/0/0/0/ы0/苨0/0/(1GXr$sˌ0h匨ຨ",.Jdf8exf`gٍл8)@Pg`Ŏَ,༨F`8x|нʏXྨ(P珨,-'.8`/06Og }XXҐ㐨¨8¨`¨¨0¨N¨jȑè0èXèèèޑĨ+FY(Ĩv`ĨĨӒĨ 풨!1"Ia#|Ĩ$Ũ@Ũ%xŨ&Ũ'Γƨ(铨Xƨ)ƨƨ*(Ǩ+$`Ǩ,=ǨȨ8ȨpȨȨYȨɨ0ɨhɨɨɨɨʨ(ʨuxʨʨʨ8˨X˨˨Δ̨ꔨ`̨̨ͨ0ͨ"34Aͨ5_ͨbͨ{ Ψ ̕ 㕨,A_v Ψ@ΨhΨΨΨÖޖ0ΨIϨg0ϨhϨϨڗ Ϩ#Ш$XШШ%/G+ШШ,aѨ-@Ѩ1pѨAѨѨBѨC֘XҨDҨE ӨHӨӨ''?`rrЪr r`rrr`rrr`rr r`rr r`rr rrr r`rrr`rr rr rr@rr`rr`rr`rrr rr`rrr@rrr rr`rrrpЈ 0@0@P`pЊ Ј``pк0 @P`Ц`@{z80`ЈPP@@0  P00Ppz@yPЈ @0P@`xxhp.p..Ј.`.   0.0`p@_oZXo00>Ј+@pB0pmr0lkNо 0G0ЈP>Pp`pm`ZkPjD0`0PЈ`RFp0P@p`p`mЎi i`;ȫм@0YЈ0@f_ПP`@0 p@P@mYhg1p@/P//Ј// 0/0 `p0@_nZXPo`Ж0bPЈDp 0p mpqpgf@(`0kЈ0@ЕpPm`Y@fe(p.p..Ј.`.p@  0.0`p@_oZXo@P@0tЈ`DpP`0p0lre`d XP@ 0}pЈ NJP0@@Pp 0ltc0c p000Ј`c [0 ГplXbbp@/P//Ј//p0 0/0 `p0@_nZXPo 00Јк AВpplpa`ppp0Ј@ `?@`pp`l`XP`_ЬP0ЈpCОp @@pP`@l s _p^PP0PЈ snАpp lv]@]нp0ЈjVЎpЏPlW\\0p@P0Ј|@Ep`0pp0k[Z0@PpH `0Ш0`ppx@Ѝ0 pحpР``pP0 @P@p8 00P h 00Ќp@PȮ``pЧ0@pPp 0(0@ЋpXppС``pP0@P@prpЈ 0@0g`p@_ZXh`ssssssssssts@tststsususyzpPg z@z@KbO@] 0@0gi`p@_ZXh0ipi@i`iiii iPiispp0!Рq8! F! 0@0gPF!`p`F!@_ZXht@tstt`tt$М$8$ $$h`}$@|$`|$P$$$|$}$@|$`|$pw$\!\!#Z"_$0m$ 0@0g|$`p|$@_#ZXh@}$}$P}$}$ ~$ }$}$0}$}$`~$}$~$$}$~$0|$~$}$}$~$@DtDtHp %@%ЈpJ% i%`% % 0@0%`p%@_%ZXhtt t`ttt@tt@(P(((Ч(@|$`|$@(((((@|$`|$0((( (0(@|$`|$`@(0(Щ((p(%%p&`&(P( 0@0g@(`p@_ZXh(((Ш((p((((P((P((`((( up*`((@*)`G)*p* 0@0gP)*`p@_ZXhQup*4*Ј@*P** 0@0@P`p0*Њ w`ww8wX@wXwXwwH w,,,@,`y,,p,,PM, ,,@t,XR,,,`,R,p,Ѕ,a,R,,,@,R,w--@,,,,,PM, ,,@t,Л,, wH+-2-@,-,-,PM, ,+-@t,Л,,`we-l-@,K-,>-C-PM, , d-@t,Л,,@wh--@,0~-,-,PM, ,,@t,u-p{-w--@,-,--PM, ,-@t,`--@(xp>.@;.9.Ј@:.:.0@.`K. 0@0>.`p@_ZX?.Ox Pxp...`\.....P]..Qxp.p..Ј.`... 0.0`p@_oZXobxp@/P//Ј//P// 0/0 `p0@_nZXPoxx x0p/P0п/Ј/0 0n0z0 00/0-0`p-0@_ 90ZX@80/080.0.@0070.0.xp00`0Ј@0001 000`0`pp0@_0ZX0x@p`111Ј1110$1 0@0p1`p@_ZX1xxp11`/1Ј91W1011 0@0 1`p@_ZXh`oyp0N2N2PM2ЈM2L2І2x2 0@0@`2`pP`2@_h2ZXf2@}yp2p202Ј2222 0@002`p@2@_2ZXP2 y8p02132Јp2`%3x3i3 0@0T3`pT3@_]3ZXT3@pzpp;474`64Ј5454l4^4 0@0X4`p@_ZXX4}zp4P|4@{4Јz4z444 0@0Н4`p@_ZX4 zp 5 5`4Ј04!5^5P5 0@0E5`p@_ZXE5 }`}0pP5p505ЈЂ5555 0@0@5`p@_ZXP5p5`5Pt5Ј055`55 0@0 5`p@_ZX`5}@}pP6B66Ј6@v6p1646 0@06`p@_ZX#6p6966Ј6 l606`36 0@06`p@_ZX*6 !}p666Ј 6Ц6066 0@06`p@_ZX6"}@"}0p6P76Ј60B7 7 7 0@06`p@_ZX7Hp6@76Ј@687` 7 7 0@06`p@_ZX6)}p`R7^7K7ЈT7Pm707`7 0@00~7`p@_ZX@~7@/}pp777Ј@7@7P77 0@07`p@_ZX7@2}p8,8 8Ј8<8PK8V8@80@008`p@_ZX8<}Hpb8u8b8Јp88`88 0@08`p@_ZX8 E}p8 88Ј88P 99 0@0P8`p@_ZX`8O}pP.999 +9Ј/9X9 P i90@0i9`p@_ZXj9@R}`R}R}8R}999 999 99099 p99п98@99999 0? ?1?B BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTC:?/?BBP ad@B00??BhaB0??B@ aBpX??BBBB.ad ICy??BB@, 0 E@F@p@B BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTC@BBBBB@BBBBBB@BBBB&@BBBBBBB IC.CsCBBF@ J@K 8@ @Pi@B BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTC@BBBBB@B0h@@BB>c @@@BB0@c`@@BBBBBDc IC@p@BBz 0BBAB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBA0B0CpBBBBBBTCp%ABBBBB@BBBBBBFABBBBwABBBBBBB ICAABB` (ABBB`BB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBB0B0CpBBBBBBTCB$BBBBB@BBBBBB&BBBBBBBBBBBBB IC+B2BBB PC`'CBB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCBBBBBB@BBBBBBBBBBBBBBBBBBB IC.CsCBB@ CпCCB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCCBBBBB@BPCBBBBCBBBBCBBBBBBB ICCCBB͉ `CCCB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCCBBBBB@BBBBBB@CBBBB CBBBBBBB IC@CPCBB  @DD0CB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCCCDB`^c@BCDBP^c'DDB^ cCDBBBB^!c ICyDDBBCDCC?DpDbDhDD9Ep:EpIECE`D0E DD&E D0D^_P_@L_ #SFSF\EB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBZE0B0CpBBZEBBBTCYE ^ETFB0HfHB]c ICGдGBB5Gp@GKG^GuG`GЅGHP.H"H HLHH HHHH@H]])^^ * BI?I IB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBB I0B0CpBBBBBBTC IIBBBB@BpIBBBBIBBBBIBBBBBBB ICI.I I I8 -`mImIEIB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCDIEIBBЏbB@B@EIBBPbBpIIIIB@bBGIIIBBBBpbB ICJIUIBBmI0wI 0$J$JPIB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBB`I0B0CpBBBBBBTCpI0IBBTB@B0IBB TBPIBBTBI &JBBBB`VB IC0IPI@IPI2J&J@*J0TT@TTTUkU^X@Y GW`2VPWXPX`X h4 {J@{JPRJB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0ByJpBBBBBBTCQJ@vJ0JBZ[B@BkJ{JB@[BXJ`JB[B`JJBBBB\B IC.CsCBBJJJТJ0JpJ5\@[[~[ 7KKJB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBB JSJpBBBBBBTCJJKBSBJpJLB`SB@JpKB:TBJKBBBB0SB ICJ`6KJJPK=LKK~LPL~L LLLL LjČ ;LЖLpLB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBBBBTCBBBBBB@BBBBBBBBBBBBBBBBBBB IC.CsCBB Ό =LLpLB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBB0L0B0CpBBBBBBTCLpL`LB@YB`L@LMBYBL0LBpYB`LPLBBBBYB ICPLLL L@M`!MM0%M5M@5M6M9M+M3M+M0/M PAP1N1N0GMB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBMPB0B0CpBBBBBBTCQMEMBBA`B@BPDM`_NBB`BDMp\NBpU`BMbNBBBB@`Pc ICPMMBB`~N`NN N `o`c0? DnOkO@NB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBN0B0CpBBBBBBTCNNuOBSc@BNxOBScNPuOBSc`NvOBBBBSPc ICNO`NpNOpOO0O@OpOpO@OO@O@OЖO8 G9P 9P!PB BPBBBBBpB0_CBB\CBBBBBB0WCB BYCaCpC@BpBBBB0B`BBВCBBqCPcCRCQCBBB B@B`BPBBPB0B0CpBBBB !PBTC0!P"P:PBBB@B0PdBBBB?dBBBB@dBBBBBBB ICOdXdBB0undtdtd@tdndndod td0tdodddddd@ddd e ed0d ddddPdPdddP99@ e%e&eP edde&e &e edd0ZeYe Seepe Sendod@gPgodndodggodndod"g"g"gp5gDgdЬd0Ag`$g@td"g%gp#g$gpUgYgdd0Ag`$g@td"gUgp#g$gp5gDg@zg|g0Agqg@td"g%gp#g$gndtdtd@td~gg`g}gЂggg0gpggg0gndgggtdtd@td~gg`g}gЂggg0gpggg0gndgggtdtd@td~gg`gg0ggg0gpggg0gndgd0dgg@tdp5gDggg0Agqg@td ggp#g$g9h9h8h8h8h8hhp9h9hh h hhPhh`9h9hhhhh`hhP9h9h h h@9h9h` h h09h9hph 9h9hhh hhphhh9h9h hh@ h8h8hGhGh:hFh Ghhh hhphh:h Ph0PhphPhPPhIh0Ghhh`hhPh@Phh0Hh hhphPHh Ih{h{hh`Ph hhphhh8h8hhhhh hPh8h8hh hhhPh hh8h8hhh`h`hiiЧd`d Se@ p0 @p Pp113g9r9999999;  $r`@@hocH; G; aPl oioojo onfo @u ` >0%(p |>>>>`~>@;|$>@td>e@!`>%0|;pp|$0>%>>`>0<p%P<@>>Vu@>|$;>p @1N>>`>@ >@Wu>:<@`%<@>@>P^<(> >h>p(> It0e>>mu@|$`> , >pehe@YuP% r>@H;|$`>sp!$(:P0_<0>`[u@}>&6FVfvƀր&6FVfvƁց&6FVfvƂւ&6FVfvƃփ&6FVfvƄք&6FVfvƅօ&6FVfvƆֆ&6FVfvƇև&6FVfvƈֈ&6FVfvƉ։&6FVfvƊ֊&6FVfvƋ֋&6FVfvƌ֌&6FVfvƍ֍&6FVfvƎ֎&6FVfvƏ֏&6FVfvƐ֐&6FVfvƑ֑&6FVfvƒ֒&6FVfvƓ֓&><=;=ʏ 01=V=|J:%S<=Ƅ=/U%<>b; 8<==D==R1QXLS<=i=X9<| =W̽ԛQf={* 5=Ȼ}X;zǺQ>NI==`g.6R>c詼=X=^^`<[<=-='OR9>>i~.H" R e> IN^h=NwF{>UIݼd4<4G=_;-⠳ԯ.=ZS<ֻdڻ$7k=<4d>ATQ<;q';.Z+=v]=`tUO1Gxs<ٻ^ Z4Vzc<`rRq:< ;=#=yX3=|bFL潼- J{5,7W=z)Q\=mM77<s=n0/ j=o=h|d's.1kTdw9<'yC?<ļ<IΏʽ\ DJ)=/=Kjz;PV=Ui=H< =K;j¾XZ= , A=]HƬ=V>>㾥J=Kr/>rO>Ikn\"N=(E>A>rz=+q>*>>1>{O>t=RDY=uqt51^O= >>n>5#r-J>>QF^x~>Nr]ϵ>Z>L=V>ѽ='v6[>L֋5N{K=Ǧ~:oah^>3ؼ#0b>T>-+ƾ3>zW>=e=U(>>ɾA>'q=K >YƷd> z|E>>Q>#==\>J-^ =?J>r~Vu>͏߽WCoV=Ǹ;U=%>s='> Q<09ڽž6r>R>0=g>L>(>\; ȳ=;ΙOȽB><+=bJPu~r>$h>#ߘFE >ti>. ,k>~ >a>.]8U>Aʺ&>G#BIP_=p=ty;>Q=<& =I#>y>UY0\>hj= />kZ<w<.,`Eéhr$>c1==~{>Oކ>W0ֳ[>=>><_RJ =j>'>bB=B=">d> R饾.e;7-IbE<>=-=0U>@8=2(>''qZW=7>[> ǽ.fwf4>c&bT>[>{/i=K>6Gc&=>ۼ+Ruq.,k&>yf<,|f3>Ө5>>u&<5>S> [>ph>V5k="u3>GK^KBс{9T5=ylt>UYQ lޟ>pAֻSB>]ȯPmc%lD>ut=U<2>= T >$5=&ױ_@J_H>{kC aU5=~c53=>ɢT˫>pϯ=>apv03=;;t@G>圾oi>{^0M?#м(>V>U=]Ʋ<=x"O>~>RiRe>q9EY_ d>p>+>Vv=BKA>|6ϻrٽ=Qp{(@>kҼνY>JS(|= ɚ==$=NkG*E>2=A> RC3>?.>*R(m>5=ĭJ>aoҿ<2:̉.=ܫ=o9"n=s+:ɼM7˙>g]>_*>&k =˧<Z<,=̀ukAh[>= >v47[O>=F=Y>`== Xk;j,Y>9V`;L >"f^Q->:j>>1|2f>=g=Fa9=òڽ7= B=9<Q.p:ʖ>c5>پ4>kC>ދ=]>ԁ>Sfᅾ&~9ٺey= Y>c$>>i>fN>$=O>z;~>>A.=bJ>R>#?>}ːa9>@Uu> Z(\>\)Y>+zW?ǹ]q>m#>0}=V>^#8l>'ZڽgxZ0["e>21>_>)>Vtz=z >\=F>?URZ.>d6>Cs!>ed>u>Ě(>|/)x>jCr;>N_>eF\="<+>b=ǩFD >2&a>|Kcuy4=K0==?E93gc[*>>ke>r퍾 ٰ=>8 Р:Kw`>V>ņ>:h^JB>ֻ=Q|>ݨP4=yݾ%>WZ#>4=8>6r}0R:`ZZ5TC=߾c#*7>/g>Px׽U>I<>YhIg(~==\=[5>Mof=ˏ>+oY=> tw=5@W=_dgͥ>5\KV^>ϰ>D_=P$>-G>5!>D=sE>Dhh>DH>~vY>4;>==E_H$W>=>i>sA *>L$=m8u);>fԝ= >vs9xС>=W(l>=Cvؚ̼.18 X qb=B>]>6VK~%k;|Ž o=|*H>j;>uV>D==L=ǽ5>T9O%;5-&]>I1}GH=bq= >5=<`>qA>傾9>AϠm=s'H>c"l=1>C<=nɕ^F>6>p>h 꼽>-=߽000==4G[aG\\>3`}=j_=[SN&^IG?>'>?Z=6Z=׃=M f=zK>l1J3 ߒ>.= (սx^,>Qۥϟ1>ɩloƑ==4=>mZ>Z> v]q>Vq=Fߴk>V=.e/>"fֺC|8h>V-J>@=dt]W?Мb=Mj_<B>cA<`:얾~>ԇ~vo)y>ѷ>NIA_=0>\H"<=b >|34Q N>p=[ R^$z?םY4=xb>*ܽa>Yk>w6W(؎xW=d lQ>h=!`X^+kƠ>a4ݾ_ܧ>!8>U͌>[=M>PݼR>qF;=p==R>>>N$׸pݽ=>xAD=pS>"Q6n=0>}N>J|8>(_Q?>h>PCI:=W>&ȅ"=H;PգP =;/Y&P| Wޓn>Ǡ} ِ>ǾC.2>\}R>!>?v>H>:d>hA> >bf>(>,=^⣾ .[W=F>;K_C =>K>m@K`N=>%>]< =>|S0'Z8*<-댾b45>\FV> [= >8.?=18rbsG>rD>ՒG]b=Hm>!)>gpbF>%ED^>p@]>V>=atT>fux_)&н<)QCyjS>ǥf0<{=>~D>J=&>l=-˽za>Û<^>"q>>b>F>ߕr=z/>BA>>. >-F%]>F ~=#g=j= CR{>8v>ۮ>;T[=l=SA"=|_;ޖN>]V䊍>>kO=&V+F<=hL@3!LD>ڴ;+X>N=~= Zo>x7; j>>A֫ =s^b>O. A>>>>¡>qB֌@?"<0#Q:>g9ZxWm> "=M> 1(s>?j>u/>P>nWg>߿SR=!ʽ^zƽ6M>޽8><6m>i=¾#'j>x=S8=ˎadx>O *{g=Ә#>NPЃ?>K["E4>^hf >¼%䠽ŷ=2=E=FyFT >uüJ%=zSh @=eؽI; p>zI<.R.]=ր9ڥa>p~ٽ曻Ylv,} Ȼnoډi=޽<[;PC>sU>2=0=gܽ {1,< =.->h|C(UO>Xn >w+Vg_;|=SlFѽ<a1>3rn>j[IG>cڰG+f>;=Zɽችꁤ.< НL=,&h*=L`,> =c M?=G"=?p=6d>=A{>W5½=Rb>y3>=[=Yհ@=_$=0=`==$c= 4==`=Cм:B='AChy==c/=`=>Ӽ=~N=L 2=~Nؚ=C*^L~H<=ɯP=q]=L=J.(55/= *z:K<޻(Rtr<#H=d >v-c=u܎=M6>{Q:8== =\At;p-¦>;_< =,sn:$>Z=4}ECa sH= =GN<R$IU>Aܔw={D>ƶ|+!>j>W=x ڼ~k F=82~>O>bK=q>ڣ4>P, B6d>Nh>>Q>vd@">⓾J5=ňô@>">s>Nめh=?Բ6hν=#޵=|?>M d.I$G2<ϡ>X;>a=h Thw=-=_;B#2>T<>LE(|^> %j:pm>UF?6|ξ>do%=D"Z>Nq>=>Cty̽]Z>"> }PBXģʾ(>=Zp J=e=(3!>Cվ5R9=>>>&&d>w>}si>F=>վ#>LrwJ>Og>בe r#< >E>O <›1]>L>ѯ<{Wؿ>Y 8=>ޘ}_{K+>i>|>M= )>x>@= ;>! >҄s>9ɽʙ>/碾V=!Nذ*%=k>a~͍=߻>v+8xߩ>{ؽ3">`j>B<]2;Emѽm>2 (>Hj ;)=#>%swPʾ(<j5ǽ6<4=w>no>G=4.O'ܕH5< 3=Hi>WϾ^#@+=_»>Sw >(hۻzD>\u>c >8a>=o|X>z>F>>E>fzϽ=S=t>B䔾|>iEx=ѳ>,X>F3>6Z>=ϭ0>f;S"=V=d>`J>/>~>%%; >ʼ[+E b{9E=vµ>h>'Z>c?1W=s>_**'>ӾG=>IwC>U=>>c=$[t>{ʪ> C=#\dBC>Л<=j>= ]U>٢!2>t}E<5w=4.>]P]=I>^=>2s>KE#idi<>$}pE&P=ղ=!Kʽ2ܾy> 5<}=Xi ;=Op%;\G`MJ=>)?>þl>'U===2neFLteV^>ݽ08J N>_Ȝ 6 k8X>)>>PҔ *<郡j#yGǽkJK O(=5 Ƚef>(!k>CcA/D9>s1Y>ll,/ #=1>w<ۼrkD>0l @k%?9]J>JqB>,m=y7>>@P=,߳>x񀽰 l,|>ek>m>ub> KؽH)>0>4-wzOA>m>S`s=9=Wٷz s *=I"><'=gý*= o#W>X>=>=l$E>ns"X=Vw饾5ǽ=薽R>C^PB>o=<ȩ> >Z>1$l&Qƍ=w?4>?<q>&l= =*GC><-Ic=ٻyȽ|>gtv>AT#,=ttc\ >:d#=F>ښ>O?w_Z>>u=>Kwm>>ט=c<$FżƸ>/pW>~B=;4>/x >>z^>;,ʽ;M>OV>1#>zus> > 4>#= LTd~>t9= HtI>}ZoB$v>Dž==~>7<&>ׁ8¾ ꋁl<>̵=s콼խ>m^>)7+D[sE;Ŧ>wU>2H=nԽ>ȼ =>6eg9kqĽ2odU>~>ީu< ?Ӕ>=)p>3y/>Cx/}ü~s=U>Wݮ>Ҫ%}/=SԽ3{MM>%lO½S/C4>!I>>g=g+"%a6>h >]RO$&# =b=pG:A.`zј>X#}*>┾ }=؁cwlW>ԽTw>=>ut!>=v=ػ$>=7d>q[>s;W>[s>xP"u>;%>+CuP>_a贂?kRj=C>MNk=.!==,& c>8>>t#/>v-=~>zܟߚFݽd;>4>)bFVgƛ=N>>F>8ÌE>X!$<M=s>鴾+=~GJOo=z^(<{^N>zoD>Qف(gò>=Q~>vQ>!Dh>>nb;N>!r*,,N?>i>6#>U M1:pibm]EP= R)Oϯ=,F3::D>Gr=ßȫ=% =IP/=L۽ev>^s> n0?_><"l+>Ƭ=_=ކ>QI>$>>Q>%7>gQ>w2qq=j 7\w>u}:6>N9>WĚ=|i>9K7Y ]_=>-=< 04hg,>>͢R>%{ ؽlً>$q̋>s~[>GZ= T>BK5\=Y#yV><Q>P냽!6"_=^>I'>7>`= >㦾[.< %b=/H$V`hjZV<>*leB2Y>mXǟ=]ѽoN>[)=vr> <.b<5#_>|>ifz>lI؂ @=t遾:莣 넾(4Q覡>>]>^o>Gb;(>g=X K=݌aIOI<=$ν2>2(= %7==Mսm>ֽ# \PD>}_U> T>͈= 6>z<FSlB52ԖAz>PvA>}{>q }) >a=\(ɯFU׈u<@>w >b\9OEJ>-ةR>k>ܤ=><={̴Tԩ=7ݣ>c-,>AqM0S)#>J >{>߈t><0<l===-:H lҽٳ>˱>>]ܽ*`=-VW4= 8>h>"}I^~>> =$!گ5]>[ BV>-Fn>#?qO>`#=Jb>lK>z>}is=L=*<@Ԩ>_e>>XqN>P>y{ |Iw=NH<=ǖ>_y=;A x>Ac==5ǽ^~C=I>lf=h7.!5O>Q#WĽ؝ͽL=KI>0>B텾JxUYy>GNd>Qr#=4m>$YM ڼhֽ*FqI"GX>>ut.Aȓ/ % @CbFԨCbF CbF`ECbFxCbFxǩCbFCbFfCbFപCbFxCbFRCbFCbFCbFCbFCbFp2CbF@HCbF^CbFsCbFCbFȸCbFάCbFHOCbFCbFtCbFCbFCbFCbF QCbFCbF(CbFxCbF5CbFCbFcCbFjCbFhCbFCbF CbFwCbFhCbFWCbFCbF`jvgxmma_headers.h\[s㶒~NFc$NN--6wdI!qsTYܑD{nw}꜉Lv ݀طlCao'۴ 8ÁcA͘\2X#>YP3?C>`ͼ%gEAN9=^AZɏ,AU0CBA6<\[l#Λ].s[ñ|:2@c_]gZˌ O#Ǿzaб\ ll?-~76UFg#  Zn .ٍtO٣;l۸G}lr0 gdw=a1ݵ*gng7Qf}#^OEM 4(gڎ . d굘;6~~@ùk\%3 9̀-,;GŮM\dw-.iZ-hddPqϱ bd+?gy=EY ZZL) kx!PjA:5!6=F"\X p(?$!e !GA#̙G!I(OQBP=-sq'^<763RN049` q{|Fo:ՈCO1(\[?K ~P_p2_,$hA̒)u!~4]Q":_8 M",p6v4!!S1bY=¿RGF Fsʈj\"QaF9qXCt|c| )0Wao\`)b̴z6DLnd7#ȉ%4MRJ&ɎCed !v C*F] ǔ(Ei pvJ-ᒾݿtQĶjf,s!wYuiH4s^#w@ \8PKgpSL&,dNץn YUGJ`LJl)S }KRƍYtR `)YƐ"M!cojéF f,|Ȏm_6OO;BHqԢ1F=EdI0 o(HDpP3!%E A n} #;;'vZÑ-M2Yzѯb> 36䱂:`ծPM}f٪L2Suk9=& yXVj@H-N[p2ej@ ~cL i2 ;1`RÒYv]U@:]&3J3Wr;R( C-݃%IbU,GV J~4yTx߈~]{N5ų^aN` 8<&PæIB_&$zDem;l3cjl TgIt wb mT49F?,Й_ MdRzIVc5`.tT&QP~ dƧhç3{8̔ 4ꏡRob1Ua(zu  U"b!eo1 ڒ Lz󷼔QAژ0AKfyqstSѰC02CoCod"=k:]|v΍' a؏[S|4NUg4WbBSn7zij0s Z 4jΡCBn$%n4*m g-cJmF-ujHSƇЂLÀX[ESn٠:B>XӋF^Id]QUhfN܉]ꠗK!hTZwM5yS xr+/|.%"^RQCSNl 4À5R¤4*$ ǚL*MLFz뙪iηk^+{~tk:;֤Ŋ;JT# bypCJ!mJ3QCz^DN-lr9 JA =G!(KZ@ɣA<(y4ZN ͊w7`fW@Efq4/t٤S4#@Gq^׈l%5 u]K-)m(6Yz܂xlpsg۽F@ puSڃ&"yDMg}r g?ffgpCV8u'ՕmmWخzͽCf<]G]$,]/<5*|.ݻ9 dt7\Fk㸫/ZM QB1u'w &NN?d['2({}$!-MF<6qX%G5 HP/DQ#0鄅|@9$< Ķ x6K/s†[uQyboywrT|;?![0k Җ_GJ.9|}\Aϱl+daTJUH**򳟄>>/ӄ'!Bʨ.Y?M@65 6o g8 9hWvo EVjI}N;JR;{Kf%.F<<-zb+"S/q6IgQJο@%J=^?~oi>-ߍ4 vJ\,#7&%*Q@j"tF1,rIt;Ƕ96ɅehQCPs;* ዓspH3]x!0>?K6p,Ia-XAV fϚ{VgB(}o\?I+ .2tm[^ naDUʓ)#f_%i=rJnI.=i4,gbtx'vD$`"!d4 g(;H,a#9c _qʺ:A1F#{= .С%MatϥbǶeA 5xz!BwjxBǓ=XMp:lXŇQ~5B(.Y6,(9O2spr@w^[yLBm["D-r wh+/]F= e ζzfS@{rEow;+/g䍲qZ(c~y FIzO\fOhFYx/|f{Džs Z(:CЦ M =:݁8UN1 >ٳ{y 3d4{" t֏o@i^z$*{Rby |3\NGrCKU; %{ۥRf:X@Fe),]+PzQo)Hc4lQ:$H7 ˦~2]B2.e[B]tc_+_U>OGJ]- !{֕ѽ#!2<|/GMz z'W]lӵ>v]8ŲI) g.#GOTpO>D=5?Õ*(eHN/8՞MPe  Ѝp;W$e"A)3wUkV(/z)4.O"򔌪bgWKt4&p.c㯣ǎi Vȥ>=zK;vđ?- ֮mB_hOeMDKܼsĞ4?[3}15UOFolMYhdKv(8:֛BV7\ xx ?h y B?ָ=5^ЬvzS(u PWceeֿ67l x_gߣr/X~>u)v^;$ȴ"K\EIOƮEV{ :ciJ' XrC2$Z^'v:)~ڊ{kqU#t !B?50q2+v|HiY@Ff4GD])ox#`Okߥ(OA }Yt)m,Z 94O?ٍO6;d0]rd9Cy|&㧠Ҭ 6*.XV=qQ4٢tQ1邫VbT#=gCRS黈fH\C.0zfn{dd҆Q5f\F\UMI XɅ8! %E gJ *{ȯO|%|x]Cx(?./cVɫ@b3V&uZz!h w*.[}g2SrP B&1 6u| [g?S{§TOzm\Y0SdԉT$-lKUA m@l$$ H@k׻Or; et̵ktXck a!^lvP5fE6jd+s/Ղ4<("G@y`j#q&`xr/);\0i6d@\ͿYv8U0`h~pҪO@u (2! z?h$BڱS:EYsx=[~BGĉ{62TQ41U0?Sׁ{llYy3qZ5N6l?(): Xb~FYqpO5yԚw|WO@;ڃos˖3@srn5ڕ.D  $̞ h"]"JSRO: Epͷ;֨7tTu4^};gu gH\)7Y2x^(?(~c ;6F>52 {S[puߵS;n9XCiUJx|%-D8FMWWUV iA'UBBXmBoxbͭql\)1Du퉌p+N(5,|`ODU~7#;bÆE. *}O/x8a3hvZ΋鹐%(%$ ͣ& Бp3 g]^ɠU1](uV嬉.:kz8; i\M`fMY1t E (w\. mw`tKFSn,P+ tz9ߵs6 >[}6a 2rw/7廲AU^.> ʷ='d&6^-$l7eqwЂ e7?C?(= *wI; V$+)qGi\jJD)aa<-vర/xܺ;pT؁ a&G[Qa^>uwEa-fbxA2r~SXløl5R |;8r8ϣjowq_n;0/0췅ӝV}mNxE;9 l/g]5CX /x3t~G;2^,#ƞqa Y^,ʄ*drԅr}TQ Nj~?F?<>ۜJdYJ6φ>ͯUX,i5`mb|8KI?ٝY1b^%`J)A7~8\c8qeѹƟәM=ș~` ȡdmEp\kt>d\qiI:KXXh7Sh4i}7򛍃]/6{_n=}ԃ6~{6nmQgw"d$cN9SC:il;=cu9ۮbNq6ΦFgȟ}F{<A7N#Fx>YҌ>P:;cߣ4jEo= {L鵇M e~dzMy"^,̡:mww)-!lH\rc<Svz*u164@|Hy!"f:3]$㊯ >F1U^OlhO;]@ɽfS2IL%*.}t?5` o"W.n4wJK@DDuc9cC_S<gFΩ1 +1Z"sRO.1{RfbS1~u6jjBS Z#a+Yy8#H^!S C gBiۄM)z@;ASld `C~fNM%#.|Ϣ=!.t3zXB]IށDD#.NN|ж/r~l~ZBfQ{ >} ~XF5IYK+%hGw_ڑ2X6]vJUhd5޷@Y UM[ Ƞf_}iЭ>ErF!Y `~}o'TU~ 2/u.ga=I eGUn,5/}Hc%cRL0g\.-Uͦlr"$6[Z@`!p:b^=zs1q-pat#N$`#bcی7Tyo#Ke-({YKJW4vG9`~ᬞ,PQ(VHQdspVK_H5ZՐ9Nb\R|B]/JQ"m:aA]jzvjJ;#xΫ|iYċD -^ݬ@ :dl_yQ Y}_ ]VtJ icȋM,'JaV4[[$_*EJ+aWH8KxJZyQ k'JlHl_|_S;K6{g6$UQyA>=o;ħ>buٶӌhuDoZh{=n^iIE7!)A*ںև+4O@o,WJZ&Sc|-7Or+̃Y6oiLo䰲#fl)|]fl); ve)M*_Q|s 7/}TG l2s=FF6 5lT/}SF.e].cy^w^[5(e;8˰>Ⱕc R6ei DR{{Rm. E-xLc{m5+y'1 *o׆A=V{ _{%( ]a:fX/D尛ZtF}WSO|߀ ij6vv.8,q~߱D!p!8 @j@Q^'7A̱ڐ7҉ 걽! gb,ςJ+e"I>;4veW&U5k *;(cwUaaҍ)ΥRSjy4N jVZ~. &y|m6 kl@7F1cCMnZert^Ȫ]%ѻІ'!!^v;?p,"ń0Tvӽ*$>.]V_9`U6KǦA'TdS ܖ@d*7W}؍3n*}q[o[6tKqv' aD]pl'=ʪ ׃=RHU0ukS8仍aQ 9koX5Tnb"/HкN!?Sr 0U;L=h*!($h6b%;I:dеJ¢x0-@n_h0 oba !.Wx=,\ij޸O^.`ce2`F %+skm7a`>yuAo֚kم oS.VV5ݮZDN)I6Ͳuǔʫ9Cb{n_c+c3xbŔ-^_!հ݁yUIPXrhK*xfQ[[U ߵ߬(A܊f؈˄}d[=>&q BV8R:n.- bJd˫ ܩrRaF yY0+L 0ezHʡvPyg\DG(zJrL=:00Q ;>2J|5wV kJiw8Sp9Gzp?Es/J"8FvU|]23Yn4 Ar}j;+?7<pB]@a;hyPh{n[pJ𿘺HkQ"'"|eVp fncOː\wM?;G7UnaJ_}5?+&$Z+-GgտmN[V_i c(':iIgȥj5}NIJk{Du}oy?9bY6MM=y%h1hq]'y+fZ䯾z}zm_APz&iuo9ŨW8ber\oypKmfn:^f !x LeMz@Xhx)"e"6`AYw0Q+]U,lCy}Pn ~?^%0pٱ<WmB&fȱ^+RIlX>5G؂6;H@P?Zpn–Ws9\>ٶFP`Co"o>&Eue \7ueR@m8؜p3h6r FQlY['>rFLg|uO]r3m͒*ww8߾+ږ3LC<&gʼnw|Վ^ 8PlEkGwP(g0J62~yBIe]Z &şKo@{mEq:?_ : xL'b"VxڐZ\exT=)A̚<_4C{ޫEXp)Iᇾ"6kޏ sqv}.@ˋv|,h^Mc4_#ěR~R]9+}[yF`2MQE<\ sX}g.GṘKcAfX!%K+m={pnbPĪm p5oQ*^{.hivKX2CjZf'bY}7gitPl+M8۶RnԾ,d,T :wy-}m*ȱX6@A@!x B Y5jpwMuqp%kpV&!. n:inˏ 0.  Khw?;ԇeёsL.`F_F7JAk 7YCeIz^Eh0.=ٗG닻]Vk/nyt(~l/SSM@l]^A@tʆ/cqb¶oWH8>yOX qtQ`2v M2.tF[t"1\ d}.('UZզsBhckAkQ;?o[_m@@9@I|=( &-ō_tAP89{xpIᚃcHpc6KL}lMx.;4~ up`W-hi?Gr ;98u%62?\de&Wc MIǟc@&\9>"6*x謠=OAllnov=^ ;(|jC281>p?E ྿Q{ndXHQ2*PDNJaٳBGQ[2ͽWkT 3PnhF<]!t)mkJ:IR{ ށ̆RGo6 tޜ/"zfs#t/c8 # ڣhЕR Ł7zTo H?{Yz$g(O$ec< !BRv#!}t1Zm%l%c"P ]1V$AGHX&z?JɑXȥ+XstΎdt|xͱ8l \s`N^Ju(korMԤ&f![:Ww&p'04Cs^C;bF(f.? *fF'ܪ}_Bӆ ?7ǟYc7ʭȊ@_= Y] U<'b[⹩_>@Tt5LjQO A>`z cPjC[()Wx:_W4DWfڀj[/z0WkaV~A.ZtWKрw+Vp̮@FU:M%ԅ_*Y]ح-IҥcV:*jjwh6KzLo5d[S۫Վ]bg3 BX1YJ:9B#'4DM^jtJ`ҹ,mXZ3b/Sry(2R ;e,f4hm,؀nt1:w`f]C?:z7X@sU4TrL(Ӓm+ԋkAtL탳"]lih̉$!4dZBx-z1ۈApz+5Iai"\ $X +qZnD'#\y~m|G}D{TQgJ{8rju2O h/ztB]&'FP%zS@  2$(q ֻYqBt̫XNbj*m#,Y?8oH&:xTgy?Bo\ Hz]51-\]-ah D:GF#'NF^VF+NaMfPEK +uߍh$Yv pCKzkҁk˭6b ȔMsLj]9ޝ(MSh [﫶]36*qezXwTr%ngX٬ٓo.N[t$q/!(adktTOue֊ك'sRP " jq ?,ݨƽDȹ}\pw\ܔfXlE}KGEE 1kq48? 8h(Ơ0 +la.,-8 ؉> |0 ~.f,jmH$J Hfޠ@ݤ!?uQ[ ! 8{\lU"2u7N3!u,!É9R !9fQk0*і2P+̾: 1 ,סeJUpa@Խl:6=K,"ާм]Xy($^l~e9N<$ku.[g0 (g5Pg@hl *<[gi@ ep\ÝV\\iP[A^Rh#c)PiN/o5sdv\GK0 ٔݤ{$ |gj:. Ih zťr @"W,K˘=P6daÿm9^;9K.fEZOk6Vu.*nZU=@WQ 20hm+tr}oYc Rf,W9~)Ojedusru?SuZ#y)4+^F|R\JRQV4X3@ɹe2=wZvfbG:@mNǔ'֪M%VٟJ${$bAS(D]:dբS,|hͩ(0"70<[+N@ɮ=?]eٟ8n/e?FTl9u%~i¾0P871Q,q3AxRXך//e1DҮK%׬blg4Z#8FRa4zQ Wp܃bk۔Vfxy_&L7dt_KZ"+EXȊVA7kGߣdTqxZ$A<<+T^CvBbgfMŠ=}}a>G#i:ES#ӡ)98.M&Ps5aO4 m6#:C`H! ll`0|q.`D + ?tc;OǞLix+9$l^lytZԁrPrTc.GUs9RGuV@|S7P(ցm9o`_/T7/ؗo#rTQ95Vr~95Aؗ5a9oaEXѷU+m|[9okߔCwU+ (:=|[{nˡ|[F|OC$ x~tDIE; 0?OCfOyA \ez{`ʕ^{'b {1o! ,k > .mq}f_˗x,%& jM] y\Q.VQ@" >u쾳psǖHQeԞ+Ja1P)Bc45 # *XR)FSݪQ v >s0QeQެ-tY|TNm 0̌n5k!|'!13oBEIJo0l5Vu?& L ۚ^Q%b̒IJi]%C;ޝ&*Aϰ}˭,0p?XA˙gV}*gm@ϖxqsl0tC@^i{nLG> ??. +d|u+l6:n{ҀnǘgMы~kt~𤂻ҠEN<^C9odl\gSv4qv_4"cM"9?bjmk~jh8“ؽ'fEoE?P@tmN(I$v{5Go=&ߝUmPzVWś߶&fs|F]- #}=ېpݒ?-{''7+%ow'I7 )W|y- -3$" nԿ@ri# $su9Ս Uku1dwN; )]E?AcJUԨsqPt罻'opvez#1>8/b-pz/ !Do .nudvfR- /ܖy,Uۂ+Bn+ ()1D =9yGVsAݎ&; DM7%w,8@zmG.)"ijOz;Jԟ2GX&)md's+OC>Mg?1X#^c 6oS4Ȯt7@Ȥ c̟Pp@~jU/ұ QA@:ا&]@ȁ6K % 0tC)n=DWЖ iYfjt(2. !pؽ*}jV%jЉ5zq$1gEUp uУFzf8Pz誡фo::JhEPPsnW5K>4_K%89-VIϑpT%|n}8I:AkJV\o:U|+SKUʟy+# tGj`Ojdm {5L(]x\sk#IfTZ$6^QH%J#wԌ"y-t sibr&1cU+}cVB#u)W]M98"hDA雩'p$}8MW3PclQ( $O&rʻ8#(HN"J. }?-/Jqk /ɈÃO)G~\;IzlHKlLs{_n%.#d [XqSº`~|`0D6n4);d[At[`_^] {[c9QY@?=7N 67IB~C鈱gwX`ro\)+=k٬#w zK_ZH̙r޳w9׽isTrHct-W! V2p'`^b|镮GA\B1řhHءZs4C旭:B4*E}_SvqMԑj-ҮT@$ޔ>X){d=6uq`(i\4څ7 O2`PgZ|-ĀAPNfXا/ͷԀfzeX5]@^NT:} Yѳ| P=fq`J5@IW9jSb.&xlĘ[u[罡W;O,hBh;l/[l 1ƥ eGSOqqШjv 0e2Ζ~@;^ V4ވb&}9:Ʋ`/|5~6;85OI@-W CFBٿҖƤ!ܯ^ &k. <060}uvLOP U?­ϡYa/ 5&/]҃wq6 j!i'b%ݔ'%ؕt^%H CPgƱBF p('k)'{-4*sQt2}Xc߻D EX1pݾc;g3+ROʸ/nh F”jPhwQp|jfs9?bw;RV 4i:(w;^ڟ&[_ggM p$.B;& YljJ<77)G,aZ@cΒxQ3X#JRK||M{š%kavzlIGSW9ˉud4^:PU;ȅJiswAsEunUٲOI7eɠp'԰<Zn%q^_KrӽW+i^'*y6N%?ż#Cb>?аWC]1Zا] X0], (/TL,OihLSEe5Vo)_K*{SX-#vQ$C'QRCͲ):Kt{n%eR)tpzr@æxbuےE,t&)kY{OlESJռ k71t:W_?be3RfOd {--3%ZfA!Vl/IywIcwO: g^ Ͷ|M꒨g+zEub;Ku3rB\>_"˞&o8Gozh¦)2:0"T_4ӳ]mzή/tg!wA&Չ `k >h` 9XɻZ27Jė \];8J~cKvyRJh$q~5J%X!r (A7Ei F$;Vl0]m0l //DX3ah2c~zv]}b+v Ar %L#H@ w#dm>p&;xPMɜtr $8 ୅oÃb)<"g%ͯ=sst})`KQ*kMܝ^Y'iλnj<#7Q C̆gѡvNS]7a#b8 d$s7.AR-qCN!KP,46KHv`L9iZ$/%Gc[!<  }gbJvwJcbU=jd͡]qn Aw-Z?NN%LPܤJ&uOu!`28w6-S٘E"}|^@`քmR&7< uaV ,m ^g3ƛ/ʾѮ[TeZy˶8(A)uah&C?[[ Eד_ުj),TKRzGmn&JN>|B>#Oî+Ps3,1G;( h/e穖QZܺhpZH Vd[+W7^ara_l`U unl~`_ؑr*O*Ɗ=8ȆtsOF2Gw2'L2ٱsh Y:.}9Hn߷/GZts E2vB['>mL!6$l~ޔӅ*!FǴ+8 `߆c7k &٧M=nULBu7MIyEńi-ZMa[tys6S)頡A72TYfz/`ۏi֯$U+}& ~&$fLMxxR?J ǃxp{Vd*~= CO/<,lc ,GF;D[8$2eA6f8Fh-/f٢rRnv^ww#@GA8WbʱWKu[/v_WqRn—_A :V-U3DGn\R 'lB4Jh0x#պhEj s"wxy㼶Zυ(:Z%s %SQx2”$Z0Z? ـr[ NƻF //!+ &O]}JHN+SjЊW ZXWfy(/FqxlIZ3|by'[̾4dHlc>jUg8ż= zvq&<fnl"g?:<x$,s &U94@f~}8 Jʇh42(xs(,^\ʒwPėXFD$-ZIf^9 Q#x99JEU$R nbx\}Dej58KWO71"fgh ^a g-9rk9z~\%7݅lS"}Gvmx܂9teFNxbU,꧚nk;q}HS [QԫrCq: LHˣj{&aNH=֒H߷bak F\.il52*.(D@p"s*aׁS9MM> MWNj׊&t+fFm )slu*KIO'<>NHi_EZ?I"93K6$0&y(U^Skg,yEU7ob:jntay@HUnBv8MM[Xo0(N_\^M}7ACKK<>϶vp;@\)A)z#\3@FkyƠP jڒ5"ͱm+wXⅤQzLV 8V&@t@ Er]{C_n6ij:6J츼Za/&A .z.(bq5̹(6:,v/XVcn :8a`>6_ڝŠ,&G\$*M6,'7յ:bVOM*-0:{z5Y`< Y?~3IE2?U)ܷ|tȲ+@$|QwޝA/қ9^ѻvfykؠȢ-(ʦ=ma=^t/lM`R84xj>S(VQs>@J{(7Y+.Qgil0BW>$o\\ۇԮ%A#͛Mr}9*NŶo[Oeih3ʴV5 LفcOFM;a``I.7m(1{SH z3;Mk104SstJJ}ɫ;=Y =z$a3 i 6_Կ5stVޥZIh 2׺M۹vW; Ęҟ:|IJFJ) ^7OQr=E$c83MV:WZS(wQbEڷ15NWvʖYOAM~[+ĢfT[ i*#x:2y˼pf6WF:|J⅔un{8T;g?M\o_,R0kunbB%z.v)[~U|:HېȂ&۾˄k"xYWʗa85HlB : 9yeuhVjGzYHe!P&ػPxSě9O,wi(JTwl{ `emзŅ-ģ^,<9M%5˳ݺme\ײ} ődhV^&bW.\7.XB쉛JJђq7rAf*-t1P[}Be<Xg>]6MxUt2a @ &{֗Tg}xG݀mc6 {Ǜ{"I^NfS tŘ0Dyvdbޑ"@w I 70qq@B]4)3eb$HZC ‚p q/w ~RX)Z"3کGP6 @xj(ܫ@;5vaH&[8IS0;d{! P+.HvMȥ#f~[+l\ >8 `&.Qk~OLYKu^)zzYr,r-ո/u|$K\/HR$E^y#wo~.M@tL!%pjQ9)d;}1(HwL,miY{8ogDLpмx*Z8>#F@4%İ|T"YIw|>}JA0B-e5 S%\g?2J^RFi4mQ_ %DcĈ>-)*ot1s1Llm戮3؏lfZ T}-ͨν9(lZHR"+{۵qlL^"G~lE{( L˂ŗ0 ; w"|><|^ؾS TX*dt.&&YXhB. ~26f:X2g\JhYt;:&nC¤Q x,<,%‡bxbQa313=){~q6lsZ.: w J+eIvBjKn[tzt$͓GqN>rxexU@ q 26/ 5tn{DnSa"`1ckah9']9=uɎyçfe&9Ií{Wݳ區}++ ] =z'KC8 =B;k7V^ .ĕ@}pqnǢތRučF {u4TTrI^X;ZbצnÆ>ov?S.);u0 YV&эUr?y;/ uNjkq4x}x['JTG%] Qc=Oha[^jA=`[;zN1ڄEݬWu'::Apn(gT Kʽrk|\=c={HyXgx{r9FaХw 8zûmz(ûބ[iڥ,ISY׫BHް'yJ o%BDh#P-L %J.S88;ج0'evS:1j7 !c=ֳp# }ΌVc!/dhPVl+xGeU C~Ufƈ1Vȫv0ZmƱ\2e<+I $ޤGF%Ic2iQtN];ggHOB&s X/4`n ";)ߤsif]b$;8i!@K0+'i7A  {GA̱(CΓdB6ປG+g{2N9v*oPL*ce #@xQU$;E#jH'ei [JNP/. 7 gƅɨHTZ|XR٫ОzvTY}vjs`Ye/{Z>6jԌbgQnLes `e.YcU-̦U`gk>`ymէ@ #tNYDɡS>^$Vm>q0 ѯOVߊuCiM&As`E xMR(IAoHݯJ0GkU Z_#Y - a &gGώ SNk?{ (!`cOlؖ;bGGgФ|\2wTRgජMN'|d?/{ #|Y=}Y涁ǁ_ nB&x.VSɋ~4ް ,uq=zg 7+( z1i5Gr:3wֳM<'Ӝɯ4X2M0>xa(F#![_|@Wٻ|^ݍN#?_Ʒ:ɕ@'V De_t!͉w$&xq" dN l;F]{)[t7t:"*M4)12˷~[X݀~WX@/:*y@R*TXAK=8 '.sXù,sT 3.g1I9}2pl5on3o2p/n5-O6Yːߊ[dm82 ʲӸfE[w e֔)U!\(e擀 $䤎|'H)WF} 䤚*d qx 83y ΰ8Z3Qe_U6T&G!GU!'z]%@)u ?:"#Z.: \c7גU3`x %@w!˻QW@E]aX;8Rgh?NSNE˖q]NURBR(@H& 1BkS 0_Ő*Yf iIWjkHz s8N, Z D݉ ?Nr.!lK]Jo5g̝9EΜqzzIj%n$+bcNݙ\,7Vw<?HJ,Dq:ɡay0SM Շ7^5#kh=I{L৚UېlH $*Pq-BTس b#~@t-ʑPL{)HZw}yQS [E{~5w%ux?#;6RE[ŷlz+^ƹ4i[4W5qe؋NG55:qJt; cö ΰ*t7!~T5zt|t|pDf%3fmÏGo[Z61L";o?~<7gJpOeCkm5u>NnT #)啑GJhM;[A7qU%/Q cb֤H T$yۅxJV?{Bt.F@E.܅Q]An1W'JƗ`UCzk ]xέ-\[r%R/sT31u˄P` BjXB U %9hr(%O.D#,A3Y.XPc/vO5xi9wlj!,#J(GVĂNNap:eCX(~ >¥tV8JwvJ`'pJTb8qͿڂ¡mtZYrx;%y[D ZGnOCpdf%;P冀=ٿoZ2`hU.\¼}Zȳz5uMʠ ~qjPJǧ kmHywa>94Wt_+Dg?~hW4bVii/3:3d_wUi!.Kg(ޖJgNz_D{~R:|a0[~8Sg7 2,[d>`Fa#Mׯyhofj}4>Y_-LD,%a]^WϢUF_ؠ^u^qF8h2@AL8Zq,Q>[#HrIOJ (%s3pi䛯h|)y֡ZteE[G߼ {Q-xW;4oplQ*`*qƄབྷ? &Y3`N~M-8C'VB XpBڷ.(qh$ kU̠$`DZq#|rip\qgP-h趯'\:Lp+2^_Tb%w:Vҗs0:z=4WUd-[Sb8C2 е3vIª *~Y VZ__G;ky5hG4Eh VVQűPMPݶhcݛmQǓ88ioVFp̓e:n,ITX,΀p5V-tˍAj 0@ \&^)M>1>x T[I~xq#L {IGV;%'ab8bJ!~ͿVLˋ.~Xn|i6!/Jw7||t^myM |{B`Ef)T?2[% Q!.s:~׭"+%?.m:LR?f{TǤG.žc)%Հ>)[_v1fBQ'yƏKHYv]}'X5N@F<@, [O$n;UhRǘ^Bd"uY|?\8׫d|V Q;:,+uWj7J}j1K#U.;X+}u,\c٥.ۯkw:vIYf1Bb:WWG=[(̺) a5& Y*N-'^iѹ8kŹC"] x+=+p{o5q 2HN!<&swIvBKF,)Ʋ[xh8[|깨 LaC>_d${Z˥]?(a,}00TapFgTֻLvgұ|6fulHٕJ(pw_Kr i֐kKŧNni$! Q]3j:m"*0_ߤ`@jUj(L[HzEA LjSLVfW>+ۑbÚvʤ훏W% 3sULyԬ:jQW2wIO~ M Ĩ`D?U rbQ͈œLuL66ܦx%~nLV$W>} X[y Lo{dyC!MUႛ? 5HDbQ ra#9)rU!f/(5]d]qéU[J@{CnJ T/*%0$yX<>rJq?W2ϾZ*G/!&7ZQPVc^I.u]~lbav{餤~U6 Zis"~E:oUZOB;)5w1 OTMݦ`XԖ1ĆS='Ve-Xi>̨`Aa5Xr8X.bHO̠ .l54Pi)mM{ԕN|iRMGF }B{k'!#jxv +>dÆZ3#l<[zA1cWh瀱Br} ?>{K?[͡)90&LWXꡬ .wu:NQH43RhM+B;p!gd$"D6v4P^-U\Rh("H ml{nyj*8|O))nϧXs;OVqi󋲛_ 8RvRԕFRl@c c0)ܮц$ѓ+Z͒@a';lt!d\`{-a=YQ43:T6,u hBjg Bn$*P+~64Od2U;MV. rXذPl0) G&ϳ~V  ѪQp0qÑiFK 5 wXSyxP"sj~\wpj `+~T:#'Mxq/p{(<~j5GcBBlYjFY$Dp`s|JU(EUr}`%XbbI8\z,Gn{=}?j{Umt8^s~*[dqPhr|{Ln2(xrih/EE099dL_ç5&*a?ĬB J[b)t0yᗊ/&Шf@eIuԮ]>OMh,RS81AZdm;wf}n_wg6#k6pλR(NL[*YoR=|v墱Ĺ_x0%ѽ0:!5.疹\~b&C;j(V۪ZS0E:'EӞu3L@g0 IHh]*j ܪhǐrG56XBwoq?j]YA;)c @RjXb#DQ&z(lEl'T}!7Ye4Qae+R멽cUG;ɶ "\=UҮ^-y6NQFD bbp Texne׻Ae} ѵ(iD@"BmZ/w|AҲj&Y=0a~T$Y҉ of1VJ M%I!v!Xg,`{8S/ d$8L&x\C:L}w-ix~q6ls"=^_?ڮ3/s uq%u~#VR^Ξr(2>e hkl! x91VUlPB'e͔3]=&vCwF^:fJ4vq wY@t\z 1cEmcBUaYQψ>!ӭx r78:$c5޷[ 14?a9c dʤ59A WؔMϑ{4\OώǜѩvgHKVDReC/mVX#Țxdڬ"f0V֤y\#?<)!OLi^ca0Y9;0pK]4MȾNSX A#sg+&3l4P1|d*ᖘ};nop{~9<iėJ=uh@PuRtG^℺g{k4ߞ+UnKus| 'KVcL/1e^?I "UIKIbǐkwNi^䳢c4L_X?I#IfAܣ~8?hԜ7.v2mh\% _CBM%[Ie<+ѿq5UΈ?+&QB;O*iO``1@i8KR:j#JQ腍3 fǦ{Tk{aΞ>;guNLp.#1ojc\BOBU':PcGLXP@cHJ]90g DOs M=hkJ uQ7lȥ`- *BϦokܴ:{jA:QTLpPcdsbw:Tx.hn/oRXSXVV_'} "9~Z>ѧw nE{rNAC?z(IN6ZKs,XFXU;H !'{%ROˍRҙgsNzO&2؂|c:Y,1E0ImdU˕ xhn@J]j& =6= e d+)Tx^yu(ql:<›Jl$@bv(t;P4tߨMP (.PD ?3m  kzR2 9ѣ_ϑ)L]5\cNB"sm65E(JP \Mx7~ M}Zb|ƒۛ+}hX4b@", ĀXJyfF~r{)C;*NѓdМ7 @eW6oǎfnIPsݵNb2qlzU}u<:qN6sl=|\=6lmyzu5'+M};Cr 6g !=n9fcE9LýRfm!x\4z(MlԤ@ L*H8p_?"{ÞanuXik(QsNN;T7TQ>9Юm4ZߠF Vs;cqr>V=uAV "'q;r{Z7AFud]ש(UWfaG?E:SaF (Bu%XFs4~-E5dBC+c9bꑏ #WGwoV"4#V:.MaW[K)/q)Hc.P UUKLKEa *f+A᛭Ƿ/d騭@j=aW8RSb4.eiHg]ro^1Bɟȁ5;rܓ~Urhè0.lvz7a, GjwG9Bƿva'J& ׼#.Bv2WuaAhKʡ:$`P&,e"VOkɶMBp7e-}9Xqk+rcasI>Yn*iѷRNB Uԏ %@$`qmRJ'+2IU5 oQ!_xp;LE9@ݧ~ tKkh܀Qr.PyD3wG`k$Rqn߹ͅSPg?pgH>_GIdFh.+wr ڣ ڃԙeKgqtlfD%Q:Q Ћڎh0,Fjޟ\Caz| tZ.cht['?߹w4Ҏiik@FvR7E%Djj1x`I2@B&D붛yة8ea6eσ;r?eNaRHyfc ,gj)~c=A'&AG{:%^1~*BͶZD@`g^(nٷ +y1F|0+$/p=`v`6;? 4E%q5]*<+IN<}DWM)[; \.c.3ܽ7a6Ad"mV@f͹{/juT+ ީf>F&h.owڊC*Se ;n%^!% D4ɾU@4t`Xy[%xu>0' oQ3*Vɜ@θ^{bػ4=jwAyq^]|>x?*~4{Pұ1tKXNpqj3e)m{R~cY~mռy|!{+d3^ͻ `!uwFsXUA}ssr{`$}T+`VL^G;[?^a;ϟ??`p_}ouMX?l*'cH u.~th,K;jW[~"PP &0l9`/{-v Sdfgeڇ<(r{77ᨌM]C[_f۱e;1 9v%tiҺO.?\ B̒ywϿ|}5 $wHUsO0fբ(΃l]9nYܺcw@=y˪wVglzg^I׳lOϓYe(ָ)v@tJ7:JmZ59DDiF180^c@70P.B#C5FB/c!<n}ݺHF눺?΋o{V`];^@{>&+@l!JSY;uf-/׷:օ+G!䞙9*"r _dcX9?cK2R$`.<4GVY˧0ya2:A0{v.pRdX _567%=37>#`@Ascٝvq>_C.T?FjiD&[}8^#Rh-i(k 3s,P#/oPr$}T+ W`3Mzs]fɾ̰k+7~M+q{]h`şh,}E9} ɮR8[y?k֨>݆/D$WQ/} 8;9Bt=md"̂L-|A7}P3 "+5E\ﻟ+=oHvh5Edw\Dw8pQ,=d< \}h@(d CM#pm.-SlWrv8 Ȣ$ak9vpqItzo=">5& m[2Vx*:S0 TǃٌT=O L*r [N$do/V/,@cNjdwpc;GjPE ^%78Ǝ3ƚ"{,hU]ZbvSJ#\1nv?zz0p}J ]+5^&Ž(| 7^?zsmJK~u](כ`#q|yo#KLzo@  iՆ]/Im@U Pme>Zf#ȕIC{]e3v3 xͳxk299DF#q%2smJ:K«x~Fl^{|klBʝ6uDԁ`1~LL+kꃨ#դ qB,'߃q)ªbswp<}܈mwĭf(%\)Rmf+M1z>\v=Z45t8Cud$]x*;/#;ܖ$|%_5w%!Vq; W` Xܸ;a?5Lΐ\ 6jR600{A,(YQxGwQ,7K⌥ kFsU8m)ZT-KقHҶ߮,n]C5u~=Еvý˔ TsPa<v>[Tv .Wؑh>ޅiv,WpYE_)Kڥ^_ۜ#.E'gD̩j)^5IFLTr'#rOj_KT #6*bK@% Qfi@E.t~轊)ng iDZH?ޛ,_nl,4c2fs5v#~\Bv{c%Ue )7eй Ն:V݋Y-@ԫ{Z4P7^!ckp\/M'1AXկF S&1U 3.J87_[,p79i)`94(GsHQCvUɜi#8R9Utdq<.ӹ2^Q.5p7n{E/\\+yt6 ߶ߴyߤ…&^R3[?5.҇իHO!<#N;93))$⚛Mm85zO1#St7Ed}6r1H^<3sSx5'^c-mz/cTn ")9F3窚W.@=)jY/ W|is~QeHqS _67De_Mv(mjv꿣unGceW[B J;nyi4!f|6[=o;fl;zRt đzMIsj+iSH[N>T| Iq蝒ksR)%-vQ";=i t8y6ϞNK%َvn-yvWm\~vhI&[{ _nc"F>o=jNdq_AnwN$ ܢ滺;=fF%Io$6I 0Ӷ pL1pƮA))q ͹Hț1ɏ3|2.ul fZ9ANwW,[m+l KutmzV UZP rSܵ0Ω9zsl %WO0`/UλbJhBtl. dw8<.T2 LX:(Bߪm3lH҂ {#7utņV:j{$D42If %[iv״HX^!ڗ f27c\AIq-{P2l![w )J{e6auSFA6b%}q>A(St>Y+_LcAYNPeۓ\tޢwH@hػak큳hԥLƚ&}apv5fÓɜ8:9D /;/wz^̻vxau;TDYR4 9~'ˏ\BL<$0ocVטU$ E~R,)Ae88Ia6US! -ISpYwXU~*}tuR"W췙+^+]^S=vuO[V_0\GW,P=V{Pj0{hd)dqugր ï_{Y6Y:8 /L'i *4V%(X`ǑA 2:t$raʗ )=00ų|1C n  8ՙnW*t=4b⡄;VdFn3\N U~Lʪ75svƽd9S^2m1Sn,=kbW =i.^t5" w /\)Oh^h37Zș`XI $ѱMLк#h]4Dy7h|OcYd=Aykd[-ܲyaFs>OxoDnUX[8Dn׼ؐ7=R&nxN cWT7f /8&nd_m@wѡUvKY\[$6/CHe !Z6JA_q[ ;RJ gs%  ~&J}}d~qb8ꞰRU38gLP @F-a8WxQh;ٹC !|,NmnNc=c  cjS-B.л.ꆐM)g9$d,(-$b⮞Wyp=)VGJ̈mXLdQz!wֹeߓ YdHV[fm͒~0Al *c:~{[=x<#(ڼ@3HE#K,A0t8'O"p_ ApmO< (zBL84O\\MMjs?_g#14HdͳQJazWʮq:תn6Mi߷/mkq2eHӝ.0s~r[yj#@Q^mB-]~4@F۹Kl68^آU bBKٽMVT\}JEcml8 rnm%6L#8g{} WPJ6[CCw$"dK,vdS^Ϩ,.;z W!;ĒeD0\ P]aG%yl4 ƽ=??X*ӱF:l=-t M_ҧAuR̝MDrh˛q M= Y cE7OwY^?&F2~'dl6I잽,WSA79e1UB4l}s XjyupR9)i2X,?lM_DH YyHdK}tL'> w8HExXѶ%Ȩ`t>?R0 Z?-\1qʩUlv#O/"eX?.X+#fPU5D:{6(kǷE4 (pYx[DS.BхJv?FIЙMck vr4EqnP4 )s:v9L~m ifC0.IV:n\Zմ^Jlw!<[W[X2N6iܱ;HHs&S^qC$K% P"u (N-f#IA$ H{c㼺&M'ဘ@,U|u^}ހLOQobRl5u%7| YFnJ(IJb1ΤKj}"xTQ2@&|^.%pR uR9b8.!ep?[`Yjͽ~tl[cJLS[ڨ\&~q}zoi36PzxFt1y Yi 4%Y[8ׂb3D}go^Kl-E+/:?t?v.'+_T L Su%<8WwrIA&޽|?lAQKlpV~t@!~NKf%+qNP-leqC,ݏ#_ ~RGY.9Zub#̫ ӎcvN#$?^}vb0e2bʛf[(`(&@ u^,p6$NFuK}M%dɓ*_";Ӄ& P*XޏѠYIJe&{_ <( z[Y^ o^deBo"l902 Z@ FpgC+#W%90@U,S3P0f@#*ű2$.d4yP"jhbI5tcmIB{樾1=1 %& àB:bVZJ@S!0qj 3H)m_;r`7KV7 Ґ,g.LujR&jbk\A~l;껉nI&l:!aPRt)(މg٥PkB0 X zl2L@6lljꗚ:a1zB,2J)Tk%94d:l6Kٸ԰3*s[%Y|4ۓŠ~Xc5p%g#;|glRjxlG;B1Ps/4`st{0~7'ۨфbu}/W(v[D>zvFyu7wK߸VN(V"բA7kvC QN^p*d,@Top.M`v=- e)ۅB(M ~8k|W5ZMl툏vG;юhG{ɝB Ӝ6-jMhVVt Xj[2G{}#M;?G54} g6EGBu?Vg }sbHY cIG((N06>G~K (KEGrAG5K2~j #1k4Bsbk]}L hJBla ֒ȀU![m*'܌ g^ڏa[TBBdX>qPyh:BofJș'sO(Kܚr-HȖá7kĄlt# Y/ereYt qœmחz\y:u('W݈yd^D~`J8AYQ޸橺e$ݎona7CwmYP?[)rA0#Ec}#,Zqt@}=Wl! GQ /̽WO%weba5vN.u ]ҵ͗ Ճ&N3$(/!rtIꀋ 1u+s;_6C)+lTQ8rxO :"Br+ 5$xnh]1[̽ЉXVgA(eLFiM 䇡:e d@MyM]9kds_ ǟ6kOV!&W!ggi_L,{D.`'Yv>K-r)j)5v8s=`` Tw.^TQ,%hz.dqMXo𓲝ViKHLspDx0UDYD]t? m^ѵ$($2]i#xDnDݏ;G`%;hPld odkPpQLA#ЗGGz&I^gg  aNk iaJ(vmc0g~]:/`Xݙ|C) o)'UnŨZH뗛 c쾮 `Ip({`dPL.`rVtA0iLWx~DR T*iH̑ fi (2W1q2&;ET:!H*9vF Ghnn{PaUP "ȏ'Ȭ 9,p?;0 lR4i,y|~wEG+;P2HSO+֋ p(pi ;G}T,)LY6In)fF%j!7_  ]Oق$3OzskIb1NQ<N?Š'ܫWW /y dvbh'ьh 3Q}dvY9DrIe|-ٺƙbF$"u3 bT[G2>z# @lH咽zge}nԿ -CwX$Y@_+:NJ:Epr e$&.wz[2iC; T-LiOCQ:(ǹ` aN}ʰ"lB&弻0hI(Mhk}#єObXcA~Ik;;R:5PFt_+QP8^AV.HN`X(6Q+!jGѥOIk(iѹ8k.=:;TT75gw/F؅0Wo^k(oʹn02%ӭJ?hHmGFm]Q&`!!Qv|1^æeŸLn R ׷m( i y*sPI1 `q`YXIa^2Vѽ5WZDD􏂾ʢCmAZRԛPtBc(sDɽ-ލnC'fx61Z|U+ WB&~Pw%]2œߨ[f2LBBE l{ !'^ϐkDOj&[d ҩ>~`ROui(P ylZ"xfP>^ڻcl>MXԃ~H Xyˆ&ʸx4u(7 t):rh ^uodeO#gfW8??n8Ox ܡjb;?8x跎_1@Q8'+zvt7a9TlELTGj8I ]J ^-I,!⷗kuKX\z\w(1rD'%BNӬ.'n9F17؏[%͜؅B[uiY:KNf%[~y)d7D8q Goe ;oiTe|& -cַl\/KE#n`RD2.T(όcS%7M [#zE Dyq"@Q" ..2]/ hջԂ@)86dxJRi=a0)8iNћM#NV7:Jodگjʌ`+GM!z*#]zu彬1!sge=3!pJI@f!%!?Ty`B!u=>LV]Q-+ "M._5h)ꮯr?l<^/b(h-WmŌ1$e7LN}RPȥ:4[}xi;»x' E|?`N4wMy[3-tW,"vW*bJQǭa ' ۆf։ڴ36 zZͦ\8(6;=ÕȱᐢTG.%u²K-# ciX/q-݄ã@O)z=F$@돞>*:N ":bҥ"H4zSJQ,k]u*j'&tt_PL,pcv①1 u9i|b 1҃B'cMY#&.M] 15xNHdj mk N0[dzI@8f_4 kMKtIoȹ[+eOܸNĚz厄́n:ܐd@0'Db/. tbi Lh0!&ޜ*&A. *Ci&ʅhXfF-КEQU"dz$+}fn4λڇN.-`l_ȾJT.AB1̕nZTqs@ aU)&2;6,@GWGUC;FSRLLC V pS*b P hf_Q$5SdPZQ]:1!N9UfzV3cZ&^"0gȧv \ ' C)t`aWdet|c:W$H‹/2`;bmJ;zR4L%އ0;]%VP !0aDB] NuVn9v]I%]66|;z+~OD8 v@Ƌ~:8Th)0IzBXylj5k?xj9֐D'DwwR3ªXfL6f9mbv1 4ba'W 3߂7XZBs6k:W"0I4-Z;`&)io#BDAo eTpdꗱt)2؛M&j.V*=/4>dʽK?xnء-%Yѣo$+dZ ݉Mƺ0UuFNO5B\&# Аz)mAOftKq?L[| '>Naaa r@u=8kETYaɊKԗ,Q =4<,Ybj}IW#9u`p)īQBZcb%2+Bj&ŢK$.iBvfcJ=Wql'f:$Q1TD+b %؈K0$“+>] αJ7Fj o@?-Si]nf_ū`[̲J]@[_0zޢ̼ 1Ff!AJ̾[kXE:^n'<͓E'0 H^*>tGoڝFz?+e}p4x{V}vwtPTOEV2K+¤k{ԓS߇n:fߺcuK~n}<8Woл=3M -k3Æ^t _jx5=.Hhh:.Jo<5f R54"Bd|A5OOJGku|E,1P2ْ]4>p 2lN(hu TH`S=EcEifGIYlTr sҸ=7&m <3DzLQY4<# *ɘ;b:lm,i3mCEꏩ¬t`UA R4zgI^|58ɼNp&.}M|8ɺ&VGnI%$jW3Pg/r0yQ<^G_/wi}_<6t5"e3}̾ m"9ކ5,M+YL9Z|/\A)n_Ni>NRt$#S5Ps&`GIX::at ”Vtkb/7Jf43y]2IyElcqu/cގُ*^(lQͷ @=$ t"b94I sj1EBS,-2SiX,܋Nv w7؍pq~ty#z9(bՅv{ VC tz#rK$.\p9j8 3_kz!R.)LW_"l~F ޝ#(oӋhf?V LTnS6|I=uwH2VnI(;dաj$]buc߳>rxR4F(*Bnl9DNX"!;x5uZl*  Fޘ!*v%wN(s`ZMKn\&[iβq=uHo\PC<8@ʷ C.`Ew.~A TwoGcp;̦DQλ_`_pѤRaeTH6r$e;)9ԯ08` ?% \;LWMLCU!ytNi8k}mA8`5qc1^ȏroy*z}_LHq:])I^PʇȒSs2s];@xVZyVA K:R<9] (o{:<%4&#L!t9HWk<]BlEV_FϜR1%EM-`c-rz5‚\Xz:g*#>]fM?cH H-UE_a J+77=W7uTM P1 ݠ}$>A.>sD8p'%ď/,9pB3. 7rP92`ܞS/̂Wp0d * G,[68꣛jcR').{_q4oZ܎ְGj$ReF蘅',4|ʖOD0V,G6M$7]ܟ.Ȇ M=9r>=*~Xe cc1\p;7[=xp?(EkXeX Z/Ï׏_w/mѡS+Obo{~ŰHVo z[ XҘ<`J)JND)Anx:#tu0.s{]GIaWϧUHEAz~`VKP̷>w@kiK"Kp-qN0M㫎{SE:E)"3])4^ L6KW7pNTH,gTQ "=&èW%a)%v*/̰6FazH'jtzjHNf|f%8n؍eCۼ6nRXN<9b ތO?2. \FJEꍐﻂW;hk\6Pou X5R[ ,% PF[$R֡犍t:ܞwn3 :kuvv`*^ā 0UbOCvM?3.Ɉ]#Y?<(q -,M3Lu:>&PcQ4|-XF;gOwv8OG EO՟Mkvgl78yAvONkuKx=c(.AD8`Fw*ΓDjk!Gk6@jJcj԰kQ:װmO-R\pk12]qE&E>-;pU2miW8I&lܜq?1Zj)_II#Z7\E& $ siw7^ P {a𥯙'f/?ϣk5G c; PA"r.m+# OV {ؘDO, Dɩs+λvv&g7xCObvz:5b vi+Og7*%&oqDi,'V=$)m ^'c}ythNm?jr+_q[!)gBwSg)WFÑz8m$XD“(y%Vm-85ۯa63Pn|R yƆeX7E9hO4З_/`mVfU+nR7,;,awWޟTOfqSxQVN?0v,Gv1$,L5v6dЏRD~JXӽL+_czs7*t +$^31@f,]FkXiOd$Jٙ;:tK%XdQU/Tթ q5jC(Vnܨo>1m6@n2Dtj1e<@cDr嗸gj9a)\DVmV`7R85I4IlfEHmbS[єg0R.Պ/_HFZ?~,&/G&[00-(hb-Jx$U&S5I^>ɨ+VrO`B6J5K5c&F+ A)`zkiGbS7Jaázx$pQ,p M?ŷEʜr’-8@s Eb-vE< `"MO1Q(߻]f,Q` ?{D<Lh \):):MdxDT&!JWS/^!KyR8;cS(\OkP+x@O86A-<]̧  D v+nR;%U"Zg!(k9՘.x+)1)X,Vyru;|G LyDqcoK/V_\ 5WP +3z!H j/ƀKib8r/aޢ)AD3.+O _m5@("@CE=SWXǵM%T9[\ E`a3K\R/ fX}?W̸+•k%-$Fgt1h`?Vu@]ֲh;4nÓ(9(s\8Dtl^ %r7_;j%=;5xUd[Jz=%oemi5/)܄:'da*9hX悅wlKlhaEQЖFqy[Ā=IQq]u盻OM)ts]6%iE>e&*hUg[ Wkn)ϒ8>ֈ'X/ sw0Z^mtD주(j_IHy@BJGb+ɞH%h2` 1+(>$2C8vHx>EG)t o,^:ߙuˆm!)[N6%5I+Mܬ7NAg\[IE1^ds'=I Xv zVҝn/t]j5 +TհƵn<7:SR_H--NSPI!K |Һ$JuյMhhX{Fr]&A<+B3%rL'#*ž֦3 $"YHtvtz}8'5K4}s%!1$rnlIc#tzkeۑJrOH_J>1{&tnV03Pq͊ U2BlD^9Z Gxpd_O%uA8x,*zi9W %yƱF^%Y_HS H'R߄K2E`Eڥ |J7·gMStL]sn PFH ,z{ BLyXnGz줵Ao|}IJ.fU!~t`4ìܛlg:~TnLW@y`N72 !r/) NXٰ]mۮJE~׎@J l n9Ҝ(a]2zkKg˯Ox!D݈6Iyɕ'iFRu`qdPWX&1&kP;V&N/+cv u lXipdy *C H, j KRA.O6hˠ(n$˽UkKH ^="d4ph)Bb-G,Gj7> ss>㙺rh1>px(#ɕ0⣪nV~;24us!L#_r F"dWA9X@@C=ALj+.j 7$s֎؈۱GNEP4ރ'g|9<\d+*35d_}-"d*[3b#MR<P+\$)U1;$F |+_;{Nd`f W0qJBlMH\$1z"s[o>Ⱦ;6KN@Lwpz^;_Ax٧D *peR2""ku#3>c !x2]$pI>)o >ОS(]r}c4,f(ElkoZ|wY*$"!1tzQPZR"$bu%#~;LZNfK!F@'@VƎȅx,0Q .2GmnvXI uCH'|j93ģQӿ<. V/Ҡ8ϛޜ+gW;DOZC7lÃΖ4gHf>F00ЙId{` mf#j 7@$} i oHTbMy ~;5K&.&Z>v/Xі?aa&$\7Fʔpe/ {Y| V+ oBJ{c(q6QN>Ux&Hqf'PY1T;ۂaO20gD%U-|T)P E::\|ͤ}&Oq:M~;/ɕetUHu7J^kTuiNi=߻ J$o #\"/A=E2;JL O[JLյr}s:[*6.V*RJB q ^BP6]ɝ,:8B|P:4u)6r^PYkbv^\!"9Fa"5 %U09DjSM뿋P)97Jq8Q'}$C H_|l![qmjKw`b`^ֳR-Gys 8!EYS VAl HrYgD xkD &X@*ɖgY`Gnq7V`Ҧq YSt&3CHS'v0гrteDA;ER,4~3=A̞ C}vEb6mɰEerWm^SXrqH\LVI0"Lf⏨&AY4U˹>oF'FQd%nc} M]M{ُaU;||МfyR|2 NATxqGDŠ| YdL6N&@wpjBڍ d7XC|IQi[qcЁ1bB/p+L熹LX;FBQAj}R ~$Bo@9}^gdTH(D"RgZ}v.:5e$ -ȦG+gEΘQS~$#CX)EiZ`Uǚ0 )0s91$Ғ;ߢAGpN)tD4-,S:1F,CK2qRO 1y>ؘYU˴PR`S.jGj1j@chRY yE.:hi;V%܆$cO.n6-ȦM8"M) )Sw!k)D@`Zd%`*'b~m [DT?,]ĶRĻcŞC1M5%:rĕ-GGA|eLVO)cbe$`%iĉ'?:3A1-SPc=TɁ?0eq7׊cVlKѥ,]3@=t!l Tp/Ք}&k T,WDo垺_c<3=VEap>ZPwTBC~ tٱV.( n`34LԘBljJ r !n8FqU#}Ts Hwt&_a[Y?92?%=6Ǽ܈X5VdGfs_ǿXoZdV6 n+wD4R&52߀d< mѱTUx<^OӍ%^Q8'- p s QLi,Tl9\SqKpROJ 3E!,K  8E a&~mu`l.%&L ά22%mYm\ pKhRzN5 Gjay^JQI@CBbfSQDgkpKWW*/-D+w!qYq_Ѫdk,).|"I0SЉ0왣M$Bhv'憁OMtu g8 ^dj3pCХWR:j"hߩ?i:&RK 9d#t*#)tI]ܗJKuc}=e}=vLw*$}s fN (Wh͉CξHh͏o=L,]8u;gg< Nq'lDWiW1r{_}ڗ5h zaH= Ք^Ѱv^A 5Y[u"_tF : e'A']wj6,ʸbΈ $5j";A^%Uqg RH ƾu㣀\f&XptqYJ+*jTm߫AQ8>LY߹0/#]-,kvn+QH?~Weݮ)aKYJHE;Ea07⥋<*Slx1E**xӎzff@#;D9ֹ9] fdcsZ4,vlHi B|sZ;j+ H`kh\T+@|aY2[kR5r## ):t RrFr¥BD`u4dHTB`Q7Ym]R+/ƌ4rT&p\n7HSheE S# sfYvLNNn1`S!ke-8ћOMdp¹)Im?6g\l~7 בAk_sY#] bU p{,.`&10.i"jͨ\'Tr2l qyHE*r^4ᶞ MR;K[,>*@MS]|8eeSxY4{VL=Sdmˆ pFpꗋ jF-GQ3y:>8fICT)P,3[ 6E*9#"TM^yT,VּƵGQcz4XM1S70E#6NH֖6s xZnx()MKȮYf!D?/D?*Kle:S*[ߓ<Ѯ][Фe_٬|OQR멏j&Wп RH1G'B{ٽReD[+_@$ͫ{$"lbBm.ZDLEzd>杳ޣCq;dR#cxd cx,pa&4 R)GyMbywMbCh}J.E2!.YhZ1~Z#cjN_a*~tx$ӯ&Ml1t7R*5=׈|Bh> /FsN[:J͈lښFb݈׈fGjb-ZAr=U=`7cWï4{z(E}n;/d Q}U+qGإw`Nw:\s4@qLeȖ' ,3 9 ^ϳ؋ح11? dci 7*yMdԉ 9Ge6lRqt_&4pA A#j׆Xq`^ngΰj'$Oj.;g8~-~o\E@hpw1 )YM@6n}U{X( BIͽړ{Bcwvpړ6mojNu ExIu={}=eg3MnlOx%ݤl)S;?[s4˾MUJ@4!w uo֌wm/FiQ?k4>T`m4q6g<5\K8 ^Qngd,QNgʘ\j'\]Ө6>/Z؋ '\T ϻ ^/=7ڈ;^WW~,U=llXrb}XڔA[Eɰ/h[8C`iR o +RQN._l>ҘZf'_Tohk><N_EFȖ~!x4Loe0JWˌ%臵CmЕ2shv~4;?ο\?hv~4;?ΏfGomv]{6?ZlGf磻Vhv>ov#=[LB@ꍖkj< O Qע]ۙc#Kx+CsNJn׃(Vz\}4$xp BIzT `%g` B΂k eGBG¿_H9yzN]Sf= tjLpNӱ lwqFl/tcAGw֝[ܡ]2l'#WDB슋Dދlib_zz_?Ѫؕ/FL`𽎿WefL>:5~Qn~~]t!@ͭ0 ~c6Zy[Srѯ#IlcfmR>/4> QK~;6ʣ=|J_Q 2B`{-K Et0&i^7t d5X>MW5; _33=ۄ؝9t3o<[SJvwGi҉o-SsZ1Aݒ+m^\=!Sԙݍ/Q+H-F||Ju r Z^Yd)&5!t*m=KPV;1ZypX m bw`JN _:(9>+%.[lvNG9.8{@^bwaZpW @wd47?U UF TBD@b)vCmӅew TjQq5Rgk  PgHzH`ˎw ǯxnwk/x\mojFhW\iV{ęo7(_GRj_+o$ci#;{7  kPM>Υ.sm7U-Vƥ[7{>BP 忩AQ(Bj2VY]54eMjŞmJXN~dOmFUHK$ŞJߛ5OGP*#"\ѓȕlO&]_|''pvș0U`Ǵmw&߼$khFt2Z ICoc޾]ϩBue^3غC1O4omu\uZWU )2P.`μNcROhB˧;} S1çm[3 mͦ6!nLO~w`FFF@NuM#Zͽj  + ]BliMq_|5f߀_|ba3Jǫ8w`bbbbbZR!!iC|^ugɺ?ĺ?ĺ?ĺ?CC<?ԏ)6X;wZΝS?Νs;Ln-i6PΙ3FMoSW@M葻l~W4wI6h`g?r|ټ2f0ϭ| & }$--g4H rWmR.K c߸/f%ǔ9-N_WtȺib(=|h*wlIQ ^<) 14h Dˆwo\)2)7G놏H_n)e.sYxǗIsނ4_|M״yM״2h/fn\B]M V7%ЎcU3#S)ƶd'J/|2XT4) jau Cǘ4D%3ST{Vf%&DKPrlB:Vu;]z8\՚{ך{݃{}aܪb:ﻎ* f U_Dɭh \.XRXͳֶ5\5| W1q,bOK7~%&To v~? pcsʆpI6=r'E}ǖbu*>PA#!S[e@۷a 7$۠;6}>44/Ggq{rK|4zƔUh0,?sNRFsN{W`)0,X>B|YLiXt1OGh}$0l٬@bwT;n&C6ޣt"Mi6vVdHGY:G< `O|3LV^[E"83Gf EE6*&Wõ"DCoFO޿U\ނޚ@COƋ2IYhn-A=H5:#FhP<<GM!eG*MVGlGLCTd0uRL̺&"g""}3\"́ F!xz̒BipJ7ŒHDF}{:k Ƀx1k6f&7/xsB !x e|Q/`2 LmjtD eր(C[2.OzI;8.F;@4ܜlD1@N2k1;>~n*8)811Fy _R\w?cD|1g-Z>4(_FxWKwW}NLiŰ <2;ۭTcNᯄ -8a||ԛ>O`?'+ou5~oqaxz,!{0D_o^̡Ae20Er HnjSٽ>o9IfzDeėu#q:^c`_z_yI.Yӟ Nzd0 aiɒT7#7 7FTbt(<j>(؟[IG`q}^k=#6zx:Rc|Q duܠHCQQe:g+LG7`XU.b"6tzcʡ%ŗ)ҽAQ (JDTnӻVZM6LGxopnԥowxnTT5w jhzF9<a_=c5.}a%BfPmֹ_La>ib2Vd&Aӌ1Ut3ȃn (H%@m0VEYE`ٮYɛN|[.f@Y V\` ENܐ', ]sjF=.OBnK@|s..ru!>@%mQt6]ALZSkZ"ˤ.͗e`9;靿N`Hs`."7 ~ |%F2pBAg sHJ u[務QߙOgĘ.f $Hau_,2 Jf; _Ë_v`m9`hUg>;8;8ƫ'?0D4GN3Bg=Q_,$ 4xNV{zЫ V߾}7{ۘm -39#:?Z 2_ߛG34Ԉ9\|_ ʢBZ?$sgD-E+,n?3^+F?F͠?K`R퇼++yt%/݀ޏ++-X;Ve?.]~WƏN"wnY?GLhd?ƎLmrdGb7'i$2UoP{>mw:}apVx|E/r&;$-;">][Y6nN^_5ow7q-~jAH2X5:>ftqwk3"0hQGe< VXǺfźL?:zK斗FHL>)lYuŊ*V5z=0K67}D専Cy{d[Fҙ9sX B)8ia? j/`|^%oXk/7~w{[Qq8u@.z sV,xA So%M5c T_V +8lrxwL|t1u?j#w눻u: ^?M/[u#Np  0 Lxjkr{>J]?soLX@*t4c ʍ`&"NmFRBE1ֵX0 U'Eu^eTzK<0^8U j8D8B?}>vm@!R0Y#eV{Lă`u{cK~,w&Q31%tZ2 IR M]e-8'#a1;=mH 7tC"$Ѻc| }ȶnR׋#ϱ! UJ4ނ6a{s@94Q*d{flL;ˤ\LŌ,n( aDZ,_2I[4CQsb 88Tc0G/+ZN|䲓|2k;buA:x#o;O98P)3 :?؜O9'C3U1m>D$fBR3S񕘟 1b2f[XFMQnudw] J IX يha|)v1,ѹm!N1_pԊRj2 3Nj"$vlreCBrז(}vWa6k[F߰*PH?V>XHHE(JDg 8bT'Q7L}n|(>fJ*/Ýw)%p-?xT_W'?Ozp t fłe̖YTt:9H'DX_ޘDs4ؾn#m`Rp<F3If0M,\MLEԗ@tw^K2v;RuemL $~>iɦ,3MFWHV'r$,oR:/ ( ٳ c϶:@V2|krL#υ]@jBWqO$N=HTiqqG7HT(dfhN@D2 H( ?k7}(Vr(ԌIMpùo`sL,M|_5 beG c\LRZVlC[5+p{'{~SK PŧԆ&ϫaoާpCKi#0fBޫ',Ќ-΋n4Nk#פs]Zk0a%#l$PpRDp5t.QKʊcskꀦ>p͇|<܆RBāvW7yt[\>&}D%i PlV&k#\]3hƇXHzX]Gɭ mx;ulѕWYnEUS>4sr NI+:: fF"Os8ÞCMJ_yn7%`rL- x$?>9oUE2焖,k3wH3(C APO =q^f46+ge2v>P{&wtRm2iJAAb]/hsi!I\b򹴲1tvߞtpnрoݩfT|jQlPvNz~whbPŹDQ٨CncRe[ȴ(0]fMM*G"mV%Dgihɓ6mt ?Q XdHA2 TયrHӲXDȓfS w->'ad,-]f e7y#p^{k-DJVȟ+ȓM>۲lJRANҜQxڨ'*1} &L5>3H l 9z17J-sJԘ|GTٜl梵`R@mFx-7sF? <ԖRQuìC) 7Pc1 T#w>MuL_;.&%KKN]Ώ8__dF wpOb6 aw0j 8F۪>|QB5 -Q ux9]b !.naIFAE JdO+4G%7}F AYkر;Dqޑ'ĭkm!a| dX6π'>UbcVMq2C3O!)>7ʄ9L~129𪫅ќ~Aؐz.rSp^d0!yi}jg$(ɰl1>080t]<.م ,&D];Lhs4HtÀu)((σ)sCK^H̬=y  毃o5ZO# ,1$яT::\.qkEk|W`uo)Y˫XٖHOƦ&Fg:~wiߠ[E͌y< %B#'ߪTf71Hu}0Y +؁1%Ϛ0NǦB@*.1iJ*J"1QBl^N+{LN˹wl`X)B\T87SWÁGS =ś9KtKW۸Jrw۹=!$ CB?7vÇÿ!Q;|5tV4/F_ *.W#otzw>Dy 1FiPp!GB! W*W{=#뭨pdIi~ z"Cou 8W|j%KyĜ~% Ky9Y\'ӣĠaxЯ^I4XX* ؚ' EBݞ=b8_hZgCKy$XhNDCX{rmƈ];|dk-s[ &nJEgc<\\b.} =Z@R 0S# q4*CI'-\T.mG2 k5ׯiȯft F5ze\:?5W/|]Rr `H! I[c~AiW「 `P6LY6:2P9S100{hlp us2}8$$-f<Z\Y- |`w@ ?|)"%Rv]3]#cMeH^?vzJB…V/E?E_qYwڞR,VۢV,O_UT0Gleug3^BYG axSVr\Y={5k9-WZ{F,M*@.I3SLP7IOꂕQn g9 ,S}4R޿8VVʰH !S¨$ kE"L:*\XgRzatqJ$> 1ht|nHj@C>Nk6x"s*?>C9D+TR6&7n5`k'.Dwp [sC4 Y$ǿϒ'nA CY$v9bWN.BazںpCFbtY?{g"2p^K6I3M/rQLH:Q t)l4"*D!Y*+{ Ai7 P$,!c/ 5FH aW/ C FA+@%!7T:,)gXhW^γM:q3ĐLqNTv aK4vF}O MMIxt!LQAɢ&e 4=t%Mh,]j(RH-+ Bm1^Iؗb 5)\ ӟZ39w+}8G_rBe.{LɤWSkyQ1;8t- k4*ot9wL/d.})Nf@b v5DZ ԼV *Nj_)~N֐e+;T!B~%=w"?R,ѪS!~AlWRr.'G5)+ gSOn3g*qJHb$;ǬdĦ;茵Kxق1Dr>B` ;,` eOI+ gpŵ6>)_w$<K+ i~c+X0Q{hJa_ws7+(z+$#4CUux;)5`Uh^P 3JD|riVGUlԤ'!x]QjI ]}Y8>~fcӅq`baSp5Kwl)4Nx;ԝD`#ް%ltf<  0RF6 @#?Y,L+A<4uS'0v3x{|i(PAR##$.x_t ZZh Kt@0&tԮ?7$2lRIPZu =#W3Bvu Q8U8B+=Y+v [!lAC0`;rm:J&>p1Cڒ2ӹG}XI@I5ps[ \??!%3^%p☍6982*ۀp (nc8$~H h_`r''"h.w~rj¶ ?|Wvt.8]V$I8ıcAR0ueTTuw#Vר/ q|[2Ny/[Ľ]ڐ?~2?ɯJl^K06?cMjW~3韌C!& D2F~ ʲ)9seUAv.> ^oEMϦQ m]v;*Gŝ15ye`1AQ~Ds#5`PK_VAľ WPV V(|(TcImnt3aQfa8Pـ 4бqFfbiI6:_%tGa6T36M'`tW:b10~{ 솗\GR%&mJ[i$5( ^ Sw OR7(y8HDugTP H |3b7?ݱ$٫~a1 xsTyk\F)iLayԝ!pauԱvľH1|vtLYjX&!:a4жI~ج3so~9 qpw6]{ѠgT1K kx2~2GWV˴"-ZkmxqשLѴ qevôBsN-vÁj͋. iKnziog廜eGfa[iԝ6HrYzlW=ѝ=#vt k qKC ڰ%Oi23kf#%L»]T*{nu !$^WMw{] 2g'eGWhI)|VT= 3D6JGNGI1šI#1pcjuueTFd އ#㋾MGS+FA~5y?]Mk1 *ν]skqn-έŹ8.q}| =Q9yc |yE%e>d x+lKm(HTD|#SI<w/3Z*tiBkoҲyqhTH$Wc+|zD^(!rk1=} vb$ЎBckp"]҂AɉW%ɩJ~A+d*fcd1.9E5l< Ootɍ td2Nt!5Φ,V3kNwe9wnUZGMM(C*tp}Uw^4" ̼ayIR?ÃTSO#BpeTvt,#Uys;T/ˁ+6+')C[u҃Ww l%ExB-V:wkGQxSWe5RzQp,H<>I\?*+|vj–xh |(38^r|3 "e*[pԔ V6\D]y*BИ/4ZDؽaGKt6>PI8iH^.0E.qɮy-Q0ʉbL0$"j@ D 7L%1\n/ b~ȃYAf[kXFO[kǔ&7wt_RD~ ]2K4j<'x2jiH6j=#ku5 d| :&+N'.LLUt@8b ҈}!r\Hq6%iV4qHzVy,]ۛ.bb C/r/e5ޥiCPd5hϡ"&(+QW\*U! ^rOiWEo{! tv kp#VvZQ֢RhٹޟbZs7Hh#Dn\'[KQH4'_/W-3*C[ @D5n*@+\GSlUъYU  LE#(疢<8Pӯ ̲sUSK\ m}]:+gNC,5~w!tSĦm't:rU]+wa]`Ru !\[Z!tbcI{CgP?Ns;2VJm-b,|*݁FJ@q Phc R0 #aRAEvx3zr^j;,pE7x֙в-x{,)j<ȥ3-&=\M\?tፎF* >iNNZ2Q\FYP,:o [Mz1}-c Juđ>ƽ% #{!:: VRrHX7 z=mWMS=:Jq4Uwu&[_+V_p^o79Pp8Tu[{}ړ9pOTq5(DRb EQXa GuP} Ub5f}}[NźEmn7=m./^nK=1ol*i/DomT qϦɞNj7'nFL P1#%fX=_X9T)+A_P:@ MJzOyD;_)^m=}LwS+{wOU܅Q"aJ/v(۶]Ba |>PCQZf隮nH{9v0疱a3(j魢͔s0t㨬`zkAKgZsÒ0y 7]Lz0ޚpJ%'dn^nlv/2ӯ͑#B*`*$ƥ@Qa>&9*L# qF .pVѺ5*48:jim^e=} *3ų I5eؘ 2u,]+.P8$fK'wޖ2l)yS0䛟:W5YvΠ; x|1wrN$ozAZj[ԅC},"Lx3#ér$r #iDE+UXui֡pga$rEfޔZSa1trx9^EUǯ򗓽~oޡFࠌd6X=H4qo?t.x?,|;BHa@&Ic2sWk|~K$ػ3CA!ÛԌ7BdXB#>x?5JahFq!S^T-2[/؎'bf 3A(%2jV@ tx{['' WJٿvݼ_ewIU%Yx/%R|c$PnY6AL3(6/CeS8:E(4 VhjXym-v;AML[Km{I3#ù k.Zy8ajp"+sj=G (B©|'RKq>JgJ:BEs2 _3kUJ)GOђoQNkVVlKE_}z) 3;CPPhe %YO|[/kRO6!^D_% 5f=`L]4ߦ ȬI`e,ZuIT;]`<ŕYYzEiܴ~A\ʩCW# L:z=j"olWq֮[S-(N!_z(z$|kH/`Xde,í_Ns$*6:~ GdF:=Ciʀeb'EH︕k=B$ZyޥbCյ kMHz,\ԬphgGAÆ58Nס ~9}ӘZ:z.kT 8)(vL^_+ LDC¾L8~y|?St9dixq?%HɇuOeN- a-7;|D;j5Oo,؜ lECz 8r'#ѵFe%I$S :]FDw-{֠8RbF:C o俥HPR6Aǣ|K'o ۈk c!rđS[d 2E5H1+^ j v:F-3kT%l6\En BG6@_v |"3TL`\f}p$$zI5g\ctB",t M(x+%goޘv4X&{|_B"F-"ȈuH<_L@*8F/ٶAL Ǣ\v@ʤr GCBd%TW*^okDka6hA6Tjk<w`;\P-<0lk qh fLK/lj#ΒYnIyg'Yꃬ;@;L nrX[{ !a-KMcsj2U|-+&aJu?qX[S㪊=ռD?K7B_tT0vc ]𚌻XڏJoD yD ('gWRKX5=<|HQhA,OM CXu \qlX)ԟ2z :wvهc옢_eEܤhnʜCCh5ZlZ*UuMYk޲b7獥Rr()K2 !h8]S)D}A~WEW8w;?Oz#(om< &$+KHƒ ;ROzo"60{s4^7*(, mؓ IrX@䓷]/%l1Ś@BgHfs2ځ, 2nR&`HX:3*uJSUY 8|^tTƙ XA⪐V 5f`GsQZk%Œ0 3(D:HxVE:UIs.NzHi[Xg>w+w n+`2wUijsOs^pڜ Y_vT~vA6GSޭRNrئpp/ӷ(ACwӔ?3@%o985m6dX5+hu[ aw{UYr6e]CѨE C JMa):[ )qPE"k[N .8+FRSI1%tqr  s{yبw4R\Nq\CPI7]FÒ !MHd3EXеGP\Dayrߢ(_} +GHVzqa#B"@m/ =-J'W L$sN; MH)9g#)-I0 &'d>2 >|J(odSR#6 Ynw A9" A W&ڞauE.I u=jVdaV4 Lkexs̹3ոSe#8aKO2=qwL3ɷl~=KklB6mF 稸m}A&fFTllq󒇵רذJ5@TF9VNsZ TWOX֎ 틲5e~2Abi`]0,#4#liϺ݂ȣ}ҹ\M(,>(U% R❧Rdo*-%gl(G\7APUxFU#VQ,LDs|cU&#-bcrLkY1-Z  aqǗ٢5Y&kZ|wVp(<ēE& DptcCc!s^oe t?cȥ'l†K벦Jىܭ[8 ,QS҄/x]kʼnK&DPwW c\n+NjAadH4?mlUJt$R %KS2fRχw+9eb.1C`쫂@[b q,8]gQԠ8ظK#50K;_`0cyDIĕJv.2Te'3I"6b(XXya$ 9c)9u6\T1X tȏ0m.}m+[c2ɗ b,x@%+b:o~;b,K۾ں$Ab?a,c$تX:J 52 *ʱ8o(%֣U/U&1VliYty%Zx̓sZ^+"* h5T7DtN1*X)pf:5(}PCNxX`'AI,U}#ma@W'S3t1-2 q[]7 hJZE8O9d((B?hAxU#Q"Tj%@nQ0|cD12mUv( Ƕ䪨wVOpm3NXD?ʏ/|FzK, *)jn,6V3k$|2-.C؜WҺu^^(1 cTEgYʝ`$voZV5~&ȷU-L2j0\n3> %J8y=5yЩ(StKP<^TYn#sz)Yw.s[ \(*j) 2Ty4{!Plԕth7p*2<|')YO)k^HB# Z՝}-Ƭc%)oۨCV3_vm30D)zM2[9~(l %4:3{'h-T7og7G<TA`UhfV+Np`q]-&rm2LWj]X0?d)@E3r*6Xb,9E!H=`\c9Hx Z⫨|QI੫XK`_$dTi+zŋ'<7>HתȮT{,X{W+jqkDM FPg (w獇vEy>wrsᦂ>0VEBϷNaca<،R̳릝)aes'5{[Vi?\Q2{R\FJ;cd!;)y gS]NVlU854ySp+9 -)Vij|]Bb5`W%F7> ]W܅kBĢ#͙rB%e(bTMƋM mhHJEpDjZTЭ"Î+UIs.Ǡ'8ӧk$a )D_N*_eUk `cJN¹0 u3f<.˂DWu9d)+kUCB|Dc€{q5~FV_>ƎICOdW6V,V3EBlΝ"_E-"S 쑓vfۦ]Ru _ !aoZm6E_ +ByzyceYWg}~WaW?W|pmq Zdj|Q(* d,Ae*mD ,% s%&4pX{-WvsFߐ klW) B@( D޻hЪW۞iq6׿r']ǭMլXL'8" X듽W)9>lr7[C6cA4Hƛ=C7a`50Pb݇yBۯ\kL-ҝ>!ݑxπOga$;2'qol.e0p e9̯&3*"4#e:\nڠɛ~U˄ o)4oW;<:<÷.M ^~wAG^-;A!^8Ћ?$0QiüQ)9+戜i;虬8LhzrA$To> 8/dӾGoX|nTv+!/ԏgyOxIy2V5v@w 5 [e-Y\%X@m\9rLꨐ}]g'(%ðtD""  qVD*K1ӈ oU5zri!c]tJ@_ dɵ½J(7l5mwGڬ-+`2{NӋRvmo=/5w*@#J_Qjdkj$d=d` I`Mua¹9u3--xy3y2^K(m8~9GEϏP ujq:r9+) ./Z Uƒ^GZe Ǹ;R^XE〹kk^U9M V^w Mv/c>^33a31Q/n卉^<^XRD&-J"%#̥G sެ#jcOx~W-ځC*`wT)wס*F@.Xwls3 ;@;pɽАfb69jp%P`j<4x"+y˔BISRT k/5tQLO4*Y|yAxBH%r7tdŕ6wrѴl0 \t04(hgWrO٬O饶x^m(K9KEs[ ӓ}qggE몂`Iբ0O"Q dm^jmods+UuyXs(*W/$/a=1 H%e zPl4XR]F椹+lBUpx}*%mJRi9BPJ; a"cc®~/ݽ~G\k}SZ֫OJ*5Y%gI:"2FL!G et:rwj ~`^pap Eӈco!j 7v8KA2MNtXȗ̈́˾] of@xdi3m]ʑ(!cwRXF*Ib ݚ A֤30'<> V:>!M_,\JMNuvOv7,ΛF5yw "J {%m"'ܼg g$V%edhW{ϧf_b{?;B ޟ:j~N>+[oKLT5];GCNFĥ3CdV*PSVKOeF0Q,eEǂ#wK#5/aK:%8idڭ2P.0SܒUdybШ);X5q 4;Fn32T'q"B >=EO{;yM#* (Kʥ1αd*L93,P?d3n+sMJM%¯Z#G2!)fPS5=H\w"*2'9p7.%.@ږA+7ZP+#C3T*E* +0^r|[QA iggZd+HfJk?wJjS#?z ?msHBߞWBX pP#4b^)HpqX*IY[^G3a{~uyl$1 +)nj}f6j8T@6?BK"A8M6쪃YG|Nl0:!y4 g3i{H߈Kgٰqjq9bPv @1fŠa%cXR1 yɈl^hO3EfxwDaok"JMI԰-x Pֹԟ:aRUrYȝ .Ж~񻒭0#HCiGN4K܃XyX:+U[Fg") b M#, riojq J7=S}H Яi[67mدƭ،\ݕ U}lpt=gsO}({w|Xд~²0? ϗDu A\3 'Dqs!mL8{ \`T9g)(f#C;ey\Tߚ= lLbmc)H|؜E=˶ A`Ȕ!M@-hEEa5C I1D bˢz!IIÀ)T`F!~,-FC ANe6DuCK&`7'ir4Aqidn]6␥>辥9' 6*dGO[9/2 )to Ic^ 1Y)QE -~H9"WA&FhV)hh$j@P[@ 99QQT1H_\QN&b-W/֬vC6ϠP"0]Qh Y CtiKvT( tSݨEJN9l&d͋`w seDpQHCP)f뇐_\\kf(6TvJşl QJ(U]jHIC3D!c.hN <<źx jJPj+",W8d{|$Lr걹ڸWxa]EX\EY`ӝwF%쿌T8(&RfkwI]!e{ųhYX=mLxU7Afxk9]^C#i{\S!M*bfD*^,[9эM_@=fگ͑:XԲMe)8<7Y3'Ӏ+,?aTiղyUߵ܀3hebVJ Lb*r0C8l]/%FI\Vd<_o0b?z+ qW&w(^t)lowu^!vtbn'ߪYXt<9e)ݾuwpMf `bFv!4U#P|(ҩ~Y۶FJzcxC|A܅4џjs{H:Padd'ֹKŔb7[¥>ےP2d$~G3(F1ZAM"V˞;CG^غ/dq~epǾ [r?C:5I9C2cqm/`iUx^==.ENeU"rāˮ( [& 5H5#s}Q;M若`oC v\A*ȰCsLT)hN[% Q҂*?q?Qg%f?6]Mr0HI] &n'GIc¬X̑P*珨F⫐ M~qr9('^\N^cf#{厼w;L¥q &O6 =]sEo> M_fTu;L'L+qFksBlw"1A# acf5 :H5-?D]}Yst{G ?z2>F|>l /"|$&[X6E-]\".hi1_]("HGA̖>C|Q|'!HτM@Jh32xxmB7w !_k;-"s|ϲ&Sn ʨ֦)+zJJE1%)qj<52i ֍ZmIː z0pUES.CR+^x{H覞Fķ* 1Fmw\ӊJ28{Iu@E]Y$*f$JPm[(? {n@;RTxMjyW6,[,łfh9=*MC$J'wl(/y@x(^3}(@[1PzN; sRq~`BqVUTXqJ:`DF'֦4Rg0FX+/0ǤK̛V%E fRfZ"YC/Y6`&9CJ+L:fV \A#- zX]8X[@l%}MK` ݩ M#袂  Wؐ:q/(J O5hSGg:\uoC,=cyARMZREQX*3IJys{i>E[m>I7 pwP\CP)`K?O@F|ȗkavaژD&ݕ;T rQP ܚҹ)$F:l[vs>Qjadna82fĉ5kOt甋dOqtfqh8oIࠛ['SeAj]N-`W/tU؀-?p[*;W~OF`<I^vO@4_WnEE}m6?tx!݁oC =úJCP,ZCQŽ%T#Nڳ1E,ialg9XP`& (&h֘le7};#&?/FSW;J&:s 1~;NmoF Mp>!Ni6vĂ=>c `v?!"Cd2C'^„v5* DSa/Wʤ{m$&]=2Fv2|,k[=̢]swT+_;kDWFbB3K%j9 &pVÎB NN>pp\l;$8.tw?:7'x, (%, Dd"4, PXKa~%K|1\ N#ua>&3۩vŌR.Ot.!y RGȴz5S◄Ks`ʠTή`5|EU#jxw N0jɵzƶ[i .Q.v^ r)#zOόϙm8/&3XՋ  x8Cf_PQ9$JVkEs R Ħyu{qO]0Ak$gXjCR#5UJsfMQf*ʵ`B P|tȩHR><j<M▤FAWpa`aG/gwVamRI=hN 'V5ڈPaGQH"D\IMU>92MU{$i&cY.8؄-pt[1QR].%ͰhPNДb}_]s(WWsiat{#ym" uHd]S+Ve ,Ә8Nm\9.2VCK|,r!~r_c qoHiZןz9!XrHsձ{ÞzLf <|ޟ՝|{e~!4%OCWS\P[$4CqQF˙!D ZIuiuV9sJ0^ml|5R숴.Z$ #ˉ|@eYpb%A{=8} yiDHR[Kˉc-яic/) +/jʼj5[4]zM ݌wVVzfD(>`ĵy\m]aȠӚtYӭtwl'owBCגUKOF֝ E?q?0bf0NN1-Ui5e#x%d 0۲E%o^NLsR6=y\tVMX<庘BxCBnT{+$ ,RInIjlɱ*djXwT ߝ) BzDFt~N(Sv5ډgs{K% m6/)n-?~:NLҷ ˰q`1 Xio(ykR>G F%\:G݈KxP_MN]ruhi:RNf$l+iʗqAjS@߂kbUE]W_JըmT^5/ӯYvu x ښ[x-1:\kɿ)v%ps {О7˂ŸFW$^jFNWWBw<P)<)tpwE97ArLclln8sbQ`Zex'+MmT]kvs/7".֑8yY:4Cbv9@+4c/p^^5HWzd J[6nm8Oen7JfoLָ-` g #9(UZ`-Yy #5YK)_b{j`M5BJya *'Nnj jWh F)E9k:5_jy W9^0b^ Bwn[!8\U, K0y_0wVKN6 | Kv`@PA[l =Ahjx4UZ[NA],~@g#|'dcMFP[.XІpO fPnM0pgy[+,]RkV9YV `W|m\AM?X S`K}_}o7}=6SSҾ#`ן  Yɞ޷q(i:˜a6*I_җ=QmI!XikhN6}p,0ur#Q;6bٽvIvxtydlq[l}O-""%mRl2;C2ٶݓ 1IFD)5 ~4T&uI+u}0gfQ=?V<9}jD@E[0}-)R _KJY~2d4PZ*$B)zD=eT$5y#y'"O<+ߵTJ37-/p@M?1KGʼn&EHVabfkh$hX@fJquEb%#Ǯ}bqҒ`в$YEYz[Pdt&% 8xR:Q1'jjv3y;7ёul_K4X-K:-'pg=SkFb{`[^^&IL:. luP, ]۳j)CY4?~GRzT(BE1WIg'5ɽ\`Gh()X73zGlc.}w(_{Aʬ}*mͤLzwx"c\MOc:6=kތί_p(׌r(.lfOQO_Hë^k jD&v5캓qe/4F;;c(|dn|&,>_{hC'[㤭> diu̵ȁ瑩{ŏ@T?FEz$=v|VE97\=OZhux<'S{Rӧ$J]^i(8Ϯ:t$9ޤj!CSkkC[^z? "}W$m;"잞N_ҏx1V[1)LCnɐ(5+3Ōppff40ʇ[~H\Xd^y]ҨHTqf'ӽ_KN QhS-[]I 9WU,s[Ov#L`by2stx_ep˫IP1MƧ7%Mro&AP!ъb-=<;8?HM@30q?NNi"fs`̨!sCŀz$`q>ʦf (25Lў'/~'E1yc{/~VufH@u/Ė`qO?yG܎@:?C;꟭k<αuΗr*֬en\fN>HUPO E1{isY;)vDg︔?%LxEq_|gQ@\PG|?O-mm GoP[m`cvv꨺8uoAzH0+M)+;ݓ:z&cn`(F&c_V 7he $8@#lMh<XcqڅXQa'̛!  e#g4MxҏN\D/ |et2}i (hĝf̓+@~W=rR v$DX9/  5*}29\{v1q 7=G gmDs{}nWVg׳jR{fE#{1j׊ғQ{ Dcu٨8Kwd#m@V`₌DKjZOKqig'8p! jF1:X+ ^2}F0`eV@_>Ω[4|܆V@xcӶEY>ڈ[AS2A]T"`A@:t;ۊ(W@}c|e'JC1wEDH #ڳIЭ1%6ŪWdd2,"V"0CA p7T.]R Cws\8" x@gWY8 Mq>*jRFz1K4@ǰ>0]"DLml0)jZJQH滏85l60GM㹾^q N(CBtȧ`GH'9|Nf0aҵfOkmM!Sl,N~mo(&\OYzNH^Put)p`'O7ɰ^!ȝ|Y+5#H]dלkϊb^JEG9%p@<ŷ15!ns?`d0OO-'-x\zE= f& =&>ZXc0} ySĊup$:h 9ܜ\fnHywH#HT 3Krw麶߆fjXHoFM2TD (wR3|=H3_wWVgZ=#+Ustvc؂%Li7\-dj(ފB(銉Ni vߜxATH+-O" ](t"a)k5t2IS ڼN/ S/Q-h0bq/_fhU+Slω^M@S 4d/!!55 aa.ble`#7EM˚q: 4R 6A$A' A12@yA(L/pFG9t(`,.t"3<2/f!T!&0`ϙjkȈ10 e@7aw&`_DlX&*ؐʈkG_Ɓnپ!H.>_xO3 ݿ/`9!BwYc: ,bx ,0k v*˄16l*upl]JSqS6:`:PC5/TBJfP̪Ѩc[o^=:z7,ՂCM{R2t.5jPLSrn^Q\^"k2q:B53/i !|iHj_)feB0[:xe5$% /WgMz?KlVZ#bQSYNXР+aQ~5)A!ZsW-:nebb։(dՅS.$FL C Ya {g95 g~ 'oqamCC/csL?gcλI0:qu}Byz ̟^!GiQe'h?2j~a~a^^$g'xf!="}9# F{"CfP-bCIZ kW^ޢc\RhD~]:B0{2D6mK_!`(ߣ216B2J0Q9] hu٩،qʠ逤^_ei$C !~A7*ZGҩ:D,ՑԨyQ '6 b p.є! blWg{ڕ_3&1(qIo{wx߉Hzת/h2KFeL6W;2f/] ji)ɟ]`Pg||EKolӅX~6y/K˲ΌBa4PcI54 X>\nLWkB48,hbQwFfl,26W68*T/o>G6+wMfDm|iB|5(7DǝTsSέaBE\!O=Ke>3W0"R\5,Y~jiaN.e۳Z F# ޽PwK`L?_;*Pܛ[ڡ Yu>\8={-}+ ,&`\XV* 18ÿnG 9 b ^::%r!lOwt$N  d"\򉷉!7Vn[䥵/|էqh?ŭ:B ԴD|929>zy{oNz rYnm /Us2˿U@_Cr|c`[+ tF?Z[C#5兙cH'GoOf7;Rw6!w+w؏4|J@,QSR aމpN}UUS&OMRʌrYE|i3gxjǟ.y$kR ߏm^H,(~$tG1(:t}AesLT +n݌lK`[(v*@`?#k]Fg(jyՠ`<(`dq'n)_t3GQha4iiNgFDl2jb攢኶-i;V # +xvb%QB%_:'Nlw *PT t%JT T 8ԤU667ٕ<wX^^[>q>UԊ hu\"a댓/3[ W+&BPL-[I?0/ !K!vd3OiΠEoʾxCס$wʭUWjJ~ԙU^nDt@W@ܠ:{3V "bUW ,-JEGÆH#c}C%) dYIG3 Q %v:ph}gKefimu؝t;0I4AYvʍSWj[IJV  %4k<揊`~ٺse$C 8JV*Ԫ'9-c.m A>?)C, X+Aɥ+SL]*MA't f^ܤmu"%RW&oEU4,Ӕ*UN)Sh6fY U%t+Qq>d? ,Xލ$@}Sy(ȋ:go HdmUx\ž./Yq|3Xw_L%{o;B괊ʛ-{]n!ܷﴰ=#JTJD8l ZsNHvЕA9R'j10q>lVL|^lUK`ySg^''90NӉ >4Z aiwW/($m82J^4ri$$աdfvL2uy̩Gi>KaKnWCZWRvd0˅[Y 1՘\FaAYrP~91i}w4G'zZ;爵;au|wAUĎ_hs TU/{|uEsM1Cts]**X;J1N[4MAeX=sD# PutT-@!\gQ89+[ɩJzZ-Qf>+lPеyg~eg>?ǃj&=#V!u*ufv=@ī:6{#,0&:(or !7վvv$sLI0釛A[ |H (6t4.kVnPē7C<0xQK2~Ufν`N}n/YNn+-}H?tF7VBX.9"{ȌlSg=9u~V褔 ol 8`@9pvZ %cް8]̦EIu&$gP%põ9fI(sE|'.2Y)v:CN4;r.u0@G穈I`l7kwXSjj"b+gqFXW=m"N@urˤI=+/J/d\`]*#l8rJ"M3 2CO i y}@ŋu Ɛ?Ԡ!P*@3ըHG0PZ wy-'G$wN|^rpf?2ב8udheV@͞8Z[N#kd|,;,(>pn{AιmH q魨㸂3#|;.f+PlXSZh0p!f4h )d䪉3yzVB^o3 ^ԁJSH1Ԅkdm H 4P tBkx()BY1<ĽǬ!AkuS3jTιCQ p@mf8=;>>:EV֥z{/i>,̬pv%;ER VL?kJ@y@_}/,'/3xwwq{;0s5+SX=˽wX{7듽W瘿Ċu0qkdpu _49 ''?(]柛0َJۘ)>Snl$_,I2| nt`-g!]QQrd"[=LmG*C#C8E}m~CC(ҐZ`徻NL|s,(D}Ir񪧷ӿxO4JNZ ,oAǼe!Y>SJVfjj? EsK HٴAjeG/>Dcah!.VJQ<_=f:1SuJbр[q?dGk RCCrT`}- #{(kwkQr "7"Ϡ=o;!2` /oM d6L(vNkU,"`RAA9:3+je}*3 ZT/?;~Xdu6pZV^$Rk}1ؚԂf1nG]B6:Eȃl}lN4Ǻ;V*>?؄߬+krȮğ&+w^1?ݫpN$H%܀YYӢu|A|ɛ4aue18s"FњEO~1#.#W^!&\Fr.mYs΄dZoBMe͕`2bȗch]NpHݚJkc/Pf&Ϛxbe>5>*jGU0 M UT ,.r eUm` zt+Q?X~k+ȷ8MS A<+ؤ sT8b@ T"cS/n4WFRϧlCY BwL+Q.8ʐ>.g=)&+~qI(W&t*@@; P-۞^T4.h, (͓'vr}u?xb!}vۀ} L,RR\2\,Lh@a#b.5C- ?RN (QFy~s:.b>>sCVzSgkPThk_Y %3ׇ=KuB\ ǯ}kYȸ*d|ep&N ~:I v8a-W;F` ftk9Lo{HA>ԈX,<N~u7xNL/mCΆ;|4CPq%_wDd4>TK|- QV~=)'UΨPxYF=glpE=11KD,sY(x2DtnSwgEAwQ*;-JKqp0GB8`G3JCsfPY.H612V "eYb6`n ʰzs[ZD+?䚋b@dS䰷o}ע"(Tgn\J]:'h_汮nx]3R_b5_uldNmo m2rfj(46Xm&Zm N8XNH)ȋP%#Vn"J"ڃCBw{}jjMUe:=@u}\{HO4-b 3.x R  3(U pH%nm)td0)Q>̉۴82YQJiimG5XFeHQ2nǃb<ƪpT^%FTL 3Tߢf?jx}Cq)7]ȂjˋGKaܜQ8T4EO)ĵ &hGl~'ajfꁵ49,(?Ս͛ўQ{Odh]es)4 ::TH I%3 tUL.ƩOvn@(NOJUDRY,%(L̂ s8|lOl%ۑrn7&UpI$ˊ wdf:gcMJYX\=Lbf:LU2UKPD,ȜhepFCrNJ5 ivJ_Ɓ#0xnQ8uW%`ߑ:5l[*@i`Pb1am@~)`fm,O=U(&}FP=J41 GĪ}6ڧFRzU?^&heum6S{4BPD[D;ygi4xF$ jE~*UeYl8w:Tk",C((E ^u͘W< QZ/~uu9"D(B=RdiB.l>XPji iuZXfpN{B! |Lwe7Aglmĺ _+HEoݔp#QݍM軩. pj҉,ƞH%ݦ :aQ8% \ޖlEUQ 60JF.C PYmYiY't!>PyIZz|<3xfm (O%}lM 7`RF}; G_{g{oz(eJ,^NQn-˟؜>l3XZa+RzapduoFuӠ)1g?&zxxZ+Y AjRJ|R+uZ!1;ǿhTMPnAF8`kઅjԕ(}l}iDlv<*JgkaI =mR}I^bäߪ.wVhB~"+M/CPΗ*. /54rǗǢ\/|**Kop*eղPRk"#L IpY; E*<}"gBlq˅ؕɦh{{N%a-͍fu{~p:Gz%tNHR4KOVlb4O)7# +:Wosdkl{S?kDYy }~bACdVZb}|̪ձ*8WW&V!FTZPNN)u5qh:5 $m49"^WDjV6ʢ{]4Yr9hOeK{MRzq!ћTPB! l`xzNa.T$K[EhGxLg" I#^g+Oy/]G kG ! m3fJek S)&HJUi;8K_TrEHe a! -͎`D_ޤEA(- t TL>Nx-=8n*zUhb1|D3K'e؀|Q!1:-W yBђiO.ҙLڏÎDzTU+ج x/OA&I6)3;q7_t6=LZ2 JڗCnAiҏC>X5H#CՑke沐i~P>K/O])*Is'L4~!So/ԑYJ|:kxR7A- L˲䮜K?zSNSC_8/s$T OyH6|el`-2Q\]K}n@bZgL($ V0gI<亗w O&!.V*U  \&ޘQt->~(x (fEr* !|<訤@o*Tg*ƊȰkh,&+q\̪El%p0A9BvRsO|"ef9h-VRÊ0L0rb@Xܠ==GRfc38Qx:Z]b^i ݓWV>-IZ=$iT*CHK:cK{}F(3J. #H|?Do'(7MZh1,f w%n~WՔL(CEU6 s!Tmբ>?qCez{ow5j ~^曳bYT.M/vcRx+}ڊ&\ ^9&2MsonЎߛl7Km^mJLqԠhLmjRfV 5_F*VeLhsWܬ͗8,e&e NnM3+ `p0|>-_}ۓ0Ob[-{sx6p|C2 M?.FgdY>ʧmӧS3җ^@pA'6"wށ,y~t|zV(1 CS[Eh.P쵶(yE4 h 48U8_Cku68ڤCݻC'~תu5DA+5,W9(WYbr(됂A*0P8 f2A137- bـV8UXξΪkV橙3UNMXe aNs p^p*Vw4_n߈m~PêU_ۿU]B~r-?ML{r#@+VU#,iDԱ#&)/&ViƝ$"؎g@"aJ1Y=8 ]85.`,NJu4QLyi$rKea:鎀 &_d f 꿴i&KN%i^ܖfrH3JV+& R q3wMfnO=AsgЗ08)1 RuwW%/t6¦ֶEUlȝ);s{ىzʼp7gYy2,c03Щ/Trᄪ`v8{|Hw|X墌1-a &Ž`@ .&vBJ)/YclK.kK2j(cEnP:1#š> 諿k}O(S.2"@kp1l}fb]?"QpOýDžQ*@,qBZ*TMCw82K2*&WXF/cCY_省50N 1>Hz}放i]9mC_e@J7*2n)Vr+p! S0a^j^`UDZ3ૂ.|>0@!Yi+2l)g;/~}R ?OS͆,wvcڄD.څNbt<+˒c`qP6V"ex`YeFNڬuJbF im݈Jrư)Bνbٷk+J0V PD/ ,Ԉ6^zr#v̍cRf`#7Ց a {T1P^<}Zv%xO#SX@[-ԕ 9"R:LTrVl:h emŅ[9ȫcc)B!ߣxʌ"{ŎNX^C4~h5p_\b9L7X̠tVLɆK)%sS jiy[I$_ 1?/f\8Qw`XvzwE5Ԃs:p *>*8Liy럚ʔP2$JT&QoON{aUS\18UX.c<޾{˯ Pq:{,>!wMQjxaA2(ML=K ?Y]i;a!~qK+P쾩ce?χ][ 2+9Yf"I@[}0 *>^W 0LӍ*iYB"SJAswJNȇ8я|I}üqQk{X\6y-C$Z/˳a'Qiֺs%$42NG0kIts?3Ӆa%5[7D] ˀOv^K rV2Ŗ뭄zcXpx5L-' obUfE3*ilJu:tjZ[W´#^ qt(C.WzlzL-NcS^Ĝy_'4W[wZ^6 JX&[P"Q{<jxmk+y}c-Jom󩰭{#=o)Z< q):&  b`› ?/i- 8RNۋޒ%26EIK3Dj"ɥqkg{޽P?hG)P}2 J` ([54/:DQ:<߯Ts4MX=q hr$sĽ#Zed"_ C y0_#2X 0 ,8o7sȐ<x.Wkq*+$24SLgp9-l%g6So QLܫ'CU,sw4@S6b΍AOHE-G)Xr^$޴N΋ЩP]Ӽ]hWai#dhqcG#`t4mْpiV:6g R2DM.#NSrp\rW;|f#vjcᰞ~}5}{ WL\Gq E^_PTfכ9Fl864%〚(P# Nl4KT n gV\6EBJ*؊DxR<(K ,G_T f9cEQ;+qjSzj$08&Ӓ$'D YU)B{Zni->Jgմ~A 2KYe9+yzs:|(4!Axi|x$={ G*A\d+R_M'6xe5]lV 28I$3f|>PQ%KPGΊRԡF1o[Q &˔F#C*h,(z["BҀ:AuR9]-[sɿհ[J4h3EqJ[IK,@|t‚TG@$cQHdԧJ?1bM'gQ6߂w}3hO ^Jʞ 2KbFC8`[Gc_Y~^Σd %I5pS(.Qۦr2ΧATuKudQdmsl4]sf\DY &i,_nt 1I?!8h:>Ţhv ԱDkBahJ ̫E**l 3X  eN9Э6V  >*^/./q҅ksq:3,7f)THK|plafq>/&#Ԫ=q9*nSxvٛH /?`l.tΨʚ)R2L9 0̽):Q#bu^]M7~^H+r:41EiF%UXpYEw ea2yCq6vcs'\ۧ'![jf$(K>~圗'ZMGE:|oLpZWjqiaw<a%wkJQQp"A[|b@a_6X\Fl9΄shJJ;N̯Td ȍ.n}l1/g u`RW)^N{\ddO(9%4z55|֏e3.t=#;rHU\&Ws0:Db*Z!G!,GiP,TRy"Y?)?|FJ'Onke )RiꗃCѣQ&U$A[q~-+æfy '?He>+YP_G HgZeQy 5@RcAl;_ Y~Vj |v1)+ VV[VG">[䁺x$;CK ɽ@@6K[~~m@Sd Wࢰ3C˪$Kͺ-v8uQwe/faN5/a vD>eP@85c%<@ <݇양xЪ]FR8C0i{KW$1a=@Y)jiҔ~)ک$^m /e̛K͋rkm޷lIi}kcw?N{jPEȡ07콡܊u CMyletu:Db8C73n(x*8`>*:%YLPdyPL!~ӄzb6 3=`C TyvrBҢab4̵q.R;-!6buw[knSȵݑvq7y0mƀLI0qZg㵼ݴ5~]yo"~xř ݉oI*we5~0^9ik/ůpe${aQ@}{gl@Ar&Iyd#0zڵ|ݼ 'lJ |$-sd+;Ԣ P3f|hzO8hB?R8 Íod! ֐GWӽ._V#h(7šKt]CG Aiz+K!z 1~ JamFRi}F6ADm`~,„h'MRuLƼ+#LHy!dv5ƭPnG C\8y0ü1rɀyi-L_jXʌgb'u߅޺ߩD# @ӭBim|2wg_% =fH&.LSRw^Ujt:j?-U(UҮo#My 3|QJ EG Neh@K$ڒY!.GNǪm;Nq$ú <@JB/k  `/%(*_ݺw5TtA 8R>tƕˮQl/pn JFk>͗RW>p/O93P6 qh|@YU`pW0˶cHz1$̖P6@Z`S^0+fMGuS%.*oF[Ulj)ַemdzUVE(ej@=^V#+m/km=OϤEF jGŒXyjRsd[zh@\d;#h[s@bI!}P K*0< Ab Pk $6]=51 )vprT±rÈ!Όh$  y͠]zZeNVIVwQ-j^IeU_]TnT.QzkFx+'U/~b5 񁯥2 FݎgeY{:5)ԿV,4 l1^[:88Q`#ij|`/ HG (&Y|0JS:`~W:aBröpg«Q1YRvmv =C! vON̲`{3Eɠ>ʯ\٦Avz2T~Eu@AJ3< x]e,-t9|ɦpy],FFݤ%] bLX1%% 9Us?vώwz{kB<}.(vd5kd1Tzog m~X<݌9u) .F 9g.UI>5nSz,M'ےϰ Ax+"-YZL2ՃJi o/ fb6 !i DgI .+z%m8慝{ow{GFY\8Kh}lXl-ŇlP4oaNN٢y [OdBh#+~~ !v{X9kDxs)$}8*ىaf{b +(b\9`&&e>_:_-h&R̓URͫ gy [(3a{Br es NtwA7ɹ;lmU80.o9RAe5|mUeB)ퟝ|ͷ&S7EKOŐEIy1EN8>7eWwE~XbGV[@iQ{"(7K2u=#&/lP^4'u&1NOK[`p&fX(7o>tY'ÓXxM 5!-jfZh-ķ_q6  VǜO5Ocj7̓z\N>~O)MKnFmvýա,nыY_)5۵GsaƜB:'>ã0n ~FPi+ 1t7X\sjUk9Oc̸Lfp=:t{oO=1QvqlF(oPN8 N؎\ Y_f"*EY?9B70Z*Le6.hV0~977.T)5d;Vg{@DŽ@b%PbT ÕKP\9IND Q-axpllaa+IgC IW30fiIK"8 *@  : ο{r 1l"RE1~EمcVkBL5QЈ=y41sKҹ56>s̏tKSqs$37b! 3h'>Vcmt;v*7K쌠01|P/-aYBKHٜz(\髀}RLٕ͢?;t(4} (B(B/G |qSO%ߕZCx9b0:0=  ``%~`#8fԢJ" ô%M{=y"I/AZHG VG?ۯ<)-e ǻOZKCZ-N`$-)A5)|b &2T׍X rvq[zזxyYV bzЂ1fzTL S6 $@OFG?,$ʺcajhߑo\ClT<_ʐQb#WjEJš# Yt)ahUI{ P#@;A_2%?Oz*`ȀWb1G;;gÝ_`1M'񃟟[8|}{c(`1"W7[WBgaf7{=MǬVML1"L$öƤ$t:dcDSe:~3&nDla[cܠk0(Ax.k~Nj1Z"!ޛQ~,gY@"gujDI@ȐG:h\iKHJ 6 [9N gdcw+9f[drL2;<t]γ;tx̛~g:<W2L-2t<=4z Z@W Ad7>1*?!f& sAȬuqCN#iPT4ޡ$S0ɧ 4GZgog钍l䤴zb*\}{vkCxw;eD㓓ݞ,(Af, !D1BIF̀36/^1dy7S&|\HԢ$"P !  aSoh᱌I0q+Y׼fHC wV1H)+sj xA䨧SL~-;`{SՅ4,L#EsޤiiQ4،c$sf)% b~¹B_*xaƴɲ?t$UF19h`ks] J+0]B\5Id>4H'7/vbDfO /.ڧ4'7:I6!i|}҇p7AfVʟ3įũyeã"j&4s ԔCIUzh.Z 7&8U؁MKx<'c _;N4JHw1KYi-G$kmZA = HyĜsf]z<;p1KQ҇ÄrX= +EJ2Z1CNVb$km~JTwʠٵ`kum՝94GlJ\ʙ񭐝,&mתt0Xj킬5F*y(ظa<=h/8#QFAbfJ3]skf:o 2V]`$W7[OAW\@F>lbVZ]@[H ٧1H9-՝+oT*`N b=QK{¶sXNA']kH>strRdɣ[ӹ .&,lYp.WXro\gMuɆv?OV !! =xۉ~P6|dXО -)k86<_ZV2L!΀H˜ 93eR`=c`>|72}I+ 4hu[{#wuâI{sڳ8  w+9g Ir3IӚ41i4 J>0Xp')MF$Kgv@# 6h&4wȜ; lhk,s܍MLSiJF-J6яhd5@rF!܍}v;6d~ZVlf0RTU*J%n{$rS*Q"3x[4%*fJ$cEqk74460uEx~ݩH0Te6 tI0 u* H/V>CQvqSXhkUgT,edq=yx.˘${a'4`9-15 ?XE 0qTgsj=U7=(VTCWT:^u\1ZKWKi>:X. گQ =ؕg$O=qwNZǧG' dr S~޷- S[,d8+t鴫R)2cN܉wP\ ۥ ]%\^z/ކ mHڢ@N}4{UbjsG9݌IYs$FM==D+Tw[Ne@gWdY-S<:l8_(Bsb9V7FLBG^DK?Բ7\{\fR30xɧ 5 riH}txMqçf^{8M]z bУu̞H7<7vwO@;_NF-~l9h+?8FNvh @v;NVq:ST;Tyn @Ǜ5u䀵*(O@u]SYbb£ܮ2r!9%`ZXf6K׾uҀ5B,_\0,fM Hq-AvkԂJEKt{ ]nj"\wa4nکަkcF%iZiMxJ[Z k:؞ɩG?b-6{Vկդ+GpbYҡIe=)'s Y E~! foQoo*)lSMgi$IʟVy*GYbYArTн1YgL5\\6B@WZIߥԑ=R6(M_ջIuvݞ̓)2$Dj"ꫴ,)$YG$ Ʒ*4@- `{{Zi 95EZjSTYqC`2N0g_$&NN>}lW+Si<+4 pD#Õ$fFOۣH4N%J0ƿ#j}kVW>5Rf.3ɬ(WG=fj{[0 XX<( DhrqsDWlYk\C0_WpzN#c8#tm^;k2ȈԗQ?-q).ۣ,K% K)I{h6?5Om-em)a(v%:0f X1ea|ӈAq*lԜID `s v |xU)`Kt7Ω~HR*뼾J1`DQTuJ<.'r`kB}JB6"jC7VMǏa=*]3cpʙʉIQJ >=iߣACI1RQDOLB?h'pl@e; 7B\$ MP] Qa9|x-7axݧd]rd ; Hx$rR.[/ȸ)ZUŞ&j؎)l&=+FP;$ɻ˽fGKZ`,n'h7FGiH(ꡀ;UUWd֊~Cfޚ$Cg_YjbNre7z'*Ku8$1;]'i i=3C;ѝ\bFE5T͖& siwheR)LC|[ppk^7G1%@>C\6S{`M{w |]f '9=k [-?korR.B]\J1B$PJL\ЮyMom19kRdQ)1a[f.*VUa`J_ď$Z B6k mγקUXWuaee ifͰJ\Y%m=<ѿB>̻řXXM,t˂U5 ߴ\uCzVӊZqmBSq-saqա  2z _EIOKi\9k= @V _;0Aԓf]r|ZOk0;G)T=Hĭ tIe sY|.~97!~1c|B"mh[Ыh)t!!Z+U0&V#"ꃚ3WP^E*Bʘ CMd4ԃc!ΑP%!qʪX l>*c p'c1;U< Ņ"^U*J|z_5ǛtWSWk1f疯TP=xK%4R"}Tb׋٪y]KL/1@:u}7Vۻj描kLLTMe YM͋f<>;KnOY_Do9&^Epw|o%֝٫i6Hᷞl@{eu>ס?x#Y=5 ;'[d> Zb1 ҫo풜6vS[G=sDƲ] NA]3 '̶]o-sLSkjGIKGyyW+OPsGZQ"0s{Y! Vgi+ $ZD킭Kʂl o1ں1-<5wNGutXX@bȥ pDŽ-1N<#ޗdtOP]lMQ5k8ܣ@cQ$LЦy/Feoj8X8eZMZ#|OQ΍*iMŸ ]?QSRMq?-{qk.TAsͺ߿KV3dJ%eu(rduMOj ~p6n6TENqsWtND-qszA'zаkv2OV]r0KUۢv6:ղ!Ok[yWJmh7(S,rO^xib:{Vm9Hw)klX% JP\hQ*M?A^≽2xh60W$:;y~Nݗ}^ z+LU\bY\ylZTNUi䦗\TO{f)0 kaWpiUb[ʓk0בZL˻S|P_ 6Xlqu|)P4Jl$ntt0-KaYqlCڄPکM}?F&jmej#${jmBMy:Y^\@nLb2'D%)"gC0:JwwسvTq S흳̓Ʊ$ F4iZ ,XFVrWIaTY8[^_]V L7)>Rk2ˠK0y E{C>b#wG(uD>FU+:}tBB6;z<\xt?1- fmpNl03\%vAg:]{T hfMĬ3*/}4(&iZI3߈ŲR0,ه:2: ̩'\eoeTP8܍ai:p˶$KIp)"7\ c$EtdW$N؅y40סF}g'DWBTu}1AU(`Ȯ=D(iKLHqr%mN K{7[yU_ :ߦir; !{hzIѺ;@ߦfG8Z6gDm&>(Q(?Bӧ@|gDb:bMbyG`jȁ)܉(Ү@r8fa : _Հj23B:̽DbGfB;JӲ(},x%Ss "4qIφ^'0;`'ذkGfe\kw }szU6e1IxRIwGGu#pdN3ABoruP[RlMIsZS2eđ_r Zl mZ!w"p)q+KZy QD*BH^dFt+C&:_&Zhi&uoN˟X\2 k+蒿 oF2[-u[Ԅ %=+\o4fcvvkEj1m~Z%D0YrF,~@%RkM^qP`Dٺmy(=6ymxU{*Ҋt૶=q6`hD+PGEVϜUk螦K{f.QLiH Ek?JL6{'c9vA*PuӚН,khh ?';!8@_N)_vDM\fF۱f9?M4;tCPIF@'mK4/ӭΎNݘ/U^+rN+NGc`k zcGPݽ#`sC?G8^F9F@E;1qAc?nPf!|s8{爊7nصwTy},A\Ŏ|/27 6N[?蠵 `v3+OU@Fpbj.bPb.&v; 3^Je1l(q|X\$su㐱f)攆$.|lbq?(eZ(_+uwcbzj9*mfHǔIiu *d Ȝ`FKWmZˍe'}UHLBlzF80/= d<̙^xTCd1Z.RqN9!=Y#R ,RBdHFej$Ս^,yߩ5^8J@JiԞ^Zo䘦̎[()LwBLT"ʲuUMYZx(eȥ-zI$eݛ\E V :ϝ粨.Oziz)4U=W;t_Iϑ\vZ+K uv6A")m,@CVXD#nUy4yNUύmvA۳b&IYӨ[M/rku iAht>lx!eאO1OpʪGT5Q*oQ1iMoEGj, 䫢l"F|R\9$rV-HcKa4Oj4x#Q)+( XɁǸ25E&R'Fi{L'H-T"jL)њR^Kv\7g1U<.re,Uy3%i#G?s%X1r=>^D6 2_NZV{q"BŴ4eE¤#VG$/n#%j#*Ҟ¥+|*/%"tPET%nIK ax`M\SG9aF\EuD7"zd֚sxt\УZ%6ss٭5jUHYޏHQig қ6D ]lÌ,kaFӋ FuxzJ̮h|.QdW`ʻS&)Ui/.+a ^i ]E=k^գF1o-Z7ү vqxrn6ҘjK2?<]N}cN9Kb+70_닫H P$f %OtCKZ-e#̋f8Uvm:ESr5RӐ4E:Ta)Mir;GWPБ4$XOҵteHt=ISJS&[~1/Xb_dqz̒W2ƲvOZ?5OΛ'?&v9Ū ! m/s{=Ó7.ϊ]L~YAjt^VqgqOToh q>2sh|ͅ3PU}uH4}%Dxy&0%d]8J$%sUqN; 56>ȫ@s`JDEF'!CCH,ٶN҉n_`i.8RM7whIϮl-a 1o'LUI*y_sۿ;8Ѹ7+BðHfT#yc6Õg6U$t%n㍤>/uQOv1^}usmE%쫗;]=[HJX橂-Qz#aMV%wF*nN,nb)`6V"e|Oda]po L]sL8v9﻽0ֆ>w%]zu|l۞ޙU.%S~T[e TmT9X?o2+g'xZ"_GIbKwbh<ЃÖb^"0WߪcFV8}؝ մ;  }ިuvI(/*jYݱqN]4 Øj3Rys3")N(5|ŋ6b^G;E;qMdCVjQM@`DE QA)q$ qCJW#[K<9&' 41~@[JƜhNo(ءvIŻZ|)> =S{VP`uN%ٮJXiS{oplR}H|:E>l]ߕR,Ugs}V/=' TSZ;ѮUAOʲd CQ?lδlP}Q$兑 ̓]|z6H'{_gj =)#؜qm,eAN-̶UJr-B-ޖ⥀1g VlVsj&֓HH<"oRϩS.g\@|5t]Zhz"IE }8z!ia"Z.P&>PXˇymk^Т7_VoHqg,C@+ CXӇ(NΘ4>A^%`/&H\X, C##TcjZV5K|d'A &QC̊'64"QX*aEe[bDo V))rJgf۸$FA-0`RՊnNm+Kּʄ8{VBgLRT^=o$W}g?ϐ%wR2,CUsY.D4Y5*qnhK~B <|AteC[6Qwڲ#UڑϫA؋ϮX؅ϯog|s|w ̲ΡQz+)Sf]n%, nh[`비^&[4GWL7D>AʃX'M- h2Vn5I 7UWwYD#Kx b. XܘAW0YY0Tԙ* zv& 2$[(EMiEO? '@*I+RWل6?d.4]jUVutM;Dot y.@WfnGW $fYxO 㺆 0NAW y< 'uAz>4$ DZ@`n94oKͣoYܣʫi{0(wPĹ`;)+1">%&*EoCjWˏI5 Hh(яޡ߶䖻,u-JȒ4L|K!!rY]Q69T!QK~9ǵ-}_\:i[I-D%h:lX}^QCs,/]a/Vw>O烠^`][9.5cJдO^S02M1Xgb Yfq`:14 U*~vBC] /&&܏Ҽ:g{NHY'&6$1Z^'ئ݉?$7yAFpg>XݩIeOk,$QMAI?2X-5s,C0 B&nL ˏ^l\|l]1*.CvשbSIѝ̐{#+4%T2.dʈ&嗪6Eb/g`1T%Bj Bp^EWa#`)N2[J薒LiT98~u~pV `T*.$ (¥MݹP<ҟ_Q>i4ND , O.~NŮŗ/EϝӝgX- hHח7߽Zo7ßZ|;N cCzLN[;Mه߇f=}OpXvc:\1Xy:g">b9*_z9ha`+.  ԐFs^/u y<ہ{ >i5O'?1vZC|JĆuXFDiPo t%@EAor Mǽ+CW/n ory#}t1)/Ӑ lGc,pewa08Ъӛ @4''F lb4t&IuA4%lnvp|>PMk@oH>Ebg>&_Zۧ'q{I4 w[6J&~rzB:Ŀ<ylamj ,TnN$=@ ns 7>=@;>;9>j7?S 0"h'LSi﷠{??[Hߣo`}ٸ#Hȧɮ(QuvϘ&16';O11uw%)^'Aw`GlqqG\w͟!h',A>7w@`hC?e,s&n ) O/#;9:pDvOxj#|ndNo l֧!hnzDOGg(G~ FEG6&0!'@(b̫t'||D z 򞭚Qy'z<|K󠟴w}`luvO֝Ʀrs 0Z7P(S $sүZF#Ģ)}Ê'QЌ0ffYi7O3iI $HZs4a\GC@ L/9*zAْhTY>& ~Ѷ_gMI<|'`X~Z{seFLB0 N,/RdCohLqj8%IǓ w8.`9~/a5]4i?+H4ufD>(_L=x8oNlvA 9A9OO Sp'zaU_v^9\ #3g|U& g4 &Lh*5IKΛ|}7|G"O>t ʟ +z[ۓ Xȹ{Il;Gh@wŨЏ@$G6̒K4^'fU8iaX֩?F9pA?חo';|}XPHs 6b3 }Qtf G6%$(*̲jyk+aw;ԝiO9jg@`vDAUf,:o|l7j"^]zOpLjx&$sC`y*Ɖ_7'? a;>>R(|PIyŮEoLc#zBpЎr=ځ<;h.5D{l:՜WV>݌E"h`1~% <:΄*|X9Ep|z"<=Q^'W67jƿk]=:s5W8JŋUlo> 7`vK=\9oNl:o^m76ҞfO=|R—`7Bb9Aǥ.:&u%kuPEL%TS;Pt-CeҶ&)w) O.M⻩k`mF5٥gVB8$MI87jg*< N+] '5([6FX L.0|lp??y5x6r{D'3߄08h$V0IP8UDYB"\~ P/ptg3!?_3,k~LW#Wf= >Ÿi^OkɭL,F%TA-3!,?b_E^F _ǫ܈q0\|"/wpQpŘk͋N%!J:01~C>u'j!+:/#1 TTNJ@e4 rIG"Be&N L "w qnL"|{Z#=eFvC*> 3H.'jҍ4Z"AQxIɠ( Q|Q.߄[(Ib&DdmD( ag`[pJhM"w[O"҃Vy8mRN,7+Q69@xHsaCr@ez߻Á{qv]TI%0bBVEeD9lRp*%N\"H) Lޜ#l hG[Sci^=]>igcU*SddYmLǯH-~ L hfGD)~cQ sL%Z05R9Ol*EFg9ql94cSv$wB՟֗ÂuabIPw%-OJE=CF0cZn{5PO<|jqgdz4{:O@T,cLWɾзrHK"}%nع]ťlbYT{_,-aP{Wiwoˉ[st{[ZPp[!/w9آ}erq۶ [T+oLQ(ܕ0.VSc>ZעhG3Llbiy,!7~ 㗃B̯%\(6fw7 eu/評wwwEYzq1U%;Ay+{;3~qu%6!(;ee>qPG\<"}myE*V|E3:{`4rGNO}=EZ>N!ˈ}D.Fff 'Ax'{;8ˀ};.N,b) I]㗐bHm[,m/%m} A-= A;O̻g_Q\ULq-Z%1Ktۘ-M}'BwY;ܭf m$>ϝRMr= J>Zp<dmMQZ;\F\f+/ZV*lA)nAږy2Qj|5?0T:/VJJ!yN=AobR橇вYXr7OA .m-@.:ܠMtj(XTiz{;|o5Tz{֯ci`JKlc_i_cG9*%#d@I""82x]uxSD,^7=I@3{a0d].5,מ hƃk Ẍ4-| k,˚TB#o|ѭR0a%c)"Z9̓9M}\Yv1?Y Fg/Lѳ ^4b9Q=CH֓o4.#w%үô6g,;9ٛdɸ-M<8$q¼4Ka;GǍVPίvG-G$}\[*k"Q(C\ۄA{ ڭKL_yrh>"| 0Erstvk±Y|*o ,w"n=Xs&G{hrǑ$QK1W6ux=b„p)20)Vin)y3K-SYntfϲQ3^'jIpм 4-oRgM^2$9ʂ1%x.wYb7 MxzM@Ð{1@3OMJDgzqugu<\Ʒ2A}PLfO+`Nt[Ndgo|O']čC ג:EH,Cn|+908eO/ᛉb / xRGޭW!6k8Jɥ;?wm8E66R,&t4Lr3k-`&'V>rIC iNct%e Xԧ4O']t)y.jI ~ qbY[itޮOS :taOML3AA`V:[93 ԡ,=]+Y1#PU>_AЉ^o-gQו]ۘXv6`#[VنpZ"(GTD7DT'oN Nteϻ@]1x#›I[5 lK UČ).!G 5WB*.˯U^ J× Yf)P $he}oի .ĴVul^#b)N*u5,QM]cx|4w0;7O2 QL~(֕F/<hq:b c>#LjP8qrq$S6&/vhgM>xS<)%Ӡ4-t_:VsPS)NOJKi[$)F}N ǦUO%>ؿ-%`^?IQY} Twe|QƍHoTS 'oHwAwr\QGhjO\Opa:HlCT/tu7tjo G _Yع{>)݇f{L|9S3&Fps4xWLL3hNVCī_7Gse"///͘!lro4qkZto{ |M/V,L'دsڙ^{Iw^itt߼^i'0}v1Upk!*FQl^阏"[*j3B?PSj5Qqk[YI"<:\ߠT6=wQN*C] 1/%N\g)NF%PKRge(.Oi,B-DH<*d)vˈdD*:2IeHY.?fZYje&̨/}dҤQBeZR9ëկgc[]j0Y :.. $j}R{yRCzMAb#-4.Oi+]#"C;vuĥ(I'"}K(||75M)TN -IC&6KIJ em*Tߜfx89\k4ڻW)">ډ,/R)DX$ONEj~D&EbjǠW0+w2ҵ$SP62{b6kq0sbĭ▯0{˯0qcaQ!r$ThNoއ٭"3Ca]٭$0VQ23ً{yDC2첢*W(Q^t%v(/ AW~TUwSQ.^L޹7͛g꒦(HSβu@K˅KͽtUҢa+/5X۴ZHw/. ':bQ2 $!QE.P#'77}ے X.+TA? Q+cߦ#H̚#X_V$^*YĽ3._VFpRY\؇H.6!>FF"&_X~MU 5 *lT[VEࢮc r8bUۃNMJܣJQuX}1;^/&cO()zjb6uinqd?ALmaVThfi#VKYECU"z\B dbU[FУYٜϬ s<$CRl42ch˲Yi4s$^feٚ49bT d%RG#شʢb Y-Q$[vIŽnDTiޜ7/1[?g"2t? y2 ~H|e1w5u Um( i2૵NU*vm1Vʪ-&{Kf*R1lX*ޛt2$RtR:r."0ץziLhz`jʩ)t{/Ѿtq /?Kev>ݛlV4WWe$,6CL 71p]e0ˉ憼{}ަzi/:eVhI@s'.>sٟ7!pGG4AY5rz*a?dA(1NMA#|RW:_.`##Y+ B%{p->OɤrXW" -CD ҳX8q[kr5_Vbn!C6,eyOȶ^2OzRꂱ۔, MԢY'vT겱Kٚ%_8,îY FW]>Y|+Ș6(Q,ey?j OŒ3ٞ_±MXQycԢE+f/҅1pǩ2,"6-R1GD>2Ȼy?>[@*Edk)EdpO"2#3mMm)e>I+]dMk)c0J̰{$R3{ {ߔC߳lhB,-2Yf),Ԍ{ -Lp/8AZf))={|.6-ퟖMLL6'.r8!7=o2U!e9񣑛, \9z= UwEtoWV1?r~y: /D$+?䒍@OjHV0A. Zbb9#?,2ZsZ=ITb]{Qp B27Ϲ>5H<ї{nDn.p^Web) vG,Gnx8=CmX,?w."hԊƒtsw3FMGvr', wjW1-ǻU waw.BKV w.ax>FK;S \9xe`uGZW)s\Xt ۃFq|Q*5fX?O1,N ##ef0Zh2~9'\RAHX]bj/]ӗщ]| D>ZඤO)噟|Hjy*pk{Ndeb|_td^ypȊ, $w3C%m EAtYeÌ5&N9).܃)p-d%.1ZR&cwŰ:cKd2WcjkcƬ~95^N) 8h{k^@_EwsJXb sqW& c0kw ?̜x?j6j4F:4a`+|ig08"E@S@Vlc`y4z|?}lK;6I8m7OV Afy]9Nc0p!^Dq@W4#g~9(~ɠC%}x<߇0 ls1xDӋg''B?j0ϰ8ĵF &. dzB@Gh  ^ꅥ&aO}t1)/Ӑ !C9(蕌݁ xQ0|U i>(Q.Ā  N_1tb GAMohLR#v,5(hj&xpCbEk}<1Mk6w[i w[iBI?ONOPZ74>4 59A6 4OmǣSѻ}:m|lNvC%@:O͓}!vg'G&up; #B6|4~ |i4y4.nnhq FG0O]A Q诣Z1=Lbl4A'ßb5bap JS!N7N@7N!?<>q%(:iP)cn30vOH)A||8m'@)g?j4?m`g= 9A?c{-t< ] 刻OZmEHrd$ HGph%1:՟X#gM[g`_Uͨ zsC/`89&}pIQ?u&[gg}odݩonl:+G;L߫Uv.h XiRIjMH72M!Mas)?4۠!ߢa6ͺn2fҒ("|PkI{M y{e; ۠JF|s0!`cCnc]ܠA?7@E8O s?C7;t߿֝g srCQZ.xa?t {3jr0$R-/L Զv Eް3uVHe᧓۱猧KX15#PMگJ [?1&:Mm`gkBtmeAN4 6rH6h8>6zÊ,b#bYb!; h+폀nN~i 9Ha$>EH}l sphC- &>HV4uw LG(嫫|I[qqF$!hE7bҧGg+7+Z97|? D}p?|KmWW-pvrqp4:* >/'VFm I-桪3u[c&AcheaU"wh3X^qCpys&OqYy|}~{?$XhռI׋g]i7r&ߠ\2}raYd1`bA6@|]ǡ{9t ^X/iM׾β3A7%x^0r4kPFjrGX]=SVle1c?:4H^"7X >(C$E665bGy^w g V?CPP*m߳bwW0de@b+ZgrSaq$U!lU0~~O]h+p|+e x < B TTr_^aT;/`aq4 <`(rb KdkLQk*V)io`$)ZJ^,RQV B8,7A0a[dm5A(|-OHӤ"ASD!wqZ}*3sNn;oIoI2'ӣcI,6/oĈj8z7csCC{AsW+ߙu)߆Us]t+ >G!(?Z塢lC'sM**X| F^z*>7 (d* 3aKGg*5{S4=|]k{q^)niC"iibq|<]c'5τ\~ YNמ[ZquPX>zzX$[ z_Ғ|x(1Obo#2o;j4_/2Av7"ULn'}O1QX&Mp梯9sCDYF0[ޣҖZ eFEH>*#U*UvQ[򻨞E%wMaC`'bTM.ťBic,i~| G=?_-~αMyhu-|9?5*[ޯ/-bwKBZ@tE}n^`8zU[Mj*Sv Z7g좄i3dn6[(ذp!#+гiM\MZOo=nVgS$hJN _1<:+iCo|`Ri tKBg񱂍A /d5LFv:t+jmBsf'5_E{guIF>ufkQN[q텁>ތI<.><3 `4gFNd6u|/ qb0)ğ/ӈ8Nj8.mﰸxAO 0m-GSu-h,[gJG|;Uia⇵}Rgs'KU`;T7,Ş O>Q(lulVWQKgq7(`,4Nb,MjlNkvS;ium}= %eZy$q{ c92G}xe o_e̽cЫwrs$]Q|mKd.-/'KaqKE.O7ӱrh8 6I{ ?%.ȶ'p:4>!t>f[9LMˬA +:T9Wz UmyM ֗g6fA5^q&Zo_J;O ,i Yije*DUJ-Ɠ+,&*GEkto(2P-zBEd&\MfO!k_Lf&vz5 b5Xjb5#7)Nlp\A=].E$?z4Daqͺ2yK3kEwok4]XY4{anyZFKЭ>mu%Kyb},9WB%&fN'+T)b-*z~ZƘ Vsv|p  Sܪz*TsB]@՞ z (4Z%gĚנEຌH's"uKgMrlRt~g3A ?[UnJAH <iii-MW(vgBqx(NgBqsOfVnwrgѪ63/~!^]E"^m Ϲv6ϩ?R]yQ]'5uBֱVQU*}-~X ri\2w1 ;0)[QgpMהx!ڐL˲aT 6,Pl , PjOEI?Oi|U΄aw6 t6 0$:F8sIZRtw<P}k.+"9o$C8l$NzzLy\Yt4 ;YŘv\r'oEwib)j vr=Ss\GABgrKs(șRILQIj5N&_Nʼn4 E.Vv1? +̋uɵ5Qĩ! 2˱^9.oRI1 H.pxI%>|L4+#s\}*9Q L\mo'؄mr_2ěL&Kyy<1j˾\3!iA(+/n<-IBK7k34h+V|<߶YVܳɩbfދJ惜f,ifR(8ɁJ"pM'p%jS^  yk?'Ez~B^[{SB[mY>?:l|~t̬9h%լ+nkA..D+ERSSt_ʺ=Ywj ɗazaB^=ѽ=w++t˽.{]D^r'Wi\ح6vk)}tJ](crbS&/e\3Yul!Sjjn87m {Rx0糽!#wR~p3MI\pe?;k?~+Ѩ}HKU e &w$DOժ_y>ܹ}C7,)׉Lwlle 4HBrM G^w'hHIFEop+)&H?Q7rݪ5EIBʼ+}R%jeYgϢ_&.ةXery ǛrDm{`S> Qy,c3eEPgiGt"Zw4/,S&hI'aeЙmwUsz$cugJaJ<Tp.1wJ+fPBwn5oGrW{ĝx0.w57VͪA{ AS~i^%(1tZx P8~>n*:֊e>|'a2HOsV뗃7. x:%SVpjm,19y:Y9y d,Ν{sgnB#Khwv܄v"7 3z0v 4L9b?3gF^"ȯ&0_/!tt'+i'¨Goqyz&/m&Ÿ p$π+X9)+{vF /~(M)I({=[LQLRVslS9.TG(]7NZdzgnBީQ)e+?T2$tSqB5Rn֝\#L`J&O~r :7Y~+<}폼ō7,pA.8e}~[x%~.R@e$t#22eF\䈗8Y'e/yDe3[kV"#0Fqaݯ v66D}>0 "K8F=DjP9G4R_T~ 5jjĐVP Y2!Cfx,SYfx2"j[I,eͶ.zlӨͶ.|R݅4a#<̥{ލyZi7SCzIxK73^/08 Cdͩ$Xjm6jskU+[[ R_urrX|eZ2ThGZ) r& I\ L"īHw\ 3X06r[Y0,bCP&,g%ۭXB4$R.) YUwH)}'{??cXݔv>e̟1 Rdbo"'ȕZͳp ?XS'7`e$cYX%m$wfMqgM \BLf$ ¦2{w[KOp۽3aV_w/(V8 n{e. ׽4Re8\ F @I|sxj2&+,%^VWoxox|Ї ohD>S2G uz()6tիH^ /O2yj[jd7zu7u&>>qs|nW-wjtRHWvL |30W1Ưݪ e",^|>9tEFRJ*AUDy(vȟQߚ]χ)UM#ZDIqy{8anJysbBAd.eBK{ɩbsdz^?\=_JJ۠xTiU1 _+Ü4"X/?<K̀]x2]&Gp >|@i6 ҁd{(U[zvW bWL3_Ѩd=lQ/uO$c 3r.5[tn?X]DXQ H4tǠUucnE:݆B֔aLlZXD^]$0<WG6K5KjWA@D2 GWcg嶰.I.B^(7b"muh 6.CbR9nǍm2o \usvExeک]5z-_M?!L Mݿ2K26C]uַ22TPfVT`JP*( &X>#/7z-'J[s6_xufwlz?Lyjݛ7_}mo ýE07EY+onO4nōN km㯺צ׆ cvwu6VeNe}ԟ[ǩooommFڋkzr}7[-m컽~_8ӵW[ԿŃ曺>` GqXwݫWwykIܝvlxƂ;E_~qP'ү͵~-wvoMju˱EV&vfP@_}SZ2P130;\8×"yOGjNiJU0i[M a=[s眱g־ܭ[8x,#j>͠Y ˩罫͍fMG-eRͱRYj]أ4epd!R}k饵7u[ֶjglۏ{ jv~ưet$642}dꆆtguMP6V:uC'[ c2P(C-.h\β 2m3nvA{1z,*~m -J ~BNsjv?V)VN2o} 7@"hL+IsTS8xPaʝg~&_|SDw,~:|?]C{M!˛mw6>{ƫM*v%) iZw]KtIz.ELi F.}JK%:y]x ץȮRmIb?al=R7LJ(Vɳj1Kɱ)ݓE?Xm3kk3b_wƻ"LjX۽qec47 l%B->M}8/M['1HHjC J1J#Cd`|vr[X #ߒ'e*EE:^a"R+G* XI`Ohѽ~]*(%6yϻa}|MY蓦$h⭿ɜKGɩ_"Qȳc8t>ǤJ f zgET* ^]Pa]/_:=FN :H<]s;)N/_8L BǝCvN؋ o\U n+jO>:|JX윟WZ !DC0A䥿 ǤlJ_olXC,wZ^YjMFb\`&XsPBz5zΟN3-gTjϾڡOZ@!vgI# I;2jY[c{F0Gn/\1ҋYhOcgɯ?kmbjڧ͟Z;Ms󏿊l'Xa)ڽd3pa9֟v8{4:~χ~9WGh;N+ρГsz^DžԺucw90tV&e%:NpP& L?geۇkۏ&ިs\>4]_I/{ham|]O~g A5(XJtՖ1vqzlO77IW5qif_yp <Ls9u{c}h$C![aHYU^tQZ3شпO`76߬75n4N jƇEu :BbiqZGNLÎG\#7Ņ3Hgj^8'#sywALX7J*.qv}.=v$jr@ )Xg0`.P݋ w@L~ cQ7 zz6:0F̶;xw# :ӡ7o/%a/nb1kfysHuwZ`:q3`A"Q1*|b`9L ڎtzS*?C 0Y(k#m(~Q$&~nIӁǟ&֧ϧ]HNp>=u>xhCEgfNfwvA:)4;=Ѹnўs l|lN!q!wt4iklqWM'j7Zu@u?5O6}?6& ar)N! pگ9x4Մ T2 sKgqYɀ#(9;i 0i|::E; YQtn` <8"Z <9;Ʃs5%Vp.^s|n'HG@#s!AHN:OOÝ&~{U-K=Db4=ShkF4vj!=0rB,H/#m6~&u`Y+^ZlO6a5S/rm`%%ATp>}dp }2OA _C;O>t7(6֎q:Q6l7n/~zrъO0to$nw`V- !|{ b ҳӄ|/u n*`CFQ ݋=_E`z YV ೩;@= qr+ÐC蜭q< h>>i<>i5OASa`ABA]#szj1hla$ah&̏ˆ%`)1`D2VBH_CN?OAv#<9h ðB Fg{ zpNd 3{'d'M4hr5>g-e/Y7殳oG3VFNM`SL;BQ~8)%IM!$OJ--1`y5 0a.'@Vs#N),9laP]~gtF"C.6B: _>7NGdg8+yDBhvH젃lfޭ3(SSV_#T6(Ʉp P?)rpDZ O"QGy'sǍľ |ymuvO֝Ʀrs@8Z3 z;tȘ5ţ|yP܄{i hKF[0f}YwVSMxgKhp?ߑ:@yp3᝕UT7oM2 mg`Zr 6緩z9qR5 ~M\l5:` ׊QCiNq6IF|;$HrލB"Qv8? \Փ3P"qbt|ี<9acs[J }.gͽK%~<k^zNt;ꜻ_zџ}t~gN]x}C@uJ!Py]C$f,eLAҬ_Cuuc;5)>N-yV`{H4 !\Q9 ֓3g .̦sA>uSVh >*?upr*3 %$:9Yםtw\>Lə%QX! .C]4 RfxWހ,g&3VDV_qU(?Y&Ktf)xk#2vFW>/}އ)lbLx S\L|`,w"47X ;H:"04uPM&uqK0\yjž$8?t0}8C5ƒ$PA+/B^$ t&MIN+=9*< 0^Ti h=ϏtZI6mSXIWE):. Eؓ큜1*^EPEx`a)QOrWO7y~T|0MēQ9W󓸛,W$9&?IґlA㿎N0CXOO4iRg8ƖMh Fؠ`vbuUKŜ~"wϸ:xtttttttttޱTޯq^]G{<w>z6v#5; D"bmUXڙ nAN$%H nwr #\˂C{L3|lM`%;JxCt֓Z⭹Og ڮAyOc|C㬂c7n/4gZ/#xGn#6܆)i^#>LÑ)VFٳ6 N`j| d81#u^g׃]@h8Z:q+޸Ka%% ċX/ V'ٙ$#?~"%b@҂N9QB"/p}گX>BJ MP1{"iT=U\wnj.`Ǔ,|~n }I@YmI}a]%S~-.!Rښ9;t'Ax "u4q>CAA:j+ ^ yX`Qn8h/{g[|M2de)K(عcQ*{0bhuGQ@(tQBFaꍦC۱R`6 s1af~^$>:֨0YeeYIφitf][ bЁ6Oçis9|>m6_P0&9|rq\'}rq\'}rq'X}G.nG⦐~:X |:v;5%/ineQL[OjSQ#wa3loo5.>S/yhv[ oW&e _KM$ Z)˳?I0֯ةhzQrΟ*tAL)hHW5-I ik^Ǘ߮ג_R0spSGTӉ>rn>Йovǩs:-EYXاnCaa( 29"V% ēflgcSs+ؕGV҂docԧn_IF$:%Q˭ejZ_~((q+V-OnS˙? )h;%G렆zN k5-I e}[<-}%%Cf_Vq$kl^Ei\J)φd 7H*Xnjd/IG;5%).&@ͷa o5"ފJ):V3l _?R)3+eû;qy f_/:LK W)BCV^/w\獓O{ǫZqjax3ig(ɲ!#yڊdDzb^4{s!4ƿ4dǁ&,c̃qEП>kӝVZbDY(_i x#6',_B :ZG6SQĻĄFt Hp!u i.ȾHqldO<MJ^ 9$=6d$McmƋS;M}aZY(}&+=T7$bX-T_gЁvLb+PG9 E`GcD=xy7HO;vx21d5${c:aV$3.+}vvRyh > [} ; 5Ll#u'A#׋FqE KYPM 8]<\ ˠ,4#kn\2\D/G\p(Rt AؘLNJ7֙ww \1/l2C9qPp&nx]6~'ria Hsh\P {r*LDFdA%lw/eK7oq])eĤ܄}&|J)M;幃pM<ڈP\F%,ğ5\=Ȧ@y@c) R[1pujlWO[%EEΤ ͍B,AR( :>,1 Gt:Yvb679ov`b IMژn%˥&bR3$ROl66x dms0~C Xnɋ[+ww31tƈ Hx@W@3X:.7;0W?P^m!2Jn8*VdO@ *p<`^x XwunΔ꣥ apzAkjzyMi B w1 >}#jo&h6dI#Y dD.MB2?@YP=Y23T9`y2X\HXlV0a!X|v4NZ(Wxl{6=oV+񹀌7Uq6fV=ce؟XW2%B˫<Ķ"1`XbX*- ֝+֎U@o "pG;ƺ#Y :)o_HξGŬYw*h'hAHG)4Jkrij@(vA?w$Q ףC#NBPS"XاLGfaQ?FvY+_xk;Y$>nF&G\ԞU!L*Zñ{ zΕMU/̘Z8]ˬ_gV BBIW~V ӈ2^Ir2c:KQ; (gӞ_% ƪoIKNE%^_ɃE%Rn.17K4`;W!26r;ho+?cCA˖{ *n k䡞`9@ أYwNbpdgh֊Sp V&2턣yN"Bא% rb$CQ=³th:&uHJXJg F=rSw/_  aʙѤMi 7Cq?clri7gF;E0pF0~$ yeA $c1?xn /2;#\_*X̧) bqDQA,Tby<9k}jyr|1]VKuG<Q3t@]GxrL%<ODp<9"l5u.Xã> ٕ֐dgPzQ'ǘq >}%w"DZX3ݴFfzP":B1"SU/ap!qr ;rV8 x8)q].}6n<%;܀p&@w.\ >Zx 5pvq5vp8w[뛠rPy RPqI`C%[ 56JFEn”GXlmw!z;Z)S/6]LJ&¤E%9, [Ů` n =a't*cGҋdnr!ujAᕌ KB!e8@t+1`U ݏD Gw<}]qHvE` ݃!nۤq}U~9 Fk\YJcseGvӰ Z -L#MAi{3( T]qam!FaFsM%'cuj\KȦ$#dU`\k ߔI- *?#b 7 $q+I1_#rb^4^Ǻ֝FA059e"i.*$FËQH(;U(!΄ZJHvgܜԏR ">(4~mЕF+(kTWө=F.oxMmn];O׏p% :K4Ӭ|kM{="P?aU80)rG͜svp$H%4*SCaFx›}NꇈNAVgV͈NqD*GCLe,>s9+n' pĔv~#D2JU350VMX3ܝroOO1ґR5CgOC>+&#gSHF?lfSU+%NGlmh.l$"%+. z~#BxwN=y1щ~rLz᱖yL#P|NA5:66e13MO" ЖL*?]` >exJY2c]pٷI>4n{-d$) L3 &ڮ-yD.#"|]1AΈ83)*< B|)t=9ž^Mer*y/܉wv #A(@AE{kls<\'=s%7D'gM~ 4_T@f@Lex7ci;D_J 9E'2љVeI`*ɤ!Gi ,/;q wퟫT 5гZ3Ď@3wM ȠXK*+SL+.8nWVW>W8_8'*U5x殔J j(&Edrf~Nc:9s#$VGHm2]3XI`" } 59ռOSNDEq枆pűBg7@SuBYd!{huLMQ~ Mq.-#VE0*].R[T&LK栲! fԦ AפdS=aKZsUU'$@V$%o+ri\f P<|-Vya$bK"D 6:,xJxW@=NgGB#i0-Dh'U`4Dv$b6c`0kH9@`"8E.< J[ɦ j]17N;BwU0X,0yTBsC$mp-|S 'Z/cW a0ūYqP^t;B{ *K-+(^D+H_jAG"|4؞O`3I3rl)1f M%18}V7PSI`o0`_AW\IMU*^mXJ0ؘݵ-3K"WMNb.%%((JSHeFV~!XeTxWK)>n>qX>Wa: ԞXNλZ\ݵ;Ȃ\{!U|TbcbFDw'@䫍jDjg@Ko{Ʀ*Hb Ţ@?aL4exEw4Ns +>2FrhfțuFGbx+}ZE#⏋"sR|R7Mu!D?t44+XLG[Fd[ʠ7G'1pwYH׬ŵ)N4)DRy!aJD-\t6S4WPSX\#+p?RWPsLGYH\JeTPVVE!7U/[*Ҋw%Yk :~W)\R>Urڕ0W|B'=y))> ).<Ko$$`oʵK26@ܪZк:35l'dsޓ+5Aw\S)V:p;!(nCrw3$d!q`MΨ# ]R7 lbUV˵UX $Pjccް1rP( BBf͝qC;^xĆ#93X,?/we$Og8 C~uemR!d\T:3k\O kRݦNU/ |ktYJB*UdW /aZjmq) >5ȀVgh!.\R2T(6kɚwoqJܜÏ'z,[=8z4Fqės%|D>zqHY#?_nF!KI3BvWTƒBrr{uav;+Q.KH`S wע_D ǞyB†`W>pW!sx!cNݺxg *rqY C•D:?J@)j{ȄO1IB-+vbIʕ&BtE+D PM ^QI 2%QC82&=K(%.hH`rhLޕ ǴyG$fc,X~%ލ̎ۦ@{ʽA-́aQ"BEO"Ufz/?jI|J5VІW dTKI9GmRG|Q KvGohgKiR`,cN$P['fg0:vʫTG/v>+ <9gӘvٵW) A51މgQW)(6A/7򉻲F5i޸xHXc\(_ &UaqXt?cXe7ԉ%gT 9x8[8w]%"Etw&N(s1Uqڶ= ! O`ɅqڊZDFT||) mm?H־[kOGKp[M8%$:+R|c̼[;K4kQJD?1 pHeXK[PPd-'LAM1d4Lpile.n[  Bt'!f<;'wCquA!eY?|:$4UA\e&.䆗!G~S1͜8eGAs:z5mh:9ꝨY& }xJE:|f=_Bj\V^|nmv`JNzqA'6Y<2 HaW Y,F"B:b\- չ8iwuնKmd~<:uEpWqWeV Txl]of/ h3}:x|r瘨k,F&;&ACUE8Oq S3цE>t_l(mRFcs$Uee3:#&.ӦehMʹ#.LÊ7<;yT nլ ֈb6/KYVΙg#qEj0F {z]O dU=De yŊ$y!JL|th\A-.k,bhW!%S^zN 5=d#ӽĘ+Z.YyYU-6sW3 iQf)*}7bڗVTET5_ JS6otODLRSu*0*"4#–BR6L"4h;iޕU]΍ ,4NN⇇uTBe(LűT7TIf$'!Dv-瑚R]w~ZFz+V^T^8߲f4m e,V{gl9dۣ@ }TF4UƎ/&#;`-Mjh~;%$inI#!hU(e-i0䆒'{ XL7D T x1\sMElrAZ øjKa^!9!QF53/CzkjnZIx| 5sA Y!ENrBw69Ǟ]@.ە]Tp\KփđRF@gǁNcdɋ" O@y[*8FӬ(/f*>(I8 :thJF$%*ei|uE, (kFl-:KR/1SHHTe:S)M"B7EP@oĥHN!f"6݉.Yڄn?vmeFW~+*%SUtms4Rp$G39zpv: eGo&Jmr;^^vo~VӴGBDR} NpTEe*3RSduf޸%@H(u$* (i)Ό_짧Rҩ#:3=wl MJTS"-^t(b {g# uNYY G;^|tBܭq|:A;qҤ~_R,%%CFӸc!{^˽xoUƜcy[P+/ym0ykVrgȓG"+sr +>Ǜ4hVR'׽!QBO<>B~[vrxXE'jXxa;)JdQC2Lr$'Ly~gq4ŝtzXU] mi!O E$̎έA+UxsM䬔5(?Bo;hMmv,q};-ɱw2|Flb"MMHZ8+`]r#*3R=̞^`4aWL7 /w.:GCf*띀IV"2>K!*7kNwI 侀}yV5bTx'<b3ܞgyċJRU+¹q;|RpKkh$P#y}،MLj_a=zX,wu} n_aC]`K0zm+ғRh/09;rCg}OUs`{MsWjfS 7Qq港qw89};wFhm7_/l1B/pmcM\(=<ojǤQQڨ;u;5ꖕȋe1vXCŰHaþΣ|N|%w@7amDJ-X(0ǝMGM0UI'>JNpL{7EQQ^ g)MYHWߜ ͭEnK']pZ umYbY4+)WQ/ *1Tz*2:Ϯ, *a4'\B&@;C)Noto6dWWz4B׋:?`Zs:{.?ė?7x7d9moEmm/Zm)|bm-5)Qt#(й 󉭷)\b\ ~B4FUbء??ʹRJ@֧VrV%lJL [Jny:'> `y 78\?0؈f Ly141MS87 v -zZ+%DXRFN}z ĐǯGr=?`_C e/ YL{@tR@=?&xч0}H|g'([p8Tf Gz iINtP܋@%=6 Jtt~ /!Qų7TuG/e%h='+Mlrj9C.!$$Ґ:#d G)j-O8z~+ 3-Nӏ?o?`^ӷu5%t<%ʭE]}$kנo ˏd#{Yvm$M[Y.Z\B8c!Rd?Z$(GKpiƀ('m$[;axs$S)+hh(s $ ʩ[ΪYZLtdnhgBtGD w$鶵5|6aՠ]Vn4Dnj%gkcwCwM(c7F]Da=wy̻ĕf~-tgDCdOYE@R+ʛW7J6MU!BͰ[Z&/`Ǝ5B Dy-5a=xlchz,Ҫإ>UE_fL L@D:j):-d$=bV%\8<>r/EN u'dUzuy筭>-wyN:gʹ- s: vhXqcU(eG93.x43* sӥh k]w;x)Y;pb7cJ‘wJپ.3ʶH,u@$ =s@|P.,jH*\+K( =_~!"=c/yώ6zo[]-TZz*_r6Gas$2@!uLu# Sd'I 6rdvN *,-:~gb eDO!g"&ZlXͷps qǓNw0J+'ЂF `UQlLBxr%aؐHA^j4O҈|@eru.Shȋ;nšuOHWb h{ / j. Kb6jzND%Es /UO.5Y#zVwBUT⽪I[_QXS k|g^!PK*ե3[`q k3K ) PJ>BrR,خr18v%X',J$x #;r|ywRI Ȓɋ$%EH[+fx`E`# )Dsp]{ &P,{-ۗmB:f0-!'M*=qrJz^Kh{T|D\HR#Jݏt fY @C j8䌯1Ov{0 nG\`yktȮ0hBBFi$泶ႌeTx6poYK)x3l=sn!*iitdDom êOTk! > Jzs¸OrDKĪ,ȯJ讘B7iሷn(âF1xF4zQU2f9myXa`*`h8F׉1e:xC/^:#|~~zYGSjj`ҳe4Tmq}K |S$0?(UST8?}bQuRċn\{"'Z(Cw\Qqɯ K E/1UKd&W]2"ᲅ[!.E ٙ^G4.ϗ豇ga,R~!مav]0ȏ(I~3l+Y%`f`I{WN3+ Tڑ4=-ct՗l,mID$R`s]:ѩ 2oJ5\޵H.Ogv?Ͼm00b`)U#~5Ax\yC`vq%2Zߥ̼S]irg^.A TWw+O޼gՐ"Ьm_3 lɖqohS#˖#3h$FpDhu ,~'Kr5ҧ-E[#(eK #h˖#3h#lndIQe 3K*Oj"_ϒ?^41}xG"1 8 N:abRԩ XC_#^:M83RM^Z.@nVX,ċ,[U!n ,۱_ pme~5#ίνlг3od~mA] }MlfR~;4$gub Øe֟4o- @Ӭ02ޤ74.#J7MY P~ PIaWɼrײS#rҬ=7ZD8η_㭥Ŕī者*G u,L^c.#BK֕J]ѣ)m3(O"b\ͨR߃[J蓶'Nd26iWny͐Ў%(#MҶL^&\R* f˼IS*e`ˡ9H`; MIGdD3NήHV'ZCi~s#l>軚d{(BzfeSߍ*[NcP~X נ!!4t=p}:@ܶ RGƭ&$Y8 e$zCY;01Ȍ@kBmu>}́ϒ`lـ@T'w,;+?`ۊًi:6ZFFB=2DE8?AlcFC|޽#Y(=N\|ɒ_!ڀp5E2~."=GtO4yRM$좬t{<$2VyڤJ%'S꛵`jJ@F"]F?$1pBH`cxf׬V 2Ue.^cN)PVʠ|7Bp`uS8OA[p!@x\i%@rP؈ BԠEIϴ9KS~>y]q~ tޮ*AmM?CȰkmfḂ>y?$k6ACa2u;+lEW*1 yYDNo"|Ҍm95 X7L4I`BӽmW)J H2Y!B_*(Ӟ3*,tOޙI|Rmk?ikZ&בּfn@5m}4lDC` n?l&]yuwhc1/(aNٶtp,SY>x~6fk 'ߧ>h1;>#/ᣊTFPͯP/dwo(}>?e+no1-}=! d{&^T*lڭgD ]_f;SM ^d JKd@*P% ȐjAWd /uW׭M̙U_r}|`cZpTB@7{`|#c_˲_~3Wzry^¸h)`y,殫=CؠxG#+b`N_fļa})m&leVݰRnhbZYuXLc'2ڇ6֬+zgu.FsW+@-FP 922K޸tPj!->7Lj栴)ٔWP0r71FY욨{ 4%]1VW,Z;j/ui RAr3?Eo*(>yf6tyuFW9(GӉlZJr c]4[/~RuU`*nReRUE2 5 @dϏ.ذa֐ll&WFz %X#l@8s(FTC#B}Da6#… &_#XQX 5Ky[F%MrCa$TSˆn]s~VP1uqsptsi'O2]e)mm͖_Կei\Ovf"iybݮG7 8fcK]pGG~,K %X+$irSLoͪDkٙK ^aTJJI)؈%7_[eA|,EBuz 0gE͑%%mA<5{嬴7C/) V䬨9\d:YM'@ŏ\}-_"&x ^jr7KfGUjDrv>cR F 9w) ,j?Q_͂?qyfH^go@k@c7@?h`, .F, Sa-@f[÷vkB˜-M9õ/1Efk:l޴XݤLZs9l׵#N@s1\U.T8v![huY>R|嘊c_!dnP&]lzۯwn,Vpd`T̠cı8Q]7/,T7 gŎՙ W'\*4* LhP9E6tjyX74"y Zo A:5J*hoG ,o:T#̀}yKGW!CXJoW!ct42P3!BX+W-/o͹mF5dUAòHu62 @c_H#CŌmNj^ |XGͿ~9ڊӸF+גTtRI$Rs;/[l>v3@xem fP՗nиa"/\yF#mgZ_|j~uE_9ը~z =(&_ Z߇Mxk8 ԌG_}^Y}^o‹(oҤEGf6Q=rV do I5Rc^WHOonv; xBl̓ n u4HYn F[liP{/<&%ڊ lr rjbj{AAn@»6zmb6D`c,pd?ձ7HAok2 5B@3F4̪tCwɽh7P;aa܅C3M\,jm}o+פ<4}(ɢ KBwBK}叆%72|aF޶Z0;#Jmcn} Q3z ͐s1{C6'B# )sz#&Tq.Y7cp:I~ᥤV3 +n1a,Fq r:ZN"u']/C$a)ܕǛ9rS38*S gn֬-P<`6C~Hur=u%V6oĖ3#Dl0Djɺtn<6<$+m#jo^SWۯ*leT$(Xp셔99bHa_AZGY|cW7 PIjwoN>)Tp .UG (qb'4Gb9RC. JG T]lG4- $։wnP3ԉ.l|YEB kb 6NJc҇py)~NG̶}^%Uf%e嫟R & .,`]ڲ?tR`EWBsRR|i9V70ֻ(X"@S0l\RlK13Hym^H;4ZtxwxR Гt1i"ʱ^)$݆:ϒmӋѫu6r]&+a7ɨ|嗽[kb%єڸ7HQS!(o i,XֆmJL4?!˜AZ拓kf2$z!c/WhNya(y,|"BT eY0//(KcpdL]dY7-5M[%040 67gEvBtgwj"3:\twIŪ91QUPf)qj %M8PP5'ٓ^XaKTQi_+pV VP2@>sK0ڦ9Qmq) )xq2h2imµ; ]6̿ [ɴé!5*_` h8zsbpDky 'ٳ6t3X257:f P1L }3m@!"ڐDi6w8# !]w;_~x5#NNG><4V* xx 4YWg,tͪIw #xR6uSS|uvk!XXi³YM0^IBBVhؠ uS˷ LDZeV#of%mCd|?sbLrroqw$Q1N)QhIYEjW`Mbsiifh2(ƕ?\^`?Ј ̹v`(, 1!`= d=3j/X̙m׎sAk*=j1N% s%ƙ~)j8eБ{=Ƅ)--L ICIG`k#~]Ry;,"Q*<0T)tfzerq?K𕳂 h@]uu0qj)ļ]4QYoѺE@<Aba^Hd A)Kx//>H2%_3I Jk*zTd(~ar D%Kjt,b*گ&f6 ;$ìE'mdψc.-9~Va\0V냐.~Y?cUj3׻'kf@e(o?RᡎhHLRN:#GB d~͇c^bRMiۇg4jΌTLʐۯ͋jȰћs]OZ/󥿖|D3CFe$Aٮ[dJp%bՌHxkF]:I/s{o=븅GʄmNY1W.ǧ;['{g<;;{{堬N_x?Mb$DPX`. O}ZK-U 1?ӬPjf $vRMjAFĮQNbe1pZ$l}Kq%55}b ݫb˟ꯌLJ ܱ(2Gʰzw ^Րݜwvgd=cCtq B[R!(NfQzw Yqok#unG::rbu3>evO0,r+W(?#: P()Ejp HUnBnfy:P7L Me?jO2;~Sf\id^$ /z<UL'o2& l*8{y'J{cwMeYtsWF/=Ɋ%تϱȲ=T+OYW*0bimM+Y[mΨŘ @0R;PFj?}Nh9%bHѧ{Q_)5W{ez S5TEi$*^,R ')f~:0VtiyO:o}ͪՂ| o\toiދ ;P0Y{< .D{sEŻ2vXU5kQY@T\LG,-~sjh4tls3fD137enT`ji!O5ɘS15hփ1~G1ǭkg :̭d3̥h0τ }[m(sxFjٷlrs؞Z#_d1hu_|qqsp|Er9N^_IN1swRbG l- +ng92*ÊxH麸qy7+'jWWEiY\lyk\NWUT Ip5Il{.Vu)]f+,&{afLK-}LPUؽɶc$E2R|5L *W]_tS]k>М#ZDsb K؋L 3adƫ&3aq7C[_9UC q E#~"F c4?ɥMMS&^m1WzU^J8,ЀRRjػ+j^ɶ Z 8.%q;[Hm/q_ReiuC3E%~yni݄l )]SG˂5slG;JsF u+ϸB|3ynWRv ^wM5\(r VPd=,1 qKcT VJ=k=8S,o' / d^D3ivo }1/k^ٿVv [=>5,$,8f[? &Up9.dy =}SX*ge mnnl<2Ӧzafnd..~Llm1eC\3Z}oYio=$Y;3|}ӌ~fFcN ?$hu3y>a3~̬_xy|Ώi ꎊwd9&OX g"8۳4ſa[i> |ȇ=+6z\2Y]Bh E 쳲b$kfߣE2T0DkDMTP8^TcH^ \-:)AIC} $TkDҎaWm!5sZF*'u:Emv CW%Xcݱ_{cJs~2j8#EL/r.U-G"ͳ-)8[u_Lx $ـg@ (xNp@ǎ.ƭ]P)BXQyVE&4s;j[>Ntls( ?r~PԻ%vאntC}'&3iwjˤ5#s*6yS%l 7-6v =!y 1F%h̸1Y5S Ԃ'x_X3E6^?iDb ftt'ECxR4MѨ|'|j?^$KO::9O; v+;;:LOwJNv6< wbR]~cVI֦(-3uH~0O!PJVo5Q 1[*f_5}lد eց4̬XguB v:+1XPnÁؼý1g!3G#$Y,ՋS`Br+b͘ 8!(M󵳁Nn1!fX? ㌨ XE@:{PapvY҇s!`yފxp4Y!9w 40J 72Qdӆp@$+&M@@ө+>6As)ͣRHVQx}k4<02*JKsl-9咈/Sl2] f%dΊQ/!:cë]ft~  ,yc9VEۡD)ղaf2nn}ju֌G3Ռ)Сp\4s9RՊq 2m73'Sf,-Lwf QD~sM;6cjА>?IKQTʋX3 zc5"]<*,e¾3Q{~0^61N1C=o4:i&U4Q%PcEm@F^v"-:޳!NPO &-TC#gczs䱐&&2Q*i JލsN|3mw6|]Tl|YNj?$UqQd!GM %xD5莏]1xc qCAu4C"z8+s bDA bޟo! GF1rc(TFanAݳk \V18W'0ӊހ??UU=6\xo{UĚ{o!Ҫ>y橖Ѻ nuI 庩Rf=inhexaLu5P3 c&2>9lCXfڱK-}2%ɜ@OK A6-FI 㔂.;s&Q]ow$j+0I{.P=|gPrzXT~)|lՅ/``H̝ԉ QʷH4L[Yv\oBV*bnȧ~` LqTQVLH5]PbZ.aL>66Іv@ ǃF&΋r fQC쳀xMo6eXLzjĴ$[V@Dyz} Ų&R2;NKUヒ!07zQyeg\H:Cq_ >1Gi1$XLQ'ѳ:s,0dYp\ph9NDFzlYfBpDr:>?P&9)"[Y]ł` n%.JB{vefMr*?쭃k fujV ׸$jא/ʼntl~6;RxąL:ruc2[(/JYJ)]Fu?_!"#9N~w<" eZrRrH?Z=9A.;=K?`k~dt6̪F;vJQM/[I{!?E Y=I a`l'9o?$kX\DX,ZL7f!uxJ#^q:Gg v n ˜;TVW1a= <,534g9VAaiH^[ej"6c7 RDvT}kESgӮg7؈КsxM`㴵-\}Ȩ*Yr Kzаt]yGt*n'dDNi#XNFdffLk&|ri85Lӝj|fF4Փ/a6 U<PIrqq~{AKϷw.wNg;'?ln^lb~GX?]\>tH% ŃF~;DWς llml?7`iݓ-CGϾ$9fl|W/7^%mmGQA"z-]uOHGg{[;Qo{x󆟠ف]ľaK );@VFng}d}3hn7k~2?؎qr~qah}~zW۹e%љH[@(o.HOOv6O$lmmɂ|p}fwD,0 H'tb6a,9}h^CSqPP/j|^W6;ٔ/F3`;#z3d,`a1jNuA%NԲ^쨕t0M9k v_@A^@M>0 u"HÈ0&Lj;'M~ 3^wdO 6fK6¿Q}l;90ё66d(9~jmbۣ3|lٟ]b>ЂͷҮtYw P 17OOXGWwpg^udp?n^дN7l{f|indCMv"N0:3ld;С#9;=1vB! 96\bo|nƣyhp'X [XKRywawksw|4\F[i 9WP"晳pRYM7ꏷ`D0cgc~!_O,γ%zOb#G.tܴG5^bs1’؀Ӻ9UsJxI+Mn%Ձ( uT ش}ydRD6ˇY)˧/x^AA&dz =لlBO6'ГM&od:IMɜd$' e-f+zwMH;&ޝi;&wM:Є^NR*r$Cpe~2E~V&=bF!CuA5~H^9 [BE[uh2[]&,HXG5gXDIδu+€ιsbV#?QCuq,\2252!ؚ?nH'(С}5wΦ6UPRܒ g`#iүᬊ\^AEw-N8ZUzmO]D?1k,du20$ɻk?`>=Iz1lj2>t6e1 l/93H?lڏ+#`V ݭnj+R:⥸,$f}oT5}mVےwf%uV1LN(5%i5MRe!0sDqׄ_QvW9yL@)8ȵ4oBQ]wg]pyT1h rۂZVT"<?*iR6YS[E_,[ %~?.u_nfh4OL? u3ۚ^ܾzO>QV6 jTBʺl5(3-H#7A4| HS$lFҼxyyyyyyyyMEpv/R]p{0ᵧ\AKպSn_Ulc~٦a)/c eNL^Ko=Oi Q(?#4qq5f, Yͪ f X}K:=jԞ[Y{sUHʕU$0G.}61Vgv-ރ*KUg`͕Kyh"2Q;Aa E{3䠫zT%X!VgVׇ1 VBI/Vfa,#ZAxti9Kye7b/.~Q(;pE-7¡!?[sD%[XQީ* S;Q<4̨Ž?0K^ylB*?r\.FtB8De=8r_QAv#}ْGD. f g: xo?%Έ Ç|B&_N)];(r>%?FQ0*b$!g>Wە (tog]s]ޛdko~ahpk`ZR2qi0VN&>)fܮ+?خ}vs&|iYo;r}hm`2Y|'>HDP>U[u1%ǝsuq]%G Q-#莞A*sH M-!~_M7x*}* ƕWFiYRn F4@K86O+}]$1;憭à3I(2ؙa"f}9fY~+g\]hn_ >+@h6tbo~r7͕vӼ?F80-Q赣$B̿cN`;{3;c/ZC;^۫\fc7ɻi>Qx N% fuTO3 #ҿ_(j,jEN~K虑<~|ti/e$J/Knj1sE^O@F9e]2 $zVpҭ7!IQg:* +s (E_v!2XhߗxK?1Yj;0(ԟYw- ka{Cїy'Czw-FF}&p*#2q6wg`6A>& D& m^`&`'eCm`pl~=Yn>+fx:>]<+vs9 3a Tz,(TavKV4Bz[hd;i?3߿LATœLA'AXj:î䜟)tͩ|ؚOE9 P!QRq MH-jIA (g+9dTG@?K0IP=mJy؎ <fh'V?h+d{ uvMwF>pP /Pt2ȼjyﶩΐ*ջ]]Mb?$tMUewYyUE{R/(ynK/f˿x1|u ˭6fԼ"1#ܹzl)?JXڱz*[`fn"SfB*f1Uie/f1!|)2Io6ΕBݨ\ vߏ(K礥r` 䤜P'T)}wCPVs ~+5 Neg۪N;78!`˻^L֥Jfd) !&f|cOuld*{PD߿|0z{([\(XTXPA"L-8,r4_e?uw-]5 O]VT,cf{97.P)!PuY$<( eY{MIK$a5p0t`=ur\i*vS mV, cN假i\~PAY 0wy(AfrNJ*Ġ.\\bk;tl~"*So+Ȉ0 V9 <5DNN)Psl=qS3i(eUj& DNX }ǎv&}!!Pq bڌ!"zsI({c q.6 Qv H@_Y<) ֥ 6(NSCS4%A3c9j8`:U-&Ëdz</s!>gcgrB0Փ~edaczGPW5WjEakI?Aiw/ zjjc/';nm]1Rݤ"6qjV&ဏ%(3.ԔdcgTI.?2MQP*Vaգ2bS:tl֞@sGWxp(85o4L U7Lk$ '`06j@o-bHj5v>Mbxxǭ$Ϡ!5"oj%/`7j5y0Yق-8d!%9{pa6ᑽS' I[8ֈR/r''~m3:=Wc@&95L/SI"! C}D)y^413i|лjڏP`>t{W8\.d#u `%3 =^y/ } 4I|i3c~kfmPÌt:)PjYke8RWUd e XX@a+if'MDoXdҁԆ^sLU|"ir,m{7 C/P,&7ܖQM'`G4 +2`#X)JTK\U[orIP-lTLPHկO>BWz+ MGcYբY~9##dqp7G鐱SC}CUUv8l؍2 -1Kvu!ɫOO6ڑ% {|⫫NӇ]2S&sÞꕫ qvye5*l7(b!q&Z9ɓ VM^A_)} k ThyMJH#z)!DOCyT'qxi7,lin)w^X@6.'dĶmH'En @ gWī• P>~Ҋa:FC|7ceLS_򮑶Qa3|p3C(+ל%jE#E=dnmluJJJ2M)-SiI$Վq3qa ZbSGx͎&Tdjh @e {>k2A~$MEoJ"%%Qv:@Ζ8Ɋf r]j$),7!% fQo G }DЧhtYʍe5-=Kj0R3`:ά,+߆18#{ywR6^1l{\(P&mosV(icli"VC2 j ԵZiZASlE ː?TYS-$9Cs)O}uHb!rirgCm-TQfF,"*xi׃`QQi.^QϽ2=f*iYh_GMߑl}>W"oi-{d^yQlۆ//+>y{/fYeI6cK.G*KETy p_SK0-2z\nSj] s~1``m!#Řbz)]XB$5dZtC,܁eTwJ{Qʙwt3|FBUsEfχQIk@秭MV^ >u"5kpaTFK Ud R\t6 yTɒ@ȤTb@A. R#z-Cp#w- IPM{FE3a5 `VK36BiC}N0ccx`9ђ]=Zi/V*͌(1xi $MI쁼n7kDfrPgۥ- Qܿs߀MSFIxQyk^ FKBFԧö OzRh1Yΰh;x 8NWTԗ oV(b 2G/B>OC[8FwÄL`L%0ז-rh dT+%:LOqB}P9v22f04h/mY8Tjl\?*4F9e19ܷ!rfUT CqA._EΜ/~ 5{1rA YSꏾzѤ}#qDdb֣OkVF "x6e7Bt߅`DUlB5TR"MUKUfHS߮$bE+N;Z k5_ZK Iqhvg9w=9`4pl{=z峕y0iA:V&2 l9-&rX/uZ8.zBkXj UX:Npߪl/O p]ߏ&5WP~}BBPD$M *I812!kYw*T؉ǪŐԐ~0H2Uc`^vljYA7`|]X}<_@^2+ <~WSNtHAĥ^!O@Cy̡*-b8m[-_%"^"xƼj+n~Ҭ7z-) t7'̍n]+ٗ]~"m-|Sxy4=|w|!d`H!G6fȳo&Q/{E\7׻Kؗ/G\)^P,1]$}үJC||DC%-op`XﯸuG^6l---J͕^+F Zy1'=šQwZ((t,*ZVҀz8N#!EYkW [Jb@mų,Å6h?-oxF^_nkgI ;o;~A2XPOiпF2Yz[_T7J`k<>B״t4~ˬ :nG_;dgs[;j[gjIKI# 6s-6vjO\4(^6EIQ>K][eFVe >px%{*1Qd"?f`X hvZɠ&QP [#f+r#(jIF{oK$31Y _ʫIi,-{`O|w+.%SKַxHwO'Hz+KnYM{-;=c5cΒmK5wy2.OS5GZٝ# ׶O'/ t}>:Q,8]3~,,t!~COț M3}nq~SGM-؝_Go;B,L!%B芐 ufO5j?@@T!aR7LO?CJTv?7~o >2w!hC5>)a$%F6;x7X O 4@,#FC?@=02A+IS30LdM#i=*#0 ^Wć0<β}C7+Nv=4'e5.ϒ:3\Y؅IESb O<1'FQ&= ܨ#c)HS1HrE/#ӎ*_j2HM2_"kX4aG "t[\15y>*pcR Zcu!C SN h4H 89fԈ >7lU B[({Ռ%c.nDhhٿ5"ahp*c- ^,*d#fכGZ- ^#L5uDX6B)> r#4 Ц=̱ZI(5 T%<}j2cGZd!.M1 G䞌:OlRKxTwJLEU @0Q`Fug%))[[>as!.iY&<3))լg;|otA_\}#zVҼ8c@{#|2.c0R}~ m 8|;_+Oߍ:`F<sSK"筜?C _!\r-WkȰ~: R,,ce jo & O  V]  *Qs{jϯlW~ W+RmzۛIeּ}fnW*4;>rX$0q86*zQ]㝭ە_`%U9t"WSlݪR7Wh?BOq7cU}z-Rxԝ K)k{7hRw^+^'LŨb^FӷE:&:ЏށLd?;+)1H |Gp$fl3D )e ) ݘj2~b|]hgC]1n]؛e8 kjq1F~޽7Hk>w,K6 J*BV '[q dž=+XAN3_l|R5vivs%=[D)X+Lhbf2y^IfC17 nUjRe9i5yeE&AJM^i2s9y.c6jӫX§ETKIXrFYmfCT@6b{uV0EU6xgm'?Bd-5h{mgb#\YNV469t `ç9hyban Ǥ_?TgM3xh9LȺp_]6%im2B^{ccrĹ gSr^*u.F_ͻ3yVʞe"*^MR&b#z. ST aS1ʶ.B\$ 3\*KIvuzJڲ#N cp: 9E~OC9y @yEH"U PV,^㭽rZ*QR\RNo@፡\+e1Ȩ'#*d՟\ókjkcn;u'_,9ԍ qg[[R]y etH9_Wvbn@0R6vr6y3Hix.$9x6C58)cI7gftf:t GY^5Tq״!2۱Z>i|5erOf?c: b{m׬BCfr*4"U>~%+\ Ĩ5Lw&T`eef*+էuf`A#D~trDX Alǰtv6ĔH8N(;WoAt1]q'WkO|u|>BI+6>’$&yg6+xͯy1VeJHM!- v9kkq{g0Ytҕ_o-Ց_h)j9W.H9NE0m MLd\Ist?s ?2paW+du_Kwb5jD@=ʲ周6Vz<} zTMߖT_ӧoޘ\X- HMW :>pN6wpo7`=PW|?\NN**y\TUwz#旆-UU͕m?;J< P;*p$W{EzkkcȚ4j*/?\I$%wŒԓ&9o?:ba͟}~>CpCwM3qӼ?> !#7EGd3u9  +gv%bWJަxycP0&5# lv")33Xm.;JHچ[{O> }؟G@S P^j@;ZF9 ܴQa@3v QޞtΛ%es 8'VJ}ٰE^d߼>2cp73pG}\If2:PH]$lpQ*)\-S/V#(ZfI׺W-Y##p!YbwcD[%OGHv)ja7uH`)T14#Mr&f:uVkLTĒ5X4+儴6^jR_`XzN B8=ڬ7Ʒ@ҰK$nF+ڀ<4ETwz4Ox(7'X&ٯFɚni>nA8 4JHrPڌcIZl#W46Ѡj+3i8 /j p8>DZFو}O0 ;q^ 9q`f?) o@?Uەg¤UxĶ%Ϸr9:v_';|K @ Jh͸Sg8ښu/d/ ws#iMUC9hn])`=h󐑐Dd85ӈfbK୵xֵS0x&YE|T e1wO1p9clJM6t3yM1u!5 U5_eۭ5&5ɑViJ%4/Y]p'4΅;] AB)(9:uTh'n ~&#DF'aODq8La'0Zʠ0KP(*"ٰ2OK оm IئW)%sXBqHH6ü we ƪUk5߫.楞@ dz\R| Hk9uđ!N22C Rf~~t Vۆ03YKmGIP2x aKU@%Bm?Tݒ)dɗM GL/95\@c(z hXXCP0?S~(h~_"GʏXA\V;o 6']W ha QQ]e]L_IɴɦbE)gkm)8|8#U=D#{pg#Wb)E;!XӾɪEarP$_oSH.B]77C&JzO'mvid teJkJh,,˼0GcM5AF4ls.䜼n_p"IE )cS˜}xTIZkFJ`j0.F (':3ņjkD'ND7d+ߞxqdxB < R7RQF^]͡G2:߻'G):_ av/ L䡚L3$l T6!Iy̯g)^`Jp-/(~x|׌,SF2З<8tپp^|vsV ai%$ۖp $=>E>'qJN{OI>>t[n)ˀ_kF*2Jpk~xS 8!6L~#R['wp9I}}L54p~&[h C9D])-_e,܄#y:.rCIR[ </i/nH3Ɇ5CS\ 2Vjc`p@>,4PHªQt$%ڦGt , p쟾{NF7)F")&%Ӿ#-߬ȱGY(k=D0xފ=ftLE&!ל!VrX1LS43ږ$5=)bo%p{O4jfKh@eC=쨀% 0 RѢy0 #"X^/ ܴCU#1Uzf}Vf+"U(/cNY& ь|s6@]ZRE8֭<;̽ _uao~Z<$Ҡ-T70{KuD>qI5R1tŚRv,g7gKK̊<'MV̷i8 $ͽ[622hBEzcu#5V5UKtT2C%5}ĞXRK6T0ZLaE ԝYv$n5?^IÒ kx!I;ͬZ%r% bVg> dq[]̲Hv$LL<}` g`¿d$44i볺Q_>doFŪGa)W:6W&B1| C yD,%a1RjrNs5Z'&hfg̃z#`6b;2(*$%ˉBFPH!6%x唪n34#Js昹/¬+:$ \1]iS2o%t%b%$⚱04⊉+fv; G^i\c JKIU`"U qӰxL!0hxdrVchī:JM#֥ҭs͘ᑼ,o!4/NҚ(|aY|"9f(;m6AEӳ̓*&Te@_\\l=5z %ae|u~rsxvc Tg*d䲤Κ9G%^ڠ 3ϼ"c˦y("J?Њ{a?l{qYиwR_MRt7ꖏ#Gk( J1D{^urT#47UW/;.BeTYE=U %QG⣪|Эc6r$Cü i]hXxSr餀)Ah?2 VDRq?/!N`.F1WV/ zreMR `%HgȥldC7gB7l40.M`a 7ybVI>iev^ͻs5-R'X /7 6Qb8@'BܽꊢhEuud=,Xڤdg~Ծg8/LVsŸx\l|n/3| /|'s1_`Hχ!5T$y8"э؍#-g>nxN $Mv%L?`P7 % =Ɯ<'&{Ø+Bqͳ>ień0/]R,6+5[6W ]VW{C_Ug Dj*z h(}gl*QJoAaQ0TX,}oqbQZ ya7^[JmQPc8BO+ P-8 @u k*U7ODl_$T[8S=3x[R<in+sZo"a1WE`;׃//f{Ex_pr 0RÂ0CVW\5PIlFý jP!ʗWaZ̵P +.%Qbi` U)8f )c q^)ҷbWM0N$*[#~D?VB8ң^6 s ZQ1+V˺@Aϊy`$itUZxl=J ?]=@Pjl'BwjIK-]iakY,#vmݮ\U `GEZ ZcP< VzdJCl, >Q(X*JyiI *Ҧ8}O a*+6yP1Yms>2ZKཐ9Uh 7ej6I'h(ĐAaS\4Z7 9H!9[yns*}-LɌU^ C19D\~3#~^՜fhS;~IF*Qle ǢJÂi%K7(:Foޫ_.1MN׶,>f9o&M{P="D7+f%"w3Ja#(i7)]3 k ٲ_ yBՐ!4/A,Q)uJ1CKzϩLXMn+p:VOe[^2NI <P띈#:~iJ2 A8ڲ3-+@۳Y2udq ѧx uN|rusDݍnM2$)8T޴ϥp Tqn%Bf1vAm |bzOM u2˂y-2Z֫+Ae%>_S8yU_쐕oEpU_P z$+AkBpzz45:JV٤͓R)"=]/3O A?&a-R&q6Zs?.\&ò^ u"g98$%o0 n0-2Ẁ >/@6*8M7 jn} 2 Q8ɗ_"+4}ÛJӭ@e1 CiV#֤“^mPı^nq,ԁP;R/.9>XXcL3%ex*zSМC<+8ş= f#{D6ɝ#&;2r's"Q!+ z-aX%.$}a*ډ\A]Q!WZC[խ 1'd>kK0Xɥ(5Hc?up5݉s ST׭usb ,EJu%:=%;5NjX Tt}ۇ ~Sݑfo˳66K!דlo.*jPU^͕6B{OcU'̀Ǻ#VJabXjox!>AU rA.BHJLYݝ駥Žf6 F`rN19Kh_Eh}1OtXQfG$5Z4 ٽLHறߓ1? %l=Z}} i <TdB D,lDhbm"1 Cf1yxjŊe${Ո{g=@xgvbDO<3. W#=}CWU;\&+')3}pV𚄫CTch9lMt, Zd 4J֢͈|3$]y}*9JbuhD Hb1e%kW^SJCH+zJ~T"~殂l,qu\v> ջDP-v։Td'hM"#>+)g't8Ŷvx304qrulaK$^U5cu9)MζFӮpஔ5=ǵf C:t!Lޅx9ywQWߴ 'SYro.pqʖC6(OQ7 0s[6^?E!Fύbd_#QHw_\h9Y< bdL?ʰ;:(#2@D9cƠzthy#3PBJJ̰˂b nlK8JE!*cMvӑj| [~&o(ID*7J'Tʑ?/qQi8KV66_Gq֗*U;/r7?a0ۊj oy厣~, f fNuFՄB7QZp.u\1OCIŽ֓6B7h`eM1y\ 2 nUw& ^zY ffKI PC=,YI?mv8Q5@1&.eш%*^>viO,&c7v|satl}&8Gmr{/JM䵗3"Ӌ=F%zH8cq\(0* b +^7UPn մ݊Z=>d kl T&TyCp2LYK[1 Uy:ݞ=`ιUr| fO{A? Xv;?Cc*f e l%[R/e`}Bα*z)IsiR|ko: KCge`1@&E=!,=PPW0{N[ǰ34q5y=^3 *u2t`a:GD9U[h,^leьh78{z:/' '_e'xЈ//,WcoRzO,"W}\gmch=3-doq7_Tu_0Z P@2@L]U+SczH,EDh}M5oğW0 TvQo؄3L[?H,OUW[v%@p,ܖx)T.R0:KkػXbk_r&:"Cq`zkkRQ(;c=շQV>zc5!kzejȕ["uԖn7DBMɵ~7Q&_&$qFaߺ~C/;g\MzVzi7:jN_ 4:SدnsE@W'PkavQ:l҅qѨn[Vhv^j΅_<^NVV뙺*]νSqz: # zh\8']٪A]**FP_q0:,qFEŪl9p+ْ~dK|!)cʪ.Gy]:5֍/.@?I-+m h4ap֞aJRyct'D˺{.MVw zw+J t( ey* L Ά%Eb ߴSF]#-`jQ7 !!^*a aݞDgq\1~*is]=RDv /MB--~E[wE(XY W)|_USIPQjK|<7"'$ d=-tOHSmeb%`F:E!&KTUsA΁$\Jo?EƚcDCxVtAiO@D|Y3v'.y^rd_LmJXGn62),Jʾiz, ')J`[srpWl5k hF|ar,}ZޯȌfPI>7H2_T8@ 2S2ŜCAn~SER-WLVlrD#juD/8*jܪ*욢 \ #6J*1,'3-00yeȱ#ͺr=%uW"~ڛmeV2RnQsfu4=hqB:g>+:0f'\c(\ڼa\* [ ϱ+ܼ+O@e>ؾϙS#26 jZ OQT<}6^LX$%Etzӈn@D oi/Ⱥ2v$ 2/`ҤV;WSG9ʌT}9%M癦'hylGb+:͉^7 MdݨO".χgdKEdTU0wŠ$3"?|aV 6HX?^'bmNAkS7Pjِ"ww90u )=0TuoʜQ?D=m5$.OX205>L9KI%ǔK,\?d8[ѥ SOoAK:tgH(,}WTP{8;ʡF^/à_Uxޞvӫ# % DR %kwx)uqR3yK#HBCK1ЭlzV |=ҿO]Wd3׿ׯ~~ґWs~m~uj75w߷!_#uPhgDE*flϕ;~UZtU޼rT[m7!UM0MS"Ѭ'G*!]@h:~NcY+׿_O{} $y ͂vd ]2ۊN oه?D[q= .m6N7@J1-UT`Z#~#]f#3vf[e!94)$ꪮjsJEΣy]o`|*lwm >Ԓ>qPϝc.8ң݌)!;]gwđz_U\?C>afܿT:[ɤ+A +1c8xC\~5/]>ÍF77du8oل'LƂ {Nq Plc;EX'$HlEy>wrGgt-nqF@$\:6Gw{m:QAvVxRG=?\>ThͻlRA)8h'#O7(=<:x_Ge ŭJ"GNE~aFE BbJi̋< lSPk5ՏtKss_4ҌyHPph|$;eco?E>B ~~ra!J @Lc<_w1$݂rtFBߥbLPݯRn1rS$*A9vךCmE99 teLǥsS^&kڦؘ#ڷ={䘰g:1 /{^JH:u}oY'ĨnZT0i `[׎@1w窳i>Ětp5%w % 9~(a1[i6J=g>,eՄ 6 gǽٝ:7lvPS3#:M8˟>`Xd1%T5%.T8Df @>*Ex#ߘ5~kq銿i7F=WWc|w|Zݛ74Y(!|>&Hw_"zcL>" i֘(H}G%V HxG6.42q>6|4A{qҽqdz텠;g]S>CK!ضx]m>Jx9:ԳۣBaHwd5l#H@A9|b"]D`ͯ_=.6Tչn1PYZ[?e칔.xJ3q'|e2$JPښ[fn.aݙѽ ۼ'Σhĭ|o fgvԫwk~ @Jcjn4d%b#;) 1&^Px\(ӬP :N(Ü)j(c@V&V @IĄm)0PE,zD "$98Y /..3^ ~ao=f]qWշa* )uRND<Ng9յ'T2,Ӈ9[k FɇMPlnW6 ҉ M!ju8fUcj߼\3Ò4Ϋ阌m/[Q1E&]7=m_ot\/k 4 n Q+_;\yۼٔUXq ޜLscdݜkr.6)& >'xEfğ`vAJl%'|ȺA `!Ko%w8)R6w)RK8  L[[~PGފY>)췱LO`g"Ta^4#:z#xI׎:|)Lָ&Z7dX0f(Cej}'F6^%uCf!cl|ad]Zg> .q,Gc ?잵K vsg>JO9+z&.ޜ|o59\)?3Ñmn4E>X(9= jδY=O*=1ǧJp}PӐ]ti\p,Wx0dB8 Bpm@/Z#FoQv׼uS wNR I|&LrvH>SVLYE/2wĦbشIob>iFmQ1y ɴ1D9/ gϬҵO*J.A3Ј_*ӰBY/Qz?>Rw9{ ROhi;4%/2!t[ k%+r:3[%.|Q6'Q*0JI ߧٔ'~* EEF[>OIP#k+*c a&8̜iAMZא0:؃|2!BNߟ&G=_nz#%ϨhS?15Ď6p~0i 0X?6cR~zG-R0B“j#hVKRd9wVޕs)PVgr@iN9B7/FP8;wn3Edğ$IGo0f԰˒Nl*E+)A U qs2甫<_:B{HCo2Gex~I]- GtajwXLN#8OY0y|=<2X:َ3%yaQQ="7AŨH< 8a&tCcCHiKҩa'!_0<>4>)\oJ~r !'3EJL"a@?e1,i|IA%( F^"j8QMVWU4ǵhHYZURqO oCAT.c{3U6vvk]zc7rkxm<-|80X/H07iP#'Pߔb2`o{9M iO;'F-'7#ImW3WFNYYlc|x[@>8v㼷ƕߩQ*U+<67Nj4$'f '"c?`Dh܃{= Gu@Ձu|fc#7آQPQ\ҡbO&??_CC7>7⟴C]+aifP=aW3ɇMWNS`q )oq rC w>yT _f76P9fw f8ik?j!`Uo9gǞX*/D' U"qs3hL~0[󨱙}a71$:~ Ja#=mxS&û"1LEvYoL'qIG'YFW3z `фi5J |[0l@4Dw]T܁C9YZ UhW֫S?@WB1u&Q1+>.'upFE{JO(R]0q)b2de߲?%$HtcPkTxq6y &m=Ga4q\.%_^ k e6bWUQTYMuF|$R;EA+;F*.I6W_e~@$;f(-*L|jĩFi1N n GAF3P @ w}n )v\pENfYo3:H=1!T3s md|0TQ/?ɍlu~b/۝a >ѰPgZ土j$]S_.=)JK( m8qZo,% }ClYZ.g lcRHՅĪ4@Xlf}Wdc(YZZ:։XK7DD W4bbla_QtwqqUN8!2չvkFVc)EKfF !la&=3V+T3:d+'N]7Dr-ab"k0Ҧ ZKjVO\LK9uH Fkfuq2NЍNfgßJ>Ebf]ݳ L(J~>( hTIa.NؕHH pjG7uPfv\Cy4,#ٸOCG?{+jsa$qi>9ĺjFvȜQQ& C 7vb#?FA_gihgA,s<ꓹ &BB{c6֤ l3$êy]sc"D%hkorEZ H۹i8U `"P䉈CEh?Ťj@dR"$I"; jW~}ֶ-ȸ&QI#{̫,VtCwyorIn2 4D4 $앻&d\|ϜIU9l<x+^B3ͰarhΩ}Ox KtLl3F5E )^*\q&.qV)+ 9imK&cqC(NMSvgdRE cDc)w)d1OU\^j W-#Z^ti`[kj֋uZ7"yJrOv'vYRE |)($;';[g;!VjExaILۢU[|%ILQauZ A78VLYpj^)<ݥTsl@™8q1HWq5d)ͅ@2R 3a%,lY Y9ڔ`% N8 A{S@65Ж[6;jmy,$AnIH6_3Q\Jn,T*iTYUWB\IE ep*kFf=|VgKa`"=DHuh)fo Em6_JTb<1 l=x84 t=Us|o#fVX8\mG 3| Tm1;@ORdk@) JgqVke-eR9u?.Q~!-D$`Lf W^t\+F֫=.J Cz7cGȹ ܋TC;o*O㏫l>p`R=f O G/!XzߋR? gP))u}qAWT FF'-o"}jc }I&{8{F5W0z\ai-_Z򧻅Jӄ.jvTY;lIF^shA*tT.*#[;w X5DV<C[ffyXoNZ<5V`lM!vM)oP| GK*DN P/TWoyVl&=K$@0Agtχib 1J(VP"~nʥQou)C| 4Ctּ fmXVEtSɈyVz㠻F\7x"kq$OȬ Sj| –Pڈ{UI0˲ tUl^!.5FA? ,0@iBҭv e2/:_ *% 4+.)V{L#jedlb5/Ч %fRLZ%&V3K Anf U#zC c| @>DPoEM.V>#fx۔GgI*ѭ#$ d*=s^EwjYv[Im8(9@4{&n @jκavS3ki럧nx!@ v!<2OJ*; em{! Yf1kL`>\$M@1`h#xfIk蘅 _u=8 vGChJI1E׃6W9{gH 8g[F)$*Rlv_. oӲ96¾ u`q3#zeώFq %fJVvxFA2K=)azf!Dh+bA͵xĴ;L;*vYʁQ`Kbip̽auؑs6Ϥ&T]H \ZboڧԹHK(e , DBЅUOfJksS|5!%I9V 2QƘۄ={(DeCz`` 7}K14P^?_RמF5[ qNGpUHUkUx|rs6#]` Z/K|sϸ _J3&TFwh7׽~hhp11T8u&qLWTnbW@nWx%ܒ6d^yMDh085Y ӡb=xhΜĵ{ "}&+^H鍮X^)SCf͜K6M8@mD2Νilcl uqTA05 Z8KZDžtϳYOzphl}]ac"V%J ½-%y{:N?xTSI&M1 K c($w~.[6/7og$H.vZRC _u:mXdJ,vGv"L=\E:h7=Q1HzC#0!ƍ)ٔrQ r!&@N.]:f+9$ C9`6ʆ2Spū ,͟{d ǹWX)&"F eI^1QX*mr7\9uYu'6^ .9 8E26E1T;TiP+ŀ]spіe7t͘ @ezRL qͨX9Ml;2W6 ϸWC=r>(9ki&=Hfst, j26 {6zX=$L;Ўi"\-^g@Tz @#v,āH q I ph_P&'SzfJBM(E5:ކSkɹ뚊Ă_XZrBޜ;~t_H޿<38Fz|$`16`wmnc ǝ/\ԐpJt|omA.e^{V[W3ݺnJ5?!öBHD& .C őJ4y#¨om%HM`"0'(VD"7H8'RPt?B3D0,Yn00^FO<鉔5s`}qlpKGolw7y1+^5yhF|~X k Yÿ`(R(\1i:vD%<#Q!VްzZX5 FW $i$"?-pzgpɩx/po!a~fl`ɘUyad4+&&RWO a=1ǰUK-Xbֱ S<R)f5 m 3CD\|0)\pռ$*![V:v^&-BTjl+$Δ9\fqf ROE1Ȅh6`3\ ɞn $RD_tʇ%Czdu2$F5;,Xq>!1;pۙa 7`S{u[k/6%6 0,Y5DTq9tUROra<Ɨgn# aGXAˠ$4Nj~].hP>K`Oדd)SK>;eb٪R;LSrμZE7WD3ƪ%C#uY? CoHzk+p:Vn0 L7"w6Ѥ5 &$ W}aKbc%]8&`]&ŘpIYO6"u+uɡ\CϽ^On("(\KK@X[xNBR0ok 5e`"LUyX3=DGjaW[kV,Wk)HHy&F{Gտ#MƝ+N u5}HK=qDwK>"!QjkHT$arҟc|_O'fX~I=/?'edDXt]_IB~SpS$M1-c(qP YYON8'bI,ClZ3[B0-K}Emg K`d-15`4,1߁wHjEҖ]ny!I[g1hOۏ7xA$p vN9 Ebr8x?9Ǎ7sx^S J}"I%P̕ E#qN\[wVN xb&^OI{xBU`|@B^Gֹ@t0yaC ]HKR> 98Pt 8=,`'ҩ 2:PW(xal ;3-bXOQ0[24힖Be BaԐB85uF%#ӂ(NY#4w!Zh .<ؼ%,$ r/}߶;Zy)Ub[\ X0ˀ6ceLŃd20{].rș8w(6O(σRS,J{n"'.wrx.J.n Ʀƨ(1T~n2bH X(HwiDsLs| 5;0*A"V]c3#v:Ϳt,6 m2%?5+tcXw6Ty.E~%>S&'w )W25G(Ilpu2ScD7s"6}@ ip(M!庠[n"c`;1ZӻЅ@{b,!lդ{d-bZsIʹ1FY6^k_- #q¦nxшnK`xUAL1X5#"&$9F怠G'.>ۙ$#r=P + 7\Do"4-3R  *I Ŏ  *.1hPSp\T'7P Io%.< ɷNSr -e뎆~>~ N #ös^zmDkJ&*N%ɜ ~/zKю:98^†(yjXnBbB0\~Dn4]݉FE Z섅uߖ:J:G4ԁ}i$O˂# ]lLJ$Tbp4EcY9pwpebJ;$D0,WW!Gdr,F|+g3ذ)s6P< BEKB|ܝ 5+k?h:det/{[;Ba mZhvSuWubWW5^Np\:h`pɖbshdTy+$0ÖP"[oco6ᶰd 2,TJAo kf.G@ѹ/֕s(mPlެʈ(aˆGՁn|Gsjxo >±Fvl˜ s:H $%х1qZWrEW7nUMKQB}#ZrjH[ECZUI1:Sۢtaߣѵ䀍y,>c̳-J)RruNɩvM=Ы 87:OG4|&tՏ9k;{ʁGV{!msc`xx&Cq#;޽NiBߙ5V.._}ӖV^.] W1&/!w~Qn^8a/sFE}C=K}qK52OAz\/!)Ę+j'yYt~ )S+ʀﹲPR3h@X;@ }Q3(uU8کjhzUCM}݆Ff<2CnO%g jhқOtQfڶ &r"J 5:oHG$7 QoslXNǒsQAyUddndلPY\ &۫-RvsgN{=HEˆ%F<⎃n4 12ADt' hEBBZ0 GSXfJ1ߕ*ݺ>Cκ:"7٪~1qMYklPs sMc)@5S1&ruaPa?Iؐ>t\$wH}] ßrEo4#3ﰑ 䬼qbB,u.t^QׄKE>nrD"#ް^39Љ-3Eʡр/9꧸R6 pϣ2S /)D +h@QEG8%N"@ %7ޥQt 9Lg.qR08b>X9_1Rݺրbx90@ rdeQ/8=Du+]Er0 )iO?MX2ШwǰOe|5+1:I"3E.6dXd}ژ_t1sE}1;Z&kke5c ~FjZ|\}~dֈ F,ARFN"İsG6oߞ^rWg@wP) =$)lZ9+v[w 8F Ԭ}ٴ$3 Go1O)aTڂ1iߊU ,$zBk찡D8J c͛džЭ"BӺOgMnB;49hH]xG3KRPz:2wg4R5규s:"3K-QhW-zeǰGZ!j-V.ؑGxhQr2{,0G;4Y7a,16N4d@G`0GPx ^O ؟6rNzx pzs h'7Nbar?$Uc:mH(6H#HGV'!Կ0y*,9[d*yc>Te*"'p3^n\.:] PviA{߀aȐR;"Q7oFCF58Uҫ(Fs `ΠolB3º\l\4$PcZud-V@j =y྽ |B'FO> *T@eEGl4} ҅3)$EWr wFr|$iҁk!+|亵E&شYeƗsiǓPnTQ!UZ6W#3+i:?$ NQyTBpM=(Bٚ{q g JLP"_26uo2^)Tyu]y: , &)V>UgJUr"AiVcDkc[\NCtZfC!5B$Xe3jh1bdN;+EZז< SϰPZߖgH<[x$.jˊŘ9'+H,(*ws ô:L%ga&ǢxpלL`c3U0sc\u% \g{a*20^?j@>'d^H]u: uZ*W31\V ObaN,PĶoJյU)TMR%TPj0Ra7^USەClڥ*Y bU{J 5B #b-#YJ+tb!%Xj(2xtVAn :f~B22+a_ybO2%`Ad0vfL,ٴER$v2qtD@B8Mo&JV6RѹEOҭZws> |+!z ӡA.xM YQ/m'ŵ([wN몱o[(iuׇMf!4"Z}kڕА3F|RXmJy^5^4#$T:{fݍ [&ry{I9WNE8*JTe0nT%R殻7^@~v`47,okPf?cڝ! `U͝ k8iqBVtM+>#-7-Ut<*YIPO(ϒ*tr!.e$wX7%R(trWT I9ʱXkꪭcpY4Z]?<6N=搲Kb,5-&SPJL >;cHpS[sWLc 74ɬɧ.0i˙[ hk9L?x·<8wXBOUpİak{;C?(6q8ZV2Q&z{D,wXlaұ4syNýar!(i (Ԥ (4h1\~EN<18PK|bV1oEOn]=6۷Y$!Gr XK tj.> \oGJp BWҬ 5xsE}5lڱ[-z%G0U,5WI Emѿ:[t&/T9E+hn+}:Y1+#TxzZZ>)ek8Q_ѵhjOT1ߨjVvN8[,34ΊblS1$ s]`#!">d(ow]-ޣuO[\xqdDr`Sq3D @{$4H= vc A\l}c[l-23¶/-WdK1'tڐXWS$1%MXNR$xUZ89 jPVPbq *uF@ d$eO?/}G{ӑVKؑ]IY`LmG8OםP %[r;?,Ɏ~e:$$X$u,vggg紳35e!n[^ *-8*xU1fa`əx$e(Os0SZ>i{|@ڷڒh8QP`uE%r>D!7^p0-Wp Cu\3pBpe #"U*fm2 n]QI_',$ v@ Tf8ve}d-eP{ 4~êvǵMW5=`_`}g6ۇj-?'D(//" egވ6˯yˆ yXG;h~M(K2(Uwͩr5|>kg^7\XwXs _7K,|P4$ꡫwж0!+T!wt9byEՓnypҶpT$(Xs4fj8swSsV>g+ ԨeNJXN*OOX)G؂'.,L ύԠ\ -qLGQny>)d f.3U!ևkv&?bc8'j}ܶ>n[m++Tup8 ^ݚu}Й9\P]W+Z߫+އ=s8kR;?M L&0; Cvĉi}݅܉3W`)SE7*3 %C>N2}Yr :{ zUIRdӼ|χNYXUK.\;dp]͂KY5A'$؛dJu  kGEܩTb,G]pNJu[ข|]kxmFjfz@? a4o=߾6oG-Pc#~TƘxG9&8ܡM o3IrPi=&V3BJ{:Ƣ >ED/ G0Ja }*Q#Ch%nΰANґq0>dij)E+Ī}ôZLEmsҸt!N')p_U~%ݴHv+8~{T8Mǔ4$Y.SEߨ,"**[Il)zCo1_0"mF78KNBk˲R~{Lsk0o^<+f= ҡʥҊE@||λen: qs3af(h 7[V`Q=T TR:h7Жcu5<l1 *%7~wPXtYs>&TiGxwBqJ#!;R)elGs;Nz\u:5AJ>& O fnt_Lh aA>Vf=! aZ*ªgu|h"O.\_)&JpW)CL+*BT߰F/h:uRd ,IF.y7ϐ"+Qղ7mtU(c1;x Exd_.04aL|Ei(Ǟґf[KstU<ۜG!v_p^w$; P> $.pFR1o"C?ELS`sDa+t;p%Sle<^RyŦq[e~H= qXL軳fx Jawy`AzA7P4ٟ.'U%UiJ^U*fŦoU:n XX)IDɼ1 g%InGrÀe) X}|گ*\( ~NtAQY3K<rKPPw!QnL< sŌ_J)% ˩JUrfJYB,F=51BZe ׆ț<9 K)"Q-Z=7>еVcl3+iK7 5V~Dk߽X?'n,X9fEr̶rS);>jGfݰAN .Qu0;(V'U;qMXI^hYj{pBpobuvhJIt5 b+@UWC|̺(cy+:_(bGtzIFcNKz׮\{B eGT'i:7Ŝrߚxt&j U:<1g@3} ;`W[-[%fgA;>>& ?6{AܐL6-fUkRt *PRUu;1B)B]l(&>"S jV{Hp:ujUeH90 DcRG#` 8cXl`#oSNh<&bĥ8i۔TyH} 7).+ I!3j1/dfJchU!֖h 7֫V$UWn۶p4\At17=mb+h2]4˷g7TKʷɗ9 @hf%kJmW_.L{\Šq2 %w@EAa.YsS xIM/oi@ܢ_iVH%3b[9n BƾJ4#uo‰<VM*U_]]9)q\&^~w^UIfK~J$zg"5Yum3x<+Ywৣ{ͩo<(b SmF_7pFͅXwҊ7Q)u+`'BdL?L CwL'MeC*?L-ۈW+5U8trQ{t" I%ľ_j[p lmu`( Dd&Y3b mC"xY SZ[juenR_+z5IK/˯f\oe+/[va])bT$uW9,qOQxlGe@/S2Z\rf$I7x]\Fmcc(1Ur# )9UPUU=}P Vh?MP;-t,#Y&/ 1/g._j -wd02zJ67O~]~o@Of'?, (g]@9kXGhcJPJk# %DroS n3y\ Ȉ;6fRQl9X8c6 r6F=ߠ:riDV'\r@=Lc9|) 9fG i$☋':88LENlX̸܁fËTՖ^ Ga1Qng3y\T.5Ҋ9};̶k{gw]C7ѮTxSJZS`cQrÀA**V HIkøM"$ܳ?W[|O&1>ggG n{BLH*Г;a a,Ʊģ@4~ZLkX֊p1…O9S=#^*G6"l rQ3NvԵs+*`}=~[u N9` "v)RqP\؝FC|&ہ̚34v=*xw$ "[Tvjk[ҟ!v-Dzyv.0X̎j[jfjՙ<}OIU ZōqtxyWС*L:,:(/ɮTEKtr_|]@8!* hz}1(b=Ktބ0E{ `}ޢ|QS8*gIsJk3SƔQDɖ͉l2 d5 ʀLeYC[Eۊު;e,f6E_GױZBK.^Yn69֐HԮ !q+^]߰Au'ժ.I&ھZ݃E$l|KPِƜʦ*佝hZg ۣVTP\<| #QQa+B6r*0!\+0È?1f+,A}ea%Ţ/>b@ I{ʌR/{Kq 2j?2+-ކjB\oѿK6t'VFtcccYc!R=َߵrb'vlV7OtJ!쩤w,~bYL?('Ir<5 ~E7мoS#X +K&:}j}ƳVNrtjzp/V[T}<[T^>i|f:A(@Grbԕ-<ߕ׊uky 1vZ@|D|a9HFH%mT$gN]hzNGê ˖X.US`M]~t.z%vwwk.1i0SDVpٓ8*/D/^T@ZŘ=r}{-7u i{[&79WgMSok=]a٦l u]!ڊ{Ԧbfhn]*6s=^ ~>Cx}'a3S~wFbw|!P{cg ֯:Pu}qm}9S] Go_]L}gZ8̪S^%/>|jiާ ymiZkza)FM uv^e-s_5!>yn)hbe̻2g88q#c -s}'5:t{?S!kʥ+2-ZB.~3ͻxDSdc݃K2/W\ꃧ?Uq‚?BUE:}-Bɻ\>" -闕] ЮOY4NG_M-|NmYV[ВX%"sh-`WsR0ĥOkqIi{v<ޝwj ҂ )1Rd^]Xg!fCZhQ[mtALc;+;g'DPAǠ nJ؊`.ī` @] /( XQ㾵qw2 j3{GI_GSD2 ev6V*g>U;ON2w@SOxD;22 E9s&/kE\MIЊ2 9vu6a3c-FNϦA/5#%fնg tzdݧ -sV.&xcO }׫Y`<9g)r)e2=%*lPU]"mɲin}n[ݑ$R rjX-rXbݮVJĘ1 lp۫?8k+cvsm\!UE61j'@zVf3x[wfktltpr慾'̇sؔc5holV@&0vo˪9Qѿ})ǝL(bA\)x_jܘѻ4vt0 6t486m#{OMG=̱I,eIn8z3[ l)"<`g4AuY;U emGSed-P,e)HD@l?6&‹dex7Hv=ՃX`UKiok9j"-]`$GyuSM.&q$1<_`jl<ה*/@y ŴO)?#pID}e(8j^d3!mG0dVpwyhfm%Km7oc MWuF?A/0k Q@̻=@ lMeN@ѥx]+=Fɵ? ؐ1.œw':7= 2 e R(H6 ^]Z5¦wY2Ȯbڟ&$kthPUnlARKZ.yG- ]d3}HqRG8QR *q 0`^m@e $ϑ8+zb%k>&Фp >+{+Gqs 0 r&'`>79zsWk)P#W 0CpA2""u9A{{J Ip'ـ;VS!L]U )p 6L yӃ1-g/2%%p,FnaЛw+N6\79F.>Li8A&QE+`EXG%r::ռT)p+ز+.mE}'GvY& ;(<.S%.)eP#Pe>w9`S> Bev1(ˆ%nL=uFzufEnϫ&kqDS^PM&^ k"qFZydJmˌS,AIp RBkb֍K/rEb/Bs!= hQ4D0O>%`KPXq!EC|NkѩUuΔD@SA/`ރxb h*eFD%ón7.Tz< }b|xc#sy_)8A)Z%m(ߩ :i30 5\EbCdPb9 sوbS1(#1x FUY(xKl;@D[Lۮ2ocPVo:1kFt56CG|{κr&GL@~ "N8czY:.XIph#GdWz/P \Q:#Uxr$<27f+2̚sAXpEp,!LCz[%hPt~À'##v 97̗H 5`Rŭ$XWh3R|T<|DKg4>ZYr0 -HGWI10Ӝi떉; XZbX,C}[;b$>@EMZ3vtq8ճ@_=9%Vw4%b~c.|#^  ĬHBht)jM3zWyo==clh xUc|ePc% 0 Yn0(\äޜN Q+.tk0d@Ag:#Ph.2&ɛ+WD5M?Fh-Ŏ%f׃Jx1ڛa \kݧ&)$ǹ(R9y !Sb4|rxD>J!tcF*OO9?d򓩛eQUIh096cX]@eFo˘ף͇Z[9dcQK"E1,3PB{>|M%*g\TlGϧ(`UXy+-`h*ri۔x7>"S|'=* Q"5 ']zP)G5l=MVvqTVdج +n(dxuH\k&08ڲn$5ʭj :Q&aH\ w$(џNyRFNf+aO J,<Օ-BHWf` u;"v`ת@j,dfRoG TzȖ'FaI= .:dWg:T+bZŬeN Kayei"uJV‘1d$c9 ,GGp)Tt< 'gJRZG;f @(%ՀEG;#wl, $W b P×@Ur4N|kmB8IteG^5hCb`gw[7)u&+`#հ)r>jnPC@H/HgPgԯE ơ3LDw?]$`< EPQ6)+}QYRd!܌1Dfptcj4*h㺊N[ =K}CíkN̙6YXyq>>* kcA% $DEp4Z=Vj Zf2:jBD8I qC` c 715"P0e⧽ DZIO[ u-Qq eR7=Y>nЮcC!;D7!];7y7BF*$DG4zk[TEW&9a_4wR\6WY[~G6 {Hj=ntǺ%J j|[*iU\ψQ(+>~t;5 KZu1~Flס"w#6m#d+' bRASx|SmG/ó5RjFi|kcا0\GҵLʤ0EڡFo{.@!l8i"ThKIQhޛ>m*"\SU0rJVV *.&J_∼fWɣ8׈Arcv {~Q^!bg"iRoDW%iXq?pomȼ؜k3DDY3Ch%%bBΈ& aۿAP)JÞM F 2Alf_DsќGH7(6WJa`TB]H.#օ%.Wt!0>M`#5Q)cѭpl`A0HZsZD(cma=m67L}qdd J4 &TbQ[q6o  Ѓkެ{=dAJ1Re+Ob?~}VqTeLB4ـK{A{XCL=:aGB.S)&$א~/KqJZU)6v]zX wTUf3Nm:PbrmHŸmqbTӾKD%R(JaE\>,Kzg \VGFKCWtgIPW6d%A8[nI}^ݲ\3IlyVmƖO2h, ;%z؝ׇߜs²/l:vtߞ?=tϲ@NkR64ۺSg"[YѫCsGXi!@!]@% o]%l!#ycs=i;v21&EDՏ/TItu4*܅hC.T't,R 큳*~3*4`E޵b8ՀR]IaJ/ƸđAG$}$~0r[O)#^!Ex($~no:gT+hp`JuVT6wU>Q|}'?NJ)ぬEPfTnPH[ b+b[ϺJ0]՜6ե Q"NzūPФuŜBd{{F ׺ ֡$&W)duyܮ{]ܢsrF,Jrt,vK4_Xȑ [ #&Z8Ey!T- I}Zy Iҏ&DZ EiN{)`ƂόƬp<(#>o>}sH kmD#q,)]sI%?_]2|UYfAQh܀U 2p[Me{g񬾈%R(0R23Ft`G[HϽϹ{ hn.k=ϧq/tՇ$V벗w䷟3=pkͦVqZHe5=<{sLJXFSiOA7o^=KR{|` H8 Ƀچ=֠ηY6(⫅\gם@ iW㈖ dUlqS]T.f6ne#?'O, ~iJ&0E (By8¥Dp}RigZlѵ>YFLH ܝSR07KH(_;.t .4q`ThI(ϴGJ =H6_@vA҅4sCq vihɵQ>kl)C^v15׬R9c"ܗ(TB( :kgQzՖT*OIKt*976lH=+q pI4J;Q0mUq6f:yg6ڮ2obƄ*sK-U=LIulVۑwoA}#RVv!Ȳؙcy24VC{KTU x:!o 5Rˎ]Db3O"cu׳Q'*Z&LmuO"ѶX{Q䣜Px zR t%t 6.Z,Z^Kg"TłK-"~rWLn1%\,8=8gbx8mq؜Swro6ۍgy2yY[ioNe'ܦ7tJJZe'*s0=Gx-IT ttcٖ3*P4Lv*_=,EO( 0$!@^i&h*ObΚrLԽ *bϣ2ZsPnN fw扲7 ttטD(gv•ޭ n?L~M5ET4GC]Ț ;sVrMEmwV VO3"1?[GC33'LuOӞNRax"mecPou*ӽJcuxqYEԔdܬ A}`?3TEU}r2aڪDqq\tXOcQ"ӈ_7T?h!< *D-mLg4 Կ3xOgoH}(FY>g1m׌rEUj&۱9,ڠVAzàiMX%[NE#,NIǩhkkXi;j)ã$_PFCr \Ay)ςv~rET>=qIA$'(I/YLާ$(ܟrX@b;2a {PV$_{sXT3dרZ|bՙuw$Ӫ8Guȡ]MjeOO L+PӤXGXOv]Ǚ£˫8v)Ea @HPQKPi^vvIѽ d̤7>΋y>4" iPfx+ؚq3:mA]i6U}nȚ֥-ы겪r*Uŵo*UٴQr2S&搊s[*V$,.߭vU=P>W]7N@v_95`Q2oE=.Յ *ʷ2X%vTJ0|Y$/~r:o0y_ަλϑE.-ҋJZH]z߹5=R#ȤEkr,Y}Y} ɧ]$/PT河Hx Gv5.dpq%) ٿ,=!-%d>#WW7/ExXt_dVZSaA:,ܽUb_%hJ兏9ˬDmuS/#NuiD*zu07ANeW8UU=_0]< m*ch\P7<_4; s )!0B{D2ƳGǿy WLL̘*rEQ0}d$=F,D@OA)S,sRl{7^9k6EMP*nfO#Z^YaP5T=r^=J@$caAqx tՔ#ZTЫW;i hjHܿ#Smgd:+"0u.rEb6,8DžF{GdlvՍLZ@EIq,|wІt\$mX҈1jʤ {ӵBq{¢rA)dO_^w LybE1{M&QaF7̽YQPu ӋH3:?o:?`lJ~:yB-@| \3Uj"^YIR>;è?]6 _ e%Ȋu|! W?c }j_[&m4Ў:oNװmQ;,&'S"0s<; V,` ͬ{ `jOSXDYDʨ&|YH9Lld&M=HHai6+YL3p57{?@g!twQNO UU`L:WBn*1E\C gVZ^[ʫM8) /Q@?/3YJ&wzxzڶ9=?,>~sMΎ9?y!9+]FR75:e 2qn$xG/sIк>fS\M׻+N}7Q04K\Nd޽qѐŗE-5 x9v#?D0c1(Ԋ1).0r/G[[2~N$ˏ u,_`;$l*!/PNZ4}7pd]oTIS(OFC̑kw=g'Lh~npՓ'2^)y(Fڧ*d_m]KۘA}ؔI@z C4Lk(J Y`sAWȦIUWP)'/TAcxS -塢b1CQ % | ,E 5ҝs`LK5cHk* ;zaҧ඲gj5Tܹʦ'#wQ@${y#nԦ^, .Տ(?3C?J_Bqk^o۱=2Z3SB0:)ŵ'?L=bٙfeKڰJ )HCN!K@lYڇt`Q7T/>kvG*V8^e~uT-6k tg E{ o"7kl((*ۋᆴk"jT`CnՕ0+RVtҽ"]\ &:ɍm%W'odC-<Əea#ih$3o?k59nG0n e鍇6X/ŵV""jF`a/ &|6>` y%b}EU,*3%p_%&_ F.š咠jlG#F|prҋ+wsPOma@l^ LVyY|ET8giV:6 KGMG!ͮH -sِRH3+m>Lk׿`/W+i}9/.d}/ݍxk{Gcc*_F8FL_c#7נJ1inGt5!@쬪1?S:brbMMX`>7xBirg Rf|m[=RE`Tn|uS7! qa(āRT&Nj{2̾se-LMWd!I10wx+k n-u`!6[uRH}RV[̸(k[ &tenVvj] ]j\pS-+W6 k'>p1HKu吾F̖[%DT"tO]~`.~݊o^fKk\{f,+qȗ`Ӫ;V[ [҄ySݙz-՘ԭs) WxjA0ě됪-{ZDQ;±!0GFZ g5Mr ?̭Gd,eITOutf棎,*oeXd$}ٮ1(iveCDFF>r0.#-sfDJӗ= 9黳`Q7:]j^%oj j Ң0j{dZh{mBY@#M&VΣ$g˫y3¨bcFM`spT^ܰ&짼Q&0NGg|RGNrTXkm=+P"_tʥi 8䃒[Gx 1f+VJYAjm& ,e+O W5Mx6ї/ [)Wҽ ;rʁXt`PI)G Y35M?Cз&ٖuB b3_$Uq D6NܭA?T.JJ JaUY==Tg}oò HWds0 !6K"|rnkbK7:PTkukoE*rJ!Z&j/WJ#~IPg pKۍ0:TV1èA6^&8: D"JIYމSO{^.*7A[@tV⛷/_Eo,9f|g <>y?>:$ G]'aydfQP7ٱ:ڙ0C8Tb#G\4s?t?E~u Oɐ!NG4eɅZw:Mt=1l~"MW7 k "$-iL+&Vs\L7rA0 r'P30 = j8" _1VO RJNV, Pe.&,c\CJǢ^b||ت~3ذuPq޳v5@ '=jє)s_ce$yNJĵT+5Q%+<֐{؂U:$µ-nvއ!|INkٴI-y$DeQIQUo0,7,2ʌVT=k(@>9KB<'jv^HW -S$DuHt~D7JIVEL*$&Dhє84a\R;*,Jv.6>a{u9"P9S /onWUR^b*S9L^.M9+vۛ27i5rw4,4B['7dcggaՌR:|СW5/妧ӋRkJh{\D v .ATMk0r]F-L\.YװL͙jp)c /ycl.X3Lw %G|_s9LʬMc_ C7"&o`m K ;B/1M]:1ؽ%QENTQ=2M&)nFĭs7.#z:Q[S"Si4]қ6J|x3sG#Kc έ?=j:0 ׬4p"G{='|%1.2pSj:Cϐѯf)mK~w*/mihF|jXz|;anY;f9<ggqR0"cc"1`@l}^9mU24͓Lr^^f0a ev!45b,So$j9mq>B趴-1l`LfY'tb Yqe}H:.ۇn^|.WٍK-܄&D]Йi? J]J0!)M<RZ #`\˖РuǼef4)Iت ;pR?}1(5|ª4SW2<_Γj0vLԅ0: rPpD^(,z Q+ן3 VuY:6 59͆5EJ@[KJ4y𪠖K'hJ;f˃tgR߿:U$NgX u:R%E-+$?uc{Qkܒ $Y_J9?IJT#:g>;'KX#]!Ҋ0_R-U{$ik{BXD}^'ODފ{Δ嗯{&`vy Fʔ%}TSCX+, >ʡCG.'#S-!KC")}Hjdf-;ײs-;ײSVNq oqmidީ4Ce/RPR‚h UK[Җeڶ ^gIB`Ә)YES ӑZ(6"$+Od;4ϝC+.t užYL$xle猕K+atAj#wXS]ֿEkf: [1`fԦ=\\Y7 T+*٠)H7+u%@*'ve]A6K_s%mX ,ӎB#(<5ba- kń߮QkHfitIu]ú'/)][>b!#6 GtB!AMO¡e,v##6X|T- >hSzp K+-w%>~wu7{F1tZ}N\ |%ą/++헵6eF (ESWc,VǕ6_%hWgm kͥp)eAΛ6(\ K+g)8MUj)'}hq \Y=#L?|uYFU5zP]WKX[R\,-ZTPq:q)"j.ZnIYYTH6J>z0gbDžњ-.+%nY*CdµG'N%rGD7G*7"ZIܽ¾pd#ܱ=v7^KAAli|Mภz)f=z-v|0,y%q>>) z<gEЊ&/Źk#'h,?{ت7&)Wx7x*؟M2M4 ƚu9+Ƶd oBn_v-!5mEuV/̪֎fE; W^y\hHcEk[:= 5{L9Õe:M?#TݾQ/83(I3;.%cB Qv US0#ĽUp4zQ !9=նbM YwQ󨤓B┏w'B !(92k#`=+0|=zQO;n'oy1OW/Rߣ~B;15KhW} j,Ӗ<ܜ۫ wJ rgY+arL?5se䉩&P1WbFN$mp54Qʸ$iLԉM++K 7gete5njNAkjy) >m7MpgM(zH3-rWoЕAX0NYz,NjNP\~0rrF^ R̗_M. 0`rLNrɮ SǢ*1ynrzWݷ Vӷ?PUԎ4x??\}w*F" Zsu</}|sQ|~d~%z7OqÑ;ia 9S[oƓt(fj;z[_ޠ3wo~]:abwJGɶ;EJ~T.+x*]VfqlPfSC"o5kaW#E.G\y\u=Ԫ)#:}ٷ(WM _hc%ǽ(rAgaOe4/V@Vb+a^ YdNǘgfwI. pH3DoZl͏ziW^Ag 8H .gI[7[);_ӯ i x7*LUܳ! 8ô *Cq`-uE kmcXOL$ 苙QnBQ-gՑm-7U4?ԥuT+|qE;jN_}y?§U;2bqo6Fb#m`N7.&EMؔ~C6  >BŪTFnZ)9ok+,]lPKI3Ӆhu:G.O%A˨h&ɷ͢[ dwQ2v]c{*sPjeƃt@eN9↶m8ݪh=h,woAv )sf,}sv7Df Zժ36jk)^"yMZm}zqֆ^Z5|$8yk:kK~u&p? ;E/Ґ$o0yԲϋfh9I3`A>k/;,W,=u!]ug۝ڴZii(u/̥3'!nG 7LHkt)#Vʤ8V)"b_ઢiʄ2 o;>JR0!U)]y4檡D9aŹ>,&u]=C ZoWTP$a^+5`u+V 58:&kЯY6Anu Ĺ@/̑ v|kY1Kq:U0Ni j2R("d S0K7T*NyJ un !Ӿ(mWB>c\]ה&3 ۻS|7׳1:53R)JQ03f/gQAmYRCUv,q1񖑝Q~M E\[xmEcb+zaٍ^k+D=|0G} e~,B9q&>TSӡ^M{u1u :t{1u }]Àa0u' <}H`~ ?z)xgӋı"&iH\nqA,1'MuDqJ|$Z2zq4jC...0oqcK=|a%meH㰋vȉ,ޘaO!Dwu,y"=q4R̸MHH ذ Û?/+`i SBqa#]臣5$+(_tbl*&#fik˭PC JSK;q,̤Mt'Go$f0 K Hwzy mfI 8ѣs:| :ۿvG()QZ6] (<hѶD SS$:Czd@WP8 m2lJ#ֵj6DG(_K:me^NJ4l-Yx@gsRe5?¤.ƀMhTs4+kGz')c!Ld4yIoDӪE' S:@bv=X;#t.`j鷴1], -˓G/x|5nV\]vyCә-Q `vt}v.H&c(|Հ ,HN^ahc 2F]L$uLnV"hn`_qlTCD|ŻnK/=X Wu /$qI ;*Oa|yX&%SWHV7;%Q88z;"OKp Q I`ާ`C d]&nHvemh7EٍυwgE^ r yնtBbe:8ژsXv=ie ]`Mԛ2sK" Cr D3N2S`s$ uI҈0F;3imcB;HS !t;Z\y[U%F67K>yO~TbLA `_ gѻDQ5Vv&Q1l}~ru~Ey!^Wq|)+|PF7-3n)h0Q?̦#(]i I,s',~PGyYPKa G4^51~E&@We be}0{4H8!]W)MF*8jTJn{=Pxk6\{u GS[Llm%;=/%I 4nCagsF'oK.8+45npcn_[ bj9)&L9ؚ  ^께t1S^hK@#biV# F5D< 0#Y?%1H04{ /Z}ZL A6JtgöĐ2_""D|(@nvjѶmѡ] 3g*{.Y2wo֝o+@:*äJ.~0A )U1r-I2ڌ{ ;Ώ;{ƄJxtK*c]wTbf{~I훣յ*}]rbʒQ)S $ lem|E FΚv|w4M6*,?TTy$OGtMsV MCsnC`(2r>n'Enà 8WR@GY}Cl2FHC„o\BE\kXuNxt>DUno$0/Py,6%_29 2?\N/j)AKXgUZ#n+V)i3I 9V uȶmXg,]|2 sZ Aq"nߏ蘩ڷE65ciU`+ R^x wq_a@#G'AirQkZvHA^v<=%bGt`=BE:./<Ӌy/:0%|"'UfȦ_t S IX| huxF`sG$mUA)̹vk>[AYExATT.[ƲgOdQQVns2kNa_Z(=E6t2쯘,8g--G;.nI24yJa8J ^g<)LZid65MO@KHxa|>j|tXҤ}k@t3,;^d!s4zAP]4?n%sCd|h7"X2h*?S2oR|h1 kuV\'vEZBR@] 8:BXe k)9lb{M$;{1ք 4AQթA^.xۢJ.SD S․Av;y0UWͦ\R:2Q7̼Ӈu?6߁1H2 JBhǣn|/U u.}i\M% s"r6)#cՠTѡnK e$4/Eލ"gRR ЅW}! ?aho;CIO>U"M/Ф @j>V J _eQsy]hуh%S6v5N:=KI-+O."ϕW:"F<Ώtop >Ϙȸ?Kv4Y?e?b]FG )-gM+')`+fΊj^^U,Z#kxN}m:ViSiz&rޚJDUJP݌Qj79ZV[븷,zYpi4ɠQJb**uT蕾 Eު%Qp%u{;x",%ﰬ-1 ` o?{OBOK;5ų|@"+"KN{έ'+D -xj\JyXÌ&3b 5ȇ!:Hk$TnWMVHųs{;yKRYCv>tNɆq#WCCr,%\jdg*s14X5 ZͯoEjχ˒YˆkƁ%>ae.V/Sel"n}f>\-vp@l_YTuLÉF7.uPٓ׽ JF]_ߞO{pJ1x^z'U_zK0͊wp ry4$n c~-uA=nHwӡT[9L`-B&fuUm;AOs47%#]"TK/%^RMN%4q)UA erUP1g~l o={wJ,}!Rhav TL-'ZϓbJOTSdٸ; *{J^-I^.J{wd2rm:8L]dOq3Gz~B#l҆t ;jIʹZ f&%4dAEuSڥǃAS$˥"kGTPgSr{}7_ͷoisxsQ`X7ϸXy65#&d*=J$[>+$W-61O6dWGq>.!wyr4K0ʝIm#A1– ,:9=!}M0;,>ݙg?2H~nȏ|! r SV$k@H`Fbut4Iven9<75qa+fײzbU_7SHzS~39Y>B3lcAUm u&KFESJ|аHڐ y˫Ԍ3?k.Fi˙\2>0Z|<\k^{+Q>ZhOsGk}qVqV`/ -CJ52m>ӻMyxH _K) KV% t+ɿ[JDPss zI.^ E=htsO*N1hG2/G z!Yzt(B֚nr$@3Roa*<΁")h4Qk ;q ?oAkGez/䆀RQ7(wđ+9AjJ'%\P1^!Ō,) AA%f8ܸ֣`ܞ!=@0*g "e W L MS{>>8-2l]O1FEm,H |3b@ep_[p1aEu;*<7d+&-Œmnd59NiYy Kd~``Ee"ǡX@ iA{Lb1F+MڲNW9iWx<:dɣfXz!fI$T|Lna AH/c'5i.4JmEoFtW%q) u}ň&3P-"ZtԌ9۴FV؇_h=mٔHʁ\ġG~ywo7׺Ws#%!o1PMtX~)ɇ 0ڤ贾kG_Y;ϱ\F*ϰZ!lSEvA38os2'^]VֻEW.FܪTVCWC!3")m>IeY[yTȜ]{S>1o j䀸gB~bJ*-'afӉR4njQ]Sgrj3޲RM[ '|ܳ)æ:Yk#c.#c.62F* E`wlc`-hGs#BY6bN0k{[uUsK"XWE('ݩݥ*nCX5vv=(ߍ)SVVuUeE 9U/3FBD2$)y8<44,R;Łăn!~ {-SalK)لU+~^a}JSmRZVYB#eSPH&&ZeiDmShu ~g 6ں|~R BߧWO"/lj@0 DרchCufd}3LyCgkgU@Bq)]0BdBk̕f+ĭN/!o$eI4iZ#[r 3lw{׍*`تP|-0_'bjvv4T&/r]%C/?1CD!3p!UQ-!Y^xRXtxi9WCv/M jd3g.Eد1u0^t'*O N*2a4ɋ]>A8M)nOŪJE-LY2agne !Ƅ6z:|$f $DDVA!#"G}*v3ӝrE-kK{ !0C:mӞ ,#Rœ-{n#ԁv@D7c_0sQ WK%,/s3.)5!SuG0BX|ve79HcwE;dt }l6o PƭL/X`0.nlSb)ЋшM7Y& /ڄmʬFWqXc KzqudOՙr7'?ҟ)wQl{fV[ZogJ м062;F!!0j2ܲ!u ̛~~CLL/:O'dit}> p<01#ĠIg![x y\s iqAIhP_?BrWk/F9Fqp u)FEC^sju*[Urǎ xWcKMpSϡrmͩԔpծ`覿s[ ԙnlSpX60( SDŽr 칞  < 5bD-2Qk5C>vnۀ Qtߕy^9r}/B!nnSw8H8wl2>=BTF#؀}15}H ZZP`*Q2X=QmS2-,l eͧҽ975s.x3AjE8ީ\2 c}[J޷F ҝGG Hk.b)_Zh& 0)[:JFSd 8pVDhq[x#lD3J}"e^XDLt6ר j~!Z&=+0T㜐/mJ ŏc5"pYn]0IMn#qɎf }Dtu%/ιAb!x? 㶥4&[fb |m^O%c cIM9ONip7L׉\ ɻ4MAf{ (BsLc;b6-!b7a: A4 r bD#~rŞ.O$>J<9" 'ބ pNS/J܏KtDS!^d)hF*.R +: ƍAW+^d/$2|0(; եkR!V`exˇٖMc}bnb 'J~+NOpnjO21C fL %dNk&M *$^._xI3NZd7%/[|~_d/u >0Q"s)3aO9))MX"\i"pƀESghЊY5_=Ǘti}$6sلq6`&J9JӌL ,G1(OH LgF_unF^ն47c gD%dC%L ;&'ŤL张Sos@_:3UӫLг$gzo!ǡ/Ѵ'4W۠RE6wq:=!/&N/%2D(1qm}gҨۢRxCqe0u|'Tv"6#l+QT ]ݜy! 䪂*&6hܮvRڒ ݭ;7X I M l] E6ͻGemcI!CGJpU0,U;⹪Z`lWcdtqϫAg#H7ɳA2"*Jt*eZZqZ͐-*%/@7;Dz Twβtf&XI$w&_[ Ófv/?1_}\~βӛEV*YC` ԰Z7XUV U "ezrFݺ6b{}^yWf) ;oU _P;R[R]`Zr{{^ğ2s]8|G*}D~"GqNw.F$VuK LL`5~S_r(yY4˝}j&5iΣj4)Ed=k*ZR8bK7rOy > ߐ ;Y$c%M jZ35Mkj=G,'앳< ܻ^4BQez7(*wDJGrWPl9it&텳nKFB2s܌V ty}Og?=pVSq_ԎIw{ҫp \_8ʇi+9,t#BSdu䐬*?E*n4xC4,@nO*#xingUG'$pj"}Td~(HRг:|Bı~>"ɛG߂fQ?H31wT{P}gF,t[`Rm4zOŜCXxÂc]QVpo=]6ݪ'[":SuPXO'Qю/Idx=w] ^p,.i[bTi1bB=@H*/TPȩ۶ C"qmq!F9)IU\u ;'{ ,EpTOo-njzcNXVi&ȹʬ؊LХh:Qc@/t#d{*𭇸H3k`ړTewi6 bvk=gC߳9; ]].0 8pi]8؍iS}FFKҋIq_]%NYz^=V~LS]?Y7Jў){RC>9z/$Wڂd|v&W`^XV3!mvB1胸HV" 2s'{)fo7v0teJ] ú 2X|Pس#)0u'GVCDX ʗvJu1))(MkCpUZEم&qtbM' "p܃ Jc3x@Jz 5|k =%x{A檛<*1Bzf@֙^nS4Yů[국YP'W `y,ZiX嗟^dJV:?)ɦ7gQ?$G-TVPm̯qK{Oꚺc2Dg0lT10ă^&x5yT$4h\ƨ>6sKP woPIgDۋ0/_zZH$alEtI=]L/r%a, 1S/e[$6 OmڗVQݫ86^ !L&CyE`ϡgPGĹŀ<֊/Dm:mb sEe u:XB0xtZ/HAǠ5m9)%ވKdf( xRESN\|2DRi:{Ȣ.񚸀hNӫrB0u -Ġ_~^'r0H,æ{40#ZK[}eԦÄ(f:V?g_@k/BT| ]»t$u IS-qjRdž1mdI`FWb66M$\HQL Ʌ83Tva)'U!(8]= Q&9O앬[7c8w#jo\8`_c[EUֺVEs?x4ŕ^BT)<'(G+Kf4+Ϫ,ǙHII@_ЉVf<܈:^,9nYPnzk'6!?P63Lj'uh:+Q65ɳ@{w$Aa=:>i=7/X{9ڌ9‡"/ [#F.ΕgS|H/7f%9*tǓBr FG};jGQ@#۱2L>mSh} lTOݓ}JjHFx)Ѝ?PyIRkzLgq>!zhMlЁsVg>g`bDQh֚;/O~]eMǪ'㳓:oZE{87[XE{B , M99#;K_ME!LZ89:/^Ÿ8偺IWi=)(x ))[toDj] y= .>Gן1;afo'&ebI79G/B )˭g =vLn1ȍ=ɳ޴P] c%xIi*KEXPnG'ғ̾z-# oĻq> X9H#:q #OL%a@%v a2@t8.`h_¶4:3yi_2'ctBq&-)H -XdЎNeV\T8/ TOBıc/ƃx㢽G䦄=~7{6aߊGٺGAcOVLrDLTX8Yu7VNI~FtB`ą+:T&H-oK"hI%5ܜ)ႥaqEjoA}rw98|wszRMO_%qFAe, UDD|QOْ8CHR<+1Ut$,iËtՅ.p]kxc 4^q.vђ >{UaZ *k,hO *YyBVW4u%4O-CHsL12=;$㾠+Z0:U]a=PǀoΎ-Bd@d% ~+L1٪_<ٗwwX)PG3L˱qz/ Xs=^yudŠ2ɤ&|V4*$A+C1B Q6L^«N%1/~H׊. 8`%rcbFa.YvCrkm~ɐ_jKk7Iǿ htԗljmLY7!C*+c&{-O+t1DoDah6smL "GLKSS &lġ^F UJg/i؃U-Q21MV}َ.EHVW60]ŽsZDL {[#ZF] 9^+-r {bl$T="!ERn*,fd˩\c&}bppݬ;(MfQ7zfnj2K jZ 6_*@$ BjJ!UjH!J)mUHCdl,]l}%$`g4X Yj2[MSCUĦ pBGL-YQN-NDǭR;'-b⑜ -4ǀ୦2V Vjp1 w_K(@Hb!C3J|P _1wh sQkpVO3E^hG\T05)>u)B͢Al)YKgPdMk^2t ?&Di-%3^EhE~*Ym9@}!9yWKA2yQG<ٜ^fǵ{~M̑J z;ɱc UmUHnx/DOd$.d[bgˉ#f;hL|dVGZ4$R$o8n=uQ&fRa,0˞D%8۞kst|vxrjbt RgC~uwz%8f3ЫnbfпxG7CO8U#PaŪibV nBKEIurT5,׼N%W2<| 5~L'W5SSl~`:b fOuƍo ݸOݻה,b\x] [2zT P[1o\S6oj RB|\xiB-GGS FIλp >J7 &fL޲ 2Y Į>6F8RWLlamy):rYJ_ qȊ;*v(W\=[/2>X|#*Q(sY) YSXd7NUcuڛ6Hiv0_!,0wKZXZ{qZψ@E,0+uR m}%`/Щh2Uk|ϷַRvm9\/55e=ن; mcp)l΍OBذ,I6c 0cф}-Io&l5(ntV"e:qYna Ku{g]yCQƥrgmL3]5ѻ&ogͪ';"5-_h3.\;cKhIwUV%?) 4uw%TWW7rW OBЊ"HoBs1#݊VFz@^s.ɯ*S&;'-&l' n!eeɉEf /{ OQ/>.w/@Jއ8,~HwSUJ15VXr>⻮s\pؽŔ:Q:|Et'hADGAWyɤE1H60 MO;XT2|rЦbCt;Imvoqb5+)AWfAz+c31եj.0Ԣ-QȓRט=.8g*G \d$+2f N{AEr@Fʹ'%×v-jlDg^vquPxMBԵMтxz2oof z.`:ςݍrau!.cXY26<:ڔcJmWkQsaH4!ys&M\x+q:9۹wjFtڂlȿHvBf?'RTL̡r.b2 |M/CɿôD}-G Q#L2/b?vtpHU[Ș SF1]_3*@ 3ݢ?zXSn%Ip%[8=m3cրyUJ]G.qooRS ^2Ė:"ާe;Bi0Umrկ|`Q/o< Gj+}W'o^wN/psXa+TStO1PntṭyXu=ÓSnvr~|v} 5b }-CɠH{XLz"cg[iwWORtpX0O0\m_=wtv'{'zo(@6gOI>.}+zM5ǘ]7IXC!9u}Gr2p O/g>}ZoO#3<rF$Xw4נ10csQ&us5R3l0]ZGal4<1]6p uKOl]a?LVXPF@_(:}5G_%XM*uVs%܌% 8рvgP敉5-<\X+Ӧ;\ClAc? L6{!/Lv+{fǍ=^O,=K@4K/ `n_rW+6[X̤ :AO;?*>_KEQǣǻOJ}wr/S5ߕ WG*Ӌ"Xx7 {K7B=ō73oPz'ZoϭQK[F====/ oߞɺ0me-}=Oep[qd ˀ_~ _aӣ=Tkp?( ^>A{AيOI3|w;_?}/f]@+5X}98|qtX>s~wS~ǓoOZy~#R?I,~?ܔϭ}|в|jt9G~c2C1nVlj{pf0cf 7-႞gAYmv[g (HWpEWMp4 ;Q~yUauVxSNo:G߾:|}x|]oL@xN^ 9{rxv wC^ׇo|WxҙdvtFstyBVb[< ذ?Wa`(-. &iJ '7')y};:wۃ)ÙSb _<8<9.P^;{}j9?HS@ FQ2)$ˆ ]X"*ɰGǏ0%1~I"\D0(wBMw逻+GOz GXpVD⻈3q[e>y"i9յ"\O͟`å/~\d64tԹ2 PC\IoJc҉6G łK\ W++_ H&t$vh3mullzoqJȘM-gWJwj& ,hsu|:;ϴ:H.1Bg{~x,c U<ꁂnXa'TںW n,U^jakQF/ BzB΂=;'O1:Z*߆z*C/gV^W١bz؊t8Bϵbp?}*V1u g` t4ICWzO>kzR?`:t0j:mϛp: 2dAR.ka&ỿw "W?wY; k6' h-SLRivD1Nt_~@Sf nT=ph]bN_?70ˎ_‚}utfKwr {''G?v~;:y98|UGWzt|zxMaGo^g*7AˆxԽJZ捲}y,z<.zNw_v{Ow&';7Iy\ٜ;5tgz2N7-5iU8ow;yrOv'ռ`Z~_u:x<v'A@ ^b[-[>fﶧ_ףv_G!?G|nY^m_<DEUKK+n0K !z dͮ>j@3ڻBY0 "$9Ŷ\_#)`)}3GY1Hqk$tl)L݌q>fcCXZs@#~6ěGI/MJiOtjm< F4@Ug؇po%$ΓQMUx VG"^V=^!O a}|#[X4xhwI{|RaCx峇?N~/k~?ҟ^O@.6_JdJXwlhxÃg'G/&sؘ8CЪOVcy} kjnF{Annoqє1$O1XTH"L{iRlGXˆ=Exsw}2zH?۪㣳C x|o=5ߺ7'^y͗<<ʚ=*t/{ѫ" ""$'7ƪP; b&:l{[b]G߿+ٝ[A|b;/~y ][B}fV7qU2f=X"gEAŸD_~DyOD_n=&мd&wCV .2G8kxo;*<߾y7׻}!u|g97t{*%5coC?R1 "?\FI)u4 J_Wi; ;'OƬJw.#?v`\ƃat>*qJ~Wq2,x"5ctDs,#C0" MPbx 3y[1߾9F7|M^vW|:%bG"~AO&fAjzѱ׳Pwǩhk{vGBGBT!M]OjA`3/:ޙ9|5upO~7|\H'3*PUmcq7z(ޠȢD =~0zΘOYMimM[_CJ h ݍ }mx7h鬿YߩB z%^hsIw~{AFTcqGAh86Ⱦ.hol(E\d M-|N?Z2)1UO 4$ m gfgWD<@ڿAN nƖ.Sb3vh:v3njx̎&~,ll=ۖ,DJ?qDQ@'Ɔ^:÷z?l'"kbʽAp4*) 2Eq=gA)oӹ XyvXn|:XnO<C|rL)͍kw y0+\($ׂw,VC3+?|Q! {: YD%k r4Wf?[`I_6A"N C.D aD^-KZD5Z։:!u|eKid}eܳpN?%nf,ƞ>S".Dy4û-pYeI-1xЪ9NCXh.4@Dc0}W!O@_ hr5d![dQP"YnҫDl hA5~xWYr׮r?wRײ1l~+qj@gcOo\ϔe໙Յy8;_NOuW@O-~x8mq9F,JeN 9#i#iJ[qT!EV+9l<(*g7 ~Sakhr 򍢷'UGMܾ ݻv>֝o#.nսng-">ֺhӿK)(!}i'EX| a;fYD._ƓkM'%P47cZTd@5K#lmٽgϱۧEd6+o?2柵p.};/>ve5hkzlZT37$<QxLmg76$="δj2!A}e{x5YzQ׮LVv6ZW7Fz–-KčzeN&WY/Ě@ ,^~{)J9:'fxɂ4p5{)2Jز3 Y_ y`B{6{>䝇[FF{N8s(XyNF`c$@0ę*FYue'L Bk콢B(1\2SJlbBi(zKo@ш+nDj*Lc{o@uZ)ovv1Uf>jȪ ʷ8vxnSyq6DR3j;kCh3gGL`eM?ǏZeb &cUsՈ'x SPlC3hU=VKq.}2MS Ԁ񲉹Z RU $ՀF<-u5ym m0ÓUzL=pW_ƿs wg  G#ɹ\`nEݜ ޵g_޷,2T )*LğΡ)ׇw{oP#ڴ |:eNOqL)Ȫ.s"^?ȉ-- R}?nOx"pO,Lȉ?GL}#,GUH\ő@_{mhx99^N 0Ƨ}WsK8PhG|b+*>R?V9Cr9g+ٜCrfSJ`p/-xh q+ko-8hsA@}_z4FͦU |x=p[֪ۼ6W[᪀p q4(`790Xʶgkk#; 0YZ/C C[ZuG|)h+Pjo -+|a=tc/bEgI] <UPݸІc-;z m\uzx[5CӐN&@㈈Y:HۺC=6oPzOs_[DeV|*ۚ*=tpzhPp$A=twtRh9Eh7ol|W݈vptp9ydvDu!!GIo:>N^e/TvN1)(*i'Kbvr+^Oa^>a:$=ag^=;9z~~|w _~F/4zs#~N:?8:~َY4;{Ӧq˟Eo^DO?:: 1^/ޜD{۽W{'sX'wptj6F?-^ -C h&wptrS0WrCOm@Ρ^d p&`5O_#0gGgg7o ӧѫ76 rGcCӧ8put|vxrr#` ݃h)8aX7'?a B{;Cx~x$RD@gvKĚkt|C|p?4o$¥6bt";aGB&BOsy:ҿ: 6<hs[c`f9l88pE^Rt`w-L WyTE⨛E2N!*Nnקb~JFb٨jǯ!60D UM_ɤq4H%HJWQ7bLGWKz?O@q QĨUw;(lńĺnkծ ۇgD[,l|b 1($G-|j,K<Ru^_),<\&y^\LF!TYnV8(D3 opZ\Ei,F (.,. 3F)ab k'$zQQf". sVA." v@e:]A+ƗN^m ꯅ=9u~{;BS|]o/w zed=[@ݪ=SQAi VB =~7-logH^|f4{:̬:~ɴ1Ǟ|OXh5ٛߝiLӺJ1+>x/V%:d&zƋ#䜌a:euU f/m՟b穁kZUhdg; Aص/QA}z:/ 9X7-K5M vaXb :D9j:-Ĵ/oe\5bӱ@,7QDԸհ5%2;JTwi ʿBwSJIlmMNf0061IWnn<|Poiҙ1z 6P!H8k3Y;Gǝ?*R։|=:zy ѷw7Y?srxpsxr s>;Iŝ@tٙ5cl|}fq~_7ޟy"LׂIuw}Tݍ;>eJ|iV]9As6[9.!D5㪽N(_m1̍zeR x݄9cFbO9>Va ^9qkԝŒku6Q$؎۵SҜzr-nYêջ?WРZʅ?3_Id[߁HV0Ur̉sܐq'$?@Yt/pOM}\G52[.ISܥQB6e* qO!E DAp(Pe;/~`^;c? VJ%+f6Py34hi(T+dH ';ɐ α1$js~s څST8Kr{@\T|iVW Wį:o 9%x>| oeyT$NP?U`6tZ*>QG/~zdnSy&*胅N99[L:7ZyOgq.<'fPpz3t_ZǩNM}} (ѣos;} Gxg q{EO:3:6n՟ӫپ:8M X3N.w ;tɓaaM욿{]K[v.< IwQʳ;޸%OWI_=fk `t"(?>}kh|VσO%mO@K:ZBssOu`?Zo^aR /Ц0;>VϦ0;>qwJ1z 6 Meh\6ylUpIqX< lăB~&=h.*[=st4m30o7L*0oAkQR47I:fH܇QvzptV:U(8ILYt8Rc^FLqdNywQF ,[8 NNwBYc׹W `ߑt B77ch/,guhOGݫ֛q?0!-!mpeE`YɈuO.ve:y4:(m..MGϜ7qEeˢ7ٸU\ _8744F@sN%q e^Jaٴ(l o:w;^º^º^º^ Gsa}@kykyky=0q,ڎ^o} ŦF&|y~ `kx) hk+=x页}-V&2h+J}6w>SI[]!Χ Hm}MyޣKiO Y z>޽H&@AYg| ms|-:GHm-#Ѷz[_lHM3-<F=v>x\jAϱi=&2صhϴj6Q12$wG3.;V|H9;1d-/An11 BS,".x~?$6J"4A;2Wr^EfcfGJhGxtة8`vpFC kY T !t߇AOww=ms58M4yz'ۑhZ>_?vEH$>Ǟ`dN2N7vd{1WԄΨ0x-➙HxNn'?}̓6<|~d(^^}Fp q%{E:C2a 0me`CbEQ tAVq'Ƌ& \%NqES'̆H] 6S.]zNƖSk `~S) 9xm0ܥ\$ɿ)P x3} x}>%=~ü?\:GH„v@7׍NӚ1ځG ى܃#,ͨKsǫ ߣd%tgkmN}),JaC'>!F=SF-P`Ia&d$-/mj5R!S6ZâBxEJCS om BK .TB,O:v)Ν>6ӗ 8ag+ct/fI:oB-TO믈r6-w{ IaϑYђMY|ƚC'zqSR/SԹ B5ܭqin0n?{Ȭ^ҿ}9ϼOۥucf6Y?Iqu71+ DW` ,.х\_@7ÕNY[XL/Ŀ j Qۛg?I"K`s`,!c@ۑJ l2ET%U-sd*RuA6EQ𺌪/h0#My{ )cqk\k@4džV,MUafXdxl)f;j#"h)ϼ͟7wȭׇ@[0Z4W8 gC~OqrlDۊHWY,LV nx0޲YBhV4'𜜥v+Xmąw!|o῟~ n7uc'm3ImsMNOagm9ƶ$_<(YvĻ  , L]PD|eCCCCCCjI pA8rSǑy(u;Qg~i~Ļ*.:yu但V?@Nh\:oamz=[|K<(8.(ލG ~f=h|G;kw9M␱~f<: AxA *Zމ "iҔ@U=EiG'y7Lu"IܩΑ=J^}X'mŁ7 Baqa.5oaH|<,5v%^+fV \f>撤:.4zQrml=1=R‰쾸qj' ?SwF!+a{ R6 䖺,0.B޷qik:vEctDB-3I CIL}~/rM2d:/ii$,# d~Q[8KEt]pF2֏pv~ˌ TvpA6d--ngз6;Z)L 4y}xT ڦ-4e659SZ2Dvp'@-uب$Ǎ%)l=:{I0Ĥ:c.gԻytޘa [b\cj2Y oS3^AMOw:E@ҼjRg]STѼH"b$)FwST^7TΟ Bdyy= ?qoѰoLnj?>g5n8Ν1/3[Ҿ=w | ³6{籄+kX2N0\:g7108p ,2ZJi7CcqpNpW?CK BkGW.;5bߦODs?Tq8]AMI,Fƫj8S&Aq}Psi81+SR޳D>Mj(Vg gn0@%:ʵEIgi2| }̴a|fq7M.+Գ{rQP%8_8MzsG7v0B-Z =] 6DYKB;E[cg뙱Qs-c@ GccCdy(7$vᏥOX]C67O1%BXTf#H2OE eMV(d?,2:;q;{ͭ]}3rׁJǿ_mg{瘖5d6jEhjZ _ ju.5Ѡ|9tVok8e~::iZɯ[?2SƔ6-wۭ_4*/hqs?g)EtxtwO5_zk6H[ \MZr嗏@SD~yxMο0IFV'Kwh6lڝ5>Ia{,CB{$NA Kh4hnu5g'z&$X8XR}šN:zh{G:(&-|,[wGο-eA}{ }Dՙ3r/c5 pm S<ij J:sTޙl *5x1;S?NQЌVXT\,*;݋]SWܔ":`4 9ec-Gӕ+q"pvѬAK ε tю폗^~zHUIQΒ )8\F5',H+ePC"fP&t'Kt y 35aFrjY=R(~ˠ$t*z-t%QX4dO4̘A)Ya4MsSۿ`n qQ {ڌOʢ#> QP\S/!~oƿ.IX~, "z29WĀ+M_IiNhNNź⫗긐ԢiQ{a]5ow:x kIa¯#SHbjB~fW`u3K0T WXaB%*A:J.lg YuS[.U-arAEjm̠thE++iaޯ2PRTIr$—nZ(L\fPP%2|LP)\zB錶z3,$UE$1IP1Sm_iza~\>oD YҟR Hr%$'MݙS+|"&+)! )JK3UH#"dřdLux"[Ғi>Kiu "[JfZqik'F"!Bu2$mahc\҇&2L2׳gƝ!`~֟&;3i^A/`V).މP:}; ` x% O(oL2K3Ue'Y7,76V-&^H,|b֔`U)I~@; O'r$ˊgFّ^tAO3J(ûeȕx;X΂\{•rkWrEwFZB[!C壜zj='9+41yHPW_;eJ}-]WsyPLx^+F=$OKP'FCld~<1]m狤aKsI5;Z9uf4CᾲJS` nky7rJMY;N-+90=H+m!Y.*UنEn_ ?Z樵l͖Ͳ`:%L.=1`!?! [hn^mPn 45J*l|24F;YU{!Mrx^BkӠtOS,e) z_Pk(+eD-f a'|bRWa a|90 \+)OQJ]#foRH 9hjHM2ƹ :v,sê/A,&_Za3Qaٔg! *#Ґ3x}=th^1UM&kZli+ݹl+yEdO:fN:a>n|noo9I!! Ɵ!Xt%&/lr~iou`m'Cg4lUrtviocR 8p6?{wO9|v&a C]kڌ=&)6NOSBٻ/۾{{⎆+=GJ,I?tOЏOÏ(߄`̳vnY .'.ނ6)s!?~ic_z=xZ#{4 /sLGM挎z带-~-~+~-vRomxLP I/ى7:x_lx] Q*i'37g_~ewCn;žxQtO>[`'P``G|!|]AL yȠxGgzu -㚪J"bPf2 Ab "L9v\p0,g@? 93[CnߧlxZgu'3IȞECG& g a9&=]ъǸF/c/O&* wcCyNɈnHOI1=nnuZlvXdodKzȅ' yy͈UǙzƂ14ahi|ŭ%6jFe^:>)yb36%^="(XFYRb)q+l#*"?27yvB K^YJoQEF5Pv]W,*,&m\x'l%x":1۝b~c0vxZ[3q4<dH3RXffdjbCRžY6N7ɹׄU[v!8 :i+?)m޺Q)-x-Kj6aūMմ_+؊$+ٙ䉘N [E}C4K;mBsC1䵨  O826B<\X>h|WRq#;CxZ>;M|,(ՄbIH`yJ둪J M{:QF;Xcq?SZ KjלbMMATMqК\6 =FDC !][h' 'ȧyn弰flpJ4+T 3Xk.MK2Oy2Hr/utm:Q'Sٖmc4Ut"r@"2:zB^q K!E$3\$f>+tLB/cLk,Մ5o PS:0~m%uF(˱Fb4ͬEKG*6 MG!Uٗ5CUs^^ ג"\cbgK͊O<$XRgn I7g$5 \\eJTN$3:$zדqhhZj/0m#fG~FW)KSWQ̶ل "9)/.y++ ܻŐ'6TқJul<(~ +.NkM[>y$ѿ gT5kԷGUv޽6}shm`/%e׭zq80Q :}<@@]źl~G5Gx DW,Ղf= sAG1děJoo.ސȴ ex{E*- Hd0˜ʴ@QWY謨Uw.J~рD x;H 1aEf8 o4P퉝=ֻx&-LK'st>ߕ9}Fdka5QUռ3iߟ)v?F$J-+%Lo;LJ;Hu3V(:ѵХŹ0v)R}_fPYK~KJ(B Z[ҊݦWK +PhZ~%~GKP5`{޶0f&I/,s@t/ח=d.p*` d ֈ@ ;e,b+/{W5l*'(ճ("-`n r)ǝA?H0q{bGc+ }o[-1TdMo^Addj (d&xKR6sVC'G :)4#e mԷ pmlZ‚7DEsnttoiHA5BQ썀Z#nA0I3`QPWP`abr_^=4.Bǭo­c>G8θC0H=D(V-Ƚ+2n6*>#WR~T^7DIUq-eM wX 4ef]~Gap^#G 7ۦh R-셧``MW{g1ݩrZgџm]t!O2*?W)c] l/yF/0SXX)NVS|jHK JDSмWFI,7E$,%ٌ;=XW'bR[Sm6:}whnص$G.?T_U{! dU804?nԝ6b"Zb\<6!o<8 G߬΄ BSX15Jٵdczƞᒣ 3NjalCό+I} Eff֙itC_QtR {- BXd^4[V򚦄T X)'݉X.m 0w`ԏܣ!N%@a9:7A% O,]#\ 0)@lߵ>vfX[xGu0 'ںN.K*Mh$Jt&] Ղx(.6N:jLJ<|۫[Vj]OL{.pLXXN.Ңb=7HhfKeKEr̙*9Ì*6M5* Wq]NK/1(3ȭg73?rLa2Tu 7u>YKhYBKt9LcoG&Yy|ox汕B՗e@ {*+n=w #@*|oWa9vUQxpOG! bا?p44P*EzROSt4&pE.t,Oe1t4WN+ͫu9+EҜ+_82`z9q(Lut\59La.Qq.8[l™l,-V0ީ46q[poS"oT5/B72gL /g7ޔ`͈SN`;NN\ġ@1&4jxlt_h~(E#cT pe1 =v!gWEaP?Ճizb0$פH `Nckc4 9{IÝKSU(9AG=et"lsp M!d4yaAuc9UFW+f j3 U34ntWDMSDкÓ& QB) mcL@j΄ޠv&<3əB3/*}eݰOǢf7&'K84^_{Gʢí7qJ4АK[20~}ddP#е񹬺ɋu*miikT}N&2QJ ZTM5zqKB1gKv%3k)CaósԦP&;ѮРXh럓 u?"EpW5 OU#L[< DڅQn "(T(njMP7dUNPv_`:iGpxۤMDU(}/l3XྌNtuvbiָE[tDf.QgjSrS֏*Zo^8(3)UH'~66ItƘ<׊ $[s4Jb_QL8Cܞ T`p|8l>Htad ~MRbszd:Ņ44$G.62k,0ë_LQckY% ӍT0Hk 43Arm, Tk\:D…5[Z{ts.HM}nєm2zS$!jZ-浸G'Yl!!yI:Ǧ|36q.b콆X8DZh~ѫW̗[k+S6Ui.0X!X)tNx3WU2$̳lt}ycWat  fٛ'_H$y 띺}}⨶ 0671+˨nZ홁Uh2{9" F(=$<e tdLMr:VMU@ӿkGM?01\&HH?;k)*i0zxM<|ϝY1q5/uqScO$A{b[eb h4#z2Q02;)֮/g]}5O PT0BSݠ;!69-Bt]e<Uxfˬ 'ӓ9u+5 iN~\EOpHsv՞R`pdS>;[GmoZ}u$RÙbuBbAf4 pC猍3.7*aUcyUѯ>bK2"vފ?9c,6WU:eL"J3$oWO|&_Ww޳x&ϸ/% u9Lh@=ןF -FEuD85, j/zzWhN53C?׺Y$ *Aq 7hlX;ޫVkE3yz5(Q\R)_gt;$ V~MFʼ\ `)pʎp  ,Xf`ܭISϲ-C6!߂`Sw^m5VWLtm\_QC3=гxCq'>nmL9E{x0('j󖌩u@䞓[蘛Hs[ʐիbrIq|Q*u|bvB{-RF[6h]JJߕu&mT\F[#ͺ[Ҽq1Z;SL:uCg53ؓ3af.#2yʖ:5@tAe_}<)Un׫C̲(0.;zMc1g4lAgmu&;p f$%7po/|U0^'{3'vr|&r糪-:ĞȀKM0u qr,N>] /w(é4w|W]?ZRQZ놗jټ|42ʼnf|g^JT#:*&06V9 K $2IVi^˧8kcmuDǫ:" g*cGx3S;)N47Ez27Jb9;W4 bZlu66+і8>QӉC2%*e8x); 1Ǝǣ!jRhdt<$W^Z7FFqmMܦGHȽٯI|v0Ε۝ߝen MܥW|eOzc&ٍHKlRADXBn5ض>I%0x4<؊VuJұ$%k%RSI FX:x!-$BYʹNsvѷ'̘9躝|~DcvRI9$:=51ޞp(.JD%|*&8r}6of'/^̏'?U0E6l:L4z'PS"^vŖqgQ}甅Vuqup_#iC$k_ ?d@>|Z]?hU C7>%P})i.XBxL y i&BQ+8^r*P7b\{2#= $`H<(fJ(y8ŨTwy2jf<./:Gnj.XȮ&_4sYp҃HՈG&} gh? 0.9 {"`29݆v pH>o-d-0I{@Ggw! Ug"%zPu-H`yh?51KXGUCd{mTԤVqb l@˿cr5~0{ځQ#Vԕzf@{0 "ob,}1{mgm59;Ɯ˹UD<3ǰůC`S, U4};! Ё/f;YN{.t}7eʜHJr]YKe"XcQV~JCTf%Φ3DF8[M7>b5myy9寁Gˠ{i,~8-\-뛰BZ=!d><&w.&!{w;;k~mBynF8 .S;'|UqKmћBK'І*pFL*Q_-Utv)+Ȝi ? ?:-, (w|&(m>">$ $L.%9ˬT~SG& f}~ =w%Ny(iȯ;Ra]Eo鑷H _0E3}va]Oj6PD?[*"Y~Qk,rs#Y{' EB>^)\d_맶dL:eڒT@i2[QGx(oLw3DE(m*vr^y4*ʢNR^"6υT8MF 9$zMxh}ťO r~Z>[4 8OOq' ߑǰ{9dh͆[28aC o7#aSoCIuǣ込| ͭsIM/tLJ _3XrD>*-@֢};^Q ']c0Dh h@܋P(e+Ti6]%Od`⒩YUdQ'jAr9PgYʞbL@\c%./+c'F=1r/Ir H]y.^%Ǹ c߰fM,R$&WqӲ'M2~%eJнC?rF2=0(e7U>%c6W*#hܻ@Ny-RNr\.pVKE,-gC.w%b@lW뒦l>s pUDDŽi$RI9_lKK`xD[$ny;AM63f,Տ(l/eNB-8THsJ*b33͆6@+(ed<;*Qֵ#9j H ޹'r%ye#.Hȓi#k ZW70zb_O}(f%BK}M+k -;&!,CnnK.Mn?\ZdSrk(ѷ @ah>eܽx @.6UM62/(_1QME'L?ٔ2JEY,jZs/ٗڨ2}㒘0+rke MLJH0kX/{_yԷf*HSkԌqRCU"׏?/fӂc3ߕK7hEL4(g, :\MM# meVPE3by`$Vdr:55=GF\=R9ټYU0?s bOoZ~Mv&k/6"o1#ffAӢ.D*"(}sL*9 IHB$RSLL以bLeb8"OK)fSshR؆àG[8\9„ġ m:+&3B lH WNcrjhJ{J{e ا ZFPYW`)>އ{&X@;#7BFpqU*nǮNs\n{ݴ:9 d$RrS9TxnyN (#''ؓX{8[X*:@e"e}B"R[N$ & 4\qwC.r4SޙnDnN5Y̠Eɛp/p^GČ^Sk1ϼFe>U^'㏞|E D' c"g? |mkKKMܞge! d&ѻH@%O?Qw"fE*w}&:9< fbB޴/X 9m0/}aY&LENu׳gsfrܫdzL4YG5ѲFO@|!:5vC~sw<9اI(ĺh  F-ّߟehj[f!NN]*Ucʋ<]0D2 j^zI >89)s? ֖ӓdvG,-SwQp@k蝜ChR@L Y]iTi1?޻ΟE\th2[ڃ [^rר[DY2 '!kiO/Nxv(>}˕!cċ;QPb/ʏfu5^.{Fc{=Xy{Muceʊ5VK+K^WV6VWݥ^wW^4W_ 0pyJ7냤;o1vŇ@>V -E/FjVy({ɷXDJ&Fq&A@ #MTr^=A"c+SE'8W1dpd:Xt7ه٩EbS?cOqV/U%Qfn7 7R?MDӗ#x7͔X_l< 6 k +r>@*_@)"@)#@)c$@)%@)òI3.N.~l8U/^>.*Uז Upy'Ve/: ~F8q{b SN1ϴiO!}z?/[ϐs(O% й{^Ν&C1P kɴf)^nNk9vƮa9\VVrmp &TpJƌ޸_'KRzc۰mm۴mm~JlQC;F|iDo.'yv!=Ur^'}HuB_T3M4ddp1gĂfenxh3oЩ9vG;vi<" 0THE/itARʞE;,q1$*E_f_Sy@y<27'w.Oa}K^#Gߞ}jMXm`5#oKc~`htƏpT!/2ALnr`';':K[CiD>$;wCC$Wˬˬ܋3VcLgzqdL@Dӥ 4wdR2w:X.gs[d4mI(B4&ATXXɦpVA\_0OPʰB ~j' 0)*=_B7&0R[OƘPt˵Aa6ZmiWx&1Q Gڢ4-DB,f2nEKii;`]sq? %gIcТzѕBI=6M?0}wЩiYOZX^dVZZsh&l- t!q*N=GߍǑ@FE=ss|,n]Jpb b$2ul;Y~7$S.53}Ƣ6?MDրZ"ֵB<'Қ7z૵ljğuNY7KWd,y .;KqwU2#:n?6hyHO͎>s{Fې҉̕+пż5>e6~X7$>%I!X d="kf*P,%6MKR*OYTᗷ}<}I:FB"X06ZVn6z>{IRѐ2 S)z?+jr[UxVjr)GHO/uyɪ#FbzQ!(}$V 8NO`x}-g'܋PZ IX kY4vYOgQN6.NF|]X_JQUA/1O[ dLw!^Äv"9PS 313 2j]FEi?:Q#"@ =<ΞǃaF7]'T^CZGN\[9ۣ 9tG$>3]tQf=Aڥȡkڣ Ӧ]88x+ߪ':"IdD'q}e 8Au$\l={! Y{oM(æ k0vx#޴tӬ/hIIp.q>o췷64/H=$(!m _h J;Iib?s|F^ڣL$&/^a N`$#z9Pr U͐jClɴ-D>݀_|˼Hc 1ҏRbf2xn;pOS 醖a+a(O<^A}NJfFX}yOtM9^^.|riu]~m~y~/_-/u]J箼Z^_|^Zz^ Vx :6qږtx F-wyRh1.CF˱[>e.sq-XW-^м)̀h$(ÏMDMT"![$6ah+VhA3,'4rB*3JΗپ.½pؘB^(Iqf8$Xr"z ;[ť1qQ\cqSR<g: q<|_o/^N I|̜}?9zCAY0#vB@̤PQy* {j:/H _U":[V:"W!-޿L ٲ\tsY`vofoaq S9<])- E5yT/ (Ӛw:x6\`WI Qu=[xSxl+|SLv|B&,zLKsAHaFcAMA \b{[\]]Z2܋ZX~ x G;:vSz@K=DF ?Bp*D]ɹPbގbFMHiFR 2CbRs 6#*sA}0wUJHWqcx*s)96&&^luZQmO4 "S'SLS>U90 i Emя ҥTj I|Jt(BcNQTBE2jV c(Zx}<|kXr 3qj2q zgu$ъyF.HsE9H-E9)OAb:y%Ġ08'ڄ-Y!!JNvi0=9dxzÉ F攥”l  X8d8@kS> T.}-JV'-".Qkm F:Ps2ui2whchQ55SMC`rgAGE&Ԇ7) ﭘI(M s{1$jPM8AQ4Y$ eY4"I4<_^B/Fne嚁1 煣a1 b[Xe9r* \ XM jczDžޞ`i$C12cU4 x]Ip:S*?)+h#XH>Vĺ*뿺 [&.Tk՞O^5|'+%K{/wԛzKW_k$՚]՚9R[|WoYVKzc_ s_j+^*r *[a)ҹZT{WuR _jXutڜI&qaM([YZwZ"Zd,ږ0F3L)k-PSPS qzoBE  N+O3 ԯ;~",xHx1oZ%NKʅ5qJ)WiRsJpn%4\ϥG9SWm -@z[8{AdJ (ז\hJB0H0P%'A09bBPm蓚9zP>OS,ŕbWbOqVelykիYarKX6`\?̺ja\xm *"#Vꄸ?[}zc-ZZp 󌉂zn$˜ nsp%Ѝ`;a|kZ1rsL*56|cdž^OwYަy;OlV:v\ H$ tM1Xn$ 8\@ "DP-xBsV.Y$FD1"R3O# \okȢ3A" ;MSSN z,,RWSʌ( by\ȷkx?p:}FyD'˳)(?8yGly(,7mX;.dS/'Yu_ +S|`xR`I8 yJpB믩"j~cO"E]UX(oT˥ſ0D&’wG%zb0HԧXfe۽ } fpmޔ\,~iuv@%4$,xZiȠZ(A9:|i}_̚.?v j]'o>YYͥ˟ W*(YwJOT\t_i>=M:z'НqY;^V/ jQN4-EFW2$?-I]Jɚ|C F"u͘jG+$X\ a p \^8r18f-r)[:>rHnULpJΤG•*SyYEj7 x"|~'gCJ`L.RrBpC3V=6%p2˟ }eZb \uopJx8Ǔ4b1cѩxԘO+E(=7d  ̧%@|XE]}¹כB$z'8ZżqxT|<\$I3i)|zɝAzi^.&NqD;drk\Mk gfls솘@#$즜lX+Dc̤~FoI G z4}i+U\51KYCnъU2DIm6=-G/IcɄѯ 6ӗ lQ3Y#s~nW%wdR^x(u6* A Փt-jR7cie%t !TξsaA?akkmD.5jyva33M`b"jUt#đp,|XZB2|.qs&%IIl{iTxS9w >4W^vZ)QlOId嘼~M"8b4q,esE3\eNϰ_Hp&˳8!./BJSc -by~k}|j?'D|znYŭ1Xd]~tPh $jl rS.X1>>sj)#rMA:RdwfA8aĴ>|J>7 wnaݍ&?MƋW/_/7~$z3{:uŃw)a!VAH7BI%)T}) QgY-|MKM\sv,/*\lf' 4`:Û6!Vmmuv~i%lC##DT1߃#eE0.CY+\X X>svv:thsptl'޹F㞃7X1ժcdey5`h'v.Nqo"unӈ1&8z \[so&_}%zEFj^C|}bL}їGsUb+_mߊNZ^![?Cosu:'U+sKb8z`{Rä ?zt{LJy$C5;ڍ|`#RhQ ϔ5k?égޝ7^RQg@\ '`RhR$.@$~&o-XGa*vE0Tz:}ȘS͒Q 7: *ݏ: 2Þ ,S 6mL: ѣۚdYfsFUX Wʥૼ-Qj.MnVQ . W^3Ցz蝰JR>n=ĎL@}ܤ7;_u-r$|["R)@EwL4z[C-DCv{@2W:jd&=aƘH.ga9t`;ē͞Vԯj E4ac*vP%om!vH ,-EjgXU9{߸aqFxg '={ؐj fҫ%Vמ{QX-:; ¯kmAbA{DVF N,iu*6@5`:\`%l0 W5>xt8@s*>k P÷4M71|.F&A=c͵5^e zm4HOB$&xƒw釵͏h= =Ua@Z6sTKvb>&avS3Sw5VF) tgM]GRvT@Ԃ-7?yL1]: Gb9U&AАHLUx1P/jD&VH2z/.Dp |T !4d*`qE%pϊ:p&oG󓠰:,}U/0w|ݰn׃NkY ,x ;ul;:$/A"7Rɓԃ7+Eqhk 0p G8$ .YO`0X]2hc+^Wr^hd3O6*y_fTlU/uLR::qRGW:uwNH|]-uuyg!IЕNya}(,{=+77^HkkzG[SA1Z[k8Sqƽ^d,g!5 "ЊEӮ6B =j+jb$C?ӕK7@0reƝഥbFKo'Ɗ^ B?$h~ C|X+1 CP Jjј-.DK i?VC ^f[2MwxB9*(5^hɥIj<1M[Y>HM R [߸P#&IʋXJ@DrS%y(-3FnY4lD;g]o:ڱ3zԾ2$( 'DnoJM#R~+&) x>ͻ Ӕ_z뛧^P FWګs|u~($Ԧ?u] OmRy5^j߾K6sڼlgΩ6sT uզ?SmW6+ڜխ o8qnS|QM"â3 0GlXJ*dCya] އZO"/=3Зˢ6s\>h"4|m2zƔF;@qׄZTԻt9$)XZA;t19% #ݥ0zY?V>-Čͥ94E%nr+vF2$7F~8eV(hH\dJ1UT\idt*gZ2͖1MŊeMY ̗ W(l4Www2L: Wf6Ƚ(+z&vѲo?Հ?55ysCT`U9+ga eŠkv7

7Yᶷ2#-ZS<]n\rfٯ+S|Սtd E+<[CޥC&"S}]NH߯ۿW)JmKs1:B=#,rm3\ G{M:Kw~|guuR#'Zr9 |pk|pڎWZw%$@-ɝviްѤ7/km]n˚UCM,mwYXMx`Qb+$#~n2WwO>BOw/n=NKaؖs@xcG+SSi94wh`K7!&l>49tyq *g(? \@3e0';{xK~=wߪmxx(>nݖ=0Xlw풻ċ**=/\!fU2=ZGGȚC]mV*9]BfgO͒EtehWSYT"kYS60uKjC|F|xȶ# .At&c4b)񅐅F2bغK|bAagx>R[VbǖTQ / aYCplwLE~wwc"8{*jŸc1wH (}> _aվIS6ql 7ĸ}pJIs֋tԘ  >`@3Zz@o=4ډC^q2Qfŷx 1SK348YGڹd֗jH/-d0}K J i%SCb~*u IЙS\цxTdLI]utLSZ n[+Qjrȩ y>P9&jt^/΍aVlAB'Ӆ\SvWKuxxڃQr?EƊA;AɰG~NN9b0sbwrD%ko +nFFMY'YϬ)psz/fy5-wJr|ج0ךd۝`A8ed_ Laf$!PO 2JIr [hm-&%s pDSkJ䔐QN*w)i੟SK8??HdLסkj-W2[yP&e9aG/>_93?!ol N72g[.sNvvmVv.28Skp9~YAS9W*ʤf,MT~=o 78oA3퍿pMEc;ο뻯mbjӥQ~vlE&=YY^ނuU *\z&8ѷSw|ΨiL<ɚ0k|5z9ar cIwBdUv˪._*Ც:Y=겪D@;`Ȫ9es2޿ nͧJ#]\ ^3+ ž}M@:(OS%ũOj VS V`i|ӪW9y~u%Whk2tҔ4KX~{ 0{GƲṯFb̛FFOc!6R0`Au:~hZ֧ԻJFbĖf|ҵ"엏L-|AP*6ΗK!WdBj⃁sMvFщY7;gzRFz{qҹFKuBz1NՇI|.>"fikyD58R:$ _%@k ?(GY=#S x  7טOP ;\qY XyWNq⦭l o3'p.uGS~s€'^KIYז]ms%yxK-ˋϟO6{g8n'W+yo>w{QN%[F=U~{JO`3Qo47<;S>`p'[6%yy4;ˋ'eX\VXI@¹f˞;&kwF }>5116_ͮk7o{ʻe}=8mt(ӋO0dz t:JT9؃?rGi#jy3nŘo*ݡ&]dD(98bLhSI,PZ:nLj# XHD\QP}'IJFLoBLO",88emwNJ)]?c1~}tqh[Jteg=] j.y;?دs:)Hۆl' ?eY%>o ^  YZ'>nNdaGgޓ?xVX OՅRug,1g "Yaq8n^S9+rt֏ )! cvC, #p.'_FNQP3!{`Q*O|ȇ͇qI|)w祋`N1}}Aa: 4j4^5_R\bOeFh01fs|?ٗ~T czC~gZ8StC:d#W%rŨtKl# l - 'yO^t ;g]]}>:Ֆ,}P;k@s9y̰KN@ R?V?}rvUs[&eAe]'&r_oU ]fUM+:t!rG%[Ly|Ѡ@}]W5va)ks;މ*l*s{'_U~=|Bd- .(acцtzuܻ5z_nrG]trs_j,\RN6D6ܱe)P}!7ͥD!&Kt%(tF?3'EبSFJpNuQC6ʥ6UTMHU@zwe+V_ HW7dazK-U@1Gfw6?"Qјӣ'LbDZ2OG2z!iԴyj-=ӨOBm OoL?cGΫbZ*b{ZO7i0 A3Cquk e _ve/єe|-Ob/Zp_+.PdrOfG+.82\O^eUfU ㋚ @ 1Ap:Y}l6)|֥ۨ~"͂ʞA nqʢwk -۱[ltK[nfCFQٞtB8;Ge8-:BNSŝSUSeQN5wN{ڜrsp$"14+hW(jjjQ1|ȬyI/]| @Bq-_>$/&H((Z?ҰEbchiwH%Tug:n՝{V}%l'Ϭf辖r:t_ ,oc] Q/%3bXb]i 0M1~|EVCw) 72JJ@1Ѳځb[t2($-C8 2^Jѱ`2 .+\*>êGD oV\׹WK͒!νZ~ }jYfDNݥrbTw7e }Ȕts1WO>5uO fmar֛:ɆS$E6ۨ " 7l؉[୲-VrBކЦ B@bfD{ێE]CgEO u"U09xpDP kcgx_\]JK\f`*"Y0`u΂:б.&7-z?;O˯ìrsV-ˮFhL̹~R,d0G&}3xܫqu'uIAb2BZ7Sa>b7I{k?N Džc1b8Apw?S}8)BpgDml660'&[|iX@ʘ45HiTnPb+ZTZƢc'^oЈ `t^K'\NM3auh.㽬A/CEXr/>+Sk}SjmHUv[ys˧\xwurp-Kߦ30߲ i`zS#Q$'vy};:B\P_ v^tsvL@t3s<ߖ8R?Bh;/RBp538k:1C :3o1ӑ5**rdv_SyxHxvy$@ \=!B"B1I!('oT.H4JTkZ["IFp89%%isYRf.r͚r']v?Ūo&W/GuU42*q}(ynNDteB';YY%ʠ&;r8ٳH#ݟ;˓|Q:)\nC#LT◿sD$`dc F⒉ dBaa@q-F*Fs,\jNc/!jz;4S 8nR.O#%^vO^L;?ʕ!*ݐf!Oq0sSWq('Yƺc|~ޗ W4 Kg^qujkgv WbD^@ю\Hba[B-ʖSU˩f v,%n4O}ANcK@I:$`BǤR3J4dH&ڱCnřЏ'"_^NLQ`XI|O`7(~.os9􀎳:9C`/::s Q /3 -{[ɰÁ_-[φkHJC$ꑣH_E%I$`IB$!`82!rɀ왲zڬfT zC`r(qFפc[$RCgj2Jfۀ9>~pwG>5Ƅxcu ݲᬧ)uRZ}C}EZK&JTԣUB pM3 ޸;=4 /Č!52a .1 tRK4W.`0ZSjEEHH l2t\IxN1xNSyNy⊩ZPU_H0]"zw,-WPdX#b2JDyAt3unMŦbQQ Q ]gw^(/zj^[B} wTi/~lP/b>GQk\tHyF6]S3J\%6\֊vn_9(E[;FD(ʿ@Z!Qt 5ejef85{{8m޿>- Xk<~NEF˥#8klSn[!ڟ<Kp\N4} 念=4#a].ԧO"P^",{~x~ 5s#/*qIA/PµTjcXU&ihmZC#HoTeZɟ2 K#$}que& ACeDzu5ZW_L`mUF7T 5YE48~4⻅͢:̤%s) O? lQ -)|ry§1S)+eNm%!;aC>[Yo ~g /̍XУ7ᷝ'ް_aS.'.Vyu x[?wv=3FLƧ%LL]O^??b¿G'2frںUfL=#ѭ·c9?uea '|MNo cz~V!k\Q:5jTFq7c<tܝtݫO:oO{|y_##$ULt7drԦ[lVBA"7[T I#+yުA 0f9`M ә={AyJE}JU}JM}ʞʞ+u++YM#nnnxwlk%ʾa'Lt ! [0|ē0+|j-a*n&P_*k :ԗBqJb{(3-[%v1NoYU>{4';|"¶Na:fwFWk\ݾ2ͅ ;Zbk{MV03P.}Ix;\9csKJQͷ;7p3M9m_UL|*9@ǫI0!d }J7F x*p7%A}o:ޚ\kûYE R7R+3~z] Nܰݏ9z.$7=@+|\Gpgyr0:c`k[Bkɽ7{# ]Czs]}yPo3C6g\6imo96./=Ŀ~0.h^3ˍlSE_2ہ Z,q$֙˗x댕p1dp _٬CĶ0 p!BB&ˍ(/1_oӓ{*Ϯ&ٱY,!#{eH'Yc2/18_-) cߊ)QToO/oy~ao]MwBE Xna׊f_Gex8^+2x5\QtA2ވxamu oeƎМ1 .ѯՃ3C  ^^>AG_C^|l{Kx>&hX8V՗]o/AᢧžVؤ@\J?¨*qE}=$lgjYzw+y39GHF&ERAZZ'pR?&HG c60ERށ ׺Ҝ)M t}b:}W8t$|nUQ} sHOA))Z(1 |cn7E˻m|0wE!$3+V2DezgE|.~ue$tf2eݚQ#h(2Y*ㆿ&r 1vz\]+>b}]&u1> UwVqم0ESR)Əgg^DY8؛c<>_sݷgع?,{Q#$U eeӅoSTo[;\/Y{8borM{co^"hS"j\m3ق pH`ݐqu̚hwiD?QmYq!>\DoN|[`ݼ,J͇ J'}zIȹ jD/1P} C1D9hD҈̈\bH.]:RbAMFXUK }mC!`mԿτ PS_?J}ci*soKP-[(h}1\VҼt ̌jp1u|ab'GIAMƦSC-TG1CF r+i%EÕC{N!Ob=a<': qJ'@6&qɂΉIaeH9bXv8Cd9?w[;W~Kh=+QZ${ KuPU.W5Sw-JY@-?ܩ&a9^_XŤo/fW3+໬,V5_wt^-((҅Z( |^TU2dSʗ1Q#fa""͋Y2OXXI,=v p=TFcy]QVVT;5*O f"o^gR~oP~s@Fg+]oKU^m)2ֹ#6ofi7*Sv+gغknxGVw7g>@sI%o֗ü sP _@6|U#`\_9sې"|1[&q}v+uQ|f_a U{-~ov/kG>jEJoD|S V;Y>T\?ZVf~ۅMQ-_q)ˀcP{X/ѡK]C0eõ65Nh d Ma]MZIVKMSvߴQ*v9 ciq-V^r; pSn{wU EcpXyb,Z'>t'ͽ,~n (Gnq ;3Llyó3yT_֡o/î:c3}%iκE7zNR|'> kH(nѶ#}]\%8o߾+>MaL~WL} h*R "㚨 QP}HQF> G8kuH͵Hfq9`pԬEټ7<, d[a=uAѾqI\n*ǞF\I(tf{w'3_a?=To4ITɍsb-Gߵ_k|Û7֪N=hpxS,0UxvE#;;Y3B9CCQE}TdEHּM'] xtx,P2TC/,q>bj 'SatOǟћJco{rZ[{dž10 -~PIp\E)(Sx3l􂷐Uݛ-Wu+ds4K=7p\և+xO8c}E=xᎳx*Y}wg[fp>1ӫ=#$/k\oQ?FHO@0aț?$!A C5oE x2\kgpC`^Yfp(@ p>;OqPQ8/\ c)1`lbEv( (Iɪ!_dhޏ`/@M2hBwC2e. 2mh+2U=L4e%LjL2eȔ$ʷ ܯ-(=(N.ks SB'{4%Цܒ6\aw+Zra4ʵ^Ne! ;_b&G.-'n~>L9=3`ȭ6cPXv^e߽JLbn[Զ5mۊmQ[}Hˉy>봺ǿuO[?v̫pxґcv6' B8G3o<;\TiYPBeʨ;;z#x)k@ɞ<-~s4lO|*R/Bt]8ž M)(7 H5H~Vzap5R 97WdL LPb,x_r>_4Z4@5lhYpjՊWVIֺ`rM8Iӷ x8ww NljwųԂ^~Mz~mm# d/8K*G1g5 ȜSAZX𭏟3?]1/>(^TF1/8eg[xO"\x}Ʃ1]nhW^$bVXO:YZbQr  ԍ$VࡈgҽW8EE칲\zIx<Փ]6!}㽲o&fn;iponf)3ewnB |. +c:5A'w+;@\gvo/|՗90ub˼^^ 2ȡ2ͅ'=;8=>g~*WXf3J{OՓu11gs`׫yV&'M>= ,?|*.Q2 }~OC]UйvN7 *~BӘ'fc4Ɣ+].sZȹ]K|+\Ze;%wKT[lW#w~|;{>PO[8c[{1ϛǞ/>8qb3CUeoߚ=ms{S|>"s\.ŧʴť݇#_ed ~[\9䃧g17=:Lt#Nj^|kwBGkG6Q%mK($,!x>oG8㩏7cO3.ߎ9^y|ʩ bVR?a1OpX`I6laUgkbOHĝng 롩J@ vel9fm<^RDg߼aoId&)  ѡ" ꢲyhe=DA4$,+ME5Uҋa]f"LQ"f5-ZHjlLZ\ L~6˯Jӳ&;tq]wkFL=`Oqr rāp3Nc^pܛ~oYI灘_.9v7 o};$KǓ9p 1w>]]Ҽl1 ^);?lOkOi|*4ۿ֯.[WWpvϏYCuk7x['?dzoIN5٧e%ŠrgW'g^QWaW?5?~i'vjlO@ּrg-X9k;p2},O3kWy[u%6ϛx}1$[$W:gϝpqq "fWNj+!WH)ͳ:OWgBVgN'6o_4xI "x7/Oma}=]²iZ[ū9`?M{ LΆ ux8&L^˦dIW?ދD S4D]D!hf8O %sٞfݵ1ύ| ^Y;|*3Ytö>ut =͌ζs "-Iq5Փ!5fQFxIUgϰKX shZ8GVB[~ҽ/@ܳͅZC<8il9Şr"7U ސԳoW p4>t68i>ח26{Tc@{umO1 @M b:b9OTl:yÃ}_j7vZֵoꁋۢ޵/-9IND$Y&\줮%L"ڃ,LI4$3,4u?̍ڜ}o87,M}:y¾fH;}vM$"r,L3pZ5Vwyn(f5Dp#aK%'%ĭ_AwX|^*y!#\iq8b78"UN*\3᯻3xdTC-#@w5,g>x"|W?Gt Or#,h9i&ȇә\,%}Wf /ڵ䈻zODǎ<VAyw*o}xbW[UG(f}[vͅ,^ѐu ^Fb| YVnoF]?godʬ9ޕM9\6dS _ Qf 2ܛEp$xs<5.sW'jȑ͞PIwqIt{,3[?i7[`] K#%0+.]UsJ΁}@xmXq%kzC6@/ 4I[q"@\+ W&+S†z:\ DK '"-s !7q`¢DWGfFQc5@nDxyoى/rD!E^PdG!!;OFv6Sz0>=0 Y!Ȥ E~(%'%U/\XsTۀnwxxo'|͗A#%%W#meW*4'ƨ׼pxqLu+2 kR=UIŞdvr8yךT#'&h>_*J@}+:SܦٺCw.K4^ӡ1eՐ!7}~(Rlg ;v!^z1Aw`I[nҫzq{9op>s }q N _,k v*>3LJ=`cS5PipeәaEb~ ۞ǖд&Sv.] Q>L5J9c785Ř͔AlJBVex^Y5Ԧ[Zжkx';벷=[[ͷ/ { b;<|cX[*O/~i]j|.anFR7X[leÃFW-1Gh.۷JQ\Eeȁ#go)^6rT%?A)D!ۅj//t67}))~^Աap|NϚDP"li>>Ȇdߪp;74!x.3y'.3wx2%~Ćt}zC`ZTo/RպhdF&,џZgf;leL˕E n1KVZb6L96lX >Asϡ P~@ds F5M~o 6VwTÙ9qr #kboPM-.^{/W{-W HX|iyyy{>57ڵs,ߝGK<>{$cSfQufK|1EOƯl ]mz|2BRJ A6w `$d|.3+43ڵ( j33r>LgtIn*r72$1kM8mɞ"#{;%$AuьgougzC::-/~!'+5f!t^"}E^{"yz}Q-ݯtu& >Є_ H<\xȕ3I ourq΀3 \4y/ nP~D=wsT*[ :&g:!6X: }fYoBr 24ރ-Ckv OM^ip@N-9 Srd4HN4gAi0GK4HN5!/rb n }C4  .,1um>SƅV`:QMJ3J$-ue T^]r[4!TH*WD(q\v;9ZLI=7mm-A^s4sTYV0:M_˵C7|bҹc}z"b?*/X24m=b=&Frv=O*1$x2tT^ ; A G0m(1Q 7O gAs;;\Lox62 zr鷮hFs4:JŽN,Se{.x%(&%d2FNQ9E5rZ'uf8Kl).7 S؋rmO1Ǐ@lYPs)t0c һnﶴY7CEmQZԗE$l"Ps,D M.vR&6[wif)dE9] ad_,ZTv:ؘ٘It犙Izj!IkN[n$:ˤO"͕Z׆UjKEiЭ,/u]dx7ᒽfʑ3+эkV6=/OW_[yu 콝*6suœ{#z4e[o5e%2aٶ9YnYUݯ8WvuTzy+U7HܷNQܻRFb?~߻%XXG]w"KlLȮ v}y+W r+x;V]YtU* WBec%XT+t܍9\`?BQ¿W~ȟAoBєc ?~ʘ|jʮZew (b ʯ/\ 7c3k,W/x=Մ_fKlQ|l~ٖuٖE_*w#jel=uT\{~~i_'3']ٕN't|ҕ=,k@pV3#j`FP ӁDo<8cIזxG6l'noFz+2S'™t.OWτ_ &w63Bv4+aI f)mMr>\l;֖~˗ֿV-,ݶBd( r0sZA귉ݧ/A&/:c ITG4 ġo@aZx>@L6{6g\Xp63<< y&w]#:w/79&IE\&Di 5J30L)X\D<5L1vWB52)_8+S/m#|@ŸE @R U !* ёK~=Á9[Z%dG/FR>4(d&]Ltpy;w`1J~]mL[QM7ٺ1<2Mzw%V ٫d ̋S}?D\7qUs{OQbj(wH@*N(9EF|TW|~/y` {MuV0_Gl8xq+ф6DurfP= L;y;lX-: ' P}1EgwWphE|TFٴJH{aն#Ds)M[(ö-12wV"c Wڶ",|Ӯ,TG/U9b| G[f{kеNKfUG"pQ/h ]'㸊:]S Lg݌z_L33Ǽpߔvkrsȓđ: _]Go h v%s%g[ .z\^*9[ 2 n7G[ tSk>XTv`.{dgyi" gςwGn=5)@\ GO7/O<6 1vdD:?}cMyW芃1s ܇k33hn'k*{uOVm+I?iؔ Sn]4âx\yz6UW+FS)xNv]MqDž϶ ٪']/k%B> Ѹ;z$zKK,zYH?b!`xe06+k}L}h*f&7ʪLC;r˵F>o)bW+ri+b)d3(6ܷd͍Nӌ1#ffd$J3>/Dp@<{8K`sB(L[;^GyvG2uYnZ/[4?;<; Q6 ״>RARAQA^eCTP _|)y&y::NZӉD?ӛjQݛ&b_nkע{&mPrAn/eiOn[ދ;H%m鳞x-׆g 5GBֆ?LP1\}.ŅK_xܷ2O*x Y{-Z#`{Ӥ⋯u/_ߋ3I%Aco ⋯4BU/-]op, W.ҵf2HWYhm;qP2kH<_['SI9 fص141;("\^O>7^Zﰭfgqflb&p|y?l@͍9Rqu)1Ǯ{2<6.T63}5goN=I`Bjݐm; 'k$YokZOTCV8 &P Pi%dBD,c0v) ; ݩ XkYԴ l =.Jal• =F ;N0V6^EaBY[px{r@/\ ع%1c'덧`5 p4b=@.|:@YJXOrU>iӉ1Nbֳ\0<[cYg- mpe<< UO>E-ET6{y Q*7[ PzB֯rεeA.7d><*7œA-i:li]K; mELa1fq}cQFG f.ܭ {"(=q:cShx7h[J )W]O}xxnjRۊx_)C0y>P#vٶ/DƋ(2|(h@u(K?wdp7Vdl\5b@*uЫVU-;Pˉ++m'^'(>}m&<}m z>q AC1x՞d3!oVPogu2;t =^3PѐG{U:.axٲ`h- + 31F3"vhk IA{eh3E>^8y' (,V#18n[ڃ!2HEVMFog:pZ[^KO:׭y&%ٖcmmF{#󯇽Dښ2ɀƼ+v!YWO W'N __ERWIzLw.x|?ߕUXCY>W *LJ_Js8t2@v\ehܮ1H0 fPk(hY!v*z8οGspɂь+Jl}8 }a4X~} Z'+Zz\Aek,DZNV< L`p!Ia(=Gy=?N͹ܛR#tDCQatPӚuu:ݚál]Mi>8Y8RAgicaoCvlS}I6x :)AM4 k?`/.~#K!@A]O6!ovH6F= .}y/IyY@N.dg`#~ɕujZJ̟ }0 ;`}o⋯4b~?כqGr" '5-1 ͋W%ֹ'F^C= T cYm݁w$Z0KE⒙S5;VݠnTͫOp23n${(MBlt-W%W ތch7@zq9,WQI7b`=+tjw|!]+۷~1z:Z̷E5Ғ=cO%<̼kAǗGzհk z&꽐whhԶ2:cozx:W}i_oֿ?yJ{כ}}|f 7~eߘ/YEc _{*_N ;?]!>+nb-ܹ=CιNfʵN~>>}m?Y6'CcBO3TV CYdp\ɥ%2y6Aimf7 RՎc\0{YoYsY:I[[VR4 }g9%E+ wD@& g^ 'Rx:o yMvo7#Яow0.z3iX7ilτOj_z߹jud;o@餰˼%V t[/.[||`K؟FolHS /Uq+ %U)pM>k?'-]öj~G+>ڈUZD,Ab;[{zSwow?v|kw$[կ^/+۞zA̠UQX3s_9TC~q? j |JNɜY;{ uCOЩOΩO똔'q5AE#M_ t#M_ hLGY}v| !((@pkrp *G~~&6!Ht[)/QuU܋%]ب6鏶FA[25\j_{^Pe%WZOۏHϤ,PZ*̔Խr&d8zBly06^ |3\O@c 86.StKkqۃo,Rw6#Hru%Z s,._|5IٓBDj&}Me?{6- gzHaCa~\$ۉBgg-I%Y{ miii]gJuLbeKfڕr͝j(yϝRYKpT 5yL3Fy)QB|>ҜǾ?>wΩx ڲ.&B?}:.IĤ|J2n}>=1鞒lz\OL#ӓ{ ?*<^ez]%\WZgߦsJn{NfZM6D0 yOswm!!۵#[6[`hbo.WF}@Vhiϸ|Dx~?bc̰䷺7i";hmFp zRГ,,%ܥ7 ]x,nݩpѝE7D'sA xQ /_y=>?TJ>+̴߳V=l.3ߵnYX]i d5t;ncZ/ݣK7e;%biyvn3nS1LIQ~(\t3\t.YbEW_Sې|jԯam1ڔܣvlL NMTMv+pS3}qSO}j_-Tpt>ε&)xܰڽ6!}nֳuJpIiax2kÔ; 9zk\9_dd>qB#{׸nK+e; =\m*vp^w[өZ4s %\\Xc2dX1 _zKS15ζ<2g`S0ádC0r5-Xwhor,$E ")}q^^OMZ]%y .:Ųrɼ2I&Sn'&n'*,,|j&BaL4p,ځ(OFNoڪ!7!{9<+ 7`C\sb}x*Z<9w<,j3,YG=`QD1f>:"|)(d13u!7tȽGm>HʵK{v ^Z#w.%M8/^oM (9!}sܿgn@}%s0q"y`8`R@p3Y,.̣/7G^0\3LAopH3OV6釪 aۋ:`; oWNA[zh<ƬT!FۅVKfyziK7krFkݙM7ժ.YudG7NQCTE~^@ULdhTlr;Q>wЦe?% V;`}|rJ>O*.52kpʽp;Z9BP<9t6NP" /5'5\e)vJMݧfN~^_yk~& M ؐͧD6SB3T^"a|U?8^?ia:މ~ʬ'can+mpg`C=Ɇb3s5͹q[0H/XBu$_R܌pR0E4l)#ݧ_K)%^e) K6W#51lu /i'ռjڰ Iojf5 3ы䡐j$zdnnaymRT`T,,oF}j@aMrQ):LOA1D8A9F9h,,gUlKSrѶ;ړ$|k *7 e?˛,n3奟"FP>3Ewn˪>o<"pu3,wu ?| mo1K$Ivo ':8?zo ̦#i{aYf! dg{Gq أFri&Q }S᪄@6}iQT&RcBdt8ozw"4:aSWД^3yX4(N ֍+qynB^D$d].!뢄]-sFQY֓QnGQt O׿8W҄WV7pd7%jeEB3n֜iC 7X0 Jgt$J6nK[+05 Tky oˊ0|\5& 3HA.뜒<94b! !ihAP/yh{H^!š'y4rcph1Ɍ}3_*u㯈6p|W3y]H mnbZglziJlLz`xg"cm ;ikcq(. gb䍆 od'OG/3nUEQʒÖ *NVM. ,p)E-F-j\YDiw%]6Ҍ|Er:xFIʖMN(Hm4Є7C^a Yii"k izǢxݑKoFOqR'uK}|:x?xߨ%:;|3)O|.W$y]jl'>)[ͳz U!סAJZSrܹbmTYYѹ8u'r5NA6tK0qrc7,n?6y7o2x8vFytYb!嬈<]8R~s!Y#-&[Weo{Akhbi1>&8v~®([0[9O_dq9:^C1H9t3nG>ɉ vLu; s(\#5bȽh6fˑpVT԰MI&\eBH87n0 wTԁjm6w3^[z.}{xu)~V6ztLÓONu l=d Ǭ7g@ >L-߂]Dy|"Hx8P9J>|Ċ7n'x.M! Q4srzb=UCǭ4,PdFb=#'Dw_)ӄ;7#/ tqe4M=8# a/l}euU,Q$a|pVBDf)ІBܩ;(`>uvwKr־ F{߾ց4*RfDz À[Py^?wNWÏg* ap'lD7Hsz}p<%_> ?S`_نNr|;$2`W;Šx_ZHzeGTNM5Ay %L6d|~r}qrK..+dߌ{}o[e.y=U.:%ӢHq'jO<2cd蓶*aOiG.cZ?3B#Y-g&ڞ,]᯻_Dj|VUv&FN(ܨ*h_VշV0fW=qr܁tkFUٹ%:'(EH5g+# \` K$ ,c tBnsmӐ ]3"5W"K6v_ޚ,"}NxK@js\ĺX5XUa"0>Gj1jտCl~N /.cޭ5,^P*nt<A95r#^ar 80] M r}@I=*ɭ m? k}+CѽWhumeP8}(#dU("ݹ_qP3a[^4>5>q^%N #2QJm"(~I UӻKNT.s)T‡٫e:?P o}v 0>kjC. nH+zFUhB%Zk?V~G.y~YbBOeUe"NM<_պUqbs^$NŪXӹ-+mXQZՊmQ(_fGj)<䔧4> \zSCgH{j6wڳcE{nG{hϏVaG|UKmI}~VY}u;ch9 ֲӬDQh֏OҬMK9wU]7֎@ZV.юnmnt+ f e'\9(p塭Y+HM,2,p/TS#oZVr:% isY5dm15 ßn0O{>3*q<wILn%+9&Sz<"rΤ6#5&Ku|B$Gj{%=l GE"0Y]1&j$#FK&o ;#Ӣ~]+jcnmp<'DOG } JA[)r(5-yr 9Z/ [(L!cZq- †mc`hge,5 ?yo1v@}=c?l7 !097 Z*LM{diɋ&/Fyo,Rgg*Xa[A,/JӍtߣ.V%)Aڊ7""&V՜}>Q+` ps03Ng dփ:,WG)3+VtgN))4֌?fJiMɜ,RDAMw4DZU!5n,ͼX+摐a5RUw"U7tԕqG^q= i")gb8#P;98sPyeϰTqls$sJ}JnjGAY.NDH~'³ jPD4j&AstTd5DPZGOb1:Y"(}]zh*<-|=5jwl~~ {oJc/!9U>K%K/hlH m17ceLQ|&79+g9fSslH,ɝokZ\'d_'{d=?)#_Iin=߄inr7'(uo{0T'*Nhg$.D(D($.5.hqVZV܏ucy[΄&q.6Xk῟DFfdVt--u\*-@P P R R #M /{̰/9eO48mY +(QP2%kiRixI(xIWr)fSS 3]˙zIؕ˙z)}G#lyʥI72l#lV';Vlv-5sP.5suf=fGl9XGl˚9D"sH*&<~~4ð {a iw  {%.߱)L` uS9x$Nnd0)Lf I/ٕE (y *DT5"$P޳ ]ӥǔpZβ:`.!H{nZ3 xL8Kr5"q-7Sr斓nSGڛ/\,66|sşN%2G{lCt򞉓rq1D㻤&IGNg,^xD'gOC]P.eh,*vtŞ.Y }D1p0MBGnG}K{F{G ^ o-w;5a߸_ޚfP\sB/焜dĉ[(n<{I}ٔ0Kvijf:d>JQL5g ê&j<ڎVuN1hhC\<|LAm 8IɥN)( wF&sϪgrۋ:wvhp7UokD(_5ⴝn\2tV.mѝ4Ѫt׾Ր0}}DnOؤlR+t4k3ZҞ܉OA.Q gӿ"ܒGK!?5KS;)%lWz[@o)gS?)hsǖ(Wc_6k"[lg67;g6'kנNac~,>Na%o9 Ӝ4pʲML0B&Vԋiv+ՐTnZf˜">wLAflv.t~$op"DS8+LHΜi\%b'py&|cن$aZ-D˛Mt>y6yN~owC#j=ɤV߈N2$WQIs*j;ZH_EJI1*ETrf0;^=f8s친c&lʆfI'ό4KB[t^O^a. &5)>NKψ.-=CSV>nE[Oa{(~Q\׆dY M3'\y ]NF ĺ?|=H` "FCdt\B@|VVFwޖGE>"\b?C`GM[_0`c8~CN\}8;v;qs]@bK$NT9hpdG!Q#Z@vwqr;Ûv`xvCsI8..Hg4̚u:iH1y+hCh`xhL0%`:H;z%v|VӯyON}^Svx^'8NptG> EOb (}YK$"7%꩑0fhp=#Op=d)QPB85 1shPi+0UP)->Rj9Z*\SxD2.c}+3<J]}& @Țy7hgM~W|'lUNk.Sb_V˷j|sm"m n'U#t}ԱDsd|G<2;ID?>'>~^e0%`>JA Ci5Sls[xI564nV9Zl;Y8;xfшbwe_nꯓ&gsgAs_^tV~]oQ͵'m{Pn5S H ̲M;fg#-#BE1@) } MVtBQ{:Q֬v>ˁ;^q8R\!;S%](Ί8F䚂:{6u2ŻGSoQO8eAh=gUݬs ޭaLZ=qz yں'3WozBwKwW }]}{NgrM#^!tXYлi}OE?] bgԣp2憼c}_@?l+a+iӽ5`t"RMN,'FJzg {t[H )X+m3C3Lwm~c;g?+Xz{Miǫ⒟D3s~1O͕C:./>Ҕ㧔LJJbBOW{oߎ&y֎}CcW}$z$ZB(mݏf2{zPXloa[9CDOղ ϲL{@y4٦Z@nsx0Sʆ7hMLӊz|l=>%aωKrf ?>>rhQCX=j?zRiHlnFfPw" nC.Βa< /NtrC~HĜԯDHL7ݽhԥK".-̃' KM Twqyظ'lhgg?dibqJ5AR˿.oB9Gq g~>#@ gΕR8 Tƥc]@vȪN@^"rL%6J;z-{AQ iz{ 0ҀU?w#PGPZF.~-xnN s~i/)S7F(y99>lוysII7/^n9V !$3w+Nz`lR&*jH:U F-̅wBu"gWGk1, xP| ~5እ#9_h FE@(.ƅ E>jX궰Ui{aGNHRƱstqrxk iƍ]D}m,R+~B$8Y6-RDh&mn@A1yp9ŪVsv0Z8Х䗸<F-ŧP P dw&[%pUB%N3Jsn;Mò),hW 6]Ry F*@UsiO`Ѭ%3%Z)RnF%GB=ᛓwoY0N6kį?ЯP \`0 "N-/Q KE{6m߽z *-Sﵽc҃=:N"~2?-iJQIIh`ѹnKi,tֈ4#f d0 =X.QYC)N"aJv4"K!>!T `)>;|: ø"LDۋŃ+ɶ<:NH۵xhK4]`a^:n0+1^pɎu}1bjeON5}fiݹס̸P?Xoa(![m? hc/.ްOuJC˄ifkV3p+=nrҶъSAQrSUA(Yu'ˆ58x`{c t<:T蹌 ¯b5QǤ~3z" sbҌ%[޴Wimۊn6&<ٛp|A3wN8lw"R@wwaCP:0:"ވG28ӍFUh#7)}APe:UuQrԔ&n;9" C7@|(2!Jvݻn_ ´ē,|Dߩ&vQQwDCq` ZhM 5ygU>4$ntYc$."nH x Uȟ~#NxvDmKOԒH(&2If͊ ` 9*}$]؞$=[[Yk̔·e#yHĘD)fM$&# 〰_r.bl̆`p$Z 2mOʉ Sx<8tM Kب$04W$c gQN*#,Gb4!A>Lo_¶ i&'F&rc!y<+t>$M9Qi(|(DbG9ed~4}8R%'l&ELtR4y61 HLsҧ$!y |< %i|.dT{L%섎{?&ژY'8y%mG}ԧqI0FM^|Rp?Bw)f%xZ3}{-3v+PCvq M3 $~}a0ҿHRD764;^3@ ϯ>3Vеr޽"5vj ڥoJÔlGC!q I{T>iLb]O_aw.r:{#M򦃕rxҊڛ鷱Cz gS4.˗pd $ƎݩhzJ'$)Ȧb8YmEɞ|\@1^Bd Lb&<3 Qgk' v>F_9ᱰ7g" ]S _X[INͥ0NG0\.5!Q&7MD0EF/QȚRw⮤}fegAؓ# LaO^ gdg.Jb+8(wzUpÎ;wȍ!L`3YB΢٘}iáoW//OE͕G> N{J9Fpq~Cre-vۑl.Q =EVr!a0 WQ /\b8^_:9M\[{uOѓdPW {ï.l5ESdɀn7 jE}{EMMpbZmDaCQ]c3w-mrwFYQj>|J7.6'փ- 3k DVFƣi߾A;%iCuna&rP"> yIoB-r+ux,#m7\@mU]ND$S *ʹO U(]2>HJr(![J\άƏIO3t#I+F k9M;7NhVg"x,k=рGlH?_I$ <8/\#{ٰbKF(a2Y {SiHLG! 96Vq7]-$4O8LEB RgC̒-g)]z#w`$=J3Kl|TdLaFjaƕ)eX"3+<7X*b3^';aۉNt҂M{ {ŭ#~B%aWXT ӟ ؒ}ۨD)"=n/~FSB +nH1+ZF"O`h {8Ȣ ИQbQApr9S)Y+atDƄ]2He^ ʐfse G/ ^Чw&9h\x /{*}Rg'zh s]?/OO' BVW[4t@r@z rXجl]컸p}eFoNGJv7$xy 6P҉R<24%[3:5>FppS&b; {}OFQzZvDVht1@Jg]::d@n=|},DpQinM_JYOr->QygqxƎ;l1;#vI:޴ 5`%v8璋qUL*AaJxtm]i%ݢPQq97XٶE0HjaWd,Dtk\fCEՊa ",taV%Qƌgu^ ;F*sGk} hh׾@+:„ELBF ͙ 5YP1g4DIKj5ݿEjuY0yW:%lK,|:=H!LE9e!R_TipMa #,.dhU@˒ؙdЅ3g;NpwaVd?Ȇ揂}ĜUjX(|PGqkQ.~u`߆a<8(D0Fh 4qG&X-aCo4a_,*EYyhs1d?[Y_!| 0.ATj: phc _m A];!2g \DpEIc_P,zPh-Cl-IFo<%Y"~kM*DgdN$,{%pxݳad5n嚷/ʉ(N6pK(C+˔QK>>6sgkYeV)ap* a&5Y32~C "(팑%rӅ[6nKx@LeQo22Q #_rFkQ 蒇ƏE{V.>Ga^{4G.ՑE7r1\.dW#Y~EoMԀ f+ڏp -{eֲLwޜH$?L]0O9쎥Wgm(2-<`U41Yh~}oz؈[JOU>$cB#+d#in8V*eJ=J5C 2y5HCPg\ }E4PVv9\> [ U+L{klBs{~hg7kP{ )tzg㷝πEnTZeceS֢xGZU^QٮTV++T7+-^S[k졵f2O_{ZGc^s ~%)R.0n&TբT Vcm=S&3M)#ˬy} iQE 3H*ʛP O+(T^Sm([U˦{V(~ů(cy5i|&;߾"\g'xG(ɘk9aRuSJ.R3IՋy7c**dPOG3q-NPuI_"/UAȧ*W6/~I_jėM×d/⫸ 1|~ (~^P/3eFak1cë"J"$hTQN=#E_*&'xPTRQq|<)]BrBQhsz\ҩՙB6Y}=.F,b?";f0 C,zK&ná w$d)ɽPQEkkXkXRKJ^nմ m?Z u5?;S֠*h/~~zp0i}j28%I-)/NK#/4RYy3J QVZs٘oF^۹s;7C= lIv[Қ}0VXj&*['byuէ \ /nMu8͉DB$Dc^PsgáKx|s>޹h9z(IbDMU=yCS bT'}zuǵ8$ MpT ,rH66vvW0 H5GQU`Ib2v"֊~gDm/\+mTE&jC;_n6t1Z֩Ղݩ?rݥ vM:#Cd6ZqFጰY!)ȢÉHsD*F?w=ћ۵F^B 鶾HRl;)el& L-ȢaKw ~}? >ڼnF6]Q4"T#Muv%.|dYXr?)āG  w_!VEIAh3Bp|<*mQi[d*"<>y^cJ+''&ȳo|4ϒm~3FSg)c- >h,-c9%iqLrXjG ÷D{K'@1hKY~`˭(<4/hlGUQd)mWovC`AZ.)BI. tHX#_Fb,su~Q%z3GWP UAx:J@[Hsu/N$L6:.x))WrGJR1niC q'w{_ӈvx98A#ĥ;^At }*ؙ#Qg)\ޫ+-Qrg/$dpl0@CDT("Rc,)i#ڏea/؋%ؗ,0.VހoO*@Lŵ6bOѝޭtd᝸. Py SICC?̕/)S!M>dFX& M @V8 Dp/a%Ta&Wz?09A1j&O+d(G=rMv e X%6bxas0C~F_[QtZ8 6~-S@bZ#CWʤbXA_fX.teׅN,o`zM`_&k_`VYʅm0R0$sE6Fy<+V lB]GAWwpmtP$[BD*@ nK!nwi/]l2DF^{R L-\3 FcHT,2izIE-OKsTkfz4xrjp0Lpv} 9Qv&78SBʩ[&'cVX\ciGn&|eԡZqz}^A)oK*^]o#\UP'XB|kuR:vPW {~ea"Bv YT-7xaK15+bU28@W'PFp1bɖۆbss}qr&F* e9=H)  Ưhp3BUceM| Lvب0&<%i0Px㐕ie7K p#ɇ! LEO(0C5&T[v-o! m)bWn7Pv+kќ4deeNKZ}liF=@`_^Xg\J.-/VL-wu^`t| +"4T@R sN:r& &2XM*2LoX(m2tߵoXn+&Q>B,:Q*1, .ޡp=%F{0@Δmq:3JTACxwؔ+!m0coW'C3v7 t@ER-_&i|m!Mh[Jڸӆ&(B<] @ںȵjY>}ӿS 1L [P5E?>d< G7 A^S ^ !oف!(&A[1d<®R%WY 2O#5mȓy:KLjs-yL7p>ϒRY64QfDg5t Z-PxFD&w}5HRFX8dNMöR]A|IIZ S TFLƧdpeK>jp%hqD^%ܮ[&W#akZlBU7$nEs{iih~F SI bO?~ gLDMz Sxr.);e]JhOH1Β}R*)mZJ= IBݧy }Ba.:^Epv:ȿ4{5NG̠(lqt܋_ƚD~jFy0 ̄I}aZm5Gmn,AƌrOޕ0ӁӻÓq2W8NSL{CXՃ'5'F~|mf4o ƀeh]d;|"=}Lx_a&;,3l _`WF&,(0!x ZGwVuc63aۢԙoxYDp&şQ(o=5Iļ\5ss'>>qlMIKMhz454*3u8l<%$ Ccg3Hu)Ν5Ž2SxL֪p[gw1S Md̓tg8ŏDN-)33,}XL>9Sr:gSuTalAa]z|ߋxTQF1e7gO-SxŽ2q ††7"t<+pGed^Hbs9?^G0Z4ۍ^}:4p-16t0ec CyD Ev*Ř`sTZ7DäMnz=WS+6U5P0]dPԽk3OD5W*::%- s݋F}OGFB!.7lѿ* Z]_6: guTs61 `4fd0L8j.aN,n*N0Y,WԤnx*fYk7JYb _D_pĤYWT\c`X{6EQYZh Ơ'Ȟ42C(яaZ Bg`39#ͭ`Ӹp%⺚}\I {B<ѴCBecwX&kBj>efҜMQ4"eKz7ho}ݮ8(\c <h :j+jO򤯃^t/ҀzA1F/@INt .pMkJ¢{fQ龒gؓ/gR3t=pv|F4˷l,h2U1pbqdGeRʣcSLp#5٤]D3b?fuWgNIdZp5ua'S,Rp`m 8Y`~c@F5wZklԈLo(B4+UR2jU&e7BqH"4+QdGam"-uhC,#mӖ7\ts>N ;nR3|RpZDci@*PhlrV*Tbw}y~N1tjd!Rq/' Mo`,68)0VT =pȤ<Ի|ע*CK׸F0N aDAd^,!nv܁=? _I  e_ppp# 7M(9V%@&rRF3^DqI>i̳;y{狩ӴnKFH5Q 'NfX/iŌeEdJǬY Cw z¤l^0 C<aey Qu5Z( &&c'Y1tB/L؊Y|DA!I_L,//>䑙Ebtnhlo%Uߺa}F@ak9|J㋳acxu@R0-#% DyTʁ! AYU@&FfV󐔯 S!%%j*LŊ)Ňqq]ߥ+d- >5w7Pg!+L$&Qjw*}dTbש%#$U;F+'?5:뗍h %|35 'Fҷ=uLHY&dh }"wwDVWC fұL/Ƹ~ӿǓt|#[.̘rNfcwKr۱P1rԍ>A3dcJ0[a N|A#6>tG+J+J{]SLl 6ro+uV Q;B3tjyA KwO V[ Q+Q=+E@ A1~ +.ӧvp/^"tNūBi^hx 7,>ʔᶽUf KxQ${,tD$r%$*s(|"}җn-)$ܐVVoOΜzGtK]|_"\D76s8>h: JTV$,( $]OTQj~m&w[hKظeJ"eW5Su}>x6SZSOӾ&Çll=\"|:4S[t{Z+Mg+c&BU m[25G0 cؠ;jw6)ivg umGe{#*Na|C FI{hKID<29Փ//6Fg17TpxE%sQ5#[B6t{ޡ{C"d;.eYJB+o):cT]ơsʟ' _8\ )cT FƏ] 2̝5)J_[gaJ K,MDOL# #0 ܭ`xRfYuRܡ۵j2;";[!zZ@cHx h?u /l6fj@Vr]w= xأnNDAKfoo9|YЅW]6d1 $(z}Y7 k"y-s/U!Y~Qb8BYHQ8Ivx(lWŗX^meJ3l% 0ͨXabf-C̵R L-[c QװA=xŎ_/9G x}UsC @&H46!#@%lAÍ9欒ir*1Ιϣin>GIA g l>KCz6UaZm>l,V7F "M5<)l>B>:hH䰊J2|ot߫z,կc:*WB#,X>d>x[Lj*y}iڍP5 :y54(EJ::=uYG+cH1TY, ̃)Q{=1v& }:pga SOg]6a].V}fQGUjh9\XB4j>%sb՜mWcD=FIvPy̛|S8{Q<3U[DMOAuqʃ9P:] 1 ORS8fgBy-&Mc1YMa'>~]!3D4l sjuIlPWB8-_U: ie&쉥 v&" 3&a(KԄuDt GtKNv1 MXHWt#AONH HQ0/П le ;J҄MV@#S^va|T^&/:٬ێ?з8{IG*@`qn:@K0.N4HNR՜Lug'΄H=a"~R"KL$ `*-5S ɠChFJJ< ǀq:1ڙN$|,0 eQ)n؝cOUɌv=]N 3t<# KG^%pR|f" `~}+,e2aa [3@V͑(k'g5BҮg:(UkSy6]yu@9F;Ye .'0R2Bɻ}!aGp(J)ȤOmgĥ\/rr%Y%KV.fb,Y*>rZla]ˌaB}.cJ"'v鵙vwONaᓅ>jRQ)aR"uS8^ aFYR`MhEp=wT#4Y6]Ik,7hrc T"m1Tɟ@4JJD7dGD5~1<j Wˆ!B"a 8RrqpS"k-Sii!_\׈fȫ*BREVГM U`:EWٹz~aPu_kzA'!I`==<*?;m` ^i: GUĶ#?NEC=t . b|m疂cHq=_Rxű cD *MO %dp ]!5R|?]Xgszu?u!x-ƀ9;a"XO5,̘akC8!F4xuQbR  p#>7ZI^_JX! gpF7m:G - cH cJi֩q5JV]O_RƧF3:qFC:#ʕU䒈T~M:ku??UQ;Hau[wޭM<;dtF@ETrec\1-R"by*C.Ws$=^Ν۹HJ5b(!k-8\zQ8C|#QjmV>mDFWtK%2 Km耲(sgI)%T:r_#`~hZ(E/d"chhJ, `pHRRm0T']ֲ 'f)IiT=iH߆vPkvS/OHb1dxHS"*WɌ3bFF94Y7^Vc>wgD{xI+NFzMQ\sZJBߍ~8Yӄb֐eLUI_nrv1ՙJȬ-gK7WT5n*rnfjѣ*tQrLHBֲ+ /_6<.CN˳!$YgU;zm3i܉]3i 6Yݜx;W>Ǻ\4 mu&<*okem#V9bY}mivVXW": %JK e+m!%H- [ڛ'] 3bOncQZV~E*҅6C-4;ׄFWd :RgZ&qڣfMbƾfR_O=Df/ݠ1-IZ V5MTT`kFQ GBc 8jKjW d&nYVHb)/-4)*mE% (9d~X!8Gcc* 5&E~W0#Of%fKd)EÔ4~%)8 kcl#>*[ s2S@IpzAD.A(1Mܜ!ccGDa=bEPwsJ4TK5֐\Or>I[ H3-A42Ad5%cX~Nj26`4ACfPԊrZH&!0̴z{A) L*N=dS]6S* lvv◊z^{̾h*QgBuj4j4E9#d 4l $&(Ʋgq!g!QU*vߔ# ?/E$y +wXj_SSfCGv@x2sYXՀKib)=#VFUis/ް_yl$oDLw诖fx"53*j]7su<+5XxŜ4Ĥ;k(߮= $$5L,HF/s (QِD{)ѩ e=bY=Ÿ" =k.ExXƎ@>ˆRM"tFLbrr\hd }`j&HZ Fd\0Q[%fu!+8GLjTF;g:<q 01dSX}sOmvsګa a$@^]0{}2R9)װs8Xqr;qh5uFvlP,4J^[eF2Rݹ>n&xK,vcqgq̌u,L 5E+CDє4 vC7Hoc ~P;/# Q&%$#ژ)IP6S%ZT%wIB(DLefD:L?<Pn!608e'*v7P%!E}wٿ/w껔DFUBp Y}di!Mc(#Azsp؝~;};JHUU[$FBPOd*Ҧ&ֈ52  (4\3D2&r$ $ &j HQ&"A^} "N)ہ1َ`3hC"JܓsUy@Y?z밍Y*C)fEMϡJ|V+5k\U5 jnW}zը a+dX'/;`y4Ԛ#6u>6i%]@d @T"XIR>4J c Z!©lZedaG't|G>ijk%IF˻wp!`N:33xjFD5&3|7 Z ;?Kksk3(Zrsy栧'eVT$@Cc|Kay2!PifMO3ZZUdfL~`,Y]G Qj y 9র#TKO4/3[dN;Hr+:UjbChRi1MŢbSc|p.h-YϧI/z!1\"e 13ZN*0N"?Rx'.,qV|D& jZjVZj"7ZvzB.߶>= h2_gj-V5E)r5ZsSn4Y]esu඾[5H>7x:"^7KF%ykt~҄}{@O(q>^CHc ћQpHz`1ȏf S6K_&4R ]7YЎ;tcg V QgG;u4κ _y%}2U'yg#u !+aRH,O.NNk~X{v?C{ ]X8<&8irw}{FQ̊x΀% Μ;B ʻ&N{UqڈEI.>Oa80<)9I>a`O]%06Krn/bãK7{,Wxr0MU[ij vpti=I}NO,"s8Tki7Zq.t & (ygKm, 5N^+ ^VЙ g \0.BQL̯'&d ӡ$H7 MXȓ. 8fDO"%SQi ȴcdCA_3(xH4<j<V"KWDNι$,fY2 6$DW@gnHȟӲ{}",-1-=OncR1b9Q㘚XH_,fpФ|̂efC(;r`溣/d~fmōkL'{}!.-I>%;Jnf\C S PKbB1LL,t{Q }&7-٥?YoPlrnDs֏߾ R>\4~e*f2H(4 <–53Ke8֗LwAUI8lXqvβ6O+޺dG '1!Q6M8cx[Ohi=)BP- Ul=yQ6Q qЗ=9=PYj'BGY'ֽt|_:pUߦp'e@:"\|+SxuXG?H-T~<j{i[Ҷ TuHO ߤ2M=qb.B{w8]ox뵝t['v9ەGxtH,Ҕo-ay g|yb$r:{~^o\;ǚ )i > Tk;GD 9BPulۺ#Wo*z~0@?.m=@P]lɪ$@=wH9/RRI*o7rO i^֯H8'"crZV5ϲë@B3 8R(W^#BRXwBmک7kbfD=lղ-e?&ht[Sz?+_QI~继<:&dBJTA')d_3쮅S9ly#mG~P[YO;t1?N:OW+I2_)V+h^d CGu^{MݠܻAͅJ/#򶺛ޏZy ] 2~ʨҎm2NH'- M+wYϲ&^?o%<%uv3pSkeV`ZLD?1Rb"<'bB̓LOC4,4pߣnbMq#)̀I}`R &X`RGJiJX?SkgQjRkqRųJ9W o 4DZ.R@FO581<)'i`F OQ4t8T)6Kt8a'59:<~v~;D'^ 25 CZ͵@XZ " x't,I;fXo( H%AIj[h$hޤGuu?]^]xF]4ۤwLK&$ɶd;d UQKn(2fCvR#ݖu o}FOo4{O0B=ٚɞg̍f>~wT 2ň'9E[ .}Eh! {h!yE܏<Ҵ13z iZHӖ'pdz ڒqN-&#E+*;_6Lt}؂~siK{R._/>B!HNxJ4` 8xI>]]^w'8~9^Fij?>^ҹ:m\//?~aq?l@O ]J0,'N{|/q)*D`WbIhZ,iߝ7}:aN)k!41:FVF ]Fr;_r7|vesUMe @!ؑةߺz5e)^g2#=ivX?¿k[sH"x_iB)2p+ \f,~F#5^XOH7*&-"ULO|C~"2;%JomzCҿ}r@\9/nR6tEڢuEcQZ%e:R(fc= E; PP7{a%{4X1mHCMEn{7Қ^]!o=(s Tp'@(GX?!P]g!Ch -a焊BaKD$&~h,vw+l'?}|)K*2dCM!޻߃-(5?UY]mF8$sb2{.fWBE]:P`J_g!’p{./6HDnKz!w@]#F[tPI* hǬѬi&U^PatJbE"Òp;v;=51A/UJT{H8{M5jM5V5Ƿ`+QM9ҋ#7µ1:]~Oe,.V*CR:*s*5U)lv/]R]!2 |OsC.{/S3CkoT↰P7(6Jupqg]Hº"ҮbD Gfe]h]~ k J0t%͊=CA?7 Je:!'tCT u3Ԣ?%r. 﫴S-#H3s1xϰ[t}(3^YhA-vgSXY"OIG;]H0s2pxݎYv##HaY?\Brje~愜"ъ.9z웰)H(O42J~rBE۪E`|{stzY}z!Hܘq-VcfxY&a Q]XM},X,KŒ$"N\̑ E{T6ػ } ׄ H0:qp㱓6gux8~JK/,$- b=knW,R"u<kbb!sbUfPhNF_&ZB}dp !B,L:_jYdȔ@8 QిuA=1=po$ᄏœKN (plNpb=l᧥cxrVܮ߅ 5Y%,LxqRo % Xj\˦~BSy^Pthd?Zuj?r;B ؀}_Y1|8!Cn!xkwpd╄ }Z_eu<$m/w F-aw{tsܾFQMG]~{zYwǧwNf'зRa[p^F@2YU^ X(TY$(M|$5\rbdu6)e;ky,JsʃĜ 0dfw:?C!G-K -?"g'W$hma[JoLhNje/oth )1}MHn:.J(*|B+r5lӿilfaV=VB"`j7$J GL^S9~6U£ee44eRJe @:Edf nx"n?oq ztJ(CV[b:)𔚅h K@9:!YBBJW d̪ѦmMQXQ/_hfA~at>MO4XUR)cON'E$ =%⎨DEͼ1tA~dqYqEQu[9/zC˪fVP8nqgd}GL~I$Я^ =S!Kފ7[,䔂Q{w s .C9=73k)nxZNÙ)QqLl|mOecX/2q @ ԃ[eʡ}F+9G& krt2st *!ID7T]T1S7>H $/ d"|E؄ ( J3 e2L3fm2va/,b ߓ\R>I%s(bX_Цv秫w59$'(0i =zf q{oxE~o2i7rF*("{T1 l}0L9&QU~O .;.~ʳVݧDP(A.Y}#F~&UjjG)jpn.g`<j{HpacԿ`0#K8n}v~%џ}RW2w<ͼ,DvQk,K73QgTKȋ)>ܻ+s$..RڮչJp;ʼŎ",!Fŀ\^Ǫ7bX}+ެ~~}tm2y$ Ŷ93UWpi'-mIH6{bm2"̀9\),”rK]<7Pc}DUёW:>?P*(ʕHЙϼiRf9v1qi96z+rΒ;׿~;/L-[qXđSK~p{ַPs3)c:Y}H)BBKML۩¶-con`60#![+"6]f]| Uyz62}B. yC^E^!TtBT SY Sl Wח''pyWq"?tFMyt6;_J0?!€~㻡 vw=K B,^`b'ņ땟TЉgoCt Pb!^Ѝ h"L4N酢_4,K0p[y o%VG܌P9S31:n:oaypotccD۟5uGu>|WR;szF Yô<[7G+/aķ=&mGwQt00Wy,dLKa6qo;}L|WW? h*F4f`,n<0-Fca7kΈ񝐵Ftx5u¹a] Hf3AQr# rb}ދalY1/^JO͠#M(g-} z3z3zi1A:+2vuN[nnJi_Pt %{%jdtp-.y-/j*6LeL99 F^ُ F2SS9 gzW 0SLLp,HOZF i Ă43` ^w;6x m3E;*lk_^3[<ݽD^{,|^|/KUɿ-| fM1B6u:[=Һs{JRu,ZBHvtu@@([ ]qx&;Jt8..ްP,H>?L@z@0#L§^|LYmcf$[@rߌHcf%iEhބn t+R![R1L2bڈaB͚|-[,\yGO0Ѱ]h-N)^uqQWWd᫢ ?ω9u'FS=1#fZsY菽 Svإi8$P<\yC*:㊝S+ CQK^Sw$Ͼ>x: W fb[@zn}<( "wk8%L7%]2g9 E֫)KrnRY5yn+$%'C\N% ]yE]d;cu2})X}/;c)> ONJ7zC $o |4+Ou2v8v7C޳Y8!L JJZ{T@Fr&&G>H}1)B@ F`wR۱;ta[yԣ^Z5ڌ 3'r 8yo(/m >QEd挥[srvڈann.y|G6EGpqX"/]+3t({0;vGڈuG{M:2~^hcKbnh'V\ybf$6ìpC54ᒟ6\6_ Hdh{'] gܹ7c-DfVJ]S|lG>~M Z%pß ٨| 3YTX [7ʯ6qn\R;?#txIvmEF6Gv}ݴ<$ 8u oR1UYk;fw(UpRg?=Yݘ!]͝WaTw# ) ~eM<[(eL<ڱ&/W'tmJ`:|tu]/6VIDSI>V:74lv3o%Jif` Y~r}fx `WAsC-z'˖{H˼^Q T;WU"M-8ɇ -77BR.* 8(%+4q4-RnѪԲ\a!۹d0^gT2 KӾG-+>f=;<;o}B$kF@Ɣ2nݑ˷ h~Gw R.ExlHF4eA6/L5vr/y#oҡ] C~_/l]9en%26SIY(#1wa,rXO\{!P$QDvh>|:Cj{JX8flv)aܼ>=QCYb&_A+Ud+8PJ7>O%vk2\#7x|mK7,\;24nƥ1siDaz(j^ ];2l[Yս6P^T6kךfcq%2N'CC'#0if+eOg.fze]IL đ?6NQFm*)Ҵbv$A;fGg.#HDJ:S9#2,9įxԢSpGs1Ts}uѲUWn=#kW(w^\h6+ΡOoCjYRTw//ruҊ݋C2=x%#2E鋿Z-7&AF ܬR ad H`¬"K-{J+Ag4=ήo47{)@t.%Umt!A͌.QLvpZUHH|Ú=0IZNUl¢;qJk5!![ sZ0^_נr(V@`xK}>FkQZ:AոˀŗokҕZw.'#D{,Blf4ʼAIY_gIxnT``BYۉWqZ>RJ؀K h\aۈ2j뮭RۦUq Bc]SM,YJv;F7y?-b3ypZoڏvvF?/Lo{z-:Υ<n^Vhjގ&ا`Γ:s|!ŀud,B (#@?>'߅يT+n ! D&)Ƚ&+"i0lChƓQ@]Ie9f~XvPfNA_smrM -4%yWU{bX*rZdTlmd\:@AnwKc%/uι i;,<&0;C:WfPdnx;[)@kCV[-|[>հ|kr3 OO"J@<=zp\M .'VqB'Da?CGp7,by"29UI26Ԫ *[4nFI_jK(N/@MJi)ADej(4%HhVta'n URnJލ;D#>!FK6e_ʗDF]oޔo\',*S`wfG8H7'' G{j-Ct p{W|wRr4I ÃЉx~%;0Nz_$֓Q|"n]m$;<9M|PbAmџ5M xMF([Q8[]VA/r![@Z8o(YZ/wnۿWCy O/}C'h+d פ>6 Fk[¾C:S飙lGtb)>fYib 7PE(E<]'DB?$ a+6R.;^ m[ Տe hJ[g5dWzN0W鋒-67pG!$ݫ] Ytt}OqxwW.i@ 8lDzT7jH 7_w4VDj/¼)t!ƪS6VXmƶ49ec?ilkv4㔍=Oc"H-Ok?Mڦښ/z+Vp2YGP@鴖h70$![?__tڞ%Gbml]:4 S#bƿ/]4X=ZP^z$EGj 3w_=%Ny;ʧ aR|`73ԭ8FV:Z,I?N벩cwF`+368|5VCjKlD`EzPbS泞b ވ|~`XZu%~dUOS gCW21YTqe* j 3ZjCytAyT?0;1m),8Di(pŞoҸsq+ĀV8 x ^T&L:a T/vYP3Y2T1 1*Si yO5VKHa>늾}E353= hH1ƙNm ơVHY Cfc/4'7{h>v͐d !ei*P96O4+a 'M/ݬrU-$}WfG`ׅ[3Zw2E0?7{d0b !1{I,a@#Р?QҖ;8r.StG,NBenV/o"JVx27F}²QHYJ4٤ KEp>MrY;[Fay5bzMeL9|r"bٴbX) wb03U G7k%;4&VR-3qB*Wd 4EDURE?nR,r˿U?W4B䗜"Reduǘ>N7yS[HNES:)RiM;lY•Ud0U ;(ESaТJwq,)OO@@t~^Sa^h0E"Sښ(VTȍKko>&\|W 2:ϬDŀrRiKz"7:@8{/+ iTۄ"yp{&I=^<zz Jg|eg~{CvVJ>&G~{Ю.c?W3[@Qa[oϓf-p>A]TŒ8YC|Af2-;Hb7S%Tx\u2}.}9k )z9~B?b;tN ^@bLJ)C/2k_kc<3̀3E)+ܼ"EH <{'XɖnUÂaehx=;.=.`ڣ:٦Ёvt@fyg. gvЋSMorbBӘ \z:td&@7M)j,ii$VS ajS^[ i ?$>ܴkoj#t9؍t^<Z LA?. :~)TO8ƄN6d^0;J3#F(/l [ilg=]y K̗S,힧zbaXX)VbJ1HqFFqnDž+mLiۼiX%u2zL5N6nºedԅunedl[%׳kBI PςzEi/^TOgZ/E=}=6oO"^>`{mbQWRWSh–6c"ԋOά%ϲ4xk7|xU6^ӊV(LUg-ӢgxO&^doPċ\VL6O/R} )+0SB9[b E; G ¾;M\B;(P54N6.OEW>ЕE Y4~P<)T.C"L哰-T.xVwmſlcť)S~')uF{)"꥚MbGmȇaPI7a_FP 3ļML2,̑dnOOx_EžxZblIfJ& 4qhHHY<.c<5cUs.;Ď.^L9[E>g=&9v^tVnY@뽖vMǽќJZ J.\:G?t5C_FK39ymb4M7r(OǷcwxiT]ՅqX{%rzu_wmǵIIyfr4k-*^x$.S,=5ԕ T84bPQx'anOBT&0//\^aWWBϥ:?Sb6~jJT}O 5ѥ !4pAK 'ugʵD-hZ)D(_+ =$SjLkFFt&.z~=lHVGXD\Q8es9ZXaT%=ﺀv!iV";k [v;Lۂs=']h""ȡsz~ιx~>^ӄNELhJ1A&f+NuOr NM,3^B~o"R{8<>&_aډT?:Q h2aĠ?iQhtϩ+mKYi؆*yȪJ25zGv )afy*,AM C7As;ZZ͆|JpZVQdDnjØ" h ?ܑ-yr XI[)Vd̝RԳnAh#< 2i gh1!MY\,l3ɟ;ƻ q'ssOf ugO)}) {:jOaH֊&?l lp(z!q|1vw/?DEPk)ëk%v$uv_lM[g$ {J[Zv=+];;XX  EdիP8r-FV^+;+Y=ճxflf.5f3̞9[f2gnb +f?ڡՔfqK5s + U&H` gyt&əɢl[j#ٌ$g{|7qVpc&m@#"851crvc7a_z)Qs*e,|[yOy?O!>30) n'/RMjv ky6夆 ӇJP)|/*)@0aB>Rp[lg$'M/X? ʋ=EWPwK.p#\@4NXjz ;EwͮY >MK-QDȈ}RץD.k?M1F(t yRH[]/;KzN[p7KC&/'{ |3Q[-ŔR=u9|הޅM|Sb)XDEcgGgJ@y s1gdQG`6z}q}xxWfV={=9-O {q F 兽n7^ "Hmsã IR-~bPO\e:~I1n~D Tf*0zI14gK&DR w.E n RCĨ8YԱŰ#vno0 en$ Ao#UVT |_yn/ww}ڟ '?pob|0'@1@o+cilY_6mpMd`VV|;\-%i%dj` $ЄܦDgu` QFR>e_ QXnpBaeb%.(b_ӲXs Ng ? jnZHY,).I,$99Rep=}g!0;ޛC@:mz Ζ3R4+u|y|]K랦 w0ZY…ճB-L2+ \`QMy?6oF*F{4qzrzH/.?\\^^4`1BK4D]zm 8b(܄`\0 0ݠ+o?c`b@NPHղ^c_NOu5WX/䗋9ll#&%/K+e\\l).ק 9m}<Bi\\k(v}Q '~y yxtzvz+my{z6BdzK#LUNNO'khQo\_4+E-Yw<5" zuV!WǧKu #99<,%a" dcOa>]]^w't8=ÅǫzZ> mGNt6뗗?h˰Ÿ`BP-LWAB>R8q*+k( r-%gTǯU +uzNYӟݏt362VZӷ}^Vc _=0gŢs}$BVwߒk@+B\`ؿ]RsG㡇"1 †ctSX |cR{2r(pqv:XWۣ#(|:>P'vm~#Cvoz+|J$[G̚pJ:4AK ՚eEM}DӸ]ıb.IDžkJU:<|4qiaEPla:.vNX*8 (x,<|`@uTF|n0ª } Lpluhw[8p–%?Z?>zv<+ s fGJk83)'GMgZ ѽ؍;mHq:;{\\->c͒,:| RqG㏛18i*PrW/@X" !9 7<{ ._?rNסx=R9"dx$Aj2=SM^rFd%;MwHD~6B)h,RNC-O UFpW?5"r6ˋ` &8X !)I3ӕ r~ՍRD3Q8zARJC+jҿa5;ڨZbuhp"(XDi//R^] PF$NuEzYчBG"RiaW> ]5Bԛf~ǻ4EМ2eeY;q]_?`ⅢS^s=mưaU:2ߋmˋOt{94x4s&5sc@) p~&`W M`wj?C̶?y=vԻ<j A4EqiWf(,pF6IW?Dpք r0Ɠ`Z,2)t@c7tNd5YTsD hJg6XČɐы؍_+k:EC=NB #਒s99ixxE-v40q畉~?S(ۣiy7ܻܻhD<ڠ;wĎ_}tvy;(HH9і3[M3PR; `S4j-x_CGo|D0B~H›D+`Bq\0-%'8@ F}vOWWk[tx&hYI:XݖyNh3%H#2.0*D'{0=g,E_%#G}(xx&_kװ^{Է]vG.n'KNOSxWAL5yIAVdk/LnZsrymڔ94"Mv+]' 5r4xxF;QXb;͸6c`3o{1P36K) /ԯ<0p;'cdz_! !qMℬY96fva%K8DH1=NDK`L~{/.L4܆wNhRv&`-]JD-  !(=,['=߬4<+FK4+vEhh,,HX#7J#EMgvoCj8TPs(І:4Fv#?I64P_8*KT6GVQs}=uu>\?+BXJ@Ѽ7 p> #x#4S[*B)7oN7dHIN#ahXwXBѳGd0[qF}Jel30U@,K%md[I=e&g=p_bzB6E0K2TbJy/a70jJ5FnNtSr<1Sy^MUʆ6R=:`J~*dFVm*&,l5\AsДԡ Ҷ gDEH__>ŤuCM 01җfMT>JxB =-'ȱhXF„r|Vm4S.VP,~QC,SL驀^0 C,qE>p Q{wF`wQZ`s$OƸv'ф0#au]kiUWlY5Όde&er=YT_jec }CDF-- VO5{nS?2>ԃHkmXZLMzjΧ_'Ը_gXnV0y8nb"m^H9k[]Mq˙f++v*x vrP `Ny ¢#mR` 8̢0!ꆖGXji7e-Ի G. , ת.F=MK`G%B\ߘQTFѠg7B3mԅJ*{9'v F|7 D~׆zoT"mj.f,uוu)4~8%W?c?mo#+9O{$[Lv_$z%ewf&ON]elW[ۭbg/֢K:s:r  `3x<,릻МEHnE _ "H֖zKڪgu51TtW%h1E(AҮF]\p4W# ӿxVOqix3v`3.hThhPfPl=\F{%-\/NM s"@4t!U㓳SW ž؊a``< ȳ99; ɆAs eR 27.":-TtG]Fruj_+6X2p!=2>`E5sSb%ISgqxr[v3[[l%q[: 8ԡ!6&$愤zU >ux̔c'^ Th.&st˲(-Ʊ$AQuHLmT>x%CsOC҃ qQR0=ګf_":_( Ҕ`ޤt;uC;$rpg1B4 OR*G~tY*Tˣhk~} 2)ate2s0-5ǥVԪx=/ʙ{b\vxbZxlFS|g(qxȾ=?<<P*$֫M*yqwY!vSW/w + Y^۞ۙ\1b xۣo]̭S};c|>4 A#A Dr R]>Q%O~yc=+r=s/g9ˮheLp= \B/|/&Z3vHj6.qK,5D,m\, U5 5<WBȪ!!i۾eA3<{x ޠ8<y/tRULW25z?ԛpT;m ju:w,C|;NE*f/N0n#3t $_k^7Xy O5w}@]D223iH^. S=_+9=ӚpNri9ͅ^vuBF*k L{]G\U +jK;{6JN_3kfޅh)w%KlJEOV꩗g ;l(u`JGizyDS egʇLc7M]- 6G7/}}#bDloCX-1"2D۫r8aN-tDz8R`d.uq2wia;ӍDtw z5dո}`f'Ef_VlRmmI;tղ|[?bEj5kCZL)bJ7ѶRd;Wc>˭v#bNpU>=|3úTVqxXTǟH17tzU $^bow? &(H+enPp6*Z 2N ޜymNרvkKW5*9.m{`S59{ҼWc$ m,AkjC-U5;۰ӹ]ъ-DHCc*XM9lm-`~NS-Y`ƽv G7.}|6RU=7^-`f`7JN#w^A;v6Q bmF?i=Š,G<|'w/_@ 0 `F>Y :d! Wyv&S{zS2= ?DdSDm-&\HdD[o^{3մsš!pk8C Qmg`TD K |PM‚POIYsUn=enal-f7ޟ4ςzjx܆@*{,l3dڜ͵,Xq{Zj g}ǣ9:8i[$ 2<0.0s-e cݬ2B/3As',T/aB>ktIAOK^>3p"С_Uȡk/<MINH z8*B1JrC˞>;؅MT/:L` TWns}IBCmx&0Q^U]{ю_\-3FQ(4 |dWW}A4eqM=6"؟djY!4+} "sN6G:@,-Yep0| ^4/C2TLǼs9sKz' R m򭢬By}',/P6ISFeAf8FSzOG˰C==ؾ/q ?q;"d4fPꟴULc`%"nnO0\WaKV쌚sF}Q{m4S}``A#[ ˝mȰbvԖV&˾_Sb"Y(1 =BlKbi˻e+QfE 0ՌCvŀU"g"rF:2B@0"XY6vmX&e.^qq^b:Dtpnrl71x[d^G DsY֞~*9%}JLfR>C2Ǖ:nǫvիfla/F͌Lc`\bBګSc2G$ _S">]T=_3VgXQf ;$TSsR&LĨ,]Dtq St bM;<"5l9ߖ#pm/쬝a/;Oy?~ +z!Fa#•D!v'rHm{U&E꒠)lۂ3zjg\1*@gP:8\7qgn .h?@*O|K"o-*X3xѬ 'SQӿޞr!'w1vK?K2_(TOAV&W@ pٕYqزqJ*l.M%Sk%f Ez>XJvlWƝ1fd(I૘nÛeF,&z(7|O@WCY*@`v3XAT߶IME&mɎF-i]lVfZVyn&>ݶ)zaL|za[r&-C/lڈݷdoxT8(V5٬e(gnԄPK-%S&iP-JfYV,tM@+gV` e5- _xN.ox'+GTCuR#99nSS {eRk{~WvOM5ML;q¯Nbs,:ˮt]S%-gfod{OUDl^۔4*KIy`2w?vح;A+O!(cWds 3hA5&1B-k(K*bX5}{ aնT՝0i<^GIm 7BprLU穔N;p *\ؠxQnp锳5kω3=- Kl]2K,\2k+O?Id)ߋ|*嗯?<í ?ێlW0ehq‘̹5oMľA:J/Ug]ZxvsFNz^yy0@>Sn $k8eXw ]:qksW=kN\֙UsV}&KNUVէݏ/UQU{tT]qRp3wT=jw]qWhjzTڝjOqTVI2zpT};zLQժv9鬞z4'V*w/rգW/E{{sD&SX&G]Tѿh.Z}f.=j&>23ު<[=sVM5BުYh o ׅrު]sZ[;,]0tgڤe31[|T[8tnt6,1+E@j٤7m+@ƿK͟__yNqaN_xg*6R~~"\<%zsb3jG|2 'G b,٩\Of k]d^xVS,iAJiRLRv)dӼoshV|Wʬ 0Rb֌**Hm`Wh;^Wg>DVun^^fLvw X"w&9'Q 1$IKMu[WڐWRD(#ZhRwQOf'[&"}b/tTДԸۛK̡\۾CG LKIh&]eۜX.UR4>Zq;z ?b L.2o1ǽ(ZtOʌnO7qP B2Z獣6onQe^|5/ԚY!Ēwb'Po=u*K4^Mu'hZ)H٬3`]Ľ3ڷcIQ1 cu2(eEjNV[T lAߙ 0%MU[x5;O!AV,QL2?FQ~?aY{.#~@"qfm]ӊNF櫊O4^+OhGo)Sţ.4Ӻ+>ME掠bgFnSRӄGrP k=saRPVc/nΔ9D5{Y=pvs @#;'L o|Ly/+JٚOfWg5Y/5clg.x{ƏpR$4.+i5#3SD6S8VZ&t-FH{}0a|<! <,9*ZUSed^L+yR?omN( KW5*XNt{K6zCnS{)C'Urk>N$ m姰-#,K3 BfcVM26t. yДٗN`܃$ -u'hI(om:LJLYQrwhtZ"HyEs.Dhi.8Y JZh|Q5DZee"2f^t){yNSe@#Zn]6uk&iCkW:oBѰ>#7ѰcjyaD#:gnx! 6eM*'@ٽqpϏv(SKC~z8k[SR6`;;w0Zfjɠ |!5fb/ƥ)D]m/v5W5i3]ݟ;y~|piXfs|Q@ 7AT}gS:':zJ yA4ڄԶhv6{09P Oc(BҼ- DJl3TpO5"Zs^t5]i͑BYuzMRML;lu05,E;Ʃ-xk (jj܌zjg[KFሠ }KF;#4? ְ֯$BT51Ȱ!:웠$$lCJFjPkX3XgKwl74xP^#7G]E٨ҋE6|"6*6o~fWJ/d;ckt78f-@9kQ)cU鞸(v pwbUn K{۽S@]o%=G2o"]a^ힶt[p3Wio,钰<ͮ;cJULU4}T(Ի_=kM魨9 5|jЫj3R1tU:ZzMk%!*돂 Fehp8PΣmɧӏ@߹<اcGckfb4,-vHwp@qg1mޅ@XR1,c+k @7^g]s/ ռ@p 1EvZnNBIfx[f$ 37@  ȬxIyNΣ,,wSV}1޵u~Vnrp7v5vl4v*;2K> l#O ȁֵ‡LxK= i{NJ~m:8Zdދu9J_Y.;d6ܺw, 9ͦ6'B󕶌s*Hlrt~kE{## _?ΦRTTCj$OhzXq;<]x )U>f9;wǝ/_r.Sۏ$XoUs|v#/*?78G(Z~/&(1 1;8k![]6$ZV.`77MX>ŀ^KߢYȨp BjeM=Vt@L=psZmbGn)a##%szǻ:DEZ3G#SɜJh)L4,n3*L7sHYBՙg^}|>MD/Jz zOR&"4WrC3z!{Q$D6~΍.H/#0l H%P]zAP& gpVZK݃ތ/x;L{u)d _qj 90nS*v9 V9S9_+?uGNrW~m*zͭ3ӆJ#v$O)\aŎ"9^5]4:\ ^2u6ٹ󌜜98qn.\ΩCx ˑ٦/A|Jh( "/+Ҽ73.Y;/r '~ZzrJ2azM(u {׼sVw< tSOHF͒I60_W+~]ArD+aY:$x4 y EMCHD`BأT8BϞɯfP=4M .ۖ7=-H=g,yZ~\\p E&&_V>D@R:T`Yq9`3TTbz`ӦP\4zeͩ.NN:X4Yӏ}49s 3e#'7=9UEXl|T\/Ov6r<Ѓ.h* FeӦ,sOG챧J)0#hIr;';#2D"Ifs EIL^>JM, M q]l ӫ;ZȂYlC@=)EYx0=j\EUaX%ni%͑{#>bu/V&Y)D{u ft7 U*GtN$ ChLN!0jBEg}ZIqB ɱPGZ^:@w.&倫ۡ1ȠcWx`)Xd;vn8wd5fw%MS"BOqzw .:+.z+Ȼ #d$ug5# H(&~+5~+'P~*+'Snʚ*0Y)|S"KDL*y7NÓtփ4ЃCtR>C%QK;o;_܎.vjo,h6>B/N3/A0I:ɜf^ju6k"P#J_0A)|:NL}@$zvECT9f/\{hj R2_wmY+ޒ;ť˒\uRvwqjY窙L3eDN_uQft0@D&pgr$+l"b |UQ`.va[DdɛcYlԴ;1C~WO)q\0-bL$W<7dʤpAThF 6Օb3;5UH_ɷ^ va q hq ]ʼn<Њ:"y֭<]C[2iJdg撇K\=yǘ"=gC:=="\\ߟ yts`ĸ]Ž9 w?> ;,\_/߽:mIx>lt'sQ. CP+~1#]<(~'q";k>Pq96<:R*=>ҀGH #i(ɏIgzTƳR=޺{tn쀓?O8X~ճr̡].N ADգ7v;C4,B ? BsDg?:>#I)SJz8)8"BF;#ҨV 35X}3+MעߜLșD!w &QmO-5Rʷ[xar)32siZs%".?Ԕ^(lv/WΨYiLYQŒ kS9EfǛ\hq8>(Qü{dVISY2zzfJ4Xr@2%s]_x(MiS9MOohi\ċj 4".rRYB܊RGa]NJi ~4kAMZv-W. U`fX,ǚZ"LHܽ s+}צG*gzqpwkŽ?{.jT\pHe ~>K-}o黸?{޼-{2ZXhs7b.zSԑDg ]$[ KK*`7 4WcGvɬ z3~)z$F뜮#FިaFS}p7P<͏ÝY{J'}A'Q_7kv GR)bڜ琳- 6qMeY<"JS S+2JT$Юt10k1^,aa[f6//Ie@M7H~>:"jہ)mKLUS U(kNatk |EԮy>̀& BA=9xHe 0 l9͛gM$23f\#%c/өY3G!x=,<=bS^Oe>{^o#-#-1v J+U/0^Ҋq۴6mM[l۴6mM{mz"YJaj*P+7}gImS^E]D ,~9F!5ta7Y/~Z8ifC7̅l>rk$nk!>qOs_8=cMTt2 &F%+{݋&me۽,Vpgd,*K)pwr*bip%a5طL:4-CqƲ=aΞȽ<6cTg9G tf}!Z%'=f#bJol*>oΈRciزT]?51 "K(E yQєÙڄXS J*ᆱa|gVu{E󋷥j8WО92rw}.-:+GQO|.iOm2:|{ yOγoRX_[["!7N*Hw(o%Χ>Se\< wW}pXltꕳ{̤ðQ+y]-V$S ?;4eߩ@j4OM*G.35LxFC6J [ Qk!Xz yfaɭr\YgO-d"G@' O.}J}*s9ȫ,8q(Yw938͛Nu@=ɛA  :ֺq#?䝣Rt'2"%,٠ݏ}GcT!Le,ƏTJy>͓Gd3c?LeI}j8Y{NɮٸNfeV¾6uKZ.V mj)ij @lLExVRfF&%˼23M=֥cƾ!6%l riƺYɭ_YfLYڼ+R!{׌4˻Tropfa߲4R]w<yKTӖ@ކ"֫lWe,Wsجf`gfTE̴Ow[TV(DGہN\dBz{Q(T.z%*ڥbyּ(MXf5X0}#L7 q_Kx8 Ы U GZ' HP9ⶶ^~?#˹NK-`*`Mx'W% DTIH3^~azV[hU3oA W6M:K݊+_%A cFjuGu(A)O T(4.t];S*V#j<=tQw fmk i2(sZSdhR Z:b[[ @do $3pכp6dw(xTZT,WԺ5MG=xX/"A d^;Hhz ԓ8Y>aKS۔B6FɲdEeD@\&rd,n!h. mIa{fJ;bɊ2Z:MQM$w%h`s{D0?@l!q_v2r%ݵ5yגVVؕZ@CֺG5 8ʅ-%.k$pW +0p%O/cjFT)`Ҏ"5QO$0tLhuns5R;5aK=P2Зx*( 8WaLK Z\d/"20u=CӵP/uOAʴζ fJ]b?DFk|a[+^dTdT`(:6\Rw#Z+O?F|>3\|dQبBk|x_O3+H1\뛝:)̙sKK_# XhvTyYe^4x= gr2j(BP ]l9m$U'l5i9cUpĆQ2:`𣓺zRNxzVeN^6:aBUQgay; m*fo,j|t2f<6m^PȜ7U˂m ʲ=њSz5'qgIM()atNPd`SE|SIIe]nu; ](f>%h*:*Oڔp^&#OO̟s$qHx IVOٳ~!C{*p=Vx.D*dF'fS!Y~3áe~Δs$+‚ڋy!gٸ0$g1,v l/ɔfd@sXPTdHoNODAP D4|`6Lj}=?pXks } NWֳly,ks8웖6Nn3*̃0z>,@f=#5]khFBzRup2*x| u%XP2~IZWYDB&u*tx9@*<ƃ*:N`Ӣ(`\昕 q7{9m릩 _Adf 3 ԵwO,O2 nt/SeoL]t XNT8T↢KT?А;%'qçxv$~p>Fl'TD7VQu5M&nC*H'(FSF<3UԺ-ڃ_A/Jl&cX^+ܘJ \+d: ( =!Lp,'JACEͳ=V&DE Ӌ*΅dܺ滛F n %u_ے>7FK&VWp#m߮Aj-I: ˸5EX&b, ?17౤YA0xZN3J9u dKr>p7I 3ђ0%5/u[&fRqpFkhrܣ.4sQH"yC'wby^)zrk!9I!̈́g^ xop7Ń15A$[rkE.c/iF[6վ%1-c ̈́uX = EnbFߎ?~"d?6aZU?5r{㠱GON?5NW qr&+U(Ө18p"㞨?ͺEh>H#t@ܸ2wh"uslc6w$͓gN~<=?cƻgAIi xׄ臽?>$'kA{gzFw509l5ΠIkW#'oQt=q8'6mmcoONwz??;%ρ:4{* 3|wx'X9&4tqZ?.`a4?:t`5 Y?P>wПJJlE  oi54맿7 $OHz 9ۣm O569o6(h* '`P0'DH JO@bL- M)%ww:~=A@zF =hv9}x3m#i%{7y^|Bi3ܟE.`H_A'nţ*]{ʎrg[PsFS,w.wO$ހe70;E 6?򏧮Mi~4Pb&rFm .Y@O&J~#~ō&L4*vt`;:4Z0g"44PQbt??Ϫ+. ; X&QRl?Jp֖ V:퍜1Ctf4!t"$9I&&BRp"<`13X\H$J.f-0FaY~8rQfˢLVLЫeyt1{ZkdPl9!hvW "~noK#2b04ܗv+T 4?ᅢ ӇT4F~ x:0L;0 YKndtB׽]2vm܌J}BIyp%_zFɜNhMнfa͎NB?\4䫬'SK)7[#vO9 sjͱ5_ͱȖSsl[cؒ­5'gEIQ%mĕl@j㖯nҵPD%G`(t:jZKmhu٨(2nf0Q5-6jK5-&Le/Ļӕ\YPiM!4U{*A*SZ!VժzC33W.u7Q=*fT#UVZ d`j1OF+$>Y&ΜTG:\?Wo_j'wR%zj/ n蜥`rn->uAΘEOmU˨Ϲ,/%|9a#=:4F$(%}voeج{J*x--a/`ݨ>Db3 W9tKEZx&jXk97sY8 %&O}bR3Y VDW4[Pi98#]~Xٟ ND~Ev+ UN`tdvmDX{sftO's\?m~J(ƒM"rxfyX!gG{ͳwU<:hRLZT(]mOe1ڲ"{c`V&W)v}A`V=,*&5F가mr{{OleF(waF[TxT*B;!yo9287D€(9*O!n7b,򤸃 *OBjכM[nͻҗ~5wJ4hw8t﨩ܖWUH&KRQ b#%A5O% KI[!'P& 'g@Zw׷[C J+?Iϒ9{Fx⪴fx3fڭ“$dJ)l==NdD2+hjF{ -MV^l^߾heR^zYzM㦂:="z$6-i[i[i[i[i{0mof!h!~P-$B-$B=[X3(@l6`upCvh?&աW];__77_kBv9-ٻKJpD%w>P3j@C 5(\^\Z"wwvq@3Y|4]Of^W 61zqV Ư5uxI?3񐶗B ˒[[0?6xU8qZP.d=ƻӓMw~ !3 ($Rꊤ*QefӍh ~m ^Fwb6`t>l4/ŞWlr$T6&5T zZ){ ^@HQ?Nǰ=b8=貐˾$1Ѥ.^lW̽dڊ nB{ׅi$_ #Is j`,Hm~w`޻i e3tЬ~\+%FNtv slM: p$G __ʂ&\=:Md&>nXf7D\J_Y P[#~u&mWsua*R+B+X1nvƗ WѪj6ڂ2,kf럞|bshb kU?`ȃ!Z[[[Ge0Bu?ŭY.,A}Lg,=n)b:+E}DC&w){&jyJZ.$.9ޕrlؿM( ˒/;ZXGHa:7>U4i}xhc0܏.&:9l#DUKF`nt 2t6=fm]5R)sT$u`s|5RdYò<)@8q fbT݀j-/kK}-e4\IĤQ^"X9?:vݔb6J卷% 8IC\>:%>;~ XmܹcmZ~ nфh$F ; %(?N8 bP(FL qe' njC`<ꆝyƻcY.Fvߣó>O?;*"dg͉vmF*Z8J˩mthQPAyT#ImȖzTn5Z6TtaPɾV7a*SPXuͅ 4dؙŠ|)`޸AJA"P@Zv of'AkSYS# (Czr dvԠ3=vrz#$8Nw*7h$Bݚ^'@K!ha-PmO+#% gô%_>7ZMt/q㳪df9n `}0$ 1Pzg=ҠTǘŅez)zrn;|dq''a?cdhNآ /wH6hMaWkǪczڦŦ=ЖAinY;=tSCf6ٲo؏=Zam쭊i-wdoo)̢  ::A|(P{ fj8h18an0^[ ʟ?zK4ch&dt'p~S!M: 2 ^#X_mޤl1lݘ<"=AXu}25X,9^|JԧPw_̕,Ybٲ|܇݃T'eIiBO?>TpV`7[Z=Y5<ėܪYu#kµ(Tf>#LfLZa>pF?`ۭUFă tG -QL\贛 Κٍ"agS Q{aI5^phVdЉG4nr[ȴA v, ?痡iJH>u.5hem&)IWp^$/@ջy3|VZH6 L[6.:$, ro@d ?wĜSooߞ ).*Y*@" E6|v=s*yd0'VN%k4FދPL{ojJԋl?LĤ{sךQwY.Jkƶ,:[p6TڋXP0쵮ir=zGvc3FmK#Up=ߕ.ՎZjVB]M*Wl{}/0FѩhxWx[yćrK(a*Pv<gá}4PlP_sP* uqwIP0j{oڔP'=l1v-}Jcl &puY+MԿb4~| 5;|f\󤎭 TM(S'Wg: ~K=ԉ4eq0L{ys$$cz=:H|'MFNQ\7'.AZ啛a .Q]̴A-W1-^sʦqk7({D~; #0gӦgsZ7Q"-\ܦ~&*y]#n#|pQ,=HK7.4a)%T\TzW NKл[It-ǥ+_xçuxL яP7YN#H-ᄪzskIδ z0I8Mς~xpVcuz$rtv`e%,Y|W񃜋ż%x}p;\3=$Ǚ+/|h*= ݟE*Sn*͋P~Ü}#xoUP? 2AEC=Myjdɍ5 Ϡ wGa'\d;cUJQpW8qKĽwmP)|k}@TQح0Cc2+q@ 2 '/Qv;CXJ7vgn'}5BY77XFыjN= N'9BE]ohBkg[H^G /&x #t^nn>CڥGwvSSUm}*AWrc\'^w,wWq][E-gMx~vB_0tBЉ,a K-V4f3  ki ekk.aP"hz>fEU1"XdFé  Nz {Q(q=!,4R1A5*l?7gRoPovιUth~j_`cm --oB~}"7`%b$kg mnׇ0 GO≖vLi;di _0pnWpϒASd.iYfz-`Y#; NϏGu\\W+15AI02njn+gxk"~N0 GT>;n%I4UzX#`f(.ҲIݭ-g`,TǨ f+a2+*ߚP*Z5Zh0__.V*>U|m R$ܜ.{ w;U#onޭH N?CMUXba/e/6]حb ,L/wXb?TC.iBx # 5%5Ak'&De*8LmgSce0n!*{R=`~&,SцnZ̦=7/4k6*y9)&6~]hvOZzDR߳b(-avwR w&>G1'&*)*%[WUn~W5aB.^QmAOJ[$ d]'yHuDڸy|WUPh* !J4y/Jɨ;zb0K+"{gȓDPsi"[׍|N}"K}D, L#l Wq`9lg!SZ\_E3lX!v]1nk>%哻B,υP>V>[rFA?/sSS?WwRꟀ03yX9 Vx]9tng7-o[895WVdNrJ1~Psqakh'FV pH,C[0lǬ&4܊ E -j h^Wk"r!'}&Sgi%}1j3 5U2IV$.a fm #1ߔ& k^6}R ]@R=/`*fԗ G0qR_^Fqrl CO/,h (g pld?̱S"[;2kwoy6Fuˎ@&2$@A1$ rP2)''+ERaSl(2&WU/cަw+#o>*\8T-2eS&jH)fr'7mVP4?O[(cu9=x/Ma0WDzOE kb5I|s@Gab|If; ;}lWHM? a[PV {$ {wk}*ڒH6 x2Ba8&Fےwad*o"o:O>L4D_%7"URhoNN~qj.+R)a˺!&d_6=ݱ̼7\a,$`sR1Ht`ۈߍ0(=y dóq2m-a98%GO#%ofP[@%Y|!I,?ӧyF!5vߔ0L<|2q,m4i N.Îa\&fHr̬ #-iO]O3A;N Åjt)сAH.tb{wǰ8yY? *bdZaXQy:+0mA?1l(I{ݘxZeia=N𸬇2ĝIPsh7c ~)< xapr&^llMjXH}"rEgX^Սuv^Yo }qNB5Pay*p'=FЉ,*,|KzMk98Vp :TӰc*.Sϛg0Cу?Z-EixSe5Ck: nO7ʶ ؄Գ=*}`4,i6% 4DxM#D~o 9"az~AL]4O *6T=$_aFf3:L\4=0OUbP0enx2hZY9:~͏Ftn_zJ!ZHɞQҠGair0Ew0:,Y+^]z-xR/G+WӔ쬲n[~T4[#Q:.srӿ@%G<:d-`ngZ99trO:cD%}/i1rԥyc __(nP?V,uΖe\"';Y*@oY&jSajT?r@LWpqWIgcE̱/Vf;joᦕڧ)Kﳱ%_$T\cTO# +fg!_N!sM]>9y9R}|kyF2ÜH{\R=av/h ;!QHоȆftkYw/m S"v+u6cſ&b+R @0 9焬ޥ]c.6ǩJor<L̤99sҎ][cFMԟٝAC2&X+@(JarCvuByQ~GdR \evN)rb ;qG\Bޠ(V)F=LCp| :&,|U _N83GQ6O/- OFHR'#2ԭbs&?F-vM[ ɗt&د E\<.LՆZ6a0Z'J:$Z39/ޑixr%=䭝$.f 닝b'A; NbX$;d'Q빷 4>CFP o֪$ |&1MXixF5}b_'ž>o3ط-6mMYl|Ŧmi[lھMۏyXv,ҟfg>zp0c]l$wO-_k%~˸<˰"JĠ6~@.I An8rY knFVWW5rUo*3v:a&=WfXp0|*F%_c&j%~_8 \/9ǝl~o#r 0(1zưX7v?+h7&pPɄL&xʤU zs vW\(i4e^MZ 8"MzG;$3 `~90;rD9M0uxp؈kvLAՏzhߎJF)Dw v'c$"Tה ۤdM\sco{ӰuǑ_s4A x:/]ڬbD0y"gGF](^ "բ,hdRѐN?&{-C;H-Y=ڽҷc^!ZU{X[a-QKY߃T.m-;(WR#f~** yaAvU( ȶ #<y'0Zsż%m?AFGhqJny^r=QEi/Eg/=!{bH ƣG wf00+`F!(z23`l0֐Xxa06_\< oI߽\ _`|NJʲ;5x·Qw )uu/ŤF]4uu}>z5 u/^?QvoF݋'oԝ0>@Ǒ2a0'-\9ñP,l f\l ''e3=e,b3vѿoSTG,L&c$Xᒬ6@ U|G>z!0yoΔ:]ZgũŃZ,\ѿSIoʳ8Hyc?y\`< '6ۺ6K[o]:4Ioqxԃ燇>QE>$7 :ƨFS>rf{f0] ҦVD 82EdZc"?%xO*\'K+ڇ."F 39%ٓ5yԞf,<ټ*k2Mk?-pB+g&U J0B- |^xI~Y_~wt~3|VUF]E/" 泭to1LF[ؠ)*ە ǁ\Ijk p@ (o6LiA%儊_ìg|~jm-ؕQ@fE]5򑵢 |z{|.L8Qg eF 2&5Zu‘g'9@E [ٻ0Y&7tUܦps;P+IMq'q1Zh푲րR߿^YהCtalmlrGY?fΗf!q0anp7"wn8]Spq'⎉߹""q^>'I~"G(.l)9?#NOC1eE ۇ*}^(>u|wh2m^/6푖w]V̇l'f'h c(<|\K\=F {ǯT 'N7jӂy]'6mX x>Kۄ.p|z}&6gRf==O=г1re\x>uDpD0qIDwxa3 |IF}Ч?~2jȚnGerRQꎂ7ڙs1.ikxȎ ʅ{w^y}WN1\ҽ2?TN!{eP3O4œUvfm.4sK}.Vnw|җm&׻d 7\f&@x[󁥃y ٽWgIX4I2݋L?)o,:>> ~Wst-tҙ|WۯZ~>ly߅7ǵ?a5vzG<"c`2LkwHcCK 'Y5'׉"؄/%Ge9|O\]< 93W,(#Bݛg&⾰~(K 5[",o[?hLghrg2,Xxz7wcq!, >6 >G劗O! YcyFwɯ ay 88{Ov~;kVHXi)߱FQ8 L:xvrJv@_gPWAn_4]f: [ηg{J>_ԏ˞<'S; uػhd X`7햾KG I397LC F2FP?jq% ucHkC5uE;;l:gϪ [ > [K [p&O2MEe,8 Kga|~ _ޟ77O *0c߄Zso -VL1z\2ƃ)9+ݹW?FnG{}r_;H@; k€C񈝧qMo7Ir ῰ x @#GkC`OD(#}u!}e&J$]T_Qf{8NYж悄bs Ek0pءhL%oNi%S}-SvFa/Zr.ӳ,.Sciǂrwj!6b)jgmOu=OX%6m\<= ;X0Rb|z)>ٓ(\B9O xZ3[[GȩSA|ez$ }ҙ8Sf(`o:ud^Y&}ҍ H{7<{UDڀw u5S[RB3ÿg4umq΀V0)a1^5c \g,4, A3.Bh~puʖHp0BX̞{Q .zA8t^]V؉轜8Lv>`W6Qo%Vmփ7@ g,d"F X1C+1"b<0+P–hNRW(eugNy_o̿nN'Ө)E}3]ZFMG/ɝ]ݹR3Iҳ1|O=}0mcT0Q] 7, M\@9Ћ6Chm￾AGa&ZZ28v+`vl_."z e%MHG3Jp /+5{^kY 0~A2)oHx -{ ‡t("w9wUvf3䢯cJ[\ux㒥,o\<>17ّXxt'hH+u*7}P] mw x1[ʊ2(>nf&.ߠ%qMiGQXuWXIVB#qÔ [-z#*}B6N(8hTXe{-w,ݔvxfgJ.57?)nq*43>Yl/gqh(,ne>y 7>,n!4Ih:ysY̚ŋ] e{zȒ9Lώ`_fhuP%DQةio0PvʀEJ2jsk]*J O kGF7iQ)VDoʘưy>LU8FQ|xĠgtJa$ t(xh82:TִEs4*(ӍG; I؂ψh0B#k6$n<^>Q$,zOcDoʨ2Q)(G߰ [9\kKKg̱Q|5btQbQ )ZT[ mBv{aha.VRh+߿"ᇦ\g CLukFRUxq1.b]|a~w#Un. 2.wEvwseXГ)Nn1>z`y_x{1tG]x1)V\sAwE`N \|HYw?bz9..J.A_N۴i#n'AY@2<њgJ[[bAط@WOf7B^E;C!im.EEYՍ&軖s/AMQ ƠMG!%+ +OX]9|t0#o/+1)1 ÐʂeN|8%#_|r*,d/Y660K5tZ_zewqU{L~TRa?5A >F@{ryL\i-.|صqtmJutrPy+H~C Fg"ENѽqpϏ^lkXh+RMa0@ITqQ|ەe3Ty|U}W|mcPSCǥ+#tN\HV{pE|i.Qvq6L*ZP6/Z'4aP:Ht K)YÈ`&,K4AN5Y';xQJT!+nhQ;gBYv7W]2ANd"ۘK&ט/TDeb=:ɝ1Ab {uLoPf}#m'*JS\E2=iuB(uPVqG24[ l I0_p(`6aTsME50 `,k`+|Sٖw4##e3NqbB ر6G an!|zJR*T\W!#Ric&P>J8< ˚RUtmt%P5&7DAah8hAa@>c\Ja2Ёް],d^>ԆXX0 O'V'هŒ)9Qh4&,+i";.ztd/(d OV42B jzOjp!ugaD N8;e@ČPF8CM^;Bh?pޗvtڀåCCᜲ>λK6TyV bIaÌ `ɠm74OՔ$mMZ=P ]f:V-Q2df&yzM~]JomIT`&~>DDI:rwؑh.R-KIo._e *ȗkcV{YceIU_Mh߭ NȎQd.i fi"J}8͢(QUrOJ vcc xD{2i*;Cc8K^F]P9jX۠~/pmFÓ# 2NH+R=-*UϏZ+N|-`X:%XM%-;l']]vCLJFW l5H9B6tIuHڒw8O|i4 :<>9pvZF&q, ٪4A[<\ónx;4@4 EX3ڄũ`ᴬДjhd^D7d]6j2YT18ԞnX>;98!{<2zAAm]oս&NfDyo,S){66xYTf4Bda`hV 3"y,ӊ JmcPNJ,u(Z̮"ۮ5>X`6[htmqSk{k"RQ`5A^kn1bs뮐5˛jw_T^\4:Ѳ<%fZ2W} η&/2nc7nLN)1|+O yWf`J)oQ3[uT"^p&ϼZ۰9ˬ0<旇Œ/);T.+ad^]]rQ#ܚ!njt,?V)jmR mlvbۈ܆x2ʚjLanV}ԩ@f,jWZr=JW3B.êS:t\ұ^)u뺈GZL % ^ģVDyL 4Em}@ &,>)W5zmM[[{'m&eϛqp%x$dQ {fm*> F]&`]&PЄGVj|f LH} ޤGHISYHE`A28{+n篨[I?\,!^E#3~7mVtb~mk0nXȭO ^j8taW(l#=73?S9o9Zl-4skYIg/u3촵U 2Q@67 QLbv&r%ekzT6SoU VYUyyUMO{4^?\ƅPgD7޽?+E_w-ТKjpEgEO S~[6-Gawga_l5셮O][)]=5$̟xZQGUL5*:^l=W 5zGI;Ov$e2m?dlY}k++U1& GY{|)p2|ϔx (>34|`}0p}/y4U5֯Y)BGCLn$@2nVhg(CQ4)0b2oTJMdi]3/B&D <YJS]v4 mW6shjߟ7N{Goi _7t*ޱV';rJ+P(KI3W<~Age@r?3S}<1/7(,6ʽr4|51(^^|f7>CQJ) ]7Mw2R3\Eݮ觟U=HK+@Ƞ2 $L*dF 80Ƚ8$+2;g4 xw[NQ#U Iv?8ՅO[+ڀE;-^ҰR9fM55ɣL:򏣣=4o๵% Km T(PA/E4H,xy [OJQ&jۏO &h28E}Q`Y 4i~ZpFÆ0T&B9g/]-\8 (=M_R$eBm{}7_5AzbYPXQLVfU&ӂ% yI.h ~j܋_]*yVR>їs R '{NdE0K؁_LYD,0Ѳ|f3C Euyʐ+D "JQEN1PH7ti pH j6po$ 7uZxt*MHʪ-p:4ufj%nĪ[WQ*Tް p2l2*>g*O:gEJT ^A:˿ D󟅡AHdtj3&Tu2DrC8>\tYY!eq~Ꟍ|GPH-мcga0n,"svE6,~;YĽ=J+ߛ[%%. 'ޡy+f. bs:EK4m-[;S؋SK<* 1j =:UacNX4b+e0k t}q(cbkjrGOӼ}4j'SRxzhP]'rpt*TГ/g! ML4P! DQOG7k$= =sB{!?~؛q{?` hJmZ2ݞ5ҦrM̬r]/U@Z$ x,-I .͌1ߎ&p1fTVY |vV12:=TwM%1υ0eET(^JvS]#ByY-'tk(֘e{2 DݧNGӽwru1Rb"3\՗mО[b?9Yy\Zlp,RNfN9kK9{g'jZЋ~S@ GÑ$ohR'ϞUֆ=~\M67$R߿?Ơ!m1f 9#$Hs@?ky^U*Wnup\h+żtQVV#o[c(znrSއ{ko޺͵7ߝc\ͺ휨7H: `P4Oa\O?WBui}nW8I xx׭z ~>? L@jF;/ #@߆6FՀz{@8Rj yIww+))I4Lxu%A8t8p:ړ'*n%ZX*%S #nӾ?ߌU4.hQd*)Cl_A hUKGqp~ұ9m jR^~ɒd *ɛ&8byh.`pc ^95rh0Kn)L:chq|WafxQ;RXN떯VkŤ v{Xz/v+:b@bA 077FI3;/|i;'݇H/>%# 2,x@Il"Y{%c/;eTb\qw]/R%u63 w}U5Ba\ёV%ey2ay Jzv #(vl?PPj -өB8EOCmG!ã0xa|f?80Uӽ8n*3O{氼fE< yYSh\\]0ox.Kf/r\zُ~~kJįf|wV+NBlV!&Wĭ/EdJ.kd"!eEe;>%;>|u/f?ȕC~S驯_t̚ cvN0lb&̭<8UOFW}H7y@z 3|t=Qj;ϙ:4@ 0p<6spu0팑1o;6UtCbmbYT|& ̉{WwR7d^Հ&$2X‚Y2vxdGOd|$ ^fWG_3 n{cxX,zttezBxcT,%tut ]O쳂+vU#ٳ`uWŜVAJVnb^xh_y"U|@m>@֦}wS^8-5zp70t B7t+`֔afn!20g AKZ0dG wde9䃥)`xqf?j3_ȢI f0[g8+5a.UZNLR{zg$@4KДx xv3WgF w*޾*Vv,Ve2`:M[F)'b%y8 o~3/ ̚l-Ɋ3_u;:;H7{ܳآ]|\B} Hh'sYjjAvU^tŎXf4Mi``'x]B`kFf(-YIpt%]&:z+=]|Fͳ7k|j_Vql%Yƛڅ:ǩҰfUUP3K0z%R]HZM{ee2pon1`‘DeuRI}N `nqu'UKņČYΐjpYK95)R ]M@:<Fq73khFEx#ދZQ$[&z_-Ky]^FTn8]T=z dP}Uf/)q̆D('G4K]\-t Qpͼ;*e[cSK%OD-F6v ?R ]>Rp}H奦ҝ|qk<ä Lpmw5JytW޻$ Ԩ̙w >Bi ǓQRk꤮(4A;)% Z[>Ukls43 wZ?`Q;ֽdZY;f"$q-5XLz)@z5GMMA}~%'{v❨[MKZz" (Zx<%d{4F:C,&4d9x{ulS~a+a 91zA܊Go6I/7W,(: wtUTVU6>(%m=IDd49=tK7L@?j|Vt"MIa}Td,["Xbr,/?@{Mt -Xdq-"Qiu=#ӻe"h< H~vV17ʇ_m! 6[qM\"+eu?Du%&ppүnJ"0]eramہ@#˰EB .F>}r@1Îwߒ<6Jhx8pe{OD|\<_#_Y/lj͏ayz2uS>d;]bn %]@Z!~R^aDQm6T|+p\qaoHaWe<汏l)1ΰ/Ou5wJUgRko^J @hE2† R8܇իojO_L=*4*qbV&fi"/"1C^'aYeiNLZacRaNق*1>PVrp͓hDUvcVa$'V/gLF3WU4>seI"J>%X&_(~9Q G+e/~ٴQUp|#h?3 r 1q/ioIns݌*is.>9RO #gs#L#gymfoGW%ݥх [űJf ߍKʂP0Q+kirzȕCwb(L962=/w;]}IűEӸNᙂHd>G5V#±FbG3 dS lc ۶1p_ZV0rNO> YԀkme1F_ p2#mߣ>Iٟ3c ~xdQzʢ yMٵ(̿s}k!󦔋V "K0<~nSi$ϩhCˊa)b83 LNLWbRaJ U\薟fhƸevX_AVhsˌmlt`|(.\Lz?by36Iת#aqЮN<7H5P)nJ6me|ʄR,NIB*S02>3O^^9:O+2>١)n9hٰbLL~<0s q3\jNo ݜ]#0_A!@k pzꏢ(joyn|A~UBԲ.]&^õw .y9gjAq5P*ݗ~V4;tL&6桍JV,M4$[4RIh17aR+~UUt]ii BHNѲIM$٧kt1mԍ>.|ߋwK}=+ /兗rF^ʪֻJ^x%?a|ndS|=_pg{ƹVKeW4df"^ 4)[QZ S@;g\){wT?圆-̆]Sn0TK ]hgf|>vqY8(g? 元A!q/L_Z=OuS5SuIv~,QkzcދmΥj>-GRvuގev.vݶ-EC$W_[0If+q׌K|Zly3OM֣.D:6Z.9{Ja*XW"K4,`vIW 7aCNX|9XQ bxۅF.ҫiCV*Qͮ:8Fi_X9 q,JZ|DMU^wD"zZgQyE1 e_ʚqZf&;w)ZlNt,odǢϚIG'=/u^P-oN׼M;<;kɟNQʩ^!:iP :B.4%$&3/AHģ#Z"I>@ hE*ntTq\AOtKh1XKO[t¼Ef -;GsDG-]c" L=Vܯot]'[$# ݏv-bă 5 V>! i⽻M[HZX"w Al-e=.帗0yRՅs@4Lj)^XI:NY'#CCi^2s&1YC5YDwl2PmoLRho@IB(HZa.d$8> 3磃D7\T%Mӽ}q;%?Zn X6'N* ke}řTJY(BysmήmIŠ.YR lŊ.-t.P6b< +)q9+jBb/ Cy@EK F10I2Zo'6C  N Vj[:2%"Jٝn0==v8^I$=;Σ MMJh5^z$\C$!㸃/5N!sAW#gpJ~83^:*)P i:8ֆA @#I`u+]^ŦUYB)&OǢZjsȐKPk!b0`EkZ։a*U\`.-S=SNI=ԩfVj>ʈt-?Uɾ;+ r^.ݠ,aM$B+AƐ.X~#psynomQo^߭ds:ZbE">5/$_a뿦kL%gq7raxb7F}OBY .hq!fo A%'D&{vKAgi(o"ʼ?01X|y(Q2,YNXǖ#,Ob)%A%>I*lv7p0~;?ݩmb,dtŭP4^qnLʰ",7Z^O v;FqG.prS:@(d7Û2CA1l 0 _'tUL]ڭo\.LmA2CQ"-# [NZϋW!!qbQ!ꥐPޮ̬-:է`[z=ɣg3NIVsW{S{m5%$]MO fk llyJ«ǠСǸu_p}\ە^wYXE]Q /8cdъq\a۪'霜Qn^ы&]GI{[ϓY7<LT2cTˮp$~p<&[%ZD[E.s[izDg jK vo|7 R]Vk4vqsq:A߫9;-v_/?hu~ιR%h|zWemB,S鐣UΡ种3\vK|@;{׃u;މ3aݩIgh|*ȍ. s&'d9)mzmmMbH T}D[ _50LQ?߼E[>grEQfq@ 9MHɔdvYcA?=B@ uXTW7~}ջwlİKJc^L "jO\|/AEI0ߊ⚒b]Y4}8Egڨ]`̚:xN9㱺/4|#AY0aiU笶UfTȅgR[UIV"hYj[հ<,#agκTC.9~zcuwh}|iLWԎ)+[1y7YX7Mu׽04h2[FFݮ<'s߆TZU?8ha'{gUB@%t# FmY 4jbLhq$o.XDXph,m/%5#0O7=6FisgM;m9?;PwORzINNNf4j`3r8jAm׮FNޒ{sMqOlx8;ߞ=q~wJ>ٛu;h4GU@%1Wcț:`N@йi} N}7Gu?AV"s#9;{d\??eƠ7ͳY;99@f~4)Λ4rG@4o-oΛ JY#v A:@0 ?.F>S#e= 6?SKB$gJgqa]x_OЧF^Qj4@i=GhL[Ho Do68P?tt2}QKr9xyҔgAI=iƖbl\i}7?;ӲGc[FϏ{ͦHM`QŔeƆu+sjR5Ch}v$ܫ]u(?S!p¦%G!_yLkBX%Z)nƁ#ճIl`J -~Kbp1ꇸw 4闭}ѰFN:&UT3t(>JzQjL"DӷTx/5UL{7;`hgGtT>q )lBT^ ߘpi;nOw,4#Kɨ?@J|zeMZ3ܥֻm!A_\ υ +-MርTaZ;3:q zqLOr뉞P̗-WHq |guĠBIOO3tYs}7d~Ȏhװ [;]TyCwG]VLDaFr[H 5fp! efdO.>:EKNq\("8(5R C,ȐXع'M6U)Œ!i IRI&IFQxCؾI؋0 -pv|~Sfy y.iok``0lrid\t:t=t9xk;!U;ftΠCІ;d ]ĵuQ^EWL($Q MBG6T3aͼQMf3$@Ԩ&Qt7[cTog2 )2}pigǘ¾uwn y#CF6ƚF[/QfaiV ģvۤWͰ~Se52tfu%\U*$ Gu.TnfS[:մ#+3뵏-\fWiY: E-Ŕ'4Ck :͙l93RL+9g9L;gc4͙;gϙϙD3:g9L7gt45oBȆךa}SBxjS+}PK_9nޥe[^ <ۣ%_S )kyq{@ABdzo0lj.EM!ʑpl8~Q=(DѸX&$PD+_NޕOzwZK ؎Z1Hc {u"ǚoW>Cz.uI7 l:4u KP?ƫN@&o:\3nKT kw_vo;%mn(05v @FCX T_EyƧ<F ͦ.l:ߞUSEs~K2 uCrH9[[2w7f_k&}|q,/J!HP DV~ʗ ^b7f>5ޟtt,%JxOY[2tAB6#6!F5(H~tH-Qh07'jT;iĭqMߺI@>j`aB?9̂SÄr *DRj'&gcwxw\?N޾m:.F!_':$pB97MѺciyB'F2[MWȊ9x-F^ N0@H8e)eu>g ̥1Rآ}%Su* liQAqe ehUjIS!<0C10Y>a0O @7_[:[[j[M:CL+,kE]Uqڈ^VW>< NnF6Lg<:fl:q萱Ʋ(.\,.xZepwn/X;kH)L@ ;ߜi]c0k#ʞ [Q|,.lu!0%ɸ;U%Ĝ(!>=^[%װ3fN%$*51b^0\sҕ0Jr5CB-Q o*d<#Y_48B/Pii}wӉuIo ~oA3r̖]/!trn=6Dž# QK8VȄP锁JIb9@%,B}.8|v 'Θx3^ TテvQ0Ⱥ7H,!Y*xUraAZA)(x, Žuw,^E|j >ŋUX(GȖk>hͭI+g2шhH|,,v7TbwB`kCV*:Jp/jI"&Fq"3K\.څ.AkBZZ5UV:V͊bO:BTvbs-Z$'-R ,] ҈Lʝ?Dsܷa%r9wu.)ˊIWc.PR< ui{ MwZwzJ :dQ_#2;+3;^w+iWw F*0ez[7=+1սq [3qaFiOVR#b7ܨ-g.R]PH!~mً'C] *Pӹɼ*VK׶>uGe=I=m aw)[6Nv<,?A76_Y_l9 Zԕ~P>dJQm`{"B5rn;tFSL @@u k#T}?L^LU9\a(0\ |&5Ǹ{S+]A2J%?햨U9]`544|jeu 7R[0iLzZԜsttQQF3K<'ˤI<}q| OSHjD|cyg?cWbK4|j&sA9H=P-Qk]޳gdy*FN$4F#xmLb ĝ=߹X, ^*퐖~Jcӓ KSsfCyN6\j>@)L`p$wiWֵl{Ix^5];u mV} g绨MĽOI~'`9Ă('GXhw\DJn&PÙ< Wx߲p;Mq_Lrcdޯ[\"x5H Sko6OzJUvUEB'?ilFΑ:aZAdsMER|QԴGtM k#W7B'ϰLN6-N_a91v>nێ{tkI- [*RT`$+I)ƘSLWɰ&'$=sҦc-a_sO1]YTh_NxKVj<9Y"1U{(ۨ;6NHj)Ҵ+]\1Wk2 pG d4]7͙WJC)/S~W[|6 %D'ӭQ)[]"y+@L 3>s1~'x vQwcLӉ $q<)tx')uʊ!nؑDYDz29aY8&`#YV=1·>yHry(љM)hߕˆRlh%G~ln.iZBLG\T/bpɠ&5H*~R}_ɈR)AAQ/(:}{xzUzY&? Jy3ٝ2{2p7綽Z z,f YpH0bU|Fqd(_A*jfFz&oeR!Y?W&L[.k9hf U .-YSc4f{zԖ2@Xhec/94gMC.['N5 %y D]`Yk>sv(ܗ%47&(Qynaj U69~K`@ߡ |&Vܺ =<7f^{Q&t5y/sql`AU,:#i,,&6T28@ˉ]AEl ` >B# .$۟-|! Q:;8!ݝuHvfOZceY̪RQj؈$L#wQMeMԷvHIw |:L2訰 +ZnA/T# PN G% Y Ge~L/Q;74 UyV`. q.c ;JeF )&kaLS&{)rfUWo#8(fetƓbx$9{7YNd9Y d(g.㋄%gM2MCFeFeNu 0Fe0a,^@ЃڎFz_ܾZޒiV8M땭x(:/>*;Ӷs!|\ho>rt%PWә |і4ԡ[:INxͿu˖޺ m` Og AE*)ٴM|e#gU6?[_ _-I`Y{=;(m,hYi8fb^j7K%[6S.fNӣܶ&LLs37b&(t(s3ǟ 7OQNQ=qZ)_fB6f3T6N*m1lU?uShk#'aQ99:2|lBU-d-"K6ɪꦡbݒlsYzEڱ.REt,Ox]`CwzSP\NEHY>0xK;&}[_Q& Wu/gIT&o,ԑN68z*`kU9;]D +>wy2;nW>j?k9VurEV9jgނWI l`yI'kS/byew'>˸SQ ɢ<+ *I/4iIWZ:$ˊQ)/),Ȓҝ4Bst9Rk| (!Ͳo{>~'7dBʉ3Zd㩳B}1IUl|v0em˄pNve5m^,KQI74Qvu`A 7U@[$ԓ1PTpǮA㜌Z݇_1͵f{s/c5/V`\@6okI+(ȍrs -⼞%^M;>|(h]o>Y婜My@lzz| fM&اfnn{g^3H1>e;$ߤ,y]13,F=co*+K {G}UDύu~ŵlKMsK%>=vxgbuy[=tn(2|_:{oH^dǕf;Z-W9==~yڪaAVq_A_ 480^61j9rzY@.xWPhճVNoJY@*YJcQZW9Z&ztljw kMY(i)'}@ =(h$ Y1H;\1ft:!B7)4t j!5ӥX@olhѨ4-7dViTG(d3-zFiF>z6jSfHQ[}_9n]@6wMXah$`u9_N'I+!YkI1á7B)oOR iCpSTZY 0bWH}DhJh4a>ŘB)"lIJv#cN e]>Z.E' '~A5F8r1G1 AA SHHDK_<14Nږۨx^K8klH#.Cp:JEn#d%q3 P.*^^NuU;zNώ?5r]c24E0-zYG{hڄy|v f ς =T3 *VyڇHg70w8/9Dmӊ-,azg|J:е̇ǂF)E|d,,)W#1G>RǕ* lŕKJpj:Z űA[1noR~v܉)C Zag;M{{9 "l[! [JG) PpbɎnt4D_#ExU QlFvv37 &}ܓlmTtɐA`iLI34uEdĝ-;2  1A"k~t1Mp8$z'=l𼚹ws6.`x.ۊ %2qCNCԗ?L酤y\4 (@RB^{Anzqr"zExh. 5ldB@Io/ .Q|W ~)HYȉCB'.jc9Q̚0Up.TJ'u8Fj(X%[8 [Q~=^7*Vd pr@ounjH-^Iik٘v@i(E^ndA{.4ɫK}ImxgyERpv`,d8h ߟ%A\"w; +#Y+2ap/CոN H- ձwM%\ӊgn$8lH5 pt WsʸѨ#r:.Df{׍mՄw]2G $̣7\@!"=~?ֿ)k_kSS||Gc.%PVbD4-ICkS)'ԯ^%Hl(6] -7q/sZ}yEfC-m[=T:@}nvd$;,x^p**}X[G %z: I[5%qc x67TeHa_`K4zneQHJ#nj6s*8Ʈr-,F1.#W_<<ƽ2 Q/Y`ν`7Xpm 14QhmSRZt7`f&P>1 e4JDrtЂ}V>):q@P|^eK9R 1؜Sz-;Kz8wϧLDL= 0~Pe9}kCHICHJ^BؚT;#5޻:q mO jJ:G/>|hodq ?ϘKTLJv{{iNj~Zݻb7|'~,Qe%-]FK+T[Rg}5*Abqdދ;fgם9K%Jho~l@LԢ=U_"Τn 'n7&ϊQFb%3:;mjOD4 ;۰ {~ҔKzch Jæ#Q3Wɉ{(;ɖPC 1[JKٱ/ϙ Eé=(o+x%$;Ѷ40thf鑋0U/8~Xfd9r+z| l:]"zhk=-Ԛ ]Nے ^?r*>ʹ3*n0x(2V6[C]N^gU&t9 [rlYJfF~a\_ qoOċ%z ?%M`(?5^H=w{C8YMJPEUQ#}m{Q2+F0yPk!ͳM}WgM*YzLJ!^oz_~!2`S݆ -uT:3gX+O њ1Vږ0R$}2oL%eb_ oiH9{; H\GGZ"(-2K8R+v.W|lr4}\A䛜kzgrF+>){lӤos;kO\ #u|?M^'9X &4= <fDvTq NڕԐg(|[pnv|:+F7ŶYy`^sN ]\5KDT.vo[uȭlJ(_*O[G YR^Q Z=0,N('" ް`*S`n'9_Xi) 8#B/Y Htǻ;xܙ3A7r<>8P uX厛*a uVS)Բ^|LgaLgtI iKJ*8d9إJK,YZT;ĨIqD8e:sWI+>q3B|[|8]lE*hZpMs~[KzjZDC22A5S^БzL+TT$/wP0$+.%io懶[*|X?M~*"e&$Ix Z0⤔S}½=LcRnj)ZHy12lFT-`qgGy߅4LS3T H{R1zT ƲyB# ";0}cҘ1^-V.i "P9tC;$Pd}Obtߦ~k4oNw3$h@*̅"w'b 0}bG!݉5,KIdM2͢GIA>W.νyV9Ҫ5l-5(lc"ETȽNv0eЎe0&CT;~!\kfQѭ9ECD9yrM1L&PL璒}`!4Fjl;lw"9fď9USw^+!SOIrXn7r"E~yZ*_1S$!K:w<ÄtyۓaVxz^;=pYeVis.߿^@^kx w{M40p"j^d㐱8Nv8Rwq@"{WõqR;mmnY _nqYkzTb6D6fGrT Bf-4 =v(ta&moiVsJ=aJ ۲3{-h!U|8<+NO2rk+C$5]j+SP ;d61 ð7>-\ &@xn2WzQoEZ|Zdǧazcp]k5|,웟>|$>3|t_=~k+[ p{ނ0mttVlEm=oQH]Y.`tx2ZBԪJK:֘GECm0TņC]u$<Oŝw^\+2E-ctT#z7`.Y$Uː+6xv_J'k{St#ernp0a@(:y 2: o +¬DR, Cz("y+7RXIrT/^Q%c)2=8*9{2MvX_1-knF/#S,)ΆlӘá@tɇMaLLMn  |nb/dprRjIJ}| !¯=굑)y,z</Lcx叧?$i BװX6pCnaE:)iW4eaDdHu.ay-ք <{gG<)e"K#kP:X64gFhsf$1W5٥yKh~HX'ISKs=Il 篾qC ;h+CӥV Qui*:;9#!ZVaN~{ )v#Oa<*y4#taps!KY?Vyk̤M`ƂV/˒s:;|q<>[ nf؃C 㕱) f.QWYXOW$\Mfd~w9GǍUL:>ALkySzNٺO;v\<Ϊ@a~꧁ h%5YfQ}'qTw]X[ &$}jмa{0lۘ-ͳ3l0Gh ,Wb/5zZ\bSz)oxs?O}"eUMT:tL( K wTlZqט^m;s߾LF]t:=SՊPn ELG t1&(8MhOw ?(|Q31ovDѨG%BùT:G5+\_w~Un&ɜOcPV Ѧ!E Y&lnnMK^bqxJ>o"o2Ocb5fd[>C/8Mp1wyϺ}7;edX٫}W{sMD KmnWxM)SL!{ܦ+Wi*{v`KX7@OSNI`IyNgǘXk1qFY,׌4Hї̺܀ʵ}핼po+ޢ@o`pqVaRPqܠ 2=nRr wNNߴro/˽Z/+Zʶ5拮|V^r"ҖFcOެ8)]ߴ4Ώq<{kGqap!3r][ ~KS"XQ-(=d õܠg"k`_Ѵ=A(/5qWfAnlM2F7%w(:©&zc'-۫b\:;> ]nhc*txEwbX% @([z-7hc*؂#=-&XEo\EoI=8,)0VqX4 8,ˍ2kמ 2#U`=(qi/\(Wq0Vq0lq0fcBIC*<Þ<7¶ݞ"<@FB$RQNZONxbyKCeh-1MS|GZ:bΕ%/ų#U)@=-1)n]v W#q$L)2NGb)b9V6Fr~u-OQ/9݌x?KQn/:;cƉtŒrގEcӏۖQfÿmm9^&qyg}b' XXhS5G'%ɇf qaEZE~Ztw49b}u9Pj-wLe+jW"Mqe.ӗ eC3BMxT>6|o1XcgEZYĹng}\E3BW>+Q /ߘ &-Sk 6f2DIm6+}4W?6 @Svt's`S_ ܤq ?~v;G|zM7.)uܺ6ӳUvFc)&0:6l%P 6/~^V5B ~?rcp8  +93Dt[L hsyb_kxge,H -NApaw *k4pvzYS zfej`$ⶉצAgG# O~_0?0? gru*YSp+&9;B5t(߱PxǶθ6){m]nI<ؔ3 Nj.BBZkBB!U\U\'2  9#UpșC****$ǧZw +J)G*{U(<7m]fL pW_\Yb'?.p!_Ͷ~VH*.TSQp- l ЈQQQQ(U¿r…G$EB HU0U0 &86Kyy+{3wdDK8S߭ߙ-!BC9VVVVaN#= %S簮2~;v%-^TXcf:Y 1f3ImS,'YNgBsVQVQϞxԳ?ϞIhz[P8 3onյ/9?"5rJ0f ?74 Gԋ0u6̶VNl>e\7;w-6K=S(uɇ# 7;Puw܅.T\+TKާ9֝j:6ij4cʇ0JX@D->g 5LQ6;ؖjܧ^guX 0w7>v`TUR/^x.+ }Pt gvglj[R݄UeSC8ю<\inц?soQ=z5W[ïn ۍ_o I?osWt>ueܲ.Mn!MW?f7_˚t2'MdO ,黅&*$ U v,qf/_+`y~<.OAy %^Pt*ݯa6`]~j6lLmц1:I9Zœׯ P^wML띿zL^;Øx@cp!Jr@r N ~0 ?`_n>^\[1DD}_O:ruQ]Fm+"홖ۯw/ĹYN==Ι!eX^I9e#?/Soq[ɕIQK 82!߾z vuZ'?w'u#㦏ȸ0\(~,@.UMf!!TLc>rәA | P\ɃȿR\WJ]ɿAwndEe\RBx]h^G޵{%V݈L{]>|e> B +QAhmY|jfrm|Iy& ;kb8pw޼EDÆZk~|?؈EC;\+8{L~f{xJXn<rlm)-mh1AR:\D34I7o2 ZYrQWD@{w+]QrXb4ݭ}K f'铘 )T9~Uߠ9uNM.ދ+~ژ"@o0˭ljq &W}~ARI:Gk Gc7B~X> 8 1"L;kG%P2_vأu棖 k+:]A h}:O/-Y;i}Lh 0Hb a-}է-3vz3>dIo+Z7蘜evv{g4:&nI a H-^zMgª'/iq!ƻDh+') 3mS$?.EA?8jި$Z=R}+/nx%Y hkĨNB&&BY38r×s1Y2g[9}YmbwϖCĆprŰ<ʒ$6A:n:W!)^kI)ֲ*PSl0\o2ɭH z-C!0l߿jQ`":h5"c`+`= ЬY'mtm fՙVR<.Fon"CUd KH,c&ry7ĀCQ1Q)Ļe@{،s;Cg$9"בۥdP q^&kF'}iE EwkGŖA "8uds0!ɻJL&^?Rk3jB4ÈfWII 4{{I\ۚpq5W,{KfQy^foOCFKٶ\舷.D# 2/H="~ßLfs-wJy{ իvλ`3|gcUW@..m8WSiZ[712+p=gPL{H(ehTXKbɸ(3nà__X4 C rXkB`Ru-hXA$hC98NGey[:hC[3Pex"B6ҝĖD.-UZ+K%rZü!.gLH@`/j+?aL ms;mfuƠ}{9 LrQ1+b29І޹1sk\Ff!bXӇttT^xfme$ה9-$-x[@\Qf|t]3t\2u&Q q['_Zg!uN>m2iVx&)S5-θct~g>\^TOVP9k(B7Gj}K>ڲz.=:6ێ uEGY=ɱ"&q.ɣ暻ϥ#(]3~'8[R:Pkz'U;MQW!1NNDYW9E07L()ax>͡E.\Rswkߴ蘈5or9U>x^v)Dt٨L(ԦNeݫ zCpQ%lDpQ̺~m1;d쨢G lMR^yY׼]>Z^ݏ@whUp0̔kmAr7ih㨴-*VU;)n`1]i}gIޠz:pӷ䥸X߷2LR^Єh8~SF]g-! qJF21^_d+d1ֺh18J y  =67d =+*GN+N0zgp x)]Z ;̈́cB{e^p J!1b"Q'pH@Er¸e`VEE u&[ZiKr9xEP ~"X2PotUvz$! 7pO9S8d׭0u&TP@UeOsu+Yc?/>#hnAխqaȚ&MӪr#6Y$% yΖ`ȡ:88(61Q pn=Ï6k9"O6Ta h[oǿ൞?U!d>KHkӂ&id̵x"6x2|-,뎱s_lpd ό쫲 x&o:tC.J"f\Q|g* Awp?l  ygiJΥ-MBqyEZQsqڄalzD-\be BiK!IbIY1|?67c)Z\*k:K꘴yGeYIN"EmTua\b+o:FJbz\ (jEIO,NJ 0{ζ~'51iFOn  X >ĸph^'/wv^?Y&_jp$ggl&h(ר&Q0 _7lYs B3  I;0cAo͵>֚yrQ_ g'Ջ&4NmuQ{w:+M~4A_TMrv-5 \`*lILii PuV&^8VNk`Z-? r^hՎ/O+Y%عZRWOhT6Zrzj' Xa6Ν.-B1 t z\_VapBTПR< ؂m$`6//u߼|lZ*pvvCLՋ_j>9=kAl©Ҫж Os?]6ktjVF0@:0a \ :ec_8RR@`MZ"i)% _ZTkbksGhD[HjI"7kNCωgE$ZsNJ%4Do>5=9#ltNo!#վtov<?"5rJU؛7lTJ!({e0׆Q}Gfff=lt]5fDSi_+6E^B}c`VC{W7-Sʝ<`6z?ѐnR!$wm\>jI6P*ץsEfc>6<̀n_/ڵn}M:vm)''; }ȸSDnݦIz>k=^oo6"%5CA+jfކqM ޟI{{5GF)za/za)ڴmE-Sجg)g<1 d#<q`ܡL)mUQͤpJ򼠞`3ȗpȤY/ W<xKV.0,#ɚo{Cf(Ӌ}KI4A!p^# zEK:`[Љx{;^^#+y+m(,4d -nj  5Ƙ9_?ss}2q2l39A1j” 4cxD,|sZՊ"'1PB`ڻ?i'X 9";&^І$A;yī>8F^i~ѻI7>Plܘh:1iNxp30aXsZ Y&S_#EwXI4RULWmՈ=~J f~]$i wVDIŧ97} hF_]*%y8.Fo?H0GGeC,ȐX˸,hMgƑt ^t2q3;N(I) pFo/ҷz{/T/JۺjlڝN0g//[BOJ/>"qqcÕ@Ў;5JWq|r{+)3fZs\[:E*rdmA22^Kx?J8/+2*eF(ڣA[ɷF[ YhC40pI,全mBnJȢDvqJ %^BA QbD ذը%UʌӘc+%8)qdREQuf'f)F!HbsR R U#')Z K8_]})@j2ۨMRܵ⮕w$/.R0RBղt1r DcTysTI2nFSexWldg ˨aV?|\"E\(:||B5hK5j'џ)Jʂσd渗@TYyJ$\Oc\,UI h}ԴLֺA-nʂUBrz^|8VuXV{\W{W{P]aj[a/ؒ {0C>Zy|1Xm|'|Gi]Ѽ<2y3"܂Q""EL>z=ݝ7~`n>{/oAVaVAuDjHJ6r.ۅe.Gb^A/tP.vaOK^y8JOtRkMFA8z0 a()\6mpB((L<"ƼgkJ0mRd;̕g?1IF״sa^ W &.6v7 MɲƊ|GkNgpO&uc{)s.- ¡ڼxFv n /v S7]H>vӹ=jw;?ˍ^Un/`c a;'_u[v2ޮѿN]TtCo]˰*&%$ޣcoX+ѽ ŷ~~Z"DЯŒuI(nF/hu&vk>AidwBIMn8  \ :|8kˏ R<H1 tOvFc(h 4+iyZ-k4wѴ="w4ڝq+P!& ׿>ip@s>!#rPc4$/߅pv0CW0(]$*rKW2{Z7G3Z(k5t c4nG~E?WSL?Q48F!,+,n`8j`G6ue;uCXt>#Bv&Q<͆4*l$h"D cG.lf (-'C dHgQl^kx=>@&y|$7aoF8moɫy_EFV]( F(NEnIEzE|LłO>+n{[#6=H6ٹ,^u&H[#gȎYrt&#f0T8<%ӧ7W,.QuW ~U Rr! {rxLl 3j,(f-X!B$t)=$I Q3 mF}@.8}TTQyB*T̵%e~Zo8mtax-Ke:F:fɴՊRnEjrlѡ9ORMlG`qƢW跕X4X4]8$[-<ntj궴Qic{qƟK0,n9eF 1> ;j}saƹ82}J+M6g7̳'-n9ifzJ3*dv +S˕%{kSv"L΀k2wj@AQ---]+~ܡ}q綔UtJd 00_U6pЋ"_oPE;z-h1ʭ6IYư3o5kAי ^ {~#QM~禭\opo랾K8O(=BX1fIoBscQ+t5OEhTKػb]e> /.1J 2E<;Yњ-9{ 0s⑎+^)q~Fن/+2bFlK5Îm%/a:T F?+"c湜)L|T@A'9E%0A"jO~4G@:^It/${p ]t"oKIfqt hnEzM6Hu*˝;¼hro1PHK$qv7!O^.r z&愞I5ЀY`4=w5Q'ealLt2}dv@y-9ayZD3c@Pj@l[=1*NA]V`;AV{=cJoA IT %镐rJͨkrUǿk.Z}RR/~_ zԳTI]a0kibsNw~8YrqX9xY9a'yOJ.f;1uH=&o)&NjM4ұ'CT$D[*yRdDOvxJѤ|hYM}!Z1VHfzY8Fgq긢bH/<#H*yӢbe~N$ kw\29Eؕ_R1t7fP.fD%4fJ;6FU$/[dݕFr` & UL:Sy蜜Ľʑ$b+%_ cc$B  vɨMAE R|zC|H4o@VQ^zZ; w@s^%B(1R2j-b w5{V>EcBl`[bWfs3koփjlu֢M{ѦQԒC/QR&*.^nKzXq^i"^podGS o]_Č%k>,7{yL zc "OxSO{  X -تr.v &.c8 eQ"d)6 Y"*nyȗ16WsNҨEw !2M2ADzj o!.?6'zڒ#!Eل7ǘ- #SUI&& &#k X2찏J s{cMyaopqvypzH30c5+`;I 0< EJZhhx)VD' "dZ!e2GńS+/iXmP:$"Tv$4D˟J;\3`[B2e1EzE՛B]AE`}Ͳ1s=uYtĜgɩg'@߉ 5>((3<05Mݓ 8:ah( BñV:]U/gO\x)uv@pV`<ƂrT SLnۖntG2}_ <<| /]9Ў:)rֺ>f!hhʲG'ߘ mu,ѶH_ Z3+X(FU\*AqCCL2kڼ1uhC^ SR9sI֘&EP Yiaa2gRN&,a{{Tkzlr-ߒ߮3|^N͡Mc;wjb{1ds}$kO%ܻ+\\f E4؎QҌJdmκʲIWgJ.UGuz -)w3:ɨH='$(40,-TXR1Vd?V0zQ*r^]O2) {8$uBR&ȖXXtR`zӻB _=X9ncbE[Xq,b|>sW8jѮQ̇$ 1~/cע?JcdiT6Izjle>q{{7؍GG%=͢MR~b&ɘV=jikcki[9)RD g?9pQ>t;w[ =br2a7 n2M9{Qӧ&2udXvȎϛe V!]jEs3T8󥩈"ЁI= xg9Wa/w:YwbXӮѨ+6˲mF!7ϲ[=zySe42Z*6S5y*̓`ELY#",e%HanO9JF;n&z6/JMy X^y_N|dóTn(ɔRT#͗ѹyϓ54MlcPFB*~f닾&HU "P_m}/ }aa!sQd"6^j0Z WJ#J}f~l`X4-yk_~S?Ks7-ŔS$s=E۹m"mYJdsXG[ nr/M떂Γv+W6oߝ۳Tjrn2 ۦjeYZ&W+E"oe"φm(2Vye޲, c k<\ th>zfS"ߧ}6.ΜmݯV|Y|1.ޟ>ܬLV&|YLքO ~2cŐO`,|ߐ A,dQl<#L\l; 4y @s'3;/zD5EkYx%4ҢWq!jbq*Eܧxyʫ; ,:d v?vRYAnƺ-G)$;x@fA8><38p|(Xn~;%ܪ;B]Sې-U/8Q˳\4Y-ǥv=LYu`&ۊݜcjgZJBeZpw  #yZlAxgϖ]~xetet5.ء/L=nvb79s_dռTyfyEjTcZ– 1ӗ e`_zz9VkT_s d4[lb6&pfHr_{4Q'n{FQ\|0!xm;'|Aڝ;,4/Ƞqp2Z0`,ۡ? 7Gi䚲 b)(VN`$^QTp.fs0X++gL<X ^ /][痩K'6q#ӽuC n<<7J!7J!wWBp0(I?xt|M)|NA[}5ٗJeГڱW{qὸwJ^ϰ"Lm/}X 6y7ɎXZpk,! n~-x$>P\ VbÅ0a QLa7+ KY[I&hwILäwvx̾EHrq5ϫǵiퟕVakh[krAhf8. )]@id!AQ-1HlۊIoJZ0S&WtJW`7D#EYR)H6g:[pvcj8'JBr830u~cf.Ԓm(n:Q+LUƭuPeoY,[-S}sII}v >N/T8|cnATXa胥f߭萘>EM2gdǥK@$!Gտ$xVS dBa D'঄{urxdX=cv&,[PerT5+.fA4XX/f-*ʤ7+/ rL_n9j^R~7SP>7E(`nSKۃxo<_X/ld ,nPVj y@,CJ-=$2FCx)CpaitC?W|ꮺ:H'zRdm/D F_ީ|qO޳iymnbchxŭBnw QΣУW !a%ڇBSRQbiAw̉e|) ĦAo͵>֚yJ3zB>Viڇ-z$ mu/WP9PiT=6[Ok4ZjLj˓Z`Ykij=W/?ŸwZ$j`.HW.Z9aoV vJ^=QRheȻ*`;)mACNjv! p:-wa Ё?0 8\]B!HN*O)l60Ǘ46vy٪.[U4Ԏ}rz֤{qiUhco.5:VFzqqy]] V J0L?.2 /p))T` 9[jIht4Nk*~=C@k:Rjhv)}xmN#'_j! yu2IV4Wzڼ{{jE^803$%N@xń!;8)撁䤦j, NDaĶP/i7CL=E bYuȪLϓ8_!B% ޹x֥=&oہj`@4\ôq0+!7!Po8hH C[}{*wDU~~rfPU"/v{Q-bu,@ƽ';9>'>@ 1 jnYOzݎ`eJW6=?,/+].0Cu@BwϚ^Z<`qc6"+pHquz͇(#,ZQ,D(, (EK`VPX`r8SS(\#􈃾AhC'_8zW9An _reE9Šɒ|vˉ,)7Ea`V@*sgp4(183*>83X2g86|;8_Η;B'D`PR6(b*C:_ t>q Ҟ#nHoU=fȼn}(A@Rm!Xm'zq&ϻޘ!dʂgۤ1|}\_ =_VY˪_ƤD/ѓti\OFb}6ad5 0i/7laRZ,\fr6 rwgi'f\܋0" anh5#R#GBYΏwތg ઞ[q]_.AJ# B>D)+-]S}gz~^}(O?75RGRe8\e(ËTfɾDlM2ĥpNYTF;Q3ƜH(&èw3q/^ČJ#Vzo9]r@tGEUDS$Y/\\ ^K]לlI Ljx9x{}{!LjI^t&aa)i[<--6c1:P+^Iu1DzH 4a1A~אּ9َCi2g~`I?.E# žlhFfY 9Oe[g5B-Ht ^to&$BKN`Lb,JLh_2e$4aPmiUSj.XjNLخj.-u&ɳٷ'[yusk3=- @ R&ǎho_--n\¨AcX'j/;5(BVʌa/'Eq^lXze:1W671QqĐX r)9` ߿L[?Ӧ/ـz[v>T"%2U<ͱ0uy%.Cx5qX^=7qQW:RCD S\ʐGN")75I+d-è{DbIa7cnKF֧X V'Vn<)cK:QqgM SBTW{$:F>0C˱"^ 8TTguׁHcxJ6̭ f?E9 jP/~h A_6þj)mnUc|ر$&ݍĆ80q;Ye@֠0}O݈R̵ aςsN*UC9*Y)5$KOe 4e[%(`-ƱjJUhq#ڎ'jxCp#+-W$%4Y/Q*7 íOҵBZJldkly\9+lVYQk0_G%*O`<&T@-b@S*z bo"un>;ee[&v8B>Z{UI~4<]80% c**p!UPG:uILV/\ws`fimM//Rz;Q"k[Z3A+f;kOMA{=԰<ֲ~/p oy/1tӱyf8[aPk3Li3(f%ۤ3yfȦ> 1U/N 'Յ$ =!zox)ʺ GV`'\#!*;< v$@0GAH8p#7.t/U4;? _Z-]g؊&؅M٪Ƿv_,ez+'b)|"(MZμa(Bg*"r훩Ap2b +?g~^Vu 'OC^ä^Q2Hemc4g[limRjwI"__H0|ܑxHe?J+d#fA8"/[Ά- xOIͱJcņ~b˘nH6}PMm} նY5sOƊ+ `Ϝsf,3 CgMܳ&rY7 m$͹3JeTЫVxqx[TDy?E>A^)o EODWO;*mi4BYek۸ح[Ak9QkZ*VF<ƥְQ\{^|㈾XQa "ޞy%uܰ@Z 5].HĵNfBa숼I#x.)[#ڔOv4>ܶÍ#,Ţh ?O@ $>P~ӣ6gl=[gs†{I:>r)+2`둟-Np<@m˶h,1u:~gBw>DҎ-|'M6jrKޠx6VǢ5#+QVpKIpxQ'cgkvɚyjV\~-홀[S/nfemQŻת2kf>j\f@JFb^s5evtd!jòm':].[2]uw<`~x+7gp#z"/eKIˎbUB&Z^|( ʇ/d\} 7iuV(jJpY#7]7 ^ؙ "VM)tԉZWDZ\'\yCgsf7AŨWZ#ա~ u_^:fvnŷ䷩65MQoD~Nf*")آZ28xBA踩iq>R,0,?SڎV WhD5oD >b>3BB>D"lbڻ%Fj QDgb} Rr`yΝtK҈iw#4^ӤY8фs}'ũ#SL+cu5T_s&(:Ty 1=ZW$bI_˂q4NX?aѮB3zA4[77 ROƞ|(_Ŕ'S\^.%dN{yC}+l~KD-TЩ5K\hƒrzoʴ&k-TdpBj۾nH )YdL$ }+vnkbJ EZ\ yBU0% s}y]nNҺ.SN-_n=l)aIؕ55''xhgVߓn5hpPds[~|h۶}SR^>>m[拮|15_$eNT FZ v=G'S.|Y,2_@4V(e;zfPKE[++HlA_)8Gk^sp|i ?YxΦg i18>K4_Niۡc\VfС*:"V^tf+$Lp!jqhsk[yZzi^v^T0§/i5W?L*J"hU!Ҍ< ZU_΢xW% :s/zC,%1$gY]~}ojPPws擪(0C\M뢇| aCT'qR`}Hݐ<0\7ނ+7R|,Wv((<ô="wdn {2]<>r'{y , @-^4ZY,oYOv8!J {:ҞM9FYz廓N>9͉v=˂R;oR}k~Q3 )3Q6G3(,d6M2+D䛼2$5&Mn1(e6&pJw\$''-86mQlcɃ.$6/y+Ւ$CnTViӚ4iƫrL .;UA O| Q|J1>F(Iz$>)f\Yک3g8}HxX]9aHa@OC1>s}8P̓iCr43ʢe|f=033:X/O,\O->y9看O.>yλ:S܋Oi6/r&=@~I41)lP\U )i=>>m+2<,rj ykVTX32-C?vXFn7 <1%S@rV^x{<^@n]'q.Cxazc&sٛwqy?}p,ϝuOe ԊؚR,ԑU;)w N9=RQ=f}:f]YGUVR[rK[y= 'lqӈ{ub=Ihru8TqY2ͨ~?YQp$6g>O} 8W] *bz9×fewGwe r rɈR<K1d%!ѓo柳yƆK+ vV wgf%<Ӷ'ݎ7mk*(xPx?!>rZfq>goγ"4u2$c3vseve8uϱ?]ݽe_pt5yD"JP*gQ?/O[5,HޒsTC)zisQ(zKǧVX}9}>R9δ?hXdzI>ll z#f‰kGچ$-R -ʍ%jH\&5o "bDHk%Ĕ0OO.^Kf+~ljwze) w0,-'-ԧd'Uڸ$s'vhښ6n?4kW_&8Rmq 3rR>A]u{bYb9#v {5 HmaC)&0# WuxB DxbFNغ{ l`=6PClk mSӑNdqօһKZ.,y'`8gAT@ keeF4HÙ#_s2x@Ph`z9k$2NZK8X)=F>vWGlb Rhi}p`pA"6Aŀl&%K"'W/.9CI5D6wQ4p̅a0a,2x.Piy ︾ۮރ)HYȉCB'.ZCDd{  RP1I":Efm5<ڌhpMX=POи~wp60?S˶[u:p$=׹~n3x|bTKS-4E1$y%Mqu@7ߒϞ/X[T QdU׻zWDmj}h}Ļ+Q<jW26L@ 4o^v5vedDF _Cx/~g$`wV_K49N/ƱK!A,=ͣ[dx[Cf@Rqx>ݘa srQ7JB$vPwґ25*_X:=GQV 0i!SrSsMtǞ1^CRStQ#a;6m(i&a䢄ҏC1{Hr8+jO\MB㔩Fqqu5"6e'RAӘQ>Q9_D(,cY7m9ϻ"kc 0~tAĽ^b,^KTzbPɬ"#/D^/ӺI$ &D*tDq#٠Bwj6o[@q ;.ngxe Tw&a˪¡ƷO :LDJr @sSIc@zc;\~YҭJ^eH%۞adphe/QxH4"cdTXF'g_OCNI"oC6\5a j68dCgMPhY Ef/Szᱡ7؍?2Bg]e4Bs[2V8K,Eh&FãJ2v0K/Xm__6\ְo2{x7T_f- /cYA%.ygB:9r~ȪV6d!&ɺV#y|0< Ƙ$Ceέz{ [ѫp2_wnʝW]C]SAI@~Wntzu=hQ^0n> iTw'! Z:ĝڝ=-$P6 TfX':<ϷCqoh7|/s? rq>`3 '`PJ|sIҧ),U N'>ZiJA!b ej>{Ҋ~|P6.gFrSfr\Q!w\w|`QV3yޙy؀́3d+9rTts1xdȝu}'(?%Dsq| 3~.U14ixŴs[Y v_|mJ \$zAnxTGsvl˱a꯳\kKZ(?IdV1tRMhxUQL7|ؙx$-2'_rVY̬Li' ܰ ~q˂i|2(6vn99^q9~氙算 %YmҞ݁i##?o~+{~`#4&TaE@|!%CSI̟8WQ}K0Q7)uDH%*{<0wy^t! {%oi2ɾ#cY8'ś4ru>ǚ*!nӎL~i9r. I:ɸMu53#FT:X:ht}n˼=8f @~a³LL6l2sfLT`֌$waB7 $Z4,[H}4`>p㊑Z/72G3:٢u.)6AZ@FU@U@'TnWlB?4gBB~}??I }7SЇ x6 3 Mb(aCJTάX64j.UUUUPY 5pX ]A*n#n3{!["Bw!t:XE}:ubd FHer*D*Dh.n9w0.{n% Jyc}Xl/V{VڳgN1ÓL].jY˄aNw{2^jWMeqJ޽ijBfQ{{֋>KaM놵x!<ݚFeR(s!`c%I8WV++ab6('WqQWqQWS&pl;>b{"ʸhFm]KsE̸>MNjR2 U5 L+*z*銗8~M 8,XT%FL/+Sd>ݼqF8#OjI(_( zE76"Hc9?<]H#hH'.>ٌHu%,aK R@4jw|b%D)_qu 혔:d ?ˤKV}q~vQi[T}BKGï>2X W]< GLŽO\mz fUtuCea>z8n$ͳϕ*/ lFJu9xvzRhJ6Zw3x҄JE$gB~~ZxEѪUeRk^EEg-rZZPuV&^8VNk`Z-? r^hՎ/O+Y%عZRWOhT6Zrzj' XmmACNjv! p:-yTB*(0p5u #9+?xHl_^PwN~]Uk] 1iV/~WIY-C# m@YcUku0ijЩd]`a/ǑBhUԒ$IK,iT?>TUz>ךuZ X˟+%8R F^'2FR{O*'y^&YtB#zNK={s$}M H)Pao߰y$*>)9OU)]W~ox6Iev,0*W#;eaQܕ#MJ \DOត-@pۢg~4 Hޒ5èàs|rutEH <~+jTFdUCF y^z*㹫_N/ %^oо#6ӚUpCCN{t]Ϊ$!< \a8,a0"˹!S[}"08} ;dNSK!-VLǫh*V𽓕{ÎjE[ۊFVS7-7i> }}(Q)%c#F$H9(zc|RnKb&<5>LGj`&dy>i~UU#<וȹ*Ѿ(gq_qO{ ?MooKLmIɲGӖ$0g9`{=:?E&Tz} _l>chy(ipBWy06v?5T[Ӆ)΅%^#%Y9dyξ~YB d%eF bh5+K҈un*Ir(NVz@Hkt]xrm ~~giP)tXBv enخY~bx¬ߓ4v(CIJvrPr$WIܥD9fk]S勤7QeNblp甃zAJq1FΝ*1L8f"]7WAZ^U|ZF}kD !O1yM|FQms,9v- tGmz#wJx bY7 n& Y7}7'2dFJJRMխIE-=e&5)'^kJ:8 ٳL^6~g[j/syVD9f\N٩=P^deX' Lj+^R$;Qf*j_=̀E8:}JNYTE?:/a#F=cdίTS 4^-_.q׳瓋O~)&+8)geS=eyY20fp14T%#Nh6t;B O U;~-w"V/s#xTp3/QU F&6d\"c!Z#>қQ!R.~E/] + 9`m/> Nv7o_|/% )(?|\>30Ôi:X0>5(Ng&_\1:I-b>{M.n,Y dWDdʓn 4zVe}1N(͐)j V)GyX`<!)=eBR1}DHs͒a`&-OKEDT0:Z3d*҈Ä?9Q$#JmtbrO#T >^J?cc91HTA9тR )g9 C3ZR ͑VȞGH{H*>hNn/FBz si(͇ ae>2Z-ẎVC3̇WC+!|Hj;Jp%p#(~EyEZ'̓VI+̓aeHLrፘVLNDٓsYtqHVRCʶoC~m>|:!} >ޥCe-21mw˷ZU<" ˰L(6i%>XA ~ Jd{qXOmB`Bk* `MiBô)A, 54IC@o8ʴqK1pc$C(@o+aUUG)UGq:RFX奕~p<Ia2a%JU bF%ױՀUnmiܶK>|$keWvT]q&XbuD~p3Wa,x\ v-w[Mmn1-Ԏ>~@/]/Gr̎ԂZqR;2ܒ-U˱Rb<55mgM9{_bf2L dl/]Px?ՠHVK-4v5۱o?@KwY/鳠`0=X`")ָ.p-Tn>z\"M&r]0;J*ugOw҇ԽsKݰ1$dlE.tWBwm@BJn!u{/u6wp41zqf _z<Z/HHr_.UHR@֦4*Ió500?>n)m\Bu [~BBI!#g'S"Zsxs"i[ŃM X?ؼ/v6ۋ9CvZcl$gPɞΜɚΘ$XLzӼ^ufFΆ8W'I}(n{~SR߱7rZ %۸el%T(|4_п7$R`[/xW`Pz+Z囻 4,J-o/WRR;A&P>Bhc[ZԹٱBZJڡ]ЇEv~waz]Z_ {յ03]Wsa]P"Oŷ&uz;(S WmtR6= `:oC RSrC[(tVma;ق{"7kelZIuFs2Hk pjDWq;\i*2D܍[erA篩F\Si = :ʟRexh2`E= /ѳgm:aE/:Ala΢X'񕦠ҿjZ$ױfAT*eB^&4DJ4_cMv3̢QЁ7a0$7#nv=pnT$;ԥ K#5u;Կĝu}IR $4jW‹OY-v#mb6aUYJcvdGu"8D'.WJ Mxn&}=SC|h9KWFJl%.gM;F! 0=hrln[|FI\iDXA)- FYr&:[2& 3@+@W\XђXդivGeY,Z֦$k6g*H}TDmg 5P ^ T^\N`ݿ#ր{K#:Nܩwp#ܩgdk4m1(? h$H{ e%ߡ  n"|O^mT5UC1L`IļZƟڅm\ր4?M=+(ݗ:D_\\s|.dtFB3k )N,4aB){qufb+kO@-]S8ఙpJzf-6a?˶3Ku:4hw#Bp*3Ē1X32= Fc3j|4'WrWzJξI͡*]iWF40z P1zOZǘ"݇7t9οPzJoaH7ƿvt'l@f`1/6ݬ+(-"]l|G\qՂ5y1n`5y7y}ky75Ǥ 5m`k45p32zӋd)k3>aP;F7JElW7yȚ+Ǖx$Ȓ??y,.߇ c {FA0Zy"`@qVZV5Պ.A;R9fcQC}i~JtJO6Ciڡ?ѭҖzrXuzU;\~;2˱U,jqv}6<-<'` vм.P!,Epi(ߴ\3X. &ʙ`H[:VQUs SېA$d* *?"Mg7d:PrPNVzbfNNrx4$Uk%HzY5,d6|"e kR$;ez6yM?u#-s!(3, R|vRtiŸޕ7N50;9T. #,Q/6WF+ S YJ=MNAs/ OSK,]27o#ޛwQMt%F؜c OUvH{feNQMF5j0qe:2 r^ʙOw39 8ydr0j}orzzӲv ׿;6 ǧ)[ho%ݱ\i1ȮȻ2VF%` pp,B,#-mGjK.{wRD 1A"|$1q-ex!)yzj6@ͩ/*m{xSvGM(Z@| }zغ{ ב_I34ZsTkg[?{; qֶ1@^E~8.i7{?Y :=?K4kLecS?mG^q:=⌉f.i$e<%%d#qix_4 H zKNuncZ~-2( vH&fxv|XJ.Mre tn78⻌a;.*^^ k\ֽ81s33K6&0*&X7:0S}i(5.c$.YժUNk ?߬X^ՉJ:Q~GSR1d,3#XȒ9|mMبqg^uZ>F?u:.OO=|N~6P٭0Âd_4@ izgܤ~0U;v*d\u*H27aM:IeE$b}-v BcQ{#ct4D)" P,N$E5lvcʔN0RvQVvjvLxÁH- -QeZcku{7kaoF8koɫy_E=Rz1( FJV~jW )*C`Ba慤ȇSms>j9ƅK {Y_OɫPj!3odûA,FA8r0 [x Pie} Ŀd)HYVˑ0N]05.Ψ=cDU.TJĔ'u8Fk(X%[8qDK][|Y5Q^[Wn p_v$9Hk޺-Urf B`K^>1 #R|A³?8& øxRrjm-S. NC`:{ה{%vcz%sW7 HpMCu[<:vL"a0 |VIc!DYj׈#fA` }Ń4hGwC/~?ֿ)=^Zz=0B7 )]b %Wi TkSTjsEqd_z^|+T6z^' +2dU߮kCP_jy*R7ʅ OrB%4ވN0֮t; ~ܜ"9z_,gm*1ؚGCQT6s:ˮ,NK\GO(;c I 7$ D9t]-- }jE:*qgݍ2BC/.0*pUUxӸRIqW{Y#Dr?uRJu3Mrû#DKISI8T4ѦRG :x~WnazT-{<4 Q8Ļ[qx O0 oԚ n$Cv;yMC-7KeOSxx$ MD"^+ȟXV * BT &EZrRBNT.zBJH(?I(`l`<ߡK/;S,>ees.pǯ1da|P4.aojxRoFY-d *VNHew ±,#]<Ҵ.Rt$d1?%ٌxe6m'M~@T Z+s?T}p Ii+ :,+@s}8H(CpR3_H>h$a*vXf14#eĈ"ZEx|ajm5ݡm1qQ%Iad[ f3a$%fw :.Ҳ)$> Q ƀj )>O؎gQ_x[+]ȭ;tNgb1F[(st(O,7m_`1)/ yo&GV{\6np NW}|C\aŊEWs"4$sGX (UOxAۯ&&hN|L֠} aWY1-čȝ@~NڌSL0L%Uc(+s椩^^Nm/;[Fl@OG yp5伷o#x+(8}wd8SE|m`w 歁bڏͬm/?M;81f eg/~)+ya֟eodP} ftٽurWkr0^Řg!9}ǀ}([F9L=ORKʊǰbG1ScBFj(a% &lH-r)m4m(r7knhQP(%o)S&烙&3s<~UV/ZxM^1WՍ˒_>y^79q0'4i,;}lg3RFA[b^soymwt#.&3;l CYqVJp6`)F-zo!/Ȑ>i1 }[$Z)h֢ԟն>.:׼ɕux0ƘVsɝsJ vӶ;oBu '[颬BFII% g'| h-9s>3O|Y4mxp*@RK#EbgaXI9N"<٢I=w.s.o.k.gWc"Q" fAH2qS2?>&I'YiIVZ$+5 )\e>]&l.s~~pVWUʌ=U O5]`%ov@Fͺ-$碪JSRٛh}WszfdXdl8B~e &GM`ԲUq*W",,Sh!u#t{h{5i65dTfZyhaR@@cF›TÎW75/fFG3@6PqaTѱETY#*!Z7AeiR>m,M?jܯ^yA:$GDm)0EY`zn)1ݱX*gyowY.ϣJ0fi~'jUuyhZCnbPȑdem- L?Әk7{WXD`k-\"Vpqvyބnn/. <|w^[q^`.f%KLZr$CVkX/Sp^|cf BѮc` @ctmb\Чqzu2=2Fg>: \Ѐ00@`tCI:m]eGC{:ԻSGiTuԚW5ü0?3ĒHs 3OO-r2Y:ɛ F_ikŭg֤mQdtTY(5[0,EIJ& !n颀q4\+Pi \O*t8%ML>c9^ n:|>^T+'LabtcROD<#g,*ic ^$ m$ -FL$o\v&.PCWsM `^왁v)??p=qaɭqL EB[  ؠnBLΒ?¶vvh,*#O)ShЧnJ_P XD8r},̋8]9v[񽃄#SQG)){o232"y?[N(?qPE/>ot@M̢W g1iu4zo28a/$lmefŷ5Q)fɱa$yRZ={/?jp1~>ax/R;``Dh>,pBT8R\,MxB24`a-ImhkdSBN+L%sTr&7wЅ`Q^Q[; j96"-_'n~.n:JBp01EO"oC݅P/pepocʝ~mn wi(ڠ݉xۓgr/ UH]L4f>x?rLJ=Z\ k N4`R+IS&˱9N+=tRMٗkEZiD1u|L3?֒fV;T|djI#Ki~\8'z Bm>Փ AIC.n>]V;A2R[LHx|vzYoӻq]e2г97Pn4&*^"k܇*e2nUkg.Yj q|%ޠGD&@sI_^H霆iF\q)Ñ\ txhXT1_IJ^ GU⃴nm,f*%fm@薵[:h&Cop\)__o 0m,)/u=d={#0_ +u6\|z31Af|SgzE1 P>a& `01:AVVg)=ZՋJvlڰD%K:Ϧy[]_@k򨶎r'&RMTUugʵ~x+vq9L4դU^mN.+ !J#rusTfD1^P=D}!?|,{.4Y/l>q]CUdDg,{z@ݹQ愢ahf Yw`5tUTVMEj5RRGĽ02JeUC'N1C%r9̟wmn]F]0-ak0pLGAd٠rǃR'bYCmǒd>|>F>l#گ*PSsʍ?vacary|ڄjϋn^t?5ʤ$ܲ<4ba^K<Ԇ0[LKfQ3SXwF1vjyGõ]k7v:;Vt|ܐnD=J/vҳ|ީIΌvZ W ؙ&L%6q0]ϗW0K]ҝl|e1M >`.刴 _+6-Ź<6c%G8*Hlt]moq^΃J| >E+beh=-K"Tkr͍7nD}7E9c SMa@,(<~>u4x/,%A&ܙ,7qv#ohut&Qk=NJFYhjd}s1~WrU\F=&HbGi!Lמ?8S2 )O}H@81.(vpdy ˠ*rѴ1}̵*Մi*I˩=/1Pl9`L:t++k^r[YC>q }mԌ;ȞoLv|Z0H;Mw"a=" w )ˣf2>Y0 L*>#+Ykw:W|.Lmr.V;7{|r{.9UR.1{пF.Z ؖ{MFboG(0[xhα̹%݅)VfۍeH,dWR]΄OIۍfi\kGGe]܀cd ЏU ÖdR LwjxaK_OrX֡&ajo^LaU`FR< }C0h <Q)g$V ZR.JD1[% f|804y#-ޛn"fH9ڶf=)™Th _Ɉ΄jŌ|Ql ۏ6{{ %ƥx$oLxhCSp27.ux6a:glؿ' 7a0IB>Xg* zFWK.BPкqEv4iÑ>S}T܈=襀5@K8Ś-%hMDHɽ5Q i$J dh951>R4jGNѐ8$INuJQERrmn?.-*d bO}:@MCbS-ßZ/j4>qV a%Qi nbVfGdO3Jٔ7l:7iet_RnSk%t]GYER҈|/tx8ܶX@Ŏ@1KlMGd\K<%WéAzq߻zEtX &͂P=M/02jگs%Ky1^gG[0`e ڜKn$2 {ĐM܂ia}:s2be5r%Z66;Jvh()Ω$J]~F?,HIiBޟ]w r~~?YGjc4%u4>~>.RnZz$IM(52i)yG#Ť:M|R{xY9==%29ŹQ01o<  ǧ]k'hoedDzjлz%Ɖ-#@@fiڂwk"&9W3'\\6Zz;P5-E7}OCwM(g@ #LI#x 5 ŃX<vme9 a7=/Ͽ u"`ɸvx̩;sjdUA7mg[{мim(05@Xñ::%'.D00'8;؊;.>O@s*s$0% W2pzȈO 3zapʔ zŅ& D۔>tO4q\aBmn;im溎N_NwVD&ٙ~EDJΞw%I@`L-^oO.Me6ijIrr}T@HNFH"0mn \64wF>H{<2h7hZsm`{bą?P&w n33*",IhQ x2GA9`I- l:^y:.#fOZf#e줓 <=uLClSc"nRHC!quǛ̫tMMp}qBچ&8j[B-'glZ{.g>Hh:b: gs. N›L;eKI_և8^Xh`Daw ~G lw'Û [L9nb"!TAB?2P)upHRdNǨbv Q K'|Z+Ja?߂.7>٥gBsl Ioի);-<~#BmxeZo0Ɓ j L/ 2OteKQDFmZ SC,=A?ש75s7T ,|f ҅"uK\ۓ'βTP]+ F:=2u,^r;-%ł ; \q6 Yc4% :x7 f>uo`%`5/kWf K3L;nIT8q`n^$5̠%6q|U>ٔut3J,|''~';%l1)%lL}b;}ƍVd\PTo(qpu=gr)ql(J\Jg> U63$uivݭR5%/.W]U Wҗ9 ѽH~*NɌ!41xm> 72]: w9H[|}8]ugt'.m7ϞB`\bHg':8zmf|jy-=ؠa߀~] LO㴍o ]E57A@Kg& O@X?ӊ)H"3_j%YmB*lEB3MB=$80oة #zd8**IL!И(܊VtIlJr]qntƗB*ڤ^TDD-[M֍@؁Y4ӂ#v}M`4ۖ2 eSUP.XT[6e }DDڊފc–*&-F퓥2_;Ql"8fn2l$|p]*V_/XzDLRbXI8k?C ,[0BZt-|m, zMc]80]VDRbZ@0P_I '7tI}%) N-:G?cfP#.G꒮@T. 5܉>ܣ2U#  ( >Qws B) /+-h>K(v/l9Y'_ -CvI&#- Y'<TÎJLgko҅$Ar.xEjHБ5 nx_QXg46ѵҰ &!B?HNdM]iؚXsdxrj%T,\c>dgiZ2$9쾲N4> So1@0?Oӻ.* NmV۬U+N]UwݳS);N}4rt?Bk~khf΁'ě! A5e0Gq0,BW):% Ӱ |'ys( q/Jo *vYaFQKZ hAI0tvX?lu+Nu?Pjlg[YjIl`4ջV]:g0+;lzy@N:m4iVMM hal  Ԯ8f_Ёzc9a~ )À-FfqeN^?7Cbk5NGtkV~0\ir|sw=y|HG#)m?,' QE(<y5^v[&pݣN:v24\p~#AE@dbj-р;⧰O1Vq~X=ŠMd~0>ATtBH%['ZCQĻJ[Vs x)R񚊗#fvx- ?k@ SEUXt$x\9*;V!{9^0bmR9׿ E*T}qGjI9#\lƂkv'yg>s0g;'JT[fC|>/,FDQg6Q`CI.|DI8Y"p`<3o j>q|<+H0R T@v\'.jM04ᘠ<"-.A^`QU̠I9TFF|Mˁ?[p6"`~^|5gV"y-Ic<ϟDŽuqǍߏ7~?n7⾇X#ǧıs{h8K FuXLd6cdonO\LHJFp祙Ϣ҅4RSo0 19t~H .3݄0NA;8_ hdcLP!*uf0C $pp6ʹ4C:̜SsP a1[e7kW1Lb/"a)#tq:V7 >Xg̏Ny\+XO 8aEG׫7ѕ5Ð.vb^bFq .ͼIԥES@ M@Y2)]bn9&.ǶFL(0 *n.ば{ +X`,&CVοn08irYׯ_?LKHs?F< .g*̬ ܽl͆N;qݹ 3asB;AuaӆzKm}IbS);4FЏ緌GQU>;Yk sְe̸D-eJyT X PIk4.M13 W$b42dzsy82^懡 S@Yn,xnIX`/@0~{(.oP[x+ $TΏ?Y "l*e- V-LYTw ڪ( ~\0z{ I{?^+aˬk*.Ne*޿MV5|3m}96CJUm|Om_cNŶ-o;\6~nlO*FRqΘ2mim> 4exT6Pp(nƲ\,E4eq˞.=^`|\Cz5qWH U)KJOl]|5=:x}*3ҠKCqG.UJpy$t}EC@Pjl ot2gtGm^pn,dpcihvApnuRQo[C6=*TY9tcԩnykVJ¥N=moG$ _IB2^Q W^+knLtz(^.cEbN.0< q1hi~G88ыcFDa؏*& e@CI=D~+  ЌҖ1p_,H?l9?vϚm(_ϢRƷ(x!Ǒ3.G5&AO*K/ gCy̡B[n\jcI򊻡.?5|{Hx8W);Z9ju9,2J> eM7'S@]R+L)Bl pޓ>6sC'>Gv>\dT9kG] =g<9O;h@7n"M+:IQƞ!qc7Oܷ[,!ȫ1CxI^f2LWpz6s:z{vzZ{EBXOέOO`Z'gf {]o칔)*t>{^;{iM{EkfC/F6&a]dugǭFvŭ#׫mSlrv b5"Q\7pr\9+iYI?*;j%e$CLSz`#qB2i`ڏJf)Ҏ,;$M(5Xlςl{+׾+!% :ZD|+w:I4oʝB z >#ɗ7dgcXX={;/\̈ Ы]071gs";>|ۀD?d(=zλ`^H;~:Cg?l;9W /Gsl|}9jǪP5$$r!2 "'m΀C dm&Cqc ᥌96|:hXJ@qPb"Ԡ%Ĭ0>+o:>M.gE0HVp()gp12fD)g5q&jsnU1S x1/ @qa!C2c5gGYe p5OW @z^I(+/ه0sU\ΣzM)_`3kyşoŷr۹ŷhwskՐy[\^-OkiTs'voG+;{TsO2`3Ғ/B%8 q%J(9~RzWg'QzO)eGir<ш")J(!kxx7 @; HRB*ϛC\6*>t%uFξ^_%Y/"%+a1`,xGNh]&;Q^}^aw+f~[}K+ewXٝ*~XoŲ.epwZ=,}e_p_dfOqeg8w h*|,: @7ǂ o^l:?+b_Yhe~VXLv/[+Pv/q) c.).an|v ad~VpvYN{ǁonP ÛIq?Hcc`^,1zK},AKP`Uz?X,iR}-.F<*0K D. bKĞ){y[',FM|oDq\P.'%"@tbJø(6J޺8Ρe7ƞ$[uFJGl('A" deOi(2 C ¯^_PTjl}X5a.d/ L䎛BYIXrbئ49}[p<%`h_eBeS]l=ObkSԿdyjZZ[Z[9vLaHiV5_;y5aᮩܶLG{& 0$UdkoDc1psA]-`ÊݨmV776w66@SAwpRk䤽"561dj:As P"_w-a& `[6ہv=XEXύ78*©"*B"Qj װF k԰F kla-Fn+J%,he8+'Xeux/$Ce_qN0? fMZ&hzO77mŔ$#q yj3ǔa4H x $;_js>qzCtG@vhN9DtO7sn3A+̳7?Lj:8+Y:^tJ-wĺ60NqrۨVxssS+ V>MJո"s ?O=wb"z5hl.iFVfb,?]f-1G V))#uYe+bZ6JOB:]w=jz9u6mC:,A%CBm"!OHīxэߚ je%z&.֐0NIXQm a,]pZV{\(1qVu+TB@M LBH;n|NɊ&Dƥ1:O+/uȥoB҇zt"|V#}]G_T[9<VCyB.g !t}wr~ RAe%\.9H9w\޸7˙o&@⊴4VrI\6yd5Z9Ɇo!nLaa[lfGGmӎ6igkFRe) ";V|AWX5kg83g~ˆϋMSqϨkkdmܩ3jԌ5j555vXd`m3jя]#VXj8sgj/cFˠFMN3&q˅^=@*bqZ4>Sʇd;SɗY0!WK~CΛP.G4ZW+K Dbt]uN!3?XdڅJ*=8yzլmQru&<wGq(.ͥQde(֖Gvk+<[@qkyw{L S]=PsZYw{L (cwWw{.+.{O=&zoYŝ{{أVأ_,?/1/&KŐH k EQ0PB+)چ5.ҕ9ޜxvqiwݬU`ֱ%^De[v䖓S5Enb9 5QsI I cLu-%&j.ܲ{rhEg"+"CMVQW]3 yVM) %MgnyJ+b@%g[6TR`yJnS b.`~xb\BL#mw>r^+KuNin4IzNo+y!- UYJ&Jj:\hwmœ**x$hr~MnYMd^MVSaފ}6W!\{ksݏP~4T[j*4T Vh mݏjhhkں m%i(T^?؛L~bFASy8mtc_m_Y C1>Up\1'140(Mc*”ā*&MsZcN: ofKSL0斃e !NHC`cp2*`[[JmH]0]pAS<OZ.ϳqoe|Cm|cp[YK ' Ϣ hp |=_\7FbL="v]m,kmZAo/*)ˡTS˜lnsߴD1s GK[˳9 :iӣ86>&OP 0l,Ċ\L7rYUҐ*?"?Z! Y@v b+Dvda|MfC`"~Ys0%f ;n5RGdqQc%6Gޕ-k6i﬷:5M:^( ,{٪8=:2aqEXN8 F%l~>< o&Nx:wX%xy8ڛv\ m Ѹ&W_ g͉B)gBp ~[%bmv8lh &os6VX&xhsiHÎ|} ah:QLI#5g(; ba6ݳS udLM|j@9o[J毽ڝ{HXAby Y>v]؞g;w3GhN@^cOsjd1M3̹# 18Cސ'b7ФdF0D;^kT`p hY2o _lu E24z)ĉ(Jd@}c=Un>wi\XD|ȻwdYIc"hSdb*2 (bz.Yin`RX s/JPF&p Fa(klGGI%Ͱ*ΨsPf<ʖ o'bk8#ǧkkv _ XJ_⢐0m bZgP34qР!=e?T@D8<3A8 WaQo_lIB4N ~si)-&x6!V>*g ,W`IĂRHG<1Ǝup|KVdB'kdN)f>pE8 o _]Vzj(Gt.FuPS /#LB#NX;qei<1ǘ>5`&s"I8? zmC:SO{#5;"?䙴UVehBftCv`2B:I ;EEN@Pt:"u$R>Fz!rP]O?p!%Y E!P- !{ W^cǖ = G8L?8p֝[ ( *\M^Bq> Ț5*(u,QY٨jMLGx{괐z8u@mf%b X2 p^aҶ\r0HlF>y*`zRWw@bz;LCI=]*] 5ZyB?LȔH63Z -0 %LJLf`ŻYAaHq~I`%lr/fd<-=NH~q W0t{ ]?3  .@dfxY:3(AmqN+7ȣ6PP %iB@h9-w~jo#B^1P%b>ֹ͚(5 S ь@dl{0lLgZc-jIs7L(z^̠@&i.Sy̿f"ibG㈎+#J:JԽ&RsԓIƥ C>r r="['n(ߒ j9P2eaG *0fn^\:Ev= u@j&xcɓvI|O1n'NF9iQ]Iف,-+RK @Y(Ozm2Nݳ2Ω=,ۅ]YF]P*[L4ßf>g k= BOp`ἒAJ7;F\P[ͿX-U*5<}؟OϬJȾ.p5;zI4?\CHzuF(ЈM\(^FAc]EBy!X}FpW4Y! PHkFhzx(T ׄJTMJ$!?nyhm cJj`ፇ+F2?oTgYJ0mz7i59~u3cxm|FK0 fڭ_\3$\EXc2g"NzNÙ9Ysf8i FNx$`Rw;ZeáSL?Ebȏ[p';j!4%;ϵݓDYo6VJ{ζYh!9d1nZ%rymF8@yHgxQ uOZKp`MKo8`Z-'&/3"'N\!O oi(ن(g82Avn,?I8t8ty.eGn]//uᗐwp1D9=a?{zu%ߘ3`qT^cKiqaj'l //*_c$ٱicNx^` /J.;u gmok׍)(׳0GoŸͼsCzv@i@4rEݤ7N{z1`>OAk;:%̜cܣ;NLG+x'FQ$s97bUN:qtffgBC0+LN.7=zmvö=TJ{6ŅslzZ"UȔVg Fh:3(/ȗ `2#xK[C *sMFMBK0sl+Z-{㨅F~uK&Jc̷Ef F\S]zn?fJ.@^48-Oحժ{Ԭϻ͞}1@KN g{nצgR0Hxzhfe<7 ]c'laE(n~ a,l !q.1 Rn2[ǝӣ۟7pxI?2v(fTȗ[T7ptu9HP %r7jv${?n|4S52^gWgݭխ"ػ;a=5蹚!88=:0fUBw OJ%z<-o ɼȜsy-N#,^80A.J"Fvtg_:A%.w͆c5!ؙ[lƝz*XZI)pӁz"7⺴ەs@x`P}Z2b"Ml zF.2xj(,RUô*o岭 PLQ{n:l%hsAUwܹ#L//uѺWv3_rPCyFnxՊ:σ~m9͠M#C1]6a8>MB9r*щS* 1uv/^N?7w=SZqH:]]Z*kWǤFKFz`vx6fVo1]\ـSvC țL䇭F>Wg .IB}Ar'O^ZSA^xf eܸ~= 덬-:JJ/:{iNkJ!^߁}N@}߬OȻ9&G~v:˞`\[[@/FR>YD*d;X6)ۜ2Ɨo ZFpf8$.A4ŀn^Y F{B!Tv^1{Э@Mcj% ;R v?Zoh]4%.ZJWt޸h}p _oo?kq,4q,ci-{0 N|Sp:)0B3"K(nF<-.?B '*(o|t =‰+ZIgZ:*X2+GsӻUZeė.\S *t a2L1+7f5l9+ gy$ZN7(ş,Y]K?Յ!n}y٨㶘 *6;zTzYhɫsD}c<>6APEQkLáC:\.ހz;ܾCb( BANu!,6 =Ki.z<[6UXzݍ:h4)'ݳ692˗` m,ZucICZ#Bcg_^ކmI=qc 3?zCPTZg.!}3\#ux騑(oǠa-1"dK7m (t z{V0V|- Lfu2/O %Ol8o e\=:|Æ;fO&z:Ȅ$'0 SFg9D2yp \ot ˙oWؕ An(}]C]dQ9:l]"x:m2¸!/'ʈT+K~xԋz&'4,.DSYm@pE,w+#e0~w/ Q:^M**EYOafw}7$Hx|@ɽ8z?oϼ`.-kF:Վw5_MdŃw F#/e{Q} hNeާ 4|G6F(K89 -.G "ѡ$^r$hUmC,,t1E$x9ƪ;, wc@>SWߌbj$)Hg>JbOq)@y<6۫xIr[?HG8?„"-ٮ1.44u vȇF/pβzrgWRZE x0>~'cд*0mwFvs6Iύ e{%LZݰ FK1o34DL-/0 ,7 3aLo38qxN..)NW4#׽|f$L MQ|^.r 'cX1.YO?;%IO~k+r4?eIjh6 Y,u97yWc4@WZx[y\zln w>㲳/b0yFnYvi8@uP6"F޸c$F4m,"\S3-8mPP~[x?;!02 D~@9q~N,D=hMXg,6 /&Cm2'3=l3_0iy8]_%Ĝ>VmB3N@Sk{q%1ϟ;*epDXaȂ(9;&,0@4@#3_ư?DcsCaȟ\$tb? {U0 ubxyRmaZc?I %ob8pB/V0>h!O77GdyeOc Ñt S"D9~rJ8,rm}bGO1xaaep8;,G:.'Oj/v :h}_j5}_Onp  x_߭q64U[cлۏg 7~F,&TIu'u=;=c)%-.X,Z`q`M;qI_1@7(Ʊ0R "¿ &D۴^nv J-G#0u< "ۃ;[**ğn VCtGo,|ìlL-/p υ>߿à T뉠Z"xn/ֳ֫ԥNP~w.:t^$J"D:س% `]A)a5rfQV;2n"t)p1sW&wM$e/N5/CVouk][>G].b'p0\o}Pyy )rjXW4WB>HSZ7SV9y ذik\?E׈k57qg~WX^a@VRs,A.X iA m~m=$~_7 aQKQM CVc溁8" F`ph$5-q别r==~*t;R%2,w[ɨB[a[\Oڔ4\8lm)}"ef213?el8c ⴇť[옯EdT;mLXB&VbDz9Cż^ mlXf̚Z4K_bm+ރ_c-X#;|}4ԕB]y-^.!͎ٹ{z:m5Z}FCԳ B*4*Mv;{6l DxppO1s%X~-3-fcKM$F v^QӢqϫ¹/^@WƼG4|*B$a3Xr4jr|VA<[pԏjl,@[ iyd9oH֜qp5#&rNv-rp'(y8gꍦlKhESo. PǍ^l!gp6Y4i:lѱqk]RIʑ՝-fDWk\˹9%Iyf7q;b-$X_δ{If2NW!=]e?P\ȞxGn64}O{S~n1B-&οS> &Ro|rq,& $ƐJx< M!D !9"%z d 9E6(Y[ћWBA%a 5%TR?#ի=LkY:LV _bXlν7z3qCc#q"Ls!F$OI@q.J XK>=^ Zm `oW-Hjq9#p8y#(JifR9e.Bt]i4C7S*Fy\jD.)믹g8qb6jػ!(tjoRL.գ G- oa.naxn!Q1S<1V j?!*O0Qmln" ߾ho=Uwv 2&Ŝa_*;w-Ly2(ُf&;?;Rht<~6a]M@uEp u<^{x|k,.+R;=+ҽpX1/3xK"^|Ѕ x[F~3_g9x!()~XV> KAxHi@M`I[uDo6LLTFmXwyD>ɦQȏӐ +f,uiVb4gX1>w9@Eh~t5Y!O`trK8㱀d/J_f M6CE@>aP;}8c"“q\S#þ\QXUS#4R4R>T]պYX|j P="k8&`8P ~炐jGN2KI@Cypc2vHV *D Rn"c% 1PWϞ:>3}RAQ%.=Xi" VMtloJ8MoeXEpq@ncJXw_;ۜГVl1s=>o霑Zk sII,m7p.^-3dn|3_,:Csf 4+a 3}Z[ڒub16L֗`5Z[[P;Ք~= ǘr])G 2HF|Ej.Ή(֯vB5Os I…Ro*@rbrYm?Zv9잶ȊX&{r SA9mNMFCmԷZZ+TNa1,5pl2"d۪`G+fJ>e_ۊ+$}=@i'b#CzZe2DMYM`01.I)o@UE;HuÏ/v[!m:jJ3j1fu>9FwԵE{&Mо@5HXnѵp:vY# ԧIЪ0[g^7$}$9GQ2p1LL@&/}l^Q>#y"7JY0xTw 7? ~Xd?Pnh}bb8"|(.GtVu:-6qO .i:%T]Gį><9`cjyJ.0]O5)m#0*iJG#ui9=]k]QhxS,_ C`j_r~甸db5i  l#r t`QsJ7/4G<_^䌂>MJe̳iM#Kebrx6_e1i6 xcIF@Xex#%oZ!}>}cQnq)-Q ɐ#tf kogٗ9c9瀣L{L _GK69U\\s^!]Gx.@1W8@0 r P(5z {1#TGqNu8@#ΟMq7$ 3țOrUPL5 Z+WPz,HYX+19ouYO;y)nQ #dC0#xl*XgȄ N5 [| ~[3ߍEKAҁ"\ PV`QTxqޣ}5I( ^ó"+vCbqeC  ^=S(e@d]?kQ7"תtZ;¢Hygj,q2A?1X~̅RDv&l1CS`*4r95&:GzYښYߜXsAkwA>=q{oϏږ˻zoZbb> cb?\F^-/_BvqRY.w ?0jUWSyVTYUlV@VVVbV [t+l˯<XOTq2D,4oɸ \sE7랉<i%g9Ljz;*i97^ gt&Cg2˓ Sri|Ltp[Q,9K.T&),hC!v Vt r=}}םS<] "J$'"ݍ7׺QZI0üi0["unKđ6PoήZ,pק]I]M*ً9pۅ!-%R )& r"Bǖts)&%,y)%MR9`Vژt9ٍy (I `KBC{RjI+-89hussosZ4Ko)%(` T7S8*k5i20gس͢b`ck#o|^3ь DK'Nl_7qrc&BT3s.QcQI Fn)D`!smwa &I19ɎؘL~$#6R=%5tLR5fg2f.Ȳ.9a]:-5x#~/%<2b x|^_K(o t n fS ~Sr;|DOe6#fW6h 2IӸ 2He_^{")54i{"Jm)ޅ( nL8u-ӆ;Km}Eiߝ8MP[6,N>S#*/O`k >Ga [~꿥|2%񀵧k4p7gp= 'dHӀȺMy߁Cx aQ˄\tp˳ _Q&ۯ9PB9)r"}vU>_aBx̨сtGC) eL#[NGV"Tlx x-^x F IH{ Qf!)'cC|s<28*rFo]}dS+/zana!۰f kbQEWw1L9TS 01!$FAO"8I~ٟwe"؝_=]o8tJ+ d[mK D.-Q vr^Epc0{RKmϫ! F|9?{S aP_w7?<3 iP(gRP f]!Rsv:J4WM_) ٽ$c f<6 @ E#ܼlb~Űj0ɘLE<|p7ס3whr΂Ɔ|O VƝO 'cC?c?q.c3S7b\"RR4 w1Emmnp: g \5X V DU!MPh(7GYeZc8E@1*$->0,OcS<7MM4A+ 5щe)v#X>1ֱKG#V(6i295r%`$hL??XBڛ\ @@ȅ@b%`& L٠$G&?w+@:FA?/M"Ja3ceቅU3jܬt:&!LAز@nx IclV*(alPd^ tS źN :g^чQWsWgdi"jJVBQ 9ʒ4Ha0,|c٣t@{ƣ7cŴnC[xs NE n_Ȍ~!bFB&yE,XB2ƿ~!;4LC$ &)k: =Li(Ed+3FОAb>[fj~xmzG -v -sw3c"3|_5/5#]LV"1\,hj=3ݺ lfAM ż3wznjsxB8囖@g!5dT52uaox/NJJFuQS@gQ=%uu9^ ]D#iG8iuZW6p]͹|S{\EJ)Flw(z^^bf<6λ!G2]Azh#WD7‘%ѺmǍ}JkNl(o6ow//uVGo&p4ovyֆ?>6̈REesyndivHx9|*- |QG{QGzd鑡IxUѧJ[mT)N?UPut$+ߢ@zՈGqiƿk~北,~ i_VVP Z|,(عڹܹ TA#-=M}Ss0Z BP,:ŔjK{ʞmiH4>Lt2e$:)l.S\&q{K{;WopBWoa[_ɿ%/k#r gRíVP $E"CėI|bzL?M0C^A/,j}|҄$Ѕva+V?Qb'1SXׁEB]JR L+QW4ON$02+:QY"AiS <YP.plqQj `o_Ew@5~ FP% wةbVVc: a>ůaJ1峟zOIw:]S-"_:nne?IxTon NjT[+u/s EcX1ȍR3HI%ѷ ރCUw$:Qjx$0 {48뽞{[Oy0m=g[/M8F6pՆLS82fDڢ_P-%% #TP%'Zd'Ɖa?Z?D{췳iBN3R}CwN* _bq-yx?xa)K*I3_ 2?ąuwX4-|zeg;k_#kٺtmZ÷T1dR8꼣+;~T*N+}h֦4|PkUVS<-w@KsYtPLJb"KVZڌoB$=Q<^؀ߞ]ь,wI?A*^%~7}Ўst|UE»'m!$<@BGϖOL/ Z_abjyA|k>Ou$]1I ~ocGYd4Wև?do؇WօWj~d#o)FjKODg_Wp9?XQx`9 {؈0d^BR`_K|Ǚ+q/cEͯRaߴLMD.y/+W:ϓ~ZIs폦x$t4ޥk?TD c֤XI%U1 Bt/λGiS_~K|)Nɢ%N{K_*oS_I\8471ȥ2GwK\jK鬫HYyH`RֿpCNj#."; sޠ-0Xd=R/団 h{T->z-2,iM_=>t1)*%3L*2Pf2`)3o5-;ojn-'7 hc"$݆K<GKja>g__e+ޮ'zEABW@ u썔 ŗ#ٜ ,gZy}+Ҥck)$m;P7`a:Hcnz]̶$K$&+n:(.kVZYyW|)6_4` 6+}|drK є˷e=1U:wpL sZ|׫+;X=p7ʦr$Wvڐ}[-h݇&oU_ȡ? þ"r=\]#)=/o&aSWZW[> 5jX E)-t>0=ݿlUHyIk`CP!X%Mk&iG<!GOR e5!NE >sےe* Tq$V+Pu8j1MRcjJ)M ֡`rV-ScrJ_]p"6Cв $2%Ev)l O:hR4sǽIfڄb24eW)q{ύ/5=FhEwcD6LG>#ɷ#>C&%wΏiDsS٧9H 0M(HAVuEeUaY^VuAr@= q`z CI{#A/"& ՛?\,(ص&*|Ǯ DaI 8H51^K;w)8.0 hqysh]F,54'2tVm`FBȻC:af@?y3?їd | IS`%2i]؈Oc`5)cFq?O!O\;՝7s|gv=wh.g0YЌ8P򉁩AXM}{0W{T DpXrPhrBӈ6F|Ֆ]Ɫ$c_B< 7J}*E& LLs\/&4TuKղ^U\,./mC%b(xo $ ^.f/ fu UwRóc]Vjj&X{`Fj4T;E:YK <2*2fAG&p;Ey55nZb3#Dt1 ~ Z]٘D9xp)H`_uZyHc3SA9ZKxւf|4 0?;x.IR]yw4 ;Sk[ʰ%DsSYtJOt-t7t n"8"#Q6,Oޢ bM`_`<=&σ o`]+csϥf;{R$g`f(#T]oUVr^`8JSDc(BdDB,|ċuTf~@{lEp\0})UA!eq9eQRm޷ލ75uO~oBYZ=D)~KR;?Vbᤎ3#=Ć#ϱ|I=ѻf"'Ȗ3 JFRB'o\PN̠9,gI(rKo"QVh+ L_;(`Q`9?Z{~ ~U:@ sMn9<2Q+bUkf.@gLl~iQmRp!490g`2bo-J?EE}4 J.E]_n2(m^O)am+m⨖'N)~z@נJ+&\߀YܺәFcV.Ta"*-BMMw10J60TpHvT.U4+a]eYi@ӌ%Qa*:%Cda姉> |x^EdF1% /+Ϟ ?~S`|?sJ.u #%ڰXHcUjbx87טg#^pVQŎ#*;L-%gb6t$1RMe*(C1ڦI &Nt@elʴԦ>6F4%cU0].-Yn;0AfFD/*}Y~}_`EfooۻZ_[ۛ%2ۙ?~'_C~#^V$!eRI48#Fp&HΓ ml ?@->혔u <Y+ 8M~eE&0^}k-j];M<*9$͝A|TSzc<32_'CG7=R-u88I#4^9mQHkIF=8o/Gl0c:YtG%pa$ 9bCș!2Kn9\7C2*7 Fq0+x%N(A^pl弿PR͞[E__N ˅l<]Kʫ4&3Њe͙҈jxyxĊЏ$^U ^]ε1^cœSh}55|==?ٶ+s@1^돝KmFAK[OzdTL ⡮MSѤU=TUkagO8`,: ZDcy0RT˟M, C.ܡO4-<6 ȥ<^ۙ-yiSvˑlsij"l"˖\V4AiM>^FHr?[qa8p5ؙt7U6I0aZL4bJ7݆%y0Q>-Τ5dp8h4xxLѪ^]^,wkʥJR9e.Hڊ-E(W i>;R1|lCĩ;A q ]q,u@_U~<^ ^rGsR lbLh%ArA6.`6x{r7K),2휺T%:k EKSNDYҕ{ ll&VfX3c[cnǍj.;L0}H`-C)YC1M.,OV#-^G4+0Dѝ|jYf>5ss6+򠤴gױ[%EpM! c@N9Mcb}Jt髁ڝVBN xWB:|$O;#yM /?)^@T?jk*<131lyw(q5 ]喽.jB/{,=u3cK0^y@~г;g|A,*›y@D 5&kmJa!r'I@A"u}yoFd==fs"!@! op7 G33$+T)J"QT\b&bbQ܋_S%~,;1SlZIIH(ȳk?96I֯0|)H0B1<a< 9 3-}NE=e0Q8\ Vr ݌ƽ a_ezMvl5|*`{9;.Ib)=r; OXuGٖxifYC2/׽fz:Ă)FwS Hls* &XNz PƇ_ՙxSz'pNН}5$gz~w<1vV\#kf U,L֫zC\.=gQq -,9⯈zN&(zd(㨔%8xY4TJl@(,])V|`N %L{/l[k7 "W4L|\~5)';A%8'a뤇xx!>)5+㧼&̿1s))Шg<W6*&ڋy;5^m4.=(=XTĕb=$7\So#;)[cs0ɉgPIQͰV?K^<-ᅰ]^-EH^kT"!^{Aڣ("i\^ Ed0,A)MG Tv븃~a쾋>'(ШW+y~!6vȕ9ҧWē.a7e+"c!0"NtT~]?]ɂ D`S`K++@ H3OU4#)Q +$Vި4F>9٭+O֖.Gqdɭ &.Ev|=KzPN y 5ڠbb|g# zJU~G#=[4?10:\z1Ni ϛ`9RnZ B-pl_ ܰ ̷K0 |m]G:`Mx(t´$1vD\F>qs~!P^?xgy} bGAt7]{u>*p~Ioqꐻug{͚1d JI 6/(:chWv}u߼70廇ύ(Av4>"̽dF5m't'o]'6NmkSDh4ud5màߏy*Pۇd uxdȅ9.AE^uQ>V!}q8"Y 4 뛨S7ziokb#}-hě( mdt)VkKA­eRcQ߲&F7-DLg\^iț!꓎A3bF59@ тU:l3:D?Z)|.ޥ/F\xQnT&ڤ~ %qBԩO<„xBMkŊW; W= '?qY29C&z҈0WV(C4"CO*EMwe(0Rf Jn:9(`.b\$na?;:b;;xlﮃ*抛ms̼g2guR| +}qFӋD'VX'ؿ_ :5f}JDL\y"fu5-mx,!Ld?JCR)7 D~(f4ߏrE4`KCS~XE/K.'; nov^۪.Zmr֚3vXux٠)A,麬J1Ot^6.lދXh8@zŁ,ijxPӞE^Y;"eʑÀyKRZL{%ڲRSɊmLº8?RjGU+ ҂攽߀O0a⻂=\`O9_~»!52ovoMU?.M-p [uR6Y YpɈ憎yQ/+Ak`|ՓfyӉXwu\AN* ϙ}ݠ+9Xf+}L\ҍ&nL*5"6( \ [*Zʻ*e(Xv*o^mZ6WpnpS2G#JglXAԵ.upKchpA?5Y" CyJZs;B?r$+,gCm`me`lvB,:K`8dec,~q6|@fMqX8 އwՀcL#MnR*p933TPD>b]$Xx1MrVa v"DŽɊ\1.M]ݯ+VJmkOq+2{$a`@D+L`^q.s~6.HxJKDwPikИ ,#wv r1HƱB8j =W7oӣzxm%5f"p s9@"PIJ|%9P?q %FJ4[/F5,ӆR~GerE&v$h(ČV_$x'|Z2IZgՒ>H.ʐ_sD{bGJrNNt2sYzw_{ C?x RѾhwKVAi2.e|S' Tbߓznjs߲[zs+% P6̔ 3u0bP{bq9\DPG ԅ)TW$#TVhfT @!)^L -ff݊O q@x$N4+N KzjݾZ#H^lD7fy\3(8or$T:(l&]ג"乫\I}`kKAkdmS/>U:L d Y|t pBfy+ HbhJ~lZMo'4P7/HWʯ † UllMWڛVU;bA@׮XT)5x ,gXh2o arX^v& <3;%Pl:=yM2ݹ )pb]0\m-_֙P"]Y"Q̇n$x)UPϴxri,!6lQNQa3xs˄jEv$Pa'4-Gǁt^z.Z=oa2\j,nI)^EaڒGA_OvF$S;}pW_'.ANT?y+)}Mw PLM|VQB^^d*.Ki[ڕPl6^kgZ>O}˶ty}*uLi~uР*oYwcqKnIoޯEҠbwV0%X%qDI\qJq[t*;_ӝZNx1:5u#‹Ź g# ,*аCshzP%Wt҄q?<&Mjˉ|oO#g f" :W63v14ˉ7Nu{ (iLeq4Wk*ʎ(khk m) $벵1}D5%OX xǐ'yEj>U#x}%ilIim\1[4x |[>+IZꠍ&gڬ>3HƏg ӵbaIizf MKDgL凟.gf60t"UA*J(MW.}&IY>[ZE׎1g0+ra'@ M75D9dҞ?فɈ% %٧$.eٍ80t䩂}S mqT#aM4\ƕM_P/^=9 \^e=U;rtQk\e4vt ( : )jZ`kW9g*4RF=^`oh1sJoj^=N$e$]j Ta0 iM Sȉe1- bdN ..6]t &w(dp4<.X:q&)ad*iojuT⠌UG3)v:cy:V[~x سr4BO` s4-LJ4JicDНJdξ%tM~x8,wN騑b҄pfaF1Y*}R9= [ADj(I|踮9^Si1xyK)I0,{Pm@ewDGmWǔL~Dl6Ft$i)-!Eƪ.҆^#$I*/EpLٳm_8tF˂~038U<Afxw`]Z7fu'E\8flA+Q"m N a,)Q^Ǫfǿ> $ ULA]sLQWK */{%jO>3GLbwa<.7-a:+1We޴$Ob#e<R[j J*H7P| 1_Sih1'ۄU=J eX@WCΓؖ(ĈL.3L*CMr  .|Hpe+_ z3mԞ͇Ж2~b//tŶ|1}<֏4Q;6Īu)ȬSg?, KfA {S>K38kjh>!V},02tlyr4O +QHLY n;}ِ"7~G5 #q'ufQ k⾂9-1}MJI }ͮIz (m/=cT&^wYL@dVtMJi%Uxt-}(lbz H\Gi!Q+q)4I@#]w=Tqg chC_fNY ?|3մJ=K1x,읕D֪<ϦCMMԖU{01@8ᑧnTn\֬Ŀ>!n [L]ٹ’&x!ϊLYKTNMMOK,ÎIʘ˝TX(H4k R4БoϢŧF ~$MzCAz|k EV(0d2:P[55"2O %hqerOF6^Q"5""1b ,_eeRx86˭P& %V{f-"&4$k`z./)"^"+ePȒ˞p?㙉3R9t~D@( ..ʆhE̜ƞzHaItSN{m ]KN|oBVsp"xҴ'<\^f{kYcMac1\=xCs,72̳c7%4 KsԲϻJ (Dx=6:<$-X c\SDe+%N'R"ߛ FKbz Uɒ|ЊnNtи-\h9ld0q~!&Rbh<VDL[uvo|"* |'̡.t@Q/_G+&,!yӠ;2]sXbVEveXd?īLpxv%F,x Q\yBIUA<$S)al5b/oA]damY0t<;pHpX $gjc nޱO9'[9W7)Ddwg!n38\`-e+ `䂡qFC\?g؞5 0x@id^|uNtJKTSW7%n0tn2}Sx\g۾˕;=75(5_hĀ{8d@^ -ѻ,W8{t<487_JKP^;=OБmEEvh~a"sL!~lǠ\h1 % ȟ,j%9 Zq/Gs3xY0p`,"ȊA5p&(q\KԈtf|jJ=>a!.d :Q[wH%v٪NccV-t)t>8ʓauM!y(O'ש'7'Hh.E߯E]c61 "Uv)II*rLI7q_Q;([_( o&))†(^gt$20Н%1GBJD|jAmҷz>]t{ֽ5 .'DH9y#(i*bK(a)"R2L Y#0M~5i{tNAw[bjѡPFXZXU}wUhn((,0(>\E\*r"~muP Y`@N4$?[ w":EE+v ䷜.Уi>TNUeP[lJ`1V@ksb`$~$K' ۑO1F"w [iVigP ]N}|OP[.[jԎ 6V̷ͧ)~hsv~O)AHtHb "ҥa/sb3zQ7Mj#U䜨?>m$eWߪxsq4jlӸLsX7w`a"՝ p6t5>e/v+lSUNZRQZf^ͼwIC\f䳐w׏7%3UdS|P+oL;-)I`?]jJ)NSypRw)绔]ϗrŜ swu⎲/)COy'!C?ˏT[z!aG#ԛcHok1vK.nsbTzA/.v3gf2|;&oOB\ ݮ9o ޷+k5zGXLF`N/۸@;0ۃRп7~@(DWa(RD N1D;:F Pr834 JkSں/OKKrFo{y3@$mṔeMTt_ֿMW\ Q5R*vrV8Z;P9DP+'Rtd?&9t=[R)6A2BN(>R;>g-A䪚2U9ʽO_g1.'-''-$4w*L`΀ LT"%2Y XaZ($j0cGY0<#E9J,w{w{Y{w=OMTAm;;3L%{Lzp #|ש:[IL!$i'ɧ/ӍI{޲@dRTn9,jeqbD;!<4X T(hX ݭegs.{}FFgAFޯYP`;ͧگ6hhF֓ww~)'azx&` ,XFEq֝||m~-Dq 16{hM1rt4_Ƚ;| sڎ>o%S|t㸞Pys31kv]% c]W/!Uk]GD_vj,MQnXeee>4p~xSr] KOeBaKnK꾢7{UA;'fMq }](Y^ K&sd(wD[\jKKJ̵7,n(AXCmj,4bиƌ@{ K$ $r>;PӁƯzCx4ݩ7܉j kRx`iZc {fEN "u>!VߗV< xU@"at@7_ѣ lݽ‚{m`弶tsr`Q Va##G@tsѣ_ 57 O}(b+d=X'UO/[X.] j 7͞{cXM֘dœ䃎XyxV02;Qvar6bj(öڪtP~(0cgmj^I #c${Lؓ m#k1Ee*|OPc%GFC2:̼6|%c!@5$ےëh%&Siwha a/ΰO<~m},E0WYR1G% Â0p~g@q;xP!Fk_"K>Xd%Ra"״ ̣[]O=PTzp}&i wxb VD Qfj6{Hc)=_Oԃ_?'%1A`ንU6}*lj|Z a@}I0KX Ƽ;@C, nt7Q&1 Ithbl0q[P%80LK[!#N -O2thF DnY|a,)G16EV^gwKBGZ/h< -Iz2k%ITSbu/ &m+FS#W 'fاC?61{&xkj?qo nl:v@-m7ӎkv[{2(dy:.` |ɬrW(wc?pa %>F u>Wff$O8$bD(' q,Wo2y"jY2 觅z5 ML|mД%~MnL=J!Y#,^(VƧGM5Nfqq_bXV`Na/}&s-`&%a4261&%GŤKkF0D2D12ThoZ F C#3sSٖ͜ J+q^Si2LNs< fuѮcKJ_:(c w3^ k4#[$MLg!Xl5fhh"xz%\Ŀ $OhYX휟vgfc{]9pme`(^.t_F JX&; f(pQ"EIf+PL<pBa2QX=_[ތD {7H|`@fuI }rd)M\HpJBH_{Kę͉{1)v\qGDՀTb8F!@MMgBYlDp/BLw1P!AkF `R%.UQHi (Tyl'p!ӪEU)D+_JI_V)8J#ˤjư6˩A ұAYP`✄5=`9SH KaKzCRC&~&dIJa\̝ IX9s4 ļ$9xPE5xq Q Ѕ9Kn9 `0YQM3 X%=j h}}!g~1D8jx1f̺^rRF뤁&BVXSSAЙaD9: KXY`mDcqhaduāXa UMKT/?ci}UaǻeUEK>xE^_{GQ ț:ҫYZMFGR%mMyNq xdmY8', C SE`8nS?I@z-S1:O˥3gGP3묗)Yy6N;\:M(g4([2Gj6hgh,Cl4<¸QlIcL <0?l#`.Hao|lb`{6JJd0/dBxfFżl3 d9XAي1xP* m52Q&%DV+xlѥ1^°3; 004 W36$ IU1DzhmJ}3KOI.LG9]̣1; _@5$Fpf.sIv@S&(`` ZW1'Le#yG ZBޜ.[ijqNa1 O|ֱVPv M <ق($_) $nәPKexj%AmΟ6AL&p"[LNTuKzTs-,)Ka4q\ nt? }y(:8-+1L:M lPJA{hRy9\Ä"늌[on#_dn{$۲-9q<>#wGSGJ6zJJ; "X/;XU$ hik^7-L.F2ʴ/XJm5- m(A&L_3Jޓ >R''2܈t} Џy؜ S@fqmègӬOYyA!TǪ 6v</AEdֈ\եWbjf§L#~@3"9 TW5EM&nI? ƒLCD!椞 JSƢ #iZio8HIe,REU9_M;@8>bcc,\\?Pu]8w\[>ӂz)d-L(癷/cx +0$KC#!KQَoyɘȾ. I7M'ْB/nAĴG)ʵp,bDƉ(Pig j7?HeH #*1:ي#_b&Nq"O[[!7˛)z6z$XyքlQ-Qn  (_$i?| cZ>x?AHr/SB<)7Opĵ'HBRa[l)E=2S#\k1Q0e@;*B?ԝ(x"C'Ã,-FiaqBot'zL5]$%T3a(vzI4"z*TiG}_A?GjEXUmV^0f6){z t#r~mrVμY eVؙO7)&\;筘x]B'SRsi3"_*cs;B!qp`b/)#e(-q|g}D;Rl|n8c-‹$'lMrNOKaa%ո.dip;IYhSzmѸ~-6bN$űiu:Si08b* Մ\m8yHB-,1wȝ%Ш呆XˊSWjLH|.k6$*n$hi:!H(_>H}adڪOG(cG3bmL6|2ȩ Uc 4V!؟{&VYnG+mു3'P'Ŏ6ʛ*pۜ\̼mJ-FqnOY] [ vl⧳ynP&5l"Po~0B2֐QB[ry3  3Rp-9w݈yim6*nwƏquCu?o}SQ c.;W>X?|" ~%b+R AhpFw|/L¹s@oO ֏e?&?F͹֌Q4_) |_O3mg<-xjZY QҎU8hMP!c-t?(]^:-[O٧HG!&ww#6q=m.^+CKˇ%Y}riyM1n$vSL"7YgF95j*A<23s/l5XEq.׌BGhdncN@Hp.r*7\t"?~' dZ*T#Dd BQ ]v:T۽l6SdIDe ,$g(gsG֎8~z?et'>.eRTҜ"/#rbEvG+C7g*iXmwHx#;ˋQb4ƅ~Z,a6Obs.߻' ːV + 8$pP16Zcqͬs1r6fux+|J<<ǒLzdEun DqRvi Em G<,9K|8g༉O9 >I饲}Y֮]k\km#… k/ڋ`E"^{+QkzVe`mlE?uOcrV$^5fLX cM$o4p P$=8S 뒢 wnc&/"x(N@]xjwzU F& oa9 --=c0e[\j "Om8(rIݳztWKd.WVvzcV^23KjB*ٰ\Asb Œgv4+1p«|RvLiVpيE^8Nr2)pmAʡE5D}m\4T^Юw6~ydoo.oX n6^o;>Ԯ`-bh\l<@p[n6w;q}~M0M]6M(ּ!j]oeD5be5vlݲwW qw~Yk\߀p HYuݽ]^ںu  {Ӹ7 _0rݽ7uh@`C!Ԯj@{ >oWH'4fYgܼA #&fp` 5W tѸ}Z ֠J6: -D@w M$!ije_.ԯָwX1Vw-5JFm0v5.Xͯ $^k9!ޝ¿gfg v{}nh~9q7/kA`o3+`asl`RmIwvXi8{=oc׎ ݐ[z{i9޴}knÙ8`[ޣwc<:xSLƃo;j UXi7޲B֐}sH[h}`zQQסlq#b"_v% _OV Za+P)ŬGcVOSˆdQ?m{MѨMR:+㛧oOyxnWܯbz^9Wzc giyXLI4*bX5bp b@=౐rq?O^cm6X̀҂^v vhQA9x*([Lu=/õ:."b}D9~WB -xI)`a jDҥɎMęX|(FfC)*#U7hyi""?lH$oM>pSd' P ATBn%|L7i 39Dtz_0}R=[D:+&]ySG}_(3=uQ*ol!gi!/s&.y.&6 "∶te d@iJ4SbxEjT"كr}ڄp8%Fʅc^1ƥG6ME-ukk#L6e"Y֏iƱsq/Ȗ~ R5VK"A˟ob}a#I)Rc&b%.B@6O{LG [hMmXJZ%O¾|"7SU !DZlA]5C7&Y4.Ң4#4=1Va*TYAk;e~lnu5f2q[SegbGNN1^ЯdoߩCe My7 WgbBaPbѼ7 $ E 9/ ^HEN4,w"*a[K>?I(@,%EՑ$/^$"'hDqw{lrR4d0DCUD1›=C`X݊ttuN֣+(bQX|yvUᗊ91K͎ ܘcGQoƏX0 C˱|NBǔc1r}L>\SS6:/'0A '*ePZ$kf|x|K-ؾ:;ۢ3@I@ÍgNaI_z$$H 3Gu^ka0h Cs;vͪD7#,ܸh\ P~5N?ۛ@=zUoU w^ֺ uNTa24E:x 0>tUw!]ԡ] =+"NG`Ĵ0Ŋ!])X⌜#\VE%bӨG'W~M0UثS+Ϭg L ,G1?TnV!m[nP1 Oy N/J܁GCrO7uN|w/ (%GP޼~\aƸk F7e%_؇} Dǜ8w|kqQK݀A{Tw&T;1Oym;ʜqWuyANO? awCP s_bͯ`K={`tbGTz[S4Bk^3~(Bga&L̐JRH)X gT-.I)0B y#_|d_O7Nv&xp.ێ;k xgfjN>A-pRCL`xIcOSb*6ce?Cl[D{i:a lR.cN F>{)Yށ~yyJ<`Han;VcqS^}y7E7) gt3DQ 0G RmoWd>(Ws~\{4ܗ<6߮;%K0QF&@ PI)QRD.].Ż +C%LL v-H 8Xxb&+v^6Is!?ԭ]<m! /g8⳩H@e#8;/Mmz:gU˄ V>h[J@ٵi4ݟ!8M ͐5Vk@V=Rrvz1?M㻅J(T@tO|Eؐa)\rZRc33]͖œP|}nwUP+i;9LԖDZQW .9V^0Gϴy-KB( $][ zYkyŭxϝYIv0}1`K/Mj_ +iׅRfPb `%NL l4a)= G 4 <+[5Dk|#CUV*08ĸW0ƠCQOʟCQ&s Sgf .,C睞~D@ 0'w6^|K' 'bj{uS H.Ь;Sv`{W~ +Z% ~@.w&}6b ƈZ'i4Cb Hq@U)CRz UTrBVbg3V GM. xۊ"҃#P 7Ic(]yYlaS;:ȉ}OZaK T?'f9B-d^ka5ƚ4PS(1H|qlwtD ߡe{GAnƚJ@ I? ҷ/u}7Y2gծͬ`Kfʲžlm0\G*}Sap`oqKEҁ=zZӘ҆\X5~R0CQe%vs3Hc L!]䮲ȏ2C-کFb&߄mŕjUhYe[λms mFdd­qs[XQ <7nvcwn"!TsU9%n@C=3i}f?U\rEC1"v咚%\P/hX|,Bqͩ!Ľ†Yj,iXBh+EtD);%5NAW[_)h1W i&Dyr;Nats" YrɷLLV!)t`@1˻]kz%̩>/!jӭ>p fY[]/B}`&Cۮx hIhvU,D40'6."Q!EsA 0r;&}I @G8*$Tᕢ"p1CDq,FY(:l6 i K>l Sa7,4nX ??1·>oܷ<@:So9Y5:6ԝ\Ď;&^)GcAuڢ1o^q&qb_rW5V~)gxn_MdMHJ5[qQ_@]z(!- h-f%2L"?짶v^, r iC)Px'M" Qp j^ՕbQe@ᳬ%褎bX>a6WV_}n (EùtJ.F9z,rUݦb/',8*9k9՞Ɨzh!8~@ kփeL%-t t\ow55ey8ߎ+GQCPuա7?z%w`ԙGQ2ҫ]9y0>Y~*"Ku`6`ܘK£BӠޓQ3i KS!t^?J/ #2N&I <(5CZƶsiR3ivsOCgP[sJX-smRnH)i8sJ&=/ߌNSʦXK&4ڐbZL؜sn iԛ.Ų&Lؗ1Mgk&Ld,wJDʒ&L4,yD˲LĬTDP2VPjKEnjT͍ DTΆ@ w(t{}D__j*۞edG>j*۞eG>jn񱌎s`L mu,8KjedR)φGu*JSA%vJ~?i#'y[~d[;)bHN㱦?gC@iUO;.KER=%pyiYyyyyyyi1p4,y)|He"Yy #~{@jƷ߿8& 8 ֒7r3dZ8=u yіr` Bˎ7k}8>(fhopioMּM^FJp9 i2W?( TʑRN4mHVN4H^N4mohxL`F_~Ji(-JC}]sR E/dSaILJ,?o(NR2f 1}VҳYz=뀞u@:'U@Oz󂌺 `x,/lx0EMɞ!_civ4qb\Wʡ\+1>yw@''WEg Q?vC0hӱ$~cb֕WL Mʛ#14t&ߵ+9pc`1)=nޓO!)s| +#5y>8'QzG9qlp7y#35:1wvakdw0Km4b>FI%,ߥ?x/V;KV'U`uHd5f ]hA#0#h$ `A#I42 A#| v*غ PHl/?p$uȒG4#]-pD1#ƴvX8 Hph*"rCJlBl-YG_p/(#땢rr[as],a #ĐnwKFFFPDaI>1%d A^@a bHIK\HHoX   fXɤN#&f=_1"&@]UdreQy ):ȹowg+ v܃"/j/? g?ӱ/J R)yCS!A2n@9>oŤ(%QIN d=oVfmDzį#y.rG{0Cx#sW#;ٛKw~弆%I -ps suNww5YrQK9k]& s?~LWUԔȱuFRrTGcaNቫT>;Av4UbJ˫j TNlS{^$U "rwMh8v?ìsMG^!D58c'Wj}o._X G@gBCÀy%uQo}CGQ `{T[a/` _.{m<ĵ6M:rڥڍŁԸޕ"?JF^K ^bKݨ<+a"Г.#=0\mg! N.i|'eB!a@HpU$'R$ z~L,>2 xqih>5ތssB,K,aw~b_@ͽ)64od7}z k>=1NسtUռ/]{>#W:i82 z:N  Ckҡ-D0qx s8"Pc(SJ损:$6xqã.GG4l8tw 8Cɪ":;Y'¢QOYh؆{i40ZB%> 7]tV_ BЌ9'6"ř,aכVOjq4u9S }D4;aHLS/ qsq$Z"`\DXM,_3K},D-C[G0ЂĴ0fr4}|F7dHoBʹ2d~$KiT}ᶰ)z¥LKBGvEFKM -m[/ 6zv]Xor'`+xK=gR7VHU;fS*|5"&-,"]Ja gJOKǟ<>f?uv;q?(:C^ 3M^v>n_jK5O9Ee͢ mZkUNJ) 9۰M]%|ƾEfgi'w_M.bG6b,am&~>iͬ ]hc ~?FO>'`]!R"+V,̐o>1HY:+lLrsqJߑȾG~G>y4/mc8#s-\cV_:@W[1yγ!+c'iqaCe@/M3ip4ҍ;=Y ]-ͻ_FvVQ"%E*HASzyY5QH8RXPp.fق)kٙGvDf*J%=$ſ)nx'[}4NZV1{5IoeN1YRxܯϒ$1&v' s#} ǃ$T $@$Q?Aֲ>H -q.>Z O֧BS:i.uѝN>\}~>sD?ϥѧjֿ42LW@ST)uǝEYM+M[ˢ)՛VESK854kRւ @_jZ}k:oo \m } w]]i?_J)RWyKQ<[3͙v>!8 2ŢG~>B3`sE O< D&*eK2$|c GXq,Bo(crwD`,~* R&ȴ!a3CZ?,hӂEPYwM^͢\T1@A=bsu*nVkEHmdI|=Wȍt1v`,o1Q̟iHb;3d%۠ʟV7;i}P~4i3`i^TQ\pM3ad#(_5If4$?R 5{dVհ0L%,KKx־79XlVRnz,c{`a`;Nwbv&jW;ڵV60 ?***]Q931/Cw6rs uz1ԂC,8t.fY {)nc J"ukֹ-"Y.G|r3,qPOOnnk<YvlGv>~&egJGh5p4,ݺ֞>! #)g sG.?q#;կQrǘhW֯F^ 6 -yLzumN] }@5.Kb/Fe}z0q*Xwc-A`SQ S#u3M%̸)^2p+8N$ !! sĮ M 1K?vRidd>.c6(5RM+!|wŋWe)/԰Gԫ3QWxut~ЬvPy x_%&nf&@tVcNgΥstšKD%PSL TbJPUGt:Gqcb e-ݗʫ]#LckĂ"FSs HЭV<).|{Y*4iW~lm~ BߓH J/Aoѷv*y|1 kSMv)uxR <'>X&&|Ōn\y m?8;w$"&<`7A(AXh"Q&  7 jq8צKiDZvaI^<&۵f=4?n5t ,=fNyL# 03mT P0,;\RRȗp' Ւxio fB9 `uzqM0zĴS4}W0"AUdH"~qN2z)UID۫U;E-$w/zz[I1X}Dyhk_[8&]Z3PL& E-D.co9G&WqRPPv3fAGiC/Eذ|X^Ej|\xkwgcutlass_depthwise_headers.h=s8Wh'U[0CH6If倓 g$n|L7`In3nI6NՅjuK2W*-x'߹IuR#f{qЬZ* @ e"Bķ{@ i BGr$ l$"bӖZy"/NxO2F ODj=`Iz(j7*e  S`ƠNes_s%P 9^ 4"Jgԓ42UtຊIJ_ײjJx.TyO,4 hr!:0W'P( 0IT5t#Nҕ%Rr(X3> G纡#C&AULtYV:~Jz*iu`bH7tJQ YFCj {I%RSp` 2Jv H]AE cKT\jGQtVRtP ؎#@0:֩rAsx0p?\qs??_gܮu;t P`(xI,X.~w|@SWr2.2,uʎ30J}YJ3{Ah9RT4tJl׌7mbmbǰ֑{WFtȎ)F> bLcUhA&[8oh2Hz >$ R>{-;wº c-YΜP0@`EIqdڵBˀ.7RJH ߳ 9v 9:CE=EGgyɺI_r!B\;^тI(/Lc!A (m N߹ B2z.t۵'<$CsWϛP+*?W}r{GXAJ*}u%Z e4گ0x7grMn6y ƾWzfdstD态j%]P)broXgۘΥ2:E=`{R۠dNNRaCdAoN7,) EV`mA;)C(`f1a3Y=M46@[P#F1M SdBfnԬw+Bٙ 0-!.F''hv3in2m3~TVc~d$1иE~4nv-C_׹b!X0!]kr.-)!$=YCԃ񺿎d ꥾N q C'k/|-4T}(MtLZ<9(ݯR Ӑa1 09.D/<9p5Ԣa 5/Ց zgu`p)dBÓ7/SFP:WXA=X{Y1;H>&71uo"`ۈ 7F1O(c؄!o1C<6ޘ`^n%^!P"E;8#QG}Ӹd  GrxpZ{%.bB:d2I]ӖPR[tp~A}=n|=n|=n|=n|=n|=n76y?ŝG l{IMp=Ͽ CrI9.=9EE7qE91g6YI n0J1ݺN%IgfֺwVY4xI lnQб#W@8@p4na0Q!A=ZB+(\鿧SUޚR`zW!R" ;;ΎIe7gV?@FhT:_@VfeNKa-j@;p2B2s6~{a=n96 whWQ T E[yKEw#o覼z9L(a>*d>Zq$X^ Sb F[Aa FSQYŃ4|ۑF*ixP4P6 x>ζ=h|W>]Ƨ$h~^BbNvṕI,I7c1p|aM|/uaqӵPMno@$bI16J_6#2%MS ^dia.qMwa*:/I7yCqJBoݫ szyӛ(Z=0v KRKEVwSRAۄ t9 a]hM.xLJJXǺލI7єx׻NnK}Hk  s pSӋ ^m(>\/(3Ȇ}*zӫ$7t_(a ;LEQv;l.ҔEϝ9w䛪4ړZ`pJq]ůUK)cTm~hwvxVI߽{kXR6ĕ9'.q̜:Ch XcgO\}($WQPsoIT;h|N/^/fu9yxF|)oeG @P?*oi7Ev)xJ2vJ)F)|ڬv=N,5q+_j4KM>-f4`&BI~|9 ]Yg2-;ȳ` t[n u24ﳠ 4Ӑ8Ѓd"iHd C;G`/|!wh~ţ~sIߺ*_/Ϣ*ZFNbUi|G/zck('pp5N,\;TjHOOaN= _83v]?j@Q !>`[b&>73Rmm366>J#1=ns=iy#F}mLY8CjjEsb9fEILV$? Dhmsv9,B {a=䰇-.Ck fX.ok y\296t[p 0e~fX[{._NHx߃J}}q4k%?{(^X>{;^g/Mg/g/g/*g/Vg/g*zj)F3!PCb¹Q8IWS )K5ŪrRwo_Լ]҄X̅‚=on[ I3 0/cתgS@c8 ՆP4C}CHt["Un{^mf2 > t$OJYnUҷ)UL?ᅯEoYt+\-)Fږķ^$6y&רeVɥb ?Xd5.ل6GYX"v -XG2"2"V2 iyjaU6v2 Eڥ|]EIHKV }Et8Ma?"лw?!frK|A ~ϩըv G2ދq\`:O E~*x3 Q'^EH;#I72G _~CIդC\j E hLZ4?9vY^0elVj4DR#IPZ({"jP>N}6:W9فuxJra6ajdh0rձ oײ `$0h/^QJS@YE38(j"/|/8dЎ,ɽ:" _lNTI"pO\ =fcoC﮽XO.\N@ÃCWvpѷkyL(]| lOw-k1G Mm"loo)ݩ=M2s}ygw'k;3׫rr%;m|%Q'O\DAAv3_F8eTFHeUAPAUTAU ` `]l -vCRBNO>e%rny8\۪XCtdc[ өwwsԇm |M\IxUqGu![q`MF?G$fRBYBmjیL1*>˘cMK"F<k ѵC{1C /=QLy̘'G Kczk֋z^1ęcKs!! u^tZVNLw{*U (jQEgԪGzj:8d>.JeԟOdc_ a1qo-YaǚqK+D^#viRl%KSek?l,GQ{_ **p1k[ 􄬳`.CKU/ZgZ)l~Prp:!.Bx;pry_tT\%+xR:([Żr_j_ 4d]d 60`m 62`3 64`Sm 66hssu ltfmx0>sn*aDJ|0Ra`L[ZTeSV^ c& YA^YztTPS%)){ԛZ/i^ζ{KֶѶ"mKYVm+YFfl{ +hrֶdaì8F=oTQ磬8Ddm磬2R$<:NiNSTO9:7NiVNSJ*ܧ$֩r|J*$yJr*$2wJҖ*^$X$I)Ԁ`dbUɋY5;oq(Tp`7 NLErV-D'AT h!NE78ʬkE V4R/ueF<'0Ԏ$uXm}ksƍZc Ec/ei8X#X)WTxȀ6iޠUָwJ=X|`ڨ?^)?GRR@#rOhqlqZR'([TZ*[Ʒ8PburULhA8X&`u0%x~(eJ:JJC3㑋wa/??7O;)ݹlo쯆t.'f8{kgc Hk=:|^|DetE:D@xMST~ !FGT2SO Bȗ2ڟKݟ:i~QlXY3ƕJ 'P<̏(GqEXNFG(V@q7? Ń>Xs0(@1,, sa~F.9} Pp*_]X]X]3hF裃(,(_XX_g2zφTZFB@nBV2(T=ӲF%/@ Xv6{0XZf` -/rLeN2ٴߜegZB-"Ŏ E4E. {D.j,k(V;/r`D7/rs\65>Ή\>k52/ry)N ̋\"jLi(?'r,`?/rP˼][٣9dDD.jbZ[q0I-R9(hTBWSuB* C% &7l0d`/خoXnYx] wVME//KDOI^٩+x%2C杍6 TFdR5BLdJ7@m\Sh}̥B h+ ],]-]K>svy4O,Gʼeso>b}#AG*Py,&Cyd U摡b2TG*Pe]L*b2; .&CaJߕnz"W ~bAA4Sxu<]eP;~ltnS}j|J#j8*qcql`pњ TТ #*՛T \&8 u`.f#6Xabr2CVl:)Fۈ+ X(- ~}t6+$OzּrAs\*i?O6gzMzg&Xc㎁mf-6Trp\< BPx؃Y]؍vTQ?SGYTo*k9{JKуJUJ;3ZZ~s{\q=v ҇ ; ;]tMrMf-B|"@JL@fPq_}$5{CwP_ @`!?Vt /S2Xg0Jw/@H4d0uEJ!䡫CS/\}Q$njDѯXo*83Ko흜OzD]U?fߞEa|nv+ NNTX(+SI8ױ};j MU jtE 4fR &+FZ_;up=V4͵q{ "@T1ĻsKt9"ˌJoj,Z_w w'AWzU֩iޗ.ݙ`Affmmmgјc2.- c5gyz^ExQVkƄk0x2JrZإQo _"Bz 4{{{cr T9N K\u7"a kh8T?i z>ay>N^^kgnтF1ȏSjxfYwn&;fx>17Ch_ɢ[@1j=^-kiZ2oP]!4X ` {Cf kfbgCyq T`R2!.Owew8\qT8ބy'nBhxJW;h N٘nj]Cư0Tm7-S[Ir`01MP [#ާ0>B2QLfX]5i:#>5P&S=Ik?@;Rn_}83[ |g6WQ6vC7R:c Qk dXEN@PdbqW>Bzlk 'rp%[ MH!{j-Pm!ŀwzHm- *FŸ 80 ;ٌb PgI8Zzy9 %J|9*d?Tk_vޞ4Z $ ˬ'~aACJ`X2 0KiY)kCEMV+i: &xo`'Nbz9qth&H ]~LH(Z)37?DqW..0>UX6\X907ޒR 4ofhRzZWku[>QۊQcEE hqǼM €syWce3j̟&75إu!{ܜϵPc4i2w] Lz=Ձ?]8჻p>.^ ڗUď?0 t *!xVEqlo;B軂 b Xf 3JɁ"!0+WX 2_$zc^bquH9EYE' SMjH ÇQf a6x̠ ьYf`^wzm EK"N ɨ)gR?Ӡm$:{0\\?6g`mdbqcoP:o<<>;m<lh@1hF(wq3N 6;@Y|hXp"ۃ́0 sЁlg^fϧWd{)xF)x܍ kd6J;3I>=hi5uhUt靱1?gߺ@)b~28u8#&´S:qAD"`WmNAPٛ{v /ނ>x\`oʇymt번NbLZqq +b,!$饏Ƈ(BJl¨Ǿҭ(.#!=ĈP1?Ds,Ԙ)hD` lY"A#JX JA4' ӹ8??kwDZzk*X>y}߂1E <xf87b^gA\Xm~>< 0>>E1) on[W4?oLǦM^c= n•5a!sf-4͑JoNi{oUf"k7}[ILqhA PlsdRsK>\nC G=r灯ۧoug$!c%}۩U[{Db>>;@,IArײ{Vj?@ к*-@]lpCCI"25#ӺfZќ.4A{vN"/.|LJRۆ;(&$2A蠞yR~l>q-+iw6Vhh{޷ywnGs_ޭYlF5Kz ÙND݂Ŝ*;8D'6o.٠[ﳭ?cّimNxf_b Rvx9\Ҿ_ń9vl{nF[1Džw.:Smz*C4u]SDŽN]3>~wnK,['z}˄ugAKY@sf1xwcS'$A{r_XS a\lW-W^|ܔ ? Wު֚1dW,ɤ$`O)1\waIt!#Z_%(A}|Xf6  Q*:ET ٍ=.:CY k' ^!Ea?47$1c5:io)T.Sʣ|λ'r^^Or)E1HN^dPC7ӤgaY.߃um;*"HE{%(8)y9<РƴCrv2l|hzIeC#a ƅ/ejkx[{u9߂`A@ q4mz5Kp0/NO<u3ڱݗ,BOy>1s5 Bv'Suqvrae0yr[`. 7 L{^, %7l;dSsyL5A,c8hsܭ Qh`e/=s4r9T_^MB]`pĭϵ99$Wg:5kw؞ej,nQ A1$ٝ41t vɖ/c%"k[D+Dkˁ2fq5;g_?b%zH];44k9(Cj$VAPn*eFfF*db?UxzVO'>=ɀ3vB 8ìoKLǍZ:W` =w'z SL(i2yvҜ2ޥ={ *HhXV<eOVl'V)a?u捱bwZ+ؓ鶉"ؗۏ'ኜ0 wk_!>׫?˼awcJ7&N2qllzis&tVd38%Зoֽ KQ%qV \fBms&ޙU.-$A NW&fUncݐq<%v1cgt:q_xN9]}ۃG;+۽} v.ek1?ߩʈ#Ȭ#ۉWa.gmu W&|2U #BfZRCk0s}%*Xs.(Ģ!G"hwLá7lO6CYگR_LqQv=8t>.Z<\hώ%exz;۳i ;2!G܊YR/mУ4fAX:X_bu?ɵS_NsySJOv"vaB1n+R~JG/oGF+ƒ:bg?>8z[AUh`rP+PA8r|zĊDR,[6뵟` IȩIbT|Tۘa5ZlF37*PجRxA>&AWۭF FQZmzbٞ]q̞j 0xP}V+.bogCko.Ǭ\^תcr-/rX#K y(A] C%6߅]gE0RV\a/yG;%z?o:9ٖ5U} ǻw3Gy//+VҶ/[xhx [6%N8ZBs@ZkX`"3P,/N8y!1Zupձx+ RPMVt#>GU1x1 ^c|;1+Fξ'~ͨ8!<GД !HXFni9O G}D~GPRdQE_fC29Ղ)3&K_ʐ 5Ћ;;reke̐U&X>SYޢY.S2BPJmDrz2ș |=QªLG0GG~P*eNfY:mtZwZ~(gs-@9%hC,ZfؔE%o#t)Xa`к5~1bv?sDh)< tx VM@) C#Kۆ!cmt|J8m[0@̢栊A/__/X W^xqvBethSr9O^': T/@`ˑ7 nA޾DWoH|-@O NLgF'rMɊ3z++hKRssX ZHN ,]x]},/èؐcaOEc]IoQw4d0BSoCm}h8wU;NvOXxk]Ҹ2$a{4_ ^[ G`(Ao;6<ϩexP𪶇tFii J4F ̀E|K[!.a12KJyO(%7C8wN9v/5w0,7a ʧL,<9%l$z0D^=-H\'gŤDy`]σj$G4oJЩL0!~pS D2O" ·օEW.PwlEK x00\m,Ӌf5 ! B*Mj>;(^V԰jY?yOG=╤3<9O$d.7 쾄LP`$gּ4zcnI*:LJZudj)lÌbo gXV|c`Ա-WTg;Tiq~mev=;>{9خjANgXOYWv3mS,-O[IhBŽaYk\4ܻ_ٌ%Qc&2G_ZL,(# Ta)$#C,Hc`i'Ǿ3GA6c84S,(US ϊLgјKC fwG1$v@/6"cASfc^v 㸻$37 UNT۽*>mE3r;E;e6+gt[VtYU=w$djc sw(0״y吒gw[v`; $(H[v>=ڄfE1;|bp,eCRq[`\v[g?4Zlұ~oxgÒ5~ ?z9] ~# NW\"'Ӿ=F O&{h` ]`@ #; m؟DN:_ l۫W>B%ƿY< %qo J$& Oe xvKLIx{T/1c@y٢ 8(IK2W܅Q](W:/L{ޤRINpU/WuƿIZMqC.՗c&LyF',!8oAH悏H*ʝ2)6a\|%H 3yVO*ԬSB|ԹeLH׬6H/H:5 2ްS>眲!:.v~c7+1<o,5VY^ƌDdo"t֢AL:^hQwa;gg_jҴ]4YXךv]1QSo Yy ]vyyFEQs{=I4x E?\@e8\_bq7;)."L,' k2FLtQuw.f,qlUx\AsAT]^+H#)DVߢiRUh'4GIGY´frdȩ;I¿ܽ`zxFxJdSZrKىc;%䧺8eL@{5˞ CIǹzM?ͶㇴB㙍;C%j#xY%ծ kLAw4pY!Je~=6E;i{7je E(!tQ z+&ʌ$g>|koR 8҅ZsvMmcC+}-ǐC !])E;H5@ 5ȸcE.CGz7x`cSa);ʖյO<}v(*ҳK&A]|O%.k0ɎZmHdl'=rӟ')h|~VG>~pNnٍ)Xsx4%L(C`l_g>0(쇻5Ÿ,IR[w,&h4c"7U$h֧X4}$ txndQRe*.MDÞSvtPxϹfͅ9Tg2Eԩȱht` f{1dz1aQ0\">VGYy6n,gBo\Qٮ' 4J8hXnϨf=jwnWrp;ןI%SJ͋J{ 9k$_|̶o#V{W8B|{˂&U1WG- oo9heB03uIGS:|O?= $7G)LbCu8>`"@3LCNE~o-|ubu._1(C@#R(vc T#X%,ȴc5RM+Aן}Vs*Y/MM,|;g571&;01Nff1Ç olAGHwvexdS !^NddƒAc,刼zi qC*?59 Y$+1FSݏz#/k)1읳shVrafTƂhlc25} .-Hh;9}+m=?1y%m5xE2#ZVsdJBs/j6'N b*|(5PlU2/OPc;oe؄-`M=*7Q*aibD*[cBKYm*C.1fJ~pylxBhTIƅ9!Y}A8 ~q#:ޮX!z'ݭRqHUs#}1+bJ\u÷WxV;amjt_Մ6jfFV;-<ԵKc|k ݑܢcYdj2X8hVMN -O`-p_5,$2t.gN`V_0 ȼC_{G4fቲB1O݅ 3@b@՝9w+"]@kbnw5m bffvp!-1YY1HOjm6i؁B5q$Q@ ~ p”=4{&J8/2ZҵЬ3ְҜ<5SǥQ,"Pjx^+p˒ګF[ݙ0Ҋ &2V0Ȓ}GM+\P,N}yf_ L1xfZ(ý GF(1bu8)/Hy'vvl-Lʐ<{OH$b `tud#ԜklLom+Qݹ1Q*svhTvކj Ɍ9'㯨hAepvH^\\]W#ۦD-6%dp;CsvDW0PB}x|WFMyYEɣI;2YN@cٯb|f|Xų]\ˤmݻ--o>c ޖK;e д]5RXFӛ<3.‰Jso zd['*KB UM4fEҫU;dVAU/~哆ՍU׬*OX6'N.f4.,D(y?2PJ=cyއn u Q*gQE_I =[88k|̴;0c$wuls-&M%5q zuL {q%2vcf`6? wB+S&8b?$eKJ5zѺb;, ~-̫k 4ַ`޶ƝF6XVO g ɪwYF o;}kZՎ50N0ggTh^rp@ ssߟB j6 XTf8ض +y@~34Mdwc%bvNώڦ3i4;h{#j#*mnƇ)5vrMIG-1S|NFԅm倾y^B1pӥ]I8RgSۙ+ s]`I1; &DLQ9aC)xf[0Nv= `K`ʉ*Ԅ8R9/-JGR9װ&YB"򬀱Sf?蟬dT>T!]ڿVF3buӺE'woJ$Yn<c/f?nqKgh@:P=JYTJK5>oi28I#Ҹ(hڟ ĜXpZʛp]d6` ׉Brw0Pkv8-b:],Ĺ1۶/JAH Cק g6^0N^2K"OI҅22cvGBI!n$V z60+x%,bk+ZY?*'4Т'B敖 pSK/NOgq7 H 2T: ( |oA7,`:XFD)ǜ30P2xQ/lJyHTMLc(gkΆy%,=4:DFyVشe& ضdep?1B7ȆWwrNH3i냉 VOѝ3j&ۆ^¤~:Tһ1 I1*R qYPo6lvK{j@>d?]+bE!2bEHDX 1 YƦIL4 bj72~PL IC&A%)L@WSV+9մՠA7;RiAA!f\)QFbY3@LJdkI8 p XK`1}Z_=XZҏ7AT$. K* ![i|M. iQ5 '_c|Vk11:Sj6X)s&$ f rwh&804bllKNU2yv1κNk>2Ub/Z f֨<oO+ǻ'Ќ} l:!Ő89N62*A67ߩ-94*^ e܀7&Ac"8a5iDxhH~st<&ƦCcfL<4\'q;HY'ۏ3g( Μqg/ALF 12f# 44,젭 $8L|S/iݴi21|`BW8hPh^p Dk'QH~=quJ:6=5!bHișxtz<0KXV%+ƕ"L⨪VK~Tk؞LR-5fAZp$aS5 /]L5° 2 ܔ&o3{teLj]l3[wAoJ9\D0߼g{."dc.Ǿ CrhRaH鳻(} 76@It![sy&8Η)M m'ˤTD&5Zlp@x50=!vl Ql’xѻM-M\$}X6}+.̪;I3Z 4 EԺM>ROpcyO U F}/(lwy"cѻ/(O' gcy_aIF ٓ><^!MRYm2owhE>|xƫb6ֻy3ƲλuYmy Kg{)@*gR.}0jB" 3ڧgp>=@LwB\g gg22 lŒxI1Ӊ9%NPGdu(iOk'P<Ӛ btت<~|ܮw:g'1 ͐v$f9⫙}*gɚm%[&}n-:3$dXK0 2$-SIBL}Pϒ֐=n^ML (dk.Q.YW]J>?/nvV%_>=u=v&dLA M133Ew4:jC {~>bɖi?-A2y%=.WfډUL{J?`Z{dIV@ui' vV L[ g $O@!S: g tCRהL)g'=K5Yn2A!%iN"NKh)03Eg%:S?[;1N@R;OHH^, >6qCNxkj׍Q Δ=,5LLJh6/;,`A<,y˔K2n30kgfjڼ8Nˏ&7~22m @I1F#Z]?TbOZ>Ձxl,Z=PlW WUg. /4\Ff턪҆4UT~ =fOw:_!FW;<ЋFK+l+GEZrxsὩKE$ZT`ÿ*)cݩsԇ^VHwD bp+x yvӍ rQ)Aae%o*p7Zx@#^-ɅE#5o9IOiCS-YJJ]__ǍA+wh7>={@ղт7˽QR9:/<8:==#c{D9WUvv+GG/h=,핏v/+ƏjN0yY)ʕR>T"c|~1rjPQg讘]Y#^\yyw[;/va/]c{o?E@FFD040n68z"1&Ő2a@!& RQFpnFx{AxR9ɀa:Oa&n>9K0ڧa?Ce< 3ؼN4p|xs׬?,!֯JCXy_9H ^Qx,{þSSu*;*2sq)ɋ[s[y7=ٹNy><\$Azlb=QWfKo_?k+>I7 , NF{8jZ{6,3ڢKk{f 芼K@;R)nyk﫥{jXpt nXsCjh:TDؽKS_(C=5} W LG/>{MvT0)-J#HױaC3^'xho:&?P9?P' ܟg |! @Hq1Q9'8}N2t©9s.(97bNMlO> p{O@ǀ~p4(4QO? G#^'3 Jͦ|Mm3wQ6#m܌pfq3f,.7lnF܌et3fQf7#nfw3qQepTǨrl+M'sh}qk;_uǞѝf&m ;i$a6Z $7ڸ:6;p= 33W5ޟqvzy9z!$]> ^'[CFg3m 5NmJ!9vdvf8vd6vͫ1]&4zz'[w'Zy@XxT ʕ_~-KϟԟӋR`JB ht"#d}tK @:ԍ<"K? Ez#`'t*SA=뿅a&!:rgBkjYu〡s}fx6o2{ٵl/oo7]kfMI" ۷c1~0"Ɨ&Z:/zscS,coc@_{ZͶK69tm lk. xTFsc,k7aw3!-zOk3nk0C_;2D N0JSuxNY(l.YI .moy%H/ J@_#afW/ Z SbjCK$VXz-+7L.x@>Y1oRS]cEp#V3Ba3]W@~]̨GѺkf}<`P8x|,0Ȃ)EݏrP@.yXZG1)FD=OGkEWD}}̧/Ƣ,cġ]9ƶ~S;g}!0q| yǑ~F}nd6rpA=>A 6SoM #R-ݹih:␦,w, .oG dg#C{|Vac @`S_ǒ> ji?>99A*>U+WlC6`_~G>" ӶIfq#2g4%5bd{дG AB ?$?!U+|N&BO ͹{Xo(ӐYݐ-oR̦jc{_ñwҕ(a!3k >X8ʈ\ˆ:~QyK<67V1&A1{c3`5}0 $Yy#){6gڥBix\S˝ ?wvI5g!=pFEMz==sDtCE4۬D[I̟5o## mrQ#yf8o/ yq#>ϗy&>/s5xqWB @3oxETP'B5{4aF2)NƖ>sL\PmX&. 1Hrn`bdwyVxc6  M]2o OрGslbn}ZJ4?FT{oL-38;ea`bOsЭXfU[F/h aC(]w\A\Z}L29[v[ɰK<ٳX beYQ!y-9]DH]&EY`m}3KqSeҀff# SwrR=4Dmi'H/ǫz'*yZhq^laς[icK)jYrx2i@@#0rZVZ{#kIQoMd(0&,y%/FNNwbҿ.QJr^H3="{]?PșuGoH<'y%7ßq?n=ԮrÎuKwNK`N׻ -I>W|E~%\Wj5jHRJw?|qu1{+5X{iy?(_{څ6~6`;,lc?5AEo`V#l}%p*t^_tWgRk=Y\LCW8[*t%һKAz7io%:E7{KA/ }nh{Aw6 d?@{+ߋi?ېCBْuZا?z,},hVU2ߡV-T%,eKΖ~U-a5/>◯ \+x5BOLӞinY6w#zs ~/cYYzh8ip54kw^?פ}p9fuwvz 1MOc{)Q(n!`@~ |Ƌ( JN 83wF֧r}fdJ>l>ϸUof p3ʻV eYK6:ׂ#鯨W~rF^d2EqzNϓqJۋbbl^Dɞ] dpaXmg,'gTv&L`W\٠yr̀Ƌ$4$ZB87y|佅}K֩W`rV2E\'92sĪgj25ߋ?+.vkGpu/7Owdpl 5K$͉ͮ@}_ IsU@C66w9 [ft"6G_M:,eE/疂rX q).ūKm. }xՋ1tGӟuhXS~bu1dtw ?iJTCWMSw~e8acCLxv ˱ej?H~xA(9b,|?s*WS/jRpR8nTY]6Z;Viрt PP3 .j.OBJe}n1QFrEg&x.p:5k>am֡mY-NPSlubgG60j}8QGf tK_ Œmpabѡ \ <Ђ~aޚ#ىG"aR0pvև.XB1,cn>p 5VmVx=ܤyhgmqzl<]muΖh՚Ǎև- `hFEmhv#Y}h6_Kma'gmWFYmkN]7:fqZ?SjxIU}N] hq]uqo5 :Z\T_ HNԎ0OAE F]?E7:"pUNBEl'ZS; .'DGNz.+ywڿ`uPؠ;Y1irݥlxw#IpD qc[lq[/?'ͳ. S5סc<9X?yк:ODT ocԉؿ/7ŻEXjOfO0@ћS6kIa#^ҳ7XK?,4f ⾀@F f;yd:u֧b76j<7{WkзueZakS\ ™AD/Z۰Q`q-|Ƹua,/X~`| u7#_R_S,S 1Lj,RIЊf\N _׎a$V84ysH! {F@Hf N)Mqi)n5HT-ǧeM&řßB`?+EuǑ'D`O8T0~r*3@ ?c5h' :#״-T+2CPߘӐbC*l> b9alNl!떎EwN zln(JjF w0Ђ5x+~B@l ZdY]U?246!AO.?O.wяs >tY*8KF,{{84h5 %ÖG]B5cy@t=^_Sl?F[ zVqmF~X#۟ mkBWR4tS:UOhBc 9u9WǴQܨTc dcD֖ |{e]_n/}E|'mKpiFcǭGA +:.n`Ʌ,sP7Ybve F{hICNYw:bqW[v6%\ԈeIKBl9qjܲ%hN, qIX- p1<^\ BʷݖnT8dvt*ye::4Gg?/9}Ang0sg?,;LlVqN064%j}Oʥk1M~Z%iI~Z%$8.wɶe&|Y2c0[u/_C}T]{O Bk^PWmњ~U6 -q4sON*1己4NxRᭇmCVmE'bĀIVQ ]2FkW's~<'s{yjY:;C$N X5;²ѨN.ɺ"tmtx{`ܘ\;O;ObX?-OousXcqhxg*!Zr}`@Aa\Kc5FV #Cڰ(Jj6TZz<,)h^5j[PUb=xmۥ.Hm63otR1|9`!+t54CZzqb|ω-_*EX=)=kmJg z!C&4 `측 $5 c /65s-U=r oFXTS=ed0ɯ^Mt oniw-lŏ ŢOݢ֙ړ+})04 3b>NuW|˜wxz ''(yܤ *@fq20%/d%ѭmӻz7ufF]cIc3j],[R 0b۳U@c5C)RAn='9$-_1ot*n1t%1u~cb>Xd;2EM{zm z.X׽v_ m_ “S+EgݳW{cSlpXIhiU޶pWR,-XC,|;Az/??f5a)+.@2K l շg(*݁>16ıv>]Xdfr*8S]!\b*,"b⚯  (\~=szKUPW%X LW* Pl-,oiG񎾩zF Ċ՞Vwک*jϞi>Z%00U.6E?BLK%0@<,SRHKdjSXG/+ҡʳs[!zDU<πDy*Y[}YOo`_?qq ZmI^]&ܢK>X6b 0΋%7BN+E$芭]5Z@WoZd;FXU*cYbD-+ [quBPF fQg(U}eK%F񧌄~ ]&$t@2C[*ue^7$nyjw+itƀW[Njgu _8n t÷o-X5r/_E][,moP;Cys I CZ0*,w 2qex-L10sS^)n-kS|͊m GKU;^92VIt>\)ʇ Z $?9 Ï{}zZ|/mhkA&aѭm%sqؓfrukul8~Cƒ/od{&xRG9mlYƸHG'Gr ^r/xzntV{XWrVmk.AI` veWz̓8K%7٨{}F!q+|Ir׊+ջjCw 3^VY`9V#d@) ]}}xXӍDo"MVw]G޼pyuG+<7/__Gߌ/_]`6ډ){1|L\K#[&-2=տfc"bCp!XL֎p)~֎PH x["&,@ 6<kǦrƖ=ǹZcZM,!'ѡ̐$Atx\Qڍ(J#gA)!Gh"-zZk@}zsoLM S5{lk ^IebˤcHT@ kjwl&908s'@~a&' /AvkZ66nc&$NH zm zi|+tخk^b =#_%k# yYDy~n[U%~rN<骇'3< |xIS`% ia?dg#p` )bIF*:N ȹ#p mBU? +Et~h߫L_&G4XX>D} hmZZd 0Tٍ ,KƔFy=.i);J޼~M+ GdJ<^z6^K7e&KɎl8DJ% C)d٭dssC:i`e!nE(T|e nU#DG*pYȶ_ )[Br!>S~UJ{3D@=Ľ rԀ-ph--Qw Bi/Ũk\2AÐ_ph3k j2Rq}Lh }M&?g[j?:ATj#cD.qXk9"ll+׍M ;f43!;Ƈ8M0䤕SYxHrKdbAFv'Ad^9 -Q#|'£UEXу_&ާ@tCd9`ǟ6e`c- Ffo؃8jmirt5vLuH=Wd]q0QF bck }=ɣ&y+FR|ټ͊J$/mKSN}AB1MÑy_Wyc ]_ֹ'q_Vp>f5H)G(M~b_0d:3ѣ*|F2l>'1lP4ʼn3Rf02%$J14x ! 6>x=U<22Mui *8zvIsKHkf{x$LNr+׷@B݆JPFŋ{I3Z"޽D{;c6iY%07Z%Z*Cv⚩g *kmamzoNFF <Exh̳9y'Ҏ`|>÷Bax#Πa}$0mj[se8@>SV<-ڛ7W.?ڱ>3d x}[b扝]!+YXꥱ,+D]Wb kx ͞+g~Aֱ"(m7w't+-FvE7̧t=1ġ2 <qbO]߻a>|' < c:A_ lyؒXf@.P@W+jh[^oA PjD;R]tn2? |F7+6j]tOWpF^׮uk=q`6~0uRxL"P{'Z!{Kc/mL;.]n2#?ogŻh tN˳VKYOUv1 *h <e^n|ϑOJ"-quh fP;zT0U[gSF]klI'tpOs҈z&ބ;21j80SnOԡ>gٿf'y>|F  H9gzxA:@k ׆>@4B(G СezɑB.f0_~g79@wr-h?Z~rLUo)툻k*B%ru@_.|[BAqذp$YkrdJ.p𖝙n2J5 G`wО!:/Po'%d3t,gF k+ h,|{f3@lr1foghY MNR򞃸4)w>(çV WGB:7{~?hoSz<={O v&Y8Q3}YҶ;#sV s{(67Un)jkҜJVi[P 4U:(0Epתu2<[`hF^=uᙕ̂cl}قܺ4`z61meK!A:0 7 a cN Qh/*&UEh؆vh;+bY%Ga-8k0>휑Y hvq<'Ө-H=<kc6޳U60ɍ #d˳|&,V$Y1PoIp71u?; u[}jPh"5FovE\\N{GKepV XQ2}@7IJ}\1w W!4.# reRhN0+a!ҡ$8 75PZc#D: уwVJÝC СcϮG{Z/ZuA9/ks㨭/t NpWԾSo2 #EuO\~\5{=9뱥 z؂=Q%ME<yDG{\5(XyӫtCvNl '^nȫkt B) d ֞/t_Y.7l?C+ڱ26Ʈ}rИfw~,%p(&2,m8h&Ԟ+Lg9-m};cS$:;{9m%[.;.A""<Bj}I S;_І'*B7 gؽ2[fWRy\ `q?m`^y=cpXpoR*OcxYW0nrS_^Vhœe#Nrԟ8ԨX9][ko)lx$e6clD S{{lmcBz8P5Z?>W,E]ͦ~1ǿBmtGkka3ׁ>b/6G#!s Y@ 1 7=""0p1 ~'"@77Bv&/!˸qP/SH@4X)-*T)ZPhh0Ĩ7e?np9ؿ>0(w͚i,) ȬO\ ˗V*1xM\6ϓ\ĿČOc1XI\6Ŀgql~3+ivNq|>]`Y!6"#3srf7+V=o?4ϩvb/.# I/ۗt8{-![ A |h!>J"6?t>Q\QXq-ZدkҤDh1Z'B+VH>b9$5uCKP򛵀R=eˊss8+/[Vr8 AI(ґe^LdW k( Q!\Q;-ByA|󜋻ΫE!>VA\χe*с~% >'.F n-Atcz 3(͉˲E3DՈs|ֿLxD8RE*Zn)`1XÊc;`1Ӊj Yڊ_:vF:~u4- @A, bÁrֿOmgp9fҜ0gO_*5bpEDJ䱯LεJLdn?:Vyɱ뻠##KآY};¿q"j-aD%%kX 79J@t ɛ?ГF1*s˟p뇸yDM* @7 .߳DO( έ>\v4񇹛Yb$mX(I '0^$G^b.k[#Z-׍:~(nc.!6h4µL,G^F%}+ ӚTt{HhF( p `LȫSpHLzIPX [Zܒ`TVx=I\=f zd=|G ;*ivZe%7bFNNTwj2փQOĦE۶bg# H cB\IӵZuT:}5${YV^|%QB ))v$/=$"-Qk$'byZ#X5źTIF^[z\6fsK5ݍSh# yýCK'ui!#*\=:Bd`rlɷYbp7eP~XȜ-,BE44b"ȍ :%eM9,9 R8\>/Zj>Sq|Jfʈȩ1#FdxN%]]kl\@Cn<"|=0TF{^i,W̷"f43岇"@ eKomI܌טOK-Z_cVS4fCĞ`J;%G \s8`Z5vQW3D'6E/*2aeiDF-1 =1Ir+|7PjG\-qƻ,J3$KlerePZ}+%l|#A5BǏc CX&>ͷ3́aMu9֛0G7Dgny }Bw]$Q!{l2 R8bMȹ{ٿ5 ]efނ HEcg;ڱ x LEׁb8{ Ot]@g A7q2X.g2qw X8~k9 X343%="P| (5 bșa׬I͐89XBgL\*d۾aܧ1Dę& ɞ9}C(an"woܙ`(1/$Δ?1!#{mؖEs"!"vrГ֏5O1ZCbѤf˒G>)iH=* W0)yݓ2X SM2lcMd)y&1j^C\1JvNݍLZ,[G2` s2{l Dʤgu.}<2^21pҽ18-c=ul2mz?Ƅ*n}0uveN_kSX%2Hq2-&[PNമxœa+9_qgnvEOA*1f6D#^}ҫKѫ8-RwAP&|gHր4+LU,LA,S>HWA_=aBO֞A[^8#b)~*cd,QMMhLh2fM+2B ^` NMt` v}G"N!g KPDʙ˶0X@b0c jK}ݝ>'=<={g;r)]xibIfL]GչH)NOJ瘝3iHS)F1'wթ9ߚV}>g(>c:6{pvCIJq{,'n4 EĚvz%) ,[8>c63⪘hlL|1x3f3r%YQݘ#0DnKo{M<No/ QFG_sر^{A^a?ݵм^a? o0Cv:RCT"n)-tζ`=&sͪT㭉cƆ0r9oTs)p*s 1b+=Y$AmtWRN*ĺb^ p{/ NR udBI%㷕=_UR!qZw/ULlxd,](GJ09\ƵͨLպc)L-S_>dF!ֺK5}<leLp1/hy98~vHoAB[LFoOTMpٿ)O}vU:kR*W~ 6M~5] :G~R{B=6]smLĬjX1`}HNMIIݱ.%.i1H:8My&V<ݾN/GYbB ~̾<ǖ#n-fc Rv`_X x9^h*O4;w6ӹC\s{N^粛K.a-d.d/O43,#^?UTQr%&]~]d_.每 <0oL7Cfu<ս ;Zؙy SgL *rT/]ۚMJZtS7qc:uT =HKꉢNXN2In\(GX~+;_WlW}KMd)j 0[Ck^c|ݎШI.1ҌAkk%jlmYetJnqx#+HқO+vdRH$R:([֏W<jYLP-VG59 xΊN=s[B*De7RݱlC1=_L'WR?yl_Y2O 7k4W֬DV+VeŖqE< 9. dhͷGeز5X"iL J#9Ce@͞">J<,8'[r}(yY!7Vydt T : KqZNnˣu"\\Er Q;`UD VKگϓ1inأ(Ī\Ί.\e`DzZQQUw8-5cTC2e(+4:g~&\yfyQ9Zgezܹ3o' Zd|Lu?j %Z{B}'jg}ZgS'oghZxpugݮ'lO1 (e3>Qv^[}+{މh/3{܉㾕/(kJ 'tan!od^׹f7F&S,}̷=uYh72*5zߊ;2M*U4+-8gmވ]x"&q?6fTᬋ-|"tq}7"qÊgcl<|$/ "߈Ďk-Ez oDPr$߅Թ}oDF↵a-~3.)"sc߈$l-%1C >KJrΆ$/H "XN: MfR36\jZgILpvY|G(S`XO 4QYWJ$TYG ha r?5h@qŒtWSf{wyL_[Fb`s(d |mMSٙ|>r=Rl]]W y$c5U!.0ZSc`rXdZ35eLs1-p\IП hJ]L`\xeX~0Se_bZ/FvY.-11u_fxO7A0't} 4DsX_f'Qt.@k+cx,c{*.&xYG m}iN5G|Cs.V?@ĥ@(< xx*J51rgM$.a1LϦ~iZHポ;еyPňY:G)fד%N5Mhf{$ F190z{)3}TbOA3N˹a06w%ATN` y#L.l:5L9R7"S)q&-<DN [jؔ kQCo>uOZ=𑲇ĚkXK s=hC yڷf"\m0\)iml`4Ԟ_*kuy=w@ҦZJRZǍ*r@fټҴei!Du qZg+ZLk¿NLpG<YO}*&Ha sa؎ ˼sifϱwv0&pp-, as f G h;^[]|oP(< S Myݨw/Yq\ouզ(Nb草\d"A@G :Bki145 lM*4`ʽA>hFc =@AdhăTgG5=ǟ?AArThw-# `h [;#sM1!pm:  nR3ųԀ˧(&}m%& gX:jU[_n}9M(ݏu|m4Z7U?S-iz:vK?֝Flthg'@qqToW7 ؝_:uO5Нjlj8"3vLCi7j]mO1nqSkV0j)>n@>洐2[@ZFpit2ɇEh5Z'mh) LNƯW۠y.նGqi,A>kq]Q|ʰyq)AOtrw.]ITkup|ޭbc=i#Uy=-Ԫh6>[}=]&@vA3 PZud6P pJYG s{Lz0U3jC޷ kp۠!pa+;rE+t]XI5!ҡD[|M y[e56B3;e+D!eQUă#63i(b$2آU NVk$ddCk`)%,6W~9[,p DЎqIMZ*4# #وȞx~&yԔ+M >`抑9> 0>zo8)\lr6iփ]Ԟ=$ J\.674G;JznYvr0.,N0O.M_JJDv>z*9`2Htmhρ Z[.0/°ufLa@&1)C"w0!~ ofSII#'ZT>O m2Q_Œ$L5m_!v.\?މ&:Ml׎H}wHDW$l4lo >\X(;w]$rްHlslN}A gm!GQL){/jV$ڇօdiCקKXa0\‘"l㇟& GpU-&rRVW (E$=~Y3wlRGu`mpPc\`tׅSbUnRݴpX\\uO +\XA|5om+-\GT%ᬂ&!*BڎLdpbLr'FAB8jJJWFUNQYܵkm#5zf`Mtao|@6wQy񟛬5|{Y*WfL/O/!T(]IueaUBG|rAC>gz!90]89B$Y8g' 5WHXy=Ɯ:0oG3Ӛ/:h{#m;thրĆ^l7 ^ӏjnw19 aHeB4}}b1:紉"B_J/)=7k+oo}rNm҆M]}psR~'1 Iw}L {~z#^<{zQ #QD 4J*JzI¨>~Bay݆e6Rz9S䉬x3LPN;۷bmCӉ_t{`Wc@d^ǽrg,S4u?p<Θ DdJPFj `[X]-Sfe1c;4OnH^<7os>-PxaN J59E+FLW{j8oNXn1q@UARM^&dviWyAuR(jo}]VZkgo7OT{juQvv~@gBvmk=GE:22w5XQֱG ] %VtA/ {枔q֙%\T>KIN"ape*H"ѣ }3,"ˡسt8ޒ(X'{8Aϰ*`D6M-͵imD`Ҽčdr*{V2GGO‚[^Jw'''EZu8AmXc?Y0%ooHg4yd)bm^VIMvvܧz=k;ڼ]<#*hMgR>!޽Bc3:̹.`P9 Asw.yF3k^j`]eS+?-c]Z wn]gv 0l^d/@!(}FM<0_. oٖnTzJ FVtytRb9S' i7" GCkZ-{Ň[v{n5h_*1ۭx‹zA'3gbs<ń7RU`l<'vwg{M<Ӭ,"7md0gC / ~WfK}@{-f=ѳ0:K vm䢤-%c)R (e 5Vdy8 VB46 | Z%\_ DY&k=mE-<=rt57;]~]s(GVt7CT >s~tn_uκ:k;Pøi_ )wpg\|_9yKy` w%nCmx"{y(= < :,{f%LA4GwqAq%r|Khٱ"g.ܞ(g+mS4{{7xL΂幫r/b9#=]%8Dʊ2`Sۨٺsgv|F3k^]%wLo8y#Ry n>3|JB4'E*hxs@ s>*˒"hH$TTJXB<!Kb*(<Ҟ_Ң> (|OU(X (gG%X;'`/֋m=Dy k+ s$8C 4@Y FyrphճߺjTXg%5N~q]eq䏘ȃI,m<4_u3Ru[L+{QTҋE?M086q)RDr)Zٕƣ޽6Sǡqm{%ȟt]i2Xo OSIaB$x`xϰk8IeCS](!U-*BEPJr 2uTmQ$oyOyxJuwtiԝGQ~ƛx4P`OLp-:x.9+J|$rw߁/MWy\kP&6x.dH;{ԙXs)]`"~ꯓ>I+ WE |XoXvzkLV?mPkұ{aI^Oސ4"!N??\|+E{6E|n:V#[ζn'>=~SiqȓȑOXP@8'B' ʎT q (s Qٍ'A / j8&.; M( 7W`4eƿk>`2wg,疡D:r(WNz0cFBȋ>GL  ';6M] -LAc\eyGK WCIB{5#ԗِrD?Pybxs OG Up3({gx#yں?uH[g\|mN'S'=F$| MeXu25Gӭ~/C5 ۬ 5>eU= ;# KoaxfiFA?Ơ(1'?{`%`A5qyiv6\UL>ğḅPM,D$C-*iySa}ُ&"@$J)^ʋڭd܋ {M,CbTрǀ"x;9,x۷Ϟ*Gb s㏲NKW*[<޿0{\ޕ{\b*%6hP|r<ܘ-] >*~UR֪J8ƕF-5fd/F% OE ہFCw/q^hG$eS)_I!N &”e41V#EXw<ȝ)(~$bzd$y%K><- R?߇u0~Pe ƭC`5aŞ"}*SYi6|v7Q`ISФ2?Qgzy)Ɲʺ жL %e*6ԫמEoȬSGmCf{!2|K暯r5fI "'iaU-\"vܒ{45L2t;Wzn6#VOBw,i7!p!CsC8VF།7.0.X`ܚ>̖YaYewkWf ɇ4f)K2D=DS8|CL7+j?M$-eISWSTϫ9V-(?BkJEPhW w@K]U)qZ\lRu(~-zZv(\p6|lsI:؋&k)8^crbKWN WPNvJct>Day˛rfΒfLӜ+ރtUk_쌃 4L-O2};;tcW[c]Ɍw(q t¿o!f%&fZ1sdڢS2\?3QxݚkgItj.8<͉WXb:W#[j +-m,d{X$mҝ+C<+gs[~focZFw"&ٚ T{rJtr_ȝMfjss!6ȃAlT VTϳ}Aa=[=ȝ+G+ڌEUɦ`?zTS5m bm۔wzW\x||V99"'5Zu\U&ŭ\tl,qBZƭ)_wKe\ppp P:q?FgMVh$3qLaZ9q<40l''Fˉx%8#YѮ+QkϕWIGp*WII7ѝhX?59#灩9H7AD`r2sM3Ԥ(HOwY.hLAqϞTk&ț2(Sz+tP^}(֎38S= xԟZҏ9X7-E*42(bŕɷ-{{VwvXsZs1>Π._]{9;t'ZJOIyš#>Ee1еU 3tBb\OFQo[%nW|/O*s:q>[!v܉Wk _sU\ }>RJјXVL%+[=7goLL @ {F @YXEڏ!)iFSKom7Z'_8MO4Kp%NtJntGD5} @?1PBMU{ocogtkVR$ϓ4yJ ;С[s0U 9z-ޭ8I>u^> ޗx{W`=GtQ]s!<&լ;ti ~ܛM@zmnMSk`ߎ5zNАiwٍMˡu/(&و^7{)Q7-ʿ<"+ɓWUCT *U>VOj UjYSh0%*6\IYxAD^c !TĖpjaO#j9ݗ=ZDkEؒ2dBlE+˄|#]x{d )9(lZ(2 W6. ˥ l~SGtǔc8UNϫFNLL(35^JYA]KI%CBw`P(K9w&7JƱ$%9OHט^76؟%we|ы4UfY ]b,.G+KW*4[cVggŗK۶)o`1 vM[+vy}W}` D(" ux! $R3 e[@|_ C@| `.cWA|k`.cB|`.cBV,[Q.Q\Z-)SIfi(I;_%]v$Ki)GZ#<Ρ{IAV@ `)&w$<%/d04CDͩ0,kjߔ_BIEwxzQ2g Y2ieS?6$uUI:~NRWnk-WK$uut╦a\uc-5jݤ$.CRGnҽXC=3a=+AA.FyG=F3kHzOH+EKePNd|DuiY#.?$h#=}>޻{L4/ ٤20oINY/YZ)/:I$Y[5ty}E |qÒ1l|(h-\,Ib-z\<Rg-'eY8,*'Fj*h`AEʰ .Ue/+)_N/h b2_D')(\n~c2 OpfT:: ' ,{GLng8qoye8zsxST \]ANQXԞJÓ  t'<)#TrŢ\\&b#n oDG@-l_J_œ)PѪVlܟ0ZZV+s N[)+vL |͖60{W1qexW6U^\+"ЊmO6㛛И#Cຈk`VnÌ*W+HA"-뜴VҒsqT~!1I'jx-~~65Ikk;5m V[q"Rl#M߾8q[4?7URJ36j$DE-X-%g%C%h7Lo5;Ohlfi742㷒%=7̙O<{e j3fg̀d2moc fL&n\s4oa/bHve -,;٪s- hT6Zz(j񿦁KTp=PuX嘏L1U}4B`#4n_+tiGk% fF?ϻg okKR[vt|z煴+~zd’VYDȁי"KWAvAYT$GVԏe>rUR.ѕH:^+ȷZQ;$HXɲyUeଷ ݘkk?*sk~*k6_^a.{xefl2Y2GmFeeϡ̔Z!RV^ɠUP#Ҝ_o>lz^c Q_{$1岷5ֽoXXFPw* -4߻҃UL` #jy,w`;`jZ{ԛ:2 PQ__kk!a {,E{5 :Oֵo5 ׿vǿ֥Iq҃yWm,m(K {7޵$[2ؒΪ4wj~hoFm"pubHޭnޤ.ᾏwu%Y'qÑW~F'wc`tUm\6~ox񊮆֝ ХYCZk3OlF]fyXd] Wdi;̱!Uv5ab"$mɟ6ΉGy=c4' Ɓ;i^{$B-lpJp,P(ĮP\E(ZŢYmrЮ}BXsxiO84/a@]$%'Qf qF񳝎9g$rMG_fN2HcBSϹjyёsIcX3 jh)5Wך66%MI˚ {ypHm%}n:4¾pM&ؽfV7oWf#zFh6 4y4D(zƮk\E( Ǯt\E(ǮQ\E(*(K!C.裧 nf|rg\&m i6~Fx/;Ω'1J]9.˼"vwWe4sҜդ)Ne?(0efG5fřa_nͱIAZ×*j$ޛLo=]_]kPb^56@pej9~"a(6]d)2I~광$kh裓.^.kY>Ȩ0?b#HebW(Q4ʪEQ/0(7u|)i-F՞a)5^6>̺WqȺxe֟8_sͩ4Y̩F (EdiCMh,Reu_,:QT}0B,Y! T/_Mq7DZ/0d-L6JBL׶%O%\2܇cAuIza[y[#ƪ 0Q&>dõ4D?|w:>;h5D'~RQ >;h&Ζ2Am-"C!SSySi0 `#-zރ3GyXw{iv<ąh F%_X'+eh^NX14NjޛcPtNUn}0ũml{xFL3QeƒǓh#,!iȾcM aEKj7ͮs?7qgk &C9}\sCvCsB0ӆ c7۰BR@=7ϠzZh$NJUi o 9@gV[x_MsНZĉ0QI0 %~rL%I^4۷n'dyzK"p^>~5<+ZKKtN߿uSK,0XV0/{.xJ*zsyPy#5gI߄NלFua/d@ ; 2 V~wV?+iՇڃK_8 fcԾСNJhR{> a9}:n//*Y :`$N.{`V7lbD<@>*/@Px@x:h(0 rmXץے%h$-CӞ9u9:<&Wp_S Ho˕ ޷8:QFй `qk+`Zt  ewy*{.g J26 uZLr/h1Y BTX4Qn1&{w.X>Z ЏQ3.Bؐd{)`ȃ q@`c#ʉQvv&^2m)d{ I#=8$8BL_URڊβIA9mnTYcxq?!WY_së1a& `h G/;8nG4ؐDbzD}0RqP|PO+\js&sJeju;֭H@0^[O -pu'W w#*}X9! l t2,VIC" ݮD`t#K0g0B tu-?ZkApwԻP2k8c axJ;i*Gš܀i\ޫ*nC 4bBpŨ+)p2 g B" ׯƪr!A8F )P'-U\Q@䄍\7+T 8 $hkse6" su)8*!FBVj[141`XQjgUTBgP9mۈ4.}2!!jhT=R^haR!M^ X'@5ݠ:d[P;MvZLyZ+#3ԩ|JLJ$> aL;7 =@̀FߨNأX#o%G_LŢC>MDTouZr ѷk,*@וɬpVfʆl`\5D,_g_J:* jH۪jY 7a#%/bIMK nh)PӶjף_bEP:G@Ib67xKڤZL|Õ 2j"5iWͰ-sm.5'Inupd-+NAFYoM7oJ IiIdxb ;]TE;7i[_jmrt Mf/}e9t-\2Ek紈:gKl3\n)@UQ(:_#a.Gw:tT6$ĔNA;;/ԋM7T"W néB jETMwj5i.FE< [Ԛ#+7tJZά) Nr,Ag <t\ ªx}Sd0VU6 7tF^xi.v&g@\6vˮ.*[-dRňdP sq$밶6-92҄"-tkK] fJoLzЫ%FYҀImtr?SnA~7o#>J)a~0?zAi>ha6$3CЗljJuk8دn CJj: ʪ<::y{trtq??dl㛓ӳ{óSI qVIF [5Ms4T!ܒ@S"+T~_sl'Lq{ŏiCr@^&⥮_īЪb%KsP,l=}8/ :=^5ZNĭKGt5Z Zs2nuq4嗔E!^k2K6; ] [Iݠ2bΚA*?6sFon|'6Ĺ2=\3h hNV+?o (bv\oqFܦ5J^qKgnؙQӽ 䀫>?pvH \TV2<?4XQO5 ?26uuIuԔ  z`۰fcIod0 G WV" Y .Bdm~*:kM3U`Tjĵ)fWQ|G4:I/aSܦDKTڐaZ͍X97=&^YL?;s2>3s2k 20r!T!Ly"썺~r]xR\qnB}/lt2]6Ta kV.j~twoL^AP?u7.ׅ7Gܝ_n͑Spp7/Eq3&v5W~Ky\wa4^գЉ-\NϷ|{1.'b.̽˝]^Kug_ )#l.I^6𢬹BK:۝/_·m~x^U #H2;ncx- w1i |~2#=OVzhr0z$z\۹:Z뎁=uƚӺkG8$\|2ߎ^5QK47y,?}uoN]uF]u5~Yvɲzwt,t{9!dF0p8>3E- t w㠃-܎w]<@ ^ot3([XtBKp"nIHtb. W)aqtCQQZF?/-h`lG;сv&`v9a{E+08E y'Aԁ 9.WG-wzAB@ P:*!F  muG;FPB)  ۆB]@,_wGۋ_:tx^B>zvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8;8:<9G'N~9Psrz?i7^9}?9:>6]`oOϜ=3G;8:?;zx @χ'cVj4UC/ ѧ} t\s0~8!t`u~?^:{~T"2` &J7?G<ߜ_]|8t~:==@;g8Mo;ǧHkioc#BóU`/@ tJVӳ_^$!{!su+c`fF"TlKɍ:29d _r&z]__^ԗr2DNAubS^qa_Б;qKOY-쑇 IGSȁ;J0,$H}eDeNX?y5rLJI*`\֫C(F1SKKhxQF eF ?9C1V\=Ԃ, w+la1JDAF% 1()!R9i~1'GeqPcX2:'*L)M4Hf4SQ( C%"XWDdQ>t?D JA 6-F7Y>g !7fqz{42n |e,s @qA1Yz̰ Ƭ.O7dD[<؅hoK)1.\ּ=> Î!9n>M0 dSEeH|VfPjxBE|j +iB5( 5'( bqhҢbDF/sT$+0ma_XՅl0DhI,",L vIijH|^97"E ;fYQc4e .f46saq3ZIr5XRd8V%Ʋ'7i6C]r \s\njfX8κ,ι ng4[F?ou) n9=~ǻ4rzQdcǑ&ؚ͘T nxE;lL^dlLVrbIAgL&%T/ %$VJi$^D Q^3(MC$y]$s2 K2)8 '{7 u1pՐS N< KQsQ0ϥgгpY8,z= CO&`׷Ĩ\!2;GucKӬ:cbϐЅ}iH2|inزr _ٓ<%4 wwiI xy*:\Oz- v 9Qgוֹ&a5Mxٴ%n=F|)ڍ9pxF,ѱŽzk6/ST]L|JmSN?(Q|>t |dKC*5Ucġ8Irʎ rKpXYU!1ӡC@cp 0IuK0 tA`Y ;6>֑%Q.HKb^I:^8,E"t|4`Èv|N#6ӈT4ֈLg4RN#R42iFL,AxqdzO8.۳wpDqqŠ|#]qD.TqDA9;לCqe&aJWxRMIKٖklkD-6y_DbXx_*oJQIq.9BE\* KU$r'-6S3fƓ%uHh<1B2 M@*a#: SiKRPHwo )  ԝ2i/<&Dܬ'WK(Be4\cxLp!RccpûwuM;{o]/\=w Gwhys~P=B%`- n!|Br>!X#s 8"A>!d*?  {Va&CP%l}>GA#֘a.؈:;#G]#e}AA- wa'c_ɟ],~> z2!,\YpP=gkc뒹 zm$X#nRw~Q`zD/6{d9\{2ᖳ89κ4|vx %(|l`03h>--H~|ŧ*~C|7߻x~%Qk]%Q֥On-l-D"W}<#)r_@uX*\[D oWjwմ(%NŸl Fhx%5Q\=4pr{;H*ݤؤtzEK0Cx%.;Gh8%\j뉓[o`~md`NO`6z/zR-wbeR]=oG39PEN,st72 E;I2-0`QkY j؈&BҢ200 (3ڧ8{iEt`#IE6e$M#c~/uRشiRTNtajǶQ¡vd(/Bj)љo PA7c6aF m=::+K'b_ץ4͸k&~%Syj7"UMk\V#X_JtDse'^bKe^tH&* .CP|3MН\t |EKa !i!!WxQ$eGB݅|b^Sx0/%!즐hpU/P[$K^ d־W2!׹kCY_ph`ՎS"^gDw4L 5蜹%_;]C] ICN dt ![lmAʶZ7p Z8˒: V!{\KΏ[D^NC8O}1S;ZlC#Sqȷ0Q7ٵJos;n9wͱIeF|V-Fo;ǶI$㉥PV"3g zUqe.(fٙ:~H؂<;)cGOKfͲ֖ꮧ8u 3u:q4]&FP2ʣIMxrH> Z0#UrNl5HP|z'֬::WYWU6Tm^om9#EǗU2/ Njen[+WJ@qmԋJKNLS"ƕgtal_GNh@`E^[&W6Nz-oJ䎦hh(쨼cYVf3SU*mP~w1rstxЁ"(J}ܾq"WHZh#~ :egfsF.AH-h=qZ>CɪC%0;YME#j98*-6ڀ%Ldo[ jMqBi( 0!fgJ_Z%>[Lc; ,\k|&6S:ěDݏ#.k2w5S-O̼0iwGo/.1X1oW?ԯ06?WCE,&3^< 7+` E5- %GlAZj7i3y|F6Ko QD&d8f~KRyA*^_6VEWI|!n:$K.{@d\UV%Lt-A_?<ڌg6VHљU:9?EJX&-n ¯_ 1^QW:I*v\Uz}[Ώ?{EM {̜~DءĞ3L7X՚JD[A&*~HҤ $X{ȩR׬6ӕWLE&yPBPOjw_U*"#LG) b1 ?t{6o%[V?vL17"v$qK)U%l ;8)`&8X[9Zn,tOTwf_ ;t>57[M6bCLCKN{ qF}ٕ3zMՐ`+h=׆xBஒ7vR %QR֖>.,^AV`,85T-)|CoąqHL*K\R-t )#V'q-Ci&u5evKfEkjD6r }n0ˣ|}.5s({s gjՔO\1& FFGh+1">Z{T]>ݎ**BQ 4S${aح<羙2-/kmQOu4ϏX)῭}:|ryfCW׷8#_ގb-XcƻQ:c=1zF TC^:rۤ9-iI*IeTۑm8zNDj\qۈ1JO,b5F&+-%"- o)Q,Q,QviاY> ' ciXHd ;!叝LLZ[Bt8eJF@R63&8gﵮ'M,2J*òEhB5Ѡ̺s,1wO:Z<}5$[YRAbӺLj0;{v b\&L(;Tڀ&Gثi6%ʆccBD4Vɭ[Zi8+p/z*8qZM=N$'a8'q|I qҜ9N*)}xZb{رSA_%,)%11oH/8Gză$TS$DLyARlAU h3옗~"mI'qDQ$I`g:zS$xZNNq8IJc'IBSũThq*8Z 8yiE$4"9L/D>R|~D5_(gIY^R|+F)@@CjfI Qe57- %4bV8eKiieV8eK)Vpj De]I g_,5~4S2b);K~ w-%~w΁K\='F"g%Hʚ/3g=!GG-e%#;H Q~AU oKYvH7_SB-,jh+˗#\j˩]B]%r+HЫ ወ/l_DԦ\ T65Y.$6iRVIئ#j3FV|F噌[ej .J$tĔځΩ/R(AE[EMP*ΚUĔފ$TDV SM+9L4T&ӡBL]$ʩbz(L "E t h) xz&)A)uOfdJ '?QB1bO~BcHo+꒭3d-rM"c΀ć>7H$ym^mPuc>uD%9k;仺궻Gdk/H7)U׫\TX -*ǧtvI;-7({ZΘYYlkC!jo?JϑW!q:MMջf/"]ml[T-)&GglԚGKsڛ5ILݫ6 ;~0C4d2%\45YS|%g3eXڨ<[Q XV䒻ȸhmfl@T ƅ㼌Zz(8_ [#ΐ>(U% `ũ"FEi#!$N[ .0o`{ 4vAS ZtieSq F\ZlT_z)s1o<؉fNX3>F&^\y1%ۇQfTU]mlUQsN~>:8sO>],;{=@ :P VttxԽද:Ap8Z\v\w5Gt/NN^u>VPs0%wM jn9= *;J˃~0ZCna pt 83ΰM.o+;l0a&0\00:#$:(!+̋.w0 V # f1 T'Bezvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8'5dO5pNN/GvqZ#Ƌ9ogޛ㣋_Il s>]<;s>|:ع㽣ˀ4aX :wptv]>sp?:wk Ȁ:?/{?A*%#o/.>^:? 3ηsB5hb Uyη *0`+a`ٯX/!(_>T_Ȑ$ɅY㣟O)VattG_ُ([Uhk[g#DϏcg?~p vߗnpe3 z!o}C@i惙Y7uJ@Ӎ`%E)_,MYQ/phF@8ߢܣB<Ӈt)v AV ʢ{!5R}eUF50n:fPXMʅѥ$&zyNGU}x0r| fWIxE0404N_˷b/MgkIOOQiJP7| 1l7}ak?0?m7Ks{4)+A=Q**G{Ka*2Rvv,k9zӡ&2*?y"?`c22%XeK-T.fr9ol{_#?fqn"OwqO#:cѪє#6s ZM2bHbHXƥo1cd1}r TDiWӃf3y8̮/v]p$^}'4>-EךzY#o!rUy ۡ zs?Z&RР̲T<G`Gfq\ʄau*r% M)cjX%IfY+''Y=Xj>UUf8M{,^q^RyF~Xkm<qYj˞3ho8?3t.'޸s*G7[*/ I)G(iy+{߂A/Jxx.NS9~|4 BEV`cz\8gkc>;#(0yBGjcfkD1 n![r07Vt\TU [Vk?`#X 3Q4" WS{hb?A=i>/~(Y eFc0e(xaRoҾ''O=Zy#CRUVkNt2B"x-.ʝ uLo֛Sœ$@%i)x2BMOl)+%b|[ V52LʯjP?~O1E(LGlŽs$;tZJ +4a,gs9t;YuͿD7#$ h2"FQp<0oK2X:Ƚ6RQJ&ejEKY2.@/12#9At$|!R0V䚪2ф$Dj uoAxyA1_ 5jPUQL F'7g.(<{Ľ^SlcT]~o+s-KP.0< ei~DxO㘖{AgF_k?lc}(h ;tL$ pp͞fb (Gp8>vm5GEvR|T~]b[s7\1a/J z ~Ǩ\ ¯ 6dw@ቔ.>?ȉHu!fv flË4aI؝J3ЌT? nh8){gy`†x2è^$@+maE_PFlYIStBDWHk}<6E(bC V1MsDZR9-F\HI$aITqa:wF wf1q\Me$aVL IbEtIfqjoG03t}˽-̘u:v`* FdiaeZw`{ 5tZ.Ɠ)U":JkiMŝWv~F`ВQRs? x;}[_\Rcqԥ uI[ǁ3rNNX;7] b0y_ %9#T}PewU% Z_B5DCCKcƀW -|`.5A.@](]n`b+jP .dQ1:ϐ(s?eeg xܓ5WDT2}2y/.5eszWrtb{1иkKK ǫ.H14L Y(\0nhW½g$)Qܓ[N&rl1e]t˻L3'0$0e +[wZ㘫9f>q0d,+ @y嫼TyK #2me[ŀsKx?U(*3(.c_Pڲ}L 邼-L M(G9KFm4}`70+>G?/;BB(` @.QSMn hsx[l[!*nt|A@Tby=v[Js8`,("XMݩ`X2MKL,4Q's1DTssf? $Q\oL?Z|!>M\p*.<̊PN!mv h_eDc՟o؜M_b]zwpgX-;GzM׻ uc~aB !$? o8>uS0=]Oi??#ӹ""὏/[yHgB)kt*3Rodx*b¼*_S|^A@U0l~9яFl7"'-⨲YrRCTj*kIhXYD&0vA0i|2R,'aMt;EMia`EEoC-߿ږe5ƴw|cQq'_.q-DIB^}jɃbw={AH H?&~ުع*O A ڟ|C a-'m`ҁ|c)z2W¥\fb-ӵ<-39t5 eiYۡʡ >ht3Xʻ\T&K\#MqkD[ë= qq}ƊdJۮ\GErjG5|v&VUʨW -ސ '\NBI bJ{Y%׼-IO}YR?7o,U]n9Bb\?gd)s2cl7zhf8u>wp9SMRv,9]<#Bك捦 * EH{8iD|GXD-ؤSm#%2| B1è&)cZ/A8rPS%"h{10r#;%Awv]S} NѫxÝ]Zk60vDWbZJXXУ0 Cjea>vn;euo6B`pE¯㈯B7 zq!܏oߣ[,Gj&Y?Q `Z9Ԝvl}R]*ʠz%-?oZbݰӒ_b|_L,ȋhi/x[mː?:cjoDP_ъ& M2XG烩x&ɢ_ъ& Ʒj柨 ir@ʨG=Z*BAU?Vs_3Mve)[<).:Ԋ"4ZotF3Kx Լ ]6Јz[NƻXܦpe?" /u|&B*Oe6-JJ-KRGѯS+uͤKXOI;oFq`Gb* -*r.q6IDj/'p%@/)M6ר&hpTaw1,6 H etSȕ2h 0MEr(ƯJ(YH\s6\0jOt&oC^ qt넊dߣW%DvX3~z4ijpw]K؇/j^B\R^uf7ߥ zѿ.t'Q:I^{}c/c`˘>PucVx%E*|sVDX 'tV{JJ"U(&7N!JS2RX{Raۜ+Tbg+`HV) 6p/*^4kuJEG#MX H)7}ؽmVa0(^J@kK,S$r[1H279hB_GQ>|ATEaÎ&y9J aȠoqK*{ı]J`cs2`.cŐ6ayKo1Dky*dLM(9kJٶsy|lllllll<9[<=^k0J|uMpQ_!FdBu*olll="yO5oCv%.5d7A0i~FZ_HLL3JѓZJryo[s9:zptU".ZDq6 M}ӕ\HTJz,\wQDر(b,KYLKEwP}X֖xupd8~#/N_DFIVBaDmrKeՒxU1{tndTFm%ouU|GD[$◬F,9Z!}PaE! {[ !tEoUqt̄kT}Ltu;@vByx+z}8, \ 5xKk%J]œzIaK ghvxQeԳK5]5ء6~!rрHx M( /UQ˪ꮦ`\]yOT=)sb*^$}ra2F+1Zyy$M;:>Mjv*-16"HNpg¥":/Gb"DV2!\V2^,vpp7_,;P,O' &꧷NM.~:4_tC4'&  &0QУ2)5whc$&σ^v>VE %\W< Qoizl,9?dƔ{!aOq=%.ɠ-Cnb6ƌ!c03FRX)3dtq<[A9t4AnXAi@x(RȜv0"K dȢH%Mvax,d;'YrqO.у"-^,R2uݫ.>oIN9/1 OQ@7/ !=>b_/>ި}Q7u1d^ nӧX>6TsǨrގklS ǘ7IV-PG6/kMԁqJ,I8ԅ;D\ /^ r zT/}:4%7g=;n-еo/ߵOPWe4Ͽ +m6jvt"nQDZRRMC'֝vВ?`^5+U"DA ZR4D'mq). _d``TK@f q0*%ӉLkpYќ#);κ)c:Ǫ{1DD^ƅL8!f-aJ;f%%zm,QnY@G1#M̡챒s5^٩"D3&ucDGMgit(ѱ !O/ڊ^)詑s:pq0mڊPh)6d,qSp&x^G#xa8=F,k;6%~RRTJ\;bz6e(Q͓*8K C-qqc-9G:$gh3@K4z1,ޓ"/6<.QDNg4dqa1fVv46xF>HG^WJJWWa0*NPzSD?(^ߑc͋Zi9/KVR̜Hv&8N^-i+ɼu<kO%Y fĬN>VqI;c?=8C>I]sL,P*r fPոN{v9Qgh? WrX;1LJj&[ Q].5U/qh]@v= -(d4(ӓti[*S>yz9e~YT"[~[{ -x=Z][b6%$.).cdcؿ` a3 H}c. q'~˹TWf,yT+vޠbrнÅձ:2d8'o̎xizȝPfVAH?&+ caz|'G`}+z`C ` w2 :Pg?^]uNi4X1ѱ<2H4&HhZZ8iJxMbc+S XdIl#.'M'JỲDRU;'YA1/K2>yPPy†vcNuv;@k'ai[n͓klQ_L»N7c*kjgYNCS Hl-U@7*m,,Յ8Ygї^j{ŷ f+Z߻JVa[ ^L1^E,pVзajGX5OI,Z C3d–=^]E20`Q[ݢ[ $ǭ\D4՘G&D:ԗݜ\C6!&a>f6C; iaI~iMi+~u8~o6%ZxOb:;#W3)轰쟀e_%nkChDn: J1YUy,Һ֖J]KGBx96. sZWLh4ju|%1:"-uɗxub! r|WkrtN0Qy.M|LKd-s'&4ٮ,~[VLtCn(|^6f&=Iv%y-!2[6}.{'wi*|V\=J+$!s2xU(ǔ<$|{le}*OLeqJ CsRMIקOeJv;,㫸_-/? {Vݑ3[}cT_JWhC'Yl|8&vesvaΈL @kP'`,?Z} [7 6id jcn[-g6 oa-,>;Qo7X{lt?~"ͽ'h}9+,5M=N_ɲWMZjd`ki|f,I5Rw,c c .>m$\JC.(Q$X%Bk $:۾'XPᖬŷ2.6 !}wh  Y  b3ʴ2Kxʛ}4s3ɦ.yx5 3E{a?CZ b)F3t"y)_?fZŮ2~s|*oa@2|kJ W3fӯ,cpW,`a_/ qw1FRK`8pyi09^TluYu*Jo[?ӳUsG{tB_Y],NidadS]G0tRD&A8 Ԑ[2^©gψ'Vkpwo m]6[fk@ t8E]KY7C٦lX6#)O؄W56ޣ,q";jRxn&{8y$Cîƛ4ܠpJM$D.Ύe2& u})60h4Yc^]mk*Mgc '\tp\^ .{ lс8k_`xbsNח8 Bѐ˴}q '>L0}w#8XzOqM-Tw+UyINױ`p~oIS! ԛz[A޹@QQ.'K8aKܒ |'{+J~b9o&Sk^NizN0Zw: $ `a{t[d; c׮20menq͆[2Je9O^=W%d@7/e0tj4(1$W7-4X]vڐ$ hߍmşȑX5 tñXVa;?^A(#meTșQZ#B9ٟ(v'Az,˔˚c,OT$Zi o]=nU#YDkMp+˗Hy*e_1$1]A2|| lvl~K:ɭʋ,9/}v*pWuwՅAvўzld!' 49CXrtv<a^f״Je Ʌx:z㠃-܎w]rc5)հ~&Ӈ0Ҁ$f0"FNa' '>Jn'^IiNp !;yAMPQZt4vѲhV Gzۙav ޣ9VwORk00\0Aܭ;#$::,F+NF"Zp"%umP0{cxwteЁNCΛ_!ïgG?pޝ;{',7/Ns(;9ׇs [@N.kǃj?=5nsyx9:>6]`oOϜ=3G;8:?;zx @`:Ml|sXuV ;8:;ܿ.D`q9pu;d@rG? ؂gĺ|s~qtIw"^F.HP|o>ZHg?`W_Z@00WA^s~ywϐD`BpR!CB $Rgß~:<SޞbEVKGpD[eH:>UFu~>B<0 ;Fz&3@/~p}}9WntdŘ!n%`0b*]Lt1.TwJ3a c'IW6 )I'⁷".B'G^1ٲ]P< s0½.al5튳g! ^>+KDDQqü)[yE+A2GF`i(]c.δ?AT`8Ff` J6`"5fF3K ƌ@@ f4\ߐ83,*uA!peN>+tŸbvw;d_sÃtUqXBD$8!Cx)jQWnt{ミ/WſVH52Za@!ѳ.9 }t @^E4x{OGVm߶H_K#sov0S]ȗ`483Jrw8ԉj›W`h2[_`=oWWտKt鱊낆'3@,*qs'5|:]z0"pEk]s/$Hi#!PVa {VG$b ;phplpsBCBPFǩ%椚?#@Ga~kYm-gE.9p; 8In upҟ'D<I!/3H3n0W*R޴ڳMóz*~Fgl*@Asa_[EBٟ<; )nކvysqY%P⊃ۂËwK[ȋ_VnA:t,}~6Heaz}Az@GzF24ae^\TsKtkFr3d={*Ѱg#PoE:abחָ y!Ey&&90`%w6ՎL됺£}e3EQ@э<!I6,z_Qʶ.)::E"-Lt۳LJmS!v)TMkꙚSI[)PyTkRQU({sZ7Gƞuè(*ut"uzuwzX߄K#&A96S~dƥz6fZӵ:R7nAV[ 0-M(@3}K ,2QKiESлzƧ_b5k1@{o.:wLߛțl =B U³GZ'T3{WW*uRI5]ȵmNia{I1p8Fz鵾28ۖ"_W^JTXs%fb@V7l@E _w^u&.rf"DkgK!0<2ƗCԄ*]BG27()9# YZ< /9;MyQl̞zo"Lq;eO9Ϡg,n齭[(bSS}T?=1mѷ;GY:;r_ݬFزsH8<Z| |fY;̝Se<\/ΧSF5:gLmUS*)OlC@ oMZsGcJ7 'x9js0 I6X:ѫ`Ēm;zUÛ%}h8erNx2"$kp$/'cnڈtk߹3Vz-K%s(A~wgXCUD@#T$wNgݼtu>ЋG</uᗺK].R~O/dD'@+aTSh^'Kp[=b[S@)jɻ_,a8ѩٹxZhTN>g~QM >w,.ϥz#fin5?!w~ߎ@"hǾK{޿YoiЩ>;]Q㟂~JNF ho_oJH,FUo9L)J%4Cc9AV*[Xe la=ef`G_U#%QDq57Hs~'/1s;aMݑx8nx{@4!w/G:Z7Aݾ𵘳sb^ً96g㼧JW<vHϝ'$ vHx[M3x)t/cE9xw~JG?Q:gϙ<8BuO'$7 %;ƃ!ѕ{ߠhA՟✄Z7XXGbByfy\l^6]܇O)l%I47&`h &[)넾wv!J,'ӔZ,99:y{9q>HdgLl-fhN>htLް* ˻S21 ?_`ޞϵTKH(͐{>;( K4HʣӏDhTxgݓCZ) 6A,πN*|5Xr>.;*G m` M0w3|57gˎXm8 &ǵj(0QkF ns] *w J j}çzIf\]va~I&Z G)Im;,$,=MXlHn,oZţS?O9^/01h#f"NAؼc.e:KsڃWȉI%Ф@j#ݛtH>R'T[5!༧3hդEA^Ģ*e)o!J?E޵KQHVDs?j˟N><T>tŻe]&z@BD䁒B MݎOÐ\dâ7u=t/xwđ`N/ZŔ5& :NՁGEؾr裱 Hczs2 ƃ3re< =<%0.۩!t'z[-ʯE(OFxoʣDh*2 m |o ȥ!DYX5PsҰP*5i(e = 5K&x3uIҴcSs>n"g.Cp4҂_2ȉR(JRU%#H H/DQu$/߬ vu; +Cɗ^B1Y0<#MI%k yH-5~H'1dH*} ^ q\2)Su>*FsTr -򬬲ءvd20Z!APXq]\ %ۆӲ4ë Z%U1:.y1|܀%i;Kτw1"6Tx`-M ^Nj\ Փ\\Ym+/z7Z{g[[?PЬjx}dn?GRt'g\`Bz># a7EXbAkχ ?(DG t'C+Q-QDn'!2)TM3fIMS}'dsFJ+ϩɮs8fv^r)xj6kfE$Z^ fiQP%ӄkpxtu[f.r+xEkr(w tRl/ߙwٟ{w='kM;sM'Kdjd/Bo؟mo6<'{&&_'ГWB~eۥ3_Yu7ɯu7,"3N' Ӎ\dߣ3?Yoߙo?Y Ѕ2d.? 4ٟ4(,IK"'[|咱Hɚ$od.|'_zqE<7{&0sKܟN|H` IȝuXIm⾭tǕ`$يݽ4/l9* Z{?_*w_Ο_37O&;V2iU.È ̲]?E_huܷm? y'J")hmg}~@lsr)kZ0ϠS׶pp6N~<I@j8v g *h;vxҶ!q qE)*4IJhƎ+$INE,hZe"K:o][u}UQ֔v&R R-!BN1sH5h jKhM0!M\8@4y8.dG&ԋ7C4!`%Aծ|1pGvw'Lm,8 &*J:,*6b*aN(GF?V@ D1 R֢ VTb1ucҕJWE}tVx! *EyE0~ Pb v83$ܿ=`2c+uYDn VP|Ԓ@m|)0anДfa;I0>U C`\%W4\ghMBD/t G,!j_snH9LN~=n`Ar`]B.$M$!4]0&ɪ ǚfeFVPP\aCg@%{"|g׹e;r#_rGTaYQݶJKcO@X­rhV;vzUw끷^|6DxGrbΆ=CMKٞPKvxW~5+LB7Շk`'i63E]ei\@|U|YXeҦ,2P55f%f4|z'M=F²2&*/l+KMd)z!IQu0̹͵XQ]QǓhIhB"sL!RNȢ{,*#feQ-9RK5mIה,*g3r/IJkjW}$Ŕ ?Ur .`2˿"*"2.b^W}EYډF⯱jcXX ^z* o9h6~ |h8bkǬSExxLbkDҥ#_>1[>_rO݋!}[NK;U UzH_SO!ySOC p\)ьJ2UEz<_:.bkuvn D#(N^z"cv` +/t 1T$:ŊJ(G):Z!HZD<"gZJ9fuJe0ߵaB*ثrWenvW59kD[嫕 -5S[4Hvŝ/9~|tvF]u"oه3++9)ؤ!u~X01@wK`F= lF=? [ST,QLwEQ) 1%᲎by$I r4 mAIR&jj x򠣡9f@]8:4=[0;x*XL8$:}Xdp*L #H^_`V(-&eo9PVs]bi7SJ7lHK`xÃe{5"iNjR m:jOT"2` &J7?dqo/.>^:?sg|;&n&Π#B+rj I!+1 3A39D7bB<ߤΚrt~Xh˿Sñ$p"$5F譳w"GQgg= i 3+J+0sM 'сwy&1.DcbqI¼9:4``6NXMx.*Tlf&ȓq3~ сvhMN;\l/#d1װ$^æמ?ޓq~/EHJQ-j1Offvlpbmb|715honDc]TFl:/,܎Tw^}D3tHDG)Ba*#xBrBSh^@bZ^ 8xf^BzN{N'Av€Zw6CITbPG1Xb/㭑iPDbmmv ڥNp6gLJ?Db~J bC1uKgж/"9 B2g,|FTU(Ȁhj.dwӽmBདྷeolyfm u&l{00U\U4 ;{0 $϶a flMC8dbG,s &P$[r/YbIdA<` #+jlfQ-Pb'EA SX-ArcǬ3>xClAa)ܥ00u>{'ʘ'̉x 1s gfue.Uk }Bj2'Ff3rD Mmiv֬/i*Usʎ}![TTMY_x/i*#<6l\uTBt q~.^wrtGpaz'蛠P(^]10~H{\ &λ.4Yߥ8A3`+o G?A !BmCwaIz\ 8/] vNQBǗk*_J4T;q>A~KGޏ'qʋBڗR_l *@`:ς>{,yt쵡uJ>^8bBHRx' UbXZ1WgYq:\*ƢE#/Yc2sNM(a::Kˏ+űz&c|Z4_DE6RR='t̤2-2+9Ittc+ȶub3=/X+MZv2 vd:yfL2{%qG-&* "R E+V^& 66Wr+;M|X0ePh8ɚ60 /_3D*ND2${$Ky`)61SPMAd4[ xۙZ5saӽ?s/+12D9o'ޤ{ⶋa8##b29Q[K¶ٞ-ҭ/ASUz޺z+^vo]jġ]~NN#kBxWAEJ w&^cq0=Uz"ᨏۊF,Q0v׸$q `kG%tЊt'_Gxw0l) ySBVjHT J;\O/8 |D3O:c'XY,ĽA1ogG U=)=eŸKgJo7*~1gB0[ykaE cXNpc8OE9̝)ZSQ}LO0vKjN] 9AAsE)tYL0vcИ>,iazq~ @7lP [hwkIS*CAe8IF;u=DE55{8^!6lba4OW,>,Y7 nя`BSvљ7<4HXb2 T`rC.#kg/Nyroƺ:nB+/AQOM7P"hdabwPf82a((P r o9`,揈J/.эL24Ty8\0֒Q_[Av6 [1A̍0cY<(ZxL‹dEsɊ& FLtQcB挐XMF3'W+4n [-{ᖽp;e [6aH O0a i@[/qÌtzh{P"`~tA͚ycmD@H'?q6÷]OrjwӾ!ݡɳ~&A@Rg{ب_>]^oK׵`=j k>]Y{/h^JFb뗿6G@UJig[HxF/ݦHm&: F@F qzpDlogp>23 BX#. 9(ȿK%RZNrCS /hu¼ O7ڱv/G$Z>&_f.9K񣾠eXZdhJU8d}_ _e&Q=OSIvĝFFԇhG8Zw(a^vs; ݾ WnTҙccӶ!4~x:Ip~t8,Ɓg\Ѝto WywOSa qc>Bvő1)m$%0F&UgA N%a3 0Pp[L<ئ֤Ms4o?=Hm!c4o)4IZ) Q8dsݵEC+KDEW8{KqR|i5<]lsP.A'&}ސbs„ӻ`[CtqV}s)M3껡fY4 K<c(fkAd!ɰDbI#`Ըd%Mq f8~$4U4Y+1؈8D3Zf7P0l{7adKKb[{8" Arq$՗Q&[E@ޮ[cѭ-RHڗ.5 tɺ(ny:ڜmGOܕQRu- uԳw-Qz6 uiW͌eH.Ӊ+TdiSE8Oė,2ʰRէèLkQeRec 55%DvS!݉WrNLͶP3dah,_9>4(P(R`rU!IY \Ey^|zC^.54]f^>?5ҙy.a Vr+Jt+2t+QQPG:Y:,Ѧ^63vTil9"Vaɷ R:ₔƬ];W}bX(mItOJRYVsve%3qe>\P$ݜt?oJdۜ]R(2T:[\#sZ)yFލ'F(d+Ňݔ$*{etJƔNY9윲r iVV.Zf3/ii6"Fœw޹;Nov.1.6.IwxlPpKN}vșw ] ;ֆLXnDB2(3s9r-E}N\9;:,6Qa7w*+ChfNePMڌGf37a\༅ \ p˩H6s(W9IP <]B#Qځ/.69M(ˑ-mɐƙѦ0m#[ߡ{{ 4Ava4 CҌ6gܢSתN8^ CB QR&-<*mYţe*W+o,l~^'e1Z{{YfXesn^7oiKc9MCE;(E[:mwwNѕzJr=KsNה.9\s ]\Sx.f3;r6,p ̦oa\z,ٝɛNQds&o~W3')ni^9s3_s|纀P=ٓW.]!K"upυj{s8v9:LMx:B#%qP6k.TӜ؛ '‰=YY=ji$2AQux9Fw" jTcѣ->}5crn8O``Ό~ } 0uo,XCߴߴx7r5GM|ood[1#}̿Oc-c?*WK[}EӚ,豯pN]ұ<>pn9KQ3[G;jKZЫbY3^l Yϓ[ns0JtV% d rJrc6J;5(f.5.\;*_U=h;f 8SJɌݞdF4^' 9 ~q;37dyO)O 0?OUSQ/U1x\2vfn.e[70oYo`Zq;tfؗsSIi^{^SQ>*;&f8С;~ȗd]&WNx;}C%=ZA-em]X~oD>A$ TFY@PћMhV擹wzc qogg 'wIwԓ;UƫStVn.D+]PD.N Ņb YtZ,7iѝ"E=[Kdҵ'Fss $%.;73;tiw#i/u ȵRzʮapgH\yWt[WrML!{2/la2U}θ)3zW"Ff]KIf}L%U25mZWZ36f#qK}–R@ hM!֝'E6*.g)bLQR;[#K;[<㦕9Mfȁ=~$4`ElO`{FF!قE:4!؞4m=5-ϋ W(4G9y%3tYM{GBmfu?_~^P|FǛl$"V2y=ar=9('i)/A}suؤ1ई:l6i*M|^,FqHlKt4fiQ3Z^"-wMYSߥ,i,K'ޓИ8y[=xo)[q9c7ȏ?*O(zO=l҉$#F&?SL#:DW_p(SbjDFYPqfKMRbz|K/Ԍ=Y+;ez`!G3L+94Jq4%J#i$U++ȟƙC'.g.}4m4NY9P3d숝X-3/+Yy"vj[zNgVwF5ws1wP/X"*vO>B(+Bh3&JjcͶ"*4LQz\E!(qQ`? i3^nߎZZ vF0YU/7i1IEL,Cl/9&i<(p81INv&Mͩv j<tz31дpXnN Du68PMG"6܄M*-`?N*NZwQeSvZ7ݰn, J:Y1Y4r(0Hu0`l. `MoXKQH_&ND(MSboD}ulcG T\ԳO3g|61*jU4F%GKn#6\E?%FHgRo^N5|󖦉NLU5**YTك KJnb|UnUWE{Dj[U=1%m3gdVQ3jjuzKZW֌5!zRl#"$Vz-;n/NJ=\c n H]]Dd׵7⍞Ymlvllfff`,R.AMmfմŒ]-/JT@D<5S)Rҁ%+2q Hۗ,y-[fYa#g |ε0ȹL3ה ?4L5"0O5,SZf&90ȏdi۴fZ/3 #Szԁ ҌFK% %1heH[amgŗ1IqO6 Hl@M)li@9(O\ءեonxD)(m r^R A 9@L& †z1bOCKЅ7:lRTpYauh-`w2+?s ןc 9w;e忡KY[n ҞNo>SO>/.sNK=}:ȓ>@VuPZO;Ltfv QBXՁ)$͔ r~ ^Z:&BIgFƼS"P۳MK]Az՞l6!BxڄAGN6!qHЬ+5/[!Z5c:iթS:ЩKKA֧z>]r>bSKyٕmRVJBEGM![ߙ-Crh9W %HR'f(+Z 6j41ب / s>ssTySSYB5-EMeN5㧲gjf b=^VPU$Wao`@:Q6 G.Tp4i8+kt48ETራ6;MR3Xc[i8ff, حݚAު X4m&,֬E/;ғ4sH͓Y(YNSkIҾMvZfMf~'SrT7S^#y٧'4œlCg>p^pްO8NdejT}ѣwJ n|j_/Nc">ocH?cJ~Fx7eO?Ӵ쏙~iI?|,44Y=A ?Mjij4\ޫmEӚ^ 1M:~JJScPK#$,33hU9Dzka=o$AP)$Ce~Ğp|ʅjq#GSu$ _P1*lbe-b(HSy* 2wބ\p?ƥgEVZ S،n$r3KAiMa3Mlh z{q&O2aJ{ ar6gܠSoXOnjr!H(P! ) NTV'Qa0z<'Q@$A X|#;;GNut#‘3ǵ9ݒ9o 1T{Bc+|@X NQn򠑗h zD g B6FF8H2ܒoh/eP^*%k(l9U}2Zq~cS9^JŒ}hrCBfmȼ|Q);Xmxm%^6X3^)Z6mŦm0iaO=[z5~ݦՆVuag!(]Why7 hMae14f8~ư1jP%[cu{:C^TL͍w KW1֡ H* )ϔ1J5U,Vl1J5U,VPS0IP`xSC2XRV Q$aj!%HbDFY$v19_/5,õY(A|sDrD˲ʒ*@WoDUV.{'ʔg &Õg?-AoKr%;P'#d*'w}/6iOU %¾vO"웸u̐sD7o:lXTqi*MC Eϥi.(#x7x<`S},w) l!ҩ7v#nv#gs#8U/,UO4 >"ej")S3H'5D+f[8Wt!(3Bմws2UICA]6 S\KBd-5t ġ;8PMnG"6^n¦E uQC(%kp䨡s($n`݂Πhʮv4ef5ఞ|YKa[ w\s]Ds&sۇJ>N暪_Pr4׸nԁ6`"5("5(&"]OvQ րU}tc- aY:bWtd:*53>m8櫉dx}Q)ka5%=kBz̰%;BQVmENĺ)$k!w5㩄d}ɚëĐb$$͠o1Rق*[3PU\ȭ ԺuCwe67/GJ*s${U^U{{Fmj/j״JIb7beJ/i9ȪܞQY29 " &PE2_f_Ĩ^o2ꯗ+Wnu隲&__xuMtyC{i""p9,b/b/b1,!<)݌&b{Yypgr ^1)f!kz(HD~b#%S++&uDь1.&u!H1ˌIk4x8|ũyFG \nL򵫧iW#R1bRҔǜS%31,КQb }D@5 Xl݈NغhܳyhY -7TSh}"#FpD'uY2οOĒJYfg/-El2odI@Y݆uI@Fؙ|g& |=0߰mJ@:3ds9䌢>E6=b7ȗ09Yr; o)!_b_f2 7i$gJѓ)FO"LnXڍ(d9KFiq3]ϖ"QH@ӦJPYs"MŌ*nBgI,YXҘKY s` /4 -3 Iv!]$NOB%=ׅ!CCpK}Ac0ύ 1fȐdjO|McH#kH/Ad'ٗHL%sdHL%5CyF1OqsD塒8C4S$S1IN"'ɿ)mTz`K}sYftؤ$31,3:lIf4&e 9nVq3oPS;A:6R xbFar\)wRzY`ؚՄ5G D.!i,"q(De]0cvu S]OX8?%9M}Bb,#f%Г.w&[44 :rnV$^O_Ps/@0 _q^aVBv@g.>Cj\VX&Y Ӊk!x#T\L!*# ģJU&l  P{LD?$͸  *1SjL8y{D]VWѫKJʖ1~w0 Gu+#,a gp{ =~A)ȣ14_b_"l!_bUPGǚG6QcuyKViRWs-0WMٿĄ n{۠ݽꂥv@:d1ifg]V-'JEH18Wf Ϣ,R7j` [o.^kZFx+ /+lZi ?Nh L;F >ە5*Tm'fʟṊ,cS :oЪլ yjj&vw( luw3i=$ N _D z@XժQ WJ%'U{Nj՘;шZJ=FZ5N4m)砳B/e+,ʰ|Mw/Ȟ޳jx|%߽IS[X2+Őb&0xE5 ֎π_)fCa(O`jkwe.V%ŷG4\D "cK<<#f!h9-y,Qrj^z 4E$< N0=Xi Rt[[{Oo@oD4!iJb?ʌdՋPGdvP`mlHi=Ie6$ ŌI۽>c0|D".關] C걓([ٵ˭o)OG(bwwۑ y Rݻ쁻vT q^~lG#䁨f=lr5'{ā^*{"i4//aؤfm$#a{k&Β=d_ER뤗R ]i/u7!ahsM{T^*mn򗮡WKƪViV9O4#QB_ň@dȖ.t5g,8&P@젞,Y9*/c>s;+v0O`8n&/8n&8n&8n&8nU7Xc5.3zPlytrg Zry'ԏ$=}$W#7ȋ?jmm2jB/s cFFFAXѢj4hfD-O niJKQZ{e4(Qh]>`潠BJ[ȰsgdإfGa6u ĒB,qQ3)2'oJČ!nRІhq]ܼwu>upZ]b2q%(== ތl;ہvqv#Ц6XmH+"t?yVD bױ6IrܸѸ) &u2za_ yZ(u[Wl'zҪ+FT;Qwf; i&*[Iy[IyoXI *%wĬA3EVbX`՘ 4*^iIin!{լX͖MdY4٫LaBlJf8~~gg GӬ6y=nBchu$>>T!%Y5ono(bʷxqW)PUrMra((zl0ga6 zl+QQr3QzRٖQ=i lĨ4TefL@P# ,cYeӝMʍgr{Rs0JdFb}wDslH}wjZ5 V *XfaaqX(7jZ5 F`pb!W}̍f >5VEj$6:}Yz5Qv8H.Re7lRC ~(MoʕgߨZ%x#I|/>7z}nHY d%^y27enfI3K壑w~|4n/Ow»i瞗ƽƴۓTKS/'4tdg LkђA]Ilxcܐ>2r}BLK֒n-HӒkIe{6F>!yikdᝪ#Fd Z2l[^|Z4KotddP()D Z4D-k gJ )It8)ҵZ- $7 Ggk 6:XW` ņaB8:T7 GW&nDkk8+F<^& y+ ";r;!N|0߉  މ 坸0 ݉  ܉ ŝ0FcHvDM;ӰZ8%וCWsz]Yϡ+9te=ѕKW S|,:YUg=AuTg=Au֓Tg=AuTg=Au֓Tg=Au֓Tg=Qu֧W}m!?yU!ۥUu]ZU!٥Uur]ZU!Uu0ZU!Uu/ZU!Uu&NSBՙЪ:i\D/& a 4)5@hKM  43!IML4ӥRh$Gx ;BҴvjDyŎ4B¨>qcO5ؓؓxE1Wq h7rMv]'6-WDc[1ѭVLt+9&Jn%Dc[5ѭV۲'IIh$>+d0m3Bh:+d+}3by+*5J)Iy+4dVbJlz[Mo+m%6ĦWzрvCj.ӛl[p>JJJJJJJJJJJJ Ш$*ruc`CL]J`3R|dz ;5ǥ9Ȯ-uͿ@hkn#K]&WR}oe@2ݓ/Lo cƬ -@'"ZŐzig|$$)icCmdOuWӧ+>|Zf|`%|^`#||̛ff|`%|"WAK@(3gGh# VFI<}#k[01N|7S3FMnA&jw>z5 JU Po3IYhk6FAŒ4MI6i͵Tef-V5ߚ|yæ vt]1ph` 8` 8[gFV`Vߋ͹Y6סa[g]M 5+ =446&<6nHМ8{QmOL3qo~ji&TN%TذN|_0+6`RaVvٍ]aa5BW1sZ.`ye5+Kǫ4exø)d0a:Bȳ'8VcȀ ք8y`0",U+ kYJtpu,]H6Ӏ4M" 8yh#gefy ly l903 mZbMAGg$ QI2X:f)xrZ-\qZmo 囫|NJRn JaW)*ݖD:%I ]L1RF>m70R IS*at.p ݥpM_=΅jZ|7S|Vb|7&ur['lJ<iRCY'lr|TE O H֠&}0a.MT2S78e\ 5yY&L ,NxY8͆jxUlnYhfPߪϙ**TJ_Oqr۟Z*K1W5aZD!4^rJJT<ˎnĪ#%x,&$~ف'X1/4?hBB[4X4$mϮY@ /1-̳uҢwwkg/ ehX%l(ަihX>'KТ`.(#878g 6d/.'\, r`/.{vOT\ɝK!rG !5v+E݌ S#[\'G;Hp߲Ë+_p<ˍjZBTxrd:I 16lQݲ)vthɁavʹHkwkhwӦ>o-j DU3PM΂G 6,8܄MK-ӀdQ,8i@RoP[9 69 Hr ĵڀܔJv4ULfe5m5g/&"kov]W{KΙH)R&)2Zd,LJ#֌w(!FS!鄳! l;ީ ySS%w=ޫ΍wL$˜pI*ڎ=7jB/s`iq7):e"z4)#Z雚y7 `8_afMr7mKW7z&qEO{YʪϦjƴ곩1eW1iyuNzeqIo>L6>[dI,N6p]hN&V @fNvg:t4YVҳLJޕ9ƒ:h,%fȅߜ6PHIH}(ܔtl͓Z|˒Z<}eI-}sX9=ә@,X);|+^|)5 (,̒M>> ԬCsy[3uxyw%1}yGkKLtOSU9>ˑR5ExQrJiEKC vEw,ך7@|k͆,@8`MH&&v޹*\#K )y!er>JJX )O೬y% | \ υ}/.\>KJ,!M೽r3H'ƽ4 3Y˖Җ>լfڲC[shzmYϡ-9e=ЖڲG[siz>mYV[`^QerOԛg='(z')z'(z'(z')z'*ӖV><_}ӐĪ< AӔnʪ< LӐ>B#aHGh$#4I}F>B#iHGhG8 Jf2W7'^k 7u|᦮zԵvAUS׮6ȗiڍM] _k3uڂrQVPmxPb cωO£ nbbw>iyJ9A`sњkMhjs6 SS"[ӱ`%`e<7L-4;9SQfq/7^D2Md/q"{jۻ.B.!?< @6Z!x? 'XKR2&&n0= oGBPzg82T^*NLwsW&P@cF2G=Qd(v`/4 lHm0vՎ? H%  Hd Q%GJ~˟8R'֫9j`%5̭/XT)=*R V$Uv9{x..pwq]\#+g6<..l-G1-.͐C@]4-.r Mi\MZ"j-i<4}LlBg#-w܌p^F8*!&!%uOUHR?譼T"7Io5T^*}ni/>KsҧU:u]ҫˉ4Umio~7_EωEc +f1':UUPfүl& `e@^efI`)5`8nqL`qL`[qL`q<8n&0w=΍cgnl8~FV?#F?ghNE4fCr=]/ɓ坛TэՔO|qyf$73aċxQ3^Ԋmċ6E[xs& !l fffdpD-Zފm@c=# `;_!ZцۥcY QT5>Њ 1W]sz3k)>#6 ;%6}Ͳé%k&Kđ h[29kL G6#Sԏ3D¶}D(RSAeow]퍸,io\AJ꯾وr&(lkoDzsqNJ-z"#@'a~';t( \c!̱J2&ih2p@e QL8̱w!@z6)WK4Yj$YÂSIؤdPp[țL<ا֥Mst,P6g1X$-3JVJ B l [Y2GI2*sui3x%m<{|gu {\gu {\/MrL[{ V=i\4UgsO*3y9F. ,r3SJ˟M\V.8` Q"q3gW{DsH՞=Ԍ5j͸Z3OkӚf v)$+K,=$bWk՚qf,,|L*C&Ip˒fIp$bOkӚf*$NF;$F6R9}v>mܖY_hGV!RK/9E9#%#oWWs%P+֫yە~jk#%i/ 4N{9-fFجCUY~h`EcySay3twZIC Z=ׇ|J|O!2i(r/M{yag^~G1 de^Ffeج r7 ˓W>kh\`QXLSMbO $ە~˪=!X ^'kfitwa5wUOcEFOmL?SZ|kJ0 A ~VOTɔX!,;v`M))O5G= tWK~I-Crev+Nl*XqgK2!,l+ۆy s7@ ?̓5-qUR|h=)VC zF,iIBG ={8{'^|&|f*{'^|&y|fX{'^|&yg8b托{i!&a3X<\B6q~c5˷0sXz Saa9,L=0YzN Sga,L=OkaO>^ٚhk#$zVSO08SO08$SO08SO08$SO08$SO48dSO48DSO48 NM_X j08y j08y j389 j>38E 9\¼c5t0fЦBXQt24M"6u ڄ1!MC#0L&} !]M0`tَ]( ,E_FDrV Uċ4Yi@XV8xSns/n(CW4r >H#4r >H#4r |>H#4 |>Hc d9WH?J?mFmFa907K{a:QTyF6(y42zшyш{шy7zрoʍc6Eq xdWek$5 }F~_#aHk$5}F~_#q(w\!;7<;s39[C~Եr@Q"q=Z9G][ Gk u-J'CuԵr@ Q#(8z% G]7Dߨau=kn *gbEv4N:XK@c"P`ڒrkɿ,;I jT`ѧu,qOZul+ iM~y7y&4X i2@K@޼koF~3 VB^۪6طbfv`e4`3ҳidvj?OkwkhwӪ oYU}+*F"7m` &Z޲o4NVa齕nkhe5z77XOϜQԛ9mFnNi3ќ6Ϝq.SMokakAfzkaky[M :=dMSڞ ` z9L,Y@R-mY@WSVh;ZU#iI6^#n' Y@6pذpMzŶ؀,#T~[ x(2Ҋ!Rz(#>IEkb psزضC%e#+Vh&lQ)$欜VnT[Nb+Jt[OI\O3}V'1y:6MVV'рs[o\ɹݷt_վsoºe6aVw[{ɻ-ުճM^YWY=[m|e~,0V:e1aݲBްBoQ7VwXqoZwSlCnxkx 琯ᬸY $67k=oE||R1oYoonG Lr 8y|+gr"V*[V` +7kET9wS1W|#]F߇&7ђ|KBĥPQBҹս I/1؞>B$bRpEHkhz̽{0~7@_O?T4#S| 9ZcDH?Fd^" "WjGwvhH;iZ~15Y筣QQ努6E27"#C4#M 02 Ge;}s5t1C$[W_ Ѱ>FhW pGya^O)Ohƪ]TvnTʞRًWn*JRnCL! !!80&A ͑%(J A7!'mNԱs6ȯaoDF[ѧƪHB|Ccin5%2spXL=?Y9}7cҩ:޺U=$<9:9pߝwvpqtqz=CG,(}kh,l6 $sDQJ.=#$H ÿ5v+*a@܄8Bhe [`C'W^oxM7I\w Qw:Sg؅H䐠Whտ~W0!ZK$$C-X3lh~;=?5;:[. 9Fnwg|k ћ`H4ΙKFy 4 +d`;!/4 p!D+PAf5tb8`_#H>JEë8AB@,_сAsݫgWg'?p^{st|vӋ.ޡQ_?;>?wޝA'o߿9AN/NkG'?Ԇsys]~՜wg˓7'BǫSջ3䈾?889yq؁98y{|@:<>p_ycbc7Ǹ h  ~"!ԜLJ'_hg\ǿ|@@st'4 `ᇳ㷀''.޽;;g`w71>_ypqFM BLӋ㳳aU܏TQWh^s>>Fg@G, 9 uBszӛO޾>WNu$!Jfs98 OO`?? ds}rWQpb0i& GӞKwJn#BbkAa=]T ›7%vznX.Tc}:;(VdHƪ"ɠܓe'Rg8uA iE4nZlz1f^FWWQ0 fKiP@t̫z TFP獜k$ i)* 5gi 3 ڢ'@HYnDl q 7V옿zȤP6Ω!K;c0B⸼$pԯ$f/iz0 a]4TMxⶍN)|܄pV|:.x%*aq\&&Zp. :$R&ꆻPQhcæd(hKJ)ۂǤK絜e^i>/_wJL_̶Nod>U g!9NmcʦOHǣǀ5_%A@:C:E[X B*X6` X{#`LfI" h_Ul6;Xjz~5~xZ:-U7褳fjk)S*D?yV\B85J<1\5g~Ts6HԲ]kzZ&6/qٟa?@3# h~~}[bIL3vWBƮH d9Q oGÎ#5”\b\xc0IO['iis.C` "mv8#X-8,#87*XQNsd dfN`~fbe4;\ ]y6~w;Imd:ެ3Fgx#a]KUw/Wozx ܺůgu gH>e$PM%!)S@R閫XҤG9Ul8]l42?--tMZg|mDch`4t,B|\R?X{{Ťiu7OVrE|MZ1,EWtǏf܆4>&o#UwfF _6͌p䳯 VC^ /1g@3iuFI]K:oNx"vvr[3SZ‘$-/5T@U㛇RB_G\VKHrT]Ep{rL8fƎG);2N?-ϟUtHHYKL\ & ox^ (L2LD3??/ }ϲtI^KFKhY*W]:Sђ UY|QK5pl-[)k;4(-ryՈ* 7$`W9{xk hM| % $wࣁ ^p|/ɨ|L\X;> )2*RgT%;TS0%XkKiQ" x@ t#!u`@pKL̰QLj9D:0ݿU\cD^Vl_1|9x-|ȲJÛA}EoddLJ%wT"nԚyo\gל>bƹs"ǘٕaU1Q/ꣾD>-9F +6gt}kz"GG2Ld8Ϙ4~~ԳTQxyK_&n!UBT4R;se"eBVsrR|04t]nLM~147yt]077ygP0/v(R\S֚sPa؅ W1R;H@0Vҗ"ʇ]H#Ϗ. ZWHΓQ*cU/0T C\brI&*-U.cC84 Z~!~oߌ|_!]/}.h4\4C_沞UFI2'ѯ0)FGcxgrJ:ts)(rpzhU/Н v!ɼ41{,F.j/~QQMȡkɩ@s هLQG!ђCQ{xK/JF  Q@ _y95`2 p^ xm"8ݽl"_2B5Y(ThEFN; xQE髨b$)TS x' qPQt/*;!w @\^)I~5xj8Du+~ulږϭSŬE1S…]̙b$^A #de^s(wι4Zsz35>id7&c%͑8B"G}'k&vdyN'gMfs|jR\DGf gW8) %_]3d8WmRpK5:}YC@,qLf+{:E%)(_KĿ~QT|G+1ќ0q1f덶YJ\T8pySJv0IO;-j$|e{\CIK8bo/5~dWݕ iW),.Cߒ Q!+JW+URچ96p r͠ Ϋ> /Aߟݛ7  q] y|h't<{#2oj%J#! poWSJ8db%q_PYTϟ>_*oY!pN]E$Hol]N7?eFRp$B{=K06.,J#*:#cVjdT OEls݋% u0)/ئRF5CCw27O*Y9B/0\Zt4y 3 /-8$;3 aŊUМREPiE ܰބ:QЭ~ ɝw$mZ{1S^< 3X贿(yF],D N{ebLM+$/9Igqద{YyPs ܐ(qx [[߳,)H0YpP$&N'&: 錢~߇Ih<{y*;8= |_E]NB*%6$PW ? gWj [M-bc-uB騷9K1S7 KAqGͪU I4NQ"KPyB*u*IC|=Ht[,< kLS X9*P\NE#sь,沰ᷜ E3SLvKyJ.f&EcҖL֯|P}x_K;:VX-\;sR~Lq>aұ̄xY4 (-s Ӓ,O!-En9PHn0Rguui-Hdm ʢ?U8vAu o4׫Dmh'Uo#|P$""8~GI吽'RјҚ!.F{7 /2OL]BŜg[Sl~5v'~/ytF]olo[ჭh~Q/RlB.Z%(([WDE?XA7*js^5TT$b8hSML~vn5Bdxj<*:Gd:#T60Hf+79fkt¿u'<\~;N8חN < 8K':f(Nx9zN~i8oG=ե'3Gg(p99SsK:f=G< %q祳;YOV%0̪~XK= XH]ߜ> ߟn 2_(WA}s<NF 4D*,FJ="ښ 3_ s]ܓv3RrsW%yQ:蜶)7}'on2{ :[TU\}s~u5GY/o9~iiNh7^zߙAL>ү &S͠s>&ߠ|WZUUvMKVæ+TZӻiޥE-V_ =ߎ"HZ+R Mjbz3ۍ%fv.0*Ekȣ文w}KTwfT+XdTf 0vOי UKNWM%oC6]N?;[ .{a=s߃vq}_Qt~Uy2͏/xTJk[ R*9u6EXe]14wim.ݹ64'12Fa*7e;m u7,SxMҭlv>{4ZwVN^+~q7Kg1KuG}?dW9ߗiRxRߗOMk.ΗkI.3&I\/wQ^k$Mw-W:h(W+bg#腳5 1ܘk‡H≣$/'BL g:d"/D=C gygn1%( \s٩׳[.w %,:k]8A|_D.0yP:-\~I}܇.0C~j܃ڃZ.W5~EEA- =(u1{Ýqtxđdhg B*5|9w3Ioo)OZ ùtMl8 3b4e/;Q%pjd>^œy5θ#4$cCSs^ל5G \sj.玕A/w7~v >kW3D41Ы] QuqS;ꅝ b^ۈI~o݈N.QfR!䴲߇_?7i0/F+ߒU="[ & )D EO/Xc2`jAF i7$9Kگzd7 KZ(~_ϟ3N1^c};{9 Ϙcgc `s>#X%12kִO9D/(wkDtENԐBEg%'* 1ID 7 ,,IPOUb >JrD%¤RY ]h8j.o}4{Ltl|3o'cV= *vzIswAt{$ռB]ph5BxT*!#ë?'A5lSA21sj/Գo6Ic ܒG} ,o64Fp-7`Vd҉*6T񬕊npGE(\KG!#"F$ɔzdJ5Q,uB&*a"d w:ԣ'kxN9CJ# ]\#|G+˕wRrgRWNf#yJ.2)HΊ;g}gg*7ME>6F&2ma&da2\sWٷDoqL5.9~!6?'>{hQu="\hf kѮ.ofoǟ} @/l;vra5vJΪ}Bkg^3;g^ G{E"ŝ\MV!,fW!f4% :H ](¯RGck8"g$r8Qv1r_3V,I&-VS z/g—bҍw;)) Wj ӕ~-*v6L`^9(#mjeGxkވ%RCkGa"Er lxW܎XCr8 gZ4Qo8I_nc+^]ɋOG6tNTQ+ǔTFh^xNa[3IPa=z&|9=rnQHΈHgt& >&u?!z=@p71hgLd`\N7ȩ?'hBpBֹ zs&!jڟykjGyEl( `߾%Ls6mvC b;g|ךq'yrdywβ2& ǝ4O*u(|z - +9UL|UaGkÂ>Pz)@W/Ga!"QrN8sS4L'r:߻M8;e"~j>R&"Tߠu/{Χ'mA\l1h3N3'"nPyJ epf2y"2QdR'DQ F1L$m[daE`a< F矀ٴz96HNFFP+pvZ}b~^D8[@~F^u޾E`(nҰnZ++6Goԯdx5S-@A__8g_g7>  6~b_QP ضئrWn.ڿSh=]\Ʈ"&MH?7bDѮkmS)$Ms0%ޟaWoVrI+?CG&6..A=ӝ@|7=+> ~8""\>8Wg"]k# vfBspΎUl󥢾!~0Ϡ*|3VmahT[#T|cUi3ET4HZw֝@;תSGr\HԝRwR"+$ QS*QQQ*&tG (1JE@H[hZ=M9VggNA oF9U[w޺֜8޿;;8yw8#|w9计V. _8:M p@#񍃔) < @8讐6] {hTı.=얯bGG-3Cq~df0=j5(=ZNh͎V C;È;~ j4KCl8gf/ Fi67RB& Gaiv8"eO2 T{ uB!.| ]rS*^@<6HPp6 Et`P~9ٱ~?{t|ZCN^8޼11c4wtrv|xCNojqc4_k @_> 9:x{OEz0Qq[ 󋓋O3pw71>P'o"DXǗO0NN/>Vs?"j LP#JD0bƻ_] &{( B@H*/dH% iOoN~:>=<'Uĥs8!=<@~@1R蜼rySx*'v)Z9~y( Pu +8|1{&!4R!>oEk+ԍn27W o|qNJWN^=oֿe;cdS=r*$1W@c;y) a5қykzoʹ7S7 F(j*1/{.ny W]~C3,/aRAK] "$9)?ԠFȯ}%БBF6cmlhcn$Ul Ġ҆N]Gn3|Wn E %RaGFflD]~%2~vn񏚩1xr-GT*G࿩PvۧIahR"KլDbfHHXIH]Cٌ%% [C*4+DɲåP/¸_vG# %]Fܤ ).+<e`f7YM! KC,RJrW^"G)09)BlQG2$X]DU(HodڲqHiqR(50%OT3*%I2D7)abldYQNl2IS6)K&6y\b䓉xld"{lǕo!I>x& c-~2ɬb, (&2NNNNNNNI>D2*dh;2'ɠ"s;D!D=4K4K4KD}F}L t57zXg8ˇq@̫)6dG0NocjyTe^ذ&g|b/sl!qHc#(h?E *)8( F#ap?DvG#ž3O:fwۈА:>bB  )b,(p*p|r{;^.l||%C6{|ڤu;c*+=\Bogl/(>N'G 9Ʈ{DDЇK| @jc?svԒO#S19C^yr8 pu@3c°vY \h(oHm>BMۨ{ 2"՝ ] @n=6jIC#v?d7KVWȜ+u!f`$&#.Gޱa޽AF*9X F ڗ/zA;&Q{6^Cjߟӳ gcLBĽ)Z}* =9?8 hV"t}n9B`<z ;)*,W$+is@cT)0BO}0'~$ G1y"'?wBJ2ے0:`]*ny"Nݑ)ceU]bb i/Ἳ;?dK&L-Ƣ*j]#5VH-w?D ?@T}fbry;DiYFRLz=h& A1y&ߨb q=~݁X^#cds!xq_<ݯ4ɰbda0C]Ke>y9`!c}ȢP?xņxI>Bks5nU~kLqQ[Ѧ֦*ƻd~:Z4S"8=%,mM0w'n..c}1"wEJe4fl%!6U~:1F~3va&*A2>`c&~w>yw~d=۫u5YKBB6 kkx$|[1"ۋArRY:HE./T^ ]!B3S3KB8l2M OoڲAaNOVMu?(OS&rg\uU;܆_ EHYȡDžYv "i ݤC|ȻbM/] 06,8[ gy}gB;X"=N<ٍ[q0wC;/K]^٪۴̇HY Ee$2W /yprٳOx[Nb,e|a0_na>ӽBo_m=q'Gs7U,Cܚ<(CH6 G]׆mU&{yJ>všQ*X"t1^(wTu1FfQ|iF763ݹ`ػD\ +1ΒquDDj_0Y-u7yik>˯Z GU}*I9OVOk7穯TJ__5@#" vH,3-|\IXk5ߋЊ/+7㵴C6jlwL5ulHOK&> lk}''٬ bZ'Ew%T$ S3$#`ќ&-d܇IyUƎ'uE,;m ԏwͣZdK\f8ZoF}:>&&Iε|El $Ћ5igx>/qboV#TdB/6ҢxFA90qie{-s`}'pxc^g7B]4R#0FDǼ>ɲcbJs .U%O+Iy?R6DpI!M~p5fj4Th`DlL4 HuLp):$.rv$=4 Q"L* !-~ f;\a<$,'#A}#s'qߏԾX" 5b?''I$7 qO.W"YTiHg"ȳ 'S i^"Կ _ ®уS2%Q87I|B|Wu8@6pgrDTI@;ǘ5/4 RCA@eYk쀈z;lR Zo) T Lpy>~j/3*uFf)jÔB$VEexbs؝N'e:jI[8:n؝ -J^[ !\BR[l_׌&~C1SUF'';5&Gp$ұf]w(6.ݎ-wŖ!kGi#«l'a`ڸ=IB"9}32nFt8('36gp$-RB6ʛz5fֹ7="N%MG?9X _qtҹH AI;viA?#E,mG ;^~RGB`)^0Vd;5CR\ObNzr8rwU.pIed$iH1/i՞P e8ˎ9d֬^?o#vzdf}+Y?+< KS-V(z zHx}H3_kg$4%;6KliLJc/hq{eZJ!|JU(ߨشi}|dccKܥ46|#4.UhF;X Op&찯c (9zVI˙r0⠫|+qК8Ӟ8˜C\{8!͘u_杗rB碬AaVk?|e4.AiGɌb+S't*ȴԸ`_Њ1# Fj>qLl?A1рēJS^`.ޅ:2ȅ2ik f6v7!~{aKޒ0#eYAЕCjLT[] ?i@tp^]r$cgrɢ3 DkP:25,([+2.G.V Fzƶ(rxm0OChtTA|lIq.*?Hi`rQ bh]qh-FKrD?:ұ'P%^:㱡ΆXK,5t'M XtS Dkjq븲oW&v%[VXɩe arzVIbß?ȹ ^fdh1 M;Xxo43{lb/^qVшh%bw7spRǛN{Q7B2'(CAFq~P{ >s۱xvۃӳwoޠr^գ^X:ϞasBcIj996&u.LwLwLwLwLwLwn o 4>yxqP{A߿3WN0N0܌,rKKKߺ]= /'pGC#XS'>pp H7& 1Ht=pp]6"&1SͽŖNn!a=VC]rWf+ܕY|[2dCFߚy9Fz/\!'x(g^;65}MC7NoU0BGy!Ґ/{h8tI lÞO//txc-.nL-6k+C38= 6cACB)Hl6`b'W!΋FDTu#UkE GjqApj^u\U ƍ߻jOzh2z6+ ]y@;b$F"C@3d/a "۹JZ%}=~REӅ']4Owvt4bH `=G9<q 0lWOLjId,w1kzOʉ*XZr@jd\qN~#mǒ8-KuW,5$V9|A94DfLEGx6 0!]XmF L̻*WKe} 3eL};!\A(lq1ZE_+RU\ |D6×,hxٻg![b]v~NkV?>Sdp2yr3hdbzFV2gd{ISW3T,Rf(f.8Y$8 y Sp+Uy,P!|+LB [GF0{iBhj\LH||U>:"'5 -q }ֺ/DR}Duׅw+ <5ISw\oKr(aa+!2QЊ IGJ [rXC;;(RX F!gK1v ^Gg@mJ:;InبBH콢<FFMBlZM45&Zzlṫ=6OcS"N1.7dV%E`m׫p+Z~l a%.AVkp\Z3Vi>=jjc&J?J-U!RSU޳`>R_oV< jp>U" '5U-tAHIɥ;g8#BH֐B "h)\8pMn #} QN/cH5}8>#MU@C2\aˤ&V$M4Ճ +Ʊd`C{ĕB $WE`OOU YY-Sk*y, t>o \]+zlzfrPe׺1N.xIp'c2#Y.\ǖUpr}!u! Hn0YJ#Ͷ1n?0pݮ1Pk|A5N"篾 =[U sR٢u@h%N\̒Z95ݍU9xl;;4K-H99+մA{ûyLhʶMx|~FoW͵]Az0؜lQ !FxbS(ƀ30=QU9g !G;[̠̖[ٜ]Tɩ̭j([JSwf9K"&;s+l]@SZ" `(IJb6$4VjGѽ.&TZ&| qL]p-|T݉zՃGUgO{pܼI{%dT%ɡsn%H4U݇?8R<#+LKB bc\en٧:U\SIxy]|i[di6ZǓw4Uٓb)ch砃ʶ3U*]lW)xd(߯HĮQMR2%6Vs.\/Įz;^,zP:P6^B)[*_v?ӥ;k啻y]4N?ONI5#؇,o_yq $ Vfői041)Lރ^gxr_GJzpP'h5ܭtYƈlyͿ1+"?owg)2i늾SޫVU9nJAAmizNZ̪Nڛ(ۨr T-P]C.s.s^2+)vg/spy 56]h{-jz8uCf9*Fbz${5'a@e]l>6jfD2pKV2+í,2Z0f <$Y}l~ *ȓAomV` ӞO}JU2+ EwnOIKHI=4=!|dJ[Bdk2R*c2dx*<=J Vy&u'a!_* 8*3{V߈?YlVgo~0ɻ· `V꼘l"@VVJ2`_iDҺmvI{}yd>U崽X)[^K?l>&Vdc,dB.䲩oɑߴ4 yS{Cݲ&wòmwX3Y޾ŦZrMuRTHpX;,e:,_Òy=Kk<)h'K{,xt{n'K{| +V Yx!M,z:坨1vqg3S("ޅQL?#9y@bN Ruy5a2`FrWׄc NUżTbP]]99Z)S0rhLYd;][ͩm^<(jIަXo9.U 1i!7ZH=wucuy5}B"|D-*}fF ˑ';[5&n)BAl5A]ˇ1rQ_D1Df*'*63-wК7(#6voJE9YޭRfn VMV>Ui|S;;ZS\ZaQvLX=@?J]p5zF| M6>e^r781ޟ~+s$e$ٕKX] zEd ^I-yPQB b!{CzPCk",}1*ٰ Z^A )\~;{>>=xHDYG#2HbB; (٪=;:8+N *ۡkdPC6 >O,W,dp};8S<?@]uѠ[c"v$^55Tr+m+yɕ6ɕİ>oQe&Z_t(x'?/#OBq URЦ)h2L䦠:*Æ'.MQ<Zαg w+:+!Mv<ñAbbOV8q'U)ڜ6 PV9٦(>л"&bY և MdP)uk%۩O S%{ߐG{Ȼ5*'E7%)aԵwSj7COeT4iߗU%ٲ/҆I6m4L"7W9Q9SxqLjt fm#W61ߠ`]!"=1il` AȬD훕q VJ8pA~;A Au->4>(WH80Z(ĩ^akyuF阯wgoš HM*oұW0`RsmB!2˨G["\MAz)Q}RATtf-3v&p2̲!ْx=|^B>)bcn: x4޶S/򕛰6"/W5dU*ы<1 zR¨'EG= {2qk:RHnK&ڕ'MrhQ(|(6=1SL/j%M tLP#;"170O™)їA8N5,18~sl뻀`jcͧ+/܌ Fv6 >0ctxv2dH>󼘩MQXP|$ꀹ7i?@MMmB~D+^QTJ &ASWGh ( ƨ:`;-PĴEa!qV8[ژ4&HRGmjDT9'[ }]>N+eM7y{s@Pf=Ht0sg%$v%̂Dj#F6'/ V8:I6gWѻ/MnzMwck}mmx[-Մf&[>O!jp8lҵI]o|wΨ.CAR\;>iǥ%p ƨuia(q!-TN!Š 8 ܫs : i9~"!뇄_mnrj+eNA4Q.3|F`q)$|Yg53;(!" d$Mvx66'#љPlYvOA"x™myO#ޅNϓB}l;6;8X Zâ^T0({} M`,D+nF>(Ll }89w;jp{G]jWHMyTn rG=QUV܇!Ź* }V.\8l-‚ _2>]^X9GS5# l @aVPI L,v7-3DG a\d?Q(ʞ5Mظb<8{4Ⳝ%ȩ|}H?NU|̋~Hǂ`kiq2gU8qhEMXЛRno* hPDpv WB;P*4JfUN@3']]!d r[hmfݪq9*`3a7mUunۣC~O fhx5~ߛD6]ctX{7J^_HAK@jFZeo`eٴ&-]$; G'!0,}fA0v@BZ[.Y" }Cvkcs}{T+tM 4`G8R QPbU pjUR=Y;JRT/P+(tߴ/݇bc>`xRLq W]fsuVD6nisj677moټFz_*L[xB].KC :xJ+uT*sЯЦlk ,qy'[RS2.0ƒ8(xsf.Ca*FmA2nTuuTdc0LP`igXA$ tnڪ,5&^ULV& 8aQ+Mh ’s |eO撹`(_bsn_8^x¸#.P@7P{PzAnS/IL wp!T "jq& aK*27(8s^RJfx'!t2K H oV. Cp44Ԍk5kkAK "ADm1&K.H94Sqb.:HdO 5[]j0`)/" 4i!^-FVH@k??4tZޣw7ݼ~@:_q,fzYC5ܬo~>6b g{LOכ EOڡzvo{|[.C6v]+h>z<\?us@SQ=:;d^|<X3 sקn5&-Qa*{P=;7mAoy ;iĔt3sl?vbI & )};8GQH>Y|:9^L盙Q+U?|8KN-3߇r̻4qٝk'uM[usӏOC1%JE(n|H^!)nT_ u ~Ž逪T.^nc?}19{w#g1'^FgD5uJ >u'ޘ(#$DAZِ`,a/W k?If~ٸ~S&.]ONPef$ M`~ qUTQFU$"3]˙{o+7Gy~seO> ͂6"FL8tpG(՟Z![zl9O#8ЗɃGg^"C  \h6d@p w|fƲ6KyJߠ78XǷ:zyA5!Yuo(zTU9pLe фW '<[{n:՞ެcp\Ls@`oVX 8%A+oCN mw}L]Ƴ}80 \`/a5oZ P_L5"I (1'NL8zZ&8{)P7?~̈rt `{ԹưA׃ODS5P8qF0Oۆ=f1R.oR'u;_ߏL,3JZg nO&#fbmtzja>w]gNa1w<+(c@Ԅu8"bKl|{wCUKT[8) r:BɁPM {xBr9?‡y| ^Fs|׆ 58dFrL6M"=j0ÌdNև|)Q@/17Ga!%K+,y\cߔ7Y2r=F/%WYr7PEeHz SC5Dl47=J2st&IX*]lq)X;i5l7l7BŸ{XcJ#'Y ?7fVǴzH~|50508E´zm`WƔ8 ƪ.nl&AaxS{ 5}{3-Gb35L8eR5i~gRL1Fi5 &m.\w&R^b0$0T!#͐[bhI`IŴZpB1)?Kϖ_^EB/*hflU*XUγ ^V!*DY?U*d Y,]YOnMQ{h!vS16ŋdT+A])Nzm0w-uTp,|ZF-*G;o5Y{KK NNKaT?ԆQW_^2]}_/žJ-k;o{I3\!Ho|JfP1E tְZ3o2N70Bѵ-Z).d&z IVJ.#)97W 6zA[6XJ9+B8K YO 1O\kMє9Fỵ QE<ױRƥ2Y¥e4åq!4ҶDaFKUL3\z[e~x"BxҤ<ШLA2Wqv^V՟7M/b`菮r{E쩟Fxտ /2ijȣgȳRҭXR 辎*=dXέICyҐ~AN8 Ww'w8A}@ςï +{)rGJ f*=pWr|k iji X߮g9|* (P&: x}i!T1iULuxQ KR( HXEiX094̡a&hG&AN4*Qg#b*ʥpq9rrmmp36{ɧM$-60 |\G.AO 葯760}xI{uC(T$ =TB` fFX(҄lCʠzemHvNg\ _M+t6jL ;7꺋j +HgV9[9 N.#V^=XēJ" A2t3$12d=#M6G MM M#U6EG >.e&<'2-sĐtcStt1d|))É|*` \%M'4bG[׾/V-_rW>;'ItR s}FO'fIN,I(ǸB(P!bʲ^[ 2^@i5ʤCP_[% dVNY{D:S)(EY1EAW6PҬQJX~Nờ$j:~}DriJ>CvMkBdڪy4#s³H. zOǦ;#R=\|Uf㻳Z.dzgr|a>_~ugn½~fޟ7yũ5QdBͫ0WWFhDE_ziH4$EBXJ;.K[;[zu- V[;ѭ->'eջ;Rĩ{dA!jA- !abf9]dķd{Ϸ{zYKBXsN^C RpIմܺߖ`UpF>*8:[T ^ZqV'Srkۂ[+Umsrkz"j*Y\UUS9Ϊ઎*T"8[\e^ RUqVWulVrIբ5-ePZiOTɋNj8Ff;pQR=b{mP:+{b0y/ky&Ef p{g>?{W~ƻK 5CmvǦ`ViשFcRfQd_R˹Wj_ڢΪ+fxNJЛzPPDnM٢nM[4*6+6ڦIm&6o2m٭mHwksR[ iiiii5w!mjCm|5y*n4*쿒$S(NHF ?}c۞̼)"{|2Yqpb<3rq5U]YPfI ]kS^ǷC⌢Gi"aqr*\?L}^&UFTEH;)Ɨ#5oͮp/KdTb~'}A'")Pgk9'!6v ֝c˱4iZ諔}EbC*?l7]~s)ʱ;=bX,tt˓e2F‚% +q]ft/R\YV,{ *hlț~o<1  B!a1V <+t0S(X(O!+WKzvωEWjTIܱhQLs%*Ctt3{#mo=nM Ah ێ0f:^ #X5Z 8 %âܯJpJ ۱$Vjx8D+R(X Op_">'ɉC&&K!f*X;Me'if_wnFʒF`'5\Om(OJ|:ֻͦT3@?# `B[-|v%b Y!! 9+wfJ<( JÉ4m\z@;ƒXZ8Yg֏SbWpU4h~dZC߲gPcxS85>~iK=4p55T著QGZWx._o]ZzMG팆SYB;[}ysCj9:涽!bc b7S%-b8@"%Wk DZKiNےi|+QtH^\ Mr(g}1t`+ݳE)́XmbYDU`D =V@/I3::ھ[RU;rTn/8BB봂I}k릧En+3~fln{c0@jFe4خ FBib(C$fc`k/`Α\B*&GaknJMpC*i4-zQN~h[ζOCS]3qN<9 6[u0VkL O)LOY(]0]6L6 G0Xa{uӔ+T4m#/ |WϔuVX&do7$t]Q\YEhV1' (cvJ% 3PHIcfZs+YҥP%46HО ܹ 4/84};0=^V60c{""39$&am00 "=Q{'I.1.]e)Mke+s 4Y_{PENMo,hXdNVŒa 3i Xd IgP uK͓@ctKIԤjX* 7:*]O(1E 2][zrqօ#PWy,Ӹa҅nZ>k @`!& 2M Ē&h1֪>~(2r榕F2ЙjmB \uNw{Й:_VP@ҁRr q/C!CǢ`iT׾"8uq?:`'F 4Lkkk.|A6`;BUD'2#>]I4+<@t0?Je3qs/1Br:te9:ny48TuEkiXr KQGצM0~vx)4x!xDe:*zhQ><)/iHO eQT dag31M F+S(gͯ} E|i{LW,`BҸoM7$Wm` j.ɥVP;D=gaoY_7dڇO`Ng`|9ovXpJ׃̀D71c@6f3 WEU~4oτUH暆 Yd薃0P8J)RwK)<达ȦBWOsApH!]IG!"h<+C EhP?tɓg+@  irGnrHwxA`uڿ#b`^+rn3riΔ1U&1D?iq &7–i2Նh2A ԑx\UIt ~OuG}\Gs_A8^dR͂2CYß/m-R̟_ Qhݳ $dtjZ,25Mz ߼[CM)droL1x{^dz1ց=VǒE#vdsk2Cفm`XN<-vi1WTNܱH`ht|3f,C-y`1U9^T`Iwݢ;9qFo8+;aÀC;[*q<^ʡ*GwXНp\0nCخ'5GwOi>^&̛%E =^$TB &"Qvbȍ TAg |*Pm]Q.W, xNOE' _׏C[c3*\NI}ggr6OggzO3M$V Г3+ Tq`&}(HkY*LI[T!Z4dm\&v-Ns55h^KcҋAltx^ G#}nh`oA9"e. VrE}8vpxJW\' 2BPr$`I`<{?~=p&_N7gM a? #W dUCz Kc[G.w #&{z+!{dy{-#Vx "c<zc%Z`>{0|3`~ԀFKNQ`q&fxj r{(ӊenxQkۅyW3J]~F7ƬFSQ݌̗ CXIΖ ڕV%Ԇ)1ٙW]R<4ٹ`rgP#Gj}T[,U{5|(c ë^\ah׏Mp$q,\LjU %ٓ]l/d V`5ɡ D׿v詼GOE&[1Ͼ<ʻW`L Q`FLCuˢGyJ:O*I+yp"K'傡^OLܟS8\aGMV# =7k=`y6/uvpJU;Q\+0u҄o+e!&4NV@5KՐAC@²z#v k8zPgSjp}}o`vZ: n;ot5u7$Z?y16om~>`֌Aok/Ř2AEh _..^3jC6`:-= \ a8~F%woh<*^x 9nm%ve;Пȃ,l>H=}™rC `JP)<*zMcFe̷{\ƹU#3X6aXVsA QgU =\zd!15ryT{˧D:]蓢9OGye(9e[ef1kzp{-ra~jϪobkRD;ߺ@|0^]is1L֞)c˽+F'U΄Kv( XW:1K7yL Hk52wt@@<FČDp/i\?Iʇ dgΠxV/^`hqP`ǾLx }jGIgd,$p`6S  ()%dA-=Uj'v SF̱'Dnfʞ`lax·{4F@§|-t9bᆺ.cv+}y[} F@.]F7Q*%sD]`I- YyN+BnKxY:$;l P[_tpr^l)7I ~Ӏ?:}8kO %_/}^]b[۪\V\nS]ܗm{/ކVyՈ'(5%"SU2y 1e~-kCux%QV;0bQ}+bf`IC_hC?VI}4j(v\r=i}QYoW%&Ů<7u![糬}Yvu'z.3ӄ7I;OC߰8RZRGtexwɝ~v{{\/ϼzu:,n'("@mB BQ2`z9ȳĦl4]`63I BPmt+>GY1x2 #\u)R_j&fS3~!RPG)T ? |cyc$9ʭbGHI|DJQ)n!Yj^_A{t)t3)b]gK M@`^|9iմWVxQ%,?!Zn*".uE;" UNSig1[5ݩ {<ռO8(r@>˩`?wj7p}St)~eSz;6qeLbn@gԢeFCѲOA'''-̢~o0/X W^xqv'Be4iQR~Ϳ'o}a_K̾ٗC x oߠdz7Rj$dE gӁQ5'ӞiO&edݙy4@n񪄣z sX HN L]x]ˋ6~FYm\6 |f܀,*uPbe--'i \B[\S N)=Mz"H ޥ7ۥȵ)Ggf]|2-s-:va . '.׉x;"D 0]%Ո+6v"h6ҕ*tC`t wB\C^хd?.8Z -CݩvͳTj%ZJgY_^CJ32A葐,,Ӕ/盪z>5uXOUܧ#~=go/e;ó.a@frsVe%g2#9ճkp!@vV9mr8a^:[1.@\O{j,BB&I"]O A7|({tEi2w3~%<*f3uB8c!RDGz܎Ieu]~P=Axg sI\Sk}8zKE~5DHHRLN%6j] +Lotfg6y^.\~ea}67`Zx.v˥nDZ সțR- P&ֲXy:;A>LR pryk'#{>3g`ם|-2: `H#gIJ @d6( ŋj.v$w\mpbyc,MˡlY,r\PO!U^LVc:fi4D]<m"MtǓɖG|rxeH=M_#I¼hW 6wc8洞Eb7hOXo[ömU"vAA*2dhE,mSxl[7aA夣Dó"Όy)t1IhtFEBǨl=ňTj>@DHq!7Ϧ0S~s)F(w+zBʎw8L} ƚ64olRNߑqγ9 p#l/׵\/ŝX=7g.':ڹ!rL@.JɩRRG,-?ůby4Wf[jM!] 5>0&Fiyg$`oX])uN!:.zyf7+1\o5Y^ƌD dzo,y`J:ufk &u/$e~[0]3QOj?5YXW*W5(cGMD3,<ۮ].() p?w#I50/ V?/Ppﰑc)NlUxRpQsAT]Hvc%( ю Y~A(CY;TVn:J7ee^2}4O%Kjפ΃LG! cڮi=ԈM8WfBZLGo!yyJGD=sp7PM*T>p_%Ǣ7w0I9lGܧIpT:ldzsvcqx<xto<(V=YЬWX=(a;1xwkJ9 ;"eTf e\um'_&}0h襤LZ8R(U+q7䬕,r_@[W3ݺ\>)qH .E)Lc?*ZbK^/שtD)!W@r9~@!$8Tg?9"fv"{KD~oS&Cȿgs 6&&Ŵ)00Ј)/I3o:(f% 2X`Teg?pRKC_F/YMLf#8sOQ'ś!9G-M)S..toJ,ˈ,@xoePnov v$7hBݪbOߥ vր|%ٲݪ=v/_PIN~̒GGnhI$獩 3j,}C=!0: ÊmbWxyH8z3N`7oErfc y%f;SGh;.a;TPt*W|SKdQ:^x;3Koo<Ŧ #"5MPuFTE$77HU<|dcȽ)4f(W_جpՠܛt1 3>1o֔RrLt@΁N`KTe!Ϥ`ҡ=zj)XRE(ͫWdvƃBTlTTKaO 5t VMytmn 5IDEp|̹E)GU{^ꅞW. Jٻr>kM X]R.Q K:;k fcxQR̨l!so_`T{%Lζ>]*'MxYQLcؾd3Ro3a ß )4G3oi0fC[wr(7VZzT1q%-5I2#Z`eRFq&WŽ\0>I#nVq: Sl"9x?{I>`Z$v`uP |a$:I\8`cO! ➥5 ̠tm#00*iH7Ҍ<9s*KM:wFaȮuv| <@G--Kk;(f;}05aLX-@{ԴAxOr<1ߗh[F<޳iC#_syRr6_yd)i1cIA@T#vkyggމDlu=ewbɽe%w&Jvn{h%1byUN8d! ~ƥ"\=Xܱح .K^/yzVawCD`A5p"8|uv.Eu&NQL#ޮ?4+ Tl%`S t\ V$̀싰ykzimϴ$M,+) 8 sci_X`yzyEk4f0ioE7hwhS w) }F\G9< SܜrJ +n'.@E &Th57O$O [$.rB#Z:R6x>=yYrrRGxf^ظh5^"5v:#OGBC> ]6v,qd>Օ k++cmT(=V~gy[)dkr8{qKDbzR:80[׌`1.go#7Q؟V돟WJxM0($Ḇ 2t%D֦Ku ޒ:ipgt7QgĶ⽨b]=(eAdY?cQ7"K *22k4 XW!\'Z֪gԈC70hSSpNڧJ֌8jRn]/[;-5VeW`K_OO"}7Zg,5ޔ& ǥp{qR;a!k DXD?P^xP1;5\+s~Vaf@Q+O]kc ͲɷAFAz1mE>+]yɣ>" vte* ajG_(5(+T^\Ӥmiě@vqehZZ1,%])cM s@p/.u bPN-sB q.Ng]ha*MgӢQiҮVxA/Z^峆UJ+ϜX4'Nf$.E(?"P7!שW-W[]߰RBTy\,֐6Щ㴜gvSLrn.>zs"`^߲{whyv$byP"^a17I2FV)Lnd0;qH~6gF5c32հ&6fXh!k=vQ%32 ?]]|,^W98Ҏo="YhˆpE΄;,v;Z϶cL0i妀toypa6tѤ=Pڼhn,l9\J)%MPZPoإ*dZZ' E2.putB`Pri)r`:(h0 VX ᵭDhZIvI0L {ꆝ&1#-s^e!7@zvb71<OsxxKa {CM𹅛%}YRC*g27En0始F aFQa @u>xifo*͈0/P9q]T8M-yUx^gCECQRT"J ĄBTO0*%!`k00&[B+ن3lF} 3n؎ط* p٢]I;R۩+ 3]`b,g&SD%\` J1G03pw+aW]BT4Thđ|EbcһT,taN?W4b \dOk?iSʨ=CTڻVDF3"JkIMp"{ެ(Оz]+ Ov[* 8Fo[dRЁQ͘eJ-[i1}pR&ԗZ$=8.iOoͱo[̼ 5@o`) w8}~L$ 1cO! f`щcѲ F\c+`87fY&h+툀9 KJ+/ %Zi)PI|BPb*'HޤwsRU!5pAv[oF Ojl!"J^:Y%Q /} }w馾HC:+4C,C>o߆nVf6h5aSQ)ۤn¿0 v5J@䘢^zZHrƦnM m YĄVj3#qE=V;[L|{ XY۞Q[hu{$r[к5٘&^IqGx(;uhOy8 3n3(1&/A<,G)zu`'B I|tZ@p̏F|7kFu.k~ ,$]/Cs>bu$)D+B.A,o*i^}0YqygmӽC|6ׁQUO,ilEO7/[-> ܧl&^dȊ+BQd$ދs?#Ac!ns~Rˍ `!;A'yg~bE6ؙ_=z)Y{@ XbL{74x,bׯZv{biN6~Rsy`-Zϻ f| ?Ci'|6t:a@M%I7h Y d:>8?%sxCG FmT kAl`}mmC9\X5 v:C:0Q(U [MxQjB1e ܜLiQ~hZ03vCq#:8ɠ\`]0Aʐ!1s~n.Wae 9DsZlLŗiIBqHĥja@io[Sqzupc`\ }(#CJ74B!M4ijPLMMI!iH 4$ PJ}x3'6T1&񆯘#kbvKqہmbii$J5ĤdHdJc ű Xͷh>Wn &B 1vdXRzt^. &Uа31G`8V7F`vX_JK2%ð0E@۔+IIa4Dd(4 /{9( :%ٞs1a$ mȩxt|PQNZp6[K25hVQ- iҐ|,zG;)6/u$ڋg1n[0u8:He4K WOFi?Ud1~UR@U\4qX"'Bbi?TALTvLTF&!X^)/)c:R= 04N RIfc$6\⟬V[ONjiCSl;BCS9ⳙ~3|^UOkG~2qlмC0K{eL[JbjILT%f[CLָE}5 SƠjսDDaY^w*c\7}]w].Ak僪8=#GBZ#IY?z;tGٮ|xUXi"ȖbcY$Rň^5ZT+QV[IkO1ZlWkT; (պN RP!Jj T|B1( Vǐ0U7T_}z5ScTQ8 M0v$ɉۉt|1SEbxh^LTѻ^ٹ'{k3"v|oHH6uH){Du;*WVI_\ Tґ w Ǔ.]d ٸT%x^x7/;ZT <4z㉗j' ʸi</yzrk+g`xD[IIoYқje?J;^No{'-@<5H Z*3^R'yk.JR Yj҂4etU~ |jqPiK+Mup-_8}S/k}_7])88BE2Bj޸9q" Μ]S_GA%`ɀ🞵W eŻs{O={uYovޛa\>|_|kxP?84vO#Z{ayw`p|xŽ~MyxQlց 7}T/?k%"Зϗ@#nBy ]] 'չKܽbp`ow4y ?܅)v`N>ɜUgJAmIUvhxrp9pnu. T+k~~n yP-.˯Z%IqoPhx8H*Tem\ My[ 1Wt3+]e|~{{{5H  (dݲ6r? ZWJl _)6KU(TGwкޚrKF?]ǠF)Þp y{M9Ρ>I@FzMX0$0N:8z,'Ezִ30O! aJpNJx{~xR:Ia:Kb&n>; 0ܧA?Ce\39oٸN~{om ޜhOa3K?@/nzE)g=C7o`KƞxP4)N&*Y.R xuXy/OvAϹpj`Cx( ؞Q遢P~ q4(QOTqTz!93"Yg= q,޳T > qL"|g!>E2,0B> 3,> {wx\zftxX{wP,c~l+M'64so_uۚҝf&- 3 )8^ g }3\dz(X)b9̌UlKӻEjv;b2>ѹQu+0:+iiMԦKS۩ٙJcc1oFtDk7hj5/Pt N\,=e>WPQʇ5hK盯3joËR`BMBup?5 ZBH@iGAPkQlFP`Ne*UcRdE튧ZzV#Mzƫz^*A_QJjd(y VlNFg w}?9d2?zdL,0hO$#U?&곟f~gU ".۹}[Sq(r)_]섦g5&p%({S G/}%Icu=ա;մ^rg .^dzy ήmgkx{hX74a {ϬN\ Z{^;k=Kn=o.]:7Zͥiͥb1{J+Qq Ov؞޻έ`4)DaeB #`/@#"ynA''u<_9k3F`+@BlcpouG> JE eP`l+@\N2v) r _($r OT{?;s ^!Y6-o| m70@ہmC~kke^毽U\{7{(O+$S&PxNP$v|xhIJHB(O2F̒q䘌ĶVs?\UH0wQh;,, ,3,,<\ZFwi> 8_&` HK U*8\@fk<\({-ASQ?PLlӠӕSr=os+r=S~?⵿浿u.* xg~ٳ@\x6E^W|1G<o}7iK媦˫ PD A.>]*xh]?\.f 57EV36+l~~yVxUѪךgנ>45.Z-AE W.NVC6NxzqUU^>\ifMΝԛճJv @ZsҚpjUY@йU.xߪ@0yZ/kЁ/ Yk(/y#'[PQQ#f޺nմ'HbY\֚GE6IiUmiauN\Į恹_jZ'Jvqq Eb ڗO5x~t$Q!&HE%&AHZRgFYcQ ެK&Tk8J F}8 mبO:"u.'D'Nz.KM: _Z!h(; (Ôv~50" }Fiy}F4G?QYnUM1W!vP=]N'qT%܍k+A#n0m4yHŵ\17kΡ|YȒڞ^7lOV[_:jb˂Pؤj*t_/-=)?]4q4*`!n[˙`(P?*2ڇ;+>!0U5jEo=Y݄Em<5&׆1.I 96tBAS|wڅ``k0=/FeGWbOM>5mvԃTAމ>q !$G?U=䵕\Vg` >8Mf5d\aMD!!X;19ƤɃŲ.hL@[`ހ 6d"؎\N`̎R6ڨ4mW]=Jނ޽ ]Բ\*@ei)8`N OUFЙ^6B'h]5hr8跥Y*gj8poGlDVnvaŁP n$a/Ƅ5ܤ9ۦ4eVw޾"poU (*y4^.>PCRKxLz\iR@5&") 4[D24DTT#9 WNcS@U ."CLƃL}ulCE)%,xΆ#*cR3ldSvmӘhz:P_biNhZvVqR;iCY([*Q }a^v|JQ-ݸِT2(n FrVUzrquq 5q/n"M%Y"IE+KAY"PGhҼ毠異.'<{p}ч!$wݸ8;qfޑ64`k.^qPP>pVc #l& !yZv6#ۂ.`5D 蕍M9ru҆\՛e$<7eA"SrX%sq[Vե^-%T9;pv4`rRm_VW KlqEd;B)GwdQRfYv#: rB E;愲 +Z1#flQ2ƺ+c1yµWr0f_IF$G6Ľڻ ߯]e١Ev8#+#݉Q U=vYz qP0 ]pca:}ǘ8]blO;KgPdъ N" 6or֘Hz # .$,l"}D#$H [0 Pf%sںZrU6]@\R &;`?f{g {ۑL=?EBo5>E͝#T- h(Z09s :f$ȓ+E G "0yXqze{V&&$@"aL|f9#>,J`0*Q1e{ц&n3cfߔY[4 xwVI1G jl(63(d#mnĝ!^!O*# uz)9ij bhP`$aw<;ygyNW GbARə.b@9oRo/\YUؿSp-5ʝjaO~>HGtJS[xi_bʞQ0TnJyus۝nt_i nl;[3vgZđgU=w/;NG[m?yፚdzK\[ ykVrVɸ΂Ɉ99g_q\lX310G oG!jpFTXѴm1֖j*f){X$wxd;zwjJ}1$A&HV3{^7MK_?B/EovP _ODʙ\vaķUl&ͭ>f?ё-nּi1} .{ADt8.ܐ G#Öv DU7Vv}yb}A~!BGW|C 7 /Dwu;6!BRUk:½6Xlx{>GMOG hgl9\] 7Pox+W,W=|G}T_Ͻ>^AZ>=l9ex>DDxLls,Puˍ 3ZؖG*Cƶ>z61 BZb]7\"wk<]M[CMITm;XXхBXK*hKC!tUŖ(mSlv=&iI?`a͉e&D*Q -蝠|k< fk-o9ILI?vt-ڿ h%€%$XM<eP#W(ђ\(}ӴFVoMgXryDk7lcԥUYfmms5w.CӬѴ͹-;{u;ihRs<*X4X\ɏl-?}U/3C"/ ? l `A9#P>Kk{8JMŷ\)~';d~UY܌Y}VA]%Mׂ#ͨX[n'@bḿV+.Vٔ$%_:Ѿ7wsld U$͈@=ț IsU@ C62 ㌈N(HAlNZ)gl[a?.yݹHxu A?ӹz8=m=#sfG?qA|i&mL1ǜ MOؼn}&t;0t9:fC~@/yK_Puφ52|v(SyCb{VOS˂_Jo ^OǚLc6g o 0 z x G_t<1q'?0r؜"6,c/猗/3^>g|x/76Z8z1irݥlN$g8]P"|lrl"IlKqTaKuhO}ğa-]"9*Hfڶƫ>/T׺QFo-֣y>@-6vMnGՠ hm/ђD*. )1uq{nװ_4M*oP!ORFS'թ1G,TqЌf\J)'a$ӽ󰎖;4yc=s jYi $Z +2StGs c .5HTn/Ѳ*B}c'|gn38$L@{ TA% U*%T_aFݯ=L'd 6S5 \{gNu),P Խ;b:alNl>kZ[M: rMQE60H=@ > 8fIr>euL4v,ë! 24[PgEvџ]gE'9BY#,A*8یZVoRj.6Zv UoNGn ~mw_읨I*-- {ڄF>ՕEw_I{ '*[ |b&I|m۫#ZT]V<c܇Ɯ3iG'mw+܋/]Ŷ;(H7ab\*Xe&e_gp[W' '>%S-O'9:>GgI&_g_2;=Ÿ>Oo~P#Zxzq};YtzE={{_oofoo^ޞEz{A{{jJ_+o/S{{! ]y{GS#yG);RwɎ>?˵JھjUƏx%<uSΤGni*0=gyv}]gG: o>=!WAv!!:^mwr|˙ǖ FxcAEBS#4stD&)yJ~)yJgMl6-k50&|Yߤi6l cWF 8Ǝm9<{!7zwΤ< Q߼9=PoέZTi;;0BH/ÁԴ=!1VKJ ٪G}j~ ;{|csPui;c̩۶T@mc5C)w.ܩ[ orB5HSS,hrtà0-c:4J"`mtLir!5k;`77^کb|Cj ~*k]\E@k3t܄M08L=Lt5W%Ԃ8Ĕ͗c/ì-p (CfaMEe0g;fx[7ҙ8V2]eW lZYR%18eФI B)B*!!hQle8W;> ^uUqY±Ʋ`8O;0 "&h%,wjx82Wèa;\\5rΛ6^y EXY>rX_,>"%k€"DZ^B!h4ɋ/K¡ʣK[&DU<π@#<1sMqrf>%*N-ڃY]++H^].آ_P-u1 xEA 5^Rz‹DKnўUx#uU7-&vWs:ޜ?؉(K(U|mA/TI!."4 ;7j~zyV*bua\.g5Md,)v{ c-8-hM _SZd+FXUjǘ̵\E[V $ , iDnj@ʹ?'1r%rm|DBHHtH?W /[v8ڐֲ[_n7'/#a:~&@iC-f,|h9Wx>>ׇ؇w ;Eq;T` |(o[-Ts‚1;Kkn 3{v\%Z6g4wa߄&3i鑇5l[rM^zlooh_YA:{LY(ןqcB↱hgYBo/gw'{2˛ mogJ3,\;[Z9ކsq|m SU;92RI\| 0<ɲC2\HF)N b:6t~"MɄF4J{oG34G|𱴢wEڽb9k4:'4yR+͹S0wO`I]:@/"{>[hjto9 .hk9A&Aѭ-йJOIն:vnv'2]|TTڄ˩ۜ ,gIxkTj?<\" 3 pog5u%or#kžftD79gsx 8ub+ k ^H\(߽KG;D` ƕ۷r# є]nꡅ3ܚV2ziG[ LnS ӟR;hr mX&6hLZݒ:rN?y61ҽm-p~; Y_˿1OѺ1ho:>ڱއ);J.|)v:kiw ݄~ݯ9A0#R^mdZDl..3?9qV R/Vy@V$`h#mM9V39h^uU\iVߵ^F7ZZB(Ɵ;-Үdƙ= YPv=ImcKUνa&TrhK6ShέeOfosxlz&g-GD7abzUO$UC^C{7=JQEfcD6L#ϑ["zşz! ?,bWqfm/@j쓝^}Rh oYԬQ3L*X&D ⨗Mc7ќЁ,<R78Xx{s0FT :& )A-A/71Ryr9ħ-k<1`IFB㚳$0rݶ8@m1so+ځ[^o11G0  c⨵sѬ!u!w8fmnsIqc006n*]}$fU-K5$>E/|W}7_$. wdKk ^lyY'۠A=Dp.f(@qyQm޷>Vut:;A* aC@/X@slS9,Q`%N2QS>"6PI lŵ~2n[J(@t-3K_VN <e~^M xi4B3ҜAҿsj&)(. ܓͷ!Xxw#G^qy+TRNh4yGpbSv{~1n+Ǚ6Jxl~KͯTv{EHe3C]T%NzT,Ay*$taًAgO bϏ^*ta,;\+؜t(*QNˆK@)1%.~)hނhiV?~ْLՁ+\p} +\p]:}Z؆R- st.I>-TCI[byIg:th)K28tA,/gaJ YJ T,]9l7* ƏI)~Dzހ>.y3Ԯ.Q٫0TW0^M[]Y?ܓzGO6I#.‹xGt;FJ_3p^[vWB0b0O~(X|>=h/zcP:ڇ1@In#$b6;']v^ 487-߂!7ovTu"[Vi"20+WnL-=o1 3 %7rgR/lij(v>-Ct@w9Xͤ( GK0]^k-[y'NiCmEe 5hbCLL0qP5`hjt0GcL SRSGe"*1.  Eu~Úi$=r-[F~bm[6!ōP$g'mfI[Δ΍[5[pH"&]jWMnATi37U>^drʿ惘)kdU>}j7Y,fM; Y Nf 8edCkc)q ,9#hӉš ͈> A1 {Dk+Oh֫mPC'pӴKMc8u\`kpgy){z f𻶙[[Ya)dmn-t5ـ޶a`sD >J'3~ a\ƹ%_#N@=4Я@4(3I-hk(5Y_"TmV.hz:[52sNJ߳g `rff[1ptAh([cfnPvp(FrW Ψٙap ZF/čt@:~;sbbk͋N&! 2zn3\5&cBD8W ^_W =>r2 jv;Q7ԵTHntqL΀y"JȗY?e5rֽRn͛[@tQnz;gqa@d9-;.Q䟝/*.YńEMQzB0I3 OK\>B!j@\1SГ^@;|2 7jEؘB n(v7^iYk &Tl%Ǽb@TnDDe9q.[?h5HP\d/­H_7nV-Jf?؄ %?QD[# #(diZ"4IW KҰ8wQ! X \(7ݚI4( ȴO\ $V*O&.q.b'N$.?(6RWӝ}qâO-DGDGl2b!r123#/h0 'x|\ﶄվ+p?ZSB LO($_B"Z,9~+[!G A \dq Wr3'8 9ji3yE+zQT1Z~'BuVDhjgO|#fNrd%[ (S d(-N#.ʋ CP#-?tds+|% Ck~a:/VRrr$+99lAy'SZd%\,S -@x`tUtŸB!Z eOM=̠$':C/"Og^8[!vrtu>chd Z0H+k С>yǘ=YƝ- eR~uv  _HIM'B8:;aq,{,f:ѽCWa"K+_gѸ)[P1 ZWw@K$kM W`/Mf7Ѿ%g$*d4g_)/‘B'7AHR4^'tfgwW?ţ6>]v4b$}P(I0^g$G^b.[#{^T{w}߶LsvMkqZ@&"`x#Ȓ߁aM*ڇ'k[! NIQy w昞dt@bnG@ AgfI1*mR$}Ӊ9d=DqQ] JA|2+1#'#{#l;5n('bӼ핻#'y[gq, ~6a,eȌ ^_V͋K5_A KmqwD-7G$\[(kD68XUF.p[7L+Q|l9xQްM00tm޴~fΖM:pslPO8gH%WrfY4U֤V@0yRMwh%8H3+yӼ7Ot)dZ4CK*=;:9B`rdʷYbp5eP~XĜL,.DE44dbEEI tJq5ʚ25 rXr:Hgfqdno|7պ3|l̔ s8:|u9pr yLy(3TF;fb[[3rY}7 ;0217Vf^SP͑G삕FY vCy_['qUBoiE!(I=)h^,AwJ&K\]FdDm`~GgBk [G\x JS툫E6lnt@[ [FY7TB_wv__ *kU$u;Y絿nu{40/@!h?7^i>CK[5IVj'vnY ~l\W ;=<"yqqE>C@|>I}2tb# QcX3^ {}.%|i~pۮ_4f{k5[W/b3gH`~l_c;o7c*Qj`8Ta0 ;BSl`0sN^[[y)Ect h9 5P >;#̞1{; `4ΏT{:ϢQ"}>@ChEL%{O/ze1$xO,wQb7 Ŝq{ s 4<3(鑊ƶp? ={Shx镠1#ۀɌ[ ~{<uwv59ȴmδh3xԡLzz\Ygdz(ch%N?+@W6 ݾ]AЉ~`gQיM۸!l[<̢}im $?R\"L{cMIyhDg48+~%^qyPlA),M)H0L~lc֫zu!zUvt%1Wyd IP(zZ2}ճ .hjdѝ酓-?/v _r;L;1O" P ʦǕD;D8S3cX1>#Lj=)( aJ, ћ5rǶ^Ww&zY.N>Xox>c f<}V)7ݧծ'T}~wqg%OUҩ[$9F}N M>gk}ֱT>8;K$pF%#sn;0 |FRpSgW2)|1g}3:`{`Ll6Cchُcdz)g*..S3Q_>..S3Y>..3q0]:..m$=H[H|>X&;x,nDhb7ʎY&w&\#^/h=}[-׬+⵳vVjx}?YNOV׫ɼv[ QWŤؖ:%[~pR&0F nR% |k[IEP.B*HAA_8R0n\ S˳A'_%Pkg}i"EjdMfGUgTd]"G%JU"J"1"-.<$պ oY.?fXYje&-Q_>ˤFֺK`t3,lˈb^jE Ds:Aq,vKAB{W&3?Ƹߕ;O*S} 5H)~ӫտc]Cj0Y :E~R{D=1!]skLnĬ fX2`}@NUIIwݱ.$.I1H:8Iy&PW<ݾN/'YbB) n}:Z Oճ+FޚX[#ԃn³iU@RKU S6~Nj˳Z媱ռ:o_{~OvōTX#f,Dd'7NFjzD~&AؖHW&Q3u3wb6c0cbĭq#;lW/1yj6I C&@WP_ŴENgtG qm{n&9ߔ8L1a|"SvZQE˕(t%vYQ;Ϝ>SSrϼ3"|zFgX4kagʒR$Nu3)ˀ沄K˅CM8`:2iMƝT\ LmR.$6IJ<,8#[b=(YY7Ry,sZfQQDT@R魒t%qoK<4O/1Y#_;xdh5 y: H |1K5A2MkX)̲6ǼYK5+52ٶ^31.Z"4%N'_6V'Y![lP:W\=׵p$ nhzbj-*nK]_}afOogeb߿ *,wgwDa+L;MՕjK߇21ͰeeEI9XXCړV3YhM7YN^s^ϻ!pGG4@Y1 )1%[̾ ?t2st m=2ngLuZ+cYCQ(gJYa,T%IinآHIJ\Ί&e ʏey ½Xq[k5^>lG\AmuOH5^pebT]N3dhWhx<iGL陳e#qsf:]cgքYOT;6HDrL>S4U3\oϒND3тG4`nκ]%$%GٞclI֧}5(iGy^Ƒi:^f }/ClRZӻOBtɸҙnwNS$}=uhw2*5zߋ;R *U4+i7p۬EpEL5ڈ^."b>)T1G߉|Du+ԟu?>Z@2E Z`E"2%39߉um-ef$ۅԙ}DF1g&]QDfǾ)Z ͊%v >%%~φ$/H jy*g&Y3+sYn}5u$Oi8OzmZgIMLL<3βUY e/J9nP2]ݕ1Cfc:#="~} U/ǫW_v^;,RADb?Cqro)?Nihc &mjx 4;ю+uіVkI.G%@+Fϭpw@pٗhl bA(3G`P;,*y0G/s$_)-DMdLc͝K}w MZ[fEaxIoѝaO{g3 \46E}M f=CL.T;LjZ(kyMP  Bߍɠ*Qe a_n!藹9R B' dNi'Jw`<{n-Lڗ|M,_BiCDe<-j8s=Tޝ!*?b[}me5p3xN4`)2;bԸyc݌b!M8%Sٺ[vRv~G~ME aj\>nT[F36>E¶I 뎕Zy>:mUjm\/S23n"_7^.h0x)Azo}/w#2m0Ɇ0 0'<*hK%ctqq {X3~"hTƚT\5P5{:/Y 8gYhX8.W-/qpݱXOx֎KS]jsN?^1jIZW))u\X.,.XV TYjcy=ŇHFe=8\nˡ0Ry \N1L;k~2o(T%K¼][L)1}m=.飐|L Ǻ5~0L Xg~t)'0VP򸅳=}X3=c"O>/N2H9!$YKB#!C)5hꦇCK;U<|h$)$e5Q!%).0ZSc`bXdZ35eL2g=c[C6A6m@Sbr`K<(6, F`@nu,14ރnI.3@A{`]s(ě@61@h[^ D<9"8؆"9&2X@#0#:Jv[s.;b4HtBa. -shƕT)QzǕ3-:%y첣Fez:ͨ9@l?n*z$Z>v_nkQ >J;[,q2z`T=^Ff߶0;xhm߾=͸0bYJ{ _:!k<㰜i`DZ%Z:_ժTJ2, r^r!'ڗOVr7Z؟ӫsIn PU{ PS :sW?<-Ԩ}<5@sC *ݺ^\*@z[E4j &0!jW@ (bFk_Uͨ 1{&́Cb8p}-|y&ޡV>ݾۥbI]T[<3.Lg  i7IJE6^ :B̙s?۠!qaRY5k-I9ҡD[|M ykeUC3ve3D`lDў?׍ q܄M5G#P+MxyL/T`:FLS6LN@6>"o[Z1gBDl4qG)C TPiFzّ=Lҍ;-**U4lf#{,NN{z?.lnor6yچ^$ rT*mi> 因JڕVViڥa M 8<>;ÂX,KEj> ^J a:ghf;۷CֶhW*E% ;߸4G 7d H5I1)% S7x,j"Lc?j9RYt86t4B} #J ;f6 ! HTRظpHx#j06կm%KIuHDW$l4t-.Xx(;w$rްHlsꯧN=A3W*BSDy/j gp 'ƵdI]'0Pyx&XJ HݏCCK#8N*m&n2RF#(y$~qp@'PږQXbd\-'q`ԪX7;)N78E,.:_*0߃q638hes385V$RECQI NL@[ eZ@JҨ(Os=;/8#$ HvuQB1EmC iwugn 6-VsnH^^P|^S+^dyj ZAh)8(oja Tu>~7m_\2WW>Qܵ6`xy#0m雓-t맿p ҁb_¿G}dvf.A>6}/gz>_?8B,P-0+:]Nuyn?:nxB{rA]?*9^rxڝ5I#[0;{U77hf?4@0B!p}gj&ZENǜMcУ8.0[M$3gE{0&a= p">asZDA/m/ɉ5c1mdFwݮk 9wFEq i&>ZK~^k椇#`ȶm$ًxA/s *C뜾u$z)Q]I q^5 Ǐ*:h* &{FV:۰\%mO4'u<mƑ ~i_1޿'Ӡ8@l1mf=S20^S67gٝU~զ՟(cN2)f?2Tn[h0b{(StѢy|EZ{cP":3[0/PhXtɡ-Z>g:菼/Dy#ryύ Jj06"`\^{t w[kj}nK {TTB=Uyqk< x !;#6H{/QQ@P1͸^HpA0Xʍ@mĊ&l pOݒ2ݸ46QKG)i`0IXSJ*UHLem5Qd94޸{L[C'[|d/]ǃ'Hf!Lzb_B:v̛.O[T9SaӒ9=z߾冫acf tqQ7N tb ɤ u Yn6[b'1t e<3d,%a-&/6"'mf1~ t> 'w0X‘J 2T>G1.hP{K ?G>==k?׊GQNo4rau`Gd!YF BN޲z޶ЦzܙcwoTqqY.X mvtOxJ8cYĊ]Z`[vאWu^!~bp¾ER }S[rٚzt0[S;wrS)rʫvVlnmo+}{>^6k{;qמ{O&JQ VD=?R|حWOBA].s؞[H5=yv6ϖ|kd?iګrf ښ٭T|EǸlbgǍzAS{lK<ń7RY`d|Olmޝ-Df5,rBs-O[8.[b@M>I`H ̺gACuK vmd,%")@о"{G!?5#˳Ga5&qsڐ/ Pjh&Wm`f]kZ3O)g_C?dohdLgiXdeoh0SCiwcԣ | %e$ZIUk[G HJjK_\ہet7HӵƏ;lQtwϹ XƻA/^8vN]Xw{p VK~o:菧Y -ϳڋ/:|uҬyO0c EIt :%ѲJE ͬMθ<[Vϖ˦hGݏQ`&bg֧<3yr I 1daseY)gm# t9άͽt0ks;34W)BᛸNyV6͗Y3p6wYpPocxh|GYsYV$bɔ*PNKҘܟ%jSVmAmT";Lك61n8lS%>qts]=uIȘ,Lfj,m fkx&*ulVV2(%y]wϹ7kǁ "+v{G HEb M,̀5^ɮȬef*نvᔘg r/ @10,[ⳢR򔅂/7tO%Z:O0w"`/4ΫC(Kcyd+'Hϑ%W>ңg7Y} T/ |Qy`8yw$1 ji7RS\bBX` weF;[E5"v`qbRl=˩kyWꏢsk'ďƵ֗#꣉8:d*ɱ`~2ylգ[x-#P>n%+.ƆOq'lh6_c<\բ"TVO :f䀧<7R8{7ٶGxuQgL6ĩ'r:K.YVo(p'xt(}eDžYJX^J)R7aでb iŶoZ7 pL~LsQB/as8$4AЂ\]5~& ;(Àm߅| )W@LAy#tN0xE!/x1-`qCޱtxgo)ͭ>b c,7\J J7nmnQOfr *僥0erq92+&?_̈́+˕ o>ŗԹ;]q*S:z4SOM ҠiC8V}~8<,nZAs=+yϓ-.! wFb&!3O*>`$y3 Whب_'<$Oł94cO Ӹ2(Lo|z$eųƏ,+nx~KSM>Hv@= Yf(ػ ZCΣN{`.(b8!~1Ba4I3}=I;K ~aGyH-MEHv*[NE.E{[Q6{(.J#f^L=hr̅Y_,VU'y_hi+r{'c%+{߲f=o??.] {%BXb 5tC~U*UN8m7e[XG&+y J7vO,X0sF-G78=FhDW,CDM8)o2Sд@;~*]fczB|e _GJ'VV6dE6%˦̧q\nvjHP8w}Z-屨|AW⁽".B讀=7/E>˱܌`:]1Щx,*q"5Xn~R3R(+H-DJ.>Кl?m*1I?OΑץk۞F]w:k"SvJ{Gl`I0%~ F<k<ko2 s,mKS&(8 ɻ(9I,g]z&g/h/ndCY>59֓* i0n+XC${Y)JDBg٠ҶLJ\~tD)MADIŔM,S;iymy}%@%e*6׮E7}d|d#涃7]Te|;dz F_h4˞)tpO ]), @~Y4[0] k25%R*6|Bk)"D7"W#r" j<_5Ջ4ll .$fqѠQ|4?yfD'qx5\^,xWE:)Q`{m:} Xrm8!J6cᆟӜx%& ~= ioD{I}cÒx3~,\N`LmREsDv$[Sa<;U_9o#N?3qn6zYi ALY r-l5,W)4]Q8걌1Xev_\Wұ.5WҊn6A# q.# fEJfGpUFDjJHδfBDQ>Q0bQMRӰo^u8}YNOFkwU<+gD7U8 BP>u{;,j3DMo>z?^$_e {*NG&:]9Udz:\-!ŚdB_C+a;:lU}M~'jNj>QJ)Ǯj)z9.c^t94W$Y9_ddl&WkhȈx!d5O$O3mK`#Q炕5$+ECzyVOC~&%3a؛ 0Άx!Ơx;ngMh$3)Oۮa28^50,;#U#ieq,kPgIGpJI*Rĵ=NxX jrϊ9NIwA@_19)9.RI+(%5G5) #YL8MEd;S;Kqn9ԷLe6rsmA3 #Ys¨XNڕ.cI1 TH]aJlqh_Gz}5)ĕП%k;.[%VW: :8<xJQ+ fΙiu4| w)#X搗خ \JgU*̸v3n٦Le^LFO] i GPܳ' nG)6j{+tPZ} "׎18U~3AASyK-#ƾmNn&~vgB+mM/n7*W/.k+ի <䜏:Ϡ3T'XKr\OhN$T7Iyž->E~'kڍ*o1'XCs$7G+9z:v 2ʼn\9q̗}B'g+Į;Q'y噆'|]|Q{TIs/ytJ+'crbY*S间LNlLΟ]*_nLcE GF @ȑ>43kgCRFڝ5SSoٺ7>O6](kAK|^鶈 D߻ A ?a(W}ҦQ]i [Fߡ|MKq&b,zG "`+t(: MgpL1_Oˀw+N|\]H][_wb$@pǎs 5. k.Ǥ5mx>i8^>׆pH8=z{ vb➍5 :P|#Σ7"EBhz%V yYhJaN%CҬCUlfRPկE= B]Qi1DU>0)SB@D-3,튠)4†}ѽE-.]&ĖL%Yoٌ'!ɰZRO.V@ fӺCyIo<♟l%pX$tл)]Gg@%gٽX.nfvE܇_ꍃ7UYUڙΊ =.Ѓ<ƲCchُ3|04y.w#ہEnNjwra!Pw&狵A )D6W s3 3J(b;#e:sSY!e9)묎d`26,*๞ t-O*x7_SXGW8\՛ exR6!2׿PQp(7Lo+6,~k{Cфtɶ{X\{##hfݤ_7Iѿw="tFB"K# lqśExEqlYSODzw0y d&ح0"RhB}^RԌB?)mK`h6mLd,6mLdD6mLd\2̔QӓE79#JI(e*%]tS$n4zv$w= %]xOsd|9]7grbl}?gI~SӀ?x95@bko\5Y3\[w"C๦@=uH6%#cFgIoH=,'IIa*]x%n<!`I L{fgY!fYD3S̡ ^/A<@# δ3K$t0K$%^у\g6IGŅҵ\H(]DU;x2v6ڣ4]@{H4E4M{<^ڕyT4+ 餪3Iܲ\%fiD_cvfmoo[%9`ErdwoK9wls3S7eIbI+4g!Yd4S'HB ,8oS)6AyJ1i%$N!&5Jti7kgoi$<ęŇbO+,gO(v6xl[" ǽ)rnQr@ sxWt8|Hzk/xk[ 4'F|?S0Gy97LP)ņ:zD;_! OkbIT4|,{jYOG݉ _ ֺUJVΙ 3,1mo c쵗_G]^TBxQ _-<[ȎnBe "V75Dž8leV3XZi f%gX} l`XDl_]AuUÑ&}65c'pi(ẁg)UAU#ZDq8vl`amSu0!!e{pbF-(eB|ɩxɐe zM|d 1BRMS/aԣiM^c#`tE#f@ޞqgv 25Ff&7qڎ9Ç7аh1k92h el9 hT06Zz?L|+CzPu0YBĪBG&V|8DHQ`B/~ya,A[vHe}eafM <WJ{d悒VGԼȾ>,KeAv@8iT$f6,I,\(d.D'Ѣ]ɶO2ݦ*~*GMuJU.tcЮݰȓϬ]d4Pk^TR)URHTl,eje +3Uݔʬ ʬA)BP%*DB,!B&1qÛ>hOlm)_!DyV'' =[Mx vJo^.RyT.O. W:zJN|(oA*m.~sP/yd~"z{7{Ã=c ýy0Pw&3 W*<(Sw] X7xA6Wټ惛Lra0j];Pq e9VޏRʢUwe}}@13UJt4F*yLCSQ%8:U W%i^K[%[[zOD둲OIB)4Oͦj3(ub6g$v ^/gD=pko*" Ӵqô׵R崾.a>ϩO7zCSUyN AHHj6IDS+iB[|%B<ɜfW&e:-ǰ jK;;N6z瞞x#{ˠjY`Liwv/ 1fL 9[5x*G-|^ wH#*’, q$!a~d`GZf(L-ewTܮ99s{J7 |mMLQ@zזZqFVmk.zedWϪ|t*P{ߴVw;& &&a_˛ 9755{1;S6>4.MdVպhdM4LoV34 5YuCД;F=O+5]}J#"en]vS)2 sxX t`ñm:c}-ݵ;t>ta%԰}m[*Pc8 5`0" m+ K^Fj*VT"KSL=24jpt&oa"s/*4ð0gOfauJ2bɱ =ZgAp[>SMx:mVˉt :}MS:mNTs; > a'u6cM$I_4K)0Bۧ1( pj<;ZlNpj0 emO@13SpPj6`&׽xz7AViV+F0XA+ttCVPƨ@aC* 뤻n5ܐ`HO;e鴩3A ʡ4?OZ  '.Qyax1&'@ۆOm|;,F+& ah鄤ϕͯ;ZVgMқfkl`Li(/ɕT=a]EցI=wIJf8`NLHtE xqv0(#mkw@|E\Ox:ȹH=9ntnslI\nqN/wֱ܋-Ͷ#edOc1 iwGQXhʝeb/ eEc郠ewdA?=:!|Hr^34D!||Di!JNKcN*=IQCr Aj+~)o=hr60Crd(QϕC7Y_ ;VBO`-aOe/(`2G"lHҰxAY@3LWq0☨/!5>ss/2N>ꖧ<4,~rv|V+80gʻB+Wk6spLP}Ae,^ewu Gmg%`,^ᶀ={@Sh U\{ )(tm4E %*ΰt XOH9y €)W#TfcJJ4v{>*,{7ƬZG>yq Y8:(S 7WSL6mħ8.}RˇCkT^haC{b{8E|p7Ic(I'тvN#yZ Ԋ OIQe$>dCOt,΀XcwjzsQ"Hb֖W?lO,[CauD)$5A]6m&M̒nIYb^JC Jg_}Yfʒ¾lW`\\3TX/M>g]a lEa6Eic]J† 4G߽HG==WhF#9R`XfmLF~•pAB꧌B9` X:W UȭEΕ~0l.5֓y΍ɭGZNXvl'0^u^7]yְ,xTɡ"H]0xClOSE^&ɹu9a7ގs!NH [&0~B/X[xMc7rIM]묘^`=kU̳@V~c ,]lqXD(uT:$܉);&b@'ap{꩗[ŵ^A0=& +^vLv36rmIIk.F".dh[ 4Gvo^jV[yr/ A <tz yx+ݮA;=qhʈcކ蕃?1.%/,1vL] "l*wHPUR.aEt4 Hnoٴc[{,]`uJ>i o][6\fo6`Q޾;I+?UnòAcmI21G?c"%ipAV_&@' ôFfTCo tJE0!Y|t-&vFR=u11 {1ESG+F$U~:eQi8ʽRiQoռMR6ؼи:hjW&%9

b{9ۢthfWCslLj&+f%d6_ 7:m:$nYuQ'2ypA9,g@x$3cˁvg8npJ#RڦښaTMmSQ|G?I/ߊ̕MֆjffscP[7v'L/cMޙX %MpX eY (B6'C;YUKEsݥH [GKjh.Bm: XtoͿ!2I>_XaG=a[];n98nf7spx7sp8 9VEw-gjmWRvy+E!uh:d9|ۚo/Wt0_坕wg]Yr q|&e䫛\@ȕ`߷V,:KB<`ZV#{om-Q /xDϘpKW)# +ǂn豒SnᑻkǰDʁ9V(tjǚsSkskt~bzgR 垪FODsY4*\g5~͛ۉrz\, blҪ_452hTعK PЕ3mvAaSs9)'s{0 zc5hC ٥]dJt ƶugpO!3374&o ~9DƇSt"Tc%fdM̮Q :kyЂvv4:H@zۛva5v%V0M.p ^\ f vv$"]7khUyM:Ѫhծ/y``Z'Jvqq Eb ڗO5x~t$Q!L[m%IYQxVXkTk}7kyR/h:QNB[ 6jSrf Ѯ ?' xvf?4!"CCs?xԎ8@j5>ƧbFDJ}N/)NLt>`']g/^'N(qKޏ'Z8٣Hs'w0N(ʘ1KJEG"[sJJ6̪}6?#Ry\\RAq&^ Iwnm q[df-rkؗ2gaRj'PUBE +a~)Ҩ*bnN2s9KZJ,f|o[ǟʌU24;$5x@R 1xţї̅CLKG5~"RƟ#8*Ƙ_z 7 mD)ɒ`bP> 弡QPxH$Cntjϟ IFϞ2CRU%`MJaϘ#ŧS'``@&E1>YFꅈ+MpaR?eڅe]ǮoɈ8VrXKԈ`tڅ~ IG@7L!n>O2 fI0?ʐ,23S3D D As4D"[OA4C~iH8|L8T'^yPѣ0AnnKֹ%V.HKXbu_1pY8XE 84E 0½ӈ`M4"T&95bi:j=iDFFi2ӈG&'D#Ų=}+ Ǒ)9G,szP  q8w/E¡*]IA6!'G]+l5Yx_|w,/풳 +XThRan\*K%;iqzEw%K8/r I :] lDa~PĨbQ`@ՙa&czLf=ҧcKyLTp)J.1QEå<&*iثBD<DŽ/*u3*qNƭ5QBȮPx X]NoDVg]"eG ,gw10`Ҩ?!4Z5lnƛpWSN+TƻÄSBxw驆wWgQ~8(">!.B;蹼;LJYPIDbfb ?^>0]M :[ /,}hI֓t˓W'gk6W?:YoOZԹdQ=vc8'jq *}BF  P2Tfv$߽B&1]Nw(a}x|@nSwF)9`t_ Xy;`e[Dw'߱/OuﵻAh_d:pCK;g=gkc%s[gڈA ,ou[/aMC8vxۉS<oNXr'ڊDf5N p $Od66nR`>--*us3k?oNX8~ (/uv뢍o-lٗ;r7Eo*~y9)Ǿ\]֚1er?utr‚8v\TV}1n!6fQJV''nݍВ7`#JI:":gWOX"2C]z`KkCs`ZOyM_l lo\Jmz +R)zƐˤj#1Lɻ.L=N6$<8 ś"bw XeԆO!Qh</)*0ʫI BTŅ},*rqY F0_h)`ӶKy 0ن1p`1T9 z;G//Gi}9m#*3:<1w[m^A}UPm& < I>6)鮔%%~e_4llZO:OjvRLƥ5]K=,#( щR{v{I HC\ N.8 IrO%@lIёPu!\>۞kLHX풐\ Hxһ.OBvH-uA)*ZoY=fFP:wր'<4jONLKkOV{}8=[y t~Bt?8|M{pmn"%^Wd;rcZt~p?E׭=Jwϸ^B^MQyh46?n?2t9o,o4Emzۆ܎8_ҤbsqyƲC/cE(Qjal lD Q#2IxlJm:YDN) rZgWZоښ."fG QT,Hn*[^V#ZGDz`ͨ1#ZtW;QkkQV6zWpWHDy;RCA A!!O 4 EZU>2^7jԙ^{˰CeRÛh|06Ė'돢6x\PWm.ܔdw=>RH~&yQKvR]qc9qOmZh8`=m5HP|O[k.8FwY,I[Pږ9WP'}l_9#q ^mu eJh zZLDƤ!t2qE o:P[ׁ =@ h֦iqb'_['=e%o4&h((ɼwXm+I{ ˞JEz݌M6T'FK8jBE@nۣ˛_ VC rnj>Q;:a~ln~6i<a^S:Cɪ1[,&ԢIGhxmLDo[GB\4АA[=6!fgB_ZM-jքqwתfxBy/w_Gmg]d˓3/ aaD엓aˋWhˍ" 3Z<7k9k&[Gd>ڂD0nfj4h1I荅+(JZ􃀕^-l,-8)lf$x9EFOH¶7 7z6eUO䒫=.|| cZv ~Σgb6VH }#3pNGO(!-a 6uUd=v05x%#׿e;яW'їUQTu۽@G͜x.avg  ŗxc.Eeɢ鞚_h{r-ufEAh -7i[dzoeKм*Sa?*`1}~#A?t2o9-`X7 n4$c> \)sl ߑ;0)`&8X_6rbXj Q2&9-iI* ȶ#:Ԝ@Nj\:mN a'aJhKi HKCU[zӃ=R?RhDo`[$ˇPpA{a- A=4RhĤ/ISUxHh~WƣS ><%b4JP5A&̺s,1wO:J-uWqQq ~v23ظtTDs?ibfgH5Ѩ%唽5G)^p\HeLeGSJUב||։)v 6h9ܭ[Z)9+p=+IwU|DpL8i6)$8iF[ň޳9N~8|xRb{رA_%~qΒ蘘Y# %Α: Ia ΄I Y$i IXDq7c^@$AAE?HAt'5Р{BG!y1^ 4=GopsHlAf:Q68ѳsV;|~CCʥ%.> epA>ɍ> L;l.O*vԉ"2t+ Go G4;%{;;gP8&Yy}>SNs3H!ۃ8C< 'L&F;$Z> ]?Ծr:+5vuwyFAԷ{1 zǣe%%z_ŋ|cxִLJJ= EsQrJ/2g$ttȀgeXu|-UcŰS@X%rS(ѻ\yGr'(9ωjAQݍWkYRʫ~d@~[E+^6pVB+aNFPE3.! z$>"p7ޑO_&;0:Ъk;@V7vkaQh Zaţ:)y^yz5 x_1l%iʷac}> b_Psͱch61Z&(&!+jUDqp`8)1ڕ Ι+1.OeڨR (mtVF B$&lMOG(=(p(P g"XEMPZLf1") J aiE tHCy5QgK!BwQEa)0oүJ}4E?f#{Uf~Tލ-,U~5YSlgSɩaX5Ҩ8[Q "_V]n\J 4U6H=U#Šlj|V5@q؞sB#-G*B{Sjؿ}`7.APd'to8翜Ego_zpzNߢE/~CQvz//o_Eo7'/ޟE/O7E|wz|v=N^{uC BG'o~^Pћѫ'*nW/}>>==8yur4 m<9-|{DNO߿:8޽G\9;sG'gN^!P? /^a$qP59t!upz;><Z0QqkuoSvWo0ޟFpۨ D]h=xviu;2bTQ:7ɾ1z tĢppxp\DM"!9:9o[דeĥ38!-z};}x) *fct2:8 ON`BIOh!_l'bɮmwf`GdFh_^o|hMdF%{H xKhH(J Ѹ Lߌ5RaGO5{<t sYpU2u1{j4AVG *M L|з X%~{ek~+?ϖ>AFM5<#'ܾײQ+f̪  FG,petdV!A!3f,Ӄ%qbm]NvPZqާt@}&aDr6*ahCk8_܏ċ_,Mi8q oMv{} y&/Y9Rb, +NhBVqu%boW°̚A) yƪ͹o $la ZWƦZ3n?ڌ {Aj9 DPOe`(pCCWdS]W֪Ώ.kUmqT&s Lcrnj,\\a}9k9y*bYIXWUq <|;fʜotI4^rAULTҕAePkd:܋ƐB@ȎWdP=ˬwxCUZ" _i᯴WZ+}gJȴ`.Kaehlq}&H!#H4" qU6udWOa;WZuuz~j-/ D;FnBzThFM|Jf_.;n9Klٷw̧{wE?}];Q$0`e|lm6|O0?yOG^{4 cXa j-/8؁iv8C>~"M+}#r\8k-!GlvP f m"gen6[#%bpRE⦳k=5ԄU`ky}FoWS ^D{d%PCv6EDAnq8po\S#3RbC;aE,˄ a2FȔ!"]*KIލvdyοXG74Rq7BV6'o>C@'x -K`6WyJƩEjK~q zFd|@'9Ct8$)BBhr5-Dp+l||.|XAt{ӱ.ӱ. )[k;wh_j to;Y ,@\M+@]IJTHNxF (Dc vs56H%yIN% Ig ei~@}'qL=3dCVk%>l@3#5j~U9PP?~p*ovz5xQWm_^"2ᣠ{{bEϣ7pcT{E@*)@|y"%>xFp.޿>INIu;Cx`IhBGd 'HwHjoZ=8e!<>hG Q;T_aa<| ߲z/ ^_ZéWi[O_G/h*DYP:PL+&iH_Kr|W !w8 I3Nj1L`sXD;E4Ά a_g$AVFMIbwӦ% j/G63d}˼옗Ç;4ca8BSa6Kcv*;"z}z{\]kvxR;žJxGI--Ңx|g8 )Yq9,o0-D˞*?*DiLB tpN3K8,3|ndF„I˴qۅ2Dh5g;,_!OE5^ 1 gaLσ ž-XC|>\^*}APƳh1/.6@]9֫1rNu/obP;o@tA6)Ao ށ %?:ŀD o2O/ݴudEvCZi?E` Ql/r_ P&DwBjsHW  #җa!5ŲP΁l pYI^!Sy"}2ª ('jBn`c d'/bi .;#st}C*;&^8^wtacIs Co6X/`~8)V;$WWh"G݁-jb%ksy|cFv8,Q$Gĝ`̭F@~l^ƲGPi1 %?@WqC3 ʤ]α-=ŏ25;"8ފ8ޡ" $Ɣl_e:Y} ާ HN23jbP|xkpI~ 8s_NrJd c ag_&ADUn᳽N ~.+%%aH55 z X2/#9;`jQ 2մ1!Mhn9~Z͟;e3i.%Jen8S[=ELw\p *< PsLC|h_^f]4!̽,XF>TιņЇA}BgX[Nz>wԍح Ytfv'u߶0Ů6uc6eݨ=0&NDo#aK_v ̄LSF©f ^"aN~rVUK8{WR"r%HJƣ{үH`v2>haG̒^ "*!  k0(>3qA2QQl_|AѰ iK!\yd6GBJҶ+jKHM޲,==T8%Vc05@EN+J5Bnzvs*:Umw\ &X3.q"$j ^gN\ 7Vf1(yQN\S$QHvA0i|0Ē,0sNdgᅿx3wAZ`Ev~ 1b]1|c;6pt;l Hۧ< l׳ qRNtq RŪ*K A8\/ߟ| J{PzJKAfjkqqyXfT5e",PPlmrdQG>),OeW& \sMqkX[=͍dR.]vEr0 >{bψחeW -n '}.B\Dֹ,^~Ԓj'()M67ReUĹ rR$%*w0-Rjע7}}e{?^>7B5'MⒿ?ˢ8nF-ja AaVqg,ظSFJxɼ߅l@PnPj iNJ Qr#2'Fp֋iq, 0qYxkj;vBwj4roTeyi"W + bZJ G!Z =ֶ4EO۽M2eHtk4a`7qXC@oA2?(Pke/E^┌x9Jk#ZMѿWeh}wGg2eݿ/"rk:mo]i=ܴBpMKjf![@AV'=rP1S&QAVMb-7@w&&ME.P&1wr?yd/a6{D&j"A՗U.+QʐqRsP rEBt P!=q!{w,׼Z,Y{)h +n[ ] (oSDtBG#SYN^_5]t"$RXzPQӢ +!ղ$D}:RO/^B%+xKh3uc4ݷoe$R!bU(R oWЄɭ6Ȟ3|]I0;hyKRݛ.oxfd-npCtT7EMa{61^^󟨸ps@/) MC+AS"#Qiخ ݁ rhAVAFh _)Cm04QCc^5P1vUW5ԄB욳ʹQ{V Yin3m}ܿ^I)Pޓs h']gzk4|llllllY~6MOZ=(^cW|@݁Jb7~i69'} H~i ~֨E=ɺO/Qy pr"r2QmO)ENj -L/{kc;O+hɳ钫'~_'rSt!x4IsK;/IX^K1,&{y>jgBu"i0'pwkJ(HPniZjf/!)jR-]$s&!bD'b49%} łe߶?f-ar+j[`GG/\2ъ3 @ijRDW!@WnjyN.KBV ktIqW/ ya&hF=TS܁\WB! d . E%j1/},I iP!Uw##/xL׊/Qc"F'],a)="5{ O#(C9.u/\!NΊ:+!HLH l5\/L4[YPy:pK[/RܩԏGm3b:C0ǝM?X1M.! .IװE;4&7yuvԾ*,5Dh4"tItk QoIzl(9?ENF}Þxw,azίǽKw!5f9! =2?s:{WO(EvA6({:]7, ~DxhH#9o&"_ Bi4 .Zk"3\G]l.:){IZHP=/ph:~r߹@hQa_6-Hܛ~dx of9*iS_/}>?\tFȨ:|f=٦/ۨ[fTr}mj#HqVA޼?GM8MD\^gw v3AZ.=6#R똧}OQ6>Dk\t|f^vzl5ZWawrw9ϱs>Mܴ~ހϛyy >oL"uګdg'N_}jQbn_WCE 3t UĴ2MȚɵ^ VSyƷtŴ縦b"4 X?E=bX-DԺOjHw ˂!o%eEȟcZSӚ5:ҏ,tsYpJ\kǛ3W?O#z2QzٖSao;i]sR],pd +Y3S H&KOshnxd&9 MARQJDaBLgX5dN 4Dsel 1a 8yo+g2+Aia ^VXX +cae,1wM]6Đ:g,$ 7L;w)]0KHYv>`-ÚwPIy}ۀS]VvIHDсL q%b0Ъ É0&$(ќs:ʺ c:k+KbQe,AsrΰYy1R#Dџ< t-k輘$~1YQwdexf'Mi:ٕLjΛit(ڄ*ZE[ ]9:}&눋hÿqD. Ȥ!ĭ.mjs`mGh~a8# ZU׎.gX#MlwIx >6XF>G\UWJz%a6+NͦTz6^'ƚϔr-[ }q9G LBqhWw$h /⋯k/&2y߽!Zk荼$QZ0`dc4h鐏pd<K>HtThY9s"ТyLR)_p8Q9MŇ'4ȥ>֎ IWÄ@Vk8r"|<}!`$)û* b-d4(tH[Ȓ* >Yz9~YOU"]~[{ x86itgG Ir;TqIxDzcPȀ^]QMUU~x4isaTWgtR]AM5{TKv brÅձ:A\,( 옚!@C4vӃY=~t0=ӣpT{X^7kn|Сd;dW%@DΗ4Y1<07قD|ZZ8qh%Q&2H͜L v2U nWrG쓢JᛲxRQ{ +:=zM\lYHm7$Zgx۸dyQ/F mj+S.ӅuhSiMYz+I>bJjvKc  KuaR5 6թW~`۬la$_ņCLX~"J"BÄU(?-+# GXr\,Z C\M`^]v Gv",EJrɏ,J=2Q;#e7Qo!3ywShow; ia)MІI+NkxpÔsyôyG~V/N8{F +Q4#r $²}8 MD#|PiP>Wf˂WijhR;;V@$ХXe(ȿSbՅ^q@/e늒X8 &Zo_bHK]%>V_(F5GNV1'(qčqB6Z*`)fEL)V"U!a50[XK> ۣ6S)0_F~ťSiNaO;[4?4ܺ2;|՛IqgR{TɩMLkuӂ6BǐuN l֢@F"LFu^),Yd=c;=Aӷ^/ ix F3yDߍ>͵S_ H3zb:ȷi'7f `JOpo`)҂ gN}u6X/͈Y,T:Pt (&q K,H kD#_y0ew>gVsrK֊>oi\ ;G ̱1) Қq+bXsP*+Xn_ZW6)krPw]=fq3c-\չmw8 fF=A'²mM_W-٘edz0\2;Q8?D~"$:#u }4҄Рr' sOwπ}<ꀤO, n&A%rQ֘tWV8B*:c k$>ۘo$;5Z]%%P;;KeA[X8t. eN.Ѽi,LE%BV lŋukA} gת ­鱄511?٧3IXU,37 IxR*s鶱5 M%L:5Br|td.l\t%ߥ<#ꢩ3<'/_@"4ώg'Q1 &T_Sjry꣏u,εBvXWy|[_~{Vّ3|cd_LR.ZjA,q86Ƀ]̇]zhj8r ˏ-f{fAhFVkO |vchhJlp|&[X|v<0y7,Y{tthg?c}_ %ǿ\ƧoISCOLdp(w*)hnIy@Raӌ%F(;eNcXXhK$%%qb.@ΐ ;RV .!]ٱDBmߒJكZP,ŷ2nh\'(Dیl6Bl<Ħ4VB~rE}ڽqoː1(Gjhb͵ݍ : He(A}~n㫴d;߇db iG4w`x::{ \ ,:đ#vݭYZ/ 0*"+Ztŕ.i|`2- ?:#4uZR [g߽{{z~xG|@8-GykKKCUЫW5[ #@vZj?O[觟"}/;-Iy6M9xu+߲U纠OG"rPCl\z f4>9|0H^>8?=Bf\̒uu[m-`h2 %P mk"M]g:Jt}[v Uv!? 9@; BQkCd¢uxw}F<:TY~-:mô =DWu|1su!/1=:`:\mvۺc ԛzk]tݐeDQA"e.#K0aBki/@4:ׄc DsF k`E#Z Q:Ilš dڮ]-Ա %DA6&H:=R9tC6X#Uw`&e`[2Re9O^=Wd Ah}wJm 2j*Qz5%m{Cxd\~[8r5XnPKpėh5kk4[R(iq)rfnHS'EkC6lcm_#t>F?`m&ˏBѯ{Byv'{'5i^tpLla<߿yv|Tcvjw_ H{kêofN[ &1d 'Ht>#83}('gFGL77uZ]&Du;62rM@i@P@ SkZ^8ZDu5'L|`E?e.dy4PB?אHRqM%_ # aRGʀ ib:&qMF!$2DUW|.u~˓JsR BĹisP7mBK)Y?ُϾĽYXB@lh!y}@/3B.0MfXL| 8M o#F (PE3)߰14!cЮKط=GԵ~>D$Z~տbv%Z^atDا#ėBY jt'CdH^=zke$i;;'-:oW2Zk'bSs"M\ 5ӧOM?qy,GQ>2|~lNٜl*{#prkXh%:g'd=ު' doqrtr=}훵p7^Y+: s1!NW8?@wӃvJgkp򶏦A ^EtB0w:#[D肸6樌2{GptC\!?+$@(5_>x0e qPp: 7Ҏ_N΢/=8=woQǨ_~;=藷OϢ7GdxxrpJ>YZՇ8=xs~r|9|ϫ#BVd 9ՋEo_FOA/N^MB/O@/ߞFѻNwWΎ#᫃GkhtdFgzebc\M@ըsG'LJЅ!"jt~uUD G@cttgԟZNhD čغqv~r8# qtv| n&WQ#mT".4_?;—N߿.#0=KQ:7ɾ1z tĢ.gH*EH$sћ_|[דeĥ38!-z};}x) *fct2:8 ON`BIO&^#O{1dh}yӁ{AVcyaC^/Afu~>{o-TJSb*]LTjI c4atXpu} 1|/fyx5ab(-{,6R,SESօh5mE[mW?zE_/rȳ kkC<dW3k3)N*&~чq{p7񯑡=frDSWw~DQmVv}~w,=a] i=`2Cޡʁq Y=,B^xup98)t/x_<&Uk~XB߭2Bm1 a_`B~ 9 QGSJRH5kZ]kw;\ܴ=e&Oy`=1<{V!:!Mc(kg3)~MP'1)D5 I}uЌ Fci7n.\^F%'l*!@As_[M@_{">G (j_nsUp%WI -_$}?xllȽEhI6;$*فz}Ar@Gzeqm muګJ;;pn n˹\K"0QcZ>,E(Tě?0KhU\L@#ЀلW=+!tESJѧ4cNۣ#y`EPK6ʪ?==*%*ۺ lԗSmOT;.5 j.zR"JToE)a"{_e/(UfԱV cF k+Zo߾h9xzo~FEF2 /c[.M6faZGku4MVwb%:~C*܂#DE7H2#)nu5-i rWO{{o|ڀY\vw6V/ntQ!75m?q6y7BPS%'-8kk}Ccu*uAH^z{p.ֶZ}|whtK,y.N˼=gW鶌~B1%=`rWIvv:ul#d__lghHAc-oSH:D@L!oB.X׹El+OR^wQ%S uJ,0y 4q@OjorLqWħgPGӓm:5vnȽ;T |?'`x1}T?=1mQ"7k=ܐ[vG7_Fo&)7_=ɕb!_rT٤;SQ}|*@=n}F<9UOUOiv1Bސ }^xfU:2U#F-^9ƙהpKDG2=z.Y>1mG {q._rߢeqà?ry2"8O#0~1Eh 6vƺ%ikl :9vgKZLSPEuDFxX|Pi:}J;_uԋ9T- 4&K].R~ ԅ_CKD% HKvFW)ɆHY6djB⢛%p ;uNF ND;2MPB1 Ѩy?ݵu ͢rnUKfv~_L Ҏ;҃;$F5稾@"v(,TE ~o?H% JԷ4Ʋ&rAkA%^IFK9!B9AV*[Xe la=dd`_4R{HW [X](#{HEg'pIDw}4q;K,^ct6BO^u.HC}=gkd+_9{1g/Ŝ9=yV=Kь'\>9wrOHH6-"162gdMX{ )8ʺH )npۅm8=btFޯA{PMK !W87[^Yg NOPb {G YP  ؅)!CS~n uq%F\IF"}β>W;:`%a9:Q/w#bWHGo\{ Q*3g U> c^shf@a@t lyAnbE+@=Eg$'翜#+gTs:'$ HKgc+࿑E$XB? gǬΣ Ҍ0Y+M'hZɦCO꤆&Ԡh Mhj@#JU@Vgq=^S*aɛ7/OQAJN&ٵ1:[1)6/ 6C[<1"u]zy> S-&0CbCtiTy=(Rfϊt*|f7ǤR,tX"j>xsϗVfU>a-w{4 "ѡ'p["B퓨= `Us;:\{v%kzC%hrX^Ŋk1l3](wJ 1j 4Z#қm<d-Au9M2ҭB>LqjsT{$AqD5|b mN2-<#ՌjcFvd*s=h#fNH# 0tP&44; 9TWD<0)28ӻ쎯p>\'^j0CxOw)gZGzH)/K r<9X-xeKky))Vt燐}]c<Մ|rǻ$e}&CDB~5u7hmG?b^C.â6u=tdF,"<[tH7ȹ!bӧH2|6EOpdX1_Po/ϛjv=չFa5 %At kjڼlh^615c)`ŲJA&81)߶G7k7tHչubx ~ZToLx-/ %T$DΥb)X,"b)X,"b)"?CoZhr>ƋWǧ/p#W[F(K߂J?K`?jqJ:z4zo kbűXq,VbűXq,VbVq!O[4i?`@dp㽓wL"1Λ׽Gut9j~w5|AS| M(֞,ӘC\|(#~y{vBpYLZ)‰D8*,[0c14z} 0h8 dɗ,_[ ğe;3dxϙ~]`hd񠇾/jq"Z20cf O&0%!V?XPL`KؐxekVUġ$KF`9<jaӫc9U25SJI< uZ+"Å4 ~jVn!6NuilE r  q мx/|8+Gv>P-{a>@Ua [G2b#7MBȧg{v7,ko:C8݉z51)d߮V" a A)K`܃ݓB{oF_w u/Խ5BJ--}-\Xci!MKJx%OkF0Wń@a.o/8K\bY/ʢe }REc&%0EںG yg*M;6b}FR>cD,lƩHZʏV+\L(p =5Z[ZxnY8CכK&+p]{Փ15ن3ٻ~ga΂֞JS 8z1J7-Z"YՉXCx`2&>ωHg$_]i*>P[5]J8t^Nk ^:ZD5} uOy3"Oe%NNǫZb_lHؿm6RwMMO?yՏǾW;!{֝|Nߞu7_u7>"${NF?֟O?77?>B] xH?_r&K<T.Wa%Wr&k\.wa'ȟwAj$_")׿H0s+?έ;p ;!Zzpmp`$ٚ/^+'%M/N2Bgӟ__Ǔ'ZiV[aD̅d^&"E>Eiu7Jݷmυ<I Rh7A_~2rkZ0PS]6<'fo6Kn@d. K`j\_]7ODuFS!Ol^Y{j/_$)5$p%m_!+ݶ?f-ݒh;T* .Aå+C$f/1)j1j5Pu ŧ}uegu2ҫ/zv2 e=Mi 3$NRT׉Ԡ nq k p|e'kH0bpcڽZK3*M UAĔcɥG$\C oaC˃!n۽ Qg؏>CLTa`DGQĒA3l6:hdBs;6i }2IRTdiE%bTk,HQu^2s%eMam,UC.V`%X!Rs>^!Ztp5` *Kh!!I]a( dḀ]$S-NF }Ӈ!HB"h8u| "#KW^|:'GYI0NPDiRay~ k%DLk7ȵ @UП@)S:!]R}m^m5VG¼ yp^#eTw;3P!돮kH _}ySӅk*CpwJ][!'j++?jq66A-ϝaB݀)Mv`:l!Z!W]aX25@ȵ/⬇ZġHlh,E4jtC&F2ABPym_^N6ĕuA!BMiF#`mV:ja% y8>!%!惽M. BE-@B`]=^yk/Ȱ2,-JV0>!i?A\aOFDH nѬ$'k\OgOp#Wtwd]#޲%ۏ%=ۧ<KLk p)WHryF,XKXcLw)EVza2gE&[c2u|&),LkE*F ^bjAk̇Gzy5,DE`[Y*B$Jъ EaJia)5+&(KJ:GX5˰fb/,K,_/ҢRY02q9hʂH_SږX|M9ɢr:+xǗ}PD+?-&\Eh0s Y._mK/$'O[{g_}xixm4NۛIolgO|h[Z |(Câ=$pjE׎S{xL5qs ,#1.ZWlܿ גTwZ.w]0@^ O/y]TFb+A!ꉩ sm&BŇ+y i:=7F(#L^|"c^1}Ak3A#+(1wPPRTyߕMCƚ[CD4;k{S_])`kaB2]앹+3ןƓFeZY*XC19 5xK@2kؗ/9u[d=yެ÷ޞ\Yt&Wtz,@Zc6C6#vۿ ٺB bSdB+҇t ` ipΘl)0U԰+IJinFjB#ޕ1fG5+ЅCҳeÈѲ@>йEA-90py3B/߰M!kl@\`;I€Q!6L :H>JbD#ҔBLX TrH |"Yt͓1{ϿG}p4K  +ZZs V#TV^>9?o]n$Q-αsGkk"y6͏'^3`ڎy:pp=-[T-(q'qv~r8#zVm8c)j ߇<}+Nwx+!,oOq>? ɤ'ip:$"[M)=ܯ'g< i׃Xj8g}v1:yg'yóPSzhR_HH^ :hqwElk{GS wY&1,>Š)6L/46$ jw,h*@2&Qv ghz7X{򧨶scmw^t^os *Ȏ̀k/8wZ_ ys [~lM ٺlG&WrS9ym@<_Q#!ŵQ܂ןr)!tE RSՙ (bՒ$*˫Ц?qujF1#鿘:/ʺrR8ֽphGJ"S rV0^&EHVub3=ϥ- YU&kͯR}v/C0kY܌,3.htBZADjlhEoePlcCQv^ԌvocBA}c5e` ?5#˧N"^_!qi8`1 P' t1`m{j„'{ΟV42탾y;ݍsI@ⶋW;;67B?)ƣ:j` |y^.ݳw^;!{*VgY^?JOv`t]~QMW'9E5KY!SB!~}j̙e}#Зa.t\IૠnO-O6/X+Q`a.S!jybLB~|\ !&3_L,Y" GmkO٫ˢAcR~ђM/ [CTs[hgI*?j-8HF?q=Xy5ѓ{4z Oe лA_\-קY4{h9 _N;mf;-'Xw)`h/ޝb?8!,/Ov#+VE'hiWQ$!@0Ws׊嗭 0(X+8U>y2-M 0)i[TM;~`,Y`=~m`w\P8Xk00tuO^^ `'H9F u+ }S~94aeh$¨@c '-H/!D}1}e Ql#`biEJ-UcrB۵]jB_xr+9#Ş(݁ʲh{@E"|?we tGOai*O:3l}~dK ц{#b*i1iyT6afWRnb 6&mpٵxxBQیChRbiKZ9p|A"kw4WDEU8v!x%! u{ 5|P?>q!~5ML$w9*&:yn/Y&MCs C.m%Ș'<5UNe7̀dPXb 0o\^¦f\vtF8j^Ƽ Ciݠʸa۽f4-%7-MpR\^"xHP;1 ݗ` b,bu/ARDKNq hsMՍz󩺎 wv>MѴTGS{GRM+hjhTG:(-tr" F " E HIa'/"h#̓"a0o+UUxh"2iA&F'=TnHmtrZىji𾰒KS=@JSuOsUy W!\F +YpJ ᒃMufA|XߡUXqP\2z(fbDg0\VF7'74 !%o"MU?,âQ~XLDpH4Dپ AiaeCs04И`(7S9'j(76o&@YbJDueL[nUvbp9H`b+_YdhNM߱j=~kpT^a_;؆Ď3{OYE|\ذ(rg²+Nđ8q8"i.i9)H!)ilD%5J:Q1%J R_*4)(t JK:yF( ro5T:U| :Lk&q6:3{VF΀mnEi)B"CGRMMJu4Rm;hӳHgK܊TXqCU'߲.H R1vA[c=) \P ݜBj7KT6cL40B442'uanTxnTN!kv!rU@ ۤNY`M+~Ey7P!nZ KޅK,;]cLm]vmPp+J}vșw .Li F^TSJ&;54"'t;q wuXl9a'w* KSnM=6-rK.p7HɳEZ'[yTmY6OQ:D+eJw2'/,߬eyY2o/KϻzY6ge)=K\)}0W/dpL/ٜ_%_n ͅf5,<6 Gk~;M7,ݩ}(cs*YNs'uei6liC:#P*TKܬʗK%nNK\W—XusO۳ؗ F~N"okq'0R2rNK.;1e6'f)'fN̆:;hZYGSKG:ڴw4-ѦgGEolvbVaCV:<Ss&hKof 6b@*+w>#g|v:5Jst>W\kCt' ;YRr"upBppw=p|_X'}-5Rzy\P-rbo.5؅[Y=PnSF6(jn105O>v*'FCG V2[|j?qnEA`N~:|c{LXx^@E{HM9O;9#W?o䫏NgﱏE)y'x}ICgZn=%i.jzc_?y˯m;w^^S'پ^qzsO!? Ce%F:K%|YI /kCo\5x}/7PK>K}G}W(IONvQh ƫkXl+t4`%d,:TQR[GUOvԖWRze^/zu_$:1 .fyum?ўGJq{Q F>Ɔ1CxeL4l &҂LKɨ'6r@%zkvdiG[ ;Xf Й)fzhGs݇`jK䊗ӉT&o]W4es+#~A`e;) j^,tO'v(+wU'* Ĥb"\}Li}N ŅiQh8b2Oj&>N ~.]&bQĞz \W$έ\ړ\˨dJj]JCB[B@sɫ&d>D*甋*7TDpu=_X)<1ۮ Դ_eIfc ?guzW^ӾJt}<1`w@.ߴ-_t[Ɓ #*1 z b!-B;N{->f6-7y\s~_~mV A^ztX\ӑs T^j;Pmד<@9{s&A јv2<9{Afsv9 l$T9K>|ΞDx>Ρ4esyA ir`iFPu0Aj`Ҍ҈bJgϞ=nќWN0zV=~9H7ͤΡczz+I<Ŭ%YzZu4sUguzj~H4ؼ Y{v 2Jg$բҾ7CC֞Ȇk8cx)rBFG 65i0a$`#> !&QvE8l`Kg-?fXP- ,hn1-֡HJ^m`{:i;"|l[Rשj& vCo udX$ԝTLjz/eЇ%^m+Vcf>DԼkbW2a.G.W:Bmdt{7& j(vzm(kSne8}НCS֣e¿~h5Q;{G{SuUF 5{:jfv#qyvzͷC^"E* ZE?hQbgТ(<ֈ1Qޞz)@97BU(f."Qu 3FSR~'Xx>=9RGB/6$XFJGH2TB#OFqƸI"QIJ2T)dA)z0MMWlCo4<ӣ$j6LEEE$0IiI2%/-¦eQііfmimimF[J}r7m) Zi}7ժ\ \ rRNC 4xE@#D]qSEJޕጊw\!3(DUF  i\Dzѻ R6 Ԝϸ2zWH"Ffp%3%t)LE|V6@ld\l)g 4m@Xw٨dH_ĺS=N +W;)|'>鑿&7ȁI15KG #7ը+U0<؞(6ER"`{u& '?'l0TThŃ :,ѦI6=;j- 箧80:^D d9b]qZG~(@ ""." ""ڤ)6 ye#-i&јvEh1hȿ5ofCVx2BsC[=`[}Va34Q~jGiWw /x2bsb"Ft?DZu9D+/8Hl1E#Q~h*n,Tۤ,E-ƷL5fꈗŽ/C5ӄ|Z+yF,`IV2VH+M3@'M/g>4lT3~ozC"v*[jNgVQf#} ߚ7ӹpr!4- VPPGM5ؼ"65ؼFaH( ۊlP)RЋAE!M(+}B,7%;:Zo՛`' lXjl8"$M1I}5؞;&zOLR]=ib4ӤijЪv AԎ րÆ v{"uVJG8zGB@f0aʦlHcwTBEmt*kELi,wUr0(ud,`R$:]0N7m&%(/wW4/㈿&62ūE`3U35bׂȧԶ>g4n BcT5**o"N!ɯW!FHm>ۋ?FHgR4PMIO$SЩtUʢj6y8UbHCI]A|UuWf_u]^礶_UJmn>6#ʌRd֦dV%2 4M[q+ m-B*!aWEX fYhf"p,˻`66g8v8686N|/n*_5""l5,..>`MX]M!V yf>qXb߿`R4o Db 6;yj,'O͹ɓRRa}`BgR%3D 7 3 r 4ε0AC4/ ?0O5MfN!b \Tj6Hl Rķi_h92 )5w@ < W>Zh)dHp8[ԦuH @[F m~6N_$}S88N ?^887m@[Y@M!li@Q'dʕP s) k.>'1yE!=or@< |UO)]Q8 %w)vR({Ssu/{>8" @UG`Ӳl=8?m Xau mhѤTG]P_Eh)=xDk'ۧHvwX|7ФAmQ "B ?[&ΆTbCQ=q LšRatX}U_* 7%MxNU~e&јg~?۔I+-[v[b?0_wzO8 ŒՁ=@R!DuPwؼ>SL#SBXՁ)$̈́ dYU,AMˤ3(`Ba)tS"S"XMH j\Vi)&8]#DN69$Q^Nje \U=1HN!@N/C>>O$>mhڴAl[O.JUinW+!i^[W+REHN!|-CL4 fB1 L45ؼLlhyU`6RG|6l+粩,BSSYZʢͦЇk>Tz;0TE6؍_u*7_4ک#բ4EueNNág)擆CWmvfб\i8fla. حݚAު X4m&,6E/;j~jI%h.~h!rZ8%XP~}K ?&>.̚d@-''߉ɝc-+p\rʋ>ؽS݋' Iπ}3i6e,ya99NdebTپtb%}}O)aƷE"}L1&66Ż*3fphV\ׂ3ܻ?Lf3LӒ~9,494Y5A ;}Trծ8M IԤ\֫6M$EXR`LS#Ԓ*i-L$w$LB=$Ը *Eߨ4kXzJEJbƧs?1111y`6 Gy6(>bK03ؗ RtJR\bƧQI#*F!28.`DWũ+`qq "eET̀=ĤEc;;7[:v0Q5_G ;V>Q5Ž::c1A<c ĦDz Fΐu04 !Hfq8XKp\jp{I,|e&cɁdD8# Hv4IX"'*b A򏆨?BkC8Ϟ,Ў[2!YP2Skvht4IPp4h3 To/AG%+RD)Fh0#3,4(WE Ȍū2߄Dz\4Q>BE谛J!Brꫤ@36J(EU?CC $nh$7Hӑ*Ny{ELHҙEL` ս/J.xG+y܅mLآW| } auhPsPM>~Aǫ>>>}>"  r튠S~?PqP-#Sq]+Pq-_P1,`AQCL;Q$)Cr4})"}-w`l7yGZ nehM6kܓo؏- ?Iǒ)]|8Fu*Rb^H p|p8SNضa4?'QI.a2x>KQ^#g2=GuL#‘3ZlIŎSm)U 6O5%4_@M/P!cֶ~ψ~p'\B)dMnG5d:JGd}L %7ΈţW>l!J3T(I/ܒnHL Cu֎L9`aKLKR6XS͔dCMYwLZXu^jcmZmne[vFG&Jb+!ʸ/|)UNطnEaQC_a v39|7Xa5<- t5e 6I$(AR&AI"QRKVyE4E4E4E4E4M 9'5'>~<)@W|"Y')Hr)();(;(3']q&QB؀RH7&X?JfH66$7e4z5Դ@hmfsCߴm@*?̳4&?1lbT`,oO{āEE7pnn넪dp|Ch2@bH"$H<Ԫ8TZUԪ8TZᡦa∭Kb!հ# viUz q(l0s$qb"q\!J~D^-õY*!ѲhYVY?Wwc(/_5ң@ oa6J:z-x\]GL RM|) C រlO0DOZ+a[8*GT, F(trMŜ,4 2W5 l\rؘD+KlCMBd dJНZN/TmubSn(jh꣔mQC n(-S`mIIegP4VetEݨL٥E8l` 8l/E8l`UD4PTӍjQ4dUusۇJ>vGs-TTU׍*plNK*RR*Rb*MtȰ[sQi[6XVEjK:caQ:64˫R:ҩ'x"oSۦ}cHƾۈǾȾ5f:߸aUM_m iaUKXdXs= u)$k!75㡄d}UUaHV>~UxJ<ԕkKzQGJ[f͵ɣJ[cԦuw/$#{9^e8{Wn*^9kl`G T+R1RS#60),adMQ0J}h*g;X7ZqvCov6 sۋ:W}'"+U ɖ ~m[&v͐ +_m鯶+[}[I>>TT7  QӠiQ7kJjߦF[qHʗeʋE E jY^^~1Sln<©OL,X!-'4@J@s 4r#-O!2:*&uNQϘ7:h)p1FC:g9+N,5%,gw6 4'KfHuu,i1<|Ad v!]8'u!R!V2\h 0* #{$Ƙ"CԞ(HR#kHr(@d'9HH2'S>>f`H2ByJCŜ$-`z@ IqS1q'9ߔP6 = I]֕dFveQa+N285_OH"gT}7_P6M$M1tÿ n2n"%dO.{v,{N1Gd&hz&^&Py"YLJR)K;xPS$]xw!ϝq DĘ*bo" Ȉތݬ) Ƙ1})V>⻲A{YH%L vsp{zYůר?^0).B7\"UM :.)*~W_ǵ4V_8z:p5߲ sv.8/ a(hnsA=~Mq4;xQ|Ş>'||fGD>BJ򝋿H$-R^oTᅻK3KCwc*R6BqK(^ζSŊمW;?3+J;2~]^Y :k(.nhкoCGIHCԐը5 чΧG>i= `'+9A-H^`]D +ا8oA|IIhb=iĺމus'"p2NzeMz'֕j̝mB/@|(K4,89_ s,ݧ[ wZݧ*4%=  f#iKZ#@+tFKrn^vá\,KTmE&iWtk7<- [碴"KDɅy ^u‰塎[6ޑz 8Vd={4B576 qcĉxAeF2`ء}%HcERkq*k!)I(d\b/&_f!)=?ԏu J//vp|a8$;ۈ݄4X OZ'= _&=ni_T }.%EW~٤/x5[X I1g&^ox=qLߤ Gæ05lCH& [C7p}=gnJ^>^BG)tq|T݄QjsS(|fCϔRUj4UIjΈŚ(bDfBI2dKsY3oEL?h*J;+^0%XbKq3yYo踙6uL`[:n&mLbAmѡz Jrh'z\W*_5WMՖj[̀ }όؓ^6)vb`6uO4T`fVZZK,܈"E~`D!Kzduv}{Nnʬ`)}fgZ(}koNLUUZjU~GB;Qwf; m&|FK85)s5)-+ DB䎘6hڠ̪1]K WLXs9LO t~5[ɶ}43/Mi.CJr?QU3S8WZ|u&E#蹏,OYiX*=ғ^< hO,W'`TbbTR bF%eյFeQ] kTYյFe[JMaTZ̨Fu1$͋Q]a lbTWC2ۼ&cDP#b )F&FC4: c9QSАs9VTMT+J5p&&U0aa<ױRMT+J_ ΨcnԏwX;jL=-ߝ\#e* u<@n=w,G9ĀρQٽWPˑS/z! .:\#XPw,żLLs^y,aYRIJěe hݡ_2;4KC]*hDڹq/{~QȴC:g`! &0,⬁iq4 -uy w,եr}@LskGKEZ2Yv``̾I]ZĻ؇w,hI]ٸw뽜aZ4Ko}u&o&G\)Z{kai-k gJ$)I~8JµZ% %7 g6?ؔ`7 ŖeB8?ؖ $g&n䬋eFIѬF|Njy.P1cUȞ==}p𱰧.{sY3;=],ewO^.{a岹 '=]s3^.i{QS4,6_@ Q8Yue=@Wte=@WCte=@Wte=@WCte=@Wփte=LW'Օ{*L.NY!Au}Ugݡ:YwκKuPuꬻTgݡ:.YwIg{iVziviUlViHviU\ViHhUViȿhUVihU|iJPVyFV l1IeʫBR"b4TȡB>"s&DI3TȗfT`TQ*V#%Ml'FDgW L &ޤ4}*@ڛM͖^ѶLрv,U4]u>upbrOt05&FD]#`kLt45&݄b[$(MrIX"EBIX"[œF#I )Jy+05<65魡Mo }zkh[CV=q4KUdz8@YB~ Bñpl 4\ Bñpl 4\ Bõpn 4m >\Yh\-SWD? 륮.u@q+kK]/=Z[RW DD U[nsPsQL8zό^S㷀ucZGB $`RKhZbzqo$Ii5!)]rt 6'vc2Q+LI7l (;EP@Hߙ#U+"k8ѓW>RF\n8%&L@5 F5)ԉנN:͠^D maK*@և&E6XCM2ԻaMK*&2솓&E6XCM4Ta(a7TaT*7mZ5 +(L͗ҝN5LKͧj>RSͧO릉7 6l6-n`SD4Zb5ʒSFV5ߚOKv<+aQrs+$@˰ӝ րÆ րæuf4 e6`mܜ6vC`Àκ,6XV`"{"4& .^g4RFQkFI2oG t*Wfka꿢гeQi!"4bGwY}1C'9ҴQS,ǽΨ߃Ku6{~'|0=G᲏:1krzk}U|DzB RX*Kcp"N‰T8iKdb^>9S!cD v=W!BҔ"r_vat]w({h/ G;dil+aAzӒt),=z.+f|{A y~W;Od/jJ$ER(ujX=R2*ƽlнǡ= ދBu_% qcҰ^Jo3H|@.9T iksHju6_ z lEXc%4vڃ}tG&m\Ԍ* f~n!#]8Q!LdhPw%&J[̮3jW7NL %J}Vm$u9 -jΈkufW_%'k^{vˆ5%Z@h{CPE 9e|1 fToxװR2+ZbUল+}S/[EtGQ`9ee?@B3="hv{zI&'>-\eTWI#Ӡ)1!&/^YY\T;od7}AKjwj@jGr"Q1df-OMA9OyRW6fBk>`3ܒ"mJe*TZ_UCf1_7&H:َNhbhaN%eA[G|<~M+hZm2[G Q ;ʢ&L/f_ ;T"YbIYR9[Gp$ӭ Jq!L(&M bk+0lfON;b'UDl?B6 1󏶠͓3$e"7G4(nO=nȗ+jWy5֮$`$кE-%"RFH-" DZDI* Wa@% JWrD“ymF7BߍmY.0dEHzd"I DA aQQJWiA gO :X~tPݖR|(aK}S x4y .+9VtFk,Z]\ku[t{-689$&_΃,>#GPvzj7Fo&fqYD? Р%/Bb:Tk2 GXjyePŜ7_+|8`{8 bzɳ{S5Š' ,lh(P! \c8HYEvg3\ x¥'lY>P2U>J%cb(|Jn1CQrXǺDy^] %,Uti h,rkGviaKLiS6XS͔vCזڔez 4򘢛 զjk)EBAai`no-B +v(OPybUwJaGv΍h|ȈF{dY+`N% ,G$G$}oz^!b);I$(^QR&^QZWSJWgN/9ʗMzM勘{iiiiE"& IJD0!5F0I|"$"A_Pܑ'Hb;"l*9C@Nb}e -`޸`%<`A>N $HЧ"I.e]2%u'%VQR#\6%řGq )\H%sfSd6!tՆHsM .-U2 #E4#ufuf@hڀ6 T hѲ96Uhsȱ#|+h:-#U?|'8Ц hKR9kC_?h4V_#&k :cAT;z0@ $1Hj8a܊#Ö [edX[܊#Ö 6Kbx«:XGX(4ۂ&X`{HLHDÉd:ëU3 N&NUq"DN0Its07zzOʋŒñE]T `\j*R uJOl>N0IwJ0걨VTJ P<@ U\UH6q6*QkDaJM6?@yO7l~ /jjk|Q+@M hCԀ_LwI;9e6k#D6k~P֭B-ŅXBjDa݄i 4iհVf- Ԁ6tM hA[O0@}f?Pi_4kkp].l[SfTW nRrq%8CR@ҡ+bHPV;,nj9ˆ hE[uxek W`T=H\C%{tR406lpT`lqɡkfL덢z7lz7m|K)5~fj5Pug#M! NLآ4 " fq) p ֝P9Yt6त*7e#6!nT"Y 8l-mg)![EHұaQ~)#tZ$&Y$`vZI U5;IL4,`l6ddӊu tJ 5)(-ךπu 2,`%zaQ70%xrnpnڀM8o؀iB"9QڣǞtF4043;Nfc"4n#9n#>nc^<t2_|-HS$-yI,)v˜'8O"hI1T==)ԭ )ŧaRVX:)W]C^iNwy jB4KHY̢<ͩB}/Os>94 @椕߬򳩘1-l*f,?'*(ϳɤ*N&>LfIwayP'S'8p2~Мt瑖K 7'/ggy;w,B-Y uʜ8jI*:{B"܌(CxRĻR 7 ? R # 0ZCRϐw>ŋGOjqQgam~|祈¤^݃lvxiSC k|5'> Ԭǡ9|[Αx~Wy @w_"Ǫwia3HO­ $Hd4 k"6`ۊ4)슔ךWr >գZ!>ki/vۄD~`L~fbGλXf^l.^)K-/3[ *By:>G=saӥ #MSW4Oti¹gN.{4沷g\旝Җξլdڲ-ڲ-ڲ-!ڲ-ڲ-Aڲ-j =U&x,<ʳPu򬻔gݡ<Yw)ϺCyʳRu;g}riK+_jriH bU ViJ7eUd&Vi`UFiH`U\VBñp#4\ >Bñp#4\ >B>›`/oxHH)Ս.8uB+M]zlꊳ^SW|D :ч823uA+n L]Vc6'gm8+$XX3Ct$46KG3@=N\[6X6XϜsC<h[7JΟS@dӀCkakA"lmD n6! H!R~/5:tSA o\Ŭ ƅ f0aJ@i: 6P 5@q= M{9dgc}f56`B66uvuЄsly,9*PU` FU3`l̙3_Q l^E[k}aM+ +,Ab9Zݛ {оڂ7m&d5](ۅ(]$ۺڈ\= 3cKY[N391bWzxlw@e?<8\[6Xm&7v oc65mnnnn>39 92=Ȯ9̗a x'www w3wwww+9!  "ѠW;ӅpWjiu{8j =հ,/?=8<ʕY: 3t m]h#pG{9Qk*>SKHJi+Y" Rd5!6AI#Hqd ihޡprHas춇*_`{Rb_dt㿢s!$] C )zO}㸵 ^ Fb4}"%7th@D?Av`m@B#kݬ=>I~0԰(ۥX'<^υ_C Oi…Sx R V${]"ͯn~EHwjM n~l-B_rl ^ t Tn7bE1:7yUM&jIC SO w^3\ xQ  ({ՋG)y|Toz QjsK(>&6)6uh+_VcNDT*Tn(_IT `rns2SJ J4CK m@-cj&Pi$x{k1efj.[ s;X"%vTK`M7?ㆎ lSfqK `tL`񺎜.ֱ3%:z&835up:~9с`>,1+ Ə1 Oo`;~쳤h=QIZof = 1JW_m꯶WgTM  = ]Y fd{ˆ5%ZZlT4تK[bYZvV҅LƬ;s@yJ=ʓ(WC,V +NbRZM)9&dC?2<`=SkN%,G$Hl 䈔z6#RT3D9ma_7rYJxb [5ؕ%wO/qNT$_64j.jm9ѷO9 ʗ-e٧޲/}fg_}>5B@gsRaZmj~RƝ~RBCoI>ѩnieje|JPq1#m̵ATXMXMjS"In=95*U^&dϼ4YlDy4g9gƋriX6,2ݲ"oSf_!籴j'?qOdm'4?1c̊ 81;\hV9Kz:ǩ2a&MQ\f'INe^L?C8]G7A~ovqt(G83CDs$AպQfj1/M#_EPjgn^XjXzJiUV< hOOS,=SKOɲAa>'&>'9)sR] gU[ܵpV庅] gU[ܵpVz|NM|sZ>w,s݋]a\sW2׽Fuo>#+X\NT\dg+?g'q5XyNT94$+ωl&Vjb\MT($J5pIHLT% $$:Vjb )PUHBj*IH}$!~Ԓ_'J5RMTT(Pޒ ?Ww3n*mxa?)PˑS^/ʾS3P=2jXU~oX"*c7-6/^)fN'>N8xsZׁ2,?4Yf67fogzZxRA^C:{!^C>E?(^K>Ҧ(H'!0=4߱{.b['>=)5ea"x@,OXܭϓm,?cMd惇H&^4?X~ L/ cᷨڽ'kFO}4z\EN+s}ܭSh?$ncҢMF^S| }uŃ3qC ,<{ b=Xfal!ćSx"rh \fnO]#O@hI*4~ٳ񁽧l>>r@3T>0>Gh{֞>@GR>n '&{q=ða2g\2\̱p|dG"JV?fz Sa!3L=`02fz Sa3L=l0> S~uiV\S!a©N8uDŽSwL8uDŽSwM8uDŽSwL8uDŽSwM8uDŽSwM8uSwO8uSwN8uS|¹Eâs׽1V g%`Y pV& g%`Y pV& g%`Y pV& g%lY pV&2\c5tU0솅 12P2 1@(Ƅ2L (D3uH`q`BF~SEě`T17= tU 8Yb3M`.p1XK+<#D{7mho67[zE3Gڱ^Uc+xC,|\e#媷A6H#i `4lF A6H#i @f4lF mm$98ϟ&{%k9B`o$ 8{_@o|nCfsWR6!T*JRT{ s?rgʳ?'ʳ?%b%pM|]&> n@qnϷ?e|]Ubև`{1*TXJXK c)ay,%-屔<GЫD$qt|e-(s T,}dzF}K Ro)߷[-e}K,Ro)߷[-eF&Dƕ̲{W~s-8orNMm`fX40|,2y=b t fX3yB,Kc!LձI`fX"s,3X84 |Vx+Bf7I BhuhTWj!A)V#˹Bk-yZY0Vej%gɝiR6[$'o:yZYejEz&3"ZZYT<T}2ӋLze_feܵJyjaejx~H:*SNJ Z:]+N2Sw=ie8 WML+UZYF,vjVRK|q ۀ_ګie`D *f\keZY:p0$5ZeNhq%[D2(fy8vb= 穅sn+yhL-Uzi"&<.L,VyDet#q$+H\>4Fz!#q=H\<՗j$f\EZl'zFuY}i].4mtϽ .--loKjfsSlY'WE-[H+!lr?0:dNqaZڅ/w؊H5]-p;q_O/yzxhpKK] q{s[Qs☥ lOeDa_,] HBy*Y{XU2zx||||KWΧp"sޭߊȟ>џ/G 703@Oc>)4EOc>y46JOe-ET.S%RNH=U" UTT%%dMΏ,vU8*r\.[N4S`_xQĿqc^4+<10+?v´ϠCua3u;2Sv&̻ pVT} Mx:/iݨkoZ"Y :h4qPi=[g pU=[M"5xD_x/FU"޲ H-xT,"({R^=6;x䴉Or -+B?3TӯVbWjK~ C#Kt;~t03P}! b5ȵ۵23sjJ⏡/Lx=OU/ Т"hf( ~)_:كyZj Eo;{1뵼.V豀a9wNe{ղ6hEiU؉r3y}H[~1=ܵ61V]ϳ63Zix L ٿIhλCz@ZEф :Q_qhvP-Q. "T:Y/ȁ EMU;TO,u1ld^IK>vga%AEx勢+4 ZJ$?+ y-_=Rn7(~A xPa,vRʨ>ڂJas,忘)3J{/ޮz" ȠEP[䣶r&jã: j+d24FCm5LV].]s!\*󀕃KWD9u^kd5E84#+kXڃ.2_]Q|'^|9U|5^m~'סPgoQ!>-J{+ϱJ%G76l bR~a`(xRL.(zlV)WA}/h_x ھۥAw ~߮E@ASŠ`[~#|vvL)4D)6t_Wmj}kW^*XW+ʫVUUy5YyͪfU^*J\[gRI ;:̻ɻǻ;H+d95orΘg>3Edm6wUS{O֠݉WO^MV16C!Չ4WѢT+7*luy*pѿvNhVQ\(o;:M6P];zt~x NƿhwQ0@L&+K܂M1.V%3M3$k ?q"ڧ85M ,;^+IN-@8ZVhyAсf Htγ?9n q[!›^+ Q}3F/`ЖJ+t2b4: r}dFԪiv vV=a),R*^o=$ X*ȇ!Z,_3vvitc{+܇~zz}?>?=c;G{vzc<9Oѯl'gg[8prxӝY~;8zWeWd5v}?}_w~&#l)';ݏ;#>|[Q;{sx7Λ}jACNwki8V~>t`*uG(/·wП&'t㛳Acm;>CST^g ʝ "1U>!?%z?Z>~{/wj.Pz[+K-R`Pg_rmЉl>6ߺcP3@7 ==MGpt4!W^ #Rp}d R.dv9PsqLK0T:Xv F7RGu PtCHli#(qi-gnܙn~_7Jz_qGe)m q`~ޝ\)L/[2x!8^#<*YoouU/Do\} JfRѭDT-qM &2//J앂 %CԖ*f!N3w܂wɗV=/;o|o(Z9*j6~K m`\AVKS7'$UiRJf-ۯEqrby.ߟr>щ7ԇ-u:eN b߿ľg]1K0' 9ts"kڑG㳈kt˵gZHtBQU#x~x"xynEJ-5.PHa#TFÏ"ixTs_*VjVJ &m94܍2wyu*hܥS& /c̗<6t4eS& e@<|sú78 |Z3eڂrgd$XI,\9^EvȥI^+4-apm#,NFAJ=]:^3:bj7QyV p.(Tʰ: 74W,-cY޹vj2xڈ\"$7eX3JsgfGa8Px KxbUFo,/nu2i|o^M| CnhKHt nۇ`iJxyB^vV̏ιHdE`7^mx-^RY"ف"`N ҟ}\9%LLHH 4$Uƹta^/^er#53]Lףѧ{AgBg<+j=f-1uIV>yuX=yˆX&g?j#`n3w}[gRwi㠲4)9vzQ,{0:ylcE;]cG#hi}-ӸI=!戦DngvYӺ@@:1%i{ݨ'XkwJnTmA7<z팯&{j{f#F-&F8Mq򥯕ƅ|F`%}ja4ѻHTW 6,0(r0>VÝj*TboBtf_۰\J$&L?-:xS֣=YT8Ne?vyT~t?V4F.x X- cP-,.|g|V$,O|^#1-an&C/F|7.xn>¿|*,9'_'l65=w=QFLK;MBD"Hܹ~q=1Z38ȿu;hÏpd u͂ o,AQ\j7Psɂ\)6Nָsjx%h.xWbv:mx;tc{A=Ah NR )W="{.vEw~_ IXA\ºZ-!P ylӍk31B#49dEǸDT } G++o#w-U}+ӥm".WA(OůGǏϞ;~EboL㏙??@)5=q]\rԮEbo%Ȥ9iiYu.s "=;k|zSn-K"l^{%{{@9^šo!sDզ85?N츔R@R>Kl<ߨYoOJR-j!T ygҧM&x?&6"ٜ"jzA5qE^a~yhQ/<1}1gr<(?Zn$+|;hs=`'31\`m0/<@փW˚enx2AEVqk;B8G$XIZڣ4eRP1fu{@p voSkkǵmMBd#[6y\ Ɔx*B ӖQ;8o,~*^0 /[?8+Mt\76 EotuVmIUo9SHP(ӟ{[CPCQ=XBLYk "&بYi3sԐgMeK"-(2cEg^?^ƃkK:oghK}]EXCRZY}YˆcЎD=#bת:KjKEqPzEؽ0hoz'J xX( /Uٝ S*>dP@KaοFVeNzhf,+: v!-ǏIBh_KP|LX a3"ol$I|kM(__# ZpRJĆď5 utxRnZKhD [.͔)(3(a YW}dwCI|@Ո~إ36#˚#I+;>fM}%/[eӑv N' Czm |4}X!e N]t$4 `8iL2l1d%a~Ǜ8v+:@ήٗuh */}-{-i/M~A$gF\35b$o0I31SqꉶY\ѽd5pހ?du$}PZO??AB\A" ?PHo un{(gy7˕z %*ҖNK#(_b1Yu(y&iqU W@C?-*V+Z[z7D9s,<%ϭTTt݇ǣCzcYƱ (.ymhDlHGl~>==+x Y η$hy g10iqTSf,ngGHoh8qآp0o n5nrUMo^_yx3m=K`b2R,!}v{[x(I @6&٦ꋠYhcp/t AH8EvҸ2Fs0wOY9"0$ߜisgM8bE@yT͡4* H%$ ,A S[idnyƿ5uxkڃ f<8kcQ03Hޚ&g7_$ˋiv] @xǵ6$g4 N<^[s\4RScȉ#7qTXG"]umd'>2'`-k QGe@?0!y-^|\Pڣll{Tv۔ 4;1Qk %8JpAgt'-*Q1Y4-N#REf"Q%ИDC0$siVt:}kBS xsT8Dl:&4e1G;_%~)h\<凿&3M@cV4Rc7![g}='{;6WNbWu:CX8ߍ)N/!8aLxEmvy6,%˃{ A5S!u¥BYmu޺6 c|M[p:~\~۩19k@:\U~H@?{nv/)PЧ<$bbap(3-Uwt+4g"6lE,>sƠ|ĞU c+>hVv$;XTPTg6XR^/؅g]eݴMƿD dN3UkTP0 <_lG^;t}r ;ٚm2|ku7gx@x %X:6*Mqn=E| kOo^n;όX_lQ-,Juݏf~/,n~߮~J~wdoqGA擛0\eT*8Vg형BU&ГE43V:{Ms^M>)p=3HYfL{>c^!p(1QQqV˞S#_rK{[j kb77f$cΩ>&?F[;x)PREUqIU`grKʭ <&w(o&SޣZX#L #8{<>!^c%f.0*bYc5{x;+/lO_|v+2ʤXWRt:Qp d.M4JUv8Ojq:`6+?v/V^ܮUt:%^*z<\qg׉a+kPulz>zm{;?Miq :,s~C%[;t6>Ç-q]wL㖥'(^Vk|~=)ND-—0ߝVN¾>ϓ6 } n^w m y$IՆɓ K~ C~7q8X~gˏU~?Z_~ . J??P[[P-5[7_N_Н|AwVpcp#kpqB4~ˋٯkf(V]}Io +)Ů/1JӉVaϺkGdI fQg\ B_ ]g)ʜaPAߺc=N K0&ESeSV *NlSyUgcIi-N}Mצgo>]}MQ&#_\ZAÏdawЋL߿6#CTɚ dgQy'KO/g}J7$3"}4+/7EJoVFnl|F|@@Q>|dZ@Jiӿ@O!͠s)QWir ?A="R돟]DEY<GOM{O4b4b'4bЈL#vJ#vf)zԨo#Cr פiIrz* b1dEMl @X9YHp'Wo dAr(1cֱ|rfRDJL[-\ݶR{5un7lAnw.c#ľAC#C{'*6ZIbMﱶ>G<^ɕb#t:"QROY5.(Uj|zYCIL5 Ov}|R̪$fBYw+ݬ>2{}tv dh[N@4蓯P!(톤Qfz; Z=d>G>"x?OgFWǛ*@Vs5& .,&04:QzAψ2EJF HdKsГExhxm(EP#J$C {ʑ{Rd& Ʉ %K,SO;-{6)*[`0lf \۵PO|fV1*9CB^9'|-{-43s/lﱠ ,8;]5hT_r6gauB,eR$k۽\*i2i--=hWbtM2Ip Zf)?,.;]V9k$tsr/x6b[[$x'}'`W=ϼܩzpgfE=,Օ|T"ōYONVUBk6-oChUԖ'l2%:~)OcH*'ЈF!rJE"55>̋TRX˱ͩN]vouEc4\=Wa WF-H2@wa s2H9Xc'90 GS,Ӱ Ȣ ,Pp#cwJ-{O _qV|>ɥsf_ɵu ~Rh C d8 x{nL%~6 R/C/7ai!uLj 33`]gG:ILmu+Sve ,H|C&I `rZ'7 1EiL%xG-A ˮcbipL#iI{; ,`|ΰw>ka ׆O4 ߱\1\kɕ֫ /cDe& +VJ /UBކɎ"jaIN4^,`WC|?DuwށO#u`dJ:O_Q>}4RAɧ D.XsD6xAFXynI>șXk%vpN#PY8Em>=vk;-} F_{>|Wؕ'q4RJN#zܼ~īJOBv8ǽG?{CG"nlk9fHE h`ԯ 4n DlrӄS ,7U%͹$jXv.Vhp$Jg𮌊WHo4%'epwbnЌ^'P֋{u+z=lSojzYD2ߟbm|HZ݆^o{A D8c2mku($Cc͍ <*͗=uϠ W*iqĨ-|UԩgBxd4^lAo9|\cK7nRHqR)uc~Mn4JHJHJERT J}Mjip'ݗ昛O 0Ya+/VWW_{;ltvp|NŨtDA\(o8<]dzrt%@; d!O7>Jvw_C:.V%*XSD?`9zEfN }9dtAï2 l$ 3N3hyAсf HtAßF2m TX!›1D2[W@G<A{E&$  #@䎝ɤQ4ᵏL?8cgokvN|>9=7}ɯý3sOjo>֎3^}rvƎO'89UǽwU0q|8AqMVcoهuAWlx{P;vsZ;xsN>¨3E@e?;a|X9ܧ&4tnt]Пv`aCvN\g|B|y)k2` .Jh~9>ٻ=$1;?El>W <]cxv@:8ퟞ~%&&f7}3֪MaŎQ))|ӋiwU0bX*ai͙ai2#o[zS=rl#CSgot< 6lF&x>ڴOf:5Xpl4^%Zj xR,7Rl2~L"?ؼ?2M4wp&%AazQ܆ %Ĉ"OI#os#р.%d`20N3,(<=^Jyj2рy,YRG<D8,ւȜofQÑCGDa̅Ф5+Ǡi;iNb3?tL}z=̴OM$j}u Ĵ) ʞz[ZzP.Ooox)M+=JSMGBf#ʩ#xX+HABysbˊ$̱%hd-NƔ ')0έ&K! iK%C<!5cH-^1kN8$#X֑L!)$JKC)*$IVbL;tC:)eHJM(MɷCOIp qǓ$N'KKn2vmx΂mRЖ69g{6Om<#6'Ms<,OM㉇mh'rL*ɣPYn;enٙٙٙٙٙٙٙq&YH.38S38S38S?B7X7E"耻)qިLeu^$ P_Ja㡘 [)9EW +x( ZuR-hA8FZ䗭 |^7b##TqR3#`f̌# أ PFl4]Az~'t)$@b7Љ8vy'BGacQy(U PB `A9@`h?!PQE|C= u*6OS`6Ot@z_GDA ;N+6t>M_,^-EB+vvw맵zRߊ|(!t?Aū'4̘33cff̌133fo0a6< ;ShR_S4N;x}qܷr R{gW^J xڂ'tA[GӸǼ$"S\0: PLSP9&BX>b-NI:/%r + A߲>$FFTy-Z]J.ҽ= 4`$n"j3ƛC8WOeNUfw )eTMɇJ*y!C\Jd<#F˚fOU6dex2tDD3'&i(ϜK),S@<^38f5X6G_DqXԊ/P¤\q,Fcs)wb(Dݝ(yfx,\&I!č)YeprkjϙCA(Sl>^/猗b1Q*+Yq\L٧پ$@k{uҀ)3:Q+dUS{jSJLgɵGL4FȀ*B[ڀ[ xظJ۰5{ʚ-W*nQT9m̈J5Gٚ7&^&wcW%bAT{c RvB? -q!r%KI ptv9*xlYkiAU 6"o{%n{.op&v|h5h@ƽnd^`τ9\nuEQRN8ee191ʕUeŬf $c<B||uu:16UNWayFzLt:tKةҍc)d~ƱV*RzMUQ#su48hĥnRa0n{vL]R-0山?: bRIh,݋|8==ofmᶧ6)=ٙ~F(P=܆HfiZH%RoʴdOM*'^|)V2|j2wf,ό˻g?m+Z3[yf+?pjhnf+wV,HƲ90;r'f Y2gsG\yY ?7|ᨐE"~\ǠXÕw J\{ )Z݆V_!<1<Ht=3qf3lƙ8g6f̱=4i 5J4urGXK!C^\ݵ4S3:S3:S3ԯmqus{(Ht7f^%LmS1j7Ξ,SH$"Dc48_׺6)VNAn~۠rU%;vph,F0zQtm$ϊQX|Cc3vs^ƶ76j0=9a3٘80ThTh SYRj@um2~bGI,FIQWN_e ҥ`Sa&p3s>[/ÖISvY*Tי$f (!|\qЕU(^H|g.\u7ea^u{{ÜʠKO-9D"#FI!crtn;XNY7QVs;fa.KEZ^pΞIZ* ZPN%ĥD}p}EI_C<^i\2IE8?scvOWZ9|x#vmQuO ͤ爇bF5?i<[]4H1XkjǺ*L4f-?qj2WӊP>1̆*=af!J72oHE!.ENJh cɹ,R,mM"՛<ښ~?zZj/kmoz~Wg3ݪ{lT}{Tw=5I~~0Eb9W\FʷNͬvRk5׊`EW*Ezvi8~sV^?ԠjH/~Qz_2"TJ[o!ɖ EbJؘgd#'y:Յ7heg_m#58Hm ,}+$PKdU0Ao5)/3³{CP>]S{(Ѽwõ7X0%e":ϲS|%- {5@)bDs1NN#3)5'-qфn_מ򠩦M-Abۻ7vyޠ b>OQ͑ZxA Au(hŃP" 1þ<`jYZP<D\;Fn\$ R) @#oIrNԹ "3%%G  M_-W(2.f@$ H֪_eNU@lV;.E̽8vhM5 ojޯe첾zmum]`ف fEftnmR@`S!()g~ACj JA"2F^gAynO><4kRs?VpcxiPT5I* o}* zT%Ų,ImMsٔTHвx/Q5SN [ej Nm%o4ԨV;Qd_Z,r6a9FÏ wY6ڒxk3T{'CEjB[8bcCZK[_%{T5-ǖs.5WY)tr*eH+Z*,[:VvenʎlF=J,Cbxh"Z{@t4,Zer[,v0Vug0q*=qv#vu;ɍͩ E*i+ *6rjU[V;F%F *;RU>L,ivГ4pӼŐ"aM@+1"0Q)P{{z6R !.݅߹ \Gx`5ulʞ@JR}Ċ<8;%Ɯ+$7QGRKQEc}YF1-ǖ]]X F"{{=2-Ֆk37fSA.VqzLԅvL D$,Ư:)v (PʰYKEFa%E;%nUJ)-.WNiflqй@K}Dj'8I7F=D2`mWL`_HPzхH ?MJ|$t8hO0hh+9m꜐nLOnK8PWXYkwfj*t6ӣO\nC)^ogl <ϝLti]n B`*ڞ& E4oHlboml& шbhcOϘ^vgG# Uja# /2 ͻyi_s{."tIJYAȋc2TXXQ,уqbg gG,-UtP7 .u++Ϗ$2./Q$)E0R{$7$$AExi`)7P~cX1i˸eqz|-V$ t=RIT:q'#1 oh>Lr/eIP SJ/W WC{")yqe?0n#966B H=?iA2ϕ͎k&<'ꦲȳ"4vL>XW3-UZ(NUK'D_MqO~=Vpkz=Ҵᩘx8V wQw3w9Շ 5|W8MJb%8-B7fs42ų Pi)aJC2QQo0:3qϸp.#F䯴{:4,if%^H- CAx!~o8c^_grh cerB_xiisTr=L*~wW(T[+I%o7}imDnhl5ɩ.cx 4z.݃~nG>_ GqFlTJɾW 9.T7}J ?617 Z -2y|htac\>w$ZO6T&j2rzE焄E]j_^qj߀JşƋKH-yLɺ|{=q=b"=" #\0Fj14b?&;{F<~gBéd2B%:BE[=`WY1m,-u,/"M!{V/ߓǦEXrR1Fփ?6)f&P*)|h*+[[s_H;r}A--\ܩ$I"\ kF:9粰 sx"D/eq 3Cj nwFykS2ũQ-5, Ucwm;ܬ]\&9h.Źj h*2a _oXN4V4(Uq,V)<(8S:00*, 8Ro]xT. `R5]LcC7q-GmLX޹Vr3T#Re"W +N+\u\Z@!IZ7TZƲ3CơD}գiq.̟ j~11;+QW=g\|ol:ej/9˒5C97* D8*|D s@Azw$M%`Z1.>W-_||Il3œ_nMO8>gj3eТ j:ɰ\BUq^=ibDm>hyD\PFn\2o??m@ ImK9&.ltfG֧cD#}q /~to}`FQEcT(GX 9 X%xk\mFwu۾>7 㞁jhޡ4 valm<;ڢJ܉q[>-Iwp z BXq8n?q{';!bRK|+=\d.,T/$O*B Q)N~ -]!V  so`"-l 4K#X+ע2ŭdd"VV[K[s aN"k=hAݢI/|13̹rXgziR.Nۡ ˱=#&#i]]$){~4d%g݇4]jn7~qI~SsyHOӕB~,NGY pcnh(xdU[MUm-Z+G|IOX~n{y \FN8bM`[CmC$~ބv4~!v ~1Y(}$N &b&O?N^s1+g{zoO/f$Ǧ`6=l[_UN)făY~3u 6` ZSn~Gy}0_#y>.夌x.g6u9]reEΜ3{r;cJnHRn-#0{aJ4\bq#d(^p-8eT%Nbkc~Loe,Jz vU8<ZhƦV,*&(V7d&Mzn}Fvdg[iUOIղύIq#EAgB#"Cj Iӗ "F=SQ#[ bqN^'R Ȋ{(UNɜb5&HNBihɨuڴFTСDj싙HH[B1p=`8ЖGu[U,aAe5*TժKbar&hX  ؾWKo]'mizFk4dzkޭ-![Bfn 2%$Oxe1!_\22R{/ 4-E8J ،Mo{$i'jW' (G+▏v=yԄyJb׺jG0Fw8He %h2*'Ea4i[MX /FM^l."EHWY{N,ru( Q"d:v!eVѰAB /5҂B2Xzm~wXyǗd\XEog4)%/\KmaX{gRgV-Yga%K~ 1&ʆpMݾuy/W<ؾ"9[û;AolldW)?ntf;]XvTim+:!`8S*0U45s{Gute0jq͚B-AzE fNH~Tu!=S CuJۜ=K*"gэ za`ey$IQIw5]l*XrS;?ȴg9bwlu t)̓ovAobKSvH:[~[jEL66Bq K@qwjzGθ1tv9@G([+/`̭E6Zo`9,KZMTV/]=:^Xe`FӅ,4B)h$i Z "]i^_VTÅB׃eۤh5^7T@?B\UOSs-Wٓ]kKqGtLWB鉝^`E#D!|g){ܷ6y)ng4ȿu|q$aL~צ RK~}KB$H4FlhX|DC| mWhdw:ƒ7Q' JUrU{3`,c5)c(~1.CLGNB1I #͵S EI\\EMQ9 Kfό"f`X ~]_ z:,}It6b 1b>4JDh21wdDVwtfXS0m:^yKNbJwq;x%yBџ\ ro\=[|UVW^#O3h.v*ylL4KUGc=̃V tұ@. ix`N.xҸ[, k\A6[}iv~K3GV-ܨNPHQq"cwkl:"ܮ?c=mG a͊TqlY1m-ugR.˕t-|f[*v{/ur1ʮ~MlIi]R-9."tB%GY* cƧmIwqy2 6G"qԅehFhᔥ5hy^YUfN]ITV6͡S5|dt[άcּwnF*_*\Ǹ/`:S,@.c i,p`$^hڸEF<``cr_+֔yh~k41Ecqa!g£lz 4).Ah;, /)Z!5+f*ʺKgnm?P)ŝlr'W[\J} cᣕޔkN?^'h ɻà;Ͻ߸Zx=2 ZGr쎪¶&a\H/6EG,Ky`H6jB5q73:GuxacZ1&`7HHD*̇4nAu8@[Z{-}eXTME'%k{m *KT|~[|-ݗ%TMOgW^ϧ W\Pb6bH+?7JI_,rHBԈ ߒ1zɽÀlo" P.6Yn$Dq?)(02ˇ딄[♾:03xkJW^WA/z:Blۏb8 %upH5koT66>I{Xpʛ]> у&;"醟(-"XT7axFT`>!xH/EoԡKYX%^-WsG &NSCfwm[ۢ/o7>AD.Ц{6˦ܒB}b>qC%_1A6!PP{vubqj8=)5nH&Q?,%i D:cSJrUrrNT 'o"Z SeHR<鶂]65x h+UIS0B}xypNgy܎yr7/F j5c螓N) , |cŏ48/h ]˿[Q!9oyCYAóT`x%CA0Z[xQhBms)bmБ+1_D~K{enno6f9nY1V΁䆾׎whNVy!jt{$k\oSUۖK1hPZ*J+ c 4& ^LNշz>վ-y <ʋDBn 2K }dzè4s^5Ij (-why;r+]grVicpi9>-舲(+(8[&5uhJp$ySWaT] fLlq'_Z,pb*fW{\^)FTI!!W i">{-[3"sA^l}")e]`ݝ}X}[/ :<f) <~'S,DcX{8wцZfe/@4ngT;[::8:ŅKAM /c[ظ6EPbYEq;ƶ(Hސ>CAnVN<. ZhDzC`6:^WV׿Nkl?"e1c0+8<YR2r)E߈9y m !Xq|p} gdMN KvQ<@+Xfa:l ?.ήR~ qϏ@e?řhߌfjC Eih`6J3 ~ʐ"*rlcvY݃p}dgs!<\m=[1VR޹!*,8 )4`ڄV[gnx9 r= GQM,v\: Akrc/y~!x4Z4];B{luOMqM]aWCꄏLz mI yPvOL>XұVɵcWp)=YƋz-uV^[=mS q]+BM@66 ';=.~D񜵟#=ٴLqԛ1cv쎏厏ty~tvJb"\[~btt: LΗE4bc.P7a&^PHu0|W CGwc>V,s1> SN?RBJ4<p1;&Saۻ =AV˅Օ*;=>=9>ݩhbT:2S\a2Trx;XHx ȷ Z bvS$6 Jc{M-q\t[ epӶ*G$mty_It0*-DvNnӌ6Z(p1h֠Dz4a$so4vA%Xb'&}APy3F/`Pp6KtGދhgvCgSjTp-kt`3DZ݋ d8 yct/Dy;;~[s1th^CN~==xퟞ=xzT;=xv A'bW3v|-|89<xQ`v?2kA Վn;~>;ojbۃÝSvFlavw>-(Q95s{5 d?{:skȀ:#lo;OY[pQFcY!)̳Mvx|FDx_Fj;6mbdzQm v @=JvW W٧H΀+vkfIhft;!?%z?k{e)mpTr~fZRPh#_7aM6h-N`ig gr= pCu'ZbG|m xڽ߅AO~mCCԲ3=4W!;}>ׄ"Slr%u/9ݜbN5mND{X{Cz+Y= Q9Gkhg:`u1e(K-r]U~ Β;ߊv:Rh/֝J7r ]!d 粒pyO#yT+ks\}#"u Ptdie)Tim"bg>4[AE3U>zV:n8 %bcWq4AȈ5k9R&=̓f"4@)BHR9QiG7FP!y!-Uߔo`^QPIOD$ot@S>p}i ',6? < CQaV Bfo*6m kb/0w-v6moeAuY:bwy}h[c|<:.ൈ*Av.`)o?9{]QU4`|K1mr֊,)=pO@jJS_~ +=^!C֙d~š'?Y'>9AyzMtϞgEfܴ\2 hю3Q]2xiz慗~ߤ*TgrDXpPoΦ{~7jM<=fKH)OձD{ȅ$J2:ms'.N]CPumJ&Q8C"d0j14ƵR%;:*[T}9/!ebҒ<'9̺]X~w\Xo0m c/.5zr8 bN&5n;ƴV{l}Ol'ܦUt^.N.\ц:tkQCtf+øHUFj͐NA z4Ezhqg *yb%%oÛu#1ۓNwa& $ŸWRGGHS{HojZ C(Ftxm4)-n2Χa$} &}9ޤyoLs1H9)RHms'ؼH`o"R^g)ehϛEFy# mqq%Vi"2f is@rR؉,ҦEnΠ6& >rW0++K142 u G)xtK3K,ULV}R5GrA'T#&em,O6ck>ʀi +;WD p5 ^O7.\[C#MyqvQf|7O8U ɦ5g- 2ӁeaB W"qT֖ "EJ% J䰽TT[W0pḶZ{]XsH:I9e:N,Nޤ8fܬsLVFX `w V&wU4#d45L vfdCe(Se8c%\2FelF˘͖1.0]r{/3`1aF0b,%`\X9pg+ ,8_wxUuh2؂&qbr\wяw&=a^;x8N0Ί9?zAI7nfٺinfٺ\7UӄF:TK$@ҝqϏWTG׀$㽸iKPYޢ,[ 1Ȭ%\^z$D&q,kc1f\JO>1FK:* tRQOVۚ)'H&ߛȥvcie`IzVB"Uŧ:z$ÖOJ@%d,tM[Qֱ7jVrH٬Iac)+FqI>n&q,mK3"=բo| :I@,G.>XMpwٻ;eB٠A?ϳW0@ KUUa,o T^BTs3w1hRr?z u:M}zH^NvFF8Vvu7QY8> (]9͕.erDa\daXk1Ƌ *`RQ<1 Yn aۍX9}i`_C͐,85#f*m: ϔ^ u7n'q.&iz-M{-\Uǵsnv1u}C284_^lol\{_nQ5Лk vwTyuPޮ_1Uu4d!<$ӐbKu4W}o݋Jč{ڽPc\]t$ʪ^kmC$ɴe/ʜ}y]K&v]߭nJTO SJ+/Mϋڀ$ YhFM`m$/l)oC&+SϷ沽!;bfS =9tL. b>y䕔׼hDN+MՒ&ʃh|Lt; JK" -B"D=px+-)1ϸ4lL?ZlCR^JyWRxm"jT8EJ==x8W@We/wS2}KgiD. CYY,9u+CCQre2 rEqq4bꭖ=v9̳;2ѺYFGeӝwvN;\Q¦ ^ jn@a&e?#3~Mtʅ'}3%7~nq5ZrIA蛛tׯ'9 ʻ9r- 0+YZ(h^l7⹮CaANpw Ago1 oOMlW⶜O%)F'0>Q cbe6>N]bߑћդZ vôã"_ ]w@0cϸ GGJ}Bɬ6O6hPa[[mϧKVכ > (66xw+sU\ y)ĺp9i.jilNL7|XLy,kS9<[A1/. u\,ƫMf0LS|,,;%DVt $z @].ۨfiw0sOBkIY7Ѡ*ig VI -ttII%7᧏~EJoUz1h;!υH`gMvo4̤^vybqNK9@b[R4 TD3L;#rx큚ߊSDru]:r!7X$}WuBF ֧XU0>H.H$ C^?tqYnLTb˫,ABQ\/BCjQtqFCMh ?7B@3Pj%xEûf{gn${*l?lBo^u7\~ %cG Ru[굩+g1Gr8ߚQfsj#s!mJb$% C?6mbdcll : V9U{&Vr$3맙OLonjþ 0Y([hU-*Ҧ9ņtT8 \+Ū4^'V9IM>e`%^铮Kr V!Ҝy"^ ooل|nό"WNJI)'Oj[ ;(Id2|.(}u!If>Z)t?ߋ9r1=UlVUl0U@;H A%/ " Kw-4]Xu~Ů S̪ Z?fFls/P~V bX^Eވ?Ĺ& /'7"/%4/9RS Q<^i yE2~ҮfRVv!2 l*҆ˆ;:i:LBpzN^x/ǟMoh!'{UFT-rr}S9پk5H 9", d u[N,z^ח[)&%UeC?H&L,xL̼1d f*$L[$8 F(7#cdhi.;Q"?iJIx:J4;8).V`ȲF8z?)捖-~|X1HkҖsեjд`zF);|B4c{䐑p~HyuɖWAŔ2*[n']*-+YbB+y4ƽNNMYpkS|寔Ō]̴2t] .S̓G[h:bBktC)8ۅ.oi͵v߸hiύ[ߛm=RDV_]#ZJ^w3>QӮ׮\к&]1Sc=i@w[0tg׫:v:qVpMb,~ ^*1(;/u+ckެ [zv:lS7۩=N.Zʬ+%M|Rcw @*|E64[GL5J, 8wR驥_^Vr+Z5uj~:z3eJU>Ut&SzJvn|ƴ)f]<36< O~ĹCwv m_:gY :eCilͥyޝ0v8qYt[3cq.qSۀQ`HV跥hmջdLINY'iyYeqi*e\&O^$g*?ɻȘ"&Q*, FvٔMBSnx;q$cK\M1EE ngnx|s'}O>ssral[s ޱ6OVv_q;Qk JnKǟ :c@ ʁ㴄d"6hnG>pZ x<0Q>>NGU'/ǨFN1Igێ܁xV_,_z?:rj]f&(wy@i/U펉V{8=TT{AK.d=-}14=N^ͺhWG {,Y-&rRu~ؗO^c;QQʞ졫/8ZA-A7PwU<x7A,'K6GW|ĸA#>BTdXjH[\f|&-i)SDEw|C ^ԣ'/ME]7 ՏM|]uW04+Paі~?M;J*L.H q*?X0#~kK|d> GC+OQ~OU]s15J^>5~U2vD(KK‘I_r=>ڮA+2sc !\,K 6aaϚ鱙[9Nd_0c<0~zҿ_oQ# zjQ&)U+щoEtZX%_ǫnԇ8u}Уm6WwjBl,luxT<׈_y}D`@O\BC';C/pE,z#+ zBa;/Ԃ0FU`zb ~̥&B~lh@X`WG˛:KKt('%vJ03^&K Rf)`ö#m5<.ѐ]!2^犮tRNfnK5NRMο{/iHѕOYYk-P0;^%Pl˫k0Ɵ*"n§.1F~_Fp.T|6Vc^r.wpA Rsn;/Dw}]r2*'},|?j̋TiHz%ٔc^.?i\Nbb}bm=]+O{z"ElO.*pQ㘧ajp"JU:yLo7WNͪ.p*q$*#y` AۃI;Z l,^H9bh%bE1V-FSK+71P| d".>NaE/|O"5)ev'mΠ&12=-<>高ቶG2Tm|J6*nBJ$:?I%0tL\0qGy1QG*G xU!{P$1~K&lX%)TF*R D-L3LV3dΪ)ѴDOTqIeu>.~rV5朩+/ vaaﻜ Ct'D49Ej:HL:I("Hqڝ?âma1&?]2)kvz\-W|}8MFZAæ1v\"Xslt%Me'ńl20>$G9|8إ44Y[ M8ZVTbդuۓWꎥ$d9&q𑙺8Vz0cf9)),wcG/-N3x@|,W'N4$^T;Wk/^zZYyjmX}ϯz*|sOW_@k+_.ZYr}uY{j/ȤA[e#,_Ҫ.fHmGcU'4)gNdm#jaߤv$]6)٢ؠDZ޿9 'L4 & )/߾<f#&1\^44$u ыQ>ʵ"Gy Օ^&,,gVTXY_n#m!d]\Ⱥ&Vܤx褥~w1yg"8Ի\RoA=<9ǛvW} {֕-L/ٹ!~`+vN,mȣS>:t=Ayλ+ m]18Bc^q(ᙤr]&}Pȧ^j((I NLIHHft $_Xϻ0r x14(cKOfVd3.[a[ 'mTE,lb ' L(U=.ݏ{;5@Aԁo7!W ]Aĥ9&%+41E;T/@LU}`囫qt)AϻāWS6]ZQƨ6;:Y1j\iJEf~mڂ՜o@T-%.9{D2ԹsAUD_̛pGYެ׿3G6yx3܅^ꢎ7 <>PÑ}ݭk,)T59{A|2jBAE|CE<3k'5sʸQ'R?'HA}15ƬvNÏsgrfPo 4\zW^eA| q : ( ؕx[TKYh^~26^\2xw02k6 {9n2kwf9^=Hnž`ᆺ r ӹ*RF_$Rۊ*z{yG !! ***lo<M]e; @fHKbCzDـ`pLrE,;7z=JNW֟X~]Q]Ka٢!J ]L4:a`W䝷2OZo1 77% ]y\o;*fv$@K!d UuN30g!"FeFO&euY /V_\vQt5OlAJ"!F SkeVg/S/2.]= ɕ@1W/(_GB[ [_ [0@% RVcG/P4Ŷ1uPlGT9oJ5.Ʃ|VMPLYθHë􎅘߸oY*cw;҃(A8p"V& B]Zdł u)zT3$;!dW~jEGV^`Lu~ Ym PX z(;X-qB\;Cqs4NnR|%S?l|F $5~6lm#4cL5b,=}%EnWK,<"-g*!>Ġ&-:d˨#ɶ`w5GaIPsJaiHCx:W {,GxuX.n(N>pCneu r`Œ% O VГ#vl<$BbߟD*3ߣzܯqޗz;hB] ;MO[.$Ah_NQ74Pt9`xJsًAG\!-(e7. OME d`zuAܺl(~%/ik"_E "v\|FJjZߙ*/ƕB(Qe J(u7Q*d|< < ?}&O^Ɨ2r䊏uO9x+LAq \eͯ2vCfB1NY R/=D~[3!ՀhKF YVWy 5eo.oƋ=2+wfUS,kD54d^Mz[&pΤ-r:!UƳ2ůDvɷkcqiL꭯P:XkciQu` @PT:ƜѳzYnK~gF7r ׹$Bfy iK ER l:a?FCt@t˘KٍDhj.jv|J| /Ї8I:MggF=UfTy_RiwĢ ǻhâwgcutlass_headers.h=s8Wh'U[0CH6If倓 g$n|L7`In3nI6NՅjuK2W*-x'߹IuR#f{qЬZ* @ e"Bķ{@ i BGr$ l$"bӖZy"/NxO2F ODj=`Iz(j7*e  S`ƠNes_s%P 9^ 4"Jgԓ42UtຊIJ_ײjJx.TyO,4 hr!:0W'P( 0IT5t#Nҕ%Rr(X3> G纡#C&AULtYV:~Jz*iu`bH7tJQ YFCj {I%RSp` 2Jv H]AE cKT\jGQtVRtP ؎#@0:֩rAsx0p?\qs??_gܮu;t P`(xI,X.~w|@SWr2.2,uʎ30J}YJ3{Ah9RT4tJl׌7mbmbǰ֑{WFtȎ)F> bLcUhA&[8oh2Hz >$ R>{-;wº c-YΜP0@`EIqdڵBˀ.7RJH ߳ 9v 9:CE=EGgyɺI_r!B\;^тI(/Lc!A (m N߹ B2z.t۵'<$CsWϛP+*?W}r{GXAJ*}u%Z e4گ0x7grMn6y ƾWzfdstD态j%]P)broXgۘΥ2:E=`{R۠dNNRaCdAoN7,) EV`mA;)C(`f1a3Y=M46@[P#F1M SdBfnԬw+Bٙ 0-!.F''hv3in2m3~TVc~d$1иE~4nv-C_׹b!X0!]kr.-)!$=YCԃ񺿎d ꥾N q C'k/|-4T}(MtLZ<9(ݯR Ӑa1 09.D/<9p5Ԣa 5/Ց zgu`p)dBÓ7/SFP:WXA=X{Y1;H>&71uo"`ۈ 7F1O(c؄!o1C<6ޘ`^n%^!P"E;8#QG}Ӹd  GrxpZ{%.bB:d2I]ӖPR[tp~A}=n|=n|=n|=n|=n|=n76y?ŝG l{IMp=Ͽ CrI9.=9EE7qE91g6YI n0J1ݺN%IgfֺwVY4xI lnQб#W@8@p4na0Q!A=ZB+(\鿧SUޚR`zW!R" ;;ΎIe7gV?@FhT:_@VfeNKa-j@;p2B2s6~{a=n96 whWQ T E[yKEw#o覼z9L(a>*d>Zq$X^ Sb F[Aa FSQYŃ4|ۑF*ixP4P6 x>ζ=h|W>]Ƨ$h~^BbNvṕI,I7c1p|aM|/uaqӵPMno@$bI16J_6#2%MS ^dia.qMwa*:/I7yCqJBoݫ szyӛ(Z=0v KRKEVwSRAۄ t9 a]hM.xLJJXǺލI7єx׻NnK}Hk  s pSӋ ^m(>\/(3Ȇ}*zӫ$7t_(a ;LEQv;l.ҔEϝ9w䛪4ړZ`pJq]ůUK)cTm~hwvxVI߽{kXR6ĕ9'.q̜:Ch XcgO\}($WQPsoIT;h|N/^/fu9yxF|)oeG @P?*oi7Ev)xJ2vJ)F)|ڬv=N,5q+_j4KM>-f4`&BI~|9 ]Yg2-;ȳ` t[n u24ﳠ 4Ӑ8Ѓd"iHd C;G`/|!wh~ţ~sIߺ*_/Ϣ*ZFNbUi|G/zck('pp5N,\;TjHOOaN= _83v]?j@Q !>`[b&>73Rmm366>J#1=ns=iy#F}mLY8CjjEsb9fEILV$? Dhmsv9,B {a=䰇-.Ck fX.ok y\296t[p 0e~fX[{._NHx߃J}}q4k%?{(^X>{;^g/Mg/g/g/*g/Vg/g*zj)F3!PCb¹Q8IWS )K5ŪrRwo_Լ]҄X̅‚=on[ I3 0/cתgS@c8 ՆP4C}CHt["Un{^mf2 > t$OJYnUҷ)UL?ᅯEoYt+\-)Fږķ^$6y&רeVɥb ?Xd5.ل6GYX"v -XG2"2"V2 iyjaU6v2 Eڥ|]EIHKV }Et8Ma?"лw?!frK|A ~ϩըv G2ދq\`:O E~*x3 Q'^EH;#I72G _~CIդC\j E hLZ4?9vY^0elVj4DR#IPZ({"jP>N}6:W9فuxJra6ajdh0rձ oײ `$0h/^QJS@YE38(j"/|/8dЎ,ɽ:" _lNTI"pO\ =fcoC﮽XO.\N@ÃCWvpѷkyL(]| lOw-k1G Mm"loo)ݩ=M2s}ygw'k;3׫rr%;m|%Q'O\DAAv3_F8eTFHeUAPAUTAU ` `]l -vCRBNO>e%rny8\۪XCtdc[ өwwsԇm |M\IxUqGu![q`MF?G$fRBYBmjیL1*>˘cMK"F<k ѵC{1C /=QLy̘'G Kczk֋z^1ęcKs!! u^tZVNLw{*U (jQEgԪGzj:8d>.JeԟOdc_ a1qo-YaǚqK+D^#viRl%KSek?l,GQ{_ **p1k[ 􄬳`.CKU/ZgZ)l~Prp:!.Bx;pry_tT\%+xR:([Żr_j_ 4d]d 60`m 62`3 64`Sm 66hssu ltfmx0>sn*aDJ|0Ra`L[ZTeSV^ c& YA^YztTPS%)){ԛZ/i^ζ{KֶѶ"mKYVm+YFfl{ +hrֶdaì8F=oTQ磬8Ddm磬2R$<:NiNSTO9:7NiVNSJ*ܧ$֩r|J*$yJr*$2wJҖ*^$X$I)Ԁ`dbUɋY5;oq(Tp`7 NLErV-D'AT h!NE78ʬkE V4R/ueF<'0Ԏ$uXm}ksƍZc Ec/ei8X#X)WTxȀ6iޠUָwJ=X|`ڨ?^)?GRR@#rOhqlqZR'([TZ*[Ʒ8PburULhA8X&`u0%x~(eJ:JJC3㑋wa/??7O;)ݹlo쯆t.'f8{kgc Hk=:|^|DetE:D@xMST~ !FGT2SO Bȗ2ڟKݟ:i~QlXY3ƕJ 'P<̏(GqEXNFG(V@q7? Ń>Xs0(@1,, sa~F.9} Pp*_]X]X]3hF裃(,(_XX_g2zφTZFB@nBV2(T=ӲF%/@ Xv6{0XZf` -/rLeN2ٴߜegZB-"Ŏ E4E. {D.j,k(V;/r`D7/rs\65>Ή\>k52/ry)N ̋\"jLi(?'r,`?/rP˼][٣9dDD.jbZ[q0I-R9(hTBWSuB* C% &7l0d`/خoXnYx] wVME//KDOI^٩+x%2C杍6 TFdR5BLdJ7@m\Sh}̥B h+ ],]-]K>svy4O,Gʼeso>b}#AG*Py,&Cyd U摡b2TG*Pe]L*b2; .&CaJߕnz"W ~bAA4Sxu<]eP;~ltnS}j|J#j8*qcql`pњ TТ #*՛T \&8 u`.f#6Xabr2CVl:)Fۈ+ X(- ~}t6+$OzּrAs\*i?O6gzMzg&Xc㎁mf-6Trp\< BPx؃Y]؍vTQ?SGYTo*k9{JKуJUJ;3ZZ~s{\q=v ҇ ; ;]tMrMf-B|"@JL@fPq_}$5{CwP_ @`!?Vt /S2Xg0Jw/@H4d0uEJ!䡫CS/\}Q$njDѯXo*83Ko흜OzD]U?fߞEa|nv+ NNTX(+SI8ױ};j MU jtE 4fR &+FZ_;up=V4͵q{ "@T1ĻsKt9"ˌJoj,Z_w w'AWzU֩iޗ.ݙ`Affmmmgјc2.- c5gyz^ExQVkƄk0x2JrZإQo _"Bz 4{{{cr T9N K\u7"a kh8T?i z>ay>N^^kgnтF1ȏSjxfYwn&;fx>17Ch_ɢ[@1j=^-kiZ2oP]!4X ` {Cf kfbgCyq T`R2!.Owew8\qT8ބy'nBhxJW;h N٘nj]Cư0Tm7-S[Ir`01MP [#ާ0>B2QLfX]5i:#>5P&S=Ik?@;Rn_}83[ |g6WQ6vC7R:c Qk dXEN@PdbqW>Bzlk 'rp%[ MH!{j-Pm!ŀwzHm- *FŸ 80 ;ٌb PgI8Zzy9 %J|9*d?Tk_vޞ4Z $ ˬ'~aACJ`X2 0KiY)kCEMV+i: &xo`'Nbz9qth&H ]~LH(Z)37?DqW..0>UX6\X907ޒR 4ofhRzZWku[>QۊQcEE hqǼM €syWce3j̟&75إu!{ܜϵPc4i2w] Lz=Ձ?]8჻p>.^ ڗUď?0 t *!xVEqlo;B軂 b Xf 3JɁ"!0+WX 2_$zc^bquH9EYE' SMjH ÇQf a6x̠ ьYf`^wzm EK"N ɨ)gR?Ӡm$:{0\\?6g`mdbqcoP:o<<>;m<lh@1hF(wq3N 6;@Y|hXp"ۃ́0 sЁlg^fϧWd{)xF)x܍ kd6J;3I>=hi5uhUt靱1?gߺ@)b~28u8#&´S:qAD"`WmNAPٛ{v /ނ>x\`oʇymt번NbLZqq +b,!$饏Ƈ(BJl¨Ǿҭ(.#!=ĈP1?Ds,Ԙ)hD` lY"A#JX JA4' ӹ8??kwDZzk*X>y}߂1E <xf87b^gA\Xm~>< 0>>E1) on[W4?oLǦM^c= n•5a!sf-4͑JoNi{oUf"k7}[ILqhA PlsdRsK>\nC G=r灯ۧoug$!c%}۩U[{Db>>;@,IArײ{Vj?@ к*-@]lpCCI"25#ӺfZќ.4A{vN"/.|LJRۆ;(&$2A蠞yR~l>q-+iw6Vhh{޷ywnGs_ޭYlF5Kz ÙND݂Ŝ*;8D'6o.٠[ﳭ?cّimNxf_b Rvx9\Ҿ_ń9vl{nF[1Džw.:Smz*C4u]SDŽN]3>~wnK,['z}˄ugAKY@sf1xwcS'$A{r_XS a\lW-W^|ܔ ? Wު֚1dW,ɤ$`O)1\waIt!#Z_%(A}|Xf6  Q*:ET ٍ=.:CY k' ^!Ea?47$1c5:io)T.Sʣ|λ'r^^Or)E1HN^dPC7ӤgaY.߃um;*"HE{%(8)y9<РƴCrv2l|hzIeC#a ƅ/ejkx[{u9߂`A@ q4mz5Kp0/NO<u3ڱݗ,BOy>1s5 Bv'Suqvrae0yr[`. 7 L{^, %7l;dSsyL5A,c8hsܭ Qh`e/=s4r9T_^MB]`pĭϵ99$Wg:5kw؞ej,nQ A1$ٝ41t vɖ/c%"k[D+Dkˁ2fq5;g_?b%zH];44k9(Cj$VAPn*eFfF*db?UxzVO'>=ɀ3vB 8ìoKLǍZ:W` =w'z SL(i2yvҜ2ޥ={ *HhXV<eOVl'V)a?u捱bwZ+ؓ鶉"ؗۏ'ኜ0 wk_!>׫?˼awcJ7&N2qllzis&tVd38%Зoֽ KQ%qV \fBms&ޙU.-$A NW&fUncݐq<%v1cgt:q_xN9]}ۃG;+۽} v.ek1?ߩʈ#Ȭ#ۉWa.gmu W&|2U #BfZRCk0s}%*Xs.(Ģ!G"hwLá7lO6CYگR_LqQv=8t>.Z<\hώ%exz;۳i ;2!G܊YR/mУ4fAX:X_bu?ɵS_NsySJOv"vaB1n+R~JG/oGF+ƒ:bg?>8z[AUh`rP+PA8r|zĊDR,[6뵟` IȩIbT|Tۘa5ZlF37*PجRxA>&AWۭF FQZmzbٞ]q̞j 0xP}V+.bogCko.Ǭ\^תcr-/rX#K y(A] C%6߅]gE0RV\a/yG;%z?o:9ٖ5U} ǻw3Gy//+VҶ/[xhx [6%N8ZBs@ZkX`"3P,/N8y!1Zupձx+ RPMVt#>GU1x1 ^c|;1+Fξ'~ͨ8!<GД !HXFni9O G}D~GPRdQE_fC29Ղ)3&K_ʐ 5Ћ;;reke̐U&X>SYޢY.S2BPJmDrz2ș |=QªLG0GG~P*eNfY:mtZwZ~(gs-@9%hC,ZfؔE%o#t)Xa`к5~1bv?sDh)< tx VM@) C#Kۆ!cmt|J8m[0@̢栊A/__/X W^xqvBethSr9O^': T/@`ˑ7 nA޾DWoH|-@O NLgF'rMɊ3z++hKRssX ZHN ,]x]},/èؐcaOEc]IoQw4d0BSoCm}h8wU;NvOXxk]Ҹ2$a{4_ ^[ G`(Ao;6<ϩexP𪶇tFii J4F ̀E|K[!.a12KJyO(%7C8wN9v/5w0,7a ʧL,<9%l$z0D^=-H\'gŤDy`]σj$G4oJЩL0!~pS D2O" ·օEW.PwlEK x00\m,Ӌf5 ! B*Mj>;(^V԰jY?yOG=╤3<9O$d.7 쾄LP`$gּ4zcnI*:LJZudj)lÌbo gXV|c`Ա-WTg;Tiq~mev=;>{9خjANgXOYWv3mS,-O[IhBŽaYk\4ܻ_ٌ%Qc&2G_ZL,(# Ta)$#C,Hc`i'Ǿ3GA6c84S,(US ϊLgјKC fwG1$v@/6"cASfc^v 㸻$37 UNT۽*>mE3r;E;e6+gt[VtYU=w$djc sw(0״y吒gw[v`; $(H[v>=ڄfE1;|bp,eCRq[`\v[g?4Zlұ~oxgÒ5~ ?z9] ~# NW\"'Ӿ=F O&{h` ]`@ #; m؟DN:_ l۫W>B%ƿY< %qo J$& Oe xvKLIx{T/1c@y٢ 8(IK2W܅Q](W:/L{ޤRINpU/WuƿIZMqC.՗c&LyF',!8oAH悏H*ʝ2)6a\|%H 3yVO*ԬSB|ԹeLH׬6H/H:5 2ްS>眲!:.v~c7+1<o,5VY^ƌDdo"t֢AL:^hQwa;gg_jҴ]4YXךv]1QSo Yy ]vyyFEQs{=I4x E?\@e8\_bq7;)."L,' k2FLtQuw.f,qlUx\AsAT]^+H#)DVߢiRUh'4GIGY´frdȩ;I¿ܽ`zxFxJdSZrKىc;%䧺8eL@{5˞ CIǹzM?ͶㇴB㙍;C%j#xY%ծ kLAw4pY!Je~=6E;i{7je E(!tQ z+&ʌ$g>|koR 8҅ZsvMmcC+}-ǐC !])E;H5@ 5ȸcE.CGz7x`cSa);ʖյO<}v(*ҳK&A]|O%.k0ɎZmHdl'=rӟ')h|~VG>~pNnٍ)Xsx4%L(C`l_g>0(쇻5Ÿ,IR[w,&h4c"7U$h֧X4}$ txndQRe*.MDÞSvtPxϹfͅ9Tg2Eԩȱht` f{1dz1aQ0\">VGYy6n,gBo\Qٮ' 4J8hXnϨf=jwnWrp;ןI%SJ͋J{ 9k$_|̶o#V{W8B|{˂&U1WG- oo9heB03uIGS:|O?= $7G)LbCu8>`"@3LCNE~o-|ubu._1(C@#R(vc T#X%,ȴc5RM+Aן}Vs*Y/MM,|;g571&;01Nff1Ç olAGHwvexdS !^NddƒAc,刼zi qC*?59 Y$+1FSݏz#/k)1읳shVrafTƂhlc25} .-Hh;9}+m=?1y%m5xE2#ZVsdJBs/j6'N b*|(5PlU2/OPc;oe؄-`M=*7Q*aibD*[cBKYm*C.1fJ~pylxBhTIƅ9!Y}A8 ~q#:ޮX!z'ݭRqHUs#}1+bJ\u÷WxV;amjt_Մ6jfFV;-<ԵKc|k ݑܢcYdj2X8hVMN -O`-p_5,$2t.gN`V_0 ȼC_{G4fቲB1O݅ 3@b@՝9w+"]@kbnw5m bffvp!-1YY1HOjm6i؁B5q$Q@ ~ p”=4{&J8/2ZҵЬ3ְҜ<5SǥQ,"Pjx^+p˒ګF[ݙ0Ҋ &2V0Ȓ}GM+\P,N}yf_ L1xfZ(ý GF(1bu8)/Hy'vvl-Lʐ<{OH$b `tud#ԜklLom+Qݹ1Q*svhTvކj Ɍ9'㯨hAepvH^\\]W#ۦD-6%dp;CsvDW0PB}x|WFMyYEɣI;2YN@cٯb|f|Xų]\ˤmݻ--o>c ޖK;e д]5RXFӛ<3.‰Jso zd['*KB UM4fEҫU;dVAU/~哆ՍU׬*OX6'N.f4.,D(y?2PJ=cyއn u Q*gQE_I =[88k|̴;0c$wuls-&M%5q zuL {q%2vcf`6? wB+S&8b?$eKJ5zѺb;, ~-̫k 4ַ`޶ƝF6XVO g ɪwYF o;}kZՎ50N0ggTh^rp@ ssߟB j6 XTf8ض +y@~34Mdwc%bvNώڦ3i4;h{#j#*mnƇ)5vrMIG-1S|NFԅm倾y^B1pӥ]I8RgSۙ+ s]`I1; &DLQ9aC)xf[0Nv= `K`ʉ*Ԅ8R9/-JGR9װ&YB"򬀱Sf?蟬dT>T!]ڿVF3buӺE'woJ$Yn<c/f?nqKgh@:P=JYTJK5>oi28I#Ҹ(hڟ ĜXpZʛp]d6` ׉Brw0Pkv8-b:],Ĺ1۶/JAH Cק g6^0N^2K"OI҅22cvGBI!n$V z60+x%,bk+ZY?*'4Т'B敖 pSK/NOgq7 H 2T: ( |oA7,`:XFD)ǜ30P2xQ/lJyHTMLc(gkΆy%,=4:DFyVشe& ضdep?1B7ȆWwrNH3i냉 VOѝ3j&ۆ^¤~:Tһ1 I1*R qYPo6lvK{j@>d?]+bE!2bEHDX 1 YƦIL4 bj72~PL IC&A%)L@WSV+9մՠA7;RiAA!f\)QFbY3@LJdkI8 p XK`1}Z_=XZҏ7AT$. K* ![i|M. iQ5 '_c|Vk11:Sj6X)s&$ f rwh&804bllKNU2yv1κNk>2Ub/Z f֨<oO+ǻ'Ќ} l:!Ő89N62*A67ߩ-94*^ e܀7&Ac"8a5iDxhH~st<&ƦCcfL<4\'q;HY'ۏ3g( Μqg/ALF 12f# 44,젭 $8L|S/iݴi21|`BW8hPh^p Dk'QH~=quJ:6=5!bHișxtz<0KXV%+ƕ"L⨪VK~Tk؞LR-5fAZp$aS5 /]L5° 2 ܔ&o3{teLj]l3[wAoJ9\D0߼g{."dc.Ǿ CrhRaH鳻(} 76@It![sy&8Η)M m'ˤTD&5Zlp@x50=!vl Ql’xѻM-M\$}X6}+.̪;I3Z 4 EԺM>ROpcyO U F}/(lwy"cѻ/(O' gcy_aIF ٓ><^!MRYm2owhE>|xƫb6ֻy3ƲλuYmy Kg{)@*gR.}0jB" 3ڧgp>=@LwB\g gg22 lŒxI1Ӊ9%NPGdu(iOk'P<Ӛ btت<~|ܮw:g'1 ͐v$f9⫙}*gɚm%[&}n-:3$dXK0 2$-SIBL}Pϒ֐=n^ML (dk.Q.YW]J>?/nvV%_>=u=v&dLA M133Ew4:jC {~>bɖi?-A2y%=.WfډUL{J?`Z{dIV@ui' vV L[ g $O@!S: g tCRהL)g'=K5Yn2A!%iN"NKh)03Eg%:S?[;1N@R;OHH^, >6qCNxkj׍Q Δ=,5LLJh6/;,`A<,y˔K2n30kgfjڼ8Nˏ&7~22m @I1F#Z]?TbOZ>Ձxl,Z=PlW WUg. /4\Ff턪҆4UT~ =fOw:_!FW;<ЋFK+l+GEZrxsὩKE$ZT`ÿ*)cݩsԇ^VHwD bp+x yvӍ rQ)Aae%o*p7Zx@#^-ɅE#5o9IOiCS-YJJ]__ǍA+wh7>={@ղт7˽QR9:/<8:==#c{D9WUvv+GG/h=,핏v/+ƏjN0yY)ʕR>T"c|~1rjPQg讘]Y#^\yyw[;/va/]c{o?E@FFD040n68z"1&Ő2a@!& RQFpnFx{AxR9ɀa:Oa&n>9K0ڧa?Ce< 3ؼN4p|xs׬?,!֯JCXy_9H ^Qx,{þSSu*;*2sq)ɋ[s[y7=ٹNy><\$Azlb=QWfKo_?k+>I7 , NF{8jZ{6,3ڢKk{f 芼K@;R)nyk﫥{jXpt nXsCjh:TDؽKS_(C=5} W LG/>{MvT0)-J#HױaC3^'xho:&?P9?P' ܟg |! @Hq1Q9'8}N2t©9s.(97bNMlO> p{O@ǀ~p4(4QO? G#^'3 Jͦ|Mm3wQ6#m܌pfq3f,.7lnF܌et3fQf7#nfw3qQepTǨrl+M'sh}qk;_uǞѝf&m ;i$a6Z $7ڸ:6;p= 33W5ޟqvzy9z!$]> ^'[CFg3m 5NmJ!9vdvf8vd6vͫ1]&4zz'[w'Zy@XxT ʕ_~-KϟԟӋR`JB ht"#d}tK @:ԍ<"K? Ez#`'t*SA=뿅a&!:rgBkjYu〡s}fx6o2{ٵl/oo7]kfMI" ۷c1~0"Ɨ&Z:/zscS,coc@_{ZͶK69tm lk. xTFsc,k7aw3!-zOk3nk0C_;2D N0JSuxNY(l.YI .moy%H/ J@_#afW/ Z SbjCK$VXz-+7L.x@>Y1oRS]cEp#V3Ba3]W@~]̨GѺkf}<`P8x|,0Ȃ)EݏrP@.yXZG1)FD=OGkEWD}}̧/Ƣ,cġ]9ƶ~S;g}!0q| yǑ~F}nd6rpA=>A 6SoM #R-ݹih:␦,w, .oG dg#C{|Vac @`S_ǒ> ji?>99A*>U+WlC6`_~G>" ӶIfq#2g4%5bd{дG AB ?$?!U+|N&BO ͹{Xo(ӐYݐ-oR̦jc{_ñwҕ(a!3k >X8ʈ\ˆ:~QyK<67V1&A1{c3`5}0 $Yy#){6gڥBix\S˝ ?wvI5g!=pFEMz==sDtCE4۬D[I̟5o## mrQ#yf8o/ yq#>ϗy&>/s5xqWB @3oxETP'B5{4aF2)NƖ>sL\PmX&. 1Hrn`bdwyVxc6  M]2o OрGslbn}ZJ4?FT{oL-38;ea`bOsЭXfU[F/h aC(]w\A\Z}L29[v[ɰK<ٳX beYQ!y-9]DH]&EY`m}3KqSeҀff# SwrR=4Dmi'H/ǫz'*yZhq^laς[icK)jYrx2i@@#0rZVZ{#kIQoMd(0&,y%/FNNwbҿ.QJr^H3="{]?PșuGoH<'y%7ßq?n=ԮrÎuKwNK`N׻ -I>W|E~%\Wj5jHRJw?|qu1{+5X{iy?(_{څ6~6`;,lc?5AEo`V#l}%p*t^_tWgRk=Y\LCW8[*t%һKAz7io%:E7{KA/ }nh{Aw6 d?@{+ߋi?ېCBْuZا?z,},hVU2ߡV-T%,eKΖ~U-a5/>◯ \+x5BOLӞinY6w#zs ~/cYYzh8ip54kw^?פ}p9fuwvz 1MOc{)Q(n!`@~ |Ƌ( JN 83wF֧r}fdJ>l>ϸUof p3ʻV eYK6:ׂ#鯨W~rF^d2EqzNϓqJۋbbl^Dɞ] dpaXmg,'gTv&L`W\٠yr̀Ƌ$4$ZB87y|佅}K֩W`rV2E\'92sĪgj25ߋ?+.vkGpu/7Owdpl 5K$͉ͮ@}_ IsU@C66w9 [ft"6G_M:,eE/疂rX q).ūKm. }xՋ1tGӟuhXS~bu1dtw ?iJTCWMSw~e8acCLxv ˱ej?H~xA(9b,|?s*WS/jRpR8nTY]6Z;Viрt PP3 .j.OBJe}n1QFrEg&x.p:5k>am֡mY-NPSlubgG60j}8QGf tK_ Œmpabѡ \ <Ђ~aޚ#ىG"aR0pvև.XB1,cn>p 5VmVx=ܤyhgmqzl<]muΖh՚Ǎև- `hFEmhv#Y}h6_Kma'gmWFYmkN]7:fqZ?SjxIU}N] hq]uqo5 :Z\T_ HNԎ0OAE F]?E7:"pUNBEl'ZS; .'DGNz.+ywڿ`uPؠ;Y1irݥlxw#IpD qc[lq[/?'ͳ. S5סc<9X?yк:ODT ocԉؿ/7ŻEXjOfO0@ћS6kIa#^ҳ7XK?,4f ⾀@F f;yd:u֧b76j<7{WkзueZakS\ ™AD/Z۰Q`q-|Ƹua,/X~`| u7#_R_S,S 1Lj,RIЊf\N _׎a$V84ysH! {F@Hf N)Mqi)n5HT-ǧeM&řßB`?+EuǑ'D`O8T0~r*3@ ?c5h' :#״-T+2CPߘӐbC*l> b9alNl!떎EwN zln(JjF w0Ђ5x+~B@l ZdY]U?246!AO.?O.wяs >tY*8KF,{{84h5 %ÖG]B5cy@t=^_Sl?F[ zVqmF~X#۟ mkBWR4tS:UOhBc 9u9WǴQܨTc dcD֖ |{e]_n/}E|'mKpiFcǭGA +:.n`Ʌ,sP7Ybve F{hICNYw:bqW[v6%\ԈeIKBl9qjܲ%hN, qIX- p1<^\ BʷݖnT8dvt*ye::4Gg?/9}Ang0sg?,;LlVqN064%j}Oʥk1M~Z%iI~Z%$8.wɶe&|Y2c0[u/_C}T]{O Bk^PWmњ~U6 -q4sON*1己4NxRᭇmCVmE'bĀIVQ ]2FkW's~<'s{yjY:;C$N X5;²ѨN.ɺ"tmtx{`ܘ\;O;ObX?-OousXcqhxg*!Zr}`@Aa\Kc5FV #Cڰ(Jj6TZz<,)h^5j[PUb=xmۥ.Hm63otR1|9`!+t54CZzqb|ω-_*EX=)=kmJg z!C&4 `측 $5 c /65s-U=r oFXTS=ed0ɯ^Mt oniw-lŏ ŢOݢ֙ړ+})04 3b>NuW|˜wxz ''(yܤ *@fq20%/d%ѭmӻz7ufF]cIc3j],[R 0b۳U@c5C)RAn='9$-_1ot*n1t%1u~cb>Xd;2EM{zm z.X׽v_ m_ “S+EgݳW{cSlpXIhiU޶pWR,-XC,|;Az/??f5a)+.@2K l շg(*݁>16ıv>]Xdfr*8S]!\b*,"b⚯  (\~=szKUPW%X LW* Pl-,oiG񎾩zF Ċ՞Vwک*jϞi>Z%00U.6E?BLK%0@<,SRHKdjSXG/+ҡʳs[!zDU<πDy*Y[}YOo`_?qq ZmI^]&ܢK>X6b 0΋%7BN+E$芭]5Z@WoZd;FXU*cYbD-+ [quBPF fQg(U}eK%F񧌄~ ]&$t@2C[*ue^7$nyjw+itƀW[Njgu _8n t÷o-X5r/_E][,moP;Cys I CZ0*,w 2qex-L10sS^)n-kS|͊m GKU;^92VIt>\)ʇ Z $?9 Ï{}zZ|/mhkA&aѭm%sqؓfrukul8~Cƒ/od{&xRG9mlYƸHG'Gr ^r/xzntV{XWrVmk.AI` veWz̓8K%7٨{}F!q+|Ir׊+ջjCw 3^VY`9V#d@) ]}}xXӍDo"MVw]G޼pyuG+<7/__Gߌ/_]`6ډ){1|L\K#[&-2=տfc"bCp!XL֎p)~֎PH x["&,@ 6<kǦrƖ=ǹZcZM,!'ѡ̐$Atx\Qڍ(J#gA)!Gh"-zZk@}zsoLM S5{lk ^IebˤcHT@ kjwl&908s'@~a&' /AvkZ66nc&$NH zm zi|+tخk^b =#_%k# yYDy~n[U%~rN<骇'3< |xIS`% ia?dg#p` )bIF*:N ȹ#p mBU? +Et~h߫L_&G4XX>D} hmZZd 0Tٍ ,KƔFy=.i);J޼~M+ GdJ<^z6^K7e&KɎl8DJ% C)d٭dssC:i`e!nE(T|e nU#DG*pYȶ_ )[Br!>S~UJ{3D@=Ľ rԀ-ph--Qw Bi/Ũk\2AÐ_ph3k j2Rq}Lh }M&?g[j?:ATj#cD.qXk9"ll+׍M ;f43!;Ƈ8M0䤕SYxHrKdbAFv'Ad^9 -Q#|'£UEXу_&ާ@tCd9`ǟ6e`c- Ffo؃8jmirt5vLuH=Wd]q0QF bck }=ɣ&y+FR|ټ͊J$/mKSN}AB1MÑy_Wyc ]_ֹ'q_Vp>f5H)G(M~b_0d:3ѣ*|F2l>'1lP4ʼn3Rf02%$J14x ! 6>x=U<22Mui *8zvIsKHkf{x$LNr+׷@B݆JPFŋ{I3Z"޽D{;c6iY%07Z%Z*Cv⚩g *kmamzoNFF <Exh̳9y'Ҏ`|>÷Bax#Πa}$0mj[se8@>SV<-ڛ7W.?ڱ>3d x}[b扝]!+YXꥱ,+D]Wb kx ͞+g~Aֱ"(m7w't+-FvE7̧t=1ġ2 <qbO]߻a>|' < c:A_ lyؒXf@.P@W+jh[^oA PjD;R]tn2? |F7+6j]tOWpF^׮uk=q`6~0uRxL"P{'Z!{Kc/mL;.]n2#?ogŻh tN˳VKYOUv1 *h <e^n|ϑOJ"-quh fP;zT0U[gSF]klI'tpOs҈z&ބ;21j80SnOԡ>gٿf'y>|F  H9gzxA:@k ׆>@4B(G СezɑB.f0_~g79@wr-h?Z~rLUo)툻k*B%ru@_.|[BAqذp$YkrdJ.p𖝙n2J5 G`wО!:/Po'%d3t,gF k+ h,|{f3@lr1foghY MNR򞃸4)w>(çV WGB:7{~?hoSz<={O v&Y8Q3}YҶ;#sV s{(67Un)jkҜJVi[P 4U:(0Epתu2<[`hF^=uᙕ̂cl}قܺ4`z61meK!A:0 7 a cN Qh/*&UEh؆vh;+bY%Ga-8k0>휑Y hvq<'Ө-H=<kc6޳U60ɍ #d˳|&,V$Y1PoIp71u?; u[}jPh"5FovE\\N{GKepV XQ2}@7IJ}\1w W!4.# reRhN0+a!ҡ$8 75PZc#D: уwVJÝC СcϮG{Z/ZuA9/ks㨭/t NpWԾSo2 #EuO\~\5{=9뱥 z؂=Q%ME<yDG{\5(XyӫtCvNl '^nȫkt B) d ֞/t_Y.7l?C+ڱ26Ʈ}rИfw~,%p(&2,m8h&Ԟ+Lg9-m};cS$:;{9m%[.;.A""<Bj}I S;_І'*B7 gؽ2[fWRy\ `q?m`^y=cpXpoR*OcxYW0nrS_^Vhœe#Nrԟ8ԨX9][ko)lx$e6clD S{{lmcBz8P5Z?>W,E]ͦ~1ǿBmtGkka3ׁ>b/6G#!s Y@ 1 7=""0p1 ~'"@77Bv&/!˸qP/SH@4X)-*T)ZPhh0Ĩ7e?np9ؿ>0(w͚i,) ȬO\ ˗V*1xM\6ϓ\ĿČOc1XI\6Ŀgql~3+ivNq|>]`Y!6"#3srf7+V=o?4ϩvb/.# I/ۗt8{-![ A |h!>J"6?t>Q\QXq-ZدkҤDh1Z'B+VH>b9$5uCKP򛵀R=eˊss8+/[Vr8 AI(ґe^LdW k( Q!\Q;-ByA|󜋻ΫE!>VA\χe*с~% >'.F n-Atcz 3(͉˲E3DՈs|ֿLxD8RE*Zn)`1XÊc;`1Ӊj Yڊ_:vF:~u4- @A, bÁrֿOmgp9fҜ0gO_*5bpEDJ䱯LεJLdn?:Vyɱ뻠##KآY};¿q"j-aD%%kX 79J@t ɛ?ГF1*s˟p뇸yDM* @7 .߳DO( έ>\v4񇹛Yb$mX(I '0^$G^b.k[#Z-׍:~(nc.!6h4µL,G^F%}+ ӚTt{HhF( p `LȫSpHLzIPX [Zܒ`TVx=I\=f zd=|G ;*ivZe%7bFNNTwj2փQOĦE۶bg# H cB\IӵZuT:}5${YV^|%QB ))v$/=$"-Qk$'byZ#X5źTIF^[z\6fsK5ݍSh# yýCK'ui!#*\=:Bd`rlɷYbp7eP~XȜ-,BE44b"ȍ :%eM9,9 R8\>/Zj>Sq|Jfʈȩ1#FdxN%]]kl\@Cn<"|=0TF{^i,W̷"f43岇"@ eKomI܌טOK-Z_cVS4fCĞ`J;%G \s8`Z5vQW3D'6E/*2aeiDF-1 =1Ir+|7PjG\-qƻ,J3$KlerePZ}+%l|#A5BǏc CX&>ͷ3́aMu9֛0G7Dgny }Bw]$Q!{l2 R8bMȹ{ٿ5 ]efނ HEcg;ڱ x LEׁb8{ Ot]@g A7q2X.g2qw X8~k9 X343%="P| (5 bșa׬I͐89XBgL\*d۾aܧ1Dę& ɞ9}C(an"woܙ`(1/$Δ?1!#{mؖEs"!"vrГ֏5O1ZCbѤf˒G>)iH=* W0)yݓ2X SM2lcMd)y&1j^C\1JvNݍLZ,[G2` s2{l Dʤgu.}<2^21pҽ18-c=ul2mz?Ƅ*n}0uveN_kSX%2Hq2-&[PNമxœa+9_qgnvEOA*1f6D#^}ҫKѫ8-RwAP&|gHր4+LU,LA,S>HWA_=aBO֞A[^8#b)~*cd,QMMhLh2fM+2B ^` NMt` v}G"N!g KPDʙ˶0X@b0c jK}ݝ>'=<={g;r)]xibIfL]GչH)NOJ瘝3iHS)F1'wթ9ߚV}>g(>c:6{pvCIJq{,'n4 EĚvz%) ,[8>c63⪘hlL|1x3f3r%YQݘ#0DnKo{M<No/ QFG_sر^{A^a?ݵм^a? o0Cv:RCT"n)-tζ`=&sͪT㭉cƆ0r9oTs)p*s 1b+=Y$AmtWRN*ĺb^ p{/ NR udBI%㷕=_UR!qZw/ULlxd,](GJ09\ƵͨLպc)L-S_>dF!ֺK5}<leLp1/hy98~vHoAB[LFoOTMpٿ)O}vU:kR*W~ 6M~5] :G~R{B=6]smLĬjX1`}HNMIIݱ.%.i1H:8My&V<ݾN/GYbB ~̾<ǖ#n-fc Rv`_X x9^h*O4;w6ӹC\s{N^粛K.a-d.d/O43,#^?UTQr%&]~]d_.每 <0oL7Cfu<ս ;Zؙy SgL *rT/]ۚMJZtS7qc:uT =HKꉢNXN2In\(GX~+;_WlW}KMd)j 0[Ck^c|ݎШI.1ҌAkk%jlmYetJnqx#+HқO+vdRH$R:([֏W<jYLP-VG59 xΊN=s[B*De7RݱlC1=_L'WR?yl_Y2O 7k4W֬DV+VeŖqE< 9. dhͷGeز5X"iL J#9Ce@͞">J<,8'[r}(yY!7Vydt T : KqZNnˣu"\\Er Q;`UD VKگϓ1inأ(Ī\Ί.\e`DzZQQUw8-5cTC2e(+4:g~&\yfyQ9Zgezܹ3o' Zd|Lu?j %Z{B}'jg}ZgS'oghZxpugݮ'lO1 (e3>Qv^[}+{މh/3{܉㾕/(kJ 'tan!od^׹f7F&S,}̷=uYh72*5zߊ;2M*U4+-8gmވ]x"&q?6fTᬋ-|"tq}7"qÊgcl<|$/ "߈Ďk-Ez oDPr$߅Թ}oDF↵a-~3.)"sc߈$l-%1C >KJrΆ$/H "XN: MfR36\jZgILpvY|G(S`XO 4QYWJ$TYG ha r?5h@qŒtWSf{wyL_[Fb`s(d |mMSٙ|>r=Rl]]W y$c5U!.0ZSc`rXdZ35eLs1-p\IП hJ]L`\xeX~0Se_bZ/FvY.-11u_fxO7A0't} 4DsX_f'Qt.@k+cx,c{*.&xYG m}iN5G|Cs.V?@ĥ@(< xx*J51rgM$.a1LϦ~iZHポ;еyPňY:G)fד%N5Mhf{$ F190z{)3}TbOA3N˹a06w%ATN` y#L.l:5L9R7"S)q&-<DN [jؔ kQCo>uOZ=𑲇ĚkXK s=hC yڷf"\m0\)iml`4Ԟ_*kuy=w@ҦZJRZǍ*r@fټҴei!Du qZg+ZLk¿NLpG<YO}*&Ha sa؎ ˼sifϱwv0&pp-, as f G h;^[]|oP(< S Myݨw/Yq\ouզ(Nb草\d"A@G :Bki145 lM*4`ʽA>hFc =@AdhăTgG5=ǟ?AArThw-# `h [;#sM1!pm:  nR3ųԀ˧(&}m%& gX:jU[_n}9M(ݏu|m4Z7U?S-iz:vK?֝Flthg'@qqToW7 ؝_:uO5Нjlj8"3vLCi7j]mO1nqSkV0j)>n@>洐2[@ZFpit2ɇEh5Z'mh) LNƯW۠y.նGqi,A>kq]Q|ʰyq)AOtrw.]ITkup|ޭbc=i#Uy=-Ԫh6>[}=]&@vA3 PZud6P pJYG s{Lz0U3jC޷ kp۠!pa+;rE+t]XI5!ҡD[|M y[e56B3;e+D!eQUă#63i(b$2آU NVk$ddCk`)%,6W~9[,p DЎqIMZ*4# #وȞx~&yԔ+M >`抑9> 0>zo8)\lr6iփ]Ԟ=$ J\.674G;JznYvr0.,N0O.M_JJDv>z*9`2Htmhρ Z[.0/°ufLa@&1)C"w0!~ ofSII#'ZT>O m2Q_Œ$L5m_!v.\?މ&:Ml׎H}wHDW$l4lo >\X(;w]$rްHlslN}A gm!GQL){/jV$ڇօdiCקKXa0\‘"l㇟& GpU-&rRVW (E$=~Y3wlRGu`mpPc\`tׅSbUnRݴpX\\uO +\XA|5om+-\GT%ᬂ&!*BڎLdpbLr'FAB8jJJWFUNQYܵkm#5zf`Mtao|@6wQy񟛬5|{Y*WfL/O/!T(]IueaUBG|rAC>gz!90]89B$Y8g' 5WHXy=Ɯ:0oG3Ӛ/:h{#m;thրĆ^l7 ^ӏjnw19 aHeB4}}b1:紉"B_J/)=7k+oo}rNm҆M]}psR~'1 Iw}L {~z#^<{zQ #QD 4J*JzI¨>~Bay݆e6Rz9S䉬x3LPN;۷bmCӉ_t{`Wc@d^ǽrg,S4u?p<Θ DdJPFj `[X]-Sfe1c;4OnH^<7os>-PxaN J59E+FLW{j8oNXn1q@UARM^&dviWyAuR(jo}]VZkgo7OT{juQvv~@gBvmk=GE:22w5XQֱG ] %VtA/ {枔q֙%\T>KIN"ape*H"ѣ }3,"ˡسt8ޒ(X'{8Aϰ*`D6M-͵imD`Ҽčdr*{V2GGO‚[^Jw'''EZu8AmXc?Y0%ooHg4yd)bm^VIMvvܧz=k;ڼ]<#*hMgR>!޽Bc3:̹.`P9 Asw.yF3k^j`]eS+?-c]Z wn]gv 0l^d/@!(}FM<0_. oٖnTzJ FVtytRb9S' i7" GCkZ-{Ň[v{n5h_*1ۭx‹zA'3gbs<ń7RU`l<'vwg{M<Ӭ,"7md0gC / ~WfK}@{-f=ѳ0:K vm䢤-%c)R (e 5Vdy8 VB46 | Z%\_ DY&k=mE-<=rt57;]~]s(GVt7CT >s~tn_uκ:k;Pøi_ )wpg\|_9yKy` w%nCmx"{y(= < :,{f%LA4GwqAq%r|Khٱ"g.ܞ(g+mS4{{7xL΂幫r/b9#=]%8Dʊ2`Sۨٺsgv|F3k^]%wLo8y#Ry n>3|JB4'E*hxs@ s>*˒"hH$TTJXB<!Kb*(<Ҟ_Ң> (|OU(X (gG%X;'`/֋m=Dy k+ s$8C 4@Y FyrphճߺjTXg%5N~q]eq䏘ȃI,m<4_u3Ru[L+{QTҋE?M086q)RDr)Zٕƣ޽6Sǡqm{%ȟt]i2Xo OSIaB$x`xϰk8IeCS](!U-*BEPJr 2uTmQ$oyOyxJuwtiԝGQ~ƛx4P`OLp-:x.9+J|$rw߁/MWy\kP&6x.dH;{ԙXs)]`"~ꯓ>I+ WE |XoXvzkLV?mPkұ{aI^Oސ4"!N??\|+E{6E|n:V#[ζn'>=~SiqȓȑOXP@8'B' ʎT q (s Qٍ'A / j8&.; M( 7W`4eƿk>`2wg,疡D:r(WNz0cFBȋ>GL  ';6M] -LAc\eyGK WCIB{5#ԗِrD?Pybxs OG Up3({gx#yں?uH[g\|mN'S'=F$| MeXu25Gӭ~/C5 ۬ 5>eU= ;# KoaxfiFA?Ơ(1'?{`%`A5qyiv6\UL>ğḅPM,D$C-*iySa}ُ&"@$J)^ʋڭd܋ {M,CbTрǀ"x;9,x۷Ϟ*Gb s㏲NKW*[<޿0{\ޕ{\b*%6hP|r<ܘ-] >*~UR֪J8ƕF-5fd/F% OE ہFCw/q^hG$eS)_I!N &”e41V#EXw<ȝ)(~$bzd$y%K><- R?߇u0~Pe ƭC`5aŞ"}*SYi6|v7Q`ISФ2?Qgzy)Ɲʺ жL %e*6ԫמEoȬSGmCf{!2|K暯r5fI "'iaU-\"vܒ{45L2t;Wzn6#VOBw,i7!p!CsC8VF།7.0.X`ܚ>̖YaYewkWf ɇ4f)K2D=DS8|CL7+j?M$-eISWSTϫ9V-(?BkJEPhW w@K]U)qZ\lRu(~-zZv(\p6|lsI:؋&k)8^crbKWN WPNvJct>Day˛rfΒfLӜ+ރtUk_쌃 4L-O2};;tcW[c]Ɍw(q t¿o!f%&fZ1sdڢS2\?3QxݚkgItj.8<͉WXb:W#[j +-m,d{X$mҝ+C<+gs[~focZFw"&ٚ T{rJtr_ȝMfjss!6ȃAlT VTϳ}Aa=[=ȝ+G+ڌEUɦ`?zTS5m bm۔wzW\x||V99"'5Zu\U&ŭ\tl,qBZƭ)_wKe\ppp P:q?FgMVh$3qLaZ9q<40l''Fˉx%8#YѮ+QkϕWIGp*WII7ѝhX?59#灩9H7AD`r2sM3Ԥ(HOwY.hLAqϞTk&ț2(Sz+tP^}(֎38S= xԟZҏ9X7-E*42(bŕɷ-{{VwvXsZs1>Π._]{9;t'ZJOIyš#>Ee1еU 3tBb\OFQo[%nW|/O*s:q>[!v܉Wk _sU\ }>RJјXVL%+[=7goLL @ {F @YXEڏ!)iFSKom7Z'_8MO4Kp%NtJntGD5} @?1PBMU{ocogtkVR$ϓ4yJ ;С[s0U 9z-ޭ8I>u^> ޗx{W`=GtQ]s!<&լ;ti ~ܛM@zmnMSk`ߎ5zNАiwٍMˡu/(&و^7{)Q7-ʿ<"+ɓWUCT *U>VOj UjYSh0%*6\IYxAD^c !TĖpjaO#j9ݗ=ZDkEؒ2dBlE+˄|#]x{d )9(lZ(2 W6. ˥ l~SGtǔc8UNϫFNLL(35^JYA]KI%CBw`P(K9w&7JƱ$%9OHט^76؟%we|ы4UfY ]b,.G+KW*4[cVggŗK۶)o`1 vM[+vy}W}` D(" ux! $R3 e[@|_ C@| `.cWA|k`.cB|`.cBV,[Q.Q\Z-)SIfi(I;_%]v$Ki)GZ#<Ρ{IAV@ `)&w$<%/d04CDͩ0,kjߔ_BIEwxzQ2g Y2ieS?6$uUI:~NRWnk-WK$uut╦a\uc-5jݤ$.CRGnҽXC=3a=+AA.FyG=F3kHzOH+EKePNd|DuiY#.?$h#=}>޻{L4/ ٤20oINY/YZ)/:I$Y[5ty}E |qÒ1l|(h-\,Ib-z\<Rg-'eY8,*'Fj*h`AEʰ .Ue/+)_N/h b2_D')(\n~c2 OpfT:: ' ,{GLng8qoye8zsxST \]ANQXԞJÓ  t'<)#TrŢ\\&b#n oDG@-l_J_œ)PѪVlܟ0ZZV+s N[)+vL |͖60{W1qexW6U^\+"ЊmO6㛛И#Cຈk`VnÌ*W+HA"-뜴VҒsqT~!1I'jx-~~65Ikk;5m V[q"Rl#M߾8q[4?7URJ36j$DE-X-%g%C%h7Lo5;Ohlfi742㷒%=7̙O<{e j3fg̀d2moc fL&n\s4oa/bHve -,;٪s- hT6Zz(j񿦁KTp=PuX嘏L1U}4B`#4n_+tiGk% fF?ϻg okKR[vt|z煴+~zd’VYDȁי"KWAvAYT$GVԏe>rUR.ѕH:^+ȷZQ;$HXɲyUeଷ ݘkk?*sk~*k6_^a.{xefl2Y2GmFeeϡ̔Z!RV^ɠUP#Ҝ_o>lz^c Q_{$1岷5ֽoXXFPw* -4߻҃UL` #jy,w`;`jZ{ԛ:2 PQ__kk!a {,E{5 :Oֵo5 ׿vǿ֥Iq҃yWm,m(K {7޵$[2ؒΪ4wj~hoFm"pubHޭnޤ.ᾏwu%Y'qÑW~F'wc`tUm\6~ox񊮆֝ ХYCZk3OlF]fyXd] Wdi;̱!Uv5ab"$mɟ6ΉGy=c4' Ɓ;i^{$B-lpJp,P(ĮP\E(ZŢYmrЮ}BXsxiO84/a@]$%'Qf qF񳝎9g$rMG_fN2HcBSϹjyёsIcX3 jh)5Wך66%MI˚ {ypHm%}n:4¾pM&ؽfV7oWf#zFh6 4y4D(zƮk\E( Ǯt\E(ǮQ\E(*(K!C.裧 nf|rg\&m i6~Fx/;Ω'1J]9.˼"vwWe4sҜդ)Ne?(0efG5fřa_nͱIAZ×*j$ޛLo=]_]kPb^56@pej9~"a(6]d)2I~광$kh裓.^.kY>Ȩ0?b#HebW(Q4ʪEQ/0(7u|)i-F՞a)5^6>̺WqȺxe֟8_sͩ4Y̩F (EdiCMh,Reu_,:QT}0B,Y! T/_Mq7DZ/0d-L6JBL׶%O%\2܇cAuIza[y[#ƪ 0Q&>dõ4D?|w:>;h5D'~RQ >;h&Ζ2Am-"C!SSySi0 `#-zރ3GyXw{iv<ąh F%_X'+eh^NX14NjޛcPtNUn}0ũml{xFL3QeƒǓh#,!iȾcM aEKj7ͮs?7qgk &C9}\sCvCsB0ӆ c7۰BR@=7ϠzZh$NJUi o 9@gV[x_MsНZĉ0QI0 %~rL%I^4۷n'dyzK"p^>~5<+ZKKtN߿uSK,0XV0/{.xJ*zsyPy#5gI߄NלFua/d@ ; 2 V~wV?+iՇڃK_8 fcԾСNJhR{> a9}:n//*Y :`$N.{`V7lbD<@>*/@Px@x:h(0 rmXץے%h$-CӞ9u9:<&Wp_S Ho˕ ޷8:QFй `qk+`Zt  ewy*{.g J26 uZLr/h1Y BTX4Qn1&{w.X>Z ЏQ3.Bؐd{)`ȃ q@`c#ʉQvv&^2m)d{ I#=8$8BL_URڊβIA9mnTYcxq?!WY_së1a& `h G/;8nG4ؐDbzD}0RqP|PO+\js&sJeju;֭H@0^[O -pu'W w#*}X9! l t2,VIC" ݮD`t#K0g0B tu-?ZkApwԻP2k8c axJ;i*Gš܀i\ޫ*nC 4bBpŨ+)p2 g B" ׯƪr!A8F )P'-U\Q@䄍\7+T 8 $hkse6" su)8*!FBVj[141`XQjgUTBgP9mۈ4.}2!!jhT=R^haR!M^ X'@5ݠ:d[P;MvZLyZ+#3ԩ|JLJ$> aL;7 =@̀FߨNأX#o%G_LŢC>MDTouZr ѷk,*@וɬpVfʆl`\5D,_g_J:* jH۪jY 7a#%/bIMK nh)PӶjף_bEP:G@Ib67xKڤZL|Õ 2j"5iWͰ-sm.5'Inupd-+NAFYoM7oJ IiIdxb ;]TE;7i[_jmrt Mf/}e9t-\2Ek紈:gKl3\n)@UQ(:_#a.Gw:tT6$ĔNA;;/ԋM7T"W néB jETMwj5i.FE< [Ԛ#+7tJZά) Nr,Ag <t\ ªx}Sd0VU6 7tF^xi.v&g@\6vˮ.*[-dRňdP sq$밶6-92҄"-tkK] fJoLzЫ%FYҀImtr?SnA~7o#>J)a~0?zAi>ha6$3CЗljJuk8دn CJj: ʪ<::y{trtq??dl㛓ӳ{óSI qVIF [5Ms4T!ܒ@S"+T~_sl'Lq{ŏiCr@^&⥮_īЪb%KsP,l=}8/ :=^5ZNĭKGt5Z Zs2nuq4嗔E!^k2K6; ] [Iݠ2bΚA*?6sFon|'6Ĺ2=\3h hNV+?o (bv\oqFܦ5J^qKgnؙQӽ 䀫>?pvH \TV2<?4XQO5 ?26uuIuԔ  z`۰fcIod0 G WV" Y .Bdm~*:kM3U`Tjĵ)fWQ|G4:I/aSܦDKTڐaZ͍X97=&^YL?;s2>3s2k 20r!T!Ly"썺~r]xR\qnB}/lt2]6Ta kV.j~twoL^AP?u7.ׅ7Gܝ_n͑Spp7/Eq3&v5W~Ky\wa4^գЉ-\NϷ|{1.'b.̽˝]^Kug_ )#l.I^6𢬹BK:۝/_·m~x^U #H2;ncx- w1i |~2#=OVzhr0z$z\۹:Z뎁=uƚӺkG8$\|2ߎ^5QK47y,?}uoN]uF]u5~Yvɲzwt,t{9!dF0p8>3E- t w㠃-܎w]<@ ^ot3([XtBKp"nIHtb. W)aqtCQQZF?/-h`lG;сv&`v9a{E+08E y'Aԁ 9.WG-wzAB@ P:*!F  muG;FPB)  ۆB]@,_wGۋ_:tx^B>zvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8;8:<9G'N~9Psrz?i7^9}?9:>6]`oOϜ=3G;8:?;zx @χ'cVj4UC/ ѧ} t\s0~8!t`u~?^:{~T"2` &J7?G<ߜ_]|8t~:==@;g8Mo;ǧHkioc#BóU`/@ tJVӳ_^$!{!su+c`fF"TlKɍ:29d _r&z]__^ԗr2DNAubS^qa_Б;qKOY-쑇 IGSȁ;J0,$H}eDeNX?y5rLJI*`\֫C(F1SKKhxQF eF ?9C1V\=Ԃ, w+la1JDAF% 1()!R9i~1'GeqPcX2:'*L)M4Hf4SQ( C%"XWDdQ>t?D JA 6-F7Y>g !7fqz{42n |e,s @qA1Yz̰ Ƭ.O7dD[<؅hoK)1.\ּ=> Î!9n>M0 dSEeH|VfPjxBE|j +iB5( 5'( bqhҢbDF/sT$+0ma_XՅl0DhI,",L vIijH|^97"E ;fYQc4e .f46saq3ZIr5XRd8V%Ʋ'7i6C]r \s\njfX8κ,ι ng4[F?ou) n9=~ǻ4rzQdcǑ&ؚ͘T nxE;lL^dlLVrbIAgL&%T/ %$VJi$^D Q^3(MC$y]$s2 K2)8 '{7 u1pՐS N< KQsQ0ϥgгpY8,z= CO&`׷Ĩ\!2;GucKӬ:cbϐЅ}iH2|inزr _ٓ<%4 wwiI xy*:\Oz- v 9Qgוֹ&a5Mxٴ%n=F|)ڍ9pxF,ѱŽzk6/ST]L|JmSN?(Q|>t |dKC*5Ucġ8Irʎ rKpXYU!1ӡC@cp 0IuK0 tA`Y ;6>֑%Q.HKb^I:^8,E"t|4`Èv|N#6ӈT4ֈLg4RN#R42iFL,AxqdzO8.۳wpDqqŠ|#]qD.TqDA9;לCqe&aJWxRMIKٖklkD-6y_DbXx_*oJQIq.9BE\* KU$r'-6S3fƓ%uHh<1B2 M@*a#: SiKRPHwo )  ԝ2i/<&Dܬ'WK(Be4\cxLp!RccpûwuM;{o]/\=w Gwhys~P=B%`- n!|Br>!X#s 8"A>!d*?  {Va&CP%l}>GA#֘a.؈:;#G]#e}AA- wa'c_ɟ],~> z2!,\YpP=gkc뒹 zm$X#nRw~Q`zD/6{d9\{2ᖳ89κ4|vx %(|l`03h>--H~|ŧ*~C|7߻x~%Qk]%Q֥On-l-D"W}<#)r_@uX*\[D oWjwմ(%NŸl Fhx%5Q\=4pr{;H*ݤؤtzEK0Cx%.;Gh8%\j뉓[o`~md`NO`6z/zR-wbeR]=oG39PEN,st72 E;I2-0`QkY j؈&BҢ200 (3ڧ8{iEt`#IE6e$M#c~/uRشiRTNtajǶQ¡vd(/Bj)љo PA7c6aF m=::+K'b_ץ4͸k&~%Syj7"UMk\V#X_JtDse'^bKe^tH&* .CP|3MН\t |EKa !i!!WxQ$eGB݅|b^Sx0/%!즐hpU/P[$K^ d־W2!׹kCY_ph`ՎS"^gDw4L 5蜹%_;]C] ICN dt ![lmAʶZ7p Z8˒: V!{\KΏ[D^NC8O}1S;ZlC#Sqȷ0Q7ٵJos;n9wͱIeF|V-Fo;ǶI$㉥PV"3g zUqe.(fٙ:~H؂<;)cGOKfͲ֖ꮧ8u 3u:q4]&FP2ʣIMxrH> Z0#UrNl5HP|z'֬::WYWU6Tm^om9#EǗU2/ Njen[+WJ@qmԋJKNLS"ƕgtal_GNh@`E^[&W6Nz-oJ䎦hh(쨼cYVf3SU*mP~w1rstxЁ"(J}ܾq"WHZh#~ :egfsF.AH-h=qZ>CɪC%0;YME#j98*-6ڀ%Ldo[ jMqBi( 0!fgJ_Z%>[Lc; ,\k|&6S:ěDݏ#.k2w5S-O̼0iwGo/.1X1oW?ԯ06?WCE,&3^< 7+` E5- %GlAZj7i3y|F6Ko QD&d8f~KRyA*^_6VEWI|!n:$K.{@d\UV%Lt-A_?<ڌg6VHљU:9?EJX&-n ¯_ 1^QW:I*v\Uz}[Ώ?{EM {̜~DءĞ3L7X՚JD[A&*~HҤ $X{ȩR׬6ӕWLE&yPBPOjw_U*"#LG) b1 ?t{6o%[V?vL17"v$qK)U%l ;8)`&8X[9Zn,tOTwf_ ;t>57[M6bCLCKN{ qF}ٕ3zMՐ`+h=׆xBஒ7vR %QR֖>.,^AV`,85T-)|CoąqHL*K\R-t )#V'q-Ci&u5evKfEkjD6r }n0ˣ|}.5s({s gjՔO\1& FFGh+1">Z{T]>ݎ**BQ 4S${aح<羙2-/kmQOu4ϏX)῭}:|ryfCW׷8#_ގb-XcƻQ:c=1zF TC^:rۤ9-iI*IeTۑm8zNDj\qۈ1JO,b5F&+-%"- o)Q,Q,QviاY> ' ciXHd ;!叝LLZ[Bt8eJF@R63&8gﵮ'M,2J*òEhB5Ѡ̺s,1wO:Z<}5$[YRAbӺLj0;{v b\&L(;Tڀ&Gثi6%ʆccBD4Vɭ[Zi8+p/z*8qZM=N$'a8'q|I qҜ9N*)}xZb{رSA_%,)%11oH/8Gză$TS$DLyARlAU h3옗~"mI'qDQ$I`g:zS$xZNNq8IJc'IBSũThq*8Z 8yiE$4"9L/D>R|~D5_(gIY^R|+F)@@CjfI Qe57- %4bV8eKiieV8eK)Vpj De]I g_,5~4S2b);K~ w-%~w΁K\='F"g%Hʚ/3g=!GG-e%#;H Q~AU oKYvH7_SB-,jh+˗#\j˩]B]%r+HЫ ወ/l_DԦ\ T65Y.$6iRVIئ#j3FV|F噌[ej .J$tĔځΩ/R(AE[EMP*ΚUĔފ$TDV SM+9L4T&ӡBL]$ʩbz(L "E t h) xz&)A)uOfdJ '?QB1bO~BcHo+꒭3d-rM"c΀ć>7H$ym^mPuc>uD%9k;仺궻Gdk/H7)U׫\TX -*ǧtvI;-7({ZΘYYlkC!jo?JϑW!q:MMջf/"]ml[T-)&GglԚGKsڛ5ILݫ6 ;~0C4d2%\45YS|%g3eXڨ<[Q XV䒻ȸhmfl@T ƅ㼌Zz(8_ [#ΐ>(U% `ũ"FEi#!$N[ .0o`{ 4vAS ZtieSq F\ZlT_z)s1o<؉fNX3>F&^\y1%ۇQfTU]mlUQsN~>:8sO>],;{=@ :P VttxԽද:Ap8Z\v\w5Gt/NN^u>VPs0%wM jn9= *;J˃~0ZCna pt 83ΰM.o+;l0a&0\00:#$:(!+̋.w0 V # f1 T'Bezvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8'5dO5pNN/GvqZ#Ƌ9ogޛ㣋_Il s>]<;s>|:ع㽣ˀ4aX :wptv]>sp?:wk Ȁ:?/{?A*%#o/.>^:? 3ηsB5hb Uyη *0`+a`ٯX/!(_>T_Ȑ$ɅY㣟O)VattG_ُ([Uhk[g#DϏcg?~p vߗnpe3 z!o}C@i惙Y7uJ@Ӎ`%E)_,MYQ/phF@8ߢܣB<Ӈt)v AV ʢ{!5R}eUF50n:fPXMʅѥ$&zyNGU}x0r| fWIxE0404N_˷b/MgkIOOQiJP7| 1l7}ak?0?m7Ks{4)+A=Q**G{Ka*2Rvv,k9zӡ&2*?y"?`c22%XeK-T.fr9ol{_#?fqn"OwqO#:cѪє#6s ZM2bHbHXƥo1cd1}r TDiWӃf3y8̮/v]p$^}'4>-EךzY#o!rUy ۡ zs?Z&RР̲T<G`Gfq\ʄau*r% M)cjX%IfY+''Y=Xj>UUf8M{,^q^RyF~Xkm<qYj˞3ho8?3t.'޸s*G7[*/ I)G(iy+{߂A/Jxx.NS9~|4 BEV`cz\8gkc>;#(0yBGjcfkD1 n![r07Vt\TU [Vk?`#X 3Q4" WS{hb?A=i>/~(Y eFc0e(xaRoҾ''O=Zy#CRUVkNt2B"x-.ʝ uLo֛Sœ$@%i)x2BMOl)+%b|[ V52LʯjP?~O1E(LGlŽs$;tZJ +4a,gs9t;YuͿD7#$ h2"FQp<0oK2X:Ƚ6RQJ&ejEKY2.@/12#9At$|!R0V䚪2ф$Dj uoAxyA1_ 5jPUQL F'7g.(<{Ľ^SlcT]~o+s-KP.0< ei~DxO㘖{AgF_k?lc}(h ;tL$ pp͞fb (Gp8>vm5GEvR|T~]b[s7\1a/J z ~Ǩ\ ¯ 6dw@ቔ.>?ȉHu!fv flË4aI؝J3ЌT? nh8){gy`†x2è^$@+maE_PFlYIStBDWHk}<6E(bC V1MsDZR9-F\HI$aITqa:wF wf1q\Me$aVL IbEtIfqjoG03t}˽-̘u:v`* FdiaeZw`{ 5tZ.Ɠ)U":JkiMŝWv~F`ВQRs? x;}[_\Rcqԥ uI[ǁ3rNNX;7] b0y_ %9#T}PewU% Z_B5DCCKcƀW -|`.5A.@](]n`b+jP .dQ1:ϐ(s?eeg xܓ5WDT2}2y/.5eszWrtb{1иkKK ǫ.H14L Y(\0nhW½g$)Qܓ[N&rl1e]t˻L3'0$0e +[wZ㘫9f>q0d,+ @y嫼TyK #2me[ŀsKx?U(*3(.c_Pڲ}L 邼-L M(G9KFm4}`70+>G?/;BB(` @.QSMn hsx[l[!*nt|A@Tby=v[Js8`,("XMݩ`X2MKL,4Q's1DTssf? $Q\oL?Z|!>M\p*.<̊PN!mv h_eDc՟o؜M_b]zwpgX-;GzM׻ uc~aB !$? o8>uS0=]Oi??#ӹ""὏/[yHgB)kt*3Rodx*b¼*_S|^A@U0l~9яFl7"'-⨲YrRCTj*kIhXYD&0vA0i|2R,'aMt;EMia`EEoC-߿ږe5ƴw|cQq'_.q-DIB^}jɃbw={AH H?&~ުع*O A ڟ|C a-'m`ҁ|c)z2W¥\fb-ӵ<-39t5 eiYۡʡ >ht3Xʻ\T&K\#MqkD[ë= qq}ƊdJۮ\GErjG5|v&VUʨW -ސ '\NBI bJ{Y%׼-IO}YR?7o,U]n9Bb\?gd)s2cl7zhf8u>wp9SMRv,9]<#Bك捦 * EH{8iD|GXD-ؤSm#%2| B1è&)cZ/A8rPS%"h{10r#;%Awv]S} NѫxÝ]Zk60vDWbZJXXУ0 Cjea>vn;euo6B`pE¯㈯B7 zq!܏oߣ[,Gj&Y?Q `Z9Ԝvl}R]*ʠz%-?oZbݰӒ_b|_L,ȋhi/x[mː?:cjoDP_ъ& M2XG烩x&ɢ_ъ& Ʒj柨 ir@ʨG=Z*BAU?Vs_3Mve)[<).:Ԋ"4ZotF3Kx Լ ]6Јz[NƻXܦpe?" /u|&B*Oe6-JJ-KRGѯS+uͤKXOI;oFq`Gb* -*r.q6IDj/'p%@/)M6ר&hpTaw1,6 H etSȕ2h 0MEr(ƯJ(YH\s6\0jOt&oC^ qt넊dߣW%DvX3~z4ijpw]K؇/j^B\R^uf7ߥ zѿ.t'Q:I^{}c/c`˘>PucVx%E*|sVDX 'tV{JJ"U(&7N!JS2RX{Raۜ+Tbg+`HV) 6p/*^4kuJEG#MX H)7}ؽmVa0(^J@kK,S$r[1H279hB_GQ>|ATEaÎ&y9J aȠoqK*{ı]J`cs2`.cŐ6ayKo1Dky*dLM(9kJٶsy|lllllll<9[<=^k0J|uMpQ_!FdBu*olll="yO5oCv%.5d7A0i~FZ_HLL3JѓZJryo[s9:zptU".ZDq6 M}ӕ\HTJz,\wQDر(b,KYLKEwP}X֖xupd8~#/N_DFIVBaDmrKeՒxU1{tndTFm%ouU|GD[$◬F,9Z!}PaE! {[ !tEoUqt̄kT}Ltu;@vByx+z}8, \ 5xKk%J]œzIaK ghvxQeԳK5]5ء6~!rрHx M( /UQ˪ꮦ`\]yOT=)sb*^$}ra2F+1Zyy$M;:>Mjv*-16"HNpg¥":/Gb"DV2!\V2^,vpp7_,;P,O' &꧷NM.~:4_tC4'&  &0QУ2)5whc$&σ^v>VE %\W< Qoizl,9?dƔ{!aOq=%.ɠ-Cnb6ƌ!c03FRX)3dtq<[A9t4AnXAi@x(RȜv0"K dȢH%Mvax,d;'YrqO.у"-^,R2uݫ.>oIN9/1 OQ@7/ !=>b_/>ި}Q7u1d^ nӧX>6TsǨrގklS ǘ7IV-PG6/kMԁqJ,I8ԅ;D\ /^ r zT/}:4%7g=;n-еo/ߵOPWe4Ͽ +m6jvt"nQDZRRMC'֝vВ?`^5+U"DA ZR4D'mq). _d``TK@f q0*%ӉLkpYќ#);κ)c:Ǫ{1DD^ƅL8!f-aJ;f%%zm,QnY@G1#M̡챒s5^٩"D3&ucDGMgit(ѱ !O/ڊ^)詑s:pq0mڊPh)6d,qSp&x^G#xa8=F,k;6%~RRTJ\;bz6e(Q͓*8K C-qqc-9G:$gh3@K4z1,ޓ"/6<.QDNg4dqa1fVv46xF>HG^WJJWWa0*NPzSD?(^ߑc͋Zi9/KVR̜Hv&8N^-i+ɼu<kO%Y fĬN>VqI;c?=8C>I]sL,P*r fPոN{v9Qgh? WrX;1LJj&[ Q].5U/qh]@v= -(d4(ӓti[*S>yz9e~YT"[~[{ -x=Z][b6%$.).cdcؿ` a3 H}c. q'~˹TWf,yT+vޠbrнÅձ:2d8'o̎xizȝPfVAH?&+ caz|'G`}+z`C ` w2 :Pg?^]uNi4X1ѱ<2H4&HhZZ8iJxMbc+S XdIl#.'M'JỲDRU;'YA1/K2>yPPy†vcNuv;@k'ai[n͓klQ_L»N7c*kjgYNCS Hl-U@7*m,,Յ8Ygї^j{ŷ f+Z߻JVa[ ^L1^E,pVзajGX5OI,Z C3d–=^]E20`Q[ݢ[ $ǭ\D4՘G&D:ԗݜ\C6!&a>f6C; iaI~iMi+~u8~o6%ZxOb:;#W3)轰쟀e_%nkChDn: J1YUy,Һ֖J]KGBx96. sZWLh4ju|%1:"-uɗxub! r|WkrtN0Qy.M|LKd-s'&4ٮ,~[VLtCn(|^6f&=Iv%y-!2[6}.{'wi*|V\=J+$!s2xU(ǔ<$|{le}*OLeqJ CsRMIקOeJv;,㫸_-/? {Vݑ3[}cT_JWhC'Yl|8&vesvaΈL @kP'`,?Z} [7 6id jcn[-g6 oa-,>;Qo7X{lt?~"ͽ'h}9+,5M=N_ɲWMZjd`ki|f,I5Rw,c c .>m$\JC.(Q$X%Bk $:۾'XPᖬŷ2.6 !}wh  Y  b3ʴ2Kxʛ}4s3ɦ.yx5 3E{a?CZ b)F3t"y)_?fZŮ2~s|*oa@2|kJ W3fӯ,cpW,`a_/ qw1FRK`8pyi09^TluYu*Jo[?ӳUsG{tB_Y],NidadS]G0tRD&A8 Ԑ[2^©gψ'Vkpwo m]6[fk@ t8E]KY7C٦lX6#)O؄W56ޣ,q";jRxn&{8y$Cîƛ4ܠpJM$D.Ύe2& u})60h4Yc^]mk*Mgc '\tp\^ .{ lс8k_`xbsNח8 Bѐ˴}q '>L0}w#8XzOqM-Tw+UyINױ`p~oIS! ԛz[A޹@QQ.'K8aKܒ |'{+J~b9o&Sk^NizN0Zw: $ `a{t[d; c׮20menq͆[2Je9O^=W%d@7/e0tj4(1$W7-4X]vڐ$ hߍmşȑX5 tñXVa;?^A(#meTșQZ#B9ٟ(v'Az,˔˚c,OT$Zi o]=nU#YDkMp+˗Hy*e_1$1]A2|| lvl~K:ɭʋ,9/}v*pWuwՅAvўzld!' 49CXrtv<a^f״Je Ʌx:z㠃-܎w]rc5)հ~&Ӈ0Ҁ$f0"FNa' '>Jn'^IiNp !;yAMPQZt4vѲhV Gzۙav ޣ9VwORk00\0Aܭ;#$::,F+NF"Zp"%umP0{cxwteЁNCΛ_!ïgG?pޝ;{',7/Ns(;9ׇs [@N.kǃj?=5nsyx9:>6]`oOϜ=3G;8:?;zx @`:Ml|sXuV ;8:;ܿ.D`q9pu;d@rG? ؂gĺ|s~qtIw"^F.HP|o>ZHg?`W_Z@00WA^s~ywϐD`BpR!CB $Rgß~:<SޞbEVKGpD[eH:>UFu~>B<0 ;Fz&3@/~p}}9WntdŘ!n%`0b*]Lt1.TwJ3a c'IW6 )I'⁷".B'G^1ٲ]P< s0½.al5튳g! ^>+KDDQqü)[yE+A2GF`i(]c.δ?AT`8Ff` J6`"5fF3K ƌ@@ f4\ߐ83,*uA!peN>+tŸbvw;d_sÃtUqXBD$8!Cx)jQWnt{ミ/WſVH52Za@!ѳ.9 }t @^E4x{OGVm߶H_K#sov0S]ȗ`483Jrw8ԉj›W`h2[_`=oWWտKt鱊낆'3@,*qs'5|:]z0"pEk]s/$Hi#!PVa {VG$b ;phplpsBCBPFǩ%椚?#@Ga~kYm-gE.9p; 8In upҟ'D<I!/3H3n0W*R޴ڳMóz*~Fgl*@Asa_[EBٟ<; )nކvysqY%P⊃ۂËwK[ȋ_VnA:t,}~6Heaz}Az@GzF24ae^\TsKtkFr3d={*Ѱg#PoE:abחָ y!Ey&&90`%w6ՎL됺£}e3EQ@э<!I6,z_Qʶ.)::E"-Lt۳LJmS!v)TMkꙚSI[)PyTkRQU({sZ7Gƞuè(*ut"uzuwzX߄K#&A96S~dƥz6fZӵ:R7nAV[ 0-M(@3}K ,2QKiESлzƧ_b5k1@{o.:wLߛțl =B U³GZ'T3{WW*uRI5]ȵmNia{I1p8Fz鵾28ۖ"_W^JTXs%fb@V7l@E _w^u&.rf"DkgK!0<2ƗCԄ*]BG27()9# YZ< /9;MyQl̞zo"Lq;eO9Ϡg,n齭[(bSS}T?=1mѷ;GY:;r_ݬFزsH8<Z| |fY;̝Se<\/ΧSF5:gLmUS*)OlC@ oMZsGcJ7 'x9js0 I6X:ѫ`Ēm;zUÛ%}h8erNx2"$kp$/'cnڈtk߹3Vz-K%s(A~wgXCUD@#T$wNgݼtu>ЋG</uᗺK].R~O/dD'@+aTSh^'Kp[=b[S@)jɻ_,a8ѩٹxZhTN>g~QM >w,.ϥz#fin5?!w~ߎ@"hǾK{޿YoiЩ>;]Q㟂~JNF ho_oJH,FUo9L)J%4Cc9AV*[Xe la=ef`G_U#%QDq57Hs~'/1s;aMݑx8nx{@4!w/G:Z7Aݾ𵘳sb^ً96g㼧JW<vHϝ'$ vHx[M3x)t/cE9xw~JG?Q:gϙ<8BuO'$7 %;ƃ!ѕ{ߠhA՟✄Z7XXGbByfy\l^6]܇O)l%I47&`h &[)넾wv!J,'ӔZ,99:y{9q>HdgLl-fhN>htLް* ˻S21 ?_`ޞϵTKH(͐{>;( K4HʣӏDhTxgݓCZ) 6A,πN*|5Xr>.;*G m` M0w3|57gˎXm8 &ǵj(0QkF ns] *w J j}çzIf\]va~I&Z G)Im;,$,=MXlHn,oZţS?O9^/01h#f"NAؼc.e:KsڃWȉI%Ф@j#ݛtH>R'T[5!༧3hդEA^Ģ*e)o!J?E޵KQHVDs?j˟N><T>tŻe]&z@BD䁒B MݎOÐ\dâ7u=t/xwđ`N/ZŔ5& :NՁGEؾr裱 Hczs2 ƃ3re< =<%0.۩!t'z[-ʯE(OFxoʣDh*2 m |o ȥ!DYX5PsҰP*5i(e = 5K&x3uIҴcSs>n"g.Cp4҂_2ȉR(JRU%#H H/DQu$/߬ vu; +Cɗ^B1Y0<#MI%k yH-5~H'1dH*} ^ q\2)Su>*FsTr -򬬲ءvd20Z!APXq]\ %ۆӲ4ë Z%U1:.y1|܀%i;Kτw1"6Tx`-M ^Nj\ Փ\\Ym+/z7Z{g[[?PЬjx}dn?GRt'g\`Bz># a7EXbAkχ ?(DG t'C+Q-QDn'!2)TM3fIMS}'dsFJ+ϩɮs8fv^r)xj6kfE$Z^ fiQP%ӄkpxtu[f.r+xEkr(w tRl/ߙwٟ{w='kM;sM'Kdjd/Bo؟mo6<'{&&_'ГWB~eۥ3_Yu7ɯu7,"3N' Ӎ\dߣ3?Yoߙo?Y Ѕ2d.? 4ٟ4(,IK"'[|咱Hɚ$od.|'_zqE<7{&0sKܟN|H` IȝuXIm⾭tǕ`$يݽ4/l9* Z{?_*w_Ο_37O&;V2iU.È ̲]?E_huܷm? y'J")hmg}~@lsr)kZ0ϠS׶pp6N~<I@j8v g *h;vxҶ!q qE)*4IJhƎ+$INE,hZe"K:o][u}UQ֔v&R R-!BN1sH5h jKhM0!M\8@4y8.dG&ԋ7C4!`%Aծ|1pGvw'Lm,8 &*J:,*6b*aN(GF?V@ D1 R֢ VTb1ucҕJWE}tVx! *EyE0~ Pb v83$ܿ=`2c+uYDn VP|Ԓ@m|)0anДfa;I0>U C`\%W4\ghMBD/t G,!j_snH9LN~=n`Ar`]B.$M$!4]0&ɪ ǚfeFVPP\aCg@%{"|g׹e;r#_rGTaYQݶJKcO@X­rhV;vzUw끷^|6DxGrbΆ=CMKٞPKvxW~5+LB7Շk`'i63E]ei\@|U|YXeҦ,2P55f%f4|z'M=F²2&*/l+KMd)z!IQu0̹͵XQ]QǓhIhB"sL!RNȢ{,*#feQ-9RK5mIה,*g3r/IJkjW}$Ŕ ?Ur .`2˿"*"2.b^W}EYډF⯱jcXX ^z* o9h6~ |h8bkǬSExxLbkDҥ#_>1[>_rO݋!}[NK;U UzH_SO!ySOC p\)ьJ2UEz<_:.bkuvn D#(N^z"cv` +/t 1T$:ŊJ(G):Z!HZD<"gZJ9fuJe0ߵaB*ثrWenvW59kD[嫕 -5S[4Hvŝ/9~|tvF]u"oه3++9)ؤ!u~X01@wK`F= lF=? [ST,QLwEQ) 1%᲎by$I r4 mAIR&jj x򠣡9f@]8:4=[0;x*XL8$:}Xdp*L #H^_`V(-&eo9PVs]bi7SJ7lHK`xÃe{5"iNjR m:jOT"2` &J7?dqo/.>^:?sg|;&n&Π#B+rj I!+1 3A39D7bB<ߤΚrt~Xh˿Sñ$p"$5F譳w"GQgg= i 3+J+0sM 'сwy&1.DcbqI¼9:4``6NXMx.*Tlf&ȓq3~ сvhMN;\l/#d1װ$^æמ?ޓq~/EHJQ-j1Offvlpbmb|715honDc]TFl:/,܎Tw^}D3tHDG)Ba*#xBrBSh^@bZ^ 8xf^BzN{N'Av€Zw6CITbPG1Xb/㭑iPDbmmv ڥNp6gLJ?Db~J bC1uKgж/"9 B2g,|FTU(Ȁhj.dwӽmBདྷeolyfm u&l{00U\U4 ;{0 $϶a flMC8dbG,s &P$[r/YbIdA<` #+jlfQ-Pb'EA SX-ArcǬ3>xClAa)ܥ00u>{'ʘ'̉x 1s gfue.Uk }Bj2'Ff3rD Mmiv֬/i*Usʎ}![TTMY_x/i*#<6l\uTBt q~.^wrtGpaz'蛠P(^]10~H{\ &λ.4Yߥ8A3`+o G?A !BmCwaIz\ 8/] vNQBǗk*_J4T;q>A~KGޏ'qʋBڗR_l *@`:ς>{,yt쵡uJ>^8bBHRx' UbXZ1WgYq:\*ƢE#/Yc2sNM(a::Kˏ+űz&c|Z4_DE6RR='t̤2-2+9Ittc+ȶub3=/X+MZv2 vd:yfL2{%qG-&* "R E+V^& 66Wr+;M|X0ePh8ɚ60 /_3D*ND2${$Ky`)61SPMAd4[ xۙZ5saӽ?s/+12D9o'ޤ{ⶋa8##b29Q[K¶ٞ-ҭ/ASUz޺z+^vo]jġ]~NN#kBxWAEJ w&^cq0=Uz"ᨏۊF,Q0v׸$q `kG%tЊt'_Gxw0l) ySBVjHT J;\O/8 |D3O:c'XY,ĽA1ogG U=)=eŸKgJo7*~1gB0[ykaE cXNpc8OE9̝)ZSQ}LO0vKjN] 9AAsE)tYL0vcИ>,iazq~ @7lP [hwkIS*CAe8IF;u=DE55{8^!6lba4OW,>,Y7 nя`BSvљ7<4HXb2 T`rC.#kg/Nyroƺ:nB+/AQOM7P"hdabwPf82a((P r o9`,揈J/.эL24Ty8\0֒Q_[Av6 [1A̍0cY<(ZxL‹dEsɊ& FLtQcB挐XMF3'W+4n [-{ᖽp;e [6aH O0a i@[/qÌtzh{P"`~tA͚ycmD@H'?q6÷]OrjwӾ!ݡɳ~&A@Rg{ب_>]^oK׵`=j k>]Y{/h^JFb뗿6G@UJig[HxF/ݦHm&: F@F qzpDlogp>23 BX#. 9(ȿK%RZNrCS /hu¼ O7ڱv/G$Z>&_f.9K񣾠eXZdhJU8d}_ _e&Q=OSIvĝFFԇhG8Zw(a^vs; ݾ WnTҙccӶ!4~x:Ip~t8,Ɓg\Ѝto WywOSa qc>Bvő1)m$%0F&UgA N%a3 0Pp[L<ئ֤Ms4o?=Hm!c4o)4IZ) Q8dsݵEC+KDEW8{KqR|i5<]lsP.A'&}ސbs„ӻ`[CtqV}s)M3껡fY4 K<c(fkAd!ɰDbI#`Ըd%Mq f8~$4U4Y+1؈8D3Zf7P0l{7adKKb[{8" Arq$՗Q&[E@ޮ[cѭ-RHڗ.5 tɺ(ny:ڜmGOܕQRu- uԳw-Qz6 uiW͌eH.Ӊ+TdiSE8Oė,2ʰRէèLkQeRec 55%DvS!݉WrNLͶP3dah,_9>4(P(R`rU!IY \Ey^|zC^.54]f^>?5ҙy.a Vr+Jt+2t+QQPG:Y:,Ѧ^63vTil9"Vaɷ R:ₔƬ];W}bX(mItOJRYVsve%3qe>\P$ݜt?oJdۜ]R(2T:[\#sZ)yFލ'F(d+Ňݔ$*{etJƔNY9윲r iVV.Zf3/ii6"Fœw޹;Nov.1.6.IwxlPpKN}vșw ] ;ֆLXnDB2(3s9r-E}N\9;:,6Qa7w*+ChfNePMڌGf37a\༅ \ p˩H6s(W9IP <]B#Qځ/.69M(ˑ-mɐƙѦ0m#[ߡ{{ 4Ava4 CҌ6gܢSתN8^ CB QR&-<*mYţe*W+o,l~^'e1Z{{YfXesn^7oiKc9MCE;(E[:mwwNѕzJr=KsNה.9\s ]\Sx.f3;r6,p ̦oa\z,ٝɛNQds&o~W3')ni^9s3_s|纀P=ٓW.]!K"upυj{s8v9:LMx:B#%qP6k.TӜ؛ '‰=YY=ji$2AQux9Fw" jTcѣ->}5crn8O``Ό~ } 0uo,XCߴߴx7r5GM|ood[1#}̿Oc-c?*WK[}EӚ,豯pN]ұ<>pn9KQ3[G;jKZЫbY3^l Yϓ[ns0JtV% d rJrc6J;5(f.5.\;*_U=h;f 8SJɌݞdF4^' 9 ~q;37dyO)O 0?OUSQ/U1x\2vfn.e[70oYo`Zq;tfؗsSIi^{^SQ>*;&f8С;~ȗd]&WNx;}C%=ZA-em]X~oD>A$ TFY@PћMhV擹wzc qogg 'wIwԓ;UƫStVn.D+]PD.N Ņb YtZ,7iѝ"E=[Kdҵ'Fss $%.;73;tiw#i/u ȵRzʮapgH\yWt[WrML!{2/la2U}θ)3zW"Ff]KIf}L%U25mZWZ36f#qK}–R@ hM!֝'E6*.g)bLQR;[#K;[<㦕9Mfȁ=~$4`ElO`{FF!قE:4!؞4m=5-ϋ W(4G9y%3tYM{GBmfu?_~^P|FǛl$"V2y=ar=9('i)/A}suؤ1ई:l6i*M|^,FqHlKt4fiQ3Z^"-wMYSߥ,i,K'ޓИ8y[=xo)[q9c7ȏ?*O(zO=l҉$#F&?SL#:DW_p(SbjDFYPqfKMRbz|K/Ԍ=Y+;ez`!G3L+94Jq4%J#i$U++ȟƙC'.g.}4m4NY9P3d숝X-3/+Yy"vj[zNgVwF5ws1wP/X"*vO>B(+Bh3&JjcͶ"*4LQz\E!(qQ`? i3^nߎZZ vF0YU/7i1IEL,Cl/9&i<(p81INv&Mͩv j<tz31дpXnN Du68PMG"6܄M*-`?N*NZwQeSvZ7ݰn, J:Y1Y4r(0Hu0`l. `MoXKQH_&ND(MSboD}ulcG T\ԳO3g|61*jU4F%GKn#6\E?%FHgRo^N5|󖦉NLU5**YTك KJnb|UnUWE{Dj[U=1%m3gdVQ3jjuzKZW֌5!zRl#"$Vz-;n/NJ=\c n H]]Dd׵7⍞Ymlvllfff`,R.AMmfմŒ]-/JT@D<5S)Rҁ%+2q Hۗ,y-[fYa#g |ε0ȹL3ה ?4L5"0O5,SZf&90ȏdi۴fZ/3 #Szԁ ҌFK% %1heH[amgŗ1IqO6 Hl@M)li@9(O\ءեonxD)(m r^R A 9@L& †z1bOCKЅ7:lRTpYauh-`w2+?s ןc 9w;e忡KY[n ҞNo>SO>/.sNK=}:ȓ>@VuPZO;Ltfv QBXՁ)$͔ r~ ^Z:&BIgFƼS"P۳MK]Az՞l6!BxڄAGN6!qHЬ+5/[!Z5c:iթS:ЩKKA֧z>]r>bSKyٕmRVJBEGM![ߙ-Crh9W %HR'f(+Z 6j41ب / s>ssTySSYB5-EMeN5㧲gjf b=^VPU$Wao`@:Q6 G.Tp4i8+kt48ETራ6;MR3Xc[i8ff, حݚAު X4m&,֬E/;ғ4sH͓Y(YNSkIҾMvZfMf~'SrT7S^#y٧'4œlCg>p^pްO8NdejT}ѣwJ n|j_/Nc">ocH?cJ~Fx7eO?Ӵ쏙~iI?|,44Y=A ?Mjij4\ޫmEӚ^ 1M:~JJScPK#$,33hU9Dzka=o$AP)$Ce~Ğp|ʅjq#GSu$ _P1*lbe-b(HSy* 2wބ\p?ƥgEVZ S،n$r3KAiMa3Mlh z{q&O2aJ{ ar6gܠSoXOnjr!H(P! ) NTV'Qa0z<'Q@$A X|#;;GNut#‘3ǵ9ݒ9o 1T{Bc+|@X NQn򠑗h zD g B6FF8H2ܒoh/eP^*%k(l9U}2Zq~cS9^JŒ}hrCBfmȼ|Q);Xmxm%^6X3^)Z6mŦm0iaO=[z5~ݦՆVuag!(]Why7 hMae14f8~ư1jP%[cu{:C^TL͍w KW1֡ H* )ϔ1J5U,Vl1J5U,VPS0IP`xSC2XRV Q$aj!%HbDFY$v19_/5,õY(A|sDrD˲ʒ*@WoDUV.{'ʔg &Õg?-AoKr%;P'#d*'w}/6iOU %¾vO"웸u̐sD7o:lXTqi*MC Eϥi.(#x7x<`S},w) l!ҩ7v#nv#gs#8U/,UO4 >"ej")S3H'5D+f[8Wt!(3Bմws2UICA]6 S\KBd-5t ġ;8PMnG"6^n¦E uQC(%kp䨡s($n`݂Πhʮv4ef5ఞ|YKa[ w\s]Ds&sۇJ>N暪_Pr4׸nԁ6`"5("5(&"]OvQ րU}tc- aY:bWtd:*53>m8櫉dx}Q)ka5%=kBz̰%;BQVmENĺ)$k!w5㩄d}ɚëĐb$$͠o1Rق*[3PU\ȭ ԺuCwe67/GJ*s${U^U{{Fmj/j״JIb7beJ/i9ȪܞQY29 " &PE2_f_Ĩ^o2ꯗ+Wnu隲&__xuMtyC{i""p9,b/b/b1,!<)݌&b{Yypgr ^1)f!kz(HD~b#%S++&uDь1.&u!H1ˌIk4x8|ũyFG \nL򵫧iW#R1bRҔǜS%31,КQb }D@5 Xl݈NغhܳyhY -7TSh}"#FpD'uY2οOĒJYfg/-El2odI@Y݆uI@Fؙ|g& |=0߰mJ@:3ds9䌢>E6=b7ȗ09Yr; o)!_b_f2 7i$gJѓ)FO"LnXڍ(d9KFiq3]ϖ"QH@ӦJPYs"MŌ*nBgI,YXҘKY s` /4 -3 Iv!]$NOB%=ׅ!CCpK}Ac0ύ 1fȐdjO|McH#kH/Ad'ٗHL%sdHL%5CyF1OqsD塒8C4S$S1IN"'ɿ)mTz`K}sYftؤ$31,3:lIf4&e 9nVq3oPS;A:6R xbFar\)wRzY`ؚՄ5G D.!i,"q(De]0cvu S]OX8?%9M}Bb,#f%Г.w&[44 :rnV$^O_Ps/@0 _q^aVBv@g.>Cj\VX&Y Ӊk!x#T\L!*# ģJU&l  P{LD?$͸  *1SjL8y{D]VWѫKJʖ1~w0 Gu+#,a gp{ =~A)ȣ14_b_"l!_bUPGǚG6QcuyKViRWs-0WMٿĄ n{۠ݽꂥv@:d1ifg]V-'JEH18Wf Ϣ,R7j` [o.^kZFx+ /+lZi ?Nh L;F >ە5*Tm'fʟṊ,cS :oЪլ yjj&vw( luw3i=$ N _D z@XժQ WJ%'U{Nj՘;шZJ=FZ5N4m)砳B/e+,ʰ|Mw/Ȟ޳jx|%߽IS[X2+Őb&0xE5 ֎π_)fCa(O`jkwe.V%ŷG4\D "cK<<#f!h9-y,Qrj^z 4E$< N0=Xi Rt[[{Oo@oD4!iJb?ʌdՋPGdvP`mlHi=Ie6$ ŌI۽>c0|D".關] C걓([ٵ˭o)OG(bwwۑ y Rݻ쁻vT q^~lG#䁨f=lr5'{ā^*{"i4//aؤfm$#a{k&Β=d_ER뤗R ]i/u7!ahsM{T^*mn򗮡WKƪViV9O4#QB_ň@dȖ.t5g,8&P@젞,Y9*/c>s;+v0O`8n&/8n&8n&8n&8nU7Xc5.3zPlytrg Zry'ԏ$=}$W#7ȋ?jmm2jB/s cFFFAXѢj4hfD-O niJKQZ{e4(Qh]>`潠BJ[ȰsgdإfGa6u ĒB,qQ3)2'oJČ!nRІhq]ܼwu>upZ]b2q%(== ތl;ہvqv#Ц6XmH+"t?yVD bױ6IrܸѸ) &u2za_ yZ(u[Wl'zҪ+FT;Qwf; i&*[Iy[IyoXI *%wĬA3EVbX`՘ 4*^iIin!{լX͖MdY4٫LaBlJf8~~gg GӬ6y=nBchu$>>T!%Y5ono(bʷxqW)PUrMra((zl0ga6 zl+QQr3QzRٖQ=i lĨ4TefL@P# ,cYeӝMʍgr{Rs0JdFb}wDslH}wjZ5 V *XfaaqX(7jZ5 F`pb!W}̍f >5VEj$6:}Yz5Qv8H.Re7lRC ~(MoʕgߨZ%x#I|/>7z}nHY d%^y27enfI3K壑w~|4n/Ow»i瞗ƽƴۓTKS/'4tdg LkђA]Ilxcܐ>2r}BLK֒n-HӒkIe{6F>!yikdᝪ#Fd Z2l[^|Z4KotddP()D Z4D-k gJ )It8)ҵZ- $7 Ggk 6:XW` ņaB8:T7 GW&nDkk8+F<^& y+ ";r;!N|0߉  މ 坸0 ݉  ܉ ŝ0FcHvDM;ӰZ8%וCWsz]Yϡ+9te=ѕKW S|,:YUg=AuTg=Au֓Tg=AuTg=Au֓Tg=Au֓Tg=Qu֧W}m!?yU!ۥUu]ZU!٥Uur]ZU!Uu0ZU!Uu/ZU!Uu&NSBՙЪ:i\D/& a 4)5@hKM  43!IML4ӥRh$Gx ;BҴvjDyŎ4B¨>qcO5ؓؓxE1Wq h7rMv]'6-WDc[1ѭVLt+9&Jn%Dc[5ѭV۲'IIh$>+d0m3Bh:+d+}3by+*5J)Iy+4dVbJlz[Mo+m%6ĦWzрvCj.ӛl[p>JJJJJJJJJJJJ Ш$*ruc`CL]J`3R|dz ;5ǥ9Ȯ-uͿ@hkn#K]&WR}oe@2ݓ/Lo cƬ -@'"ZŐzig|$$)icCmdOuWӧ+>|Zf|`%|^`#||̛ff|`%|"WAK@(3gGh# VFI<}#k[01N|7S3FMnA&jw>z5 JU Po3IYhk6FAŒ4MI6i͵Tef-V5ߚ|yæ vt]1ph` 8` 8[gFV`Vߋ͹Y6סa[g]M 5+ =446&<6nHМ8{QmOL3qo~ji&TN%TذN|_0+6`RaVvٍ]aa5BW1sZ.`ye5+Kǫ4exø)d0a:Bȳ'8VcȀ ք8y`0",U+ kYJtpu,]H6Ӏ4M" 8yh#gefy ly l903 mZbMAGg$ QI2X:f)xrZ-\qZmo 囫|NJRn JaW)*ݖD:%I ]L1RF>m70R IS*at.p ݥpE+alxl~ziD4'>u.b$=z#tWWWWWWWWW:nuY_ϙY-e2jOt5.SirêO`vw&H:|GNISvhbN%f>tmf|53DOQ5Yg#}!2xeaql TYbIIdN@dzl΃$m BĦ)&xܰɕ>,6\Ŷ Ŷ ƶ =ivhYtl/1K_滆3NI3jfqwD;ES'jWcy3֮`w C 3 CƳ|LX "f*_sDJW;Fj4PZ8 [8PM#="“یo3e-eFѼ;R2xs.QDA>EAfa?jt0;St)3Is.e4a]ꛍȧ5seU]ñW멢խF[YzRY[M^rcePNң9F"68l խ*jlTչ8Q7o&N5_4>^db'4]PMvUOj56ꃏv8UV3L5_hWiiW6rTs,Cnd͂ ;4q&TSŧYO]ŧI )C|q &Q697:+7胋%AWYxWxPǓX!sUW"z4ތ`Sp .܇@H7n Kè1c;S%1}31+#@O"p4X,k# huDP[Q+{  =_sf4.p"p@4wN/@S+lp@6ِ"jZ! d .@-D(ȃzVcjq*=טRSk,פc1!(隵奙J;j6ZUᨹfj>/O?q>BH\w<މc{WCMv&rNKXUbj ގN9i/ְ6mhb64W5ZQ ^8G唇Dyj?Z==-"hhpR(< , 6.u@|E|kwԍʆGݨވhsn Yܼ#&lVČΣ[I]QZz9"ΘwW1I"ڌW$)e+IUv'5;vTE*"q?.Uih؆Mc&BbF& tq_#4qG#j'BQƄ !CXb]) l\hL~/Q }*\А\0kLI)^VQ 5%`S!8#8 $)%`S9tS"gNBYhC5IלH5^)VZs2MD3b_[f6LBkJ!s<@ӑ}x/=s 9'YVJ);BO,Sl+z+ =U #^C %`2菜h,Vc9ak=_Ds DA>kE" HUi:1nΑa' gdX_ܜ#N7{dFHu6ѕ4EN4V)5gE];ՍbuwQ l1SSD5Ff$ =;c$54#QבSX:A?HIo>ە"/nzᝤ׻#x)(PqV v!۵Ղevu!d_3hd/mo+4D#6/CLkHNl+SᥭcvpynEnlnѻͲ)wRxXִk.ҦD+XS˚[IÍ'3L'Gq.kql\ɦ'-6|!`1q[xd,y KtXn 2ET3Ȁe0pDU)*ĈjHƈE/u2g=V$%{Hp "a1HX ' 3p׊ i9Z}0b 1 9l~=ݰvFWYh*fzbzwd(~$K؉ E2l%ִ8Q:Ù([@cڂ uzi 2Ili TZJUЪUh.*4*eY,L`bf?0ӿw]jq{Zޥ6M[U߹+T5ϰ\kIy8.W}]8 e]b;=zIg짫ΧkΧOO'q 䥕&CόWro{-k*HU*RETQB 6Dhn"ٯ6=TQ41jg)*ќ ɸ9 .P 5%(v#2;Vq2]SIzW1Iєǚ\LSREz,lh޳Yq ,t/YM=tmYHpʒޘhIo璞ș7TU 9 KCẖ8`%̐c5Ue^g˽d7Qߝ|g'lݣ^(}(D}sa$N}zҷ)g$J;UBO̻yz,~&5 ՈOinsMBϔBSI;%ʂ1M9}uYyusv~kj{bH=癎νKiJriGB]Er'2͢VRc,j)r!OqNIc7Qmiw wN|GYRpҤOuiRug-Ou60Uv7ivxmŧ$VVB|& al,LAyE܅#5Wx:2x+ݔWx:x#Wxy#Wx:rUxbṘIx.fO;KƼ9nRwg M]i t1X2)ۻ;Kj`0Lr1y)uYGTXL|^;(KbVzI?RЪdͮ*z̮Fҁw]C*dju k]-ZW˲2u k]-ZW˰2u,k]-ZW˶ݑo^j뜳I뜻9g 97LJ^j׹IFT[׸IPVZfp5k+\Zj gV{bzj=yfW{n#U y:[XKB>CΎP#b8;B-ƎP#;B-ƎP#X;Bm2;AxFlà}.BBju\{j܃PoTꅛqAgS5.;kVMոڠ^7;4U"zuj_PoTk Ey[AS]RyBRĄ5ݟc3kGØ d(n&͒V *+qO֕7C_oBSGY5Y"߈A>1%7*u:7LhvsS#T̨6'r#DnNOM_Y\oTi S_'~e>!?w{(;z(;> F愒2>^6>xbOǧWZ;?6;eXޘhofF,ڛD{3V7O'^hwచaXu$Ò4ÒWց K}%n}1 }.F]+M.FCc7wf S_Y|e8<]b(ZkO2OcD/,aWցÚA%Wց3_Y*c[ځ u ɗ%yKbV]LEznb"̄]MVPVS)( VP%WA{&*3O|eCn?4 羲.cWص 6e$Ѕ󪯰 5_a}ϙ^s&*J^!?j5ÚaLT:U9iZv-%kk~ UoikOLth*^My,WeFBp0Qʺ0~-̢ >KXg(,gm1xzK;_7첩i[j]X#a\*w#WR١2R=p<;6OΧΧkΧOO:>s>}s~$H8#WO24c 87o0{߰}C DdyYµF:.~w4YA4jEG%7岳qӧ 0wa3` "9_/Fa?9[ SizYqSW0D~;!]iElLi)%qZ+jT^kvVośZVj,P;Y@)tvvDtMhR(RmgxF|#9e-v/" Ox2whm-D!:WBt 'FՂ@HS2?#qkW:_`Ƣb80K4+G?BMM'aToHIFF b- 6'&/wCJ\%4&?PI T̑` V/ KIC"C.:zC;D$K ,{a0,ف>/oi>FDj(~R5Ҳp~nՈz?'.XjR,/_VD*'RHW7I7.yPߐAcC l6?.y npsO?Hm̡b4k.4[$Op.jdнͬ;2j3͔EHK})kJD)kRfPYȼ.?#V3jf*Bf{UOR,ӭ霅̴񜙅ۆkgӒ! xn,ٯz>xPP6>GSf7 &[)wwnSf5&RSREjlfOظ1"x- g6%gNl6SLL}WZszr?!q >!q >!q >6MmȓЛI^oI=qwrzGLiuzGLiuj;ҮH#IE;q K^9xH#I1}cῇ`44C/ys[B|[5ua=!o& K'AϭhV嗎u*S/s4Fד$z}n%:ێG.  yDouS'yASZelKsqQNGyD%:eﰲĕ\)K2D)2noKvo+ue^ +?thje_\# ^uV-eeGYT+ԅty~,qkeFC 䬍s3B[өCXwPCX_⮁CEkM3G~SNTXy *0Ge&x OG{Ӟb"o3YLM{抉阩bbn3SLM{&i<163MLM{fi$9o6GNM,htK, Q5b>FH5GՈd pU#nţj+PwT(j̎@ Q5b:F(-0GՌ@㨚0U3ހ}jЂnTZ/g+Pl/θMX)~ Ub"ʼ }[ØݾLTn/pWoK Fu&}\!_I}K6il]]M*ېe%mʲS&cwȯ%UTVEi7bw[?I* oUWf 9IeUIU׬&4}$W > 8D̨6Q# j lJ(ܚXah~-\Pr IxcO^?']u}OXjeb$ nWwջ8y ; ?7O&\[/4O6}epW𚷰 [،Om9h]NZNQm&/Ti3v9mrEL\zW}e8:pP&@2Wց3_Yϳ,oi׮-+5x$`B `-ÒEr3HWց3_Y*$V]D[Z_D+-h#"} nG17l%q%i*s7Q|+oXM׫$:}+V|]曺KPշd]owa-B{[Zl-ڪW'gf;羲|U~ϓ0ָ:Ye鸰^v-qU Ww-Mox yU?ua[8~SM!_IYS<H|jJ" |&b-|_\?HJxnMʍ8'Oq~-9f7`'by=o뉘k|#a'.Mגl[[{ )~{)УO/111lˈ}Exe`D!Ω|~ʎ]-#/uӆittSgΧݽtݻ{uwL"L~hGaI?nÎ~,>V}L؃1 c<{C^r(e8Q{ E /G&G4 ;*p\"[^gh KN}DVpT"[.;WE`'Desn. } B ܠ#!7 niCq8 *`l8ct;mwt[*3|%U{h @ Dݾ(@J\0qH{C{րgHy`g VY%QDG"kgVH&"oģ_gJl묠񬞚A4" g#;9ub&ēsbJ7c_WuJ04Ġ.q0^ak#Ydl4K㶄{HGcb^"U"?,Ь"ff* J _ AZj@Zi/lvNc||]ܒ 氼U  QҲhٕFr:ZwZŊىr3^J,1ܵTO\ʉ I<|L+m?50Ө{Ž^B$P_oQpyIKbZ!4!h? -2S4H;\HN"@)#q1E"wzS S4~\K/)=Y=\GߕZP T1cdH;x+яzA(\'IO]}SWЗW\ o#\\F!N8 xB#vVJ>نJa(٥)-#J,omCmM@ ZV/*GJ,j+dGMPz,jXꙩ֜ F,jX.Լ[l\R:*uϰʉLl ]K )B9Rw5ӰId޸iЁ߈)m_-o$57t*uv9ᲥmD+/U[J}, )_0<.&:W?XKSC_1.E^F! z k#^X~pr鸵0 ͪ 7Ez5 Ct:#NáppDKX4+l}[⹞aZگ Xr]\*׵urC*7 rS*7Vs.PBPЎnnNP)Y"E̎_)gLCO viaۘb̩#t8距Ao|я`NZWQA6zu̓8ew?px2B۽"#2N7c{2Ɔ~#XQ41 ^ {/$X _0M\ :SƣXak% Q؁"A3vA7Ɍ%IR"CE䜎t >/f9h'+x O#pHk[%Zv/^e?:Y.zN#ĺq!7CXa7E2xa GN aW`dt1^PaE'!0TGհep] F!?gYT48]{pc6>EҙBBۻ<}'v;oOSë?^Ht ) O},z-LZPtq@aYgVhyCZXmPg _|oЏ0O-…?V6<<|!]O6og GAm憰: XEwV="%,NxCH` HRtCCmf5ˮ4 GTA=C/V.[/ΒY֠TvI`;Nvv7t J^/>h IJu0(EIh-ݳ` OC(PSq#T3cc ڵ!3IM_ {*xepS୯r Oa؇ , W,dW̵lb4 ĭ{ѭe09o gP~sR(a(x(' j2 R 4"W&tQ҆طždXN,vɿ%~N3x#ެz[/t'5~1~ƭ8K>N9 Eڴ#"j\6oV]h":~B· }Y^&_6.IOBV CF%ݸ5*!3G(%*vEƌkp{*ϋUnReY#tS&)sD_g̭2q|ɝ2_(LБL*BWI4sò~o/dZd^*q R$ ;W`|WJ, leԅ %d.tA?Zvr> K/ @<+bGp]h|AwpK#Y[;|(NTWmi[Q6<$Le7y_3y\^:y69B ?(KF4lTаu |)SK;hxpk>R ؃hsH𵂤#Eg@[%;@I\3wWD.H d0lw/vУe*´3g./b޾$0M-!D2# @*\$5_Fo;Y'kOw~РC8-gŔ]xmK%{]u6K(z^$u:a':a79q+vOu-5ĈmGIO>^\gmBu9j*vI&}<8㱣. )b\hqZ 1ʯ_*9UPTM1W~'W qq*\.ў.S?Qx.8gY8)z i0s"dCPeqw/+:5!3ej"H[ fURKڽr/Ō'E#6A[*\QZ y 4v+w(%Vy*52iS3 ipzZ}QLr>' WhcL&%08)i.in_DL'n\‹bxDM[K8Hb~;,vG 2m:'s@|0"}FE\b?Ic]ʖ_#*cJsb+MGW(hHܼgq=?ߎ96"zq:FDdTuΔ'AOTߌ5#ɕQ'IӣǏ Û[VEoTeLr%%\!Yo\>r%ƙW"J1>W]AWVEinwBŊ ƻwM>5x!?#*uR2q.f4|^YyE<=8_99JTURUH`țLl}&mQ,UAEAJ[[tU4(qEњ߸A^;ZqTut'fbL\ *ϔz4o b𹣇2:Rՠہ `+uqf3>CZZ=mNr(h/(tkp].v1*J*Lv%ci,!q*&Y> e= Q^18tqs=Ca;Ə_=>B[D\hpSuO|W^`pi}1B` i#`| yI+^0Z ??, P{ / i 5,͊B]̫y- uQwd$̈́T xmF/qcй(f/z/1Z7#[x/ư:5NT\[e }j1hAU˺p435Q M(a,+H=1y=]s&׼25[KPc1"'yqsFyj( =x,h-GF;'n?% ]Ȧs:|jRp񅋎N7jH$SJt:.4Y y=ߐc޶0}&*:~RxKgvJfwJ' {ړK?wP>v?P|w\*1*1706Ʊ 9qfz-~-|t'كǿ1x8?d $]PﻢrxƟœhJ\ADFJBSG͘@H;SpC"zEi۟\1l 8vUX8TFB}H-r`i;΃sK5=̀bl94e5b}L1򲖚^4@ML-LGB!ķȉ􁓽OO'v: X8!g$:Kp>`Lxi0w(׉9EhI]],"}  i g.seU%gJ_c ~kiVA5=;N>yjAs?kk͕2eV @6hHU1A%f/M*=%#) +p1ƻa(> D5p{L:F+>Џ!Ql9A vA/wNN:lIGTEuX\9]PUMdG؋¼%*UhT^7HwE9ۚd*!cS?<jNaOoß3+N6[Y!^16gXN3VfZ(߻O%w[V«^(<*0A%|VP^E YNE%nz<c~4qoY_,4BO=IOJ^ΩN.?9< \(W9w/3T3L`Z~?@}}1G}]ww.]Yo`xQM-J_j^E\ڜYMB{ =Ӣ-wt8ǣxNMM<\D*͢8emCK~EW5q;da`T{YWTwI~UIkoiA<:I{ yA!pN=UQqz4JXOķvk9ێx@j'vw+۳3h{)dOw(ǀ =b|ԻQ^RBnq5{մމG͝В_sݿ~btEcVҥZ9(Yɽt q[xsn0g+0vߊԢEj,]~'$wnK4 PF!v9IQ/wV$e9Sx7I,W~;`x`x5NU @GX-''7 JX7͍I鴎m4_^\c ~?j%$;&fQQW`^SڪbL^WNk8E5qPϵAeڱV 9[vo!,|] ۟MBU"qKܒ/+_@'9B"|#(ٶ|dpI>Rt& \Vw ,322ߓ$RVwoC⼐߰WU~ϭ-?>Ckq_ʜe'G1Ԡ 8xί9ZUG{ĕJ@*G|'hv\,Gc4&pgN)b wOoJcP<'BMcu ٹkǿ!Ω}L?-*}5+(g5;~V+$杲%mM)x<_kUxщE<&H/j \B[[-%y"&o--%[yUvFppk\8ݘ/n6 : T=(Z_>- /tM1cf0",`>Exr gҴ*ʳA fqI/@QKhC.dv0>+sEtmzRs q8G0Yh*M} RTAt \yv'xw;yn gCdz%ixGlu\("(VGϭmol8_F &.:}p9>ֽ"dNgAiߐ?wȿȿ?"_RЌ<#d#8Ju4tWV|1@QH}J{qBBm9xx;GI6_AACW@=j"%_?ɯ;g'P~=_?_rȈ!#d~&#C2bGڈO5!9tO`!1Z6c*"+g(+4*b=.1rg)O \p.PE~9F~M:O_L&+EdcC_N h0\ "?77Q8BXVٹGFG@ VvoG2P'"8ZrV&lh(=xi'iQ(k%XbV|r/ų^t@GKk~ pE;!YIf*r2ʣsW i<P b C8(I%e$Yo~֞QPPH2]\`1KsmF ƠCFABzQYd$w#w#)H!RɄ w fz8b/AKh5P⿊b$3q:?T*_GjkRy"yOJSi~JS=3*G!MYQ c0veiqtaeefoɃvŠcq-58oo+0p~s2͒?? /t6Z:@D /P_O'`G<؁OOܡxpHGjZgg]+'RV*Jȕ jk`-%/B7dtcC̘[Wِ@k"H{EPF(0_/~IBlQ%p<Ыn _pL+3qeJINkb /% Kl>hpBj(cid5R?"y'X -7Oq.R'>G~2] ށ7ONTw&O|SY/x0 0 >s5̃?u&TCk!Mh8o# uP; $>%HPyt{9 ڟ[?e %xžru 2]5mROX%T>08l )B @ZTqI8A{ȯ5SӷJO#@J >Q%el~:Dz\^:*ivT"m @"_'[4;< Ϣm6:V!2Nz4)L!n l Qd°[BsƵKFT9AT>e םk{R/'' k]ap1)x@xbIpyb;؉!س^$ ,~NkE`+ ,~WR.yɃh$ A`@@gz>=Y5Q+Oί ? zzD#Y [Lq5Z++G .Ȟ/xn)uQVQOh8&W"voJ] JE>J]sJ]sJE0"N()jjn׈α8xA .oݳV8˨RZm4t6ye{=DJG wxv1tv0']ѱid .",s)vOm~yFagC\8{;zkx:]`-_$ZZ éM\X`90/:'L0 "= rcmE8\U0םA{,܀F  82[@W: 0pwd12:]zw #-: 'Da_Du"'xqn5!k`p$ 8\ |8^+"1x~fuip{_~=yvwmLJ/?mᚏȋ_޿?o12Om\{ %t_.>1!#;jI$fc`{;{=Wƣi˟qIǁ#0btaD/<+h FzS?X;?'nxaC"h0^EaC^ЈXy-Z^`jtѤZWStOLJG!~Oe#(.ݛV,+t-$j^@Rn%t*e,扡jxI&8VdEN2!%+qpPm(쪱:$>߀>Mctp'̧S*H6~K|NevI!!,YHоzP}U {C-mBpm>P'H E)Fmۼ B0T0& _eHا]>a:M D) ʮxK-,ʱxp-Noo8Sܔ#!Jnjdrұt[,Nw ԜNd ܝI;YA9bBe ̱v:kj LQt(:ҙ hmbQ<9#N>e'$OOlY-=m2&s3Elo2Iq'\I.$w;ŝybm)?" Hހ^kDt_Sua0DàyhCrrǙ:2K=ԉ:8 xZ5(#i.,N C*ji$@b {(\FG$fswKB]LH/գM1&W M/XzNQ>be<`"۲eJmxPGg N!_t/Y.0 Gdx& \(3: /"0~6֔3| ɒ@•UgKJBdž9xѢPGJSL_d& |ͤ'woQ!'MMEr"Z96-ʹRhR765j̴j̔5kCWc3e73U5[fʶh'͋zmmGVXG:@E-B!'B'#sC fa,unͻ}<. ]p Vq!+-s:EI076pRsM yɿFLC/H(,g8aY*(4wt\jw/4x<ֆ {ڴ"u1=S=^ "(3K2p2Q>"!.:UBU)A7hENr,P6bo$ dpz qK(lXT\3‘Z=q T$>|WU:" qQ ESJܕ_/4ݔ^${ LQ^策QTج- O̟лvC~ݖK +h1hUsƬK3WoBKlQ.12RI>\Q4L){@pNmEdr8M5i@@(2zђ/l!̋X=k$xI ڧ.&W^&ٽs))TNTJҤL2ݝ2((9;%D=-N-9b1AӸn6 )QL2OG8lAl بC$2k6N9xJ֥=:puccs+7֛zSXo ;!$ ; cfeإ:)OX*v|pݢG QJ z~ ɂmD/œ!H7`!kYX!b YP\YEh$2ɾ˗ (|j]>aFS[Gc nywT@ B>UIykbS   !ma ~GlRT~pr.`j@#E Z?%(Z;wwvZ;Vya/ q x1-o)ϢQkDOSp!@ [Z{0avAED>k'fq<‚eBG +,2:[kZ&@Pv9B y'>b1L V 1[y1>#!^Ebg#6Pջ1$v+jW#b1 emSOOg)^0SGc8^J4/8 ŒТpvB#Lte.7ȴ*zq۹)lA>hŊ}2#{C@*45D顝xʗLl˜x2C ~pna-wlfcw "IHOO.4-tGLr#0 T HF{i;"CE؃Sf?QV^du,$NSYn<"2ckY]%*%̪^4 'Dw Ȝ>ɓد9`u0Np $m x=D&':m 4.'H}<D  KԖjXC4= 0Yܡ~G5ӎρlP%,ZB¢A8˳aR`8/ϰq./|CuY7ѣaRz\V?AZDD%à}NnGdt?8ykp/qDj?(z.C#"SZ0{HF9şV1*9Mg=¹F? VBÌzW6}͆ʁoXkRCv Kb3#R?3zY4ܢ/6ѳ zxC Q3 D~@G/0(>T`8T[Rb5"d| ץQݯ}nl.^& [@L8G-qu4ܽfJ7f$66|n/1|@ zW.s\,jf D-:{甃&e-[R6M(] ~q0YtCct}`Wp~^J*{H!רMhwb>{ 5%k }*)Y ojUZR1[2e~ͮaCKz&pI7ψt nj}\A'I//$B?1wIpL%<kZGJADut>]jYTk>[m<_5"hkdҺf?644J{T ιl _"=4W.4LRգ-VW*O6j pn["p!:6p(򭀺g)m6X/;lZoOk`i]L+IJZdb&ThSA v59MɛQ}Z=y'^Au݅_e' |t-(^Ug{|vqaDeG>aGti.^K#ȑ˲K cj n0؏`xJ~9 $!exj(L&gC8wN?dtuATZU1,T(CU("XwOؘ` }IK ӉqZ9oAG8X2 r*2|YR1:\L{}n ,k997)x{xkN ޞޚ)7sT.[:f6q$t>wGudȀr7W> /YNL>UW["zdDN$Ϧ>t1ъв!0Aj:ɰj~eݐ&\"$?AɋiE&bU;z%%Jld˚{VHX'~l.\"Ad?0"p>UʈTytஸNg ^A4 w ڢnQb#5#Xe|ebl`Xd.tqAu2#Ҡ; aV'l=(iL6k\ftjЛ-.*+n?7nQ>X'3#e+RFpmw{p@,62qCCnғaB8ʡ/9b` 8]N`,gO3 bs }9GGٸ65ttW`7L03^ݮWOSak״5j$bؑʃMwj3ƕ¸W43; ,m)zgmPӉef"ÈJ=H눯 D|I|>$cD/5K?v (r:" YRvlI@oX>p3ĝ,.zb#tXwي_k}փѷ:zS:Ѽ385ӿy8O2vU(<ZkF٦Ee ]֊65ށYimq}[]崞\-)(\MqJ{]eDCuPx} XiԍZPH'Ģ,@; %v##|J&x+cD .MC-g:Ea{#"1Gk!+E $87u8k>UGbcNY|(4SV.]BfؖcA㽐pE`hEZrl}[?Ƃ[N]Q&N$CH& AE"KH%Rd )YBb3Qs&ULlXKxS5hJ[gNkkk~*r`}A]; ސ~)c}KD!.^H@ e=ótDԮAx*Qda iQhgi b&"Cږ ^se>"É 6; ېEOW bW?o7~}>]:!=i}麋_Ea|QשDdrD0},9V ఓw~&J2FhrV7GhM3`!)D 7XQxkp `Iqހ8e M\x 5ZѪ,0S>˵;$k IҽGhӰẹ`Xxg}#a2%2z ?=z>·gxPG]`][^ZP\SA t0&XMN ۞7Ewmaںq5N^l"5_X i31a&a `ą γThPiIwYp#?YHxuaxOn9vm56 tB|\B"Pج(" K,D~g6&/#zqKH_KIqGbTEJu@9v}Pzl\e7ya,dNz pF2վh]5KAN9=0cRqb2uDvqNRyzKAI2|ұ[J1еc?Ym~5x6N5Itr6.F }LJ@6MU2,8px>@qKc Ն¢}镪" 1Qn<+e,٪8] Oċ .6^dc°j*M'2ZK38 p ˱nZLJD%'">2|+-VB 'Nbz2k3V .G5&*vCr1л{E e)󒒐O%ԥ _wg]fL $7+Ex)S/[wމ_&CU˽P#|x|U$2LI2Wᡌa/uLfgFuw1u_Zk A]7UK(b ?U0|vffU .Ps.i6 h>)K3U%~bllİzqwj%*;2|%fm;ΒJѻRC:NSkȋ{ SQcq^n̆웽Hi!'Fe8 2AeHywUF;I?AViw.8d{1`^s6OVlZ- sm ncxE݌|HxPR MCuQ#8ct5Z߼%&I~4r _.p,% (魱x6{҇lͨCdf|6x`.栣0tQS{"R[ڄInhk6VTk_hǁVqMeMrovxmv=AVꁞQS7"%\0hreTei<-GvL ar 0 aQog@/1*-Ƞ" OEUI ~KAw3‚ABӇt$W_\Ds1Ng FDE\c6ȏI'4Bm`0B,Gk&rp?Gv*+rg0b:,'#A[Oc{em [Y g8ۛ~vhsrSWA@J1VLS%u6qf 4$Ept/Zd:VwH.sdYYh" ՁpLD/+""Ll~CY5[Kع-[mжx{pq‚$ [ 4OliQ:&C+%GЅ!\g+yтeZ__%fFITp7,׻ ͩ0)ww m6~۹&2:\O] 5jL#Qa2svy_B[h` @f7cm(RaJC!)3"i# ~݋pYx6,xɄAF‚&xі?y{ ^p}3`TDM6UUr[h^{T!X}]4jMi#bOS Zbo )ہѾ.KS{B2R˨Z;QK8SJKotBl\u;c6Mѵj kv>HʭMTCu0L,))c*EpI`k=7e8&yC˖֩k.#NG4gc "-thpXrCǺͺ;R-k8yچ p$c"0A.[Td ac 1_-Oa$©!Ӗ_u#t0狓1TZ5" {u nh {HJg#\3VgaXE9,4Kz {wm] GXcP@$E8 .apqTxChj/aIuݱκ-RAvhL d Sl'.pTIa9dHH9/Y՞)6G:vj=;Oeyࣦyxrln_Imy{Њt7E"MHwSݤ&DNٲ ~ M8B`4I7h8`%pOAfyOyiHzIMAe{0Ơ( Zc.ga|!{D\dPON6mSD1'5G:b; zR5hzAXC{,Wc(˨Z͵V~`~|VkNx*voWm?=F5Kٯeqrl;8p&nm5<H(&zd1l_GbICM>2q |"-g P_1e9jBÞ^4'TΦU(&UM8^azй05{TLYBM1rp!H\|E'F˒%wƉIr֢ڄ.[6` сۈXdWjw-o)X4orMI7|%Am*KM,r]^nnBǏ 'p@q#o8FoR%t3;{ hܾ\vA 9b RAẉ`zѣnGqG=?P? zڤ^AeYuDπ1PiyO;FJZdyp-pP wY&iQ"rk]Q0Gh*][e\ԷM-Wψq#xmkV!r\\ShzDn%5YɫNFK>eQ8Qy2ZWxVXb$Q3*6je4$G>{d5ǭЌQ:+9O'Ou.'/?s1Z\nZ-x9vm-u˙yg[V* o[V*o%D=Vf"A?"Z{z> )3 U> IX !uW@,toˑpER :ա~37*c>K'wl"{t~;l K;j%ITiS׊΃0EE{ K\ 7 6FL"<>.8٪w*=$MWAj:qeudweS{UҺ X])ٝӊ(9{fU =(=:0иmbrr,A?yVҽwy!+~oUަCE#2DŽK}~7{IoJhi@͌C=W%= HB^j-dkR䘫iI,5 v:ijG}P1g"]&Qx ϨV(,z/fQW&.? Eńs;`B8ᾷe =" q4IR1dIu^DW6]q29:u{?MT]{HÕKpx7#n%nR-"nkGqCFr o&iVmd-a%Y#&na |j#%sH+Sb1FOx[e hFвadAZ:#fCYX,)ItI!+|a b: m.X&\:WЏh[fՇPJLD(Tn) YXcoj.km!l`c2 {Ŝسk™=;KAω4wɈi)weRxp`i$ҩćB?4?cv_P:ac6w ȖzDh1*X^PP@C-"zb vP\uQ$#Dd{pBtU=a-p*i7ճ%5 8-`G_JG7$v\Wi]ДtixWݨ{ yu]wG%a^Ϋn.ъ~^#uf]cl"R XL[ wDrE"֜m ^r!xU%HnB{D0]K1z Q`t!e=:MoпUyG,9fpR>94#V#+VK&%>6^^[U}:[8a=`/%ս'b44AiCi*Px%\VfmY%[,rJ 鄜R}Mwqr,=I|']10lUS İ*^Mn[Xt5CCj ;T[%NFF 8M@_ m/9 4uz~7s,~gOBxlrIBgZMJeSVm3b^OAxʎ ~WALuѼ(`fPcljm{@U8I5H%  uՑ%ZK*HKqsm Rٍ;@G#ip0PҍN\j`D܃@cĘCF'ݰn:0md_LFc\?:*tǴ)k)M),Lvʑ@i)]q(\1⻽P^R81 6zq4.F"y\i0+yKl j;DZnR[/[싋sX ˂7pN/ ,ǂة2B.fmDl8Xȹ#Vou}Ok_he yԴ׹x+Q M\}}(tf62+7#nÐoL V "L_Pĺ,ʃ%d\+"75-.ɕ9xi$ģ͛xV@" `q?5$]'K!B [jp)x̆F 8aDd&'@}(<*gg\g >?ʿRS\*Q$Hf'X{"c?~cŚᇏ´'_~LDZ`+|V=2Ǣe Y1R7( 84lIsINf HJ62v$lo,|wh eJa&H}{V"Fȼʋ"O( e .O6SZxp3)_$ VNAJC)!$D.P,rz2Br'W'#i#fvo }B+RZdMҰ1/);ڂ*oN|D, !cW̞gMd9&() Idawt~y$V)xDF:BdgJZi*4p2 V[Aju.2ߙ^GL_laH1x x/eL% t\g_~-VS8 *ţ j4&ٹP{!워N<HNf O'kݗp8pLrFdJI% @U$ԵfGN[ҳ׎V;"_s2CAc'rhi3.HuJ>NzĴ jdHd`BR2(DVxfj&0{(j~4f%G#ʷ"_dYjwpV@͸@Ą~ٻ>hT)aUq+Q:b@Iuj> w *>TW#<Z.,__7f~1Z_Xd^,n' @; ;G/8{q#;N.,3V?IYPB(e3Go; 4޴Ie)SӢgh, a|oGrƝ`DQ٨2jbFkx/^ge/>]u_^7OǨ>Ӏx_ }a/S6s#CttZu0x_RY&x= Ha/~ 0Fa6hEc0ʌӽ0CB:MsҚG$]98T%s|K}z9jTj PW9]7 P D/b)Y"`5v4Į{!> ]bwō\%j L,q"R>R>`^~64 _LGtdguSǏ\ Iq#!n;seC:!q0mOjxƇ@< 48Ny9C_Y`^*82 e=HpkqaH+% "H)hU<ɑDH$%ys1!Tf8c-BmjH" Њed],lT$e@A6r\F.Nk.п#'Tgt,(ƵG12 fv!5M<`ƜŦ2L31WދHƅwF><_ ig:X1.7'X,Ri0T1lx D̻9pC4P5OX{Щ Et@ uR 7ex/.^޿{L=y Hax/ }wٝL]̊W ,Ġq\^JlHn7e3=/ i4hSS_hH܍S8.9 &-(Tӫ :>ƒ9@GV0z<"|Cq qC x`N -~ s 0Ãl"mbHqGqQwĤ]PL!ǼHqQrO2fAwp5 QUJ\ +f/ Brp)d <AK; þ:NشE8.L𺒊>ZVN2f -0=ʫ`Cp `>% \)%f6ʎ0-$h*56&]L\QxkE V߈j xEQ-f%- td0wf9XD$&!on^.+qٽ &􈍳oA78pozjQ3挰W"ȪbT8p +mE 08#@Nٗ QZe)UJ ld;77Frc`nHfyOҽ>5-wHx0R%`q/=4&5aËUT "VJ%W4(n-'d}$) %c"0̍^W b4|!Xg<~b;`|@8_ҒԿ<‹fx f'BG^_WxCq*qN%hy/+@ !JĤ"K'=K J䠾>Q~d{3dQ<%/ڀ#vZfפEOgig؝tt𘰺}A#Xܯ \8y|:4PM3..V8J)w% 1J^]ag{8 ne圩"Q N['Q Dͨ53{b+ uM~T+5LTwk#e&nfQePNgAWRcuc Y*4V򭼽\ԛF"T-?}4Ea d1AKتNZze.,o~A |4Ѩb57tuNe} NJӲrnb/0?BIXc}B!c^+RGsRX- @ AsY|k3HlYfp/{1UO= rڣ:hzsns=bS49= X*p<gI>C99 <"pnʅP2Az06 S"U^@dPzQLHroțǣR~.~.Go#Lon7D uF+y+Mj|ж]%+y@P^#g.dOBRI\PG"ʑ_L~iX!a@aHq2 OCd8)B裢3 D 9%)BtAHqR9 8)B $ȓ]|q $Xo,dsna^4S<0I]7Cfh"7C1+n>oNbq3tFq?0fuq3Z -n!2{C8 "pf E dvA7Sq739/ uc\CEQDDG2fGqQ|PGqQ1G E\aaK='2l)ǽ=1 Lx@2󑙆Ф%z`>|;\}P{5*==)}VxMVD|P9ˤuNKǮꠚ^]AgW.;-vM")F0Oq(j~C=hl}Slw^Sp˷)gN֊SNy nd^Տqd.eب^=X*LNZB}g1(QԷ:΁Ta4gOSqgVn؉4!bH8'?Sj|`8=]z8(N<|wQ&>O< xọ8(<~QyGCs8 p䑵WSȣ8(EҙBBۻ<}'v;oOSë?]rpa7;Gy;n`sIJc5 . ;a-dneo X(: OXE~n)([#B_bdV%Kk./FYR$[iZ(%/3}a2gl\ߖbWXp *821V[FIg;@Ss <}#Do(䍌-I wd?ա˜Ui~j)P%qy#S1LB h69:P3b OV5 F%{c崂 +kDSҧ~PCгfK2Àv{TEӡhaٷsjGJY;r7&c1$X+ uAuL`S|I$ b1!3A+$o/Gq?lM>ā&y<1IN%n 4|Ke2kc܏gt_1B׭q!ƉdW~Nӽ Wnإu ;ʪ-˲+NBAFBN.cӣb<`YQ׻֫IJdk_M;N0vƘ7h9HsNVr?Hk?m1Ll&);Œq=+5EkڠO2J#.XUe" j߽N#'c'fd3T-3Xfa9mxYƋ,3ivfՓ̠S1;3)*gru(p^ʸJߚ+V deEj?]U̝v Ĺ]k7o>EQЃFl%LȹIZk)b[{gwt@#3m =0 mLx^p?'td˳+dP έ ɢS-TS\Z> R%Q% ԋ$Vfה`ߡr2ŷP eyOueVЕ ]^ueʇ3ӕYsldO]y2[,&RAY'*}CX\S yRչ^uNҲ솪e9$@َ;9\AԔSHUl?u#|lGvmy'NJyܗ[܉wgꮿ_t")ʜ)C5Gdw+7JZ{tߝ{~wcvY;rM>A'%;%)o7aBA/\}QW֥r3/?r3M/oG1(au:EX"NVg3H|pb1/K$:r_ňò!b yY !b>> 9VaIb9AH/J:Q2ˉdА4N1 .KYr6>E^C| >X`M;هd%"Rh<8(6A(ePF<#)0fC~Z&/l-PRst$}()%Ҿ50x<0m"_$ʒ;Zn3i';-C P|,K7띍Bշ B@u@o !%̭'&ޗ+#~zlpYi]'%1L6]-1TQ,҆Og- |Vx7 Gj+FqqtI:VĩB`1b#eQ>7$ne *WrYXVCS8TAt()&UW*z&`X)v?A(&n>&1|jr"bG4Xw#<7'z0UBI01u`p8. !uQN ]y>u|YWJ}UsM,SX)Ykn%@,Lzwm7E/&c9+BDTJ\&܊0Q#%U$Ow6ӳy O;T2"D|qߥ:B_vPz!3ry4Ҹұ7$ %Rs{ѩgh%tDŽ &_R%ĨY#MàmߚcViJkG H.rL`['-v8.{7ձPYԏSJ|2P6,ENTcZ%xJ QM5Wu?3+-hc:E9Ӡ 50«' \󖶜I ZxIM(;@#Tedc.w}Xaf/#)ԽJ76Y+YwVa""2r\GuU|m#(Ӫ,}ڈ+̫-7&[I=pJpJ]m4/ku+ $9t0[>><䴱GN=eA fn&]nRU[T4z]A)H9h/b I@L NP-t ڦj48g UzA?fd) Eɮ|>`,=ԧ{-bڱtLI/9JM Gq:.4yo%%,>Mh놓Rpp9JY~ "刲~U6|tc-0o*쁖4͵Wr"snQG; qV 3sZ:w1x64Q>gt -m. GmoLs& BݽL%9G` lƛI6)mo%+h!w0, znXX`͋5(pۣnb m
D,sF\L~\je[@3_慐nmr.|0_<`_5&քšPX k” S'ÅA h$4xi[F7\qд$ Z!ם?6WlH#[z'uA]w5t&A SHBMлozeO` ߣ'mыV%f  +b~V#!;WFVK %\ ]m :ʷw0O?~τ.@Bj^FJ+ B^r>zUr/]rb'}&Omf_Qo'*:HC q\f $yt Q#q[6znIe.n;g s׏#K ¢XLN~8`1S([Al&42`aJ-7B6Zr4(r>`Tk?.^D %n#(45KçiW/+Y*r5RpH*DX!Mf"tH$yv){o;;i><.<}`a͔ ?xuVŒ®m]SL۬ HڝFJ|,@qR)3ܸ4ؤrHpƽI7u~A.t^dcߑ#÷I nZ`AҀ#alHcD8^kx-Nj^vDFHzr ]΋ x1K0&tDf)Qrs1Q[W@lBu!XQ$ ط|`gM ~* hHX]9|M=E ދ:0jc*f~XkΏ 85ǐͤ *NVr ]o>d<+|;#⌣,^o8wsn.W3]͕ڳ3֒f+p/&L〩׽u~nb\=h[A/k Zj\8&/°CTj0nQ50.{T52CAOC""q'Rik*T`$ML*l,MW\խ41~i)YwM>hcGZ[aŸ7^RqW&#W]U*Yo6 'n4Qw#S^Q(r||+9>0aq~v˞$&Ӄ{;IGG0L;;`u~$l$/0V0zS[|ιϧCr*|>;eN9{wJa&ޔ3.|#cٖai! H^_jQcXi+DxS!R:ƒ%EMprih0bb"=1)9zk!Bg9ѺLyF$é=+:˃ +t:0$2aʖ-nEjG7Ѕ{acot45<$x ~X $p10vFA%0s,/loHPb]"rA/~RT4c nZÃ5g8qz9Jgu k)=.zIR~}pcݽ#$=~h|D^@~8Lwcx 9+@!5c\}kWdw,=4 m?>_?DǷۇG<*G{:v{2d?xO7oߺj[ޞƝ?9.o;`taog{w` &h珸~ɒ${O/?!,G#BG{6i9ڀ&ϗ ?~~nڻd(1x0 p~~t$  a9VK&1+E{;كЧ2#(O[H:#}x3m #wYyĝAƉf#>#}~x8__Kcp(N('y](m; n_p]a obdI:2m"nc(Z6t#}f,!Zly,ɍG-:toU뢒tjn~˞5vJXw +T{ex$:?K:WlUe0uo/E [t!jB9H%o[Iwo77e=~ިv:)J7>Sy 7Pln|=xJ )J[Ggl)rLUրˣŁ[u7XĖv'M.曷eRRW#} ¸ჸdKQB[r7)gGaQFRW(19vp,TPiV[RChēcV"%B< `HzG S81ᅅ}E5N['lyS(2ɜ|gBXͩꚎ~i f!TP=dO Â2…E{+Y]=".bhS@)%/;pS!,$VV .S{oy9Js[Dۛ}TJ>8Nurn1ɆW+lkNkZZ? e+ZIQRpMX 7r3:S">Q´+kW?Zהh$bFo1Ͽ(,B!*H\YK 8?#C44#8aO-X1X1X茭^ӃxsA00j &MϒY* hWSJ#N9bL'bohC,6IK6Vx㢯߬:ZK:=."%7OHevYkA\$:<#NEduv#5ئ )D9~%G8lm2R9)O){P**n4u:}GSRY+cPי;t01C&E4%]"jM*`,-^?i?#j+ĊJ&U%䢰䨲䦴䬶䠸䡺$*/wR_dQa&PbEdb$Ee;*'QO&K]<4;($ Lj+݅O1aqC.X=a cNxdulZ>vv6}fs}IWjg\h-ZVcҝ2o\%s:QMʨ#fΙ ǣy<].G{BTAfKLOE#tδr܇7\I$Lb|r :*=X6b}|(jR]!@SdVBɤŏn܉cDKsnieXpK{Rܫiڒ^uo\- "6_p-ӿ^W)U*Ep"WUv!Eh`{#êX` ?SՖiܔxJЅôtOiXSj~i J7*ɧX6JٝayHyǃ+Q<@ Tzt1Z7Ǖ GlNp@6[Y[$<W$?͈~#cQ-c5?[<|pךO0AL fՠaZ Xq5;Lzp/G8S+dsnf(bT웊}So*M羉횦7ұ_ I aԦ~cjcA8bgܭKq ?Gt> Fb֝Ł[ΰ*+K!2;`cyU?K\7OHK@W V\vfx8|tuS(yJ{m7!2hTK=Zh!9Adp7x {$?%}ƋAɎd pƲܘZpuE9l9ٍF8\"G꠿@f{ݰ{INQCuy1;q&pq)}%HQK)Ih-Jhp*}Wq 1DSCđ/K09Ep/Gݒ9{I,Qd$G"W">b($db\FRO92 mJ/ɪ- )Z q=1wp"5YpEr "5 zEDɘ7o3Ֆ.vQ^\'4 r0O WĒpKR'TQ}C"^?AX&i+v /W'%wCTkC#w0WkkA*iTd ۋ@ ިkkuQypUKj%@V 2h}?;̹Ҫx_U&E::69qZ5-2Y햇1bkqO5:~\R˵x(֔ŀ3y2|]=P="rj&m)׎$)->ꔝ)*yzv7Ӹc^[iH;g#+1Ҧn;.qpJ ֋7S[""_y~_&mP5+90S4j̠3A1T,z.I|%t;/mpjD)q~`m*DMED @& '=5YT.YlZvC~B;EnPle\%u F: i :q %۫#?DTǔ`&-U7:9AF%2]zc@DցeH˓Fw#8bOkZ_ ~2% V7%zb%A{Ld)&l^vφ.'n{}!)A녠ਉjdF(J':`x.7–cCj%$bV-aX EGIUk\ًV0!H.Z9>Y^r0uS>MzW@FJk˓$ĀE&m@&i߆,gdQ+:|A[C07XЊ_$!c\y=)(ii["{ݳ~ءݷFв !b.?W'Wn!w=+鎉O/K/x^Av)E0E:4wHmsHDݕf.jI,ɤ9$HdØR`X-[*r'DŽ3FaU y-͢$y\vfqgRX2L*8PGXi;,-E3A9nYM.@|g)hn'yؕ9FŠ5Jh1&Ik,BCb*#B9aE/ᘘ22+Wv~A1<{=tlAbn`;EloJü[߿}^Dbl?/57RWA*e$6 =J }S7~Ab[=/+\n=a$a]aHʑ \A?%ܫ«Gp15Bpbe`Ϻ܌E#RTzxDcTR@@t9GtՕ &{ws &g["餀Vu *џ]2C?{coQ9YK{R%E*-UmGLzecIfz@;UvWo:q_VPhJ;&JK/a* Q& #ģYS1Q'utH*͑xwOCj_S3ÏYM*X ]-{F"n(g wof4*DJ 򪰖H He\lyi,9ZPZ|!J?-~-^'xEX6\- 穀&g](9U%īC`_]qc cG 6Qo}`R0H.d Zŋ|-][NbuώQ_"Zbi K-sIS@l`~S, w֜ EI[ԊĴ887MD{ 9FUXB+ԸB+ԸB5N):3% glyi2fGNm,=5SCۦw#톥8 S>.KK%}iI4sٶ%0JQ,̸qx)uN]j1nuV0e4("%WCI֚Qk[QQUuyGzQՙ0Ce.T?$^oj> o6wgݫP$ O H dKYx:j{w-`|cc}8LJFE?F9)Ri.6Ŧy~6&orQEY{[FAuw)Rѓ"O}WrqAgb&xPlъn{t-$A$F3Lj*Ig(QC &0RFb #ӷdyU:0-, ?ϲ,, ?ϒWDRIBd~466DmRYZQ][d7s/!r{V7v@_;7o>ݼ vK= H<ډ^ La-)A@JP"g`Ջ OXB|Ca28]-_,ILJK%+teCRH)q:}v(B?)B?)B?#/DE!_w3mvi|@%;[K OZ0o;jikxw@ihe)ap,ŭ F "kYr[0Ԩyap޸bQ ^pWa=1'Yh)YGU6:Sb4!7O;< !d Dn).QuFYKnav~UYHXa(EBMȽfm sf]|N9&a 'ϮẋyH\qGd Y` 낋Gə1V*{k{wנPʂXdN$8s񡋥[ZTRE)+t :a:B)Z;w[Xo FO깉3K-G,og}˴4 Q$B^z oƏg LRHAvo:`pK~+zR6U][^@s`F"3 񜂿4UTB )H))qE>d'VK)A~?e XcRa<[`8zd.C|qZAc󑳆mAFY&<=I HBzunT UbRPш_AQĄ. 4рYReqi5?^cznTKa0iF/G ukba.uM;) 25&ޫ' bRmE|Ԏ*WVsBTnl0tz|>׷ӡIsY]ZNGY,؇ş]ſOo?'>t;Im6ZSO@S̠+ʈ~Y},-ϼL<2XE(yN+v#7qz&LrAb^Kp\> ?':+e`a`!X=[՚J-X;2auj1 _qOq$4Q(jGH?y_.>`>+cY\ΡZ/ wa sqѦԌL,zۆ/ PD\1'Fkx)ASm*HALV*@">MB \~(^hO. Q2:$Nz:@.}Ba7rE9G|(@j8~S޽#;OݟQl2}6DH~(U)?R"ٚLa`pR@if# lwR[%#3,h :( ku-yU/oB6$ެjǠ&׽G*1D (CXP<'"LKn6SǵI\2T1ͧWR 1v9,_t72hKCJkQqD6Qҵnq]1+??umV+nx/PV ` ~fز `yɘrQGH8WE3x-)Qh$A:9/T#Jm8Ezj0bkhk,}83Wؿ2AʾћZVvDD]VubOA4ǜpQxR@q.B/o?>5߿g=ngyI'O<$Hakӿ.׶KUzT,qb/iXv}B'L+JC2:Bg9C]N8̹juFD -+9iOw2 )~_BABt0Q6Pab8>}EP\kë?b5ټWNw Ӟ >V߅&-}h;? q{E)xB5'eL`'76 Y_n^W\ U4NDP! (f}nobhG{E ;-/ ~z p``Ծ? 7x52g䧟 3-]Un+wW.l b݊˭+쟝?_M+U߳{97Yzd^ٵՋd;]?'띑]P?ư]IN ʧ"pΉ^FN48*b~&3PnNܣp5+;UY&|lN~' an9Jآ[O45Fv@FYm,AH߫;EXĄa!2{%dN]]YtFW 6B:.Bc;I>$bN`(s0SydEs٦ŝScP+Q9 P"i싧Dy4{P,?|!sWo|K[kض/gh0GqHxUJ5,A>B1qPZшm)&ftm vLaaeQ_P!F,?x'̟DG!pN4|0qϺDaM ![/zr ϝETg[Nhb,+pgto8 7wۍgNFV3o}yXDn-ߡoҨ_tH_X}grO[{ޡ6=`gtMGlHzS‚xw:ipӊOq?)wJ3*UD0\l*3؃{usH~b #S<1TQ3,\(xs<c-ȝ0 M- |- biBNb&mD'bVc8C0z6K \ޞ|@֐_t^^;(}:!^C -# /{vX_&vGoEEDǁxMx, 6nN䖚d}b>^?F{ZřTUReS߭NOyqxyz~ AOhk>vo (F/ +~S:-'W`zըGX`qh9#m0W-}E>,WdO5z8I;-`GmI;NZ0no`vѡ>$]:콰8?3jO=nOaIFT9Nt"ţ(<`i$&PLoFWC(XjXu}T@|m#bAXŢ _0JyC07qX E^*E<>1i4\~:lq:9&/O`^7N߾$4>=lxyl6&wrII8釋h]4kӳ50%y]n p8z>}z;c9<ߜ7!8l\}| aU''w|AO'G8# F'GɿO`k@$W_|I?T|2&Jj}l|@v s@wo+O>Qp> hg[8z{ؘ(AҺfB J'1&I4hrjigΦjoEUc|SyXuXn,oʇ:xcüQ7<Y$^| BxR&Ό]Y-R)Thwu()_Gw=f@Z̡bTaa)bCR~5G!,lV,43*:zk\LܨdBd!M%?BQ'2u-CBXvSSQ%ennG_ bч{J`uT"_~^nfyh Rf=ۘJSvk\N.n/gs .<O ƙsǶ3X=wڳ|x1gj8OdikMD /YM]yãQxK5=]opZP ۪){sOTh.XX^BP]F^ֵ=X b-Y(: kOx7G䉼cbb l_@VMBk+7`\*zdSpti]<=B- #T fu-򫝀엻}K֤ϖ`X% gPTҺ2>S`H.>v`G|\PԿss6: ;$.´IG& !"\0O]X"h J~jD ,+QZ\8pi[`qi֝4/O.6 "xRpAE^w&r@qU$؃_!JhŃ{E)C}(ؙ[nd\ 6|wFƌ΁pd6Q2U%ɣ{JF:Q %&BgBS*NtЛkGGv rT$;6YPH Kz]̖ @Pэo)mH"kn(xdumVfyJpމ97J" %4zc:/VE놻YU+ d/1 ơE(Vw `AQ;Ëd2pQ NjB82}U(tMbط]2DY3:QuFS?ӊ39GʗS/}0Nwp@Z["%ɿo7l>jvEK5U] pVyK_F@+ad^h|X!?{@Pu oM,z=k?Ilf_0,BXw" 1`ܪL*pczw sJ-REïǀ` r5u83 5 ǹr}$wד|*e][!c^,5Բ2Z<5'{T/" \R^qPqՠF{Tc^rډ>ȷ/@т嫃&!y?X4e2vzEʞ\hØv/tBTq xT(5?+!</&`1Lߋq -=c @f5X IvyKJC|]F,ЯrPw!iAb_U{+<x*a UQ 'Ft>aAKӞ$KT@!Li8,5IF* C(0v=~2:1{?.Qt5Q=COWP5ѾLXE vmw? %#&-}h;55? zۉw{]aTƹlC!#z"-*gV S5W*J&C+OdypJËJ%T.+1V؋ʻ(, Л9l SL,':!ĈYL|ˎg,@(wRq|EBs^X8xsF ̓f-;[1ACZGpɡbd{;x;MںKZo?XS@@9K|C*!ɍ"8pWVW=ʐu IM͆EI%1 yR5tTf JO=}&l.);&ur!nQ}X+eCW$o`C=ޭ;2n~Aa`1!1k-*mA[$BŧU.ebreb>,p8/̔[=_~& cy5^T:a)1j{IC#Ak.8'&R,iS8hxM,'©*CXzpuM4J_D=g|^|(XYv#TUᖗjbbWT2TÙ'gtQROB/ӃB 64Pto}&]HddvC\)]FJ>R@a1i^$gԙGpNjYP_u ?(̨eAт'5.-Ls<0h5<͆ϴ#Zr1[CwJ/1g<].NJSx@_u)ܨ7Y3ΝTGJԗ5,;eމq5fJWK(UqZ]MiZEq=K& 32 MM}9`/.&Ώ D0r q@ gKN6x* RxW]UWyU nMW>7] 㾡?ax6;9x!&6{Sʴ]E-yFcR2O2OSf)3ʌ?gy-ee4~L?9נ#Տ Z^CRxaxHiG_|0b$Wþ zVD=4(I XS>5'/P1 #:P@$@Q1-[QQ]D)RTQk I-7~xFTc\! ”4Uf5|Yl*#a,AK+|+WF@g!_t PWWU(D2 "H1Z/ G*T3`T3 ee(f | P+-\S%x2 x^͊SE-.oF\x)oK?e^y]r-ur ^!n46m~hw %u*MiySZޔ7MiyS0nJ'OSTfi*4Y,Me2KR4-)4]&Zqe]=r0E=8 m1P~č$g*`4cf X 㐮brE)t[M7 +\rC=z}@7h 6fA @*nͫ§`Yu_ţG|!m'lh!R$eʖݤ(G..9k$u2wyޒFyx%Q_~4M%ӽ s{j{E(7(e͏}%V@j Z: 2ȋ "Bqi fF *bITc+RTzoǛ- ox_oV*lRjD&2sIU/gvT0ⷅX,:!ʺneAS/_݋:Nȧؗϥ?O4?\{˲.˃z՗Hz]ԪtOӥw nstN;͘;yg|Y>y!~O';g*HM˅M62D &"vb`HmL]؇ϭ佚}yXg @#ӡ1ʚ0za7 N))SC(pt}C$eWer3*֤U1ˇyʺ4 #kEo 75|wj0pB^l]et;x3+-zD]XTH0Dͅ~`'U'e ' YLi |g,T&/Cℾ_Ŵs!,rty-eLT_vxb؏hyX4S>8W%?}0N 18Mcp< Fޕ/2*f.\KpBMt;Hl-@r Sg?-*F2 j,ˠ1-ˠ2 j,ˠ21V{%Ѥg,\xCe,cXX2D3b%s$cbubDj6V]j+y4JМ X@dF=(7l@x{2ݑk >m!{j-) ]~H^K얷g v_k4PR{ Ō&gTJJ3n2XLT(T eEyk*/K&ek0$̘x 併{koy?aٷn#V !rQG>`MѾ $.`2ۨ WA@qp<G<|m'+Ftm!tS6v jem 6bkX"\FS9Nm/ =Ò`jl8`/spxԅ?d6(_D<ڍqa">,~cG(J!Rrvo PhR˧M=]h1ؔUp|+~A$\&. Bn t?07~i/ ;24d??oa$ K?D+^o t0֏v.Ɠ[uvաUٗӧ´D`xkC@kl X^z_"sERM'RŠa &T V'ӗ@myΗ]e,$ ޟ&,=|B V0 .='Sn5CI](3Qt?ȸ~wiO[rϋ#҄#Џ+qSmf2WY#i&z ^;}ʹ2/G,\lD _!1QiKȮGEeEΟI'L̅h%8"NѾ}NJcICd7 h\vcp[87C:ۥ>zV*cf0ϫ5y"`-FG:ԡrB@@V]% 2jYv 0ϒ`$s m`:0x=JQ ]~G7O5, 9Xќ =^kg47Lg:n5`vl֍ovPFC&BW lzYِ;E)lE`~ꃞ&*0+0O9MLEӨ~Д1bCڏQ;(0fϠ S7:yʼnTmSD*3#QO}c#'i $1C\H;~ΩygJz0R`Ous-(~6rLIIs_k]U-6vǑkv3#pwuzwfVw<t{NSsm볡~$;w>qUS{6Ԯ ,~K ʀùҹU: tnέ[+ua2Z~y,(M󳴤)YKV=y4gE(/~Q|jD.T DMv{r~^%= p(EOrL+C&/R*VX FY#YSΣO&Y;gIZKgMcg"gqR< RG :{L(!XYq mD^E^MͧNL N@ؘEM fაBt[-7 ` ~dT$"d 3dy5 7iF~ Mcc1K/OY-z\K#qd%iͩ_m+]/a9g ·LO=ʦ:i l} H }`T(EA2vWP}F*J[qdjCSuhd#jF 50R%4iyU34h }'5:Hr2? iiTQQP;aޮvigF>aR}rR|!@U5 */4k/ f *w|I ܀CeNVFj* F5UDNR EH/_,,/mEDRi. 7ny]!ђ.n9MV䴞iN9֖^$ŕ"hWg"7DxTǶbtw}NpBYh8xN]V$uDl+#nT ebKqӵ=׉[D*/]C1$LͿ)5\k=~7uP}w/YȥlD$٣XKڄFw0ǿTG k=Q9~ڑ (p,Mݠ,䎷Hٶ֨>&J&&Ɣ$!:k{ U#mg쒦ƒѭpl,G{j!ѻVK-oGondo`~7yT~ 3W$]8*C ;G_r7+^SSC7rXqd- 4JkڝĻ%H\0Uʵ#&ُvc.G7pvQ3# ?xqs*(8Tpe@kCy~!EoM:"rnaۦ!J_tBW %OD'Os܋}(}F`EUd+havꎐC!VoS|Q{]\3(a?ՈL69  z̝`neVk2:d/%qnз}27H~Gj/Hw:w&ƪCZ@_nac2H:C\:?q̅ RJ*$W~=8Q Q <pb0V }e.-k"aIpQk,MSιt}0`z.Y:>\Y;>v|3x0.bi5S<޳>NOZD-w|(Lop)_g 0~ܤ'Pl4AvGe`OyP-Kؖ%le ۲U–֯&/`{_" u0ȋ*F܃YvSj5O12L> x{% Y4OnS~US<(m>Żѕ'(8ɯ֊h* S\\pbkS!od)5jhrվ-:"2>\YeOHd;}!^&&ps0Yzјӂe\ה-_`Вgo{덉wp@݋BC֙+˳1+ .r$"_d1nL1+Q#L=2f06R0e|`QsroG/gb< 6?&Qč~a@m%0ho0= X0e9CM-+D ./إD6Eʝ<:(QiI|.92 IӊyC8ӛW~_%#Rgo;\H(͟-^+g{,o87qu^4_ձ&hx>ۤ缡@_Xh vp!B*BfۏBjRD' [@qyh*Z#?H' /M 됼[[1K]0&G5>%!w籷""3_Hռ i 8! "8hu"53PCb58bT+0W n#XƂK,Hl0D (c!X2(c!Xyc!I?sE`UTZF=,yA~p~l֯[W>$q:[~AD" ~)r>S;cZ+rf| &vF9(eAp/póc9~{ c,ǃϥm@7+p|k]/.u6nL_" H ){+'RX\Fޒ.oVٺK/{ٺӻ2[CCiޅ>S dF行YL: o~\Đ)>p,JYqfVi[U4ҔkڈGnj@!ϵiyH響rHtQ0@_Q2w)wW_vD6',[ LQUfj?3 e ҋc9Sf\q3gβe舵]czҙ2Bk9DE}7_Q.SBGH:tKb:l҄Ϧ7yCw?=CN'I5b/Z.ZΚk w~?xV2sYn}IˤO2sj:'aՙ~\&u!:ߘݤKYTݚ/:Yˬ+1$@3;gx1h6aI_[;+X<{S=Sb^8c%[4cƤ( 7LWc|Xz,_=.CX>v\ǎx:<,C+ u\AϐY4|G8JPxꧩ2i\ɽ̬cԴ1x봩S,$$̌)I|Sˏ7 Xy3SYY`JV5eYk<{Rf#ܢeN\͠S]j+ IxO|jѦ6'6W]$p jT(4>w=2Pk8"hO/6ÜZ7?0eO^X _02kQ9CP&Bf?Q<8v,SI aJJ7tF0K'&i^iĦʢ0B ʙLTL0ǒyTf(/Fr/?E6y~ >1;eNSF;eNSFyʗS)4GqCMzSެeevo<ci:nOfU#Mo\[Ȁ OS\;+ uv kW1m)e`T >H]]BKy W{6- . [ ZqLM&QMje\k15f;CLMe:&ԝ#NWWj7Ud9q4( x(!+\>踋lSE^dD # Fcl,Mj\QTcU#l=~ EnppԆ:\plyl0ёʨAjd5+ꂘ۹vډ3*gerIJV<yrn&˖"\laQE`}(0`e$E%t#X7,LO.nŀ㑔1Z]D"*'ȠDl=YRu՟ fzl:pȘVQĨLJ,, .n)#E+ޭ,~8X7ղu(M{2{1Eg1 qB+Eag*l;b)iX]T`h{߁|M|b|=cVƫka2 3*GOc9s:Fҕ0=ͱd#h %ۛ\pG+~(t|? MȩhT6^(`-ֆ);aiCc < zjU!I{v uT\JO!"kuڙ@,= BC]+P~Z-[z$Q w#27rN#u\ [~<0DˢL+>g->Պn5>yc.=X/CK*diZ#qx켈ߒcVwg4<.o]823:bL9.wYH҅~/nU OLа1zXFug,¯Mq]^w{Y\<ͨ@^7 a䥔Ơ_ (b~(X9hQ5U8#mwf?:ſw6^`C)`") d܁" Oꍢ2ږf4<"Δx,e|)V".ml[lӌAcNj#%FrrVO]`;TD+ԯwJNH ӕ!T.j]o}4S̆!FKc cWf{L'LCƅEK3!{5LDZ|)"̨#AijwCRnPcYdh/7[A3ޏ^@5b?w00< DY21q ]:QEY`-.4&j1b8\Po-X[v3;ևQ뷓FZG' ]z|0lvlQ,yh} ow_l5ٞ>uZǾ-12~vG/vdה1mb-8w wiR%{͊J dÎՄ\%VTbU;c0vYDQ/ߑzkIAyҊsP7m{ +mwp@ ,c\.nt)͂/8E^n|'qHE%$Xu[}>Pf(eH3e$d&Xy-JseH2 3Sv,I=%1DRfX XiyϐrP0 k]SJp%B)+JyBkճz钂!Ӂ?j1r0țlsEUs qV9o3D1݄?FQ/IesCAk|#7Ragohf(5-fyVxbhrV8}p~/\Zԓ8Ӷ}T"Lnx"}|&1q^ e5&b_j(`|EktU\Bm[(ɂevm«;d0WZ.ԩr흮xƭb۷kF:րz~J^tf9nute[8KCZ+qE٣5?Di?`,me3KQ:fD QL1=RCF#2ES3r" FrI?zk'𖫓|OR?nIMlݟvy:`P "**dži] M\&ƇW%lִ'L]1WK8|DN5V )곘x)$8+A?o#U2~a?e`}X_֗K'ed}YY/k!3@= _/)#zF zڷܙj8pyTyv/vz[27ڥ1Zk^b'n {CNqi楀"ǯk XL_EoG29(=U4z/z(yCO  ]'c (tK0, . w =/̞1SɥJ0 5=;3B$XB}a18je(%ۊB|=$LB5{T^8Ff_6?hbC뢗u8LŚK6Fr.^WL+DĜj$UWg:г+tO'>N_<1&OKt3::lLE9{\-; mLj`٦_#E$X17\_xY} 4c܏nL Yt^ŏdO+AFltU WiUK R,hrlRZZVZh[FzǮT|<)lO69&P KnfJ"5tgt{ ڼ6my.˻.w7X TxNY2y}(=VjBCT,2[fa6ZH/6Q7w|LBi]?olg|E0ѼЯșw(& 5>6y  Č@^#xBF]7T`RIM7cAt,BQJ2Q1ɤr+َX 5#coK/e`(3>ֵ9$m-w~s6F\@ fVX.Aau3t,b476@v`?4 c|7׵7[ʰ봁M^t6xm6i `WyB6^>+5|df ,87 ??׀n_ %t)/[5-Qy~ʙs D):+YD_Ҕ~ x|}1N+}]uD3 _L,i|d*$b{0FۣOi rՖq '#cy */g} *WtR./nh8j`h> A"$զOU3Ch\$ v $ʲ$1ّ476w &˥g0jIblo4q\jKз-+tN[Z|0͸ʣX9_LC+ԛ ሹl(eQF?+Qb¦1F qs IHƄw"J8~ͿcsH_ݏ6ם7=A'H ҍ!V:D|F^CSW 3Z#Qb?GSF"}&iM7|B$1&2 w*H18Gɒ5ﲎ6en E}a%DV$ '֎>37T&,~gAUؘ| |# Y Y|g1ٌ+߽q[*ޤ޾AO iD>} 4p8+?OhLm) 5RᄚMɡ4Yq`sW r5VoajcWCTݥV;eԷo b=I^7'=1'@Ÿ#ejL3a|SG8*'ɐMIcaUhXHߝ.a溵5GWK $l`Ǩ¸Ȑ,cRDZ+U8:G+G[w4m+ }t7L6wqgrX~cƬh6H?ɡbQPdN@Vi, 7†()`RFHJa-0w}kJ[.]jX.ߥ?C4'vu>[-/Tm J[[$L>6oVj𦓷tj5Ѭ]ifokpn!,]SV1k X2\p| SlB4d C/XP1r:ơ .`|~[)rkk"m+~k-Uq/L-6S {yq6i&閃uj4MKӴ4MK44YiOqS^(y/3 JZ"sO4@o0a:V=zJWY&QPމOJLB*ZiϮñP=vG)C6``鐝C%2뽠NǞXN}7?,~Йd~ 5=V팡;= ,\VKEge?-ԄmʎX~t”mkwCM$1lcY}I:69c C(v PjW͵(PSvWh0TZ~Rp(U8) uۣP%VǺ3 !1Cq!5& ͲØ}eT 8foe %ܧ{{L9)dL~3!]C z(Sևnt<<*|RPU8yiD`߾l^/!RrYlm~".ΰIe ~ZS+gmzХjt}aTDD!Qb Xl0}yӺvG1 J"#tiЄ9X;L"ϭF[$nUxV}%Ң| _A=@3L͗xP VfïAZU - g^9?4f~$Hŵc8˷ږ7y濃6z+j8]{‘Dҳ* 3UPUpuaV>%,ͿxUee1ڑN%F3D!2 C=ӧ@31- ̙i:F:^SJMObn5W@b2e)NA4 6-24|7%tձp`(q̬< += Ow4=(+mM1c\w^V־0L@4v`+qU @ZA]۸GbVkZ'O*Q1a)̋%WTOGyT/+ SȊ_!>\VjLfoP|3OFv z[[4;5GOVYX$3a'; hq#yM~WDmKBM{kio7.-jtŹ8m32v$'ގ6vE}~%RRBQcqe.NJ XH i$f9qP9IA}r5@cM[15Q9xСHb)Rpqמ{-8IȂj`>:Tتp/u8|q=W[ه^} J6߆>nQMmt zx46$Q4H6 +&ixJ]*>fpQ"p* 9ui^p)"O?k$0P7m睥\m[5N9_GV21u FX.LRZD5KI8f8ehVͲ󡸫i )Npw'u7=(}cA9$Z%ƲgmkXS#7[$ cPA{꺀=mpo(!ʝ]n.Aޓ.Js BBD&oQt|핼ڣŠ%FLEVط6`@:mǦ0'370unt`Gf\4noѮ(>;agO(bx%}-*$%D>b"3s|IVaRbc(#eua:)KēW(*y/}&)KjPbbG: 'ŊcdIȥśRKoByWzg/+^"kCIx97cA>O*$0e6G& m$/BRy ڝ~~yOiz+RF5[;'J@E_*7Oh¯\VZ u9Eo(WVJP‹R.}CJ}BQȈB*G}-5"FM-;p~|dL*)XKOyߖ^&4\&u?Z;,BE} ,1Nj h|bjRiWI}gN}F~;=>=$G獋6!>=0AXy awܓWSjA#a=!~Bx5<^+ FXb91̙LAc=y&=nGw]`y:>v jr. ]bn (|%i fh:-DKhRGfw Z0no QTo.vWb/#SO1}0 EQ(< f_A. Lo[ r׹(|Tht8@"sw5Wx={[#_N/yFߐ'w8ƛ3y rVyBprǧͣNvrvI߿7-:6N.q oG@0}4/NN׀ Hɿ>B#~8| dL88x_7/O/?^Hb<:=^T!>K  b7~GH J>o )+!p&pѥ&T&KN޾?}{rvtߞ#O͓*i?°đ#1:7:27SDor>;zIϙ?OAϕ]*/Zz F0y8x) Ax=¶6) ΐX=9ACh?D^.rK\R/hzr~=ysCs,nܣ秂0T? aGߝ.Os]i>GVS/]{x{w.N)_gq]#^EBM4śm9" asr;s:/* d xfC=fc-)fz-5 k_ɫ{{AِiϘ84< `·&,{ҥ__4ADbmW K`ߕ񙬛TԡCǦ4^M*@*[Tl ƕ(.0?-,c>E??d:⚐W"I?hUM14>GKl_Kh֕ LGĉh L>3gZ:̨M,ʗs]2 f%,%.~YV)^ [ysҺ.栦w ZWƔәPeTkw7,!w^\ީ ;2 N#fl>׈`Pt4@3oXg'PK悝-qva^$;-0 dge^>(p6.zۡ1|lzſeP bs(+@`XY"D߿$Kl8;ׯ1hJCCE"@Jgܣ g)+5P0$ R=\_q5 v(P`p*!PK4YL{J鋱}"[ dACx-`]¯L+f<@ M)Jq',l* RZ؛zS`^N15j~Y3bSXso<8}r:1vl[z[EY, uAOSZl bZl>9-6Pi ubc]-6ݍ`T^,ޙwe"Զ;;UWڟ|(~y0NPZWp9r$=>I 3 呇ݡOCAj d$u 13TiU^gW?UrKePpxZl]ɰ/[q>)(>쉞ÍBU$*hneb:Mst!|xx|ݾHn ɏ*a{~f}n}%!W_GmIWяrm8hJcփNutB(cO,GIQM-3U3L9h8|7,W@"y` S7aI4]h&0S7XR T =5؉:Bi=ՇC"q`q+!VԷAV @vXsFnNg@DmjKJK2UMk[*+ZZ |j0+Ǽx.%*?q1oS&9b:lBxN슏g@>3CG3 Q |TaɓUZHs'0tK0,PE",2ȂpR,L,jt x=M#է! rqEH?4wpQ`yfv?owɣy gI+wҩoM@PSs ] ӃYpd2 22S&΀Ϣ#R㸞Z.Mj"%jQ1#M_;P2V4Zyaz |Laa=#}gzZM)Ev]EgA$9.3i%SxEvEFzfzy;ϥEqJs 2nx21!-JqSs۶gM޳̈́uf:̻pR U-9'c5W;G%Ogc?Iσ<{@G>Բ ͊}", նЬ DoZ#ρyh ź,͝l6X^Y%gZJImw1X^d7X^ixK"tFu<-vή]qO>*ȑrfB6<-c=I~K cw 1a܍!M`Ij`iN΀MHf9yj|mKd;Lh4r<4WGT7k?3'ϑ1:bE( hvIE 2eq6_ Se(D գ#BD_6/W.~/~Q?!_;;_~N ?~) ,R ;Z,ַw#jXtYFDa|3%צCu%,uy8xX8n L#Տwi'`YMvW5;2~ZX;>3vL1bvݝ\`QtG6oN؁E _.;w k̦4+gݔtJNظ8ZZk.(:6%'7Ž{).A~Kl71R7xé柄R_vo$kY>}߅+ހ'?GXG{cyMpEAKb%OcU`Ra`qQo\N_?9#Ahhx&I81/~Eyqe80O/UsJ+1өPQ84(+4ue t|%oa-\8A+Kq_ЕpxPKD0(ժc~Gj)k羡n|;;l,/ ָVvj>Ew5P)Y^!.B;5tIN%6|ڤ{wZ'wtxbV4r;M+J9;++l\v՝HlFnYE!>LMvdLS_mV?BDNeB4˗!&NcE*UtҢ%JS-IF/rJOhi@* ?R+*(4'ahUd'vջR׻StywyMMP/Q( u9q~ Su.EeFu.j5+*!#}m*tlG;J"<{@_IRxx?G\&Ү/[.(NOyqxyz~MaOhku"Ps5bDS0; ^F/i "/tO@ cwtt^.jgp[k{a F y2O%-a5?"$ md`vrX 4V@fۙaDt;-nOaIF {>pthe2,l&Է=W0]0 vzz20TG.tkdt`YW$]Qu'wW8:9ȇ.P,Nyas1y;|yq%yw$ges` =7g_4NMrN?\?x0@Y#gG?A/F w#oȇקO/!q7g89$ӣ#JOGO?o0(94oZ't ;>m]ߎ`i^/'> 6~\͓}F%9>pSɀ#(qq7?n^^~6Oj0!@y8cxS~j.%P' q"1(kӻtpxtI8T[$doOΎNsyRU:mbS6C#8r FFg]FrvS'vG89/)ht>3s:v|@|'1*%I/xxh::j5. ;v %; nêRϖzԳ-lgt={Gj3ۓ)fo: տ(Tżeu:Ç*ldZ#o;`0 W Nb[W-|#ʾ[LOwvYN$5);~3fs#ݝG"-¿[> i8\KS1\du J '{c6osU7h+V&c6HlM^~7e3& Kq!g.?uI"FLk!I 6X0-B.'`apxC '|dw9Ei3,9'`(Gz#E% >CX׮M\ Wζ|^Olr(zaMl$;߿G0VmdEsobH+kxϧP'#^AOO< &OSL@4ļ8Bn>D 0,=@duysdQ%؎hQ SMd|v@=!@6N+{, -ئ25ڇ{<0y"`opC71ϏLpA(#N58)?&t8+ 艑-NpfrA0cNUb(T'[ӳ7 ɉf}Yi{ay-0t9Q|Ҋ:Uo8qyN7h4?LʉP9(Ay1f#e(֧&7Ds.Og' ( ~ΡX4ώcO$GMH!r' >D6`s1l?B w>Wxxmnl.]"P֨p J=*du*Lш݁:@#6I$6 IQQHUe]M{GI|<;s>O׎yѪu (3--X::c*uP]@<4)? V ]fwgBʠ=TS|ǾHD)GtF8?~+x`ut=Jo}!(]>Iۑ6C;uKTwJKDKKDKKDKKDKKZj$Ƈ&çc׺XdJӺ+mwt0{4~('TЄk)2 iPcmyca Ŭqg-z@_!Үbۄ / n!Lv<}^{=\gxg``caacg9#cgbakbl/f3[sf9G׮5H$B '|z lC``'RuuSR_Ѓ  ]rrrmR7ͥi}$9(E>z숙wrn,k4u$Śߝ.b£ P?WP쳷o~@?o^VT߿&?U󫡰?>9zjQSwI :B HsCP#L/y( AK|9@X]a` {LlNbN"" &A u<>6'S9]ُY$o2^~En!N/mXTpCnVM1}mMF[<ݖ}ki:,9UB_< ՟`#!d͈{ 0[69u8E66+[ }mFuyL&h ϔwD~DYP̵m ⾁f.mN~/$5@K[TX N`?ϰ$f}L3ϐ0PF!3 ).߂L<!fr㘒atiU uW0yʘ>%إ3C&CpHgu ;L1͑; sԚg^82b8,[2WrrdF_G)p56҅\PdW20(sB.Eȉ::^Ux(NJQkR1~PD('3xQNlq6󥱬<+h*=Do698ƣ]]eWTA6ceU%+bvT^͵:-{|FR Pu Ql`JuV%l4$8ŽģMX1HBr5a)2rD|bY'@/@L>9DcNF%)3$O&% ȗʃ+SyO B I;` CW}0a*a[u FKa|a,:zW%ՖYNtK[bK>5@Yd)ixiA)+_E;>E12 >03$*ruf.Yep<47!O &d9'%}(+,eDb,%H4ת,l,<9Η;OmMY:9Wtyh&t|K4-qqNfss޲=0Q8L4}0%&֖bEy~Y)+7Z)H q8XI#1z8v 3l~\)!rRz yV>O92M*™@[r~[QaFYCUxH @:7_޳Gީm3W΅6\Rɬ6sJ2徥YO*bR%+$g)dqK/{-4S+N=D?St8dϮd%ZeI~$CܩSHg)! #|<;<=?klqNmk"ʔZt#QXRXJXP%4"ɴu&=kB:#Vb4!HNw&ЙLC=Q\j6S 0,B(, {d۴3iNf[{`5ŕ 5K?~)ĕh W/V|v| ͙.hX]WBE'A܁cy;랴-tv'8=z1TADž8>T nOFFm*e8 2f>Hk+qv0:# zJ9bd_DB& Xh)pJbUAlQENL1Қ v#$ `筟- i1 Gl!.8VH&Ah”m\xleghUWKj9ʵ, cTpilѕ;+Y4Q./Fw ;k1V[FZqv ]O<?-`3ʌ2r&L ^<~菀{uc=/d{wwX uGeNF .r3o}\ǧQ/HB4F]j~JZg J MsgAB߯ Axa F_͵oȸNc8ƍ7i 4 c=) [1^楁VFdˬ#gD@Zar}s42,,RbZD!Ji"g?\6Ng'go@Ub*3t&@^-T"]tvC 5qnm1}h>y9Y8eNGr[|34DΰUQNS*3dCQ7JfIf7I>!JWM(ӡ,?-BOI2:dED:Ղn/f( .(ZEd@#==ary69=S*}OK t&x&I$4d,$G0Ic#Ol L L,NANW/1N@722ècRߧ|Zc4Tt5׿6XVm `=.3Yd9'KY^%xqU,\G7ct|/oEkKuGy`"ˤ;D4eœm̆}zGFvRqd{laqH H=a@ rW{ey$+g &T IVƇ9"VY 3]qSFb nOdDˑ3R}_ѮԒayAGt&{0DBSC3 ;;.i e \Fd,tX)vT7=$rR"ѡc'\ҙ2eYMJ9\/#3Jwq..`-lܬ⢊y\ťIG\#.en)sgs-åxR2x&, ̏`qu(;L~kml_GWV{`S7q 'o`DۨL[4n75'~c6*줵9,dUϘ-s{Y^B[2_hk Y^B{2_ho Y^B2[t Y^Ǝ]]^I,s,eIv"& gY'Zƀ>EoG&wWA^"ՓUC1 |~ AoPHB,&E dPLBT6L))/E,+7uXN(,aHޤQş I3(kyC@5ƳUik=B)/~͗})*2CLC@ɹ Ɉ8Mfi3tׄvoM\0~lNd )}暰wH#V(0%gqt\.{SYA{%[τ( 'o!/,c w ׄشv``X#& ?YkG)&ǸTؓb2T)*GR-/Ee$Qly02 r~}zlzZygOz6>{=g, MZAs` 0^6O5}d\i>v&{ؚ6H'ؘ#g4JFLl>*\?9lm5Zm!"FyA*B-H|‹2WFvl~aLq/ #cLÙ;ϋ̚>u%*DO*S ĢLa1;, 6W#?azqYշy %OFB)|r␘C!:E+Mhqj{w`-T5 h'aqB&yd\E1u p̍F{ {dsSX)h,h̴:έecԱenγ*JRzP[A:`=߲2xxn5Qjm=j{tijqNbn]3/ǯ=Y6d%J'vMl q5lۉt]t}ڋyvm. >MW]XYo{">oj EOQo;ksOƞA.`sO4GHIY sJvsxvXw \.ټ3Bʸ0fźnJc^98 BS'w R{dA\&c1s9 cuEsrqȿ|kM-[HO[1w7/3̨FFb6X1L-.P&6ؕ2{ٹz0ZHhn|Gkh3~p#cVyUFvt&)D?cTvtA L9vEh"ĦW7<@4j}ȥV.i'uǃg8MU4Fs̖Ҕ_]Ѩo[CR:]\1bEGV /-v 80yRBR6q30DChNɑ2J%)&&B0ׇNEhKcc8Clb r^O^[.KWQR@.Ƶa*8DQ.ohEd}Քfj/΀%܍Dq\/p0*Щcwa;/Ri_EѴT&c%ixڙF~ K׶J$Cg6U9xP0` ΈV\RB%u_ԉ=g8?:$}iߒ}ך}EToM('av>ﺷxK\XmEs"mɛ E,yhS=zoQ!ʮ4y1A#ʷNv5 =Ҥ*^|() ňR##E 7Y5q(p9N61;U5 tY ED츺aʢ(+KqY=U_ˤz5э9Ώp-W~]3,19*SE?HR(DhY@D lr0??I"a@,nd7HwxyBc3n ]M+PmfoKxvtyz~Ls}FLu4AvI,t9W9@($=X(IF3vGh,<7dR/}D.Y D#U@npW}ʷK׺=^J'ѵ=9ipӭBw24r{`M8s,`? `Dt`0~Nm{3ʲ# WxEd@u bQ^QyccQ _Qcʥ=YW>FG[渶X2%Hw{f20U b㝃z#7T+?I/'3jzXg9}>n&ҕ8<ҳ{(g~97MWNۙ܋CI Գ&6vn`|d^h)X$& Y}DkdD=O=?;ai vo<&]OaTPF`x@\bNc=?2 y6OM==>>,h|oN?lSNO+DB}BStvomX <'߳o4uۈ5)*Gmm{=C|czl[jW}۬KvM*G ~>ücw'3K>n7ynun XܟmߺiL3b|#Wq~8=)ۧ29h !]Ps&[^obOuhꦔsDÿC׀()?1c8^?tݹf^1EO /c)nH,QKaO-gǧgoIǧ~?l ?9|89P}8 E _",r%xzy ~8cr| ]|l\7O`}N/)9aDhy؄O6 87Lr)4thگg(9ǧͣ0ESAD69-Dj s#' `' zO>]ӳ7 ) Bޜ^$a$ I"|kwApFq8Q$'G i??eX4O oR|zwxH4uk |>TCj C8R6')8;mY}皩9 tVYUPHE~ nhȕ`$vBm QXڔlb_ۤn-:۰+j#E X`b\scߍ\.P" R⑖\F*4Ь@zfaNܙYDuD|مѝv~ܖT\COY\F#Oj[`$5z`Whj5Q 0N;M>O(V D~p L \R!Wv݌;C0Fn@ G곻:}8dm 'xj<ʙtߡ"ۓvx vA% OGsQ5]'tn Ek'D4#2l)QLxMxo+zN Ʈu=(Ǻ2SPmn}BK=An}f.v~dSija%G\/'Q,v{"Q39;Z*pGߕ#;{9\CT'Hjrh,xh=GNFomfgngrlō <{"UWbsÀ52zol0XTOP*le SRs0S$? f{B*"}'m3E0*9B`]1[aޒ.Y*AOJ+LƝ#Gśו?\{`9Kbk|>˘l,U;a*n,B/5`9_QzWg@!=K=GPR] >y!`"?T }Nj7KsPac~r_yQ(w/KGMǍBAA* ̣{0!Zp%7sg6!T69u;v4YKN<&#zS~}ʗnЏ9SO;)զ ePinw= ؁*/-k GBFTp2< +僝/oVDKӭ-yj)t0 u#(&-LW_TՌ+TG^)c{_nI" Իj>ѧwff T,' [=*,3Z_bt‹PSm0BM #+ET3L !rt1.9"#^-#!2{۵It-Є2E`t}Y9U9OA) CaTat̟Wђ^w"jPiĺ܍)i[^LX'Jٟvt36 r7~ҙL"a@iJu)5A)ND(~>0p^_Tڗs:O6_aJ|W"1L@T\Ƨ(T C0gӗ3xt%#>s\bO )]H9#LT}] Aʕ!RKeA z+rc|֗[:Ct-ޕ3~I{m$.>%D2C{:YgO$%NhfE0\RqU9Z6Lt0KC slؐs绠H):Kݗ% NJADR4^2G-G Rw)ΐ-AGՇ~N5# !EM;K$vm;Z[kWR F+ W4ɿ ^_/_T39$!/Nq9_Q:Ug8x?fڟ[evKEչa.ZuHiթvJĚ.X%kZ $b11+y~`YȨHzP@-U] WZ-U+*zܭ +y&c&Gpp_pE. ua xG1h)H!?L~'/ȁMxD/L:U݂iBqbaPly>X<ϸX1GE,ָ؋5^b<) %|f)Y/ /| nM_Mͯf`TD,%1tP\&xD  hJ-`qtIX1ϹD\-\ "~]4D# spk[Ճ8M9D\twWu)6`pKx-.˦\yhW8?Lr'\>K=Å1iyStu75S[]YiNklUmdu*5٦ xdV’+_3oZ`O#G tK߷\߂8jo <Ɲ?QUzNT.NT -/Zpq7. CkasS8}7!˾3̛N_!†˾G\aԅ6t]>ɦ&l U&]u>~~nЙ}bz0f1Lh;)ӿ:iSQQ<o< (Gus{hWsE|Ȉ LeI͹'ЋEo)c\Q/፶z.ެ@Tה~[JE1.)Sc}]4aB#/"]1s09"qAMCcҳcŷeKk`5m|e 7wn;V/e^T'!114r||ij,b7DaȩDQ5GQʥY,n%ҭS )rI,n%mZ )E}4$;Ez9bɖUX3av>k,h_("|Q.cڻwDDϋp${ "gqjndRhsXK[K G !}>?\ﲺC]}vXO*#eN/;#~~G| \Z\z~S y5]>K$ִTIa't^rCaDJN&)DrSnI:JpO); &ᗑ| VMN<h-US jx2)X'z(8;Z6 ?Qj9׽$XJEYhl_pdh%f$/#榀jE3R@s@53 R!J(4K[[[)PaMW|Hֈ"~ru(Lu(suՕ\SZYH9 ]WkTo~qu]=y"V#BG|we|n9p?zi 'nODG,'76Vcؓr{[xΰ_ ʡ'XebUYpț7/+n~#/`t("gIqI!K+Z)DO>gV+B c)B&8A+(y̅R*+<ڭ=Zxb<ց=*3O7 ] &PbO773]}]Ymx1.0ԩ3;$%~*܋N%΋L´_V\V4VKcpiZx/¥r^ouKӟ4K`oξJ}󃱙W 5*;+nKX094-|*U%r"F-&fMl"hO;KG 1ȁ %$6 G\΀=6RiK~ͲQ˙ޒJ}oԿ,y&K<\%$lwxEocu0noǼ&3G.EeCN-wl~# ]ʗ:Gun#SEjw!_U~CA?+%_/_  v( 6W'bO_au|{WPwmŁZ%~YsA)ԙIJ&һ=mxa.#NX1j=hNi @Fɶ9noh/BGz\gdBNym3Ͱo ϰsJ?*׋E: U&$U5CEZ=6J_U%_/={b$p&#&jԵ Je4m'TѸ l' Ҥ7}E\Ir0<kҝrj7gǚy,ޔHDyݔHDy,ݔHD>%0.R")x$"\ewa&Qf?Fyţm*{dhD.Y5"MZe,s6*ik^٫ űK0/D7x;iO$fαTA`GeY?;oa7m=-n–xj§W>56M&Hw*쌤v~ĦFgȲ? b1ت;z8ڿ^ȴ_HlWdW閭˶6lNˆ^upbPHFԖ[ X2{X23{bӳ"xϲz&vkd4k펢L8a@U" DCf gDQOcl T.u%k&*XOI);hCT/{ӊ.f W">oI? ,= JE}՞'7p 4'I zW%m+ngaX%~Y#6w38JL{U4{+)8wWUܑgBL(U}=z`QEWtveYVRیԗ 8?7 H0?qS>{Hṛ4020$gO11f ^~.gW 2QqS .e] 8eK=eJ:ߤ fPRe.)(TeI[ }+b).R`Kqb,#1ES>4RN'|h/^ c w!wn )Wa(xA7ev\p睼܁C[r}6lƹ9S'Y=n\[KpjmC,`#\ђQ:#}\]v9=Jw:lOD"}6/+C 72?}"9HM!w*Vo;5~t(?15/к1>cp\`q7EAU6F=9fPHo*dB{aGAs~GgG}a5uƁ6l.>hCmC (#au3B,0X ,`4Z#o5v1,m> 5ʻH¼IͧH!N'Gbs֏$tHj ;HGW?=$51]AjwŹ4YK.[-Qf)޻;s+!UBH 4bUVHfl K f?"Ψ~Fl's}e}|ovv>VH)vy̜@O-Of>hjNzۯ?ΦשWŕ:;ϳSƣ[e9d<8%FҍFKl.\I*V0QBZ^pzi.J%hJTaiԘ4t˔e$4]z%AmA-K\ uY/.fMy0wzNG"tL}JeJe׏`Q_n;=OGISUJk o(ѸN# #̨ Вo͟ӽw5v >rɂ‚&hûC+CmtX7\Vm \ 9T..;r5 aCh2܏m\ٴlZ݉VZGN+(?tzs zstj"G#d*@ʿqE!bIWIR1G]" mձכMnGM* TlQwUq<6$1(ƑDW§EgRF3=ލ>lY^k.[Z*oh8dMvU##zA}qCd;jqW>(cf% 9'>,9qEZĤ'9ti=_^i=hl|2gUCi7i#x3l8մoY3ĩ]Wo-ۍX+%%R3 |MQlbgu̬βMgY &E`bΛ'sb5tכl@x MeSnb9L&} 2v:o4ֱȦts9M$Dp8 Oҳnm7BTL+eװvO:!ír* bY@4!ǾM]mSHX4p$(a/.$j/[O]Uec?.c^ ~3l\O-;֢NNCC݇-M*&:Z}ma&c`"JDeggR'ξVp?>y:}C79F3B!jn^ B]c] RI"b\6,J׿_̏ҳP-DI5'B~!L b=X* zLt\8̠c}u;P)FxdԚt+SgXagr!QJZ=k{"+ TKSP,pBPo U9"}WoZO)'ֵMi:k QC |iYᏮƯct/0ێBJ>}/cupg#6`4*}+g"mW615ڥ v3t@_;10 dwώB= }C.x]_!~iR }~47ք"-ɠ5 /obƈy &V\,zbK _}2ޞ̽,bOB$OUk=9&楟7t󉝆W'rz"W^eإ',PI:fL'ϛKpSe&W]с =b{!Fr>54 p'GV>V9aҳD2 !Tf/WXGl!V׵`m3_ׁ5;kt4jw,Gw^:%ZqA>Ytk~X 5|)1(YE30^cN+ra^&xB ]r_LgA~E=jh#{#p_0?&"F@ۓ} q $|fTz $>VjW8 z~&gp|`muH+mh8ð&;74ȉĺFh{Q~VJ gFq597c>`p ^3;%lkE;gEjI-!RwuuuuUuUu [_>9ɟQVq,|/*I) >cڳႎ(jz}*o"bhp~&hrڸ-IW]%gי[59Ø]߉]ը7;ӨNo} [3)a'ybL36R6m|6m@o-|?Nk-@㫰q -YM - `FFjpvM83ή gnr>=fS'czS -7 j5&h5J.lU9tMpLPT:0iC8Gwk󔖗ge8͊{$Q^cb׆ff|R+EanCSGp/]F/~}(Σ14I?nEr:ŧ,vۜbӠ zp^ˇ]2En7H;ޗ7kij~:MyKH˾9&%E;"< RGɆ`?Y7J dyad)d_Ҵ5`&CqK+|!X`ih&ӖR5_>a4nS1\ ǭuiUxL)bscoemA1ܜD(?qhOO 6ЖKYVcssy/Qf 0 tˈ@2W^C$ɾ\"IZͦ`T׍Y?~*]!6t=QiZ|Y?r_?X \AL<]>=Gu3@+.a*ZDћ^œu ۼHDM\AL0O8"e/KtFV5%ίY27ɜH.PHjLN_ I_{I_qssGLdSW^Rէ.C˾z'ojkZ8jR装 he9rF2 oeC aq Qxحxʬ;ݡ;S%/ԷƎ]Ð9IY\a,4&Ϣ,lN*J(73 E;mӝ6TA9RrO0Q6{Tex`HZ)\d3#HH٥y_Q/a h ܆&錄'i~Yׄ{l̄Rh@gD}#V%wd.vvjPCjxԘ7τsRCHy-6 Ƴk7MXn -V.26+L b{&L(1ge&HJN$KJdFNN+p'GlGc|vosy|4fगFyhU$'l'RgKx%i~nzn~nZ./h`;T6<23/2.3 ̂rɭ̘wғtvBZ<.AL21g$zB98csDD1#-X=_<9ŒmKK%ʅ H5 s[`ZlXN;-!f $:99VX fFyyhM%fP&!^Ђ9jv¨[(i[kV*'MrcOFƴkc=9޵a@E$ g}5G *K`ݿΘmf&Ft IT>h@[^{7gE ? "y4G5 ЭFQϢrvYZ╄, wPjurhTbϾ'>~~ Bz QbHCRȉ4Ҩ4*MxUD`X߶DmU,UϤ~OyA.*W_*b ]Jmެ0U[D(&TxUl£W;T~Ŧio7WU(hk9jb҂}QmU AJBظPE29 QZGxuDȱ!Uk CC.Ҁ n KLx CX~G S ;}CRɀ.J(SO?n(^? <j֡y{.]6ޤԻmVrPU@&%᧏Pq/˔1"U|~@C:-ݪU뷔X}v@0 Jy P,* u#x6rf`82@:vo:H~Wh™5$GGǤ'ad-!C t+*v"LJ5!E͙tJͣcar~!_ fpJU/ QG D@jurԣ o+Ta/Mãdm"%vPAgbA=vhav{|鈑A{(Gw@ rϰIZUA"J9J%P <&_+rzUivUcxQi4Yr<m>(M̼lÌ-F̽գ[3nƲ3=[LáIg5ڣ` mCkSxb̞c?vWF=R.:Vt 77B=nl?~`a1FV_JD-evvTפN_Im zPG`ahLؒ// SdކP gGl(P-gF/[ȌkW:7@]F7ѭw0b^Ctj7{K kt({ݶwHA0{ u,#J:_XG 6O?V6 o[f?0-ܕ+gaO;YTUӾϿK4~Pa>PK$vx.Q| -d21Iz"&RYcozT"fYav)ϐ ӐHK|_I}eRm1K-R1hݭvk,Q6^˝gwg}[c&1b)\SKOEev% g.I֙w{˙*ҙK+6Y҃+N?/tBX<\mEgQ'Y NO~rtJG+9BFkK (; XULde"L;ᗮ+fU[O#aB~^%Pnv.‘_X : JQ Hu$ARS=A`ydw{Xn9K;u"N$ L79MRK.Kh<0Qݒki[),пJ'fZ 63 F*v-kJ)_Z>#lJ|>\vpٝ:ѭo ¦ =+7VvOI5DȽ,^ԱzkMKp)>'EJivhr BZxBZ+%8p =?g|{(+#OVFj@Ye魊f/,RύCtg={9BBbnF6"t'H[PSޔۀamx]xYm0Npu~i> /n 0ICV6թ4i><B/MgZ#B/MgVz #sK2ӏLSǪ$Y%UQe;@VE5KHY$"''a|љ91-I6bZ3w1cp=OZlC5uc:>i mX;pSкz3'7a=No{| >8$W7i> Oo,&H$%m3l 6o0^XXzH63Lm#7g+$77ԹIR,:UYu+H'Xɥ ͐]ڰq r eD^dn\:ȋխ7ʤ%+KIFHoVTL)YeJ'+o7SRozl 7*]y KX>H2/8ayM^}~Uyi{K\!,,ujz\**7I~cEqNDf/k~# _X`yrxIΤOlEYԖsd\0Y LV't.C G]>-Lytr;$ǏdCb(⻢h٬oc^{H΢+.;[A=]~>ޓL~=Z ^?Pۆp hܩ˷3ߐ`F%hϏQ%Eq0R+ A.Vo`D6vW7lXG`Cp @!4ME.NړsK5-+EI!^9jv j]y7A.8&Xı'IYc6eɑoyړ1uc 1F&5]la8Z]KƏ`M߬ V7'X?Ab :v O@̱"Ta?Z$ _˃n-h39ڏF"Ёv'0"]zĸfD@!#9pwRg^L"o"{;^1::􂁵G DLd&0Y൉LI@P-m~ C03pTGk~;[MҬ_>ouP傔> sc|_4'<m^P}Q}&_ofB F֪V9dI!G[z]mAV=G W#Kr]m?U6.xYo")6ZUAnnaT6WubFIJEWWa,UbB@йjRnaoe t#͛J_*Vլ KrQ.~d<2` *JhokvKUmݶ*C~$&Jm)7)n4*ҶyMmJiEwLP%P; Qo|FH JHG E 6($0IK,U>\U?Tj #Of% Tmb*kSGh.LHxKaU'v叜9{OYV[f1RuO`6;5=.aRPk?;;T T.qpg8D,vDL 6`(/֟ $_ewZe +Pq_oLTOCdJwYe/. go>Hz7z,i]-@8Bn5~o7C&@{"dm=mhJ- M3I->4Z~0&`UYnB? Qd~7 ߔ=ըYK.uq]4'Db/p9d8Бitz0{#i2oZjYXnDN1RJp'7V:ǘ= _w\$@wrOob{Pӵ;}q@If\萡1[kH'T/-ҭva f@͢P1N=+*Wiy*>+Ö=**-ŵ[ [Jݮ u.sP˩vT}N\. F¸dek)"^kf8fkHW޼ϳs;6.}=]:"5vlB&_@[ g$S]PRml?֛-9әl-C.N^wsWEE^%@Y.ЁYkΑ6-=&v;f #wo⏕4Ak~lFtًbg7o.a5e[X`' xң_sa>s,IyuElQÛ*}E=P@''t.G MopA813R] =GSLȅd ;gϗMim5laQa$X MRcsz5:0@V硷woź\Zb8.^rHv|)P qBŚw}N#͝KNk KLWk#HTŎww14#.@$/»<la.wƽ.ſ.da/aNbjEGKV,#e/6/6S7*{whuOQz#l֏׬ë S7;T Q=Y8Ye,zMk5h9rڄߗߒ"fqsHQN9^ᵨY`C3ta_]LOknaGhbi3~:FМUNcB f V-\eww+mVB$_q+;:{Z\Ivӻ/,[4Y0qŸ́Y~~N :aR'LI0 :c2bÆoȺ(9ɑ'CzHۤ7f KNB:0:-\uGS*_&бYhpA~ݯ7C1@E jO&.!('B=0 )eY ,P԰MVuąVc:)<:ѶKĚ O@`!W|\߉ug0C3#cy[O9O$+v?'UʷK_ 9cך-^X>e8#\|r5&z7܁~<*&r]KD:pY.ڻ('K߅UoQ0.$ziziziziOe~vU7"S;֠ӛxkrs40;aBGd\yOqnZ2vW'0;w77EVqg)Ht>8QoN` YkJ{=x IJ 6TJP9Ԑgrc/03:ON:BX/)@M禝6yդWMZ/=WM WM ăbf$<ڦ8>)Jph qc'-D[Aig57c>bZ*)7ujO'rnUgKLK5W?O i[NqI&19Od|yz=+:裥iq0ȡHm0uCa-SamMr-l&,[g%GAU%߼ʈq;eD7K-%ϧs8tHbiSx?Q\}gP%uP)P-3TQBEgD<+*)MJUrUQ)\(u/TeT!mQޅ.R(B.[^ ,:Sp,By"VvѶm~ֶˋFmKelTa ]*mmvqcvyQ(m8nyn;]'wA[-jYբ=./OZr޿4hsn@nfG >ymE.0)"^y|̓mqe,)yjtlhդUSt>VMZ5mjZR3,WMZ5=HЪITM[dҁ`RJzL+5l韮؍F/^<ͯ`h(@|44\9JgB&+ 3Mڷ6 >Hhxwgu 1ڞ_J%%K=Ҝ g|ot.]votpypX7R-ć슫ӫ';d݅'w=;9Ƌ}}׵ө#x;}! "9>ݵNM\uQE>֯.*&< _-ݶU 5_x{כ^A_o` 뛫*ZZi{Y| Rksp5)ceE/7Hj 70* ]TbrWfi~,^]T7_{)hEQ) ޷2 pʑM\/_+ЁbsȀjVq %I2%`4ʷ5I//5[mB>HbҬ4p<%W&%mFZE64O YmV)VѸfap?5"ԾC `.=G>}ґB 4+-$4 LҒ:KjWZoSY(UXZTfoiǑ#1ڇK?0%)^REyyf ]#'=g@VTndAlqr_A7Q׋WIrbiU$ϒ?$ggב|FQ(LJ U*ydtzץ/Kܜ~2e0]po`)v}y=1f'ҕd}wiIIZFZKQ7G]wR]bo]DվKyR"}ѭ_,y4ヨ4'qܕ*We ;-,ǁ,`ǻ%I) %ߣ[-! ©J\ߠ|pG%Qx7&w[eD <6ԏԏ;ǰFjꐮཇˎ[F4\w=ր`v?3cuL (U.c *41 uNK` 柝1 `js`sc*ܹ r{K`́hZWp*(, , ށx55 f7 n^^y5j/:)Ǔd8Q@{=$Kc/4ȽI 67gbywLeĘ("gZel%v8X!B}Wv_;/.ȿ ^TyY+\NTkfU^"xB!&s"ɗ F#rQJviAUQUד׋TzYDF_sU^b̾3y lV[Q%#aES]P'-Hˇ>kҾ4uϓM Kؤ98' v]ό2oE|Y.@Զkk^ۂc+E2mP9ƅh̺n^lQB!J_˥@My=V "r^|ܭwG>4+]IWuCnhxRWo+JkzƌFmW_uƯA55G47cs E ?ow5qη↹x D(6N.jDޣն4h(j UH+헹Fp ^iNt&"*Sz/Z]7K\a;x.1p0"G<:~/HߓJn_ (l&>ӗ/Vu0#Z2v06 6Y TUVaUY8~?!]Kܞ,BIΠ&Z}_}i5lb`ϛVL-\.LMYm[2Lk2ɴ&K-{tJ[ltmP,n~nڄ&H+n##[ɪɧbό@մxR|\!B财[[*D5DsujE, = K5 ۮ0.鴮ӺN:E8K% ?63 n:|[MoUg/~U :Qh{5v}GeI=Ƨ|8p44S֢k<]7/pӏ1RA.zuUVZEF)^(_tg%:{ VZEnŭ"5]W\=_Fj-֒wW ZΤIl|r+,!wxouhSmͣYr# ;q(~r.n+/t5 'QZ-M`U[W2zEvȨ&gY(c;4uӼ+xMuۗ'ۮ'V6xxRJШo״0Vik\G(Z m *cRƚY/Z'^o:^X+dBgyrǚ*͉oО"Oc340c@?mr1ԏԏ;]I9=.n^^=cH%]D9 Tq=.CvA F㘀&{B>GjT/ER7nbZR-ԃ  ٵP&ԬW$q) O1z"7kH@+㿠If:*4i.0_%Gc LPxZXϡ'C{SB HvP;+cc@8<Ђv;=ꛣhtY.mw(. #»۵a5ƅ!Ć7#|d=൉LmX/0.Icߏ!{sf9*Yȇ#䵁Yd?筏&i/[ 7:trAJeuQE>֯.*&]iըn[ux؄b3zӨ47WU 4V̑j|u{Q}Aj^W[PUvH\W@bzUm}&j-^HnV|{Ul[f`.Uz]QRRkՕjK 4mAC.J]𾕁`Fo**~Zs@$W[(/EȀ-(QmTO~lU[ P_ I@cyJMJ$0JsHH@)6?K*U֪47, '`ZD%P; Qo|FH JHG E 6($0IK,U>\U?Tj #Of% Tmb*kSGh.LHxKaU'v叜j/`Qw#˼'͡"xn o#-J\n7Zv; ZNo=Hυf%ڝYdyu`#|'Q>;k[g0j0hV<ëy{W!+_AfLhQy| %jx x2}DURO Yu pUec6Ge9w7W eǧsn{4znۀ3/7`<9i=L&;f0ȼQ]]Vf|5Tl(SybrzupБf_d:#װjZ51Ջ[`nrF:] 6t<-$F~*󝟒-t*jwRu01!o@u:1<;/C^]y~?L[*yλ %6o3m5%-9Ӽ=;oϑZe-mu3y6{1M6%6mkk[{a6eXCWµS߭ɾﮊ ;m`ӏ8*&T.+T齧J=Uzy=kv (lּ1RC4d[dۘ3NqȪ d\R-] f/AFwtmDI8Y`gBWl܏D x urtNg뼫$Q+fX-MkPhXֵbWGH(W4|?ʓ"LY'dRVFͱԖ?8 YΪHϰ5Ͱ !=6~%箄Z̾1r.gUO_B] yգ?vhl63l3ffaWG˳rqwqa<Ӓs9N D^#pw{^Z"aNԸN~ɩbքIvB殃]Zل>-?3f4rQ}YG h}u:yI=lc:1qt]2ѶkLfLml2њp=fc.OaV5_m {֋^2^m@e+/+3_E0ڀy^ol f̙݃/FUщ>kMc<4N'milnȾca8,Mq; 5-m;IIK'%͡VCIM%m*NlmLf<͛A<=%ovQ{ҴyCm|t6z6d|Z/ł.6mCiJPQ @Z o omgɵRJgtiJPچjlCfdy#J(mFE%i=f2 IXWЫ@g-!ځ:8l?j8CEk 2ls2ڙto +W+gcH$s]-v?\ ҤuNݵGDON=hmr7>- A6]|:K^&>><ߔ_*u@>M}6wE 5>JZ[[%FUSP5DEdV'N4 _)ڥ c۬y[*}nUZ{Q}}{ժ\}X'VF;9Cc9>q3,4NNbM0/'B27 \僳{=NlR9xXQJP:%*~Wr~/#ۑcdSϛ/KگFo2QoU!ұut%Y5X tJ"_jvM0iZ6YMbfJBG)| (SJM(T%c7cd^\ښ|.&#ܓc"9+p3$A!Pm`hN!ߊ,ㄋ msm&h$CC%ٕNFBkIh@yOХO{2~4apdwc3 ;p|BPVnI~7F[p j;>y($8GCXF"p4 %0 /͂x9!⼸{Y4 z4^܆UeƂRؕ:#E0dR|GC{ O[hA=4PhGhtqgbXXg7zw!lF#,)+9RzQ-rqSo[zmbGhiL_>@A@ k?XwPROXؓ< Iwr5~$@-owQgP:`tAi5]l81~4Tx۽ U7̆'ԱPx+B5Jf`3srH ZthA ~4:ЬD0"]31n0$6m;th}3R/kEa`* t+FG 93*cEfcݦro:'R}?!εR# p6:8c$eSQ!QU.H3@n>7>E$<m^P}Q}&_ofB F֪V9Rn/90H"Wj 9n_ Y,U$qYmհzMѪo rs ҬEY*V+4J*Tj-XR cXM hEQ) ޷2 pʑM\/_+ЁbsȀjVq %(^?@2%`4ʷ5 oޖjU! $1iV<%W&%mFZE64O YmV)!h`W0ij_С `a0Aɞ#>VyHY\&iI%ʇJ\uڬdaM,Pe-*BåistI/~"< |Ү3?NwByoXw# Te wlg`GEaU%$tz2e|iKAeⱰj HW|e @9:e+HM9[ jk'Q,_`e~_ .}=pĴt )PsZq&Kn)YXqSm2H4Y{^+֧/rbB{6xTeo X8wS w~iz[h(x82ǥB|I|$ sPss@}X Uك+/㓆R:E8bAkQkQkQkqngenooq}~DF ,8[sy*}66ڏ8ՍXɍF$P]m*aA W2tgjiRR:HGzBX!pp ܉pY,ٚ,Ɍ&nD=mpw2M\m>oJ^ _tW}uW}uW}uW}5^)VqFQv_l.qPm`KR5]fI\fooI6YNm8<_Z 9)szV(FJQW;N{xHޟvκ\'g+8p?[Mo/,>&4`}Ⱦl`m&޾݀Qq3[1"QVgr:ouKoZӼG\۷ھ} 3 2*½SsѱF7rDii@Շ7ۋ5g;ŝ{<<}L־Y{ _oo|4*0>qפwuJvLݬ>1s(_$22>ohItf(,}أv@kN_mcpoael=X\6| ]>AJ`=ޭEk`stP~}suz><4g'Rf R:gF.Λ4.wm'A:[=8ӘFl_XuUXuUXu%X!VnsjKc4yr½jӱC@hMg<@ҍkt?((QB& 2OImeqiy7w4\ }_ǣ3V/\{w$7r6-P@$4,sӡ4 ayBᢿރ쨁ML4D٫=q Lc%Л+䄾dc xx)q j}/&uN pv-HVf#|''\m|=z~PRVJVZE>ۜ$t޺Ak/!τC]U1оi(1 & N\y̟1"2h3̹&o@ac_c奀k__I013xVk)dSu{%O9j̰֜$$ | >Au0zD09w7WR(蚹T_ܣrm[z9NNk,~[{ \N@$R$I2ؼWFF2#.; BF*njP9rR%+=) Fĭ9u?wVws".9(>2鮀;3~,tymИWE)a;er݋zXK!eb'p0n(z&Wm˿9;vo>#t)#_ /Gr?q+nWgWY5<)k^|-yOW(U7=JlX"6wrlima DmaʍWUQͫx8gQz ltl|XԝJE9'RUwcOՊYE( r?~yG8Bànt= 3ܱW+kEg:D|-x_Ys6&&GO' YJ?萬1]vmʸIq]ǠT1?ᝤ46ZG_F2q )q\C,y0R߯תa$ï3J5$P9ѩgj L̫A.9c[R+RR:(5Z?%跋-1-ӵL2'ө~#]!񟽕sOZJYHlX||`؆fu(*[!8έ#>4聙PgQ$u`JZ/Nk)b}oZ[cSGU'uA{-Ifi Cmm\}QZki?=ư&ղlM:BlȈw)[h&Յ7 =-|܈9E/ruw}% rSb)RMxVUPUcN W^].p5?࿷dTqrD*,eQE ?Ѳ_~-g'|_cfTiٯe I'[$)K.JO7J_-Mmm $\HuA/kCKߵv[dPh Oz~n- q,N/P Z3lflfMlߊz´fКam :<m\4h堕VI%۪^|.O$9@I=&Odi4ٯvoE,D%0Y="JMYijFj+ڟٯX8E֢ޕ.xw7PC} {~%X}:9rzXS={.;" 0z''0J]>KArWKwn  ]u/xd kA%n]P?CY!~ @Ji,z9O&Peإx;xy y?;dzxSR8W8,sKZ$z(>!^.+| j] Ǻ;ƍADq O ۣcςͅF6աVzc`5>#EyU8 LE9 jNk2)hո+A=:fY$ _˃n-h3`ƌсf%t 4n׆SZ ohwxAGKzY3-  #{;^1::􂁵G`ZO(6* :`k %@P$Qʱߐ=9CФqPB>! "9>o}6I~TlT|iԡC R /+Яύꇏ-~uQi4IvOkFt۪ÃW&|E_kIכF$PU,ROEhv9}3m#^/UDoV9Pڕ?rs__?a=E?FyOZ_?ljƢfg<JO{3,^+}HB{D+ LL8TNw |FAGё\e㧡IŸ𔔱GnZ58K:ћmt)Ê& G [F6򴑧f +Lc1誇dD.gېB>iW 4Z_-B$#h M!0ȉ4FwXl;QJgUׇu ⌈ٹ1G;_ hcvI$\?pطqd5X2Ӭ(=2Fa8BuSKH%GJ2$GT)u |}M4Ng*e0$L2 4MB%bq-13I^\N'fPqGb&L/.Ȟ *+M(@Bh1K m8a,i8v њ=&=`~{ӠG-6vx_e)rjn{T>*:%'jAUa^@{) Ŀ'!;0rmҦ,ֶ-@vJaL[iQb4'y{*2?̕eptZA) =(8.H^ {ז sȝQ5_1Ƌni4B^~w(MΈR! ;f{qot6EdDHI݉ڝ`AɞBeAY~y@Zʮ '!m6yͷXٻg Lm=ra w3NrŤ~w yk>;Ⱦe2aexf#yG!ʢuXȔLxbV:2 3ө߼ ~~- /I@_)CUU~B^.|S,Ww~!x#RT#ڊ޸]];lBSk 0#LA@JrV g:{ '墭NLؘt"%ژ֖fF a69,˲a`1Aq 7 1_ocNXӸOX8px{6@:~!?.K[ޛc{8F#/R;ϰLs倥%fR *x[΅a;q%HMV^lE%]Y&Oj]>~ܙF%.dj0%"/zGcFF!gn7Jb/_{"-mUGpl`<7x>oBVʄPB]I?"q"_/l~ F)X.@*͠)_]S6ߨmdY1"=+*D|dJ3l]:n$k[y$_Vd4>X4kg@8(k!_#C7 35DY1썮KZu:Y8?Acu]lGy̯42you,UO_ϱ&t7~En\s1(f֢_팔#Vf :TF(4h (%zDM~wG[HQLa" CgCp?g.7 MCzЖnz[ƣ*R̢C@#<] xߏr[HrC/v5@vRpO)Ĩ_g!;܍Lk/a>cL0+]wG |@9fP gX ّ׀=S.bˏdw{MJEKCk Z1=+L{Ms X 7?7zK(B>q{w[9 Zycg):F4!.zGoaL/bKXA adʎ%nSy))vzEZƨPָحS@Hz:2q8}2tp㐜ѩ쳦#-!tegG/̖Ԯ޺sMsww{>`bwqUx'{xL'Kwӗ_Bz~ ;_29չk.eRO_$veOKib"KnRJͫgϑV?-^F#DУ;~.#'u^ẗ́|7 dh^Fw d"O4Ab+1o~OVߗ\DYF.G ]23 .nOُyQ˨q? Zs'vOG{h-9=сD+VJw\dNu@&'7\?ϹFU]k6];QNC@ës'a@ ُ;+M^xDQK}2S :)h")3#|҅gLKzʭl >:vdwd,5i#&#C߼gF˳n(r{{Ig>RRsj&!f_֡"$-?tLRviD\|PQ0_Cb_56%JE#E~-]sxQQG-!jqD(I!M!͍ i6o:x,١2G0YT#:H拉8Xt9#pP*uqGGuQGG;2hlCG8N808.L:#:#:2KEݸb0 Dꈣ8&,:#fLd"$kU-$KrMftF6-oG̃[b,ܒe-@5sng9lk.[\r syS'>awm`Hv7wp;R)FmczJč]}ʮybn{Wݫ뽰,~.אf u.VO;<˅BiL΃7=e}??_p6p_W?ͅ]A`P_]}Үs[|35EM&u)B(vPhRl\tiTvXگYn \-}4Mv=-OH˩gtÌg7 7#2uKzŕIE/v|ﶂa^K|Wm'{4-Ȗ[ '5Q5]=qp0GN9]]o*k뺖[q^Ch3~aZoz-@U^붒.>kN@LI\rzςu/Bvmƅcnގ2%2^*]`. ΕR&vUJ,Rv4Nb /fv7Ơ4']{B=]GtPh3wgxbRv>GLz!19'.jn(.lZ&t,P#?kDdd-`s<_|40$To-Ә~-o0v|{Qlv~MP,c9q|\F:]>#1)zWy j?EsHܾ% k(V*B^TJXv_]t;@={8TaN/#\\x0G-^%i꽷qF;6}O1Zgw[vMG/Av)먊 ejQ8I񠔤0 3>vЌ|KazOe+O9mʨ,9y S,75pv͂3t,u'܏Yz~`߸ĠrJ 0lz$gA)![Jי7AÊ3+ª> 7SrPۦf8&Q35:Jw7+8SQ+?U~qW?C-u՟;1pdj?THJ?QTN ±w vDo8_{#P#o/N| @֡?%7;ZeZC+iHuר:WoWo{fJa$y#eYRMƀ=p(:O 8Gd}nr.s{' h 8 M:E.K%8Zr"IT؀"N bql\.b!(rv3009ٽ7ǝp<\|3 } Mؾ5WW ,sn*e>F:oitJ޼qx~f|37oϑ@9E82NtqqyV`8JE놜x6qQTLԚzicoFVB3G3 GWnѕK>rw,}%(N{Uz)4 7^M8;;2-k.X͸Ǐڈ)_ё/6;Męo[_j&}ػVjJ/x\VSڣ7⼥Wm}}ӍO뭅_ڗ/M!tWFvCXI{,DVAy+p.A\rY6!'Fy=Q_O_H$LMMo0"GaR+pϩ?ty;bzDGb:Ȋ8AE\y8cY r"wa*~ՑeY֑DY .D|Fe޻iMc:2Y֑eYVPnlё$PGudynԑLGudYGudYG>P#[6`K,`p֑eYNYAX5- z iևRC B"̠c;IC% &&(wΛu/P `? lc'X>١LߙpP[(hL>룽>FM R F@MLpH3|L pXE}1dAzety 7c5:N.;+N\#3HWcvM>%Kjd*AdV ȭ=>wzVc!Tÿd(I1UbqXupSqPI''vH%8++*5rIƊ̚ y*7Ddxl|Ar{cbޛ"$%%aDx].V FӅt S#Ej feѨ1 sww̽#:q=+: 0qU94slMEoU b(hJV}-7DH R^#1Vp"J>"akTjJ,,'8%9:Uw|:'|H #$h8~YY;++/qԕoF6*{j<ē`ߛ#.O&!(qWz dd޷%KasĎ1 2ջ'!$|Yiw Rܛa^"i1YSUr~yYԘaD SWd1r,EWBHWi9:4J%7"1'dדI $fϺ۳EGYvNEv{ono)1ԁE"(dSAM`N_&u&Ln<v:( C3Cd16@4$v])gvqiM(Q0*%Ṟ3'*o<)l;FXtN t:N':@)γ+wilI  GM+)d? ]p"_Q WG&Stf#Lv3DҖۡWGtN ~:/}:/y }mu=veb~!jDZugeQV?eBQ7% 8)MTsY.osr :{[|8ǎVٲ}SuavT(Q@Ҧ Rx r)5UbE3]CUGn@fP[xL{7\#t4d2h˺~69c3-f+[}4`[Uc,U՝7߰,hAdI4f\ow-e{4$ɒaa!#_")7FU-;,PZh?Mh 78&gɝ50`a/%mC`ZKÇoǘ{ҭtN{׳a5E7'X?AiRlPa_ [ $ _˸ˇVĜ(tY.\Fb{Kđ!Ć7#4Gs< HEo+QQabLn%-*tL^DXbǘC|k7 p}?!Jym uqxycI֧bBM\gxY~|nT?|lJIg^k5V*6+XL*4*&7UAbU4sZ+_^Tkr`ZEksp5R$וF#,Wgl۸jeAhU˷WQiVv,_ו}@%_*i~,^]T mAC.J]𾕁`U4o**~Zs@$W[(/EȀ-(QmTO~lU[ P_ I@<%W&%mFZE64O YmV)VѸfap?5"ԾC `.=G>}ґB 4+-$4 LҒ:KjWZoSY(UXZTfoiǑ#1ڇK?0%)^REyyf ]#'=g@!w#˼Ǎ`~;n&ߚ~$8Iol {O򮪱1z0=y#4=ѺVZkպVkR\z6h&H)k-Уy-wsB%{(A$Q9Ɲ=n#qY ]Pbzvobhyzw-ۃ2:Kh-s*Ņ(麁E|/â8GTe& 8YXt6%|Kyp<ݑHpҎ+:&D@=ZDPCK}A@MJ?J;c0wGlgwGq|(7|/vgnvOy$u7F &Z9n34Ͱui4KNDx%XL+ɭ'^C|'7d4TG)̠v]mjoYKhq-=o@",U-G.hP+$g_HHq?ms S*tw |ﵛ|;oWqKqhSP|pT`~`"wL"f!I3B0,8-.xքCjq\)a@ӎ_.t#X;#Uv^ 37\CUu/Ûfq-vil1[ Tΐfmu#{ + < f 5~r'YLUX)P&7Cv* +a03"Rȝkhh EFt oyזF1[j91jbpXXih=Sip,1k;Wlm hc`[[<6@$q)ױE:_8֛e0FGc| mM"76> 81c)@Eo|i[\B=K#~H%viUەDeeYE:\i V P"M [_z.Nnt&΀Z>(-YA̪TT^Joz^ǤֵJ>Yf>ɛؘ\&O!JozIQTHGtnp>^b3y8u$nZ$xa8?;*18|(qb' vz|$N<=m0:H=ݳ= 0hh|Cف8fI8sfBasY6蠝CzOҋsVZ9͍ͥSP@gG/K˯#nF^Tx;˪C3KMC+9f%Eo$d tſRej Ps ǃ$R%Vn7U;T0*w{3AO-{}]5thϽ޺@Ri4F 76jfI".;:J˜w:9a$6ؘU 'y[F9*̼)7Kk6`@!_g.9N^`[K (*bHplAHWYP*e{t#.cY=bjI6F 9?9210  !Žf:<D';˘ٿecv/"_]gY4Ą P9n N'47qE ,ҍ>xV#G-]4^>))"<kh+Ǐ#<\po QEX$0/ :y4XE"A+y8˜+<E4\0'' UPS!Y s<+İ쭍/>VRO8TI%$ApٞX6 J8Ɔ r,h:{3F۠(^ǙCEIWL!7:qzk[OhLKز!ÙC5q.*@ EěԊ-I?eCL2p晚F^^< JfqXJo FavRbpݜC?0FHplƀ͛KqX`x8ubVrz#7?]]R[BBGY)\t7kw.P 3b˜wlfS{|%떌kIɺXQ$3X0GQ 5a`1Aq 7!66&?][z唼yb5`w`Kzw$> L?U*d$Db~@NH\Ӌ}>h3p3d3ͭӁuLC+?xc:9_$G&Y ˓y;-?v􀝲~DRFŰYVnI ci|:&B@Z5BziMTvZ.fmhG28J7#O 2թ<}Y< x^Zy֚s¬,1svL`ʾL[hs{O}I3xl޷{%%^|&yΕ$X%1+[ϝ(jRy=1r.#|2B _@7(ọuSGӷ =d9"E?r i,/V=c6i"/)2uYV9l<7]%Ew##3GC2aeōE2{bPq7!iD\}z1z( ppRt5HZ&&D: :xqġqQB OmFxҢO Jmaqܣa}R#ruѼn`'0+#l n#p@tߞ9>(z{I\o:oѷMڊj]7DWDtmGGtMGߔ7~Hɯo BWGߦDbPGB&}7}7}[tҢorͯݸ[ҏ>:iMZMb\U:ضVEZBOYXZOޤ>zCO>6⎭V6<'T;zV/Pi0GpWg p)\jw11R'?~Xj}%C4'Dg㰤>z[|tV G =j+唜&WȁO):Q'rE^-Qj@L'1D1xqd2:I[ށ3r萡#6aGŰ>]ʠeH_}(tJ I0>L^gYYg0q8G6m">⥍Ц&#~[i:GtosSL:: uPup AŜ̾tZzPik3:u0p:BL:#g ʟ~%/2# u ." a0-@p4*mх(vHDzˬ}(}Xd8Phv񉦣x:Qg0 #ǟDZvmt$Woݳޓp}~?~nb+5 Ԗ?F5Z֖)'$Ɩbb|oԣ 24Sx'R¤y#s,%]rDͽN]W-$r>d22L|vkk|d"{$#}߼ H&?D;\4Xhg3ӦY w ]n+| F_˘~^\L7)噰 ĝ:5/1 qZ Qv&Ά],8c-\Oђi7(oؾP7E|!R]:CZA 7:;XgofvqC>  I˰ԧtf8Mgyd Agp 8ID}_,p 8NB M!}$-P|I\K:udDĐ밒+R°_Nꘒ)-͉(递(递(QIt@It@DG6$~M$6B:J (-n2&|`g7[v!lFd:YR8 |~^T\oV^'Z31G_. 20N &VW>>{{wrq/ow-`@jc12AƲcj4뗭OFF\gxYo>7>EѤ\m^P@gRQi6IA7WU 4V̑j|u{Q}Aj^W[PUvy5$Kr]i?bzUm}\V[5l+bU-^ެB6WubpvIJEWW" V,]UgQ)޷2 pʑM\/_+ЇbskVq %(^?T-30 F7oKVu۪%q@AٲWt{XIt3vrb,1=>~Z*[(CZ`4Z}O_u WVVz{/w# {k^;OxA F}Kc A&} ЌJzAJ 'UA rzRF gP,jfAj?_sؿQ/I@BH``OQ珥 i?V.n`,b0u9q:fwŒ#1qw:1cVEnl ʚvjuvh9|kv2Y jG.6e`CzgMN^e |:?c@T/Q.oh^ ?nӿfֵ`sY vaCǐ(&z/KF<,t`HXLml,Gs04FYN?G:hf3IF0iy{0fR؝dk}D"o6j,j*'DdH)U:ƀ.4zpE8e6T!ݣ1)tq1o/=]3+_aC F7 YU뢅&7i+1 K-k诺 _a-kyYe!XG@0'eLz,p$q%3c!\.ВCpqE8'],>(&DC~g b|cl{3ޢK[S .Ik=vja7tu{"8-FLtxUNӲ=^vS!r$ b)m¾˛FސeZ ̃tp܉rGUqL:3zHqhTtFKr5G?UK 5Y- P4 ¤n7(dWT@^ߦXp,d`oE0#Y'&HV@K%2 ^]26LxL@1FdN%̲ JX~Ako6 FftI@c=ԥP-G昣 g 6彺[iÜܠm!)Dͦ?'?Rʰَ#>YٷKJsVAaqZS3.q W>p B 1y_}"8[\v 1 Zp}Ҝ^DNfb6٥&=x kDmou$D.$ IQ- Ӥ23]xHb@L|^z;66,#AOZA0iRx3%8hrzN15 =q^z[yLg]..F=z0*H< .!'0 j tGJX0ozJ(rib}5zhj BV;ܣ-BfbR!u#M-/šVHPի2Һ'߭%Q"9+I>Kd~oϽ[@:YigOwc_bJ:9W7 ̌o=S=p~&FeEN'g]\^^zj]FX}yݸёI; }*UB3/25rr'ui^'%]2pS_z¢ík( Az6̼]2RD7hz[,eyÔ#1t7ޤ%lwț/m]'KkT`)A7Fp Ϧտ=T/,R \W2AR v<%ww\|(eDZqI OVN-"_]lپ,ukf$\^2gDtm$+?G>,ۉ::-dw8 M gdDy_=Lc0]n{*Zm͝GX`7 'xrjU+R3jRϰϢ1|9,e='4pEu)O NT?7X2-렎kp]{}/V@%b7Zy&6|@"Twwū?9mB@A&C/s<7?P9G~*Gr}c4ؿϿ^ا1C<lo`C*l*Ex @})ߏU8?P}y 6@IIWwM>HtGyZZ ,L6~ .>!QXT8I\\9#THXwx{{ Yfg=>2 4b;9&~yz Ȥ9J e'~.t"CPZ4EUo`z VRh 4'nUGر<;Aސ֯;|۶qQ6ͼ>WhY&: f䇸 6I;~:$Ѧ؏̈́ʱ&5RÝnyӁ|8550=|%'>hiљB;3G|!=~)M0q2.*_->S+!8C+)@sAWRGq JQH{e:ÂShR|wF?i(jErL^d?\":=^DqՐ -;mR,[WD˔ٝ/Bg\jqF(γSBbUpny"]A &56#d7Xё7sǴqzŸ'" Mt:X?wSS%o:I3.=zFWzђ4u9A;%D{v||g!;NG&Dh< <X'&L-؜HGO;mMAvr"V9Pova=BT1NSA䄶bn`I*'iY]zM\ ʈ05?ڌ`w0ɚ|r&~1k#" 1>&e0Yl=!KM&%,#WwBm}mLEJQk{/h(O`q1gnPe.(#P&A)! J1$($Jtp6}&HLXL+2]h]ʊP)(VɫScNVzXÉ)pKnlIi{4߸" UoC3yvj_ÖOI֐7#w+[=eiP,C )(\KK)Q +xE%ltrWt=ͮq*lЂ`+nфhбY6$zԘ{VU[F@9w9q e%VhE43J*\J;¹ `˧C<ҹz&:ݝt{cL׬mqlbnpxPy!\m=X/\vԋ*6`u~Tw/:Q3FߣypW"f;Y}3NJrrPU"b;a\t@%Pi.@FE⸹wC=1: MֳS9>~-Jy$Oss+ݪ k6;z F6j;~/y+jSEI^5S^ɕCkhy*&JËHW*h,+). *p< HiX>^ Ozc /Ja(w2 K4(lK-)-͂OO]>6_Imb?`yD2#DsgAtu*bC*%TiN>hRI.cA̮~, +-- LqjT%O裪d䩜,\ {ޡt%OѠ#`kiNRh[pO].ū69i $#E=aS(rh y4 ze!} \ An*s===}/&`1|KNev5LZEG$vĭێo̟oxS@eFh&}ԀE~"xvsSi. ?/2tIџ5X m.*ܣ Ʈ ލ]xm޹2֝xhb]"G#=iʮR\{IûL miyeqk'yk[8p uYzwθ= ~B9τF70Obt)=Աkm9)|OVOCrzݍ?vqAO Pn:2 2z=(<#34}Әy:+G 𶒳%<v+y]Q| SG?m2-\*҅V~y*K(M%/-R\"䢽+KD{cQl_]ė҉(_YQRP$<'JP"KSw)$kc{/Cu_}th {O{n Ō473 d;<,3n7Ok:c\w[ZV ȼ%|%XwJ6%aoJlJn4QegZ=ܑBgJ:0e}]n*Ҭ/0g~ggVa`R-Q{L,f`k{bGݴ~mV//MӚv_yMMQiԦw֊WeU@tq(C@`nU#G;_=_H(/ScȳioڵFUkFAQ@fdk6MكFC\H8 쇉8]uT%&Nr3!c_ ?x_AR9RY*xXoo ^G8I$p!0R~evR~] /='[p4t!<.Ot.X F8̑)&N\-E|M*wߋXX: Q"ݑ3EZb8 UoMWK'cR8J[Wnq¹@q];m5mmByg4٣\[ӈpRLb_+Y2e" zoT*δLKƩ@ Ó|yrs(ӝYCs??^|nvuU+KQpPp\3tإ(JBDZė7t퉌&&"9c/K֯P$%M߰=fyb W6)19IXئӌ[W9L1W]$H!fr*獼r^!-pjYs-p[z]dc䳧+.)J`:>Qj\Ma'N?jǫ0< G/}PBP$;֚叕 sūjq|^v- hq+UW-}i!=Na@+p ;w?@D"^]{7ea"gyp" %z*'M:,; E*JW,n S&v5֑ϛ7^%Ɂ>Zf#4BI~SV@XDnM\ABFwfA jj ~gx '`|SY2(KܬHy@O.m1DD}m~OO4Ixe3s1R<ƈZ,dHMSSg!&H=8S\&3O$0H)(Cf(~ޚ@y,FpƾaDPk9EovgELqa ʣX,q+0-'+ykaY~Q:<01y0ZjfVDli0X_ F2$v2 6G%%K/b 7uElq1|B+uьrxfX 4}ziLK${^e H:2.R Jx}lLWTl)Q@88%q3|j4S*:֨ cG?G,vTP.6ɩOT$eB2lFT#‡K )F'L18)wES qɗjavgfc VO5v(É^n۟8c4 a|cCH@'ZngX}z5u:xG;\F"kw&l3ĸ`a|Y(@֗:#fZ]`B / д b5=He|kt.4J)ǾH`8z(p|8B^HEs1|Xmfب~ӨC*^Vt"WFk2t۪ÃW&|E_kIכF$@w HfP^u'[PQF|ۨ\#m٪n[^@fݚޤDmVrHH@)6?K*~Ӹfap?5"ԾC `.=G>}ґB 4+-$4 LҒ:KjWZoSY(UXZTfoiǑ#1ڇK?0%)^REyyf ]#'=g@^2IK:O$meY'4ͻU=ZROlc'fF$Jhy.s b :I<f9wVo}t#C;>1R˙6N'un; Oc]_\}W`Ii:+zzg ֟ }Y1:z[]m+OmnHW"۸`{RM M߃A-4otO2*3Sd cWqg.S^%-KՒ_r6 1[ҭbi7VqXRj^,'~4,5S)}n;ZW*˻kAfwd%$ F_ߧK{D}-]˶5is\o0ӗG_/ї>20} L_/ӗme`*ТY%mA[p|Сa6Ѥȯ:Z` ͹%_eFF иwO46vʣ8"i@k2 ^7G7m縞8 R1Aɤ3)b׭AtU%.ա{,ܮwz?}y&!|؊|r#dG`D\;.ќiD@~dP''HJ z @m%ϭ7;.p2q@"pȕ;fB=b0&Ka Zt- f,xy#"~a2o!(ux=x Ps+k_:=:nBt0uI ==삠|@<!B AM._f+~ Bށ;2m JگIB;R :50l]J)"?OӟE媲2m}njtle5%5Ϛ/ ?`3P׈ Y}js?kDyLj썍hcn(QjDV츆g}O_E9xhCy ;qp|8(᢮d屸2t j5 Ӓíq0"[Ovq+ŶM[) b}̒~t=A;: I~0D=6ɘ_Y+rOm{LaY)SR(R2DFۧ'̟i$$K 7[1=~i̳\ YFsym੒cL.6AY=q̅ۻxȖ&`{e_!1t:u+Ӹ$3{,$y+OS]7KN\ƽmio_is/E{kR XlRx:ay۴eߜ p}ѧS_/}>S^@RjP6/ᰉs-qM7Ҏa"ŋA=L <@4{wduܥ2_-@bE6Y+`7o p%xG:̥|!a;[glݧ=\BU E3\Ս12+ޒhdh}?o j:d6 |f/@]NГ@]/~5\; mz':pnwq/-זd%-mhKF[2*Kp:KfYO| x8T>X),)qis$u#*Bc4rµ1t <^,[Dћ(HEUUHd|njrs $Y^\kYN; [:PkܸZݬi1W"( i[s2@we(1> q3U69E.fUxzC+nv`^rcA{r m{Hqu<>AB78# gg' <˳իf"w$^h)= }+KXPqEQ6|Z~!b<#$c OuG:"''􅄲*ʳId m%C%};꜃P3k؈˦Ri`K.6`QȘFYcl`|,g mߤ+Z(/4hj< >.۠:(a 4q8M8WގLz~>o69:I͍qZᐑpgBI$O !?4Y ':ܹtord<Жmy@nqۮ[ }~ vk}oP$Ð</sG_)uϒrǎm1wNQ|B⏾qAc6;`zpMʲcߕwTfrC^ WeXy9ME-÷RO 8?Y br-T.wڠZ[Qy%GuD6XȂk!O47d?-KXe1~*۶m[03q P5[ęBf G/;'E`d<Qb|lΞ2ϫW!WSVbIC|h,YW$:NQVRї&0<k$Ԕн?ZrbڏOe$Jk|C\o]&xcY)r*5fhzjO!:k*')4?u{[!`34FSUO3`NiJd>RoDJe'q6HxR)Ӣ߉Mk!61IIINO$6ش&'69ib59Ħ,6I׬@dcMXYEظa"l\I.Eظa"lR).E8?cw6.fT.Q&a>.f,a.f}Cl6ʸlcl6’['[ɦ̲\S;w1eCŜؚHQ.fl6J~za6Nr(iQq6 \m$''9-Orj3=CmXC(C@Zu<D~0b1x$)慔z||ÞZ"±^k\{/Y]] e6Bkd= ɚ愴,BӌƲc JeE@a欦>x}Ħ|#7K.-6 )xjMœщ+ NZYht&x@w$P@cE&Ivi_[JP@zhQ&){%4mQG Ղ@s'ȥU$ߒ{[Dѿ] JT) J3B֥K9IJ yZFSt!⟨!!7%R -)y#dۋUFF ({h:1H*C3u9OE7EOӽR%ؙDcNmj*JmBb>\5ityLIP @}O?}˶qͰp|ݜn.˙OdEEezhԀ73(쎡kHеÞO(\BvfM]@7M~Ӣ,tmI ݌ zos{`ޜ_e7kqXX|wb޲LPn-#[pwIiL*ˋFUb>C e|{@c( P~0Ki(=QF'3FE۰Ȏp~#?E A0 dӛ݌P;ףJLp'_NH]SA&wEtFK3#‡upsuĺYoPЃ-`EGkFY M(0 xQ hRW ]U]{'L FyeQтT8|A.%cĵ6XD0w&i^i}(7_6.`@S/0Zi$)<5u^P}QNlTMrjg5 4V\]o`Ek-(ֺ(vr^mTϲW;~&7V[|s erYnjr\^4wZkVʵ.t%ߪi+ٖѫBY6apF!o0HcJ TQapB𒜖oa|E (L;|*$01[|93~hڦwƲ "+z(znϵb,Z4]w}4Mh/7~b(W FvsQTSTN/)Oϑ,Ch'|'02|zIq$A$HUz}t4ej<5"ҥI'RܤDL !rqu=tP |3c[Wnԧ4];xZ)zZOڲő=X"L`@!-tt; C4=M!ҝx1q}iJbK,򠲹Yd3HFbϜ!^$b=6Sɥgd:?pe2.HE]?^}$_ /WQ0Ki}_1c6 cFW#e>_BYqj~']=MM>D[O %왈ײO"L!*m4?c^ Y&8BHd8h9{v8DR48mGRԊMUnj88[>,c:$~p{uޚ$ѴrhnF+J&]%>]'CGJ6 SC*=!"!ZY#ّ^Ef1Sgk$"KL 8 5^&xccF{UmΘ f\Cȁ`F)mπ4#86J>2[)LA<J>")ưea[v]%dih##%r1I 239=;;Yy-y$rM]a.0J`q,6N";y}BC'T־fdv6 Yzk{~MjO J)boo3lTwF|>H @⬗ma^R.#Sg"7{7GriF\uK~3?MOLA;ͭGS}4T ѝVZ{o{p^Bm-%.LLI4OR76,{yrN (nA1|Ox>cwHÚ;]j;BW3PNOuYUa݌= wwMc77A7`=2@9C[fM}nnSS>ÑSȪ ɏsaeek.3wk.y9ONa^vcy>ku[;|pD3zЉ>?3rR+RsImNΙ-ݙym5nj$MǂbPx ן +Hm^]/W%>Wgѳʹ9܂fz3ƹ9 ܂-h4`6gй 97!&܄{^srnBMȹ g&Dj &Ib(|!5DcB04N#46~I%);O퍴_aܒVkuX{Rd78Ai5DڅecS$8Y+ZgsI.(eۘQxYx`d[>V(;eۍ+rLw?n$! ߊD3VPNɐY,2mǫ0zy1gu HoVƻa\ȧ vSWwg0s9axkgn=5mM>Z5' ?yYs6j<7:]ݚl7&1Qm,nnŒd p G>?S^vwQY6]--JL],\`n}I7aXK^а07DŽͪѰmiJ΄2^_$!Ήo7 8K9Kܖ8fR8zeݙx_)Ι)ΙMqBooJTLq$t͕39S39S3ŭlʜ)G[-ꇣ,tLq3aS&8&>v}', GᄥdJavG>`~A Шh ޝ*ϣM ӑxcgcSf nA:*8ZUVp㍃Cei7j{YlGgfbpF'EniIy%Qwp`)_;hO;Fͷ|\ ^|H\1hZU MOm@b K#5+z1Iq <(’֩NK P߀[Z.OϫoH# ;sJsl'O_=J#ERJWz_ HY vkbR@ Id8I\EԓlwɝnK޵J-%^H?h{Z{M(^[ǯ>q$I}}`GRH^h r4mfp_46})d&xb2NL0hYmdA|R =*dQ'ؿY9_\9~3y,F_XhC-/{3cL/QhfC"Zb-@6eݷıTk:#$/zRxEN{µcQQf|(,D+usHz9#Lo`̽!usx7Y+ 5|b^b =_rgt֒e'2gXg:z IS KIcd,UjUAnpi7mh4:R]SJm<Ԭb-3%Zc$- TKmi 12Ue( qђzcӚ48P RcŌX*>JC`PnYEI|NӆbZ9"0m޵g~3na5__[BLglh-q&Puhk̐ŵ1 E:0d~Fo jJ^ EؗgÔ HSg!ti4B?w)dp7et88`bT1տ~wMl$t҃l1Y52Dڋ^2x=83)^S/ah7c\XRUрcEw-N8qe4#D&`o]}5!0֡n˹US|}}%Xpyp?܃MhG%(ݠTQQ-v1)ۡߋDMO|ʍy+eԘEִo qnlb9=q:;Xo1wB ZdwΓ-!Ix޷DrgʜE/ ɃKg,AwHz.vy+[’m$!+"Dï5{vz=Ϋ"=r:w_:. W"?svYW#fI yl~2.(娒מ3g /ȟ>0k ?cا_bMN8yGJXLq:BmndQ1-hVQQJ"㊒*;/IDǫៃǿs-lQEׯy#[X}z\?_~8eq,(}:@g#M`;ζ[ XYS/|f>el-Ga9NLϩd".:qXָX<\x'̾n{{<lYì1fś,PH~AJ}eJ7޿@ﺩdGR9c4qiSC۬es3٬n%8ܵWHrnͨ*MƸ6 2]!Z;_K+Ee)ȹ5oXĭ`glt>[Ds t3.uYgX] F4~eq-Mߝq3q%83k:c̚gt6H}3;2:{g:{fW/~~L>i-ΞΞLa05Ξt%Mg:{g:{gny37lbϔV˨2sZDdtMgLpZ2ު]OBo8F_d43݀w5zT6k! 3.Ho' ➫# |hTlQBԕ6:r) Yml_$ܵl~lF?f>uB(߽rsXm\zT3_FswnLsfgkFSҦ=z~8non3x)"w/6F_Ēg(lR t2,}c0Ĝ GYrwukm'h#Z=됊F9~c(fhZۗ}ز+a/;a8حr_ħ{]\0VN<4Ჱ38ai"znW;c>H/]lL-NS_'>Dnlv`)4U+~li#* bNw+Թ9(En>M)_(iC>]e4ґڣRr'nӧΘddi(- MS:}5YVxRdW^0sew5itG}ވMBKl;EQEf!`:$+څQjIunasюgM1{.8\"2|]:-ˍʻvvm_>V77InK"}VosOi TV1 f}֒҃fa@oz3j( KugyԓcKv/6jPHeyJt7OSby܄4c;3N٢Q䆒{mF"qYT;uC4Չdfu@w!ݵmwPN8(ӑg ӵ_^@xڍ B[D!dܺ jG+h[v涂%: ~{:ߢg0} :v,b>3MbŃ,S)șl\ֲi=f"X3,l+s36ǭz8mw[0>%SM@G?p\ b΄Y\-\6a\ss~Ϲ9W?\l<:hs ("Z|t竬P/f;?ίo,̩p~}S,׷Xqb_{F~}:ٜ4o6tl3`+*ڈ v9&'+Rcca[ǃ֧̓Ic3yEΞ8j} ۔p/R ߲@KZ=eYGΕ +RBX=K-+(z ªpX++37\ }#=?쎃k=6BakOiuQ6@cAU-V ii&jP &j9 ԣ3af&@E'ZDPIgܽ+.opSaEs+4oqw/7m `@:sÆ=f,s@)lHzrgiL-I1!.m.%9ZBc.h@i rr-YL@ޘ7Gc^2<~àE (_)xCiWcR%R'χ(+a!qg'+,|U /_H䣪֓ K_>`>mD  ޏD`,:l 4R$ '_FsI }yIz_nTq_ )@ɱ#Դi EFPma9= :>ϣ` -{^e$%aU{*تxƪxxR_xUleZJUXVXkL9W""Ӛ8}UlW1/@͜Ix&a$$RVCP6jH)'ћC$j O7؉A}oIBtFT,HZg˪gHޡi%Rw>CO?E'mO<eaIΡ^(h-㝤3%CtF2;R~ Wېfvڋ/OJM9\V /"^T DIGA9{mY+{*{ʕL+܅yP]=θe[IeoC y< Ta0NaThS%e Ir8 f݅MF#dl 3N5L~6iF!JA)iņ7}ч?-/\RZ eg|"F[~`8]c eL|N4or.79Ewmș9+w;ayLHT2;4s1ЇSk0@ayn#4Cxp@QV>8-1MhX ;쐃X_l zǀ|-Hk"Lؽ[/&O>$ׇ1'l>a"h@>%Q~ MCK `lf \?9X8W sxP$j2\4./V _J,&@.( 0PC2TOagPV<+x07 .S'`2Av UVL67~yC*>ܢZeODt& : +11[~`P3$ eLeit ;@ڼ0|~0pDtĺtᏃN?T"ţhE(qbtuPqߥv4iM11V@uF'൏H͐x8_3n&_=Q#`T LjkCm~a[jMҼxPnT |l\^Va\7joߵȻjI#d*V].rj/IjI.BFުUERWήNkE0HEjk]ij 96*g٫ZcƛZ-hYnjr\^4wZkVʵ.t%ߪi+ٖѫBY6apF!o0Y4/~ (7~/4t5{%9-xjLjTs' y5[UJ^\fR`]4$]5EhUm6?fUު6W8, ijҥb\4~G8tڋû*a5't*s_gN0 ! &5$4/oؖ }ǂ*2W  Çkh¦,/K#р"NΩswYh\گC*0uD)KyXH Q+9811pc ~xƠ% irW}v' ; Du';Q݉NTwu'3FQh\F0 5^|E}P t,,mB5z-3AH9U2e9rZ3šiiW^/+'-ڽW+; gn(yezkr k$뀑$N^`%^d[\ RoeR™ДP< )'s?4C.eP=&N~Ehj2$h184S4gBwo^OܔZUB WG>5zw&_;}N8r9a7wwԌ+ҍh7C$@H-wVhPҽEtwիgެBD={Ln\{כ"{DMr<DllZe{Q~=.hBfȥe㶹P*h8GQ*={e쁗أu?s2hm;YsvLxV͈/|"^4!5@$$aB+aؠoUrSilI4۞V ? m2?a{ۓ,!B﷭S^D(X}i#Ԃ}_u G&CG_;@80ov<ގo3Gr6Gޠ%[Q޻-@+|%LB"T)~^O92̣l0S8L'{ŋ 3evgiHvHlZSjپEo.z {tѓ]"]. 1`\g^?iRu+E"O ;Y< ި(A^ۚlE'\ a;Z;RvN%r--NZoB/ʹL,0{Itf'ZgkaPoh7Gٵ2Wj]$0^ eYMw}t2+hbmrRHl* ް[M'1v:hz7jFTy3EwOH":hS}ötG~NRs)/qV2iL[Ѥy,B'>3ԝ'1)mI-]ܥ3RxC? qХXs%exeDoD`#Ⲟ>R3oxE7)YHB+}zFNAd^yቖqI(h6Z"/ {/%gze=“#g@4^ЩT3%>)CbB%sv3u5F)}Md-EqWI9{4s/%yO 4KWWqt&ʜCoH_+3|oAk@6Fysn4\*VJy$Rhϗ6֔'G0@7’H+B22"ӈ/=/QEYvṮrU~=6l!ze}n Z^z-6kL 6C\\IB5U3A/k^pM.A8hkHt5Ԯ"5<dU q]ըEY5z(SK B͒AI4Xjm1V]X5U𵻕Caڃ܏lT+ /m8'ڧ9:1m@/[Zqğֵw%O:ـYAÎdyn0Ro^OmC`~5݊PwkΉU:]bs/&Rt,d]fyOOũjr%Y`ͫ˄2Xv.Rr|RT-uyA0Fjyhg  *\Ms@2æp]TK5i^FhIIUK)چ%MJVmXHۣ 'ڕ 5{|SB0}V) Qtbܿ)P&ɒNF6NRlx nw",_ ,h&NӁ)yv+[]mo+G'r EY]6Z13{G)oE\^^rZ}SmZ*n߆]kW_N@ g.O4^u؋;(HSMBqSQ%Oi8BN0N%7F}^PxwiA5+WվoXP!1G F}0>`9}`)شɺ:5jݢl= @<-#/J~UJ[C&/-B%j@nǓ v S>}JBq<`JD"1t#i$ȄR$& =٠}kwIFEP~;[{>ljG76+^XOo҉6"Oɽ:85gK*Yuca8$` R̠Vsb?rL"$(ѭ{hi2)/ܔmCi&n%PCۻX^@k)/H+Ht:8j>:^GK3lV$U4w\f )PSť~q_\ť~q_LͅA0 ~0E87Ouanv흧ygEtm -$',?2omׁ{ s8k+`{sowν}}sk߾`-_sntGP9 w^)+:du}]*seIw5=㝇zȊLno2Cۜjzs r>hӜ^Im).HcXi6ߙWtu&uvKr:1w0ù 5tNuOTy2zr`T&J7x" Hqz,..e&SlgBמ& ob`rTX WIFècE\pYTi0ruEMMDnwShL-k+:Ux)yyiyIDkK[KQթ]RKhb.+szt3p%e/ :y*|!,yޖnUJ%鿖LL^v5^[zᄬTNIDm;ҦJsk{"꒿2;09><݇H5i:fxS/jzS]?#>Iez'Br?8ۿS<Ae%8S8uSdV8NClp6N={t,pJ$ # ) V0XW@\F 8U8NqQ,*}rQ(e2Jwr/d`H;!ݪ2Nx/MF*2Qe?$wWKǹT"14ʴE/d -J;+!=C %;f^(tc c8g DfIiR2&oNGN*ȸ3t|UJ.᧫;[Vw՝l]zY}2=vԓ=xJ.Ϲ8pȝ(Yڕ(鐝lXO.~y̧j#FOTz8#M?T3i35~grj)?^u :Rn_2~NJ\q.F})vLZ,J-nc ~,n?gK+>?fCdz.Da/m!o!N,unXSC64I-i^D}8U>G0 ? Dތpt j i@;} L[l0S9\NkǷZ{ƭ%ʋ5u hjpKѶ^;pt `g.?\CK9/;d"D_4 #E6Đ؊g'B@Jӣf)2/Gu.71=vB\&# bvAӗ(gB_PHY oo3;3@_hO,+_Md5kي̱ZTFq֌ZoDkDՄɽk&fٞAŘ $O0a~ۨ aŠ= 'wj*#3 5ˠ! o'w쪰 = yMQE|b}mT8=sr7 }c<]/{(uf쒽QVӝvp}G2jAy>W̓1Lh.@q[txݰ6௿M%񋋵F u0:x۪P $~%( uT"ʈ>  >PTjVQΑd#ؿ)rTkCoB 986֩vvNܣQ7p K,%Fy.{/uj;pwɫͪ`S [\r޸8;o)&??ju,Й5Q3˜CR}@q ZpCL:?#_@e%h$t!QIB|z턓:M:k]CD|l&V$Qқ!@(K31!t 4i EH&J`Vh!I:u#|cG4Z%rJ>~^,5_)w/lTlGJ|f 0j=O잎aЭX'lO0Xm|_|%`9) z.AðoXec9^ǎbV !^꩑4qu@`3HWNI^msf>ӕF9-oUtM|/ 5,#f.`QHo C74a< 8\67k\9&}|>`{c~ppp@e6@8 } <)}YPwm4ɍH≘q i/B 㞝 5E#t/Z֭M_ju]P XnPXX kHP_x\WzNǝl)ʻH2S$bQڳH:SHJ}20b:Ah7MveX_5-T&Y0 `.Cy2'!r[\zBєhIIind&/X_diB б^*H/JK 4"9^XԘ]^)ˊ9zGf1gH۸8&KW$iHhyVoVI}@ZO1QOQ@>Ȧp188ˠw3lc]Հdz)DBl/l){^$_+3}d+*pFFڪ6E Z&#4ۖ>~D>W#H|SFk6eI 'y kejǭtkz81,#hL")G0(ȼ4c]kL{q4q7Eklu_kwuuyq_#Jkzθ*pN?k\Gzi,*o*ʿ<^<9>gf~5sRY1cʓL3R`*m.#]x:k;YxLCY8WFY869?qGɧW(D@':"`rfqsE/䆚ED߯Gܽ&Gwnm+| e$ÿF@%]A]I ~x* p%.p!+tc@b `'9Ƞq.` ̢\P!\9uQJ\J My,H?OJ( =O@\Ё8y^t.YsBxx> q+=8'mr qNsB& q;}[M_ ՅGcLku3 XͪFՉ}.RGȹP*B/gٻ`"T@.l`aJBƧ .<}_8πݩՄZ4%)a֩9ڼ7.{Iש̣_]*w7f *pm ,quG=(X;FCY׮G񕘘HNH]A&wEtF{퍺};bT7(b¦a4T"ţhAi7YqbtuSC* S]{'t Fygpt3!j~IF<# "!>o5IMCQ%qwxYq]ި}".N&)OiըyW x܄/rwRelP;<t7S*yEBU}wK'9ڲal#7XHsWM83DO}פN8r¡M>A$''}7-H/zj' 0԰b7,pZ//fHA-{i-{[VPU,MW,MWfnZAdG=?<\H=eJF l53.Sʇ*Ljϥ,Mמ4Qe`Q|72)KDw ^3Br  "ïG>zjC~] WΑVq˟>LO(-c\G )"NkeVV& *q/ڸ6Ed^BByDPQ]غ 8 \[l*D^-jng &j6>rC%?wJ%hGA.#xpq/";T*J ! ӝ b1 h,L|~unAR1MkQ4}Q)^Ђ|/o>5LU_U( -~Ner-Y;iwJOpJcyS a ONr^'gGeއ,|hiiʹb#3-~13sBg뤜Np\Н6-l3I,b8;2OF9N#7Q4QE"+йy[agY*rʔD_8#p[v,3dʺQoD2 7"X1„ O`WJ^Tlj ώ p ެ)\2B%.TL\xiB]ݫůr m ]ZU W-\ŲpP]B)cQc8[$бs ^J >\=\#g#x(WSO!n33TsoԐ/;p_@'"VK3)`J\e<^F/*LUd""H=X6~#!bů{xl9>V2U+*W^y3]=wt{k0 7_\;d!4k? aA'~!Fk:uY n| :y-/ @€ a`0 IC5C(H?T `0 v5Z V2HcoFu8[ 1Gwz]k{Y֖@ٌeO6a.cbߟe?vwfcwlÊԉatww7'VlqWMD̼ޘl,NdöǓiDr_gk=}2{MNQZ+jCư'cxeDUy+NZSҋ q~6Š( ;z_:=>Tr-> vbUG# T{/_sfXkh/0*jstHCW掸V묩iEܶuJ@Mؿǀ( PQѓj+khjw+}л5?xEm*mjX*_hdQeMj;;OOPA!( &=V]niSiM)qMNXiox"y\FweR^d(gB2kG =}o۬slAlgبY`jZ87Ue6g|36gۨes]F-UrQYX٧ GY@q\_sk.~m%k.m À/!~z!=zEH.xO+|DAd7$DEO.aGp<tG€^x.)^ E^B$D7_"B!!? JRZ|bh۲gmR1u ئ7 !FP.waEoVellsͽR"3MHcXu J m_?&7>D{/PBhr4 |'@k%)6-viαIsx%MuMrU/YAZMai¢u Gj۝`^ 1w=+h2y0~] !vqZ˂!v"{s d݅ >8F@rD_W?6@㏼ }߆LgW^)W&T^sM~ &hI>]YOnIMU"βb(#???}_KN3RIJdF>)]W hnX(#;@b -FC#xj'rf9@?[Cwsĝ#ibRqH +*>Fff>¹Y87 f,zYtr"*KEruL1-_ &Tzc$ G/88|t¹~`zÛK'K~وp,Fxp0z,O&RPSi%f9mrT<0&) 1M ߤ@0l1V”5>w2Ggo@* A ^ eik!mKtzB+映e v;F DߏaU_V;.GtvC$ 7ۡ3o-U$k /SqǓ73aԵ;/opzwK'3˩HpeɷV:cdcW7b]BlNK;r LϒN{ !>czy(m DrVVaGJa+T@ i;u ڬR[[-BɂPb-j~I`9_(w?UNhoH\zĶ)Ӌ'7נPEo.ܳpr0} Ɣ\FʯGFݫ#Wڻ|c_b-lTn" A ƤL\t +VNESQd5ZQ"1D;A{m._H*JGTSٶcգRC>ϖ=μxFV/8V|S-cVcJ἖= S D*^iJq#^(}Fj!9eg?V9K1o&b4!2yu,6/%hik4dDA3X#V mMd󝆍Ƅ⇛Ə9Ƣ{MKҧb;a/D:lغcoO鉱i*7 k^eא%y kEH)6TvnlE|$ g9 ]8z;IL{'RY?~\ƻS kYQeK]o#z=:昿` E}3JC-^[܁9VٍmvdhVT% Ms NԹ]U|˘+> >cv=Sp$oMX&66R?}.'gZD,ve<`B8k;Gv[Bfo!ih[AK\zV<]tly^1[ODI_HS:`ay_ ecI{mV;$rZ3+4P^S,ʘ#2arv>[;ڙyh- ΀n9vf!L$&*m38Y~AҺ8pS']g[9P\4vEEg[wCҢ$[`<~ki3Cfd!ϴ=mgbUy;I4%"6jY uY-JXXD3n8k蜵HRAZ.bOZHh,xDd5"2ל"Znj 'X f%f׫ܶ]sJ sMjHQ;:<@R)!kmJ|"c ֡j `V?^S]2F0h#)~#{֥j 币8_wcDΘn  2]O~[+Kg93tL2g}ȝV``47!Mvh]x#aQ%|LKG4,Olms3rbe%2ρMcZQ j䬉iqv1-9v$ l z Q$6q4%*9?* :)Zy7g1ɲ:o(-rx+d-RڱPA:R>O *uEڃ)FԻ8!46G3֊\''p2lG$? ®+4JeK+mb7nIe5Q'Af1$4+>AaVpc䷙+#4& ZR?@ڡr_z.a/w=y'vb ]i`9bH=(:elPP#<{BiLͣ> _^[J4&x&59_y/$әHq[)7;7[7ڀmjccwLE жDkh𯒨0ovQX(, |E<_sZLbk&@Nlӏ.=:]ft12r,Sl1aJ2Wda|i95Qf,;cEũ\v5?1sBIDH쁉02b8Vqcu9(@v1ʬaKiXdiv"VKܳ9Z]4'H[6δ%9$Hٻ=K_=>l>TgZj޹K.O*j%Y?LXE;')xEC/-R=p_/$L GxP-Ky%зB%L\mø5KˌL5rv}15u[ӶRyK,bJ~5 u_[T:+u}Ca/#%-[7>+ɘpľ( ]n" rg[n !&tali׆55+U?~0EEd q)ZZ{5oKݻ8 ?ɫޣȸF<ʫO)HmRQ7KC!~>km*U\Z>i^͘U&mqg2'&8aH]?Ss3:=;Xr{pqwmz$CX ]5#3rnPjخs7d!]8;c,UE¡pw.iU&¡u]8¡dt/R]8LX9r t&lҔ ~ZڅCҮQ܅Cc 31"V:~39s719#™Μ̙Vl:\ t3 I9YΙΜ̙ά3g L#Lg 3e4 3Mg|4g:s3g:s3g:[)smf:md&$jt|Mg 2%VO#c،bJU/f(G~@-']xp|y+$69Θ%~E/?h=hAW?xkz Pi2,u6O} Wi95sɤ]2ig]d )EjɤɃsVb a:RL`"R>&ik~ߡuM㬸tsnUIoRv}DX\eNNx4cZ4F+sULR^mGelMpmޕY~ -41t2 SJ'ܟɁ=K̕ϘIseه~*#<`"UKv&ggxaAY7nsxd8k랝{ٙRsϟے[\2 ݙrG4q T¸7+%wXdǞ{.I=#<(fcKC:]L*)U!SoM9)oj^w)@GKJ:%]X5kmNJ%zD 3Jې S,>Ywٹb9W,\bR;Śv{sj<`xR NrRi $8l%ŋq5Oկɡ,nOw8l3~:m͟ΗjnT8) 9II2oLM[пlDVo 77$*d_d5PӷBT4հ@Oqj{;rMZ:NaM9)oj~ߦLSseY|ȲM4e1VMwJabzR?B4pY0EUT$~gLɝt!n|Bn&f;Cv >yCJMN={u`"~*)z9ӛIM]lP6&CqIUYT9WNV󒪁 rhJŊ.dUOr!; מN6D?녊<2!5lwJ n3-â_8r0(ˡ;5 }6w[YT޲15mb@<ċ4 bVc* B%_IVĔɆɷ8}!14$5Tɞw]4^#s½w%upDF2!˫L QIeL=R-/Zq2wήC.Þd( UL2wʣT'9Sn'1-S*k)<9S&_M+M\-U=;,A X6>Fgy͋yc,|}ۧi aP?r[ss .5۟j} PaXҦ _.$N:l驍~/IsL CsfdʽޛN8ys]f*]ff kspnZ8~I` k ]u7Il %YGDl)}Z[%-K}1n@@b : ,M~uI/45* N~0UxfHw_$ 0U[12@Z O nyV^.Pbk&6L#p:5ԡ8@YY=q:q:a̪'̭0U_if}1) fT9E8'o@)8k]7;btI] X2%Xd p.iBK23)lb`$)g0V*8;q|-ۥjv }u{]?dX$ =[HJP @t3'5̧>.ve|Eg6 !n|BvIsTGCؓ;D/>G0p _: h4΄M"U(p"L^|JQ lS\"C#@ YoPh_Nmr`.%6t' j#Q"(?#a.! ўH t,ZoXJ7 KZ}G N5ob#EHn ]sľ14q3JvK0jS7}~:uSnpYX3Ǭ+J17d '՜,=C8]L?E Lh"nmCZD9R$4Z L*b(ipӦ W?i$$5rSȝ6!릂?K&`5蒗$|4;.nx:}k}:OketmMH[ sxP$j2\4./VKH'tHP@3U{jT  Gc>  &w¿z {$>J]`2ABug;S4nQ?,w/z!7QE1!ڵ4SwԃIJulףJLp $}pbuŪ[n x7;Ь6/;L/G7} D#mI#A*r`Q"Qַ G (Xo(3% ؃>"tl0n+C =U7T8|AG BqP)@<# "!>o5IMCQ%qwxYq]ި}".N&)OiըyW x܄/rwRelP;<tYKU@;@ f$[O^M` XUz7fֺjUۋSbҬ6~U#rvѤtլV `zG5:Wzh\]P `6e}Jf qdi]7p)*a"&`E&IZ`IZTPkV J&?+:pitI )V:ww|9/ڭG^3Y!t"#6 *s y@a_a3")CO_Zq4gcoƝ[YYˌ$Z:PZiws3YJ{FGB2o h @y~s819q %U6ƾt~6k-~/?{c:3gJl,\`;Qm>>z 7wBJ ߡ3!@S&u9 Zk4K OgvCYHrgl p7î_s-!l㵴5{9$BJzghg"!Dh: ;`yD*DỈF9(8v K;65O\F[_V{}qe0k-LėWTH^TH(' ;Ш;%ӓ/S95~5#.LG%0 }`{*`N#::#?F)ٽo>Ć|eP3Ge%)/<+FK7.icS{N8T#['催l1 ,i \g醧uÓЃNStB>MWdӃ']fy\  N{tQf$/*z!vDEtV eܾ7. ??O[h PTG@C P:( ؀hU ! JaajH4t`aaR"E?%4bQxvLw{@0}w;KfkS O"uz _>Pϸ#\>E7oTat_(,O,ckz(9e&c 2nT' fUrw)D)*-ZKX_vaOAiLa:/ |$`]t@ x:jE߮tj߅Xwag68TBg@5ʆJgj6fZ^t/$TjU9*KS ի\+i†N3n9:ݾ߁&RmŽ> q;S y 2j4op>r{j+%cEhE qUi-L!C%(^ _}(Wޅ쎻a0%; p;Xzzp'ur||@ ҥA_~ڕ]`]

&c(D$/n8%OFJ\@C?$:.:_HfH`_dz {*M;%;7g9պIe<-<>`u't}Ao}zm۱o1^1 H@d+/Pֱc |ѣ8U=xj4#cޜ& /1(skA+ γ^`8sc-%}8d!%.U^.S¢dr쏡 \tWzFO-wY7Y۩_(a@l$zE .n=3=I\NÌ2#h$rGt0ˎOQxh<P %HS9k3314Տ#Yndf Q)9HNdNLJd ⹔2p(ə,,P4te:'xbJ1 @@"?2uz N GIu6` 8rB8SnlrcD^{BkUN܄s bn=SH8guaZVT+IYYIJ2X\>Z x<|>6q:u" bND6]' >Yx:|ʬcEl6+2d#Y%(d{8m TmfXլhm̜a>] f\ xRqƷH>q,d^*c@b9!"A\VʆH$и6o~6}X5uҟ*ӝځbGڕIKk0%KT峳nR^ceE{7}Or(v"f,ti^@ў1sOPUV3ճL3ETێmrlc69qMkZi lSM 7Eg9WvB$M=|MJ5+г=W[]I! ,kUYjt<>X+zъ^"[֭.SxSO1Sq֓45?;K{|=RRxCmQI p]*1LmBF:n^Wfu7s+Szm?hF=d#cf0^RS{^1ȫ8#O/ͅ}wHw`HJn)cwE$9og KB7(e9{9dRT` AޏAF x]>QyC-7$>~va2x/cUؒ%,¦;fXS$:NiZ|}l##1a4 N6~Py)ultRoC(*#)df/O8$/(HlA AƑ=SY7ʠfSopNreg.?j/w>ljBHj׼>]υ#|ŒTo?錣Z !tDf )OXEvo/VBkae4 +Hw1gi [[ӫ[3VkZu M|Xi׿WI"Tw<;/Ok"Xz6 6:0vpZö)C ''c,*3`Gej^b5OV*Mt&U B +q!ƇI3<;C˙&ItuPUĎʉ]ЊݮsMCfmfl l*?Z)HAGaX(G|+&"+%D">՜[ ۻ .r;ERvZ+EQn.x_!g PPpVxc8z`C//0 7AgE*o#s7=ln8L_hԁ?)aDFe}zPpvʐB\>+11 @Lt$ a/-hhV퍺{;bP 4( Bu.. Fe;E(|K`8]`YVG@ e{G$ F+q*Qa|ƻ0pt3!JqP)@<# "!>o5IMCQ%qwxYq]ި}".N&)OiըyW x܄/rwRelP;<كSo7A]aqߐBNvgv~4fR x˘$9Oy{&SC}ߧVJƜ|N/_-O*=n4!5N~Mr5'*-5*2v,iNg`gTX'ccPz.1Վ~ S=ah2p_$s,U_)7lΦlΦlΦO ;C~FMæ~";[BU+?!iWhyMp֐)ԩ9,qU ~hPv'!l2ތVBHIAwN/LK4\tc G(i(grg沨Eɧ5ӔeC<Cꏡni%# 0u!D >cm0dᠺyԜRz\vfFA2Y-)!qP.*um󿚓LDߩ|EW yB\9aC (g%]J1\Tf:'}!?*>=x`5x[=?'$ĝMhr'*DJtƀ?F "(XO )](SR2ec4WDG' g1!DChġ'j> &cY؉|*qA@ i@pDvv;N(܄De]*&Vvl~Nc^ٰ˼9CJC?P ["KV?d_4S]kjڻ$ZbZҰpB( )["=zx_E#@l*q3d,xE^qbwg[Ye&!B-,xtK=(1N. K>%?j:{ oc5IXKצbbTf¦Q Q$2?r:g+eO~g'KwfوraD<-Y3{ڣK%>=_H$u2msD<|_b\0 83Nz}?AϙEIA1(fH!`=BY mסg4N\?DK^3Y~e2 [bqڕ+!giяvZjSlfgTFWm{L>}&rL;x}`To 7V1qcN M){),vOOđ kn]$ڄV}nu~wtOЬ$h6:}qw Q}(דv0f&}mMܬF+8f"hܘf3ޑO;T cP'ol(NF y@&b8h,~7ox\DhCQ!~&N6Ž,;4POu)c>/¤d Hs&tO`|݀MjϷ /L!XjSnDݦfMGW2@*?4-{YE2Y9KQR$Nh(lDFlDFlDɇN)(d$ s?ܾN@nԭ>}6F C-L0d⍖{΢3ܧ ~%qQ82SUIk3?$ZFQ35g":ڽ8 mbʞU4 Y"H߀SqG?"n8s5gHhjcmmm8t(#| hZ >cs@2lFm3YjV!$@(Մ2DHbA *>E-LCyC_4!y$<1 EUA81>|.GM;Ƭ׾m[R>-{T`፦?,pr.ShN9y(27ҪљMtiD̦6F=klF)7 ͤRMRZ_Rym6Oe=HS{f@aw]e4ٜZm4m$Ū6јOdWd]]9Ԛ٤挱jJAd0C_g0/M#N^W_h@ WΪ'&hDM@H aa!>GGeaN[pDĥMhrP܂ͷP my'f_pO̞Xo*jò|l1MEjKNU!Т7o.o=MjK[seQ4|$޲Ux*nڟ+|m(} HY 6U7hu${؄PHɃAuML̯XNa|ċмyq'y E=8lƍf@W u,! $o"G) `;2<ŤM;G붼][ oY݄qn|BaȔ@ѧS&.-z R!I=cTxӘ~ 32Yd@|NfHؙLU:JgR\vsT&3Yzml#}=j`j)z&KBn,BfzolMجrĘL*pϙVSO3hH֜7gyJ]M!W'lg[=T频N<fѸdUG?eaj{ ZdDL$ q?FRÕEN̓n`Mˀz :骭^->l\TS̄h%H~.>vfc|U$Zqh%[gHO_`U|j.3T%VTFŜ*>b ~ _*&3r&yeOa y ?pwcM.ZOeI6-;ﱫc12Pat;qpawr*uJIS{jZ8 5)ے Y3ݥKESS7V:SsioGgߎ O"v6e}4IQJ[p\Ͷ;I$|}Ht.]">SqvY1h越+S napS,nHcZ^:ܕpjh;pɆibphႸv=N3I /]dseӥaņHMM31Xu*/qHOd{oy_`5W ( "O*9d7>7MWȂ'|ga'o7gPe[0>JXc䙽3P۟RØZA3BޏG=(@&OQ %)Yl[X)L.[84l!Q*[;-Yu,"M=*[Z,-{3;U,MW,MWfnb8  m 3 P0j29V%  o` MxMxӛB, ա`1;>hԏ5sd4SGE7mlCCb srYٓ6rBm؄{qoj^qO6%4ZvP7E YMY'؁gh4yB!a\ZtݻR$wqo Z[Y95 xd9iDay#7|OYV<6 fS hC$z=v_g OJ%ʛ ]j)A$ך,ӻ(Sh'| /_o Bwo/Dtޏ)Mw ӗbH䯿lmLE~mO$b@t8mzMry"[6}a7u U ;CJC:AOGVEtkE4( xF |C|ʽ{!*\>ɋN]5`aH%Sp!Q*EJY*&%x=l#qұ|σ&攧|&Y/Ń!Hhb0T#cA-mT2 q*]4D`z @sB{3,[$̉i$[aI~ ܖz7!%a klQxMmlGg_϶BKYJ5̱'2P^ dVZI p},ȹ?c(#Ly"_Ѿ8󨤏 bĎFln<ǭ{ju"O] T537{{Ӌ2]2G'okm-#[89?Ã"V;Iqy(j]B>Coc;v j}ծZ27HƆOagPSd&+4_TN F&`FAOFds ތ$R$i?)aDFIOb޾c k8cBH12݂vN0 ;Ь6/;/G"t7;#mdG< q \x6mu?0hlg GZ.Xkh\T]cRnt @8Jqm / y]IoZʍ* Px*FywqvZm4I~ OFͻj]&|A_뿓?.f\4Y ArU6V]o`Ek-(ֺ(vr^mTϲW;~&7V[|sh*WgUiV ֬k]4JU-|W>;-W^*mANkjCP*0aЧ3.~ (7~/4t5{%9-xjLjTs' y5[UJ^\f'Z]4$]5EhUm6?fUު6W8, ijҥb\4~G8tڋû*a5't*s_gN0^!NH*.EcVYo_aOxPREUi,GםPN+pH% 75 ĨpWB&Q?~ Py_#@Ӳ $>=pc{A{Fѥ,=8BF?_tTm@}0KƝCٮN CTc.z4E:JNcJF&-ap7ț(mϒEj Rsī}jOɉu$.HZQ%n^C/\CCXS5-ӥ(%RBѶjf;rEuh<;}aIgc6x63:"^h]Fy xf{tP;%ILͩ ֧kl%y,,k87RsuZ9tkzҒLI!f0,{lDb5+ ͯѡ;CYs FR^cVcd dE;iEaD[ڎmXr`K25M'T;vJuw1w8?%Sے|4;a Pїkrklȇk`J`~BQ(XA^97e^ȸO|vzLKMM˨P,Ԑ0JB\6<w;':.# 6Oh?sA &ܕ$5R}VJ7聚c$+D 2%AG z 6s&_F,>#=9T4uwe2ǐ)85 br,Yp-|k#3vA^;~o܆)X>?LNHZ,)Tt#jkӢ*$i}UyOVMMS@1)'rWO=?_d5mB 0K%UP%LxZRkə=ƝcEոv =߮(;ZꨥrJfՊٵd v 쯺I!Dt0ќ#:ɒɕhӻ91PpJqYa3ń:&xS`g}<|Ծc`? |)S3灿3 T#w34fiY&] WP6 BZO/4Satq&,sSBb' Z֜"<9U8mqJ?M\Tfܲ2؎ S)sNx^ťY ZT+ ]yck]me50IEnѺ.rEnȭܚ2H. v+0mr6pT^c31&[I\ {TBQ! piDIBifUbUCS8} W^,5k۔lnJLΒsCtn <7|6cdO4$+Y\apYʎ(v\D9vܱw츋 Qe;=-<-  8v^Do$leKvb˟V n`?[G4e),+\J)6 )@;;l8i은77=}o_1;ƞHAlw!% !е̺M!j4h\\<-vzۙݯVnR<:mz]mzUkdsnOi8? 6jqk1۴cg}ݦm<@g=6?m:3;ܦ;qǎ;o/^c-{j4kyV3sa]smR.KaiN.s'v)m;Oq;[`R'i3jk0|θ5\&{Zsugw玻j1nwY; H_qG,81ʑ;'rpοw2>;^+Y9:Y0Δ;'7p̏c\|O.W;`fBco1WCT=~4IH=&C8[tG%v؈{7@QZL̝Er]qvEz.d@; %,B3.>N؅{3 ~;}TH6xcp[$y kNL55FNAe|3eUGV*@yJ{^j{^Z{=ƩN}u>obk)+ՁX m b\pw}7k3LP2 8~-T~ݚ*X!)!CErx(F,)8-3%^IC!/0uUV 9-4ZB/Hò2[J2uÛެ8IlJ|Q ;tUFcprC n-#[uۻ 9?Ã"V;Iqy(j]}BKjeF?!"UB:v8ŝ eQ$Q=8)Ճ`2{HuGff`R/PoOJX?ѮQ9;10g33 $ ed nA~'@ڼ_^toIn{ȿt.. Fe( *T y̏o+*FW]t`mC㵏S]O1|K89=6SfC F qm / y]IoZʍ* Px*FywqvZm4I~ OFͻj]&|A_뿓?.f\4Y ArU6V]o`Ek-(ֺ(vr^mTϲW;~&7V[|sh*WgUiV ֬k]4JU-|W>;-W^*mANkjCP*0aЧ"i^V+5RGPn^ijV KrZ>/4` ը\5O~kjV8)&j9hIjVHL0=#l~zWZUm4.qX02>K 3Ÿhpq2ɇwUxyP^$ii%۳jRŷCY-*՚XZPf#ct oL-e$7|[ ;7kOUȿz#a'z7C םnUdO&<>Ro*sm^> !+k8'Ȓ)݌;ԍ"EB)/9\^EjE B.P*}rR&`7p oxPE@~&ȳȵHjyԺu;hA H%[w5˷ʹ\^f.A%&.AoѱhƱ.ÜڳYcZDZ铗8[!wmIO7\ˑӌX v;*" e@WgV]4( n(w~1ׯΜ :ls2VL% |/|QQg"ma֡{-M{6%,uCw-`\K =N|e7uۡnXd6 ֬J(gvɳ;S'ѐ\ \zHPt=y6?8S )B>"plx=De^戒f i!nR`6p|#Fm[Py 96,ƿnsMJZwcy8C9f]o fhD , ;ɬ?Xrc#Xi͏$l}YY~`xd &檾(cDL,Cہ&kXCdjDK%$OS3æ=Ӱ,X'WH!7Mk܋7ܸ'72B z%ze+K;#z@s B=eɼD#eb90]ueM~4V_uuY*hω*(AjB%N3m?>a!QߡI{ 8ZrZ?NиDbF"ZB1(K1hiSlN9l6!%.tj=m# 4ZRܡe$0  1:E;;M';%tD]vbN֝Txad*SZ1X#x.}cßu>:=$5Iȱ@K[cm)ex$"32>FN0񻓇O& P-Mr7jAYHۥ/m!k`jQUojFm|ut:E{Zw3$XqPUFjʺڬߛ$|0Ye`ĩ%wa*Xq7χRN&N#g~'K%PS] ˖HO 0>́t?a1{0a:H;6߉F`TCU `:.M&3V*VX^nKқߏ˰cZzl-=c-=}-}Zגgʸ}9=rz3,7u9=m9=}eK&?%y|I"5i5*6 (}w?avzXK,W4(}⡆ Oj{)C.eiewL%Î;8F'9p6riL;UE% oB7+3k\bGvƽ>k;YlIs!IH!i ;Rwy1L&aJjcꮏMBw&7*q$;'dB|؞m?KIzV0Ybp7ͺy0TOvsvۍr'x3jA3Δyy3 )|,K|҇\0 Fvrk4wrsBQqXy<|{$閣-r66h6t4݊QI0J2k)J h9`}Tq9~N·h>Dc?Nd= 6ƳGy5OEUɯ4xR*љůG|>IE%8ZS=N!A42ZeʆP&/HQI/Ps~tD,ѱwloINP$MWMiP=5( %wzyo@9G":f=xt1諤8vWn ]hL#ɋNn]GKTurETT0I/`dջe$`(i>i5 xeWTg†= S(Y<,[xa<5^ri\ƿӷS"Ҩ[}DnڦM7i[R&OdcNⁱCMxhOZCllE ͳ͋͛ehyy<54"忼iW '̊wR}O*!NFPd}{ ] g [-b(mዕt3K3~Jnt&nsmb?mb?eb6)U_\EP+Y/{H3 72=GiN+8Ī,r11,}x C\#XWc_?`TE'7p{-\pFlo`(Z5Y؇8!G"JxQ\vhwrK2/]؋6tf|:cnHIm/v >n۴[biZe11ve 1H1z /x8?}km$h>g6:H8{\|7}K:.= A ~ϟGh_ﲵnDVezޡ^v<ޡkC:.K*ǧYUSuUOulOKuzy>Ei#yY. S\w6AgǍ=mb==njM,ף܊n˹2ܐsO*S1 j0ǃ ^A݀sŕxOL#&+6>-vI8y˼#K,Ej[&Js-c) $. KBf]jq<\ . % 59ϯ7~cUH/9eb"rL)%\էOvy%vy]^b%^ĭ41%^P^wם]糗]8tj1 d9/X~όx;W̨VLKm o'0K7ZYiŜk5U 5#'?ը5RC}N_F}uz Yeӛ*ǂ[ D/U$:]EZpr&ƇVFEH4ةnF^&f%X"*eϜKRE2RnBi&D"% Tvdq>O"kqP;C=E!RZ(i6``` `!wmf&MV'9% ?*~2 7[` ," hk6E>?/uq8tZ}r)dAKYس.@nD ~B@c#W;v~PGFr&02 5<'׃ߣkDi/fij)ETW\uX UAu 14t=-0+",q#^be<2oM`ʕA007=e4@6g,CvhH5ԧB`;s@*+BXHA9pF,8 ڢf,ŔZP??ECdΘa=yYW qzHv38Hs&ݍ.j4G2~#sN^t7m dSЇL44$ v00{Vc 1QJM Hicq%J!NWfX7X"^C b/|O!ztsȱFkB]׍zPQ'NIPXV_2I$\ P1 Hh_{$`ΠoSH:?XNfӂ#EΏO=\j27a;;sbhJG\cs8g]c"xfagY> v()SgY9Qg,7c&b9E?/yؘa6zQEdӔa)_X4x md=3.3tY?dׄ[]5d!\`'N-6P0^;a@hs|POm'aGY.q^N{ezZRser: !`1EJ11aޛvq# ß_ $!%jjCJ'"frx[dKe[hMdp2  P*T'x i~#3q3Ke3n A 3AkYB L_v]Eψb},]&F|2̍1l7u7{j4+K㢛 jBx+ЊD|_W^_ْf֋8_o{&WXX?'Yz5gWػ.*mTMR=OfC:\@ yڔ-šNAYN}VJdFBzv!D!m1@Uh ;P8CA*?<ibq >1iQ)i%c`E I326) \b`yǁ#&הw[IV?*Qo^o^&AZlol=SGyvlAv|8YCfl&=ňO#FǓGٲl3f56P,akP!!ٖSe R%\߸2 OXXy4'I3'IiKjs*Hɚش '|É-vBfK#brK#WaRK#Mw0)%O=>d{K3=Lw %c-L^hYyFIR=,X\IX]-WZ,<fxV!Յm"Ijz_I鵖 }vYV>%zZ![^:D3Qa9%gC/b7!vo/OQY|%f'zDHϬ6FNx12M^"ܔ( 1n<ђbF{ؾEfS%zijֈ xZt7!8=FxvY p[ytF!3DΎ@@ѫEP0NSA(UZQlԮpab6VCp&_AlTHaT.dU1fCf˼df51 YcaTkjj?3CNI J&Ƙ/3jʮs4ʘƧjLLZ+9_>DJ:eMV ۷ 6 Th.8#⡡>oKHt@x:(}w̥&VOĭm:'M:`GL4HeY|q0]fh΀9|fffTpIptpD!LLNno9SNJ4]pXۂ9RNlbS̺+/<I,+"^/Č7Եɂ:@&W & -_`j-_aȠ e x6(8SS 0SIk;=q&vR+8VfƎ' ǃYY1lNǖ&&2&R!}hYEm؉SX=;B[c23c(R{ +(2V$޸N{/|$%b%"S$=ӨBAQWSMޛy&h}B:qEh17qO]%ׄ}ɈŦJ4<sB%_iK^fqc/I8ߔ(Y&W0ϷP ~BDCe[xP-k/xyeAz-)y2R#%Ht̩ ^{PIO'E>u\۰vݾwnNNk߼YkZ #YD ifbd /تMUh4VCu s<=1]yU%D!h'+;%3g2/zc}wi6oZܼ߻w !lޔ{,}Ez;W5y{6{w|;߹wl܋o1*~wL!= ط5,OIڐB)h'[<˻?r>^𒆗4Tx^<y"ȴ@Yg ^~к,͟W6`XOV|Y=;]&4簹PElJh]DfKh'Wn0'40LIqwzuI-Qay5be>0tk{_p2g@ X?6j"!ǩk, <Spaa#=6@81ZƠPZn:!vMB"av8?D̩f1RJ:S=h84R h< [,s 7` {$6u@NDP&jJEbQfTj<\jEc}Fjgo/?/|?8uEKFX^^T+.r j/ʧ_j[W4pQ>JzzpzdWOPDۍW#go{YTc)ĚeqQavp\(9ޗ]X9ʕ#V/.  p:.A:Pd@rՎ~%9,A ؂0.NO~CvYpyDޝ"IgvYCN)2m@yj;|U)GαE܏@ P0g#\$%{||/t*@ f^Iru;;:=8·gcvTQְ@ ~>5'm#%ߪ˄#@L݉,8I}^IbIu+u+f݄(qi^`5t)oh.`C]:I-J+VTıR gfI0ҐλD!LhA5\'i809l3"uJIGzHd5 Q,}Zo5*n7ة +ժPSȂ&b{{&$¨8`,9/鯴t w~JZ= i`>VM w0E'\CvHwxxgğO:9pӠ!;j8Zm&ڶVc #3fцOҵղ4u-`^0ZxYWN*ik+Ob4/^ikQo`HQҔ+Ѥ0`nbqsTk@Niξ]h".s]fcPԦ Qdshsd7of&L(Vi#0I@h'p]T,cp _Wo`ǠQG+]ׯ`; m9_ܧ;hǺC9`doŏg6?>t8E>KH0iLQ_c2lN9i AdL鹩NԻrKJ'b⭐%كVH\ms3gLtʮҪVdeŽ&dx2&d3J6̒QV2e%?2lee"FY L(+b973F>,L*sa3$QVtF޻WCJs]BrDY2Ya_#n3ԴTٽIq4hgY7GK%/qDQM,^6A ŒŘXxhШ&NA/X|S?gӳJZC/:u<^ON`jS|qHC|HCr} 0:ނ-m!fKUcJaZQ ȿ^pPH ٘h a#Wa`}WfzI#󣋣O+uwZ>oȞ3CM;u[rS8z|Y-|=O|(Ϻ{ "m}gfC GS~p̵+[) pz8N|9{Vb +c,J|'^ [m{{D6Xd40W3O}\.7pX[Jc#W)ã88?p h/R_vlᏩ XNТ^]泅G]i {t,#v-$NIR$RCV]V׽ް?eW 5C*@Ak|S!g4qvX_=+Y.@!Ev~1aV ^p1tP'b{B@]0p3:RqλJ]]v"~yHdk1dT˜viW' aԅ%'W*t g7iv־:b:̉iQkccڨk}sSFv9ދPtG5Has'x%^bw2 Վ]HkJGuZ 4O\m<ۤ{8+e6t*8g&ݕ+)d"&M%m\jNK{I.Y:68L1k*ud8]\;>+ty~uRzTeKkXGF.h eRk?M'hЅ.8x bZ^Dcj(ڕZ}`oP{,l+GW^'į4/WL2#핒>WpQ֯+]N*EIa\?+dm~R>ʇGD V f\^TD ^;0i`]nP{/ӛӓ% T;xtH@gq,ʑq` 89>WKv'_9>|W4iB8p776`4i܎ #ZoBiݨ GqKcrD{ daɬd2UDJT1j;G_,wX5;uEsGMvK}-SGcB030{*M!?++!;^!PI%}geNq`S7b Gq`Cf@-'4U$ UC4H>WXӄmPhsϜHĒ`Ɣ)ZF1)e4r5|AҦ8$RM)00f-') d*x@)--<,=;Mi˸ח5uI2UmYm>%vZn2?2%ꩾ-1/欱ϷFWc4FlRbvW6cnJV.%#PZNsV D-ᾇm%!a$`fkV{c.ƶpmP4PJD*T3v&]^{e3[>Vǭ`\j6g2kRXk| o`^|; ]ًHPG:~quLX֠aN|:?=qkQz jx&NIP2s#k{eU5ZVA1/MOD$O4{BH!3uKTh&萹VEҦY3q8|=ggOb>U7葠{nEAD_aS\ Sk$\ySK@]Ttx_PA{&KVd(Y>LO&;;'C1y9]Cթ.SXޏ/x<'bA/" 6*$GuFBG(FmfTJJ~/\FutJN߱ &RIm,UlD1L(ʄˀm=LvL \D C\@KiP“G԰R-jY癢)oC)ѱie z_Gˤ0[j}ty4Q62q=y8rs*2m(1QEL"xBWR:#B"I#0ed"H^0yҕEl1SMm:1cId@.7ٚqf^s1>JޓXL+&g*z{/鰪DZlX(lI|U9NJs(A8Uq~u T8UU@a9Ȇc0rXzBRh\* oYUna3JVlMn#jaJ˘_k]le-OfQ/*W3^-ّkyCT/7{Q$??ޟw/.pDQ{+nF99DZK=Wn,,9k7?P`D4g0(i1T3)j`e.aoHm]{$e-®;#6lnq6¬%XڭE`k3eZ* kEG.ݛ7ū0I _BjM*/ʱT땗 *8ykظ=nuᘍt`" QV ] [|7lb*39qPbdNB0| (0KTD &A`\[I׎{`+[>VJVf=(: ?6oCmMe!;sUfdgղUb&֢d%$\XE=QSt0],<#bL,"hN(?B~W2f ~h>Ǝ ϶3H,y\LvɱU4d  J|楧ɥ3yP-x=x=,4j,X^}iE!{U5W,RQxUWxUM'f93ͱ<:~~-O?ߔ'ѣ (}sW5҇zY>z(~R}j,MW$Oǫ}ǫ}As>sfe* iΔxWoH^y9^8^㓒?a-|qYk|RP\C6m y\y[ COTkuOOG)"b-FYx"(r|+f(4BG> XPMpy8`A[( $b2y1 q'Ih~,Z3 G^ ,b LR$( YY+PON$Ճ&Epm!CP^ ˳3 R% _z"`d>o#v 7b Usa+3D UZ,3ĐWNt^43 ZNcNn{BREolmܛX7d۳TҠTR`NtA*h>G !fBN)$l*s96 &S 4txRG9Kg>iT}Rbs︢W%ucMɒ=1Ӻ&Zl9簹f">T$}$Խ2 3-맦օAiHj8`Mw*5{ q?o(PESZ!Iؖ' bB,ذ`EzcWc**c4v?e{%y[:K3 O3;Z'P S=3?m[l&0%h轎蟪^;yy?ۨ,RAbyŸW{ŸW{ŸW{llA%ȽȽ|<#OV}{'s9^Gu^Gu^G:r3c Ox=B x-s,ޗk aޑTދ~;1xĔ 1~)xW@xA |,"~JZQ'nM .uJp-ǬY(cLFy)ds]胬rB(f.>IGJ~j2 Zr ^8jTjT%^f6xibf _ͱ1g2>klpoE:i2#AVA$Ggv$X$*(dHo}17=C1I!2!c1B7!2!Û1mx0 ohӟ-Ÿ-fx:X\{y<m އw ?L{C} ewJZ?@BP2i^kZ-KQoRPKQ>>{Kj2&<`/F?-m/~o@~!I4xjDZA:$%<-WxQIB!YͲ1jVC G͘2j֛)4酒#9ߊ+wl+GI FQ 49iB%-@)sh!YCVj5 {$1)(5¥rYILzqSyqE c<} ^2sR;ȍ~L`4$CRB$}Luռ.*UEݧ+4bڈ6^ZicWnq5 +'q?Hz5%^S5%JS_4%Jg+KUpL+I[YPkKkKi,!^Y%^YM+Kf0E<__`Ђ,V0ZvFI54b/zpɷ?q]F?܎ 4b:Kg$8#kIש!;<9^+0+Sd,ICD%kz$,Dbqã&ŰaEaY'E90qR>'d4#$(>!ʤzxIDTzWX$G#'#gl.%IV4'z'yz1Gx&7tn$ҔJ j`9.gdac:lMմliIU<^?+2#XI$ͧ _YJ(URPz Ig.#i:i:SYJMXDLS%k`+櫨Y꼮iu]n&~M:;:;z^^=5.J(֕P>}W?yW?O.W˃DxyOO5t^N^Ğ<8FRy_|_LG/&zUctϦUA; >'jfZ[vaHVB:%-hl䭪xGP H ݻ Bq$ 3>qw7h%i1"`@E !*Ymz%Zׅ>i%$ݐ ėπzf dwo-=du*dhuBxy5W.F W ZAE("v!cRM -"Gzˤ,15ZkbkƵz**Lhi%A3xi͛dOdpN!t I*U &օN:R>^w[(pPQ1ULݬU x݁߉Կd15.tվ'crCg&9BOU"1MyMʼn}"&g G?TGTqzON5,Y,~)To:WRN^o)g0+gzrIO4kG!}N5~^εVgq~ Zgu/GpMV.TNg (U>l "۸m9`uG|@iKRIRI:%K\Y%t C:uP[Ebx1.8MqL0%0^v|FĝN\=0ŌxdѢKڏScSs;Uy,s6kޗi \N+Z撢;>T!}$[N23-맦]L8Ԩ@qU"F@2(PJp¶|_ˏ#/ΠCG;<~~Q}?;>\|A_O'G<8P=9?TjG!Ԏ.~vYC\iS&gCJiU=ŋOY菒pbrP+"dk8a`+b0md"9;%{& 䵆Er1G؁?;de2?ij_uʅ#}ӻ%7~|uMmL,|l˴Pl4khzu8\H4zXaH8Q>Sr? katIdM}Hm?Wu(N09 ,UF%6)xGwC72=?4ғ@`5&˅diSϏH1tE*E-~ X@Wa%E$^͆i,.:Rx &|8/mk1#BFf3 a'Ok4(=D^$xuʼn$"֧IMm +U*#I85)'wQq"j7A`c{_<%]H#|y1=)jjz: 4E ЭT| _|w8D 〓4WPxɊi_kKlMILQGBb!d Ƣ%n0 Y70FQP0ֳqrBDA*'Ɗa - MNGme_oT&x)0m))8H&:NB>7h+~A6",( &|& I"?ҧs޴X0 xGԾoI''#HM<*+Q&=q7*pͦ$:_aJakʞULɈ.B8#pIo}-)֨N~ &Vȹ#_`NHmIXT;.#z8pR~bRWi\?R+A\ =NқCA6_}fۗ(aJv\LhE)yU (T V8YVK!9|;zC聃n+mOMlEjk$c+jXFSG_lb+}ϵoDDRǖK!cܙi(S1* VyBXYz ֽ?tsz$In=9:б)hϿKZtc=! l6@<% wmd# Ho@mo75SJnVޢ"ŗVJl=9A~լp(Mв.e^4ִ6*7ѧ %9;<+q1'%nt9 ؎% JjƵ`KY &S?-utuٵk)cwƛD{R>`38LǺdMlh@ \B;_b{V#LO `Rih'#ρyTJ9$Y碹2CY!Hy$:0R"iGGnQLs I(0rݬPWvS cdl}@%V飪+k|]V8ZrEH,LBd13ӽHʉ^??qoS;eZ #ւ{ohIX)$T:}Kt-|)s{WO1/)ß;  ) >;(JN_}݁hU4ou~j'՚]*~gQ(hi1*+| [_x1׋ib4r.KMލK](`t}_ N&3yd^ڋfc^L~Zb)e dz( {{ c`vdϹ{O*yWWW0)E.W)4}\?.Plqša E RS*: MȢ16n Gz ܡC(r>q) nUDy-Xm_vi\!6n} ṽp־y,!"JA++w*`ȩUlb\A~0C+,9݋s0݆Mɪ31ˑw_pUYJ@k^ xPERaK۰2ЈMYCi SI׼F 1I ]t`$~27Q"dQ^V딱e9 9,o;3"'.^LaIÓ֗Sm:*VA/-M!O[awK JV g0sGr/كK/ZRJHv>Xh⣥H{hBxsG+$/u3"8<1Q?țShd1ٞTL'}&cqz63'AUj naEc BXu- Ju4(Ȗ0-g+oQ2w=Z55uY;++!!.sY_&G:PВ*9TvA.U!cUIc4qIH@B4).xidāS{аgrp}z8gN2bAt7yhf4o&IބmK zN@f &22O7fL+ͦ:wFM=Ndɂ 5Q[ᦳ=߰ߒeyoLQpzpݷdsc^zCږ2m4iP+W S U kPVOm1s`0cbӝ9%nzKNsA!bHNsp?52-Fj &ũ&Mje&6?uM̀F?4gyK=nDKGyB7QXz띄<@0<13M-x٤Q"ZiYlL--/VɁw۬7[[@J%1}JZy*g'zv>E:=ִgsndLNh?pGם9\p˞Eaք'|2mwp hGokL1PBKQ2t f\ 8-`Go Ž`mbuz͂| q\8'X-80/K概%$,;z_&,sE,4S#6(vCe.kˊYK6ג]@gEcy9S:FpyÌ>66rN5;;CM0[3gw[u?ZNkW<#PWدY~Ynb mvC$f:Vo ՁaX`ڧ>.Q3CfRuz^~ }sTLRQRyqiw#=[%]dHr(7f\Y V" 'lmo'Nu.g CSZ7A9cJFC`Cw/ t&zD6<2'ޤ*RؠIWrSNIKt/v-Ĺq97h\s_L̻!=hݘէܪjڲ٫\1_g˚YBȱ"#-t-ޕ1Cl7sdi6,}c{sȘ$ecESl]:wݠf?-ty%X us;$FlmlGߪ2988?(_VN)ۄ &#D( rEPXX;F!{{;0MMF;fEDP" Di Adg#׽v/&c)^'ncبQSׄ##"_ t{rB2n[i$ nB mV'%"]:N9aDxw=pCC҃7 )rZg^-  Q~yQz4SA fPv:IuzԿ:^)RQzpQ?lJ-k]8w _HgСCR^A{Iޟ]H^^T+.r j/ʧ_j[W4pQ>JzzpzD9=$Փ%<+v[rrtq~+$zy-= er^|8._0*#;Փ5@%G^k+GUr|D@й%vA};N%R;?:◣A Hѯ$;OA[pQF ݯ}..ȻC$1]ݮCjHjG]/˴m`V^]\|8Ǯap?52>C `]p%<@:ҩPB`5zIh&ɥYrzߞ!QFZU24vg F֜%:"< | {Nz>Y];kx@xՠ^%x>c]E|AUDѡdY"zeo .۠}]/!4#SjJ&9&3;gj66_Tm `щNj~R78k FzM*moؔh'7^ a|@PH)D3{bNC/_npXp Ju㠼P'̙v 5{Sq+O Er[͇Ac{ WQT4.rw,)81# ꘒ%iZc/P2x8^Ƒ/xe69v@ov@ov@o6xkɵy!B PyQ9&~eNB3a;: Giᚸ lU}hbv0 AxOp7-?WƧknBW9ϟA7lؽ[B|Ӈ }q*5x#!Ò /Z7 a+-onIt )0i r$,[17-5`{>F|)h$tG>  qKLe*/SyTߺL%=WAKUƸH7 *mľNX&`[;?*ׁR]RaFA7}40,*]#Sv0 𤍩#"-QmqpDT7 T}ަR٭ɝl"1$P Q] hk>R)/Ju*׹݁NNhM +0G>$#6lA5oHA i0CQZ%3O*_J;dn.P.iK'1  HUwX3@ܝ}tݰYk]R-c~򄂩_1V&&E(:&8]f/ax (7Q+R6ڢR/cѢFkw VSG9T}ȨvYcyK f Gx&ःP2qĐf22WMSKA>5R#![fvyF=gjЌ,TY i`]Ym)ɑx8y[d &xx D]e, cmM?A6}ONm+m'clq2VNaiQ3X<+Z:N|}T l٧;dYKwÉɡug'Ot};|ٞZ%)NJ|2Z }yho(- ~f *§iMfRN-Ӧ7/'S}>T<&ĮNojnƑsDY֦*ʘ xiV\uAi$}Ҏ\շ_"JV$lr"/˨9m<%&q%\e+c-H@ZNwjrm WPKA96Vrna'ڐ2I擝lHhku)iIz4E$BT3KdqaԑXѲ)ȴh|~4ĮDt㣛>Xs#h2r%v hFNiմih}?i#S l~`|^6XP|RFc#ͬrᯤpnA\ͺ-!$EFpXRJN Gb6d6LZ͊bf1] "GƵ.˸%uC`u Tiu{Ls=7tt1ZHDO-\C Kh\FX%lxp LΒklrm؜ ?*4+iZxɹYJqT+"j2Q6O 'K#; 1YʩҜ|n*OQ_?|=}ƀg VK僉lS g|Y|֧tU`W*vOm&y|u˚.SAw:igpź>?;agQy_n~gHϑ5рUZb|>85A/i$(gIm.+9 }sxlp'dI'HNDnP]I,. y Yt&c}/S&+}\:wN!^/]7h܊X89 4K>ߝĈᚩ;9E,#BY` ͻ'y¾0,B| $ N֜ѡ +4yR[5fe+o9o"3QUJuU{Ya>мqYºqJe]4;ngzTwsi?lG# q&MO/Gx9b䈭#8FqIr#An=hb`4KXWWˁ4It}2!Ĵ'Rr ۿ}z*%)5;Yk7&eK5-evu4`c!h1ctcQW{M4EH"jm/>U ˓E3'u;AxvCJj9$AxSЪ J* (BK*嗴6"tr,%Ʈ0A+3gCH&t=S=LAtYM, # ;%jU> 0P>ʊ~}ě~ Q|Tbv.s>oo;=&N+z̥ɗvŖIT"K C򭐸„G=khw\kj;ܞk^HiPTUU^q~])vY&:&l1cس>OաS,ӝ钽x/(yySA!_"ZwXn=;;Ps*;#3 @p0,]A8{S.;4V禳ީ񅱎@z / o+;L  . }K,)% ^ *]6V@BLd/xg ]ID P2L+y[L尓LEb=+5A>_cM;<50lcmKXT}W]bcE&TRHڏN,k9s \(;r#Gkir0enϫ|#$xW1 U&Ԭq2?KO32 1H!$?3iNAk'5PR5k*-vyAi1Zj/~~6a&a'uNN,Pcԉ{\tv~'E2eAhqiX¸5pN,᭨.֩1F لSzx7 ХPe^n6 $vZ@ft ݳ(#r({n.Đt^ҦɦEe}ned{:hGXηLkvʘ; 7s5ҵW3 fnEڸ ] ~J!e2H/.&@aj:G+*4\)tNP7>9T8{[7j  țB)ԛB)t:S#SB'FWЧ ^<^k^ ,F3>溻k@&bx8UIA203%Dq<潗ܒp?W wY5kuac8RKB GL'ḻ\l?~6vvo'jke q{ ?+ y4uJ~6 w3ojݖw75Ev3i5n9ՓbrH|yē?N>y Η(,B!ɂ¸}D!_' )0sEf7B DOZ2[N < K+xYLyb{np~# wd&wgiSW0}z"Ec[;;^ɼidft`O DJserȵ#LP@G>O>T{;60ν[]i&Sn4&`Q"|=[RT-uqԣ#" o- SnLCgW},z5ܨwhwqQP/r(S2U)&D60F ۀܑB~⧽ D\YnOUQY<0{,- ? Yv0 TJ9&"o~ [4t@RD] (CNgֲa=SwY+dm8Fksp,fت[:&9OĞPH)ɐ:DŊZ :Qή220ǂV|FND5tz^o&i_6|4#_r D|zi ;4`5v nn91:NfYùn<{J&CSAjO%6sOgδ{mB'jȔ#~y.`5k{Jhׇ:F*1@[4C=b q2gF f^#jwJL LīB5SLm$YZzeF{p!\,%~0I 2Bn-p6&]ڔ$,\j9 r^I `oЁ{Tr|vw[הotGvdZPrw`E-109 ڌSZon>X*6eBoKckV5ސ3K&~k2-DdhBց7Mj >=HhMX 7򛎻2'G+NT?yӍ1ӳ}QꂩtJF'Dx%.zdtsNAՀq38~픙G^Iґسm?Fn_ A>4/3g$eqorc#zqChQx]# W*}*uzF1~g+ԇM#[>=oœx|j5? e;IC]K, `PKuS@L؆pw/#!rt;!-'N"cA.QM"D401,F>WzL$P1VN* &9ys0D©{hm؝6\ T-JTbxfMȝ !;; sh8GpD?gFaCREg|V0 Io ]>F=HaI EKw*'F?ƒaWu7fK):vKpM+Ҧs.Sd@`X:*,{{65s[D4֔3ycI]) p &ާx}ZO˷"ZD:u':Wu7dQdȼh4H̐Lch$j[ PUn3=d Z1$GTqxMq0bTCcBTy(>v6l M84)EX QiUY{adx#c:sqWm cL쐲. #V h.fZnAnY7Y}ٱ^_SUh&V|\$ Hϊ?MJP Qǽ9R#=9hW5[e7匐oo`:NMZq^i+rgv5h6AXalY6x-k:ZȌ5ЈdŬ GOTs F[S@SjhҲ lQj k^,.h#2i{[0w,ٌH4$oEvN4g-dӀg*xmN0vv_#An7< c&o˚ d;b] ܄)alZXfv6sS3SYs_h&{G6f.'q][!T?X*W`;;t#҉)Ea;Ft 溲anK @9F|e"֗8:ўجMhtR,xLWRJv|ʼʐOP-kJU[:dqpyеUp&sZ"j=I{P%cx:}L32Mc)J\p\dJ$4S8*9SS2~j?woEg^'(QWL5]|^703[\}%&&o$ݕEk76z5ڰ}Ԗdp'Zpmx6X@ `x{9  ȅ73z^ K*~"߷RyvWx+e׎ K5B]XȬ^*qym%:Z~NSPNoȦ'\v멊烠R1޻[Q#Ռ{dӝ"tQ|NjV¹W&G˧!IWD( ;ut7%ԣX i-󡔽A:]CުAe9S>Z2g'6gW;N-ʚ\쯟Fhzۂ:"Ȱv۠0{‚[ !}B >*#-s:NœtyVHcS@ ؙv惝`g>ؙv惝`gl3Y2vWGт mM\҅ID{| \6Dd+ٺ_KfL͛l[= d<4ܦH$ϸbP̸/i* *Mn0$.I1fGdb|\o90M?A-9b[abMwSdzhՋd{T~Lg@XƎLf,f*Jk|SjU;XaYe|l8JB1-gO{B#QRWY,:Ƿ%tx$p{YVo5V`IF 6K!NaeS  ON,x}3\Ј[+y/l/ fgxӱBs_<`rv<`!.b.b.b.u1֦v\e4NA<*Xi8}jiTЈPVSm5[AHS7Zҥ=~Z\kqʼnHN͸W{%WCJptAYR+C4eؑ?vchJ(x,*d42pڄLP Xl h*[\U>Q U(y ZxC$LIL <\=k%?Jt+]JҵWW -಼Nп8x<*$}q;u[1{av3SYJkD5>F} Z:SQ_d9rRFJE >x[}\K>Q.-H%]j > @+Q4 870zgK+nr[ T&7V4[pYivW)m #\9i\q$4H)PkΩؘre Dq#Px UaIi5DfكF @u\ ma.{Dv3"VS$Q)I[CQ!izp&ޓnoG;g$ h)x.~{]%k+YU|U|K߲o gWeM?sȂ>- @qs$>\I e_Q;Iw+,!wAGo_oM9>EXp+,]YI=Ṟ>Zo>f<9/_}?1S?3/4 [ tU؋,c^LzKV&mba1i̓e,g0z{֧7GJ\$VcSHLKNN KE:OOo!C{;-oEMyn'E*Q-ğltAY+6O?>sa&bqqM?sEomljxˇ` +g"iy]^NbkGds&ڬɪUSRm:,xM9<c~vro6$716L=AbY[{ȩ=Ou^\E6pi} &+36?WxCq'( [kxqNGZKj͛Aw<=0;EOܮNif|4L{ ӂn|:NJy #Y+QHwب1E+ոЃyրM{@pc S|p- ְ&p@֢)K1ONʤp/E#taHE޾a{I $>wWgN%02A^"b"Ae,`#Dڏ537t,JX*C'iL.ѲTkc,2cpx _ 6CŐ:F+ԘAߒ}Nik%xﭻ$ߛw_K*) pPeYƟrۂWR%JG|yRF-rQtdwOS:m}VfqF=5{M%2FR4  \_V_c{*1Z0 b|uG, 3O@"M% = X،b"A7l 冋l 8C..)>M%\jC|jYCbkڞnuf[&Y ʽI$ۑ_ DbL/ۗgä׀aLtHiD%Dm9QJ[аٮw C[!˹M"-hc>H̅.ZH"]=ԺPr/^SEC޶J@A+?󞯨3 51IJ'fD]m6_KD M6^/:&ìb2I ?f7S#`QaР:&Eŋ{.՗SxPw (7$nؽH+nQ2on# BdٙU (qG&Kh/י1`=v_ `08)8PAAL -YuiNs'|.'SmGM햨6C0 3TI&Jř1V g$(;{ H Ǭ彽}r%$,PYC畋vmmՓhIȼd[}ӊ {,G]ǀ\^Wۮles& x19jxEBK RC!&'Edh>1A2@wƪ]dڞ,כw;rq4dL=l葭.Mn_Q:Xp,Rͻ\-W ]ļߋ@NSڣ#ϾFZrz͵arr^Yقޗro ^g%iivX!02WGݺa2˧v 7$e'lc/Z[.D&>T5`i0t,qqQ+Vc$ [Iކ'8m&c,pe_=%8A .Ɲ Q`sB.A%eܲ^Lv<콁y .ľ% [{NL'V%R CbEvuH8vХ7ʜp8: P`ق_s UpM%L8.ò^If.`HGN3!05qmqBmY &u o2(3h :}~3'FĤ),徧u:].mj%풴( -ɮl +\fsu 6@~DZ%KRurUf 0j Z}ۥ@+Moq3eCϭFX^4/8OIwXnѼZhv#D'Hx e.}@՜䀹mT(mniwז L4{ T?Y`|H˒;??wEbq7:Zy.zNU}HߣEw(:uaX4Q;AC8mߗ+>yk΋!ţ'eAnarJVVZE ݭ˟ Xwy]axmM"dxJ4 iƧ >49r%n\LU^p63,1y &FQFGyS)6h_hۼg^WvɾoV3nwVx s]QHK3@& M>[A6fN =JkiHz%ٔXZ _cA)h| (E_]"o;/6y~Q`E\ۘ'a˭8ƃ`&N7&T -'zUwXhV4dyhMQۣyFwN:@C=^ ddzuyaȲ<i>,MO-)πjW3 B(TYAvDC1msx1ڞ8ēff(SJ2 kSNqYᱶ'R-oQfdÎ:?>aTgb{‚nPcoϸhXv'mLJuaV&<=N}^b7>ND:^y6z3[62١<@}cl< dY`9q{.5]43>b:XriНpK;Pl%H3:+0l:/3%Vб 1cl3o~[Yoxē:?Vj{Pgִnn=ɻȘ@h}Y3 (1 46hL»~vdss?a+?  FY^W- m8,B#Fe¡hU_^Tl `eL :I81''!A$47`||| B 4M.1srڇs O?kK2;*;.{هsSy݆O6¦g5qOca CTz^8x_ԊOA,9ꎾp$w24×Va6bI;nT ]ӯפ5YnpE4À09'%hۭcK%4A(j'J vLƪaAWtÒHcjȚ{swd1,mCeh:Vagh uw"u VQ;]@={N|Or*k Y&^ 0t\"2WnbXqi_,{-sX_p5ExHʰF?8݂V /M{mPDb!.p ;-F5r**, vŮr#,Fį{V7;tF ׀ui \{jkO^٠16~6؍Hf^GCF> 8V]0wCy{9 E;F1㎶-R{76R<+OjqiEciȌI|\~C.S&qlOp ϛbʲK}bo޼ƛ7 K(@1]XV(좈)dY fĨ*_5z>ιDߚr Bc `bݐUe;cs l^`9 cq5P.jZi7[?z&kN $l4707Aou^NU*̲ A癞犡+}s͇/{5wLšK'XCO[^nJ8+1[!kkZۅ+bf`;So6;泥o> c1i.u1 um9Kb&"61o{Ne[xXנq-'lmb=n$Iͷ="a|4ڭ>={_T=)1V;jބ|B`tx1'(z/Mɧ^5=ܦE2 % NAW/P#uzN2#6`k c'V:&ٵnA` ъ$k[GiӠ%81hU@Bѣmjd|0같Fj!]-mԚi&Ɵ! 3ݥ5r vt X@] F6JMH/B=RSBBFW`vw3&ChhS54K1:+Т˸\T!jEh7mWaAU x}tX"p\ܖ*z} &Hi%ON#vl6$BbOO"'~?=wgcutlass_depthwise_headers.h=s8Wh'U[0CH6If倓 g$n|L7`In3nI6NՅjuK2W*-x'߹IuR#f{qЬZ* @ e"Bķ{@ i BGr$ l$"bӖZy"/NxO2F ODj=`Iz(j7*e  S`ƠNes_s%P 9^ 4"Jgԓ42UtຊIJ_ײjJx.TyO,4 hr!:0W'P( 0IT5t#Nҕ%Rr(X3> G纡#C&AULtYV:~Jz*iu`bH7tJQ YFCj {I%RSp` 2Jv H]AE cKT\jGQtVRtP ؎#@0:֩rAsx0p?\qs??_gܮu;t P`(xI,X.~w|@SWr2.2,uʎ30J}YJ3{Ah9RT4tJl׌7mbmbǰ֑{WFtȎ)F> bLcUhA&[8oh2Hz >$ R>{-;wº c-YΜP0@`EIqdڵBˀ.7RJH ߳ 9v 9:CE=EGgyɺI_r!B\;^тI(/Lc!A (m N߹ B2z.t۵'<$CsWϛP+*?W}r{GXAJ*}u%Z e4گ0x7grMn6y ƾWzfdstD态j%]P)broXgۘΥ2:E=`{R۠dNNRaCdAoN7,) EV`mA;)C(`f1a3Y=M46@[P#F1M SdBfnԬw+Bٙ 0-!.F''hv3in2m3~TVc~d$1иE~4nv-C_׹b!X0!]kr.-)!$=YCԃ񺿎d ꥾N q C'k/|-4T}(MtLZ<9(ݯR Ӑa1 09.D/<9p5Ԣa 5/Ց zgu`p)dBÓ7/SFP:WXA=X{Y1;H>&71uo"`ۈ 7F1O(c؄!o1C<6ޘ`^n%^!P"E;8#QG}Ӹd  GrxpZ{%.bB:d2I]ӖPR[tp~A}=n|=n|=n|=n|=n|=n76y?ŝG l{IMp=Ͽ CrI9.=9EE7qE91g6YI n0J1ݺN%IgfֺwVY4xI lnQб#W@8@p4na0Q!A=ZB+(\鿧SUޚR`zW!R" ;;ΎIe7gV?@FhT:_@VfeNKa-j@;p2B2s6~{a=n96 whWQ T E[yKEw#o覼z9L(a>*d>Zq$X^ Sb F[Aa FSQYŃ4|ۑF*ixP4P6 x>ζ=h|W>]Ƨ$h~^BbNvṕI,I7c1p|aM|/uaqӵPMno@$bI16J_6#2%MS ^dia.qMwa*:/I7yCqJBoݫ szyӛ(Z=0v KRKEVwSRAۄ t9 a]hM.xLJJXǺލI7єx׻NnK}Hk  s pSӋ ^m(>\/(3Ȇ}*zӫ$7t_(a ;LEQv;l.ҔEϝ9w䛪4ړZ`pJq]ůUK)cTm~hwvxVI߽{kXR6ĕ9'.q̜:Ch XcgO\}($WQPsoIT;h|N/^/fu9yxF|)oeG @P?*oi7Ev)xJ2vJ)F)|ڬv=N,5q+_j4KM>-f4`&BI~|9 ]Yg2-;ȳ` t[n u24ﳠ 4Ӑ8Ѓd"iHd C;G`/|!wh~ţ~sIߺ*_/Ϣ*ZFNbUi|G/zck('pp5N,\;TjHOOaN= _83v]?j@Q !>`[b&>73Rmm366>J#1=ns=iy#F}mLY8CjjEsb9fEILV$? Dhmsv9,B {a=䰇-.Ck fX.ok y\296t[p 0e~fX[{._NHx߃J}}q4k%?{(^X>{;^g/Mg/g/g/*g/Vg/g*zj)F3!PCb¹Q8IWS )K5ŪrRwo_Լ]҄X̅‚=on[ I3 0/cתgS@c8 ՆP4C}CHt["Un{^mf2 > t$OJYnUҷ)UL?ᅯEoYt+\-)Fږķ^$6y&רeVɥb ?Xd5.ل6GYX"v -XG2"2"V2 iyjaU6v2 Eڥ|]EIHKV }Et8Ma?"лw?!frK|A ~ϩըv G2ދq\`:O E~*x3 Q'^EH;#I72G _~CIդC\j E hLZ4?9vY^0elVj4DR#IPZ({"jP>N}6:W9فuxJra6ajdh0rձ oײ `$0h/^QJS@YE38(j"/|/8dЎ,ɽ:" _lNTI"pO\ =fcoC﮽XO.\N@ÃCWvpѷkyL(]| lOw-k1G Mm"loo)ݩ=M2s}ygw'k;3׫rr%;m|%Q'O\DAAv3_F8eTFHeUAPAUTAU ` `]l -vCRBNO>e%rny8\۪XCtdc[ өwwsԇm |M\IxUqGu![q`MF?G$fRBYBmjیL1*>˘cMK"F<k ѵC{1C /=QLy̘'G Kczk֋z^1ęcKs!! u^tZVNLw{*U (jQEgԪGzj:8d>.JeԟOdc_ a1qo-YaǚqK+D^#viRl%KSek?l,GQ{_ **p1k[ 􄬳`.CKU/ZgZ)l~Prp:!.Bx;pry_tT\%+xR:([Żr_j_ 4d]d 60`m 62`3 64`Sm 66hssu ltfmx0>sn*aDJ|0Ra`L[ZTeSV^ c& YA^YztTPS%)){ԛZ/i^ζ{KֶѶ"mKYVm+YFfl{ +hrֶdaì8F=oTQ磬8Ddm磬2R$<:NiNSTO9:7NiVNSJ*ܧ$֩r|J*$yJr*$2wJҖ*^$X$I)Ԁ`dbUɋY5;oq(Tp`7 NLErV-D'AT h!NE78ʬkE V4R/ueF<'0Ԏ$uXm}ksƍZc Ec/ei8X#X)WTxȀ6iޠUָwJ=X|`ڨ?^)?GRR@#rOhqlqZR'([TZ*[Ʒ8PburULhA8X&`u0%x~(eJ:JJC3㑋wa/??7O;)ݹlo쯆t.'f8{kgc Hk=:|^|DetE:D@xMST~ !FGT2SO Bȗ2ڟKݟ:i~QlXY3ƕJ 'P<̏(GqEXNFG(V@q7? Ń>Xs0(@1,, sa~F.9} Pp*_]X]X]3hF裃(,(_XX_g2zφTZFB@nBV2(T=ӲF%/@ Xv6{0XZf` -/rLeN2ٴߜegZB-"Ŏ E4E. {D.j,k(V;/r`D7/rs\65>Ή\>k52/ry)N ̋\"jLi(?'r,`?/rP˼][٣9dDD.jbZ[q0I-R9(hTBWSuB* C% &7l0d`/خoXnYx] wVME//KDOI^٩+x%2C杍6 TFdR5BLdJ7@m\Sh}̥B h+ ],]-]K>svy4O,Gʼeso>b}#AG*Py,&Cyd U摡b2TG*Pe]L*b2; .&CaJߕnz"W ~bAA4Sxu<]eP;~ltnS}j|J#j8*qcql`pњ TТ #*՛T \&8 u`.f#6Xabr2CVl:)Fۈ+ X(- ~}t6+$OzּrAs\*i?O6gzMzg&Xc㎁mf-6Trp\< BPx؃Y]؍vTQ?SGYTo*k9{JKуJUJ;3ZZ~s{\q=v ҇ ; ;]tMrMf-B|"@JL@fPq_}$5{CwP_ @`!?Vt /S2Xg0Jw/@H4d0uEJ!䡫CS/\}Q$njDѯXo*83Ko흜OzD]U?fߞEa|nv+ NNTX(+SI8ױ};j MU jtE 4fR &+FZ_;up=V4͵q{ "@T1ĻsKt9"ˌJoj,Z_w w'AWzU֩iޗ.ݙ`Affmmmgјc2.- c5gyz^ExQVkƄk0x2JrZإQo _"Bz 4{{{cr T9N K\u7"a kh8T?i z>ay>N^^kgnтF1ȏSjxfYwn&;fx>17Ch_ɢ[@1j=^-kiZ2oP]!4X ` {Cf kfbgCyq T`R2!.Owew8\qT8ބy'nBhxJW;h N٘nj]Cư0Tm7-S[Ir`01MP [#ާ0>B2QLfX]5i:#>5P&S=Ik?@;Rn_}83[ |g6WQ6vC7R:c Qk dXEN@PdbqW>Bzlk 'rp%[ MH!{j-Pm!ŀwzHm- *FŸ 80 ;ٌb PgI8Zzy9 %J|9*d?Tk_vޞ4Z $ ˬ'~aACJ`X2 0KiY)kCEMV+i: &xo`'Nbz9qth&H ]~LH(Z)37?DqW..0>UX6\X907ޒR 4ofhRzZWku[>QۊQcEE hqǼM €syWce3j̟&75إu!{ܜϵPc4i2w] Lz=Ձ?]8჻p>.^ ڗUď?0 t *!xVEqlo;B軂 b Xf 3JɁ"!0+WX 2_$zc^bquH9EYE' SMjH ÇQf a6x̠ ьYf`^wzm EK"N ɨ)gR?Ӡm$:{0\\?6g`mdbqcoP:o<<>;m<lh@1hF(wq3N 6;@Y|hXp"ۃ́0 sЁlg^fϧWd{)xF)x܍ kd6J;3I>=hi5uhUt靱1?gߺ@)b~28u8#&´S:qAD"`WmNAPٛ{v /ނ>x\`oʇymt번NbLZqq +b,!$饏Ƈ(BJl¨Ǿҭ(.#!=ĈP1?Ds,Ԙ)hD` lY"A#JX JA4' ӹ8??kwDZzk*X>y}߂1E <xf87b^gA\Xm~>< 0>>E1) on[W4?oLǦM^c= n•5a!sf-4͑JoNi{oUf"k7}[ILqhA PlsdRsK>\nC G=r灯ۧoug$!c%}۩U[{Db>>;@,IArײ{Vj?@ к*-@]lpCCI"25#ӺfZќ.4A{vN"/.|LJRۆ;(&$2A蠞yR~l>q-+iw6Vhh{޷ywnGs_ޭYlF5Kz ÙND݂Ŝ*;8D'6o.٠[ﳭ?cّimNxf_b Rvx9\Ҿ_ń9vl{nF[1Džw.:Smz*C4u]SDŽN]3>~wnK,['z}˄ugAKY@sf1xwcS'$A{r_XS a\lW-W^|ܔ ? Wު֚1dW,ɤ$`O)1\waIt!#Z_%(A}|Xf6  Q*:ET ٍ=.:CY k' ^!Ea?47$1c5:io)T.Sʣ|λ'r^^Or)E1HN^dPC7ӤgaY.߃um;*"HE{%(8)y9<РƴCrv2l|hzIeC#a ƅ/ejkx[{u9߂`A@ q4mz5Kp0/NO<u3ڱݗ,BOy>1s5 Bv'Suqvrae0yr[`. 7 L{^, %7l;dSsyL5A,c8hsܭ Qh`e/=s4r9T_^MB]`pĭϵ99$Wg:5kw؞ej,nQ A1$ٝ41t vɖ/c%"k[D+Dkˁ2fq5;g_?b%zH];44k9(Cj$VAPn*eFfF*db?UxzVO'>=ɀ3vB 8ìoKLǍZ:W` =w'z SL(i2yvҜ2ޥ={ *HhXV<eOVl'V)a?u捱bwZ+ؓ鶉"ؗۏ'ኜ0 wk_!>׫?˼awcJ7&N2qllzis&tVd38%Зoֽ KQ%qV \fBms&ޙU.-$A NW&fUncݐq<%v1cgt:q_xN9]}ۃG;+۽} v.ek1?ߩʈ#Ȭ#ۉWa.gmu W&|2U #BfZRCk0s}%*Xs.(Ģ!G"hwLá7lO6CYگR_LqQv=8t>.Z<\hώ%exz;۳i ;2!G܊YR/mУ4fAX:X_bu?ɵS_NsySJOv"vaB1n+R~JG/oGF+ƒ:bg?>8z[AUh`rP+PA8r|zĊDR,[6뵟` IȩIbT|Tۘa5ZlF37*PجRxA>&AWۭF FQZmzbٞ]q̞j 0xP}V+.bogCko.Ǭ\^תcr-/rX#K y(A] C%6߅]gE0RV\a/yG;%z?o:9ٖ5U} ǻw3Gy//+VҶ/[xhx [6%N8ZBs@ZkX`"3P,/N8y!1Zupձx+ RPMVt#>GU1x1 ^c|;1+Fξ'~ͨ8!<GД !HXFni9O G}D~GPRdQE_fC29Ղ)3&K_ʐ 5Ћ;;reke̐U&X>SYޢY.S2BPJmDrz2ș |=QªLG0GG~P*eNfY:mtZwZ~(gs-@9%hC,ZfؔE%o#t)Xa`к5~1bv?sDh)< tx VM@) C#Kۆ!cmt|J8m[0@̢栊A/__/X W^xqvBethSr9O^': T/@`ˑ7 nA޾DWoH|-@O NLgF'rMɊ3z++hKRssX ZHN ,]x]},/èؐcaOEc]IoQw4d0BSoCm}h8wU;NvOXxk]Ҹ2$a{4_ ^[ G`(Ao;6<ϩexP𪶇tFii J4F ̀E|K[!.a12KJyO(%7C8wN9v/5w0,7a ʧL,<9%l$z0D^=-H\'gŤDy`]σj$G4oJЩL0!~pS D2O" ·օEW.PwlEK x00\m,Ӌf5 ! B*Mj>;(^V԰jY?yOG=╤3<9O$d.7 쾄LP`$gּ4zcnI*:LJZudj)lÌbo gXV|c`Ա-WTg;Tiq~mev=;>{9خjANgXOYWv3mS,-O[IhBŽaYk\4ܻ_ٌ%Qc&2G_ZL,(# Ta)$#C,Hc`i'Ǿ3GA6c84S,(US ϊLgјKC fwG1$v@/6"cASfc^v 㸻$37 UNT۽*>mE3r;E;e6+gt[VtYU=w$djc sw(0״y吒gw[v`; $(H[v>=ڄfE1;|bp,eCRq[`\v[g?4Zlұ~oxgÒ5~ ?z9] ~# NW\"'Ӿ=F O&{h` ]`@ #; m؟DN:_ l۫W>B%ƿY< %qo J$& Oe xvKLIx{T/1c@y٢ 8(IK2W܅Q](W:/L{ޤRINpU/WuƿIZMqC.՗c&LyF',!8oAH悏H*ʝ2)6a\|%H 3yVO*ԬSB|ԹeLH׬6H/H:5 2ްS>眲!:.v~c7+1<o,5VY^ƌDdo"t֢AL:^hQwa;gg_jҴ]4YXךv]1QSo Yy ]vyyFEQs{=I4x E?\@e8\_bq7;)."L,' k2FLtQuw.f,qlUx\AsAT]^+H#)DVߢiRUh'4GIGY´frdȩ;I¿ܽ`zxFxJdSZrKىc;%䧺8eL@{5˞ CIǹzM?ͶㇴB㙍;C%j#xY%ծ kLAw4pY!Je~=6E;i{7je E(!tQ z+&ʌ$g>|koR 8҅ZsvMmcC+}-ǐC !])E;H5@ 5ȸcE.CGz7x`cSa);ʖյO<}v(*ҳK&A]|O%.k0ɎZmHdl'=rӟ')h|~VG>~pNnٍ)Xsx4%L(C`l_g>0(쇻5Ÿ,IR[w,&h4c"7U$h֧X4}$ txndQRe*.MDÞSvtPxϹfͅ9Tg2Eԩȱht` f{1dz1aQ0\">VGYy6n,gBo\Qٮ' 4J8hXnϨf=jwnWrp;ןI%SJ͋J{ 9k$_|̶o#V{W8B|{˂&U1WG- oo9heB03uIGS:|O?= $7G)LbCu8>`"@3LCNE~o-|ubu._1(C@#R(vc T#X%,ȴc5RM+Aן}Vs*Y/MM,|;g571&;01Nff1Ç olAGHwvexdS !^NddƒAc,刼zi qC*?59 Y$+1FSݏz#/k)1읳shVrafTƂhlc25} .-Hh;9}+m=?1y%m5xE2#ZVsdJBs/j6'N b*|(5PlU2/OPc;oe؄-`M=*7Q*aibD*[cBKYm*C.1fJ~pylxBhTIƅ9!Y}A8 ~q#:ޮX!z'ݭRqHUs#}1+bJ\u÷WxV;amjt_Մ6jfFV;-<ԵKc|k ݑܢcYdj2X8hVMN -O`-p_5,$2t.gN`V_0 ȼC_{G4fቲB1O݅ 3@b@՝9w+"]@kbnw5m bffvp!-1YY1HOjm6i؁B5q$Q@ ~ p”=4{&J8/2ZҵЬ3ְҜ<5SǥQ,"Pjx^+p˒ګF[ݙ0Ҋ &2V0Ȓ}GM+\P,N}yf_ L1xfZ(ý GF(1bu8)/Hy'vvl-Lʐ<{OH$b `tud#ԜklLom+Qݹ1Q*svhTvކj Ɍ9'㯨hAepvH^\\]W#ۦD-6%dp;CsvDW0PB}x|WFMyYEɣI;2YN@cٯb|f|Xų]\ˤmݻ--o>c ޖK;e д]5RXFӛ<3.‰Jso zd['*KB UM4fEҫU;dVAU/~哆ՍU׬*OX6'N.f4.,D(y?2PJ=cyއn u Q*gQE_I =[88k|̴;0c$wuls-&M%5q zuL {q%2vcf`6? wB+S&8b?$eKJ5zѺb;, ~-̫k 4ַ`޶ƝF6XVO g ɪwYF o;}kZՎ50N0ggTh^rp@ ssߟB j6 XTf8ض +y@~34Mdwc%bvNώڦ3i4;h{#j#*mnƇ)5vrMIG-1S|NFԅm倾y^B1pӥ]I8RgSۙ+ s]`I1; &DLQ9aC)xf[0Nv= `K`ʉ*Ԅ8R9/-JGR9װ&YB"򬀱Sf?蟬dT>T!]ڿVF3buӺE'woJ$Yn<c/f?nqKgh@:P=JYTJK5>oi28I#Ҹ(hڟ ĜXpZʛp]d6` ׉Brw0Pkv8-b:],Ĺ1۶/JAH Cק g6^0N^2K"OI҅22cvGBI!n$V z60+x%,bk+ZY?*'4Т'B敖 pSK/NOgq7 H 2T: ( |oA7,`:XFD)ǜ30P2xQ/lJyHTMLc(gkΆy%,=4:DFyVشe& ضdep?1B7ȆWwrNH3i냉 VOѝ3j&ۆ^¤~:Tһ1 I1*R qYPo6lvK{j@>d?]+bE!2bEHDX 1 YƦIL4 bj72~PL IC&A%)L@WSV+9մՠA7;RiAA!f\)QFbY3@LJdkI8 p XK`1}Z_=XZҏ7AT$. K* ![i|M. iQ5 '_c|Vk11:Sj6X)s&$ f rwh&804bllKNU2yv1κNk>2Ub/Z f֨<oO+ǻ'Ќ} l:!Ő89N62*A67ߩ-94*^ e܀7&Ac"8a5iDxhH~st<&ƦCcfL<4\'q;HY'ۏ3g( Μqg/ALF 12f# 44,젭 $8L|S/iݴi21|`BW8hPh^p Dk'QH~=quJ:6=5!bHișxtz<0KXV%+ƕ"L⨪VK~Tk؞LR-5fAZp$aS5 /]L5° 2 ܔ&o3{teLj]l3[wAoJ9\D0߼g{."dc.Ǿ CrhRaH鳻(} 76@It![sy&8Η)M m'ˤTD&5Zlp@x50=!vl Ql’xѻM-M\$}X6}+.̪;I3Z 4 EԺM>ROpcyO U F}/(lwy"cѻ/(O' gcy_aIF ٓ><^!MRYm2owhE>|xƫb6ֻy3ƲλuYmy Kg{)@*gR.}0jB" 3ڧgp>=@LwB\g gg22 lŒxI1Ӊ9%NPGdu(iOk'P<Ӛ btت<~|ܮw:g'1 ͐v$f9⫙}*gɚm%[&}n-:3$dXK0 2$-SIBL}Pϒ֐=n^ML (dk.Q.YW]J>?/nvV%_>=u=v&dLA M133Ew4:jC {~>bɖi?-A2y%=.WfډUL{J?`Z{dIV@ui' vV L[ g $O@!S: g tCRהL)g'=K5Yn2A!%iN"NKh)03Eg%:S?[;1N@R;OHH^, >6qCNxkj׍Q Δ=,5LLJh6/;,`A<,y˔K2n30kgfjڼ8Nˏ&7~22m @I1F#Z]?TbOZ>Ձxl,Z=PlW WUg. /4\Ff턪҆4UT~ =fOw:_!FW;<ЋFK+l+GEZrxsὩKE$ZT`ÿ*)cݩsԇ^VHwD bp+x yvӍ rQ)Aae%o*p7Zx@#^-ɅE#5o9IOiCS-YJJ]__ǍA+wh7>={@ղт7˽QR9:/<8:==#c{D9WUvv+GG/h=,핏v/+ƏjN0yY)ʕR>T"c|~1rjPQg讘]Y#^\yyw[;/va/]c{o?E@FFD040n68z"1&Ő2a@!& RQFpnFx{AxR9ɀa:Oa&n>9K0ڧa?Ce< 3ؼN4p|xs׬?,!֯JCXy_9H ^Qx,{þSSu*;*2sq)ɋ[s[y7=ٹNy><\$Azlb=QWfKo_?k+>I7 , NF{8jZ{6,3ڢKk{f 芼K@;R)nyk﫥{jXpt nXsCjh:TDؽKS_(C=5} W LG/>{MvT0)-J#HױaC3^'xho:&?P9?P' ܟg |! @Hq1Q9'8}N2t©9s.(97bNMlO> p{O@ǀ~p4(4QO? G#^'3 Jͦ|Mm3wQ6#m܌pfq3f,.7lnF܌et3fQf7#nfw3qQepTǨrl+M'sh}qk;_uǞѝf&m ;i$a6Z $7ڸ:6;p= 33W5ޟqvzy9z!$]> ^'[CFg3m 5NmJ!9vdvf8vd6vͫ1]&4zz'[w'Zy@XxT ʕ_~-KϟԟӋR`JB ht"#d}tK @:ԍ<"K? Ez#`'t*SA=뿅a&!:rgBkjYu〡s}fx6o2{ٵl/oo7]kfMI" ۷c1~0"Ɨ&Z:/zscS,coc@_{ZͶK69tm lk. xTFsc,k7aw3!-zOk3nk0C_;2D N0JSuxNY(l.YI .moy%H/ J@_#afW/ Z SbjCK$VXz-+7L.x@>Y1oRS]cEp#V3Ba3]W@~]̨GѺkf}<`P8x|,0Ȃ)EݏrP@.yXZG1)FD=OGkEWD}}̧/Ƣ,cġ]9ƶ~S;g}!0q| yǑ~F}nd6rpA=>A 6SoM #R-ݹih:␦,w, .oG dg#C{|Vac @`S_ǒ> ji?>99A*>U+WlC6`_~G>" ӶIfq#2g4%5bd{дG AB ?$?!U+|N&BO ͹{Xo(ӐYݐ-oR̦jc{_ñwҕ(a!3k >X8ʈ\ˆ:~QyK<67V1&A1{c3`5}0 $Yy#){6gڥBix\S˝ ?wvI5g!=pFEMz==sDtCE4۬D[I̟5o## mrQ#yf8o/ yq#>ϗy&>/s5xqWB @3oxETP'B5{4aF2)NƖ>sL\PmX&. 1Hrn`bdwyVxc6  M]2o OрGslbn}ZJ4?FT{oL-38;ea`bOsЭXfU[F/h aC(]w\A\Z}L29[v[ɰK<ٳX beYQ!y-9]DH]&EY`m}3KqSeҀff# SwrR=4Dmi'H/ǫz'*yZhq^laς[icK)jYrx2i@@#0rZVZ{#kIQoMd(0&,y%/FNNwbҿ.QJr^H3="{]?PșuGoH<'y%7ßq?n=ԮrÎuKwNK`N׻ -I>W|E~%\Wj5jHRJw?|qu1{+5X{iy?(_{څ6~6`;,lc?5AEo`V#l}%p*t^_tWgRk=Y\LCW8[*t%һKAz7io%:E7{KA/ }nh{Aw6 d?@{+ߋi?ېCBْuZا?z,},hVU2ߡV-T%,eKΖ~U-a5/>◯ \+x5BOLӞinY6w#zs ~/cYYzh8ip54kw^?פ}p9fuwvz 1MOc{)Q(n!`@~ |Ƌ( JN 83wF֧r}fdJ>l>ϸUof p3ʻV eYK6:ׂ#鯨W~rF^d2EqzNϓqJۋbbl^Dɞ] dpaXmg,'gTv&L`W\٠yr̀Ƌ$4$ZB87y|佅}K֩W`rV2E\'92sĪgj25ߋ?+.vkGpu/7Owdpl 5K$͉ͮ@}_ IsU@C66w9 [ft"6G_M:,eE/疂rX q).ūKm. }xՋ1tGӟuhXS~bu1dtw ?iJTCWMSw~e8acCLxv ˱ej?H~xA(9b,|?s*WS/jRpR8nTY]6Z;Viрt PP3 .j.OBJe}n1QFrEg&x.p:5k>am֡mY-NPSlubgG60j}8QGf tK_ Œmpabѡ \ <Ђ~aޚ#ىG"aR0pvև.XB1,cn>p 5VmVx=ܤyhgmqzl<]muΖh՚Ǎև- `hFEmhv#Y}h6_Kma'gmWFYmkN]7:fqZ?SjxIU}N] hq]uqo5 :Z\T_ HNԎ0OAE F]?E7:"pUNBEl'ZS; .'DGNz.+ywڿ`uPؠ;Y1irݥlxw#IpD qc[lq[/?'ͳ. S5סc<9X?yк:ODT ocԉؿ/7ŻEXjOfO0@ћS6kIa#^ҳ7XK?,4f ⾀@F f;yd:u֧b76j<7{WkзueZakS\ ™AD/Z۰Q`q-|Ƹua,/X~`| u7#_R_S,S 1Lj,RIЊf\N _׎a$V84ysH! {F@Hf N)Mqi)n5HT-ǧeM&řßB`?+EuǑ'D`O8T0~r*3@ ?c5h' :#״-T+2CPߘӐbC*l> b9alNl!떎EwN zln(JjF w0Ђ5x+~B@l ZdY]U?246!AO.?O.wяs >tY*8KF,{{84h5 %ÖG]B5cy@t=^_Sl?F[ zVqmF~X#۟ mkBWR4tS:UOhBc 9u9WǴQܨTc dcD֖ |{e]_n/}E|'mKpiFcǭGA +:.n`Ʌ,sP7Ybve F{hICNYw:bqW[v6%\ԈeIKBl9qjܲ%hN, qIX- p1<^\ BʷݖnT8dvt*ye::4Gg?/9}Ang0sg?,;LlVqN064%j}Oʥk1M~Z%iI~Z%$8.wɶe&|Y2c0[u/_C}T]{O Bk^PWmњ~U6 -q4sON*1己4NxRᭇmCVmE'bĀIVQ ]2FkW's~<'s{yjY:;C$N X5;²ѨN.ɺ"tmtx{`ܘ\;O;ObX?-OousXcqhxg*!Zr}`@Aa\Kc5FV #Cڰ(Jj6TZz<,)h^5j[PUb=xmۥ.Hm63otR1|9`!+t54CZzqb|ω-_*EX=)=kmJg z!C&4 `측 $5 c /65s-U=r oFXTS=ed0ɯ^Mt oniw-lŏ ŢOݢ֙ړ+})04 3b>NuW|˜wxz ''(yܤ *@fq20%/d%ѭmӻz7ufF]cIc3j],[R 0b۳U@c5C)RAn='9$-_1ot*n1t%1u~cb>Xd;2EM{zm z.X׽v_ m_ “S+EgݳW{cSlpXIhiU޶pWR,-XC,|;Az/??f5a)+.@2K l շg(*݁>16ıv>]Xdfr*8S]!\b*,"b⚯  (\~=szKUPW%X LW* Pl-,oiG񎾩zF Ċ՞Vwک*jϞi>Z%00U.6E?BLK%0@<,SRHKdjSXG/+ҡʳs[!zDU<πDy*Y[}YOo`_?qq ZmI^]&ܢK>X6b 0΋%7BN+E$芭]5Z@WoZd;FXU*cYbD-+ [quBPF fQg(U}eK%F񧌄~ ]&$t@2C[*ue^7$nyjw+itƀW[Njgu _8n t÷o-X5r/_E][,moP;Cys I CZ0*,w 2qex-L10sS^)n-kS|͊m GKU;^92VIt>\)ʇ Z $?9 Ï{}zZ|/mhkA&aѭm%sqؓfrukul8~Cƒ/od{&xRG9mlYƸHG'Gr ^r/xzntV{XWrVmk.AI` veWz̓8K%7٨{}F!q+|Ir׊+ջjCw 3^VY`9V#d@) ]}}xXӍDo"MVw]G޼pyuG+<7/__Gߌ/_]`6ډ){1|L\K#[&-2=տfc"bCp!XL֎p)~֎PH x["&,@ 6<kǦrƖ=ǹZcZM,!'ѡ̐$Atx\Qڍ(J#gA)!Gh"-zZk@}zsoLM S5{lk ^IebˤcHT@ kjwl&908s'@~a&' /AvkZ66nc&$NH zm zi|+tخk^b =#_%k# yYDy~n[U%~rN<骇'3< |xIS`% ia?dg#p` )bIF*:N ȹ#p mBU? +Et~h߫L_&G4XX>D} hmZZd 0Tٍ ,KƔFy=.i);J޼~M+ GdJ<^z6^K7e&KɎl8DJ% C)d٭dssC:i`e!nE(T|e nU#DG*pYȶ_ )[Br!>S~UJ{3D@=Ľ rԀ-ph--Qw Bi/Ũk\2AÐ_ph3k j2Rq}Lh }M&?g[j?:ATj#cD.qXk9"ll+׍M ;f43!;Ƈ8M0䤕SYxHrKdbAFv'Ad^9 -Q#|'£UEXу_&ާ@tCd9`ǟ6e`c- Ffo؃8jmirt5vLuH=Wd]q0QF bck }=ɣ&y+FR|ټ͊J$/mKSN}AB1MÑy_Wyc ]_ֹ'q_Vp>f5H)G(M~b_0d:3ѣ*|F2l>'1lP4ʼn3Rf02%$J14x ! 6>x=U<22Mui *8zvIsKHkf{x$LNr+׷@B݆JPFŋ{I3Z"޽D{;c6iY%07Z%Z*Cv⚩g *kmamzoNFF <Exh̳9y'Ҏ`|>÷Bax#Πa}$0mj[se8@>SV<-ڛ7W.?ڱ>3d x}[b扝]!+YXꥱ,+D]Wb kx ͞+g~Aֱ"(m7w't+-FvE7̧t=1ġ2 <qbO]߻a>|' < c:A_ lyؒXf@.P@W+jh[^oA PjD;R]tn2? |F7+6j]tOWpF^׮uk=q`6~0uRxL"P{'Z!{Kc/mL;.]n2#?ogŻh tN˳VKYOUv1 *h <e^n|ϑOJ"-quh fP;zT0U[gSF]klI'tpOs҈z&ބ;21j80SnOԡ>gٿf'y>|F  H9gzxA:@k ׆>@4B(G СezɑB.f0_~g79@wr-h?Z~rLUo)툻k*B%ru@_.|[BAqذp$YkrdJ.p𖝙n2J5 G`wО!:/Po'%d3t,gF k+ h,|{f3@lr1foghY MNR򞃸4)w>(çV WGB:7{~?hoSz<={O v&Y8Q3}YҶ;#sV s{(67Un)jkҜJVi[P 4U:(0Epתu2<[`hF^=uᙕ̂cl}قܺ4`z61meK!A:0 7 a cN Qh/*&UEh؆vh;+bY%Ga-8k0>휑Y hvq<'Ө-H=<kc6޳U60ɍ #d˳|&,V$Y1PoIp71u?; u[}jPh"5FovE\\N{GKepV XQ2}@7IJ}\1w W!4.# reRhN0+a!ҡ$8 75PZc#D: уwVJÝC СcϮG{Z/ZuA9/ks㨭/t NpWԾSo2 #EuO\~\5{=9뱥 z؂=Q%ME<yDG{\5(XyӫtCvNl '^nȫkt B) d ֞/t_Y.7l?C+ڱ26Ʈ}rИfw~,%p(&2,m8h&Ԟ+Lg9-m};cS$:;{9m%[.;.A""<Bj}I S;_І'*B7 gؽ2[fWRy\ `q?m`^y=cpXpoR*OcxYW0nrS_^Vhœe#Nrԟ8ԨX9][ko)lx$e6clD S{{lmcBz8P5Z?>W,E]ͦ~1ǿBmtGkka3ׁ>b/6G#!s Y@ 1 7=""0p1 ~'"@77Bv&/!˸qP/SH@4X)-*T)ZPhh0Ĩ7e?np9ؿ>0(w͚i,) ȬO\ ˗V*1xM\6ϓ\ĿČOc1XI\6Ŀgql~3+ivNq|>]`Y!6"#3srf7+V=o?4ϩvb/.# I/ۗt8{-![ A |h!>J"6?t>Q\QXq-ZدkҤDh1Z'B+VH>b9$5uCKP򛵀R=eˊss8+/[Vr8 AI(ґe^LdW k( Q!\Q;-ByA|󜋻ΫE!>VA\χe*с~% >'.F n-Atcz 3(͉˲E3DՈs|ֿLxD8RE*Zn)`1XÊc;`1Ӊj Yڊ_:vF:~u4- @A, bÁrֿOmgp9fҜ0gO_*5bpEDJ䱯LεJLdn?:Vyɱ뻠##KآY};¿q"j-aD%%kX 79J@t ɛ?ГF1*s˟p뇸yDM* @7 .߳DO( έ>\v4񇹛Yb$mX(I '0^$G^b.k[#Z-׍:~(nc.!6h4µL,G^F%}+ ӚTt{HhF( p `LȫSpHLzIPX [Zܒ`TVx=I\=f zd=|G ;*ivZe%7bFNNTwj2փQOĦE۶bg# H cB\IӵZuT:}5${YV^|%QB ))v$/=$"-Qk$'byZ#X5źTIF^[z\6fsK5ݍSh# yýCK'ui!#*\=:Bd`rlɷYbp7eP~XȜ-,BE44b"ȍ :%eM9,9 R8\>/Zj>Sq|Jfʈȩ1#FdxN%]]kl\@Cn<"|=0TF{^i,W̷"f43岇"@ eKomI܌טOK-Z_cVS4fCĞ`J;%G \s8`Z5vQW3D'6E/*2aeiDF-1 =1Ir+|7PjG\-qƻ,J3$KlerePZ}+%l|#A5BǏc CX&>ͷ3́aMu9֛0G7Dgny }Bw]$Q!{l2 R8bMȹ{ٿ5 ]efނ HEcg;ڱ x LEׁb8{ Ot]@g A7q2X.g2qw X8~k9 X343%="P| (5 bșa׬I͐89XBgL\*d۾aܧ1Dę& ɞ9}C(an"woܙ`(1/$Δ?1!#{mؖEs"!"vrГ֏5O1ZCbѤf˒G>)iH=* W0)yݓ2X SM2lcMd)y&1j^C\1JvNݍLZ,[G2` s2{l Dʤgu.}<2^21pҽ18-c=ul2mz?Ƅ*n}0uveN_kSX%2Hq2-&[PNമxœa+9_qgnvEOA*1f6D#^}ҫKѫ8-RwAP&|gHր4+LU,LA,S>HWA_=aBO֞A[^8#b)~*cd,QMMhLh2fM+2B ^` NMt` v}G"N!g KPDʙ˶0X@b0c jK}ݝ>'=<={g;r)]xibIfL]GչH)NOJ瘝3iHS)F1'wթ9ߚV}>g(>c:6{pvCIJq{,'n4 EĚvz%) ,[8>c63⪘hlL|1x3f3r%YQݘ#0DnKo{M<No/ QFG_sر^{A^a?ݵм^a? o0Cv:RCT"n)-tζ`=&sͪT㭉cƆ0r9oTs)p*s 1b+=Y$AmtWRN*ĺb^ p{/ NR udBI%㷕=_UR!qZw/ULlxd,](GJ09\ƵͨLպc)L-S_>dF!ֺK5}<leLp1/hy98~vHoAB[LFoOTMpٿ)O}vU:kR*W~ 6M~5] :G~R{B=6]smLĬjX1`}HNMIIݱ.%.i1H:8My&V<ݾN/GYbB ~̾<ǖ#n-fc Rv`_X x9^h*O4;w6ӹC\s{N^粛K.a-d.d/O43,#^?UTQr%&]~]d_.每 <0oL7Cfu<ս ;Zؙy SgL *rT/]ۚMJZtS7qc:uT =HKꉢNXN2In\(GX~+;_WlW}KMd)j 0[Ck^c|ݎШI.1ҌAkk%jlmYetJnqx#+HқO+vdRH$R:([֏W<jYLP-VG59 xΊN=s[B*De7RݱlC1=_L'WR?yl_Y2O 7k4W֬DV+VeŖqE< 9. dhͷGeز5X"iL J#9Ce@͞">J<,8'[r}(yY!7Vydt T : KqZNnˣu"\\Er Q;`UD VKگϓ1inأ(Ī\Ί.\e`DzZQQUw8-5cTC2e(+4:g~&\yfyQ9Zgezܹ3o' Zd|Lu?j %Z{B}'jg}ZgS'oghZxpugݮ'lO1 (e3>Qv^[}+{މh/3{܉㾕/(kJ 'tan!od^׹f7F&S,}̷=uYh72*5zߊ;2M*U4+-8gmވ]x"&q?6fTᬋ-|"tq}7"qÊgcl<|$/ "߈Ďk-Ez oDPr$߅Թ}oDF↵a-~3.)"sc߈$l-%1C >KJrΆ$/H "XN: MfR36\jZgILpvY|G(S`XO 4QYWJ$TYG ha r?5h@qŒtWSf{wyL_[Fb`s(d |mMSٙ|>r=Rl]]W y$c5U!.0ZSc`rXdZ35eLs1-p\IП hJ]L`\xeX~0Se_bZ/FvY.-11u_fxO7A0't} 4DsX_f'Qt.@k+cx,c{*.&xYG m}iN5G|Cs.V?@ĥ@(< xx*J51rgM$.a1LϦ~iZHポ;еyPňY:G)fד%N5Mhf{$ F190z{)3}TbOA3N˹a06w%ATN` y#L.l:5L9R7"S)q&-<DN [jؔ kQCo>uOZ=𑲇ĚkXK s=hC yڷf"\m0\)iml`4Ԟ_*kuy=w@ҦZJRZǍ*r@fټҴei!Du qZg+ZLk¿NLpG<YO}*&Ha sa؎ ˼sifϱwv0&pp-, as f G h;^[]|oP(< S Myݨw/Yq\ouզ(Nb草\d"A@G :Bki145 lM*4`ʽA>hFc =@AdhăTgG5=ǟ?AArThw-# `h [;#sM1!pm:  nR3ųԀ˧(&}m%& gX:jU[_n}9M(ݏu|m4Z7U?S-iz:vK?֝Flthg'@qqToW7 ؝_:uO5Нjlj8"3vLCi7j]mO1nqSkV0j)>n@>洐2[@ZFpit2ɇEh5Z'mh) LNƯW۠y.նGqi,A>kq]Q|ʰyq)AOtrw.]ITkup|ޭbc=i#Uy=-Ԫh6>[}=]&@vA3 PZud6P pJYG s{Lz0U3jC޷ kp۠!pa+;rE+t]XI5!ҡD[|M y[e56B3;e+D!eQUă#63i(b$2آU NVk$ddCk`)%,6W~9[,p DЎqIMZ*4# #وȞx~&yԔ+M >`抑9> 0>zo8)\lr6iփ]Ԟ=$ J\.674G;JznYvr0.,N0O.M_JJDv>z*9`2Htmhρ Z[.0/°ufLa@&1)C"w0!~ ofSII#'ZT>O m2Q_Œ$L5m_!v.\?މ&:Ml׎H}wHDW$l4lo >\X(;w]$rްHlslN}A gm!GQL){/jV$ڇօdiCקKXa0\‘"l㇟& GpU-&rRVW (E$=~Y3wlRGu`mpPc\`tׅSbUnRݴpX\\uO +\XA|5om+-\GT%ᬂ&!*BڎLdpbLr'FAB8jJJWFUNQYܵkm#5zf`Mtao|@6wQy񟛬5|{Y*WfL/O/!T(]IueaUBG|rAC>gz!90]89B$Y8g' 5WHXy=Ɯ:0oG3Ӛ/:h{#m;thրĆ^l7 ^ӏjnw19 aHeB4}}b1:紉"B_J/)=7k+oo}rNm҆M]}psR~'1 Iw}L {~z#^<{zQ #QD 4J*JzI¨>~Bay݆e6Rz9S䉬x3LPN;۷bmCӉ_t{`Wc@d^ǽrg,S4u?p<Θ DdJPFj `[X]-Sfe1c;4OnH^<7os>-PxaN J59E+FLW{j8oNXn1q@UARM^&dviWyAuR(jo}]VZkgo7OT{juQvv~@gBvmk=GE:22w5XQֱG ] %VtA/ {枔q֙%\T>KIN"ape*H"ѣ }3,"ˡسt8ޒ(X'{8Aϰ*`D6M-͵imD`Ҽčdr*{V2GGO‚[^Jw'''EZu8AmXc?Y0%ooHg4yd)bm^VIMvvܧz=k;ڼ]<#*hMgR>!޽Bc3:̹.`P9 Asw.yF3k^j`]eS+?-c]Z wn]gv 0l^d/@!(}FM<0_. oٖnTzJ FVtytRb9S' i7" GCkZ-{Ň[v{n5h_*1ۭx‹zA'3gbs<ń7RU`l<'vwg{M<Ӭ,"7md0gC / ~WfK}@{-f=ѳ0:K vm䢤-%c)R (e 5Vdy8 VB46 | Z%\_ DY&k=mE-<=rt57;]~]s(GVt7CT >s~tn_uκ:k;Pøi_ )wpg\|_9yKy` w%nCmx"{y(= < :,{f%LA4GwqAq%r|Khٱ"g.ܞ(g+mS4{{7xL΂幫r/b9#=]%8Dʊ2`Sۨٺsgv|F3k^]%wLo8y#Ry n>3|JB4'E*hxs@ s>*˒"hH$TTJXB<!Kb*(<Ҟ_Ң> (|OU(X (gG%X;'`/֋m=Dy k+ s$8C 4@Y FyrphճߺjTXg%5N~q]eq䏘ȃI,m<4_u3Ru[L+{QTҋE?M086q)RDr)Zٕƣ޽6Sǡqm{%ȟt]i2Xo OSIaB$x`xϰk8IeCS](!U-*BEPJr 2uTmQ$oyOyxJuwtiԝGQ~ƛx4P`OLp-:x.9+J|$rw߁/MWy\kP&6x.dH;{ԙXs)]`"~ꯓ>I+ WE |XoXvzkLV?mPkұ{aI^Oސ4"!N??\|+E{6E|n:V#[ζn'>=~SiqȓȑOXP@8'B' ʎT q (s Qٍ'A / j8&.; M( 7W`4eƿk>`2wg,疡D:r(WNz0cFBȋ>GL  ';6M] -LAc\eyGK WCIB{5#ԗِrD?Pybxs OG Up3({gx#yں?uH[g\|mN'S'=F$| MeXu25Gӭ~/C5 ۬ 5>eU= ;# KoaxfiFA?Ơ(1'?{`%`A5qyiv6\UL>ğḅPM,D$C-*iySa}ُ&"@$J)^ʋڭd܋ {M,CbTрǀ"x;9,x۷Ϟ*Gb s㏲NKW*[<޿0{\ޕ{\b*%6hP|r<ܘ-] >*~UR֪J8ƕF-5fd/F% OE ہFCw/q^hG$eS)_I!N &”e41V#EXw<ȝ)(~$bzd$y%K><- R?߇u0~Pe ƭC`5aŞ"}*SYi6|v7Q`ISФ2?Qgzy)Ɲʺ жL %e*6ԫמEoȬSGmCf{!2|K暯r5fI "'iaU-\"vܒ{45L2t;Wzn6#VOBw,i7!p!CsC8VF།7.0.X`ܚ>̖YaYewkWf ɇ4f)K2D=DS8|CL7+j?M$-eISWSTϫ9V-(?BkJEPhW w@K]U)qZ\lRu(~-zZv(\p6|lsI:؋&k)8^crbKWN WPNvJct>Day˛rfΒfLӜ+ރtUk_쌃 4L-O2};;tcW[c]Ɍw(q t¿o!f%&fZ1sdڢS2\?3QxݚkgItj.8<͉WXb:W#[j +-m,d{X$mҝ+C<+gs[~focZFw"&ٚ T{rJtr_ȝMfjss!6ȃAlT VTϳ}Aa=[=ȝ+G+ڌEUɦ`?zTS5m bm۔wzW\x||V99"'5Zu\U&ŭ\tl,qBZƭ)_wKe\ppp P:q?FgMVh$3qLaZ9q<40l''Fˉx%8#YѮ+QkϕWIGp*WII7ѝhX?59#灩9H7AD`r2sM3Ԥ(HOwY.hLAqϞTk&ț2(Sz+tP^}(֎38S= xԟZҏ9X7-E*42(bŕɷ-{{VwvXsZs1>Π._]{9;t'ZJOIyš#>Ee1еU 3tBb\OFQo[%nW|/O*s:q>[!v܉Wk _sU\ }>RJјXVL%+[=7goLL @ {F @YXEڏ!)iFSKom7Z'_8MO4Kp%NtJntGD5} @?1PBMU{ocogtkVR$ϓ4yJ ;С[s0U 9z-ޭ8I>u^> ޗx{W`=GtQ]s!<&լ;ti ~ܛM@zmnMSk`ߎ5zNАiwٍMˡu/(&و^7{)Q7-ʿ<"+ɓWUCT *U>VOj UjYSh0%*6\IYxAD^c !TĖpjaO#j9ݗ=ZDkEؒ2dBlE+˄|#]x{d )9(lZ(2 W6. ˥ l~SGtǔc8UNϫFNLL(35^JYA]KI%CBw`P(K9w&7JƱ$%9OHט^76؟%we|ы4UfY ]b,.G+KW*4[cVggŗK۶)o`1 vM[+vy}W}` D(" ux! $R3 e[@|_ C@| `.cWA|k`.cB|`.cBV,[Q.Q\Z-)SIfi(I;_%]v$Ki)GZ#<Ρ{IAV@ `)&w$<%/d04CDͩ0,kjߔ_BIEwxzQ2g Y2ieS?6$uUI:~NRWnk-WK$uut╦a\uc-5jݤ$.CRGnҽXC=3a=+AA.FyG=F3kHzOH+EKePNd|DuiY#.?$h#=}>޻{L4/ ٤20oINY/YZ)/:I$Y[5ty}E |qÒ1l|(h-\,Ib-z\<Rg-'eY8,*'Fj*h`AEʰ .Ue/+)_N/h b2_D')(\n~c2 OpfT:: ' ,{GLng8qoye8zsxST \]ANQXԞJÓ  t'<)#TrŢ\\&b#n oDG@-l_J_œ)PѪVlܟ0ZZV+s N[)+vL |͖60{W1qexW6U^\+"ЊmO6㛛И#Cຈk`VnÌ*W+HA"-뜴VҒsqT~!1I'jx-~~65Ikk;5m V[q"Rl#M߾8q[4?7URJ36j$DE-X-%g%C%h7Lo5;Ohlfi742㷒%=7̙O<{e j3fg̀d2moc fL&n\s4oa/bHve -,;٪s- hT6Zz(j񿦁KTp=PuX嘏L1U}4B`#4n_+tiGk% fF?ϻg okKR[vt|z煴+~zd’VYDȁי"KWAvAYT$GVԏe>rUR.ѕH:^+ȷZQ;$HXɲyUeଷ ݘkk?*sk~*k6_^a.{xefl2Y2GmFeeϡ̔Z!RV^ɠUP#Ҝ_o>lz^c Q_{$1岷5ֽoXXFPw* -4߻҃UL` #jy,w`;`jZ{ԛ:2 PQ__kk!a {,E{5 :Oֵo5 ׿vǿ֥Iq҃yWm,m(K {7޵$[2ؒΪ4wj~hoFm"pubHޭnޤ.ᾏwu%Y'qÑW~F'wc`tUm\6~ox񊮆֝ ХYCZk3OlF]fyXd] Wdi;̱!Uv5ab"$mɟ6ΉGy=c4' Ɓ;i^{$B-lpJp,P(ĮP\E(ZŢYmrЮ}BXsxiO84/a@]$%'Qf qF񳝎9g$rMG_fN2HcBSϹjyёsIcX3 jh)5Wך66%MI˚ {ypHm%}n:4¾pM&ؽfV7oWf#zFh6 4y4D(zƮk\E( Ǯt\E(ǮQ\E(*(K!C.裧 nf|rg\&m i6~Fx/;Ω'1J]9.˼"vwWe4sҜդ)Ne?(0efG5fřa_nͱIAZ×*j$ޛLo=]_]kPb^56@pej9~"a(6]d)2I~광$kh裓.^.kY>Ȩ0?b#HebW(Q4ʪEQ/0(7u|)i-F՞a)5^6>̺WqȺxe֟8_sͩ4Y̩F (EdiCMh,Reu_,:QT}0B,Y! T/_Mq7DZ/0d-L6JBL׶%O%\2܇cAuIza[y[#ƪ 0Q&>dõ4D?|w:>;h5D'~RQ >;h&Ζ2Am-"C!SSySi0 `#-zރ3GyXw{iv<ąh F%_X'+eh^NX14NjޛcPtNUn}0ũml{xFL3QeƒǓh#,!iȾcM aEKj7ͮs?7qgk &C9}\sCvCsB0ӆ c7۰BR@=7ϠzZh$NJUi o 9@gV[x_MsНZĉ0QI0 %~rL%I^4۷n'dyzK"p^>~5<+ZKKtN߿uSK,0XV0/{.xJ*zsyPy#5gI߄NלFua/d@ ; 2 V~wV?+iՇڃK_8 fcԾСNJhR{> a9}:n//*Y :`$N.{`V7lbD<@>*/@Px@x:h(0 rmXץے%h$-CӞ9u9:<&Wp_S Ho˕ ޷8:QFй `qk+`Zt  ewy*{.g J26 uZLr/h1Y BTX4Qn1&{w.X>Z ЏQ3.Bؐd{)`ȃ q@`c#ʉQvv&^2m)d{ I#=8$8BL_URڊβIA9mnTYcxq?!WY_së1a& `h G/;8nG4ؐDbzD}0RqP|PO+\js&sJeju;֭H@0^[O -pu'W w#*}X9! l t2,VIC" ݮD`t#K0g0B tu-?ZkApwԻP2k8c axJ;i*Gš܀i\ޫ*nC 4bBpŨ+)p2 g B" ׯƪr!A8F )P'-U\Q@䄍\7+T 8 $hkse6" su)8*!FBVj[141`XQjgUTBgP9mۈ4.}2!!jhT=R^haR!M^ X'@5ݠ:d[P;MvZLyZ+#3ԩ|JLJ$> aL;7 =@̀FߨNأX#o%G_LŢC>MDTouZr ѷk,*@וɬpVfʆl`\5D,_g_J:* jH۪jY 7a#%/bIMK nh)PӶjף_bEP:G@Ib67xKڤZL|Õ 2j"5iWͰ-sm.5'Inupd-+NAFYoM7oJ IiIdxb ;]TE;7i[_jmrt Mf/}e9t-\2Ek紈:gKl3\n)@UQ(:_#a.Gw:tT6$ĔNA;;/ԋM7T"W néB jETMwj5i.FE< [Ԛ#+7tJZά) Nr,Ag <t\ ªx}Sd0VU6 7tF^xi.v&g@\6vˮ.*[-dRňdP sq$밶6-92҄"-tkK] fJoLzЫ%FYҀImtr?SnA~7o#>J)a~0?zAi>ha6$3CЗljJuk8دn CJj: ʪ<::y{trtq??dl㛓ӳ{óSI qVIF [5Ms4T!ܒ@S"+T~_sl'Lq{ŏiCr@^&⥮_īЪb%KsP,l=}8/ :=^5ZNĭKGt5Z Zs2nuq4嗔E!^k2K6; ] [Iݠ2bΚA*?6sFon|'6Ĺ2=\3h hNV+?o (bv\oqFܦ5J^qKgnؙQӽ 䀫>?pvH \TV2<?4XQO5 ?26uuIuԔ  z`۰fcIod0 G WV" Y .Bdm~*:kM3U`Tjĵ)fWQ|G4:I/aSܦDKTڐaZ͍X97=&^YL?;s2>3s2k 20r!T!Ly"썺~r]xR\qnB}/lt2]6Ta kV.j~twoL^AP?u7.ׅ7Gܝ_n͑Spp7/Eq3&v5W~Ky\wa4^գЉ-\NϷ|{1.'b.̽˝]^Kug_ )#l.I^6𢬹BK:۝/_·m~x^U #H2;ncx- w1i |~2#=OVzhr0z$z\۹:Z뎁=uƚӺkG8$\|2ߎ^5QK47y,?}uoN]uF]u5~Yvɲzwt,t{9!dF0p8>3E- t w㠃-܎w]<@ ^ot3([XtBKp"nIHtb. W)aqtCQQZF?/-h`lG;сv&`v9a{E+08E y'Aԁ 9.WG-wzAB@ P:*!F  muG;FPB)  ۆB]@,_wGۋ_:tx^B>zvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8;8:<9G'N~9Psrz?i7^9}?9:>6]`oOϜ=3G;8:?;zx @χ'cVj4UC/ ѧ} t\s0~8!t`u~?^:{~T"2` &J7?G<ߜ_]|8t~:==@;g8Mo;ǧHkioc#BóU`/@ tJVӳ_^$!{!su+c`fF"TlKɍ:29d _r&z]__^ԗr2DNAubS^qa_Б;qKOY-쑇 IGSȁ;J0,$H}eDeNX?y5rLJI*`\֫C(F1SKKhxQF eF ?9C1V\=Ԃ, w+la1JDAF% 1()!R9i~1'GeqPcX2:'*L)M4Hf4SQ( C%"XWDdQ>t?D JA 6-F7Y>g !7fqz{42n |e,s @qA1Yz̰ Ƭ.O7dD[<؅hoK)1.\ּ=> Î!9n>M0 dSEeH|VfPjxBE|j +iB5( 5'( bqhҢbDF/sT$+0ma_XՅl0DhI,",L vIijH|^97"E ;fYQc4e .f46saq3ZIr5XRd8V%Ʋ'7i6C]r \s\njfX8κ,ι ng4[F?ou) n9=~ǻ4rzQdcǑ&ؚ͘T nxE;lL^dlLVrbIAgL&%T/ %$VJi$^D Q^3(MC$y]$s2 K2)8 '{7 u1pՐS N< KQsQ0ϥgгpY8,z= CO&`׷Ĩ\!2;GucKӬ:cbϐЅ}iH2|inزr _ٓ<%4 wwiI xy*:\Oz- v 9Qgוֹ&a5Mxٴ%n=F|)ڍ9pxF,ѱŽzk6/ST]L|JmSN?(Q|>t |dKC*5Ucġ8Irʎ rKpXYU!1ӡC@cp 0IuK0 tA`Y ;6>֑%Q.HKb^I:^8,E"t|4`Èv|N#6ӈT4ֈLg4RN#R42iFL,AxqdzO8.۳wpDqqŠ|#]qD.TqDA9;לCqe&aJWxRMIKٖklkD-6y_DbXx_*oJQIq.9BE\* KU$r'-6S3fƓ%uHh<1B2 M@*a#: SiKRPHwo )  ԝ2i/<&Dܬ'WK(Be4\cxLp!RccpûwuM;{o]/\=w Gwhys~P=B%`- n!|Br>!X#s 8"A>!d*?  {Va&CP%l}>GA#֘a.؈:;#G]#e}AA- wa'c_ɟ],~> z2!,\YpP=gkc뒹 zm$X#nRw~Q`zD/6{d9\{2ᖳ89κ4|vx %(|l`03h>--H~|ŧ*~C|7߻x~%Qk]%Q֥On-l-D"W}<#)r_@uX*\[D oWjwմ(%NŸl Fhx%5Q\=4pr{;H*ݤؤtzEK0Cx%.;Gh8%\j뉓[o`~md`NO`6z/zR-wbeR]=oG39PEN,st72 E;I2-0`QkY j؈&BҢ200 (3ڧ8{iEt`#IE6e$M#c~/uRشiRTNtajǶQ¡vd(/Bj)љo PA7c6aF m=::+K'b_ץ4͸k&~%Syj7"UMk\V#X_JtDse'^bKe^tH&* .CP|3MН\t |EKa !i!!WxQ$eGB݅|b^Sx0/%!즐hpU/P[$K^ d־W2!׹kCY_ph`ՎS"^gDw4L 5蜹%_;]C] ICN dt ![lmAʶZ7p Z8˒: V!{\KΏ[D^NC8O}1S;ZlC#Sqȷ0Q7ٵJos;n9wͱIeF|V-Fo;ǶI$㉥PV"3g zUqe.(fٙ:~H؂<;)cGOKfͲ֖ꮧ8u 3u:q4]&FP2ʣIMxrH> Z0#UrNl5HP|z'֬::WYWU6Tm^om9#EǗU2/ Njen[+WJ@qmԋJKNLS"ƕgtal_GNh@`E^[&W6Nz-oJ䎦hh(쨼cYVf3SU*mP~w1rstxЁ"(J}ܾq"WHZh#~ :egfsF.AH-h=qZ>CɪC%0;YME#j98*-6ڀ%Ldo[ jMqBi( 0!fgJ_Z%>[Lc; ,\k|&6S:ěDݏ#.k2w5S-O̼0iwGo/.1X1oW?ԯ06?WCE,&3^< 7+` E5- %GlAZj7i3y|F6Ko QD&d8f~KRyA*^_6VEWI|!n:$K.{@d\UV%Lt-A_?<ڌg6VHљU:9?EJX&-n ¯_ 1^QW:I*v\Uz}[Ώ?{EM {̜~DءĞ3L7X՚JD[A&*~HҤ $X{ȩR׬6ӕWLE&yPBPOjw_U*"#LG) b1 ?t{6o%[V?vL17"v$qK)U%l ;8)`&8X[9Zn,tOTwf_ ;t>57[M6bCLCKN{ qF}ٕ3zMՐ`+h=׆xBஒ7vR %QR֖>.,^AV`,85T-)|CoąqHL*K\R-t )#V'q-Ci&u5evKfEkjD6r }n0ˣ|}.5s({s gjՔO\1& FFGh+1">Z{T]>ݎ**BQ 4S${aح<羙2-/kmQOu4ϏX)῭}:|ryfCW׷8#_ގb-XcƻQ:c=1zF TC^:rۤ9-iI*IeTۑm8zNDj\qۈ1JO,b5F&+-%"- o)Q,Q,QviاY> ' ciXHd ;!叝LLZ[Bt8eJF@R63&8gﵮ'M,2J*òEhB5Ѡ̺s,1wO:Z<}5$[YRAbӺLj0;{v b\&L(;Tڀ&Gثi6%ʆccBD4Vɭ[Zi8+p/z*8qZM=N$'a8'q|I qҜ9N*)}xZb{رSA_%,)%11oH/8Gză$TS$DLyARlAU h3옗~"mI'qDQ$I`g:zS$xZNNq8IJc'IBSũThq*8Z 8yiE$4"9L/D>R|~D5_(gIY^R|+F)@@CjfI Qe57- %4bV8eKiieV8eK)Vpj De]I g_,5~4S2b);K~ w-%~w΁K\='F"g%Hʚ/3g=!GG-e%#;H Q~AU oKYvH7_SB-,jh+˗#\j˩]B]%r+HЫ ወ/l_DԦ\ T65Y.$6iRVIئ#j3FV|F噌[ej .J$tĔځΩ/R(AE[EMP*ΚUĔފ$TDV SM+9L4T&ӡBL]$ʩbz(L "E t h) xz&)A)uOfdJ '?QB1bO~BcHo+꒭3d-rM"c΀ć>7H$ym^mPuc>uD%9k;仺궻Gdk/H7)U׫\TX -*ǧtvI;-7({ZΘYYlkC!jo?JϑW!q:MMջf/"]ml[T-)&GglԚGKsڛ5ILݫ6 ;~0C4d2%\45YS|%g3eXڨ<[Q XV䒻ȸhmfl@T ƅ㼌Zz(8_ [#ΐ>(U% `ũ"FEi#!$N[ .0o`{ 4vAS ZtieSq F\ZlT_z)s1o<؉fNX3>F&^\y1%ۇQfTU]mlUQsN~>:8sO>],;{=@ :P VttxԽද:Ap8Z\v\w5Gt/NN^u>VPs0%wM jn9= *;J˃~0ZCna pt 83ΰM.o+;l0a&0\00:#$:(!+̋.w0 V # f1 T'Bezvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8'5dO5pNN/GvqZ#Ƌ9ogޛ㣋_Il s>]<;s>|:ع㽣ˀ4aX :wptv]>sp?:wk Ȁ:?/{?A*%#o/.>^:? 3ηsB5hb Uyη *0`+a`ٯX/!(_>T_Ȑ$ɅY㣟O)VattG_ُ([Uhk[g#DϏcg?~p vߗnpe3 z!o}C@i惙Y7uJ@Ӎ`%E)_,MYQ/phF@8ߢܣB<Ӈt)v AV ʢ{!5R}eUF50n:fPXMʅѥ$&zyNGU}x0r| fWIxE0404N_˷b/MgkIOOQiJP7| 1l7}ak?0?m7Ks{4)+A=Q**G{Ka*2Rvv,k9zӡ&2*?y"?`c22%XeK-T.fr9ol{_#?fqn"OwqO#:cѪє#6s ZM2bHbHXƥo1cd1}r TDiWӃf3y8̮/v]p$^}'4>-EךzY#o!rUy ۡ zs?Z&RР̲T<G`Gfq\ʄau*r% M)cjX%IfY+''Y=Xj>UUf8M{,^q^RyF~Xkm<qYj˞3ho8?3t.'޸s*G7[*/ I)G(iy+{߂A/Jxx.NS9~|4 BEV`cz\8gkc>;#(0yBGjcfkD1 n![r07Vt\TU [Vk?`#X 3Q4" WS{hb?A=i>/~(Y eFc0e(xaRoҾ''O=Zy#CRUVkNt2B"x-.ʝ uLo֛Sœ$@%i)x2BMOl)+%b|[ V52LʯjP?~O1E(LGlŽs$;tZJ +4a,gs9t;YuͿD7#$ h2"FQp<0oK2X:Ƚ6RQJ&ejEKY2.@/12#9At$|!R0V䚪2ф$Dj uoAxyA1_ 5jPUQL F'7g.(<{Ľ^SlcT]~o+s-KP.0< ei~DxO㘖{AgF_k?lc}(h ;tL$ pp͞fb (Gp8>vm5GEvR|T~]b[s7\1a/J z ~Ǩ\ ¯ 6dw@ቔ.>?ȉHu!fv flË4aI؝J3ЌT? nh8){gy`†x2è^$@+maE_PFlYIStBDWHk}<6E(bC V1MsDZR9-F\HI$aITqa:wF wf1q\Me$aVL IbEtIfqjoG03t}˽-̘u:v`* FdiaeZw`{ 5tZ.Ɠ)U":JkiMŝWv~F`ВQRs? x;}[_\Rcqԥ uI[ǁ3rNNX;7] b0y_ %9#T}PewU% Z_B5DCCKcƀW -|`.5A.@](]n`b+jP .dQ1:ϐ(s?eeg xܓ5WDT2}2y/.5eszWrtb{1иkKK ǫ.H14L Y(\0nhW½g$)Qܓ[N&rl1e]t˻L3'0$0e +[wZ㘫9f>q0d,+ @y嫼TyK #2me[ŀsKx?U(*3(.c_Pڲ}L 邼-L M(G9KFm4}`70+>G?/;BB(` @.QSMn hsx[l[!*nt|A@Tby=v[Js8`,("XMݩ`X2MKL,4Q's1DTssf? $Q\oL?Z|!>M\p*.<̊PN!mv h_eDc՟o؜M_b]zwpgX-;GzM׻ uc~aB !$? o8>uS0=]Oi??#ӹ""὏/[yHgB)kt*3Rodx*b¼*_S|^A@U0l~9яFl7"'-⨲YrRCTj*kIhXYD&0vA0i|2R,'aMt;EMia`EEoC-߿ږe5ƴw|cQq'_.q-DIB^}jɃbw={AH H?&~ުع*O A ڟ|C a-'m`ҁ|c)z2W¥\fb-ӵ<-39t5 eiYۡʡ >ht3Xʻ\T&K\#MqkD[ë= qq}ƊdJۮ\GErjG5|v&VUʨW -ސ '\NBI bJ{Y%׼-IO}YR?7o,U]n9Bb\?gd)s2cl7zhf8u>wp9SMRv,9]<#Bك捦 * EH{8iD|GXD-ؤSm#%2| B1è&)cZ/A8rPS%"h{10r#;%Awv]S} NѫxÝ]Zk60vDWbZJXXУ0 Cjea>vn;euo6B`pE¯㈯B7 zq!܏oߣ[,Gj&Y?Q `Z9Ԝvl}R]*ʠz%-?oZbݰӒ_b|_L,ȋhi/x[mː?:cjoDP_ъ& M2XG烩x&ɢ_ъ& Ʒj柨 ir@ʨG=Z*BAU?Vs_3Mve)[<).:Ԋ"4ZotF3Kx Լ ]6Јz[NƻXܦpe?" /u|&B*Oe6-JJ-KRGѯS+uͤKXOI;oFq`Gb* -*r.q6IDj/'p%@/)M6ר&hpTaw1,6 H etSȕ2h 0MEr(ƯJ(YH\s6\0jOt&oC^ qt넊dߣW%DvX3~z4ijpw]K؇/j^B\R^uf7ߥ zѿ.t'Q:I^{}c/c`˘>PucVx%E*|sVDX 'tV{JJ"U(&7N!JS2RX{Raۜ+Tbg+`HV) 6p/*^4kuJEG#MX H)7}ؽmVa0(^J@kK,S$r[1H279hB_GQ>|ATEaÎ&y9J aȠoqK*{ı]J`cs2`.cŐ6ayKo1Dky*dLM(9kJٶsy|lllllll<9[<=^k0J|uMpQ_!FdBu*olll="yO5oCv%.5d7A0i~FZ_HLL3JѓZJryo[s9:zptU".ZDq6 M}ӕ\HTJz,\wQDر(b,KYLKEwP}X֖xupd8~#/N_DFIVBaDmrKeՒxU1{tndTFm%ouU|GD[$◬F,9Z!}PaE! {[ !tEoUqt̄kT}Ltu;@vByx+z}8, \ 5xKk%J]œzIaK ghvxQeԳK5]5ء6~!rрHx M( /UQ˪ꮦ`\]yOT=)sb*^$}ra2F+1Zyy$M;:>Mjv*-16"HNpg¥":/Gb"DV2!\V2^,vpp7_,;P,O' &꧷NM.~:4_tC4'&  &0QУ2)5whc$&σ^v>VE %\W< Qoizl,9?dƔ{!aOq=%.ɠ-Cnb6ƌ!c03FRX)3dtq<[A9t4AnXAi@x(RȜv0"K dȢH%Mvax,d;'YrqO.у"-^,R2uݫ.>oIN9/1 OQ@7/ !=>b_/>ި}Q7u1d^ nӧX>6TsǨrގklS ǘ7IV-PG6/kMԁqJ,I8ԅ;D\ /^ r zT/}:4%7g=;n-еo/ߵOPWe4Ͽ +m6jvt"nQDZRRMC'֝vВ?`^5+U"DA ZR4D'mq). _d``TK@f q0*%ӉLkpYќ#);κ)c:Ǫ{1DD^ƅL8!f-aJ;f%%zm,QnY@G1#M̡챒s5^٩"D3&ucDGMgit(ѱ !O/ڊ^)詑s:pq0mڊPh)6d,qSp&x^G#xa8=F,k;6%~RRTJ\;bz6e(Q͓*8K C-qqc-9G:$gh3@K4z1,ޓ"/6<.QDNg4dqa1fVv46xF>HG^WJJWWa0*NPzSD?(^ߑc͋Zi9/KVR̜Hv&8N^-i+ɼu<kO%Y fĬN>VqI;c?=8C>I]sL,P*r fPոN{v9Qgh? WrX;1LJj&[ Q].5U/qh]@v= -(d4(ӓti[*S>yz9e~YT"[~[{ -x=Z][b6%$.).cdcؿ` a3 H}c. q'~˹TWf,yT+vޠbrнÅձ:2d8'o̎xizȝPfVAH?&+ caz|'G`}+z`C ` w2 :Pg?^]uNi4X1ѱ<2H4&HhZZ8iJxMbc+S XdIl#.'M'JỲDRU;'YA1/K2>yPPy†vcNuv;@k'ai[n͓klQ_L»N7c*kjgYNCS Hl-U@7*m,,Յ8Ygї^j{ŷ f+Z߻JVa[ ^L1^E,pVзajGX5OI,Z C3d–=^]E20`Q[ݢ[ $ǭ\D4՘G&D:ԗݜ\C6!&a>f6C; iaI~iMi+~u8~o6%ZxOb:;#W3)轰쟀e_%nkChDn: J1YUy,Һ֖J]KGBx96. sZWLh4ju|%1:"-uɗxub! r|WkrtN0Qy.M|LKd-s'&4ٮ,~[VLtCn(|^6f&=Iv%y-!2[6}.{'wi*|V\=J+$!s2xU(ǔ<$|{le}*OLeqJ CsRMIקOeJv;,㫸_-/? {Vݑ3[}cT_JWhC'Yl|8&vesvaΈL @kP'`,?Z} [7 6id jcn[-g6 oa-,>;Qo7X{lt?~"ͽ'h}9+,5M=N_ɲWMZjd`ki|f,I5Rw,c c .>m$\JC.(Q$X%Bk $:۾'XPᖬŷ2.6 !}wh  Y  b3ʴ2Kxʛ}4s3ɦ.yx5 3E{a?CZ b)F3t"y)_?fZŮ2~s|*oa@2|kJ W3fӯ,cpW,`a_/ qw1FRK`8pyi09^TluYu*Jo[?ӳUsG{tB_Y],NidadS]G0tRD&A8 Ԑ[2^©gψ'Vkpwo m]6[fk@ t8E]KY7C٦lX6#)O؄W56ޣ,q";jRxn&{8y$Cîƛ4ܠpJM$D.Ύe2& u})60h4Yc^]mk*Mgc '\tp\^ .{ lс8k_`xbsNח8 Bѐ˴}q '>L0}w#8XzOqM-Tw+UyINױ`p~oIS! ԛz[A޹@QQ.'K8aKܒ |'{+J~b9o&Sk^NizN0Zw: $ `a{t[d; c׮20menq͆[2Je9O^=W%d@7/e0tj4(1$W7-4X]vڐ$ hߍmşȑX5 tñXVa;?^A(#meTșQZ#B9ٟ(v'Az,˔˚c,OT$Zi o]=nU#YDkMp+˗Hy*e_1$1]A2|| lvl~K:ɭʋ,9/}v*pWuwՅAvўzld!' 49CXrtv<a^f״Je Ʌx:z㠃-܎w]rc5)հ~&Ӈ0Ҁ$f0"FNa' '>Jn'^IiNp !;yAMPQZt4vѲhV Gzۙav ޣ9VwORk00\0Aܭ;#$::,F+NF"Zp"%umP0{cxwteЁNCΛ_!ïgG?pޝ;{',7/Ns(;9ׇs [@N.kǃj?=5nsyx9:>6]`oOϜ=3G;8:?;zx @`:Ml|sXuV ;8:;ܿ.D`q9pu;d@rG? ؂gĺ|s~qtIw"^F.HP|o>ZHg?`W_Z@00WA^s~ywϐD`BpR!CB $Rgß~:<SޞbEVKGpD[eH:>UFu~>B<0 ;Fz&3@/~p}}9WntdŘ!n%`0b*]Lt1.TwJ3a c'IW6 )I'⁷".B'G^1ٲ]P< s0½.al5튳g! ^>+KDDQqü)[yE+A2GF`i(]c.δ?AT`8Ff` J6`"5fF3K ƌ@@ f4\ߐ83,*uA!peN>+tŸbvw;d_sÃtUqXBD$8!Cx)jQWnt{ミ/WſVH52Za@!ѳ.9 }t @^E4x{OGVm߶H_K#sov0S]ȗ`483Jrw8ԉj›W`h2[_`=oWWտKt鱊낆'3@,*qs'5|:]z0"pEk]s/$Hi#!PVa {VG$b ;phplpsBCBPFǩ%椚?#@Ga~kYm-gE.9p; 8In upҟ'D<I!/3H3n0W*R޴ڳMóz*~Fgl*@Asa_[EBٟ<; )nކvysqY%P⊃ۂËwK[ȋ_VnA:t,}~6Heaz}Az@GzF24ae^\TsKtkFr3d={*Ѱg#PoE:abחָ y!Ey&&90`%w6ՎL됺£}e3EQ@э<!I6,z_Qʶ.)::E"-Lt۳LJmS!v)TMkꙚSI[)PyTkRQU({sZ7Gƞuè(*ut"uzuwzX߄K#&A96S~dƥz6fZӵ:R7nAV[ 0-M(@3}K ,2QKiESлzƧ_b5k1@{o.:wLߛțl =B U³GZ'T3{WW*uRI5]ȵmNia{I1p8Fz鵾28ۖ"_W^JTXs%fb@V7l@E _w^u&.rf"DkgK!0<2ƗCԄ*]BG27()9# YZ< /9;MyQl̞zo"Lq;eO9Ϡg,n齭[(bSS}T?=1mѷ;GY:;r_ݬFزsH8<Z| |fY;̝Se<\/ΧSF5:gLmUS*)OlC@ oMZsGcJ7 'x9js0 I6X:ѫ`Ēm;zUÛ%}h8erNx2"$kp$/'cnڈtk߹3Vz-K%s(A~wgXCUD@#T$wNgݼtu>ЋG</uᗺK].R~O/dD'@+aTSh^'Kp[=b[S@)jɻ_,a8ѩٹxZhTN>g~QM >w,.ϥz#fin5?!w~ߎ@"hǾK{޿YoiЩ>;]Q㟂~JNF ho_oJH,FUo9L)J%4Cc9AV*[Xe la=ef`G_U#%QDq57Hs~'/1s;aMݑx8nx{@4!w/G:Z7Aݾ𵘳sb^ً96g㼧JW<vHϝ'$ vHx[M3x)t/cE9xw~JG?Q:gϙ<8BuO'$7 %;ƃ!ѕ{ߠhA՟✄Z7XXGbByfy\l^6]܇O)l%I47&`h &[)넾wv!J,'ӔZ,99:y{9q>HdgLl-fhN>htLް* ˻S21 ?_`ޞϵTKH(͐{>;( K4HʣӏDhTxgݓCZ) 6A,πN*|5Xr>.;*G m` M0w3|57gˎXm8 &ǵj(0QkF ns] *w J j}çzIf\]va~I&Z G)Im;,$,=MXlHn,oZţS?O9^/01h#f"NAؼc.e:KsڃWȉI%Ф@j#ݛtH>R'T[5!༧3hդEA^Ģ*e)o!J?E޵KQHVDs?j˟N><T>tŻe]&z@BD䁒B MݎOÐ\dâ7u=t/xwđ`N/ZŔ5& :NՁGEؾr裱 Hczs2 ƃ3re< =<%0.۩!t'z[-ʯE(OFxoʣDh*2 m |o ȥ!DYX5PsҰP*5i(e = 5K&x3uIҴcSs>n"g.Cp4҂_2ȉR(JRU%#H H/DQu$/߬ vu; +Cɗ^B1Y0<#MI%k yH-5~H'1dH*} ^ q\2)Su>*FsTr -򬬲ءvd20Z!APXq]\ %ۆӲ4ë Z%U1:.y1|܀%i;Kτw1"6Tx`-M ^Nj\ Փ\\Ym+/z7Z{g[[?PЬjx}dn?GRt'g\`Bz># a7EXbAkχ ?(DG t'C+Q-QDn'!2)TM3fIMS}'dsFJ+ϩɮs8fv^r)xj6kfE$Z^ fiQP%ӄkpxtu[f.r+xEkr(w tRl/ߙwٟ{w='kM;sM'Kdjd/Bo؟mo6<'{&&_'ГWB~eۥ3_Yu7ɯu7,"3N' Ӎ\dߣ3?Yoߙo?Y Ѕ2d.? 4ٟ4(,IK"'[|咱Hɚ$od.|'_zqE<7{&0sKܟN|H` IȝuXIm⾭tǕ`$يݽ4/l9* Z{?_*w_Ο_37O&;V2iU.È ̲]?E_huܷm? y'J")hmg}~@lsr)kZ0ϠS׶pp6N~<I@j8v g *h;vxҶ!q qE)*4IJhƎ+$INE,hZe"K:o][u}UQ֔v&R R-!BN1sH5h jKhM0!M\8@4y8.dG&ԋ7C4!`%Aծ|1pGvw'Lm,8 &*J:,*6b*aN(GF?V@ D1 R֢ VTb1ucҕJWE}tVx! *EyE0~ Pb v83$ܿ=`2c+uYDn VP|Ԓ@m|)0anДfa;I0>U C`\%W4\ghMBD/t G,!j_snH9LN~=n`Ar`]B.$M$!4]0&ɪ ǚfeFVPP\aCg@%{"|g׹e;r#_rGTaYQݶJKcO@X­rhV;vzUw끷^|6DxGrbΆ=CMKٞPKvxW~5+LB7Շk`'i63E]ei\@|U|YXeҦ,2P55f%f4|z'M=F²2&*/l+KMd)z!IQu0̹͵XQ]QǓhIhB"sL!RNȢ{,*#feQ-9RK5mIה,*g3r/IJkjW}$Ŕ ?Ur .`2˿"*"2.b^W}EYډF⯱jcXX ^z* o9h6~ |h8bkǬSExxLbkDҥ#_>1[>_rO݋!}[NK;U UzH_SO!ySOC p\)ьJ2UEz<_:.bkuvn D#(N^z"cv` +/t 1T$:ŊJ(G):Z!HZD<"gZJ9fuJe0ߵaB*ثrWenvW59kD[嫕 -5S[4Hvŝ/9~|tvF]u"oه3++9)ؤ!u~X01@wK`F= lF=? [ST,QLwEQ) 1%᲎by$I r4 mAIR&jj x򠣡9f@]8:4=[0;x*XL8$:}Xdp*L #H^_`V(-&eo9PVs]bi7SJ7lHK`xÃe{5"iNjR m:jOT"2` &J7?dqo/.>^:?sg|;&n&Π#B+rj I!+1 3A39D7bB<ߤΚrt~Xh˿Sñ$p"$5F譳w"GQgg= i 3+J+0sM 'сwy&1.DcbqI¼9:4``6NXMx.*Tlf&ȓq3~ сvhMN;\l/#d1װ$^æמ?ޓq~/EHJQ-j1Offvlpbmb|715honDc]TFl:/,܎Tw^}D3tHDG)Ba*#xBrBSh^@bZ^ 8xf^BzN{N'Av€Zw6CITbPG1Xb/㭑iPDbmmv ڥNp6gLJ?Db~J bC1uKgж/"9 B2g,|FTU(Ȁhj.dwӽmBདྷeolyfm u&l{00U\U4 ;{0 $϶a flMC8dbG,s &P$[r/YbIdA<` #+jlfQ-Pb'EA SX-ArcǬ3>xClAa)ܥ00u>{'ʘ'̉x 1s gfue.Uk }Bj2'Ff3rD Mmiv֬/i*Usʎ}![TTMY_x/i*#<6l\uTBt q~.^wrtGpaz'蛠P(^]10~H{\ &λ.4Yߥ8A3`+o G?A !BmCwaIz\ 8/] vNQBǗk*_J4T;q>A~KGޏ'qʋBڗR_l *@`:ς>{,yt쵡uJ>^8bBHRx' UbXZ1WgYq:\*ƢE#/Yc2sNM(a::Kˏ+űz&c|Z4_DE6RR='t̤2-2+9Ittc+ȶub3=/X+MZv2 vd:yfL2{%qG-&* "R E+V^& 66Wr+;M|X0ePh8ɚ60 /_3D*ND2${$Ky`)61SPMAd4[ xۙZ5saӽ?s/+12D9o'ޤ{ⶋa8##b29Q[K¶ٞ-ҭ/ASUz޺z+^vo]jġ]~NN#kBxWAEJ w&^cq0=Uz"ᨏۊF,Q0v׸$q `kG%tЊt'_Gxw0l) ySBVjHT J;\O/8 |D3O:c'XY,ĽA1ogG U=)=eŸKgJo7*~1gB0[ykaE cXNpc8OE9̝)ZSQ}LO0vKjN] 9AAsE)tYL0vcИ>,iazq~ @7lP [hwkIS*CAe8IF;u=DE55{8^!6lba4OW,>,Y7 nя`BSvљ7<4HXb2 T`rC.#kg/Nyroƺ:nB+/AQOM7P"hdabwPf82a((P r o9`,揈J/.эL24Ty8\0֒Q_[Av6 [1A̍0cY<(ZxL‹dEsɊ& FLtQcB挐XMF3'W+4n [-{ᖽp;e [6aH O0a i@[/qÌtzh{P"`~tA͚ycmD@H'?q6÷]OrjwӾ!ݡɳ~&A@Rg{ب_>]^oK׵`=j k>]Y{/h^JFb뗿6G@UJig[HxF/ݦHm&: F@F qzpDlogp>23 BX#. 9(ȿK%RZNrCS /hu¼ O7ڱv/G$Z>&_f.9K񣾠eXZdhJU8d}_ _e&Q=OSIvĝFFԇhG8Zw(a^vs; ݾ WnTҙccӶ!4~x:Ip~t8,Ɓg\Ѝto WywOSa qc>Bvő1)m$%0F&UgA N%a3 0Pp[L<ئ֤Ms4o?=Hm!c4o)4IZ) Q8dsݵEC+KDEW8{KqR|i5<]lsP.A'&}ސbs„ӻ`[CtqV}s)M3껡fY4 K<c(fkAd!ɰDbI#`Ըd%Mq f8~$4U4Y+1؈8D3Zf7P0l{7adKKb[{8" Arq$՗Q&[E@ޮ[cѭ-RHڗ.5 tɺ(ny:ڜmGOܕQRu- uԳw-Qz6 uiW͌eH.Ӊ+TdiSE8Oė,2ʰRէèLkQeRec 55%DvS!݉WrNLͶP3dah,_9>4(P(R`rU!IY \Ey^|zC^.54]f^>?5ҙy.a Vr+Jt+2t+QQPG:Y:,Ѧ^63vTil9"Vaɷ R:ₔƬ];W}bX(mItOJRYVsve%3qe>\P$ݜt?oJdۜ]R(2T:[\#sZ)yFލ'F(d+Ňݔ$*{etJƔNY9윲r iVV.Zf3/ii6"Fœw޹;Nov.1.6.IwxlPpKN}vșw ] ;ֆLXnDB2(3s9r-E}N\9;:,6Qa7w*+ChfNePMڌGf37a\༅ \ p˩H6s(W9IP <]B#Qځ/.69M(ˑ-mɐƙѦ0m#[ߡ{{ 4Ava4 CҌ6gܢSתN8^ CB QR&-<*mYţe*W+o,l~^'e1Z{{YfXesn^7oiKc9MCE;(E[:mwwNѕzJr=KsNה.9\s ]\Sx.f3;r6,p ̦oa\z,ٝɛNQds&o~W3')ni^9s3_s|纀P=ٓW.]!K"upυj{s8v9:LMx:B#%qP6k.TӜ؛ '‰=YY=ji$2AQux9Fw" jTcѣ->}5crn8O``Ό~ } 0uo,XCߴߴx7r5GM|ood[1#}̿Oc-c?*WK[}EӚ,豯pN]ұ<>pn9KQ3[G;jKZЫbY3^l Yϓ[ns0JtV% d rJrc6J;5(f.5.\;*_U=h;f 8SJɌݞdF4^' 9 ~q;37dyO)O 0?OUSQ/U1x\2vfn.e[70oYo`Zq;tfؗsSIi^{^SQ>*;&f8С;~ȗd]&WNx;}C%=ZA-em]X~oD>A$ TFY@PћMhV擹wzc qogg 'wIwԓ;UƫStVn.D+]PD.N Ņb YtZ,7iѝ"E=[Kdҵ'Fss $%.;73;tiw#i/u ȵRzʮapgH\yWt[WrML!{2/la2U}θ)3zW"Ff]KIf}L%U25mZWZ36f#qK}–R@ hM!֝'E6*.g)bLQR;[#K;[<㦕9Mfȁ=~$4`ElO`{FF!قE:4!؞4m=5-ϋ W(4G9y%3tYM{GBmfu?_~^P|FǛl$"V2y=ar=9('i)/A}suؤ1ई:l6i*M|^,FqHlKt4fiQ3Z^"-wMYSߥ,i,K'ޓИ8y[=xo)[q9c7ȏ?*O(zO=l҉$#F&?SL#:DW_p(SbjDFYPqfKMRbz|K/Ԍ=Y+;ez`!G3L+94Jq4%J#i$U++ȟƙC'.g.}4m4NY9P3d숝X-3/+Yy"vj[zNgVwF5ws1wP/X"*vO>B(+Bh3&JjcͶ"*4LQz\E!(qQ`? i3^nߎZZ vF0YU/7i1IEL,Cl/9&i<(p81INv&Mͩv j<tz31дpXnN Du68PMG"6܄M*-`?N*NZwQeSvZ7ݰn, J:Y1Y4r(0Hu0`l. `MoXKQH_&ND(MSboD}ulcG T\ԳO3g|61*jU4F%GKn#6\E?%FHgRo^N5|󖦉NLU5**YTك KJnb|UnUWE{Dj[U=1%m3gdVQ3jjuzKZW֌5!zRl#"$Vz-;n/NJ=\c n H]]Dd׵7⍞Ymlvllfff`,R.AMmfմŒ]-/JT@D<5S)Rҁ%+2q Hۗ,y-[fYa#g |ε0ȹL3ה ?4L5"0O5,SZf&90ȏdi۴fZ/3 #Szԁ ҌFK% %1heH[amgŗ1IqO6 Hl@M)li@9(O\ءեonxD)(m r^R A 9@L& †z1bOCKЅ7:lRTpYauh-`w2+?s ןc 9w;e忡KY[n ҞNo>SO>/.sNK=}:ȓ>@VuPZO;Ltfv QBXՁ)$͔ r~ ^Z:&BIgFƼS"P۳MK]Az՞l6!BxڄAGN6!qHЬ+5/[!Z5c:iթS:ЩKKA֧z>]r>bSKyٕmRVJBEGM![ߙ-Crh9W %HR'f(+Z 6j41ب / s>ssTySSYB5-EMeN5㧲gjf b=^VPU$Wao`@:Q6 G.Tp4i8+kt48ETራ6;MR3Xc[i8ff, حݚAު X4m&,֬E/;ғ4sH͓Y(YNSkIҾMvZfMf~'SrT7S^#y٧'4œlCg>p^pްO8NdejT}ѣwJ n|j_/Nc">ocH?cJ~Fx7eO?Ӵ쏙~iI?|,44Y=A ?Mjij4\ޫmEӚ^ 1M:~JJScPK#$,33hU9Dzka=o$AP)$Ce~Ğp|ʅjq#GSu$ _P1*lbe-b(HSy* 2wބ\p?ƥgEVZ S،n$r3KAiMa3Mlh z{q&O2aJ{ ar6gܠSoXOnjr!H(P! ) NTV'Qa0z<'Q@$A X|#;;GNut#‘3ǵ9ݒ9o 1T{Bc+|@X NQn򠑗h zD g B6FF8H2ܒoh/eP^*%k(l9U}2Zq~cS9^JŒ}hrCBfmȼ|Q);Xmxm%^6X3^)Z6mŦm0iaO=[z5~ݦՆVuag!(]Why7 hMae14f8~ư1jP%[cu{:C^TL͍w KW1֡ H* )ϔ1J5U,Vl1J5U,VPS0IP`xSC2XRV Q$aj!%HbDFY$v19_/5,õY(A|sDrD˲ʒ*@WoDUV.{'ʔg &Õg?-AoKr%;P'#d*'w}/6iOU %¾vO"웸u̐sD7o:lXTqi*MC Eϥi.(#x7x<`S},w) l!ҩ7v#nv#gs#8U/,UO4 >"ej")S3H'5D+f[8Wt!(3Bմws2UICA]6 S\KBd-5t ġ;8PMnG"6^n¦E uQC(%kp䨡s($n`݂Πhʮv4ef5ఞ|YKa[ w\s]Ds&sۇJ>N暪_Pr4׸nԁ6`"5("5(&"]OvQ րU}tc- aY:bWtd:*53>m8櫉dx}Q)ka5%=kBz̰%;BQVmENĺ)$k!w5㩄d}ɚëĐb$$͠o1Rق*[3PU\ȭ ԺuCwe67/GJ*s${U^U{{Fmj/j״JIb7beJ/i9ȪܞQY29 " &PE2_f_Ĩ^o2ꯗ+Wnu隲&__xuMtyC{i""p9,b/b/b1,!<)݌&b{Yypgr ^1)f!kz(HD~b#%S++&uDь1.&u!H1ˌIk4x8|ũyFG \nL򵫧iW#R1bRҔǜS%31,КQb }D@5 Xl݈NغhܳyhY -7TSh}"#FpD'uY2οOĒJYfg/-El2odI@Y݆uI@Fؙ|g& |=0߰mJ@:3ds9䌢>E6=b7ȗ09Yr; o)!_b_f2 7i$gJѓ)FO"LnXڍ(d9KFiq3]ϖ"QH@ӦJPYs"MŌ*nBgI,YXҘKY s` /4 -3 Iv!]$NOB%=ׅ!CCpK}Ac0ύ 1fȐdjO|McH#kH/Ad'ٗHL%sdHL%5CyF1OqsD塒8C4S$S1IN"'ɿ)mTz`K}sYftؤ$31,3:lIf4&e 9nVq3oPS;A:6R xbFar\)wRzY`ؚՄ5G D.!i,"q(De]0cvu S]OX8?%9M}Bb,#f%Г.w&[44 :rnV$^O_Ps/@0 _q^aVBv@g.>Cj\VX&Y Ӊk!x#T\L!*# ģJU&l  P{LD?$͸  *1SjL8y{D]VWѫKJʖ1~w0 Gu+#,a gp{ =~A)ȣ14_b_"l!_bUPGǚG6QcuyKViRWs-0WMٿĄ n{۠ݽꂥv@:d1ifg]V-'JEH18Wf Ϣ,R7j` [o.^kZFx+ /+lZi ?Nh L;F >ە5*Tm'fʟṊ,cS :oЪլ yjj&vw( luw3i=$ N _D z@XժQ WJ%'U{Nj՘;шZJ=FZ5N4m)砳B/e+,ʰ|Mw/Ȟ޳jx|%߽IS[X2+Őb&0xE5 ֎π_)fCa(O`jkwe.V%ŷG4\D "cK<<#f!h9-y,Qrj^z 4E$< N0=Xi Rt[[{Oo@oD4!iJb?ʌdՋPGdvP`mlHi=Ie6$ ŌI۽>c0|D".關] C걓([ٵ˭o)OG(bwwۑ y Rݻ쁻vT q^~lG#䁨f=lr5'{ā^*{"i4//aؤfm$#a{k&Β=d_ER뤗R ]i/u7!ahsM{T^*mn򗮡WKƪViV9O4#QB_ň@dȖ.t5g,8&P@젞,Y9*/c>s;+v0O`8n&/8n&8n&8n&8nU7Xc5.3zPlytrg Zry'ԏ$=}$W#7ȋ?jmm2jB/s cFFFAXѢj4hfD-O niJKQZ{e4(Qh]>`潠BJ[ȰsgdإfGa6u ĒB,qQ3)2'oJČ!nRІhq]ܼwu>upZ]b2q%(== ތl;ہvqv#Ц6XmH+"t?yVD bױ6IrܸѸ) &u2za_ yZ(u[Wl'zҪ+FT;Qwf; i&*[Iy[IyoXI *%wĬA3EVbX`՘ 4*^iIin!{լX͖MdY4٫LaBlJf8~~gg GӬ6y=nBchu$>>T!%Y5ono(bʷxqW)PUrMra((zl0ga6 zl+QQr3QzRٖQ=i lĨ4TefL@P# ,cYeӝMʍgr{Rs0JdFb}wDslH}wjZ5 V *XfaaqX(7jZ5 F`pb!W}̍f >5VEj$6:}Yz5Qv8H.Re7lRC ~(MoʕgߨZ%x#I|/>7z}nHY d%^y27enfI3K壑w~|4n/Ow»i瞗ƽƴۓTKS/'4tdg LkђA]Ilxcܐ>2r}BLK֒n-HӒkIe{6F>!yikdᝪ#Fd Z2l[^|Z4KotddP()D Z4D-k gJ )It8)ҵZ- $7 Ggk 6:XW` ņaB8:T7 GW&nDkk8+F<^& y+ ";r;!N|0߉  މ 坸0 ݉  ܉ ŝ0FcHvDM;ӰZ8%וCWsz]Yϡ+9te=ѕKW S|,:YUg=AuTg=Au֓Tg=AuTg=Au֓Tg=Au֓Tg=Qu֧W}m!?yU!ۥUu]ZU!٥Uur]ZU!Uu0ZU!Uu/ZU!Uu&NSBՙЪ:i\D/& a 4)5@hKM  43!IML4ӥRh$Gx ;BҴvjDyŎ4B¨>qcO5ؓؓxE1Wq h7rMv]'6-WDc[1ѭVLt+9&Jn%Dc[5ѭV۲'IIh$>+d0m3Bh:+d+}3by+*5J)Iy+4dVbJlz[Mo+m%6ĦWzрvCj.ӛl[p>JJJJJJJJJJJJ Ш$*ruc`CL]J`3R|dz ;5ǥ9Ȯ-uͿ@hkn#K]&WR}oe@2ݓ/Lo cƬ -@'"ZŐzig|$$)icCmdOuWӧ+>|Zf|`%|^`#||̛ff|`%|"WAK@(3gGh# VFI<}#k[01N|7S3FMnA&jw>z5 JU Po3IYhk6FAŒ4MI6i͵Tef-V5ߚ|yæ vt]1ph` 8` 8[gFV`Vߋ͹Y6סa[g]M 5+ =446&<6nHМ8{QmOL3qo~ji&TN%TذN|_0+6`RaVvٍ]aa5BW1sZ.`ye5+Kǫ4exø)d0a:Bȳ'8VcȀ ք8y`0",U+ kYJtpu,]H6Ӏ4M" 8yh#gefy ly l903 mZbMAGg$ QI2X:f)xrZ-\qZmo 囫|NJRn JaW)*ݖD:%I ]L1RF>m70R IS*at.p ݥpM_=΅jZ|7S|Vb|7&ur['lJ<iRCY'lr|TE O H֠&}0a.MT2S78e\ 5yY&L ,NxY8͆jxUlnYhfPߪϙ**TJ_Oqr۟Z*K1W5aZD!4^rJJT<ˎnĪ#%x,&$~ف'X1/4?hBB[4X4$mϮY@ /1-̳uҢwwkg/ ehX%l(ަihX>'KТ`.(#878g 6d/.'\, r`/.{vOT\ɝK!rG !5v+E݌ S#[\'G;Hp߲Ë+_p<ˍjZBTxrd:I 16lQݲ)vthɁavʹHkwkhwӦ>o-j DU3PM΂G 6,8܄MK-ӀdQ,8i@RoP[9 69 Hr ĵڀܔJv4ULfe5m5g/&"kov]W{KΙH)R&)2Zd,LJ#֌w(!FS!鄳! l;ީ ySS%w=ޫ΍wL$˜pI*ڎ=7jB/s`iq7):e"z4)#Z雚y7 `8_afMr7mKW7z&qEO{YʪϦjƴ곩1eW1iyuNzeqIo>L6>[dI,N6p]hN&V @fNvg:t4YVҳLJޕ9ƒ:h,%fȅߜ6PHIH}(ܔtl͓Z|˒Z<}eI-}sX9=ә@,X);|+^|)5 (,̒M>> ԬCsy[3uxyw%1}yGkKLtOSU9>ˑR5ExQrJiEKC vEw,ך7@|k͆,@8`MH&&v޹*\#K )y!er>JJX )O೬y% | \ υ}/.\>KJ,!M೽r3H'ƽ4 3Y˖Җ>լfڲC[shzmYϡ-9e=ЖڲG[siz>mYV[`^QerOԛg='(z')z'(z'(z')z'*ӖV><_}ӐĪ< AӔnʪ< LӐ>B#aHGh$#4I}F>B#iHGhG8 Jf2W7'^k 7u|᦮zԵvAUS׮6ȗiڍM] _k3uڂrQVPmxPb cωO£ nbbw>iyJ9A`sњkMhjs6 SS"[ӱ`%`e<7L-4;9SQfq/7^D2Md/q"{jۻ.B.!?< @6Z!x? 'XKR2&&n0= oGBPzg82T^*NLwsW&P@cF2G=Qd(v`/4 lHm0vՎ? H%  Hd Q%GJ~˟8R'֫9j`%5̭/XT)=*R V$Uv9{x..pwq]\#+g6<..l-G1-.͐C@]4-.r Mi\MZ"j-i<4}LlBg#-w܌p^F8*!&!%uOUHR?譼T"7Io5T^*}ni/>KsҧU:u]ҫˉ4Umio~7_EωEc +f1':UUPfүl& `e@^efI`)5`8nqL`qL`[qL`q<8n&0w=΍cgnl8~FV?#F?ghNE4fCr=]/ɓ坛TэՔO|qyf$73aċxQ3^Ԋmċ6E[xs& !l fffdpD-Zފm@c=# `;_!ZцۥcY QT5>Њ 1W]sz3k)>#6 ;%6}Ͳé%k&Kđ h[29kL G6#Sԏ3D¶}D(RSAeow]퍸,io\AJ꯾وr&(lkoDzsqNJ-z"#@'a~';t( \c!̱J2&ih2p@e QL8̱w!@z6)WK4Yj$YÂSIؤdPp[țL<ا֥Mst,P6g1X$-3JVJ B l [Y2GI2*sui3x%m<{|gu {\gu {\/MrL[{ V=i\4UgsO*3y9F. ,r3SJ˟M\V.8` Q"q3gW{DsH՞=Ԍ5j͸Z3OkӚf v)$+K,=$bWk՚qf,,|L*C&Ip˒fIp$bOkӚf*$NF;$F6R9}v>mܖY_hGV!RK/9E9#%#oWWs%P+֫yە~jk#%i/ 4N{9-fFجCUY~h`EcySay3twZIC Z=ׇ|J|O!2i(r/M{yag^~G1 de^Ffeج r7 ˓W>kh\`QXLSMbO $ە~˪=!X ^'kfitwa5wUOcEFOmL?SZ|kJ0 A ~VOTɔX!,;v`M))O5G= tWK~I-Crev+Nl*XqgK2!,l+ۆy s7@ ?̓5-qUR|h=)VC zF,iIBG ={8{'^|&|f*{'^|&y|fX{'^|&yg8b托{i!&a3X<\B6q~c5˷0sXz Saa9,L=0YzN Sga,L=OkaO>^ٚhk#$zVSO08SO08$SO08SO08$SO08$SO48dSO48DSO48 NM_X j08y j08y j389 j>38E 9\¼c5t0fЦBXQt24M"6u ڄ1!MC#0L&} !]M0`tَ]( ,E_FDrV Uċ4Yi@XV8xSns/n(CW4r >H#4r >H#4r |>H#4 |>Hc d9WH?J?mFmFa907K{a:QTyF6(y42zшyш{шy7zрoʍc6Eq xdWek$5 }F~_#aHk$5}F~_#q(w\!;7<;s39[C~Եr@Q"q=Z9G][ Gk u-J'CuԵr@ Q#(8z% G]7Dߨau=kn *gbEv4N:XK@c"P`ڒrkɿ,;I jT`ѧu,qOZul+ iM~y7y&4X i2@K@޼koF~3 VB^۪6طbfv`e4`3ҳidvj?OkwkhwӪ oYU}+*F"7m` &Z޲o4NVa齕nkhe5z77XOϜQԛ9mFnNi3ќ6Ϝq.SMokakAfzkaky[M :=dMSڞ ` z9L,Y@R-mY@WSVh;ZU#iI6^#n' Y@6pذpMzŶ؀,#T~[ x(2Ҋ!Rz(#>IEkb psزضC%e#+Vh&lQ)$欜VnT[Nb+Jt[OI\O3}V'1y:6MVV'рs[o\ɹݷt_վsoºe6aVw[{ɻ-ުճM^YWY=[m|e~,0V:e1aݲBްBoQ7VwXqoZwSlCnxkx 琯ᬸY $67k=oE||R1oYoonG Lr 8y|+gr"V*[V` +7kET9wS1W|#]F߇&7ђ|KBĥPQBҹս I/1؞>B$bRpEHkhz̽{0~7@_O?T4#S| 9ZcDH?Fd^" "WjGwvhH;iZ~15Y筣QQ努6E27"#C4#M 02 Ge;}s5t1C$[W_ Ѱ>FhW pGya^O)Ohƪ]TvnTʞRًWn*JRnCL! !!80&A ͑%(J A7!'mNԱs6ȯaoDF[ѧƪHB|Ccin5%2spXL=?Y9}7cҩ:޺U=$<9:9pߝwvpqtqz=CG,(}kh,l6 $sDQJ.=#$H ÿ5v+*a@܄8Bhe [`C'W^oxM7I\w Qw:Sg؅H䐠Whտ~W0!ZK$$C-X3lh~;=?5;:[. 9Fnwg|k ћ`H4ΙKFy 4 +d`;!/4 p!D+PAf5tb8`_#H>JEë8AB@,_сAsݫgWg'?p^{st|vӋ.ޡQ_?;>?wޝA'o߿9AN/NkG'?Ԇsys]~՜wg˓7'BǫSջ3䈾?889yq؁98y{|@:<>p_ycbc7Ǹ h  ~"!ԜLJ'_hg\ǿ|@@st'4 `ᇳ㷀''.޽;;g`w71>_ypqFM BLӋ㳳aU܏TQWh^s>>Fg@G, 9 uBszӛO޾>WNu$!Jfs98 OO`?? ds}rWQpb0i& GӞKwJn#BbkAa=]T ›7%vznX.Tc}:;(VdHƪ"ɠܓe'Rg8uA iE4nZlz1f^FWWQ0 fKiP@t̫z TFP獜k$ i)* 5gi 3 ڢ'@HYnDl q 7V옿zȤP6Ω!K;c0B⸼$pԯ$f/iz0 a]4TMxⶍN)|܄pV|:.x%*aq\&&Zp. :$R&ꆻPQhcæd(hKJ)ۂǤK絜e^i>/_wJL_̶Nod>U g!9NmcʦOHǣǀ5_%A@:C:E[X B*X6` X{#`LfI" h_Ul6;Xjz~5~xZ:-U7褳fjk)S*D?yV\B85J<1\5g~Ts6HԲ]kzZ&6/qٟa?@3# h~~}[bIL3vWBƮH d9Q oGÎ#5”\b\xc0IO['iis.C` "mv8#X-8,#87*XQNsd dfN`~fbe4;\ ]y6~w;Imd:ެ3Fgx#a]KUw/Wozx ܺůgu gH>e$PM%!)S@R閫XҤG9Ul8]l42?--tMZg|mDch`4t,B|\R?X{{Ťiu7OVrE|MZ1,EWtǏf܆4>&o#UwfF _6͌p䳯 VC^ /1g@3iuFI]K:oNx"vvr[3SZ‘$-/5T@U㛇RB_G\VKHrT]Ep{rL8fƎG);2N?-ϟUtHHYKL\ & ox^ (L2LD3??/ }ϲtI^KFKhY*W]:Sђ UY|QK5pl-[)k;4(-ryՈ* 7$`W9{xk hM| % $wࣁ ^p|/ɨ|L\X;> )2*RgT%;TS0%XkKiQ" x@ t#!u`@pKL̰QLj9D:0ݿU\cD^Vl_1|9x-|ȲJÛA}EoddLJ%wT"nԚyo\gל>bƹs"ǘٕaU1Q/ꣾD>-9F +6gt}kz"GG2Ld8Ϙ4~~ԳTQxyK_&n!UBT4R;se"eBVsrR|04t]nLM~147yt]077ygP0/v(R\S֚sPa؅ W1R;H@0Vҗ"ʇ]H#Ϗ. ZWHΓQ*cU/0T C\brI&*-U.cC84 Z~!~oߌ|_!]/}.h4\4C_沞UFI2'ѯ0)FGcxgrJ:ts)(rpzhU/Н v!ɼ41{,F.j/~QQMȡkɩ@s هLQG!ђCQ{xK/JF  Q@ _y95`2 p^ xm"8ݽl"_2B5Y(ThEFN; xQE髨b$)TS x' qPQt/*;!w @\^)I~5xj8Du+~ulږϭSŬE1S…]̙b$^A #de^s(wι4Zsz35>id7&c%͑8B"G}'k&vdyN'gMfs|jR\DGf gW8) %_]3d8WmRpK5:}YC@,qLf+{:E%)(_KĿ~QT|G+1ќ0q1f덶YJ\T8pySJv0IO;-j$|e{\CIK8bo/5~dWݕ iW),.Cߒ Q!+JW+URچ96p r͠ Ϋ> /Aߟݛ7  q] y|h't<{#2oj%J#! poWSJ8db%q_PYTϟ>_*oY!pN]E$Hol]N7?eFRp$B{=K06.,J#*:#cVjdT OEls݋% u0)/ئRF5CCw27O*Y9B/0\Zt4y 3 /-8$;3 aŊUМREPiE ܰބ:QЭ~ ɝw$mZ{1S^< 3X贿(yF],D N{ebLM+$/9Igqద{YyPs ܐ(qx [[߳,)H0YpP$&N'&: 錢~߇Ih<{y*;8= |_E]NB*%6$PW ? gWj [M-bc-uB騷9K1S7 KAqGͪU I4NQ"KPyB*u*IC|=Ht[,< kLS X9*P\NE#sь,沰ᷜ E3SLvKyJ.f&EcҖL֯|P}x_K;:VX-\;sR~Lq>aұ̄xY4 (-s Ӓ,O!-En9PHn0Rguui-Hdm ʢ?U8vAu o4׫Dmh'Uo#|P$""8~GI吽'RјҚ!.F{7 /2OL]BŜg[Sl~5v'~/ytF]olo[ჭh~Q/RlB.Z%(([WDE?XA7*js^5TT$b8hSML~vn5Bdxj<*:Gd:#T60Hf+79fkt¿u'<\~;N8חN < 8K':f(Nx9zN~i8oG=ե'3Gg(p99SsK:f=G< %q祳;YOV%0̪~XK= XH]ߜ> ߟn 2_(WA}s<NF 4D*,FJ="ښ 3_ s]ܓv3RrsW%yQ:蜶)7}'on2{ :[TU\}s~u5GY/o9~iiNh7^zߙAL>ү &S͠s>&ߠ|WZUUvMKVæ+TZӻiޥE-V_ =ߎ"HZ+R Mjbz3ۍ%fv.0*Ekȣ文w}KTwfT+XdTf 0vOי UKNWM%oC6]N?;[ .{a=s߃vq}_Qt~Uy2͏/xTJk[ R*9u6EXe]14wim.ݹ64'12Fa*7e;m u7,SxMҭlv>{4ZwVN^+~q7Kg1KuG}?dW9ߗiRxRߗOMk.ΗkI.3&I\/wQ^k$Mw-W:h(W+bg#腳5 1ܘk‡H≣$/'BL g:d"/D=C gygn1%( \s٩׳[.w %,:k]8A|_D.0yP:-\~I}܇.0C~j܃ڃZ.W5~EEA- =(u1{Ýqtxđdhg B*5|9w3Ioo)OZ ùtMl8 3b4e/;Q%pjd>^œy5θ#4$cCSs^ל5G \sj.玕A/w7~v >kW3D41Ы] QuqS;ꅝ b^ۈI~o݈N.QfR!䴲߇_?7i0/F+ߒU="[ & )D EO/Xc2`jAF i7$9Kگzd7 KZ(~_ϟ3N1^c};{9 Ϙcgc `s>#X%12kִO9D/(wkDtENԐBEg%'* 1ID 7 ,,IPOUb >JrD%¤RY ]h8j.o}4{Ltl|3o'cV= *vzIswAt{$ռB]ph5BxT*!#ë?'A5lSA21sj/Գo6Ic ܒG} ,o64Fp-7`Vd҉*6T񬕊npGE(\KG!#"F$ɔzdJ5Q,uB&*a"d w:ԣ'kxN9CJ# ]\#|G+˕wRrgRWNf#yJ.2)HΊ;g}gg*7ME>6F&2ma&da2\sWٷDoqL5.9~!6?'>{hQu="\hf kѮ.ofoǟ} @/l;vra5vJΪ}Bkg^3;g^ G{E"ŝ\MV!,fW!f4% :H ](¯RGck8"g$r8Qv1r_3V,I&-VS z/g—bҍw;)) Wj ӕ~-*v6L`^9(#mjeGxkވ%RCkGa"Er lxW܎XCr8 gZ4Qo8I_nc+^]ɋOG6tNTQ+ǔTFh^xNa[3IPa=z&|9=rnQHΈHgt& >&u?!z=@p71hgLd`\N7ȩ?'hBpBֹ zs&!jڟykjGyEl( `߾%Ls6mvC b;g|ךq'yrdywβ2& ǝ4O*u(|z - +9UL|UaGkÂ>Pz)@W/Ga!"QrN8sS4L'r:߻M8;e"~j>R&"Tߠu/{Χ'mA\l1h3N3'"nPyJ epf2y"2QdR'DQ F1L$m[daE`a< F矀ٴz96HNFFP+pvZ}b~^D8[@~F^u޾E`(nҰnZ++6Goԯdx5S-@A__8g_g7>  6~b_QP ضئrWn.ڿSh=]\Ʈ"&MH?7bDѮkmS)$Ms0%ޟaWoVrI+?CG&6..A=ӝ@|7=+> ~8""\>8Wg"]k# vfBspΎUl󥢾!~0Ϡ*|3VmahT[#T|cUi3ET4HZw֝@;תSGr\HԝRwR"+$ QS*QQQ*&tG (1JE@H[hZ=M9VggNA oF9U[w޺֜8޿;;8yw8#|w9计V. _8:M p@#񍃔) < @8讐6] {hTı.=얯bGG-3Cq~df0=j5(=ZNh͎V C;È;~ j4KCl8gf/ Fi67RB& Gaiv8"eO2 T{ uB!.| ]rS*^@<6HPp6 Et`P~9ٱ~?{t|ZCN^8޼11c4wtrv|xCNojqc4_k @_> 9:x{OEz0Qq[ 󋓋O3pw71>P'o"DXǗO0NN/>Vs?"j LP#JD0bƻ_] &{( B@H*/dH% iOoN~:>=<'Uĥs8!=<@~@1R蜼rySx*'v)Z9~y( Pu +8|1{&!4R!>oEk+ԍn27W o|qNJWN^=oֿe;cdS=r*$1W@c;y) a5қykzoʹ7S7 F(j*1/{.ny W]~C3,/aRAK] "$9)?ԠFȯ}%БBF6cmlhcn$Ul Ġ҆N]Gn3|Wn E %RaGFflD]~%2~vn񏚩1xr-GT*G࿩PvۧIahR"KլDbfHHXIH]Cٌ%% [C*4+DɲåP/¸_vG# %]Fܤ ).+<e`f7YM! KC,RJrW^"G)09)BlQG2$X]DU(HodڲqHiqR(50%OT3*%I2D7)abldYQNl2IS6)K&6y\b䓉xld"{lǕo!I>x& c-~2ɬb, (&2NNNNNNNI>D2*dh;2'ɠ"s;D!D=4K4K4KD}F}L t57zXg8ˇq@̫)6dG0NocjyTe^ذ&g|b/sl!qHc#(h?E *)8( F#ap?DvG#ž3O:fwۈА:>bB  )b,(p*p|r{;^.l||%C6{|ڤu;c*+=\Bogl/(>N'G 9Ʈ{DDЇK| @jc?svԒO#S19C^yr8 pu@3c°vY \h(oHm>BMۨ{ 2"՝ ] @n=6jIC#v?d7KVWȜ+u!f`$&#.Gޱa޽AF*9X F ڗ/zA;&Q{6^Cjߟӳ gcLBĽ)Z}* =9?8 hV"t}n9B`<z ;)*,W$+is@cT)0BO}0'~$ G1y"'?wBJ2ے0:`]*ny"Nݑ)ceU]bb i/Ἳ;?dK&L-Ƣ*j]#5VH-w?D ?@T}fbry;DiYFRLz=h& A1y&ߨb q=~݁X^#cds!xq_<ݯ4ɰbda0C]Ke>y9`!c}ȢP?xņxI>Bks5nU~kLqQ[Ѧ֦*ƻd~:Z4S"8=%,mM0w'n..c}1"wEJe4fl%!6U~:1F~3va&*A2>`c&~w>yw~d=۫u5YKBB6 kkx$|[1"ۋArRY:HE./T^ ]!B3S3KB8l2M OoڲAaNOVMu?(OS&rg\uU;܆_ EHYȡDžYv "i ݤC|ȻbM/] 06,8[ gy}gB;X"=N<ٍ[q0wC;/K]^٪۴̇HY Ee$2W /yprٳOx[Nb,e|a0_na>ӽBo_m=q'Gs7U,Cܚ<(CH6 G]׆mU&{yJ>všQ*X"t1^(wTu1FfQ|iF763ݹ`ػD\ +1ΒquDDj_0Y-u7yik>˯Z GU}*I9OVOk7穯TJ__5@#" vH,3-|\IXk5ߋЊ/+7㵴C6jlwL5ulHOK&> lk}''٬ bZ'Ew%T$ S3$#`ќ&-d܇IyUƎ'uE,;m ԏwͣZdK\f8ZoF}:>&&Iε|El $Ћ5igx>/qboV#TdB/6ҢxFA90qie{-s`}'pxc^g7B]4R#0FDǼ>ɲcbJs .U%O+Iy?R6DpI!M~p5fj4Th`DlL4 HuLp):$.rv$=4 Q"L* !-~ f;\a<$,'#A}#s'qߏԾX" 5b?''I$7 qO.W"YTiHg"ȳ 'S i^"Կ _ ®уS2%Q87I|B|Wu8@6pgrDTI@;ǘ5/4 RCA@eYk쀈z;lR Zo) T Lpy>~j/3*uFf)jÔB$VEexbs؝N'e:jI[8:n؝ -J^[ !\BR[l_׌&~C1SUF'';5&Gp$ұf]w(6.ݎ-wŖ!kGi#«l'a`ڸ=IB"9}32nFt8('36gp$-RB6ʛz5fֹ7="N%MG?9X _qtҹH AI;viA?#E,mG ;^~RGB`)^0Vd;5CR\ObNzr8rwU.pIed$iH1/i՞P e8ˎ9d֬^?o#vzdf}+Y?+< KS-V(z zHx}H3_kg$4%;6KliLJc/hq{eZJ!|JU(ߨشi}|dccKܥ46|#4.UhF;X Op&찯c (9zVI˙r0⠫|+qК8Ӟ8˜C\{8!͘u_杗rB碬AaVk?|e4.AiGɌb+S't*ȴԸ`_Њ1# Fj>qLl?A1рēJS^`.ޅ:2ȅ2ik f6v7!~{aKޒ0#eYAЕCjLT[] ?i@tp^]r$cgrɢ3 DkP:25,([+2.G.V Fzƶ(rxm0OChtTA|lIq.*?Hi`rQ bh]qh-FKrD?:ұ'P%^:㱡ΆXK,5t'M XtS Dkjq븲oW&v%[VXɩe arzVIbß?ȹ ^fdh1 M;Xxo43{lb/^qVшh%bw7spRǛN{Q7B2'(CAFq~P{ >s۱xvۃӳwoޠr^գ^X:ϞasBcIj996&u.LwLwLwLwLwLwn o 4>yxqP{A߿3WN0N0܌,rKKKߺ]= /'pGC#XS'>pp H7& 1Ht=pp]6"&1SͽŖNn!a=VC]rWf+ܕY|[2dCFߚy9Fz/\!'x(g^;65}MC7NoU0BGy!Ґ/{h8tI lÞO//txc-.nL-6k+C38= 6cACB)Hl6`b'W!΋FDTu#UkE GjqApj^u\U ƍ߻jOzh2z6+ ]y@;b$F"C@3d/a "۹JZ%}=~REӅ']4Owvt4bH `=G9<q 0lWOLjId,w1kzOʉ*XZr@jd\qN~#mǒ8-KuW,5$V9|A94DfLEGx6 0!]XmF L̻*WKe} 3eL};!\A(lq1ZE_+RU\ |D6×,hxٻg![b]v~NkV?>Sdp2yr3hdbzFV2gd{ISW3T,Rf(f.8Y$8 y Sp+Uy,P!|+LB [GF0{iBhj\LH||U>:"'5 -q }ֺ/DR}Duׅw+ <5ISw\oKr(aa+!2QЊ IGJ [rXC;;(RX F!gK1v ^Gg@mJ:;InبBH콢<FFMBlZM45&Zzlṫ=6OcS"N1.7dV%E`m׫p+Z~l a%.AVkp\Z3Vi>=jjc&J?J-U!RSU޳`>R_oV< jp>U" '5U-tAHIɥ;g8#BH֐B "h)\8pMn #} QN/cH5}8>#MU@C2\aˤ&V$M4Ճ +Ʊd`C{ĕB $WE`OOU YY-Sk*y, t>o \]+zlzfrPe׺1N.xIp'c2#Y.\ǖUpr}!u! Hn0YJ#Ͷ1n?0pݮ1Pk|A5N"篾 =[U sR٢u@h%N\̒Z95ݍU9xl;;4K-H99+մA{ûyLhʶMx|~FoW͵]Az0؜lQ !FxbS(ƀ30=QU9g !G;[̠̖[ٜ]Tɩ̭j([JSwf9K"&;s+l]@SZ" `(IJb6$4VjGѽ.&TZ&| qL]p-|T݉zՃGUgO{pܼI{%dT%ɡsn%H4U݇?8R<#+LKB bc\en٧:U\SIxy]|i[di6ZǓw4Uٓb)ch砃ʶ3U*]lW)xd(߯HĮQMR2%6Vs.\/Įz;^,zP:P6^B)[*_v?ӥ;k啻y]4N?ONI5#؇,o_yq $ Vfői041)Lރ^gxr_GJzpP'h5ܭtYƈlyͿ1+"?owg)2i늾SޫVU9nJAAmizNZ̪Nڛ(ۨr T-P]C.s.s^2+)vg/spy 56]h{-jz8uCf9*Fbz${5'a@e]l>6jfD2pKV2+í,2Z0f <$Y}l~ *ȓAomV` ӞO}JU2+ EwnOIKHI=4=!|dJ[Bdk2R*c2dx*<=J Vy&u'a!_* 8*3{V߈?YlVgo~0ɻ· `V꼘l"@VVJ2`_iDҺmvI{}yd>U崽X)[^K?l>&Vdc,dB.䲩oɑߴ4 yS{Cݲ&wòmwX3Y޾ŦZrMuRTHpX;,e:,_Òy=Kk<)h'K{,xt{n'K{| +V Yx!M,z:坨1vqg3S("ޅQL?#9y@bN Ruy5a2`FrWׄc NUżTbP]]99Z)S0rhLYd;][ͩm^<(jIަXo9.U 1i!7ZH=wucuy5}B"|D-*}fF ˑ';[5&n)BAl5A]ˇ1rQ_D1Df*'*63-wК7(#6voJE9YޭRfn VMV>Ui|S;;ZS\ZaQvLX=@?J]p5zF| M6>e^r781ޟ~+s$e$ٕKX] zEd ^I-yPQB b!{CzPCk",}1*ٰ Z^A )\~;{>>=xHDYG#2HbB; (٪=;:8+N *ۡkdPC6 >O,W,dp};8S<?@]uѠ[c"v$^55Tr+m+yɕ6ɕİ>oQe&Z_t(x'?/#OBq URЦ)h2L䦠:*Æ'.MQ<Zαg w+:+!Mv<ñAbbOV8q'U)ڜ6 PV9٦(>л"&bY և MdP)uk%۩O S%{ߐG{Ȼ5*'E7%)aԵwSj7COeT4iߗU%ٲ/҆I6m4L"7W9Q9SxqLjt fm#W61ߠ`]!"=1il` AȬD훕q VJ8pA~;A Au->4>(WH80Z(ĩ^akyuF阯wgoš HM*oұW0`RsmB!2˨G["\MAz)Q}RATtf-3v&p2̲!ْx=|^B>)bcn: x4޶S/򕛰6"/W5dU*ы<1 zR¨'EG= {2qk:RHnK&ڕ'MrhQ(|(6=1SL/j%M tLP#;"170O™)їA8N5,18~sl뻀`jcͧ+/܌ Fv6 >0ctxv2dH>󼘩MQXP|$ꀹ7i?@MMmB~D+^QTJ &ASWGh ( ƨ:`;-PĴEa!qV8[ژ4&HRGmjDT9'[ }]>N+eM7y{s@Pf=Ht0sg%$v%̂Dj#F6'/ V8:I6gWѻ/MnzMwck}mmx[-Մf&[>O!jp8lҵI]o|wΨ.CAR\;>iǥ%p ƨuia(q!-TN!Š 8 ܫs : i9~"!뇄_mnrj+eNA4Q.3|F`q)$|Yg53;(!" d$Mvx66'#љPlYvOA"x™myO#ޅNϓB}l;6;8X Zâ^T0({} M`,D+nF>(Ll }89w;jp{G]jWHMyTn rG=QUV܇!Ź* }V.\8l-‚ _2>]^X9GS5# l @aVPI L,v7-3DG a\d?Q(ʞ5Mظb<8{4Ⳝ%ȩ|}H?NU|̋~Hǂ`kiq2gU8qhEMXЛRno* hPDpv WB;P*4JfUN@3']]!d r[hmfݪq9*`3a7mUunۣC~O fhx5~ߛD6]ctX{7J^_HAK@jFZeo`eٴ&-]$; G'!0,}fA0v@BZ[.Y" }Cvkcs}{T+tM 4`G8R QPbU pjUR=Y;JRT/P+(tߴ/݇bc>`xRLq W]fsuVD6nisj677moټFz_*L[xB].KC :xJ+uT*sЯЦlk ,qy'[RS2.0ƒ8(xsf.Ca*FmA2nTuuTdc0LP`igXA$ tnڪ,5&^ULV& 8aQ+Mh ’s |eO撹`(_bsn_8^x¸#.P@7P{PzAnS/IL wp!T "jq& aK*27(8s^RJfx'!t2K H oV. Cp44Ԍk5kkAK "ADm1&K.H94Sqb.:HdO 5[]j0`)/" 4i!^-FVH@k??4tZޣw7ݼ~@:_q,fzYC5ܬo~>6b g{LOכ EOڡzvo{|[.C6v]+h>z<\?us@SQ=:;d^|<X3 sקn5&-Qa*{P=;7mAoy ;iĔt3sl?vbI & )};8GQH>Y|:9^L盙Q+U?|8KN-3߇r̻4qٝk'uM[usӏOC1%JE(n|H^!)nT_ u ~Ž逪T.^nc?}19{w#g1'^FgD5uJ >u'ޘ(#$DAZِ`,a/W k?If~ٸ~S&.]ONPef$ M`~ qUTQFU$"3]˙{o+7Gy~seO> ͂6"FL8tpG(՟Z![zl9O#8ЗɃGg^"C  \h6d@p w|fƲ6KyJߠ78XǷ:zyA5!Yuo(zTU9pLe фW '<[{n:՞ެcp\Ls@`oVX 8%A+oCN mw}L]Ƴ}80 \`/a5oZ P_L5"I (1'NL8zZ&8{)P7?~̈rt `{ԹưA׃ODS5P8qF0Oۆ=f1R.oR'u;_ߏL,3JZg nO&#fbmtzja>w]gNa1w<+(c@Ԅu8"bKl|{wCUKT[8) r:BɁPM {xBr9?‡y| ^Fs|׆ 58dFrL6M"=j0ÌdNև|)Q@/17Ga!%K+,y\cߔ7Y2r=F/%WYr7PEeHz SC5Dl47=J2st&IX*]lq)X;i5l7l7BŸ{XcJ#'Y ?7fVǴzH~|50508E´zm`WƔ8 ƪ.nl&AaxS{ 5}{3-Gb35L8eR5i~gRL1Fi5 &m.\w&R^b0$0T!#͐[bhI`IŴZpB1)?Kϖ_^EB/*hflU*XUγ ^V!*DY?U*d Y,]YOnMQ{h!vS16ŋdT+A])Nzm0w-uTp,|ZF-*G;o5Y{KK NNKaT?ԆQW_^2]}_/žJ-k;o{I3\!Ho|JfP1E tְZ3o2N70Bѵ-Z).d&z IVJ.#)97W 6zA[6XJ9+B8K YO 1O\kMє9Fỵ QE<ױRƥ2Y¥e4åq!4ҶDaFKUL3\z[e~x"BxҤ<ШLA2Wqv^V՟7M/b`菮r{E쩟Fxտ /2ijȣgȳRҭXR 辎*=dXέICyҐ~AN8 Ww'w8A}@ςï +{)rGJ f*=pWr|k iji X߮g9|* (P&: x}i!T1iULuxQ KR( HXEiX094̡a&hG&AN4*Qg#b*ʥpq9rrmmp36{ɧM$-60 |\G.AO 葯760}xI{uC(T$ =TB` fFX(҄lCʠzemHvNg\ _M+t6jL ;7꺋j +HgV9[9 N.#V^=XēJ" A2t3$12d=#M6G MM M#U6EG >.e&<'2-sĐtcStt1d|))É|*` \%M'4bG[׾/V-_rW>;'ItR s}FO'fIN,I(ǸB(P!bʲ^[ 2^@i5ʤCP_[% dVNY{D:S)(EY1EAW6PҬQJX~Nờ$j:~}DriJ>CvMkBdڪy4#s³H. zOǦ;#R=\|Uf㻳Z.dzgr|a>_~ugn½~fޟ7yũ5QdBͫ0WWFhDE_ziH4$EBXJ;.K[;[zu- V[;ѭ->'eջ;Rĩ{dA!jA- !abf9]dķd{Ϸ{zYKBXsN^C RpIմܺߖ`UpF>*8:[T ^ZqV'Srkۂ[+Umsrkz"j*Y\UUS9Ϊ઎*T"8[\e^ RUqVWulVrIբ5-ePZiOTɋNj8Ff;pQR=b{mP:+{b0y/ky&Ef p{g>?{W~ƻK 5CmvǦ`ViשFcRfQd_R˹Wj_ڢΪ+fxNJЛzPPDnM٢nM[4*6+6ڦIm&6o2m٭mHwksR[ iiiii5w!mjCm|5y*n4*쿒$S(NHF ?}c۞̼)"{|2Yqpb<3rq5U]YPfI ]kS^ǷC⌢Gi"aqr*\?L}^&UFTEH;)Ɨ#5oͮp/KdTb~'}A'")Pgk9'!6v ֝c˱4iZ諔}EbC*?l7]~s)ʱ;=bX,tt˓e2F‚% +q]ft/R\YV,{ *hlț~o<1  B!a1V <+t0S(X(O!+WKzvωEWjTIܱhQLs%*Ctt3{#mo=nM Ah ێ0f:^ #X5Z 8 %âܯJpJ ۱$Vjx8D+R(X Op_">'ɉC&&K!f*X;Me'if_wnFʒF`'5\Om(OJ|:ֻͦT3@?# `B[-|v%b Y!! 9+wfJ<( JÉ4m\z@;ƒXZ8Yg֏SbWpU4h~dZC߲gPcxS85>~iK=4p55T著QGZWx._o]ZzMG팆SYB;[}ysCj9:涽!bc b7S%-b8@"%Wk DZKiNےi|+QtH^\ Mr(g}1t`+ݳE)́XmbYDU`D =V@/I3::ھ[RU;rTn/8BB봂I}k릧En+3~fln{c0@jFe4خ FBib(C$fc`k/`Α\B*&GaknJMpC*i4-zQN~h[ζOCS]3qN<9 6[u0VkL O)LOY(]0]6L6 G0Xa{uӔ+T4m#/ |WϔuVX&do7$t]Q\YEhV1' (cvJ% 3PHIcfZs+YҥP%46HО ܹ 4/84};0=^V60c{""39$&am00 "=Q{'I.1.]e)Mke+s 4Y_{PENMo,hXdNVŒa 3i Xd IgP uK͓@ctKIԤjX* 7:*]O(1E 2][zrqօ#PWy,Ӹa҅nZ>k @`!& 2M Ē&h1֪>~(2r榕F2ЙjmB \uNw{Й:_VP@ҁRr q/C!CǢ`iT׾"8uq?:`'F 4Lkkk.|A6`;BUD'2#>]I4+<@t0?Je3qs/1Br:te9:ny48TuEkiXr KQGצM0~vx)4x!xDe:*zhQ><)/iHO eQT dag31M F+S(gͯ} E|i{LW,`BҸoM7$Wm` j.ɥVP;D=gaoY_7dڇO`Ng`|9ovXpJ׃̀D71c@6f3 WEU~4oτUH暆 Yd薃0P8J)RwK)<达ȦBWOsApH!]IG!"h<+C EhP?tɓg+@  irGnrHwxA`uڿ#b`^+rn3riΔ1U&1D?iq &7–i2Նh2A ԑx\UIt ~OuG}\Gs_A8^dR͂2CYß/m-R̟_ Qhݳ $dtjZ,25Mz ߼[CM)droL1x{^dz1ց=VǒE#vdsk2Cفm`XN<-vi1WTNܱH`ht|3f,C-y`1U9^T`Iwݢ;9qFo8+;aÀC;[*q<^ʡ*GwXНp\0nCخ'5GwOi>^&̛%E =^$TB &"Qvbȍ TAg |*Pm]Q.W, xNOE' _׏C[c3*\NI}ggr6OggzO3M$V Г3+ Tq`&}(HkY*LI[T!Z4dm\&v-Ns55h^KcҋAltx^ G#}nh`oA9"e. VrE}8vpxJW\' 2BPr$`I`<{?~=p&_N7gM a? #W dUCz Kc[G.w #&{z+!{dy{-#Vx "c<zc%Z`>{0|3`~ԀFKNQ`q&fxj r{(ӊenxQkۅyW3J]~F7ƬFSQ݌̗ CXIΖ ڕV%Ԇ)1ٙW]R<4ٹ`rgP#Gj}T[,U{5|(c ë^\ah׏Mp$q,\LjU %ٓ]l/d V`5ɡ D׿v詼GOE&[1Ͼ<ʻW`L Q`FLCuˢGyJ:O*I+yp"K'傡^OLܟS8\aGMV# =7k=`y6/uvpJU;Q\+0u҄o+e!&4NV@5KՐAC@²z#v k8zPgSjp}}o`vZ: n;ot5u7$Z?y16om~>`֌Aok/Ř2AEh _..^3jC6`:-= \ a8~F%woh<*^x 9nm%ve;Пȃ,l>H=}™rC `JP)<*zMcFe̷{\ƹU#3X6aXVsA QgU =\zd!15ryT{˧D:]蓢9OGye(9e[ef1kzp{-ra~jϪobkRD;ߺ@|0^]is1L֞)c˽+F'U΄Kv( XW:1K7yL Hk52wt@@<FČDp/i\?Iʇ dgΠxV/^`hqP`ǾLx }jGIgd,$p`6S  ()%dA-=Uj'v SF̱'Dnfʞ`lax·{4F@§|-t9bᆺ.cv+}y[} F@.]F7Q*%sD]`I- YyN+BnKxY:$;l P[_tpr^l)7I ~Ӏ?:}8kO %_/}^]b[۪\V\nS]ܗm{/ކVyՈ'(5%"SU2y 1e~-kCux%QV;0bQ}+bf`IC_hC?VI}4j(v\r=i}QYoW%&Ů<7u![糬}Yvu'z.3ӄ7I;OC߰8RZRGtexwɝ~v{{\/ϼzu:,n'("@mB BQ2`z9ȳĦl4]`63I BPmt+>GY1x2 #\u)R_j&fS3~!RPG)T ? |cyc$9ʭbGHI|DJQ)n!Yj^_A{t)t3)b]gK M@`^|9iմWVxQ%,?!Zn*".uE;" UNSig1[5ݩ {<ռO8(r@>˩`?wj7p}St)~eSz;6qeLbn@gԢeFCѲOA'''-̢~o0/X W^xqv'Be4iQR~Ϳ'o}a_K̾ٗC x oߠdz7Rj$dE gӁQ5'ӞiO&edݙy4@n񪄣z sX HN L]x]ˋ6~FYm\6 |f܀,*uPbe--'i \B[\S N)=Mz"H ޥ7ۥȵ)Ggf]|2-s-:va . '.׉x;"D 0]%Ո+6v"h6ҕ*tC`t wB\C^хd?.8Z -CݩvͳTj%ZJgY_^CJ32A葐,,Ӕ/盪z>5uXOUܧ#~=go/e;ó.a@frsVe%g2#9ճkp!@vV9mr8a^:[1.@\O{j,BB&I"]O A7|({tEi2w3~%<*f3uB8c!RDGz܎Ieu]~P=Axg sI\Sk}8zKE~5DHHRLN%6j] +Lotfg6y^.\~ea}67`Zx.v˥nDZ সțR- P&ֲXy:;A>LR pryk'#{>3g`ם|-2: `H#gIJ @d6( ŋj.v$w\mpbyc,MˡlY,r\PO!U^LVc:fi4D]<m"MtǓɖG|rxeH=M_#I¼hW 6wc8洞Eb7hOXo[ömU"vAA*2dhE,mSxl[7aA夣Dó"Όy)t1IhtFEBǨl=ňTj>@DHq!7Ϧ0S~s)F(w+zBʎw8L} ƚ64olRNߑqγ9 p#l/׵\/ŝX=7g.':ڹ!rL@.JɩRRG,-?ůby4Wf[jM!] 5>0&Fiyg$`oX])uN!:.zyf7+1\o5Y^ƌD dzo,y`J:ufk &u/$e~[0]3QOj?5YXW*W5(cGMD3,<ۮ].() p?w#I50/ V?/Ppﰑc)NlUxRpQsAT]Hvc%( ю Y~A(CY;TVn:J7ee^2}4O%Kjפ΃LG! cڮi=ԈM8WfBZLGo!yyJGD=sp7PM*T>p_%Ǣ7w0I9lGܧIpT:ldzsvcqx<xto<(V=YЬWX=(a;1xwkJ9 ;"eTf e\um'_&}0h襤LZ8R(U+q7䬕,r_@[W3ݺ\>)qH .E)Lc?*ZbK^/שtD)!W@r9~@!$8Tg?9"fv"{KD~oS&Cȿgs 6&&Ŵ)00Ј)/I3o:(f% 2X`Teg?pRKC_F/YMLf#8sOQ'ś!9G-M)S..toJ,ˈ,@xoePnov v$7hBݪbOߥ vր|%ٲݪ=v/_PIN~̒GGnhI$獩 3j,}C=!0: ÊmbWxyH8z3N`7oErfc y%f;SGh;.a;TPt*W|SKdQ:^x;3Koo<Ŧ #"5MPuFTE$77HU<|dcȽ)4f(W_جpՠܛt1 3>1o֔RrLt@΁N`KTe!Ϥ`ҡ=zj)XRE(ͫWdvƃBTlTTKaO 5t VMytmn 5IDEp|̹E)GU{^ꅞW. Jٻr>kM X]R.Q K:;k fcxQR̨l!so_`T{%Lζ>]*'MxYQLcؾd3Ro3a ß )4G3oi0fC[wr(7VZzT1q%-5I2#Z`eRFq&WŽ\0>I#nVq: Sl"9x?{I>`Z$v`uP |a$:I\8`cO! ➥5 ̠tm#00*iH7Ҍ<9s*KM:wFaȮuv| <@G--Kk;(f;}05aLX-@{ԴAxOr<1ߗh[F<޳iC#_syRr6_yd)i1cIA@T#vkyggމDlu=ewbɽe%w&Jvn{h%1byUN8d! ~ƥ"\=Xܱح .K^/yzVawCD`A5p"8|uv.Eu&NQL#ޮ?4+ Tl%`S t\ V$̀싰ykzimϴ$M,+) 8 sci_X`yzyEk4f0ioE7hwhS w) }F\G9< SܜrJ +n'.@E &Th57O$O [$.rB#Z:R6x>=yYrrRGxf^ظh5^"5v:#OGBC> ]6v,qd>Օ k++cmT(=V~gy[)dkr8{qKDbzR:80[׌`1.go#7Q؟V돟WJxM0($Ḇ 2t%D֦Ku ޒ:ipgt7QgĶ⽨b]=(eAdY?cQ7"K *22k4 XW!\'Z֪gԈC70hSSpNڧJ֌8jRn]/[;-5VeW`K_OO"}7Zg,5ޔ& ǥp{qR;a!k DXD?P^xP1;5\+s~Vaf@Q+O]kc ͲɷAFAz1mE>+]yɣ>" vte* ajG_(5(+T^\Ӥmiě@vqehZZ1,%])cM s@p/.u bPN-sB q.Ng]ha*MgӢQiҮVxA/Z^峆UJ+ϜX4'Nf$.E(?"P7!שW-W[]߰RBTy\,֐6Щ㴜gvSLrn.>zs"`^߲{whyv$byP"^a17I2FV)Lnd0;qH~6gF5c32հ&6fXh!k=vQ%32 ?]]|,^W98Ҏo="YhˆpE΄;,v;Z϶cL0i妀toypa6tѤ=Pڼhn,l9\J)%MPZPoإ*dZZ' E2.putB`Pri)r`:(h0 VX ᵭDhZIvI0L {ꆝ&1#-s^e!7@zvb71<OsxxKa {CM𹅛%}YRC*g27En0始F aFQa @u>xifo*͈0/P9q]T8M-yUx^gCECQRT"J ĄBTO0*%!`k00&[B+ن3lF} 3n؎ط* p٢]I;R۩+ 3]`b,g&SD%\` J1G03pw+aW]BT4Thđ|EbcһT,taN?W4b \dOk?iSʨ=CTڻVDF3"JkIMp"{ެ(Оz]+ Ov[* 8Fo[dRЁQ͘eJ-[i1}pR&ԗZ$=8.iOoͱo[̼ 5@o`) w8}~L$ 1cO! f`щcѲ F\c+`87fY&h+툀9 KJ+/ %Zi)PI|BPb*'HޤwsRU!5pAv[oF Ojl!"J^:Y%Q /} }w馾HC:+4C,C>o߆nVf6h5aSQ)ۤn¿0 v5J@䘢^zZHrƦnM m YĄVj3#qE=V;[L|{ XY۞Q[hu{$r[к5٘&^IqGx(;uhOy8 3n3(1&/A<,G)zu`'B I|tZ@p̏F|7kFu.k~ ,$]/Cs>bu$)D+B.A,o*i^}0YqygmӽC|6ׁQUO,ilEO7/[-> ܧl&^dȊ+BQd$ދs?#Ac!ns~Rˍ `!;A'yg~bE6ؙ_=z)Y{@ XbL{74x,bׯZv{biN6~Rsy`-Zϻ f| ?Ci'|6t:a@M%I7h Y d:>8?%sxCG FmT kAl`}mmC9\X5 v:C:0Q(U [MxQjB1e ܜLiQ~hZ03vCq#:8ɠ\`]0Aʐ!1s~n.Wae 9DsZlLŗiIBqHĥja@io[Sqzupc`\ }(#CJ74B!M4ijPLMMI!iH 4$ PJ}x3'6T1&񆯘#kbvKqہmbii$J5ĤdHdJc ű Xͷh>Wn &B 1vdXRzt^. &Uа31G`8V7F`vX_JK2%ð0E@۔+IIa4Dd(4 /{9( :%ٞs1a$ mȩxt|PQNZp6[K25hVQ- iҐ|,zG;)6/u$ڋg1n[0u8:He4K WOFi?Ud1~UR@U\4qX"'Bbi?TALTvLTF&!X^)/)c:R= 04N RIfc$6\⟬V[ONjiCSl;BCS9ⳙ~3|^UOkG~2qlмC0K{eL[JbjILT%f[CLָE}5 SƠjսDDaY^w*c\7}]w].Ak僪8=#GBZ#IY?z;tGٮ|xUXi"ȖbcY$Rň^5ZT+QV[IkO1ZlWkT; (պN RP!Jj T|B1( Vǐ0U7T_}z5ScTQ8 M0v$ɉۉt|1SEbxh^LTѻ^ٹ'{k3"v|oHH6uH){Du;*WVI_\ Tґ w Ǔ.]d ٸT%x^x7/;ZT <4z㉗j' ʸi</yzrk+g`xD[IIoYқje?J;^No{'-@<5H Z*3^R'yk.JR Yj҂4etU~ |jqPiK+Mup-_8}S/k}_7])88BE2Bj޸9q" Μ]S_GA%`ɀ🞵W eŻs{O={uYovޛa\>|_|kxP?84vO#Z{ayw`p|xŽ~MyxQlց 7}T/?k%"Зϗ@#nBy ]] 'չKܽbp`ow4y ?܅)v`N>ɜUgJAmIUvhxrp9pnu. T+k~~n yP-.˯Z%IqoPhx8H*Tem\ My[ 1Wt3+]e|~{{{5H  (dݲ6r? ZWJl _)6KU(TGwкޚrKF?]ǠF)Þp y{M9Ρ>I@FzMX0$0N:8z,'Ezִ30O! aJpNJx{~xR:Ia:Kb&n>; 0ܧA?Ce\39oٸN~{om ޜhOa3K?@/nzE)g=C7o`KƞxP4)N&*Y.R xuXy/OvAϹpj`Cx( ؞Q遢P~ q4(QOTqTz!93"Yg= q,޳T > qL"|g!>E2,0B> 3,> {wx\zftxX{wP,c~l+M'64so_uۚҝf&- 3 )8^ g }3\dz(X)b9̌UlKӻEjv;b2>ѹQu+0:+iiMԦKS۩ٙJcc1oFtDk7hj5/Pt N\,=e>WPQʇ5hK盯3joËR`BMBup?5 ZBH@iGAPkQlFP`Ne*UcRdE튧ZzV#Mzƫz^*A_QJjd(y VlNFg w}?9d2?zdL,0hO$#U?&곟f~gU ".۹}[Sq(r)_]섦g5&p%({S G/}%Icu=ա;մ^rg .^dzy ήmgkx{hX74a {ϬN\ Z{^;k=Kn=o.]:7Zͥiͥb1{J+Qq Ov؞޻έ`4)DaeB #`/@#"ynA''u<_9k3F`+@BlcpouG> JE eP`l+@\N2v) r _($r OT{?;s ^!Y6-o| m70@ہmC~kke^毽U\{7{(O+$S&PxNP$v|xhIJHB(O2F̒q䘌ĶVs?\UH0wQh;,, ,3,,<\ZFwi> 8_&` HK U*8\@fk<\({-ASQ?PLlӠӕSr=os+r=S~?⵿浿u.* xg~ٳ@\x6E^W|1G<o}7iK媦˫ PD A.>]*xh]?\.f 57EV36+l~~yVxUѪךgנ>45.Z-AE W.NVC6NxzqUU^>\ifMΝԛճJv @ZsҚpjUY@йU.xߪ@0yZ/kЁ/ Yk(/y#'[PQQ#f޺nմ'HbY\֚GE6IiUmiauN\Į恹_jZ'Jvqq Eb ڗO5x~t$Q!&HE%&AHZRgFYcQ ެK&Tk8J F}8 mبO:"u.'D'Nz.KM: _Z!h(; (Ôv~50" }Fiy}F4G?QYnUM1W!vP=]N'qT%܍k+A#n0m4yHŵ\17kΡ|YȒڞ^7lOV[_:jb˂Pؤj*t_/-=)?]4q4*`!n[˙`(P?*2ڇ;+>!0U5jEo=Y݄Em<5&׆1.I 96tBAS|wڅ``k0=/FeGWbOM>5mvԃTAމ>q !$G?U=䵕\Vg` >8Mf5d\aMD!!X;19ƤɃŲ.hL@[`ހ 6d"؎\N`̎R6ڨ4mW]=Jނ޽ ]Բ\*@ei)8`N OUFЙ^6B'h]5hr8跥Y*gj8poGlDVnvaŁP n$a/Ƅ5ܤ9ۦ4eVw޾"poU (*y4^.>PCRKxLz\iR@5&") 4[D24DTT#9 WNcS@U ."CLƃL}ulCE)%,xΆ#*cR3ldSvmӘhz:P_biNhZvVqR;iCY([*Q }a^v|JQ-ݸِT2(n FrVUzrquq 5q/n"M%Y"IE+KAY"PGhҼ毠異.'<{p}ч!$wݸ8;qfޑ64`k.^qPP>pVc #l& !yZv6#ۂ.`5D 蕍M9ru҆\՛e$<7eA"SrX%sq[Vե^-%T9;pv4`rRm_VW KlqEd;B)GwdQRfYv#: rB E;愲 +Z1#flQ2ƺ+c1yµWr0f_IF$G6Ľڻ ߯]e١Ev8#+#݉Q U=vYz qP0 ]pca:}ǘ8]blO;KgPdъ N" 6or֘Hz # .$,l"}D#$H [0 Pf%sںZrU6]@\R &;`?f{g {ۑL=?EBo5>E͝#T- h(Z09s :f$ȓ+E G "0yXqze{V&&$@"aL|f9#>,J`0*Q1e{ц&n3cfߔY[4 xwVI1G jl(63(d#mnĝ!^!O*# uz)9ij bhP`$aw<;ygyNW GbARə.b@9oRo/\YUؿSp-5ʝjaO~>HGtJS[xi_bʞQ0TnJyus۝nt_i nl;[3vgZđgU=w/;NG[m?yፚdzK\[ ykVrVɸ΂Ɉ99g_q\lX310G oG!jpFTXѴm1֖j*f){X$wxd;zwjJ}1$A&HV3{^7MK_?B/EovP _ODʙ\vaķUl&ͭ>f?ё-nּi1} .{ADt8.ܐ G#Öv DU7Vv}yb}A~!BGW|C 7 /Dwu;6!BRUk:½6Xlx{>GMOG hgl9\] 7Pox+W,W=|G}T_Ͻ>^AZ>=l9ex>DDxLls,Puˍ 3ZؖG*Cƶ>z61 BZb]7\"wk<]M[CMITm;XXхBXK*hKC!tUŖ(mSlv=&iI?`a͉e&D*Q -蝠|k< fk-o9ILI?vt-ڿ h%€%$XM<eP#W(ђ\(}ӴFVoMgXryDk7lcԥUYfmms5w.CӬѴ͹-;{u;ihRs<*X4X\ɏl-?}U/3C"/ ? l `A9#P>Kk{8JMŷ\)~';d~UY܌Y}VA]%Mׂ#ͨX[n'@bḿV+.Vٔ$%_:Ѿ7wsld U$͈@=ț IsU@ C62 ㌈N(HAlNZ)gl[a?.yݹHxu A?ӹz8=m=#sfG?qA|i&mL1ǜ MOؼn}&t;0t9:fC~@/yK_Puφ52|v(SyCb{VOS˂_Jo ^OǚLc6g o 0 z x G_t<1q'?0r؜"6,c/猗/3^>g|x/76Z8z1irݥlN$g8]P"|lrl"IlKqTaKuhO}ğa-]"9*Hfڶƫ>/T׺QFo-֣y>@-6vMnGՠ hm/ђD*. )1uq{nװ_4M*oP!ORFS'թ1G,TqЌf\J)'a$ӽ󰎖;4yc=s jYi $Z +2StGs c .5HTn/Ѳ*B}c'|gn38$L@{ TA% U*%T_aFݯ=L'd 6S5 \{gNu),P Խ;b:alNl>kZ[M: rMQE60H=@ > 8fIr>euL4v,ë! 24[PgEvџ]gE'9BY#,A*8یZVoRj.6Zv UoNGn ~mw_읨I*-- {ڄF>ՕEw_I{ '*[ |b&I|m۫#ZT]V<c܇Ɯ3iG'mw+܋/]Ŷ;(H7ab\*Xe&e_gp[W' '>%S-O'9:>GgI&_g_2;=Ÿ>Oo~P#Zxzq};YtzE={{_oofoo^ޞEz{A{{jJ_+o/S{{! ]y{GS#yG);RwɎ>?˵JھjUƏx%<uSΤGni*0=gyv}]gG: o>=!WAv!!:^mwr|˙ǖ FxcAEBS#4stD&)yJ~)yJgMl6-k50&|Yߤi6l cWF 8Ǝm9<{!7zwΤ< Q߼9=PoέZTi;;0BH/ÁԴ=!1VKJ ٪G}j~ ;{|csPui;c̩۶T@mc5C)w.ܩ[ orB5HSS,hrtà0-c:4J"`mtLir!5k;`77^کb|Cj ~*k]\E@k3t܄M08L=Lt5W%Ԃ8Ĕ͗c/ì-p (CfaMEe0g;fx[7ҙ8V2]eW lZYR%18eФI B)B*!!hQle8W;> ^uUqY±Ʋ`8O;0 "&h%,wjx82Wèa;\\5rΛ6^y EXY>rX_,>"%k€"DZ^B!h4ɋ/K¡ʣK[&DU<π@#<1sMqrf>%*N-ڃY]++H^].آ_P-u1 xEA 5^Rz‹DKnўUx#uU7-&vWs:ޜ?؉(K(U|mA/TI!."4 ;7j~zyV*bua\.g5Md,)v{ c-8-hM _SZd+FXUjǘ̵\E[V $ , iDnj@ʹ?'1r%rm|DBHHtH?W /[v8ڐֲ[_n7'/#a:~&@iC-f,|h9Wx>>ׇ؇w ;Eq;T` |(o[-Ts‚1;Kkn 3{v\%Z6g4wa߄&3i鑇5l[rM^zlooh_YA:{LY(ןqcB↱hgYBo/gw'{2˛ mogJ3,\;[Z9ކsq|m SU;92RI\| 0<ɲC2\HF)N b:6t~"MɄF4J{oG34G|𱴢wEڽb9k4:'4yR+͹S0wO`I]:@/"{>[hjto9 .hk9A&Aѭ-йJOIն:vnv'2]|TTڄ˩ۜ ,gIxkTj?<\" 3 pog5u%or#kžftD79gsx 8ub+ k ^H\(߽KG;D` ƕ۷r# є]nꡅ3ܚV2ziG[ LnS ӟR;hr mX&6hLZݒ:rN?y61ҽm-p~; Y_˿1OѺ1ho:>ڱއ);J.|)v:kiw ݄~ݯ9A0#R^mdZDl..3?9qV R/Vy@V$`h#mM9V39h^uU\iVߵ^F7ZZB(Ɵ;-Үdƙ= YPv=ImcKUνa&TrhK6ShέeOfosxlz&g-GD7abzUO$UC^C{7=JQEfcD6L#ϑ["zşz! ?,bWqfm/@j쓝^}Rh oYԬQ3L*X&D ⨗Mc7ќЁ,<R78Xx{s0FT :& )A-A/71Ryr9ħ-k<1`IFB㚳$0rݶ8@m1so+ځ[^o11G0  c⨵sѬ!u!w8fmnsIqc006n*]}$fU-K5$>E/|W}7_$. wdKk ^lyY'۠A=Dp.f(@qyQm޷>Vut:;A* aC@/X@slS9,Q`%N2QS>"6PI lŵ~2n[J(@t-3K_VN <e~^M xi4B3ҜAҿsj&)(. ܓͷ!Xxw#G^qy+TRNh4yGpbSv{~1n+Ǚ6Jxl~KͯTv{EHe3C]T%NzT,Ay*$taًAgO bϏ^*ta,;\+؜t(*QNˆK@)1%.~)hނhiV?~ْLՁ+\p} +\p]:}Z؆R- st.I>-TCI[byIg:th)K28tA,/gaJ YJ T,]9l7* ƏI)~Dzހ>.y3Ԯ.Q٫0TW0^M[]Y?ܓzGO6I#.‹xGt;FJ_3p^[vWB0b0O~(X|>=h/zcP:ڇ1@In#$b6;']v^ 487-߂!7ovTu"[Vi"20+WnL-=o1 3 %7rgR/lij(v>-Ct@w9Xͤ( GK0]^k-[y'NiCmEe 5hbCLL0qP5`hjt0GcL SRSGe"*1.  Eu~Úi$=r-[F~bm[6!ōP$g'mfI[Δ΍[5[pH"&]jWMnATi37U>^drʿ惘)kdU>}j7Y,fM; Y Nf 8edCkc)q ,9#hӉš ͈> A1 {Dk+Oh֫mPC'pӴKMc8u\`kpgy){z f𻶙[[Ya)dmn-t5ـ޶a`sD >J'3~ a\ƹ%_#N@=4Я@4(3I-hk(5Y_"TmV.hz:[52sNJ߳g `rff[1ptAh([cfnPvp(FrW Ψٙap ZF/čt@:~;sbbk͋N&! 2zn3\5&cBD8W ^_W =>r2 jv;Q7ԵTHntqL΀y"JȗY?e5rֽRn͛[@tQnz;gqa@d9-;.Q䟝/*.YńEMQzB0I3 OK\>B!j@\1SГ^@;|2 7jEؘB n(v7^iYk &Tl%Ǽb@TnDDe9q.[?h5HP\d/­H_7nV-Jf?؄ %?QD[# #(diZ"4IW KҰ8wQ! X \(7ݚI4( ȴO\ $V*O&.q.b'N$.?(6RWӝ}qâO-DGDGl2b!r123#/h0 'x|\ﶄվ+p?ZSB LO($_B"Z,9~+[!G A \dq Wr3'8 9ji3yE+zQT1Z~'BuVDhjgO|#fNrd%[ (S d(-N#.ʋ CP#-?tds+|% Ck~a:/VRrr$+99lAy'SZd%\,S -@x`tUtŸB!Z eOM=̠$':C/"Og^8[!vrtu>chd Z0H+k С>yǘ=YƝ- eR~uv  _HIM'B8:;aq,{,f:ѽCWa"K+_gѸ)[P1 ZWw@K$kM W`/Mf7Ѿ%g$*d4g_)/‘B'7AHR4^'tfgwW?ţ6>]v4b$}P(I0^g$G^b.[#{^T{w}߶LsvMkqZ@&"`x#Ȓ߁aM*ڇ'k[! NIQy w昞dt@bnG@ AgfI1*mR$}Ӊ9d=DqQ] JA|2+1#'#{#l;5n('bӼ핻#'y[gq, ~6a,eȌ ^_V͋K5_A KmqwD-7G$\[(kD68XUF.p[7L+Q|l9xQްM00tm޴~fΖM:pslPO8gH%WrfY4U֤V@0yRMwh%8H3+yӼ7Ot)dZ4CK*=;:9B`rdʷYbp5eP~XĜL,.DE44dbEEI tJq5ʚ25 rXr:Hgfqdno|7պ3|l̔ s8:|u9pr yLy(3TF;fb[[3rY}7 ;0217Vf^SP͑G삕FY vCy_['qUBoiE!(I=)h^,AwJ&K\]FdDm`~GgBk [G\x JS툫E6lnt@[ [FY7TB_wv__ *kU$u;Y絿nu{40/@!h?7^i>CK[5IVj'vnY ~l\W ;=<"yqqE>C@|>I}2tb# QcX3^ {}.%|i~pۮ_4f{k5[W/b3gH`~l_c;o7c*Qj`8Ta0 ;BSl`0sN^[[y)Ect h9 5P >;#̞1{; `4ΏT{:ϢQ"}>@ChEL%{O/ze1$xO,wQb7 Ŝq{ s 4<3(鑊ƶp? ={Shx镠1#ۀɌ[ ~{<uwv59ȴmδh3xԡLzz\Ygdz(ch%N?+@W6 ݾ]AЉ~`gQיM۸!l[<̢}im $?R\"L{cMIyhDg48+~%^qyPlA),M)H0L~lc֫zu!zUvt%1Wyd IP(zZ2}ճ .hjdѝ酓-?/v _r;L;1O" P ʦǕD;D8S3cX1>#Lj=)( aJ, ћ5rǶ^Ww&zY.N>Xox>c f<}V)7ݧծ'T}~wqg%OUҩ[$9F}N M>gk}ֱT>8;K$pF%#sn;0 |FRpSgW2)|1g}3:`{`Ll6Cchُcdz)g*..S3Q_>..S3Y>..3q0]:..m$=H[H|>X&;x,nDhb7ʎY&w&\#^/h=}[-׬+⵳vVjx}?YNOV׫ɼv[ QWŤؖ:%[~pR&0F nR% |k[IEP.B*HAA_8R0n\ S˳A'_%Pkg}i"EjdMfGUgTd]"G%JU"J"1"-.<$պ oY.?fXYje&-Q_>ˤFֺK`t3,lˈb^jE Ds:Aq,vKAB{W&3?Ƹߕ;O*S} 5H)~ӫտc]Cj0Y :E~R{D=1!]skLnĬ fX2`}@NUIIwݱ.$.I1H:8Iy&PW<ݾN/'YbB) n}:Z Oճ+FޚX[#ԃn³iU@RKU S6~Nj˳Z媱ռ:o_{~OvōTX#f,Dd'7NFjzD~&AؖHW&Q3u3wb6c0cbĭq#;lW/1yj6I C&@WP_ŴENgtG qm{n&9ߔ8L1a|"SvZQE˕(t%vYQ;Ϝ>SSrϼ3"|zFgX4kagʒR$Nu3)ˀ沄K˅CM8`:2iMƝT\ LmR.$6IJ<,8#[b=(YY7Ry,sZfQQDT@R魒t%qoK<4O/1Y#_;xdh5 y: H |1K5A2MkX)̲6ǼYK5+52ٶ^31.Z"4%N'_6V'Y![lP:W\=׵p$ nhzbj-*nK]_}afOogeb߿ *,wgwDa+L;MՕjK߇21ͰeeEI9XXCړV3YhM7YN^s^ϻ!pGG4@Y1 )1%[̾ ?t2st m=2ngLuZ+cYCQ(gJYa,T%IinآHIJ\Ί&e ʏey ½Xq[k5^>lG\AmuOH5^pebT]N3dhWhx<iGL陳e#qsf:]cgքYOT;6HDrL>S4U3\oϒND3тG4`nκ]%$%GٞclI֧}5(iGy^Ƒi:^f }/ClRZӻOBtɸҙnwNS$}=uhw2*5zߋ;R *U4+i7p۬EpEL5ڈ^."b>)T1G߉|Du+ԟu?>Z@2E Z`E"2%39߉um-ef$ۅԙ}DF1g&]QDfǾ)Z ͊%v >%%~φ$/H jy*g&Y3+sYn}5u$Oi8OzmZgIMLL<3βUY e/J9nP2]ݕ1Cfc:#="~} U/ǫW_v^;,RADb?Cqro)?Nihc &mjx 4;ю+uіVkI.G%@+Fϭpw@pٗhl bA(3G`P;,*y0G/s$_)-DMdLc͝K}w MZ[fEaxIoѝaO{g3 \46E}M f=CL.T;LjZ(kyMP  Bߍɠ*Qe a_n!藹9R B' dNi'Jw`<{n-Lڗ|M,_BiCDe<-j8s=Tޝ!*?b[}me5p3xN4`)2;bԸyc݌b!M8%Sٺ[vRv~G~ME aj\>nT[F36>E¶I 뎕Zy>:mUjm\/S23n"_7^.h0x)Azo}/w#2m0Ɇ0 0'<*hK%ctqq {X3~"hTƚT\5P5{:/Y 8gYhX8.W-/qpݱXOx֎KS]jsN?^1jIZW))u\X.,.XV TYjcy=ŇHFe=8\nˡ0Ry \N1L;k~2o(T%K¼][L)1}m=.飐|L Ǻ5~0L Xg~t)'0VP򸅳=}X3=c"O>/N2H9!$YKB#!C)5hꦇCK;U<|h$)$e5Q!%).0ZSc`bXdZ35eL2g=c[C6A6m@Sbr`K<(6, F`@nu,14ރnI.3@A{`]s(ě@61@h[^ D<9"8؆"9&2X@#0#:Jv[s.;b4HtBa. -shƕT)QzǕ3-:%y첣Fez:ͨ9@l?n*z$Z>v_nkQ >J;[,q2z`T=^Ff߶0;xhm߾=͸0bYJ{ _:!k<㰜i`DZ%Z:_ժTJ2, r^r!'ڗOVr7Z؟ӫsIn PU{ PS :sW?<-Ԩ}<5@sC *ݺ^\*@z[E4j &0!jW@ (bFk_Uͨ 1{&́Cb8p}-|y&ޡV>ݾۥbI]T[<3.Lg  i7IJE6^ :B̙s?۠!qaRY5k-I9ҡD[|M ykeUC3ve3D`lDў?׍ q܄M5G#P+MxyL/T`:FLS6LN@6>"o[Z1gBDl4qG)C TPiFzّ=Lҍ;-**U4lf#{,NN{z?.lnor6yچ^$ rT*mi> 因JڕVViڥa M 8<>;ÂX,KEj> ^J a:ghf;۷CֶhW*E% ;߸4G 7d H5I1)% S7x,j"Lc?j9RYt86t4B} #J ;f6 ! HTRظpHx#j06կm%KIuHDW$l4t-.Xx(;w$rްHlsꯧN=A3W*BSDy/j gp 'ƵdI]'0Pyx&XJ HݏCCK#8N*m&n2RF#(y$~qp@'PږQXbd\-'q`ԪX7;)N78E,.:_*0߃q638hes385V$RECQI NL@[ eZ@JҨ(Os=;/8#$ HvuQB1EmC iwugn 6-VsnH^^P|^S+^dyj ZAh)8(oja Tu>~7m_\2WW>Qܵ6`xy#0m雓-t맿p ҁb_¿G}dvf.A>6}/gz>_?8B,P-0+:]Nuyn?:nxB{rA]?*9^rxڝ5I#[0;{U77hf?4@0B!p}gj&ZENǜMcУ8.0[M$3gE{0&a= p">asZDA/m/ɉ5c1mdFwݮk 9wFEq i&>ZK~^k椇#`ȶm$ًxA/s *C뜾u$z)Q]I q^5 Ǐ*:h* &{FV:۰\%mO4'u<mƑ ~i_1޿'Ӡ8@l1mf=S20^S67gٝU~զ՟(cN2)f?2Tn[h0b{(StѢy|EZ{cP":3[0/PhXtɡ-Z>g:菼/Dy#ryύ Jj06"`\^{t w[kj}nK {TTB=Uyqk< x !;#6H{/QQ@P1͸^HpA0Xʍ@mĊ&l pOݒ2ݸ46QKG)i`0IXSJ*UHLem5Qd94޸{L[C'[|d/]ǃ'Hf!Lzb_B:v̛.O[T9SaӒ9=z߾冫acf tqQ7N tb ɤ u Yn6[b'1t e<3d,%a-&/6"'mf1~ t> 'w0X‘J 2T>G1.hP{K ?G>==k?׊GQNo4rau`Gd!YF BN޲z޶ЦzܙcwoTqqY.X mvtOxJ8cYĊ]Z`[vאWu^!~bp¾ER }S[rٚzt0[S;wrS)rʫvVlnmo+}{>^6k{;qמ{O&JQ VD=?R|حWOBA].s؞[H5=yv6ϖ|kd?iګrf ښ٭T|EǸlbgǍzAS{lK<ń7RY`d|Olmޝ-Df5,rBs-O[8.[b@M>I`H ̺gACuK vmd,%")@о"{G!?5#˳Ga5&qsڐ/ Pjh&Wm`f]kZ3O)g_C?dohdLgiXdeoh0SCiwcԣ | %e$ZIUk[G HJjK_\ہet7HӵƏ;lQtwϹ XƻA/^8vN]Xw{p VK~o:菧Y -ϳڋ/:|uҬyO0c EIt :%ѲJE ͬMθ<[Vϖ˦hGݏQ`&bg֧<3yr I 1daseY)gm# t9άͽt0ks;34W)BᛸNyV6͗Y3p6wYpPocxh|GYsYV$bɔ*PNKҘܟ%jSVmAmT";Lك61n8lS%>qts]=uIȘ,Lfj,m fkx&*ulVV2(%y]wϹ7kǁ "+v{G HEb M,̀5^ɮȬef*نvᔘg r/ @10,[ⳢR򔅂/7tO%Z:O0w"`/4ΫC(Kcyd+'Hϑ%W>ңg7Y} T/ |Qy`8yw$1 ji7RS\bBX` weF;[E5"v`qbRl=˩kyWꏢsk'ďƵ֗#꣉8:d*ɱ`~2ylգ[x-#P>n%+.ƆOq'lh6_c<\բ"TVO :f䀧<7R8{7ٶGxuQgL6ĩ'r:K.YVo(p'xt(}eDžYJX^J)R7aでb iŶoZ7 pL~LsQB/as8$4AЂ\]5~& ;(Àm߅| )W@LAy#tN0xE!/x1-`qCޱtxgo)ͭ>b c,7\J J7nmnQOfr *僥0erq92+&?_̈́+˕ o>ŗԹ;]q*S:z4SOM ҠiC8V}~8<,nZAs=+yϓ-.! wFb&!3O*>`$y3 Whب_'<$Oł94cO Ӹ2(Lo|z$eųƏ,+nx~KSM>Hv@= Yf(ػ ZCΣN{`.(b8!~1Ba4I3}=I;K ~aGyH-MEHv*[NE.E{[Q6{(.J#f^L=hr̅Y_,VU'y_hi+r{'c%+{߲f=o??.] {%BXb 5tC~U*UN8m7e[XG&+y J7vO,X0sF-G78=FhDW,CDM8)o2Sд@;~*]fczB|e _GJ'VV6dE6%˦̧q\nvjHP8w}Z-屨|AW⁽".B讀=7/E>˱܌`:]1Щx,*q"5Xn~R3R(+H-DJ.>Кl?m*1I?OΑץk۞F]w:k"SvJ{Gl`I0%~ F<k<ko2 s,mKS&(8 ɻ(9I,g]z&g/h/ndCY>59֓* i0n+XC${Y)JDBg٠ҶLJ\~tD)MADIŔM,S;iymy}%@%e*6׮E7}d|d#涃7]Te|;dz F_h4˞)tpO ]), @~Y4[0] k25%R*6|Bk)"D7"W#r" j<_5Ջ4ll .$fqѠQ|4?yfD'qx5\^,xWE:)Q`{m:} Xrm8!J6cᆟӜx%& ~= ioD{I}cÒx3~,\N`LmREsDv$[Sa<;U_9o#N?3qn6zYi ALY r-l5,W)4]Q8걌1Xev_\Wұ.5WҊn6A# q.# fEJfGpUFDjJHδfBDQ>Q0bQMRӰo^u8}YNOFkwU<+gD7U8 BP>u{;,j3DMo>z?^$_e {*NG&:]9Udz:\-!ŚdB_C+a;:lU}M~'jNj>QJ)Ǯj)z9.c^t94W$Y9_ddl&WkhȈx!d5O$O3mK`#Q炕5$+ECzyVOC~&%3a؛ 0Άx!Ơx;ngMh$3)Oۮa28^50,;#U#ieq,kPgIGpJI*Rĵ=NxX jrϊ9NIwA@_19)9.RI+(%5G5) #YL8MEd;S;Kqn9ԷLe6rsmA3 #Ys¨XNڕ.cI1 TH]aJlqh_Gz}5)ĕП%k;.[%VW: :8<xJQ+ fΙiu4| w)#X搗خ \JgU*̸v3n٦Le^LFO] i GPܳ' nG)6j{+tPZ} "׎18U~3AASyK-#ƾmNn&~vgB+mM/n7*W/.k+ի <䜏:Ϡ3T'XKr\OhN$T7Iyž->E~'kڍ*o1'XCs$7G+9z:v 2ʼn\9q̗}B'g+Į;Q'y噆'|]|Q{TIs/ytJ+'crbY*S间LNlLΟ]*_nLcE GF @ȑ>43kgCRFڝ5SSoٺ7>O6](kAK|^鶈 D߻ A ?a(W}ҦQ]i [Fߡ|MKq&b,zG "`+t(: MgpL1_Oˀw+N|\]H][_wb$@pǎs 5. k.Ǥ5mx>i8^>׆pH8=z{ vb➍5 :P|#Σ7"EBhz%V yYhJaN%CҬCUlfRPկE= B]Qi1DU>0)SB@D-3,튠)4†}ѽE-.]&ĖL%Yoٌ'!ɰZRO.V@ fӺCyIo<♟l%pX$tл)]Gg@%gٽX.nfvE܇_ꍃ7UYUڙΊ =.Ѓ<ƲCchُ3|04y.w#ہEnNjwra!Pw&狵A )D6W s3 3J(b;#e:sSY!e9)묎d`26,*๞ t-O*x7_SXGW8\՛ exR6!2׿PQp(7Lo+6,~k{Cфtɶ{X\{##hfݤ_7Iѿw="tFB"K# lqśExEqlYSODzw0y d&ح0"RhB}^RԌB?)mK`h6mLd,6mLdD6mLd\2̔QӓE79#JI(e*%]tS$n4zv$w= %]xOsd|9]7grbl}?gI~SӀ?x95@bko\5Y3\[w"C๦@=uH6%#cFgIoH=,'IIa*]x%n<!`I L{fgY!fYD3S̡ ^/A<@# δ3K$t0K$%^у\g6IGŅҵ\H(]DU;x2v6ڣ4]@{H4E4M{<^ڕyT4+ 餪3Iܲ\%fiD_cvfmoo[%9`ErdwoK9wls3S7eIbI+4g!Yd4S'HB ,8oS)6AyJ1i%$N!&5Jti7kgoi$<ęŇbO+,gO(v6xl[" ǽ)rnQr@ sxWt8|Hzk/xk[ 4'F|?S0Gy97LP)ņ:zD;_! OkbIT4|,{jYOG݉ _ ֺUJVΙ 3,1mo c쵗_G]^TBxQ _-<[ȎnBe "V75Dž8leV3XZi f%gX} l`XDl_]AuUÑ&}65c'pi(ẁg)UAU#ZDq8vl`amSu0!!e{pbF-(eB|ɩxɐe zM|d 1BRMS/aԣiM^c#`tE#f@ޞqgv 25Ff&7qڎ9Ç7аh1k92h el9 hT06Zz?L|+CzPu0YBĪBG&V|8DHQ`B/~ya,A[vHe}eafM <WJ{d悒VGԼȾ>,KeAv@8iT$f6,I,\(d.D'Ѣ]ɶO2ݦ*~*GMuJU.tcЮݰȓϬ]d4Pk^TR)URHTl,eje +3Uݔʬ ʬA)BP%*DB,!B&1qÛ>hOlm)_!DyV'' =[Mx vJo^.RyT.O. W:zJN|(oA*m.~sP/yd~"z{7{Ã=c ýy0Pw&3 W*<(Sw] X7xA6Wټ惛Lra0j];Pq e9VޏRʢUwe}}@13UJt4F*yLCSQ%8:U W%i^K[%[[zOD둲OIB)4Oͦj3(ub6g$v ^/gD=pko*" Ӵqô׵R崾.a>ϩO7zCSUyN AHHj6IDS+iB[|%B<ɜfW&e:-ǰ jK;;N6z瞞x#{ˠjY`Liwv/ 1fL 9[5x*G-|^ wH#*’, q$!a~d`GZf(L-ewTܮ99s{J7 |mMLQ@zזZqFVmk.zedWϪ|t*P{ߴVw;& &&a_˛ 9755{1;S6>4.MdVպhdM4LoV34 5YuCД;F=O+5]}J#"en]vS)2 sxX t`ñm:c}-ݵ;t>ta%԰}m[*Pc8 5`0" m+ K^Fj*VT"KSL=24jpt&oa"s/*4ð0gOfauJ2bɱ =ZgAp[>SMx:mVˉt :}MS:mNTs; > a'u6cM$I_4K)0Bۧ1( pj<;ZlNpj0 emO@13SpPj6`&׽xz7AViV+F0XA+ttCVPƨ@aC* 뤻n5ܐ`HO;e鴩3A ʡ4?OZ  '.Qyax1&'@ۆOm|;,F+& ah鄤ϕͯ;ZVgMқfkl`Li(/ɕT=a]EցI=wIJf8`NLHtE xqv0(#mkw@|E\Ox:ȹH=9ntnslI\nqN/wֱ܋-Ͷ#edOc1 iwGQXhʝeb/ eEc郠ewdA?=:!|Hr^34D!||Di!JNKcN*=IQCr Aj+~)o=hr60Crd(QϕC7Y_ ;VBO`-aOe/(`2G"lHҰxAY@3LWq0☨/!5>ss/2N>ꖧ<4,~rv|V+80gʻB+Wk6spLP}Ae,^ewu Gmg%`,^ᶀ={@Sh U\{ )(tm4E %*ΰt XOH9y €)W#TfcJJ4v{>*,{7ƬZG>yq Y8:(S 7WSL6mħ8.}RˇCkT^haC{b{8E|p7Ic(I'тvN#yZ Ԋ OIQe$>dCOt,΀XcwjzsQ"Hb֖W?lO,[CauD)$5A]6m&M̒nIYb^JC Jg_}Yfʒ¾lW`\\3TX/M>g]a lEa6Eic]J† 4G߽HG==WhF#9R`XfmLF~•pAB꧌B9` X:W UȭEΕ~0l.5֓y΍ɭGZNXvl'0^u^7]yְ,xTɡ"H]0xClOSE^&ɹu9a7ގs!NH [&0~B/X[xMc7rIM]묘^`=kU̳@V~c ,]lqXD(uT:$܉);&b@'ap{꩗[ŵ^A0=& +^vLv36rmIIk.F".dh[ 4Gvo^jV[yr/ A <tz yx+ݮA;=qhʈcކ蕃?1.%/,1vL] "l*wHPUR.aEt4 Hnoٴc[{,]`uJ>i o][6\fo6`Q޾;I+?UnòAcmI21G?c"%ipAV_&@' ôFfTCo tJE0!Y|t-&vFR=u11 {1ESG+F$U~:eQi8ʽRiQoռMR6ؼи:hjW&%9

b{9ۢthfWCslLj&+f%d6_ 7:m:$nYuQ'2ypA9,g@x$3cˁvg8npJ#RڦښaTMmSQ|G?I/ߊ̕MֆjffscP[7v'L/cMޙX %MpX eY (B6'C;YUKEsݥH [GKjh.Bm: XtoͿ!2I>_XaG=a[];n98nf7spx7sp8 9VEw-gjmWRvy+E!uh:d9|ۚo/Wt0_坕wg]Yr q|&e䫛\@ȕ`߷V,:KB<`ZV#{om-Q /xDϘpKW)# +ǂn豒SnᑻkǰDʁ9V(tjǚsSkskt~bzgR 垪FODsY4*\g5~͛ۉrz\, blҪ_452hTعK PЕ3mvAaSs9)'s{0 zc5hC ٥]dJt ƶugpO!3374&o ~9DƇSt"Tc%fdM̮Q :kyЂvv4:H@zۛva5v%V0M.p ^\ f vv$"]7khUyM:Ѫhծ/y``Z'Jvqq Eb ڗO5x~t$Q!L[m%IYQxVXkTk}7kyR/h:QNB[ 6jSrf Ѯ ?' xvf?4!"CCs?xԎ8@j5>ƧbFDJ}N/)NLt>`']g/^'N(qKޏ'Z8٣Hs'w0N(ʘ1KJEG"[sJJ6̪}6?#Ry\\RAq&^ Iwnm q[df-rkؗ2gaRj'PUBE +a~)Ҩ*bnN2s9KZJ,f|o[ǟʌU24;$5x@R 1xţї̅CLKG5~"RƟ#8*Ƙ_z 7 mD)ɒ`bP> 弡QPxH$Cntjϟ IFϞ2CRU%`MJaϘ#ŧS'``@&E1>YFꅈ+MpaR?eڅe]ǮoɈ8VrXKԈ`tڅ~ IG@7L!n>O2 fI0?ʐ,23S3D D As4D"[OA4C~iH8|L8T'^yPѣ0AnnKֹ%V.HKXbu_1pY8XE 84E 0½ӈ`M4"T&95bi:j=iDFFi2ӈG&'D#Ų=}+ Ǒ)9G,szP  q8w/E¡*]IA6!'G]+l5Yx_|w,/풳 +XThRan\*K%;iqzEw%K8/r I :] lDa~PĨbQ`@ՙa&czLf=ҧcKyLTp)J.1QEå<&*iثBD<DŽ/*u3*qNƭ5QBȮPx X]NoDVg]"eG ,gw10`Ҩ?!4Z5lnƛpWSN+TƻÄSBxw驆wWgQ~8(">!.B;蹼;LJYPIDbfb ?^>0]M :[ /,}hI֓t˓W'gk6W?:YoOZԹdQ=vc8'jq *}BF  P2Tfv$߽B&1]Nw(a}x|@nSwF)9`t_ Xy;`e[Dw'߱/OuﵻAh_d:pCK;g=gkc%s[gڈA ,ou[/aMC8vxۉS<oNXr'ڊDf5N p $Od66nR`>--*us3k?oNX8~ (/uv뢍o-lٗ;r7Eo*~y9)Ǿ\]֚1er?utr‚8v\TV}1n!6fQJV''nݍВ7`#JI:":gWOX"2C]z`KkCs`ZOyM_l lo\Jmz +R)zƐˤj#1Lɻ.L=N6$<8 ś"bw XeԆO!Qh</)*0ʫI BTŅ},*rqY F0_h)`ӶKy 0ن1p`1T9 z;G//Gi}9m#*3:<1w[m^A}UPm& < I>6)鮔%%~e_4llZO:OjvRLƥ5]K=,#( щR{v{I HC\ N.8 IrO%@lIёPu!\>۞kLHX풐\ Hxһ.OBvH-uA)*ZoY=fFP:wր'<4jONLKkOV{}8=[y t~Bt?8|M{pmn"%^Wd;rcZt~p?E׭=Jwϸ^B^MQyh46?n?2t9o,o4Emzۆ܎8_ҤbsqyƲC/cE(Qjal lD Q#2IxlJm:YDN) rZgWZоښ."fG QT,Hn*[^V#ZGDz`ͨ1#ZtW;QkkQV6zWpWHDy;RCA A!!O 4 EZU>2^7jԙ^{˰CeRÛh|06Ė'돢6x\PWm.ܔdw=>RH~&yQKvR]qc9qOmZh8`=m5HP|O[k.8FwY,I[Pږ9WP'}l_9#q ^mu eJh zZLDƤ!t2qE o:P[ׁ =@ h֦iqb'_['=e%o4&h((ɼwXm+I{ ˞JEz݌M6T'FK8jBE@nۣ˛_ VC rnj>Q;:a~ln~6i<a^S:Cɪ1[,&ԢIGhxmLDo[GB\4АA[=6!fgB_ZM-jքqwתfxBy/w_Gmg]d˓3/ aaD엓aˋWhˍ" 3Z<7k9k&[Gd>ڂD0nfj4h1I荅+(JZ􃀕^-l,-8)lf$x9EFOH¶7 7z6eUO䒫=.|| cZv ~Σgb6VH }#3pNGO(!-a 6uUd=v05x%#׿e;яW'їUQTu۽@G͜x.avg  ŗxc.Eeɢ鞚_h{r-ufEAh -7i[dzoeKм*Sa?*`1}~#A?t2o9-`X7 n4$c> \)sl ߑ;0)`&8X_6rbXj Q2&9-iI* ȶ#:Ԝ@Nj\:mN a'aJhKi HKCU[zӃ=R?RhDo`[$ˇPpA{a- A=4RhĤ/ISUxHh~WƣS ><%b4JP5A&̺s,1wO:J-uWqQq ~v23ظtTDs?ibfgH5Ѩ%唽5G)^p\HeLeGSJUב||։)v 6h9ܭ[Z)9+p=+IwU|DpL8i6)$8iF[ň޳9N~8|xRb{رA_%~qΒ蘘Y# %Α: Ia ΄I Y$i IXDq7c^@$AAE?HAt'5Р{BG!y1^ 4=GopsHlAf:Q68ѳsV;|~CCʥ%.> epA>ɍ> L;l.O*vԉ"2t+ Go G4;%{;;gP8&Yy}>SNs3H!ۃ8C< 'L&F;$Z> ]?Ծr:+5vuwyFAԷ{1 zǣe%%z_ŋ|cxִLJJ= EsQrJ/2g$ttȀgeXu|-UcŰS@X%rS(ѻ\yGr'(9ωjAQݍWkYRʫ~d@~[E+^6pVB+aNFPE3.! z$>"p7ޑO_&;0:Ъk;@V7vkaQh Zaţ:)y^yz5 x_1l%iʷac}> b_Psͱch61Z&(&!+jUDqp`8)1ڕ Ι+1.OeڨR (mtVF B$&lMOG(=(p(P g"XEMPZLf1") J aiE tHCy5QgK!BwQEa)0oүJ}4E?f#{Uf~Tލ-,U~5YSlgSɩaX5Ҩ8[Q "_V]n\J 4U6H=U#Šlj|V5@q؞sB#-G*B{Sjؿ}`7.APd'to8翜Ego_zpzNߢE/~CQvz//o_Eo7'/ޟE/O7E|wz|v=N^{uC BG'o~^Pћѫ'*nW/}>>==8yur4 m<9-|{DNO߿:8޽G\9;sG'gN^!P? /^a$qP59t!upz;><Z0QqkuoSvWo0ޟFpۨ D]h=xviu;2bTQ:7ɾ1z tĢppxp\DM"!9:9o[דeĥ38!-z};}x) *fct2:8 ON`BIOh!_l'bɮmwf`GdFh_^o|hMdF%{H xKhH(J Ѹ Lߌ5RaGO5{<t sYpU2u1{j4AVG *M L|з X%~{ek~+?ϖ>AFM5<#'ܾײQ+f̪  FG,petdV!A!3f,Ӄ%qbm]NvPZqާt@}&aDr6*ahCk8_܏ċ_,Mi8q oMv{} y&/Y9Rb, +NhBVqu%boW°̚A) yƪ͹o $la ZWƦZ3n?ڌ {Aj9 DPOe`(pCCWdS]W֪Ώ.kUmqT&s Lcrnj,\\a}9k9y*bYIXWUq <|;fʜotI4^rAULTҕAePkd:܋ƐB@ȎWdP=ˬwxCUZ" _i᯴WZ+}gJȴ`.Kaehlq}&H!#H4" qU6udWOa;WZuuz~j-/ D;FnBzThFM|Jf_.;n9Klٷw̧{wE?}];Q$0`e|lm6|O0?yOG^{4 cXa j-/8؁iv8C>~"M+}#r\8k-!GlvP f m"gen6[#%bpRE⦳k=5ԄU`ky}FoWS ^D{d%PCv6EDAnq8po\S#3RbC;aE,˄ a2FȔ!"]*KIލvdyοXG74Rq7BV6'o>C@'x -K`6WyJƩEjK~q zFd|@'9Ct8$)BBhr5-Dp+l||.|XAt{ӱ.ӱ. )[k;wh_j to;Y ,@\M+@]IJTHNxF (Dc vs56H%yIN% Ig ei~@}'qL=3dCVk%>l@3#5j~U9PP?~p*ovz5xQWm_^"2ᣠ{{bEϣ7pcT{E@*)@|y"%>xFp.޿>INIu;Cx`IhBGd 'HwHjoZ=8e!<>hG Q;T_aa<| ߲z/ ^_ZéWi[O_G/h*DYP:PL+&iH_Kr|W !w8 I3Nj1L`sXD;E4Ά a_g$AVFMIbwӦ% j/G63d}˼옗Ç;4ca8BSa6Kcv*;"z}z{\]kvxR;žJxGI--Ңx|g8 )Yq9,o0-D˞*?*DiLB tpN3K8,3|ndF„I˴qۅ2Dh5g;,_!OE5^ 1 gaLσ ž-XC|>\^*}APƳh1/.6@]9֫1rNu/obP;o@tA6)Ao ށ %?:ŀD o2O/ݴudEvCZi?E` Ql/r_ P&DwBjsHW  #җa!5ŲP΁l pYI^!Sy"}2ª ('jBn`c d'/bi .;#st}C*;&^8^wtacIs Co6X/`~8)V;$WWh"G݁-jb%ksy|cFv8,Q$Gĝ`̭F@~l^ƲGPi1 %?@WqC3 ʤ]α-=ŏ25;"8ފ8ޡ" $Ɣl_e:Y} ާ HN23jbP|xkpI~ 8s_NrJd c ag_&ADUn᳽N ~.+%%aH55 z X2/#9;`jQ 2մ1!Mhn9~Z͟;e3i.%Jen8S[=ELw\p *< PsLC|h_^f]4!̽,XF>TιņЇA}BgX[Nz>wԍح Ytfv'u߶0Ů6uc6eݨ=0&NDo#aK_v ̄LSF©f ^"aN~rVUK8{WR"r%HJƣ{үH`v2>haG̒^ "*!  k0(>3qA2QQl_|AѰ iK!\yd6GBJҶ+jKHM޲,==T8%Vc05@EN+J5Bnzvs*:Umw\ &X3.q"$j ^gN\ 7Vf1(yQN\S$QHvA0i|0Ē,0sNdgᅿx3wAZ`Ev~ 1b]1|c;6pt;l Hۧ< l׳ qRNtq RŪ*K A8\/ߟ| J{PzJKAfjkqqyXfT5e",PPlmrdQG>),OeW& \sMqkX[=͍dR.]vEr0 >{bψחeW -n '}.B\Dֹ,^~Ԓj'()M67ReUĹ rR$%*w0-Rjע7}}e{?^>7B5'MⒿ?ˢ8nF-ja AaVqg,ظSFJxɼ߅l@PnPj iNJ Qr#2'Fp֋iq, 0qYxkj;vBwj4roTeyi"W + bZJ G!Z =ֶ4EO۽M2eHtk4a`7qXC@oA2?(Pke/E^┌x9Jk#ZMѿWeh}wGg2eݿ/"rk:mo]i=ܴBpMKjf![@AV'=rP1S&QAVMb-7@w&&ME.P&1wr?yd/a6{D&j"A՗U.+QʐqRsP rEBt P!=q!{w,׼Z,Y{)h +n[ ] (oSDtBG#SYN^_5]t"$RXzPQӢ +!ղ$D}:RO/^B%+xKh3uc4ݷoe$R!bU(R oWЄɭ6Ȟ3|]I0;hyKRݛ.oxfd-npCtT7EMa{61^^󟨸ps@/) MC+AS"#Qiخ ݁ rhAVAFh _)Cm04QCc^5P1vUW5ԄB욳ʹQ{V Yin3m}ܿ^I)Pޓs h']gzk4|llllllY~6MOZ=(^cW|@݁Jb7~i69'} H~i ~֨E=ɺO/Qy pr"r2QmO)ENj -L/{kc;O+hɳ钫'~_'rSt!x4IsK;/IX^K1,&{y>jgBu"i0'pwkJ(HPniZjf/!)jR-]$s&!bD'b49%} łe߶?f-ar+j[`GG/\2ъ3 @ijRDW!@WnjyN.KBV ktIqW/ ya&hF=TS܁\WB! d . E%j1/},I iP!Uw##/xL׊/Qc"F'],a)="5{ O#(C9.u/\!NΊ:+!HLH l5\/L4[YPy:pK[/RܩԏGm3b:C0ǝM?X1M.! .IװE;4&7yuvԾ*,5Dh4"tItk QoIzl(9?ENF}Þxw,azίǽKw!5f9! =2?s:{WO(EvA6({:]7, ~DxhH#9o&"_ Bi4 .Zk"3\G]l.:){IZHP=/ph:~r߹@hQa_6-Hܛ~dx of9*iS_/}>?\tFȨ:|f=٦/ۨ[fTr}mj#HqVA޼?GM8MD\^gw v3AZ.=6#R똧}OQ6>Dk\t|f^vzl5ZWawrw9ϱs>Mܴ~ހϛyy >oL"uګdg'N_}jQbn_WCE 3t UĴ2MȚɵ^ VSyƷtŴ縦b"4 X?E=bX-DԺOjHw ˂!o%eEȟcZSӚ5:ҏ,tsYpJ\kǛ3W?O#z2QzٖSao;i]sR],pd +Y3S H&KOshnxd&9 MARQJDaBLgX5dN 4Dsel 1a 8yo+g2+Aia ^VXX +cae,1wM]6Đ:g,$ 7L;w)]0KHYv>`-ÚwPIy}ۀS]VvIHDсL q%b0Ъ É0&$(ќs:ʺ c:k+KbQe,AsrΰYy1R#Dџ< t-k輘$~1YQwdexf'Mi:ٕLjΛit(ڄ*ZE[ ]9:}&눋hÿqD. Ȥ!ĭ.mjs`mGh~a8# ZU׎.gX#MlwIx >6XF>G\UWJz%a6+NͦTz6^'ƚϔr-[ }q9G LBqhWw$h /⋯k/&2y߽!Zk荼$QZ0`dc4h鐏pd<K>HtThY9s"ТyLR)_p8Q9MŇ'4ȥ>֎ IWÄ@Vk8r"|<}!`$)û* b-d4(tH[Ȓ* >Yz9~YOU"]~[{ x86itgG Ir;TqIxDzcPȀ^]QMUU~x4isaTWgtR]AM5{TKv brÅձ:A\,( 옚!@C4vӃY=~t0=ӣpT{X^7kn|Сd;dW%@DΗ4Y1<07قD|ZZ8qh%Q&2H͜L v2U nWrG쓢JᛲxRQ{ +:=zM\lYHm7$Zgx۸dyQ/F mj+S.ӅuhSiMYz+I>bJjvKc  KuaR5 6թW~`۬la$_ņCLX~"J"BÄU(?-+# GXr\,Z C\M`^]v Gv",EJrɏ,J=2Q;#e7Qo!3ywShow; ia)MІI+NkxpÔsyôyG~V/N8{F +Q4#r $²}8 MD#|PiP>Wf˂WijhR;;V@$ХXe(ȿSbՅ^q@/e늒X8 &Zo_bHK]%>V_(F5GNV1'(qčqB6Z*`)fEL)V"U!a50[XK> ۣ6S)0_F~ťSiNaO;[4?4ܺ2;|՛IqgR{TɩMLkuӂ6BǐuN l֢@F"LFu^),Yd=c;=Aӷ^/ ix F3yDߍ>͵S_ H3zb:ȷi'7f `JOpo`)҂ gN}u6X/͈Y,T:Pt (&q K,H kD#_y0ew>gVsrK֊>oi\ ;G ̱1) Қq+bXsP*+Xn_ZW6)krPw]=fq3c-\չmw8 fF=A'²mM_W-٘edz0\2;Q8?D~"$:#u }4҄Рr' sOwπ}<ꀤO, n&A%rQ֘tWV8B*:c k$>ۘo$;5Z]%%P;;KeA[X8t. eN.Ѽi,LE%BV lŋukA} gת ­鱄511?٧3IXU,37 IxR*s鶱5 M%L:5Br|td.l\t%ߥ<#ꢩ3<'/_@"4ώg'Q1 &T_Sjry꣏u,εBvXWy|[_~{Vّ3|cd_LR.ZjA,q86Ƀ]̇]zhj8r ˏ-f{fAhFVkO |vchhJlp|&[X|v<0y7,Y{tthg?c}_ %ǿ\ƧoISCOLdp(w*)hnIy@Raӌ%F(;eNcXXhK$%%qb.@ΐ ;RV .!]ٱDBmߒJكZP,ŷ2nh\'(Dیl6Bl<Ħ4VB~rE}ڽqoː1(Gjhb͵ݍ : He(A}~n㫴d;߇db iG4w`x::{ \ ,:đ#vݭYZ/ 0*"+Ztŕ.i|`2- ?:#4uZR [g߽{{z~xG|@8-GykKKCUЫW5[ #@vZj?O[觟"}/;-Iy6M9xu+߲U纠OG"rPCl\z f4>9|0H^>8?=Bf\̒uu[m-`h2 %P mk"M]g:Jt}[v Uv!? 9@; BQkCd¢uxw}F<:TY~-:mô =DWu|1su!/1=:`:\mvۺc ԛzk]tݐeDQA"e.#K0aBki/@4:ׄc DsF k`E#Z Q:Ilš dڮ]-Ա %DA6&H:=R9tC6X#Uw`&e`[2Re9O^=Wd Ah}wJm 2j*Qz5%m{Cxd\~[8r5XnPKpėh5kk4[R(iq)rfnHS'EkC6lcm_#t>F?`m&ˏBѯ{Byv'{'5i^tpLla<߿yv|Tcvjw_ H{kêofN[ &1d 'Ht>#83}('gFGL77uZ]&Du;62rM@i@P@ SkZ^8ZDu5'L|`E?e.dy4PB?אHRqM%_ # aRGʀ ib:&qMF!$2DUW|.u~˓JsR BĹisP7mBK)Y?ُϾĽYXB@lh!y}@/3B.0MfXL| 8M o#F (PE3)߰14!cЮKط=GԵ~>D$Z~տbv%Z^atDا#ėBY jt'CdH^=zke$i;;'-:oW2Zk'bSs"M\ 5ӧOM?qy,GQ>2|~lNٜl*{#prkXh%:g'd=ު' doqrtr=}훵p7^Y+: s1!NW8?@wӃvJgkp򶏦A ^EtB0w:#[D肸6樌2{GptC\!?+$@(5_>x0e qPp: 7Ҏ_N΢/=8=woQǨ_~;=藷OϢ7GdxxrpJ>YZՇ8=xs~r|9|ϫ#BVd 9ՋEo_FOA/N^MB/O@/ߞFѻNwWΎ#᫃GkhtdFgzebc\M@ըsG'LJЅ!"jt~uUD G@cttgԟZNhD čغqv~r8# qtv| n&WQ#mT".4_?;—N߿.#0=KQ:7ɾ1z tĢ.gH*EH$sћ_|[דeĥ38!-z};}x) *fct2:8 ON`BIO&^#O{1dh}yӁ{AVcyaC^/Afu~>{o-TJSb*]LTjI c4atXpu} 1|/fyx5ab(-{,6R,SESօh5mE[mW?zE_/rȳ kkC<dW3k3)N*&~чq{p7񯑡=frDSWw~DQmVv}~w,=a] i=`2Cޡʁq Y=,B^xup98)t/x_<&Uk~XB߭2Bm1 a_`B~ 9 QGSJRH5kZ]kw;\ܴ=e&Oy`=1<{V!:!Mc(kg3)~MP'1)D5 I}uЌ Fci7n.\^F%'l*!@As_[M@_{">G (j_nsUp%WI -_$}?xllȽEhI6;$*فz}Ar@Gzeqm muګJ;;pn n˹\K"0QcZ>,E(Tě?0KhU\L@#ЀلW=+!tESJѧ4cNۣ#y`EPK6ʪ?==*%*ۺ lԗSmOT;.5 j.zR"JToE)a"{_e/(UfԱV cF k+Zo߾h9xzo~FEF2 /c[.M6faZGku4MVwb%:~C*܂#DE7H2#)nu5-i rWO{{o|ڀY\vw6V/ntQ!75m?q6y7BPS%'-8kk}Ccu*uAH^z{p.ֶZ}|whtK,y.N˼=gW鶌~B1%=`rWIvv:ul#d__lghHAc-oSH:D@L!oB.X׹El+OR^wQ%S uJ,0y 4q@OjorLqWħgPGӓm:5vnȽ;T |?'`x1}T?=1mQ"7k=ܐ[vG7_Fo&)7_=ɕb!_rT٤;SQ}|*@=n}F<9UOUOiv1Bސ }^xfU:2U#F-^9ƙהpKDG2=z.Y>1mG {q._rߢeqà?ry2"8O#0~1Eh 6vƺ%ikl :9vgKZLSPEuDFxX|Pi:}J;_uԋ9T- 4&K].R~ ԅ_CKD% HKvFW)ɆHY6djB⢛%p ;uNF ND;2MPB1 Ѩy?ݵu ͢rnUKfv~_L Ҏ;҃;$F5稾@"v(,TE ~o?H% JԷ4Ʋ&rAkA%^IFK9!B9AV*[Xe la=dd`_4R{HW [X](#{HEg'pIDw}4q;K,^ct6BO^u.HC}=gkd+_9{1g/Ŝ9=yV=Kь'\>9wrOHH6-"162gdMX{ )8ʺH )npۅm8=btFޯA{PMK !W87[^Yg NOPb {G YP  ؅)!CS~n uq%F\IF"}β>W;:`%a9:Q/w#bWHGo\{ Q*3g U> c^shf@a@t lyAnbE+@=Eg$'翜#+gTs:'$ HKgc+࿑E$XB? gǬΣ Ҍ0Y+M'hZɦCO꤆&Ԡh Mhj@#JU@Vgq=^S*aɛ7/OQAJN&ٵ1:[1)6/ 6C[<1"u]zy> S-&0CbCtiTy=(Rfϊt*|f7ǤR,tX"j>xsϗVfU>a-w{4 "ѡ'p["B퓨= `Us;:\{v%kzC%hrX^Ŋk1l3](wJ 1j 4Z#қm<d-Au9M2ҭB>LqjsT{$AqD5|b mN2-<#ՌjcFvd*s=h#fNH# 0tP&44; 9TWD<0)28ӻ쎯p>\'^j0CxOw)gZGzH)/K r<9X-xeKky))Vt燐}]c<Մ|rǻ$e}&CDB~5u7hmG?b^C.â6u=tdF,"<[tH7ȹ!bӧH2|6EOpdX1_Po/ϛjv=չFa5 %At kjڼlh^615c)`ŲJA&81)߶G7k7tHչubx ~ZToLx-/ %T$DΥb)X,"b)X,"b)"?CoZhr>ƋWǧ/p#W[F(K߂J?K`?jqJ:z4zo kbűXq,VbűXq,VbVq!O[4i?`@dp㽓wL"1Λ׽Gut9j~w5|AS| M(֞,ӘC\|(#~y{vBpYLZ)‰D8*,[0c14z} 0h8 dɗ,_[ ğe;3dxϙ~]`hd񠇾/jq"Z20cf O&0%!V?XPL`KؐxekVUġ$KF`9<jaӫc9U25SJI< uZ+"Å4 ~jVn!6NuilE r  q мx/|8+Gv>P-{a>@Ua [G2b#7MBȧg{v7,ko:C8݉z51)d߮V" a A)K`܃ݓB{oF_w u/Խ5BJ--}-\Xci!MKJx%OkF0Wń@a.o/8K\bY/ʢe }REc&%0EںG yg*M;6b}FR>cD,lƩHZʏV+\L(p =5Z[ZxnY8CכK&+p]{Փ15ن3ٻ~ga΂֞JS 8z1J7-Z"YՉXCx`2&>ωHg$_]i*>P[5]J8t^Nk ^:ZD5} uOy3"Oe%NNǫZb_lHؿm6RwMMO?yՏǾW;!{֝|Nߞu7_u7>"${NF?֟O?77?>B] xH?_r&K<T.Wa%Wr&k\.wa'ȟwAj$_")׿H0s+?έ;p ;!Zzpmp`$ٚ/^+'%M/N2Bgӟ__Ǔ'ZiV[aD̅d^&"E>Eiu7Jݷmυ<I Rh7A_~2rkZ0PS]6<'fo6Kn@d. K`j\_]7ODuFS!Ol^Y{j/_$)5$p%m_!+ݶ?f-ݒh;T* .Aå+C$f/1)j1j5Pu ŧ}uegu2ҫ/zv2 e=Mi 3$NRT׉Ԡ nq k p|e'kH0bpcڽZK3*M UAĔcɥG$\C oaC˃!n۽ Qg؏>CLTa`DGQĒA3l6:hdBs;6i }2IRTdiE%bTk,HQu^2s%eMam,UC.V`%X!Rs>^!Ztp5` *Kh!!I]a( dḀ]$S-NF }Ӈ!HB"h8u| "#KW^|:'GYI0NPDiRay~ k%DLk7ȵ @UП@)S:!]R}m^m5VG¼ yp^#eTw;3P!돮kH _}ySӅk*CpwJ][!'j++?jq66A-ϝaB݀)Mv`:l!Z!W]aX25@ȵ/⬇ZġHlh,E4jtC&F2ABPym_^N6ĕuA!BMiF#`mV:ja% y8>!%!惽M. BE-@B`]=^yk/Ȱ2,-JV0>!i?A\aOFDH nѬ$'k\OgOp#Wtwd]#޲%ۏ%=ۧ<KLk p)WHryF,XKXcLw)EVza2gE&[c2u|&),LkE*F ^bjAk̇Gzy5,DE`[Y*B$Jъ EaJia)5+&(KJ:GX5˰fb/,K,_/ҢRY02q9hʂH_SږX|M9ɢr:+xǗ}PD+?-&\Eh0s Y._mK/$'O[{g_}xixm4NۛIolgO|h[Z |(Câ=$pjE׎S{xL5qs ,#1.ZWlܿ גTwZ.w]0@^ O/y]TFb+A!ꉩ sm&BŇ+y i:=7F(#L^|"c^1}Ak3A#+(1wPPRTyߕMCƚ[CD4;k{S_])`kaB2]앹+3ןƓFeZY*XC19 5xK@2kؗ/9u[d=yެ÷ޞ\Yt&Wtz,@Zc6C6#vۿ ٺB bSdB+҇t ` ipΘl)0U԰+IJinFjB#ޕ1fG5+ЅCҳeÈѲ@>йEA-90py3B/߰M!kl@\`;I€Q!6L :H>JbD#ҔBLX TrH |"Yt͓1{ϿG}p4K  +ZZs V#TV^>9?o]n$Q-αsGkk"y6͏'^3`ڎy:pp=-[T-(q'qv~r8#zVm8c)j ߇<}+Nwx+!,oOq>? ɤ'ip:$"[M)=ܯ'g< i׃Xj8g}v1:yg'yóPSzhR_HH^ :hqwElk{GS wY&1,>Š)6L/46$ jw,h*@2&Qv ghz7X{򧨶scmw^t^os *Ȏ̀k/8wZ_ ys [~lM ٺlG&WrS9ym@<_Q#!ŵQ܂ןr)!tE RSՙ (bՒ$*˫Ц?qujF1#鿘:/ʺrR8ֽphGJ"S rV0^&EHVub3=ϥ- YU&kͯR}v/C0kY܌,3.htBZADjlhEoePlcCQv^ԌvocBA}c5e` ?5#˧N"^_!qi8`1 P' t1`m{j„'{ΟV42탾y;ݍsI@ⶋW;;67B?)ƣ:j` |y^.ݳw^;!{*VgY^?JOv`t]~QMW'9E5KY!SB!~}j̙e}#Зa.t\IૠnO-O6/X+Q`a.S!jybLB~|\ !&3_L,Y" GmkO٫ˢAcR~ђM/ [CTs[hgI*?j-8HF?q=Xy5ѓ{4z Oe лA_\-קY4{h9 _N;mf;-'Xw)`h/ޝb?8!,/Ov#+VE'hiWQ$!@0Ws׊嗭 0(X+8U>y2-M 0)i[TM;~`,Y`=~m`w\P8Xk00tuO^^ `'H9F u+ }S~94aeh$¨@c '-H/!D}1}e Ql#`biEJ-UcrB۵]jB_xr+9#Ş(݁ʲh{@E"|?we tGOai*O:3l}~dK ц{#b*i1iyT6afWRnb 6&mpٵxxBQیChRbiKZ9p|A"kw4WDEU8v!x%! u{ 5|P?>q!~5ML$w9*&:yn/Y&MCs C.m%Ș'<5UNe7̀dPXb 0o\^¦f\vtF8j^Ƽ Ciݠʸa۽f4-%7-MpR\^"xHP;1 ݗ` b,bu/ARDKNq hsMՍz󩺎 wv>MѴTGS{GRM+hjhTG:(-tr" F " E HIa'/"h#̓"a0o+UUxh"2iA&F'=TnHmtrZىji𾰒KS=@JSuOsUy W!\F +YpJ ᒃMufA|XߡUXqP\2z(fbDg0\VF7'74 !%o"MU?,âQ~XLDpH4Dپ AiaeCs04И`(7S9'j(76o&@YbJDueL[nUvbp9H`b+_YdhNM߱j=~kpT^a_;؆Ď3{OYE|\ذ(rg²+Nđ8q8"i.i9)H!)ilD%5J:Q1%J R_*4)(t JK:yF( ro5T:U| :Lk&q6:3{VF΀mnEi)B"CGRMMJu4Rm;hӳHgK܊TXqCU'߲.H R1vA[c=) \P ݜBj7KT6cL40B442'uanTxnTN!kv!rU@ ۤNY`M+~Ey7P!nZ KޅK,;]cLm]vmPp+J}vșw .Li F^TSJ&;54"'t;q wuXl9a'w* KSnM=6-rK.p7HɳEZ'[yTmY6OQ:D+eJw2'/,߬eyY2o/KϻzY6ge)=K\)}0W/dpL/ٜ_%_n ͅf5,<6 Gk~;M7,ݩ}(cs*YNs'uei6liC:#P*TKܬʗK%nNK\W—XusO۳ؗ F~N"okq'0R2rNK.;1e6'f)'fN̆:;hZYGSKG:ڴw4-ѦgGEolvbVaCV:<Ss&hKof 6b@*+w>#g|v:5Jst>W\kCt' ;YRr"upBppw=p|_X'}-5Rzy\P-rbo.5؅[Y=PnSF6(jn105O>v*'FCG V2[|j?qnEA`N~:|c{LXx^@E{HM9O;9#W?o䫏NgﱏE)y'x}ICgZn=%i.jzc_?y˯m;w^^S'پ^qzsO!? Ce%F:K%|YI /kCo\5x}/7PK>K}G}W(IONvQh ƫkXl+t4`%d,:TQR[GUOvԖWRze^/zu_$:1 .fyum?ўGJq{Q F>Ɔ1CxeL4l &҂LKɨ'6r@%zkvdiG[ ;Xf Й)fzhGs݇`jK䊗ӉT&o]W4es+#~A`e;) j^,tO'v(+wU'* Ĥb"\}Li}N ŅiQh8b2Oj&>N ~.]&bQĞz \W$έ\ړ\˨dJj]JCB[B@sɫ&d>D*甋*7TDpu=_X)<1ۮ Դ_eIfc ?guzW^ӾJt}<1`w@.ߴ-_t[Ɓ #*1 z b!-B;N{->f6-7y\s~_~mV A^ztX\ӑs T^j;Pmד<@9{s&A јv2<9{Afsv9 l$T9K>|ΞDx>Ρ4esyA ir`iFPu0Aj`Ҍ҈bJgϞ=nќWN0zV=~9H7ͤΡczz+I<Ŭ%YzZu4sUguzj~H4ؼ Y{v 2Jg$բҾ7CC֞Ȇk8cx)rBFG 65i0a$`#> !&QvE8l`Kg-?fXP- ,hn1-֡HJ^m`{:i;"|l[Rשj& vCo udX$ԝTLjz/eЇ%^m+Vcf>DԼkbW2a.G.W:Bmdt{7& j(vzm(kSne8}НCS֣e¿~h5Q;{G{SuUF 5{:jfv#qyvzͷC^"E* ZE?hQbgТ(<ֈ1Qޞz)@97BU(f."Qu 3FSR~'Xx>=9RGB/6$XFJGH2TB#OFqƸI"QIJ2T)dA)z0MMWlCo4<ӣ$j6LEEE$0IiI2%/-¦eQііfmimimF[J}r7m) Zi}7ժ\ \ rRNC 4xE@#D]qSEJޕጊw\!3(DUF  i\Dzѻ R6 Ԝϸ2zWH"Ffp%3%t)LE|V6@ld\l)g 4m@Xw٨dH_ĺS=N +W;)|'>鑿&7ȁI15KG #7ը+U0<؞(6ER"`{u& '?'l0TThŃ :,ѦI6=;j- 箧80:^D d9b]qZG~(@ ""." ""ڤ)6 ye#-i&јvEh1hȿ5ofCVx2BsC[=`[}Va34Q~jGiWw /x2bsb"Ft?DZu9D+/8Hl1E#Q~h*n,Tۤ,E-ƷL5fꈗŽ/C5ӄ|Z+yF,`IV2VH+M3@'M/g>4lT3~ozC"v*[jNgVQf#} ߚ7ӹpr!4- VPPGM5ؼ"65ؼFaH( ۊlP)RЋAE!M(+}B,7%;:Zo՛`' lXjl8"$M1I}5؞;&zOLR]=ib4ӤijЪv AԎ րÆ v{"uVJG8zGB@f0aʦlHcwTBEmt*kELi,wUr0(ud,`R$:]0N7m&%(/wW4/㈿&62ūE`3U35bׂȧԶ>g4n BcT5**o"N!ɯW!FHm>ۋ?FHgR4PMIO$SЩtUʢj6y8UbHCI]A|UuWf_u]^礶_UJmn>6#ʌRd֦dV%2 4M[q+ m-B*!aWEX fYhf"p,˻`66g8v8686N|/n*_5""l5,..>`MX]M!V yf>qXb߿`R4o Db 6;yj,'O͹ɓRRa}`BgR%3D 7 3 r 4ε0AC4/ ?0O5MfN!b \Tj6Hl Rķi_h92 )5w@ < W>Zh)dHp8[ԦuH @[F m~6N_$}S88N ?^887m@[Y@M!li@Q'dʕP s) k.>'1yE!=or@< |UO)]Q8 %w)vR({Ssu/{>8" @UG`Ӳl=8?m Xau mhѤTG]P_Eh)=xDk'ۧHvwX|7ФAmQ "B ?[&ΆTbCQ=q LšRatX}U_* 7%MxNU~e&јg~?۔I+-[v[b?0_wzO8 ŒՁ=@R!DuPwؼ>SL#SBXՁ)$̈́ dYU,AMˤ3(`Ba)tS"S"XMH j\Vi)&8]#DN69$Q^Nje \U=1HN!@N/C>>O$>mhڴAl[O.JUinW+!i^[W+REHN!|-CL4 fB1 L45ؼLlhyU`6RG|6l+粩,BSSYZʢͦЇk>Tz;0TE6؍_u*7_4ک#բ4EueNNág)擆CWmvfб\i8fla. حݚAު X4m&,6E/;j~jI%h.~h!rZ8%XP~}K ?&>.̚d@-''߉ɝc-+p\rʋ>ؽS݋' Iπ}3i6e,ya99NdebTپtb%}}O)aƷE"}L1&66Ż*3fphV\ׂ3ܻ?Lf3LӒ~9,494Y5A ;}Trծ8M IԤ\֫6M$EXR`LS#Ԓ*i-L$w$LB=$Ը *Eߨ4kXzJEJbƧs?1111y`6 Gy6(>bK03ؗ RtJR\bƧQI#*F!28.`DWũ+`qq "eET̀=ĤEc;;7[:v0Q5_G ;V>Q5Ž::c1A<c ĦDz Fΐu04 !Hfq8XKp\jp{I,|e&cɁdD8# Hv4IX"'*b A򏆨?BkC8Ϟ,Ў[2!YP2Skvht4IPp4h3 To/AG%+RD)Fh0#3,4(WE Ȍū2߄Dz\4Q>BE谛J!Brꫤ@36J(EU?CC $nh$7Hӑ*Ny{ELHҙEL` ս/J.xG+y܅mLآW| } auhPsPM>~Aǫ>>>}>"  r튠S~?PqP-#Sq]+Pq-_P1,`AQCL;Q$)Cr4})"}-w`l7yGZ nehM6kܓo؏- ?Iǒ)]|8Fu*Rb^H p|p8SNضa4?'QI.a2x>KQ^#g2=GuL#‘3ZlIŎSm)U 6O5%4_@M/P!cֶ~ψ~p'\B)dMnG5d:JGd}L %7ΈţW>l!J3T(I/ܒnHL Cu֎L9`aKLKR6XS͔dCMYwLZXu^jcmZmne[vFG&Jb+!ʸ/|)UNطnEaQC_a v39|7Xa5<- t5e 6I$(AR&AI"QRKVyE4E4E4E4E4M 9'5'>~<)@W|"Y')Hr)();(;(3']q&QB؀RH7&X?JfH66$7e4z5Դ@hmfsCߴm@*?̳4&?1lbT`,oO{āEE7pnn넪dp|Ch2@bH"$H<Ԫ8TZUԪ8TZᡦa∭Kb!հ# viUz q(l0s$qb"q\!J~D^-õY*!ѲhYVY?Wwc(/_5ң@ oa6J:z-x\]GL RM|) C រlO0DOZ+a[8*GT, F(trMŜ,4 2W5 l\rؘD+KlCMBd dJНZN/TmubSn(jh꣔mQC n(-S`mIIegP4VetEݨL٥E8l` 8l/E8l`UD4PTӍjQ4dUusۇJ>vGs-TTU׍*plNK*RR*Rb*MtȰ[sQi[6XVEjK:caQ:64˫R:ҩ'x"oSۦ}cHƾۈǾȾ5f:߸aUM_m iaUKXdXs= u)$k!75㡄d}UUaHV>~UxJ<ԕkKzQGJ[f͵ɣJ[cԦuw/$#{9^e8{Wn*^9kl`G T+R1RS#60),adMQ0J}h*g;X7ZqvCov6 sۋ:W}'"+U ɖ ~m[&v͐ +_m鯶+[}[I>>TT7  QӠiQ7kJjߦF[qHʗeʋE E jY^^~1Sln<©OL,X!-'4@J@s 4r#-O!2:*&uNQϘ7:h)p1FC:g9+N,5%,gw6 4'KfHuu,i1<|Ad v!]8'u!R!V2\h 0* #{$Ƙ"CԞ(HR#kHr(@d'9HH2'S>>f`H2ByJCŜ$-`z@ IqS1q'9ߔP6 = I]֕dFveQa+N285_OH"gT}7_P6M$M1tÿ n2n"%dO.{v,{N1Gd&hz&^&Py"YLJR)K;xPS$]xw!ϝq DĘ*bo" Ȉތݬ) Ƙ1})V>⻲A{YH%L vsp{zYůר?^0).B7\"UM :.)*~W_ǵ4V_8z:p5߲ sv.8/ a(hnsA=~Mq4;xQ|Ş>'||fGD>BJ򝋿H$-R^oTᅻK3KCwc*R6BqK(^ζSŊمW;?3+J;2~]^Y :k(.nhкoCGIHCԐը5 чΧG>i= `'+9A-H^`]D +ا8oA|IIhb=iĺމus'"p2NzeMz'֕j̝mB/@|(K4,89_ s,ݧ[ wZݧ*4%=  f#iKZ#@+tFKrn^vá\,KTmE&iWtk7<- [碴"KDɅy ^u‰塎[6ޑz 8Vd={4B576 qcĉxAeF2`ء}%HcERkq*k!)I(d\b/&_f!)=?ԏu J//vp|a8$;ۈ݄4X OZ'= _&=ni_T }.%EW~٤/x5[X I1g&^ox=qLߤ Gæ05lCH& [C7p}=gnJ^>^BG)tq|T݄QjsS(|fCϔRUj4UIjΈŚ(bDfBI2dKsY3oEL?h*J;+^0%XbKq3yYo踙6uL`[:n&mLbAmѡz Jrh'z\W*_5WMՖj[̀ }όؓ^6)vb`6uO4T`fVZZK,܈"E~`D!Kzduv}{Nnʬ`)}fgZ(}koNLUUZjU~GB;Qwf; m&|FK85)s5)-+ DB䎘6hڠ̪1]K WLXs9LO t~5[ɶ}43/Mi.CJr?QU3S8WZ|u&E#蹏,OYiX*=ғ^< hO,W'`TbbTR bF%eյFeQ] kTYյFe[JMaTZ̨Fu1$͋Q]a lbTWC2ۼ&cDP#b )F&FC4: c9QSАs9VTMT+J5p&&U0aa<ױRMT+J_ ΨcnԏwX;jL=-ߝ\#e* u<@n=w,G9ĀρQٽWPˑS/z! .:\#XPw,żLLs^y,aYRIJěe hݡ_2;4KC]*hDڹq/{~QȴC:g`! &0,⬁iq4 -uy w,եr}@LskGKEZ2Yv``̾I]ZĻ؇w,hI]ٸw뽜aZ4Ko}u&o&G\)Z{kai-k gJ$)I~8JµZ% %7 g6?ؔ`7 ŖeB8?ؖ $g&n䬋eFIѬF|Njy.P1cUȞ==}p𱰧.{sY3;=],ewO^.{a岹 '=]s3^.i{QS4,6_@ Q8Yue=@Wte=@WCte=@Wte=@WCte=@Wփte=LW'Օ{*L.NY!Au}Ugݡ:YwκKuPuꬻTgݡ:.YwIg{iVziviUlViHviU\ViHhUViȿhUVihU|iJPVyFV l1IeʫBR"b4TȡB>"s&DI3TȗfT`TQ*V#%Ml'FDgW L &ޤ4}*@ڛM͖^ѶLрv,U4]u>upbrOt05&FD]#`kLt45&݄b[$(MrIX"EBIX"[œF#I )Jy+05<65魡Mo }zkh[CV=q4KUdz8@YB~ Bñpl 4\ Bñpl 4\ Bõpn 4m >\Yh\-SWD? 륮.u@q+kK]/=Z[RW DD U[nsPsQL8zό^S㷀ucZGB $`RKhZbzqo$Ii5!)]rt 6'vc2Q+LI7l (;EP@Hߙ#U+"k8ѓW>RF\n8%&L@5 F5)ԉנN:͠^D maK*@և&E6XCM2ԻaMK*&2솓&E6XCM4Ta(a7TaT*7mZ5 +(L͗ҝN5LKͧj>RSͧO릉7 6l6-n`SD4Zb5ʒSFV5ߚOKv<+aQrs+$@˰ӝ րÆ րæuf4 e6`mܜ6vC`Àκ,6XV`"{"4& .^g4RFQkFI2oG t*Wfka꿢гeQi!"4bGwY}1C'9ҴQS,ǽΨ߃Ku6{~'|0=G᲏:1krzk}U|DzB RX*Kcp"N‰T8iKdb^>9S!cD v=W!BҔ"r_vat]w({h/ G;dil+aAzӒt),=z.+f|{A y~W;Od/jJ$ER(ujX=R2*ƽlнǡ= ދBu_% qcҰ^Jo3H|@.9T iksHju6_ z lEXc%4vڃ}tG&m\Ԍ* f~n!#]8Q!LdhPw%&J[̮3jW7NL %J}Vm$u9 -jΈkufW_%'k^{vˆ5%Z@h{CPE 9e|1 fToxװR2+ZbUল+}S/[EtGQ`9ee?@B3="hv{zI&'>-\eTWI#Ӡ)1!&/^YY\T;od7}AKjwj@jGr"Q1df-OMA9OyRW6fBk>`3ܒ"mJe*TZ_UCf1_7&H:َNhbhaN%eA[G|<~M+hZm2[G Q ;ʢ&L/f_ ;T"YbIYR9[Gp$ӭ Jq!L(&M bk+0lfON;b'UDl?B6 1󏶠͓3$e"7G4(nO=nȗ+jWy5֮$`$кE-%"RFH-" DZDI* Wa@% JWrD“ymF7BߍmY.0dEHzd"I DA aQQJWiA gO :X~tPݖR|(aK}S x4y .+9VtFk,Z]\ku[t{-689$&_΃,>#GPvzj7Fo&fqYD? Р%/Bb:Tk2 GXjyePŜ7_+|8`{8 bzɳ{S5Š' ,lh(P! \c8HYEvg3\ x¥'lY>P2U>J%cb(|Jn1CQrXǺDy^] %,Uti h,rkGviaKLiS6XS͔vCזڔez 4򘢛 զjk)EBAai`no-B +v(OPybUwJaGv΍h|ȈF{dY+`N% ,G$G$}oz^!b);I$(^QR&^QZWSJWgN/9ʗMzM勘{iiiiE"& IJD0!5F0I|"$"A_Pܑ'Hb;"l*9C@Nb}e -`޸`%<`A>N $HЧ"I.e]2%u'%VQR#\6%řGq )\H%sfSd6!tՆHsM .-U2 #E4#ufuf@hڀ6 T hѲ96Uhsȱ#|+h:-#U?|'8Ц hKR9kC_?h4V_#&k :cAT;z0@ $1Hj8a܊#Ö [edX[܊#Ö 6Kbx«:XGX(4ۂ&X`{HLHDÉd:ëU3 N&NUq"DN0Its07zzOʋŒñE]T `\j*R uJOl>N0IwJ0걨VTJ P<@ U\UH6q6*QkDaJM6?@yO7l~ /jjk|Q+@M hCԀ_LwI;9e6k#D6k~P֭B-ŅXBjDa݄i 4iհVf- Ԁ6tM hA[O0@}f?Pi_4kkp].l[SfTW nRrq%8CR@ҡ+bHPV;,nj9ˆ hE[uxek W`T=H\C%{tR406lpT`lqɡkfL덢z7lz7m|K)5~fj5Pug#M! NLآ4 " fq) p ֝P9Yt6त*7e#6!nT"Y 8l-mg)![EHұaQ~)#tZ$&Y$`vZI U5;IL4,`l6ddӊu tJ 5)(-ךπu 2,`%zaQ70%xrnpnڀM8o؀iB"9QڣǞtF4043;Nfc"4n#9n#>nc^<t2_|-HS$-yI,)v˜'8O"hI1T==)ԭ )ŧaRVX:)W]C^iNwy jB4KHY̢<ͩB}/Os>94 @椕߬򳩘1-l*f,?'*(ϳɤ*N&>LfIwayP'S'8p2~Мt瑖K 7'/ggy;w,B-Y uʜ8jI*:{B"܌(CxRĻR 7 ? R # 0ZCRϐw>ŋGOjqQgam~|祈¤^݃lvxiSC k|5'> Ԭǡ9|[Αx~Wy @w_"Ǫwia3HO­ $Hd4 k"6`ۊ4)슔ךWr >գZ!>ki/vۄD~`L~fbGλXf^l.^)K-/3[ *By:>G=saӥ #MSW4Oti¹gN.{4沷g\旝Җξլdڲ-ڲ-ڲ-!ڲ-ڲ-Aڲ-j =U&x,<ʳPu򬻔gݡ<Yw)ϺCyʳRu;g}riK+_jriH bU ViJ7eUd&Vi`UFiH`U\VBñp#4\ >Bñp#4\ >B>›`/oxHH)Ս.8uB+M]zlꊳ^SW|D :ч823uA+n L]Vc6'gm8+$XX3Ct$46KG3@=N\[6X6XϜsC<h[7JΟS@dӀCkakA"lmD n6! H!R~/5:tSA o\Ŭ ƅ f0aJ@i: 6P 5@q= M{9dgc}f56`B66uvuЄsly,9*PU` FU3`l̙3_Q l^E[k}aM+ +,Ab9Zݛ {оڂ7m&d5](ۅ(]$ۺڈ\= 3cKY[N391bWzxlw@e?<8\[6Xm&7v oc65mnnnn>39 92=Ȯ9̗a x'www w3wwww+9!  "ѠW;ӅpWjiu{8j =հ,/?=8<ʕY: 3t m]h#pG{9Qk*>SKHJi+Y" Rd5!6AI#Hqd ihޡprHas춇*_`{Rb_dt㿢s!$] C )zO}㸵 ^ Fb4}"%7th@D?Av`m@B#kݬ=>I~0԰(ۥX'<^υ_C Oi…Sx R V${]"ͯn~EHwjM n~l-B_rl ^ t Tn7bE1:7yUM&jIC SO w^3\ xQ  ({ՋG)y|Toz QjsK(>&6)6uh+_VcNDT*Tn(_IT `rns2SJ J4CK m@-cj&Pi$x{k1efj.[ s;X"%vTK`M7?ㆎ lSfqK `tL`񺎜.ֱ3%:z&835up:~9с`>,1+ Ə1 Oo`;~쳤h=QIZof = 1JW_m꯶WgTM  = ]Y fd{ˆ5%ZZlT4تK[bYZvV҅LƬ;s@yJ=ʓ(WC,V +NbRZM)9&dC?2<`=SkN%,G$Hl 䈔z6#RT3D9ma_7rYJxb [5ؕ%wO/qNT$_64j.jm9ѷO9 ʗ-e٧޲/}fg_}>5B@gsRaZmj~RƝ~RBCoI>ѩnieje|JPq1#m̵ATXMXMjS"In=95*U^&dϼ4YlDy4g9gƋriX6,2ݲ"oSf_!籴j'?qOdm'4?1c̊ 81;\hV9Kz:ǩ2a&MQ\f'INe^L?C8]G7A~ovqt(G83CDs$AպQfj1/M#_EPjgn^XjXzJiUV< hOOS,=SKOɲAa>'&>'9)sR] gU[ܵpV庅] gU[ܵpVz|NM|sZ>w,s݋]a\sW2׽Fuo>#+X\NT\dg+?g'q5XyNT94$+ωl&Vjb\MT($J5pIHLT% $$:Vjb )PUHBj*IH}$!~Ԓ_'J5RMTT(Pޒ ?Ww3n*mxa?)PˑS^/ʾS3P=2jXU~oX"*c7-6/^)fN'>N8xsZׁ2,?4Yf67fogzZxRA^C:{!^C>E?(^K>Ҧ(H'!0=4߱{.b['>=)5ea"x@,OXܭϓm,?cMd惇H&^4?X~ L/ cᷨڽ'kFO}4z\EN+s}ܭSh?$ncҢMF^S| }uŃ3qC ,<{ b=Xfal!ćSx"rh \fnO]#O@hI*4~ٳ񁽧l>>r@3T>0>Gh{֞>@GR>n '&{q=ða2g\2\̱p|dG"JV?fz Sa!3L=`02fz Sa3L=l0> S~uiV\S!a©N8uDŽSwL8uDŽSwM8uDŽSwL8uDŽSwM8uDŽSwM8uSwO8uSwN8uS|¹Eâs׽1V g%`Y pV& g%`Y pV& g%`Y pV& g%lY pV&2\c5tU0솅 12P2 1@(Ƅ2L (D3uH`q`BF~SEě`T17= tU 8Yb3M`.p1XK+<#D{7mho67[zE3Gڱ^Uc+xC,|\e#媷A6H#i `4lF A6H#i @f4lF mm$98ϟ&{%k9B`o$ 8{_@o|nCfsWR6!T*JRT{ s?rgʳ?'ʳ?%b%pM|]&> n@qnϷ?e|]Ubև`{1*TXJXK c)ay,%-屔<GЫD$qt|e-(s T,}dzF}K Ro)߷[-e}K,Ro)߷[-eF&Dƕ̲{W~s-8orNMm`fX40|,2y=b t fX3yB,Kc!LձI`fX"s,3X84 |Vx+Bf7I BhuhTWj!A)V#˹Bk-yZY0Vej%gɝiR6[$'o:yZYejEz&3"ZZYT<T}2ӋLze_feܵJyjaejx~H:*SNJ Z:]+N2Sw=ie8 WML+UZYF,vjVRK|q ۀ_ګie`D *f\keZY:p0$5ZeNhq%[D2(fy8vb= 穅sn+yhL-Uzi"&<.L,VyDet#q$+H\>4Fz!#q=H\<՗j$f\EZl'zFuY}i].4mtϽ .--loKjfsSlY'WE-[H+!lr?0:dNqaZڅ/w؊H5]-p;q_O/yzxhpKK] q{s[Qs☥ lOeDa_,] HBy*Y{XU2zx||||KWΧp"sޭߊȟ>џ/G 703@Oc>)4EOc>y46JOe-ET.S%RNH=U" UTT%%dMΏ,vU8*r\.[N4S`_xQĿqc^4+<10+?v´ϠCua3u;2Sv&̻ pVT} Mx:/iݨkoZ"Y :h4qPi=[g pU=[M"5xD_x/FU"޲ H-xT,"({R^=6;x䴉Or -+B?3TӯVbWjK~ C#Kt;~t03P}! b5ȵ۵23sjJ⏡/Lx=OU/ Т"hf( ~)_:كyZj Eo;{1뵼.V豀a9wNe{ղ6hEiU؉r3y}H[~1=ܵ61V]ϳ63Zix L ٿIhλCz@ZEф :Q_qhvP-Q. "T:Y/ȁ EMU;TO,u1ld^IK>vga%AEx勢+4 ZJ$?+ y-_=Rn7(~A xPa,vRʨ>ڂJas,忘)3J{/ޮz" ȠEP[䣶r&jã: j+d24FCm5LV].]s!\*󀕃KWD9u^kd5E84#+kXڃ.2_]Q|'^|9U|5^m~'סPgoQ!>-J{+ϱJ%G76l bR~a`(xRL.(zlV)WA}/h_x ھۥAw ~߮E@ASŠ`[~#|vvL)4D)6t_Wmj}kW^*XW+ʫVUUy5YyͪfU^*J\[gRI ;:̻ɻǻ;H+d95orΘg>3Edm6wUS{O֠݉WO^MV16C!Չ4WѢT+7*luy*pѿvNhVQ\(o;:M6P];zt~x NƿhwQ0@L&+K܂M1.V%3M3$k ?q"ڧ85M ,;^+IN-@8ZVhyAсf Htγ?9n q[!›^+ Q}3F/`ЖJ+t2b4: r}dFԪiv vV=a),R*^o=$ X*ȇ!Z,_3vvitc{+܇~zz}?>?=c;G{vzc<9Oѯl'gg[8prxӝY~;8zWeWd5v}?}_w~&#l)';ݏ;#>|[Q;{sx7Λ}jACNwki8V~>t`*uG(/·wП&'t㛳Acm;>CST^g ʝ "1U>!?%z?Z>~{/wj.Pz[+K-R`Pg_rmЉl>6ߺcP3@7 ==MGpt4!W^ #Rp}d R.dv9PsqLK0T:Xv F7RGu PtCHli#(qi-gnܙn~_7Jz_qGe)m q`~ޝ\)L/[2x!8^#<*YoouU/Do\} JfRѭDT-qM &2//J앂 %CԖ*f!N3w܂wɗV=/;o|o(Z9*j6~K m`\AVKS7'$UiRJf-ۯEqrby.ߟr>щ7ԇ-u:eN b߿ľg]1K0' 9ts"kڑG㳈kt˵gZHtBQU#x~x"xynEJ-5.PHa#TFÏ"ixTs_*VjVJ &m94܍2wyu*hܥS& /c̗<6t4eS& e@<|sú78 |Z3eڂrgd$XI,\9^EvȥI^+4-apm#,NFAJ=]:^3:bj7QyV p.(Tʰ: 74W,-cY޹vj2xڈ\"$7eX3JsgfGa8Px KxbUFo,/nu2i|o^M| CnhKHt nۇ`iJxyB^vV̏ιHdE`7^mx-^RY"ف"`N ҟ}\9%LLHH 4$Uƹta^/^er#53]Lףѧ{AgBg<+j=f-1uIV>yuX=yˆX&g?j#`n3w}[gRwi㠲4)9vzQ,{0:ylcE;]cG#hi}-ӸI=!戦DngvYӺ@@:1%i{ݨ'XkwJnTmA7<z팯&{j{f#F-&F8Mq򥯕ƅ|F`%}ja4ѻHTW 6,0(r0>VÝj*TboBtf_۰\J$&L?-:xS֣=YT8Ne?vyT~t?V4F.x X- cP-,.|g|V$,O|^#1-an&C/F|7.xn>¿|*,9'_'l65=w=QFLK;MBD"Hܹ~q=1Z38ȿu;hÏpd u͂ o,AQ\j7Psɂ\)6Nָsjx%h.xWbv:mx;tc{A=Ah NR )W="{.vEw~_ IXA\ºZ-!P ylӍk31B#49dEǸDT } G++o#w-U}+ӥm".WA(OůGǏϞ;~EboL㏙??@)5=q]\rԮEbo%Ȥ9iiYu.s "=;k|zSn-K"l^{%{{@9^šo!sDզ85?N츔R@R>Kl<ߨYoOJR-j!T ygҧM&x?&6"ٜ"jzA5qE^a~yhQ/<1}1gr<(?Zn$+|;hs=`'31\`m0/<@փW˚enx2AEVqk;B8G$XIZڣ4eRP1fu{@p voSkkǵmMBd#[6y\ Ɔx*B ӖQ;8o,~*^0 /[?8+Mt\76 EotuVmIUo9SHP(ӟ{[CPCQ=XBLYk "&بYi3sԐgMeK"-(2cEg^?^ƃkK:oghK}]EXCRZY}YˆcЎD=#bת:KjKEqPzEؽ0hoz'J xX( /Uٝ S*>dP@KaοFVeNzhf,+: v!-ǏIBh_KP|LX a3"ol$I|kM(__# ZpRJĆď5 utxRnZKhD [.͔)(3(a YW}dwCI|@Ո~إ36#˚#I+;>fM}%/[eӑv N' Czm |4}X!e N]t$4 `8iL2l1d%a~Ǜ8v+:@ήٗuh */}-{-i/M~A$gF\35b$o0I31SqꉶY\ѽd5pހ?du$}PZO??AB\A" ?PHo un{(gy7˕z %*ҖNK#(_b1Yu(y&iqU W@C?-*V+Z[z7D9s,<%ϭTTt݇ǣCzcYƱ (.ymhDlHGl~>==+x Y η$hy g10iqTSf,ngGHoh8qآp0o n5nrUMo^_yx3m=K`b2R,!}v{[x(I @6&٦ꋠYhcp/t AH8EvҸ2Fs0wOY9"0$ߜisgM8bE@yT͡4* H%$ ,A S[idnyƿ5uxkڃ f<8kcQ03Hޚ&g7_$ˋiv] @xǵ6$g4 N<^[s\4RScȉ#7qTXG"]umd'>2'`-k QGe@?0!y-^|\Pڣll{Tv۔ 4;1Qk %8JpAgt'-*Q1Y4-N#REf"Q%ИDC0$siVt:}kBS xsT8Dl:&4e1G;_%~)h\<凿&3M@cV4Rc7![g}='{;6WNbWu:CX8ߍ)N/!8aLxEmvy6,%˃{ A5S!u¥BYmu޺6 c|M[p:~\~۩19k@:\U~H@?{nv/)PЧ<$bbap(3-Uwt+4g"6lE,>sƠ|ĞU c+>hVv$;XTPTg6XR^/؅g]eݴMƿD dN3UkTP0 <_lG^;t}r ;ٚm2|ku7gx@x %X:6*Mqn=E| kOo^n;όX_lQ-,Juݏf~/,n~߮~J~wdoqGA擛0\eT*8Vg형BU&ГE43V:{Ms^M>)p=3HYfL{>c^!p(1QQqV˞S#_rK{[j kb77f$cΩ>&?F[;x)PREUqIU`grKʭ <&w(o&SޣZX#L #8{<>!^c%f.0*bYc5{x;+/lO_|v+2ʤXWRt:Qp d.M4JUv8Ojq:`6+?v/V^ܮUt:%^*z<\qg׉a+kPulz>zm{;?Miq :,s~C%[;t6>Ç-q]wL㖥'(^Vk|~=)ND-—0ߝVN¾>ϓ6 } n^w m y$IՆɓ K~ C~7q8X~gˏU~?Z_~ . J??P[[P-5[7_N_Н|AwVpcp#kpqB4~ˋٯkf(V]}Io +)Ů/1JӉVaϺkGdI fQg\ B_ ]g)ʜaPAߺc=N K0&ESeSV *NlSyUgcIi-N}Mצgo>]}MQ&#_\ZAÏdawЋL߿6#CTɚ dgQy'KO/g}J7$3"}4+/7EJoVFnl|F|@@Q>|dZ@Jiӿ@O!͠s)QWir ?A="R돟]DEY<GOM{O4b4b'4bЈL#vJ#vf)zԨo#Cr פiIrz* b1dEMl @X9YHp'Wo dAr(1cֱ|rfRDJL[-\ݶR{5un7lAnw.c#ľAC#C{'*6ZIbMﱶ>G<^ɕb#t:"QROY5.(Uj|zYCIL5 Ov}|R̪$fBYw+ݬ>2{}tv dh[N@4蓯P!(톤Qfz; Z=d>G>"x?OgFWǛ*@Vs5& .,&04:QzAψ2EJF HdKsГExhxm(EP#J$C {ʑ{Rd& Ʉ %K,SO;-{6)*[`0lf \۵PO|fV1*9CB^9'|-{-43s/lﱠ ,8;]5hT_r6gauB,eR$k۽\*i2i--=hWbtM2Ip Zf)?,.;]V9k$tsr/x6b[[$x'}'`W=ϼܩzpgfE=,Օ|T"ōYONVUBk6-oChUԖ'l2%:~)OcH*'ЈF!rJE"55>̋TRX˱ͩN]vouEc4\=Wa WF-H2@wa s2H9Xc'90 GS,Ӱ Ȣ ,Pp#cwJ-{O _qV|>ɥsf_ɵu ~Rh C d8 x{nL%~6 R/C/7ai!uLj 33`]gG:ILmu+Sve ,H|C&I `rZ'7 1EiL%xG-A ˮcbipL#iI{; ,`|ΰw>ka ׆O4 ߱\1\kɕ֫ /cDe& +VJ /UBކɎ"jaIN4^,`WC|?DuwށO#u`dJ:O_Q>}4RAɧ D.XsD6xAFXynI>șXk%vpN#PY8Em>=vk;-} F_{>|Wؕ'q4RJN#zܼ~īJOBv8ǽG?{CG"nlk9fHE h`ԯ 4n DlrӄS ,7U%͹$jXv.Vhp$Jg𮌊WHo4%'epwbnЌ^'P֋{u+z=lSojzYD2ߟbm|HZ݆^o{A D8c2mku($Cc͍ <*͗=uϠ W*iqĨ-|UԩgBxd4^lAo9|\cK7nRHqR)uc~Mn4JHJHJERT J}Mjip'ݗ昛O 0Ya+/VWW_{;ltvp|NŨtDA\(o8<]dzrt%@; d!O7>Jvw_C:.V%*XSD?`9zEfN }9dtAï2 l$ 3N3hyAсf HtAßF2m TX!›1D2[W@G<A{E&$  #@䎝ɤQ4ᵏL?8cgokvN|>9=7}ɯý3sOjo>֎3^}rvƎO'89UǽwU0q|8AqMVcoهuAWlx{P;vsZ;xsN>¨3E@e?;a|X9ܧ&4tnt]Пv`aCvN\g|B|y)k2` .Jh~9>ٻ=$1;?El>W <]cxv@:8ퟞ~%&&f7}3֪MaŎQ))|ӋiwU0bX*ai͙ai2#o[zS=rl#CSgot< 6lF&x>ڴOf:5Xpl4^%Zj xR,7Rl2~L"?ؼ?2M4wp&%AazQ܆ %Ĉ"OI#os#р.%d`20N3,(<=^Jyj2рy,YRG<D8,ւȜofQÑCGDa̅Ф5+Ǡi;iNb3?tL}z=̴OM$j}u Ĵ) ʞz[ZzP.Ooox)M+=JSMGBf#ʩ#xX+HABysbˊ$̱%hd-NƔ ')0έ&K! iK%C<!5cH-^1kN8$#X֑L!)$JKC)*$IVbL;tC:)eHJM(MɷCOIp qǓ$N'KKn2vmx΂mRЖ69g{6Om<#6'Ms<,OM㉇mh'rL*ɣPYn;enٙٙٙٙٙٙٙq&YH.38S38S38S?B7X7E"耻)qިLeu^$ P_Ja㡘 [)9EW +x( ZuR-hA8FZ䗭 |^7b##TqR3#`f̌# أ PFl4]Az~'t)$@b7Љ8vy'BGacQy(U PB `A9@`h?!PQE|C= u*6OS`6Ot@z_GDA ;N+6t>M_,^-EB+vvw맵zRߊ|(!t?Aū'4̘33cff̌133fo0a6< ;ShR_S4N;x}qܷr R{gW^J xڂ'tA[GӸǼ$"S\0: PLSP9&BX>b-NI:/%r + A߲>$FFTy-Z]J.ҽ= 4`$n"j3ƛC8WOeNUfw )eTMɇJ*y!C\Jd<#F˚fOU6dex2tDD3'&i(ϜK),S@<^38f5X6G_DqXԊ/P¤\q,Fcs)wb(Dݝ(yfx,\&I!č)YeprkjϙCA(Sl>^/猗b1Q*+Yq\L٧پ$@k{uҀ)3:Q+dUS{jSJLgɵGL4FȀ*B[ڀ[ xظJ۰5{ʚ-W*nQT9m̈J5Gٚ7&^&wcW%bAT{c RvB? -q!r%KI ptv9*xlYkiAU 6"o{%n{.op&v|h5h@ƽnd^`τ9\nuEQRN8ee191ʕUeŬf $c<B||uu:16UNWayFzLt:tKةҍc)d~ƱV*RzMUQ#su48hĥnRa0n{vL]R-0山?: bRIh,݋|8==ofmᶧ6)=ٙ~F(P=܆HfiZH%RoʴdOM*'^|)V2|j2wf,ό˻g?m+Z3[yf+?pjhnf+wV,HƲ90;r'f Y2gsG\yY ?7|ᨐE"~\ǠXÕw J\{ )Z݆V_!<1<Ht=3qf3lƙ8g6f̱=4i 5J4urGXK!C^\ݵ4S3:S3:S3ԯmqus{(Ht7f^%LmS1j7Ξ,SH$"Dc48_׺6)VNAn~۠rU%;vph,F0zQtm$ϊQX|Cc3vs^ƶ76j0=9a3٘80ThTh SYRj@um2~bGI,FIQWN_e ҥ`Sa&p3s>[/ÖISvY*Tי$f (!|\qЕU(^H|g.\u7ea^u{{ÜʠKO-9D"#FI!crtn;XNY7QVs;fa.KEZ^pΞIZ* ZPN%ĥD}p}EI_C<^i\2IE8?scvOWZ9|x#vmQuO ͤ爇bF5?i<[]4H1XkjǺ*L4f-?qj2WӊP>1̆*=af!J72oHE!.ENJh cɹ,R,mM"՛<ښ~?zZj/kmoz~Wg3ݪ{lT}{Tw=5I~~0Eb9W\FʷNͬvRk5׊`EW*Ezvi8~sV^?ԠjH/~Qz_2"TJ[o!ɖ EbJؘgd#'y:Յ7heg_m#58Hm ,}+$PKdU0Ao5)/3³{CP>]S{(Ѽwõ7X0%e":ϲS|%- {5@)bDs1NN#3)5'-qфn_מ򠩦M-Abۻ7vyޠ b>OQ͑ZxA Au(hŃP" 1þ<`jYZP<D\;Fn\$ R) @#oIrNԹ "3%%G  M_-W(2.f@$ H֪_eNU@lV;.E̽8vhM5 ojޯe첾zmum]`ف fEftnmR@`S!()g~ACj JA"2F^gAynO><4kRs?VpcxiPT5I* o}* zT%Ų,ImMsٔTHвx/Q5SN [ej Nm%o4ԨV;Qd_Z,r6a9FÏ wY6ڒxk3T{'CEjB[8bcCZK[_%{T5-ǖs.5WY)tr*eH+Z*,[:VvenʎlF=J,Cbxh"Z{@t4,Zer[,v0Vug0q*=qv#vu;ɍͩ E*i+ *6rjU[V;F%F *;RU>L,ivГ4pӼŐ"aM@+1"0Q)P{{z6R !.݅߹ \Gx`5ulʞ@JR}Ċ<8;%Ɯ+$7QGRKQEc}YF1-ǖ]]X F"{{=2-Ֆk37fSA.VqzLԅvL D$,Ư:)v (PʰYKEFa%E;%nUJ)-.WNiflqй@K}Dj'8I7F=D2`mWL`_HPzхH ?MJ|$t8hO0hh+9m꜐nLOnK8PWXYkwfj*t6ӣO\nC)^ogl <ϝLti]n B`*ڞ& E4oHlboml& шbhcOϘ^vgG# Uja# /2 ͻyi_s{."tIJYAȋc2TXXQ,уqbg gG,-UtP7 .u++Ϗ$2./Q$)E0R{$7$$AExi`)7P~cX1i˸eqz|-V$ t=RIT:q'#1 oh>Lr/eIP SJ/W WC{")yqe?0n#966B H=?iA2ϕ͎k&<'ꦲȳ"4vL>XW3-UZ(NUK'D_MqO~=Vpkz=Ҵᩘx8V wQw3w9Շ 5|W8MJb%8-B7fs42ų Pi)aJC2QQo0:3qϸp.#F䯴{:4,if%^H- CAx!~o8c^_grh cerB_xiisTr=L*~wW(T[+I%o7}imDnhl5ɩ.cx 4z.݃~nG>_ GqFlTJɾW 9.T7}J ?617 Z -2y|htac\>w$ZO6T&j2rzE焄E]j_^qj߀JşƋKH-yLɺ|{=q=b"=" #\0Fj14b?&;{F<~gBéd2B%:BE[=`WY1m,-u,/"M!{V/ߓǦEXrR1Fփ?6)f&P*)|h*+[[s_H;r}A--\ܩ$I"\ kF:9粰 sx"D/eq 3Cj nwFykS2ũQ-5, Ucwm;ܬ]\&9h.Źj h*2a _oXN4V4(Uq,V)<(8S:00*, 8Ro]xT. `R5]LcC7q-GmLX޹Vr3T#Re"W +N+\u\Z@!IZ7TZƲ3CơD}գiq.̟ j~11;+QW=g\|ol:ej/9˒5C97* D8*|D s@Azw$M%`Z1.>W-_||Il3œ_nMO8>gj3eТ j:ɰ\BUq^=ibDm>hyD\PFn\2o??m@ ImK9&.ltfG֧cD#}q /~to}`FQEcT(GX 9 X%xk\mFwu۾>7 㞁jhޡ4 valm<;ڢJ܉q[>-Iwp z BXq8n?q{';!bRK|+=\d.,T/$O*B Q)N~ -]!V  so`"-l 4K#X+ע2ŭdd"VV[K[s aN"k=hAݢI/|13̹rXgziR.Nۡ ˱=#&#i]]$){~4d%g݇4]jn7~qI~SsyHOӕB~,NGY pcnh(xdU[MUm-Z+G|IOX~n{y \FN8bM`[CmC$~ބv4~!v ~1Y(}$N &b&O?N^s1+g{zoO/f$Ǧ`6=l[_UN)făY~3u 6` ZSn~Gy}0_#y>.夌x.g6u9]reEΜ3{r;cJnHRn-#0{aJ4\bq#d(^p-8eT%Nbkc~Loe,Jz vU8<ZhƦV,*&(V7d&Mzn}Fvdg[iUOIղύIq#EAgB#"Cj Iӗ "F=SQ#[ bqN^'R Ȋ{(UNɜb5&HNBihɨuڴFTСDj싙HH[B1p=`8ЖGu[U,aAe5*TժKbar&hX  ؾWKo]'mizFk4dzkޭ-![Bfn 2%$Oxe1!_\22R{/ 4-E8J ،Mo{$i'jW' (G+▏v=yԄyJb׺jG0Fw8He %h2*'Ea4i[MX /FM^l."EHWY{N,ru( Q"d:v!eVѰAB /5҂B2Xzm~wXyǗd\XEog4)%/\KmaX{gRgV-Yga%K~ 1&ʆpMݾuy/W<ؾ"9[û;AolldW)?ntf;]XvTim+:!`8S*0U45s{Gute0jq͚B-AzE fNH~Tu!=S CuJۜ=K*"gэ za`ey$IQIw5]l*XrS;?ȴg9bwlu t)̓ovAobKSvH:[~[jEL66Bq K@qwjzGθ1tv9@G([+/`̭E6Zo`9,KZMTV/]=:^Xe`FӅ,4B)h$i Z "]i^_VTÅB׃eۤh5^7T@?B\UOSs-Wٓ]kKqGtLWB鉝^`E#D!|g){ܷ6y)ng4ȿu|q$aL~צ RK~}KB$H4FlhX|DC| mWhdw:ƒ7Q' JUrU{3`,c5)c(~1.CLGNB1I #͵S EI\\EMQ9 Kfό"f`X ~]_ z:,}It6b 1b>4JDh21wdDVwtfXS0m:^yKNbJwq;x%yBџ\ ro\=[|UVW^#O3h.v*ylL4KUGc=̃V tұ@. ix`N.xҸ[, k\A6[}iv~K3GV-ܨNPHQq"cwkl:"ܮ?c=mG a͊TqlY1m-ugR.˕t-|f[*v{/ur1ʮ~MlIi]R-9."tB%GY* cƧmIwqy2 6G"qԅehFhᔥ5hy^YUfN]ITV6͡S5|dt[άcּwnF*_*\Ǹ/`:S,@.c i,p`$^hڸEF<``cr_+֔yh~k41Ecqa!g£lz 4).Ah;, /)Z!5+f*ʺKgnm?P)ŝlr'W[\J} cᣕޔkN?^'h ɻà;Ͻ߸Zx=2 ZGr쎪¶&a\H/6EG,Ky`H6jB5q73:GuxacZ1&`7HHD*̇4nAu8@[Z{-}eXTME'%k{m *KT|~[|-ݗ%TMOgW^ϧ W\Pb6bH+?7JI_,rHBԈ ߒ1zɽÀlo" P.6Yn$Dq?)(02ˇ딄[♾:03xkJW^WA/z:Blۏb8 %upH5koT66>I{Xpʛ]> у&;"醟(-"XT7axFT`>!xH/EoԡKYX%^-WsG &NSCfwm[ۢ/o7>AD.Ц{6˦ܒB}b>qC%_1A6!PP{vubqj8=)5nH&Q?,%i D:cSJrUrrNT 'o"Z SeHR<鶂]65x h+UIS0B}xypNgy܎yr7/F j5c螓N) , |cŏ48/h ]˿[Q!9oyCYAóT`x%CA0Z[xQhBms)bmБ+1_D~K{enno6f9nY1V΁䆾׎whNVy!jt{$k\oSUۖK1hPZ*J+ c 4& ^LNշz>վ-y <ʋDBn 2K }dzè4s^5Ij (-why;r+]grVicpi9>-舲(+(8[&5uhJp$ySWaT] fLlq'_Z,pb*fW{\^)FTI!!W i">{-[3"sA^l}")e]`ݝ}X}[/ :<f) <~'S,DcX{8wцZfe/@4ngT;[::8:ŅKAM /c[ظ6EPbYEq;ƶ(Hސ>CAnVN<. ZhDzC`6:^WV׿Nkl?"e1c0+8<YR2r)E߈9y m !Xq|p} gdMN KvQ<@+Xfa:l ?.ήR~ qϏ@e?řhߌfjC Eih`6J3 ~ʐ"*rlcvY݃p}dgs!<\m=[1VR޹!*,8 )4`ڄV[gnx9 r= GQM,v\: Akrc/y~!x4Z4];B{luOMqM]aWCꄏLz mI yPvOL>XұVɵcWp)=YƋz-uV^[=mS q]+BM@66 ';=.~D񜵟#=ٴLqԛ1cv쎏厏ty~tvJb"\[~btt: LΗE4bc.P7a&^PHu0|W CGwc>V,s1> SN?RBJ4<p1;&Saۻ =AV˅Օ*;=>=9>ݩhbT:2S\a2Trx;XHx ȷ Z bvS$6 Jc{M-q\t[ epӶ*G$mty_It0*-DvNnӌ6Z(p1h֠Dz4a$so4vA%Xb'&}APy3F/`Pp6KtGދhgvCgSjTp-kt`3DZ݋ d8 yct/Dy;;~[s1th^CN~==xퟞ=xzT;=xv A'bW3v|-|89<xQ`v?2kA Վn;~>;ojbۃÝSvFlavw>-(Q95s{5 d?{:skȀ:#lo;OY[pQFcY!)̳Mvx|FDx_Fj;6mbdzQm v @=JvW W٧H΀+vkfIhft;!?%z?k{e)mpTr~fZRPh#_7aM6h-N`ig gr= pCu'ZbG|m xڽ߅AO~mCCԲ3=4W!;}>ׄ"Slr%u/9ݜbN5mND{X{Cz+Y= Q9Gkhg:`u1e(K-r]U~ Β;ߊv:Rh/֝J7r ]!d 粒pyO#yT+ks\}#"u Ptdie)Tim"bg>4[AE3U>zV:n8 %bcWq4AȈ5k9R&=̓f"4@)BHR9QiG7FP!y!-Uߔo`^QPIOD$ot@S>p}i ',6? < CQaV Bfo*6m kb/0w-v6moeAuY:bwy}h[c|<:.ൈ*Av.`)o?9{]QU4`|K1mr֊,)=pO@jJS_~ +=^!C֙d~š'?Y'>9AyzMtϞgEfܴ\2 hю3Q]2xiz慗~ߤ*TgrDXpPoΦ{~7jM<=fKH)OձD{ȅ$J2:ms'.N]CPumJ&Q8C"d0j14ƵR%;:*[T}9/!ebҒ<'9̺]X~w\Xo0m c/.5zr8 bN&5n;ƴV{l}Ol'ܦUt^.N.\ц:tkQCtf+øHUFj͐NA z4Ezhqg *yb%%oÛu#1ۓNwa& $ŸWRGGHS{HojZ C(Ftxm4)-n2Χa$} &}9ޤyoLs1H9)RHms'ؼH`o"R^g)ehϛEFy# mqq%Vi"2f is@rR؉,ҦEnΠ6& >rW0++K142 u G)xtK3K,ULV}R5GrA'T#&em,O6ck>ʀi +;WD p5 ^O7.\[C#MyqvQf|7O8U ɦ5g- 2ӁeaB W"qT֖ "EJ% J䰽TT[W0pḶZ{]XsH:I9e:N,Nޤ8fܬsLVFX `w V&wU4#d45L vfdCe(Se8c%\2FelF˘͖1.0]r{/3`1aF0b,%`\X9pg+ ,8_wxUuh2؂&qbr\wяw&=a^;x8N0Ί9?zAI7nfٺinfٺ\7UӄF:TK$@ҝqϏWTG׀$㽸iKPYޢ,[ 1Ȭ%\^z$D&q,kc1f\JO>1FK:* tRQOVۚ)'H&ߛȥvcie`IzVB"Uŧ:z$ÖOJ@%d,tM[Qֱ7jVrH٬Iac)+FqI>n&q,mK3"=բo| :I@,G.>XMpwٻ;eB٠A?ϳW0@ KUUa,o T^BTs3w1hRr?z u:M}zH^NvFF8Vvu7QY8> (]9͕.erDa\daXk1Ƌ *`RQ<1 Yn aۍX9}i`_C͐,85#f*m: ϔ^ u7n'q.&iz-M{-\Uǵsnv1u}C284_^lol\{_nQ5Лk vwTyuPޮ_1Uu4d!<$ӐbKu4W}o݋Jč{ڽPc\]t$ʪ^kmC$ɴe/ʜ}y]K&v]߭nJTO SJ+/Mϋڀ$ YhFM`m$/l)oC&+SϷ沽!;bfS =9tL. b>y䕔׼hDN+MՒ&ʃh|Lt; JK" -B"D=px+-)1ϸ4lL?ZlCR^JyWRxm"jT8EJ==x8W@We/wS2}KgiD. CYY,9u+CCQre2 rEqq4bꭖ=v9̳;2ѺYFGeӝwvN;\Q¦ ^ jn@a&e?#3~Mtʅ'}3%7~nq5ZrIA蛛tׯ'9 ʻ9r- 0+YZ(h^l7⹮CaANpw Ago1 oOMlW⶜O%)F'0>Q cbe6>N]bߑћդZ vôã"_ ]w@0cϸ GGJ}Bɬ6O6hPa[[mϧKVכ > (66xw+sU\ y)ĺp9i.jilNL7|XLy,kS9<[A1/. u\,ƫMf0LS|,,;%DVt $z @].ۨfiw0sOBkIY7Ѡ*ig VI -ttII%7᧏~EJoUz1h;!υH`gMvo4̤^vybqNK9@b[R4 TD3L;#rx큚ߊSDru]:r!7X$}WuBF ֧XU0>H.H$ C^?tqYnLTb˫,ABQ\/BCjQtqFCMh ?7B@3Pj%xEûf{gn${*l?lBo^u7\~ %cG Ru[굩+g1Gr8ߚQfsj#s!mJb$% C?6mbdcll : V9U{&Vr$3맙OLonjþ 0Y([hU-*Ҧ9ņtT8 \+Ū4^'V9IM>e`%^铮Kr V!Ҝy"^ ooل|nό"WNJI)'Oj[ ;(Id2|.(}u!If>Z)t?ߋ9r1=UlVUl0U@;H A%/ " Kw-4]Xu~Ů S̪ Z?fFls/P~V bX^Eވ?Ĺ& /'7"/%4/9RS Q<^i yE2~ҮfRVv!2 l*҆ˆ;:i:LBpzN^x/ǟMoh!'{UFT-rr}S9پk5H 9", d u[N,z^ח[)&%UeC?H&L,xL̼1d f*$L[$8 F(7#cdhi.;Q"?iJIx:J4;8).V`ȲF8z?)捖-~|X1HkҖsեjд`zF);|B4c{䐑p~HyuɖWAŔ2*[n']*-+YbB+y4ƽNNMYpkS|寔Ō]̴2t] .S̓G[h:bBktC)8ۅ.oi͵v߸hiύ[ߛm=RDV_]#ZJ^w3>QӮ׮\к&]1Sc=i@w[0tg׫:v:qVpMb,~ ^*1(;/u+ckެ [zv:lS7۩=N.Zʬ+%M|Rcw @*|E64[GL5J, 8wR驥_^Vr+Z5uj~:z3eJU>Ut&SzJvn|ƴ)f]<36< O~ĹCwv m_:gY :eCilͥyޝ0v8qYt[3cq.qSۀQ`HV跥hmջdLINY'iyYeqi*e\&O^$g*?ɻȘ"&Q*, FvٔMBSnx;q$cK\M1EE ngnx|s'}O>ssral[s ޱ6OVv_q;Qk JnKǟ :c@ ʁ㴄d"6hnG>pZ x<0Q>>NGU'/ǨFN1Igێ܁xV_,_z?:rj]f&(wy@i/U펉V{8=TT{AK.d=-}14=N^ͺhWG {,Y-&rRu~ؗO^c;QQʞ졫/8ZA-A7PwU<x7A,'K6GW|ĸA#>BTdXjH[\f|&-i)SDEw|C ^ԣ'/ME]7 ՏM|]uW04+Paі~?M;J*L.H q*?X0#~kK|d> GC+OQ~OU]s15J^>5~U2vD(KK‘I_r=>ڮA+2sc !\,K 6aaϚ鱙[9Nd_0c<0~zҿ_oQ# zjQ&)U+щoEtZX%_ǫnԇ8u}Уm6WwjBl,luxT<׈_y}D`@O\BC';C/pE,z#+ zBa;/Ԃ0FU`zb ~̥&B~lh@X`WG˛:KKt('%vJ03^&K Rf)`ö#m5<.ѐ]!2^犮tRNfnK5NRMο{/iHѕOYYk-P0;^%Pl˫k0Ɵ*"n§.1F~_Fp.T|6Vc^r.wpA Rsn;/Dw}]r2*'},|?j̋TiHz%ٔc^.?i\Nbb}bm=]+O{z"ElO.*pQ㘧ajp"JU:yLo7WNͪ.p*q$*#y` AۃI;Z l,^H9bh%bE1V-FSK+71P| d".>NaE/|O"5)ev'mΠ&12=-<>高ቶG2Tm|J6*nBJ$:?I%0tL\0qGy1QG*G xU!{P$1~K&lX%)TF*R D-L3LV3dΪ)ѴDOTqIeu>.~rV5朩+/ vaaﻜ Ct'D49Ej:HL:I("Hqڝ?âma1&?]2)kvz\-W|}8MFZAæ1v\"Xslt%Me'ńl20>$G9|8إ44Y[ M8ZVTbդuۓWꎥ$d9&q𑙺8Vz0cf9)),wcG/-N3x@|,W'N4$^T;Wk/^zZYyjmX}ϯz*|sOW_@k+_.ZYr}uY{j/ȤA[e#,_Ҫ.fHmGcU'4)gNdm#jaߤv$]6)٢ؠDZ޿9 'L4 & )/߾<f#&1\^44$u ыQ>ʵ"Gy Օ^&,,gVTXY_n#m!d]\Ⱥ&Vܤx褥~w1yg"8Ի\RoA=<9ǛvW} {֕-L/ٹ!~`+vN,mȣS>:t=Ayλ+ m]18Bc^q(ᙤr]&}Pȧ^j((I NLIHHft $_Xϻ0r x14(cKOfVd3.[a[ 'mTE,lb ' L(U=.ݏ{;5@Aԁo7!W ]Aĥ9&%+41E;T/@LU}`囫qt)AϻāWS6]ZQƨ6;:Y1j\iJEf~mڂ՜o@T-%.9{D2ԹsAUD_̛pGYެ׿3G6yx3܅^ꢎ7 <>PÑ}ݭk,)T59{A|2jBAE|CE<3k'5sʸQ'R?'HA}15ƬvNÏsgrfPo 4\zW^eA| q : ( ؕx[TKYh^~26^\2xw02k6 {9n2kwf9^=Hnž`ᆺ r ӹ*RF_$Rۊ*z{yG !! ***lo<M]e; @fHKbCzDـ`pLrE,;7z=JNW֟X~]Q]Ka٢!J ]L4:a`W䝷2OZo1 77% ]y\o;*fv$@K!d UuN30g!"FeFO&euY /V_\vQt5OlAJ"!F SkeVg/S/2.]= ɕ@1W/(_GB[ [_ [0@% RVcG/P4Ŷ1uPlGT9oJ5.Ʃ|VMPLYθHë􎅘߸oY*cw;҃(A8p"V& B]Zdł u)zT3$;!dW~jEGV^`Lu~ Ym PX z(;X-qB\;Cqs4NnR|%S?l|F $5~6lm#4cL5b,=}%EnWK,<"-g*!>Ġ&-:d˨#ɶ`w5GaIPsJaiHCx:W {,GxuX.n(N>pCneu r`Œ% O VГ#vl<$BbߟD*3ߣzܯqޗz;hB] ;MO[.$Ah_NQ74Pt9`xJsًAG\!-(e7. OME d`zuAܺl(~%/ik"_E "v\|FJjZߙ*/ƕB(Qe J(u7Q*d|< < ?}&O^Ɨ2r䊏uO9x+LAq \eͯ2vCfB1NY R/=D~[3!ՀhKF YVWy 5eo.oƋ=2+wfUS,kD54d^Mz[&pΤ-r:!UƳ2ůDvɷkcqiL꭯P:XkciQu` @PT:ƜѳzYnK~gF7r ׹$Bfy iK ER l:a?FCt@t˘KٍDhj.jv|J| /Ї8I:MggF=UfTy_RiwĢ ǻhâwgcutlass_headers.h=s8Wh'U[0CH6If倓 g$n|L7`In3nI6NՅjuK2W*-x'߹IuR#f{qЬZ* @ e"Bķ{@ i BGr$ l$"bӖZy"/NxO2F ODj=`Iz(j7*e  S`ƠNes_s%P 9^ 4"Jgԓ42UtຊIJ_ײjJx.TyO,4 hr!:0W'P( 0IT5t#Nҕ%Rr(X3> G纡#C&AULtYV:~Jz*iu`bH7tJQ YFCj {I%RSp` 2Jv H]AE cKT\jGQtVRtP ؎#@0:֩rAsx0p?\qs??_gܮu;t P`(xI,X.~w|@SWr2.2,uʎ30J}YJ3{Ah9RT4tJl׌7mbmbǰ֑{WFtȎ)F> bLcUhA&[8oh2Hz >$ R>{-;wº c-YΜP0@`EIqdڵBˀ.7RJH ߳ 9v 9:CE=EGgyɺI_r!B\;^тI(/Lc!A (m N߹ B2z.t۵'<$CsWϛP+*?W}r{GXAJ*}u%Z e4گ0x7grMn6y ƾWzfdstD态j%]P)broXgۘΥ2:E=`{R۠dNNRaCdAoN7,) EV`mA;)C(`f1a3Y=M46@[P#F1M SdBfnԬw+Bٙ 0-!.F''hv3in2m3~TVc~d$1иE~4nv-C_׹b!X0!]kr.-)!$=YCԃ񺿎d ꥾N q C'k/|-4T}(MtLZ<9(ݯR Ӑa1 09.D/<9p5Ԣa 5/Ց zgu`p)dBÓ7/SFP:WXA=X{Y1;H>&71uo"`ۈ 7F1O(c؄!o1C<6ޘ`^n%^!P"E;8#QG}Ӹd  GrxpZ{%.bB:d2I]ӖPR[tp~A}=n|=n|=n|=n|=n|=n76y?ŝG l{IMp=Ͽ CrI9.=9EE7qE91g6YI n0J1ݺN%IgfֺwVY4xI lnQб#W@8@p4na0Q!A=ZB+(\鿧SUޚR`zW!R" ;;ΎIe7gV?@FhT:_@VfeNKa-j@;p2B2s6~{a=n96 whWQ T E[yKEw#o覼z9L(a>*d>Zq$X^ Sb F[Aa FSQYŃ4|ۑF*ixP4P6 x>ζ=h|W>]Ƨ$h~^BbNvṕI,I7c1p|aM|/uaqӵPMno@$bI16J_6#2%MS ^dia.qMwa*:/I7yCqJBoݫ szyӛ(Z=0v KRKEVwSRAۄ t9 a]hM.xLJJXǺލI7єx׻NnK}Hk  s pSӋ ^m(>\/(3Ȇ}*zӫ$7t_(a ;LEQv;l.ҔEϝ9w䛪4ړZ`pJq]ůUK)cTm~hwvxVI߽{kXR6ĕ9'.q̜:Ch XcgO\}($WQPsoIT;h|N/^/fu9yxF|)oeG @P?*oi7Ev)xJ2vJ)F)|ڬv=N,5q+_j4KM>-f4`&BI~|9 ]Yg2-;ȳ` t[n u24ﳠ 4Ӑ8Ѓd"iHd C;G`/|!wh~ţ~sIߺ*_/Ϣ*ZFNbUi|G/zck('pp5N,\;TjHOOaN= _83v]?j@Q !>`[b&>73Rmm366>J#1=ns=iy#F}mLY8CjjEsb9fEILV$? Dhmsv9,B {a=䰇-.Ck fX.ok y\296t[p 0e~fX[{._NHx߃J}}q4k%?{(^X>{;^g/Mg/g/g/*g/Vg/g*zj)F3!PCb¹Q8IWS )K5ŪrRwo_Լ]҄X̅‚=on[ I3 0/cתgS@c8 ՆP4C}CHt["Un{^mf2 > t$OJYnUҷ)UL?ᅯEoYt+\-)Fږķ^$6y&רeVɥb ?Xd5.ل6GYX"v -XG2"2"V2 iyjaU6v2 Eڥ|]EIHKV }Et8Ma?"лw?!frK|A ~ϩըv G2ދq\`:O E~*x3 Q'^EH;#I72G _~CIդC\j E hLZ4?9vY^0elVj4DR#IPZ({"jP>N}6:W9فuxJra6ajdh0rձ oײ `$0h/^QJS@YE38(j"/|/8dЎ,ɽ:" _lNTI"pO\ =fcoC﮽XO.\N@ÃCWvpѷkyL(]| lOw-k1G Mm"loo)ݩ=M2s}ygw'k;3׫rr%;m|%Q'O\DAAv3_F8eTFHeUAPAUTAU ` `]l -vCRBNO>e%rny8\۪XCtdc[ өwwsԇm |M\IxUqGu![q`MF?G$fRBYBmjیL1*>˘cMK"F<k ѵC{1C /=QLy̘'G Kczk֋z^1ęcKs!! u^tZVNLw{*U (jQEgԪGzj:8d>.JeԟOdc_ a1qo-YaǚqK+D^#viRl%KSek?l,GQ{_ **p1k[ 􄬳`.CKU/ZgZ)l~Prp:!.Bx;pry_tT\%+xR:([Żr_j_ 4d]d 60`m 62`3 64`Sm 66hssu ltfmx0>sn*aDJ|0Ra`L[ZTeSV^ c& YA^YztTPS%)){ԛZ/i^ζ{KֶѶ"mKYVm+YFfl{ +hrֶdaì8F=oTQ磬8Ddm磬2R$<:NiNSTO9:7NiVNSJ*ܧ$֩r|J*$yJr*$2wJҖ*^$X$I)Ԁ`dbUɋY5;oq(Tp`7 NLErV-D'AT h!NE78ʬkE V4R/ueF<'0Ԏ$uXm}ksƍZc Ec/ei8X#X)WTxȀ6iޠUָwJ=X|`ڨ?^)?GRR@#rOhqlqZR'([TZ*[Ʒ8PburULhA8X&`u0%x~(eJ:JJC3㑋wa/??7O;)ݹlo쯆t.'f8{kgc Hk=:|^|DetE:D@xMST~ !FGT2SO Bȗ2ڟKݟ:i~QlXY3ƕJ 'P<̏(GqEXNFG(V@q7? Ń>Xs0(@1,, sa~F.9} Pp*_]X]X]3hF裃(,(_XX_g2zφTZFB@nBV2(T=ӲF%/@ Xv6{0XZf` -/rLeN2ٴߜegZB-"Ŏ E4E. {D.j,k(V;/r`D7/rs\65>Ή\>k52/ry)N ̋\"jLi(?'r,`?/rP˼][٣9dDD.jbZ[q0I-R9(hTBWSuB* C% &7l0d`/خoXnYx] wVME//KDOI^٩+x%2C杍6 TFdR5BLdJ7@m\Sh}̥B h+ ],]-]K>svy4O,Gʼeso>b}#AG*Py,&Cyd U摡b2TG*Pe]L*b2; .&CaJߕnz"W ~bAA4Sxu<]eP;~ltnS}j|J#j8*qcql`pњ TТ #*՛T \&8 u`.f#6Xabr2CVl:)Fۈ+ X(- ~}t6+$OzּrAs\*i?O6gzMzg&Xc㎁mf-6Trp\< BPx؃Y]؍vTQ?SGYTo*k9{JKуJUJ;3ZZ~s{\q=v ҇ ; ;]tMrMf-B|"@JL@fPq_}$5{CwP_ @`!?Vt /S2Xg0Jw/@H4d0uEJ!䡫CS/\}Q$njDѯXo*83Ko흜OzD]U?fߞEa|nv+ NNTX(+SI8ױ};j MU jtE 4fR &+FZ_;up=V4͵q{ "@T1ĻsKt9"ˌJoj,Z_w w'AWzU֩iޗ.ݙ`Affmmmgјc2.- c5gyz^ExQVkƄk0x2JrZإQo _"Bz 4{{{cr T9N K\u7"a kh8T?i z>ay>N^^kgnтF1ȏSjxfYwn&;fx>17Ch_ɢ[@1j=^-kiZ2oP]!4X ` {Cf kfbgCyq T`R2!.Owew8\qT8ބy'nBhxJW;h N٘nj]Cư0Tm7-S[Ir`01MP [#ާ0>B2QLfX]5i:#>5P&S=Ik?@;Rn_}83[ |g6WQ6vC7R:c Qk dXEN@PdbqW>Bzlk 'rp%[ MH!{j-Pm!ŀwzHm- *FŸ 80 ;ٌb PgI8Zzy9 %J|9*d?Tk_vޞ4Z $ ˬ'~aACJ`X2 0KiY)kCEMV+i: &xo`'Nbz9qth&H ]~LH(Z)37?DqW..0>UX6\X907ޒR 4ofhRzZWku[>QۊQcEE hqǼM €syWce3j̟&75إu!{ܜϵPc4i2w] Lz=Ձ?]8჻p>.^ ڗUď?0 t *!xVEqlo;B軂 b Xf 3JɁ"!0+WX 2_$zc^bquH9EYE' SMjH ÇQf a6x̠ ьYf`^wzm EK"N ɨ)gR?Ӡm$:{0\\?6g`mdbqcoP:o<<>;m<lh@1hF(wq3N 6;@Y|hXp"ۃ́0 sЁlg^fϧWd{)xF)x܍ kd6J;3I>=hi5uhUt靱1?gߺ@)b~28u8#&´S:qAD"`WmNAPٛ{v /ނ>x\`oʇymt번NbLZqq +b,!$饏Ƈ(BJl¨Ǿҭ(.#!=ĈP1?Ds,Ԙ)hD` lY"A#JX JA4' ӹ8??kwDZzk*X>y}߂1E <xf87b^gA\Xm~>< 0>>E1) on[W4?oLǦM^c= n•5a!sf-4͑JoNi{oUf"k7}[ILqhA PlsdRsK>\nC G=r灯ۧoug$!c%}۩U[{Db>>;@,IArײ{Vj?@ к*-@]lpCCI"25#ӺfZќ.4A{vN"/.|LJRۆ;(&$2A蠞yR~l>q-+iw6Vhh{޷ywnGs_ޭYlF5Kz ÙND݂Ŝ*;8D'6o.٠[ﳭ?cّimNxf_b Rvx9\Ҿ_ń9vl{nF[1Džw.:Smz*C4u]SDŽN]3>~wnK,['z}˄ugAKY@sf1xwcS'$A{r_XS a\lW-W^|ܔ ? Wު֚1dW,ɤ$`O)1\waIt!#Z_%(A}|Xf6  Q*:ET ٍ=.:CY k' ^!Ea?47$1c5:io)T.Sʣ|λ'r^^Or)E1HN^dPC7ӤgaY.߃um;*"HE{%(8)y9<РƴCrv2l|hzIeC#a ƅ/ejkx[{u9߂`A@ q4mz5Kp0/NO<u3ڱݗ,BOy>1s5 Bv'Suqvrae0yr[`. 7 L{^, %7l;dSsyL5A,c8hsܭ Qh`e/=s4r9T_^MB]`pĭϵ99$Wg:5kw؞ej,nQ A1$ٝ41t vɖ/c%"k[D+Dkˁ2fq5;g_?b%zH];44k9(Cj$VAPn*eFfF*db?UxzVO'>=ɀ3vB 8ìoKLǍZ:W` =w'z SL(i2yvҜ2ޥ={ *HhXV<eOVl'V)a?u捱bwZ+ؓ鶉"ؗۏ'ኜ0 wk_!>׫?˼awcJ7&N2qllzis&tVd38%Зoֽ KQ%qV \fBms&ޙU.-$A NW&fUncݐq<%v1cgt:q_xN9]}ۃG;+۽} v.ek1?ߩʈ#Ȭ#ۉWa.gmu W&|2U #BfZRCk0s}%*Xs.(Ģ!G"hwLá7lO6CYگR_LqQv=8t>.Z<\hώ%exz;۳i ;2!G܊YR/mУ4fAX:X_bu?ɵS_NsySJOv"vaB1n+R~JG/oGF+ƒ:bg?>8z[AUh`rP+PA8r|zĊDR,[6뵟` IȩIbT|Tۘa5ZlF37*PجRxA>&AWۭF FQZmzbٞ]q̞j 0xP}V+.bogCko.Ǭ\^תcr-/rX#K y(A] C%6߅]gE0RV\a/yG;%z?o:9ٖ5U} ǻw3Gy//+VҶ/[xhx [6%N8ZBs@ZkX`"3P,/N8y!1Zupձx+ RPMVt#>GU1x1 ^c|;1+Fξ'~ͨ8!<GД !HXFni9O G}D~GPRdQE_fC29Ղ)3&K_ʐ 5Ћ;;reke̐U&X>SYޢY.S2BPJmDrz2ș |=QªLG0GG~P*eNfY:mtZwZ~(gs-@9%hC,ZfؔE%o#t)Xa`к5~1bv?sDh)< tx VM@) C#Kۆ!cmt|J8m[0@̢栊A/__/X W^xqvBethSr9O^': T/@`ˑ7 nA޾DWoH|-@O NLgF'rMɊ3z++hKRssX ZHN ,]x]},/èؐcaOEc]IoQw4d0BSoCm}h8wU;NvOXxk]Ҹ2$a{4_ ^[ G`(Ao;6<ϩexP𪶇tFii J4F ̀E|K[!.a12KJyO(%7C8wN9v/5w0,7a ʧL,<9%l$z0D^=-H\'gŤDy`]σj$G4oJЩL0!~pS D2O" ·օEW.PwlEK x00\m,Ӌf5 ! B*Mj>;(^V԰jY?yOG=╤3<9O$d.7 쾄LP`$gּ4zcnI*:LJZudj)lÌbo gXV|c`Ա-WTg;Tiq~mev=;>{9خjANgXOYWv3mS,-O[IhBŽaYk\4ܻ_ٌ%Qc&2G_ZL,(# Ta)$#C,Hc`i'Ǿ3GA6c84S,(US ϊLgјKC fwG1$v@/6"cASfc^v 㸻$37 UNT۽*>mE3r;E;e6+gt[VtYU=w$djc sw(0״y吒gw[v`; $(H[v>=ڄfE1;|bp,eCRq[`\v[g?4Zlұ~oxgÒ5~ ?z9] ~# NW\"'Ӿ=F O&{h` ]`@ #; m؟DN:_ l۫W>B%ƿY< %qo J$& Oe xvKLIx{T/1c@y٢ 8(IK2W܅Q](W:/L{ޤRINpU/WuƿIZMqC.՗c&LyF',!8oAH悏H*ʝ2)6a\|%H 3yVO*ԬSB|ԹeLH׬6H/H:5 2ްS>眲!:.v~c7+1<o,5VY^ƌDdo"t֢AL:^hQwa;gg_jҴ]4YXךv]1QSo Yy ]vyyFEQs{=I4x E?\@e8\_bq7;)."L,' k2FLtQuw.f,qlUx\AsAT]^+H#)DVߢiRUh'4GIGY´frdȩ;I¿ܽ`zxFxJdSZrKىc;%䧺8eL@{5˞ CIǹzM?ͶㇴB㙍;C%j#xY%ծ kLAw4pY!Je~=6E;i{7je E(!tQ z+&ʌ$g>|koR 8҅ZsvMmcC+}-ǐC !])E;H5@ 5ȸcE.CGz7x`cSa);ʖյO<}v(*ҳK&A]|O%.k0ɎZmHdl'=rӟ')h|~VG>~pNnٍ)Xsx4%L(C`l_g>0(쇻5Ÿ,IR[w,&h4c"7U$h֧X4}$ txndQRe*.MDÞSvtPxϹfͅ9Tg2Eԩȱht` f{1dz1aQ0\">VGYy6n,gBo\Qٮ' 4J8hXnϨf=jwnWrp;ןI%SJ͋J{ 9k$_|̶o#V{W8B|{˂&U1WG- oo9heB03uIGS:|O?= $7G)LbCu8>`"@3LCNE~o-|ubu._1(C@#R(vc T#X%,ȴc5RM+Aן}Vs*Y/MM,|;g571&;01Nff1Ç olAGHwvexdS !^NddƒAc,刼zi qC*?59 Y$+1FSݏz#/k)1읳shVrafTƂhlc25} .-Hh;9}+m=?1y%m5xE2#ZVsdJBs/j6'N b*|(5PlU2/OPc;oe؄-`M=*7Q*aibD*[cBKYm*C.1fJ~pylxBhTIƅ9!Y}A8 ~q#:ޮX!z'ݭRqHUs#}1+bJ\u÷WxV;amjt_Մ6jfFV;-<ԵKc|k ݑܢcYdj2X8hVMN -O`-p_5,$2t.gN`V_0 ȼC_{G4fቲB1O݅ 3@b@՝9w+"]@kbnw5m bffvp!-1YY1HOjm6i؁B5q$Q@ ~ p”=4{&J8/2ZҵЬ3ְҜ<5SǥQ,"Pjx^+p˒ګF[ݙ0Ҋ &2V0Ȓ}GM+\P,N}yf_ L1xfZ(ý GF(1bu8)/Hy'vvl-Lʐ<{OH$b `tud#ԜklLom+Qݹ1Q*svhTvކj Ɍ9'㯨hAepvH^\\]W#ۦD-6%dp;CsvDW0PB}x|WFMyYEɣI;2YN@cٯb|f|Xų]\ˤmݻ--o>c ޖK;e д]5RXFӛ<3.‰Jso zd['*KB UM4fEҫU;dVAU/~哆ՍU׬*OX6'N.f4.,D(y?2PJ=cyއn u Q*gQE_I =[88k|̴;0c$wuls-&M%5q zuL {q%2vcf`6? wB+S&8b?$eKJ5zѺb;, ~-̫k 4ַ`޶ƝF6XVO g ɪwYF o;}kZՎ50N0ggTh^rp@ ssߟB j6 XTf8ض +y@~34Mdwc%bvNώڦ3i4;h{#j#*mnƇ)5vrMIG-1S|NFԅm倾y^B1pӥ]I8RgSۙ+ s]`I1; &DLQ9aC)xf[0Nv= `K`ʉ*Ԅ8R9/-JGR9װ&YB"򬀱Sf?蟬dT>T!]ڿVF3buӺE'woJ$Yn<c/f?nqKgh@:P=JYTJK5>oi28I#Ҹ(hڟ ĜXpZʛp]d6` ׉Brw0Pkv8-b:],Ĺ1۶/JAH Cק g6^0N^2K"OI҅22cvGBI!n$V z60+x%,bk+ZY?*'4Т'B敖 pSK/NOgq7 H 2T: ( |oA7,`:XFD)ǜ30P2xQ/lJyHTMLc(gkΆy%,=4:DFyVشe& ضdep?1B7ȆWwrNH3i냉 VOѝ3j&ۆ^¤~:Tһ1 I1*R qYPo6lvK{j@>d?]+bE!2bEHDX 1 YƦIL4 bj72~PL IC&A%)L@WSV+9մՠA7;RiAA!f\)QFbY3@LJdkI8 p XK`1}Z_=XZҏ7AT$. K* ![i|M. iQ5 '_c|Vk11:Sj6X)s&$ f rwh&804bllKNU2yv1κNk>2Ub/Z f֨<oO+ǻ'Ќ} l:!Ő89N62*A67ߩ-94*^ e܀7&Ac"8a5iDxhH~st<&ƦCcfL<4\'q;HY'ۏ3g( Μqg/ALF 12f# 44,젭 $8L|S/iݴi21|`BW8hPh^p Dk'QH~=quJ:6=5!bHișxtz<0KXV%+ƕ"L⨪VK~Tk؞LR-5fAZp$aS5 /]L5° 2 ܔ&o3{teLj]l3[wAoJ9\D0߼g{."dc.Ǿ CrhRaH鳻(} 76@It![sy&8Η)M m'ˤTD&5Zlp@x50=!vl Ql’xѻM-M\$}X6}+.̪;I3Z 4 EԺM>ROpcyO U F}/(lwy"cѻ/(O' gcy_aIF ٓ><^!MRYm2owhE>|xƫb6ֻy3ƲλuYmy Kg{)@*gR.}0jB" 3ڧgp>=@LwB\g gg22 lŒxI1Ӊ9%NPGdu(iOk'P<Ӛ btت<~|ܮw:g'1 ͐v$f9⫙}*gɚm%[&}n-:3$dXK0 2$-SIBL}Pϒ֐=n^ML (dk.Q.YW]J>?/nvV%_>=u=v&dLA M133Ew4:jC {~>bɖi?-A2y%=.WfډUL{J?`Z{dIV@ui' vV L[ g $O@!S: g tCRהL)g'=K5Yn2A!%iN"NKh)03Eg%:S?[;1N@R;OHH^, >6qCNxkj׍Q Δ=,5LLJh6/;,`A<,y˔K2n30kgfjڼ8Nˏ&7~22m @I1F#Z]?TbOZ>Ձxl,Z=PlW WUg. /4\Ff턪҆4UT~ =fOw:_!FW;<ЋFK+l+GEZrxsὩKE$ZT`ÿ*)cݩsԇ^VHwD bp+x yvӍ rQ)Aae%o*p7Zx@#^-ɅE#5o9IOiCS-YJJ]__ǍA+wh7>={@ղт7˽QR9:/<8:==#c{D9WUvv+GG/h=,핏v/+ƏjN0yY)ʕR>T"c|~1rjPQg讘]Y#^\yyw[;/va/]c{o?E@FFD040n68z"1&Ő2a@!& RQFpnFx{AxR9ɀa:Oa&n>9K0ڧa?Ce< 3ؼN4p|xs׬?,!֯JCXy_9H ^Qx,{þSSu*;*2sq)ɋ[s[y7=ٹNy><\$Azlb=QWfKo_?k+>I7 , NF{8jZ{6,3ڢKk{f 芼K@;R)nyk﫥{jXpt nXsCjh:TDؽKS_(C=5} W LG/>{MvT0)-J#HױaC3^'xho:&?P9?P' ܟg |! @Hq1Q9'8}N2t©9s.(97bNMlO> p{O@ǀ~p4(4QO? G#^'3 Jͦ|Mm3wQ6#m܌pfq3f,.7lnF܌et3fQf7#nfw3qQepTǨrl+M'sh}qk;_uǞѝf&m ;i$a6Z $7ڸ:6;p= 33W5ޟqvzy9z!$]> ^'[CFg3m 5NmJ!9vdvf8vd6vͫ1]&4zz'[w'Zy@XxT ʕ_~-KϟԟӋR`JB ht"#d}tK @:ԍ<"K? Ez#`'t*SA=뿅a&!:rgBkjYu〡s}fx6o2{ٵl/oo7]kfMI" ۷c1~0"Ɨ&Z:/zscS,coc@_{ZͶK69tm lk. xTFsc,k7aw3!-zOk3nk0C_;2D N0JSuxNY(l.YI .moy%H/ J@_#afW/ Z SbjCK$VXz-+7L.x@>Y1oRS]cEp#V3Ba3]W@~]̨GѺkf}<`P8x|,0Ȃ)EݏrP@.yXZG1)FD=OGkEWD}}̧/Ƣ,cġ]9ƶ~S;g}!0q| yǑ~F}nd6rpA=>A 6SoM #R-ݹih:␦,w, .oG dg#C{|Vac @`S_ǒ> ji?>99A*>U+WlC6`_~G>" ӶIfq#2g4%5bd{дG AB ?$?!U+|N&BO ͹{Xo(ӐYݐ-oR̦jc{_ñwҕ(a!3k >X8ʈ\ˆ:~QyK<67V1&A1{c3`5}0 $Yy#){6gڥBix\S˝ ?wvI5g!=pFEMz==sDtCE4۬D[I̟5o## mrQ#yf8o/ yq#>ϗy&>/s5xqWB @3oxETP'B5{4aF2)NƖ>sL\PmX&. 1Hrn`bdwyVxc6  M]2o OрGslbn}ZJ4?FT{oL-38;ea`bOsЭXfU[F/h aC(]w\A\Z}L29[v[ɰK<ٳX beYQ!y-9]DH]&EY`m}3KqSeҀff# SwrR=4Dmi'H/ǫz'*yZhq^laς[icK)jYrx2i@@#0rZVZ{#kIQoMd(0&,y%/FNNwbҿ.QJr^H3="{]?PșuGoH<'y%7ßq?n=ԮrÎuKwNK`N׻ -I>W|E~%\Wj5jHRJw?|qu1{+5X{iy?(_{څ6~6`;,lc?5AEo`V#l}%p*t^_tWgRk=Y\LCW8[*t%һKAz7io%:E7{KA/ }nh{Aw6 d?@{+ߋi?ېCBْuZا?z,},hVU2ߡV-T%,eKΖ~U-a5/>◯ \+x5BOLӞinY6w#zs ~/cYYzh8ip54kw^?פ}p9fuwvz 1MOc{)Q(n!`@~ |Ƌ( JN 83wF֧r}fdJ>l>ϸUof p3ʻV eYK6:ׂ#鯨W~rF^d2EqzNϓqJۋbbl^Dɞ] dpaXmg,'gTv&L`W\٠yr̀Ƌ$4$ZB87y|佅}K֩W`rV2E\'92sĪgj25ߋ?+.vkGpu/7Owdpl 5K$͉ͮ@}_ IsU@C66w9 [ft"6G_M:,eE/疂rX q).ūKm. }xՋ1tGӟuhXS~bu1dtw ?iJTCWMSw~e8acCLxv ˱ej?H~xA(9b,|?s*WS/jRpR8nTY]6Z;Viрt PP3 .j.OBJe}n1QFrEg&x.p:5k>am֡mY-NPSlubgG60j}8QGf tK_ Œmpabѡ \ <Ђ~aޚ#ىG"aR0pvև.XB1,cn>p 5VmVx=ܤyhgmqzl<]muΖh՚Ǎև- `hFEmhv#Y}h6_Kma'gmWFYmkN]7:fqZ?SjxIU}N] hq]uqo5 :Z\T_ HNԎ0OAE F]?E7:"pUNBEl'ZS; .'DGNz.+ywڿ`uPؠ;Y1irݥlxw#IpD qc[lq[/?'ͳ. S5סc<9X?yк:ODT ocԉؿ/7ŻEXjOfO0@ћS6kIa#^ҳ7XK?,4f ⾀@F f;yd:u֧b76j<7{WkзueZakS\ ™AD/Z۰Q`q-|Ƹua,/X~`| u7#_R_S,S 1Lj,RIЊf\N _׎a$V84ysH! {F@Hf N)Mqi)n5HT-ǧeM&řßB`?+EuǑ'D`O8T0~r*3@ ?c5h' :#״-T+2CPߘӐbC*l> b9alNl!떎EwN zln(JjF w0Ђ5x+~B@l ZdY]U?246!AO.?O.wяs >tY*8KF,{{84h5 %ÖG]B5cy@t=^_Sl?F[ zVqmF~X#۟ mkBWR4tS:UOhBc 9u9WǴQܨTc dcD֖ |{e]_n/}E|'mKpiFcǭGA +:.n`Ʌ,sP7Ybve F{hICNYw:bqW[v6%\ԈeIKBl9qjܲ%hN, qIX- p1<^\ BʷݖnT8dvt*ye::4Gg?/9}Ang0sg?,;LlVqN064%j}Oʥk1M~Z%iI~Z%$8.wɶe&|Y2c0[u/_C}T]{O Bk^PWmњ~U6 -q4sON*1己4NxRᭇmCVmE'bĀIVQ ]2FkW's~<'s{yjY:;C$N X5;²ѨN.ɺ"tmtx{`ܘ\;O;ObX?-OousXcqhxg*!Zr}`@Aa\Kc5FV #Cڰ(Jj6TZz<,)h^5j[PUb=xmۥ.Hm63otR1|9`!+t54CZzqb|ω-_*EX=)=kmJg z!C&4 `측 $5 c /65s-U=r oFXTS=ed0ɯ^Mt oniw-lŏ ŢOݢ֙ړ+})04 3b>NuW|˜wxz ''(yܤ *@fq20%/d%ѭmӻz7ufF]cIc3j],[R 0b۳U@c5C)RAn='9$-_1ot*n1t%1u~cb>Xd;2EM{zm z.X׽v_ m_ “S+EgݳW{cSlpXIhiU޶pWR,-XC,|;Az/??f5a)+.@2K l շg(*݁>16ıv>]Xdfr*8S]!\b*,"b⚯  (\~=szKUPW%X LW* Pl-,oiG񎾩zF Ċ՞Vwک*jϞi>Z%00U.6E?BLK%0@<,SRHKdjSXG/+ҡʳs[!zDU<πDy*Y[}YOo`_?qq ZmI^]&ܢK>X6b 0΋%7BN+E$芭]5Z@WoZd;FXU*cYbD-+ [quBPF fQg(U}eK%F񧌄~ ]&$t@2C[*ue^7$nyjw+itƀW[Njgu _8n t÷o-X5r/_E][,moP;Cys I CZ0*,w 2qex-L10sS^)n-kS|͊m GKU;^92VIt>\)ʇ Z $?9 Ï{}zZ|/mhkA&aѭm%sqؓfrukul8~Cƒ/od{&xRG9mlYƸHG'Gr ^r/xzntV{XWrVmk.AI` veWz̓8K%7٨{}F!q+|Ir׊+ջjCw 3^VY`9V#d@) ]}}xXӍDo"MVw]G޼pyuG+<7/__Gߌ/_]`6ډ){1|L\K#[&-2=տfc"bCp!XL֎p)~֎PH x["&,@ 6<kǦrƖ=ǹZcZM,!'ѡ̐$Atx\Qڍ(J#gA)!Gh"-zZk@}zsoLM S5{lk ^IebˤcHT@ kjwl&908s'@~a&' /AvkZ66nc&$NH zm zi|+tخk^b =#_%k# yYDy~n[U%~rN<骇'3< |xIS`% ia?dg#p` )bIF*:N ȹ#p mBU? +Et~h߫L_&G4XX>D} hmZZd 0Tٍ ,KƔFy=.i);J޼~M+ GdJ<^z6^K7e&KɎl8DJ% C)d٭dssC:i`e!nE(T|e nU#DG*pYȶ_ )[Br!>S~UJ{3D@=Ľ rԀ-ph--Qw Bi/Ũk\2AÐ_ph3k j2Rq}Lh }M&?g[j?:ATj#cD.qXk9"ll+׍M ;f43!;Ƈ8M0䤕SYxHrKdbAFv'Ad^9 -Q#|'£UEXу_&ާ@tCd9`ǟ6e`c- Ffo؃8jmirt5vLuH=Wd]q0QF bck }=ɣ&y+FR|ټ͊J$/mKSN}AB1MÑy_Wyc ]_ֹ'q_Vp>f5H)G(M~b_0d:3ѣ*|F2l>'1lP4ʼn3Rf02%$J14x ! 6>x=U<22Mui *8zvIsKHkf{x$LNr+׷@B݆JPFŋ{I3Z"޽D{;c6iY%07Z%Z*Cv⚩g *kmamzoNFF <Exh̳9y'Ҏ`|>÷Bax#Πa}$0mj[se8@>SV<-ڛ7W.?ڱ>3d x}[b扝]!+YXꥱ,+D]Wb kx ͞+g~Aֱ"(m7w't+-FvE7̧t=1ġ2 <qbO]߻a>|' < c:A_ lyؒXf@.P@W+jh[^oA PjD;R]tn2? |F7+6j]tOWpF^׮uk=q`6~0uRxL"P{'Z!{Kc/mL;.]n2#?ogŻh tN˳VKYOUv1 *h <e^n|ϑOJ"-quh fP;zT0U[gSF]klI'tpOs҈z&ބ;21j80SnOԡ>gٿf'y>|F  H9gzxA:@k ׆>@4B(G СezɑB.f0_~g79@wr-h?Z~rLUo)툻k*B%ru@_.|[BAqذp$YkrdJ.p𖝙n2J5 G`wО!:/Po'%d3t,gF k+ h,|{f3@lr1foghY MNR򞃸4)w>(çV WGB:7{~?hoSz<={O v&Y8Q3}YҶ;#sV s{(67Un)jkҜJVi[P 4U:(0Epתu2<[`hF^=uᙕ̂cl}قܺ4`z61meK!A:0 7 a cN Qh/*&UEh؆vh;+bY%Ga-8k0>휑Y hvq<'Ө-H=<kc6޳U60ɍ #d˳|&,V$Y1PoIp71u?; u[}jPh"5FovE\\N{GKepV XQ2}@7IJ}\1w W!4.# reRhN0+a!ҡ$8 75PZc#D: уwVJÝC СcϮG{Z/ZuA9/ks㨭/t NpWԾSo2 #EuO\~\5{=9뱥 z؂=Q%ME<yDG{\5(XyӫtCvNl '^nȫkt B) d ֞/t_Y.7l?C+ڱ26Ʈ}rИfw~,%p(&2,m8h&Ԟ+Lg9-m};cS$:;{9m%[.;.A""<Bj}I S;_І'*B7 gؽ2[fWRy\ `q?m`^y=cpXpoR*OcxYW0nrS_^Vhœe#Nrԟ8ԨX9][ko)lx$e6clD S{{lmcBz8P5Z?>W,E]ͦ~1ǿBmtGkka3ׁ>b/6G#!s Y@ 1 7=""0p1 ~'"@77Bv&/!˸qP/SH@4X)-*T)ZPhh0Ĩ7e?np9ؿ>0(w͚i,) ȬO\ ˗V*1xM\6ϓ\ĿČOc1XI\6Ŀgql~3+ivNq|>]`Y!6"#3srf7+V=o?4ϩvb/.# I/ۗt8{-![ A |h!>J"6?t>Q\QXq-ZدkҤDh1Z'B+VH>b9$5uCKP򛵀R=eˊss8+/[Vr8 AI(ґe^LdW k( Q!\Q;-ByA|󜋻ΫE!>VA\χe*с~% >'.F n-Atcz 3(͉˲E3DՈs|ֿLxD8RE*Zn)`1XÊc;`1Ӊj Yڊ_:vF:~u4- @A, bÁrֿOmgp9fҜ0gO_*5bpEDJ䱯LεJLdn?:Vyɱ뻠##KآY};¿q"j-aD%%kX 79J@t ɛ?ГF1*s˟p뇸yDM* @7 .߳DO( έ>\v4񇹛Yb$mX(I '0^$G^b.k[#Z-׍:~(nc.!6h4µL,G^F%}+ ӚTt{HhF( p `LȫSpHLzIPX [Zܒ`TVx=I\=f zd=|G ;*ivZe%7bFNNTwj2փQOĦE۶bg# H cB\IӵZuT:}5${YV^|%QB ))v$/=$"-Qk$'byZ#X5źTIF^[z\6fsK5ݍSh# yýCK'ui!#*\=:Bd`rlɷYbp7eP~XȜ-,BE44b"ȍ :%eM9,9 R8\>/Zj>Sq|Jfʈȩ1#FdxN%]]kl\@Cn<"|=0TF{^i,W̷"f43岇"@ eKomI܌טOK-Z_cVS4fCĞ`J;%G \s8`Z5vQW3D'6E/*2aeiDF-1 =1Ir+|7PjG\-qƻ,J3$KlerePZ}+%l|#A5BǏc CX&>ͷ3́aMu9֛0G7Dgny }Bw]$Q!{l2 R8bMȹ{ٿ5 ]efނ HEcg;ڱ x LEׁb8{ Ot]@g A7q2X.g2qw X8~k9 X343%="P| (5 bșa׬I͐89XBgL\*d۾aܧ1Dę& ɞ9}C(an"woܙ`(1/$Δ?1!#{mؖEs"!"vrГ֏5O1ZCbѤf˒G>)iH=* W0)yݓ2X SM2lcMd)y&1j^C\1JvNݍLZ,[G2` s2{l Dʤgu.}<2^21pҽ18-c=ul2mz?Ƅ*n}0uveN_kSX%2Hq2-&[PNമxœa+9_qgnvEOA*1f6D#^}ҫKѫ8-RwAP&|gHր4+LU,LA,S>HWA_=aBO֞A[^8#b)~*cd,QMMhLh2fM+2B ^` NMt` v}G"N!g KPDʙ˶0X@b0c jK}ݝ>'=<={g;r)]xibIfL]GչH)NOJ瘝3iHS)F1'wթ9ߚV}>g(>c:6{pvCIJq{,'n4 EĚvz%) ,[8>c63⪘hlL|1x3f3r%YQݘ#0DnKo{M<No/ QFG_sر^{A^a?ݵм^a? o0Cv:RCT"n)-tζ`=&sͪT㭉cƆ0r9oTs)p*s 1b+=Y$AmtWRN*ĺb^ p{/ NR udBI%㷕=_UR!qZw/ULlxd,](GJ09\ƵͨLպc)L-S_>dF!ֺK5}<leLp1/hy98~vHoAB[LFoOTMpٿ)O}vU:kR*W~ 6M~5] :G~R{B=6]smLĬjX1`}HNMIIݱ.%.i1H:8My&V<ݾN/GYbB ~̾<ǖ#n-fc Rv`_X x9^h*O4;w6ӹC\s{N^粛K.a-d.d/O43,#^?UTQr%&]~]d_.每 <0oL7Cfu<ս ;Zؙy SgL *rT/]ۚMJZtS7qc:uT =HKꉢNXN2In\(GX~+;_WlW}KMd)j 0[Ck^c|ݎШI.1ҌAkk%jlmYetJnqx#+HқO+vdRH$R:([֏W<jYLP-VG59 xΊN=s[B*De7RݱlC1=_L'WR?yl_Y2O 7k4W֬DV+VeŖqE< 9. dhͷGeز5X"iL J#9Ce@͞">J<,8'[r}(yY!7Vydt T : KqZNnˣu"\\Er Q;`UD VKگϓ1inأ(Ī\Ί.\e`DzZQQUw8-5cTC2e(+4:g~&\yfyQ9Zgezܹ3o' Zd|Lu?j %Z{B}'jg}ZgS'oghZxpugݮ'lO1 (e3>Qv^[}+{މh/3{܉㾕/(kJ 'tan!od^׹f7F&S,}̷=uYh72*5zߊ;2M*U4+-8gmވ]x"&q?6fTᬋ-|"tq}7"qÊgcl<|$/ "߈Ďk-Ez oDPr$߅Թ}oDF↵a-~3.)"sc߈$l-%1C >KJrΆ$/H "XN: MfR36\jZgILpvY|G(S`XO 4QYWJ$TYG ha r?5h@qŒtWSf{wyL_[Fb`s(d |mMSٙ|>r=Rl]]W y$c5U!.0ZSc`rXdZ35eLs1-p\IП hJ]L`\xeX~0Se_bZ/FvY.-11u_fxO7A0't} 4DsX_f'Qt.@k+cx,c{*.&xYG m}iN5G|Cs.V?@ĥ@(< xx*J51rgM$.a1LϦ~iZHポ;еyPňY:G)fד%N5Mhf{$ F190z{)3}TbOA3N˹a06w%ATN` y#L.l:5L9R7"S)q&-<DN [jؔ kQCo>uOZ=𑲇ĚkXK s=hC yڷf"\m0\)iml`4Ԟ_*kuy=w@ҦZJRZǍ*r@fټҴei!Du qZg+ZLk¿NLpG<YO}*&Ha sa؎ ˼sifϱwv0&pp-, as f G h;^[]|oP(< S Myݨw/Yq\ouզ(Nb草\d"A@G :Bki145 lM*4`ʽA>hFc =@AdhăTgG5=ǟ?AArThw-# `h [;#sM1!pm:  nR3ųԀ˧(&}m%& gX:jU[_n}9M(ݏu|m4Z7U?S-iz:vK?֝Flthg'@qqToW7 ؝_:uO5Нjlj8"3vLCi7j]mO1nqSkV0j)>n@>洐2[@ZFpit2ɇEh5Z'mh) LNƯW۠y.նGqi,A>kq]Q|ʰyq)AOtrw.]ITkup|ޭbc=i#Uy=-Ԫh6>[}=]&@vA3 PZud6P pJYG s{Lz0U3jC޷ kp۠!pa+;rE+t]XI5!ҡD[|M y[e56B3;e+D!eQUă#63i(b$2آU NVk$ddCk`)%,6W~9[,p DЎqIMZ*4# #وȞx~&yԔ+M >`抑9> 0>zo8)\lr6iփ]Ԟ=$ J\.674G;JznYvr0.,N0O.M_JJDv>z*9`2Htmhρ Z[.0/°ufLa@&1)C"w0!~ ofSII#'ZT>O m2Q_Œ$L5m_!v.\?މ&:Ml׎H}wHDW$l4lo >\X(;w]$rްHlslN}A gm!GQL){/jV$ڇօdiCקKXa0\‘"l㇟& GpU-&rRVW (E$=~Y3wlRGu`mpPc\`tׅSbUnRݴpX\\uO +\XA|5om+-\GT%ᬂ&!*BڎLdpbLr'FAB8jJJWFUNQYܵkm#5zf`Mtao|@6wQy񟛬5|{Y*WfL/O/!T(]IueaUBG|rAC>gz!90]89B$Y8g' 5WHXy=Ɯ:0oG3Ӛ/:h{#m;thրĆ^l7 ^ӏjnw19 aHeB4}}b1:紉"B_J/)=7k+oo}rNm҆M]}psR~'1 Iw}L {~z#^<{zQ #QD 4J*JzI¨>~Bay݆e6Rz9S䉬x3LPN;۷bmCӉ_t{`Wc@d^ǽrg,S4u?p<Θ DdJPFj `[X]-Sfe1c;4OnH^<7os>-PxaN J59E+FLW{j8oNXn1q@UARM^&dviWyAuR(jo}]VZkgo7OT{juQvv~@gBvmk=GE:22w5XQֱG ] %VtA/ {枔q֙%\T>KIN"ape*H"ѣ }3,"ˡسt8ޒ(X'{8Aϰ*`D6M-͵imD`Ҽčdr*{V2GGO‚[^Jw'''EZu8AmXc?Y0%ooHg4yd)bm^VIMvvܧz=k;ڼ]<#*hMgR>!޽Bc3:̹.`P9 Asw.yF3k^j`]eS+?-c]Z wn]gv 0l^d/@!(}FM<0_. oٖnTzJ FVtytRb9S' i7" GCkZ-{Ň[v{n5h_*1ۭx‹zA'3gbs<ń7RU`l<'vwg{M<Ӭ,"7md0gC / ~WfK}@{-f=ѳ0:K vm䢤-%c)R (e 5Vdy8 VB46 | Z%\_ DY&k=mE-<=rt57;]~]s(GVt7CT >s~tn_uκ:k;Pøi_ )wpg\|_9yKy` w%nCmx"{y(= < :,{f%LA4GwqAq%r|Khٱ"g.ܞ(g+mS4{{7xL΂幫r/b9#=]%8Dʊ2`Sۨٺsgv|F3k^]%wLo8y#Ry n>3|JB4'E*hxs@ s>*˒"hH$TTJXB<!Kb*(<Ҟ_Ң> (|OU(X (gG%X;'`/֋m=Dy k+ s$8C 4@Y FyrphճߺjTXg%5N~q]eq䏘ȃI,m<4_u3Ru[L+{QTҋE?M086q)RDr)Zٕƣ޽6Sǡqm{%ȟt]i2Xo OSIaB$x`xϰk8IeCS](!U-*BEPJr 2uTmQ$oyOyxJuwtiԝGQ~ƛx4P`OLp-:x.9+J|$rw߁/MWy\kP&6x.dH;{ԙXs)]`"~ꯓ>I+ WE |XoXvzkLV?mPkұ{aI^Oސ4"!N??\|+E{6E|n:V#[ζn'>=~SiqȓȑOXP@8'B' ʎT q (s Qٍ'A / j8&.; M( 7W`4eƿk>`2wg,疡D:r(WNz0cFBȋ>GL  ';6M] -LAc\eyGK WCIB{5#ԗِrD?Pybxs OG Up3({gx#yں?uH[g\|mN'S'=F$| MeXu25Gӭ~/C5 ۬ 5>eU= ;# KoaxfiFA?Ơ(1'?{`%`A5qyiv6\UL>ğḅPM,D$C-*iySa}ُ&"@$J)^ʋڭd܋ {M,CbTрǀ"x;9,x۷Ϟ*Gb s㏲NKW*[<޿0{\ޕ{\b*%6hP|r<ܘ-] >*~UR֪J8ƕF-5fd/F% OE ہFCw/q^hG$eS)_I!N &”e41V#EXw<ȝ)(~$bzd$y%K><- R?߇u0~Pe ƭC`5aŞ"}*SYi6|v7Q`ISФ2?Qgzy)Ɲʺ жL %e*6ԫמEoȬSGmCf{!2|K暯r5fI "'iaU-\"vܒ{45L2t;Wzn6#VOBw,i7!p!CsC8VF།7.0.X`ܚ>̖YaYewkWf ɇ4f)K2D=DS8|CL7+j?M$-eISWSTϫ9V-(?BkJEPhW w@K]U)qZ\lRu(~-zZv(\p6|lsI:؋&k)8^crbKWN WPNvJct>Day˛rfΒfLӜ+ރtUk_쌃 4L-O2};;tcW[c]Ɍw(q t¿o!f%&fZ1sdڢS2\?3QxݚkgItj.8<͉WXb:W#[j +-m,d{X$mҝ+C<+gs[~focZFw"&ٚ T{rJtr_ȝMfjss!6ȃAlT VTϳ}Aa=[=ȝ+G+ڌEUɦ`?zTS5m bm۔wzW\x||V99"'5Zu\U&ŭ\tl,qBZƭ)_wKe\ppp P:q?FgMVh$3qLaZ9q<40l''Fˉx%8#YѮ+QkϕWIGp*WII7ѝhX?59#灩9H7AD`r2sM3Ԥ(HOwY.hLAqϞTk&ț2(Sz+tP^}(֎38S= xԟZҏ9X7-E*42(bŕɷ-{{VwvXsZs1>Π._]{9;t'ZJOIyš#>Ee1еU 3tBb\OFQo[%nW|/O*s:q>[!v܉Wk _sU\ }>RJјXVL%+[=7goLL @ {F @YXEڏ!)iFSKom7Z'_8MO4Kp%NtJntGD5} @?1PBMU{ocogtkVR$ϓ4yJ ;С[s0U 9z-ޭ8I>u^> ޗx{W`=GtQ]s!<&լ;ti ~ܛM@zmnMSk`ߎ5zNАiwٍMˡu/(&و^7{)Q7-ʿ<"+ɓWUCT *U>VOj UjYSh0%*6\IYxAD^c !TĖpjaO#j9ݗ=ZDkEؒ2dBlE+˄|#]x{d )9(lZ(2 W6. ˥ l~SGtǔc8UNϫFNLL(35^JYA]KI%CBw`P(K9w&7JƱ$%9OHט^76؟%we|ы4UfY ]b,.G+KW*4[cVggŗK۶)o`1 vM[+vy}W}` D(" ux! $R3 e[@|_ C@| `.cWA|k`.cB|`.cBV,[Q.Q\Z-)SIfi(I;_%]v$Ki)GZ#<Ρ{IAV@ `)&w$<%/d04CDͩ0,kjߔ_BIEwxzQ2g Y2ieS?6$uUI:~NRWnk-WK$uut╦a\uc-5jݤ$.CRGnҽXC=3a=+AA.FyG=F3kHzOH+EKePNd|DuiY#.?$h#=}>޻{L4/ ٤20oINY/YZ)/:I$Y[5ty}E |qÒ1l|(h-\,Ib-z\<Rg-'eY8,*'Fj*h`AEʰ .Ue/+)_N/h b2_D')(\n~c2 OpfT:: ' ,{GLng8qoye8zsxST \]ANQXԞJÓ  t'<)#TrŢ\\&b#n oDG@-l_J_œ)PѪVlܟ0ZZV+s N[)+vL |͖60{W1qexW6U^\+"ЊmO6㛛И#Cຈk`VnÌ*W+HA"-뜴VҒsqT~!1I'jx-~~65Ikk;5m V[q"Rl#M߾8q[4?7URJ36j$DE-X-%g%C%h7Lo5;Ohlfi742㷒%=7̙O<{e j3fg̀d2moc fL&n\s4oa/bHve -,;٪s- hT6Zz(j񿦁KTp=PuX嘏L1U}4B`#4n_+tiGk% fF?ϻg okKR[vt|z煴+~zd’VYDȁי"KWAvAYT$GVԏe>rUR.ѕH:^+ȷZQ;$HXɲyUeଷ ݘkk?*sk~*k6_^a.{xefl2Y2GmFeeϡ̔Z!RV^ɠUP#Ҝ_o>lz^c Q_{$1岷5ֽoXXFPw* -4߻҃UL` #jy,w`;`jZ{ԛ:2 PQ__kk!a {,E{5 :Oֵo5 ׿vǿ֥Iq҃yWm,m(K {7޵$[2ؒΪ4wj~hoFm"pubHޭnޤ.ᾏwu%Y'qÑW~F'wc`tUm\6~ox񊮆֝ ХYCZk3OlF]fyXd] Wdi;̱!Uv5ab"$mɟ6ΉGy=c4' Ɓ;i^{$B-lpJp,P(ĮP\E(ZŢYmrЮ}BXsxiO84/a@]$%'Qf qF񳝎9g$rMG_fN2HcBSϹjyёsIcX3 jh)5Wך66%MI˚ {ypHm%}n:4¾pM&ؽfV7oWf#zFh6 4y4D(zƮk\E( Ǯt\E(ǮQ\E(*(K!C.裧 nf|rg\&m i6~Fx/;Ω'1J]9.˼"vwWe4sҜդ)Ne?(0efG5fřa_nͱIAZ×*j$ޛLo=]_]kPb^56@pej9~"a(6]d)2I~광$kh裓.^.kY>Ȩ0?b#HebW(Q4ʪEQ/0(7u|)i-F՞a)5^6>̺WqȺxe֟8_sͩ4Y̩F (EdiCMh,Reu_,:QT}0B,Y! T/_Mq7DZ/0d-L6JBL׶%O%\2܇cAuIza[y[#ƪ 0Q&>dõ4D?|w:>;h5D'~RQ >;h&Ζ2Am-"C!SSySi0 `#-zރ3GyXw{iv<ąh F%_X'+eh^NX14NjޛcPtNUn}0ũml{xFL3QeƒǓh#,!iȾcM aEKj7ͮs?7qgk &C9}\sCvCsB0ӆ c7۰BR@=7ϠzZh$NJUi o 9@gV[x_MsНZĉ0QI0 %~rL%I^4۷n'dyzK"p^>~5<+ZKKtN߿uSK,0XV0/{.xJ*zsyPy#5gI߄NלFua/d@ ; 2 V~wV?+iՇڃK_8 fcԾСNJhR{> a9}:n//*Y :`$N.{`V7lbD<@>*/@Px@x:h(0 rmXץے%h$-CӞ9u9:<&Wp_S Ho˕ ޷8:QFй `qk+`Zt  ewy*{.g J26 uZLr/h1Y BTX4Qn1&{w.X>Z ЏQ3.Bؐd{)`ȃ q@`c#ʉQvv&^2m)d{ I#=8$8BL_URڊβIA9mnTYcxq?!WY_së1a& `h G/;8nG4ؐDbzD}0RqP|PO+\js&sJeju;֭H@0^[O -pu'W w#*}X9! l t2,VIC" ݮD`t#K0g0B tu-?ZkApwԻP2k8c axJ;i*Gš܀i\ޫ*nC 4bBpŨ+)p2 g B" ׯƪr!A8F )P'-U\Q@䄍\7+T 8 $hkse6" su)8*!FBVj[141`XQjgUTBgP9mۈ4.}2!!jhT=R^haR!M^ X'@5ݠ:d[P;MvZLyZ+#3ԩ|JLJ$> aL;7 =@̀FߨNأX#o%G_LŢC>MDTouZr ѷk,*@וɬpVfʆl`\5D,_g_J:* jH۪jY 7a#%/bIMK nh)PӶjף_bEP:G@Ib67xKڤZL|Õ 2j"5iWͰ-sm.5'Inupd-+NAFYoM7oJ IiIdxb ;]TE;7i[_jmrt Mf/}e9t-\2Ek紈:gKl3\n)@UQ(:_#a.Gw:tT6$ĔNA;;/ԋM7T"W néB jETMwj5i.FE< [Ԛ#+7tJZά) Nr,Ag <t\ ªx}Sd0VU6 7tF^xi.v&g@\6vˮ.*[-dRňdP sq$밶6-92҄"-tkK] fJoLzЫ%FYҀImtr?SnA~7o#>J)a~0?zAi>ha6$3CЗljJuk8دn CJj: ʪ<::y{trtq??dl㛓ӳ{óSI qVIF [5Ms4T!ܒ@S"+T~_sl'Lq{ŏiCr@^&⥮_īЪb%KsP,l=}8/ :=^5ZNĭKGt5Z Zs2nuq4嗔E!^k2K6; ] [Iݠ2bΚA*?6sFon|'6Ĺ2=\3h hNV+?o (bv\oqFܦ5J^qKgnؙQӽ 䀫>?pvH \TV2<?4XQO5 ?26uuIuԔ  z`۰fcIod0 G WV" Y .Bdm~*:kM3U`Tjĵ)fWQ|G4:I/aSܦDKTڐaZ͍X97=&^YL?;s2>3s2k 20r!T!Ly"썺~r]xR\qnB}/lt2]6Ta kV.j~twoL^AP?u7.ׅ7Gܝ_n͑Spp7/Eq3&v5W~Ky\wa4^գЉ-\NϷ|{1.'b.̽˝]^Kug_ )#l.I^6𢬹BK:۝/_·m~x^U #H2;ncx- w1i |~2#=OVzhr0z$z\۹:Z뎁=uƚӺkG8$\|2ߎ^5QK47y,?}uoN]uF]u5~Yvɲzwt,t{9!dF0p8>3E- t w㠃-܎w]<@ ^ot3([XtBKp"nIHtb. W)aqtCQQZF?/-h`lG;сv&`v9a{E+08E y'Aԁ 9.WG-wzAB@ P:*!F  muG;FPB)  ۆB]@,_wGۋ_:tx^B>zvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8;8:<9G'N~9Psrz?i7^9}?9:>6]`oOϜ=3G;8:?;zx @χ'cVj4UC/ ѧ} t\s0~8!t`u~?^:{~T"2` &J7?G<ߜ_]|8t~:==@;g8Mo;ǧHkioc#BóU`/@ tJVӳ_^$!{!su+c`fF"TlKɍ:29d _r&z]__^ԗr2DNAubS^qa_Б;qKOY-쑇 IGSȁ;J0,$H}eDeNX?y5rLJI*`\֫C(F1SKKhxQF eF ?9C1V\=Ԃ, w+la1JDAF% 1()!R9i~1'GeqPcX2:'*L)M4Hf4SQ( C%"XWDdQ>t?D JA 6-F7Y>g !7fqz{42n |e,s @qA1Yz̰ Ƭ.O7dD[<؅hoK)1.\ּ=> Î!9n>M0 dSEeH|VfPjxBE|j +iB5( 5'( bqhҢbDF/sT$+0ma_XՅl0DhI,",L vIijH|^97"E ;fYQc4e .f46saq3ZIr5XRd8V%Ʋ'7i6C]r \s\njfX8κ,ι ng4[F?ou) n9=~ǻ4rzQdcǑ&ؚ͘T nxE;lL^dlLVrbIAgL&%T/ %$VJi$^D Q^3(MC$y]$s2 K2)8 '{7 u1pՐS N< KQsQ0ϥgгpY8,z= CO&`׷Ĩ\!2;GucKӬ:cbϐЅ}iH2|inزr _ٓ<%4 wwiI xy*:\Oz- v 9Qgוֹ&a5Mxٴ%n=F|)ڍ9pxF,ѱŽzk6/ST]L|JmSN?(Q|>t |dKC*5Ucġ8Irʎ rKpXYU!1ӡC@cp 0IuK0 tA`Y ;6>֑%Q.HKb^I:^8,E"t|4`Èv|N#6ӈT4ֈLg4RN#R42iFL,AxqdzO8.۳wpDqqŠ|#]qD.TqDA9;לCqe&aJWxRMIKٖklkD-6y_DbXx_*oJQIq.9BE\* KU$r'-6S3fƓ%uHh<1B2 M@*a#: SiKRPHwo )  ԝ2i/<&Dܬ'WK(Be4\cxLp!RccpûwuM;{o]/\=w Gwhys~P=B%`- n!|Br>!X#s 8"A>!d*?  {Va&CP%l}>GA#֘a.؈:;#G]#e}AA- wa'c_ɟ],~> z2!,\YpP=gkc뒹 zm$X#nRw~Q`zD/6{d9\{2ᖳ89κ4|vx %(|l`03h>--H~|ŧ*~C|7߻x~%Qk]%Q֥On-l-D"W}<#)r_@uX*\[D oWjwմ(%NŸl Fhx%5Q\=4pr{;H*ݤؤtzEK0Cx%.;Gh8%\j뉓[o`~md`NO`6z/zR-wbeR]=oG39PEN,st72 E;I2-0`QkY j؈&BҢ200 (3ڧ8{iEt`#IE6e$M#c~/uRشiRTNtajǶQ¡vd(/Bj)љo PA7c6aF m=::+K'b_ץ4͸k&~%Syj7"UMk\V#X_JtDse'^bKe^tH&* .CP|3MН\t |EKa !i!!WxQ$eGB݅|b^Sx0/%!즐hpU/P[$K^ d־W2!׹kCY_ph`ՎS"^gDw4L 5蜹%_;]C] ICN dt ![lmAʶZ7p Z8˒: V!{\KΏ[D^NC8O}1S;ZlC#Sqȷ0Q7ٵJos;n9wͱIeF|V-Fo;ǶI$㉥PV"3g zUqe.(fٙ:~H؂<;)cGOKfͲ֖ꮧ8u 3u:q4]&FP2ʣIMxrH> Z0#UrNl5HP|z'֬::WYWU6Tm^om9#EǗU2/ Njen[+WJ@qmԋJKNLS"ƕgtal_GNh@`E^[&W6Nz-oJ䎦hh(쨼cYVf3SU*mP~w1rstxЁ"(J}ܾq"WHZh#~ :egfsF.AH-h=qZ>CɪC%0;YME#j98*-6ڀ%Ldo[ jMqBi( 0!fgJ_Z%>[Lc; ,\k|&6S:ěDݏ#.k2w5S-O̼0iwGo/.1X1oW?ԯ06?WCE,&3^< 7+` E5- %GlAZj7i3y|F6Ko QD&d8f~KRyA*^_6VEWI|!n:$K.{@d\UV%Lt-A_?<ڌg6VHљU:9?EJX&-n ¯_ 1^QW:I*v\Uz}[Ώ?{EM {̜~DءĞ3L7X՚JD[A&*~HҤ $X{ȩR׬6ӕWLE&yPBPOjw_U*"#LG) b1 ?t{6o%[V?vL17"v$qK)U%l ;8)`&8X[9Zn,tOTwf_ ;t>57[M6bCLCKN{ qF}ٕ3zMՐ`+h=׆xBஒ7vR %QR֖>.,^AV`,85T-)|CoąqHL*K\R-t )#V'q-Ci&u5evKfEkjD6r }n0ˣ|}.5s({s gjՔO\1& FFGh+1">Z{T]>ݎ**BQ 4S${aح<羙2-/kmQOu4ϏX)῭}:|ryfCW׷8#_ގb-XcƻQ:c=1zF TC^:rۤ9-iI*IeTۑm8zNDj\qۈ1JO,b5F&+-%"- o)Q,Q,QviاY> ' ciXHd ;!叝LLZ[Bt8eJF@R63&8gﵮ'M,2J*òEhB5Ѡ̺s,1wO:Z<}5$[YRAbӺLj0;{v b\&L(;Tڀ&Gثi6%ʆccBD4Vɭ[Zi8+p/z*8qZM=N$'a8'q|I qҜ9N*)}xZb{رSA_%,)%11oH/8Gză$TS$DLyARlAU h3옗~"mI'qDQ$I`g:zS$xZNNq8IJc'IBSũThq*8Z 8yiE$4"9L/D>R|~D5_(gIY^R|+F)@@CjfI Qe57- %4bV8eKiieV8eK)Vpj De]I g_,5~4S2b);K~ w-%~w΁K\='F"g%Hʚ/3g=!GG-e%#;H Q~AU oKYvH7_SB-,jh+˗#\j˩]B]%r+HЫ ወ/l_DԦ\ T65Y.$6iRVIئ#j3FV|F噌[ej .J$tĔځΩ/R(AE[EMP*ΚUĔފ$TDV SM+9L4T&ӡBL]$ʩbz(L "E t h) xz&)A)uOfdJ '?QB1bO~BcHo+꒭3d-rM"c΀ć>7H$ym^mPuc>uD%9k;仺궻Gdk/H7)U׫\TX -*ǧtvI;-7({ZΘYYlkC!jo?JϑW!q:MMջf/"]ml[T-)&GglԚGKsڛ5ILݫ6 ;~0C4d2%\45YS|%g3eXڨ<[Q XV䒻ȸhmfl@T ƅ㼌Zz(8_ [#ΐ>(U% `ũ"FEi#!$N[ .0o`{ 4vAS ZtieSq F\ZlT_z)s1o<؉fNX3>F&^\y1%ۇQfTU]mlUQsN~>:8sO>],;{=@ :P VttxԽද:Ap8Z\v\w5Gt/NN^u>VPs0%wM jn9= *;J˃~0ZCna pt 83ΰM.o+;l0a&0\00:#$:(!+̋.w0 V # f1 T'Bezvӻ ٹwrOO.Ύ|8Ρ3bW_ϝ3l#8'5dO5pNN/GvqZ#Ƌ9ogޛ㣋_Il s>]<;s>|:ع㽣ˀ4aX :wptv]>sp?:wk Ȁ:?/{?A*%#o/.>^:? 3ηsB5hb Uyη *0`+a`ٯX/!(_>T_Ȑ$ɅY㣟O)VattG_ُ([Uhk[g#DϏcg?~p vߗnpe3 z!o}C@i惙Y7uJ@Ӎ`%E)_,MYQ/phF@8ߢܣB<Ӈt)v AV ʢ{!5R}eUF50n:fPXMʅѥ$&zyNGU}x0r| fWIxE0404N_˷b/MgkIOOQiJP7| 1l7}ak?0?m7Ks{4)+A=Q**G{Ka*2Rvv,k9zӡ&2*?y"?`c22%XeK-T.fr9ol{_#?fqn"OwqO#:cѪє#6s ZM2bHbHXƥo1cd1}r TDiWӃf3y8̮/v]p$^}'4>-EךzY#o!rUy ۡ zs?Z&RР̲T<G`Gfq\ʄau*r% M)cjX%IfY+''Y=Xj>UUf8M{,^q^RyF~Xkm<qYj˞3ho8?3t.'޸s*G7[*/ I)G(iy+{߂A/Jxx.NS9~|4 BEV`cz\8gkc>;#(0yBGjcfkD1 n![r07Vt\TU [Vk?`#X 3Q4" WS{hb?A=i>/~(Y eFc0e(xaRoҾ''O=Zy#CRUVkNt2B"x-.ʝ uLo֛Sœ$@%i)x2BMOl)+%b|[ V52LʯjP?~O1E(LGlŽs$;tZJ +4a,gs9t;YuͿD7#$ h2"FQp<0oK2X:Ƚ6RQJ&ejEKY2.@/12#9At$|!R0V䚪2ф$Dj uoAxyA1_ 5jPUQL F'7g.(<{Ľ^SlcT]~o+s-KP.0< ei~DxO㘖{AgF_k?lc}(h ;tL$ pp͞fb (Gp8>vm5GEvR|T~]b[s7\1a/J z ~Ǩ\ ¯ 6dw@ቔ.>?ȉHu!fv flË4aI؝J3ЌT? nh8){gy`†x2è^$@+maE_PFlYIStBDWHk}<6E(bC V1MsDZR9-F\HI$aITqa:wF wf1q\Me$aVL IbEtIfqjoG03t}˽-̘u:v`* FdiaeZw`{ 5tZ.Ɠ)U":JkiMŝWv~F`ВQRs? x;}[_\Rcqԥ uI[ǁ3rNNX;7] b0y_ %9#T}PewU% Z_B5DCCKcƀW -|`.5A.@](]n`b+jP .dQ1:ϐ(s?eeg xܓ5WDT2}2y/.5eszWrtb{1иkKK ǫ.H14L Y(\0nhW½g$)Qܓ[N&rl1e]t˻L3'0$0e +[wZ㘫9f>q0d,+ @y嫼TyK #2me[ŀsKx?U(*3(.c_Pڲ}L 邼-L M(G9KFm4}`70+>G?/;BB(` @.QSMn hsx[l[!*nt|A@Tby=v[Js8`,("XMݩ`X2MKL,4Q's1DTssf? $Q\oL?Z|!>M\p*.<̊PN!mv h_eDc՟o؜M_b]zwpgX-;GzM׻ uc~aB !$? o8>uS0=]Oi??#ӹ""὏/[yHgB)kt*3Rodx*b¼*_S|^A@U0l~9яFl7"'-⨲YrRCTj*kIhXYD&0vA0i|2R,'aMt;EMia`EEoC-߿ږe5ƴw|cQq'_.q-DIB^}jɃbw={AH H?&~ުع*O A ڟ|C a-'m`ҁ|c)z2W¥\fb-ӵ<-39t5 eiYۡʡ >ht3Xʻ\T&K\#MqkD[ë= qq}ƊdJۮ\GErjG5|v&VUʨW -ސ '\NBI bJ{Y%׼-IO}YR?7o,U]n9Bb\?gd)s2cl7zhf8u>wp9SMRv,9]<#Bك捦 * EH{8iD|GXD-ؤSm#%2| B1è&)cZ/A8rPS%"h{10r#;%Awv]S} NѫxÝ]Zk60vDWbZJXXУ0 Cjea>vn;euo6B`pE¯㈯B7 zq!܏oߣ[,Gj&Y?Q `Z9Ԝvl}R]*ʠz%-?oZbݰӒ_b|_L,ȋhi/x[mː?:cjoDP_ъ& M2XG烩x&ɢ_ъ& Ʒj柨 ir@ʨG=Z*BAU?Vs_3Mve)[<).:Ԋ"4ZotF3Kx Լ ]6Јz[NƻXܦpe?" /u|&B*Oe6-JJ-KRGѯS+uͤKXOI;oFq`Gb* -*r.q6IDj/'p%@/)M6ר&hpTaw1,6 H etSȕ2h 0MEr(ƯJ(YH\s6\0jOt&oC^ qt넊dߣW%DvX3~z4ijpw]K؇/j^B\R^uf7ߥ zѿ.t'Q:I^{}c/c`˘>PucVx%E*|sVDX 'tV{JJ"U(&7N!JS2RX{Raۜ+Tbg+`HV) 6p/*^4kuJEG#MX H)7}ؽmVa0(^J@kK,S$r[1H279hB_GQ>|ATEaÎ&y9J aȠoqK*{ı]J`cs2`.cŐ6ayKo1Dky*dLM(9kJٶsy|lllllll<9[<=^k0J|uMpQ_!FdBu*olll="yO5oCv%.5d7A0i~FZ_HLL3JѓZJryo[s9:zptU".ZDq6 M}ӕ\HTJz,\wQDر(b,KYLKEwP}X֖xupd8~#/N_DFIVBaDmrKeՒxU1{tndTFm%ouU|GD[$◬F,9Z!}PaE! {[ !tEoUqt̄kT}Ltu;@vByx+z}8, \ 5xKk%J]œzIaK ghvxQeԳK5]5ء6~!rрHx M( /UQ˪ꮦ`\]yOT=)sb*^$}ra2F+1Zyy$M;:>Mjv*-16"HNpg¥":/Gb"DV2!\V2^,vpp7_,;P,O' &꧷NM.~:4_tC4'&  &0QУ2)5whc$&σ^v>VE %\W< Qoizl,9?dƔ{!aOq=%.ɠ-Cnb6ƌ!c03FRX)3dtq<[A9t4AnXAi@x(RȜv0"K dȢH%Mvax,d;'YrqO.у"-^,R2uݫ.>oIN9/1 OQ@7/ !=>b_/>ި}Q7u1d^ nӧX>6TsǨrގklS ǘ7IV-PG6/kMԁqJ,I8ԅ;D\ /^ r zT/}:4%7g=;n-еo/ߵOPWe4Ͽ +m6jvt"nQDZRRMC'֝vВ?`^5+U"DA ZR4D'mq). _d``TK@f q0*%ӉLkpYќ#);κ)c:Ǫ{1DD^ƅL8!f-aJ;f%%zm,QnY@G1#M̡챒s5^٩"D3&ucDGMgit(ѱ !O/ڊ^)詑s:pq0mڊPh)6d,qSp&x^G#xa8=F,k;6%~RRTJ\;bz6e(Q͓*8K C-qqc-9G:$gh3@K4z1,ޓ"/6<.QDNg4dqa1fVv46xF>HG^WJJWWa0*NPzSD?(^ߑc͋Zi9/KVR̜Hv&8N^-i+ɼu<kO%Y fĬN>VqI;c?=8C>I]sL,P*r fPոN{v9Qgh? WrX;1LJj&[ Q].5U/qh]@v= -(d4(ӓti[*S>yz9e~YT"[~[{ -x=Z][b6%$.).cdcؿ` a3 H}c. q'~˹TWf,yT+vޠbrнÅձ:2d8'o̎xizȝPfVAH?&+ caz|'G`}+z`C ` w2 :Pg?^]uNi4X1ѱ<2H4&HhZZ8iJxMbc+S XdIl#.'M'JỲDRU;'YA1/K2>yPPy†vcNuv;@k'ai[n͓klQ_L»N7c*kjgYNCS Hl-U@7*m,,Յ8Ygї^j{ŷ f+Z߻JVa[ ^L1^E,pVзajGX5OI,Z C3d–=^]E20`Q[ݢ[ $ǭ\D4՘G&D:ԗݜ\C6!&a>f6C; iaI~iMi+~u8~o6%ZxOb:;#W3)轰쟀e_%nkChDn: J1YUy,Һ֖J]KGBx96. sZWLh4ju|%1:"-uɗxub! r|WkrtN0Qy.M|LKd-s'&4ٮ,~[VLtCn(|^6f&=Iv%y-!2[6}.{'wi*|V\=J+$!s2xU(ǔ<$|{le}*OLeqJ CsRMIקOeJv;,㫸_-/? {Vݑ3[}cT_JWhC'Yl|8&vesvaΈL @kP'`,?Z} [7 6id jcn[-g6 oa-,>;Qo7X{lt?~"ͽ'h}9+,5M=N_ɲWMZjd`ki|f,I5Rw,c c .>m$\JC.(Q$X%Bk $:۾'XPᖬŷ2.6 !}wh  Y  b3ʴ2Kxʛ}4s3ɦ.yx5 3E{a?CZ b)F3t"y)_?fZŮ2~s|*oa@2|kJ W3fӯ,cpW,`a_/ qw1FRK`8pyi09^TluYu*Jo[?ӳUsG{tB_Y],NidadS]G0tRD&A8 Ԑ[2^©gψ'Vkpwo m]6[fk@ t8E]KY7C٦lX6#)O؄W56ޣ,q";jRxn&{8y$Cîƛ4ܠpJM$D.Ύe2& u})60h4Yc^]mk*Mgc '\tp\^ .{ lс8k_`xbsNח8 Bѐ˴}q '>L0}w#8XzOqM-Tw+UyINױ`p~oIS! ԛz[A޹@QQ.'K8aKܒ |'{+J~b9o&Sk^NizN0Zw: $ `a{t[d; c׮20menq͆[2Je9O^=W%d@7/e0tj4(1$W7-4X]vڐ$ hߍmşȑX5 tñXVa;?^A(#meTșQZ#B9ٟ(v'Az,˔˚c,OT$Zi o]=nU#YDkMp+˗Hy*e_1$1]A2|| lvl~K:ɭʋ,9/}v*pWuwՅAvўzld!' 49CXrtv<a^f״Je Ʌx:z㠃-܎w]rc5)հ~&Ӈ0Ҁ$f0"FNa' '>Jn'^IiNp !;yAMPQZt4vѲhV Gzۙav ޣ9VwORk00\0Aܭ;#$::,F+NF"Zp"%umP0{cxwteЁNCΛ_!ïgG?pޝ;{',7/Ns(;9ׇs [@N.kǃj?=5nsyx9:>6]`oOϜ=3G;8:?;zx @`:Ml|sXuV ;8:;ܿ.D`q9pu;d@rG? ؂gĺ|s~qtIw"^F.HP|o>ZHg?`W_Z@00WA^s~ywϐD`BpR!CB $Rgß~:<SޞbEVKGpD[eH:>UFu~>B<0 ;Fz&3@/~p}}9WntdŘ!n%`0b*]Lt1.TwJ3a c'IW6 )I'⁷".B'G^1ٲ]P< s0½.al5튳g! ^>+KDDQqü)[yE+A2GF`i(]c.δ?AT`8Ff` J6`"5fF3K ƌ@@ f4\ߐ83,*uA!peN>+tŸbvw;d_sÃtUqXBD$8!Cx)jQWnt{ミ/WſVH52Za@!ѳ.9 }t @^E4x{OGVm߶H_K#sov0S]ȗ`483Jrw8ԉj›W`h2[_`=oWWտKt鱊낆'3@,*qs'5|:]z0"pEk]s/$Hi#!PVa {VG$b ;phplpsBCBPFǩ%椚?#@Ga~kYm-gE.9p; 8In upҟ'D<I!/3H3n0W*R޴ڳMóz*~Fgl*@Asa_[EBٟ<; )nކvysqY%P⊃ۂËwK[ȋ_VnA:t,}~6Heaz}Az@GzF24ae^\TsKtkFr3d={*Ѱg#PoE:abחָ y!Ey&&90`%w6ՎL됺£}e3EQ@э<!I6,z_Qʶ.)::E"-Lt۳LJmS!v)TMkꙚSI[)PyTkRQU({sZ7Gƞuè(*ut"uzuwzX߄K#&A96S~dƥz6fZӵ:R7nAV[ 0-M(@3}K ,2QKiESлzƧ_b5k1@{o.:wLߛțl =B U³GZ'T3{WW*uRI5]ȵmNia{I1p8Fz鵾28ۖ"_W^JTXs%fb@V7l@E _w^u&.rf"DkgK!0<2ƗCԄ*]BG27()9# YZ< /9;MyQl̞zo"Lq;eO9Ϡg,n齭[(bSS}T?=1mѷ;GY:;r_ݬFزsH8<Z| |fY;̝Se<\/ΧSF5:gLmUS*)OlC@ oMZsGcJ7 'x9js0 I6X:ѫ`Ēm;zUÛ%}h8erNx2"$kp$/'cnڈtk߹3Vz-K%s(A~wgXCUD@#T$wNgݼtu>ЋG</uᗺK].R~O/dD'@+aTSh^'Kp[=b[S@)jɻ_,a8ѩٹxZhTN>g~QM >w,.ϥz#fin5?!w~ߎ@"hǾK{޿YoiЩ>;]Q㟂~JNF ho_oJH,FUo9L)J%4Cc9AV*[Xe la=ef`G_U#%QDq57Hs~'/1s;aMݑx8nx{@4!w/G:Z7Aݾ𵘳sb^ً96g㼧JW<vHϝ'$ vHx[M3x)t/cE9xw~JG?Q:gϙ<8BuO'$7 %;ƃ!ѕ{ߠhA՟✄Z7XXGbByfy\l^6]܇O)l%I47&`h &[)넾wv!J,'ӔZ,99:y{9q>HdgLl-fhN>htLް* ˻S21 ?_`ޞϵTKH(͐{>;( K4HʣӏDhTxgݓCZ) 6A,πN*|5Xr>.;*G m` M0w3|57gˎXm8 &ǵj(0QkF ns] *w J j}çzIf\]va~I&Z G)Im;,$,=MXlHn,oZţS?O9^/01h#f"NAؼc.e:KsڃWȉI%Ф@j#ݛtH>R'T[5!༧3hդEA^Ģ*e)o!J?E޵KQHVDs?j˟N><T>tŻe]&z@BD䁒B MݎOÐ\dâ7u=t/xwđ`N/ZŔ5& :NՁGEؾr裱 Hczs2 ƃ3re< =<%0.۩!t'z[-ʯE(OFxoʣDh*2 m |o ȥ!DYX5PsҰP*5i(e = 5K&x3uIҴcSs>n"g.Cp4҂_2ȉR(JRU%#H H/DQu$/߬ vu; +Cɗ^B1Y0<#MI%k yH-5~H'1dH*} ^ q\2)Su>*FsTr -򬬲ءvd20Z!APXq]\ %ۆӲ4ë Z%U1:.y1|܀%i;Kτw1"6Tx`-M ^Nj\ Փ\\Ym+/z7Z{g[[?PЬjx}dn?GRt'g\`Bz># a7EXbAkχ ?(DG t'C+Q-QDn'!2)TM3fIMS}'dsFJ+ϩɮs8fv^r)xj6kfE$Z^ fiQP%ӄkpxtu[f.r+xEkr(w tRl/ߙwٟ{w='kM;sM'Kdjd/Bo؟mo6<'{&&_'ГWB~eۥ3_Yu7ɯu7,"3N' Ӎ\dߣ3?Yoߙo?Y Ѕ2d.? 4ٟ4(,IK"'[|咱Hɚ$od.|'_zqE<7{&0sKܟN|H` IȝuXIm⾭tǕ`$يݽ4/l9* Z{?_*w_Ο_37O&;V2iU.È ̲]?E_huܷm? y'J")hmg}~@lsr)kZ0ϠS׶pp6N~<I@j8v g *h;vxҶ!q qE)*4IJhƎ+$INE,hZe"K:o][u}UQ֔v&R R-!BN1sH5h jKhM0!M\8@4y8.dG&ԋ7C4!`%Aծ|1pGvw'Lm,8 &*J:,*6b*aN(GF?V@ D1 R֢ VTb1ucҕJWE}tVx! *EyE0~ Pb v83$ܿ=`2c+uYDn VP|Ԓ@m|)0anДfa;I0>U C`\%W4\ghMBD/t G,!j_snH9LN~=n`Ar`]B.$M$!4]0&ɪ ǚfeFVPP\aCg@%{"|g׹e;r#_rGTaYQݶJKcO@X­rhV;vzUw끷^|6DxGrbΆ=CMKٞPKvxW~5+LB7Շk`'i63E]ei\@|U|YXeҦ,2P55f%f4|z'M=F²2&*/l+KMd)z!IQu0̹͵XQ]QǓhIhB"sL!RNȢ{,*#feQ-9RK5mIה,*g3r/IJkjW}$Ŕ ?Ur .`2˿"*"2.b^W}EYډF⯱jcXX ^z* o9h6~ |h8bkǬSExxLbkDҥ#_>1[>_rO݋!}[NK;U UzH_SO!ySOC p\)ьJ2UEz<_:.bkuvn D#(N^z"cv` +/t 1T$:ŊJ(G):Z!HZD<"gZJ9fuJe0ߵaB*ثrWenvW59kD[嫕 -5S[4Hvŝ/9~|tvF]u"oه3++9)ؤ!u~X01@wK`F= lF=? [ST,QLwEQ) 1%᲎by$I r4 mAIR&jj x򠣡9f@]8:4=[0;x*XL8$:}Xdp*L #H^_`V(-&eo9PVs]bi7SJ7lHK`xÃe{5"iNjR m:jOT"2` &J7?dqo/.>^:?sg|;&n&Π#B+rj I!+1 3A39D7bB<ߤΚrt~Xh˿Sñ$p"$5F譳w"GQgg= i 3+J+0sM 'сwy&1.DcbqI¼9:4``6NXMx.*Tlf&ȓq3~ сvhMN;\l/#d1װ$^æמ?ޓq~/EHJQ-j1Offvlpbmb|715honDc]TFl:/,܎Tw^}D3tHDG)Ba*#xBrBSh^@bZ^ 8xf^BzN{N'Av€Zw6CITbPG1Xb/㭑iPDbmmv ڥNp6gLJ?Db~J bC1uKgж/"9 B2g,|FTU(Ȁhj.dwӽmBདྷeolyfm u&l{00U\U4 ;{0 $϶a flMC8dbG,s &P$[r/YbIdA<` #+jlfQ-Pb'EA SX-ArcǬ3>xClAa)ܥ00u>{'ʘ'̉x 1s gfue.Uk }Bj2'Ff3rD Mmiv֬/i*Usʎ}![TTMY_x/i*#<6l\uTBt q~.^wrtGpaz'蛠P(^]10~H{\ &λ.4Yߥ8A3`+o G?A !BmCwaIz\ 8/] vNQBǗk*_J4T;q>A~KGޏ'qʋBڗR_l *@`:ς>{,yt쵡uJ>^8bBHRx' UbXZ1WgYq:\*ƢE#/Yc2sNM(a::Kˏ+űz&c|Z4_DE6RR='t̤2-2+9Ittc+ȶub3=/X+MZv2 vd:yfL2{%qG-&* "R E+V^& 66Wr+;M|X0ePh8ɚ60 /_3D*ND2${$Ky`)61SPMAd4[ xۙZ5saӽ?s/+12D9o'ޤ{ⶋa8##b29Q[K¶ٞ-ҭ/ASUz޺z+^vo]jġ]~NN#kBxWAEJ w&^cq0=Uz"ᨏۊF,Q0v׸$q `kG%tЊt'_Gxw0l) ySBVjHT J;\O/8 |D3O:c'XY,ĽA1ogG U=)=eŸKgJo7*~1gB0[ykaE cXNpc8OE9̝)ZSQ}LO0vKjN] 9AAsE)tYL0vcИ>,iazq~ @7lP [hwkIS*CAe8IF;u=DE55{8^!6lba4OW,>,Y7 nя`BSvљ7<4HXb2 T`rC.#kg/Nyroƺ:nB+/AQOM7P"hdabwPf82a((P r o9`,揈J/.эL24Ty8\0֒Q_[Av6 [1A̍0cY<(ZxL‹dEsɊ& FLtQcB挐XMF3'W+4n [-{ᖽp;e [6aH O0a i@[/qÌtzh{P"`~tA͚ycmD@H'?q6÷]OrjwӾ!ݡɳ~&A@Rg{ب_>]^oK׵`=j k>]Y{/h^JFb뗿6G@UJig[HxF/ݦHm&: F@F qzpDlogp>23 BX#. 9(ȿK%RZNrCS /hu¼ O7ڱv/G$Z>&_f.9K񣾠eXZdhJU8d}_ _e&Q=OSIvĝFFԇhG8Zw(a^vs; ݾ WnTҙccӶ!4~x:Ip~t8,Ɓg\Ѝto WywOSa qc>Bvő1)m$%0F&UgA N%a3 0Pp[L<ئ֤Ms4o?=Hm!c4o)4IZ) Q8dsݵEC+KDEW8{KqR|i5<]lsP.A'&}ސbs„ӻ`[CtqV}s)M3껡fY4 K<c(fkAd!ɰDbI#`Ըd%Mq f8~$4U4Y+1؈8D3Zf7P0l{7adKKb[{8" Arq$՗Q&[E@ޮ[cѭ-RHڗ.5 tɺ(ny:ڜmGOܕQRu- uԳw-Qz6 uiW͌eH.Ӊ+TdiSE8Oė,2ʰRէèLkQeRec 55%DvS!݉WrNLͶP3dah,_9>4(P(R`rU!IY \Ey^|zC^.54]f^>?5ҙy.a Vr+Jt+2t+QQPG:Y:,Ѧ^63vTil9"Vaɷ R:ₔƬ];W}bX(mItOJRYVsve%3qe>\P$ݜt?oJdۜ]R(2T:[\#sZ)yFލ'F(d+Ňݔ$*{etJƔNY9윲r iVV.Zf3/ii6"Fœw޹;Nov.1.6.IwxlPpKN}vșw ] ;ֆLXnDB2(3s9r-E}N\9;:,6Qa7w*+ChfNePMڌGf37a\༅ \ p˩H6s(W9IP <]B#Qځ/.69M(ˑ-mɐƙѦ0m#[ߡ{{ 4Ava4 CҌ6gܢSתN8^ CB QR&-<*mYţe*W+o,l~^'e1Z{{YfXesn^7oiKc9MCE;(E[:mwwNѕzJr=KsNה.9\s ]\Sx.f3;r6,p ̦oa\z,ٝɛNQds&o~W3')ni^9s3_s|纀P=ٓW.]!K"upυj{s8v9:LMx:B#%qP6k.TӜ؛ '‰=YY=ji$2AQux9Fw" jTcѣ->}5crn8O``Ό~ } 0uo,XCߴߴx7r5GM|ood[1#}̿Oc-c?*WK[}EӚ,豯pN]ұ<>pn9KQ3[G;jKZЫbY3^l Yϓ[ns0JtV% d rJrc6J;5(f.5.\;*_U=h;f 8SJɌݞdF4^' 9 ~q;37dyO)O 0?OUSQ/U1x\2vfn.e[70oYo`Zq;tfؗsSIi^{^SQ>*;&f8С;~ȗd]&WNx;}C%=ZA-em]X~oD>A$ TFY@PћMhV擹wzc qogg 'wIwԓ;UƫStVn.D+]PD.N Ņb YtZ,7iѝ"E=[Kdҵ'Fss $%.;73;tiw#i/u ȵRzʮapgH\yWt[WrML!{2/la2U}θ)3zW"Ff]KIf}L%U25mZWZ36f#qK}–R@ hM!֝'E6*.g)bLQR;[#K;[<㦕9Mfȁ=~$4`ElO`{FF!قE:4!؞4m=5-ϋ W(4G9y%3tYM{GBmfu?_~^P|FǛl$"V2y=ar=9('i)/A}suؤ1ई:l6i*M|^,FqHlKt4fiQ3Z^"-wMYSߥ,i,K'ޓИ8y[=xo)[q9c7ȏ?*O(zO=l҉$#F&?SL#:DW_p(SbjDFYPqfKMRbz|K/Ԍ=Y+;ez`!G3L+94Jq4%J#i$U++ȟƙC'.g.}4m4NY9P3d숝X-3/+Yy"vj[zNgVwF5ws1wP/X"*vO>B(+Bh3&JjcͶ"*4LQz\E!(qQ`? i3^nߎZZ vF0YU/7i1IEL,Cl/9&i<(p81INv&Mͩv j<tz31дpXnN Du68PMG"6܄M*-`?N*NZwQeSvZ7ݰn, J:Y1Y4r(0Hu0`l. `MoXKQH_&ND(MSboD}ulcG T\ԳO3g|61*jU4F%GKn#6\E?%FHgRo^N5|󖦉NLU5**YTك KJnb|UnUWE{Dj[U=1%m3gdVQ3jjuzKZW֌5!zRl#"$Vz-;n/NJ=\c n H]]Dd׵7⍞Ymlvllfff`,R.AMmfմŒ]-/JT@D<5S)Rҁ%+2q Hۗ,y-[fYa#g |ε0ȹL3ה ?4L5"0O5,SZf&90ȏdi۴fZ/3 #Szԁ ҌFK% %1heH[amgŗ1IqO6 Hl@M)li@9(O\ءեonxD)(m r^R A 9@L& †z1bOCKЅ7:lRTpYauh-`w2+?s ןc 9w;e忡KY[n ҞNo>SO>/.sNK=}:ȓ>@VuPZO;Ltfv QBXՁ)$͔ r~ ^Z:&BIgFƼS"P۳MK]Az՞l6!BxڄAGN6!qHЬ+5/[!Z5c:iթS:ЩKKA֧z>]r>bSKyٕmRVJBEGM![ߙ-Crh9W %HR'f(+Z 6j41ب / s>ssTySSYB5-EMeN5㧲gjf b=^VPU$Wao`@:Q6 G.Tp4i8+kt48ETራ6;MR3Xc[i8ff, حݚAު X4m&,֬E/;ғ4sH͓Y(YNSkIҾMvZfMf~'SrT7S^#y٧'4œlCg>p^pްO8NdejT}ѣwJ n|j_/Nc">ocH?cJ~Fx7eO?Ӵ쏙~iI?|,44Y=A ?Mjij4\ޫmEӚ^ 1M:~JJScPK#$,33hU9Dzka=o$AP)$Ce~Ğp|ʅjq#GSu$ _P1*lbe-b(HSy* 2wބ\p?ƥgEVZ S،n$r3KAiMa3Mlh z{q&O2aJ{ ar6gܠSoXOnjr!H(P! ) NTV'Qa0z<'Q@$A X|#;;GNut#‘3ǵ9ݒ9o 1T{Bc+|@X NQn򠑗h zD g B6FF8H2ܒoh/eP^*%k(l9U}2Zq~cS9^JŒ}hrCBfmȼ|Q);Xmxm%^6X3^)Z6mŦm0iaO=[z5~ݦՆVuag!(]Why7 hMae14f8~ư1jP%[cu{:C^TL͍w KW1֡ H* )ϔ1J5U,Vl1J5U,VPS0IP`xSC2XRV Q$aj!%HbDFY$v19_/5,õY(A|sDrD˲ʒ*@WoDUV.{'ʔg &Õg?-AoKr%;P'#d*'w}/6iOU %¾vO"웸u̐sD7o:lXTqi*MC Eϥi.(#x7x<`S},w) l!ҩ7v#nv#gs#8U/,UO4 >"ej")S3H'5D+f[8Wt!(3Bմws2UICA]6 S\KBd-5t ġ;8PMnG"6^n¦E uQC(%kp䨡s($n`݂Πhʮv4ef5ఞ|YKa[ w\s]Ds&sۇJ>N暪_Pr4׸nԁ6`"5("5(&"]OvQ րU}tc- aY:bWtd:*53>m8櫉dx}Q)ka5%=kBz̰%;BQVmENĺ)$k!w5㩄d}ɚëĐb$$͠o1Rق*[3PU\ȭ ԺuCwe67/GJ*s${U^U{{Fmj/j״JIb7beJ/i9ȪܞQY29 " &PE2_f_Ĩ^o2ꯗ+Wnu隲&__xuMtyC{i""p9,b/b/b1,!<)݌&b{Yypgr ^1)f!kz(HD~b#%S++&uDь1.&u!H1ˌIk4x8|ũyFG \nL򵫧iW#R1bRҔǜS%31,КQb }D@5 Xl݈NغhܳyhY -7TSh}"#FpD'uY2οOĒJYfg/-El2odI@Y݆uI@Fؙ|g& |=0߰mJ@:3ds9䌢>E6=b7ȗ09Yr; o)!_b_f2 7i$gJѓ)FO"LnXڍ(d9KFiq3]ϖ"QH@ӦJPYs"MŌ*nBgI,YXҘKY s` /4 -3 Iv!]$NOB%=ׅ!CCpK}Ac0ύ 1fȐdjO|McH#kH/Ad'ٗHL%sdHL%5CyF1OqsD塒8C4S$S1IN"'ɿ)mTz`K}sYftؤ$31,3:lIf4&e 9nVq3oPS;A:6R xbFar\)wRzY`ؚՄ5G D.!i,"q(De]0cvu S]OX8?%9M}Bb,#f%Г.w&[44 :rnV$^O_Ps/@0 _q^aVBv@g.>Cj\VX&Y Ӊk!x#T\L!*# ģJU&l  P{LD?$͸  *1SjL8y{D]VWѫKJʖ1~w0 Gu+#,a gp{ =~A)ȣ14_b_"l!_bUPGǚG6QcuyKViRWs-0WMٿĄ n{۠ݽꂥv@:d1ifg]V-'JEH18Wf Ϣ,R7j` [o.^kZFx+ /+lZi ?Nh L;F >ە5*Tm'fʟṊ,cS :oЪլ yjj&vw( luw3i=$ N _D z@XժQ WJ%'U{Nj՘;шZJ=FZ5N4m)砳B/e+,ʰ|Mw/Ȟ޳jx|%߽IS[X2+Őb&0xE5 ֎π_)fCa(O`jkwe.V%ŷG4\D "cK<<#f!h9-y,Qrj^z 4E$< N0=Xi Rt[[{Oo@oD4!iJb?ʌdՋPGdvP`mlHi=Ie6$ ŌI۽>c0|D".關] C걓([ٵ˭o)OG(bwwۑ y Rݻ쁻vT q^~lG#䁨f=lr5'{ā^*{"i4//aؤfm$#a{k&Β=d_ER뤗R ]i/u7!ahsM{T^*mn򗮡WKƪViV9O4#QB_ň@dȖ.t5g,8&P@젞,Y9*/c>s;+v0O`8n&/8n&8n&8n&8nU7Xc5.3zPlytrg Zry'ԏ$=}$W#7ȋ?jmm2jB/s cFFFAXѢj4hfD-O niJKQZ{e4(Qh]>`潠BJ[ȰsgdإfGa6u ĒB,qQ3)2'oJČ!nRІhq]ܼwu>upZ]b2q%(== ތl;ہvqv#Ц6XmH+"t?yVD bױ6IrܸѸ) &u2za_ yZ(u[Wl'zҪ+FT;Qwf; i&*[Iy[IyoXI *%wĬA3EVbX`՘ 4*^iIin!{լX͖MdY4٫LaBlJf8~~gg GӬ6y=nBchu$>>T!%Y5ono(bʷxqW)PUrMra((zl0ga6 zl+QQr3QzRٖQ=i lĨ4TefL@P# ,cYeӝMʍgr{Rs0JdFb}wDslH}wjZ5 V *XfaaqX(7jZ5 F`pb!W}̍f >5VEj$6:}Yz5Qv8H.Re7lRC ~(MoʕgߨZ%x#I|/>7z}nHY d%^y27enfI3K壑w~|4n/Ow»i瞗ƽƴۓTKS/'4tdg LkђA]Ilxcܐ>2r}BLK֒n-HӒkIe{6F>!yikdᝪ#Fd Z2l[^|Z4KotddP()D Z4D-k gJ )It8)ҵZ- $7 Ggk 6:XW` ņaB8:T7 GW&nDkk8+F<^& y+ ";r;!N|0߉  މ 坸0 ݉  ܉ ŝ0FcHvDM;ӰZ8%וCWsz]Yϡ+9te=ѕKW S|,:YUg=AuTg=Au֓Tg=AuTg=Au֓Tg=Au֓Tg=Qu֧W}m!?yU!ۥUu]ZU!٥Uur]ZU!Uu0ZU!Uu/ZU!Uu&NSBՙЪ:i\D/& a 4)5@hKM  43!IML4ӥRh$Gx ;BҴvjDyŎ4B¨>qcO5ؓؓxE1Wq h7rMv]'6-WDc[1ѭVLt+9&Jn%Dc[5ѭV۲'IIh$>+d0m3Bh:+d+}3by+*5J)Iy+4dVbJlz[Mo+m%6ĦWzрvCj.ӛl[p>JJJJJJJJJJJJ Ш$*ruc`CL]J`3R|dz ;5ǥ9Ȯ-uͿ@hkn#K]&WR}oe@2ݓ/Lo cƬ -@'"ZŐzig|$$)icCmdOuWӧ+>|Zf|`%|^`#||̛ff|`%|"WAK@(3gGh# VFI<}#k[01N|7S3FMnA&jw>z5 JU Po3IYhk6FAŒ4MI6i͵Tef-V5ߚ|yæ vt]1ph` 8` 8[gFV`Vߋ͹Y6סa[g]M 5+ =446&<6nHМ8{QmOL3qo~ji&TN%TذN|_0+6`RaVvٍ]aa5BW1sZ.`ye5+Kǫ4exø)d0a:Bȳ'8VcȀ ք8y`0",U+ kYJtpu,]H6Ӏ4M" 8yh#gefy ly l903 mZbMAGg$ QI2X:f)xrZ-\qZmo 囫|NJRn JaW)*ݖD:%I ]L1RF>m70R IS*at.p ݥpE+alxl~ziD4'>u.b$=z#tWWWWWWWWW:nuY_ϙY-e2jOt5.SirêO`vw&H:|GNISvhbN%f>tmf|53DOQ5Yg#}!2xeaql TYbIIdN@dzl΃$m BĦ)&xܰɕ>,6\Ŷ Ŷ ƶ =ivhYtl/1K_滆3NI3jfqwD;ES'jWcy3֮`w C 3 CƳ|LX "f*_sDJW;Fj4PZ8 [8PM#="“یo3e-eFѼ;R2xs.QDA>EAfa?jt0;St)3Is.e4a]ꛍȧ5seU]ñW멢խF[YzRY[M^rcePNң9F"68l խ*jlTչ8Q7o&N5_4>^db'4]PMvUOj56ꃏv8UV3L5_hWiiW6rTs,Cnd͂ ;4q&TSŧYO]ŧI )C|q &Q697:+7胋%AWYxWxPǓX!sUW"z4ތ`Sp .܇@H7n Kè1c;S%1}31+#@O"p4X,k# huDP[Q+{  =_sf4.p"p@4wN/@S+lp@6ِ"jZ! d .@-D(ȃzVcjq*=טRSk,פc1!(隵奙J;j6ZUᨹfj>/O?q>BH\w<މc{WCMv&rNKXUbj ގN9i/ְ6mhb64W5ZQ ^8G唇Dyj?Z==-"hhpR(< , 6.u@|E|kwԍʆGݨވhsn Yܼ#&lVČΣ[I]QZz9"ΘwW1I"ڌW$)e+IUv'5;vTE*"q?.Uih؆Mc&BbF& tq_#4qG#j'BQƄ !CXb]) l\hL~/Q }*\А\0kLI)^VQ 5%`S!8#8 $)%`S9tS"gNBYhC5IלH5^)VZs2MD3b_[f6LBkJ!s<@ӑ}x/=s 9'YVJ);BO,Sl+z+ =U #^C %`2菜h,Vc9ak=_Ds DA>kE" HUi:1nΑa' gdX_ܜ#N7{dFHu6ѕ4EN4V)5gE];ՍbuwQ l1SSD5Ff$ =;c$54#QבSX:A?HIo>ە"/nzᝤ׻#x)(PqV v!۵Ղevu!d_3hd/mo+4D#6/CLkHNl+SᥭcvpynEnlnѻͲ)wRxXִk.ҦD+XS˚[IÍ'3L'Gq.kql\ɦ'-6|!`1q[xd,y KtXn 2ET3Ȁe0pDU)*ĈjHƈE/u2g=V$%{Hp "a1HX ' 3p׊ i9Z}0b 1 9l~=ݰvFWYh*fzbzwd(~$K؉ E2l%ִ8Q:Ù([@cڂ uzi 2Ili TZJUЪUh.*4*eY,L`bf?0ӿw]jq{Zޥ6M[U߹+T5ϰ\kIy8.W}]8 e]b;=zIg짫ΧkΧOO'q 䥕&CόWro{-k*HU*RETQB 6Dhn"ٯ6=TQ41jg)*ќ ɸ9 .P 5%(v#2;Vq2]SIzW1Iєǚ\LSREz,lh޳Yq ,t/YM=tmYHpʒޘhIo璞ș7TU 9 KCẖ8`%̐c5Ue^g˽d7Qߝ|g'lݣ^(}(D}sa$N}zҷ)g$J;UBO̻yz,~&5 ՈOinsMBϔBSI;%ʂ1M9}uYyusv~kj{bH=癎νKiJriGB]Er'2͢VRc,j)r!OqNIc7Qmiw wN|GYRpҤOuiRug-Ou60Uv7ivxmŧ$VVB|& al,LAyE܅#5Wx:2x+ݔWx:x#Wxy#Wx:rUxbṘIx.fO;KƼ9nRwg M]i t1X2)ۻ;Kj`0Lr1y)uYGTXL|^;(KbVzI?RЪdͮ*z̮Fҁw]C*dju k]-ZW˲2u k]-ZW˰2u,k]-ZW˶ݑo^j뜳I뜻9g 97LJ^j׹IFT[׸IPVZfp5k+\Zj gV{bzj=yfW{n#U y:[XKB>CΎP#b8;B-ƎP#;B-ƎP#X;Bm2;AxFlà}.BBju\{j܃PoTꅛqAgS5.;kVMոڠ^7;4U"zuj_PoTk Ey[AS]RyBRĄ5ݟc3kGØ d(n&͒V *+qO֕7C_oBSGY5Y"߈A>1%7*u:7LhvsS#T̨6'r#DnNOM_Y\oTi S_'~e>!?w{(;z(;> F愒2>^6>xbOǧWZ;?6;eXޘhofF,ڛD{3V7O'^hwచaXu$Ò4ÒWց K}%n}1 }.F]+M.FCc7wf S_Y|e8<]b(ZkO2OcD/,aWցÚA%Wց3_Y*c[ځ u ɗ%yKbV]LEznb"̄]MVPVS)( VP%WA{&*3O|eCn?4 羲.cWص 6e$Ѕ󪯰 5_a}ϙ^s&*J^!?j5ÚaLT:U9iZv-%kk~ UoikOLth*^My,WeFBp0Qʺ0~-̢ >KXg(,gm1xzK;_7첩i[j]X#a\*w#WR١2R=p<;6OΧΧkΧOO:>s>}s~$H8#WO24c 87o0{߰}C DdyYµF:.~w4YA4jEG%7岳qӧ 0wa3` "9_/Fa?9[ SizYqSW0D~;!]iElLi)%qZ+jT^kvVośZVj,P;Y@)tvvDtMhR(RmgxF|#9e-v/" Ox2whm-D!:WBt 'FՂ@HS2?#qkW:_`Ƣb80K4+G?BMM'aToHIFF b- 6'&/wCJ\%4&?PI T̑` V/ KIC"C.:zC;D$K ,{a0,ف>/oi>FDj(~R5Ҳp~nՈz?'.XjR,/_VD*'RHW7I7.yPߐAcC l6?.y npsO?Hm̡b4k.4[$Op.jdнͬ;2j3͔EHK})kJD)kRfPYȼ.?#V3jf*Bf{UOR,ӭ霅̴񜙅ۆkgӒ! xn,ٯz>xPP6>GSf7 &[)wwnSf5&RSREjlfOظ1"x- g6%gNl6SLL}WZszr?!q >!q >!q >6MmȓЛI^oI=qwrzGLiuzGLiuj;ҮH#IE;q K^9xH#I1}cῇ`44C/ys[B|[5ua=!o& K'AϭhV嗎u*S/s4Fד$z}n%:ێG.  yDouS'yASZelKsqQNGyD%:eﰲĕ\)K2D)2noKvo+ue^ +?thje_\# ^uV-eeGYT+ԅty~,qkeFC 䬍s3B[өCXwPCX_⮁CEkM3G~SNTXy *0Ge&x OG{Ӟb"o3YLM{抉阩bbn3SLM{&i<163MLM{fi$9o6GNM,htK, Q5b>FH5GՈd pU#nţj+PwT(j̎@ Q5b:F(-0GՌ@㨚0U3ހ}jЂnTZ/g+Pl/θMX)~ Ub"ʼ }[ØݾLTn/pWoK Fu&}\!_I}K6il]]M*ېe%mʲS&cwȯ%UTVEi7bw[?I* oUWf 9IeUIU׬&4}$W > 8D̨6Q# j lJ(ܚXah~-\Pr IxcO^?']u}OXjeb$ nWwջ8y ; ?7O&\[/4O6}epW𚷰 [،Om9h]NZNQm&/Ti3v9mrEL\zW}e8:pP&@2Wց3_Yϳ,oi׮-+5x$`B `-ÒEr3HWց3_Y*$V]D[Z_D+-h#"} nG17l%q%i*s7Q|+oXM׫$:}+V|]曺KPշd]owa-B{[Zl-ڪW'gf;羲|U~ϓ0ָ:Ye鸰^v-qU Ww-Mox yU?ua[8~SM!_IYS<H|jJ" |&b-|_\?HJxnMʍ8'Oq~-9f7`'by=o뉘k|#a'.Mגl[[{ )~{)УO/111lˈ}Exe`D!Ω|~ʎ]-#/uӆittSgΧݽtݻ{uwL"L~hGaI?nÎ~,>V}L؃1 c<{C^r(e8Q{ E /G&G4 ;*p\"[^gh KN}DVpT"[.;WE`'Desn. } B ܠ#!7 niCq8 *`l8ct;mwt[*3|%U{h @ Dݾ(@J\0qH{C{րgHy`g VY%QDG"kgVH&"oģ_gJl묠񬞚A4" g#;9ub&ēsbJ7c_WuJ04Ġ.q0^ak#Ydl4K㶄{HGcb^"U"?,Ь"ff* J _ AZj@Zi/lvNc||]ܒ 氼U  QҲhٕFr:ZwZŊىr3^J,1ܵTO\ʉ I<|L+m?50Ө{Ž^B$P_oQpyIKbZ!4!h? -2S4H;\HN"@)#q1E"wzS S4~\K/)=Y=\GߕZP T1cdH;x+яzA(\'IO]}SWЗW\ o#\\F!N8 xB#vVJ>نJa(٥)-#J,omCmM@ ZV/*GJ,j+dGMPz,jXꙩ֜ F,jX.Լ[l\R:*uϰʉLl ]K )B9Rw5ӰId޸iЁ߈)m_-o$57t*uv9ᲥmD+/U[J}, )_0<.&:W?XKSC_1.E^F! z k#^X~pr鸵0 ͪ 7Ez5 Ct:#NáppDKX4+l}[⹞aZگ Xr]\*׵urC*7 rS*7Vs.PBPЎnnNP)Y"E̎_)gLCO viaۘb̩#t8距Ao|я`NZWQA6zu̓8ew?px2B۽"#2N7c{2Ɔ~#XQ41 ^ {/$X _0M\ :SƣXak% Q؁"A3vA7Ɍ%IR"CE䜎t >/f9h'+x O#pHk[%Zv/^e?:Y.zN#ĺq!7CXa7E2xa GN aW`dt1^PaE'!0TGհep] F!?gYT48]{pc6>EҙBBۻ<}'v;oOSë?^Ht ) O},z-LZPtq@aYgVhyCZXmPg _|oЏ0O-…?V6<<|!]O6og GAm憰: XEwV="%,NxCH` HRtCCmf5ˮ4 GTA=C/V.[/ΒY֠TvI`;Nvv7t J^/>h IJu0(EIh-ݳ` OC(PSq#T3cc ڵ!3IM_ {*xepS୯r Oa؇ , W,dW̵lb4 ĭ{ѭe09o gP~sR(a(x(' j2 R 4"W&tQ҆طždXN,vɿ%~N3x#ެz[/t'5~1~ƭ8K>N9 Eڴ#"j\6oV]h":~B· }Y^&_6.IOBV CF%ݸ5*!3G(%*vEƌkp{*ϋUnReY#tS&)sD_g̭2q|ɝ2_(LБL*BWI4sò~o/dZd^*q R$ ;W`|WJ, leԅ %d.tA?Zvr> K/ @<+bGp]h|AwpK#Y[;|(NTWmi[Q6<$Le7y_3y\^:y69B ?(KF4lTаu |)SK;hxpk>R ؃hsH𵂤#Eg@[%;@I\3wWD.H d0lw/vУe*´3g./b޾$0M-!D2# @*\$5_Fo;Y'kOw~РC8-gŔ]xmK%{]u6K(z^$u:a':a79q+vOu-5ĈmGIO>^\gmBu9j*vI&}<8㱣. )b\hqZ 1ʯ_*9UPTM1W~'W qq*\.ў.S?Qx.8gY8)z i0s"dCPeqw/+:5!3ej"H[ fURKڽr/Ō'E#6A[*\QZ y 4v+w(%Vy*52iS3 ipzZ}QLr>' WhcL&%08)i.in_DL'n\‹bxDM[K8Hb~;,vG 2m:'s@|0"}FE\b?Ic]ʖ_#*cJsb+MGW(hHܼgq=?ߎ96"zq:FDdTuΔ'AOTߌ5#ɕQ'IӣǏ Û[VEoTeLr%%\!Yo\>r%ƙW"J1>W]AWVEinwBŊ ƻwM>5x!?#*uR2q.f4|^YyE<=8_99JTURUH`țLl}&mQ,UAEAJ[[tU4(qEњ߸A^;ZqTut'fbL\ *ϔz4o b𹣇2:Rՠہ `+uqf3>CZZ=mNr(h/(tkp].v1*J*Lv%ci,!q*&Y> e= Q^18tqs=Ca;Ə_=>B[D\hpSuO|W^`pi}1B` i#`| yI+^0Z ??, P{ / i 5,͊B]̫y- uQwd$̈́T xmF/qcй(f/z/1Z7#[x/ư:5NT\[e }j1hAU˺p435Q M(a,+H=1y=]s&׼25[KPc1"'yqsFyj( =x,h-GF;'n?% ]Ȧs:|jRp񅋎N7jH$SJt:.4Y y=ߐc޶0}&*:~RxKgvJfwJ' {ړK?wP>v?P|w\*1*1706Ʊ 9qfz-~-|t'كǿ1x8?d $]PﻢrxƟœhJ\ADFJBSG͘@H;SpC"zEi۟\1l 8vUX8TFB}H-r`i;΃sK5=̀bl94e5b}L1򲖚^4@ML-LGB!ķȉ􁓽OO'v: X8!g$:Kp>`Lxi0w(׉9EhI]],"}  i g.seU%gJ_c ~kiVA5=;N>yjAs?kk͕2eV @6hHU1A%f/M*=%#) +p1ƻa(> D5p{L:F+>Џ!Ql9A vA/wNN:lIGTEuX\9]PUMdG؋¼%*UhT^7HwE9ۚd*!cS?<jNaOoß3+N6[Y!^16gXN3VfZ(߻O%w[V«^(<*0A%|VP^E YNE%nz<c~4qoY_,4BO=IOJ^ΩN.?9< \(W9w/3T3L`Z~?@}}1G}]ww.]Yo`xQM-J_j^E\ڜYMB{ =Ӣ-wt8ǣxNMM<\D*͢8emCK~EW5q;da`T{YWTwI~UIkoiA<:I{ yA!pN=UQqz4JXOķvk9ێx@j'vw+۳3h{)dOw(ǀ =b|ԻQ^RBnq5{մމG͝В_sݿ~btEcVҥZ9(Yɽt q[xsn0g+0vߊԢEj,]~'$wnK4 PF!v9IQ/wV$e9Sx7I,W~;`x`x5NU @GX-''7 JX7͍I鴎m4_^\c ~?j%$;&fQQW`^SڪbL^WNk8E5qPϵAeڱV 9[vo!,|] ۟MBU"qKܒ/+_@'9B"|#(ٶ|dpI>Rt& \Vw ,322ߓ$RVwoC⼐߰WU~ϭ-?>Ckq_ʜe'G1Ԡ 8xί9ZUG{ĕJ@*G|'hv\,Gc4&pgN)b wOoJcP<'BMcu ٹkǿ!Ω}L?-*}5+(g5;~V+$杲%mM)x<_kUxщE<&H/j \B[[-%y"&o--%[yUvFppk\8ݘ/n6 : T=(Z_>- /tM1cf0",`>Exr gҴ*ʳA fqI/@QKhC.dv0>+sEtmzRs q8G0Yh*M} RTAt \yv'xw;yn gCdz%ixGlu\("(VGϭmol8_F &.:}p9>ֽ"dNgAiߐ?wȿȿ?"_RЌ<#d#8Ju4tWV|1@QH}J{qBBm9xx;GI6_AACW@=j"%_?ɯ;g'P~=_?_rȈ!#d~&#C2bGڈO5!9tO`!1Z6c*"+g(+4*b=.1rg)O \p.PE~9F~M:O_L&+EdcC_N h0\ "?77Q8BXVٹGFG@ VvoG2P'"8ZrV&lh(=xi'iQ(k%XbV|r/ų^t@GKk~ pE;!YIf*r2ʣsW i<P b C8(I%e$Yo~֞QPPH2]\`1KsmF ƠCFABzQYd$w#w#)H!RɄ w fz8b/AKh5P⿊b$3q:?T*_GjkRy"yOJSi~JS=3*G!MYQ c0veiqtaeefoɃvŠcq-58oo+0p~s2͒?? /t6Z:@D /P_O'`G<؁OOܡxpHGjZgg]+'RV*Jȕ jk`-%/B7dtcC̘[Wِ@k"H{EPF(0_/~IBlQ%p<Ыn _pL+3qeJINkb /% Kl>hpBj(cid5R?"y'X -7Oq.R'>G~2] ށ7ONTw&O|SY/x0 0 >s5̃?u&TCk!Mh8o# uP; $>%HPyt{9 ڟ[?e %xžru 2]5mROX%T>08l )B @ZTqI8A{ȯ5SӷJO#@J >Q%el~:Dz\^:*ivT"m @"_'[4;< Ϣm6:V!2Nz4)L!n l Qd°[BsƵKFT9AT>e םk{R/'' k]ap1)x@xbIpyb;؉!س^$ ,~NkE`+ ,~WR.yɃh$ A`@@gz>=Y5Q+Oί ? zzD#Y [Lq5Z++G .Ȟ/xn)uQVQOh8&W"voJ] JE>J]sJ]sJE0"N()jjn׈α8xA .oݳV8˨RZm4t6ye{=DJG wxv1tv0']ѱid .",s)vOm~yFagC\8{;zkx:]`-_$ZZ éM\X`90/:'L0 "= rcmE8\U0םA{,܀F  82[@W: 0pwd12:]zw #-: 'Da_Du"'xqn5!k`p$ 8\ |8^+"1x~fuip{_~=yvwmLJ/?mᚏȋ_޿?o12Om\{ %t_.>1!#;jI$fc`{;{=Wƣi˟qIǁ#0btaD/<+h FzS?X;?'nxaC"h0^EaC^ЈXy-Z^`jtѤZWStOLJG!~Oe#(.ݛV,+t-$j^@Rn%t*e,扡jxI&8VdEN2!%+qpPm(쪱:$>߀>Mctp'̧S*H6~K|NevI!!,YHоzP}U {C-mBpm>P'H E)Fmۼ B0T0& _eHا]>a:M D) ʮxK-,ʱxp-Noo8Sܔ#!Jnjdrұt[,Nw ԜNd ܝI;YA9bBe ̱v:kj LQt(:ҙ hmbQ<9#N>e'$OOlY-=m2&s3Elo2Iq'\I.$w;ŝybm)?" Hހ^kDt_Sua0DàyhCrrǙ:2K=ԉ:8 xZ5(#i.,N C*ji$@b {(\FG$fswKB]LH/գM1&W M/XzNQ>be<`"۲eJmxPGg N!_t/Y.0 Gdx& \(3: /"0~6֔3| ɒ@•UgKJBdž9xѢPGJSL_d& |ͤ'woQ!'MMEr"Z96-ʹRhR765j̴j̔5kCWc3e73U5[fʶh'͋zmmGVXG:@E-B!'B'#sC fa,unͻ}<. ]p Vq!+-s:EI076pRsM yɿFLC/H(,g8aY*(4wt\jw/4x<ֆ {ڴ"u1=S=^ "(3K2p2Q>"!.:UBU)A7hENr,P6bo$ dpz qK(lXT\3‘Z=q T$>|WU:" qQ ESJܕ_/4ݔ^${ LQ^策QTج- O̟лvC~ݖK +h1hUsƬK3WoBKlQ.12RI>\Q4L){@pNmEdr8M5i@@(2zђ/l!̋X=k$xI ڧ.&W^&ٽs))TNTJҤL2ݝ2((9;%D=-N-9b1AӸn6 )QL2OG8lAl بC$2k6N9xJ֥=:puccs+7֛zSXo ;!$ ; cfeإ:)OX*v|pݢG QJ z~ ɂmD/œ!H7`!kYX!b YP\YEh$2ɾ˗ (|j]>aFS[Gc nywT@ B>UIykbS   !ma ~GlRT~pr.`j@#E Z?%(Z;wwvZ;Vya/ q x1-o)ϢQkDOSp!@ [Z{0avAED>k'fq<‚eBG +,2:[kZ&@Pv9B y'>b1L V 1[y1>#!^Ebg#6Pջ1$v+jW#b1 emSOOg)^0SGc8^J4/8 ŒТpvB#Lte.7ȴ*zq۹)lA>hŊ}2#{C@*45D顝xʗLl˜x2C ~pna-wlfcw "IHOO.4-tGLr#0 T HF{i;"CE؃Sf?QV^du,$NSYn<"2ckY]%*%̪^4 'Dw Ȝ>ɓد9`u0Np $m x=D&':m 4.'H}<D  KԖjXC4= 0Yܡ~G5ӎρlP%,ZB¢A8˳aR`8/ϰq./|CuY7ѣaRz\V?AZDD%à}NnGdt?8ykp/qDj?(z.C#"SZ0{HF9şV1*9Mg=¹F? VBÌzW6}͆ʁoXkRCv Kb3#R?3zY4ܢ/6ѳ zxC Q3 D~@G/0(>T`8T[Rb5"d| ץQݯ}nl.^& [@L8G-qu4ܽfJ7f$66|n/1|@ zW.s\,jf D-:{甃&e-[R6M(] ~q0YtCct}`Wp~^J*{H!רMhwb>{ 5%k }*)Y ojUZR1[2e~ͮaCKz&pI7ψt nj}\A'I//$B?1wIpL%<kZGJADut>]jYTk>[m<_5"hkdҺf?644J{T ιl _"=4W.4LRգ-VW*O6j pn["p!:6p(򭀺g)m6X/;lZoOk`i]L+IJZdb&ThSA v59MɛQ}Z=y'^Au݅_e' |t-(^Ug{|vqaDeG>aGti.^K#ȑ˲K cj n0؏`xJ~9 $!exj(L&gC8wN?dtuATZU1,T(CU("XwOؘ` }IK ӉqZ9oAG8X2 r*2|YR1:\L{}n ,k997)x{xkN ޞޚ)7sT.[:f6q$t>wGudȀr7W> /YNL>UW["zdDN$Ϧ>t1ъв!0Aj:ɰj~eݐ&\"$?AɋiE&bU;z%%Jld˚{VHX'~l.\"Ad?0"p>UʈTytஸNg ^A4 w ڢnQb#5#Xe|ebl`Xd.tqAu2#Ҡ; aV'l=(iL6k\ftjЛ-.*+n?7nQ>X'3#e+RFpmw{p@,62qCCnғaB8ʡ/9b` 8]N`,gO3 bs }9GGٸ65ttW`7L03^ݮWOSak״5j$bؑʃMwj3ƕ¸W43; ,m)zgmPӉef"ÈJ=H눯 D|I|>$cD/5K?v (r:" YRvlI@oX>p3ĝ,.zb#tXwي_k}փѷ:zS:Ѽ385ӿy8O2vU(<ZkF٦Ee ]֊65ށYimq}[]崞\-)(\MqJ{]eDCuPx} XiԍZPH'Ģ,@; %v##|J&x+cD .MC-g:Ea{#"1Gk!+E $87u8k>UGbcNY|(4SV.]BfؖcA㽐pE`hEZrl}[?Ƃ[N]Q&N$CH& AE"KH%Rd )YBb3Qs&ULlXKxS5hJ[gNkkk~*r`}A]; ސ~)c}KD!.^H@ e=ótDԮAx*Qda iQhgi b&"Cږ ^se>"É 6; ېEOW bW?o7~}>]:!=i}麋_Ea|QשDdrD0},9V ఓw~&J2FhrV7GhM3`!)D 7XQxkp `Iqހ8e M\x 5ZѪ,0S>˵;$k IҽGhӰẹ`Xxg}#a2%2z ?=z>·gxPG]`][^ZP\SA t0&XMN ۞7Ewmaںq5N^l"5_X i31a&a `ą γThPiIwYp#?YHxuaxOn9vm56 tB|\B"Pج(" K,D~g6&/#zqKH_KIqGbTEJu@9v}Pzl\e7ya,dNz pF2վh]5KAN9=0cRqb2uDvqNRyzKAI2|ұ[J1еc?Ym~5x6N5Itr6.F }LJ@6MU2,8px>@qKc Ն¢}镪" 1Qn<+e,٪8] Oċ .6^dc°j*M'2ZK38 p ˱nZLJD%'">2|+-VB 'Nbz2k3V .G5&*vCr1л{E e)󒒐O%ԥ _wg]fL $7+Ex)S/[wމ_&CU˽P#|x|U$2LI2Wᡌa/uLfgFuw1u_Zk A]7UK(b ?U0|vffU .Ps.i6 h>)K3U%~bllİzqwj%*;2|%fm;ΒJѻRC:NSkȋ{ SQcq^n̆웽Hi!'Fe8 2AeHywUF;I?AViw.8d{1`^s6OVlZ- sm ncxE݌|HxPR MCuQ#8ct5Z߼%&I~4r _.p,% (魱x6{҇lͨCdf|6x`.栣0tQS{"R[ڄInhk6VTk_hǁVqMeMrovxmv=AVꁞQS7"%\0hreTei<-GvL ar 0 aQog@/1*-Ƞ" OEUI ~KAw3‚ABӇt$W_\Ds1Ng FDE\c6ȏI'4Bm`0B,Gk&rp?Gv*+rg0b:,'#A[Oc{em [Y g8ۛ~vhsrSWA@J1VLS%u6qf 4$Ept/Zd:VwH.sdYYh" ՁpLD/+""Ll~CY5[Kع-[mжx{pq‚$ [ 4OliQ:&C+%GЅ!\g+yтeZ__%fFITp7,׻ ͩ0)ww m6~۹&2:\O] 5jL#Qa2svy_B[h` @f7cm(RaJC!)3"i# ~݋pYx6,xɄAF‚&xі?y{ ^p}3`TDM6UUr[h^{T!X}]4jMi#bOS Zbo )ہѾ.KS{B2R˨Z;QK8SJKotBl\u;c6Mѵj kv>HʭMTCu0L,))c*EpI`k=7e8&yC˖֩k.#NG4gc "-thpXrCǺͺ;R-k8yچ p$c"0A.[Td ac 1_-Oa$©!Ӗ_u#t0狓1TZ5" {u nh {HJg#\3VgaXE9,4Kz {wm] GXcP@$E8 .apqTxChj/aIuݱκ-RAvhL d Sl'.pTIa9dHH9/Y՞)6G:vj=;Oeyࣦyxrln_Imy{Њt7E"MHwSݤ&DNٲ ~ M8B`4I7h8`%pOAfyOyiHzIMAe{0Ơ( Zc.ga|!{D\dPON6mSD1'5G:b; zR5hzAXC{,Wc(˨Z͵V~`~|VkNx*voWm?=F5Kٯeqrl;8p&nm5<H(&zd1l_GbICM>2q |"-g P_1e9jBÞ^4'TΦU(&UM8^azй05{TLYBM1rp!H\|E'F˒%wƉIr֢ڄ.[6` сۈXdWjw-o)X4orMI7|%Am*KM,r]^nnBǏ 'p@q#o8FoR%t3;{ hܾ\vA 9b RAẉ`zѣnGqG=?P? zڤ^AeYuDπ1PiyO;FJZdyp-pP wY&iQ"rk]Q0Gh*][e\ԷM-Wψq#xmkV!r\\ShzDn%5YɫNFK>eQ8Qy2ZWxVXb$Q3*6je4$G>{d5ǭЌQ:+9O'Ou.'/?s1Z\nZ-x9vm-u˙yg[V* o[V*o%D=Vf"A?"Z{z> )3 U> IX !uW@,toˑpER :ա~37*c>K'wl"{t~;l K;j%ITiS׊΃0EE{ K\ 7 6FL"<>.8٪w*=$MWAj:qeudweS{UҺ X])ٝӊ(9{fU =(=:0иmbrr,A?yVҽwy!+~oUަCE#2DŽK}~7{IoJhi@͌C=W%= HB^j-dkR䘫iI,5 v:ijG}P1g"]&Qx ϨV(,z/fQW&.? Eńs;`B8ᾷe =" q4IR1dIu^DW6]q29:u{?MT]{HÕKpx7#n%nR-"nkGqCFr o&iVmd-a%Y#&na |j#%sH+Sb1FOx[e hFвadAZ:#fCYX,)ItI!+|a b: m.X&\:WЏh[fՇPJLD(Tn) YXcoj.km!l`c2 {Ŝسk™=;KAω4wɈi)weRxp`i$ҩćB?4?cv_P:ac6w ȖzDh1*X^PP@C-"zb vP\uQ$#Dd{pBtU=a-p*i7ճ%5 8-`G_JG7$v\Wi]ДtixWݨ{ yu]wG%a^Ϋn.ъ~^#uf]cl"R XL[ wDrE"֜m ^r!xU%HnB{D0]K1z Q`t!e=:MoпUyG,9fpR>94#V#+VK&%>6^^[U}:[8a=`/%ս'b44AiCi*Px%\VfmY%[,rJ 鄜R}Mwqr,=I|']10lUS İ*^Mn[Xt5CCj ;T[%NFF 8M@_ m/9 4uz~7s,~gOBxlrIBgZMJeSVm3b^OAxʎ ~WALuѼ(`fPcljm{@U8I5H%  uՑ%ZK*HKqsm Rٍ;@G#ip0PҍN\j`D܃@cĘCF'ݰn:0md_LFc\?:*tǴ)k)M),Lvʑ@i)]q(\1⻽P^R81 6zq4.F"y\i0+yKl j;DZnR[/[싋sX ˂7pN/ ,ǂة2B.fmDl8Xȹ#Vou}Ok_he yԴ׹x+Q M\}}(tf62+7#nÐoL V "L_Pĺ,ʃ%d\+"75-.ɕ9xi$ģ͛xV@" `q?5$]'K!B [jp)x̆F 8aDd&'@}(<*gg\g >?ʿRS\*Q$Hf'X{"c?~cŚᇏ´'_~LDZ`+|V=2Ǣe Y1R7( 84lIsINf HJ62v$lo,|wh eJa&H}{V"Fȼʋ"O( e .O6SZxp3)_$ VNAJC)!$D.P,rz2Br'W'#i#fvo }B+RZdMҰ1/);ڂ*oN|D, !cW̞gMd9&() Idawt~y$V)xDF:BdgJZi*4p2 V[Aju.2ߙ^GL_laH1x x/eL% t\g_~-VS8 *ţ j4&ٹP{!워N<HNf O'kݗp8pLrFdJI% @U$ԵfGN[ҳ׎V;"_s2CAc'rhi3.HuJ>NzĴ jdHd`BR2(DVxfj&0{(j~4f%G#ʷ"_dYjwpV@͸@Ą~ٻ>hT)aUq+Q:b@Iuj> w *>TW#<Z.,__7f~1Z_Xd^,n' @; ;G/8{q#;N.,3V?IYPB(e3Go; 4޴Ie)SӢgh, a|oGrƝ`DQ٨2jbFkx/^ge/>]u_^7OǨ>Ӏx_ }a/S6s#CttZu0x_RY&x= Ha/~ 0Fa6hEc0ʌӽ0CB:MsҚG$]98T%s|K}z9jTj PW9]7 P D/b)Y"`5v4Į{!> ]bwō\%j L,q"R>R>`^~64 _LGtdguSǏ\ Iq#!n;seC:!q0mOjxƇ@< 48Ny9C_Y`^*82 e=HpkqaH+% "H)hU<ɑDH$%ys1!Tf8c-BmjH" Њed],lT$e@A6r\F.Nk.п#'Tgt,(ƵG12 fv!5M<`ƜŦ2L31WދHƅwF><_ ig:X1.7'X,Ri0T1lx D̻9pC4P5OX{Щ Et@ uR 7ex/.^޿{L=y Hax/ }wٝL]̊W ,Ġq\^JlHn7e3=/ i4hSS_hH܍S8.9 &-(Tӫ :>ƒ9@GV0z<"|Cq qC x`N -~ s 0Ãl"mbHqGqQwĤ]PL!ǼHqQrO2fAwp5 QUJ\ +f/ Brp)d <AK; þ:NشE8.L𺒊>ZVN2f -0=ʫ`Cp `>% \)%f6ʎ0-$h*56&]L\QxkE V߈j xEQ-f%- td0wf9XD$&!on^.+qٽ &􈍳oA78pozjQ3挰W"ȪbT8p +mE 08#@Nٗ QZe)UJ ld;77Frc`nHfyOҽ>5-wHx0R%`q/=4&5aËUT "VJ%W4(n-'d}$) %c"0̍^W b4|!Xg<~b;`|@8_ҒԿ<‹fx f'BG^_WxCq*qN%hy/+@ !JĤ"K'=K J䠾>Q~d{3dQ<%/ڀ#vZfפEOgig؝tt𘰺}A#Xܯ \8y|:4PM3..V8J)w% 1J^]ag{8 ne圩"Q N['Q Dͨ53{b+ uM~T+5LTwk#e&nfQePNgAWRcuc Y*4V򭼽\ԛF"T-?}4Ea d1AKتNZze.,o~A |4Ѩb57tuNe} NJӲrnb/0?BIXc}B!c^+RGsRX- @ AsY|k3HlYfp/{1UO= rڣ:hzsns=bS49= X*p<gI>C99 <"pnʅP2Az06 S"U^@dPzQLHroțǣR~.~.Go#Lon7D uF+y+Mj|ж]%+y@P^#g.dOBRI\PG"ʑ_L~iX!a@aHq2 OCd8)B裢3 D 9%)BtAHqR9 8)B $ȓ]|q $Xo,dsna^4S<0I]7Cfh"7C1+n>oNbq3tFq?0fuq3Z -n!2{C8 "pf E dvA7Sq739/ uc\CEQDDG2fGqQ|PGqQ1G E\aaK='2l)ǽ=1 Lx@2󑙆Ф%z`>|;\}P{5*==)}VxMVD|P9ˤuNKǮꠚ^]AgW.;-vM")F0Oq(j~C=hl}Slw^Sp˷)gN֊SNy nd^Տqd.eب^=X*LNZB}g1(QԷ:΁Ta4gOSqgVn؉4!bH8'?Sj|`8=]z8(N<|wQ&>O< xọ8(<~QyGCs8 p䑵WSȣ8(EҙBBۻ<}'v;oOSë?]rpa7;Gy;n`sIJc5 . ;a-dneo X(: OXE~n)([#B_bdV%Kk./FYR$[iZ(%/3}a2gl\ߖbWXp *821V[FIg;@Ss <}#Do(䍌-I wd?ա˜Ui~j)P%qy#S1LB h69:P3b OV5 F%{c崂 +kDSҧ~PCгfK2Àv{TEӡhaٷsjGJY;r7&c1$X+ uAuL`S|I$ b1!3A+$o/Gq?lM>ā&y<1IN%n 4|Ke2kc܏gt_1B׭q!ƉdW~Nӽ Wnإu ;ʪ-˲+NBAFBN.cӣb<`YQ׻֫IJdk_M;N0vƘ7h9HsNVr?Hk?m1Ll&);Œq=+5EkڠO2J#.XUe" j߽N#'c'fd3T-3Xfa9mxYƋ,3ivfՓ̠S1;3)*gru(p^ʸJߚ+V deEj?]U̝v Ĺ]k7o>EQЃFl%LȹIZk)b[{gwt@#3m =0 mLx^p?'td˳+dP έ ɢS-TS\Z> R%Q% ԋ$Vfה`ߡr2ŷP eyOueVЕ ]^ueʇ3ӕYsldO]y2[,&RAY'*}CX\S yRչ^uNҲ솪e9$@َ;9\AԔSHUl?u#|lGvmy'NJyܗ[܉wgꮿ_t")ʜ)C5Gdw+7JZ{tߝ{~wcvY;rM>A'%;%)o7aBA/\}QW֥r3/?r3M/oG1(au:EX"NVg3H|pb1/K$:r_ňò!b yY !b>> 9VaIb9AH/J:Q2ˉdА4N1 .KYr6>E^C| >X`M;هd%"Rh<8(6A(ePF<#)0fC~Z&/l-PRst$}()%Ҿ50x<0m"_$ʒ;Zn3i';-C P|,K7띍Bշ B@u@o !%̭'&ޗ+#~zlpYi]'%1L6]-1TQ,҆Og- |Vx7 Gj+FqqtI:VĩB`1b#eQ>7$ne *WrYXVCS8TAt()&UW*z&`X)v?A(&n>&1|jr"bG4Xw#<7'z0UBI01u`p8. !uQN ]y>u|YWJ}UsM,SX)Ykn%@,Lzwm7E/&c9+BDTJ\&܊0Q#%U$Ow6ӳy O;T2"D|qߥ:B_vPz!3ry4Ҹұ7$ %Rs{ѩgh%tDŽ &_R%ĨY#MàmߚcViJkG H.rL`['-v8.{7ձPYԏSJ|2P6,ENTcZ%xJ QM5Wu?3+-hc:E9Ӡ 50«' \󖶜I ZxIM(;@#Tedc.w}Xaf/#)ԽJ76Y+YwVa""2r\GuU|m#(Ӫ,}ڈ+̫-7&[I=pJpJ]m4/ku+ $9t0[>><䴱GN=eA fn&]nRU[T4z]A)H9h/b I@L NP-t ڦj48g UzA?fd) Eɮ|>`,=ԧ{-bڱtLI/9JM Gq:.4yo%%,>Mh놓Rpp9JY~ "刲~U6|tc-0o*쁖4͵Wr"snQG; qV 3sZ:w1x64Q>gt -m. GmoLs& BݽL%9G` lƛI6)mo%+h!w0, znXX`͋5(pۣnb m
D,sF\L~\je[@3_慐nmr.|0_<`_5&քšPX k” S'ÅA h$4xi[F7\qд$ Z!ם?6WlH#[z'uA]w5t&A SHBMлozeO` ߣ'mыV%f  +b~V#!;WFVK %\ ]m :ʷw0O?~τ.@Bj^FJ+ B^r>zUr/]rb'}&Omf_Qo'*:HC q\f $yt Q#q[6znIe.n;g s׏#K ¢XLN~8`1S([Al&42`aJ-7B6Zr4(r>`Tk?.^D %n#(45KçiW/+Y*r5RpH*DX!Mf"tH$yv){o;;i><.<}`a͔ ?xuVŒ®m]SL۬ HڝFJ|,@qR)3ܸ4ؤrHpƽI7u~A.t^dcߑ#÷I nZ`AҀ#alHcD8^kx-Nj^vDFHzr ]΋ x1K0&tDf)Qrs1Q[W@lBu!XQ$ ط|`gM ~* hHX]9|M=E ދ:0jc*f~XkΏ 85ǐͤ *NVr ]o>d<+|;#⌣,^o8wsn.W3]͕ڳ3֒f+p/&L〩׽u~nb\=h[A/k Zj\8&/°CTj0nQ50.{T52CAOC""q'Rik*T`$ML*l,MW\խ41~i)YwM>hcGZ[aŸ7^RqW&#W]U*Yo6 'n4Qw#S^Q(r||+9>0aq~v˞$&Ӄ{;IGG0L;;`u~$l$/0V0zS[|ιϧCr*|>;eN9{wJa&ޔ3.|#cٖai! H^_jQcXi+DxS!R:ƒ%EMprih0bb"=1)9zk!Bg9ѺLyF$é=+:˃ +t:0$2aʖ-nEjG7Ѕ{acot45<$x ~X $p10vFA%0s,/loHPb]"rA/~RT4c nZÃ5g8qz9Jgu k)=.zIR~}pcݽ#$=~h|D^@~8Lwcx 9+@!5c\}kWdw,=4 m?>_?DǷۇG<*G{:v{2d?xO7oߺj[ޞƝ?9.o;`taog{w` &h珸~ɒ${O/?!,G#BG{6i9ڀ&ϗ ?~~nڻd(1x0 p~~t$  a9VK&1+E{;كЧ2#(O[H:#}x3m #wYyĝAƉf#>#}~x8__Kcp(N('y](m; n_p]a obdI:2m"nc(Z6t#}f,!Zly,ɍG-:toU뢒tjn~˞5vJXw +T{ex$:?K:WlUe0uo/E [t!jB9H%o[Iwo77e=~ިv:)J7>Sy 7Pln|=xJ )J[Ggl)rLUրˣŁ[u7XĖv'M.曷eRRW#} ¸ჸdKQB[r7)gGaQFRW(19vp,TPiV[RChēcV"%B< `HzG S81ᅅ}E5N['lyS(2ɜ|gBXͩꚎ~i f!TP=dO Â2…E{+Y]=".bhS@)%/;pS!,$VV .S{oy9Js[Dۛ}TJ>8Nurn1ɆW+lkNkZZ? e+ZIQRpMX 7r3:S">Q´+kW?Zהh$bFo1Ͽ(,B!*H\YK 8?#C44#8aO-X1X1X茭^ӃxsA00j &MϒY* hWSJ#N9bL'bohC,6IK6Vx㢯߬:ZK:=."%7OHevYkA\$:<#NEduv#5ئ )D9~%G8lm2R9)O){P**n4u:}GSRY+cPי;t01C&E4%]"jM*`,-^?i?#j+ĊJ&U%䢰䨲䦴䬶䠸䡺$*/wR_dQa&PbEdb$Ee;*'QO&K]<4;($ Lj+݅O1aqC.X=a cNxdulZ>vv6}fs}IWjg\h-ZVcҝ2o\%s:QMʨ#fΙ ǣy<].G{BTAfKLOE#tδr܇7\I$Lb|r :*=X6b}|(jR]!@SdVBɤŏn܉cDKsnieXpK{Rܫiڒ^uo\- "6_p-ӿ^W)U*Ep"WUv!Eh`{#êX` ?SՖiܔxJЅôtOiXSj~i J7*ɧX6JٝayHyǃ+Q<@ Tzt1Z7Ǖ GlNp@6[Y[$<W$?͈~#cQ-c5?[<|pךO0AL fՠaZ Xq5;Lzp/G8S+dsnf(bT웊}So*M羉횦7ұ_ I aԦ~cjcA8bgܭKq ?Gt> Fb֝Ł[ΰ*+K!2;`cyU?K\7OHK@W V\vfx8|tuS(yJ{m7!2hTK=Zh!9Adp7x {$?%}ƋAɎd pƲܘZpuE9l9ٍF8\"G꠿@f{ݰ{INQCuy1;q&pq)}%HQK)Ih-Jhp*}Wq 1DSCđ/K09Ep/Gݒ9{I,Qd$G"W">b($db\FRO92 mJ/ɪ- )Z q=1wp"5YpEr "5 zEDɘ7o3Ֆ.vQ^\'4 r0O WĒpKR'TQ}C"^?AX&i+v /W'%wCTkC#w0WkkA*iTd ۋ@ ިkkuQypUKj%@V 2h}?;̹Ҫx_U&E::69qZ5-2Y햇1bkqO5:~\R˵x(֔ŀ3y2|]=P="rj&m)׎$)->ꔝ)*yzv7Ӹc^[iH;g#+1Ҧn;.qpJ ֋7S[""_y~_&mP5+90S4j̠3A1T,z.I|%t;/mpjD)q~`m*DMED @& '=5YT.YlZvC~B;EnPle\%u F: i :q %۫#?DTǔ`&-U7:9AF%2]zc@DցeH˓Fw#8bOkZ_ ~2% V7%zb%A{Ld)&l^vφ.'n{}!)A녠ਉjdF(J':`x.7–cCj%$bV-aX EGIUk\ًV0!H.Z9>Y^r0uS>MzW@FJk˓$ĀE&m@&i߆,gdQ+:|A[C07XЊ_$!c\y=)(ii["{ݳ~ءݷFв !b.?W'Wn!w=+鎉O/K/x^Av)E0E:4wHmsHDݕf.jI,ɤ9$HdØR`X-[*r'DŽ3FaU y-͢$y\vfqgRX2L*8PGXi;,-E3A9nYM.@|g)hn'yؕ9FŠ5Jh1&Ik,BCb*#B9aE/ᘘ22+Wv~A1<{=tlAbn`;EloJü[߿}^Dbl?/57RWA*e$6 =J }S7~Ab[=/+\n=a$a]aHʑ \A?%ܫ«Gp15Bpbe`Ϻ܌E#RTzxDcTR@@t9GtՕ &{ws &g["餀Vu *џ]2C?{coQ9YK{R%E*-UmGLzecIfz@;UvWo:q_VPhJ;&JK/a* Q& #ģYS1Q'utH*͑xwOCj_S3ÏYM*X ]-{F"n(g wof4*DJ 򪰖H He\lyi,9ZPZ|!J?-~-^'xEX6\- 穀&g](9U%īC`_]qc cG 6Qo}`R0H.d Zŋ|-][NbuώQ_"Zbi K-sIS@l`~S, w֜ EI[ԊĴ887MD{ 9FUXB+ԸB+ԸB5N):3% glyi2fGNm,=5SCۦw#톥8 S>.KK%}iI4sٶ%0JQ,̸qx)uN]j1nuV0e4("%WCI֚Qk[QQUuyGzQՙ0Ce.T?$^oj> o6wgݫP$ O H dKYx:j{w-`|cc}8LJFE?F9)Ri.6Ŧy~6&orQEY{[FAuw)Rѓ"O}WrqAgb&xPlъn{t-$A$F3Lj*Ig(QC &0RFb #ӷdyU:0-, ?ϲ,, ?ϒWDRIBd~466DmRYZQ][d7s/!r{V7v@_;7o>ݼ vK= H<ډ^ La-)A@JP"g`Ջ OXB|Ca28]-_,ILJK%+teCRH)q:}v(B?)B?)B?#/DE!_w3mvi|@%;[K OZ0o;jikxw@ihe)ap,ŭ F "kYr[0Ԩyap޸bQ ^pWa=1'Yh)YGU6:Sb4!7O;< !d Dn).QuFYKnav~UYHXa(EBMȽfm sf]|N9&a 'ϮẋyH\qGd Y` 낋Gə1V*{k{wנPʂXdN$8s񡋥[ZTRE)+t :a:B)Z;w[Xo FO깉3K-G,og}˴4 Q$B^z oƏg LRHAvo:`pK~+zR6U][^@s`F"3 񜂿4UTB )H))qE>d'VK)A~?e XcRa<[`8zd.C|qZAc󑳆mAFY&<=I HBzunT UbRPш_AQĄ. 4рYReqi5?^cznTKa0iF/G ukba.uM;) 25&ޫ' bRmE|Ԏ*WVsBTnl0tz|>׷ӡIsY]ZNGY,؇ş]ſOo?'>t;Im6ZSO@S̠+ʈ~Y},-ϼL<2XE(yN+v#7qz&LrAb^Kp\> ?':+e`a`!X=[՚J-X;2auj1 _qOq$4Q(jGH?y_.>`>+cY\ΡZ/ wa sqѦԌL,zۆ/ PD\1'Fkx)ASm*HALV*@">MB \~(^hO. Q2:$Nz:@.}Ba7rE9G|(@j8~S޽#;OݟQl2}6DH~(U)?R"ٚLa`pR@if# lwR[%#3,h :( ku-yU/oB6$ެjǠ&׽G*1D (CXP<'"LKn6SǵI\2T1ͧWR 1v9,_t72hKCJkQqD6Qҵnq]1+??umV+nx/PV ` ~fز `yɘrQGH8WE3x-)Qh$A:9/T#Jm8Ezj0bkhk,}83Wؿ2AʾћZVvDD]VubOA4ǜpQxR@q.B/o?>5߿g=ngyI'O<$Hakӿ.׶KUzT,qb/iXv}B'L+JC2:Bg9C]N8̹juFD -+9iOw2 )~_BABt0Q6Pab8>}EP\kë?b5ټWNw Ӟ >V߅&-}h;? q{E)xB5'eL`'76 Y_n^W\ U4NDP! (f}nobhG{E ;-/ ~z p``Ծ? 7x52g䧟 3-]Un+wW.l b݊˭+쟝?_M+U߳{97Yzd^ٵՋd;]?'띑]P?ư]IN ʧ"pΉ^FN48*b~&3PnNܣp5+;UY&|lN~' an9Jآ[O45Fv@FYm,AH߫;EXĄa!2{%dN]]YtFW 6B:.Bc;I>$bN`(s0SydEs٦ŝScP+Q9 P"i싧Dy4{P,?|!sWo|K[kض/gh0GqHxUJ5,A>B1qPZшm)&ftm vLaaeQ_P!F,?x'̟DG!pN4|0qϺDaM ![/zr ϝETg[Nhb,+pgto8 7wۍgNFV3o}yXDn-ߡoҨ_tH_X}grO[{ޡ6=`gtMGlHzS‚xw:ipӊOq?)wJ3*UD0\l*3؃{usH~b #S<1TQ3,\(xs<c-ȝ0 M- |- biBNb&mD'bVc8C0z6K \ޞ|@֐_t^^;(}:!^C -# /{vX_&vGoEEDǁxMx, 6nN䖚d}b>^?F{ZřTUReS߭NOyqxyz~ AOhk>vo (F/ +~S:-'W`zըGX`qh9#m0W-}E>,WdO5z8I;-`GmI;NZ0no`vѡ>$]:콰8?3jO=nOaIFT9Nt"ţ(<`i$&PLoFWC(XjXu}T@|m#bAXŢ _0JyC07qX E^*E<>1i4\~:lq:9&/O`^7N߾$4>=lxyl6&wrII8釋h]4kӳ50%y]n p8z>}z;c9<ߜ7!8l\}| aU''w|AO'G8# F'GɿO`k@$W_|I?T|2&Jj}l|@v s@wo+O>Qp> hg[8z{ؘ(AҺfB J'1&I4hrjigΦjoEUc|SyXuXn,oʇ:xcüQ7<Y$^| BxR&Ό]Y-R)Thwu()_Gw=f@Z̡bTaa)bCR~5G!,lV,43*:zk\LܨdBd!M%?BQ'2u-CBXvSSQ%ennG_ bч{J`uT"_~^nfyh Rf=ۘJSvk\N.n/gs .<O ƙsǶ3X=wڳ|x1gj8OdikMD /YM]yãQxK5=]opZP ۪){sOTh.XX^BP]F^ֵ=X b-Y(: kOx7G䉼cbb l_@VMBk+7`\*zdSpti]<=B- #T fu-򫝀엻}K֤ϖ`X% gPTҺ2>S`H.>v`G|\PԿss6: ;$.´IG& !"\0O]X"h J~jD ,+QZ\8pi[`qi֝4/O.6 "xRpAE^w&r@qU$؃_!JhŃ{E)C}(ؙ[nd\ 6|wFƌ΁pd6Q2U%ɣ{JF:Q %&BgBS*NtЛkGGv rT$;6YPH Kz]̖ @Pэo)mH"kn(xdumVfyJpމ97J" %4zc:/VE놻YU+ d/1 ơE(Vw `AQ;Ëd2pQ NjB82}U(tMbط]2DY3:QuFS?ӊ39GʗS/}0Nwp@Z["%ɿo7l>jvEK5U] pVyK_F@+ad^h|X!?{@Pu oM,z=k?Ilf_0,BXw" 1`ܪL*pczw sJ-REïǀ` r5u83 5 ǹr}$wד|*e][!c^,5Բ2Z<5'{T/" \R^qPqՠF{Tc^rډ>ȷ/@т嫃&!y?X4e2vzEʞ\hØv/tBTq xT(5?+!</&`1Lߋq -=c @f5X IvyKJC|]F,ЯrPw!iAb_U{+<x*a UQ 'Ft>aAKӞ$KT@!Li8,5IF* C(0v=~2:1{?.Qt5Q=COWP5ѾLXE vmw? %#&-}h;55? zۉw{]aTƹlC!#z"-*gV S5W*J&C+OdypJËJ%T.+1V؋ʻ(, Л9l SL,':!ĈYL|ˎg,@(wRq|EBs^X8xsF ̓f-;[1ACZGpɡbd{;x;MںKZo?XS@@9K|C*!ɍ"8pWVW=ʐu IM͆EI%1 yR5tTf JO=}&l.);&ur!nQ}X+eCW$o`C=ޭ;2n~Aa`1!1k-*mA[$BŧU.ebreb>,p8/̔[=_~& cy5^T:a)1j{IC#Ak.8'&R,iS8hxM,'©*CXzpuM4J_D=g|^|(XYv#TUᖗjbbWT2TÙ'gtQROB/ӃB 64Pto}&]HddvC\)]FJ>R@a1i^$gԙGpNjYP_u ?(̨eAт'5.-Ls<0h5<͆ϴ#Zr1[CwJ/1g<].NJSx@_u)ܨ7Y3ΝTGJԗ5,;eމq5fJWK(UqZ]MiZEq=K& 32 MM}9`/.&Ώ D0r q@ gKN6x* RxW]UWyU nMW>7] 㾡?ax6;9x!&6{Sʴ]E-yFcR2O2OSf)3ʌ?gy-ee4~L?9נ#Տ Z^CRxaxHiG_|0b$Wþ zVD=4(I XS>5'/P1 #:P@$@Q1-[QQ]D)RTQk I-7~xFTc\! ”4Uf5|Yl*#a,AK+|+WF@g!_t PWWU(D2 "H1Z/ G*T3`T3 ee(f | P+-\S%x2 x^͊SE-.oF\x)oK?e^y]r-ur ^!n46m~hw %u*MiySZޔ7MiyS0nJ'OSTfi*4Y,Me2KR4-)4]&Zqe]=r0E=8 m1P~č$g*`4cf X 㐮brE)t[M7 +\rC=z}@7h 6fA @*nͫ§`Yu_ţG|!m'lh!R$eʖݤ(G..9k$u2wyޒFyx%Q_~4M%ӽ s{j{E(7(e͏}%V@j Z: 2ȋ "Bqi fF *bITc+RTzoǛ- ox_oV*lRjD&2sIU/gvT0ⷅX,:!ʺneAS/_݋:Nȧؗϥ?O4?\{˲.˃z՗Hz]ԪtOӥw nstN;͘;yg|Y>y!~O';g*HM˅M62D &"vb`HmL]؇ϭ佚}yXg @#ӡ1ʚ0za7 N))SC(pt}C$eWer3*֤U1ˇyʺ4 #kEo 75|wj0pB^l]et;x3+-zD]XTH0Dͅ~`'U'e ' YLi |g,T&/Cℾ_Ŵs!,rty-eLT_vxb؏hyX4S>8W%?}0N 18Mcp< Fޕ/2*f.\KpBMt;Hl-@r Sg?-*F2 j,ˠ1-ˠ2 j,ˠ21V{%Ѥg,\xCe,cXX2D3b%s$cbubDj6V]j+y4JМ X@dF=(7l@x{2ݑk >m!{j-) ]~H^K얷g v_k4PR{ Ō&gTJJ3n2XLT(T eEyk*/K&ek0$̘x 併{koy?aٷn#V !rQG>`MѾ $.`2ۨ WA@qp<G<|m'+Ftm!tS6v jem 6bkX"\FS9Nm/ =Ò`jl8`/spxԅ?d6(_D<ڍqa">,~cG(J!Rrvo PhR˧M=]h1ؔUp|+~A$\&. Bn t?07~i/ ;24d??oa$ K?D+^o t0֏v.Ɠ[uvաUٗӧ´D`xkC@kl X^z_"sERM'RŠa &T V'ӗ@myΗ]e,$ ޟ&,=|B V0 .='Sn5CI](3Qt?ȸ~wiO[rϋ#҄#Џ+qSmf2WY#i&z ^;}ʹ2/G,\lD _!1QiKȮGEeEΟI'L̅h%8"NѾ}NJcICd7 h\vcp[87C:ۥ>zV*cf0ϫ5y"`-FG:ԡrB@@V]% 2jYv 0ϒ`$s m`:0x=JQ ]~G7O5, 9Xќ =^kg47Lg:n5`vl֍ovPFC&BW lzYِ;E)lE`~ꃞ&*0+0O9MLEӨ~Д1bCڏQ;(0fϠ S7:yʼnTmSD*3#QO}c#'i $1C\H;~ΩygJz0R`Ous-(~6rLIIs_k]U-6vǑkv3#pwuzwfVw<t{NSsm볡~$;w>qUS{6Ԯ ,~K ʀùҹU: tnέ[+ua2Z~y,(M󳴤)YKV=y4gE(/~Q|jD.T DMv{r~^%= p(EOrL+C&/R*VX FY#YSΣO&Y;gIZKgMcg"gqR< RG :{L(!XYq mD^E^MͧNL N@ؘEM fაBt[-7 ` ~dT$"d 3dy5 7iF~ Mcc1K/OY-z\K#qd%iͩ_m+]/a9g ·LO=ʦ:i l} H }`T(EA2vWP}F*J[qdjCSuhd#jF 50R%4iyU34h }'5:Hr2? iiTQQP;aޮvigF>aR}rR|!@U5 */4k/ f *w|I ܀CeNVFj* F5UDNR EH/_,,/mEDRi. 7ny]!ђ.n9MV䴞iN9֖^$ŕ"hWg"7DxTǶbtw}NpBYh8xN]V$uDl+#nT ebKqӵ=׉[D*/]C1$LͿ)5\k=~7uP}w/YȥlD$٣XKڄFw0ǿTG k=Q9~ڑ (p,Mݠ,䎷Hٶ֨>&J&&Ɣ$!:k{ U#mg쒦ƒѭpl,G{j!ѻVK-oGondo`~7yT~ 3W$]8*C ;G_r7+^SSC7rXqd- 4JkڝĻ%H\0Uʵ#&ُvc.G7pvQ3# ?xqs*(8Tpe@kCy~!EoM:"rnaۦ!J_tBW %OD'Os܋}(}F`EUd+havꎐC!VoS|Q{]\3(a?ՈL69  z̝`neVk2:d/%qnз}27H~Gj/Hw:w&ƪCZ@_nac2H:C\:?q̅ RJ*$W~=8Q Q <pb0V }e.-k"aIpQk,MSιt}0`z.Y:>\Y;>v|3x0.bi5S<޳>NOZD-w|(Lop)_g 0~ܤ'Pl4AvGe`OyP-Kؖ%le ۲U–֯&/`{_" u0ȋ*F܃YvSj5O12L> x{% Y4OnS~US<(m>Żѕ'(8ɯ֊h* S\\pbkS!od)5jhrվ-:"2>\YeOHd;}!^&&ps0Yzјӂe\ה-_`Вgo{덉wp@݋BC֙+˳1+ .r$"_d1nL1+Q#L=2f06R0e|`QsroG/gb< 6?&Qč~a@m%0ho0= X0e9CM-+D ./إD6Eʝ<:(QiI|.92 IӊyC8ӛW~_%#Rgo;\H(͟-^+g{,o87qu^4_ձ&hx>ۤ缡@_Xh vp!B*BfۏBjRD' [@qyh*Z#?H' /M 됼[[1K]0&G5>%!w籷""3_Hռ i 8! "8hu"53PCb58bT+0W n#XƂK,Hl0D (c!X2(c!Xyc!I?sE`UTZF=,yA~p~l֯[W>$q:[~AD" ~)r>S;cZ+rf| &vF9(eAp/póc9~{ c,ǃϥm@7+p|k]/.u6nL_" H ){+'RX\Fޒ.oVٺK/{ٺӻ2[CCiޅ>S dF行YL: o~\Đ)>p,JYqfVi[U4ҔkڈGnj@!ϵiyH響rHtQ0@_Q2w)wW_vD6',[ LQUfj?3 e ҋc9Sf\q3gβe舵]czҙ2Bk9DE}7_Q.SBGH:tKb:l҄Ϧ7yCw?=CN'I5b/Z.ZΚk w~?xV2sYn}IˤO2sj:'aՙ~\&u!:ߘݤKYTݚ/:Yˬ+1$@3;gx1h6aI_[;+X<{S=Sb^8c%[4cƤ( 7LWc|Xz,_=.CX>v\ǎx:<,C+ u\AϐY4|G8JPxꧩ2i\ɽ̬cԴ1x봩S,$$̌)I|Sˏ7 Xy3SYY`JV5eYk<{Rf#ܢeN\͠S]j+ IxO|jѦ6'6W]$p jT(4>w=2Pk8"hO/6ÜZ7?0eO^X _02kQ9CP&Bf?Q<8v,SI aJJ7tF0K'&i^iĦʢ0B ʙLTL0ǒyTf(/Fr/?E6y~ >1;eNSF;eNSFyʗS)4GqCMzSެeevo<ci:nOfU#Mo\[Ȁ OS\;+ uv kW1m)e`T >H]]BKy W{6- . [ ZqLM&QMje\k15f;CLMe:&ԝ#NWWj7Ud9q4( x(!+\>踋lSE^dD # Fcl,Mj\QTcU#l=~ EnppԆ:\plyl0ёʨAjd5+ꂘ۹vډ3*gerIJV<yrn&˖"\laQE`}(0`e$E%t#X7,LO.nŀ㑔1Z]D"*'ȠDl=YRu՟ fzl:pȘVQĨLJ,, .n)#E+ޭ,~8X7ղu(M{2{1Eg1 qB+Eag*l;b)iX]T`h{߁|M|b|=cVƫka2 3*GOc9s:Fҕ0=ͱd#h %ۛ\pG+~(t|? MȩhT6^(`-ֆ);aiCc < zjU!I{v uT\JO!"kuڙ@,= BC]+P~Z-[z$Q w#27rN#u\ [~<0DˢL+>g->Պn5>yc.=X/CK*diZ#qx켈ߒcVwg4<.o]823:bL9.wYH҅~/nU OLа1zXFug,¯Mq]^w{Y\<ͨ@^7 a䥔Ơ_ (b~(X9hQ5U8#mwf?:ſw6^`C)`") d܁" Oꍢ2ږf4<"Δx,e|)V".ml[lӌAcNj#%FrrVO]`;TD+ԯwJNH ӕ!T.j]o}4S̆!FKc cWf{L'LCƅEK3!{5LDZ|)"̨#AijwCRnPcYdh/7[A3ޏ^@5b?w00< DY21q ]:QEY`-.4&j1b8\Po-X[v3;ևQ뷓FZG' ]z|0lvlQ,yh} ow_l5ٞ>uZǾ-12~vG/vdה1mb-8w wiR%{͊J dÎՄ\%VTbU;c0vYDQ/ߑzkIAyҊsP7m{ +mwp@ ,c\.nt)͂/8E^n|'qHE%$Xu[}>Pf(eH3e$d&Xy-JseH2 3Sv,I=%1DRfX XiyϐrP0 k]SJp%B)+JyBkճz钂!Ӂ?j1r0țlsEUs qV9o3D1݄?FQ/IesCAk|#7Ragohf(5-fyVxbhrV8}p~/\Zԓ8Ӷ}T"Lnx"}|&1q^ e5&b_j(`|EktU\Bm[(ɂevm«;d0WZ.ԩr흮xƭb۷kF:րz~J^tf9nute[8KCZ+qE٣5?Di?`,me3KQ:fD QL1=RCF#2ES3r" FrI?zk'𖫓|OR?nIMlݟvy:`P "**dži] M\&ƇW%lִ'L]1WK8|DN5V )곘x)$8+A?o#U2~a?e`}X_֗K'ed}YY/k!3@= _/)#zF zڷܙj8pyTyv/vz[27ڥ1Zk^b'n {CNqi楀"ǯk XL_EoG29(=U4z/z(yCO  ]'c (tK0, . w =/̞1SɥJ0 5=;3B$XB}a18je(%ۊB|=$LB5{T^8Ff_6?hbC뢗u8LŚK6Fr.^WL+DĜj$UWg:г+tO'>N_<1&OKt3::lLE9{\-; mLj`٦_#E$X17\_xY} 4c܏nL Yt^ŏdO+AFltU WiUK R,hrlRZZVZh[FzǮT|<)lO69&P KnfJ"5tgt{ ڼ6my.˻.w7X TxNY2y}(=VjBCT,2[fa6ZH/6Q7w|LBi]?olg|E0ѼЯșw(& 5>6y  Č@^#xBF]7T`RIM7cAt,BQJ2Q1ɤr+َX 5#coK/e`(3>ֵ9$m-w~s6F\@ fVX.Aau3t,b476@v`?4 c|7׵7[ʰ봁M^t6xm6i `WyB6^>+5|df ,87 ??׀n_ %t)/[5-Qy~ʙs D):+YD_Ҕ~ x|}1N+}]uD3 _L,i|d*$b{0FۣOi rՖq '#cy */g} *WtR./nh8j`h> A"$զOU3Ch\$ v $ʲ$1ّ476w &˥g0jIblo4q\jKз-+tN[Z|0͸ʣX9_LC+ԛ ሹl(eQF?+Qb¦1F qs IHƄw"J8~ͿcsH_ݏ6ם7=A'H ҍ!V:D|F^CSW 3Z#Qb?GSF"}&iM7|B$1&2 w*H18Gɒ5ﲎ6en E}a%DV$ '֎>37T&,~gAUؘ| |# Y Y|g1ٌ+߽q[*ޤ޾AO iD>} 4p8+?OhLm) 5RᄚMɡ4Yq`sW r5VoajcWCTݥV;eԷo b=I^7'=1'@Ÿ#ejL3a|SG8*'ɐMIcaUhXHߝ.a溵5GWK $l`Ǩ¸Ȑ,cRDZ+U8:G+G[w4m+ }t7L6wqgrX~cƬh6H?ɡbQPdN@Vi, 7†()`RFHJa-0w}kJ[.]jX.ߥ?C4'vu>[-/Tm J[[$L>6oVj𦓷tj5Ѭ]ifokpn!,]SV1k X2\p| SlB4d C/XP1r:ơ .`|~[)rkk"m+~k-Uq/L-6S {yq6i&閃uj4MKӴ4MK44YiOqS^(y/3 JZ"sO4@o0a:V=zJWY&QPމOJLB*ZiϮñP=vG)C6``鐝C%2뽠NǞXN}7?,~Йd~ 5=V팡;= ,\VKEge?-ԄmʎX~t”mkwCM$1lcY}I:69c C(v PjW͵(PSvWh0TZ~Rp(U8) uۣP%VǺ3 !1Cq!5& ͲØ}eT 8foe %ܧ{{L9)dL~3!]C z(Sևnt<<*|RPU8yiD`߾l^/!RrYlm~".ΰIe ~ZS+gmzХjt}aTDD!Qb Xl0}yӺvG1 J"#tiЄ9X;L"ϭF[$nUxV}%Ң| _A=@3L͗xP VfïAZU - g^9?4f~$Hŵc8˷ږ7y濃6z+j8]{‘Dҳ* 3UPUpuaV>%,ͿxUee1ڑN%F3D!2 C=ӧ@31- ̙i:F:^SJMObn5W@b2e)NA4 6-24|7%tձp`(q̬< += Ow4=(+mM1c\w^V־0L@4v`+qU @ZA]۸GbVkZ'O*Q1a)̋%WTOGyT/+ SȊ_!>\VjLfoP|3OFv z[[4;5GOVYX$3a'; hq#yM~WDmKBM{kio7.-jtŹ8m32v$'ގ6vE}~%RRBQcqe.NJ XH i$f9qP9IA}r5@cM[15Q9xСHb)Rpqמ{-8IȂj`>:Tتp/u8|q=W[ه^} J6߆>nQMmt zx46$Q4H6 +&ixJ]*>fpQ"p* 9ui^p)"O?k$0P7m睥\m[5N9_GV21u FX.LRZD5KI8f8ehVͲ󡸫i )Npw'u7=(}cA9$Z%ƲgmkXS#7[$ cPA{꺀=mpo(!ʝ]n.Aޓ.Js BBD&oQt|핼ڣŠ%FLEVط6`@:mǦ0'370unt`Gf\4noѮ(>;agO(bx%}-*$%D>b"3s|IVaRbc(#eua:)KēW(*y/}&)KjPbbG: 'ŊcdIȥśRKoByWzg/+^"kCIx97cA>O*$0e6G& m$/BRy ڝ~~yOiz+RF5[;'J@E_*7Oh¯\VZ u9Eo(WVJP‹R.}CJ}BQȈB*G}-5"FM-;p~|dL*)XKOyߖ^&4\&u?Z;,BE} ,1Nj h|bjRiWI}gN}F~;=>=$G獋6!>=0AXy awܓWSjA#a=!~Bx5<^+ FXb91̙LAc=y&=nGw]`y:>v jr. ]bn (|%i fh:-DKhRGfw Z0no QTo.vWb/#SO1}0 EQ(< f_A. Lo[ r׹(|Tht8@"sw5Wx={[#_N/yFߐ'w8ƛ3y rVyBprǧͣNvrvI߿7-:6N.q oG@0}4/NN׀ Hɿ>B#~8| dL88x_7/O/?^Hb<:=^T!>K  b7~GH J>o )+!p&pѥ&T&KN޾?}{rvtߞ#O͓*i?°đ#1:7:27SDor>;zIϙ?OAϕ]*/Zz F0y8x) Ax=¶6) ΐX=9ACh?D^.rK\R/hzr~=ysCs,nܣ秂0T? aGߝ.Os]i>GVS/]{x{w.N)_gq]#^EBM4śm9" asr;s:/* d xfC=fc-)fz-5 k_ɫ{{AِiϘ84< `·&,{ҥ__4ADbmW K`ߕ񙬛TԡCǦ4^M*@*[Tl ƕ(.0?-,c>E??d:⚐W"I?hUM14>GKl_Kh֕ LGĉh L>3gZ:̨M,ʗs]2 f%,%.~YV)^ [ysҺ.栦w ZWƔәPeTkw7,!w^\ީ ;2 N#fl>׈`Pt4@3oXg'PK悝-qva^$;-0 dge^>(p6.zۡ1|lzſeP bs(+@`XY"D߿$Kl8;ׯ1hJCCE"@Jgܣ g)+5P0$ R=\_q5 v(P`p*!PK4YL{J鋱}"[ dACx-`]¯L+f<@ M)Jq',l* RZ؛zS`^N15j~Y3bSXso<8}r:1vl[z[EY, uAOSZl bZl>9-6Pi ubc]-6ݍ`T^,ޙwe"Զ;;UWڟ|(~y0NPZWp9r$=>I 3 呇ݡOCAj d$u 13TiU^gW?UrKePpxZl]ɰ/[q>)(>쉞ÍBU$*hneb:Mst!|xx|ݾHn ɏ*a{~f}n}%!W_GmIWяrm8hJcփNutB(cO,GIQM-3U3L9h8|7,W@"y` S7aI4]h&0S7XR T =5؉:Bi=ՇC"q`q+!VԷAV @vXsFnNg@DmjKJK2UMk[*+ZZ |j0+Ǽx.%*?q1oS&9b:lBxN슏g@>3CG3 Q |TaɓUZHs'0tK0,PE",2ȂpR,L,jt x=M#է! rqEH?4wpQ`yfv?owɣy gI+wҩoM@PSs ] ӃYpd2 22S&΀Ϣ#R㸞Z.Mj"%jQ1#M_;P2V4Zyaz |Laa=#}gzZM)Ev]EgA$9.3i%SxEvEFzfzy;ϥEqJs 2nx21!-JqSs۶gM޳̈́uf:̻pR U-9'c5W;G%Ogc?Iσ<{@G>Բ ͊}", նЬ DoZ#ρyh ź,͝l6X^Y%gZJImw1X^d7X^ixK"tFu<-vή]qO>*ȑrfB6<-c=I~K cw 1a܍!M`Ij`iN΀MHf9yj|mKd;Lh4r<4WGT7k?3'ϑ1:bE( hvIE 2eq6_ Se(D գ#BD_6/W.~/~Q?!_;;_~N ?~) ,R ;Z,ַw#jXtYFDa|3%צCu%,uy8xX8n L#Տwi'`YMvW5;2~ZX;>3vL1bvݝ\`QtG6oN؁E _.;w k̦4+gݔtJNظ8ZZk.(:6%'7Ž{).A~Kl71R7xé柄R_vo$kY>}߅+ހ'?GXG{cyMpEAKb%OcU`Ra`qQo\N_?9#Ahhx&I81/~Eyqe80O/UsJ+1өPQ84(+4ue t|%oa-\8A+Kq_ЕpxPKD0(ժc~Gj)k羡n|;;l,/ ָVvj>Ew5P)Y^!.B;5tIN%6|ڤ{wZ'wtxbV4r;M+J9;++l\v՝HlFnYE!>LMvdLS_mV?BDNeB4˗!&NcE*UtҢ%JS-IF/rJOhi@* ?R+*(4'ahUd'vջR׻StywyMMP/Q( u9q~ Su.EeFu.j5+*!#}m*tlG;J"<{@_IRxx?G\&Ү/[.(NOyqxyz~MaOhku"Ps5bDS0; ^F/i "/tO@ cwtt^.jgp[k{a F y2O%-a5?"$ md`vrX 4V@fۙaDt;-nOaIF {>pthe2,l&Է=W0]0 vzz20TG.tkdt`YW$]Qu'wW8:9ȇ.P,Nyas1y;|yq%yw$ges` =7g_4NMrN?\?x0@Y#gG?A/F w#oȇקO/!q7g89$ӣ#JOGO?o0(94oZ't ;>m]ߎ`i^/'> 6~\͓}F%9>pSɀ#(qq7?n^^~6Oj0!@y8cxS~j.%P' q"1(kӻtpxtI8T[$doOΎNsyRU:mbS6C#8r FFg]FrvS'vG89/)ht>3s:v|@|'1*%I/xxh::j5. ;v %; nêRϖzԳ-lgt={Gj3ۓ)fo: տ(Tżeu:Ç*ldZ#o;`0 W Nb[W-|#ʾ[LOwvYN$5);~3fs#ݝG"-¿[> i8\KS1\du J '{c6osU7h+V&c6HlM^~7e3& Kq!g.?uI"FLk!I 6X0-B.'`apxC '|dw9Ei3,9'`(Gz#E% >CX׮M\ Wζ|^Olr(zaMl$;߿G0VmdEsobH+kxϧP'#^AOO< &OSL@4ļ8Bn>D 0,=@duysdQ%؎hQ SMd|v@=!@6N+{, -ئ25ڇ{<0y"`opC71ϏLpA(#N58)?&t8+ 艑-NpfrA0cNUb(T'[ӳ7 ɉf}Yi{ay-0t9Q|Ҋ:Uo8qyN7h4?LʉP9(Ay1f#e(֧&7Ds.Og' ( ~ΡX4ώcO$GMH!r' >D6`s1l?B w>Wxxmnl.]"P֨p J=*du*Lш݁:@#6I$6 IQQHUe]M{GI|<;s>O׎yѪu (3--X::c*uP]@<4)? V ]fwgBʠ=TS|ǾHD)GtF8?~+x`ut=Jo}!(]>Iۑ6C;uKTwJKDKKDKKDKKDKKZj$Ƈ&çc׺XdJӺ+mwt0{4~('TЄk)2 iPcmyca Ŭqg-z@_!Үbۄ / n!Lv<}^{=\gxg``caacg9#cgbakbl/f3[sf9G׮5H$B '|z lC``'RuuSR_Ѓ  ]rrrmR7ͥi}$9(E>z숙wrn,k4u$Śߝ.b£ P?WP쳷o~@?o^VT߿&?U󫡰?>9zjQSwI :B HsCP#L/y( AK|9@X]a` {LlNbN"" &A u<>6'S9]ُY$o2^~En!N/mXTpCnVM1}mMF[<ݖ}ki:,9UB_< ՟`#!d͈{ 0[69u8E66+[ }mFuyL&h ϔwD~DYP̵m ⾁f.mN~/$5@K[TX N`?ϰ$f}L3ϐ0PF!3 ).߂L<!fr㘒atiU uW0yʘ>%إ3C&CpHgu ;L1͑; sԚg^82b8,[2WrrdF_G)p56҅\PdW20(sB.Eȉ::^Ux(NJQkR1~PD('3xQNlq6󥱬<+h*=Do698ƣ]]eWTA6ceU%+bvT^͵:-{|FR Pu Ql`JuV%l4$8ŽģMX1HBr5a)2rD|bY'@/@L>9DcNF%)3$O&% ȗʃ+SyO B I;` CW}0a*a[u FKa|a,:zW%ՖYNtK[bK>5@Yd)ixiA)+_E;>E12 >03$*ruf.Yep<47!O &d9'%}(+,eDb,%H4ת,l,<9Η;OmMY:9Wtyh&t|K4-qqNfss޲=0Q8L4}0%&֖bEy~Y)+7Z)H q8XI#1z8v 3l~\)!rRz yV>O92M*™@[r~[QaFYCUxH @:7_޳Gީm3W΅6\Rɬ6sJ2徥YO*bR%+$g)dqK/{-4S+N=D?St8dϮd%ZeI~$CܩSHg)! #|<;<=?klqNmk"ʔZt#QXRXJXP%4"ɴu&=kB:#Vb4!HNw&ЙLC=Q\j6S 0,B(, {d۴3iNf[{`5ŕ 5K?~)ĕh W/V|v| ͙.hX]WBE'A܁cy;랴-tv'8=z1TADž8>T nOFFm*e8 2f>Hk+qv0:# zJ9bd_DB& Xh)pJbUAlQENL1Қ v#$ `筟- i1 Gl!.8VH&Ah”m\xleghUWKj9ʵ, cTpilѕ;+Y4Q./Fw ;k1V[FZqv ]O<?-`3ʌ2r&L ^<~菀{uc=/d{wwX uGeNF .r3o}\ǧQ/HB4F]j~JZg J MsgAB߯ Axa F_͵oȸNc8ƍ7i 4 c=) [1^楁VFdˬ#gD@Zar}s42,,RbZD!Ji"g?\6Ng'go@Ub*3t&@^-T"]tvC 5qnm1}h>y9Y8eNGr[|34DΰUQNS*3dCQ7JfIf7I>!JWM(ӡ,?-BOI2:dED:Ղn/f( .(ZEd@#==ary69=S*}OK t&x&I$4d,$G0Ic#Ol L L,NANW/1N@722ècRߧ|Zc4Tt5׿6XVm `=.3Yd9'KY^%xqU,\G7ct|/oEkKuGy`"ˤ;D4eœm̆}zGFvRqd{laqH H=a@ rW{ey$+g &T IVƇ9"VY 3]qSFb nOdDˑ3R}_ѮԒayAGt&{0DBSC3 ;;.i e \Fd,tX)vT7=$rR"ѡc'\ҙ2eYMJ9\/#3Jwq..`-lܬ⢊y\ťIG\#.en)sgs-åxR2x&, ̏`qu(;L~kml_GWV{`S7q 'o`DۨL[4n75'~c6*줵9,dUϘ-s{Y^B[2_hk Y^B{2_ho Y^B2[t Y^Ǝ]]^I,s,eIv"& gY'Zƀ>EoG&wWA^"ՓUC1 |~ AoPHB,&E dPLBT6L))/E,+7uXN(,aHޤQş I3(kyC@5ƳUik=B)/~͗})*2CLC@ɹ Ɉ8Mfi3tׄvoM\0~lNd )}暰wH#V(0%gqt\.{SYA{%[τ( 'o!/,c w ׄشv``X#& ?YkG)&ǸTؓb2T)*GR-/Ee$Qly02 r~}zlzZygOz6>{=g, MZAs` 0^6O5}d\i>v&{ؚ6H'ؘ#g4JFLl>*\?9lm5Zm!"FyA*B-H|‹2WFvl~aLq/ #cLÙ;ϋ̚>u%*DO*S ĢLa1;, 6W#?azqYշy %OFB)|r␘C!:E+Mhqj{w`-T5 h'aqB&yd\E1u p̍F{ {dsSX)h,h̴:έecԱenγ*JRzP[A:`=߲2xxn5Qjm=j{tijqNbn]3/ǯ=Y6d%J'vMl q5lۉt]t}ڋyvm. >MW]XYo{">oj EOQo;ksOƞA.`sO4GHIY sJvsxvXw \.ټ3Bʸ0fźnJc^98 BS'w R{dA\&c1s9 cuEsrqȿ|kM-[HO[1w7/3̨FFb6X1L-.P&6ؕ2{ٹz0ZHhn|Gkh3~p#cVyUFvt&)D?cTvtA L9vEh"ĦW7<@4j}ȥV.i'uǃg8MU4Fs̖Ҕ_]Ѩo[CR:]\1bEGV /-v 80yRBR6q30DChNɑ2J%)&&B0ׇNEhKcc8Clb r^O^[.KWQR@.Ƶa*8DQ.ohEd}Քfj/΀%܍Dq\/p0*Щcwa;/Ri_EѴT&c%ixڙF~ K׶J$Cg6U9xP0` ΈV\RB%u_ԉ=g8?:$}iߒ}ך}EToM('av>ﺷxK\XmEs"mɛ E,yhS=zoQ!ʮ4y1A#ʷNv5 =Ҥ*^|() ňR##E 7Y5q(p9N61;U5 tY ED츺aʢ(+KqY=U_ˤz5э9Ώp-W~]3,19*SE?HR(DhY@D lr0??I"a@,nd7HwxyBc3n ]M+PmfoKxvtyz~Ls}FLu4AvI,t9W9@($=X(IF3vGh,<7dR/}D.Y D#U@npW}ʷK׺=^J'ѵ=9ipӭBw24r{`M8s,`? `Dt`0~Nm{3ʲ# WxEd@u bQ^QyccQ _Qcʥ=YW>FG[渶X2%Hw{f20U b㝃z#7T+?I/'3jzXg9}>n&ҕ8<ҳ{(g~97MWNۙ܋CI Գ&6vn`|d^h)X$& Y}DkdD=O=?;ai vo<&]OaTPF`x@\bNc=?2 y6OM==>>,h|oN?lSNO+DB}BStvomX <'߳o4uۈ5)*Gmm{=C|czl[jW}۬KvM*G ~>ücw'3K>n7ynun XܟmߺiL3b|#Wq~8=)ۧ29h !]Ps&[^obOuhꦔsDÿC׀()?1c8^?tݹf^1EO /c)nH,QKaO-gǧgoIǧ~?l ?9|89P}8 E _",r%xzy ~8cr| ]|l\7O`}N/)9aDhy؄O6 87Lr)4thگg(9ǧͣ0ESAD69-Dj s#' `' zO>]ӳ7 ) Bޜ^$a$ I"|kwApFq8Q$'G i??eX4O oR|zwxH4uk |>TCj C8R6')8;mY}皩9 tVYUPHE~ nhȕ`$vBm QXڔlb_ۤn-:۰+j#E X`b\scߍ\.P" R⑖\F*4Ь@zfaNܙYDuD|مѝv~ܖT\COY\F#Oj[`$5z`Whj5Q 0N;M>O(V D~p L \R!Wv݌;C0Fn@ G곻:}8dm 'xj<ʙtߡ"ۓvx vA% OGsQ5]'tn Ek'D4#2l)QLxMxo+zN Ʈu=(Ǻ2SPmn}BK=An}f.v~dSija%G\/'Q,v{"Q39;Z*pGߕ#;{9\CT'Hjrh,xh=GNFomfgngrlō <{"UWbsÀ52zol0XTOP*le SRs0S$? f{B*"}'m3E0*9B`]1[aޒ.Y*AOJ+LƝ#Gśו?\{`9Kbk|>˘l,U;a*n,B/5`9_QzWg@!=K=GPR] >y!`"?T }Nj7KsPac~r_yQ(w/KGMǍBAA* ̣{0!Zp%7sg6!T69u;v4YKN<&#zS~}ʗnЏ9SO;)զ ePinw= ؁*/-k GBFTp2< +僝/oVDKӭ-yj)t0 u#(&-LW_TՌ+TG^)c{_nI" Իj>ѧwff T,' [=*,3Z_bt‹PSm0BM #+ET3L !rt1.9"#^-#!2{۵It-Є2E`t}Y9U9OA) CaTat̟Wђ^w"jPiĺ܍)i[^LX'Jٟvt36 r7~ҙL"a@iJu)5A)ND(~>0p^_Tڗs:O6_aJ|W"1L@T\Ƨ(T C0gӗ3xt%#>s\bO )]H9#LT}] Aʕ!RKeA z+rc|֗[:Ct-ޕ3~I{m$.>%D2C{:YgO$%NhfE0\RqU9Z6Lt0KC slؐs绠H):Kݗ% NJADR4^2G-G Rw)ΐ-AGՇ~N5# !EM;K$vm;Z[kWR F+ W4ɿ ^_/_T39$!/Nq9_Q:Ug8x?fڟ[evKEչa.ZuHiթvJĚ.X%kZ $b11+y~`YȨHzP@-U] WZ-U+*zܭ +y&c&Gpp_pE. ua xG1h)H!?L~'/ȁMxD/L:U݂iBqbaPly>X<ϸX1GE,ָ؋5^b<) %|f)Y/ /| nM_Mͯf`TD,%1tP\&xD  hJ-`qtIX1ϹD\-\ "~]4D# spk[Ճ8M9D\twWu)6`pKx-.˦\yhW8?Lr'\>K=Å1iyStu75S[]YiNklUmdu*5٦ xdV’+_3oZ`O#G tK߷\߂8jo <Ɲ?QUzNT.NT -/Zpq7. CkasS8}7!˾3̛N_!†˾G\aԅ6t]>ɦ&l U&]u>~~nЙ}bz0f1Lh;)ӿ:iSQQ<o< (Gus{hWsE|Ȉ LeI͹'ЋEo)c\Q/፶z.ެ@Tה~[JE1.)Sc}]4aB#/"]1s09"qAMCcҳcŷeKk`5m|e 7wn;V/e^T'!114r||ij,b7DaȩDQ5GQʥY,n%ҭS )rI,n%mZ )E}4$;Ez9bɖUX3av>k,h_("|Q.cڻwDDϋp${ "gqjndRhsXK[K G !}>?\ﲺC]}vXO*#eN/;#~~G| \Z\z~S y5]>K$ִTIa't^rCaDJN&)DrSnI:JpO); &ᗑ| VMN<h-US jx2)X'z(8;Z6 ?Qj9׽$XJEYhl_pdh%f$/#榀jE3R@s@53 R!J(4K[[[)PaMW|Hֈ"~ru(Lu(suՕ\SZYH9 ]WkTo~qu]=y"V#BG|we|n9p?zi 'nODG,'76Vcؓr{[xΰ_ ʡ'XebUYpț7/+n~#/`t("gIqI!K+Z)DO>gV+B c)B&8A+(y̅R*+<ڭ=Zxb<ց=*3O7 ] &PbO773]}]Ymx1.0ԩ3;$%~*܋N%΋L´_V\V4VKcpiZx/¥r^ouKӟ4K`oξJ}󃱙W 5*;+nKX094-|*U%r"F-&fMl"hO;KG 1ȁ %$6 G\΀=6RiK~ͲQ˙ޒJ}oԿ,y&K<\%$lwxEocu0noǼ&3G.EeCN-wl~# ]ʗ:Gun#SEjw!_U~CA?+%_/_  v( 6W'bO_au|{WPwmŁZ%~YsA)ԙIJ&һ=mxa.#NX1j=hNi @Fɶ9noh/BGz\gdBNym3Ͱo ϰsJ?*׋E: U&$U5CEZ=6J_U%_/={b$p&#&jԵ Je4m'TѸ l' Ҥ7}E\Ir0<kҝrj7gǚy,ޔHDyݔHDy,ݔHD>%0.R")x$"\ewa&Qf?Fyţm*{dhD.Y5"MZe,s6*ik^٫ űK0/D7x;iO$fαTA`GeY?;oa7m=-n–xj§W>56M&Hw*쌤v~ĦFgȲ? b1ت;z8ڿ^ȴ_HlWdW閭˶6lNˆ^upbPHFԖ[ X2{X23{bӳ"xϲz&vkd4k펢L8a@U" DCf gDQOcl T.u%k&*XOI);hCT/{ӊ.f W">oI? ,= JE}՞'7p 4'I zW%m+ngaX%~Y#6w38JL{U4{+)8wWUܑgBL(U}=z`QEWtveYVRیԗ 8?7 H0?qS>{Hṛ4020$gO11f ^~.gW 2QqS .e] 8eK=eJ:ߤ fPRe.)(TeI[ }+b).R`Kqb,#1ES>4RN'|h/^ c w!wn )Wa(xA7ev\p睼܁C[r}6lƹ9S'Y=n\[KpjmC,`#\ђQ:#}\]v9=Jw:lOD"}6/+C 72?}"9HM!w*Vo;5~t(?15/к1>cp\`q7EAU6F=9fPHo*dB{aGAs~GgG}a5uƁ6l.>hCmC (#au3B,0X ,`4Z#o5v1,m> 5ʻH¼IͧH!N'Gbs֏$tHj ;HGW?=$51]AjwŹ4YK.[-Qf)޻;s+!UBH 4bUVHfl K f?"Ψ~Fl's}e}|ovv>VH)vy̜@O-Of>hjNzۯ?ΦשWŕ:;ϳSƣ[e9d<8%FҍFKl.\I*V0QBZ^pzi.J%hJTaiԘ4t˔e$4]z%AmA-K\ uY/.fMy0wzNG"tL}JeJe׏`Q_n;=OGISUJk o(ѸN# #̨ Вo͟ӽw5v >rɂ‚&hûC+CmtX7\Vm \ 9T..;r5 aCh2܏m\ٴlZ݉VZGN+(?tzs zstj"G#d*@ʿqE!bIWIR1G]" mձכMnGM* TlQwUq<6$1(ƑDW§EgRF3=ލ>lY^k.[Z*oh8dMvU##zA}qCd;jqW>(cf% 9'>,9qEZĤ'9ti=_^i=hl|2gUCi7i#x3l8մoY3ĩ]Wo-ۍX+%%R3 |MQlbgu̬βMgY &E`bΛ'sb5tכl@x MeSnb9L&} 2v:o4ֱȦts9M$Dp8 Oҳnm7BTL+eװvO:!ír* bY@4!ǾM]mSHX4p$(a/.$j/[O]Uec?.c^ ~3l\O-;֢NNCC݇-M*&:Z}ma&c`"JDeggR'ξVp?>y:}C79F3B!jn^ B]c] RI"b\6,J׿_̏ҳP-DI5'B~!L b=X* zLt\8̠c}u;P)FxdԚt+SgXagr!QJZ=k{"+ TKSP,pBPo U9"}WoZO)'ֵMi:k QC |iYᏮƯct/0ێBJ>}/cupg#6`4*}+g"mW615ڥ v3t@_;10 dwώB= }C.x]_!~iR }~47ք"-ɠ5 /obƈy &V\,zbK _}2ޞ̽,bOB$OUk=9&楟7t󉝆W'rz"W^eإ',PI:fL'ϛKpSe&W]с =b{!Fr>54 p'GV>V9aҳD2 !Tf/WXGl!V׵`m3_ׁ5;kt4jw,Gw^:%ZqA>Ytk~X 5|)1(YE30^cN+ra^&xB ]r_LgA~E=jh#{#p_0?&"F@ۓ} q $|fTz $>VjW8 z~&gp|`muH+mh8ð&;74ȉĺFh{Q~VJ gFq597c>`p ^3;%lkE;gEjI-!RwuuuuUuUu [_>9ɟQVq,|/*I) >cڳႎ(jz}*o"bhp~&hrڸ-IW]%gי[59Ø]߉]ը7;ӨNo} [3)a'ybL36R6m|6m@o-|?Nk-@㫰q -YM - `FFjpvM83ή gnr>=fS'czS -7 j5&h5J.lU9tMpLPT:0iC8Gwk󔖗ge8͊{$Q^cb׆ff|R+EanCSGp/]F/~}(Σ14I?nEr:ŧ,vۜbӠ zp^ˇ]2En7H;ޗ7kij~:MyKH˾9&%E;"< RGɆ`?Y7J dyad)d_Ҵ5`&CqK+|!X`ih&ӖR5_>a4nS1\ ǭuiUxL)bscoemA1ܜD(?qhOO 6ЖKYVcssy/Qf 0 tˈ@2W^C$ɾ\"IZͦ`T׍Y?~*]!6t=QiZ|Y?r_?X \AL<]>=Gu3@+.a*ZDћ^œu ۼHDM\AL0O8"e/KtFV5%ίY27ɜH.PHjLN_ I_{I_qssGLdSW^Rէ.C˾z'ojkZ8jR装 he9rF2 oeC aq Qxحxʬ;ݡ;S%/ԷƎ]Ð9IY\a,4&Ϣ,lN*J(73 E;mӝ6TA9RrO0Q6{Tex`HZ)\d3#HH٥y_Q/a h ܆&錄'i~Yׄ{l̄Rh@gD}#V%wd.vvjPCjxԘ7τsRCHy-6 Ƴk7MXn -V.26+L b{&L(1ge&HJN$KJdFNN+p'GlGc|vosy|4fगFyhU$'l'RgKx%i~nzn~nZ./h`;T6<23/2.3 ̂rɭ̘wғtvBZ<.AL21g$zB98csDD1#-X=_<9ŒmKK%ʅ H5 s[`ZlXN;-!f $:99VX fFyyhM%fP&!^Ђ9jv¨[(i[kV*'MrcOFƴkc=9޵a@E$ g}5G *K`ݿΘmf&Ft IT>h@[^{7gE ? "y4G5 ЭFQϢrvYZ╄, wPjurhTbϾ'>~~ Bz QbHCRȉ4Ҩ4*MxUD`X߶DmU,UϤ~OyA.*W_*b ]Jmެ0U[D(&TxUl£W;T~Ŧio7WU(hk9jb҂}QmU AJBظPE29 QZGxuDȱ!Uk CC.Ҁ n KLx CX~G S ;}CRɀ.J(SO?n(^? <j֡y{.]6ޤԻmVrPU@&%᧏Pq/˔1"U|~@C:-ݪU뷔X}v@0 Jy P,* u#x6rf`82@:vo:H~Wh™5$GGǤ'ad-!C t+*v"LJ5!E͙tJͣcar~!_ fpJU/ QG D@jurԣ o+Ta/Mãdm"%vPAgbA=vhav{|鈑A{(Gw@ rϰIZUA"J9J%P <&_+rzUivUcxQi4Yr<m>(M̼lÌ-F̽գ[3nƲ3=[LáIg5ڣ` mCkSxb̞c?vWF=R.:Vt 77B=nl?~`a1FV_JD-evvTפN_Im zPG`ahLؒ// SdކP gGl(P-gF/[ȌkW:7@]F7ѭw0b^Ctj7{K kt({ݶwHA0{ u,#J:_XG 6O?V6 o[f?0-ܕ+gaO;YTUӾϿK4~Pa>PK$vx.Q| -d21Iz"&RYcozT"fYav)ϐ ӐHK|_I}eRm1K-R1hݭvk,Q6^˝gwg}[c&1b)\SKOEev% g.I֙w{˙*ҙK+6Y҃+N?/tBX<\mEgQ'Y NO~rtJG+9BFkK (; XULde"L;ᗮ+fU[O#aB~^%Pnv.‘_X : JQ Hu$ARS=A`ydw{Xn9K;u"N$ L79MRK.Kh<0Qݒki[),пJ'fZ 63 F*v-kJ)_Z>#lJ|>\vpٝ:ѭo ¦ =+7VvOI5DȽ,^ԱzkMKp)>'EJivhr BZxBZ+%8p =?g|{(+#OVFj@Ye魊f/,RύCtg={9BBbnF6"t'H[PSޔۀamx]xYm0Npu~i> /n 0ICV6թ4i><B/MgZ#B/MgVz #sK2ӏLSǪ$Y%UQe;@VE5KHY$"''a|љ91-I6bZ3w1cp=OZlC5uc:>i mX;pSкz3'7a=No{| >8$W7i> Oo,&H$%m3l 6o0^XXzH63Lm#7g+$77ԹIR,:UYu+H'Xɥ ͐]ڰq r eD^dn\:ȋխ7ʤ%+KIFHoVTL)YeJ'+o7SRozl 7*]y KX>H2/8ayM^}~Uyi{K\!,,ujz\**7I~cEqNDf/k~# _X`yrxIΤOlEYԖsd\0Y LV't.C G]>-Lytr;$ǏdCb(⻢h٬oc^{H΢+.;[A=]~>ޓL~=Z ^?Pۆp hܩ˷3ߐ`F%hϏQ%Eq0R+ A.Vo`D6vW7lXG`Cp @!4ME.NړsK5-+EI!^9jv j]y7A.8&Xı'IYc6eɑoyړ1uc 1F&5]la8Z]KƏ`M߬ V7'X?Ab :v O@̱"Ta?Z$ _˃n-h39ڏF"Ёv'0"]zĸfD@!#9pwRg^L"o"{;^1::􂁵G DLd&0Y൉LI@P-m~ C03pTGk~;[MҬ_>ouP傔> sc|_4'<m^P}Q}&_ofB F֪V9dI!G[z]mAV=G W#Kr]m?U6.xYo")6ZUAnnaT6WubFIJEWWa,UbB@йjRnaoe t#͛J_*Vլ KrQ.~d<2` *JhokvKUmݶ*C~$&Jm)7)n4*ҶyMmJiEwLP%P; Qo|FH JHG E 6($0IK,U>\U?Tj #Of% Tmb*kSGh.LHxKaU'v叜9{OYV[f1RuO`6;5=.aRPk?;;T T.qpg8D,vDL 6`(/֟ $_ewZe +Pq_oLTOCdJwYe/. go>Hz7z,i]-@8Bn5~o7C&@{"dm=mhJ- M3I->4Z~0&`UYnB? Qd~7 ߔ=ըYK.uq]4'Db/p9d8Бitz0{#i2oZjYXnDN1RJp'7V:ǘ= _w\$@wrOob{Pӵ;}q@If\萡1[kH'T/-ҭva f@͢P1N=+*Wiy*>+Ö=**-ŵ[ [Jݮ u.sP˩vT}N\. F¸dek)"^kf8fkHW޼ϳs;6.}=]:"5vlB&_@[ g$S]PRml?֛-9әl-C.N^wsWEE^%@Y.ЁYkΑ6-=&v;f #wo⏕4Ak~lFtًbg7o.a5e[X`' xң_sa>s,IyuElQÛ*}E=P@''t.G MopA813R] =GSLȅd ;gϗMim5laQa$X MRcsz5:0@V硷woź\Zb8.^rHv|)P qBŚw}N#͝KNk KLWk#HTŎww14#.@$/»<la.wƽ.ſ.da/aNbjEGKV,#e/6/6S7*{whuOQz#l֏׬ë S7;T Q=Y8Ye,zMk5h9rڄߗߒ"fqsHQN9^ᵨY`C3ta_]LOknaGhbi3~:FМUNcB f V-\eww+mVB$_q+;:{Z\Ivӻ/,[4Y0qŸ́Y~~N :aR'LI0 :c2bÆoȺ(9ɑ'CzHۤ7f KNB:0:-\uGS*_&бYhpA~ݯ7C1@E jO&.!('B=0 )eY ,P԰MVuąVc:)<:ѶKĚ O@`!W|\߉ug0C3#cy[O9O$+v?'UʷK_ 9cך-^X>e8#\|r5&z7܁~<*&r]KD:pY.ڻ('K߅UoQ0.$ziziziziOe~vU7"S;֠ӛxkrs40;aBGd\yOqnZ2vW'0;w77EVqg)Ht>8QoN` YkJ{=x IJ 6TJP9Ԑgrc/03:ON:BX/)@M禝6yդWMZ/=WM WM ăbf$<ڦ8>)Jph qc'-D[Aig57c>bZ*)7ujO'rnUgKLK5W?O i[NqI&19Od|yz=+:裥iq0ȡHm0uCa-SamMr-l&,[g%GAU%߼ʈq;eD7K-%ϧs8tHbiSx?Q\}gP%uP)P-3TQBEgD<+*)MJUrUQ)\(u/TeT!mQޅ.R(B.[^ ,:Sp,By"VvѶm~ֶˋFmKelTa ]*mmvqcvyQ(m8nyn;]'wA[-jYբ=./OZr޿4hsn@nfG >ymE.0)"^y|̓mqe,)yjtlhդUSt>VMZ5mjZR3,WMZ5=HЪITM[dҁ`RJzL+5l韮؍F/^<ͯ`h(@|44\9JgB&+ 3Mڷ6 >Hhxwgu 1ڞ_J%%K=Ҝ g|ot.]votpypX7R-ć슫ӫ';d݅'w=;9Ƌ}}׵ө#x;}! "9>ݵNM\uQE>֯.*&< _-ݶU 5_x{כ^A_o` 뛫*ZZi{Y| Rksp5)ceE/7Hj 70* ]TbrWfi~,^]T7_{)hEQ) ޷2 pʑM\/_+ЁbsȀjVq %I2%`4ʷ5I//5[mB>HbҬ4p<%W&%mFZE64O YmV)VѸfap?5"ԾC `.=G>}ґB 4+-$4 LҒ:KjWZoSY(UXZTfoiǑ#1ڇK?0%)^REyyf ]#'=g@VTndAlqr_A7Q׋WIrbiU$ϒ?$ggב|FQ(LJ U*ydtzץ/Kܜ~2e0]po`)v}y=1f'ҕd}wiIIZFZKQ7G]wR]bo]DվKyR"}ѭ_,y4ヨ4'qܕ*We ;-,ǁ,`ǻ%I) %ߣ[-! ©J\ߠ|pG%Qx7&w[eD <6ԏԏ;ǰFjꐮཇˎ[F4\w=ր`v?3cuL (U.c *41 uNK` 柝1 `js`sc*ܹ r{K`́hZWp*(, , ށx55 f7 n^^y5j/:)Ǔd8Q@{=$Kc/4ȽI 67gbywLeĘ("gZel%v8X!B}Wv_;/.ȿ ^TyY+\NTkfU^"xB!&s"ɗ F#rQJviAUQUד׋TzYDF_sU^b̾3y lV[Q%#aES]P'-Hˇ>kҾ4uϓM Kؤ98' v]ό2oE|Y.@Զkk^ۂc+E2mP9ƅh̺n^lQB!J_˥@My=V "r^|ܭwG>4+]IWuCnhxRWo+JkzƌFmW_uƯA55G47cs E ?ow5qη↹x D(6N.jDޣն4h(j UH+헹Fp ^iNt&"*Sz/Z]7K\a;x.1p0"G<:~/HߓJn_ (l&>ӗ/Vu0#Z2v06 6Y TUVaUY8~?!]Kܞ,BIΠ&Z}_}i5lb`ϛVL-\.LMYm[2Lk2ɴ&K-{tJ[ltmP,n~nڄ&H+n##[ɪɧbό@մxR|\!B财[[*D5DsujE, = K5 ۮ0.鴮ӺN:E8K% ?63 n:|[MoUg/~U :Qh{5v}GeI=Ƨ|8p44S֢k<]7/pӏ1RA.zuUVZEF)^(_tg%:{ VZEnŭ"5]W\=_Fj-֒wW ZΤIl|r+,!wxouhSmͣYr# ;q(~r.n+/t5 'QZ-M`U[W2zEvȨ&gY(c;4uӼ+xMuۗ'ۮ'V6xxRJШo״0Vik\G(Z m *cRƚY/Z'^o:^X+dBgyrǚ*͉oО"Oc340c@?mr1ԏԏ;]I9=.n^^=cH%]D9 Tq=.CvA F㘀&{B>GjT/ER7nbZR-ԃ  ٵP&ԬW$q) O1z"7kH@+㿠If:*4i.0_%Gc LPxZXϡ'C{SB HvP;+cc@8<Ђv;=ꛣhtY.mw(. #»۵a5ƅ!Ć7#|d=൉LmX/0.Icߏ!{sf9*Yȇ#䵁Yd?筏&i/[ 7:trAJeuQE>֯.*&]iըn[ux؄b3zӨ47WU 4V̑j|u{Q}Aj^W[PUvH\W@bzUm}&j-^HnV|{Ul[f`.Uz]QRRkՕjK 4mAC.J]𾕁`Fo**~Zs@$W[(/EȀ-(QmTO~lU[ P_ I@cyJMJ$0JsHH@)6?K*U֪47, '`ZD%P; Qo|FH JHG E 6($0IK,U>\U?Tj #Of% Tmb*kSGh.LHxKaU'v叜j/`Qw#˼'͡"xn o#-J\n7Zv; ZNo=Hυf%ڝYdyu`#|'Q>;k[g0j0hV<ëy{W!+_AfLhQy| %jx x2}DURO Yu pUec6Ge9w7W eǧsn{4znۀ3/7`<9i=L&;f0ȼQ]]Vf|5Tl(SybrzupБf_d:#װjZ51Ջ[`nrF:] 6t<-$F~*󝟒-t*jwRu01!o@u:1<;/C^]y~?L[*yλ %6o3m5%-9Ӽ=;oϑZe-mu3y6{1M6%6mkk[{a6eXCWµS߭ɾﮊ ;m`ӏ8*&T.+T齧J=Uzy=kv (lּ1RC4d[dۘ3NqȪ d\R-] f/AFwtmDI8Y`gBWl܏D x urtNg뼫$Q+fX-MkPhXֵbWGH(W4|?ʓ"LY'dRVFͱԖ?8 YΪHϰ5Ͱ !=6~%箄Z̾1r.gUO_B] yգ?vhl63l3ffaWG˳rqwqa<Ӓs9N D^#pw{^Z"aNԸN~ɩbքIvB殃]Zل>-?3f4rQ}YG h}u:yI=lc:1qt]2ѶkLfLml2њp=fc.OaV5_m {֋^2^m@e+/+3_E0ڀy^ol f̙݃/FUщ>kMc<4N'milnȾca8,Mq; 5-m;IIK'%͡VCIM%m*NlmLf<͛A<=%ovQ{ҴyCm|t6z6d|Z/ł.6mCiJPQ @Z o omgɵRJgtiJPچjlCfdy#J(mFE%i=f2 IXWЫ@g-!ځ:8l?j8CEk 2ls2ڙto +W+gcH$s]-v?\ ҤuNݵGDON=hmr7>- A6]|:K^&>><ߔ_*u@>M}6wE 5>JZ[[%FUSP5DEdV'N4 _)ڥ c۬y[*}nUZ{Q}}{ժ\}X'VF;9Cc9>q3,4NNbM0/'B27 \僳{=NlR9xXQJP:%*~Wr~/#ۑcdSϛ/KگFo2QoU!ұut%Y5X tJ"_jvM0iZ6YMbfJBG)| (SJM(T%c7cd^\ښ|.&#ܓc"9+p3$A!Pm`hN!ߊ,ㄋ msm&h$CC%ٕNFBkIh@yOХO{2~4apdwc3 ;p|BPVnI~7F[p j;>y($8GCXF"p4 %0 /͂x9!⼸{Y4 z4^܆UeƂRؕ:#E0dR|GC{ O[hA=4PhGhtqgbXXg7zw!lF#,)+9RzQ-rqSo[zmbGhiL_>@A@ k?XwPROXؓ< Iwr5~$@-owQgP:`tAi5]l81~4Tx۽ U7̆'ԱPx+B5Jf`3srH ZthA ~4:ЬD0"]31n0$6m;th}3R/kEa`* t+FG 93*cEfcݦro:'R}?!εR# p6:8c$eSQ!QU.H3@n>7>E$<m^P}Q}&_ofB F֪V9Rn/90H"Wj 9n_ Y,U$qYmհzMѪo rs ҬEY*V+4J*Tj-XR cXM hEQ) ޷2 pʑM\/_+ЁbsȀjVq %(^?@2%`4ʷ5 oޖjU! $1iV<%W&%mFZE64O YmV)!h`W0ij_С `a0Aɞ#>VyHY\&iI%ʇJ\uڬdaM,Pe-*BåistI/~"< |Ү3?NwByoXw# Te wlg`GEaU%$tz2e|iKAeⱰj HW|e @9:e+HM9[ jk'Q,_`e~_ .}=pĴt )PsZq&Kn)YXqSm2H4Y{^+֧/rbB{6xTeo X8wS w~iz[h(x82ǥB|I|$ sPss@}X Uك+/㓆R:E8bAkQkQkQkqngenooq}~DF ,8[sy*}66ڏ8ՍXɍF$P]m*aA W2tgjiRR:HGzBX!pp ܉pY,ٚ,Ɍ&nD=mpw2M\m>oJ^ _tW}uW}uW}uW}5^)VqFQv_l.qPm`KR5]fI\fooI6YNm8<_Z 9)szV(FJQW;N{xHޟvκ\'g+8p?[Mo/,>&4`}Ⱦl`m&޾݀Qq3[1"QVgr:ouKoZӼG\۷ھ} 3 2*½SsѱF7rDii@Շ7ۋ5g;ŝ{<<}L־Y{ _oo|4*0>qפwuJvLݬ>1s(_$22>ohItf(,}أv@kN_mcpoael=X\6| ]>AJ`=ޭEk`stP~}suz><4g'Rf R:gF.Λ4.wm'A:[=8ӘFl_XuUXuUXu%X!VnsjKc4yr½jӱC@hMg<@ҍkt?((QB& 2OImeqiy7w4\ }_ǣ3V/\{w$7r6-P@$4,sӡ4 ayBᢿރ쨁ML4D٫=q Lc%Л+䄾dc xx)q j}/&uN pv-HVf#|''\m|=z~PRVJVZE>ۜ$t޺Ak/!τC]U1оi(1 & N\y̟1"2h3̹&o@ac_c奀k__I013xVk)dSu{%O9j̰֜$$ | >Au0zD09w7WR(蚹T_ܣrm[z9NNk,~[{ \N@$R$I2ؼWFF2#.; BF*njP9rR%+=) Fĭ9u?wVws".9(>2鮀;3~,tymИWE)a;er݋zXK!eb'p0n(z&Wm˿9;vo>#t)#_ /Gr?q+nWgWY5<)k^|-yOW(U7=JlX"6wrlima DmaʍWUQͫx8gQz ltl|XԝJE9'RUwcOՊYE( r?~yG8Bànt= 3ܱW+kEg:D|-x_Ys6&&GO' YJ?萬1]vmʸIq]ǠT1?ᝤ46ZG_F2q )q\C,y0R߯תa$ï3J5$P9ѩgj L̫A.9c[R+RR:(5Z?%跋-1-ӵL2'ө~#]!񟽕sOZJYHlX||`؆fu(*[!8έ#>4聙PgQ$u`JZ/Nk)b}oZ[cSGU'uA{-Ifi Cmm\}QZki?=ư&ղlM:BlȈw)[h&Յ7 =-|܈9E/ruw}% rSb)RMxVUPUcN W^].p5?࿷dTqrD*,eQE ?Ѳ_~-g'|_cfTiٯe I'[$)K.JO7J_-Mmm $\HuA/kCKߵv[dPh Oz~n- q,N/P Z3lflfMlߊz´fКam :<m\4h堕VI%۪^|.O$9@I=&Odi4ٯvoE,D%0Y="JMYijFj+ڟٯX8E֢ޕ.xw7PC} {~%X}:9rzXS={.;" 0z''0J]>KArWKwn  ]u/xd kA%n]P?CY!~ @Ji,z9O&Peإx;xy y?;dzxSR8W8,sKZ$z(>!^.+| j] Ǻ;ƍADq O ۣcςͅF6աVzc`5>#EyU8 LE9 jNk2)hո+A=:fY$ _˃n-h3`ƌсf%t 4n׆SZ ohwxAGKzY3-  #{;^1::􂁵G`ZO(6* :`k %@P$Qʱߐ=9CФqPB>! "9>o}6I~TlT|iԡC R /+Яύꇏ-~uQi4IvOkFt۪ÃW&|E_kIכF$PU,ROEhv9}3m#^/UDoV9Pڕ?rs__?a=E?FyOZ_?ljƢfg<JO{3,^+}HB{D+ LL8TNw |FAGё\e㧡IŸ𔔱GnZ58K:ћmt)Ê& G [F6򴑧f +Lc1誇dD.gېB>iW 4Z_-B$#h M!0ȉ4FwXl;QJgUׇu ⌈ٹ1G;_ hcvI$\?pطqd5X2Ӭ(=2Fa8BuSKH%GJ2$GT)u |}M4Ng*e0$L2 4MB%bq-13I^\N'fPqGb&L/.Ȟ *+M(@Bh1K m8a,i8v њ=&=`~{ӠG-6vx_e)rjn{T>*:%'jAUa^@{) Ŀ'!;0rmҦ,ֶ-@vJaL[iQb4'y{*2?̕eptZA) =(8.H^ {ז sȝQ5_1Ƌni4B^~w(MΈR! ;f{qot6EdDHI݉ڝ`AɞBeAY~y@Zʮ '!m6yͷXٻg Lm=ra w3NrŤ~w yk>;Ⱦe2aexf#yG!ʢuXȔLxbV:2 3ө߼ ~~- /I@_)CUU~B^.|S,Ww~!x#RT#ڊ޸]];lBSk 0#LA@JrV g:{ '墭NLؘt"%ژ֖fF a69,˲a`1Aq 7 1_ocNXӸOX8px{6@:~!?.K[ޛc{8F#/R;ϰLs倥%fR *x[΅a;q%HMV^lE%]Y&Oj]>~ܙF%.dj0%"/zGcFF!gn7Jb/_{"-mUGpl`<7x>oBVʄPB]I?"q"_/l~ F)X.@*͠)_]S6ߨmdY1"=+*D|dJ3l]:n$k[y$_Vd4>X4kg@8(k!_#C7 35DY1썮KZu:Y8?Acu]lGy̯42you,UO_ϱ&t7~En\s1(f֢_팔#Vf :TF(4h (%zDM~wG[HQLa" CgCp?g.7 MCzЖnz[ƣ*R̢C@#<] xߏr[HrC/v5@vRpO)Ĩ_g!;܍Lk/a>cL0+]wG |@9fP gX ّ׀=S.bˏdw{MJEKCk Z1=+L{Ms X 7?7zK(B>q{w[9 Zycg):F4!.zGoaL/bKXA adʎ%nSy))vzEZƨPָحS@Hz:2q8}2tp㐜ѩ쳦#-!tegG/̖Ԯ޺sMsww{>`bwqUx'{xL'Kwӗ_Bz~ ;_29չk.eRO_$veOKib"KnRJͫgϑV?-^F#DУ;~.#'u^ẗ́|7 dh^Fw d"O4Ab+1o~OVߗ\DYF.G ]23 .nOُyQ˨q? Zs'vOG{h-9=сD+VJw\dNu@&'7\?ϹFU]k6];QNC@ës'a@ ُ;+M^xDQK}2S :)h")3#|҅gLKzʭl >:vdwd,5i#&#C߼gF˳n(r{{Ig>RRsj&!f_֡"$-?tLRviD\|PQ0_Cb_56%JE#E~-]sxQQG-!jqD(I!M!͍ i6o:x,١2G0YT#:H拉8Xt9#pP*uqGGuQGG;2hlCG8N808.L:#:#:2KEݸb0 Dꈣ8&,:#fLd"$kU-$KrMftF6-oG̃[b,ܒe-@5sng9lk.[\r syS'>awm`Hv7wp;R)FmczJč]}ʮybn{Wݫ뽰,~.אf u.VO;<˅BiL΃7=e}??_p6p_W?ͅ]A`P_]}Үs[|35EM&u)B(vPhRl\tiTvXگYn \-}4Mv=-OH˩gtÌg7 7#2uKzŕIE/v|ﶂa^K|Wm'{4-Ȗ[ '5Q5]=qp0GN9]]o*k뺖[q^Ch3~aZoz-@U^붒.>kN@LI\rzςu/Bvmƅcnގ2%2^*]`. ΕR&vUJ,Rv4Nb /fv7Ơ4']{B=]GtPh3wgxbRv>GLz!19'.jn(.lZ&t,P#?kDdd-`s<_|40$To-Ә~-o0v|{Qlv~MP,c9q|\F:]>#1)zWy j?EsHܾ% k(V*B^TJXv_]t;@={8TaN/#\\x0G-^%i꽷qF;6}O1Zgw[vMG/Av)먊 ejQ8I񠔤0 3>vЌ|KazOe+O9mʨ,9y S,75pv͂3t,u'܏Yz~`߸ĠrJ 0lz$gA)![Jי7AÊ3+ª> 7SrPۦf8&Q35:Jw7+8SQ+?U~qW?C-u՟;1pdj?THJ?QTN ±w vDo8_{#P#o/N| @֡?%7;ZeZC+iHuר:WoWo{fJa$y#eYRMƀ=p(:O 8Gd}nr.s{' h 8 M:E.K%8Zr"IT؀"N bql\.b!(rv3009ٽ7ǝp<\|3 } Mؾ5WW ,sn*e>F:oitJ޼qx~f|37oϑ@9E82NtqqyV`8JE놜x6qQTLԚzicoFVB3G3 GWnѕK>rw,}%(N{Uz)4 7^M8;;2-k.X͸Ǐڈ)_ё/6;Męo[_j&}ػVjJ/x\VSڣ7⼥Wm}}ӍO뭅_ڗ/M!tWFvCXI{,DVAy+p.A\rY6!'Fy=Q_O_H$LMMo0"GaR+pϩ?ty;bzDGb:Ȋ8AE\y8cY r"wa*~ՑeY֑DY .D|Fe޻iMc:2Y֑eYVPnlё$PGudynԑLGudYGudYG>P#[6`K,`p֑eYNYAX5- z iևRC B"̠c;IC% &&(wΛu/P `? lc'X>١LߙpP[(hL>룽>FM R F@MLpH3|L pXE}1dAzety 7c5:N.;+N\#3HWcvM>%Kjd*AdV ȭ=>wzVc!Tÿd(I1UbqXupSqPI''vH%8++*5rIƊ̚ y*7Ddxl|Ar{cbޛ"$%%aDx].V FӅt S#Ej feѨ1 sww̽#:q=+: 0qU94slMEoU b(hJV}-7DH R^#1Vp"J>"akTjJ,,'8%9:Uw|:'|H #$h8~YY;++/qԕoF6*{j<ē`ߛ#.O&!(qWz dd޷%KasĎ1 2ջ'!$|Yiw Rܛa^"i1YSUr~yYԘaD SWd1r,EWBHWi9:4J%7"1'dדI $fϺ۳EGYvNEv{ono)1ԁE"(dSAM`N_&u&Ln<v:( C3Cd16@4$v])gvqiM(Q0*%Ṟ3'*o<)l;FXtN t:N':@)γ+wilI  GM+)d? ]p"_Q WG&Stf#Lv3DҖۡWGtN ~:/}:/y }mu=veb~!jDZugeQV?eBQ7% 8)MTsY.osr :{[|8ǎVٲ}SuavT(Q@Ҧ Rx r)5UbE3]CUGn@fP[xL{7\#t4d2h˺~69c3-f+[}4`[Uc,U՝7߰,hAdI4f\ow-e{4$ɒaa!#_")7FU-;,PZh?Mh 78&gɝ50`a/%mC`ZKÇoǘ{ҭtN{׳a5E7'X?AiRlPa_ [ $ _˸ˇVĜ(tY.\Fb{Kđ!Ć7#4Gs< HEo+QQabLn%-*tL^DXbǘC|k7 p}?!Jym uqxycI֧bBM\gxY~|nT?|lJIg^k5V*6+XL*4*&7UAbU4sZ+_^Tkr`ZEksp5R$וF#,Wgl۸jeAhU˷WQiVv,_ו}@%_*i~,^]T mAC.J]𾕁`U4o**~Zs@$W[(/EȀ-(QmTO~lU[ P_ I@<%W&%mFZE64O YmV)VѸfap?5"ԾC `.=G>}ґB 4+-$4 LҒ:KjWZoSY(UXZTfoiǑ#1ڇK?0%)^REyyf ]#'=g@!w#˼Ǎ`~;n&ߚ~$8Iol {O򮪱1z0=y#4=ѺVZkպVkR\z6h&H)k-Уy-wsB%{(A$Q9Ɲ=n#qY ]Pbzvobhyzw-ۃ2:Kh-s*Ņ(麁E|/â8GTe& 8YXt6%|Kyp<ݑHpҎ+:&D@=ZDPCK}A@MJ?J;c0wGlgwGq|(7|/vgnvOy$u7F &Z9n34Ͱui4KNDx%XL+ɭ'^C|'7d4TG)̠v]mjoYKhq-=o@",U-G.hP+$g_HHq?ms S*tw |ﵛ|;oWqKqhSP|pT`~`"wL"f!I3B0,8-.xքCjq\)a@ӎ_.t#X;#Uv^ 37\CUu/Ûfq-vil1[ Tΐfmu#{ + < f 5~r'YLUX)P&7Cv* +a03"Rȝkhh EFt oyזF1[j91jbpXXih=Sip,1k;Wlm hc`[[<6@$q)ױE:_8֛e0FGc| mM"76> 81c)@Eo|i[\B=K#~H%viUەDeeYE:\i V P"M [_z.Nnt&΀Z>(-YA̪TT^Joz^ǤֵJ>Yf>ɛؘ\&O!JozIQTHGtnp>^b3y8u$nZ$xa8?;*18|(qb' vz|$N<=m0:H=ݳ= 0hh|Cف8fI8sfBasY6蠝CzOҋsVZ9͍ͥSP@gG/K˯#nF^Tx;˪C3KMC+9f%Eo$d tſRej Ps ǃ$R%Vn7U;T0*w{3AO-{}]5thϽ޺@Ri4F 76jfI".;:J˜w:9a$6ؘU 'y[F9*̼)7Kk6`@!_g.9N^`[K (*bHplAHWYP*e{t#.cY=bjI6F 9?9210  !Žf:<D';˘ٿecv/"_]gY4Ą P9n N'47qE ,ҍ>xV#G-]4^>))"<kh+Ǐ#<\po QEX$0/ :y4XE"A+y8˜+<E4\0'' UPS!Y s<+İ쭍/>VRO8TI%$ApٞX6 J8Ɔ r,h:{3F۠(^ǙCEIWL!7:qzk[OhLKز!ÙC5q.*@ EěԊ-I?eCL2p晚F^^< JfqXJo FavRbpݜC?0FHplƀ͛KqX`x8ubVrz#7?]]R[BBGY)\t7kw.P 3b˜wlfS{|%떌kIɺXQ$3X0GQ 5a`1Aq 7!66&?][z唼yb5`w`Kzw$> L?U*d$Db~@NH\Ӌ}>h3p3d3ͭӁuLC+?xc:9_$G&Y ˓y;-?v􀝲~DRFŰYVnI ci|:&B@Z5BziMTvZ.fmhG28J7#O 2թ<}Y< x^Zy֚s¬,1svL`ʾL[hs{O}I3xl޷{%%^|&yΕ$X%1+[ϝ(jRy=1r.#|2B _@7(ọuSGӷ =d9"E?r i,/V=c6i"/)2uYV9l<7]%Ew##3GC2aeōE2{bPq7!iD\}z1z( ppRt5HZ&&D: :xqġqQB OmFxҢO Jmaqܣa}R#ruѼn`'0+#l n#p@tߞ9>(z{I\o:oѷMڊj]7DWDtmGGtMGߔ7~Hɯo BWGߦDbPGB&}7}7}[tҢorͯݸ[ҏ>:iMZMb\U:ضVEZBOYXZOޤ>zCO>6⎭V6<'T;zV/Pi0GpWg p)\jw11R'?~Xj}%C4'Dg㰤>z[|tV G =j+唜&WȁO):Q'rE^-Qj@L'1D1xqd2:I[ށ3r萡#6aGŰ>]ʠeH_}(tJ I0>L^gYYg0q8G6m">⥍Ц&#~[i:GtosSL:: uPup AŜ̾tZzPik3:u0p:BL:#g ʟ~%/2# u ." a0-@p4*mх(vHDzˬ}(}Xd8Phv񉦣x:Qg0 #ǟDZvmt$Woݳޓp}~?~nb+5 Ԗ?F5Z֖)'$Ɩbb|oԣ 24Sx'R¤y#s,%]rDͽN]W-$r>d22L|vkk|d"{$#}߼ H&?D;\4Xhg3ӦY w ]n+| F_˘~^\L7)噰 ĝ:5/1 qZ Qv&Ά],8c-\Oђi7(oؾP7E|!R]:CZA 7:;XgofvqC>  I˰ԧtf8Mgyd Agp 8ID}_,p 8NB M!}$-P|I\K:udDĐ밒+R°_Nꘒ)-͉(递(递(QIt@It@DG6$~M$6B:J (-n2&|`g7[v!lFd:YR8 |~^T\oV^'Z31G_. 20N &VW>>{{wrq/ow-`@jc12AƲcj4뗭OFF\gxYo>7>EѤ\m^P@gRQi6IA7WU 4V̑j|u{Q}Aj^W[PUvy5$Kr]i?bzUm}\V[5l+bU-^ެB6WubpvIJEWW" V,]UgQ)޷2 pʑM\/_+ЇbskVq %(^?T-30 F7oKVu۪%q@AٲWt{XIt3vrb,1=>~Z*[(CZ`4Z}O_u WVVz{/w# {k^;OxA F}Kc A&} ЌJzAJ 'UA rzRF gP,jfAj?_sؿQ/I@BH``OQ珥 i?V.n`,b0u9q:fwŒ#1qw:1cVEnl ʚvjuvh9|kv2Y jG.6e`CzgMN^e |:?c@T/Q.oh^ ?nӿfֵ`sY vaCǐ(&z/KF<,t`HXLml,Gs04FYN?G:hf3IF0iy{0fR؝dk}D"o6j,j*'DdH)U:ƀ.4zpE8e6T!ݣ1)tq1o/=]3+_aC F7 YU뢅&7i+1 K-k诺 _a-kyYe!XG@0'eLz,p$q%3c!\.ВCpqE8'],>(&DC~g b|cl{3ޢK[S .Ik=vja7tu{"8-FLtxUNӲ=^vS!r$ b)m¾˛FސeZ ̃tp܉rGUqL:3zHqhTtFKr5G?UK 5Y- P4 ¤n7(dWT@^ߦXp,d`oE0#Y'&HV@K%2 ^]26LxL@1FdN%̲ JX~Ako6 FftI@c=ԥP-G昣 g 6彺[iÜܠm!)Dͦ?'?Rʰَ#>YٷKJsVAaqZS3.q W>p B 1y_}"8[\v 1 Zp}Ҝ^DNfb6٥&=x kDmou$D.$ IQ- Ӥ23]xHb@L|^z;66,#AOZA0iRx3%8hrzN15 =q^z[yLg]..F=z0*H< .!'0 j tGJX0ozJ(rib}5zhj BV;ܣ-BfbR!u#M-/šVHPի2Һ'߭%Q"9+I>Kd~oϽ[@:YigOwc_bJ:9W7 ̌o=S=p~&FeEN'g]\^^zj]FX}yݸёI; }*UB3/25rr'ui^'%]2pS_z¢ík( Az6̼]2RD7hz[,eyÔ#1t7ޤ%lwț/m]'KkT`)A7Fp Ϧտ=T/,R \W2AR v<%ww\|(eDZqI OVN-"_]lپ,ukf$\^2gDtm$+?G>,ۉ::-dw8 M gdDy_=Lc0]n{*Zm͝GX`7 'xrjU+R3jRϰϢ1|9,e='4pEu)O NT?7X2-렎kp]{}/V@%b7Zy&6|@"Twwū?9mB@A&C/s<7?P9G~*Gr}c4ؿϿ^ا1C<lo`C*l*Ex @})ߏU8?P}y 6@IIWwM>HtGyZZ ,L6~ .>!QXT8I\\9#THXwx{{ Yfg=>2 4b;9&~yz Ȥ9J e'~.t"CPZ4EUo`z VRh 4'nUGر<;Aސ֯;|۶qQ6ͼ>WhY&: f䇸 6I;~:$Ѧ؏̈́ʱ&5RÝnyӁ|8550=|%'>hiљB;3G|!=~)M0q2.*_->S+!8C+)@sAWRGq JQH{e:ÂShR|wF?i(jErL^d?\":=^DqՐ -;mR,[WD˔ٝ/Bg\jqF(γSBbUpny"]A &56#d7Xё7sǴqzŸ'" Mt:X?wSS%o:I3.=zFWzђ4u9A;%D{v||g!;NG&Dh< <X'&L-؜HGO;mMAvr"V9Pova=BT1NSA䄶bn`I*'iY]zM\ ʈ05?ڌ`w0ɚ|r&~1k#" 1>&e0Yl=!KM&%,#WwBm}mLEJQk{/h(O`q1gnPe.(#P&A)! J1$($Jtp6}&HLXL+2]h]ʊP)(VɫScNVzXÉ)pKnlIi{4߸" UoC3yvj_ÖOI֐7#w+[=eiP,C )(\KK)Q +xE%ltrWt=ͮq*lЂ`+nфhбY6$zԘ{VU[F@9w9q e%VhE43J*\J;¹ `˧C<ҹz&:ݝt{cL׬mqlbnpxPy!\m=X/\vԋ*6`u~Tw/:Q3FߣypW"f;Y}3NJrrPU"b;a\t@%Pi.@FE⸹wC=1: MֳS9>~-Jy$Oss+ݪ k6;z F6j;~/y+jSEI^5S^ɕCkhy*&JËHW*h,+). *p< HiX>^ Ozc /Ja(w2 K4(lK-)-͂OO]>6_Imb?`yD2#DsgAtu*bC*%TiN>hRI.cA̮~, +-- LqjT%O裪d䩜,\ {ޡt%OѠ#`kiNRh[pO].ū69i $#E=aS(rh y4 ze!} \ An*s===}/&`1|KNev5LZEG$vĭێo̟oxS@eFh&}ԀE~"xvsSi. ?/2tIџ5X m.*ܣ Ʈ ލ]xm޹2֝xhb]"G#=iʮR\{IûL miyeqk'yk[8p uYzwθ= ~B9τF70Obt)=Աkm9)|OVOCrzݍ?vqAO Pn:2 2z=(<#34}Әy:+G 𶒳%<v+y]Q| SG?m2-\*҅V~y*K(M%/-R\"䢽+KD{cQl_]ė҉(_YQRP$<'JP"KSw)$kc{/Cu_}th {O{n Ō473 d;<,3n7Ok:c\w[ZV ȼ%|%XwJ6%aoJlJn4QegZ=ܑBgJ:0e}]n*Ҭ/0g~ggVa`R-Q{L,f`k{bGݴ~mV//MӚv_yMMQiԦw֊WeU@tq(C@`nU#G;_=_H(/ScȳioڵFUkFAQ@fdk6MكFC\H8 쇉8]uT%&Nr3!c_ ?x_AR9RY*xXoo ^G8I$p!0R~evR~] /='[p4t!<.Ot.X F8̑)&N\-E|M*wߋXX: Q"ݑ3EZb8 UoMWK'cR8J[Wnq¹@q];m5mmByg4٣\[ӈpRLb_+Y2e" zoT*δLKƩ@ Ó|yrs(ӝYCs??^|nvuU+KQpPp\3tإ(JBDZė7t퉌&&"9c/K֯P$%M߰=fyb W6)19IXئӌ[W9L1W]$H!fr*獼r^!-pjYs-p[z]dc䳧+.)J`:>Qj\Ma'N?jǫ0< G/}PBP$;֚叕 sūjq|^v- hq+UW-}i!=Na@+p ;w?@D"^]{7ea"gyp" %z*'M:,; E*JW,n S&v5֑ϛ7^%Ɂ>Zf#4BI~SV@XDnM\ABFwfA jj ~gx '`|SY2(KܬHy@O.m1DD}m~OO4Ixe3s1R<ƈZ,dHMSSg!&H=8S\&3O$0H)(Cf(~ޚ@y,FpƾaDPk9EovgELqa ʣX,q+0-'+ykaY~Q:<01y0ZjfVDli0X_ F2$v2 6G%%K/b 7uElq1|B+uьrxfX 4}ziLK${^e H:2.R Jx}lLWTl)Q@88%q3|j4S*:֨ cG?G,vTP.6ɩOT$eB2lFT#‡K )F'L18)wES qɗjavgfc VO5v(É^n۟8c4 a|cCH@'ZngX}z5u:xG;\F"kw&l3ĸ`a|Y(@֗:#fZ]`B / д b5=He|kt.4J)ǾH`8z(p|8B^HEs1|Xmfب~ӨC*^Vt"WFk2t۪ÃW&|E_kIכF$@w HfP^u'[PQF|ۨ\#m٪n[^@fݚޤDmVrHH@)6?K*~Ӹfap?5"ԾC `.=G>}ґB 4+-$4 LҒ:KjWZoSY(UXZTfoiǑ#1ڇK?0%)^REyyf ]#'=g@^2IK:O$meY'4ͻU=ZROlc'fF$Jhy.s b :I<f9wVo}t#C;>1R˙6N'un; Oc]_\}W`Ii:+zzg ֟ }Y1:z[]m+OmnHW"۸`{RM M߃A-4otO2*3Sd cWqg.S^%-KՒ_r6 1[ҭbi7VqXRj^,'~4,5S)}n;ZW*˻kAfwd%$ F_ߧK{D}-]˶5is\o0ӗG_/ї>20} L_/ӗme`*ТY%mA[p|Сa6Ѥȯ:Z` ͹%_eFF иwO46vʣ8"i@k2 ^7G7m縞8 R1Aɤ3)b׭AtU%.ա{,ܮwz?}y&!|؊|r#dG`D\;.ќiD@~dP''HJ z @m%ϭ7;.p2q@"pȕ;fB=b0&Ka Zt- f,xy#"~a2o!(ux=x Ps+k_:=:nBt0uI ==삠|@<!B AM._f+~ Bށ;2m JگIB;R :50l]J)"?OӟE媲2m}njtle5%5Ϛ/ ?`3P׈ Y}js?kDyLj썍hcn(QjDV츆g}O_E9xhCy ;qp|8(᢮d屸2t j5 Ӓíq0"[Ovq+ŶM[) b}̒~t=A;: I~0D=6ɘ_Y+rOm{LaY)SR(R2DFۧ'̟i$$K 7[1=~i̳\ YFsym੒cL.6AY=q̅ۻxȖ&`{e_!1t:u+Ӹ$3{,$y+OS]7KN\ƽmio_is/E{kR XlRx:ay۴eߜ p}ѧS_/}>S^@RjP6/ᰉs-qM7Ҏa"ŋA=L <@4{wduܥ2_-@bE6Y+`7o p%xG:̥|!a;[glݧ=\BU E3\Ս12+ޒhdh}?o j:d6 |f/@]NГ@]/~5\; mz':pnwq/-זd%-mhKF[2*Kp:KfYO| x8T>X),)qis$u#*Bc4rµ1t <^,[Dћ(HEUUHd|njrs $Y^\kYN; [:PkܸZݬi1W"( i[s2@we(1> q3U69E.fUxzC+nv`^rcA{r m{Hqu<>AB78# gg' <˳իf"w$^h)= }+KXPqEQ6|Z~!b<#$c OuG:"''􅄲*ʳId m%C%};꜃P3k؈˦Ri`K.6`QȘFYcl`|,g mߤ+Z(/4hj< >.۠:(a 4q8M8WގLz~>o69:I͍qZᐑpgBI$O !?4Y ':ܹtord<Жmy@nqۮ[ }~ vk}oP$Ð</sG_)uϒrǎm1wNQ|B⏾qAc6;`zpMʲcߕwTfrC^ WeXy9ME-÷RO 8?Y br-T.wڠZ[Qy%GuD6XȂk!O47d?-KXe1~*۶m[03q P5[ęBf G/;'E`d<Qb|lΞ2ϫW!WSVbIC|h,YW$:NQVRї&0<k$Ԕн?ZrbڏOe$Jk|C\o]&xcY)r*5fhzjO!:k*')4?u{[!`34FSUO3`NiJd>RoDJe'q6HxR)Ӣ߉Mk!61IIINO$6ش&'69ib59Ħ,6I׬@dcMXYEظa"l\I.Eظa"lR).E8?cw6.fT.Q&a>.f,a.f}Cl6ʸlcl6’['[ɦ̲\S;w1eCŜؚHQ.fl6J~za6Nr(iQq6 \m$''9-Orj3=CmXC(C@Zu<D~0b1x$)慔z||ÞZ"±^k\{/Y]] e6Bkd= ɚ愴,BӌƲc JeE@a欦>x}Ħ|#7K.-6 )xjMœщ+ NZYht&x@w$P@cE&Ivi_[JP@zhQ&){%4mQG Ղ@s'ȥU$ߒ{[Dѿ] JT) J3B֥K9IJ yZFSt!⟨!!7%R -)y#dۋUFF ({h:1H*C3u9OE7EOӽR%ؙDcNmj*JmBb>\5ityLIP @}O?}˶qͰp|ݜn.˙OdEEezhԀ73(쎡kHеÞO(\BvfM]@7M~Ӣ,tmI ݌ zos{`ޜ_e7kqXX|wb޲LPn-#[pwIiL*ˋFUb>C e|{@c( P~0Ki(=QF'3FE۰Ȏp~#?E A0 dӛ݌P;ףJLp'_NH]SA&wEtFK3#‡upsuĺYoPЃ-`EGkFY M(0 xQ hRW ]U]{'L FyeQтT8|A.%cĵ6XD0w&i^i}(7_6.`@S/0Zi$)<5u^P}QNlTMrjg5 4V\]o`Ek-(ֺ(vr^mTϲW;~&7V[|s erYnjr\^4wZkVʵ.t%ߪi+ٖѫBY6apF!o0HcJ TQapB𒜖oa|E (L;|*$01[|93~hڦwƲ "+z(znϵb,Z4]w}4Mh/7~b(W FvsQTSTN/)Oϑ,Ch'|'02|zIq$A$HUz}t4ej<5"ҥI'RܤDL !rqu=tP |3c[Wnԧ4];xZ)zZOڲő=X"L`@!-tt; C4=M!ҝx1q}iJbK,򠲹Yd3HFbϜ!^$b=6Sɥgd:?pe2.HE]?^}$_ /WQ0Ki}_1c6 cFW#e>_BYqj~']=MM>D[O %왈ײO"L!*m4?c^ Y&8BHd8h9{v8DR48mGRԊMUnj88[>,c:$~p{uޚ$ѴrhnF+J&]%>]'CGJ6 SC*=!"!ZY#ّ^Ef1Sgk$"KL 8 5^&xccF{UmΘ f\Cȁ`F)mπ4#86J>2[)LA<J>")ưea[v]%dih##%r1I 239=;;Yy-y$rM]a.0J`q,6N";y}BC'T־fdv6 Yzk{~MjO J)boo3lTwF|>H @⬗ma^R.#Sg"7{7GriF\uK~3?MOLA;ͭGS}4T ѝVZ{o{p^Bm-%.LLI4OR76,{yrN (nA1|Ox>cwHÚ;]j;BW3PNOuYUa݌= wwMc77A7`=2@9C[fM}nnSS>ÑSȪ ɏsaeek.3wk.y9ONa^vcy>ku[;|pD3zЉ>?3rR+RsImNΙ-ݙym5nj$MǂbPx ן +Hm^]/W%>Wgѳʹ9܂fz3ƹ9 ܂-h4`6gй 97!&܄{^srnBMȹ g&Dj &Ib(|!5DcB04N#46~I%);O퍴_aܒVkuX{Rd78Ai5DڅecS$8Y+ZgsI.(eۘQxYx`d[>V(;eۍ+rLw?n$! ߊD3VPNɐY,2mǫ0zy1gu HoVƻa\ȧ vSWwg0s9axkgn=5mM>Z5' ?yYs6j<7:]ݚl7&1Qm,nnŒd p G>?S^vwQY6]--JL],\`n}I7aXK^а07DŽͪѰmiJ΄2^_$!Ήo7 8K9Kܖ8fR8zeݙx_)Ι)ΙMqBooJTLq$t͕39S39S3ŭlʜ)G[-ꇣ,tLq3aS&8&>v}', GᄥdJavG>`~A Шh ޝ*ϣM ӑxcgcSf nA:*8ZUVp㍃Cei7j{YlGgfbpF'EniIy%Qwp`)_;hO;Fͷ|\ ^|H\1hZU MOm@b K#5+z1Iq <(’֩NK P߀[Z.OϫoH# ;sJsl'O_=J#ERJWz_ HY vkbR@ Id8I\EԓlwɝnK޵J-%^H?h{Z{M(^[ǯ>q$I}}`GRH^h r4mfp_46})d&xb2NL0hYmdA|R =*dQ'ؿY9_\9~3y,F_XhC-/{3cL/QhfC"Zb-@6eݷıTk:#$/zRxEN{µcQQf|(,D+usHz9#Lo`̽!usx7Y+ 5|b^b =_rgt֒e'2gXg:z IS KIcd,UjUAnpi7mh4:R]SJm<Ԭb-3%Zc$- TKmi 12Ue( qђzcӚ48P RcŌX*>JC`PnYEI|NӆbZ9"0m޵g~3na5__[BLglh-q&Puhk̐ŵ1 E:0d~Fo jJ^ EؗgÔ HSg!ti4B?w)dp7et88`bT1տ~wMl$t҃l1Y52Dڋ^2x=83)^S/ah7c\XRUрcEw-N8qe4#D&`o]}5!0֡n˹US|}}%Xpyp?܃MhG%(ݠTQQ-v1)ۡߋDMO|ʍy+eԘEִo qnlb9=q:;Xo1wB ZdwΓ-!Ix޷DrgʜE/ ɃKg,AwHz.vy+[’m$!+"Dï5{vz=Ϋ"=r:w_:. W"?svYW#fI yl~2.(娒מ3g /ȟ>0k ?cا_bMN8yGJXLq:BmndQ1-hVQQJ"㊒*;/IDǫៃǿs-lQEׯy#[X}z\?_~8eq,(}:@g#M`;ζ[ XYS/|f>el-Ga9NLϩd".:qXָX<\x'̾n{{<lYì1fś,PH~AJ}eJ7޿@ﺩdGR9c4qiSC۬es3٬n%8ܵWHrnͨ*MƸ6 2]!Z;_K+Ee)ȹ5oXĭ`glt>[Ds t3.uYgX] F4~eq-Mߝq3q%83k:c̚gt6H}3;2:{g:{fW/~~L>i-ΞΞLa05Ξt%Mg:{g:{gny37lbϔV˨2sZDdtMgLpZ2ު]OBo8F_d43݀w5zT6k! 3.Ho' ➫# |hTlQBԕ6:r) Yml_$ܵl~lF?f>uB(߽rsXm\zT3_FswnLsfgkFSҦ=z~8non3x)"w/6F_Ēg(lR t2,}c0Ĝ GYrwukm'h#Z=됊F9~c(fhZۗ}ز+a/;a8حr_ħ{]\0VN<4Ჱ38ai"znW;c>H/]lL-NS_'>Dnlv`)4U+~li#* bNw+Թ9(En>M)_(iC>]e4ґڣRr'nӧΘddi(- MS:}5YVxRdW^0sew5itG}ވMBKl;EQEf!`:$+څQjIunasюgM1{.8\"2|]:-ˍʻvvm_>V77InK"}VosOi TV1 f}֒҃fa@oz3j( KugyԓcKv/6jPHeyJt7OSby܄4c;3N٢Q䆒{mF"qYT;uC4Չdfu@w!ݵmwPN8(ӑg ӵ_^@xڍ B[D!dܺ jG+h[v涂%: ~{:ߢg0} :v,b>3MbŃ,S)șl\ֲi=f"X3,l+s36ǭz8mw[0>%SM@G?p\ b΄Y\-\6a\ss~Ϲ9W?\l<:hs ("Z|t竬P/f;?ίo,̩p~}S,׷Xqb_{F~}:ٜ4o6tl3`+*ڈ v9&'+Rcca[ǃ֧̓Ic3yEΞ8j} ۔p/R ߲@KZ=eYGΕ +RBX=K-+(z ªpX++37\ }#=?쎃k=6BakOiuQ6@cAU-V ii&jP &j9 ԣ3af&@E'ZDPIgܽ+.opSaEs+4oqw/7m `@:sÆ=f,s@)lHzrgiL-I1!.m.%9ZBc.h@i rr-YL@ޘ7Gc^2<~àE (_)xCiWcR%R'χ(+a!qg'+,|U /_H䣪֓ K_>`>mD  ޏD`,:l 4R$ '_FsI }yIz_nTq_ )@ɱ#Դi EFPma9= :>ϣ` -{^e$%aU{*تxƪxxR_xUleZJUXVXkL9W""Ӛ8}UlW1/@͜Ix&a$$RVCP6jH)'ћC$j O7؉A}oIBtFT,HZg˪gHޡi%Rw>CO?E'mO<eaIΡ^(h-㝤3%CtF2;R~ Wېfvڋ/OJM9\V /"^T DIGA9{mY+{*{ʕL+܅yP]=θe[IeoC y< Ta0NaThS%e Ir8 f݅MF#dl 3N5L~6iF!JA)iņ7}ч?-/\RZ eg|"F[~`8]c eL|N4or.79Ewmș9+w;ayLHT2;4s1ЇSk0@ayn#4Cxp@QV>8-1MhX ;쐃X_l zǀ|-Hk"Lؽ[/&O>$ׇ1'l>a"h@>%Q~ MCK `lf \?9X8W sxP$j2\4./V _J,&@.( 0PC2TOagPV<+x07 .S'`2Av UVL67~yC*>ܢZeODt& : +11[~`P3$ eLeit ;@ڼ0|~0pDtĺtᏃN?T"ţhE(qbtuPqߥv4iM11V@uF'൏H͐x8_3n&_=Q#`T LjkCm~a[jMҼxPnT |l\^Va\7joߵȻjI#d*V].rj/IjI.BFުUERWήNkE0HEjk]ij 96*g٫ZcƛZ-hYnjr\^4wZkVʵ.t%ߪi+ٖѫBY6apF!o0Y4/~ (7~/4t5{%9-xjLjTs' y5[UJ^\fR`]4$]5EhUm6?fUު6W8, ijҥb\4~G8tڋû*a5't*s_gN0 ! &5$4/oؖ }ǂ*2W  Çkh¦,/K#р"NΩswYh\گC*0uD)KyXH Q+9811pc ~xƠ% irW}v' ; Du';Q݉NTwu'3FQh\F0 5^|E}P t,,mB5z-3AH9U2e9rZ3šiiW^/+'-ڽW+; gn(yezkr k$뀑$N^`%^d[\ RoeR™ДP< )'s?4C.eP=&N~Ehj2$h184S4gBwo^OܔZUB WG>5zw&_;}N8r9a7wwԌ+ҍh7C$@H-wVhPҽEtwիgެBD={Ln\{כ"{DMr<DllZe{Q~=.hBfȥe㶹P*h8GQ*={e쁗أu?s2hm;YsvLxV͈/|"^4!5@$$aB+aؠoUrSilI4۞V ? m2?a{ۓ,!B﷭S^D(X}i#Ԃ}_u G&CG_;@80ov<ގo3Gr6Gޠ%[Q޻-@+|%LB"T)~^O92̣l0S8L'{ŋ 3evgiHvHlZSjپEo.z {tѓ]"]. 1`\g^?iRu+E"O ;Y< ި(A^ۚlE'\ a;Z;RvN%r--NZoB/ʹL,0{Itf'ZgkaPoh7Gٵ2Wj]$0^ eYMw}t2+hbmrRHl* ް[M'1v:hz7jFTy3EwOH":hS}ötG~NRs)/qV2iL[Ѥy,B'>3ԝ'1)mI-]ܥ3RxC? qХXs%exeDoD`#Ⲟ>R3oxE7)YHB+}zFNAd^yቖqI(h6Z"/ {/%gze=“#g@4^ЩT3%>)CbB%sv3u5F)}Md-EqWI9{4s/%yO 4KWWqt&ʜCoH_+3|oAk@6Fysn4\*VJy$Rhϗ6֔'G0@7’H+B22"ӈ/=/QEYvṮrU~=6l!ze}n Z^z-6kL 6C\\IB5U3A/k^pM.A8hkHt5Ԯ"5<dU q]ըEY5z(SK B͒AI4Xjm1V]X5U𵻕Caڃ܏lT+ /m8'ڧ9:1m@/[Zqğֵw%O:ـYAÎdyn0Ro^OmC`~5݊PwkΉU:]bs/&Rt,d]fyOOũjr%Y`ͫ˄2Xv.Rr|RT-uyA0Fjyhg  *\Ms@2æp]TK5i^FhIIUK)چ%MJVmXHۣ 'ڕ 5{|SB0}V) Qtbܿ)P&ɒNF6NRlx nw",_ ,h&NӁ)yv+[]mo+G'r EY]6Z13{G)oE\^^rZ}SmZ*n߆]kW_N@ g.O4^u؋;(HSMBqSQ%Oi8BN0N%7F}^PxwiA5+WվoXP!1G F}0>`9}`)شɺ:5jݢl= @<-#/J~UJ[C&/-B%j@nǓ v S>}JBq<`JD"1t#i$ȄR$& =٠}kwIFEP~;[{>ljG76+^XOo҉6"Oɽ:85gK*Yuca8$` R̠Vsb?rL"$(ѭ{hi2)/ܔmCi&n%PCۻX^@k)/H+Ht:8j>:^GK3lV$U4w\f )PSť~q_\ť~q_LͅA0 ~0E87Ouanv흧ygEtm -$',?2omׁ{ s8k+`{sowν}}sk߾`-_sntGP9 w^)+:du}]*seIw5=㝇zȊLno2Cۜjzs r>hӜ^Im).HcXi6ߙWtu&uvKr:1w0ù 5tNuOTy2zr`T&J7x" Hqz,..e&SlgBמ& ob`rTX WIFècE\pYTi0ruEMMDnwShL-k+:Ux)yyiyIDkK[KQթ]RKhb.+szt3p%e/ :y*|!,yޖnUJ%鿖LL^v5^[zᄬTNIDm;ҦJsk{"꒿2;09><݇H5i:fxS/jzS]?#>Iez'Br?8ۿS<Ae%8S8uSdV8NClp6N={t,pJ$ # ) V0XW@\F 8U8NqQ,*}rQ(e2Jwr/d`H;!ݪ2Nx/MF*2Qe?$wWKǹT"14ʴE/d -J;+!=C %;f^(tc c8g DfIiR2&oNGN*ȸ3t|UJ.᧫;[Vw՝l]zY}2=vԓ=xJ.Ϲ8pȝ(Yڕ(鐝lXO.~y̧j#FOTz8#M?T3i35~grj)?^u :Rn_2~NJ\q.F})vLZ,J-nc ~,n?gK+>?fCdz.Da/m!o!N,unXSC64I-i^D}8U>G0 ? Dތpt j i@;} L[l0S9\NkǷZ{ƭ%ʋ5u hjpKѶ^;pt `g.?\CK9/;d"D_4 #E6Đ؊g'B@Jӣf)2/Gu.71=vB\&# bvAӗ(gB_PHY oo3;3@_hO,+_Md5kي̱ZTFq֌ZoDkDՄɽk&fٞAŘ $O0a~ۨ aŠ= 'wj*#3 5ˠ! o'w쪰 = yMQE|b}mT8=sr7 }c<]/{(uf쒽QVӝvp}G2jAy>W̓1Lh.@q[txݰ6௿M%񋋵F u0:x۪P $~%( uT"ʈ>  >PTjVQΑd#ؿ)rTkCoB 986֩vvNܣQ7p K,%Fy.{/uj;pwɫͪ`S [\r޸8;o)&??ju,Й5Q3˜CR}@q ZpCL:?#_@e%h$t!QIB|z턓:M:k]CD|l&V$Qқ!@(K31!t 4i EH&J`Vh!I:u#|cG4Z%rJ>~^,5_)w/lTlGJ|f 0j=O잎aЭX'lO0Xm|_|%`9) z.AðoXec9^ǎbV !^꩑4qu@`3HWNI^msf>ӕF9-oUtM|/ 5,#f.`QHo C74a< 8\67k\9&}|>`{c~ppp@e6@8 } <)}YPwm4ɍH≘q i/B 㞝 5E#t/Z֭M_ju]P XnPXX kHP_x\WzNǝl)ʻH2S$bQڳH:SHJ}20b:Ah7MveX_5-T&Y0 `.Cy2'!r[\zBєhIIind&/X_diB б^*H/JK 4"9^XԘ]^)ˊ9zGf1gH۸8&KW$iHhyVoVI}@ZO1QOQ@>Ȧp188ˠw3lc]Հdz)DBl/l){^$_+3}d+*pFFڪ6E Z&#4ۖ>~D>W#H|SFk6eI 'y kejǭtkz81,#hL")G0(ȼ4c]kL{q4q7Eklu_kwuuyq_#Jkzθ*pN?k\Gzi,*o*ʿ<^<9>gf~5sRY1cʓL3R`*m.#]x:k;YxLCY8WFY869?qGɧW(D@':"`rfqsE/䆚ED߯Gܽ&Gwnm+| e$ÿF@%]A]I ~x* p%.p!+tc@b `'9Ƞq.` ̢\P!\9uQJ\J My,H?OJ( =O@\Ё8y^t.YsBxx> q+=8'mr qNsB& q;}[M_ ՅGcLku3 XͪFՉ}.RGȹP*B/gٻ`"T@.l`aJBƧ .<}_8πݩՄZ4%)a֩9ڼ7.{Iש̣_]*w7f *pm ,quG=(X;FCY׮G񕘘HNH]A&wEtF{퍺};bT7(b¦a4T"ţhAi7YqbtuSC* S]{'t Fygpt3!j~IF<# "!>o5IMCQ%qwxYq]ި}".N&)OiըyW x܄/rwRelP;<t7S*yEBU}wK'9ڲal#7XHsWM83DO}פN8r¡M>A$''}7-H/zj' 0԰b7,pZ//fHA-{i-{[VPU,MW,MWfnZAdG=?<\H=eJF l53.Sʇ*Ljϥ,Mמ4Qe`Q|72)KDw ^3Br  "ïG>zjC~] WΑVq˟>LO(-c\G )"NkeVV& *q/ڸ6Ed^BByDPQ]غ 8 \[l*D^-jng &j6>rC%?wJ%hGA.#xpq/";T*J ! ӝ b1 h,L|~unAR1MkQ4}Q)^Ђ|/o>5LU_U( -~Ner-Y;iwJOpJcyS a ONr^'gGeއ,|hiiʹb#3-~13sBg뤜Np\Н6-l3I,b8;2OF9N#7Q4QE"+йy[agY*rʔD_8#p[v,3dʺQoD2 7"X1„ O`WJ^Tlj ώ p ެ)\2B%.TL\xiB]ݫůr m ]ZU W-\ŲpP]B)cQc8[$бs ^J >\=\#g#x(WSO!n33TsoԐ/;p_@'"VK3)`J\e<^F/*LUd""H=X6~#!bů{xl9>V2U+*W^y3]=wt{k0 7_\;d!4k? aA'~!Fk:uY n| :y-/ @€ a`0 IC5C(H?T `0 v5Z V2HcoFu8[ 1Gwz]k{Y֖@ٌeO6a.cbߟe?vwfcwlÊԉatww7'VlqWMD̼ޘl,NdöǓiDr_gk=}2{MNQZ+jCư'cxeDUy+NZSҋ q~6Š( ;z_:=>Tr-> vbUG# T{/_sfXkh/0*jstHCW掸V묩iEܶuJ@Mؿǀ( PQѓj+khjw+}л5?xEm*mjX*_hdQeMj;;OOPA!( &=V]niSiM)qMNXiox"y\FweR^d(gB2kG =}o۬slAlgبY`jZ87Ue6g|36gۨes]F-UrQYX٧ GY@q\_sk.~m%k.m À/!~z!=zEH.xO+|DAd7$DEO.aGp<tG€^x.)^ E^B$D7_"B!!? JRZ|bh۲gmR1u ئ7 !FP.waEoVellsͽR"3MHcXu J m_?&7>D{/PBhr4 |'@k%)6-viαIsx%MuMrU/YAZMai¢u Gj۝`^ 1w=+h2y0~] !vqZ˂!v"{s d݅ >8F@rD_W?6@㏼ }߆LgW^)W&T^sM~ &hI>]YOnIMU"βb(#???}_KN3RIJdF>)]W hnX(#;@b -FC#xj'rf9@?[Cwsĝ#ibRqH +*>Fff>¹Y87 f,zYtr"*KEruL1-_ &Tzc$ G/88|t¹~`zÛK'K~وp,Fxp0z,O&RPSi%f9mrT<0&) 1M ߤ@0l1V”5>w2Ggo@* A ^ eik!mKtzB+映e v;F DߏaU_V;.GtvC$ 7ۡ3o-U$k /SqǓ73aԵ;/opzwK'3˩HpeɷV:cdcW7b]BlNK;r LϒN{ !>czy(m DrVVaGJa+T@ i;u ڬR[[-BɂPb-j~I`9_(w?UNhoH\zĶ)Ӌ'7נPEo.ܳpr0} Ɣ\FʯGFݫ#Wڻ|c_b-lTn" A ƤL\t +VNESQd5ZQ"1D;A{m._H*JGTSٶcգRC>ϖ=μxFV/8V|S-cVcJ἖= S D*^iJq#^(}Fj!9eg?V9K1o&b4!2yu,6/%hik4dDA3X#V mMd󝆍Ƅ⇛Ə9Ƣ{MKҧb;a/D:lغcoO鉱i*7 k^eא%y kEH)6TvnlE|$ g9 ]8z;IL{'RY?~\ƻS kYQeK]o#z=:昿` E}3JC-^[܁9VٍmvdhVT% Ms NԹ]U|˘+> >cv=Sp$oMX&66R?}.'gZD,ve<`B8k;Gv[Bfo!ih[AK\zV<]tly^1[ODI_HS:`ay_ ecI{mV;$rZ3+4P^S,ʘ#2arv>[;ڙyh- ΀n9vf!L$&*m38Y~AҺ8pS']g[9P\4vEEg[wCҢ$[`<~ki3Cfd!ϴ=mgbUy;I4%"6jY uY-JXXD3n8k蜵HRAZ.bOZHh,xDd5"2ל"Znj 'X f%f׫ܶ]sJ sMjHQ;:<@R)!kmJ|"c ֡j `V?^S]2F0h#)~#{֥j 币8_wcDΘn  2]O~[+Kg93tL2g}ȝV``47!Mvh]x#aQ%|LKG4,Olms3rbe%2ρMcZQ j䬉iqv1-9v$ l z Q$6q4%*9?* :)Zy7g1ɲ:o(-rx+d-RڱPA:R>O *uEڃ)FԻ8!46G3֊\''p2lG$? ®+4JeK+mb7nIe5Q'Af1$4+>AaVpc䷙+#4& ZR?@ڡr_z.a/w=y'vb ]i`9bH=(:elPP#<{BiLͣ> _^[J4&x&59_y/$әHq[)7;7[7ڀmjccwLE жDkh𯒨0ovQX(, |E<_sZLbk&@Nlӏ.=:]ft12r,Sl1aJ2Wda|i95Qf,;cEũ\v5?1sBIDH쁉02b8Vqcu9(@v1ʬaKiXdiv"VKܳ9Z]4'H[6δ%9$Hٻ=K_=>l>TgZj޹K.O*j%Y?LXE;')xEC/-R=p_/$L GxP-Ky%зB%L\mø5KˌL5rv}15u[ӶRyK,bJ~5 u_[T:+u}Ca/#%-[7>+ɘpľ( ]n" rg[n !&tali׆55+U?~0EEd q)ZZ{5oKݻ8 ?ɫޣȸF<ʫO)HmRQ7KC!~>km*U\Z>i^͘U&mqg2'&8aH]?Ss3:=;Xr{pqwmz$CX ]5#3rnPjخs7d!]8;c,UE¡pw.iU&¡u]8¡dt/R]8LX9r t&lҔ ~ZڅCҮQ܅Cc 31"V:~39s719#™Μ̙Vl:\ t3 I9YΙΜ̙ά3g L#Lg 3e4 3Mg|4g:s3g:s3g:[)smf:md&$jt|Mg 2%VO#c،bJU/f(G~@-']xp|y+$69Θ%~E/?h=hAW?xkz Pi2,u6O} Wi95sɤ]2ig]d )EjɤɃsVb a:RL`"R>&ik~ߡuM㬸tsnUIoRv}DX\eNNx4cZ4F+sULR^mGelMpmޕY~ -41t2 SJ'ܟɁ=K̕ϘIseه~*#<`"UKv&ggxaAY7nsxd8k랝{ٙRsϟے[\2 ݙrG4q T¸7+%wXdǞ{.I=#<(fcKC:]L*)U!SoM9)oj^w)@GKJ:%]X5kmNJ%zD 3Jې S,>Ywٹb9W,\bR;Śv{sj<`xR NrRi $8l%ŋq5Oկɡ,nOw8l3~:m͟ΗjnT8) 9II2oLM[пlDVo 77$*d_d5PӷBT4հ@Oqj{;rMZ:NaM9)oj~ߦLSseY|ȲM4e1VMwJabzR?B4pY0EUT$~gLɝt!n|Bn&f;Cv >yCJMN={u`"~*)z9ӛIM]lP6&CqIUYT9WNV󒪁 rhJŊ.dUOr!; מN6D?녊<2!5lwJ n3-â_8r0(ˡ;5 }6w[YT޲15mb@<ċ4 bVc* B%_IVĔɆɷ8}!14$5Tɞw]4^#s½w%upDF2!˫L QIeL=R-/Zq2wήC.Þd( UL2wʣT'9Sn'1-S*k)<9S&_M+M\-U=;,A X6>Fgy͋yc,|}ۧi aP?r[ss .5۟j} PaXҦ _.$N:l驍~/IsL CsfdʽޛN8ys]f*]ff kspnZ8~I` k ]u7Il %YGDl)}Z[%-K}1n@@b : ,M~uI/45* N~0UxfHw_$ 0U[12@Z O nyV^.Pbk&6L#p:5ԡ8@YY=q:q:a̪'̭0U_if}1) fT9E8'o@)8k]7;btI] X2%Xd p.iBK23)lb`$)g0V*8;q|-ۥjv }u{]?dX$ =[HJP @t3'5̧>.ve|Eg6 !n|BvIsTGCؓ;D/>G0p _: h4΄M"U(p"L^|JQ lS\"C#@ YoPh_Nmr`.%6t' j#Q"(?#a.! ўH t,ZoXJ7 KZ}G N5ob#EHn ]sľ14q3JvK0jS7}~:uSnpYX3Ǭ+J17d '՜,=C8]L?E Lh"nmCZD9R$4Z L*b(ipӦ W?i$$5rSȝ6!릂?K&`5蒗$|4;.nx:}k}:OketmMH[ sxP$j2\4./VKH'tHP@3U{jT  Gc>  &w¿z {$>J]`2ABug;S4nQ?,w/z!7QE1!ڵ4SwԃIJulףJLp $}pbuŪ[n x7;Ь6/;L/G7} D#mI#A*r`Q"Qַ G (Xo(3% ؃>"tl0n+C =U7T8|AG BqP)@<# "!>o5IMCQ%qwxYq]ި}".N&)OiըyW x܄/rwRelP;<tYKU@;@ f$[O^M` XUz7fֺjUۋSbҬ6~U#rvѤtլV `zG5:Wzh\]P `6e}Jf qdi]7p)*a"&`E&IZ`IZTPkV J&?+:pitI )V:ww|9/ڭG^3Y!t"#6 *s y@a_a3")CO_Zq4gcoƝ[YYˌ$Z:PZiws3YJ{FGB2o h @y~s819q %U6ƾt~6k-~/?{c:3gJl,\`;Qm>>z 7wBJ ߡ3!@S&u9 Zk4K OgvCYHrgl p7î_s-!l㵴5{9$BJzghg"!Dh: ;`yD*DỈF9(8v K;65O\F[_V{}qe0k-LėWTH^TH(' ;Ш;%ӓ/S95~5#.LG%0 }`{*`N#::#?F)ٽo>Ć|eP3Ge%)/<+FK7.icS{N8T#['催l1 ,i \g醧uÓЃNStB>MWdӃ']fy\  N{tQf$/*z!vDEtV eܾ7. ??O[h PTG@C P:( ؀hU ! JaajH4t`aaR"E?%4bQxvLw{@0}w;KfkS O"uz _>Pϸ#\>E7oTat_(,O,ckz(9e&c 2nT' fUrw)D)*-ZKX_vaOAiLa:/ |$`]t@ x:jE߮tj߅Xwag68TBg@5ʆJgj6fZ^t/$TjU9*KS ի\+i†N3n9:ݾ߁&RmŽ> q;S y 2j4op>r{j+%cEhE qUi-L!C%(^ _}(Wޅ쎻a0%; p;Xzzp'ur||@ ҥA_~ڕ]`]

&c(D$/n8%OFJ\@C?$:.:_HfH`_dz {*M;%;7g9պIe<-<>`u't}Ao}zm۱o1^1 H@d+/Pֱc |ѣ8U=xj4#cޜ& /1(skA+ γ^`8sc-%}8d!%.U^.S¢dr쏡 \tWzFO-wY7Y۩_(a@l$zE .n=3=I\NÌ2#h$rGt0ˎOQxh<P %HS9k3314Տ#Yndf Q)9HNdNLJd ⹔2p(ə,,P4te:'xbJ1 @@"?2uz N GIu6` 8rB8SnlrcD^{BkUN܄s bn=SH8guaZVT+IYYIJ2X\>Z x<|>6q:u" bND6]' >Yx:|ʬcEl6+2d#Y%(d{8m TmfXլhm̜a>] f\ xRqƷH>q,d^*c@b9!"A\VʆH$и6o~6}X5uҟ*ӝځbGڕIKk0%KT峳nR^ceE{7}Or(v"f,ti^@ў1sOPUV3ճL3ETێmrlc69qMkZi lSM 7Eg9WvB$M=|MJ5+г=W[]I! ,kUYjt<>X+zъ^"[֭.SxSO1Sq֓45?;K{|=RRxCmQI p]*1LmBF:n^Wfu7s+Szm?hF=d#cf0^RS{^1ȫ8#O/ͅ}wHw`HJn)cwE$9og KB7(e9{9dRT` AޏAF x]>QyC-7$>~va2x/cUؒ%,¦;fXS$:NiZ|}l##1a4 N6~Py)ultRoC(*#)df/O8$/(HlA AƑ=SY7ʠfSopNreg.?j/w>ljBHj׼>]υ#|ŒTo?錣Z !tDf )OXEvo/VBkae4 +Hw1gi [[ӫ[3VkZu M|Xi׿WI"Tw<;/Ok"Xz6 6:0vpZö)C ''c,*3`Gej^b5OV*Mt&U B +q!ƇI3<;C˙&ItuPUĎʉ]ЊݮsMCfmfl l*?Z)HAGaX(G|+&"+%D">՜[ ۻ .r;ERvZ+EQn.x_!g PPpVxc8z`C//0 7AgE*o#s7=ln8L_hԁ?)aDFe}zPpvʐB\>+11 @Lt$ a/-hhV퍺{;bP 4( Bu.. Fe;E(|K`8]`YVG@ e{G$ F+q*Qa|ƻ0pt3!JqP)@<# "!>o5IMCQ%qwxYq]ި}".N&)OiըyW x܄/rwRelP;<كSo7A]aqߐBNvgv~4fR x˘$9Oy{&SC}ߧVJƜ|N/_-O*=n4!5N~Mr5'*-5*2v,iNg`gTX'ccPz.1Վ~ S=ah2p_$s,U_)7lΦlΦlΦO ;C~FMæ~";[BU+?!iWhyMp֐)ԩ9,qU ~hPv'!l2ތVBHIAwN/LK4\tc G(i(grg沨Eɧ5ӔeC<Cꏡni%# 0u!D >cm0dᠺyԜRz\vfFA2Y-)!qP.*um󿚓LDߩ|EW yB\9aC (g%]J1\Tf:'}!?*>=x`5x[=?'$ĝMhr'*DJtƀ?F "(XO )](SR2ec4WDG' g1!DChġ'j> &cY؉|*qA@ i@pDvv;N(܄De]*&Vvl~Nc^ٰ˼9CJC?P ["KV?d_4S]kjڻ$ZbZҰpB( )["=zx_E#@l*q3d,xE^qbwg[Ye&!B-,xtK=(1N. K>%?j:{ oc5IXKצbbTf¦Q Q$2?r:g+eO~g'KwfوraD<-Y3{ڣK%>=_H$u2msD<|_b\0 83Nz}?AϙEIA1(fH!`=BY mסg4N\?DK^3Y~e2 [bqڕ+!giяvZjSlfgTFWm{L>}&rL;x}`To 7V1qcN M){),vOOđ kn]$ڄV}nu~wtOЬ$h6:}qw Q}(דv0f&}mMܬF+8f"hܘf3ޑO;T cP'ol(NF y@&b8h,~7ox\DhCQ!~&N6Ž,;4POu)c>/¤d Hs&tO`|݀MjϷ /L!XjSnDݦfMGW2@*?4-{YE2Y9KQR$Nh(lDFlDFlDɇN)(d$ s?ܾN@nԭ>}6F C-L0d⍖{΢3ܧ ~%qQ82SUIk3?$ZFQ35g":ڽ8 mbʞU4 Y"H߀SqG?"n8s5gHhjcmmm8t(#| hZ >cs@2lFm3YjV!$@(Մ2DHbA *>E-LCyC_4!y$<1 EUA81>|.GM;Ƭ׾m[R>-{T`፦?,pr.ShN9y(27ҪљMtiD̦6F=klF)7 ͤRMRZ_Rym6Oe=HS{f@aw]e4ٜZm4m$Ū6јOdWd]]9Ԛ٤挱jJAd0C_g0/M#N^W_h@ WΪ'&hDM@H aa!>GGeaN[pDĥMhrP܂ͷP my'f_pO̞Xo*jò|l1MEjKNU!Т7o.o=MjK[seQ4|$޲Ux*nڟ+|m(} HY 6U7hu${؄PHɃAuML̯XNa|ċмyq'y E=8lƍf@W u,! $o"G) `;2<ŤM;G붼][ oY݄qn|BaȔ@ѧS&.-z R!I=cTxӘ~ 32Yd@|NfHؙLU:JgR\vsT&3Yzml#}=j`j)z&KBn,BfzolMجrĘL*pϙVSO3hH֜7gyJ]M!W'lg[=T频N<fѸdUG?eaj{ ZdDL$ q?FRÕEN̓n`Mˀz :骭^->l\TS̄h%H~.>vfc|U$Zqh%[gHO_`U|j.3T%VTFŜ*>b ~ _*&3r&yeOa y ?pwcM.ZOeI6-;ﱫc12Pat;qpawr*uJIS{jZ8 5)ے Y3ݥKESS7V:SsioGgߎ O"v6e}4IQJ[p\Ͷ;I$|}Ht.]">SqvY1h越+S napS,nHcZ^:ܕpjh;pɆibphႸv=N3I /]dseӥaņHMM31Xu*/qHOd{oy_`5W ( "O*9d7>7MWȂ'|ga'o7gPe[0>JXc䙽3P۟RØZA3BޏG=(@&OQ %)Yl[X)L.[84l!Q*[;-Yu,"M=*[Z,-{3;U,MW,MWfnb8  m 3 P0j29V%  o` MxMxӛB, ա`1;>hԏ5sd4SGE7mlCCb srYٓ6rBm؄{qoj^qO6%4ZvP7E YMY'؁gh4yB!a\ZtݻR$wqo Z[Y95 xd9iDay#7|OYV<6 fS hC$z=v_g OJ%ʛ ]j)A$ך,ӻ(Sh'| /_o Bwo/Dtޏ)Mw ӗbH䯿lmLE~mO$b@t8mzMry"[6}a7u U ;CJC:AOGVEtkE4( xF |C|ʽ{!*\>ɋN]5`aH%Sp!Q*EJY*&%x=l#qұ|σ&攧|&Y/Ń!Hhb0T#cA-mT2 q*]4D`z @sB{3,[$̉i$[aI~ ܖz7!%a klQxMmlGg_϶BKYJ5̱'2P^ dVZI p},ȹ?c(#Ly"_Ѿ8󨤏 bĎFln<ǭ{ju"O] T537{{Ӌ2]2G'okm-#[89?Ã"V;Iqy(j]B>Coc;v j}ծZ27HƆOagPSd&+4_TN F&`FAOFds ތ$R$i?)aDFIOb޾c k8cBH12݂vN0 ;Ь6/;/G"t7;#mdG< q \x6mu?0hlg GZ.Xkh\T]cRnt @8Jqm / y]IoZʍ* Px*FywqvZm4I~ OFͻj]&|A_뿓?.f\4Y ArU6V]o`Ek-(ֺ(vr^mTϲW;~&7V[|sh*WgUiV ֬k]4JU-|W>;-W^*mANkjCP*0aЧ3.~ (7~/4t5{%9-xjLjTs' y5[UJ^\f'Z]4$]5EhUm6?fUު6W8, ijҥb\4~G8tڋû*a5't*s_gN0^!NH*.EcVYo_aOxPREUi,GםPN+pH% 75 ĨpWB&Q?~ Py_#@Ӳ $>=pc{A{Fѥ,=8BF?_tTm@}0KƝCٮN CTc.z4E:JNcJF&-ap7ț(mϒEj Rsī}jOɉu$.HZQ%n^C/\CCXS5-ӥ(%RBѶjf;rEuh<;}aIgc6x63:"^h]Fy xf{tP;%ILͩ ֧kl%y,,k87RsuZ9tkzҒLI!f0,{lDb5+ ͯѡ;CYs FR^cVcd dE;iEaD[ڎmXr`K25M'T;vJuw1w8?%Sے|4;a Pїkrklȇk`J`~BQ(XA^97e^ȸO|vzLKMM˨P,Ԑ0JB\6<w;':.# 6Oh?sA &ܕ$5R}VJ7聚c$+D 2%AG z 6s&_F,>#=9T4uwe2ǐ)85 br,Yp-|k#3vA^;~o܆)X>?LNHZ,)Tt#jkӢ*$i}UyOVMMS@1)'rWO=?_d5mB 0K%UP%LxZRkə=ƝcEոv =߮(;ZꨥrJfՊٵd v 쯺I!Dt0ќ#:ɒɕhӻ91PpJqYa3ń:&xS`g}<|Ծc`? |)S3灿3 T#w34fiY&] WP6 BZO/4Satq&,sSBb' Z֜"<9U8mqJ?M\Tfܲ2؎ S)sNx^ťY ZT+ ]yck]me50IEnѺ.rEnȭܚ2H. v+0mr6pT^c31&[I\ {TBQ! piDIBifUbUCS8} W^,5k۔lnJLΒsCtn <7|6cdO4$+Y\apYʎ(v\D9vܱw츋 Qe;=-<-  8v^Do$leKvb˟V n`?[G4e),+\J)6 )@;;l8i은77=}o_1;ƞHAlw!% !е̺M!j4h\\<-vzۙݯVnR<:mz]mzUkdsnOi8? 6jqk1۴cg}ݦm<@g=6?m:3;ܦ;qǎ;o/^c-{j4kyV3sa]smR.KaiN.s'v)m;Oq;[`R'i3jk0|θ5\&{Zsugw玻j1nwY; H_qG,81ʑ;'rpοw2>;^+Y9:Y0Δ;'7p̏c\|O.W;`fBco1WCT=~4IH=&C8[tG%v؈{7@QZL̝Er]qvEz.d@; %,B3.>N؅{3 ~;}TH6xcp[$y kNL55FNAe|3eUGV*@yJ{^j{^Z{=ƩN}u>obk)+ՁX m b\pw}7k3LP2 8~-T~ݚ*X!)!CErx(F,)8-3%^IC!/0uUV 9-4ZB/Hò2[J2uÛެ8IlJ|Q ;tUFcprC n-#[uۻ 9?Ã"V;Iqy(j]}BKjeF?!"UB:v8ŝ eQ$Q=8)Ճ`2{HuGff`R/PoOJX?ѮQ9;10g33 $ ed nA~'@ڼ_^toIn{ȿt.. Fe( *T y̏o+*FW]t`mC㵏S]O1|K89=6SfC F qm / y]IoZʍ* Px*FywqvZm4I~ OFͻj]&|A_뿓?.f\4Y ArU6V]o`Ek-(ֺ(vr^mTϲW;~&7V[|sh*WgUiV ֬k]4JU-|W>;-W^*mANkjCP*0aЧ"i^V+5RGPn^ijV KrZ>/4` ը\5O~kjV8)&j9hIjVHL0=#l~zWZUm4.qX02>K 3Ÿhpq2ɇwUxyP^$ii%۳jRŷCY-*՚XZPf#ct oL-e$7|[ ;7kOUȿz#a'z7C םnUdO&<>Ro*sm^> !+k8'Ȓ)݌;ԍ"EB)/9\^EjE B.P*}rR&`7p oxPE@~&ȳȵHjyԺu;hA H%[w5˷ʹ\^f.A%&.AoѱhƱ.ÜڳYcZDZ铗8[!wmIO7\ˑӌX v;*" e@WgV]4( n(w~1ׯΜ :ls2VL% |/|QQg"ma֡{-M{6%,uCw-`\K =N|e7uۡnXd6 ֬J(gvɳ;S'ѐ\ \zHPt=y6?8S )B>"plx=De^戒f i!nR`6p|#Fm[Py 96,ƿnsMJZwcy8C9f]o fhD , ;ɬ?Xrc#Xi͏$l}YY~`xd &檾(cDL,Cہ&kXCdjDK%$OS3æ=Ӱ,X'WH!7Mk܋7ܸ'72B z%ze+K;#z@s B=eɼD#eb90]ueM~4V_uuY*hω*(AjB%N3m?>a!QߡI{ 8ZrZ?NиDbF"ZB1(K1hiSlN9l6!%.tj=m# 4ZRܡe$0  1:E;;M';%tD]vbN֝Txad*SZ1X#x.}cßu>:=$5Iȱ@K[cm)ex$"32>FN0񻓇O& P-Mr7jAYHۥ/m!k`jQUojFm|ut:E{Zw3$XqPUFjʺڬߛ$|0Ye`ĩ%wa*Xq7χRN&N#g~'K%PS] ˖HO 0>́t?a1{0a:H;6߉F`TCU `:.M&3V*VX^nKқߏ˰cZzl-=c-=}-}Zגgʸ}9=rz3,7u9=m9=}eK&?%y|I"5i5*6 (}w?avzXK,W4(}⡆ Oj{)C.eiewL%Î;8F'9p6riL;UE% oB7+3k\bGvƽ>k;YlIs!IH!i ;Rwy1L&aJjcꮏMBw&7*q$;'dB|؞m?KIzV0Ybp7ͺy0TOvsvۍr'x3jA3Δyy3 )|,K|҇\0 Fvrk4wrsBQqXy<|{$閣-r66h6t4݊QI0J2k)J h9`}Tq9~N·h>Dc?Nd= 6ƳGy5OEUɯ4xR*љůG|>IE%8ZS=N!A42ZeʆP&/HQI/Ps~tD,ѱwloINP$MWMiP=5( %wzyo@9G":f=xt1諤8vWn ]hL#ɋNn]GKTurETT0I/`dջe$`(i>i5 xeWTg†= S(Y<,[xa<5^ri\ƿӷS"Ҩ[}DnڦM7i[R&OdcNⁱCMxhOZCllE ͳ͋͛ehyy<54"忼iW '̊wR}O*!NFPd}{ ] g [-b(mዕt3K3~Jnt&nsmb?mb?eb6)U_\EP+Y/{H3 72=GiN+8Ī,r11,}x C\#XWc_?`TE'7p{-\pFlo`(Z5Y؇8!G"JxQ\vhwrK2/]؋6tf|:cnHIm/v >n۴[biZe11ve 1H1z /x8?}km$h>g6:H8{\|7}K:.= A ~ϟGh_ﲵnDVezޡ^v<ޡkC:.K*ǧYUSuUOulOKuzy>Ei#yY. S\w6AgǍ=mb==njM,ף܊n˹2ܐsO*S1 j0ǃ ^A݀sŕxOL#&+6>-vI8y˼#K,Ej[&Js-c) $. KBf]jq<\ . % 59ϯ7~cUH/9eb"rL)%\էOvy%vy]^b%^ĭ41%^P^wם]糗]8tj1 d9/X~όx;W̨VLKm o'0K7ZYiŜk5U 5#'?ը5RC}N_F}uz Yeӛ*ǂ[ D/U$:]EZpr&ƇVFEH4ةnF^&f%X"*eϜKRE2RnBi&D"% Tvdq>O"kqP;C=E!RZ(i6``` `!wmf&MV'9% ?*~2 7[` ," hk6E>?/uq8tZ}r)dAKYس.@nD ~B@c#W;v~PGFr&02 5<'׃ߣkDi/fij)ETW\uX UAu 14t=-0+",q#^be<2oM`ʕA007=e4@6g,CvhH5ԧB`;s@*+BXHA9pF,8 ڢf,ŔZP??ECdΘa=yYW qzHv38Hs&ݍ.j4G2~#sN^t7m dSЇL44$ v00{Vc 1QJM Hicq%J!NWfX7X"^C b/|O!ztsȱFkB]׍zPQ'NIPXV_2I$\ P1 Hh_{$`ΠoSH:?XNfӂ#EΏO=\j27a;;sbhJG\cs8g]c"xfagY> v()SgY9Qg,7c&b9E?/yؘa6zQEdӔa)_X4x md=3.3tY?dׄ[]5d!\`'N-6P0^;a@hs|POm'aGY.q^N{ezZRser: !`1EJ11aޛvq# ß_ $!%jjCJ'"frx[dKe[hMdp2  P*T'x i~#3q3Ke3n A 3AkYB L_v]Eψb},]&F|2̍1l7u7{j4+K㢛 jBx+ЊD|_W^_ْf֋8_o{&WXX?'Yz5gWػ.*mTMR=OfC:\@ yڔ-šNAYN}VJdFBzv!D!m1@Uh ;P8CA*?<ibq >1iQ)i%c`E I326) \b`yǁ#&הw[IV?*Qo^o^&AZlol=SGyvlAv|8YCfl&=ňO#FǓGٲl3f56P,akP!!ٖSe R%\߸2 OXXy4'I3'IiKjs*Hɚش '|É-vBfK#brK#WaRK#Mw0)%O=>d{K3=Lw %c-L^hYyFIR=,X\IX]-WZ,<fxV!Յm"Ijz_I鵖 }vYV>%zZ![^:D3Qa9%gC/b7!vo/OQY|%f'zDHϬ6FNx12M^"ܔ( 1n<ђbF{ؾEfS%zijֈ xZt7!8=FxvY p[ytF!3DΎ@@ѫEP0NSA(UZQlԮpab6VCp&_AlTHaT.dU1fCf˼df51 YcaTkjj?3CNI J&Ƙ/3jʮs4ʘƧjLLZ+9_>DJ:eMV ۷ 6 Th.8#⡡>oKHt@x:(}w̥&VOĭm:'M:`GL4HeY|q0]fh΀9|fffTpIptpD!LLNno9SNJ4]pXۂ9RNlbS̺+/<I,+"^/Č7Եɂ:@&W & -_`j-_aȠ e x6(8SS 0SIk;=q&vR+8VfƎ' ǃYY1lNǖ&&2&R!}hYEm؉SX=;B[c23c(R{ +(2V$޸N{/|$%b%"S$=ӨBAQWSMޛy&h}B:qEh17qO]%ׄ}ɈŦJ4<sB%_iK^fqc/I8ߔ(Y&W0ϷP ~BDCe[xP-k/xyeAz-)y2R#%Ht̩ ^{PIO'E>u\۰vݾwnNNk߼YkZ #YD ifbd /تMUh4VCu s<=1]yU%D!h'+;%3g2/zc}wi6oZܼ߻w !lޔ{,}Ez;W5y{6{w|;߹wl܋o1*~wL!= ط5,OIڐB)h'[<˻?r>^𒆗4Tx^<y"ȴ@Yg ^~к,͟W6`XOV|Y=;]&4簹PElJh]DfKh'Wn0'40LIqwzuI-Qay5be>0tk{_p2g@ X?6j"!ǩk, <Spaa#=6@81ZƠPZn:!vMB"av8?D̩f1RJ:S=h84R h< [,s 7` {$6u@NDP&jJEbQfTj<\jEc}Fjgo/?/|?8uEKFX^^T+.r j/ʧ_j[W4pQ>JzzpzdWOPDۍW#go{YTc)ĚeqQavp\(9ޗ]X9ʕ#V/.  p:.A:Pd@rՎ~%9,A ؂0.NO~CvYpyDޝ"IgvYCN)2m@yj;|U)GαE܏@ P0g#\$%{||/t*@ f^Iru;;:=8·gcvTQְ@ ~>5'm#%ߪ˄#@L݉,8I}^IbIu+u+f݄(qi^`5t)oh.`C]:I-J+VTıR gfI0ҐλD!LhA5\'i809l3"uJIGzHd5 Q,}Zo5*n7ة +ժPSȂ&b{{&$¨8`,9/鯴t w~JZ= i`>VM w0E'\CvHwxxgğO:9pӠ!;j8Zm&ڶVc #3fцOҵղ4u-`^0ZxYWN*ik+Ob4/^ikQo`HQҔ+Ѥ0`nbqsTk@Niξ]h".s]fcPԦ Qdshsd7of&L(Vi#0I@h'p]T,cp _Wo`ǠQG+]ׯ`; m9_ܧ;hǺC9`doŏg6?>t8E>KH0iLQ_c2lN9i AdL鹩NԻrKJ'b⭐%كVH\ms3gLtʮҪVdeŽ&dx2&d3J6̒QV2e%?2lee"FY L(+b973F>,L*sa3$QVtF޻WCJs]BrDY2Ya_#n3ԴTٽIq4hgY7GK%/qDQM,^6A ŒŘXxhШ&NA/X|S?gӳJZC/:u<^ON`jS|qHC|HCr} 0:ނ-m!fKUcJaZQ ȿ^pPH ٘h a#Wa`}WfzI#󣋣O+uwZ>oȞ3CM;u[rS8z|Y-|=O|(Ϻ{ "m}gfC GS~p̵+[) pz8N|9{Vb +c,J|'^ [m{{D6Xd40W3O}\.7pX[Jc#W)ã88?p h/R_vlᏩ XNТ^]泅G]i {t,#v-$NIR$RCV]V׽ް?eW 5C*@Ak|S!g4qvX_=+Y.@!Ev~1aV ^p1tP'b{B@]0p3:RqλJ]]v"~yHdk1dT˜viW' aԅ%'W*t g7iv־:b:̉iQkccڨk}sSFv9ދPtG5Has'x%^bw2 Վ]HkJGuZ 4O\m<ۤ{8+e6t*8g&ݕ+)d"&M%m\jNK{I.Y:68L1k*ud8]\;>+ty~uRzTeKkXGF.h eRk?M'hЅ.8x bZ^Dcj(ڕZ}`oP{,l+GW^'į4/WL2#핒>WpQ֯+]N*EIa\?+dm~R>ʇGD V f\^TD ^;0i`]nP{/ӛӓ% T;xtH@gq,ʑq` 89>WKv'_9>|W4iB8p776`4i܎ #ZoBiݨ GqKcrD{ daɬd2UDJT1j;G_,wX5;uEsGMvK}-SGcB030{*M!?++!;^!PI%}geNq`S7b Gq`Cf@-'4U$ UC4H>WXӄmPhsϜHĒ`Ɣ)ZF1)e4r5|AҦ8$RM)00f-') d*x@)--<,=;Mi˸ח5uI2UmYm>%vZn2?2%ꩾ-1/欱ϷFWc4FlRbvW6cnJV.%#PZNsV D-ᾇm%!a$`fkV{c.ƶpmP4PJD*T3v&]^{e3[>Vǭ`\j6g2kRXk| o`^|; ]ًHPG:~quLX֠aN|:?=qkQz jx&NIP2s#k{eU5ZVA1/MOD$O4{BH!3uKTh&萹VEҦY3q8|=ggOb>U7葠{nEAD_aS\ Sk$\ySK@]Ttx_PA{&KVd(Y>LO&;;'C1y9]Cթ.SXޏ/x<'bA/" 6*$GuFBG(FmfTJJ~/\FutJN߱ &RIm,UlD1L(ʄˀm=LvL \D C\@KiP“G԰R-jY癢)oC)ѱie z_Gˤ0[j}ty4Q62q=y8rs*2m(1QEL"xBWR:#B"I#0ed"H^0yҕEl1SMm:1cId@.7ٚqf^s1>JޓXL+&g*z{/鰪DZlX(lI|U9NJs(A8Uq~u T8UU@a9Ȇc0rXzBRh\* oYUna3JVlMn#jaJ˘_k]le-OfQ/*W3^-ّkyCT/7{Q$??ޟw/.pDQ{+nF99DZK=Wn,,9k7?P`D4g0(i1T3)j`e.aoHm]{$e-®;#6lnq6¬%XڭE`k3eZ* kEG.ݛ7ū0I _BjM*/ʱT땗 *8ykظ=nuᘍt`" QV ] [|7lb*39qPbdNB0| (0KTD &A`\[I׎{`+[>VJVf=(: ?6oCmMe!;sUfdgղUb&֢d%$\XE=QSt0],<#bL,"hN(?B~W2f ~h>Ǝ ϶3H,y\LvɱU4d  J|楧ɥ3yP-x=x=,4j,X^}iE!{U5W,RQxUWxUM'f93ͱ<:~~-O?ߔ'ѣ (}sW5҇zY>z(~R}j,MW$Oǫ}ǫ}As>sfe* iΔxWoH^y9^8^㓒?a-|qYk|RP\C6m y\y[ COTkuOOG)"b-FYx"(r|+f(4BG> XPMpy8`A[( $b2y1 q'Ih~,Z3 G^ ,b LR$( YY+PON$Ճ&Epm!CP^ ˳3 R% _z"`d>o#v 7b Usa+3D UZ,3ĐWNt^43 ZNcNn{BREolmܛX7d۳TҠTR`NtA*h>G !fBN)$l*s96 &S 4txRG9Kg>iT}Rbs︢W%ucMɒ=1Ӻ&Zl9簹f">T$}$Խ2 3-맦օAiHj8`Mw*5{ q?o(PESZ!Iؖ' bB,ذ`EzcWc**c4v?e{%y[:K3 O3;Z'P S=3?m[l&0%h轎蟪^;yy?ۨ,RAbyŸW{ŸW{ŸW{llA%ȽȽ|<#OV}{'s9^Gu^Gu^G:r3c Ox=B x-s,ޗk aޑTދ~;1xĔ 1~)xW@xA |,"~JZQ'nM .uJp-ǬY(cLFy)ds]胬rB(f.>IGJ~j2 Zr ^8jTjT%^f6xibf _ͱ1g2>klpoE:i2#AVA$Ggv$X$*(dHo}17=C1I!2!c1B7!2!Û1mx0 ohӟ-Ÿ-fx:X\{y<m އw ?L{C} ewJZ?@BP2i^kZ-KQoRPKQ>>{Kj2&<`/F?-m/~o@~!I4xjDZA:$%<-WxQIB!YͲ1jVC G͘2j֛)4酒#9ߊ+wl+GI FQ 49iB%-@)sh!YCVj5 {$1)(5¥rYILzqSyqE c<} ^2sR;ȍ~L`4$CRB$}Luռ.*UEݧ+4bڈ6^ZicWnq5 +'q?Hz5%^S5%JS_4%Jg+KUpL+I[YPkKkKi,!^Y%^YM+Kf0E<__`Ђ,V0ZvFI54b/zpɷ?q]F?܎ 4b:Kg$8#kIש!;<9^+0+Sd,ICD%kz$,Dbqã&ŰaEaY'E90qR>'d4#$(>!ʤzxIDTzWX$G#'#gl.%IV4'z'yz1Gx&7tn$ҔJ j`9.gdac:lMմliIU<^?+2#XI$ͧ _YJ(URPz Ig.#i:i:SYJMXDLS%k`+櫨Y꼮iu]n&~M:;:;z^^=5.J(֕P>}W?yW?O.W˃DxyOO5t^N^Ğ<8FRy_|_LG/&zUctϦUA; >'jfZ[vaHVB:%-hl䭪xGP H ݻ Bq$ 3>qw7h%i1"`@E !*Ymz%Zׅ>i%$ݐ ėπzf dwo-=du*dhuBxy5W.F W ZAE("v!cRM -"Gzˤ,15ZkbkƵz**Lhi%A3xi͛dOdpN!t I*U &օN:R>^w[(pPQ1ULݬU x݁߉Կd15.tվ'crCg&9BOU"1MyMʼn}"&g G?TGTqzON5,Y,~)To:WRN^o)g0+gzrIO4kG!}N5~^εVgq~ Zgu/GpMV.TNg (U>l "۸m9`uG|@iKRIRI:%K\Y%t C:uP[Ebx1.8MqL0%0^v|FĝN\=0ŌxdѢKڏScSs;Uy,s6kޗi \N+Z撢;>T!}$[N23-맦]L8Ԩ@qU"F@2(PJp¶|_ˏ#/ΠCG;<~~Q}?;>\|A_O'G<8P=9?TjG!Ԏ.~vYC\iS&gCJiU=ŋOY菒pbrP+"dk8a`+b0md"9;%{& 䵆Er1G؁?;de2?ij_uʅ#}ӻ%7~|uMmL,|l˴Pl4khzu8\H4zXaH8Q>Sr? katIdM}Hm?Wu(N09 ,UF%6)xGwC72=?4ғ@`5&˅diSϏH1tE*E-~ X@Wa%E$^͆i,.:Rx &|8/mk1#BFf3 a'Ok4(=D^$xuʼn$"֧IMm +U*#I85)'wQq"j7A`c{_<%]H#|y1=)jjz: 4E ЭT| _|w8D 〓4WPxɊi_kKlMILQGBb!d Ƣ%n0 Y70FQP0ֳqrBDA*'Ɗa - MNGme_oT&x)0m))8H&:NB>7h+~A6",( &|& I"?ҧs޴X0 xGԾoI''#HM<*+Q&=q7*pͦ$:_aJakʞULɈ.B8#pIo}-)֨N~ &Vȹ#_`NHmIXT;.#z8pR~bRWi\?R+A\ =NқCA6_}fۗ(aJv\LhE)yU (T V8YVK!9|;zC聃n+mOMlEjk$c+jXFSG_lb+}ϵoDDRǖK!cܙi(S1* VyBXYz ֽ?tsz$In=9:б)hϿKZtc=! l6@<% wmd# Ho@mo75SJnVޢ"ŗVJl=9A~լp(Mв.e^4ִ6*7ѧ %9;<+q1'%nt9 ؎% JjƵ`KY &S?-utuٵk)cwƛD{R>`38LǺdMlh@ \B;_b{V#LO `Rih'#ρyTJ9$Y碹2CY!Hy$:0R"iGGnQLs I(0rݬPWvS cdl}@%V飪+k|]V8ZrEH,LBd13ӽHʉ^??qoS;eZ #ւ{ohIX)$T:}Kt-|)s{WO1/)ß;  ) >;(JN_}݁hU4ou~j'՚]*~gQ(hi1*+| [_x1׋ib4r.KMލK](`t}_ N&3yd^ڋfc^L~Zb)e dz( {{ c`vdϹ{O*yWWW0)E.W)4}\?.Plqša E RS*: MȢ16n Gz ܡC(r>q) nUDy-Xm_vi\!6n} ṽp־y,!"JA++w*`ȩUlb\A~0C+,9݋s0݆Mɪ31ˑw_pUYJ@k^ xPERaK۰2ЈMYCi SI׼F 1I ]t`$~27Q"dQ^V딱e9 9,o;3"'.^LaIÓ֗Sm:*VA/-M!O[awK JV g0sGr/كK/ZRJHv>Xh⣥H{hBxsG+$/u3"8<1Q?țShd1ٞTL'}&cqz63'AUj naEc BXu- Ju4(Ȗ0-g+oQ2w=Z55uY;++!!.sY_&G:PВ*9TvA.U!cUIc4qIH@B4).xidāS{аgrp}z8gN2bAt7yhf4o&IބmK zN@f &22O7fL+ͦ:wFM=Ndɂ 5Q[ᦳ=߰ߒeyoLQpzpݷdsc^zCږ2m4iP+W S U kPVOm1s`0cbӝ9%nzKNsA!bHNsp?52-Fj &ũ&Mje&6?uM̀F?4gyK=nDKGyB7QXz띄<@0<13M-x٤Q"ZiYlL--/VɁw۬7[[@J%1}JZy*g'zv>E:=ִgsndLNh?pGם9\p˞Eaք'|2mwp hGokL1PBKQ2t f\ 8-`Go Ž`mbuz͂| q\8'X-80/K概%$,;z_&,sE,4S#6(vCe.kˊYK6ג]@gEcy9S:FpyÌ>66rN5;;CM0[3gw[u?ZNkW<#PWدY~Ynb mvC$f:Vo ՁaX`ڧ>.Q3CfRuz^~ }sTLRQRyqiw#=[%]dHr(7f\Y V" 'lmo'Nu.g CSZ7A9cJFC`Cw/ t&zD6<2'ޤ*RؠIWrSNIKt/v-Ĺq97h\s_L̻!=hݘէܪjڲ٫\1_g˚YBȱ"#-t-ޕ1Cl7sdi6,}c{sȘ$ecESl]:wݠf?-ty%X us;$FlmlGߪ2988?(_VN)ۄ &#D( rEPXX;F!{{;0MMF;fEDP" Di Adg#׽v/&c)^'ncبQSׄ##"_ t{rB2n[i$ nB mV'%"]:N9aDxw=pCC҃7 )rZg^-  Q~yQz4SA fPv:IuzԿ:^)RQzpQ?lJ-k]8w _HgСCR^A{Iޟ]H^^T+.r j/ʧ_j[W4pQ>JzzpzD9=$Փ%<+v[rrtq~+$zy-= er^|8._0*#;Փ5@%G^k+GUr|D@й%vA};N%R;?:◣A Hѯ$;OA[pQF ݯ}..ȻC$1]ݮCjHjG]/˴m`V^]\|8Ǯap?52>C `]p%<@:ҩPB`5zIh&ɥYrzߞ!QFZU24vg F֜%:"< | {Nz>Y];kx@xՠ^%x>c]E|AUDѡdY"zeo .۠}]/!4#SjJ&9&3;gj66_Tm `щNj~R78k FzM*moؔh'7^ a|@PH)D3{bNC/_npXp Ju㠼P'̙v 5{Sq+O Er[͇Ac{ WQT4.rw,)81# ꘒ%iZc/P2x8^Ƒ/xe69v@ov@ov@o6xkɵy!B PyQ9&~eNB3a;: Giᚸ lU}hbv0 AxOp7-?WƧknBW9ϟA7lؽ[B|Ӈ }q*5x#!Ò /Z7 a+-onIt )0i r$,[17-5`{>F|)h$tG>  qKLe*/SyTߺL%=WAKUƸH7 *mľNX&`[;?*ׁR]RaFA7}40,*]#Sv0 𤍩#"-QmqpDT7 T}ަR٭ɝl"1$P Q] hk>R)/Ju*׹݁NNhM +0G>$#6lA5oHA i0CQZ%3O*_J;dn.P.iK'1  HUwX3@ܝ}tݰYk]R-c~򄂩_1V&&E(:&8]f/ax (7Q+R6ڢR/cѢFkw VSG9T}ȨvYcyK f Gx&ःP2qĐf22WMSKA>5R#![fvyF=gjЌ,TY i`]Ym)ɑx8y[d &xx D]e, cmM?A6}ONm+m'clq2VNaiQ3X<+Z:N|}T l٧;dYKwÉɡug'Ot};|ٞZ%)NJ|2Z }yho(- ~f *§iMfRN-Ӧ7/'S}>T<&ĮNojnƑsDY֦*ʘ xiV\uAi$}Ҏ\շ_"JV$lr"/˨9m<%&q%\e+c-H@ZNwjrm WPKA96Vrna'ڐ2I擝lHhku)iIz4E$BT3KdqaԑXѲ)ȴh|~4ĮDt㣛>Xs#h2r%v hFNiմih}?i#S l~`|^6XP|RFc#ͬrᯤpnA\ͺ-!$EFpXRJN Gb6d6LZ͊bf1] "GƵ.˸%uC`u Tiu{Ls=7tt1ZHDO-\C Kh\FX%lxp LΒklrm؜ ?*4+iZxɹYJqT+"j2Q6O 'K#; 1YʩҜ|n*OQ_?|=}ƀg VK僉lS g|Y|֧tU`W*vOm&y|u˚.SAw:igpź>?;agQy_n~gHϑ5рUZb|>85A/i$(gIm.+9 }sxlp'dI'HNDnP]I,. y Yt&c}/S&+}\:wN!^/]7h܊X89 4K>ߝĈᚩ;9E,#BY` ͻ'y¾0,B| $ N֜ѡ +4yR[5fe+o9o"3QUJuU{Ya>мqYºqJe]4;ngzTwsi?lG# q&MO/Gx9b䈭#8FqIr#An=hb`4KXWWˁ4It}2!Ĵ'Rr ۿ}z*%)5;Yk7&eK5-evu4`c!h1ctcQW{M4EH"jm/>U ˓E3'u;AxvCJj9$AxSЪ J* (BK*嗴6"tr,%Ʈ0A+3gCH&t=S=LAtYM, # ;%jU> 0P>ʊ~}ě~ Q|Tbv.s>oo;=&N+z̥ɗvŖIT"K C򭐸„G=khw\kj;ܞk^HiPTUU^q~])vY&:&l1cس>OաS,ӝ钽x/(yySA!_"ZwXn=;;Ps*;#3 @p0,]A8{S.;4V禳ީ񅱎@z / o+;L  . }K,)% ^ *]6V@BLd/xg ]ID P2L+y[L尓LEb=+5A>_cM;<50lcmKXT}W]bcE&TRHڏN,k9s \(;r#Gkir0enϫ|#$xW1 U&Ԭq2?KO32 1H!$?3iNAk'5PR5k*-vyAi1Zj/~~6a&a'uNN,Pcԉ{\tv~'E2eAhqiX¸5pN,᭨.֩1F لSzx7 ХPe^n6 $vZ@ft ݳ(#r({n.Đt^ҦɦEe}ned{:hGXηLkvʘ; 7s5ҵW3 fnEڸ ] ~J!e2H/.&@aj:G+*4\)tNP7>9T8{[7j  țB)ԛB)t:S#SB'FWЧ ^<^k^ ,F3>溻k@&bx8UIA203%Dq<潗ܒp?W wY5kuac8RKB GL'ḻ\l?~6vvo'jke q{ ?+ y4uJ~6 w3ojݖw75Ev3i5n9ՓbrH|yē?N>y Η(,B!ɂ¸}D!_' )0sEf7B DOZ2[N < K+xYLyb{np~# wd&wgiSW0}z"Ec[;;^ɼidft`O DJserȵ#LP@G>O>T{;60ν[]i&Sn4&`Q"|=[RT-uqԣ#" o- SnLCgW},z5ܨwhwqQP/r(S2U)&D60F ۀܑB~⧽ D\YnOUQY<0{,- ? Yv0 TJ9&"o~ [4t@RD] (CNgֲa=SwY+dm8Fksp,fت[:&9OĞPH)ɐ:DŊZ :Qή220ǂV|FND5tz^o&i_6|4#_r D|zi ;4`5v nn91:NfYùn<{J&CSAjO%6sOgδ{mB'jȔ#~y.`5k{Jhׇ:F*1@[4C=b q2gF f^#jwJL LīB5SLm$YZzeF{p!\,%~0I 2Bn-p6&]ڔ$,\j9 r^I `oЁ{Tr|vw[הotGvdZPrw`E-109 ڌSZon>X*6eBoKckV5ސ3K&~k2-DdhBց7Mj >=HhMX 7򛎻2'G+NT?yӍ1ӳ}QꂩtJF'Dx%.zdtsNAՀq38~픙G^Iґسm?Fn_ A>4/3g$eqorc#zqChQx]# W*}*uzF1~g+ԇM#[>=oœx|j5? e;IC]K, `PKuS@L؆pw/#!rt;!-'N"cA.QM"D401,F>WzL$P1VN* &9ys0D©{hm؝6\ T-JTbxfMȝ !;; sh8GpD?gFaCREg|V0 Io ]>F=HaI EKw*'F?ƒaWu7fK):vKpM+Ҧs.Sd@`X:*,{{65s[D4֔3ycI]) p &ާx}ZO˷"ZD:u':Wu7dQdȼh4H̐Lch$j[ PUn3=d Z1$GTqxMq0bTCcBTy(>v6l M84)EX QiUY{adx#c:sqWm cL쐲. #V h.fZnAnY7Y}ٱ^_SUh&V|\$ Hϊ?MJP Qǽ9R#=9hW5[e7匐oo`:NMZq^i+rgv5h6AXalY6x-k:ZȌ5ЈdŬ GOTs F[S@SjhҲ lQj k^,.h#2i{[0w,ٌH4$oEvN4g-dӀg*xmN0vv_#An7< c&o˚ d;b] ܄)alZXfv6sS3SYs_h&{G6f.'q][!T?X*W`;;t#҉)Ea;Ft 溲anK @9F|e"֗8:ўجMhtR,xLWRJv|ʼʐOP-kJU[:dqpyеUp&sZ"j=I{P%cx:}L32Mc)J\p\dJ$4S8*9SS2~j?woEg^'(QWL5]|^703[\}%&&o$ݕEk76z5ڰ}Ԗdp'Zpmx6X@ `x{9  ȅ73z^ K*~"߷RyvWx+e׎ K5B]XȬ^*qym%:Z~NSPNoȦ'\v멊烠R1޻[Q#Ռ{dӝ"tQ|NjV¹W&G˧!IWD( ;ut7%ԣX i-󡔽A:]CުAe9S>Z2g'6gW;N-ʚ\쯟Fhzۂ:"Ȱv۠0{‚[ !}B >*#-s:NœtyVHcS@ ؙv惝`g>ؙv惝`gl3Y2vWGт mM\҅ID{| \6Dd+ٺ_KfL͛l[= d<4ܦH$ϸbP̸/i* *Mn0$.I1fGdb|\o90M?A-9b[abMwSdzhՋd{T~Lg@XƎLf,f*Jk|SjU;XaYe|l8JB1-gO{B#QRWY,:Ƿ%tx$p{YVo5V`IF 6K!NaeS  ON,x}3\Ј[+y/l/ fgxӱBs_<`rv<`!.b.b.b.u1֦v\e4NA<*Xi8}jiTЈPVSm5[AHS7Zҥ=~Z\kqʼnHN͸W{%WCJptAYR+C4eؑ?vchJ(x,*d42pڄLP Xl h*[\U>Q U(y ZxC$LIL <\=k%?Jt+]JҵWW -಼Nп8x<*$}q;u[1{av3SYJkD5>F} Z:SQ_d9rRFJE >x[}\K>Q.-H%]j > @+Q4 870zgK+nr[ T&7V4[pYivW)m #\9i\q$4H)PkΩؘre Dq#Px UaIi5DfكF @u\ ma.{Dv3"VS$Q)I[CQ!izp&ޓnoG;g$ h)x.~{]%k+YU|U|K߲o gWeM?sȂ>- @qs$>\I e_Q;Iw+,!wAGo_oM9>EXp+,]YI=Ṟ>Zo>f<9/_}?1S?3/4 [ tU؋,c^LzKV&mba1i̓e,g0z{֧7GJ\$VcSHLKNN KE:OOo!C{;-oEMyn'E*Q-ğltAY+6O?>sa&bqqM?sEomljxˇ` +g"iy]^NbkGds&ڬɪUSRm:,xM9<c~vro6$716L=AbY[{ȩ=Ou^\E6pi} &+36?WxCq'( [kxqNGZKj͛Aw<=0;EOܮNif|4L{ ӂn|:NJy #Y+QHwب1E+ոЃyրM{@pc S|p- ְ&p@֢)K1ONʤp/E#taHE޾a{I $>wWgN%02A^"b"Ae,`#Dڏ537t,JX*C'iL.ѲTkc,2cpx _ 6CŐ:F+ԘAߒ}Nik%xﭻ$ߛw_K*) pPeYƟrۂWR%JG|yRF-rQtdwOS:m}VfqF=5{M%2FR4  \_V_c{*1Z0 b|uG, 3O@"M% = X،b"A7l 冋l 8C..)>M%\jC|jYCbkڞnuf[&Y ʽI$ۑ_ DbL/ۗgä׀aLtHiD%Dm9QJ[аٮw C[!˹M"-hc>H̅.ZH"]=ԺPr/^SEC޶J@A+?󞯨3 51IJ'fD]m6_KD M6^/:&ìb2I ?f7S#`QaР:&Eŋ{.՗SxPw (7$nؽH+nQ2on# BdٙU (qG&Kh/י1`=v_ `08)8PAAL -YuiNs'|.'SmGM햨6C0 3TI&Jř1V g$(;{ H Ǭ彽}r%$,PYC畋vmmՓhIȼd[}ӊ {,G]ǀ\^Wۮles& x19jxEBK RC!&'Edh>1A2@wƪ]dڞ,כw;rq4dL=l葭.Mn_Q:Xp,Rͻ\-W ]ļߋ@NSڣ#ϾFZrz͵arr^Yقޗro ^g%iivX!02WGݺa2˧v 7$e'lc/Z[.D&>T5`i0t,qqQ+Vc$ [Iކ'8m&c,pe_=%8A .Ɲ Q`sB.A%eܲ^Lv<콁y .ľ% [{NL'V%R CbEvuH8vХ7ʜp8: P`ق_s UpM%L8.ò^If.`HGN3!05qmqBmY &u o2(3h :}~3'FĤ),徧u:].mj%풴( -ɮl +\fsu 6@~DZ%KRurUf 0j Z}ۥ@+Moq3eCϭFX^4/8OIwXnѼZhv#D'Hx e.}@՜䀹mT(mniwז L4{ T?Y`|H˒;??wEbq7:Zy.zNU}HߣEw(:uaX4Q;AC8mߗ+>yk΋!ţ'eAnarJVVZE ݭ˟ Xwy]axmM"dxJ4 iƧ >49r%n\LU^p63,1y &FQFGyS)6h_hۼg^WvɾoV3nwVx s]QHK3@& M>[A6fN =JkiHz%ٔXZ _cA)h| (E_]"o;/6y~Q`E\ۘ'a˭8ƃ`&N7&T -'zUwXhV4dyhMQۣyFwN:@C=^ ddzuyaȲ<i>,MO-)πjW3 B(TYAvDC1msx1ڞ8ēff(SJ2 kSNqYᱶ'R-oQfdÎ:?>aTgb{‚nPcoϸhXv'mLJuaV&<=N}^b7>ND:^y6z3[62١<@}cl< dY`9q{.5]43>b:XriНpK;Pl%H3:+0l:/3%Vб 1cl3o~[Yoxē:?Vj{Pgִnn=ɻȘ@h}Y3 (1 46hL»~vdss?a+?  FY^W- m8,B#Fe¡hU_^Tl `eL :I81''!A$47`||| B 4M.1srڇs O?kK2;*;.{هsSy݆O6¦g5qOca CTz^8x_ԊOA,9ꎾp$w24×Va6bI;nT ]ӯפ5YnpE4À09'%hۭcK%4A(j'J vLƪaAWtÒHcjȚ{swd1,mCeh:Vagh uw"u VQ;]@={N|Or*k Y&^ 0t\"2WnbXqi_,{-sX_p5ExHʰF?8݂V /M{mPDb!.p ;-F5r**, vŮr#,Fį{V7;tF ׀ui \{jkO^٠16~6؍Hf^GCF> 8V]0wCy{9 E;F1㎶-R{76R<+OjqiEciȌI|\~C.S&qlOp ϛbʲK}bo޼ƛ7 K(@1]XV(좈)dY fĨ*_5z>ιDߚr Bc `bݐUe;cs l^`9 cq5P.jZi7[?z&kN $l4707Aou^NU*̲ A癞犡+}s͇/{5wLšK'XCO[^nJ8+1[!kkZۅ+bf`;So6;泥o> c1i.u1 um9Kb&"61o{Ne[xXנq-'lmb=n$Iͷ="a|4ڭ>={_T=)1V;jބ|B`tx1'(z/Mɧ^5=ܦE2 % NAW/P#uzN2#6`k c'V:&ٵnA` ъ$k[GiӠ%81hU@Bѣmjd|0같Fj!]-mԚi&Ɵ! 3ݥ5r vt X@] F6JMH/B=RSBBFW`vw3&ChhS54K1:+Т˸\T!jEh7mWaAU x}tX"p\ܖ*z} &Hi%ON#vl6$BbOO"'~?=Tdfmha_headers.h{'~H(ɹn]T1 ݍF74+ҍOwEv;[{{6^i=M!]bip%NH%^@ 'if ]%CDY/ `l' СR4"^BN͢#Lo@?:h~F.{8@cP,_auϭkP < GTa\vqiKS (-C;[:4PL|A;Gތ 4n m0k@TMa?iË6d[ 4 ,M. T{ _3Y%8׬!r< bXZwW 2ULz+@mW"xTY_,4 j!O]Posv5|PoTb|lP]1A'),Հdktdž:@9a̴4klB{bbƕUMP@c z665+mh1P[`kHv4cGʠjoK #u L%BKpK,}BvUՑеf-f"8_+vL1WMHs4ÃM ];i4v^D~m{Sr$0Gpd.ƲtV_14vçxO]@5GJWmf?$2S GNVR{I4Új+ dSȗ}P-'M Na8(`r˦?<s_n|=a3@:-"sA .iHA ;1I*s᥌Iћ̩ rrObT_NR9q>l,*\_$EH F8⁜rn1"9aVe0Ac5QU1bi)@6XrA"DݨYFgr0 !HF#zhH471=~m4J¹tR_WFBndݠ8UR!/BPX0ꍥ{j䥴DCv"-WJrǫA zf5]!8tH뫆P?eTZ/Jh:@LJ+4˶TXL`$SI-IdKSHgwhʶA69T~1 @Yοp(&8VE[Kl@㡡_͞Z'_]&AMSJ]'oBIKC^b9x}Jc"i8n%N1E4ҡ~:/08VqHc}v_G]/FI )yY4&prh6!@B!SbNªE`ʯs'4<”a (ڡѢ8>44(2^̃,4`$I]a yzVHsǏIÇ6 {)?ɳp1hủYXNMQM$ثxd OxJU 5QUĤp |Oo[֗ƙg%}Sk;oh%SdSy,bȆ XsHh f"w?D| LGh $+' u9=L.RC# ]Β&?@m_Y%fhZ4@R(CW;1,tMr @[@o aU# w!nWӅS19=?cqN|/KO,Ç' Ӡ18o'm ݄:Kmwe1İ rYd⵰?}XC{ۻ,DiS $i:Owvaw;}(_>N3"z7[ϖPSߋ[Z.)-/̆;xU60*v%pl5?u~DӅfֺ}(1x NO* $ sPKdR ۠^-Ȥ  ;?:xSK R}팪Vz= \#&TVH˗×/m*=ud&fk`3ȊlkՀZ'ka:mt^f̟@ _,vg~Vؼ9…K`%L_|I ׇ#rX]-~{yC7܋^RX~\" ֹb?Yc d9ryV٤ga ySȳD@v%7(SD-my"f`hASK@HaAEX\ ",eر(nZqEl5R0]"]r`V,N,?J5LX:Ǽ)3LiO2ׁ.T>TK̏4Z_t9j.8aޮp)k,8ﳥւA\^!SMO?F)WlmMa~M6&Zn.^.~գfp.TvL ގS8T84jBG8bqUf%EܻR?'#Ҥ2t>!iwR;ߑ/3|NHKLP2@2TԛJ_VB僒3,K[Es'Ɏ%Dw|O=_Ǒ$hz!uq B KV&q`,M'{S)^zCt-I,8fȄ-ƖB/W9 q姆Uwᄣt5}=tvtoQsr6Nxe$Hj0W7w2۟jZ_Kh״\!f GCۢG.VuZѬU}[Pݾe0"L1 2-W=d b~4-u`_hT#W2b6z`%u"BxyA?֣X%ǔ)EhXN~ȸK+ ~x}l{̄r Ktb#`?GrG^t_!I;zL>aSTmNw^z(_~?+P+Xc WJg̹S8>*#_U _8unOiv%)&hNS hYv _P5(]`g(+^e"Jo #6(6@_J-|/JҩbG/Fd~2ߢDր{kD7kE*k+?n-xzgw-|լkzTְG=MgiUYm[,vD(v1_R.E/s-@A_>: G4Aw LC7@" S C,0sv/[ IG;,N*/ͷ̢)ZEsMi|G.1qxփZ\ A@r*Ow3U`b!{!=:U}vۥ~71txd)i ?wL$}_"s_]ppљ =Кg!X ~*p=,BY a6a .Vry6p &t7h`,հ6w\*u7nJ~Q>C{ϰ3} /:}w>O1N1KO1OUNNOR>nBFsCMWi %ZK◷o_ʼ-ҁX̅=EQ9i8{ tMR }/JH= nr0fmfF-n4͌F3#i$eqܥ.Zcbٳ歹e6*[~f\KLW|Cӌb+s mbv8m}7Zy픵?\EY9 |mr)Ba:aȡ:*傏/o=`7ҖA{iaBջ6Ƕ7 {+ t AQ2-/+reie<47-L'I7|K&vE@b&H]3~z~,߁w=? Ēe,ZƲe,\޿NRAUTEPUAPl5*X5*XcklC F(-gՀ97|L*fPo1Xo7]Fh/ -$-ypS<b"K7qtƘ͈ae314`/2IPFVBYBcی14>> 9Fڌ$b9U`g- 9Qxb2cyw+ҚZ8"'2q#7ΫN} @ MTW)hDQ.U֪:hPi.JeԟJ iz\jK17{Ta"Ա1BWјzd+YjkheAʅ45+!v.NOUt ac+ֶ+Fm3 Yg]z(^4όR)Yg}Paꐆ>e҆Rt% /` M 1`+ 3`KM 5`k͍ Vlwk(6ݠ+ZU `jr,!BߚL7HSSF^ cF,j/) 449cIMִsmOY[2p{9[K/YGg[-e[֭d^罬8uYFQmw?sQ*WQ|nTaR <:NiSTO9:6NiTSJ*ܧ$֩r|J*$yJr*$2wJҖ*^$X$I)`dbUɋ Y5;q(*TpQa; NLErV-*D'BT i!NEW8ȬkE VTR UiY\BǶ$5Xm~῍\9ضsƍjc Me pq45KLPl $&G! d<N|FVɲ&K':ȧ] ^2- K?Uk/X9$'bodsM>k:|;ENQ(h!jft1Xiw/!з`iؽ\HբiPvHQ|8ƃIA q/@舴2R28{wH'Ukr ?F(dSaϣVNVG]asw[X WkZ"e{kdӪi5:6]$sr*\Z*7mxxώgmo\c_ꋋAr!|׼5y5]h'PP[v⬁\]!V`LJMAn^@g$ ˌ wKYAV2ddx4^e8 YAf^VZg~֎gr?3G~sY;j7+Ƚ 3c0sKPȀL~iN lT!=6QӅVrM`4 v/^l9$O06Z06(KԄ*؃DHԆ!{9&i:!Q+`sAՌQSOl:QƖזߏ+KSmJlmm{Z|b+_-/}->kw?Z|ba+[^+?s簤tdv 55kXkgmJBmm{ZΊ 5KǾm'~X$`uPC+W ru**OuMV\X'7QT'R!fd\6. e sH#t>C{53G57Gf&iPH,m,<T[y$|XPe1*#Cd2 U<2TYL*Pe1#CۋPe^L瑡dh;,Cɍw3%p'D3 =cXFӵ;3(ǧ ="=)x`T]e>8P)ߤ5qi}'0/cҶ $YXm#|^F\E[z+At6K$z2tAs\*/DFż~n1:ظkar[YK -\vx]=NcvcݭҖ5j`葀?OZXХA%r(+}&(&7/a(ۜ۝ԏTH0[zG@H6vb]7|f-B6| E*$ψɾ">ƽe/D0}ŋieJQS3{F@(2 #PV SW4K7D; ~iD(Z&=ݡ@\c[cF:)Y?96h4t9Ya`ٳ(ύv%[es}a0)\~1u܎ `52U ztE4:m)Sx8ks|35ğqH Y-YfxS-ѵ,3JՋ0#LkL$cg:Ik?@@;iRnou83[ Eg6WQ6vC7R0;!80ɡdMjO\镉Jp}y5' _+w1! E _O/\\th 1'lX26ڐ})*~m@`MjVOj|Qb~-ݍ5VD>wԒ. P̻+S_!Pe4u7 Jeyru>B䪽$ʻ0?v׵7%{Əq,Cq<N.^ l{N\G؏tk{h+JH+ºH#ov>Z BH< XtH43-l=ȉP,r|nőP+sqH]n0%* $FG9^1>/*ZEO㟌3xOr7*F_#6ޟ34 #Pd 0̠ь[f`^zm&, V"NT ɨigRAS6~_AB ݽ3zxC.Ο;30}Cvf`2..x17({rytv3_j -x0rHc 6Pj?3ڝx^h ȧD:7EYd$Hl-q+6~:"Hk4Jɽnl3P|^v Wڙt uLQQ!-Wz3x޲83>F^gp[O?EO&.yF`=X'N(ߒރQj)H*{{pn2[Con^[3]-z,"ӺV6j\!xm.vIgD-&p `Tc=;eE2S{/ޣ EՕtmqҸ gOEz1öiIeciP3gkqe0Op'$ ߃~> r]p[Z\`nxͮa*5pԸz`K8\Qd\R.@CIz!PPz /z2Cu5L;wY2A F(cĻ^b]s 5oV|M(/V Ҡ>YHOթŶ1Jd`$oZӿc? 8訤ɢ*pzY=oļ΂R#ڢ|=x`j?|fags>ZcR|o_]cZI_uoxuKd3kOtmfhl,-M|#V=<^eA +Bq;؇ە$A0HG/)I&; Э0p]\): 5ݑ+ivQ)|v^o2Y,Be!ڸ)BQx6iMWq9 auKh[{lN9\ P@\@tuI$"r?B_ڝ:cSGm8;bF&stԳV[=?Oڟ$O\Jڛ5.lG[/Ѻt ٻ3Q6=bNMpgMwmnA7bno -\fOW eߺyl+{";2e`9,‹Җ}1Wmtk׍9&8׮L sٽhðEwT[n  `t6qØSnMώi1z:;noh<iֆyGsf1xWM̟ WFO"HZkъ3j|sȪȰ-h͖qrrgWx; ཱྀd7kdRS) 7R)(Sb  BՅja[h~*,7Ral,& 4Agn\QVjpՙrbl^;n`_v & 뽁'WhFNK2myyWD|\׫VS.ŷ(ikfTM tz>ga顄Y.P߃u/;:"HE[%p B,Nvev2wTҘbx(B24>4ώ Τv;0CqKpYյ3SZ⺜]]o)XP`%s7j6I~f=Z%8>fW/[ۇ,wC߄|\o$A|Lq1[.rqY@όRq+q\y}aZC.r80=]tUO.( LfNVs6u8XW/:g@@q4 eJ~Ԩze-v%K)?ԛń6N^JS׽4= x_  ˒tQ69mѬH:Lgtξ6qX6 dic`pFNҽ_!u?׫Jykhi#u7qt֯t&C+NL a3X2Kѷ SQ-QūL";ɫX%.j ZHNk5P6n+Q]۪\7GWaf!'*c/ݏ;rӉKp-.<]e1l=݂&3Q0C -cķ<|l}ecozx̂{FS\x!΀6FZ跫22n|r =8…%H'**X2ς}yZe—.\] 70lJpF[ lq5Q2`z9vs'0MrM~R8fiA'=s')<.enD>|l[~3ʩ)C@sH8_fG)TB yۥyvIr[?H0:4(ܢ/!Ղ VC'u'2!k'lRYEa^<θ)n3*a)Mi hgQ,);BJoDd3A8{2U [dkU{W*̰thZQVZSA ).Xh_=)!o#t)3ǘabpx/rj}?r^o W2x3) ,;(_l2X04*D`̣[r 'Y療\N%[:b霱$ pXw1u9,7qͫYa"+ u&C7@)1ޔoWvXޘvڞaז<.!Z2x\z,`aIq-BcQsتwKۀlx-(:XZ+>&Ϙ^`U*q?f sL/O-1XL֨ rn4f7Lpvw0ԋ^R"_nQmq˘!8CG#^#QQIfQksPE@Q s~pgqmw$TFup/}@<9O*{ 2þwJ}/!㉃p=DgoH|-@OhOg}A'rMɒ33+hKR sX HN L]x],_Q[!$IE[Ec]gHoQw0d0BCoC=9ШqZT17aE^4bF%yƥueIjA'Bwhi^[ G`(A/;?lyS:(ZZ OXxŬdLc$_X̷zbAxJ)bID&53xʱk7 S8PEg]eAL,<9%,$0Dn7H\',$w)~V#5Ȣ|KW N g \,ܕS;xNN')~xh_ttbug-RSxWO884\9a49#!]HY)%目F1kwLhs ;_]CMzّDuۨ5::!Ţ F*]7av/!dP Yc=}kR'qʍ+#;.hI7ܿuڮ;ǵ՘e ,R :XaunZ 5X)&*HGͩgExF_gјKK fG1$V vD p"cASfY~qwIf"n뜨 = U2eIvzF)V62z1nzZoKw&xzƥ=6)C#˽蜔=8Ĺ {""Hj4 ؆`x ~r%xg (丏עq׫m<µ/ɞc@Ƽ9&4|""Tb>KaDjE5LpUC"$ ؏g31t̍#P?!G&83dA酱f+i o0LF :|(h ,6qXr1aPWkPu?s$9Z才m"EIo}{;Lf4"Dxtk8.Gv*mW"~DĺmU~ D֞U7mڃ$& Og xvXL扒`%C<3ĽKc/lC 8(ISv7 O@ ,QP t_hIڍ^16KIZMsC.N,˝m噺qCe#7|ua";DRԮIhE)95WFhC^0:_/jV:mSoW.HiIANOrJ$SEn?wͲ<}J ~ꭐŢ2K٘1[h6~LMhAz9J ?Oxd$ޑTT/hx!C%.;k,aaz3yvI/X%37o`:'~Q1^i#۔zue*;v-}(\BV.wo6@mZS nmlǹ'6v g6x 1OOdktVfHSϸ6o0172pDzFQg8cOX4q6p _VtRċ.x^oU, }ʁGPQkώ;w\4;zChbHRc#5h?` _c;d:fCp|W4l Pz*LsUl毦񩍧YYzbI] ~N-){*q6iMv$ 8DnO?l6_l3ـǑOE=9G|~n&  Ɛ-7W$ j G1n$ AVt?[Y-p4*zSfz}\?H.nʶ)Y#DTKధ+tD,sY>wsa ٤IOu5r,m}[\|LrTcHs&)cuȚhCx!xPzY`+{ޝ,gA-30-㪟n+3]51A %]d*գBzQk!gd s_RpmiwC*4pw9,H`RCqyԢvN&3_ZtD9%Wӣ@r9~B!$8g?3 u;D~g3&3)[baZhDnJ0YrɂL;Xc!մdtz%ܾ8?ėhsxc}ۼd]3uo~f/Pyee:Bտ,s&R =r"# |P jxϖ#P~K :Paؓw);5 _`ItjztRF㲓cIc#]gi$Յ9==^!ڝ]a6G}+<͟P'hbqKi9㱄3Gƍm"c0zjz(Kh"g^Wxl"x؛)Ӿ+:e0YJ'M)b)M;Ũ2H4-0Q=~N_$L$1LeIfSmM-)E kp{yӳO,{GvkDЎr4i#sBMܡr|k8Sl ]>Òn8Βv}.3, 0Y6P ^Sՠ׻t1 3>fΌRrLM@-N`KTF_׊I6Ct 4(XRE)Ջd[֝BTlTTaO 5tVMytllmoU3I%DEp|,E)GU{ꅞ6g-VgySH]XTZVxe(a?Ȓ͎ ٘-^3.[ftZ|HVk}g;[Q["^liVv>7ەub$*cj3D?ƳgǾTa֚ž }'roG}`WR$#8s5L$[gs B@noz !hm$Q;~i1FQqSV*L7_ns?g}8JR#CڪO1bo h1~]!Ҥt[5!3Ӌ"di!5[+IvK~!nsv+Kh>^! q=ޞŗX!z+ݭҐ F,c0Wx1.Y)U8/ ̠w4辪 -ֻlh-wd 7P6W3CljdFbqe9=gرp d7Q :Z,3p]d 5DKҵeTYk[horx@[`9gz;uq:.nQWys6́bDAN1 ixJL7s!svP|Q+*]7a PzїZ0o!7Nϳ.&»e!\0v2[]:@vans`mR4 +!J6\R&#zKDqEu9;C hE=F/ $SΒҽ!RYP^kGXd0L@M̺zPX\l6/sOx%[`R#v ݜ${a9jѦnpjUoU^tκOm'2HmgNj㓘ûzMD֙H x}?{5ʵxW`75G,pA_kO;C~i;3jeԕHq+wrƲqQqX`#1-׵= x~ p"G{P;?!H\cFml (Bc _?F?#QYd$OIfUV^|e3L=o( Bgڊ}>WFMދG-6}6Td;IՎeQzq])Xų]\Ӥmu o>cߖK[eǕxzh07y fx16-m>;Xv;R9*)+2=ąYv!mSY9!쒧$-xB|`S9/8/C# , Ht4Jyw Lƺko,l9\J)%MRZ`إ*dZZ' C22pu>$RL7ۛA ;Mb{q̭OiZiCn: 5ncx" 2lyKgG0C 51&nfp ΓRӌ8 -{9 ϚuE=i|׫ )%߮WO1/a/P9u_To?ML-ު~8܉!RuТr\G|>1P*#LJɮ 5Q]S-\˛:.OqcҾbI7l[9FtY ³mN#, lSTXxwZ!n=u#Agj/^bPGն!L+hQ}itZA,Z6%K٫cr@NNMݸw`0{/^l7ApNhmyN(>鈸Y:fw[{@߼5vJ\'}k[HU0&{ ' RFe@ҥ]$6SP5-"?fM,v</f/^x[Rh[9K4mƬV-JK5>oi2(Iőpi\4fwbO,L~um\cM~_iMKouqs0g070&!<,8@暁3@'G&msM\EKܘ F[hGV O^RZdI. jL$$gl _~,-6{܏MxW1.UL 8F zsR{TԈeKB A9PS(^r-^_P+ԯK7DeYK5`9_ռ"I?zZ33R2y۠D o& 2(eo߾\c{nhjk" RȻwf.%vE ʆdFN`aƹlXOFl)I\`v}kz7&=FG?mv6}Dj`[+&H-oZe%tM"Mo]1cRz:g9t䁇0_f}0q;.3RcdJ#2P~Dbe3'yTd5"Gd< 1d ^}11R46G\{L0Ļ;$2w=ߏl; g:%goHCKloFqɀ۝=ewvf0h\o3|D="C-Mcdd3~ҟš߀#sX[:S0&AdA7PMBw䂂b0MuL7t ( =/3jMi_I kwZ#Ǫi0tht  3Ѡۼ͡ l2a(3s2e[EIX|-;r`f51t~Cz`b!SCbt \fKC{/54\/ۺUIBqHĥjQ@Ye]Iux`\X.#V!"Ūh4d!2Q-zY@1)$ I.KRէޭWb$ A2 ]=AxL\K~d9|kQu-~-3kt?S z844cArnH!Ő89q0N6bB -94\*^u e݀7&Ac"8a5DxhH^st<1pdm/ >>T0Px$qۋg/AulF 12#WheiY&8E[pIp^Ӻi3i&b=R4=&q`0OVk3tld{ί&CĄ/ !g"]0ezBCO.aZ ,~WƋH0EC D^Z/cgd3IԘk, Lw& |PtE5 ch -SMk"6sHW?)ۊpѿb˞Cy~b}+4V/̱%]gI&+4])]\r3,oK#Ool1" B6sy&8ΗiM. m'ˤTD&5Flp@x5C7}!l QlX’xսE-K\$VfCa;Jjl1rbF$ACd{nnxϭԄ\/^wdXrj<6.=)QcDABxzPhή]-8I@|/’LT+ڇ'xԽlKC4x5c3/w)4[{2|ig;Um,f~Dg-T?n-:3lLKW.ԀȰ$hv$ϴQY5$i[ד0Ӻk ZKD4KՄqi2h?!E?uq^~Zޔ/Ե;2-l& ӂIݙ;nÇVCS![5ed˴ zּȞi+At3D*[ou=%i}G]=2-$+L: \ȴ@L++ C%3zf ')X@L߄3|- 4%S=zg 'IDdMLaР `I2g%LѼw Os"v|oHH6uXu;n'Fd/.MwX黆IiB8t6>U >޷˯/ip5,ȰA8,z:'˾deڅH6n%ċw^஝GwlқisVfZOf@%A()z3 WX哖@<5dH竍Z*3AR'>W\Fie1Oi~=?Xz̞n]AEv C(qqwJvehlCG{mksg7ܧ'2gw5٫rX[RUjUO.glڮNiX[ u`pp ܫlwKbyՂXvvJ; %V:(WD*f9,/>kKrmRKXjwg=)Wvvwv`xSX v2]8`]pp'%\V*;a@cPqN L X!t↱^|WqLr9S5d̍eV3{8ٕ~P()f0tjYdll4OKec&}t.2PbR()22QI$tL|.Ðs ;JbV8 C5U{Xʛݓz)lfo]+O!)sʏSKƞx3[zX+K,:x3=:ulYءЌ= ,dX0k:5|?@h6 ҁBM1@ӴSLt\g5"ꔉHN-Q;)2s-4  TD ܞQ遦A?F8q dH5O҃lx.h}6Oh'ޞ0$ݓ({O"=1$=O"<>eI'z6D|O>$Or$-qpw|pP+Uv1jt[>!w94u_Mיѝf&- [i8^ 'Ms7\Ǔ8\)f9̌UlsEj_^(3W8ho=8cMO5 Ãg睖>=NRq)cFS޳YSO痬4hG@34bhp:xr5Z۵?:KP7ݩ ;6,h/.RZm"=GK`15Xvt#CT@9B0!SR[JXeԊkZ~VX(~=t>iķBv !t:>y??t^.mƟ*mvQ-E '9GȍD7ki_ix EF#1lɍR3Ha's!tDDUGYh_>|Ijj=kc)ϗϗY3ۃoK|.˺uܾ|G< yp:/ŦѶ/#P%'=ɬOL=`?J?D{Q!=ԡVx=s-e02/W 0*C\h9[[VkN:^/l26˿D)ܱj]$:{ֶVoj)U7(r Q0H~("&bxlSJ >x4&*OT-kqt8tRj!=-?D-+ڌ@@(y=#8y&&gm\Ԩ5˷tTFOnK%|UF¼[ .& q"|]:~pH;e VI3&5DJo9kO]}^{*v۷`3,KHZZ>#x>YZ=/HfvW*0 L9W < d? K݂L|0ؐ0sW^RBlL1cF75 cLgBW߰aߨM &OCwp块[[[,ZdY?pĸ\uu4+?T↱hR`D.UB_Ogg~`у%4ě&%DAJnYdYV5l[˳1eӱA$/a @?[7(+Rh87BXciHpGw;`á1nka8v<!Hr_ A17|zm z|]+ox@8Yϑ.K 7{sGp:c8$.D5gITiau۪Cs:P24QNة~):+Xz>1<$S`% i]O dg#p`M)bIF*O5>(o k˵% ϘTܸvXwWkeiqDzC)ާA-aŻhOA%8n\e]֧ $404",̣mqc{Q+#~煮lzйBOVAӜvw{׳ZvL[(oLvr6IbR `v`v0x;#0 ZITދgOk'+:X`E(#,DtඳЬ!<ҁBrnHJb3f_! >A3@)Fhϴ -q++/N񆑨;xUeTEգ?<㥰uŊm&514Xr5ݥl/Kd;ύ Ll}S4R}4՛ϿˁϿ#o0Sy-aGf`&Qxg[ce8, J޴1V "E_bg-x |Md#k\ 203 DH)1O£UE_tBS1_ v "8FfWQ~.}FEIۼo[sUSnAdQ3v]96`%N2!6y C58A00X6R-% :r R+Gk Gg~ϣ*GFZ. 0|]\sF.!/>/⻎(a[;)rtRv(^K:d:hĉ<5Y?? 1ep#MךSQtQnCqY)l=կ懎'u5RvpU2 0L@O//=;Lve 'hCQ ?R^M$t\>g82R҆Npp/~3fAn"$0K{4*st=tORhx=מu4W1e|G٥r8{L2ԷoIh?18O?2^cK࢏y^4s- ˁ7qKȩgk3,޸6=q .p OI1HR_9~Oa$;Y'zF"^?_˱=gQM˯u~ }!^ԋt'*\6]؎ 9Q3JQ4  m`M<#zGp#= eAM@W (yHw lGz`iB*wSjVTE}''}ZD-S:=ЍWxO2z(mv@d@ nlյ9(.8NC/ӥc&Ԩ9{׾xE\D߬* qԨYi5 :Tڣ0{Ca#ol](݋`x't)A3 X;xFNPt0As``׎f aXfԣz#k m3*j4sPxɷ "TҹW0cƣw @q,YK]a>sсf%tYz8 ݾӛ۱K` Fs_>X/uFeӲ ]7; F #``A"t7N*0ǂ6mL>;`†>Q E6ʡ6:yc6gǝV݀3Px^֡__Z;dzzmTGi5_tz 5EŨtުY2ܜ44Ъ6;z{h4k'G `ͳA@fV#o4:_Ilibg-jW[F2/+;jk'ih Fzc?mu6V'ujACz]Հ`Ɇ>S:Pm}2 B8V?@ %V/޷;En|8;;Bz kMDh7N@kl~h7Vfj]cWu\HU(f \$}[HG*hT:rIh#uh?4>ԛ:=C@zhcksDbԇcUh7Fب}j <0rB}0 kߘ}tm\ r&CNJF̄{sƒdKe[k˿fGhh_f/^lfU)V'˵q󐁗Vbl 7,C=ޒ*RJZe){,|{_QepxYWTebi6)y޻Eh!] e a ݲ d8t˂ԴHr˹+Y!9ZA/5[liNyhJ[C|GsAp`&zk˴%[h<c0E'.&S8& 4zex3#Bc8g3s(}[-l2/u LT>$ GK0̭ 4 ys@lq1f77rJKA{ҚZ0yFUT c\ :c\LC3Tݢ:pLQ1Uu9+#?uvMR(,-,iǛŮ}-[pH"6]>~[X =T %PԦ=߷;`|@GuQM6J:3L!k~.FCN&VX|:hW}ݾhf% u84>BUmAn]o= {m6qزڿB:0 7LgZ(ԗQLmɪ f4a lA=NIb[%Ga-8k0>iY 8`[gQK[2zy (lP޷u60ɍ #Ve÷|&,f$Y1PoIpמ1u?;u[0mQPM3hg O8ιhu2*[R(:i Q2u@IJEH S!ן9iaVlUЮwfb& 5, Yt5jש - XdDRekl24:юQf]$nv>2Iݳ`fa&8U0 8S  2S#ن蚊H4GA;gC0!ҌӤƿAp4V;-nԺ羛pŦW7(xv$_ /ajds|Q tAO :5 wuzxZPo}1r"J7OqbO3]qЯ|c螂eҮW44 V+Ǩ?> ,yyOꊳܡ Q_&XgNhp2z E}6h=N]8Ycע5Q$Mh%b+r@%?u ~i:r^ow?5>v\S} %2X 뒐L&h㹈A㦃iͿA'Ʈ~rИfЪG;Ď:-/-(hñ@02t m쀯YwgLjaqZ47K\" u #TQ.2 "n2E<, DcADV'7Vi(o~@ gGc2nAWwc\Kr6r7}ǞXõ~cݝJt@>6qOA!BZ'_֖![' k)zRP{{隅d<kKa')O`]E%nߜ:c כnZ77Wuynl6Sq|9j>bf^$7lg{ @Ǽ6r]>[ߛa֚)dñy5 .el;|k?\v- c[Bv&O!8ۯO h_)$ ֊\`DEj%# uMF՗8G4=-יK! wnK`rnfd~'6ooْx-p0Qra'`ٟPVܯQ3 _8ِ6?]:eo~^J.a2(:(<+$CͰsAԘ  \-}er^EQzD#}? o,9.SiPb6$`Ǎ38(!_*fpLz `&_XFʆqm_]ViP2L<.Lf=8'euDž306 dOV1a) i5igm2dMj$`眘QxXj 1U⚙T jIoDtf$`*yxW8H[M\q`Z#,-MɄ)+D嚋JL\ŒVAiB%$Qn_/A\~,ͪeL(!'h+$BQ,N9O- fDк$"(i& ;JT8S3?a 矀x Ӡw-_[w90OKw%3l)m+$`*Ÿ 9 2)8Rp$J#_yV–vk£IXբcgbx23x‘L,g]$;j)QPVq(C(%; Rr2_k#ĦV\Dt'c @56Mr(Te-aBfQ4Ӛ~ûwK3R|$oewC@wkDKd뢩<|1dz8#an ȚXϳ&BܻodT mEyYxX Ons;ſ?3emܦڿ8K r7g,·_[ t.؜O-(q9g"._L.mrb]L,߭SE!ݹ0h!?͚i0ҲA;~KtۗT.I߀`vvgqwi;p.mޣ:sn{jAߠcJ|ƿD<Ә$~yxo/- s5BfYS"QEA߀* 9 B|)xjEOLny"%F|O N -H+Y8O`/#{r~h8՟ӭih)_U'^޷/!bq[,9~BB%|ÿDć[L?cX~b9Gq)Gcm?he8b^ch=/Mz-&BƉzsWb >rHj$?P򛵀R=0MVEi)pqW^p"oI#˼\3?,0D'OMNSgjqd^,\F< m0_^^~ms jG7\="qxl:#s8 91{9&f-;[\~!q.#!<'W_HIm/R8:?aqw,f:ѿCWa"K+_Ѹ81 ߚF@K$kM *e P&.WT7u_I;!昘Q"SsĜ-k>L+q]ɕ *@@=k>Fm^ycxVwBGvG%p{I=Nv1}C? D["JJXdnr4>7ѾҒB1*s[˟p뇸DW& _J ]w+*Kg~,:xS2J+lQ7oI䲣|?݌ՔLay$bbxwx&ooX:tnn/zuRPM=댘.:!ykksZH&"`Sx#Ȓ߃aM*ZA5҇u ]Ƥ(J/n2: 1ՒnO@7 ܒ0*=WEO+xq>WDcsa"YѸŽ> JCucɕA6ݝ `iɶ t$YKB8~߀M4|42'jgV}֔b)VWPáR[]QK=;c(d VnсV87h~)>q<[WdYoK|s z:56`Z|>+@YneDLf6dcׇLA$IAԒr^+ R:Z[^#H^@`W],bbsKC"xBr"/>N02EZſ\Y-Md5 c}A0;Z LJ4Lubh YMd>jl gONamy|iM_Fv8V?1c!gsm"s\r1\ "ȵ:-eE^YYjn.[Md 8>_&3mA1#FdN%_]]k\@Cn<"[fzccb+[3r9i67$wadcnV߯M̧Pѣcg+i*.ba0B6O5 ^#ku5=^@q.ߦEEQ}D:u.ruY1 3\Ir+(M#ٸ.ky!m$KleePJ}+%,|#WҪI?` =$k?\x fU/iwoR2nMwҶgς@!芗k?7AilWCs] QUU;n0ozExf^AEk A?4/jU@g?x@\-47J˻V'᳏N^b$9/cDKYn9!e4 04iC 4nxG*2lPSer/6(;iiH3* W0i/ /e $ԧe'ǪR Mtk0ղ!$Ȼh c*kA6@J04q15:޺&xtPUԃ ދNV %P&=}sy1+o@W. ݽ]AЉ`hMQ׹M۸!l JيpZ"(XaR58ѹ- Nī<K^1(ŵ=<ƘdkL{RwY/M%qiŗZyd KP(f^2}mSZb52ɈSazWGXݡMF;*Y`:MІd(F`aeJPD8ӰGX1>#';)(b cSJ, џ5Mzvyzqxxx cWLVӠhMc: ~~~sqJ瘝3iHhԿNִ gؿ'? Q)@_A;/>qc)B&Ù+9OTf13Υ9ye=tk2q:F{o i].>fL|>]|(&gO}T`#GÏħ2K1=G*ܔ ,j;zxޛ^,nnzF; fzźHVcz8BoW[K QWۥؖ>9[~|L`e[M# brh])r_*bVd{wx-J aѾ00L+.f;n ,Iɳ$jE,Y=X~X;QW@j2P.c%Ju"I"6"/>%ժ o[.ͨLժS)L[2 .*B*SCU4fT0ٖ16™ǼLժl}nK9Xzd3߂O)1?%߮2Sj 7?tE}0tRm{OV: lvt%b^ Hj JJXzkkz/$fmW3<ƒ!CrJHHЂM`.qIAҁi3qB%v} O>>molFouiӨeRx]i56`[ƴGNtWG q{n.ؔ<0a|"SvVQE˕(t%vYYȜ:SSr߾"|V5gT.4K+agʒS$NU3)+C y9TʤE7uC7'Rq#k00QIߣ4HE*$3芄6z3l~gUݒ *,%]dQyib0yט1x7-1p#kK4cjP'J"":#k,AV}@o%=اtW$Q|WGzMy vdRH$:(֏W<(k6YLP/VG 9 ^{ΒN3wzB*DeܳRݱlc1ʅ{/&;+)O=|p6Vi Ffzd?Cfc3ꍨ\#M%9MkVv}CLղbӺxEȄ24r[L#˴R^lZ,4~WIh +c$dPY>:>geyHΪ{dkx\{%O +dfZ*϶gN-*Պ IJ(UMr$w%ģJiz bq#C#AK\YTWI5FJ3}>rHF޹ie 4/;;ݜ[ז#kf=dojoWL˖i1ˬhy &IVHm:eZ90{l]]ϙJV˥ -sL9=w+eP,t'㦹9cb"YrEC8k4(?$ԊbcInn o zq}f&< np\tXƓ/$A;`tmGY A2W=+=sam/>n}4׬Ykv̛0:k/>nC OA*G3%\sOu/1V1<Љi=Fx&_mYk([zg(bch/ {QF޾q=@Zq=@vqP :VPŅ72t߾í4 K_mռnUo3 *iz޷G-玽LJJ 36oxه.|c x6WjwVED>eI:>wnE 1G>AoDBb"2|$oDPr$߅Թ}oDF⺵1\g.]SDǾ)IJ # JGo2Џ,){6$y! VGbrzVYhҼRt*MOb3||yji'SZ{z&'pVYrU;';OLxUtH|,h~d-…2_ LjJM|MvY T7hʘ!UYN \[ UW[5JOC}d{kJyx) "X12K8uoi &uzx 4az1ޱW1 xM10,D%%,P;ci[}>ݿe_DP0 r]YWAݨ.GW/Wq|._O)_x) iDLMh\3[hnҲo 5+ Kzo,w+g%rg,+2d0"gMuQ1R2DY]#b<! :fL7P+WRvF_H%2_,q iljL]5NoyiJ=^?5J9#N":iYiWؠ TY//Bw`zS 8;9lD:H pEӞv i-֟lݲU@h $a>4^ogpd0t]6]f8k@o3-\ǙJϟJX{I(|e 5չ oZP L\,\{1pS|LGc>'j+Žx7&kh +l( qrɣR*{ ^cӽ_G#𞄡:,Vbhhc4 IXEcxZ.=&P`6/Y8gyy5Jp|Xt~'}v'"r~ht~'~'cr0s<ܫ̡<J_Sj98忎+%+Q#v)K$,:uŔў]WѡC9{2OD>Xජ)ٙ| >r=&O hJ]L`d){n;j[gSЌļH㽭;е}PEQ;-:G)GǗ%N~ΰϫHf'k W3ouRF,+TbOA7d gs Y;oރ dS;Âɏ.Xt 01BѴk4-lO`,ۑ5o`\-oX7?0&s-CxY&.555k\lx^0nua[P<м:,B-(nHP/ E04筳Vީ6jgQiTO$DqCyf76ra œJ 9k@+f rP3R䐡iW`kRb$' ĥ5Snw lTEE0;HHJ&\O}M<(MMvTs:kt(b@#oQ3@`^ox3;l׶7@;< 2&- N5SjӄX' AU['B/Zg:1΁pBP~چ'ۨ SW' (jU5Fu7ѮTɉ(܀$tCui!! eT7: FOjAuwl4[PSb7:M8@\T[>!xW?G{8vTx^"ZGVFk)â] 0H)b|XϠ}qN6]߀*VHЙ"^򬷈R UϨt zvrĪ[6"$@iL#`B8[@*(bF1: _LTͨ 1{:́#a8h}5 ScmoVT6 goȌ ۛ~E!f+uүRBTGy3p.tp4N# reRv03?p=xl&T`,20v_4x0$q&f67MED@ 6i0!lfS`Y3N09Z@:*,9E6Ĝ q"A;g.Ni RM ufDa[kqٓ$]3"REua]?r(Z;\17tO m07BY&彭unц;m׺0Ƴgdᢱ])˥퓵 |TIԫN\&!'''XKN\FN۟jݓ*9`E f}f7z5nmks (*Sƥ= 14 r3QAT!0!~ ofSII#&FT>O,c2Q_ˆ $L9m_!6.\?ވ&:Me`kKCtRDnϛ4G. M6F}=,O#"g܃7,@=[蜪i9Ha}"D:: 8Ŕh*>4/t$K9_  Xd炥a8?4<Ҧ9l!(UlvRDB'{Ī̞&GlBczLF zuMo2ߘhqӅ_d+||+`@\ ZWq™[IU*ha"$K'&Dp-1HG/ATiI\lWIQuŃyási<㋁,H3%F$Zg.u(t{.ܘ./st{7}3 kx`$QbQ3^tyZZah)8(oja,Tu q7vyNYal`T"w(m5^AALoT0XWvd}kP3Ygy㟕]gjz!ah2֕3X܈>pXZ`;p{ P*&u\ݾ$u= \}rA]>z19aioqr<,Iq=N0؁kDk05=u`ގ0?/gp X ,v.}[ D23xN?qFQ70b!!ND}|3,cyN( 4%F1x,c{6X18M!O6)!-Gk ׏=+EМt뚷R<W8x\uNe"%"x^JTAW'HF|DC%4 ˉ +=mx\)mOu<oƑ ~b} O(ANMpbKRR)Tٵpn1τ켍 b{u܌_ XZâ .k1HP X-i3qIKnU$| 3Ù)R%cTK*TfP"\SEC+سt8ޒ(X'{:8A0+`]Gu sh-Dணѥ}5s0bs &UNTd`43<o*B80Y]nRԍJ9:#2{BB}uJw[lLtXI"v B#ÌM2$KfiDeI;eÃeH6%2}(x`£eુ<[  p,~0# #ϑzL7 (׻#hy%yM8-G3 |#!U~%Z5*-'s}Q[GHl̡&ѱF>7һ2[/*8=TFm}c ZJ,&ĕ,:Ң>3JwEo8'OY8AoXc,6ozgIo4d)bSl^h>w渽k:->%e[Y| \Q GnB? pK Y+/<^φס-:.(ٛݔ7繛͆52wS}Fn*C[ZyԊ&:[6jgoOaؼޞ5=`ŀL&[-F [~t]+. 6 #+U:.y t=SWY4ywȖ3^?ሽ6o+9_s5kz+Vqj˗~:X)&c{bl'6Od2ۢvق[|G+^^DF^KYv,L?z賎~I\f,%q_Wvfdy8 fD4 |R _-F#Aךܓ[Yi[yZzgnj:OCo74wiweգ ٲNvLR-Ӥs5| ֱ++=vqҾ9lQ%&_pA&AϞynN]X{x V~Wo:gY ,Ƴ.q`y_̲aV24dZAs4$ѯW- D+;(1669lE>[.iw7xL֧Ury I 1UHOAW1+ѹ Tr6*1d=l8os/h;zSyfD7ImIʼ"^{g.Ts'/Bl|^n?=X+ s$8CSQ |=z,j!k<XTzvc[Ok)h2I,y pQ>ZJl_u(A(,0zQzY#iQ#kf_N=\+R4k{0%~[Ʀ__"\|dH$ǂEY!j@(]AbJ=V:Z6 )NRДm`Uc+0E4DEE=VIN ^ueG--/9)OTL1FyT_=^crxT1 c竷PG,e+K7Qx'ӑ# Jȅ@8'B' ʎT qAx!ީeNGȎܓ TV\N&HZ0Asܵ ؆mh9K2"pU9}s2<˴Gy3'i"ؠ@XrL{&]`7)#{ >h*a6(IFwz#2ۃrdE -G#.`aS „;0ʄRL~$ UD +_oK\tLR6;]s* S*GJ=@wKL ҠYC8V}~8:,ZAs=+-s󐄁?#IdsM6'dikHJG>Cr&u@4X,:#w:tk+˧IBmNYVfQt-brX%ܼTy]V*/Է}']bVъLIS)_A!N &”܌.2QXhkDZ  "; ƿl#ʭ,jgLQp@QrX *LS̳ca<YmN֔XO,u`^cfYASZAmeu7 S&>?)5N7ӳLY4t^e;MP=.y'/38Pq~v0e\IPVl(d#a0}e{Hsg 9Na'au5DZ{풭%<08$y&﫷f8v8 x|6&;d4atNbBڣHhxm9 {mQ7ɵv5Zِv֠Apk ewjWv ɇ4f)KS3@=@Ӡ8|CLWo5$-eICgSԏ9f,CH*"C(4GS w@KY)q(5rF6Bq)uBA&M&(.,~0rNI{;4|Ѥb)MNʋbޤX8 ~CQ'ct<*M;2gIC3jh /ftAo&2};:tcW[c^ɌwhqSS:/[H6Y Y94{s-.>"GE23<16}-$qO3f 3BY H`b{? FǠ>s F_h4Ϟ)ED:'܂x {@"Z`-.ӿVi)E`x"k"D7bW# " j"_54ll6|EI̒Ah:y'Ix5zRu{;z?^&_g \x*F&:}@sAuFknyQT{ m~Fu#sE*ENf·kdȉq9q,Watl,qB\)_Sm?¹0χ0͇d)&x=ug^gmh$3qLes8yla9nN$G RdŸDF΅?>L:SdLR9r'Iw"T7>LIFjN jF#sog&%@{y7lbGL%~LxPZKs\kj2y5vs<$F4f/ K2c9sdWVi.ŐI/P!ywycM(yeq? jS ͩ/;,%k;E.eVW:  B) :QmG#s:eu@`1E{xn<䐗no,\JRgYgqf2uI642񯮗{U^WsUL<2CQTx?H^И8=)L$6w; 6?~L[RCA vę ښK=7>bzdaޤ@[e,422(b͕ɷ-饻f{vXsZs1>n*gypK^z@s"5jJ*+\y ?.J~T1|3 yp= '=~T㧣w\^=<"t|F*܉U[ww!~8{ }^'U W*OXLΤ_29gZ~l#S߱m5 i`h=Ph8>>+96GVc{IJ}mo`q TkwZlnt0(\<"~[,jľ5{$W/Xh_G?w~Jq7~  a,?S0]̗hnIyܵ+Dܣx{W`=tQ]s!<&ݨo;ti &R^[*f;o^'hH촻F`x/(&و^7{S.n[y.DWb'T $ͫN:4} ͭr TUղȳїaK6ju6m>V\ZIYxAD^c !TĆh8ҮaM#j9ܗ[D:%W˄u:l>,:􁬷|SdX=RO.*9̦UKR&gqr:(wC/L }psL_o2y?;+"ٯvڮu?[)s">9=ﴀ"u@}0XQk>g'S7Hgևsin,z=fڦ š1ߓ'c'o{ˠs[Ј\&0& B{MhoaB{Ll !4Y#ǽ_٢4Gs9Y</7K~e!Jht8DWT~{I_bUC"5}FlcMȜf̾ e1( yz S{Dz R{Ni>.+֢?ǖfgg'O=3(HL u<7vT ~;8BR6R3 e@|_ C@|`&cgA|s`&c'B|`&c f,^.Q\Z-)SIfh(I%]v$Ki){#<͡#{IA(W@ `)&.wMxK 3`0> SaXÉ)m _7C"xz/2o 2ieS?o$uV.yj z6q^-eWspͤϹWh&})qbڛe4m> s4$=.o 4 o zf8\8٨PKiekOGTwKhI=Cfio02CA/hSo$@M*}&䆲*7K<%D6k7|s7 M^8 /b W -wܰߓ1l|hhM\,HbMz\<RG-'e8o,,'Fj*h`AE0 .TiO+)~O''4p1L4Ve2/=wҖIx3KwVXV?7$-0P2*uE.{S-(ݢrh %&)2&9黂&Mh<#J=Їh Oh~pPy!\rnrSLjs747J! ĒRx2)o,{jƽ  AJu^ukvR7lޤă peَixaL0^Yu\@u]-WPj)e!; ?2Xݸ.֜l$2(s,%ҒIK5/-)?7Oy1Sa)`~W 7Y7|vVç_cwb kt=[LA6D+q5EX!{>}q &f)7_uRRw*jmQI^&\lN Y  P/"%Xm^,S,a heh/?00H/X>m[7v"y=aof2q٣ 8|x {|@z'ޯHoaV7 L1ϐ}FJR=UnW>NSP!`gW1l1uq M7Xךr V(5;Z@1+/ԉewkKTiJ7W<-p\HXPD^"u{VRo KZeQ #+u3սW"KdA@xYT$g6,I,\*wt("uhWV[/]R9nu2 vs/vEExnˡ]%9zͦ_NUH aWfa(l+^TfTf=PfL ,Ui ZeAÌdawW](HZbIgj*~wTī6P+W7rerXl' q«_CyXK x=f% JalvK{rppl~"spS=+X<),"0p\xsM- %.= d(_;ʯ*2m (_Ş %?ǨllowAܣ){vlೳomVݭXe-.4U%dG܁%*nyr{hmq7(5C]D}owg/^ {'?c`:"S};,b˱E+`\yz@_=.ǍE(m(.tWƽZ-iMblI)*Mh؆Q05a 7dikh.Vש%k8o.Ls<^-WpqpQc1بmQư*8 vUkn7e+ek5R*qf 52"Q  eiؐ `1qIGM<9uOJѨsbh GⳀځƝSq}=C0;ŽEm(#^%T,P($^Th GݹyT M+sϵ'D+~-x- "y.A?IEldl=Wu6^[ Dna症 'G$C iPf ͪ磫rih||2Aj-au`5|`7M&-/wf_etڲ]_W[ZqJee>@BClw&y15E( '^ThxRQԏTB=} ^й Rxc\3;euTLJq Ξ.ȷWDhqq_vS+h,^js ]yEe2bFcjyHs4ũăSlF86vyRFs,R~6 ~P_hetDHeZVzEٽnY_| }S-W51- M"KYZSUfJxt2'Q0(JڼJp* E둊HeP*FQJl*EĨ4BGQ-sFrF~XkB˘Rs 鶷 w1vZ_Qj(_ϩO7CSW QHHjEd JQJ#E'Sg %ROb&< ,V*(͍ a_*8: eGO-?d,9F7e 7"˧2>Ka5}qH=9w^x=4$AO1)i9mfpTc}_GPAUqd!B(.WZƗ/ /n,׳LC =o ~SKT)` o=*ύ%/B~0񖽄B9+9V#VYk) h[xj1s3I[wQP{tE(/G"E*RC2*GcOAK$wOv"qŔTq]7:gm5fz^:{q0Ak^V8\L@Jse@ Z@ lKM-+=QsH9ﴌٽjo;u3.sGTZ4S5TWO۵z?7{;E%|o#^u[r!r סCϊqR< 6M{v<!&@<]P0i7Lh2`&[sPBXx5ZW >[5x*G-bQUZd?%$2$ʏ -Gb>gp/\6˲i HW*mgk{߆9jj/c }V ?SM7{C QX1a ZYG>1fhwob %ڞeئ.4/yFM#3cgjX`ze@e3ZVτq7Zڋ! ,w/2N5lLסzZy.}8moj{ƭ=b%.!lC =lu%뚷{Ae2b 'b,RR,= m!z~kqV;ݓz$EI~\_ g{Y2fK2$%6zLil5 C?؈q6SpxoLMʚ彚a݁LSQkhoN\)sy+qbI֛'蠝*B4zc`I_ }f2cƚo"E۬W[v(%kH"g@f]wABWum6wr6&fW7zior_xoϠ†ٿ[iЬ6̴lH PF#lsrݝxV٣H 3~ 'qI^`?S].X9@gz,uXם\D(XH(f* f}Gi8VNN*E7 #{̞"J@CkmɬNuy9DvS*P`3;+ ǺyMD0 |(_VB0*XA<2DCf4jCs|%lWj%wQ Ɔ\JSy*P$(P;O%Oڟ.V#A OIQc<$B9YdCOL,πXc7jQ"VHr֕WmM]XAnwD)$L4A}6u&M̒+IY&RQZC J߯ά0JHK 3eYc_H 0~._G*}'ɦT2Ya[5 $q1o#}+i,lPc< @z-蛛k*2:$L0-&ey[dǙ\ t ~ʨ C Ys%{XE*%ras9S 8N_YC=qqْO`6`2j6,xTѣ"H=0xClOSEA&͹9Q7"<&0o~B!/X[x`ѷrL]"謘^b}gv c8aŬl͎cyqr6̱j$ @8.1LWWWWWWW:\fCTLŬ^w8?JDȔ"2zcFMѠ3cq+[ԳU;t+0GQTj;vg]ȜR޹=/k,s_Tv N=谼s}ǧW깶/V}^8k {FLËRtT}:ŔSFؿb\v'$(gщPO'*G)>\Mw|T]j1XcJ:Hd1p6r ιQX.A$û*JVqedWg0[2!nׯݣ/=Wk̽5܇t}2oI'7ZZ+6G{7<ꕮ{tjM$-J :Ww|Ck@?lv@NƇ5]Xf1<3CtRw\yؤM7O &wJ.c;>?l* 89Z{i|?IgN5ɑۥ\1Eđ?GK5+TTLYTe)&%CȎnQ{x%r\O DJ\S?8WF _rqt刷Ġ%-9_Bp#^_dLOϗk]<x|+=Ѣ:[JsG,jP Tܢ Id F}rRwO [nH sh~NAqxtv`Ά?SR1.Xs3*Fp|A_-~i *g~/k\ouOn~*vy]?"V|ji?NnT>Iŋog=;gѨ^bq7J?O9rXi 0Hx`p2"Vf>jvջ amojuA{}^(OY]:n`0;eLl\ڋE QI,dZtd֗ZV%\dv7Oq7D$Y˟}o/eVj2 O}׆܈qϭ@V<?y}'www=f;_nZ>x ޟI9mg"M< l|?cge=4_r,񲱇Wvq t ' ͝_ s{-Շx`ee૫xلTQʗL#_]O]zx| 9mz|o#<tS']-5it~[gHTq~_::X>%ݢP<-~'ݎ˫IY67Y\XQβ;G'G'Z5#Lk$4Ӌ)eA0`eV?hq 91LB-D^oOv;yϽ1s?_Ӥ'1VהP j7^b|P5$?0Ď M >ƧIIJ}&Iu  e?.`=±qBGm%od_E%Z1٣J C)¸<ќII`zH[y8[unOCfg6P jmIA UQBRͭ ſ{OYMFlmmYx_v gwyJB) )u+(îa?Ҩ-Zb:'t./Vbxl{SMt77Lifk&S[=z^R': {L?Lb(hAtDjM?jaz=w&/dYy1U9on;йdȝ,Z3*󆖭[$>$C #lV6 $ @L9}dLY0Ҋ`9aTt4vg$Gh 8IΙy? %_4+d[].᱿ߤ ]Yk[I S/ %S1_Knt| ⒳8x%*> nA*U]nZ/\Lc.}ggQHYQi|~~\9-fLD~Zk) k p }0[%e7hSrFic!L-fZÄZTM٫Ou(n1!6#4UlR =s|<>tusrl->5ft.f?_o sPP}LVØu޻x~hL8rV`_ZX+#qZ]Nӳ|8=_N_]; ( /;Q/UdssΩ2T^UPH()tG} ) [A+0R [2g1T<:b, _ %3|M1bw1QTɥxNN .N ֈ-&b.J"&ꢲFjz>aE*sxV >Hn  u{E)y&YA\uxZvRnOON&I&I։:qZ6"%ab>buGha@ ]1䎁 $jƂ!a{Xb ǂh' W?㤟İ/t+^AseW{{C'fŦh]ٜK;׿> nHuL)տ>y oQs`v拃MՆEEm> l_ɗqt B{5ebomc]~}y~`S58xI*;e>:; G {FZ^lGfk_U߅.\L78)(_YK;sd@|8|?ïY0K0k_f:A bh0B .m p3=z0@x#v+/MLK[snU[J D؋Ua/$R: ;WBVvgY_) Ô\ %e홦 ؒAaV/~8#z7H6F$Cv&&T _~LE %x.E akػ; 1߇@^Ak w8^[8#=_` |qy`޺ <Ե sFbo{:#)ҋwѷЯ,Ŕ}9tk`c0qLrWY>x܂~f xN]V{JJ'Ā %Xx"BmhQk4 CqloLΡ\$ͅ+q#ܖ;i1N{n>ꐨo1.h;4o Oqm[bPOCzIϽhI"nMk LʯXv~Y#Gv?%KD^#e=E(iOs/[{| *SVD9 Ѵ ]tu(I_E>z"˄R`j*(/LQ{x6~}( |Ӏ{9(9Ic$ͅh~rprc9g ț0 N;J®yTbhr6C!߿-yŗ߽-5CLQo53JKkW@iK[Ef#h_c^)Lf.K%2_2-^!'P2^(bi"K3ί8=!wi34eM[Ս֠thFë][w:]RS^cK'[ϱ1,*aD_4w$ 0UC + I*Ȧs3?WH6 gW+u%9[1F2>[Cj0B4F l)re[\ğ{7lf99{Y'LC= V7B3lƎom0P]wjŝ8=ӡ}-~ɊaW)%]"JCPobOWf7Fb{MDH➌MuvH;w,R'jq]Gb2yn;3ܾ;;>'hx W9]n*auɘWQG~E?K3ʸ"&P%t"íu|4剜C|feD"E۪zT=oJݡ_0RF&W".m`YDwZx4 )ci%&/-x΢zP)}>k8ЫHgmzG59U<'mp%Y*MuhBK5Pli2A{N W{R )ջȃHI{(5UӒSU[ʫݒVER̊LgVFJ`:V*dUr^TaմG/3Gs!f_'qNz1؜yH >uuxL@/sxsqp{}Sj9fFK*ǻ]KɅ;#n/P"Gt@~$sϋGyH*xDIM%X~b/ERH!w:~Ib^$1nuxTAE$U = = = = = = BwPVNqϐ_t Wsqߩ⺿SvN?};`M EẚjNU]}IPfgSқA?Npڭ2wb^MֵFPU0W(y=~2W(y:BClVGxgKstw[#]sUȪە3*B'*}.Q`{B.( > ".yX[P`k_uqZ-éyؚݗs).N X\ ,)RB62uۼ=V{)~{)~{)>}. ,cyu91*S`Q5B [p B'Av_[VL;4է$s{܎2S,a~$ܚ>}b5fE9FӉ;3AH6`zZe;oюQJn3P%+u1 ixT7n pKDn\00?Xve-~wA*V=݊ĸC C)z?.y],lZ3'<#ʋ2꩷3E]b>:~DiN3^"tϕW_4ދKPN2Қصh_T]̷0|_}1V*D Cn{B%?;3u}{dڌC/q8ܩaZs伣_c=[ϓ0v^^Mrm5㣓ip-~D_Mkwt|2N/5#<; =H6N-_8~"A$H;1XP(ģqvvA9zY}M@nrj4H&QS8Qe4'pEEv2 N/-V"L}$B{v=N?NxthEN(`ݬ3tP07|2Ji$!l{0('$43XX*ń|f0l"El:biL 2XLIn Pƚ(΋QA)29nȼj`v>;8iF ^6a`?8>6OQpޝ6|/dIݎN~ A'^Z;g+NA>;=Z~4-ylkN"tZ׈'It|nF08j7Z5?`v~h*51LȠb('͝Smh8DN i؄14N~ZA2{hqxl#Ā 9;i 0ٻi?:%'~Dvs9mP~;k\1u#P0m@]5@P.҃(}Є'HJbҢ sj][;M}l0W6~?63;ƿzuWh&^0햰 oPBtOA~ڍ׮w^'{Mzs Fqm8M1)d!-dqU;hD*U~6IZg =q~ܳ=wφ. v>Yi?ǰ7ƷnVJsi6ecm;~ހ)i6_˛Sf Υ (v>Hq|O˸3!|z?ڶ߇gӸ V7kH9%ߛ11!ct <姺ݣU { 4H(ɱKq+^<~XZ(' 2U0.տ+1Ď%$Ar!-;dz@V  !O2 k 9w,2N 4pA剑.BUv)GO_돭ST(.HJ5O"mw[(n5ޟ4Ij5Wl`{8i>;DҼ}қ vS܍v-w桶#iLjAa/[(u ;䂶`6&}dWaJ[=؆WxJ[{'PYgo^{,჻޷zNob`_lh3)0LA 4kx\=*7S*}\Mx5kZgZxc4{~{z:"%fKI s`LJM//X<%`L9 v>K.Z9"6 ;e6 67=Jz~"-竄 lj6Dž%ςbM">!us|`9Pg1꼋*<+=iB+[QAPX:S5A΁$I\@uIlqw'F))02+q*rTVžkrB~9u'up/*SI.!j{s<kW=O_G;䶟݋i5R -:T\?ϣhx} C}8hGOwyZ`GN4OHF$Bc% 9Gh)շ>*aX\,Fg(ZKv֌eYJK.RYVi_#,234$ݪ!t_T%QP"HKn@Dy|$ OMː20Nխ(8#4v"K}f'j(xw- ^N\2}ߐO7~ )sKؓQ7:1%A*L`%mlZ3_ QA㿎Ng'Cɟ#'R h4cuЯ2'^S p G?yx~to;yxxxxxxxx}w~;<8p ɏ'|kWtcezD"y ,F/t3/ȯ>>FT_uӳm L7fl"7??Pxp~4eS8Yh4j 2d] >FܜOFrԚt;drmGǧΖ; p ŰlrEh{Uj15݅U$ IlI\ʕ'䅋7Ym<#"DlG{ ÖxiL>5҉>Q1.VECs o_9ȱ4/v V[r RVO/a, GC*ÀZ_@đX#{&${LU93f@#gHjOwv;9n$ԟXjc{}ݖ.:#z7@b ' '6/U7`׷~j#\Va7RAgqno|-m,c3Yg{'Ԍ']4-@-e/Lif"1!џGɪhZDh?ݴ|E1Z3ү̃ॡ2GxY]Z R@AEEۤoD(w>fN5K(XcZ*GDwp`DӸOATlsi0p. 5x{Pi;wZ-AaoCRz(%6R:I Z~>t?QgqߛfyV:~ΉUG-IEM=+Cχ>j1{emQxxZ.a| 5yST|Oɱ-buvhD%;zF]Ԅm7Z Z)_;foF4$n:K NϐO]=ŀ&nqGdnv0nך:]%Pm]̷&^Veֿ P-r?`BC®?ۏ?????????oןs{DeZb(c*GQ~ԯGQ~ԯ?~]UOEj"PaVv d8Q`e<ؖgI+Nƙ8[Þ ']I`e}%` _%n@=px8|<>m'J޻?Gzᣊ>*>*D!Tҏ ؟珷R_b6u5˒Lr-r)h(_Gp_9ϔK]q_E~4/W0H j'c8P0e~I0ԟќIhlT~}3G~ v7.nT_gF_b2&ղ3kERR`6aعreSN'zݼ;Sth[fv C,pZ*3mv96+MmxAj@̯@G܂fkg f~.A:8@|tj@/ Haik R~+˭7oAM´On O~)<*b;fs@we|"_?mܿogqcMΰ~n`K-75Zv33gSa-5Etޡek_{$YoI[^&Л:η]*| 0JݓΨV:kn+lubC-E^? ?l/;yYƃqrp~>axJV- 4;;Q7/YiLVƞaOWGI7£34l&'#lzԐ_n/|/S=B\]w!(Ks8U6,y6*?WNs;-JĔY)eM~[gQa3sG*ߕ*G?/H}Rr8^>h>R\AwE?Qݕ[ņwRkCPr2%f\ ہ♜y,R75>g So?uokߒֆ-iVbZ o}lk%cK[m~:M~Bm%75aoքM {[s Huֆ)ԅ K [S 6 基42|4/Y4O, ks=j7][ɦ~-o&7jB.҂M՗nngԟ?N.k= 1[M'wSjftnoцwSr}z >\^G7K7ˀ-/?=mhM ?dcV̯F\׆_ShWKW7!RI Ho2]Z۝;')HA.L[d̹1vӮڪj)M]f>:oEa73u,GwIt80s4J@}1 VI淽αwnuy'zkt ƥL61$Qh[ ǶVDl{iv8=mW_d!ؾVq%a01W,O(^GC'XcJk`@oIO xJ;!.0u /g+fg4m3᠍Q vٔ閒Q|=>^[ڇߜ  ˞1z(V}YEaPeuqdA\'0U C8{tq_A)i2bE;2`HR% ,ۋq>+(^$)NMҙR~B<̎ k(bК^?tD1.ŸEtDOos$Vmah3NLOH6TJa)$L'+"GpɅgLOFֱs`k7 ݬNvyw1oN㴹[ȅb^s$ly*ja> U%~c[*2HǸf\n+iUeoB0ALE ,IPGakQk',K hsp Z38C im_$b4dVZ,I`P#~8?fò<_^6u60?ou̠_$FS(\G2 yN =Ε^{ ^w)HMCɸH8^D:I^ M?7%CĚ^"r bvE>'Pr/C9qq7[;y cLbw584w#V I $>I,_V]nW3 hFX2OWSt<\QI`Wd*Rl ])a?tء"gQ᪃鰽dXE~:7(@Wxlћ^qɭ=P!LZݱz꧟:ͧd\2cy-~70Q[U,*-3X[:a+12Vp]N&`D~|x.X _G5j t aT:&-kFm*<|p>Y|BPp5h٨r2`+FY4Wse˻g JnkB`K@  XYN 8ڐxX_`G,L [s>|yL"B;BL4n\$zWN>6RMé7Jo٪hⲪ=N&f& ]qa!MG!Tj)!lvwXg KDo[M.fE+. Ic]%`N9LTxւh]zS2i-6zlּE3( Rmks"(Em &"M,YNdem1GUd TZ >YbHڌ"K/Ĕ0;U(!΄'ZI}gܢPi &G:(ݣzw嬨C*)eKؒF&[+&F.MQs5|0L,a>Nq @LO8W0}3AM[Cx `kM < :o&Bڻ2-6#frkۏ>X9q>GKqgbމRorBe2[ٙh+'t-vӒNuΧvmK(?ðF > ѮhB}a&iNa| G:+; AȪmf=߈ͻDE?f=:%`>W/74apdTk3m;\3Ӡ6+g L%ӑCEƫw@P3q6A>>e$J^2Ilh cP޷JInqD=DwBEH|^`ʟYxh{.i$\G~E]Vggx"UŨ,)zR } UM9dW.I]gQs'dd i{!Z.P0cTT'sk"&>M𗮐 h8 &([.:PCDp)ƴJ#i'nQT'-L|s<)VBCܳY„fhMe':pa9)@y'C Ce|ծU6u7ITӥUnZ9;`Dm49e Uy{/mdU;d mUU9`f+1 iQ˳Q_% =:$Bc0QaIhͨ\'aT2ͭ ڸw(84Z IAUwmv2K'SM}G‰&gw6GH$$ 0Lrթ-` zD@rwzM&HG*D~79ɪ[bY`X*Pn͜"݅4bqnj-[ c-ƃlY(\N|m^qVftWNX 9)x%؞OgE6DVCq$rN,#wW啥gkNv+\,#=535#+ͭ#3KUb .ŧE4+pgMd" E{ Wxa Sbё\q̩8S錾O}6mLw&f=կok{k 3RuW;- b^)b6smu,|b,;#WIh&*} Xj'Ρ'X\-[TW#LR3bWULq֙2*l7 8W6WQGa(U+-9D> HMFGa,zwtsDR-*'Fѐpry&B{U@PCi2 3"5 (G+u}Mu!dD?l4, kR2m ̠'Yoib@iHaB63%HaJبedd#|?oELj{$Em|nDDb.Ͻ1Ou88 eRgTJv緬:!ţS37A&>He[Ja(+2Ue/j;8o miYۜ0j<ǘ5Ho"ݴKhh)]]k}cݘ"QaZ\cɵo'(!J$`|:!kSXYpQS>Ps 30+q9e(\ Js5RVeE!7ջѶ6-%fiጻ ۲u[d*UKǧ] Gx.5i8)$s_ASSxPPlodS8nfn&Q gNʮ{B:g=R=~[o^c3t+%Jq3f!_gwlK(GCq%c\G꺦l#Aq܏€ l$P|(ƍ)DZ,8hs(!pYsgG?`(V#!ș5Dwީ^H*w3cBx( 6)j22x/**}LfmfMd QtYY62o!^Ż)} Me@:/Ezn׈Oˀf;9Zp.bRͤJnljT,O0m@-\A*'Ƿzs"g+㉝lVlGd~N3y/)Z /9Oʅ ט#D Zʖ4V.WGnGSpinezz+ƱFY(Bq M}8zP9Zh2f\0On@++Ha5a^TDR#gI ~? Xr)WS[VJBԇ@|N6[Q/^E٦"i1Žio)a\btACsٵ9͟{?Zj `AsuEY-qZA)͆aI!s1MDֿ.Q+>s𣅝§˾c Cx@ӯ8V |.)mW*0ew>Ii/;C2h̞DYatcB)(|b2;gh"3k\i qCu6I$Q'VQm^Pu n1wU O5i $I7V~ NUuy DU<ۗT[t6_ʮ)CH7WtOĦH:5mK>ͲЈbtᔍr1K.-|x 2%#hڝM;b>Jp\߲c;oWbid|Rj1#Ӵ==n^ᕏ$ڔ2)0M?ɬM]M7т*%6L(:NbrD j'Zu[ֽ(8vAwNJ}rvcYf\J]"k^ ehLvQV6elhe[p%:T'_D8bq:Au9ǃT:?Nԍ̍hjc&s[s?eVfLr xD+@; B{vA:(TL [0y2>VWsRȀ!SYnDp%(}ewKM:OEϻ|OHPE:[?av&X.1r1ǰ KJF mN8CfÎ/ 7خ>YE[7s/h)q֧Qq >($lfzt@(4q%%8сBܧ\@ּPae]R AE8vh7k,EwIe3DgV+PJm*]MBPgސqbOVcR؍BF"nρK6?-.Ck֛:gTBj-m: Gh`NZ^o@! U CnU+P27ԃi򂟃^!=W~ vpZڴU20`_a8:ӫ҈JB B"Ե@ IQ<GfJWa:R*A'^<*F"m"seͩaEfrAۡf .5j'v6mmsɺ]R%5MF SПp^RDz2bvrJ2_3G\nrVd*ɥLJ,hA&!VdDJ1ז|ΐ{bOS,U5l,q1N۰ΕhJ*gQAC撔۰Pb PanTuv%'Âj?KXM9P@.Mttn$ik"Qi kQ~ H;XKv*L-~SVdý&VNíÿyַSPKl5Y7= jFqW.mOu?;FztGT *E{&=kUcܬ]1Љ|;AKn#Sx4+]^4Wdl%Δv[K.%KT9쪏lbԌ%u)ZĘ<88y؜EgySϙK ,ZTlζCsM;,ews8N5`:8PfdΚgKpkٳ^Ȁ&v>iOj`!8R}3. D3~H逖ۮa, H{F8!=3H,0m[eDSl 1jǛN/UIo:)/97nBպ00leg*[-+DǷA[蔃Nv]E9VZE&WV&@S~XwHx،Q\^x1JEؼmϓ_ƢMٓ \_"eb6sG*Gi!Uwewpз$zE%p^&|%a<_o^~:a9%^v|Clapw"4j7^.Mogzo;op):nW1taulH} .Yuuz.$"{uXYzݮb&adE*om=ޯ7\ V;Lng#RS9v w Ws?Xnڔ^Xn.r6gH;T]ܲHq/4E-tbHmn+(뢹=7U NzP配QXץҋPKU1*F*R*r'2)WA :}ct?Ipzxʶ&u3)t3NG4^˴ -Ŵ F[Ʒȷ|Y}KE=6`y Q0{O7EBAiN_'PrN62dN_PW^tR)W>zrAVsT5: Ơ*^L[rG8OaPH_6~/#L.ollN3 -&f1HMSE7v-zi5o?GK"\VꍳhT ^?jZd0WIzy5y/kbBep_ G XH>/zcCw*kdJ<b +")g GzAs4C''2XtMaCmWߦ{]3%gGz7ݿmMX3%$a'VKų@ SE9i9E1C" 6&xͤr8U >T 6Ӵϴ8o-yhyhsq1Z_L{#fyjOy7ݮS)58-!zlڴn~<͜o>; Ľ9,\n a ?w)_HR\R 2^LDRB38= ۑ'Ny9s{X2Br1%0);S Tx_cUA)9ȷǓ:*1u">Moa  KdK4BoLKg`׺EUpe.AkOqSPnPdS?]4Lz7#-MXP.ȧ*aV A%It^4YMç. H9l"ȪY}rvc!r!zkG-IKqqƅl%%5ـ!B ;5&/`Ǝ%y;5alڶE-v>uElٶfX%x ԵԄ/%tHdVB֌8!&š1Qg)Rr')S6VչۋQ|i}[ w 0{+iCAmO[X;~ G2.Pk1Cvh)^P|(<֢ Crvl̀E%G{[B Vu07@5N +N1U_hYs㬟vn?(|NЖ@A U" a,+x>IB˚YG\VNh<)1+{VR|챢cƅ4on(-MN\ŽMz 3M8Ls"B)E`~0O(5eJAhֺN:4R)~58g6XMN $'̡2-<dOF[|/QjZm 8A'Eq4gbq!?x{PybÞ@k{TVs gЊjf+&[%FQc9,kQ:%PFt*,/6cpkS_']~礟'/9țPTUVˤP]ShwkqX ͍AnЌ7<,/PORsFS u r"*zZ @iNڰ$wCo?I!jO(v9ixl;*k։ujd1iu@-%AgNo,&.@;6x BJ9p5SbP.'CJX/%9˿7R*m.5`ϫ\i)1l*)آO{ʓgKFk)!sYXH{~ؘJt;#%4#m^ U9vmQBQ)ez4)e(vdE;4T&'{*С ,u'Dװo#@Sp0£ i^d ~w@nZ4@׫ybPѿ5|׸̰(lkEG\`;58]7jJ2$IgmQ?$!p:[F;JŋΦY+{1o3Sf8eho9;C * [+4QF*EbrTCk>:`c{v*"j%T.дKt*!NybbIPդ GjݐL܌hģJ GfT 5 'F+Mlr={vӼd,@ɧtIʄ=Wwh(X۔-žy_5̅fqї=" UTOׯnU":ohNV;Ge\^9 Vd7Q#\`0sI2 Mwo~+n3g/)(ZddgzѨ@=Ĩwteqۥ/Ljx ?FZ ar[L1. -)m]0`/" 0}vi~̞5Bdž9:q͂^6!,trn{eUbVs&>F]4Gӯ؁F_5u*V|TvKgv.!P 9, +܍l<($u6 =*g;]rCFC\BwQCw)cyg5 ҧ[E[sPREw!D^9]B#ac_HB7ʸhn$be\T+*Gؓ.UQv7Ma!QQE]kt_>W e{SqszF݉er}\x>hóif3H&5| 88?渫|2h WV9f>"MK%dYt́|m_q] ȝ4+k@A'7NBfױ,Sۀ&tn& 0E7PlfO-q@;0H&!eD)žre]S~²Qôa>f۞HD8u~8w]ƼH\#Pu18FklUY/,;12xnstŘ9_  l(64\d>]{>}!)%J{BS"ZE6ҩэu)L|^XaN塑Mf $Ah)XQ+::ƨj>#k"cZ}4>ܳhc=ZVR'+(bږ?{Vqchr "b9lFA,K_QG5HMUn5n!V Hq~#vN0}4)n =wUK yDIy'e;V@ ,O\US3`DD4 {A `4cYߐE6.*G] 8J330:.C0$LIgRTw]K\[7[쬗4g?BGWt}CBgU41@=fD8 j'I+)A}*hX7VgX)Řdq{ rmcC ^P.;f|O'݈n:w  ]]|3bv5໠M IF:q+UPBB zFBU=r:6x^ wF´3ە;Ĉ+Z5aRmoJ?.0̆#iDbΘn?:ظᾍ]ja`NGA]/afQl1 Ix(/WX>(^nP:~cxw^"^2 w)vZ59>W$*v€-lҜV(1CoOVLA2O1޸]~- ̺]jA8Ѫ>tX"qd;K8?:waY_A$ *fk' \5)l FPh9"9󴐂/-bw-jOAT0%j,5KGC|̙DEuD}*VƆPjRKk`Hty<ήҋT﵃Vϑ1<R2@%Ux0K8:|Nœw{w>yl4.Ԕب1h载:oD_G{02}HQM ܀5-]Oج|,ph571gZ'v'sHܡFEzo%q<Nn(!u_N[+>ƕ!d Ѡጹ-ұxyM 4Xd g{UZ@_#J3p_֢d8h}-K 3c 䳽2T[ fLByd]Q&)Y/tMM?޿&8NZ+U?Hl;۾ JA:6A ladA#wy8nنYLٖ#p͏F[l#*ᰠNQOr۲֠:[..jaLX$cJd6!:SP$p(g$7,dTWcuzCcy@Aڒly<8?:OG'f;H[gkSj^ŒNMVsCQ 򯬠E1DilX  7HޚnѥkL/iPaA}&c-M b;Е.%޿"Ix+Qܟ\e˫(Eu ZS2ul82RFUF#yK_#G~;Y8 mc4+w%Xg>.=R9z+M?gf- ~3hl]ha3ߩMl\ Vuy+ @y]Lj@0\m05v:bR+CEa`WS Jo2bNv+TK[GQZ| W殀NL ^H'! yPkW]ߔk U9Hʈ@,at$~x^äP?='VTچ w> S-Z:Vj) Β{E#H.q)j@Gբsz: ]bA!H{&ـklЫa5{u+*E) ~7 8`^x}y'z"mQ@: Neź-ZҜso`jY8fSQ":סJYėkQu\w$+:^{їu6Trx|(*_p%=Р" +Ut% 5%.5'r =e|ت>Jvr,ٹTG\?pKטϒK镜PDIS"_їIwAKʬ42%tbE䔾sC=`{7-®wv6,Dpf]݉N ekd xHx;Z42_(s] ݮ/P ZL/tReCF.Ur31LƯ_  tY/7kWea;`Jiq!%P7ţe}lgcs*  >ŏR Mpl;//K0\%hxv|9:L&(h)Mj2察?f|?[dє;\:@І!NFl@֮ըp`"&LMqi7A9tJBu‹\g NjcQ"Yሕ\I GPu^R)tA& "lE m(9Į0 }F/͛X+U ?qR Ȱ.N[;ATʚR^DŖX?IS̡t< l-ؑwU䀛J(ˏҁPXaMf%)[\] eP &)Ա)փNъ6!"Nr B W,:0T6VTfxI ߨ6 +{g#)imz7VMd q&FBPM5Eyk)9Hh!AbUzH͍BYS3FUM }H\gYfa mHbrLyHZQyչ~9A_PdS[sMY(yIxz|g#*q4J|X;=cU l*r*KPL(rܢր\()ZgUGՇvnܓ1oT@4Bņ Ld:ja|I @謖JVEL_V4[L aRog"&AAblZ |g)|CXA,924YӲ]} `~p^bw`A<S4sZ{)!P=2d3^( z }ݱ!WZx~O btdE0ȺA4^9ݒFtUKU W9%_.jg`w>6`+uںI̋cĤG([?U8 =,O+9N5*=Xe8f(k*ϩ>ܠC\JZbH"eet RYQxh}L[[b>hׇz6JZ8oB.:2DzPݭ]Bt7mhdfMZ7q:f Fy`cD~UL=nkկE;ZV&*_!ZloI~%1U^:siz/-qDNhÇ#&, Rb._UvsuS Aig\$kK< 1sV* śix b(&#$\!ٌ:pW"S Q7xN?>2D'sMH]f^I߅loJW4K{kh[eot9Zk36'&Ԏ A=A9HwL7HU*1A16TrBq0Z^ۛu@dDK_V-_[+[S;EC[Ibw1~FSL-󗯌Ibs~`tՎ P<\,-Y<4aKU]C9Us_U *Ơb@_ 7 [!X:#j gݑWʦ0Ml}U~[jX}W+b+1ϳNjv\by0cc2Y~[U0-Gj}r*[ NDZkzBZ6wddz讥汿HkdvV[$wƝ$" MSU)EϙvAwo7BN-d Xޑ74/G! +%Gٵd>k}|h&oC{v=|pvڵNN{CPy9W]yxk6wu3X>sV40crfBI7ZFxɪ"(zMGۛ'dt'cΙ5TDY6D%D!| ?ԵUgq:Ta1 y.dU9E# v#*LPԸ}d ! 8umt7ERRB|OO~# ># 沸+ܺ V=zn)y0˭:xyn}Xj:5wv,%ց9̶aJhCc5nu&@ΪX:p(7pj}6N}B<+:ߔ cB%ju`NT%|7gtE߼I~Uߙо s̴.1VA`[*D6Ʉ]y8Ga,f&r^SJY[\Y 咲yRH8݄of8gd Y:>c+5TDSɊʵ ¡^F xy,2UY2(&]3@ 'F \yHcLT9-&SrH&L\O5:ӛNLXPYH)iZ,(ReOv4x aLs[v)FX2+f ry¶DAsw)|MtŻ0 jVD=J۹tzz~z1_P=n6`(𬟟9W?+Vt2x_R(Ǣԍ3뀨w_D%}%zA^HM{},J}Tn?ҫ9Y+tXX@Ի̞D )DF^2eA]"-+-8wDY=PY JtmQ: mfrW;X}K5-f0Zn*E osEve>r jD)9쫸aqI \A"}lձaN蘕G@:!)4:yLhq_+to@KqXcNe 0D1D )M,JSp"ʼnS1R  Jv"NM~AZJ8"1x=qoe7Y\SCJji.JNWR`v:4y^=/ UTCҮݞ+(p2RyDPJψ2YQ01>s} {T}?\5@|n'S=xjy&'+ ]0Z՞h^ Û:Ac * |Pyb h})CҺ=c`ofu~)e|Į(.`&o"9EA׈2P#/ Im:QA+Һ:Lp:CQ5InybIZ;Սvd@JCāIJ1CCǝpw$)}wËiGεw nxQ3qOy&)&cUN5~TNVN L95+FQ9>?P7잓'I_h+ K1Ϝ=ǕU.VbXä`h=k]z  5t.Ղ+'7< NrΦRVzpQdՇ2: ږv eM{vۂiVÕPjnjG Նl \$/1N:4{s [Pc:Y%ex2_:<Q1oZA dx,fxp3Bņ3g*[[ΰT>whqFw zhKdiDyVf4$uɔ4 NEC IpMI;+v>{ {,@[Bt:)hr;2HR n%uk 5}'VI'-h5R! mu 7(f9tay^Ԝҹv a:S'h =OZzEMkh8dOA9]j/+5.k~>Q Z*,"v?JCkן SE>h)NS_9VEM}ٯU{تQ$pH=cÞ[E8# q)k yewKsLP~(آ{; qg eF SNQD%Ui. C?{!LiǏ| 8 P ō|aX' V)HͿ?JǓ {Y[wX` AVF:?Jgz_ZϓgB`)F?7#:mFgnuЌǭ:b@x-oj@mo`mN+R3B{?0g@9X2р)J\G_}/tB Gu; O#jI?D%L]9P}\ڛ3gF(}Z*4{5t0D6\L> M lc%q3ص캧:3zak.U_2&dM‟z3~sB))w}Jx˓֐ *.ճl5XY6ܡX?.DzЊp8{mFp(Ϲ ͯv͙ҭ^z_&yIjvN .2ah KhTS)Y@ (Ղpvb FY<*#QrE4:5ĶfEm;{r\ĭ KApU<p;1Ny~;IrS>~c3/yZS4vAMwS*p;_U2׬ڳS VBQN1.+׸a+̡"1L~~)9xd}6M*Q4P&E=;Ly%gr6$fVX lM\^:(M,!,E?.lڙxk眬 q4-r`p޹l釛ghQ3$Z1C"-xPڋXpgtkPLM_T6kxKӋ%._ ޖ0]-8?Bۅ)d] ,[X- l45dp:[*/ |v5k$d.C& i̟T".| oDuR. m9٣ }% 6τ7N3.@m h,= bR}8<3ГIH`'1u'I9i<b޷&eCt2aq)IT @d+P!n!⴯M V)Ů6 Nt<4r؍Z!3;FY?ŘDN~7]$x*ixF_fݢnWPv]kXtoo%8w, 1zQ #kU(X3d] LL4L33@xeEl?ufAD¥dB@$'UؤL?YD8=q$a1ֈ|sKLt=w g1o'[:={n2db '1GU "|FR)vIɂb@keܹCX&5f='c.8J_$Bp_^ Ӻ29NtAUVJ>˩ T<ɔ5sEI mZ-cvF*;sh*I౱](7&!NV5p+IQ[hn}=6쿻fB~Edx A`h@O,O9h%E=22_n?iVхUŦܐۮc  _etƤؾ7KpNXG[h3 J\;O(3ߋN&(Xu>x/G6RYENAã$1K?Nr%v(v1  HQO|2:QMX<>  ؅< 4Gcz4_@2mbaBN+o?@'w1Oݕմ WEZ0Դ$UG'dٽJ}}eeR]RbnZXXXЁ 3=g5s'0 "([&dyv\aJ $`t Әm~{'Vlka6I% 5tOJs9>S(7ӝ"eJ&*o\ꂤ HQͫDY*/khZ@M<GaE c\4e(|YEUm~2A^-QI" ?S.n`xdU K ;4`524j#qDN)Rn!f#% s7B ,֥t-Y: &y;LM2,WkSpP}SgXu"sˮG9J)АeWG8&ir<ʸR:!?c)7v&( -yӠUN5(?ؙ!; ϶I҂3#b/ԣ>~|mFM]2=n(h|s`[ X(RNT2Ȁ:0 5u^NԦjm\9ݮcV`p,34kc-V.NaiO h.<ø|CrG%͆t׋fsqaEALTY@L dD'G'i'^kyxj[+4H }$=ҧtS4&7>#ŗX :[˸C쨡ZaN$'dcG0xI0jpMPZi N\1hXbG-`B_Yw*_c;9>j7aZQPQOhцGO#Ѵ[I㐻Cpm-V{g4-aX7Nvv%bAID8^?h|?+<%ýh(!h.9ohbOS hM;k7W"?4a@'{!th{D_UΈ ~0MJ<\ PL5GEHb=` I5Aao,^%QF)֖NƝ$?S44-*-v&%/"_E;k{k'kFts@`s|B!†)~Jbj%%+a͵MبSMm2z{jPHI<Ƣ  6UwxZ*Eo־\\ЗSv_gME@c[:NژrNyK@wiB rM݄J"5ݩ3Fv`IVԎFVCz{A}@hwcj Q[0 IQg'{܊>xU{Tu9v'G' a'/@\L3El]S o7n}Uv۝&cTU[_A7ow\˴|]dpZISr*I+L89-F$&Tztho;x0l1?t5=*4 Q$~6IlpyE"!ؘ^&ucmiȳa ֘Euky 1= ]2{Ʒ,釔\$,K1,(ؘ<: F5tBu~4#n0C5_^?'2 С4ѷgSQZpPE\4fl@X1M NlNV=G)\gYpJuZٟ" }X&S2Ic.'߭~eC&NGdMfYCiagq6pvA|Ѝ #ܬjWGb:($\'}W^%?jKbY3O]r*a"-C Ǟ$hW*p6=,L$-xo z:f0*[ ,Um#u!v-[!fVoŕ@նmAɦ NWQ5Qmi`27ٿP^Wkd}Q%k"l)T1렏CL/0^/@wGrH#`4ۓHLAO͍GOGOGOGOGOGOGOGOGO?'D\#7[OMg ؟D| eouzãٻ6|/!8;g آ(mb=+13Os==yS'1' .'- .zrTrT,R/I}ъ.O='G0ƽ9{BD,$R("D1bccm|Pε+Ge2+yәa it0iʏ1,٘q"{w6*ocVoG"(/_MRcX˷@>ݣ-p'_/ !*Vؾ#K^:c:ڬnB|RXT^)pKg;\W]o1W?|"ZG' /L$uF(xd!H8 +:s=c:>:¹pJ} 얨;,dOyoXH%-j(kA6NPY\w_ KhUTզn߮-`QgRUCIu;N?]hp=nj+m6ǘӰ'>e pwƙ$G!% 3e2Ĭl#砃ҾLI)^/LBt^BOfd}Ɵ8wTT#3'2NH@wF"U+:a9NTZݭ~kOˣ KցE C@!$A 'tASX0no|vk8.菰[f3_7 Cd~6CovwNŹB^ 춭]{/72ME߮/?V2Э|XX.gj=:ؕ3c_ZN9uȠq> y$wJj/&.~VD'xOdwO%!{}r,:A;{弲;QUhm;8x,٭1K^Ty*(ո&/)BEhUs.pէ8LyHXA[j8I ' {\)C5FTTxm` |>qɓ;S,=5,$n tҹ*:;1]%xێ@?dsKpYۡyWdnrwCo]Q,]+fj;\³K/twsn|dsO|*hD?>/<[6?%sNzy1N^tt2 z\L{d,^ DR,)ѐK}UnBcU_ٱd9{en#XNNc:i?,H:rJ$ɖȣ hgFD>4(t|$_2GKZ!nULA&ը-¦cvH|(hTψ~lh )T=߰Md;0$a2VsG|q ~6g!V=+S&'RXĄɘ*0Eja.o:}xV9a+UR7C,UM{ lC*` ]+4zEKVRLWѥ.Y&b*X٭.L2Ym^% 띿\ݖUY5mMi,<sXWA|&W͛Ntn]On'aX^P “6 v4N :-%X@rnw05Z$ ߢ;-]\ͦjϢTDnk;BeS#8A1(5OK;]ɏYxŭҧ:f$2kp~شTDJo[X%I{kퟞOσ _z}0(ǰ3ZħJ"}]S,ѸU aP`a@UJ8?g Υtm$) FUduưfׇ!1B).Wo,oZ(ڼ`o$0mNnc]ދ=LwiIy0.HOoTk eT?߅rQǷUWK٪y=)Vu-3+9X^jI}_c>+in`Y n{)'#PyTٽnvF;qyñmcq1.ί7.ș.*QYsγ m:ڷ_jPpo e l3An1ǷAIrQ1Dݠjg¤Ы`  FX?L[쳵{$@a 8e[!Ԡ |ԢEPTlD7ՠDtZ Jyhܠt(Q5b2aY 4(IA Ekjt |`i; Cn-kjP*mԾ;{<j4}ς[kP!+ f.ћ3Al5um.XA ƶyjzx`V |kI5(xiP ,\4*iD *&kCS *lNU3jPiՠ>ׅ \kԥnPх߿;AœL0ljP֎ɫaWz_uά 5ov ~ɞR Q5ct t|iQ**e8dh1F geS)-)wTQ-N@ە@P<϶caGV4ݠ 3ڏz`AഒLvǘwFg)S5c.ԟ1dF|by*ϐ{twFOtMUd˒vm^L?8ynK/E?{6|T`˭m0b|i cf +#&lc>C|7kRψ^>+ZDt*,*J%)O*Ц1& UL<2AI*wLBy\1<"g0ꓓ^ <ܵ;)N,^nt8g3s&HnF9_2N rvt\pXLW( oGIs\cvP'w͟)}tsC^Ѯ1c>3rN˔r0/Yx@\vrz>YSY2f76D N$R҉:jUJ&KؿŴBeLe8J#NHDOQjۈ҆Ruś/7֜E~'|tr2W/u;Õ,YTM\H@MT O aNJp_&US~bcO$Ƶ,s9FM6ԩZ X,S*>CCnУϱ,LiX-`Ne_L0HȓAf Lͧ:>iؙb;$ >Zr."o(#~s] >¥K= NG]_^%5S_tQI>~s+[b`ErGKA 5 \qk;t _ ^ęַJMڈ ˂=| {uBeYİN TrwP% k0ּyIb %M|}-h1NLRbtL?%ɘUh{# *mTQPgD0!ǫX鶅m^< ,c@;+G$IވkqZITh_d٘ HS<#\(CDo&#?$&SE:?b=`'e>pSe1xBk*ѯ(>),ɥÄw,½SXcVcaPP[Gia"7%BՐ"_QIg y'?g)-a^asтoH4M 7ePBoe, EsnI |@z+gK궙9fxBY=ϛkޒ,6SOFȒ4q2JC(1XٷxɡܚTPcaSg29ϊ6)0%VKauUڙZ5WO.tw*eGSQ9> dZȑq)I;f~ۊ+yLi/wQ,G1g':U;CT싮1a'[8J"Ҥ˔C~-$qxKtpdT䉀C&fN]!ҪZΈܜllaa=[24hNqbtRyeM 2R|Q"jEc'S9g:{-t:4[5KۯGlea8$,a,XV.v kAɩ aS]S!sW(%*(vtD gg*UzJ_H*Ea-fs/%ߏ&p&`gNHYNr$A!66_[I F1*OR0*Pn81tV0|@Z qB &umWɎq \#^ӠP` C~fUS=Xzը-&?e@:n;yv'kjJDE3JR4`uLMTe!s9P =3|ˎ鼇}Z,ox::Wuk}}kSWx'4m[k!Qe瘷8Vܩ<2IU !S%ڤЄ66QC2 u"(!m*HF/<\HlD*ޗ05W!)ZF5V}YL4!h2Zæ(`/@D'qmo)m;K"y+5 vGSyHμwA 6vinV(ǑIb?gcc}cI~ GqUt04L=)VXW%KjDIp fR)Z\5G Xlo$AR!YJE+~95\.RB]+|<8xGO#g䵵]L'kU.AA&=*1~-N*6 }U{g|!43eU1}>cBS/ޭh.t %1,W"2=xW%@*P+4k /'8mi ϐa"]ڌ~d<Mia.Okq:7诿]hќ5yJ84LX]^Ft$rI%rYkġу'ȞT/Y!t 4uQx.}eDX%ɛVۃ&1v&6kwF YssBtX)[ _Qc2Qgt>oCo_$tWd -Nڠfښw)%"3Z%ί#ă9^ L#44}(&ե P~@U^+MS|@z}8ڃZjՒ A|Y¸RunDKyR*1 A.򲥢i"e?.Vԫ >=>Y֩ mC^{ LMJnKtfofX۴zы2$~:UjxbH)ʵE\=p?y<V[yU ڞ}`q9tjhy6r}#koD^/! C5#XPK5T*hm/y^/ d 7޶ngB1ǮXrWcfT4X\7V%PD`U*7^6)Ghtn'xW#.:D|f5,Q xT(xi8$ܝ-rt 2Z7C6VIQJ"0w(6]vhԚ_BY`|ڑ"PK%Uݛҥ "S~wVs=V(nhBTt/gtҏu8NQi|lW8Գddi$TvYCbK^'7iDDd41 zy]FecIK c8?E"+B['0R~ڙr7 yc(!{X) N^߻/&ε$ŒVVn Y[rejNJ7 .cr'ؔZ "ϾMv/5w[SPIsufϱd;gWc7IFQQ)znuE@>Qkmd6f¸<.:3}Jؠ!u?C1iǰ׻u q2ʇVaT ˖\fbpãFγM\/xs] *&N~Nqm$H"nIeXJD]dHs$&ⲱEwXgPLM6.I AuX#TxXf}W^" GxTdo~^14ͦy*\B'c0`gl!+;ǻ0RRIK2X_Z6& Ms<l@KzF1(Lj`;(%q‡k:G`uRᄐvR}ijԩ1mۈ.(ՠ84fВ9#I{d0Ա:c]% {T}IZ6pxB|[Zl8:=[-F~jzO1u[\- `%bZqY;0$E*P)%1))|*7w M;khVw?hdgO+e|b :pa>w2yg\[$FXwoeG2+pDĽm)l,*ӱ!+)ۙ 'ǿHe_+8C~OUp`݄ GQ_VSVATr[&kk MC2F 3 *JONa vՖ2cs6+;GDrKf\'Ws;٬9^zxGֱ|{&+Ռ'k=9J9E`,2Й|H/M^ao\b%Q<VI=Š%T)SMEEK!,0j"Z5oj"'Ce/F\82p6\n=᳖y0p?9ͲxxyFYt9l\~Nq)_{A²bNCIiOh_]xCY_L+?/_e[mgoߜK }NsRװcQqJJred n[R ۉU1>R"q!!q~[_ѡ0'%ygaƻB9AXD!GƏS4oTPOݎ=6PiV쏃?Q+o\XD1oc^(5$mT}ntJRM8ntm^7$P…!&蘢[`KWs|gyOv(D^4>m(N0_M&ݬklr4qw Y^䊿z؞O8*G?~*YDOݔM4]MH;w1EplaeQ Kz5)+gt2sǭ>*lЋ1#Z!Wu; S" /I*I8YorBB}R9Oo=D4*4<"Vi?dJ\`N'RCm[ xAӓ '5mmT֝V92v^qyj[Ɔך:zeN?4v)SiJE3o.*II2yj!1Q~XܳR[&il ԋ 'QT'eRgP GpcY!`,bJ㎂oM5ɋ{&  ՛F>dp(G xf-hjJƈyRfZP8?[>5GJŅi1 խ'w*ju~y}Q{ToBR#č7 y]ZVofey?^%]} ;Ԉ# pE; O~?StDB:-3cǜ))m˲_>~,ۿCIߘv?7~o2WeDAB7C$""c~y,MՕ|S2A,G\?A3>7'JN}Oϸ5 HGSH 6 G`q lp{ )gؿr.pN|~y Ϧh.~>4#Ӓobaw)]hJ%wtFoUNҽ؊Ra6|q64>h J״K׈E/2GC:,KxNurۍGxx>dD8zo-sXS.{, =`+lVm'wI5VW(䛙TkON,y& @Üo 2ZC})A,1PeJπ\7R`Ep՟_L:>*clb$%?ECC+v(K#Mr7 ΄>)>r/|HG>vemu%=TJWI`"FadӪ#w!h.{i}V'n6ń:pIXyOP@!ipe!G$ɡ7wݕ<@a{$H>X ̿NخXHƋ&ehHNS|鍉MV{lƙ~ڹgڿ>~N]9 X.+FzOENJ=+ñ*'U/Í6^j TqUSLx~ D#L$]b=-3_juYtEjk†k>J[٧xOd?d`/,й$O~ 53ncF19m2ScRz>`6bE+y BLt)YpKkAҐnsWc=,\kA;M5=zI8n v8+0/V:LPtLr\alu)N3+h\Ǿ`V֢hWnH}.7fK;F:wWsueViܻٛE 4!GHb4uQ[oȐYc\CZ`jZ- ( OO_xL$R>BA YSw@{O43̉$PG+;*jpsĘ6W`DFE6f*wl0Kefc,=//$v7P:!xW)\!J@[՗U2"ʾV*H?Sf~ ܼ7'ͪhLB#$tMzI'\b=R ˖Ƥa<,~NOv|s\;GPs+ӗr[2g/ `Pk=5Ve>dUUP7veSg?;^Ĺ˻u͆[k~Vڵl}Zg_6d&usKL}7j=jCwձ`3D`P$eGF^@رYJ.ڔ,q ڪFWQ-}Ȑ^>[ap QB݂D;V<ޫo1۽#byHg4SpE|# }M`mLpF>F}i}%S`sW#)Q jF"$_\] @V?-:}\w`38R}T`!adiW/mK3z?y3eϲ +g[3(euζuʼn))0Rk)JY|U9ݒx&DKV^ȁeMGx4r =h0DD-90uS9iEܺ9|R֥7up\Ky6H&daj?Ճ1F_GOeF!ӝ]D4E}͈"AT,M} @!ɕr6Ut:x\3$i<4ƅI~ޣ,ˢĻǜkor%&3Ekbz3/lh%'$nA뚺75oSmZi.j E:!,Aߔxs'-+%) J8}}kP=?sw]|;*e_a&C eV¶mnlvTo5a'z~^9ZnȀ"Ӡpr|xEYXkᲤ^6oX Jp xFhl~/\9׹K-#/C{A;j(z?k0 FVNp" 9=x󓋞zʱLsxFWcRvO0t`9VRWeڛo\hzOnSQ+VFv3\I_K?L:'o|.0 "3(IjH](Z9gQdPq+P r@W^q8 xP'DtZvx.܎ ̮T8w.ݯq>|;/8uAwF̕T_ޕ{C6+a|+*z")ȖԞ3aFg/ɲH7ϖyrB)J Ō[B'ϾX^veWĮ35%尒nP*檜 $K$^[8V0V?ʁрdEG_i+j%wI9vK:;B4{939`Ku:r| X ;EL\ ZRm99DeҲX÷y2F`{Ī-Ϩ5g4~2zMߦSf+V$+ ׆ tmE\R''e7Txc=Z.Q|;'&fQjcj2U坅ڈ!Kqj˧KJGbjO.jozW6>IIѪr RM$5Hhʼn&yzwz$PǍi']_Ktkm+_عm͝EaP|  wHLzb1;8 n-q_-Qϳ_3Bfw(0:E.!ݢ3TnحS\rxAor! 2IjCs)ip2߾e[ ᮺ\5),^]sBpnV]g`>I1E]:Qh8_7*w]=h0M?[aӾRŧF m<%MT(~o1py>^St{މ[mccd}$2_j[?fd6[Ym nh^%eؼ~4fh=ҷ"Ba21uy6G0hi#w]nz Vv oGך}/ɇ <<>dΡSfF3AɦBdS ǵ>teM 0LqԶ}ٰT:6@}q;Lŏ:vDpVph )/|>J/~8т13ahj1lN,NK:?bpa|X6w.}dTΆ#<5#wk;ҟq+w5~"nI>]|ΥB~IQs[!_b8o`Sw)fFT176yr~rE9aNy?ά[~og);oucVx钘CD& Lnc$pfy j`?e,l~a!sIb&Bqi 2׫wəb+Ϻ9o+oEr]֖:9&sUrS(-cW"|/ZvK8>>MnI&f dͪQO!a9hRʌ;SXŅu1*ic&LsrpOi]Є]X (Z|TAJdָό㡞 nf x0 )Fuj3Pd0ʎwU5$j;=ߊr)uBQf!̓[` ^6(?r+T&Kr"Cexz#R%E+.A1EH]j4y{jhOwsoXڬ>(M#&p`dGS$\ LBuf-w;Ѱ6PX ʤdW>DuAY%\KsF#Bwl)Vro>$U[{cR*^fS;hMT myte<3ʿ`D}zS͎mǞ> (`'rtR?z! C?]')Y6}GH2`* r-[1G P0!A[g-a(8&daeZ]fvo=O78zv#;!|yKɾ Cod Z7TčPi5Nq56?AyNEa1xLcLS/1 Z>GiLʉ`nzͷt~=^?D~1xzf]TkZF_Ժ8Za, g`ufN鿂U&Wz9tAlJhfDX-V%'ёC:Lj] XDsϻRqc r%N n.0r~M$BUj2 z6q;?aNoڙRK9Lnd7n,|2jLhNE j*`K(}H`huÁy^_&~M$y 3 Beu/Df!B MЦh0Lqy1 :Yߴ6n>HfYM'uͲa NE; fh#e?Ulgmp첺T,fLj=(I x8*|\63@]wWF|<~Y4)xg'4"s(~rsNM҉ăTg . 6H>fPz\6|ǿĨ)mv5<ACF䲚KlkB jQmh*yPUe`f;A.5; G@ϋ)`YUF]O@`D^=J,ϱЀNjk&Mx C*e`8 tVD)^ñ\բ!IS5u[&6[-6,G_#Tpbl++EPoc| CLii@I4DLs"J悵p\\{s: ] s(Ɍ%lcbIJ 6O(ZO9ɭ$mxRA++3 ԫ G.;^.ҋ/1{.6Lis@$)A 4/)YLGr|O$߃ëWN]Ov%[27jkL1\N*|)ܐj 7U9tUlY(6*<mn!خ/2{nF}kg08!>8 J2#Y cֿIjMQ``r7@2L'kYhIm@o4~s</Q-l8ڝt>4aX@acpF7;r$aV#J[$<|V=GDݰӪ |Y̧gkqؐy+$9,h)m_DUauN*}G,; ٟE/9RIw=FH)iQ>@v fH`PƒjڣS=ex{ .a6+39,2`|(qJ5RQtŜRhvN4g7KI²=MVԷ,֎Kc 4R 8Wf  =^Dz/.G~HlJW5d892P^_턎 BGR#\бHI#ȋD(XdXK7dP^u140sF-a[d5n]%Ěu #+wdht +iV6הX;e->mfun•$[Yll9u>/ 5y9gZHS0}-GFLcJ6 Y5+њL-6X,63ZP_cHF`%@Zr,./2Y,{S(Z}CH2;*9aLHl|AY1[c]ZRq Dm!m={ G(iXb8zNXHB處tDG[^ȹNs\lJNfaѓ˝j e2м|P%4%\a&$⊱34ጉ'fN; G_iT#V!' F2}?ѫC0Yr9-);³fv70:% #طaD^MM 3pH a{ ǟU~5F4 <FG>{ E A\ϻI,{n "JnDI#gXalK*w{fHL<=,xrZυ/d>*ZKxѤΟpE$Sr "jza[fEƵ V܏t\H8Tsv ARq+o FBXT8=,,Q&xߟOG"0]?l^%XX Os46@Qd8GB\hE;I R3$فm-.KC7t~5*Qx͛ > <~o!|ґ˱PwH*JEK*CrSơ__7UB}7w!,/Kv'8Y~@.@SVx)yN-0`9R1GB_-q÷|E,^RnՐ3W.O-5jAOU@i%Zɪ kxҧ}j<`UkTzQ R)d`qr)°a泹JGb$h8( T2]8u؛x  I=+iP^*j #?Ur\ı^|QMT<jj+K"\o^*a5QI`77//xDt_0 Co8 !u*}UK!y]VYSSC$h$ݏp /Y+c43Mby`w/P3d׆Fsi5Dc>vhϱ-BmAOJMS|W\):<3AKMѰ<fQP.<)TȔkzd1jЋg$$]HeO2/@)29)b+) gw4.E9qs+YP?rBc-PȬEM Z7Ȫq7LܰfϪZO+IF҈W:-Zq;6+h*)JY(* LU ;ͥp*A.ČYBEol[th/=o[s.@Q/Sn4 !l4NP"Q"= .ʼ=q改hƹn (.kD.%3s ?Bd-攮 uZʼ@rWHCOq;xGs>X YOY!ТG@ES16Ԝ4  "_"| xVf2D49D_5H:}mZ 8}s&eo0~/֯@N, <@/ݖLZ /0*EM tMDN*dF5@1Cti/)UK1CK~á.Mh 5[p1U GZ `RV4>}n>nl6hk9N2"s15pȌu0ܠ(j~@ӏ2PΛV.Xh0'ܮ&g?:mnF)=@.3b3#s^Mibe˞zI(P\Jp[xB3Vv,]XV2ɼ8#2~mJ07(d\`D{RvŴp bk6+D8oX0m<pfm3r}1Π߶>FQw)׃G' ?@il7r$k+ <}"%1أ] y>.ȭ3^9|YG9 3*]i( 'piUŧpUxDjRhYaTzjn$i7M<| ='2{#?~G)3O*3࠹ J)-iL0Ӹ_(U:|긋ǻCzœD_\FLڕ8ѩ#HI&s }"zA1) TIt'şIL =Q7/l8/ϻtkcZLR,V*G=ugؖERD@Ƨ^XϦ{NRLqD ,ovy/Lrƨ[P{8Gp"[b(xKCٸ@`&BG+M8r] | .sDl1 %f搴,Z,ڑȨG2 *7\GRʃHfYAJNn6 7CF qazj޺3N54^#Xt,tڅ0m Hqz)1J1;r`%;kAS/I)11{-.oRL[ݫ4G%Q2a';CU*m^4Hxg:|OHH7|ynpx12 s2c/q.5R;(Q5$)p+p*\6t/6J8M7 h~2Qx) ix`U/8L 2\/4 aEFu+ ~>6S "Ou/tJl&G `ɘQhѵoyy6`\ou}Vgfl&% }-ڠ̿H|1j%p߆13rat“c$p5Dh x:Kɲ۾ץSa+0Krȶh*7>{zf$U|4h$Ҩ4Jz=5jh-6󨖄dYҬ!&au%6P3;6Q)Rb%\`.!"gW+H ɑhj̣BL+\kXQde(\>W(Ի$2&B="q:=O 2OiP< XҳY ~x/|L#!z,tEٹ49vfq+C#;5:ZQKJ43זQ<( 9~ }*%sZcs~:eNI52GF!`y. Lk71N)z5dƝ:ÈB@sFa@›||SLy`1>܈}uS@%g:_ @'6FZhS\1w|ꗐ.J,w ,.1òHQ:vyA)?(c~"0a=-6¤e@Hw&__QgŇ f@\|awwww!‚+|×^Vӭ@u5"EiR#ڤ^`ľ~[/D8g=IN 3vF: ')Y/(,I), >T)ϲ$Ng HQA}bJ-ꉮLMoIP*d'=Uϣ^e]39 Ã/t1PI;񘛶1ȑ:}<+גplUZeCXl4'lI+%1{⧪.;B4^TaJqiM̒g (i\f izR[8Pw@(N4[[eO)/:`[@n\lpQPӗ"bl`yVwb7m>{+^S:낮2U ` =T{a *n_wwq*FR|J̸*սa^{.옹,;`>81 ?G4%se8EL@ 縝fmB=c>F=ARiq=${ 7 .=c=:'~c}," $M^ `:$·5.ɤ9Ѕ(nYHI,[DR8G,"́*)-= a.N,ap%α>!xxg\]J==}EVS ;\+7)3=A8 xmUdi7sTch:l{hXȽ{o L)"TpFR/%ɪŬ*ًSס J\L9!U *仒D\yO!u+\Zyo+'v\{=k1C֏t1(Qq9\t Cp{G3Ȑ yx2s,kP-qA a4g6[.WU-X\DJJo*qjJڱvJ[;XK^J4Cќet|hoV֣+Hfu8^= sMg̼vސRF0!0fR34>+nZwF‚ڮD33, Ĵ+G+n5 ֈAXDT M0fw*P(^JipVo׍e sɈ#6\ri:T O ll#U4 ;Γ$ֺf^rGTʐ?:0X7\d[O~o=D P z?_2Bg-Uk|GX0p`o~'$55W3rDsqqEh?f% 9bݠQ5Q)TR˲d[\Q&1U VAHzEFx!/%I(C60W5Ȍy&H#0 -Iq t*rPlCU Gێ I0_Db.Xp,1pDgMtxFxzǨa i%bXW4ʺ;̦>/=a(T9A&!_]MȵجsYd=[LQ>r0-t^  S΄մU]0kY806;%@|S,|MIVb|jGPvXlRP1#C8rK ŴLO1V9eDiټh5H7H{KSu1@3!<}QWafh.;gJATeh,V[D+f7gc(Kv@q˿[rB(r)avRlz&yb>"ii65 -#f{v "㬕,XЁb%=y@x x,Yx??a%;˜CTeq,6DK xKA -薸o؀39L?H,OUW[񉫉qM%s,ܦx".04^ny]z, D/9_R.E78[kB6`# Jie.b-(Ԩ.'VY1W5O\­ꊷ[aӕpr#_`MїʼnJ\طB=oP&><闛uTs ? _)lWs9#y P;ٛtX9ůQy9_ ~\^YfzӪ|;'AqM8Xz^kvh$dJ ͇ǁXAT*p0%:+:8c Έ,(O= Q̪YF Ѕ(W Ǘ5Æuyn`fiR)z2is]=Dv M\.-~F[wEȕi bcE9EV{ٔaZE Mɦ)I\4Ydͥ+S06TفGN)IQ6\sd!KGhCDoe:\kxւC 4¿Y1B>k⏩#PbUu(|X$3Jáf?ɀLr崞n^xɫ$@F@vO(/rl)j=DU{W2_76Cg)cz|,pό}q4qMt\  DfuC6x h=ey(VM}?KѻȇZoC[O[S$H2*UfO?>z&ﳧO<}([Mk~:9J13`/ɴdmPnY@%˅0ImG)C^.t8Ps oijk҃=Xqh-ɞ/@ .c ʝ 5rdMm{׊YGj2(LrʾjQ{, )J`jШsspWl9<e93ɰBy}*+ZD&y2?D5YgbΠi7ߓQ``॓ϵ*=sN1y-e p`3grmS;,;k;J~O'waT~-nOC??x]O~f$BUlxF?R[b! -5lxVxآ;/\VgO{K@z?[G3}<}sOdoK=?]>,67Eg?!,cۡTE0 CSyaq.]ބX}201JO74 jH;3/5K/ŸP.o?t e,'rR~.~ۅ6,UX{e |QC=2{߈0|Šs*.sHr,KƨsO[8lկZ~5qS`|.A:nϚCcF%%xeL@%s1PV6󗵧kڦvݱOأUFƈHo%D{*Ѻ]}t7^cw:PĨἾ0j.a[I9) b@S/}PM1攠'Ѿk0nHA`o}%$f?ÁPJo㙀~r;5bKpCv S3Ԭnqos/.c'?V<&oLu0fޛ^C<;͚kL C2]1H0G%;5oQ|dblg셷4O9bt[qZ̵Xɶ(.|>$А& 1H  |DҢ9_wA; Ãߋi!c[Y~^tֈgKz`zQמ yx& ]WdX2B{*Omw09x^SpgÓm\% )&\:SD0{i {3ZQUI9z\a!_PGjcyTH l@)*(ʺLRkz-zn;`]C8ׯF#*2KsG,=gRo j& \/.VYKYsK-%H]3;zP ߽*p<ܨE9Q/ K}N3".;l9lCզ=/˳ FW?nW4[7MKtB̅" xG3j6@ڜ Y)F8Nj #9¥ xwXy>e#SxANJp_ ]#ۚpyDD0 Kʧ0!G2o6dNg܇{w1nJ-}K}Rf U3vGH}$ð 0`PR9q#.a3(z;N ̽\ ^Ju.G`nX2aooNN$ܪgkKS6U?z?z3?v\aviAuE vl脑(LV&NR5d\!3j(Ԏ"DuOFl=Fu Cd!cl|fd^ZIG>wzS!.i,]G ̩ZLv~$^c-JdGd{XU|I t~ɞVg]*gz8q]DƘeI`ӓ I ('% ?1>0;NKO8ciIh 088ڣsca(:w28 VAn%O=aLo<&&N99&Lnx4-LQE23wfشkobmvF \sSGXb:_G4=L.e_K SL)X !E2/\: =uHN!o t)@5~ wgOάеM+%$(EBmH(R4bO%>5y͔ŷuwE{G F7]7x"m^96`"5ۛ4@e ,m]K$fQbkJ G/VI ;5*>m^ybg׸iC,-q󔁘Y=cp.b"1/ZFzLA$03WY3mI]'Go>d ph5QD0"X'B۴KWPX፠L>5-\RF-+̙݂8MqӤ:=A2?I,Ǒ:\_xwvĮpp˵.?\] K_*.g 1.Y83*bu C{Tf\13d@ҁR6P׋\~H*q`c+jDTmLM!'.l\á9LqxnYtjLUK d0)nՏq;s ꏥQ H*~s $g8a9Xn`e>I$87fx8j 몇譆JK~ܛͦJFvޞ0< ġ#./7xyFU-*dOtcj-'rs?OiVPyt#|2h:ي3$iu;r,B b4pP#<2Q0E2U|tSc73ߟ21$SqNp'YC>c05nVo[ij?oUW 3Jek! l]0u>]0BX ?QR#AMo1 EILkc)mu 5i)"b~!UF@24ߤx :.o%qrGS5˵J0_suE(E0q!V>1!LD:۫GIU˱y|I}rȲV͏[⒘5Ԁˠ7/֪?}^^ #M:>lQ! 1$ۧgSqd3딋U{AZ^%uyE^x; m ;gDa ͐tSȚE\0/1wNOE0.pp~ämte"?}c( rGʎm֧f]qZ2u|yUߐOP8lRɀ>ӿ oX/\磗?:U ޼_dj0.#IeW F.Yilar|UA!vrpP-Oٿ?%~c+<7an$$7| '"s?dh܇=LGyF1 O ^_bb[_X7̎%3q6';wn{cpSFa OZ G:aakd"Ip0d685|ftV z| W?0fOz=7x} '*`C3^8Ͽ!_f(Rw\Dm]x.?ۛc~¥טUB΄;_j.O`Vx_lw!šoz+lOyL}|8rYGFC#ˋ9+M6E#o糷BeaP#CabаwOZ$eqA?"8yYt(af HO+#2t-i/d=_=N5 Ì (&Y_g̶hOb3̻O+Z\?4;|A6_K10ڸ@eWQZ!Oިŗ9OQ8ׅsf(Oi;=mS@7mco)gL?F@ @bRulO7[`)Jd[5%T.!#H>X$VPRhśR^WY5e#z3ͦ5g){dTs`EOjK3# #$m2!mxM0-s;mWxstΫ@$ȯW%;x+] ܩ'dDt崞53zuĵ0&+g-f'68 |Q_#՘KtslB;r^9d5Gd/l 5'm[ WDsV4IDw6w'clF*fET30x K[g)?)%,}+#^[A?MTYq/_ٿ0H~ZJ"O*3yi>bS1by/@~E ls#KA O}i !xv3_pNF̒TgWQ^tzafcBBf.(> 6Oh>Lh> :?VߟOquis}b~WL_ݷhKvpt/Nr!/QJBichc NvS-s@bX֣joۨ:>,B'U wcRk[4yAjlh8`;V5Qb5 ƓyI(s$\oymӧ߇:=~IA FD6ؕ"LtccW9MIpgYThвC(K]v2RU)05\AeTns:c9J;xrTuC8bF^Ls rdvnSM4c {ݺt59=U34g*R)jDKjHdLBrG IAv6,g75l)K3* ! _Gu1*l5g-O2-t \*[MO è~DYucHyԈ&Wc?@8%e;sX؂^';bCKUqTqBL<-#>H$)7ߴ$VNyf V`Ѡ:v=5rT΢--YaGZޚAb?]UNC ޱ=~z}%;Cb0d!Q X&?LMn|'qRϟthu XÎ1`e[ ٲnfE6{]f(/.)PMȊ.9JK@5AcerJbI@BHJ.(?hXCCk4㖉:(nPkC#ǪCuNc;Q0pNUW+]vѮǤ!{0|/%ؚY%Dc -E2`v\c ǰPy<\4u5Ń!RgO}i}yW$\B &@lꂈHd7ջi@ٯ,%FR)֡GHbW1Ք8DHM/4&Xv E:O5n rBt~ׁ'$4|xcHszքAIm1seNr_#umOpV=P3z섺#Q.l*Ɖ xۅ=H}XQu DXYxN@erxCH>v<ŀ;K?Z[rqɆҶbv Uaȝ~.|1Ńxd8|42+g a>Ν:8R l"lTݰF3)`<Ö:anX ȕ#&.;kS+EU(+$iQIv3hڅ2]cL^ 4mFhҫD 1 ϲ"Ml"$ɁA!fJ|$k:nLcP?-o붗JJ\3쬇(w['}a$9z!q6 BbˎBjlS[,,'W@v\/Ŝ^eܕfpk);؎D4@kQF3,!3̼C 0Ҽx1bGR@hW+?\T#we`bb. &J:%P'UtSK Fnj U#@( c|(D>x7o_u#k_!se @|G(TLG([.*9sYAwbIt$I?@6\~@ټ{!x6n$9YWB.by||-vkTfm2>HNk!Ƅ7 imAif1~3wI"H$MA2`(#xVAkh -_p4%9ւg9wgH 8c[D)$*Bwlv/e'o[ir _Z0qٱޙгY05mu.;FO: O ?+ep߉"Dh?^aB͝XĴ9L"4`O)sу4bYްș͌xdRACbk&+k]ؗ*i,PF&;=HN&d!P}50jEpi-ȀG,1 kf9`4b#GnK>404Y>w\ 6g!^҉$=V**oXj/rvio^۠&Y3G%xw_F~3OfX4'Ss>sS _`wA5s}a-ԣpTx ՞ z?HcJVy%]ɖ}(ڞ㺫+@zBIK<[ =DN\r~ʊ~Rjk758F )6k3R&3vF̶>3R9M͘Jb,X PPGC39卫M/ȧòM''Iǽ+a*(T[&+́}.AϛP)wz1P ̧&Øh$z Ý9Cr? DM)"i$ `;)yW)O/>u~Q-i6; #J*cH?~g"rM4KRd$ƁzalH9ըuFŀbn9X3_ wfNEyG^\78d\`{kd#ox#+xܺKq^G/pK]xlBkaPZ 0HeC9G~ÝS!ZUOȿt S,@a>E@͞8VrRY@W#O5E`2J? $ 8T[Qϑ54&>"j]Ňzr,)It؛Lq& ehP{[?~G86 )Қ2E2yP{ȱ Bj6N> "Пf+xɉjuQBBl c1_7+b ѢP5>(O, 5YMXhOy [ɱ Hkyn7coX$*QW:^bEPD4boh^fQtJHDž-KkHo?{0(YMygχWXa vSZ\ةpWJ4(*]Zdo0h!QmCa"7:1U1j? W=$;+e~Ո`.j{k{G{-+v=p"cv%}=ZxfW86vO t ]"-WXDqҕmȏVX[Zж#9etAXyҟ:`ܜ἗4j$f3zB^3Ld4:m4aH$cswdžcs;b>i@Ec;|ZWcYWfT>?qcw&ky~vׂɗ:8wב藲v DцTohaq0V I#F$jw$$L?,pz7MTcA+Osފ#5RS̜Oe9si(e+!fRg!Xuk ZFjс$Fxd(QfJ@qk+wN(k%q. qUcU8(`]Zw9BJH턠`>ń+'I)K") x yˑ'R=Ŕ# Հ"P-'[9gK} +kqAzbe2CG%kL٘Ns6"1 ;0ە agc{uۨ+6<1 1eQILEN>Ʉ񍘜_= l-(4P\F,7ґ Io0^k)hKQe]:tl1Bb#+e{"ÙT|ª9CuQ?Co*pzԕ/)K 8ʛ»jhyM> !u΅L.G.8X@jjJB8nlf{ey:ԋ]l/=.jA͖JMȑiOY/oڟiRvP; |h Ԁ_W#{&Ny'bQ5m J7;HN`uB^;D?i.}B~jTZy_٭R'feL(t((ȹ:ET:N=D:=rZ1Eu mCk@aa3SD1`1/h[uq$ T, (JD6mR`z Ai\ !IJ[?uiy-8mH?F7yBZ߅ܠw[ár$ls7|}<1T|m4_%G&qA~7rЋÝd^]X (Z^ރ/ǹte'acp1'A[nX fvQ$Qؑ5.̶wtB'T%61p2  BzMN~Zc79fX~ۼkIp̦9^03ɼ톶B\e4B#W}Hd1x53$*Mqh J^FΊ$DiB1ԹQ!]yemSّJxK22x~2+h/%&=_E: #X(`c1F`_rB?6HDՕ8e '%ے \r:cdi~@rFqr`-_v84I=1_tѰSB#4Qrr[H27-F@ j&s) \t 4ǀ ?wzPj[P.#Z $ =G0`'!N  b^m0qY%KSLtcR\;et1ZSؒJ m_L K9ݜA 3`M&rR~ׂMuHNqn23*.3;kuBќ^e=QH#ڔB$%d35bpV0bTr" 3|PRa(z T]/|!G`hk׀GVDUk:NL% f. GjՌ wR<V݅Lb ͼF|L=PiaJbL.h։' 8NL zB S'L`JjֿD0YF$U̪9aQ7|hN'75p ʘU7W VEHldh 1Ig9{DžV&)0]$aGDR{ F UbwG 6 F .r0RWtqlPt&c()̸.sKȇ۷[>A1gcS9pںU9J ON !±s*zGk &JN%I*n#F`sH[aADd D,ZJ $1G7~ȱF"-,_Mnsv®f%B#I+@oz&_1)!鸸 qlQvGErÄIP-A]$ FK@ihwYX mw&jpB z~~n".}N1}L&b-ǃnN(s6K^ {<EA&.RPqڞsCZ_~zuxzp1PFD{ BpƤ-4'JSЫzTȻƜ\/ 8zÃoN^zO<@* y%$0æP!*G不ocoV0զ 4,JA k(G9/hs(iPlު+aˊZGU^|0*2\}cٔ/81p96 @|^Y .LꎉҺ+:[ָyh 6JhäoީVVGU;~j]N6{7fe(lɹZD=/i#>uϮ-ǝ$zĺ+S: _ssgAIN^oN#Lw9=o2 mA쵨bа/qd8IK[/˘ؗ>K >ߺpAydJچ[ 2$#̭ 2z2GrbcΩv佳e%Ysթ(gBǸ)cg@`6X7Ra=Cx3҈=ݫ9G&KJIx"KzLTYUB$􆅃fXe呧T7]kq2SQb%l;OnfǥH5%T":7jGdO W 0iXӃbpvL5DϠ>])@.Nx&GRm/0 ?欥XpRrc N0N^2ih( P,H9S -Bh`јnbeJ&Z}cI]JT$uBUx[kƳ jhZv{q d܌qq|aB`NAL'mάn``B[_Bi H & ;5,|*P;T'a*;9^LFQQxx#JwUn~4`ὨWPd,Z] ܆RYX>=-KnDOž$哧@xqRSxsN ԒN)h^ٮr_|4fZ1hz927 ?Gs&ts5N!ld֖?zY6m>h8zZiIa])E*D۠~PcRG&^J$sйBo˹w} N o K 6w&,wV' cO/fb^tUmz ap`hNF% c:]6C0kvh(U?I>2\e׈}] ArN-IQxM쉕b?,$9)Z|`֯QPyeA^:&P#6L*jz}D'6ȷ+"(F>a SZ/@=xs=U_s(>J-qthJN2s/if28sj\9w &ִݓgL!_>04 bB,=+7;ȶap'xc'ڒ/U4Vh; cX5 rʇ@~ȧHLmE ~1E7;ǵ+#zUQtQtHMܑEMR"(N;jE},O+5w;+n/Z:~ _"hXI_kZ[-֓IKԼ7S)>Rtݗ"7cwȑmR,<eL/Q QC꽘P۵8cb ~Fl8Ҡ0]U ;}! kK*TAaAk,5}}z@eWAu)=)lXsvU}t8zCXXy]sG zbBcd¨)CDž?Ҧ- ɱSNJˢ(%oWuB0M>I67hӐ9:9[К{SKPP=~fGR/n[g$~R #[.I9`u! әŖB$ԫ}Iޤ!N+v[5J@f``*6c%E?o+ d_!—b9ao1Wx٨\.dO{-@$>|' ցQ1@6;A7o\,Dz-e$>IqIbw4)c?R׶R=@jq?"/@L V`=YEeYqڡW.fW'::C+yZP_W l&2&?kHmD}hyf[/A>v@ "Wha)~YHpfRtG^W3M Ԝ;}nmO5Yne0>ĉoqȻjk5%wDPD6N߇p, RYW'x67#1>lt|ǸQRl5D>hqp5٨GeuQsx )6+DY.-ғř|Ǹ\q98k!I&$h W9懅W%qfnLP3 U7# Կ,"{,hSǻ G6DdY_00Ig=y*Uʱ\Q XMUsnq:Ey]$O ,рqߍ[';@6%iq_kBS?7MC$GsJ lR)x%÷ /wˊ]d Hsr:1jvC;/s.Q>HW:[߱(&ezq1Oo *VFDTHe5wLO C.j|;K^6MΤgѳC&yrVF~m$);EMOotH@C94Ͳ_M4fDJ2HGg7ND[u2 /2/< !t|--O!- 'GDɟB*lc&;-vW$6*3W-WCI/dsWc:s~-7w)fA$r4 5n=o8j*4ؒմ4üOBι7*5PUzȃ%4*- uZ:jOܲg2N 8u܃ܲd1b@-ZB]uvȨVtON$bN".1K,_L\4T(e90&}NCe_<v֎eߒBY_4䑹@Iva6MSlGhSQA?к;AK۲8^SkyLVL:Ǥ4gn'FQd0P> #0tsTE 'k=֦}$3ê # 'OʀT***45?/n :^;PAeYSH%]ްa[V[kzM`^|B=miD {+y2X- uG.ȡgDh)`&ȷ(x $>Sl<Ͷ }W3H4krQp t4\lMHʜ$lqV9wz8>^ˏc'ے>/ff46#[ީXX, pcd:֯O1gʗ܁P^o?ńHΔPz=0> gmr n t]՟gP}oTg-z$^:s' .WJ%'r`ȘݭXrg܋(4WmHFŬ!-`8C$NFDũѩ8{0!! &XpL]|9y.p>| 9 ߤȏ@DWR,> Zf> Q{&JZ6X %0YĻ(I YU5<[%9ˇU3hŻn[|p5 YkHKFYj&d\Vö]^&jstAGR 7O5)4]5}.=|}˓ jpb.P5Cd`%iR DTt t1~ZtnDRŬz e;吤DwIN  VgKFɋl'㩜j?AsSx;9%VјD\fCKjǼg6vn!3XU_ !ٸcDs`Xi25+bDiF'M'yҟ§'Ni4|uo7j>o>} @}+5O|Pq+okjL7MMnլbgz wj ^Փ җgA`2n1@gj?j ~PghװG:Y5IӃ4YjҘ7-,X+xv| ,qwX~3?>0Y4p ~6O8>u":ݏg cί dqSZʓ^4^9>?÷ݹ/9W͟+Ľat^8Js8ʢwE|}m:p ]8&2|GLX;s~18Kږ, U#)G \-ލKԦɐKEoyog-ʴ\pg0N` dnG byׁeCjE1 X%JI|"R^47sU5V϶ ^KMecE[-̅ݘZjFl`[4Њ[-No;b{ ;㜠a*|Fl'+aKkv`?~w`,&C #;I.-I+V+QR &rB Vs u3#NYYaXb԰J,LxxIL|Odme{&%]J\04A&̺W,g|&HH>bP{;~ 5Q1vrYx臲hiȾ.1j6Qs րД&YL드O'*l4Go j ǟ_JhaŤT7ju;-;?ԦvĔnuk^U^HeUL#ţ/lO%zT2 MI EQ*vh`9a97 j# _՟!ȥ7n8:*\Nq5g 3,ć!,S.Ks:WNn4,=t"+7WxeR_$ )K*)g&귖e/B[T5Bb W Aish˿(Q?09 ֏lmZYExElˊhZFQݕ}{Z??ϪnB13C%lJBw|˞=>oHJqRܨ:ͯM҄ߊr@ugQ.o)=#XFOW37H</}<0+*|zf>Ꮬ`$(O#UVCΠ84WlZjbRAC9(j[­ܝ9FTda PvsR})jUSɎ/^y묚fEtkI罪oިocHQg:;=CC=:S.[#=әjM{\Uv)B]$F"sfZ!AU)'1rƒ``D#5D yc\Xtj3Os.T*.!\w8zKqašr?C܆b&7dRzղ=-k0F!T0CE3h2]Lq>UXY}u\}N^5Rޛ !~{'Q^g`90emNՑVXP5$XNr "?ܪ@'\1!:&#Jc]``|AHFAŤnYN9 īs$J=wXx/Sn <Wch(D_CX疦A&ebz$0$X6hd!EA҃4aX븚 h"ʡ"U3>k޵Uo8 %F(xX5K`sv%=R(ftCg*)J(ĄMɬru9?qI r n7m'Hz1M >0=LAe(^&QdCuh3q41 \]RZ janzSYl{,ʔ旧zdhT}Mcupw'2ۤzXUGL:`IjU* Z7w Y9$I%a,x;|JFZQ2jp$0~ Dn_bZSa9\ar+jjKec%C m,tKZ ؀S^a_?:N.Sqpr<1bD?/ Puކ:b4H-߫ķ ٘J S5g>~9/S?e,v2&"YyQ<[.!al;<_ Rhz1?G숦WVG؀ -`fc02?c" #o6pEo )b9 JŠ|fKN ;])M+*w{k 8iLs4ՂCKN;S$deu7bT$ڥzŭ!6xyXeɟ+ Iik:M${h:OC"W)|;t5v0 48{rC7퓳N ܡ!8PtpAiM6ເ! zy.4&vG8ÞK9&+v0~~yVĭŸUmDG?pҽd)@qWP vTe\(7qN+#V2R F0x m,"kHq >M8LV{&O\^FGSEB&tH1,(M4DhȇЖ  !cŗ;pxהKBY[;8k!KF4c9D;A߁׽ggXʙ0Bv^ O> UnZؙi K Z(m:va~2ЈU]hVzf7Ake(PE?pWRP@6Pb@QDABz-Btgc 㶌Jzt;1".9A'7C#!/0$X逑"c`%ֹf5޿ǜx'̉hZ-߄.⾅J{.v ]4x p˕ٞ3dzaN*s"dž5Y?k0IIJ-RO"W͜/ ~^EiUj.Λ,TZd| VAHMh)X-nFBhcK ilJbC 6Q!Hâ!rzMH  | &W!?0QzpAU]]a BQ76oCN:{~t3% erMV^.%= >ji> y6 Ϡi:Xza!BM mv;^hE[H2οkS|6nݑ&ņpe.Pp>3#G-MLjUǤzq?c![oJ22 .#~^upD+j.ˋX !6zNxML05pڕ$ZԵ7LĆP,DS4X+} ! TQ?eJ~Q/?!!E[}qn6"hv Cx9:gW٤5凈zxRmi-7-U3F%`K6 1y Yu8y@?<-vL?y,xC' } mjЋ eMf7ȅwEh``~O1jXܰ5\_$Ee}_e^ƴ^  kG6=o&a@(DVW͚>КauQBumv] ph7]DS1{F/Ic 4fXbbVό9쑋A챻+{8Fp@:rs4MQd~][`;C(~ Ш,~#: 334}Éo:)v `8A>-F>*fxE7xu%Y W_VSJ%FbOiz, ;zT?-m``Ae5 OFXtǃX|:=sM8u\/OAQ wtܩBb%m؈s15q۵B?qJjE.y-KN_wn$B!6&}ɟHP;)]Xn42R# F  R4a 7Оg>A[(8mimFѦ݃6-7<ڗţ} B}[%8c]j%mP# |9۰"wK$ z\=gBah8 Ϋ9x`c74!r,j\=c3S;]Y19dbÔXn+K撥rnH+LY/P.}}jmۿe >4$ -Yv8&b}5J``>,LJILь˶%jafNY(zm7~pSNϸ&AkxǫP]@JԦŷ@y/IQUCV[F (I/8f7L8;׀ZvV]Nv7c 3!\G-0DP iQs0W%hd ˋ).v*ũY %c\\aF 9j4˚̼?aa!A :I|"_hy((Q ^=yjG 1`P6qxFm DZ aaki\*b \C4<@{G8y,NdY<ŵnPh1« AZdZM@*'> ³.'\ r2/s(v!1M*C_ 6;eª:a qAI?OWĦ#BX3. -Ufo '{)%s4T{0Bjhfu~cc̈́Sx1Ո*H$ʅtV$xTAURS"OتXK:LT c[SZd#9^&PQa=eTBΪ9eFe;hLɧɝ`YFF@0lt 4仕My.&[rօS^MF\3 q*bNZ<9ဘ&;?]ڎ(A gS ^X 堇hpP7P./r"s+wa|#C!\ȠyFfAH917%`.ӾTbH.#R*؈ϫf-Z΀UGJ$%69z I{4Fb^THzA?^y-)yx@;.r8KqՄLYaAjZsÙvok+wXزsXvc]]À|O PZx o "1 b~|ŃUɶPpA70~7K`[vR3ל fg0' R;Å۝#~t5^@A֮FG DK&S x\#ɩ-o=C,JYٷ2C! R/0V7z\.h~J sw&s'⍼鈚 gs"RWB7"; k#좍< DCk寐uR Mpϗ|Z׏JHۖb(pVv}C I3 z\*9P`v%Y%("'шȡ6tdyrFW,h;A'qzV&|arl:6lW? }Y/-bfoʘ 4o7IG+ZhjD/ZDfiaphs5ÏHAbF^D2HAQ3ł>2/\>hD%oixp|6iGJoH]SR0#Z+ Pnwr7yKXT֓'n)Hǩ]3ۭ,S(,!ARc4|r`"a%TVq@x'ddgXU?W䍘= bu8lv9EѷoPR5?QYԡ蕺p=c7 ˑC.Z+GSn:$ akι$T:0g4NvȹZO |Ҫ灯|fA`xҶ%>.j||u%#i˙[ QX}xn=SOob4UVR֘q32$֦7O.l bMM v[V7!I9muCUF!yWjljb"G|6 r d1ck ).A#uLe#CJ_ΦG[\agAusTŌCa/Q쏃k@k T(/.g^M3WFY ')&,:q$+hNuq>*YRx@Wf7poF9+h|0v7\Yw(gl:yq<*A[}R ͰJ=t輷 v|X+7lBZyX~¦W7@H:[g@"rrpB޹pHTTZr(8Ø匝@´7 OPՉGɈ!$`h,a`xߐ^vH_7up |σ 2'+.!#ճh^ó(s"t078oц=DV@%=qaJܦha\J醈B$ߑix5ؑp8/@<0bN `6m;ayd'2h?4 ',(t%&H tj@h\$;,9\e:+<*zm?OL5*|eY1v=KL&h> |_b&!1*DiUՎ9ٚu3*>L4?Vp<,է%ǠvBcEDimfxIcn"5TSC(~-'/t m^ƥ([oއQ;1{S ^grrꙙeܥ1 pKbx-TfLI/?wmg+č`- &u|9io)V pO9tLq17<09~xƱ{0o}z&C$G7;k\EA;T' %bߘIzQ:"e"rRp)Wp|{ֱ:gy(]뙗;C&vFh{Jx"YVb DΑ.a7 J!oHwC![t ]tqj4U}!>\NI W0RWY"ގ5Gkucj&izmm犂sW :S%n;;|s>}}=Zb9(/|79=8|p@`<˟׿{毙q4mKEj 7g na?ѫC0ٍt9s-o *Tz2.#?& QV9p ![LW*&{ϯ9|}#)o <8 .(Äۣ}僀LhR ,%T,z_U5ƭ%lvS3 |/H(ؐ0 E`Dߡ%>I4r넇tl(.^pqUKsC*ױZZon.u{A7`̈́OOc v" zMٗT洫8n.E\sJTwn:.eڋ[otuނ_o˅%[K\7uXp'jZ&&jLYЖH4CB!~u'?Lr˕)dؿ8nH#y)ЕnYs]hkNN$Q$~$xo)!͙/ PGxP'eG95!|.->`Clg !wsKZb19_?,Y 솆wPy/SJtTr6тDޗ,hwY3L0_ze`f&Љ_ Jν"̹{Vh>x\S&֫_2plΦyo¤h~=?2thZ5V;m{ձPoܣ%6_XF $LH.x (4̻Xi5͆ toԜS]! /08S/Weq_R@׼&fN6f$1% o^6ga1X[xSџ{^]a Q*CVd:橔jL/߰Wa=D SX 1ĴYsU!u;Y(c`{Sv 03JUx՞K LVSvŁ"LB>Vr]Rn@XGmQᨚd N.KtzLYS֎9@yiX?'n;3"R@Wr4Ìi65&PtE  2xtzh%X;Uհ}f R]u12YSI v+YOLņWpB4M.Ur)ɝy\Vxtqܳگ_Qؘ.AM51v>{{Nh$J3c#u"͵T-o Ķ?EK23*孆Յ3%a :`0O&zaQL.VR5}~0s6AC*y؅#ZIv}Ά|6X2H-Y$zxz&Au dcϠlSPp3&N (SdI̋0O!CՔMjnuwJX J ֘DȪwBކ7<$Kƚ^r*+]nŢĚ}7Դր3BqvBAmZn>Ln.Lu$žMRo^$TTnxIc`yxyE3Qmwel?@[M̪,>V9Ykj8tP L!HX7Y?ӂqɥj8xmQncelcnt8=?{#|f="DW ۼ7LB\wA_3&jSq!e.۱3pC+ЩC퉓^Cf.NÀc(NTHX5 vͶDq~S0́Rl.af*?c0 Q9#j fD2~G0'T֜A$$: 7W5WG]L#\%Knb ^ދt1r*nX o*nXŰarm0yr-MAX؟}f-^\㒠|pqXΤ{1[|t}?! vj{`^(. { 7/:6ApW3Pc2g|/&>l]YgWe]XR\.\{m uh;Fkk}>\Z_ R_r0WSC!D>{q ,dLI&& ̺-!AJ_Fk @puI 'hõͰǁ9"0(We=[ qG9Y~#JeVkۆ NTΞA{@BjrW&gO/ж}h|Pe دN yBÂ3ƓGrÿM  DW{g̻xEwufwwL|n|)rNj#t#>5KDP`RҺо;1!П7O& -~fi |$PK ŕ[~YNK4I"9^f݊AYHܶ@_V7uyJ_s,k1x=xa=TJލQ:>B('JcьI=ǥFu+Y52Kc|-,`!RRyn/_.VNu܆NFtL#p4[,ǿ[tn+gXLK+øgL"}@[c`kCSm',{Mc/> p'Zٸ'Ā Mڏ p_Ƶ_IVN{! ϫ঻ZǏp)@➔]SVx  2 &Ga$g miפzXH/ꂶn⑴4ꞢjY$Eϓu"VDA^^7Corw|7,v b?utS} Au0VyAuض#_.-FRLYçtB$K+#V<YnAjҥ@`9r b*xQq&FӃG,q{1~:3 U8q)H"X,B,w0o{5so(2YJLNQ_Y$Q̐D@=Pj:8hXU*CA1JR>)x%%maP2r_)mEq Oip'*{mhb sjY'BQ> 3'R0ÎXZ#*i> 9$|jR!]JȲpd1͝>O|[@3U{Sͬݲ4@U!s @uZΊjt65s &X. bvAi3н3_B706mJ]Z'8{4>D kf?u23`ԪzWK*y'J<-"h̏ 2mЄbzSQݸ_{R|i%'o+g5V؃FIo8$R~w?-<&OľK' jxϭY.B(0Jΐ %EX .僠43l҉Qhg:\Zf԰ hX3Xy}k ƝҤߖYaf|Vi6fFbxrrT(8wӎcRer?#-vkUϙpC&TDt7os&$יUoԫk0#hKx,{t kJ1h=#ׇ[w NpxpȀģUD3g cjN|k̽~5(Tx$mm!ۢf-~S>x@kܶvC/O^N.@vs]9ۺ/5J F<"V)bԹA^(ЬEйy`~|_FwgrL~#< ^9#JˡGؾ`2q4yz4،AV7br;3p˛1N21$2.Za|$ w 9SKNd@ eruëWNf[tj eߨ'QkuJ4֥hi ;""!?H_6{ bϫ+tq] *{-ISW߿~N-gJ#[ibʕ} i{SM{0z՘$*QlRHOOԊ@o)#UĂ7-5ieMZ[U}5KCY1x ,PqRqrHP2:E?!4$&*K#8MLwt##&-}(QM P*gaͺ /Ϣ+zO%J022*fRΊI,ҍ!/}w2k[╂ťA6}jRjpP -Q _&F[=%}%<qCu8ur$yO^n)F'8(*nHSވH:˱F~rO!Z|]LÍm=Y ͊C4vu^81ꑭ>$r5=RirTVJWsy7 %lt/PU)W >3xs]Re .Kru gyy1'G,4#:dk{9B!qt7Y,L IRJjQHe"L!l$V-sGb?,5K,EcL+lFO)_"l@iXV;dK {*R6FV[ߒxٟ} J'>} ^bTSqH )fhfiP%a3{}a32J$sQdI'߾;|UvR0&st!yMdJ^G }<}\Njyzzדz~9x!C-0Tb99|]R5:c\H2^K.F[6c8I-`؈69OuGo 'PD |NS҂ 6q{R;i,xjH9&+$V{\7607*J3G$lIvO;{J4<9MFD;y$mBBa2&{7&^Kp@DEVs&8!x(d^v|z1a/Sm.sLozO0"@x.:_ ˃^ ZYX!e.f,c^fQ,SE,q3{ CV:ߛoV72cX~>aa2}Jբ1%S!1TmIgf(a(>jٻ,})+6ӂ2N 5xtOV7ržFu:ovIpKB kaJb6҈MV͏v5*]B4% HZGW@QnbE8dlFg̨ġɉ+Iy_y'6be. Q)A{)3.pC D8ְA~IH5Z2;(й yuh s`x.lœWRGPXXe?cӅqH9Kvǀ+ t@e3_4,Zs['wD sY' \Z+~XdfsAL}ɊHDlx~ 4c +aZD.޶w̿ff\m=yeI ؙeZԂ&(\q'l"$ -(rbP=Ma6ωt`o2>T,~ W4 :q|߽90$FAgEu2+aD)-Rxnb6L܊8⧝hdKLnO>E ,%H ޵H iBPC2=AzQDpF>F|b0e ܠFp_Y8E> g9DЉ3\Axk >zijvK6NЕܶ.RFaXu^?U\M'p kW jj~TeyJ#D~# PN4߯!̒7mau2[OLrY\NI }dvjZ^s\L_TC )D4ѳ膰n]\5ѝ `xi75;+Pz f<@@q߾ENvad.;uWgڔ:$چB!Y4R$P:( >M7PFWv LOfLKJD0H-ֆVI[dyGw LQʐ~ʩ&}EN>?N/za+cѣˎ>rɭkFu&.Lمj=T<-.bV3 Ag>rPR(Si&ĘI^W72j>@%pKO%06w-|.$hPL/Ԥ )zzX$ I)- _ǟ2ޥu_%)h aqŬlNm]ylo|c:;Y5@ lOrm}|:iP Fxx;:fr* ΩXtVѰpHDjPanXð1HV _`4(-c*m| ,hy\w mCݸot6 9ZPs]߻-26'(l3~1$HĒKO&˪+2,ppLa==o=/Yնy] [] 'EwFn~VHǏ`ڼZex[Jۼg,fc^/KmdV?AԦzl3f+yq IФs7O ,O^zL qBh26w|'MͿ Ër?ST\cd cU5Wcy9 cA\f$y v_WFIcNv+(ҪfX|BOT ':4&!ZZc+f ? gʨ8u5(K#mFFX=ف鵞Ț.Z%Laxƥ}n_ui؁ٞs)]gk'xtJn?cM矐W*Pcq]A N)&tgJbZ^:8~0bE'ax|/-9ݓtc"ɄR*9k/.K$ {(/.g`& , 2+ E\vņN&Oo-3PĦ0iq]X30\oUm3+k,"9o -_0.xApVNlxv-Ljip[8Ɣ&0jt'9XUC:BJ8ԥ> ]Ez%\d.{@پ.Ϗɬ~r?%Vi ןGAb% DNi @a>d{ơ `wx }W&u,-5i.: ZgNB(Ti\E͉cS"|$p!@HD.A˦.(#Xօ}YYL1RPtaytH  "!Ez+oP(~߆/ZVf~WUΪaW\8#+m%@5h RA4)N1˷4t+{Z1(4rq?'_,l*d|^h]"9iI'(m޿?̎dj֠+D|@͏wfBZM>`>/:9k1Ѕ]ߟowmxN>t}A|e_>`H񳿭 pͼU)$,xV{Wkn;ZEH.a:$8}wbʷgJY"WԼ+R-q҇aQ̵yYCdRMgTW1GDO eyq^ܒ` 24Cs;`)"Z-r$GV6,05GDo}O-XSal-&74y L̫DtQssryJQK ^J5kh߿kN6mф5Kshj2Ôo3Lk+̊C̓B ~301zIڼ0_KmbNL1E$7^̬we}t@!Ǻƹ~)k~@󪉔IhRm[5Ch:-{"\*`5tE(A81xb\2buk8YeI5IwS"*}5 %Î\O92by0M'ipWByw( |VMxgGս1is7a| ̣?5@A]FIflp(Jj/s(F<Gk!fJj֌a-(\ ?;?`$Đx+xA\!$ Q;SX=/,r?Ϟ|zŇ bsXV4wvBGԹ5'9E3ogWb 3![ۮ)1>{5iƾqt7ՌˈB(K"ns$_Јc52${52 "F*@Ζv [lf,=L =pb3*#D|vCUjlxKۺTW o{YO_~YO]'>}Vgbh4:69FDc㴰Όν.<]AS f؄0xdHlab52# 7m+Dʛz5҇FZB&\ͷrdpZnw \٠¢2LwoH]7ξtOO{O/ X$ͥ۲χ=˼"s l(^;,j$J$mXԂ"=qX]*`s );"Y0=i(b*=|lgF˥h6hZk|#? K[÷i-+v)_7tɂ.Z O`33 ȁיAI>q 햿r`K/.0Y}S_[֕نshf?VLfk8S/}l(V b 2ra&(EpyN@bӘ jjf/@~OT-E+ɢH]^!i_8榩)OHME97_9_:9$ߓvu=T_aȂ[xL X qOX7/v5XyL`PZ0eyE v C0m-,3y̓-ԟu(FxG,g3`BƷț{gRD`GIaf7tuQIN@PSk;,eQ-hG-MPl[f:#فdff|kUc>V-{=޽;/W.WW>ۗ 7-wHe.*~n;Ө6Sn hc[x7>xP|Om܀7n7 +q68V q;>lgEE>YIry#ôq$}IK ߸%,8GqM|!]өG~8z]!.FX8`ih8VV4NiX~y{w<poc^ݏɌ/ݤ(0 DmA1yQF,n^Jo6~[s23O My[$m?=D o^m.fp4g=Q Pur ~H2䱂Y o0fNZVxDk蟀wXqD쌩xfX7Gƣ~Qx/ߓ:Ft~Tl슗$js_ŷcg'<&̵BuuefiG.e1ot w i4=V46ؘpxq[C$ ȗ '.H[6P[ .q&iN.IR+ ( U0ukRvgScKBoMKKQ4 JIvXMJ[K%/V/;:T6J"K`wt]'ᯂ5UMrƪH*iES4w;W+{{7nVB{:Bv݇VaJr݁qu4:+V^Z sqj֊oU $oGodlĎ XyCݐ8wFniioZ;$하Ozx׊;Ok*ixv\,~cuL*=-^WYа.@Sk:qxt iGѧ#{~'= 4`svҐNnpk%Sc:;=Y9naF3,!h/9{9' lEu;8m(1b41~eחe{WeB2lai;eLhk!1`[g'kĨpXǁ;5fNݬ ތtY7@K7|ymŰ 6|2O5"4~b % T'~_Uj\,bG-o?_${~`my>yBSctuGiI>!!4yGt,J֑gLtcs%GGH&U]gC Yn#O6c~^ 'Рɩ}j]'r7^(=rVd9!"3[0wB+ݓ\6Mn>3l`D[4 רp_`)r.֗*I,6#h4_~w1Bs,' .WB*Лv&̳-bwMIz7;0y񣤠<$ 6VJAwr0Q5#Tnsld#S\LX~C(x~f2$jAX5m<#pi <Ư:qb?|}!ܽnv':bMi2 80*F#A`(ӿsm0A$§nqCWtzѩq rʑn W^!sfڼ;_vxLN^1 r˩a7.֠a,5]'&i84gg  |;c 7OrTȽ0<[gFgA¯gsW:"d&c7;9l F1@KѵZzVaV c6$@(6"dyTFhNKv$uk64&*fs_M!PE!{˰̡b4*Wwy}~5ڕ4rf> (EAfËO߽=zsr^LfH\LX5A-P'F+6K=r|f]mwah 6Zt?(|"MIi#;f,^=r@04MWdǚ ;)0Aׅ& l|*TGجPFqci8YNud`^;w XB` rXdZۧ0!88̳°e5u"rdTTfD7:^'[qΟ(^?"cf`h<zzNA DwE݇@Z QL^ ᘠ:Dbdj:&MMHmtj^qS8e) pLkX#F&츗䞄0G鶂6*#zokt8fe;1< # Bz N(cUY'´I#JZtUb)HIg@GՀ]^B /fbs8 r.Iݐ")g~B–1ʅCЄfJcisUcbQpbй b(PnܪM*+#6F̵:9Fiy~9bBj,zI/AN'oYX4\4/ے}` T s|6u/#Pxk:uᴟj$ !?`os>pCMڔnA,ݢPk !D磃 ~Adn{8ʻjXo~-ǃv@cfkf Ax5=g=/zVDFp vA ^r4=0aKXh195\a^w ±wNW](c,9Xgҋlkni #Y3B2X >8^'XY ڬ#2t[E7gn *B"^5lP%[IڅS5u;0q9s}`㩫gн,(g-^9Q2M=+F.O-ʳCSA ־;[`"'Đ~#=ߌ.G.)^nUT7*%.F/ i4֨tMUSCjHs#(ѕ~V27 ZªAJ.3`!Bؐu] 3Fi2`TQpy94Di܎׳p95 djWë0*qW$מKJhu TŰ:3KVyz-PCmuTy_7yy>]NY-|$d)"0ls0'{bG⪘ya4 r#u}̦1rP+PH m4]1g)V{zz-҃~!Dd 5mo) `;z+2Mhڼ/ W h\'O_ETq7nx/mQS jaqִ:3c"vnVxV@gDܬn͂gնA] ް5+@E/7, %ngaj%Zb[ iq}zeƸ8SdR{U pj 'WeӬ4Q0cZuا\b w_Ŕȯbfl,RFTIJ$~FQ> K}Ԭ# #V6oѽW.ŝ7\d'CPq͚ХDBr!Di,eÌ0/԰Aó~I, BU4F,<}Q#ʐ։,KnK;9X*ٸl\v>N/7~#CYr܊D7/ δT0vwbJZ:1oLwB6Ndn!D=\ҵ g5Vv [gOw<5,cflvn G:K*hM7~1-6N1^ fP=C;zˑ ?\_I7M5@ DpլYX¶6{;7*1?Z9JD; -UK۹-عoZ+$^*x۝ Y.3s?x9% ]q[ڏ]oj =|nV {pRW4k)L!~wL:;TY;rY#/{)${S͎?/B$:1~ܬ4Bxfm:r.a|n^Vщ^8^rcZ轭ѫ^.RɶS F`W&v)rh !OAԡ=+)ۤX/z٪/sV6}=h^ϧ r%9@:7i4PtYپeJd(-#hK5j%\8b%U:K_]Y˯]PYy!]K)Me=:WmT 2* <;˧fS3 %HV1-&Ӣ.Ѝ*`F =;hɊK; rgQ_[ u;fV,wR;.OF ;;meIC P>0e7i5 ;#bX> GW6o +d>Qv',nXUc@${JH/W¤/WF{|p1|.'Xy"G=ӯz3Æ_mβvL23|D]f%4輮~xry?1%KekD£E8lG5(T- l1 B 9svc ko 0IcOt?tyikU+!;3Z |$0.Am ˒I/t#Kd$iHk&x~ %b% G6r}'#;p8PԹ ‚_G "#LÃ;p= mG0uC'M-KKͷG=< JhH@]F9r[3s+|P:()~8[Mivā\8 \AQ 3xk fDK*<^$O5bwy+z"QJH`3fh1Q|޿&H"IåaS<όÉoqY :$z\bd}zzuMH;=iLj$&J;2Trjy&:yV3Dd݇aEjȯlg˝b}w! =jِ=1 DY %[k7HΚMBw;X2Rb c`ɂko6 xG*w)Ǟs?B':$)mHbZ.h_)j/*тlrBr-XN]ERU)J([ƙ{^KqIT$J?n&\XP~5pP$OA,!W+s h|-ڵG /){ 俩@^ɪ e >16u-^rXe`p?.Ud%v̑qXОJKݏĩhTa@])5R66t%7!/}D1T2P"O?U(+X欌.yiE쐀"ˡ{[4>'\]юbSҼTWq!BKk:ety "uOdi猠v|@;)b_Qox! 'j6.x=} ^;b·rtbѤp`/wĞS4atu/;Jأa{ͣ޲ܷ'ƈnd @3b+^ ,( &h\ȸjwc]΢ Uv,CyQ;Ǥ-畃嚳>O',U#Wۿ2 dYr:nrqnfWL,F# a3^ls$ZPȟU@:/NfV()UPIm( _& XbMV^4eQ=_},LIuTJρ<̏ q)>K'|~ ="c4XBe۱N'tV%N }ˈB.";v2e5ۤGP0V8b26JġG&Eߝ'yW %5[2jMbvhq%/>B?PNQ''x0",-l[*hXqNtr*a+N%{=`do@Fg>Y]dn" r]KҕHLnz?dz4 X(RF_"4*Ԯ7Ӽwe~ O9 g)X6ji(6$?p:ZZc q}`8 DC֕aFm9,~e'cup@ TQʮ=AFAx G BBI\X8K-@ܼ-oE~~wFdunw;LAFvOx(mɋD.,sG* #D_p:} nC^q)ٟ>+Có=@"5&bG< )<&|((+N6@6D}YcybTfV;M@ =0Y?3\KE}$o]badDtY9doOB o!WVsL0./+ ^EGä2mWsGf`&}βF6;tg1lF5շT u >;9o"/=uJ&<ӱZLڪu13AD~CQVAL&7J%w>dtQsU}]HTQźa~[8V\YdA>H]+ióGlCP9>7 L q9 b wZwFh-!^{AnPSh? Y2b55%3,.YW}ý'C7}~rILw8{`Nۄ1/NNOUթy#;8(1'pB.z~Q^ [3vƢU -QwDNd jS,wnRfdQ #j+\e:_ݚ@5,bP8b sD7L'G8\r-pA{H]Ujڇ(W9b00-`hJXO$ba*WhRX B=7cې%esԱ[#zfAs!XĭdVq)%On}bfJeg,I8c=AIYů)RaDM,(BWl>PRĺ;HTfM(Z]1_ᐝ\'5ԒFR] I!6MNN1|aP^ rХ-d,[YN\G)pfSuׂBuyL#.ٸ}3%.Skg!f%}qzv\DPgO}ߝr?pՓمRNXT 4|ZBjޫXJ.|`d)N{ 5j$[ь {2N s_{@T*P4}#E)d EUDHWh,-0WQkV-+O( w c7Ρw ֔;~qMloO3S"LhtJ(6!u[(ˬrkҨL #M_,Y ,64%pMJLT@0t& ~O#g?B}^Ε~P~[UbĚ3I ޚA;K =lUH)Qn CO^2łNj⑺x<S8$+_@H.?d>9v&0epQ_BA#ŀ}ZXB]؉CUKk-gZ(c|0 +{5|~Z᠊jgʪ&()qnN/sǣUz"݈Z2) |JScUK~BZIpH|̅GJJ4dPP I_U 8 xMv*Q"yQ_KE'K+a;`w׎+KB$n>2ȜJ1J(e)JWheɚ3A+$-R:$Dʆt|".?j5>/6Day썘GG1 fpN0Ym'p9uU78tf>2 HYϪInM3gBC-Ͽa M@ /A씊 vG8'{+buOUޑD)ȣY׹{" '`p]'USΤ>Y$0B"E7zd\@.NN ]?Jx{EF!+okQYےa7Dק:d\x*&=B(8/߮V^6  bC7}-J ESXW3a]![7!8l%,fmo`ғN9-}յqd :P,Uc'դayo#J5/eK[zQ :h&h8|O!#_ ❸BF+ZȠ?25,<ox\8Ku6ĝl`@,JDͨ{#bӍGUžNIiOad?P:c%7ott٣"![_clm3=51Ek6^hG/-5V@SW]G큺h+H¼>|@ (x)#-XRmj*Rk9h WaBAsUJiq!*. Qd?b,2%F:)Qyf%ߤ 0*˲)L &ȻF[g4+9OڤWy)Ɨ8<nõm >vf2Kt2Rgܲɣ|5cuuLF3MD>35rn6X>Y-^Wj#s4 GPu4.uVnYB>dž/'.cSJi[_|g ;V#f0 š-@Th2MZIɄ /L5Pe`HpJ0zL8tͱð1=PCi1G*`L:TOսki*bKYXRMŹ-Pl1Ax0$ ѾH"tPȴ-u)KȺ׬&|SP e,\ ( -2bZux]ӒwoAK ᯛe)^Yh5, OJ;2{pluQia?%z: zh Ҋo"l{4`V8~J>7ˍ2 c))a*[T>tO IS2Ju۵?Pv#ؓ*KL7B8\BogbsO_cj eLBf( Xm~]e9a,mVhCiE8V.NP"TG]>8AO. |7xM'+̕}Ft|.ؼ^}(/9cΣ.?T?x:C<ɇ#91GQg3{/RtE|]@t3'IL-@8 DC+W>TW+kkX )&Q`FAv7zA[7utmJ!Tl[2 IŮ\~SS}1S =pݐ9KiP.zEn#-9B*Ȱc&Bi+`kZ?[u1esrvjV/{ƻZpf*{xH;#BF>8fp־HZEdQ̅׷^gb"ޫ)NVHY^^ bPBBMD ҩ@sxpvPKG)'@L^G< 5 `,@5ruHaجedŮM(*75$Б7n8PP}`j*ÐIf68F7ttE$yWtK"=wZܱyq|tl4JA4TPx0e,| o!D;,1 a՞v(>XGmwf8<]-tg0 l &nq^~@2}ѷkgC/i_*GS ʏI#ssʭ] ]|J@KwSSJ' ' lBGc3T-B2 ĪIی: ϏJt3Y'4YSxr`LQb7ˌk{Q,՜1 `0X$7bЋᄈ=?\̿IerW8)%mF0-NWi#  dQWC!z = %2]F ޹~^nbBy ٪OJQe#FܨU): #K(Aў76R$\$L)0i9IR0W"iW@p p2A;T9 [h a{?p6B(. S)<r!W*zk}o Q?c{2CN.`*LTĞs4铺K;싨Y=}`.?.>1):V* 4rVbtxd~hy1iXˀj+0zF9kYlec0 SuXl|b|4&3 48wGEI&qis-&ߌaশmsµLYTodE)WZW♱ChDy-7 !\1&wl0 R(Nh;+NJ5òT`&MS¨-ěH6ШÌM+&~ΩeWE|wLװLΩ4#hXVwz߼8:]Bq|\{ܴڐfljhFcܼyk5Hi%<. (d'gĽs/ItbDF4"3glgvj=U}f% : ` AlZ͝ԕ47`@9 ;wYigRoe>8!Ds&bY L~25ug`5[,K]1'ֿ,lMLcF)E}Vn*SwEWm,@9c֏c s7 ;)v\YIQgd Aݺf~q?9ցJ'| #'ݺ౐&8)F(j#8$†@Imn橫~z鄷X'%erkD0y +2et" К{kD'm!֦]gw+\SF:Oᅨ7VƯc 338(``50?%jR 8A:|/ oc,z"U<eU'~"ebeZ[)t Αw;'6c#fU <2/Os-bGIdJtl.1^8F_Qlm#FhK'ax=8m5~JP]8 =L 7N$o6t 4SS"?f# :qӆ*;S1v1$+rS Q1:AƴnGCg O L@@I}r]!n-( q%O]wG/i{#!ֱ&{p >Gǣ4E$-P-vyt:il1|Vt+ӑYߖJBsMUTC.&V-ʁ)*i] ::8۲ܙt O:F^sލV;UHt:'KRՄ$cSǪ9Wuj]#]WǪѦmRs9#"*.VG峑bq*hQS3C"ȥ!ЎiǏ>-IBA3a"6_DZZH%)9zzZ  Ψ#kț:@&tYlM>Uˊ:ꍖC US87-wę_4QeQ:NqĖ]Ә,{)pQZrjC}2QR ze4jo:`7JM]zȸ$B!ؚ@FgҢNXhwpk XcUC)nn%ie)I9R@@*ybÛ. 4"6g +%UqJ *-U~3% =S1M۔&%>[ՌŰ}9B![JZ*?̓8ajQC9M]KQ0}B 6 a})2HbVY1T:W04O-+1޷h$=<&i!~Xmi"r1rK*+Sɦخ[[-:GZxz WN'7>&\Vl5wۢVd$]ًG?;>bcg0-cSE`֊m- $~d{o:tw<]5VmOkt['-П&!Ȯ*4?z k[\z8JJFG̯sЫۼHً#훦Fblfe48 %6Ipz,cGZrƫt*w/YZn2BeKoŽ)ʍ~r t)6nrkeqf;o Kx޵ͯXȓ3<͈0ƌC捱ƛ*5D;99WОf };`i*E8diӻizL*($E2Z|u#`y7LμgػEmevP5ֳ׭&EVS=/u]ӳڎU672?z!ky*G)|,ΐz8yQo(sSQ:zkǽ^5}Sb},] )hk60_ U=OvGQ]')M-@e/PQ-q l\  v.p e6c%lN9L>ϓ9gbgأ3͔xdqIHÖ~أ@XN\)䱈Wp\Ե[-d~]x!"<j?o9TV .c ziC|e#e&ó\Y|dWr|UE`9<+(V\jOI p \{7l F=G̫[S^EUtkwhE;H.yUhԽ3r$|uˀ<2,w3:.dvș\^91Ք"EP^u廃#wW^?\@Guw(Jf̢e+r>{.W69O,m,"`5凓wҖ5fQPejF2HL t+-d'fOX_tgwлeG6nb!ki|c{Z+g3 YV.h1ԅy/ Swm̦~ŒXq~,^~6/ 'egLvB;iωf4CEg_84h#jfW[>^OO_pw`{hN:5Lgʳ\E\"u9w}+h ~QEذ}DwSS Ee :D_Gydmq)x8q='䦹XwbDSp0ڂl~v.2埝Qb=>x0z9EK:(sX E!TX~ ]aZIO%)6 Ymo}m5bn{~w=TM~sJGa:ctq*5jO?ANJMj[Ԣc]CE_,{D8e-y5٭g:b>Z^c:}n+Tlע80` ֖B'aZIzEYWv~x +yV{r 9#wFNdkl8,G ڍ(#y1"P@X]#L\oŠF;o]'2bAUnlºT6}ocQ^/Uwt`o+6M7OT [,2bhZRHEvc-NVS|+AEAQ)/<%>ߥX+iK}G[t/4 Xk3;/gf =’O.em#; ݔ*?CgBQԥj%+vc<9j|'?[0>usQ>=頤w?I}.Vy .zGX{:𪉰Ӌ.s6ߵݟ@qGQ^6bwvq~via N?iv G}PڟΎy>9E:0ڝf<>;|hqZ(*u2'OÏ+~q>yqJS oi^7%!ExkX8Nw8p` u:jI?SE?\a5?5? $c9m[x84iwiաy@O[0sD ?$alIqC47|zJ@ # P^QS PNZ &0!Z@OM PŘ:Y ]ͪۥfԆ6|+}vOnI<K:}{k5va`/qف~P*`,/6B?!4!k:BqrZ~c߰jYa&,!{t5th);5PzFtmSfI*57 ve&jIK^&*N>VTu`a],$>5i޽?>mv GgTT} NԂޥr*tŗJ=eVYeMt_;񮥭g(pi;NF [W4QCzS AD&뱃a(\o( Xt0 S!r}7q{@Cix}Τ9@pszqr;9O6؍Ěaşݡx(O)?W^(o:pO;ݶ;#lJ9<ԍ[,EDf((>G5&Q${ b0?:?۝.r9]Z `g˂l?VIV|tp5_`Y-% QEwGuDa |q ;Yvr!ӽ&.ƶ"z>L8ť+\WB{ڷ6[?bs7&P*hhI""7A] nDM[|J'q![WYQΈBmJp&snR7[\x37_ }lx/86VVߡ2ܒٴɀv+X/6ti96 ) {NEgU~q'0;w$ˎd2-\: }]Fu&K߹Aՙޭ%k afe{HMPIϷ&ti /p9e@\d,(4:Ȍak~6Wj觸0?DIQ3Ị't낝ώ/0U>w^NL$!!IXRk;(i9 "lLLqSz;'"<%?]VYcDVnTo~nE`m iAHF2V\tw `s/&0׺w"D:8kI‚T$~t&^j,$YLy¢-,UH‘'JDTyYŎ"<^٦sxى"Ibiom=h2$mGA*u].)*"D$2%krY.tϹdI\VQKdKު30iLs0rVZ[u'MI-SQ*ebSUf4~#~ѬhrŮ<͗wTJ$EI*.>Ӻŧ\B)Zl$2P떖2i e@ꏭV, :2QV@4/vxp9w!LKaT-͂G[3ϔּYQN*_2RV[id,#-(^ՊR,1?ԷLJsRUFsM:+A@^ nƌZW͊r@.,M5pVC ,U HnEןMv()pGK=ΑS҉$Yvh <8Mcj↳q ;B> c5Hda=ӽVqGH5~=kM=%yx =!f.{0~"ŗNا&" D'X7ntKl_0]GoT`E3mmt<<6ΛV}w>(r+> /hdZMN?+Kx( wPKyrаA1BdRduq W9ne` 4"X( E]Rİ /,$1KGb8.WH)AT"`.͏i̹quzz9PMR2,ֿפ:f%!p4 QFw;4q:xz\4}]nvM)肤*S v̩3H23E2n_s~kǷ%e{cfe8s[8 ҝP#'IySߊSS=x?% B&DC}Қ$֥ |sYMΈf?_n %̏e|~мX[Rp&Y6ohzI3':jp/ 2: &״з̻O¨Ž*~BkA$&l%]$Ȉp2E.)uA nx|Wx>=DAWnW'wB fa0H+rgߔv$w7r847<>˼%Qƽێg 8lb=ݶޭC[tp eIPq7P*r1̉{c;UWgHH;E;an*2U_\ރLz>rCw&}x|!ny3(eQ1q7eRG;H<C5Z ǴG+Nn x  ؿp8r*P(A:_Ղ˽RPR` j7RK"VRR+ZќΈ¹@6p"(lHd AFF1f))9HgOTz3f !x #WLCsu/f_Rw3£ oOAyfPM='ot/mVm %`&=Kyt9u._.MP͑1XbHkD-tM\# H6)LTȐiwaRɄ5< OvGWwDžp:hŵg eƘtmw3zQ.O\hK;$A\!nyz4!Ki^x0EĎ6kaTAy}\UFB&93?9}"JG*V䒓r}J587f) 4L6"G3 ?v}>%y(Eb,; Gdq0)@,`OB\,21cAG=<g<ś.0 ۨD>*rKesśZI?5Ot8ď{yZf)#_{Čy F2gRF}W`CV赏Z ={Ȍѣ*Q^ŌYY^Ag0z1C |{XAC1j51(i !@|c\bRy(?Hl$De37xTS7,)o&>R?r1ݼqnWjFY'!ЉZU@p'`.Xrj:dXlR$1:M͹\p[0' ]聸t?~juۇU&Vڠ#Ģb;3q@;cc:<\Ro4Y7uy/:W|7:;n5Ov:z%1/ӵI0jIkYJcOcg1"rE3Q(ڸID 1\ R?j+TOp7H7[g>v5T+/eETa'.>+tEazdsx]R2 (+ӕ8. 7z%($\^i_KٸINʒ&\s`޸AY?Nn@{R/{N* DJmlW*8}B᥇%ok30Q**]4e3%"1Ee k PH 7_vj:T'C\"1+uk8x f濃dŃ)HqB #ocn[8Do_cҢ,E7PCL8ɧm$LVVW}3 3lSf ➪c(ۨ1:"Nai],FsޢggTs|hH_HDB&}'7j-Mo[ܙgopUWaOBη.ړQs 3S4nV2Y{ 3Rs%LDsd|ܝ)9"o)Ʉ: ~-/ix<͙ל ()R%1۬J4]@R,uD"`e~RKsy˔a< e.X_:"墥yp}Pa5rMxk]H-*xaTwF$lf0 RӔ5IΥ7,N*M &զ ĹZ` |u!MUU]zȱ'TRC~\1xUQZCvFT_f9n@qE;V5SD5%erLu *H y"@wKig>$]9H`^]n)~j<19L]'EfONu{@rm4(bΙg8(d6|=+;7i{uŜ30?$hw`-Isp3sDomҭi9lԛB72 1Hom,̾ TR{>f= | L 76 4x.AOEIsq⃺vO>Q3BX*$CQK|Hwo|ԇ<Sid|`7o|ՇOXLes#jbfu1_dz*{"]1@X^Da26q6G>)ˍ7LF$f4>aˋmkAPY^Li:-ۈHZN mevBcwX.ƥfx.(1)."R@!.Fm*Ŧ,N*>?ה+bwo=q8 1.F_mh ,zcef}-X$ FaLSY*ZsR Ǵ;àJ7qF2|̆=P7u`;OyA,bmT!,jN칓םk>_w7T~$ :wu|\Drjlj]H6mes:sI̒ŢhV/njbx{vo T ֛8~ke8kYW(Rxd&V(FWVؼ?UM&;BQ 5r0fmIqD<(Ѣ;3h')3arV}.7iN52u1wt'kG~7`D(sǝl1ٝb3EIgP% odC;mdlN<+p& XM)%[{*πcNѐH4k;HyR}I̦SN=]ރq!m}鎐?+*F4>ўZIYM\8(&L@8vzRGr{ƪxq _;8=bsm؋glRSjT%,eF20(U*~xȡӈC!Bu3ay6 1 nh=j^ozT8a}cg'`{̷La%G{=j>lihY.݉лө5thU0fSfϘ9# lIv.~hϰn 󌣆.]! Gٷ< 9iF,P@~"wOۭngQn+ⴇyDo\)م:pր锻o툡iWRh@ ĥނSDTC09HH`tB\ρ x7mvڞs)ȇ&o F@G ny]63[Ƅ,~) )j +(߻vR'n}jlu[:9MQJzc tQ';o5?Z@ꢷO:Ёu:;ouUaYw]umk?[! qy1z!vggݵpBIOX8"O옆tv܆&?5ϛ'7tQsxlǢqzG0#N Q^E9<`0~ï3N';NI`=A9h$Ēwi,A>AWG!}H2,: )%!'O)t{\wq?N@sçԺ{ =@9bE?%`, ¡u%[٬#]=!}u\LՌ4xq}̿\?*'V%^`=ߵ{V 062 DB;_*'_&[ϒtSG3+T[4Ќ0Uκ 3aI ^{t5;RA2@C6B3f2KPݿO/ʭD^Z%#`X~Q1s1ce[SQ "ˬ0&X_@ ȆQc  q"I ٗ@MB:H3XX99ƽS.?gJ>t|,#|,x#s,#q_ $D׻OSӛnExϖeEо[NOC#N0_cCua *j>0?}03tpkmYπ y6/t*z }o¤ J6 S= )|k@)@$eqzoH~Xd P ]9]OT(Qka"f y䝘L`ڸv \P3#E4r·DtEv@ͦ+0IA;@" KPNƮw5$ٰ~gA'& `a6ooK2JGM~VnCNM.A IAc+f^JR“^FP| ϢvKՁ'fBoOA:Mo ]tc#f6?\+v~uo=k1x<dI NXLp=F3H,GYښ}>x Ņw<՗Xڒ%&F$xA/iS}谆N#/Azn0 =)3d) ¯(tá,r`kaxy>QF kb[5'a:Fbv; qYxf, ݣ@jpM$q1-m=R;&;~_*@PdtG} fSm}Buz۷[9^3x34%'f #QCnE gF,.sJ"/ j'I\j~oa .t=a"SVXS/ݫ%@Φ;qQv&Q`h|#M+2&#yN0g$ J!ڤžޘI)6L$֏m@YzNRqWX`\; z)!WP@U3\/(<u=( a##6(9 c@Y%}` *~V>UzjN"s* c,e^]=Ѫ%91!RӒpdjZj?/lK˾QfD#U1&]T_p8l̩TJF [?4[xP4W{vr}7{cKƤ}My ГD!O~k -]xix}e#x'}G'mَ_yYn\tz:ovO)*+L_Np7GXHO],K=(댪 |gNttm`ԿV5^9JEw?].F |qM\k^:9FRTH̋x6/,y$ACBi}GvK(pػ{=mfP;UnӖ{pơ7JP~5-X[Ĕ7q/JL1k7 'ƼS*;bePEz|c{-_=.? ә?qpO&Y‰sIu}(1Xz,\إ~")[hEx[0G$@L$S*FZz&9M)9ɭyl#H DrA$hc#Q*tNTXn&x1:qjܬN9eݱc!xޯȅ_zg{KW?Jxo?-ę[k~y}h}(Fh#b]sLx;,R~IN1Dx0"s9[Yn+مAO2]Y,]]5~+xKJr#ծ7)<9F;] `v D^)Ƴт8yph̛k<zPRz3Y "^ DtyXxb"P,Hh3a!>%s'ݍdQ72oL[Q7@\g6Wo*׋^`N,H c{EAE6XX *<*VJ銩4[L3jR=&EA,}W Ll :9 ʫHu]A 5-ZS ?Սm-o9  SYMgmHU3=$!N]J(]hgr g~fg5?3"VhcKBVjPK0V5[!+&֬P]yb.cV|`})Q`.Z,@ ))ƭ2&)-^>/ɬPu̚n6aVH9Yl8y4sM$e^_dpUSrY<L$bUqb"&%qj"NWLDGDXqW7/V\(Me %\!,o)>"iNo-o"r|s/eOe,Uky)r/%.0(ey2*hXӛ z3״\r^RC>W,YE8#`dlZrf-F:6]1f*B{-68ېLc1Vf-,-,%_43fş`WLUd.OU7[ף/{Ypyn6ek_Y)}+ &UVMQhzWu+#l2N]*aAWFd$[26n2ܥ.7] ] F9B*OY c6jIefPenBf,~0-҆::N-ӊ\y<>6j1Jh hR|ؾ"u92R(sxUZsl-u2~UѯU}ZJ:-F{F/%y))viQX,f}8keaN#.\1}Y-`k~3{Mk{:upX>^Z/o#o'}$>:}0&F RnVₔ/\xV,|Sy M&+T+TRZn 6^!1Xn 6]!f͡[ӷLC~!XWA~!l9Y%%'[iɂB(;HK$आ>GߏIIA~`%jpA&&V'է fr8zS!wh$|ĂkCB|cV$_(7WBA-!lĚXZ8m!I ^O>v:?wB$^Z);h0`U~Spn j4*H裃r NMApḁ`únF3xF޲YD@D5r˽΃\ܐZRso$24Hes  S T9)IMDWۣGʡtxH-W_T2rG{JR)ZH9_⏗cU__veoᵍOywi<_8??Xx8b\'1f#u tMDF3fNC{\;f 7V=ls?K*SP;t0KC14u=ct(1_UȻLbeBd F̫btQ:`D$'5⯂0& ٯ쭎#EsU~eß{ 4!/yC5J..s.vJpc`ĴUS%; f[RW!_\Z$8g6h^I$V[ϟUg뙕GC?ΆÑcW֟YN0|x|rLO;g=k+J&ntKe|{>~3u_^N3@OSt(nl_6g>wl¤e}TtB7zLII~RNPAI&, L7 "=\U6j[Q Y) pwE-[c?\ƃ}Q$GRH]wp!rijTֆ1.IDMKxN9*Jx)~ʣY/ #/Cg<ݧD{"z#hR}a%uC$uK9>SQlb$\y-Ʋ*֘7M%CXd20dWu?Cؖt4 mVZScȇ?O g߿ CKxC{C{2z7 OQg Q(Q4&{< 47n4ؽyh1w~dDSRΕFKPxWJV0Lj}WXcW{+fFճ&X#kY5Ye ;cϿ2?Fcss K7ϥ`YUf 3 `^R01H6 $&֫8©ۄ؀lI?|M)s`MNʨ1slu*~bR?X-oÊ5ObVye9(q`s*$%Z8MegO?5۝ӓYbqU䋕MR[N].7kqUUG }fȻٸwI;qPDFd@ g0+?n#E}f+* ZԹIJڞ=`Ӏ6F ں6ye mt~ @DpY&"0""2*R*Ap Sd\Gmi3+1o /1sʨ*WE UR%,ArP^y[ {NOp.=o$N<8gU?{ҋ?'N|RHb6]fn2;p O4EG#ݽUfHwm9|4Ze.2OV@;:E&%SmI9SX "%0wM}tQ֣(y GhS%"i|q AV.>ͧ&I#g_Q]fԮtf,9g-˜86ׯ-\Oj)#EG]-\\rgm9œh9{}W8l9";t\,5/.nx=vBj'.JݵO?g첏/%yg-KO멷p^^cZ"Jdը$z*^pmsƝi2gM- I>XT`GVbM~Z>Nx?fdх`vIlt*f%ȶlIlt*f^U07y 9 ؆J2n5$9Ue,桶y߮,άy߰ 2pDa&N^A4 ߈2O{l6CW: ~cԣo /QΓ^58%w5o@J~ )//tB-RiTF1U>Uy4[2" +w/H x =KZcטh^JQ<͑L; W)e[F/GQ#]n@nXիuIՌ‹9Yyn"iC>iC^bq[C~;&γPhU$K]q#щfd9OEg\{% 6zUlʋo d6Ml D *6"r@&4)u8U6YJQ1KI?ALI)5ʇWQ>4RE|ObYp5/gp](ǕА⽚NBQr$Q˛j;<طr})vYi$wIy3ofӭTYv6z9IMK`yJ*;]3Dvj@W}[be8Cl̜nN8H,.sY.gx ~R$/}!g/T_׃/D't{wFh H1!A|x0C}}VE@U6F#_8fPv=[3lQ K Z;$zwJI}T!YD2|] gzS85 \ʡ4ws'O0D*7\ėt}0~++Zb߰)=4.LMͯ3pmMK7TlX)^Qfkc)6ڠ8g6ͳal]Qs~ 5MPnM嚱uJwM_! +VeUMc{U?wc A7NY 5 M!i&EYKRԬs7͞{0r*i?g]}y}µuOo׃)~fAHx&a]q{@~v}"~!5}5R$a !a @zxBl?h y2j^Vv,#Exϐn%B溯5/D@:v=5=]qj/\̓BUn4-Y,(Vfqnj3FQFHu+]r&+bNy6*2_˿7C9\0)SO >buQ]lgR#4Vn̒X2h~JdM;uL 4\#煮]6\i3 WAwSɯ_ JN9q`Ws_b1#`R01Uu6(I,է%:꺈E>R>"̘8+'*SY`$f$f7 X_|$.&>Y/O̖ 50ρߛ[<)ਧr2+$S]mNedWI]ROˡZ(Pٹ)K)H_b\~4t&'gI&hgL%ͅbtA1a,,v]p>2ssD dCV/)tʾ@M2,9N ]촙z0M:: R>y0p'K.Q4;]Ʒb>yG'U 9JW^q(S'KV!"MV$B>|,&y04ige;ggRoZ>n mxM,oHW;Lهttc3I -{o[Ϭ%zI~gk_ xha/Bxm[;~6wǬ9+xs1=);r ;1>0|㎯7ͽdY2O^Єm'&J!x].NĮ:Tκ-;n9XS ~֥C6= xYZSc뜲O_lY>λJ9BY֓ѓ/Yϟ-b9Ib/y3w eZVE֍9V Xm ϊ/F%ICH"nY#h>vƞD 3A͞f5 ]o4b@'l /u02 =c48= tVSo;pb"tҐCp8n9.Yi]GPLr~t"EZY/#E=%hl|cY[h5Ji"sL,ٍյGgY3ĩ Ҭ:: Ik \n*z&Adi"MlC'jhq@Մ i{}ǘ:zk~G@x9 OIԞ41fCkǿuǺqm뉰ɩ$h -Oھq,_3,J%D]\wMt w pdf-DOR~90im[yRkس3t:ӓ^;n5;>qx[zF3ge+0Pp'lXW3D#@B3½IөЬd׬-L>H 0ٵ=ZW/<BA)Pl̄;Yߟv{VSآ}ml}"Q/Wj 1~l^<YIXϿZf'?-^h΂d(׉;I`ذάG8Z2é6p|B?OԳj ^eK<tozjƒqdٝ ?8!I['F]ERmm7 k~i(;Z)\C'Y{)#;{a&5^Vuw+u;hăif$FqsagvETSzP|&?+bo j-͛edV+fG; |c)A2AEӷ5~MAnfk$xM#̆HpANjbdF&"gB#|&eR M=% o,69XW$`k`khsъrDxz5R UIFoWx۔-#jgoBc#cby(F R/Re(XVl %Yھ=E*cgfH˩@2 QX 0I>tx3IT[7_bOaN*'3偹 cs4%* z< (|m~VnHܜOiy;jlAV܏_4/+tY?6#KwLXc`jGg%ݠ;l4A&߿::u[a>g8NRdT|~sz[CJ\m$2F,&NXc *iRѨGZ>8+ߛMԮ78wk8 j ^,b 2pЛuhVcocpcݴONϛɮe5G#ZHǿq;w.jj5RVj%f>oҝpa N L.ҿ]؃f::Hm3m#;9kM\v ~4v0yFG<ǩphs־^q8*:uh@]QϓA -?@ ]:0,#G^Fh >Gs)oq|" <(|@rod/vꜾ6] k;n1'?3(."h8-,Zl?ב @N.ZV!0 w.uEe}8=="wZOsO;DN-Q9]tD.p~qCL& ,9="=u맏-x~$h"-p{aWm]tZ'68E@?;mU ڬ矚pc?zBtIjFy{`EwS?qsbk-M1ld8]^d=9ěpwzQ&ތ{5v=4WIl^]m"ܻ`]=/kHNQnSXOSkg{7ѶBx u7셷xAR-^:[ )y|тf P/l]e)PRߪ PߗW@5%W%ATE ?d!Cs,* e%8i';7$O?I%N M_9.8V NNT3ȽͦꉟU PuMO&C|g7 ?fk}+z\ŏ0e$7fw?w!z_/}y\<^ᅰ{21e;1A4(Gg7 痩8c8sc3>S?5:=n/'/TO?ukC8 O~T?Fn{ FJ@±a/Mb<Ćiė%GH bai,r`'!:!4:}IH baAl~ 1% f:(1ky\!{ <:d{k/=]k@1[kDlG!jXXn¢ ϾpjGk<5z⁆-vv\㰆I_]޶q,2ԍ|݊MН z#`4)ߛ٣Ԁ< ml  '!)GڑS;0sG!ВG`+$A&VLj+.SklNlxO=]0R']_T״yXm+K X=dYz" x+^TWgZW J *V{jˋK5PoB7H.$ӱ!_.:.Q,!^je_P65/kg΅΂3^ ۢս=U16 CK53Kj/Agsluknun5 ,!>SX_1[w={e(HõsZ/2ЕwܔȖe}v|13mړ/؋B9NbX8*@P\ @DSj=^ж^I$F>,׍PG'"O_êx`4Ns$ӗ'>u&޿)FFTSǨ Qjt ?%}*W],(;.G2¼^.oBuޭOLhz=TP5X8=\)T*=^?'⺰8fH7$H 5VC`ĵ sq9~IkImG&($͌!f.BB@sD>xNں!y4BAg(&\n<ucf=F`;zwZݻz~  _2C36ņ \.u\.u\.u\.>% X{|Y{Y>՞%K ZN(ı_F]_`*DD?7=cy:B!^|rbˮM`%6ɆCremoV7/0~1suf[-j[Ϛ?ى[> 띵{@Xnu3LY,^J~BDX@#xz :{gedNVGuYLiE&t]o yЫfO?jU{:A˧oƌn{U^;xaݽ`٣]p2Mm}|\bO?sy`Yu1q@B@Z{vYUע.r7H'OA^z6K:"[퓣9$Q\y얒^kS}G ]{ix.X# ErLtoȸ }ƸedQS5X9}@}CTn'+7Էƶ5h<YRc࿯\.SѮG5zq6dc=R͚/:R(HI=rF >Kkep&i !ƹx)"' k"[I p{(!8Ч;Ц)>v6::Ǔ8:[UίOvLwCK޸c]7j)I|KWB䔏yiS93sU"͓]MHV&;&]yLD9#kx>2 k ,zm@{%L#"x\(>-y +pa|q! ظ5Ucr!\ ܏Ц\2Uoȵo8yj,lroX0 GjbCƾMz5j߮]t&abJ^`-\%{:WliY+~eb3lW̜ N%+€=Ű1J0@~ Zų.oJrWOM~ Y~ s3.Ʃm9.^\SXVHH%=`jUE lѨLo+秒8G9Q89օ`7j|/~:tzJ ?o@s._R55<^T"*VV|>>mFԒ{t|4ۡ=rw|ѷSan%Cߞ=35iوQ1)CYoauS$}3@U#fM5#M48$ }]l`&S[ߝ6"ܡ(+^<cQ6x,46/GrM46Ad3RfZrڀ_orفyi:No8Es6ljȖV^MD022Re!LR}eT2M;.@sm5zpԻtmeg$kW#|M#zV'o*7 ּL(A}Y{'?u뷙=1:5:`˧gLtK߱1:pێzey?^C/-vblP}1Pkt'K33j7f}zkcgtgPsgc^Bכcxڣ b1aQFy)6!& F또.H .bμNA!^GHna PIЂQ*- <+:};EQ&L@ ~lwO?ˆZGֻe vyǮuޱ'G{~w=O @͓?[uzn?tp<[>9<8j|[:9ZO.4֩_:?6ߵݟ vkZgnyn][:- ڝfShp~֏<>6] k;n1'?3(."h8׭Y밍?ق14#b\@#xi5?5?:C `y \t݋npzzD$l:CtOI R~wi'uP0m§G@d(g ׭>9`vf%IWup:9laSS^;ؠz ^Q.7c'DNяmğw\T|9q+Ѯ=ڵGhڣ]7oTE5lȽϾNNֱ{sk݃E}:Q( &s w*禱ǔ񏟬]ߙݥ]3c]4xht3 s Ի]H]8(wf ?>;g=@(`?Ğ]1)q&`hݟZ=\[f8 oa{;f^6(|$DOIa{tz Tpo; E7p87mc+mG;د^dmV_5mm_Xv@nm?{>4?:gVq?ŸkhD{@:9Afpo'{+VaB[&;'p&e۩N.'ՅO'a/dk$ؾx> KFRȥ"g{8z?؛ ݫʳG_֌{Ypiy~&@'.O;֧VmL7:w ļq 0#oHjn'9`%ѭ=;Xh&c$.':=c*kwύMv#U SfF~^I99$n8n|}jX| d;d҈^=#PÞ":މzȚsgxB U-VuAv9rv娔6\G [fLfr2Im[k_C6Cz'Eb<)-(45@u:adJ$I蠖p?TD=~xV 5Fטj{Ca+B߭{덮:{E-> C;_R_hiIFf6AZfOAF!nUO7OW@ $ߛFH&$.BEK| 0")?_ =<7NɞH$dS&_ϛz1ve3KݿzD%)KP=SsSƌR{WbDMsj^i[aVᛷ߰g|{#O~5|$ëB6A!Ne߽pl0?"NCۃ81 k6tminc)e܅ōǸJ֙AW;0g;!5˖I,!fq< 0rqjf}(ZG)}v#M;C&}'~OX]J.UK|Uf -Ў(4׎R!=;7Cv`sa(΂o" X7zr-q$AC$EhM&Ǽ3nb`y۲oڃA1a MĈs!e·QXȱJ Ij-iPDωx(ȦZDS\rA47̀xż ZiZ{h$jsLlptSY\1&5zk | ETcApwW D 'QLRx *!B|{I]@^ }-dx}7v[ZĒȾfEȅ=MxFcϟ^e@q\KxՕ\[R0_,>DC@cF`PY"ȹx$S$ǰKd`)yR@FY|$8SHZQ9SZPUD*^]U -"VdB5k߻]sLEbaP XU봱Uha)u.kхv)6ʮz~5AE-  AQ舵vE!۵@td;;p'Gl]7L{lsn0 1HOt}/Rfw?<,b c '(05!ғ7^?}qa@E2%nL-ɡޖ;L%^H o3קDb0im_%v' SE@(/IZ ea<&"6ZRc>[.{ cv`'5n5# b: Ti_ϬGRePKĽ+Cjmgeeʡ΅jCGZƽq܌ "8n)śopf|_қ[yP0<讗 ?= @HĨ\={S=[Ev{+;"j?[g] /|{KQckImLrl1%Y}FPxcz˷[*c'zNO͓.+uM]@!!A1 %3gR ujro CAAQEZ#Rs@^*oyIrFi?^Lp;6>?РΤ ]?GJm#0'=JiN\xG{"}`8\C/zSdINVb{kf>AmQ=,4N-%>T;:#IdPj􆦟)e !tS~|X^ Y*wKύ)3ޡi4Q0f~?2E1k,Lh˗Uyi$Gz0vձ9]V2&prx=A=o-s<H$_d7I/9%10Jˤc"\@SDw;HkxJwD^p3 MY(bjk P\ubBU(5c),V1Gg6'Ulfw >NJ ܂vUc^mcRp7bsL <"xij3hڙzĢjY,riijwкLed j$z-mo'Hz0 [)!@w'ze@rWCn(rLX"+~T"dPM w{b ww9"-)Z/ZQ?2$%?cRQ Tuї@.BCe@ɚ:j:rIdXb]|ܑs@JKNEVS"%6)_HɟLi׏(ޏvqKΣQ7St7]LtUR8H]An8vi~jmѼQ}]^K[Кݶ#0իqF9*|MtpeSQi򅃁7LC霾N|8zyvN?ے"ٻ(׬jD_+ZQ%AߡS)jpt6yeQ\j-R\E)/*?xwk yK.СSڸ8;}g5g7՗覮Co6 Zo3T3^Xxj@[xo SDm.j` 0 dG nfuewZXE?M*naq3[B<ϒ*nbýZ,cR<-c, ;#f:?Nu!-lC# @m$R&eS8;´pQ\f{4KB瑧"CֳFw4}z]x39 yТ>}rChcJ)Ši?UsGA_"bTgZ~NV TF؅{x-IJ\0JV7O /FɯR:dK#kk ۿYPBoRQ:2q1M-\V5{ٟN{uaթUR@f48v٥!Q4q&nv|iZbe-bwkkl2$ ©5^>SCydig:Jl*ϢKVf۾RB]6,˂i]T[d*$j>?R;)|zmXioa%'+ AC ͩ4>{bEvZ^|[s}rk˟K'עOJ')ѶdbI yWf) i^Hbp1$ƐF~ܩMb\AM<|qڲH*|MIQ1=E`\kw0;vzZ)!K6R8-¦oPL`9lc(+o,܉զӖaoL9>}v8h9;/_u5}PxZ 1!(<"ͤ$EgʜB3Lݤ2xV %AWl89XaQ ъz XVbn\no4JW̆~[U"A-v5Nab`x qx gJŌ2fcIH,Gus3׬E>f^Muz-7ɮe CV:Fya-sbax;vCM˷N.>^lT'O#eJayt*O) sJ_x+ (v3 8 9tVP"BR'drd\sU'NiUS+E% 7Wd/&㝑UkܳmqBRii(mޱ0Dx+Eq٥_f ZQ\*oJِ͕l6 U<3}~ycE9P9K|mJ|mp6^L$sO=Ѕ@ şuWT?IΞi,OɰkTY/0I=RA ;2%xdYڝPH33׭U,PZKOb0/Сq=+{, c'oe[8-6X| Փ|[}E )% =~ښ=9v8a#ҡW9uumɮ=^m 2ŔQkV@K-nf"?WZ{l kDžB=ͩZHm$8/CyÉsXH$zI(-qU&_}qs%̈\I c586dL)=Je,KBRv<&[g6K?Dۧ믬~c * nwyPƧb!jC KZ!0wv+ӕf"8BwYƒh)ӳ{Yn3mxNٻt:JѶ&`s^Y")<"Sq Ewn*"F|ʺvfyWA^UDv&"t*P _bA|Vuf"i2VM܎E@,>Vv 8+8fƛ׃͞[+|DŶ]@,[c4Dyu\?5dVy//)BN)iPGuV4_[*ƇNV1.1TϊA8 q{nYUT)%Py&~@^R 4(yGb>ׇ(Ȫd)Yv1x,BimgzҩTKӛ*)TH쪰KrOYOG|8hC eqNn0!J"r +)m _(61)$9÷'S:5RWX%;S1(WEbc2B(P4!rB'UkS{bV Z'&\i>?)C%}//, f(eC Jk5}%&\3 EȲg™ezV^^5Z<]q/-YfJDHdE8iyt:Zf&ӿlPr;m2i!e,()Y"2ԥn9nk/r*CB@m)h7.8ڡ=,Ȟ=My<-2vU`9u_,t8.ã%gJ8*fsͧqڹDw}"Ѿ+M=ti-}萣>0`Meo|AkQɏ7}[;a鋷m馩*Xp|q-V:T,:^a}o+9ʍDm\ %N#dU=.eM@$ľq;Om#!^eʎ$_c_WRYcLOvmފ^;hR: g:_I~DS2(oDg;Yd ʐoeL%: ķ!^W:KҨD//salƨ ȧQD|O{j(;Dw/x=kmn‰ eK81 QJ_j3 $mtisDO2I%-MӌfPǽ3k:jṲƪEfG3ŪQiuN>v쌜}w*ȂЊ]IPI >ƫ!JOn}ꂂ2(e{\YH+ :u3C)73^<7qt{FZ˜(Q%_V*Z$X,:cVc0`J*f<\A'c&p=VM7%ba ;y=Eߖɥ:47.[zAHZ͈C-͖vj82 UtV ;yUiǩ0a0^z~>^4{GN{zMR7 _znF5`YnrXm&rLiMf(Kcb"8ȧC.Ns+[9ֲNMg[&] _Z߮jTdI̖Uo*"Xe^M4l "G(BXwFm[,S*y>LPIhrGq 9@wumw &6ȩƖi |+L (O&,SaMf+HWSӚbV(yH$]OCG_ Ccsۗ//8$_{-WѯI燅[^-TB_0R4ƀ_=mpR =2ZMȻ7f$$N=߆Ţ@ GZ8:F9Дxf`4V)>7'^2-9AaTBHy!3=_1~WH"(FNel4.:FQVI+EH;6/J6C"q"`žsC,Cz3܍]KPQso鳆z,۰:7G<)6W#ı4ҾfPWd#:WlF#mB ~nR1@h MͨӒ|[nJKs7Nׁ|&x_j$߉X3_K*Ƅ9(S3VUP)FXWdtOϛZY ]52G />augzClK>L8ߐeqv 0>.ڸQ2(xҥZ,RJ"^󒨗Ž,!$pro(.{ްjo"%yz!RdBĢtM.Ǝh{")l~)̢[^^7ZdaET]e, VF&am)^:Ti] lFŕDF^H |Lݗpk}כ MkhrEO^'*55PDF/#'@f!4uJA#Bc95&,WZ%֎PN?)&YCQg/eTAGj_T/$#35ӹ<* ReQb1 0m^*P Ӌ@_QϞxOY#S2ɥu,-wh22_T>7~0"AsOF;,īŦii(5ČFj@8[e䢝Q$ہ7܏SWd_~șcG9HM3DVQJ-JӬQݔ-@y{ H%?6mz芬Ee{=\,LNt * ceRIQIGl,^h.#4B\x?ܔLlxpi2ӑpR>Nb9}BKɟMbne/qM3p/~.FAo,1"PcJEP%CPxQJJ\Ƀ2B%kN\+A_Zjgۯ'вImqRiJE7 ]uY\xLi}1.jׯ*dn.WKT jAmX As˹G Ɵ{;XpDsf*/HjӜȁDz5aRbW0*J>!b=TawGjF B!7b _,wUu)Ua*H g_J4fdch`4Ʉ8+sCަd'YD/U@dbQ LtۤSpLJl8 }kHIQ- ˚m.I&6ITV^V{U󩀱q@Kb~:cp*c(*^ ̂_˶$Yc8'c )mwFbw,{uN,4v[7{-| ?Զ8[g4z˺lμ;Eڸhu84c삞B~:xxe/۫FpC0 3!$+!+!+NqTW)>/&#xJEYYTǗ .^ mmG27Jiwj+o)wy8X1V0d;UQ+x} u/:p~߀9_ Mߎ,l-TȺ"N[h߷[G'E.SO $8kh"-%fw-l-q(sb|KiXl<-d )Xː7@h-1|ݣ$`3h:$%|K2y-eh?}5NJ\^Y&5U.)1!zg{sNpX^ڛKw vƺ^uccA5{K d˴8kY\ ]ǠVlO׳"zۺqήmܛ`s9%&SdvymNo6U5Z^ho;k' FZ͠u\QĽa%_#[/ΈUg9̫濌tUNM=k Xt,`i*ѷ1}4c%]vB3kl&izgi:ie)V@ H[: GZA f*ڣVxQm&h[nǙ^EJCذy<kn)FeqWS/(q?9,cXKú?7я<e@;"KZgRѹUT-YWڤ`ڧH}JxLEz-jE+H"T,b9A~jq&T K_Ӫta-A@τ(āgt`R.+9"ȱqd 3و|r[Udql쑷 oG r`ӿ dZq(- 5]JcJoSսvk]Qm_C˾uoSfl:VQշE25:YtIT;\T!oj^ӞI8}O=\B?^o3zX ub%=)֓|;.:} ~qZ[&޹}->0nP/|pқux#`+g9hwox!Lw[琕1;U N%k־i+gX0[&~RʻWÜ{ƭ3 ϯ`HXz֥N׷lIwOv4UKU#>yːM/VSK3$  Qpf K!#Y{9[gY?,A{[ 3 (Ix@=EJQ2-fńf[PfYJB֊a7ۘF!bhNltҸ݉n7$ =] & o+|ZaoSɢ7>1X1RD}PV@Fo"v* 3S9 y`Gg bם n^t>/c!? k/zlѠΌLLC=Rryb"yd*^r5/-J)R^x'j QAKvݸ$nGUq7E]@)r'XQbCwf?얍1vgPcmH4kNXؑ?Wb<ΦϴgQ&3k&;,c;1M,bx,2Z@*촦̈́e_gE],o7E_,/QF {GTb"? í'ř߁C؄ 18LJWfːbxQ>PXȞ/q9.I6e bGqy"\/LLP**10Lnŵrrfn.!#Dv<&aJ5?-p_}z~,Rv%3HyJ߿ͽnF&CGI3g>6كփ 8]2o¯۰K&NfBi$]"{ɤb \-qY~_4=YnC5kOd,Pb6kqS30YEۺzԺoTJ4|J8cFKc֥hh8Q94ow!_ǍqcYhvж⺼P4)xJsT{N7Ҵy+q%Z/1'-DjLoPH9(X !`޽tC[׺Z,̫ ߡc~ҘaUx#m&L})}PbXƌ9iJ7pH [VmTYtm71YR%~yyWpre ;قT}6Fe~KhxCc'm}ݪkջ&C.SFwẴ$ ;w^[Fq}2a+4d4C 25ʎj|1awMm&@ba(|'59bj-`36:C$j.{7.HN fz1L&,T'TS1(cp!3Z2T;} o1y WtX4Q{u?=}7GY=;S&SdEXR0!ٝ}ɟ 8JtM[uZ>QѠAJ""퀝-I_CI^,q"jqhSzki`c>f߲Cv=e;-aD20]ĥST؇ťUG)bI!ʌ-ׅ0Q{95/V(10ZP XG\Q &xb8ї6% h~ !\+NK9`7vE)~[Er-3'.12W+[V!ئ3XCh0mt,I}hof4\ML1*<yriTK*y)tuoZnZ9CL7)O. WnĉIsx)/>8)H# (pW=Fp33ѢGXeωoW}'>MJ:޸WT;Noctx`?][ȆGY]|8jg@=C۔NdHzl9r +ųż#e,MK9uX IT̸[n y3-ۼd3"N4,c5fCI€gKpj<>y,ƕYyi=P:G&2%bcSLC9g Oh kwNwj9Ź3|BQtw7s\-}"nJGLOC9[߈RWt*u3! j-e佳wV{*TqUz}+n&F~l$R3)S߂y$2H>1Z"yS)}+vtFQ;tLdòxOܴ?!iGɊax@JE>k*Y=K< GVjR[KXPe@SX t3]Sg.Y<qolnAVhk~1+F*Gη= (%gZUt^  w{ɬY8 ip}syҳGLtwV.Ef:Z=V@.(`aߺ5ۢ+t !^H5*Lo-&MRc[mqEi*iɹ1;Vų߾h *&.z%:ThWݕ6ω^zAz?q"=*)TNr֌N9Nn0Kj}M4M+ezC0ک\ kFyK> ָG{;ك=VVxBTn?WtozBD }yUxpx z==N%{a?RiN(?\'67w1vA3SuG=Ze67_>ޭre򋓪Q-[qLȊ@<^t(57:`XQApVm;zR Ψ~79n@B`WտcD6֤9ZjJ!ʶ'{OL A<-;xuσQ;%cp֓"SltN)5uJjRD:kASD?Vצ+O?=Zq#x/|УUP@=Vy ^]s&)-]*l+S[KvqMb[[Q0RSE#axI@Y_>!7cuZLlG[wNd"hꔉy/f>/==,zw/(ӻo͋uFX"Àz+k^8d*-/|L 3 ,F2td Q#zG".HTYn0\G ,䪷cx&q`t"{PuaJ\P84(xD`OR䖕ß57An#JpXohlC滓#$@ /4 + Fz-,Zv,.'Fu= L^*eAyXE>~R'47h:m:+=Z,JUlnmVf*RUnFGߙk #$/ ]9R2y~3Ƹ]l_OMrApXYU*ۨ4ƏU53h g㢳*?%zfXIPBInMSN QGO;VɬXأŦ$B@tEd#rxx"-޷Bm(cA?n3en#aoم0_d@!ۉ?bN(u>;G̜ܼ{к P cAОNo)Du׻.e؀qI&p^u 4n;τY@khՅ@$W0oߌ>àKB\*ss <y-08Wv~ްL+TD"C'TW(nk6rκG7fydf!; ~UTnT W̆qZj:X'KJcIXĩF'$+#ʼ>?N2/|v1 Meҩ#R#&6ߏ#%oNN7]3tIfb6(RΥG#X tE'+?0L[*;q [ DMd;ڈngx.pO@u4uC3:)쪑O${(Fq]g_d;YHX(dLb`khrrX !QgfMS+$ 9O)rUW%>(Bm]̉tkj8)#ke nl.Bp$c~Һnw1*r<v`ɀ:`^f^F<ۆ !ƭ &"FX;aR~x.(3)FӠLie{i[*hl泸k0ڊVO^eslwa GA+6[ҰLNgP!(SopUD+whrGzNiW{}"a>{Ѻ]GBaR%Q.8ݝ<#.oȒnf Y&\)Ӕ~A fXFvNt BFKF{|Xs1磐9j*%t1Z/RrRv37k…y[=B*g2hOiꏃx#ku Fd[6Wz_t1D^Sm3jǧk1~LdFmeIX2hT30ce^/Vj8ճog$Ss{d]蔲bRQ%Id)*4ofs>ixysx5vǘ~QdDx- *X$q%SGaV=$\_Ѳ>xh$PZ~YNxd=U㙙JQUUιsz<#d2. R'c&fk""U]aaDꂀCiqd.,Cɼ\ޙBs꺳,g%(dDIR=U66y;򯩘! Ɩ¾5E%R`DF`Hrz;"5"n90!1/GB Agn$FA͊I|Ee0, mnKWk l!zr^w޽j ܖ_tF}adig7F}c&b-\џ(p X; @ͪFjc~cI=c^}U` 좄RlaDpBr\s슅0SSaaHж|o4icr 5wN_hgn4^Lmz[;*WYR顯ү5~g 'X yb~G>\!ɱ:}>gQso6L5;z07(64lvA8z^hp01C^]{ :#`pF]] ш|hN4èN/ozo)4P~J҂/>WN;Vnp4/0H]vw@ MlsPG Z&F g6LHBm`$`[+ol([ _ňZ4d,`UB7:Y/?^45{``=QO Z޸&(pҳ MNJket>G=YK֜%V7I&Һ=U%AC uJ"~b3"ec4Ќ{23i_4"2/섎#ҽoĚyۍwzdI5vR-ܖL|ኴ}`н@M9hR:KQ ?! ڶf%}k+unB\hS|&'5mk5kU,njQ ;zs7➎m4۱i?kuF<vY# g0 w@R?h7>O>[/Fhj)phwھr #&z TeԳlW=k 1t&٬jrV5}t9|lhףoA eCґgm=[(d =r(}^a(hK@RQqax $r|`5~{r8T8h5H"8,>&pzQ 먺QuJzp 7d"q|&"#%jfWZ4)w]wkIKpkn[/f ly{(_wwYr>~TcUxb3텭|=tsq6(~"ִ)瀈V1*j5۸6jz;}ǁz܌0n-HO`goO%. SGek.% cz0oCP =>:vhxppLP#FK̏^ }8l~wUȝq Rꣷ& jhLM}ofF7ߊ!&n<G'zvm {3% !1`|zx^f3}apJFGn .ǰ,v(ZhI1ˈm U'Gl賁\^}OIIXb+6U3;cAT‘ߵz3X&O V[ "F)jxў@!'t5{#aݛMb`v-4*(F`:n8T>[C` lz$4Ga7b)UI`b]tqC m4GdU1eBܺjNESUvNvM";]-4ck6:M2T `Hz._% c!kj3lE9+,N2nu7Ul +|U<u(Mk0jUHeޗ]glktC(_c+(6:\Vm#,o#&~tOY'߭njvz^9 éE^ uGU dǹ=59 YvWo5xdD#nM k uI8^baHH؈mV؇V3 J3 `tgn"Yi7l]WnlkI?whR<wǥvu}Dž_{%A2|M/CgΤ⦿ӘmU`kjE7#1_tzX^ I0"<3Òja7sI02hKôL8m!O-!P(g,w4 z~o3n~zܪJaaFM *x:-T::jSjN22k 5W 1beg,tBy{GAܑ:@^re=Բ; w;Co2ӎG?˳2C:u0deJ"O䓱wR3a2Xd3/,gg]O*U˖WSh"1BBi Z]Ú0']}a㌣d s]n$m6*|oXE:N/mHSJ M 8zpLJx8&N|ZQ d+`Xp /~/O )bt%>=3n0Š*rT4̲`YQ?z^ES۴eVufJЬ1l#QpݑazlvW06ߠf5!OCMj1v>B6e奶䜣=#zZ/®~W>GH[Gh½Ӂs7`x/p~ #OXI}.lO ^@w-ѡH=j7IYiA2QH&;3Kq"5\f;VlE+S(Sh"ݠōMдYbdڊ>lݹD 9~fZ3SLg,Kg|`xxn(ekxb +&VB?b:Mi5_wsyqG]\E}{ 3pKITU^):px n~ȴ9, R?ݟ+>>{>`ܐA >dY\u:v|k;ТGMRǵoylF3^WWvG?bmx }Ąָ7$¡7 V<~Yؖmc0zqk-%X7"~SUjJUj} O@UYKJ4zǁKз AInED+`Ge!H$xH#1D/K#a "BW1+`2D{;0_/ UraZ$u,{m/a4}o8 f%esxhsŘofǁNEͭC.+Q|?;!C^X7I+a`pɶ$&?뤴wșe0 Z[+o_"ZxfVwp[-uoS*&48Y @pyU%t;WՔbnRp7?]s١ƵzPӱ0ɝdRʱ+ ~pHJt#djj@2$|%' e`X5Gxs?/L: F2n ̥xJ4#9l79/| dE>~Pj}[xgiJ@Ӷ.mHqʟD1FP/ێM$ }];.X^-iDTzT2.͗濞$=? E}<)6L8ǂvs9&2@ k{X#̏8=4a4%F@;!,RsefL=Y@08ha9H " 7"2,̘Q.X t5Eu>D19ם_],yk!2iMFy2N0`6.Ma64h'o]#5LѹxY*2ew1{_(":/˓)h|*$`-m S,ZWH}-K-~íL3nwU MpMf廙xuH`-3ξ:K: z2+VZe0bU3f JQ]xB6%^2̠E Iݬ+*f/Q,-C*GrLh([vo$6Gvef2)`߹wwQ| <팉I9~e|=l22 i.؂=Gx#i57Grp])uv]5L߆);alۏ@VͼÝ yX_S6+A8صH6oo7̺N_z.U ɨ up;֭gA%8π&Wc.U!wo=o'sܪ%blAnpkhA8N UJdWcbnz[eL1i2$c1!޺RDAHIy'[nᾆ@:t5#6[L(R<ᒤ̢O0wUkS?/h!{ ($P]*p ؁uY+߽l^vR?jHX^-5w {BIK{!عmWM٩ 6?'`i5-'!lú:B[\VN qUqU8cdYlD`*c]s˱:5zRd]"#9 {8LB`TGZ kW#e 52"Ŵr.莜FQʘ5.7Y\cQ'/ ]tˁpu|1.\\q#2P~Vq WٰQQ~70)@E58 WՅ5"8FuQ,?C]ZD.1e#S8xc,ޅl#d.ܛu7nOKȋiYK}h +Ƚ[o& /^Ncks~1bV5WvvlQd`f˨tDw  e(hw`9S2]9Ap4Nv6?5؇0, :v7;[˶?y_{{| 5mss(Gۛ'؋& pګۛ;e_Ї5$Pxd[cV! #~nǓmpH|}igsYwxLtx]vN<@"xC98>:Z 6M ( A~݆GHJb&cD/MevolncCvj kBCԓ[d;Xs/V!m*s]zas y8Z%{ #vv+)qm : Yc(>cH53Z_R (.^tlK+v&E-I++ݟWv!ªu]3Dާ2 gqOs>@Srlÿlů5-g~޴8xo 7O|.l EZ]Ÿ)OWޱ먶qB;y q.;}2cN,diC`3* C˧ hrg^-5@o 5AÈҴѐvo0^K_$+xrw(+¼,.\#W8kh7*qU5E xK}_ukE" H]dQ+1Ku$@u%.=ɯiR-,n6t8mtP$V\r d>zI85.Am}e~6lrsZ y }ue#) #her2Mg{L w( ^h ( /_H v>TcK xk{tqH8\# jD v v QuMu:i~Ą,eqXDiu/<=1#>piq=2$̨ȮKӇ&wPȣ2[||q:UH^)A5 5ml2@N遺3(k($S-KrƩ$AL%\"*:aqe 5iB8QҴ0g0C7cC{;j'B:x5QۻP"EB9ea] ڬz>m|iue#V!hYb K/IZ-KITHBYѴ76L3܅蛴HfüI6e( dxi Hf2z1&͒aɲZ&lLH'o'ԥE4#%qYL0qfM>Hj"}o1tL;gCe,J{ >xc_O/i7 㮜')]u+{c| eJC lb8k?rs,0ӼlS^tz*α?RF0) dɺdU*p\t|68; 364&0ݠLůk kbZesdB(#!!lĀট!LiNλ)L($ ldrbK1̇QihHZCx,0P^JES:! 4KV lThJIDi% ءN^;r'-#{)aƾ&#]@q0 '3(N<,E YU5FOsë`oS7uJ7>r1# Y. Ϋ=F$]i*2m&rGd=>p,`9qHe]n] _A$SķˀfB,;'ɹQdjJSd  ǁMKƨc6g☵9Vl\nWw~ܷ"4K %@;r(R؏&Y:JIĨ}XaqUh:/Q{`y~-^}WYP|Ydbw \Q{.mξκ'@̫ݍD5EdA=HB=HJ `n2' 5Ix : Q̦oӚNGl,ي$r _N}lg>goű t?%rm[Q <Uw"&s!$6Yi9hZvJ>?0գ۝G߀a1nV;I?&t}Aۋ0rl??'ȑy\() ֙ o+" Thnbipqx4ײj0U^94ُU`*g_'ҊQn9}/LЃmb%`6UZ IQja#jÒj/nCC|J3lw$(WPVK#0p?MtS\{11:ޢѵDGc],ɑӲ<`T~# ݉>\yw+d'کf-.*MFD 7RD"Aex a*(*]üa jkR;(ǀP䥒9JgKĥ;HώQfD 'ec^~af+8ަea7Vf0lK/1 K!H6uY&h%F6) 1x#HޖYYWY}1_wv^ugE;_wv^ugyHKrr1c7J;I7voEy]A 436\pPbQ! <:1ӽdPU10%^h7KiX9Xd3.5f6OE~dKn2j%z8m^P 05.*38@ !=' ㅷAkptYxQ3=uMW/$.(;8@d޲px$]߾I.<Em7sNmC ~)Wh0VY ~\wĮs~@L9X]ugfygޑ߬kܞx?~~[y Nj #xe9f)N-'w2@tZjL65oSA P;Ōr2I=R*hC(]j(Hp}Ivp{a:nDFqOVHlpelz}dD)S~֫U[+Q%kY (('+IsooK&0ԦHՏXzaZyN1XՅUZĦq!cb[; ׬W?v7\W]Z}$!ONx ݒ,d0C ;*+C2Ol:vYmML]S-5M G&qwR$5)nִO$c]F tIۈ]q?V(yiFfrڞqp蔷+;}Je7\] %,N s)3z%]vNM 7>>_|W>>_|Gǝ@k]BABst1qDsO>מ6=`rCBAP=`G Rk)3{!ƫtNѝēO|OaIoXI ma+13`̻R:j1ww eG dvTDҜpBN$ ӏ:/S!U?DrиnB`1Z !$Hwv=ݏEʙ+GAjĝ ӈ݃v脄 ta' ;ը J)8btNV$k]vn1!"CDۥɍQw/MIkyl~-,=#s#N:(<7o ᒋX % YwV45Yy5Y;Nr}ruL\Γʮyjj~DBIJS4j#`B<(PJccGŚp`2 7uk"D^\HD&#Cf5jÎ?a_Dt I|yXyU)] ӯA}aϯɐ0Vjs:drGh#"a!JgJP$^Pz gO%9P]tЮfΐGn v6΋_^ ^U; *&X/?i3<u{-WAf-Z`쀢! 2M,\NҠfPT7?:7Vˆ%w&i7sbo?/@U/ roX Rͳ/s`/*[m>%ѐQ@ %HyDyD-TĊ1u]6i_ԌIM&;0铄A6xaWT?;mOd,r݈y|U,W3,0WmS$8v`Ʈ/`%_&I:X΂ֈN> Z1.!s,aTppͩ@Gw#efgI()VOh !&#ݨPjZkK#'1!Mj ;q@otœKH.SV92S  hk}^#%R=00n@W491)$^2;b 32)MzKVzZuyD_Ҕժо|@{jf`Hz[kM.0FB4Jxθ A.q!M2a֘$/ZÏE:Wxkl VOͽ۩%G34均%&dž\7PkkiE^X.Y7QW8$;2Vxk7y2Sb()]暹Wrq@J,fys~T~ QxMwNZY2)@p) <=ɮ=?8 7 %WV0{эvhB-6pw'IiVunMēfP7eG,wBWV,בmP 6# iW!~PII#C6YOF|Z |Wr:)c~ vWܤs [R Q.ޛ -{tve}m>=}Ŗba4ڐyt7wۏ<)D H"$ '^=zԫQ^z4 SFzyy'U/J K+'2@ EyiE Űl,Sn2@.RL\H |ah%}|\iA-HdEm̙aN+5!r&-PrR6CKjPŬi ]wpA\ Eğ ,~.sN1)gPL&f~[gI ǛSSSwV2wW0G v24'z, iRԲdRT#IildiFK6򓫑\Zh3+瓐ǺTmVUɳt/t]E&emA Xr?&\q /N/WⲩuV1Tey4iXפ̤|. V%5iStxya:i]^X5+ϳ>fݵ\pZ QEe?"@?O  I|(uviE.+W1&^& PAxG 5֘?ϓbI03UЯvkɛ^k[B*BM9 1koe^Y0G"]| V"ŎO?Xg _xϽm38MNy^'nJ c2Tjpe_g8%=dV28@N~`Jnp(Dt҂WİQ+V=7^bܿ$iN9Ӌc48pt_`[~y5-.֘p)%q 8P0x<0.4$ bHr<;N,6 ^lQ>﷥:Y_"~'/VJ"F& \ -Lj_:BR &Z'h^QAMl+GZǺU0iguS_Hïa9leVߜi{IcXgQ{ee4tB6u806(kHOt~.U!&*IUh=d_5PT?wa5\j./ŃטLì^e=D~RNNP^zuVI!"btl (`("̅ ~]D;!jj((9a`t6cjSϩ)Wbw|ƴj`-" |)RXnGzACdc qo=^&GȂZkxgD+Cdrux/XХ:IX-o 9C.Ϟ h]o0JUЇ!o )ڊTYwqG;^].F)}DLSK2N &ue 9n wꖳ00Rz26?To:q$d۸^E.%ZAv*X$W:|N"uk5(`fzqYPdsVMhZ jMGꪊa_&Rp)Quxf)w|լ-ӇP ]`õ#R:6k+s\ MMFCI#i=f庆:;|ݖfc/5{k^c6&K6/xdK6l<Ț 4RW~Cojޅ0X5x7'۪)&?j^3j qK/D=UYw]YĨ{O[K콰)JW %G"VLD1f>25 h !M¡&Gͨ VUygǣ!oUuվ% ŖD쯈d]gQdj[!P›OggR]Z?yj@Jm{Hco}9΋UL0ֲV.wQMrf"M%D}U"haG'N啶s^"R=zSXSa0Y##A$8vt"~;p^Cu {[9箛6'gU4AC՜٣K(::vWyd2rAfhd:-dwЁ}X{׼ .D.',<x?E#GȞ$k˶9KHkݤ.mضc =.cwKL9[؂/ិu{hf,[ZY༣BjDFf܊Z 숣x/?f_XSZ݊C}GbS?|5R`v.)15 $s]&ޚYLn^OYhFjZЊ.s4˚Rx%)8D x:3 ◅Yo֒ԫ%;!e/L\Skr*f݃FZ|tq9 ~%( G^y )~R43Ug|/YTq4O+ 2vDc,Q"~ZD alQ&-yZSVeKU&u@;(~Y…:T0ם~k+ڛlIJr_z0Ccfz+`]<< \FeF -@WHy-骞oN"PT+r;g@=a-0wG>)!m1xΣ 37gFdPC"רE-^IS_hoo{yT4PQEeD2ڝa!%9xxZ#(| D +XG0Y\X*v.ְ}u[][YbRu뜠`عGHzcUJЍ fG=Vyx[dKoy^kmeC?6W_pUCE(3eWK +QIxeVU~m\^_V.$V&HlJ+Xӽqb`kbkXbB/ݑw9[h$Ga\ؓ`Ph{W ɿ ݱYgnhg[|pV%oYlq3B uV@"`sjbDE.:J+םϻ!9Eǰ!Pc3RJuq]!ap ^P[Kj ְ͵xsoօ(h @jUUVũ QH8ZswA07VJMy][cEn^jZo۷o~nn/T1ojSłxK[^g%~Y uYl̿yf}y|_tҍ›U}l6'< y[ h%1)DwA^ڛy(Non`Ͼf*/f<zTdfmha_headers.h{'~H(ɹn]T1 ݍF74+ҍOwEv;[{{6^i=M!]bip%NH%^@ 'if ]%CDY/ `l' СR4"^BN͢#Lo@?:h~F.{8@cP,_auϭkP < GTa\vqiKS (-C;[:4PL|A;Gތ 4n m0k@TMa?iË6d[ 4 ,M. T{ _3Y%8׬!r< bXZwW 2ULz+@mW"xTY_,4 j!O]Posv5|PoTb|lP]1A'),Հdktdž:@9a̴4klB{bbƕUMP@c z665+mh1P[`kHv4cGʠjoK #u L%BKpK,}BvUՑеf-f"8_+vL1WMHs4ÃM ];i4v^D~m{Sr$0Gpd.ƲtV_14vçxO]@5GJWmf?$2S GNVR{I4Új+ dSȗ}P-'M Na8(`r˦?<s_n|=a3@:-"sA .iHA ;1I*s᥌Iћ̩ rrObT_NR9q>l,*\_$EH F8⁜rn1"9aVe0Ac5QU1bi)@6XrA"DݨYFgr0 !HF#zhH471=~m4J¹tR_WFBndݠ8UR!/BPX0ꍥ{j䥴DCv"-WJrǫA zf5]!8tH뫆P?eTZ/Jh:@LJ+4˶TXL`$SI-IdKSHgwhʶA69T~1 @Yοp(&8VE[Kl@㡡_͞Z'_]&AMSJ]'oBIKC^b9x}Jc"i8n%N1E4ҡ~:/08VqHc}v_G]/FI )yY4&prh6!@B!SbNªE`ʯs'4<”a (ڡѢ8>44(2^̃,4`$I]a yzVHsǏIÇ6 {)?ɳp1hủYXNMQM$ثxd OxJU 5QUĤp |Oo[֗ƙg%}Sk;oh%SdSy,bȆ XsHh f"w?D| LGh $+' u9=L.RC# ]Β&?@m_Y%fhZ4@R(CW;1,tMr @[@o aU# w!nWӅS19=?cqN|/KO,Ç' Ӡ18o'm ݄:Kmwe1İ rYd⵰?}XC{ۻ,DiS $i:Owvaw;}(_>N3"z7[ϖPSߋ[Z.)-/̆;xU60*v%pl5?u~DӅfֺ}(1x NO* $ sPKdR ۠^-Ȥ  ;?:xSK R}팪Vz= \#&TVH˗×/m*=ud&fk`3ȊlkՀZ'ka:mt^f̟@ _,vg~Vؼ9…K`%L_|I ׇ#rX]-~{yC7܋^RX~\" ֹb?Yc d9ryV٤ga ySȳD@v%7(SD-my"f`hASK@HaAEX\ ",eر(nZqEl5R0]"]r`V,N,?J5LX:Ǽ)3LiO2ׁ.T>TK̏4Z_t9j.8aޮp)k,8ﳥւA\^!SMO?F)WlmMa~M6&Zn.^.~գfp.TvL ގS8T84jBG8bqUf%EܻR?'#Ҥ2t>!iwR;ߑ/3|NHKLP2@2TԛJ_VB僒3,K[Es'Ɏ%Dw|O=_Ǒ$hz!uq B KV&q`,M'{S)^zCt-I,8fȄ-ƖB/W9 q姆Uwᄣt5}=tvtoQsr6Nxe$Hj0W7w2۟jZ_Kh״\!f GCۢG.VuZѬU}[Pݾe0"L1 2-W=d b~4-u`_hT#W2b6z`%u"BxyA?֣X%ǔ)EhXN~ȸK+ ~x}l{̄r Ktb#`?GrG^t_!I;zL>aSTmNw^z(_~?+P+Xc WJg̹S8>*#_U _8unOiv%)&hNS hYv _P5(]`g(+^e"Jo #6(6@_J-|/JҩbG/Fd~2ߢDր{kD7kE*k+?n-xzgw-|լkzTְG=MgiUYm[,vD(v1_R.E/s-@A_>: G4Aw LC7@" S C,0sv/[ IG;,N*/ͷ̢)ZEsMi|G.1qxփZ\ A@r*Ow3U`b!{!=:U}vۥ~71txd)i ?wL$}_"s_]ppљ =Кg!X ~*p=,BY a6a .Vry6p &t7h`,հ6w\*u7nJ~Q>C{ϰ3} /:}w>O1N1KO1OUNNOR>nBFsCMWi %ZK◷o_ʼ-ҁX̅=EQ9i8{ tMR }/JH= nr0fmfF-n4͌F3#i$eqܥ.Zcbٳ歹e6*[~f\KLW|Cӌb+s mbv8m}7Zy픵?\EY9 |mr)Ba:aȡ:*傏/o=`7ҖA{iaBջ6Ƕ7 {+ t AQ2-/+reie<47-L'I7|K&vE@b&H]3~z~,߁w=? Ēe,ZƲe,\޿NRAUTEPUAPl5*X5*XcklC F(-gՀ97|L*fPo1Xo7]Fh/ -$-ypS<b"K7qtƘ͈ae314`/2IPFVBYBcی14>> 9Fڌ$b9U`g- 9Qxb2cyw+ҚZ8"'2q#7ΫN} @ MTW)hDQ.U֪:hPi.JeԟJ iz\jK17{Ta"Ա1BWјzd+YjkheAʅ45+!v.NOUt ac+ֶ+Fm3 Yg]z(^4όR)Yg}Paꐆ>e҆Rt% /` M 1`+ 3`KM 5`k͍ Vlwk(6ݠ+ZU `jr,!BߚL7HSSF^ cF,j/) 449cIMִsmOY[2p{9[K/YGg[-e[֭d^罬8uYFQmw?sQ*WQ|nTaR <:NiSTO9:6NiTSJ*ܧ$֩r|J*$yJr*$2wJҖ*^$X$I)`dbUɋ Y5;q(*TpQa; NLErV-*D'BT i!NEW8ȬkE VTR UiY\BǶ$5Xm~῍\9ضsƍjc Me pq45KLPl $&G! d<N|FVɲ&K':ȧ] ^2- K?Uk/X9$'bodsM>k:|;ENQ(h!jft1Xiw/!з`iؽ\HբiPvHQ|8ƃIA q/@舴2R28{wH'Ukr ?F(dSaϣVNVG]asw[X WkZ"e{kdӪi5:6]$sr*\Z*7mxxώgmo\c_ꋋAr!|׼5y5]h'PP[v⬁\]!V`LJMAn^@g$ ˌ wKYAV2ddx4^e8 YAf^VZg~֎gr?3G~sY;j7+Ƚ 3c0sKPȀL~iN lT!=6QӅVrM`4 v/^l9$O06Z06(KԄ*؃DHԆ!{9&i:!Q+`sAՌQSOl:QƖזߏ+KSmJlmm{Z|b+_-/}->kw?Z|ba+[^+?s簤tdv 55kXkgmJBmm{ZΊ 5KǾm'~X$`uPC+W ru**OuMV\X'7QT'R!fd\6. e sH#t>C{53G57Gf&iPH,m,<T[y$|XPe1*#Cd2 U<2TYL*Pe1#CۋPe^L瑡dh;,Cɍw3%p'D3 =cXFӵ;3(ǧ ="=)x`T]e>8P)ߤ5qi}'0/cҶ $YXm#|^F\E[z+At6K$z2tAs\*/DFż~n1:ظkar[YK -\vx]=NcvcݭҖ5j`葀?OZXХA%r(+}&(&7/a(ۜ۝ԏTH0[zG@H6vb]7|f-B6| E*$ψɾ">ƽe/D0}ŋieJQS3{F@(2 #PV SW4K7D; ~iD(Z&=ݡ@\c[cF:)Y?96h4t9Ya`ٳ(ύv%[es}a0)\~1u܎ `52U ztE4:m)Sx8ks|35ğqH Y-YfxS-ѵ,3JՋ0#LkL$cg:Ik?@@;iRnou83[ Eg6WQ6vC7R0;!80ɡdMjO\镉Jp}y5' _+w1! E _O/\\th 1'lX26ڐ})*~m@`MjVOj|Qb~-ݍ5VD>wԒ. P̻+S_!Pe4u7 Jeyru>B䪽$ʻ0?v׵7%{Əq,Cq<N.^ l{N\G؏tk{h+JH+ºH#ov>Z BH< XtH43-l=ȉP,r|nőP+sqH]n0%* $FG9^1>/*ZEO㟌3xOr7*F_#6ޟ34 #Pd 0̠ь[f`^zm&, V"NT ɨigRAS6~_AB ݽ3zxC.Ο;30}Cvf`2..x17({rytv3_j -x0rHc 6Pj?3ڝx^h ȧD:7EYd$Hl-q+6~:"Hk4Jɽnl3P|^v Wڙt uLQQ!-Wz3x޲83>F^gp[O?EO&.yF`=X'N(ߒރQj)H*{{pn2[Con^[3]-z,"ӺV6j\!xm.vIgD-&p `Tc=;eE2S{/ޣ EՕtmqҸ gOEz1öiIeciP3gkqe0Op'$ ߃~> r]p[Z\`nxͮa*5pԸz`K8\Qd\R.@CIz!PPz /z2Cu5L;wY2A F(cĻ^b]s 5oV|M(/V Ҡ>YHOթŶ1Jd`$oZӿc? 8訤ɢ*pzY=oļ΂R#ڢ|=x`j?|fags>ZcR|o_]cZI_uoxuKd3kOtmfhl,-M|#V=<^eA +Bq;؇ە$A0HG/)I&; Э0p]\): 5ݑ+ivQ)|v^o2Y,Be!ڸ)BQx6iMWq9 auKh[{lN9\ P@\@tuI$"r?B_ڝ:cSGm8;bF&stԳV[=?Oڟ$O\Jڛ5.lG[/Ѻt ٻ3Q6=bNMpgMwmnA7bno -\fOW eߺyl+{";2e`9,‹Җ}1Wmtk׍9&8׮L sٽhðEwT[n  `t6qØSnMώi1z:;noh<iֆyGsf1xWM̟ WFO"HZkъ3j|sȪȰ-h͖qrrgWx; ཱྀd7kdRS) 7R)(Sb  BՅja[h~*,7Ral,& 4Agn\QVjpՙrbl^;n`_v & 뽁'WhFNK2myyWD|\׫VS.ŷ(ikfTM tz>ga顄Y.P߃u/;:"HE[%p B,Nvev2wTҘbx(B24>4ώ Τv;0CqKpYյ3SZ⺜]]o)XP`%s7j6I~f=Z%8>fW/[ۇ,wC߄|\o$A|Lq1[.rqY@όRq+q\y}aZC.r80=]tUO.( LfNVs6u8XW/:g@@q4 eJ~Ԩze-v%K)?ԛń6N^JS׽4= x_  ˒tQ69mѬH:Lgtξ6qX6 dic`pFNҽ_!u?׫Jykhi#u7qt֯t&C+NL a3X2Kѷ SQ-QūL";ɫX%.j ZHNk5P6n+Q]۪\7GWaf!'*c/ݏ;rӉKp-.<]e1l=݂&3Q0C -cķ<|l}ecozx̂{FS\x!΀6FZ跫22n|r =8…%H'**X2ς}yZe—.\] 70lJpF[ lq5Q2`z9vs'0MrM~R8fiA'=s')<.enD>|l[~3ʩ)C@sH8_fG)TB yۥyvIr[?H0:4(ܢ/!Ղ VC'u'2!k'lRYEa^<θ)n3*a)Mi hgQ,);BJoDd3A8{2U [dkU{W*̰thZQVZSA ).Xh_=)!o#t)3ǘabpx/rj}?r^o W2x3) ,;(_l2X04*D`̣[r 'Y療\N%[:b霱$ pXw1u9,7qͫYa"+ u&C7@)1ޔoWvXޘvڞaז<.!Z2x\z,`aIq-BcQsتwKۀlx-(:XZ+>&Ϙ^`U*q?f sL/O-1XL֨ rn4f7Lpvw0ԋ^R"_nQmq˘!8CG#^#QQIfQksPE@Q s~pgqmw$TFup/}@<9O*{ 2þwJ}/!㉃p=DgoH|-@OhOg}A'rMɒ33+hKR sX HN L]x],_Q[!$IE[Ec]gHoQw0d0BCoC=9ШqZT17aE^4bF%yƥueIjA'Bwhi^[ G`(A/;?lyS:(ZZ OXxŬdLc$_X̷zbAxJ)bID&53xʱk7 S8PEg]eAL,<9%,$0Dn7H\',$w)~V#5Ȣ|KW N g \,ܕS;xNN')~xh_ttbug-RSxWO884\9a49#!]HY)%目F1kwLhs ;_]CMzّDuۨ5::!Ţ F*]7av/!dP Yc=}kR'qʍ+#;.hI7ܿuڮ;ǵ՘e ,R :XaunZ 5X)&*HGͩgExF_gјKK fG1$V vD p"cASfY~qwIf"n뜨 = U2eIvzF)V62z1nzZoKw&xzƥ=6)C#˽蜔=8Ĺ {""Hj4 ؆`x ~r%xg (丏עq׫m<µ/ɞc@Ƽ9&4|""Tb>KaDjE5LpUC"$ ؏g31t̍#P?!G&83dA酱f+i o0LF :|(h ,6qXr1aPWkPu?s$9Z才m"EIo}{;Lf4"Dxtk8.Gv*mW"~DĺmU~ D֞U7mڃ$& Og xvXL扒`%C<3ĽKc/lC 8(ISv7 O@ ,QP t_hIڍ^16KIZMsC.N,˝m噺qCe#7|ua";DRԮIhE)95WFhC^0:_/jV:mSoW.HiIANOrJ$SEn?wͲ<}J ~ꭐŢ2K٘1[h6~LMhAz9J ?Oxd$ޑTT/hx!C%.;k,aaz3yvI/X%37o`:'~Q1^i#۔zue*;v-}(\BV.wo6@mZS nmlǹ'6v g6x 1OOdktVfHSϸ6o0172pDzFQg8cOX4q6p _VtRċ.x^oU, }ʁGPQkώ;w\4;zChbHRc#5h?` _c;d:fCp|W4l Pz*LsUl毦񩍧YYzbI] ~N-){*q6iMv$ 8DnO?l6_l3ـǑOE=9G|~n&  Ɛ-7W$ j G1n$ AVt?[Y-p4*zSfz}\?H.nʶ)Y#DTKధ+tD,sY>wsa ٤IOu5r,m}[\|LrTcHs&)cuȚhCx!xPzY`+{ޝ,gA-30-㪟n+3]51A %]d*գBzQk!gd s_RpmiwC*4pw9,H`RCqyԢvN&3_ZtD9%Wӣ@r9~B!$8g?3 u;D~g3&3)[baZhDnJ0YrɂL;Xc!մdtz%ܾ8?ėhsxc}ۼd]3uo~f/Pyee:Bտ,s&R =r"# |P jxϖ#P~K :Paؓw);5 _`ItjztRF㲓cIc#]gi$Յ9==^!ڝ]a6G}+<͟P'hbqKi9㱄3Gƍm"c0zjz(Kh"g^Wxl"x؛)Ӿ+:e0YJ'M)b)M;Ũ2H4-0Q=~N_$L$1LeIfSmM-)E kp{yӳO,{GvkDЎr4i#sBMܡr|k8Sl ]>Òn8Βv}.3, 0Y6P ^Sՠ׻t1 3>fΌRrLM@-N`KTF_׊I6Ct 4(XRE)Ջd[֝BTlTTaO 5tVMytllmoU3I%DEp|,E)GU{ꅞ6g-VgySH]XTZVxe(a?Ȓ͎ ٘-^3.[ftZ|HVk}g;[Q["^liVv>7ەub$*cj3D?ƳgǾTa֚ž }'roG}`WR$#8s5L$[gs B@noz !hm$Q;~i1FQqSV*L7_ns?g}8JR#CڪO1bo h1~]!Ҥt[5!3Ӌ"di!5[+IvK~!nsv+Kh>^! q=ޞŗX!z+ݭҐ F,c0Wx1.Y)U8/ ̠w4辪 -ֻlh-wd 7P6W3CljdFbqe9=gرp d7Q :Z,3p]d 5DKҵeTYk[horx@[`9gz;uq:.nQWys6́bDAN1 ixJL7s!svP|Q+*]7a PzїZ0o!7Nϳ.&»e!\0v2[]:@vans`mR4 +!J6\R&#zKDqEu9;C hE=F/ $SΒҽ!RYP^kGXd0L@M̺zPX\l6/sOx%[`R#v ݜ${a9jѦnpjUoU^tκOm'2HmgNj㓘ûzMD֙H x}?{5ʵxW`75G,pA_kO;C~i;3jeԕHq+wrƲqQqX`#1-׵= x~ p"G{P;?!H\cFml (Bc _?F?#QYd$OIfUV^|e3L=o( Bgڊ}>WFMދG-6}6Td;IՎeQzq])Xų]\Ӥmu o>cߖK[eǕxzh07y fx16-m>;Xv;R9*)+2=ąYv!mSY9!쒧$-xB|`S9/8/C# , Ht4Jyw Lƺko,l9\J)%MRZ`إ*dZZ' C22pu>$RL7ۛA ;Mb{q̭OiZiCn: 5ncx" 2lyKgG0C 51&nfp ΓRӌ8 -{9 ϚuE=i|׫ )%߮WO1/a/P9u_To?ML-ު~8܉!RuТr\G|>1P*#LJɮ 5Q]S-\˛:.OqcҾbI7l[9FtY ³mN#, lSTXxwZ!n=u#Agj/^bPGն!L+hQ}itZA,Z6%K٫cr@NNMݸw`0{/^l7ApNhmyN(>鈸Y:fw[{@߼5vJ\'}k[HU0&{ ' RFe@ҥ]$6SP5-"?fM,v</f/^x[Rh[9K4mƬV-JK5>oi2(Iőpi\4fwbO,L~um\cM~_iMKouqs0g070&!<,8@暁3@'G&msM\EKܘ F[hGV O^RZdI. jL$$gl _~,-6{܏MxW1.UL 8F zsR{TԈeKB A9PS(^r-^_P+ԯK7DeYK5`9_ռ"I?zZ33R2y۠D o& 2(eo߾\c{nhjk" RȻwf.%vE ʆdFN`aƹlXOFl)I\`v}kz7&=FG?mv6}Dj`[+&H-oZe%tM"Mo]1cRz:g9t䁇0_f}0q;.3RcdJ#2P~Dbe3'yTd5"Gd< 1d ^}11R46G\{L0Ļ;$2w=ߏl; g:%goHCKloFqɀ۝=ewvf0h\o3|D="C-Mcdd3~ҟš߀#sX[:S0&AdA7PMBw䂂b0MuL7t ( =/3jMi_I kwZ#Ǫi0tht  3Ѡۼ͡ l2a(3s2e[EIX|-;r`f51t~Cz`b!SCbt \fKC{/54\/ۺUIBqHĥjQ@Ye]Iux`\X.#V!"Ūh4d!2Q-zY@1)$ I.KRէޭWb$ A2 ]=AxL\K~d9|kQu-~-3kt?S z844cArnH!Ő89q0N6bB -94\*^u e݀7&Ac"8a5DxhH^st<1pdm/ >>T0Px$qۋg/AulF 12#WheiY&8E[pIp^Ӻi3i&b=R4=&q`0OVk3tld{ί&CĄ/ !g"]0ezBCO.aZ ,~WƋH0EC D^Z/cgd3IԘk, Lw& |PtE5 ch -SMk"6sHW?)ۊpѿb˞Cy~b}+4V/̱%]gI&+4])]\r3,oK#Ool1" B6sy&8ΗiM. m'ˤTD&5Flp@x5C7}!l QlX’xսE-K\$VfCa;Jjl1rbF$ACd{nnxϭԄ\/^wdXrj<6.=)QcDABxzPhή]-8I@|/’LT+ڇ'xԽlKC4x5c3/w)4[{2|ig;Um,f~Dg-T?n-:3lLKW.ԀȰ$hv$ϴQY5$i[ד0Ӻk ZKD4KՄqi2h?!E?uq^~Zޔ/Ե;2-l& ӂIݙ;nÇVCS![5ed˴ zּȞi+At3D*[ou=%i}G]=2-$+L: \ȴ@L++ C%3zf ')X@L߄3|- 4%S=zg 'IDdMLaР `I2g%LѼw Os"v|oHH6uXu;n'Fd/.MwX黆IiB8t6>U >޷˯/ip5,ȰA8,z:'˾deڅH6n%ċw^஝GwlқisVfZOf@%A()z3 WX哖@<5dH竍Z*3AR'>W\Fie1Oi~=?Xz̞n]AEv C(qqwJvehlCG{mksg7ܧ'2gw5٫rX[RUjUO.glڮNiX[ u`pp ܫlwKbyՂXvvJ; %V:(WD*f9,/>kKrmRKXjwg=)Wvvwv`xSX v2]8`]pp'%\V*;a@cPqN L X!t↱^|WqLr9S5d̍eV3{8ٕ~P()f0tjYdll4OKec&}t.2PbR()22QI$tL|.Ðs ;JbV8 C5U{Xʛݓz)lfo]+O!)sʏSKƞx3[zX+K,:x3=:ulYءЌ= ,dX0k:5|?@h6 ҁBM1@ӴSLt\g5"ꔉHN-Q;)2s-4  TD ܞQ遦A?F8q dH5O҃lx.h}6Oh'ޞ0$ݓ({O"=1$=O"<>eI'z6D|O>$Or$-qpw|pP+Uv1jt[>!w94u_Mיѝf&- [i8^ 'Ms7\Ǔ8\)f9̌UlsEj_^(3W8ho=8cMO5 Ãg睖>=NRq)cFS޳YSO痬4hG@34bhp:xr5Z۵?:KP7ݩ ;6,h/.RZm"=GK`15Xvt#CT@9B0!SR[JXeԊkZ~VX(~=t>iķBv !t:>y??t^.mƟ*mvQ-E '9GȍD7ki_ix EF#1lɍR3Ha's!tDDUGYh_>|Ijj=kc)ϗϗY3ۃoK|.˺uܾ|G< yp:/ŦѶ/#P%'=ɬOL=`?J?D{Q!=ԡVx=s-e02/W 0*C\h9[[VkN:^/l26˿D)ܱj]$:{ֶVoj)U7(r Q0H~("&bxlSJ >x4&*OT-kqt8tRj!=-?D-+ڌ@@(y=#8y&&gm\Ԩ5˷tTFOnK%|UF¼[ .& q"|]:~pH;e VI3&5DJo9kO]}^{*v۷`3,KHZZ>#x>YZ=/HfvW*0 L9W < d? K݂L|0ؐ0sW^RBlL1cF75 cLgBW߰aߨM &OCwp块[[[,ZdY?pĸ\uu4+?T↱hR`D.UB_Ogg~`у%4ě&%DAJnYdYV5l[˳1eӱA$/a @?[7(+Rh87BXciHpGw;`á1nka8v<!Hr_ A17|zm z|]+ox@8Yϑ.K 7{sGp:c8$.D5gITiau۪Cs:P24QNة~):+Xz>1<$S`% i]O dg#p`M)bIF*O5>(o k˵% ϘTܸvXwWkeiqDzC)ާA-aŻhOA%8n\e]֧ $404",̣mqc{Q+#~煮lzйBOVAӜvw{׳ZvL[(oLvr6IbR `v`v0x;#0 ZITދgOk'+:X`E(#,DtඳЬ!<ҁBrnHJb3f_! >A3@)Fhϴ -q++/N񆑨;xUeTEգ?<㥰uŊm&514Xr5ݥl/Kd;ύ Ll}S4R}4՛ϿˁϿ#o0Sy-aGf`&Qxg[ce8, J޴1V "E_bg-x |Md#k\ 203 DH)1O£UE_tBS1_ v "8FfWQ~.}FEIۼo[sUSnAdQ3v]96`%N2!6y C58A00X6R-% :r R+Gk Gg~ϣ*GFZ. 0|]\sF.!/>/⻎(a[;)rtRv(^K:d:hĉ<5Y?? 1ep#MךSQtQnCqY)l=կ懎'u5RvpU2 0L@O//=;Lve 'hCQ ?R^M$t\>g82R҆Npp/~3fAn"$0K{4*st=tORhx=מu4W1e|G٥r8{L2ԷoIh?18O?2^cK࢏y^4s- ˁ7qKȩgk3,޸6=q .p OI1HR_9~Oa$;Y'zF"^?_˱=gQM˯u~ }!^ԋt'*\6]؎ 9Q3JQ4  m`M<#zGp#= eAM@W (yHw lGz`iB*wSjVTE}''}ZD-S:=ЍWxO2z(mv@d@ nlյ9(.8NC/ӥc&Ԩ9{׾xE\D߬* qԨYi5 :Tڣ0{Ca#ol](݋`x't)A3 X;xFNPt0As``׎f aXfԣz#k m3*j4sPxɷ "TҹW0cƣw @q,YK]a>sсf%tYz8 ݾӛ۱K` Fs_>X/uFeӲ ]7; F #``A"t7N*0ǂ6mL>;`†>Q E6ʡ6:yc6gǝV݀3Px^֡__Z;dzzmTGi5_tz 5EŨtުY2ܜ44Ъ6;z{h4k'G `ͳA@fV#o4:_Ilibg-jW[F2/+;jk'ih Fzc?mu6V'ujACz]Հ`Ɇ>S:Pm}2 B8V?@ %V/޷;En|8;;Bz kMDh7N@kl~h7Vfj]cWu\HU(f \$}[HG*hT:rIh#uh?4>ԛ:=C@zhcksDbԇcUh7Fب}j <0rB}0 kߘ}tm\ r&CNJF̄{sƒdKe[k˿fGhh_f/^lfU)V'˵q󐁗Vbl 7,C=ޒ*RJZe){,|{_QepxYWTebi6)y޻Eh!] e a ݲ d8t˂ԴHr˹+Y!9ZA/5[liNyhJ[C|GsAp`&zk˴%[h<c0E'.&S8& 4zex3#Bc8g3s(}[-l2/u LT>$ GK0̭ 4 ys@lq1f77rJKA{ҚZ0yFUT c\ :c\LC3Tݢ:pLQ1Uu9+#?uvMR(,-,iǛŮ}-[pH"6]>~[X =T %PԦ=߷;`|@GuQM6J:3L!k~.FCN&VX|:hW}ݾhf% u84>BUmAn]o= {m6qزڿB:0 7LgZ(ԗQLmɪ f4a lA=NIb[%Ga-8k0>iY 8`[gQK[2zy (lP޷u60ɍ #Ve÷|&,f$Y1PoIpמ1u?;u[0mQPM3hg O8ιhu2*[R(:i Q2u@IJEH S!ן9iaVlUЮwfb& 5, Yt5jש - XdDRekl24:юQf]$nv>2Iݳ`fa&8U0 8S  2S#ن蚊H4GA;gC0!ҌӤƿAp4V;-nԺ羛pŦW7(xv$_ /ajds|Q tAO :5 wuzxZPo}1r"J7OqbO3]qЯ|c螂eҮW44 V+Ǩ?> ,yyOꊳܡ Q_&XgNhp2z E}6h=N]8Ycע5Q$Mh%b+r@%?u ~i:r^ow?5>v\S} %2X 뒐L&h㹈A㦃iͿA'Ʈ~rИfЪG;Ď:-/-(hñ@02t m쀯YwgLjaqZ47K\" u #TQ.2 "n2E<, DcADV'7Vi(o~@ gGc2nAWwc\Kr6r7}ǞXõ~cݝJt@>6qOA!BZ'_֖![' k)zRP{{隅d<kKa')O`]E%nߜ:c כnZ77Wuynl6Sq|9j>bf^$7lg{ @Ǽ6r]>[ߛa֚)dñy5 .el;|k?\v- c[Bv&O!8ۯO h_)$ ֊\`DEj%# uMF՗8G4=-יK! wnK`rnfd~'6ooْx-p0Qra'`ٟPVܯQ3 _8ِ6?]:eo~^J.a2(:(<+$CͰsAԘ  \-}er^EQzD#}? o,9.SiPb6$`Ǎ38(!_*fpLz `&_XFʆqm_]ViP2L<.Lf=8'euDž306 dOV1a) i5igm2dMj$`眘QxXj 1U⚙T jIoDtf$`*yxW8H[M\q`Z#,-MɄ)+D嚋JL\ŒVAiB%$Qn_/A\~,ͪeL(!'h+$BQ,N9O- fDк$"(i& ;JT8S3?a 矀x Ӡw-_[w90OKw%3l)m+$`*Ÿ 9 2)8Rp$J#_yV–vk£IXբcgbx23x‘L,g]$;j)QPVq(C(%; Rr2_k#ĦV\Dt'c @56Mr(Te-aBfQ4Ӛ~ûwK3R|$oewC@wkDKd뢩<|1dz8#an ȚXϳ&BܻodT mEyYxX Ons;ſ?3emܦڿ8K r7g,·_[ t.؜O-(q9g"._L.mrb]L,߭SE!ݹ0h!?͚i0ҲA;~KtۗT.I߀`vvgqwi;p.mޣ:sn{jAߠcJ|ƿD<Ә$~yxo/- s5BfYS"QEA߀* 9 B|)xjEOLny"%F|O N -H+Y8O`/#{r~h8՟ӭih)_U'^޷/!bq[,9~BB%|ÿDć[L?cX~b9Gq)Gcm?he8b^ch=/Mz-&BƉzsWb >rHj$?P򛵀R=0MVEi)pqW^p"oI#˼\3?,0D'OMNSgjqd^,\F< m0_^^~ms jG7\="qxl:#s8 91{9&f-;[\~!q.#!<'W_HIm/R8:?aqw,f:ѿCWa"K+_Ѹ81 ߚF@K$kM *e P&.WT7u_I;!昘Q"SsĜ-k>L+q]ɕ *@@=k>Fm^ycxVwBGvG%p{I=Nv1}C? D["JJXdnr4>7ѾҒB1*s[˟p뇸DW& _J ]w+*Kg~,:xS2J+lQ7oI䲣|?݌ՔLay$bbxwx&ooX:tnn/zuRPM=댘.:!ykksZH&"`Sx#Ȓ߃aM*ZA5҇u ]Ƥ(J/n2: 1ՒnO@7 ܒ0*=WEO+xq>WDcsa"YѸŽ> JCucɕA6ݝ `iɶ t$YKB8~߀M4|42'jgV}֔b)VWPáR[]QK=;c(d VnсV87h~)>q<[WdYoK|s z:56`Z|>+@YneDLf6dcׇLA$IAԒr^+ R:Z[^#H^@`W],bbsKC"xBr"/>N02EZſ\Y-Md5 c}A0;Z LJ4Lubh YMd>jl gONamy|iM_Fv8V?1c!gsm"s\r1\ "ȵ:-eE^YYjn.[Md 8>_&3mA1#FdN%_]]k\@Cn<"[fzccb+[3r9i67$wadcnV߯M̧Pѣcg+i*.ba0B6O5 ^#ku5=^@q.ߦEEQ}D:u.ruY1 3\Ir+(M#ٸ.ky!m$KleePJ}+%,|#WҪI?` =$k?\x fU/iwoR2nMwҶgς@!芗k?7AilWCs] QUU;n0ozExf^AEk A?4/jU@g?x@\-47J˻V'᳏N^b$9/cDKYn9!e4 04iC 4nxG*2lPSer/6(;iiH3* W0i/ /e $ԧe'ǪR Mtk0ղ!$Ȼh c*kA6@J04q15:޺&xtPUԃ ދNV %P&=}sy1+o@W. ݽ]AЉ`hMQ׹M۸!l JيpZ"(XaR58ѹ- Nī<K^1(ŵ=<ƘdkL{RwY/M%qiŗZyd KP(f^2}mSZb52ɈSazWGXݡMF;*Y`:MІd(F`aeJPD8ӰGX1>#';)(b cSJ, џ5Mzvyzqxxx cWLVӠhMc: ~~~sqJ瘝3iHhԿNִ gؿ'? Q)@_A;/>qc)B&Ù+9OTf13Υ9ye=tk2q:F{o i].>fL|>]|(&gO}T`#GÏħ2K1=G*ܔ ,j;zxޛ^,nnzF; fzźHVcz8BoW[K QWۥؖ>9[~|L`e[M# brh])r_*bVd{wx-J aѾ00L+.f;n ,Iɳ$jE,Y=X~X;QW@j2P.c%Ju"I"6"/>%ժ o[.ͨLժS)L[2 .*B*SCU4fT0ٖ16™ǼLժl}nK9Xzd3߂O)1?%߮2Sj 7?tE}0tRm{OV: lvt%b^ Hj JJXzkkz/$fmW3<ƒ!CrJHHЂM`.qIAҁi3qB%v} O>>molFouiӨeRx]i56`[ƴGNtWG q{n.ؔ<0a|"SvVQE˕(t%vYYȜ:SSr߾"|V5gT.4K+agʒS$NU3)+C y9TʤE7uC7'Rq#k00QIߣ4HE*$3芄6z3l~gUݒ *,%]dQyib0yט1x7-1p#kK4cjP'J"":#k,AV}@o%=اtW$Q|WGzMy vdRH$:(֏W<(k6YLP/VG 9 ^{ΒN3wzB*DeܳRݱlc1ʅ{/&;+)O=|p6Vi Ffzd?Cfc3ꍨ\#M%9MkVv}CLղbӺxEȄ24r[L#˴R^lZ,4~WIh +c$dPY>:>geyHΪ{dkx\{%O +dfZ*϶gN-*Պ IJ(UMr$w%ģJiz bq#C#AK\YTWI5FJ3}>rHF޹ie 4/;;ݜ[ז#kf=dojoWL˖i1ˬhy &IVHm:eZ90{l]]ϙJV˥ -sL9=w+eP,t'㦹9cb"YrEC8k4(?$ԊbcInn o zq}f&< np\tXƓ/$A;`tmGY A2W=+=sam/>n}4׬Ykv̛0:k/>nC OA*G3%\sOu/1V1<Љi=Fx&_mYk([zg(bch/ {QF޾q=@Zq=@vqP :VPŅ72t߾í4 K_mռnUo3 *iz޷G-玽LJJ 36oxه.|c x6WjwVED>eI:>wnE 1G>AoDBb"2|$oDPr$߅Թ}oDF⺵1\g.]SDǾ)IJ # JGo2Џ,){6$y! VGbrzVYhҼRt*MOb3||yji'SZ{z&'pVYrU;';OLxUtH|,h~d-…2_ LjJM|MvY T7hʘ!UYN \[ UW[5JOC}d{kJyx) "X12K8uoi &uzx 4az1ޱW1 xM10,D%%,P;ci[}>ݿe_DP0 r]YWAݨ.GW/Wq|._O)_x) iDLMh\3[hnҲo 5+ Kzo,w+g%rg,+2d0"gMuQ1R2DY]#b<! :fL7P+WRvF_H%2_,q iljL]5NoyiJ=^?5J9#N":iYiWؠ TY//Bw`zS 8;9lD:H pEӞv i-֟lݲU@h $a>4^ogpd0t]6]f8k@o3-\ǙJϟJX{I(|e 5չ oZP L\,\{1pS|LGc>'j+Žx7&kh +l( qrɣR*{ ^cӽ_G#𞄡:,Vbhhc4 IXEcxZ.=&P`6/Y8gyy5Jp|Xt~'}v'"r~ht~'~'cr0s<ܫ̡<J_Sj98忎+%+Q#v)K$,:uŔў]WѡC9{2OD>Xජ)ٙ| >r=&O hJ]L`d){n;j[gSЌļH㽭;е}PEQ;-:G)GǗ%N~ΰϫHf'k W3ouRF,+TbOA7d gs Y;oރ dS;Âɏ.Xt 01BѴk4-lO`,ۑ5o`\-oX7?0&s-CxY&.555k\lx^0nua[P<м:,B-(nHP/ E04筳Vީ6jgQiTO$DqCyf76ra œJ 9k@+f rP3R䐡iW`kRb$' ĥ5Snw lTEE0;HHJ&\O}M<(MMvTs:kt(b@#oQ3@`^ox3;l׶7@;< 2&- N5SjӄX' AU['B/Zg:1΁pBP~چ'ۨ SW' (jU5Fu7ѮTɉ(܀$tCui!! eT7: FOjAuwl4[PSb7:M8@\T[>!xW?G{8vTx^"ZGVFk)â] 0H)b|XϠ}qN6]߀*VHЙ"^򬷈R UϨt zvrĪ[6"$@iL#`B8[@*(bF1: _LTͨ 1{:́#a8h}5 ScmoVT6 goȌ ۛ~E!f+uүRBTGy3p.tp4N# reRv03?p=xl&T`,20v_4x0$q&f67MED@ 6i0!lfS`Y3N09Z@:*,9E6Ĝ q"A;g.Ni RM ufDa[kqٓ$]3"REua]?r(Z;\17tO m07BY&彭unц;m׺0Ƴgdᢱ])˥퓵 |TIԫN\&!'''XKN\FN۟jݓ*9`E f}f7z5nmks (*Sƥ= 14 r3QAT!0!~ ofSII#&FT>O,c2Q_ˆ $L9m_!6.\?ވ&:Me`kKCtRDnϛ4G. M6F}=,O#"g܃7,@=[蜪i9Ha}"D:: 8Ŕh*>4/t$K9_  Xd炥a8?4<Ҧ9l!(UlvRDB'{Ī̞&GlBczLF zuMo2ߘhqӅ_d+||+`@\ ZWq™[IU*ha"$K'&Dp-1HG/ATiI\lWIQuŃyási<㋁,H3%F$Zg.u(t{.ܘ./st{7}3 kx`$QbQ3^tyZZah)8(oja,Tu q7vyNYal`T"w(m5^AALoT0XWvd}kP3Ygy㟕]gjz!ah2֕3X܈>pXZ`;p{ P*&u\ݾ$u= \}rA]>z19aioqr<,Iq=N0؁kDk05=u`ގ0?/gp X ,v.}[ D23xN?qFQ70b!!ND}|3,cyN( 4%F1x,c{6X18M!O6)!-Gk ׏=+EМt뚷R<W8x\uNe"%"x^JTAW'HF|DC%4 ˉ +=mx\)mOu<oƑ ~b} O(ANMpbKRR)Tٵpn1τ켍 b{u܌_ XZâ .k1HP X-i3qIKnU$| 3Ù)R%cTK*TfP"\SEC+سt8ޒ(X'{:8A0+`]Gu sh-Dணѥ}5s0bs &UNTd`43<o*B80Y]nRԍJ9:#2{BB}uJw[lLtXI"v B#ÌM2$KfiDeI;eÃeH6%2}(x`£eુ<[  p,~0# #ϑzL7 (׻#hy%yM8-G3 |#!U~%Z5*-'s}Q[GHl̡&ѱF>7һ2[/*8=TFm}c ZJ,&ĕ,:Ң>3JwEo8'OY8AoXc,6ozgIo4d)bSl^h>w渽k:->%e[Y| \Q GnB? pK Y+/<^φס-:.(ٛݔ7繛͆52wS}Fn*C[ZyԊ&:[6jgoOaؼޞ5=`ŀL&[-F [~t]+. 6 #+U:.y t=SWY4ywȖ3^?ሽ6o+9_s5kz+Vqj˗~:X)&c{bl'6Od2ۢvق[|G+^^DF^KYv,L?z賎~I\f,%q_Wvfdy8 fD4 |R _-F#Aךܓ[Yi[yZzgnj:OCo74wiweգ ٲNvLR-Ӥs5| ֱ++=vqҾ9lQ%&_pA&AϞynN]X{x V~Wo:gY ,Ƴ.q`y_̲aV24dZAs4$ѯW- D+;(1669lE>[.iw7xL֧Ury I 1UHOAW1+ѹ Tr6*1d=l8os/h;zSyfD7ImIʼ"^{g.Ts'/Bl|^n?=X+ s$8CSQ |=z,j!k<XTzvc[Ok)h2I,y pQ>ZJl_u(A(,0zQzY#iQ#kf_N=\+R4k{0%~[Ʀ__"\|dH$ǂEY!j@(]AbJ=V:Z6 )NRДm`Uc+0E4DEE=VIN ^ueG--/9)OTL1FyT_=^crxT1 c竷PG,e+K7Qx'ӑ# Jȅ@8'B' ʎT qAx!ީeNGȎܓ TV\N&HZ0Asܵ ؆mh9K2"pU9}s2<˴Gy3'i"ؠ@XrL{&]`7)#{ >h*a6(IFwz#2ۃrdE -G#.`aS „;0ʄRL~$ UD +_oK\tLR6;]s* S*GJ=@wKL ҠYC8V}~8:,ZAs=+-s󐄁?#IdsM6'dikHJG>Cr&u@4X,:#w:tk+˧IBmNYVfQt-brX%ܼTy]V*/Է}']bVъLIS)_A!N &”܌.2QXhkDZ  "; ƿl#ʭ,jgLQp@QrX *LS̳ca<YmN֔XO,u`^cfYASZAmeu7 S&>?)5N7ӳLY4t^e;MP=.y'/38Pq~v0e\IPVl(d#a0}e{Hsg 9Na'au5DZ{풭%<08$y&﫷f8v8 x|6&;d4atNbBڣHhxm9 {mQ7ɵv5Zِv֠Apk ewjWv ɇ4f)KS3@=@Ӡ8|CLWo5$-eICgSԏ9f,CH*"C(4GS w@KY)q(5rF6Bq)uBA&M&(.,~0rNI{;4|Ѥb)MNʋbޤX8 ~CQ'ct<*M;2gIC3jh /ftAo&2};:tcW[c^ɌwhqSS:/[H6Y Y94{s-.>"GE23<16}-$qO3f 3BY H`b{? FǠ>s F_h4Ϟ)ED:'܂x {@"Z`-.ӿVi)E`x"k"D7bW# " j"_54ll6|EI̒Ah:y'Ix5zRu{;z?^&_g \x*F&:}@sAuFknyQT{ m~Fu#sE*ENf·kdȉq9q,Watl,qB\)_Sm?¹0χ0͇d)&x=ug^gmh$3qLes8yla9nN$G RdŸDF΅?>L:SdLR9r'Iw"T7>LIFjN jF#sog&%@{y7lbGL%~LxPZKs\kj2y5vs<$F4f/ K2c9sdWVi.ŐI/P!ywycM(yeq? jS ͩ/;,%k;E.eVW:  B) :QmG#s:eu@`1E{xn<䐗no,\JRgYgqf2uI642񯮗{U^WsUL<2CQTx?H^И8=)L$6w; 6?~L[RCA vę ښK=7>bzdaޤ@[e,422(b͕ɷ-饻f{vXsZs1>n*gypK^z@s"5jJ*+\y ?.J~T1|3 yp= '=~T㧣w\^=<"t|F*܉U[ww!~8{ }^'U W*OXLΤ_29gZ~l#S߱m5 i`h=Ph8>>+96GVc{IJ}mo`q TkwZlnt0(\<"~[,jľ5{$W/Xh_G?w~Jq7~  a,?S0]̗hnIyܵ+Dܣx{W`=tQ]s!<&ݨo;ti &R^[*f;o^'hH촻F`x/(&و^7{S.n[y.DWb'T $ͫN:4} ͭr TUղȳїaK6ju6m>V\ZIYxAD^c !TĆh8ҮaM#j9ܗ[D:%W˄u:l>,:􁬷|SdX=RO.*9̦UKR&gqr:(wC/L }psL_o2y?;+"ٯvڮu?[)s">9=ﴀ"u@}0XQk>g'S7Hgևsin,z=fڦ š1ߓ'c'o{ˠs[Ј\&0& B{MhoaB{Ll !4Y#ǽ_٢4Gs9Y</7K~e!Jht8DWT~{I_bUC"5}FlcMȜf̾ e1( yz S{Dz R{Ni>.+֢?ǖfgg'O=3(HL u<7vT ~;8BR6R3 e@|_ C@|`&cgA|s`&c'B|`&c f,^.Q\Z-)SIfh(I%]v$Ki){#<͡#{IA(W@ `)&.wMxK 3`0> SaXÉ)m _7C"xz/2o 2ieS?o$uV.yj z6q^-eWspͤϹWh&})qbڛe4m> s4$=.o 4 o zf8\8٨PKiekOGTwKhI=Cfio02CA/hSo$@M*}&䆲*7K<%D6k7|s7 M^8 /b W -wܰߓ1l|hhM\,HbMz\<RG-'e8o,,'Fj*h`AE0 .TiO+)~O''4p1L4Ve2/=wҖIx3KwVXV?7$-0P2*uE.{S-(ݢrh %&)2&9黂&Mh<#J=Їh Oh~pPy!\rnrSLjs747J! ĒRx2)o,{jƽ  AJu^ukvR7lޤă peَixaL0^Yu\@u]-WPj)e!; ?2Xݸ.֜l$2(s,%ҒIK5/-)?7Oy1Sa)`~W 7Y7|vVç_cwb kt=[LA6D+q5EX!{>}q &f)7_uRRw*jmQI^&\lN Y  P/"%Xm^,S,a heh/?00H/X>m[7v"y=aof2q٣ 8|x {|@z'ޯHoaV7 L1ϐ}FJR=UnW>NSP!`gW1l1uq M7Xךr V(5;Z@1+/ԉewkKTiJ7W<-p\HXPD^"u{VRo KZeQ #+u3սW"KdA@xYT$g6,I,\*wt("uhWV[/]R9nu2 vs/vEExnˡ]%9zͦ_NUH aWfa(l+^TfTf=PfL ,Ui ZeAÌdawW](HZbIgj*~wTī6P+W7rerXl' q«_CyXK x=f% JalvK{rppl~"spS=+X<),"0p\xsM- %.= d(_;ʯ*2m (_Ş %?ǨllowAܣ){vlೳomVݭXe-.4U%dG܁%*nyr{hmq7(5C]D}owg/^ {'?c`:"S};,b˱E+`\yz@_=.ǍE(m(.tWƽZ-iMblI)*Mh؆Q05a 7dikh.Vש%k8o.Ls<^-WpqpQc1بmQư*8 vUkn7e+ek5R*qf 52"Q  eiؐ `1qIGM<9uOJѨsbh GⳀځƝSq}=C0;ŽEm(#^%T,P($^Th GݹyT M+sϵ'D+~-x- "y.A?IEldl=Wu6^[ Dna症 'G$C iPf ͪ磫rih||2Aj-au`5|`7M&-/wf_etڲ]_W[ZqJee>@BClw&y15E( '^ThxRQԏTB=} ^й Rxc\3;euTLJq Ξ.ȷWDhqq_vS+h,^js ]yEe2bFcjyHs4ũăSlF86vyRFs,R~6 ~P_hetDHeZVzEٽnY_| }S-W51- M"KYZSUfJxt2'Q0(JڼJp* E둊HeP*FQJl*EĨ4BGQ-sFrF~XkB˘Rs 鶷 w1vZ_Qj(_ϩO7CSW QHHjEd JQJ#E'Sg %ROb&< ,V*(͍ a_*8: eGO-?d,9F7e 7"˧2>Ka5}qH=9w^x=4$AO1)i9mfpTc}_GPAUqd!B(.WZƗ/ /n,׳LC =o ~SKT)` o=*ύ%/B~0񖽄B9+9V#VYk) h[xj1s3I[wQP{tE(/G"E*RC2*GcOAK$wOv"qŔTq]7:gm5fz^:{q0Ak^V8\L@Jse@ Z@ lKM-+=QsH9ﴌٽjo;u3.sGTZ4S5TWO۵z?7{;E%|o#^u[r!r סCϊqR< 6M{v<!&@<]P0i7Lh2`&[sPBXx5ZW >[5x*G-bQUZd?%$2$ʏ -Gb>gp/\6˲i HW*mgk{߆9jj/c }V ?SM7{C QX1a ZYG>1fhwob %ڞeئ.4/yFM#3cgjX`ze@e3ZVτq7Zڋ! ,w/2N5lLסzZy.}8moj{ƭ=b%.!lC =lu%뚷{Ae2b 'b,RR,= m!z~kqV;ݓz$EI~\_ g{Y2fK2$%6zLil5 C?؈q6SpxoLMʚ彚a݁LSQkhoN\)sy+qbI֛'蠝*B4zc`I_ }f2cƚo"E۬W[v(%kH"g@f]wABWum6wr6&fW7zior_xoϠ†ٿ[iЬ6̴lH PF#lsrݝxV٣H 3~ 'qI^`?S].X9@gz,uXם\D(XH(f* f}Gi8VNN*E7 #{̞"J@CkmɬNuy9DvS*P`3;+ ǺyMD0 |(_VB0*XA<2DCf4jCs|%lWj%wQ Ɔ\JSy*P$(P;O%Oڟ.V#A OIQc<$B9YdCOL,πXc7jQ"VHr֕WmM]XAnwD)$L4A}6u&M̒+IY&RQZC J߯ά0JHK 3eYc_H 0~._G*}'ɦT2Ya[5 $q1o#}+i,lPc< @z-蛛k*2:$L0-&ey[dǙ\ t ~ʨ C Ys%{XE*%ras9S 8N_YC=qqْO`6`2j6,xTѣ"H=0xClOSEA&͹9Q7"<&0o~B!/X[x`ѷrL]"謘^b}gv c8aŬl͎cyqr6̱j$ @8.1LWWWWWWW:\fCTLŬ^w8?JDȔ"2zcFMѠ3cq+[ԳU;t+0GQTj;vg]ȜR޹=/k,s_Tv N=谼s}ǧW깶/V}^8k {FLËRtT}:ŔSFؿb\v'$(gщPO'*G)>\Mw|T]j1XcJ:Hd1p6r ιQX.A$û*JVqedWg0[2!nׯݣ/=Wk̽5܇t}2oI'7ZZ+6G{7<ꕮ{tjM$-J :Ww|Ck@?lv@NƇ5]Xf1<3CtRw\yؤM7O &wJ.c;>?l* 89Z{i|?IgN5ɑۥ\1Eđ?GK5+TTLYTe)&%CȎnQ{x%r\O DJ\S?8WF _rqt刷Ġ%-9_Bp#^_dLOϗk]<x|+=Ѣ:[JsG,jP Tܢ Id F}rRwO [nH sh~NAqxtv`Ά?SR1.Xs3*Fp|A_-~i *g~/k\ouOn~*vy]?"V|ji?NnT>Iŋog=;gѨ^bq7J?O9rXi 0Hx`p2"Vf>jvջ amojuA{}^(OY]:n`0;eLl\ڋE QI,dZtd֗ZV%\dv7Oq7D$Y˟}o/eVj2 O}׆܈qϭ@V<?y}'www=f;_nZ>x ޟI9mg"M< l|?cge=4_r,񲱇Wvq t ' ͝_ s{-Շx`ee૫xلTQʗL#_]O]zx| 9mz|o#<tS']-5it~[gHTq~_::X>%ݢP<-~'ݎ˫IY67Y\XQβ;G'G'Z5#Lk$4Ӌ)eA0`eV?hq 91LB-D^oOv;yϽ1s?_Ӥ'1VהP j7^b|P5$?0Ď M >ƧIIJ}&Iu  e?.`=±qBGm%od_E%Z1٣J C)¸<ќII`zH[y8[unOCfg6P jmIA UQBRͭ ſ{OYMFlmmYx_v gwyJB) )u+(îa?Ҩ-Zb:'t./Vbxl{SMt77Lifk&S[=z^R': {L?Lb(hAtDjM?jaz=w&/dYy1U9on;йdȝ,Z3*󆖭[$>$C #lV6 $ @L9}dLY0Ҋ`9aTt4vg$Gh 8IΙy? %_4+d[].᱿ߤ ]Yk[I S/ %S1_Knt| ⒳8x%*> nA*U]nZ/\Lc.}ggQHYQi|~~\9-fLD~Zk) k p }0[%e7hSrFic!L-fZÄZTM٫Ou(n1!6#4UlR =s|<>tusrl->5ft.f?_o sPP}LVØu޻x~hL8rV`_ZX+#qZ]Nӳ|8=_N_]; ( /;Q/UdssΩ2T^UPH()tG} ) [A+0R [2g1T<:b, _ %3|M1bw1QTɥxNN .N ֈ-&b.J"&ꢲFjz>aE*sxV >Hn  u{E)y&YA\uxZvRnOON&I&I։:qZ6"%ab>buGha@ ]1䎁 $jƂ!a{Xb ǂh' W?㤟İ/t+^AseW{{C'fŦh]ٜK;׿> nHuL)տ>y oQs`v拃MՆEEm> l_ɗqt B{5ebomc]~}y~`S58xI*;e>:; G {FZ^lGfk_U߅.\L78)(_YK;sd@|8|?ïY0K0k_f:A bh0B .m p3=z0@x#v+/MLK[snU[J D؋Ua/$R: ;WBVvgY_) Ô\ %e홦 ؒAaV/~8#z7H6F$Cv&&T _~LE %x.E akػ; 1߇@^Ak w8^[8#=_` |qy`޺ <Ե sFbo{:#)ҋwѷЯ,Ŕ}9tk`c0qLrWY>x܂~f xN]V{JJ'Ā %Xx"BmhQk4 CqloLΡ\$ͅ+q#ܖ;i1N{n>ꐨo1.h;4o Oqm[bPOCzIϽhI"nMk LʯXv~Y#Gv?%KD^#e=E(iOs/[{| *SVD9 Ѵ ]tu(I_E>z"˄R`j*(/LQ{x6~}( |Ӏ{9(9Ic$ͅh~rprc9g ț0 N;J®yTbhr6C!߿-yŗ߽-5CLQo53JKkW@iK[Ef#h_c^)Lf.K%2_2-^!'P2^(bi"K3ί8=!wi34eM[Ս֠thFë][w:]RS^cK'[ϱ1,*aD_4w$ 0UC + I*Ȧs3?WH6 gW+u%9[1F2>[Cj0B4F l)re[\ğ{7lf99{Y'LC= V7B3lƎom0P]wjŝ8=ӡ}-~ɊaW)%]"JCPobOWf7Fb{MDH➌MuvH;w,R'jq]Gb2yn;3ܾ;;>'hx W9]n*auɘWQG~E?K3ʸ"&P%t"íu|4剜C|feD"E۪zT=oJݡ_0RF&W".m`YDwZx4 )ci%&/-x΢zP)}>k8ЫHgmzG59U<'mp%Y*MuhBK5Pli2A{N W{R )ջȃHI{(5UӒSU[ʫݒVER̊LgVFJ`:V*dUr^TaմG/3Gs!f_'qNz1؜yH >uuxL@/sxsqp{}Sj9fFK*ǻ]KɅ;#n/P"Gt@~$sϋGyH*xDIM%X~b/ERH!w:~Ib^$1nuxTAE$U = = = = = = BwPVNqϐ_t Wsqߩ⺿SvN?};`M EẚjNU]}IPfgSқA?Npڭ2wb^MֵFPU0W(y=~2W(y:BClVGxgKstw[#]sUȪە3*B'*}.Q`{B.( > ".yX[P`k_uqZ-éyؚݗs).N X\ ,)RB62uۼ=V{)~{)~{)>}. ,cyu91*S`Q5B [p B'Av_[VL;4է$s{܎2S,a~$ܚ>}b5fE9FӉ;3AH6`zZe;oюQJn3P%+u1 ixT7n pKDn\00?Xve-~wA*V=݊ĸC C)z?.y],lZ3'<#ʋ2꩷3E]b>:~DiN3^"tϕW_4ދKPN2Қصh_T]̷0|_}1V*D Cn{B%?;3u}{dڌC/q8ܩaZs伣_c=[ϓ0v^^Mrm5㣓ip-~D_Mkwt|2N/5#<; =H6N-_8~"A$H;1XP(ģqvvA9zY}M@nrj4H&QS8Qe4'pEEv2 N/-V"L}$B{v=N?NxthEN(`ݬ3tP07|2Ji$!l{0('$43XX*ń|f0l"El:biL 2XLIn Pƚ(΋QA)29nȼj`v>;8iF ^6a`?8>6OQpޝ6|/dIݎN~ A'^Z;g+NA>;=Z~4-ylkN"tZ׈'It|nF08j7Z5?`v~h*51LȠb('͝Smh8DN i؄14N~ZA2{hqxl#Ā 9;i 0ٻi?:%'~Dvs9mP~;k\1u#P0m@]5@P.҃(}Є'HJbҢ sj][;M}l0W6~?63;ƿzuWh&^0햰 oPBtOA~ڍ׮w^'{Mzs Fqm8M1)d!-dqU;hD*U~6IZg =q~ܳ=wφ. v>Yi?ǰ7ƷnVJsi6ecm;~ހ)i6_˛Sf Υ (v>Hq|O˸3!|z?ڶ߇gӸ V7kH9%ߛ11!ct <姺ݣU { 4H(ɱKq+^<~XZ(' 2U0.տ+1Ď%$Ar!-;dz@V  !O2 k 9w,2N 4pA剑.BUv)GO_돭ST(.HJ5O"mw[(n5ޟ4Ij5Wl`{8i>;DҼ}қ vS܍v-w桶#iLjAa/[(u ;䂶`6&}dWaJ[=؆WxJ[{'PYgo^{,჻޷zNob`_lh3)0LA 4kx\=*7S*}\Mx5kZgZxc4{~{z:"%fKI s`LJM//X<%`L9 v>K.Z9"6 ;e6 67=Jz~"-竄 lj6Dž%ςbM">!us|`9Pg1꼋*<+=iB+[QAPX:S5A΁$I\@uIlqw'F))02+q*rTVžkrB~9u'up/*SI.!j{s<kW=O_G;䶟݋i5R -:T\?ϣhx} C}8hGOwyZ`GN4OHF$Bc% 9Gh)շ>*aX\,Fg(ZKv֌eYJK.RYVi_#,234$ݪ!t_T%QP"HKn@Dy|$ OMː20Nխ(8#4v"K}f'j(xw- ^N\2}ߐO7~ )sKؓQ7:1%A*L`%mlZ3_ QA㿎Ng'Cɟ#'R h4cuЯ2'^S p G?yx~to;yxxxxxxxx}w~;<8p ɏ'|kWtcezD"y ,F/t3/ȯ>>FT_uӳm L7fl"7??Pxp~4eS8Yh4j 2d] >FܜOFrԚt;drmGǧΖ; p ŰlrEh{Uj15݅U$ IlI\ʕ'䅋7Ym<#"DlG{ ÖxiL>5҉>Q1.VECs o_9ȱ4/v V[r RVO/a, GC*ÀZ_@đX#{&${LU93f@#gHjOwv;9n$ԟXjc{}ݖ.:#z7@b ' '6/U7`׷~j#\Va7RAgqno|-m,c3Yg{'Ԍ']4-@-e/Lif"1!џGɪhZDh?ݴ|E1Z3ү̃ॡ2GxY]Z R@AEEۤoD(w>fN5K(XcZ*GDwp`DӸOATlsi0p. 5x{Pi;wZ-AaoCRz(%6R:I Z~>t?QgqߛfyV:~ΉUG-IEM=+Cχ>j1{emQxxZ.a| 5yST|Oɱ-buvhD%;zF]Ԅm7Z Z)_;foF4$n:K NϐO]=ŀ&nqGdnv0nך:]%Pm]̷&^Veֿ P-r?`BC®?ۏ?????????oןs{DeZb(c*GQ~ԯGQ~ԯ?~]UOEj"PaVv d8Q`e<ؖgI+Nƙ8[Þ ']I`e}%` _%n@=px8|<>m'J޻?Gzᣊ>*>*D!Tҏ ؟珷R_b6u5˒Lr-r)h(_Gp_9ϔK]q_E~4/W0H j'c8P0e~I0ԟќIhlT~}3G~ v7.nT_gF_b2&ղ3kERR`6aعreSN'zݼ;Sth[fv C,pZ*3mv96+MmxAj@̯@G܂fkg f~.A:8@|tj@/ Haik R~+˭7oAM´On O~)<*b;fs@we|"_?mܿogqcMΰ~n`K-75Zv33gSa-5Etޡek_{$YoI[^&Л:η]*| 0JݓΨV:kn+lubC-E^? ?l/;yYƃqrp~>axJV- 4;;Q7/YiLVƞaOWGI7£34l&'#lzԐ_n/|/S=B\]w!(Ks8U6,y6*?WNs;-JĔY)eM~[gQa3sG*ߕ*G?/H}Rr8^>h>R\AwE?Qݕ[ņwRkCPr2%f\ ہ♜y,R75>g So?uokߒֆ-iVbZ o}lk%cK[m~:M~Bm%75aoքM {[s Huֆ)ԅ K [S 6 基42|4/Y4O, ks=j7][ɦ~-o&7jB.҂M՗nngԟ?N.k= 1[M'wSjftnoцwSr}z >\^G7K7ˀ-/?=mhM ?dcV̯F\׆_ShWKW7!RI Ho2]Z۝;')HA.L[d̹1vӮڪj)M]f>:oEa73u,GwIt80s4J@}1 VI淽αwnuy'zkt ƥL61$Qh[ ǶVDl{iv8=mW_d!ؾVq%a01W,O(^GC'XcJk`@oIO xJ;!.0u /g+fg4m3᠍Q vٔ閒Q|=>^[ڇߜ  ˞1z(V}YEaPeuqdA\'0U C8{tq_A)i2bE;2`HR% ,ۋq>+(^$)NMҙR~B<̎ k(bК^?tD1.ŸEtDOos$Vmah3NLOH6TJa)$L'+"GpɅgLOFֱs`k7 ݬNvyw1oN㴹[ȅb^s$ly*ja> U%~c[*2HǸf\n+iUeoB0ALE ,IPGakQk',K hsp Z38C im_$b4dVZ,I`P#~8?fò<_^6u60?ou̠_$FS(\G2 yN =Ε^{ ^w)HMCɸH8^D:I^ M?7%CĚ^"r bvE>'Pr/C9qq7[;y cLbw584w#V I $>I,_V]nW3 hFX2OWSt<\QI`Wd*Rl ])a?tء"gQ᪃鰽dXE~:7(@Wxlћ^qɭ=P!LZݱz꧟:ͧd\2cy-~70Q[U,*-3X[:a+12Vp]N&`D~|x.X _G5j t aT:&-kFm*<|p>Y|BPp5h٨r2`+FY4Wse˻g JnkB`K@  XYN 8ڐxX_`G,L [s>|yL"B;BL4n\$zWN>6RMé7Jo٪hⲪ=N&f& ]qa!MG!Tj)!lvwXg KDo[M.fE+. Ic]%`N9LTxւh]zS2i-6zlּE3( Rmks"(Em &"M,YNdem1GUd TZ >YbHڌ"K/Ĕ0;U(!΄'ZI}gܢPi &G:(ݣzw嬨C*)eKؒF&[+&F.MQs5|0L,a>Nq @LO8W0}3AM[Cx `kM < :o&Bڻ2-6#frkۏ>X9q>GKqgbމRorBe2[ٙh+'t-vӒNuΧvmK(?ðF > ѮhB}a&iNa| G:+; AȪmf=߈ͻDE?f=:%`>W/74apdTk3m;\3Ӡ6+g L%ӑCEƫw@P3q6A>>e$J^2Ilh cP޷JInqD=DwBEH|^`ʟYxh{.i$\G~E]Vggx"UŨ,)zR } UM9dW.I]gQs'dd i{!Z.P0cTT'sk"&>M𗮐 h8 &([.:PCDp)ƴJ#i'nQT'-L|s<)VBCܳY„fhMe':pa9)@y'C Ce|ծU6u7ITӥUnZ9;`Dm49e Uy{/mdU;d mUU9`f+1 iQ˳Q_% =:$Bc0QaIhͨ\'aT2ͭ ڸw(84Z IAUwmv2K'SM}G‰&gw6GH$$ 0Lrթ-` zD@rwzM&HG*D~79ɪ[bY`X*Pn͜"݅4bqnj-[ c-ƃlY(\N|m^qVftWNX 9)x%؞OgE6DVCq$rN,#wW啥gkNv+\,#=535#+ͭ#3KUb .ŧE4+pgMd" E{ Wxa Sbё\q̩8S錾O}6mLw&f=կok{k 3RuW;- b^)b6smu,|b,;#WIh&*} Xj'Ρ'X\-[TW#LR3bWULq֙2*l7 8W6WQGa(U+-9D> HMFGa,zwtsDR-*'Fѐpry&B{U@PCi2 3"5 (G+u}Mu!dD?l4, kR2m ̠'Yoib@iHaB63%HaJبedd#|?oELj{$Em|nDDb.Ͻ1Ou88 eRgTJv緬:!ţS37A&>He[Ja(+2Ue/j;8o miYۜ0j<ǘ5Ho"ݴKhh)]]k}cݘ"QaZ\cɵo'(!J$`|:!kSXYpQS>Ps 30+q9e(\ Js5RVeE!7ջѶ6-%fiጻ ۲u[d*UKǧ] Gx.5i8)$s_ASSxPPlodS8nfn&Q gNʮ{B:g=R=~[o^c3t+%Jq3f!_gwlK(GCq%c\G꺦l#Aq܏€ l$P|(ƍ)DZ,8hs(!pYsgG?`(V#!ș5Dwީ^H*w3cBx( 6)j22x/**}LfmfMd QtYY62o!^Ż)} Me@:/Ezn׈Oˀf;9Zp.bRͤJnljT,O0m@-\A*'Ƿzs"g+㉝lVlGd~N3y/)Z /9Oʅ ט#D Zʖ4V.WGnGSpinezz+ƱFY(Bq M}8zP9Zh2f\0On@++Ha5a^TDR#gI ~? Xr)WS[VJBԇ@|N6[Q/^E٦"i1Žio)a\btACsٵ9͟{?Zj `AsuEY-qZA)͆aI!s1MDֿ.Q+>s𣅝§˾c Cx@ӯ8V |.)mW*0ew>Ii/;C2h̞DYatcB)(|b2;gh"3k\i qCu6I$Q'VQm^Pu n1wU O5i $I7V~ NUuy DU<ۗT[t6_ʮ)CH7WtOĦH:5mK>ͲЈbtᔍr1K.-|x 2%#hڝM;b>Jp\߲c;oWbid|Rj1#Ӵ==n^ᕏ$ڔ2)0M?ɬM]M7т*%6L(:NbrD j'Zu[ֽ(8vAwNJ}rvcYf\J]"k^ ehLvQV6elhe[p%:T'_D8bq:Au9ǃT:?Nԍ̍hjc&s[s?eVfLr xD+@; B{vA:(TL [0y2>VWsRȀ!SYnDp%(}ewKM:OEϻ|OHPE:[?av&X.1r1ǰ KJF mN8CfÎ/ 7خ>YE[7s/h)q֧Qq >($lfzt@(4q%%8сBܧ\@ּPae]R AE8vh7k,EwIe3DgV+PJm*]MBPgސqbOVcR؍BF"nρK6?-.Ck֛:gTBj-m: Gh`NZ^o@! U CnU+P27ԃi򂟃^!=W~ vpZڴU20`_a8:ӫ҈JB B"Ե@ IQ<GfJWa:R*A'^<*F"m"seͩaEfrAۡf .5j'v6mmsɺ]R%5MF SПp^RDz2bvrJ2_3G\nrVd*ɥLJ,hA&!VdDJ1ז|ΐ{bOS,U5l,q1N۰ΕhJ*gQAC撔۰Pb PanTuv%'Âj?KXM9P@.Mttn$ik"Qi kQ~ H;XKv*L-~SVdý&VNíÿyַSPKl5Y7= jFqW.mOu?;FztGT *E{&=kUcܬ]1Љ|;AKn#Sx4+]^4Wdl%Δv[K.%KT9쪏lbԌ%u)ZĘ<88y؜EgySϙK ,ZTlζCsM;,ews8N5`:8PfdΚgKpkٳ^Ȁ&v>iOj`!8R}3. D3~H逖ۮa, H{F8!=3H,0m[eDSl 1jǛN/UIo:)/97nBպ00leg*[-+DǷA[蔃Nv]E9VZE&WV&@S~XwHx،Q\^x1JEؼmϓ_ƢMٓ \_"eb6sG*Gi!Uwewpз$zE%p^&|%a<_o^~:a9%^v|Clapw"4j7^.Mogzo;op):nW1taulH} .Yuuz.$"{uXYzݮb&adE*om=ޯ7\ V;Lng#RS9v w Ws?Xnڔ^Xn.r6gH;T]ܲHq/4E-tbHmn+(뢹=7U NzP配QXץҋPKU1*F*R*r'2)WA :}ct?Ipzxʶ&u3)t3NG4^˴ -Ŵ F[Ʒȷ|Y}KE=6`y Q0{O7EBAiN_'PrN62dN_PW^tR)W>zrAVsT5: Ơ*^L[rG8OaPH_6~/#L.ollN3 -&f1HMSE7v-zi5o?GK"\VꍳhT ^?jZd0WIzy5y/kbBep_ G XH>/zcCw*kdJ<b +")g GzAs4C''2XtMaCmWߦ{]3%gGz7ݿmMX3%$a'VKų@ SE9i9E1C" 6&xͤr8U >T 6Ӵϴ8o-yhyhsq1Z_L{#fyjOy7ݮS)58-!zlڴn~<͜o>; Ľ9,\n a ?w)_HR\R 2^LDRB38= ۑ'Ny9s{X2Br1%0);S Tx_cUA)9ȷǓ:*1u">Moa  KdK4BoLKg`׺EUpe.AkOqSPnPdS?]4Lz7#-MXP.ȧ*aV A%It^4YMç. H9l"ȪY}rvc!r!zkG-IKqqƅl%%5ـ!B ;5&/`Ǝ%y;5alڶE-v>uElٶfX%x ԵԄ/%tHdVB֌8!&š1Qg)Rr')S6VչۋQ|i}[ w 0{+iCAmO[X;~ G2.Pk1Cvh)^P|(<֢ Crvl̀E%G{[B Vu07@5N +N1U_hYs㬟vn?(|NЖ@A U" a,+x>IB˚YG\VNh<)1+{VR|챢cƅ4on(-MN\ŽMz 3M8Ls"B)E`~0O(5eJAhֺN:4R)~58g6XMN $'̡2-<dOF[|/QjZm 8A'Eq4gbq!?x{PybÞ@k{TVs gЊjf+&[%FQc9,kQ:%PFt*,/6cpkS_']~礟'/9țPTUVˤP]ShwkqX ͍AnЌ7<,/PORsFS u r"*zZ @iNڰ$wCo?I!jO(v9ixl;*k։ujd1iu@-%AgNo,&.@;6x BJ9p5SbP.'CJX/%9˿7R*m.5`ϫ\i)1l*)آO{ʓgKFk)!sYXH{~ؘJt;#%4#m^ U9vmQBQ)ez4)e(vdE;4T&'{*С ,u'Dװo#@Sp0£ i^d ~w@nZ4@׫ybPѿ5|׸̰(lkEG\`;58]7jJ2$IgmQ?$!p:[F;JŋΦY+{1o3Sf8eho9;C * [+4QF*EbrTCk>:`c{v*"j%T.дKt*!NybbIPդ GjݐL܌hģJ GfT 5 'F+Mlr={vӼd,@ɧtIʄ=Wwh(X۔-žy_5̅fqї=" UTOׯnU":ohNV;Ge\^9 Vd7Q#\`0sI2 Mwo~+n3g/)(ZddgzѨ@=Ĩwteqۥ/Ljx ?FZ ar[L1. -)m]0`/" 0}vi~̞5Bdž9:q͂^6!,trn{eUbVs&>F]4Gӯ؁F_5u*V|TvKgv.!P 9, +܍l<($u6 =*g;]rCFC\BwQCw)cyg5 ҧ[E[sPREw!D^9]B#ac_HB7ʸhn$be\T+*Gؓ.UQv7Ma!QQE]kt_>W e{SqszF݉er}\x>hóif3H&5| 88?渫|2h WV9f>"MK%dYt́|m_q] ȝ4+k@A'7NBfױ,Sۀ&tn& 0E7PlfO-q@;0H&!eD)žre]S~²Qôa>f۞HD8u~8w]ƼH\#Pu18FklUY/,;12xnstŘ9_  l(64\d>]{>}!)%J{BS"ZE6ҩэu)L|^XaN塑Mf $Ah)XQ+::ƨj>#k"cZ}4>ܳhc=ZVR'+(bږ?{Vqchr "b9lFA,K_QG5HMUn5n!V Hq~#vN0}4)n =wUK yDIy'e;V@ ,O\US3`DD4 {A `4cYߐE6.*G] 8J330:.C0$LIgRTw]K\[7[쬗4g?BGWt}CBgU41@=fD8 j'I+)A}*hX7VgX)Řdq{ rmcC ^P.;f|O'݈n:w  ]]|3bv5໠M IF:q+UPBB zFBU=r:6x^ wF´3ە;Ĉ+Z5aRmoJ?.0̆#iDbΘn?:ظᾍ]ja`NGA]/afQl1 Ix(/WX>(^nP:~cxw^"^2 w)vZ59>W$*v€-lҜV(1CoOVLA2O1޸]~- ̺]jA8Ѫ>tX"qd;K8?:waY_A$ *fk' \5)l FPh9"9󴐂/-bw-jOAT0%j,5KGC|̙DEuD}*VƆPjRKk`Hty<ήҋT﵃Vϑ1<R2@%Ux0K8:|Nœw{w>yl4.Ԕب1h载:oD_G{02}HQM ܀5-]Oج|,ph571gZ'v'sHܡFEzo%q<Nn(!u_N[+>ƕ!d Ѡጹ-ұxyM 4Xd g{UZ@_#J3p_֢d8h}-K 3c 䳽2T[ fLByd]Q&)Y/tMM?޿&8NZ+U?Hl;۾ JA:6A ladA#wy8nنYLٖ#p͏F[l#*ᰠNQOr۲֠:[..jaLX$cJd6!:SP$p(g$7,dTWcuzCcy@Aڒly<8?:OG'f;H[gkSj^ŒNMVsCQ 򯬠E1DilX  7HޚnѥkL/iPaA}&c-M b;Е.%޿"Ix+Qܟ\e˫(Eu ZS2ul82RFUF#yK_#G~;Y8 mc4+w%Xg>.=R9z+M?gf- ~3hl]ha3ߩMl\ Vuy+ @y]Lj@0\m05v:bR+CEa`WS Jo2bNv+TK[GQZ| W殀NL ^H'! yPkW]ߔk U9Hʈ@,at$~x^äP?='VTچ w> S-Z:Vj) Β{E#H.q)j@Gբsz: ]bA!H{&ـklЫa5{u+*E) ~7 8`^x}y'z"mQ@: Neź-ZҜso`jY8fSQ":סJYėkQu\w$+:^{їu6Trx|(*_p%=Р" +Ut% 5%.5'r =e|ت>Jvr,ٹTG\?pKטϒK镜PDIS"_їIwAKʬ42%tbE䔾sC=`{7-®wv6,Dpf]݉N ekd xHx;Z42_(s] ݮ/P ZL/tReCF.Ur31LƯ_  tY/7kWea;`Jiq!%P7ţe}lgcs*  >ŏR Mpl;//K0\%hxv|9:L&(h)Mj2察?f|?[dє;\:@І!NFl@֮ըp`"&LMqi7A9tJBu‹\g NjcQ"Yሕ\I GPu^R)tA& "lE m(9Į0 }F/͛X+U ?qR Ȱ.N[;ATʚR^DŖX?IS̡t< l-ؑwU䀛J(ˏҁPXaMf%)[\] eP &)Ա)փNъ6!"Nr B W,:0T6VTfxI ߨ6 +{g#)imz7VMd q&FBPM5Eyk)9Hh!AbUzH͍BYS3FUM }H\gYfa mHbrLyHZQyչ~9A_PdS[sMY(yIxz|g#*q4J|X;=cU l*r*KPL(rܢր\()ZgUGՇvnܓ1oT@4Bņ Ld:ja|I @謖JVEL_V4[L aRog"&AAblZ |g)|CXA,924YӲ]} `~p^bw`A<S4sZ{)!P=2d3^( z }ݱ!WZx~O btdE0ȺA4^9ݒFtUKU W9%_.jg`w>6`+uںI̋cĤG([?U8 =,O+9N5*=Xe8f(k*ϩ>ܠC\JZbH"eet RYQxh}L[[b>hׇz6JZ8oB.:2DzPݭ]Bt7mhdfMZ7q:f Fy`cD~UL=nkկE;ZV&*_!ZloI~%1U^:siz/-qDNhÇ#&, Rb._UvsuS Aig\$kK< 1sV* śix b(&#$\!ٌ:pW"S Q7xN?>2D'sMH]f^I߅loJW4K{kh[eot9Zk36'&Ԏ A=A9HwL7HU*1A16TrBq0Z^ۛu@dDK_V-_[+[S;EC[Ibw1~FSL-󗯌Ibs~`tՎ P<\,-Y<4aKU]C9Us_U *Ơb@_ 7 [!X:#j gݑWʦ0Ml}U~[jX}W+b+1ϳNjv\by0cc2Y~[U0-Gj}r*[ NDZkzBZ6wddz讥汿HkdvV[$wƝ$" MSU)EϙvAwo7BN-d Xޑ74/G! +%Gٵd>k}|h&oC{v=|pvڵNN{CPy9W]yxk6wu3X>sV40crfBI7ZFxɪ"(zMGۛ'dt'cΙ5TDY6D%D!| ?ԵUgq:Ta1 y.dU9E# v#*LPԸ}d ! 8umt7ERRB|OO~# ># 沸+ܺ V=zn)y0˭:xyn}Xj:5wv,%ց9̶aJhCc5nu&@ΪX:p(7pj}6N}B<+:ߔ cB%ju`NT%|7gtE߼I~Uߙо s̴.1VA`[*D6Ʉ]y8Ga,f&r^SJY[\Y 咲yRH8݄of8gd Y:>c+5TDSɊʵ ¡^F xy,2UY2(&]3@ 'F \yHcLT9-&SrH&L\O5:ӛNLXPYH)iZ,(ReOv4x aLs[v)FX2+f ry¶DAsw)|MtŻ0 jVD=J۹tzz~z1_P=n6`(𬟟9W?+Vt2x_R(Ǣԍ3뀨w_D%}%zA^HM{},J}Tn?ҫ9Y+tXX@Ի̞D )DF^2eA]"-+-8wDY=PY JtmQ: mfrW;X}K5-f0Zn*E osEve>r jD)9쫸aqI \A"}lձaN蘕G@:!)4:yLhq_+to@KqXcNe 0D1D )M,JSp"ʼnS1R  Jv"NM~AZJ8"1x=qoe7Y\SCJji.JNWR`v:4y^=/ UTCҮݞ+(p2RyDPJψ2YQ01>s} {T}?\5@|n'S=xjy&'+ ]0Z՞h^ Û:Ac * |Pyb h})CҺ=c`ofu~)e|Į(.`&o"9EA׈2P#/ Im:QA+Һ:Lp:CQ5InybIZ;Սvd@JCāIJ1CCǝpw$)}wËiGεw nxQ3qOy&)&cUN5~TNVN L95+FQ9>?P7잓'I_h+ K1Ϝ=ǕU.VbXä`h=k]z  5t.Ղ+'7< NrΦRVzpQdՇ2: ږv eM{vۂiVÕPjnjG Նl \$/1N:4{s [Pc:Y%ex2_:<Q1oZA dx,fxp3Bņ3g*[[ΰT>whqFw zhKdiDyVf4$uɔ4 NEC IpMI;+v>{ {,@[Bt:)hr;2HR n%uk 5}'VI'-h5R! mu 7(f9tay^Ԝҹv a:S'h =OZzEMkh8dOA9]j/+5.k~>Q Z*,"v?JCkן SE>h)NS_9VEM}ٯU{تQ$pH=cÞ[E8# q)k yewKsLP~(آ{; qg eF SNQD%Ui. C?{!LiǏ| 8 P ō|aX' V)HͿ?JǓ {Y[wX` AVF:?Jgz_ZϓgB`)F?7#:mFgnuЌǭ:b@x-oj@mo`mN+R3B{?0g@9X2р)J\G_}/tB Gu; O#jI?D%L]9P}\ڛ3gF(}Z*4{5t0D6\L> M lc%q3ص캧:3zak.U_2&dM‟z3~sB))w}Jx˓֐ *.ճl5XY6ܡX?.DzЊp8{mFp(Ϲ ͯv͙ҭ^z_&yIjvN .2ah KhTS)Y@ (Ղpvb FY<*#QrE4:5ĶfEm;{r\ĭ KApU<p;1Ny~;IrS>~c3/yZS4vAMwS*p;_U2׬ڳS VBQN1.+׸a+̡"1L~~)9xd}6M*Q4P&E=;Ly%gr6$fVX lM\^:(M,!,E?.lڙxk眬 q4-r`p޹l釛ghQ3$Z1C"-xPڋXpgtkPLM_T6kxKӋ%._ ޖ0]-8?Bۅ)d] ,[X- l45dp:[*/ |v5k$d.C& i̟T".| oDuR. m9٣ }% 6τ7N3.@m h,= bR}8<3ГIH`'1u'I9i<b޷&eCt2aq)IT @d+P!n!⴯M V)Ů6 Nt<4r؍Z!3;FY?ŘDN~7]$x*ixF_fݢnWPv]kXtoo%8w, 1zQ #kU(X3d] LL4L33@xeEl?ufAD¥dB@$'UؤL?YD8=q$a1ֈ|sKLt=w g1o'[:={n2db '1GU "|FR)vIɂb@keܹCX&5f='c.8J_$Bp_^ Ӻ29NtAUVJ>˩ T<ɔ5sEI mZ-cvF*;sh*I౱](7&!NV5p+IQ[hn}=6쿻fB~Edx A`h@O,O9h%E=22_n?iVхUŦܐۮc  _etƤؾ7KpNXG[h3 J\;O(3ߋN&(Xu>x/G6RYENAã$1K?Nr%v(v1  HQO|2:QMX<>  ؅< 4Gcz4_@2mbaBN+o?@'w1Oݕմ WEZ0Դ$UG'dٽJ}}eeR]RbnZXXXЁ 3=g5s'0 "([&dyv\aJ $`t Әm~{'Vlka6I% 5tOJs9>S(7ӝ"eJ&*o\ꂤ HQͫDY*/khZ@M<GaE c\4e(|YEUm~2A^-QI" ?S.n`xdU K ;4`524j#qDN)Rn!f#% s7B ,֥t-Y: &y;LM2,WkSpP}SgXu"sˮG9J)АeWG8&ir<ʸR:!?c)7v&( -yӠUN5(?ؙ!; ϶I҂3#b/ԣ>~|mFM]2=n(h|s`[ X(RNT2Ȁ:0 5u^NԦjm\9ݮcV`p,34kc-V.NaiO h.<ø|CrG%͆t׋fsqaEALTY@L dD'G'i'^kyxj[+4H }$=ҧtS4&7>#ŗX :[˸C쨡ZaN$'dcG0xI0jpMPZi N\1hXbG-`B_Yw*_c;9>j7aZQPQOhцGO#Ѵ[I㐻Cpm-V{g4-aX7Nvv%bAID8^?h|?+<%ýh(!h.9ohbOS hM;k7W"?4a@'{!th{D_UΈ ~0MJ<\ PL5GEHb=` I5Aao,^%QF)֖NƝ$?S44-*-v&%/"_E;k{k'kFts@`s|B!†)~Jbj%%+a͵MبSMm2z{jPHI<Ƣ  6UwxZ*Eo־\\ЗSv_gME@c[:NژrNyK@wiB rM݄J"5ݩ3Fv`IVԎFVCz{A}@hwcj Q[0 IQg'{܊>xU{Tu9v'G' a'/@\L3El]S o7n}Uv۝&cTU[_A7ow\˴|]dpZISr*I+L89-F$&Tztho;x0l1?t5=*4 Q$~6IlpyE"!ؘ^&ucmiȳa ֘Euky 1= ]2{Ʒ,釔\$,K1,(ؘ<: F5tBu~4#n0C5_^?'2 С4ѷgSQZpPE\4fl@X1M NlNV=G)\gYpJuZٟ" }X&S2Ic.'߭~eC&NGdMfYCiagq6pvA|Ѝ #ܬjWGb:($\'}W^%?jKbY3O]r*a"-C Ǟ$hW*p6=,L$-xo z:f0*[ ,Um#u!v-[!fVoŕ@նmAɦ NWQ5Qmi`27ٿP^Wkd}Q%k"l)T1렏CL/0^/@wGrH#`4ۓHLAO͍GOGOGOGOGOGOGOGOGO?'D\#7[OMg ؟D| eouzãٻ6|/!8;g آ(mb=+13Os==yS'1' .'- .zrTrT,R/I}ъ.O='G0ƽ9{BD,$R("D1bccm|Pε+Ge2+yәa it0iʏ1,٘q"{w6*ocVoG"(/_MRcX˷@>ݣ-p'_/ !*Vؾ#K^:c:ڬnB|RXT^)pKg;\W]o1W?|"ZG' /L$uF(xd!H8 +:s=c:>:¹pJ} 얨;,dOyoXH%-j(kA6NPY\w_ KhUTզn߮-`QgRUCIu;N?]hp=nj+m6ǘӰ'>e pwƙ$G!% 3e2Ĭl#砃ҾLI)^/LBt^BOfd}Ɵ8wTT#3'2NH@wF"U+:a9NTZݭ~kOˣ KցE C@!$A 'tASX0no|vk8.菰[f3_7 Cd~6CovwNŹB^ 춭]{/72ME߮/?V2Э|XX.gj=:ؕ3c_ZN9uȠq> y$wJj/&.~VD'xOdwO%!{}r,:A;{弲;QUhm;8x,٭1K^Ty*(ո&/)BEhUs.pէ8LyHXA[j8I ' {\)C5FTTxm` |>qɓ;S,=5,$n tҹ*:;1]%xێ@?dsKpYۡyWdnrwCo]Q,]+fj;\³K/twsn|dsO|*hD?>/<[6?%sNzy1N^tt2 z\L{d,^ DR,)ѐK}UnBcU_ٱd9{en#XNNc:i?,H:rJ$ɖȣ hgFD>4(t|$_2GKZ!nULA&ը-¦cvH|(hTψ~lh )T=߰Md;0$a2VsG|q ~6g!V=+S&'RXĄɘ*0Eja.o:}xV9a+UR7C,UM{ lC*` ]+4zEKVRLWѥ.Y&b*X٭.L2Ym^% 띿\ݖUY5mMi,<sXWA|&W͛Ntn]On'aX^P “6 v4N :-%X@rnw05Z$ ߢ;-]\ͦjϢTDnk;BeS#8A1(5OK;]ɏYxŭҧ:f$2kp~شTDJo[X%I{kퟞOσ _z}0(ǰ3ZħJ"}]S,ѸU aP`a@UJ8?g Υtm$) FUduưfׇ!1B).Wo,oZ(ڼ`o$0mNnc]ދ=LwiIy0.HOoTk eT?߅rQǷUWK٪y=)Vu-3+9X^jI}_c>+in`Y n{)'#PyTٽnvF;qyñmcq1.ί7.ș.*QYsγ m:ڷ_jPpo e l3An1ǷAIrQ1Dݠjg¤Ы`  FX?L[쳵{$@a 8e[!Ԡ |ԢEPTlD7ՠDtZ Jyhܠt(Q5b2aY 4(IA Ekjt |`i; Cn-kjP*mԾ;{<j4}ς[kP!+ f.ћ3Al5um.XA ƶyjzx`V |kI5(xiP ,\4*iD *&kCS *lNU3jPiՠ>ׅ \kԥnPх߿;AœL0ljP֎ɫaWz_uά 5ov ~ɞR Q5ct t|iQ**e8dh1F geS)-)wTQ-N@ە@P<϶caGV4ݠ 3ڏz`AഒLvǘwFg)S5c.ԟ1dF|by*ϐ{twFOtMUd˒vm^L?8ynK/E?{6|T`˭m0b|i cf +#&lc>C|7kRψ^>+ZDt*,*J%)O*Ц1& UL<2AI*wLBy\1<"g0ꓓ^ <ܵ;)N,^nt8g3s&HnF9_2N rvt\pXLW( oGIs\cvP'w͟)}tsC^Ѯ1c>3rN˔r0/Yx@\vrz>YSY2f76D N$R҉:jUJ&KؿŴBeLe8J#NHDOQjۈ҆Ruś/7֜E~'|tr2W/u;Õ,YTM\H@MT O aNJp_&US~bcO$Ƶ,s9FM6ԩZ X,S*>CCnУϱ,LiX-`Ne_L0HȓAf Lͧ:>iؙb;$ >Zr."o(#~s] >¥K= NG]_^%5S_tQI>~s+[b`ErGKA 5 \qk;t _ ^ęַJMڈ ˂=| {uBeYİN TrwP% k0ּyIb %M|}-h1NLRbtL?%ɘUh{# *mTQPgD0!ǫX鶅m^< ,c@;+G$IވkqZITh_d٘ HS<#\(CDo&#?$&SE:?b=`'e>pSe1xBk*ѯ(>),ɥÄw,½SXcVcaPP[Gia"7%BՐ"_QIg y'?g)-a^asтoH4M 7ePBoe, EsnI |@z+gK궙9fxBY=ϛkޒ,6SOFȒ4q2JC(1XٷxɡܚTPcaSg29ϊ6)0%VKauUڙZ5WO.tw*eGSQ9> dZȑq)I;f~ۊ+yLi/wQ,G1g':U;CT싮1a'[8J"Ҥ˔C~-$qxKtpdT䉀C&fN]!ҪZΈܜllaa=[24hNqbtRyeM 2R|Q"jEc'S9g:{-t:4[5KۯGlea8$,a,XV.v kAɩ aS]S!sW(%*(vtD gg*UzJ_H*Ea-fs/%ߏ&p&`gNHYNr$A!66_[I F1*OR0*Pn81tV0|@Z qB &umWɎq \#^ӠP` C~fUS=Xzը-&?e@:n;yv'kjJDE3JR4`uLMTe!s9P =3|ˎ鼇}Z,ox::Wuk}}kSWx'4m[k!Qe瘷8Vܩ<2IU !S%ڤЄ66QC2 u"(!m*HF/<\HlD*ޗ05W!)ZF5V}YL4!h2Zæ(`/@D'qmo)m;K"y+5 vGSyHμwA 6vinV(ǑIb?gcc}cI~ GqUt04L=)VXW%KjDIp fR)Z\5G Xlo$AR!YJE+~95\.RB]+|<8xGO#g䵵]L'kU.AA&=*1~-N*6 }U{g|!43eU1}>cBS/ޭh.t %1,W"2=xW%@*P+4k /'8mi ϐa"]ڌ~d<Mia.Okq:7诿]hќ5yJ84LX]^Ft$rI%rYkġу'ȞT/Y!t 4uQx.}eDX%ɛVۃ&1v&6kwF YssBtX)[ _Qc2Qgt>oCo_$tWd -Nڠfښw)%"3Z%ί#ă9^ L#44}(&ե P~@U^+MS|@z}8ڃZjՒ A|Y¸RunDKyR*1 A.򲥢i"e?.Vԫ >=>Y֩ mC^{ LMJnKtfofX۴zы2$~:UjxbH)ʵE\=p?y<V[yU ڞ}`q9tjhy6r}#koD^/! C5#XPK5T*hm/y^/ d 7޶ngB1ǮXrWcfT4X\7V%PD`U*7^6)Ghtn'xW#.:D|f5,Q xT(xi8$ܝ-rt 2Z7C6VIQJ"0w(6]vhԚ_BY`|ڑ"PK%Uݛҥ "S~wVs=V(nhBTt/gtҏu8NQi|lW8Գddi$TvYCbK^'7iDDd41 zy]FecIK c8?E"+B['0R~ڙr7 yc(!{X) N^߻/&ε$ŒVVn Y[rejNJ7 .cr'ؔZ "ϾMv/5w[SPIsufϱd;gWc7IFQQ)znuE@>Qkmd6f¸<.:3}Jؠ!u?C1iǰ׻u q2ʇVaT ˖\fbpãFγM\/xs] *&N~Nqm$H"nIeXJD]dHs$&ⲱEwXgPLM6.I AuX#TxXf}W^" GxTdo~^14ͦy*\B'c0`gl!+;ǻ0RRIK2X_Z6& Ms<l@KzF1(Lj`;(%q‡k:G`uRᄐvR}ijԩ1mۈ.(ՠ84fВ9#I{d0Ա:c]% {T}IZ6pxB|[Zl8:=[-F~jzO1u[\- `%bZqY;0$E*P)%1))|*7w M;khVw?hdgO+e|b :pa>w2yg\[$FXwoeG2+pDĽm)l,*ӱ!+)ۙ 'ǿHe_+8C~OUp`݄ GQ_VSVATr[&kk MC2F 3 *JONa vՖ2cs6+;GDrKf\'Ws;٬9^zxGֱ|{&+Ռ'k=9J9E`,2Й|H/M^ao\b%Q<VI=Š%T)SMEEK!,0j"Z5oj"'Ce/F\82p6\n=᳖y0p?9ͲxxyFYt9l\~Nq)_{A²bNCIiOh_]xCY_L+?/_e[mgoߜK }NsRװcQqJJred n[R ۉU1>R"q!!q~[_ѡ0'%ygaƻB9AXD!GƏS4oTPOݎ=6PiV쏃?Q+o\XD1oc^(5$mT}ntJRM8ntm^7$P…!&蘢[`KWs|gyOv(D^4>m(N0_M&ݬklr4qw Y^䊿z؞O8*G?~*YDOݔM4]MH;w1EplaeQ Kz5)+gt2sǭ>*lЋ1#Z!Wu; S" /I*I8YorBB}R9Oo=D4*4<"Vi?dJ\`N'RCm[ xAӓ '5mmT֝V92v^qyj[Ɔך:zeN?4v)SiJE3o.*II2yj!1Q~XܳR[&il ԋ 'QT'eRgP GpcY!`,bJ㎂oM5ɋ{&  ՛F>dp(G xf-hjJƈyRfZP8?[>5GJŅi1 խ'w*ju~y}Q{ToBR#č7 y]ZVofey?^%]} ;Ԉ# pE; O~?StDB:-3cǜ))m˲_>~,ۿCIߘv?7~o2WeDAB7C$""c~y,MՕ|S2A,G\?A3>7'JN}Oϸ5 HGSH 6 G`q lp{ )gؿr.pN|~y Ϧh.~>4#Ӓobaw)]hJ%wtFoUNҽ؊Ra6|q64>h J״K׈E/2GC:,KxNurۍGxx>dD8zo-sXS.{, =`+lVm'wI5VW(䛙TkON,y& @Üo 2ZC})A,1PeJπ\7R`Ep՟_L:>*clb$%?ECC+v(K#Mr7 ΄>)>r/|HG>vemu%=TJWI`"FadӪ#w!h.{i}V'n6ń:pIXyOP@!ipe!G$ɡ7wݕ<@a{$H>X ̿NخXHƋ&ehHNS|鍉MV{lƙ~ڹgڿ>~N]9 X.+FzOENJ=+ñ*'U/Í6^j TqUSLx~ D#L$]b=-3_juYtEjk†k>J[٧xOd?d`/,й$O~ 53ncF19m2ScRz>`6bE+y BLt)YpKkAҐnsWc=,\kA;M5=zI8n v8+0/V:LPtLr\alu)N3+h\Ǿ`V֢hWnH}.7fK;F:wWsueViܻٛE 4!GHb4uQ[oȐYc\CZ`jZ- ( OO_xL$R>BA YSw@{O43̉$PG+;*jpsĘ6W`DFE6f*wl0Kefc,=//$v7P:!xW)\!J@[՗U2"ʾV*H?Sf~ ܼ7'ͪhLB#$tMzI'\b=R ˖Ƥa<,~NOv|s\;GPs+ӗr[2g/ `Pk=5Ve>dUUP7veSg?;^Ĺ˻u͆[k~Vڵl}Zg_6d&usKL}7j=jCwձ`3D`P$eGF^@رYJ.ڔ,q ڪFWQ-}Ȑ^>[ap QB݂D;V<ޫo1۽#byHg4SpE|# }M`mLpF>F}i}%S`sW#)Q jF"$_\] @V?-:}\w`38R}T`!adiW/mK3z?y3eϲ +g[3(euζuʼn))0Rk)JY|U9ݒx&DKV^ȁeMGx4r =h0DD-90uS9iEܺ9|R֥7up\Ky6H&daj?Ճ1F_GOeF!ӝ]D4E}͈"AT,M} @!ɕr6Ut:x\3$i<4ƅI~ޣ,ˢĻǜkor%&3Ekbz3/lh%'$nA뚺75oSmZi.j E:!,Aߔxs'-+%) J8}}kP=?sw]|;*e_a&C eV¶mnlvTo5a'z~^9ZnȀ"Ӡpr|xEYXkᲤ^6oX Jp xFhl~/\9׹K-#/C{A;j(z?k0 FVNp" 9=x󓋞zʱLsxFWcRvO0t`9VRWeڛo\hzOnSQ+VFv3\I_K?L:'o|.0 "3(IjH](Z9gQdPq+P r@W^q8 xP'DtZvx.܎ ̮T8w.ݯq>|;/8uAwF̕T_ޕ{C6+a|+*z")ȖԞ3aFg/ɲH7ϖyrB)J Ō[B'ϾX^veWĮ35%尒nP*檜 $K$^[8V0V?ʁрdEG_i+j%wI9vK:;B4{939`Ku:r| X ;EL\ ZRm99DeҲX÷y2F`{Ī-Ϩ5g4~2zMߦSf+V$+ ׆ tmE\R''e7Txc=Z.Q|;'&fQjcj2U坅ڈ!Kqj˧KJGbjO.jozW6>IIѪr RM$5Hhʼn&yzwz$PǍi']_Ktkm+_عm͝EaP|  wHLzb1;8 n-q_-Qϳ_3Bfw(0:E.!ݢ3TnحS\rxAor! 2IjCs)ip2߾e[ ᮺ\5),^]sBpnV]g`>I1E]:Qh8_7*w]=h0M?[aӾRŧF m<%MT(~o1py>^St{މ[mccd}$2_j[?fd6[Ym nh^%eؼ~4fh=ҷ"Ba21uy6G0hi#w]nz Vv oGך}/ɇ <<>dΡSfF3AɦBdS ǵ>teM 0LqԶ}ٰT:6@}q;Lŏ:vDpVph )/|>J/~8т13ahj1lN,NK:?bpa|X6w.}dTΆ#<5#wk;ҟq+w5~"nI>]|ΥB~IQs[!_b8o`Sw)fFT176yr~rE9aNy?ά[~og);oucVx钘CD& Lnc$pfy j`?e,l~a!sIb&Bqi 2׫wəb+Ϻ9o+oEr]֖:9&sUrS(-cW"|/ZvK8>>MnI&f dͪQO!a9hRʌ;SXŅu1*ic&LsrpOi]Є]X (Z|TAJdָό㡞 nf x0 )Fuj3Pd0ʎwU5$j;=ߊr)uBQf!̓[` ^6(?r+T&Kr"Cexz#R%E+.A1EH]j4y{jhOwsoXڬ>(M#&p`dGS$\ LBuf-w;Ѱ6PX ʤdW>DuAY%\KsF#Bwl)Vro>$U[{cR*^fS;hMT myte<3ʿ`D}zS͎mǞ> (`'rtR?z! C?]')Y6}GH2`* r-[1G P0!A[g-a(8&daeZ]fvo=O78zv#;!|yKɾ Cod Z7TčPi5Nq56?AyNEa1xLcLS/1 Z>GiLʉ`nzͷt~=^?D~1xzf]TkZF_Ժ8Za, g`ufN鿂U&Wz9tAlJhfDX-V%'ёC:Lj] XDsϻRqc r%N n.0r~M$BUj2 z6q;?aNoڙRK9Lnd7n,|2jLhNE j*`K(}H`huÁy^_&~M$y 3 Beu/Df!B MЦh0Lqy1 :Yߴ6n>HfYM'uͲa NE; fh#e?Ulgmp첺T,fLj=(I x8*|\63@]wWF|<~Y4)xg'4"s(~rsNM҉ăTg . 6H>fPz\6|ǿĨ)mv5<ACF䲚KlkB jQmh*yPUe`f;A.5; G@ϋ)`YUF]O@`D^=J,ϱЀNjk&Mx C*e`8 tVD)^ñ\բ!IS5u[&6[-6,G_#Tpbl++EPoc| CLii@I4DLs"J悵p\\{s: ] s(Ɍ%lcbIJ 6O(ZO9ɭ$mxRA++3 ԫ G.;^.ҋ/1{.6Lis@$)A 4/)YLGr|O$߃ëWN]Ov%[27jkL1\N*|)ܐj 7U9tUlY(6*<mn!خ/2{nF}kg08!>8 J2#Y cֿIjMQ``r7@2L'kYhIm@o4~s</Q-l8ڝt>4aX@acpF7;r$aV#J[$<|V=GDݰӪ |Y̧gkqؐy+$9,h)m_DUauN*}G,; ٟE/9RIw=FH)iQ>@v fH`PƒjڣS=ex{ .a6+39,2`|(qJ5RQtŜRhvN4g7KI²=MVԷ,֎Kc 4R 8Wf  =^Dz/.G~HlJW5d892P^_턎 BGR#\бHI#ȋD(XdXK7dP^u140sF-a[d5n]%Ěu #+wdht +iV6הX;e->mfun•$[Yll9u>/ 5y9gZHS0}-GFLcJ6 Y5+њL-6X,63ZP_cHF`%@Zr,./2Y,{S(Z}CH2;*9aLHl|AY1[c]ZRq Dm!m={ G(iXb8zNXHB處tDG[^ȹNs\lJNfaѓ˝j e2м|P%4%\a&$⊱34ጉ'fN; G_iT#V!' F2}?ѫC0Yr9-);³fv70:% #طaD^MM 3pH a{ ǟU~5F4 <FG>{ E A\ϻI,{n "JnDI#gXalK*w{fHL<=,xrZυ/d>*ZKxѤΟpE$Sr "jza[fEƵ V܏t\H8Tsv ARq+o FBXT8=,,Q&xߟOG"0]?l^%XX Os46@Qd8GB\hE;I R3$فm-.KC7t~5*Qx͛ > <~o!|ґ˱PwH*JEK*CrSơ__7UB}7w!,/Kv'8Y~@.@SVx)yN-0`9R1GB_-q÷|E,^RnՐ3W.O-5jAOU@i%Zɪ kxҧ}j<`UkTzQ R)d`qr)°a泹JGb$h8( T2]8u؛x  I=+iP^*j #?Ur\ı^|QMT<jj+K"\o^*a5QI`77//xDt_0 Co8 !u*}UK!y]VYSSC$h$ݏp /Y+c43Mby`w/P3d׆Fsi5Dc>vhϱ-BmAOJMS|W\):<3AKMѰ<fQP.<)TȔkzd1jЋg$$]HeO2/@)29)b+) gw4.E9qs+YP?rBc-PȬEM Z7Ȫq7LܰfϪZO+IF҈W:-Zq;6+h*)JY(* LU ;ͥp*A.ČYBEol[th/=o[s.@Q/Sn4 !l4NP"Q"= .ʼ=q改hƹn (.kD.%3s ?Bd-攮 uZʼ@rWHCOq;xGs>X YOY!ТG@ES16Ԝ4  "_"| xVf2D49D_5H:}mZ 8}s&eo0~/֯@N, <@/ݖLZ /0*EM tMDN*dF5@1Cti/)UK1CK~á.Mh 5[p1U GZ `RV4>}n>nl6hk9N2"s15pȌu0ܠ(j~@ӏ2PΛV.Xh0'ܮ&g?:mnF)=@.3b3#s^Mibe˞zI(P\Jp[xB3Vv,]XV2ɼ8#2~mJ07(d\`D{RvŴp bk6+D8oX0m<pfm3r}1Π߶>FQw)׃G' ?@il7r$k+ <}"%1أ] y>.ȭ3^9|YG9 3*]i( 'piUŧpUxDjRhYaTzjn$i7M<| ='2{#?~G)3O*3࠹ J)-iL0Ӹ_(U:|긋ǻCzœD_\FLڕ8ѩ#HI&s }"zA1) TIt'şIL =Q7/l8/ϻtkcZLR,V*G=ugؖERD@Ƨ^XϦ{NRLqD ,ovy/Lrƨ[P{8Gp"[b(xKCٸ@`&BG+M8r] | .sDl1 %f搴,Z,ڑȨG2 *7\GRʃHfYAJNn6 7CF qazj޺3N54^#Xt,tڅ0m Hqz)1J1;r`%;kAS/I)11{-.oRL[ݫ4G%Q2a';CU*m^4Hxg:|OHH7|ynpx12 s2c/q.5R;(Q5$)p+p*\6t/6J8M7 h~2Qx) ix`U/8L 2\/4 aEFu+ ~>6S "Ou/tJl&G `ɘQhѵoyy6`\ou}Vgfl&% }-ڠ̿H|1j%p߆13rat“c$p5Dh x:Kɲ۾ץSa+0Krȶh*7>{zf$U|4h$Ҩ4Jz=5jh-6󨖄dYҬ!&au%6P3;6Q)Rb%\`.!"gW+H ɑhj̣BL+\kXQde(\>W(Ի$2&B="q:=O 2OiP< XҳY ~x/|L#!z,tEٹ49vfq+C#;5:ZQKJ43זQ<( 9~ }*%sZcs~:eNI52GF!`y. Lk71N)z5dƝ:ÈB@sFa@›||SLy`1>܈}uS@%g:_ @'6FZhS\1w|ꗐ.J,w ,.1òHQ:vyA)?(c~"0a=-6¤e@Hw&__QgŇ f@\|awwww!‚+|×^Vӭ@u5"EiR#ڤ^`ľ~[/D8g=IN 3vF: ')Y/(,I), >T)ϲ$Ng HQA}bJ-ꉮLMoIP*d'=Uϣ^e]39 Ã/t1PI;񘛶1ȑ:}<+גplUZeCXl4'lI+%1{⧪.;B4^TaJqiM̒g (i\f izR[8Pw@(N4[[eO)/:`[@n\lpQPӗ"bl`yVwb7m>{+^S:낮2U ` =T{a *n_wwq*FR|J̸*սa^{.옹,;`>81 ?G4%se8EL@ 縝fmB=c>F=ARiq=${ 7 .=c=:'~c}," $M^ `:$·5.ɤ9Ѕ(nYHI,[DR8G,"́*)-= a.N,ap%α>!xxg\]J==}EVS ;\+7)3=A8 xmUdi7sTch:l{hXȽ{o L)"TpFR/%ɪŬ*ًSס J\L9!U *仒D\yO!u+\Zyo+'v\{=k1C֏t1(Qq9\t Cp{G3Ȑ yx2s,kP-qA a4g6[.WU-X\DJJo*qjJڱvJ[;XK^J4Cќet|hoV֣+Hfu8^= sMg̼vސRF0!0fR34>+nZwF‚ڮD33, Ĵ+G+n5 ֈAXDT M0fw*P(^JipVo׍e sɈ#6\ri:T O ll#U4 ;Γ$ֺf^rGTʐ?:0X7\d[O~o=D P z?_2Bg-Uk|GX0p`o~'$55W3rDsqqEh?f% 9bݠQ5Q)TR˲d[\Q&1U VAHzEFx!/%I(C60W5Ȍy&H#0 -Iq t*rPlCU Gێ I0_Db.Xp,1pDgMtxFxzǨa i%bXW4ʺ;̦>/=a(T9A&!_]MȵجsYd=[LQ>r0-t^  S΄մU]0kY806;%@|S,|MIVb|jGPvXlRP1#C8rK ŴLO1V9eDiټh5H7H{KSu1@3!<}QWafh.;gJATeh,V[D+f7gc(Kv@q˿[rB(r)avRlz&yb>"ii65 -#f{v "㬕,XЁb%=y@x x,Yx??a%;˜CTeq,6DK xKA -薸o؀39L?H,OUW[񉫉qM%s,ܦx".04^ny]z, D/9_R.E78[kB6`# Jie.b-(Ԩ.'VY1W5O\­ꊷ[aӕpr#_`MїʼnJ\طB=oP&><闛uTs ? _)lWs9#y P;ٛtX9ůQy9_ ~\^YfzӪ|;'AqM8Xz^kvh$dJ ͇ǁXAT*p0%:+:8c Έ,(O= Q̪YF Ѕ(W Ǘ5Æuyn`fiR)z2is]=Dv M\.-~F[wEȕi bcE9EV{ٔaZE Mɦ)I\4Ydͥ+S06TفGN)IQ6\sd!KGhCDoe:\kxւC 4¿Y1B>k⏩#PbUu(|X$3Jáf?ɀLr崞n^xɫ$@F@vO(/rl)j=DU{W2_76Cg)cz|,pό}q4qMt\  DfuC6x h=ey(VM}?KѻȇZoC[O[S$H2*UfO?>z&ﳧO<}([Mk~:9J13`/ɴdmPnY@%˅0ImG)C^.t8Ps oijk҃=Xqh-ɞ/@ .c ʝ 5rdMm{׊YGj2(LrʾjQ{, )J`jШsspWl9<e93ɰBy}*+ZD&y2?D5YgbΠi7ߓQ``॓ϵ*=sN1y-e p`3grmS;,;k;J~O'waT~-nOC??x]O~f$BUlxF?R[b! -5lxVxآ;/\VgO{K@z?[G3}<}sOdoK=?]>,67Eg?!,cۡTE0 CSyaq.]ބX}201JO74 jH;3/5K/ŸP.o?t e,'rR~.~ۅ6,UX{e |QC=2{߈0|Šs*.sHr,KƨsO[8lկZ~5qS`|.A:nϚCcF%%xeL@%s1PV6󗵧kڦvݱOأUFƈHo%D{*Ѻ]}t7^cw:PĨἾ0j.a[I9) b@S/}PM1攠'Ѿk0nHA`o}%$f?ÁPJo㙀~r;5bKpCv S3Ԭnqos/.c'?V<&oLu0fޛ^C<;͚kL C2]1H0G%;5oQ|dblg셷4O9bt[qZ̵Xɶ(.|>$А& 1H  |DҢ9_wA; Ãߋi!c[Y~^tֈgKz`zQמ yx& ]WdX2B{*Omw09x^SpgÓm\% )&\:SD0{i {3ZQUI9z\a!_PGjcyTH l@)*(ʺLRkz-zn;`]C8ׯF#*2KsG,=gRo j& \/.VYKYsK-%H]3;zP ߽*p<ܨE9Q/ K}N3".;l9lCզ=/˳ FW?nW4[7MKtB̅" xG3j6@ڜ Y)F8Nj #9¥ xwXy>e#SxANJp_ ]#ۚpyDD0 Kʧ0!G2o6dNg܇{w1nJ-}K}Rf U3vGH}$ð 0`PR9q#.a3(z;N ̽\ ^Ju.G`nX2aooNN$ܪgkKS6U?z?z3?v\aviAuE vl脑(LV&NR5d\!3j(Ԏ"DuOFl=Fu Cd!cl|fd^ZIG>wzS!.i,]G ̩ZLv~$^c-JdGd{XU|I t~ɞVg]*gz8q]DƘeI`ӓ I ('% ?1>0;NKO8ciIh 088ڣsca(:w28 VAn%O=aLo<&&N99&Lnx4-LQE23wfشkobmvF \sSGXb:_G4=L.e_K SL)X !E2/\: =uHN!o t)@5~ wgOάеM+%$(EBmH(R4bO%>5y͔ŷuwE{G F7]7x"m^96`"5ۛ4@e ,m]K$fQbkJ G/VI ;5*>m^ybg׸iC,-q󔁘Y=cp.b"1/ZFzLA$03WY3mI]'Go>d ph5QD0"X'B۴KWPX፠L>5-\RF-+̙݂8MqӤ:=A2?I,Ǒ:\_xwvĮpp˵.?\] K_*.g 1.Y83*bu C{Tf\13d@ҁR6P׋\~H*q`c+jDTmLM!'.l\á9LqxnYtjLUK d0)nՏq;s ꏥQ H*~s $g8a9Xn`e>I$87fx8j 몇譆JK~ܛͦJFvޞ0< ġ#./7xyFU-*dOtcj-'rs?OiVPyt#|2h:ي3$iu;r,B b4pP#<2Q0E2U|tSc73ߟ21$SqNp'YC>c05nVo[ij?oUW 3Jek! l]0u>]0BX ?QR#AMo1 EILkc)mu 5i)"b~!UF@24ߤx :.o%qrGS5˵J0_suE(E0q!V>1!LD:۫GIU˱y|I}rȲV͏[⒘5Ԁˠ7/֪?}^^ #M:>lQ! 1$ۧgSqd3딋U{AZ^%uyE^x; m ;gDa ͐tSȚE\0/1wNOE0.pp~ämte"?}c( rGʎm֧f]qZ2u|yUߐOP8lRɀ>ӿ oX/\磗?:U ޼_dj0.#IeW F.Yilar|UA!vrpP-Oٿ?%~c+<7an$$7| '"s?dh܇=LGyF1 O ^_bb[_X7̎%3q6';wn{cpSFa OZ G:aakd"Ip0d685|ftV z| W?0fOz=7x} '*`C3^8Ͽ!_f(Rw\Dm]x.?ۛc~¥טUB΄;_j.O`Vx_lw!šoz+lOyL}|8rYGFC#ˋ9+M6E#o糷BeaP#CabаwOZ$eqA?"8yYt(af HO+#2t-i/d=_=N5 Ì (&Y_g̶hOb3̻O+Z\?4;|A6_K10ڸ@eWQZ!Oިŗ9OQ8ׅsf(Oi;=mS@7mco)gL?F@ @bRulO7[`)Jd[5%T.!#H>X$VPRhśR^WY5e#z3ͦ5g){dTs`EOjK3# #$m2!mxM0-s;mWxstΫ@$ȯW%;x+] ܩ'dDt崞53zuĵ0&+g-f'68 |Q_#՘KtslB;r^9d5Gd/l 5'm[ WDsV4IDw6w'clF*fET30x K[g)?)%,}+#^[A?MTYq/_ٿ0H~ZJ"O*3yi>bS1by/@~E ls#KA O}i !xv3_pNF̒TgWQ^tzafcBBf.(> 6Oh>Lh> :?VߟOquis}b~WL_ݷhKvpt/Nr!/QJBichc NvS-s@bX֣joۨ:>,B'U wcRk[4yAjlh8`;V5Qb5 ƓyI(s$\oymӧ߇:=~IA FD6ؕ"LtccW9MIpgYThвC(K]v2RU)05\AeTns:c9J;xrTuC8bF^Ls rdvnSM4c {ݺt59=U34g*R)jDKjHdLBrG IAv6,g75l)K3* ! _Gu1*l5g-O2-t \*[MO è~DYucHyԈ&Wc?@8%e;sX؂^';bCKUqTqBL<-#>H$)7ߴ$VNyf V`Ѡ:v=5rT΢--YaGZޚAb?]UNC ޱ=~z}%;Cb0d!Q X&?LMn|'qRϟthu XÎ1`e[ ٲnfE6{]f(/.)PMȊ.9JK@5AcerJbI@BHJ.(?hXCCk4㖉:(nPkC#ǪCuNc;Q0pNUW+]vѮǤ!{0|/%ؚY%Dc -E2`v\c ǰPy<\4u5Ń!RgO}i}yW$\B &@lꂈHd7ջi@ٯ,%FR)֡GHbW1Ք8DHM/4&Xv E:O5n rBt~ׁ'$4|xcHszքAIm1seNr_#umOpV=P3z섺#Q.l*Ɖ xۅ=H}XQu DXYxN@erxCH>v<ŀ;K?Z[rqɆҶbv Uaȝ~.|1Ńxd8|42+g a>Ν:8R l"lTݰF3)`<Ö:anX ȕ#&.;kS+EU(+$iQIv3hڅ2]cL^ 4mFhҫD 1 ϲ"Ml"$ɁA!fJ|$k:nLcP?-o붗JJ\3쬇(w['}a$9z!q6 BbˎBjlS[,,'W@v\/Ŝ^eܕfpk);؎D4@kQF3,!3̼C 0Ҽx1bGR@hW+?\T#we`bb. &J:%P'UtSK Fnj U#@( c|(D>x7o_u#k_!se @|G(TLG([.*9sYAwbIt$I?@6\~@ټ{!x6n$9YWB.by||-vkTfm2>HNk!Ƅ7 imAif1~3wI"H$MA2`(#xVAkh -_p4%9ւg9wgH 8c[D)$*Bwlv/e'o[ir _Z0qٱޙгY05mu.;FO: O ?+ep߉"Dh?^aB͝XĴ9L"4`O)sу4bYްș͌xdRACbk&+k]ؗ*i,PF&;=HN&d!P}50jEpi-ȀG,1 kf9`4b#GnK>404Y>w\ 6g!^҉$=V**oXj/rvio^۠&Y3G%xw_F~3OfX4'Ss>sS _`wA5s}a-ԣpTx ՞ z?HcJVy%]ɖ}(ڞ㺫+@zBIK<[ =DN\r~ʊ~Rjk758F )6k3R&3vF̶>3R9M͘Jb,X PPGC39卫M/ȧòM''Iǽ+a*(T[&+́}.AϛP)wz1P ̧&Øh$z Ý9Cr? DM)"i$ `;)yW)O/>u~Q-i6; #J*cH?~g"rM4KRd$ƁzalH9ըuFŀbn9X3_ wfNEyG^\78d\`{kd#ox#+xܺKq^G/pK]xlBkaPZ 0HeC9G~ÝS!ZUOȿt S,@a>E@͞8VrRY@W#O5E`2J? $ 8T[Qϑ54&>"j]Ňzr,)It؛Lq& ehP{[?~G86 )Қ2E2yP{ȱ Bj6N> "Пf+xɉjuQBBl c1_7+b ѢP5>(O, 5YMXhOy [ɱ Hkyn7coX$*QW:^bEPD4boh^fQtJHDž-KkHo?{0(YMygχWXa vSZ\ةpWJ4(*]Zdo0h!QmCa"7:1U1j? W=$;+e~Ո`.j{k{G{-+v=p"cv%}=ZxfW86vO t ]"-WXDqҕmȏVX[Zж#9etAXyҟ:`ܜ἗4j$f3zB^3Ld4:m4aH$cswdžcs;b>i@Ec;|ZWcYWfT>?qcw&ky~vׂɗ:8wב藲v DцTohaq0V I#F$jw$$L?,pz7MTcA+Osފ#5RS̜Oe9si(e+!fRg!Xuk ZFjс$Fxd(QfJ@qk+wN(k%q. qUcU8(`]Zw9BJH턠`>ń+'I)K") x yˑ'R=Ŕ# Հ"P-'[9gK} +kqAzbe2CG%kL٘Ns6"1 ;0ە agc{uۨ+6<1 1eQILEN>Ʉ񍘜_= l-(4P\F,7ґ Io0^k)hKQe]:tl1Bb#+e{"ÙT|ª9CuQ?Co*pzԕ/)K 8ʛ»jhyM> !u΅L.G.8X@jjJB8nlf{ey:ԋ]l/=.jA͖JMȑiOY/oڟiRvP; |h Ԁ_W#{&Ny'bQ5m J7;HN`uB^;D?i.}B~jTZy_٭R'feL(t((ȹ:ET:N=D:=rZ1Eu mCk@aa3SD1`1/h[uq$ T, (JD6mR`z Ai\ !IJ[?uiy-8mH?F7yBZ߅ܠw[ár$ls7|}<1T|m4_%G&qA~7rЋÝd^]X (Z^ރ/ǹte'acp1'A[nX fvQ$Qؑ5.̶wtB'T%61p2  BzMN~Zc79fX~ۼkIp̦9^03ɼ톶B\e4B#W}Hd1x53$*Mqh J^FΊ$DiB1ԹQ!]yemSّJxK22x~2+h/%&=_E: #X(`c1F`_rB?6HDՕ8e '%ے \r:cdi~@rFqr`-_v84I=1_tѰSB#4Qrr[H27-F@ j&s) \t 4ǀ ?wzPj[P.#Z $ =G0`'!N  b^m0qY%KSLtcR\;et1ZSؒJ m_L K9ݜA 3`M&rR~ׂMuHNqn23*.3;kuBќ^e=QH#ڔB$%d35bpV0bTr" 3|PRa(z T]/|!G`hk׀GVDUk:NL% f. GjՌ wR<V݅Lb ͼF|L=PiaJbL.h։' 8NL zB S'L`JjֿD0YF$U̪9aQ7|hN'75p ʘU7W VEHldh 1Ig9{DžV&)0]$aGDR{ F UbwG 6 F .r0RWtqlPt&c()̸.sKȇ۷[>A1gcS9pںU9J ON !±s*zGk &JN%I*n#F`sH[aADd D,ZJ $1G7~ȱF"-,_Mnsv®f%B#I+@oz&_1)!鸸 qlQvGErÄIP-A]$ FK@ihwYX mw&jpB z~~n".}N1}L&b-ǃnN(s6K^ {<EA&.RPqڞsCZ_~zuxzp1PFD{ BpƤ-4'JSЫzTȻƜ\/ 8zÃoN^zO<@* y%$0æP!*G不ocoV0զ 4,JA k(G9/hs(iPlު+aˊZGU^|0*2\}cٔ/81p96 @|^Y .LꎉҺ+:[ָyh 6JhäoީVVGU;~j]N6{7fe(lɹZD=/i#>uϮ-ǝ$zĺ+S: _ssgAIN^oN#Lw9=o2 mA쵨bа/qd8IK[/˘ؗ>K >ߺpAydJچ[ 2$#̭ 2z2GrbcΩv佳e%Ysթ(gBǸ)cg@`6X7Ra=Cx3҈=ݫ9G&KJIx"KzLTYUB$􆅃fXe呧T7]kq2SQb%l;OnfǥH5%T":7jGdO W 0iXӃbpvL5DϠ>])@.Nx&GRm/0 ?欥XpRrc N0N^2ih( P,H9S -Bh`јnbeJ&Z}cI]JT$uBUx[kƳ jhZv{q d܌qq|aB`NAL'mάn``B[_Bi H & ;5,|*P;T'a*;9^LFQQxx#JwUn~4`ὨWPd,Z] ܆RYX>=-KnDOž$哧@xqRSxsN ԒN)h^ٮr_|4fZ1hz927 ?Gs&ts5N!ld֖?zY6m>h8zZiIa])E*D۠~PcRG&^J$sйBo˹w} N o K 6w&,wV' cO/fb^tUmz ap`hNF% c:]6C0kvh(U?I>2\e׈}] ArN-IQxM쉕b?,$9)Z|`֯QPyeA^:&P#6L*jz}D'6ȷ+"(F>a SZ/@=xs=U_s(>J-qthJN2s/if28sj\9w &ִݓgL!_>04 bB,=+7;ȶap'xc'ڒ/U4Vh; cX5 rʇ@~ȧHLmE ~1E7;ǵ+#zUQtQtHMܑEMR"(N;jE},O+5w;+n/Z:~ _"hXI_kZ[-֓IKԼ7S)>Rtݗ"7cwȑmR,<eL/Q QC꽘P۵8cb ~Fl8Ҡ0]U ;}! kK*TAaAk,5}}z@eWAu)=)lXsvU}t8zCXXy]sG zbBcd¨)CDž?Ҧ- ɱSNJˢ(%oWuB0M>I67hӐ9:9[К{SKPP=~fGR/n[g$~R #[.I9`u! әŖB$ԫ}Iޤ!N+v[5J@f``*6c%E?o+ d_!—b9ao1Wx٨\.dO{-@$>|' ցQ1@6;A7o\,Dz-e$>IqIbw4)c?R׶R=@jq?"/@L V`=YEeYqڡW.fW'::C+yZP_W l&2&?kHmD}hyf[/A>v@ "Wha)~YHpfRtG^W3M Ԝ;}nmO5Yne0>ĉoqȻjk5%wDPD6N߇p, RYW'x67#1>lt|ǸQRl5D>hqp5٨GeuQsx )6+DY.-ғř|Ǹ\q98k!I&$h W9懅W%qfnLP3 U7# Կ,"{,hSǻ G6DdY_00Ig=y*Uʱ\Q XMUsnq:Ey]$O ,рqߍ[';@6%iq_kBS?7MC$GsJ lR)x%÷ /wˊ]d Hsr:1jvC;/s.Q>HW:[߱(&ezq1Oo *VFDTHe5wLO C.j|;K^6MΤgѳC&yrVF~m$);EMOotH@C94Ͳ_M4fDJ2HGg7ND[u2 /2/< !t|--O!- 'GDɟB*lc&;-vW$6*3W-WCI/dsWc:s~-7w)fA$r4 5n=o8j*4ؒմ4üOBι7*5PUzȃ%4*- uZ:jOܲg2N 8u܃ܲd1b@-ZB]uvȨVtON$bN".1K,_L\4T(e90&}NCe_<v֎eߒBY_4䑹@Iva6MSlGhSQA?к;AK۲8^SkyLVL:Ǥ4gn'FQd0P> #0tsTE 'k=֦}$3ê # 'OʀT***45?/n :^;PAeYSH%]ްa[V[kzM`^|B=miD {+y2X- uG.ȡgDh)`&ȷ(x $>Sl<Ͷ }W3H4krQp t4\lMHʜ$lqV9wz8>^ˏc'ے>/ff46#[ީXX, pcd:֯O1gʗ܁P^o?ńHΔPz=0> gmr n t]՟gP}oTg-z$^:s' .WJ%'r`ȘݭXrg܋(4WmHFŬ!-`8C$NFDũѩ8{0!! &XpL]|9y.p>| 9 ߤȏ@DWR,> Zf> Q{&JZ6X %0YĻ(I YU5<[%9ˇU3hŻn[|p5 YkHKFYj&d\Vö]^&jstAGR 7O5)4]5}.=|}˓ jpb.P5Cd`%iR DTt t1~ZtnDRŬz e;吤DwIN  VgKFɋl'㩜j?AsSx;9%VјD\fCKjǼg6vn!3XU_ !ٸcDs`Xi25+bDiF'M'yҟ§'Ni4|uo7j>o>} @}+5O|Pq+okjL7MMnլbgz wj ^Փ җgA`2n1@gj?j ~PghװG:Y5IӃ4YjҘ7-,X+xv| ,qwX~3?>0Y4p ~6O8>u":ݏg cί dqSZʓ^4^9>?÷ݹ/9W͟+Ľat^8Js8ʢwE|}m:p ]8&2|GLX;s~18Kږ, U#)G \-ލKԦɐKEoyog-ʴ\pg0N` dnG byׁeCjE1 X%JI|"R^47sU5V϶ ^KMecE[-̅ݘZjFl`[4Њ[-No;b{ ;㜠a*|Fl'+aKkv`?~w`,&C #;I.-I+V+QR &rB Vs u3#NYYaXb԰J,LxxIL|Odme{&%]J\04A&̺W,g|&HH>bP{;~ 5Q1vrYx臲hiȾ.1j6Qs րД&YL드O'*l4Go j ǟ_JhaŤT7ju;-;?ԦvĔnuk^U^HeUL#ţ/lO%zT2 MI EQ*vh`9a97 j# _՟!ȥ7n8:*\Nq5g 3,ć!,S.Ks:WNn4,=t"+7WxeR_$ )K*)g&귖e/B[T5Bb W Aish˿(Q?09 ֏lmZYExElˊhZFQݕ}{Z??ϪnB13C%lJBw|˞=>oHJqRܨ:ͯM҄ߊr@ugQ.o)=#XFOW37H</}<0+*|zf>Ꮬ`$(O#UVCΠ84WlZjbRAC9(j[­ܝ9FTda PvsR})jUSɎ/^y묚fEtkI罪oިocHQg:;=CC=:S.[#=әjM{\Uv)B]$F"sfZ!AU)'1rƒ``D#5D yc\Xtj3Os.T*.!\w8zKqašr?C܆b&7dRzղ=-k0F!T0CE3h2]Lq>UXY}u\}N^5Rޛ !~{'Q^g`90emNՑVXP5$XNr "?ܪ@'\1!:&#Jc]``|AHFAŤnYN9 īs$J=wXx/Sn <Wch(D_CX疦A&ebz$0$X6hd!EA҃4aX븚 h"ʡ"U3>k޵Uo8 %F(xX5K`sv%=R(ftCg*)J(ĄMɬru9?qI r n7m'Hz1M >0=LAe(^&QdCuh3q41 \]RZ janzSYl{,ʔ旧zdhT}Mcupw'2ۤzXUGL:`IjU* Z7w Y9$I%a,x;|JFZQ2jp$0~ Dn_bZSa9\ar+jjKec%C m,tKZ ؀S^a_?:N.Sqpr<1bD?/ Puކ:b4H-߫ķ ٘J S5g>~9/S?e,v2&"YyQ<[.!al;<_ Rhz1?G숦WVG؀ -`fc02?c" #o6pEo )b9 JŠ|fKN ;])M+*w{k 8iLs4ՂCKN;S$deu7bT$ڥzŭ!6xyXeɟ+ Iik:M${h:OC"W)|;t5v0 48{rC7퓳N ܡ!8PtpAiM6ເ! zy.4&vG8ÞK9&+v0~~yVĭŸUmDG?pҽd)@qWP vTe\(7qN+#V2R F0x m,"kHq >M8LV{&O\^FGSEB&tH1,(M4DhȇЖ  !cŗ;pxהKBY[;8k!KF4c9D;A߁׽ggXʙ0Bv^ O> UnZؙi K Z(m:va~2ЈU]hVzf7Ake(PE?pWRP@6Pb@QDABz-Btgc 㶌Jzt;1".9A'7C#!/0$X逑"c`%ֹf5޿ǜx'̉hZ-߄.⾅J{.v ]4x p˕ٞ3dzaN*s"dž5Y?k0IIJ-RO"W͜/ ~^EiUj.Λ,TZd| VAHMh)X-nFBhcK ilJbC 6Q!Hâ!rzMH  | &W!?0QzpAU]]a BQ76oCN:{~t3% erMV^.%= >ji> y6 Ϡi:Xza!BM mv;^hE[H2οkS|6nݑ&ņpe.Pp>3#G-MLjUǤzq?c![oJ22 .#~^upD+j.ˋX !6zNxML05pڕ$ZԵ7LĆP,DS4X+} ! TQ?eJ~Q/?!!E[}qn6"hv Cx9:gW٤5凈zxRmi-7-U3F%`K6 1y Yu8y@?<-vL?y,xC' } mjЋ eMf7ȅwEh``~O1jXܰ5\_$Ee}_e^ƴ^  kG6=o&a@(DVW͚>КauQBumv] ph7]DS1{F/Ic 4fXbbVό9쑋A챻+{8Fp@:rs4MQd~][`;C(~ Ш,~#: 334}Éo:)v `8A>-F>*fxE7xu%Y W_VSJ%FbOiz, ;zT?-m``Ae5 OFXtǃX|:=sM8u\/OAQ wtܩBb%m؈s15q۵B?qJjE.y-KN_wn$B!6&}ɟHP;)]Xn42R# F  R4a 7Оg>A[(8mimFѦ݃6-7<ڗţ} B}[%8c]j%mP# |9۰"wK$ z\=gBah8 Ϋ9x`c74!r,j\=c3S;]Y19dbÔXn+K撥rnH+LY/P.}}jmۿe >4$ -Yv8&b}5J``>,LJILь˶%jafNY(zm7~pSNϸ&AkxǫP]@JԦŷ@y/IQUCV[F (I/8f7L8;׀ZvV]Nv7c 3!\G-0DP iQs0W%hd ˋ).v*ũY %c\\aF 9j4˚̼?aa!A :I|"_hy((Q ^=yjG 1`P6qxFm DZ aaki\*b \C4<@{G8y,NdY<ŵnPh1« AZdZM@*'> ³.'\ r2/s(v!1M*C_ 6;eª:a qAI?OWĦ#BX3. -Ufo '{)%s4T{0Bjhfu~cc̈́Sx1Ո*H$ʅtV$xTAURS"OتXK:LT c[SZd#9^&PQa=eTBΪ9eFe;hLɧɝ`YFF@0lt 4仕My.&[rօS^MF\3 q*bNZ<9ဘ&;?]ڎ(A gS ^X 堇hpP7P./r"s+wa|#C!\ȠyFfAH917%`.ӾTbH.#R*؈ϫf-Z΀UGJ$%69z I{4Fb^THzA?^y-)yx@;.r8KqՄLYaAjZsÙvok+wXزsXvc]]À|O PZx o "1 b~|ŃUɶPpA70~7K`[vR3ל fg0' R;Å۝#~t5^@A֮FG DK&S x\#ɩ-o=C,JYٷ2C! R/0V7z\.h~J sw&s'⍼鈚 gs"RWB7"; k#좍< DCk寐uR Mpϗ|Z׏JHۖb(pVv}C I3 z\*9P`v%Y%("'шȡ6tdyrFW,h;A'qzV&|arl:6lW? }Y/-bfoʘ 4o7IG+ZhjD/ZDfiaphs5ÏHAbF^D2HAQ3ł>2/\>hD%oixp|6iGJoH]SR0#Z+ Pnwr7yKXT֓'n)Hǩ]3ۭ,S(,!ARc4|r`"a%TVq@x'ddgXU?W䍘= bu8lv9EѷoPR5?QYԡ蕺p=c7 ˑC.Z+GSn:$ akι$T:0g4NvȹZO |Ҫ灯|fA`xҶ%>.j||u%#i˙[ QX}xn=SOob4UVR֘q32$֦7O.l bMM v[V7!I9muCUF!yWjljb"G|6 r d1ck ).A#uLe#CJ_ΦG[\agAusTŌCa/Q쏃k@k T(/.g^M3WFY ')&,:q$+hNuq>*YRx@Wf7poF9+h|0v7\Yw(gl:yq<*A[}R ͰJ=t輷 v|X+7lBZyX~¦W7@H:[g@"rrpB޹pHTTZr(8Ø匝@´7 OPՉGɈ!$`h,a`xߐ^vH_7up |σ 2'+.!#ճh^ó(s"t078oц=DV@%=qaJܦha\J醈B$ߑix5ؑp8/@<0bN `6m;ayd'2h?4 ',(t%&H tj@h\$;,9\e:+<*zm?OL5*|eY1v=KL&h> |_b&!1*DiUՎ9ٚu3*>L4?Vp<,է%ǠvBcEDimfxIcn"5TSC(~-'/t m^ƥ([oއQ;1{S ^grrꙙeܥ1 pKbx-TfLI/?wmg+č`- &u|9io)V pO9tLq17<09~xƱ{0o}z&C$G7;k\EA;T' %bߘIzQ:"e"rRp)Wp|{ֱ:gy(]뙗;C&vFh{Jx"YVb DΑ.a7 J!oHwC![t ]tqj4U}!>\NI W0RWY"ގ5Gkucj&izmm犂sW :S%n;;|s>}}=Zb9(/|79=8|p@`<˟׿{毙q4mKEj 7g na?ѫC0ٍt9s-o *Tz2.#?& QV9p ![LW*&{ϯ9|}#)o <8 .(Äۣ}僀LhR ,%T,z_U5ƭ%lvS3 |/H(ؐ0 E`Dߡ%>I4r넇tl(.^pqUKsC*ױZZon.u{A7`̈́OOc v" zMٗT洫8n.E\sJTwn:.eڋ[otuނ_o˅%[K\7uXp'jZ&&jLYЖH4CB!~u'?Lr˕)dؿ8nH#y)ЕnYs]hkNN$Q$~$xo)!͙/ PGxP'eG95!|.->`Clg !wsKZb19_?,Y 솆wPy/SJtTr6тDޗ,hwY3L0_ze`f&Љ_ Jν"̹{Vh>x\S&֫_2plΦyo¤h~=?2thZ5V;m{ձPoܣ%6_XF $LH.x (4̻Xi5͆ toԜS]! /08S/Weq_R@׼&fN6f$1% o^6ga1X[xSџ{^]a Q*CVd:橔jL/߰Wa=D SX 1ĴYsU!u;Y(c`{Sv 03JUx՞K LVSvŁ"LB>Vr]Rn@XGmQᨚd N.KtzLYS֎9@yiX?'n;3"R@Wr4Ìi65&PtE  2xtzh%X;Uհ}f R]u12YSI v+YOLņWpB4M.Ur)ɝy\Vxtqܳگ_Qؘ.AM51v>{{Nh$J3c#u"͵T-o Ķ?EK23*孆Յ3%a :`0O&zaQL.VR5}~0s6AC*y؅#ZIv}Ά|6X2H-Y$zxz&Au dcϠlSPp3&N (SdI̋0O!CՔMjnuwJX J ֘DȪwBކ7<$Kƚ^r*+]nŢĚ}7Դր3BqvBAmZn>Ln.Lu$žMRo^$TTnxIc`yxyE3Qmwel?@[M̪,>V9Ykj8tP L!HX7Y?ӂqɥj8xmQncelcnt8=?{#|f="DW ۼ7LB\wA_3&jSq!e.۱3pC+ЩC퉓^Cf.NÀc(NTHX5 vͶDq~S0́Rl.af*?c0 Q9#j fD2~G0'T֜A$$: 7W5WG]L#\%Knb ^ދt1r*nX o*nXŰarm0yr-MAX؟}f-^\㒠|pqXΤ{1[|t}?! vj{`^(. { 7/:6ApW3Pc2g|/&>l]YgWe]XR\.\{m uh;Fkk}>\Z_ R_r0WSC!D>{q ,dLI&& ̺-!AJ_Fk @puI 'hõͰǁ9"0(We=[ qG9Y~#JeVkۆ NTΞA{@BjrW&gO/ж}h|Pe دN yBÂ3ƓGrÿM  DW{g̻xEwufwwL|n|)rNj#t#>5KDP`RҺо;1!П7O& -~fi |$PK ŕ[~YNK4I"9^f݊AYHܶ@_V7uyJ_s,k1x=xa=TJލQ:>B('JcьI=ǥFu+Y52Kc|-,`!RRyn/_.VNu܆NFtL#p4[,ǿ[tn+gXLK+øgL"}@[c`kCSm',{Mc/> p'Zٸ'Ā Mڏ p_Ƶ_IVN{! ϫ঻ZǏp)@➔]SVx  2 &Ga$g miפzXH/ꂶn⑴4ꞢjY$Eϓu"VDA^^7Corw|7,v b?utS} Au0VyAuض#_.-FRLYçtB$K+#V<YnAjҥ@`9r b*xQq&FӃG,q{1~:3 U8q)H"X,B,w0o{5so(2YJLNQ_Y$Q̐D@=Pj:8hXU*CA1JR>)x%%maP2r_)mEq Oip'*{mhb sjY'BQ> 3'R0ÎXZ#*i> 9$|jR!]JȲpd1͝>O|[@3U{Sͬݲ4@U!s @uZΊjt65s &X. bvAi3н3_B706mJ]Z'8{4>D kf?u23`ԪzWK*y'J<-"h̏ 2mЄbzSQݸ_{R|i%'o+g5V؃FIo8$R~w?-<&OľK' jxϭY.B(0Jΐ %EX .僠43l҉Qhg:\Zf԰ hX3Xy}k ƝҤߖYaf|Vi6fFbxrrT(8wӎcRer?#-vkUϙpC&TDt7os&$יUoԫk0#hKx,{t kJ1h=#ׇ[w NpxpȀģUD3g cjN|k̽~5(Tx$mm!ۢf-~S>x@kܶvC/O^N.@vs]9ۺ/5J F<"V)bԹA^(ЬEйy`~|_FwgrL~#< ^9#JˡGؾ`2q4yz4،AV7br;3p˛1N21$2.Za|$ w 9SKNd@ eruëWNf[tj eߨ'QkuJ4֥hi ;""!?H_6{ bϫ+tq] *{-ISW߿~N-gJ#[ibʕ} i{SM{0z՘$*QlRHOOԊ@o)#UĂ7-5ieMZ[U}5KCY1x ,PqRqrHP2:E?!4$&*K#8MLwt##&-}(QM P*gaͺ /Ϣ+zO%J022*fRΊI,ҍ!/}w2k[╂ťA6}jRjpP -Q _&F[=%}%<qCu8ur$yO^n)F'8(*nHSވH:˱F~rO!Z|]LÍm=Y ͊C4vu^81ꑭ>$r5=RirTVJWsy7 %lt/PU)W >3xs]Re .Kru gyy1'G,4#:dk{9B!qt7Y,L IRJjQHe"L!l$V-sGb?,5K,EcL+lFO)_"l@iXV;dK {*R6FV[ߒxٟ} J'>} ^bTSqH )fhfiP%a3{}a32J$sQdI'߾;|UvR0&st!yMdJ^G }<}\Njyzzדz~9x!C-0Tb99|]R5:c\H2^K.F[6c8I-`؈69OuGo 'PD |NS҂ 6q{R;i,xjH9&+$V{\7607*J3G$lIvO;{J4<9MFD;y$mBBa2&{7&^Kp@DEVs&8!x(d^v|z1a/Sm.sLozO0"@x.:_ ˃^ ZYX!e.f,c^fQ,SE,q3{ CV:ߛoV72cX~>aa2}Jբ1%S!1TmIgf(a(>jٻ,})+6ӂ2N 5xtOV7ržFu:ovIpKB kaJb6҈MV͏v5*]B4% HZGW@QnbE8dlFg̨ġɉ+Iy_y'6be. Q)A{)3.pC D8ְA~IH5Z2;(й yuh s`x.lœWRGPXXe?cӅqH9Kvǀ+ t@e3_4,Zs['wD sY' \Z+~XdfsAL}ɊHDlx~ 4c +aZD.޶w̿ff\m=yeI ؙeZԂ&(\q'l"$ -(rbP=Ma6ωt`o2>T,~ W4 :q|߽90$FAgEu2+aD)-Rxnb6L܊8⧝hdKLnO>E ,%H ޵H iBPC2=AzQDpF>F|b0e ܠFp_Y8E> g9DЉ3\Axk >zijvK6NЕܶ.RFaXu^?U\M'p kW jj~TeyJ#D~# PN4߯!̒7mau2[OLrY\NI }dvjZ^s\L_TC )D4ѳ膰n]\5ѝ `xi75;+Pz f<@@q߾ENvad.;uWgڔ:$چB!Y4R$P:( >M7PFWv LOfLKJD0H-ֆVI[dyGw LQʐ~ʩ&}EN>?N/za+cѣˎ>rɭkFu&.Lمj=T<-.bV3 Ag>rPR(Si&ĘI^W72j>@%pKO%06w-|.$hPL/Ԥ )zzX$ I)- _ǟ2ޥu_%)h aqŬlNm]ylo|c:;Y5@ lOrm}|:iP Fxx;:fr* ΩXtVѰpHDjPanXð1HV _`4(-c*m| ,hy\w mCݸot6 9ZPs]߻-26'(l3~1$HĒKO&˪+2,ppLa==o=/Yնy] [] 'EwFn~VHǏ`ڼZex[Jۼg,fc^/KmdV?AԦzl3f+yq IФs7O ,O^zL qBh26w|'MͿ Ër?ST\cd cU5Wcy9 cA\f$y v_WFIcNv+(ҪfX|BOT ':4&!ZZc+f ? gʨ8u5(K#mFFX=ف鵞Ț.Z%Laxƥ}n_ui؁ٞs)]gk'xtJn?cM矐W*Pcq]A N)&tgJbZ^:8~0bE'ax|/-9ݓtc"ɄR*9k/.K$ {(/.g`& , 2+ E\vņN&Oo-3PĦ0iq]X30\oUm3+k,"9o -_0.xApVNlxv-Ljip[8Ɣ&0jt'9XUC:BJ8ԥ> ]Ez%\d.{@پ.Ϗɬ~r?%Vi ןGAb% DNi @a>d{ơ `wx }W&u,-5i.: ZgNB(Ti\E͉cS"|$p!@HD.A˦.(#Xօ}YYL1RPtaytH  "!Ez+oP(~߆/ZVf~WUΪaW\8#+m%@5h RA4)N1˷4t+{Z1(4rq?'_,l*d|^h]"9iI'(m޿?̎dj֠+D|@͏wfBZM>`>/:9k1Ѕ]ߟowmxN>t}A|e_>`H񳿭 pͼU)$,xV{Wkn;ZEH.a:$8}wbʷgJY"WԼ+R-q҇aQ̵yYCdRMgTW1GDO eyq^ܒ` 24Cs;`)"Z-r$GV6,05GDo}O-XSal-&74y L̫DtQssryJQK ^J5kh߿kN6mф5Kshj2Ôo3Lk+̊C̓B ~301zIڼ0_KmbNL1E$7^̬we}t@!Ǻƹ~)k~@󪉔IhRm[5Ch:-{"\*`5tE(A81xb\2buk8YeI5IwS"*}5 %Î\O92by0M'ipWByw( |VMxgGս1is7a| ̣?5@A]FIflp(Jj/s(F<Gk!fJj֌a-(\ ?;?`$Đx+xA\!$ Q;SX=/,r?Ϟ|zŇ bsXV4wvBGԹ5'9E3ogWb 3![ۮ)1>{5iƾqt7ՌˈB(K"ns$_Јc52${52 "F*@Ζv [lf,=L =pb3*#D|vCUjlxKۺTW o{YO_~YO]'>}Vgbh4:69FDc㴰Όν.<]AS f؄0xdHlab52# 7m+Dʛz5҇FZB&\ͷrdpZnw \٠¢2LwoH]7ξtOO{O/ X$ͥ۲χ=˼"s l(^;,j$J$mXԂ"=qX]*`s );"Y0=i(b*=|lgF˥h6hZk|#? K[÷i-+v)_7tɂ.Z O`33 ȁיAI>q 햿r`K/.0Y}S_[֕نshf?VLfk8S/}l(V b 2ra&(EpyN@bӘ jjf/@~OT-E+ɢH]^!i_8榩)OHME97_9_:9$ߓvu=T_aȂ[xL X qOX7/v5XyL`PZ0eyE v C0m-,3y̓-ԟu(FxG,g3`BƷț{gRD`GIaf7tuQIN@PSk;,eQ-hG-MPl[f:#فdff|kUc>V-{=޽;/W.WW>ۗ 7-wHe.*~n;Ө6Sn hc[x7>xP|Om܀7n7 +q68V q;>lgEE>YIry#ôq$}IK ߸%,8GqM|!]өG~8z]!.FX8`ih8VV4NiX~y{w<poc^ݏɌ/ݤ(0 DmA1yQF,n^Jo6~[s23O My[$m?=D o^m.fp4g=Q Pur ~H2䱂Y o0fNZVxDk蟀wXqD쌩xfX7Gƣ~Qx/ߓ:Ft~Tl슗$js_ŷcg'<&̵BuuefiG.e1ot w i4=V46ؘpxq[C$ ȗ '.H[6P[ .q&iN.IR+ ( U0ukRvgScKBoMKKQ4 JIvXMJ[K%/V/;:T6J"K`wt]'ᯂ5UMrƪH*iES4w;W+{{7nVB{:Bv݇VaJr݁qu4:+V^Z sqj֊oU $oGodlĎ XyCݐ8wFniioZ;$하Ozx׊;Ok*ixv\,~cuL*=-^WYа.@Sk:qxt iGѧ#{~'= 4`svҐNnpk%Sc:;=Y9naF3,!h/9{9' lEu;8m(1b41~eחe{WeB2lai;eLhk!1`[g'kĨpXǁ;5fNݬ ތtY7@K7|ymŰ 6|2O5"4~b % T'~_Uj\,bG-o?_${~`my>yBSctuGiI>!!4yGt,J֑gLtcs%GGH&U]gC Yn#O6c~^ 'Рɩ}j]'r7^(=rVd9!"3[0wB+ݓ\6Mn>3l`D[4 רp_`)r.֗*I,6#h4_~w1Bs,' .WB*Лv&̳-bwMIz7;0y񣤠<$ 6VJAwr0Q5#Tnsld#S\LX~C(x~f2$jAX5m<#pi <Ư:qb?|}!ܽnv':bMi2 80*F#A`(ӿsm0A$§nqCWtzѩq rʑn W^!sfڼ;_vxLN^1 r˩a7.֠a,5]'&i84gg  |;c 7OrTȽ0<[gFgA¯gsW:"d&c7;9l F1@KѵZzVaV c6$@(6"dyTFhNKv$uk64&*fs_M!PE!{˰̡b4*Wwy}~5ڕ4rf> (EAfËO߽=zsr^LfH\LX5A-P'F+6K=r|f]mwah 6Zt?(|"MIi#;f,^=r@04MWdǚ ;)0Aׅ& l|*TGجPFqci8YNud`^;w XB` rXdZۧ0!88̳°e5u"rdTTfD7:^'[qΟ(^?"cf`h<zzNA DwE݇@Z QL^ ᘠ:Dbdj:&MMHmtj^qS8e) pLkX#F&츗䞄0G鶂6*#zokt8fe;1< # Bz N(cUY'´I#JZtUb)HIg@GՀ]^B /fbs8 r.Iݐ")g~B–1ʅCЄfJcisUcbQpbй b(PnܪM*+#6F̵:9Fiy~9bBj,zI/AN'oYX4\4/ے}` T s|6u/#Pxk:uᴟj$ !?`os>pCMڔnA,ݢPk !D磃 ~Adn{8ʻjXo~-ǃv@cfkf Ax5=g=/zVDFp vA ^r4=0aKXh195\a^w ±wNW](c,9Xgҋlkni #Y3B2X >8^'XY ڬ#2t[E7gn *B"^5lP%[IڅS5u;0q9s}`㩫gн,(g-^9Q2M=+F.O-ʳCSA ־;[`"'Đ~#=ߌ.G.)^nUT7*%.F/ i4֨tMUSCjHs#(ѕ~V27 ZªAJ.3`!Bؐu] 3Fi2`TQpy94Di܎׳p95 djWë0*qW$מKJhu TŰ:3KVyz-PCmuTy_7yy>]NY-|$d)"0ls0'{bG⪘ya4 r#u}̦1rP+PH m4]1g)V{zz-҃~!Dd 5mo) `;z+2Mhڼ/ W h\'O_ETq7nx/mQS jaqִ:3c"vnVxV@gDܬn͂gնA] ް5+@E/7, %ngaj%Zb[ iq}zeƸ8SdR{U pj 'WeӬ4Q0cZuا\b w_Ŕȯbfl,RFTIJ$~FQ> K}Ԭ# #V6oѽW.ŝ7\d'CPq͚ХDBr!Di,eÌ0/԰Aó~I, BU4F,<}Q#ʐ։,KnK;9X*ٸl\v>N/7~#CYr܊D7/ δT0vwbJZ:1oLwB6Ndn!D=\ҵ g5Vv [gOw<5,cflvn G:K*hM7~1-6N1^ fP=C;zˑ ?\_I7M5@ DpլYX¶6{;7*1?Z9JD; -UK۹-عoZ+$^*x۝ Y.3s?x9% ]q[ڏ]oj =|nV {pRW4k)L!~wL:;TY;rY#/{)${S͎?/B$:1~ܬ4Bxfm:r.a|n^Vщ^8^rcZ轭ѫ^.RɶS F`W&v)rh !OAԡ=+)ۤX/z٪/sV6}=h^ϧ r%9@:7i4PtYپeJd(-#hK5j%\8b%U:K_]Y˯]PYy!]K)Me=:WmT 2* <;˧fS3 %HV1-&Ӣ.Ѝ*`F =;hɊK; rgQ_[ u;fV,wR;.OF ;;meIC P>0e7i5 ;#bX> GW6o +d>Qv',nXUc@${JH/W¤/WF{|p1|.'Xy"G=ӯz3Æ_mβvL23|D]f%4輮~xry?1%KekD£E8lG5(T- l1 B 9svc ko 0IcOt?tyikU+!;3Z |$0.Am ˒I/t#Kd$iHk&x~ %b% G6r}'#;p8PԹ ‚_G "#LÃ;p= mG0uC'M-KKͷG=< JhH@]F9r[3s+|P:()~8[Mivā\8 \AQ 3xk fDK*<^$O5bwy+z"QJH`3fh1Q|޿&H"IåaS<όÉoqY :$z\bd}zzuMH;=iLj$&J;2Trjy&:yV3Dd݇aEjȯlg˝b}w! =jِ=1 DY %[k7HΚMBw;X2Rb c`ɂko6 xG*w)Ǟs?B':$)mHbZ.h_)j/*тlrBr-XN]ERU)J([ƙ{^KqIT$J?n&\XP~5pP$OA,!W+s h|-ڵG /){ 俩@^ɪ e >16u-^rXe`p?.Ud%v̑qXОJKݏĩhTa@])5R66t%7!/}D1T2P"O?U(+X欌.yiE쐀"ˡ{[4>'\]юbSҼTWq!BKk:ety "uOdi猠v|@;)b_Qox! 'j6.x=} ^;b·rtbѤp`/wĞS4atu/;Jأa{ͣ޲ܷ'ƈnd @3b+^ ,( &h\ȸjwc]΢ Uv,CyQ;Ǥ-畃嚳>O',U#Wۿ2 dYr:nrqnfWL,F# a3^ls$ZPȟU@:/NfV()UPIm( _& XbMV^4eQ=_},LIuTJρ<̏ q)>K'|~ ="c4XBe۱N'tV%N }ˈB.";v2e5ۤGP0V8b26JġG&Eߝ'yW %5[2jMbvhq%/>B?PNQ''x0",-l[*hXqNtr*a+N%{=`do@Fg>Y]dn" r]KҕHLnz?dz4 X(RF_"4*Ԯ7Ӽwe~ O9 g)X6ji(6$?p:ZZc q}`8 DC֕aFm9,~e'cup@ TQʮ=AFAx G BBI\X8K-@ܼ-oE~~wFdunw;LAFvOx(mɋD.,sG* #D_p:} nC^q)ٟ>+Có=@"5&bG< )<&|((+N6@6D}YcybTfV;M@ =0Y?3\KE}$o]badDtY9doOB o!WVsL0./+ ^EGä2mWsGf`&}βF6;tg1lF5շT u >;9o"/=uJ&<ӱZLڪu13AD~CQVAL&7J%w>dtQsU}]HTQźa~[8V\YdA>H]+ióGlCP9>7 L q9 b wZwFh-!^{AnPSh? Y2b55%3,.YW}ý'C7}~rILw8{`Nۄ1/NNOUթy#;8(1'pB.z~Q^ [3vƢU -QwDNd jS,wnRfdQ #j+\e:_ݚ@5,bP8b sD7L'G8\r-pA{H]Ujڇ(W9b00-`hJXO$ba*WhRX B=7cې%esԱ[#zfAs!XĭdVq)%On}bfJeg,I8c=AIYů)RaDM,(BWl>PRĺ;HTfM(Z]1_ᐝ\'5ԒFR] I!6MNN1|aP^ rХ-d,[YN\G)pfSuׂBuyL#.ٸ}3%.Skg!f%}qzv\DPgO}ߝr?pՓمRNXT 4|ZBjޫXJ.|`d)N{ 5j$[ь {2N s_{@T*P4}#E)d EUDHWh,-0WQkV-+O( w c7Ρw ֔;~qMloO3S"LhtJ(6!u[(ˬrkҨL #M_,Y ,64%pMJLT@0t& ~O#g?B}^Ε~P~[UbĚ3I ޚA;K =lUH)Qn CO^2łNj⑺x<S8$+_@H.?d>9v&0epQ_BA#ŀ}ZXB]؉CUKk-gZ(c|0 +{5|~Z᠊jgʪ&()qnN/sǣUz"݈Z2) |JScUK~BZIpH|̅GJJ4dPP I_U 8 xMv*Q"yQ_KE'K+a;`w׎+KB$n>2ȜJ1J(e)JWheɚ3A+$-R:$Dʆt|".?j5>/6Day썘GG1 fpN0Ym'p9uU78tf>2 HYϪInM3gBC-Ͽa M@ /A씊 vG8'{+buOUޑD)ȣY׹{" '`p]'USΤ>Y$0B"E7zd\@.NN ]?Jx{EF!+okQYےa7Dק:d\x*&=B(8/߮V^6  bC7}-J ESXW3a]![7!8l%,fmo`ғN9-}յqd :P,Uc'դayo#J5/eK[zQ :h&h8|O!#_ ❸BF+ZȠ?25,<ox\8Ku6ĝl`@,JDͨ{#bӍGUžNIiOad?P:c%7ott٣"![_clm3=51Ek6^hG/-5V@SW]G큺h+H¼>|@ (x)#-XRmj*Rk9h WaBAsUJiq!*. Qd?b,2%F:)Qyf%ߤ 0*˲)L &ȻF[g4+9OڤWy)Ɨ8<nõm >vf2Kt2Rgܲɣ|5cuuLF3MD>35rn6X>Y-^Wj#s4 GPu4.uVnYB>dž/'.cSJi[_|g ;V#f0 š-@Th2MZIɄ /L5Pe`HpJ0zL8tͱð1=PCi1G*`L:TOսki*bKYXRMŹ-Pl1Ax0$ ѾH"tPȴ-u)KȺ׬&|SP e,\ ( -2bZux]ӒwoAK ᯛe)^Yh5, OJ;2{pluQia?%z: zh Ҋo"l{4`V8~J>7ˍ2 c))a*[T>tO IS2Ju۵?Pv#ؓ*KL7B8\BogbsO_cj eLBf( Xm~]e9a,mVhCiE8V.NP"TG]>8AO. |7xM'+̕}Ft|.ؼ^}(/9cΣ.?T?x:C<ɇ#91GQg3{/RtE|]@t3'IL-@8 DC+W>TW+kkX )&Q`FAv7zA[7utmJ!Tl[2 IŮ\~SS}1S =pݐ9KiP.zEn#-9B*Ȱc&Bi+`kZ?[u1esrvjV/{ƻZpf*{xH;#BF>8fp־HZEdQ̅׷^gb"ޫ)NVHY^^ bPBBMD ҩ@sxpvPKG)'@L^G< 5 `,@5ruHaجedŮM(*75$Б7n8PP}`j*ÐIf68F7ttE$yWtK"=wZܱyq|tl4JA4TPx0e,| o!D;,1 a՞v(>XGmwf8<]-tg0 l &nq^~@2}ѷkgC/i_*GS ʏI#ssʭ] ]|J@KwSSJ' ' lBGc3T-B2 ĪIی: ϏJt3Y'4YSxr`LQb7ˌk{Q,՜1 `0X$7bЋᄈ=?\̿IerW8)%mF0-NWi#  dQWC!z = %2]F ޹~^nbBy ٪OJQe#FܨU): #K(Aў76R$\$L)0i9IR0W"iW@p p2A;T9 [h a{?p6B(. S)<r!W*zk}o Q?c{2CN.`*LTĞs4铺K;싨Y=}`.?.>1):V* 4rVbtxd~hy1iXˀj+0zF9kYlec0 SuXl|b|4&3 48wGEI&qis-&ߌaশmsµLYTodE)WZW♱ChDy-7 !\1&wl0 R(Nh;+NJ5òT`&MS¨-ěH6ШÌM+&~ΩeWE|wLװLΩ4#hXVwz߼8:]Bq|\{ܴڐfljhFcܼyk5Hi%<. (d'gĽs/ItbDF4"3glgvj=U}f% : ` AlZ͝ԕ47`@9 ;wYigRoe>8!Ds&bY L~25ug`5[,K]1'ֿ,lMLcF)E}Vn*SwEWm,@9c֏c s7 ;)v\YIQgd Aݺf~q?9ցJ'| #'ݺ౐&8)F(j#8$†@Imn橫~z鄷X'%erkD0y +2et" К{kD'm!֦]gw+\SF:Oᅨ7VƯc 338(``50?%jR 8A:|/ oc,z"U<eU'~"ebeZ[)t Αw;'6c#fU <2/Os-bGIdJtl.1^8F_Qlm#FhK'ax=8m5~JP]8 =L 7N$o6t 4SS"?f# :qӆ*;S1v1$+rS Q1:AƴnGCg O L@@I}r]!n-( q%O]wG/i{#!ֱ&{p >Gǣ4E$-P-vyt:il1|Vt+ӑYߖJBsMUTC.&V-ʁ)*i] ::8۲ܙt O:F^sލV;UHt:'KRՄ$cSǪ9Wuj]#]WǪѦmRs9#"*.VG峑bq*hQS3C"ȥ!ЎiǏ>-IBA3a"6_DZZH%)9zzZ  Ψ#kț:@&tYlM>Uˊ:ꍖC US87-wę_4QeQ:NqĖ]Ә,{)pQZrjC}2QR ze4jo:`7JM]zȸ$B!ؚ@FgҢNXhwpk XcUC)nn%ie)I9R@@*ybÛ. 4"6g +%UqJ *-U~3% =S1M۔&%>[ՌŰ}9B![JZ*?̓8ajQC9M]KQ0}B 6 a})2HbVY1T:W04O-+1޷h$=<&i!~Xmi"r1rK*+Sɦخ[[-:GZxz WN'7>&\Vl5wۢVd$]ًG?;>bcg0-cSE`֊m- $~d{o:tw<]5VmOkt['-П&!Ȯ*4?z k[\z8JJFG̯sЫۼHً#훦Fblfe48 %6Ipz,cGZrƫt*w/YZn2BeKoŽ)ʍ~r t)6nrkeqf;o Kx޵ͯXȓ3<͈0ƌC捱ƛ*5D;99WОf };`i*E8diӻizL*($E2Z|u#`y7LμgػEmevP5ֳ׭&EVS=/u]ӳڎU672?z!ky*G)|,ΐz8yQo(sSQ:zkǽ^5}Sb},] )hk60_ U=OvGQ]')M-@e/PQ-q l\  v.p e6c%lN9L>ϓ9gbgأ3͔xdqIHÖ~أ@XN\)䱈Wp\Ե[-d~]x!"<j?o9TV .c ziC|e#e&ó\Y|dWr|UE`9<+(V\jOI p \{7l F=G̫[S^EUtkwhE;H.yUhԽ3r$|uˀ<2,w3:.dvș\^91Ք"EP^u廃#wW^?\@Guw(Jf̢e+r>{.W69O,m,"`5凓wҖ5fQPejF2HL t+-d'fOX_tgwлeG6nb!ki|c{Z+g3 YV.h1ԅy/ Swm̦~ŒXq~,^~6/ 'egLvB;iωf4CEg_84h#jfW[>^OO_pw`{hN:5Lgʳ\E\"u9w}+h ~QEذ}DwSS Ee :D_Gydmq)x8q='䦹XwbDSp0ڂl~v.2埝Qb=>x0z9EK:(sX E!TX~ ]aZIO%)6 Ymo}m5bn{~w=TM~sJGa:ctq*5jO?ANJMj[Ԣc]CE_,{D8e-y5٭g:b>Z^c:}n+Tlע80` ֖B'aZIzEYWv~x +yV{r 9#wFNdkl8,G ڍ(#y1"P@X]#L\oŠF;o]'2bAUnlºT6}ocQ^/Uwt`o+6M7OT [,2bhZRHEvc-NVS|+AEAQ)/<%>ߥX+iK}G[t/4 Xk3;/gf =’O.em#; ݔ*?CgBQԥj%+vc<9j|'?[0>usQ>=頤w?I}.Vy .zGX{:𪉰Ӌ.s6ߵݟ@qGQ^6bwvq~via N?iv G}PڟΎy>9E:0ڝf<>;|hqZ(*u2'OÏ+~q>yqJS oi^7%!ExkX8Nw8p` u:jI?SE?\a5?5? $c9m[x84iwiաy@O[0sD ?$alIqC47|zJ@ # P^QS PNZ &0!Z@OM PŘ:Y ]ͪۥfԆ6|+}vOnI<K:}{k5va`/qف~P*`,/6B?!4!k:BqrZ~c߰jYa&,!{t5th);5PzFtmSfI*57 ve&jIK^&*N>VTu`a],$>5i޽?>mv GgTT} NԂޥr*tŗJ=eVYeMt_;񮥭g(pi;NF [W4QCzS AD&뱃a(\o( Xt0 S!r}7q{@Cix}Τ9@pszqr;9O6؍Ěaşݡx(O)?W^(o:pO;ݶ;#lJ9<ԍ[,EDf((>G5&Q${ b0?:?۝.r9]Z `g˂l?VIV|tp5_`Y-% QEwGuDa |q ;Yvr!ӽ&.ƶ"z>L8ť+\WB{ڷ6[?bs7&P*hhI""7A] nDM[|J'q![WYQΈBmJp&snR7[\x37_ }lx/86VVߡ2ܒٴɀv+X/6ti96 ) {NEgU~q'0;w$ˎd2-\: }]Fu&K߹Aՙޭ%k afe{HMPIϷ&ti /p9e@\d,(4:Ȍak~6Wj觸0?DIQ3Ị't낝ώ/0U>w^NL$!!IXRk;(i9 "lLLqSz;'"<%?]VYcDVnTo~nE`m iAHF2V\tw `s/&0׺w"D:8kI‚T$~t&^j,$YLy¢-,UH‘'JDTyYŎ"<^٦sxى"Ibiom=h2$mGA*u].)*"D$2%krY.tϹdI\VQKdKު30iLs0rVZ[u'MI-SQ*ebSUf4~#~ѬhrŮ<͗wTJ$EI*.>Ӻŧ\B)Zl$2P떖2i e@ꏭV, :2QV@4/vxp9w!LKaT-͂G[3ϔּYQN*_2RV[id,#-(^ՊR,1?ԷLJsRUFsM:+A@^ nƌZW͊r@.,M5pVC ,U HnEןMv()pGK=ΑS҉$Yvh <8Mcj↳q ;B> c5Hda=ӽVqGH5~=kM=%yx =!f.{0~"ŗNا&" D'X7ntKl_0]GoT`E3mmt<<6ΛV}w>(r+> /hdZMN?+Kx( wPKyrаA1BdRduq W9ne` 4"X( E]Rİ /,$1KGb8.WH)AT"`.͏i̹quzz9PMR2,ֿפ:f%!p4 QFw;4q:xz\4}]nvM)肤*S v̩3H23E2n_s~kǷ%e{cfe8s[8 ҝP#'IySߊSS=x?% B&DC}Қ$֥ |sYMΈf?_n %̏e|~мX[Rp&Y6ohzI3':jp/ 2: &״з̻O¨Ž*~BkA$&l%]$Ȉp2E.)uA nx|Wx>=DAWnW'wB fa0H+rgߔv$w7r847<>˼%Qƽێg 8lb=ݶޭC[tp eIPq7P*r1̉{c;UWgHH;E;an*2U_\ރLz>rCw&}x|!ny3(eQ1q7eRG;H<C5Z ǴG+Nn x  ؿp8r*P(A:_Ղ˽RPR` j7RK"VRR+ZќΈ¹@6p"(lHd AFF1f))9HgOTz3f !x #WLCsu/f_Rw3£ oOAyfPM='ot/mVm %`&=Kyt9u._.MP͑1XbHkD-tM\# H6)LTȐiwaRɄ5< OvGWwDžp:hŵg eƘtmw3zQ.O\hK;$A\!nyz4!Ki^x0EĎ6kaTAy}\UFB&93?9}"JG*V䒓r}J587f) 4L6"G3 ?v}>%y(Eb,; Gdq0)@,`OB\,21cAG=<g<ś.0 ۨD>*rKesśZI?5Ot8ď{yZf)#_{Čy F2gRF}W`CV赏Z ={Ȍѣ*Q^ŌYY^Ag0z1C |{XAC1j51(i !@|c\bRy(?Hl$De37xTS7,)o&>R?r1ݼqnWjFY'!ЉZU@p'`.Xrj:dXlR$1:M͹\p[0' ]聸t?~juۇU&Vڠ#Ģb;3q@;cc:<\Ro4Y7uy/:W|7:;n5Ov:z%1/ӵI0jIkYJcOcg1"rE3Q(ڸID 1\ R?j+TOp7H7[g>v5T+/eETa'.>+tEazdsx]R2 (+ӕ8. 7z%($\^i_KٸINʒ&\s`޸AY?Nn@{R/{N* DJmlW*8}B᥇%ok30Q**]4e3%"1Ee k PH 7_vj:T'C\"1+uk8x f濃dŃ)HqB #ocn[8Do_cҢ,E7PCL8ɧm$LVVW}3 3lSf ➪c(ۨ1:"Nai],FsޢggTs|hH_HDB&}'7j-Mo[ܙgopUWaOBη.ړQs 3S4nV2Y{ 3Rs%LDsd|ܝ)9"o)Ʉ: ~-/ix<͙ל ()R%1۬J4]@R,uD"`e~RKsy˔a< e.X_:"墥yp}Pa5rMxk]H-*xaTwF$lf0 RӔ5IΥ7,N*M &զ ĹZ` |u!MUU]zȱ'TRC~\1xUQZCvFT_f9n@qE;V5SD5%erLu *H y"@wKig>$]9H`^]n)~j<19L]'EfONu{@rm4(bΙg8(d6|=+;7i{uŜ30?$hw`-Isp3sDomҭi9lԛB72 1Hom,̾ TR{>f= | L 76 4x.AOEIsq⃺vO>Q3BX*$CQK|Hwo|ԇ<Sid|`7o|ՇOXLes#jbfu1_dz*{"]1@X^Da26q6G>)ˍ7LF$f4>aˋmkAPY^Li:-ۈHZN mevBcwX.ƥfx.(1)."R@!.Fm*Ŧ,N*>?ה+bwo=q8 1.F_mh ,zcef}-X$ FaLSY*ZsR Ǵ;àJ7qF2|̆=P7u`;OyA,bmT!,jN칓םk>_w7T~$ :wu|\Drjlj]H6mes:sI̒ŢhV/njbx{vo T ֛8~ke8kYW(Rxd&V(FWVؼ?UM&;BQ 5r0fmIqD<(Ѣ;3h')3arV}.7iN52u1wt'kG~7`D(sǝl1ٝb3EIgP% odC;mdlN<+p& XM)%[{*πcNѐH4k;HyR}I̦SN=]ރq!m}鎐?+*F4>ўZIYM\8(&L@8vzRGr{ƪxq _;8=bsm؋glRSjT%,eF20(U*~xȡӈC!Bu3ay6 1 nh=j^ozT8a}cg'`{̷La%G{=j>lihY.݉лө5thU0fSfϘ9# lIv.~hϰn 󌣆.]! Gٷ< 9iF,P@~"wOۭngQn+ⴇyDo\)م:pր锻o툡iWRh@ ĥނSDTC09HH`tB\ρ x7mvڞs)ȇ&o F@G ny]63[Ƅ,~) )j +(߻vR'n}jlu[:9MQJzc tQ';o5?Z@ꢷO:Ёu:;ouUaYw]umk?[! qy1z!vggݵpBIOX8"O옆tv܆&?5ϛ'7tQsxlǢqzG0#N Q^E9<`0~ï3N';NI`=A9h$Ēwi,A>AWG!}H2,: )%!'O)t{\wq?N@sçԺ{ =@9bE?%`, ¡u%[٬#]=!}u\LՌ4xq}̿\?*'V%^`=ߵ{V 062 DB;_*'_&[ϒtSG3+T[4Ќ0Uκ 3aI ^{t5;RA2@C6B3f2KPݿO/ʭD^Z%#`X~Q1s1ce[SQ "ˬ0&X_@ ȆQc  q"I ٗ@MB:H3XX99ƽS.?gJ>t|,#|,x#s,#q_ $D׻OSӛnExϖeEо[NOC#N0_cCua *j>0?}03tpkmYπ y6/t*z }o¤ J6 S= )|k@)@$eqzoH~Xd P ]9]OT(Qka"f y䝘L`ڸv \P3#E4r·DtEv@ͦ+0IA;@" KPNƮw5$ٰ~gA'& `a6ooK2JGM~VnCNM.A IAc+f^JR“^FP| ϢvKՁ'fBoOA:Mo ]tc#f6?\+v~uo=k1x<dI NXLp=F3H,GYښ}>x Ņw<՗Xڒ%&F$xA/iS}谆N#/Azn0 =)3d) ¯(tá,r`kaxy>QF kb[5'a:Fbv; qYxf, ݣ@jpM$q1-m=R;&;~_*@PdtG} fSm}Buz۷[9^3x34%'f #QCnE gF,.sJ"/ j'I\j~oa .t=a"SVXS/ݫ%@Φ;qQv&Q`h|#M+2&#yN0g$ J!ڤžޘI)6L$֏m@YzNRqWX`\; z)!WP@U3\/(<u=( a##6(9 c@Y%}` *~V>UzjN"s* c,e^]=Ѫ%91!RӒpdjZj?/lK˾QfD#U1&]T_p8l̩TJF [?4[xP4W{vr}7{cKƤ}My ГD!O~k -]xix}e#x'}G'mَ_yYn\tz:ovO)*+L_Np7GXHO],K=(댪 |gNttm`ԿV5^9JEw?].F |qM\k^:9FRTH̋x6/,y$ACBi}GvK(pػ{=mfP;UnӖ{pơ7JP~5-X[Ĕ7q/JL1k7 'ƼS*;bePEz|c{-_=.? ә?qpO&Y‰sIu}(1Xz,\إ~")[hEx[0G$@L$S*FZz&9M)9ɭyl#H DrA$hc#Q*tNTXn&x1:qjܬN9eݱc!xޯȅ_zg{KW?Jxo?-ę[k~y}h}(Fh#b]sLx;,R~IN1Dx0"s9[Yn+مAO2]Y,]]5~+xKJr#ծ7)<9F;] `v D^)Ƴт8yph̛k<zPRz3Y "^ DtyXxb"P,Hh3a!>%s'ݍdQ72oL[Q7@\g6Wo*׋^`N,H c{EAE6XX *<*VJ銩4[L3jR=&EA,}W Ll :9 ʫHu]A 5-ZS ?Սm-o9  SYMgmHU3=$!N]J(]hgr g~fg5?3"VhcKBVjPK0V5[!+&֬P]yb.cV|`})Q`.Z,@ ))ƭ2&)-^>/ɬPu̚n6aVH9Yl8y4sM$e^_dpUSrY<L$bUqb"&%qj"NWLDGDXqW7/V\(Me %\!,o)>"iNo-o"r|s/eOe,Uky)r/%.0(ey2*hXӛ z3״\r^RC>W,YE8#`dlZrf-F:6]1f*B{-68ېLc1Vf-,-,%_43fş`WLUd.OU7[ף/{Ypyn6ek_Y)}+ &UVMQhzWu+#l2N]*aAWFd$[26n2ܥ.7] ] F9B*OY c6jIefPenBf,~0-҆::N-ӊ\y<>6j1Jh hR|ؾ"u92R(sxUZsl-u2~UѯU}ZJ:-F{F/%y))viQX,f}8keaN#.\1}Y-`k~3{Mk{:upX>^Z/o#o'}$>:}0&F RnVₔ/\xV,|Sy M&+T+TRZn 6^!1Xn 6]!f͡[ӷLC~!XWA~!l9Y%%'[iɂB(;HK$आ>GߏIIA~`%jpA&&V'է fr8zS!wh$|ĂkCB|cV$_(7WBA-!lĚXZ8m!I ^O>v:?wB$^Z);h0`U~Spn j4*H裃r NMApḁ`únF3xF޲YD@D5r˽΃\ܐZRso$24Hes  S T9)IMDWۣGʡtxH-W_T2rG{JR)ZH9_⏗cU__veoᵍOywi<_8??Xx8b\'1f#u tMDF3fNC{\;f 7V=ls?K*SP;t0KC14u=ct(1_UȻLbeBd F̫btQ:`D$'5⯂0& ٯ쭎#EsU~eß{ 4!/yC5J..s.vJpc`ĴUS%; f[RW!_\Z$8g6h^I$V[ϟUg뙕GC?ΆÑcW֟YN0|x|rLO;g=k+J&ntKe|{>~3u_^N3@OSt(nl_6g>wl¤e}TtB7zLII~RNPAI&, L7 "=\U6j[Q Y) pwE-[c?\ƃ}Q$GRH]wp!rijTֆ1.IDMKxN9*Jx)~ʣY/ #/Cg<ݧD{"z#hR}a%uC$uK9>SQlb$\y-Ʋ*֘7M%CXd20dWu?Cؖt4 mVZScȇ?O g߿ CKxC{C{2z7 OQg Q(Q4&{< 47n4ؽyh1w~dDSRΕFKPxWJV0Lj}WXcW{+fFճ&X#kY5Ye ;cϿ2?Fcss K7ϥ`YUf 3 `^R01H6 $&֫8©ۄ؀lI?|M)s`MNʨ1slu*~bR?X-oÊ5ObVye9(q`s*$%Z8MegO?5۝ӓYbqU䋕MR[N].7kqUUG }fȻٸwI;qPDFd@ g0+?n#E}f+* ZԹIJڞ=`Ӏ6F ں6ye mt~ @DpY&"0""2*R*Ap Sd\Gmi3+1o /1sʨ*WE UR%,ArP^y[ {NOp.=o$N<8gU?{ҋ?'N|RHb6]fn2;p O4EG#ݽUfHwm9|4Ze.2OV@;:E&%SmI9SX "%0wM}tQ֣(y GhS%"i|q AV.>ͧ&I#g_Q]fԮtf,9g-˜86ׯ-\Oj)#EG]-\\rgm9œh9{}W8l9";t\,5/.nx=vBj'.JݵO?g첏/%yg-KO멷p^^cZ"Jdը$z*^pmsƝi2gM- I>XT`GVbM~Z>Nx?fdх`vIlt*f%ȶlIlt*f^U07y 9 ؆J2n5$9Ue,桶y߮,άy߰ 2pDa&N^A4 ߈2O{l6CW: ~cԣo /QΓ^58%w5o@J~ )//tB-RiTF1U>Uy4[2" +w/H x =KZcטh^JQ<͑L; W)e[F/GQ#]n@nXիuIՌ‹9Yyn"iC>iC^bq[C~;&γPhU$K]q#щfd9OEg\{% 6zUlʋo d6Ml D *6"r@&4)u8U6YJQ1KI?ALI)5ʇWQ>4RE|ObYp5/gp](ǕА⽚NBQr$Q˛j;<طr})vYi$wIy3ofӭTYv6z9IMK`yJ*;]3Dvj@W}[be8Cl̜nN8H,.sY.gx ~R$/}!g/T_׃/D't{wFh H1!A|x0C}}VE@U6F#_8fPv=[3lQ K Z;$zwJI}T!YD2|] gzS85 \ʡ4ws'O0D*7\ėt}0~++Zb߰)=4.LMͯ3pmMK7TlX)^Qfkc)6ڠ8g6ͳal]Qs~ 5MPnM嚱uJwM_! +VeUMc{U?wc A7NY 5 M!i&EYKRԬs7͞{0r*i?g]}y}µuOo׃)~fAHx&a]q{@~v}"~!5}5R$a !a @zxBl?h y2j^Vv,#Exϐn%B溯5/D@:v=5=]qj/\̓BUn4-Y,(Vfqnj3FQFHu+]r&+bNy6*2_˿7C9\0)SO >buQ]lgR#4Vn̒X2h~JdM;uL 4\#煮]6\i3 WAwSɯ_ JN9q`Ws_b1#`R01Uu6(I,է%:꺈E>R>"̘8+'*SY`$f$f7 X_|$.&>Y/O̖ 50ρߛ[<)ਧr2+$S]mNedWI]ROˡZ(Pٹ)K)H_b\~4t&'gI&hgL%ͅbtA1a,,v]p>2ssD dCV/)tʾ@M2,9N ]촙z0M:: R>y0p'K.Q4;]Ʒb>yG'U 9JW^q(S'KV!"MV$B>|,&y04ige;ggRoZ>n mxM,oHW;Lهttc3I -{o[Ϭ%zI~gk_ xha/Bxm[;~6wǬ9+xs1=);r ;1>0|㎯7ͽdY2O^Єm'&J!x].NĮ:Tκ-;n9XS ~֥C6= xYZSc뜲O_lY>λJ9BY֓ѓ/Yϟ-b9Ib/y3w eZVE֍9V Xm ϊ/F%ICH"nY#h>vƞD 3A͞f5 ]o4b@'l /u02 =c48= tVSo;pb"tҐCp8n9.Yi]GPLr~t"EZY/#E=%hl|cY[h5Ji"sL,ٍյGgY3ĩ Ҭ:: Ik \n*z&Adi"MlC'jhq@Մ i{}ǘ:zk~G@x9 OIԞ41fCkǿuǺqm뉰ɩ$h -Oھq,_3,J%D]\wMt w pdf-DOR~90im[yRkس3t:ӓ^;n5;>qx[zF3ge+0Pp'lXW3D#@B3½IөЬd׬-L>H 0ٵ=ZW/<BA)Pl̄;Yߟv{VSآ}ml}"Q/Wj 1~l^<YIXϿZf'?-^h΂d(׉;I`ذάG8Z2é6p|B?OԳj ^eK<tozjƒqdٝ ?8!I['F]ERmm7 k~i(;Z)\C'Y{)#;{a&5^Vuw+u;hăif$FqsagvETSzP|&?+bo j-͛edV+fG; |c)A2AEӷ5~MAnfk$xM#̆HpANjbdF&"gB#|&eR M=% o,69XW$`k`khsъrDxz5R UIFoWx۔-#jgoBc#cby(F R/Re(XVl %Yھ=E*cgfH˩@2 QX 0I>tx3IT[7_bOaN*'3偹 cs4%* z< (|m~VnHܜOiy;jlAV܏_4/+tY?6#KwLXc`jGg%ݠ;l4A&߿::u[a>g8NRdT|~sz[CJ\m$2F,&NXc *iRѨGZ>8+ߛMԮ78wk8 j ^,b 2pЛuhVcocpcݴONϛɮe5G#ZHǿq;w.jj5RVj%f>oҝpa N L.ҿ]؃f::Hm3m#;9kM\v ~4v0yFG<ǩphs־^q8*:uh@]QϓA -?@ ]:0,#G^Fh >Gs)oq|" <(|@rod/vꜾ6] k;n1'?3(."h8-,Zl?ב @N.ZV!0 w.uEe}8=="wZOsO;DN-Q9]tD.p~qCL& ,9="=u맏-x~$h"-p{aWm]tZ'68E@?;mU ڬ矚pc?zBtIjFy{`EwS?qsbk-M1ld8]^d=9ěpwzQ&ތ{5v=4WIl^]m"ܻ`]=/kHNQnSXOSkg{7ѶBx u7셷xAR-^:[ )y|тf P/l]e)PRߪ PߗW@5%W%ATE ?d!Cs,* e%8i';7$O?I%N M_9.8V NNT3ȽͦꉟU PuMO&C|g7 ?fk}+z\ŏ0e$7fw?w!z_/}y\<^ᅰ{21e;1A4(Gg7 痩8c8sc3>S?5:=n/'/TO?ukC8 O~T?Fn{ FJ@±a/Mb<Ćiė%GH bai,r`'!:!4:}IH baAl~ 1% f:(1ky\!{ <:d{k/=]k@1[kDlG!jXXn¢ ϾpjGk<5z⁆-vv\㰆I_]޶q,2ԍ|݊MН z#`4)ߛ٣Ԁ< ml  '!)GڑS;0sG!ВG`+$A&VLj+.SklNlxO=]0R']_T״yXm+K X=dYz" x+^TWgZW J *V{jˋK5PoB7H.$ӱ!_.:.Q,!^je_P65/kg΅΂3^ ۢս=U16 CK53Kj/Agsluknun5 ,!>SX_1[w={e(HõsZ/2ЕwܔȖe}v|13mړ/؋B9NbX8*@P\ @DSj=^ж^I$F>,׍PG'"O_êx`4Ns$ӗ'>u&޿)FFTSǨ Qjt ?%}*W],(;.G2¼^.oBuޭOLhz=TP5X8=\)T*=^?'⺰8fH7$H 5VC`ĵ sq9~IkImG&($͌!f.BB@sD>xNں!y4BAg(&\n<ucf=F`;zwZݻz~  _2C36ņ \.u\.u\.u\.>% X{|Y{Y>՞%K ZN(ı_F]_`*DD?7=cy:B!^|rbˮM`%6ɆCremoV7/0~1suf[-j[Ϛ?ى[> 띵{@Xnu3LY,^J~BDX@#xz :{gedNVGuYLiE&t]o yЫfO?jU{:A˧oƌn{U^;xaݽ`٣]p2Mm}|\bO?sy`Yu1q@B@Z{vYUע.r7H'OA^z6K:"[퓣9$Q\y얒^kS}G ]{ix.X# ErLtoȸ }ƸedQS5X9}@}CTn'+7Էƶ5h<YRc࿯\.SѮG5zq6dc=R͚/:R(HI=rF >Kkep&i !ƹx)"' k"[I p{(!8Ч;Ц)>v6::Ǔ8:[UίOvLwCK޸c]7j)I|KWB䔏yiS93sU"͓]MHV&;&]yLD9#kx>2 k ,zm@{%L#"x\(>-y +pa|q! ظ5Ucr!\ ܏Ц\2Uoȵo8yj,lroX0 GjbCƾMz5j߮]t&abJ^`-\%{:WliY+~eb3lW̜ N%+€=Ű1J0@~ Zų.oJrWOM~ Y~ s3.Ʃm9.^\SXVHH%=`jUE lѨLo+秒8G9Q89օ`7j|/~:tzJ ?o@s._R55<^T"*VV|>>mFԒ{t|4ۡ=rw|ѷSan%Cߞ=35iوQ1)CYoauS$}3@U#fM5#M48$ }]l`&S[ߝ6"ܡ(+^<cQ6x,46/GrM46Ad3RfZrڀ_orفyi:No8Es6ljȖV^MD022Re!LR}eT2M;.@sm5zpԻtmeg$kW#|M#zV'o*7 ּL(A}Y{'?u뷙=1:5:`˧gLtK߱1:pێzey?^C/-vblP}1Pkt'K33j7f}zkcgtgPsgc^Bכcxڣ b1aQFy)6!& F또.H .bμNA!^GHna PIЂQ*- <+:};EQ&L@ ~lwO?ˆZGֻe vyǮuޱ'G{~w=O @͓?[uzn?tp<[>9<8j|[:9ZO.4֩_:?6ߵݟ vkZgnyn][:- ڝfShp~֏<>6] k;n1'?3(."h8׭Y밍?ق14#b\@#xi5?5?:C `y \t݋npzzD$l:CtOI R~wi'uP0m§G@d(g ׭>9`vf%IWup:9laSS^;ؠz ^Q.7c'DNяmğw\T|9q+Ѯ=ڵGhڣ]7oTE5lȽϾNNֱ{sk݃E}:Q( &s w*禱ǔ񏟬]ߙݥ]3c]4xht3 s Ի]H]8(wf ?>;g=@(`?Ğ]1)q&`hݟZ=\[f8 oa{;f^6(|$DOIa{tz Tpo; E7p87mc+mG;د^dmV_5mm_Xv@nm?{>4?:gVq?ŸkhD{@:9Afpo'{+VaB[&;'p&e۩N.'ՅO'a/dk$ؾx> KFRȥ"g{8z?؛ ݫʳG_֌{Ypiy~&@'.O;֧VmL7:w ļq 0#oHjn'9`%ѭ=;Xh&c$.':=c*kwύMv#U SfF~^I99$n8n|}jX| d;d҈^=#PÞ":މzȚsgxB U-VuAv9rv娔6\G [fLfr2Im[k_C6Cz'Eb<)-(45@u:adJ$I蠖p?TD=~xV 5Fטj{Ca+B߭{덮:{E-> C;_R_hiIFf6AZfOAF!nUO7OW@ $ߛFH&$.BEK| 0")?_ =<7NɞH$dS&_ϛz1ve3KݿzD%)KP=SsSƌR{WbDMsj^i[aVᛷ߰g|{#O~5|$ëB6A!Ne߽pl0?"NCۃ81 k6tminc)e܅ōǸJ֙AW;0g;!5˖I,!fq< 0rqjf}(ZG)}v#M;C&}'~OX]J.UK|Uf -Ў(4׎R!=;7Cv`sa(΂o" X7zr-q$AC$EhM&Ǽ3nb`y۲oڃA1a MĈs!e·QXȱJ Ij-iPDωx(ȦZDS\rA47̀xż ZiZ{h$jsLlptSY\1&5zk | ETcApwW D 'QLRx *!B|{I]@^ }-dx}7v[ZĒȾfEȅ=MxFcϟ^e@q\KxՕ\[R0_,>DC@cF`PY"ȹx$S$ǰKd`)yR@FY|$8SHZQ9SZPUD*^]U -"VdB5k߻]sLEbaP XU봱Uha)u.kхv)6ʮz~5AE-  AQ舵vE!۵@td;;p'Gl]7L{lsn0 1HOt}/Rfw?<,b c '(05!ғ7^?}qa@E2%nL-ɡޖ;L%^H o3קDb0im_%v' SE@(/IZ ea<&"6ZRc>[.{ cv`'5n5# b: Ti_ϬGRePKĽ+Cjmgeeʡ΅jCGZƽq܌ "8n)śopf|_қ[yP0<讗 ?= @HĨ\={S=[Ev{+;"j?[g] /|{KQckImLrl1%Y}FPxcz˷[*c'zNO͓.+uM]@!!A1 %3gR ujro CAAQEZ#Rs@^*oyIrFi?^Lp;6>?РΤ ]?GJm#0'=JiN\xG{"}`8\C/zSdINVb{kf>AmQ=,4N-%>T;:#IdPj􆦟)e !tS~|X^ Y*wKύ)3ޡi4Q0f~?2E1k,Lh˗Uyi$Gz0vձ9]V2&prx=A=o-s<H$_d7I/9%10Jˤc"\@SDw;HkxJwD^p3 MY(bjk P\ubBU(5c),V1Gg6'Ulfw >NJ ܂vUc^mcRp7bsL <"xij3hڙzĢjY,riijwкLed j$z-mo'Hz0 [)!@w'ze@rWCn(rLX"+~T"dPM w{b ww9"-)Z/ZQ?2$%?cRQ Tuї@.BCe@ɚ:j:rIdXb]|ܑs@JKNEVS"%6)_HɟLi׏(ޏvqKΣQ7St7]LtUR8H]An8vi~jmѼQ}]^K[Кݶ#0իqF9*|MtpeSQi򅃁7LC霾N|8zyvN?ے"ٻ(׬jD_+ZQ%AߡS)jpt6yeQ\j-R\E)/*?xwk yK.СSڸ8;}g5g7՗覮Co6 Zo3T3^Xxj@[xo SDm.j` 0 dG nfuewZXE?M*naq3[B<ϒ*nbýZ,cR<-c, ;#f:?Nu!-lC# @m$R&eS8;´pQ\f{4KB瑧"CֳFw4}z]x39 yТ>}rChcJ)Ši?UsGA_"bTgZ~NV TF؅{x-IJ\0JV7O /FɯR:dK#kk ۿYPBoRQ:2q1M-\V5{ٟN{uaթUR@f48v٥!Q4q&nv|iZbe-bwkkl2$ ©5^>SCydig:Jl*ϢKVf۾RB]6,˂i]T[d*$j>?R;)|zmXioa%'+ AC ͩ4>{bEvZ^|[s}rk˟K'עOJ')ѶdbI yWf) i^Hbp1$ƐF~ܩMb\AM<|qڲH*|MIQ1=E`\kw0;vzZ)!K6R8-¦oPL`9lc(+o,܉զӖaoL9>}v8h9;/_u5}PxZ 1!(<"ͤ$EgʜB3Lݤ2xV %AWl89XaQ ъz XVbn\no4JW̆~[U"A-v5Nab`x qx gJŌ2fcIH,Gus3׬E>f^Muz-7ɮe CV:Fya-sbax;vCM˷N.>^lT'O#eJayt*O) sJ_x+ (v3 8 9tVP"BR'drd\sU'NiUS+E% 7Wd/&㝑UkܳmqBRii(mޱ0Dx+Eq٥_f ZQ\*oJِ͕l6 U<3}~ycE9P9K|mJ|mp6^L$sO=Ѕ@ şuWT?IΞi,OɰkTY/0I=RA ;2%xdYڝPH33׭U,PZKOb0/Сq=+{, c'oe[8-6X| Փ|[}E )% =~ښ=9v8a#ҡW9uumɮ=^m 2ŔQkV@K-nf"?WZ{l kDžB=ͩZHm$8/CyÉsXH$zI(-qU&_}qs%̈\I c586dL)=Je,KBRv<&[g6K?Dۧ믬~c * nwyPƧb!jC KZ!0wv+ӕf"8BwYƒh)ӳ{Yn3mxNٻt:JѶ&`s^Y")<"Sq Ewn*"F|ʺvfyWA^UDv&"t*P _bA|Vuf"i2VM܎E@,>Vv 8+8fƛ׃͞[+|DŶ]@,[c4Dyu\?5dVy//)BN)iPGuV4_[*ƇNV1.1TϊA8 q{nYUT)%Py&~@^R 4(yGb>ׇ(Ȫd)Yv1x,BimgzҩTKӛ*)TH쪰KrOYOG|8hC eqNn0!J"r +)m _(61)$9÷'S:5RWX%;S1(WEbc2B(P4!rB'UkS{bV Z'&\i>?)C%}//, f(eC Jk5}%&\3 EȲg™ezV^^5Z<]q/-YfJDHdE8iyt:Zf&ӿlPr;m2i!e,()Y"2ԥn9nk/r*CB@m)h7.8ڡ=,Ȟ=My<-2vU`9u_,t8.ã%gJ8*fsͧqڹDw}"Ѿ+M=ti-}萣>0`Meo|AkQɏ7}[;a鋷m馩*Xp|q-V:T,:^a}o+9ʍDm\ %N#dU=.eM@$ľq;Om#!^eʎ$_c_WRYcLOvmފ^;hR: g:_I~DS2(oDg;Yd ʐoeL%: ķ!^W:KҨD//salƨ ȧQD|O{j(;Dw/x=kmn‰ eK81 QJ_j3 $mtisDO2I%-MӌfPǽ3k:jṲƪEfG3ŪQiuN>v쌜}w*ȂЊ]IPI >ƫ!JOn}ꂂ2(e{\YH+ :u3C)73^<7qt{FZ˜(Q%_V*Z$X,:cVc0`J*f<\A'c&p=VM7%ba ;y=Eߖɥ:47.[zAHZ͈C-͖vj82 UtV ;yUiǩ0a0^z~>^4{GN{zMR7 _znF5`YnrXm&rLiMf(Kcb"8ȧC.Ns+[9ֲNMg[&] _Z߮jTdI̖Uo*"Xe^M4l "G(BXwFm[,S*y>LPIhrGq 9@wumw &6ȩƖi |+L (O&,SaMf+HWSӚbV(yH$]OCG_ Ccsۗ//8$_{-WѯI燅[^-TB_0R4ƀ_=mpR =2ZMȻ7f$$N=߆Ţ@ GZ8:F9Дxf`4V)>7'^2-9AaTBHy!3=_1~WH"(FNel4.:FQVI+EH;6/J6C"q"`žsC,Cz3܍]KPQso鳆z,۰:7G<)6W#ı4ҾfPWd#:WlF#mB ~nR1@h MͨӒ|[nJKs7Nׁ|&x_j$߉X3_K*Ƅ9(S3VUP)FXWdtOϛZY ]52G />augzClK>L8ߐeqv 0>.ڸQ2(xҥZ,RJ"^󒨗Ž,!$pro(.{ްjo"%yz!RdBĢtM.Ǝh{")l~)̢[^^7ZdaET]e, VF&am)^:Ti] lFŕDF^H |Lݗpk}כ MkhrEO^'*55PDF/#'@f!4uJA#Bc95&,WZ%֎PN?)&YCQg/eTAGj_T/$#35ӹ<* ReQb1 0m^*P Ӌ@_QϞxOY#S2ɥu,-wh22_T>7~0"AsOF;,īŦii(5ČFj@8[e䢝Q$ہ7܏SWd_~șcG9HM3DVQJ-JӬQݔ-@y{ H%?6mz芬Ee{=\,LNt * ceRIQIGl,^h.#4B\x?ܔLlxpi2ӑpR>Nb9}BKɟMbne/qM3p/~.FAo,1"PcJEP%CPxQJJ\Ƀ2B%kN\+A_Zjgۯ'вImqRiJE7 ]uY\xLi}1.jׯ*dn.WKT jAmX As˹G Ɵ{;XpDsf*/HjӜȁDz5aRbW0*J>!b=TawGjF B!7b _,wUu)Ua*H g_J4fdch`4Ʉ8+sCަd'YD/U@dbQ LtۤSpLJl8 }kHIQ- ˚m.I&6ITV^V{U󩀱q@Kb~:cp*c(*^ ̂_˶$Yc8'c )mwFbw,{uN,4v[7{-| ?Զ8[g4z˺lμ;Eڸhu84c삞B~:xxe/۫FpC0 3!$+!+!+NqTW)>/&#xJEYYTǗ .^ mmG27Jiwj+o)wy8X1V0d;UQ+x} u/:p~߀9_ Mߎ,l-TȺ"N[h߷[G'E.SO $8kh"-%fw-l-q(sb|KiXl<-d )Xː7@h-1|ݣ$`3h:$%|K2y-eh?}5NJ\^Y&5U.)1!zg{sNpX^ڛKw vƺ^uccA5{K d˴8kY\ ]ǠVlO׳"zۺqήmܛ`s9%&SdvymNo6U5Z^ho;k' FZ͠u\QĽa%_#[/ΈUg9̫濌tUNM=k Xt,`i*ѷ1}4c%]vB3kl&izgi:ie)V@ H[: GZA f*ڣVxQm&h[nǙ^EJCذy<kn)FeqWS/(q?9,cXKú?7я<e@;"KZgRѹUT-YWڤ`ڧH}JxLEz-jE+H"T,b9A~jq&T K_Ӫta-A@τ(āgt`R.+9"ȱqd 3و|r[Udql쑷 oG r`ӿ dZq(- 5]JcJoSսvk]Qm_C˾uoSfl:VQշE25:YtIT;\T!oj^ӞI8}O=\B?^o3zX ub%=)֓|;.:} ~qZ[&޹}->0nP/|pқux#`+g9hwox!Lw[琕1;U N%k־i+gX0[&~RʻWÜ{ƭ3 ϯ`HXz֥N׷lIwOv4UKU#>yːM/VSK3$  Qpf K!#Y{9[gY?,A{[ 3 (Ix@=EJQ2-fńf[PfYJB֊a7ۘF!bhNltҸ݉n7$ =] & o+|ZaoSɢ7>1X1RD}PV@Fo"v* 3S9 y`Gg bם n^t>/c!? k/zlѠΌLLC=Rryb"yd*^r5/-J)R^x'j QAKvݸ$nGUq7E]@)r'XQbCwf?얍1vgPcmH4kNXؑ?Wb<ΦϴgQ&3k&;,c;1M,bx,2Z@*촦̈́e_gE],o7E_,/QF {GTb"? í'ř߁C؄ 18LJWfːbxQ>PXȞ/q9.I6e bGqy"\/LLP**10Lnŵrrfn.!#Dv<&aJ5?-p_}z~,Rv%3HyJ߿ͽnF&CGI3g>6كփ 8]2o¯۰K&NfBi$]"{ɤb \-qY~_4=YnC5kOd,Pb6kqS30YEۺzԺoTJ4|J8cFKc֥hh8Q94ow!_ǍqcYhvж⺼P4)xJsT{N7Ҵy+q%Z/1'-DjLoPH9(X !`޽tC[׺Z,̫ ߡc~ҘaUx#m&L})}PbXƌ9iJ7pH [VmTYtm71YR%~yyWpre ;قT}6Fe~KhxCc'm}ݪkջ&C.SFwẴ$ ;w^[Fq}2a+4d4C 25ʎj|1awMm&@ba(|'59bj-`36:C$j.{7.HN fz1L&,T'TS1(cp!3Z2T;} o1y WtX4Q{u?=}7GY=;S&SdEXR0!ٝ}ɟ 8JtM[uZ>QѠAJ""퀝-I_CI^,q"jqhSzki`c>f߲Cv=e;-aD20]ĥST؇ťUG)bI!ʌ-ׅ0Q{95/V(10ZP XG\Q &xb8ї6% h~ !\+NK9`7vE)~[Er-3'.12W+[V!ئ3XCh0mt,I}hof4\ML1*<yriTK*y)tuoZnZ9CL7)O. WnĉIsx)/>8)H# (pW=Fp33ѢGXeωoW}'>MJ:޸WT;Noctx`?][ȆGY]|8jg@=C۔NdHzl9r +ųż#e,MK9uX IT̸[n y3-ۼd3"N4,c5fCI€gKpj<>y,ƕYyi=P:G&2%bcSLC9g Oh kwNwj9Ź3|BQtw7s\-}"nJGLOC9[߈RWt*u3! j-e佳wV{*TqUz}+n&F~l$R3)S߂y$2H>1Z"yS)}+vtFQ;tLdòxOܴ?!iGɊax@JE>k*Y=K< GVjR[KXPe@SX t3]Sg.Y<qolnAVhk~1+F*Gη= (%gZUt^  w{ɬY8 ip}syҳGLtwV.Ef:Z=V@.(`aߺ5ۢ+t !^H5*Lo-&MRc[mqEi*iɹ1;Vų߾h *&.z%:ThWݕ6ω^zAz?q"=*)TNr֌N9Nn0Kj}M4M+ezC0ک\ kFyK> ָG{;ك=VVxBTn?WtozBD }yUxpx z==N%{a?RiN(?\'67w1vA3SuG=Ze67_>ޭre򋓪Q-[qLȊ@<^t(57:`XQApVm;zR Ψ~79n@B`WտcD6֤9ZjJ!ʶ'{OL A<-;xuσQ;%cp֓"SltN)5uJjRD:kASD?Vצ+O?=Zq#x/|УUP@=Vy ^]s&)-]*l+S[KvqMb[[Q0RSE#axI@Y_>!7cuZLlG[wNd"hꔉy/f>/==,zw/(ӻo͋uFX"Àz+k^8d*-/|L 3 ,F2td Q#zG".HTYn0\G ,䪷cx&q`t"{PuaJ\P84(xD`OR䖕ß57An#JpXohlC滓#$@ /4 + Fz-,Zv,.'Fu= L^*eAyXE>~R'47h:m:+=Z,JUlnmVf*RUnFGߙk #$/ ]9R2y~3Ƹ]l_OMrApXYU*ۨ4ƏU53h g㢳*?%zfXIPBInMSN QGO;VɬXأŦ$B@tEd#rxx"-޷Bm(cA?n3en#aoم0_d@!ۉ?bN(u>;G̜ܼ{к P cAОNo)Du׻.e؀qI&p^u 4n;τY@khՅ@$W0oߌ>àKB\*ss <y-08Wv~ްL+TD"C'TW(nk6rκG7fydf!; ~UTnT W̆qZj:X'KJcIXĩF'$+#ʼ>?N2/|v1 Meҩ#R#&6ߏ#%oNN7]3tIfb6(RΥG#X tE'+?0L[*;q [ DMd;ڈngx.pO@u4uC3:)쪑O${(Fq]g_d;YHX(dLb`khrrX !QgfMS+$ 9O)rUW%>(Bm]̉tkj8)#ke nl.Bp$c~Һnw1*r<v`ɀ:`^f^F<ۆ !ƭ &"FX;aR~x.(3)FӠLie{i[*hl泸k0ڊVO^eslwa GA+6[ҰLNgP!(SopUD+whrGzNiW{}"a>{Ѻ]GBaR%Q.8ݝ<#.oȒnf Y&\)Ӕ~A fXFvNt BFKF{|Xs1磐9j*%t1Z/RrRv37k…y[=B*g2hOiꏃx#ku Fd[6Wz_t1D^Sm3jǧk1~LdFmeIX2hT30ce^/Vj8ճog$Ss{d]蔲bRQ%Id)*4ofs>ixysx5vǘ~QdDx- *X$q%SGaV=$\_Ѳ>xh$PZ~YNxd=U㙙JQUUιsz<#d2. R'c&fk""U]aaDꂀCiqd.,Cɼ\ޙBs꺳,g%(dDIR=U66y;򯩘! Ɩ¾5E%R`DF`Hrz;"5"n90!1/GB Agn$FA͊I|Ee0, mnKWk l!zr^w޽j ܖ_tF}adig7F}c&b-\џ(p X; @ͪFjc~cI=c^}U` 좄RlaDpBr\s슅0SSaaHж|o4icr 5wN_hgn4^Lmz[;*WYR顯ү5~g 'X yb~G>\!ɱ:}>gQso6L5;z07(64lvA8z^hp01C^]{ :#`pF]] ш|hN4èN/ozo)4P~J҂/>WN;Vnp4/0H]vw@ MlsPG Z&F g6LHBm`$`[+ol([ _ňZ4d,`UB7:Y/?^45{``=QO Z޸&(pҳ MNJket>G=YK֜%V7I&Һ=U%AC uJ"~b3"ec4Ќ{23i_4"2/섎#ҽoĚyۍwzdI5vR-ܖL|ኴ}`н@M9hR:KQ ?! ڶf%}k+unB\hS|&'5mk5kU,njQ ;zs7➎m4۱i?kuF<vY# g0 w@R?h7>O>[/Fhj)phwھr #&z TeԳlW=k 1t&٬jrV5}t9|lhףoA eCґgm=[(d =r(}^a(hK@RQqax $r|`5~{r8T8h5H"8,>&pzQ 먺QuJzp 7d"q|&"#%jfWZ4)w]wkIKpkn[/f ly{(_wwYr>~TcUxb3텭|=tsq6(~"ִ)瀈V1*j5۸6jz;}ǁz܌0n-HO`goO%. SGek.% cz0oCP =>:vhxppLP#FK̏^ }8l~wUȝq Rꣷ& jhLM}ofF7ߊ!&n<G'zvm {3% !1`|zx^f3}apJFGn .ǰ,v(ZhI1ˈm U'Gl賁\^}OIIXb+6U3;cAT‘ߵz3X&O V[ "F)jxў@!'t5{#aݛMb`v-4*(F`:n8T>[C` lz$4Ga7b)UI`b]tqC m4GdU1eBܺjNESUvNvM";]-4ck6:M2T `Hz._% c!kj3lE9+,N2nu7Ul +|U<u(Mk0jUHeޗ]glktC(_c+(6:\Vm#,o#&~tOY'߭njvz^9 éE^ uGU dǹ=59 YvWo5xdD#nM k uI8^baHH؈mV؇V3 J3 `tgn"Yi7l]WnlkI?whR<wǥvu}Dž_{%A2|M/CgΤ⦿ӘmU`kjE7#1_tzX^ I0"<3Òja7sI02hKôL8m!O-!P(g,w4 z~o3n~zܪJaaFM *x:-T::jSjN22k 5W 1beg,tBy{GAܑ:@^re=Բ; w;Co2ӎG?˳2C:u0deJ"O䓱wR3a2Xd3/,gg]O*U˖WSh"1BBi Z]Ú0']}a㌣d s]n$m6*|oXE:N/mHSJ M 8zpLJx8&N|ZQ d+`Xp /~/O )bt%>=3n0Š*rT4̲`YQ?z^ES۴eVufJЬ1l#QpݑazlvW06ߠf5!OCMj1v>B6e奶䜣=#zZ/®~W>GH[Gh½Ӂs7`x/p~ #OXI}.lO ^@w-ѡH=j7IYiA2QH&;3Kq"5\f;VlE+S(Sh"ݠōMдYbdڊ>lݹD 9~fZ3SLg,Kg|`xxn(ekxb +&VB?b:Mi5_wsyqG]\E}{ 3pKITU^):px n~ȴ9, R?ݟ+>>{>`ܐA >dY\u:v|k;ТGMRǵoylF3^WWvG?bmx }Ąָ7$¡7 V<~Yؖmc0zqk-%X7"~SUjJUj} O@UYKJ4zǁKз AInED+`Ge!H$xH#1D/K#a "BW1+`2D{;0_/ UraZ$u,{m/a4}o8 f%esxhsŘofǁNEͭC.+Q|?;!C^X7I+a`pɶ$&?뤴wșe0 Z[+o_"ZxfVwp[-uoS*&48Y @pyU%t;WՔbnRp7?]s١ƵzPӱ0ɝdRʱ+ ~pHJt#djj@2$|%' e`X5Gxs?/L: F2n ̥xJ4#9l79/| dE>~Pj}[xgiJ@Ӷ.mHqʟD1FP/ێM$ }];.X^-iDTzT2.͗濞$=? E}<)6L8ǂvs9&2@ k{X#̏8=4a4%F@;!,RsefL=Y@08ha9H " 7"2,̘Q.X t5Eu>D19ם_],yk!2iMFy2N0`6.Ma64h'o]#5LѹxY*2ew1{_(":/˓)h|*$`-m S,ZWH}-K-~íL3nwU MpMf廙xuH`-3ξ:K: z2+VZe0bU3f JQ]xB6%^2̠E Iݬ+*f/Q,-C*GrLh([vo$6Gvef2)`߹wwQ| <팉I9~e|=l22 i.؂=Gx#i57Grp])uv]5L߆);alۏ@VͼÝ yX_S6+A8صH6oo7̺N_z.U ɨ up;֭gA%8π&Wc.U!wo=o'sܪ%blAnpkhA8N UJdWcbnz[eL1i2$c1!޺RDAHIy'[nᾆ@:t5#6[L(R<ᒤ̢O0wUkS?/h!{ ($P]*p ؁uY+߽l^vR?jHX^-5w {BIK{!عmWM٩ 6?'`i5-'!lú:B[\VN qUqU8cdYlD`*c]s˱:5zRd]"#9 {8LB`TGZ kW#e 52"Ŵr.莜FQʘ5.7Y\cQ'/ ]tˁpu|1.\\q#2P~Vq WٰQQ~70)@E58 WՅ5"8FuQ,?C]ZD.1e#S8xc,ޅl#d.ܛu7nOKȋiYK}h +Ƚ[o& /^Ncks~1bV5WvvlQd`f˨tDw  e(hw`9S2]9Ap4Nv6?5؇0, :v7;[˶?y_{{| 5mss(Gۛ'؋& pګۛ;e_Ї5$Pxd[cV! #~nǓmpH|}igsYwxLtx]vN<@"xC98>:Z 6M ( A~݆GHJb&cD/MevolncCvj kBCԓ[d;Xs/V!m*s]zas y8Z%{ #vv+)qm : Yc(>cH53Z_R (.^tlK+v&E-I++ݟWv!ªu]3Dާ2 gqOs>@Srlÿlů5-g~޴8xo 7O|.l EZ]Ÿ)OWޱ먶qB;y q.;}2cN,diC`3* C˧ hrg^-5@o 5AÈҴѐvo0^K_$+xrw(+¼,.\#W8kh7*qU5E xK}_ukE" H]dQ+1Ku$@u%.=ɯiR-,n6t8mtP$V\r d>zI85.Am}e~6lrsZ y }ue#) #her2Mg{L w( ^h ( /_H v>TcK xk{tqH8\# jD v v QuMu:i~Ą,eqXDiu/<=1#>piq=2$̨ȮKӇ&wPȣ2[||q:UH^)A5 5ml2@N遺3(k($S-KrƩ$AL%\"*:aqe 5iB8QҴ0g0C7cC{;j'B:x5QۻP"EB9ea] ڬz>m|iue#V!hYb K/IZ-KITHBYѴ76L3܅蛴HfüI6e( dxi Hf2z1&͒aɲZ&lLH'o'ԥE4#%qYL0qfM>Hj"}o1tL;gCe,J{ >xc_O/i7 㮜')]u+{c| eJC lb8k?rs,0ӼlS^tz*α?RF0) dɺdU*p\t|68; 364&0ݠLůk kbZesdB(#!!lĀট!LiNλ)L($ ldrbK1̇QihHZCx,0P^JES:! 4KV lThJIDi% ءN^;r'-#{)aƾ&#]@q0 '3(N<,E YU5FOsë`oS7uJ7>r1# Y. Ϋ=F$]i*2m&rGd=>p,`9qHe]n] _A$SķˀfB,;'ɹQdjJSd  ǁMKƨc6g☵9Vl\nWw~ܷ"4K %@;r(R؏&Y:JIĨ}XaqUh:/Q{`y~-^}WYP|Ydbw \Q{.mξκ'@̫ݍD5EdA=HB=HJ `n2' 5Ix : Q̦oӚNGl,ي$r _N}lg>goű t?%rm[Q <Uw"&s!$6Yi9hZvJ>?0գ۝G߀a1nV;I?&t}Aۋ0rl??'ȑy\() ֙ o+" Thnbipqx4ײj0U^94ُU`*g_'ҊQn9}/LЃmb%`6UZ IQja#jÒj/nCC|J3lw$(WPVK#0p?MtS\{11:ޢѵDGc],ɑӲ<`T~# ݉>\yw+d'کf-.*MFD 7RD"Aex a*(*]üa jkR;(ǀP䥒9JgKĥ;HώQfD 'ec^~af+8ަea7Vf0lK/1 K!H6uY&h%F6) 1x#HޖYYWY}1_wv^ugE;_wv^ugyHKrr1c7J;I7voEy]A 436\pPbQ! <:1ӽdPU10%^h7KiX9Xd3.5f6OE~dKn2j%z8m^P 05.*38@ !=' ㅷAkptYxQ3=uMW/$.(;8@d޲px$]߾I.<Em7sNmC ~)Wh0VY ~\wĮs~@L9X]ugfygޑ߬kܞx?~~[y Nj #xe9f)N-'w2@tZjL65oSA P;Ōr2I=R*hC(]j(Hp}Ivp{a:nDFqOVHlpelz}dD)S~֫U[+Q%kY (('+IsooK&0ԦHՏXzaZyN1XՅUZĦq!cb[; ׬W?v7\W]Z}$!ONx ݒ,d0C ;*+C2Ol:vYmML]S-5M G&qwR$5)nִO$c]F tIۈ]q?V(yiFfrڞqp蔷+;}Je7\] %,N s)3z%]vNM 7>>_|W>>_|Gǝ@k]BABst1qDsO>מ6=`rCBAP=`G Rk)3{!ƫtNѝēO|OaIoXI ma+13`̻R:j1ww eG dvTDҜpBN$ ӏ:/S!U?DrиnB`1Z !$Hwv=ݏEʙ+GAjĝ ӈ݃v脄 ta' ;ը J)8btNV$k]vn1!"CDۥɍQw/MIkyl~-,=#s#N:(<7o ᒋX % YwV45Yy5Y;Nr}ruL\Γʮyjj~DBIJS4j#`B<(PJccGŚp`2 7uk"D^\HD&#Cf5jÎ?a_Dt I|yXyU)] ӯA}aϯɐ0Vjs:drGh#"a!JgJP$^Pz gO%9P]tЮfΐGn v6΋_^ ^U; *&X/?i3<u{-WAf-Z`쀢! 2M,\NҠfPT7?:7Vˆ%w&i7sbo?/@U/ roX Rͳ/s`/*[m>%ѐQ@ %HyDyD-TĊ1u]6i_ԌIM&;0铄A6xaWT?;mOd,r݈y|U,W3,0WmS$8v`Ʈ/`%_&I:X΂ֈN> Z1.!s,aTppͩ@Gw#efgI()VOh !&#ݨPjZkK#'1!Mj ;q@otœKH.SV92S  hk}^#%R=00n@W491)$^2;b 32)MzKVzZuyD_Ҕժо|@{jf`Hz[kM.0FB4Jxθ A.q!M2a֘$/ZÏE:Wxkl VOͽ۩%G34均%&dž\7PkkiE^X.Y7QW8$;2Vxk7y2Sb()]暹Wrq@J,fys~T~ QxMwNZY2)@p) <=ɮ=?8 7 %WV0{эvhB-6pw'IiVunMēfP7eG,wBWV,בmP 6# iW!~PII#C6YOF|Z |Wr:)c~ vWܤs [R Q.ޛ -{tve}m>=}Ŗba4ڐyt7wۏ<)D H"$ '^=zԫQ^z4 SFzyy'U/J K+'2@ EyiE Űl,Sn2@.RL\H |ah%}|\iA-HdEm̙aN+5!r&-PrR6CKjPŬi ]wpA\ Eğ ,~.sN1)gPL&f~[gI ǛSSSwV2wW0G v24'z, iRԲdRT#IildiFK6򓫑\Zh3+瓐ǺTmVUɳt/t]E&emA Xr?&\q /N/WⲩuV1Tey4iXפ̤|. V%5iStxya:i]^X5+ϳ>fݵ\pZ QEe?"@?O  I|(uviE.+W1&^& PAxG 5֘?ϓbI03UЯvkɛ^k[B*BM9 1koe^Y0G"]| V"ŎO?Xg _xϽm38MNy^'nJ c2Tjpe_g8%=dV28@N~`Jnp(Dt҂WİQ+V=7^bܿ$iN9Ӌc48pt_`[~y5-.֘p)%q 8P0x<0.4$ bHr<;N,6 ^lQ>﷥:Y_"~'/VJ"F& \ -Lj_:BR &Z'h^QAMl+GZǺU0iguS_Hïa9leVߜi{IcXgQ{ee4tB6u806(kHOt~.U!&*IUh=d_5PT?wa5\j./ŃטLì^e=D~RNNP^zuVI!"btl (`("̅ ~]D;!jj((9a`t6cjSϩ)Wbw|ƴj`-" |)RXnGzACdc qo=^&GȂZkxgD+Cdrux/XХ:IX-o 9C.Ϟ h]o0JUЇ!o )ڊTYwqG;^].F)}DLSK2N &ue 9n wꖳ00Rz26?To:q$d۸^E.%ZAv*X$W:|N"uk5(`fzqYPdsVMhZ jMGꪊa_&Rp)Quxf)w|լ-ӇP ]`õ#R:6k+s\ MMFCI#i=f庆:;|ݖfc/5{k^c6&K6/xdK6l<Ț 4RW~Cojޅ0X5x7'۪)&?j^3j qK/D=UYw]YĨ{O[K콰)JW %G"VLD1f>25 h !M¡&Gͨ VUygǣ!oUuվ% ŖD쯈d]gQdj[!P›OggR]Z?yj@Jm{Hco}9΋UL0ֲV.wQMrf"M%D}U"haG'N啶s^"R=zSXSa0Y##A$8vt"~;p^Cu {[9箛6'gU4AC՜٣K(::vWyd2rAfhd:-dwЁ}X{׼ .D.',<x?E#GȞ$k˶9KHkݤ.mضc =.cwKL9[؂/ិu{hf,[ZY༣BjDFf܊Z 숣x/?f_XSZ݊C}GbS?|5R`v.)15 $s]&ޚYLn^OYhFjZЊ.s4˚Rx%)8D x:3 ◅Yo֒ԫ%;!e/L\Skr*f݃FZ|tq9 ~%( G^y )~R43Ug|/YTq4O+ 2vDc,Q"~ZD alQ&-yZSVeKU&u@;(~Y…:T0ם~k+ڛlIJr_z0Ccfz+`]<< \FeF -@WHy-骞oN"PT+r;g@=a-0wG>)!m1xΣ 37gFdPC"רE-^IS_hoo{yT4PQEeD2ڝa!%9xxZ#(| D +XG0Y\X*v.ְ}u[][YbRu뜠`عGHzcUJЍ fG=Vyx[dKoy^kmeC?6W_pUCE(3eWK +QIxeVU~m\^_V.$V&HlJ+Xӽqb`kbkXbB/ݑw9[h$Ga\ؓ`Ph{W ɿ ݱYgnhg[|pV%oYlq3B uV@"`sjbDE.:J+םϻ!9Eǰ!Pc3RJuq]!ap ^P[Kj ְ͵xsoօ(h @jUUVũ QH8ZswA07VJMy][cEn^jZo۷o~nn/T1ojSłxK[^g%~Y uYl̿yf}y|_tҍ›U}l6'< y[ h%1)DwA^ڛy(Non`Ͼf*/f<z #define CUDACC_VERSION (__CUDACC_VER_MAJOR__ * 10 + __CUDACC_VER_MINOR__) #if (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 118) __inline__ __device__ void __nv_ptx_acqblk(void){ asm volatile("griddepcontrol.wait;"); } __inline__ __device__ void __nv_ptx_preexit(void){ asm volatile("griddepcontrol.launch_dependents;"); } #endif __inline__ __device__ void acqblk() { #if defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 118) __nv_ptx_acqblk(); #endif } __inline__ __device__ void preexit() { #if defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 118) __nv_ptx_preexit(); #endif } static __inline__ __device__ void get_bn_group_info(int32_t deviceId, int bn_group, int bn_group_per_node, int &node, int &nodes, int &group_rank_offset) { int rank = deviceId; int group_id = rank / bn_group; group_rank_offset = group_id * bn_group; int rank_in_group = rank - group_rank_offset; node = rank_in_group / bn_group_per_node; nodes = bn_group / bn_group_per_node; } static __inline__ __device__ void ll_hierarchical_allreduce(float *src, float *dst[], int elts, int localpe, int nlocalpes, int node, int nodes, int group_rank_offset) { const int warp_id = threadIdx.x / THREADS_PER_WARP; const int lane_id = threadIdx.x % THREADS_PER_WARP; uint32_t flag = 1; // +1 to avoid 0 value (which is the buffer initialized value) if (blockIdx.y == 0 && blockIdx.x == 0) { float *pe_buffer = src + localpe * elts; if (warp_id < nlocalpes - 1) { int peer_local_idx = (localpe + 1 + warp_id) % nlocalpes; void *peer_addr = (void *)(dst[peer_local_idx] + localpe * elts); uint32_t data1, data2; for (size_t i = lane_id; i < elts / 4; i += THREADS_PER_WARP) { data1 = __float_as_uint(pe_buffer[i * 4]); data2 = __float_as_uint(pe_buffer[i * 4 + 2]); float *dst = reinterpret_cast(peer_addr) + i * 4; asm volatile("st.volatile.global.v4.u32 [%0], {%1,%2,%3,%4};" ::"l"(dst), "r"(data1), "r"(flag), "r"(data2), "r"(flag)); } // Wait on flags to confirm reception of peer data float *peer_buffer = src + peer_local_idx * elts; for (size_t i = lane_id; i < elts / 4; i += THREADS_PER_WARP) { uint32_t data1, flag1, data2, flag2; // uint32_t iter = 0; do { // ++iter; float *ptr = peer_buffer + i * 4; asm volatile("ld.volatile.global.v4.u32 {%0,%1,%2,%3}, [%4];" : "=r"(data1), "=r"(flag1), "=r"(data2), "=r"(flag2) : "l"(ptr)); } while ((flag1 != flag) || (flag2 != flag)); } } __syncthreads(); for (int i = threadIdx.x; i < elts / 2; i += blockDim.x) { float result = 0.f; for (int pe = 0; pe < nlocalpes; pe++) { result += src[pe * elts + i * 2]; } src[i] = result; } if (nodes == 1) { __syncthreads(); return; } } } //////////////////////////////////////////////////////////////////////////////////////////////////// template static __inline__ __device__ T relu(T in, T relu_upper_clip, T relu_lower_clip, T_MASK *relu_mask = nullptr, int32_t idx = 0) { // Bug 4718275: we should consider the type of the virtual tensors before relu in = cuGet(in); if (cuGreaterEqual(in, relu_upper_clip)) { return relu_upper_clip; } if (cuLessEqual(in, relu_lower_clip)) { return relu_lower_clip; } if (relu_mask != nullptr) { *relu_mask |= (1 << idx); } return in; } template __inline__ __device__ void relu_with_bitmask_dumping(float (&x_math)[ELEMENTS_PER_LDG], float relu_upper_clip, float relu_lower_clip, void *relu_bitmask, int const bit_address); template <> __inline__ __device__ void relu_with_bitmask_dumping<16>(float (&x_math)[16], float relu_upper_clip, float relu_lower_clip, void *relu_bitmask, int const bit_address) { uint16_t relu_mask = 0; #pragma unroll for (int i = 0; i < 16; ++i) { // Apply relu and mark element as active for backpropagation x_math[i] = relu(x_math[i], relu_upper_clip, relu_lower_clip, &relu_mask, i); } static_cast(relu_bitmask)[bit_address / 16] = relu_mask; } template <> __inline__ __device__ void relu_with_bitmask_dumping<8>(float (&x_math)[8], float relu_upper_clip, float relu_lower_clip, void *relu_bitmask, int const bit_address) { uint8_t relu_mask = 0; #pragma unroll for (int i = 0; i < 8; ++i) { // Apply relu and mark element as active for backpropagation x_math[i] = relu(x_math[i], relu_upper_clip, relu_lower_clip, &relu_mask, i); } static_cast(relu_bitmask)[bit_address / 8] = relu_mask; } template <> __inline__ __device__ void relu_with_bitmask_dumping<4>(float (&x_math)[4], float relu_upper_clip, float relu_lower_clip, void *relu_bitmask, int const bit_address) { uint8_t relu_mask = 0; #pragma unroll for (int i = 0; i < 4; ++i) { // Apply relu and mark element as active for backpropagation x_math[i] = relu(x_math[i], relu_upper_clip, relu_lower_clip, &relu_mask, i); } uint8_t out_mask = relu_mask; out_mask |= (__shfl_down_sync(__activemask(), out_mask, 1) << 4); if(threadIdx.x % 2 == 0) { static_cast(relu_bitmask)[bit_address / 8] = out_mask; } } template static __inline__ __device__ void relu_activation(float (&x)[N], float relu_upper_clip, float relu_lower_clip) { #pragma unroll for (int i = 0; i < N; ++i) { x[i] = relu(x[i], relu_upper_clip, relu_lower_clip); } } template static __inline__ __device__ void swish_activation(T_ELEM (&x)[N], T_ELEM beta) { #pragma unroll for (int i = 0; i < N; ++i) { x[i] = swish(x[i],beta); } } extern "C" __global__ __launch_bounds__(THREADS_PER_CTA, DESIRED_OCCUPANCY) void nhwc_batch_norm_fwd(NhwcBatchNormFwdParams params) { // The number of pixels loaded in a single LDG. const int THREADS_PER_PIXEL = C_ELEMENTS_PER_CTA / ELEMENTS_PER_LDG; const int PIXELS_PER_LDG = THREADS_PER_CTA / THREADS_PER_PIXEL; // The number of pixels computed per CTA stored in registers. const int PIXELS_PER_CTA_IN_REGISTERS = PIXELS_PER_THREAD_IN_REGISTERS * PIXELS_PER_LDG; // The number of pixels computed per CTA stored in SMEM. const int PIXELS_PER_CTA_IN_SMEM = PIXELS_PER_THREAD_IN_SMEM * PIXELS_PER_LDG; // Shared memory to do CTA-wide parallel sums. __shared__ float smem[THREADS_PER_PIXEL * (THREADS_PER_CTA / THREADS_PER_WARP) * ELEMENTS_PER_LDG]; // Compute the NHW coordinate of the thread in the CTA. const int thread_in_cta_nhw = threadIdx.x / THREADS_PER_PIXEL; // The adapter for the storage. typedef PackedStorage PackedStorage_; // The data type for packed storage in SMEM. typedef typename PackedStorage_::Type PackedStorageType; // The number of elements in the packed storage. const int PACKED_ELEMENTS_PER_LDG = PackedStorage_::PACKED_ELEMENTS_PER_LDG; // Registers to keep the data live for the persistent approach. PackedStorageType x_storage[PIXELS_PER_THREAD_IN_REGISTERS][PACKED_ELEMENTS_PER_LDG]; float scale_fp8 = 1.0f; float input_descale = 1.0f; float add_descale = 1.0f; float amax_in_thread = 0.0f; const float relu_upper_clip = params.relu_upper_clip; const float relu_lower_clip = params.relu_lower_clip; acqblk(); if (isFP8) { scale_fp8 = ::ldg(params.output_scale); if (HAS_ADD) { add_descale = ::ldg(params.add_descale); } input_descale = ::ldg(params.input_descale); } // Shared memory buffer to store the extra pixels. extern __shared__ unsigned char smem_storage_packed_[]; PackedStorageType *smem_storage_packed = reinterpret_cast(smem_storage_packed_); for (int c_blk_index = blockIdx.y; c_blk_index < params.c_blks; c_blk_index += gridDim.y) { // The position in the NHW dimension where the CTA starts. int cta_nhw_regs = blockIdx.x * PIXELS_PER_CTA_IN_REGISTERS; // The position in the NHW dimension where the CTA starts for the portion in SMEM. int cta_nhw_smem = blockIdx.x * PIXELS_PER_CTA_IN_SMEM; // The position in the C dimension where the CTA starts. const int cta_c = c_blk_index * C_ELEMENTS_PER_CTA; // Compute the C coordinate of the thread in the CTA. const int thread_in_cta_c = threadIdx.x % THREADS_PER_PIXEL; // Compute the C coordinate of the thread. int thread_c = cta_c + thread_in_cta_c * ELEMENTS_PER_LDG; // Is the thread working on a valid C dimension? const int is_valid_c = thread_c < params.c; // Clamp thread_c so that we load from valid locations even if we don't use the value if (!is_valid_c) thread_c = params.c - ELEMENTS_PER_LDG; // Single pass numerically stable algorithm, see: // https://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm // // n = 0, mean = 0.0, M2 = 0.0 // // for x in data: // n += 1 // delta = x - mean // mean += delta/n // delta2 = x - mean // M2 += delta*delta2 // // if n < 2: // return float('nan') // else: // return M2 / (n - 1) // Register to store the number of elements read so far. float count = 0.f, mean[ELEMENTS_PER_LDG], m2[ELEMENTS_PER_LDG]; #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { mean[i] = 0.f; m2[i] = 0.f; } // The number of elements loaded by this CTA. int cta_count = 0; // The base pointer to load from. const Storage *gmem_src = &((Storage *)params.gmem_src)[thread_c]; // outer loops int OUTER_LOOPS = OUTER_LOOPS_ == 1 ? 1 : params.outer_loops; // Load the batch of elements. Compute the mean/var across those elements. const int pixels_per_iteration = PIXELS_PER_CTA_IN_REGISTERS * gridDim.x; if (OUTER_LOOPS_ != 1) { // We cannot load everything to store persistently, so let's makes sure registers and // smem are fully utilized, offset is evenly divisible by 32 int offset = (pixels_per_iteration * OUTER_LOOPS + PIXELS_PER_CTA_IN_SMEM * gridDim.x - params.nhw) & ~31; cta_nhw_regs -= offset; cta_nhw_smem -= offset; } // The elements to load and store in SMEM. int smem_nhw = OUTER_LOOPS * pixels_per_iteration + cta_nhw_smem; // Load elements from SMEM, update the CTA count. int pixels_in_smem = min(smem_nhw + PIXELS_PER_CTA_IN_SMEM, params.nhw) - max(smem_nhw, 0); if (pixels_in_smem > 0) { cta_count += pixels_in_smem; float is_valid[PIXELS_PER_THREAD_IN_REGISTERS]; int rf_loop = PIXELS_PER_THREAD_IN_SMEM / PIXELS_PER_THREAD_IN_REGISTERS; int rf_res = PIXELS_PER_THREAD_IN_SMEM - PIXELS_PER_THREAD_IN_REGISTERS * rf_loop; if(rf_loop > 0) { for(int rf_i = 0; rf_i < rf_loop; ++rf_i) { // Read the elements from memory. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = smem_nhw + thread_in_cta_nhw + (i + rf_i*PIXELS_PER_THREAD_IN_REGISTERS) * PIXELS_PER_LDG; zero(x_storage[i]); is_valid[i] = 0.f; if (((unsigned int)idx < (unsigned int)params.nhw) && is_valid_c) { ldg_stream(x_storage[i], &gmem_src[idx*params.c]); is_valid[i] = 1.f; } // The offset to store in SMEM. const int offset = (i + rf_i*PIXELS_PER_THREAD_IN_REGISTERS) * THREADS_PER_CTA * PACKED_ELEMENTS_PER_LDG; // Store in SMEM. write_to_smem(&smem_storage_packed[offset], threadIdx.x, x_storage[i]); } // Do the math #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { float x_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage[i]); // Update the count. count += is_valid[i]; // Invert the count. float inv_count = is_valid[i] ? 1.f / count : 0.f; if (isFP8) { for (int i = 0; i < ELEMENTS_PER_LDG; i++) { x_math[i] = x_math[i] * input_descale; } } // Update the mean and m2 using deltas. #pragma unroll for (int j = 0; j < ELEMENTS_PER_LDG; ++j) { float delta0 = x_math[j] - mean[j]; mean[j] += delta0 * inv_count; float delta1 = x_math[j] - mean[j]; m2[j] += delta0 * delta1 * is_valid[i]; } } } } // Read the elements from memory. #pragma unroll for(int i = 0; i < rf_res; ++i) { const int idx = smem_nhw + thread_in_cta_nhw + (i + rf_loop*PIXELS_PER_THREAD_IN_REGISTERS)*PIXELS_PER_LDG; zero(x_storage[i]); is_valid[i] = 0.f; if (((unsigned int)idx < (unsigned int)params.nhw) && is_valid_c) { ldg_stream(x_storage[i], &gmem_src[idx*params.c]); is_valid[i] = 1.f; } // The offset to store in SMEM. const int offset = (i + rf_loop*PIXELS_PER_THREAD_IN_REGISTERS)*THREADS_PER_CTA*PACKED_ELEMENTS_PER_LDG; // Store in SMEM. write_to_smem(&smem_storage_packed[offset], threadIdx.x, x_storage[i]); } // Do the math #pragma unroll for(int i = 0; i < rf_res; ++i) { float x_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage[i]); // Update the count. count += is_valid[i]; // Invert the count. float inv_count = is_valid[i] ? 1.f / count : 0.f; if (isFP8) { for (int i = 0; i < ELEMENTS_PER_LDG; i++) { x_math[i] = x_math[i] * input_descale; } } // Update the mean and m2 using deltas. #pragma unroll for (int j = 0; j < ELEMENTS_PER_LDG; ++j) { float delta0 = x_math[j] - mean[j]; mean[j] += delta0 * inv_count; float delta1 = x_math[j] - mean[j]; m2[j] += delta0 * delta1 * is_valid[i]; } } } #pragma unroll 1 for (int loop_i = 0; loop_i < OUTER_LOOPS; ++loop_i) { // The nhw position. int nhw_regs = cta_nhw_regs + loop_i * pixels_per_iteration; // Update the number of elements loaded by this CTA. TODO: Skip if <= 0!!! cta_count += max(min(nhw_regs + PIXELS_PER_CTA_IN_REGISTERS, params.nhw) - max(nhw_regs, 0), 0); // Load the data and compute the local mean/sum and the variance. // Read the elements from memory. float is_valid[PIXELS_PER_THREAD_IN_REGISTERS]; #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = nhw_regs + thread_in_cta_nhw + i * PIXELS_PER_LDG; // zero_array(x_storage[i]); zero(x_storage[i]); is_valid[i] = 0.f; if (((unsigned int)idx < (unsigned int)params.nhw) && is_valid_c) { if (loop_i == OUTER_LOOPS - 1) { ldg_stream(x_storage[i], &gmem_src[idx * params.c]); } else { ldg(x_storage[i], &gmem_src[idx * params.c]); } is_valid[i] = 1.f; } } // Do the math. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { // kgoyal const int idx = nhw_regs + thread_in_cta_nhw + i*PIXELS_PER_LDG; // kgoyal if (((unsigned int)idx < (unsigned int)params.nhw) && is_valid_c) { // Convert to float. float x_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage[i]); if (isFP8) { for (int i = 0; i < ELEMENTS_PER_LDG; i++) { x_math[i] = x_math[i] * input_descale; } } // Update the count. count += is_valid[i]; // Invert the count. float inv_count = is_valid[i] ? 1.f / count : 0.f; // Update the mean and m2 using deltas. #pragma unroll for (int j = 0; j < ELEMENTS_PER_LDG; ++j) { float delta0 = x_math[j] - mean[j]; mean[j] += delta0 * inv_count; float delta1 = x_math[j] - mean[j]; m2[j] += delta0 * delta1 * is_valid[i]; } // kgoyal } } } // end for // We scale the mean by the number of elements. It brings more stability. float m1[ELEMENTS_PER_LDG]; #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { m1[i] = mean[i] * count; } // Run the parallel sum accross the CTA to get the local sum. ParallelSums::dispatch( smem, m1, thread_in_cta_nhw); __syncthreads(); // The values in shared memory correspond to the CTA-wide sums. read_from_smem(m1, smem, thread_in_cta_c); __syncthreads(); // Adjust the variance. float inv_cta_count = 1.f / static_cast(cta_count); #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { float mean_diff = m1[i] * inv_cta_count - mean[i]; m2[i] = m2[i] + mean_diff * mean_diff * count; } // Run the parallel sum accross the CTA to get the local adjusted variance. ParallelSums::dispatch( smem, m2, thread_in_cta_nhw); // The workspace in global memory is distributed across the different CTA. int gmem_sums_offset = c_blk_index * gridDim.x * C_ELEMENTS_PER_CTA * 2; // Write the data for the CTA to global memory. float *gmem_sums = ¶ms.gmem_sums[gmem_sums_offset]; if (threadIdx.x < THREADS_PER_PIXEL) { const int idx = blockIdx.x * THREADS_PER_PIXEL + threadIdx.x; write_to_gmem(&gmem_sums[0], idx, m1); write_to_gmem(&gmem_sums[C_ELEMENTS_PER_CTA * gridDim.x], idx, m2); } // The memory location to store the number of pixels per CTA. int *gmem_counts = ¶ms.gmem_counts[c_blk_index * gridDim.x]; if (threadIdx.x == 0) { gmem_counts[blockIdx.x] = cta_count; } // Read the bias and scale. float bias[ELEMENTS_PER_LDG], scale[ELEMENTS_PER_LDG]; if (is_valid_c) { read_from_gmem(bias, ¶ms.gmem_bias[cta_c], thread_in_cta_c); read_from_gmem(scale, ¶ms.gmem_scale[cta_c], thread_in_cta_c); } // The counters to count how many CTAs have retired at this point. // A given cta uses the same counter every other time through the outer loop. int *gmem_retired_ctas = ¶ms.gmem_retired_ctas[c_blk_index % (2 * gridDim.y)]; inter_block_sync(gmem_retired_ctas, gridDim.x, blockIdx.x == 0); // Reset the mean to compute the global mean. #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { m1[i] = 0.f; } // Build the global mean. #pragma unroll 1 for (int idx = threadIdx.x; idx < THREADS_PER_PIXEL * gridDim.x; idx += THREADS_PER_CTA) { float tmp[ELEMENTS_PER_LDG]; read_from_gmem(tmp, gmem_sums, idx); add(m1, tmp); } ParallelSums::dispatch( smem, m1, thread_in_cta_nhw); __syncthreads(); // The values in shared memory correspond to the CTA-wide sums. read_from_smem(m1, smem, thread_in_cta_c); __syncthreads(); // Normalize the mean. const float m1_norm_factor = 1.f / params.nhw; #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { m1[i] = m1[i] * m1_norm_factor; } // Reset the variance. #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { m2[i] = 0.f; } // for add+relu fusion const Storage *gmem_src1 = nullptr; if (HAS_ADD) { gmem_src1 = &((Storage *)params.gmem_src1)[thread_c]; } // Build the global variance. #pragma unroll 1 for (int idx = threadIdx.x; idx < THREADS_PER_PIXEL * gridDim.x; idx += THREADS_PER_CTA) { // Read the means computed by different CTAs (again). Reuse tmp if we have 1 iteration. float tmp_mean[ELEMENTS_PER_LDG], tmp_var[ELEMENTS_PER_LDG]; read_from_gmem(tmp_mean, &gmem_sums[0], idx); read_from_gmem(tmp_var, &gmem_sums[C_ELEMENTS_PER_CTA * gridDim.x], idx); // Read the number of pixels visited by a given CTA. cta_count = __ldg(&gmem_counts[idx / THREADS_PER_PIXEL]); // Compute the diff to update the variance. float mean_diff[ELEMENTS_PER_LDG], inv_cta_count = 1.f / static_cast(cta_count); #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { mean_diff[i] = m1[i] - tmp_mean[i] * inv_cta_count; } // Update the variance. #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { m2[i] += tmp_var[i] + mean_diff[i] * mean_diff[i] * static_cast(cta_count); } } ParallelSums::dispatch( smem, m2, thread_in_cta_nhw); __syncthreads(); read_from_smem(m2, smem, thread_in_cta_c); float local_var[ELEMENTS_PER_LDG]; if (SYNC_ITERS) { float local_var_ss[ELEMENTS_PER_LDG]; bool is_valid_for_saving = is_valid_c && blockIdx.x == 0 && thread_in_cta_nhw == 0; // compute local sufficient statistic for variance and scale mean for stability reason #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { local_var_ss[i] = m2[i] * (1.f / params.nhw) + m1[i] * m1[i]; m1[i] = m1[i] * params.nhw; } int node, nodes, group_rank_offset; int dev_id_in_group = params.device % params.bn_group_per_node; get_bn_group_info(params.device, params.bn_group, params.bn_group_per_node, node, nodes,group_rank_offset); // uint32_t *flag_addr = reinterpret_cast(params.peerStatBuffers[dev_id_in_group]) + // (params.bn_group_per_node + nodes + 2) * 2 * 2 * 2 * params.c; float *nvshmem_buff = params.peerStatBuffers[dev_id_in_group]; // + //(*flag_addr % 2) * (params.bn_group_per_node + nodes + 2) * 2 * 2 * params.c; float *c_block_nvshmem_buffer = nvshmem_buff + dev_id_in_group * 2 * 2 * params.c + c_blk_index * 2 * C_ELEMENTS_PER_CTA; int c_elements_in_this_cta = C_ELEMENTS_PER_CTA; if (c_blk_index == params.c_blks - 1) { // If last C-block, calculate remainder c_elements_in_this_cta = params.c - c_blk_index * C_ELEMENTS_PER_CTA; } // store local_mean and (local_variance + local_mean^2) if (is_valid_for_saving) { #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG / 2; ++i) { float tmp_mean[4] = {m1[2 * i], 0.f, m1[2 * i + 1], 0.f}; write_to_gmem(c_block_nvshmem_buffer + thread_in_cta_c * ELEMENTS_PER_LDG * 2, i, tmp_mean); } #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG / 2; ++i) { float tmp_var[4] = {local_var_ss[2 * i], 0.f, local_var_ss[2 * i + 1], 0.f}; write_to_gmem( c_block_nvshmem_buffer + params.c * 2 + thread_in_cta_c * ELEMENTS_PER_LDG * 2, i, tmp_var); } } cooperative_groups::grid_group g = cooperative_groups::this_grid(); // Sync all the CTAs // Technically, we could sync only the warps with blockIdx.x == 0 and warp_id == 0 g.sync(); ll_hierarchical_allreduce(nvshmem_buff, params.peerStatBuffers, 2 * 2 * params.c, dev_id_in_group, params.bn_group_per_node, node, nodes, group_rank_offset); g.sync(); //Bug 4245763: fixed racing condition by adding threadfence after g.sync() to resolve mismatches. __threadfence(); // int offset = // (params.bn_group_per_node + nodes + 1) * 2 * 2 * params.c + c_blk_index * 2 * // C_ELEMENTS_PER_CTA; int offset = c_blk_index * C_ELEMENTS_PER_CTA; if (ELEMENTS_PER_LDG * thread_in_cta_c < params.c){ read_from_gmem(m1, nvshmem_buff + offset, thread_in_cta_c); read_from_gmem(local_var_ss, nvshmem_buff + offset + params.c, thread_in_cta_c); } // Normalize values and compute global variance #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { m1[i] = m1[i] * params.svar_inv_count; local_var[i] = local_var_ss[i] * (1.f / params.bn_group) - m1[i] * m1[i]; } } else { #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { local_var[i] = m2[i] * params.svar_inv_count; } } // Finalize the stddev. // becasue saved var and running var may have different denominator, we don't do it here // scale_(m2, inv_count); // store the saved mean/var float svarinv[ELEMENTS_PER_LDG]; bool is_valid_for_saving = is_valid_c && blockIdx.x == 0 && thread_in_cta_nhw == 0; #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { svarinv[i] = rsqrtf(local_var[i] + params.var_eps); } if (is_valid_for_saving) { write_to_gmem(params.gmem_saved_mean, thread_c / ELEMENTS_PER_LDG, m1); write_to_gmem(params.gmem_saved_var, thread_c / ELEMENTS_PER_LDG, svarinv); } // store the running mean/var float rmean[ELEMENTS_PER_LDG], rvar[ELEMENTS_PER_LDG]; // zero_array(rmean); // zero_array(rvar); zero(rmean); zero(rvar); if (params.exp_avg_factor != 1.f && is_valid_for_saving && params.gmem_input_running_mean && params.gmem_input_running_var) { read_from_gmem(rmean, params.gmem_input_running_mean, thread_c / ELEMENTS_PER_LDG); read_from_gmem(rvar, params.gmem_input_running_var, thread_c / ELEMENTS_PER_LDG); } #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { rmean[i] = (1.f - params.exp_avg_factor) * rmean[i] + params.exp_avg_factor * m1[i]; rvar[i] = (1.f - params.exp_avg_factor) * rvar[i] + params.exp_avg_factor * local_var[i] * (params.rvar_inv_count / params.svar_inv_count); } if (is_valid_for_saving && params.gmem_output_running_mean && params.gmem_output_running_var) { write_to_gmem(params.gmem_output_running_mean, thread_c / ELEMENTS_PER_LDG, rmean); write_to_gmem(params.gmem_output_running_var, thread_c / ELEMENTS_PER_LDG, rvar); } // Update the scale with the stddev and eps. multiply(scale, svarinv); // The base pointer to write to. Storage *const gmem_dst = &(((Storage *)params.gmem_dst)[thread_c]); // Store the elements in registers. #pragma unroll 1 for (int loop_i = OUTER_LOOPS - 1; loop_i >= 0; --loop_i) { // The value for nhw. int out_nhw = cta_nhw_regs + loop_i * pixels_per_iteration; // Normalize the elements and write to memory. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = out_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; const bool is_valid_nhw = static_cast(idx) < static_cast(params.nhw); const bool is_valid = is_valid_nhw && is_valid_c; // Convert to float. float x_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage[i]); if (isFP8) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { x_math[idx] = x_math[idx] * input_descale; } } // Normalize and apply activation function normalize(x_math, bias, scale, m1); if (HAS_ADD) { PackedStorageType x1_storage_local[PACKED_ELEMENTS_PER_LDG]; float x1_math[ELEMENTS_PER_LDG]; if (is_valid) { ldg_stream(x1_storage_local, &gmem_src1[(is_valid ? idx : 0) * params.c]); to_float(x1_math, x1_storage_local); if (isFP8) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { x1_math[idx] = x1_math[idx] * add_descale; } } // Bug 4718275: we should consider the type of the virtual tensors before relu if (HAS_RELU) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { x_math[idx] = cuGet(x_math[idx]); } } add(x_math, x1_math); } } if (HAS_RELU) { if (is_valid) { if(DUMP_BITMASK){ relu_with_bitmask_dumping(x_math, relu_upper_clip, relu_lower_clip, params.gmem_relu_bitmask, idx * params.c + thread_c); } else { relu_activation(x_math, relu_upper_clip, relu_lower_clip); } } } else if (HAS_SWISH) { if (is_valid) { swish_activation(x_math,params.swish_beta); } } // Write back. if (is_valid) { if (isFP8) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { amax_in_thread = fmaxf(amax_in_thread, fabsf(x_math[idx])); x_math[idx] = x_math[idx] * scale_fp8; } } stg_stream(&gmem_dst[idx * params.c], x_math); } } // The next value of nhw. out_nhw -= pixels_per_iteration; // Read the next elements from memory. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = out_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; if (((unsigned int)idx < (unsigned int)params.nhw) && is_valid_c) { ldg_stream(x_storage[i], &gmem_src[idx * params.c]); } } } // Normalize the elements from SMEM and write them out. if (pixels_in_smem > 0) { #pragma unroll 2 for (int i = 0; i < PIXELS_PER_THREAD_IN_SMEM; ++i) { const int idx = smem_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; const bool is_valid_nhw = static_cast(idx) < static_cast(params.nhw); const bool is_valid = is_valid_nhw && is_valid_c; // Read from SMEM. const int offset = i * THREADS_PER_CTA * PACKED_ELEMENTS_PER_LDG; PackedStorageType x_storage_local[PACKED_ELEMENTS_PER_LDG]; read_from_smem(x_storage_local, &smem_storage_packed[offset], threadIdx.x); float x_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage_local); if (isFP8) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { x_math[idx] = x_math[idx] * input_descale; } } // Normalize and apply activation function normalize(x_math, bias, scale, m1); if (HAS_ADD) { PackedStorageType x1_storage_local[PACKED_ELEMENTS_PER_LDG]; float x1_math[ELEMENTS_PER_LDG]; ldg_stream(x1_storage_local, &gmem_src1[(is_valid ? idx : 0) * params.c]); to_float(x1_math, x1_storage_local); if (isFP8) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { x1_math[idx] = x1_math[idx] * add_descale; } } // Bug 4718275: we should consider the type of the virtual tensors before relu if (HAS_RELU) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { x_math[idx] = cuGet(x_math[idx]); } } add(x_math, x1_math); } if (HAS_RELU) { if (is_valid) { if(DUMP_BITMASK){ relu_with_bitmask_dumping(x_math, relu_upper_clip, relu_lower_clip, params.gmem_relu_bitmask, idx * params.c + thread_c); } else { relu_activation(x_math, relu_upper_clip, relu_lower_clip); } } } else if (HAS_SWISH) { if (is_valid) { swish_activation(x_math,params.swish_beta); } } // Write back. if (is_valid) { if (isFP8) { #pragma unroll for (int idx = 0; idx < ELEMENTS_PER_LDG; ++idx) { amax_in_thread = fmaxf(amax_in_thread, fabsf(x_math[idx])); x_math[idx] = x_math[idx] * scale_fp8; } } stg_stream(&gmem_dst[idx * params.c], x_math); } } } // We're about to start on the next c-blk. Needed? __syncthreads(); } preexit(); if (isFP8) { int constexpr WARPS_PER_CTA = THREADS_PER_CTA / THREADS_PER_WARP; float *amax_smem = smem; // do reduction in registers for (int t_i = THREADS_PER_WARP / 2; t_i > 0; t_i /= 2) { amax_in_thread = fmaxf(amax_in_thread, __shfl_down_sync(0xffffffff, amax_in_thread, t_i, 32)); } // do reduction in shared mem int lane_id = threadIdx.x % THREADS_PER_WARP; int warp_id = threadIdx.x / THREADS_PER_WARP; // write each warps amax in smem if (lane_id == 0) { amax_smem[warp_id] = amax_in_thread; } __syncthreads(); if (warp_id == 0) { for (int s = WARPS_PER_CTA / 2; s > 0; s >>= 1) { if (lane_id < s) { amax_smem[lane_id] = fmaxf(amax_smem[lane_id], amax_smem[lane_id + s]); } __syncwarp(); } if (threadIdx.x == 0) { // Note that as amax is always positive, the below atomixMax skips the branch for // handling negative values. float old = __int_as_float(::atomicMax((int *)params.amax, __float_as_int(amax_smem[0]))); } } } } constexpr int mxfp8_block_size = 32; constexpr int nvfp4_block_size = 16; template struct LnFwdShared { using Traits = _Traits; static constexpr int32_t SMEM_STATS_ELEMENTS = ((Traits::Stats::SMEM_BYTES > 0) ? Traits::Stats::SMEM_BYTES : 1); static constexpr int32_t SMEM_BAR_ELEMENTS = ((Traits::USE_CLUSTER && Traits::CTAS_PER_ROW > 1) ? (Traits::WARPS_M + 1 + Traits::WARPS_M * Traits::CTAS_PER_ROW) : 1); static constexpr int32_t SMEM_MXFP8_ELEMENTS = ((isBlockScale_1D2X2X && !useBlockScaleColwiseKernel) ? ((mxfp8_block_size * Traits::NUM_ELTS + (Traits::NUM_ELTS - 1)) * (mxfp8_block_size + 1)) : 1); static constexpr int32_t GAMMA_ELEMENTS = ((Traits::hasGamma && Traits::USE_GAMMA_SMEM) ? (Traits::BATCH_SIZE * Traits::LDGS * Traits::THREADS_PER_ROW * Traits::NUM_ELTS) : 1); static constexpr int32_t BETA_ELEMENTS = ((Traits::hasBeta && Traits::USE_GAMMA_SMEM) ? (Traits::BATCH_SIZE * Traits::LDGS * Traits::THREADS_PER_ROW * Traits::NUM_ELTS) : 1); __align__(16) char smem_stats[SMEM_STATS_ELEMENTS]; __align__(16) uint64_t smem_bar[SMEM_BAR_ELEMENTS]; __align__(16) typename Traits::weight_t smem_gamma[GAMMA_ELEMENTS]; __align__(16) typename Traits::weight_t smem_beta[BETA_ELEMENTS]; __align__(16) float smem_mxfp8[SMEM_MXFP8_ELEMENTS]; }; extern "C" __global__ __launch_bounds__(Ktraits::THREADS_PER_CTA, DESIRED_OCCUPANCY) void ln_fwd_kernel( PersistentLnFwdParams params, reduced_divisor divisor) { // divisor is div_batch if it is batch-first case, else it is div_seqLen enum { ROWS_PER_CTA = Ktraits::ROWS_PER_CTA }; enum { WARPS_N = Ktraits::WARPS_N }; enum { WARPS_M = Ktraits::WARPS_M }; enum { THREADS_PER_ROW = Ktraits::THREADS_PER_ROW }; enum { VEC_COLS_PER_LDG = Ktraits::VEC_COLS_PER_LDG }; enum { VEC_COLS = Ktraits::VEC_COLS }; enum { BYTES_PER_ROW = Ktraits::BYTES_PER_ROW }; enum { LDGS = Ktraits::LDGS }; enum { NUM_ELTS = Ktraits::NUM_ELTS }; enum { THREADS_PER_WARP = Ktraits::THREADS_PER_WARP }; enum { CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }; enum { COLS = Ktraits::COLS }; enum { COLS_PER_LDG = Ktraits::VEC_COLS_PER_LDG * Ktraits::NUM_ELTS }; enum { COLS_PER_LDG_PER_CTA = COLS_PER_LDG / Ktraits::CTAS_PER_ROW }; enum { VEC_COLS_PER_LDG_PER_CTA = VEC_COLS_PER_LDG / Ktraits::CTAS_PER_ROW }; enum { USE_GAMMA_SMEM = Ktraits::USE_GAMMA_SMEM }; enum { BATCH_SIZE = Ktraits::BATCH_SIZE }; enum { isAdaLN = Ktraits::isAdaLN }; enum { isBatchFirst = Ktraits::isBatchFirst }; using output_t = typename Ktraits::output_t; using weight_t = typename Ktraits::weight_t; using index_t = typename Ktraits::index_t; using compute_t = typename Ktraits::compute_t; using norm_output_t = typename Ktraits::norm_output_t; using Ivec = typename Ktraits::Ivec; using Ovec = typename Ktraits::Ovec; using Wvec = typename Ktraits::Wvec; using Cvec = typename Ktraits::Cvec; using NormOvec = typename Ktraits::NormOvec; using Stats = typename Ktraits::Stats; using stats_t = typename Stats::stats_t; extern __shared__ char smem_base_[]; LnFwdShared *shared = reinterpret_cast *>(smem_base_); uint64_t *smemBar = shared->smem_bar; if (USE_CLUSTER && CTAS_PER_ROW > 1) { #if (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) // Init the empty bars for each warp if (threadIdx.x < WARPS_M) { cuda::ptx::mbarrier_init(&smemBar[threadIdx.x], CTAS_PER_ROW * WARPS_N * THREADS_PER_WARP); } // Init the full bar (shared by the CTA) if (threadIdx.x == 0) { cuda::ptx::mbarrier_init(&smemBar[WARPS_M], 1); cuda::ptx::fence_mbarrier_init(cuda::ptx::sem_release, cuda::ptx::scope_cluster); } cuda::ptx::barrier_cluster_arrive(cuda::ptx::sem_relaxed); cuda::ptx::barrier_cluster_wait(); #else static_assert(true, "Cluster enabled on host side but not available on device"); #endif // (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) } const index_t tidx = threadIdx.x; const index_t bidn = blockIdx.x % CTAS_PER_ROW; const index_t bidm = blockIdx.x / CTAS_PER_ROW; const index_t lane = tidx % THREADS_PER_WARP; const index_t warp = tidx / THREADS_PER_WARP; const index_t warp_m = warp / WARPS_N; const index_t warp_n = warp % WARPS_N; const index_t r = bidm * ROWS_PER_CTA + warp_m; const index_t col_in_tile = warp_n * THREADS_PER_WARP + lane; const index_t c = bidn * THREADS_PER_ROW + col_in_tile; Stats stats(params, bidm, bidn, warp_m, warp_n, tidx, lane, shared->smem_stats, smemBar); // Unused when USE_GAMMA_SMEM is true and will be optimized out Wvec gamma_regs[BATCH_SIZE][LDGS], beta_regs[BATCH_SIZE][LDGS]; weight_t *gamma_smem = nullptr, *beta_smem = nullptr; if constexpr (USE_GAMMA_SMEM) { static constexpr int32_t SMEM_BYTES_GAMMA = THREADS_PER_ROW * BATCH_SIZE * LDGS * sizeof(Wvec); if constexpr (Ktraits::hasGamma) { gamma_smem = shared->smem_gamma; } if constexpr (Ktraits::hasBeta) { beta_smem = shared->smem_beta; } } // If we are mxfp8 output type, we need shared memory for amax calculations across warps // 2d1x1x (not yet implemented) requires 1 (1 for a 32x32 block) // 1d1x1x requires 0 (since it reduces over a row which can be done with warp reduce) // 1d2x2x requires 32x(32+1)xNUM_ELTS, more details as follows: constexpr int block_scale_size = isFP4Out ? nvfp4_block_size : mxfp8_block_size; BlockScaleRowHelper rowwise_scale_helper{}; BlockScaleColHelper colwise_scale_helper{shared->smem_mxfp8}; compute_t *mu_ptr = static_cast(params.mu); compute_t *rs_ptr = static_cast(params.rs); constexpr compute_t rn = 1.f / compute_t(Ktraits::COLS); index_t idx = c; // Load gamma and beta into shared memory or registers #pragma unroll for (int b = 0; b < BATCH_SIZE; b++) { // CL-14115: The unroll factor 128 for LDGS was chosen based on the compilation/perf results for APEX LN_fwd engines #pragma unroll 128 for (int it = 0; it < LDGS; it++) { if constexpr (USE_GAMMA_SMEM) { if (warp_m == 0) { const int32_t cur_gamma_smem_base_idx = (b * LDGS + it) * THREADS_PER_ROW * NUM_ELTS + warp_n * THREADS_PER_WARP * NUM_ELTS + lane; if constexpr (Ktraits::hasGamma) { Wvec cur_gamma_vec; cur_gamma_vec.load_from(params.gamma, idx); #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { const int32_t cur_gamma_smem_idx = cur_gamma_smem_base_idx + jt * THREADS_PER_WARP; gamma_smem[cur_gamma_smem_idx] = cur_gamma_vec.data.elt[jt]; } } if constexpr (Ktraits::hasBeta) { Wvec cur_beta_vec; cur_beta_vec.load_from(params.beta, idx); #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { const int32_t cur_beta_smem_idx = cur_gamma_smem_base_idx + jt * THREADS_PER_WARP; beta_smem[cur_beta_smem_idx] = cur_beta_vec.data.elt[jt]; } } } } else { if constexpr (Ktraits::hasGamma) { gamma_regs[b][it].load_from(params.gamma, idx); } if (Ktraits::hasBeta) { beta_regs[b][it].load_from(params.beta, idx); } } idx += VEC_COLS_PER_LDG; } } if constexpr (USE_GAMMA_SMEM) { __syncthreads(); } // Initialize scale and bias for FP8 output compute_t scale = 1.f; if (isFP8Out) { scale = __ldg(params.scale); } compute_t amax = 0; int remaining_rows = params.rows - bidm * ROWS_PER_CTA; int row_increment_step = params.ctas_per_col * ROWS_PER_CTA; int batch_idx = 0, remainder = 0; int batch_increment_step = 0, step_remainder = 0; if constexpr (isAdaLN) { if constexpr (isBatchFirst) { divisor.divmod(r, batch_idx, remainder); // row = batch_idx * seqLen + remainder; (remainder < // seqLen) batch_idx = r/seqLen divisor.divmod(row_increment_step, batch_increment_step, step_remainder); // row_increment_step = // batch_increment_step * seqLen + // step_remainder (remainder < // seqLen) } else { batch_idx = divisor.mod(r); // batch_idx = row % BATCH_SIZE; batch_increment_step = divisor.mod(row_increment_step); // batch_increment_step = row_increment_step % BATCH_SIZE; } } for (int row = r; row < params.rows; row += row_increment_step, batch_idx += batch_increment_step, remainder += step_remainder) { index_t idx = row * VEC_COLS + c; // Load x and convert to compute type per row per thread compute_t xf[LDGS * NUM_ELTS]; #pragma unroll 128 for (int it = 0; it < LDGS; it++) { Ivec x_it{}; x_it.load_from(params.x, idx); #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t x_ij = compute_t(x_it.data.elt[jt]); xf[it * NUM_ELTS + jt] = x_ij; } idx += VEC_COLS_PER_LDG; } // Compute mean and variance per row per thread // How many rows current CTA will handle for this iteration int rows_per_cta = remaining_rows >= ROWS_PER_CTA ? ROWS_PER_CTA : remaining_rows; stats_t s = stats.compute(xf, rn, rows_per_cta); remaining_rows -= params.ctas_per_col * ROWS_PER_CTA; // for next iteration compute_t mu = Get<0>::of(s); compute_t m2 = Get<1>::of(s); if (!Ktraits::isRMSNorm) { if (bidn == 0 && warp_n == 0 && lane == 0) { mu_ptr[row] = mu; } } compute_t rs = rsqrtf(rn * m2 + params.epsilon); if (bidn == 0 && warp_n == 0 && lane == 0) { rs_ptr[row] = rs; } idx = row * VEC_COLS + c; if constexpr (isAdaLN) { if constexpr (isBatchFirst) { if (remainder >= params.seqLen) { batch_idx += 1; remainder -= params.seqLen; } } else { if (batch_idx >= BATCH_SIZE) { batch_idx -= BATCH_SIZE; } } } #pragma unroll 128 for (int it = 0; it < LDGS; it++) { Cvec z_math; #pragma unroll // Compute output per ldg per row per thread for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t y_ij = rs * (xf[it * NUM_ELTS + jt] - mu); if constexpr (Ktraits::hasGamma) { weight_t g_ij_wt{}; const int32_t cur_gamma_smem_base_idx = (batch_idx * LDGS + it) * THREADS_PER_ROW * NUM_ELTS + warp_n * THREADS_PER_WARP * NUM_ELTS + lane; const int32_t cur_gamma_smem_idx = cur_gamma_smem_base_idx + jt * THREADS_PER_WARP; if constexpr (USE_GAMMA_SMEM) { g_ij_wt = gamma_smem[cur_gamma_smem_idx]; } else { g_ij_wt = gamma_regs[batch_idx][it].data.elt[jt]; } compute_t g_ij = static_cast(g_ij_wt); if constexpr (isZeroCenteredGamma) { if constexpr (isZeroCenteredGammaCastBeforeAdd) { g_ij = static_cast(g_ij_wt) + static_cast(1.f); } else { g_ij = static_cast(g_ij_wt + static_cast(1.f)); } } if constexpr (Ktraits::hasBeta) { compute_t b_ij{}; const int32_t cur_beta_smem_idx = cur_gamma_smem_base_idx + jt * THREADS_PER_WARP; if constexpr (USE_GAMMA_SMEM) { b_ij = beta_smem[cur_beta_smem_idx]; } else { b_ij = beta_regs[batch_idx][it].data.elt[jt]; } y_ij = g_ij * y_ij + b_ij; } else { y_ij = g_ij * y_ij; } } if (isFP8Out) { if (hasAmax) { __builtin_assume(amax >= 0); amax = fmaxf(amax, fabsf(y_ij)); } y_ij *= scale; } z_math.data.elt[jt] = y_ij; } if constexpr (isBlockScaleOut) { static_assert(!isBlockScaleOut || (Ktraits::COLS % mxfp8_block_size == 0)); // ensure cols divisable by 32 index_t sf_row_idx = (row * VEC_COLS + it * VEC_COLS_PER_LDG + (bidn * WARPS_N + warp_n) * THREADS_PER_WARP) / mxfp8_block_size; [[maybe_unused]] NormOvec z_intermediate; if constexpr (std::is_same::value) { rowwise_scale_helper.blockQuantizeStore(z_math, params.scale_row, sf_row_idx, params.z, idx); } else { z_math.to(z_intermediate); rowwise_scale_helper.blockQuantizeStore( z_intermediate, params.scale_row, sf_row_idx, params.z, idx); } if constexpr (isBlockScale_1D2X2X) { if constexpr (useBlockScaleColwiseKernel) { // Store the temporary z_math values in workspace and launch a separate kernel to compute the // colwise scaling results if constexpr (std::is_same::value) { z_math.store_to(params.z_math, idx); } else { z_intermediate.store_to(params.z_math, idx); } } else { if constexpr (std::is_same::value) { colwise_scale_helper.initTile(z_math); } else { colwise_scale_helper.initTile(z_intermediate); } index_t sf_col_row_idx = 0; index_t sf_col_col_idx = 0; index_t sf_col_row_width = 0; index_t z_col_idx = 0; index_t z_row_offset = row - row % mxfp8_block_size; if constexpr (!isBlockScale_1D2X2X_Transpose) { sf_col_row_idx = row / mxfp8_block_size; sf_col_col_idx = it * VEC_COLS_PER_LDG + bidn * VEC_COLS_PER_LDG_PER_CTA + warp; sf_col_row_width = VEC_COLS; z_col_idx = (z_row_offset + lane) * VEC_COLS + sf_col_col_idx; } else { constexpr index_t group_size = mxfp8_block_size / NUM_ELTS; sf_col_row_idx = it * COLS_PER_LDG + bidn * COLS_PER_LDG_PER_CTA + warp * NUM_ELTS; sf_col_col_idx = row / mxfp8_block_size; sf_col_row_width = params.rows / mxfp8_block_size; z_col_idx = (sf_col_row_idx + lane / group_size) * params.rows / NUM_ELTS + z_row_offset / NUM_ELTS + (lane % group_size); } colwise_scale_helper.blockQuantizeStore( params.scale_col, sf_col_row_idx, sf_col_col_idx, sf_col_row_width, params.z_col, z_col_idx, THREADS_PER_ROW * WARPS_M); } } } else { Ovec z; z_math.to(z); z.store_to(params.z, idx); } idx += VEC_COLS_PER_LDG; } } if (isFP8Out) { if (hasAmax) { amax = reduce_max(amax, warp); if (threadIdx.x == 0) { atomicMaxFloat(reinterpret_cast(params.amax), amax); } } if (hasScaleInv && blockIdx.x == 0 && threadIdx.x == 0) { *reinterpret_cast(params.scale_inv) = __fdividef(1.f, scale); } } } /////////////////////////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 2024 NVIDIA Corporation. All Rights Reserved. // // NVIDIA Corporation and its licensors retain all intellectual property and // proprietary rights in and to this software and related documentation. Any // use, reproduction, disclosure or distribution of this software and related // documentation without an express license agreement from NVIDIA Corporation // is strictly prohibited. // // IMPORTANT - READ ME // This file is used to generate a string for a RTC kernel. You must convert to a string using // rtc_strings/rts_string_gen.py to use this kernel in the engine. // constexpr int mxfp8_block_size = 32; constexpr int nvfp4_block_size = 16; static inline __device__ void store_a_vec(const void *global_ptr, const uint32_t smem_ptr, const uint32_t bytes) { asm volatile("cp.async.bulk.global.shared::cta.bulk_group [%0], [%1], %2;\n" : : "l"(reinterpret_cast(global_ptr)), "r"(smem_ptr), "r"(bytes) : "memory"); } template struct PersistentTmaFwdOutputBuffer { using Traits = _Traits; using Ovec = typename Ktraits::Ovec; using Cvec = typename Ktraits::Cvec; enum { ELEMS_TO_SAVE = ((Ktraits::HIDDEN_SIZE / Ktraits::CTAS_PER_ROW) * (Ktraits::WARPS_M * Ktraits::ROWS_PER_WARP)) }; #if (BULK_STORE_TYPE == BULK_STORE_TYPE_STD) typename Ktraits::output_t output_vec[ELEMS_TO_SAVE]; #elif (BULK_STORE_TYPE == BULK_STORE_TYPE_1D1X1X) // blockScale 1D1x1x static constexpr int ELES_NUM = isFP4Out ? ELEMS_TO_SAVE / 2 : ELEMS_TO_SAVE; static constexpr int SF_NUM = isFP4Out ? ELEMS_TO_SAVE / nvfp4_block_size : ELEMS_TO_SAVE / mxfp8_block_size; typename Ktraits::output_t output_row_data[ELES_NUM]; BlockScaleHelperBase::scale_t output_row_scale[SF_NUM]; #else typename Ktraits::output_t output_vec[1]; #endif // These getAddress functions are helper functions to try to keep the main code cleaner // It bulk store is enabled, it will return the appropriate buffer to use depending on the kernel configuration // If it is not enabled, it will pass through the gmem address provided. __device__ void * getScaleAddress(void *gmem_addr) { #if (BULK_STORE_TYPE == BULK_STORE_TYPE_STD) return nullptr; #elif (BULK_STORE_TYPE == BULK_STORE_TYPE_1D1X1X) return output_row_scale; #else return gmem_addr; #endif } __device__ void * getDataAddress(void *gmem_addr) { #if (BULK_STORE_TYPE == BULK_STORE_TYPE_STD) return output_vec; #elif (BULK_STORE_TYPE == BULK_STORE_TYPE_1D1X1X) return output_row_data; #else return gmem_addr; #endif } }; typedef struct alignas(64) { uint64_t data[8]; } cudaTmaDesc; template struct PersistentTmaFwdLayerNorm { using Traits = _Traits; using Stats = Ktraits::Stats; struct LnFwdShared { enum { SMEM_STATS_BYTES = ((Stats::SMEM_BYTES > 0) ? Stats::SMEM_BYTES : 1) }; enum { /* const int32_t mxfp8_1d2x2x_smem_rows = mxfp8_block_size * elts_per_ldg + (elts_per_ldg - 1); const int32_t mxfp8_1d2x2x_smem_cols = mxfp8_block_size + 1; other_params.SMEM_BYTES_FWD += sizeof(float) * mxfp8_1d2x2x_smem_rows * mxfp8_1d2x2x_smem_cols; */ SMEM_MXFP8_ELEMENTS = isMXFP8_1D2X2X ? (mxfp8_block_size * Ktraits::NUM_ELTS + (Ktraits::NUM_ELTS - 1)) * (mxfp8_block_size + 1) : 1 }; enum { GAMMA_ELEMENTS_PER_LOAD = Ktraits::hasGamma ? (Ktraits::LDGS * Traits::THREADS_PER_ROW) : 1 }; enum { GAMMA_ELEMENTS = Ktraits::hasGamma ? (Ktraits::BATCH_SIZE * GAMMA_ELEMENTS_PER_LOAD) : 1 }; enum { BETA_ELEMENTS_PER_LOAD = Ktraits::hasBeta ? (Ktraits::LDGS * Traits::THREADS_PER_ROW) : 1 }; enum { BETA_ELEMENTS = Ktraits::hasBeta ? Ktraits::BATCH_SIZE * BETA_ELEMENTS_PER_LOAD : 1 }; enum { ELEMS_TO_LOAD = (((Ktraits::HIDDEN_SIZE / Ktraits::CTAS_PER_ROW) / LOADS_PER_TILE) * (Ktraits::WARPS_M * Ktraits::ROWS_PER_WARP)) }; enum { ELEMS_TO_SAVE = PersistentTmaFwdOutputBuffer<_Traits>::ELEMS_TO_SAVE }; __align__(128) typename Ktraits::input_t input_vec[STAGES][ELEMS_TO_LOAD]; __align__(128) PersistentTmaFwdOutputBuffer<_Traits> output_buffers; __align__(128) typename Ktraits::Wvec smem_gamma[GAMMA_ELEMENTS]; // Cannot have 0 byte array. __align__(128) typename Ktraits::Wvec smem_beta[BETA_ELEMENTS]; // Cannot have 0 byte array. __align__(128) char stats_buffer[SMEM_STATS_BYTES]; // mbarriers and DSMEM for CGA reduction __align__(128) uint64_t smemBar[Ktraits::USE_CLUSTER ? (2 + WARPS_M * CTAS_PER_ROW) : 1]; __align__(128) float mxfp8_smem[SMEM_MXFP8_ELEMENTS]; __align__(128) utils::CircularBuffer input_vec_fifo; __device__ void init(int tid0) { static_assert(Traits::THREADS_PER_ROW == Traits::WARPS_N * 32); input_vec_fifo.init(tid0, 1, Traits::THREADS_PER_ROW * Traits::WARPS_M); __nv_ptx_builtin_ocg_fence_view_async_shared(); } }; #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 #define GRID_CONSTANT __grid_constant__ #else #define GRID_CONSTANT #endif static __device__ void load_a_vec(const void *global_ptr, const uint32_t smem_ptr, const uint32_t bytes, const uint32_t barrier_ptr) { #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile( "cp.async.bulk.shared::cluster.global.mbarrier::complete_tx::bytes " "[%0], [%1], %2, [%3];\n" : : "r"(smem_ptr), "l"(reinterpret_cast(global_ptr)), "r"(bytes), "r"(barrier_ptr) : "memory"); #else static_assert(false); #endif } static __device__ void load_a_2d_vec(const cudaTmaDesc *p_desc, const uint32_t smem_ptr, const uint32_t barrier_ptr, const int32_t box_col, const int32_t box_row) { #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile( "cp.async.bulk.tensor.2d.shared::cluster.global.mbarrier::complete_tx::bytes " "[%0], [%1, {%2, %3}], [%4];\n" : : "r"(smem_ptr), "l"(reinterpret_cast(p_desc)), "r"(box_col), "r"(box_row), "r"(barrier_ptr) : "memory"); #else static_assert(false); #endif } template static __device__ bool load_a_tile(const PersistentLnFwdParams ¶ms, LnFwdShared *shared, utils::CircularBuffer::Writer &input_vec_fifo_w, const cudaTmaDesc *tensor_x, int32_t tileNum, int32_t loadNum, int32_t thread_id) { enum { CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }; enum { ROWS_PER_CTA = Ktraits::ROWS_PER_CTA }; if (tileNum >= (params.rows * CTAS_PER_ROW) / ROWS_PER_CTA) { return false; } if (thread_id == 0) { constexpr int ELEMS_PER_ROW_TILE = HIDDEN_SIZE / CTAS_PER_ROW; constexpr int ELEMS_PER_TILE = ELEMS_PER_ROW_TILE * ROWS_PER_CTA; constexpr int BYTES_PER_TILE = sizeof(ITYPE) * ELEMS_PER_TILE; constexpr int BYTES_PER_LOAD_PER_TILE = BYTES_PER_TILE / LOADS_PER_TILE; constexpr int tx = BYTES_PER_LOAD_PER_TILE + ((FIRST_RUN && Ktraits::hasGamma) ? LnFwdShared::GAMMA_ELEMENTS * sizeof(Ktraits::Wvec) : 0) + ((FIRST_RUN && Ktraits::hasBeta) ? LnFwdShared::BETA_ELEMENTS * sizeof(Ktraits::Wvec) : 0); auto vec_buffer_ptr = input_vec_fifo_w.tmaReserve(tx); if constexpr (WARPS_M * ROWS_PER_WARP == 1 || CTAS_PER_ROW == 1) { // Perform a 1D TMA operation load_a_vec(&(reinterpret_cast(params.x)[tileNum * ELEMS_PER_TILE]), __nvvm_get_smem_pointer(&shared->input_vec[vec_buffer_ptr][0]), BYTES_PER_TILE, __nvvm_get_smem_pointer(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))); } else { // Perform a 2D TMA operation const int row = (tileNum / CTAS_PER_ROW) * ROWS_PER_CTA; const int col = (tileNum % CTAS_PER_ROW) * ELEMS_PER_ROW_TILE + loadNum * (ELEMS_PER_ROW_TILE / LOADS_PER_TILE); load_a_2d_vec( tensor_x, __nvvm_get_smem_pointer(static_cast(&shared->input_vec[vec_buffer_ptr][0])), __nvvm_get_smem_pointer(static_cast(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))), col, row); } if constexpr (FIRST_RUN) { int gamma_col = (tileNum % CTAS_PER_ROW) * (HIDDEN_SIZE / CTAS_PER_ROW); if constexpr (Ktraits::hasGamma) { #pragma unroll for (int32_t idx_in_batch = 0; idx_in_batch < Ktraits::BATCH_SIZE; idx_in_batch++) { load_a_vec(&(reinterpret_cast(params.gamma)[idx_in_batch * HIDDEN_SIZE + gamma_col]), __nvvm_get_smem_pointer(shared->smem_gamma + idx_in_batch * LnFwdShared::GAMMA_ELEMENTS_PER_LOAD), LnFwdShared::GAMMA_ELEMENTS_PER_LOAD * sizeof(Ktraits::Wvec), __nvvm_get_smem_pointer(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))); } } if constexpr (Ktraits::hasBeta) { #pragma unroll for (int32_t idx_in_batch = 0; idx_in_batch < Ktraits::BATCH_SIZE; idx_in_batch++) { load_a_vec(&(reinterpret_cast(params.beta)[idx_in_batch * HIDDEN_SIZE + gamma_col]), __nvvm_get_smem_pointer(shared->smem_beta + idx_in_batch * LnFwdShared::BETA_ELEMENTS_PER_LOAD), LnFwdShared::BETA_ELEMENTS_PER_LOAD * sizeof(Ktraits::Wvec), __nvvm_get_smem_pointer(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))); } } } } return true; } static __device__ void dma(const uint32_t thread_id, const PersistentLnFwdParams ¶ms, LnFwdShared *shared, const cudaTmaDesc *tensor_x) { auto input_vec_fifo_w = shared->input_vec_fifo.createWriter(); int32_t tileNum = blockIdx.x; int32_t loadNum = 0; if (load_a_tile(params, shared, input_vec_fifo_w, tensor_x, tileNum, loadNum, thread_id)) { loadNum++; if (loadNum >= LOADS_PER_TILE) { loadNum = 0; tileNum += gridDim.x; } while (load_a_tile(params, shared, input_vec_fifo_w, tensor_x, tileNum, loadNum, thread_id)) { loadNum++; if (loadNum >= LOADS_PER_TILE) { loadNum = 0; tileNum += gridDim.x; } } } } static __device__ void compute(PersistentLnFwdParams params, LnFwdShared *shared, const cudaTmaDesc *tensor_x, const reduced_divisor &divisor) { enum { ROWS_PER_CTA = Ktraits::ROWS_PER_CTA }; enum { WARPS_N = Ktraits::WARPS_N }; enum { WARPS_M = Ktraits::WARPS_M }; enum { THREADS_PER_ROW = Ktraits::THREADS_PER_ROW }; enum { VEC_COLS_PER_LDG = Ktraits::VEC_COLS_PER_LDG }; enum { VEC_COLS = Ktraits::VEC_COLS }; enum { BYTES_PER_ROW = Ktraits::BYTES_PER_ROW }; enum { LDGS = Ktraits::LDGS }; enum { NUM_ELTS = Ktraits::NUM_ELTS }; enum { CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }; enum { ROWS_PER_WARP = Ktraits::ROWS_PER_WARP }; enum { COLS = Ktraits::COLS }; enum { COLS_PER_CTA = COLS / Ktraits::CTAS_PER_ROW }; enum { COLS_PER_LDG = Ktraits::VEC_COLS_PER_LDG * Ktraits::NUM_ELTS }; enum { COLS_PER_LDG_PER_CTA = COLS_PER_LDG / Ktraits::CTAS_PER_ROW }; enum { VEC_COLS_PER_CTA = VEC_COLS / Ktraits::CTAS_PER_ROW }; enum { VEC_COLS_PER_LDG_PER_CTA = VEC_COLS_PER_LDG / Ktraits::CTAS_PER_ROW }; enum { BATCH_SIZE = Ktraits::BATCH_SIZE }; enum { isBatchFirst = Ktraits::isBatchFirst }; using output_t = typename Ktraits::output_t; using index_t = typename Ktraits::index_t; using compute_t = typename Ktraits::compute_t; using weight_t = typename Ktraits::weight_t; using Ivec = typename Ktraits::Ivec; using Ovec = typename Ktraits::Ovec; using Wvec = typename Ktraits::Wvec; using Cvec = typename Ktraits::Cvec; using Stats = Ktraits::Stats; using stats_t = Stats::stats_t; auto wait_for_store = [](auto prev) { constexpr int PREV = decltype(prev)::value; if constexpr (PREV == 0) { asm volatile("cp.async.bulk.wait_group.read 0;\n" ::: "memory"); } else if constexpr (PREV == 1) { asm volatile("cp.async.bulk.wait_group.read 1;\n" ::: "memory"); } else if constexpr (PREV == 2) { asm volatile("cp.async.bulk.wait_group.read 2;\n" ::: "memory"); } else if constexpr (PREV == 4) { asm volatile("cp.async.bulk.wait_group.read 4;\n" ::: "memory"); } else if constexpr (PREV == 8) { asm volatile("cp.async.bulk.wait_group.read 8;\n" ::: "memory"); } else if constexpr (PREV == 16) { asm volatile("cp.async.bulk.wait_group.read 16;\n" ::: "memory"); } else if constexpr (PREV == 32) { asm volatile("cp.async.bulk.wait_group.read 32;\n" ::: "memory"); } else { static_assert(PREV == 0); } }; const index_t tidx = threadIdx.x - THREADS_PER_WARP * DMA_WARPS; const index_t bidn = blockIdx.x % CTAS_PER_ROW; const index_t bidm = blockIdx.x / CTAS_PER_ROW; const index_t lane = tidx % THREADS_PER_WARP; const index_t warp = tidx / THREADS_PER_WARP; const index_t warp_m = warp / WARPS_N; const index_t warp_n = warp % WARPS_N; const index_t col_in_tile = warp_n * THREADS_PER_WARP + lane; const index_t c = bidn * (Ktraits::VEC_COLS / CTAS_PER_ROW) + col_in_tile; Stats stats( params, bidm, bidn, warp_m, warp_n, tidx, lane, (void *)&(shared->stats_buffer[0]), shared->smemBar); float *mxfp8_smem = reinterpret_cast(&shared->mxfp8_smem[0]); constexpr int block_size = isFP4Out ? nvfp4_block_size : mxfp8_block_size; BlockScaleRowHelper rowwise_scale_helper{}; BlockScaleColHelper colwise_scale_helper{mxfp8_smem}; compute_t *mu_ptr = static_cast(params.mu); compute_t *rs_ptr = static_cast(params.rs); #if (DMA_WARPS == 0) auto input_vec_fifo_w = shared->input_vec_fifo.createWriter(); int32_t prefetch_tileNum = blockIdx.x; #endif static_assert(Ktraits::ROWS_PER_CTA == Ktraits::WARPS_M * ROWS_PER_WARP); static_assert(Ktraits::COLS / CTAS_PER_ROW == LDGS * THREADS_PER_ROW * NUM_ELTS); auto input_vec_fifo_r = shared->input_vec_fifo.createReader(); constexpr compute_t rn = 1.f / compute_t(Ktraits::COLS); constexpr int arbitrary_barrier_name = 2; compute_t scale = 1.f; if (isFP8Out) { scale = __ldg(params.scale); } compute_t amax = 0; if constexpr (DMA_WARPS == 0) { // Currently multiple 2D TMA loads per tile doesn't work with DMA_WARPS=0 static_assert(LOADS_PER_TILE == 1); if (tidx == 0) { // This is the non warp specialized case. Here we must do all our buffer loading from the compute // loop for (int i = 0; i < STAGES && prefetch_tileNum < ((params.rows * CTAS_PER_ROW) / Ktraits::ROWS_PER_CTA); ++i, prefetch_tileNum += gridDim.x) { if (i == 0) { if (!load_a_tile(params, shared, input_vec_fifo_w, tensor_x, prefetch_tileNum, 0, tidx)) { break; } } else { if (!load_a_tile( params, shared, input_vec_fifo_w, tensor_x, prefetch_tileNum, 0, tidx)) { break; } } } } } #pragma unroll 1 for (int32_t tileNum = blockIdx.x; tileNum < ((params.rows * CTAS_PER_ROW) / Ktraits::ROWS_PER_CTA); tileNum += gridDim.x) { index_t start_row_of_tile = (tileNum / CTAS_PER_ROW) * ROWS_PER_CTA; /** * Load input vector for the current tile from circular buffer (each warp loads for ROWS_PER_WARP rows) */ compute_t x_math_tile[ROWS_PER_WARP][LDGS * NUM_ELTS]; #pragma unroll 1 for (int32_t loadNum = 0; loadNum < LOADS_PER_TILE; loadNum++) { // Peek for data ready. auto data_ready = input_vec_fifo_r.peek(); // Wait for data ready. if (!data_ready) { input_vec_fifo_r.wait(); } auto s_x = shared->input_vec[input_vec_fifo_r.ptr()]; static_assert(LDGS % LOADS_PER_TILE == 0); #pragma unroll 1 for (int32_t row_in_warp = 0; row_in_warp < ROWS_PER_WARP; row_in_warp++) { index_t row_in_tile = row_in_warp * WARPS_M + warp_m; index_t s_idx = row_in_tile * (VEC_COLS_PER_CTA / LOADS_PER_TILE) + col_in_tile; #pragma unroll 128 for (int32_t it = 0; it < LDGS / LOADS_PER_TILE; it++) { Ivec x_ij; x_ij.load_from(s_x, s_idx + it * THREADS_PER_ROW); #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { x_math_tile[row_in_warp][loadNum * (LDGS / LOADS_PER_TILE) * NUM_ELTS + it * NUM_ELTS + jt] = compute_t(x_ij.data.elt[jt]); } } } input_vec_fifo_r.pop(); } /** * Compute stats for the current tile (each warp computes for ROWS_PER_WARP rows) */ compute_t mu_tile[ROWS_PER_WARP]; compute_t rs_tile[ROWS_PER_WARP]; #pragma unroll 1 for (int32_t row_in_warp = 0; row_in_warp < ROWS_PER_WARP; row_in_warp++) { index_t row_in_tile = row_in_warp * WARPS_M + warp_m; index_t row = start_row_of_tile + row_in_tile; stats_t s = stats.compute(x_math_tile[row_in_warp], rn, WARPS_M); compute_t mu = Get<0>::of(s); compute_t m2 = Get<1>::of(s); if (!Ktraits::isRMSNorm) { if (bidn == 0 && warp_n == 0 && lane == 0) { mu_ptr[row] = mu; } } compute_t rs = rsqrtf(rn * m2 + params.epsilon); if (bidn == 0 && warp_n == 0 && lane == 0) { rs_ptr[row] = rs; } mu_tile[row_in_warp] = mu; rs_tile[row_in_warp] = rs; } /** * Need to sync before storing the output again if using bulk store */ // TODO Is this right? Seems we could ignore the very first sync, and only sync on subsequent loops. // TODO or does that wait_for store already take care of it? if constexpr (USE_BULK_STORE) { if (tidx == 0) { wait_for_store(std::integral_constant{}); } utils::namedBarrierSync(arbitrary_barrier_name, THREADS_PER_ROW * WARPS_M); } // CL-14115: The unroll factor 128 for LDGS was chosen based on the compilation/perf results for APEX LN_fwd engines #pragma unroll 128 /** * Compute and store output for the current tile (each warp computes for ROWS_PER_WARP rows) * * To support column-wise block scaling, we need to store the current ldg's sub-tile in shared memory. Thus, * we should iterate through the inputs first by ldg and then by row in the warp. */ for (int32_t it = 0; it < LDGS; it++) { Cvec z_math[ROWS_PER_WARP]; index_t gamma_it = it * THREADS_PER_ROW + col_in_tile; #pragma unroll 1 for (int32_t row_in_warp = 0; row_in_warp < ROWS_PER_WARP; row_in_warp++) { index_t row_in_tile = row_in_warp * WARPS_M + warp_m; index_t row = start_row_of_tile + row_in_tile; index_t idx = it * THREADS_PER_ROW; int32_t batch_idx = 0; if constexpr (isAdaLN) { if constexpr (isBatchFirst) { batch_idx = divisor.div(row); // batch_idx = row / params.seqLen; } else { batch_idx = divisor.mod(row); // batch_idx = row % params.seqLen; } } if constexpr (USE_BULK_STORE) { idx += (row_in_tile * Ktraits::VEC_COLS) + warp_n * THREADS_PER_WARP + lane; } else { idx += row * Ktraits::VEC_COLS + c; } #pragma unroll /** * Compute output for the current ldg and rows in the current warp */ for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t y_ij = rs_tile[row_in_warp] * (x_math_tile[row_in_warp][it * NUM_ELTS + jt] - mu_tile[row_in_warp]); if constexpr (Ktraits::hasGamma) { index_t gamma_idx = batch_idx * LnFwdShared::GAMMA_ELEMENTS_PER_LOAD + gamma_it; weight_t g_ij_wt = shared->smem_gamma[gamma_idx].data.elt[jt]; compute_t g_ij = static_cast(g_ij_wt); if constexpr (isZeroCenteredGamma) { if constexpr (isZeroCenteredGammaCastBeforeAdd) { g_ij = static_cast(g_ij_wt) + static_cast(1.f); } else { g_ij = static_cast(g_ij_wt + static_cast(1.f)); } } if constexpr (Ktraits::hasBeta) { compute_t b_ij = (compute_t)(shared->smem_beta[gamma_idx].data.elt[jt]); y_ij = (g_ij * y_ij + b_ij); } else if (Ktraits::hasGamma) { y_ij = g_ij * y_ij; } } if (isFP8Out) { if (hasAmax) { __builtin_assume(amax >= 0); amax = fmaxf(amax, fabsf(y_ij)); } y_ij *= scale; } z_math[row_in_warp].data.elt[jt] = y_ij; } // NUM_ELTS if constexpr (isBlockScaleOut) { // Assumptions for now static_assert((Ktraits::COLS % 32 == 0)); // ensure cols divisable by 32 int sf_row_idx = 0; if (USE_BULK_STORE) { sf_row_idx = (row_in_warp * WARPS_M + warp_m) * Ktraits::VEC_COLS / mxfp8_block_size + it * WARPS_N + warp_n; } else { sf_row_idx = (row * VEC_COLS + bidn * VEC_COLS_PER_CTA + (it * WARPS_N + warp_n) * THREADS_PER_WARP) / mxfp8_block_size; } void *data_address = shared->output_buffers.getDataAddress(params.z); void *scale_address = shared->output_buffers.getScaleAddress(params.scale_row); rowwise_scale_helper.blockQuantizeStore( z_math[row_in_warp], scale_address, sf_row_idx, data_address, idx); if constexpr (isMXFP8_1D2X2X) { colwise_scale_helper.initTile(z_math[row_in_warp], row_in_tile); } } else { Ovec z; z_math[row_in_warp].to(z); if constexpr (USE_BULK_STORE) { // Store to shared memory. Prep for bulk store. const index_t s_y_idx = row_in_tile * Ktraits::VEC_COLS + it * THREADS_PER_ROW + col_in_tile; z.store_to(&shared->output_buffers.output_vec[0], s_y_idx); } else { // write to global memory z.store_to(params.z, idx); } } } /** * Do column-wise block scaling for the current ldg sub-tile */ if constexpr (isMXFP8_1D2X2X) { #pragma unroll 1 for (int32_t row_in_warp = 0; row_in_warp < ROWS_PER_WARP; row_in_warp++) { index_t row_in_tile = row_in_warp * WARPS_M + warp_m; index_t row = start_row_of_tile + row_in_tile; index_t sf_col_row_idx = 0; index_t sf_col_col_idx = 0; index_t sf_col_row_width = 0; index_t z_col_idx = 0; index_t z_row_offset = row - row % mxfp8_block_size; if constexpr (!isBlockScale_1D2X2X_Transpose) { sf_col_row_idx = row / mxfp8_block_size; sf_col_col_idx = bidn * VEC_COLS_PER_CTA + it * VEC_COLS_PER_LDG_PER_CTA + row_in_tile; sf_col_row_width = VEC_COLS; z_col_idx = (z_row_offset + lane) * VEC_COLS + sf_col_col_idx; } else { constexpr index_t group_size = mxfp8_block_size / NUM_ELTS; sf_col_row_idx = bidn * COLS_PER_CTA + it * COLS_PER_LDG_PER_CTA + row_in_tile * NUM_ELTS; sf_col_col_idx = row / mxfp8_block_size; sf_col_row_width = params.rows / mxfp8_block_size; z_col_idx = (sf_col_row_idx + lane / group_size) * params.rows / NUM_ELTS + z_row_offset / NUM_ELTS + (lane % group_size); } colwise_scale_helper.blockQuantizeStore( params.scale_col, sf_col_row_idx, sf_col_col_idx, sf_col_row_width, params.z_col, z_col_idx, THREADS_PER_ROW * WARPS_M, row_in_tile); } // end row_in_warp loop } // end rows_per_warp loop } // end ldg loop if constexpr (USE_BULK_STORE) { // bulk store for this tile // __threadfence_block() is NOT sufficient for TMA __nv_ptx_builtin_ocg_fence_view_async_shared(); utils::namedBarrierSync(arbitrary_barrier_name, THREADS_PER_ROW * WARPS_M); if (tidx == 0) { #if (BULK_STORE_TYPE == BULK_STORE_TYPE_STD) store_a_vec(&(reinterpret_cast(params.z)[tileNum * LnFwdShared::ELEMS_TO_SAVE]), __nvvm_get_smem_pointer(&shared->output_buffers.output_vec[0]), LnFwdShared::ELEMS_TO_SAVE * sizeof(typename Ktraits::output_t)); #elif (BULK_STORE_TYPE == BULK_STORE_TYPE_1D1X1X) static constexpr int ELEMS_NUM = isFP4Out ? LnFwdShared::ELEMS_TO_SAVE / 2 : LnFwdShared::ELEMS_TO_SAVE; static constexpr int SF_NUM = isFP4Out ? LnFwdShared::ELEMS_TO_SAVE / nvfp4_block_size : LnFwdShared::ELEMS_TO_SAVE / mxfp8_block_size; store_a_vec(&(reinterpret_cast(params.z)[tileNum * ELEMS_NUM]), __nvvm_get_smem_pointer(&shared->output_buffers.output_row_data[0]), ELEMS_NUM * sizeof(typename Ktraits::output_t)); store_a_vec(&(reinterpret_cast::scale_t *>( params.scale_row)[tileNum * SF_NUM]), __nvvm_get_smem_pointer(&shared->output_buffers.output_row_scale[0]), SF_NUM * sizeof(BlockScaleHelperBase < Cvec, Ovec, isFP4Out ? 16 : 32 > ::scale_t)); #endif asm volatile("cp.async.bulk.commit_group;\n" ::: "memory"); } } if constexpr (DMA_WARPS == 0) { // Currently multiple 2D TMA loads per tile doesn't work with DMA_WARPS=0 static_assert(LOADS_PER_TILE == 1); if (threadIdx.x == 0) { // Try to load another tile into our circular buffer. if (load_a_tile(params, shared, input_vec_fifo_w, tensor_x, prefetch_tileNum, 0, tidx)) { prefetch_tileNum += gridDim.x; } } } } // end grid stride loop if (isFP8Out) { if (hasAmax) { amax = reduce_max(amax, warp, tidx); if (tidx == 0) { atomicMaxFloat(reinterpret_cast(params.amax), amax); } } if (hasScaleInv && blockIdx.x == 0 && tidx == 0) { *reinterpret_cast(params.scale_inv) = __fdividef(1.f, scale); } } } static __device__ void run(const PersistentLnFwdParams ¶ms, const cudaTmaDesc *tensor_x, const reduced_divisor &divisor) { extern __shared__ char smem[]; LnFwdShared *shared = (LnFwdShared *)smem; shared->init(threadIdx.x == 0); if (Ktraits::USE_CLUSTER && CTAS_PER_ROW > 1) { #if (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) // Init the empty and full bars first (shared by the CTA) if (threadIdx.x == 0) { cuda::ptx::mbarrier_init(&shared->smemBar[0], 1); cuda::ptx::mbarrier_init(&shared->smemBar[1], CTAS_PER_ROW * WARPS_N * WARPS_M * THREADS_PER_WARP); cuda::ptx::fence_mbarrier_init(cuda::ptx::sem_release, cuda::ptx::scope_cluster); } cuda::ptx::barrier_cluster_arrive(cuda::ptx::sem_relaxed); cuda::ptx::barrier_cluster_wait(); #else static_assert(true, "Cluster enabled on host side but not available on device"); #endif // (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) } else { // This is not required when CGA is on, because we'll sync the whole cluster __syncthreads(); } #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile("griddepcontrol.wait;\n"); #endif auto warp_id = threadIdx.x / 32; auto lane_id = threadIdx.x % 32; if (warp_id < DMA_WARPS) { if (warp_id == 0) { dma(lane_id, params, shared, tensor_x); } } else { compute(params, shared, tensor_x, divisor); } #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile("griddepcontrol.launch_dependents;\n"); #endif } }; extern "C" __global__ __launch_bounds__(Ktraits::THREADS_PER_CTA + DMA_WARPS * 32, DESIRED_OCCUPANCY) void ln_tma_fwd_kernel( GRID_CONSTANT const PersistentLnFwdParams params, GRID_CONSTANT const reduced_divisor divisor) { // divisor is div_batch in batch-first case, else div_seqLen static_assert(sizeof(PersistentTmaFwdLayerNorm::LnFwdShared) < (227 * 1024)); PersistentTmaFwdLayerNorm::run(params, nullptr, divisor); } extern "C" __global__ __launch_bounds__(Ktraits::THREADS_PER_CTA + DMA_WARPS * 32, DESIRED_OCCUPANCY) void ln_tma_fwd_2D_kernel( GRID_CONSTANT const PersistentLnFwdParams params, GRID_CONSTANT const cudaTmaDesc tensor_x, GRID_CONSTANT const cudaTmaDesc /*tensor_y*/, GRID_CONSTANT const reduced_divisor divisor) { // divisor is div_batch in batch-first case, else div_seqLen static_assert(sizeof(PersistentTmaFwdLayerNorm::LnFwdShared) < (227 * 1024)); PersistentTmaFwdLayerNorm::run(params, &tensor_x, divisor); } template inline T_UNSIGNED alignUpPow2(T_UNSIGNED v, T_UNSIGNED p2) { return (v + (p2 - 1)) & ~(p2 - 1); } extern "C" __global__ __launch_bounds__(Ktraits::THREADS_PER_CTA, DESIRED_OCCUPANCY) void ln_bwd_kernel( PersistentLnBwdParams params, reduced_divisor divisor) { // divisor is div_seqLen if it is batch-first case, else it is div_batch enum { ROWS_PER_CTA = Ktraits::ROWS_PER_CTA }; enum { WARPS_M = Ktraits::WARPS_M }; enum { WARPS_N = Ktraits::WARPS_N }; enum { THREADS_PER_ROW = Ktraits::THREADS_PER_ROW }; enum { COLS = Ktraits::COLS }; enum { BYTES_PER_ROW = Ktraits::BYTES_PER_ROW }; enum { LDGS = Ktraits::LDGS }; enum { NUM_ELTS = Ktraits::ELTS_PER_LDG }; enum { THREADS_PER_WARP = Ktraits::THREADS_PER_WARP }; enum { CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }; enum { USE_GAMMA_SMEM = Ktraits::USE_GAMMA_SMEM }; enum { BATCH_SIZE = Ktraits::BATCH_SIZE }; enum { isAdaLN = Ktraits::isAdaLN }; enum { isBatchFirst = Ktraits::isBatchFirst }; using compute_t = typename Ktraits::compute_t; using weight_t = typename Ktraits::weight_t; using index_t = typename Ktraits::index_t; using Ivec = typename Ktraits::Ivec; using Ovec = typename Ktraits::Ovec; using Wvec = typename Ktraits::Wvec; using Cvec = typename Ktraits::Cvec; using Reducer = typename Ktraits::Reducer; using RMSReducer = typename Ktraits::RMSReducer; using reduce_t = typename Reducer::Type; extern __shared__ char smem_base_[]; char *smem_base = smem_base_; uint64_t *smemBar = nullptr; if (USE_CLUSTER && CTAS_PER_ROW > 1) { #if (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) // Init the mbarriers (at the beginning of the smem) smemBar = (uint64_t *)(smem_base_); // Init the empty bars for each warp_m (warps on the same row) if (threadIdx.x < WARPS_M) { cuda::ptx::mbarrier_init(&smemBar[threadIdx.x], CTAS_PER_ROW * WARPS_N * THREADS_PER_WARP); } // Init the full bar (shared by the CTA) if (threadIdx.x == 0) { cuda::ptx::mbarrier_init(&smemBar[WARPS_M], 1); cuda::ptx::fence_mbarrier_init(cuda::ptx::sem_release, cuda::ptx::scope_cluster); } cuda::ptx::barrier_cluster_arrive(cuda::ptx::sem_relaxed); cuda::ptx::barrier_cluster_wait(); // WARPS_M + 1 uint64_t, followed by WARPS_M * CTAS_PER_ROW float2 // Bug 5062335: align the DSMEM size up to 16 smem_base = smem_base_ + alignUpPow2(sizeof(uint64_t) * (WARPS_M + 1 + WARPS_M * CTAS_PER_ROW), size_t(16)); #else static_assert(true, "Cluster enabled on host side but not available on device"); #endif // (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) } char *smem_ = USE_GAMMA_SMEM ? smem_base + (sizeof(Wvec) * LDGS * Ktraits::THREADS_PER_CTA * BATCH_SIZE) : smem_base; Wvec gamma_reg[BATCH_SIZE][USE_GAMMA_SMEM ? 1 : LDGS]; const index_t tidx = threadIdx.x; const index_t bidn = blockIdx.x % CTAS_PER_ROW; const index_t bidm = blockIdx.x / CTAS_PER_ROW; const index_t lane = tidx % THREADS_PER_WARP; const index_t warp = tidx / THREADS_PER_WARP; const index_t warp_m = warp / Ktraits::WARPS_N; const index_t warp_n = warp % Ktraits::WARPS_N; const index_t tid_r = warp_n * THREADS_PER_WARP + lane; const index_t r = bidm * ROWS_PER_CTA + warp_m; const index_t c = bidn * THREADS_PER_ROW + warp_n * THREADS_PER_WARP + lane; Cvec dzy_sum[BATCH_SIZE][LDGS]; Cvec dz_sum[BATCH_SIZE][LDGS]; memset(dzy_sum, 0, sizeof(dzy_sum)); memset(dz_sum, 0, sizeof(dz_sum)); compute_t *smem_wgrad = reinterpret_cast(smem_); char *smem_dgrad = smem_ + Ktraits::SMEM_BYTES_WGRAD; Reducer reducer(params, bidm, bidn, warp_m, warp_n, tidx, lane, smem_dgrad, smemBar); RMSReducer rmsreducer(params, bidm, bidn, warp_m, warp_n, tidx, lane, smem_dgrad, smemBar); Sum sum; Sum rmssum; // CL-14115: The unroll factor 384 for LDGS was chosen based on the compilation/perf results for APEX LN_bwd engines static constexpr int32_t LDGS_UNROLL_FACTOR = find_largest_divisor(static_cast(LDGS), 384); constexpr float rn = 1.f / float(COLS); index_t idx = c; if constexpr (Ktraits::hasGamma) { #pragma unroll for (int b = 0; b < BATCH_SIZE; b++) { if (USE_GAMMA_SMEM) { int gamma_it = tidx; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++, gamma_it += Ktraits::THREADS_PER_CTA) { reinterpret_cast(smem_base)[b * LDGS * Ktraits::THREADS_PER_CTA + gamma_it].load_from( params.gamma, idx); idx += Ktraits::VEC_COLS_PER_LDG; } } else { int gamma_it = 0; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++, gamma_it++) { gamma_reg[b][gamma_it].load_from(params.gamma, idx); idx += Ktraits::VEC_COLS_PER_LDG; } } } } int remaining_rows = params.rows - bidm * ROWS_PER_CTA; // TODO if ROWS_PER_CTA does not divide rows, we might get divergence in the // last blocks with syncthreads! // grid stride over rows #pragma unroll 1 for (int row = r; row < params.rows; row += params.ctas_per_col * ROWS_PER_CTA) { compute_t mu = (compute_t)0.0f; if (!Ktraits::isRMSNorm) { mu = static_cast(params.mu)[row]; } const compute_t mu_r = mu; const compute_t rs_r = static_cast(params.rs)[row]; Ivec x[LDGS]; Ovec dz[LDGS]; index_t idx = row * Ktraits::VEC_COLS + c; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { x[it].load_from(params.x, idx); dz[it].load_from(params.dz, idx); idx += Ktraits::VEC_COLS_PER_LDG; } compute_t dy[LDGS * NUM_ELTS]; compute_t y[LDGS * NUM_ELTS]; compute_t mdy_local = 0.f; compute_t mdyy_local = 0.f; int gamma_it = USE_GAMMA_SMEM ? tidx : 0; int batch_idx = 0; if constexpr (isAdaLN) { if constexpr (isBatchFirst) { batch_idx = divisor.div(row); // batch_idx = row / seq_len; } else { batch_idx = divisor.mod(row); // batch_idx = row % BATCH_SIZE; } } #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { Wvec gamma_tmp; if constexpr (Ktraits::hasGamma) { if (USE_GAMMA_SMEM) { gamma_tmp = reinterpret_cast(smem_base)[batch_idx * LDGS * Ktraits::THREADS_PER_CTA + gamma_it]; } else { gamma_tmp = gamma_reg[batch_idx][gamma_it]; } } #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t x_tmp = x[it].data.elt[jt]; compute_t y_tmp; if (Ktraits::isRMSNorm) { y_tmp = rs_r * x_tmp; } else { y_tmp = rs_r * (x_tmp - mu_r); } compute_t dz_tmp = compute_t(dz[it].data.elt[jt]); compute_t dy_tmp = dz_tmp; if constexpr (Ktraits::hasGamma) { weight_t g_ij_wt = gamma_tmp.data.elt[jt]; compute_t g_ij = static_cast(g_ij_wt); if constexpr (isZeroCenteredGamma) { if constexpr (isZeroCenteredGammaCastBeforeAdd) { g_ij = static_cast(g_ij_wt) + static_cast(1.f); } else { g_ij = static_cast(g_ij_wt + static_cast(1.f)); } } dy_tmp *= g_ij; } if (!Ktraits::isRMSNorm) { mdy_local += dy_tmp; } mdyy_local += dy_tmp * y_tmp; dy[it * NUM_ELTS + jt] = dy_tmp; y[it * NUM_ELTS + jt] = y_tmp; if constexpr (Ktraits::hasGamma) { dzy_sum[batch_idx][it].data.elt[jt] += dz_tmp * y_tmp; } if constexpr (Ktraits::hasBeta) { dz_sum[batch_idx][it].data.elt[jt] += dz_tmp; } } if constexpr (Ktraits::hasGamma) { gamma_it += (USE_GAMMA_SMEM ? Ktraits::THREADS_PER_CTA : 1); } } // How many rows current CTA will handle for this iteration int rows_per_cta = remaining_rows >= ROWS_PER_CTA ? ROWS_PER_CTA : remaining_rows; if (Ktraits::isRMSNorm) { mdyy_local = rmsreducer.allreduce(mdyy_local, rmssum, rows_per_cta) * rn; } else { reduce_t result = reducer.allreduce({mdy_local, mdyy_local}, sum, rows_per_cta); mdy_local = Get<0>::of(result) * rn; mdyy_local = Get<1>::of(result) * rn; } remaining_rows -= params.ctas_per_col * ROWS_PER_CTA; // for next iteration Ivec dx[LDGS]; idx = row * Ktraits::VEC_COLS + c; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t dy_tmp = dy[it * NUM_ELTS + jt]; compute_t y_tmp = y[it * NUM_ELTS + jt]; compute_t dx_tmp; if (Ktraits::isRMSNorm) { // Bug 5067178: restructure RMSNorm arithmetic to fma pattern to avoid long compilation time dx_tmp = rs_r * (dy_tmp - (mdyy_local * y_tmp + static_cast(0.0f))); } else { dx_tmp = rs_r * (dy_tmp - (mdyy_local * y_tmp + mdy_local)); } dx[it].data.elt[jt] = dx_tmp; } dx[it].store_to(params.dx, idx); idx += Ktraits::VEC_COLS_PER_LDG; } } // end: grid stride loop #if 0 // WAR do not use as vectorized code contains mismatches for BYTES_PER_LDG == 16 and cols == 3k constexpr int NUM_RES = (Ktraits::VEC_COLS / (Ktraits::THREADS_PER_CTA * Ktraits::CTAS_PER_ROW) > 0) ? Ktraits::VEC_COLS / (Ktraits::THREADS_PER_CTA * Ktraits::CTAS_PER_ROW) : COLS / Ktraits::THREADS_PER_CTA; #else constexpr int NUM_RES = COLS / Ktraits::THREADS_PER_CTA; #endif if (WARPS_M == 1) { #pragma unroll for (int b_idx = 0; b_idx < BATCH_SIZE; b_idx++) { idx = b_idx * params.ctas_per_col * Ktraits::VEC_COLS + r * Ktraits::VEC_COLS + c; // r is bidm in this case #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { if constexpr (Ktraits::hasBeta) { dz_sum[b_idx][it].store_to(params.dbeta_part, idx); } if constexpr (Ktraits::hasGamma) { dzy_sum[b_idx][it].store_to(params.dgamma_part, idx); } idx += Ktraits::VEC_COLS_PER_LDG; } } } #if 0 // See above WAR else if ((Ktraits::THREADS_PER_CTA * Ktraits::CTAS_PER_ROW) <= Ktraits::VEC_COLS) { // Finalize reduction of part dgamma and dbeta for this CTA // by reducing over the rows held across the WARPS_M warps // Assumption: blockSize divides hidden size. // Uses vectorized writes which accounts for the "striping" when using CTAS_PER_ROW > 1 Cvec cta_dz_sum[NUM_RES]; if constexpr (Ktraits::hasBeta) { idx = warp_m * Ktraits::VEC_COLS / Ktraits::CTAS_PER_ROW + tid_r; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { dz_sum[it].store_to(smem_wgrad, idx); idx += THREADS_PER_ROW; } __syncthreads(); memset(cta_dz_sum, 0, sizeof(Cvec) * NUM_RES); for (int it = 0; it < ROWS_PER_CTA; it++) { for (int jt = 0; jt < NUM_RES; jt++) { Cvec tmp; tmp.load_from( smem_wgrad, it * (Ktraits::VEC_COLS / Ktraits::CTAS_PER_ROW) + tidx + jt * Ktraits::THREADS_PER_CTA); cta_dz_sum[jt] += tmp; } } __syncthreads(); } // if hasBeta idx = warp_m * Ktraits::VEC_COLS / Ktraits::CTAS_PER_ROW + tid_r; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { dzy_sum[it].store_to(smem_wgrad, idx); idx += THREADS_PER_ROW; } __syncthreads(); Cvec cta_dzy_sum[NUM_RES]; memset(cta_dzy_sum, 0, sizeof(Cvec) * NUM_RES); for (int it = 0; it < ROWS_PER_CTA; it++) { for (int jt = 0; jt < NUM_RES; jt++) { Cvec tmp; tmp.load_from(smem_wgrad, it * (Ktraits::VEC_COLS / Ktraits::CTAS_PER_ROW) + tidx + jt * Ktraits::THREADS_PER_CTA); cta_dzy_sum[jt] += tmp; } } int thread_index = (tidx % (Ktraits::THREADS_PER_ROW)) + bidn * Ktraits::THREADS_PER_ROW + (tidx / Ktraits::THREADS_PER_ROW) * (Ktraits::THREADS_PER_ROW * Ktraits::CTAS_PER_ROW) + bidm * Ktraits::VEC_COLS; for (int jt = 0; jt < NUM_RES; jt++) { if constexpr (Ktraits::hasGamma) { compute_t *dgamma_part = static_cast(params.dgamma_part); cta_dzy_sum[jt].store_to(dgamma_part, thread_index); } if constexpr (Ktraits::hasBeta) { compute_t *dbeta_part = static_cast(params.dbeta_part); cta_dz_sum[jt].store_to(dbeta_part, thread_index); } thread_index += Ktraits::THREADS_PER_CTA * Ktraits::CTAS_PER_ROW; } } #endif else { // Finalize reduction of part dgamma and dbeta for this CTA // by reducing over the rows held across the WARPS_M warps // Assumption: blockSize divides hidden size. // Does not use vectorized writes when the math won't work (because num vec_cols is too small) compute_t cta_dz_sum[BATCH_SIZE][NUM_RES]; compute_t cta_dzy_sum[BATCH_SIZE][NUM_RES]; if constexpr (Ktraits::hasBeta) { memset(cta_dz_sum, 0, sizeof(compute_t) * NUM_RES * BATCH_SIZE); } if constexpr (Ktraits::hasGamma) { memset(cta_dzy_sum, 0, sizeof(compute_t) * NUM_RES * BATCH_SIZE); } #pragma unroll for (int b_idx = 0; b_idx < BATCH_SIZE; b_idx++) { if constexpr (Ktraits::hasBeta) { idx = warp_m * Ktraits::VEC_COLS + tid_r; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { dz_sum[b_idx][it].store_to(smem_wgrad, idx); idx += THREADS_PER_ROW; } __syncthreads(); for (int it = 0; it < ROWS_PER_CTA; it++) { for (int jt = 0; jt < NUM_RES; jt++) { cta_dz_sum[b_idx][jt] += smem_wgrad[it * COLS + tidx + jt * Ktraits::THREADS_PER_CTA]; } } __syncthreads(); } // if hasBeta if constexpr (Ktraits::hasGamma) { idx = warp_m * Ktraits::VEC_COLS + tid_r; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { dzy_sum[b_idx][it].store_to(smem_wgrad, idx); idx += THREADS_PER_ROW; } __syncthreads(); for (int it = 0; it < ROWS_PER_CTA; it++) { for (int jt = 0; jt < NUM_RES; jt++) { cta_dzy_sum[b_idx][jt] += smem_wgrad[it * COLS + tidx + jt * Ktraits::THREADS_PER_CTA]; } } } // if hasGamma __syncthreads(); } compute_t *dgamma_part = nullptr; compute_t *dbeta_part = nullptr; if constexpr (Ktraits::hasGamma || Ktraits::hasBeta) { #pragma unroll for (int b_idx = 0; b_idx < BATCH_SIZE; b_idx++) { if constexpr (Ktraits::hasGamma) { dgamma_part = static_cast(params.dgamma_part) + b_idx * params.ctas_per_col * COLS + bidm * COLS + tidx; } if constexpr (Ktraits::hasBeta) { dbeta_part = static_cast(params.dbeta_part) + b_idx * params.ctas_per_col * COLS + bidm * COLS + tidx; } for (int jt = 0; jt < NUM_RES; jt++) { if constexpr (Ktraits::hasGamma) { *dgamma_part = cta_dzy_sum[b_idx][jt]; dgamma_part += Ktraits::THREADS_PER_CTA; } if constexpr (Ktraits::hasBeta) { *dbeta_part = cta_dz_sum[b_idx][jt]; dbeta_part += Ktraits::THREADS_PER_CTA; } } } } } // if WARPS_M != 1 } // // Copyright (c) 2014-2024 NVIDIA Corporation. All Rights Reserved. // // NVIDIA Corporation and its licensors retain all intellectual property and // proprietary rights in and to this software and related documentation. Any // use, reproduction, disclosure or distribution of this software and related // documentation without an express license agreement from NVIDIA Corporation // is strictly prohibited. // // // IMPORTANT - READ ME // This file is used to generate a string for a RTC kernel. You must convert to a string using // rtc_strings/rts_string_gen.py to use this kernel in the engine. // template struct PersistentTmaBwdLayerNorm { using Traits = _Traits; struct LnBwdShared { enum { ELEMS_TO_LOAD = ((Ktraits::HIDDEN_SIZE / Ktraits::CTAS_PER_ROW) * Ktraits::WARPS_M) }; enum { BATCH_SIZE = Ktraits::BATCH_SIZE }; enum { GAMMA_ELEMENTS = Ktraits::LDGS * Traits::THREADS_PER_ROW }; // Cannot have 0 byte array. __align__(128) typename Ktraits::input_t x_input_vec[STAGES][ELEMS_TO_LOAD]; __align__(128) typename Ktraits::output_t dz_input_vec[STAGES][ELEMS_TO_LOAD]; __align__(128) typename Ktraits::input_t output_vec[USE_BULK_STORE ? ELEMS_TO_LOAD : 1]; // Cannot have 0 byte array. __align__(128) Ktraits::Wvec smem_gamma[(Ktraits::hasGamma && Ktraits::USE_GAMMA_SMEM) ? GAMMA_ELEMENTS * BATCH_SIZE : 1]; __align__(128) char smem_dgrad[Ktraits::SMEM_BYTES_DGRAD > 0 ? Ktraits::SMEM_BYTES_DGRAD : 1]; __align__(128) char smem_wgrad[Ktraits::SMEM_BYTES_WGRAD > 0 ? Ktraits::SMEM_BYTES_WGRAD : 1]; // mbarriers and DSMEM for CGA reduction __align__(128) uint64_t smemBar[Ktraits::USE_CLUSTER ? (2 + WARPS_M * CTAS_PER_ROW) : 1]; __align__(128) utils::CircularBuffer input_vec_fifo; __device__ void init(int tid0) { static_assert(Traits::THREADS_PER_ROW == Traits::WARPS_N * 32); input_vec_fifo.init(tid0, 1, Traits::THREADS_PER_ROW * Traits::WARPS_M); __nv_ptx_builtin_ocg_fence_view_async_shared(); } }; // Note we do not use a scheduler warp (as outlined in the design) because at the moment we are not using arbitrary // tile numbers // nor prefetching to L2 cache. If we bring it back, Please see revision #1 in Perforce: cudnn_feature_branch static __device__ void dma(const uint32_t thread_id, const PersistentLnBwdParams ¶m, LnBwdShared *shared) { auto load_a_vec = [](const void *global_ptr, const uint32_t smem_ptr, const uint32_t bytes, const uint32_t barrier_ptr) { #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile( "cp.async.bulk.shared::cluster.global.mbarrier::complete_tx::bytes " "[%0], [%1], %2, [%3];\n" : : "r"(smem_ptr), "l"(reinterpret_cast(global_ptr)), "r"(bytes), "r"(barrier_ptr) : "memory"); #else static_assert(false); #endif }; enum { CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }; enum { BATCH_SIZE = Ktraits::BATCH_SIZE }; if (thread_id == 0) { auto input_vec_fifo_w = shared->input_vec_fifo.createWriter(); auto load_a_tile = [&](auto first_run, int32_t _tileNum) { constexpr bool FIRST_RUN = decltype(first_run)::value; auto tileNum = _tileNum; if (tileNum >= (param.rows * CTAS_PER_ROW) / Ktraits::WARPS_M) return false; constexpr int ELEMS_PER_ROW_TILE = (HIDDEN_SIZE / CTAS_PER_ROW); constexpr int ELEMS_PER_TILE = ELEMS_PER_ROW_TILE * Ktraits::WARPS_M; constexpr int BYTES_PER_ROW_TILE = sizeof(ITYPE) * ELEMS_PER_ROW_TILE; constexpr int BYTES_PER_TILE = (BYTES_PER_ROW_TILE * Ktraits::WARPS_M); constexpr int BYTES_PER_ROW_TILE_DZ = sizeof(OTYPE) * ELEMS_PER_ROW_TILE; constexpr int BYTES_PER_TILE_DZ = (BYTES_PER_ROW_TILE_DZ * Ktraits::WARPS_M); static_assert(Ktraits::WARPS_M == 1 || CTAS_PER_ROW == 1); // Cannot handle multiple CTAS per row and multiple rows per CTA. constexpr int tx = BYTES_PER_TILE_DZ + BYTES_PER_TILE + ((FIRST_RUN && Ktraits::hasGamma && Ktraits::USE_GAMMA_SMEM) ? LnBwdShared::GAMMA_ELEMENTS * BATCH_SIZE * sizeof(Ktraits::Wvec) : 0); auto vec_buffer_ptr = input_vec_fifo_w.tmaReserve(tx); load_a_vec(&(reinterpret_cast(param.x)[(tileNum)*ELEMS_PER_TILE]), __nvvm_get_smem_pointer(&shared->x_input_vec[vec_buffer_ptr][0]), BYTES_PER_TILE, __nvvm_get_smem_pointer(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))); load_a_vec(&(reinterpret_cast(param.dz)[(tileNum)*ELEMS_PER_TILE]), __nvvm_get_smem_pointer(&shared->dz_input_vec[vec_buffer_ptr][0]), BYTES_PER_TILE_DZ, __nvvm_get_smem_pointer(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))); if constexpr (FIRST_RUN) { if constexpr (Ktraits::hasGamma && Ktraits::USE_GAMMA_SMEM) { int gamma_col = (tileNum % CTAS_PER_ROW) * (HIDDEN_SIZE / CTAS_PER_ROW); [&](auto param) { #pragma unroll for (int b = 0; b < BATCH_SIZE; b++) { load_a_vec( &(reinterpret_cast(param.gamma)[b * Ktraits::HIDDEN_SIZE + gamma_col]), __nvvm_get_smem_pointer(&(shared->smem_gamma[b * LnBwdShared::GAMMA_ELEMENTS])), LnBwdShared::GAMMA_ELEMENTS * sizeof(Ktraits::Wvec), __nvvm_get_smem_pointer(input_vec_fifo_w.barrier_ptr(vec_buffer_ptr))); } }(param); } } return true; }; int32_t tileNum = blockIdx.x; if (load_a_tile(std::true_type{}, tileNum)) { tileNum += gridDim.x; while (load_a_tile(std::false_type{}, tileNum)) { tileNum += gridDim.x; } } } return; } static __device__ void compute(const PersistentLnBwdParams ¶m, LnBwdShared *shared, reduced_divisor divisor) { auto store_a_vec = [](const void *global_ptr, const uint32_t smem_ptr, const uint32_t bytes) { asm volatile("cp.async.bulk.global.shared::cta.bulk_group [%0], [%1], %2;\n" : : "l"(reinterpret_cast(global_ptr)), "r"(smem_ptr), "r"(bytes) : "memory"); }; auto wait_for_store = [](auto prev) { constexpr int PREV = decltype(prev)::value; if constexpr (PREV == 0) { asm volatile("cp.async.bulk.wait_group.read 0;\n" ::: "memory"); } else if constexpr (PREV == 1) { asm volatile("cp.async.bulk.wait_group.read 1;\n" ::: "memory"); } else if constexpr (PREV == 2) { asm volatile("cp.async.bulk.wait_group.read 2;\n" ::: "memory"); } else if constexpr (PREV == 4) { asm volatile("cp.async.bulk.wait_group.read 4;\n" ::: "memory"); } else if constexpr (PREV == 8) { asm volatile("cp.async.bulk.wait_group.read 8;\n" ::: "memory"); } else if constexpr (PREV == 16) { asm volatile("cp.async.bulk.wait_group.read 16;\n" ::: "memory"); } else if constexpr (PREV == 32) { asm volatile("cp.async.bulk.wait_group.read 32;\n" ::: "memory"); } else { static_assert(PREV == 0); } }; enum { ROWS_PER_CTA = Ktraits::ROWS_PER_CTA }; enum { WARPS_M = Ktraits::WARPS_M }; enum { WARPS_N = Ktraits::WARPS_N }; enum { THREADS_PER_ROW = Ktraits::THREADS_PER_ROW }; enum { COLS = Ktraits::COLS }; enum { BYTES_PER_ROW = Ktraits::BYTES_PER_ROW }; enum { LDGS = Ktraits::LDGS }; enum { NUM_ELTS = Ktraits::ELTS_PER_LDG }; enum { THREADS_PER_WARP = Ktraits::THREADS_PER_WARP }; enum { CTAS_PER_ROW = Ktraits::CTAS_PER_ROW }; enum { USE_GAMMA_SMEM = Ktraits::USE_GAMMA_SMEM }; enum { BATCH_SIZE = Ktraits::BATCH_SIZE }; enum { isAdaLN = Ktraits::isAdaLN }; enum { isBatchFirst = Ktraits::isBatchFirst }; enum { GAMMA_ELEMENTS = LnBwdShared::GAMMA_ELEMENTS }; using compute_t = typename Ktraits::compute_t; using weight_t = typename Ktraits::weight_t; using index_t = typename Ktraits::index_t; using Ivec = typename Ktraits::Ivec; using Ovec = typename Ktraits::Ovec; using Wvec = typename Ktraits::Wvec; using Cvec = typename Ktraits::Cvec; using Reducer = typename Ktraits::Reducer; using RMSReducer = typename Ktraits::RMSReducer; using reduce_t = typename Reducer::Type; const index_t tidx = threadIdx.x - THREADS_PER_WARP * DMA_WARPS; const index_t bidn = blockIdx.x % CTAS_PER_ROW; const index_t bidm = blockIdx.x / CTAS_PER_ROW; const index_t lane = tidx % THREADS_PER_WARP; const index_t warp = tidx / THREADS_PER_WARP; const index_t warp_m = warp / Ktraits::WARPS_N; const index_t warp_n = warp % Ktraits::WARPS_N; const index_t tid_r = warp_n * THREADS_PER_WARP + lane; // Do not use warp after this point because it does not consider dma warps. // Refer only to warp_m and warp_n. TODO enforce this with scoping. constexpr int ELEMS_PER_ROW_TILE = (HIDDEN_SIZE / CTAS_PER_ROW); constexpr int VEC_PER_ROW_TILE = ELEMS_PER_ROW_TILE / NUM_ELTS; // For TMA, we cannot 'stripe' the rows with multiple CTAS. We need to keep memory contiguous for each CTA // So a row with 4 CTAS_PER_ROW will need to look like |---cta 0---|---cta 1---|---cta 2---|---cta 3---| // Each CTA has to handle COLS / CTAS_PER_ROW elements // That gets divided between WARPS_N * 32 threads (ie THREADS_PER_ROW). // Each thread loads NUM_ELTS elements at a time (vector) // Loop step therefore is THREADS_PER_ROW * NUM_ELTS // And Loop end is (COLS / CTAS_PER_ROW) / (THREADS_PER_ROW * NUM_ELTS) // Starting column for a CTA will be block_n * (COLS / CTAS_PER_ROW) const index_t r = bidm * Ktraits::ROWS_PER_CTA + warp_m; const index_t c = bidn * (Ktraits::VEC_COLS / CTAS_PER_ROW) + warp_n * THREADS_PER_WARP + lane; // const index_t c = bidn * THREADS_PER_ROW + warp_n * THREADS_PER_WARP + lane; static_assert(THREADS_PER_ROW == WARPS_N * THREADS_PER_WARP); static_assert((COLS / CTAS_PER_ROW) >= THREADS_PER_ROW); static_assert(THREADS_PER_WARP == 32); // LDGS = VEC_COLS / VEC_COLS_PER_LDG // == (COLS / NUM_ELTS) / (CTAS_PER_ROW * THREADS_PER_ROW) constexpr int CHECK_LDGS = (COLS / CTAS_PER_ROW) / (THREADS_PER_ROW * NUM_ELTS); static_assert(CHECK_LDGS == LDGS); static_assert(Ktraits::ELTS_PER_LDG == NUM_ELTS); static_assert(ROWS_PER_CTA == 1 || CTAS_PER_ROW == 1); Cvec dzy_sum[BATCH_SIZE][LDGS]; Cvec dz_sum[BATCH_SIZE][LDGS]; memset(dzy_sum, 0, sizeof(dzy_sum)); memset(dz_sum, 0, sizeof(dz_sum)); compute_t *smem_wgrad = reinterpret_cast(shared->smem_wgrad); char *smem_dgrad = shared->smem_dgrad; Reducer reducer(param, bidm, bidn, warp_m, warp_n, tidx, lane, smem_dgrad, shared->smemBar); RMSReducer rmsreducer(param, bidm, bidn, warp_m, warp_n, tidx, lane, smem_dgrad, shared->smemBar); Sum sum; Sum rmssum; constexpr float rn = 1.f / float(COLS); index_t idx = c; // CL-14115: The unroll factor 384 for LDGS was chosen based on the compilation/perf results for APEX LN_bwd // engines static constexpr int32_t LDGS_UNROLL_FACTOR = find_largest_divisor(static_cast(LDGS), 384); static constexpr int32_t BATCH_UNROLL_FACTOR = find_largest_divisor(static_cast(BATCH_SIZE), 100); Wvec gamma_reg[BATCH_SIZE][USE_GAMMA_SMEM ? 1 : LDGS]; // Cannot have 0 byte array // Only need to load gamma from global memory if we are not using SMEM for gamma. If we are using SMEM for // gamma, the dma() warp will load it. if constexpr (Ktraits::hasGamma && !USE_GAMMA_SMEM) { #pragma unroll for (int b = 0; b < BATCH_SIZE; b++) { #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { gamma_reg[b][it].load_from(param.gamma, idx); idx += (THREADS_PER_ROW); } } } auto input_vec_fifo_r = shared->input_vec_fifo.createReader(); // TODO if ROWS_PER_CTA does not divide rows, we might get divergence in the // last blocks with syncthreads! // grid stride over rows #pragma unroll 1 for (int32_t tileNum = blockIdx.x; tileNum < ((param.rows * CTAS_PER_ROW) / Ktraits::WARPS_M); tileNum += gridDim.x) { int row = ((tileNum * ROWS_PER_CTA) / CTAS_PER_ROW) + warp_m; compute_t mu = (compute_t)0.0f; if constexpr (!Ktraits::isRMSNorm) { mu = static_cast(param.mu)[row]; } const compute_t mu_r = mu; const compute_t rs_r = static_cast(param.rs)[row]; // Peek for data ready. auto data_ready = input_vec_fifo_r.peek(); // Wait for data ready. if (!data_ready) { input_vec_fifo_r.wait(); } // Load x and dz from shared memory circular buffers // Filled LDGS * min(row, Ktraits::THREADS_PER_CTA) elements of info...TODO handle multiple rows per cta Ivec x[LDGS]; Ovec dz[LDGS]; index_t idx = 0; ITYPE *s_x = shared->x_input_vec[input_vec_fifo_r.ptr()]; OTYPE *s_dz = shared->dz_input_vec[input_vec_fifo_r.ptr()]; const index_t s_idx = warp_n * THREADS_PER_WARP + lane + (warp_m * Ktraits::VEC_COLS); static_assert(COLS / CTAS_PER_ROW == LDGS * THREADS_PER_ROW * NUM_ELTS); #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { x[it].load_from(s_x, s_idx + idx); dz[it].load_from(s_dz, s_idx + idx); idx += (THREADS_PER_ROW); } __nv_ptx_builtin_ocg_fence_view_async_shared(); input_vec_fifo_r.complete(input_vec_fifo_r.ptr()); input_vec_fifo_r.advance(); // Release Barrier for x and az compute_t dy[LDGS * NUM_ELTS]; compute_t y[LDGS * NUM_ELTS]; compute_t mdy_local = 0.f; compute_t mdyy_local = 0.f; int gamma_it = USE_GAMMA_SMEM ? (warp_n * THREADS_PER_WARP + lane) : 0; int batch_idx = 0; if constexpr (isAdaLN) { if constexpr (isBatchFirst) { batch_idx = divisor.div(row); // batch_idx = row / seq_len; } else { batch_idx = divisor.mod(row); // batch_idx = row % BATCH_SIZE; } } #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { Wvec gamma_tmp; if constexpr (Ktraits::hasGamma) { gamma_tmp = USE_GAMMA_SMEM ? shared->smem_gamma[batch_idx * GAMMA_ELEMENTS + gamma_it] : gamma_reg[batch_idx][gamma_it]; } #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t x_tmp = x[it].data.elt[jt]; compute_t y_tmp; if constexpr (Ktraits::isRMSNorm) { y_tmp = rs_r * x_tmp; } else { y_tmp = rs_r * (x_tmp - mu_r); } compute_t dz_tmp = compute_t(dz[it].data.elt[jt]); compute_t dy_tmp = dz_tmp; if constexpr (Ktraits::hasGamma) { weight_t g_ij_wt = gamma_tmp.data.elt[jt]; compute_t g_ij = static_cast(g_ij_wt); if constexpr (isZeroCenteredGamma) { if constexpr (isZeroCenteredGammaCastBeforeAdd) { g_ij = static_cast(g_ij_wt) + static_cast(1.f); } else { g_ij = static_cast(g_ij_wt + static_cast(1.f)); } } dy_tmp *= g_ij; } if constexpr (!Ktraits::isRMSNorm) { mdy_local += dy_tmp; } mdyy_local += dy_tmp * y_tmp; dy[it * NUM_ELTS + jt] = dy_tmp; y[it * NUM_ELTS + jt] = y_tmp; dzy_sum[batch_idx][it].data.elt[jt] += dz_tmp * y_tmp; if constexpr (Ktraits::hasBeta) { dz_sum[batch_idx][it].data.elt[jt] += dz_tmp; } } if constexpr (Ktraits::hasGamma) { gamma_it += USE_GAMMA_SMEM ? Ktraits::THREADS_PER_ROW : 1; } } if constexpr (Ktraits::isRMSNorm) { mdyy_local = rmsreducer.allreduce(mdyy_local, rmssum, WARPS_M) * rn; } else { reduce_t result = reducer.allreduce({mdy_local, mdyy_local}, sum, WARPS_M); mdy_local = Get<0>::of(result) * rn; mdyy_local = Get<1>::of(result) * rn; } Ivec dx[LDGS]; if constexpr (USE_BULK_STORE) { idx = 0; // For bulk store, idx is 0 into smem } else { idx = row * Ktraits::VEC_COLS + c; } // TODO Is this right? Seems we could ignore the very first sync, and only sync on subsequent loops. // TODO or does that wait_for store already take care of it? constexpr int arbitrary_barrier_name = 2; if constexpr (USE_BULK_STORE) { if (tidx == 0) { wait_for_store(std::integral_constant{}); } utils::namedBarrierSync(arbitrary_barrier_name, THREADS_PER_ROW * WARPS_M); } #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { #pragma unroll for (int jt = 0; jt < NUM_ELTS; jt++) { compute_t dy_tmp = dy[it * NUM_ELTS + jt]; compute_t y_tmp = y[it * NUM_ELTS + jt]; compute_t dx_tmp; if constexpr (Ktraits::isRMSNorm) { // Bug 5067178: restructure RMSNorm arithmetic to fma pattern to avoid long compilation time dx_tmp = rs_r * (dy_tmp - (mdyy_local * y_tmp + static_cast(0.0f))); } else { dx_tmp = rs_r * (dy_tmp - (mdyy_local * y_tmp + mdy_local)); } dx[it].data.elt[jt] = (ITYPE)dx_tmp; } if constexpr (USE_BULK_STORE) { // Store to shared memory. Prep for bulk store. dx[it].store_to(&shared->output_vec[0], s_idx + idx); } else { // write to global memory dx[it].store_to(param.dx, idx); } idx += (THREADS_PER_ROW); } if constexpr (USE_BULK_STORE) { // bulk store for this tile // Note: dx is of type ITYPE (input_t) even though it is the "output" of this kernel // __threadfence_block() is NOT sufficient for TMA __nv_ptx_builtin_ocg_fence_view_async_shared(); utils::namedBarrierSync(arbitrary_barrier_name, THREADS_PER_ROW * WARPS_M); if (tidx == 0) { store_a_vec(&(reinterpret_cast(param.dx)[tileNum * LnBwdShared::ELEMS_TO_LOAD]), __nvvm_get_smem_pointer(&shared->output_vec[0]), LnBwdShared::ELEMS_TO_LOAD * sizeof(typename Ktraits::input_t)); asm volatile("cp.async.bulk.commit_group;\n" ::: "memory"); } } } // end: grid stride loop if (WARPS_M == 1) { #pragma unroll for (int b_idx = 0; b_idx < BATCH_SIZE; b_idx++) { idx = b_idx * param.ctas_per_col * Ktraits::VEC_COLS + r * Ktraits::VEC_COLS + c; // r is bidm in this case #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { if constexpr (Ktraits::hasBeta) { dz_sum[b_idx][it].store_to(param.dbeta_part, idx); } if constexpr (Ktraits::hasGamma) { dzy_sum[b_idx][it].store_to(param.dgamma_part, idx); } idx += (THREADS_PER_ROW); } } } else { // Finalize reduction of part dgamma and dbeta for this CTA // by reducing over the rows held across the WARPS_M warps // Assumption: blockSize divides hidden size. enum { NUM_RES = COLS / Ktraits::THREADS_PER_CTA }; compute_t cta_dz_sum[BATCH_SIZE][NUM_RES]; compute_t cta_dzy_sum[BATCH_SIZE][NUM_RES]; if constexpr (Ktraits::hasBeta) { memset(cta_dz_sum, 0, sizeof(compute_t) * NUM_RES * BATCH_SIZE); } if constexpr (Ktraits::hasGamma) { memset(cta_dzy_sum, 0, sizeof(compute_t) * NUM_RES * BATCH_SIZE); } #pragma unroll for (int b_idx = 0; b_idx < BATCH_SIZE; b_idx++) { if constexpr (Ktraits::hasBeta) { idx = warp_m * Ktraits::VEC_COLS + tid_r; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { dz_sum[b_idx][it].store_to(smem_wgrad, idx); idx += THREADS_PER_ROW; } __syncthreads(); for (int it = 0; it < ROWS_PER_CTA; it++) { for (int jt = 0; jt < NUM_RES; jt++) { cta_dz_sum[b_idx][jt] += smem_wgrad[it * COLS + tidx + jt * Ktraits::THREADS_PER_CTA]; } } __syncthreads(); } // if hasBeta if constexpr (Ktraits::hasGamma) { idx = warp_m * Ktraits::VEC_COLS + tid_r; #pragma unroll LDGS_UNROLL_FACTOR for (int it = 0; it < LDGS; it++) { dzy_sum[b_idx][it].store_to(smem_wgrad, idx); idx += THREADS_PER_ROW; } __syncthreads(); for (int it = 0; it < ROWS_PER_CTA; it++) { for (int jt = 0; jt < NUM_RES; jt++) { cta_dzy_sum[b_idx][jt] += smem_wgrad[it * COLS + tidx + jt * Ktraits::THREADS_PER_CTA]; } } } // if hasGamma __syncthreads(); } compute_t *dgamma_part = nullptr; compute_t *dbeta_part = nullptr; if constexpr (Ktraits::hasGamma || Ktraits::hasBeta) { #pragma unroll for (int b_idx = 0; b_idx < BATCH_SIZE; b_idx++) { if constexpr (Ktraits::hasGamma) { dgamma_part = static_cast(param.dgamma_part) + b_idx * param.ctas_per_col * COLS + bidm * COLS + tidx; } if constexpr (Ktraits::hasBeta) { dbeta_part = static_cast(param.dbeta_part) + b_idx * param.ctas_per_col * COLS + bidm * COLS + tidx; } for (int jt = 0; jt < NUM_RES; jt++) { if constexpr (Ktraits::hasGamma) { *dgamma_part = cta_dzy_sum[b_idx][jt]; dgamma_part += Ktraits::THREADS_PER_CTA; } if constexpr (Ktraits::hasBeta) { *dbeta_part = cta_dz_sum[b_idx][jt]; dbeta_part += Ktraits::THREADS_PER_CTA; } } } } } // if WARPS_M != 1 } static __device__ void run(const PersistentLnBwdParams ¶m, reduced_divisor divisor) { extern __shared__ char smem[]; LnBwdShared *shared = (LnBwdShared *)smem; shared->init(threadIdx.x == 0); if (Ktraits::USE_CLUSTER && CTAS_PER_ROW > 1) { #if (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) // Init the empty and full bars first (shared by the CTA) if (threadIdx.x == 0) { cuda::ptx::mbarrier_init(&shared->smemBar[0], 1); cuda::ptx::mbarrier_init(&shared->smemBar[1], CTAS_PER_ROW * WARPS_N * WARPS_M * THREADS_PER_WARP); cuda::ptx::fence_mbarrier_init(cuda::ptx::sem_release, cuda::ptx::scope_cluster); } cuda::ptx::barrier_cluster_arrive(cuda::ptx::sem_relaxed); cuda::ptx::barrier_cluster_wait(); #else static_assert(true, "Cluster enabled on host side but not available on device"); #endif // (__CUDA_ARCH__ >= 900) && (CUDART_VERSION >= 12080) } else { // This is not required when CGA is on, because we'll sync the whole cluster __syncthreads(); } #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile("griddepcontrol.wait;\n"); #endif auto warp_id = threadIdx.x / 32; auto lane_id = threadIdx.x % 32; // Right now we only support 1 DMA_WARP static_assert(DMA_WARPS == 1); if (warp_id < DMA_WARPS) { if (warp_id == 0) { dma(lane_id, param, shared); } } else { compute(param, shared, divisor); } #if defined(__CUDA_ARCH__) && __CUDA_ARCH__ >= 900 asm volatile("griddepcontrol.launch_dependents;\n"); #endif } }; extern "C" __global__ __launch_bounds__(Ktraits::THREADS_PER_CTA + DMA_WARPS * 32, OCCUPANCY) void ln_tma_bwd_kernel(PersistentLnBwdParams param, reduced_divisor divisor) { static_assert(sizeof(PersistentTmaBwdLayerNorm::LnBwdShared) < (227 * 1024)); PersistentTmaBwdLayerNorm::run(param, divisor); } #define CUDACC_VERSION (__CUDACC_VER_MAJOR__ * 10 + __CUDACC_VER_MINOR__) #if (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 118) inline __device__ void __nv_ptx_acqblk(void){ asm volatile("griddepcontrol.wait;"); } inline __device__ void __nv_ptx_preexit(void){ asm volatile("griddepcontrol.launch_dependents;"); } #endif inline __device__ void acqblk() { #if defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 118) __nv_ptx_acqblk(); #endif } inline __device__ void preexit() { #if defined(__CUDA_ARCH__) && (__CUDA_ARCH__ >= 900) && (CUDACC_VERSION >= 118) __nv_ptx_preexit(); #endif } static inline __device__ void get_bn_group_info(int32_t deviceId, int bn_group, int bn_group_per_node, int &node, int &nodes, int &group_rank_offset) { int rank = deviceId; int group_id = rank / bn_group; group_rank_offset = group_id * bn_group; int rank_in_group = rank - group_rank_offset; node = rank_in_group / bn_group_per_node; nodes = bn_group / bn_group_per_node; } static inline __device__ void ll_hierarchical_allreduce(float *src, float *dst[], int elts, int localpe, int nlocalpes, int node, int nodes, int group_rank_offset) { const int warp_id = threadIdx.x / THREADS_PER_WARP; const int lane_id = threadIdx.x % THREADS_PER_WARP; uint32_t flag = 1; // +1 to avoid 0 value (which is the buffer initialized value) // int global_reduc_offset = (nlocalpes + nodes + 1) * elts; // int local_reduc_offset = (nodes == 1) ? global_reduc_offset : (nlocalpes + nodes) * elts; // int local_reduc_factor = (nodes == 1) ? 1 : 2; if (blockIdx.y == 0 && blockIdx.x == 0) { float *pe_buffer = src + localpe * elts; // Send my data to peers if (warp_id < nlocalpes - 1) { int peer_local_idx = (localpe + 1 + warp_id) % nlocalpes; // int peer = group_rank_offset + node * nlocalpes + peer_local_idx; // Assume NVLINK for 1st level of hierarchy // void *peer_addr = nvshmem_ptr(pe_buffer, peer); // void *peer_addr = (void *)(dst[peer] + localpe * elts); void *peer_addr = (void *)(dst[peer_local_idx] + localpe * elts); uint32_t data1, data2; for (size_t i = lane_id; i < elts / 4; i += THREADS_PER_WARP) { data1 = __float_as_uint(pe_buffer[i * 4]); data2 = __float_as_uint(pe_buffer[i * 4 + 2]); float *dst = reinterpret_cast(peer_addr) + i * 4; asm volatile("st.volatile.global.v4.u32 [%0], {%1,%2,%3,%4};" ::"l"(dst), "r"(data1), "r"(flag), "r"(data2), "r"(flag)); } // Wait on flags to confirm reception of peer data float *peer_buffer = src + peer_local_idx * elts; for (size_t i = lane_id; i < elts / 4; i += THREADS_PER_WARP) { uint32_t data1, flag1, data2, flag2; (void)data1; (void)data2; // uint32_t iter = 0; do { // ++iter; float *ptr = peer_buffer + i * 4; asm volatile("ld.volatile.global.v4.u32 {%0,%1,%2,%3}, [%4];" : "=r"(data1), "=r"(flag1), "=r"(data2), "=r"(flag2) : "l"(ptr)); } while ((flag1 != flag) || (flag2 != flag)); } } __syncthreads(); for (int i = threadIdx.x; i < elts / 2; i += blockDim.x) { float result = 0.f; for (int pe = 0; pe < nlocalpes; pe++) { result += src[pe * elts + i * 2]; } // src[local_reduc_offset + i * local_reduc_factor] = result; src[i] = result; } if (nodes == 1) { __syncthreads(); return; } } } template inline __device__ void drelu_with_bitmask_consumption(float *const dy_math, void *relu_bitmask, int const offset); template <> inline __device__ void drelu_with_bitmask_consumption<4>(float *const dy_math, void *relu_bitmask, int const offset) { uint8_t mask = static_cast(relu_bitmask)[offset/2]; if(offset % 2 == 1) {mask = mask >> 4; } #pragma unroll for (int j = 0; j < 4; ++j) { bool rectified = mask & (1 << j); if (!rectified) { dy_math[j] = 0; } } } template <> inline __device__ void drelu_with_bitmask_consumption<8>(float *const dy_math, void *relu_bitmask, int const offset) { uint8_t mask = static_cast(relu_bitmask)[offset]; #pragma unroll for (int j = 0; j < 8; ++j) { bool rectified = mask & (1 << j); if (!rectified) { dy_math[j] = 0; } } } template <> inline __device__ void drelu_with_bitmask_consumption<16>(float *const dy_math, void *relu_bitmask, int const offset) { uint16_t mask = static_cast(relu_bitmask)[offset]; #pragma unroll for (int j = 0; j < 16; ++j) { bool rectified = mask & (1 << j); if (!rectified) { dy_math[j] = 0; } } } template static inline __device__ void bwd_update(float (&dscale)[N], float (&dbias)[N], const float (&dy)[N], const float (&x)[N], const float (&mean)[N], float inv_count) { #pragma unroll for (int j = 0; j < N; ++j) { float delta0 = dy[j] - dbias[j]; dbias[j] += delta0 * inv_count; delta0 = (dy[j] * (x[j] - mean[j])) - dscale[j]; dscale[j] += delta0 * inv_count; } } template static inline __device__ void bwd_dx(float (&dx)[N], const float (&dy)[N], const float (&var)[N], const float (&x)[N], const float (&mean)[N], const float (&dscale)[N], const float (&dbias)[N], float inv_count) { #pragma unroll for (int j = 0; j < N; ++j) { float tmp1 = dy[j] - (dbias[j] * inv_count); float tmp2 = dscale[j] * inv_count; float tmp3 = x[j] - mean[j]; dx[j] = var[j] * (tmp1 - (tmp2 * tmp3)); } } static inline __device__ void scaled_write_to_gmem(int *gmem, int idx, const float (&src)[4], const float coeff) { float tmpf[4]; #pragma unroll for (int i = 0; i < 4; i++) { tmpf[i] = src[i] * coeff; } int tmpa[2]; from_float(tmpa, tmpf); int2 tmp; tmp.x = tmpa[0]; tmp.y = tmpa[1]; reinterpret_cast(&gmem[2 * idx])[0] = tmp; } static inline __device__ void scaled_write_to_gmem(int *gmem, int idx, const float (&src)[8], const float coeff) { float tmpf[8]; #pragma unroll for (int i = 0; i < 8; i++) { tmpf[i] = src[i] * coeff; } int tmpa[4]; from_float(tmpa, tmpf); int4 tmp; tmp.x = tmpa[0]; tmp.y = tmpa[1]; tmp.z = tmpa[2]; tmp.w = tmpa[3]; reinterpret_cast(&gmem[4 * idx])[0] = tmp; } static inline __device__ void scaled_write_to_gmem(float *gmem, int idx, const float (&src)[4], const float coeff) { reinterpret_cast(&gmem[4 * idx])[0] = make_float4(src[0] * coeff, src[1] * coeff, src[2] * coeff, src[3] * coeff); } static inline __device__ void scaled_write_to_gmem(float *gmem, int idx, const float (&src)[8], const float coeff) { reinterpret_cast(&gmem[8 * idx])[0] = make_float4(src[0] * coeff, src[1] * coeff, src[2] * coeff, src[3] * coeff); reinterpret_cast(&gmem[8 * idx + 4])[0] = make_float4(src[4] * coeff, src[5] * coeff, src[6] * coeff, src[7] * coeff); } static inline __device__ void scaled_write_to_gmem(float *gmem, int idx, const float (&src)[16], const float coeff) { reinterpret_cast(&gmem[16 * idx])[0] = make_float4(src[0] * coeff, src[1] * coeff, src[2] * coeff, src[3] * coeff); reinterpret_cast(&gmem[16 * idx + 4])[0] = make_float4(src[4] * coeff, src[5] * coeff, src[6] * coeff, src[7] * coeff); reinterpret_cast(&gmem[16 * idx + 8])[0] = make_float4(src[8] * coeff, src[9] * coeff, src[10] * coeff, src[11] * coeff); reinterpret_cast(&gmem[16 * idx + 12])[0] = make_float4(src[12] * coeff, src[13] * coeff, src[14] * coeff, src[15] * coeff); } template inline __device__ void relu_bwd(float (&dy)[N], const float (&x)[N], const float (&mean_var_scale_bias)[N], const float (&var_scale)[N], bool valid_data, float relu_upper_clip, float relu_lower_clip) { #pragma unroll for (int j = 0; j < N; ++j) { float y = (x[j] * var_scale[j]) + mean_var_scale_bias[j]; // Bug 4718275: we should consider the type of the virtual tensors before relu y = cuGet(y); if (valid_data) { if (cuLessEqual(y, relu_lower_clip) || cuGreaterEqual(y, relu_upper_clip)) { dy[j] = 0.f; } } } } template inline __device__ void swish_bwd(float (&dy)[N], const float (&x)[N], const float (&mean_var_scale_bias)[N], const float (&var_scale)[N], float beta, bool valid_data) { #pragma unroll for (int j = 0; j < N; ++j) { float y_bn = (x[j] * var_scale[j]) + mean_var_scale_bias[j]; float sigmoid_beta_x = __frcp_rn(1.0f + __expf(-(beta * y_bn))); float y = y_bn * sigmoid_beta_x; float beta_y = beta * y; float dy_by_dx = beta_y + sigmoid_beta_x * (1.0f - beta_y); if (valid_data) { dy[j] = dy[j] * dy_by_dx; } } } extern "C" __global__ __launch_bounds__(THREADS_PER_CTA, DESIRED_OCCUPANCY) void nhwc_batch_norm_bwd(NhwcBatchNormBwdParams params) { #if __CUDA_ARCH__ >= CUDNN_SM_80 const int THREADS_PER_PIXEL = C_ELEMENTS_PER_CTA / ELEMENTS_PER_LDG; // The number of pixels loaded in a single LDG. const int PIXELS_PER_LDG = THREADS_PER_CTA / THREADS_PER_PIXEL; // The number of pixels computed per CTA stored in registers. const int PIXELS_PER_CTA_IN_REGISTERS = PIXELS_PER_THREAD_IN_REGISTERS * PIXELS_PER_LDG; const int PIXELS_PER_CTA_IN_SMEM = PIXELS_PER_THREAD_IN_SMEM * PIXELS_PER_LDG; // Shared memory to do CTA-wide parallel sums. __shared__ T_MATH smem[THREADS_PER_PIXEL * (THREADS_PER_CTA / THREADS_PER_WARP) * ELEMENTS_PER_LDG]; // The adapter for the storage. typedef PackedStorage PackedStorageGradient_; typedef PackedStorage PackedStorageForwardInput_; // The data type for packed storage in SMEM. typedef typename PackedStorageGradient_::Type PackedStorageGradientType; typedef typename PackedStorageForwardInput_::Type PackedStorageForwardInputType; // The number of elements in the packed storage. const int PACKED_ELEMENTS_PER_LDG = PackedStorageGradient_::PACKED_ELEMENTS_PER_LDG; // Registers to keep the data live for the persistent approach. PackedStorageForwardInputType x_storage[PIXELS_PER_THREAD_IN_REGISTERS][PACKED_ELEMENTS_PER_LDG]; PackedStorageGradientType dy_storage[PIXELS_PER_THREAD_IN_REGISTERS][PACKED_ELEMENTS_PER_LDG]; // Shared memory buffer to store the extra pixels. // Edited by Fei // extern __shared__ PackedStorageGradientType smem_storage_packed[]; extern __shared__ __align__(sizeof(PackedStorageGradientType)) unsigned char smem_storage_packed_[]; PackedStorageGradientType *smem_gradient_storage_packed = reinterpret_cast(smem_storage_packed_); PackedStorageForwardInputType *smem_forward_input_storage_packed = reinterpret_cast(smem_storage_packed_); float descale_dy = 1.0f; float descale_x = 1.0f; float scale_add = 1.0f; float dadd_amax_in_thread = 0.0f; float scale_dx = 1.0f; float dx_amax_in_thread = 0.0f; const float relu_upper_clip = params.relu_upper_clip; const float relu_lower_clip = params.relu_lower_clip; acqblk(); if (isFP8) { descale_dy = ::ldg(params.input_dy_descale); descale_x = ::ldg(params.input_x_descale); scale_dx = ::ldg(params.output_dx_scale); if (HAS_ADD) { scale_add = ::ldg(params.add_scale); } } for (int c_blk_index = blockIdx.y; c_blk_index < params.c_blks; c_blk_index += gridDim.y) { // The position in the NHW dimension where the CTA starts. int cta_nhw_regs = blockIdx.x * PIXELS_PER_CTA_IN_REGISTERS; // The position in the NHW dimension where the CTA starts for the portion in SMEM. int cta_nhw_smem = blockIdx.x * PIXELS_PER_CTA_IN_SMEM; // Compute the NHW coordinate of the thread in the CTA. const int thread_in_cta_nhw = threadIdx.x / THREADS_PER_PIXEL; // The position in the C dimension where the CTA starts. const int cta_c = c_blk_index * C_ELEMENTS_PER_CTA; // Compute the C coordinate of the thread in the CTA. const int thread_in_cta_c = threadIdx.x % THREADS_PER_PIXEL; // Compute the C coordinate of the thread. const int thread_c = cta_c + thread_in_cta_c * ELEMENTS_PER_LDG; // Is the thread working on a valid C dimension? const int is_valid_c = thread_c < params.c; // Registers to store the mean used for entire duration T_MATH mean[ELEMENTS_PER_LDG]; zero(mean); if (is_valid_c) { read_from_gmem(mean, params.gmem_saved_mean, thread_c / ELEMENTS_PER_LDG); } // Registers to store the mean/var/scale/bias used for the entire duration // Register usage optimizations: // 1. Can combine bias - (mean * var * scale) into a single register // 2. Can combine var * scale into a single register float varscale[ELEMENTS_PER_LDG]; float tmp[ELEMENTS_PER_LDG]; float mean_var_scale_bias[ELEMENTS_PER_LDG]; if(!HAS_BITMASK && (HAS_RELU || HAS_SWISH)){ zero(varscale); if (is_valid_c) { read_from_gmem(varscale, params.gmem_saved_var, thread_c/ELEMENTS_PER_LDG); } zero(tmp); if (is_valid_c) { read_from_gmem(tmp, params.gmem_scale, thread_c/ELEMENTS_PER_LDG); } multiply(varscale, tmp); zero(tmp); if (is_valid_c) { read_from_gmem(tmp, params.gmem_bias, thread_c/ELEMENTS_PER_LDG); } #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { mean_var_scale_bias[i] = tmp[i] - (mean[i] * varscale[i]); } } // accumulation related registers T_MATH count = 0.f, dscale[ELEMENTS_PER_LDG], dbias[ELEMENTS_PER_LDG]; zero(dscale); zero(dbias); // The number of elements loaded by this CTA. int cta_count = 0; // The base pointers to load from. const T_FORWARD_INPUT_ELEM *gmem_src = &((T_FORWARD_INPUT_ELEM *)params.gmem_src)[thread_c]; const T_ELEM *gmem_dy = &((T_ELEM *)params.gmem_dy)[thread_c]; T_ELEM *gmem_add = nullptr; if (HAS_ADD) { gmem_add = &(static_cast(params.gmem_add))[thread_c]; } // outer loops int OUTER_LOOPS = OUTER_LOOPS_ == 1 ? 1 : params.outer_loops; // Load the batch of elements. Compute sum across them const int pixels_per_iteration = PIXELS_PER_CTA_IN_REGISTERS * gridDim.x; if (OUTER_LOOPS_ != 1) { // We cannot load everything to store persistently, so let's makes sure registers and // smem are fully utilized int offset = params.nhw - pixels_per_iteration * OUTER_LOOPS - PIXELS_PER_CTA_IN_SMEM * gridDim.x; cta_nhw_regs += offset; cta_nhw_smem += offset; } // The elements to load and store in SMEM. int smem_nhw = OUTER_LOOPS * pixels_per_iteration + cta_nhw_smem; // Load elements from SMEM, update the CTA count. int pixels_in_smem = min(PIXELS_PER_CTA_IN_SMEM, params.nhw - smem_nhw); if (pixels_in_smem > 0) { cta_count += pixels_in_smem; for (int i = 0; i < PIXELS_PER_THREAD_IN_SMEM; ++i) { const int idx = smem_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; const bool is_valid_nhw = static_cast(idx) < static_cast(params.nhw); bool is_pixel_valid = (is_valid_nhw && is_valid_c); PackedStorageForwardInputType x_storage_local[PACKED_ELEMENTS_PER_LDG]; PackedStorageGradientType dy_storage_local[PACKED_ELEMENTS_PER_LDG]; // Replaced by Fei, was zero_array() zero(x_storage_local); zero(dy_storage_local); if (is_pixel_valid) { ldg_stream(x_storage_local, &gmem_src[idx * params.c]); ldg_stream(dy_storage_local, &gmem_dy[idx * params.c]); } // The offset to store in SMEM. int offset = i * THREADS_PER_CTA * PACKED_ELEMENTS_PER_LDG; // Store in SMEM. write_to_smem(&smem_forward_input_storage_packed[offset], threadIdx.x, x_storage_local); offset += PIXELS_PER_THREAD_IN_SMEM * THREADS_PER_CTA * PACKED_ELEMENTS_PER_LDG; write_to_smem(&smem_gradient_storage_packed[offset], threadIdx.x, dy_storage_local); T_MATH x_math[ELEMENTS_PER_LDG], dy_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage_local); to_float(dy_math, dy_storage_local); if (HAS_BITMASK && HAS_RELU){ if (is_valid_nhw && is_valid_c) { drelu_with_bitmask_consumption( dy_math, params.gmem_mask, (idx * params.c)/ELEMENTS_PER_LDG + c_blk_index * THREADS_PER_PIXEL + thread_in_cta_c); } } else if(!HAS_BITMASK && HAS_RELU){ relu_bwd(dy_math, x_math, mean_var_scale_bias, varscale, is_pixel_valid, relu_upper_clip, relu_lower_clip); } else if(!HAS_BITMASK && HAS_SWISH){ swish_bwd(dy_math, x_math, mean_var_scale_bias, varscale, params.swish_beta, is_pixel_valid); } // Apply the DQs as BN's bwd update will happen next if (isFP8) { #pragma unroll for (int scale_idx = 0; scale_idx < ELEMENTS_PER_LDG; scale_idx++) { x_math[scale_idx] = x_math[scale_idx] * descale_x; dy_math[scale_idx] = dy_math[scale_idx] * descale_dy; } } // Update the count. count += is_pixel_valid; // Invert the count. T_MATH inv_count = is_pixel_valid ? 1.f / count : 0.f; bwd_update(dscale, dbias, dy_math, x_math, mean, inv_count); // Store dAdd if (HAS_ADD) { if(is_pixel_valid){ // Bug 4718275: we should consider the type of the virtual tensors before relu if (HAS_RELU) { #pragma unroll for (int32_t quantize_idx = 0; quantize_idx < ELEMENTS_PER_LDG; quantize_idx++) { dy_math[quantize_idx] = cuGet(dy_math[quantize_idx]); } } // Apply Q and store to gmem if (isFP8) { #pragma unroll for (int scale_idx = 0; scale_idx < ELEMENTS_PER_LDG; scale_idx++) { dadd_amax_in_thread = fmaxf(dadd_amax_in_thread, fabsf(dy_math[scale_idx])); dy_math[scale_idx] = dy_math[scale_idx] * scale_add; } } stg_stream(&gmem_add[idx * params.c], dy_math); } } } } #pragma unroll 1 for (int loop_i = 0; loop_i < OUTER_LOOPS; ++loop_i) { // The nhw position. int nhw_regs = cta_nhw_regs + loop_i * pixels_per_iteration; // Update the number of elements loaded by this CTA. TODO: Skip if <= 0!!! cta_count += max(0, min(PIXELS_PER_CTA_IN_REGISTERS, params.nhw - nhw_regs)); // Read the elements from memory. T_MATH is_valid[PIXELS_PER_THREAD_IN_REGISTERS]; #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = nhw_regs + thread_in_cta_nhw + i * PIXELS_PER_LDG; zero(x_storage[i]); zero(dy_storage[i]); is_valid[i] = 0.f; const bool is_valid_nhw = static_cast(idx) < static_cast(params.nhw); if (is_valid_nhw && is_valid_c) { if (loop_i == OUTER_LOOPS - 1) { ldg_stream(x_storage[i], &gmem_src[idx * params.c]); ldg_stream(dy_storage[i], &gmem_dy[idx * params.c]); } else { ldg(x_storage[i], &gmem_src[idx * params.c]); ldg(dy_storage[i], &gmem_dy[idx * params.c]); } is_valid[i] = 1.f; } } // Do the math. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = nhw_regs + thread_in_cta_nhw + i * PIXELS_PER_LDG; const bool is_valid_nhw = static_cast(idx) < static_cast(params.nhw); // Convert to T_MATH and update T_MATH x_math[ELEMENTS_PER_LDG], dy_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage[i]); to_float(dy_math, dy_storage[i]); if (HAS_BITMASK && HAS_RELU) { if(is_valid_nhw && is_valid_c){ drelu_with_bitmask_consumption( dy_math, params.gmem_mask, (idx * params.c)/ELEMENTS_PER_LDG + c_blk_index * THREADS_PER_PIXEL + thread_in_cta_c); } }else if(!HAS_BITMASK && HAS_RELU){ relu_bwd(dy_math, x_math, mean_var_scale_bias, varscale, is_valid_nhw && is_valid_c, relu_upper_clip, relu_lower_clip); } else if(!HAS_BITMASK && HAS_SWISH){ swish_bwd(dy_math, x_math, mean_var_scale_bias, varscale, params.swish_beta, is_valid_nhw && is_valid_c); } // Apply the DQs as BN's bwd update will happen next if (isFP8) { #pragma unroll for (int math_idx = 0; math_idx < ELEMENTS_PER_LDG; math_idx++) { x_math[math_idx] = x_math[math_idx] * descale_x; dy_math[math_idx] = dy_math[math_idx] * descale_dy; } } // Update the count. count += is_valid[i]; // Invert the count. T_MATH inv_count = is_valid[i] ? 1.f / count : 0.f; bwd_update(dscale, dbias, dy_math, x_math, mean, inv_count); // Store dAdd if (HAS_ADD && is_valid[i]) { // Apply Q and store to gmem if (isFP8) { #pragma unroll for (int math_idx = 0; math_idx < ELEMENTS_PER_LDG; math_idx++) { dadd_amax_in_thread = fmaxf(dadd_amax_in_thread, fabsf(dy_math[math_idx])); dy_math[math_idx] = dy_math[math_idx] * scale_add; } } stg_stream(&gmem_add[idx * params.c], dy_math); } } } // We scale the mean by the number of elements. It brings more stability. #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { dbias[i] *= count; dscale[i] *= count; } // dscale parallel sum ParallelSums::dispatch( smem, dscale, thread_in_cta_nhw); __syncthreads(); // The values in shared memory correspond to the CTA-wide sums. read_from_smem(dscale, smem, thread_in_cta_c); __syncthreads(); // dbias parallel sum ParallelSums::dispatch( smem, dbias, thread_in_cta_nhw); __syncthreads(); // The values in shared memory correspond to the CTA-wide sums. read_from_smem(dbias, smem, thread_in_cta_c); __syncthreads(); // The workspace in global memory is distributed across the different CTA. int gmem_sums_offset = c_blk_index * gridDim.x * C_ELEMENTS_PER_CTA * 2; // Write the data for the CTA to global memory. T_MATH *gmem_sums = ¶ms.gmem_sums[gmem_sums_offset]; if (threadIdx.x < THREADS_PER_PIXEL) { const int idx = blockIdx.x * THREADS_PER_PIXEL + threadIdx.x; write_to_gmem(&gmem_sums[0], idx, dscale); write_to_gmem(&gmem_sums[C_ELEMENTS_PER_CTA * gridDim.x], idx, dbias); } // The counters to count how many CTAs have retired at this point. // A given cta uses the same counter every other time through the outer loop. int *gmem_retired_ctas = ¶ms.gmem_retired_ctas[c_blk_index % (2 * gridDim.y)]; inter_block_sync(gmem_retired_ctas, gridDim.x, blockIdx.x == 0); // Reset the accumulators for global summation zero(dscale); zero(dbias); // Build the global accumulation #pragma unroll 1 for (int idx = threadIdx.x; idx < THREADS_PER_PIXEL * gridDim.x; idx += THREADS_PER_CTA) { T_MATH tmp1[ELEMENTS_PER_LDG], tmp2[ELEMENTS_PER_LDG]; read_from_gmem(tmp1, gmem_sums, idx); read_from_gmem(tmp2, gmem_sums + C_ELEMENTS_PER_CTA * gridDim.x, idx); #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG; ++i) { dscale[i] += tmp1[i]; dbias[i] += tmp2[i]; } } // dscale parallel sum ParallelSums::dispatch( smem, dscale, thread_in_cta_nhw); __syncthreads(); // The values in shared memory correspond to the CTA-wide sums. read_from_smem(dscale, smem, thread_in_cta_c); __syncthreads(); // dbias parallel sum ParallelSums::dispatch( smem, dbias, thread_in_cta_nhw); __syncthreads(); // The values in shared memory correspond to the CTA-wide sums. read_from_smem(dbias, smem, thread_in_cta_c); bool is_valid_for_saving = is_valid_c && blockIdx.x == 0 && thread_in_cta_nhw == 0; if (SYNC_ITERS) { int node, nodes, group_rank_offset; int dev_id_in_group = params.device % params.bn_group_per_node; get_bn_group_info(params.device, params.bn_group, params.bn_group_per_node, node, nodes, group_rank_offset); // uint32_t *flag_addr = reinterpret_cast(params.nvshmem_buffer) + // (params.bn_group_per_node + nodes + 2) * 2 * 2 * 2 * params.c; T_MATH *nvshmem_buff = params.peerStatBuffers[dev_id_in_group]; T_MATH *c_block_nvshmem_buffer = nvshmem_buff + dev_id_in_group * 2 * 2 * params.c + c_blk_index * 2 * C_ELEMENTS_PER_CTA; if (is_valid_for_saving) { #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG / 2; ++i) { T_MATH tmp_dscale[4] = {dscale[2 * i], 0.f, dscale[2 * i + 1], 0.f}; write_to_gmem(c_block_nvshmem_buffer + thread_in_cta_c * ELEMENTS_PER_LDG * 2, i, tmp_dscale); } #pragma unroll for (int i = 0; i < ELEMENTS_PER_LDG / 2; ++i) { T_MATH tmp_dbias[4] = {dbias[2 * i], 0.f, dbias[2 * i + 1], 0.f}; write_to_gmem( c_block_nvshmem_buffer + params.c * 2 + thread_in_cta_c * ELEMENTS_PER_LDG * 2, i, tmp_dbias); } } cooperative_groups::grid_group g = cooperative_groups::this_grid(); // Sync all the CTAs // Technically, we could sync only the warps with blockIdx.x == 0 and warp_id == 0 g.sync(); // Sum allreduce ll_hierarchical_allreduce(nvshmem_buff, params.peerStatBuffers, 2 * 2 * params.c, dev_id_in_group, params.bn_group_per_node, node, nodes, group_rank_offset); // Sync all the CTAs g.sync(); // Bug 4245763: fixed racing condition by adding threadfence after g.sync() to resolve mismatches. __threadfence(); // int offset = // (params.bn_group_per_node + nodes + 1) * 2 * 2 * params.c + c_blk_index * 2 * C_ELEMENTS_PER_CTA; int offset = c_blk_index * C_ELEMENTS_PER_CTA; if (ELEMENTS_PER_LDG * thread_in_cta_c < params.c){ read_from_gmem(dscale, nvshmem_buff + offset, thread_in_cta_c); read_from_gmem(dbias, nvshmem_buff + offset + params.c, thread_in_cta_c); } } // inv-var T_MATH var[ELEMENTS_PER_LDG]; zero(var); if (is_valid_c) { read_from_gmem(var, params.gmem_saved_var, thread_c / ELEMENTS_PER_LDG); } // Normalize the dscale. multiply(dscale, var); // store dscale/dbias if (is_valid_for_saving) { if (SYNC_ITERS) { scaled_write_to_gmem(params.gmem_dscale, thread_c / ELEMENTS_PER_LDG, dscale, params.wgrad_coeff); scaled_write_to_gmem(params.gmem_dbias, thread_c / ELEMENTS_PER_LDG, dbias, params.wgrad_coeff); } else { write_to_gmem(params.gmem_dscale, thread_c / ELEMENTS_PER_LDG, dscale); write_to_gmem(params.gmem_dbias, thread_c / ELEMENTS_PER_LDG, dbias); } } // scale T_MATH scale[ELEMENTS_PER_LDG]; zero(scale); if (is_valid_c) { read_from_gmem(scale, params.gmem_scale, thread_c / ELEMENTS_PER_LDG); } // Further normalize the dscale to be used in dx calculation multiply(dscale, var); // scale the inv-var as well, afterwards multiply(var, scale); // inverse count T_MATH inv_count = params.svar_inv_count; // The base pointer to write to. T_ELEM *const gmem_dst = &((T_ELEM *)params.gmem_dst)[thread_c]; // Store the elements in registers. #pragma unroll 1 for (int loop_i = OUTER_LOOPS - 1; loop_i >= 0; --loop_i) { // The value for nhw. int out_nhw = cta_nhw_regs + loop_i * pixels_per_iteration; // Normalize the elements and write to memory. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = out_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; // Convert to T_MATH. T_MATH x_math[ELEMENTS_PER_LDG], dy_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage[i]); to_float(dy_math, dy_storage[i]); // dY in gmem are NOT drelu-ed. Access bit mask again and apply drelu. bool const is_valid_nhw = ((unsigned int)idx < (unsigned int)params.nhw); if (HAS_BITMASK && HAS_RELU){ if(is_valid_nhw && is_valid_c){ drelu_with_bitmask_consumption( dy_math, params.gmem_mask, (idx * params.c)/ELEMENTS_PER_LDG + c_blk_index * THREADS_PER_PIXEL + thread_in_cta_c); } } else if(!HAS_BITMASK && HAS_RELU){ relu_bwd(dy_math, x_math, mean_var_scale_bias, varscale, is_valid_nhw && is_valid_c, relu_upper_clip, relu_lower_clip); } else if(!HAS_BITMASK && HAS_SWISH){ swish_bwd(dy_math, x_math, mean_var_scale_bias, varscale, params.swish_beta, is_valid_nhw && is_valid_c); } // DQs were never applied to dY in RF or gmem. Apply them again. if (isFP8) { #pragma unroll for (int j = 0; j < ELEMENTS_PER_LDG; j++) { x_math[j] = x_math[j] * descale_x; dy_math[j] = dy_math[j] * descale_dy; } } T_MATH dx[ELEMENTS_PER_LDG]; bwd_dx(dx, dy_math, var, x_math, mean, dscale, dbias, inv_count); // Write back. if (is_valid_nhw && is_valid_c) { if (isFP8) { #pragma unroll for (int scale_idx = 0; scale_idx < ELEMENTS_PER_LDG; ++scale_idx) { dx_amax_in_thread = fmaxf(dx_amax_in_thread, fabsf(dx[scale_idx])); dx[scale_idx] = dx[scale_idx] * scale_dx; } } stg_stream(&gmem_dst[idx * params.c], dx); } } // The next value of nhw. out_nhw -= pixels_per_iteration; // Read the next elements from memory. #pragma unroll for (int i = 0; i < PIXELS_PER_THREAD_IN_REGISTERS; ++i) { const int idx = out_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; if (((unsigned int)idx < (unsigned int)params.nhw) && is_valid_c) { ldg_stream(x_storage[i], &gmem_src[idx * params.c]); ldg_stream(dy_storage[i], &gmem_dy[idx * params.c]); } } } // Normalize the elements from SMEM and write them out. if (pixels_in_smem > 0) { for (int i = 0; i < PIXELS_PER_THREAD_IN_SMEM; ++i) { const int idx = smem_nhw + thread_in_cta_nhw + i * PIXELS_PER_LDG; bool const is_valid_nhw = ((unsigned int)idx < (unsigned int)params.nhw); const bool is_valid = is_valid_nhw && is_valid_c; if (is_valid) { // Read from SMEM. int offset = i * THREADS_PER_CTA * PACKED_ELEMENTS_PER_LDG; PackedStorageForwardInputType x_storage_local[PACKED_ELEMENTS_PER_LDG]; PackedStorageGradientType dy_storage_local[PACKED_ELEMENTS_PER_LDG]; read_from_smem(x_storage_local, &smem_forward_input_storage_packed[offset], threadIdx.x); offset += PIXELS_PER_THREAD_IN_SMEM * THREADS_PER_CTA * PACKED_ELEMENTS_PER_LDG; read_from_smem(dy_storage_local, &smem_gradient_storage_packed[offset], threadIdx.x); T_MATH x_math[ELEMENTS_PER_LDG], dy_math[ELEMENTS_PER_LDG]; to_float(x_math, x_storage_local); to_float(dy_math, dy_storage_local); // dY in gmem are NOT drelu-ed. Access bit mask again and apply drelu. if (HAS_BITMASK && HAS_RELU) { drelu_with_bitmask_consumption( dy_math, params.gmem_mask, (idx * params.c)/ELEMENTS_PER_LDG + c_blk_index * THREADS_PER_PIXEL + thread_in_cta_c); }else if(!HAS_BITMASK && HAS_RELU){ relu_bwd(dy_math, x_math, mean_var_scale_bias, varscale, is_valid, relu_upper_clip, relu_lower_clip); } else if(!HAS_BITMASK && HAS_SWISH){ swish_bwd(dy_math, x_math, mean_var_scale_bias, varscale, params.swish_beta, is_valid); } if (isFP8) { #pragma unroll for (int j = 0; j < ELEMENTS_PER_LDG; j++) { x_math[j] = x_math[j] * descale_x; dy_math[j] = dy_math[j] * descale_dy; } } T_MATH dx[ELEMENTS_PER_LDG]; bwd_dx(dx, dy_math, var, x_math, mean, dscale, dbias, inv_count); if (isFP8) { #pragma unroll for (int j = 0; j < ELEMENTS_PER_LDG; ++j) { dx_amax_in_thread = fmaxf(dx_amax_in_thread, fabsf(dx[j])); dx[j] = dx[j] * scale_dx; } } // Write back. stg_stream(&gmem_dst[idx * params.c], dx); } } } // TODO: We're about to start on the next c-blk. Needed? __syncthreads(); } preexit(); if (isFP8) { int constexpr WARPS_PER_CTA = THREADS_PER_CTA / THREADS_PER_WARP; // Reuses the static smem allocated for inter-CTA reduction when gathering stats float *dx_amax_smem = smem; float *dadd_amax_smem = dx_amax_smem + WARPS_PER_CTA; // do reduction in registers #pragma unroll for (int t_i = THREADS_PER_WARP / 2; t_i > 0; t_i /= 2) { dx_amax_in_thread = fmaxf(dx_amax_in_thread, __shfl_down_sync(0xffffffff, dx_amax_in_thread, t_i, 32)); dadd_amax_in_thread = fmaxf(dadd_amax_in_thread, __shfl_down_sync(0xffffffff, dadd_amax_in_thread, t_i, 32)); } // do reduction in shared mem int lane_id = threadIdx.x % THREADS_PER_WARP; int warp_id = threadIdx.x / THREADS_PER_WARP; // write each warps amax in smem if (lane_id == 0) { dx_amax_smem[warp_id] = dx_amax_in_thread; dadd_amax_smem[warp_id] = dadd_amax_in_thread; } __syncthreads(); if (warp_id == 0) { #pragma unroll for (int s = WARPS_PER_CTA / 2; s > 0; s >>= 1) { if (lane_id < s) { dx_amax_smem[lane_id] = fmaxf(dx_amax_smem[lane_id], dx_amax_smem[lane_id + s]); dadd_amax_smem[lane_id] = fmaxf(dadd_amax_smem[lane_id], dadd_amax_smem[lane_id + s]); } __syncwarp(); } if (threadIdx.x == 0) { // Note that as amax is always positive, the below atomixMax skips the branch for // handling negative values. float dx_old = __int_as_float(::atomicMax((int *)params.dx_amax, __float_as_int(dx_amax_smem[0]))); if (HAS_ADD) float dadd_old = __int_as_float(::atomicMax((int *)params.add_amax, __float_as_int(dadd_amax_smem[0]))); } } } #endif } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } extern "C" __global__ void wgrad2d_shmem_tiling(ConvInfo conv_info, const strideA_t dwStrideA, const T_ELEM *xData, const T_ELEM *dyData, T_ELEM *dwData, T_MATH alpha, T_MATH beta) { const int32_t G = conv_info.groupCount; const int32_t N = conv_info.x_dimA[0]; const int32_t C = conv_info.w_dimA[1]; const int32_t H = conv_info.x_dimA[2]; const int32_t W = conv_info.x_dimA[3]; const int32_t K = conv_info.w_dimA[0] / G; const int32_t P = conv_info.y_dimA[2]; const int32_t Q = conv_info.y_dimA[3]; const int32_t paddingTop = conv_info.padA[0]; const int32_t paddingLeft = conv_info.padA[1]; const int32_t dyStrideG = conv_info.y_strideA[1] * K; const int32_t xStrideG = conv_info.x_strideA[1] * C; const int32_t dwStrideS = dwStrideA.data[3]; const int32_t dwStrideR = dwStrideA.data[2]; const int32_t dwStrideC = dwStrideA.data[1]; const int32_t dwStrideK = dwStrideA.data[0]; const int32_t dwStrideG = dwStrideK * K; const int32_t THREADS_PER_WARP = 32; const int32_t PQ_PER_WARP = P_PER_WARP * Q_PER_WARP; const int32_t H_PER_WARP = (P_PER_WARP - 1) * STRIDE_H + (R - 1) * DILATION_H + 1; const int32_t W_PER_WARP = (Q_PER_WARP - 1) * STRIDE_W + (S - 1) * DILATION_W + 1; const int32_t HW_PER_WARP = H_PER_WARP * W_PER_WARP; const int32_t THREADS_PER_CTA = THREADS_PER_WARP * REDUCTION_RATIO; const int32_t Q_PER_THREAD_PER_N = (PQ_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t W_PER_THREAD_PER_N = (HW_PER_WARP + THREADS_PER_CTA - 1) / THREADS_PER_CTA; const int32_t Q_PER_THREAD = Q_PER_THREAD_PER_N * REDUCTION_RATIO; const int32_t W_PER_THREAD = W_PER_THREAD_PER_N * REDUCTION_RATIO; // GridDim.x : CK // GridDim.y : G // GridDim.z : 1 // BlockDim.x : THREADS_PER_WARP // BlockDim.y : REDUCTION_RATIO=WARPS_PER_CTA // BlockDim.z : 1 const int32_t g = blockIdx.y; const int32_t k = blockIdx.x / C; const int32_t c = blockIdx.x - k * C; const int32_t threadId = threadIdx.x + THREADS_PER_WARP * threadIdx.y; // Prolog int32_t nBegin = 0; int32_t nEnd = min(REDUCTION_RATIO, N); T_ELEM prefetchDy[Q_PER_THREAD]; T_ELEM prefetchX[W_PER_THREAD]; // Prefetch Dy int32_t pBegin = 0; int32_t pEnd = min(P_PER_WARP, P); int32_t qBegin = 0; int32_t qEnd = min(Q_PER_WARP, Q); int32_t p, q; int32_t pqIndex; bool pqValid; long long offset = g * dyStrideG + k * conv_info.y_strideA[1] + nBegin * conv_info.y_strideA[0]; const T_ELEM *dyPtrBase = dyData + offset; const T_ELEM *dyPtr = dyPtrBase; int32_t pArray[Q_PER_THREAD_PER_N]; int32_t qArray[Q_PER_THREAD_PER_N]; int32_t nArray[REDUCTION_RATIO]; for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { pqIndex = threadId + qIndex * THREADS_PER_CTA; p = pqIndex / Q_PER_WARP; q = pqIndex % Q_PER_WARP; pArray[qIndex] = p; qArray[qIndex] = q; p += pBegin; q += qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X int32_t hBegin = pBegin * STRIDE_H - paddingTop; int32_t hEnd = min(hBegin + H_PER_WARP, H); // make sure both hEnd and wEnd are not negative so we could set hwValid correctly via unsinged comparation hEnd = max(hEnd, 0); int32_t wBegin = qBegin * STRIDE_W - paddingLeft; int32_t wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); int32_t h, w; int32_t hwIndex; bool hwValid; offset = g * xStrideG + c * conv_info.x_strideA[1] + nBegin * conv_info.x_strideA[0]; const T_ELEM *xPtrBase = xData + offset; const T_ELEM *xPtr = xPtrBase; int32_t hArray[W_PER_THREAD_PER_N]; int32_t wArray[W_PER_THREAD_PER_N]; #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { hwIndex = threadId + wIndex * THREADS_PER_CTA; h = hwIndex / W_PER_WARP; w = hwIndex % W_PER_WARP; hArray[wIndex] = h; wArray[wIndex] = w; h += hBegin; w += wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS const int32_t MATH_ERROR_THREAD_PER_P = Q_PER_WARP / MATH_ERROR_Q_PER_THREAD; const int32_t MATH_ERROR_P_PER_THREAD = P_PER_WARP / (THREADS_PER_WARP / MATH_ERROR_THREAD_PER_P); const int32_t SMEM_ERROR_ROW_LENGTH = Q_PER_WARP + SHARED_MEMORY_PADDING_PER_Q; const int32_t SMEM_IMAGE_ROW_LENGTH = W_PER_WARP + SHARED_MEMORY_PADDING_PER_W; const int32_t ROWS_PER_PQ = (Q_PER_THREAD_PER_N * THREADS_PER_CTA + Q_PER_WARP - 1) / Q_PER_WARP; const int32_t ROWS_PER_HW = (W_PER_THREAD_PER_N * THREADS_PER_CTA + W_PER_WARP - 1) / W_PER_WARP; const int32_t ELEMENTS_PER_PQ = ROWS_PER_PQ * SMEM_ERROR_ROW_LENGTH; const int32_t ELEMENTS_PER_HW = ROWS_PER_HW * SMEM_IMAGE_ROW_LENGTH; __shared__ T_ELEM smemDy[ELEMENTS_PER_PQ * REDUCTION_RATIO]; __shared__ T_ELEM smemX[ELEMENTS_PER_HW * REDUCTION_RATIO]; int32_t pNumber = threadIdx.x / MATH_ERROR_THREAD_PER_P * MATH_ERROR_P_PER_THREAD; int32_t qNumber = threadIdx.x % MATH_ERROR_THREAD_PER_P * MATH_ERROR_Q_PER_THREAD; T_ELEM *smemDyLdsPtr = smemDy + (threadIdx.y * ELEMENTS_PER_PQ + pNumber * SMEM_ERROR_ROW_LENGTH + qNumber); T_ELEM *smemXLdsPtr = smemX + (threadIdx.y * ELEMENTS_PER_HW + pNumber * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qNumber * STRIDE_W); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } T_ELEM mathDy[MATH_ERROR_P_PER_THREAD * MATH_ERROR_Q_PER_THREAD]; float mathX[MATH_ERROR_Q_PER_THREAD * MATH_ERROR_Q_PER_THREAD * R * S]; float mathDw[R * S]; #pragma unroll for (int32_t i = 0; i < R * S; ++i) { mathDw[i] = 0.f; } __syncthreads(); // Main loop for (; nBegin < N;) { #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { p = pArray[qIndex] + pBegin; q = qArray[qIndex] + qBegin; pqValid = ((uint32_t)p < pEnd) && ((uint32_t)q < qEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (pqValid && (nArray[nIndex] < nEnd)) { offset = p * conv_info.y_strideA[2] + q * conv_info.y_strideA[3] + nIndex * conv_info.y_strideA[0]; prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = dyPtr[offset]; } else { prefetchDy[nIndex + qIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // Prefetch X #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { h = hArray[wIndex] + hBegin; w = wArray[wIndex] + wBegin; hwValid = ((uint32_t)h < (uint32_t)hEnd) && ((uint32_t)w < (uint32_t)wEnd); #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { if (hwValid && (nArray[nIndex] < nEnd)) { offset = h * conv_info.x_strideA[2] + w * conv_info.x_strideA[3] + nIndex * conv_info.x_strideA[0]; prefetchX[nIndex + wIndex * REDUCTION_RATIO] = xPtr[offset]; } else { prefetchX[nIndex + wIndex * REDUCTION_RATIO] = cuGet(0.f); } } } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet( smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } __syncthreads(); // Update Pointer qBegin += Q_PER_WARP; wBegin += Q_PER_WARP * STRIDE_W; if (qBegin >= Q) { qBegin = 0; pBegin += P_PER_WARP; wBegin = -paddingLeft; hBegin += P_PER_WARP * STRIDE_H; if (pBegin >= P) { pBegin = 0; hBegin = -paddingTop; nBegin += REDUCTION_RATIO; nEnd = min(nBegin + REDUCTION_RATIO, N); for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { nArray[nIndex] = nBegin + nIndex; } offset = REDUCTION_RATIO * conv_info.x_strideA[0]; xPtrBase += offset; offset = REDUCTION_RATIO * conv_info.y_strideA[0]; dyPtrBase += offset; xPtr = xPtrBase; dyPtr = dyPtrBase; } } qEnd = min(qBegin + Q_PER_WARP, Q); pEnd = min(pBegin + P_PER_WARP, P); wEnd = min(wBegin + W_PER_WARP, W); wEnd = max(wEnd, 0); hEnd = min(hBegin + H_PER_WARP, H); hEnd = max(hEnd, 0); // STS #pragma unroll for (int32_t qIndex = 0; qIndex < Q_PER_THREAD_PER_N; ++qIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemDy[(threadId + qIndex * THREADS_PER_CTA) / Q_PER_WARP * SMEM_ERROR_ROW_LENGTH + (threadId + qIndex * THREADS_PER_CTA) % Q_PER_WARP + nIndex * ELEMENTS_PER_PQ] = prefetchDy[nIndex + qIndex * REDUCTION_RATIO]; } } #pragma unroll for (int32_t wIndex = 0; wIndex < W_PER_THREAD_PER_N; ++wIndex) { #pragma unroll for (int32_t nIndex = 0; nIndex < REDUCTION_RATIO; ++nIndex) { smemX[(threadId + wIndex * THREADS_PER_CTA) / W_PER_WARP * SMEM_IMAGE_ROW_LENGTH + (threadId + wIndex * THREADS_PER_CTA) % W_PER_WARP + nIndex * ELEMENTS_PER_HW] = prefetchX[nIndex + wIndex * REDUCTION_RATIO]; } } __syncthreads(); } // LDS for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { if (MATH_ERROR_Q_PER_THREAD == 2) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 4) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 8) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; } else { if (MATH_ERROR_Q_PER_THREAD == 16) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; } else { if (MATH_ERROR_Q_PER_THREAD == 32) { reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[0] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[0]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[1] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[1]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[2] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[2]; reinterpret_cast(&mathDy[pIndex * MATH_ERROR_Q_PER_THREAD])[3] = reinterpret_cast(&smemDyLdsPtr[pIndex * SMEM_ERROR_ROW_LENGTH])[3]; } else { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD] = smemDyLdsPtr[qIndex + pIndex * SMEM_ERROR_ROW_LENGTH]; } } } } } } } for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] = cuGet(smemXLdsPtr[pIndex * STRIDE_H * SMEM_IMAGE_ROW_LENGTH + qIndex * STRIDE_W + rIndex * DILATION_H * SMEM_IMAGE_ROW_LENGTH + sIndex * DILATION_W]); } } } } // MATH for (int32_t pIndex = 0; pIndex < MATH_ERROR_P_PER_THREAD; ++pIndex) { for (int32_t qIndex = 0; qIndex < MATH_ERROR_Q_PER_THREAD; ++qIndex) { for (int32_t rIndex = 0; rIndex < R; ++rIndex) { for (int32_t sIndex = 0; sIndex < S; ++sIndex) { mathDw[sIndex + rIndex * S] += cuGet(mathDy[qIndex + pIndex * MATH_ERROR_Q_PER_THREAD]) * (IS_CORR ? mathX[sIndex + rIndex * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD] : mathX[(S - 1 - sIndex) + (R - 1 - rIndex) * S + qIndex * S * R + pIndex * S * R * MATH_ERROR_Q_PER_THREAD]); } } } } // Epilog // Each thread store to sharedMemory __shared__ float reductionSharedMemory[THREADS_PER_CTA * S * R]; float *stsPtr = reductionSharedMemory + threadId * S * R; #pragma unroll for (int32_t rIndex = 0; rIndex < R; ++rIndex) { #pragma unroll for (int32_t sIndex = 0; sIndex < S; ++sIndex) { stsPtr[sIndex + rIndex * S] = mathDw[sIndex + rIndex * S]; } } const int32_t REDUCTION_Q = 8; float reductionDw[REDUCTION_Q]; #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] = 0.f; } __syncthreads(); // Reduction in a CTA int32_t sIndex = threadId; if (sIndex < S * R) { int32_t r = sIndex / S; T_ELEM *stgBasePtr = dwData + g * dwStrideG + k * dwStrideK + c * dwStrideC + r * dwStrideR; float oldC = 0.f; if (beta != cuGet(0.00)) { oldC = cuGet(stgBasePtr[(sIndex - r * S) * dwStrideS]); } float prefetchReductionReg[REDUCTION_Q]; float mathReductionReg[REDUCTION_Q]; float *sharedMemoryPtr = reductionSharedMemory + sIndex; #pragma unroll for (int32_t index = 0; index < REDUCTION_Q; ++index) { prefetchReductionReg[index] = sharedMemoryPtr[index * S * R]; } sharedMemoryPtr += S * R * REDUCTION_Q; // #pragma unroll for (int32_t reductionIndex = 1; reductionIndex < REDUCTION_RATIO * THREADS_PER_WARP / REDUCTION_Q; ++reductionIndex) { #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { mathReductionReg[qIndex] = prefetchReductionReg[qIndex]; prefetchReductionReg[qIndex] = sharedMemoryPtr[qIndex * S * R]; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += mathReductionReg[qIndex]; } sharedMemoryPtr += S * R * REDUCTION_Q; } #pragma unroll for (int32_t qIndex = 0; qIndex < REDUCTION_Q; ++qIndex) { reductionDw[qIndex] += prefetchReductionReg[qIndex]; } if (REDUCTION_Q == 2) { reductionDw[0] += reductionDw[1]; } if (REDUCTION_Q == 4) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[0] += reductionDw[2]; } if (REDUCTION_Q == 8) { reductionDw[0] += reductionDw[1]; reductionDw[2] += reductionDw[3]; reductionDw[4] += reductionDw[5]; reductionDw[6] += reductionDw[7]; reductionDw[0] += reductionDw[6]; reductionDw[2] += reductionDw[4]; reductionDw[0] += reductionDw[2]; } oldC = oldC * beta + alpha * reductionDw[0]; stgBasePtr[(sIndex - r * S) * dwStrideS] = cuGet(oldC); } return; } xvȑ0.3ʒJTr.K6"U9< J" |q_>ɍ-7 A'͸7oMuS|6 9'uf<¥9 44bM\#` ]yIcx6j7srݏk^1 VBwݳN뜝d;2F^k{:8u Sʥ"I QD|vFQ?Ы0 ǰߟCx (EtoZ?jbwǡyu@b}9k00h'Q Bxr+{|rRq? a7 :ǻ{3֧Ub?~Z<5X*q9㤶I)G 0Z֡=!+MNQ+нH_%.[l5WV6YVY]O}t@y_ /p+#~TH2n5?!al-2aƁxsP~gÛAeyv0տb\um[^yzދO[Wszd4p >I8 (°xhX&\cc#6Ab#M0K-InsW!%(|om/[;N㾃@܉]4߹.{e0wXe0w4e0w~0ˮ59Oj̖= }t;(a 0j_}!4]Sg##9M E(MFxzuT(0i4-|cc#hf^X| glfCU'Ogq8@(taR [}a;W2yox7k/ƎsfoK9Y:(1gӫE(^},}?3Ps:a|XƢXFt3[مߞFm Qw4}ʽxiXLP ;>T=ÛgX *ܦ<f { ~9ѝ_0}\ɯeUOeYWFY 1fppjBTr\ ~.zA{Z/9`ƽ_06ݷշK/OkݵJzd?dxϨh4XZ[2i„AO @ FX\,YlVQcn5zSWU<[ u0Ӈ7HM H] ,Àݭ-P=ecy\GyP{Q/"uw ,xzxciJkH` xXux`U$_%Zu*? [-`Ahuz2~\\]-1;̛nw5EWC)ox/"e螱-~rXVږ$s,Ր7u{{,~q _7۪zϾ Xsו C4잴/nQ`N!XQJO .wѪ 2M<hJky7{=aNP׏KsP/z}D5n ͋1j$ϧ"Wծ=Jt#|UaԎC g:tӂDi^;9EC-?Q߹:5 Vq2Bo,Bȧ+t(|eU)n$ T't$jR$H-UY# Ly*G `" pý:A?*<$x3%=sb˞|В^ӴWدL{oAk;{/ZWQ[|(,j E-@ZyHEƠxs=,N4%8fO9lQ?ompzyO=qT݅Lkesd |jMeddz{YQ[p_$HP;O,_Ba[qgq#oT&cF]hT٢@X2|I7nkU+7^swwq0 pݸDS:|^?ce%fx@~rn?TϞ<޼^pf`9\Um~uZ#>Y֏8Z8LӬ*â^4a}wtJ>;GC)Zq $ 6:'+vU(7ONE/ct89=>9mӟ^nXR<1@T@l mQ:ƿ9/ǐ hzzAEAS5 c72KF%9Q:Šv2$?0.#~0$?-hC.lխF*Ypi2s'^[ma`v觠:=ǧ8{m wI}Aius)6huur+o~:>JY>hw !{^ut!ӂiwvsBf< pDGG옆><9h'ߚ# >@:0{A o;|Q-6kv') &}BI`=A)H&į4t8Fp8P5%8']j}ڥ$)cia3RJC'/n=rw8C;n:Ho_Z0SD KhHnhzL_wgG~`B@$^@:&C(qe>#YPiA Y{\L8~:GY(AysK8|uAYv77N7VrX]#)xCAaF!A GVGAychl5N˘D! %*&zh!O+P#D:4Ny'x t-ťy쨥Ǽلo\-#50}|yfƑ$.w ܲasttLe+urMYLJ!Sr5#_9!--CjҌ;,FyRp?^'I(wA&vڻ=Cp4 NS*61p?W Y|&$VMjSZ͚" 2 Qϓ?d%4?X8?"2U^*-Mx3:!e2j5S)Lϔ$ pJcS1~seSa1s"ނs5:॓i<CaDpP".`¢QM &< b4^}fɁIJυVh(FI6qBhBL2bJp砋oLJc-^Cⱑ~i(|0b"AYF;'P$3- e  ؝ Qh]Q U&H$ĿE,J.J[:Ĩ9@"̇SB#W)m/AbbY-g&!iNsOoGlE;/`/'ܑPvX7h]fv.4י!ͱz }.?fFl='N5kw~w6L[v&鰇JA:]>4xC;S( `{'[/{_z&cj G_O0+|gt@cMbwւh"T1xDdzm8 >0ypp_qBp8x#qVaC؉0c)0k18xsqA,Mƿd.a4o5o6m7p,"8xq0{XMj]rPφ,t+rp_3r vhHDѴ¯O{ݟNZXtCqߕJ<5x>h:=j{-4m&gG{ KH熇.>s;'FzG?hl?8O'xxO''VlA00ZY)h@ ǽ_byWin^AFp<ԁ~2B<ȧqz+=ϣ,z:3r.2ԥxmf2}ڦ/dUrњ3\]/ vYkt'jQnpȈ{ZRw8pnҰN0 ԟV&KC4I{ o~s`z$oVM ʅP,Uɀuud vԚo`|j"8>ʼnq u9|\A@F2ːp1oB}t)5hoe֍0>PJne mX?U}3e5V',*@L&[^J_M)|sg0{C?nU|Q3Nw09v Phu*כ6^-&rLM?y套ٸ N϶O]ɀ&nqGdvlRnך:]z%dA2/No잝>=.K)Uғ_JO9l2x;sIzzSJ]cM_m ]]g ӀK.mom.om;NȯZ=HY&l_hߵؖ_Vk#~iO-h+ԅքM {[.oI#ւj7 Ս[~C~Յ [~Յ G~ieUAC~n-j7ؑ_uidh9^i)2|oY>[,~[ -{n(ڻ]ICd[dG~ޖ>TH?k_..j[\1^I[xëCU=oU@t~r =WhC mTVHVĪ߅XuQDTADK <}L7p,7 οbSơ ـxPC ?;Uf2t,ů@vzoU=Goq=r4/2U ={̻w1c޽Ǽ{y+Tdvs8܇͗"BT6 0 jy[5ѡ*6/jz1 -9<wU~<'< s9xNx<' ݧg D[=TW8).jy!~5 / M`85NK Gqr3{!˥sEhʼCG)(ޱ;Nth?@m/_Sz IzVs8~pHkLKĵ8qlFj K)rK˭(H\GNy$j;pPBI4ɨtܹHgl X:9`l& t zPe$+eAPvy s1Q$t0vqB' sD2)T[@U \O$|[FO@w#=4}HTp!@"똁$xifZ4j<.]xT&p&B{U#{,k枥tuS\v(T}01YxT>PTcJ ,y H 2T{pڽY@BR(K(%E%ڀ4 /)=yDp;Ԫ^]/D7h0ߧEzvQpdKhؤT)ez= 6#Z`4R974Gy= iD"@QAo6Pӡ3^A΁$Q5V7&4ytbu/=҈kddAƍ$QI\v?#{_ڟ x?#2OKLl p!GR҉:@ T8C`hpb587JCT֌FJ'hI J݆1bkRJRǥ̸\ F(+uś^B;# I*Ai:_TEzP<|sv}S,7L1+G[фqFhdEpQ9lJ6H F7!kbT0]4!}?JGHKlcKz=y!qJSZ,a^)>[כwtނzͿ`i!n#Mh8gCH>V*@e%9L_Ms{qGh2.5Iȣo~>׏~_?׏~_?׏o[.8I1;Vg~^G%0!?5Jfc_9^ԝ! ɬE!.^s5£4o'8c^({Cً_`UuE ypx8|<>pxkpXx8}8|/x>jB=\N'&偢UjE-AX p E"e>0hِt1t%r4߸h=˧hH$,bC4™+igfs˾>{/_}Z|ǽl*Qxa#:O@^c @?L1 iIL~#tP_!6/>v@>M紉۠w4}WP|?.p|DP܎GȨi6 IsՏgU[=(1~~iqsw!BuRyEY(_A;yu(9RPF􃗈o04\q/H7 *Ggp*G,db?c]Y\%(GwL3bWx2.WN*NGqD<PYY]ݼZա'Q+jQcbkRnRrx jqxM Nscg5ӧH<8WH#=.w܅~,)Qi6K؈Bn|ۨ I6UAKuGA~ ?]Ȱ֛k nY-ɓ?pb):ѕ uviJI淳VuE`|o̟0^+v2L<c/PGQm)M&XmWA 5z@=g7= o(vss\ h -Qwo޼J ^ݔS9f+.Nf8,ccf̲v988v e b AABy J0ܙQA:SX3Wb%d0x6$p$Ҷ# ܅&}.~)jޗ&+2b:4kNaljlgєчŌX=Lb1}1CV&~Nv5/M,/d;sh桰CP,kUo{ IWP-O@-17 gD q$ʄnn3`i$L[$QW7Ρgfϣr9rl+rKrV:.LznƒT̔̐S >Anr%>0pP8g0Wc=L'(ƀ. :Ĥ26l `WaN$8Ɍwτc?4_Zux tÈrBzrVb; GX# 5 >* ,J_{ؾΣ7z 'Kژ^-!K{IBNj*9+М"d7M*n׹\ Ku=)mv[{{Z 3;;aN 0Ȋ9Ii0pbtK$?T}ܼ>I=DBvDUe<~+y!Ip8eHR !{"%bDm.1aC9(Lw4'71Mڹ`%"Ya~̦vy!mk7ά1/?&>A 1#BP1J89,/$TTb]BjN,L."l߳(/&L4MP#uR-(YlZ5z~ !}$S8Kl䅜;KJ sb8~633eǣuIܢԗ>%pcO %aJ$=*]r#Ky4#҈NMPeMl_0!uPO ]=M)m̼UI]#%};kOpRiY E0_#Ȣ]i21X6PDg=W k,HK&,B\Le>rxF`ʣ}ԙxڿ\Ϣq`IXq vCs>d'IIB(Nf1H`pJ ܓ€ )IdǾ}~#i0œh'D=0*raD-em-ɦ,;mO, jKcۚ!c+GPnlzEp[7Y)E:˝tX,~OKpGGsVM)M2$(-i=AxeN>sR8Ud"l-36g>}`FihCpg#2+a{fZ'c<ςMdApM'aǡѱ@ ̀(G:v3+RY[ݚx}'kx0$ceWi.z 7 (0z\s@(~2XQ.7ªͮV<yK6t@4ݩf摯KsN^?xT"bp#脙DQVd9> 9N@;5w 2lmٰ9V[WmDQ{WE˙e@8щ$r$BA5V~aFީa romL SDkif:R#lp-*S= K{Ѩ#55'hj4Ѽhj톋YNR&6zc)sm: S|0TT(Vb(0DZ+lG ߠ=nMorLRulS{l6jf4$>=kX*C9eDK2X!Kxgcs6і=LJৃxh7{@Km::VTСzi,IY)h%/]hCH塊Zjp?Ȏ*,L<tD51cN OU.[0 {'G!{jU@VlZ$r9Dx[dEF0^*F^艦œJ,VHXiFNyhܦ2> yM Q#SufBh9>$e,9cS5GDf$˩UQK>HK Q )8tMNb)q.+eqYZc:&xlj}f:Bl2 {*4p06Uoqck[ c70C2rǹ)HAY>>x9ȷ.[{}w:3EjC Zw=NIǠj hUW.hZUe|qii7%]ĥ]xi@5iKY\^pի M ݋R%R^pŅQ^v(bO $;vxJ~?M)a|愁]}8|$S,Mmװ$:ٴG&&k"Dh: Zy$G<6s^ &$/ l,h#g"8-N+H&dcPq*[י**,w*i5( %\l:!9*lnfej-EE(1NND Fu4_X衍۹o(N"G8gF ;O,h'Sp([vhYVPZ*bAfLFRY 1Pdz<1fL_ibf2Kl Y1ǧ0髼գӴ擭FoEj?9Mm@EbÌ邫TI*( XvNeA>')Qq,PtɡPWdP^vp'ʪratu! JkEp0CbJ֦i ƦK u 96'W1esYB_B\p`AgQgIr*S]8DM).GΥsk`L~F2b?s+llUؑ5\5e赘p|bSS ~27$d[=ou%g`k$t R ܶ8sDTv"9K 𥉉Z 뛚3fVL"‚mWݪy<`Omu]S6b`xrNmfɡ|(.a3`TXت~}dkǹ$Á ć#9sX{pR2mƙrW>_T]x5lyپg&AD[*2چ(UtY,h[KYO'j%[@J_rcq͓Ήfgk'2 .rVCaSiکU=L"yIvs8;gzs*DOv(;Ӫ`hc=D<8q$ЏJϜgI'h][݄A|6H]a "jjnSH(ʖ)'G=ģ s~+)87.zzmKٟ /)g@Iq]s2rXbr*Qv܀B2Tz9$EU+vc&a_˧}XL9UĤW*{2&Nfߚ3^jpqWXS1$` xQ56K-kc?b]im`Aqclqwj? Q (,;{H1?u/UZՉC->3~yއW d0cSTIiurwe=s'e5OKc oŁ( N= 6Sa;οכ N¾E[tFSw-X^-p`pE9]{%F_P;51^B 'V&:to MmMڼxJ'ߏxw% jpyB%qiScϧ*ٞ U}uuWYsTBYs4*k"R%g`> dtg2Lqom&DDc+1rO*[E">4GV:u-p]\~s;TJbfS+[}gu<OuV?w akeNb9uprP7ZFb\X`vxS){qrӪ7Oya+~+AHU;wQ.f$sD\Ɇk]`<\jmxTpł'cab߲[IENSEMfk9x;8$/ZT%#m 3K {b+ rhm Jrh*/$zJ%ΐ`) -#W4h>k.*p;oJ᫭g-RV{'3DϤ<>t+7]y$aS8l+0 /([([L*:9\w*D/`uëUL,e4dވRaG}{,5uKPι@ImOJ%SC.ni'4\1FF9<ؚ&PSGDT8 \ǵ=@۹f" ┾ԩSܾYjad1<P GfJ!*lrWwϭ6y?DW[s%h[Ӭ-:e$KKPr=<\5m!hDepVYIU뭯|8 #UڝjREB9,J[Wb;ƫ\TZ4mFgOҺ9?'zZtZ^9IA8%aGeR[N9We"#v^@>;6 TQ.k;2_s,G;+c[.&w! x%^ O➮M)j/O-!5?)ݬѪ' `yM.HѢɫlaE+Z*Me=n"G-|)/KIN3qm)WOohl-e)[.]Cy!4'ꓢ$|^W,K)0(iQK(WyT ?<666@17;6Jxxkvb[Ck21 { EѐfwX$ۨc]S[q3-X`~5u>\a pPS kXPr(q;)Bpʵi.?9Mu<&P!^RpּP (Tk_rF->aFI;SHt.!֦ˠId |YaF7BA *Yj nՇ*Rv*V^H'͖6ljT3Z]9'?4Ӗ'P:A/*}'Hdo(KUcpSg^*1m~@pVC{]+ I:2z.!Zs=3k(>G!GfΗa:R@ˢ>:G _?i8R )!>ɪ(T>Φ"aPwY1p˶&TZ{s2aFZ! ʡYhxRi9@tMTFeƷf݅t$$~ߚ}\ƶ?DʛO\yL?5gP*s Z䙈YK!Fx$ 1xhoSNޙN"kNevrɛ*M=ՅBB11iP[t@V׶6 7ڀ3*?FwAӬs RJu(,I,ѧ0ȟMywOR\f98XgfG=*?һOfps}Rpȝe_}*;w ~p]`(] ׭;^j/,_ &0 `mfeHW} -=UW0Z߆KƯ+ߝ_߭ :n8Y@xxKKqgCK[VdžrR ƯNm/Wםy~uY}1Nۗh|CNPxIQm-W׏#yl5`VM9-8uN?R8p"{O+=ˆM7²PkXk,w©Lmu/4t6NCt^X͝Iי4WP?8FTzacua¥yʃcTA_,lٿ]e8 @=Jk/RJtzet?Ip$;+KkmQ͕Mqւ7bR0r œ)s[e؃bNFQgηmoo|{%w|a"5)I>Qh:M}utbR:pf.t(~UvOTyϬg C9z~cjF-k0#{&? dKHh3_0F 6'uu((`fKc)X/^ "Bu<^snL%%^DO"+;?~Y Bbz#{JuJ@8qO;ҼSNSu;6vEOɩ? ^0Y)NR8$@P@7C q `p@_,5?58׫JjF讋.rPɩR,Ы7_eZT˚  FEHI*7Qp'8wh /xef2&mĀ]N`*=c#ԞkW(Ӑv{NMMoCJ̣>l cӴl_֦]r[8nꌾ|#?_p4tbȇ%0Ŧt"+qQ@llJ&H5.\L{qp(IJ>YC9 ۑvs^oX2+xg6N*/~Cu{ȷ':*1U#>LwְUI!W}VL;II`:EUF8p^`J_y r9+o| ʭlspl-nCG[!\wg*oì?JfIt^4YMH=L6s4U:"~B䦀8_wT lIZ# 8*Mw>,FNl[bW\ɳ>kO  }-lO3Cx|b=@g rB5B5ȧθ0e:Q&G gp6F|#,@0c<ՙ흚lڶ% YԮr)7v}'V?6SGjGRv4 r¸p7 \ UKda ФH*k5I_(w5̙D;wS4*yԛL9@ĕƴK=fsl|> ytJ!9.+S |/n6tw mlV)z#Cӹ6^qVgbgQiMUPAGMÞ*Ok{TVsJZjff!FKco8Xy^X|=!)ҩL[bF+F}`rN A}bU(ǜ,Ռ\=x#lU\j$9 Q<1y{~;߅TjoF&8GǧMa鞶jc<޷vC_?v{=1Q xf9^!ʟqmM#ny9%_1.tu΃G}_:LsBʨB=@K 4UӴ`DC^ jom'g;*O)F:!k|WB/q;"lb::qؖi,ެ.@;0LF-Kܦr?)aŀVL.aTa9jN;2n_ "7BpaHun8`*>w)/LLloM" 3,G Y Cj.]q5Ϸ8]7jJret2ˮ`UҖ(G>p:鷊v\kJZgЎk cTTHРv2 VqxQVʱe(j2Pɶ;GMi%G)lpB^yPm B-%ҡS0MqDB)deL# pj"1-͈FO 4*/EϲF,ᅁ({#32lus[gσ=|v{RXvr4Sw{L;\cke|pB1e{sysЫha\>0̬H}U6nCK@8,jᤊ+.h9 :d8x9|gJ˱EAm, %ٟF4?/b931 ]E?vK81 ޅᡖv]0S(E~ flR e`;Ez؋X}h'Rx~̮5|džPw8a9(w@ХUc\hyKTYU]KG}F:_m rj*K$:h;PYFbvE_/ba  Vb %yFeMJ_U/CjS;TsP:4*y~vϠKPTEwGa5SA#ak_zD𷪸hiEIU\Tp4,.Gؓn^Ay_"DSn-/uqˀR*!KY|uJvzX1[Blİ bcY wb ]/T^:M#/4jwجқ4b)) UK>:PΡǫץ2 #&#vO~{Osx7Uv(مc-3ibʾ+QuzFȉ,@%U1Mr!c$N>yݏBٖKdYt딽Z6a ?p#] ȝ4+-II'wQ0<bv LPy@'S$h 3'@$Q #80H&!z:ˈR *rS?_Tu bP/5MnI|̺\ޢ˘N|_|)"SBlv|GIsU 8I6L]U5Mjv "Ϋ1e7Tj8Z YUa4I-<&9R а,Ӭ"떮"OAtWSt,IyIۜKGq|b[Fc)T*Յ_55cvH$ODScųfgP?V1&cՃ- Di㢂~T3\43 fWTluJ#X:uxCul j8nׇ u_j3ե* Rt욮,hlֿLӜ&F׌xڕ(aU_(tQw%:t.aB⌵EʚÔ[R݊xJVI(%T$W3rJKc"%: ;s6<<׹ٍ<%qʑiKglZ*SIkeԊƣ_md;>$"Q1:1X^ÂZ:}1պ}?1B9\Z'OxtW%0mJp1btmVpu-}/ꂓv"*|45LJ@; ShނA[Hmxͨʢk/]xQ5ro KqT/afQbi kPgZquVAY=ts ESrksv I{=ݣv;[8]r|DH89 z G=OE:}*eRo>w\9&$׍.~T<w-&GY{+CqZ`x:rg)qҊD/;N;2A:^:Kk MOfhD"{S`MG VJkJ`ŌמI`# 'mM.GIĕUu#F7jș3 nL#ͺXr C.пTQooD޾'YzS <'(5(u"dXA)]ڜ'#*G"FX}f$3 m4ADOԔب ~^ӝe$sR-8*-߂^4`؅~ *z#rT_ @24&;^o\ +u|^),ӏ4j2=iI)<*z-8Npw ^r.ol Hf&#pJO8eT$9-.t[d)M{Z *(+$$g$9d=Λlw{_gY eH ;mw[onPG~7мNAD(DNZs}Q !_Y i(BO{%d3T7y0Hކ2W >#xh(0œA_'Q79fA^f_ek#X 2]\=92ulF{Mwt\V'YX_ :IH&kHnZ1ej`Xps=ثc9VF7׉ч*j-YM+>:xAǟol 5ݧפ5>_Wgܾq5 ~[;4rTe4a|&%c pK-6~FɲBq'{ǒ|d~'/EP^;s*>|7~7 @+_pdsn]&m7lVꦻ-gg otwE.^O* \5\][}5_jZX^jra%e=-m XPE }>`AEd%0n־i,wOqjxz߃>fb8ǣ/>Wvm 2Ol`>z}̎AE*yYbMr ;M3[hn9Qlu{W/LѕR[+ ¢Xua]qt*)bYe`l# Aۘ% MJ.AcN0(m"_W[<ƕE˃keDpTԀŤV>] *2vcN]TK[GQZr W஀E+e$}O}, @]UV!7sT] *#f92kXHW%;Vr'QIɡ~v6KzN AztaIUUtK.I@^)SP"rtr|Q ^.bI!&Ӑ\Vlkq,k VTݾқz(Srtv^__(*y:Jش9}ZKstW-K>w9rjWB'uU;wCŵ:;^{Wu7TqxQ\ PT9K@V/^x2@J &Σ@8_(ˠmIOOQ#Mj@H$e[>Cin}EH@a 8>}$7cɵ,̸E 3"2322227) ŋgP+j' RUy(9^۱䒈Oֹ8%&o%+5y݈Rr4AݍLZ/ܝY%+HW}^/tݲ;+voݝ[},9u5=RO@]:rAHww|31Dž1GzŀN͂MfqR$(@v0I𯃻D56R4NR "=S~%cf;F& -T;6݆mp5B@q%K׳ ͧA]@5]!-]qI&{]{Z&S;AMpC}}I<l:llmlJgC-pĎ%o64]!rrUk \5CFCVzL. ;)#(S G M}*Y˳0#x \ "/ CvAj-aGз(ApX }1F+X)Obei>1dҌl1xRXSu̩^jDa6i.CV$woXfe*=F;yU}o]"ìM}b9ǦC, s[T.q2: d>e}vLyO'av(盒8`LJ8WH##)TuPQ%HyHѴy\€B98ev}-BH̍% Y0n!إ*7]g'vNs fS,Ao8*TFT p͈)K e*M&pr{:M-~;'ב /<},=yiHx&tR ?FاTBZNJ|Ok$IO{֪* `,,m iX+,*eb))tĴ:|)F?(E(d8DNZQNr)]ٯ,L#ܭXwn&ըQ:ḱs@ж)Nr/(~ʏ扮+8Ch&>HvQ[ \o(&I>c(G| LUiѸ4. A~rdu_R2"p.\xH˾Jm@}LoQf;u@\gF&͛%ìMd(zz=JGo>bF vT(Փ(WS,|N IEIo&!>YP:$8$iP!BW8q,"RW=1+b8GPi2CdG-ΛU-cB AT $LQE;apt:#d e'Ti'T$cK*&  *s"@ɀ u//Myn8?^Rw7T~)v&~(tφ=sYu*ՈF4 *]t,YVYH%m$Jl&:}WN:ᆔ}ͅ6V!JIRg#'G5cf <%Zz%&%SnXMnpUm+;4Q* M.6'ge&I+pTBomS / BN',LSٶߒ(Fv6.c$9 EBİrg2Ɂ oTƫ"|dneW BPq?yYH*yPu7JG7@- )S='(U\sU EܣXߙqJ%0ЬdF(01_DUa^qxfI(o54Lx>0fkJ`KaM2/ Wp;2G'rxu|ֆ<-S ,C U@ |!Z6 ֦xJ]-a,$)]ãn0貅qF.͟28-HŹy@=+W )t̲#p|*e3SǂDPۤ%h}_C}/0}RxCrg&-4qB@Tpq|F&GaIӱ#9o`MdBxXlˉ{#ZABCZ 1Hh6Dq6i?8q$Y/q(U8!`a1@UL3[hR~^0\ѹZR6uz52i0;9tCY/﬉Lb/;_>jcW ]7.䉔mU'gi vJQv% R1|3 c@,ZzEh^fs˰ؑhs*S12 :X0I Ż1֯<>!*lVW}&G$#r!c{7xq2g-6p\r0ff_7eAAx"2H1@.Di6 g7:`] *L-|-E0˒a.^~bR{Ybil³gֻQ#z3F[gʕ^G{m^B~Be./'Aiu}: .|xHudq gw:q42?[ggH0gM8->oAZћX-zv&ʤpܟg~g鐎U&/59le`r!Oi,CQa)ҥVO3j(AX$!jDm$ˋ\OG@z%`84kkļ1%hvM"aY}l8JI~b~|аm,斀eì [!3Kq_E(YM rFI՝X(э7_8zu+t*^vQ&1M6޹@M5\[eX; z! n@ cR&րcە^!d9hzY^u93Y/R_V\Wɴ/wpۤ3/Os dOտy*l08ǟ#p6sc+iI6C5:. wp xvl%'Q~]㌮ i`)9]U7-,#~u%(O!M5>C+xË@ߋH0ĝ윸6D/КZy󣝆SZ\'C| _>H0R}HTN;;5,8WNW5J \0ȊLxXYHn1=ť}Ր՝ьEk~_MGѕm ^zGnMU>P ʅZb>G!Qe<8$'Ъ rbDƭѿ} Z+,0@ym# W4D|#W&:>#X~Gn"$ͼEBX͜ԑX; ; Iօ~)1CEwM[G^ pJd$4M0O >ρJJ,{]rW@Med*jρp JZ_83q BbhxCRHK/ȝj4(iZO~ݵv8::<ᄙv/Kse2idf4([Tj7K.b[U+4e6`:Om^>' w]rKΔ%n^]ȔLۥ.C1J8B2wJ^XXJ%=)9 z=@zqeNCԗ,2)ԻDIZ2ܗ!ίX5gSͳ8Ŭ;`9c3 WR؇5~:ʏe,Nip6,CC&M=P|WkIfd0 oe ߢ#I?1}EkT d*-붸qJo5 p[jvcл>ОΆAw6J,ՉIYJDubBjJ_=. 9#, 9#, XnS+os͔[ZQ#*r5u-tNP쏉sFt OBxE N rX]ˊem8FJ (l#nqV>ę{}(0_̹[, ٙv3E {0 õб5_`UWWfF74Lp/ƾtdW3eE-YYi=j+ZY`5c[Y^U_1+S-aUj+"DkJV,.=*S9cԦY2rI6Le[ T>AѤ$UѤ"Y|SVJcMLըl詩b-VaS Unfs ZO)uSj?內\Yu驽YuS۩LYSI:" U<|}93,dn{)&r]g!_ޑXd}MYtK-+ɬkW*CvŢ|.)`B)(ԥ {fA?n Уx,^2poU)PܲREJ{ƛT2e7Bur,uŁ<5>~b=ЊˡK_le_<a8IVf4h0 8u"mN<]J\d妇0p'@p\>DJ^~ːVCYޭC' 20U'5 3TΤrRTѧ̬`5Lx备ڍ :zck5A qAFI]n&;qV3SIp@Lz(31*:Y}sN蟿SE1> ,Q8mco|F%F,*I]kꦗJ|/f@evyY\PӦ:<R@@t!*/J8J?U8=@::n:i8yH3KjhZ՗D3in3p5O!/a0DLb2e >\5&2=d l)[rKj]@ioqI4C6!8IFǦd\JTg+Oa/D6l U:M/rAA@g#ad8q3R\x3I8f :qD-eLXOKq2FԸ?ða|A꫃L\y.߷?r\Ш[TP˭iGRqҞKn' m Gf Zj bH^Ť)62( iyxlh$HӒ݄2HO.Koie{.θzC|Fk4| m_+*DV]UE >/?3ŽTb^uhSN V1ƈiLiO)Y۫C~R+oner N6qHaT$kq`+% LqS%ƻܐ~s A/|bFl2buQCu!R>(FGoή!;7/aqV8_#qxlN)IF` |ͼ %B WXz'{}P6d^e+.8<98+s.&`PXјP? Ⱥ!yiv2 ?d򯑴|PpK;0JGhA[ jl)ݗփ1ܮl[RYnn[l{ՆۂmTå*TՆ]- vY6e{%ZMZ)1U](Y!ԝ ߋ>Rq zbg&U$|fx|hg2=n/k"oN_,},kp{U r{)%ádyGݙ6ǽ*yxgU>Yc[<}踽LG-V]dݷͥtв,0E.,mEY`xʤ"4=kw`ϑt$k '5&^\W|bTl^˜vXzd(dJ04lUn'gIo*4dϥ MA \.DQMD`|/CP7هhAL^j!ݒu2}SUSq襪A:>Q͘ `9c4/S*(N `\!dQ?) I1FZx4+FԾnC3 H-f͇7rAhd*1u ы*KltbB8c tTYXtvpQbǂQt t<|Q$ZOsTHRC7hA$,$D%0b%O9'Ek (Ěڟc9]},0IjU(`=,E˲ OM6FNx`Y2Eqdt,O 48Av4]Gӈd Գ`+x٢A=.#i -ʛF:Bs'ұƈ4Ib{%De(]߁au5)%aA+(h3@1#ko|vG߰Қ!L"fHUfK8sXyJNKl[כj={ LHoW@UG\&hʅOGئ?2P&[ kol/Z.cI9սlC\TY#?A@l3Q5 7%5IZrfTѭrd1Q$XL̲pvHghs"*dk\/;^7?oFuUEMVem2oeB"x%n*x?D>75Lcbp:E Ώ6ep }8Ϝm2ʷLNyuW&-}ФHuENNEU pu%p| qor 4:G4 nXd5eNZO;y(fl(cX1L^㩶]%d!Y2\9))J׍RŀQEF!'i(hj1wQӂx<<,8-GD ieB넋(b66M(L1R9;Q/ˉ& :wU8qy,nkPb|T1OKjcɦVD{g͞άN7BJg _Tms\ b |J{_!dۘ%] Mp ʶ~jYk^_L% h?EXoo%sیNYqᲑ`&F6;9GH漟& ^\zxHMt,HlcQ yn Ie[:%2Odr21IPɇ)ռҎ#8LС[wK !# s-("d?dT] rh wNn xOى D++jqCeVgn<E~# ߚ͌|"0phvcJ=vDv 8{$4 A Zxzy `kHV2_3epq<3??!i%șh J%%m"@WX8 %Bg~o`(ګBk7HY(I?DN JHY\eB FKy{ " ] 2a4@ mUH ^7 hE8Te vJ8Xh`C+1iGTvAv7LT1/q9vɞwRv;^WA=JQ{ VtQ *)}kdHi%L=T+ƔրQrpxgRkbd5lٖ죱ݨw7 z"%SóL]dK_1lӄ Tb4ЖT}Pj6A]<^+mf6lqM#]#ǜTǝuW<ʉ< < ;AHgvu2UmeJ\۵'PJTH'UBQ(".Ü0G|_u{m5K]5qQՌK0îj#_%N ] ho.F,̨'?R$)YIљZlƶW JV.c˧F19w 9\ هUV@ְh]~c]k'Jm+ϱ+JWՔK/jغlor&tؑfXvgJx@%/XVѮn#5\XH[l5W4I u|ݯ#4NFw>+ iON fc_o&%eby& )5 m 'B3gHfHJsC#FXC 1s}Z:5d:Z)&S[ڿABDg~K3 .1č\~6>)q̈ Ң \£pJNgK`2C nC*tbY]#ͨC&:@ۑB>dSz gm kUĤUJ8wp Lx6,nӁnb!{`+0)s6418(ͱ 2v3ئ?T.U~(\s͗X6M\lNS|E K ^˖I}*"i+kd?i&rGt&qe~>)!?ħBY|!NWɱX|:# gH/i[ QF^ÚVR6E.K U Uc>x<Ʌv,# /xW;ij k¿i'AyrcQxe6!@3>dcWçhyXU`/k00uOҪO,z`pJn7e6 .iY` SMH&ל_ JhW%$C!gw?uE ?Tv'9[y;4V Հ@VĒ~1gIZ2=<] 0Xacl%ր CZ(56RNaҷ~H)5&I sAMbO}9Q 6Mh es&"6+yIC#wԂgtȳ2Я/t-bwhBATd X\F. ) -}Pn gO,0c_ΡOoYYm }=li썯;sb%cqVJKryJKʗkЯ. ].1x<Ą4c,tx'Xq]o4C-g%L4_dLۭEVjpfal/ʲq?Cp3,M @M;obA::2Mi}o}L%n-$\4U-I(43=uES_XRiطLI83O;&Ϛ^0<\]lʿx]ʰ Xgml,ͪ!pXE]zFq}WWH: \ʷO$iT墤SAy0Q=_jLC|Miq?`j>/}XUW@aJn=rK]kd}??֫ZAgo1Ξ-eL7/<4Pɔ ; 8JqgT܃hY uN=fO.Vv a鈂=FO͆w&bpȂ0DB1t::/Y5 ~2eHvF񎁱j|YНe?4S4"jZZ(6@apG"0Wqn ߧn+]ٞq,}1ii5{}h9:*U41}A6pSia\ȳ {}v8˰%`:" yP8l`WnFHhbqx Ē]92FD8&"8FD8Yg1l(@ XӖEML4פ|lX-g0(⧔g~kDtRՕw$vYaAI.bb\56qq*BD#0KdVV@:LL@#zd?l U<̹"e9>o-HϘ5;]w=!4e2Eʙ+sk鎧xm+owfe0.ŻӪ7z@%ԳcqOT 12Зe>lgԥ/^9Q*JN 'ș,L[x3wQʑ$'lf$j>&8gl(aYsWA-8a&U&DFϡh!o>5RCrFvuEB~0Y8Z֖|]:,}U㱔ĤL]DYpQ& ;xqkk{= .<1%}<,sX@ Bvo~y߫‰d1l y =Ay+[ yHuD&B'#Lp1i҉f.e,8R㼶րA"sE 8N )'t4Pҁ`qhګB3Cqʧא%UQ2 c̛:CĚ=gȚ׼r͙7Zmu`AGvЍ%&%wgid\'}%*K=4[P=P"45%@" A!vՕL%CV;gj\~RevfַA?BܲL΄F=W\3:X‘޴%3&wc7 -Wwm:/d ?|E`_YZYHEyM:=w'բE٫S?Ih$T èAk$ǴD&ڐ_s\m `ce-#-^. qLZ^s%I7\tQ@$_t& UQV)|ĬjI9xDt#zײ]w!a{G%'8*-#jB"2$}HsSӲXp8b0E [H'aۜ oYU1_Fw:6D[_}(e oˣdJtA{=Y4!#BVPz@.x1akaRy?񔞈a|R7=.+P҈s*Gsw|ɊiëܵGM/l)|pޅa0'~hÕSuJŠ>|>K.[giro3cDrĭʧRȑU+|^Gnǵj=ϒ;HZo d;3`~dBSZ~T~\ `LK*tPy~uj.84NR}lNSCE'6iJtɐ%(``FH8DPGmo7dQ\gԯJ!," a+?> ]i UY)[F\x8[htPx0gA,x./f3!١$ֶy`)}1\ U$ ]KT, O '7*T|`%b7%NB9Qe +b߼NqQ]$i )J˒mYIЩZA(ր_S(UPQ=},ԵS mJ^Sq%ɓr7?4-=kwGYNΪLM ,Ʃ".sέgFZ ÔbƢD_ H氁 (~a'?iމp!l*df*R}Bk@ɞ Ljض2oOJEy(yDyЮ]56\*kQ%:aFTiҘ`mha 0X %'րR`]۞$%&Q;\ch('v Nי!&gjps,z9$4x,"u HrAi^ BVqA("\W: ]9vagR5i*ϑKd\begc!r08j{Z3JF3פZp\:TJŠ&\pb-m2#Ѐli< X thc;ƿ[[2 PZ7!Jt߬jbR~MRrt^ s d& Mbymq{g-)nKfs 4Ey-t͏z?[5y|t`t>Dg_\i4*X!Ű gc4뻶K_5H\M)`dq*P1QהK]%fwS:̲+pN]'XnH"0ocYxe>d4H.x4W4TNc=m݄82L|Zʖ@GӱX6(l2 /L0%+ڎgCIbTB,4fIQM 7 R#0N2n} R]FaÄ%1P)o-'xe&d*8ڝnvfV[Ͱ(H? oHoE'NM+fH,^ؖY~ 0~[̆Tx(jgЖ3O&  Y2@rV.\V]%b lKXR%A[587pYi~c8i3Oźh 6[Z6)JUao{Р7*#jV4Tc㟍!oƉX;&ncW |'S>]>&?u?ɚťfe$QVzAFKkz0K{GA*rV\ujQ CJ ӄ36 ?$JY5[TA\oV_g:s 3s9:CڅQ g@-;4,W?p)~yC唌[Ip7&_ʉaC,V% )vr)_pZ~? ߭"Nܼgz{K U#?ˢ'ֹsY/O]ڐ/\kԯmlso>`eR}|hc B-c~_:rxu7\@Y^Ga\l%Rh| Z"W`5o8.|Y_^%!څzzDbE1\.t b>/演ylUMIc@?)xc8pj[pYINt(4oj Ngy+J~֫c:7*[OWBVc/gi[=uۨ'`A̩os9`H"S)Tq,CeNW2T {dhEFaf^Ԑ2j;$T*zud*q+x}ͲJ CO$r3暊+pYKtTYElDN &xE];JlcFXd*E[Ǭ'$N$I]籀^%e>XB4eİ}׆LZ<@^MV4ܦ!b-Y+Cw Iu< CDz<3ft A´Hf5dF"f:p>[t~6ed5 tbu!V_pwrP6Y+qt=R}LQHۤҬJA%J'Yp%Y,l̓Rq˘nUy8S-oi2/H@ANJQͬ@apβF~ޯ5Vfk h[<닫T!Tߞ_.VKI:[aʂ2*3@pU}03<ƳxKY+m0W%/Q }H,?~mtS2\36O%9\'PalWY#d:U qJ~4B#VJ5cĕ{e={ rʪ)]2*q8 \[p!H5[ږ*5s~{Ǵ"\LQTl) U_u vZRzzKPk,jnUvV7 -͐ Uu[XԗWTXu\mxAmu m8v(eߋƟ[4l U{ZX򲤪,^ <nNUh»:v-gxѱxaa*?,e '-jӚ7jeqFu|/_96X|uV- *uZ6?Kf,dž%U46yyyEF*~tSqd֐@Tܓ֑MD{s$ g\ONg:7U\G^mKj3<Y+C,:KlVy,a+w_H@SM̀=4.Y'#IIOB:̺OGzE,T~(BCH@d~z :}#ty{ M|`6@wpFc4%{iSL6/H Lt;0&RPtE MCTcU +R"b,trz|r"tA,ocHy<)QgTjdCY/'/%W9z NK1 `gqEz}1%JQ*ٿ 9wD@E[$oY 5#Q`38lg/N1&;a(@W'ŏNauc/GDnOwgG`@lóֺ?㟿7 #@ޡ`Dx!Sg}>8._70Aw`F\2σ@*pW` q4Óhpu8Dv9)?8?cy0HŚPD%N`xaN3Т%99y:oG0D'{[LXޏ 5 *uB# 8K[- ~z~v,I?88!p.z-|z tSӻ)о/l':Јۃޑ1>?z| E}ܟ/p0E S10h QfR'Bݥ"d$VS{Oa_:C9)dj0%朼NΌ/ſb)Y U_t#ANYl׷s蝂e͘cƱۭ,L4~0<f 3̃a0`y0f{?_f ?>p p0s}ʷ 3FZÌѶ0c5Xf,zk 3E* 395p70}!oBӈmﰄҴC @ua @w zƴ̢nzwno׾#*݋Mwԗ' 8o;fYwT(a;__:F> TpF#WI5EԉB!aJG`ZD7$y^S4¶'Y)D3vzWaM瞍asdB7JqJX_w9DăXJКesy<`ST ȓ(EMvcMquFkdG )n,N2VI8"qsϯϋWu>pIw%RdY(I@FT28K4hX!g~W} 8u0)g+Csqt+SE6X1t}^ǡgΒbpECxQ'@顦 ٽ~%Sm0$U'c9#xl)У 2YN0p)g%֊x;w pgz}6?)(6v ~:O~퇷? E(6BH`ᄁT4s#Xu$]L}hN?gh_o~P1[5\e!;t'ۃɉoK sw'lH?O{*vt`Ipbɯ Y9Gw˹/W7g mE׬^{ ]Igl62qXf8PnA\8FRY"ο '`Ʒ!eq=+OǴ|g_ r B>y2kɤ2bKtiaG9}zZ7J'<2@?)>pʹPdIZ-|a򘖑Yj Zr/8,ÏCH Ibv?b$%$Z@.Lt&ID.Uu e[1[ྊBQb}*|ݪ}){VSe\M}_鏼ŗ]$0ߵ-kQ>eZ E3y;6vKJ!t@)`c]o5n\9v8wxSC-H ?Ipkۣ.+s_z%M)ƙMqA^A-*q ̢%87{@9 =<70y~9(㣁PGoaQM؁ؘѦK /#G䆘\lk~6tA nϬO7qOGoreY~v&F]p8{q_D.MK-LjP0Yehe(X 34A;4gx$L6NFeLB->[W+s vPIuhnr:'24KWės Q2D!٫js2(nǑU8('Jř*V-w\Ka5en@w:p׹?S9ybgங2a2쭍t6kēُ䋆5׈E:)BwmAa40:RDZqz:tMV.c9|5ԎeK&#^NzR-GجA,6W(`0G yE'Q~Yx]O"8qz ajp$[o;|?2, 4OiCJLD.?q8|H(U>h>+A·FNX6<n0pĈ3]g_Ȕ#U<YBoT5F?'Eg!PAVGM;̳,r{ztg/dmfIS-L|??ģ\uSa" !> @ ՟ ŕÀ/o:,~8[El~df틣Un鱔kd}63C'4Fz1:7LVy͓md\>L)5X9li ҍ^R`K?!dd,LwxӨYB3mZ}vktI%~&O?᳄/^تn (jWWQ*WXhg g!?lQ< 3XPLi|iiә4nkմ6Y-Jҿg`B9wa0%Tʻ~-B}w7a>|@w{qp>8;n2pUc9.8PsHǫWM;~mt|~ ZJ;] Sifw3s\ o;trU $3OSqqb$Ɵܕ ouT3 tD^#4V7j-HG xhlP4d ~?Đy.ȠFy -25*&HiEg2=`HKDLr+xBxe4JS #j({$,)U-imxGf/zti)F:$6 ^Q -jŽ(djBKatB,$ U-1d]Enn_F'pѶ Ǚ1QP1La$>d?dĆ?Z3ZO'P0|lL1OT0T\S],6Jn.Z.0_.#>0A  Ja`\T$ qd}^Č'LQOC<}X}O7lPm9FņKED7U7$t>g!$oPPl w!,Ǥ+-y$NeIG8$w8 ?LqvI6yAɋ oܑN`2"1:@%69qa5 ~Rq~ e\8#PY4"Ę.ɒ"X nw:OEC,"4Kv3a$M8P6LfQ{q6JDn&n[&cnm<$6/_njRۜTNם\X{%F*w8)]3 8Mx)F \a)W1/ ith R](kaA<<4aa#=m O_Ɡj:7̲d:HffS-BҜcZ@~Ǘ ߈ekͅ.41f8VļCOkţ11oc:/8{w kF!&m!/h9$"tVHXG, pS{h~My;,>=g\:.Лw_P{5uN;d ?dqc=]L$XH`@~0Xz?{WF2X"~t#Z vKCBМX!1 g3bneVu -m$1˧" JHnVI%4=dPU,QEU#Uuc V4NZbQH '}} Ǧ5}z Xx% φY6̼SQ(*Rv^gsDn2~#⾌"laG!\*hBJD}hQv>A:)01 w?2%h0r"3 SP=QT$RRGLDf ʅh n2qŤ Ճgd +%kh4pYG(0eh>SF4oO>N@Q=t%/#ddXp-ͅmB>MQ&'OT( ,G AJg*ysJ "L'#\j2TZpj~$ʂ :t| K le/; d@x؇0:D7YFshO'1xLH)@8[8<݀HP ҭ~IS'?o"0es*?9.1P3\e _ ov7XAoM@2.S-`qz,eꁻ^\Z=G ٙ*]@ޢPxOKѫ* !{""ss[JK{[sJU E*ep}+& k2l1Qce_Εs>EHlW# جha8q_\551(N{s,XT'O Nlͅ^9ସ.27I*}tqp6g䵾Y&w5'ZexYɧ pٗS{fE4PѽMQ̣Пf#AbՍfM0F׹al6gٛ0Skhbf4ʒy:+ N f +b;gFI»dӶYm!Cj}&p` )1fhPa.R-Ƅ-@u|v4B'ܺn5R1"=:JdtBq<'ih$A i p-Id@LNڏZ45W^Ru/S~c݈,7,tKV*6Z&`D3#9(_mk 9K,5^4Lܖ*Y7Ysqj2g!7bn|#4"\ +mpW1beU509Efg'h1)߼mw_O2O3zY3r۰Y%)*ڤoȕvf˿j 5@vkH'_Tq(mT9ӨߔEIw< JzM#kZ4h4J__1mėGϐl )XIy'yimA /Fbu">3. \'4hb,!?S^ϟE^[#q F.mKӦ>+HT([I02sMzc֗__# ~x~lS}b|<܈;Na)Ϻ^g BVfRvInGށvx=m w>!lt;4_ Jay8^:5҃7#PI0YR١\cg1pCwIqB *!^Qv\YAH^)];^:1R' ~g$CTR١zV 9lu"4p*:QjILU/v\I H{4:P=A}}. V}6+Z K0PkFn7]~yd8n7n7ߔRRT/zѱ/2[}9gߝtp"|-VG.{vë7Rx0z{LeÓ3>ȓTjӑsp ޜouumhp|t3;}3^6g5(Mgxq聳4CXYa hP(`aٯ"U=y7.?\^I"0c_`fx}B-A)}ak1FO&ftzRkf{O&WOwnaUX5DZF}Ko@x?-C'3y+^XR=6j\0WF B?A&9qK3  \8(I7,{kp -d;A|2Clu߸S,&ر=Dx s1;i˽9-VZE(AV̇xvPjsccF͇ }CH|^8AA{ѹޝ+ǩ=:5DZY>*calw-ГyN7b`zŒR ~=_$ķ;EoXFɈ636~scuOisiU=yA5 Lz+8xvd3q[0k ;V1 oF͊|6^Wed0 <`I.\r MnFsy7Zw]9! 'U W-LRW>4:֥\&pb)D'ˍviM&\u|4BQȩ2cW"saHcp3(m w_GtZaT(l Ra(#t&|BS ehD?gtgᱰWQ,#p?P%`nQ)NZa>Y]19$TY Q}I!fshZNͪ!+$N"c ZL,! GKCmP*IUc5T"; zo{?^}a ul~1[Bj1Ak8L9Yx*[>&r.2Ь=`[ EyC_z@2ubӅ2Jj0")\9PHm[t;TX 1j/q!Xq(Ï|E"`Ioӆ`]WXypu"9f=5##DSXHX~QӅ;{E@^>q$w^]D w.4S 7уu^\M]>u}7Uox+e(}QR|=ͪM,_CjȀcN|i ŎJ(@1,,Z97^3 "ݏ87z`{2ӽVk`]-.Sg`jf6@#NYq8ęU ŜG\Ƽ HI_ *|i}VPvv(8`ɀ ZWX]o{G*F[[{<]!ø`"EC4[h5h:i$ h>%N.>Zc⵼i | 8`q#}d5Z綔jV>`4sT4ml;Mъk;zL.΀iqE(wNĩtZtmfydͧb!z.=CvNe3!墅 XhhvZ 4 UB`82RnFWu[9:y8quq'׺X+Ǒh ؚC,gڎ  :ͷG]Li|,e)#LZ+ץ% K]tkM&֞_N(5`t0(5j"' /Z _La}UXO++\hDuB2(k"gJ]izTBX [yر&;>ash#)_b"!Ȓ2,.LdRxO/ؼ}L\`M{מQwDufK%U e@umyU|GN뛨]/f hxxFysݱ1<$҅vl 2S@^/BhNw7$*BNrf N)M.4T%Ȳ-8Ҩ}7.*J`M&~mH J[LQ9>!b-}͔ [JTdZ;/[.H3.{j׿o_nf/1n#GXt_ HPW*vuY-`BO??`8[)eGܢ& 7Yv>Z% tOK鴊)@FY-Ya5+E! 4l:^rXڬ #,š nx r0' 4'_ 2)' #$0 ȞA``#@TswrG6j [ /D fk',͸O]44s&] oSIFLFu@K0E2G{E,O_?QC9 "j},Vʙ:5[Գ!'XC@1v:b5@^ELd6s }6+=Cp+"cCDABx:Bw:aS)Y&.rZctE6s7hlj )uJ@ZDɂal7^A+HIlׯ YU )@/tAƂk\nռDh*|r[ fpk~)YfD:thl炏Gȯ| ,&QE?vU:TeW˩a#Y7Sf'@^w}JW?%^j*#Fڈ~cD+q[Uj!cќƻd`x%(q%K': :KPp+FHS*ng)F!>ݧ$ n Z2 LZ&Ԓ2{^ O&㱭n1eT{YL)=YQAބgPDFȑHCe2?N1r)K^ᾌy(gp6WZ^ -"zhMɹy!F_V7訕/m@ګg>Лf|#Y>P1!XA,ųiZ83XF:'`.:Ld dF-mI{v/Z}5:q\AX KZk!56ͨ e5㵏hϛVG',+U*l[ BV}]e jc6ºw{])CHx;@^ymr n}1۠!Pvf=n!ɧ+|6%[[J=(~!TEjBam[1ངb#_#ˀe" 5! 78|{4 ȷ~$JBk|,|-,aZ3'/9<<۾7:¬ ,iXCȉZjro:Q)UyI=+59H$6~_ }CE3{bݩ %J aHivUSr1<-b0]yPf@u9*ٓٙx6/ ;_fGհ٣7ܕb0w$4H6 C~b73?.3m玎dDBmzƭ{S pxV3 s TsQȰqU]fԬ%jlXݑ H|+5VaƁ%i<{,(-m'[EAx\NCC=1gepcܶV!ã3AGGh 6&*b/cLv-d躝 p<L#ؖ=P/XR>yfT=;(,9eS EmZъ:zT‹~nՆ(i+ i(@/GvǏ&XHP €qdr'G>=5T_zdF&>Ч]/ԏ:Z-9֩=hn$hu=%M]!<3E⢽<)J jM^ lԠ=)Xe&CPNqURbo$ճ$i¦ӯŃG ~I{0:?)A6[(wrjT|]Sy}^-7s3rQ / Rcg&}lfq|.}۸nMTMihk]]p,7Ƿ+]k%e[$mrU%$l| 4DFΊzWG-a“o/M*RTPl^зb[S IEAu5ZP*H-/ 3N)>Z%r,/yj8\̜xGP5-NNѲ@#{Iu跣5"-_?jW¾6n^5NկyB?{vpd>V Bia6.TjгO7ҙhQGuJ]-`QSLo..soԞ=(xئeM'1e oSc +Fi{Hc=zڤv)'"ћa=-,5elŮ,<˖̯g.8skJId n-{t)'8׽{A7oݶ$SoIo|5n]s$~W ~徭;=cw5Sݾ%mK30ѥQ<5:*=[w lߪ}٪^nl6;%]7l~},,t #OCsE+V.|ǽ1lf?] EI1Önm [ :A2GT?ww_?]Rﯮ[_#ېA>30%> )}w}w:u7im -kIF3{]0hlvn@+~ˆk36m,$@S/]#WƝt?@;H- G^r, wŸ՝懦5κ_XВuKKT>şW@EݪcCOEC,o.ީ6q"+#xK+ mm9^pr39mSd@4;<Ω#>-7׵Qd8>d6o)c8$-}^lYxuUO:$$O 9Bh;u;}n2oX-wߘ|1@l{n[#ZǓx.w9?&30 sev_5zc(>_:M:8Gߨnֽe*F)`3|XO0bVTCӃ{6v=gc,b<,+1nѧƅVll 4 &/ZWT s|9$|ъjS,FmCim*J|kj lDܰa`뇶D88ft=!2nhЇmFX½ǒ>L4M<|F Nd;BD.&URd#,8bp5/$ ~w0{r-bI},RT)QgJZc}$Jlzje-ZVhK$;aS:r]21$_Axwf݉kGs]),x rJLRxr{_*j ӰȇJrRAW_XB*g%S,p??G#CE98Bh^qu@zHzۢ|Fj/yb- I,rzvJl޹^!`oUTNO4qy9pɉ|]7ɌY4(,BW5rƞ9j poS E{O_峟*FO _9l-QWlZyO}BS!@G=pt0hraW\mLT5OvyfEvO""g/~Ф~&bu-j-dKnHXei)ٍ@}^Wkkh+@ RΆ?=o)n%hi)V8@㑒-ĘAF+, kԗMGt UU(*/! œrq(SLkϐ Ƨ\[7i]F^F{ݖU\;Cˆ۪djѝ5 ͒MGo/!IQtLj]NURVw?V Q *v;-]ayZ\˯-ۊPO?Bd-5h{r3K9hi(v'4kRۘԷo$.W%6D #r63#˝^id%cx|KXrڶwY?i$6eȶlfkuZW$}NmzJ:y I=qp 1.eK@hic/4ifՇ,!A|Dmn 6$c,䤢Yۏ%~)mUšo:BKX{Bm;VfuLmUS wgLu)S|gE~BjS+)Єw6,^=;@=AJ`L:6sm-JbM!6 IQy?Ug*CX寖QT\ 8X!x Mg d :Qx>&uk@3i(31 Kب>Ij7A{=Zyk #˜ m Y)Y_/ vnj-)N}Аއ>?}G R:>Vo56 I]!k빮A+# u&8O1}+Ӟux] t$F&ȉbBI_]6q%Yde|ε1y݋eVʱ 34/mm5ou6Ǟ#ʜWPl; = R3M9LN<]M;) *"DI6?,@p3$U.&2@bGY)#^wEe~%hwA T?3O t78l;{XKcav˽Eտ35UrfWj[ь1+)4j N]lˤgW@)+|#դ(q"r9lt1ކ-tm19!um~ae;]+eM £0_ӧn)g+7E}]N»^,.F__8QŖ )"3M&0b$\Vԓ/+_KfypuXFǓ3/9~ %{GR ;77M&/:ٛEHn>,U9U;Q#n\݊no5/'NuU1$̬}+)2;'wT8sx[Uck/Kԇ0SL]u4'kw=^.g *Ձ%_>cw]f2Njt͌%/r'OGj7V~yGh:{ EcV<[ yH>) 3<_ TAF0+b&Uh:<Ӱ6B5(oB(;~{/pWh@}^rH`+cٵSD[?-۞ iK8+nf(9\ aNS3QYswj2_9y7Jo*OY$(QH?Q͓k툅 +Tvsx V`s_WӐr_ƧT6_~k|9K9|}Xa#pCq` yAO51rދ0mBܕP{ϡ/3'g?'z{n~S$swi.{(V]-iJ- yH|X5EG0(؀,F=_2+ִċ~?albs [\M̀Xix4e8>}Ur 5ޯn+1BBY#x 5@s & *v㚤D> .,m ~ypHsZ]+#9BQgo A1$gHX3EFٗ/;>5_c54TQC+:ŷ:qyhH>z5zkzB71PKn3%'ns^e|O#66etZA}K`` UR!`i-tu\ZKP"NQYɆEWܺZ هZ}4ق+짢:XY|JrJ N׫8Ic\dr%%}8j#]ƣTmQq3ReWh%bdo+^:0W-[2EcDdWHȻR(ECkD*QQvy5#^rc3e9{G1E۲vcyƄS4VgǐPa1 [/\%:>^ëҷT`bn`jP1?KtpzaNNjeԢ hQ4`m,󤼜jiҽqٶGh|]aXx` ( Ghumr Z\1=Y{hzMFϧH D'G-1[[kh#- Kk< ^F96792"LѤXqq>>7~ֵ@*$2+gX HY{!n= e"t]p9n{%e[[P8^T{v/)qQѵaj:0rO!:{=`7*[_<~_Iőx7_8m4B{q$δ8psVzelh\q$ .J@"{`&LRʢ4S*K7>q1ߵL5VҍX5W/C}ƥ9+BFCЈ6Ahs]9yW:FDhϢ fUPVfS%Â!MPYE*@ Fs/4PlSd I׫[ Lb)Q5Vf^+\vEGP4}y=([oVip4Uײ*uQix,uMF['TbE.RlcjToFA,po>5O!O[9łX4/ Ulp J{mfٵ30x& 㢦pnA[~ZCu 2y^Q6gw|Pr YWX1(m孻#J@y0Zm߸Y}#~1ٶI1XƤ7x =_ywM xh8(Cz,>bLԭ/ZwN I>nsfeG^!_e=sR;(>Q6~ 7Vȋ>+֦ aGa 3 v8GFjs.n'/`7GlExA; R gOQ1K|<&"x,ݜP`$3ۑ*PIPȂV.PzC $ڐV>w)rd煖홶{8:)"A&1@'ŧ:Ɏ wLq,YI;b"GCx( 8PA h%5>Id/\,L/D/f>:a* =(Hc]Y4uZgdRDZ0pr^BOK:1̈{'iIR\$p\rͺVTd i'w7;U&)_БRH*tn|R#%AXU'S)]B./M !΋~٬Svy;y۴k*i3y q\e‘# IV}5Tc21 q1za}BcHDqY(N[(!r0ہUqT!l` ONjnR2eq=裩Q煓$ˊvI_8k5h՗1͑L0؃mAH1L A Te]X|Ҽ!`<}KohOOâŨWE*[]}NR:n2)y&׉YS]ѻ/ cMRڍ:hlO~%ppJdv琤vDj8cyg:!!e_Fb?80\k)ɵ%0_PQ6p뢆y1m:-%$j} >,PL`-f߼X(, X-ĴdmAN"#;mi10Ra2Ou rjz:-ClK4~KmNC?Ys-?I8L>wmוtՔS?TcXs-⟮}&:S ]u3Oc!c2KWX)z4c?DsfFne;+ME`Ddd?TSf-rֱ C2@ ^ST4;BuJ ^`I|b7)Gfr^jܶ8NE $OLf#E`HHCӒX}@.U"C tE*Yc%*P]^ dȉ3MRdP6gk,x1H"" qA:# Є1Yv򹎃`V&!ӦT80ƋQ65`FJuI(9`]$¥W"Tv5漡4Ҥ+R%Ky=[^Oj( + LNr0MpsI< sss:׽s4mM<_0dpF_чGt#rvOLJ`H崎wPa~ݳWϨ㄰ ?;;{ug?%b.lD 7@qӳ/?h7U}̈9_[sxTd|/.Oԡ;h$l$ZF^wA`M=1ɭm4$ldtz bX#4cGjsU ˘|ؿNI(\dƒ蕘PsLE4̃NO ѭ kd/0'0~_v̧;(Voİ{]M+Z#@<>`b?e;=Ӄ:' bmр*B%1e8Oe=t_<ϔ6i9.!qL-RLR$bdI+q{ *L4b)% j`@D@8l:r`\b!ݨqF}$cW(4j? "cߩ-><dy n]%'~cHM}Ah2B,rXbl*({RE)ǚakߺ@Е!5#Ҵ45kX>R|y5qG+瓙ϫ/ pݟ '6cmAzWw#=M[vrs+7&^\(p^pDo nl6KX5%x15JIa߱:n}X3xdA4+5b+K $C MH}E-E{u`#:) 5ݝWwdueXZJVUaBUe˻e ܈ġtG>8ܳ [Wd+-h8ۏgX'7۷gH6‘w^Ho&-jN S>v[E{$4waR0?={y>{wv_g\C.G)WIGw ӟGwHG?Їr}XZxiq'C_4[󼀅ަw}:0kDHΤ򫡫#nw,ԣ" 2|0Y78;?@pDJJ\'\_m'MkYTpsdxmW@1ӀH&5)ԥ٘v"xoTG HƟWE#rWĉ<^A]H~Gk#&֥jvc*"wm_d2|\Ur 2RЕ0XγI¦kRH}=s7$~QcP(_L9h]%4iQJ&>NzB*j *.$xxBPhN:`jm%_pw!@q?M {Jd׬Lb$[ 'ē;D,pڍ \d=1_û:Xvwx;FO},ǟS=5[jQ>Gb灯1쩲 6 1I=_S[p4!0<^cN %x} TK'忓/$/#:y⸶/) `i(P?b+(T]D s>yW_ u„a)7(s0Wu"=4}$Yph’t eK <.I|+7Ò9x(?Kx.+IRHLn y7FvpN@ >JZAav ~);Uu5L.|6L׷E`Gi Ib$XKn. ޠY Z0gu^uH=ԧ$N'i++ϕxQ)C>>cNݸG }M}(.}B^' c.` !0@K 6׬ M,>9MC߂#Ge'>9e@ʜڌ ftl\AoNq͘jJE>zmIT l?5R 9Kln~nOK-F|!G\'U R2e,hMl9$MG{\~0 P>4юR_ Ä(s/NZE&cXҠ`Z)fFqd|HLTߏ^% uJjXǩfND}X#p0Vxeɠ[ Q4pAJLLM!5'(T9b~B$%HuDb0WW0SZYSܰǑ]Xd䬘"A<'%_^Hm$}1E^;]fm `;DSJʆ{#4y tT\-cxQϪArHM|Z_ `ir HHM8Sz nze=+6#m . ,sU|v3qfN38cX]G__%^6 ajԽʶi8> & Am#9) AF8Lڧڸŵp(2.;G =@6pON{,i_sɧ-%g\#q.e DꭚO-~\VF/XIgt(^'9(%M!@{=={x`)=îoUp,`r1bn&uūp]LJk;frPZ:zb.$uTOa:ZC+]WWb_GӒGhn 䵗.R.ɼ.J%h?fn^~*hI76Qm5 TBZMDVxN2H PX.Vߘ=i1s`_ޫ.t^(R^OƃTPQƠFbƁAScwX|>O6 m)bYF+F]4ruY7x:x6jOJV^^a,9ʂEI' =Ź %T_' Bt&q C_9vssz\%òA-"%8$ ~x '3gyj|Q' *PPSM F(SQ/9DBZ}KD@Æ ?U|{CnX?(R6oSjOD+Z75cXZjfo mnGvŹ"jSZ5!Q\ћamggܿ|EM /a aǚګv^⽝y Gm/6@ d{Tvܥ4`"oHF&.kt\M.P Ge8ezfq!&l+l &ʌa +)dD >XaE(̫ O^' k'6ȈtZ9um|{!'bXn4_$檜 ۏ:OB6D( Mzb1֍aո}BOFl wqYVH\#AaXe,^OU;X*3ҧ >P,NsI2Ж#2䨿eUCz5nѨx]0>b0~Be`]v(kGnJR(S7 nVHwn&ns9p=}L -K3;H<`jQlu Z, X IPI.gJ s86íhh_fL 6Q +#&u5BWv:oR@ CR'KD<0sfzѿb(R煿ݝ(|e@%_/iwICcL?Khml8sL]åcZO7m*\ǒeRXt'tElP;9LP-|QMO hY4*yز2a"> c4Fܒ9q E:2FFڥp(Stc "7 v} :@`LQHԝ7帡e@͛@'қʘuLS4p)phKO/P.F@w8)ZÆ +_BiD1 ,)rNpa5P ?w% P&e(1 79Жv[3!t$]0!!| 3M7)D), )sQ ɑE< )DN%ۧGɁo:~3ry]hAPl0|X7}V9X=kߐVx/ΰGKFbUuc> KHMY"[.bI.ԑ$!zhm!:EUӝd%lI-( {xr;p#(s[^-j4!r)vg̍\9_xx;(=pKGKz2{dC@6}EtqHFӧ2xcމ am5!z_ c(TM*NsZnjIV_dC.ޯ9&Zkl(0PQNHRi\,CMAO`vxW`:)x&LZqQSudz#6QA!ɱDCLߚEJؒ.$cܵ9Pԇ]Q`DžUa (xr'ym=K)F9z4.Đ1겢H(n<Mu͉mpB+= PfJ\ GٞZ8%f21\dL^{ ߵ݉iڻl.@._OvؽCTVz9uWvd?xz=!!Y{Oc'=z.1@O,\eDO5b\Bi4 |ʦ) 8o86;R^D$5u?'5~N8bH˄aZtt15`Mdcfgدmi=Gx/0h蜛gC;$ R"Apyb'T4; Áq gj[>!>}}2W k~͌r` Vؓv h: ^2$i m4wTXgҪa2 (l`$ECBǨ`ȶm?nC ~@[D9Nfjrn@b&ǶvFIy3^C&䭋+i[UTڄx%2mQF6uY}2[ҋ΅iN tP0 tyuB}tb} ;ؑ3:7Wqh@\][ԡ!uQjMٚ g܆ =1Fj9%Kch%3hcmC|+V[a>iP֫턢81]NrR;RsH,]? C. bq^梈_[s YΣ]Qc9vI5:d͘8](Rą6Qa\e [#H Ad Uu騴IAw Y FzWɩs7to"9Tgڇd!}CeqLSh;ey$/_Ŋ\!M8O,Mux"04m^JڽF^65En@C(Z[H_vZ!h7֍dg _Ϟi p˧BT%#;CB煇ا@e܈v/9[C+>Ί6.D3"d8cfU. 9.=Vs/o$ D ltfI&<;-_a #۵KWVO~$4K߈JfGG V;E*ZA&dAMj :<'J+K. ѝrq{/K4{i^ml473c  F&˰?5SCao6?n'h5Tx"N`b@u11hفf}+~K-w}zSb~u ߹EPBvjGSP{JNy{lWkB%3m=O) 6H"c'FE2&шH#~ʍ/U inW-E5!$̵#oYn8iyڨ8HGKJ*v;|Ԗ}LNZL0B B;:eGN_iXBMݗ+k臂ri8 $s"R}%}vv6S]n'|.(i;dix%bd]K9']$+~rO7GU?On=݈О]?و:(;?Bf^NN=;xd˺ZgzR=9yvvwϞj+Fy I!٬;޹qΞ||< p+"5Cs"$Z{b5}HlwGL (xl F wNF@f)!.xC.EԷ۴]4mڎ}6l;z99olۙZL৸,(؂]۳q>sԡ }iפA[=D|m%Jj"6 %X}@t&( JK|Pǘ]]A`H~'YQĀew]ͧwN_`n1tv_\>fFl7J;)`^fg\:͈]<[aZa0-;X, ԾV _wl^ (( &6KajkTb6 9(qpH@T46d'Ɯ2(p.\J-i-"Y(_X0(%/0[$a޳_ +r=Oݝu2KTnf7} ITW!@? x~-N`L3*?"XjQ#WoSlPXh wk:ӳw'o^g}Ǐbin9O^bOר7Fq,g99$[;x"^z#ե\`1V!1c gkަ\*/AKٮP*/md(uѝXH}s( wD9ؼxS@xj]^k};(, L|~epDAl+OB%O4z^y)nJ4RWӄ2*0R3s%c2dy. eOuep[?[57s-!=}U*ab.-4=Cu/}}O-fev5RxR@ eG{އbz_%R4x&z1#k\9sdiFfA7V(ֈ([끯 LZ6)sl!RRz㦹hr)A#dc?,<X};DvqSJuPVFRTPf:!ÏK)MUdߘN!&D3-Z(M0wh לWm':כbQk:' \ c?o`{iR˼x 7@ySeNOC\wZzlG4 ~}b &7xӑ}iF L )ۙaȲqI3,D r8OɊ7>,);v( %z ѿpg@Kw(&,MG" BBÅ+~nγTѥ-x/8Ґs%=F@`&*ݾ{!^"{!LL\:}wofC2FK [4NlQyl‰5!-Sm'P: p< n23w ,9\ %I4ULlIS lMC*D-aJ#NońhCJZS'Ϣb8gޑ Qf_Ȁ(A7½g}c~(#Ro:8Q|v1;ϩGig۟*ԉq'' bF?7 7%u=jTGHhO7~bY"{=@I֏fZȤ :_Gǃ5@~V臣O~*r[cO}?^}¯H ޏ \C-=4] Os*__@->9&S[_,~2)':[ *dGV*ae|t͔$T ($\v Tl nžIg;)qryUUI^Xc`+;45C*NN7Zʒjh[\qʼn"\QUߒHSOmMH750cƤ2Xy'~Q+ ImTcg榙Q7C8bmԇ jZ"?}/D7.D{yQSYx^Ej7Dz41#?^4W'LHyrVjŒx~aP9ŒY&4A#3!'!taC6D30bU.{xMGˮ]7qy5Gl얿pu'Bi5 JE<ʵCb1E{Oi5(D[Vpϫ߅soL^^?wNڏ^'ܴŅc(_絞7O@ I~8 `sIZ6&3R0ۈ6t%$[@3y @\)Y6h21%)6)L\ K+#ƎL8bF1uTae x9XKDL4pOr!S^ڕ~5kH`Α K,!_;8 bwRQc =١ 0QAHV9۔PCs_2u|Yh *@lVvdqȸ>~d'1S a8 hS3/TYG"̕+a4*@A.GpGY48p}-8}ZpX8j1/>pz2sz 9:kZ^#Fgvp>Z횯7}Sbrϝ钔H,P;3o%+@業dDY a&Qj1wItGgבO}\!s׈]}:|wX".~3F+_Gb7 } ]u'ft՝~-C]:J)D>f/S_"ϑSMޗhPH9>Hb{L-&6|v<{eLx(h-KW^J^_? Q?77-O|3JX/oOOe~KyFui({Gr <_&I+?DWe;%z2]D%N9Y&>l3DhxdG^łn/~lW6 EFWCU B$#%]P&{9F]N1tߑjta\nδ :Q=oRZdC.D`3`m=^lK6<T@j슱UkXpMN9ݤ~~Q:16mg#q|uV1a9US%~ DNoMpLsPy6zT!MԐ9ؓr>oG'+ 3xQai9l{M}`feOo2b OfS04SB'.waSNYܹ ^~W$ 9)IM$T'!H 0'|w8Yys8v͇R4gpO`9'2hAy{AfވPi#.y8I51!t3, Vv0nZPo3J^|^,)7}**oNDf *? 2ǿ(:pT?{o6%ቘ|UIrv|h-jz{: I %;]/ Py J[!m1;O9 }U<HϞa,'av:ښ+mWZo"cvg9aiX齘\ ,LɧFÖHĔBI *ϲ-R$pH![G l≆e&*# wn $T-4&3'ՊZv}̰97{ |}@9c}MVd8Ϩy*!.I$FNiQQAB\uMvq҅]X&#+"# zD wOs:A|cN2/x9^gI@(_ {XGn36Rs% aZCjCQլ ]O F\-YnQ9 il&#LҼX``(XwEm4m;$58 ΂f(Z* j]v5##s-1un^2p ,Bom~?#M@tOɎD5YuJmoҜ{esvVr|}4j& ezJF Y#>χ7;O4x؊3[h1!u\"֍{ZR+eVClHΝ>'\>.I=H}  O26wkjh-uV/7-x }pndiX%/h -C-J(S)4d/[[Ψ cIoQS'SjZiu`{Z%n{ڼᩡuV0:}Y:`,e8bFFZ:[lŜw\1Y.R y7B@nd6,dO#- 2D"KGx!ZfX l#`+5%n[J *9~eac01pKQ۴F7`Lz1}z67jƾIXsfEї[4 kNV]9ZAGݐ5%? p@%`/_JjPxj62Jv4fbYki'^߯Èj~BtdNMe>{kΕRQ}ܼ.5= ]Þfn80XuHr,3wdD(oJI*Gpۜ&\ 9GNˀ5o8hAZjbvʚej瓛#I6HxUq+zRQ?ѯb#xBin|KpqlW3U9w[%33@ZQFWk![)IնpK_?f?y7oo M|F3,u%Q6.s>t_풭<(e:5|9n|Q"BNaϟ~폖s|/ס*8#wf| A?=~hA/) j_EH' 5hW8"SމHp a ?2c0DS6O%O$*37ف2  NGs:5|nժ*lCX>Kv{//al|Aq8cìc #|I(Z&+h=n“. _uxy:4JaSU0)]kCM~lTʱF܌,@4Ky|N.vH~)n#㐫g풪B"f,A> 2vOx>3+^]@P> t2{~ZhNr~3r+i?A^(K&tq8 rB,%o~D?#NuX4eò[3 Ig5{V/G71 FjW<&659Q^]Ij͗1BFs,'zXmLR!N*5ET=K+=-{Mz# $0Xmi.[P!W_g-Y36CZ@AVZpDu﫡BEÉ=~S-E8`(B11TI^Djڡ5$N1ie`kɲJpfEc{g׽:˯)pMȊ/9Nԧ 0} X4_kլxPIE ׯmh f2QsrhAi6I6j3 =E )(\qe g.V)+ 9D9 ݶd`V876nF&Y*R 8F4(o'JΨlFY$I!J09_5S'eD}*qRCGܹdb&($qR6%ixK0:P`1;Oie|#Ua#(fbG&̈́:.lM۠8,Qʶ$c<2o?_BD>gR (1Cuw1Hz!ΐ q`1B֞`P0efH@"S@eaC.j;t*2|}2 gp(؄Unu βTP YF-0]{&7sg$@CrwV?(M"rܫ >qCZc6zEӽ!#Д o/gr -$ycΡ0h_SeƉVa8TXw^. z\12Mjxazr٩vJL=*Ї [:PkE5%ۛ gm/]W".sy}C,wUQlRH+e0Ǜcq!ڤ؝;-09Dm*';p M1Rmu/iQ׭+v^1b!W*!m{x!_JC2֞-˴2fL@6D["3X }>BoS=dAEIL޻,gt}W\ʎ1:5 |@80Ч:eov°6ȴ- NiVu–xHOck YL.X!UhiDj>s0<ڔEus@7ϵQsz{mGz'~l1䄳@o2'1 .kp(}]gXf;3A*9ceۢ3Iݓ:e3Tʇ^?>6k;BlyNB}P[LNY>` = Ed6eÀ<4IA0OB3 %NhWkre0Y|pwbYa ZW»(S+ahN^b= _R3&dX nLBKKHzV(^UJn06LP yϡ*91HS%04aWZUk#ZX%mwX/DMK4:O_&A5!uM,}0S *C_ j$s:1۟vԢkp3#uH.Ut- V0ɼSP*`Mfd5J0Zˬ6;CR KδϿ"&3/74XdgQɵ(3jge^52AkH'*s}(KR[\d[Gc>|#?TP:=~eD_nDz`(_@ft ~s@rR  Bٟtʜ0 yЉgqb:8YxQtH"f,$7#!f3x"m}JsG|P“tuaiU8,Nr,N1 q_NO{ꧣ߽??~s?(`@6CNP.R;7Ӯ:Ga`&+g+qH~~NxƆ7hNP^Y>G f S "ؗT;2;+65Fag7n!/ΐN XRy1I) oeӃw=-/fT . z@.u/K )~Bp1/? qy4}HnjW݂կ@%ܒ.a^ymDqe ڊ1j AO\l*Da&]D`;bHb CoCI^@l*z%E+6s.x:T p }D}TиH3vx,;{x+,MUt_ \%B69r<,-G9H/zrC Ƴ_QTݪ:p&S-%wd-ЀWj y9-*?LK^pfd5Fяdax+MV3MRpm>tta} ;z9O?|oȘrVΙ]^bނC#u:`SMk<ΆT>nP TteK" )<1$Cߧ>̒ᝬr<C.(uOR %f WXgZ` _ ',b`uq6M!G wNhU=a /NoD"jBPNZ ,ı+*jŠd epC@qe[:}Q+Iw8*3fw;|Vs,Aٵ4~:7YxEY;bKֵn WW 7[)w!SXU6gl mJ"P{Z?|O4m1J:6EsxR0c!D2e<@~F4 Dk. 1ip5;+YˮW5J5%a=-YfZ)0߮`--cH-x`z|j$=K7g&W^9`P$ݠ,B QS͢t?x'G#11?^N'&Jz?uZ/_E;G)- 7Z}%(7~[N:go*ãz>'r;t4dk2BKeŏ_->0.8 O]?/}Q"k\YAD3/ʴɸ7N'WҌTe,PU!]VҐmA,%4AT!ʅ s(8e㌩tXI+?l@g|]# >m02MkH>kU2_scXޗaw.GAj8@8},U4)%.+>` ^OinmtB *=p >Ψ%qV "DbLCgWRh, Lm|%Zɼ NCJh}i#kiUm7$ll<NHx/B7 Ab5|Mku]}GVv^g&>e멲퇱=ӷ~> {/zŷHF?[ô`G:aöRf  i6NlȸX9|WXRROo{;J;>tE;NE]A\=pE() ;9x~c!=O|;ڿo lЂe~ՙ]ϯ\fpI&iyg)v!7F۴} 9]3xڡCj"h W*nJAh!?:ϑlhL;X K$f~,^h+p0D,"ZUpFF-FaLrԈCwvgp FPl:fD-㤸4J`hmYnFR|;;OG8Fa) { (dsv\FIPH|ݗ_0Wafe集 Tp©`RlJX3]8w2g|{cuVI+H%gmƶllƾ(t`5HJ3X,;W`t#0C" ˗`k\NG؈&H|2͇4 Q?fT\+-LK)9/7 hޱ%B7JvDDeoI%;82kr]PqĀH,!ij7kmXybF;r, K{iW8țw)DHɉ`@`z^%t[/ RB!D% ݀Gh@AP`6*J*ߚ:*kBebb$k+műUIY6agUˎ?c("pb/ǼWz+'VˋnHWF<;դ C6x$[f*\'`Ar9 I( שNg%u )O +NLɡK@Ft VBi\s"I\<Vc8ty>t ^*l-ћwY R#D8n\rz}]Y/ITIlXd[u IugO.a Gvhf(jd<<|ʂKz/a3,Ns;.QR6ú߰nT|`5F5wh9xwR4 iSGY*j5 e>xI0c1 ׏C']|xtTP*.(FiB6}x7^l\ w`'Dڃ$Bb侱ݴMe~p}uU!d|>p QBFr5 tfσ:dAuz|\YHNor 57k04Dam,ڌ|I+3^;MқWh4=Eť QfS}5{O#C$nJgFRVFE/”hix~pj*UFm1T-`qtUz υG֣#Btl=T`C`e;zs۬%!ԪaD׈tw29q1jX30@,7%a L馾`'oBgsEƞVEa[]iJm@mr. c`0Þ#a& "{7Ah1'nP/&gb X\F ;Km!Y>c&+F€URIru.|WEOL:` z$t wufGei,nT`a/Ӓ*o@7PA~g@RdkMƈ ӠFyq<5ǖ8  3ɫ 1a"!LpO=\##aqK 1YA$8sLܛ{ZF4׋9?GYoyCFL!(LJė xctr\xeloیlB: 7BZߝ3 b@ 4. \(`A 1P?%f"ήNix@n #`ϖ`wu> D عjo-zT.95#n(eF7D2цxT0"jXK-YL8D1|뀦 ?v;(~ӻNDvmL /$=)Rd||MXkq$Zݧepbav z@jw18"1x<L\wsH&0D]N 1J&H`t'jN8%/}!ـ(Z `>Rؽ 00ԵCuz|zã_NIq2X``PJ#@ӁȃWubWwt.fG޽?~dTF:P %Uab-_E&5DAz'X$ YV 'R 4 @ .$_@ѹ#փky(EYު(D7ya6n$rl$n.#gK5j 38[!=/, D&vi]D]eOHzV!}/E},vX3|BԪҪ*)FJ7Ծ>7Kް ŇeLx[*)jXɒ9S*m_#/D<=eeҜorCw%]ryF5Ld*7 7bН/qmt4?YiK;`.k) D|u &-' ~I n2'f-7Lx=v.!)@;,:]':o\ ճpn2{,  N~½ m `R4 Dn= 8V &D\{  L%YΈ4 x䒪0t-Nya8922Q^Jr0yONsQ|u sm&a+%6:b@ND0-%j) `oV>fOFVn6}|)-| <;C[r\-Dsv\‰dΙq1(ZAqO遑~TD́~#8P.+aMfpyj8+t{^/ze i&4 >ZMJ❡x|J?Q:n[Hk*o)z{U=|VхDs|<ɤMV jt&`nke3׎!x\D"K.'HhNӡ~Kgj^JDQBFA=Txߩeqpa2lSc fWb1+Y Ӷ8 e<5=0ܦvE i:b\LTrRG*T:ymphcnB]z!(yN^b=(igSsdg><f'\a6l\euɦC}I6zU I=v9ٔ @S1&r MaQa*?I&X>\%H}]`3%OE.@()E3YyTfJbJ2.  =bbW7-b |WKM㏊,l <*q:E:<ȗu*(([d[й)kSrѐS( }N3뛋\: X6ioN>  90`D h' 1P7OU\Le`kc%̌F83Pz0ΒpE?dh0%{D#0J Po:ڌLbǣ0c$YR$!WŞ*H!]wڥ7V&9 (U½ĩF/N+ SՖle6z 9:H"W>0 9 D\!u_ Dd/v 0R@L9ٷVHuZ! Y\>Yдd09iX&Ķ3-D_, C#c^ 8᪡/uf7x.h!J Py>Cc E YF$7H^&0z&0ǑxaMU7sy?g3R67sɳb|iӀhA7hRc,qr @6GHJW S+go@In Q1HN̢`(UA&*!_s3,wL,̆]L-\ / @aW_j.gU1I3Ìl=CRlJOgv=ru~H'袲ǩ҅Gћܿ-簛/ndϹ1 C̀("_26 3^TI_y#byf6%S셪[gJUs"A,WYuti-].](~͊GO ,hŸ3B]0!;Aq_[Bc?7MCJu]d!a:NqO C]Ԗ1K NV[Qn:]\jkA#i%tpK J6d*{01;Wˍyo2L&6RQ UH@̫1II IX^ŀՌt &5= mct0iH@;U* I@fSi8bz- /xX@jNh+AZ)%2;֞|kRbU% SS,獪lT]e {YUJdp\iHLB#+jJ+jV߈sWI-by<.ҲdbҪ#6-|iM"uq]]1Y-6- AHyNY >[=>m^ Ƞ Zp\UR5.xitԌgIJ(j^[{çRV M!0=$T H<ѠN$ (-ZcFaƮܬ%xD1\sD;Y9 GlCw撂CRm*^jEutu5GnQ<-񭈫`l`kE!igzwD?5DZ6bl'xM,yo#-ҷCܯhQKC9p~8)JVQ?B1Ik2xj onQJ65(s;=L1|(U%"KB?eEo{y_Ki- +yG @`KflL_PVXengr* 3rsEw9-NBXoG{ZHA.pu0{ YUU WJ}]fTIN][$Dn ㈷UhC4 1GyFzӽy} w{/'VSmг S)C[l(kD!)30|pw0HԑZ sWl{-7ɪW0ɧ.jӟ hy|D&cQμqn0Ϊa\dX󆓫e} * A rIoK,)"wb;,.uXy}WM^\[X-f몼kPBw׈׫V=ڷ!ŞR:2UB @/B"/{߂m}[Am%lqX7_-hR"\lN*h42W-)tvzC bPOƾ,nG],[hblvO}mIETJ0$ĸ=GԹ|>X*Pڅ_ٰ FrmQkk`fd&<-?tjN.W찗 .Gr/NQ$Zi0+gX/['&| ̿Ǖ@>wUs\ |sE] l5l؋CT[1Z\lQe1XbtEBM^wv,ЕE(éTx_tZ^;J|ǻa暩n]{-Qm[>laP 2$l-prGo#9Ŕ[= bI;g_z4jnif?9f[^C}=(}Qz=nMk^"0_hRLt]op>$-ĺ *t*1m  [i j{yɽ ѯ۾>xTo!S_9)<ֆS_-Ĕ4a9ʒU?hdZDT[ TCW4W a(Km?^^S#VWs6&gq1aV;: 8)հnH߶@ЙHjT2/!1cop)&%rqHF(`IA BBU֟NV$$0]" 4#qR=;Ԥ۪ﱬ& * 6[v_2'/Jsyq~F!j=ԉKMxV_YO@w 0*+},%GSg4t>Ҫc~Gz,S`ыlC' |ᕉz?Ea4#s1D^ XF`JKykz۞ƫ=ׂܟY̟xseb1pﲽp(棌P;9\!6d{IYwK:sw#l*pY݃"rNkF(LF˜^(vÏ͗PZ<& ,pk2ӂB}3~u?4-37@{o?~0* AX( kI^Azsi?UQliR+M2w52T|揃!zI`!u ( Q( Nט$v7[w`j|?F #c_CXN-*Oj;ᅦ3w.KdOv;sJrI uav}TLl\?{>wc C3 X Ca|Riڢ]4MOOгl /t;e0 I/ ;冲=M2v*{׭>O?!ۢ9 ꎁl$*0r ! ZBh-0+_+#KW j24c{])B.KX+Meb4îTX0-sst] ^r]X2RXBO[*P0P-6R?e5ZXjiIY1eψZٞ5!Srg.m ̂$xޔ=&?8cfsgmtnu,P# HgRK?p8y(+y~h{ꟓS[JA!G!rIF[;R|*v+~ n)̓)fsWt vDC/kB4iEhHQ:ՓP3? cP ê.\ Q^UZr!Lm*BI;}~pP z/S|ĩb<'6,{i袍OrtKS< IsnEB+AҗaDthRS1opx״{d/Y`-:p;Є+0Y !a1-=E%[TRtS5% 7d6?*Nf%4GFie gh|*wN?EJSFuHP6hgOiҕŽ99$uFzo=?ǟ_NXaľ;+NŨ Ǐiѽإ6=K kLV? M^٫tGRi+F^N«'R.C,U}O40OY'PQZ9 OX RDm7s=:l\Ť y s Ԓ@ƚN4U` $Aan)*^s_B)E(/^ZUI73V" ?ޢ^[c%dr z* (mN6;R+n#$R8Y!n8MBe[#< 5OVi 7~l-[}Y߷faX`H AY@v.4"4=3DSPرDkȧ'"؄9nm[7gs}Y{>p&B Id 2De n-rCd|3ȸ;#6Q![^1gf" CHq]1c8)b`x*DPNFGVl^1lFw2Ҡ84׍Zfeeey6!"VȿX`΀.eU~c@l2݀Q3fI {)#2m7lN}+d>5M[z}Ƅ!)g|dG'Qʅmt s>+jH~V-4~ *vmL7K,K^ !R)(f( 9 l^D=IMRR{./k?20.:#HQ):Nm\ʹք"Ň@KS7ƃXxAb/̉O!F$ Bvݽmg.S?&l 785\80}W$ ]%v~)MNP~Y!J>/ eC.E{Za'BD*a|Cֱ*j-LuUl?|>IdeT.|x?њuVxQF!5!~?Y)81}gp t΀uTy؈Xԛ - YJ nUZx 蚀Y2o0qQAS(_:%ozW6S^F~eT[- AjC'?/"*@ssAPh/#PHJ,A]Jb(/#Wiʾ剔C"e:ՙ9;yDdq O)&@'UTN5\v )TZbA,8._fٵWU6,PPUI ̧u %QXF'$nV۔жh#$yIxc2z:R0=`SD )OSuCL3fH(봔fdZo}GN4e^4yO)$MجŶ<j]hd1X{f  jX@UgLQK9Ԃ$Vem/ZcZSQ9\[J+jjkcEi,,&i?Zb@O*B[?NA'`ױL:O RWFl#ob2HoW/>r &tcE+Q-ǨʧL$.7sKqcɶ1PԈulȌ$LN)v5݃k_4QZ'C"I7 ^rh-m_Sƙ[´W$٭8"r׹YKGJ~3?_eI@nå\ ^X೓Q4 ih 4baI\\zECO2'~H!Ts*3`/_ιMUۻ˙s9Ks)atshP9. 4 ̌94\gvdb;嵼˯ uCfM5qRZRQ?k? L 2qXHOY{MH ܜUiul-CFQY&Fh٨\AէR:30"QANGv`O]pڝUfE /!D 1>ɏJ={dy.\Br/$!v\5by^Z#^M~[`- 65i5%&р\2薃\QX%d1p sF$\v`CS~7( j"sk 8yh@<`ʩxȾNYގ;Fc,de u7RXڵz"e.J~.1 ? Y3@!!vR?& PݩJ023& z@r@aaCF&9|Bqd(vt  ơ a])7GXoCZ.z cedg0ԅHFvshh7XTg/O̊[Ova .S  ` D^4k(x{ f8rNN(*SZA F0 0rm"[HT~h2YQ$_4FDLAPcxQh(PQ VT`V1K]S̈́.'53xAAЃwkDaf{fT3 {{U=Ӣ8H,qaillq[7Frk#!$J$l\XSl --V5i$?-'P&\~TNB`m$&"A*6[\ 3 S 2r\|H?WJLA }AqMX =ҏa-#'=AĚ҃st46On@! UqJmj1PF[8R? F*{U˄UNi~>l\*vyڪvou^ɚv<=iA7 vM0"gjaMB+sjb:t4LƜ Rex׆ u95eZФ)uZOc:N .3\7[j,qmM~ƾذ~e& 0MyӱAnx wO~<*ٺ'6$_SaBX !9jt_1o՛ Hɍ^xqc0]$_P;=Y ^#h; 32ڊrhn?fJdMk덎x,l h@6 waHm7+taWi)F7 MGP* Kţɇ(Y^̡keEMLqyƲBPݼdNh}$[V0e!-[4Ϟ5m Θ'%hA 5c'AH,VBn dFBfe~ꁐx\:Gs.W:!b#Ya)S?RuZȹ]B:Vq5-Zd\(2ߢTϭe_ 3߇O>k)EkT=4Ռͬ^|S;wLX:X?AQ3 ^M+HG$-xK"-6#V=pi#x,:]wާ}Λ9uoMC FLhb>QUtռ04 70 7=^k9}"!C0 3OX6a-.7IJ-B;p{If6siŪ*<4辐1dhf܇s4Sf`̢.f( ͌E s˒:(ҤH1S VpN6Y q5U}C%#Y]㤸rL˜JR9x_vft4x2N~;( bQ9i}Zp Fh'-: >@( E in Z3!4ٳI@t52 h@fϦ҅bwAmFITYlׯ:$VbDCtmiaĜ $R/-u#drd4ۊ)W@B0C)$S(ZUMjm"]QA y푱 Îu1%~}M9FEf"w)0O\ V>^h"Q'6a۷gD[H֍$VdZ#m,!'BTq&Kkpl*7r(S7`_G#S@ }vs2+-# FtN [X|24`i>j|sl34/X]ځy)fU]޵1EE cTʬ:Su={ˋ\<bI]>^OI@cd'G/.7&ݠP]v0#vݧL(hnai ]iE6R9fYL1 ;OM6ḿ+IL· 1lٓƸާƐv_/#|*Diaz^^#a@ØpNb>8 xIXPИ$jTR : ˠg <В=Lf5E@Q,bE+5}lh *,ڠK!j{`-qА!4{ M%)06Po[& l4 h`+=0`wGu&ȰZ p4MQQ%OF/v4nky%{f8|6,/|\H6*4+nt9 IvGYXެ^NV9߲< ˔58.:l a}y1K{CErD2&\pT 5X\Iu暵?p^,^W; Nӛ c令sǹ41Fӻk'y.a\ݤ܋_š6{[@A.ۅ0FB%e?>/o.^NF%=[̃DtK~*5jEg)KX OP` 35mkMZӶִ`Muh߸%r+`E0_ V ؔYsIU>D[>tOD`V] 7J,؋zx: /VsಘCM1v s(N}57&4ǯ̩\.7aAX=d.l@J^T9q ] ;'{ϟ<5 ėk 8pL;j8|~FTRf4cPKlպ1+\ʶ »EW[t;]cnu5U.1G6~{{no 1U %1~L b0*ssQj{J7LTDPQ䒾&vVZV^)JdYs2І)sK"/!ؖ:-|ki` эmThs}Wq\70!̞yn)=Aeb:X z *P ʨ̾Y_^惜۷:㣪-Jk#΍!x43gWj{G3ЪMvr|3-}NwlCYe'7 =\'bt':zhxBOW!079X>w*4aR)Cdnm1FgO54l-|,s$Twɩ7Q{Fl?F،ߒy./2fY:|cά: >/H%3@k!7{jD&0j[ u:2XZ9nKRZjړ>\e2Pk>£2}e`TYLK` f Y鐁At'[ &As 4- 5qs-^&ʮ&t8ّ^f#-?d5F]7$cLD ]nm/%_)VCeyJ6guf&\Ztt }PqES:3*HK]dtۍŭJCh23i6d^:GX% +=f~k;VM::չsi˕=„xVCx34p~j}XԧIϽbkaI풚\D:)(ZjPqNG>ӮK]RCsv_t`4Daŝ v6jGd|]vT^7p+E\FlV&JXTaSa}'PV5._"U5G!Û}a'W{7\8m Υ,e](lG^VYzzFxrg[Ax Al26 (";YGkAmĩZV"0ÆoJ Vie =+H܆օM"Zg[r}"3?S(UOaᆦTzv `Y+ɩ5PJ&;chm F0f%X;Q/߁b7X9«h4nwYW g&c әɘ$y=#00 D"4AZIM278O?ٟ'wNrrLI ewN#TZ И߉r%C3iy7QDӂO X)+V `Bk !\hB4Y:Z0 Y6K @KO48IHpvHF2*;5 y8]W3Xv IFHF EC&%‹ hm1.=tT? \t\Y䊿SZ;3&O$fg pԑIi q)I~_8R64"Ͳ`X-;@zl?ѷp(ɭib^T3 ( 0|aGCE ƗN+IQ42v]+Sp~bQ˚XN%rg/bĉD7E 쌎FZ^Fqb|favbf7lW_/2}X MX,%R3fo0 P֩n Pd&ƎRq`t^9ӇB68h[3+Y,(0"=H*T'BES6yN8ϛAҴ+em ., Έ"۝\R@U`Ch ytF |:ź Y{&@2n? Fchby3$TC=#̚dc"UP ldL54u4lv] F7$Y߿2L}h=rlei j\0Pjq^X4O)Gj)''ל0H}sqi'?Qr!|H #9_tl> 9^.U!:G93c3$@'08pa}|2No8bD}#+J1Ϣ: 27O'1 bӼ z&c f[Wm(E8b-QiV4M69Y|y"nE]t[*PTG%2dBدB`oTV1Ah%!Af@ zUʲo&2'+3"Ͻ$m!ϊI Nh`V kZ8UMW6@,Z6'x;J|fE0o\^#42&i2pr,,3s$cP14s /JH uO )E`{YV͊=_F,xsV+Aj|o 2o֌ύ7+ehZTS#\b p(35*1(5UgA1*hs,R-oXq7~>E21[.磾<AГW, 00n q7;yl σ ʶ*+UGa-XCs4SPCRؤ6Չ {mk@}ZN:^ "`NA*prY Z#4y$ KSZp(FO^+Oވ",gQWSNp]Gt|nQQgȌq$T}#% uRmKa`j .7I@ Cxn˱qc" Bv6 ؆Ml& 2}Ƙ xl;ZqsROqd ji-#zл@¬}$F&Rx }:R@A&^eElW+o)z꾍`z"X_JBo Rbs]}qUo첦z3g΄h˒ hM{4cQsBc|4<`\dQlG5) $bDdS%bP$m¿4Cmn0C'VoqprK{p6jYFV",V;{UH9zsWG~wv [ۀ(ޭ oitz Xs1q>.|x ذpptzj?[XEE/uwb]vEj6n'DZ)"[ͣ$Ry!T*5W]Djݣ j0͌gݱ1sgx ߗA;X;bAd0Tc IR.@2O hFfJlfG~ȯ]23*aOIj ;ӒyaQ!C-X9:dPOIˈօ'><G--7Ge:6UIHyXLSa62P]rl=o|K3U/l5H3(;ČL"ߐ26  5-[PU׿ ockՌJv}*<" +,u9ټ &2,gjx02in,6YhG[V}#>T].Z)l\R%paB#')Z6wDӬs3Nާ{2_$(Kwą28J*sQkf fGQ8:Bnc^!n$KEєVxhpCKdl zrK4vOZ/봚dZ!:ђF0hgA#l;w =@ȈTNA)  /R߷li4=T{S;fǿBaKt_&g V`d (uzodl[Sܫ"q1)mqK+ 8.ik{<̥]ݱsаf.8J&.1 ⱄ4Yxr#ְEqEE5mbd.Q, L!'&,b ɲcv (YiWPj{#s2yc= [Ii <]GF|XyIlzuRvhg ؗ;0;mQ""KrZL T H9 Ped''P soEnwTGŎW`aC,k5mgj_Z/;-&FW8|OxxBQ i8EXYոR 2qHiH%+;s.+C3ښU *u{5\.4#6ml([_#1_ǻ<9R6+f>޵ʿwS%tKnr |hY0*ѡj#Ť:??G?%Qfݠ{>6yqI a` a>#FMdY&QtX0N\16q S0_wC\H!~P&Qof٘ n!䧱7Ry} *'b8<򎘤JG*/~ ? bfqf kurD@,m_@~wy ⲸDݽܴbj1 hy% 9cosB 3Uo)43!i{H`~kLʇھ1\6ǨNi~Tc+ ~k>2Y9/ d:%D\ e4˖ɜs>oml^0 #;+-U&A.J.Xn̦ΠǓ{j{>ȟ C@kfżtu c CNͥSo"gm>S_c?nó6W'#???t‘`wbT&Gph+O{i}VZv[$tlV?|ȷ HEYх/6+8YAى9cpe K*m7&/9e>U* -b RϋJ67\3͟֍{>SԐd68S}€N;y/䐑c`~ُcriofkX^'tkw ogZ\hoE ϮZl@:CKk_0;)"ڜ3shQfWυGUh-W"a7w!8bꟕ/ήyxW* U<5uqD}tUh7\o4*|)v_ՙwƻS^^Ÿq"N ʦMEw# 32N$S2ܢ*ʓ*.i!4dt€,6{tBeQ W8Z0@؉z-ޟO| /<>ƣzT7Z=Q䇲ۓ EX<VYגJ$ e*|O*k[hK3~g.Mjͣ÷'Ӈ +] 0DIiuaTЫKqQB" hp. t5!nQE:᭚uv +$"u:n剋8] $*$ŝQ` ۷?ͫFrt+}3ϋ5+ֲTmt66RޠJəH {CM~^L8؄q &Q ׭Rڮ/$.{Aa 䴒 lqJ̒%6PbpKHTcf!57Ëi`oLsHUt4L@E*+Gai 垄PJIע8ED&N\("Ӌ{*ٚ;T0$yTnkIĿkfs3ld3yPj2O.LKI(kXWpo],W`2-C`sX| oV(ZG|y/Ì$0E|NHWa"_#YypUZ:BuC̒Gl4w54v2Gt6Q@4]&E.y"# 8@VT((Ogo_ Gb$AVF ʰ5ks)9/Oaߌ +C&PkE^)l*ApSL%U0,ʭ 4ʿ6 J/U|B"&tbO8[}BE oטe~L[Z~w8^5~wH| 3+=Q!S@ϐoQi| lp@z҉(06lNx>?mV9.qAC*yݰ G' ԓ( H lIWlyEY2Ey(z E[5P Ԑ+ǕIh#+!3(_*,fJsGXA#nR~sq( `, ɨpymCeVEYpquJw4|15Q@Wa}QU`NŨzzP 5/EpøSbP\TOV=w@mxAy,%NR&md ҥZ}7Դ@2Bq?[܇V棠SC $gzlPbb[[ /i os|*Y$"ZO(޶45B}@FQfYe+R.*yn4r,g\t'P-L!oKrTLOu^d*[濚m S?MF3B0!ھz auz Day 1أiH١.UԡI/4bєDe3iplSAD#;a44Pi;ó= ~(a=eZ \ruD˂5~֩rÀ5Zf'D2}G0%2W\k)kdD6d Hu A8rŌƛ{8D.—X8H:ηK,xz 琷wܔؔzXec8AonT@$?L2~xaWGlj~/'0PI21]Rj #TMt,9=#Htl`^J +~5LJa-w iTFƿ ޛ+ښԫu{._}SȂQCIˉzM~{"u]T|עZTע|XfDY fP@ӈ۸"}?Z}qKJ|of'r}``9 N`ʗNmWK"ٗ}VZ _e8īs K#LQW!l3~ }2o4yܧ̻KUrWy> spe<\` =9?)}:I\Z_`x6tQ^Y}' wYq*Z#AKdLIOOCMfruQ;B`{S\kJ8AP<_טz#Ū6 <(%r?~Ut%s1L/+ۆ NTΞA{@Bjrϗ&fG6}h*ao#4_Uw*9bny$F  3O6h WH+{g̻xEwuwwL|p ) 7BgPCb *4{нF3wdѪEiĜ i$rp QtC w. aA2Sj3:t?4py j^j4L#REF'lx4)){/ 2dp1yi_=r"v>{$zjG6S>2-8bI8פj 2Pu2܀l1ҪSm$ubV~g9?{`௲"WW)jٸen? O fW[F 7Te Lo`{J{BYA9J)HJnK5(?2AJ|/rCq݃wE>`A?6&0>Oh5$ p. 0Pbu{ ë`*3RFpPoO͟q u!x㊪ӑW3tbpn?RWJILP{ U1FBO{OCwOvl}<0:Q[! B%.7fJd%zM!ͥ|4m>})X^*3=sA1a6&Qr$<LVmϒ~G=gD;6*.Dg\ V%(H"X ?t?[0"d3!ũ[#'),.fUbU$ٴY]6@\_(S 59y%_ԚUNsW9!WZ-rbލq|]|ځ(!޶,`\a~/)^Ef<'3kLgbdۗ-<!sh򅵰5̚tMޭtQ: ^@y5` b);+WWVbc][GFv8hFi5(An7GVAn؄ u r'|P rS62kyt`ЦZbN]E=;mD9퓻y)gw:g$>݀ WNWo!J8O=k;.X{VLe V}aLrxuAtgjnpB6Y[|=Y(l}A)4;e{8nFE}.rUH(ny.* "a5rȌ2ιQ|d=b 8X!s1 M+<31 &a${z0eClYH'QmC;$AH<,*t+!/ÇȲ%n<DYK^>I#P 4P#mc)B S[2NV/W"W#;F|6uԀVȗˋU j9z$Mad TGE5Eb*ɸ摊xҞVGxki{GрVi=ʑ- PťEghaX\S;(i(MKۋTvʶ:|7w͟6:r3ۚ` V>5eR&wˑϱAdzΥ[==s}m(E<&Cmdo"DGRG?`1<Q5-̶ pfVsBm:[GP{ ʴ_6p٧~6;1?ٰyڔ1T=Y(N=7[hjSF:o'xӽ˗'0y!6PzO"@f)7 :cAx Zbk1Gqn(80H_ ݑ̽k65$VTt Hw+$ZSKo\ up@e9|5< ȂG7?!fG*ygxR݄w驁[;*;3*QkomXXg8'ޤ1'"HB3eZUƑJ A-f$b_wp0uIjJ;pFΌP̝>aֱF\=i> 9d|Ne΁.D&v4NJ[>­ M/nYoz@U!s@̧n1:753V h ^.uLGB/tG[Z& #=K(g`mwfGl{y.#Z"N1VQ>_,G )c\kW3#88eфcz)$9J3Sw^Rrg;,VF}[>pw0J|e܊q"(b1z@ ܊,rAQ2u\PR@7/ªhVqa(?{.pH~0&|e&f~iS c<*rB0q8+b2 |Z"v Yz c]aZ*uفRLs7>fbՙkʫBVM^LdB!DŽ: wBz9^{d^,Jjg`<K?~xs!R3S͵GsaV*S8z<Ȩ*5#Ãx:_ 2|{SfDro r-rmg6öK8EMYi7Df$* uMl+UQZ(⁸N@%‡fݭց ]X͙f6׺K%oĿ7.;;!^B)UZ!5b`zo Bpm`Sʄ)7UjsP9M3+ 7+K!E&9}^/^7e^x!=<7wV@bC$ZvuE<]Ťw}Z[2Ӫ.mux_*: CZ՜p,Uo:mީ)J|O+?/֮h+՞×0r,̲Y,9E##,@QĘSb MzǤg[b/yliXV{o%j~5J`@nGAgw)DOJ72tZŐFTqHV= Wlͦr4Ag3yPm9 fl"^dd@K^QGz k:u-h$0%5 s9wwN.4_]ߚq_ǽ_X hZ?sZgĆ龞j y|=a痽 J pXԈqt(y~Uc\JgT6ހ _.ߓ&g GS %aQb_!ۊrч1Fa= gY:;v&T'>^g=[ijsZK7|`LY)6Ϧu l"6=csFt8c!e2;UWI?fIfe ҄Qކ}Qr6_x1m@F׻t!1K Л*:!R`bbo 5UӪ2b%R \x eCV:MVՍoS.<.=?[> ܁CS9Ry95ߖ}&1`;Rbu^PLBӇ \RDΛ=C"$ܲRQss-4f،L iE8DIYŕo $72F>g`|12hǨ)o..W:X:-| pV*ȩGђkɝNfkp M;G`vϘ w!`+*=`jv^AnԊʘǦ 8ss.O+W耐6y31vh$E-x魕;\E¹pnr-<,pUrަ39 !ia!d3NvFY)ՔeArfnGdMOfXA%Pfr~I: >F4M{ѤlfƳu;V7Z糾#2Z-4S6FHsDOw"tR9ȻJ͞&Nh\o:](\ mKߣBo?M"Q\ߡp9 5Bc=:]M#_e#Li“#a6W9VIY9;%&V'"Ѕh GK[0$քHqh!d!ESu^(gU2>9JZC<FtኘℲ֤êD jb`z t3|L> w J 皲BITsk0j;^u·9zgaU;2,%W׌AF&HqqAeS]"LhrDuDbSEZ]!X1i+f b\yĆUZx7e/CX(qJY_8߀N4z o; ïlݍn*uo½GAD|{ 4;@N}/+.ҙ'aJsM8 b`ZAnɅHQ#=߼[_-9fn-E?}u=۪U15}n8¶-RO|c}"\a:,9޹t9i:L;. Y:@]rB+kߓ4Cךo7lf+UB0lhܪkI~]Է$A.fxU, fr0כf @5{E5 ~?+ia Mv3!;BK;,DAI$Ook "@܈~ U &8@1<2뢭ܙk[gUbKHpi[ɜ@196NݟGשhW]'1}V= htlr?ϥ*XfNlzO+4H-d~o y.w B7r(`ʼnmէZ`C|/fB&$\wh5F6(0 Am+ҭa<k_p kGy.ݖ~:φXs`FjJUa9VVS\\rJvԻsoa4+AHZ璤^‰a9"aClX:hDrrjP0qzUWq٧^j9*hvp "i ѕdQ\D_4~JEUxjw!&=k\8}~?bU `/sp`YP!<~+Zy̙Q:L0 i>6H8_:9dϣvu=%2PI?PaIDx9XTY rOX5/v4x9Dt 23*R~2\RHk䄱:{3)/<41p7j=13B-K{g(RTj8nѬ*7h=m-fҿu:KoYT QKw [n}PYQ FL$ItjY ڷW _<fx=Hv~x@PJU~CEI&?M]k7rZo'ٟQ~y #KUyN9mCG,ű/Q_*pTЉ/ỵ)pEɦAp_х 61Fѝ!9 K Ej#Χd#h8.1oR-wRx/+J2\2Ņn O>ٵM9k~Ϳ8`0xJ'aex%\BaGL9nFqwXe_,ɉw&=" EvJ)MD;|LStr7uԋú>ꍽAg>A}Y!mA݇8n:ο\w`mcgqU>Oul%ͻ;+(s#*WlvvlcqiA&Axp7d*SѠ̯P7T?,VΜ+5؞?{,n2(%&qѤ}Yًg۬BX55oB,\[:.>MoՂT,?R3o߆ɑ6[޵{lHJ#AڠUƅ/AwO3=˓㊃:+h] PS3 #lEY<>ax;@J PU'YM3ZGK>eJF3*LYrg@5$;4Ι&ŸO'+fԄ}W>D_E!s5h`D}m%­#,df܎QFR"%\DRzCp0qf+v7ErZ`{42T?cxHaD791F&Ȑfi%\D外zz$B]{z[:W6 ,|fso_LrI4S,yVI ɠ@3<'yw)Ǥ;8Уk[Mo:xtHL{k4ђ90`0e8\E$rhQzax@\g;[-3N3A6m;v#t$凉`bT8YmKh\S^M+>C#@TN+HB!1h/WhY۶z!&C3 7=pl j W`B ^sQ6.\ˋGKQ֜C39+tƄL|x;P&ck+(zTɿՇׯώ1+ 'SW1$Htt6U*l]/Ĥx)d!LHh"u6Nc{A/FXGUඩ׼3I,fhHԥ(),`y1e=`#6 Mc;5*-Z ;)0^ >Hj-)O@擖l> m,dL{Ha(p<` 23hT s#tTN*H]tA6fD޼(݀HKNkk)c]CouJN~j9'SF>f{hD/Re0뱯 E+5t ADJvEa7Gk&fr;|b3v.Z[zN}1 8es&6X w2ʱI8 8sl>z/ _ С  bO΃s8A0`DsԚЉu79܌6fH)+e6"Fy+%PbԀ{;:"ҙn;4հb|9'#_`Ry N+wFC$Ȗ1+ȥDJ#2%=Uma+H~sKo Pm'U#5F[MpYtE|r-ObNPG_N2 ! .saZ՞% 3 +EBg@Kz_x6;}tCpӕ.)9XdwٴPA@ D׫d c,_ m#K~;no`: ڱU(rN2H񔲇Y7i_ڽ<Sgw*:y%\+#"yߔ0pu[MKinL$WU{\l'F<1k@*|*NqG-KzY81-5zm^fkS 1hnMw۠)cnu40]*8#+!O1^50(o4r7f,kn nWaw#!ZL!MyM81o0z5MDSc0A/jPwxuVɶLv9y]Qb@ÿs`.ŹEyj`ͩXCoHtdyg;,__!"Rpa5@fA.Mt\]Hܭۺ_\dY.$.:e sd4+1O VKJVwKbRK$t[(ImaDjaK9˱`z'd: @.(..EDڎɥL&vʿkvj7ɂB-˸->[IɨԕNVFIE1qg]Vo>MSzeEL 8{ "fֆ`!gԨ( z1QC-Gc;ŢuSb6Y ߨۯBN]H:7@"<IMzl.,'`$? FҌ5IS)KFgC9:&3?%t qW2ObƟ\jޤr`C/Y}oZj@ d ic]%Yԓ+ W!>Kp -ƪT։.<:mP .]y?C#Qu׌}ٚ.@^ Ԗ4I}Lc0B'>罸"&M*I)elIvS(;Fx*ZI/x(HVV T`]f܏ִ|<8/_[=JD+G-pIC"<* CR?^rӊ廉g.E91Ϧ*e|&P/s5iOh2bLR,Q&( V<-K3&#{HVQf22b5^l4&Xb;uE./q\uf{,S;o, S:- O/C W5ʏu[Hix1r:mHwaS=nR֡+ew7E182ERv@z2^>~"D_b T vk4??F`az7r25A?lKuI/ Au<#a*O/E`UؒkK%4MOa'"lEj.!_dq0Mb~OE٢ $o\X547.`KHj [jWLLcm?l6=-n#tv\oF%S눗 Ꮲ(Th l) `BD9s~k knPw#+`vq~pJK'xH̠Vۀ<$ R,JdWeeB ]kcU+ Ròʇkգ1t: yG~ P;,uT:"V9UhUދIFf@xK`ac o.1QإJ A)AͫH^S ~ n$H; q>2_w߳EY>SZgόt %&_9HK5|3 |ĥ|r>؉@UuT:N:52OYYj"l`1>;dv@9Wmr347~)ыg˼ܷ@驭-M\~_,h\ؽ Hf{;e" 飐1Z %m/9H4kJ$l<͇@fH%HNaQ1@9۪b6JCɇ*[~X>g?pݨ.XeO눫""Ӊ_ .V vb5ZTp1rn0j/[P͉;bܰ3%}]Qgk [5G͉q?bA=DͿø_sUaUhx3m6eqI [¥A->UWfEݺ3Ut.{LRwXZ~ ኘėX2~HҧWU]j_*ʢ 1 GF_k 3k7`T.攩ÇdZõ4LJF" kzؘ g0'ʒ|Hph}\^p~lj zle<. _e_.:7 ˈP V(8,V:̢%xS|Z; ˡ!R2(+C:9;W,:hczCL=KLr%eDLg2W|1to4аKXN?%$bm1/ U^y;isIA,FG@IHkc ]^X @"5C[eҩ[p Y^eS'(jSLj@l I0Ձj##Yolj~cX/1(@N/ (_}&+-cd gNslp9#bdC݁ 2kr",JDO2C)rOSX>ZluV"H_HlzFnV9!(l5qlzx<,dP08 bfA"MO|T.PSfF'!:%#=zVE%ЈelXFl ؅tObxTB[I2ޯZ,530 yK02c`ZT9!7iC ^ JШӫ+  k{/ZCS jk#Wfd[M%8&|$*$9-̥pL7Z,&ڽR^][^/7)Ub)>P]&u c!v=ֺ*uV=6o nat3LvFP)aB0]B?W/is(>\KajLl'+B?8b8߳nZiU^/u0^h-H@l&vTaޒj#V'LW}CD=/e`6Mߪ5j[ 2\IJw">q3vy%/ 6 ?9"IWO&NȇKs$>,SFx|.o v Ye>No7SϚP0 )0e|>fo̘(kzpJ`\qrMŐ?/ĉ)X ܱFmfCި럪2^ҲjJ71qK]BAG?;c~[{C ]Xeq-}Γcg1aRR}1EhQ`_`J z1l AKmƒzF}NF#̞̔ӗrn˾/Z`\\OiަOktY/k=ˡOL P컕ut"+MKfl`Q5yUfp'u*B |Mhz,]F3QE[9Qp4Ԋ375hQ4ᚴmp;)9Lľ8_!8n"TBP;E ;ۂ/d?}[wuѤe~GV#G4!o89X?6U- [2÷tb`=@(,ȳP7#떴oo!y2x>rTsv>!.NfJکY"o2S\l#N&FNF&42-֓^E2d )ѯ3~dOwE~6Dp~>wnQ@ƽ<B;]Pl!\8XD&Pa/p7hw]FX@ ٨M\ِ43O$w-Qr?Ƀr/T_03R.lHj cAQ9†FfOxNl1d:. HŸBp D`,W*#ܔt%lLcI>Ktt&bomMLdn@3Qc,@t"7'AxdC-#0NNTF׸VOL>a8]|dRSлO"k]acbJȧdW)>04PR4qͨ" ft.z;!t I2%&㭂 {kzߢ7܃퇑-MUC,eW̆/ؽn%*Ж q7KǗή_ܕ56[l"_YUyC/(){QNfGGzvΓ넎bj|ZR(/`*XҸ0%[E]K-,\p zAZE<^Ӝ//09'aĘ:, ͧN 58\.I/0n%%. 12ICTVJL1kDD:ǩoIPlO|\hw@;{:_PFvCǩ{B{H:2uhi%ѧe7:PؗAҩUՑX^IKk%Ӧ/OZLwj[D=YtR͗F?fyȣBH$|=Q:kMO٘(&89;Nl%T$蓲 곙Gm&B]Aixg9LPH< ?ĿT/y\k걦1Ѩfw|~37GKb_وOoM}jz]D_?sgDT3q\BQ2VBrlK:&(!OnF)VhMP@@\fd͗-Gk1 r j6Ly@).U%5qda0l0d=yanM_>vq_2/,x"D%$Bc W'UPpL QE8H0tN=0v鎅rp)- q )Y5]*;38-1 efmt%9y=9j'c*H)?a1oѢgWΪO"U \\7`Æ{:{(-bSÄ8+ޭLj箥ʇa͎ !~0Qi`0sL*aoYP\,+ )utis? NH%蝭դXAB4GI9G@N%Ym2\*O$+~:1: ļX(BMbdM yДM6U A&LɊ%#qhUY۠>:3<ɯvfEJl"x>5o @EηT<.NCGlJ]j*AʃWp@#QJˈ$e fDPv Cˡ%A7R+G_}&k)dppV&,%(e^B=dmRE( tl:$oxUV{{Icm%2cͽq:2A0 nufmﻣީk:K@bxM4p#{2ca}kd"qV6z+mH^gLP*EBO9w$isyMB#JVh[F킄P":]] 3ETdxSP|b h^s8K%k=Kuk< kF/w?\L 2׫5jn>,䄟`dQc"71]"I+Z5d6K@u(ⳳƳkhUϮټ0a:5[ WTW.e6Zƃ%4v!!mҭUJTvt+E+/bCSbzjYQJ)i `hRe͚j ٨y-v|ռ:]CXՓ$rDa_:HTP:~(+VJe4{)O R-j{JM+Y3fhZ1ID$63C{F12o[kf,H R ^iR'Mz%8ڮ_x.Ƿ)0Z_k=~lElj6_RIfd)'@@Qǿ͜?Ͷ}Z!$>r๼%V8df+x:F,O )`o*GDalm 'D^PdKXo,O DZ\\dF)M|90%F 8!! #AiucYᨷrH>1l(39v(K t²бfsXC#?>3plIc_|:!J$O 'FKUAfDH밹(e ` 6-"WWH~MQ~*q5R4À>62J *u v FسBxJ符f! LvQ: ~c6A%a[[2du"5emQ=, |Ut\Jn╼o{'̫/b?o^([Q\,R kzkW]b+WjXZQXXf#>7!܊P}]]8^3#Y(8 a֧tМ/;'bر9dZXrZ ydIW!а?U!-*eߧ!ɣXWUٗ'>yIi4@rEBN.HD^\ O;ne?tB.;b6=ߑ߲Q\\ {4%e 5 7턌6 ,A@RaehAXyj-&=1iNgOHRdB"Vk ?7x]M&KsD"=>!zCeH jJ1 j%BKŴnb3'7b+ͩYman-ݳ,-'-lZl-}cҚk$r.=NI<^(ZJk4@DA"ZDBE0}[V!n9*QZHߘ|>Ef j Z^{8uq@h+tSEK0R٧B)l6y)6>lBq .}`Fbw_h](`Ƴ+ F!]=)S`J07n\eH0|ڿzJ1d`~)wT0QCx1 QT| ݭ7k& }2Ki2Hφv/dfcHsoSe0g. OFA$)Sf0keʹʵsע],D.j}ײղrSx+d]0re-,޽f -BL^'Y,c5,vë`2h'!V a:g"Wq~` ~ϵJj߷pjӱո|g>ϱ:g:t:Ԩ|gtLYKB$ YW8]8j~;Ð&!6C8:?(N9%Z2:s +Ե?++=(AЇ̃kI5Ju6P%ɒX9Jx/!X6範}M A $|;L~l 2Ҁ| t;|9klGHN/clYq-X,)/HJ⬈33cVfE{4:h:k MN6arټ{CO@aFFJmdmkn!^YuU*m /JG/q?hc4WºDrFjs KC)+Xpt  ׅ)2j;XAlPŦ IdH6Q뒓*֨B+jv13z!2́; &zmdϼ.Z#<,t zـSH7M4*fyMj tج n'c|S]{6YT&q 7a;5'/%/^}m0V0Ĝ,z@-?`OX,|Z2I34_\%+SZQӎ8<̦k3X8 _3qj9a(ҡj' U! GH^0 JxIԓ#|mb d`\4+;Hsݶ\ FO+"޴7_"^j$7T_yirABe~R(Jh|Dsu>|W789yȴltt:E& ? g.L^dŮz_gY( %U=z^axP[@; 3zIi-v zk8΋rf^0fs=4A:Ҁs^x ۂC`,<.)gTP:1LF3xOnމww9-HU!Ҫr q+7ή Bm-hZ %UڠT$?8W-YPYC = ܂zOW W#4+/%L A!Չq5)[- E68 zl'~hDmx͍?fgjFn'd ZFx7}VK_C(0S׬=vkn熣# =,ddԴ̯ǦI-d7F~!exmɞ xZ7q8j(Scq1=+fDhփgvp K#tm|Ӆ 7?9Y_ [Qb-~Sz!mF- )0 ܡDbW;KM k앧<&4-_|)*Dː6ikm!yQ֒50)N6 E沀f܄*zזAyyAfA,e]Qk:c-g |\RźB/)SVR͢X[ŗtgQg*)>(C(Em1TK=kQr#$ȅ%k"x43 IKЋ/>Vyt 0uETǙ8Ő ܐX ^c)@MG%B)|4)gv&<'|;2Xɻ$x6rH{H϶%d02̵_oiz Ι1V;Dzk n| h~e"%).,!S왼a"qIVB'yEڷO|h%ob+k豑r:c?Mhv4%b!9v4!,nN0k,Þ!Q0R: hZY?t6G In'1;y{#H7ekg]fvO9}|-JG-$&o#|(oT)2ꑎe/R2pD0]ь_%/Ȉ+?w4Cn)OޒfijmOI7Br dnpJ~ѓ/݋L+ƐCdpȂiV -r v4]4lG(*"GTFL;x%҉TBY@R -ЪtCN8lcPp5uvXĶj];=G$R2LeEHzC{K泍M_#i[ sx8'&i/TP-r U"[@ۉ{hMIifwf1d?kw۶0ݿ]ko9KNm'^$:ǷvڴD 9\vX,E4gm!YJ!nq?ѥ-Hbj_3{8=ltS/ΎgNjc՝ HCO~gӐX)ܢNdΈe0:";?^\ltٷXk0/77lncmŽZVz"0| tѱImDIv5HR)l[1rWYEdC; Oac|QRCbN"dgtވFTfYЈ߻-4KuZ(mvCzg9 l!c5K-֫u΄Ir*\FiVFFK2TKm//d31g=+,|ZgƏs3?3\ .xY ,z%lz3J+v=re9<R@,/%Y<_Ҡpeyf*W|{@ DZG#)þˡEظUHs[^%`>l[&(62$jp 6~Rx]Ɲ$p,ڲ!gG"sgYJUa&MA{0@Q4%K}'x!B1ۅx簳  gM#?8!jU'rg?) a@8Y|q;m= 2t6 qwXBPo[G`0{a'?咕2Do)&7U&!&yʔZ%%_4W.x+W^l-l6ٛ1?OiN)!)ٓʲ!W4'ΓWfbiBIE-ӷs{QyyRc:jH4Gxar.*iy.:SRL$>eB/iR_BE'*  79f7CekyM,t2S;O5؁-ްd䮒o$Ftm7ss!(K| ՝8S:BFCqԾⷠ'HfLIN;S'-# A>P6=G/|LM':i4MEFM 0__D?58cf/sP[L #h1= qQx,uNf'!aX@a/rG$Qۙ.9S Ry}+O}uC/WO>Iv:E.Xm7Ͻ;6V*"4_L3l!;M% 'ZGw;opȢ)ئ H#w{H\ ZQvvQQ?ywytK5kJқ/,R$\𚇃 :~rݻ f}x4e]#)a9G0?.(1qmy77!H XCt C.,Z;RR@7PK/Je\٤Pg!w4p)Feg0G8X)ekStB%:>VC%R|cMJMqs:R`;#'N,uJҽ3P%YFi,ú#-nXnŽw2Āp{@̲{Fe'{5ArT7rl{;Nc~ad+O@2X&3}( *&SgvYb#jC"ZL|'C'[[|t~ пlpE>",lt@qy"JJ ,B $#f<;([_'BĈG8}d CArBIywy™ug)HGD8 ЙO;]/,]H"{HiՑi"wbpꤋdN>1}l+5G(h 1 hrA8$$XK^+d6Cw'Dpd1X gvC 2] =u=aåI<1M 2n`OOwAȲd9]!ɌD'즠;GjMq6f!}zqg2Ɋw{LD9Al) b C KOѠxө2Z.ˣA,%IZ5KT\*@ZʒԸD<:ԇ,H'Dc`OqPR>`54֍RjFiJ\d$q(ex#:b!,C* 4Yىp*;7}Ll܈v9('uFV˭x9dޘ\=%`<O,FG,-LDG\?># ^]3k;ޫh"QW(ҌݐJ?;4-i5}.˝#Gg}k?? 0t&JCV6yr3wRc4ŊC"("tp"Q'fJ~$O#Lѡ=FW~+ GL@}pZ:Hì혋}Â%3N O=*912PF t0R{qOuP{)*pAk"kQ-qLq[~i(AOQa5˅%ƯnUZz\9 #A?y77rW6FԊ:C.TEu$]#Olm$BvQ#ړE<%hc4|)92Ct١ AG="T5 ~x<sqyG;GA٣t)Kʙ44U~hq=Q՝ո2h\fS6/ `?qU7i/WlYн'N1~Suo(Y,8J݌>yᳱƨE)ЩemHq. s<džar li[+|ָ=qRvv̮;*"%Ƥ6R0]sMaq׋wy[ೡm97}Q}KbϊΟ͜wf+9IWϷg1~C1r"6)~KVVU3F4v(I}7—j \qYqJes^e#2:MvUF;f]jͭv Ri9:<ϥ;G5$~TU$>dAޑ8=R"6w! vjn=!( WMFq2_,#iC"å vs+vXE(B9QB D^~M77=okCvsWt}ѽx>8|:^^ ;53"'טQDgM_K̡wu|iČ/TM.Jd \MEfPmEgMG +RF F^iZ Djm*6ҞTLAA|~7L}5^K_|6:jw_t/8<0R-4t~}~>2zɔb|һëOWKc`IOQI|,Ib_ګ9S>h5麗.lpG|Nw#226j*- devbv2qS/ꎄN.̛7epW tԕ7廢i2ݠriUbd B-hz#RH G!ThGj'Šѥ ?.&*FMb#ŏ<2aJ'4 KDNQ+<2φΩ EZQs-[^\~jj`Pd'bGGg1{cBGQ1YG91tp !&&P.``VxKj|#G_ۄ*`'#> "]S˜ְܛ7З~Ѩ+9( <[3AjIZGThG ~Lz#AzI(OK|]u71yN׸]e}M2 &HM"HR!"BB&aQK_ M~H2LgE.[Leާ~AMg `q+ՒsR;2W4Rodpo2Eh"U |c4'kv߮7~Й|vg|c~u?|~޲v**|}|Um]Ye.JWֱ7zd=ћ Qb_=g9뭾Z\&DY9nvwNF:O?u%̶#j }kc1lF #L$|~qv~i_óUXB_.ZcXRr_Nrxͻ]{nc!&|ܿ Q˾ǒ.kc0Dq}/'l@Ԅ9e$ ȋ`²1NJ8BL1an. }~2 rKlPu?a sBܠ7 #~uyr2t@hmhΈpauN; ss:8ٺj_\Zg8G7$m|su9g:pnalO} -XO:ӕ~sucsu,:jc܃{@ ;tq~vƋݮ%ݨvqmB.Wv [i tNΏ;P䧃S}Թ<<>haB_>\PE2Ӡuퟴ/?# 6%P'Lsu1.@}:>cf a ۟]#v*&}u.@j8 %e򬍉a ?_aps:>tހWXH钆m~ LjiqCd:=Ҡa'"(Vs"-3 `N (&BX/`4N0ɦh$?5#rmf@T2\.@{.H~Wx- KB.d*oonߺزZ[8;B n.d `v|!"+a]+jBBn *H0䚭Ve5.W 7d"kGt4x†N`S*hLx\HCkm6QTAOm1Z2'tb!G1"K@ibѓ7,*uP]0x~:uь .bwLwȜfհّ>1nk}bƳ!OÑ"9%P.uKsv^-Ugvfx ]X;+zCLK&[(n=r*/sŽc!~^n G&)FMnx(7tcY7[(^EHg=J}#Sʇ!RCLu]Ri@j­ZBLF9HW7 jT913UgYQk@܆_]=eG)"v9$͊IFY*[,hr+EZLS=*2Qk iCr]4%'ϺψF \$Z(nb:&*X7ZqV Fј(qtjdSLSjAQJkP2N)J:!Q*Kh*][4t Gˎ0E ht<\>`Mj&Z&M¦LOk7F&kSy+DR6X+;W::vNO'gWuG4)'{dt6 ŽAFZ7ܾ' Oj֭?LT;:1@-T>BϏڟ;]Vm>em kD `%zʉ q]e[dρ 5%qd)u;}Z1\|޾չb։=9x֝=F5.LJa3<#}qoAkB V~CoTVaB0KP\C 8Z:4`M A8bf&Ǚ#+Lн7wpyF1w3\|\O:wAz{KG5F{c= .n ͑c&$CJ _Ƭ6EX JFvAZ.¥dWor[V'`Q`,w>b+ɚN"0 @&(QF)]c'j2Z뿀&FØD,s2mu܄O`c8O#蓇oa7o'0( +zET8c1$Z}CEPF_ik'_Ĝ"1}5bΗs< P$OP#KY)ܻ 1lK?J6 Hc1-?kIkS' b^l [x|\{a02 S O?>g~{US |\g!mh e:cY .qx `e\& e4cIML#>fFi/ըLT29>kc7hzT#$FI+Ɠ׾F2tޡ Z *ki)gh!]9q35&cv 2iL|O-V} eYF3*(A5NЍn$H#i7vG)hç[#7(u ܵ0GY?7aݹw>.|]Sb`Wܸ)Ha'q {]:1ͦY9iTڄwsnpVq$%$$$FI!%I#e'$aJ@g Dk &rQgL6Z%(g3EPՈDsk,ۭ0. 74okDulj*%@(M\Bnp,>|0 둂r`^~<YcWޗlf_Ωhfu᷽DL'OF|#pù.D-g{JӸO 83 l}mO: _fەp_^SgYGv fG.X)>u3 ի3 ijWx@K\MHMɊpܩh(R`̙e@АU9uR7f'O|Lee<$3әזqvޜX@C8Q#e@+kӄFLp[F+%ZQᶮY+zqTgkFI.NSy]Ӹiک閝ٔCU3ooȯ=5.owcͶ~ ޥl׏9!$}\F85rk:z||v*L\AɛKmTnNpd~R٭/d؜OғZy:ZQY\`eMEtL酴;rHlH:6?Ful,p⑶S7m5;=H ba#n),o}[qckAOyee;&߳!KF/ 1h}b,POE5/0T(ft怏LĪEMW] X-F\yl;ɺOiu(EbƝ%CᎧṅεs>ISyS}JOd[OSK`ZTSslj [os+uGKrt渣5{ō-O% 1!aHVf3R$5CDLqd@vfhuYh,4I)wc*FpDLesQqO5qL%f>&/CM=bȭ.o̹= N Bfj˙fTܚ|93;fvQcv:#xnZ丄xjmNLx8"RG?v.`~Ɯ(3#>Qy2͂Z͙u3t*pݬ\K<7{S gr6)ݔ oRl4~[J~v|QQvngWR1M-@}T5BˢAeW˚"潸_YOn}Ys>1}]g gwp>Z&=eayesd2++d8^f2&@eW՘jTL5OUSfXj&.䡚~vNUcesCQz!*s>'g$#-J %-EgFKgPmV9ϧmYk@>\*Fz4sv)3|gA_O%ZVEȥsnZ)%[K|3 妋o!tQW/Up}i"KĢ}-Wҷb9c}7xkuN+T_ f8l~|0/gR֗gU2 sUϾ~f^VԾ;U ^T]/1Hg7◱K8Z!i, 96MeYqia_<ؼ|r_ORfOW˘^ɨg-ۿ 8p84վ=`t^4F:@}')$C9ph;U5oGn8IPB);"5RaEX+idl-Pokӡ CC1afrve>=4PvqH7"bГRo&`$g$bxwrWo4maXVz&j%gЖ/{Kw&Fnl7[ WǀsX0k}^4]>$Sys;-mS.u5^@Lzj2} ߘv8F7B r-oHSվ-]ٕ 0u(#ARm6v'.]yu51LKY5)r %/#50BN2b.qW!MMd**wG:Za?'<]Sv׽w 4Xf07ڋ&Uݲ\P[! IG;;~Go6b14WTݟ5jRC?x4-6\|i:PoŇ n %ۇmZm}ib)ûr : E<=vptJz* EZDaȘh nfRTqUvq١"K7OЧwF=6-\;Q罉s$f1 H7Z/MnnN  +\R[uЖ(i\%؈#Ib)s.Cyv\GέZ]T_^D͉U&Ywo6ٕv=ocl.䭯/ܺR"_KJY#~!"4r|":a"[qȥ_؃W5u)}4on׍щ<]K6RkIT6 6P+D#gĉ;&,D_ ug4N1y `+hZ*MЬZ!2]RTBi0Z+Dpqr4IД_ 1E3jvT:y~LsZc#^1bI)KU]ύ\+QX/\3+_n:}K3]/#e"gX}>%"@9س/06˥U#;rDK;[xWֹS`QԻ4/WٿB" _,!!KE$>W5WY/&z|$C1Y85/œb^9+Oo:t'gX~>NœRrs̘@m&2:DBiݑE~lQ>ŜE@Ka-dކ: un.N7//NĠG>%ؤġ8B%&0P`Kͳn)%q#nШ`*oomoڠ=$ &>])C#Y՛$[Ч qux5'%,w鳱 kAڨ4,5b)7IKIȴ(Z!YY/Ag.!2.6,1'$iTڵ3VR|z@\uC)&s歞ʰ޼lfW뱀`? b ':G='wYl7 Xpn5L2^v0V>M0f 7 ] EnETe6jUFQzWɵ22* >,M}N-yysdoNkwkNƊ>y8U׫U{+H!rMR>"DBlmroKoҷC;‚X_Ck{*f)7e)eDQ>$&|PfSYlCQ-L[rF4ڥ|>bDT[xF,#9BA{/u$w·j (.ɑ U||}YPd%[FtFJ)#3E `;%X?DH~܄Q.= Uڭ GE}/R+Qx梯Y[*Z]Gު0U竨e,+}EUpVàt@Wn@we8,V"l:^VVKV"%iz*^&WX^xxI]Us"jlZJR œG)e]O+B*iJgHėTb+ 9MvĈD:R`=oYԲi'o4rN@[L-3 宪E/ZkZ@Zk(o(\4Zrl(g]hFt&CwXw!$(o'xn<ÆLB555D/R2`_)#p FdHڏ+ /%zPOeӇ-n{,25aSjU%B|=wG )C_.\h'&K.%Kc[c;:p&CRT* uOc@}1ݴI %%Zb1slnzg5GzZ߰=c8̌β_]o[uQlkZZ4mjU|}\_*4LWvMt_x2G]G`E"1;ē{?2x &/| z{ڠ[_F {fOTtzx9;t{M=/,uJ(a3f?~?Rrߤ8Ѱ%J4SS97[9=֫#GXZ#anp`KKbȕݦ*C^Ǿf`vZ{URf֍oh`J2ګZ,3!"IG믅3 mZ aVXȌyLԚ֩ Qs{dD\BXK%RP=7jKNlI3./Ȅg{w3]Te#?y Tf͒ބ483!hvi9qK. lǰa'wOcǿn Qh:odւP.U r7&'w]= Գ;p;ky2:SqUUfV,veަ_Zq,}l!]G#Qf%H*er)rHᎎ."HH`6 %>y9eݵ(E$Y5fRVVVN/D/L/V:";L)#tg&mr6k,Kʙ+)<( qbK+ ީpj&LVmn/Wיur3Lv]^fb]%24r[^NOY@QcV(2PU&漜j,%BmzףϷ1jʦM%E2ښbF!᭼{'L'uh'Eh*+P(&,t\7fh$Q:1FJ3 B ,I pc%@mYU)8=i&]Gɶ } wv;ѧygc3'Nc&t1[tm~E1-v nyA5)s ҃cx5hSt, sxy `xL68Nk )J<t.> -aN #]`B6LD>2M v* أO9Q[R;fw}-Vkk%ʥN\\ڲFD&Hs<(OG2KW!LeΆvsӽ}f9Y~!޼bLA DõQ mך:̄X#3:,DvQed3Rt%XlOa<{J0Oqޱ1Ow2YsN/>PX" *Zjg@asz!E4[זšAs, a{>64 jni5χUMĢǾw$@P>CHl~^\|h_u?} }߬zzm]^&|Co.C`N[.4)/)AaS̓19#Pm(T8x`p?ǝe{+| P$r釕Ϗq6@S˛U}Co =Z:Ekfs9..p=b:xs9j_nQyfGw u\@̏ S1xI+) QȾ8AY qzv 2u; !T49FF 1rĭ)]hu̩3wT #`R _ =bWƗ\PRU>*)2r+LLT M.S fl)l#@߀QhNoAWL{RQR ,B!CdZVY)BSA%?m߽v]XN?A#{ olZ4v3&ŻumNج~Gy1n Nϵ$Oo[#i$Ѓx5)ZT G\:QJ <ڽ,Y{Ggd2{^zLR˴22;evy[m3f2 |x[{mq8{Yp8e>ok?- "( Rg,er|*$3ɑOèI;L.? C2Pl(@?` b4qJ\c9dx-KKZn%A:xʢ[v^Ŵ8 ʵ _x di]g[͏`3Aڣ'/U'Z17. ?O̒V%e;&= G^˲B;"e-3˨A&^-SVVS&v%AF3Y3a՞6Ls5&NnV ]g-5fxk[&bKCs*ioGkt7Ve ڲv;N?w?2H~z/F}Nطo*qE0riwm<ʄ6wX8z輏~\E &dlaE{~p>u.?vO?Gw..͇EsҶfckkkv?ڇnPHq$@?[&p u] )-h1ذҼp v#ܰ0SD;Wuiy! |^!qk)Q: ( , 6MtZJ'B7=#~ k q1z ps?zb}_ۯw_o Mg86v6Pl5y}w[tDrt7to LJMڇo>}Kmj]]]]]]]]]]3VZ[i=oVZ[i=oVZwzsD5txpA'5y_%ܰ3o{]  m>/;]^s>9av-n7^B'1K %_YW. 7,'fF[Ieqe*K:2d׎_f\,B;~{g NC_"er Zzk}D4:=eCE+`B)J$j&sRT)̞tBLԉKENaj;$BߚT arb{C*e65!4b'?'ssr+Nţ9T>'"W\+jsr1|:P\?G-^U?gZr}~z\=j9{̃}6Za'ysic0}9v-NO0 c~9a')r0RϡF9d|8bO #KCP\ggqt 0uǶӎ *4棎`'0b7{FMQ %jz+ƎQ]e0lvFU#ُ~d^6V{6rH^MV]ɪlkT*5 jmv?i*Tݨ.,%I]sݬ&NVCwڧgZ;MTuN?\^b' ΚKi09 Vt4v"#`6QۺF.Rf:8:+k#xFkA8SP!;9N L|R*[)W洅\GB|/ηh]2E~Ca3_(~s[2E,Dtj =A D(KJ$VzB*rDXXmgካu"m;ue3ÏBȥDٲb;D# <@ 5YN-3K}7a ރf^$7oȖYg ͪY,wg2NcÄsT{a^EalSNA[(lY|g͔VYܪ)7KRpuY 7SZkpefIl n͔*\]ng͔2fJo n~˔*\]g͔2p$|ȔܷefIt.3fJu.3j4ib{{iQ-SVjS&dvSAfLSpM}τ^*2{&{M:&dSA6nM4J3Ȍ+[oSqG1I $Qe\e/J**-sVFs*fv3XGQܗ݌@l^V+˘}3bE,Ψb XK^孹/o3X5v܀A囦 LMF9EJMJ#^ޒBW.]v3ZV&wZ Sw0f-6Ml o`rGޯt(69<;="dV|o?L7>)'t(e'I u/ H|cꞷlN݅8eQ7Ô^y@q/qE[˜:~=8#ejMژ4shjjD,;l7nPGgs_c<W M-4fU)BqYɇY|)SLn呺)P`, ,-ȕ҈Z͒Zj&+ZUW"WʮjE*U\uTrSfY䊬LZbeLs֣&\IʭEe+;rVZͲȕ֟Z͒Z{j+T7O"Wjͩ,\YZn,\\BLu$rVZ͒[]{Wmt|_G>&HlIiP,;]ƙbZ6CPa eb? ݒrs'h LT7`pm~AqdfjȧU|ZSO "ViME>*3TS|v"|یDz&́V w̿M.g}v]vYte 9hD_&FIQŅ12h8P ]}tiƨ>} n‰vGq{tRK٣٭CQ&LZLb:1c{Xv5+~ C+лw5YPz}g#w?D}0{C)y2JlOMa vssx=n\^uz}_ ~FDo<?nq,xP$OV3iFD6"KviOj3 ظxX7C8$6fIזaУIaet{A薁DurO2xܔ_1nNZ`|{*jSV{k*հM$ns!.q DSk./@@='bT8@//C Ix8ǝn#z=bHQҕ} ={бAt}=v2}o ZXȚA5؂=ɺu&ǿ:Ox] xʱY.1QfTa0ŌD6ؐBѻ|rIӞ 1HLq%DaH~ΖiaegWp/0=&#-{Alic"#_yc7e>d!<1b2T#c+ ʾ<%\}u̦ Bq =ۨxB͛ɨh96q}MaO`'!+1z4 D%]&vK']7nχj'7_)*h#w5 BwŒNl'+`}$9a2l oG>Y$V;AbBEuIhrh ck=M{me vx&z kR ̶ D ]w?9br"1itCZ": !ueLpJr!ndu6i`D}D ?{o߶$Oh_M۱'KT][Lv2O xu8_U@78 ,fb htW-!NMds(Eq.iѻ44v.T&A!Cha4 -]L|́N۽鄎$hFX6F^L;!D;FgGii{?[J0ϐBp 0*\u'OvOo<Zcz>yE>eav_x-#R;o B(hK5XF.u5Sğ~C[.:u|s۰"HD!PP:Ge߶"L$4߈a*$joť;kQ\|d]| ß#fH1#߱}Kڬ`Uş[>q2sPXt1Bų`mDVOMdS&|Y7ANSj p@JJʅ ~B' kR;=l-v ՝= [(ߧ,HBˆH2Fa~`QK~tl]╒.~E9bY被gy;E٪nEݦ 6ʚWZ(eM ` )kFZ,NltcZe|n+(v;4,<5 K 5Eʶ̄u.gl9tfxV{un__h?:ٓkɁ\eK#oz(1k┌M ̧&4 (-c.r\_qGXgO_Clth4tK%$NpȼFp2S)[{lOZęX83wc09hQvk;g A kˍ.fj&.=YS}[x3]یYO6:ٟ ӥy# M I$1<dӹ?p!Ddr9j<VK#VDVVmk <æ V5[TW;Y4Y8d>ZJ*ME*P/ FYSDLlAn ? .\\AD|'9??f$ ʔsV;l65~7=!/{0;鉒I-,W.06c&r? O3eYx4ՙ,{?3W>1kŧ+{ZjevމrFܛBXtĄ'k>ٟ2N6=0&RbUiʫVdCe)*^tӎ)j'sn U].m1bGkiux~ig,`{Fq ,-\`)j 8%oEf՗~}l#tc`JpguWW'X]WB [~$`xfLHޱH;D)7J`\ly[VгbԨxLY Rq>6vZvxMC.R-(>7ƀKd:FJPz5HňɊV.EGt(ZmatHah%S]8 C? O‡wֈL/ 

y+lJǁ5N~ۀEn޹Nnisv;C~6G.i3I޾ Vi:1كÈI؄lSο#۟ fC3/?{Ú&uoW1LYyq2gt<\=r5ԫˣ0O_^~a#k^YD2EqCU VpƂ c-DoyKEJmxh')5])Jö~aeo5;]Ϛpr9z.-rku]sj9w I A`Ygv^nD.xrɊ(xb-O`_e?889]tϾkgHCN'g:`|~~hѾWκ_Ϻ>^^/{{{jb]iG=Pfx\Kzy ]hsF[dK ='S!/gg't4z'Gmw~?7%L烳# P^Q@ ݄`/ݳO'~wr|1LQ N_ vݿ'G8N{:uD?S y/8:r3b=~tpq~~@8sn _@{@9bO]~;$lϟ{?wO@sç5x~XGEOIIIxg//Tꈮ tXb֥KҴU31ͩZ -R ~B9g@a}^gO>=>ء. (Ď4/1+-_&Dɦ=L;t_m}O׶ϻ_/(dܒ6Pk*.į3C:C?f J-%U{?zmI#G5"Z!segF5=4/”qZ}ɞadz HSj$*z!wB .#9L3oFФq9Kvg?`aa3S>.uUҧCqnkdUC Z1l.g+pR,E'pT yUeu:%V˨/xc;f,z{b(|:}은Ki88<;ݞSsZ,+]+t[sK9f;u~~km[iۭ-GYiU-giEabgn&<۝I MVOgxo0L=娓!`ut jR׵i&xB> g/E'f;v_' gXPP~%WK-;ܾ#IV950ftͫ'EprpRhI9s0pȚ.l /j&y;E&wv`&tJq\ r9l^},T3sL.H" g"eNyBc_tdgAe^ӓnߧ+r%8tWS7"oߪmkHyu7O$0e6rj$bֲ  (pmZ>(ydiAqjqh[a oi}3Fk4Wd^QSTQ+?BW^0e##.R/H|bZɆF]+Uѭ89)ʛ|Q"jC3m%3)T2`e| J#/U\:P=2+]ܒ[8Xq #b;,W"$ >1 ܝM&qJp)E)9*Y n̽1Ǒ-.N$>rQl!Sf|n~neqz/ & Tx jv*m8V^CV/-(=Skit[RKUG\!F'D0e3p l@^"i$ڗBZQcJAK;)J[P Jxe2ki\u?"Jy2;oVpj|$E Bh#&#wKyEءȼISGf |݉5=^ڮԘyǜDW@f @} $G[G?ơqc<5HT^a#{vTu?ہQ%@MUxCp5?o 4 G/ ~ǽw6ƒe [xF_rIbחLE]{{ZrƿI/ad#CÀxvvdt ^"~|8~|xa;wX00BPQac"OC⁸d7T LY;رr8i-T/I-k>M$ܼ7'ph<,?x)[˘ %R))٦ybpy≮4Q&(c1;=߼Yr;U}={sĂTZGIvbx:MqY>q7+ؿ\àEâ]iߧ}ђN(4v@ ]i)iU@oe#zX!B@ τNXV@w@5Jh&=/ڎ9HxXSي-hA(j5_b_+bccc^r`@O!y9Qc瘡ym Lĕ7RSg?;ZVKίο\H2PVJ' -o?@Zk<)Vš60;P`#duҍ0R.hWL@G!LH* GM9q~B2Z|؞t$leòFa>% '=S0xo6 ;0!M6>|`E9q8OҞRI'K Hb4G>As'/L? /dw[ W{<Y>&tE.:Hz|Gݺn4+ h@A(ͥӅm ,O/ FtّruK89H }ó';u/25;UNe:mJ|[!鍫cnцh:ɅG \1*uwiƘl["BҽPDK휈XEWV?񪗄X`tTjܗd %9:ynI}?DʆfIizӅJGV}-ʹCcOvx<; \˸9܌PCҧt!+)Q& "Ss[xwpO@5Ss0ut-)9NM@,'&Ep `!vѺ].|Ar:t6h<t9"Rl`0cP$sbCP<AI,8dCnLeV5F$VŁ2YoeacG)ƹ%Tg l =BAymY|ҿ"3ʠlH171+I[9F;4Y 6^*q'TFep),"eZLl Jp=XV1]U¶JaRR}O:v`)*(Qp/ ١Z$(#[x+`; 2X$B(e `;1űF+܏.oA(B)M)$E@cVYьA/ A"c|DCԮA%tgsmȼ@l][@(56*kjnT*IoC܅Ӽw-}`e;*):I!,?5!J 05pCȳhoZÙlFff-Uu>U1zvĢsl Z^v`E93)nobWwX~ed_ Hx_1}7%ndk;+q+kZ\fXݵ#%q-ȓdEQXULrg hL~[%"[Yi33, 92hr1)Zi1jq)flqPY(Cg\eX<&QUV`A%oE&"[H $hD$ GҴHZ̉HZE3Tߌ3x͈+ăgA8ӗ $P~bTX9o*]^FR Tn_Fi 4h—ѥjhZ4MuTc-NjړW<'/vKrsZ&X_T{@׷fkUZWi3еU@עÞFHnTԨ}cO)O }iM~QWێd_E~XVW% n+i3𵪃+E3U{!/Hw U`PcAsmYtC_ Uļ}=b+1ň镘ciEScB19 ƺYf:ig'qb!h`ZvNut;9 ґY%0&QÀዥ Ȉ+t-p8WF]hG+b'&vG5:#S36lFftN3s茨9ˈYSYb `_+t԰x0! DA_T Z+ +g?-ʣx-\5ڷxVL=#]lw+]׃E׸'3=2I;FiPqEdZ3U,rA mlLVk*~=pR_UwU59gأ+KjBZ5n`Ta3VTy>JQR^c}m{ضlC ^G2dR[R0X!чxvqurpBP(.aAAVOOoW`U@]An'ւQq u'ܬ/7 ; pN'sl(4h9* ;Y35Y3"LF:(8#~D!]j d-1 c8pAzPpc =u +6ZZ̯:}:d_?;Zj·m 5/%*!-FAYWE<$xKEr[lU!66fdq+jGvJw~jl # >3^Q)b I\2L(›OVԿ ئX'eV u09W+ t*Z"4fa\~GW[h*;eY3= VH&7:B&ɧ;g^ԮrAQl&v2eXEeN_w/zcJbHA(Qmz7U MvSvT p[QqU۰q ;`7m`a/]z>}<÷h.pF>`j]S ĘTᘉ {9DYV1=ly߰۸J`˙w[1I˰P:˒,yɉ_OOi)Tmk[j)xxVϸ yʌR#qFT<m$/s2GI/yo<]kRI*-yVڶ|qsU47$b!.ԗtP'˙v=3k̊YI_Ŵ]7̘KĴ~L83%bz~L^ Q85 { cx}27]ѝN[n<1>:+lgrz{ESyF*3R9=ྡྷk}社9e95{}<^#TN x~F*I.KaqVHZ{"7˝S|fN&uˇ/ka"|vueKo\!2f\%ϫe7yT)Pˀ0XGV!e@hWa1Y3RBk(1 hzCnxTr2X\L40 v4<'e/KvtZr=׋ /8 `KtI=giB#v ?ʸU(gd ')sG eʢs5=}_ s *X'Oxt7u=-\?䞻Ewj&{]S$OSL[U PzS^M]j_'6ȦME֠\׆vGE\`ܼ.R9T>'adEOBк|_7:c8,6)um,6eHYNߖtIҮi0RKv%}m9SGr 6o`EyP*`)Z'Fˊ hE/(P>Lx";I7y JЀ h(u"7HDCͮKVJK.d:Mtc~0J^tTȄn 2Sꨒ3 PUWJrQJ>\SJmB:|_׸A5,ǟ~b'rELz\!fኆ|CoNX^bWJ|QZVER+24k.@BG` р+ ,j@Óh+ZCt-_+y|&Zg O~֯iRdIDUE-Le$s8VƁX_2UOc}=Ȑ>u/2$ˡ@l M^AA_Ѯźv-+=4gov xaJc-S(S;WҌ }™߶G޷whkt;uD6F04@I2؛k2(h 6nx=lwHA3<[l:~jPi펀mG &/*~"Iw)gZSr6,CI9 7/+{߯/j$ gnS~mgK_`+qҾm\k&"T->Jq[aqI&Ysu9Zqז&*w]"uWzKj2[d93D^FQ I("\E[f_~ɜe<; &0~ p"eХ=X?6]xxpշPw1hiK|Sxq _ǑU_aq_(hYB-G9۸/rJ͡]K$\9q _%X]м&qGsg`Z3 STW5]xVzh:] 6vzpJy ٺ6w)mOnWkF=!~GL#[)U#c6$vֹ}t.)]y5ѬhYP?_r'ÏMGj  8q_pԂ&ȯԟFn)Lrwąr9Ds oww;QuSUP, j_W&6ȿ Cc/3뭞Ϸz:GKKlںy|"c9o"U<W4p: -D)Ut9Wh[JRvp[+Ʉ{lcYE\ jPF|' 4L!l?3"~ӻPB;ROd啕^YS )<1#~CO'LO)O$Fzz*n n&waEH?H WᢓF8S`}e/dK̞Q5OHQ6ϛQ6W((bIn0~]ڦC};4&`j=jx=mjԞ"id}" Ԅd%)3r.| ( LVw^<su3bAZh&n??ҵA|o˗,e7tY~<2-$QHe.ӇE ".L%e#)xKZG<Eԏ|zHE1hG9"k*ƻ koMU5ǵPsޥ:x9>< 7xE9QJ5j-xlq ]yy__!PhL% jҜoɦ)N)iZٖZq&H{=t"v[%k6Y_v(n<2^Km{yۗ{ԫ8l&kKQFM-Sܮ> {OEOiO5Y?YFM'a˟Dm.>IkY?7} m!x=KDR& E4UZ$bis5YC#&Yv7!2LjXqYc/^u _Q.ʏE`SgST}`SC@P iCM"i,@T)ZrD"_xVUSs r , ;++ 6N.a<|ݑC9_vxg>oOuUI"9+FG̒KQg{-rA_Ȫ5 Y+-'MTe5+qJ\{<''H$*!e-J Hi}J|<5r UkΑp z?>9E=VPgVzER΢3S_YWQV tO$!3:}|WC2|GʐUN+;2w+|p%uB/GW/R [nۢfzh[<(WWt ;0f50l8ߋ NC`CJLskqLӫmv` ?)p̖f)ev'>նɿ>!Tw;. ~.697)/ <{Ek+F.̬5w:tkA~ЊpXYަ&sxb+f/l^E=B_w+-moܭAߕp`H}/T cygt򴸹BprUfu!Ӛi͊"|3:xd2Hu^&Wi]۩*?t5qxE}&\̐5Ql&zD a'zv!Ү*K.%]!vw$ANBޅ.4{5*"tψn\+lMnbktWo)Kh!)N]М:yDt.qtȎx֯ghh7ZP[8so-LWkLay +o32;/C_}y6E9i[]g+v5㍗VE`"ecZix i8m]ae٦|2~/n#ǽbRK2 ~qI`wA=&uSs:wbb1'G$`5؁s{͟zP44\w95p.c΂M3wAɭWK{ d1AeE|;_S}N.-w jL",d]yՓ^nH, E잕/eGbb_4 uJ1J r=:=+ۆS0XKHmc߇_+}øm: 5&>; ?dUP| wxzr~32lٿ~Ev;=:=8ۣ6fj>HW&nU{TU4{$ `Pњ K>0]l%wr x?Q񣆞`g(nڞNP{;N! Qk Vd[}٠ ޗ0Ȃsob:7kjזmqψpb|64צ×tL.ḱCz|6 \T#Ç+mDi\L ''ol̗ 񗃋O@Nd!iI T Xߧ&-NEB$#Bcj<^IX09.' qϖӾ O gXOK0ܤ/ rߣ%(~trt @$ d@{ֵ_#wmMZi77!xw5?5./|Ohd|dNGkSEr=s6_]ͮdp)t1fo 1@n9m![ )k.C"@?ׁFV?|1֘ȾIe+ `s$qJ s|zps޼;sorsŶضF Ma'T wosBzwt124X w{50g.izu>1[;F@/wQ 3mó%,|a:`}{V)ǂlmm38QB: z,b~=u/`Ww=|E zm # !Z#l.`EoĽXW.boЯ)1vLboz79Gg2,kC0DD:4^\ ~@6[1cSKƁ531;nz#7 :n;Нy_jEF&3͗ȼ]zq,,,@}b-O`_z/N@_5X`~9NϐG X#_|Ⓥ3d 0~>v?h_{hgݯgsxu}iO//痽Ͻ_c|].>~@^}==}zZ:a#mli8#Ws2ޗ{䗃:_6|;?|Ѓ|`t&Å(|/ _gO6!I$E;]$gy.?hy0}ĉD9I_Y|H>Pw)/?#O0sn _@{@9bO]~;$lϟ{?wO@sç) ~X?B)z9> / C 0^٘J?AgDuAo]ko?5dy bP.9_£篵qΞ}zx}{97PbǸXWl4!:~qKBC9pCG1=k.9||A%j`wo< =׶ˑ#`XXZ">P@yf]CR+L,F -l0N6|JM}Y$"+>%9s9Eiߌ> A;BfX0 RXXL]5(xbjJ\3al\yJbNPMAe@ig3<Ѐ^';pǎ1ѝd .WCLTa.M |jF _\hnA W,{ ݷҌ "BA.diYSAAG:[H8)=toNk GzXHsJvNp lHK/eB; vJB|"WԽ8s7D[$i/!ڔ6x! ]5_2Na>':{$3 !o ? ͮ#-5 (!W5#H&Ț^c{އW3c e @p^-pX稀ܻ͘in *"Axvi(!<+`sXe#sE[23%6F%>w\RyCTڡVIjOi.+$*$܂>JE49O|u3¼@(JG!vSpYAdt.t'"cY3cÿ.F8LMPV4br8T3rKzt16wDRԀrbޝm2,LSJt{ \>%~,%=U$_ x+ؠ)3ӗ.,5S9檸T0٦odþ| B|ASUs7t2W_z*зD}_-]>˓C9AЛ5Fb1W }sܷ;X3m 7X82t"dk3ψ[m , ogAV=؂e|-ڵ#Mu&Zji[o1v[J(+eؾVyhpRJOCvkz`16p0S֞Ā̯ 6r 73휩 n2fZ%Pu4pe(8L s,Xm3!C})7%Px$&՜mb_vϯ_0Uqp)+z)X$8 LYJUBocy,`Hg:IZ9_{a1i+aBg;wtI\aB_+sp؆PStL)%Xłd|цzw/=wKPjXE\Qg]o;3 E6M@. :a{mK4h# HS sckOfz. bӝ_\ ҘC/f!tI?f%wOëkbuv~s}7|;>pȻ+8$xhS^ Dń wqFX4qwYsiZ[UwHDRGA-VG(.hG݂7JQYE(.żrc|?&7;d2Z:+l'4iHWo"7ƘxAbڍBv7 Q ~Y bV!zP뾭]!_m ~[ 7+dχ#̕#v*]!_܆,ntacPIԄU\CP-7YЖ% ZHF,'o2Y/~ n8|-dަ@ IH)O+15[,q5_Ҙ֟cza_,4zXk FI d:&߿^nĀrk+JZn Ӿ5c9 􉵭2N>ap;W*Һm$)>8 'bzxb,팢 .ٵl6ƕ<DyW@Fmߒ<x,Kb#9bߣ{&ӡ`ts =֫XUѧrm++z)!M*9ЖA0'@i{=)P3ݮ"$X`b8); "|'v NPi -ʒ.;(p@'c20mgy5}*'+8wruynIf~?`ߵ8eKH?i{lCNPc'%5; Nprt#"xMSiqFQ>Y]V }ri_H2,Qi0Oa+2Ug\tK3ښyq5kƥO{p|˨ $Ewrb5k^hW, A9 cD-^hWNvS]X 4|9 %:DW 6*,s-%@V*HMH2LRAc8[c4`%; no YJIBnh _{PD ilN±"\}c'95h3Eln + _*!Y:^9(bTJ>v';| L<.qW@ _W^ ѻ J ?zRO~$cLiܡry>2a_2uYdPd].u 'bk g%MZ)J b_>J2Ig%9lop =IP걢^cp3jO*N.ڑ8{my$+K͸@<#^>H|ٴ8|d62/j|r$1FOX}v/p7%7ybqERD{ᚹ!{<^Ϝ,Nd 戎Jk -@p{VEq_GԬU维#@Jld4Dj~6lj %JT)UF=TZ U^fBBIZS7%n7.rX%sVz@jZJaoqTsd I{crpͼ!"T*'Go>XAEAã?jLJh+d kg(X\]bxk`Ő63ILR=uYrqUwD ,4-Iknl,T!ܷMج񝸴-S$h]\#sX.E?ee|z҃DZ# Ց6!ʀQD/*6AyP,ٞCl޳εznۛDgHIFz`b!d-́G< p-rr8$ ]wGD;Ƨ.(=٭f 3!{ [( w޵bی+|rW |$ &= naK.ӻ&IAhJSw3Sr6]cq0kVY4ui.E8*ZcX::πĔCcTrOVY˶UumW,\*-Gnre|&Srfi6D<y%CV+Xs[#gf-C.[!&-q>ƿ֫1v&u+:ʳZ\1ٶɌiZQ,WZ讖H[:%ث\jT- +(V>I2ٔ1u Ym5jLkQeh%QzcZQdfa"{mZBW5C,c" G_^NOp, p)HAR: 0!|gxԺ86@!:M0qjg&5fxls #􄀹 FAC,m$lKc҂&aQ"%᱋ĝbVD7ȉ|"btDGrE ;1t1`eX9d̈;C9]豎Q(Y!1c8F]>tѫX 62 x"ν()Vs02CV] )ABй z#+qLHbUNJ|`W]RC#6杓30Pbqk̰̾VϧĞ1LYO4,dF8RS25}:l  W$„' sIɁ,N>M {\~Z3aR2$6zYÞ9>UQ!ϕ,FI#Gdo?bR'CI#h3ĝ՗ Tt>ToYySD4tYqU(|W!9y8qR%C" DQW& QFI_qWT6rc3}K=bU7،>K-d5L,VEOڈ-:Ki YoP;YO|=8띟19lI!"liŁE32w S7Ic0W3slxֵk֋kZwhي]^~ щB[XYFerijWŒk㽗K4*F e{8$lQbYmY6f < Kb(Յi@IA9+ Ԩy/8h-og]B4e`sOdEzRXf1Gw ˔CFYBH\rmhp}1ܠ*~eΗeؚ%1;Q%Cbe=BL$Wf\\$cϏʕ U|[zUVvUf(q2-bZ}۪ǏWgX~H^tvvxڍ,έo&?D7{`WoIVG{; |m8ѷMMDY9`[ Ct&oãAhsO68wtχrdZc }=4wgcF]c Pb>exAΒ&cl7:e&JgwGmx,n -ǺR$4_z5vA1G-xw$J{[c 0ϼ$ Nå=m)2v|iAd^Nb~c,(.mv}fEQ6D$)~œ=ǀB#0H6|/N;ʇgP3f,9;%ik`-dfdd_=qfPڰ9DwL\s |,pz%%cj+&tmtEƅVҁ;jQ"L}GEC~kȀ]:|a:<=7կ ]jZ\>dΌ>ό`˶Ŋ_^náH4H>%pdˍD `t13]n^e/VvPXziw\:%]y͙07a{lݞ $&z.!a]x(Ss:w4ۈbI *% o֤ {8f~>Ί8n4gM%3=cJAt^IAhcSf6j%g-OB2#[+>ky5^{ʔNBuOIuY˓N sv=>Ҋ1/Yh$`U+~=c  L#" uC3Q??@~~h$"j hDDf~(?r$tʻ_mE9hVWp r)}K.p7exG, Nɰ< b*nAob͉{02ll'|18wWt}%W1̱DMPKܛTr7Y gplݪ>;'{!q{f61)Cy[Fe>so8M^x='{Y`1xvS԰'G7>{F:KsgpfIyM ܄|f6ɛEs ol&v㸼i79&fqؽ)75^Xa3Ӌg(q{rh&$`Ϣ_$_ODll~|hp 4+``Mei07+AL4S;Ԛ݄& ̸3^} AG{ l/ܑK>BExO#eF4_W?S--Fz@(7YY;3fqyY8ӗE0K5L#fzݙ ʅ9^?wvTild*9QsdYw߼ 1rͅ@rnNFn0F6{EtsİM_Z}zV*/9aژr4Tnzc-a5ԾGia\5.Z6 \! `2^wB5%-B ̍;d@34֣̋'U`n':X E^4YQBgWjZ"caH\ xS.Z 4,$)]N:&Drt~ֈN#8 h-xGFHgL]_g[ok_fP+a0b(9X' hjݾy>,V"I͹n6x v el濢Y(-v頻[WMhNL~lw\)\W,"~ k !Ar`5vEoW 1C 8AgU'1(`*hFՌT7[$)*)8ʢ0߫2_EH6!і7̍'RœoϜbI$o67@ok晆YWW^ZޘԥVZٮo31@~>nέe`x_诟2'{JٞKʸ+i~(,*YsgGD4/OWSV~gqu|+q$]O0WIt"T/`咭7+$լ5uSfVմ$h_rqJ,J[Ch5Pw)M@sx!mbnZbjʹB+u-׬SK5[7ӛ2FU]*!R?ۦ1#eEW $iR]&/ "80nHb$z41猔UuXsj: 6PO}+|wȧ;2/ 5 a}B!|d _W"ҧ{?9183$6#.W)(ʱG!T"")$W~4G^RPQ|nMq$RyIsȽ3XPߣpl 9BX -=E-,ZȸI| Х3}].F $DLY$7}&鸡rm &Kf,{#xx2!28ѱMPvf|מD4O)䌕Pi8Ec(OeQ_~Uz!O[kJL{7sV? 0kBw#V&L3\>WP uwH3-i:]$ŀA)qMr<0E>t[zg\өnH= ҃?Y2.KfրG%5[Y+dN/lUqGiJEB[.1Ɠt~`:U VشNMZM>gY7|5Ӟ{ѭkS3RԚ֦v>6D2|_d)a]}8i^jVȈ5`!y)""CdmbbU`7UYON$*Obd\W)EtW 5:s/k<הAnf1{4@oYfNk#̰KP"4n܀[76"; Jߡٖ9dAQ=OŗGOV r dJ섐L -@#j ,NjtClwȀ16o)1,p E&,ItQ08R[ׂaa; ,bl *` f7HhqwW:f'ػ@eP+Z<<{&Yُ7U6DtgMfўFi<8E #:r`a+ĸQІ}S`!d3JxpYo׸AlgH_YwO1~P:eͱNf*xcn?UN2߮ UEG S;;痭@8pis3l̖y3q0UhjHa/2٣;0# tN`Dxu;asG<0ӆ c`[2 dkO=z=E͸ۃ16=*քޘO~rN?K;(d@.]amʳ4]QZXf )Yу8\ZуqՍ4D>PLT q NBx_Z#w6Őr`\kԻcmmyW>SBu pquRJQls9/bQ(0Z ]֦s-nYZI+70鋗3Q;iYTC!'_[m>=7A}^wjv/{GG݁iӫ3l|xx8:I>t=5;΁9d<~|tdAn`Ѡ-/_Nf7BGF{j\\e] ߑqg7 HC8q!٘0pE Փ!/h=ѳ;bF8e`~gTb>]-cOhT 0oë֑QI$N8|w`#0 >4LtڀK«$Z(x\ɽz$F'.!~;<'NeL PۄAB`c ,QiׯowXSKg;^OJ$ GF ހ,֞g"UֵXX Zv9t)]Sh.@w'Wy~*4J/N[-61.l&4tiW 6N@i̾cʒi$x$L[aOvXB4 *54b w43 c+wJk6&:8pZ;iU<HV\iVy{ Zݲ )tx ( 1.zq[gh5Xxmi-`<!-^ɐ!`)G!p3xIEm5dNb!\  |\xn=P6EwTd{ӟI`<4,%8m61FF+o/Fk k48&xY) ro 徛lcǮ?G]!>׌ys1QObx x6INlg+ 11 nl ,޹)5 ?ޗl|`$ 8`yR!+anEYCl Q<.#0#a944FcPÀ| بƟmM~l4]^ծ| : |^I{R~,20CvdR:Bu W vPhla:/#Æ5k܄0E>˺y&;e5 `H1]4B?K4X罹 QQ!HPޘj}6δiȮTޛ}܋Ξz= r4gXȄWZ kM53Yt? )F븘Eujs5޸ыul|V /ݭL?y2A@=zgI%&M0vA*cd4ˋQ36L^s?!_"3fʁۜ734+f5vA\h7oW$' DXT m4(/%z߽ι|Cyخ~6R1Ixl:"SG+2Zm>,cK!$t8a++&U>u~O{nwټx׺翶߶χ5&φ1Yi?7?t>u|~ (tyu+jtcs jG5(| Ԩ}m5 pUTqg3r{iGl0*|NwHʐi_buM.l,@rb6_Ȅw҆bu:N#'T̬OlTAbTF(Tl!{{:"86߫7$ |1([H?jTa~=mi/`okFZ3 UţkWhbۉvU+ąEmyQnf܃rY(I!LF􅍜sk] Ɣn)fG>؞,ıgdp Ktg +9h'˝mA s?eE=!ǡ7~%H2IAR_TzHD4{kaZy?>h(DEe #Ce"D8'vW(-[0\4Xt[kTG I(Si`CnKjJ$_edLE!]2l[BI,KgQAx%-UL&x:"O|dm@ō{GTsR$Ƹ;"O cN;(ºwTHYspNSg3G+=>$<6̦lҶ]~&Zp 3Y?秧WUձ+K󏭋9@&XM ʱ"BCO?і>o3XJnUm1hQ*UJNY%ъ2B@kybhkVZmK1- N%Rn""CiMD'yhQ 10 JyJ `c}rOO7Qm a_dM|D:b6Z|CKuK٪tԁʰt˧/ O>dYQZ#d_u 5B.XMK R4(DHRtAH̼Ei0RX!D  V {$!f\]T⦥eIߓZbCX՝`#E+yoc9ObW!6f1lj]WJ2t%7wpK@fbMJ5P~ bl-]Yȣ?Ȳ<Z3*͊3r{]^vL@pj^׋f(R5Q*ث8`PJJ@Ej ܍AJkÛ?XnGэ&bC764\DsX2Hmt>q=Ҿd8nNˤ>(͓Zz9S¾o"@ Gѳ@3Ft#X>t8l$ONԍ&'9Q,eGօ(ڡjk=fDqt܂ =1?˰33E|N$})szQ:9;ծ(t*_vn{LKTvZ݈Wu+>yv#5fN' 3d2X/ٿSc~uP,$}LJoP=%D^srv%Q=uzq?"=Z 1>mat]<9 l/ ƾwc?: $3\c7H]K`} hcž;X<v=yX71 `.pfX.8J}%5׾/~z8l ܺXmJ Ev^Hxfmhv~7.[mw)-|ryB0P}hW .jXFK޻{վl>k_nCx:kfx_n Ӿ4]Sof΁.BCߚ Gvm`~5ۀ~L4n8$ yBˠ I=a8uq׈vqJSe 0@\5/BExk /8"*X|:E޶/Z'>ePt[};T0by=oa P%۫qv%]u[5h~{ P s7'$lОa uZZZy PX:8+?!aNItHPCƅQŘ:F6o޺(0U5&aۜX.<٧'#'\vxqR?_ԍFȨ\Xefѧ^(qk1J(}үRFVGyx,W FdGzaT 2{?sҡ֤k!< 7@ 08'e;Ds 3#x̨U%G7acaB$kuH87uZ] Nv~AeOf; YpjSLس¾@"7voqK3r:H3찀tR`_o_uN nusX  ٣˥te>73cz]wgD4+0ivذ*5訪V۹x{`Y!l])#ݫE3;G[*Of9H? !$T#^0J%RK^^2蘝 P4;Qr,šd!='(F?ObJn+x !QΈQK  GQk3rj]E? @:[zl]"b 4ɆHEZO FQ06V^ؽUo;0cfJ,O2^ԤTQo=^'jg'F|?Y- HeGCE )Yu-}Uf物HREKD@sgo"~"n4*hךӡ&MA _{œP o]T GU?w%fM6ː7DFoEŸ s ?\%*H{'硬,; |~9˵%Yu="Z] 6"iZLTl WpyV(]2}.ڭEF[6Hqy׾z|+7o.ֻ/{+vIN(5o/૤M*%Ƙ .jAQ^ k R HXD rp1-fU8θ0֫.RpW]]KZ "Tå+έ^ ̦1x916f8|, ޺>~ c}w>t͉yt&2,28dY]'NWfToN Vxy^EMS㽂ߐ~ep#xu,?lX<~qn ;# %OMjEA@I*Mh)$I|TϥmҤFwa0ק罫68Q8o%حD@+"{A 20{xޱ/=sq`6 8/_O7V<5W٢@H.M%)IN2.m|1jh… IU,#o* QU#[ߖօw L.0A _3 Z$#' 1TQ7ܯZnцyQFA kF#Ńm4\ߋx׹oxc<gg?YNN3F<БSsfŠfXMԭT._CP:9b?WUX=' R;#I84D*m*陨3ˊ̎+.Wx$M E2LD8>" !*C(C6e+pTϸ_9Z:teF0ג+_u)ZṄ-MPՠ2 u =T՛Ia^o:[&J5W@z-=8\rɚTO@ YW..2t߁2J7/|DWiIؼ|AH?[SlS6 S,M<LhMhaՔ1W#_DySܺnG )c YqpDF{{z85(!DUEDz܈"wowO%KQJ0ΏB Ɇ 3" cPxh"U;I3*ƲlV ^ZW -_ Kd/zlk2 ~F~d'9d3Z=ί?л )=(b+Ucaq,<Dxdx!=yWe!־?3Ӧ"  2HH&)2n-p\çHZڨX;+j}Y]hVjV#WFxk1` hƍ5Ci@-p:{n b:J)$?U'Qi{IB~11$^+@Kw1w `IKS [lkƵa >qkY Pd4뀶I[wwJKG6Xzg/UDDR dDLkUH8Z0-YvBՁZlJ( ]Vc HUwjrLbʜUI8(r$DmSmCھD6Lߚ[Xb*G[Se[Fvw~jbB#@=ybx&pkw{O{cī)rtN'R{uTx᩽$e yS0j'On{P`})>+-ȸ2_T`HD>DXrt0]AwdcS3:v,+MKQ뾊|~曑OGh1E Ik☍iCL E15R Θ#mJ[S'v0^5Z&(>~zLI#~aoCSg`uѿ hGqU&~2*c,v74Su7p-Ck' / ~).j3ouZ} /i=Y׈H'FxXq8ZJ3}]ʠH ߫>yu_ -hb}M %Zsav2tuS5>t}VR *9CpFz47BD.M )[Zi9rfN~|eN#fEVYv K$d$VbG$3;Mi2"MJ}K ӾX%% = H-@9\*ထJY}/ #uC~B~C2Suݪ|\U\)lJJF)["6fUW% `j"dRpY$dOjD/] 3#ls{0mA lMvwSloS['d%ۧۧH-ժ 8 h$-NTTVGqfmN'N'Sٔ(Mez1=hYϒ&3cNv٧E{ O;9Yj~17/E^Vֳ/uktfk8TS1 O4~a't09֢Sd,F|9鶦g3DG3{mخ{ؙ5 %"JKmK Rβ y K A!P-,<}5z^blc{XNE-Yc3s;9:n`\0:p,B'nLga#ļ|t.<9ЧBG; ֻ"T̟ nxQx?_Q|tlNxӐFZ78wW\@[^*ٮ2$ "$%OO %g% +1_j~[Is8k^cLc׹8^w})f}y< o &f]w؈h={lIqɭa\^5vzKaa-Vп*Yb)%WEǶgOGt"8\4;M 9b# L89=}ΰY`QybGW>5# YR& bM7~D&*W䤇QëUYUMkibmm\Vo.>HGL*Cw~tj_f#h_iMP~_AhyT-W,`hZb5vOy!iH e1HP*kԜkW_"?/XMIDŕȮ3ڳ1L̃>ϱKxIkh7i礕t\х;Eyq򞇷GR1G=2dk-t34r,+޿1*Wg^Ή?4O.+Ssb@'5 @CfLL*gƣ'72ؠǰO73`;־!Lλ4QzP־F%:@'Dn "B_¥ʁ N/ U9h`/*HkPQ8lsgԒÅ, Lϳ?YAgEiߚ{2bM s)صH P.lJEӡ&7JEݓޯ rQ;?=?=c\M;{0w o04@/G|&A,5:3NfnHG{gu*8a$L9tH='Q߬%~"vR&193? f ro1gy1 fygw fwqYO̽%GIjn.!ZqiSZ)~-̊ZV7%3LF[+ J9%dx m?/0x81/AH˖DWzh ЃaS(5Gߌ,m^KEgeͳ(T,~HlOUy3%tmo6Mh_¹LJ!ywQ{P_cFL#{PqQ=}߷lȑ}}#Ҿhy&,pgv31ק7G/_̂ eN4ƋPS}x$7v$iR[A5VqG|^qIiܣ$ hp ґ2=eA҃!OU9/lL3RܳuϬ1VM܀9T7آT-STf闻, eRAs6\Ю7ڢ\-6Z]3"GP(ߞQU2Wi ʋ>IgU?48⇛`\Wp|c+!v:1" #po҈7" 3MeBVUYvCa RWM4)N7dVi׵+8khG͉+ AX,%xjNQ"Omν-TV^-EBhUiy6AmeKb[ =: Ⱥ@W^6";/K(]j={٬E3CXzD{Qrt}?D_K4 "˖5I+AfCr4[q^|hL˵㉵IʩH[LW*Vf9E'߬ ;7pO# .n`٧hĬSTRO<? YBed!(L|Ef@jGJ-4<,QNwq{)@ 6{/@<-K}#4sL>{3XnK 0!VQ NF'l67졋t [wTJT^Y=4Ý0]RSGgc`ٺBAK" r8jP\$FhC/lHG#Y R3Oc\nC[{|ھdh=z5f!~:R(rs$Bf-/'j$Mf΍5*7 7 >?[r7yq(GHvd|kvyv5G${:ZfB(4,hxR!/"c_s_1|?;UXڙn3GR΋j"Uo'R΋owѻY资>3ǤIœ'y3hɰZ +l˲pUΣ!Ex: %22=S5s,+9B &+&.!p&+]Cr纥|&|AVZ0}0߹hGmFZU Rh(7rǙ5gf:\bk%s1=j)H&pZ9Et(p 2P/%f9 M= -A c+(.IG&RnI&09央(QikxHJC@nODΉ[yz+79klK蘌,듐r3 j›Y\nk끍hwߦʊ̭][k|"Nĺə T%Zjb C<^e5{pcEHcX #oǶcU@Zq̈́d'w )h=cy wC%{l:ȟPڽu|9id( Z_02 JZ k2N/%h80 ִc5c1jZ|z=6Cæ1=R42KQ7t[ v(̯`i|4#3S>c".ũvJQy7i͏/;=iv/]3V1όt3vj?Vo~@@-C~'~> Px~8cZ|_/ə$qw i4^]5Va(q %s~Bα7D܏-Vbܚ5wU6z@G  ao^8^R/BFrw:>'I]]:2(3>>!lJD(X,(XEk6+'qE/j#G6_I%lwZ'*U)Rf/<5hHv f[ Äɸ :"h]xԛ ՛:Է|(8w Λ}>(QD7\<&!DBx*;(CWOwM%2:ItjDՈRQKs'Q0IqPdċ0E՘:dC6]n|Ԟ=׼5ƨ+US̅(0ޯݐsc7h%[f4]GxSHѭA*-Kqpo0Xlxd$phzQBF{?.ϚD-+0shYzZF0xiR\$e";;:5g?>&t%LJUD%m~9)5maz>_ X tznp?^EMсTxuqf~C3U56Nfͷfޮ{[pwCj"qђ劉&ZQvf[5:A>G{q0jF&(@>7fHCGjljh WփԚ}(kJÖOIg-)n Mqw%zbKԌ%bJjD`0vc+@ 5Kc=䣖f.fLĤ< jɑR jZ XRlßڦ m o[._ Xްs{CF-U 4T{2SEwVÅq >%X=ڧY2h5 ޟn-94zFԥh0f rD|e,X_2JBŢX>>PBS_5I'} j٧?9?Eb}l_8aw=aߠ97w-)e:ńU.kMĪBRؓks}Y:EMf`h%~(F%%ba}?^^P -s1؃phb[ѷm`IfhpxEݓޯ B/x[ӳ轳?=&@Da;@Utco@]U"/*µ~g]a0G@DրD9pq cM )rl5.m6_Z>_`^< m tK--mx Q(f8{߂I H$̴CVLL?L|{ߵ:82c0w|)Ņ4Zӽl6fǏht^wjv/{GGԱ* LOqU[ׯowXS\~:]oq0p`:ݗ>Uz4pu@M7Ȇ~3Qbj 9> 'x%p-pnjycaEZ͠Do0]t;scabHh(h?w_ڝsLJ{`9S}}0 :ʸcn\o08œ=1CCxow77'>+ ~C&>~?bI]0(yɴKITs$#ooОj Cul~8l4?όX&r3_h4ǠXg~c 8Fd\gojohax3300CQkꁸ,샊߯>a<XÆ|pln;qUq>Za,g!ΎyXQk!AlZu|h ]L)8"vLc {cH9B`xb jh&Z偣rی5kעek}kqkYSy~h@htY~sØ5G%# W9"F􎣀WC/f8>ӅkwB hf 3|&|#30!(Lo/[ܺbtA)PeVn\ZKXR]-|ry8_FE&&Vf0.Z/Z]x/W{}}־8?ŧ0uֆe FC}xmڗFp£}Ynu gmh[ap]=9kͳ3Ѻ 㘀˻[N T@f0 Df`-ONcI9E 1Nۗăh`|u>:k^(X0N_yU0um_NhRm oZe&w.%4.Q۪A&"uoB{wBbT t{N/ρW$PyQ`sؠ$HLh]5>4a`&]"$5n}JZC HU٨#M`ll*baM1|Ai>^2&l/QEGtD!oѝzDb5Є7T`9.Yc)]8Y w++ 0 *ZoIqԻݴL !#5B'qn3yƄ̌4#OC'G4'&l9G@vj,@ׁ}$^:nX3?kcd<~D׊0/Ř6ѯšž&A=b`܀]5 l#`%GC;  >Kho&_Jd >fAU-rQQ-}5'`:~"c܁]sR>3EḾ;i;Q-gNavXl`MD_t sAiDt/9-Swa@v#9][GG[.aF IxFgTd)#=}lj`((WB; J4[Ld4X4, NBL.b'\͓pt$[\z`cPjOI$-(0/;ő7-k&i0t-<21ȩH:lz@qRu]ce: FEjTOsЈ( Kj ,FF~6ia&X)<ˏO a l<7A-S12 +-dX`F~잹[c,sa3419L@ RQwlv .n1RИ ū-b._^/IG!l| f܋Il&ӺsiOͱc:s#,0Ϩf@T'Bt~m^e_J1VL@*t,"4wyy pSJh0O۝e%.-|y6ef&Lri!rŰMtԣDg֐U.Y=Y @ Z?~hdI#K2Det<<&8:9w ͏mo !3alؤPR*b\8j,2`1;Z Gk O#8 1 4ZdDȊkX,lSH"T2N[F,c6ZdEwx&x =Ie]:fc|-f؀g\s/T0ew4R#u.J$" Bi%X,9Ra' OY.5Ț8`X5J9bDA怆[+Cj 2bZXǎ._B\6YBV:9/Rg6P1MR,MeS\X61Ir2ɷɑx˥CvTzD:ØՖտi[iHz}OPp2{Qr^7T NK=*yʁnL9Yi7Œc2 K 8 bAҬ2iȭW4-L6Ĉ#` a(˂mBdL-@P"F3iָL:RQ7GYYᢔIT2 >(^1q\6$lD$RQ)2[m0n'{~22WF%M}>f]0FycTegV , .` -.ܹ >xeb:|qzvr)9UEbB>c^q)?lT;3<> S;3 'F.Eotk@$RmV̌$S%޾BsT#$YkdT4u_*m2Wʫ(ɠɳgHa#Sd1:f̝zJwW7Gvm ~_Y⽺ap$okZ{- g*}jtB|XR6_ ݆]{Mͩ"`W D 91,c/f^ɜ~e,z%BD*!zGQe-A]W`.".`[߭h]VuJMJXSLUdײL,2Gl):%qGz"LT4Ě>Z)_ˡ`GG?1AfBLB 8oc&ҏDq*tAa^{}U<;M f>b!壑CۥhtEA#q4 G~?}RLϏM60vU?@i; IBY\ACy=I9\Fخ@zbXBDWJjUy~t41GZxLxkի(/X2&@Ÿc2amf zҟ;l/ H+qn=!P|j"q }Rxxz 0,6eIJz@<`!œYiLM0%aH5WHtS3f>IK3/=\З=g^{:K.P=TZ`:4P`X˅%wD<ت~?N`4bTsoKlHca#&kxr:x$Du ɭ@$olӄׯx,~>~,H/\k6"HckB5 c% hq~þ/?KV|*4:8HB͒Y̢n{(rd Z I.u`-ىŪJJz~]ۮ.lѭ9%8Zpŏ\- H47F;WRVLx$NF-E@4Kٝ|x|6_=-W{#˗!G+3G#pmA %w{ ٚ*$kJTȐp[=rj@p+NO7)g{u{qX u'L{d'R4􅋻 pi3rnOF/jr|ݭ/BS`G?g/僝^U[8o"y󯛷Yw ÂU } 8tYdFy DeOV25vn/ 98A$k|hh&|>/QYl2,e5dR{ԣI E-ծ ANt3G,LUT˺b;Xʄ 1m CN Ͻ;׽䮖t_֮V8mwWsWT%ű#e@Yte95v,*$'Pz($UA%\gX1Z|b֍SJrw{%?\ICp#8%V *RPղ/r}t]t 0VsƮ)SY١Vbj5T.[5T{-_N71m14aHhdfMm>uUu,s:)k@T&'v#]19eth~5Ҽqv==wNw0>4/|^F7VcCgb ͅ.e k6AEm{G #`Pk[p _ -L]➻&J(#L>/jt>?vB _`e#,ȼD[B\/|hNub8hp2a^h9o%t ek{c6޴'n]g^'IHhDE8]$#:72$Y z鶶^/{y.4K1T`[/a AzuX;l YHBU50wb56ov/f-O`afc\P2Ate_3R)og-^%2~cDIW"h.YPHz4h>WGa6¢#p@ X#D `2ԢLwMt9\i$SK^gTЪvAc~g"vv X Z 5u$73Ə>8omACTd)2i|8tKtvALAmk0AȬWCP),&Yv{j-*}b +SA*,5G kzӕ"AMM`Mq*U~p*lQM%PO67^8}yfXIV<$EB@"$HåVO,#\&=rܳL@^3Y ƉcN1,VРOvi0 ^`W*5hqjGd.D[Eo^@<`Ec{*h" ;q\ad/oxU-( Fy,8BC-$='x߄^icK{4dOѫ"a ٜ@qrv`X,)~LL0zMu>.IKC`T>*H#ڱ=JTkJMQkb 6"(vZmQEH/{>;(L2n(e«($Fm`a 9fCc:]g?5ح3Fgz= 'C|uJ9aEfVu4v-7kyClڛZ9J ˵{,T35̼z/bA;תD**Α&(T"!CHcMmd}^9~={uvuA:}G.ю2Ìt4ڮn{cOB m:XX- Hes~u>?2_pWl>B|q|>|m>-|O޾0]J5Zֶt]<-v%xGܘ/EZ˗׳g\Ju@K.x֣#9&Nv2w28;Kz 2ytž"bwe4ڲVsnJY Nmų^ok.e妗 .0tH+<eXXJ9/ͪ&E9HK4`̛Z)Kexõnd@.X$?y߱mY=^kypq kV0 }(ɄCہ[gX$s}yo ,l* WRSlBX؛BX]6٨*BdU6{mV؀bUi m؀U8*6j>:n`u? =D*q^)3"ƈT+=ݠz6d-$lR!:VnK.QJm)Ւb[Jv[JVvRܷomq%:g1`n[2v- l n n î0By[uc+m˿nM|p3m-m]m]m]m]֨lnknkjCUkf}D,jk3<W1p6V /ouqꫯ>I5XW|jCWq`]Y\,kHF.ɨm j611`5(yKyV3s<)? P}27Ps5z0ť{,\V_e[s.{.ʼ+|=C.9 .⦰֦ G }},k3ضgB}=Ȉ>j{{=c.yꦸ%W=LJeg)sXa*ڹ oX0]Y_{:_ԑúA8S_sMasy V&jښԲ1ew O;΅7v=603ǀqnXFOG /f&<$?o&o򕩁 ewLA}MaS^uTO$.>-rZQkyktYyt$idݗIks,_N~"-<#vsΎ?h|/ʅAm?;yuQXr-W eCRM rֻ|]eb>BQkk.S<"]WZ0. `uq7k *S;ބzEU=Z>ҹҹLQ6YTM'3YA̤WML-MHۺۺۺۺ xnv_/LKu{[O{[5w[57 usd7K^C4˾S\k0y5?5|.y1OPt8[_m]G橷9(fYr7& %whRŪ9.t\1Lvd\vÌA & L[;ޕd8P]=vmUV,Fwv oK]VQ8wkLl~ъrRLZR5WWX$0^2$*US@屮wD%WgGpsBss˸FKmxe|=gJx4s)$Qاf㬊ɏ'M);9k.`lU ,Dj ?}„. :#Rꇓڇjd:=`@Kb(hQkK`z%@b.EqZ&&$1>$)Wav O(#wLհawvƙ/KvX8.\XP/ Q$8z>t١CƢS] V&$iFh*f%i\T(K,ר79nR("/C#a:@G T=DbS}E1P2J?~aӗ,ߗ$ Ei/'5 B.,T ʢǃN&R\:b)Up# sWj4jhA++^RɹJ#xNJa_F3_9[?t -΢=+RzR>v"S?:5 8I)>Q#`9E~i dܻjrƌwz#5$#0"TIiw\m$|D_,#ƺae(&xǗ''NˏO4iIo(uG/ް;v{:vO_::[Gglut::_ybG':(::/st^u_@8*j9+ {]f>XʞKv]HCn&X-CIA',/Fs1}=i'Hvi|:KDX(֦>/iJlRmRmRmRmRmRmRmRmR=΃Tttl Y?/ ;9SށejOVKu:Az`vC0/)SG,MCq`OId.!cg"NU  5FNj&6 sX.2$޴}>>9j~Q 8kĴ>:oLXl٢<29K~ת @2XV+ X|9LMhV&4 [鴦F#SdϟAK{slW^9+W/V#8wP2q,gXILB Q׾j:-i)X$qkN[fgYJU6&Z岋v4sJq&~Ί0ד{u&5'^-DN '̻>:tMs|{#(d ̙56"n;P8a|@/Y}Vo #CA~#{B1,PqSW?ip4Wa;uc,FĔG&1"| q9oWc74$˺=b)%sraX81Ŋ\ ޾ : bNQ?$GCMN߾66wD|e§ϰ|`q;vQ>h Tg'CםXp.^{&d,빒n898弝m5wt Zlm/==c!/Y3 NuE>HDځJ?=֛|4ZJjкU! lF=Jb|^Ud4F6@KF۷A%,x0|gBfݕ ݃.[ +Nk^7;r_mwwrw]wխ`G48XRaǢP YQ߰#rk~/|[N=ɂI&ˑܴ`l jxHm62HijO9[oXoXjMn\b wjCy M4UxDzM q2_mمص7z1Bc4.y^v@> 'bK̙d`D\\ 56~>%~ɰ'Vu7Xxm/Β- #KW[HVJMxV[)P2/ >S5b~a&bӑdYޫioӱ!HA \69ߢ_꯫,7ҿLIeEbcwvkjs:R F~@"}` y;J(`a`[J[x%B`zXoOe&|kAe{P{`71 q" LxR&#Y[* 苍dxώ|Em;L?8gIG+b&/6N:*GrO_d-H5}qօKbgT| 97$"<^cfg̜ o&~*5߄f'9i{dp l; ฤsfWmm?):}"Qy ~~&1~ѥ'a/+ǻ,LfNj4/.U87ΰC#Mo+elHb-yVȨB(  ~͓k/&\n el V3מQifUro="#nLdUNO i)wf OwnJf2yY^.>( ŌY.HLIX( +e=R HkfbA"]V8B1 ~)b܂HX\Hm1'B&?"d$w!CYQYrvh25S y\DE\5dX,}'oVAlc 4$m&Y p{b-({P=* KSR̹>EpbN*hN./^!DJ82.iy~9/'f!'riY'%C"&8'hHO1s0Ojp#ywɅKDsy2fI#d`}g0нvN]@0`Qjg-D3FDNp {PW4GB]2 {.7a>)\DmLhCf&U0º[IRN)GV(bc"K*@j, K(0VXt:2uh4aXUPAHχs`m2Lyع8jM+1( HbR%7dt*|3FK nTqQ~{ߏnXU6ϺΑߝKjHٖnN f6N8bI6LB9jdI g"JQ[}#狹Qr~/e kn+ڷ12Uoջӱ/$)v7->=H0s>@Š".oܺ":d}%>{0M/S] cőn՟0 e- sr0 F>ڬD>ր ej]lAq*sxڼ]u{y}l}i!0"ƸXjո 踐d<]h]<0͏?amhi^nzHc]gs)UT]zny2}2>-NFyrNFkt26rzc$zWvOqPz}o!87|Ecc$@'{4,leb#M0?GNִ(t"jY!cȧW4ڄ2v^+a,|^vnY*v &}Zb?tmI5x7Fųkvq}aÔ6c%10gpj1E 舫eهT$MgDLg;7`]#k 8*Ы *yA e03``eQ n{x?kq޸ Xipq k 10 <<J]15- b@+ bT1\ ;v[A,mVu,# ,آAXA,Ēi)mU8 b6j>:n`e =D bq^)3"sR<Aem66X@G 6X^ bKT|[AlŤVVĶĶĶĶAmXVVVV b b b b b[p b Aض**H4]A,s b%/TALNa*-)o u b-2̖x^?#tgxD.cS2&DB˫%5P.yLDͣU~EKA“Y EmNLSH#اg WfQ{W嬖{h~p)-'hK % αB8 #-zzmC"`&'zBi3/ą;K*8#RUa8܌.< AHP b3m IucJc ,¨},-.oXc;y=_ YhĎ-;\!=rr^߾Rejav<^ t랩dH҉#d8$bVQܚZl?Qy(NFx624Rqea[ ?l+ub㷆gXч3@FU)\&s|N n$=a1'-xWIL(7[ij@6gn?>!׳ ՗aAPRP6v'c317ʝ^Em-^cGv{cJ*K└[nuԷd"_Go%/ICe֡X۷=^dT/!WTtU\f`Y&UY\tCu#Jou(%kTLa#[UMM߈:BdărW [Tĺ 3Ѱ23c QmuhkuTF$ ,2*3 \\G# 3gSAy/9~3c){n,E1hr!7_G,Ɩ ~ᏃryѪ\k41/"g%4юq6Q /_ۖ}H@ݏ{7V/YQO#c_`3jCZv;WgMXUIQ\]BHr';rb 57쵝~n 7d7fYZƧU6'4,|cg|/"` LgSCz~SBTJcZ޸"c:uvܛL(esHiY{z?՚JV*_Xzq`gG&9"7?VIVdv*.S`]9i.TA`)7.kI ;;ƧKx4s)$Qاf㬊a /O8㋳Svr ]6мY@*Lq1"U~8}AC3j<]C>@ZE^gԫ(p!,@ F0-7!!I*KLgOٔv`.`݃&7΄|Q%;,. T(YE(]=2AvEJX Z.CLMHT Ѐ)An_KRry&R/rr|$L{ax T=Dbӽ&bTd4R~(^;&xTfW%/s3q8izw̵dmJTM R/Z1]0>dЂS;bEi O(E쏟+;B`Hj!Q*&!m.,yJ$tnx zxȣ[\p`22': a|+Xsɢ24({S~-Fbkw$L ;,N}Nl46`ނW,ġ .Or B᛾A^_3MIso(U ĤBcϴm~&|=(uvԂN>q8$#V8u CGI8"a`d⡋iqEn"ԕڷaL~Y*皋#!m̍w(Vr 詅h}GvwwbJ6*OCzkױ?Kh`pP2^l Nm}H6l׎kBUYif3㓳OGp>ty `ﲻx_<9EoN8XmdK_60ѻD""P.^ەWR0ߕ/;^5t;>z~`Q@,k_4Kܥ3/=썜8I v}l;udJyvz:V@&ސ`ָCrrܺ<9HiD {0 }|ǰ(*39_B ΡQƲթ[ &#^ yD2:( 4̱s4B+ĸ\TlǝS{؃y._:dό̀T1:XunrX_0teZ P$W'@&9W>G 9But;x!ݾw=ť I6B!N]фo^<STXN & g}b"z22ɷ(W}۾BǍaTܤ ,vn~f!\X*V$NL"BdVjyyQmrShݪ|TD6Gq%1F>*bapK1=eP +kVz -߉;_'lw na;*0T]U.#ņƗpWl͎oݝ]~/wu+H(.0h ;1%ǿg ^7p9X jf$ T&o CAc) =d(mӧOi1j5O9BZoebt=Kϙ>w»nN†4جN5.7d0 un ~.ŮQÞ0"nԪ~U![YhX8lJ(1<_(gֱo",6,܏AB>(4)oĻ;z|:f(i)O@o0opX@l.5p,|Fx/j6oiNFa]hdBK!?]0H|_N9"Bkp`(d3fAV!38c}gU&D#1I 򽹅gBх5`7سqHM=ܒR\T| %̂q5ʾ~|}frɦ ?_5-}yING+4A_Y5F>=*~O̼15Ϭ+4Ap#qu54Q,oj)̼hO5coEzپJ*p HbÝwֻpfGJjʉ1h씅~E]Uq "a^ Ŝ-6%R!D@VTA)LCGJxzEYUC TL_3"]fkA&l8VI7d)ÑAW0q8?:.:>Nc(ȜW G(椩"`\ frbr"6OuR[?$)b!s.4<=9y/V3հ9t۾O.\"{1Lz!;;φ50@ p<(7\ozA*2Q0t0:@=jz`:0~Oێ=qOd0f?Ol[#ka$zd2 6."4Z?9ں"$AmR uOYc:2uh4aXUPHχs`mrLyع8jM+( Ha'; 1K5̼"/bD^[*VիƳ$9sw҄c[.CYͼNX -tY̪RV ubC*K*Bg4ڮmoqw[t,xKo(IMOO11 &Hx߲zF^1F5i_bsb!~L98 BAc%aq@hg24sZYzкlX+3Q64Ne/uRkny͝\}֬p94m3í6Z%4{ʘ 7.hxsU5KH.[R٨&[[;0}-[Z 7t Sd.Iik]QlWE`63Z[HHIf'VO,cVS*54OnLL E_[~Lpɐ)R|LJl(kz]Y[?JTL}~cӧA˾S;z)T3u26rzc$zWvOq`9"ZB\dNP@1]kc|[e6X/l`i&X|] .bO7lj:eKs nQM(bgg7gei喥 a\`7_ң%KWXgEy߱mY<Ƙag'.L9Mo㹋{ś^C )vsX4jR:ܥD:{Tb<+J-YT0KzRg [9 V u ̸7|=@ɫ֯θJ07uxCӉ? xV sE|8`in9ݡvwwX!ӫV߇gS 5'?*] 29[_ .b"M=:8;U_0ՎkGzV9ѐtrQAut;J C'[,2zRLƕ;uݡ>UdO 4^{^n e7zyFh὘f O(';{^P9_a:S~1rHo=@TRﱮ62 uywToܛL.bYay`UobZcYX kV/NDX' Z#XEz +<ڀEڀ*Uޟ]6eeYy_;5ag` GzRIUy%Qe5YPQaLSiQ?4I |\\T|8Z#0N*5 ADrq$衡tlwD''4:ƒO᫠._z~|9aiqYy yIBce ?V/"'s Cy^=ɀݎjCpHr<rZ @GJqVHX˓&N씝5z.4oV7A$ @+Cb;gHիNjuZ /xE"/3 `Ux  i#dyHR ,$QF:` j08ZqxT~ Dž+E;/v@9~% 2D@%wHjMp25!O7R%@//$ Ñ+ %PԹFqJFq#D>Xrr?2H!$*QHUCiW! Y/UI@P- :?L;^#Nj 2Ғ*DQxAuФ@jKVl0:,dJV -=ڋw{P?9W@ vB"Q T0L3K0AV`~ayHYن~iy ѝ{|4HjAeuޗcej} OxpZ]%qc/mgtb;#Z,d|OٙE3,"V>D ս%c;;.#0(h|ç{v.Z!+ 1 Bl;C,|岡 {~uG4{,<QPn HPsww$ѿ$xj0kj ? Wcpi|jaZ B"ȿz~==wY+7p~m-Fzl+?a(kCfk}Ay& g#9t\Ft,,| s~b=v&65x_fa'FC9 &^HE#t:M0Ӻ]wT6\U2@eet=7 i+sEꇟe[\ixh0UɧF A&1 f/ȡ;=sON1'cM=:c pOʝH<4e&W4V ?qT%d٨t^zjRFGWa.2޼S#|VcS8Sm͚kB`o /wh`)n< vr{W<\dv f{y u|tīcL _A5Yh9E5td&n:s Kí}N|gVGNp *#})#xo=y=߂Qp|BGVeN_eC8yLb8!Q6A{é 9eq2Υ }e쯹]?=tKx~l%?IP96p`vbI6XdW卟_{h/;}کA+~?/_>;x-sc_K~Ix `[8>?(]G[+;U!KIߥ|a!G|Dkp sfL]&^Gyq>ѸM$Ñv*]8yi=o'>tӣ_DD!$-g+GU="y!Ms;p9ݮ^1XMK1< 5c5fG Uv| { ocR]5¯R諹Fm9AҜnWl[ 3yNk:!me.ڤZaB&-_ۨWreh-c֒3ce 2Wjٱ_&O& :4[Փ'Q^Ii~p'9 o {SL=/A̘/N 8h?܁C4Uxv`L&v&X2dN$>qNca[Cqi P:ĕ\1CIi!si"@K}b`4~|G4BUR[Vw@HK".j|L,LJs ,ޤFRRqgMnWsĜ./2̐芃8Ȗ8.qce"]//^ g&_bef+al1Sh06#FBAZF.f&HșZ$C-ARd#KpB^q!-̿]W^W"`W zk,=gRAnyRe?(ﲿ_Wlx' Jqe؈_;Ⱥc]*5ЦmA}g)mÀYPYǙOOuO/3fO14o+J?g.enzrm^3E#",e-&^Q`3q̬86q0c `rЭSҖ`|C*CǥZqP*w QiZzmCc =m7LJrFEDE!0_M}Ҝ9$9icx 3-:UvGhё"^ҼxEJPA!4 d\z!L 0 m8kDT\e |sLJCg|3P),rg%Xf<틝:7;m#a>ݲ)."h.cL)E= | |.K=Q\^ފ1Ce<vj_$bh*aXlp\##FChf`R1Ɨg'9i?jL9%èF[ L9S۲FyuCI!4o|B&k,VM]3X!q00Qr(/bJ9d=TB!롒BYrz!sJC}cRw$C+,-@:c+Fa3!Ӟ\ϴʹ$gZZLK!pZm<ʉ@}vx+?Xط7}}Je#@ZwO~z5t:DoعaXMQU`:P_%'ùo?yQhT䍊<-IĈ"%pfN$$9#q:B <z_T1QD'0IwdL7c 2nCąxrӹ` +/_|ZnA]3e&O#H¿!B4XV)؉V pn2hxnaWhF*V^H\0PU H+NEZ8nexԁ1,C0ݟ~ Ԧ8>^_P\Zy1TQL}\k}~3'|S fj"xSpWc08zxغhްݟvI'ؕw|pW2,?qj15 oL'[/b6Sk#:  bjmI8(h7U ]cBuE թ tFH7EX)h$)OA_9QQyRmUnVGգV6gU?RolOYÛ..{=vCEG~LF׽I߹`aqay|}o 3q n?a$9MFIO{7[pq1r?hQ/w.+}bi >~m[Zm+N&-:=ob7ux]f|}>BBS +)R{Y5.^9'99@}T^E`TWKdž&CN;ceްkYOon `1'79I>_{-+ݮ|KSs|4oX}nksDIkK75Qpo.qOa#=%b|%BA[M~1K!XȬoF-~Mn=&%;{4'Gmb.>2&7fζ>[MQ+2_>ǦL:&|9@vH %E=EQ](湒_4V@2pi`O;m>TC1Pӡ5x 汫1WAP_ha!aa]ݛaEqiœ=E'˿<ʤLm)UI=MwI")'UrRFl'Vxc>ƈ5A!F~6#&,L4j1B=E4ZZBi 3! T{9N'5BSEĪ$͠ Zm`ax=j5V*w:h}Jw{혰zi$qj 9~=u K!ӿ^e(rMBHh%gW[ &@A ><5I[ڳӿ !1)0.ߓv=4qu ޘ `S;qz}{Sv0KOWzkn{F.oR-)l%@ʆp?;eVxV߾/=8L&"nM( 佂 _9VOH+X-8 j=>` [ $_kmAk>нmNxΌvhM=:6=~1qv>׀z! LJV*c1(~`P}Eʀ״V}Oҫl B) .bV-7^zϖqWXdGH_xG%sG~I> h0 iWlH̻¹O_qud @Cv-L ۢfA]`%iqgbi0'ǽ!UڈX/: տu'toB Ʈ8 ]a!Bzc?=+&EB!kovNPt`7ƨ:6NJd1ê1"sXf<_6Y0 N?$.ctK, h9QH 1Sp7w Y) SdlZ$dr$dneVZ'f8_t<J+{S:P)l_!R3#&CKsx ކ 7_#S0{0IV4) ]apв!Rb4sBħ`J9V-^Bm\ݧ3r&cȰo>lH ӻlfJt_=& ~G,P~'˔Ma=9 L6P-&d eTeC#qlObV̈́@DQ+]S125A{찷_>Ș v.gxyɜJ5xiBΔ kZoX($uQ(@az%GJ%,'aBVh,pe9di 8ރ B&D`0[aM!(BԪ_Uz\ EqZVmFǵzz7/UҭӺ{Qי`CUI%s\ŽHPngvs1- I_Gc=~_Eg;U`zN~Rӱ"Qj9 IRtb?QOV!NGֹ+ܱ@<E9BM޽c jr]~\E 4d(gO UL-礐A:joX 7(`ɃZ Dp"2X ޔ b6.߬W)E/ ..-Vɴ. Q88W:/1R$\qxzv,ٳKc;c&*وwR@_1)Y0(j @;"AxKCyypZJh;Vzq -0g̤*]dB*ZL3?<'d  4d2A$v|v@@muR\|u#ʎz*Gkt mjZ>eL-RJ06ɭ,ANEK,N"`ȇMw#CkVǃR o/a,{ muv&A8Pg>XHW?kV_1]{:ЄӁ>{xثg{d@ըp9y"f;r 8- Sz+U@8o+snB)A#OԝrustاlgMAWRv48 lOd9y|2e٨¯.sؔE4x2 )ZhU;R 11G{tXe^:F)G MRJÁPMlJJL2%/ m_;] N#F&3Rg`KRͿf븜<a-L8ÀZ*n|l> /oiE}܉DD3qB¨[Apo%[B`U*, -& ? Y)2) f[[cwdVSǂ/ʹo":9$u"i`L##]j/.~ko6~…wC6P 튦Ar*3n<G='+ z=#ū Gj2۸)~Hp)7ːpkzg"cjm+R:ke]D"Ƌ(u/zZ >. k^8›v9u\+kno~ئau.|QesAu!mD :m.Ra[8`m%Zz`Fh|vh}2tj e+!M[K^,QrǢV-m,G9?VCّRӗyM[MhGnPa0\'Uش9g*.9e<kطeݶl Mκv=t,]LwdW>ȑFw2\Z Xyy䶂GDe-VBFn 9E F0Rʮ22>I+pl_aT*0l:JCx2lt}x゙KQnNQaS: 2 'Ϻ?>}"\3.Xt9\;QYeAv4]HKE}Z0FzHd.'ն/[g-w7׽"ZA=`izkdfHbH=#]>|lPu{_{T{$xdxNdQF)IdsF[cgrkljKWTZpj:XeݔL:,4VIQDI\ lUߓW>F| 2KA*GZc6?Q6&FoT:F`]`X!N k=Ð h,kZ%}ɤ(Z!hΣ)Gs-1EGtGF ':s[2@XbfߕNn?O*wDQKqLѩd5$O=ϸ9Ì' |{ui5,:s /w-_X4q `pz,1 ϗkrݾ6n(/"Cm,o]tmS| PL^u[`Q\-x#zS׀W{G0 ߮oܔXۦf n~(%u8;$FJ=Dǒʣ!S6H:܂i?$ͯ;n=7"uJ ֭uǻv+Ƥ]GjZi)kx{{8/?6lVrˎD'yYNc>~gReq"դKw|S$HW]$Oc@PBpΫWdovtt"tH׼h^mM7Yv@i6铭ߍg4(YNW7W7n몽OH0-[s4^sD5D>LDzLMf`6W 2fϞm On{X ހfc!5=V:ӆdh ͜(Kj>5G@2kwsRs F:`f9&(>mEygck>D{ƄlMLa+`f<@z_qy̡6"۳vWi|]7WOF75˝W䳆Hd ޑeMY5ҹ$u{0AC;yЈ3N-{:FP#(Q2g^` ~sdH_!dBW?~i^\`+oB V%ϡ"{~zQ-Va*Q=WkE Uɑ:QGJDɼxoXueIkKYXP(K`[87k` ˞TeIm@77CpfZ }JkV4 uf!kת*ڈ:jya'''LHX.LNhް?4ӥޭwo;U׹6ϸ:nsVwj4{_7q`Ԛ 2˥v<8, "uSqPomjË]Oݶյj0{?t L@Bm;;nզ?[>Ĝtf\vBOB4[>D09gDHi-#2s*EWpU[*x}FLՁm1 ތփćP?OGΈ6utB6#c{9@O7ԉH_d`E#o S|i*qorӂJmѠ`-a4楨ZJvBrK{527` g ,w\k|KK*'S* L%'}/UGL\%qe_ xQ|)Nf00dH1761bvjSx.pV[05.nϚO^vt|xvpQU>֎/cq64AzԘ;~ixV=Mu9Sx3m2iec 4.ةkg1&Awk$'\=d('=M5Fp*&[r @76hw۷m0 9mK.*G&{՘kHJuS Tfb(~, yH5RLCDhi?˅2 }(cFQB.Н]HI.C*sOUP1 M={:pWԹdۼ= m%2ҭONz UFO!1‰J ʖ!MyQO,üdblB 14T7P(q v^e5V![dfNNsPoC@Mz!vaW%4Du"#P\{jP-O9(4-ks:C[_4Ao*q늩7Rߺ/kđS%Y{טl煵Je'}#Ja{r XaEԿ0D7Q̋j"QKߪb8Ц-. o'5W*gnI7uRmKiyHITS`)#YG !>{J|fQ˫, mbZ8tHhe _,[YKRT"gT(RRTtZgiB4|Ĭn{W!D+1yKɟ\-(^wʧIH Rmjv)eR_6FE!dJ@lL1k Cu7HTaVLxZA*=P9> \ >34,hTL48Ե-K؊׫ }'K«(f=wf@?jd o'E.4_#c4ݟ‘% nk_g4+fzߙ(P?"23lW| F߫NɫYf#n'Ƒ1jWy}AHi2.+0 ʆ@B*?*jwvq{Vo4z7F́1Bg)u| q!3;i`LD"Q;%̥]?@%%":Xu,!+Γ_ k''{JUy'-{ CÎ;WVIWmwͷ9;aN eJ^\cCr:nv^2Pq}LΖpb>6iTR[C}p9"]/[xY7qM٭h\[gvU0)f8{}x8wЇxu?qRޙ'fZu)͗2Axi[>P @׭o[3<ԎN`H6,CxGG2{Ղ?d`C#X=sKl}6L:|Nd=/N>Ãۼ쐫Y wM|ҽA;'O7%Kf 7f^W]^s?.Z_9>R9k^4o/90]\_uV:@ -Bkut~qnAH: \5(Yک\r궱~~ bEZwt>c?>bDZJP8uֺi6hqi[0O()B~\vw9$W*NŻu uPz|nBgn:נ`R UhqĪoZl!(In2 (GмI\ց.PI1:?ʦiߺuItb`M&=(!yfcB;g>&}ת5Rjt }o%t'y(D¸oN!BCCe̙Ʈ$x80jʾRSHӼ2ܑCU(ZXt5q稊i 6XQ0}yFH"HI9?`ѻ5^߶`H& ,urWG>3A/p%.#080Z@9TiVɊ;fpB5B r|8BR rCCD:(3*a5zO v_;/ӳ(w'vZsY5F:ʢc8^u9[DXeU*d_F/ ~;*{nQKHT\YRY5cAkJMkc$!"B&^)u?_63aO4+{7*!0Dm}%̿:k\]^ʿOu W+ϬxL#l p\u'/a[r~nxR' TW`w~];}W /7Kʹ!ztKeӣWdCt㲒z=ٳfsӤIe $ QRZ[EQI)zc_^Nm;lS{Cd+[(@Bt&ʾ8h BC%K:exehy..JbZ+&{|9iXQ8P!i[x^`!EñDRϬj%51BEy2i&6m gP^(folJֱ'1rHtu{750)Bc_uh_~7 W1ؽ1L V-)Z_rn wT^0l6ћ{Jz3h?nrJMoՎ AT <0u,m$'L96ZEd;o5~㉔=;̻sȤ9s7L { 5qVnh$Z' WQDYL@AN=5j{>i9l,׆vV=֬0g`Gn{8~ #*d OٚO,P  :ED}:eh`R(%*E]!q;U6׎ =?4*WYCw#JZέoI5(nDۼZ%Ֆm&8E]=y5 kQ=`"* WTqeϜ _Z9rH/ոa%W8)k-N.-Z™ I9~E>o)傻 [7S@Y^GeĴOI99\G8-…8& I_75as-drs|1 ,L-[X-B#_G~~..|N@vv͉j^pb B_B;`G_ܰG.=(!B0I (3'ʥtPC50.dԗXzۅ R1@ow 7F6}kwx[RNB6#nI[m3P9ǝ|UCPsdEx]wq\F[/Ex p1Gêea&faD~ℶE2bi:0 'Eu캁l@D!"(*&$pk'iP~?jh̎GjOqlJs=An3U,[] Ζ"iljk%bys%n@ԔGEΞŔOʔ g2|$iK)e5i20R).eȒ|;9\̾`|irT܊QD8 )RvV-0W4:)+L;I5&OdQc㤙D@`w̪!7Cרwa̪6C%oA4@{Ov!ux,@ve0H)glCahe1O A؄L w&}TUOEϥ^.ܥ[ıVM%~ IHб97L5a%o ˛.J@fm(6QG@)@fBy>G\> 6dc4M\Γ߄ŧz Ug$.[B85JW̜aM(jk[u,D.3uVhrJn+X틡O d+-%˵ A="2[7,MֶB] 2 \7L ״r] 2A\bbu٧Lr>6f\jgqZ1My-NV j+#PIrgI>(ulq gK򲱒cm%FБoʼ\Ld3 [Ȭy#`3u^.2̝ fkq0[59r5 * հ8-CzU怜fjƉzgyDB/Oxsw*|[t9%kƀ~ 4@𻲃ڌ^k@'aDux{jRe-M;[}p.w.wE_"QEzi]Fs-Dzbo" di#"7C#˞ 26'xi:jpt tP+ Tm0㯦;)p9u`vk>-)H +1Y:sXɹFsdǁpH^D+ܾ:;2/Aۋ ԝuEyF?"F:b(R¾&Ktd7o-9[HРHH?$~ G'n”G|KR,QvO,m81v:4򱣙9*v3V |I}RD8@p Ũ:SQrYM԰Nj>Kȶ&̗suʜv hBXN= 7JY0;`EXF4 ~ѭң }NB(^`7Pvۑ8,v #= BO 8j1?GH/( }CXq n\%GpcɕXSI675oۡ('EoGN$Ty n\leˆ k\]^oZKk KH7Yt9=1B֯ʽ4:{S6TacO-G5Aw67L}M"*WٲI?n+x.ec7 Scw-~&EA%嘼W <Z|WY.DcN%CmNadEZoh*b)CFX:9ϺK}Sh'\Z~[ ! |8K2ahi;XoO‚G!2(9ʷYPp5iR~ũzÚ0U>_ΥQhȥp)5I-IQTOIYU{Ua-[j>iMfҌOLG}2śTg-KU茩 LUP3}CN+7es+t:Fnfm]c#= lԿ*:Ii4zNNRu[W9Gcc*MmǨEY! @P7 'usQ*1#tE4"1֚j"E\x߁ӔO名+?e5gn-b xALS* +.a.?%N8n(iWjzf&p8M_&_#rT@-ӎF^b@s_ρ= 4OZgfmzsWgCm`8SmPj8+3T W}o`8y .[Zg(?0T˩L3  2&`ur@z j=9Vݺj.NSX&":ݛVSW|Tf#}P<4QT&=#, X䷵WSt0̧![&yŎ|?FF,>۽j̡fT>3řͧYIrHC QD^12FTx70ӧNUQCtm4Rq B㘋ڕNvNݍ 5 [?=@tʴ3ܽN@>P!wֹqg $8cЪ{ws+h||42iw;ޔ aupry|vצiD"Gu#潱&Ҥ-1yxp:xa䕙A),fw4I0̧ӈw)D͐WեU4oճU'?nP0gSŋ)j2}9B]h8 m0g #F~Tx`zw6t-V{\}ag6&Y,5ZXY] q`_$$dRU̡m{dб3()2d0dDTB9wr L%$s6Gۖ:쇟gg-9~cc eTỸp7gn\$U#O#O?3'i[&GGv9>{9ͫnQ~^}llCIJy':*faWOEԘ;^yG|'gw1ܿ3j웃`ͬ=tk:C;h~"(,#ڎ!; T{w\];T;6n_=䏖޿݆U8X7`WDuJTW1ŕ)ٴ+qs} vqUJ4V1_7`Wf[rKKucz.M]98̛ {t< G^/mW[5يN;vu{=~mCft]{ɭܼWoi-Nl Ǥ-Dqaë8opR |k['qE~.:4Táp+XSwfK.KR,ڒ{WvX,LkV?)d~DR )@2|LƊjAil|da\ͨLնcnS-)/Cu`2(˔HkQi61[n'LնCnМ=W8:l& 9 x$Dc&u~6o Sg5Snp> FݷaIPgw~ ]ʘms-oRgڻuvݽD{D'EŽ{^B|0}V~!nsjA>TcS@ݚwg7{Q׺Iwg5نW3Xmp/Yρ o 0pq`9]y~ÙgB0,G޻~d36,2v=01g?ݼ\l^43 Q7mB].w#vQY]d 㐿 { 34ܬEG}“Z`+Li4m!l \׿Ծc𽮾595 <Mz|XMF$eWr e# UW+%Zj`x[+tA<92X|Ppmk iGiB|oq.mdd++2nSDnz4e3O UOd 'NOI'(d4l#mRwrrX<8~"r$eԸÇ7=T\sT*@Ke-sQ,2=gUyLlϪ{_XPap9K>m'n6li\ZMK󚍴on}4l0[7j;E/k>q|6p1M>d7?j7YggEǝgk=$l>$Ɲ PCZbG-ƀ6r}'ŏKd[Zsͼ=;אێh0vM=S; Jf))A)'~o)gbWP:➍im8~0 vĘb d%W`6Q3LJ~ḶbUJJ 3V4cC\[C*؝m§,2CIG3G\"|zxN<k+!b "?^hLԵ:IS瞻>uk+a,~3/ gm%P kdC){6P1!I6&me1fsSmMhˀc8 m3|fJ;ll`ڴI?mߙmlf2IUmY|4h~ykP@\TQ!d Tޖ516Q KzZ)_I9@r] _qU1Q q`ߧD8C7@#w㐆J>(TҼcDu}CN+7ֈh:K+vjZ>HzkC>/'˾6 Jo6v7lǭ+^2Q蚉CС {W6l56%2^,q i6%ɂh'E ׳En. +LpPi?i&" eN|x**G¶Fn 2ܑh  tBLAk5TTH%vi-^eR@vU\CH}3</d[LŸ6]DZ{Fu$&[ؖ5u= )s/ZBCk{6v~۪?S±.*wv3*3n^wvx6Iz} 6`ַJ{tg uMUa`6M.*llJDbOvr BfYȞ2سԜoJ A`J 9 L~tAG s+-XQ.kZؘrRvS"l)bJ! n4*-AN|tϚ_ZfԘ;5ޥOdXN4BhP#؂RZf(%Ayֱ[-5 HRU:k evEH0-Q;i&^ i6knO`@ ր^ llg߃ yQs@ř g (ÀgxF[ᬡ6lr ۂ~o |4DR.nHP/"뛫V[ѸjΚn~!0F Y E!*Tr8 hhU^AE5Ӕ)'X.EMAI/FHğbS/eRw+1AAT0*r?V43SQM|ڡAlLHe8h ˙SM1e`CN Y0Pfg7/QMlkC$&:zD_Iys!W74!һ{ hw OnKCmf 7f^ՑڝVuJ!$YySx΁!9'_;a`ô+~sSo֐[3ݜVqQoAn$#7g\P_di\2yPHZlO_y+TVqIRyN xۋ'iށ_2ǎ*A=^7Y٠?SEn8_?< s۹fo@ܝۋ.\\un; ֱ2A Acy[dtl熪Wt zu8bU@7W$Pi7M#pByhހ$.@$ØY՟,m&[_ Lt 0N4{8 k 0#Ic|f(j]Cߛ2 .tg Hi_P*ٍ u1gK= 1#R43w$D^cM:װ6H`=D9sߞ4+ջfjchDBjUyԪΗF.`^}250g nC&V*峀gAKW>|?@ի(~jD?@gM1Ӏ gO, = ?6OՁ+U1..\u fSWq?ٷWznblgX{-Q[󒲬K%C-c@f?S(uE8wL|lLu "&aM'mi~ˇ9 \HqOiχF l.ǁ'ߴ^ԺhКbCwj!@/yEIrOU<6~e(р&'wɥWoCʂ^5Y NZEpDh?BTڮw7&?o{jí`l+x( >QO 9¿vRIJJAEsxbe&nuOLL%1c̞b; 8 PFWFܛsK xga]:II HJ#VMU,~Z\N-~ V0ajX(xGfNRתjMqZbS5{M-U'= \47?9|5XCׯCP_J \BiåOLZ Ij4ld. 3烙|0PsNc3);] Um$jL޺K˟/N/Ǹp.ڝ0n^wtWw%˩h|aP M_v$ tGG)ݚ$;VriOOPk`.QfA=3cƝr;{-1F۲_,Iު0ZRHhIIw헤T]uku]iO3VHI'~-Pə~Nz6J`Y|ng&S[g |W<7ɪ4BJTWo2dDڪӑ&_IM+C{rHKlP`@T{0< XN}ѡB0ZGZG)3\M5"::Hu(0C:ԪՒ0_G28ky(H_/sUQz (l1Bӽi]7Ͷչw{=>otyykP8ZiLz/ ɑBWE(].be(Xzџk5oĭN1Z Lyy+QBhhyK`^?#:]^驞 zC-$d}v#!`IRfTdfݱO0nu-gپf@9m$Iz쪊'VXsgkjnU9Y1}g\;$'FS( iEFnC];Rt,_Z(WW_\W5DLZ=ZרwCCApZ Q(ǘ5󰇉 0*PRR!S$Y%KUi͐cm,Ab!IM%$$9EF]X1yPtܐ!5ًƉuo#bxc9ΊhݓuO=%5T[Vj S-^]R3KKjQ&tI'Z.%5TO%z*/)SA|IᛊKTh^RPcRfX3ceG^9!Lfjά|nЃd\h0u4r+ex_C[A:ظ0Beل[u,q+Dg'BY[!B""^8V8:"X1IV+DXG z)PJ.k cۈ忓Xs&n_I+{[ ~ïiM]]:]ڊ׎_n]Bd34g ،49 I$'s]r>H!#i: GVNwL"/̛^C8qN#FogI88ap) /4 K>Li4,i.0#SRQ7xJMRqʨ8EG0!&IsE{$HdN/ӸBIu,i\&ӏq3n~#QjB>nLNz@Qѥq',R6 x}vIF 5=gn;3Ug1ާaփ6[a8Y}ޅ@ XHH5T/!q*`xi*QfGIf$Af8;~ye%YYeyGY;~ˣ\fsY;9+ì$3qVϟIF'eyR w2LEt!G9& 5H6:&:Y%$s =A6ɉB# LCds6ѡBS mc ae5H8laIN6D6OHt!'9&9 ٓ :hPn <-$-W|^]] S"FWX<,gM5700fgQϢJxY<̯}X@ч,`VX<\x_G (Kh)bhr_ (xX?F/0FOx'Y<ɏœxE>Tޓ@.핑PKoW&J1k~YT6O}<*^6== P0C532`\.\;-\;:\9T3/sYBP(s`R8'sBPͼe Ce \:[\:T3/sy%/\"_Lth sقzH^rΡy; C52%\-e.S\V\09T3Ĝ,WkԻ5'|TS(\I%͒2,%y۽-L&G39Nc%Ly)۴`$IOXg'T諃R8D~T+8I%׼4%w%2]H':r]DuѬb)߁5,˗&{kVBJG蚋 M.M/a&k`9<.ҤPUY|XET;\"/f)AVCbR`HY CJ )aH)!e1 )E0t":X CE0tJn4Ў܁d50'1Dz~*OwOz2_vWm]B8ǽGU{8STTvoXizD;_e::4"f#Mz@dtQ,MW<\:[xQ{%C~.? E۠$KITbmaB{)2{@ {z3ƙ ߾X>!e$yW{&O>Uc>3nHp=RwѬwZw~];ۼt8n賧SO1NGD6LH Oҧӭӹi+fMzw9P1Pd+~ ^CcFFh#rR2QցmZ] VITstSȗlM7g=$t`3Pq&yt ǰHfr 嫕xσoEmެSi[3 !@Ff o|;Жi1lW;r@3ބ)=膁'`ѹbaq B_g{b*RL3h>-yPc^; t< -ИٳՇw;)t^ӑ<}+<@Tl2Z: b_KF>o b a |Pm:.bԏ^]X\Y(>!(8^9q\0o: ̀L8۲A/~`a|6 ~E P`NQ)Bg4N [h8DLh=D?`1} z&GxR'֡;n_5z&Vj!|7BRX;Si÷2#vgeFJe wB,fjj;;4Z+j}?RgPqQd"䥋1Dz vQK~oc6xV^v0XAJu@ĺM𞹥`پb`͑|r+8 5Ǒ)+Ri%L6#)xrY^l)޸R(Tl#/0*O`}X X/_xWcaG&,~70cӷڣS5=#LnᰀKWQ %Еj'eݸX4V3kBCꁋP/n蛯z`aB{xw>`Ei4DEOb H0{nhNf`cNVQӇ 3mdYIh Q/J'!hJ(#mX2%?;dTj>rT!B&x+]yl  n/42>Q:?g˅lL?؎̗Г政O؎zjER Ϣc;bu#KZ@]/ڗ0.hYb6j-poUګ|ؙDv,>ԣ(!/IL޾NkK}2j9S?"&/8%DL4/[,7Ge`T{0Yn[Vy zՄu޽s\Ŕg_ukaE]{ҼK|$XxY@WHKc\!'ᰄ9#{S{rbMnj275*wSC^l*C[C)cLMPMqco^{{ h{ (h{Zw4ˀ'C5JMwuaFQ9X4ht]ۯw2մǙXd>t~:{yhބ3++^f^1Z[xˆ@s{j9>Vm-`j+́AOsa߻e*sl8$򽅳Oe alQ|Zr{BA{'$l=gaчoBl'$E~܋$-AB5a]bY=2A܈LǠ`D.YhmCw7bKְCNr@C!SinnV2 5t_vwZo4># K>~6wHǍܱ+.?wߞ^R>bpW Jp1y/{6a--txeTYd4dK5lH}\"},\>YH#JDL)@sqIzm9$$;wPz!axmmr"]UˬO oF™k n2+ 6|N× JL0DVEQrB3[sμ_MF^hNɝQ^H'-!͈mi3mi3mӦhFC|>x &H|Z9gDhEEQ)<(ԃ!1OHD_$ˣHug氍 JK8u t?4 SpCLyzOeF[2bn\[x}zJjeZ //WW?ѫ=}9bIbi,3llc) 98G(?_>zyvGG#_^k6(y[5IcTnݏOH~O74PrTLiBo]R95j9a4/DKS?: h}i"l@W+ 6'>}OK{ʛXaӗSۂNfF` 6itJLSLS'%r`2O~vdV_|JR=\.~Y@KUW~FU TǷe zAOAl5<7u|~U)]))cW[vG50}*"2nA Puz߿|uV7{'<i賲\M0f32P÷1Fz3'׊O/J ~7`W6߰򗨔 b%pq1LJ!!5:X0;vNa?ΜC ݹ0π(_:IJ-qLBw(>Ibc.7ot 8-t{ʉ!RC@^|W.5I|>fqԮn#1{ ugC&zxbC IwoL''n$\}b>df[bJ`/.6Q6vhѮ;}K|(m\@`>3@ۋ3c2CigOj;ޚJl/Q F3%Y 옛3#pJr@7U˹晧7-ue`/b 0߼0ѻbkdVQ~+W1CA6,@C 7:#<aLOc$bd)hYΌD ز"fY}7go~-y,%pL\|loe1cɳ=,15tSV'X>[JJn`4;*hS/$휒R80x~Nc$+\l=Εb'I8#i⽴ &&t3/{NEaf{| PT~Zy M* )%Yk2 a1Yyؾ?+Ii`WhQ`YF)|Ohtǥꏱ{eJxh8ơXP( GwgADdqS Pd-)X`t:jJƲM)ȧ0,^c20:qCcPX&5y]T-4֭@cz1GA &8><0M]el;3~M5Kk{+z^ ̞qg`kGzXfri6W7vKZqolP L<{`kBxZ?`Ⲗ_=[W.Į;܋Г:t^3LAe. Kٟxm&I| 5Y_<|MWVKsm¥mQ^;,+ebtB2'ⰏvpOFF7^?F)i UOF ՀQl#E վ܃xDz99Й =fyæp?(n6rOugC.f'Z#^P82NX:Va1^#EN^'k52Ru^e#҇B;28XVq`ytLVӜ~;?\]}ry5Wa1'p^R8L`q< fuvIڌ.gt8vM7r8]7`nɺu9y4Wc҅Dc% J%̨NZqw]%c%F4⌘Ϛ9(鳐f,IFqN8#.i43J|ҤmᏛ YŎ}(qT^9_Q7IVdED,2f/إIXmɾS`_ҡh $2,iI&wf/H"nX8Uu7Ѝ$('%_-]m>e2R?. xt'ǻ\`O~=DvxDԡ Ӻ.&^K (}xF%֨5y§|f}VKPVxxiF*ω]3ot/TOU*=R<.2_(j U]nj6)#NA G;ʴlP}$ #gѕ}A@C|?;O?[3xnh?ϒ\`WJGp%Soz63*OS͝\~e2gFR#VzAwSʙTE򎢞zgQOGP~V1zoԊO7Mb#7k忱׫lL߳⫃jtgة!yCS ~.~lhk>h^f5 b6EeFecBZɾdrN~<H/Xլotjk2Q& !.&_ጷN! !.׮+ɯGv}tNPC[aWv[8Y,/8MGc?YAa~c ѷz\/89X;߿c߹f!.*d׫h=Fa)  ֘8P[xT~.|(dد@N$ި(Ң+0ސ; KO81){;Ca᡻+DtcorWٹ5Y._ wwoO5GSw:##G${?x'撉=yh6\4 ,khO dj`{G {eյ¢88wj+E%fXG%u)++4^VNkACPh?2dBXM2!H 6WB$6sQ5$kJP)| H3ك͛Sen4Ou'%ń ru4[C;rfxe6O8YU6tq0mpNz~tE;ՋCv6ؓK^uxvy5wْVUALQO+NJ7)]sҽ6#b&'~v%My>ZKx!#]<Ų]elW<.h$y֪`nFkvh453t+`a4u[[H}a& lCf;1LwnG8VսPm#vD{f_D+?F)~ E[PZ)Shl/@+xeZ8S[, YgҜY$gq)m 5Z5p嬿%Vy{Sj <<.2"x{N?Ϗ.NO[X7wC-?S-8e1jc㒷|-g;]slWBOϬ?3Cwe|;̊0 П٭nV#4hf3ѩrN1V5яdpfdHYud=֕ղ+6hQO;DUIDw Nڬk'滾kSکe2u-]K]un=Y0k\(s/㼖n=zF.a3ΞT\rizg m38nz٩K J%%Vh T30ʡlX=7Mh7Х]fRp.M|3t)u(sERQVݥԱr5Yq0[urGʡNm՝'G*uv+iQ&WQ<k'Ea=tke JwYu3 x'iF2WMP :t箅؄7 pO(@{~(3>'S_;If :IܦSHuzgpU+v`iݘUts&˂Kf)&|&4|+m21FlwT'h$k I 78؅vql="7+#=SEFV4K tC8rp.}&%!ԉqr%7uFO`?N_^¯5>ߊ}2Ϡ˙_5m^HZVe-_B~Bx+%p4lLN<3,:Isz]1m.²Tel+YWW,^ccb"\Lvy,,UJJ?$CcgI3A'Fv~>xx{sx =/DnmwZu\Qz= TGܾ`gY ëG,(60_iac(aY;5wj:CC[ a;o1Ѻ[JRX 0/y 뭆)̃`]qۺsXW.h`^t((%2x10lYTcMbc63Q݌l lØ BԀT Bx`z<{(f,Zhб롥O\$ OuoтgϮ6>U gؠ^W߾~v} +#9Ҟdu<16-H}+۷@p@y}7o_|jW/=LȂguzC"r +lGwKB_lÅʻw<7^~{M rmez Ϟ=QϟA< +r!v7z=߾/ϋ=#{?>TA/Y@;$L;PK˷ދ(ʛ.zo^ hH/^EC{>1zXR[IbI.ʹx6t xZuֱ"0 ),utϧ7|Df͂zd)δsБqFXoCnwol43U_f-{=e);TY n2j~!LjU %inpLeI T|R!X\'949J X`fҋo4cde/> h _ʾ}hRXkUq5߁DqBS>5}HwBClLm26!#7:j,ܢ!2AY* "=j,\^<x|jyjyQnozodA(Df?ˎKQ!&WX| :WC)D S(5YK5i3J_LmFl86>cSad_jUA"Բi+rF_|b{kLA2v?Ch!.Tqӆ6VqcCRMAvO5VS*i~-k|Ïh* ؏ 5dHBDnPԐE Y$oʛyoܚ`@YA _Yɞ<ژԦeg+vҖ6,F]A9}͑ryߊ)gB[ij{yyD{|ȋ _xGq!EW2kc|@¯-٫)lϣ:83eݲBYҳM$X{x/{UZDETiȯ#JkL~^ h*?ӗP[xi)VsZXqK D/+u*&{Ԙ_X(+4?"d2PA~PCaeҞkT<-I$ !jr%TD~ߴa}=Mh'g :3:C,L;or;gؐ *qE=fspZlӕqWʴ w2]Z,Ƹ?(0UvJn.ocW;[d ؝-O:G'^Ú?<>{&`x~yӈ8Xo݀EPSyzIC7t2ri!iq.$E6~ +_lף$C& \8+:E1)& 1."*@A(,h,Hl@_{&@3[T,\S!=LP`2]g!׺pKG_ }5{ӋߎQJ v}t]"SòٶB.x?ELE>6\:3ݺ5l]14e׳d ']vb(:Lv+Pj>hX|\L ?(`ȼPA|h4wS偿En'9cQ {zp-* @ qۡjnk R&hBTD*@E*I Ѝ_ ArOPLIR:ZNIt'rjǐ}ֆCAG''O|OP,g״cЍЎ2g=oGZ-- *J4R xO;%T9O.˙a+ҵ:@HezP! :6 6mA+;}(# 7Mxj&F+r=ҐIrսbwP}}A`vkwh T9oC:;?=;?\e}}\9Bx k$Ƙ@CB@ 6YĠ 49Ěqߢ2)vm:rQݳ&Fs w6(=*A:2Z.fЊ6+v vYgS, rҬ{=?& )lfbcsiD0vZD,cB̰`⡡J h20Ą"`12ȿ]~|R'(?]((Gˏ|ry 8:ߡ` z:Pg xǶӫKVBSʇXchBήN/ KpBP~Ov1vLr??ް|"(.G0Wz&a ?0^pB}pAl"Co AƯ\}F$Ex(qGq8PO$(dz|p@O)w Ƈ)Dc=v_\_xO?)ǧqWce=0  lPI:z|,7T=%/OW#Z~~t")iZ96 @ apԇvdS#%سح+/6:45Ԡx9< zEx{=*jwN. p}//Bos.1ëc"ѨAwƔE?INsFhݵ@ DBA2).2nY^twag6CYJo1=M-gG(!} MtYhc+۱` Pr Yv sd> IhiBuQ0z9'‹l]=A26x$ 0A$C8`Vځ.FCuY:`{XfX.HǺScJiIt RlMB*2dT:9$8ton2w|PTL.eZ^LBΞ~/9ØM銖o̿p0LW_ j! I mOcohfUlS$ZHaz~)T#DRӤwU0r男Ai7u @1 G))oۿUb$C@KzO^ `<8f놌u S3J4 !fQzB4;ۆ 1 &9v#[
DyK ._6]&>M d9@ "t#"&2 x+))k9g>'o3'Ϩr2+)rE4F'[R(PsŕeE›NuvJz]q_h TU:VcF6%x!z8'1@l|+w|d,tKITo$2<( g/VU҂V˅? л23g~(<*(SNPvFy鯣R fqe?CUSZ ;g#Aeг|9Yfa xq.!Ԓ8d'HZD-R:(no@Pnl0 >2Ux2wl xa5|I9+!ER=CE}Ėf-$`)w!3[YkVCZrR-Rk#̹ q5@HX1B-ȅȪff0"Ub%=;Ѐ_6<P700RÂ<-#"ʰtoJԍUxdjC'VHP-i4=ED@ZKV% H|P7~Ml)lce-$DH3qRK&E궐Ě^Cs(x;ITfF9#)铺aiS/G JHʞ<@ c!CR$s'6\jC7G%NcĹ!nm*`P +YP.ۅK"֝Y,[jU ;})YdM)p݉vHXg䡭fMv W\M(GA(nb &_d=;OQ"̡l%y)ؑave-T^ |m*B/ea#h%!ej8Цt\ty[L2֝!o#*3kNUWG-QX|SH$"}3b fL3)]ex*wL9OIO&Sv4- Ԧђ' U!V2䡾mKDŁRLJD)PZK~z\N 3bo{m)tzMT#D[7kI.1!j ZYKf*` iGxU ZOթ1?C3&9*gpt5րLs7aFhs͚r@Q3bPd?g-oYqxurpytzrrc.0լkw#S赦 JK3A&sDz(X: SgMsza8nLE¨N4 1a=#dY{cr2 Ʈ K;sxS՞k)J-dڂ&eaD&N &$v}@NiaV67^hp&"<Қk>z;+v+c@>A&xa]j(x,(^&&zYZŃ]sa- ktK >hTeJ5B!,'b`=3F%h*؍."P 02!k͖B*H:{b4)8$*K}Er.TХPzԄ;Y\8OuRۜԗMf)(3KZ~3wi$d:nAV[nZGo[B#_X[ *_ ӶRfd8dXÃP_T ~>9vpVH)Sk9^ ׹]l / 2]-A&q<0W"x;q^Ab!.$DrJp['Vokn \suF)sQ#N6E|TJoB \h.$Lc4Is"n /JBLuitW i9(~H, 30t8wEEf)fZœ6{.q \E <lhC Éo܈W#L&SD{@ß.k1nt-/)ZچxO nvʙa"!a0iBM"C s,e Ta((!I$r+M[=-C"[Ji_I,'~R-tJ;%""{mx* +HU$:Wy脖0զ0ٲ{w\sPɔk+"җ'DC(:w~>.~A!}+P6@a $`p׃DG8ad9,C^ (,bK[-+IePɪ[WّSo}j[Z]_tɓ!Fcz/wo?aL "L[\뀫2 ѝ[M":bӷսB0p,$hNf )3݄PΖ}Y{UD7;1'g4,;Hdb!BRbGdžsOcWxhfAWJЅ_wBұtۘнaa?{?*MN)u\߱,^-^KYC{/'do]-1ۮun.+;w8l"tMY-ouEG}Mo-;unWn2&S'P2H!N4kY!s/#Qe턎68oxnN䦺/:%NHkZcfGFE.,KQGvV--A9wy 8&{d&n&qI2և@`#ϝNMS1Z~fϦоBI`4#}K"6]|f$:ҷt™@ 6pcBdTA|t&#@sLL2RrI}: gό)x`#3B3sq[Cb_4=jMV`?G\(9\$A-`+ḽ+߫ۙ-fKۜtH3CpFfնcQlI_97s}$ "Zbgpr͘}>Ɗx:4ZF<􈩘kG:mzLZQAۛ2VAo|AAЦ!SA:QF߬U7>]r0ec7=dG2h%4La#/$mvԒ X':)-3"ͳM㡙X?F<Ɉin㡙ȌL7m< }M=z&^YMY¯e?ś$1;A9ta-a{(179lcd b# 5l[SʹɡL\@ffyH ؘ38\ZNDNSҢ612&n z@+"Toթ2@[oIf;V"\#Y$>n ob+r;#ø[oi={x[̷ wMBXZ܆%Xz;(-9HK(#!AQ gR۟Ii&JS.a"LxЉB?ot sy_ v~{7xߊمCyD~-yFب]'nXt{ޘ+ު 4T7gÁuAToW8X7-̓{(<dNy\oU$daaTۖ qTx6vT gI¼)U K|& w<|;S( FϦl+<`? ˶b}S- y6<}[/k Gw(R5C]<-Rcm{,@拀pKScr体u%hdv%اxoԶ&^h Ʀ\~4<:n#r`P#{roQa7(9 %4*3QG6%,K| Ύ󓽋O{2lųݹx5u 6\N8^z!cͣ GÏ- s Cc 9^2 z&[F3tjsr/cнAз Bprfax# #[5 yoy րi7ĭx@&vR)5ݛ'Ѵ+D+!-%V 4);y3}X:k6B7_g\ \v2IoӹwG|(Qǹӝu-si }_@a ۵UΥқVJ5mS wpA~]b K E'--1Ъ1e+F*z>W^z/o3l{cޙwHC<AO6'r28x2>FCA0O '=}P]͇/w_6` W#s/P9 ֫rE\(sE!֑qtBoމh UOȈLg6I4HNQPe}JTpuPxBtȍe<`oQD|xi.sh{ D5P)5I tY<:؀ w80=Mô\qs[>CbUm*G7[jm 8\P}LJ<K$N6&T} huC3-gmG)VFǸʘ]m6%'ީ-s3^R7LwLKOkh%c )?V,a7eh 26&ioMlNF8:m%l$MJ6Έ"IU@M#K4wcr.QA6MfSU`ƺJg#auiX%Yߜ/{2b3Jnġ|؆'a0ЛOeĆl2iw6/4k6<)fӜ`AZLmm`Asc+3XhѬkep AYj*)pVӉ]4eQϰTR0p{szs.G%Cb*M)HxhB(WR,)GSE7B!R|F<"2YNhwqcm\cKETCŞ͐3H+x`f+PFr_I(_cߟ}Vרo AYi6]YP4ôf̚Y9>[=췩 z߳qWȓË=o:ν].ntˡCR`U|,GR R><i\RoE5qQ8svU@@D**"8Ur:'NlN,Z2P/ N8*;H~[tX4KwD~\qT4.ɸyF6wjDaAI"ۣ0]S9;Of]*z ,!Qbe&xmݾ4CYށQ߀};=D^rt)e2ِsQ%|iӍ0W/9 tLHAsscl8޷CoW ;`-pOG 8:H{Q6j~d/h0Hh-=:h~t.đG!6M]y Gc={k75wAb#=i $ u*B7>{#U Z-WO{~7Ƙ~}6X;m {G53UoDEQ\V)  Ʉ~=ɫoKs՚Z9/WZtx}H%MhdҊxJ$HAH/W ExH'_#B 婆_V4"KdjE <%Ty֢ m ЉW ?R~Yy7~>RcF-oGP!!?ޝ,iAwZ)S܄@.HO!1 :"Nga DK< RB iAսuo=UUN~;pԇWꨢMS!#u[nt)؝ryÿ'9*{ZcHy嘜mL{ zO?qJ82u{߸C+;0p, {L+ 4E΂$ 5[vp hpB*`PkQ:ggGӓãˣ1G((OJ @R Q\xԴ͚&L4`a4:겦Թu]h6&Fs ";pY{!#-iy`xb6ϫWo=L|ޛpL 0 S&.K0 {l.mȝsb 3Ú(`AH$T[AVm9xІ 8Z 8 ~Wr98t?"\#Nwh_z>|>^-վ:?:>C9=ćkap|:ӋR9™z x?c2OgGPy{F󇣋 |>ޱIȯP'98f"}csXf Cqrtrx'A( _9럃:Id7 ~Q.>8qHPg0X? R*.O_S~ )t{쾸:~RO/.(~ {`r9އ"I'_~冪)0 qDϏ.W?%MB+'&(!4 ΁. cuV^{6uDӌo;8׭1f@8rfޢ} (/(yWQ}uzp m{٦a;hP .\BaWG]q2ȩ `!_A7B)W꾪.g2ϓ>֡ĸL:9u "ɡ >?Xԓp\R_w_CLx_@ ؆1$2_Rdf⮎糠hB$tHc $q=ZN4:$5AtwH c4%dz3iwثnYiw?,Iڂ NH9QGl Ik̺,`M"r.Ő[|(J@> / ArO(.Lhyxu|BN>]v0<*?0>àv&?8iu)0D9< )N.|eb.ʼYa57rRMz"O\DϔvS7q^iO (P0iA.wrΐvY'b&f٤ l\]ٙ#!vmNo7`|xdT<;N^!()Tliwi`_-|rjt,^iS _pWD9-P@r6v oh d7`Vd@84*AHn7'K$Q2b QɕeiCИGrh6,%T9FV>4o@aj =4ǐJ}OiZ-m2о.=S3;k tmCxfn4 H D G3 ,5]6M`os \ 2ґx}QzM7*́0>-a;bRљ=*}S…FLsyZz^IbG1 l[@!.OW͂[Ȇcv~ra^V_ZOHv[ABc4IwN{\G=8H{DC40CƘScM1xFCm3/&78c)(/J {"ɃOG'P+Kk]/Ьkddsww u w3Tѧ?r2c9cʏޑ8{a]83%dmK@8%P&g+޲ITi>L_z>7Yk-">1lO~|RUTǹ#U_;0r1XE*7*L~acZmgqqX,^xZg(LF`ݕ4dGXkfu(љTx`9u"~6.R20"h vTS %Qz9:cxBKdCSҸse>2%N$GH#b g؄ *jYlUm-ݸⱼOf,d1T27 7-&Yiք,0v{Tnq9 Ƽ4&AK00Id%̱\\ɬsV NؘE THp­ FGQ.hޭ}s +ҸiVFWI`Yb0AoN); Z̬1|7;X,RM p$ZaRbh})csc_hVU B}I[~(JA8",9F|-=2S_.M][=tzPdztkdaB?Aq'Ja[J]hV)>z_iWi{^ic`O%%%iGCܐ66;=/O 0=lԅ|߯;~bT M9yl@Kksk<= MJ:"u_[ e_B`f {tڟb80{X5:X'gJK@1( u.tH(%vtSnBRzі umrOlS WrzxtKJv۠~xl48܍gto3_͂^QϔQ?yb[c I߾33*h&V^=R|yd[ ZQ=2Xb"YJ.qkul'j)IZϧ(!LI&J$awjȃ&d,FjrlJUS0< ;*I0kAEZ4>Qd p@d#$ AHe &sEYBI yH&Ti:LP~,@P ReVWdhZ DF@b1s5])Evbx?1ZJ6Ԍ/5cGü<熉-TF&fR(ڥ,գey}WcWyaZh;?ݸ"bMwPv[!WB3NhJpyt"d鯣 E³N Qug~Fvȿ <9toqK,OeR:!f`.s`fX{&Ԍ|RH0gBfb|œ *̻lܩ3IBބoRٴpbNP];xSVA+#ax(oLG'vm]J&-8dwego-EM!Oٱ)[ě[%yНwP1곿 !qg?!6%mcJFWդ&X8f :~+g$(l7L̠㞙K[ظETՊ+Fi,6uSW=:~Dוɉ[yѵeBru^J#t)II0ϝj/# na}sI  %;62][g NA"mn]U|H12[قJ'I|-<{d]s7/J-=A+'ډ+r):*cZ; #KGswj my`c]:. ;"5VB-H@zKݶ@HäV>h' 61#3ZZ#3 ")=E46QN,N x屋Aj/C^hxlr*, f Ne'ԗh/RhG׿ E#P ^YEABEq%)FX#&rON[GőjqĠX%Y2_#K&3:xZ#OV&N;LaAlYf-+4Wj_ .,_.V ~4'徱\ֻ8$؍dS"|GR&N J7q)YN%%IRE%좦]@LGe2x S~Z0٤JR#5<;p^̝6_ܝu8{e|if [ s*ͼf>oS& S*djLVkI)\Ʈ=bרزt0> fDn}i煱l1SjR7kUlX-ܺyZ#b^*-newsxҴޘ />p%PwV0μ*+}B/S$q<֎tsttsL*ftyw"KmOkgIsl]::u^R"YJi2u*8b#;zޔUk҉nڭ@SzPPJfxcYqUJ8+.:)Ή ΓI+j ĭ'5mEBf9s,w1 v׵b*cP^d]e\ae#2ʩ0 X7$@'`%?,5$&-2ʒ*J$ ̃A&)Q2SfJ~憹U afn q=GU%"ҖnAf@2T6VH5;hlCCAȔL3otUYzgQ7 UF6gKO7MKrNCb;#q?N+(5򥿂xIis皦x!%F¯GMɃvN 7O"JDoƈxD3#>hɤsxm;)xUIcfb|Ans|=е6].?<|aӪ`c ey3̈́[Q!H9%VJ !ˈ"SĄwl ic-F&h$SNܔX,r40 ) /_`m /G!bO%jFD78t??8=IԸmDW6얲M>ܸS?vd=[an^]!D-e.on~~tqO@(Z[LHu$>$VH$J,JJfcxV `Ye uO~ei C5&uo`Jp.?Ymꟳz,̄bf'VBspĩ#NvJuvBnjЛZIshN9H<\q劓+rMIcpfdZYuEy]wVVq[Jd(qj5Dо2yVJ AbZF<1暈F<1k"FQ8㬉3`6ę5#KdSXD<kԚȑGaZ9H;U4պ'&v8qlh?kXt\JmҁB'oY%C|%Vh TK&ʌtpk!8ޮV ՖŨD $w3'Lb7#Ҙ'LR7#X'LB7#4DjVN½!99( ˬxӏɐǘOg[FF]I)Ke;ZʸK $XX?Ec[V'$%'jd KV9v@"'uH{=gd4S8RGpT;1{j jo܊i{䝸I\TdeAP|T2x:T"]a x[ʒQ[dAaR3L@=31"gwv.-RJ{i _'2#U֑ =v{yy)e+J'inGIߍ"ڌe](iK%h {E禥uJ6 *.^Eo|M{qg0I R^ՏlM6$gorNd%e#gmHrF6JJ`5F`=%5(*b7'mn~(6|sV%/c%i|WJs-*=\$2Y, i/ Y$YS,P)l*BDeVV;BdA ]%Ҩa-~,Β'-6$/5TɛeƷܪRwvz)K MSD.YP[F9AA&u_e[͚c %̬ `q2$\:pS(Q ր?VZ _S8JSױאe Gvje-H&[&*Dj% 쾔T]m&}16tpbtpCeO/?7M_ï$tQ̯9qznJ\hñ́Y2D2"އIN.5P mJ!$X [ M"yLZ7_m_B4z))cgW$0`:4-S2S%=AMR,aI^:kgEw6^ T^Vaƒ]ؒ"РCϘn jX^;kLpю{ΐkIw`E=Y-BE=ǨK; L÷޽$jaU'8F2&rQ:'GVQ%Y/3~JV zǙAfc2X|HXh ]^>LS_e-@ۇ+xL;#uP.A/-1|-`abS8:czN?+ iAbl x^"[Li]䢴x JlZ<'P=';.7(BS.wkZ(Y"vbٞvqj NEnD3yUodR4P#L=K3/[H/:awNb9BW@O>'> zk2yqNp\['tW9w9u:<3yHWR]F}4圜t$c7c:gJ ɒIe5G}Q*P*C R%Up{*nl),U"~SP%ŻeoQ/J4\Uٌ&/*bO au`޾/?1ق\<<_遨Σ3ؤ3ROd/25NO'P#DҴtVaBْ d\ּN{nҽ}oOl'B[Hg;e&Z] F#g;ʥ Gr򳢽cdˏI90R"ls1:AQ b@E6ccl&NBJp\/_@1X9dy|kBgń(zM@϶3y@$(Lgލ2͑SX"@j7yL林nUW/,BID,`M D5\h'[ cQ'[ P|ĔRm^7ywMc@7={Kޞk9Бt2ZS my> r'T Ԩi9K,gϔot6 e9%ٚcei hUiuy[yF5&WK(- h;)k1פJ=ֹEm%/4(J{eXQPCbe¸kꁸZ^|i@ .seY΍q2QVY:+VF:c[d Wcw+y[yD~tholx|py(>8_+s$NQvݝto,|-ϞCM|"/R= tۖJR0uQ]<n:_8?E*G-6$Yl)>K~74aDا熚=t13 *fœKsşFZl۝fdk 4Go0Z:6ɧy!7e'::5Sٺ&]XC#ԖEG'u9@OIk]3l2&LaP~Xt~fnǍ8"W9] r\P{܊@KZuρ魋6;=k.Z4oװ70E,:Gk#;GD5NMZπg$PB(K`f%@f-DELDEHj}DZO"QG:`n@3:ڙ•/,OeV-Wv*pvF U^8AC)旤>cԄ+X+i{-M4/eda8qjZBiFFЊb#e:#"i;A"QF<XXU#x[@ӫ+E.%sR{nG0@̓4@2Rj`mδ"htХ@nSfl8 '*IFAЄCbf(g}s.-Jjaq&Cw.iF2-`tO G*PQYBsn /hhaB0"ǚo+zp5/lA3%,NPpLHրDPdVih|Z0Au"ScJ\q\b; 2SݫVv?:50 q^}=Q [s&"hAhvSjT-">+1we73cq_<^cy4=MAs4=MAs4}Фwvi0Iʹ9:qZ? )zZKPy\?1AtB3!?_~_tΚpqe{q<;v# %gtwٟIU*-c/y䨨Ky0"NUE",GE o냆ѓ^Δj-I&bf#kQ2=JNk]2&ͳ9Ruut!@+˩h貽ØS.h;%N5=r &HYԸQQ ͯFx4Dhc,N"ް³QqPu]g41c-!5NMDnUuj|D gycY(u6,~>] Kgfq-u~+'-vg&G“42[ġ3rS /BX6c\RuoM;jNӵü% *m4ǩ^]8gtʀm2 'lS1irmӥ' m0 'ny05YI\D/馨2S"$-t-?j# 76Q+&"jȘZz}q^Gfע@Mcn\/st+VyS)7!N@S0}$--[\G1K̵d||g3&}]+|(>ƗS*\YXاj#gQab$倅 wS(?r1d7{`8Wҩ)۹MuxVr@MJZFl91:*\mTMs''4j "]-LEJ˽r_5rG ? )h;fK( xKЮZln>1TcǘS2n&#ĢN`/IK.a7و9ʇ-z7F0 "6Bgeͮ?\_E]Mq>s)&Se 3*k;;iZx _/:Ts @CKS;xcQ~Kݏ?Dػ#󜫑&di`~=g6g8k b_|FS=Bߝ7~MO#v{?:rB;i0wKg%Y!~F ΐ]sޖYb/!J9-RU(]%Tz>U#0HP4z}u=Yi-PT,kQI⽫1X97Mv\xD+Dŕ\mD?:`ϖA? \ꐛ4#rKafd)db0^t߿~hV+ 31H[7a2v K7dkDPΦTMۋ[%r|JYq1R0BU EňA`{,ac,qqe%zL&<xuMZD\6;>;TbӓxG5=>є# a=8W\c* P:mg?*?,3+/b649DE.>ꊆ5qEoC[|Hu@FȜxuh$ yvF w50^Ȁjcp%=t$:"\%uF!,jFOҁ AE"Z$ Uˡ8Ld AΈOFDYI =0C{#R9}$5 ;oZr.x#~ɗ5&a"!, .B;x7ij풝h<fPT}<;`R'"FA !tnc,AXF4v%)-KC'-˜'cMB}7:|tC _[D$F[[©zZX0ԕT@\QV6U«a5%B2;['mXhԩ}l9n'R*)viHpmf=H@ĐmM`Y->QHj>Y \ B )q"e$1bGXp %zEJF(ԈM򺅕ysygjʌ\jW.㙯HBޠKݛIsgc>hwO{aju%/U"1io@,ҮQ*' jBV5Yti鷈,E'YQ.jbe\|8g( 'fe{^:ҨqW5VGu$+__Sb*uujQ]4.v5FO,B²>u˥M\^?k8Łskr-sKI)t>* Y?k[mhz}CHpr'QK!ZdVδg!tE7삜ٵ Y'} m) A#`X4[\963ɰKrMW& bs݊}ߕɄZEĜfk֤L:LE)PN&]!<Յϯ.\W{G[՝ԍeاwE'Ayֿ_t=rћ^Tq͛;YR5-e^|c Œ#7\Xf[|}9#|-5D[h j d#+^7P >+FWuW,C)_S@s yl*$~ Ĉ/ULٶmHX$Z.Ǖc-et]:(1|WHNKAa1Jmvj 7iABn e Bs3 A ZhV'3RQIgBki[N2[9W3+A&R>F{+f(RۅľqrwEYPk>4-Pb?qzV 3E aK:?5jLalqQth|R@E۹dG\DB:sV SgysF}Vd]Gg Nj}VedOY62)Fg5=y#fCخ*;${؁vv~~Yy1Ϯ rzn9sZ< OǮJHyxaE4Б?`ۡף'1>~AF6!ڍI6;{"{^Tnf/GccH3[)꼱j{Wvx~@ H̏ITT|u2<!2@-Q@TE1&ƆHTw/@?'"d[7.EiBa)@cSȜU\&ɴReH5!-5{PFF1=Nn,bUut眖TC TFKmmґPO5auN#6VG@c$|1EOw`8Yc-t/N(6utӡcHT3@S'UMzq_NZnoQ^ʺĴr qT6շ:afL OjS]|}+|d˃dS|R^cg1^}SV g+vO,X*'LMNRil:㪍џV3$#|vP,zSMFO PwP*xBȝnRV2ksȥB=HJ e">/E agByZ qg_^Z?dVHن/9)_cI~Y ~%RޕK8nlbNf0L]nhB}%j]I&Cˉ9D_K^K?{͕;}COey]ĵ `TZxU2ƺUN}W*_9L <ޔRYo)uf҈>Qqiљ(Ż򶋥m3g62GV^8rFQ5Oą 9#~*sp:8}&Ww^YY!ـr0Gc{q(pLYKQ׽Y:XW`Y6q:+ڲj६Mj.brkyY}:r<:%sGC& 3޳<,׌P Wb-G B\W~̅deW7xJ?EG=30 P[, U"ʫ"Ev*g޹)J!Rl_PR"ug XJ~Be^u'^cSU;"4R _ںitדƜ~?5(=8l6Go*Cqנʅy[rG%pHֲ۷(/8q֖^?` lA _yaѐzI U*>u58M)\^8m<̃Bsk(OS9iբNJV Z55eHV&pWZ Ѕ,%?QYRA0Vc1HcXpywUb@ 6 u,OYF3֜>GrY!Hil4u3%; v5\6sa6|& t k+x=ß7R;wzُ j*\*Ac"j#DfӒ՜F+:4oZ%Q˩u_ p*?#.%u:0r<e¬3_sBi/U/е3QM,^Wө7}sk42“F!>")~Ed͋/({C*=1J7T~ Tʗ+PKpM|PiDK PUh-QU bgK I־<3[DxMP %#]:x%@@{_,U 9WFBUu?YOD KE\`⣖.V#/s3eX9ucz^HtD% >.VoKʇ۳`:V34 U4R<'Q5_ԅ$Kڹ|^ȟN'/jZfU߿c}lnlb !n넓Q}X4WWjnWz΀N^DX2XdҌ OE5͇Ȑg̃.=6udAW#X^؀U|Zi5۫-ajm豽(3ΡBH X&7Z'el6S:vғ4*̩z|,!ZnU +ZWI#,\q^_(݀OR-V %Pab$^3*mN*hDќ/^q<:,e3e1|$:k.k@rqaA8K_`&\'dJd,|Hіnh !W0z tKܠ%@;e7En6[oUkG>V iw07m@Z{#xFK !2@4tzuzC;yP,Q >Qf&Ey0HMA֊/7}gӪm{$D*STZhP"F攚yNJLu>0Vb-4z2fh~+Vui9 ҧ! _ q6+0v_ uZ)k=l>{K6e|þ÷ǶsY4΋Lc[KXr׫߱bSh3[N9.eۊ7Z=m0sQc/s4|ٟujwEŷ~}+?gf9'ހy81^%'>6teݖzmO$A{vO|O[su8 #msN{Z5T],׊$399ڥLAy=$Sk89X א*vުOvlWSaKmPˆ _j> u 5k |OOSN?aMw3NeA3gמK/XEW?Ӏ?Hп)_Ÿ~1$9>,~]cpЖ]> PvwF!^TM(uoOQf{Qq`u121*ΒAނA R R u& ƎpSd"e% 痷\BIpnBsYEgr= ᬮ[Y!7~ 3el^֪P4*+`|[BVWVHgf,+_CY˕8+1?Lعe,,^Infkl&UpnkE|udu&BOk%^_6CsomyWM4kjEy.OʼnzY(Z ZG4(4;2s=!_г ͵jM_8<,y\NqQ .Sg--PgSmkTf#~m} hyXϢ>)ָNҺy[QQd}[UQS{͋̿;/ڢ>k/[$Yy7+{Ggbc`@{@{_i4_OKDW,Lhy1&-Z`~)]11JY/^߂1.3,D^cdl] ē_}U<c+3w6`S):)cCŇ`"TM\̀7=]MF0xewzQx؍ģy^z9™z(t}O4;Ưd3^Wn5Thb){ޖfRyaXsF~u=nmn};3ta n.irׇXq|,` Ӿ'_f; Mrwu=amwS?Ǎ >  Ɋ=ͳ61kSloT-LGӠ=PMt& ^/1@`~0Wn1`A;$hC73`^҇ #`V!!nJAV{w^(Ij;%F: v԰F GsŌL SX`8p8V914Gq~DHaUNG_B>!"ns`zⴍC:9?NZĽ(ǵv {ZO0s?"|HT}Ϩ5cޟ7Ze LӬs$L7>0ɖhIaHA] AijT6Hlv V&spř•/ߓ^I̪N6W)/t;tXk $5=ʴDZ8^K @, 'R-WPZmN42ʼAb#e:#"iA"i3OD`FFcU՝VPByu]ch%dN*؜O=vG0@̓ $s+-EAmKFL0] 9ujƆS*@~^IZ4jhBDd&^(b\'1Z<"q L0 iɃ @~y_A5/,W[ 3/;d{N]88+D\hcV-=tDætk?{? 圾d@DCG衺w8elhS8E 5`@n|g>GO\@2dy`e@$F"Dή3Xg\X;w~A97~_{9[dB{/ 5D'"dVyC^;a蛿gH"m5@ZbNOˑMXd"|y~? ;=Yl3w}7t~ Į-e%? Jb(^qgbXT1D?᧷Z/:H?3i9Յ;,[rbW Z׳гn9>R vF;/uy0s Dà9gVI"NQqiD j^lX_̽As AGs+f:\-i5S\DxY@w:枂bc A4(|, p'-xq\\(ܓr'>=Ef8uL+p}Yפ$!K/tYBјMjA,h w97e*Tbe6%H鼠s7ݳ[Sf- _ -1L@"?^ p:%OK< !a OAu)}'0Kd-'<{O r0 }]tXc ;NwLFO4D,҄rokbB1 %br'eI ǀ(x,NbIsq⋋2-w*fV؟ /&>wno@gD1vv3A-ObBD.j)pJ_go 1js"Jy)s̲W={>.KxC$ u)tG^ӐB~6V/oSTb0r;7d_۝NOP!=f#F^sFH^ݠ"\k>X52[7JL,yG-vG4TW.,@}ڸfN{ ?/IZF[G? ;I%|}!)ū78~aVЃ' nNuuwƭ>&%Չ+O-c^ .umsRMNyyKQCN)Ng3B PM2v Ř& 2M\<ʴ5Lc.NDIz)REAf*Fcb&X1fkql%XX.X&D"2&DФh *})t?GF 6 ) ʂ>3ɋRpF?EcQ6A{#e2-ceʇY_s~*۠gd'B]&A5+cG~9,[.lCMq5D޸e qS}Q=N!Ro?W?/ww^GQ`jm/{p ;ehٵc^ FQ] t1@x_#nM ?!}#m]pLK7.ѢJtA.Kw1ntw#"5!\$Tu$4'K0я{Gb!5}c '&&7Ckͭm'f= [1 A 8j1%'XZJ<"g[Z0uӘԋY+se& 27kz5'7&3k%ۜ)5x:33,25щ} .f'"ݙlL!-9;Íh$Z0߹i7Rz -q( `P|vjFTyLN^=LHj@t&,x$ :}Oz7Fd2* P)$輐6PR`7Xh j慪~L*M)߸: SA)12ͶV!%b7Cj*jJaNW1˫:3 Χ,% C(4\+.iW/iW_Rq,2WXzUJgL[؜ ϺC ٘Wd[p%ds+R)WKtJQ[fx~^!_'v0-K0+ihvem֨6x:67rn}SbU7ylT"^ %s.:XKBwǭhHГQ@)Jr=*Z6F]ۍׁ ?k̀a1r siS65AZsiC3I~-'EfN|n6ʭjdʾG\n Z۴ȓ?3|Ka١GG 8G@{g4 ;[|NyL/R%/'|*`:LaDnHmjfqΙ6GMfDTcCՓ˧^W/~-^rZ)H~H='#"ƶ)kvrVsx J?rf-Mq"XH rhW=IoZ:!J4D&Uifq?:EѺ\jm\:20f= j:\'p9_pqvIn56 @mCc\݃jNO =`[CQN i3$9 tY)ŒaFn;FŔ[,*LؑƭC 9ٴXB#k Z7!ARaCh0W N+;ZX NrG8k"+՝;[RS}v"gDNtLDljO7Ĥ逯4ѩW?T"h ̶ƨcG8tU--YѼ!ama8Gj*pz.`+O9y” ,尗~!)Z*êQeV*+j\Y)U㚙r0>ZzpT[g !d)8j =8F#`3C]4n?Ҫ6ҪiAFZ l ?^wR׿wl-Ύ8p=|ᮖyX13˗NGHu}mfW*oZ_pg7 q2k8)*F oT͌m5(bFY08k@BXݔ -&Sׅ"\7*`=s͘1ՐLWECi)ޅ3i}ӹ +_|[yIǒU\e&O?F"KXP`Y`gB(ӹ)Jh.]Ż^Z>B3V@OPE(ɩNV#: ngxj8yo~ f8̷}m_xwr$jPY$1sAyϜMH̴>IE搮t3SƀQPQ}׷ި; H '=XCʷ Gq}zxZLmMD@x:* bjm#iM) D7~%\)j$~)ʟƷ\YѪtZnכN [ڻꏟ[9, Ar"T Dd2lo˿Wd\n @PrnwmgmqF~0 ``? ^%9#Pxږr Xk H*FɓklmwS}ZS "G!8\ 9pGJ:5䐅`W+}7Pw‚Y*L_o _? e4𻿷0î}0z?'';@jj?5F?oiɢ `4mGoPonXr{;]=ta?Wv{%R-Jț/VqQ^B ]m+mtm =Ј$Lu&{A b?߼~`)"4moOSRF[ q無L ZAD15ET9{"糑?Sj6qzg,p-娖0f8e/cӋJtc)(/=GE,@ w{`Ppb?D1X@Cȱ!!84#|O&үNH]A[3s6;x_+p b*WeBa~" J,ԀkEυH5[mq/FBtцю`#Rb+V#!I,y̻&"6pj2<'GnEI?hj˨iNƕqb.91\r" y!XN8 $#˴frhE! ?HX"grcP@DהK=V}g:IEݸ]H44+[Ɩ[׻%XΌy\/6ouVNkNn}fE֗ZWĴmiJ\mh ptM="#V5)Df;a"% F ! )a/L㺵n/eCY2aYEْl#bF)I˘im8Ǵfb(J!3 hI3bhm hy P\D(brY,zqb>n.&"4dYm|5(QZ5h5-O'ܑxݔڴQ g CQ2P2RGLP4ڬ1 gTTK )P`а _.aJںMDWwJ ?;j€?1攆!ƪkVEF; $X>( LHhD@l()gP.6uM?9+? 1]8_p ; `80==/# 1g@xް Kxs~8zbYu [}f<ܿ+!9ڕBfVPNTJ=ѵ3co(tA.UpākΝ4F=|P[RH pj}sjaj0-7ਃ v܀dϗH H3ȵ U#v$fp 6?Q7ڃB~/L3q)ڇXD`·x"^Z7%9q s6`D iI^\0|X h>.7J ŀgYx!Ҳ^B۵Ѐ+^ㅡӨ_ezAo<]WJ FxFbQ3}T CSgF)҈<[gaxĝ9ejd3[?5a.IL]|0Ypx=рH kW;Ƽ-(x*)SgZ+f4_4@$}.떀T(߯pP+cCKKxڂ/I…Э3 gi MNG`X=cl-ו{gA5=;bx>Z~LYG.w{&:CQ=N_I v[x,μK=7 8'"E[#p@T$.ea+܉oѐ +BWl&¤q.[;q&c/6 ~밀 ,h1?=PCɞr_S|qY~t0@<9DP>2$"GS0MSwgNƢAOzlE4 UGWgSd~R#"L q%uZ56rˆ.Q+eD v wR[gO[;WBr=Sʕɩ ZIMk -zL'JbZTHrUN9u='cbJ0Vh-sX0xO p*4A\xv]yvEr+fOeQ7ȥ(ﭘXe͆*lthNwl/>*M0J0;^oe U%iv~]R!|;+`tb| 0W~_~ V%?A'u /KH\YDP1%LTx, 4^j|)$_4i Iҟxy.y9;W :oʧp5&dW`yvDuey{EUMU*{F{5R*çw lTϩ6Bk}:Q,\d-U1vNk-**x4\0wJZqs6Ykrx^ jp(] 2vfO ppA7J"‚T2Q'-+\{2ܭ9A@H+)zS,HY`;%߬grJ_ Z iK6^Bq97:/)Z$^dN'YvdiBrҶ٘wR@Y"[& R])1Bql tګUKIuz@-2Wo iJbg0v}Vy鰠ݑKнHg4~y0f#C+oj >E¿ ,#S__z=t?o]n'Ětڇpe P NؿN5n{s"5T pL!Sy֮aT l{COx}L2iTsӜBeK Hˎ4r1}BʋDAm DK_%1'XxtXAˣzuL9q0R_v嗽#OI&\ /DN& ΅}'1#rQRԯdoL}6o`' 8/\UVcNt}x_Vҝ8IBH$E+ 3ͼہ.-۬/S>`U}"athߎx:"$+qL.Еc2GY$Xh1kܷbݗ&փ):PI#@ԎmA]y_%tC ;76@,mthA=DSȇiN \!t0Q;;=?I-0So\aT5鎾hg|gp8ōg߹>CB2۷Ȳ]O/)Dў nb`ՙY@ \t4Lsbx!+$e_ e%Ň=/1wo HJw (eY 8E':㕚W?c!6#PcN0H;~ckEZ9Mm%o_[Q_3!Xh;/NudAGf&cxO/^7*bwFR2~t1"vLQ+@qwxͿSS~YۧJ黈=| Hvb۶q2$?RJ @j/t*SFrT\5SyXJ| UJrNEJ NLKTGiq/{K j]R>-xy8?&+%"щsg,'ql-wO<-%Q)RM>xU )p:tl*ԍA?{5K2nK]5_52N{_Զxzܫ;D]k`7%Di)/qC痝AIH0m[s4V49x{CSCkci&Q H3 mtU,lko[`r;ı;PڄL;̥[}UTX8x:T 2ѝa9F8`i#_kOHI wrfKhAAh4l,ab #}W}jN)^ ;/ïpF75˽O #KN-hxcg$;8baK %2&Cv ##3mC殳$#m<%s>}N ǏSE^*! ~u/[-sȞEqѹv(9j#E_0`ODE^ɡthC\_>S0/0^ֶwö[yJ_ʰb#Wc8z.F a=_QMKicߡ=ꛡrlZw6MTfiLK.5@nZh#dM1Do޼aF:udv}}ԛi YOK0=jxv>^]_zW_;8E_gnoC m\t0jOERRABLŅ8d.Ug65N>Յjs0{s`ENs{;﷖>!ObX6уя/bu>WŶ""k5Rj@ͅKH Nݸ ~K{$?jm x< wn_/Kb[woBC>$ l5!'=L y+o{[Y>+VLuMrԤR%JѸ7r(ӒBӤ`U0zF( 'EzxoL5;2RYy׸SBO){oO0  =G1DroaDe8UqnNOv\]n~*Euvj[=&['?A(^;nGݖOr6 uۭST皳Dg~8|?,|jf4:ѳ3TGLa8=y$y24,2c@{G8L^0J"|g7NP] Sc[!I3"b YȄ\7rpG9!X{P0@ju6+<0NژሦpL hܘhkUu>3:!87; yrOOEL,DqE(<(^ 0K̑B S#+I *5^mʝS$YN.xt;ds{Vw8J(.ޅ)xW{q0VL)OSEF]4䐖(v' rɀjCIoęN޵ͱd@$PoڸGtGiGJU/'1 M={DTjm>ng0D>5D~a8}>FPPArru2B>[f{yMX;>FQ Eқ~: YhNL 0Ho#@-~SҮJ@2ma.{a-/&9jks GL/?HמI }P@6${#x^ZayG=6{ŭ iؘUqvEw !f^ H7OဒwCA_70-~-[@s#sca͜T Y0u)<-B: 2Ql#%$oϮPYˇ$PݥEm8ʯhe| F.C+(CW X:]DB\8eD;x"Z4ŕcUMNF q5:x VKG)C-ʑi[sW*#ix[:-]2t%h>mbU7 =۫ZN0V}4Dh8XiR<{JpCj5A4cAS^=xY˻m!{J7l!璱~,kdQhh1 :OiqT)L^YWV\CoB0V<~$p>v/׽㢆vBHۉmͅIx[^k}zlHσj7oyg ʿA a ^7 ܍@(em`Ճd^2bZB i%uIVד'Om$SXtWGSQ 'چekZa!?.Ȕ .UuԴ rLH0q>3MD/a$^v٥K|χ*!3؀%<.p1Ro*¼:,{` {sn6"sJ8̈e1fE`l\C[h9,ED,r +ӨϚ:.g,Á@g6Yي j -7 dȊIuB-`?C3U@oLdhtwYZz+BU 12X#oq10)MFe61 Rh@2|7FݞWmv;r96 PG!OSs ʚ~F(kJ~J"lJD`ӣvЛ'?T8~@i)mDe/@а#A#sr ]zosvrN eGJOٱ 9  {;u< PwR<ɒHsAOlrݼj":Oئʗtp txlIg]ޠs=?;Ω@(=I(ă@ 꼃>TcsϜϐ8 ˤuodmX5 t\;HZvtZ18D ~i rC4;?|?. nOnzc'Srg˥f 8;\\ :gx0s.^Kq_ ߥ b;ίu?~"'@qwwt N H rFh߹'G8z@t(}hcsư!ώFq{;^>`G09/BHj0N `"`ڻ~?Tg< 9 B!'\t.\v.}FId W_pGp8PO$(Nj^:_|ʨ5wǝ)B~\K`sry_Q]_| {`r/=%ށuA{6Z$wփs`5\_!VT!NAIuPz P՘Y՟a eo];x~fz[f>JHorSOhPքIyҼlnI;^KNQqOK!xW FPG ssЀ5FY[i*mԮzFIBBѢC;GUܤ(OW 0F|F#eD r6f{3  >ỹ&M,: 9٫#EyPw4zˢ0S~Kz ؆1$2_RN6У K)IM14U;30'/P`/г('^CpC'jLɅuzEb;~:ќ#3^2 .#Ba*GvnYRKA4<^R^4s)AkADN >@ y騇_3t Εr*C_ydvϿ^``OǧںW+lxL7j]Zp<u'ῂaWrr}eW#!\õEhe\ }.\!Yi ANz/69P*&lGG^rϰ.E{^t8d lQ&>/@I Ҏ% B$:6w55{N,nPmjw6/d'Bʑr$ /KVu:2<.]\XĄ#ԃ VLtӝhZY8P!i1}/pyAXKR5ޒ6ay"ټL`A# K m(GB Cmf0k<m#CF̉~SOE'B^z@i^L1^鏈!$BGS=7 w2U|]BEwV5,ERPMs mjy5˔w~ǚ SYrdCŹKlR@99XZ,[ 5qVnhcM|ǃ(l,?@PS-濡$}Z>ic^0() ܸeٚO,  :MDy8C2":2@@E+RPJH\(P"*@vPD` } HpO*mn\0t~l+^aOޭ\Xߒ'7@܊9?݊dI+6aƞA[&Cy0y˂ 0tzg/-2pK5n5AKX)r1JZSHP™mDJ_p_n!+S)!wTQ1SPN8O@.n'IVBIck>Mz=:\ I.dr |1=[6YXXJ )@Jƣ‘..J@ Ųv$FJۉV^ A}Ia5 \*B^daJQ3*OJiB5. ~2d(@" DJu 76}k7x[ZMBl 7uŁymT8޽y03)})^+*3* rQO{i, ZΣR.O3胠³YbFʍUULv&Έ$IbP@O)pRd^'`789<)xp;esGJI>?{ :ug'G/hRy@|>&3힣u)[!\Y'R0Ǹƺ]Q[_UEӖ|j|DJЭ͛+-qݥG<%d-:v*|RLUrXO].拔'q߼S zb`CRA3ʐJy7Xw )9D+J*:ԉX0\æzWMJKY!TvHœ\Ь꤬$ kMP6UGpi3?su@%rlP>uKC]#@KD_zX_26_dJX&aO!JE1g\U+Tkdmj*j q@wYM}2GhM ϒC|PL0aU$Σ.UJ(-oE;MՉ\s5*Clּe(2uVr̝N!6y.Ayէ 1O܇m]Kq?77֩ wE@x`tS3l5JFW Oos6mAY|Z?i9Z!=[`7/"A77g6L3]擭m) ;$`̔xLVrr(}2UqgE2]Qtw,W Ղzq L_M"8(B3 )Q_'KY[4OXMpbj70rtY^tgK|s+tׄ?$\e&T\\e&1.:2;$ +(ĺJ?ݩN w8#3~}%ZB4U4KH"CzⅧ?|2ȩYDS3Mf5)0ac͠\JT'B{y4:\I !+|8i@O0`ڍ-Vӆ>QBN:9 a嫸.I[ty(rw2^TDmkC!Kѽr/kN*>%,L:WJ.ĻJK9^r^"]+x̤oOEPܝşTg-k5茩'LT3}C>W?Yͭ00˚zjQg a:(ҽcnMOC{d!K$sLP0̵UZ, EhWjUA\Au3KWǩ *9uG$sZ(v34L_ifRԋ@_i'rMjۭj{̉f,U>7Չ],З6D##D"޲㼼mߊ}d}KмmK)^ƘmJQԮPpr<:24;HSx5=Y@۠8,TPӿ^ fLmd?sqxOOBv:;4:wuz%o1EצSp- O>X}s_{iotڃܨaPUaLGЀ >b e3κ?.K?3jC zxB^A+&vW2p-ªudpE|vH9M"tu\ELƞޓ$pi\ ;'ϣWg6׳d".1A7ݯ~U4oճT'1?/QgSŋ)P!(he966qL!|$rFW:;x'faO !-:vz)`֋ϚΨ_cҼ1j4BGgf9Xεe?d m'ȐTo=M.zS7t/woGo|e/-1<ĵ Qݶ q{c qmBt-DgBC\ wB4ܵ qc qmxmK]%no!V+D_ލ]0BH Qha]+譥9xgy7E8`a'AcACYYذ7$kg'lZֻ5n [nڇְe*-QyuB]_j[;.I[񫉪;L†1qx_Υ|8k['qEvERA;4LUáp+f}s'g)O{DF=K/k_,QLkY^e+D!ijH\*d.vӨdF| t2Uo,IfYjuf[-)/#}dG)֮kܞnj+f2F9)uռقjeO4Uoj2wN7S4hަ&L|c:ZJE<}:2eT3VG ZRMwsZĵ>BYk@Ŝ~f-g })4v>.O%hU`!uɪALg}=__Be__“[& ~17rd=7wsx)iez`iyxMZ[j0P>u[ze޼1qnǑ|w;@ JG!})RWJEz_XhWbG+࠯fqȻf@l>Vs^)~uSvBx0kknOra#. !rIgYd:W7vi頻;j1whG  jj!:wGE1^oCEw9dUUt܉2+D4v;!k[ZbӎȨ^bů^,)]Ĺ?qRX]&(v5{*t -2O)|Z:=X$4~쾃mXMPVd?j9 {.u]xԤ#P_z0nxQ=U1Zt,likbq"и4%+~x&Ө42EEcJ 5;kh(ZVUvCE*b]WȈ[B#OXiVK1t]! xy\-$ )Y*+Z&b=OYUu͂% ,P"o|EbZaUvTDS"[eviNeK⁽KWט ?;xeh3TuϪ fJ\Sy 9CyWb7r hFش3XOF q]vFƍގŵn֫UcDō)JN`"[Doqfoӛub׹H"KН膦-gTnQ)5%p+]*vi/{iV<2V=~EYGK6v+WO6TouǡnLM ,}2Yސ7G6%+h{ vt_{kU7q$x}$cG7SQMy-/ȗo_Fk%.գn;#lS)6_+٭\FehIpD): v ׃%ϓs\{gwY ^,A( 7hB(vVw8[:0=ȿa|GKXMsd1dR#[lyL ̶hvG۵R35)onckvpvL۵F5$<߸ =r|hhWbO7n8!gw>ogͦX)xpZٵp*[m'.ŏvCa۵Zy{,v䏽!̶kHXL)7vkW'JtĮu=@zeGbL0ےvvg5~F̣^.UvW}W1ƃ gWTDeS7 ~$ +6]Sی~|?>YA E$k'Uؐ{#Qlҝ u#ёa~,K H#ђlHQRw(l`~caMI߳! `w4HݴlkҳJ511kB7sSc .OLi8[r=[6d͟v,w3eɘUYk~iP櫁j߸\TQI>AD[DBWwE莩FHUL)jR;]J; ?"?׭V,/x]ٸS|! L,"a9ڿ ա5QBߐOo}3: )t*/a2lۅƪi2Q¯MvS.ۀ(8 ]#e7n] ZXnV__6K7+ѯ\݂eSӝ2ٗ[++k/ejz[HQŦן$gH\מ7ŝjMGI2PMEw< ($!(iСI{䦒6j56&P}#J,^T4M7%ɊNNj#H`큼feھIvL0YT9yNoR+⚒OWeNUgI v/g zKԧ#qZFi2-OVqYw??J-9[ؖ,t=(sD/WZB#;i9mUU¶0ӜL)׽ 5]h-gNIoXL|İnTR"'ɊRJ.[HGI4o+QcT$ y6J1[kv2T~frEr k;%rqnry݊S 9iiW.T[x:E;'^3Oy$TI^UHk[EIM?ǕKTNu@E^4 %jGn AHnHX!3%VFR üQSɬ_&n($wT5kª.-fX{IouBYAGjs*d~O)Dn%euH?w2k qvW*{f~T6nvWI:_ueD(l]#;B"dI(g qȨnl.<7TlM?H>ɪl ,fBiaN{x5u:źBoPEϘAUN-@\ >hi>@j` &`;  gdh~ϱ$88NQVICiy qA`z}>(4dR*P^0EH4Qޠs=?;Ω@(1g *z( S фb%Sʱ;\4D\^i;?E|PZe:1AFP0+Yp?ujAAg?GσRXP1 P#`hP RM.1%`N Y0@Pij@2+(Fۚ鐉 #ľAt~"+r~2>IjK .Q g7O:/{ {W\..{W𪃰H:O(N?.;N ]\_^_@>t0B<'8""C8C;3 v|ܿv0׸$ sB 6;kOdAq?;~ r Ef<ǹr))н K56OM4ۭ6wB:K.tg i=7 :J;~h@n|4BjW̋$~ 9xu51פsMx {g]6B3=#eD rwCYcď4iB`yj"(R9`A?eQ)N"hC6'`f ǐ|Iϴ^tJ"(Q`$yNFr!M!)",4䗋 HIޑثfi-ZfS1oN@Ds>$ڐ7FcwQsm׫̻Nr$j"w>qvcxÊ t*b '~i%HbeL)j36̴g2e ]]Ga暨:C^TC8Q!|'*~â?ԁ$l8Q(ud? Ǭ[mmTtgw jbQ'cvӛoU0)\ZU߁ e~,;-tQUin8 F }:,8S06f\AN(Ӹh)WT6S7 xYFV ZG К|x}UUm_ ߕ3 9-283Hӏ'm.MĊ)~6]< L7N(4۴8(2oja4tu!~wx~ӽ<kAkۿ;BμFŤN'?q i[7ݿ?YovlQd?e0 fjzڠQ+} F(y zqzxoxuvlB,Fd/  ~;b<㮛'It"ϯj_a0a%`S 0K{Kty#svFrkƄ։5ǟj"M3~3E}G59,QHwa` 㱺ds(_` Y F42Ook 6ucG,pN~jI@|L!zn/΋d8tUZGx SI!i0 N?w8r:;)'.U^is6e>D} R'&q4e_1>|'A|-CׅUJDWoL e:wnp#,KLU6=MP " el@juz4UloTNc؏.w ^|o 1_DrfK-Ee*:?hesCQzDwp>KE!^W1Vfd!mzƐvSTNY=oŮO~N]mU~qvy21;j3yKBx!oxyq):w)o-t̆aM" *Cb0 D 1IgLθ^+[)өa$,#S^M4P>RhiIiTY#cbyK7{KU&$7yB>N`1 `oǢ ul!wGkaf vΔTlQ3ixx߾嗫(ATӪn-OҚӔzi.i3F1S ],v B#hŒ2 DŌIY^` '+CIg2Ŭ$)#Uc$UAhÂ'0 8+wLR1 Tit@.<.ϣ&/rKlNIQ>Q%Ht~uWHn0'ĭ`$%ͩ@VEn]AipWA 7Q|,E'0VF14:0)ĿC*T0ZZ`ubM8+Qy|~{2΋_\_>I^h4A&g5!#&8dL,[,4VT;svjzp Je_.;K:X,mTO 4j :g/Բǚbg{'ɤ9*A~TQ9Q]QM[U\[yǘQGnw_HVe=͏/$ZbJS1/'h_wt5}Hg[ZVPpa4n7['uzނM؞Ze<:eP}2wZᄽ#3{Ň\Xʡ=(F"^Պ70t X])&"5=y՝P,:f lmiRl-?<ޱPDV YwY/:P+IQZN$rn]PMXX)"#$EH 2AlC}m1E~&M;gCᠩ3<8"Ss`H cYA8"ywQqDFQ4C̬'&|i¹}>G։+孬7~Z<΢(K.*Y%l9o$yj6k*\ОBAW:@INnAM _8SϞ?g.؞+Y`cu9btQB(=1}9zxիFRo5|IgZr$4xtqK޿'7VV6=sx]R mg-9!<&8L$[ϼHVP3ӧK*W59 Us; A8 c!a6W'e1V y'"#8[K'8@T9@sĀ,|O{J H jhAN1k:]`m꿠7F5Ɓ?$fg} \&0Zo LxbW~6Gԃ?*G왈oh+8S=y:=3S<+nO8vq $<ӵp` [I~ƩR?vD#8I^86%_Ŋ>ǞZqEPx9KB.٭x szҜ&nL#0FlWwx|MG]Xw8-&˙O06$MC^`7F%o A GyTB5I DT)cV%E*gQS>Κ.I{iqF/MP\F~,%2!}k.,~~ nZU;yTJKg;,8_qVGqѬk[Z=o[b@ƱqpO"k -;?XTVs9 D|)a\[hxƍgx$0["gn--Ə ^ ,G&wD 8X9GZ! 7S7a~ x]JkLWoCd)IӘIZ*XJKǒr@jT L\KqB=h|->py8Z\|TEfqǦBm>s{8NԌVEH\W"}l64Fol?m.QdX&]mWۉFp>'tE% S?+1#'"eJ98/2c1@bnrG~K -J]8ɇ9 "g!}S/c O\@fnidMydϕ<5,,B.{e%* :K]TRZ\|1B'Jydg/!"g1Vz/ Ud.Qp,{ʳ%8Pv]I^pGa`P,™ν c(!޲Ʋ!ciXz覬`/4_5=IgAS"az]בwl^B`!S%)s#8UUpGs2 ݌`}|]i;k0! ʲU$_5ەmUͰ/Ibn$od}{+74UbiivU"bsQDQ!EbUb&QAtj}P46Q)vB= FQ.Cɱ{Q657Aqdwʍ)ܡ`H:z&cRNIp+(n|(ǐ*Tޤ香fBׂoc6@,%Xg!>~3L-ߍ2;HN<7xdoH "~]1A\ks25>5zS:AO_ˤO{5fSrW|GEZ ^LߧBF'},|Ϛ$EEH5UpqݫHGDMJ ς/+٢WEj3 lR=~?=L/˅etuRʲ|l5f,?.C|kyURS=y6ӿVh>:lWL}͠~U3=mjהSWW`|Ϻ.|9bE0 ioX(HZe&nKV6Ԥ 6NjRvUc~jw|ws1o_a) '(oBJ(L!q]smvL:h$kfbs:;i\lF9.H|Dڠui4Bc2 )qT*ѻKJIGpzNeLB;vNķŸ'gg|6ENn.7ㆾavss(sI榙#&~YL~q*DᯣT<ȼN!{>*b$[1CVeϱ]^- 9\~6w'$<2h_cK_w em'GAAJ i <ے[Ԇ"A;3s>OPO#(l>m:M^jjX %$"SaKQv[C\e,>ʣ*T1;cqR Ca{A wjE z7(\[2#Ew =%i?r6޴V(4Ws8b'!ӿ_/=~u._0|t/s==ΠVhoߋuw5j\*=8{Q=گ*F 3#j\us+͍_7͚%wnfթiJHSBz5 iR`6+auλ) w*[rcYsBlB+.C&_j/ MsSCې+cpRHSkuzk?pO~מw ',^> jp??UC WؼĮץ[*X1h/ Ÿ]6=>κ|o/1~\u~ˊt; {J]4z>' b>YφM ٭w+'!ca%~P2Xc` fL27=NYE2BD -]"?&֝>ECn}l5gqF3>PF o?DьB,RQ {2o6ʌF7h Ff2M3کΦhgÌ6 m0εe?s4K =WͲ?InT3=^5\ #Yzߍ(ֿb6J`>'f lΠUW,OF6YڒYf8YguV䬳9-W z`Y-gU zV8_y*~cLm}tYt{g2b0(,sL >ba0XPd3ʤjQB^-&9SAgFirhjQG ݭ|e;sNF7<M"wv=¦߻p>! E3G@|X2W M '~MJBS[ARS"_%5-bʌ:̨nT$3T$3r F8o*@!V^Yg ƨMv̽MvXe 4ٳmP?M͛ ɤPB#=@+ ;Z4w1lLȽFor-&J0|`@0Rѓj9yZ>di|C7}0z267\ T|ZLlо,S_$oF3@9q%|8xYI󞅶üm~#ɇ}jH"w,! z]1k.òLl[YPٷ:ag♤/ vMutw{{P nz y $7o!c/3X\z['y֫k-a -g()8z]\df+*4oz OYsji`Ol)JfSrۭݞk:YpE;vzJMoۜŸA\\mtAXf[uRAɾKEbS:t!p_&碑F(7WKQ*/낼^eyIX=;#50MWT5~_ޏߣ;~k|=[LAIܢ؏#MϿ8c6?e2lT,5BIQ EXf%]_!fCOfdsstM/ xZD{g9hˁ/*?v7?aJ\(XnhX)Բǚn`!7Kx3t&|3r@Ɩ#IgNo/:R1H~FEL1B2u1/=GyZ[Nh{F,kh@`טܾ9XN 7lzA8Ǡq|:FטP}ԢmߴBme3OiJڅǂ&+d;+_j#r}+"j܂qfy\ޏ\ VƢ&6z E=溜J>+T:ɪt;rGn.a.'MLe7Ps-'wU:u\ IsϿfEI+S>RhǔA6̢Mpf$+wf3+DX+9 BHtByT do1\&.- $ӳF*~Wت Ļ+l<:<:jyJ9i4['' ㄟ~0kxS6k  rn|zHyVy=}^!0U7^y~ ˽yc/!-K+lWxb~Aދ R_: "+X i_׽=AAsT_=Dixqx~ 8xyTY#aׯG}lϋE|#=xl-Ņ{ExXUw,vIvK7(uҎQ+ I?z(B {K5l{0@P#׿/R*Io6U\;*Z.2: r-BȇVLhJPAppCK%EB.)TV5HA&MaG2mi4OS$Tgڻתz83x \WzLF+:+&U^7Ox'ްЋʀVy=۶>Ħfyܖ{?AYRUf,|>jJ4ͪ0lC/hL]6('5EY:6hy1nsIsΙ,%CQNc.a'y %6B#%(!!y:# 9d+U/Rh}"p>H'%LYKiKisnӘI.u`}Bh|z[ Tnp^rxDӐFhs7Uύv=(8Q%V7+͔^^xyz7(n\^V\2??|qc9Cͫ#ꥴW/ky}V}1 ?D &E'4DŽLQB&p:!ϓQ <|Q?څYaݔmr2.fAFsf#G1u{zl_i^Ɋ|bJُکُT˒]s·>Y $S* y՗jgL/ˇWJӱX{yP_iuTHruٶカGmUtw%Xc ]KV~fō(d.QdӟTo¦@i]Z.ņo.U!G# 9d]Ieh[ 㡱&q,nO $;3?835I=6MbAjB*tZQ[@Bv 9Ÿ{WyzG ѻ ]9V2n7{Lx8PcPץB& jSSR?Gg6O{ SW'S.697gxs[ DnW{ $5GA mo|A@y+nqxxC}6ai՟5&Rl Sy\=8~ESgYtY2̅ /跅!!׳m8Ć\,V8+˜Ͳ1NWzrV)9\euiqg2!0]Zˇ搑fXwxDEul2zeG;wIo?;zQT^Iv.B`:dÀ GV&VKjFx̎~9[ PɭM74ᛂnME^ցߣL!4Wg3ϾrOZzw4xwg-LtG#J=KpvNQ[UӴDԛ[@gpr6Vow$Mw=#`ȣLW}i!RV3n^:DYK*_n=$H)Q8W$0f0K (tax6߯_}oMyBG5Mn:6{kjN@un6N:Vn^00J51BC@9446Y< ~MںR$GNb>[C)_$ Q57Fi>m4. tq\ 揜|] h`Prf?q:BG LޡBZ@ƔaÄ@C#wJ ro.8NBQXDA1_~svE ˗=rE`=Dzc vj]j~kz鶮j"-knv7ru'yFZm>͟/90]tz-OO= ~O h]i_^_ȯna!;gu;h͋ pZGБ(YtN/n\?:๡-ݿ^ XzVBP*IrN(.H tJ:Q_۞SuNs 5?f3g>O#zN#R: ^7p"az_1R"ԇ E:ʘ㍦Cmpa5ꍣZ}ƙ?c?s1ѡל،F1"@ɀ@OPed (I)514h[4|tL*}iƒ#M0Ց#A|PwtD 8M0TO)pȆ Ć1@S3gIsFjj[6Bヱ! K`l6LaR}$>MCpf eƺà !<`0 긖9ӟ`a so6<)#i $ hT M D{AM ,ݵ\|OÂ5Gy6šӄǺcIa( (ioE7:`_4ʬ,Nͤvqۤ{x\-eU2ku@w l֭":bPN3=Ml5(Bڊ,a;+_@Ӯâ{DZ^\qx (!QvL4w5xpNyOGTT3Xc;&vp]IF0Nv?{!1l6dԑ&:!IPR̐ACʋvA 46O 3 7Sb^LxN0asIS\>.c~ RL>r@xw%2tx#&L*J *8ZR2N2= |&aqL$"Qvϋّ4LvJӎ)R((Ҳ'gxXȐ?) ɗO š;أo}4TRk0V$,( c@lw eɗTm; -Y .k 6vd6\ÛN|lnmAz`djGruV]+H<7M"SC˚lg J9$O>e;R^"ͮleʷ(]%YX+eYHhM пEQqt~DBh~E \tyj tm;BR0js0/8+̭m;צ2?jhR?/* X7ŀSmf"}&~֬i+lbO SsDRv$2OOSɔ8XʍDjhɓ*+P_[I$@ćD Ili(-&%z~T-ZޙmwBerm 5SQ/['2OEVϼRNj9RR/h+md,%-bSu6Yv9RҜTpt-砶Ls7iFhs͖r@Ѹ3b\Pd?g+/Yq~9:}ۛ4׿ToBa*m$MV]TD҈1S%cKMX.Aqib K({0j]}aX2EO),$=יtDN ^̴gi&ux 6ܐ_2}7NԌ :&T:V`zs,!O!|nx(:ֆ7ΗQXLy{푌4:xtuЛWS% I4RGMȵՃ] () ktK$>(dP~D p P`!Wp81Uup)}pPb# @v ĸs^,QF#k!fHF %pԋ"$bR(}n":僝*iMu^R[ۜ4Mf 벣#V̽6 )x}:eCCtw^[$nZGHo[C#_x{ */t3(2ic2z`Zix{v|ORCĶflu-aƜNWg$n$Bۧ/ <B" Y>$a- X S}gAAKi NZvQmNtӀue8 a9I02YN'`:vm/% 4S]ݭe98AHY. s-0tEf-f)%'9|RNyb4}zuy{W!6GP 8L&Hd&+)ƔU0 &sVs;o+/,ǐ?$0A{:N95౸Y9$# !MRdhlanv@EȂ:ɑA 1!I2'*id;i:s_!-ki_I.R'AR-tHvE8%G|pVU\D222pDF<rr;vcqReW  >єtIsU 1RF0xA`LjQ䂂(bRWxXג@z+?6_|U򕇭uPɪO #U6&䫱>1ݽf/z'z>(vMXmBhou՝f=ȋKʡI\>raxWn6F)"l12MLzrt>Y{UX7]kO * `0XP<@HbQHa,v7f#atk0xe_pL!:Ƙ (urypov ;ΐmšxyd kif=ݯu-qP߮t:/;mt,{ni 93 e j5MFIh$bz5rģș+ '2AFXoӋLD0uo8>T:-˳G,͉]ZlI9} 8{dsʓd}pϛLLW1\͙Ń=`0S,A7)F ?^-۽~U "%hM +쏥.!# @P0 HFLm9)9dUDXCL3|9ScC|mH!`1*ZIs/ŗoɗ{5yȲuL3ص8Z%\Cs(6i:6B&̻cMILXc;_uMwAXeVWdƜ} Y~)[,ߧd3͘džw7wV;`pq3U箖 ~^%?._~ë$0e>7WsŠ{q;?sqִY3:v\Y_lKE3~$AFtc;B ?5{ VJHo6{<ڪwhhm]ֶ:m(u*z罎vz 6]w):mXݮ-n^G;5 YCv9ZJ-@Hcd&>ҾY~!ÊR=1/ ɡp1`{1@k|n$sE 2_6WSD}[&t{s6g,OީxB KrEyOvuP(yJJ gR ~&"*eŻB2?lK9MY'^ eNKM0W_M`_?]ng:77oLuwFjz(;`C|V>U/SM?2v3*Y&UU%9smofwxDؘzÁkuṈ:9*Y5y+Qպh5^rmO4fjU>ԁ6VbpWN8x$a8yz/?1hLm0 2 PD^)DAtGX,L-iHb(/TXAO"zd'O%Bp|rmcx R4@, F }2Ӷ*uA㄁=/K*4#/ 26 !FF{ɺ S6u)2l`lN^AܷkA{ᯝ8:|[ޠZi ]/M4~ns)hбL5Zxfa`|)EK~OoB~[^oi- u&M:qT=NJezN?O>`i]9 6HIп& iKbҨ?5Kgf[6ky8X BO7BQ m2(JeM S5' o9;> {toih 0U9e RLXΏK?ljNxZ1R ) %9+Z%OSJ]}"!J 0Z/-NO1w#./=ŝ=0$v @Ug8UFMo,`,N3e-{ܖs,nWX`Y4#Aya@3.C Vv$@Q8J0;^Emʽ+3A `+ ;< /~XX(c\Ē27raqkVA>zT]k#[s˕;zRǠwϱc[:vowd7lo7˶h۪\V#mF6Hܔ9*>P 7RڛV"maMg*P[XV;Rv*e6G*Uc?W)^tTF" #<_.fn@}cgޱ#!)L y$-9@Q-OLI+<2٧R"BA1O軯=ݒP]GچD.40a鯜Lg5UcXdM}F'C;œf(ߊY&[颈-O֗hzRAdJn{O2ߪWWhD#*f8a- r:#`/drx_nTP"[B5Ggb$ndF2Ya]-I1c%|'33çt{l B)k6'umlɧG5yfCS7vxq&/;iM*XS+tM>e{T=mc|b7s|էl8R2UyRJ̸a?gs> p[-:pΕP+dɰ`ʛ{hRu2ѻ2iMlNF8:=I<){YJ@jS$M$:ZJdYcOcv$d)dnsUjZa$1RvװJG9_dnpH@e<VKOĖK^|ztPtX2%YI&Olf{o;J>-SͧX)&OiKfeth[ۙ ͌N:.Ѣٷޯ!UR"}@(ˢ5ũkM,&`؁_4*pbKQ=! 4<&C{ESp!'D7(B”RRѕ|U?peLKl'di;_j؎1/Ɲ5*@X6K&:.@;j)`J2|ly: &G!@uu3-H=LDV(0e&Dk}zOP4U<ϚH5t?¢./@o2qKbSfTE-Av^k+T=^7d<$SHritf1gY7~˲ac[loYzZ|d3F\':ڊ6m@E<ɬz(L P wnQ^ʨbk$uO Rxn6oL04XdK~OԾ46`I%r"pC=#{M RqT -`uĦБFHe)t/<++>8,?*&v> (~i@ݖC%֫2%Hkg`z05qE.\dTxhiClls9Gf7ou/{䪋:>kY"O]Am.5?Z=ht[V^5i|u{7~E:LJ@<#g/n t !w7^ 6ο"o>abô+66;5v ]:;h͋ pZGБ(YtN/nR  cDe]5pj"Pbs5q;@Ni Қ̨|`h c<:kPfHUZUZQmi,f7}AE#ׄR"nkA7 Ŵx{7xۋ !!4+4VQ S7X }x8nF.{.Vlubo9:iag:#A ?Z.blab|<KIaR!W pBs|'|hy &)}6Z< a}\d@I EȩQctF走q@ Il2`~%ZfgRD=r\{9%*Wl\O NBF$Oްrssh=5$iU7\HH(㍿oOCF&e]\PsxXxsDyEKVF`AGI@3[6}&DBTQ{ƪʹm-[n28h)9O?hb]٧&icDK`^c'p@D!-D v-{1 f <8(Pw^eH#k*9Gґ6GUW67M>*ҖtbBs}6=Fl(H|7ʝfC Y?x3򊖭VNSd. _{9< Z1*BB i)HGӌtM4zsFX6Lhn&L~f<#?pnhC74Y;AgEPÏgф5UObN8t DHsLfY}<W$.尌sk~0g4F<t#dt3qmT_{bx{8Mldo c59D# 4&ٱbNYxҢ2G '?b`8'tGcCP̼4>C0 !΁ptjJG1ǹDq!xM~I}p@@DpZL| v̀e-j&:<pœeLJz h%A\0`%(iZ]"ϯ- $35XtePq;lhzN$-hLv# oZ fؔ0*ej)Rbm֌N*FAKƚ9=ۤS,=qWX_1)Z,(<1`{^{P%чЏ+X X^!m$0FƹW}ӂh#nlS6zPW!lc_r)M쉮Z"xո*sk) <-G%umnKmjGF#.at;#xfwrYoTw*O>ykwj ~,Sb:c.wsH3~lh)@=) >|w~~^%_HOT3ߵT#go@w8 m vɶ/eirlmtVWj~A?]qhz.%'=҅uFpNʜ7U^x爊پ j9f<=ÙRMpLClI'` V%]HZ?U|NX #3ӧ'} V*&Z,4MI"d_LB K $A76h`U`p",iIѠ cE\2LC' Ѿ1 %ktwޏՏQgƠ$W6;׽UJ?۬R?+[}ޮ۬i6DMDw9PP%8=wtr+H_Io >|~ߌwK݈dgV4Zz#bh"]ٳ% 1]!V♔Ku3 ~ZW3[iőOr.vЭoI$0Znʫy:'ݚ@+*(#R J_ύy!,< xNm_ڼ#8O?G7@~}{ZB%f0[#j7}x(I!͙Upέ:=e1a}8ݯH>6sW6BsӴt(;DF;eNXi 3[`!+lA Z4+!~U~8>"j?0U)fo6FPTDË*^5@(̚VYĜDߛjZ7߈Gl^t=n~QOPM+cTFCٚj)L1sfHJY<YޖxAD"~2" H4؍>n뷤> (;~r4"b3> C"r#^0*.j1>:?~Q5(9,XT/2`l&=lKN I9H =@x*MSɅDKPĢXB|aII-Y:Mv*7ҍ8&9 @t|]0VH[b @].>k\5`+#cx8{dzN=kJ. ~W} $W~R">OT'Ć,@ ? a@lEvlpwOvcB95"0 :FP;VG42L ω̴go0fJUnHof%"1P.ՂD$  [xl{ KuG5VB8B?g\,SRg )]bp 2\iAE)*: ؃/Ȃt7WHbpL{0W~TxIc-$Ēhoh*dK)- ź7oHb uC\4ťL6OP\zpQB?mLl'wZ=a<Ep:)xL&k)e3JF~sJވjV)M fu )sMYlCJ/Y|yE=ɂgV"y![S-孲y٬.z.O@֧ezbBl-m\IZzbv!ŖU+L_2Ih8+I1*6OPv6ڊJ?T5ڕ/t/H_ܜv/}Yps[[RډU@(vV gRkb5âcN_J61E:nTI&L6`Snt1ڴ0(}{,3Mb0f,f1],LpQfP5 tuuƨd+Ņt L䎮C>=5"8OdF(xٶZB-%W)cͧz"cjë,.2qtuJCeʰj2,QELT{iCqj ~L1>\r8VO=,=I?3HY/< c-T[,t*ų^!dǦւGvQ}wL1@YTcP eCQ#^E9F&[t tRQ9-mE+`-%R[br*vܔAߦ2  ΦC b[UP2au>X=kJT"/U AG9~)%#jϛH,l 0H&˳[Uin`)g7) 'ڌ2g whnk&桰+/S'8,ig[ָw۾[W˶ Ęwmo>@e'`Bʶ^MM$i'(-#0/Ů%/B޾gB{^m ж.%5t|JA +l8M>.&"T[t-ↄb;w|UH@VA#֖@HjP% "h,LBPyAUy W9T/b"5⿡̋2j=v Zi(9 Cҟ+$aQ<7b%ߞk x7~M؋/JqZ|!1K$6\(eBxd7}N twb^r25c>I ʠ7qD!K**8ꃣwJ2Q*19Wj dCzeJNVf QSYDRJc+N& x$<21(缷:J'_l0Z':D*+wG&5 ]RU*z9.pi`oVvvdfteh.0c߸%}%O*KNK0IU}m#ޛׅ{M"x 7:/ϛYN8}9?h zuNlv*smWɛdlo_%]}Bc$2 )DT|mw>4GЁӯ!O®VNX7]{40ZF_?cz޸:Ӊ9p]TlG17dʥoGE? fz *ES>#y$RXGQ'K@ɍr{5jiĝS9-rxlϟj^n?X'gģ/ʙniBKW-h=1{q(SfYrإk>KX>+d[e+/ے^nY:3 z6>ueIcIa|[ÿG~8ĶȭetKKmw=?H\\{"Vnnw Kg.tmoSכ )Q4F=^"M$MaNg뷦5:ΰrT-J{({Ţ C`Sy5_O<,۞lYNw+{`nzxlN%LD?f 6kZkϷS& 3Wnw\]+kܸ$X宐Ȓm]Cֺce [xvFָ9U@M?!%7[wK[BAi1%qAC@^ޙѷ8QIeڟmy_k~2b}t¦k{?$}l`cݺ33m\tCptuuw:7\̈QFnq7*7D6mvF?͚n6 a9efY#wRqsHe2V6φ:,dlC[F6φ:d PlApvy]fLz9-Jd_%v(.l;?bB!.YB{a;j"N\aDY [ؚUo8(KzX\%#CCV^|Jͧ"C^,֗5hECk԰S)Mz[eM4447Hv#.MWvYvfƇmF}6e ixywymK{&wWp35F]إ־+.='Yz SKQ_pjTx$nW:`+;%f)4-$V=`'85a#3#4wMdZa{9n[YoX&;m*fS[v$62 )XmxU;Yfm'6tv'|q WY.塷,\yaKy3 W3v8{$;k'ݶTBR_i@t-LP HQrRLB9tMi5I}V5YPlBwNhɁTo[4@}V;W3U> tE|Ybۨ6#)ի:y W05H2jYɬ/oKF{yB0h gi>>KbsoќjJQx(39& sG~rZFk'2!.w;v.r5#bƒ<7|lC>} re'0,?u>뎉|**`R{ť3]q#4ur_Wq* S^~'ݨ 7m{s(\y/8O){n*Rdh,GCkSF^tzz5 QL9qzޒzІ}7 煲́i6d2"iN505.sT2CI1sW"=DUn`U_'xh`e0l!|˟h7ȴh6!kT/"ˊOS NZtYN*eUv/ٕh$ʎt+;+[\٦~u:ը5FŨFZη~l=9IVL?2`\_Y> cI&k(֐C,} @ X "` ZOOLӊOr)IOҊ.RTO $KGc4 Ųjq9òtOW\M.VIn+x--d;Zj7x#+uڃ!jD%!+b<3`bLJ?ݻ,6saMHSO҉ 6rÛj(}ˑ2O-hcd/O'9ьhz +eZ.62peN.rsdצyf9'NKM #ɸ2Qڲ4R=qbAN`I01)`UJ8%j% EC UCX*aLRE gg%VXʒ13Kظ)dtX#_\*p1Qe7c4yTZ7|' Gz  ;y v9gG`L-OG'P#DAZ9HriNPu2r"=+q ?yͺO:@V}ÙkswտS1^±0b2Ph>XGq h'u>Ūg9'$S+]lNVydʎE@5\>4z Hs;VrҢ:$?$9FV9lBf]A#n L` u4ˣ`fe٨FK2}s=A+>MʈeLkg}m&~q">U RtΓ1ߘ$OHqnX2[-y_َVNO PcWJ2w1YD{ \|kAӑ c2'#zjjౝѧfh8o YyC&mǰĚ+CMS0ȃ_4WT@zhucV%IeH_!u5<$?P)zUr@ bqcƊϠ8kudT́;[On@= GIcvK$\\{CD?W'4!~RO"o^ol9ҫ^fvh뎣0+t<bl6 S'< Qlsk~|ܿvܨd {RITEtVŨkS3~܏LmU/́ :'2CpV04jއbSKfWn7A, RRT`)\3pI*ؾ;<ı+9i9?;8\W%bx럵~i}T^&#OX/>^y\ρY#cb@=˝Ⱦ?;WAQ )iO2t6_W# 8NHZ粺l0MyXq l`H^_cHk_uGGTUA)OԂDLo[O#PT>CoNսHl7 aw !ZL[NţmN]8l4HY OekxQiZuNס.V\H\NzC˳G: &`!7LKva8?M AiWHWĵ|ӄgD(/t}C ޫc{HAv^줜j!sݺ^]wۭ>&ӫy鷛hN=-2{go3ǧM vhWÙ i90ߣyQں$GPwu}.&M&t8mkn4|D20. q.H?.}B"Aُ{/`=. gdZŔ,L zRC#k6{RY9׻uҨi}߫lg8.z="ezM4"̹JEGBʚ㍦d"z3ؐF1@TOY'QGCV #];IncRN -J1Oϰw<7㾣8\l!ԄQu@xR4 46jF'Ѩ*Ou/_3迴!Hሧ$* D ϯa'd#qAyxJ0$S`>(ȓ)y/0F+܄IFiRDïNDHy+7Ygpm JśVRJ (zTiAbVYq3by”ǍCeEbwh5Aaݓjt'Ba^j=5#r!1l.ϗ={4L^&M/Iˤe2iz4~$N~]z8MDe3^]^/Z]xӼ|l5 L*2tZY+&Cb,d$'A?9?adpչM3^f/3ˌe2xq8^fOjƑc O)v; MVl ]ae̓ށ5e&y"½gC1t䚏kS6 h c!<ŦEm\V=@ s0π7owbsyb4az|?XcsC/PIVGap {< .?Ũ!닉/%σAZXߊcT[Y.o-VFȬZtڝ.ThԺg[Ec J.50ro8?uZc9: i`6>FUAB>Z,lLU04eQXQ+kn}Cā~zCȽFVJ[dXm˦}GzfS}xm.Q# kf.ݦ{P˨VehDDtt@.ő.e"xG3Gg2L,2{Cv ĪcB)iX"[YkiE2-GI%ܞݺo^O׬+utP.`ȍ8SwIpd -P,`7AA#1V%&+PVYfqؙ Zkq$ cL),P%)x]58Mqrpp@+rGWtP=Y(OI>d>E萀rW@(E,WdHf#||ʋ~8 "aL8.x.۝.-6QHj~[|_IKn9(3*0"8Z; O>J~%U(H{((9=M*YߵNLE%DV@J7MC sZ^W:HY\Đι1璉sD'ž{: 5T$6q=y(xj ີ~1*"a\x4?ۭ**ŷ-U͊L{il ڭi 53fL_>bvL5[GYXc5y,Ռ"fXis6.ࡊA^ aS s fI#]@`>ppZ9dz'HR0򽶬q.M/hgTJ@FbjДѣ* `le>D\x^2L 搉8%$Meo: GhI3e>δ@(d}eVo .XQFR=VYxδx:6\}OG]d~@|>da!L uAw\J%_;?'9+lMо|>Qɴ/@2hIrgRx+; ߞh9V3" οgK>f߾7A/Q@3@-FB ۺ?!xfewJ?ՓS|iq T!l ICx;.RL'=4={YhL;עAQTe={nEw3ʀ'9p:}1& Ͱ|0J[5_wzhޭPbN"]:^K-hN30-1­g1hdٶu6v=;d; l˯P\!sŨ(Qz\ AO2y)غ.=!w%c=NڜE`'L_:W{K&U6ҏaØ!7~LzfSxpS0H6*o;| )>쳆'N*g ; :Wf&1_x.j ;A.\u/lQAv FIvo>'Ѳ&D賫b9Z(l}{ֻ/o*ћF O{:|[CU@zxܠ#:sug$[="/Y)})|VsHL-^Asqm' kG#pWxA <{onWhfF 8ZT ߁ku φ8t1,xBzs p5t$\*8bLwA!2bbœ=.+hs1^zĢo˅Bm \z *zܠ]~/^}a+Dpl+;q͎/t!f}M =5%nŸɁB1`,*'P #_ hDGWb: Pp[L9 $%4s"̳&f R0LхYcx46p|hlq)\)gZl Śb "~fG{9Ӹy 2??ϓdq/1.=H1]M\B8l4^|Ar/?r?kQe̢;dtyxu_nGv>z73}6Z< 9>S7WxK;:;h0wפF#AzZ-PsύGIs90{?;Z R,W$I &t~B"{&IT*.J2FE"sTF"HNu5gjr3~4T{We ՔkvnƘA*&E%; -=wrF gFA?h5aZ{t]U 7Q]UUٿB%<SKH$Dٗl\j'P; VJdhb}qp%ϯEϓY` عL{Ǘ=d2D`l<oZ76 gr RwUuuuݺUJ %fR/i>2-!tkk\r^̶NZ@+ށQBOmhkGW''us}z#88y39f>ʂeȺO1Ï@]VedGY4Ҧ)Fem}"GEƠ덷]6u P=dO[|NՑ=C9il5 Q;yכ;aGb耎#7O~J HP'leڒ$UEdm瘬:>9YO@MM#co7^b咁}C='yNߥi#{NL`ʃ@9|g|쪊4t bc"{CϧKȆ &[Q}}IܣA޾%֋m:UfۤV#1`H(g0RTycB^X55dD *H̫8*|)bg˃zZVTBj^4*DXzsX]yBh=w7Mpc6Op<0, (ylrK$V9}6SFF1=N7#N)X|ys+!V=>? ZR1OQ-Bk-.OSEA9& T& ˬsU< %"4&櫥)|U3+9KZ>_lk2<:tjYGD!Su CLA8r+t56~ը/%;Jt+eE?PEնU13c7,LG V{{X~1 hx9OX10##\95LfԀq |dz2FFM54p\#2C2|E/pdx3R6µq܉&J\r+jn߃JfLb)QMӤ= >S92&a]qY 6<̦|#I' oDՏJBH8WCͧq]K4ax}]ӟ) S>YjrʹqK ?"EBS}L^~b\B_N.}|Yjz*_']ll׼I haUEjxk֬YJ5_c'1޾!{u!oVf%3~Ӡ35QOwmK`6R }ȡ?'Y}5KD v*3p{*8u&Wן! +W.wm/02؏ Gu\UE\Y_gesQǫhkB:6LY\]3l:Ir\gBIv4۹C& 33<, Ws|- B\7^2AfBLdeWL<5ɢfZ*tALd0nRkRnM. komYy> ]&W㉀ߵ#ƦJ10w7t+Ai=ul fkYWדœߏv1D0[ DPgjj\w{!0pJR 7o-}IGln t`n,İ5yo臩YL'&*Tp@vQrT5#2;k dt0J.?NԦM:mJ}jSרmGM-ܡҔ8D߇wgJeJA[}LBE3knO7;4^ΚNr; [uJOldw,"5m$c+V#-ҤsK6@ݺi z2W'fbYiͲ$_sG1|0\r3 Wbe 3; |3)%` ǫ~XEWcUYRI cQ# ^^+MCV3W~}7lr*w?*O}7wbwCm+egs]5=Wa;ӻ`vIbKK$%<+yVFuZe"lPo^Fz ~m7)Iy6cxiIK2'۲ν徂K?TLLbV17%bNf A:WHk]VrA4SS}XfG4`4 '0HGThӼ;2͎s!Z4rS\.Ves,>E:dr;/ãXCMjXd}yuq}xEؓɁ{Kj:"`fK!C)<$ HyaE/mHaDŽ#F_ij: jTU&M> HkJufzY)"k,4ȪZхF%37AyC%Pyk_`-/yxk{C6A^N1Gd{{p0 ҿH^-ƒF rF@TUc>UX'VGKp\ }㣖V#`/s3!wXبU#z6GCŖhmTq{[`=S>̞y!*g&(dP`D.$u};tY}"7nMNVUILͪGjl" >nkӷaosZث+A%^-}36 >4c9yya|!'B\| y1=!k*J *5,A~#RƦ3c'}RW^9Q>%/r۬Joh,ڧ3'U$sŅj}p>C@HkBL. & WlY+18E3{рjJU'3a|ѳ$O;.+@r~P~AK70[Y*ɼapA   SNe^=r3 DjXOO+ȟi@ =HGؽuxmg:@"cХ=miִNNE+ދV?FY[z1N%ƿ1"1*ԝ9T# Rw Rw 5MnWRM_-ۏ1F*݊I8Ror0K 5rdj,Z^ "<SE zsI9_AaceV7!3!).oFE0# rrq)*W_B~x *k65KلH-j*Cs c)U2AAd(Cd,Z-SΛ-(i.81$Rf̧gzHmIY>c" ^? ܼ򥈫9/7ڥ mD?T/;@k/3.PH",![g~ eB/VVZ[8Lعe ,InfQ F~CZ`j&8µBN>º~Di6kUMl߭MTKDEx6_6Q 8ѲlDbU_Ѽ\m6>Zy7_9'T 2[oPUn*Łq9X~p )«E{hOsE{>@PCt!/.t'Eg\u9u2.:qQq.Rg%Qԧȩ*=ضJE} *2Y' Y$ZQȑ,+W'z>*S|{ŋ-ʆoƚՋ~v~LaJvŸz&'R0fgg <^X@,~r{C9=9ۼ={\\SoArvjD,Mt,`Qdž _f&5o4~i{Yo4?ZGݸ,'X#`4"nsv~rL)=<>~#k`: .z-M7$;6ixI2=vӆ*o4k="7齠Gk5ćDl>ȾS1R"vpyxpB`X.?].)Ѐ":i]Nb1 :i lvSy@m 7y>wRBshtFǙ9D&'0AvzdصG{v̩d$̝b g=@QȟWa}<1 p : !C;r $M00z=/v֧io8_!@lasȊ\n]}:8;j'g$W/Q m Շcru:r#FU xK@.?]_­Fޝ__׭w? ^X9:>mF;xw N$ŧci]"T .:A!5M4|pqqp!ΎX}Ժ<<=h NOEG0G @ ,:%EY&9;f@L 3JpF0-!U]XA]AT6Hwh.Xub=J WxO\yMk'i6*UCݡBƒ_ z] SV%Aw L4@kjaqf ں;LW/opGv3΍8v aaHOwLdti=ҁ 2U/+m)Iu JJbyWD !vG=q p?~vvZ7z,].uCPWoq}kfҪЃ% nN߸3PP<'w*q|ew꼁#elN)݀*_r|Nq58!| F:@75@'>"rX&/4!ٚ⪉v⾧>sGC;ګ^iesUy]F-ے){p ;Ehصc^ FaQ,EڇAň FLnN͞ݱ;!F^fZwVd r_ o KT%MA+#U^BRE[l-^ӳXHM[| `d}+E } gOyq/}Z +q= m0B_VQtQc:A !#W= ¦,JAٚ}ӧc|+1굜]Y$eb)&]P_0BbDUb^JļJL<~$ oR\9fgL8}4Rє.%F2D$ȢcuW@H˿FC_F2ښ3)2)fcO/w2jO3Tȃ7{J1u tV/ F༙N2Sa/),MERr23 ӘI|+ L&2+ّ!-C+:Ovv$?i].t+MR33mǷ!:}Dxr/Ύ̀s$ TwFg7\`Z@>u xB)Hͷ!A9X"Py$4 XpQik!e!ȃ*lH^jRrkk/w:z<5Lea61M^-5c 7Z:VcEF\Ѯ|H>ޔ Ƀk:!o)"C!p5.%,V=fRj)q-s5 co6 &ı=> .1*n0p4"S8 14e=p6]Q1 03 $1m4 !1Di(Eq&D dif\͋)륍U0#Z%9B#+r Z5AR<23e<9q?ZeNpҌpW3i9䷉i>ճ\bMuG^ NɜKʌfqQreWAR6`Ebf 9A 1b-lf1Bf .,њc|]~iPk 9Ө-Sc.U/ʭ&s(8˦i[Amw(/-U*B|9V@rk߲ڲY-@ [N"Ik@P5-4j4eg!\dH桨p^r%L&D5\=oFґA@! =צ#KsbnQ7ZM<#ӿyvv۫¬IFP)ְixLgR$].eBʬbJb* Yy/YM/Uz^ M\i2,U/ހqsGQp̠iRj*qZ\KZZ!am`8FS6K\F1 X)רlR{Ȕ+#m*#m62fd0G6>ʘ#';WVGK_M-^+=g/ro[?Zh.^jLA{%| `ծ4/_SDNWd8hZkUif4Qƌ/Xq.W@Xeݤ[Dw"r,&$E檸?T9x4c>#PaERwnLB>wZdMtY20951$aA3ƒE QM&(-f1t]BF}#rBUT[sSđW"IS-9ps)#G8}VGP!{{8`Lg< {Yjisĝ`0,#3`χjK8#g9U GEW ٯi#_1J`j|- aE RLSa1 kkJ6qpoqkHRfAa[K?ХNFlT,,b+}!|A3tfa5 ̮Ŏ6X@9h2\[~ 0^jccU1|ڽP^7HԁRGG6X>*d]7-Y>fKw{k@cz4 eĆ#C*C8t0=5~L|o3B߂lMvb%P>9LY=%,HXW9 j6*a_ 1FzGU8  !TcH9_]vm<[26x7@6WIYLzti4Ghi7$Bl)}yxpz]y:._>3 t!B&n~H2B68+j@H6(?$5<`!X ('j$GO}9A]/޷KUԭӕʋxe me~Na,f<&n[#$X.1fi"Á%i3!GC&IDãD D1b(*}PDH´]t%ꂁ@5&* ,WWAhw(JUY!`t"yLoMHMhlqSâ;H:">ر'4(~72'Dʐ4XW1hϤ"ƢMA&|m)i6I[^W ݝma !$?e,)Y9u55iE"fBR@$_ dZ$Hh# |x?u 3;C)G_\4OwMK䷶7DWrzd = HX:}Q[gR>qplᯭoQmPp-P 7sBd͎GjGm8=C}a| (Q/Yi: OKraܾ فɡ*xA3gol ׽#1 .'m箍+1bhFv#S;:8nzy#QFiQW+{nJ%M#2G_ ). +Ӥ8i7ظoReEU iEv3oAWkl_qEU|DPp&΍?|L# lл`spO; ˒ llr5s~cIA*]9z8eZFB]S?+V7zt{2qFG1!PV)t\δ5*DϽDpGq +W Q S}F6膩iAY ܀6`ɠ?#-|H3 %2G?\H6 iqz `gn&mT1PC/>d/*0zlx"^7\9a2QaZׄz>Er 4]pB+mļ rEg)}߮]2/ &*1P"SHi06\}W*>S GLҦ#b|F[̙/.#l}ja.JD]H`,B{4hA$G!Bw(yLjwC08nL=SJ&d&ĕkR3QI7<:IKuC?>J \1TjiVt{aq;XYe/2Ipqb&tt) {tvUo7,"'Xw>HzKO㹇wz&H;k0Y'dKF6dEX_8S߽Cg NVVoVA=7r#%&"S.*z\J\MRH-J!%Vh8a&z _crHpbBƂV (?988X%8-6^Bq C%{.ÊwvĄD0O¿ܩO@p{ɖ0,F4 L֤~nZAy"4p#x8ϲ6N\1n'se(^ƸXEG(gNwrs[hՠE5tӑ ډt.+K;O59b^A!,I2o|KMasz{J& }86=e ],~"G4>z+C3*c_D_RAr!.J+B͡), 8" lI#[2 ?~+, +g5R,sNMkU]$ $]@W5kN-Y˖^g0%X~$Dm\]l}/ Ė\,B/XgO2eJibe뿎N=m{8YO'=WaC^La\yBuz1^O}LLS1[!8'֞|#Lluz}ڴNO)SQ@TK9 }0UQx]?(q>4EOY@|7p<;N,N,CdVB(}̚!_ddrOh% !6U,ڜwV{{tƿpTDu6&jl:3 -$fܴ'M0&.PoN ֕!tXU gu-.:{V}v?y+ Sͬ۞*-[˯3GD+݅ VϽtHnUPWeN0M\ce đvb׾%ܷdCTw֥(ΤҤ#@%ڂ2|EU<868sccB[M7 Z TϔRF6Ls*3sFPRh*wvu5?Iǐ8pʹt)'UiiӺh(!'49:4ap/QnϾ3Ld DH{g,!RTwK~ZZz[lOWU2F?ZJ8kQS m@LNn6^4_zD /anϡ,d6 A`,uG)]FB3]5d34ue*KT<|&r.׿d=սּoOhZ 5*]C`p&p {o[?" ,91'2e'}6YEæ xG: O;*`empr:hJw]' 8$=}f;9{EMlX-eITVEnP S&hE Mܔ/FO\t̍9GYʢp۔k=RGzYK}O D==}Wg f/0Q0-p?_HDԔvQbx;Fr/("kP4D;dj^[x94#y'7 S|m;o}гOwuӶ@ Y(bJ*Dj==NbGa1?<@it<~tѰ;B-)=`:( Ayc3͟N倏dgczr?}Xݴ"Rc}RH0⃤esp<%Umġ7$TNleҷ6Sy oA}˘U1]e`o5>FCxksG(]G8&=$E,YąHJš%Hٞ Dh7߻^U@gs1|<*ed{^4$ lug_%2y6&ؠLd "^goyfW_:/fضۘkkxi{yx`돾Ja:z7Ͼ}^]Ϣ֛7;ntb,ͳ(}XFER&M2zOλ{It{봌|^ h$E^D|0$ٌGkA~2No"'(.R/3̢YЂq$1?lގ:?:+;8ֽy]{Kt(v?ubwzqvz;GSƢw"0;GH) AD?}N3 w(:<.zyzH>`1|ϣE>v?䆦' Ϻ=YڟHr|0 pp8\yՑHܺ^$Q Lbx!^r>V>^0fVՎz猙I\t(5=vG AxHg)$n} :f :,յy"f60TG@˦^&3_ޅq:edCmLɼD= gB3*L9+ՌAŗ@h8:H30 p^ѧ*~oz}ǣHiuaMaֿ^I9(K56&j}jQtmg E"u*3JI4̇q4mںFރ{UL&+8!arz$V2dhAr='qzEPQ"qn,`_Wf{ZI*w\~AMycsOg$-f@3E=)ˆD\v$E;ALerߤymƂ('B+xߢ$ă"/+E %)q82ɘ) /ovi>-ի.UF?Dn =>a6݌#52K~:|rF5KXxNaK8WY<ٌpX8lToŝ4˚\cÅ8'K5>lPY"kQ^ Jv!ܐfhyQR:w8(q/x c(+edKB %eJ2€IN^_pݙ6^L't@@"!/'HGdQŏppW,"ByIbI9e>Jmdxx%Mނpfdø&4w~ȶ/KzPm&jy mpfv!4_ h5+ac3Z~6SAI'5@]ſ@UlOo,@u(/L9aLAxs^zkjϟxA_:Hg5 ǟ`'7\+:),R2EwFM*oRSY ^`:o>}8Zf!V~8z#qVqc؉0Gc)V0k3ceQc؋/5Gb1l2&sqVۍ1G-Ǽv=8zq/ /Ԧ&䨙 Y˭їG#GUCr$~wr?庥qVJgÃ3ԗΎ;4Wm&6!m?ιg_`Btx:q<8NO'ӉtC8V84} NjG4d@_>[nt9xĝH堒aJ=p)|Ѿg3t?5)Yuq$ f!ς:`Oz}{\9UX}NpA]hףw o`< Fۻ8=-`}wzn #*Fzzm1sste^EFx2ԁ~dzfד43N~3sVUFE,S8t "7-dM7hѿ7UmjEk;/s"͊v tr'dѝ~誉6i6A##j ^{Eg7yi&8'~D@KC4E2fE~m-Ep! &N`_~[ 5)bFX%[W[Uq|i3DlwqM9|\C@`:똽p1oB}q3ې݌hVl݊C@pVRE| [l6&w4hL hfVCN2:zP #^.3Xz&}7k؏#X; E-Nax|ߗ}%-a\8KB%UV?xȃ}S9)2wx>O;m~߮P7vpzB߯9jyUfy_zĪ~V^E2tQSBP4GͿ<-zh$*jG鼨 0|z2M8(_͒Gy1G#+F bXL3pN]4m7Z_@zsƫe5$y9K0K/qĝvuImkMV)wؤݮ5uoJȊ.dL;\w>'pz)/([7w;:Q#2ib)aOrwnED5Br zRw]tq7OqV;W:%vڕF$r6뵧h݊vw_;. WRzm_mDdr`8޷ —~oO`IjF+fdhlSvFN>wo]( 4ߗZ= -w}6\+F p3޽}nDiۈMۇFt ܆TA,p'F[#{o ff#] ܆ŮDJSrV.Q%M~%A:8@4F_Ԑh NSOBEnh o.5WjR}r_{[ `T{rα8NP ko~95M+Ǹc!gX ]jqi$8|< ޠfTn&qSa- ETh6C/ޖ}2-Gk :nvs(uOAQ!Mֈ؏ӃW B bC "tOzOO׭M%<~eca_eyWx& 4RK/F97IǽCU6#ۼx]Cg!;)i†EZ!%F k.qK,k6wPXDr>(¢} MezX?p *hK|X?@s%YrnW`5^t 5Umh+ "fEə"}s`ɯ& ȼm -6#6+4`Kjԃ7oռݸռqyw&h?4O_ϛ~OSmoC;w a64Bo#qRWS;wWSwW|P_W;q]ՔFV%V)W_+xⷕxjg_ㆢ͛MvMvګ{m鳅^Ma_'E>B0,pۭ!AnҖk29b#v.!jUbn}Çw: vs~[m=wOjčH[j),U95,.ίE*ȯ&4%"<_N`ȳl r [ESrEPlhcokt8I..k2I&}ߴ"GJF* V/)T{8ѱrCM0'Yѯ lsQz'51-y4I,')$!FpX<# /\4a.g+nҤ1&U:< lPoSHi}]EJZب4.@挦2yKV-)~ӿQ٬Z$B6ZxAۥx%@VOhh$<ND8pbq(1hdT:]r36RH,`b05LG=: j2 (a;u<9ɘ[8m:ZH4Bl)9 A- Է-# PHMҾ9z&fI0^AKrW >˩^}BuJdsK;Xӄ, c(1GRKFiQR \܅m$=\Ar, HL!) %*m@ɋrZMJїה2a"8r~ [jh?Wj?FK&F(>L~]56)a"kJ ?Ua2qHOCzGcy|[ 3|$fWUGhWE8T갼\c/|ܐюWoxj)qqxu/0̸*5]I.ƽCjWsw7D)|TuImLwIo'/$N}fVK}]#+g~}G-7 #-p) #l'Z4[1[db]WlZ؋;Bp9OzGGGGGGGGGG,?j~ү'I~ү'I~үnyuTCz q_l>ŝE^`ʐ qc _"<:n6<X3\CapXE𙿜Q{u@ |r;ULWOV!AQ`5ñFTRv ~$ V>>a:fCŐC)J:fOYuY9BCz$id+j? \`_H+?wX#oBϸUeh4lD)Kr|Ao Seb M+́DYr[_#v|Ў_;SJ_ .n5T./TXD&W^}} :A~ƺKP"k>fPłtR5\:w#Zc/^*N_iD<PY[]߾kPӤk5è1=)c;nRr aqxM NscgS_]P>;>~,)Qy1K؈Bn| I]6<)w I0t28T }~Fz$820̃;>,V#xzM+ {K]5IɋIS.8[h$Bdp>N:sAr l3O'1X+1vV 7Mx] Zj 4^EhX`p˰(A QS!g <Ϗ;$bn+z uik^8ҳz<#l0@lF:6f`WclJ{:+Qvdm (: g,1H _Ͻ9E7ìNe=sx%VCsCNGRP+m\2~d!4%=s臘bC+Ki"[ 8*/S>΋lɆ`ct>k~Hf|>J,feV'`PLcv2Jyne ]E WbQ_DɈXD}phXfHBn 0mI9#NQvƿMjH+ixLlYv%bhQ$xuSzf&0/k +y{)wȖk".'pvWe_ffhld tK+e(`0 y02v{00@lR 69f(:\9qvhs޶=X|l 膑|M:nva^ # + =* "D_{<Go*{hA0N81DH[ BvZ$UrV9E^.MyB]R2YsmL d"XϻcӁM2Y٬x\Ct[5ː$cm!y ϪĠuykNnD+aY'"t@ ⣷Da jL5gi_RT's~ : ٗ &EnI]^K]s=/cO^`vOk^afQo38,hA1&Y3* )SN,@.wdjvcRQUYewaA꼐$U8Q2jd9wP|=@@n16טQڜIg;s&\V&B_?fS<_ߒ6/so>6>׉A )#BQ J89O$TTR]Bj"ή"l&L4OM`(-HiŔ~Ge JgdVlBH@m"#e)4Βy!hœA ώ1Yxfx" [2nYdc|AHң;M('8QK3"h[y!f4ͱ@A0B:<[A:"\>xJsj/@Onʵd:뙾RXcZ2a&-T^c-Cђ5 Y_nmS4%F .,Lr8/% &=4FӛUS:쿄JkͨMWSTU8 e vIeS{GL_]%"8NM8fD Km`_ A$IKp Xe1{NF>WEoDIg"֔lܐ|j7tsRTZ8d&&!( !* XKM$!E$8ּ+}ǜjryr{ex[,J{yf[*jV4f 4[[ wD GۜUg7cbjFcK^#H=MI3˳8Tl;7CfIp 2%( O&`m6 xHjiBd=itL-rOrjr d"w8wBvNJE:Qi 3FK v*xR8q8jK4_6 b͹$yoOt:D'2iL3*0WV1G6.C iKCU5KT 5[ ]k2Ği uֶ] >Fks$4ʾkꐫ`ZF/lUJ^n bav3w\ڋQgR\?a]y>Ѩ^)i>%Qg"* SPc h?NA&Q o_t2 '5<,`R"?C;GIܦëб"@ X VYrtEJ _І9-C~]UX$yRjb*{R7'h!-QM =V룫{jU@VlZ%rDx[dEF2^*F^艦œJ*VDXkFIyhܦ2> yM Q#SufBh9>$e,%cS GDf$˩߅MDydj5b(rw:MfH]ޔ8Gwò,1N)&iv!'NƮ[y% =1s 3xU[Xږ,(-̐(_a1i,v 1ҧD@Pryb^paۊ/^Am]NLQZP{-`ѻO$cP*+l2 /::r~^][ͧFI0q|sW*vZ'PMRfV!vajBgSF6c{1>VD+0+bѮ#%ZZ)\pAc'cęgNxշo(3wJ;Ur4v rMkylboF0ATÎ Ϩ '}?鵽󒄔0q yQH-gcG88Iiq:_Qn_0I$UݺɜߩNf $jTPJ߅#(tB`:rU|W ̆9Պ]hH'89 26arC`6F.or8]Ӓ32g7Q7х+Gٲgka]XCisUI U=Ă"(s{7pPfL(ĘR2-~`L35)\bkȊ9`dM_VZOӚOZƷߊ,r4vsJT"ċGmW"` eVgTQ0}T3wO&R"p,QtɡPWdX^fp'ںral} 1 JkEh0CbZvkʴv{[^::CBӘ2JVDž"Kk!J֌ ./8(糨$9ITOQS>źz .K0g q!l.!rT\:wVaHg-c*cKIi?6t`Ž쀨(@ń# } T!!3bѿd$?C+ŝ\;%Ώ`fK&gř$BR,1^ Y4 1J`2t!nGn+%y`Odn(Hrv10lex9 6m[bP>0<E}qcy8ڭgIL=H=Q8c8[Ap T{TNSjF\-^xڸ0_ʇ%؞J PƛXWKn}f2kTOR*mRH.JZ~>UC؊?R C7O:'E*ݮ,qvs\ K#~VzbD>H:AB&TǟsXx2r|2DE4ܦP8=WB99j]{=NU1U8p |{޿358޻A+t(=yr(뜉c4 SR TO3шNXڈLEqWlHa5a^TD#LZj*/, `IJLXBTfx>D+ʷeܥ#1R#H04a2-&x437:%,K f(`+xY)/4 ze.YLˇMz@+BCg?) h*oGU4~8Z r-N75ۤ )H%X{5JhP. 8V bH8Cq$b7i2 L1rF`1E1/ti\HLx?^,#mln{m8=㥖 we8CϏ,ќ^Y{уǍݩ(+D}+5 dc7R{u8?S 0bUN9w11 ~a2Z*E-`.*iˎ}]*>ͯcU@4,dv.9GCTT拓`Z> O;*VIy6}VnI`æpD\R -(l KpVt$(O SZK tJzXֽ(8 AwNJ}#< /PbB^AEפ82,&;FR`7G;(268Y+taMM+pNXԙ %΃wlxG&u#scl+Vmku|kG+YUS\Q ނkZP;g*"'uݐd%UI|gn7Yݑ"QTl_/Y]Ɔs>ohV'-I!~٢SIU>n%+R˩$ li"u0ʽc IPI穱Ōةꦷy&)ѽ ډb7o 10TF dlECgZԛQLov.jLmʹc7j.S}^0j#:$$&VQvR umk+6D];!~T%@sx!%8MޑBJ|yjSP#KFZX}¢t v. 2Y\]t) BlLEAP#);2e弰RP5'ߍn)21TU,rOݽV٩Xy!7O-mN2cf4ѣ^4ci(˗Pl,^e27%cp4kT(W8}dD>^3jC |6,Tg_éZ:٣<Xqrd)|]v3 +%"s9y(c"LIVE5q6E<aA9ޣf%`Lǀ*/ے&PiawbM[i'(vrgi~I!rnV'$]߆u"Z xgӸ1lzr\ ڨo>i83?5gP*s Z䙈YK! R#<i f<^)YTw&._WI5p0yrˍ1@]+$zSaAd pZ,\L`ݿI^/.p [t'&;>g0QR3+Ɖ:#f4m6WnT", T>k9E" EѬ0COޞA+0v\ꨴ~' Kr8`lS6/w~S P%ý&Z]m¿e>NWZ 7= jtW.i*ƽ0FztG0vN* 9$aQCk|[w搼٣ʏ MQbF+wVҦB &goY^A6N]rf{gP}da6PtuΉ#,bP6NgN9> d ;:ӱv2U. CT}/D\O˪"a(؈Yxnå$ |A_nD9LZ.un6]U l%>jΒA|WoދԘOhV."8u=ѰWǂ|U N˝N@h[+̛Rq#⼃bfvڹI){SCգtTu[ʤ h*JO ̶Rl`bIslr:M s 9tF+/(TŖFJXwSo4tP^+gJY`nna<޼\{C̕Cvl"P:R׸Xϳk+SFY/C)FEBNrGQCayNSٌťG>{F&0n'Qr9O 7}V?}27}$\,E}`- }r GѶWvj@5U{F4Y\Dߵێ~늼n;o]4~_~w~m^B֫Gtf ]qoCK-cC/zZmn/WE~uY}ďnWhe뇜𒴠-oGh0ڻVM9W-8>S8p"{O+=<˶M7_e(׶(^" SrAs"]Eh<vlҵt6vB)+#i~tTzicMqҥҫEʣcҫFߩS:6GtL %A Q2Id/~(,fmH#F4ZۨlDmeͱoŤb&H34ر-ؑ֯[ϝ΂o&[V}K4E#c UjR|ZA( "tN?W I뚅 UI:U7>zrTltA[JUNL 0(v;[q/#,-#|43ؒF -3= I#P9ƸWC -^`E$,-.t8~,)Z#)lxIN<%:Igo`e#8T2{4x'ԀiqRߧE9;Ro `zHNE8M9RQp]$>%H/xd?w%wpa0K+͟0 i^T[ 3N@w]4/M9Jάg^"LZ.kF(@(2W!ze ^8Dۜp$ޡ-l`Zu` x zZKU11xQ@v=mi<<:Î\=6Md1 ?w1z/; Ľ] a ?wݨH . M ŤgT\Y9R^iG莱%ñ7iiC$_?MO@k2Q7?'}|{:kZ3)7Y*)~*"[)|kZ?))uZTiG+L+;D.gOACw!*;MQ@[Fi斦AHTS.ȏ» a6 A% $Y /Ԡ:" ,%DVGmgͤeռɾ_9d zo7o-It!$3.Fi\LJK+e1`]]}󩡒Bo~ i&Q`(\^ DYxZ#h\r SUj24rgZm7Ԫ0y3v, 39ީIƌmYE*.r(m`ch T.PVR$kս 6ϳ!1N`MiZ&gn1v;hYX8uZ%!H"FFG,UFq&CKG8* jpLC% p85pG(ӑ6Q{&%)u\r8 tzxCZ?HmJa[={Nn~Rj09& 6X6h^=qSJ[}U} 1 ͯ([i>N?XВG7,BݡHdAl;/ KyRBԖA1:u XOoKu$ {\)ݴ ǛǦr!tSWq/ˆ2ITR47=S'j3vg*L'hTˤ?q+gۏisy}&9CJ\V_=5/%= A>.qlaiZl豎8#8HN瞖xiYQ;M3N3MQ(@ tt>Ge5K~^mfvabѸ:܏oȮ׳ژ"$k;̜,fqkd7& `'VXQh){0VJͥFBC+RP`7] Ou~QfBʨB=@K hYcJ,>Q!rtw(!c&)QM\}LJk6v44#^&ͮ#8p6*^4WRR?Tpz)_'m)dl126"a ޼[Ȯ##' Q¶V ,؞pNM|BI24̝Nb \ܖ,N 0L!QrI(rj]@;9\%ysSP03#-C~46ZURSDZT"׷c+PHiem'AJrXឫ !{e@ ([#k1_֨xʭU#P}^okyx/uqVNB@#+滵*Ķ@C۫B!;B]#/u_~ = ^8'!/K( a8H!I#VB@P/p/u>ԝCo_W,TT@ڑ>!x =j]o\vVTQnڱ8fW~OߘK}T#%Vmj ӛ4Zܝ&7!#'FZMT4ɕ fkLn7{u?9?=NoA]{ e[,yfɲZI9{m"GBIiVZ1"O,(o:a\9O}n=>@SЕ'0:NڕH`&(gN`g-I(Fp`0!p$.#J)<<]SP~PUf%COj1m_(f2'1rQ{.c:}L#P w1A~V'lU+,$0uUM4]Hq5D cNopصTAbi*2[ xLK [aY EE"떮"OAtW:l9o몄cbb81VnV].pRVTQ<@q$2Ea-5JwJ0Ckg'Kyth~!iP񮊡jk uk̺$ JI$WŒ"]^DOqKtDhRV!]IB7YU<)~Ȑz7-beߩN8yR ]*!TN]K\;D]:Qꑣ :MPgfeYA#TkQ+f6[A Ø\$G/(KK&-!TN V6I$ 2d71]Hj?P5f>~jXb8+3"m%|BovݧHU29d?*jPE' ^3<TK1 ҭeCJnkC Iȼ&T ޏ* =cUDdC]$NC` *i"-x&F ZdRN4 -9Lfb 0@Z2,Gmz'Tg{v;UU?=hQhq5 8e$,|/ /c \k BaEU2S-̷U *򙣎N`> ќԾZ*~sɟg@2>QNZFE5ҕqAd֪|T]g;ՍGgjd;>$"Q>0:1X^󣊚Z:)#cº}?5B9\Z+On{<˫gIJ2AR't z!<[⠮ϼESprCj$MC|CjX ;^`R3mǨK;"/Cw:ưTJx 3:UN#=lXY">*͌ e=o ,.v:O N!Ii%W'ӂӠ>rԳZsYاz\&՚h]}ƕcBrݘwᘊ\} DQ`"R*C#&GN&N8@}NZ&ЌC[ezo h)ӊUi`y`y8M)q?iwbR͠EɂnF 9sf!qp['pD})\ƆBP /UԛA, с "N/әq S cx:\ PJ6gѩʧ$mVDYNp›?#DnB_OglqvV\p;8YFcz\)W;$v/n؏T2J}Px񓪧r %30ٯ@qqi۴(ƃ5zbtAM I 9s6W*.PM1Ș-&œ\D!Rl($DY JG#/9,Ygg稽-j#-kזѹ͔c"aN29ehxCY_ojr@/@0Hx *zcrT_ @24&;^oB +u|^-)ҏ4od$O/g$[qp)l@a\%"<̄M.ICGR}lytp?9gG'κ:#mMمt^ %1uՆ#i% ee, =ݖŒP`h yx[ʬfu'|AίPa8͒Bor&͂ a{͒ZxGu>+j{K2e%JV鸔O:AM&H<0ej`Xps=ثS9WV&wч*j#Yr9:xAǟol 5çI}Ǘ}j2.*vh >hL|+hnjZl*uؽ[6j3OP5ӱ) /^;ˠ_PwA">|7~7 _W.ehI U#8o˙]˹W.ఊn"o$o(W W ).|V@/qI-,/590U8C- J';h7.:ΆI9oj )s:A Nqej֠+Ī& ׇTq< !;FÌlnW#f lBs˩reۻ|aLZu?9wN0@,7"a,:xWV#hIu%h  ]D\+*~xǸԧ +mTic%^Zw4 {mq_! ;JuoJh,p5vhU&W*.;auwԝ;@eh#T+7<Uj^CU M6uÕLU1W@kڝ==ջ`g{^ o}kO EUJO-K M6$0w*{>e@y]˨j@?\k0 bR !q9C;1'.4Q+{U~A'jJ *D_3oz.9+PkW;lˍU9Hʈ@Y Z)9UIbd~PQL@]5l>N| pZ$eԈ \JPF}V¨#zt蛜9Ly6$_!u9 7>sf,$hS/MF'ՌQ9+VK 7(0,E \dP ܬY{P= &0ߡK?DoBNuBJ~yqt` س/բv OUoBuXdmvBmvmB7 ڼ p C_>ܤB! _rBB;X*4**=]XP8jhw$t7JعrzHU˂q.a\ӭy&,M~bg4bAգQ, ԤEmQe< * h1U9Oi6oMgLk)k|w C.:_I+*[.k1_52MLAu)aɄZ5JNG`=9!`5U1.|Ɏ5OuYnIϸ~']Rxf.m}}zhr΋BXp(%B).-BP7G7ճ]UCRb0΅УQ(A>yY oIL' 9@9C֍1 gzj-c0i6agݘTt6VIOQwt$Mz(ȕ{p*q,2#J/{bV8bJ=xI6+(JT.0lZ-B[ńf&V5H$w EGԎapiPα6-B _?rҮwG ^eyI,umBK7 ;ϪIiiPڠlwXN,~{kmαvt!yㄳ 4NQ/+X/}m= qe||Mp7lӤ s2EC=4ԄgM6ߟ#Mj%Qݶh U,ɜ6\}*VP Hq}}zInƒ+K-֙q22222222*Q~I3enSB齡bjau|$`vKu,Շj_Yi&{_jcW ]7䉔oU'gϻo. 2ɕJ Q b<{lX27t /Z[5<Ba"-!UfJcd9$uԕfapgc_]{r >!*|f$#r!c{'x3k-6p\r0Orq2k2 qxC R<\G2S _6xj6Goަ0[d9>;|I\? 2WRygِU&/59lU`J!wi&[ΡRB˧6AD, W56^VEFHO.#c0vwَ^b^j4QX<؈>t;\O%$?1x kbhn X(Јx:ڰ8T'8Baj} 甩?m~Q͙y/Fpnqeդ^o:5I-4@b;oƈAҬ "0 Ap\p5+9kxpoe9fq&BQQc5.$3K#-4hЂ1%`Su{G=˜2{@(+ lU)م*g-e#j*-4aYب6.eyy#ɭ?c11s$khziX1҄QQkѳ7ak.U䵅 =Kxu[P'~YqBΣXgqSw2L2>Gw%Q\`1?nb>E8JH2MDnmLRǘGE2&}Eboq%1Xow~C]:E:h, V[A].*auFA`oN=4F #{+,'[;i.T+Gr&+U\ZX*6JKvRn.zu+a.sSo ~dIQrU\d;[px _̠ Ixrb9 n%kG-@|Uڞ̅rdj!l1j4MALv W5fHْ%+vn ؽ=,AH S OZYFU#0-`GQW΢iw"GqԯGacYcvX)nSΎEdעlQy`Q0"ǡҬNˬ̙kU%ީ0Yb%}p(;ܖOy3)L ^jG%ͪUHTղkp@0}Q@NU/m]Z߻.9NY%gLK_]̔&RPR!U;%/K,jL[.|=ƞʿE\ [}UNC4ܬ2)wԻDI2W!ίX5)yDKDkX`F)_ۛ5~ډe,t4RZ 8CqbsZ*PV=FzzE5Ɍ StF/Wxܽ۝T d*-붸sJo pװ[jvc/|=EIW%ĤS'TE&1 Ků{ٞݞrY, -U÷ϹNvp-Nq] \M]~g(쮡sFtK OlBxe N rX_XȊUmFJ (l#nqNnߡ{|(1_̹[, Yv3E {zm]-kª͌nCh\p,ƾtdW3eEV;/5V^ykZې =bVJ[Wê jWDi66YF>L0QRdlUʶص|MII)JeELuU5*&[^ evʂUe5YE2TUjEh=|%O?- OS;3FS NMH:yI rN7gXs)r^g#_ޑt}mYtK-kɬkW*CvŢg.ߣ)`B)(ԥ {fA?en Уx,^2o)Pܲ7REJ{ƓT2eמBMr,MvŁ<5@.BC1fz28[28%pC _J} X9 ˿"*?sۢ}|#( zWC6$?|;?'y 8IVf4` >q_,s5µNLqyazةqwBaM%g !p/p=t- -P)]JQiD2"0ᕓ?nU)_[]M|P2 -zNSIp*Q8 ˿=uWhEW@ϙ;'b=r++'գ;0l۽|36`z_C! nNjlmT3=Vr ԡ./ ?3sژ&~) tt!*>/J8J?U8=::n:i8yHslKjhZ՗|"c㙴agFR-(g 5hd*_{lX+&LR8 ~Ȅ><[~ bQFm#LT 4 +9S9Rr\Ш[VP˭i[GRuҞKn' - Gf{ ZyHZBbh cly\t] 4L1^n d3L-R ۣZ6^3_~f/!KeCȪn?n=i#+`81xY9n9A%Ug.%d`1)ΏBa%mآ`7%:%aXf@< ZJ 8.d%BVN9H~䆠~Kf>1#э2buQCu!R>(FGoή!;vn#AȝRړŗ9V_WQ5ͼ B Wz%{V>">ٷW!}IOh45xyŘg-xp1I' ['bM uYlO;$/ݡ%n"Yek$m@iaO_#/9CqӎeƹZElVZ-[dNgetnnRYnn[3 %ۦKc8T].-6&*[v[ಽ.&._pªwX5uS_>ܐ%('h} ?Ȩu(5V+q|]+xuھlcY#3zWK)&=8~e_^|W[\3=cYf[Mdp6_rJ2PwAC(I5K@) 2Q1$K\_.f`*iy@o;(K ُ+{3rP OCۺ'ZAG !bbp 𡸴 m{VЏΤKHTQ4=Ǝ=_OoǜࠁLQZk >W@)I R( '-KfC0%t3.(ͣSTI5sx,)Nix>&Jsy0W&?مhAL_i!ݒ2~S+Uu#".u|>̮7c6\ N8[/rG!h4,F.$ii:/Ґ6č{ՅHnN(r/n6qUĆ-5XH(BۤTph:u T6)gMW Ӊ6U'!iqTe@N V牝Wbrn"0

UY*LH 5֩W'՛b4󤆉yܳ8ɤs->@;N&|rg6廂ɰʴHQTPa '-AhO-}֨@|Dݠ[V[tq+BAѳ)׎ad3y0mU|G1B,e(kw)b"#[_,zy4B; F>'7BB\K&&eDbq: |M>iώx)rɂYuN\Zg;6@./aLz=bI-*ԩ6B(0Wz}tfpb,t`U@6K*n*\I+A|mc#t5>zlkT{ ؍F.LsȒKNz7αJ 3̮X0U#;L^vmwts Zity^\zxٲ2d"PbQ y컌Û I[:2Odr2+0IXPmB5cȀ*  :vl)a_9ddsSPF$0=XQlAWi&m`#Cø=O_jɍĉ~~ jҒo}?7t7υ?n$Ym1PNm`n,R=(^XgqKG'pw@߈jݠ I1@(k[1N04C!ə@KdKBGD, p2dP;O?n}{u_kt)i)љR,.Eur!Ʃ;=JdrzVљɰ ]sF 6\UH \7 he8TepVcwӎ-|M2'%ve]E )nzb^pǻOwv8D<;X ؀r BPbfb՗YN1[#DRL.PՇ i- ǃK<?Ď[׺pymkLز-)꣱ݨwP=op-1SيWDm"X@%@mI7&7\Im3aoVPַM.y!_|!ȣ`8s zN r_c~J $f^h5 PB߅|s }߷&^s1ukXøÎVUUUpz.I '`@# DQOn[Ӆ(ISғ 3^.>.Xy(: +}'&g4s%dfuYÜC:W=̶[t(uSˌ£x-` 752_ ~aUvϿlaNѕa^Cu OҪ'm&=;F"Lh-`.5HK\ pʻ Su~uoB\A8~vg71-ҍ18Hja_l3Հ%!bΒ4U``bb#IYj`k} k CZ(56TbߝF4?!eI=,4!VN omk}"o6ZhBC5/[#Y鹼e-Fg??!$Bҵ1}}3!ق}5tTN)\h |rBm_̣ 9pN 3Z1qʂ߄Y gэq?Αq~{nd=^@RiIn3Xi]ys-Aa%?b0)bHL}}x+P(y ([t S6,r됕Yذ[bߧl\ >> Sc(iS[-IaIqk VM$NjDsUWU"͎ZTt'쫅3  yڡuǥ;Vl>b}<1&8ΉKΊ*(#[,3^7BOWs>߱ŹUR*2aG8.L{ A^܉˾/APc;{' 2ne5윯>QH)ߠNT n YaP(#s;[ҥ.Z!c4bg*qkaq10VO6KH\E\mwb bʵpffE녏)(Ÿ&U VKl_FR?ࡗEr#aR'{LU" t6F=Q'LU+r+NĒ'bGMc*?eqR!3( 93mJ.3 h2]ԕUaI/1Os*Xi/WWD({>[ZBi&j,8<8-:|  tWANtl8:_i~$ʮ, DiY[@ߐG_8Um ]f߷ ' (ZB]M!9P`آ\YC[`=LSRL᭦NRw-$XWORz z.Z J2/OQݍ83]UX &-fGS:Z !j7W;N!I v4,Ötx{(Y@l𳽫v=w3FFζ+L;g 2.pyw, %_AHHNΜ$M%<9~2FD&"8F2qPmP!\ػ-(k+`60(⧔g,>ӾoJUW*b @\fQ\ca\ .I>RQB(%ei+2'.#^ҫM~At_Nng=vBi|b0<)|ndm+ 5=,GR?cw}]pGG_cF&d!R) n!BR%UC胐{ʊS>3Uyz,Ww08J.a(Uۂ }}zglەLIbwհ~to _r&t!`U+HCo;pQ,3QoS~݈L 40QHx [E"QSqM`wWhPSҚo`ULo9CۣEj B3>Ox~ĪZIR K{Ixr63ܠ /:zēUV)@T>`x7q em&kBJ ]sV_rqU\?2_vD)&WMN1]b6ML纖r%WN||eMq)R&*(/pey@QK+~1; ڌz^[anKȘy~p%`#@y)]""2yoTeE/Sc44l٭fomstf9{ RWZ;L.h%'86Tz_u:+)= Cװr԰lyE~w^O}?Ln,ŋ~Si[^2Ed%Ơeo6?7Y1 ;x8.\k`|ԴI&o ]FcRx769UDP+ïU71{:3M$gJz~jYXuҽ1d}p\); ޳M-n&aK>@*G&_o i7}oKmA58U69'Lӻ=($N1mdɐ%)|a`\FH8DPGm^  p:5VraQ8G"G 8 .+@e}HU~22ŸB$]΅8Պ<=0.yA-1c4O rލsxtLN]&Mf6g]iW/jL̩aZa1 cVb꓆y4ifЧԮ52 8NV+YT:VkPCG ;w`f[9 %Q6 5'|8OBTW~tjEb CtX`U'i1DLv_V UG\Y-21)G饊5K~A7_8<D <ǾzX8o{ZaGX94Ri.Q(nFjUm)l33Y,H)2t0S6y(΂t *:gsOb|^e11ͥ f:]CCETmU)k饒p5B2T;t-Qμ.(PT;1WwT §KŌwhJN&B9Ue +.yxxG: Bkͻ^?/1щի\f(=ġIP>u;RF .P#_c L-&sQJ?eʸ7&µň`#OJDڣX ?UZ7P3NMf݁c+ UF8G taMqF6˨.Fa)JMYIЩ:A*+g5U>?)PR=}.ԵS MMJ3DW9?"h4zuNQ^*c.#q˜sV0 $+s@D '0?Ә@VɔuZ%ZKL(dRî -||45t]tQDG Jޅocå?UkD]v-,R:C 5I)XZGmO"Fx14@W;vIenMh8z=+RP ܖ|DdNrI%(RqI("\WRy.c\JPCTemSE9r,kL^ AyeBPp0cn%rA2 pu"p+ɶtN%uCYi|u g6&Q:ϱ>-֍GhyyI)WڭJk z2aEKqbI8H5(xy6^fdqƻ']=Y8۬L0J\0Ȩ{ 6 #wy[OQ*Uz\:5(!%TUIJpHqe * nNt^'/௃Kybx!VڅA)g@-=8,W9p)<Pr˄[i0[ea0+!r`Ӆ;Z}p/9j_wxQхVXz'n^|=JB祅ӪՑTUe'ֹ YO/\7(C_5= ;mׅJYvaHN0 v aSUpkН\@YnG'a=K\Ru- Tf9afxtfƵxGYkm0WE/Q}ëH,?~nt$ 4i!T1zV=aUD#5;Reqe^Y`LXp}8>%K&9;1qոȹ)ɯF⁺X@?2+e@ UHfA4p/kpBN1_<7dIaPNU8# ZRqUtr{fz_7{^jN֦B^%'z ţ+3%^.3, ( }A6ccZtF]OV͠nqB򕘮)\< >#Eթ+ #?`qB%/$8 ˻'65SO-~ǽ|_\p}_wwKDZ)V;w&.ZH}!TE^[4u0z฿\üR.@CKjqDm,sAQ_QAfN~ XR=mU `Nܲ"i3ķrXcn'#@c^1 @jߏs #Œrvʗ^=%k)Ii=`-%P)Ž6r~9uD}U袛Y5H{sr%D 6BYf^`2 O XKZ lMX bPJYR:ueL^?3s-{?<޻[n.?^q'J;Y{UL=: .kid80(?[h5V ^+O]+BӧޥmXsgL[+ɸ4*Jr@./0sXZJo Z%[Mj j3l`֟r53P^JJ!B_v!ބxEu\E^$~BnʏӰ!/LքZXj򲢪, < . *7`Q Q3bФ0-VA`r$A.7{z|$>%q2L/?{"8qoW ] B*h$˽qp oЩτSnSŷ{^4O#[ǘ6˿Aqe k28@ezȂY쩮< oU +b"x ^|1:9=>9,Ȃ6 Ǔ |AF15I~ bXy:.ЫoBUE@K(/0?+veǔ( 0dϣU}" 0w$H 9'eoYKt6#Q`3$lgO&0q+'ɱWX1g?O^-wG?bAǧ0{Gg?)pF Z~P0FGvx'!SXg. v_goSa{o%/i!5ҒvE`SO0yFoM1TQGhsgk58!wȹm}ʛ∲sᥠD;^O8L"R 4aD%P7 ]-林hzOGQbJ4(Ŭxz9Y;:y6 쮟}x]ϫ}QEշe45Ґo{wI~ҷ2gSc Q`C7xc>ob#CTh6M "tczԪy䇒5>*5v(djA&oCPk(BFtc(gJijhW;Mf]B{) wJ5c[Y6n`y0<f 3̃a0`2̜|~qZa)|8zza<o[fo 3ƷFÌoa·0Sơ0Sǐtvb9FOh2 K]v=Ya|(69!h4~֢L,ZTk~v;t/Fڷ5輻')8o;zhfYwT(a;_U#Bs*Z8 m?mV@}OaM瞅asd;n߿O$ׂ,pC xK O 67[O7AfQaNqqTfxe҉JA3Klm~yY&Jsc&9VE; mCQh/3(t+?fâ~jpz!$a{ޢ|FHhJ)Mb4/߫2ςz{'ۃ!{#E*le8B`~?zZGǧW55F$U:@̣%87s@5w"xN4`|S j|mmX? /7(gi5ɡt4!(0;h91:ei]Bby0ܣ^E# \G\XV_S!|9ֱV9Zk0KK:cbmr1cJ@chq.TѰ:E$K""# 3I/20n E͓)昁 (˫ZĀLD}Y5lX.KP2ȟ~?pH-LI2#>9c?;Wd ZᅬG䆘\,k6gb Y*po,MFo reU{L^8r^l_ZmatU*GS(C9R|` A& ڡ^$'a&vr*TF>t_֣ l Vn:J#%-B2=U'24KW/ ڣdBjs ePAQO")/lqP4NJŹ*U-w\Ka5M ܀*ts;3ӧxbgஙBufvֆ:m1G EkE:) Ba|`vkPHUj;5nu5l^]3:rlXǀJ;:lm,ᛰk;mJ l7Uf#`"Gy/%ADeq?)#%ֆ=V^_GB[~ΓDFЖaie)HXLB,W`&1i*0. jU*\"Ovlx{/`;S{Bh#V<YBwT5 E_'Fk!PAV"gwgY"6yl:ŝГbqx/sO@3^bjs~ƣBuקS" !_dwOJf9wYfu{}7}Bd%mb2^~64}Tp @. | hs=/GAc|*C<͏Jˌջ 㚰mc]JSAce=]/k]KXZׂM hV,sEzMMlkI͍.ftt;J>R̐ $zd=Z u "9/ V%)6KKV+y`\({ff-+o9P>zT]h,ǺPK bqĆ!/俫 !? ᴿ7ݽ88?7G9v]ڪ|9٦]$_CVҎx) ~30W%['Vw'?Л,Ɓؒ([<Ď7 FDIyCҸ`.$tM8%+KGM6/.9] ]{SpDt4a> 6Oӛ} |8x<~=yQ~c˧Ӆܠb6,0&L/u%T"_'q_g(r˻NUB_&4Ϊ SI';Bu0f|34`^BQS<T sC#!tbE3ԏb̲9bWbSU-aDivd'7{M .PC} ʹ) Wى^:M"RFGE:T#ꤔ"Їۂ4xG2ۨoQ2 ~oc<:>)accb֕W̚Or@*kFWS ^|`i:a. LU Cu&ELUN.1lShTaA.e$FlƟ0hw>0`T+ LSMXՕ ]44̵ϓ3Ai| i 8ܰ@U^*'I$yR%b. =оCdG*$8aP҆vX>DJX8BDFi'55F@k!#e"f1791cpAg*̬/׍7ķ %Y>` ̆2^$nB X'UdUFF#WpWA:=.L[\;vkBBeHHhָ]5/{b⵸3(n~? f0Z[J}J{w_dIϡV"-H"*˰ wpJKҿV$Cf#Tɡ'ݏ hZJHJ#q4}FZσ+&]>(cX)YCP9udz/3PvZ9eDCW"3G|2ojVdΨvo~*|dHУ]A[OT3HPFl\*h.@TZpj~j$ :t| K le8^vBɀ<` atd9y̙gt=ƀN]:0!6D7G8t$@o6neˀN89&" .HV..1Ps\e _ rJ7uzIS/.T sbKMd'9Kz#.VϑR$bL5w. /QJ\U{=~Dԭӣۙ>f^pVﻟWʮ*^(cI0[3KO]1aXH%V<{a}9WVu {xNfz`Fwݛc:iOuW} Vpbk.L?vx@3d MP>nsA78f9BQԜhifVmf&V(TJ̶w PѽMQ̣8Пf#A qڋfu0F׸al6g03_'+hBϋil%uW@(cb;fBI»t^вⲐ!5?&p` )f1fhPanZ*L,1]Q@ !t5p`AQQ2@ID ZH)Z$ؚµdB' Q09X>B8k|Z 0GJ)G׽HOqrRsʚUVAN +s= %Gny^XXϊh5\g%GtdZTKgz$F̝PS聯$ I}vka,/]刱0(#ܩ3'y05@LR7";v|᛿ 3r[ۏZ$*",+v[ȋ /H'jWT~T;Qۿ(݃^~|7|zdW@<]^6s ."2%77{rWvn(pZޣw=ߖ;= a^Rz_A6i`=4FvG lclHыLVZMvM󽳍po?_Buߟ=hKKJ\~2IlᤏprMŢ7ǣKhp|OUTuQ;ƬmZhAd b"bA6G8 Ə,mJI8LT:OоlPmNK U -8{Ͳ=(nPb=j  AT qDZ&t^lPl=mX}^TϋHs^ptL4 U6(Bj_`aRl=!=/oTMpԀ T@#ШAo8ᝣZA)b(7OF.u* dAd:{fZGKv*KB)0TJiF5sѠIUA4 :Nͤ<:ܠAs֏^7hTLH`- v_,:W/v]f=<ՠ &UY2z$`+^6V+ݠZX^<9,h5ZA͎ši-5?٠~KhP$ *&a04BSmUW.mɨTA }h2 A4T,px-B5koѠ auA=bD*?y 5(xE jQf5h " zwTzF^jPHT(5RI}Ԋ?L(гZtfˎV4ՠ 3PNvz,vL0DևyЩi ;wYjt]ya]Z6bto#etq\_7*Zэμ)}jՌnuo\I hi O_t›ǃ֝c -{b'A&Rŗ80P{{Cx4~?a!Goۦ1|/墉 7N5-J eFo.R &M~ڸYλ@uq1DCT0,j$,|> wޜߊJߌLy`( 1XC@Qo|T fPe_Eq]SʂcyqM8q8gE(awQni7XYVfx9gY*l< !?q!z#ITA /bݦO(kϚ(2x71&Y>>bE'ZSrNe}}ˁ@<:b"6x\F8u=]'| BN*@?DyZrN U6Ob{N 4bwږ2#FM.^ *9|k9V6ycD#,Aۻ{ 2;9Uwy;gzS{2R;ja}9gb S _=b2^1%La;%xǩ RoX@6^ */N07׮F9q&Ni69`?hv&W * fxG0QYγGD).Y2KY#l%Li/YȧonktrTѾ (&̵/ār6K3D%:C=oI^2h>XJ"$Y/ y> !U<V@id$πp} OISw&O@3T*% DZlÐVɫPnr] 3w.\2P=LXDx7M2W,PPքIydA"-A?$+hu\lB6Qy-Y1 H&DF_×6:̃텐ϩ_Ѓc?GRժwY4:x.xI.WX<{~͛J8g!R !:(M%z\%iFg75ԾZd@ipҾ NΓuՎTiQ,yCE ySqiU|e+1ci_)%39wUG]W( =Jxɷŭ[6zE)N,(XrB1((<]^ޭl,Y q^%xTXQ: ?eݞjp;79n JD'}(@/Gr_  rVr^4v*%5=rG;ҮSV6{sKVxo ΎX@Sfn`58OT_;W`гfw,6؄YMbp, g9.8D \p Fѿv`Mx W"a.MF5Ξ"f0}/ !3"2BO2>֋D('ӌܩFC^sAs~F1Mօ1VRTQ/0WBũ!;p' B BCCFCRrtؽ2s(FViB&|HH`Ҟı:e+K28i` BtB}K[/ vT<~  vxd-)&*NjoĎKHo-рts"yy&U !r<[h5h i"94bb :N@UZHm ~ ~KfeSFn2|U^rUCp@6C"ڰljP FJQ RÁXM U%>فݿʵtjh4{p2"Љ3e^i(7m#?EƬ (]TI 0"A.V$2@H6o_#",2?AV=86dɎHҗ(?TIL8,DER8K/輛= \g,௻מVa]seIW.X.-OH}+} ށR^=Esx vJBm҃6du=0ez#_ІKw K!fw'R9S5sZʗDž /(|;rElPbsi x%!Fw?T؍p q-*;'!ҧL/jY$TWb${LC҆w"CYvSml}ۗmߵID5‚D@/3 ezEbܔLqg6cۃ%C7 8[$PV*JXRY)V:: Wxp p)iAeϕgXp@sOr GV^%V/Xqv ZԝrY+D=Hy$QT+\|Ā u0L>͸&ԫFF6Щq<,]@*™ښ1 j:M놔 Ȉd FGA1k/ϡA, wC9RpxxŹJbWݼ4ڔM O/"D$zyu84&PpY:х1'”IR),sfS*E ^`t褖K%Q#$ oFN) )-R_b4kN/u|:7|@]GcKh~D8ieD(&IqwS(@EiF1 XKZ2X b͋":ڄ9x9Hxc"nbX> 66*ȚPR ]?re=\0P5p.' 1p-K^y wfG©bIEbۆꋀ~$1Zr/Rj%K5@8e3C`S,}51HsN4 wh'6AŻi"c}3XDz7.,vHٍ"M宺$wݳV_ keyЯBoȅy-m!6ɨ e$5õhϛ(VG'4a~W XmaFؓ:#7X3  Cmqs1Wsx[!{dBg@{rȕe4\{q wx>Tz܂!oɷcuAt^5]hK-Ru8 _>&tZb8S}h/HhLDPx lt[7Գ |m؎|, |4̠Z`3'ϫuCm ifV ,iC69^uC_6X%:P_WQ_}CFY2yqbYG ,CR@ ",N,/߾?,iw+62V7ϧOfi~e&1~ݶfG٥}t>1wfIiBl{o;7r)og~\#gL )IFrh7 lT܀%c\!)N=7'@J9`I RH f3WMmp0y(Sp ne}p0XCtЋSz1 ?x[|A!v.qgQ KzΪ.$scCSNWW &HcLN9-x蚓 q`e ;bo`JaBFԚQ/cxu7MYfp|(>M1 CiY66Vԙ͵x3fbdM#JbZ.CX2rry{BaeKAa 3@ɑMOW sTdg`lլ!,n1O~|%#*?sby} NdZfPlFkz:σu ?C _|dę[v#0?HY򿼯0W~2 i~QI{;V0B6GEkvע1g%Щ5K7X3[Aq4a؈:B.TagO|"vs4]^UMuUk? N1*,ٟ׿>訶(uW+JPsک]^'_Nvɤ+D*iC_E^Q)d ]/DIEh &D6ӢXń"(lXt ) @Bf|2Mչ|yc 2?;|!- a:S/I^_E >#%4\ nY.=v7NaF9uBL6~W_M]^.'7Ѵ+油K̶>I#$l\@4H ;$݈*o>_Z.dZI2&R^>Hnz%BߡnbHJ ќBY =ʟR#JAcZ&x|jvC|`:r8y60+aĀ/] R RV>#XzW9S !>yD}CWDjҰԇQL4Oģ[R#LC{ +b-2EF!T&$$T JT9g[R4+rYE|taeDoe*V R?z}Ou3*(ĕ@0B*n)}*[WRgrgt.M]? ʊV 9"aYq9_]MԠ`b %lv> Cp:e`1c-Pq iGO)DR4zχFMuә+gْM: fn) -+e_5uߞWfx%Kj?T[IRZyZwUBөO]wl:Tk]rLKɉ ]RZS=Ƿjt*l~EJeI~W4% }> ݤ~s܋p{%y !qm̽4۴7Aokn$m|B'N #Z?Ww?_cﯮ[_!۠A:30&> 1}u}u:W46$b>ow޼pa: d6_]{a;tD4?e{Zt@Ȫhg-Ҽv=\C#9( wc\^rH YE<ƈhonj[m/{-w2_;!sŊǎvtJێx f)jnCͳn%`8Ш`ݔՀ_ H0EylY}=<ͼ}sβiU2w4ݩ7MޖbrQcUd@:< I_h:(2 ?Dd2m;v:vrlVLXGz6hADI: 9Dhq7>~>m>kh?(7ןY8OjO{ [='S0 M931I[Wiӣ!`7~6Ы{pڲgEtx#|dRW-+Ja/{2vO='c-j4,+1.gpK9GT@Wigl^! R( KGq$afT0en+Vw`qdhaqÙu>{Laˠݦ a }7vm BxVP2bćuw gni@T#@Х"eQ['2H4rARwJ%WA*hQ0Z-͵>}L%f1 Eg~9/aHύ-fZIW,qbno>?fc8_/gFH03D߆0;~[?[= ~*+An9yc8,t=CXi`)oDjD(8zO|%m@0 ֓/$ڏO4emB`6yr({?;=E ֿ ntNhFI\I6Ls6]gN%v<1I na+~hC1df(O3W۬=h OB#g\>HӘ5ym?ja~6Xg%DovZT nU\L/V_ b`Ǘ: O/ A.r\ՇR}Gp%fID )}ntlzZfQano 6v~#GjڦYH+1c'J^z1'+xhTÅj@ՈS_aOQخ=TYlYv J#Jo Wz>ȯӸٓcb?e[[? T4WiH)\N=ձ̶d5 s ZzPf3:®&͸f[/{.haf%Ϟ\mEv/ "g[/;7`80a-W)~/ J`gSMoݲ7>&7Ha#?N`iIVO󑐱%Ĝ^U#gU˦^!'PeiQ-.,|(ǵA?V@6"L1?}Tï>(T>i%|S[?[$:g 9ZVsd/.1{w~$7K-͹ۆ*X1.W9RyKZXe55(t}`Fs,ge]M(|9ٮ?BkɣACx ?\54klD5hc0d;mV[q7JJi8Qf1ene7g %{|$o,yIDp:iK3y掴wNmD^=8 b'\{D9_ʯJmF GΣ% b6R V ԏm妆RQ8eե>}6:2O0k`4DxY=gadJ Q#u \AYX3;ms1s[=xѷw4u= 7rY.Idu$=*YfY#ϼVyCr¸"$olɛ@cL.Io=ЂmlْtBDyy#(TOb"6J7auK0pO%+#7Eʠ C#Ih0NA+IB. 'ͽ,r)%fSǚNö␼3ul;DP"P9reXٖ>żQ\(8͡\M=)@Xq>װlZzQ`u̫Nc ٖg&LhI~l+,DZ~jD px@7!(&_l6 DCkz8*÷^%Г̏lN&%>\j>h?X9o&AfUK"sߎ(.]I_=t^6*ҍ:S 6]̠=ʟMխK`?n eUbiB_>t>S5:ͦH%+ôO}r+M:HN:qZfǓb@"GXUR<#8p\9's.4?fG_nsPԣ\ a`W)P[f'm?t`y= Mcv{, wv~Xn |ؠnW2 cQ$~K{M*v-½ 'q֓rpWE@a[N\2, TAlK$ z["&n6`],6r\`. =d62̟nHpz4L$o*/ysrv-cf\<dcxXBxTD>$73x?yb}ho߯.XkRN|갯힙ʖ9]g(('{Mlr!J)g-ē7w*  az\F;lȁ[u8q 6ڊr]Eo V \}âɛ]=n:^BH@= BzڲWZ81vOcɸ]#+DpB[ӳåNndF^1p)Iyř;P䟨RZf;]懕olNlӖR:zS׽=̛bvSNcO[tWmtND P9~dFӊ:u45l/BSO_?;O j0+^p(S}^t76ܰ|XL|y.6PE/x;5lү5/'Nu]ϊcI&)"ݹỹ#7\0XRs?.aT6~3O ]r_W9 zwz_ϒ/_WA,x\2+ y3%aikIɓ^6xو~9a|nHlT`VGZiQŤ!ca*P5@t*"Tˤ Mg)p?k ӱeݠeƛv ~`=l8k4 Z?/m6eMp!N~txtcG 3Ǔa#\%YXpk)*l%9gˑ 0m鰩ŧ`3Zff[*Z]zݔwQz&^DtoYyaUѧR3͗f6qWNyI*ĺO,<@ ɍ *, ?r p $Vtfgp@HN*vt\bb{;|iuwwbа ;PXBob3Wb&LD2 0y7$%s ={/a;]U"wW xi.n}&` r6 #=ǭs_2kֲ~^71ٝ_zhn@6D&# V%\+-wo_ĺ-pW\5J6et$L WJV(]7sLgE3mjgp~c(~s5J^9EU^K!8,1+(rC-+>Y]K:SraZ{Lc/]c ؤ#mW" <_CC}E-nttXȉhԈ{փw)NEe2 0-%cj*d*[s؊9mfN[1+arkk x+n%öUrS*B(\Tc/"*~KEeÐh(͏3r`WNJ%1E{ٻUh+-"J* ԙ bDz7B,%wD;X7%bzfO9#P194$#8Zq7ki]-Nbi7̵y|ry[Nr0HGYeR=wW먿"CpIMWKok: QkYQ -YasVrKOIyzU1d6<Czz.[!'=0 2墔 q Ahm'񧰮Э7'10k;UϞtD M뇻DTP"UbpP9#9c/Z`$4֜'=# ΄ZIefT8J~d0u4X&f9t,,_&uam& :gΚZjs:Rngޯ)#UvhۈǤxBo4]-~:k'|ʥ5忙^}6QNju[fY&9۟٬~`F{&áDI*6@D{VC>&H2`[9XlBnP-5C} adAj4H)2dhRM0}Ŭ1Ɉ y yyoyKɾ }o$Q Z7Ǎ/2Sc}ؑ}]j͋87+пY^b+}񓱀{#?Zz!8\ԋAulڷd c7EJuiL?cÆ%,.0~ZO1pB7xA]i:70il>4f D+5poP?ަtd=DS<#VvqeaD,>HV2 UK3c\0D3U%R7!. U`(aټ5D^FrC/Jg/9O ߱Z2y.ߑm13mYG]'j1@s6wL F 2ybX//P,v^",4 5&UirN ـ,iO EHy{PϞ!B.*ef \˛⸺Ҵ6l*thѳ[0bqIVٹJNg`޺q~/<ߥt~JfjTrFr33/;U&9Ӭ^X&`8L"Y{8!ݺײFveOi]Z;˚vi*1WXwEc*a*cQ SWɧݳLu`C,D,زPʪ]8Vjc5,{vj ^㡦`mI\+7ISgCk|TfȤ1B;OҾAa+o;D )A^ ZbaGNُ,00a i1_v$]Sx ##zLa [(l* <*&vJ y$2ZD?pv\3E=0eI&\pnJ+vl"/C:PN6-No4qA]t\%xˤvy|Yx.^=|;t`T0/?rQF?T5` DwdR`̇b3˅IDօCfg4`[0} };nL6'!#2\}=Ӂc:͹CTidïB 2ݬNtIېۯHJp.*Κto\P#%X*US]@ynNIŗȅxh2p6%񔞦rï41XS5wV, G5%lآ|6#s<ς.w\1_X1h~DlV&^d&%@@/K~+v1'}0.xxU2Ó#yu\fRK22@0dYSpl7^:vRO_c.uZui "n9>v8I3(>vo=耯'_rvR|( +ZTakжNP; t2vWKTkXȟ$VvLNbwH-5Q7ɟFH7m!prOψtB[\X@qm]NQ󰑶 N13ncjEd8l).Wg09U<<_j(<帖 .f*ndExۛr$$e:@Ih3\KNiր<P 0h̞qU0_Oyy[y47bg]?Y= .3irx!Q2D(M6EJ1XAW#Sz`}[D z(!#Xсzg8Pn4err) $b@k. F% 8)Hצjs68㒓q!GO9: eJyP.Fr&#uT|U-i5.=MքA.֔x1#seA>%ԁmmr |,GZ ] BٖF`8%܂tʯ̼PV%p63 k*'JEQ'S# X\N̉) ,Y~t wJuOhG$r|r䐅Ty2{W@֓u)KY͇qK `kMg#Y1ԈԦsƹsJsCy}uT<4ɕ亼0iX<25ȄEF^y+KZ"~d"]%1k /iU tu`$ql7:.38`o^gȎ4 h-Dd۲~ dȉla"7RTToWSzE'2E ^f:yb$[KP+ɢdد|h m 6b턑8.c&J8v)q.Y3 'R]M Bd&=P4?DXbJfe*Q#~PMAX2lJ+fMxWJдGNA@oB 8Je4$/LV"EêRJ2fSc*(2+U+We/n@J?Q4sJHKaY0CNBb9T.bLn=扜)L8|TMؚ p#5I+9m) s8a+a*8sPxZtS8#/&5 ,NrPU9Ğb\.m@u\{9)M+n6ϗL%;ɨip 5>2QCF:Qvtrȣ||pSZJkh&g_gK<2h~~zK1TT?pF6}޿{wtrvՑ! mFf/9= 2.TQW'D~$6bcHmuhJmȁcM(Պ4#NO6R:k9si?V?\mZ =\wj@Stju)@ظˉrJ_ IeMBDA1Pa[ʠF,Fx;$,u,8s`t뺒x?$CكrDB$Um`} q>:8N )%pm3wdl=l8Sqo4oN7'A|;r! j-s+ ΢ hQI KT3m|70i:/|1 6JI{XWz\y*Y` k 2b%*GîME;њĆ2];eꞢ3 L}q@vEdUe9;WCZ7*WylyQ z.ã~^Y_ܕ Bzp7ŀB߆ 36b:Ib#>%0O GVG@TESt2ԃDž`[pf݃Ujm] [fdl?$qG+k חyybXk9\n,3Ҩp.i=wۜ.>Qx`yeib}~ޜ:Cw\("EZفw|(Ez[̨:5,iZ7ؕY\MCAS;C?19xWG/7O柇n?~ϰt'l<>T<х!2=^`g>! >-ÿB!btcNiEM5(u@I wWCUG*W,+N ܬv,Zr%͗w|e\2y݇{~Ee;1n^SO ù(ݛ%g3='ɤ"%5i6[H-*QT_# u9a*W sa>^b5Mq]m4s$ik )x8&9^Fn(% !|Q~1DV&$%-DO}(EN~؇{T;kW|6 PE`EirqA` ZT ٴUqv #ķ.x`Ӌzxtyq;e>7n?T 4aaBvcTvH^0gI4 >QB4ؔ\2oaPvl?9A]P"~d3 #:aϙ^4#YSL̹cFöO,L׌)c^M":ۓE=̶6u5HbΒ9]&{t#̃JxGr8)4t]U#Q5O*Ѭ Nz T&D!@E{QqjN-&MǢr‚jȇ:&_?!M}?hKf)f#ǔ$O_&Kׇ12qf%'x^o-}X`I!J1359dd @;!KB@^1ltÐkcXP,83-qqVH9-*0isag^rRI?41rgF֟y+߮5:`DKLʊƇ; #%Tq TTXslZ7T }E!]8rbh]B0:+7 ˰ Ԕ1GsXfp3"O9Vv9@ER-G4CWk D aROw&YTr=ohOl&&oc7љ3ox1e/q$zo5$C8JmO%kD383`y:f'߶> p-׃Gƹ5~}*3挵 RrAxDJbGGq!@ |\blGg}Or̥gXS4P,F8YɬnS)<"@KOPVRZ,hZ*@=ҽF`Z$IiJPl_'p܅jnze ZrͣD>q)wx^e~%DZޒE2"Տ303^~ HI7'<:UVRtv''Cbʢ>;P922SO? Uz%բ༼6o>4t>h ʔ|hfd/İq]biU)nr\E.?t51anTD Z[֓A~c#c`Cc,\0#4Rv>K-*- ec]R)*2Vpo t]%mjO& XbH˂`F.gF"D *q.t̲Tm; @|0 8ÎvIps[t F刭b.z>YPw ~aRª_"1nX2sA1vuݤ^Ybrޒs\ܲ%Q҄a;U*m^4Hx:&c(P| *ځ r :+K嬽[/J9q <9 IJ~gh 'E3gqjObب%3y сfFQ@ s냱Wdj ~ +"7߈^`SMϧfSY/e ]9=1nlX2eS* nl8Vzj5!PY+ }-꧖̿H|EKMbȽÎ= Ļr玵½^y Gɻc/Q6m+i@D/DŗHFF%)ghbݛ+)dF@>1YaM,L _'ֶ ; !6yay- c4G6T~@yd!BEYlRv.Ck,.Yx*݈CB7.g$ l ;WQNjT](cZBi`- Z l^4VU0 3k)~diH%^aȊ}`@Hj-Jts{Voh9)!R񦴋C` I|6!+olyeZ`GbJ%*R\v^TFDK:[@}l&nR̲h&Zd[4g|c =Wb3TT|4^#KT%`yx5,ڥWKBMj::LZud{BWN:B@l }T'0Ky<*|9dAŅ+Ϝl#˯KԻ$2&B?%@}~>".\>M6@ fﱤgBP|e 2c+RΝE6[)QъZR~zYDϼN+#QcY25:wfH;[_V/dv\Jn=1DQAx\fױ_ɒ!,5B>7F̂6@ ݚ'A)CDmJ+Q#2ABA4%x9Հ]/bQZHFH &2`tFO9=NN@픙͔YZT Z!tw~uA쳐AIwoL\6~81k8Ǭ.FG!V~ uc> Gnlr|BR[sq`6 9O3˥~.~tgYl :[wR+iK=rHvx/ gt9@f3G^gB8KcJীEڙS3smF2D'yE@[?/ k̾ \\ )Mt1<4P[OFVzIAGh=Ř &9 o녭kiף˃9_,~nUZe"PPRD/j;M+ЃLE V\:C@T;35ET Et| d'=ÐǓ`췍ts,B{QUcN(G\w[YD`DžYi!,a^S.PdOْkfl%³UivU& UM.S@xr]IZ3`&(xbq]d45K3te`!b)>fdT^{u܉e=ŧmISr~E\_ ҫ<ђdu=/Yu\, ` =GUi(㹐M~AU͸*O{30zv @!" q*jj& Niq@:`1=4hc6j:@0RGX=VGwF\I=>6AعgG$a>~4<#p:4&0@\='IsR L*\ϚLDTgVӕҫp2"ڝ@%}?ivJˇ-m]Yv ԣIݾBM-3\}ql$eN)#hO 6=>}}Cءo ![$8J:,UaI%C1^f*@?3 )y\YCǠb9W;fc)c:܂ k!ynN:Y6q`/D1 8UY붅AXF@^ftBռA.fg5:h4:Z/Ⲭ_BpBzR$XZ-tS}4viSTÿ.?u?Jsr"9i{ Eֱ>I2y1%Ί+*8%SaFU6x3/eT "UJh 4&W?? dv6u}vb`%K<š M kJ/G<5㑡&ȪyC )c Z ʘ`WDUVXqjhc5TNJp>PrKze04%-2S bO[nl*i=7s hRojfXFH|fF/pò̇-\Umfz2 E`ӰL庐`N߲6r\˝Hb_eC\Q\yvb]{S=ӆF%#=Qk5e!w$7-} D"# G AnhG#ip#z(7.U5fCf4JBx|,>Q#^1{,$|Zpo-TЏ[줻ْe qZj$nSS$=2РwCE4,W$ROKrW7ԃh CATF r̸6IPb(\JI;Jk4O*KJEwH I `#bIx cNBIV*t;o!7~{D=yu|_/R689f?ʎNyOg_XmլOG'g\,M\'01 3z'Dn߽38~ud|#u5uJ7; $q,ε%Q҇PjyChi\^sNJ~vbd[hlu@Q}y9~T^~Mo^MӡmۿG>h?̶~pK5Rw2OaAY1ʋ q>5̀ uiAG=B8.P*.7!b k]b`%W7+Koe<9"48 ߈,)‚d8*!bGcX$UzCo+aVw|X3WULFP p}ӵx/1t]t]AbO2\Hw5)]IӇУ{T?c@l[$k{K~̌-/G p|kQ;C$ eiYV(hC4I(/G=#=~MKJ8+)>b;߷KQc/-GAhI+**]ָ"!i09\ٞ骦$YM{y+ 󚈠P10fNFӥ^H]2hvT"kAgMgt¿Ygq7Bq52Zl`tG2/PZI|q(st$ $/vzl&¢2V*tr@|`&q.N9PX]cJy([Dңxۺs'|aaH" Z°IS[{OJ~34t!.ۯCeܴo{Ky7'Ak |,hw'dkzm[%WJoSdXӨ 7{:Ȟ$l/K>C=04oŷG4;ZcǚWXeecN5RxnirqiiTvMzm10#k\=sdiJjmmjX"h.70lti$CX]$RRBzâ2)#8da?,>`",C02uݛX3 Rd'(̉D~Org +:4E*N.7 GBq%!nYs~ rMY \I~#A t9!\9ʐ9^4E5'$3 +K7-&"vorp'ڨ|qlً'φt |'}xw!8 ۮ|‹KR!У:1]t4O}*:#>5Cu<:Q.y(FJ0lDk5gQs\|]Hp}Y7Lzǚǎa @Yƾvsp@ز2twrV&.' s\<|*\gDm@g ",XgG ^mRVqPnF߈Ptg&*+2>9b>50Q8m FL&O 3ump>Ulye>w4 H0/5K*:(Hr(԰TNo&RPC9Hxs)cNr+(3PSX!m]e ^.=811#cŒ w(8m$O3.l5UÇJҞ$\Y3q߻&^?t\#e3Y3*ahg'= i >F@%ˆxƋ?LNCA7K0W5v|WWE͇ysaD+b VC0 ˷w1 RY  > u/@rnC4 fQ2j|l" S3֬nyo@6ax2̡dd\b=\hH7k'tfl x d׼yM<ymב9k7GlNiKCP5׭k=k뷷Gu!t7]c0LSf3M Բ9يAWx |!cp$me_5b=[3bx*"%dlЄA?Cq>EoQ@ -=C|xlSDИhb>r!R)Zc+g,!;G+*lK0~ @njKF%d,@FfvH6 P"o h۔Cs =xϚ_;n6FhVwd~ȸ?$_2['a _hSVYFp̅")ݙa4*@ߔ#qEn"V 3s^:'RUk%DL"w2KBM?z_ ܘ˳ F7?nW4V.zxKY EB{3DU-ױ)C+{j#@փg=/&p'hҝ.~c?0gZb/?ְ%I00j>yex u=f'0=g^g kF0rwe$omyHt=v9!Uc;vE[Zo?N }Ȁ;lH⼜HG)="SxQ={ƹì5>; ֔C@PaҰϮ,`nr1O*ϝ xȻX >͵>)wrhmvN >I~_`A Jj;`N6HgP 鼾y{{7 ?=jn@sC t;>+QEN#BQo䎑aiqI)츰|iݱ6{ͩ&k_Sř.i']G ̩FldV ,dkٜ~0fY5*6S 1xM7e `xsbl*\ǼD#I hR՚q4!$D4_oPM8*Ǝ^?Eqzm΂t$958* ]|=oO8=9x 1:k`?A՞qCo<&.N99Dy4Y4-:aJgvg'|[H#L2ycp6RP^\MZJ^_?Sϟ< f|<_ڋ{ʣYz/3uk6ecr<_&H+>JWj &Tz"״];v8c t{J7l+Z2tUj6fn*sM&iR=  6{{SKqa|uv1a5ZٗkUa.0z_4U2] 1@fbLI :ڜ{R|t 9L/(;,%u/,z R[&nOSvȁ/~IU}Hn1S }w,atњ+mUZo?wiz/H6P,,%҅cz K"ce ppXr1WrRra=gҚR3o ΍Fj#hAbEnzD2QY )/N |mDp`8#@ u[pѶss`% = 3(g`_Kx:*(P'd3F󂊾VLS p'%rRL"?m Үj+. DT0ʋj&y^aFBxeN2/xH@j`\P`$)] _(n36bsP% AZ#*C^, ^'uur#{6;ul&+BܼXl@(hwe4m9D5q͐:U:la4Ϲ`]Op4B'6ǟz zG:!ϗBt{mOb;&~ xs+*Cb Rtԯ* ˇWP觙lƓ݃llR&HPU'MO(&O+):OV tO+`-OYҺWE!_d#yV2[lEv\=o,[ Q}Z/$ۧgSqd3w)6giyY*ue+~Y9A{ݐ6ÎsM%C6H}Z(T(#`vV,|~B]ϯQn_)7'^Yi/z$Z>M/]-v_8imY7KwȧyC#Bxl))@I$ 9KO~>zmɀ5oM|X-|.\2^dͲEYU>lgy5+G$v\j\Q<ɣ]G` ?Ҝ$_d.MF}Xf:|0873@>3zs"WCXIIٶpˀ_?a??ߛCwۉOYWuapF_WsVmz Gf]7BeaPQcCabԱηI|sI~UE_e{`%3?/ M`g<òAcDx|Nx v[-YR3ϲGg@<`l`|@ l+1fRp˞&G -'bE^bTM27CTr\I/jge>2rE}BG(Y?y"CU|T{ԞGMv?>s tLjA$0VLN }ZDKѹ^"'Sߚy8,aQpp!>!x`FIilrqJ̪!B^ϼmg )%{dsLJOP3##)%2, 5 a2=iꏠǎ~M1zI`DytJ`@5wi=1Zn5m8Ӻ)=Q(\'c0JU n<>g󏓊- abH5U݂Qtsq?Dž7C07Y.hQ8\h(J%I"0;e7"W1tr}МS3f<t̐m?"z}i ȝſ7f /災9gE`8I1x.غ,u6\ |MAR+$Dk`xӰ`S$TN擸ϔ{ =?p8p:Q Ѽ-f۴5b`~6#(Etc dSa6Ÿl&j{57ǝE_A]ظ_1R+ʸhsv4݈:_G0emcsg_F:G7=y,4^l7rx@6"m ĹAaRx(lῊxZ=C{ BqǖIb'GYZU2=vѼٮMZ-xRjJmjUvnx7ʍSghbA&6(ayPQ(̃Ys֥"9}0׬d^h'wh֢n5ǽ걭(laR%<6%M8eifx &9:OcW $@!;<Ux^)7\t|GD ]B>n(850zx=qcHkJٓ j'!RsO}-DU,mA1S ʇXF8b֞S+Mi*;-1A*s&`q@<  Sz&`\N6ڢ`hpkndH$eU GQ`U4%,P⋰C?$CIq=ǀeRPIw'2_C+ `m<.ǀbKn-g r^뢼&NC5 +(.{ۓ^L˥+o\ !-w*vc !TT=A]+tF6X.Yxa@4tPWqrZUmp:kFf=|c0,bts)dLU㞪@P?1V:ﳑ_"RN|B%kP+hLplG.a/WZ{0?Hp2qCZcW6zEӃ!#Д o/gr -$ycΡ0h_SeƉVa8TXw^. w0 !@WX|ɕfA(1UfzD_.>BNB'3l>@\loh_&H^~V_1˫yntB t=w]_tT5.SwTGI!ERGQøo S@:Fw@jڒcBRkd)7 B+s^Ңl"[PV b7cίTB,p0C7P9 -d}[4֗i9d|-mDg|ަzTɂXޙ0wYʎ1:5 |@80Чe&epva35m\#i[ їٝӬ-(g ah'3ӳ] 1 n;Cd3ӈ|`p42)+K8fok&6"۞=JOb gf6O6`A\ಃQɰ*!wf3\OTr0}\÷E9fT!?'uf\?ӕgP+6 |mPv}p?`5%^[lx) LZD0En@U&Ev>7Xj MGfЄ]i=W hM^`Nn BV=>by&6->AD48@oTpCu\/D bQb{n#jQ‰Ό8xڢ"MTѵ[àn'NAf9Œ(h-ڔ[I7W.9>'lԾ|XdgQɵ(7jge^52AkH'+s}(KR[\d[Gc>|#?TP:=~eD_nDz`(_@ft ~s@rR  Bٟtʜ0 EDU~gW-lX"py^66Y1 ɍH? <~[8}m(Td]]ص{Zfz΃/ӡKSBbw/Or'& Р3:a2XsfS0,#f ]}4< /PuBз +'뉭FkÃl1T.jBpTjVf{ņV(,ƍ4d}1~#K 3o:& z9[]OK 0d!իB3K݋t$OR.b=%`4.-X P[@4d[%yً7효~0la][1I?>h4 I*N}*GwPe1 xIBfʬ͜K68U4d=pQ_%)'4.R<]%^{ &^( pSݗWMN\!KQt򳞜"PxW=x#U`?wr G6֞îrgμ(2'^&\K3RE@UsNX{#HCڶQ@*ZzJH̡AKh޾3a%5w`#llbT!;p0nJ֊pPp4"UʰT~͍ay_j޹]$ XBi>@xD18x= 5lҫD 1Nd$;P[ ;VY3 0 az\K=(9@$0 _KZjG28A)_TE{uWFƒx"aavnZ 8 (85喠%9wX/[Om?A]i\D^|+E:6BqݚE3?Y -*6}ɘ\(H륵>=KbGef:̩#>${\۩pWѽd'+)u* ux, 6eS(ҥGALl]XM?Ϝ6Pؙ7;{y}Ke-+sl0ІʐgC֑6#jg&'ݤQ[=G{UnȺvK7Bߗ8w/y*81b Kamc@!5JD 3+4dd&BNbS̜9s=s෵2vF@LZ@*9k[6ec[6El<Q&F8WHeٹ %G9I(]_ư\u:F4A\'|IcM?b̴$k}Ӏ^/~+dJdA0^T#)WLK +hy0V3O{v{Xz.(j#ǒ!ve-yW),MOa /e 2}IH0K }'!paez2&Xh2FL(tD4r{9 H(Pm^-]? ;|f*#x$Y [jʄ &(ce؇20,^DD7 <ʺx p36d AaTR$TdULj+c{f|XfБ|f@؜%RԐyՆf#b=_qYB4PBKW`לV_!E'`f8,~4tv=p`tVNwk7&$S||&bUxk svƅ}Ȝrɩv@/E7U'6N;bI$yUX-nAb!3]4]݉FE{X~pv"of$B#"E'thGr>,}Z ' F`ЩwTڬv ,"c'( 3돡0L;$D0áap4@cL!vO]?* p6K^ B<"Q"| ({a`k7d''dJF&S!RŮ"kR\`Y9hßN/_{$+<|00t:J[ ҿBLN/k:N KH '6Oh]QIsGP:PuUUQzoeZ m$HލF\eI\G8dϖjgp8#Cz^X ).L쌉ӺRʞVB;ˇŚໟVV}UI~0-PQ~Mx,>,cKvPIQڗKHN=oķ~QOr%÷ezJs^{mG4Vޓ7vɹ0=<Ȟw/߰b#JAwʿƵw./ѼӖv] b!/SC?<78rL-' aI n2'f-7Lx=vvc` IJb w|y 7Y8TAE=Jj k'H^0`RJE)CdfQYv]sPDSqXcP=],gDHRw(W-5SNj>9>CdRwg &I K5|` 07DX^@kGk@n$Ȓ "yt٤:QQPw>qYqm11\ ?,Xߕ2Ej(j?w6t0epL z{aȴ-8NCOxM ]C0sN$,6ԑf& 9N^W0aS.Adž0[vapb4OM4p17!f<'D/`濋dzC)ٹف&{?],bk<µo!VUZXl걱3f m8hz40s2?ԃ1$DŽ  j*y_:9r.{q$)&emO+plxNB ceͦ\C0keiܨ X VyD29^rU>O0 (:m5wy8GNU,ɺ+ݸ2 E=V|SqMG(m HVؽx?l[(}Xh§Tb`HQo9.9D@+h3VQ'FG)z%MYGU` s\\\:p1(`p."}Isp5}cuyheW!\104 &'l0^@;h\aHIx"ڧ/[;+`f41փw -1C,S%~Vb_Eϝpc)V{|< 3 HMґ%Mr_!KOz]*}cePR%YNLHZ`~Ah0EXmP)ɓ?*) [f!۝Q? dA/(3!}!yO2I q>o^OmȁdM%bb Z%kg7c\ ~Fj[2(F>+' k>;I!a/;qY}~}*<ÁM h!I)Q?)xF61֐j àh Vvhjx~l^eh9  n8g'41*qBZ{@bc/`vhXޥp9.C]Z=6pHGpS.ܤpb:D;iVc MˡP~[. N]L+k_Wq՚Zg"jCuo\Vx, tF5zǰ:!j#V$xjr;{,0G;4a?1߶~Gd3Ʃ)+[]#hDdOY'eO-H$=|' AQ1 ݃7.raro#VZ%9b 3QCx|2%i`&\[s<ӲLVm gZ&Կ0 y=,9XO @*yGTs."pUC_0en\Ѱ3CЕ$}c E YF$7H^&0z&0ǑxAMU7sy?e3R6Wsɳb|iӀhA_h_Rci,ir @1GHJW S+go@In Q1#HN̢`(UA&._Ws3,wL,̆]L-\ _Xá͵2Ԙ!\nbZ#f:))_D!{ȇvi_,,O /EeS I+79 =Z*7xa7_,\%*ɞscQDEdldȑDG^c[Yl\ K U%> B'.DY5 D{c[\>P›!! "/X@qߍg&`Bv]+8h n,9v]Wˍyo2L&6PQ UH@̫1II IX^ŀՌt &5= mct0iH@;U* I@fSi8bz- /xX@jNh+AZ)%2;֞|RbU% SS,獪lT]e {YUJdp\iHLB#+jJ+jV߈sWI-by<.ҲdbҪ#6-|iM"uq]]1Y-6- AHyNY >[}>m^2yA%~?P{"k\#%bߒ.dP"^O3dB:`H<>ǑNy6ϣAgH61P4"[4T5 !<]Y+?K6m$ *c0v r&ɇ'&V3-%ڦU ^Պw j4x L[[W؜+5Cl/=~lkr2l&ÁOlqe;m'}%QѷY^_F0![oS_ѢhM'r [q WUS-T ~bdԜܢlj+JQw{b(X^Q8hKDE0̅~TU.Ӏ[V@ :n~ Trgz'NrZ16aЊO=h#n)7ǃ\`ʳ · \˨DI6-4" 6oІ,i,b6{k,{QO |ڠgj٧RJmQ׈BRV=da `#mŵ7*ZohU`O]d ?Ѧ` /_0>LƢyaa+U)F́(ٱk 'W@T""*46_/wo7 : 8XAeYSD%,wX\0JyĬ]"(5i,/ A=#6f bD|6T[Uyf?/eXWz,o'C=ۥtd,_^|+6LD쟝(d#1:C K 2nZ ѤCضTieZR3tvzC bPOƾ,nG],[hblvO}mIETJ0$ĸ=GԹ|>X*Pڅ_ٰ Fr]Qjk`fd&<-?tjM.ט츗&#9|fƨOŒ4lHpb3-H Ns]> _{IJp _9rbf>"Q@|V] l^K1*K`K-YY -.WV Em1ct&TFUˉz;}aWX҃T*_Hlq/W:q-Hm~>`0sTI 7랏=]-VoXvN8[9 94Nbl1$@z4jnif?9f[@}=(j+{ݚ›#@E`Q%Ф|$ IZ2uET| d1Tb.$<|{ϯ2_}}>~E*sB'Sxl DS҄+KW8zsGSf"?jutQm 4R \\5.ǺJRzqzNZD^IΕژDދYh$tVö^"}*MBg: C#5Sq+a^BOQcǜJr%+##ARLK␌,~QU0-P=Gq6#?]>HH`D:7\i. Fzm4#m{bw*I˷U5?`YM\;-@?3U|mnRXeN^Nh3ύCԊ{b5Z`U4V3WYxPZ> M[$g-7pu|7\Iԗhʕ*6exbB= vv'1Mק%GSg4|Uwb>oMݳ^Gp?}VkOhz6?|?kod?@?7~6ܑ ͼ?\QFh| AXMk6 ).mv , fW> gǑGgǀi%˼‚<ﰂћw˲܏Z_g |_0ֻIm,:!nᘋ!"0zvUZ^g4^q}쾟 Ϣgw<\g\K+/w?Qj?,ZxS2BeCBTPNQ0:H1'H:]o7)Ԁ_@wGt]~[TzԌ ߹,墒9?ٙ'SR rU%eb:gg,maZf`Ljus@Ȃ$haܵH?IJ >r^66 uOW% Qe'U狥Jizze` }+8xE]  O}p,72Є_.c7|#i-л^B+ *_θ{M JA`%&38JXb;ZtP6L,!C3Mg!ROI1V 7ٖ nRaKѡw)zvaYHb =m@@m>?^Rk(~YM"F~A>ZZRVLw3V`sA'tMl @>afB ` 7,E*fIO#4dhpxc`+[]7 vCEO7&Nʇ6J^F֬G;DHQ|֎$%_A3 d?Xw䂔ARO O^;wpa!]5!Rô"4BE$(I|n{D[aU(:-9ȁoC=Up>? l=q*I"^}G=hēR詆.x\gppJmX]6)Gi 5"6@9YUfc4,LtxHXLbOemU{&%]:`xMifM2 Y|g٠4wZ&jE<߭Jf!uѰҔ}]9l >StepqoNs?Iѱ^c<[Ϗk/Zs2 }3h>&X8įg2k5c9\ N0V1Aq^ z5`!KIqA í vS Qq=!0]p;w[#Nc; 6(u倓+^D4R}x7 }te!(BmdX,OC!! 477Z9ZN"DYڣd!V.2b)`zp[H9$RSs8MNgtRU8?\οzM^eؾ9\!JcY,g0Ԑeʋ^xE\g3:aʨLYee>=W.2:!q[½hF!IL"ؔIFO߇Le$mOd$_ 8|꘲TbҜf0G@_,6;~HVg{h@XMcqwbH2ۤPl#FX́ݕڊVj~Nl05IYJ T% r=j=Z0&ժLb`#+Wk^kz =*kkTYiEmUuqhR=M0ve$G R h_U(~)&I'6!TJ6+&{Mݬ@jK7VR,0(r|O_.M"{=Ǜڊ_Z7l; EX<dɩ9>{~ U9JC`o|_$!XO!;e%L.z[H0 J:#rJ/7m~ݞ{7s_>^z%>;iE@cFP+ BN#F=T,9˥kiw\ 2䀊wBxy,KR9j{u9s.iN~85n JS=#A߁.k֖l?U^rWP~A;pȬ1PY;;C*U]6 3g=L07VE;R$j^Ӏ!`7@UZ[;{TQ<U6*&Pi;> HT*.ESן:vgyYB[>4h!Ɨ??}6gϞ>{$Y^ P ^ f&^,yK#v$ӫolVu""0&1r?0Kr+@< b 1N#a.و N2>>wÉB \_r>WͽV΀Ӛi&qX(ˣ}* d8nct؝#? )@1m'$GT>v;`dHPC)L)b'PH'pZ͐jlA:Zz/Shx{=ǰ?F QHVpfk C]8dqhG=F^vE%xV8a!9 8 @EP/G b&#w4鄢8%a `4Ș "7&+MTO k-U@Aeߟ˫)@ShjHi:&Ig ڪ)paE ^j\5LR/{R#;kA$4=x3xiNr"o1Fl-4jDuI(:b S8ه\Y oxcND؊&M%iXE:iYQxs$"K(&5qE[y“ lG+Ýox EM6ZYlXFȭ)ćX,l@*IVL>lqcMQyd+gt3r\դ r~4BTsEVS9 r{lT4;X<lq,OY+[`6'˜q9lCK%\+*)ǗN3U;VkD6m~ kIxi= ֔4ywStԅhଊ#PlUU5‘·i(`6:٫\&T2wr}NdRVK[JNִYN "/8\;o҄9S kA80VQLf=2i[ΜʶP S$he&n,b^Q֤"UM5ѴhM&EI^(6`9,B&MӚ-tGxuZp !纱R%ekm23h^?Ɔ+4܏NiʛwmCTu|Q =y׏%xF? J O>W}SwTgDɵ@Lnċ*? bߑIRxA?AVsӠȭ7S"k^[otc}/dOQc CnY/W *O3m1)o:=ʀUYGX*e H>D E7j^kL-+@hz`#e0U%sB#s('j(\ (x0`2UMY!QӶ{Ҏ]~ZS.=4kjQNb%=vYNBa4 -lVWY[Ǖ|07.}y-6*۝I0,UeIoiAD"ÝBɏ*nQ0CfRPT&aNSAQ^Z `=dұ Yf "Xq @B8*'oY~^|C gx"T Xe\ܮ (Kc֡>=꼙89Zii?aʄFq-\Iw_K`nOCN ɜpͬpC(] /_=D)2Ш;Enf L~ˍO,ے;-DZ'pV##f9-[ X[W2& ֞x?` <Y,#r%\üwbYRV'E1f*0A y>ɦ78+ 5JvO{l}WR|}|w\iSI C>G.ޓИo3wR8 uOYV|bآ3 4rPnR0:B=kd D KW)@HD2{6ݐ.{}j3:Mb~1'If#u֦kK #g&6rxi歄v( Fg%wI Ö['㠩VTO"mYO!BjPk=Tke5U`v9kz 5/4}>64t #H)Ax2xwB6|o;?++r+t.vZl37IL},3hF .AK UPeU׆830LroKbTs_O t9a*>mƑ ÐrfrUi(⠐Ϛi^>a{ 3OݝZB JSwF$ ֤qIUJȗx>֑+zê.T:8W?°*G(Ӕ+o{18L`l~kthn'j?y?d2Sb-w4ߜ xjbaIVÐм"*|xyTY{0_Zvaf/dBPKٌeΙk7=3RxbQF e>7RV!uiP)Q=;b1BdO-K kxp9袳('oKgҵ7e v7!A61ܚ)X&gqU7uڿzE񻘙pys3=wPfCF*D=#7E+ {+jf~q^iܤްv:0Z Sf#nfcΘ,bwtj<06hoɱp0S5 {Wu?23iHt3ߐ+k7_I tr T9wK vN2Maܳ1 sYi)(/5}EznM^ec5^nӔk*4kwGJvk$w0:(kgmIǴwK^Ef> Mōٽt]\i9nW06h4T%$nsm"vg0}cJC%Z$8cETshVU Uа]/Ht|ol( |ȏ شk/Sm}A[_"tY2 jxNڐgkM(!?AByvmfKHN!YdVmg}(#+]+{_;ڣ FMƐgy}-Z㬦"W%{ܨZP6'P:Z\g瀎s'E:`Nֺ͜{т?6&!A-;w1,` ۦX)!Ь >2 Ex\TMEal*y{ nY=lMUvަ6fx}ZM{b5ޮ՚af5-9mì8ƥS\fNG^ݶ-{AtuJMu\xX2<ZfhpC&+5IN \ZNŤWmm̭G"cq[CܶI0]D2LDd;_§ZtنńW+H |Dv)|-Cpiu#I!dm+BH[!b+D|fE~!U\C ? Cj/-'XшTy6"fݞJK.2Q8żyS.?,E$dnO ی;Mx /zv`E j@*!w"sp@-mwmfzLQdkQ2+G]gy|c˂'@U5+9# x|Eۅd^B;}`xb.4CԈ6vśxVd1o, mapone\Id¯v>L0%f[v7J{C=c.#8}5yz=ЯR c:E6B'Tk&aABc@WۙہP : ˠg <В=Lf5E@Q,bE+5}lh :,ڠK!j{`-qА!4{ M%)06P[& l4+h`+=0`wGu&ȰZ p4MQQ%OF /v4nky%{f8|6,/|\H6*4+t9 IvGYXެ^^V9߲< ˔5᪛8.:l aCy1K{CErD2&\pT 5X\Iu暵?r^,^W; ӛ c令sǹ41Fӻk'y.a\ݤ<_ša-kn oBo#tF_>׼eI"(-2$RoZD Y{yi!X`ikMZӶִ53X"{+}]27n XQm!̗+UB36e\RzO8і#1ئ9}*0 9m5a c%s)n>xAtV`ޱ)CtƄ9K&u ,\"óѹ^KW-7H+JY?e3ۣ^'a{n]dw˵t^8&R#5j``>K?!*E)E3Yn 1 %jr՘.xe[plࢫ -͝1*G#M7z^]lEux~BWL2V Qzl@\3AT&XM1b[gopmdgƲdJ 6R/NL0bM)A, zhY[au4޹! ؆7D*$azƶ  ՜yk,u<h:c9.*I GIRgqtAuKbt ``)T$=H̝E)ETެ2QB=FK4YiZy+9g!٦BBl?̧-mLhc[x{Qv{+F7QG }=^p€C0{湥8N|_c-*3p@*P+2dj>۷:㣪-Jk#΍!x43gWj{G3ЪMvr|3-»7نNĿ]o8zpN^:tд B `ns8}uiUh¤TR10b:j2pӴ? 0ϑ`P%D/^EzZa3.KlTܽtg9;~{ ϯa}n_:K|XCn.ԪM0aԶ@td rݖƥ":L'?+|ҍ a2Pk!£2}e`TYLK` f Y送AtvjynbyM⠹L`{qs-^&ʮ&폲t8ّ^f#-?d5F]$cLD+]l/%_)VCeyJ6guf&\Ztt }PqES:3*HK]etۍŭJCh23i6d^:GX% +=f~k;VM::չsi˕=„xVcx34pyj}XԧIϽbkaI풚\D:)(ZjPqNG>Ӯ.!ϹH:0"0^;W#2d>cr.;r|TJZ.W6+ N%,0)0ˡ + /窀ۣGz͡ =.|b BP`ﲮqPWףm/VpGFH|gc Q=A^nG=2hPmm2[&6 _nĸ}k{nݱ|k 9fѸeN8X}ۉ7[|D6* I36h+a7 F%Yx4e =+HօM"Zg[r}"3?S(UOaᆦTzv> `Y+ɩ5PJ&;chm F0fFyω(uAM1Zěh,Xj4@•:+ن6/)`D&tf2&I@^* L EVRsN{'99&O $FYy*ZZhLgnE e!CJ V~꼛n@(bv]_i',zQL0! .J4!,T^\-,%?NYI@xKO48IHpvHF2*;5 y8]W3Xv IFHF EC&%‹ hm1.=tT? \t\Y䊿SZ;3&O$fg pԑIi q)I>/)yfu0  =[cmppM4d1V/W}T>0AԘb~0C+T#n2F<l^]D{1WiPa|"N3(cōR<''E촾Y"w"FKmz.8AQ舝)8?iUnW*k&f,F`qv5`=*ӇR.Djf f  \S}js:VMQ_*,+gSruFg0`kF5r3 E`AiB#T @HrƘ7 / y3H` U-E%1YYrV ; lM!O"7n܈xS'QXa" B]`Ϥ3(XF"'h M /cvVqHt~YwL*r[JL鴆0n}{$9׆b [,RVa\+J- Z)\H[-$2s=Mɏs\G>9Ҡ@C`gE`dOBWhUǣQ̭( !\ix3ӛ=.Q (R 鳨Ά qӶ {‡4/oƥ^u7JmXx~T 52~$`MpN_[,y%ݖ Q 4YЀ+UUL&8&q^p@}Imhc s/68I[AbÚ2gbDk, 2Ղ^Kov_̠P]MaF$-b[Ne%Rp^bΚd J8qodE) !3bO4YHzb78X\MMQa2@R{_ךQuFp T*Waq! o 2,bPޛ_ _yFd{1"ՒAEqpSd,[xիl8(˓Y؋hz=yłw3'V <(plRuajpJv[=8G3 5$Mjas_׶t[ݧZ {Tyo_R?7)ܠ0bMSq>lJP4b 퍨N!qLu5g 8KLs**--].bc=ǣBQXDAּ. PLmFf9-ԍņ`0+Dzˊok@E+eKQQ.[hD>2^6t y;"iV칙e'?{2_$(KwBlO %Y333yڋ(c8:B^c^!n$KEєVC U!%wC2S\ 6WB=% h'iuZD{lhI#;j} ;P _dDEI*w dUmxlջ}K?li4=T{S;fǿBaKt_&gpt@;P*l+3:v!t8 ]\ HZ ~ +_esrvuI"7'jh@DÝ7qgH9 Ped8HΠ@|$<4X޳ʿR%tK^r |hY ^|ry|rXrbR_ӿ]^^9|ӓW(n=vK<˸`꤄JF0w0G޿?y{qsf1QY b;'C5V'Ns#YewɸGv=O#&K_=ÏqBƿ𷾘l"yYb쫨m2=K oo ).J;M+#  \Wsg}J0|z3PNQIgG'[gP>%|᪶9FsJ;3F[)[ 8Ζ΢єLuLpOv^S"M45YvOl96/60Xi䢯l|SԐd68S}€WN;E/䐑mc`~ُc29nYcy1Еn2Ys 1V16AX\ýYLJXΗ菋Q6:]y4T EjqUǝ.o64iUZUg޽~6Dxvvz ,&ŜqvH7(OU|m.m]eXq*И(TcVwTy\ʦqF بASGlRS}wfMD?ݞd(e >uCnFdƧ[6 VK4+[xL@?[D!nݻrߕt)I'ѠW6KEPZ#/ŰB ]0!CCvYH pRhYܤsPC!.%6S\3*=ΰ86؄q!SǭRdRZRv%\ĕ!`D4#k/B%GŐi/(LBJN+\}~ d)[[p[18%`uI]1c˅57ӋY`oL 6l΀Tk5%E ٮTX]CE(% 3!rD ^vݮTkhYQ*'j͌sgxPi2w\2v](:Qװv5\s#G{ ekcEmB:ؠa_058M|.HWa"#UyqǴ M}87@̒ǐl4j~e'd3=Hfut42\.sN6@YQ9<ѣ%IxнQk2lњ@ˉ:_aMB#C{E^+l:AS_[10LT0,ʭ 4ʿ67^KR}OFI . > p4ޯoQؙ)Em11|n>{7$2kRH| 3F؞ @/n| pBwDD(02lFx󟶪dH¨*gnNcTQI==Śoa)Q1hh|Vcj'>X86cK')]Aqg r;t~wHF5PCT+qS3'P +Fmen,ZdS#6nx)c`ex[*T %b~A}]a!5w\C 0 /-nJ^rl/,rHr02}>/{sE&z`/ 7=,5}.p5P/I0~{Ak<G/O[Qq+*nEx[Qq+*.ߌx4/̷%>89(</׸'fvu W6[ |n~[P?5W ["͋K+M*,8}ѨllgPsȼ*[!e#ܬۼʯ8,±WpGv_eH6@ٍ,4qe}EڊEix Tu`eőV \?`JrA8 5aE]+FBWהp&|.1}ql@Ū:f̿WmA=(% Ut-f uaC%ɐ 9R1x#. !PzeR5{S M3W=]c MC'=` ʴ{r^@!֖wHb(dJYYL{"s1cK.#fӳ#HeD? QJREBU%l TF/K겣GqGsN(==Xxz߅6,L hR(2^^bL{b0}e H_̲)Ҥ$Vbƿz ƗA}$HjG6S>6W[zq8ju/'p0Ǥj!U h:n@GiyiU™oDS'@C+Nˋ\:鑹ʊ\ݤ-"fgjΖg<777*lT lYiO(+2v])%IB Cf?H\.;pH=}s_ O {< ƉP옰@5<}BS$i )Q hlس^-%Vі2J5ȊbS==eh88I f+I,T.@۸ g]FDغ[RٮWOǕ%?t-jzku!& 6JVMt{K6+d"%63]6<<ppRzMbʄj'0X{|+tg ֞9؊ a@.~h/p^ymSZ'+K !0h.!p̯NL,П x 6ʐ$)gh$,Yiv8&ҳ9yhFe(ѷKØ\ I7x F7l9w8sDpt:uPLJ<%,IY)B wY\W /W)J ]vׯ j*9+G+]91Fx8,>@o[O0_?jq35^󺘘%` amHz|a-l &=~Sew8nD'j#pDG#0|f ;pb)X2jCCXʇqǎ7&5Xw/mEl&=4N8ѳ(Ga~ZMm9'7nM[4͑M[ 6b} eܔ̚#Aj^0-!d۔xQ$hFoQyvyagiJٍInu7lvKiȄ" ֞tSGU_f.&Kx]Gl]EܻWh-֬Qn6H}e! E|QPĝ xBdfln^+,F!\W$s$BdC/r2L n?_0YOqN=,VܣkB O߁R0= =2kl[H'QmC;$AH<,:t'!//‡вn=DQ,{$1G$b적:i+?L]Aڒq2}ɽ2QW1⳩St@,_^|%]ʠg@"1HFҟ݊^xƂ}UL%x"Y.| hqV}$ˑE Fbz!#W#0wF2()|T/qV{u!0ʾQS`nհo9T&CE1.JR:x/ I0#,xYh)Qf=&1B";Ppe eGBS;.[X6ClEluIMGth -Kjuph޴4ﱽN6ls\p|i17Sy h.)X^&(h/}-D`\e;7vO1HRx-qk2F&It$ux !I3gmU2\llf ' 'nEԳ[5m%Z:61!̦~嶡 {bZգ{{GGޟzW'?4?}wl:~e~'^p..GJo"W 5^npGNXڕW/^'8UMQ URT檢= h/de靑Ⱦd@L lgJ0mAXX/::"r'{& {Q{n-bUجw,krέ3}t0%* s|fO3xڪ ;vή `^IbEKW@t\!=žZ}RsuQ#*Ad=?¾ f7T J%&k)s10:ֆ5]pw0J|e܊q"(b{z@-܉,rAQ2u\PR@7/ªhVqa(?{.pH~0&|y&faiS tc<*urB0q8+b28 |Z"v Yz Oc]OqZ*uفRLs7>fbՙkNʫBVG'qp͵Ʉ,QC+O -u@:s ȼJiY@rw-4x%:d[۸lamG8E?MGGֳnI2=U*V@죴PWB;E:?(?h3uF.wf5g1&缾 ݽ9&^B9qr- 1OÙǷIՔ duSn~+i)瀡rfVnvq]5)W7fDCE31Lrx/0_:n!}Z|ozZ6Oi9cú M < LwsqLqD$8FH ~Du=TD\uҹm(E5lTRAN=u^K,t6#}^Ym94H-{0^nh 9n[qPUV rLk+*cR:.LOY\t>\]tv4B\thڕYVNIr#' Rùړ"R4Ur{δ$O: gTSə m6=6ZcH@ɱ鰇7@VBٻ&e33.?leI = ɴ7Xhy3F#:H|!p>(t8AU"m4qE:>'}CC†i}\Yz ir>}saHl3!j"k`J "Q:$N̡/1um?.D`!Z 70܂!Gh&F?E!3 )eB9{|}QM>7qh}%x%SgP)0(j:A| 2"*m8d+ oKaeD{Tz9ZFMTǟ7O 2+#JAF_CB>rlZƿ2R2ߴI i^f 岴̝6ء方3ygnFSh6ТVuqDwf d{Tc4C9m-٧}{f)˵#sǿ:ئ,p1 5t* ϊ\u<4߀ H-& AiAn09` $h;0™`: .c_ XY BgI/o[XdJK_I5;&7].:yɻ~w3;;`Sl,8pEm^AtG%w忢_̗__b4# {A/Nɧ]me'%*x85XwQNtbWx3}"̉ЖwFXf CfA##]aωS~4MhMM49b.8x.Ϗ f1'|%??S0ԬdI]9팘$'w("*Ȯ: P<]AFe*wOH:,'5^-4EmB)Il"LaH >6I?1<٧ cSU"&mKԆpÇk+1p,~Z̭C 9~^ܜذJ怜1ET2`oj > Lk!0dnWFֽ J~1T t:Hg|q_t< Sם[}nI#LߋQ얜ٿw)`RG[1@g` ji}[qQ%d~ϮjwyU梯q-GصEoZ7N'%:;w.^8.sb[fu>a% !K'ȻGN -{rfZ3|kv`нR-D-̎?ƭvM-A}Lg M]5ëfm@5{4hsʌoI(y|]I 7,P h0w1 :e^ge!Dxx75⪘~O5 I\%zt_Kᑻ U; }G ,3RB·p4C@ߡ[ϵb%ӀL R.U@F<1wXL/3Ȓ$xUp-k>@H.:-/Z+߅/g_rh$ǧ :I0!FH46H:7+0."ϫf(| j8L ?pb$y-dE[3vΪĖ 95fGٷncrl?HzuAOhCXn+Gѱ1R3fnh]zo[>C]F$0qbtݼB:!U5 C_ o d(ϥ۲8LRxH R)^z, j3]NٝeQ fkH A!9S:Y> .jݓvimH!mUnE$i75IMAvbHʹ 9L /0#Kʊ+;TŊЬbJ+J ,{QV-Eڲl(iUm@[M h7XoBP򡦑hUu6<|WMYL9x?xgK[#,xkv/Go cW3dWQ6 2eU+z׿8]#N:& ,p*j.Q7 BQDB4iX Ha=̧yɎz{NM30b%hI\4K8<2,Gd{l X-H_RX8 VWJ4j#~0X5.3H=AN ݱ^$!RY,r=QڦO~UT 9O#dMФg _Ԙ o@^,Еy.^l0 ^*obE+:9s30J}±3=s>_'"rp{܎¢B*iPg*=5 ZO6*8|ێ=/n!V]fFE/3[fk[ b㔜0]'co&X5egR&Fa iz6#y>1!߲>{^?~p"EC6qfU]6ѣ-F"`&{YC~Eu4q'9ߙ`Ttq[NDu o}{Hܽ|aۧ?|'Ã%R"[/.Jje>rN؍\Nǀ>ۉd#ju5Ob Ta7{j) u蕥8}R71 1^!7N:y :`oבE44Yt 7P[}h`Q4n ,` _"`(|CP#mq>%Aӕ iyjѸon&E$ x!_Ub).Lh~|=۔W ~[[%/oɯvq~Vht7pͰXŒygr[b Pdwԟ~&KJ[cW^ MQo-: n ixOo @/*>Ut5Ew{#qh{+^Ec$|.ImUXy&XEy\Q,d_z6X\ZЀIP?G0 c}|4*,M$~Eؙq{f`ۓǏ''>3ddTƳ?ӢĀ6~1$_w/+>4pqٿ>~x"ZjF/5˪y]L}meb~x:Lw_gCRr xͮ7.}X>ݩƷw<؞/O+ hXuCEO΀5e!yQ擧;q Gg#̢ib`y9+jLy%NU3r?}燑qǀO:هr\㏹#B$"#JxI ]^MkA%+öONP'600?.g9Y{~gA?{5t=N$j.4ଝ@Q`CN42%n2aXlpp6XeўO݄?9A.o{TؕC%Arp7>yN F#( CE Myݿ&h̊tc6%`Br`Ꙇ#S N,Cb7I͟Vʁ<6ќB>'juOR$: )x3fR&˝q>,>fՐд;gl!v>%_O?ĿbFMw@8Q$2WKMap+;90r=GtTơH ^0Le.d r]8#f;|U\؞< Ϙ/zj7[э~AG 2$Y[ɨ"4S9 iޯo6Ε|0 Y\[D\ҳ; c8!K^rRB2*L9 mޝo})N2b?څh,]'ki$Mdg  D3Wog)s^i1A4V| pnSLM)$gDaf8}q};R"עn/WuŇBu@sȀԩ}I($LE -kqX>Ddl&nՠ6jpf`/ɰ8Wo>d#ʵxt$eiL04AgLȄ{?}ʄt|Rz"Ga{x;.CkU 8/r [׋:1 &^ Y/8su]Wu=PPQcuQmR"K*,M'J ,XGrZԬ܀Wl;iwTq `P\aG1K6I%Cqd>i)\SFɢNƴ׉46'60? ~(3sFL90BǴ4;=j0@mdskF͋r 21TZgg&s2jSn#XjFV4yb=~az.9 HȠ:Czф( fak#/V8og1BſFzQ79jkBnup#ͭ<ۋ,ugNفg`쥡 !^)tzCf}ÃNFE&" E B} f@7WS'MY'REM$;mfJ%n #')5bĎHx/tV vU^lbkL*#!9u(|qt!f9wԜhY)xsbĘY>Y'ޡj-l[Ncu_|t*~;qAhpI7.o)RI֋ˑ_!e!UKžg1MV#vˈm|~ r=|o)@0\t*4vIX("S h r7*rM-o]M> g?r *q|~Ѻ@܀]_騸Иk޵ڲ)1B8*U=3xWDFXC3)|=K g$VL'N̵|y0m/v&{w;+o\(S,9Xg<PA@ D׫8d c,_]K~;o`: ڱU(rN2HY7i_ڽ<gb OUL݋r║SoJb loۢ48U51żl&+!QO gFr3JJSP }u(i;.'ELp^ףٓT[A5?t̠s4x̍/[ezr%i5ƫF,tbÍ*Cߡ.b"՜3$W^)u94i' FH95 ¯uW\f8(iiG%4;n|\^Ǯf1 Vޜ`J1HqA΁~s۲|>Kc2E:a5@fA.e:$Rܭۺ_\\eY.$.:e sd4+1O V+JV7nKbRK$t[(ImaDjaK9˱`z_tDH My*H(K[Q\iҶH}0 "Y0l6Jn">JjIl5T[ƽmq=7oH2MF}|Ȁ~vU2rH*>b(i>"_6*bJ}16 9FUDI_Ћ@j9Ika[O͊Qo0@?O>/I7N%W|Ys܈7֯&tθ0up˱:|:y߼ <sֵ&s%y}֗lK(77i, Ao>ܼ*ԃm_^ҏ=s_ic1£ 4H(;r 5r d כM͖obulAf[Oco(FMvVløyޕS-7ؼ/!D8NVnz`ݰ 8}yOwD;^o]7}t0$RX %5voj%q /*>;RZUv@9<{/ŸN!#*ʿrKRķE}$}e[zHD[%`iȿ톑uv򯬣q_m#. : ^,.R,vS&?{cкۀϾR! 3{IB9_{FR2wձ^ fҾ AE|l`=+3Seh Q>\jޤr`C/Y}Zj@ d ricS%Yԓ+ ÿCbGW.ZU:l,]xt'XU\F. Ї)G8<5W]<gږ4H}Lc0Bg>罸"&M*I)elIvsyNR ^M=8@"RuW5*"^MW%\m# ]7e!)?^7rӚ]廉g.E91wkq2%e%z&AMS:%z8˰2?5(3C+49MKLZ_edϜ*lVfU^lT0GS I6:ayANB~qK(z݆%(+ ީM/&Ҕ~agέ<}ie|tA.:=yk) /FNtM.lǍV:t%NYܸ(fGH—}X^\ŽHOK<_Vjn~Mf~5bf ן[I?3)ظyaTӪ*9. yRDm V5-H{^iIC i}"_m(㠇/[B`/W E5PC}$XǨVp46fj&F>Q& ldEٽFr]=xXQE\* m=QcH3ǓaN-Ԙa` յbNv"{zdErs>Xޯ}pNi ܙjpd0p|AE) jqTc~tpnDXנ~XֶXp\pzS="^YO!ovtjJG\7*v[Q7p= OU~?,},5Rd-@E"1&0*}XX)6(%y55#q*ޏiP!׈P2;F*Ajv SLV]HLU 9f_$libl /vʺT`=ɯ#L/R~-|/X3*؋%7h!SȕҴ%l B ,i ΔLuEm0l5'rj/Ks}4~ϑV퇑סUܶϴ,.%iNn" 6+l__Av6zW'҅]6_?KXo}b}^/kb_&`h!I[7:Mu V5h+۫$+˪ m/~/&lh g RI\tBSFdCki"Y AO3ʱ19[A,y՜(K*so]c syaXBL)!a2_#腳A ,|a]tnڗ 5"=)QqqXu3>E~l*AիDc]24㧄DmtxW.`wSR$1~>I(Pd*k}m(9naP:htjnk?˫}EmYQa.:%hvphwh y:Ӂb( J<2Xi;$s9>sJ?`ˉPC CRdY͵e)vnA4qT 3dr(T̀՞I1/eAOEb?LE:2g3r1GOao7Y f)rZ&4=.I#]jfFGݍ :%#=zVe%ЈUlXFl ؅ϊb|XB[I2>:, 30 yK02c`ZT=!7iC ^ J4Шӫ+ K{+ZCS j#Wfd[M%:&|$*$9-̥pL7Z,P}[^)/;-ī*{ݮsNkA6FXcP7yna"B#UV"AV_BZEqg*_8a;i1S0S:P )zr.'k|NQwGJ  Ao5K֜':%ea*̔,j>&3(WAa"EJV@jOl;kǒ(rl+9<<婘{TRQƨXA]CvhF5>t3#NSP"a9~/%1Nc|sM֫.IƩv 2 TC` M~bmMr~BNi@Bd3; ׻:bRL\"'?UIP4an{6p F&Q+P*EދƕD"UmdFLBfDH0xDwOIz0s_}X |m!Fo>`!*0sOv~c `ht̢i:~i1,=k2N@YD0 Hv1cϣu)q97Cβa-^:CYt YS84zIYعcqrQ?Ue.rUՔ71qKMBAG?;c~=!7J. 8ޖ>hɩt0j)["Q0t /t xڥ6AU>l'cfJxfO}K97x-eߗq-0.4{ oǎ\5,ڗy5bZP'`(N~k :}mcz C&q3@Y6ʶa FRy2)&Y0 < q3nIf'gSx G57{aDH{hx%r:ۘZmX39y] bĈh{nBSBo=U^$CVpo"8sך܏ s'v{yO*M i=ϣ(t}Md %2z wVxWڇ`dFϕ )J3TA|GbUQ!I]H!i-iZ4'qF cX=9Y~@eh2Բ' ],~qcD^pUuM%lLcI>Ktt&bomMLdn@;uQhqY6)En"?ׅ'Axdӝ іO2B%5ndSO7NAW$ȚGAA>aؘoU -ͨ`E3(;K:ق7l5ԐE$N!2]QDyUp_4}MkƑ{0w6Pjxe݌ %p} l˧7eMGO-/*Ҽ%}o [L/3ף =\;mjNAuBG1SqUxƁ~Br0,mi\B"Ԯo.F8< zIZG<М/-09'aĘ:,- j,p2\Ϳ[(IH·"+T$ʀ& vSY)1|@V&]W7C=q)KjEvG[b|ICڷ4-G  m!ԓGV!ߜ@c_SKVkTOb{-OV47KM_*zԶ!z1/)KWG/-]Hx|st֚u1QMqvsvxҨqF P\}gvy=ogƈL AlFL<$ق ϧEɹt\X`8%] ' <7j" >u? gD0qBBQ2BrlK:6t/!OnF4)NhCP@@\fd͗-'i5A؀9UTfIP5q&< ?AJ 4qrIC\a/--43 s0I_8/ < "rL1 œ*(SQ&p l" a _`Vdo:tBq9φϔ,] ̚>rĝq '.\~ÜKJ71@ahQDس+gUY ';*Ow.ln.0U67 Z)nc6›B0~qY]żhv *~ql>bP~zXʛ>昭j-\hXc]y_nVF0`K8ߖmA g8bbԓΌiġ|\ ] 5:W Hn^BZFaHK)EU b3&H~=6 a=UýVkaB[ V?s7RðfGwfw?Te40ScyXCVf<JBJ07m w+@hRz(I3Wȩ$^Kd%2#"2YtYx_( : Y\c/\de<;HLC*;J90(5d"0?ޞXۉ!!̘CszNpCg9]n=~Q6*F* X?D@Zp)0W1ѧ67O'--K inmTϠm[Վn_)Z{nwӂW͊Rפm(BآIek^K]0d浢څaTvEaMJ@TVF}QK"QTB ZX9*mOi7ߥ?6Hɶ@"9*o_I͚oFſ'#ƴӟpcyhoMh9FXmkLiA5`=M*i`1P"Cۍ7z.%=~o[m8KpB*Ɍ 4Zcp v]?,xo3'plr|]l!#4x.o no>>ي!鈎:SvS `4%Nx0D;]`sÑ('YV QggQhJ_iɄH9[W#[ 4㳿sQ3(\HΕnO3Xg#3?W$i$iH0`XGopRҶ{\$j=G?o%=ͅV LƳ|KP [&X3rm Y&隱 `S`i ŨrYhO il[p7ƭf>$)蔗kv5$nc\.YWm*ȃfCj͈+=aQ2,V~ AXbEXGNʉR p0kg: ?,lIYa;!vD{<;xqCuꏲ.FFVEXyņ1?}gND.x!NLJ, o3oW5"(c` u=_8_"Wu:EPIps&Fh#2 /NYx?+F `K6=Ae cgq5UX CKZiWRme+fQ>*)m$Jq)&̳d(U˭ZDzC(e[$kӧmjll؝ͧcCbIiQcxSXoo0>H1KH&#+C֭=A- ]jV"U2;gM!YHvBKaks3)UkWk'BPO@xņ=il*Db V `(W p>vF 85@+3KW c~ɡnGC@9xԻOm~5 DumŠMg_^Y}aEQC5o9脦Z}yvOqPZXU8]:_ld<[e&8ck9eaUYX:lakhw6= -46D1eKaȈzjvTӵw#hWc#7i67_ţL8R!#iˈUEAirUJ\%f)l0O1?M.RC:iynB6)<9ohY=G*ߔdPzIXVżf YHc+dv۱yzn<E9 _;'3x.މ4KXۗd{d3E++q6='U%XqŊ*0:ĕ"NyET$OM,b$.r~_Wn67ͮWfd ΄H cاŃ#.fld?ְܲH@u$4f[Fk{vM A q-lv*'H"!HH6IPH W0]>QAG1,D@T FxGGcZ;QR| {S_mn:ԫJJw$(DS1~I <~G E`e19^0# )'JP$@NZ"qFL'1s"Im~1m#}b?~ӜՖ6-jrjv567&9 F!gl0"nVcD4io#mD/TDsڷ%a5Vz=%HOoS4j`W升SQoXڒ)2Ԯ%)Κ833fji6XtMq;q7 Aģ>H?R&믄UA/<п8_VjaEIV+"9'(++sb7cB- wԟ +̧Sذo\On6 `R/Ò԰ZwѨ_*>ktK|bpӠe%9.Uw$wCV uQfXs=nU; [}ru8ӥkaVb bc&7<*:$_W]VS oQL6etM?7+~ڐn4K҃)P'<+{(`Rp~qti{?<7DL`0 R󹹾1 xdZx[ȴ$C\IC3kØr$Q46[~S${TrjLł#.rw߮{# 'CK(X*c/E6*_^K_&hPy[u([7ۺ(3M0~z/:Ï+Uo*f)\[/[깍;} t苢+/GW-&,{#,GɊ¥<'ưrP Uocw(1Qh:*< o]U*`Z4Lu#EL [F::5 Ko44{_Dl5}]s7.-). @8rC"T` k9z fcu,sCL g@z㟍|]cx50?ېUt2\CJJ6پlYWf- Ĉ~.tUJLk1E#zmU^Hƙw<W;ԺY5lvAR9EjFPr Fg4X@R!TVT;Kq3OMgײ)s.H]:/Yn⪊ Ebи3(>9x_rxp˫ w2Hz0jeAӮc#X6aw3C5iaNs"tLgQ',p4Ɣ2,|Dh 3< +GD!`do+zj֜2gi'C8ꢘJ 7 #1%ZS39|Wӳk5{́\3AyB3W^]: eom>R!K6:JF?p ZB*ex&&,\k.5M1Lr/lfl:e-J:7*/9KػnZfY~Y5!dD jﳹӝM`ih'ސPdaHxڻ8M+!Ch.2w4phʭC'Vp%C Ɂ9^.HE1> D+w{E+Q7:t}(AH Us@}y&FP'żmkzbp&'y5% oхOɓ';OvOaj?p{ʌA0wCz #0$+[Vܫ:7,=w7JDHqZ7D[_ҭNY5~,)GͪPisfx1WW>8%A֕ s׳-lt\RJYĂnH>tNQvV; *0f*6MO"CZVeF=EZQAdI0 s {Maec:GFҽ]_ׇoQq a0E8njT1kw'YsB?yߜג&ߕ1} K8B/˶};GcJ{m#0^/!{5b)T@48E^qHЈ-^FRzao j(!\@~S!i jKУq_ L}?LìSW.NgakV`MmO` @nVMrd|:̬9BtDS$.>oG+5P,:ϓaL?*(NnoBkf7J02D"n$wF1bdː}F &qBoXS864 X&iӳ2dz(՛Q?jqy]0S* Ab6N5Pp6U:Tݤײp<5$ЋɒTKyD6zr/mcQܛ_xe']r>XAi{nێ tAhCcr/RM[~U\UnqKrC̑7;N1HհOA [ h.GV 3'VSΖ50aXv&+vU.7 t֞NJP_%ۣLqӏ2vY" a@/)VO(gcF>1ѳOD`~/ 8'Ͻv[pW]>t “C|QA0qqt=y'&TVћ躪jHB:,s-"nËL)Qx`Mړ˙W`?x{p@ذp Y1Zf[@cދo c 7gn貃`<6e0?)#@S#5~aGHQߜ&E9Iv?ÿE`BKqLñr\Fr$_֤](1'Q6?+eaHat23  MM1['5Ш^HU!Ҫr qgO@tl-N*mP*J@>;WmYPYC  Ăz럾8@< Ai:W^)8XK-%C# jC3gn ķ4X l"/!79O"Ѩ;=֛[@pAi{IG6,&Fkk3Is<= }BzfحJro?`!#år`0F 'a>s&VQxޱ%{3;k]xJܜj㨝s7NZ֦,b ߓ٣X_=>y#q_Mk .dta q<.> /2zĈFkaT8bw(0p^alOH3,55nWftW<|{8u!CJؤ O dVEYK,¤B;Bs][]}u VcxFEx3<Ԃ؛q9J::+ LYI5bm_vC FuNú۠ Q,O0bR-}{ FHzs^ KD6hForV_"&`3#p!{/8!A8xS$ʙJ:6Ri>W>0LyONd4>wYt>sH{Hޏw%d42i]֯7 ?Is|U!Ⱥ[0jhx?m[H%/dB16`HcV^f6٪uIfbDQiX HԒ2Zӡ=W_ei-1by/Jb;ylѼw2 ly" hV[Ǯ[*"(L*?-'Q4xf?}9͘֊cH#TJz.at~#mz8 /uh~G'>ti_f=@zW^UXa0Ɩ7%&ΘZTcc[DV+dӝpö6lkö6lm`N;1D`ۨꑇѯ0BB6]D8}:le#(hNٛea{rl.B#ύ){([: +߲$ܤ   l+"8maπ2/@b[-;p a7@aDb#C$l $Zc ; SKt%=J*gюӊ /KBd&mg%lz[ ebC̈́ahjbt4˖{%Kc+uؘJyrܼXPqB'lgoTS}B<= T{/mrdd&1gjEg*,:觤jNIݘPEs6w~JI &-Tg$EЌ'&ɮ:8-l^t- G'庯6]RgZ8zA9>f!`Zڣ=~BHd k 94i`I_$د"}ă'X_a#5V.l<"F '<Rvq?G.O$0 MdL D̦.9Azh* zd8L,dΉf"I E<)Q iE4?_8͌Ԇ”. Cas;̸[Og g !3t'@XA; (zraoh~:xWo}jMw#f tE#U>#Qsp,=%?0A'MQ 4B[f N-H}D6kKfi#*d`3pb3jnI *wE~쥓,DrǐԬrƎp-JSNHr" I8AM p&; )TΌ:fc0e%1Հ-ל-硂0M.!o6jTʨG:cxHHul@t626Ϸ MfYԜX1D3~LaY `C#`wdF@<6|C3䖂-uvylNtC>*D.*B,- =r۽ȴb 7`WpPE^K_jV륁1Od;BQ92e+NLδ5Jh ĄV4ȥSra? W#X'OѻA@l%saxJrlP+%CyT (nXV_7AgOd>(&ֺp0QsbB򪚫M?g:ߧ$qpG. >a}~CIc6ò3I~x^?\Ft \/J)O40rNC:r#WwK+ hEv\tUZǦ$G>-ʇ"1Gh1?3VNd۞h vC^øD!L1NKՆQV~!6cW.2kB;l̩,c P·7yVˆRMC 8 &mA^j7v[{6FoB a_ Tz%N`Ya-T4l] NmvO@?-ǀS, k!Sk㨾j`̲|l*~ke/ ;#p_)ql/MJ3Gu|疊㺒,г-a<(qq•W[wZ;~=2WP\";Qj[5 Bɧ7!8$d"d# *ec dKzUq춉g^#/jV&}S䬧DB-9`ŠqkS7qBVeiePP.4*M X U4l)%yࡑ/)kҁhx[i2j49N4h]W"ʄwe^ڜgsȞ82)PpϩF{Oc?Izy*Y OZoe1{$y9)\ 5VfiC&xv]{E-V-IGJfc&X} KЅ%>Lq nkiT[&3 p! ]jڿm-X >pھ t/#B,564biclyG\~Q0#bz3( |~'6zkށ/S6S(CHϨh*H309(Uޖ`UC/_(~R8J` o>_ SC+f*,ŊJP~W,rCXY;Ct,"3@Ϣ1h (JSr ݱb/I 2B#+ pЋwą oũ< #D݊Av ؋FQl?tJ񜎶t i1f(w3'[-p/ӜVR_ ȮzLfp,mUWOХ"+j:Wdfgzv,}<(2g^Y1G[^b}fP%fYU jR2H[O1a))+`ME y43e~AV |m|HOFG].r39o QՀ 流y釗{}aOjE{iyNMʱO̞tV:$V0_FWԉsUm))?PfYVbR%\ m;7峲Xg*|TX%1rQ=@EU1$PoF_7(wR%{9~G3 8>g7Uܰ~$Y~~e3ӘKI!fE505J#xd0uOZ3iHĵ J%w_O[9%K uĹerlզ>f3mST7~ rtS_é#],Jz&k Ze0 Al N C shfWkre0|lNCb$h65 mIW.yEr*r2a0ks:]@V. sA2(T!hJv ^DQ }޷m#~_WvlGIJs:nvh}ܿ W~E1x1@a2"F'`ξsn8 Cų9 %Ő9~-O[BYcqpEGpo( Ύd{ yUO|#5@rR{~ !'0hUf"\͡-F /ё^&"b-WqA!l4+& j(#ƁMIb6ݹ!)/= {bwX~__Mxmk2^ע~>)}{hF`Zc8~J[݁to #-䰌z5 눥Fܰxu dǑhp̙1h7u-yWAG^l)c72'8Ц؍[Qve)/\)d #R9^1e|MedRx;m^Qb!6XB|t75z!`w"-C HޯJ@V뀬.:_ˮ@Y I7#GQ\(l"\¡"!Zw]q%,;!#jLa˨YⓠD{Ylc,yjxpFǤ ' Gӡ(JYv-e rG %L!j ` AN'˵&y S|. &{FAb/}$*Q[)u(.-4m %+1?n> -B5% Mj;ޚ31+7%Eߙ[ )[qP [rj"ʎ)I@ᯞoh1 {ԇB)Qn'`J 䡣S`ki/"c d,x4O .PïؚFH&ΑtvSН% KU:p8k9?}0zdRŊLX;!l 1#1 Qx2Ff=i%PSūؐW* 9t^$Ќ(HpudO7ڋa[ -$Yؒx*0dS%lQ+P yЁ(0c)me 6Sz MG:JؖCeZEP\Ch-*!Q;h$sH0'8$/>,`=VErF.e)+iЀMktL_%p - dT7<8 A∾0f!,~+OzZxItuUpo` >W]L߳JZ l_+"]n%GAzɃpBtDP*DB$^~ն-y[$_]9,J,=B [^ӌaB{MY"eZp9LoA]?]s ϶/x6%`(17l|Dęʌ#0+uJ#W?;rBꃨҘ՘  Ӗ 1h.wEy4EYdXyqE ؤ,#%-a!WUVՊmT""f"Tݠ;kciPA2e(ؙK#b`i[V NX E(H&DQܶA9UIUK[CZx?L=˥#VLѭ[=Z?0Ʒh+A\L&Cw# GfS/[#Z<darVP6kiby|c+9Hh?{E- fP1R! <4<+K 9p#7\ՠZ! xJ9 i#D] "]XwK -f.m9yxMԩx8R92yJϷr9g&Ղ׭GþւGe5l1nxꫤy0ArN, 3qy^rr;PzqX(\R' 7O"31{\K$4al7)ڃ8DKˠїO|W ܭh&^ɍ*Z)іmYE58Úmt-+vۻT>h5wtRH ';ruxVJO 쒈-(+I>t#a{PMNܕCPFU\S/f4NC_b~~$"$v_KaW-vX( bأ@s=gB ᖓ3Q ƾCҗ^Uwzt$ vgO(B~G}cw-BؖK;-x0#?,c"Fqe k<}љ!l=XZ:#{3ޯc=+ Gd*&g ?҅^1Ni3؆hF_Lbpw;6}k԰dЙHxUfhD%'aA~?=tNÂV`F?N=_ ~/a3Ny|{uqֻK=8>aIu|m}:hgSKG0kv>k?zPPzaGRFmp L3uܽt~m_w|ǧ:OCJ`H6I/gckv͔Y \If9w GxFq#F>}Rgw-6pftlϧ4%T**RH qK-Ie>ۼ qYχSy)Me222eUAM16%2#D\@ў^/˒KؓaK ߗ1*?P<$c`X"r¿jbð Y3:Cf0\ ֩Y?Qu|0h`'KBg2 eKr?Y¡?  #\&eKԓ]]rvp4v$K$(o"jR(`lbwI߹1= ۽ },ga 7C]d 5jJ6{%hO `5z)Az ICr S"h1,l@LEB yj(t"ϔlHɪնlO|^-G7KXܵt毳ړiez){ .ߒL/}ŏΌ{;zqc}܉RASQCs/ѽ0NVMp6^Ynci9p\G:>=;/9C[=ijd7 NQC uj6:y]WƧήNh>|_,C 7e" 8=Z$y ^X6 玏G c"L7Q>w_IgKblӁ`E Lՙz%dx.':IG<ʝ݆ھoi)զ; kۏON}8:趮:M'+9F\Wƶ[„x^!0臋O]ѽ=}l\ǧ<1NZxR=]~bЍjW0&txvԁG 'Mi]OGWWGl8v-C9>=j NOE60a.N8=$TrDT`G)Xr>995vA40.}:= 17fK`aGat>T8~\cc }V@2<:-V?2~x\d`.N 7gӋQS ͻGD!B܏31"up:}/5xh_;8. ŀL 1¢u8;&]׼ʵ}'M6Hr]mݣgx- ;]\$*8}{k4wQ8"pxͮu!C+x:0JMqWZE=!F7rwfarn4je&L^9 ȘO8^zoawPMMG4r'#y{Ь7wAUAQO-A@p-LC{)}XY{ɺr!_}8l\BA`IC*uBXPP?_:?۝.+0̾y0-Oyu5fYSNOڽ5-wƶ7={%-(sϐ\jgC8 Z*4{}0Ɍ Vf֙cл4w&gHo~" wT3ebo]l.19׮ [ _:aBxZƃ[&y3x$R$R= MUa}6L oC/i|`EbaW;Xv-s@8 aÆz z,(޿ G4jLFF}ۀW+26HǍT9?s|3 ?v|7zr o@,|0G$֝yo;.VK¡pj7b#[2%ۗS)|FXSJ)U)c~:!;fM,ﰸQae,ĝcKX͞]VDvTZ7vTpG1^^a$nN j+,^4R)ykO/XCT#֟U(2*4NUک`8|%4*.ӥ*MU)ʹ"b $ zkj  ؤ-9ԆH2*Eee/xk3Jg\;E9HBKzI3{4IwV8 eɘXg ¹2k䞚-LfW@j5^ $`!GM}gtm n@`X,.)0o\۾'>gpL `&8>ԯmξ $7hWa±X6"ZmlIiN:v 0C e6)I{h|w&xyeuO]0NBc "$ydcI0YM$ќ"GJBoFg,68JEK@",&5CEP;Up[+u`\0c'D\W UB,QQDvQJ_LYznp#d<²oqǃGi4 >j']WHd+8GwX_wɮOL=Ei__ O(^`? ~F9F?CezBJvuVW3P+̡s󉫠qBe5uZ|owᓪU=M\}s<|e8"]&5zTn)rZ<cږ2NQΰ:D6ꪞkyZ|Prs|\^ gW{ӾqJ{UWGU so/)x7.wϚMxN~ñ yhu-|B:Vr*mp9=&.3:IE9嫡Qc~5o}9W4r*=TSu1~)k Dg4h}ڝegHlK:f? XkGGƆ?2`Giä!fñŽ,Vվ?iRV|R=EH^P1wh=}b!4gThEi4[^5 xr)顯_K/HE\uuu8iIؕb9e•&T^\fcݩWd.$wȆϭt-)ܘ1YOCJ hS"xj "S?ʦ7iI9)iy PYM t kzhUT@.-=^RyW8T33|$>=I?JՊ4XqE,PfFbS"3|2;=UH?J*4]qUHwvcfg=EH 1<;"g/u[{};%t#L^P65yE1HOV-?]D 9lQ.."gTGQeRCFXV-usL*%hݼRK:7SK6qUnJ7}Kb}[SN**yqbQzKR66<QU, ٙ/K~_^U֗2?U)ד[_ϧZ/:ו뜲3\h 3r\jUaz~Jp4tmN9KšV[zJO_SUS%+2UiJ P*V(]jZm=T)=;UNV- NODi䭂ja?4^мP U dgߗ!PU?-)`\ϑ~ɩ/$/1r|=.'UՙY˯V~cɩ>qi]E]U V{簒J|L *ʣ󯊪XKV kJjJ%P{){+^҈_%kBLK/LBbYEKH ŠTy-ErO *~Re!ZzaJ;6##UJJPe؊TrEω-x8|VIZ<׼UW뤭 y,duIdhsTъsYPfђTtidI=i5au9dhsTΊSkPΕJ)YmVO^l8LEEzq)ܫZV d4A"(r|ՊG$b"[\U+9}_e"Ӿs[\}S22&gm_xp⒁j \c]+MΜ,3Y_\!osr:Gk&MQZhچ w>߃+2-_g8ZCK3<^,5Trk$G{4QPκres mZ~mnqzcc@ [_ڰi܈MڎadܭAЙ7@Gz9vv;J^әMGVws&) . fVM&˳[J=Aq4~U^)AeHf ]LIkhai)fOu&k"uQDBх_)կқ6yZtHEsDxSl]5ors\bqИ":5eu6Kс8-ڡwtu>2޽5h/t'w!tA~z7Mk0t _ ?%ש^^^6n7կ ,\% @XC\ p S~/9j۷g+jJ-,}=-x$oF8%8?u~j_ZчVq3Ҭӽjh_F]h)@G=a7S0lhLPh7j_;? A530M'b@`67iҌzCL 77%Åuor~` }S~` X ڛNb³dt#w/oꏎc쳔Y,('H*Jd "'q?tMH֤O )޿Gs0E+'6-1y?$@\ȧ{xƝ5Owx [?ׂsmz9#"S goz޸^;ʠClՋo'o| cc x."9IH UC4Mi!M2 8'Ө& :rӡRf2rq^9$RlGSn$BӘ8l![5,ʁ,w=&A[@Bkmv 8K.?hHVJEnhۮ,-`*vd@E(Ͻ؝5~vpyzߧDvup:ݭmA#- ţ}x gL3Y'lYcWDܞYnXc(KL0>e>Z)U<=vw8-Jf* U9\t PB|IσI&$RzY;!u`Z\NVqrqR'3ud0=0zw;F~ХЪ &CJr'ׄ +gR㟷=:!V,-Y4wSޤg4iCSNLoo^rF ush[tƚ;h=$sO!RRU0>(tcjDd@\s֔>WuX;]76.A">RXJOUg0GQAtxb#{hTsyh=$G"ʝBBUt2kL{_ꂿ.x~.섯MtHa Wh=e!' Ǘ|*h7f҂F &@.˭a\!! PɋPgCF]i]y{,vO6eg v]J*&-$]X M) )yqra]LzBi,W>똃_=WO9{baw4Ԓ}_:ݯNWtWnWY]/[|O-[_?_F6 v녶-u7n~WJ^7u'Nם^.b%wcnGl/ódė3f CJGqOS)xN`n+>XcKO^_ZDҸ M(&J߯bH5Z#˳q&bH(B5%Ht˥o><^91M% +LiMX aZJZ?R5eѿVkՖcɿTALW+ *tol? n]u_ [RbW3OB[ஷ.BWj?ڎJ+?2KW7%]o+" rew]% ޵M.;\Lnዕu/b|T#+kY`x5 /eC5N8 xuj%˩^( k_GL.KiX{qY? yy5_3JV,_?Xh'|q^RBY9,'6xE'<riS;"z3zwx+攟CÅmh9I1w]|B:`K-F֜2;ǵQa%[Jn'UWRiQ A.***^6}H]m'diSڕ3VBګo&9PV}bARY"7/fc]z=̤GAWwB"\Hoe.2-+7W&%\a_b&hPvDUfRgz7{\k߽L\^QT+~2nRH>G va~'ln,oIӘ~dzJxJtR|eDDdfh䕏DƑ[};<[gҟz`FȨo"zb\p=7S0M笧)]g$}j%EXM̻2߆x@Z9KEhKsJWqijzfD$r5\oV_K */+xß@ڄڡ Ngmr .œ%)ESOk"*IӊgDel-FT,Y)SYaIתKpAҒ 25.(A`.S @_qI֪po YRbE&2ULj}VH9 Itzҳe*Oiuhl-\Ze\U /C^b$e6V:ZAZk(k_5Zrl(c]hNtb&#{lw!$$toxn Y{kjH^EdA_)#WpƦzp9H G{Ď+q)0FxN^͍ zcc0 dhMMc6;ƪoO5 pQ@pg"(x) J+AjLN4qfD"fg|Х8m8KJjn!t;.:3\hW^H5䦩$~WF16{{5O)G$C%]C+2PeA뵉5zLj*\!"Ճ1?lث禉&QXY_hm)s|{[W"=eտ}~qbJRY_1t>?u~6ջ1=rCQ"o?P4yB=`i'1= v7F}4-sisۨ]gO$43e*1̭kMó`>A?o!aMK@ƦQ'zOQ\dBRc톸3倏Gx2GD`,M~1~d /'|Bm~{&m `*^A&%D?wԴLqBdqoW97)I(4i|^9{Oد䘏akyÁa\C6U>B:q VNJ[7B*d$s"yt.y *+KbiF$Aʧ2fQ](џ,G7R-IOqWWܯD"(zi>4έ`4+p\3fA>IpRɣm0h+< O윃UDkUqsǦTesHvTKQf5THuJԜ UsQ|E"դF})Ԩ'PM `7}8qƀ LBBO3-\Uȏe]&5d`6! Μu]Y BK5]a ,ar7|x Kl=#0}k(md {jWpOk 8͉ymmWugYnUz- e;XJjjcm{UqwaUI>QeV@G,Y}mP$D"a0cqCeI.q:<6fD6I$ h&eDozEmLRlҌJ[yt]m,lKÌvxۻ>Fwn֖.VNTn.R!ȂRb-Ƙ[JBOUF}`Jr4*+}+feP@G@ pdIb$4;ke qlU!Y˒+TyĂicBB-=_zWYmٔq*yuIkծ6琧SIx3&|ى$E]ى>Yxf)OD(,J^+@xJ[@bYZZ:6$.bQKIz%g~II\I*+%L._fҸIbpk!4j^3Xo fION'W"kcgkgleO^o45yR.N:4's;)Sp 99ED`, CB0OX Pw[{:C?=iŮ[%ɶ  :v\cN#kO8XYx1@fWe_c]5?x0z(테X(`; #L:r}G@VIx9 xvh{͝kۧ*qS 0t\/4@\[)U+`\PB`&S&'B*QdЁOUR; [Jt21;1srkksbMP{ $c0`'&[w!q,e,^[=׺Nc\kh0'[L9h 3@K'1pUuJxss%V-:"DvAUT3rtT bY3PcSל_.B}@1bj]{2z u{?hRSDYo4{-//}Qw:t{Fp)6D@zeQA:?N?g1 E ?q{4 j]}hu{7 Px۝J@/^lKentqA9Mw`.X0xr'ϷFK=&tXЧoE7wdό@Aw[>'ޛ/Ѯ޾8m;]ѧ!=Fȭv<g=@nl}QO#o=ɓ Z#i =b}d_\]^\z8z}>:sq$zVUc 6z@š2nGYczhy :V1sUh~^0ekHި I}ǎ 䆯rýM˔{rW #C4l RFpk?e,`?BOhO瀏u2s ·|Ô@6_)QGhm^s|^Gƨ#m q|4HL û|-r]1yCw9]5zCPw9ûf]JILsL񔂣6%x#K#C:|J[wTʹf8j2\?Ӧ g[Ï,B~5[s[:k殈59%Ϲ g)d%2 jrgc2|-(7y#Iwʫap7qݧpTݠ.8 `@OЂy%w9COi?'ƟFaƎE?L}S"?O,Z(tw`M Amg$ {@ jWM]fZ=]:Ӱ%AG#ni8auՁn1tny_}/LF}N5oGv}"}9ڴ&?^e FR4~y|q~| ^̰!İ8N}ٻOZg?xm e qlvww7^GP4X|O :~KmԆۆB~󍻙Ԛ7NW}/C[ޔb7\oX1vb]-%!m6y#ۆ Y }#CE~m cḏx ",D2lxH]T0j'ۑn\0Xq“Dx|}_ʯ1:茼/V#8:/#ө_F^׏TWө_G_S-NZ|}N5=тzD ^-x'ZDD ɒ:,F ض#+TĿ6$1UgS47@ +bV7Ϻ!SPSi: |}M|]52|O_kf͵kX+r4%C5ΘRdh ?c!gL3 pĞ1Y3&$.pgO)p^x`b =SwO!N`®uii=,СJhjVZ=J1X7)G|؃tcdA:&Ǿͤa\:7:}$iԏW;i>nXnڐG?FM'|L/Dh7r(>0/~t+3X/@s᝕Wds(i0 xLy-Id0o俼}~T%aGӟ"1h4L'Os Nc/ÐP)1@ V4c8)gs@Q?Ȃ C KQi>puh30|(bL;!z؄zADD:H'-T0gd,u *LЛSpH#-baNaqN=k-o71o3:ր׋6zSNvC8*~c$E5|4_ u0iRڜ ?̃0Qs|U f3/̽0r?sGsf#/Kσs?;x3գs?;w4ya煙_;0_:?=_'0xhUM.KeVƭ(\>M fiڪ+7RG᪶:nV6M "MQNjEM "jpU 7Պ+pM "!՚+p_fѣpU 7ժGv=b!&Nl~k~ &ZNl5o&65KjCf?4j4Dt$"s~ ]ՃD9LD[%6a̠2j"uNUG'E$h..]UQti4S%w#X:.@A bQFs zS TJ}E/c)28k\^%Pc38oN`vp8'{84\k`gwB[GOW)mG3V&OJ xGHJڴnb򆦏'qՒoM/O((|[ ̾<گҿat&QB-8\A0cofG음_UnY]..NVڙ{N)};LY(G`^EQQlG9(Gqo_30zQl̀beqY/!}0J08fA*.3x8g`a FGqKXGKQ|=,A_E*"e,aq8\cZGt~%Ez2"ϋ]tBЯ뽣S~;R:e4$4hF "z%d ڔ$[r=]s:jm%ӛd{Aaekߕ9et (r<ҳ rVʶIIV+E+*="gl E. 5uTbSgQLZFŊ"WZGp+UzE(劭BE+!?˵T6EK"o<-\5ҳ(rE}kզҳ(ryVrYr2+TzD.R;/N:*oi=yGz!N<::3K&G1 ]ݰHEcl s86f iWQ 9:YiIi^Ҝ-: 8~ 8V=Pz-]6ޔ%k,N"BmF|YbÙF/1beFl2b#N/g4g4g4gFi$>2ӜI|eħ94ˈOs&iħYF|f27>fX-9ϗ1cs<>;c~_#Jy3r]c2c:#g`m@dhm7;?,:FEPcӾuN[Gn轿lo^Է.P?N=?nq5F}4 D8!Qdz?My;Ё@b.E=lnx[ƍ=NDOSGЦ6,I=M#{ X-M|O2$ ЛX} >줵sFt{)bLi{E]Řfhx n>;@Zü-)CeFƄ@K2Rɭ- ʮ:K:~s1ıѵke;sxsc`&)fwzF(>dL t&t ˝4BcdHaXhxڲńe@\ )6Yo@ lN@8K)}`)t)FB{8(N& {n}hDaO$~ pm@40}m^knm53vJ{0msâw4nZ^ cH0W~mM BBIueℌw&Sڝ _?Ӓ mVy9IV$V2OiOyMiP$i7=ԗ 'X=LhvRIG )>7`>(bRK[^I#EP{-M</gOnD7U ؟L{4W(l~gxi#Nrq; @x?HVX<$= g.F,8I6`6&E7S)b87t H<t]xJz4pWK Df#jCJc8S[ᯏǽ'X+ x&,9!P stmN̺vp\Ҕ:hP2Q惪$v},,p|˷1aEmbaI| SvY:ig h.p("1mL`8@v-Wܙ[t&p77u1B4NɇEFLX$2 +.<`Isin6mA, vpWdCTC8ǡ&o8+c;\p03m`xMK ̥S;@^R6wrR20pC˓Vy22::tIl{s($q _yI%M_I(t.xfߗs82Oxpn/nO5Cj/ o'K xƏ&F9~hA8F D@s&ЦfKPO|;a`$ p֛%&RlnV0adR82ȶ{}L&8aQ Qk$<=/_ ~QvL#>z2MRij|<<*:ô` ӏ R,LH DDl:%Rm:Q5:,he XlS%fXkLbϒ!aiAN\~\'!,kgɵ6GΖJ,sʴZ8ύ0Xr2XqV;4RP50qe <Ab,`)@X"<咭L!BEpQdZ1IyFԛTM [)"dc^VJ 9U(q%Ye W2a9-B@p1 *S(ʳ<GU+"V#QσDqVIvfs{~+6ePռвEjϗ==o0b$UM4b=hrg\&$v@׎38u(v,/YDi!:c抴m}w "]D4p-SG[xOOً ."U2RwM 8# ?i/Zz/۫ q>JĈut~q@-f7]29hQv297SB7m/yfX̰p hgaokK3fx &I/R1]VxCy>t%~=P'|զ%{'mJbHD{vAu[( Cu2t}N:gIֽv|xO0Hd Fح>H..4mmf%Jcdj6C#ɢs@YX8"k>Lj dABm5f$cucIؚV=׿-fb&KL[?[깾3:סyy&:|/v`Qf0֪bbl+9'\Ҫ;p#[L,ϱ8DnM0CK;U^n2.sN+̎%_dS&Ge|mȂ^ Fx}FK3zHK9Q\)QV!]}owMo=%ϥk=9Xĸ^>k[xN98E&58 댭wa0 Hjrڍ)t fyPZ0f;gwТ-dCNŒoM ]<5ssx]?K,0hľԗF+d6Η9 c&?r eCӆ\Ow9 &K_°j8IeMdP((<*!/rP3z&RFoSM]4p+g ˗QkX4gs f|a̷ ;\;D΂wkh>Zl3P|yΰ[) UXl-qWp;+0zH @8|jz|krli^v`ʿ[۸ͲEp&t+۩v)1r ͚Im͡L[5;O7;ck:m3/?{}a4񼛵y%;f5/K؋ɜs{go6c_nů$T{O'-i //{./I/odWQ(n(am;}sB{-,[ ,W5;q{$ IV);~d+S^d&hA$AgU h@P>3Q] ?Ð: V.@a[ri]46:X}s6?JuH?ߛ4سiX+ݸߢ1W{jW=V^.{K 3Tu7E8=L9knӛ_ U$`x1cNvOnU1uTpi{G w|0J7v.kQ8ZSu0EJ < Y r,ٗ/|*[\vK)k"8Ą*cM9KN\5)J:{Pwou{gC.+~E0L1£tȷtTiE>F5яDzĻ h#cw;x_1Vgd.;._>-{$ Xgv#x!+14\ȿ~qyx yR; Lolz;?wd Pq&Eп 0ڠyNF43\|q0Á@)y;E{' Rq+0> Z`O_>_^`?KZT0ׁXtSsNؠ<-4}< @sC3R(x8Ua!FV=&(!4΁]h%TꈮtXb֕CҴRU31P\Y mr; TN?+A@9;6=ۥ.@@Q i0WDrEM!{2 ^ꁪ\\R|K"CINYw՝:COm)$/';܌ёW<i Ց" aQwt "K01Xvxrh-L[`9|35H8fyw~@\ 6,3qVߴ!&Ge g&}\u᫴n`ik«d@0E#׼Wеq'(Dnw,v~f?q 7c7\GT܁G##UC\^UUN#V˨xc;f,z{|(yzKi8>9?۱KVZ (IFAƕ4gl-f~5?9x||wN}6[imGY.QkX/Nۉ?ºľgxviVG6p\|Tk!#v۽{[HWh2cJR432J;lծtliyvPEN 1^ FnB)>ܝOd&NF|T"`~m0+ڭћn#8o*2ٝz+(tpm 7FOkwH{pk؍Q6 /)H3E6`)L/΁zǣ(=בBxoU:Z?\'DC8s: YG6s$^! Y(s$s_! Ys$_ QⅥ(1x̔o+FJ+G^U>|wOP3P\8E5PM-]gI{c]M>U@E5G!}n<\ql7jgYa0G=ѿsená)/g & .cJ+Q2862f4+t>u+;ٯBfU};U^ոm }?/`Svx#Boup8T`ãxU2kiX "Kd OﹿE[ YqKl1 Bs1=)+^W)|n]4x.|\4Q!9x1* kjB EtCĀFMdd&5j"#H. FiYbDAM ){1ZP &-U]ͱ|hy_䌭o~W6)gUaI=+cQ+3伮Z-9'fUt(?]UQܡLfe=<)2|/qxid V%\ '秷n7ij,KeWHk&J/d2zo֡?W bX$qS/'lr޾';}CB?>$yg> <7kyg7ݝ~=Ȓ&-$( 饕'_b'Z~R_b#7_2?<[?A&4P}N.=DP?0o>G>16{xyD'@g7 |Iu4$pĄ=M*iǞ+W7lz_ë]I?b+rB$`7Bäظ$IS7%#ZCn<̘d>^W^Pc_|Y8pOeNԐAQC AP GKNj]caIڤ4hvh\0=ȚJ:yn\Ҝi(~$|Фj9JEo sz~?y~_+7k?O>` N>i6ivb!ehd9\awsPj|rfb^3;3>gWGs7uc{ouvôH_.XY]HޤkjxZ\@hl&$Du'] /yn$/_ؤ3i<-s3w gNo<`硚?9aX*-$b;1~:Moc\{ݬps ~7DE-\_on5 }>1zI=M<; c^cǩ}SjFk`!0:"CTpP4)^ SmS sf&lT!G LQ0݂d&#招!? pOVr c'jNF2& ~儼 9s?@X1F:#]\gXw.i|+T8wj(T*/~BrC@33rx†L`!S, uI(J/9@u+S '+LCJIs₄2i igKҙ\?')(GK]v06g7=a.fkeb? ޷&|n8#S(W&`[@,h~N_'y S 3t);xK,s*p8'Vv4F qAߓy/&}VBn]Fgo/FyDnJ0C;ͥi /~SdW-y@!"_ܔ3<-:({APNSNDVHzUYL19hR^4O:GJK'fd6K^mw.cr ?ELt UzelSjE1mgICͱ>}I-wDNnA?`c4Kr#cyyCavxvD/Wy*s3"b^0' _I'e&“1tp1,y+逩8hiInbI<1SGo;od].^FM4 1gmI60v#1t$qVGŏ.(wH]:b?_̂~ȭn{ &ormjQ\tT'^iюrG*ƅ%Tg(.-BQS,R\|0PA$ؠ|N )F2f [q+8.,gcGʲpTN-/C$5H׈IU GjU"f\*BUVѝ5V"V*O1X.umӷ =UY% PjD"<JB盓 q() $JGqQ2%N, /vr V!Ok\9Q(@&K/M.uh2 I-ppe0E%& /k,Jȥ4/Bپ_dUr$9=͠S 6S#'?~64 h&#Ȗ*7UbA x=3cG3|R'+1?č0Yԫ,qkۗ'p _1}7c7Jf܊4E7GWeEt&wBr{YQ:;fh(8$= ܔ}' h[Gu(Ѽh&X.S?uE.Ko;sWa\E"~?YR}[ ᵛ{jW6Ul[]O vUl-\`W497*ӠrFLS۔L}U͠~V3Mkˊݼfm"^G*㲺 oPt]a[9k~ yk~!$~ːdUaPIMrm&YlC_ uż;}=fk1&=F=fk1kҊ:#姷aZ"F yKXy7$cF$\|'̹]tʟmqoQ*7 ֳx "_\~emcC=V$cJC=7ou#3iAӥ}$6(X}:9 9 !R kY_ÙDӔ|n+?BE-_Ͽ\_2J b#aIeOiFI&FAS>e2[ø|dϭ4~4F~R޾=N{c8Ċڑ>e& 56r{̑cN5KPdI*e;<395lYSSM5OʭW`rϛ턤`?<`\ZHF%N1K|)NJ|_`Q|MheF#2ZZӌVf4*4hgeF; 3*`h,; ~σ9R_祉g87c0i7 RǽęϚ>C~v:Jhj&M+9V'U%h˾"g3gjKry!pYNuVgoݕ۠6pWn vaXO j[ycP kJeY҆RיxrylMKMMQĤ %oGSHYT_0!OqHI#B*6;X\g~o2 xYZ0&Y(;GݻCiS5bT7eTjO i={='/{R֍%s?7iqȯk\Rko z3t(2tK<u#[)Y!Bn޽vWo$AHb7#^@#wWg:M-]}B vȯd^-i03.Q@mnW|qfދ@Uy7UP?bѫ/_<{٫GA:O|@?)rKN8(WD93dsB }} ^ =:R,AC^9??8KGQD=FC=?x?G^{*Gl~-Rݩ܃.<8Qkttvvճgg(}p;w_uώGCڻ1!z|b?_E{ف3|GoդrU6Xyd7k1H\@+d0$YW$^`ua➢ƇKw_:{-{rp.vj;)nFł:J U.[(1љ`GɆIZYdɟ%Jmݔ5J| e/\R\*Jfqq?%KgɭحIc-$i UPHV ?*A$+U(VI,}rԶD?BV w5k`YERD>j&xg 4F!L)!m F]τ|?)x ,~^S Nw` 5E^gD@}w7AifqݙS pCώ@%]bl)0~<,2A'c\|Hg_~IYiiq&1 џ0Nb_w类׶O}WHSlBȭ(= N)x=ERKds$҄t%|-s .$b (-]u:~0-4Ζ 9K/,iW/T񳓣e}/r-QDU.E#.LQe#(d ZG<EԏTB=$}X#Ŝi5ho]{5/֚F GQL2^v`~W 4ͭl1TRR%\iS<'c_/@H4tҜof)N!iZۖ\qH/tb=3DAZMj'>2˞te{U5 }|Zc߮9D= I,s5LhJD.RQ ]Uɲky~ԾEw[A:$Y"IBQ"h4kʫA$k\CubH nbD.Wj;I Z VxC8ᇗyc^ _.ѦϦ)hS#@P iCM"h<@T)ZrD"\.yVWSG))xOm,̦evDڰpul|4['o,VT}HNc#h4{GQg@A t"+״:Y9Qhp&;V]t!*ʹ=jSJIY˸a>x+YΘ_hR!z9ởJE|/Y'+b *o钀rҴ(il@D2|%ÇmTPƌVrd'MxцN x /xΟ/jx6*Ƌ|]xtu߲uSP5$DG|duE 2rGf*m͠A2>B[r*G_t!kbQHԘ4*I4BSH#T\| 2vEN[#HDڽ{}z'TP}bdȴSd26kb1͖ۯ,dƇf_u{AI~W|T9ͩrӏhvץ84@{/da+XY w/uGϘx6qu[/;w'hϽs2/ק_EiI>{)ʶ 'W{Z> ?j<;GqST*oߒ؀?*Cxz_vܽ *^6*mm}c=BXw5tM8X({I#'mxH BSقtPj`<.`]F8{&̛IJ);#PaoOԀj\^,5Old~dL-5gc8nikzH6LAW2/ z Z(L8HH $\#!#&<@C?!uL4&osJx|\!3 S/МD&-ЃmLgrUcxe/6ыrl ).}- . r .z9zg#T@ ?,024B}jtMP6?f{hz0# Ͼ5Mx{i/\_cwP}Apv3:ǑR:̌>|9?r]ҁ|>1$CCBF@aM@Gc0cM9Eʤd*։R\Va iZF#}&.(Džfq8u觖']@Z[v1636p<2O Zd$`fcppJʭm`aEfgp9 ҿtqyx yR; ]|~B39sɆ!1>~cIQ>/82~9h5" (pGp8PJpN@` B>T\)ǟ?"OǗg9ǃV0ׁXtSsNؠ<-4}< @sC3R zv8U !HʠG$X@>%9p1 ØJ g=[WJjFmAmp=2@,aU bE~B9ra|_Q%nQƅ"fkB#9h+~(9tr@WTeR[C=ajM˼n4#= 0_stuJ- % CёW<i ϰce3όh^j)p`"RlCo(LY0Ssq},J2}:gMh4:$5%A~K?Ɲ$;>_-]cn|(iਢ[G}+BiŴNk Ó znd vc@xcQžrA#p4,HG/eBo vJBUQWJuqE:F‰-Nn.!TM:t ! hRω XQґ ) "!\2qU`\0El5AִdJ5 !9J6iY.P6ÚOR8 WDPBtT'5FsCdd@KudK}a;LQ}5|K0N5I&?C0=WDTH]!N6.hrR׏zvf9qQ9pe99Rb{МZT 16Fߌ͞C,Nfs>Š&XB>ߺE.qHЦ8U>`#9wd:3gf0x^Jt{ \>%~,%]U$  `R\O{Ԑ僯 so(l, .O`I(A4U6uCsq"sJO+AT{Ք KۇjpB#>k`7hjT vߌ ~ƫ>9[mJ ߶a,XRJ:Ha)I aĭ6F 6Xu>DvzD?~2樣Hѱ'Nwރ !h~nK $G- 8Ivvvr;~h'ӐI5=@̇ -Fr Hu6 WfTze7AZRu-Jsud 8d溶 Ύga$=?ݖtSEMJj_F2]wq{⒩tKY\ Aq@AHs@jCPc럀eM;su2.VLW=)++IJc;w4Ab9$W-\|Xط= 2օ(6gyKE 7ҧSw ERQسt wpc-i20NAh]&@ 4$ c iX챶Ct|X\Br"N*){YIjP72sZ[m9W⹎ E)zEMD(O} ~0{0b7=nAuq'$+6!EPm~SM`#DzhGӂ@( "J\IRITbQ91?įLn_w*d٘m'07 f2,{26nSPY8kE<= Vi"G %DPu2LA2uedp]V'{elvqKyqo'nx Q&QzA[%Sмy,h^P(dCRbi %Za@)+Fx뇷HHM9?HBHyZ ؆ܒq?Ok$Gc:p͚y/DQ 2(]+1*"x&X(sH^h*9$W@aKz g[E)eHRNa:~F-l|JlGY@rQhmX<sIdH76)ͭ'ܬSEIE#p%4EFwq !e*Cu FsDPa8]tq ~r;QW_YͶ` w_,(k)]Ά4 Uu ˻b^utpКT'9bTܣ4C!U^Ū>c+75E& Nrmr32Jh9mU~tj^א-8ivήUw|π@*0E!O9t#1n>fb/"krm9UVqjnܑ^|:\+oqxN~Tԗ^&Jkv[$<$tˢj ӑѰ60$Az5kjϞe4|qiՏ@a+HOGWnpqSkr].jrd9Jkތ`JqAHi4iV*4x?Ҧ<$tA1QތhNqS]Z 4JsJ5JtA[le½YZHUÞ*ñdPqbWHM@e7ZdwqD"k>^$;TrCp)oFKZ`5DkA'A,OW%n@hx|oI?E4 Pl6MxES6ĜѬUDS"(kL|W8I_[}s>^Üp*q'?|{çgeŷ׿7s"k= pT8XڦL8T_<ܩt[%Geܭ&݉kZB` M+²_kͺ$3=_d-&NjPϱ–v@t>`rɰ%QX}ʎ?4`AW)CGX~uHh a!9-# )_ WJk %-@tA= FM͡O[U]'@R2<+oF>7fH0. +R7R=xZa@UkqsF ]4yhy;Ii?-S&h]+yh+X )j&=%ҰQR$DD#B&2*6ݗi15UyEvsqinR)GҰFzjR:f+8ɵd4{o|"kNgL5oj;3c4Ìfk ®TRE%U`ESm<73:jOo׀}$ ] t=ౡx"vrGM9>_ L$4p OR7Kc0`IV>\F;˅cJwљխBO{2K?KvpųX6{)K-|Xr-XV['Ė0Ӓ Bu`,S@Z5r%Rd}[<&y/D!,gobҫQ>dezBPVl@ќ;\s[ɌBE dKbeb&Avk,?Ϥ  b]Iw*o?"#"O- U`DCS};Wv&>>?#GOonww7S@ғߠr 㫎ir蛰4xyQAݍf57mhC`0Ilzr+ [\[ ctfQD}!4Sf =h-]xDx{tYu;؍$S4@vo]1R %)Q\=፫(#t)@'~ֽ$D"A u1Ͷ ? {Cbj!O$긷eۺ\Xyէqt{"ʎO&X ms=d,:ɂR`@g0+˜)NfsHk ]]pS FX>\OXGOPӧ$i^yĹF;8ᾏ,]av8Hύ@Rkyr}cLv8pNs:Fҁ@Y;\(wG}N ;*b6 ul{2K{m ~7կM~mXG$|<qbfLPށ̄RK~8_}ɝeLE 5h$[[%Q M0PSt !0:DCM딢vч4ߘѧj-W4B2-psZ7@@hߝpA D`ه#[n2#%T`p  >\sP2^FK-g!N!"HK7fsͰ"ã~я6FgQ#Vz9@V*?;GMMoJ Yiy-O6-7TF>_!R[,<ąaEG睍Fخnx`BUmd ͱR,LgN ӣϗnbk&YʆMf,*ߎu%ik1_,yн=1|uKɶsuAh4~Q^h渏T WWA® O_ Y~4fu;jFy#mr}mmmmGhW3눘?71Xh}$\n?{-vvv~4tُz[M|WxQ:%?n37\ 5s/,VILqmj]"ºtQX|a+H&\3/T߼Ix}>8n0fM-#M=b:ͣFyDk2hщ^A71κ&it>jq L{tMɉ^A7!72F%z2+q1(0禌_FН  vZt7 rN'&(C'+O~Ňـ~nNF4lp֏V2q<ܺm`ív<P}|35H٬Ww|ۊ=z:ކنCg߷ G>Jiw]f|o̢+OV-Ѓ.ٷdsL4!+m8e/]_Udsl{%!-'abO%r7Yi-ܕ-k÷ߘ!x|K(+C'rsn 컓U#ދ4>nҧmB: $n5i=um}-G{!=o%>nЧmg-N+},HO;O<̚ R$O lp,fb17i+)i4&i1~fS6-T? Na߮dG?xXqׁعa݄: \͞zxhA|r|?;6x|8fd R-9j@f䧑" v*e8f%eD e$K5kŞr`q׏U(4.;A+ql}w|>ػ8|}WbLoMf͓u[QWSn`lwo80uWB-MW>4ZA^Ԇ%to 6PZ[ɰY9y1r?0)d5PD!ĵm-v( Qޕ"u;#f*o+RTCkTo˴YЕi<)* XVްՄ9y,jź-wU 9r7hkCga⽢ pm7_Z}z*w0-LQB"*v HomC8 :pw0w;W{Rtdj%/ Yd^}bz oPpMei˹?qx 5c{zBٞ `[E^YUBPdXTZ">`aH]q|.:?_h.ҰTw9ԛkɉ QgKݽB^"qȑ, -`97B'|0[#=s}oɻ}Ψ^iaԙafrO\+}|TY,.:LckE4js9Zpմm;E/ݞe@Y (-6[{PMxE?n D+M~J{Klj1T6VwRn,d1Vm<M~nHR!U*!8ʢEKzS h›kFc -Uf cZ[3fZfAk_]؃ Kߨ;1]ns^?[l r٧zѝl.wp<ۓWAg靯^-LQ8pmIq&t(\]!MagM.=҄6E1]@A-qI| Ϣ=P\E"6!avE6/|R VKj֚)3jVoK4Nlc/S8_N[TQwk-!5mvZ()K@ d!mcnZjjʹB+5/׬[KCܰ<{z>]!sK%.YXQh`F +Iz\_.X, "ر Gz**L$=9Т9gXExk|LXA?a@xI_!KKD$lѢW[HݓWȤɺOƇrrKnz]]" ,Peܛ(ӖiV ts,X-m˔lFf7YB9ۙB \{Nk"*CJ`t 00?aZ-,+Y(-'6XIe5K ʉAV(ێ-sJZWF",mmt ->W ,c5hr*HxaY<ͭG6d'hVB n ּe) 7Ko־e4ۋ8Ekɲsspzj7E[bts *msV,Q7tkՖp^憥+3w|쩇WK⮼.zuAD Hadb-W4KK8|qWE>9=gڽ]d8)Lmc]Ď S4G!o+?uD PsH ɕ2Iy`0E*:zzH1)Ie:T9 9fG,N k XgQE)04աlXYPQ G$?$u\QRP(KC ~=܏mR^': P+N&5i~+xuz[fyݸ C]?p]X7X/F#?: ;i|GW?H4`G27.Ro7cb *PiUosV//'RBRW%Bsͼ)E[jU^6]S%H*Wo!1 g~Ȱ%F2k:u,3.AqOҺU&iUe'˶l)';-E.$l=Y5ʁPSB2+ !6/L8I ! ƬS?ysb6EY㐗0/2QIf$M~Z03,jg4_tZCV'C2zrk($Qfub1W'͇/p˺Za6ȳ h/n{p;,3,ڕdA1HFt2sZ˷[hQ1.zy&yZ>|(;ɔ0Q\qGf"f;h@D@_cfW>f[029]Z p^mDM~\X0~xֈF+rS;BÏ5g%@j"FVōY=\Hq5kJC^+v f֔ߠlGE]^p >hnr፱~cF:< m-aj9ftJ x=p״?;-J7=ONъMg v0v{'2W ip!oo*K"\J#>Ba[c7N]eBlU Vc"(9%8.ŬZ&-CdU-jS_Ao^oPK̴>ZL%kcQB$`$ph#Մ)Yce504-愮fFib֕3!k쐛;0# ;0s+iW. j$boOטiCebjSe4C%tD.36,,5WΌLi9 Wc9 }0h/ ![j 1LW 4g+ʂie_{Z-ml0J DwF q`孜ܾ>ƺMl?JX4M4 ^ =ֿdg .>@.lЯ"Z@#ƨ8Jc0e?C0;P"2@ YH67GG%lG. a%*b'!y`ZL"y'g߿U-ai?6 q @ ;jyh GCj/hf{2)UBR4W1,HAH/Nlj3fa{|2xMpZ]EY:ň?"KL"zgWyyPƍX?-U,[q96Gefg: |$2C&?wAWvfYj#e{ɷ93P|Λ:u+=jao⸚\L k^oAȧ){T{޶$Oz'%"Υq}\[nYnOϞ]=DYVRL .$WXOSK$.`f0DYD8h䑸2~/ϙr7@ H#k#|"5MC#DNB62,E|&·G_;=uκ寝jEe,'!xV:.`zHqRa k:S;}VUaH^@PSVV8̤pgtyzmc6GC@0:X֟ 1%WV"4`"Q l9b6ƍ޲;dsWMGp:YPxXgMlǂ;  Rr.Cj]+(_g~"t7ՊDlaw|]h | ;8/s|=;} ]_;LU~0A7 @9t1/vgDaҊb=_!z _&g'. 0rJBg@4Cq!#qYc )pcJ~캦evYŠB:a5,+fSP|A ^!=WkBvmֈ[ & b<#1ek4It>]$.wֿ W(nX(iK#n{F 4ցЈ[nD|'K lφ5DF7oCzW3$%/eXbSCu[½ |5HUf᝾G*AsF3V#kg0?"ˉU"c[ . 16lQ>(% 5Èy)cXYJX4"8 ,OűeDqwuKxc k{s϶;6A s?gE ǦW~#Hd*QWJ'Q6Ύm Kއ'"m!Myq϶y[ R%̅!9U3&+Fx3]\=~%#U"Thl@ WQ}ED#Z/ݬkYVNq k%{hS@)sWM6ֺ 9rjvB1.f#wqFȭbd3L"JkC#UMssf6kV'-b?c1A5)]e x\4.38K'|qrrr]7~xcD=ȧ|GxbB/>t.. Pl0MBm/?$=NAN@.P6͠Ɇ"+Y!fb njDnIe2IpJCD 8%9ӂӃOSJ:Tt$ 2,AEK`prܧ̚?ݾF &G& JJHr12y,)Ԯ,V̊s<50j7%g: 2w^^v"4l/&LNeV׋PY"$5֑i FPIH@IL9S}nSNզ8Ic;oY C+d?N팜ɼFhc@N5G d6#UbF ̬s)+Qr{^ͦ0zu{F_u|PV0tu/|CpOڌߔ63oN۟ftuépڌߨ6W٩.8jHe]M[ ׶)dԌCLߞVu5ݡp-* %+Slfj#I $~]Tۆ<{7zT`c֮nݦƕsSA,eۭ6չn{BYu(rz>׆=x4hW_.Jy1MyPL$~&uWh~UqG;= Z19ma*(r!7֜D0`1vNu%\I4Nf.Aoa $/Sւ5΍J1V. M#o#{ O[i>'܎Fv͖+w>c" q Ilɍh8NyNNMИA h~˨s)^tl p/uV<>9_|c܏F;wQ.8hxk\7Mciwo G;>yM' BcxɩC(pyD 3PΩrh ! x y" !ƚfI=`,ؽcM؋O={gC,"`a#"coh^bͫa? 8kz\L!#zb/oܻɩk x,,$+H,anyvfV>mJ@0J#97B`b^ja\u.wKRW:C_/; tӅWؖqݽ>:BScsv v ח.qڅF:ulvɎ#>0Ԡ%C!ǀ7l?OϏ ixv B$ c P/0"A (}cs;Ɇ 8?=?z @Ao2@DETw@oq0ǁr ?t@`D>Pt;u_SA ëESϮp<g]nů2ED#lPA:zvk$7T AG `tcY_&m !0t.]h%#WQ; =Z("w`ٜ.I~syC\(p#hqT\]ZDle/7k1W|-庞{w_Z`zQVNO{tA V8JQ$k 0{@} $d d@%T &( iLfQip.%Rpˮ.%Sp˂.%1Up钇3WBxfSGx>12|%&-x~vK/oG_xr?1;yv`8D'2m28Aآ4 p+z?h`3)cC|D3&TtG<훃G%!>c> >5y58T1JepJe, *Կ6Y-L1Tΐ!mi@,DౡVw(D >#X!:J: S;RMBG"4g&Nz\Yp*ox.ń>#d$`2ϒ3. byإh24E3/BK곃W忌> yOw@<o1ea8bp(t;)54J#:GgбH&I"zcr:-RU.9 -$ Z=j? atCw>uǗ<>w$C, 6Xyt|  !a~d0 _4a**#3מX2ĒiVA4\"O-uftAr~E &J OPFaKkZRߒz!MAze)ܩ|2z)sIrD{fs|癥If;5Ԗ!?t S+0% $G)pG8L!2n)c'ף̜-Xn:8$&I]Q-\-!Ayj›ʛVanѼҌgw+4!|>6o|2k<y}')#QQ/?WmB7 @?oJ$G33Aޔ84ǥlF'x|ۻG]?:};U뾣nQāND36QOVUƏ 5>mp8DD*nS%([˷PƹݧIZȋX ;)|V 'x2226rnGkBA3>}ܔ>IN}rʝ4Hj{IL~18^@KEdq`Р%~P fq, qθL{\.~fn)Մa[|yWg֫09)zd5r(<³L|BEaZ-ʐu6SMFbC5(a;,$;T˰\˄sR;M/ni=dnT72(IDuV[Q98i[0fg[!/"ܑ ÷&ֲG'/ة sjIg* \WbIEq^vRL4ݻO 3,y`ɑl /B+ybVIE⮽f'!4R묎.(㻠=]:R_bGD2_eɠH D>W-Dbjd Y@)vde5ɩpߙuٖ%Q鞆>R7jO5L5#:b8 928s2eNDXef:3Y#v(ؙ;~-*Zi/XFMaK} Mm kg?,nnG"SDR*DqA-c x$ :N|W[QVgm%'N'+N'ɔ(L%ޯz=nkYCϊ&s#2ѝҎK/bWEm1ԫޕ^ z%.O]7宜܄Ef}#ou8qt@o`7YOEPR,8r_v6Ppa&mά^pllP\FeiAzc*/ )s'wC [Y6yl,uc/3zO㓍`E5rO7+ p Q12c妩Ԑ1}2 |i܎IJw*65XcF'2T6VJ# 3LtF-܀WS^ȟ"+7 ܢ(+DpônUA.b c!B7Pt=),g&^cLڼsq1nG4Cx˃^xJ@`sRx$SI|2 Eɫ%#vZn z:C_ {MI$! 1 ԋ\tQ&-.3ʉ.G ZQ+jJ֒6*J3 (Vo.I?Q8vGrehΧr:VEPRE=ŕ].f0Rd=U-gZh9ӝt*04Z┊s#z |%'by׍0uӍ$@ɕqʪvF !r<ؠj#s6,WxA&X\g#)+' *nrMˣw̽%?V R6ǥ~=6?`r@38ۼWXλON:GxtyQZ2m TxGх=0cX1  X;3^]zzKяƏ{IYcV"^]vi!#`/K2ϯ8@XvE<(Іwl(I?c\eek?3Xs"<-l|COLbnņ4vmV(ӗZyjB|5_MgD1[nv $p8%r"'~eA`iM]X)3Y4y^(=q'@@AHGOaMi4SlU#%žqV&L9EQVU}AAHcPUbz{g],$`s5.<ȫܔRӁ7mExR{sILwM+4s3އKxѿᶜFTU&ܲ{Ln0y;X&Ls{vjءP&m:$ߤ%y(lwEJJ #O(/48*4IcLk'Ax%i~O̽)NHja*VҪbscsV,YYc A[|(4m>H:oGl;`R-+Ғ%4ӡ2)D Rϔa_53l}Jƾf{b[/?-J<5KEgQ>C6kE86MwU]{D&su4|9LJ./O罋ڍ~+#e:ǷAŔzroi?ƽegxDAE>,_ݐ7A_푗B@aFYiUy`II7xx$7 KF5ҨÏ6x­( pDǮKXf.pi, Q৺&M6sFF2*~T*y{iu8Ԯ]qv[)`+`lQ)1V)`򫝖 RРffWZnWڢZ-VZR"F [WJFoڰhEA! kj.xn&m'Z>_ۺöτVxuBb:j>bjG6ε! 1.m#D1s5B$m6BөW3bQXl!+Έ-F6Ӫj_ToT-#FA+qUթ 1bӶ]T21:bB$mĸ:b}F2gbۈQ۳*UtfIʉQu'g1"L QDҞt`fdg6lDw&`Iț|PBI1&<իSDl4OuDTxE40,P$/>ДBu%bi +=)v"b._l%עrv3HT^4t"ldI[UhYdSu/+R7~Q}ZMӏPMFrLbP2k0(Ly-]C{dސo#ҏg/[Z-5XMw*cYP^ &B{cP&x#VzQ Bf(!:Qx(CJq;X,6^+?KF7$0Fxi<-bE6h8JJ#$a@C$}B=343z+xTWt+B(=2=mYIp~!L SNe@mPaJnɨ > U@"@nVV3l0>,N! ^ۀ lyIX˰)?9 PKHdDK/ U0=ad4†o:`wCra%\+9>7dvu&s]X"jl$k*<'1ހdVCٸWr|a" Lf)&tEÿh[;6~9pW'Kό^ys ;42K]6).wx#LȌ(H<m/hϬ}^h7y滎-Xo%:GrG$EqR0G>r^]/|NsVZ _p%m͕?};?EZ%o9f&UDGll=ӌ=&>joBֳJX@zͱ, inrI7aE,&iӯ#OǙ30φ35h@$BLaϱmgl7[&)rXh($a2XeR6_!UH=(Q%9^N#׭XqkjA )'YϹFpUDȚ\U "p0 Ǚ%gg:\bk)ɡ1ЄU796ԥ0 rdVhk) 7E)! 2lPҞ%f M j+ #OA5q7 d˫?;G)V1 MTWi|ߋA]VTn3u-c7uV M Jg8=`[ir>))+9dƼ)[M*)[6s|"燗EO z`woD*>jõtVuV3$Zx,˪Zq1HNJFh/gG 9ca1w* O^|QwA|UdO0[A HGP7oZ7ް-qR0YE_@4 >P$5ɰswt&™MƯ3vd gu n2D&a钍;$ph|Cy ?c_)Cu=Aý_DBAFYcrWΒ7>G3 g%.ҥ^kp^+RywLlꟘ{Lo_r0B3w=ǂ9xt{#{`,fD1,@4-> ar[Ӂ63.IG}t,roƵ] 3V.!-i B:C(_R|MjdoIFJ*r}1=a⣄(suPz#2Q=&^8%4N e%4ĎaK- [zƈ*%YtQZޢUrNxvk=NF _^]KKqP74[AfDkq hZ4^@@ʔJDM0B< [L} ̴./;9:^5XѓM3zb+0ͨeFt?~K:Po^/0 +q稇8=Чzq$AmlC\Ƶ%]jzS3S.j_wsVRcm,x-r?t@_G H d|ngת+(Ϯ7nRoIOuY6Avx nnnԥ .br ~j?6b:i(YWct),A4[?EATK[KCzooi|}6lڐQJU>p U!T:r'e"pw [̽K%b9!6҇PBQMηoD,w/P[32 dި5sF9(-D0<۠]0O>ǛZqxd*_8' օN#fhGnv XTuu5 O\ީ"JaCiKʮAqs)) 0FcWMh(o,M.( >(:%nne:[[+ݱa&*xBlQ u/43fU6c2F/j$ L'''4깓y[3?@`蒹 ne(GG./sys)cF^W8~cZ?w]%2/k~dA0;38ݴ7^sX~ts>oN4]9*grUp+HʿيDL<}ʁ[[c:ދ %E&Ϧ4)?FԂVLz9^Si++̜ $pe@.򎼢?hp֦bp Nht` @W ^"gfbDx26NF ay Ź}8_dMO`ku_b`^(%b$Z*IHZ>>PLmRH"2ɽ I)Z$r\.uLGe (3g*͐qB(opxʘ!@}yދD!(ZdX^e迥3E\K$"sD'G#JwA5qK☕df9r([1%1(3ʘmGsĺ,KןvA8'PuꅅoZ0ڦ*5hB*p8 {R"o4rF4Fm4ys.q>ъs(}^mfyhƔ9f[™L3cy4\*r'hU!U: I+S(Yzlik2p]ᇵ2vðnQ듟}k@[x.i1V;Zikvlk[LhRr UZrgrKDap- ެ4/jRCbedXB oV, # V>v3?~$9lc{<0h5\'3n'fV {Q𔀴 A1cMA=o31 }@c1fӘڟz#AZ ?42a@ `sb4+, 25 }+bSl3Nm:VZ$| :hA$ Z|-ix 0b{݂Ifg=AJiViɳ<0ةxLP:y|?~.aS Jystq޽%6T5TëY{kIźXB1=ڕǩ;=?\ _p?[rjtvrq H>=?:>(N./޳_|?DjEgÇD4&[7oHl@~zN1pQ\qn Р wHW񉹃Ą{zs 7)fITĜ_v:؍# 6chcFZMDk[НMQ9AD.&**?~޿;tɑGAiRuFo-,nMlLp@Z{؊(`* F<'7`i1MA {Fw4ACWACD!.=Aڤ#u/{2<@c㘔2>9n\?G`AnnAM|@)"Ϧ6F/3V)v:=?;=yGsp@y7ve yP6s0[ 7A>=W|+ 16=@bW%8N{C&7> 2 }?dΙӷ=r;u،&;caxx |0ln;a?mbdhv ʇc[f+-$h$ CfX.O;` 3X/. V؏΀$)G(q2l] z"<0T>23֭kik6n'۞q!C^ 4.a3VoQ@˼>plpD  _̰*} r@<@S x)HOJq 0  l,40c!Z<ȹq_~z{ux~ 8<ø5..ǧW0W:c l>^v:1Bee 1+^{}zu >Xq/gH߇8b+<>6vhAa/cwd4?B//iwU}|=:;<ҧ? cCmTo%Hvޱ=}l#0Р$9?=?A 1NNqwGg2*#&v~F<C$V;>n翮9>|+b+l=2~wxս/+E`i@C ,HD#vP:zv t{AJ_]V/ C:. \6m"`!Pt.al&$$b)rfj@FFia;LlU {FȌ B g>WKyҼlfj+l3xxeT|tslJ)y%$y~ė({TIV \lmӨu;(l| (a:aG!o;= `M'W2_4_ۆ.]rKphߨy#DšvGa`g/p*YV4W\aJؔIPl{ {5FQY!a)Űn1x], 5jyx%¶. ~-L>S4&kSҵ\`LP8 Wc X _x:jR$]:?Yd_X L^V8iVjKZA$EeO0T n  f ̄3I{'ggXX?0-oGCX0 }JT,`.);0AtÜ6MѦg#c%rM@I(b7,zƶ0Ez=hԱka 4|֍}6.^&t>DH 7njFd4urd[h3 u9_lLlwZ&`EgAΘfr(QHpyL}@{%|00+ > l"l_i .L]4?un[y[*nF@ϨDA!hz Lf GB3(t%8 . 2l#21[} aͣuD1Nr}(ۇҧ"|o#/w:Ŗ7ƭM&`-:^DE"̡C]0nڲ.<5\*à+[$K5{DIúqR` K>Y|L{fcZzʨO n` , <6ill"cj.D)M8R,_>=kS5`x<6o-4b `l -[ⲏ+6]:"Λ@U%QHieO?=Xqg7X#J݉t& t-ܣMQSqUCQzRBNХY/C"f&OЯ\nc4J 4'WƣQnY3sOL6 X _-\{hD񢣛MtrGǓv5T.Y=Qs ݚ:ޛY[x61CHl\`4[VG8émks#@EUXT(l)H>_ (j HY$ alwjs^OJ>?آP@DӨɇ=0Qjx'.P"R{o]#!.PK&zS~7F\ҕxqmyQ:3,"R(:54R#TNz^!p3>ʹ̧i}I ]V5J ^,+sҸA' 24MHt8d( JLi!eO mujln92=62CPAR/PV`- $ztZD:cF93 s/W|]I1J\Xk@+,'in {m)"G"sylDq 7)CDy҆nD9^aAGt a maAA ܬю2I(,SsIE_ShdݷT9 z6EifPUL#(QViV:+e ɄpW2x,;.M!M#%Ѫ(Cvҵ[c\O'nWvI.]Qzż*&x';` ĔgK` W.5nnX㱸N@vwm/H_|NBB8K[ }OPU9CI{Vv $;+pnv u͊R-M(/uð==`S<9k`_Ff֥ʬBxVΣŵ[i'fI<Pyɞ}< Sی>{%C&L(P24EVE0L bOeR4I{y2?ճ$"@Ci&[9[C!Ж}nRj&I uLZO,12,$HQcpDsc% ѷp%ӹzxR,".I~zCUb3gPF'V 9ٰċ…:n_3+qnKva7CX L}zrz4Tb(bNJoIK\vwa?9w wgYڧ7k &͛0WE]CD JE IhRQ@ <7`Og)hP=iڦ%6l<1OM<'pG'/|?WEu# ^7#sv Y׾ȋi$Vg@Tbu:"?䶡icW*N_gALOgv4Z4iK"M4mSa7[8M5L#kps83H!bM =4 [0D%I*exx+aH),_7a$[(0n x)x0DV\Օ6ϭgΕT'.󥒴/cw_bR+kB1\F,aDt1ˤ7PΌ)ޞa`H *b*ъq q7!#(fP NU, pI! `w6w1y哰VS?@EĶ,Ů#ˌ5?[P@!"Ky-S'=(ƧO|̌(2:4r M/kSF5Hcl[DBƃ26j_ A$I ,$DXdu&c{̉0i9BxgYV݃p,Q0v S"z8LZHrxa\XzE57$ 5jxn7!6/QC%g\Z?5^uJ' L &ĻG+_Q[J"BS7𧲫Dn7vJҺ@QMj;_MwXh& .p]mh¿]v.&zC.Ԗx.m5[CqYkq@O|jd|: .m1-~rn*9ܷxSk*1X-jՁ|I]'*A;G֔FE4v9W:7\" (*8W&&W(m/ 2uk1z&#e}2eX#Y6T-e{$m,T3& ɨeNdc>LYV:IdVz:\ixZ,MBNِ&w&l9DrK GL,[kf6@t>r* ]I/U;߀7P"6+DH0>UbƈH ׂ"gSÙGU 8+"Ylzf5h_9#W،d9Ve<V܁H]p1LvjOaE}g}pdlS8nJf/w1=IC1YPHϭK-H8@,Aߕ0Dd kBC&{囟GxuS/N=3k5&Kt)Gj RܙԔLZxIF|xT$/6m"lGS池brDR1ohiV~;eR5$jD]f>8azt5k%p ;c_p2c\DzӺOF&RzƏ#i$x@me|ዑykO a6 }e> ;Vǁ <%ۈ.3[JKk.~4'LCr[/sD'#W˪ܠkC 1,`&*.&f1F|%ڝ-ڑW;}blMOSSCU"3Qc9%j ,f #h&ywt/;^JITFJv&룮Lc!a+ƀ;n ,.}yy^:SEN9@0NâXoyu@L'>}{p1nИH]uǯyvOɵZlB1"/8ϱZ!lD#/K_(ȆBA41+x3ln5s_0'O89BAߠ 7t͆R5!L1 H{ #=KIN&p# {߆%kPhw7N Kf]3˺̕NT>(jѝĹ,[[˳K$ _?,ڇ ˵4Ggɰ+":e[e*iNP.p](Ȳ6j ݻhC.rvq}0y=mz%mjkVq#\ Ȑb`!>^SBC\C~(&q<ҦhdVQ(C@9; d.PaLew;ܒ/G))m.c\`Ed僕룺H[tegm6mN_KPT`Zg:l]F<5/(piwrL&݀C<cNq}&Is{f5X'|CekGf~&!U&GxN MA53TCA| ,~!Q,⊻LHbcsc'1HXq߫؍ۿI׼\Ւ$vjCUm)U =^E J2eL%v+$'!=m7 w5H=&Ћ<I:НM3Ikt]|[ L*QSzJ?ߏ??\ĺPIkC7GD-|!r1>S:? !لzכEQ@d:ӵF cF&[JSx_**3T5!'Fo_"aD-ʯfn'߀\SH悤L3c$_(YKܚ\n 쉈 B1jwNDZ;z7x5pҽm(8&2ϼq,OwV_\\%-e(1k%9KTe47Eb/HS4 b̏b6[3 "ѨӴ&L d\sKr5sld{+_+N2Ͷ;{h]q퐭ʙXSO]{SFNG2Ԅ9uJɉ^\M6]1IǯsȕA #_%]uЛ-src;271^׽>"^1 x1¢͆Fkmv2J˧W# ԍp!"<F2܅7Qz^K?'#G Pn0J( /]mQ Y'4Yp(J u Bs= >僀s"^'ѻ-楋ug(&砼9WTA*'%h.;kriߺN#xz[:\OGQhXNj;%#:7 2DYr(閶^򗯏\f5ri\\Gb:>9xY2K=ú7['ذ0D-e؁[2^^RG=:4LǴIH6BQH5y-zxC7ŵ3;K]ǾLLlR5hk*B<<;-o:<6x PW΁2p.hPۈz$ hTPV5R+9P|ڞg5>Y. hmxzxXx;kl) QMYos׺XAo9L_+ ;N˵{-$g}[/cd %b܂ ;Ggv-n-ޟVT$-~"GV/L6(T"0Ic|1j&ljl`m9@\BcjMp6<2~6NQ yKTswַgXScȵe_x?bfxp#_j*_Ҏgt@Mb]ŧ9CR*9%94K?}p˰螜2>M>؇qNy.ޚ.)&VbH-z+3^Q+2DzxrJ5e8#X[J Œǰb {kaT&cObcO,;FpYD8 >)+j+_ V|OmWrb3 l^l| /{-z\Jg[k;gIxkljPx+#1+e u׺?+9_k6_+vX[7OV>Ψ/f?!{ڟ[Y3ۛ?~|>){GJ[I;v&>$Ȅ􁇶ånY`%<2}i' ,xXZ! 7)r! ,! [>A* lHb,"6DjY`,:ldni8Wм5"U E(jFV { 8jEC*Rɢ6JZT<}H%+o}ćT7oP%[\͙L6{H{H {<$}H İC׭|Aw!Cׇ_S\yY>e}W^և9Vהc5áeɱZA+[S8W1pVNOer H]%Vs)k #kEg&e`HV"ɨ`60>`0}~Ete?~߄" %g1f;﹊-Z0"Ƥ{P,ayGE[ۛS1w~|,ZۚSeW3C~dB}=ψY5=u1y_o%|9iy J׷0MESM2Fi!1}bY7ٝQrX^ <0|kL"拆͂- pp;2g IP0wJ~5sRg0 +;לe1"SLv5Qsk57[SS1˙?|yStv\| ]m+2}2%~HEtd\H%%u UUmkv*d쬒 &%mEt_)0s-%4;RhUP&LLZirGKaߢ4A_Qڨ)1DjPmˇZ:Ѷ*xLҹ.KIE'`c!}֔@__Fh"Th&t$!`ݥ4JP5XN9Ak.<Ƞ}ֽ*ɬY$adz9`^׃$bjmߘ"+t_p"cDz !2-zM"H7 l:3S}9ma[ ûTH? IalBmRyl8dx5/)&q/T 1I CMj;_~sg?Ə탯7ڠ߆;wl2ג}$csOeu晊{znEmݻJ.Zus_tϚU(1.dcyqk dJS;2 r 1>r<}H lUϲvVE7̸g uK.ή/wTM-=}[!omOڭZsŷYqn~Ț5W¯vt}Xkȿ,1xck :1ϔ%G@vkɺM-o|ṷ{ÿ%ːXEXXXX&ik{45M)w&4k#gCb5hbiZ84iǦ3/_3aƌ3vH1Cmnj3vh1mnj׌Gט15ckƌ׌3^3ffxbƻZ# ,˖ֲnI~={/O~ςKegg6Wl4v8`ñM~{sUa r%L{?3"J+Y -|i@JVÊA(VJ>B,+Af>!AA15BL !ђbjS#Ԡ!15(FA15BL bjPL=^tc*r@>yK& W81Ҷ6 :WiX\)|2vx\>`eSϗ,K^iln6|a Ob =L.uɝjX@Q+,˒i-BBs 6@jX*TX=Hk\cƮJyb;&TKaxQ)W_cJƳg;iE[_^TO/^r9tBlcU/maxqp˃ OM}l~n͆'R„=c *QtA&3]pq.̓g-ep%v̂gxmN~ OwGn7X\Mп1 wT@bw+7+r$2.`bסLUXt|38tU90JsZG Vl5DXxj)QK"% vX# 6y^)G\H8 νryI=JJZg4m R"͐H#ҕ0fEBD0 /A[aŔ^w(SdM錅l4ԀRNX8m-ĝ-Tț7#>\6#~R#/vs!B4,mZxJ{\6OxQx2)r%`pDr#R-F`|Uf^^?_y5v~\8|w}1az6 5R ^3X,u^)DyN. |j&T(A~pvO;@Ðegxw |ua6b367"A^m }NW P8`lHu<5Sǎ n%R)2z>PQuړwW |wHo5Km? ;3/v4wݩ29g‘'w9\۴O%T޸KKglywto6# y,ѷCyJVք/b&tz+́|s g1VK!߿ Ӝe(RCiI@{Թ1_ kxq}zmXȚ$}R#gOyO mEW ex4b:e0|b_䤌3R sB /h =pFA*eY/|{ 1Sy4xXcTʇӵ $WЬ^yOe̳8 U5y^+AMflHN QŷOP.){K\#ɤ79h0wz&آbͩ g6QD>Rܽja\\W9tF ow^bAYq aa#W QGʐz/mEYdV]bJ,ma񱪒hY'v(t9sDD*ʹxl` >/*Vci)|0#~+˃޽[-֍ i>c+GM ae7kǏã-K2֪r |`&Uw8Er5+,iUF\.{DHѹW{$gaLQ*B% bZӍwRZU;}cI04'C7WaXcK or lN^TW,EN^'s/r<5{,lLׯ "{zRR'5ҳ24RzUa[BfZw=bUoa?tY 9@dX`Af<6 bI)4Gr>Yو·fj`eSX(.,SGW덝IA%GU`"w@r[`Ie.? v 15].a7575K~SCN0"f`C: 6LzZH~_uo Tl"x:̾u~렚xTه9~D}ߡ^lKbhTFLPb3͆Os{~>Ak#/)"kJ`x)w)7eH 4F\)7gMI.)7J4ҽkJ#PlMP$.qIN@ȓrpnq,HR ~+kSW%(}u\ `Z. 7@Ҋz@* ;$3k!чǨBʰ/.5_DA{ɠ :96WH]xY͈ʦ|^FI$.:YWd^:jd'0! Ӂ[6`Vj>ݲZFm;z3rn0C95_@_jcţ**G.#5bFFjDzϨOٻ].\\L<#ʃJڐ堅Xl ~1d,L/jlB*GQjF#F4R(q-HApUY@iF[5,p`#m.`5u1SI׋/.6Kz:ei>%?>mujP;Qm;^IIG/jD$Ai)HKyWaѦPhʺI6PufS~BmdԨ;KkT#Fًp sT_Cs]9%ÎQvHێd lBb;rlb;rWmv,U۱`hfHkxl@ΆSg2tzCX6Sf5\˲Cf,\.a Ymu|Vj0%Xv|DYdNNˌeґFl2@@+No:YbdKoF :CйϢhO" $MbÆY/B+t@;w-gs A|h꟫q\OI~j`m3/܄aC/jۙr  "KzF= &ooui/=]$f]gl"՚ٹ8??kwǤ_)|qP.98"^MyZ*BWq4c!,M]Ezȍ;! VR"@/ϽB?Ё9}Y;׻u].8.jYkVp"=7|Oz*J^H_HCYo5(;FγemDK`6c$a)%Y7#9zBT\k;[g: c\,=QI Zj;Swgl[Ow{LFn. Zo&KֱxW͝Z1 >SW@Dz0ʧ 6^rdRicu g7c{rnB&Uw5f( XO>E2;z?dM\ƣ=zo3}qđ3c |4o5)$' `hB"KшVhS0KE\& R8R}XpR[v3u=&ԛӹn)6[qQ^ou;ym6? Fr^;~lF;b΋sto rd>"pɦ5,E D++ lrk4}{byKHYmi};`iRCKn|)Lq%=Q[]tg`5$Vo:IgB$8lD/ޭ 3;COp;pz #ek0LDF9[+GsPLGF8]u/M0Jkά4ΫTX7%E{Ꚓ+^Ƨ A+؅`޸N@ ?i<|+B !s4a 1&M_?oH5y7I m2p^/i>J{eNZVab46pD5 E$O!uWxM.x"5W[+C 2Jm$vFtv}= tBfja`N.hH?WSjwr6ifNJQ{,)ѯ}}\:ӷɯ*O_1>'p8z%p@?L vyGlݨW!N>O=j}UzO;|(?:i P%[ZFjE (0;Сswg;C ҕ"xcu` зa4Np1qr+i6/ Z5P7sJE#0]rN|I+ j^l+Vcέ¦fXr)'H 4}\v<44mYcbV2F2 +@HT3 +ae7-iUT#{(` o-tؿ9;R[ J. zaWKi* %é|QBU,־ZDʼ^*|^߅ =ەk`32 j/O@`='H L@HCR= E@ej/T i&E_%)/'j3*a\{w¥/'*=Pr8/* ܐ+bgpX\ ([%*QJT7J%5{3 X3 xtVs0 D -58Zkq7 H \x@[%VqIy/aT2_3,KѵәgЋ?3yO㧺lChݳ?~:ǹ~9r ^2MM-#]0P=x ,^y]1#vRBZ]fYMi$H}L{EG蘋A79CuhFd}[( ]ZH$ŨHXP-2D buC&ev ,1kZz1-j{1BE nנIku"nea6g[SbտFZ+5jа_ְK^PUYC*$ueFevǿRIF\ ZM}IͲw&Q"B sndZi$,,s **m}&;Yxî/2TF.WُhnK믤v.O-[{ȤdpMf"]U"QVLQ?nZ( &GsuemX{v*.9-K>d(ϳhDj%FbUzS@|&#(UDՎWJًG翔lhUMntk7H/FD)ۥ}VwOu ]YX(F }q{-@,di P7 jS/^TZz9guU,5Z[g=l |dF&UFJn#DR# `XQ'qw/&İyb"oډxh1O鼒((ʝ?)?%?lzYA\aˆJ_x3ʷݬ϶UzN@<^|t 776^tS *g$m,lHTq mv"&)aGl=a ";e)zkHO .)sDZR"?i˿&m^B}M* O*#\[}xnx6z6Z@R ].B/:;ƑRM F=NیWi̺slݽa#3b*nrSt5y7^wf+Glf?+]mdgozVio~ocegYs )&P/RAT韝&Ag@V@T H2Em̉lmN6!T8T8:Sze!á{KoWuqYĞONϙbk/f+޾K cL]@~[~[W~q [Q&h&#jr]=؞_"h@=|z6A8& V!cˉצDO@gY5e_.iR.G*MSiX/f YrkTJeq+#Fݿux~9]=eIDJ4yT)6A>oR4 m2 F۞={Kʷ 7K 1a&1!cJ{jy|tlJdlkL7XͮWlA!)ibG,61l@̦loa65(fW\jU`*ajA}tWDxT[˧,b D8Pڃu~Y"3x@ 7]{_M6Uأ";N<D=v]#MiΏGe eϘWVwR::/Fi'S *wbtn?SIR)5 d̋t[d:,&K85GW1&Le%C69~Den<.f-f+zu`ZB.Q~̐E ,~tSMD۶SS}ryzhk@I PqtFҚؤf-^qoeDGizdG;i8tC,,zwLI<43|.Muܴ&"<}-1"LFM1os/\ xZ>*&B:p]qulr\*HgO,4 6LJ!}yt(=}˙3 }]YML\ŐޔʻȮv'M#qtlRfbU]ޟSsc(lة>;I_bM{ᘇ֭_ pa-&Zh°gF[k,9:k4hԚhaK@ptw؝Kt $dqX{5x!JkfZb0.mؤ&Z?玝 ׳'|MIuLxqPGdE 8@$gywb0ˆP>J.n4#3MQ8^]?ϝ1 G0 ]0oxp O>2f\:SE?7;Z@jI>퐳6m:(ݏu|m44Z7B>~wҮxUC`+w.FSazޮo@ ;huF4:[<"8(vMG8=o6ϵvb!C9j@Z)n@>PE2@#*:m'6cI:iCCNN` 9it[8Jr^k:h16Lx ,?H#=*Cy^?͎̀pD>extvZ AGZs蝋ft>;%ͳE @%uPqA6bDUl|@C3u zvAڷe QUg@L 1E 8`.bR5>Z§lԑ깣mvXqiKEmvxT=$GRDR\!.ȊGC̓ @AoQ+}”{+RYo L|0#0 Q2*)t]02yM2Ŵ-"66U بGC^Hesةή*)E.h L@z"N0@̓pZ`.ef:ӭu0]@-W,Z˷\ݹ\]b˕̵xY]L.Mkp2W2fLhʮ_v=yzxEkR.hVJ˯'L73jaѪT[~i\"qvʶJ)K϶9pP ЅX iZmOGɝ+PWJV90͛(*f- @6^O,ꧣ3 yc0O'>Cz":5H<6kHBF~FR)5EHN;G8dބE Y.|W*Iֽ3N/jIf)mX1taG_=%zBNYDUbD( St*Rt04، &zZ2(A[U#d[c\- ݃ ˜fjb%5SϹ4 râFAOg_kCq2_]ruY맺>e:|wO4-bQv7 yЅNq1kj&Qۙ&=U7g/|48ܙpa+2[դ_f{ؼa&oz?nOJ$uuN+fz,kӥS*2M |>LCn6h({vn?IF'й͞?'`>ф3QO[?qdh>䏙7mᾹ_,7>s@к|u td\t:M>LXWX#`d$I G!}"LhՓN3=;.CxgOlzO^Cwۜz3vR!B̒5%.۝ ۆȟ[ Y>G0:j< c^0" $d9H$b7F֬SRcp%lֱm2N'fTr](MtD]1eY6>?i#RW(`4=آ3t+)R]5A}~fqHlUiƤ*`n{()BRWMaJ\tD?L7e#Φ.n8",az0BQ*̠2"a~/"x#?0=I)rl%`ZchF%Kg3`7Gt4M&c+tH还:LkxOџ~yc?rL{4Y֔>Hk&ηo-Tc>`J#G|*(b,~E|ȢU|:χ10*n;䵁!۽x=DbdbM2fU7kix>G-⢠)5gbc 5|bl[T1kL.XXމ>&ZlWF&מէ 2uWgpމ~3н-?q!OLգ|rۋ U Iգ#U ZnkݣѬ2"ۘןej8Ӊ6ZzN *5U>ehhqn4_\ ^򜨯ꉿf,d쎚ևk|.Aq9]!ӊc:D2v℅g2f }}J/i78Χ8FP]l H'&cG(l1|!o{r27I`)tj1ú45ζ^NE"!oHQf d"Fr@WhLY0Nc`Dn_0@F#qK@#E4;s=&qT~5A; }p#BH PLI}Y^9wf(ӄX73İNb' xWlxTƿT&H40J156?I_*/Q´;:Lx.EJ\ 3!`$F'Ã>8#ۼWB.HFGiEuS`cAi#uZ1IDDPeԮDg\S@'0I`b7cR[ zĹ)FW$BF*ɚj%wDO0׳W z~4.<5@BDƣR6؞xͳfb `3eB}oy6z5Q?n L,P?̄nu#<5Ƅ4O)G=.6 h0lx&|(^N~j~׎uGYJcT}ѢX u,%;\GDH]φS~԰z?EAK{ޒ_Mͱ;6ǖ繷qqMX%#Vn,3tA5 s~ےXV;N$ä(o` ^4 sr>GfmEeZD}c,Es Mexg ?k^omJ# 64V9s7+ X!vЇQJ#X} NixoXU.R}bv'&y(uH)_,# a莯v_+P(d2*ScJ-_Hs'LAH SXP jryq^Dag. eh>4S|ב=UTz]a&ނ5 O CK?Y8tye2c!i!Mz@jٯEa|JmJ?QF'dRHmI@e?p2 kUM̍7 %7E@ ;N@$ypb??wgݻ RB'._n1=+ ,+1JLizeΏ$8H=D*Z5-vnː7 \Vsa)DBS3RsA<[ k)P6%Fܚڇۮ\k@t~ 3 fDhAFW'|||f${dl0EFDr'ԨXp (EŸDYSh'gdhttyxM9( g(sĚ yh'1ʋ_jjXи`aYf8۪ζ<5OpqIczAKwB0E*˥/CQÿ+BRB\q=X ׃ ,֐A\᥊b\xJA2{ @ầ /u/W"jadb:Wf_}m3 K|^ovj:`r${Kf@=6)JJ}y4?aq|hSPzEׁGMNpT*=®Faw򒽳a#jei#J.UZӚ(09}>e.F},^[H d{~jb=U8~S3K[Z_b(D}1q21zς"IRp k.z\ԠtȒR F 兎%HYH=8 Y*2i#m#@q$V&Wa@VG7X" ?%Mf4rC#D yWMlv?.>|,/HJȌV! *: 2=BŹC s1$#i;׾;7;p*x#DDý8ie@A{\fzUo2+x[@'hkNjsJ8B_ebLnP4rB VycUB+wNd}x 7" \H!I!Rbw5Fi3**&<)i$GdrPf'^ ^&'eJVU4x.Фm4ʬX)iI(kD5TFT'fW6^3cg.mNc3c11U#uN"6F c͆X:餦J *s.-\֪7UH9rנ7ӉPHY;$i-^ _k7)S=|,nkTq,q)(FUg =Hzb'9Xͽvˡ{;3XC칞]|{D@Z)_ͬקlٴv@,n֐`B{F0ﰊx1<=q볬?k<4:ޠ! #d2tXJ(FMZ;١uuɍzwhUhgG|gr" Pb׸7KQW!U_xEk?»-`Ïwf3 l_GlY D}QD N^[DX\O̞mj5ja[׽zJ^gq|AE0C1ۧH۰geQL<z,o6Z=QC<-?[OaSC*)H[x>sOSz.))TfqqAUTbwdui :<CpŚ8r` #HrD#8*8gxᷮ>\'D:ixkŞ\Rt=v# 8X\b<KrKh>,y 4.8{IaIL60JIlxT42z*lH50BDt*al)~E!ugQK |߂ngBuhO]dmFEB&oߒa:XG|cl!j"O.- j:d^U*ŏ[dS6:}Qe؊Sup*=^/^UD<- f^{Zh)~u刜q# &E>DWe %{B]S܄c3|Ňzݞ_8}Ǣ{ݴB>Fpg:tg~Khgm pNmjD-䰴G/d%Ms3{Q} M'W:n//3´/60G7@ vs/ q!.6ӗ.4w) f5'ӹ rWh6,[jŇo] +H!yŦheF|!V!7=ZX2IJ4Dc\,eJC!!c! @be\LZx~!nk~|/R"bƹb-C|b5eUibu-CƇTdq.LAȦq.LAȦb\\?_M!1V+D"~w`Y=ûJWT2WR wNloj9-ݷ'VqX߉Jx^(88Cyhmrt`0g׸Kq ڎ_V'І2*}İx_"v*fhmpH4˫_a5Ѧ*V03";T47(/e,,@ 1lΥ9t{м<ϱ=¡cԫ\蚵f3rlJ>=o}j;QX{nޕbQtrZة { c/ꭣ #KpcCJpNA%Y򏞷mǥ}팷8P{m9GI ҳS=3XKڝ9Sǎ~we kY#0i/)qzr> =j31KxۿSx ba>daغ@ 'h ;X_o?7{AE*_.TYBEQT-:y 6,-EkSkVRHEhEj?ˊTo5h-PLVSSZ꾴TW,MX.Q6˳Jo*E&IL{6Kh.oB&2GXCWQ,"H*A,mmXߪfМ0zn'rm)i .5*KbUXCG#\M1mEj\lC_N:`%'XfNx Ƌak|(CI) 4V"Qd3 ̟YCvi,|NtKb`شr1xq0pz6uc+AZ& ׉8}|=LRNN q|\oVc:5k]9X7 } obQ>-G@[R / +ߔ&-Їf}-S=8jPƎϊ'%y=<ۦM˾*# 2N(51Qg^Di\cjR$XƲ)jܤiP3/0:cV*xdℨtԼ8y[V[ku̓heh"KVϑ̻&^>6=[i.L$+3E1Xzh?ۭ|}^axX|۾5#0~SRrg4 兗8ed#~)UZj.xWndg]t귙C+^ȼ+PE=7 :m:k\#֍]c@WCG?+W//]?=T}:t>oڹiN=ۖ{W 3`mKa54&.]5eI'6-ڟq/{g4r(8cwtJWφ3h6[n{BzM UABMGd r޻[d *oMn>?=8{O3t=[,<=!@vDO4FQb.nR&>ܾɂyq zXg ?ro'Bq͵R20|{Zq?nz ݒ=lЁ3ęKD٘n.Ovq'é J^`~ $lw~TIWFl=<}͇AuIٛRAcZT"vC=o~YZ.Yl@4b*&%7,n؏QR} ,ћLR颼>5M7ޢ&|07YqsCp($( O+O#%eJw J ~]*1i }]AX1T,9\rTp6ZWvW Kپb u1{Ho<7x`@e++=wgS~F{2i`Og7?>b n;ԟs o=yj>{9`xqLm#0f'F0+zה[\}x+Q䜖\cN0(O믨Շ<5 #q޹UqGͽOխEC{](:Y\\4) ` 2:gjH3T&\#eAX4cH$9Zg槣E z:) h>+rk?l:( P1%Nx!UJwqI +^`mK#00S4ʑU oOP]%u ΰ9o*_FPIy+AXJQId~*2cFa*5 #& aN<~9"fb{k,) X3Tb;˂Lb+J1~ C8K~Kf(>Y/BrLhяfF7BFQ,n"PvH nNZY{X7--Ld¿vWoϥ^s)#0͖EfFqry!GCwk(E߈&A%Ge7TDIݳ$ аETO}1qv:5kUuOɜxF,xFJhot;G~5NBz3LHⴌc Tݩn !EA}?UZqCgJoL0yR;m4Ptέ3&Ε5rwa+oy^kwqc\\~?X aC(B?>+vݬ%uq"j6*jǷLBvAJ9hMm̍>>|?לABjU=qP,a W>N?fǬW ̽>7X\+2ûKwNo.qKG|naYu>]eYFĞCf¡Y"'w,L%VTǭ;1z>;Y 7tp򷬣!hB>TR`ˣs|LNAڊ4;k,p mfzdЇ6=Ac!k7ӐY%yJ 48D#!6hY\g<"j`Nً(MS&OrX4}Ff16A,e*>Ɍzp1-Ĩʦ˚Y6y# 8 "2Y|f0ٝ '?wjhkF<__]9ł FRF>aIBC3:STXzIσPnŢ(GoTDi$95x`$s^?2yUPVC_^t9vST6=8Y#\Q<,d'N &IJ B.r :2E$63ج`柹Wx]ij2^^Wׅٝ8%HI)K pmQ;y=s?t+̅v"|nrkGC8h3e4q FVFDsaNQB鞱IYE=[i'r2r^]@sSp3en+rIG~Oƞ;>E|߽'w'bO4!S'RkNkE}l]K17vy{:v繐r{xrUrDU~ "߈hˀt5=;[g`NzqL^NP$ ;*՝&B>p#'NW COHddB)'\ήRPA&<*roK`6jS!9ur$9QԼpĂOa" 0-\Ww*墜f AAFDNS~Q)]S?(`~ǂ>H@mzFuP7q>cn##PVIʱm9! %$Pp퐚4T1<Ϻ3=k5eb۵18c0V)b@SAy.3ۚVGTz`{:'mHȇ✔xo9&1=>'jH}L͞O ˒񂰼n6_6BCĵ^A)wy$<T;>Ѿw!~$}yلo$m K%k#bl|iN#8!]H6I`0ʸ tc{3s.A3uy*2RaUR"̒XrIJOyW\t`K#x6zo]\2x۷c'V) bkl|i%QYy*\0gR CZlH/þ0@DD\4QƛF+Mz^ٓO`z/ɇl t?Bo?!f/C_'Lf]δ XIydG&5c0'yZ"AfP47 HbQTY0PBɅ&]Rj& )w<{ώ%#1pu҇4I8S R6\i㊾Whڝ$v6Ms?qZMi;wFD[JrloHJDRi>6   PA SPLS97fbGv3ŐLI(60ii3fd+fk}/АٵS棥h=S [j:0Ƒ>B2qz :f5o6b}‡mj釙\[TcXB=vn9nR}erlISP? 0ait1J T3b|=Uϛ[_cp> h_ifbނ _Ӥ9XD)w|'ké+P178J1mi qz9,{ڞMȹ{G'F%,N*b3tn1m84r=aݲ5i3ۖg W!6'9xTh5XRx[rAg%#շ"t,LC^W %O%Bx<$0X]RDHY >*F}h_-=+vuz΁<4*,$@ַ2 bȥPDdޕHˢ#vZfgERKC&%'}1h'oer5=#߀1wPoᯘrpdp/Ϝ, nxt,oLoQV'߹\O}m:kE82 ck'*ReM3Q6[ǹ gyF{D63KFxJ')irDɛ~x{ֻVUw:צ D[+ʸ)(]甮c^3z*#! "clV0vyR傷'4?e9ll&HșD$qz 9pq>ѫx0mmzSQ}]Rѐk$,ъQZBrE&TՏ̤xpi❘֋M\ >j a`?+ϔcL04hGTTxf -8Q:MXGL%:T=])4H?+ KB*9Jke6$ȲӾ40cҀZZ Á <;ߥ9m[k5 N 3>[;&rwǖ(VxLkm-YmX'M, ^l#˷&rle獗kER էFwA8`CKݯ]@mi1xU¼m7QkЈ+ǂrF1IhGq ahބ&Ď L! LXEj^),Gz]s"ps|cķd!fSLeFF\F!$doR4 (y=nt:]x (9ř(IOg s)4ʓu¼@V\N(?޼}tlDC^q&X2 Fh߸ 4yM8KuMj;Qw2c{/E1vI\WzCŵXMmfE&%K,A2\(a\Y\s6 ʬx@pprCׅF#/ p:VR 0bf8 \L$mb&$ tIhʶmSBNdq g@¿aͿ1cy!{J؀*41wT47IF`#FfF؄G^x=>n&t p~ڭ^!bFlflhti`ь7(qDdSo0h_zg׺p\ɧXu̙#jsXyV2=R'@@ tA$+{89vjT$]jyVA[ڎ<bus$Hmf@AʚVZɯǏKW#Qѭ4&Q/~sSiT! Ʒz/(7Q J(S*4__†GDGWGvvpGJIMwvyjP@ +Ak>58 hW{ϧQRP{TBxQd}6AŪSg6K%qcjl7NNu B?/֟ξKyT ɘ,U[$Qy=$y3 S`{8޷as[Hs*#mPơdx굏0+a)'_nᕖ3HEN Fh.2uW!|*TAg6|4l+o"ܗdR"!> ۛ =cP^r.9 qgrؗ/)7%{VP0,Z4v,l#j-j5eR^ɅsALiب O@zg'TqPN^I]R?vʶwf>a#$P5Lڼf="P׸mN:&m8/@Gi>:ZLG:D wE]@1y]:?ېBadi0 {C,@EU8aXbBJD)?d+#z>0D~`OkvSrr7'.X3 0yakRpZ̐eڡ/}A?".v`l""S"_0JaUCkKvߩmw̰设ղ(f>ːPٵI.ӭnG Ì^Iױ+8\^TPbr 1r:~8ԒF}>]bEE!d1>E5{5vUE`bwF!&X⭿mlmY'z'FxO0Ħ^7Pk" +(MMtaNI˲g/1JԟF]J5NKG0C,kh\Ip#5SG=5CH3 A/-r #U|qrz V<, IBߤoYۋu՛=:J"ݏ3ab X^*e&APQx*~i]5kTӺ +K({C,њބY "|wh1JUuk0fFbEMxuPFc aa5_~ygyi(EOrj(,3c3åuyNa9Rw*Ii2ӽml/ OpD~^ rTŠ ķryȽ,4ذ&¦iqsȔq?4${w(yּ5l|O4$?>dJb M~ G^YB^N19o[SE9ﯝ}q# PTƘ%F>58~!ܒ/zqвqթ~UmʝVΤȿ_qGʗ1N2)̛5a6GP?䃰|\7KhNK69x^9R,| ;rM,z{Ѕ%,lyԉ@.΍$(Xbm 3r{J0kZ#3lgSJ0exY7)PE6~1[jXY>98lȱpLSKXh8b&ᯔ*_6=6JvV'n`F%Iu&Qau uǷ|ART<|P~wU,nt0AFxVg6L kc~ODhz}.U~f_*hNF OQ%}˄AM)mOkΥkB, ?p*&b4*lpSZdz~``|fԏ%6P\*Vby?n5Yu^;D^ J zX)sY(YWVcpk$UٍrY:`q])+< #bRM?DD>yTޕOZ ʜS>ȅ8.AtŒk,> -~Jr'PEotv o5J.0=G d.A* .A#Ozzpj Z(Bb.it"fjo 09!'Rkр[8W(xh64p^UNFjT% FI7 ^( :L5<~ nH)7кt/O]7eCo[oOֵ`t1oN-_75'^fq0,ґ0:>9y!FOO-u-O*<3WҋԶy5q65? ۖb Pl9W1Lކi-\_5s"!!anAcR|RۈMdś7ȇVoBQk+tO5.#8^4*f"Hu0rFͩnEsDa1–鈠QlP6f&mkzHYhɽ Hn"M)%%$`|#D-X))`۵ C^v{bUp̛D{j A/C?mXĥ@:ш2B,7[ǟ$ИkԟF%?;cgs>8$E1;Bpvz\Tt]4q{WW9#] C?\k&"XL} 0oUd\b=1Kb1aJ Ɓi=bn@"pm"z>ԣ2Jui_l|k-4i*u*,ipILxe$_zaWBi% l1by\IegmSg \}o.~v3fPG'I l>(Ou,s͖vgqrZ! p[/ r,53Sd8l"v{}\ƨQ/2 )[e@*XYoȴQXǑ?huWw= Oo"#V a|mo7fBf>6on\9Nj n(:1{84 iӵ]J4$h 7boEBf"u K-Hzu F?yB585sƸFVF3|ՍtavszuL7q{KOOeUg?S5N_9"sa{Lyػ9Q*=C;i^צޯ(lR9=&2 )v1= `GCq$3ج ><;?sQS=nkoARϜ`HŠ1[ j߬IfeaҀv)^.\|gWY:HG~(/ly)^JH,Oa%cĖ!iJNe _'2e򉝶rґv5 DG<ڔ8ƅ#eLe@rl:.J\n^CQvs'0)I2]w;#k0 d qP,#(92S*vFy颀"H8 d_.F%Nd GB1{HLS˩O/Ux7c&E+%Nuj99<|3рg&(jvDB.l;c?Of14No"*kG_,=i%U_mK)ˍv".Xd_oi?xYIv|Q!z<g#<1(-rbCi K֭Ty ±Vf}}OYDͺ|S\"?j':v,eRAReb>%c ^-pZ0mkϥR:O LR/o;Cl1L/)eC<6|e0<`eM ؑ;-*T/ؒQWI+0x@϶KPB?qrQe `Xiy-Y^fF=Kam:,Atl{V+6 ES:ݘST ,d<-''l7[(qu&ZCMtV$mV a|Bn< Mp8gu} ܰk Nfyv`'CK< DŽnv1ӧtZhbe2@ BQA4/i9 +wtzž01hBib21bDMGHo)L4Dgn4>rG cEĠs%6S6K^u[Ǭ+!̑| 2$SK6hiy̷xbqͷXa1ȓ-~ ,5A$\DJ|c.C֦.6JInLol?f"c JcBҘ~ý&G8CrϘP &Ųȸ܈O#vLOhrz$vSg%$ ߁1*fS>y3SV7ʖÉ]Ԫ:׹oCmuT7tt:KmeT>zW$-L>b[(8`MsߥM+mNQf{oNڇ[ZtÏ:E;B@?6![^A6n6ȝ7{y[zf@8 :6n; PdEEV%G+ H jvvؖj_>3$}zL+L:2 K1NJ!mR75z}dpf_ƴeI"v|s>yJ`9C0GK:ƞVCBY6x| teB;J,*"jD9 Jj'nv=؉m`ķ<]57KBq""҂;,PG`#upGO֠Uٻ]-I~!%'^nz^F__CvcsŻtq 2 Q?{>"[J`3$UqGvvj*3vwvcg܍L3_]sZ &J}m6`ڗo_K &@ (H~a} q-ӶGL w~&g?>,ȄhBQ)́Aږ+}!~Mw{$neıl*cy>l1zjbfL… @0>LthN8a@`(d!s)ۖ.o`¹9M|h5m7͎8+mhU f@ ?ßm I!vOY!nmyygސ3<^>@mNsEґŀ+/"v_*EtΕ;)󹴰tmX[/=B\ځn7\qҠ|M)!L" |GjD;j T) C v3):@\zLjS\ge+B}_O v6;r7FR()5ҋqN`p#|v yU9L":01ܚ*!í瓰eXcRA9"tCh̷ ubf`v'}t1 q'cO_gw돪?4 k=+Vd x#yA[)_v^/3DJ)s_ ZV}p~hݾ_f6r.`] 0 ܜgd6#}iˤ65OlрD->r&:sKX1h[6M.PFk}UÑ]w,OuD!p?Y\26:bڝ\eu |tͮ rRlм.C|.-uuo'OZ!.}]}N8RŻ^C:*R9Ilv&ly*V.|v.4&.EbrӓM9eՀ5xP$dQHYј d`AwQ()֋5 74nE-Z$luk[J&,*\KkK(vv90lH2x?{%#㳺oGW"ItH9Dfx?6Uj+_HR,&nZ[3%A TaHAsOfssux Q?9>19tK.@;j!C{,DhT]?f@7j);;r!}_v+]1CضM9G᯿1qnV[owpZv6kSLZYnqe17/BEN@v-:5WEݾ~j:) =wnU"=:Y.f^w#, Ugchr0=Ě 4/IH#g&b3K~ٽ:Ѡt!=Sc">3i֦ EŞ%r%!:Eނ1⽲pkL\փp83^% ~|qnI }{6s]K~fM ۠a3ˣqxR6AeC_3J'P LBr cWD,㞍@μgbH-M<ހ1J1Cs[֦|X&hrn{~u#?C7qWwO0cO 33.(G&Ͼ'KFȿ0-X0$:X|5flE${N, 9^p"4~=enM;N7T.BGg\vn./꽱&~@ҝoXIYb^'@5SI׆S6'!g|܄6B.HAbVnPlgAܨyh)NDS&x|So2h$m:<{ѶvN.}?pAW9"s a1,/5h`0ǞPhtP gw8#d~<,F/<;P(6@';$mL$W5 O:9i7j^ _N=`ȍ?TK7qӴ&uiө#lJ(;s"9%uqWLyeѨMVtV.z~D,s^б^B|^{ȅ$뭡Eisc3mKjrD`ߺ@{fYVjz既F\G=us)ǫs=껲l+1MwRzc"fM! ^=*0+ Ig(5qU*B̢R v^8TBcJ=`( xjLJӂ#Ͳ*qf1"+8+WX >`01)Ő\Q{t#exQXA6萆O~w%^3_Fq\9+L'3ÔEU\ͻ1o~S<-VᑘOi}{̌;H 7]jDR0gDj(#Tܤ.t5ueb.ڭC( sZA ipӧ[UZ^j1Uw#?E1i\@[|_ cw۪05YXP0sR*( B7`$M/iW(̗"sTu!~hr_6UWD~˹s4L{x᝙7pNG٘l6ߒئuݡ pH7Ŵ0PhӄT2IE]\7l2@ QFڃ=Gh1Ae-(T}&joW>FCĹ֞:^w0aə\ۉl"Rf? a"v|cm8% ވGr;"|!ţ}0h,kbAIJ¨y ˦aĶ]j4eSdvIhDCKG& + pO8,e5`d 21R?`v1_g0o;6>hwZoMQGΡٕBV7z=w]<OZvŞ%xa#&Hj󊿿M ӱ-F #ӌ=](z R3'O1[8. =Շ;zr*?1.CBvՌyʝ~acSwZ}caf!ڞ9[;hW#?u 'ohHX޼ bRʾ7$u}Q:jfkZix'ߚOnObEo[[[W,# <_ND8tf {E0.ŇIW1$½'je+Ze:$2RRPJSX( t-a:t}L53+VPDqwR+KNy_tL TqjLJu>&tC|*IAtbz# w:z9FL1ߥC5M9;4Z:%(F|k0 .W%1|Y<(SrD%6~T8iѸw듽o\8?rJdXWݺϵ"XO9QWIvB;5ڃ~w{WRfqAȷj*-iST0}{erٸ]$1{}؇ov r|Ex _^UB&* JfN` EݷwZ  e0ܱrY&(Z6< & "KT-ĪD2hbr  C)|D%-+$iMgcohqh0ly-H3ˤ]K8%Zbr16ޞ1 Bo)`!fߊ7v  J/.' b5Z: Mke˔B1=4EM#87%LZYx-Ibت~kT 曽#RyS[[dzJ%`ö9kl*z⯑.}ڠ.ɚU3Q.8GKY#d`p(4b"{o$"tVـ$ն9,+҅lȼC{Xf+hρ*R|1_wY&>=շW/)qc{,ٷNZ8wD+|FWbsF<*'*+X7N*ۯDd%"ADۼWI?xp }ֆR.쏻`\Y cOAky/2OS :M2kC Nc[PEё'FahJH% wRҿ0‘,L TC aP{FR,Id$ ZnDPT7;fXbE!T3mTUq]8b Hq?OIۨg;RehOU-j7G1@x P)/{Ǒwb-7ω @bV,'8QYQF׬? 13@`1Kwv?2o,>E˃n{٨n4 Xb6DWV?@ 5^P?08V-UaE&ZC!iYI ZK YnоՁN$DW:?Gn`8MG;0U)I'5]%f;kX.t,I|A@5NU.S=pW FP?|H'v,u/6n ä|Sd䅷aJ%@J8hP : @{c\' fɑi!RKLUR`=t4w|QJԂQ<\I#|\*Z _L\tL& {$UMF2o=({U4_J+y /+J8VS-5^ "ύqzp40ۺᮾ<"T BO39!4Ň3) ˉ3Y0#&p>{K$2) dDzu*]w꣒k' i]Nan\=lgi]TjvMvfKk3OV-=<>xfzbӭ;PćӜE16q0) )@bŠ<)YemQp2T^vLQST5 fTРĜ,"6 WXBI8=J?),5Aqy*D)Ka̲JV?I'A]@Az w&ހUC"XH#یc;6xXGv{rr̽YRJϜ؆/y&aPY]<;2 I̢b(+{:WW*3âSgA5)[dj9HܲV~k2y\*4IRB2G.kSEZ2*=G2PYq ) Et &ʛ' HXq{YTi }#LX |ɧ=g,ק _p bxۓ铽Z}Z15vukb1l'.wg:ߤ#>;Qi=MM% ؈6:Fefh%Rㆥhf%%IM-h6޻LrQGl#a*S]fk^W"3TJiFx"`+³aWȼLMb[Ds5T1ic:W'+h'@ 2qc ZTxONo vTfGa+ɽtZoSJWސGNk$Bw| C%?+։{y ^bc\|;i)>"s++Eb*SK#ںر|5{o-.+XwY5R[ƓA0"q瞥e/;B:>;@S##.>X~:uRڮ&e (2ʿf^ gөD [nO (?;/?&ldR|H$Tjz]mD({0~2ӗeޫ@DcNJrJ$ӓ5dX\[y{JȪ2gvZϹT&Np×JvsOT3q-=6+,@!\`93a08`tWjggl%͢(D8N_nشG+ %'[C@SySkg$x+[aY[FXX RqJeQpZD -3_\|`kTQL3fדdĖY5q\=p[MJ=;%q)4k)jy=a4]ܚG`(2[A +,u }²oOU)cJ;WǶ3SmS>|dnJ:](6.^[~ӨI}u$@JlVbĦl6zeE%nx<QknT!aA8vt\,ȑBi~}?=wݝ8P rq8cη?6L4lڗb[5po$UEsZě:0i>RQr"_22sEo)2:_ma?j],^%.H\DɍJIke$7zU& w2ō'2גqz=?&5e r8tg^hp$rQaCs-[.v_Bc-}s ʏ?, %%Ztڋ5"V=a iPn*(EjCC8oU<_S9Oeo\kU7i)t1?s( h|?2$-gnڍ^Ӝ%`pvIJ?9ߛ3z!]ӭ"?pǮɎnu$t\_F΍ad.C :2r2i˒[@/v[!cp @eF耩!wuBTPi܅e< !D)rt7}hǴD̉EW~$?s4U[s%Y"ou|aգf꼹Px<;jArw㏷"=l>XhkAǾJߝuߩb9Y%mY_ve 2nyYk8tNug ڰ(+]ٓzS>-A%x)KwYkI61@%tf ,ua"9 ̆tM,`!iNWd PBü&܊m9::IvgV)$HŬčyMޏ.3z?׵r$N[9P4ȱ@fv DNlk ;Vj4̾SY4]dVWj)]Ӭj}!U*V>ꕐ{!4cHrD\u/^c7O45IOu$MѬXWJ!ךȊ|@" `]_ k|8Xc9YR.FX3eFxV5Z ùc[ )#j̀4_'ӽ& KmΜ,v5ZZcԧD+h;H[D]$bX^x nD7H6gFړ_0L֊~ ,/1ĉaQfT* VE (>Ѧ)kT@Ϭ,&{3Sj(z73||$ShtL"~^$ V -bуB\ :ùL*{f%6^ll[kţYbIҀ~[7Hj) {xXcHe,1t4n7\xY& V<{yŁ&m fqo6zG~l& 6Ege$h<>pY0d{9dGl(l]4Ptd8.U!?tGҳՒ^af/G3S9.TCK+<{s1ߛaI59cnYTLZf F^8[|&[=+׈+.I;pr~o"Yy8k'#p;3?lW :\ #?;nk;i)J=U^eӵ\tKx=E4U÷i6S o}:tANETwS}To$^PjC ʪw\r%%+bTj7ߗ'W±{/{xگDd`b/NÕ]= fVrW T)cS/܁Ӣ* @pQ~45#RJ,2Lցȱq%1u|[t9 M`$,/ F w=*yv"_h~ &yB+as""i bQ_6MI:OO5vZPkɄ0ye^H'~ VZX{n30\ۯDdsH-s*B0"ɻ3j7~lBxmzf?3 /۰a`~ٍٚULti9%xı[Y7C^F ruT"f8UB_rV{޽z- Tl}:b=V^f zL*o$aQWQb:YS6]H[ҝ5޿mjIP՜*NVqLXpn[\[be[S}sK>bGr>r͜NH8dCҰW>E+8왖n] PUNɉ} &:>)$X^婮qn05Rޢ;a9'|z)"V4@|Ra:3@vr ',) P G̊j3kStJWmQ=7/ZZ_‹? seT|TP& oXsA:zfqbU2܀1|k𘲧cJr^^=fxmCg<u:4嘌~Bq1& ? Ev,VǏ@BXqz4זݥ<8Ҍ ¤%)Q?1W|^$TAaKkZNEc+EE\r䴔yzk6_~Bgʙe͋jxQ hn5B W["}JF)bY~)WSKΟP.O] T SEfB:dq0nbhw8w-r6n>xyhw%:rw? <}v`iL&\'rCGaLz49m@U)EnC_35i҃_1!%:cOj)T%2i}lUr< 7j+].iЙ`m>>(cժ-'.X &v;־::fu%MxQ\RorraEb5M"΄]xR`0;:eA8 ?u?H[d3"qҸ {۰)?8e`㐺".Mi] I?DGES>4e׬J%ېZgjV7αxSLt>t |u'b"w@~#~]oI*g:܏+\v ~Ww zE{1ߌ;WɌ[W@XwCic {5Ee N_s肚$Ih'N\i\5lTH8Z)WŁL짖m@!p2vVjaOWZ!Q*~ TJ9nŋTL+5+:uBv9k1:԰Wbj!++0POav˒|WԳ9C%Sq57ƹyn6ϋRZMFX_E1 +"_wqKz,бu ?Yğ"FpXQ AΐCY[k6<{Z[Mc4d9L^) ] DKH)aZ}CS*kűX%;UW'tFQ¶VLZ0 }l26)~`0D̃> 8B.G- u$o$mM<%'(1{6ie!= ֜8@mIM?_~&5bEsOZ@ UdV~ 06] )ymXɬI.mqjfn-3 %9-RmYśf b1Q"%hX0l3cGPORsϔsoMcj7$<,q`g܃ǣ֎ռp׉NZx:1),Wc˛M(Oko_3/pGOUy簍G"  հA1%!5RԿ׹^v;QN|5ƞ92eK ,LOtFbT_< Cy*! #;,Dൌ'uDP5֊=LeS\άj'Eb&o%Hb! NNJԪ+,Su1zxˠMʻT6 y\ įZ#a!10Xo6mT$_7Y־}8zK` kxSSMڶ4œ\VEy3GWеȱc?lA߲7"df0ro8b1Kqd=#Ä[ܰdgCi0~Fuê hsPePD@`54q@3 |X`ޥв9Z`;< h*4SBd]]]Y?#*=! :r.{x{ sWi,d_&. Eh 0(Cp,yL-(22=:,ez`ݲ\M.I)6Me42.@X(&E{7 sjY_(E-iE(]K!Y0vHvF;oEb`[$$Z vPM檀 yV 59t̼y%l&g~vsY9:`+#7X j+\K\l lG>dTa,:|ul{BNOz΢A /:`ɐɑW6\4Ěgμ6"sb}U~ZB/i>{>(5tɽ}VVK/7NkJwy TBʪJg?^:Q 1>Umݷ|[b~R]ql ڲNk$:0B#cvIEϣ7+tЊ_ +~ 3Wo O;΍?({Uȿ,F~{3Fsׯ KF"_PTTANHWZUqO~_Fn!z2r`ʄSXWpĊ w qLDʀ{ 3`-H=[<켛7]^,mim԰ǠpZ~׫eڎ miEej| (Ly$XM\ 1btgG)f=UXTb%y,5vʑ,Nu>UWޕgiTGtW 'Ɵ_?/R,d#L@ ,aAW6X6Ӳӄ/4C W  a 'ɾT6nz6gM'4ӤS: lWY5C7w|Iͩ6z}eF4d&I"LXYI"/r\cgnǜ xU)5,V]@ucUH篌1a)W>5_ѕQӑÂڌQVW>]J(֪=?4~**ghC,g9t:X u| P@YEݏ[_&*ɅR"1qۮ&naщ R %d< B<9On f%e!VPNc`뤊HgIWI)ZYRU?짱 _\ؚ+|)O||^V;]߯rKiJsZ@ƵgUNºVwnbK>2qPu={b I0g؉' Xbe2va ^U*!?Ij71r{ R4\EWEA@/g4egZNzț,sdu/EA*M~4IQ\Qp+{G>H=ϨLyF8Ob}VW5 ͖z@clt JKʦ1.1t]*/yk9b;Je5lf]owwdH`m݁MJ4w宣n"{"]4h5YH"1sUE)aSw9cu+' 7.)҈$nScz Lc/.e]<.|\{xMFeÆcUf9I-;U.[;oK`&R`T9ہcaQiY$r?Se$f9s!ECD٤ kI]I0fjc/NX8\xOhP9`fC9v0h*l̖駙g8MHy۬L&IOpTDs5y`]W` Q3ϱ$Hv %x [f~G3u\IZD^'~^;OZ|i~ئ;I΃1v InO]:>msˮվNxyvh4i4̀1D (NHғd Z4^kvƻ^O-`&&4)8n@1b>+7KhK=la R2I`@ Yj ȀcqN7:U*a:oq9kE7;yY4h_; ֝U弛pszeͣ56`ԎNS!;+w$I'}V,w8oS\KLvcZh)GΣ 9oZ|oTD,O m/X$7Iyx5DermT2> 2/ǷΥ)W|Y2LJVע)Y-}6#J2*@1{VO3!tDheٹ5oJV&FHI (=jzG>=U zG#g~L t,;TЗ&?ox*,To>0Y{D Jޕؕ*QәRT5pĩZ'%c~#!#HʀgHK=`5~ųa9!eSvLڸ1ËՂm_|ID(0.eỘOó'DPԴaec^1/~VT>JeR"WJcR`bhơ|J*hJ38UHn0)G5 /)D!/Zi'Ԟ8/%Y.kiܶde5~.Vxƻas) rledem2ݔ7%Z^6zMyC+.fbR 8 )X0 4\7 ,ſe$Μ#}fD>B>Έ>d)^LHg*^孌g<#Yqϊ^7P"քG]8Q)OR'7Gwb ,>֒:b^o:NnM+.\9FsqhX&Z@s04~DTΔ$tsYMȞbz"ˀɺ: {F Fgl@ӤA1''+/aˤWsqQ>Ftԙn |tЂaT"7=~]MzU[X_J dLMhq!yhY<:V l?Aȼ8Vd4švzQ 2o-w_g)^4$F !yFב V&,9 ̹L;V贼#]hGqsrKm_YVCq?oH^9EU& Oav+eETlOqy_D=]dyXFSjl%Pb ~:4A~Godw! fpCLIdeւ[+.е CڡiK}CҲ(@D<y%@eޗ*.g1Nlv:2_F6_|U3h)&6;ۘܙ5MoZZ^IomPƕuk:u҉( %,}I@V0w,X0y8h7p| o~q1L@n( FyT8,KV)A@Na{' RGĔ KK@#^xYӍ:)(è FboQBG`t>ǒ3y3D5/ ʙfvE]k GUh|k6*e (S,6;shz`YF(k8ιQnED zǣ73zzd߸QrX|=z,{K/$#b8%Fh F3TK68H QzJ7T!ՖjDs#^HA=Ww]1Ȏ tUP*|j# 5d4|Ȧd̞ίL<䖟<1PNHAvMt[jd MǴYYiB1mV634^%1>Q'ee2xf#r 4p.%nLT ϟRRY$oYj)e<ZJYRHd67#/mOr-R笰j6A|A: UVC؆V]1.>`W&F-a@a ).DfX'ܰ^|71nH7n(}' G%Ȁv=\{oțVvnS_$H1qM׍Y M `uiq(l֑0 % ])+#̀͞u)Cz䅹_Sj2ȳg>jgr0An(Yaƕ+Sqڱ>:ȨzqY p ii4^G (TWh}-1=i ;7wgOUQ':ڠW~"% vbG,!qފǺnӟ `G;՛_vwzIEb[UWB9 ] rtLBLQ$1J1dr"ھ]oEיlpX䂖B:40RxHXDSֹFg08e}|ayaXJ) r-8[96㉥ZsM ܼ@eud1rE4hqTc+N4I]sL B[3uҹ?!&G549Ŕ)rL(yӑcX7^H"td'ь#}ݩaSIĎ4WOk]2v\Yt4 /i?ڷWaMJdy[獒OAi+TKcʆ慠Sb9ƈ~{uԤZj})& VϚ-DIқhߺL{;ipZ7)Rs zlT ߊ\ڲ?kTB(`4HH0YY9DX,K0JLS'1#iW`U*3{w YgM{_^\G@r+%D\z+Htm:8;MOo{0?ҞKTW샐ck2iNg? *l_jj$SPtJdwKG![Y ?5^jYKh=M qw3۱;ٴfOդǑ:] é Dz*L*_}Zː\|70F[YKyB ^\C IT)l G!Ȏ{c"$*lK"QT|v> TbtFe,#D,NTq28vQO\PJR4AܮO&ΰXӣJAdQ::H}BD4 T`1g4ͪjqyZ0 ty65}h*d:螑+w^lJ Q˷oD^G4cOX&0#A?.Bwvdz:R3<)Z`sNh1zLDϾI5up`=ú.Ko 77Iz,AFrʞna<C]=LI^C %5(Į4`-+W>B.OotrO0]z;4ݳjYz4ُU$άrGĺs泅.GSp A$ÏPbV;VcjdW^Zz;> z4 h?8Jf>m1?$MTQX:sǷc0kHmkKz>TS4a5џU^mk,lz<Ջ\?.&?zDBQ`r՜O5H/Vk&+GR֠},vהVpgxfW1d!L ;оP&"Z8j"VNWA:X\/T\J"t SL'c .~# Ϙ9'rIYO8mW_lo&NycPAlof"x_d-4FE-{S{Q9MײE| *RPjVK5}Wƻˇ}F1r:5)mFq)W8Ƀ5} _! Oʻ&㙍,(puJS}nރmHRI9&+0zfǏyYnWʳ+2dǠ;^Z~0291O~.|"C1>ͶnR~y|(SIAE6!v0Ma`) bzg2^] ' k1h`U0G7^ Er?+9̮\B]懐 h::pzQ-&LxA3c!NM8ĩ69XR!9RR׃5[^ռ R/&sL;9VcF%Nu4 R+\I}pŊ*b */$i1=%TΒr_h7 ѯVoSrb Xuq$]eBc ۸'e@G-h (LU8s.ֺ¸ӆf-tAް%6XiĞ~"4-W0\6XF<I$ 0 ZHr6ɅUɰ)N<D%t;E=\ݻlਧtfvͅ bսn. ,: r;?_jZ $=Jˣ.4*AJ#2Tڛ-rQ:1}pQMŕJ%M}iVKn>{{_ me֧( gmUCMAE;[ ^mt[47˸֝| "H| BP+N Oը@\1(n+h\1L :^(Dk-327NGԴ7#*Ȁ쩋[ A)8$):"E|ֹn:/0<Ì@B`dd# ևLo47-,77QbhA'BxQ:[Pz ǃ3? _)EQ9$$Kl/%~N3N\C ᜟ`zg`jlVL֑t=/,s0fB1k_2l 74IeV`~xSr^H#K9Y;EVcd ["ѱ D) V߯G_GTo#\q2a{-uᇗ}L;\ޒ!3CNhakGkei0Qcժ3,ǡ; -RsWAs z F[ ΋_w >f`ǝ~]ؑ[`Fz izj~r*֧e}u*wrw7W/^U܃X{xe4U,^Fm8S>-; e7ۧ!: …~j*\o.G4g(777#[9*F0V\^M~!Xa @xBuR}gIj+!\/7)y:4O>vƄ&ѶNui_k{྘(`5yw-U#_Q(ĵ gY P[{cW=7;E:1aVUpNJ`MDEmejJ6/k{rj N/zqז{gYA -1"55gzP%J,$Ar믆*sA^Dte PazQ|"~zu&1"ԑbeFn͆`6&HIZA D'Yxա&IOWb/IO:մ|dM@LtA410h? *+T7bkI*M1hh閰Ng?-`l|Ly)=KFonAwP^Xƶ;+MOW Okgkg>vm:7 ]IGoMP'|xey7p9bΡY jyu9: W( ɈLmZ\_4dzRz\ [N(pi"43CgoX62NABvFsΧl̵gs"3c.=:X ޔaoy|PO|3ICAW~z V$[ E5 ؇nm-t=P/1]={8$|mxr/4QXdWJב%"nrᄁDMjV n+ dr`*}_/ uhKDE]&:,=G7W\_|SӬV̝m3@|Q5sO1m2-5ip؃DxWKzRptmn:yH0[30#ٓ73]J;U[lAA'T \`6-vYU U"8f_⧶NCHhVm71Uy_iֽµL#KB] miZmʔx0C"ԓK _0Ђ %NMlbX41-6q*m.@g﨨.V3pnn0^VGǑ5qsjR)aެ)FY gB?J\6:kF4flH 5F]D ? `t`A-'x8nǟ`SnSj=Z+M"2z&0H!`>wfMpFHI׭3r utϮ4͟=+߹џYӑp-w7gcfNL ^=y$3NA] Թډ5ty E̓V(6%ԫ^ /Lx&<)un27}&cO)}grxbTg:g:gZ(p>(ݣpo=(#MO4UAOD=|"v|::+y0{jeGAi5/%vG~1 RG@30bghgpg:xr5!<`_j) n_;`g\0k*s0'6XBK}"JmˀaH0>TPT1T ss2̥_ݵYxG}!p@>ϭOf}>ߐO `FykO#G~s%p E:A,M5ZolQ/"!;[z&1z-vH4S>nq0 1(gVX(AW^jaT'S 4>q.8HHXXhh$-E_B :#r ʊ73l['- ћ+ 3/ X9'*/kl@"6V>h d;S6dK˯ JoNv,26MC0#!y7 xR|Ll#=WX)j%*5R ?~~LzJKn^j5-07Dɗ7 ^1\$X 0ʕ]Ѣx!dc?EY4z!?r/-ctEkkK.{Dh/L!:36r1TIyR@xu)b S*`V )pu" -/ib<ꁮY`U^! @"͂--ʚG٫@.2^>cRz_Nz.ow_lܮګT*{/v_Vw^TwAeΞQ;Ҡ>SުU;;ս/ݭ^u{oEyeLyo(,eeee d\yt[ ʘEm+Vبj@|0+è6; rRٮV 9{UNjolsxЖGE5^p}q+. l{խ`4Tv˻U@mk{kykO{]v_aPw*ݭ6t]} ì# 3⳵ lw+;juWt*FyG-q*墶8[2@o)FZ%i7_/v_m+;/˻{oy&WH Al#\#1)9Qh"X~^'#[ )j'LXx&8rK2E~Ik?sدMZz,Ƙ_dAx1Ofy5h@X9="Z(Sk 3Gb,a<OŊ{D;2r^$RBPJ[jm5lkS6j9kvh'WŦѿJ!UթVL68`3LEA{\m˪WcV} Pqʹ 7 aMV|2"WZ_ܛސiٛO CM;f 3Ip?]SvLG3 47-r p6x3O(廀5Ku{`+1j oxҝZt:9a6vr>Z0&o4:drE(E$'M1<:^HhG3:g"E&<@rڌ;;\UQ)lRVmJ9iD4=qDbBx hȂhz*hg"҈ ҍhȤlw).Cm;bpۡm߶nۡn뇸v Cs;4ȁnFvhnFyۡn_|Q-Uw?@rXV;x0CBr-@{hIӟnZ =4KwQYowiZDi_JETgyK-rT6y9~[ Խ֊NaaiQ; n`Xyb|2bGPXA]JcLR'۰?߀9@pk'*s?" Q{~;D{A&1 5_CI4@Tx@C=$v0C`!8R(^ApqGyyy||0Z/xzs= T,XXGJb2)'_<9]8=h=kgf5cۛJ.U+{H PKR\x1s AIމm7qkA11|S?" .Y| ;!|&+>EtLud&s\zB|Z34ȽpX(J+ X(V"="u!`/VSf<}n:^"jUfteOؓy}4{ͣ55}Hʂ%E$;{7t3B|+ E Y9SW35uEeKM+5S"Ks> y _-="QHĨE͒5ulP4e^,9O4m^LM&hL<}iYrf\\EҖ>i1aJW44"Q骜G}8~x:WL,bVbg6p+Ի .W4([_ͼF5?uOӀ|w~t$sM,Uަ"Тd|:|RTC4쵆x[3v nHB L4%J_'w>~$R5<5/Hoy'h_xFh IGcxE\M[T^"uZMcQt C$ iz|=o~߲BXd ? bu)HZ^Ǚ#Jtڿ 9rGtw؆SU1S/ˬa*!`ݻi|ިA R*ľu}Ϡ ݦWx> 6AUm{8)Ew| @_|._T+URUʕZ:6Ft EoE^-xF D]_'y3SjiĐRCI?w (,*b IP7#R-b=m (+hҦ&Os_zO=V0`z A`=+l\5$84Bz\VZ,f%:aq^m&9|9=u(7)`-HЈxy:7`6g'TR7%iMimgF9'ɌTY@*2m!-3aW'ymuRidʣ f]!{0c3̾qȁ,ƑX2 P([\ɅGDuo1,4J~4nrDŽ:}/:Oڠȉ=t8}uLn<[;#~Hxu>ΥN!'T1W'Y%ph̐5Xgdzss0G_8l `CZ`C7ykxzn2%J-&k*GWq R(V6Dw/a3F58_2&nzKVH1YZIΤJLO~F#BS6ܹ.EـZnx{`ȁqގuLH<B"˷;3gƭ@ZO< OH4+}!QT6ث#! zԭ{[&}EdP#s .3I%(,9*l-P:D7pgE!Xn̄sbӴc1kVeDNpPRH0*СP4TFáA =c%Hؽ uk3j8/-詂{uA+A2 g`4c4Į"cZcLl9 snljGיjdϬa hrh?e3 xr4`?Ewv(L{M3b 'G[q 'pȈ kO@٧m^+`fe18} oiFo9"R5dyV x58&)LN 9)f!ZLXveiGi!YvAh!j_7B{ fSjKFh!:ߛ` Mh꾛amehs{o~׿+z(wIf}5j[X^L%*x+PV,5w+-v="ZY?ԓE|-Jf͗O &*Vh(YxvumJ 7[aKY1YZҢ[ӎN+dԽரU4F5Ė*)~H -'o\z}MV5aI,J-xt-;#j}y%) iLGB; OIZs|A+p5 m >]be .K_h5F;iA&+o[\[+˗ՍVyǏPp\4<0꓉A H۽7 Sgtw5XE/+;3OFA莜<ث(68 {ɶ" sv@sΫahl$LCzM~83 Aʼ; ;0s$Ro"a?*%r3ӻmUpxs <^H;H@n7rbg.=۞G|2ڠN@{8fot{8-4mAFlx2M=+T? ֠NÅ>` qlΛ= Gbxz;0ZPQQH0TzRلM5ߓY'EmAnRP[FJm^Hp^;dd%DK@F)#@k%66k= cd !qZ:k{>MqX- f~F$vf;l A>}a~`gƻAhEnjq%(>cu T&tAA{huq*wIAH=@ǖB8&Jx) <=I 8LK"rD5Aȝ@WE d\_p zz5# 4Ë~BP ~+ r|x v(P+r(|BC*gg\5>%AHmЎ"ImSELc:R T7񗀇O#rtK1Zo$HR,M."A$F[?Bk I--cS5$4" ˻7w /ɛjV?zbHO^?I-ڌ>DKx,]O G8HT(Ii[lgeͳ *<_[>㑉өa<'?ְ\wl a r+O̔%1=~/pww HO Tz:?L`|9rQN#>v0΢ZAEXK.O])vjvjvjvjwjw0@Ϝ7^omQbprMnHdnHdnHdnH3$.l*5Q}?t`sbgke`+ c7 p&#vpM(l) AEPuc[Ir="y9{WĒS\KF,HZ-eƾEM`z]⡖4~OT>od2d,fη~G`Oc0pA"j^׎{v#v )3TN/9#DŽq6 bkLQm͜k<4|q^,iuhRC >L`M(lya) qdJxΛ0F?3~'_n:$;,<S&W0MˈL2-܍(CF7?όם c>b @wI!ڀoP=yzm}!#V) c(p%& t=&0nuBgN2!Hڧ+ A=Nkc~x&_(y*w2VxhHȉ: |21hŒW^AU<k N A;3`~G|}Ǹ$ bƅx1_RD[ղqeRrEX都.! 3jS]ZÞ ,r0b&t9ݶ-0HgK̚ 1O$@</`0(`ELq~+t&<9 93n)D*W># vP>?ǹb_mh* y A\VjXd,T`8cxk:LnT!F)}yޘcrAB%a8$($ kLS2U( Ե7GG#PH*jϮ+ ×%CEY+x &YЁ"G)KdfO- h gG ӑ2ȼ%Ʃ>|KdV (FlF{旗T\P҂$ᣋr-2Zcj#Ycr%JJcx|-;4ӊŘ.'3-Zj2A h7nԣ솊4gtm<{+؇H߅FPfdIHAm3'S@(B֞"z׽+ŦbͦSTЅMdN}}h]N-qi8SDŕ/)iF4!N (C9c݌ZXfb2s446V*ZzdM\2[0+Fc5%H @D{ĒqRڌU cKg! mdE?ĉF&ʦ{D1cdIa\!:`f`jLI~KN4\鈓D( m)W* E'lrkx+8rl$KWNQz)".ٌbR2$dv?j kim®zb" 8A7< :ŋ$O!VDr_*C$\Rs"|6lˈ>H(${Դڴ.w59sT$uPncySAIR=(%9]Tjᙃ M3B~"Qn\L713 ǠgN~ᑢ&qjx%'}]y"@6C]Dp)ɳ"tl@ ]2 88Y V1a 𡰽vVcZҢM hA@0Icy׌P_`v ԕ@ {!80`#T, !.x  f&.it | GZ[=خ L-c/^j(uɴg&6D#n(Yjbc|4(SC.r|:SOj k{ܿ_,G<+{rcb?hv5/G:z(' cz082|2fX_A)~UWa{[5J BcOrW>|l-l (*f S WwrFGïVeƯ9Ȓc?spz[4̡VKsW!ui^͜^jXBޯ f'B94*ȣzZwɞLP& U%E.УO+g>0JeN v =PMBH$|[l6[U)x{9%^Y,$%(UM0MFA'}zSO} !2O͘ڟg8T @S ["d"c͉}--' @ 5h?U`Om\7.:QpFW|Ξw9ڣ'~MI~-Nj wJXg Mkf.72/sӎ\ bc?n)=ʶ4]8H(/udM?N6ۇD76uгG4A4Fi?'pʚn;CDgLwܦO"le^1Hŕ{Y 12Cgt ܗ-]w]#)%cvOiW)BtRbL`j b@RoWȹ4gx("@>x &owaqx8èkpκLZ"QKIpZ^Miч̾Q3"yY2d t EDS_H "97E (Q&SHEH[yn'L X^7TqH#\Kь:cL)sV%>[-ʣs0+^\ Ego;LPLzaiY;h(?˅|A.>lxdPo-쟯υ//=U&-iHN`]YD&~hÆij;WΖ3 A-w>ec2<ëjOl3唦)]:GS<È+gBR׃ut|d5홿EU ~HBMC )݋p@X80Xp 勜-tQo)!lẅ́xO>a4'icḟ]v"0ʾdt@71 r*؂c'sб" [eeLrHb X+etAv@.Hu+X؁kjv#d¨2#{8%BP+KVdhhBm49ԓGQ>~N?ɠ= X y Sz=yEx_ Pfp=';4'aN(¦GbB9Фbj@imCH%r1MȃDNs!=ۚ$-NFy~,!r+Z%͎ׄ GѦoVlV~o+mfda) "յRˍžnC 8*d er=!li|Loq[b`lDT w?Ŧlf7eMr/~}he9wRe)]b?H I%d,^wF9\;C$@BS&h o,^$Wԑ'de*q _GRM-hK-k U^#^32Lm1|jL8g~JsX"+A s̙_zύ]ӄxs2Cꓟ^.)> p`mMp{f6u.;yFLl: 7|Mv٭:fLFV_-'G[7AIT)%T(mx?tЦӐG8)=3Z)/HfN.PL5R (.Ḍy` fSl@:S(k|%6Y5q8FIskuF:n0 -ݥ_@Cw#JZ!\^z @b$eI@ɪ8H2^{ֿ4% 8<6\wP49^[0Jӫ* 1c$Ϥth0r>+F(Δ/07;~AhA%ΗcLH m?XE(T@k x$.j^g4.RSW'C@{"5Y>)-)+"_ph&,Uv\S/pcO!.{$QLR2 T$,&z)^PfQ' $&E츣tGԾ4^jYȻߦOX8R)22 xnT|9ڗhT8b/yjm:^"C7gf_A>螴"^͛|k?̢>Ü1pƳgF6厌6'"Ι=Mwϧ#d6@)->?1(Үolvz|2t܏ۭFon>Skz@LrZkg5B.ZPߵoI!>2=:0tΦڏt~ĠaD:8'az_(mn'lܩ'< Jm@9XZ;aZ^:Nn8kvf08'̣E LQ@fBk WSFLM i4e $ Q~ wM*\GK!&R /t>Sۙ{~-rsY Aڭ{S/`˟rcٸRrӨ@9iY 4ΐ >ټq7 >8pC NG1BTuySA_-^I^rG(:"m[tkz|_^@'GBV'T}pjʵɣT̟.|-er 8T"\ҩ>Ru}=;h74,p԰B2V^kJIώj!30B$t'_77&><ՏO1'[-I0O1\N4Nr. 9_#a[҄wQ>o[-w~xDŽvgO 5?dĹ!( v8>Q"mAMtXVDѱ=[zi YjMiq\ ͰlܨZD*pjpHȷ˱& &{OD09VxH.ekizRIh[gěQ4uRZLrti ?;]"?#fp#0dǡ3コ1*c+YsJe y <̋]8XG w╤/vbXER enbq 2/K[aM= rHGvOrо[TvDKݿE/;Bi  J (Ҍ SJS w%e6u hg:WB @xDx`M-8"!zn܎=ryM 9XŞί<$gOhWb7T/JnI|b *Q~߫R,C{~z;.ݥew.쾐a=ZvoK,r7Pj /d4r 7eq0 +yiK\vM. /Aėel5a';eV,w' 82iqM1n{ 8 2~K/L \]ჭ?׽j|%Iuzj :\LJ򼏅MIm/cN(Q@=9Y-;LnE]6 k֮nB-^l%ժjUjUu vt$aHPrR-]vp7 ]][mxc77t%aH\PZ:>K×: _n?^բ%&!:S >TŰ?IY!Ų YR.3v#i;d\ۘ`]{'ŝcY;2.]/>bl]M+[[;ϷSAwþm 0Z=iT+2C"o5DC- `U_mÿo¿=ːXEXP:|P!TAUH* WFkTFkTFjPUYJBB''9K>N&Ykm)qGemђ2a͓n --y}Bdf i{80{ mLνqY˙GJcy,;oHh;yvH  &M?K`qh=ţবP1kYpl0s$(7 0 V͘ 5.oB N 6 gsɚT}.訤1϶ݷmC[~>|T)Zg ¥uFp)\0gT epF ψ غψ Y;ψ/ XΈ 8llhp`+yr71hP ĦAVD1X7 L,dfؼ mh%G6@iĽ~[4?t;6aƉێ Ʊ [rOq0& Zxڭ@T;kuZgBuANv xQiƒ؋--h:qiD?u?NhIxn/.}78'gw'9!uj ) w j4"Y A/-hEv A= `ixX0GGWR DZYS GH/BS(5z9ˇo!a'Bae2-q*9UQACQW9;67FyŚLUhH ߾qj7 =n4^K1.|YFx <{D3o1 Ix珹7Hn,U%^R+<}jdj0+ )-Ջ 5K,-AUlA֬AlAXLߐ@[|v VlAVmAZrߖ?5XZsh=Cہصo zڮ#Uҗ)&%\ `(Mɹ\.Zf=0C#>ltsh#->G3viqmq`nlݩsZԴ-j9-v-v-X`sZhDZ3-V9Xh8C;9s~0}mZ:#-VYv& 'SB>* {jQ\IUd;x |/Y2n+Og*S:׺ 16-=ar]3,W2BLMAOaѢsѬNyGB#zN۬ɼŃQ<ŃQܫ"l'kmWG: P(l(>L_](V@qu^߀Ń'`>XcVT^մTU[r驩"j"rViʘ&rvj_TU[uo]MM\9+]4u'&rY=TgkuA5  絔JᐲQR; q^ϜW9"TLG%jB%c &d6U kқL0]=F-D. /EOKiCl8^\sNFcofdRW2UVPer%deVvYeZ@[x[tYktyYktY}:]6겚 ff}@\ 6c:1-ƬІSB(/]l!`%j{ەmjO)K#k7?4Xqt%PI^hRs׏[܉ٜ݀4O` g@Hv>Ċ\%rY>e!;U~D~B <  ._򑌖s<| ks0%f ?!hZu;v|#&u?yCתw9i~" *aaY  u #8ˊbՁ[ps=KGödA 8 azw0*xA(wrȤyî@ʟtLV*K24!{3!S0 7:I iEIO@Pl6*u$R>Fz塐rX^O\ө?p%] U1p=)!{-mӑ/`9ǖ # G8Ls^p=l;%[(`.'$&an/a$Fs [lwG3O ]4/'^Qǣ52wgЫ>CiBNǷaٯXP=LQɌ,%V)mkUՃ9@e5@ΣTA󖎷gu4I&y\'>jyZ6pgCp]MH(Z)SW}\ua|IU؍s 6,\XUY>~I)́j 5S?k&̛AUh[1VX@?vAσ—(}Y)/dp1Կ_ӈq=9_kk~lfR ĩLɑ 2TspcRzk_< 8u"mcϪϘtDLj+JH+:K#m&!R X?tȔH63Y=>o1T˘<@^Ym0;Je3n>q c*^Br:{8W{0eYDHaqSlkLEP1Ә*5gl׉oBB7K%,hNq>-<>l<)/iIOTdԴ_?VӠHq%q 0t8pq8\7vɛKdϠtշ<a7WmpDC 6\" Ҕ2ZB9=7.e$hrSk wAYA54H[#5=D/7MV:̌ז*_Jk3rAX' w{扱7Tv@M2@K7!y_ze"ǩ@%ULU^Sae(Ax_}>r ' P>23jc)$m0 Vnڭ?7ΆWwJ09Fww8gFKKM[0 L 46HE{7S˳Lq8tA Y(8JIR)ػ~v+BSΆ^];K7iǭAQ**wϛ{ iehߵZ =ڟwԛM0yf(i΀ Z=i<Kd~?I ?M6M?Ra{yG&hsndKDHG˩FBBy;r ryl ۘ1* /ƒ7]([PM|;ޔxxgZ\ؼ\ A8/?[_gd ^$ל-n9^\v0 <9\EPvI\7vp|=E%F͢`rdck캽:Cրu УC1EyQ`6i1fg΀e;$S|Nf3ܣ;N<W,OPq$ݵw%7aMN6<8e³\~!!RT  䓽So dlZ07S!\`S֢,BQҺ"A M6"V a1r*6 TA7RXDeۨir ?|ՙorEˢ7@{o/n)E2x،Ru[}~h[&3VUryoUo \`kc~ZImZr9ll1;f aMb 願Y0^jǠ]NFBGI4Yr+g $Sz+ d=PUKcҋA;\kelu%w0+3o١BRS#?آ ?+ :-@f&ϴ;߹)5W/{;GaNϧzA(d.} J.ͅ?KK%R^ s̕[G;q`>]D]2->Ŀ\8tg>J\ΛU+'h< ΜJ`Nܙ1<9 ZIl9pgץݮ\pd q%Y_ݧeϑ=cV/Rgbϛ/ׁ_5ҊCXFЭrl6=Sb.[ιpW݅#~y*/Tպ?/\9j<'7<*U {/A~e `.zGe=(n.>D0fPLddV`{M$;oMC׿詼'N$ڧXD7؉ws1 ٮԋg`LR^`r%&QTף@рrP[BK x&7Y.U)Po) lNYLVo]\A((^=E(+IQ?ٻK>/Ar'O^Ƚ" /A8eܤ=M=:jߥu=S g ^}L4pGޗbHfʬod9+)ܿyc||y_V,8HС p؛݉.FQ wʛ aѸeYR/Xw7aA:XWM8]S1MJYwP&'nr K P t>hKꋛ}o{9(oC`{_"y߿%!.th2ƨΝvm.K1_7a?Gi"U$ʲcdmK 88 -qŔpqt6N8c"Sr鍃#e(2p R:>v%Os/XoK皢>N]FW%YdeyGս*_Nj;((hl9P[#Bqs@(Z\O@Efԡ$^v< CP\*jbq,,l`9I UvNXH7" {VMߌbj.f)(J{hg{rZp~n((ml&/Zݰ)ӥțb̀S  G\v@FǑG1b6efD񺗳όV#$kUͽ+b\d9 $`oJҞloV<`feIjh>Y m 97{W7^9_;mki驾7|_ܡlkؖY|uI');eo@,LƓIpi!j#+P",,oN{XRŮZAN.^넰ǡ"2I1IPL2"ݡ*ߛ}pNkhd//YJ}o[^,0=EPP}v^5m0 .؎M~0M$k3CTbTtϛ=w0dRŪ{fa;'S92eU>%sk9Y/!9y~ .r.GFO+Iːf`dE F#30}DXF?}W)ƖXHRӢW6K_Ё1y5ıive,=ŊԲj>iCDH"g-L~ +PeސVG&yx?DWs,Կc"xӭ0aORr7Xښ!K}^o4]wk=BŬ/y#m$oe82|xAx<cܦ08&7Mw[tI,vssI 5$?)2!z.:>k,,_OO Y.;,n&\t"Ɓ * &\~Ԩu0QGNc5EN Mf`FkUQ35=,06[.E =}UxKE%vŬ 2./1k-A-7RI&ƆJFBzZU)Xy<|9wAT1.Tm7?4V211$e 5[c B@"C.kӑY^*rN+xM{{us%*=bݧՕtw <%MiK Dij_hI d˟sͶRYN{ރ!|xO>Aactk m}0"uEYN8`b;lc@paA {Q Ȣl͎ʔx" 8:r'mh"]\pj 77903h5nxB} ՖmHK4!]Y; Hx5@' 5uHcA0$CG[|C0vx_ aPuc"‹CSh9S'npMF`aW6+O14yWhbm4}gUgBYp= t[a;}0)"PMeك]{ܩ?YԶ3ϺXx3,#M u(U)N1=*R`ԧr5"[oz?|კYЎy\qX:iC?A 8ř]JL ^/e @&Gj˖_WJacD -2VPc p믤<tTf@G q'K0 ]"UcfSn :;5NaG9V\qA>w3%],x$YEٛ7./XfΣA=3Z&0TBldӣ.6ZwPEA1M2K"is;p8;xkOYU c螳Wl٩؆],YS͟Y#)4Q(0*WbصRPcl͖JW 5f8HFDj.-)ߖ͌܅A Ro>W"g죲ji|mĔc&-`O=Ouo2Q"irFEKK-|R:EdWs8$Vo fRkѨ$S8,Qƅ9!^}Aڇvo`ڦCftY?oP?vc#k򰅏v(_1/g; ԍ? 2[,+- ;fw,p3bH3H?AMrO|/dTr>8YdvtHN9|QVj΃K9ep3# .Ѡ@7U@.К#-/u8ZL4^i%ΪrNMD#=$ȧtLw48hYG7p Q^H/voD~;+.Y:Bgd9.!oJ2==q `:[.W eT>uĹ~/"d;; q- Y&"m(kgG0> 0#bE[On⸈$a3Oz!L6 gDvey>92,xqbirC|"eaM=HoŞvڟa)^QYwo~\bw(=7zk]b&ҍbaK>`jI#h:WKAp Xsԇ01vxALjiAgPY{^F{wsTM[)b Hq1?SAF\'%u#JЇ'ɢNBv' t5X87OxgA<8dN`]i& J,ՍNyumnc $D[7쪠 KARthrg5ͶZP.t%DIצK{PX![ efcbyezC 4]yRpɂ$tHEJ\.Tddi Փ&UA~Bǐca2J}lƠF, eNQ0 |γl6rjr{Mt9qOԇ{>ԶvAa2Hm3~xz6<յ;nu(3xcƽZc%-^?Bvq5_: AK Sq>D[`ޑ:I8q 7`PyYĿQZ Yͨ8_F@؃:knsbcc*y'S#?[:`UV\ e s`0 MelF g~en*z/K'jaT,S5* 8҃7Ivf}߂=I`F[lN|Vǵ" *i`@x66-i3ph~?ɣDgBq[i&( lg`36E3kFm|)|1H[!! U c&{&Nz3KO,lD}kH 1Pc y`|rept_8F) ϦlΣ 2=čԐ}ձL7tR.MriybEƛ>| |\.'G"wn-xJ#QCheB&+> /`x_ȳuՃ͚'uU55t꫺Ȇ"3z"Mmcga?VS2O&XI]lx:AxKaFG9& &3=4}߲9w^lcg?C@Yo1Ѓ}1AͣX0ws\Jj)M\PX͇B{Rz8o;]] "+'JNB1-E k÷[lB ^NSDVshQ$$B &ra< ZC {MD[.NDV;B{j bfL` OC 51VpsN l2Awoh>30{ o_J*!5݈7h+ַ4`:45z 1Wc Xo7g}C% ~vCǗ:흸"{]GƦR-a|1P( J;QXB剕~<čG~ 3.%ٰm[>91Q )%0&,%*ͻw4u2/pꯠR_n@վŁCaΘE{h;fC䮋*J]Z5s 4q9f^znNl Jm9OG 9mk"C:(ԊagoEv'Zf!@HW9ervs[| M[F4oq.L(vf j kΫQ+xP/.? P< 2Lgڟ@Ǣ0B'&2ۦX&@Ҏ0{=i:O>&zpcܓa/N^Ttn(^tpH8([үˑ'aژgю%PB}@_qv+GFH4.w %tZDx\ ]j8Rbh*z+"tlv};ӅX&YsƟ07'6,$ l\]h(rؑ*99OV+JjWh-B}pI+;c BFYOR$N CmG [,8z2͚J;6vn  ƌM& @ϹC+G&.g+gx7/wD? Ljx sB64P$?bc:)Ǔ$?*(f`q.Umv&%Cjي,[pOZii!!G?J>K(^sW |5tS7rgYK5Il+O!R'˗КoI$7F٠R٤n|3eo޼y(?ȹCIlV/ٖBۇp9s YńSj?mXSqnk=p4)gK@OLڰ:~A]N8`g`x|zy#R?Qx=l S}3#d_y aD-ooQ$nvr}U:2Wy3i8P,^){py/fÿtofocdi''Ӕ)G| ej3#Pm3JEJC_%O7$QwR )\*Qerh啲O0CfLmյzsc2Oo z5ƅLqR[8>|&Kl9+?ag`9xl.L/mߩ$#ĥfY@r<Tv&zr\sP.nX+BbTHSTlHL4Kbbҽ (ƅ$!E"I Bkitܘz$bP7A8 iA*Ǎ`y$Xo\r1B1i3@LkGxjE8C@h0 hwPy?0/ !HtdXRr;XlI$jS6HJtyʟ'bpn}P;/Kd%YX̘!ILi=jS&7ä1 \N7 Ix7(G!f"q_16>7!brV.ُczR42evz\\d)BUv8dNZȏf~t{4\v*Sh q-fF򰅩[ጁ_/d]L5@Øf5U~_ +;?Ƅd7 1[>K}qlf8X UpXsْ ^"d+eȆk^,aEK:p ̥4#=n?uF 7Eӓ(4f93mdlN)5N.op@ub` [ZxB 6"$f;TDy fοkocS9F#[dC3Ê$h,^D\^k 5!90~VwePYBKyr J!r/ 8>uc2de>P[^]/.8Ab+’TB-:'x47 ̎!N!Tz S~ynPX(}&/c"&I<{r4_о)iՀyb*L]sz\`VLI*Q!x ]U n_1/NMX'ğ?$5:2IzװHh?$gx@"LN)@ѯJ?ՅR5tpЊh"oW[B૪ PVs!jr-uUx^AVJ$ f5*k[ɋNNZ<,LFHhO~r wd&UR,9>ʕف9o@Wuvjw.ZI8C/7%OK}@yy9ĜEN [bU,nu7];j;&: C= /?)?Th:>ys311>ىɝ" !<'K8c2VҴeٶQ9ct?NW B[Kŝ@[pLu;];T^`ww}x\˩ S a;ybpI:,enj8r85i?ʷmֈ:.XQ״8XE0uW{M.K4^_NBoR,zS;^<xpĘ4Cb7 ȥ"s2;YUkx1E'У0;9CS{ 1xC*ɪ>jJEm7;H1x$+{؂ st8:?R|=y]?/䈤螝)ۮsg'qLwj/pݛvҗ^yVg沅͓ }fV{X,u@',@9^.[NȌxShZNtE;!f "it&& tXpt@sÊF'|x0)'ՀS]G7GR-|+kmA*&l|cb uq@IН` ]K8OqOtP?<џo*!_|j~ S ?hVF,WǙxeL$);wQ:)^|eg'HUQf4OQ郦Z<>ff4sS?hVFhrNTfT`7S'SK6eyjۙm&vvzۙm&~ۙ9n'~ۙyn'vvۙng'6qhozxX=ݯjtWmnMh}qοxH }Cm$0M8N)7hMc?M72YPP혚n5q?vipqBly(̓| TR:Ot5{*Vik陝znc1j7%/P=u8U7:_J%_ʥyr\eAv_f UM^9 (3#ی*VKBq{GH@\7 S̑LJzRyZ,cD:ĺEVOb|Qk:Z}C-K❂ zήac,}&k_]axâv鉴75ʟa1y?z bPG@fTvp]{O1'iGj~L5sv N;L#b8~s Y\o{Vq;Di73G=|5PqSfT9zy,LPtTIc!6j4a5RCrjkȋawi E>("AHOIl&}T>ƎOgSHOҟMO҂R 5ІpCB1? {(~'w|P!~Rj[,&KC Ue5eDZ2pZdŔN㡩&zf^C1}#F~,Puz:Xa4kAĢ|&<Obo'\NWhQ,$zfF9 }MvB{_#;d:|Y1+ )Fijf›:%m({~ ̆$-0=U偢򺫂-v`E m2==mB dV!nR7SCjSWZE ĴzGhT)z=xxAӤfoJV_ o%e-K4_sZj kJR_\c,ÜʰmCLYh@ypXbP-ɸxfPR S-N<܄ٵ]DF,Vr4fqq~{{VUm oR?Is~)dMa$| q@j˒c%Er3ʹhR U鎤)̨̬؈O@ļ<{hטY+4PC0D=iTHR$Mv Hѽ}37T)k'/[r g'SLƸ OC|emߩ[8ބтĶ 2ӻPaXp2 RE@YiI?2 &ZJqByrɅq0l K>D!T,գ[e@_iDHބtmA$>YH$f-OjJn6N|cˬz\ t8Yـ唠i,b";;qMF68IoiSut\2^%c+WBA*Zw}VR;2<M:Jdp`MGdJ"V9grjje{wG]EAjݏx+̸ -R*X%lw-bW::T-ZbRZ-e- is\ ܳ&lMBK{o2ǤZCҷGKM[qKSKWog3 ~'pf,y~wa@5ҸKiͿo) -Fu,4֑5@du6hkQ2J`ee u2̷9 ݑngNu7-k2Vb`Jhkz kw ?sozK{YNbR {7hFT+mEFJul@!}S2yfP8ƞ +3 m豜QM:CQ}I~9ɅNKij}[o£Mr;i!PLÙM[[Yk|6]<351ɍ,%bьKɆ+MҌU{()oZ,~#lfQXtDݚ&\,@;EGaսQN5V{AA\*?˞bWwSm$ǛiV=om[}ylW'2غJ&WyL8)?2\xbh961˄:cq1vhҏ5حQ?kZV$4*֙ 含{g{뢦`bM5f6>&toӠ$s.ԫxa]gW] YsaEDIV1ae܄'i}>su#w=÷խCV>j5,`o\3o 63&oQ3\QH# r1ό7&/n!=R@6s/+$;5l[VHZ o{^#o-n$Lo8c94EC3Wo bK+/>-/]tD?^-aO011_ 4?ĎiBhZ}gW(3 2hÑ7)Tkiu?0oA6~=J 0|:Aw]0-=;{nuq|N'"2T8wOc/)+K&g =CPIckIlܯfhRѪY{hrǛzgo+?v zgPzTk6N. 1gZˎۢ .ˡd !((tOw=,G".@s@^*<$9u-_3z8}Rjޤ 7kenĢzL˗q&6Iw#ݟli.0|x<(4ҡ~rkӲa7O͞ ߪOTm '1HaӾ/'f2;78k.aWx'n=D#8 tG^Dk痷%~ ^|Sڛcϙ&ť?Q8EOӜ?i;='B0dLBxc Y$ Ƹm.緿*Zj_̆ RT*Ia}[5uk7Ayc:+YS>KKl}I+u5$yb?v3CYX2$$^9 )ygxd(: H_HY({44FU0լ.']RBjk65)x ap|eLmW!_\aSBx^ޗ̂oݚْ?r7xpڪДJSISTk>hǺBwHJ- B҆8+*S;=<+au%z[&i3ܷxD#7~H2 4c| lOO,px}d_2p,B7oT5L#sό%b!!Xx {SSմUM4(z~xs\c\i*ku˵L~FȼercR)c*cNZ,޽h69)?r+qizJ@1\K`r3ʞ·{Y_u yM R!23gF -4Dg"S?{<}LHr<?+ G07O2d{8T| xjw@Yo3㍎Wz'()46} I|p)}`G"or-Xy AM\^ա7& X2gga狺e;k!%ܧkG{%^4>u REgUUJz1zٓU)-o)+@-Y1j$\B X ձ[b+]4l:(F'3+7QZ>)+a$2x, )Z*F1wgS( )пC\ʙH.3(Dgi<( &Z, /U%¦`C::BҶY4 2=h3=kssJlnAhy|B<u5"N^񙎓T=+>Ş$5aQA8)oEL=spg/x#RgkX!r!h*גnmR2{[ּq h-S*,v!Q/ rPރ@Wo4$O }y1Վ #WiPRZIId5I|e!onm.'v|CΤ%:j-8_%HR%e% _>A0PMR]!M ɂb~Nj^OB+dS*Ζ$8ʬ.X.=ujZ ~(̃d(JRv7=Zs[P|jˢwEF"SoY -iOYM6/feȃ[ JKmv& ߛvfA؞KOC/n JM.䇇?ݫpN4]cRV&Fep yOmi0L!hym9/j6̒u1r /(6XurGIp !l-N)47fmk's9ET0hj$;˲Yp/|)ULYO0(n ")T؃(L.d#.r?.aόbK:x-5yzC} cIa CsZyәQ ױ:ר,X$)JJ,(x0*~̐.xlYʨ%  #$3JmQ(|a(KE,7Em,67'S5hXKd2 /*Pv"m1U{o͞LW8"Kq2C_X|"^X 8m| ]vtc@&BrNFÚG̰39vWm@;ƁHwHw3] chɋsWt7m@;@v3_dg'~.vpݫжMж4Ky,{%C /݃~&Qxk tRUa2,$o<444 Jt@~KlŶF)Df;ׄxD]qJwjuk&ojۍݭOF/`"Pm5nQ4eA2RRbO}9MnYB6zYUa,!kkh0 ) q7luֵ,E*eS _ ɹﶫeBUpd&:O|pMRhNmeM/ YaWw۟F!"sn|bz8x}ps_8c-IutE=Mup<eH;it5"2hob{ە^$"ó]v \p7H",X/<$Q2C0Z~C|>zzoƠ3TgKot5z*ae9?,n586rlg泴!/(b:pi %̛ۃ\VfgPlEX܌ot)+ܡMvU{w,U"F"Ibll+ƀ,||iCDL `vQ*Ĺ?1:$sՑ!%o8A8YFo叡 ƙy҈5  R',#Pb1)^dXq^s_&ť߯LPz /B__F( F뙒q|Fukm¤K5ASJ xQl=6*ŗ%fz:Ld_!WQwfpChqyn@'%׌T>Lrv%R|#hޠK]sI[TAD J"^HM]6m? 䞋|)ǦdaXH+~//ii#pT[Ԅ߷bts S[.%CP Q?dCj۶M-3_ch"]n\Wp'f$bT0FWfS͆ JŬ9%cFLܖ/?zKݚ)ׯmƄI6B/~`x̩Uߟ# ,T4cIFAaD O4qF kq$b^UA7SWYAϯV&h-Q-Lu%C/\F)n Ѷm2_iLV)K~QRk[%/yI^yhz1dwt>c9o伮TzmՒt{G !6#r$]>UQknK_ɝNnieWe]ssV j6>1jZb?XR@ÀX|~!jYxs>@bი@^\|S\ZWҡz\袛{Iyvcwyp;+PMRy FH>#WK$#Gpg23Y$1&K?BNhF߭to1j-0es-r"y3i 88⪺a04W9N6&{ (i7 /ň&R~Mـ$y$pM'\wa!S6 K?aG)Ϲ/aCsͷ5Id96)BHtkA"@刻9nX.]᭝!Dj&m[mmGN $2:T $Syފ/"3{sy-HdHQb rR{":8jա|/!ŻF&h.]0~I[  jۯV$4.ESI^b nO(ZhpnlҐNRg) + (I_/@ȳvۭH_}oZrv?rOY7oɾ5fQЙ@Y9UD٩"&"2&̒Qn&~Gz{M&?^u-k2.>L[l'%աcPĘez, 1>CRh3V b| .>a5-m0e[pPsQ?p4A.cQ*Fh.T-Uٴj: Hx+?4Ņ8AYo66P3ʒr\Aʠoq]*T+P5'K*JȦ-bɰp\A~n~B&%Z{V^Y^|V .ΕKXYVgR%;93rI2:x{sG|^[|~,~>3Xׁ|^=U `qIOgPzE.t\pʳ%`˄kNDBIܕ)gqMJaxy_mЍjo{'=}T7ZRVu`)PVĆ3pU}y_ivW[\1^Q H1g^#?v(F4>q&XMSSa7 s׭a18"q3vpcݭ-j 49AkcGFZ+bC׋5e; &J 0U~>b&2vޥ4er"c"oyx'%e'b|n0)E!lS;Hc~?D:[l:P'gǔ{~TF0:r ިp̠gޫvTol<<%Ԣ٭`3,ΛԀIV PSP+吧%Oⳣg~+ZF Or[1l w$qq$8-:q͐7e"Gb/xPhVj-;G~ [va߳+KRRǾ\g  |)iNǗb#@KѨH(C7ձczovT,VgG'b; gF(טH4g,̋6]rAaacֶz+E`B+Z>!-H"lHg9Yxpk wPR\@ 0(:  UJ/Z)sgkpQky ̆%zԎRGI/D=; A$$!Yg~WK* ^]ڠ8͛' ҝ9:!'%C"wq/ߛo{];t7}~$y7à˝g^={yӻň-q꿔+tt\*DMQ[|SrH:@(Kv5TWI8GhF9]6!@3"T$tbTOZŊ0 ]>pl6x6NPٶǐb'h `B±X83Md9(Hcy7 Vie7ͨiZ-pHsmmE(1J; [n8ߵ1N.Bא[ Ŀ gW^P@y([>/gDbܚCq.NsҦp?IV~>)*{k<&y%-#er(w{$S>LY>;4A60DzW]*Ifl $?btKV0F#Li>o`Ze0R983ȑ3fg|m^0GM}JHL6gfͥGRm} m.jJPv[j"DK_u2bBb~vK*5?y,ВT4AJMF fSZ]\hb+[1Ս`x(^Az|_ƻXFTnEɥd -u/G |0 zt쵬4K-7$(`x/G7"qxsN'woY#lh!OV?M'uIsǩ u1}SRt*mybp $h#? ·(Iyru?EP;.A["ܞw *>h ]!@nKp l#45SO>I7:aBia7(d"ַr]-wI J[8z<6Aszһ/gq43 Iw x0;$oLkGOXX?a<3gY3(c̚M.+KKL84ԿELF[HHZN]&毿 -z.۹5-c%2Ⱦ49؝A%^ ky1-a@ Q홃frvjq؁FJ%g`)YlmbbDjlKi͋9ҋId bGf(Ey}%/Yn.1k7cTq?I[[<6a@8 wo[oq} Ce? Nho,BU$2 w^[(OC1fT5dKF [`0_r 2E7A\g< \  1E-}iNp$~9>O9BMTmѩycAչέΆ WF1AunIUA Vʨ+ȕ_[pW/Ơ+2e>kBwiCVj:y˫,~74_^6mdaN+&_#vꥁe(N@. wph$  N0qOn8wN7}VII0 ˉo'wCpG&h#<84`0{LnKo2#v\lpҦTx^t>1sL~+q^ŦR~7m,8~gF00u,\L`|kձz,LpXQ{2vpg}dZ!)7 : 7s ވ{r[ ONB\G'|[eUd I,V eLXo2˓@\I ]+SrT'B"B(-KM0ߜ'ՙV0-v.? L)qRt{ftV~q44GW MiݳylѣhBGXyhܕVjB]Ł`%p\ Z|Uo:qjg)+Liz/q6W}mW:LuwVQ:Bs Sg#Ƈ24~થ$tS[+ 5]~(K:Cqt۰7g-j_%&s^038xL#\|a^*L;iy}eb ^}[[LO s\IcI=KxNmآ#/#\Ľu3dC,xΥtWoMk)}GܒDNסl7ApRjY.+dA?e2@g)7z݊eZ)0$"I[X}Y2ϴ}%PdLZj-2i<-EF+Cy펊@k[g[$5։F~[nh:kt&QxpPҝ͝CjVknG sP+Q6{umh$54 R ;EHIQ5O'8 O'LfbZT ۰~>iA4) HiCǟݲS\u/%Z dvo-C߯qG%T>%,x|_ey݊p?\UTځ9ܗ 0AHO:,z-ӭ~Z=z;3e..82۰֟X,XiNx5tN)b(JW`\òv]R #iTJ/1̙4@w%僿JGطy k ~0#ųWXjuU}JY)uQq}_Õ!n־P<eŒ2"KtuOFsP"Hz.%BRbIRDNRI&"K̡Cs:f4)Ll.P h-?pA7K<b$ez ByDioTu@uB&^xE MML[ K[u/y]X\pd͏Dm Xmzd}Jf/"熩c:!s0ݩč4qdp-p`Lۺ4{v!ifPr4b.ia>\"kxxE݆d6@2qzP{n{b0ҕɴ_3`X0rI6*"f7ϑe ,.5uY'6̣e.hqV_ۅYcO3,dro{ƞh +Vͬf(йב7NU* o71F4sFK(^5HUSC`V>vQǼE섃 p!nu3yf? a#G.nIEN7`rOj"D%}hNb%٘@rqPSqYxKS,U=_OLݻgwV?X3-}ѬEE OcǕ;Z˕-]15z:^LǸΩ7PL#ABP; g&#gpe"E;[ &ڪf`3 m淦ɳ&@i!pνB&O"d~܆lI%}pփ"CvF)u̵tJ G|},!bg͙~_S[B(#ĮHDALx/[ -fA䏜[1b#/Ux6NЩ'(}ԣ)*[U2  ߭ Hhk[!2smŝ0owP><64 va%g6 IbOBeB\kKšIXىUSb*MHt5vt_,~uJ7>~Ľs-v[竑doM#sXPUdq;f`Şg?E{H8qŪi :pB7@ N5 a ght_uFêfA~ɳ;>]$yëȤ8芏BGEqbx0[,8w-&FEqC^[#;p>E F|Jn̆8M~sfPuH@>,R;ûh=cq0G%PTtQCI#ebQAE52_Uf 54j V7: ɤ䷀.N:.эت0ԸwLjC9(i6-˃.Zrق-ᝳgoE}F W>GPJԷ( \ _7&~iARFv-k[?4{@ګ5J!{Q6Bටjuۮ²u> "31y)g =e>~L)&4:!oU'YNjjEJe#xJ+VA7<-opn+]}e KF8W-|&RVqUʱ˛zUU?? =,'f9t rd K'gOfr4~CZ4 &$(VUȢP8s.#zb+63(/QR0KAfTe ]0=N(a>?Kj:o8 S 9-nT D{5N<^8sǿ $/@iSgѦtLk/ }}'H6שÈ9 ʒviNxRD:,dQYCYr6Qv LSͼP'e VgP~Ȥ)$A0\n`E_S樥,o5_LePvٛ;‹pJ.zB!Q X$='ӽ!XMz -KR³=/ǐ?b{2MʶM6Gju#O|sXO*aߧ%d@\-^ⲥkcRVpJFuM~dWϝ}#N))x'; ~S3~hoʪb{N:AqVi G~b{FghD[3V1dIx(*攄Wځ9i<pEnY ?v#LtgjڍVFUgT?'7؞L2B,b 9zUvn.j=G0quOBസp$x3.Qshn^pw~t3,B?ENBZgofgGDp铳鰙O~2MR?M !=#Z1>&i2ct:D$a bCpc X8K+k ROJj@|q׮܊MJ 7L~<8'?|'C0H䖮G-Htf.a} &NỈ:c/|`cr ٥~r:^Jl{tjfl`E|EٌR|G֏hW1UL-hoSG=]mfù:տUqk6q_LR6}j|&A}u|@Aw~BopS#$Vmh^ kZ8k6;cu1{ã{?#-;4Pԏ[84{z;37'Yꤿja[¥)D9R_|f5!=>p^k&~lvn}=B::V_۟.,% l8$Bl ;U2_ ΥzNh۸'=LgMQw|jP\!f7Lʲ߯[B3- $BٓgXGă,8wz=Ɋ%(z_ߟJטn砥>-W2KQ%">t A"Bu&OeXLь.K"N :m1BW9oovW}^ 9ɠY c*d]z)6~aw{MC. ^uH᯶ċ!6uMP򻇝RG}K !7V]NN$iDIqӿ4FV0ChG^$hِB SI1RƇvcH&淥e跈%=0G "Y'^([xL]?cxoza`հ]=hu4M,lZ()lu@n1AG4٠XF7w%8]hB71Bqۭ5Xz;yoMȅqg`OX+ HT?hAyd~n|Cn Fَ Zz:f@N'X9x^.Zr6&ɝK Vc ~8o $_kļdžs} Qt%.ѯhITw!~y͐r!HK j5snz. ;+{{g~rPǣ@gE&|Fk$b* }07]6I9NL `ߑ_T#Rǐ]hл5$h8_?h>Q3+Ѩ\wGVnɅ^I9 iD NT5hh!|M N<D3pwˣv4uD B2T'astM Tǃڮ+,a_'1a 0NN]d"*+ּaʗ+D9[R&ѩ7#S0uѡmo{1 ^ ~:EOoPD>cV0}x\#nF.7sj"?'~fk6NԠ@P}S)uy*pɲMv~r"B⹎n* rNTi[Ez!㑸葋6C?S,"q BbI0/|mnpA4vsp҃~V8boM;#X gc|L:M1!C=6@һ+$Z~loZt1M~%'JXWKvUsH;d>Iav#C̙3UdV Lzqg1 D_/n\uR5ܙw66*lоFjeCsU&}kj 6{ǢubMwCsU'Gx ,#L~: tr{A?7w{-ә~j yKe @ 1h{2jp]̛-#4\ckt sĥQ *M# @4v9BJۀ4BEj3觸nyEx,F GS 9zRjՀ?ӫA/^*2D/_3z=e:_SWоm?j[ :<@L:Q;bw>6@ܺ%3DKd`[ 3 H4H (֐QSW3ƓBFש KC7{}8Q_tΐ;v8C"%6/BѼH`%FD '$C19g dm?hvkCJ>I*֩(M!Ȕi j }/fQ6տ.P0o#?Ƀ8?/B4KhzQ9Hڤoxxt "98vA8/ 'Odp5xFc =4Gc Osx'c."1{(Y3`Qh@ k \d A\cHb GcEO`?z]\CYD#iT"Ѻt[:9UʖGF y;AbyIٛMu3<ֳ'q&-ibN ovlS4+[8iW.o#nێ!ĩdR5 e13'm0d5a9i?6;\l5تm83a!p2H1Y-\SGH4s%~GT1}uG(Qσ"‡8c~jp4TM\!6~}IKx|mk\\PKXB"a% T)ySwzmn"8YCh _֏[mP@F=459D^o5:l|*Bld֌0M2@ok, EwwN%\v!QZz  :HQsigۤ$pc1BGQ}kȭ|}o^t_@gQQQAQ|!!i=nv\p&%%YE&gccV? "&ii3 q<~P?j?3O/vz\oyĚ!rV3hwy=,I#*?dI!IL?)(G&g ^ӭD2!&:=}ʎT;\ԕs_66gF T'0$B6l7=Ţqe f3xƦX|_=:| ,{}3MjD0,BbʟsB}w>%}@{q|aox8.7?;'}ة/^C^uǁcҙrŁ^E6!=K w8 /AkH'Tc>F/8U+rxC01*ĶvmrL򰑮lhFْU{p_00ʁ j:)3 ީ7+m3q+k6.I{QM7 jYYh#A M> l ." ل]@ DRֹ,WМ5jh 1v-TY@n%;De}xC)@Psn>%U&gܪHT˹' VsIT[ FNm 2e{é't9k"GȒ8Ol !| hR )g=YOTE!z+a{@PJpCBR3cp߀Nu:;?@$HBR~%H&H׾sާv<ӫڎ n0z' x L5D@:Lpު$#>ѺIΓVޥqaZ&AE& qgaAwY` (A떵L%nU;ŝ?ӷ }UVNn:<gŷ]H* y/Ӣ0Kbg8Šf bη6 Y`9 wGծ5@!Fʋ&M̗H'_/oeѺ+FPCʴQ$ A Hb^ ęWƀtć~l.Ɏ믓8"[J{H|T*ET{#`zX*KRz&`.dJc 518 API<[[@{Pt6;f1Y InbQ0tY+~Q?I\Œ=*쀋 vǞiO{ž!# }q:ag=;pc7֎p|Z ]]_\كYJ8MCt{nd,Cr?5??nD}B(fŠN 1mqV,f,ûpjpBg2}K0&)1+-bNPZ*.5=p+vU[b4rY;} DeyM#.䏮"vGw/^ajCZQ0jxmCIJhwC,g{Q\x gX[`nѳQy##qi{6t|F= FL5ʠci*!5*[?3*aq F&vڰ;Z\B뮲ع!*Xs^[KDh08(9?\9QX^ MfC+ CBU,r3E6O f@E7IG.*_6byq u)A;?db<<5c@Y3#}:jYnhQ8 w ؠ,ah[4\:xYK-2U;jH{X.D{!g4JG/Ckh]RYeLhanR7J8x։KHoFϰa}9bAb܂'шݦX4hC3 I]Ll :Y=zVgy-sKC 8X> O.Iٙ4':70qd)zovhZqdWMrYI%e0twO8hk7)h Ս{_bH7xPV}Ӹ>d_SB%4 H+u9Ă,?7^\X6O3WYK\,+}xebg}Z_.<9IPgX xL>mmnm2v[q Yqnx]֖dx%fV uG;-!HHl6~qӈtbWu.Nn"qnAK)7.8;!GuR&ZH BsRo}ֺF hL69@Z#9bDdBˑhΈ<Ζ9}EMH6I j@҂N4M@&WmoAߪpNMeKQgo=M,(@xlh%ùS#T()(R_!ivׇ=B:@nn=fMܗ,Mۀ ٷj*ehUBhh Vf2r] F(bVj&cgpbyԪNEy4fiU֩fgrkK9iaY:jIc@ks BWJɻT).n,Z꯮Y'߆aM w45FhF,b @D;~@43+BǡsqElJ2M>Qfv6&MAjc +EVӠ Ĕd=!o]WuT3xmPk4})DGjLU.!9쿃D8uh_ETo^~7P4/?3og6|?"FP>d7c)!N#&tzFc戤&x|MI\t|@4[Dr ~B<΢agc;W! )!^Uw_QAh)ZhӲ%,K/~CU/ pvYhcep$` FoBCh$y[[;ы%sp&?9GQA)Lg^g`mo#Xax -cjLYkd/_F .1˧I76)0=taDR/n@z}* FP|φ1[!2FOqc1J"=>C~ 1©MAUe?S rzP6Mp=ّFBW쓟'?$ # !եlo_/hO<MO 855Av(тH1ѮslՓ$g7+h"omljj?n i_ykG 8>r?|>fEj)6dpTYK>gچ$hЖC7PV4:F~#,Bl 'TTas-:_r0/u1۲:.}.iG@ٖnv^yeJܹ*xU%|7<-cS 3\|KK0݇AJpحǒjM fYRK; cur5P~wXBF`H0XM/.bDR"KoJHakQfT.T[)p.2BN^eiVB@Fm-뾎=ˊz8:iZ!Nl y~N~'3)4%|S5;>lUUyVmpV^____J?X?X`5@zܕjp4 !iOh6>x$+t]X"k)l9"Pn O-|ĬZ$ 1O,8 =Ӭ1vtogrAv?e_qz.2Ԗ-tkz7_EhUp^_bU 0+:x\jLȺfYU =4fK*;,m"fЭ^kcS5"D 2 <}*?iqXR;!U̫ttT~nZS\nu蛊𨖶e[H ^^c/hOOLQQї}yXƻ\_t7;jCw_:h TWQӢTܐ5\,uu[ Y!=F#NRsr\srs*{ڀ HoBȿ ~{[ǽZD~)N[ m6@&:M1cb\|zqbH"eO/=ח8=aIg΂ST4*9X9҈ęg"༞q 2D-^`|vSlA<\Hg_ Eb:W1ya2YAfk7 "f#FTOl>)!qY4PwIשCüz-P)7'=KuML>'(:Ob3,$Eҭ6O k4m )}\o4]FEO!6X, TR5mF74o:dӑhPT)Yݝ~fOϴ)s?HZAWq;]2O36;D&:84rbBk a^-ր@ϱ{B̆p{&EH}Ť7ai>;Dsظa\SHpJ<xVwI%x b vTuPLWқB |% _9*g{zm5,.mcZCQ!'%{/}&;n~`6>N y.⩴ ;8k%沤,H%;&t]h?P c?sC f$+/GA_8%.B8\IpCGO?=7>`CtAgt΅wjM|0bu;\?C'! KΦ$eq@'hrj4zlj&R艕YF{m@G,8&?7le;Ygt~`(%61[݆6n=4Z>&Uh!Nanے]:┬9" Vf,\&ui)|;#xygiP\*˸UoE־/ W)3wAW2A%Ӄ`pE|^dݧ9t#zxa|toT)NDi6pJD1hop[B8eTb>%m?Suc>4LS/S ݫJyI"k m8iO;ؾ(q(8滦)Aˣb9hB5WAQ+PP+#H (0 : $LD43B_ opOW Jɘ3BH4%KEa R-J˟M}OqzakBK.4:{LrNvxtD,XZ4u?Z_3\6 " J"#2> ͳ0_'ᜈ!zü+I^ cKbK, UGA4Hycܺ0#w rH GY¤Dy{0NGZ Yk .Y<~$;QlJGDޡ&Xb÷ZA+O%"qXoyo$Fxu9o"O{[#r-Vg4‰W^wqa$π= g HİXoyLVHO/%`ktkn"~'r GuԌ`jI2-;M0Sl^U^f[Tx1]E $[oZ0vVu[oB&}q tO:oQg0^՜&~[@# !Cت8J,fqSnad:G+SfsENix^ۜ2O Du>f N !cXg?!d͍Y`Ρ0.Rޣ*Xj?s_a{<ؽD7 6\j>{SY D~H/q e$ K# $p >JNk"ef ?T8 (T)Gea`MКC\'N/E8ZDԚ5‡pUaN9DƲ/iOmx9`.°Ipt8/A*E4 ce&=(XU2%d9 ODA?ۑ1/գP a 7y[(<&uT7i͙IG|:7||r/e@6U~1$EȳXq\ӈMCӟ5,8tT RV@|㬜Q´ĚAkE4C+L@ހd:{R5+l"dy;i3 2GKnc0Mqz"m#<:%dOlt5'Mg#yC?SR))aYvR<`L7PɄ>t?7/Yx$w> ADbIe^h{s#5.7ã>95!IJ׃F$ Μ{amة?ξiNO:}S[]?sZj[v l O-}<=8ڽ,&N+5pr6*iExM>9r?¡"JD>ެoؓ!vSgۣBr G{uXj ޑj4 $<*X{u|=TZo8pҳ3G8F~0kzDǰTF3>ӏS[^fpLVBC ' -KMl&2@qt6Ůt(2n{ץ5s0mH v, :F4R oAdI6J 8]c}JEz# DpƦAp=J;~rbsqh.zsqU)N$Fbqo^?#T4FԾ\!1\''͉S0IO"kgx$ t(لmy40 !PѢia|[Pp(}]y! wh^ٕ& &V$b&~J3.$ݰf[exs11Q )%Lr XݓT{r=lEoO,_4QrMĪ>$BH==7G F )a G ٚ!;6q, bu6\!9-aXwcQ4:Rh&kY3`zIa f삽6#6f A*ߞ@ޢĻ\LJT $[oI ]#[,-=rS>c}D1dx!m$-\Ω1,sH謥L%XvMK!>+'<\Vhw;.FaMQx=;{~ɰLJ^<{ -;IUcP87JXm?xOx:TFcWEYha'7^Λm H6)YɥNC5vd!Yx(@ dF|<#~j`l5.Yy Er7(YY!Wpi}s;{@O{pRXx+h1p38:|^2WHٯ #ӶF2f p(icՓZG_IgdƢLBJ .yAIT#q֤RuApN_P .ȀIp;^Ji S~cy2攊*F YS0 i"P 5 vl 8̑:̟daϦCurA)>tyrӈDXʙF]q%ac^<4;rԔېˮwPS2;T~Ԃ$r{I;g@]Lc?Q(jG:9H&hGv3WlS?^K]\$a]@V tB zOk5\{V_e-^x|S RV87xP13L2(>jox!9a ɜ9ϠGgDkCCH]so\#@kVADśɰhnސFhr 9bٹ$O2&0VWpD&DfGulX)%8c$ 3cѬ"iEr?A{4>"$A;D0Z iNk>^p?(iBQbv |)AL`#iR tc @>iaLy4:_|K'b7h3 42/ ъ7E6FZ糤o&CT;NtG=xMdьz\ /r)Ur2vg~tk$J 7+ imimڶw22 mbI r* }9=S,]cӺ_ԾhPiMHZ/VȂ'~P#_1爮f.3t]նwȷw񖱵wqмSyƁcN%tW|Z.%9yX;9J탶[;n^OB{W Nw_OB#| N:Zw:UtiДDtlYNmDw9dˍ1 RgctN|N'{9tgitzgәx,¢cߩKFDrr|zF!07DV>/ΐ{!mQ5l'B:L)0$yo^\V5,ppΊnk'iK3o^wD)2͖w:9g٥f+Az()F[Sb /_zhYCh(kp w< SwsNse>= ה`\!p\So=yrS]첇B~opZ}9sc1kNjap|t]Sf1$yt;@!ͫѲ"$ mNDSɼ_[{9;ӗ?A{Z5 -(H;4R9|Ll"^oĺ{H%SJD hC_ESXs%$C"8He2ŐB7I r%P3

X+y迿;^ɟ>6??O&<6= M$l.B~rIqh/1kNwC|z L8ܱwr6 'RLqy |" a~,NJy΂<.Xp!FiA=Pe/n4!P(L`2TGRZc 뱨*=wK}ST1c7'LH_s8 9t\ViA ul|xUn*FhL247X 4C*Eb D]Ia2-vJTp@ڰΩ&PWŹ]Qz]X@Ұx"Ur ɚRؒp,Ϭr" /`8dhPnFN9K.+ 돃h>11if׍ﮣxz崾g s1N +JyJLsfe[mᏑmhxZ3'yaU`ux9} {Ñ S\6鶤aΙ҂*kDZlq!<b@##I^c`$VZH1XN"ͭ;rs<78c0*>+jy]ԹM,Lop93hi \|$!k" e蚟vFC6$5ҚѺuAKpѿ9 LTMSHO~F 3.l );Spø9wPK tE[(Ih+?g?wP(.sQ 88(4j1:eu4qڱ+16VߥRciVpXF$3Z+Dzt ?K v4\=YűѵQ'蓸KGOraɸuPT϶2sq~%hqS:?A@>/q\#2LYlu (y2{ʚ>{Ƌse9~3XΙ&ŝsakM[jiKn:BE- =h.5g9(⦭ChhKsgZ{/!;-5L}(oZ- UݜUJqsϻ5s &W\U&Jzöy(,dWTRya{/wB]b`;/.E\ƌc5cqv86W~Y|veu4AR[WBjɄcKy8Dsb/bh9?.1˄a zQ<.Ʈ%(cWŢ^$w@Bap/\3<+ogWEMOL_řj\>&ofޖ˨WUԝ.r(FE>THp(*&̨[_s~Y:f/P:c;ymZ/ ܛE10sMnӻYax;eE-AZ6<8c9oLZ˝sA.zl&_*j!p^0I/k b/h Fi:L5tVbfY{94Xf/"PRGh~'zޡ3(xRG}RKOFqqga:qNdR! MS (`49 P˝Oǽ\(@WƖ£6F[d^!VxfwJ.1 O"!!V >",1/?˛7F{X {{πWZ|x9xi{2?-)FEGѫVwH.s)hդ=j+vBfޙJdGQ'j27  .F`huO ˡWrwqn#-!'d9i/kX) Is]+m),=~8F.m5Qjޤ18IF2a/>>ϢӞNw8юZ>; .qE@ մأO |Pؽ(4 >\4,AQ\($@~N M SuxȰ^%.F`ޕ P7uQf`u:[f1[w>3pZe:e6/ Ar8?vrŞPP/:3J&UNV-iBA"wO)^ Hduƻ[br@?+=23 qB°)8BkF"_pvq;ȔE8(94@XTǍ2@3#RNB8:y^Y;I.< 0LCױe;fR)Ƹ! ?n@8u YiPL;]TB{%Ȯ ;ߦ2l)yZ/Nz `m1| ;aϰ%ZR{0W!/C Mggc8@]|Cy? qrNAVQ"4/x@4w7D@3.uBÑ?VV÷g@J5J} <4C(0ɒ )VzYgf.9$uI")0#aǞZHhW$t"Æݱv);s~"ixpH?}TW\}ƻctN|A1 Bouq֬zբ]$E+ "E0)'%/qNJ暐pW|GRZE槉,>3 Ixge#4 _=gito_Dh6Iq$Lΐz1 ,bPҫ/!IмaQ VxMp|Uqt3lVWa&#;Ј#nCZ^s7lA0lZ2Mڞ"Snb_; 0ǒ}uѲ:c qE'WDyM"X)m2) >pv1.4lO\xK8FsaYzy߱5Cwj]jbzrfkXhrC)cۛ)l?3 b<RySrAȌnbŕaK7E73#ANP.å-7sJ "&n7zY1bDPΧSvVұT$cu-<"ICAic+vv|E^VaLw~^V؝.Qfc^,rXr [UG1G,w=Zxy5Mܾ U. 6,˂M)], 6y$A_[ &ܩZ=(>X=c tv;~5\Ud)zM'd-fU9p1:YlK.=:Yq4\xK,o/R𦝔P9t"tV}Fp6l[CՏmdrGy#,[jw3GmgLj 4N0B( hܹИ.]"xsn4}k{2)ܢ F`_B~Ds.d;ꃿݭΏly4Kn`TOodS7,} X+PNlʟwqI׭!y>qڲ0JӧI)*p,ZcGYY, Bʄ2>p .usk0vsX3G]VjE=މ-jY[ܣUz~H" TE1 91IyHnpp]|,LRxr_ L]\~~1\ Wdx+ (wwSuhQHoeVdVn%vHr2rt4)-kJ~#2s-a@Ī~M#T46K>׎qeipe>;s]OGq0l9I_ݴ+4.;?-KO (%uWnDYm*f/Jml2% E^]i{E89DkTXzn$ _-4BpPbֽlKrMOco+ F a)_!Eȶ ȉG3pv'-R}g^x{uYbldE-@E*0#_4\y{~.0\ (՞k-lzy |-p2{Ac?ŖKl87eg_[ou_˂akB: zszz%H>{T%.(լ͵xH\jY}l5͊Q#R XF29]4l8K1ĩ0U/*B0-r%%ĔZeq1)$}@ \/93x<[6{_y٥wBΣhb.Zj!)1;=Ĉ}e5@s]eC4"0ơ {& CG ڶCE bsцVYyXSs} B FTE p=qӈ5h}D:1T=+omY_u9A8-oEȽp d&#JckXB&.֒7ƃOj\jKyA.T zݟa>{h"Ԑߝ}8bDMbݡuNI\VI|f[(+y+n\vYAb8V(ܮl8˾_%HB-eJ&<9)P4WY((AuG=X%drLׂJ]Л,ۆ[FΈyUx fd/3 #d3_b/!x/(ZrZ,`K̓u6 Є(9\dSGWҊSےӁ_p1)8#&_nB)d&QUVu}J<~Q]ݱ&{5±}#(JRvШZ |j!wEz"SoY +%n^-f eȃ; 1J MJ3 l-3dA C/OEI-N2@(tG  A0ӊ|ܓ-RZ>f/Y4.ټ"!ʅ{!E;o:dCj] ft!8H({Jgm3pET .jGװ v$ZqǓrIUvڀ>:妸Բ]*nF:+[d$RZ\|S'EFGŞi Ҹ *)륦 %/MSH;xtږ"˅NET\w"X`P.յba<}y^ep@;DyVyGY`[#t۽OWU,={,CRH:x:\rcat1;u"Sy8_$qx:/mN:@JDi޳g<(ߦP(lFasfNӍNfdtabtPNֳx/|t CUEy w:TgQ+_L%T4'1:W,2z}::9+$Tw3\F<бvu'7\O}_?ުq_!\/>`[ɳį`y&-(ewhb:}GåˈtA\&a]i>Ț$ 3vNH㝼24q"_Ȇ 1a^FyBx>wOힿNNG'v̝:Àz鉮GoQ5\,@ ?XV 2gХPq^?mZ`"ޗTXH]\G== A](k31;2yGǕ¡ %\TGKlp{dqS_ wϐoƙ$quZC6+8ܑR',SZPb1bR{&srWd.O>$t *[aTY_w.?H|pK\6]y +'WQ:ܵ. Te:E$U0d͢bxTT>^M4;woL!X$^G٥!DO#pҔfkqmkRHAㆳDDKE/ U!nZ8ӳ`l$HܕFN?V ^'p|e}i% u/̉u"+]2ƹ#G I,M -Ha7w#%CP Q}~]f ܬ6ߖp1l͓!s7]8E!M MX Ӎ YҠ%5#w&OKWP&pJ՘ѵK^il/F%R Fc9(R3UP-d#SPڢtWxG&fptǝ.𶫆V뇶2@N'jL[RH؇,S<7`)>C\ր@ۮe*oUrcҥjoUvc$%1/zY"vrm {l:E;d1y[M66SO.V~ SW+YۺŨښߕWUZT[ ݜ)pAʨ 舁 `sH bݞQ3if Ç@eyԉ\A;ōҡzRWbZ{Iycw*ʍ5 xf\9.F36 "9=&l2cDhqfZl8)k(מa`Ӟ֜O I?[6sC#ɊqX+Ҽ|Hrj 3*Xix*F|`ėϮ "{d}qt;Qn7s>e}T)`Y7U{2}i,,StґFMy'QSD2 "Y(C!Gii+Y(Q";8=CC:x/)ĻL:_ȗ`R`ɰTz=4[[$/*QR1H &5_6HG!ZʵT,98[yw!- ~y ¤C=  Z-o[1sULPo{&we+{Ip]e 2٤Wp&;-+ H R\eB:1FK땡3YmR\?zOD|[j[YcX=c3G d>fl|dHbCIdYExutK`T)+X$x8%QzƷD $ISdV݆("[|[ ȕ]Sf,f҂h(Sor p3{Z .}`Km BK+ #O!KFvT-m"ɼnPBx8 >OYrB9<%3vkf]K\YyTx=m -+ұI`$K}8kUo,&ALp}c $e"$DեB.-*88tyFZ֛fI!nO&=^Gdd٤y@->N Z1 (EG!Zuu SKF4BnJg6!Vf a͉,zRp<: ȫwҰ]1>:xr bAV0n%;{}GIU*%f>T0f)8[t㰢EO`&I*֙5xS=8vAx5`{YFug'[S'=rqVjҌ:݊ۂ+@diSKv6/yt-f>Dђh+ɦ+?H>m S3iqM+V*<С 4 )oU"d6NHv/!".E%Nlǃ yŞ3Ͼ`B5nY>Xn^EXuh>Du9 e1F׆9K'nTX,B[俛#WP@P|\>qmţS;e 5$wRFZTR+<&y+Cmp`0z$S>LE9:lE[uؓKJٌIY*~$!aOFҮo`X2U+xLH 3976oI#6GKY٩Pn?BE?Z.ƄL`fQRmS4n^nJ w+D' $>cP R1uvvacKnEpfY#9Hגl6ꖠr%#[ s:ѣ Y9P~`;LxZHC48$y1BC$ R|&Sg\o]ض^p&uS8V"{Utl{:Ni"bJ1}ƣ:' %8#ѐlD&xX:__cLE2'-)tiVDJ[ O=*7$ӠݮRRF ym#H-#[*-(.CO'х4b-w_ s  xxrZ?%Œ= &J4Kcd(mq~Z{Id@"=U8m=3d[ m"RDZ`ћ'a8 ^yQ b4K6`hWPnAF2saqFU(L(&Kfi 0nG~"bY&64΋?4)E7pw sF}dd,4p^)Kc# \hR<|wE%@ W)D5Е ')V%7<[@JT+lC6 ;*nvQoswFiC"d{{zf¬WaM\NE L5j>N6E,e;1I1ÙE֑] ԵLk;̿Co]YZdwt^Q;(aía5sAr`ń2˽]13Ji2ЮC:[%U 1n/q{Z9$[0E1#sO" 66b8dn*TqLU`XS]ݾĵcrzڰ g4L;EɝF]F|Dɠudo~Ͱud )%L ڭg3h6x<ZGАF`c v"~Uh~ 2h>%Ŕ.0ʬ3hhQFyu* !|PRJ1$O}U%vy"~.9MPyZ Yڤ  ߪĜ J(HDKUҰ&08 RlyI8 b g5Ux5k2%K 5ձs$ W)58"i&,|qas#2oˈ8SbɲEKx$jiU/b+Ԭ?moǨII8I;[<–$H GZ]n+5W ӗ!y:]ʒ ܙycMw(XUJ=ӊI#QY>T0K?眶&|۟* \SVמ3O х^ n fCUpy͸As:[惊_ -U#e'tT6Z]0*s\aDڝ[8D1ÿbY,#Ys&]%.??/+\?΋a)R#{RwRw;M9a6o3ӊd׎M&9)G|]m᥁ʌ$-zw;ds`#M7hzgy0KBVIWh2JM}=jנv?D>@cr]I6b6: Hc:K^I͍Wk~76@|=9<AZþ{N^E\@:j@LpT/ h~ihz(UtnC.˕R O B\G̓J]z]IXH"-X,Tg&qGX$Y/&G7hY禘n˿AxrNDgh'{2wM'i7^0Y;q84G'v04,lMRNءi/Gwr-aK {t-{|͍]?+g[2ޣY q%h]cޘ/{=ցc;z/KGLefOd Shk9[iSZz.7!q;̺ݎX7P-Wϰw'C'rr8浊x+F4,s+ڹcñ;K`Y̬z(]Nv"\vP4r;9Lۗ#\2b} xPY@Oy3E|KX [0C&ĜzN]TIh}*nAiPbq76Rbh,V . ?S$Jnr Ǐs4y;r˃[U\$l;e.?E&HMP44df:`i{;#}*FiQ9$ N.rfÏeBv([I7 >Ѭ2܎(=lRtx9(T94 rD9kj^>%꫚g/S p쥈#=qh)%%xTZQ\9^nxwE/_C%f`+S6RSdr~[ɨYɜb8$yys(pA󋲃2f1ZNO-0"7 p"n}=g ~D}\1~Y3KFK$$ l6iC q-9튥g} tB$eEԧXL B{ٍ%ge ~2͉ioxWK#OyuKc}Gk]D-z{+g%wdxIe;XgG~"Z0K#Nc0Y1^QF+uE6:i)b%X^0z.Qv!%t_ C2ՍlE` u[1K@Eqz}_7Th8c!~O266kaZAIH>~PJ=p-6=u\tC m8޹ѧ5esp)|}rTP5%3y\zo[yWbюmk [KkI~|[I򩠣a0x;19H__H{ܞA::<`<&zgL!{:/@9FO @O;++8A˧ζw+ـFPqy z@!vA U/фW 8#s6áwvOjKNd6N֓}LѐI:i/ ߭Hϑ UFihW>h?ćQ\[ܞaH{z1 ^RzW"qޒgJܲH~?M-vg C*Y S9}]H.;ϙz߭$ѿk2=SEvC (`yhsBdiuB䀠] '5@)׸@+@_}lϪ\sG_qljƎg⒣Nx4Xz:-+00".Wyl;A[JWXE)Yqc6^6Zdrf횔uHDVny]T=1#(::M*dP`d8dPL(We:oѼgo[|H2hG2&)`zK9qcw,%Y[w@.O ԓ * kQh'Z~ ]rA,5ὋgoˇW a(>|H·(x$tJ^Re?Wq0 .5]6ۏY7ńFZ跻'u֜xuR2  Lo8pKp_kQ:/ -\v^,.}q_t&Y1 u`>;T(WC;:)%w5q4ӣ[η4i_LpA)+7{8|kιlk4'IM2D|ە:Ncǥ))l:72̍m}g}3pȶQ9=VU̮I'?ol3Йfq~bʔ".?6Ϗ``LKjՖ⨞tga lm: y 1p )ʣa&V+{l)ԅa$̮B0VcdpF^`T jW4SųCGlPVLyYnz7uJ<;+M\гSƫgqcC"CNCIqALe)4%xpxdvFM+$8_˪a 5#:Z`seL3A芺t͈h)WvKe-]1=N8e>?+pi5^ (BwcN-a-Noq{OOt령O"/_y~%i^r 0BI}D/}Co=#0( u6>睴BaV2R s~mEkOQ{uCmOg)tD]4S#%puE+eá_x مcZ[zY؋p_Tp&P~E"݆ ]r1F3L4<8GqFZNFFskASH`ٮTXB_[䨅0ݦt[MU+ 2IYďG[(d $ 'itWl uŸIϖ+Ůcќ [YxضV tɧ<7_b[Yx$,4 *3"6)\O 'rn j{dY:9#K4_̻"/ eU1}{Π}pz7^݇0 Iž8|1dASɡU) 5[r^vLۉD~!}k;:%G֣SUL#YQÚԟrz'y4˜t1=A37[s>0m‡HwuaHʁSfxp….ZwE0xh.#JꟃaWxr! }-∜*M;*FBJCO;vVq0s7 恵( b~o1eNG!c|,glRPK|):BmDX/ ̮`Ȃ}!&Gm(BHB(g]MQx>J#6{+;(cB pf%8ʦY%SlGzjoAq>Ndz!b ׁ?R& is'"]?Kw޽X 8S؈0{|y>{}L{YwBF v']{rz;ܲ?OotN|\[wmя~6Wi:M_oעe9wo)rLA&kl˓_^~^t() /vq/B3I)$=ҷlظ@pa$*i<7Mڕ|0-?U4ě k#Rg$V&oi5f* qT71]8m_;dAH_Ǹ}~ԜIUgu3Pa rS쀶SKKkJMJ7@>\J!w9♾\j}|dQa@l^c~#yOb$P~ӕ;:+G}_t}C9;_ }bwFL)TTTT:h0ױsW)b13w8>VI$cdfc2VbWRj5QG VB[! +.1[y̎既SYΧ ҳQeDwiXwJgjMi?|u?-c>үxt=JHh6UzJ}wmJoܪ Ni4ߨK^)%h5~ojIk]!*i5޼|j}lny7_mA^o/6Zkͭ[[[n5o7[[6_ :."msms+Vj=xE:*u^k㍶~rdCWcsxtws|zsh  4з׍dξДFV[⦸Z Xhi@oF]ώ7n4#_77ެo56_5lQl7^AՂL77_o"IXGַַ64_ollnl5^#DFVLX8kכ,X9!Q ͵W7_mm6_mn6ޠ )~SuF6yA*95Yỷaxԙ#K<$T؉j43?4Y2}3+F}DUχ\|܃ݓءXюhAoky!ԁ:.#fq:W/*Z@ ?QحJ#+ $y N`Ƥ0CBQ()%6Uxvy -h^$8 2Д|1$Dd| (&mêTTJ>{Cr xQl)rX_ķo{oʟQ|=yK;hr1]tw|Yhz'41ON{sf."-͘BϰO^y:KܗF%ܜU~yMv7>ؘaG(nB `Icxf*H%׈L fԧ""̈$?Ix΀xB vߎp SEJ!{XPd|@ 'G,_xȊ'ҬX<24Ÿ|+ZIwR1V< PiG7!Nr%bxIWb>Y䇣bxzaE?Ê~˫>G>hq^ @ASM?hVF n,Wig)vM :eT!Mϧ_A;g)^%{+'2UdJ48|q4S?hVFrT*8J8uc|^]fm/۞w{yrqgq/㞑ɽ{z6r|qgu/^ٽ{{c Vs+85zѣE6 m,/okGIMnz6r"8 ӴA1m`08Iֱןd m;bfdS1,Nnή_ܶim">1^-Pblwૡh27X̜Z_{Fgm̃ҕֺO|r۫?$*tg@V0v_q7'_ۑxͦ>2?Dg6>N-\FUP#`bG"3_6C%@iPM及g}E7_tϽ M2\B_ G Qޣ~@}MgZ>iYӟJu~4ahBшS9Zlv xzOl6<+E!7~C%,1&`ȼJʪFLJ^ԨŞYld+Ȣ`k@D 8!yDo#Ys# x3ܽާH.lcL+}OZ0&< ; D Ge% Ak9HD<ؙ6ZGCil6%ؕLjgZDŽZ.mgU-Q9ٖ=]itD!piu /?y-vT ܔM{> hĒ.pPOnr8bPa[e9 tBk!y\ H As.Jtx~Q90أ6@eNk`FBQn}dF^Ʒ7h>̔/&Ly<"|l$@'[6] V, V]EaͻF˻xL&3<.ֳ %BbV`NlÝ?w6-j6 .g:`X&?/9~1C8 A4ow*׺Iyq]+ZzJs?˫:JvIbcҥ1zwhhl<ѻ` dN"|Y2m Yu5^h ==ڛL%aHNqfrb{8iYǠ2vLSCp2Fd.3Xta-a]?`*.f,`Sce+i8vJ y?"]TVcƹS^4 l`c>5j OC@Cd Cq@Bj01<" tV]LSd*#q5x%{g'q u?m.OљgMI#cNvBy'Hɽ( c40)^)}Rƌ`T|du횖uHTo6& 7ld.sjG4 %W`!k\VWWaLf6 X>FE%Z3SY:5%] Æ}f&?릗mFya@}FygN#Ԣ]{-؂_/L7T:\5-jCϞLINsI[x ¯gip!vd4GǐAԲ t(=n5Dq2c;BhrN -cBH4Sc1Mw ͌Jr}N%WÔɳtYy62\s3?v=h|DR{8neoW00+IuB~& `'8SkOB,lΒMsCwP/Sxޕ28#<^# n̆8%zG BZ.JǁqAy<Ŭ]%CsCڱVG-l"qwBQoVYZuW(tN29J3D!SAlŽd} p-'Scr\uN4صrR2ϲI4xl֖WT cDn~Y,#aˋ;`x$)L|xџN_MfV#Ee+#tOh |xtx{6 y罃> fhL^[_!B͆o5ܳZG8W fA;.Y UέĜ5PU8D}Gb4LJ4LN0(8Y\..Y\x{h&!X o!qVLfBr,MP7d v"6$xFl!"m&wۤxR1"^9u;W934͖4)Y#w9BI&$Snf:&M2!HouJ#2#^5]JFGϣWz%VWCQ+8%%iц"66d`Ϛu*R*R2p3h+eV9 2֟܌'7_ͨ8rt4jijw5JxF\}:;Ӹz^ ~utH1w#qrh TK:Il{2׾UyxD$SҶXŪI'j~'k<5:I`uyso+mRD%phVj^﮿ha@ӆ#(eE%6wPA~Zդ5I|8;<:O 7*₅n`&غgqal sU nà8ZlbMS7G=bm]ϯ^``&4yqB$T^F}e)6ɶo600!Jl'W ЋzC+@}G$ P?vy_+5Wc^+=@B x@/b<9rNt9LYX>l2|< 767}<'qG;Uvjvq }wos-# ۬[i?z'6l)u:ml=dsLy<%J:q-k eRV=)MnÎv>\(RMfsU_4mR|Gr-Ά[N)#*xB2m%YzyS~\͵1} 6D@VuBɛŸ%tRE:%VrQ FbU|EUK򾃄>+Gk~W'2Mm:9dtm3V"Y6KÈM`Y^ ـEY?fa_֏ٛJY57b5kspYCT9vͪ+E`Yq(^C 3 , Qs{f̂nJTF٘0]QCrR,&Ky-4i(a;&yOQƧ(S)e|2>EOQƧ(c2&nAsFF4:?2zTؤB*p-VDY$\4ԩ4;UuG4555G7eu8܋t*c{Λ FbO!ϧS)| y>j \{J(a8;P&Q4MpF~1AS}"hfS)z=}>EOOӧS)z=}w6I RFDUEDXmolլ @]PժዪWSjneuXlfK"6J mrm8vk&mq\wށwvd󁏡3yȿtOښR?ϕ?*bҏx a1M˗_ V@Ft)$)z2X1dxX?ĵ7dBꂵWmi-,aG@ 6&+($"?zоȠoOϽOg'Ǩ7=BTyx\( Mf7I4 W Ye\\,/Qr| ;;;qV֖͈ȏ>G 8"w~^`fcu|SЊx @׳4\[oFjp`u42E%!:E?0:C<06 r'i]r1VwTL֖`Z#Oq/-AnWw`^MG|?xV}rLxx zKddd_/^ߏg-:xg .m0ѼҢM]϶ ܽy'o'xQ #rܼ` ?Xp`gP^4EѤ UE1u;]CEH/xUurCn/ { ,q<Z<7>\+EQ`[/c Y MB*eo. u +ظ [)dlmr{ɘk>ey46wٰ'u6s&c CH$,Vx1#7N%pN$iG 3ۨogO 7Vbn1<1?.Yu!^+ g(Yu ZrRr\L˕ ӟ"5իԑ;RϾFѷ"޷"^>Un IT|].GrK~9L\IQ2¡ ;AI@N`,^Vrf >v 3.ni<4㍲(Raٜ Wel~t-i yۭJ-\NВXWV#bf[*޳͞){[z-^#S{;ʘ.`fN>4$^!8dlm&Φ8 ?Dz]Zsce~×0/e#0eN^4߶$Z?Ԃ t2!D/IBx"{,pZ\m\}b$cŇM:JUO\*;*Y4:ʻd~uxuEA<in0o? "#ڟ-ԒBxd ;{!ڒ tE҅H)ceRVTXl@zxDgyi]y&[鎘d{ل6 nXj*2ό76))AXeX/SE!"0NVY J9^EÓJE@ #utq; 9zh2]+:+=WZRL5]Hq+[G5ԥWk@]ŮPYhZSKh2J+]G*֠? )xi BKcUư]2hHATv-Sl#&-W 67(OYIII!.sI]l\i:y&v>&3OZ ǃK00ٖZLHs) Z nNKO{xP;QV7\AV WF\5ֱWW4]-PDt_Ӌ:5i]F$֟BXEꪊd7 j%ΤƪfDe>T$ q{ѳK'5?,TƦx>jŶ]kM{iS#G= ȡ;N%- RXG d yC)JʣZXFcJ X cK X cL6"ØSQ3=7B3"A 8=%e!&cޘf(UxfU*Lɀ0"-eZeȶ:?-#d6Y0 :L*B&6,*cnź[ƙL0$ۃBd/[Ekn#V6[2HfUV WM;ioW"9{t ƹ,%KE۩q,^Fz.X`1+ܭ̼5ibr=x7a0r9=R5/11mH/1S^ga"2r:FT4)p^>s qZ؜ZJyL21J%=-vŬhN혊H(fWJ}a<QPZpmU]7蚎gQQf Nib "( e|w[c HM”dT@UZѕhB>,L$Ֆ™,X wFt텅bdlm{ւ>ov.N&szlTȋb(Ho! 82j&!vؑ$ƿӜ,6(p[⦻ccz)J2nNU[z^()? t$mT*0<ݵ@$^S4FGLq#p O-Aj0p鿹pIs ;M?JQQI&FySNLHy^q&1\82f@x" [*#rO(/g nm&͎.c9b=p<P\|V 6VG5i` ?';3#rvb߽a'q-@b ~? a, f|kA6!7yL~;|29{V bY yA&#"1f p.«d+"WdXB" (eb,ˬx/LE0 xg_4 [K9ҠCIzi`خWu۔űAUiukzB 7ˮ`ì'g: C~E{{JpIF!)!QO'33C&0VK$2eE ߵ'1l'7ʬ"0L؇R,sx))? ̵t+.f+]^nt$NBtUjU}6ʯ[36o!~m|[ϭ,߂&c ?lNFO~fNœ.TWv1fzŹ$HMorg{Y8gą8'ԭe9; b y.G3LQ7E`_N"j`wH1;" |q]범Rbz Q\DI3*U]fa0K&("D+#MZ5eL " nH 47{Y(/w3 kBù iN 6vgvg&beOO; ז /ǐMp>жi/ë8d$gdcfa8ҊBqW#ߛk0%a>3hyG?}xv}8ޞw{׃w¯ׁ?"/;=eI~/{޻ãJ/9{a@2w(xz?zNO b2Rzzr|ycu z~O@SC|]Thtx&]:F}>XAz5iߏ-3? c75HU*4ڰZ7 {AhJ*۬& oCr#aЦm򽀩zYGEJxw!gIi;+b?N'b8t۱6JH+Iw[I꣄r:oABAnNAAݬ2`LH_`K m ~Dr5χx2]$NL)L͂ /p$BQ0GcYu2XL{-ڟdzVݦ[@wr>$8$̇ (aYD^XAۄ[M(&)Z3:cRQ c#Ta鈻aT f2Y6SY"$bwÞ6 j8vj^,koe2LzVG=NAf{É;cصcpLA}FXQ;́0؅vы)O?FWzSM{jjwCdc{OyK aYǒ-$0kf옙Y`@]|y9 ߶[_k!G?8ϔ&}Fx;uEH'9B,Eot2W}w~p 4 8&>1~Kt=ofѱK{:(ۑ1r:XC޷/.&G/_ ^\0v҉lWA)f6Y gJ)R@nն NY2JiC^.r3!aVoYX;k^f1hz)d38Ͼ' ] $4YN(S7S??Â$<ǣQ/_MF%}|g>e'=N==l9&(jc^7 S=&kA|nr^4HVn+AH! -;׈*iw #ag zFЫm#6\W+/fۉQ= D]te+=bݻdrNh|h'Xx\F4_UD*u]`EjcL4x듋g!.Ηdźôl> _:سPT`J\ƭm2=Rwl 'jf"0\nomMu9ZSA[ˆ7)rJlPdҠPκQJ9^O؎Wu? l:.FȰǍp "CÄklgA░9^Z][Ԩ&;PV`S_"K8_dmɽ/")#2#@KD5/v#,ژrv;6M 46K)H"#N6S q̹<@u0$5;k{;?+3{a/\E2DGn0հDvl+9Z1p|e;kWDK\Q0#9!ȂS uz=ّ8 Vκ2pgtxGwooPb`raY` (e oaƒXq[p-xc< `DΎ!}tGgm4?+Q2e$[a$V`b^<qaNv*Zw˨uVjkA(3&pHz*̛I$3,ZGOQ)ƓH4Jl꿔JI02 ܨV"+vn!,P dSLa>v=#p4҉޼@7K tۏ~ɱ熳ƹiqgD`C#0K0h#HoAත|pyd l#~`ݲ͜Np'ρho"KBeMnοjvv٭im؁yBl7NWlaK f[ nHǑދsv5HKS\"XNỏ iӜ1@mKTk [:7{Mk];~Lp]kkK<ʹtQ*f Dh}\K_[k}:ɚNm;)[ܬi뜏+e?fPz =ZԍjZI,ɒ'I6II*a(;b .76W<& B+W,V%&iKT#tsVɼ؞' vv* $ؗI~/ypmLxUiL'7*m+4M5wP6^e#W>N|/b#LdB=M&dWz[2}y˕c+;y릞A' TBL", `f;M-j;]mtYz/<*1sgZ(q 혵q8e\!f2uݍ 9q7,k)CO6k]yY֚.Ts",hi[U,(e)c)?o%9?9>ܣ23Sܮ㟒*XQK)TuiM@լp): d&uxuEA< A !9;nNhgZ05 |g*5ĕ20O #'@UsI=dFS,bF bIޤTi5&9$&:ƪeWVe##_Z N$F\.˻% 6YzaU߷wЫ.>NpI9W#Qwr3$2 =MIl_y\r̯SۨYrST^vTʣBmW'ș0q'0g,Xn,[2҂ J#=UTҠxZepuC67&\?bxpS4` U#BHѱ y-ϔ<ט(3Q< נfRgDFVqYX z~EBuk0uC.԰?Lݍ-WijGmACvAbq1~2˶bWLVxrc2[ɐChc]Sγ_" W*m)EL Z5}p̿,y p2$85TwGtC2)վ%D1)iU} ['{tKH"Xa ZC1x*<_`Ícy,ZwXID:@zL <)IY; z&wDY )и_4UkWbuNּhYKNB--h(M ރ|%I'aO3];=z :#t3x_~"ppB*#st AanHzx6~xWw޳IR(!UJ;bG uT^8 NK]< 9ڰw>UqFy(<bٔDHʩ9ROR+ȬwG(DۚcP_Wf4Nl 'i!cy]uĒW MQgNw^8_mienm H2,&a%B3n47:Z‘ph$],/B& YI&kp!Y/p,)ɞH2rL%X\t/w[Ѽ7R$3 T!boH:$3B{eiIv$rw$g2\y?+ҰvovP0IJH=cE)RI.ˣdjg7d<}&_4=6DOOrtI75 ,|kkz6ƛkkד[?\?^j8YW/^ߥUUMWS||v(ykאd4?xCDoe#,Q1(4yXU>i}6QxMȮWFU-Uu@ $m9Xv[O+^*:Rb-:8-/7_W wiұߢ M΄ㆊOkXn'!dC~]̯Ы7|$DہI0GS=[dG-&+$&w  b:ּ2=) #a!w;njS~eGU3L|% p "Lnq$.I;^U:i`W~i!JLn['^0\΢ {P]VfS->8p.қgq!gO?Lg.ՙ0 v^WJ eФ^+S)?6ڒRuM%Fx^کBN_C}ɬSHg1(fs,jUF( r@M<q2SVViF4e%j=!RׁeTK= ,Ymǐ}W;h'Q&Z[Cnt5 ]z&o(ۑmxذNj5?ߪ?RvɚH%u%Ck[ך N& ?`n2xےR*N ;G5UFR[ѷeWW܅-ά" e9&rW ^42feae1 FM3[ӳX'?k-[K5q{3< yNl=AfOi榴Bٰ>1٧4 r--{ n.:^Ue,<(*:'OyiW4y|GW hi0MTs$<Ɠ1&tjemNu*SH>z#5ʫ"es .Vj\w㈎N|T.thOlEsar_+Qi5IeB<-:?EslR_IN.aί(D 0fh:pON Z4գ^w82b|VYf5uc96f]&|.s&8OJOSá0{(:hƨhHiЁ׹C(hyhfsʝ\':FL0tؼ\Nļ2aFuƺ.di }"m3Crde0= DHQ\m~`X^ ѯ^$M 8z6g(wuhͯ8g(Tك<PQljS J(*ndFle*UҫKk\vפF:;./*3p^f,#K~=wS ۿRsN^dou!ݴgnkZzYo۳s > 98e7Ck^ZiAzAuMy@Nop]jeؑ5I.cʭB\mKBePrW'Izc'E8`ycZDmGZ5OsfAX#ֽ.>Eb.ca=)r$WYo ya[1k?CJ mJ^uRWkG0JJQj`@~}kOJDvfz0p|BԼ,"m O-,NZJT_bGpuAzԲB.l<[jHȗ[wָ ԡ X!GVP_gj`tY 8K6<-\[>O:UXa/,icU ԃ5U^kf bKx!9ʧ9[J<ԵXV5y3WeyW/jXW_BY\ *芙 S\}$ $Zua4ZDpHt 8eH( dXŚ{vX('r nP~`w)GlnKR*l<% ;Ƞ̑SSLAهNU<5 iugꢔOaսdTL ,Y}]Ӗz HF#*Y˲`%b3Uezhû%d*-m+7Zp&]QٿGxf RȽdN?:\d.sӏ 0:W*ulAj͢Cj$)1~A<ϒntk?Ԓ@;(GiG-<0k_uU!1уl=EKdh)c:_ \#˱ >0B+Zk Í=,Y1DVUVlT,TnUI5# &[;ÒC}2,FYFƚ<2ԷsiXo()צJI)m\JFG:uoDkJ-RUX\LdzFïP惭Of)rїˡ^ eaE1}0?y JTRtJL:(6@C݂Zyc?w*[bl;J%YhMeTJ;ưcqǜ=߅/+G=±H,9j'Xzaj5ڙ;,-sK]@Z?"wNǥvTxpq}:pY,iUgWzj?ا+Ï& ZX-,᪑Q8?gڦ1Ro qMȋ%-J&;b t;Ay z.Mٗ;qe. Qɓ-63D<6;y{?cKz;!IqXf3%cU[slǼ}-3v[RZd\Pcc~tDH ַȗmm |c(ejc,[Y jO5R-H_O@@-t1cccx)ir֒Շ^H {CpK1I[2#ﬦۤʗIo& `8J:m¶czj?~ckBUDQ0]AvwE(^v ANےM^?h"r@hSqp"gdޖyuˏn#d=Z ,`p<qOjib >2o RC&ԣGK )Y@,i*ԡp-:C{|4&u5˦v]$Z҄X{$A d L] "' ˻a^nǃd&6ץaPMhw*KF($S%=[e՘j4fuf1E"w1LNe,LLצˡN{!l~_7ԧ%cR:n? g $:@ $w$! @0f;t;>v[KeZ_-!gQ4y0HWm`;;,^s,Q&P ;(#:5z .PQ0a?񢈋w`q}ncQQy*M4%h9 hj\b?uВew" /< m/}Ǫ5PȚHl~y~#ԋhb ʟ4(i-UOIgϯn8Kxnڹn 1pu]z.mI==9>ONw0.1rWoWRWRd:_jI+WOI-sr-@SwFnoVWJ*ԝ6I5bs9uv;hTPmD*XCt,3ʫҳIZ|S IOֱm3NVGt-M7otZirk[$q ƖUFBgl9hC40Sk[nUQp"~{juD׍uYSϟ MKǿLdGo;WvzQpknX OѼ؅J.HZ%$ /#\;p?8wboן|ySc|;=E/w|8_"%vO~Kۀdj&7+{z}o>>oQ榚2CjIUC^K6hD* ]_> T,L:E>)2Ѭzz0dS6(gT9 *UpTeX=I0_\AHG=>w;hK֖h;@GGޣ @^`fcu݆k p@`slo 7Itvtwp|v:2#!CA;NpgeDPWBpʴ.5hÝzzxwKQ+,T2IhǗv ? h|<>Gݷo&@] 3["~ԿƖ8={>jf:j='4c)cCzOyCq: illB{P!>@TFO;|Ęgޯ'gjzLԤd[cڒaL=lLQr{wA F%8 aڻL./[.Wz_dJ\x4xE)q3x~pN~O* (o(0+(')T #{'vO;ob3D^5'l-xw?|Daߣ6({X!ZssBi#%o9d KSR2/Yc|gYߖe,ϔ DɌjEwf(S:qmd,=XMʰ4k7rŦ4U7oYOaS?lY;7%j1\D 6ՐiNWRTAO g&H禐4MYpWhŔ6PnYLVG< sRRibL'qfUaW TIv!b(pA (,[F7kVkƋ&4%CS 9GPͺ+hQz K|8dnʭ LaYEBp\vξʍ/GWUgc/׌lw--tuڤo(fNfQrL)Ha ؕ4@qS2Yt# PR- ŗpX2WrOI]o6[uc'=ku#ullOֲý"yGg|ҖZ!%ȶ4΢)hyluj}|sy%v)6iaFՒEFYXxSV!ܾ%L@0Z`Pb";lWg7WfЇi1+BPh2}ۘea…ސE /Ϗ$ ᗱɊiTL"2$ٯⶎϐN[yc'ق]?aݶBMsũMF*vh(RtAB|e£mEӀ, NHS|+ڂӳO:!u(%hd꫕5.JO+4}+\$'rO;IU]NTs`^fq׵)3:ōtP-,Te+Sn9}q 6.]Bޭ ui,"sD0`qD󹐡+2R&*Ga˩CF3j&êX|%|5H`l@'q*\<& m +*jƂƋv\A07|SK1ܸ*gua5ه_޻ӃOt=PnD R5讛Es $iaI"3u z/@:p . AX!n!#e:ʳLAr'E)ғy#)d 8%1O *ƛB140b׹5 !٨ym\Z_=uRvVirQM%J{AYmiM tN)Dgf&-۱Bf-ꙫL h2ҝV̴ [A`'Y*Bg !]$PG[4` /~"h3uD[?Ѹ I >sɉEU0=n0"lvt秴^Dp{=o疣PT)lWNczfG Χ=Y 8\"x>B4sKr`\ (Mn{ = +V%+M+|\>^ s.#$N ij iaPj.LlvιuGCPwdpzi`bdzdC Uwb?zrow r|juieE} 5tjve: ~>*GY+X :)d `.y yvNRRI i+юԅn$]F/ *_=#>͑%l͘/~m,uIyS\D wd8JJl,;y$mDG:'#m%K!fٻlS4t'#m" {=m鈌Q>r/ζILD4;qgG`;.I5 @)y7񊬡 o@/aN,7J8r:#1)mw݉۫$#B @FZmHh<$i<'G n:[pS^A#_ iYL6{a.1}D1TX37!вI> ؁3r2%)9<:daIOhx BfڮLo,ect#0 %)/Kn& 9=8~=== Qy\a|ֶfK,Q=Q]7 ( `3 "`KfayIloesI7uWxΜ"#A,Wb8+Xom f=t$d~~)c#b-$cG\}ӣ̫,01'#NM v@ sSp,$">@α3n'1\rI'U햢hR/ lH`S56KyNgLiy _VNNqăfh mvvA$_,}׏%}Y%خt1ѝxK3(6gWbY#cr[UF$t#XF+߱tBMZf,r4ڴ՛_ldr" K*5qPd1 6#>pWd pwGYeѦ'"8saߛ0G+GGۭI 1$j[M!y-KR%4Y }#X`02f>Ne3$]u oD d ͹ y;sSV5+g*S4?/{)?oywOPثeެ9dܥ6AWK1±~?H3 9< nnM]FX# :0#hA<0.g"-`4^NIx^rNǪ=E@& c==wC…a`PLժ$-]ZLTGsek1H^f썦yzVY[kZ5jTNA2MU>v3Rx~ e;zINӝ q^_,ʾ2z 1ᎬX)IF)$._%p9_I2:͹7ϗw\{ F-\c .[~=Zl /Kz^{(uYD,h_;E7oE@Xi-WՌs&G [W_3Y~ %Mub(i-Jfrd)Gf8Qщ+N8j6f>I)fq2T{q&"$_->t\oOf|֝^:Y(G\B*mCYD\"V$T׌Q}ϡX!}5.+V꣸B4_hEEI|D|([SusxZXFU A1˨faz XVCső+ovgpŢ5h.7) A)1e1e͌)G>LRoI(=ϘUh&F%/$_%_Qfb15l 2gF.J)T}W6;55ɴW֒!Y;Gو&#D#]; ~4wOÿRFmykK%]۩b9Xñwx|֦g6*{^0.fA6!*T(݌Kzo~0KhqU?I: +utiD\*t;+w+/EPH:Z)nR_'ER >!X_ЏJ2?+(߰JQ=y!32]Hp@:RXTo 1P1 ,ܱˠRgޘEa]N 7 9BXk=._RJ\3s\g:zIV:X}4VJ!>0!=Mخ;KmPAf?1yUsw*WMaKA;>w9p }KmT$t(l uf:oQ Yc>XZx쳝.۪MSȂ>F*h# YګadBvT(.vR-³Hw|˅Y?3r}ѝmQ76Lw޷VhUdU,L  za7B1aؠM2PU22P2M2@M2 VjM26z, Blu Ls)Qx=mv(JZlZZ z5W^K{tW`\=kw0s{Y?5+y'ڂ-VMi;6k И%zxX37Qb*&7TQcZWɌhXq/s5&г;;1X?PҼ]8T`&qI~\6_c;Aбij)זdy eQ6ٳItiDI4?lCcMɸ%Ljf =Xh̋`mxuCEt.tv24\=vaWDA 'NӴ\+]Ċd>*(5TYe" 'UEc&fNfƀ(gf1#yj'73,RP˨ʔ\c9eGCca EpPa=}1;3A\c%eXwS!(".Cgm;ߘH;@nQ}J]s087b&ćyR7 ۂÏx:ׄ*36E^Sûnjk)!m,*3\N3`Z+Sכi0}܇>{?~[(-7: e7EΉ֮/>:_܉~ V,[=q%ka4U8K98h>I?t-uތhdVr\$0 QERs> wl炗?[D?00 t^&n[Ӈg066(8I) ٷ\:9fa@o)q0 kҍ_ awû(b?T%Tb}#RJSo"(Rfsd*,|yF~-YluCo5ζ^J?WGv.Z=H- Y bYZwhG-RV@BP,vBR A8@ItŸ/"1Kȡ#un܄RCX -,^JG߰8,$WFQpKtAqjG%|uOL=2^ZjJ3Pe5e'GfL? P[+!| 3!=qkn;#; $[HP{Ia%*KRThc]Q[scTQynSC<ׂEXٞèS[r/7LO`7L|fLbm `MyvYy9UKS7OmsBUb2s+/ĝS%SzRtvH+_??%}Ho $+|obhіF6T፯sc+ۼ@n$Eh].-ȶlߜhKsWҎ˳B(snDRK 4FP.UˉRC(Dz W⒪XaXdU[_ ,d҂D0W`nٓ9DCtOUEj=J1[e?s-sic8se?R GHQԐNdׯsgdp*|6uFSFNj̓m5.9Tٳ/5Ƣq i,4$͟cN1n$Ǎd6SaO巹p(r?189w1i-#ߢ3D r2 $ۨh;d*͓i쬉j$>/#mY?;~_B8 BT:SyXţUϣC78? mmbv95Yw-,U@ŹKײB5[.gOWіԴe}S렬3e!iIؼ?zd$@؏J )*IJږ:/g7(!>7"G(G--w9-pnk &6y{ZQܴaq(ܒs[lc!C8E oomG>赿kJ/ɺF] ۚ)-vIR8Mk9^(@ZNCY2 %JAm fkTML٩'FNk@f ڜ4Ş$2:v ƭHԐSt1s- |g)j;))Ѕ3z:P H&t.XIMU=RV Msam5FOVx)~ܖ=v.ዦ7kҹN{’ze,69q9R86O 1OhT])$HM0SV 佰B{<䤹I 's 'ɓMe4yz"7@Yyjŏ_FQܔ iΞj r'd>bg=PŲxitlmsIY۹m}R^,3!!y ]{chx!r>#Hvǒ~::I(4L+ΡErڻ.TWx]_z򍓰U_XkAh!uG:/ nf4 2Sѡ}a$S6od:e?|mw8mz]_7ű47Ahʈ||<8jLy*dQHETf{͍.(.SME'y~ߢO|:GpWL1;L-:JJ!):݀wURw 8ۮ!JY_Mư`UcƱO5/R 07nsA$pJKQ'w@hz#a4F#y0ߘI:;A(T3#wVD5?Eא($5!FL۠_li܄<]NX{_V@r$ OrÏBSyw17,郊)X4 '0A2O3gSu1]Lq=}x(ƼɓAd*gW9 tYaLN6/ʴGZÁulX;&.̎2]+ES`ML|Fl!S _([;E ({J 84o|MN^W>7}LEd_mgtdLcӡg%`tRI~%a"Jaf`r›2osP^T :RüZE|a c#̎0wq_fGg;8C C;k@2cak5q3rDV[["HMLo+Ȍ0`-/EO LsCL:W!qeπXtqp Κn l3 WPЧ.V@r|pw).r N/ k/TR:rs 7tY''PT*u֎a0OU%SߧGķEJ9 Q/,weJVCWK!&?UϖQ!@_$@:\E>ZyFQQΖl+,_\e.\]w`n~.`>N9bٿjEͥZUbos8SXZ"'8S$6؍!ɔ&.D/TIN#ы;PU*(Kq-TQ5!+,,U &,͡+!Uh&")1[l8NeOu+ھN>=aLΰi*s1eMLվ_:[瞮'l(6~eQ{wzbOS=]_e*sUsX%kK:[E pB.K,i{r:v"4S3Z̖wgz?\3>bۊS?}-$a+e6^peyxï]ǾHd4~oa9L).lFN aEͮFll#3:nw4.T:}[@\zTl)Nj7,ysN5pƣ>ΣР#1*8&q@^Пw?k쉛Ӱ& 7KxtrIaa#5^@ >zMA??!z&xaM/)Q9Ây«*0KrCT@r"+_^\ [|*A0 UM26%L ŴYGLtF``(|mm~_ZƿJR0O>Cqc`଍٫ԯxpzืwVґ}(Pqڎ믹.AUIvy6dޔC:lҧV޲UF,E`eF5כߦ߯y0tBolg 4j40}$:ll:q;G ]2fiÃSmJy$H:O&KL;c_9mL kp0Nu? k"0UP5*v3 Щ&oNzDelХv!VFU vRmkav=" LFj|fa8aOM{}@W2+E2sg*;ߒáXYWͺhFbRqڰ]dv=bONg ('yݤ_ ?'> tcc >r4$1,Al18Gl hU}BD.Pwc>tTAݱqK%@5' _y3ڪ :ԁ5aep$}7ߩ$⵸w;)t60f~*sa!NfQ 1Z& -4Ϧa{v ēkFӛwq1^WZ1C qAԩFW8aނ<+o)8+3K&Sݥ}lwOz2D>)YCۧ.J ³.iTvSv2h0L~j+Ż9Vh#%G1_K-QY!/Ҍ[W*5Ō!wM؍RjƦ6. T ֵaJ82t`{A~m2;7 Ed^݈ce5]\٪1]A]PZGɔh U3` V0^F y.p̽+9G$|&6}  ߟ]ʇ76¡!KAYܧ`dvuVÉ'JOuL #> O|[D-w(up>а~i Kh>ژdǢ*5 {$-y>GwJfhpaOzvul*mD%d:(S%ЪN9ޖD}Ϗg!ށN]G 38'Vȴ--K=>sGb2WFzUXUqH[?r[LztĥȂA^MjǨQ?)M !u\SӃETw%[(q5|ug&,qBY] R(vUت!U{mxw$$ߊ^sҽnَkͅ{Eu/z>/Cչ/mOe7q@ﶀ\?!1joN9LB`=$]xb z((6߮Dbf4h<p?MF}{#P"8"c :XueD5RyJ<ԩ)Ej &=_J)QS"-ܵ,DyKo.N^K]vtki}ggrjϷM֮U:SP}.\EbXƀp枚/7`b\}3#@fr -悩%ӗg%Qvw"Ap+a>LhXeF[˼{i($S [8aڕ%?@K0J*q-RP?iA^઻rw8;{Pѩ2{}/+,NAND(ޞ.6E|%z쇸':>O<{1=E;()soHV'NE"^:*!4B.쥩27 Nm  ;A}d~mΓd3FaNL6|HW%CMZژ(`pDέv^&@H1)P]%sLB^\d\}#,FC=WY l9nm7>#귰C!l!t&p UNu( R>3]m 4\ܡUofr46}D:4<yH0FTjz/?Tw+!%68'%1#L3Kef7v'S~îGY^D()gLKs>9M XCɇ(Cc֢Ys&`V.!VD$]FyGN*uޤQ7d̫l{̍N}TQ*网Mi;.DL?Gz*D?[ْYa3-~7Zl-;& li?L~"L'Wӝ׌ASd HjB5=]ػ ˸7v}-9l[{bC nsV(k햙:W }60Jmn*nhZs7kWeo>,V\JUIsbk |GHʿ&U| szy5+XD4 {U`;3E\ tYbdKr%~Z?M\Y|m| cxx1ޝ2?O5'\8Vì*+-AvN/q#~<8=;<96KWə_5O1c=M/uY h4K4:nXg=?bV$!.O-.K&ԇ\_=tSBZ=M SqI;5kDk 7X9\8wEU qg7 'v@o"~C`[[l8C.ă߀4qqeʈ~~=0*u)g eӶs'p] GB)mܧ o~,/S,"vߊK}Ć\폆$A DF uZAEc+ Wj dM I]LJfR MQ QaxG(gfCHB:t~[e~G6xtËt9x8j$>Z0[8zG=L<0ZNxAw9)ʨҮjb r@UaQWܶnHU?9::xPpx 4P3BcsMqUh/< ApŸ|JՇDdZqMU" 3O}?@NJ2O2ox4bX,UPʇʕ%.&+zcsW)S)hzG%(A%P(:ahCJaGba̽RY ?*|fYĬ҄㫓qVIH.u' VấKpHtdEBP-X\v7k7_j-83(fA1OAS~8?,moۃ3 RFえJp T"(36&#,l ae 3= 9Q<h3&SO/"`a@HPK⯭]/*=d}eA{X%ۑ{yʴ#H(ɓen  /{)0љO[pQ+93ZCtHOeCsX=/!*3=l ;gz̋ԇ`Yݦ)' o\ކK6++}sӛwcBinoDzV4KoӎlZ]vv̩fJS ic" `/?(8RÏD9bOwRxUJ7>#/944x×uؒ'MNAIM,  5pzxEzԍ~CIF,R&XT$~WY~#0R`һ UBj-ܯ];B0aԝ+9DM=a;ñԦ fPꁧ9X<&~k{Ď[TAZ0i/-|ۮ}mGQJ'QQݓ KrXKaR7 y#lD*g1$YzLwAˬeybCc'O)gb {|7L3S xijR[oӼ)"2|̹;ZkPqbMJ@rh\LS5 xxoO d6C *޲P>HB07 UQ7W͜^W*;+a4*֫kD|p-]ප 'N0 v҈0_Z9 sk b}ι*c0@S%$cux\-I aLnP d0 u9J,[ȯ, "]DR2ɠMDI&$`H.TF=^TREi`,qy*w>c %+*3Mia2~ň\h reg|1/J)vCms F*k@W3 G#SEJ Y^DlYa{U#D$,̪fIȂ莤DYA&5dEӑ9Pqk`5"''PCL%CCbVs䱍14R]Npzh&+jRX:V/֢Y_6{2šR 34g,9 ^һdSs%&CyXu鹕 U.52eW9Fuԋnx-(ƥС6׹b[o3<7!+j!l#M ;Y=xVQC6`I~4%/H(˞3jv b&w$K])G˫ď3|BG]7m6d} ,QR{ gR tetNV]Rz\$ gͫtO#l؉.$ȱ`T؞Tړ!1<^:x.>|LN9G}7rZGV<Jc]aȭM(d.itqְs!Gw~2LE;`kNzńqf\ob m˺ kKm?0ѳ78 Y kINFJ\Ld@AK>MFcuDE]KY>z2VB HkT˃Qr)2}GҀ;6RK) y%EsT+i*YQM+ͺ ٖ1[Cا״&a'yJ\@`YW\2M5gsR4S Eώ L9]5TƐ9zP}oyg@BT!vp@0D )%>ǣ)OY?LCxtq9oC?mlG̃?]5-[<1FZ>e{Y GxFmnH>s:DllIȦÚKJڌ[--G"Ep-mv> SP?i: a!#fDF bdZ#\WW>:QY n\F޾EfRJs@]}UTrmºml+j]S9gbF#ȟ*9ӥ`x&A%5 M fY!;i{]:r]:lBKUyb(;sHZ! %ctQcd+-1Ь_vh9*3ݒ@jwC[Aaݣipk"hϻx-ŒD]o`K_Ddf(_!'f%u]q>]g 6NV^?(vPpqLqV[?dy}<:{9kKUjwV {77N>P 2 v"3VEugG΢Hq2BĻsz^+]lQteg6F@J Jut`̞y9q}K~gzfXlWVxSfĨ+p|QEs>1#tQ˃Э1qܣtYGeΦ1"s%趚lS9R*i PUVa ~)QңM/=:]\` RHOTɢR5*V$5C '-#z>o L̞E3XbM!t_=&a8 U`#9})B:7(x6`A@a&bqL[WrLTu{⢩\oz4-*F `}Pi(W$p&+vp?js_1 DS/R a 2@"h) =c/{)αud#MunUBw[ CY=(~s@;B"5GI&-E‘;@05M#wcܿ?I+Lc)eUa2(["Nyt5O*ƮņK$ŀiпsy\z1FNt EB\&m甋s[\h$hC\W4x4/)7bs1R'zwO3qNt؞&M@92jxYk,{9uQRH(~M_: ɈoNyA#byGJ vg]X҇?S_npP6&aCQ'k5js&6lO"@F0p aXV d? ! Y ^$c.b'/ۘ$}{rR6b0 0!b}Z=[E|L s䢄R"v1xzwOfw{G !r fUJ1J @5)D)07+Ϙ_k8,f009_a*loOA-3&>xEЄh3*;@QllߜV3Jp?S YN-mmNhG#B9&Tgwスz`>y'8{'g)j1|ޟM~pӃ`J\"0oɧ~6O{`qwG?=HIHOO`{BE|C j@M~xtM~;=;fQSNóCёh}&~B*P퀈2;N?:lH?\04cd};shT ca _xg? +\NoyU ǃ} >'2: >Gi GO?N) m`ӓIA7D)Ҿ'c$cZN@'HXE]'0(L88i|Tt(W$$3N1O*gF%n c`v_ć|`.oW_=]6W77~6{5J2x6\֒~ g@T(l:2X"j\\@8]\}ߧ!Uaq*9xj"M V4x< %Vi;Vc>t)P,ʩ#+WC=g|do9H{+^0ƒkGVD$9,Dy".yOLm_xY͍ܿ*zi.`[De8^ v)666 6 6 VrS-˃!5Aj)+l-/\ذV p p˸|Z 6!6"#:ءKlMOlQ,)rmjWYl[̺/#_sgk/[jG{ajW՟<!ߔaEPG<Mw?C2_>KC-6m\RS`:`<$PYB]4. sEf^oY)dG{"}~v=YQL:x VóM)j8?"ٓOH5 j<:^Eej`|U>_ݎlƉwo7fzkO~[ЊS.ǟ ;Ȏl٨l?؇+lq4å5@BiNsfRɦk@;]e?ԭd:b$CY'5!dV#ŭ`uq%$:N:Eb[%RTJ7s}7ô"bpa&̪ txLIUf;2l=eR^tұ"Ot vl?|ģ<r^ __JX#͘Ry?f^ ҲXv ˮ)^'2+-ѷ'DXoo4ABwq]w+e3Բ?KM?>qK" 3e2k.ߣEoLMmLBH߬cT4}x7;Դ,P.`:jG9w0QH@, w#?`<Xq[mP]W<8%h㐪xy[[)b^ Nn[@ʂZAWM/iB46ؠ`&=d/f ezQL/SG'e6D=>~$`HsֿI{ Lc&<9l ҿ)&"0QăVV;4m+fP qWbWi>q^C-׫daK[ZvAl‹7ʎOEaG4 {ƞ!(.Fjյ|QWu4bw[Ռfl~X W- @U DWd/[~^^bPYe]snefJRW!p_rh ̟4Y;izŸ~=B;Ԡ,.)w_)GKZ{ݵ#ъ ;^2‡h>{|GK֥ kfdx:˄>Ꮖ:3ʖl3v&OB@٣6hp-m$)ӛp$f;4_1 LzNn@YNoElsssssssss4&r3#;vGZgGّ|v$gGّ|v$gGI9=E@_>-;OO,:;Vek@DくPn̒YL50ٗm=ܦje/y߭ A$eF"YrْaT9`y=4}#YH%M [mFyɕ'^\W/gכޟ;?yޖr7~ޖ#Bvh,Y[$ oGW@,].7^mȕU4ˆ Oȝ;d8E6Ʉ&}@*4\a̰t 82 >#Q6y?1Ts<&Xl#Jg-ț@kW]BnWoW^םo.c HJBy?ǝg2sJħ %Op<9iHcF֩V^ff=q D~$&B|#ƴJ'D3v + Lr(yvrzYTsH(DDu(ܶǟDcK^bB| +:y b Կ)dv*دG1g⭯`%pbXjpJ{Ajכo^Ӏ[Z/=lS]?^ 8gZ{t1IT#it\wV`&䪆M4U9E0swLS쨽p^GDz[ӿ{* &ieshԄ"FZ9V`ڷTrkMżQ#JF)0 U  #LGìrNH)定Px UWϓX7P[7y_K2Fٓ*U-~݀J%豐5krdJVUގC)c9H#45ﰭ&"V`A&GAĿJUDU~yCJzBO 3"{لQx_/9^]gܼ32xXs}U<_ r8&:mGj*J6&PNLpg啸z+ʬBm YZ#@ʷʝL0;R\DK0svN<7/%df-L(eUCĮ|nBh!4h7My6NZb!QfmFWW`L]UrYZ^jWM,VCn2ȵl]嘫Ggʴw(Kg@ZOk)j9+t t@M[(Dmfl=jr90:-KVyC辋}VqFڦy}*Z"*؅ O0 8ePjMGjiGl);j |4 &" ;%὘^qpE\WQe}t=m+8BrW&;l"vS]ׇͨ#l;ڄmzb!56i][|Lf4);=Z񺽮򤤟a- jGn+`۟=eQ̲.쮫?gtIҞ1HJ4摤ᩏf[x4S0z@edkBv =6,(q4Y fhz;*GD+K65D{vz"V^uh)=R!ݎ&wTNz1-ڟF>+o^cIx!a9mk865_[W_+my=C))Njjˆ^gk 14ҁ˒DߍVo1Vq[]zy:b(/; $R8E`{\+W QQ%F#TSVgR9zt*"yxTF#N2`k 6{k뛥mI¡tKi8C{ vjcnѢMHE%Bfq)s3je Ju==e;Mc!3P928Kj "}3,>N#ʜO-lWw>-]iv[{uq3dI`SVYܮ gX3O۬/qi<~4?썏pJ`R /u'`7<`\]|U1 !0)&Lm~i\Un[:YvCWSo7Wo7 > oN4j_}+#׎oS3;f5no:); FETo NzCX ip"?B `Ȱ`_ #bn)aoii KߙZIܷqM 1vwiE+]j_.u&Z&okqmYNyg!xIi<::cxG96Q\ypƖcûmUsG ߾JzߋXϺ{O^E9dl#s$y=胰0A@?=, ӌ8H{'lNd:>ZC^8a[szgQR)%Tp;K/(sfq(M# GW@!bqY73 Of'GݲWzLmYg0H$uL.zCc"庉[~K?^]6L $3:EvmN3FG=f/)Fc$>vn7=%NuMVTӭsG軞غ}Ik}{zw .M(d_ۣYjA}ũ }F("١<ߒa]?޻Q0r:0 nŠV<,-h85bZ+1YYCߘ bQM] +|Ǣt}޵ Ztmx+ąC(Mz G@vErd9!c.h Wu,vmްRȏxɆ^a0XX7NR/4,B1ygMox ~S~-,WqdPo vGE*m_^  1% d"P ș?,E2P%XА9-Z|objֲ#Pр:XulmՌշ"yOVO<:BLV᱋ʆUH+Ki>:I|)o,8xbwpʪCK?{|:_xDq8ٗ=TN_)0bqBm{ğ/R&ϙENqsSV4$'u.`\(V6߿֑}q֏CJԊS]A柅`FB$ #|xI_+CXy\M,lS9!cok)m?uJ[dQ]O\׭iN59 %.v z?eZ D{lZV*Wj8&~/O =do2 2`ʱȺiԻZ7t"{d|Q&|1v 53/\h^Pkۯdl`N^aj4 Etoq7LVU6Q@l{5;G)cc8Q.n>oՖB: P[^8Vߤ YPJ$7]k{8rB3Vbd/E&d@.pC/c:7~7񵇳iYLjj_DeYFx!# nAu`7ZοiRNt^n;]ǫgg_lQ`VрaizEWэ(Kϼ,LVI HXٴfl 5e FOK2 mdN"8,TifybПDXVM\څ9G֝uJW<{/i (pD5>Ώ=RKoYunҒCN?PQ϶!xDG_0Ѯ>p&,{szDܗ,&(&K[>ǟlw+][N&>,8>j4f˶)^P\q'5UխSds,p+c0FG[͏q: mICiI1 ѵ&N7E)ݢ0mE|j>HAv5o}MCPp9oeFlYlcI+ёZ"mddVhkKNnK&Y.tWR4PtLmG;WZ9_+޿ewG%1bh:Zzɇ?XdM)t.@/ ~}׼E_ (Hh?j;&3|6;bvdbuX ɟ7V^oR1}fڿ ܓZf6\GJ=w$X(]zJntFvܹk**0s‚q$jGc )0Q{b @}]mUJ*c_ْY_؋ X`fVya.SiLzrmpxubE:vU~@|^%" z+wv ݑ\t׽\8Wf:w3 Q?wLCY o@(cwDpn.;Q Ș00լ4WPȝ:z?@d(@h} 5//Q9U^KQw~G_}⓫KA  Re{ xhxvCeۇW%u>__USwt~#y$uOz_O'@B.//]OJZ۝><ٖGF0JE~\^vhkH&ʁ|tzɉW#I(YmtOaDZJPCpXw=$~_3q9|FI/94{ _\a/O>uۀW Qz|Bg.wHioxnzNJ_@ϯG HVBP*g]J` *0VG|gl ~ Ns =2g3igےb8?C@$.>˦$7ۭT;?Kh O~@wĿrE :˜펦M0v z`~pnXRG j_* cY$2*sU&1bA_D;DСP^D TDÓ%TU0h*6FXL >@оYVIvSt Og*O:8@`ȩ[ru`px~z?!8>l#`_/? N!3>xvp+磎GNӰ]9>;ϩN@0.oᩐE{oBh{νϽ_3ȞW^H/er!\zyYm0ul6gP6{=< $cOСt_WHG$ p!-2uT"k^uJ"t׋ngǦyxgB>Ad0 0b\6|[-* I|NI6K<ڒ6*s~=ɠiaŒNZLtSdzgn<Ά$^Li(6\gv OH$r@$dNx)c:Nj2,Ԑв6&0 2A63(MQh{Iɶ[m{B*[jY+W o7{m2D& }YI[VՐֿ)ڞoSc{Jw+gI7oڭE]~7 h{r?_,v;ru@4$'|u#$h Ak({DekU@Թ3S0+$Dhy5~ǚ SEJs~l@U3;c_QoUCAֿEmRA&0XDj$8Jj JQ&pl_oÈ6MG-r-/f-^S{vn\h$ ,UO,P leBueEg2V9 R_+1P RRH5TP,c]#}wel-V עmk"]{ Me('Fim `T6GTl\E~a`* ͘N-͹+jKCWV%DB)L(;@h`G~3.mD|Rs A_)7n'܁\]GdDOH<DXvႏI#s6 N@ W'ba)Y:ylQL M_X,!MO (PJ‘..N@^pղva'ݹ:,m'z*X2}Ia5\;PB< ‚&H# fOKaPxDjy?2 Ho `@9qpilzZs5v^iY:S(JXHyT * 30j  Rx1HZBnWRW}'1cE OD;\*db!̔rG+Z9̣/UK-a/Grj8s<'Z*AR` `oհ(6[ 0p (2$\qyدj}@Os?_7r|bQc:lLFx j8ZMh೔1r5#WҠAtl ]U>\ſ4]y)pHVc#ȇ~t{U M}RUhrx)֍;f8P9v4%*Oհ8=;SoWm#TV8Sn qc,zjē֩MW87hPGKij: f@gZ:St=3<ӓ(2oqS­V](yË!<*>T:RErhfgD9 C1*TL}!B ˊxeʈX 0#b930;5 R,MxLsUr(}2UqgE2d_ XH@ۋl"؏(# @iD"#%kd @7}6>wÛ~%{K˟p|p.C\w*)KR{;xS:Kl/+'ac9uTQID@pE%躨riMT7}I{`iء '9˹3#*CWmЄ "EͼPD~̚ dq.}Z0pbEE.ݤr@aҟn[ )`X!E֋0KBzAKXׄ vduYh*8ZWINA&NԤm ?IjTY n\ldKHI^t.{3n.en8_h'9uڞI$$ yo*w'V ӷCO(>7mMT%AZZw%L9LG:mAXfzCDUea*^x.M{LfPDZJǞnT@'CG;^cxzp~%:" QiSlQz"' ‰8eY\lz)EsMf>kF0]*)vҝB[ Ẓi>ub$,pq d>fl6Plz‚BProSp5|%z͚N<0U.Qƒ14Rً$Z_j Uvj07\8+϶*zyу6]HN28x{*r\A%[]\k!\DAFLu(=Va0#}%f|؊(0 ̉7A #3 (G:+uSh4R Fi(VŨ;Okpl#8E.: AX 8!BPΉAfΣU>h͹j)(REW(8M@\ ٤CvK]lS9sjdҍovŁ/pEve]?P_3r6Sc4;RjC;ŚU!N˭gMPxy2KlW%Q{ع }SgcusuT8*o+@!vXy|O{p;;$}#]1n^ɤ86tqR&mduzHz) kgi4Kvlp;ģu;;_ly8vҝ)1hL3MafR4qR*`kk0ԼBsʶ;wd902-K:gp boY2Ǫ(;m o`35p1Y2kV#~v_Gćiey=~% o޺q2*bBb Ԕgv Ma Mƚґ^űz{LCSx+AcTn;s"tv<퐟rԒlݡ Lb̖D0M:"aH4灮^GpU2/<|[mL(zGi : < 4ƶ6(ɺ_ӚtA,(3w\ v8";:H#9dI?5-B4ހAr+3Okj(XvRL/Ώ*xh>L '#(y&BdH^w((Mb%(r7;0ÏڪXEPpu q$YhLtSO.?Q (R\Y>I7c'{9P>(IP9 XПWi^>qz w {M02G],מt ;m.U`HnT l,F°S&=h@}&PuL чR􌙳.8ch%?9GAܸWdyw]8^ a:ne<|vA">;kiD"Gq꽱&$-1.ygxpWNcQթA)Lwdʦq(YLьO~fz֡b$]|%jz"`x0B{Y|Pc@ -QY\^1#ţ0G#$֫OX-]#Ib;IU N!1u>w;N"5$1ZXY]qP$pܣpmk؇3(92d2@" Ytm) K ze*b;O~VgM17<>n|yPy1@sn=WsڧyڧyG7OT'{$<>Ѯuɧ>cOO4?cTrC7*gdnPћ!#p۱G>Ě;h3ufZdj* ; SP٣7Y GҔ[򕸾>4%V|%..Kf%ҕ>4K]%.pU"/YMM! R4;a+譩ws7U8dn'NcNCZ]oXWk{#:mZכلN9l][NQy^memtv<&mCO[K" brx]̥ MT5['~EvER*b&ns8L3#W|nb YJS%^PrΒmi%B0xU~ItDK"HBdDr 0(MP qT qg&Mͺ&[R_F>a2,HkQ;q`-0,^jӡyhiUrw5Ta?hWR}b4eF G<`_+:ӱ5*)jh~no`#@F8ג0Q k}Yj7jAu "(ܹ(c%=ux[t!~]WD>Q?SC]N7`1$NT}]@ݘG7{V׺AG5Ug~uݫe6uvsz qkw%CH^f75CPn\<^6^Lx ̉9pC!τA=v27PC]o[ [jL\m2lC1bLrt}{;~r(fH1Tp6 +<9jI>!j2a[7۽8v.vy&&ulnY 2*٥TO>!g8ԓ0(\ʶc+PJm)ڭ@≯c7 fa6FyEhj&o܂ԉO`xA;;`x(܌)]X^} CΟ{\2z;S̔U"8-t7sv: "s]4ś(u@tCv^eN]q.B"1s!@k]GPiYޅF<| I Φ2,pq)C]kh:dN /d~g0ѷq7.Qo% V0]"M 0!Sv "= g+ Q!Tl5pK4H+drTڗPpek aG8ӌBoq,m`2'F8Z) WE]/\"a:[dR|(Np"PwdOݤxo a 6A"#@ zuܣ$%|zP1Fjp,hik|Q"P9Wxi0ajmLfJ~h&Ө42lEEc J ˏ5kh(ZVUzC+L> #Voo yJ{wA9$ KŧGMTSeHW;39Jl+|aIF`5K"Y7Ry"10TDSVجT)KG;Sْx`%6#&Hk| AXYPo7 Pr#eFϛckTEc8it?wn*Z5X6{ʰaq+jX5"b2:&ՉwHj6=XY4FUW)u#^v֜Q-E֔­pʹ7iKϳDQg;;ն/ [6 4YW.%l.vCߺ%L1 \L ,}2Y^ސ{6 =k9F ֞3={y9_tCGG66+Ay{Ù=ؔݢ|9 eB4o |sDz*9< iJa㨼<|Jt-zy㮈ς&l  rP4'%}vS>$W{B\ uZ6P焧 c,ɲE Fwn1.1+4n3|1%)t ~iV EB66L֒z?7 `U'x_(pT4Rj:GFx\[\itעT6Nvڕ;Zi|i.}dڸWm̨aI*.]mqRS\,4 &K:&j=vx\j?_)3k7zo yzfDΘY;G6щ%: di(g pPd̖n*6VJC*ֆ)@fW7!+ 9'\3r]0=6T9e(W2պJNR{~cfU65Ogy6eDx :'ots30%f̴^;UDí˔PIdD׊cδ7W}ڈ~j[]<2W2k MZf/Rȡ#|<Ǭ ̉ex<t,u2q:˰XZ3FO^PeͲ=g9C2%r|Ig]~ YTTΖbjI ҾgHWBڇX jG|9_uBFsݵ;3,%os:K b:.hD"IF ) 2%tmDQFsMְZ- Howw,Kg_{GԮ$)ڪuqWts=wsb Z#P9"GPm-ۑk`8C]+P@2cla O[hk`55Ԇ%]7Mv.˺-(VW@CF(?SDqqy~q^u.emgW (1 *0z) @?~2w-=(* 4=~`Bl n.;j5;F$5*jxCahbS 21ȿ@_uΎzgٯU/_zdЄH'WnZ;ۇe:HK|:b׽ΧIW)FH:v/;N10]\_^ޕZ۝><ٖGF0JE~\^vhkH#݌^ӃwNN=hIBG>w.,8F>jsxrM d"m#9h >~eoeΎ/$(E:]a'H%xΥ/%iށ_d ;Tz#ZG!H>\9i3JʧH|\ϡKw s|y~*`e=K:sw?2YIs <7T='A׈#Z~c!NH.IrNKitS# mu T׌Oۆ8SNǁ-϶qL!%E:^HeSV[^ }o4l8 0K,oz/u1ۅ%sP| Y[nmYW3/1ѡ\59U w߾zƒM,\&b"G^ 4/8G @l-C*5EF,jx1 G`39 :0!HG $5A@4Fv$rq)3NJJ*v$t(F1h0A }/4r`2o5mF;b-3Ii(W2\ Nՠ&C:'4ON jmrE9=tElv+Iu3I˫CXatoPξ 1ܽ|?}Ç;B^m ȂU#p|IAxǔM0 G{3X(z@"Anڙ+#.k-1NNJ]ojRhև s8sݫW~;k+=1^?s mh+_s#SM1veeRvbQ"?d2䫖?VShvCyoNG#jd!D0Wus>}CsHCر1@ʎJ.gX4Bn7;52ņI`ƒz'KRYl{(1NdEܜ!@QL㉊Ǧ32l!C2h哓2AJ6*NYEpLh?AV\]]>]_u˸}n0pFu0 وVP|6s߶Kp# xTG; N_|T\X׭PeݺΣ^_b4{ 袽#vn5[zuML=j3L#ljSHm N}ӠŸ7-xՠŸe.*ehٽ6ܦ?c=9TvӲ~G~߄`Z`ޣ?#a~⳷ )m:Zo)oAa CHk;PWF\P^ԬwΉ ge,ι2++(fc<wᥗew񰟃}Fw?]z;`<sN/p`v\zjٷ_ IjwF~ &z>XE c,`M XWX[},?^ ]p6:=2} ڑ A6C5 r/V)zbӞvo-#֎Ԇ!;{Ǚ9bw7{fpnj71Zci=^UQd擒Rz]ύK߄= [^#5~g0R$ysYw Jq&ld2Ա6"{@热bs7?]ȼ7'\t39)>b2i <]&,`_e|ڂtvN_zg+56A|!%-h.{ev_t |ܻ_.B^D۵fY ɱB_+].bu^D*Bk<5!YA.={sT­Ӑ&ui}f/XOڐ=~lX&ŞL J>Vm|BQ" Qʑ:*/knd-4x4SGS-ݩQ[~wP7.iޙ֘lnž[֫ޫo0iQgsag,sǻ~ 0+]xl5Dx7Ka߅_o=?bRKh˶pJ'o#6j#6LER2 XC2֐.؅Tr+N Y*hN ' S迢Z;sHM(Ww5PZ-q-^H0w$,/Z䫞 6?j-DAD `*-dGB$Dh> U(9 J9dˬw׷ ~H5+%: h҄?* <6 jtMzA@U=] }G\$'fS( ayEz #B7.:Z</ma3he.u"4Rq1Rk@ ;.xHHj*j?CEd4hPcPw!fO9 EpdAj,.)fVSUX3"p, W H/$)G:8>=UANۭEqDWbnWf'7$SٹJ%lвO*9*!&"8sXt/.࿏V / ʇPKF)WQ{NI2~}f^6V#TMAZΕB 90Cn 92ʐ3C 94ҐSCn 96ژsMrt!gsxH! A i7xzYrc(YJ7#4Z:w )B*T~iyRH :Qc܄% %璄[gW~{xu~9}Ӓp<]$b 6y+筻^罼%)Aj&4O (3QxJs)jp ~ v0V+/Cz!SLF^!U${ƫ7° qd^vXU!NX'LB$*4dEAU 1,%٘Wm^*ăD ,vNnzK+%yC2 9KKeLE 'sLgz}d&$Y.򑨣|2 )TiRސRt,YOp3n~#I",ĐnNMzHq_@ VCh ]q"qkGj3{U=+ ϋn9i@q"Y;0 N\ ƌCDEfȡR$ϠW+xn@/quI0s-"n|!,/~qߴ 4P8rqXK[X-^qE-kg,X+_@%_\ HqG~rP\ ({%X,%b,]ŷY|[o,,G> ve=kv~7PJX;#iDlCQiw_G @!.d%_:'xu94Yf85T^I6dO1U|M"aIɄ^6_`5=KZ2i7"/WzE\mTF4 61#y))v8c34]!35=cH&^aӄƟ" IMK+Jucb|ZqsFRꑇP?ouHV XPVĻb0b"$Sqܚ8hiL\D4Q>cbj6p‰;En]@ipA 7Q/E'vDF16.ڗ0)dl744ȄN öY!Pˢ>ZuoA^h//:ɠϺ9T{@d~'N)r -p -Mqэv*&HGn+e>eq~ѽ\_Pkn݅]y:I9>1ʯ#=Q H!Xz^MnvzQkU-T|wC-}JMXMq}o~{; l{/RX^o/P{[iBR F=V*5Յ\\au-\hHvno0{ -O:/Nٞмi/2o{/M+)Nf%Qo=b[t+6:wiMBp0z'PUW0=Me utM8 $҅0( X{OSA83eGEG#q`[$+N$^#r Ed>z4 DzSc1(m`fKAZ)Q% Sw?/yL9}>|(4o9soP2-} ti X\v7joH5=3K>~6of Fuĕx;Vo {ewRȜ?pW rx1},-Kϟֈ+t4d-)X-p]NZ[=ҩiJϕ! q@rPY#)+]`1-%Mכ| 9%Tْsf&K.\9̊);~oysmu ˅jї ^3C L* 'xBs!rB™9mEf^W% ϥtOZ[܄\vFksHaݕnE6 ,"m)?9!r|>xO:ⵘj\,+\ŧp`AM=92fq헙'sIg1fHg_|tەO4oy?GYLрGˋѯn+xf6؟QNS=oHρA[]5qk*xH(O @%Pu;hAeEH˞1y8vHKcy6Jc3(H.".TR'>G3!<|?QIujl1+aR$99zLăߴcqîR-תZH+l{]3R%DG/[vZbF`3!„Ƒj%!/3SU#(oOC^K;~}N<|b8m+(ñ"3PsH ڮ i:+Ahx46|[H\OcҨc.˝#ذ>%, 66\kïc০wTvӴ $9{J?ߺ&<^C;[%>`xeBa4mTO wd4 nCiqqx{:*bٮnoGӫZSj6?T32[D+C[yVeQUd́_HޟVJ&~uk`A3"?ŊЀğʟ,7YO|3>o|y@>[&4U of@`bdg?4_1 pнD6~LK/w.Igv>jq<ۦqCުO\=\PAgBLE6ӔjI. c W <޸5QW F*B6M‘b@8P ԯvɧ_r%wKO! 0|bWa +#_A Ϸ,9e{dnlB5 \h,Y܋$tLۅJҼied|E*SAg%aF֕2qg42d7-L7eHAԟ K3tm?$gR'vg;'lOM*[&#+H=["#.g X\nPȯЬ{CIW'zhy%0M izϷT%AU zAϾAGl1<3UڄUU}X䐮$VRo$r 3 ~߃l !X+Pwia}SIyD1~VU l&j91bxúWIxCvh^ K&*╒C 0v3-H)$fB  1 UIN0JKڝR#E,nCI O w[ĄWڴN6(!ޮB9(>DHN9oajףƶ$`k7A&{Ƅ@==R19re|̲r~nh# 8 }lX^./Q-V6  ߾b{,_!x`{j$83@9=gFeDχR`rnxkv_k%! s)8]DΟJᙼKyԋ74?f7zE-se1`?բK ;/B911r\½0 r g\j'|,@S /;28ॊiH«1JUHا#YBhu}(%Zd3c3QCg!Ay鬏ִ1 jbKrb }&vT.SeiNr?lzB  {ߋ-5Ri[$B~[ {wDR-L<>l_FX1Z&zJEj3w"Ysro kd 4NBTy|MQi&g[nq j2w%V&`607Lv#6&*w`\ɺҔqvNUXN= j(Ht R)6SUTQjC+$T8%GYPx")w(1hŖP*^)RE=a+S" hE鄶`dqc A&4K7.u+1EQ/4(p`cyX4tXgdMxWmJMUz9!GRrj6ʟQ|B~v/gW6C~>rrCtMy/?<4?덜培w9A%PCӋsito94 a^ZN-z|nd~QUa}Z?`ⱖ:|b s,9x]H\wy'u5flXÅH'\ 6cQrv'!1Ik\r5umܡmӢY^e;,+ubBr|-I`|a}-_6xM~Mr^$")uz'6jCFo3ǝ\E 1K1I)HJ4nvcx$j {B 16.lEW˜u$Z{2+T9\I^8L)\Ϋ233Wwkvqd~#+ 38[)nq0(0y$EWNbHϒjLguV`:jYnOFB_ļeeX՘W-,/j'f:jlYm-⧒}~^-Vדlъ|mplvEOvuq,NdX+ @Q yE+UlNJ\YM q`&yl_%YN?'WrW|Q͕p\8tq8O~b'Y#XrTM/|+GOJk9@`1i3KsSG!͸X= q\Ҋi䔦IN3a[v Y(Cq*P~_ü' 6DχeD,2/ʤLq̟B|e+S1 󤭾044 C?;J%zaQ~&Ӧu]$I) x_G:m-jE)9tקl'X6x_xi2MSߪX %$ڍd=Z<.2_Q/pJ%U1&'2Pl3aApO/wLlnl~\Z82#p9N N "o"3 _ )gLg*UUz)9Ji#dժ3|u._P՜v/3:w^h#s%ʜFK Y)&\_K%_$N,(wdX5*FﭙX[YL3"X5c}_Qr]fo_LC>N+B\g~cC@Af9 r>EfNemJNt,KUr.W-_[ Ic~N搾>B_O!Lc{߶8m!ų޷ؖx_]>eĶ}4~%Tlb^Vn˛YG,J_X_>k-z.z_WOLW!.)䷫}t{NמNk␅pch-<*?`<}pKb?Tl0W {/7* pk5r#p፱Doj{׳"dy[y~i;ky@Ci}l3D$]"ȑ wy4; DI(NL7],^SDZ~?2]` ;'7Ca'Q+KEyp1%勉yۛ V E%FXG&u+Dkrs{/H+'䵤#֒:?7˄%u:8˄r=]yW,[\ X#YT Z"J&~88Tl7eOx{KƘKrM șգ?㼘ddI;5ip{IZ;{]\콎=`GkӋ=듣σKԶ͖o?*kUT >wn)~CT*zs~68ONmPVm 1%1EspGUytb94ZA+UZYZvW-h{aA+V h]DXvLauwQ#e^y*p~>(Պ`4ݹBOun;wC"7"ZzP)>'f bUU,KFV"YےeYj$k/,Y{:9 {gY8J_kaDy{SfwC\eii_Ӌe~š9դ?mq!ԽLo) 6 we|xqh[61.}ȇɂU~\jujv{z9ڻ:yXe7E?#H, +w3%E:s٨ !ZWPˮ@F LR\iKh:1MKi:1M,Ġ굳^'Ptb#]ē}Ki<9QƓcyKi<9'F0֗TBCԽ38na'.Z%L%rUF;xI(+ J(_ &2Qw3& ys4x&zs4p& |s4h^eR zYuClqL.&9WU7H9Vhrp[uɁCn=M v+i$PWYQ<9W<4N"' z"I[+ t>oKg̑0H> \3NҌMP't箅HBd8$ @OD|[Ք uF2^A#qF2#TГySA#Bi<XV3zdܛ*ɎYfoh&{ȹ y2Jh.niꋷD[B l%z>}) 6N>)V""JPTj9eZA{(<V 4O{my \*B>Tc6[Rhoꔞ坾_k}xd ۟BS#mg $cЇj0=JY&w!<4+1X#Y9 zL\1k.#Leb[V w xǁ[kVYh1N@yߜ8{r(%GsMn( ؛Ƿ C14kC3,?6Ⱦd(DlM RKܕ'|Ue:SE;D 4&J%w$tNmk y=v]5@l|Ԑ\pBD- d!qnOIS.mj!ZP-ZjNAenRM kiY3rc@lʒ.(KUVd&bcU "aۂDW}w ⦅y J#+m>/̸*&Q"F Y /SF{tdXzz_AΤԋ깹Wc=iLwaEG:LX@k<e[=;VoJډiTBw2g`k9 ;3rDFIίv/:[R1H/Á >bz XrB!3bQ!BNZ{AM YXhMʟvnvK-S} MzJ+W,.8nzn7F&/VPiap,f`cL OUoтgo2 Ȫg؀B~/7@~ۖwooV@_R*+ro~Eqd%{yDYC]ʋ/fI(y&q|f033A#yeyF}J:!FNywoN@p@ySݛ^zջ/#LȂuyD("pPd)- }*݋ ކ~{eF跓o<NjIۊA''Uoc}_@i_|Ye^ /޾} %}Y?y ^z5ķ8ңWcG?:R}Cxpgv,nlD{Uݫw(m܎oHhHW/_GCڏ}b#{um ~~}zը2c/|z Ee+t)Fh*] bL($`_~@ō-ɗ _RȬ {<V#iU5+iKx8L'T p1մC'((R˃{5&IUSqXoCnEw7X4R6^βmB,e۬f 7V2j~!ՌFT5ec! t61k&|rRi$OSx9x<ټC3wKK5wN-N7Tzdv#p [e5!2jُ R IȘ J#dQBVEaY"ix8R>ISmc2ٞH0e/Ջ25`&1I&-&5fϲF:g/kG5wތ!Yܺ<9^nf:r4%cL0ROoޖ#F vd6ԫ^wo^^J˾{Ӑ%eeZ/pvܤeߞdgBq\6?D)):ٜ>4 F h iM਍N#duBGmQ!2AY* "=*Cd.nVbgsf+塧fp{{V5yY>h^%8y@}qI*LmrΠ^F!P(bJe%˹RM S6T#7 x~ɛ c8(꯵AHYc$lCʾ>~u¼V_X/SjoyzNJÐTI.Tqӆ:mdƾȥ*QdO5Va!PRy-k|Ïo*U!#! Ai,JȪ$ͦi IMcҌ~j1_08++n]q$QĔ#WY<݋go _idA9y'KBiNݜӜI ,6$!k%&%dVѶdN N&-Xɂn 9|8F#~ݫRn̪ C2W%a*9 =bqcƊÿ~q/n!l_ÿ=R$ßZ8^K?奸GW;*hoJy(9LX3:OkR, Hn-Z׻Z79c^@gl,~ `g3a)T=N[XzyؠO0ȁ9ް}>z`w9~|:"aJnD,Nxƚe&deO a ]ACs4T7 PQm XE}Vlw!# 7Mxj&zKr<ҐIc_P<uN')zcN`HWWv .u=뜶N\ ް1ABo14( D͛;]'ޔ  IKבdΝˤU0td#4m4җ zA݅vY63, rҬ=?& )lfl#saT0vZD,cJ԰ PHuh%~~rgNjBYGA0:O~{ zE L˟{ e|Om|ҿBt;4Oπ=\/=xĶHu]wNwrq))9mw4?CCg@Rwy}uyk|:}A#N6{߱c:yuްuuk7;0Wc0ͫS P/Zί?H Nʇ_vgh8'A( e ,ygĆ@v_<ǁz"A9^[`iݢ[>SFE_`6?7?"ۧfw^{}gr~ѣkP {`Pۧ6 o- 6(F$u;]P_C/G p^BP6 t۬M#PBih_'>7]h%L먭ݞS{u N2h 58Zf52.}1Ń>{7Di >_4 :!{ 0McY8#,;ļ1*]_0䲃T&,(fkM0=%c H9y]b1"o,m !܆ G3̣NҐ .]ޣ4dci`Y %U4X`Ra]w[̽YycDӐ QQ|kL\ć3T4=^o$I}|{/m'dh' Itѕv3s#< lڀȂUzij_{;>Jj-,pGc\Av,!(išx&̡e8Db f32c ΉuQ0z9‹l! x h6I0L i6MФ0 B;pr9؀; G3$'Â5Gy6b1 lS,nLQ(ICd;mA.hEOy7uRNOJgoRq%!ġ76n*6 '{LYu@lVlb#4bAWV3]6@Cڊ$OW?#vtl3$Z0%3FSg\äU0c;?rЧڭt37P !6EmW*dhtp3^3mC@)hB䬃 mB:hHyQ^&tg003! 0a73G_tk:`1z˗e[î*2BS:lgL%u<W-o<#SvSdz2KYgKŒ~1c4V[R(h+]k8 o ;ѠES Z$OWA Tt#fks /9;?bU3I[h'b64:˥A פ*m7QJ99Do68h!obFo@]ZǃULzЍMJ UQdW(;AZ fqe7'jOi5<hAAyv8T=K@)vk@i:Gjىl)"!zO aD+?T}[]]ut9bUh.ٟȁ1 ,E|X0| VN*7Ai1BO9sr)*jEO<+H0j [tyFRRQ"pYfO $VC#AHr?: D]']@Ķ^y4 Lx1~in=JNI"XRFHӭDaD{,2|)XBK9I4DwafxyBC2\%ցCD.b+{}<>y Wꊢ+PS}cg#r"Q("<.8d` PUNVw Ao#ZF gО.,'5pl"YƴƝFice;OF҇[J(D#>bKV 0m(w3{jVC6xZeY0:2>2=;|$nqL$ (;`EJzv%:y2&š")o5ac4dϥuFkF+EBn霸oJԝUDTjCH$HVHF*izNeУ`JDgal:eOa+[ɧ$a%p&6M&R=N6Iࢸ-$@|$.p+NzQNpe FJzd0ٵ)IǗ#SPP$eOȁ񎱐!R(Թ CwG%AiĹo-*`+YP;.K"Զ,bAvd;RxkRv.M'>6D6 m=0k2DDbUv E9R$ Bp˔7&yie(ɓOƎ'H+[٤%=kWIJY~8"=ZsE_ټ0;w:8B.in?s.IKJW?k4RNajyB#>Ӯ/T h26r%5Z JyfL;GZJ*z=fTѷ3oJG]bB mT:RO*^=Ugeϟ1)%Il9dݤ /7[=F q@ zj@J@dAu\t{,;iwfݸ3®5QZI@PRI=N6[GL5:HbdΫћ&fpܘWq ;>%Nd!nK3Gg2 Ư K;3x3՞i)J-dڜ sCߘ8Q2&OdL'|ӛ ; H|uzJaa fsfĹ6#}sda4`ɝHa>A *)x,(N"8GZ еp+23d]q)VALJǠюH ,'b`ݧ3zkHTFK\ *TEAX.4R@" `Zٸ?^eq\/H.Zu)5~N4V\ѸJu^R[ۜԗMf(3KZ}3H.x4 t !]ޝݴ ޶Fڡ5w LAU64fm'eEAI;བྷ@}3m_sȑkw 5DLŌ2\B.`J梡1 l2に>izR~{ N!!>8~[p[(VPgX؜;c2<,FχkMH9 ͅ\ެ.h ͉SIs" ϽJ\Luw9[eݡ DF<' pI#t]፣Y{n:: #(c:1f{,H<:M;gq}Dzt{{gd ibԙECm6ӅqWhⰩC5\tN=64&0tqXhSܛN9@ \8Q/rzՕP (k'lEC&"0u0>TH:*ktX,CYE$00 05pLȲM)M1d F?w21L1"H0={ aX"{oTS ~Z!ymvU"%HM +. !# @P0ɚ1md6Ua#dAΞ⁍D2 ͽǝ6Z60:1+lwI7l:A s6/b 7D3>9_ŖC/Iɖ?-rw9Yvib 66=A<6=lMk XۤG&iGاXx:|ƝQVA)n2e>,.1d3͘G'dw7gwQW;l pp3bY*B沼aBD6-8!s 2[$>rو#/2a'V4m|Kyse5뤊Oy}?'#Jx3O9qrO6殖 G~/?dlJUt2+ ՃoiW~/ngG}[ܖ9ߘfFնc1lI_:73}eD-0?P2t8̏{Cc^th7f#fbmUλux!sAk[G6mz\VQAmG64vC}UÃNc@n?Š!FK☏4{H~0 I۹VVN~Ƈـ~nPNFlv)`dp甁 wPNFdC6dGR^>`; ,f,WR˟M`:Η=#nuqR? 5n[<&iC)oKR9H̒󐕓04gpù?6r"r p/!-k 91b➀zԸB,CuPKQ (+t+'6ocu]yy>˝=MMm߳4'0btJo^!V4u|;{2۝/NoCx,NH/% Ǒ?AQ gRI)'JY` "RNxԉB?oXj:儹:h/e v~xߊE@~_ױQN?ϝ+؞<4W@W)sl.ΕQ_f`]Wˢ)˒9qW)vʆmSy<^޷HdޥۧR<˰I%sJ8Ke٨hp68oRb|sJ8Rb?lʾ~*%Ͱ+8Rbksu;J8u@̘=7DY7.bD o.nkcA"4 DH4:G;Yy1]M^@fnZ}Rmk26WmlKvn#z`1'#gq4(F x:~NC bM{ K yy=]}\ݫKvgjU>ԁ6n,c׋7 oe8~ l &v'/ ̀>D JQ D*K`gj4#M'b(/TWB z0UYD.ՄO.-oaGddg>x EWa(' yyP\bW!ay1])Pgp1Jn0J=p2zAJh/O RJlH Vҁqky zmz_;3qrNR^b+jg;;Q}0]Ges 5t&KAі $26]7e 3hy@0J%zK|QBf7̡80k5Zjdj'iaq U*S}2?@-S%cVP0z^Q _FcNj1^gcPVB==DK~O÷R!?O[ $mߤ[xڗvR 5݋XZW ZAU> 1zkHK #QS /5Qkhrw bf5ORƕKrTB}̴=R`mTiU4: [pgߞhM+LP~CD+d|ڼS蘿/89JQI\+m\rU45 '4'2ȵ4´*dk@ {j+\IKkoZYl;n083.(Uـ2o²AE  SEh՘# ;ѫ.Η˷v{cޙwH C>IO6'z"8x2>R!BA1O'=}P]͇/ _v` WC ,=_r0mWVsaEu5*Yݮ= _zN~7@o V=pMfI1)ez,5I}VMΛjgZ"&RY[2*cBv|3^WY/y2SlH1,q~t皉 }Z4FwÃ+ ?6V,ɒa7ehR 262iMlNF8:%,%]Jog*IU@K]#K;T9DjDWSju/10RfװJG/{2b7Jn$R|؎XZDX2`l,5N,$A--z׬Dxq(?8K)fӜ` -%,ANu hfur7q5ͺq~=\6.X.R D:,\S*Ԅ+"ܞiƌ(-QvDpmTߐXJc}& " `!t&D7(„RRѕ|Nas6sC9>[=K[c9ٸ c/.淺!uY!Zb,Gob@ʥ|xB1Ҹ#;D/j2b+Dh:츭;dwǃOTQU5$* B$ڪ2T{[[Z&%^ vԝ!-1ټFR+T _2q&UTɦ)*L,? &GGuu3.z$,!Qbe&DmݿD'( E*gMR$DFNaa] ]S&Pf*Qyݴ0E@@gX[_w`Է`N@`;*ц[JA6s1\`da>[Xl :~e76764SRМ΃PX Ҟ׭ \{,K/ qQiS'/GC!hG`#1#͛ f\PO`2 =~AطЍ'H+. f[cľ>o\Ԇ~[Қ7Ъ7"A"L{V'y,DmA3~ܸX0f9V9W"/1==)>2~P!KވFfUR<ӯT/Bq"lKTjE <% yVaZA|=|~:Hgtt٢Uc:y?miCk x] t$ 02]> NTx460)Pk%5r(0|q1 P됓w^5 si+ tiZ?RuVu/Iÿ^#}N^AAcѳUAnCS;bB4迴PoA9i(\{u~:w/(5I@DQA=D\^]\^u/Es;sP4P@譁2ei7hh(tMًs&#h76&s;p4a􀐑|V=YrUP+_7O>xgq@0LcFcia̅RsgN.1%`jXcv- , Ӗ,mȬ83Y.`N#iv'BvhHjߡxn<Լ>7A}y&E.vo~w3|M&Oik:ˋ^FfN6{߱c:yuްuh9ͧ^ف7Ͻ|l^r^B}pu~ Dm+~ ]A=I 98:~rټs}޼!);]W>88>qHPuڹjhQk57͏)]@Wysvu_({72C B› ܱ<-m<|lwrC Z F*N{EA $m6)@ }܄vd3t{NY5/L&fx!̈3aftyvA3S|KZU4''rC02ðo`(ĆgWxTG ]8/4(;i' R/2o&GXVVt X8 m" >?xl&xS>щwK%u1$ikpGE.Qsܴ&u[wpBz,̀ӄ|5j "エ=+eF7G<%HVbQy.FԎ K1 דg&P%hm _rՑ5@ve,K ?;GQ`-q('|[ )GiܰC(5J?8SV-mjh_Թ9Nm{BZ0uXWTa$a|GBM3 .Xplp[[X|Z@I`苢 uU49UIli/k ۑ6ӳRx.yF>#\Xn4w+,CL'!fhL xVB[->h)4S>&n i_mi`ܺsXb 86t*T4 :t ֺN)P'hl. gbftldejaI886@ry mhwi"x9,`ik]M+^VXư cb~4|ch{ #; )*Sh/1c,zTeU'uK"xWx-b`iwR{nN!I wvB!{'ͥ|Bci!BFS#F~P0īQ2B`9HJ<g&yТc=\.1m g̖p[60_hh&oBBcFǗ :q(7`DR>KLPŃ;\~6R%?cm ^pw|bӂ?F9fp6j$뮴0L=#:S{l?''\ӯ34p]y7;owy7b)}ԱGTCbBۯ4sٽry 0P-=>/\ s* s<ᗛTjZfϤMV99Vb$ggI|~oa.!螰{AlXJw̆ƍ@rKV*0 6 o99|aSyN0fySgm+UMmhрc䩈;46 7&]j֘.pv{Tp9 Ƽ0A 0Q7Qg%̱\\ɬlƭ@F`c,SA#A >0@4 \Ҽ[@GD<[$D"$bB_Bg{ѕKv v?\9qݿ>嫜ԏ'U `.q mJ(raJlj4 /c4'S gƪ<*uH! \񠁞%_Y2Z@ KZ.KI t::ft]ÞRI}LEl;`W@_ uT<3Hf` jǗ|WgoB`&Kd`Xd/|+mEׅűq ̧I)^Gdn7>2/1q=p@3:1&dЗYҒ+蔄fn纻J5qVu5Wu|4u5Cf &^e?d@-)UoJ0yn?|X>OCšFگ=!B~F<רO2vGV7"C._s]_Y\gy.]@fk1%%sJ,f79k~cX?Ij&JS5x kʷVʳ\AzhHOaM7EDĪ` oqsZefTwkI}1~i8985C,݇-7Z>aNMB[a8>W1LI0',,Ctka~?GYL3T@)o,!jT4wM؟* v\{R.A?,?=0K~>Ųp{/ɵz}ܓ~"'CNYR/)P p9G{~^oWn*&];DwxƑ/6qۓ ht`ps \(L_'~ߟsBC"dcs GG"x*?e2MHz?)R7#jmrC5h`0o9~@}aE ln|%WɌU3Z0ȃ2H ۟FPUk4cܞ|] A ^2 ^%'FLlpc%#\Rh{? E(."fO,:n1\I8blU+}< ;E`''_Dd}#dž>3F桊͡SDre,ó>M,ԑ6t2C\~M(M!׾;+f<P)œɯYv*B"Ҝ *lnԙ$)ooRhZYq8IP}5xTS(FB[3=- ?kR2h۝%-/;{km~=HF|Re4ՍHz/}pߍAW -1 hEoVVpmj#ɹ  "VhFy'~ޫ`$l7L` [ظETR+Fk,6uR#P!zD%+m:I&T{對'I6~+Lx$.#M|N09Vll%%;|meq*e`L0ƒDºhIc.'Ē_ch8j *)3Ooasbk i ̖efA) + jhz".?u~/s_B{u XEL Vh6"d9 ʗԗ$I-*T5%RbL^F* L!gpȃkE lk}$;4t/"rgo8v$F﬌ؙ/XϰEq1;̶7IB]Lr2ŏZ|kyeF!- x=2˦xe cV#Rji^ͶȫXX,MjE^^ɘ*̟[–-i1.µBݭQ]  ^0<,WƗl:X`:lt|YS`̶iUs.&3E ZnAE/Ʈ kQ 嚜*B5%̓A&)Q 2m(T#{⎀#ܴ#2uf*}:)JE4XʀdmhPjvن3LP)0fA )BF7 UF6Ůg+O7MKrNCbkCq?N3(WKMaF%Mako[ZC+ _Qg⫒.DHDoƈ̈#g:rGg}{i!>e%L®Ȭ;W`L ۘO2t7 Veggo9lVI,n捲p+!>Wi7dJ@!d;2b%A+3)jb“wl mc+F&$ɑX3|29UGNՍ=NYү>\ 4Lvy<^jd^n/'㑏I3mIoIB*KG-OXFǩLgz@=#6\HbD2Dm)K=^PlmHŹV Ʋ-嶘SSlK$K2K=h{ >}4]Fnk ~m_ѽs:/#/_Bt~qpٿb\·1f VONoD=cHySq\ 51wɿ&ܧϝ vR34𛔱$gqš$eq  ̨xɌnv'QL4Zv(`h;]h.X4Dct 鳅pL'<+K ץuGVZnX`a. tmnXQ H02]$xR!-(mBȀbQҟF~:P&zŢ ԃcS(5G_-킹oovܷ;`l8ZxlJ89prױ-5˰sEMW.>_6:R`-]m#䟙ֳ+OM?ܸoUzrA;fݤCZ\ 4~3: f6} &P6&x5yH}H.?ĭ)H?yX7*)&ɋ=uJ[]5>%*[{d, PA7QmOUqWLo Sw'+;ukӹIBzfB̍bf'fQ89QBnnVmzQRQRl<\q6'W6K #kl!Vw3d:K)C Mޥ{ G}0V]Kv ݍzވ#T{7n"1$z"1?o'-cn7-s%bu3Ζ8rfC1J:MI1iK=Fm֩-Z-(^m;yfֱӝtHx3gKzLgcv{}tWsG%8 g=\qٸ8: NBK+LORz|ɢAbk+p5Ed>/ߋRX\ jR:.=&3̓?e+CFukw(z}D??)gCC{$z7i=JܢGdw{6?ζ-^^1NgX:\/PqH^9l &%hA)OJ!JO7 m\kXʱ<ل43NF;Au$G?JSmoP}Y턛[9mR(˥݋06'ի:w WP5H2̌u*MdR% cCzxT%ä{]r D&3Kp>8k5{ А!ҙ7΅&⦅Bj+HU{u Ur䰮-fⱵIBK=%8BtxV:Tݗ$/F# 9:M1"M'/:樇b_9qznJ\hñ́i2d2"އKN-5P«2C ͘[sM"&"LZ7_m_B$z)-cgW$0`:4-S 2m(zh]7Kӄ%y2ztPf贚ha+lhPaC{YKva+z(C=Pyn `k7*Fͪ{9\VM,{kIw`e=U-JE;ǨΎc; L#޽jae-8F*&rQ:'G֪fQ̠2YZa+p+c,x|̵.ݩg-ߢهx<IMq%\<Ɵ__!FKXCb!@ a`5imW00O*>%'9,H,.VE.*ǐNbGj񰯟$PVҊӝuQn\BS.w.jZ(Y"vb՞vy㍬SOמD Q#j( $NY1W 3P~y曷Yt8((c-Cݫ{v||]Mb9Rm}#V[~@i=͐ډPN\&edTm'L\[t; 4Od3pJGyee:yqqbIN`1*n3%EI e5G UT*),K4&"`߳VqcLy@V%eR%2oJnk|tP%.ƪfIL0:~l~#كxD <@Y`ApB8SȤ(==OFDѴ20R͠d\ռӝN{nҽ}oONO06WFf&Zz-G!9vPK-A3sJ{dNlTs1:Ab@E*ccl&NBJ\/_@qX9dy|k\Wgń6G/ImGg (62 y7בT/D% d*σv_׭Dp"tiThTpa3&y"L9{zjA٧fh8Sp ^>N&-XbBo5{L;|8F#~ݫR5ՍY<#!uHTFՀ6!B3W%GgX],nXq/:-]9pfK .{^Rǘ*:XYeР/Ud C)% b[UKjw!'+2YXDs3cZ8 adӫX>V8E Ra߭+ϽU|=~ <_~9D"[Ua8BÃouo,|3-ϟml7ܫD^X!Fta24᩵\XOT'iHzݺuջ}P:ҿ onMktTL:Zs616T7 PmuXEc3;_}gц_&i\\O;}ЦOWN>ǫv3uvz W˫v^51pq;y;8ço󔜶;]^_]^ Ntz NOa  {i|<@ߚWW.[{Z`dvzfXo^ؘ0%+Bzp(Op8VO0TXvڹjh-j0)knAN[AS߻>39Q]5(obm0GYۧ6 io- ;FDu;]P_W/)XU" &4mF)&@ }܄dD{JHhZ6klxFal[#,?h 9S͡F 5s˷U?_I~r|B*>6rݫ* ACl.<}Ơ3Rᙐf7%@צ2PFgFI8iJ}gy?UDa5s;҈@?j v4 O2oos8:.{3 $=Ԓ(Tsp KO0H? 0>ۺ%fiBMmNEpR .r3,:_b3vMOAS4=MOAS4=MĀWоAv$U83Ae}RvO)"Cu}b.OG$E EwK#e)x8")x8"=8r ?vii73`nrӅV֮Oh[C_f;v"{6HG4uͦk˝;0聶4a HaX¼h{1. |"PXt O<:dkb;VoJ-0vǎA4xhsJ8w>Ũ#닱o'}҃eZX c W/l-=J7_2–gʧd6nF#;UN jia0F*~SE yjѹUHQ|x*U"rYesN:5 o/7ԎbP]A]3g-@+^i:6T|N8-\6ȪQtk떵>^c YŻ>-t(pIZ D9T`3<Aw)yqKF;DmiqPWգebU@ C}(.h4GHnwhZe!܁߼ğ Z~׬+5ޯth]@;Αa qm%bč),PGY& oAA#`o\ˏMJp T38Ln~}8 ձ1&Te( ?U̮Κe*D89::"| {U, 0Ҿg:%םEhYԙoqWF[/j"}mO%l?gxB;݋+ZE @oУ`TDD忑rTE= |WUa9*@p0/*_zt*F+F$囀MaPľ(ĶB8w-SSȂGpZ^WPY\D#ՈqDC!(1XoqC0cϨIH `h;>]DPP׍e]mcȫC7Tk2~[U$_UPo{H*bOW_.bC۴iz{m/ ۱qBы-ٲڛ|li4Mf86afbǗ8ӱz2jYj}6vңgr"4ҡ82M|8YlMEJE'yW3kI\]E9[ "4ťf0SKܙtJ e-V*&-r"ĝ H;ц;NĥzQ3!#Ee;%MEhoZ È}"J,*5x!#}_vER|^42t8/NoZ[5rYZx#|yOj 9`0WP%?`˂l0A1gF]*{kAиLg`W7%md-E;S (쿟}8Ҿ`%caҷx* ' ӼKo*2Z)hLK_~}}-ʛews( c͉.Nb VCH?Tkĺ( 3*J",$@)R XXGI S@:STcS2DxJR@$|n!9T)jam!7G0:)iDhڇ(HZɧ p?|ɠ<+2,''_"OH{ ub*H)+M/jJ~U)9C&7Vp Ԣ*pOd h7m| V[&Y]١vdPcejs Fae\"lղמk/px"mDM]r|'6ߒ O+PUf8-=SJ-5A|>/N;燗_ϋ[z<~8cmތ'..lO>q;Sg6Um? D `f#od۝+|2w^G XFS'%!B~ .$]4@鰲~./Wk3LMbk_1 E㝚wjԭ%ztLRm.5M4\͜NvF-s jt~sz: 4.&) *MTN-sj#ă$ A pzɖC[sd SEN;8HY%v 6Բj=7JAwC؃4_Ȝ#撳07|hfĤ0^h9Sޭ_:z=z3t&%N[g2v-Bh5oW71 (z7[vk[Vdum?m<3o"49Q;pj9݀<٭,ѫH  |ǐPY;8wų&pԩ7J*F@]x6 npnF=bO@۝Mvǖi%v[Kh~Bx(x .05f=tX`Dbʀ3BdŤ0Ipq+$6[A~Mu3a񨞧 &Þ+3z/8B~Buog:Ν ̃=YI; ?BEd>,f"!n`b M̧iԮAA 5*CZ5teW"gIF!`&jdf,;d/Q9ALB"0ܘ0V2CPQR8/PX-˴[ #'УDiYV"T\Յ$ߔ$!v;Y ̭ĵ[ C,'i G(;m)"'"sz<0.|4пO,iA9O!tY7"Ԍ/مQGm a maAlAYȃd^K|47GF`À=9۾ɈXPBfJ֨Ld٣9Y+T&U4gF#n4"874B)\Zn g+ÞMI6#fM'rp0Nf:A{Ҹ~ 4P?Q05K|^cϕ9W*5zǫ .|!<^]xuՅ[}u!o*j2 /iLF5%~v0.#7={oS';{oތQwzSbM1 ȋg>vqS,1Fӡ-Ot-^F_ #ްfwmeRx#.+8C7dftz+7uW?, B)-c@}%L p}wgP!\@z|3VtF+d[],O"ah Whu&ڵ3o1)t".LFP׵Nu[q cNŠ<.&8 ?4oIA(tNKqv/"Ӻ8lJ#)Iqʏ%hN9iuŸK%:x]lITwѫH*)߾$0'!?8K$4L< kQpJϯrx`댈c830`] ǭ*+8mWs#!)ߕ&ł(=)HB'fEP(.(:dX!Qz`?5IgPpdKy߬_&R ^6@6@(y|,RZ;*Wda43ca3`㓳OGpf>O Iӂ"zpbNBݢGbH/ǯ:CZ$yISkDm-N5d$nb H9X @kR}5_&A̡?T_<:et[L;|}cf 战-搞+'/ꡁݟ)ZѯN02^iC$({eU\::=Bcd.`J)E&cG7IT2i!pTSK%DyJ:XY\a'Bqʇ@{8ϟ\?hTH _SFScI~ %K8XnQ;^a*k&,Ÿyy sa gC\$P`rb ..iܷ}YgIl/ɩ$ lt1Qa/xUF_5+%G_=މs0\YT0+}Q)8jf O̔O{!?օ].l?CA [QGK Vzu#_h$dU;#ӿ?Ϗz9"areB=Rȼ#{d0cDQַl q̥͂X)#icZ(?Sk Z6[k)P#gB7$ڸ#]"|t)N19DsE倱}%edĄivug@S(:no.aBP 9"%uPrECz_U! X_Ηuf H8$ݮ(d5^-jB!WHP& gEeP}q> ĩhlW# `BJyYʤv>+mo9 0j"GKbo `wxP{vw9N27~HZ=쿳 #4.E3&qw9 C όU(0f>Xmoy 7:(ˇ%gPLSJSC!N _@5d*HYHY#j/hh. y$K1\>~6뷐*c[""X,Z#0Js{63Ǝ3; >jI29qlC>d7rnY"$ON`e&w'l>,*u?K GTpZ,So1gQ154tvI/ TBLu?H",|::l/ClȦ"3[7P"}D"/DvCS"X"ɼy r@?W!ww; IAmD7IbSx;EZ+Ƿ-#hӄ레 H^ȫdݰlPRS%WX\(൭MT?5K[I)Y͙gPb.2@jf+YE}l<'FuPwSwt28dm`e|ZP~5.חR3G/3TA g⊷SQ>K8)I`+ZV(ʫ.6k=OTi64+^ o+X?_CUV._t)È_}šc_˻ ˋAJ?J~* 諊d|FB*Ui>&?|CLG*OGWU,%QyP)έSҒ3巼[ʨ=pTd7kzwTIi  d(tbNHAגdz1|~ D˗@-3_uN#Hk W'dSK8 @~(%]Ћ!z׀­}iFd6ANXMG${=EfKuSP/WK !+I!"K:}]*2O$%`t ZZ^ȉf&3KÌU[d1 Ev&KDr|ے9񆴡|FyH6 +9q@'4?ěNNUfIUqN{碲 -2B?\])NΑb-PD E 8'.mn|12+rTMMȀCHrO&.7L ?(W lICp hwHQ4r10c2ϗ=O}q$ \Z (qW%SJ{,y(tteɝ ܇6YҍPC;-*O!ɹA%@D4ݠs_ڬ V-gP`K3;$ڴ,ly%9vBȀ?bso#3:wEV2@QhGHC dQ!V7(h=5I"PDxb+vBGz`FJHt*S =a %p]ox !X[j>%Vq3[(QC7C1eSk+^mZkgkTl*yz2*BW ­xlgV91.d B>mbLaХ2i`}6Rmc MB-OFL݀^^4۱fopZ5d,+-IYA@2DɵH6 4B =2j9kwQk\Z.*vQkU|T;+:%T%rRk9oI]HcԦ1Sx4i#kJuJb>@o/1%:~2NE`νpΧÅ[ Чe R3*+ nYMCfE0a \Z Csgro 2Q.WB~raTZ O-jʃS67!mf26gxz-:9-ي1J"p0b.a?ՙ"X@*r"X720GY\y1Kc>+tAq{erB '9' P&s f#8Մ X$M,w3L?o:esL@ݓ-OC{d,iLv6G6VIDZ!q|iH+kmir˧ -;ۙVGu LK-L+$vZ۸lUZ`7eLmq-Oh[NI}HKWRiC%ɾʽI}f%7G"y?eUBݟ";B cj?0fsPm5:@ i$QxDc˜dZȸ5Av.11rlCoo˜Gm'Ƌ)Ou< cAo>aL%ap c2G#оw:Q$Ū:0@+%mW /+_cRKXTDz:ֱu,ckX Q 5 i`MkXUY K.N?~x22:s!$c]P?ԏ_T?~~~:;q݌Q=zLW1cztW_#n\ck׈_#FL1sM;򼢁֚W: WF/K+}|&_T>:y`A^%y ,A<ȃQ5y`jLS`j$05FA05L `jLS`jS#J0V U)NϵTYseqz*t-}OI#Ek/Y3]mHɨR"  ؊SƒpZLju 2ߑ!*Pv P=")܂wԐXwWXFx1_眅.&9?-|fZ2AlaM0߽; ?ǫ&*s(y,6\ >Y!0bCKlhz^,f(a^d .DD8UR{-+]~ٛ`<́U/¼۷ ;vwS+p6b'5iI/~U E($Ϭє0dB|iGMZxLhfT3j k7وYYE:MH?փ4Zg9# lWrF y $E`05B+\9fʫYLԖb{_gwK?% K?/1^e}jrOi}dN_sOTwJ7庶ǦsO8Lɗ@~ l] O\pRÚwL;|(%I Ԫ[L e([4b2e0|bV^d=VR: sI /V_=pFA -xbֲ[B̤x 8`^٫lJSz_Awl@HN ZCL*26GJgU|-з\K43Y+EN˝>I%PbՉ< 'p'wvCf\=G?,Y-[Dݛ7XɶJIMtid|jDOFVݫT*wЦ@,+s2߳(-e.9(AͥHZT/1"21}X* -q(i! *sl2+'$d {ix^$@zt M2+ Vz^~F0DJE`s;XtMxrЈ_+| smM!x?ei.>>_c#\^eJN?侄H`hRP!nIВKza׊hߤjk2.l@2)%H+Q3Cl+4\hck2~utHF_w 4##|_w 4##|Yw`#RR1Bl`K$Щ7ӡ5l:w41iܧ9\~ӭ>ui:n+n]LGva:6+T9 O%\,XM>]RM"4j2#|Ya#RcddCR6);@+NsGCB$?tV}h 3 PCwAIuPb͊i7pwE:S zq?HtZU!ORMڈ+i:O >vu;!dK "`DShu`̜}x3UiiZL5nCnYCY$hxt$HD;צY8G QN(!Ξ 4^U';vȤY)[AyteZ .(NGhwQh9AG_ާ:Ck-`)wPIu y1}M/QN,mk2ŮFVp氂b1vy7FW˓ ;XGS0r(h"K&cj6!&o2̻wb|ˈm[ k>mDdd}}iJ*̡M2h~slp͙x3註yQ_g<%.`9wpH\ _tESk۝MvǖXl׺hҳw_tK2U_s'g CAU2eQ|%vaGI/|"8 A.M."$ @c2 P3ff|3f( X@h[ˁ{0 ܓ3e{Ms͏Ƿ# +jS0՜Ƕ lG`hFS-䊆$3@"Är^".BD78ɕ*zIqnvzcX;sl3\y؊Nyվ7.:'GзGBRHK;q W<ʌֆPlCTGώS@ip"9,E{ X+M v-΂i]kj:&KHmOҦ'[z)ZaiR? %)J0~oKrj 00Ņ`fЍ0zj2C4j J_ 224RhGk@ze>]3M`5j"{F$3c#1Mh^SVo2Uj=h2Sϝó-ߩSuZu L32Ab;0I7MW[={fs0$6i>UC[ٵp;(D.%"])@_IWmV@ M _NCO3@8 4d&'fdwVj{B ~]Fڋo\s Jk_.ڇd:GĴk(0%$m^Ȼe,nEme[O(WծI%%5fX?Pi=KCyy ŵ7NgN+Pc|z)֮5F3 6izl''g*o93nSK!e NlTh;ZFydbt-MÀv'qgj%%o ?UMN@! wh%$vNR ;aPѭd,‚X}r)ǩHG%&t.PU6YQuT 2QI&d;POȭ=O5򈠽K9(^a]h @ʋS Ql?_ƓH{1A@$ 뿧G* +Ы BF`s V!Ll,prρFpR+PޣJEʅ 㾌pk %Jkdx%̐uugwFXe}%0%jkĒ=l :h k }4ՌLdnƀn.ƀaW1hr*wRn$ {7^}T;]|5mgcЋ;dUy NuI v7Сw,U%;a_ՠklޛ7Vn- ,?w߅v6hiVjr$i(DNoDKxG䤆 CN0Ny" Byp]<' P/^eYZ#,~`_\yz3F+PڗgFliN,Uy"@fJy#KI;[(&{`xé{jZ*"KFZu,fb,kR;YEip&{"#zH+gu4#:VQAb %#-1JTIX[Gk]-EMUz P҃<ߠĐ跨—b* jI9?oh4T <632GŢu:}r01Ȼprm]<Q=5@psq̊43-9=K')Mri4IٛfLDzGh:Oq\j3yfyRye ꜥn/FD%gѝfoUxځvGCx`_C* I2|mimQ3YjiUnI`b-uqhM"]M ]Gc$եx __J(k[]-V |{hWq,mĆnYPxԊ}bUz') X[l.~Ù`pJDΉ 2$w# eR Z#kO? ߋql4'<>ǭkϴm F _߯~ΑƌްHոg.ɂXHBL < Yp57;#@nb}Y},3m: aBө&ۀmx~5c :>9O280srPoDȚJ~LLqIkSm&~/HF0/ i^$H5?̱ ZItautRH b+pUOrL)ߋG@}`]їi@7CSSszFrNNHn7ӆr&a㺤e/iH0:5#~ôPɢOD`!&5{r4-.HthQ*3OeC{y}hwn~9M.'/ĉQzً7>voغqM7A=xe_Cm//(j XA|bk )X)Ҷt qĝSܦޠMMljljlM'Kk4jަZ쵴9y%S0I5['ammܒǰ9BH |~#6u=&`5c˃UFz`X 0|zs]y;!K'8a{ .(YIsD޵΄]o?"MJ?6oB}V~z ߪ7)#O giqzB "˻ 8ok/60rV}w_IK$J&ş3yO[KF*gDD"&2Qt5yׅZv+Gg?+YlIӰCU+֯m=ڇ,9(M¶ !?=U>π(baT̉lH+]V8_qU"K:އ<'wv廉p_2c"vr>kWӡݵg;9dZە[:0lȏ;ޮC鷃 iM[́aua+ {nXse=lZXée"hN 4QKʁec˱צO@mU_be)#&{4Y,]o3n*i+UĭDZk5"*W1r|8H߿HZpt Jf$PyfOo&nZ0EW|g:vb30CmU='TԁMG(jjrWx>2 i^1rEvv=.;ε539 ؋93ن/zްU-,Q/02k^tW0d^c>-kT &0F!<ѦkREjoCJ(;ڣ M:blI9ZÎlhԏ.;獋aN&q6}zra앚s”}1xp1vijw3-WAOs w46@.A]"X[F1"{y8ԷZm r6 |Ȟ&u:D8/AH; qC]=IЅ1b(M,WIM?˼'hO ^w gas8dPzgZ`9b/4J1Etϖ~ߵf>64kxLdc BĔFoa}_*tȕȖ61qnM6]^ӋC!+lz42lAx3M{$D YnPR,-r a1ҝ& g|.ޙ.":r?K!|@J BEG֠k >2woQoDhN<ģ9F.k)FYFs}u#%R^I0jN;gǗ6Q -Ѹ {3̀%UH^րǜPXC$S)ͧ^<*oE?MtJ(ir(5frn<:Yif}GVdpmdzK͵GmzYJ ט/}:moyZdǒKffa%r W}`=8]#Y!Srk֣h>."*̶l1֥⯧]C=Z.RK=H0dϭh׵v{!jUj[a*aL::P.{L{JaZs6:Ln}b}~~!{uvFjc|0O-G$[Mm/ș)#|*tA/A+@GqX?N:^KI&؊5=|bhr*h_ 85RTcF$ Bbu:1AOeDbLkj23 cy!iQNϮv~6X@YR軓>nvo9ȐTS[5 XLi)K̋Bhc#EMG,ѳݩ9VGBF]Eo#=eÄ3>Rёmr^ :FdR}ڛV" 8I({3kĔd[U[$&g8վEJ{9*v.m Z٦^ MNEEU([c<'gӹNSx'}Ƕ=h Ik>h@{EYL ' a7;ol1@_8e$qDZf6tr :݉7dLL 2s~%{/\IR ^+Fc|E+Vښqetm:C-p#h LfvҘI5ŀs(MžTc SSûgal2R1tAbxmV 9`kf;Ӟu`updmhb#+Bāƺ7 0uLÞ|]5a;vHk/p4wI5S\zbfİ[VwL' U$X*J5tOhOޱo3MkT ]kX v8iҸ?Hǀw~uq~vـaj%BF6Nh)l&i4ȧEECplʄI $MhaB_>/=Tm HtxrE pB# 0>&R%%l&NF#0hw/Q1>𨶧e(]+(ET>J="dB*CdMHPs(hn 6ō+_"`|D-h-N"Q4a2%#xU~îĻjZ`Z N@s8LT9lXyqA %L4g:h cA &RS:FYU 2 cOoc#P|W*3mhTUPP .OGL pv`pqvu~yqf@NyD{݈g9wdъbQ@7\G~ŀ˂DŽdžˈdE\鱪!% eO!`MnNdO`PmXyؔy9XyiJ6-W,1--W7.ZXay}dܔ3): 6d2x铧 Wȋ7 +۞JDQ dTUh_|M)fF%lPZ)}58b8=շ.c9pc hc'Da l5.~:mڽITU?m\AG`t:02f-ƿI /ls&јƼ:70OZF/ tuu8ib_ul$r!΁QJX[uzy]fU7rJX\;Ǎz d0h~X\~ۆȟ ȱYDCNj4 c^0"v I{J$bFB}֓_N,cK}px;*O,Q͉G]1eiT>?mm9o 2 |`˻ov;gR n+JW"c~Tp-V`wCUQ8i:HBB-k Q%7fɅ;bO)=-Vx]{`H?&$1$8Pv#DŇp 2'pF sm(\j:E8>iwqZo;G˴uIO?=" cAf+Ryr$&R2;RD$\hϒ{MApI Ystv޴|Lj XE?V*RVO*>G$D 1$N; Т&`a*VƮ=K7iZ.v0#Gzb/ʕ 5N! ;Dž˓/bEZXЕD,nY8>3#yxbM'dv Kyit[P&SZ(ZHUJL^q ܪO.yzIuoNl\ѺϞ}KT O%ag F,Em r (Ҍکtϕ*atKMCŹfgq=m, `q%`$L ˞Ea|jF:g*,LwOSr80W?Ǔ;鹕>B2uI>3 L p A}kԝ-I6^]~F ^#=Jd$8SdOPFIy0&n쪍9g.b_"!)P6KC sB&-44Mvy( u!A#[6;,2 mi3k`?,=*ӳ_$^m'LtfBw L:3NlaՏ` p .8>J^V1JRoFh {327G܁GސNv` VS63]ⴖ9,Oj0]2-7T7$%?@LCw):jC' W$? :>N}AB JqfߚJOyU@jR4rJ`hOarT)>ID@PH1œІ iň(6.ǍF4ZkLʞt\@-O{BсtK' :g9T85hCR-($ҹ珣hg<[׏:W-rsX?9[ia!4Nc&7.5es.P<|!*g)L#\}ahK$wXN\d&'Lő6L9<39w,z Nxc Ys]'aKQ39:STAG}Xe"@F70>RQL:Ne}Lr3I$0?Ǔ˙$nXcRY$h9c=;L3J\EPCOGN,Ț &$g; ӻQeNCfR ֺ1QHiaOOLxJxlu-|rZm)4 {ysbHWd %vaKos =a+T>E]gޗ3bPxC"&1]dg8"(wGFߝct}Ԗi||#=nG:P>] T zDfR Yg[?}S&K'k1@$9oC/GȎbzyY"7/`jҬ9l](ײ^RSgqd@sekUƉzNHעT?!Mh,I.Tal\%R+*O`$ ,s<]ceRuLl28T=MoU'Wgs-T=M- sc_ny+?\q>~* -()zHtzggj!ٮUZSUF?Ah!7~()`$P.C hx1EB"ʂ4R"0jՀ>FGN)Ξc|^E4;+gUŘoRUFm?= AAKىn2jJO*Z1TOcyS.xN?Pj~;%7a}vabWl\L{\\ ҸKεsgsxWG'Ii =|R4;3Sy8>L uǩ׿#bEbwF)q/&л[ 4k6]'1Zj{ !Nv:jXvz8]#^'p&wnHEP..=rj#I="Na8| v5 =KmXx zo |׌us`y\]P]-'z>lto5Ni] b;ބWۂQddR][K@RINe @P{HW])NU-qRunoei7S 94(3 !> s{B!aryorWȯ˫s܅8Ziد*Xb[c?|[&OY'.f4(]~az>< 0>Ѱ39O1! wvh~΄fR?3XF"St!^98Gk4 _i_|1ȘmևOU#)2IA.餘qgP`({);i~z>j73cΈzeMB$yͤ$ iydG+?@ Ӳgc  aǏ͓_N/.=93mHw1e]8eGK݆d3>-%qM9ݤd}*ܻ4I]cN,@P( W͡½VdLI $.SXE6@D N+lTI) Y,r|l( @NO5$C-9LH"%".Zn39iacjϳ/c`+(>T9g ˠ_cshwg'Z\ @Gr|&4[᳉&ٰ?Z if9Eiv( lrtDnҢpߵ s|k,='hgb l2̜% u6pyp.ǘ6Tyiȱ?ѮlZF|Bh^rV=)#?߀G ǶJ{>%6=m/گrWȂׅ#4] ¢٘@Wֹ(Xרq2B| eΧ >|iklFAi.Wxf?ty4&\'V`-! Jo^ fTUӍ1fOgB1yzhf`߶10>,!Og"5P ZN)弧]!Z^ Awx~wt&2pPk|9Y,N9<' gJ4(%LD&O88#0v"a0v' x ?w2VruY6g»2@s-#Kx9: ɂQ=SL>J,vI]4+j>- oܸ Dz.kjV9z' p/Nm4JuC n5^(ufYq>}!Ӌ1(ĠskBM5N |tL'}6#^s+h-'0HJO2Y)9BaTw٨R<cؽqTo/Qf.Zohݹ< eҕ]&7!h1͋?@nrH/ 9Xhiw3'`'\%0B b"ܛ.f%[#]F^?A3*eq)F>lE $ZgΕB޸Mj[ODhp8Ց(8\5U:N K9ueHV+3ydz`+m6Tlc`*8 ,Fi|A;(EޫL&:7cyQțFa w`ܲ,eh[dj9tIW8۫$\-b\_;'ۻ∞Ua QJ^ˇvwj=X*{Yh삔E(e=cXZ/:&`eœSA(mRF N5fP`T6y[2"d$")ڒzwnw (@.u:zf < -z-lp4qIcx  4&8W.7DiU}iN]aP'4Փ'+#e d~\,vhB1`}mumu=n.!:.,G5gV!D;5̐Yf5$av?~_DWu:$x"'ԤRrTA '^Э1}(UgDly4=j/tMD՝7y}=Z_]Zy7J|o]we++,WEݽeI߰?,ҀJrqb_afOռYkL |+eiub߈epYH.Ջ xG`{ë W28KFSou# |'lqY<"*2f r4j$O[QgFAvQ DR8:iA' aV LB: p+Br?wU&x3̩!pXsvsQL4%=!xP\{qPK %F?"& ^~H]-X;ҞLi ]Ay{@ݗM?-ZW7lrtЏƐaptsja}AߒM{*W/v&/e+_ۭ`6|?FFP>d-y!@&:s~"q sJSmb"E>F}pWq_͖ Wo'4%OɳQ|j`wȫ7xzS͍DП޽! {BV5a,[hfz!W'% mF D!#D4>&IcV&ArvEĤ1D68JHV|Ƙ:kcIo ^M <^mq1EdAOU|iM7LtO Bԋ+^J dGoP|[}-ϒLrçād|K& %='N~]&#ςf:W~o! omep":///?O^O6^H!LG!V&̡). -"nĐ ʱ''/Uf-6weXKU>flCk ,Tdvڻq5Ee r7jv[ay^PbPXPQ),kL$O?Zٖ1낙;9mwkpU@{7Ђb><p7YnL-qc0gz =pO~A?R_Ix&݄2xZ]VvFsb>P~uS!,!Q \P^]ˉH"KhwpՊuQ=]L7]j2a.jrB/{w*4/Yz{{3d Ċup*OzmV+;vCeir&of'ڍ]?y1lܬވވވވ7;qgzaza]uu͹/E.X.!y{pJGn6՞dXد??mTvZ n?DdG1T3S˫1_3^i,4MFO_b1 =Ӽ}~=bv;; Ҙ?Xڄ CgL2NHLen+.ܻM$>9֎ȱ,m*.KتSvzʪd0 ུLȻY =,K+ۛ&[3_1pt;&"CaNhA&Wŷ=Kk 6yݣj6צ3ťkjhCUǴ/ܶErl 򊭷|{*]118GC_5 ĻZ_r쵎5=ng"m◦rCDsWC ٠U\xvrUe!=m7p_%P= pI,S7|P \tFrZbb\$ev l4b$֢'"1=M9Ec0^hi8xRU J:#DK#j2ųνg; 'nV8r74V5E\5eiRk7 g#FPOlZBIAH\i]ĶKE5ߛ EfsB-:1g1J[Qρ6 Q# nGóFS_2b1q}VtF {Tx5 ³~Q/X2m|,#':HqxWC$Vc2;Ȫy aA%95qWޒӹ49e G%הI;=5w1Q3?|"',x}Nǘ?kS{@^踌ן:r\%$؆Av?hp@,7d >S0:Ek5" EvZUriؚXq"C5Mƒևl@IȆ~K-B`6 "uW/v,Guy={9!̍ʈS9rDyu(Omw/ܒ;=[y'!dqQ<5 wGl7T- mWr󙍇"{T :!2 :Li\F`֘7^ #YQ8 NW &|Knb#" Exqn#:<a\4ڝ* ч69!nTۚ۝qyJi3UJS:|J<\aVkY;=Ԣ"Evԙwb5Mm0fJ1d~ - )ž*YX6n1 o2'5 Vji&.'3YxvK)RƤA["jy3S7FC~rxP04r1oI^#{ۨr*Rh1|`JL/1PN*8 (dE ,,pT˒e`pS+[_ 1 dbL"8eO YrO,O>3O|L(*ī@+;D3؅pl-`~ճsc&䒂EWǎ*Uì}eۖ|&}Gobh$ׅ>`1P:$s6Rs1s9E.3s? |SlhthBϓż @[Ndmzfria )BLQE"ɡ!8/18i($ujpìIzBS kE,CZ>/ʃCo1$0eJ~cq `OvZ"d4IT^0 g}:%3L122 }W㵦RPt2V!Dzm4VTLpG񧘚>!Q% #W̞h,2t mFͦ@:^nn dLA氊#j\cEłM}tܡ}69?>iv;#nFS VPKJ`ic%h ,~zbxaRL[▹l(ZjGg{;^W!5m i {^?67*̓"Ϣ}40~eC`krj>Y%jN5U 3WSH!CXbragT2;7.*i ;ZO6FC+egLj3k#F G{6Pye/xA=r':MyQ_iFAmS]X!# C ,*:7Ż 8% ;Zb6w4+E"Nyn5: 3@g#xg1{v)(W˯Z㘇I0z.srQsyK`oسy`&7zqxENO\ b6jY{CA]KUfW Ctx57Ŏ( VVADAs՝D OqDA#Qwhi< T%SMǢ(ƫpڃ#JQf˭tyƴ>na&D`d&DEa!Z$cl}/բآ(1Gp`}N{dPzHnğ0gr#,FǰI"(B xvxI2K (acO,0JdģTsV![ xhhgq@ԜLۤvI6ϮVЎ;4 ֐'bZ<ˀ?ˍ.>܎ !6 %(གʬTH`EܜhNQT&g:R"gUzpIm5-Q"bs`XoLd@Kӛ$TO CG$*}~D^x2^rw_A6*σ0ms~+Tsh_gX}@4#CøiS8-9쉌,j$6Ҏ{^ 5T7%o5°-Qq'yQ~q3^l2{ D&쁑x}~6gy,*[J+9ӄoCDp `|5[d) ͼ%o!#H1s/_c|K#T4 \C(><}ux_A}l`YQ,rԅEt yIXҎ3柊݃Ɉkhxq eqtN.`vqi~ypVN߽'*o)]Bx'ʁ!.S_eBɡ jChH銈 ښLTFil^?fpA`xVNa M %a'x-To漱nygQ)VC,|&&<.*t.:oJu 5}*)]ȶv -EV*" _ N uVwiu-Q.qx348=jB֍4]0??mazx0Ã& ZW, ^kZbw`hD2 ^SQx/6T#f@or v-b(2tfb$!H H .%/A&2>vW@ee31BqK%fj}D`}0= D63ER3<ʪBAXx8:>h4~)Pݘ%:L!M|]pATJP§.hXJ875Etu*E{[ߴPf6ɮoB(KT]&&٧+C(D$N+\Omh׭n7BWVbc+a8JPi%^Qg!LoVѯns#ph%I=n򫄰Q-[2וXJ쟂M-=e0~FI$m/@ į=Ǘsd9| q׿k /8G%wϼ ͅ 23ĹP0@w%xx/ޔ/_^kVh(d8MDen0_!$42>ε@`!ps#QChTR&+DtYzWW֪7:rUŮUCTt5껺̆E*h9DYZzgkῐ^Kssejl9|7I, t)baD\ȱQd2BWȡGWDY0H23A?"EA&4&A]t=%Uz:TJO%3J7Ƌa,Z[')Cf0Wr~B:&˼#X !k5hz-L:(Pi$~fS84doQyG&Pɒ~SM(E(eWe>$5Wv{u 2#v4/p>a__*Y$ дJ ګ57h}Q4cXr߫٩!n5JM'mWҹZ<:Пtxvi2;&M @{b,od5*4IY6ݍ)b6ٰj[叇쓅~~eT0&}\STZ~r5eOOqr]ˀ$7^I#13*;7Q}l~POOY0 }l[LI25^)Q(7Dזt*нtK| `b+߯8\yڈUJFF1zztm…yy'A$^RϒSrCۨ? k4]!` hifc0k`6PƷ;k9nsC>?`wKyCD]YeDx4!:f9<Gnʔ´l@x<} ]zG{Q/]h\aTL"9D.Y]>xFt0>D<@YV Rn ^B90l^<䨭E,.ٔp3C[J)&ɦDo?.ǖp%,2OM bjxt̿8|d"XYV|ih rOAKuؑ&R}t:kD_[kM<V By KyPMZV` 0՚aihwˆ`I͛`lh0Xma|FC.`58<耩+3RnZ#pI}>iᮥ½VӴ?Dd8!Oep I:Yi( Ȟ)ь&Xռ^lnNlsznGTך;R R@޲BNZ1UņoE {m8zpz!?`wN!^ ňƬV{xktzWyF9QH5XW& x#Va{RRqp^T*Yx7RLj7o<[Sܓ\C6@9X葂dbgF$9@Z}ĹX]Iu>-,2Ą(Ddu[OSr@ pfdglg u>-3v=,#i/(} G-!_8 -P z&+_WLy߁C| p}3Aw!UJm d,*P_,0TNU#4fS oJ[@W߸ Ԍ7:n^/Wqy{HD C<i/o#TӾJWÂ}G*%x"J~'VU0?o 7[|JTz+_Fѧ#+Cb!(;(9Tn$fKKXi <>@Yh{.Dc~FT^JCQkPlWUh$ i4f0 i0,X_LsNaU$ ٔp;{Mx@gc(F(BʿBw"oX`tӠ`yJP (itJx" dFy9_ ӵ)IXcx$ RPҼd5;yG#4RHބXn$L>P~X8vC*!'#a(2i'M ZD'R?z~4_ %Hda0忄F' ^=hF .v+ gQhs(xOPnEJ!>ybHh7.r YB&Q$82Fy*n"oWQJ 5֙43cW!>XشBLJG24b5ET\4c Ow*hDkq(~708J!(rn*,%\v'K(Jxv #dIcv$gF&EXre^Xk[ CW|4M?$A2 IJd2gs#, $=3 /U8V E cV5i|A fLe=H`D|)41p||VάɁ ~q^x NM2ĊU庠}aF. kH2;4\߶g:F$-F;48'޸mQߏFT$Lg8P`+P!F k2ӫc̔ P|gZ,#8iRˁRlvzrD߆L)fPDT(4 jT. 6/UʱQ9M #!_!{<"M=xLȱ",VnČ+]1j>Cr'lntix6 |E|$ݘ=L( xn*ID4Q)eKnd8~i4[R#wX^ک1/ŻhnRg Gj!}ˌ˲e*_fr0b_n q혿KvR2 aI=kcNa,G.Bu:{:b]Vc|^[\ sN3cvxyx˸0 h-n ޸y3 ](x""yձ*>GxmNH֑Z|4zݺ6kw{% uZlo~rɬdzOsכ^\z"۬u=9zn^;nXW^V/S>LB//c^_^_M}}pYKLt/scduTN]b$˲^`)-@=8DLs_]}>H.[lm K&)RT2H%2Bރ;" wGa/$l>"J"T`QF%M'A‹:(B9XN dŹ< ISebUJiKQBZ Xps(ϔeH1I;Yh8 =Ɍ\|6ۄ1H 0U@X=˨|"$=6%wp3'IZ70]Bm# ˌ i`z? $C/zgy_hF.t6XzKI?~L?pNOoؿІK?}l$z$:ɟM~l${ AHgwBuL#p%NJY:q&'Pn@\rh)zB)9;=4ꉂMx )̛4=G^}=Wk#V;4%$l%(ئNo%;P"dևA9/| I+Me5W^#w?Czow χ?;R"vubN] 3 rKJY@)L,-v~JAtxUlLUXY8M2Yty< TGyj:e|tю]r 4\<ջ0 {=V*G٘h(TkkðU`L&?d8y1+[ %(iHgIBQ#,rI$tgXR5FLeM˛Xֶ*벆`4^˅p&Jt60pU}RK(,PMg QiuhX3bW(uhB;G}4eyl&ze~MѓBS O bh~EڄkR4OxRGDMyu@35 ?ƲT7MHCćzu#D܂Zsp&3aQb#T{h+W^7Jɥen @X Z ^Zd]d!# MpsFvd^ŷQ.{1@ӮU99Pf?M3)Bp!1pO"EjZ{@&p_XOOYa#>ÅT(p)Ā1ni mQpL8,^A}j}%(V;L1FUf-R„I]'SC Wq59<6\]%c>)0|qف@ Kmacnjn ;b,1( Je0ӵ5Ójq8Ihy^@MpuV9_H"$BYt<KjVc)YLbs(h1,gL--o.o$35([ Wug j_9gCͦCSt(YR:U=ӌ8Qo Mt`3q}] ug qwli >(HIx>?9PiVu72Lv9,u].'s/aZJ"hѾD 4NU?//cE +Lߠ_6p1)ʃIm@+x*_+~CU0B7 #f|g N ݬk#j}~i_n4*Q-Y8& 6VV_.d"cj3p6BϪnGUCEˣ~W୅p5̡?C9HQ j!eRjiHbរ3/6O-9*\rh/Iw1'`o؁fd8@ W<]`<."X"/s$.eac#Sl8.؅Fi1?]nTh_UFi!C?@6瑡;2- #△*%)6 V`/Г[U ~zoyK}EN bJ hAT_W"\ UT( =ޒ ‡q_˽ m\PM_, ] ~I9A>WMG mC[)"<Ō>y܌ނPt--^ۢwiA,Xb]JтVixGX[ڷVs/s&\\u6Jr>>@.5~kyB!@Q 8 앸(=`N{@шS0|K>ԋޞÌ.R\T{UH1e)az:aލG&]x54~fSБm8&yt'6vȭޯMVR5ToF1@)#ЯJ͌ؓϲK-4+/Õ@ \T8-H7JNPh yJڂ 9',8 n "9lm6nŹ4Wt2oL h~(v3pw;;v1[qw?sp%Z_r}Õ*^_^])"TܞʙWc8U8lH;%ȴ a43dm>%M+"]d<ߵYa;@ 8 Ox Q2 tEdl3MnYPF .+ O&(\ubD¢Ph䘓*NK~l/>q7} +$lZKH=1`_a+CF4 |_2X}Ħ{@L#BR5+#zp4`p1([9SxmaNr@3|bބ˕PK(Atv_{W 1/LLfg#!>1\wN#CZU.15d ٗIbB| DPBQA cK ȫ6G\ J!eAJ1B;}.0<4T&T̩c̦C)G0ɓVXgRg.9غ&QʏH$#GsB%.촛oZbnFF9Xt7Nf,j8Vcsv,`fi]KeC)hM-~ e/7эFo|iieɹͽN=oXjpcasKKwKC ԙԐf֫eAK"ݽ'Hi') b;QpF|Xr|ЅER\ltgK:E]Oۚ<~akgNxUdct\^v>hΦJ]l<iw?0%/nT^YH}xTu,=#fmZW_o!5/hw5Eor? {i|}sݱ1\z;ik^b)t.$$ćݭLH .^ ɗns!_BwkK)K d^ܰiiwTLIPQ9k.XǎJ!Y-)Bچ8?S3]6LFUZsVk)u-݃f[J$l>cD&$׷ϖ"Keq6+tk뻆kN,z >['R 9EA4J;Lxw %8x,W%AlqG=C)x+2j4MCI*mcGWzEH#wZ6jq*4 MȠ4N~>&N)K.XeŌ޿OAd FtZߛ:A ^N݅rErT&֊1e6zE湗(.7rs,:2c@:ua #6uy@}t!x|c ԟOo,õ**ԝ2k5م[E@ڠ }. 2$jm+:aKvH{H~ncךӢ]i3OSH]UQ^**Oll:- ^YчU8BoTAYz]8_[IBd< S|c|z$9Lc '*~#sgڧ+=h\X|  Djw@"5^ T.O-PHP-RYSxhZ%+h\wo õ2Q; G#ozy VAM\^͡7. X*}SG[Ju_˃gR: /O=Ow*=oxt 2EMUF{19b=dh!Mm"{@7+G換"^=-%6 +PCb˦O0x)R68_XhfD"ќR<6f*VMܳ>G».:+^| DKtLlk#oY>XZK*v1/)zPޣ@W|h4d޼i#[kH!ir=ZIn|~-AP3h剎ڵg 3Xl@ 8iPBbкSоr YPICk£wHy+՘M7m'uh*o[^1)9ԉ[Ș#s+d sWKWGkD8s-npdCTx>|r[AdW2Sۊہ 7?ŦK6F?ֽ@WNMkx؇]}nŠZ!K!C1r΂И(4E찰 ŧ<`QpZt$\i1V {bg܌`^<9EQZ Wa3ڙt*bofJةޖe{.< Wxa8)窸g%3@$σh4b VOt'K `\sE-u-zWl^Pz$͍(jxv 1ioMxܔZK FdE*bԫ5?m_꤃xسAbt.Ei B^GB>j:٠⣷mRn'LIߪ\xP}]95>7=ȥ3>:(qHldXX-o4OT*m.ZT֋=>s a;3ش5Cʗ0Tr~A.t8.;l щ0O-.q8vG$Fi|A/eٚuZDrD%]R hh3sR]t"#s{8yΙ#8 N#8,PoC1\Z=# ^6ReCӆ-M J2hX˶+Hf 蠢BiЋcuvP&fgNvc'6Yn4BMSOx +<74jCdc{pCϋq7Ϲܒ:8>Tt:<6W#2^s\$Ri2.f,#E,#dF$;RQ(d,Ƌd>ߩ+ߝۍCDtO+v uUv(n۬9ki/ҋ 6ryd1ߊ5ќ3[L>3PkҠ;D;0Iz43$= k_]` "Pn;عKH3|]78]njׯmmph~% rYK|RKˇ$>Vn8 8^Mbo}PP#MVʜP]aqzi _NP'PЬ0Jj)r@zw6vc[v3BU&ph[_66(7Ksy <0Æ㔾`[^% & uFIە"1Wf-,q[f9y?8P[DK??W;IЪ,ﶏ]" `8zM1C B'* ]7l-KbQIӡAhM.|Ѩ]6H%7y}E hIlGWI:dю]}r|q}{`JEp:\ADZ#p= C}| ZB؜ a 1%ߒHTOup|ː(7bcDyˡM,xۮ:$|7n^DZYu#_FDYAL2I6½V9w$5t݌ޢ k`Ynr|_;}6k) /r:pzi Jv{arYu[G&Tgn|ؠ+,z)s_R%,$-Ζva H2^!4z^K(a ]kgcve2ubmŃ0#B"0җDaPxd 8?~h8](ɓFHekS?5x*8oqF7F$%{5:QN\|]I 3$Ԯ¤ؘ4! =1vT o o=6w\!y2A}qV'1s  oC96 r"Gw:  x\;/t\yFj8R};ә*|6])!49})b]Bga{ +e_\+H27na U n3}:-@wT^h᫏)iBhtkA#B&,˖Gk@(uQﶡw충w4RpZn+)^FfʙL[Dɑƀ2EöU4ŬU:8ZQv}y>{FX.O5#[r[#%kazHe/OW$2."$3Mh nG4B:SH@M(z""zNLi9 7# "ʥ*MTj%eO\3 FUQO&?^-j2W>L&[컄%ա0ĘUy, 5>L)g1ȧ d>xDZb6-xr~ W:L@0KxQ+sK^xU/~6irSoep-jw> &z5,}*QׅBe VM\ UÕ6AjfX:7ТtT o,|"bbr +#ЬT}>.W%wvR[  xCSz<|x~U{ j@gpWxE_{{@P &jW8yE‘+q(KJ~ruP_ ZO}']W&܀M8VJRUaJgj4?oAr;(ir=Yph)߯mQDcZN,&UÓ i#@ʆE6pFՉIsfa~EгppVĎ5DWyM(92dw2L$)0M~>U2&2:2O rr=uCHԇ<V 5_(ddEf2DFˁfbQGRT# g-N SYA3nE&5$R=,]陚.D=hőM\@YXMVxZ- SҲkϊ2Ɋ'gM112.i$23 ] ΕWަd ULRos`'{)p]&eʫI2դħ ᬅM&F[5W5Ȅr#DaRY}osIѨX3%W}46ּ©ȣ_u}ZGf(&dY,+,5DZyQ4h88f'tg/ˍ'dM<=;Oҫx .?kgoS}ov"ir`{j:* [Ń>(0<{^M6K/mNH+ Q,$6dE6jXHQ{ߖE8SZP.ʢ:/{\\9 yT<ʽY0 x mM?/VEgS5b}lYI#tiO>fNN=7=S.޿XzĬ 7BΤǫh뭨=e2< , >N FԤ|.Gi# j:U/--([ AjD/Vl.B䖈dY̤0{t[Vb :x' 1`~Lo+e|Ұ%;o`_K>‹jΆ%vOd,Nyœi/T=&$W4ӌke^{k#*O4Aa )˴+hw]e- _aInr9o2E㉮2[:LAu9:?vye4_g~`WB> *_*U`Rn+inG֤wSO=H80G 5|fZa8 x{r]Jب$K1LHy? AG *R"bo|UZԾ7K/՚}>)Zͭv/%k8~Z%ӱu\I+ ps}5kƜ 0!C.Oyټ3!&uüH@|s܇;,~pǹ`~'w:?~@ߡ8r^?ũ$x|g# ɣ<]~>t~i>'-z#u3vNj2IVT#s tQ0ꨮ"&c 4a.EKkliM`b'-tE t}mCWDY4fi2Fda( V{p,>%=cCm5YM Y2LfC|52֚Z#9HcxKJ ^u y!w3P(_EAS䡲ożB̈ZC ؖ.sS A<JDgRT;K"&yM#_| y V6AT3H臧2}\wxC"Bt 7'es,V:%4'YŸ.y=]2[,7iZW3ȑsf|nmQR0''m>4&tsSУ־Rч>5#(?R U} \%o۲pt Ui"8!=y鞃PUϦPZ.Y._WVt"x/=#W%_>tU[Qz(y.+;kI<za^d"{-/$SqlYI5ACh9lma m;vD7q\Ş}> ]Jf}H/S^kުg.2w9B+I5'@"Dl4QK#a^DI8u<|X:)Ԏ&qH ;-BsmJa'BP8ݦ8zI+gGɔ`î0JE moHVo+ d=sD`Ȃ|˸[Jz,N|!I6!GSj/x+?~ԲY5-ތZ2) Ӹ'Grb&BTL~ Y10q4%Wg%(9+Q {8 &M~ F+v6DY4%7Aq2~&Y?D8Che{SDoipȩqenG=< b_Yb̅LnQ_aJg&$r@,N/ӄC"6&qAB#&)ùlnihΌLK=rib$ <̈ƿ,{7v(宬d`T9tj42VVDvԦ QNMk:rQz͍1mn`~Q.$ IM`'Z-6Y8f+˟GpҎ(vS7bk=RaۆbW~JoxH}4=J葿YreՃ*,0ۺS/<83ل2ǻVevҲd[ B׆*'Lƚ{Ti]Ll.=Q$w/n QųTᲶ ׎?·44nj-2ALGsq[t wuދ뫬~wӴXVN6XR}Pƹ;'o-40PffS0m|%~q2=(#D@%1_ AhŠ.эp^^e^W@V:jg@LpԼ/h \?.J`7uE(@xKc-ӓPG.1OfYIf`[`/`i~3fEKSֵ4txMQaNb Óih׊J-JݵM2߂'=_ T[]}*3Hw `餬X`6V 8Q+}g+pOԣ!rrڕ .ޣ9qh]|ޘk{GvR,>^"H15lx#>ŇO=9>v^=Ki-eU;J^Bd o"A%{}k{8 NIڦug;k;=j[Iu,$2;=@J"%$3Ӌ-  `B 箥Vb$t*-ǫnLqvJ3"N0,ucioqYd3sU0i#?FaUn**|igOzpoˠɏ NDgY=ް|W}NM4ql3|@QEt7/|>dwOGHOC9ވ&ЭTf.@ZW \4fO 9\Ag_yPvj%5d$_?fv}e6?:4QlM6(eNsԁҼa?[tغFX{SfHŁHԄAE췇 -2mTl5:w ׹(`a8T5aG(gGʒ9+TLf3(PwiCbM-ݍ綧y1tzjQ&\CsǺX J%]$G)2N4نt;wT'|d?Qn)leԌnݳr%5E"]ZzNx3:ŻCDF_/Wb=Pf-r3|qѢrܦ_\W}㏌ȢetDX#w<|ThKGelb#ÿg+΋Hy 'v țY$'9zρ`F ^#, dUǦ}/|9faN?(639fqVߊI'™ZDe*ED&5܆>Y)9ɓ1:[n"Y{oJawJ5{םRvB)$KIRl {Ӭ]<+RWjG/:V_EWw]/q(- Z/uHWUxV%] GV .85ҝ% N) /eb8ֽTJ}F 'ImkH ~akѴx#i%:L,XCM7$v,-U L g9s e+Rh&Q,{B>yOE ֛+L)BVw ~fÙ[(d0`u; [\jr R*hTpz*<+sp9yNwwKmy# wYw,I[p赾 N2zgb(1h( K\hc"mUL+dY"W_Jf QI~|Q] oQ܏l˭ DsFnšё :5 ˥ N&@ФKjv^t\trt\@U8zlߚ XB例\+EJmo,1Kzpp &@,ܬYzX|>3N7dKj}7h. ڔR/NM2lW_ ;XDt5`zwd6ȴBL{Yi鿬f^=嵐n=~/q_=rZqaYO.3Q gԜ|e/ܙ[x5^*͉e~6caPֵch GQ{MQ`KwΤwouβEI̥D8dE /: fk!5d|6s]ģ߼|G{>KV׳'D}5=I%A&qVWS Q=^Ȥ_)ē?BڠW$#$" EOJ?@^Uf ˇ,TAVݹӧT7ͭߛ[ջfbއjmg"ZBݕy%fm`A^Id߿?.$J;wvtZ~8t46}0b>?,܌y&{kL٬b}ATL${HjM <rwOP־&_ 4 Et-YRĮ&qxyXt]d&ei֔ޒ(Y©6'9}'R&UU ^6 =#И2 jth? 5BIԥfMē؋"ŜҹQk-a=nT7f8xhdvqaKx-w&do'ڴ8>R07&֌O !.-7['; DS鄓!jp\+@WYOVՇe8Vεyޯ`jNeE QLE |!{@Wnqq(rȫf *u![Qi +O]]53mT1zHzmt>; h?P=*?pGԘZW2f4&3[|C;li1g0g0lf0gkI`dsc,-%`? s*8Sk`:hH)  VZJP|f: E12`joUb)^E$P*QJPys.> _P C(P#ˡ4_&Jykpt-sJ(Uj(b ۹0$%@ضF_eF ySJ=6O건ʜwG 8ҼW[)1r="9ÇzBr(em<_t. ƨ3)f+H"FGyGy*ł-G_5疧93qbI}|:wH'B輴]oԒ{STkVzk"]hAAS{^q 4&HV\'IoU%]Θ[rT8UGPX 7랛XRQ6,p/96aHAA( IYɣY݀S0)M?$ 4d?!J !Hu渕!0û[OQQ bsI 0.?%zeѥX>i%-M=9O9%GYL"iZ+zZG[ {tdSh (މF4PjC.zxCS&t/L׶8>].pK˪Y@uH/ 6:% 7f*΍laܣ}e 틵q6(_WBTD6JnUwo<Wz5;o,5 q:^Wd;UCz~ڞr^jNe]4$1SR (8c+兏H`';s0G8o@$7ߙLq(H YzH'VliQd%Q'{ ilt-O^ ꙚM^Pe_-Zk/.{(Zݧ+s]Yҋ?! Ԯ*IaYZ5&@Y6>td!G!gJ*~g/9bbZP|y gH2tg[3haiUW3E i93``@"'f<*o5kR.7I^l-e2R/q=0AVZו \ck ,li홥w?k:0varrsf؞7@.ԁaPs]_`F]NZRAc D0ꖢڨXW ׹t|kj-iX&3 8Nwĩ7@|,~Ӂ;4c]tJq]4,^=d3ZyBaR(% Hȱ;vC@P03)8!a/A H?n4w) 6ڕ|s1X棐^t1PUOR2.\ʜpaz{P` xY4ob/Z:#$+ŞY3LҜOwζO+j-:d  H@kD>n4Nk|2쌠Vkms{%Q-/JN S1#khF>v?u[/dFv^bN8ykk!yEgkFϟ<2}07C#cWk;K˹oH3˿bMzOoJ,X"hC{?Sq./B(P#<,db/NQg8TЉ3 Ke=$}e#Jm*Ϊ1 |$b$z"x }=g]hY`{X)PA԰܋n/Y2Yiy#|h[CxoI=vd_0RY'ߡHzTSR-M4_E{I '6L#Ҝg6cL3.,7%2)\"JRysqSvۧ{9 6e5 |eql4P< P94_ė qY[aۢr=Y nME6^0'^Z# I䪰L㉪Q;*IDhsn1M ذX(-z)oX4朹|2=+Գsm$JE-Z҆T8_YY5LWKe7.[q߯7R{ K{#Pt&D}&5͈J4њw'uB>]fc e`-j|i!V)![r,~H2uuk*hD+F=8nlidt>wGc(FifiVO1AU1W[#dqinrK-[ajqn߲*:;§85!Q$2*j-{VUhTPԶ“4ShIP>^}hGnT'OzcppzdԩAq $F>tSCD(k^#Za{郾*=i'#+B;*R!<:CQ l%)C6'%w3"O1zUAWsyi/9IIQ:kYsQoʠ=&(0HQdx} CݽF Y*":Wrt]R>qf*# #9(}@_^ѐ얼LXD"mwINBˆv9H"Xs{}Yoh0́<d:w*̓\(q@\ ݈$ qB\ISkN!ٳ چ H5ÐuKvkJ( 8S@iCTWC'N?CQFk|xR|2GvGuޝivRbѰWkW"~0')fx5<6|(vɷ]>JlbsY&сn뭗 ޚPGs`#WmʽȨWnP8*R]٬$z,k-~3&[/waTd Tx(;sK|U䢞~Q{,N34YpG8ȃɷ5?Kfq~\j?.ڏKǥRqv=yc8NGƇNp+F W,ghH>!hH>!gH]ݏֈGEi;:Is[J(k^™M reŶS&KׅnUdKR*(ovS Z$1d<-JxbIA9 "ߐvv}eNPKE0Gv}l.D~| ?J&0pE*j^Z{1촔E$yLʗsR7xLnF"e=#*6}MYD%h0?.8o3Kf Цv"`]0M/_g9̀Bީ' a0i-V4j4^y~F4.M܍U@w77'U~)]*ΜHV# ; JOF/"|jґ`/X% |oHKߢmHc|k# P8i@NrC\Pjz^f +aHťS@T,u@̷Q,OAx k,`0Nav}ʼnVHAbsLKoLkοz7,,J*6.k/WlomрKZfE 6Ymk:[ , &,,B (zjsNa O!}p<.R* UN V8AoTS  |Tj<t56wM@G p >ъFIXSnb,}ut}ڟͦިP\KAI0 EP4)qجt-ꍢ;Q~s > Oա9pUB Q ;TU-g5dQHŜ=7RmYApBA%UZ Ѡ-tB^qÌXƗŠ]AWjQN /θPzFŞ$t(B4j~ɰҥ؁㈻ +c1W~$s3 XJ|@gq(NC.n8ScxbWl~6[jD$+O+oTSgLL"8%RނbqfDIG "ķ<l3vB@i!4(;M |<*V`"-!묗[m4î*Pǣ`тuke* /-#6I+׍BʦYzSc0 [(_C JZLrMh r ^<IRg3>tV;DjBbYQmnLM\5ay╿K3Y!0XMfjLM}K'l':Pn۩=ǃ<*Z\~Fk^Z$cU~KRZX!:E-O *13*$!¤dH(n#܀i,2zO߱qu*(F#HB"EbV2TTOp% *ω;إg[FdFYt ǥ9,Ylii]nAP AA";1ai(EكPReLsD3AtBsr,Aw,q O 0blVJ-\ ?%ã@)M(J*b=L/^x268mw)RJyVSTЩ]S kP`WdoMų[ڗpb}wVU*+{. F_OZ>9YbCEf⛁Lu8T8յaZ;,S]s7P{)mi(Jb߾\ǭU<UnBJD2mn*X^ůI2D! 1 #hGi,2сģ&IG-W8@ ssr̙nb[y)_|@F#i`q1g7Ni:L4Z>(X!jC,WhFd&)5 *лf*}AUہDWnŻ'~_&ܽU+Bӥ=i2n63ev9F%Ż;z4]:`R7WT`/χe9wSz8 ֱ!pߖQM7eKQ2r)}CG@x s{<LD,G< k\/f?hvQg=xU`Я0f# Bi^H&L[|]eTTVCʫF1yϹ~Ӏ_˯"[ue9;ʢQy2-,e: ~l77jM,i:ͦÿ"hA,Sz.nü]-T9}'.juO^"DHP !0b0JZ>Uԁ8C֦:% jj=E7?%*rC>G|q̙if݇]ũ } *v$V~UX`xN ӣK  L;j.Nݟ_ PVkaQ.7r3kZp(i.w1`}#1~h=<;xE?!fdaꖟb˃Ձ)P|Ʒ>4&XX<׍s(Ph~~ 4֦i efP5v3|ۜ`3qBd/u=[WI9[<`rq+;a> \rnEǂ{T5wOi MpaKM}7Sw~O` ln-"hy\D<<2_6.L]o7FF] Y*nMZJ*ϘK94o#ys4*)k8"1= H *(TRS(#91%Y3ZKOfL<[܇˗\k#t.3b ۙ% /Yפ`o}'Vz<`<aGr݀|<ee7.T1hH80 !<їOFiO9i -pN2pWlx`Po NXu͆X/͛֫W<v)DH&t@!gbo*ZnIS5Y lƋ(|I[-Z`m[YMgb h9vw<4 3 7+kw9O x2 ]nh~+6APjј$@;oPE`%8bƝ!ZDْnACNָJm;$A7(MgP46גlM!D ceաC#|?d:x(x)sAuYl17EIGr"#œOg*(qm ۆQFU1j@)>Lbs]1|S#ž\DW{zf-St`8`: #z/Ue?YN凛8YXV5?g?CdX(Bؽ' $O#+=px ]7u0%n0U%)'~™g=x&Gl'-Qj*pDs\?~bb $NiDbAv˽ B{Sm6 |dâ8cQ, +zGf~)S qӭqE7UN<23ceA ]?%՘ʎW%Ѣ:F7O:etc5)o\F`:ꅖmjUkt>w#*#|\|g⹱XaF<5(DD%pcam nl\\ӄxs6SQxufWˬKZ-nqZ:L䝞ѷwߦI@iWZj3llVB[]kZx95J Ji&B4VR-!tU*;yl$t|5"κEJϷ €U$((f@)PwAY|<~6z4A eJMZ^ILUQMܴ4H3 -ќ-gQW1i0HBir Q/~ H'PTs<:%﹜%)Bi6yݠw+Oo} :Is<=DjjsK:Qݱ ͛pU8ʈt?.\. FLE<]N:HZ ,B/ShhDMzJCUWʔ4֞Q-{F$HG#"l$Z, PxsXc\0]/Jc1{.6PA;:u2zv?k ((+jSzp Й}좤:]6~ɡ1rhC*ZUf;0l} _# 1rz |@7_QsS~Y& j)%hcN+%GoJ+<G6ahb Rޱ]h_pUьKڧ 1n:Jrk#S;*x4ƃ>.Dzdo ]iZd8Z!};GmR$ic ,^qn9! Ecw}߅:_VYOxGOF`w Z{8!.\g-ZO/҉w|"XA _uX08uVoD[?ܜ;5qS/tpI˛N8^5mwĊ1d"R%\`/ K5y3z@J`2@AtRREJ/$R?hi!"B"}T| n>*ZN9i+6^NcS-"vF8ZjPhcMTLqp=ZipwY+|@Gڇa I,gi{-XcK2 IMxd5Sv} [gnq7o 3=?h++8T>Aω ܉RH X! $xR|FDNMA4 U;4rYZ'8  [E$%&opJoI&q?Vz[*-܉ޑJ &.VSH#+/,bX^ U\OD0k}%ŀIMDgiU>b_*{@|5/8kg/l.o"bV@K4<Y3ͨ$QJUK~߮_٫z~o}S)ex٭~oXoƲۼ6pWJ,l-Q}e_k}R;}F"'ˣ{onݘ|,8rURՙZv[/ WIdme7E[8l5DF߭n  -n+]o;8 y) br{y7wX'~/M*{%zWz{%W{%hti(+1JhjKjWY꣩_9:{H^ f#DcsY&PV ׹x?}ZѼ5ud}40NQ\4~< oMW{iA9RmEΌj{͛$RjXQ| [{j%O&Xzjm!q A_mz5%>):-0ӝ\bXB l3Wq㵶usj/^U=VSWWkSWk3֖í< iyȫV^unakk;-llƎÝ< i)WK';yrZ[.# |7(j4Mp`bF&`#SwJ[ɘ8yUeu&* ҆7o{HH:[G ۭq @ ~5qkָt%||0|2 >vD휽\DTnFJj]搞ʬܨre~'tzů*;h~r*#i5^8$7,s65-UBHX* Ql !h4*!/nm' Ԛ9TwkŝcY;egs&TPr_;+#vYo7[Xº\/(HK -6T2MU+sYɚP"Z:w݆;5XEXP:|4P!5TA5QDPMĆX5X56&یR "rBK䬅8R֪ΐΨ;28؀u_9ADm(BlăSӿ`XP@k̺0|h<=߸ܔqI2ZZ2߁e3C3m>)ˠ|9EX1G 9H9l<'{QyJ3s+.N-ڲ)Gk LO|VPǭѸ󪒜 @1oݤ_TW=ʒQ-hXi ԟJizL܈jKֱ0{8;`$*cOcT1%6T֌HˢnUgԕ ij6cD5O:p1ҕj[YYgj.GKgw6j9 S4D̞oA7/WjXXb[eW@KVӥ.*dkatGeb:5Zf!l_lcVlglkF[j`6;hÃ9 f5Pm0A7,1Z5h*>~yy\8 lRyɫi5PELxXї uzx046_RvvꉺE6uEn&ny([dFѺnv8o'.nRN睢8l%n睢:z <;ގh#TO9;6hT#D+G$ֹr|D+G$yDr+G$2wDҖ+^G$X$I9`bVTjvQ!91,à EibThUADDWTH*4!*$ZHBi-*ֵA 64^W|J%]k񰙬[/7ȕ3nTlh*!8|,K=uGc5KLT Ń *S@XA,X8~3KV4-O¼4zQtx$C<Iz> fg-ejѩ7s+r53Xy<[ 4V.h j<(Q|8ƝIN^_kieL) R4{2yeO!nGJ4)zF14yt+lNϨZb([V&Ąp+U#@OtA.T8pWfYs[~<{j{ ӟ\`̹"$3£}Լիִw=c%CyMQmİ K aYzQ EAn!MU[E;j(FQiUۅ;]ۅ.eѳ]tNю- r(c|]@L~iI ]lT1= 6S6K͒`4 v2^ l,[O]0Z0(Ԅ*؝DԆ1[%fi:!S+`_ ^t@'fw휟Qc[[c;vΨhfLj++oQCۏ~lkj[vVZog|GNV;[[5r!WX%],X3( υZ?T@JbQ\4w<3}<Ւ 'go{'4/)yq kÅZtdv-abC^vR vSG4o]V{K\'zFݤ<(n(FQQlGy+Y;Yŭ޺V`V<;XuYZA3z^婸}*nBff޹wV`Vy (w0G0G.w`.\9k5V,re)WN,\YBi̙"r,S_RVifYέX͒Ec{"+"CuV7_3yVM) ;%uǭa눽 r@$oi$dTҺMNfrs^{ }Yzs 2R:=FMVDׅgN<7ITN++׬ͫ2"jw䅅Th2/ݚ|B;wkrk&u͒MdNM6iފnm"@5v*"Լ5Vd 5&CUdy7j"CͻPsڼ 5Wͻ*2y7ڌPvѮO_Io2;L~Bq+it1Eyı)tmsjO0 '=nEkJU2̐@oRǃx֚44Nשcyt|Kӗ 'm1 N}a0r6cVl>) W>/XA V!7mH0cgtA9k짠Q?{v1mXw>q9Tw-Ln9k)ܺCWy L~a7{^_סFT"L=^c֪'*IC^ 4wԷwbr#LV<iGq0tFc$0>B*"6k/ U.meIȬ!(N(eY, 1~>2)(Ld?駦23QSs{N@;P0e%&|4_"}^Z%iMKM3{Á(F;[USFuc`0<3FA( 0>ubڃצwYOёr]`ܹ3_0۲3{f1~Ղx1xס4Ѿ00_!.'C<g÷ &ZdMgxwn/2Tx>f\Zlbz[qgo;ep2;-~-v\ -{7,_dn^9I'h JÌ|a^0y\ol _ܙfSWf1ahn6 ߵ,] ?oywa&^$,!{ -7 ~gszp?zE[mVFǞ;g>f5xwnۗq ̩ߢB *ѕ, H4Gպ F]_ؓ 6a-K Bu`*QZ\ƠBOd eG+0D"{}j}'`}ãFz!хWA)lxM1N`}Kkq"7S9ɠ7TG\/-( T,Peu}+Q'9$@'ޙT `Ll8.\ aq8hHبu1:4^DnƣryjN1?5SC51C.JiDv ^ Oh \384hCrU@$9!m<3qvh}ڏnElz=Η !.`}<6c [*yՃ9^s17{3aGep<p0L:&eĉӻZ`Q΅^B*Sah77aӕFǮZo cn5fL>m[n~3INЙV@\`@l]i $d@Z._f1i O8wZջaz*S(wa!-P(ΞI\UI M(\nH=dg_8 ^$:.Jv20'HMTR̙M$T.Y< ,RhNAn,ܾ=jKz4/};P<ఇcKkv |KޞA>0QCK8OԵuu/Q~xipiMLx{wQF:L WTrŒc|QJUr]>X=K L*ཥZ8h?t*_Zq;ě>v[=/"1E _/\Bth܋`6tta el~ɿT Qy8"X{RXXDQKQcU ck.}K0@y0oL~gc֍o=b*U'Ejwq00vxu3qSǞ՟X7p< o/G-CU\Gس3n!]!Jsӈ}Z&OHR)/280̖x)Og;rRf0%\`V ms?je3NIc,_B :o*uܞ󪬢U48)^UfUEkq`2jq\ 1^'} n].-aEmì᪍aHy~%D5^HFMk>}[ zLe#')d1t&xև]?+:K0}Iv`2.nx)7( @8'0ӆ­6XZ.iN7ZJ9g wjl4#Xz\g,D>ś9օ)"V8AD7 _'erה[T:ox0+RZ^MsW)h1 ;[ڴWڙt uM%k`G㌶+=Ve]1ZsI}dcRs89G [{!@] Tn-@x LAa 7%ׄ6c=]ti]XouOTQ7;xv"3Ť4@L XkdhyB^ E>BQu/.7WeDj'*aߩay-PB | 7 jX>s- ?t7{b!av^bmvlvNcTŬ1fW08Q<5")5 =WmEc<⧔q Y/#wj QQ2G?V,ʝ=+5D<%j0ߢTPZ ^A }`8짶豰Jb`"F$[S.Nu*BJ?ZOlAkLr3+W&sJ+Xu ϯ•5>a"sn-hEc)ι7N=pUnd`Es7~lfy&y?rfAE$R:z)BWΖRzx+kA8dGV륂HJq4e!N <<TaR#WrnҞbvDnKhk{n.3Ҟ w3Zx4gLZ~I$r1|"/q)#6\E@5# >u0$|Z&Rrжg>we\F*9/fgrF5z MXΚF݂oKTsY6iq`rnaSj7E46' y 7z2s|D^;=hOvQ3^Uz ֹg' О-犸 7Ix; `@6v/i;TJF&w>Fs|zXL_FP]B& -JBSA}|f9& 4AK{ /Pn1`ؾ%:]YL ]t o69,12^vF&Oex뵊T/Lsagàٮ ~%+X_ȑ VSgb_;/CRq!,aPek ?tZ51ruM\Xr-g`jZWtn&fn u>;R$Uq7%|&70"ܫA w1!14{'#tv؁I;UPU*A:;3/OfN?{|\)Q, L.5z]N;4Tt!#:Anjeʜ--*~lN( L~OVs;l`70{fy(S(~5A}wsvbBAK߇YcSӳ L,-а9jO߽| a5YQRh=;'.Ȅ`a8-}óTf[z#8ulX>y-(NY֑8,9nB S`A%!Y$Ƈj,npEvV%W2ڰU/#7R1ⴹ-B*H䵜l)te4e } i2? VUg'奇]n9I_mJ NgFD^.euKp9ŀǔlb$L%ŵ5uہK25bM$}7w.aή[>qZ (~o.R`ͯã|)ψŜ.cLkqY7H(l ,'x?.WZTYoB9p[ @Ҥv8B$vK1Jq;({?o]hKvAYI''xW{63׍WJ-gz|Fw5O 4||[6%M8Z`P8Ϛ̩CH0? Ħl&(`i<-µ/1e$D sE>OF.gU07yh v`aCl=JHPGm_V(~QJ(bHfZׇPvУdpC{<|@pVz0aۘw F5*X <DSn_(L_rDqJ:ަIplFsF#A?x_{ckh{\K:][qWop̾zCqftzW"=;Ʇ N2Z[`_ PCT@x`u&\oxYB*cD:8ė6JS\DD_ԅױхƇ/ǃX bcKI[G-d8{[8?'ys`C}0bٙ~܀7!Lҽ[Rms3T*JRTutLSJ[]dXS`"K0ߴCmo풓A1٨ivrq=@MBEbAFge\Kd":/ Yjeٖ!qL mkpUŢJ<)F/2ˍ9syB\cxdzw=ToM8,wJzZá::urĽLu<;\$ %GCBp7lwjO2iۯ??iTvZ n|ڋȊQb\w_L!N-|Oy2͓q2Hy4zaٚy@!$Cf0u劫ErtU99m!iuۊ nOC-7&B{-;IYY5ܗVyB#Z4CXY^0YEZ9'=D&dRxzT|wjaX;Y̫tlT~fZ:C\nm軒𘦶e6Id^2Oc-X#hh+sY]-CffўBuok5D Ί6QRДncv|,lb!TC~\ܸLcGOpvM<ߞZV[wq&pfBFwj!hSLkUL,.#6&^"\<dZ< rfڱ3bq7+r?4V5E\jde_e&2:f?<mzB>b#f:|bH B0@el;$A\d:G}޼> yN/^됧 ԛ>%(R"=]*?ɗ58-'(UQGފL>ʧIiY̳5N(fsBzwYQ)Հ|rؖKҋ>3n:DIbx< TxU ~Hnghj~ 5Oޓ$Fp(+f{bKLMF ^ Ec';&}qfk'ELö++f !1\tid,}V0D p\0}2c=%V ˾!GF>iJx?%k-_QӜgK7n bikTǍfnlQ+KG96[,x ~3^õ!g`6~4iz|:vݓA+7Y̓^[MVzGI0wvjLxxB~S;XygQ4;> ,"B~‹LddO8':mY?b~G0msS"dbdMQc &F:W o`g@㥞hV$[. cXT0&[`)RAqmMFo^ Q&ؔ,QPMMd):nî^o@\rx긆kȐ%+OFG;nvpm>NCmz\i)Sh༖˓:kA~=drsk^E]MtSV$uMc֜j8od&FrJ )u\ܭw!,SbY!8ՀFW1C4ޭU[yuRΆ3G1Bkҹt:F%9L47"i&nqT<>j+/d</`q}AQXahOsn/NK(аמ:r\%؆Nv?h>ATT2_OmK IIAwQw*4lM|wphժ`l3[~TS"o! V1zh[NG>faze<̝W|D07*:VSrDzum+^O?~'!aa<1 wɴ'T-{mG2_X$Ac:!2 HI\E7`֘7\ #QQ9a, >Y-AfՓ͎ ۋ..Dyh1R%I̙$"}oބwmh#]\p=9w v[M!pc*URG@xN߀ h!<  Th9=3H^ @4`TJDc^jDY[@n>ے@ @ٚ%ч1M˘&҇$4m Cv]Cʯ6ãN/,pe OAuC1UE<";=>u#ՃRk[s#.ɚ#2lcY0ir\'{*_+W6a{=z`\tSYĦȶ:]k4!)[ U>.LAͥ~U;F_{W8B#@|]惔S`·Q[_ Z^hz1h/ TQ&V=~jf]="> !z_;%:&a);Y,pTe`pC+K_ 1cd{rH 8WϪYpg/~;ohe:@*5c%g! J"2<|Еsl-`|ճ>$:L!'y)p ,QUry4e &.ܶ;4>"?_]&Q7fW.̨8&,p:JduNu%fW\m.bU1i\Wh bm4}gUg9Byp-H я{>"I,euL/t'̩?3qGix3(a#; դC/jlʡԪ8X)Fvk 2U y8g\&`|f0Vxj@FD}.'i2Ő 3@ݏU4:0 !IBc% P?`%S'V$:*vVa䊘%.P9ըٔHJ$CRUV \9͊I JV^m ~9h6kԜxHժ֛b\RK+AadӣdDm bڢem}fERq 0`q(ij֦U!axL/ZdzhyL7DI6JBj0_Lvk)Pkj͗*W S+AɐOXhLrS3y 'T L9X-&g Ggoբý֞,PdOnA=r9/ oQ#I9M-ԗI{\)l5RY\-z[he׬ӨS8,^8,@U> C`mJ,;K?@ $1%jnZs qQKyG`nE^*>}ke8qt%hx2q^MQOm'.V{ysR4x4v Vsݠ!r>[fWdCs7ޢO\ O;M3{;}i >=H]5ԯaU]11 BJYɻ_8j鐽"h@3>Jh2NpF!5,k/v i|Z:Fa <@rLF?1jFTeF?SRi38hPńj: `?)M!haWn92ky |o~f6>Zfxx!԰U"c;QP_C/Ϙ;2yrmeiDX)YPH`<'5996iP2Ȧ Ⱥz>LS_Y9k F ITN *M@u]hB! uY2X&4 [y-94 ,]QԵ撹^]B>'A(;.{.y;S)`uBSd[<gQ<"k |Z;gl05{u٤ZY8qC\0Ij65`0s]Qs䫷SSx'p螞4;&Qx548=l~"v A[] |8o[ڽkb]x7ō&{ZZl{.vUcGMS0X4" 8h9G5w#")YJ[. &mPiTa?[A#!,UHEer*h*+K7 BpKzfs3jCX` `c$#@:kfscc*{!VAc3@uB4v Q(Mg#tEgg@ a)^UNêñY"mWؑuMeoZ· 0vn*m~Ys܇GDĽՕqOR3,0O2=ނs A;r>:f-]7;,& D}3a8L,536E3Fnu#ph%A]~򻄰Q-cV2XL쟂M-=E0^y$"1+Eb79Z z J(b4rq! tYَ<3Ylf<̢.UfкfPbf -6ȆE##R+g:DZcg?^S<)[Ͱd]tx&A8ѥq"FG{B68lmq2Aa//DH)u'zQ}LIQgE4R 8C{Tpfm?3~B$Ӓ#xM]aE 4yh=Fb4 >nk~2"4v%&53fx 2Ԅ$[Y2'p&-! py i膿A+bY5v3 [E3EWɏf`fcIICKֻghO|-M |CP{V]!wd^5I*K4I2f!n"+PbxqȆ*

hJXN]DH/ ck BRuyU [d" !nmt>@hxB2yoƎA_0Y5 uv\0fg&iQdE?u3*a.z/qO@&2%+X6@ ]xp >&NW=r£½/\cTTv"9D.Y}}9rQF6f)| P-`}ɤG.M[D%qtBV8۩!-%ar"ǖ|w)CXQJ81候!kc9ٍy ($и@䞂#iU9Ak5dOϣ~+N?\}C'oǐQ%T#]-ӪjͰE]0U%mPϹ7*TZWe/?nѐ@[ i:`KQ1k%4m\ީty$t6Rͨ&,~R2Ge6~OJse6֋J8I#z@ ^ \ !` {ci;F>jviLL={^~^zE?o2^@Ͽ1{DH8oq8&lF'g䁙 7f픣CYU2~MYX_HFh̼&*@H1V3ӵFʙqq2bjFMwΛHt/N8vje"ņpWAg ޷* i?(f#r?h| <;uUEWEh$,f$J k}y8n<4 ʂ{#E+(?\ QOh%,KK?7Eˎ=N-pW̕юU>e> ,B3MF镪 jj,ZF<~_O;nϘrWef6?'T|_q`H>4HIrQdu|}AE1Z V~V_/VZw0dԦ}-}]>aʾ&D* '$q6{q|Sh:+/ш3d9QP^N *[:x^'8&2I ' KBUh#;@$@S',AG~( f”[$xDЀ,(u3At=\dLk #"tHCP|(7ˀb2>("A)A7SzBAx3m4MPO!BBZ 1& Sc!:XشBLG215b5ET\4cOvJhDkq(B~70O !(tf*,%t\vyN R(Uu;uBgr@G? &Fo8ߙ59P//^lL%rԍU ;4r0X]E١mXz`bhTC{+n|~ԥ0"0 9g2CfZP=xW&}3e)4wXF8b S\p(IU/Jݢ6S|AF|b|"9q@Q@QLvA(3J(d'+FD3"+h΋Pt~OidHʖŲڙqs3put~Tb@vrD^ϭa2 /TҠfψ ӴƓ_/`]L515Dyr3&+=? ru4kc #z2Vӱ0XSuo*8 3l a"I\)"d+mȖkM %/MV\&Lit]h,~58߽P=_mf7i͓*Rm}v)57 1L4XHkYk9@`5DXd,qx DlS%O4ThdU SqHY}᠙eE"4@^xx]3 5.9 ~O?U@YBK<eu\gw/cDAD:;,'TWPDXKQ5 h+OJx8<@YR);$f9{ Zl@̭=cHc{+v72:,:{\},LXB:};:r;u2pҶLChjR|_J)'GqPk/j_;(';8k/u:H{{'Nh2nGP/#ΰ}kF#[5i@.A.a2åA4//G{/G v|0qkpuۛIu@U3.>׫uuQ)w<=ligv>is枅D6!($SozQfo7߇OazvC֭C@:Q&E4 /@xyq`jNӔfyY㿧 T,cHiEJň% !5zAjg 9mDOhJ44B(Ha RB2w?pzVOS*6._e6|xyA (GPpp 0_d[L('HPU l oC s|Q 4D [%T…*Vs99h>`eA+n%{$HH|?H?@37< "F>]7@w5,RT/O H*G;9F dw>g L!xMZbZ]C-y Vh>\5TRiB\W*Bz H++Zgj$% on5*Rպ7ɋZ,,N Io LVT:- 9>5Va+JkuJI%S")R0C/3%eǏSs@֬\OGـEA [38隊 BqXJv 8pL}C9/I1/I);S~*:?5v~*{?5v*?5!p*185"cI:*Eq͉11|S d'#d8YgLJAG!6 j٪Aua'0%8f:=Uѝ=`|<-TCzZ5 (9D]fJũ^{̿nȾz,0W3 EsE! 6t wPyQoTMDu%/Dx [1=x};9;Vzi1/ āWP\奬gezhö4B7.AjDJV*BLa :T_VJۅc"3"Z;ֿU#s#j; g06FA#N՚ٚowÓ^aZxPN^ZIImz}o^m^{r5P_j#~oZ[Y_o_ZxYxfV{^X[XY{2 yirPLW7޼$8l/W?FDXA8jR[^+5>DvY5SɁ jfcZ}}5 뛗kdojjk1k3rPNjYiMJ5 L"nj_-$ .GB[BaD:|ˊói0ëeDJ5KAMv* 7Xb3a4$ {;'"0 0$zK\hс% ܆'޺~*=~P, CbbCWu}X׶Z<jf ࡛?TSif 4S/u7gieIҞ#q<5Uu?kp,Ϸ ~'?PM>ej:@е6RLLfJ#;NyjbU)#NsGPz\8@d:x!SEQ!۟:C51>ef4w?FϨ<'Uqj3|ܩ*56Uuj۹m[&v~z۹m&y۹9n['y۹yn['v~۹n'vn{mq͛kW`5zFJ!6m2J&7^%!ڐS>mҁrtlwF7+ U3߭wǰ;F?owutnukU('j/fU թe۾M35R_B hKMʏ jzs֠ZBYPo;UkI_i?=,軃mNnDa_r,F`7(~ f#`BNJE;JbA-,k uȢnQjY:LZK-Kb]=װ1>;~]v"}̮'Q B{OB= %?PXWKണ4p5SpuιڻA2 IAϭ^3q]F=w={GMpL←9@ԨsrC;Y3AIS?{Ȫ8c! qseT*MFrv9l: ]~@t~ܒ;2"MjK8p7o vjn&axߓ ';$C&r_M?{>:ϽNRuz/ [Toy7=ʹv3?xo:[f r,e飒Աe @ajO+/o~no~~GwOTO 6T?U^k_4 4G]鎠|)EsE8:?U_\<WoO}RVOþWxrwx.AOSTm2ڨ?jE[4CAM SA,FY.\dѹasC" #܉2|Z"_J[GOĿ/&3+_%=Ee,i4Cĭ,>_O͐fS l[r_0:5BNpSy&밷Jڴ8}F!@Ej{ߟ tx?a ="uKlIA( r~SFr T%$#p΃Y={o !Vw97;xz\JGz6 raF ﱨ* - b!}{G7r"N8%qYmRKl(,yl{@AT檢GqrԵjD+QC!jEݝMM!9ZlOSbU^Rد*&)QUi: ?[_e-ЗI\3*U9"j mneU@~=I1eΜr,t('=xh0dܿ{b@-ɘ!Dwg`RU=O]'ѕG,[%\L4zm>֯wv[̏l.0/ ӝ /NtaTp`/2ʅ`R@FY|8ӑ<8̜"f4Rc.>ļ<[E06gfFP~9s0\ygY[Ig*k,a3uhnee.Iѹ0nH{O@4L ?e厠kx :WQœ89nl>tdwQ&{1qOӮ!Vra $=F[?ui]]РAhLÛޟP輡OY^[3OPe8o\S NvqsN#PKs`~nQ:I',&P1 内@닜S}atp^vXaE&[sQ.׉ Z}q\'ck &eX2h{Xᅤbunjn;b2sݲzʃI5}ҴI-[PSEݶ)0Y ˬ (BVkWVL3Ά7b~+^w Mt`1gq"g]fW+`"V6ϒtTEMz9Q"\ fU:T(Rd)1N7?a!_MSP!rN5?Y:G^$Uˊyډ˝fG{m nwV줅A1g7c BDx6]Гp`9*yj=x*6a/&륇`6loλeHU<.eh_p@4w7T/S@3-.wtv(ȱhu+GBb3Fe!l@L,F_s 9 cPL$#]Yԙ G).Hf%67 ȞlZDb8`2~ht ?6NZwS-Q7N,F:NG\gs3Bw`6ft ;fJFJ~~{lSW aƏd67m6Ebc&H/~x\A^oiraCcoW-{51.m[m}I;VqI`|N6/UikF~0 ؂;!JwA,E8#gxh~ܩK0 ί1<5p+>QV8]ΧmAXݰqkg^sdOTVq駠1$x"3u&㠥qkJ4Ջ~S2 2ƀ oOhOU.J Q"7D8s Pv$Pe4Nn=fu1mҧZ#x=6fUcxnނ` )]Q_d- 4 8ǒѱzcǐo"Z؋v 4đ%@#`gT9Հ!o1M:)|}^>,zvD ǟq2Tfg)5RSP'xm!L,dSҽ1-T ?)-p Y{~3',YQ(uk76ZiJhޢS1X@mSCM<.4i4f;vhKgWFI tGqX$hJksжş (3c^9հ!s>ouo~\"4uי4l8l6HbQ#`L4Nպ ~Cd#6%366`akhtfåJGfVLxAƐ1WxY gSE&C.oE$9oEdY'%D[nQ~%-յ4-fVyaϭdrGy#-=Lj sA'`bB4Z̬Y;ӟōHLH쎙Bf;m3@}gɋ|><,i 6,󣯷|Ś4Eor!6@;y:ަ ;{]c?Mk_?cO'[t[ȟd'1؅\&!&>#iRk!M|pc<>̄g]ٔ?osR2/[K4sB’*͜&$XvϵVcGXK񇜙-)Bڂ>p6 .Us{0v5lޣ)au)z [զisأwۍNHXk|L<7pܾ-}D_2p, rsL1;#3c@:uA #6(@Bk?ϟ/>??X.gdx+ (ww3 8 9 p+ (wBR+;O Ȥ 緙UI oyy P8E1s?ye$=}:q f|LwgL'? 3'`54iδeקc)ű.ʍ(+Mҝ_yyt9A BGgϬ=yIvXAo*ڠ,=yQǎe C/ۖzY8t)~'O_>R%9fx '*~%c+ߕ]X| Dhw@"Ugg*[%ƦWyU(!,]4-S 3łh\wõ2P;};S?Vtm/oœU~W_f/hj7sLMپg_[ou_˂{B: zszz%>k22|֋yd%A )n>ަ,RVZN[/} tbh Mh^b#7<$fh8ps\/9acqoa󋛁 -Ìȕ0Sj<ƃǔ-rxn~B:9 KR h.ɵ!h1 ]2{i˩JS簺ruYhR!G%|Ye 7CS.T%m2EV-o)c}vN=1-̹MP1TgwWĵ3"rTDt`m e:uM{V= -! > njcpZ&ފ {`(Ux#ZckXB&1S%H2G;ֽVN ]@Sp(I+>62SCAaO^Ŵ˵TRMF뜐4-Ӡ\^W>>Pfgяr(PřfDGg #Xl@~A$@4 Jѓ"G@}84(.(D.?tH./%pTik|O2+׫H"{V JX >Mf53'A'"+2p.wN3X{{߮bļݒ58C΄c; " E~^pjM6ݿTc'6ةTUʊOx +ywa0H 'hEú~s)iR/$f}:ǓO/.dmKk%5tAhf3ca+m9-gzo1YHRB #1n cnDd5|!^6XVhE>b #$Km^|\/te {1G-cy %?nίLScO٩M LkdJ՝BܗdG ,> u D}a*}Wx ΢B.~0Q9.4M28aeI?sGP9;Z$jCuhP05»ŝvsodgOZ3m8|aݛ-ohu:旒`!{?)3Urigc;8 pɪ2TWi_=4/e%(a(Yhh%١=3;-yy Q~ux0Ǜ_6(WK_3q <0ÆGcz6myKv(:;,2T;79yc(.ZVY2cp0pCH%}vDuP(]"g `e- uGl z*sM붚oQI KCG`њ+WNvtONwG'n̝:ÂznFoQ5|,u?SDL>b'OMcx qR ഘ62 )̛bYudgn|ؠK\dPR,$-Κva 2_!4z^6DQun?ϨxˌeXܪ+Ž0%B"4җD;aA_xd #8m!_72a "RBtW`R2',sY0b1")ٍլ/`Ձo44˓Oz>/!;~`QT6]*~]硽1V-nAFU2xܷ. Te:EUL@E ~u`Q BܴM47dkdFBWIs~) pі(\i L>r5R|#d`KdMtdz[TSzH!{!3=<i{&'#+Dž(3vN4 "'CA\)4'd EJhbFL]xܚ)QׯsUJז(txYM_+?j՟?SJ=*\sQPf&^FrDg =i\>NTNv-U!;oVbol if'Lt>C\R@۾e*QrmҥjQvm$%1/zY"q>9)DhD>0wDc 6joA-kl1+Aj)2b\ߦ@ՒfK@mڌZBN-u{:ݥMuʹ  [5 V&UHEO !47m=g;iÇT@\xI\CHTP =jt =0<|\TrzSnkT9.gtyFr8R}ӑ*|6^cBhi@sn-ɉSؽlÔ?ʵV4zr`ŗM}u"Du21!4rΞ/k"JE} +8W^<1HB ^[ ){XTaol|vSl5fuYݳٚlHetR:H}+)^DfʙL[Dɐƀ2DòU4̥U䆢:8ZQv}y<{rGX.W5%l22"@K B9Ԙl&vԆM..,>Qwr#5 x"N"zN9 $!tW-: 77ʾ̸I 9t5# "ʥ*MTj)e>\3 Fe)QO$?% ^&-r2>F;;)0e'y, }Rh#6ub4|ߏc6Ť-3i[&SwR?Q,\T#UR]ɞ[pū})Q% Hz+?,ą ,p.6kjFCYT+5P9TR JPWԠPQׅBpeMP? X3,W߳ BHhQ8FkFV }CT TZpѕwXJϺy<#4K`O fzJ2]?, xCSz<|x~U{@3:$`CuClAy6D̿݌ۉ#l(R涔L=ME'XB*' %mԺs;0A(lɶrU ShE8PS)itw7û87cQ֠H|wAqripQB1)<ݟ~Z] 44XO+v' ʎ!aX][}U'cpDj? ڏqђAi.; -J]"6 %͑a%DUa0j8MY  g}Bܱ'8y&(d+}#dOd9vv,ꬴX./hbӄc=^]C {g ;-nk!o&n6BVC"tg̈́O)zF'g|Rѕl wD858߻84YKWΐ=nP}=Gb)(,3lyQa_ʒ[ 4wҚѷR4%?C!/%K2A p|(6Z 45{uT4:8(^/j9::U{ߚ^%,H*,kzxfߤan~/O#LA\YxmhJv P5$jjWpb jnER8;$MJ|UgMl23 ݲ񿲀E!%D& ZF nR璼QF>m5J1n"W>gtOkȓ yGɷ ?{D 2u2QFg* mRNZ)4rfv`JbU<g餧g/326 ^\$븇 .?ؙ۩Ph-@2;Ifl؞Bq:}V> ^&WөqCg'6Q%WI mȊRmն1e^{*"WgSP.ʢ:/{J^U'WNG)-B-^gxrb1B`sA[@Ǡ݋CEvљ=)61> B4 H#zuiOgzQԒ̝5/%>(zc >TGx]er*>cf72#9/T|/_uf|)*d_6uxiB W cRY+Ӆیvɣ{D 4>4r3J7%ie;cn#~=.o0 6Ɨ^Ib@8E,(&hȤ4m֧߰fн ضÿO6N3AXաqdԷ?~CzwnV= 5MH_IA|4 IIJ'HؤߣIq&a<,CBLDo1KGy@wKڢ“,>d @dW&J%W ϰ1i7 M]f^+$ߦmApz8>b aq>6 '$<9⭟SC|1'@OkΠ͒αhl88HJ9{«x0"*fODtGrKx["KQboB.֟Ű^"{`,+4瀷|pyv,]~iƱ;'oʻ-4LNE66#x'#ܣ2BtT0յ:Y|MB%pP3wI=A݉zا4{ h8zr~IQE)Hc:KG~7E ynQYkefP0 w΅a_/"t+{A KS;E8<15,%epAp)w% "'<٥\+Exz:%fTn-5J:4bx g'L?f':5RL rK̴ߠ:<9'-gi{Rwm i7_ڮa-v. U\q$iN `i̾X`6f x9+}o3pϟF{D ?!rOrϙ3}'?-Jкy1WTX|D8;'ax,JQ"Hʹ f_`a|題kl<6.Sfe td(}c96Dˁ=fٔmsHrbh췩)6`%W5:-:n[fkdK;%#ڠ)-y2D<9ie!>ƿN00#ijd,_gֲ__l9[*Ȧt}Cٗ,.5*rܱLQ渹@ӑkJrX"(sX$Tm4?_"(-.鴾T8VeB2sxSNKCVt./1 2qys4QPn # zi)"4X&= ǥY晴&b\EXDqM`y^X t)BV`/w# ,[ P`ʖu=lJj V(dgW9:M/22 {ܽp9He>6Gi|蝗\}&}`%δ9VQ6>ӣ~,Kd~aɬYɚl\epC "GY Z-vb6é˱g9,t"~,[=[tTν܏(Ѩ"cBZ4IOjc%/JG7EcME"~Ǚ)gGȻ?Ìh]FToDPmSz#*'GL^,`vM|v\OvU%/qDqѧQ8,'hv-9KL7l >>)5ӊ_'j^,7i?Q+f{0r}W+~&SrMw.T׋tL_8q.G3 g>ƢҌN=Tt~B߱y[g_syuzpp7Tdk] 4HBIћ0= +q=T ;wȮSNpgwsy^r{F\Q٤8=Jx<'!rI0WoG7Gfx6p֤5کo놏(r})d2S⿃{_A+?NI98"/jߔ/)>smbYK!X:62s me O>9y3 Sϖ\{IRRGu'o]F;86I/95f5Iպ@:D.KÍ +lY{܎'^~0O{wM&`d JUʤsYGf!:GiӼG?i @Hd(rw3 =CJĀ؍0rċ"}x =Y6F/& H=#RL0XS0|H G1ndrm0}? vqЖڋ;̭l#Ğ_fK .gTJC[LW얝Y TIS,4]g4Nv2/]- Qe׹pV{[R^'G0t84^XEO ?N\DZwe& QCǘ&^?UvxXy,h_qbjN)K%'udjQ(.o,-E#C>NAEj)K \aUkS`6د#z8 29IpvM:B:;1ݻz`%{RǨǏ!ˠ4[G&N,3 *%2ȼuºOG0uٷK|SlF).#.эTD04ʓtLTC=V! EZi:-W]5哳cg 쇟=xkB,?'j[b%d7%y8-E֛Y$Eb6GOh7ՄFAMw,v_w|5dvYTXh9]a`lf2\/wPv%Nryn=G\7Swa]xi ls%zKj&rm\ iAj@~;X:*o& :07(zØ#$Fv0 gWuno%̽ȟt%3?FDW*oys3iIOd+u>;mZjj˽Jz#:ȔB̷˵7XU3mFI-~sfLS\7| x`1tY$MZ߄edBSWcXbF~afy !MuĥjQ=错5No>9T-k4d@(b lR40NvzSd7 4Kf8WM0j;m[2٢NlѩXXNaé6e'R>Y\g]͍W?:kCO9zX8 Y,λG~C{?U}fN Fl4CZ4fW,Vuؤp:c b.i:]UN~ьr0b}e s/%]2(>?g;GIM4r9BI-8epX-(8f@]|:btI^r0::E|5? $ۏHy yЯ;Hy~r\op~EkO}|s0Ǯj1aY\ꫛϠ)v]$tScopu5X5\а *s]:r%yWSQ +xmȒIV Y&y?O.a\Ш%vw:B`՞&6J (eȤ ]V G M=ڋpά.@K'|~+v"C8!rFKxzGض-Z+>ql` dFceIXuy 4*Wt'2/qҹ)3ΚUrf.˴oW3RVUsȪYrFHht_,SYUTLs;vqO[y9lnn 0m!OC/3"owX$prqPšU)_hwj, Cy_pV$8?Y{Q5]FBIUU3K_Wt2B\%@J]vj-[ؽ+ (YJk7)|Ѕ^z_е_qYOTM҆_ 9v-}͐sKn_>"bIDFLE3jw1}lJxuz [~g^e/dl򯁏81s}_@mJ&t0gR=|1y jB꘦FS-r!"@N;J7k[T3%HMGRrkpyN i-q|CжmXfwP iV]rB0Ή(&85 tHBI՘fB7Xr:ӶLDsm [Gu&wG¡ONQ^'N/_Vdk⅊pki%yhSiոj&H9aIqeq G-P$A"%ɿulS ea;ƿ;GX!srATW䀵Sgikph*蒟_OHkv7 [>Mba4_D0/=I* 1%)мҏlRMo)Rf_rrbCtqSw>$*x,.t>ʤ_ _kL~e؜/F( > @ϺBzS'3/r?)m>_%؏Zٛu@j͍y!\\ejyC+/ vT#x8Mc{WSϝsFkᘮF{8x\?3e%jo޼y#sE EPX|p~v|v:EE$Þ%{kjـ#jCλSE 3uWϞM&70zi7[Ak;K )Oy?OcD2W-=ao)Թm8Y?Ls9P8MS~K1 ԏY}-S_/ͷ^cЎ+FQ8 3'Wv=ð}s=g@ذOꚀ~2~b_yw#=D0IVj` e2̮\7`U ~L$_˞ 'Dvq~}J_bMS7Ͻ~JHu[hZ;GȪuD]WMu8;1efWpiPcww;-E( } LՔY. Nm+mcX#޴9JND B,rny y5֏1/E2 ~lO{1p30J+1(=p.D9QSLY8/,QyȖ|5rg?:-H9AZc#( ~E fN^v x ;!ftfï56{g.&k*%Sᝳܝ`׉*h&1.{[ruƢw4-UcF}[ ;n-{A{S=><=}붛nkT=lmmZ$k:%{Q{@u1ӆ{@֩F+DNY6:νIp5 /kwu'LW[rjr]_\f9a=;uzg52vbtnc;Yji8$[?eGsijaJI*&ReN DGDdBJÎ|TbjHþq[4 inu{"]Lw~X3uȕ~33*Su ^m 5Ak/ir|TJ=^JhwZƘ {IB6/ϙ-&80t1a B˝&K <-T?c7A]%G[l9#ZL¯hV QfN^hr(*;(W?2 jvwys6]XDu]NJ='Ȋf|g*}é *z3j/Yṱg` X u7V;b2 x+אaTFaqkmuOSaMpZmC!儓ȅ-f31^S*2ԥP%ݑ `;7|\bcD&ƟzNoV X I4"O0l-3 ~3oKlMޱ0o!&?ѢnX]c}@pQp_}N U[Y" 5O˛rӾi,7k-ט?-oqg~B9yD=yk>{qnp =c<ncOv0 6Q gzU3 8#89pBQ_t.@; ;\Ex0/@x^}PPsHJ'\wQ^[{Мpe٩a"˜hF f`dl{aǪ,煂Qy5*tat7 hq=iڬr 2msX,b;jеb/Yb$x͠p#_Dxa$fRC/͖ۆV4k~yn{ښf*NFXԘ20r.|+@}b.;J@Qj{/d([K\ @wy}feW~.ۮB8YnA''ƄOX1jzN "±W5o˹̝ŇّӐ#B5u 1&0<1 e/S'EؤQ67Q0ldWPR Ԛ]yldVP RHkDf3lU@ 㵥 ׄJ\PMj!x,`iX6),,)ɻ~_Aq=rn~F7_T,Y!^zN/gmkoaژS3.pUkv򞙝 )f㧓#7A%j nIU5--t4)nv!3ZzFܴ "+ҋ6Hi{^eá[L(Ob@QT}kH&ͩ8= >g_Osz7EN;lFD Z]I/IVAy*ɣ<#,-mwxq`ut?n;̛4sn32ܳFHqM>pZ3bOTCiI."^mzY>q) x1H \x»\^Ffs_>6g.ƨT3' #L6PJh"Nkmf3-.l\9ͳ_[ȲS#^Ӥל,n9)7 Ϝ3.bxwS x0L-1otɼs>@F7c:edʭf{~C,'$39]9a =Q`lp\o| #鮝t'G7,k]=p¶eI!Н-K94RaM ݟoFc f.'5}z>?jK?e֢.uEZV UbLl@DSFuQ+h6j\&W,xノh]xtaǭH~ZJZrg&9ìj1;f AI 1m9ئxBW&ZtVCr߷?U?`e" uB)fŠNwEcQBV,E rɵ]1Y)ň" J7hP5ӺT<VjQK۫v{As +W5C\-]ux£U/0l=.(@K=m7 m8Zh}/X*`CbmO] Z+G٦*V6||FfpEXˠR`2T #jmp8|~JeAX4a!Z\BZiX׮a%" F4周rV H_ tw>CU)/El2SD6Gz -fnzYodt9RDK&l'' }QZb$plw@/+d!1a% {Yf!,7=K]t6}z6ǯ4ׁTLp럽m73#[.F)Ym,qc)BZbBciux騙(ȓlKs BvS% ['xo$e]Hl W:Q=zV@E+~6 Lz; 2/ϵ)ab' elv&D /-B1VgUA)%Ր\pdDqp\or GQ!`!3S81tw{:*.vm.٩ !4ڋrQb+DYqlZaХf(ܖbEV:0*˘,+#e(,Xjc`wg{g{7woN:.L_xe׬E6ԙ@;䊝ʐYe$a.W#?a$WuHyEvq[)3(p!1GuS&Fb!sF w+ Cb:Zj:J fʇQ׻z(CY6gڬ--K& (Y/} oadnfy3n롌hkL>;BY$Dx[:הtj4ھ-ȊL&^w?eZpP=kOqپy o5ߜPu( c8@{YgzWQ eR8(b9ʊI KnzEDnk@mߌrjxiyM"(@y<%Qn#HJ/K;$]-x |ChۧhϤp!deT&f΁WRZ^%̽- YЋugdc @3*NS3A85|̪JG0i GGΎsf=`ͦ{E+g fҤe&UMU~d0] :nGh܋ZT_`Eyp:SÆfX؏"$?7Ĺ fxǼz ?{io95^PvZDqw߽r6fY!K›Das@z1<>|2EM@BGij)39X{{6 /NssL/OG[cz"dA|bꇷOD>MY9!C#zq éT^`^d~BɆ'>~ C2FǧAp<O$ғKpϢY?@Q szX6MWpvGBd Re%Gd/t .eof ț?g\㉃pA~K}]O$ɛ&{]]d̢Y'U/(L<- ose͟~f|m YDN}DPKb2۝#jW 77yݢj&¯LesR&ˊv)MiJ~z ~k(]̖90G;FM[9+arma9ju5ޑBuluQC3 J*ԕ& Xg%'1]u0bX1p}kK"l1Ys;h ^RCEGCiTCpYOt rDbyvع{N;UTu)ahj\-J TʼKtVs9A٬0yƨoo&[9bG!OJAL\ͼ i]CEwXmSh^+*? yw^Fex݀y+YH<ըeΰYiYT7G]0E54(x@9%Ɗ$/Ya EPPebH>;^X6ulnjLF:}ٱqmf\wJYϙT=kycsd*6۵[Ṱ?%F{s@AV֪-9yԾf6v.G FONʧ8`v쥈 !di42#22<Zc-`M,bg/%,?}u!\qew !UL÷+f 퉽D$.pU-VUZ5$B€Aߺ@BH%ڛ2Ł\|沤ZkV~{?{#k sMܯ!u>5 kFRp8}#) ᔹQxwyvʲ<}$_*$gJ6f̖&5_jxK)ϿΧg9\Phx_,uGz^ ާ\S% l4-SGMEr;,z LvGIQxalq_' ]M(ذF]{1 KLd{bNqՙdr~e>alop4r}W-.Z' =D;F݅>q;wLL@I^[ l 1eE(vǡkӑY^2rN?_w0,inTtg?>-GWleǑ“Z~BԮhI dùNf;HMZ,fPD>}zh%Ciؘe"%sݠY#7v#fYQ9̗ fO²qv)E%.. =*S䜥DnC9M˙ N~o;&&8ۧ-!hc*_6%W~BNߠ d¿f)w,֞8Fp((˽JOx~rng/ZYzoI=@u>~>!xOY^V#;^8җ!ޒȨ Ye4&cl9o^,8w!˦'{) ,IUjxE}Ae۔%}7G/k$4Š^%.fHiVb0s{;^a"8hlo2U\?׷`z)<]`v<7Py̩sxv0Kh6=5#T9Oi!O0)}vc"“ɡ18^)̑iE(R,* S&MZ-blYոD|Pܭlz!n+RB=/&D;TSc`f:>wjO_[i뙧w,#Ŧu((:Kդ}.jLA֨8RHx_> Yҍ,iGC4}V{KaNDzϢt8o80\ _î35SMŷգS+A&HCxU?ͥ &>J txX3D ϐ'Ec ݣ~}$)+&L6[z^ o2Q2izAESGBKUT]jRcY)[!*-~Q)ҧrX[ʇ:zyM#P:W,Ex]}Ґ%P`0.i)pTE;(uï/.v;m:TjNxCY- zN{о@M5hT\nQXV8Oi/3G`\ xDI3+9-f4.upK GPm j?񽘊Qh3o :ޏ?а>y#eV_9[ Owxte?`A{TP ¸H<( <;`gDyU +%mV%?Xidb.8GkM40&7XdSL8%{5Kk`nvq8BI;XA㍰S[xI^ 8bg|hVc5 hXû [F(hby8MHTYdvꭕje'!:Qb `ToL2fhjb6>գ9c5@J{́ vs2<^zzu̹~'1L ")5n%!8 D SiGNx~e= io7~n ݖhc_24$#Nz׃w4E/wQb{bZA&XAp%Q&bE|yw8nT(%){N;]Ao! 1w—Ҭ__~a9b?E5%hVV`Ԯ&{8@V0 ; 6KiP|D5 `R}`EĄGƹO{?-q\EeDZu'=xPI gDvjJ]\85kv qjC|Cš oB%,툻A\b o[M5ԮaU_q1BX*ҍs–}x.wSՒ${t` Xsԇ1vxALjiAgPU{^F{ j1[$8ᘌ1e1kQ5Ol#Er)Wy:) i1Ѧ:NEy')M]z-O^&B؛ ƧW_7cfۍno0'fdv቙QPK̗EYe{![_R7"{ cy*t(dwr{OѥAL1ϒJypȀM?f:O19 ;{Tfe݈.kǍN]_&E ںaW-(TB1:C;mR"t(ts]y_X!_[ *efcbqe!n{Nben^oBSdE, ?Ұ(:".TTde j i2aqet^`˳1\~X̅Jf!jv0CS2U>E@z95:ǭBmuMÞ{6״Զ8~l KN!xWݥ*&Rjh 6j3exzU3'ht1hDO25C˝E{ XJ?^9MAK Skq-`ޑ:+bq NN<T.(qZ Yͨ3/# A@591"ʨQXXxjH-]i vЬ*\,a %3 05S̯MIrNF*YN@ӯ(=xd|9xXPg6b[lnV@7;ۻǵ$ v,&7@x66-f&(;-Ю[AċgBqn"ݡDrTͬ- xP4@ jb&jX*!? ӜU u&6=z3KO,EQ&P*c _y/`I?reptg]A 2=ĵP}(v&D. /I5O[,M7& [pq-DZ Jk#QCh,eJ&WXjg5W;xd]` duyYnk%f%`EFa9{Lmcg~"m~iL[5gtds]Ke#E)LO&F6Mߛb,s8 sL0;TUo3Ѓz1`g`欸RIPZ͇RR Vt z=R>hNon 劓PNK0vcˁM\aki,ZI0ü\- Q7,$_̭,fv@v 13 Y%0')SyXd+^ L& -1StfxRSI FĠ-s -m*@1Wc X)%n5NK4giN mТi}a|P(UdWwy؝(KX]I̮Pyaȏ0)n<+fP| θTdöoU\"s 19Y ۩%0&%*O]w$:a8W4cnپŁC_>3fՇ}h;fCrHjU*]Z5s 2q%fڐ^zH[6k5Ŷǣo݆՚16$k"C:dA.J<:!\-"珜i9Fm!Y6eDoɄrh`Qk$Ys%ںw. urLydC@]Hk.)0 k2R\N|#fnL3`=:wr} MJ]2 G}YP/]ЙRoU8$ԇqPOQj,rOIF6f%X.ToKyˤRtpn;\2ًV8BSTp \QDR;RYVBƒ;,ɮîA6-B+_jsRKHOJraggk[+ Vn =Yv?8BiYULBݪ.fQ7^Ys^Iygi/~`dRa4pK4`AGɜ1Еñ3g-ZXxTAϑpU(h:Z=w}L~}\cM^/sK?MKofr$y93H+s6!<,8@v4=q=j69u1Z>,DXN>Vy'`W+V"9*U6'OFSP+֯k]HWB8ZiBeϿҼ".\>zU YLk3U ZOX+*U`PZM&7pA) =^\͛@t0E=JjfDzlö:އHG" eAPĄj?X3qnwXNݩӢ-e>1Z]B]N8`g`<ώ~~y#R(<Ş߷o秾 {ä$D8gtYmDг(?J@Y7a~~)GL)+)A<@y2~uyZ_,&hܼ}@H1s3w^3:>V,̌5;Y ӭ8]_:vnd"ŚxWA3Km@%da"o%lb(y,xԁVUO\9lœo _7+<2@ONd>YOGV2 Y+tn"J =`j5yb-6,A+w: YZMzPa-0/=ʨӏ1t3h>TӉW^:O(N e0j׏-(A[|~dN7$J)@[|H8^L$ ~ߤ 00o_׉8MqioA;[N~Iq&˙&3LPo+g*ɈgA+Z2jFAVXW8،9}))dھpKRGPƙ(2H(>a&;e8̙R?bIkX %8i Bn(e1 K(\.7qƂ/y;j,3#}88K\ur)Kf$M~=N ^D^ęM |w4a?j8C<lA1{Jj0M}OrԖ3pbpj SD5vjVo;Sߩe,\Se`7WE"G݃=cٟ1z7@ IzsŌEo}v\^هf(Tmx)(b>3pȻb a`!2fQnw@.H@ cM2I"ǚiEPѼ"pf5:DF{,քbXA 0l6PxUh~N0qh΂e O{TRH ZR*;@OV?@E? H?b(Tm$daDԬ]';/&tn=tNiĊbͲf4،QVhĤ; (ƅ$!3D Bki|]Ix=mR1,bJZY}*pư}SZPL ۑLN\dZcƱ %4Кٕ4e?rkCHld3RKӤ\v5)YArjQvg8aHjGqlX*YΌ” f |?iB#XLL#an b,w < 4ZyhO{> U8KZyAQN re'@q*4 y:݄R6B2frbd;&tn<59T" /iA)8zR 348e%!F \zdCjhL1CÍ{neM£] 9ʒ2`l}ݑb٪>9s.q}G"=gHm{+~׵2oeY,ioej_e*kocgоRBwIVG[ J[i%LChhi5Ղž,tD"]bV~UV{r ZjM6Q5 jv ejsw3m{jxͤ()ko5uŌYySiAXʋ?>h۸5ou-IhuZ],Q]lWK֝EeIZn/-wVs[g Z!%4 wJ, M-RY!;qro4-,)3>JnuUºV7QkUwO%[iK˝rduS2 V8%TY)QJ2 $2ᗠ`e.!+oF}|(=ѭ%{6Fr2C`)A1vLWʲWƭy%w%smeW^.u̇2wQ{i蘘3+mpb/.-@ktVҙx*}H޼T\,` 6~ijLAk7tx (v5:x5*8;r*^ 7`,a*L@2H#E^C/fq/7"!t\PovbiRs;N8wAX,%vrYc^W e+J;^I"-OT$忽l1gh;3m6!χRwhuF+'ŜVB,F=m6:퓮;t]o'E^l)(Ux1 kUHDYLIHila 8ƤiלB"OB}f ιX<ٱi׸^ ,br"_>JagL>];۸S fxG;5u'XF p:m1dFa 6A;/2/L.vP# K?AXo O؃AGه%{OI/$$$/ Hk&qŃx!f(8`]oz^ְJSh?|x@"?h"D% _=Vpl&/yr穕S$l\Mz*S iRFegi:-g<?ײWľz}h"Huǫ]+ ƔӐ>ocȀgCό܄n)e,Wa08˩VcNjZbqSLaFò +L?3ue ŴZq9 Ǣ]Y|'rvJ2r&M%0wǎKg(4el]a!G >MvȎ=cbV>Sg!c YNDQJ o6v6&hSnķ˿]MՇxl~h;I'/tYkK&ǎZئ(WCr= ̷OI HiLszfkG(udwJmy?םxfPɄ)tuiͯw"&=U#^/JSNiM/۰neIÁК5 # #+`CAjWR,:,PuѤ"āetGWUkI hC̛g NÙn[NZ5 (]w UL%`mu.3MZ[v @y+Rtm6.xn(Yx0jw0YVvXi*NK[fN( i8:ѕ|p1 돗aYMzt+ؑyrQ:ZV)7]y0cxRM̥_1=/'Tׁ@1kʽ\э J fU2._]!Na6`5\#2Ť-vu 8ّ_3ʼ9k/-o.̨@aJUPP^:Ό}6;̫ґquafSEa}V+2g{#w7+!Q"K08^/E, vut )H2b|9VPeԻdpSr9}]JxA- N%a 45vF_jo,: 3̨t@/-8VӅ<5!L7ҹFDȗ[Kw:d:Tr:纑r2 ,^ _Z RZ}njj_EM9Jpy5Rxsa9{;ۻ;/w|(~[i`݆Pm1lMd,eˡzQR߭񮄒t5̡#B5ʾ]E1X )>.YqŦpɡ=XZcR-!:q~d) ?o g3 > 2i# j\y\ED^fkm$eEqPBci>]S$,z-|5s-^-qYC=]m! m#Þ~rd[tAFX:T+I`*h+z k'҆_8(O7% uӢ?1 {בYтȾ^lk, R`uP&Mqe4`<m+qoLB㗻\jl&_yy$-F6UHPՄW5B뗩xۼ4߶LIdqTjj\f,߶D9b=`~Eg2(8? JGR+Fq qC2Y /E6.ApWw'0juzi )3\D[I|* @Vx Szs J!1%gݳ)ȱV>c>~(]=% {üE1۳#(v"2V8w{+O|ouKQIckIn\R>URVC$T:\^Rqq TIŀxSZr|[|O݆3P51iq Ho&%sx|>ĉw kT5T7vh Krث.gZal) ۗKO٧-GC x(dxcʉ *Mh%/Sw;( 3.9FlT2F4x|nKV[yZw= p :;WͫҐ-8Guah"Kέe9fNA2K@[cH3k,/:t)]tt2&3+'`@J "E80q^e?7\nP;ؒU7E4m,92@XRǻ冫JXJ{sZ鑝OͼW)lVKL=ob4Z;Wo{˃c@Ïч+ ZmWFlw.;]Tl JZ+: Me $SΔ"^/IN^<إ j*ÑPi-J(Q,mEj}X/cJʙ/.&h.~Ms9+[FjUg̐U(MM* H#-PzƿeKHMbHBpxh6G *!heA*Mabb5PP16`'V~YgX\9rHuE0#a˞I )ͿV$Й]6 w~qiɾ*ixo0iOv>OUE6 egMN1w8mՍdAk4=nt:OLM_W Zj`^23o TOF?xp<8/th[Anثōv9a³z]EkY&CgywNv͆u|xge޸4 v_vitW_M]|k:U(˽b5Ė# JmpϫdP4 ?y\%TzZ~+2+]7 (n :46Tr3EqZ}Oc/ÓTq䁀ZNғ?++ aa [I@iL Ys+ (7C OTsx[tNhrO +E9 [ؙXw3kH*56Z}742uwfu%gfM]5qizJ@ 5^9]+!Oײ J*•Ş^ݞi}by89DmTYz]IAXW[YESNF}e'3i8>UW4YW] Aő~GOS l(<:Sq޺0ޛlWyOgOniP/gC>I{OɁjG[Z=yNBw OfĻ(& -%=mM;_tZ #nc^Dz%Hw>|v%/(#۳4uD H˺_߬4?.% 8Rթi؆ɦsX{au6-qf_}q싚P%RuXRbrXr6fN3RԡC|7_zpD<( sd,uG7 PLNϏ!EqEd؍eu @!\B2] THq"pơ Mɱsȑmi|:Ej.0b8wb=eTawn#RjvziW&Pz;򦆈tצP%<kBB|ȷgſA8/oENĭy8sHkkXrr!hhLkɤ!`zO5.ټb.T z=c{dMH"Ґyؙkqˆvek*rruA\'zJ3ߺ?pnZv^A8Q]q~Z=eJ/L nh@):g@ $YPIÆŮ=!`,&s٬iy=@O-GlmVq:#37,ǛџjsHf^U_B/^".QA˫xT_+`K6kAl >;YrSٕ攣ds` x&r@a ,$ʪ_GŌU~+c\N&KAQqܖ (F~ICc[O"&b\iq*e)*4ZG]_%ˈw bajk Z&a gYgi搝QsDwЍ{U."<&Z0YL{2PBcL켿.Ug$e^kz8t#ԧj]fTCrYdBmCR]ky J9B5lz"lV.u䥺\f0rj(ю]pM8yEXZKe abfEޗBV$3ԉ FGžiܿt\HpьrqΉx%{iU@EoS%֎(ߢeȲ]8;-i+ :6R*7XT*>KUSOnZϏQjC{5ΠsP>XtFN6XʥPtptdK)6i|:T%U^!\Զ'{?"FZLDiqَg:$_fPJ/̂R~9 r?=XtBQEKyEͳt< IGɷ$BlԜXirQ (BfaQ; 4dV@vTH521i(-㤁Ϫ9^c0f&؉fn|c~%8XpM!g:LAfvռiK2*41qI/}$f<: t|Gl Bg$Rqkzw2'J/2 ܭrIve,d6ߩ-};47I~EENُ,Kghq Ұ>//ɰ=5 fQ3{+d>yO$E)~c4(}}eY$xdzF|d$cGVF#qn;B2X:c%d9,ڰHrX60}alAP7xX"'fx=N-oAsB ̉7M4ťC⏥iB?8O ;"dUx\YvWi_L=Kj }Ć :RB2s6:ckyy :ϵ*w:pd=5 qc$Ztaߣ;QOLIO3C (*7I)إÈ!,&a]i==I`k§xe)Ɔ| fsQHt |prv3?EK7t=yu]Be}PQn_[}>c1J /b9p~x_{pNvvELNot)|Ct-YDBRZ-V.Y&); A?](x;[,y底?.uKI%Q&o8Adwd ?a0V~gxMP',M n‚++|kc*^cĢ+ư&[EwrQĮw|+$T¨U*Ϳ<pOfWgAuΥ?w- L*TH$,YTI%/ jA $IfMrIPu(0)1\@=%4kQώ !HlQ "fU!11)=w%?VO.aYOZIF=s&}|!ȰnPb/e 9JHfёw%4~ӕ=<_^2twۂWj]|>S%=]i+!E=ihbK@\㆏ AŬi%nFF&7K+&ؔWscN6&p0H6Mbyk%}wR k1dT*d#KP쁮8\ӳ񴫉FY P ׿:PK^2:!ϔ) T7FG_:h۵pL2K]f[Jw% /IyI^x({wє L ˽g34q"G5?h|9x0qF˜LȝP5XuA<1ڪڲ=a}&!?upaTtia@|{c#|@TuL~>Cn_= ּ#w8W&.=|6߄1Yn5bt]DeÔ?Q4 EUg"0$ - jfahW9jLVpa5v/#{Z`WiQN _ň&J~H`h=rlMO,nT#(tq>d=Rs_ +!d8=iB(r׆`" IZ=\DEY.Si!F:&[V:VPmɆ45[0A'ML."1|d9X BH%# f+y(ؑX78&-d/)ŻaL\jE0[4a}IKR YYEBx !\_(4Ѭ| :%R]C P ^/ ȳ!f诸~y=YSV{d.f\$-3D٠9a BY"&+e~gj&vS61.Kؔ=e.sY]e{f=s M14T,1fY% R ̱Y6(WTb>g.ǢMڐ9fW~r \dt{nj^KZPdd).c| :_.P3JMP9ר2 {QZrZ UATjgXW߳ м;;G)kZFЛ;u@^gEer Kx,ub;7F׮]LN*w<ūc8!p^ܹs,Á_V`Y|_8D[w:07AĈ`G*'GPDR2W9 *R;:q{?^@ ;VELH^c."y-=)RaWGBIJ7z{KE`B+RE+\sV$HVg5YB#w,GmM=|%QzwD"IGJho84[/]8]FM8 < [~k5V燥B;p ®)JR3ivtdԩLYaXҹO>h]!BIWNEC$!KN"ɽPBߚ8 O~B992<%sN%'ץG;% opy<[A[z`$K ژ*S+l3=S4\EĄ$7 VDYJ% 42'aϰˁ r׿[Tof,9C,2&=]Gѷdդy[0(|-_xle$ \#4xvuf 3@=]NbыBGٓ@pwU+C/!|l /ZfM%-a{^O%VUte◘It,j\1r8pVBޢO`&H*֙vUٕw@8z$޿jOgJٱ@AO/>~$?pɌz-A8,3=r:g'T\Y<|@/%ɦ?-<-Yva'E;|gp??5&_M8nd85\%L~\ޟ>/gSh䐩g&ǵOefEL lPnSYӐJJ"[dOOJŢ(}eO_UX$ĻQ%.rIBBWJC+ک+˱.ĵ]P#><pqeescc0H?H|>8h|?11r )ŏ.mGGcG;#crr$FGH4`3@3fQʹ9^P6Ч"0PԤt݊ے+@diU*nOjȱ}.uȢ%LZ$ҼL?٦p?3bE]TYQW^GZ8Lԏtmw2B)I,[ܟX83} * {=XiލG-qH6^-FȵՖ/,H|X;zw2kx|29w 9+P@wPj/gDŸ4χ&]KS Q8M齔@ߣ^T W< \69y01?ʍr uɹɼ4gCp#㨋|Я.XmVfL%e4GESZ~j4b2,ge4Sf9RBf= rdɧ=+7\=ʭ,E) Tl~j8G+_M2ny@n;%J1"ߓZRj2N;CU#\F!n~@]k4Gƈb ұYFTNdPrT+unF}@Ψ!0_%<{-HCxd iI!. Rc?iwv=NItsN=0nB}VV)c%7,/]ӳyi8Oh*/tNě~ɇKL#2M#pai.ɤEqn^{r/p." bJsQQ DK:rIb,vH-릿({wSEQe ֫D5 $ 'r7_@)grg3lm#l #s4!D4̂iW2aM\F. g.Iƚ5[N6e,e31?3 bp WY2j#! Lk;̿]7#_\QϬYjdgt^A%f (.p0ձ-8wLHWfYSktơZ%- !nVIQP˜hKiVG$10Ij^s4iH23ɻMl.`2@8^UPTݾk'rL5 [#hvJ<&2dn4_S2:eo/76lJ6sY?^kcqf2qYV:8`W)2ۯf!d V9-n]MXzaျv0HOxo/Ӫ73ӵmT= dLRt:-?chkM D(3fX8v۵G$$n${F2x$mTQ~Wj8LG2|$()ʞB1\؁ BKJ!i9@}Rlsw҄Tqy9?[)t:OTES?qUK !B4L_u09 ٖ FO`ˬ,ՂԫQ?&c8JsY"GRK}q簻l&̱ĝXjJ=DߔzE1ޭe5K\G?TKwB,|ظBݬ?NQN?g%4" b 5X7b5K ͗}H\ 0]ʒ ,TX{(}sӚ-QY=TpK;߄lbӟ*  Z\{jȝ8-Ɨ^zc/$pɏWU,{r;|T&2VT N舩촺PT&\a$z0mydŶX,J&T~+,?ͅa(RJZ.~4q{X9miRPCEkyoޜmKI -4zw7 s`'OWM4 p̓$i83Oǩ%4BP4D 0N4Y=M01vE lҦRxA|5 ۘN]x'o6U%Qҽkba^83+@#bkeF3(({kCưӮ"Kc@:@ѨJR\@nF8 M7]z0;E\yB'cEVٷd`GX*Tg&i["UkSMoѰ251(?jyvrr~-^]ybP;< zӽ%p wśˣ!q*!*IwW&TvhѾ]iK{iīp++jX"Y&Ѷ0UvZnY..{2S WB#_kٍ2[.[|B4.͞ߟox!c59&zUiRZ)baP[GJ\bM+en#։2~⡥~ +v:w!k57{xwR&S3,\TuWE̪AaDjphszzNPTr&ÿ"-CZn[L`@qEi(Ԁb4lQ̋|!%<n! b~N]߿z!\SK7l7/mqQ k n ϟ)L!7;9<*jEeF/3$IlԚ8e?EXMP44 23E9l-%cbgGyݺἯEKΝ3-Hи[NkhYltqt٠d~:9dhV[kێ U騵$wYݽ3E*|6!\wg5z_T)>kG=ih_ .xTZQLC&O#h*U޷6EwwwyoaPL6tk!ZKjjlYQOXQ*WEQ29 -~\'v>{*,ܿ=I 0FZuƳ0KQcY[_:+RElYK!kkQe):N*Pp2Ylϟ7`~#E"XrzDJ^He&"KG*n.1S^] T I -X_؂nrسRֹc8wG0-s-Aj=_:NIHE+BXhZ7}4]^`Bرe 7O7K3}Bi2uqRaIJ'T"s`A\Yq%\ ]0MF"=ݖ In觭NiF=C ֬g{';BirRJTh8<9\xF'qɦ-?8(xhGt3@Yǝ`ףsR/L-H7ڌvyѼh_!}9w?d,VeA3| :8?aa2yҵSo|ӰxCE[:n[~O$U ią0{zL‡R5^ _fR*pu`:6 ]ģsz ~c?^=/It<J.0WJ$=]Z.ΕH:[r/ Uv䋿S]b!M޲HRzXǞ%ŲJ"?e9ۆ-Wȶ'EMOc@Ȅv=Nΰk<;Sƹ ei|넸2 NA#?k-WmXYkY"gmW;=\-9j׉IwNdJbe{st|WXQ7p^[Pi FvJFv 1~41C_6qp@vSuHXE/v]7 T^{(+2ǏK4pHGf" * U5sSu J曀,].HS)u%Qhgz| SVEd$e=-˃.Rpndyps`3OcFV W>GPboi)P9IQX#Ձ?W~LDg$sG(/n-fglyAnH6sAk'ig5O,Ze:+#D|= dM^vͳit>~̻)4&:Bko-Ol:'[u=EEeLmTk"I \/<=/p/Kh_k:o =Jܚe+;V~pA(z7{%( `8 W z_6}U^8 [Q[VKQ {<6&B'!}p @~d[_,Vt1 q h_Q(Ӳ/j=E2 0i0ڨ`]0Fi(,D(>y$ѽw܆^ [NKljwsþ\_)O»Q ]; Rtz{&]n^iO"i(_M SB`ӝhXmŔؒt`MZ4t%o4K20#W rZ\"iJh"C'X]iQt]j  "CeVdl;bFkXK1}&5c:|唁 ,dFq J-#+tyx>,Ql:F\[`rT-PF4kT~t75iȰnEKJ9W r㦮PDi]X3HY`:bPq.`TKZ/)|GͬNsU kQUzSYUUib:իXm\6y<6"2p pX~;zpqALa)5V%9A8ߨY xzE/A aUW( -0`9e,3, fB+̀a[R 3/벖]3=͢8e{~L+; iU^^]S'\Zh5NنozO{a Huo]T|y|x^e +F_FB4izt0bORSA)BYXixln*ڄ?N{a9( G[k1Qog* [4$oZVe]| pd+^r]W؂=[fY ࡤ, =|Dl:_heDIjqd915*Y$ku[0BR7vB $2Gբt[ Na`嬬ٛ1:HhF>B!W .Y=糾wIcˊ֗%Gt,o 3>V֪؟.)Q8| ieaHX+d \-VeOQmB7꿨\BUYTyņzr~YtJENaR"G4O*1x3?;SH[HT {xgDt0M-Xo`ߙp=~F*甄=v/ǣ[CtHzbQ*ZQGҤ*IKUz UO+8'y2DHN{ˎk=gaBdMG3OY.btx[x_ ~Yז@ǥ2‹s091 GS3d!m_e@ 8!`*C Q =}Gqb"bebzq0Ϸɀh63֣cXݾy`NG!0*bڳj<3( V/㵴 :X/1Y8)uI=6D9M&T5%KB8!-Q1,2+ڊm7>WY8?Iw$k&`4T|>&ĪQE2r{_QI3(w o+]"6BDB*%ɦz|(k}$uz| 2ǃ=yVWw޽~sM{n{~ۭwolConk@f|vcMwk[λfgkcskM7+=$Bݭ :7'\{%:itڼ;m!)9 ]{G'p7۝[o77[H&H߿@~y6dy@ {-qUE2|tt۝F]"~TA 7:Ho7[7w ƛwHZB@I{sm{YBAko6unlllu"BZ'kvU+#붝S.c*k+Ю'E#߼|n}y~oCV5R50BF&=gѪa?nsN[ d!rm$t$C?Y7v^FF' +>IV= N`Hc8fUW 1%XQЏD̑4!1#rIr'# ȋl8 _03Un^ 4Nw%ngy1!z!\Mu=v k\c{2kZaG@z{/ƷOf19<S 0&r,bDЧ2\i<蝳/9g81904O}ApjT̓";Y>J4ug|óAKV ہAvyr>5mgwtaw*3Ng44O_S۾: ~aV) O9ݾ|lbO{j *_7UK{HRO17Q8:u׮Џ)F#@@H.$SO3KukR*_QsE=ڻzZʀ0QKJI( X_FS޳ ۧ n'ZP>>#A)55u1LA塚آрO!W8rÁ Ks\1̕:OPU@zNA``^ޏ.r9m.z*K ^i&DsjN ']~W$J'+_Mdz}xzk8OفlZy0)BԘFiZ0IJW*QJ D3Op% ȎhGt?@8A=Om8{A " 54excfaQ RVjJ}6P:Ud2vu:s*Nj#56q:1r68Ԡ5n«" qb&ܛlE\c{5/ V+3L↦G ^t߬{jR*u<0Pm`7~n!(!?@\-qE UU4%^ШEVYdd+I"' 8A<"7G QkɊp gdU{MTE%~gT p0Pu#2Z=L_FYhdM8$##k$Iz/W9y3[uc]yΨ>|QSBA;-^Uү*%=Inl Lgq}`fKȃ(FmΣ{81( ~uVց ڵ1Q^+cJyQŲhRA*5~MLWՀ N+bPi/\ô.a[Zh-`s `y{uk`Z{ X ҕo4~=Ƿ?nk? n .mJGPSy4 &"q'Rz OOz|”şc7xJy`b]a}[OM&M~# JޑjVSe!^DzwFC|M`L ڠh2J\Nv.GNMF ,dFd]ɐ`$rEOܲK0ZJOU uXz5_Oy! ^u^ ЅZ11tR6~4^Oz>Q4d- ]@]s- AXGr@mH'"S)/ &7sբZiNޱ) xqŽ"ZWV9iQ7:JEOJeq*T D̿6;XݲfnQ0K𽛍HKfzzViTr_ZB/~TaV!W+";X2NbTԱ t9.~ӾKxCn^] 8ʻX8u)($vX쵤~ab*PCaWx'\obv}hwuȎUmwx9Δ=4a n1R 饮wh[&}uV&:w&k~9wNv~q1 98BÂ|4"= 1#DMB$~L)>'Jw,a-ЃT D3텻}v_Scj*y6<[~ ˕grSm^m$kp,H5`SkM#"@sKIt&RR_M"vMQ*TMΐ Eqz(8LеXjA+J84OB <@u"A !'Q]&p)pRRL U8|{6u^o|–i̊DM S/B4RNFA$ +3]09 !4KgxzH5S])O F'͍jL+YzY~BT/JÁ~Aya:eG=H|sHlՂU c=ͬuk0 vn7O YL51^թL:/U. PhH!' Ⰱ L@q¢-!v(ƒQec KFDPj,.ma@La}shC)hC|:Jh)x= 54KP7?AbivZQKfJ]a $Tτ8ޯӕ{Ҁ fᆼ _ۥLH.f:&3!Ho *ã2E^{rTq$Ī̐3Z:cÄQ-jZy>[ [ if(ƧUeL24h?,}o(x9VZ4gk~gk~kWAӉK=͝NMgǃ}JUF"7&$d.#!b`َ#0Y5LBm :xY2In`pTy7 tQ/` hv%)}AX2q nGAȺ8ztbMS )vG}b> _m0, 8Eyž$aXDpoNR/&ۅ}y4t|.D@%_y*` }egCT3@\KADs6<\`z ZMSfL~*ܙL{ӀG<${=ϓ?$@:,f@4Qr~?0L3 7?m6o|S9uM[tS©dM2{2).nk oң^ 4 .wKy\NTk/lGr[Kvo:VrL?bWC:sFz.M=!s~߬WY}o<1QqjՇ[pɝ[WW 3c>XQ%t1%2w!SnYWbk },5,{;'QD/53IM mQ{2>GQ(s9e|2>GO1(ˋ588a/)U@1 #5#e5G%.%6i°L]2ˊVH̢XF2aYG1ef#53jnq*&ҩu;o#`>s9z=}>GOs9z=stɑT 7=LTը.} R.7ڪ%@}ȫnN}X>Z\ֈ~IX,Fk!&LKحCn{qe{ÝO{;{dž>z8N#D&gd>^VJi!UW9*0xҽ q{qt hY.B IѬdĻ%EÀ$^tbZ$|;Qq qɽ^yq;Q8F t8d2HtCb/|0^E?Bx2.p> "W<1O~4hX`Ia5 kDcU `QAjMhKIi2-&@G RK"/OU/qdYOj4əѡu:7my[3 xFM| 8 G>3YeX\4/6kWÚdl+C> 8S,d$OqO8LW=c|g xNлɤפޗa8Hq C:Mgׯ'ۛ(z=8;<[O& 16lSk8S/g?ak!Lx)G{[O'GGӽj~;[~͒qh@nY:j|~Q>>c,U<9 g1ꞣQ{fA Q1_aMyg= V_.G-T#J58D;TCB}&x:qYBŢ`zLᶧ BMNOOrŅa%pke~mOz ӈ"YmEVpP d^06ơlg W $q|)Z6&U!SDn #K hmk0`&ji18W FM'%}3O(&Լ`q#{m0X34pd{`+ij)9C4 282O*F]ǩ?aڡ*HL>>= hHlcT4]zl~=[;j++rX>`KNοDn'%0r3b[IwW\FiJ:rnnǣ-D֌52 Gս1r[tZ\֒| |50[iܠ^(^ϋAů LYeurE#'WG !Csu}mm!쨺 {12L9U) yɀ B]ub<׵@zWE0]{MwM0j4 \Y*t4fOJsJkF>BE}CeKugMnX'L)"XD4Vlz._ 6OpY7@W8 XSC+U)E}ٝ@$n&i^GW;R@ɯF^ܾkG>(H2]՘e̥m٨!fQXi'_X`u['39^a*x,c:9iݐGMU`zݠoߵWf7ebxc~//mY'PduwOeyᶐ#ݕrVn YEG2>dG,~Bkj^TLg_.w9b^IŅX=OZa88_x'H9 (#?w&L'dfJ; m ?Ў8(;TfI-^+2 f̰Ka~r^[KLm.\tiВXWV#bz_Vj#ﻧM(yO[z-RvQ1deMߓ,B.IH|!dJ.+{vf-&ΦQ,~ eV:Z/ . [.1&2ie!adiI.Vr r[+iB2OrUNi` дDAI4kvT!~h HmxT#Ya0x?^AoQGذ$HW[@-xrG@(@ȇ#Ug 0`Naxt {i{PNǀar< gS83e#s8^T>MڇJjתڡ*4/ڹʻdzյI4`_U= &1} YayD_ȶ֐$@&=TW1eyTqNy< wɸYy|C^<(lK:քuAVTsDC"LBa׽l-X_,T_~oAc]"PAd pV@nnoizجhq1k.05K 5J(f!f]EB 77 8<.6q(%i,e!p 0\@ *˚#0[F# Ze:Ƭa2S ߨfU*hZRRʮaguDF?Ϩ$^2Mkib.v1$=M\2Q%|L,S!OxSJ\oelJC<~]%wY/ߞk:dW#* t90YZ5dm3]5o!u@J-.Ey)URG5$kw6y^vMq"_De6T$ q7MKE[, M, _+^AL/!:Mv=1W EU-Q5xR姥O!>ܛJ%(bRTMRTMSK)Ukn6s3* i!:"d Q꒲d}#7>iJm[9#>z Hk=fCwA^dqFStAPYi-բ «-kjxlFbm q<8LsQ>4~")h _*2Ԭ^NRO^ϥ< uF-p9+Êv<$l` GFftDkeKDTf/Q!6H8]%.}릊Zٞf!`O 8VߜZJufIX!J%? -n4. Y:!bYȮR-7 xlpiUA%`[N k>oJtN ,s 2 1U&et@uZFY1aRТP*ht7R}tt'ZM. .DVXj)ƤKf 1v\MNxVlT?go^*gj[ aGO ލ[qv/p (Im*;f>%zBgq0$SOn-%`H JHiL4Lk. \հ"fVoOT#&^X $0&JzKO@ҭ8ߚV_x1t$NB㙖t-@Ikݒ5͢r5kE/^SYXKS]X%}.Lt]-zl NEq*/WW~aq&I42nqk )]bLdZKsvbwy2brGFP;ىU^WӐ[\gi+/c)I#0}@S|8%z*HVr #o\$L U Yai4rwG@HW6Ǣmt>Eoخܧl&v~ GSp5P؛dwU3 i&hd5h3gڮDN'V >} nG䈷R͟`t- d1t^ip0M(nӠI^o2 y0e96sZwVڀ&erG4"G7@E;8r4 8`\>{2 4K &N|ޥOO; VVVV ƐMu6E|;. ³>:Ǹ`嶄qz#ϝΣa+LDK̠|C_ݯ]yItx^v랸w^{?n|o"\~&{9">=t/tǣ.\`<$X{A_@wNЈu;?t/Nф<~>?;=COzα{t=E_ztxjp]`i }H^ qKa/$]ZmEE\_;хp@toqv'jG]܏,=?RFkXa1n'#M+IYuENLI{+EPӎ*-2MA[-x ݅$t8ŀ`?'˓9u]@d/} '#5VUg N+t?f"\)`ao5<)Asp 1.#Hxq,I8Zw#򗉕(GGXޏ~>Bo"qvV_z}Li4qT~ШK\s0gp,k`&}|!\/r"ccpLA~Iimwma0JgܹpQ.'"y7!^׹s@4TCs[{4{ 6!.H0} 9 vG&mcT 4y$4 Ě u0΃z8 2= zsInc{4@_<&>2K\t]w#s?j ,twC ry駼.R?p"*Wa7l"+\a0A^u5 eway8ƷlrpDf< KLraH¢؏/7FQ \D %F28 3R c T#u3\`+~F?|%9_L79Ѽ_D7GLtK?XsY]\{xڮ!h{d&}X2 ڳ#orPMU6u9-C9Z<r᠁W5BZe]ܵ]aյv]+l=^oӮrga86Nt.bP;9Pz-8bćpN,4q%wj4Xo-SZO39(6VU!lMT[KΝdɲЭ<@cb] Gl{b)ҙG CĖ9+yc//m,W@gtY=ު/z'Cj5)8S%($"q_晔S)ʬ''I)gIxE8 ML68T3I04fax"8(=ע  hnsrchTXvbYd3_-ƈECgf ~Ň=3ۋ&XL% 1QxAOPj08JxxȭYXܱRl+t:Qh'6 RI q^ . H*zHfrJO '׌}MhU _h=<\7;$u a~eTmR[ v ω32K: X.2:>;D3ׅ͸ 4Tj=2J} Kp{+?|='7U? _n…~K7h/- 'RCM2tlxr':er&.U :!*(Eɒ׏ф'ggӣC+U03S>)(%屐p M|ҸVŒ ZA$ҹ oЏ&9qɐ2˜3נW͓7qLw h&y ߉Zw*RsN\  #2/vw7ߩW frc^rW!"0EnPlpp0T r(<!hC*(&Y"Xw711ULPT%GR.FW.|Upc=&#TCNΪE(IJ\o 9NRch)N"|P.>O<:OLp`K{Ȍ*E GrD$s Dlld7,ɨT&ӏy C8>FU0~,<J`l*{t÷m`F{ITE"?بn|‰Mm ~{EUQ'dS/EW%@Y~39S;&JTZK)!dDdkldlf$5j+HG֬@Ez;Άh]h(ڇhttj :6LtPE'mRG*T^uSЏ*n TzRv^iA^U{ٸ"y adZ*AS?Y *TUO+@R+E(QѯHy\_}*)SМV<;!nw4ws gkW*%1< Z5}*kGry<0UTD+dB[ݶHlLR#Ǽm#}vKHPa $$;RڃTbFY{W 5' 5t Kt3 7*P} >?E6T`IQ= fL*S16&@ՆmI]Jt~S5;8;:lIVD%EMB%=h( ><̮'ܡMS>_wo;Ak{yAOPӞ@JK\ 5lEFP;6u۝dO{:*|ۀʉQUY%ORI#6uwUָ=uʾJֵS[ӆXֳ-.Oe6:Ai;DVJóiuhyu]Z eܲ\zb \IKXG ߃ɫJ`z7M𯭄ۛcdl¶mo^}gQGE̓-kH&79~߹_;o[8dݼs3Yvb{IؾBHAtF"M$HGED6eo ! R?ɩx ql.  g^*i&`W|! L[ǏPϼ }P]UzU\c?Xp ;gy!c ~L?`.4j0v\WJ8FՕ8[U={*C 3F4ZAQBV˯s.s9EY 碽vZ'\VoGPm'_16'yWc@srCޛ& "]?x$U>!cFR 7v#:hIadm|cFY><k\.'Jgs:%xZ9:ߧviY84&}l)eF{S"(X݇B{;%Z+Ð_R-c`V3F&g1ȧs$4jG(Y!(s@MVi^Պ}"Зo%imU>.,yOi3]=:EX-ӂJ4xV J'zpIՆ2M[ŝ&!TY;'4|m9-ۖFCh`]RJfWL7~W(+'մS%ZU̧1jbLhRXӕZI%s$5v/2QPں#TTK[Zh+y9]Sl)+s*F8z[6ABmOKaSƣl2IpE\ (Gqp>^ep¡uJǷPiNK{*W,>c|2BBc-(d}Tb~@ԥÒJN4#O0~UTV4_bMjPBqP#u9E*OCrZ@^R-6D+k;) TRp(@\{6>H@ju%HSڮM$v5tZ-enu'䲯k1.Q Cm4a,>ly,Lj6FfyvvȌmP i'8ڸ4{gZ)O') %H). 5D9E-g?Zd6P( Kx:OHZ :,ұpx>ClYkh,A8!]uk̆U6#ފNrM6§5Oh(D_^pr`xV)K$^~x8A5HwI~sdLBf Bȿ[<6p3gWmlin1~[FЏcL+F=Pdou 7N%[$? \[;vy>k#U|3MK #~'<%aB'3HlU[u3iB]YivNeB4ɝsܙ#Zhpr Mw$w+N iDN\ƱIgm}|!u0 OJOӡW{,Chʬ޶ ~Vh x9f<-Urkw^ܳ$x۞1!= 198)!CCK+$or>6OUCm3gfՉ.9by΀2tPtc Őj(Ǵ23(C]ɏΉ^"lG'?f?}N5h[Ъס^q)'ϑr_EL#ӣ>~wx*hm5%WWcGW֔LZ \i}ORDzf D+ܡMg-"Զ~G6ǂdDy8˾M]n-]8s5$O䋽oܚU<| ^&%MSqh_&}m* l/B,4lsq2fi 2}zk1W5 6`|=U ݚQWSo-ofnlTp,*Yٙ  Gnu`CR8rq9 8ZֱPRb|-vfqHd (?e+6$k gM=;ELKwz"/.M!+f!m8*ȟ8IEU ɀu"U u6t-T؂E29Zg J?t*_੾Os<ӗpU)ֆI]’޽ۤŔOr8^~v+zvڂ;jR& zQtԝ-3/e)3VKS^ه]⥊F砕98p JX p|?xǭtW# RyLu鈘ۇTSnHƐ89-/:gi@?Y}ck IG?2N;*}AgdhBj%3r V S4t*4l&Qjq/D Q-/*qj+71hGz݇YڣDeԎuYMT} ~*T{$_i|-ԉJrL%(X1mS6kAuJ +M)uL3w3HM!'U B.ʊPqw?PkszЏyd9@ ];ɔ +h 6Gm4a\l2燕4e/;VmrX I@@bOPxi(HK"#Rn_7nZ'-5Nl/L 7$pzk6]4 ҁ?nb л(NOƅ_uosAUlA(6h”˟>򑷻o?#6ypG;R<+d@ؿn32dn !z{`#xlè8 _ٔ Fx>6[ ̤Q*+6) $h0[Qpsõc6]Ѥ,MDe*$%Q cD /c,*dD1e ÌXnDžx%:וf#BP3p/oKJH%5[kL$OPJ`$Χ HXFTD}z dE7h%Z;l8}Z;BbySpB@|L@`?jWO |g#}CP;\'Et:ҵ%G菿Gt0ka|&W@;D֖4/z_NiV-%+ߡƂp-ѧC{ΝF=>ǎ4ʐ9x?H=,ZsQGC`3"7tƠP0x#n&v0# #. o!gh^ЛGHP& h9 pj_}!qEadCׅڈ7WMHm݇91 b3 F? ɞo翳4f ["./NI_u/󅲺)纉XGB7X!7fLFK] =u;}鱍v[j+n`2nd9ĸϸ艾Fa;ogjA{~jh)E]%TӢ0=Wih֖(RVb `< AwFeBgYqxx-LI[n234뇓d ]7uh2[[%iqƆg5F9=stҖ[,[fSa$MD+s"$ζY©ׯzP󦘹=&*o'\^1IÊ qAS8Ѽh [*uAdM*N2}aeVo-ֿ{=t/tP/-"v"r\Wx*_~wN?I0~::~D.zݓh3vdw8>Ah4Z;?H71=sg{!{Rz-_'7!|CCDo~rv~p?VOJo"|DjQ#3!ifP0u~wK*! aFBL8w J$JQ S L3ўG{Z@RlES+YTbK .ysS޶ʂj4{hi/e 4F^<!;IJ|;ĸHJ:Oyt%u6sTrn]aޠ> >qd: "hz[i%v;營Q3s;ף;/_P4{`Aj6wwBO~jF@W@ cqWgA+/ m'AO|J%RSALB'%Q<'ΔYŶ lkҨ'" {T 6s| g;ǿ8_w?|vgs۹ f7B`FĆgwnfi5ގ6'a9a ׈ؠq/~ݠx6x\~KI?}Ƙ7|bhun'7V#ZXFy Up/> &@|xy#U`jtNEP-A CM-mͬqS$܍ |?7Ч6% 7[ H'@߫cdOqѭ9ڐHlp('?:}#3)(Rr;zz9-@x^1ͦ)*=U@ _ӧ{E7%5 u#ʟ=Q·{E[oh/@]#xb <\qe:uw'VC!RAMU+k ?urYɩǸB##N:;q/UA#պT#^HV)I|,Иw]F k|;x;@)k w9>Ő|*0 n)z_0( ~zótε;nSD^6b u,0Dly=#? .u@E`E B_:_/1{d;/MpX}T<zzwgh-1{ g :%1 פ<&D1hp.f3H2 AFhO/݋ٹ{xk7A j᡻L#'ѯ?Zc,[s~‘8.#SWw `&IHVkB}/8z:$8lsA,TǕhGpl bD l%С*TiݼefN\l=oHvo A '6 )2=Z8ʠuL![PYTҨCIʻŏ/yuԲUL6PήE&LF%C0DM)]:!M B#sʠOb=!=Uog ljԸd>CZbXrAT0ppfuMygSb|C?r7EGpHĶ3fBg~Q:q5 ;RvvtiX>g.RBAv0B mUtB3 ZPP6sW%P&H$2sb#v}v}ZjkmV[4F~j4'ͭawݑca{6У?g ZړKcp.78qQ @dB)|(H8Y3n(l70q$3SF}`ljJ1Y8_J䶃!-"hpC1729bzLҼ&`h9]+_*"w 6J$QKԓ4J6nF8Q689Vy2,ʑ2(f?PFQ c^W§T\55*Ц$ [~2ɋvx^1bv}wVm&H[p̀bc)ΦB]"V4( 9cO$-gWBø' QhA2>x ?GsҮir"}9{g8Erq$ p NS]N<_gЛyf!}yGjJ;G!G m}o<dHy")w#aȥ)xSCi4ڊXI@*bWׁ+7 1HgczιqۅCr~K]'h}<)O+2anNT>>Hcy{P '.EMEgQ1mƃH?b<,;'.)dGXx5m~BVe <?;@rdv S7f>ʘ?|Msi4qg9ȪNy$k0|^ U/ӝPT7QoJwxvZM1v0c+C&]814 c<%:??5|ΑxR$#a~] NnS"l9$pvLXyNkȄ|m+l4VInK")iE!௔"xz٩|Mfp-o1E j!MlؓQu*~@Vu ;r)CK6P`zB2v>x]0Wx.zx :&FMT ڀ ST[`6AD}Qȶs7 EpJp8Z7m`E |Q`jP@1a]!,`t,cAÕ(_wb?%L9S`pp S~$GjvǶ]bRAWE x49"^ jSI>*GJ+Tғ0wC;xW6Qkޗve,t8-NyZ}&"AX Pkm -S7^CUjm =,2f%9^ Z }oϠ2xdhQ=T&8S|_%İ.5zB~K"5] Գok4JScPTCY7l K2,gʖ3˺oF[uZ嬼LhѡևB_lb='(! \ {͡`Dϸ0*p (h8ڽ  /r8ŧ6h@FDYr+nI2p6 B 2Ѡ ۡw+"} '`> kKB\}ªBamP#eI5:GDNyhٓKY\HP@s; skJxn >xzm| CwOь 9X6hADٱ{|v?nWvι}{g_mc2, _|F ]QpY<>Ck]I_eMx>7SYw8"t)Su+0G4D9sF1ylXJ>*GO~@r}cpq8|)F“7M\|D7ڊ1' VRq BUgrd \u]Qn'2P4 D"؛`=kRA)3':@j\ɝZ9ؘ jicPBx7+ڢ0c4(LV* MypzX6SyQ MvN/*1׍7j$?MwH5zoiݡ; szQ2_n]to1m uᇰ ꥰC$E AzeUR *I{_\gBP2sJru ˻3^ыq% ozOT0Pȗj]߲V&0l޲j( ғc&/GH=F4=G/U,WzJd0, &ӲkUBz4ЭHƵr t+Id|MnE}^zo!K**g1X0 kkP+Qlc#XV>{.RmEd6 VEJA4jo Qe ^FD3mF{[sBT(2W&s`^e@ڛRWpٌӐzyMvXTTjۯzN~Y1?V=CyxY€LVyGø$8DVӸ)3ةhJ dN4%pYN%1iHhEZŌ:?DYmlDϕYEc v;2Tz~jfi y` íQk1KŐU cuz"9)-&@9Je%PqU*w=*Cηz}U)l:@DU6\mޏuor+jnv"ٝjLf,#/YT^Ho.sq›LjI(9Ϙ::B!gI}=bROG,f61V5SF2rLfҢmJ'NԩZP$+S t֖#|'! iWH@RhëDyrc#UcwmvɸXV1LY[K~e d5@pפ 1Sxe/TdpO C5kZ]O\+m;:*QUXj/!.$™H*]'9T\Pi0Wj%0ik񷔁**-J*m-;-*xJ"t=uQW~2UatIW>2a/=tAW1a/s9WھJD:$nH Xඑ ؛଑ ~Yu(~J `e>$ rOty VZV%}Ap 1-ҀëYc3|oeu"c2 3B^0Fjt ` #XG! >ƹ345~L緵9(nҖ.aKu:N:Cⷋ^|7W# nA:{Zb[ .VKO: ǓCمtt!y/2c)tF|ҷ6\C\K>4{p3͂KD-΀Lm@5!?wǽ蝝wݓo9"\JIg?u>.{LRD!K3˲ K3:)u_*, ex=.D_qv7[o ^'#;>|w,1KjϝOIwaZ1#ukfDM%'tXprNhE4"M`|9:e0dvH7Cu?yẅRN3ƛ B~Wdu&mUC~z!Ɛ05 Z^_Ypޥn˨|Hf'pۧXKHLH& ?a`',T '~`)Pirj1::yF:WzuW++B[iP1_ܱ*ℰ*,*ԭ*|*$ >VԷUd"myo+I{KnCrHΌEOB:U 40TGT4EuŌw#6Jf$d̬K,l7? ofʍZrxh`P]`SDJ7@7ܺ{Pdٳ0|"phVU3MU| :nCJus/}-J7cmEW<;= osE ]mb?à\ϽCߒ; POMg#8*JX`E+=s*;s07.6_ @EAk[mxkx"pu v2& \F?ǮEKy<7a[Ż(<J3~upPG"!\eל0`)|N \q@Y.Yp2JG@#{u@YZ|kkլx,}6.oMv!J C*%2.&da'鯩=a!M`x߼6 hvKpNy!+sX(ه]{@ 9l-.WV Ƭ'ދoAɕL|^jax_"^zп.+Z#3VȌp% F(â3i!xUh~iUnڡۡx ;r^Lϔ{eeaL~x9johƷof :r- r\$%yKFJHz{%JV -W" :r$ B "R"NŤR$Y_HXQT$X\ ȯP ɮ@'F?i(\+` OoX@Jb-P/|܍):ݵh+/z_;,L(*PCJ*c^xA%bh>MW5}/Ir2][HE~j G @XI 83 woF`Ȗ/8I ښf|EJ45w6ː !;3$)?KEӍ(Pnݑm=YP J+ӂ r*?>wnX$OpoDrh+j1J6x+DBE` *M,2 ':pR۶ҍ#)V5'mKL3UIS[=ɜ)Tsa'q\c+8yEEbIଭd-oһ4vzM2S9UžLqg,irq8P9Wc:Tpe6JY;9ª#3 RqaR6Ӻk%'~Icʒȋ¯A Fs^C49δ()1Be5{9;F];`*YZBWEod~.6JQ7^hx(k7sYyz2a.V3ԛp&&W~}sCf3ag܋?GlQ/<+mje?Gl+ۺO :v!ꃱڎ\sv]6vys#|$ scl,L")JL\gr?Ov8 MalC5K9T> \\Kԍj,Ů8m!aM.:0S܉5zPNz !|e5N$qu@jiYJ2)JG?.\N>\d$ LX34H zc3jR`g$#1Xur =]홋(d8tg~4ĶQ*JF;%Gё w]Kb%q-h* 4Hu)ِ!(ܬa_;h*Aw\_;AnQUdx. 1 fn4ܹWpx}Ќctᮇ\@.\)[ '!hJ+ q{稗La ˾ WpD7f֐n<ҴN+'ܝBO׏sN/M8êã|F10.Xٶft쓎|^nKt!a`JBjc3~$69^HC6lW0[/~dDWJ)KiZ-8:>քڏ3ngBFWY(H<^X (+-՞wx*xQt-uxah$6|yuZ8 Er@nڥPY H4K rvh笭"ԶfHZ;rAաÁ; '}?Ð,ƺ ZHrTNL) -u ͆-F\_N|Ne?PqƵ-,ob}d+MyE*ɳ 2g\V*,&X9k 37h&g14djݽHP^¢ d~|4/J4*l KAYo,- nyY)Q'7\h^,UlHXT$#Uf*I$E)}jUO0<ldЪOY _=$Tb>KzSJ")@B]S9|HOy𨞃Gȉ}MpӜjd/#{}bmU,E3R8-ـIF"%{\d#)k >ze Bs58bhF+GwX|nr Ni84Xzeq>cm= c> 6Xr͸G.G<'1#9e*Nj$] O:nG#p#+<<|'&rQ3NkP|z{9d!v8EV@5VA^{`tcӃ.Lc܋8끦I9JqnU+A%ӥl5SVml j*w"eM<8c_$s? +yVRq9j3YKʼn Pd*ʊI2ߖ:/e7_)!>rY|yW_VΚ*3̊2(3g;\;PcR1jtZ?\IE< #lv[^j_Ҭ]E퐓 q C?څ|U)M.#~"X7w -Ќ'}ߟΒZߖd& Q9j͸LJ[S(d!t{2bZNVj$O U>M--!?뷢KUXmi٩csp]km-]i%76]%7\6voKp 巷b`ö#XW4 b'Y։+!["My ^4IcE02J);&iX&=(yS3oSJI6;؈t@+I!iYR]75,REl퉻0j*"(7lY'02sʉBZ,/ d↖6=[S~cy6.2}9KL:*'ɼ?̞ޠrv*u6AiiS4;o)Wz,a%bHO±Ԑ5Ps/Q,"?c$2v# ƲMRu= Zwu,jA̜jyA[; wՒt:+-jnrO8/@ "ݜ0FR]!{B?%<rǔ7+inUU#<_.BJE $y}&%%6yA Hm} $ Z %,'?" BW=_r\rv;qh6@l/o4s*Fpy4 BX! [4}7{PvCdKP%%M/j/=}ܧ/j_ r: ?] kv~Bqr>#&-'ۗ y"<: 0Yss)6>ίqp+%>/X7{Z3B3[Y'eYD=9dC:thF2ΦSv{rtzt~vݦdּqyڍXhJذ_v<;b=WZRH Gn *.X]LQ 97~ k{zqtvRgoܥee &2(7Ȝj.JS,5':l)T(b^+nB~6J[\z m>r&!MpS9ÿzB SoP^%fh+*\fZ+3&àUzeF ct凓񵁧 _k+CGdc59m {W J[펱JԹ7r~.K8⹋h#wRI?s%rBE\R̛+ﴨq *R+UZG]iTKUj']iXLUj]iXLUj\i500uH/tN[ 1wmI)ւLX[@Jl 4Jt*OPiY,Y-.I @x{VDK+-+Jˮ\/p֠^|wD0 AE#?Vax=ۀZ*k.YĻA dȶShsI-KEp"-MIK^>?xn4.z8wi]04h#Ev:kFg6,FjȱZvf\\p#a.N) -uS_Ur/w -d``}E*B=aU34ŵZZ^Ѯ#/MvL驁etl)T>pt;:矺_л CӐV.@MkMA)Oܻ$&&ah;hR5_\rMf Q5S#-l~⿚}>րѤ-CЍx{ѬO/#]m":,gkϡ!>,=>w;܋ó/FDF"4n?:'@LӠ)줜x@̓[4ߣ],S `|:;fN_s?|D7|77)kA8AAD]DL} JtZ> }#VǺ]6>poOCy:G:U890HG~>Ǻ0x2<+Z{u?$ֱ>$ oXRX*Fral=k@C#= аG ^|k s$* AOU,c>^(TQnY!V4MzċWζ}kqfJ2{b.(ƋΒX#zŢYݔɩ3ɼ"KZ[pmoIߚ7nōobbTFIkyƕ 9ѲN#)3"݋DJ#4f̷D IK/D&ckJ0CE Y-# XTqB5,d骉1(  n56ekhx[ Jj`)kb;`>=bAlR)_] eFjfh7@Zc;4rkaIDiyYĪ{'jWTII"`XA7dfbz,;{qblIcE~p>}<#H-l\2_l:a`>ApIf8mHcjX| J;׿z*zJ2M|a:h{h~za0GWH .[F(6/a0BeD?f6o&~T?h D!8Oz=6@s8xS7Zobյ I?zg0҄ ` Lw a28+Pi9;u i@x3M^0L`ځx[|TBDS\!Z,yЇ9:h D b՝ibs`$Bem#IH"CZ͒nd8D-ZZ#sh>X(LD &1r)5PlE5ĻH3ZIlRu SL wK#HZTR ӞfLR*X&5TO#^4w%LrIHXp*K3@u# ydo,BKq=C|SطhUq3ǭS?pتFZ/Ҩ0™űjN3f#M28w7~{VoO C7@#ud(1(,Xg2E>HKE`Ts3M4wU=ɦ3Zʨw&ItS}-hJxvEU}|b3^qx 9k.T!J`׬/CJٶx*KBHGqym򯒙Ըm]lZI)mW Ido7EKģ`9kAvYR^QM%=,ۼ%W۳"쒲")NK$0 `R7<>Aj(M8^c!XwT \i .A6,'An $ټ p4Xy@DɁjzF07,el{F6<2o$e#俍`]~VCX+mTlR=%^m dr Wz#1=6ʳyhg% =1:1U @jqBИhUBOG*LxFcOz%t]%핹M|N4.4^1&x<{i0r )=r6ӄ۷:)uzݘTwN2Qnk,7jy?Ŏ{(U7MM4g| M4sv(AK-u#u<ZC k9?ӷ6=_Oڇcׇ*,޲jLƶfP#!߿TLCisFj8tҾ|:=Y(4mSr6x:I(pwF 2҅{@ r9A4Ay č3E 9(;-s!1fu5aT: eu`lӬ[)?Y.䫖 .-%" ZN6d I4}I&F QSaە.j]ɟOOS,77>VѽNŝ৆. eVeV53 .l"A)h1|8>螝;ŕntsfW-Sl:4OS+fֺ,vB&vj̏G. 5I[9nUz lJ/^_r a^a=ޮ?$6c"](]8wף0l(т(\56/LjC4k N:&u8.J>i [ ]}/޸,ℨ(-jS}yMt̂q.xz8nV`AVDGޕ\[ Oο9̬: 7O'pm/)?^Og8erI` ŕI~lF@j s4ǐP}\Wǘ֕4dFard2_un߿?[#F<,̹R@t` \bLF (R)mF|N >.&|TďeʕA˼[rR` %+gq2z?~,Qv6@qQëФ&&--3 ȦXTAE`_& V\6$5(DKpK׷:쳬51W_{% rX4S &szEgK̔1-Ac$|<~] Sp2ܪ .)jB(,֡C҇_ py Tpn( $P//2.}1B-qܘ*ز\i|I&N&xEy1.Qj,ٟ67y+=d`Upj\q(_ _{EQ&2$.GùҫL^M+`BvJp߮j䂫| 4K%m1h̞GBOdɴ$p12*tI(/0e{ FEձ)\:hĞko+5νZ% <ȵF'x1M/fMqm|_q+NDZv]N /MH9;Mqw?Sn*>+Pe+WVxnd.?x,_3^OUmJ2.P5G5t )ICJSd2JUGȋS_2ۇY -G*6">dU 6>pt2KXHCxl4L> %;[[n}lkoB ,s5d,F=;#ݡd{.U߹zY-Q>WDӶ?+^%>>?6ra, [ $^N>{h[nK[G #?(ҌwJН{)4*%, _|ۑuؗb44p}=bCBԛ5-}F6#Ps[O b5tʺ(yCIF<R%XT$~W]~0R`R\؄*5Yd†q\8B0]j9dM3aܓXoRz+IX-(fIt:Gsv+\mC䥱?]{ DQdE%hu9jZdUEe]*u_*(MUs%bW;E:cq`2-ewe u"3K'r hô3RN WzO9i͠BGjM.3X3DhPwjf9 vT"?[(f6ͦ =|ehQɵ0h Ap,pwZh TufW4K$Հ\Q^͞ tnK>{y)lb@Ltmc$GqJ3q]긯*\b IiS]gW@ #~+RrD:hdؘ`ay j8h]Hcl*BP'C:$r VDxK $a&Y &x"TR{ez#ҥv>.OXP*?M(5ĺgKeY5d0D0#ܒΰcQRj:=v21N)*yIy-# 0^?%!w";R2Z xFb$J7̒f4C^>e{Ψ\=f]F`1 aیӏc_; ?*ەm3/ag,YήRN%[lV LrWj9*g ]2ѨTPnp9̻HC,H،rodI6^( 7%kܕxZ3ی Cqt]zZu9܏bOJ9VNnMBw=YOj./,+M 7h&/[T⟡{꽜~?s{䪊bf| /.&WB\:ɵfe42~(@oE[#u?B C34wu:%+oYO DCD`NH9VI;# }T~\n!)=2qtؼk›1LQ~K0yf4DȔ_fe# O5: I|ZW[n͇#޾U? #,GR9a`*PSո K"GsL&-iaq pߙRԘ2`ylSS a(}ImQ? {##Mgf^&pIm3B-n&g" R0n04aѿ9#d-y-[EY~:8(|b#AHkʎ6Sd_w|i֍[Q]+^¶!Y=JsC $׶6Fqq2%$m>ױ8P2:حh] JpS)-7p p^j<쳹oLn 賐U|yç2/C4}-)1ME8a89Nz> 9 _+gcciքm%i8tY_Dr-mgIlY~(Se| ؊%pkz.`S tO3prX1@(¾YH$ujXsNťlyJ}Dtadg]V\KZk@}Tt]yp\kࡻݪŋLx.9M‡fPwZbTد0ٲpA:&84'u&TMqKBdE ;1=X*eK-vWo)q]4:.;}[PڝuQXĢbuXC:pe@"sRwp%}/B2h|OP೒rey%f⢗ M\u+|)JeUUfszdvK&]w jS FJI" NfF1ªbԸ",2Y'έ`V2}I2ja68RB%mH9LϞ}~}v$?weT3WSǬ R240a(뙉1K!si&d_mU7S[EcS=HM|SeqW]pxЅ$E]D+cP3*[ԨݕydxI-<.U3*k/z˕śp:V.rP4+JhdRCr)(m` oQx , ZQ"3שRE .(oeTpÎ:(⚠ ܙ]4;CXߔ2a̼ '.lPb]tG"hN%27B/x6A@UZ`c`C\Xrfk9&ꚽ+gqR^e=J܅>(4Tɫyɽ5ud͂;G9y(:y;>uIx;璲C)E?DK^>*H'ߜ4GVŰJyVvaEvG}bu 8݃&ݰ02+V  Kw+ 4Gf=&b#LVAgP$!!=Q2lKQ\ .v}&}86+VH#HOK%dtw-<>}֊\T{;瑇;3v{_p§cpP @|=:f3v^uD~4VAԟ)k'~8I@ټ @Z"dvOgO*@F,ӹ"}뢅!|39js-%ډ<ǘF?ֻw0Gg/A'x!r@nUK1I$ j RRbaoV 1֘#ʂ8,f0.0y)١ ƛ[$gMx3E}n g0;U&s17>8( 9/ fl FI%3.b?t3 ף_YaQvP }Ոs=䞚\잾fb^sn{vz{sQ7B>?>FF`@D`~zO<>~8>?|q^J߻.M^ T:^Gk 'i6ݷNS>{%0h^v''uG0ׇ/=4T$]ˉ p )(qvO_CGAN` {<9'LXx`op*N/p8Wb# eO9x/4÷Z)a >_ Szu~]_{мwAHDÄCt3FN_t_NgԺwT={Oϻ8.8#%@b.9P!C-!:!-w =? xF 5n c|co006•/̅ub8;!khQ2IuxHE^#5jeZ2C|K (fpvv[;qqq^E>Rx7\ tg@U$th"FFݿ&p4N?5cIWae*9F"K/)}P滴ʝ ,EpS`HMuceX<9y+ oY5 x/g(^nɑ%Q[0L"<@p<mWO-SC^la pyЭh0db+T1Wb\%SpU`-c0,ee Bh/س9[+2 u,U W`:be qU&6bJUKى+1ZBV`+.o,Z̚d/#3o򳭍'W}w=qtËa6՟S27lҙYw(>=``F`_KWF&hԙBf =]% (v)*J|v1ٞwlO :BlcȃL0hNt.ޱi Clo9,gp[XhZuWb b\7ߝ~8:>>eBy]Ȼݣ ab[e5%[[M,.~Czg y$L0 x>S^ɎJbg{l ~ҺV^˜:<{zw|;kGKʚ!6={|8b]A?{TVҭz?N)>]܏|7gϾ m>?|ٷf@sL]_NlU pt\蝸4~égW8KFRbZUgn+ũ\i8 O+u?y%mO}3ANvu $vG<@a 25s4:|'Rwfv*L*-[aPkb0MT~B2g|ٴ/z|4[eMk9-^pLwA<2. `NN2'(PcK99Sm .yKZ;WG;6.{&!2+ƖG3hZl7\ ;niJ,s:Nr3S駈bE>l˜=?"q$zpЏW&zMzLBHc1a MD=M 51 #T0^g]@l48vqfmL"3?>RY#H}`pċLyGLqH;/`?jݛwJP Û.oiC8 qAqy/f{VE-Ǹ)E9\ӟfMPw"~[uag1$bgn4SlԐ]e1ߕɇR 4҉A]]И ٌ^E ^bY_a566ʎOEጶ&o˦-4 {qhU,? L{a4qF4Dmh=0$MEtt#:L7և/oy'sBz>]`u-S}<G>ш˵٥lS0ms+epeBr%1 D_Ãd?l}ym-^O* Vf(hz} 7{%"i)ГdU,K r<f:;ͮTG+Zuߛ7n4Ptx=EK1r6`77.=}C/lcHKchH>!hH>!hH zRQo{]qT&64 x#;DS Leti4iGlmdrӈp  OH*HmA4 NqPjwу9X)!WkaBJ)Kur D`} J AC|i.gȣŕO6b'nn(y.*Pǣ`}iZzZXfbpeF!e.M=SE-XI?  BZMJMe4] B|$"%݌Gjpe)UĪe饍iWpst/on$>۶FChR֯lC4n_SXgIsf57l(-%42wj7h4UC,R ˜g1T2g,G#;~9iݣcZN4eQ={ (R2TiuBbTGAsGtoXLJOT8@ WA΂j]!5i (P<ַKb=\=͓D@Np ,@AoS6E3 h֋ u̾3T5}U\~gs;\v_?BUBh<8? œ 68 -vM0p9o2d`oγڛ X8uyi Z8?u9:=/xp>jb\z(aG@{`z4,G@ⱽz͇n=wy)=XSv5;wHnR|`jQYf8[w6JC})_hrhx4G?LH幥FX{%| ? O4:&WUrL(ҽpC+7h60Fz IL6M:1AɘeaSW<$jfb(% Ey;ǛlՌ`-^lMI8`j1Le\ϖ1@Ξ!LqW}ɰ UfV!~B Qeh,-&7 T8CMj4t\&wϡDE٦&lm&-ܱngDU@۲ ؖ~1yh!81/ @9˸jOC+IaE43*d{(:>5ay8M L59&E$s-pؼ'FJT$ y2u 8;a7dc"6;-^It,0ڔ6Ͳp<\ϒb {cIm 4xsyU>k3g쿘9qG\з^RiBJdN~S8G@m  A  `OffFF;Q\9g=FFgQRM)'T8K(7fq(CZԡ;Ⅳ: zc1`}ievX4R343 N}peIҪ*ÓdZ.4DbO"=JdK׼i1oP`CX͊$gDwb9)#cE;8H8A=es_kU -[B2ےD㉵R,28ah$S:g"b88zy,XWUȻ&q) 8z:g7#݆l5Sۉ?< 80>?iQҿ !MKWlx܂hO",&ҜczZT:n15vڇyw84nj>f-Dž9&[_7>|z6-ۺ8N3 TTW/7xMPQLs?UV}&"q"0Vd<6xx |Q5۴4edmV;gy-ɾk?]͈叓Sng 5+A< J9$OQUGl<> 5zR@Y&V8HXJe"%H< j@Qk8J}}xq!lV4fv YBɋLbjj%A0ǂr1z~4|6Ӓ$v4Ȉ+^;E5ɇ+wMZ lk9XWB(M bDO[x(r> Ah!/ M6F|[lcI#:<]dexx,tW7p)`ydwΣ?xj$n)Q[Q7ȯd?"dKoO%1 k<#LYK s7'%^iy?o]^2nuu醶|mQQmiڤS:;jbb˒TuJoa^K͈OT+,&*"9;1:ZX"t+Vu6S( Yf9"6@ :/T3ԣ]ӌs&Keau`ug[lWV#mO  q7"gylhU'?#ڀh h$,h#&$j6T tδk&%&-#mQZ*r6gC~ǂ%Ux{⏣I٥ zJUQ? NNS>2ɷw&(FA&`na?.a-~ zFYhdEزWwz(;ŗ M$:MBՋB~PgTIӹ:{?Ds ɲn7~P4Kٳ V]\6 x{m9z}_Zsôn뵰2{ $ +[' J>8^}^>{N:To6i{wt(5;ᕹ4LV AH[-hSV6Bbt肜a#}> ǜ(dbd}0Ԙ8 E)arN^OMULy)~ȦT,g&P4 9FTLe1l`sPK:m ;!7 犩:.]..=ѹNQ}`^b1ԻAFo)bsc *2icFd23IY̾ISQPdINQ`S/ev+A 4tu"kP'ei@׭j-bwdDΡL|пcF 38@`D3,Q Ș20W)YʨplZI_D-rg 2n,/QP >WǪ/ї??vW2·b:>z!"}OFAk ?i'a݃=hIBG>'\F~:Hsv d"m#9h;|?yT^t$A)7c'he{=!-;]g `?>aDZJPut;~|ʸvy3Jʣ_G hv^?srv1vP|ʠ{˗.tf 6(z,z}P]@/G H}b!AI~ѤX@9'$q@%lQ[ـS{uTf2ߟbNT00D1mjpC&%ic Rlh{US+Z670Az!ާ5PHYd~(X_Fg-!$r0^g'|?sѡԵlF& vXQh0}yF' HIzx1a 4 f?:&uMp,;*t9٪#GnS"˼0N</SbhRcaFź변z4\`!W9\`Sc9A& )ʌ<,#3o`P{}}5SEfT&窠_ sSŚ$2*KV!3Gp'_T@fP**܎ TDݕ%\1晩B~[3g >@о1EVi(w3 ȏ ȩ Rusq~? l/EY!2}`V,FȶLpPծ^;,9?HƥpN\^^_\ b/otF~Jct(n\vp}=YjE^luMIsv}M,x\HD0@4TKuDž00 D CBG_[M"G!g!#QߤivAnjs)몁qְ^U 6 R1 76x+7᦮80[UYD{l%n\#m.=:5eѴe@"cb'\Jgkg2 ΢L&ς4L2R 쭂IJ.f_0 0SNn*iH)yd sSbwdBBfY'ii'[oO`?s]-&Bc6 ' >ݢd6u' t=%PT.}n]Z#٥U"o={^]*-6iS7T=Po\ND_+=KYle]%iӲlnrmLѾ1\lpږMMQ)7ua(dOr8!L6mh5գ=L|P"kC@Y=̋=G,6"݅sMyYB9&e+:y]IRVJcDw3g\c](# >X,3+r3-wǍ6ڗ@{3ǟΜωV0*%+ C=~d"66,MB] 6 6L r] 6Abb7ۚ'}g1Q,SĘq͏w ov֘N$7>Ah=mv V$>g=ldAM-ϒC|PLYӒa(js岱R`m%NQl\.&r͙7 !6k L˅Bwab8pV\xZ<]c- ~9t6R'O@*H`t[3lL@Tt]Φ0(kCE/M?gң v)!Ltg:=趦߃D}g).C_#' '7@ash* հ8=soW,MP~ Fo\7j;1} <56TdyUt9ڄpI&pYam^+l.dM 5dY*M;[P %zb;l{/TZZdKTEq 3ݡ+6Ȳ<*7G3\ 26'wXidi : ԲEaB`)w*0W< S,p1לOK \s,R ԱoJ.OZ*wߏ,O:97W}s%h{=Cy>]?#x2"đ5y% EjɪbAB| )xN!:O!D)K!` Y]=K)(K ߰3ˎuTQI!{#−(UHqG^Խ&~f f˹;#2+t]Mp-rZ+(倽o&:Ă1hFzK8L+r9CQ pOn290j,vWFzHQy< =!𒐾R%Fz \;z YݸJ cXSPI6ѝj(뉪i]g;vDqNR딧H<Σ_7p碒/s#+*sq~@.eLf8_hguڮH$ yo#T-htf+r[m'_**$+j~ oS-q͙NǻMw\O=Hel2N\iyq9uLJ+cB^)J9t:uN}56I X<+|(F\IDOrQ‰־8eY\T=ДEcMf>.%t^4A2sieo]$q!k\4cZiײŮSXSJN<<=kM/t$UXӉʝ \xPs .F"ɽ:׸_L:8JijVrAVUW#j' 3 ?Յ7ˑk-0S JOf|dG6:(~''̺-G4MN 8 \ L\ɲJq]wU= ?=AqBPׅ>"9Faz~Ggz5)H>^w`4q1d&OMr4EL >V)IKV7%,~ oTZ+|U t5#9j6kZN6CB=b@pKϑ=G4OZ'AuOM Mf-TY~3@_AEEr~?:U` 1;<"y1^ 'Z-IٶMu < 0ʘ~BKQoX?7f@# ?ym.{p_#A G^sW|Pc3Oxm=i!P0n LSdW_`8mef-)[=`K_kOH\LDۭl#gSE;u 7 `4ԵϒY %Z-$>}lN1&]k/c x2$حb'\)`IUk XfXtMhlANT06|p7(N{cJ(FwOaMmd;As"vu<rВn봜Lb̗aĦlLPV0eV/-a%qCC]'C5a@tNٗW&??R.[t24宍&0f UC w. v8L$HYаXO H? V[_iIٸ35rDWp be;Ku3xpVtgN?SLE(T3(TMcNdB0p_W!Pb<@. qSf2e D,Fl4B&:YNn>v<({f F (B\|ԓ#@A#p@3{(c$A0aA{JҬ *A!2i !qr{Jb]hb:.fF5ΔaO? eڃ:bi^'Pkόm(CϔBxc 'c1hUo+hl3iJ5m\\weqCX[N}_ӷ4-H;&bƬ7D5-8х# NJ؈-<cP[=C4tzb2f]JU=b]-ŮV-XA0c-bg(h YVx0B[Yf|P?mPZb,*H8̽p1bGGaN&HWyJizU=|E}c!Tz&7;Vd:a]ܘ]+Q޼wp7DkJ61M)QsvDٸwp76ow=o7?wpU"/yM!LRhbü=W[C-n|Wa|6R;; avu]noIV%:mm[vt}gWwmxk/Uj{ꨙtɖyL쐝R&ʦj1E6yug.nhb!flӞH,.M P达&05I`bMp.{tRB,Us7vX"t^O2IPUGlT*d.D +7LF'':(o\I7i:6ove0ޒe&2LJޝŌ3_lPg2EVU9UzdKW~ w ф co +Awє)Wx¾St~s 5*)jl~fۙWYN4uEVs_17D\,0sŞ Y捃_@ƫ(\H BpAL3C]%;} |.ʡoywRU=J'C80L|)61jIf.jra۽<zwbB܅ٱ7RyBeb? ;Z ^"JEẇ]X-AWy\x`?vJ0~~Vԉ\LcMncx`0+7vQX I.Ml %_Dw- =dw-m"8]Vsjߧ-KP+\vyᰫQ׻h]v^F ]뗅u|~u.@U'PiY?޵'ͭQ% < iij!ln \spc;pڸU,(.qf &ڶYHltGK깇:dJF+S9K2V OKD Ji)+t!41k'cvDzMqf<oD\),\Xdϋ V uy`w H*|^:MzSxoũӓ{G 43zj;;d9A1F?:r{u]䤀Ç7=]sT*Dɜ-ms1XxRx(X*H·WӤJd3zz#*k`y_Sف\ުWnhHf"jz-!ǭs+y%>鴟*aX*Y-ReBVL#-s^5{'DuVx+|jr}*EY7Ry">0TD) %rUl'rJ[{(ijJi|{aMbJ8㙡  uJ ),Rv\\kx(*cX@߬w*90k`-W ǭab~[m:lD&<^qk@ɽ)tLdS y[bq.Jzдj-*nKe殷>ͯҾfEȻ@Qgy;;ն7 6 4YV%l.)wC߮n LVYސwm ֫@{ oKBמ3;{y3_wC`GG6Tb<|<)w Qȷ/Mh2֕kZ04EQ@Nw\U ;ʭΒɹinsEwaA+x5³ H)Aej{QSݱna{|O DA a\D},ɦ* 06#r!Cw̮oTʣݎg.:l|F\J2vz`t7>B݆9N>}4*GU<x%i8.:[Ulx$4xFR`5Sk hlO9cs{1Tv;k#ERQ/3@zɸ2cNwENZ\k<{K=q hVoziG2 dHvUQ3HUCF̣ʹc/נev̱1. bX1oMU;U_YB wN=|$u+֟*CWR8)HدJBDDV}#JZ*mbR>$u賐-)c%)=$Pn [Co){6xT1!IOA5jteTʸɜU 8 R5S{^gGgӦ*#'kT5cf2Ued̪ht6_B .y0/J5MrMvYIn9CUYQ-] ZALjzJ$|@6UtAUBWFpDXuE'@#7~.Ai1"[!+ ?zfDQ)T|[tXg Md DԢX|_zU.Ӏ(<8 RSW@Aqc+DxPrY _ė枂9SÝ}w &-֫ xs͚nxk跊i!񿅀,zO?KR{E z̕}xS]ܨw: tb\̻+ a@t(hB7PI*W vS`%/pDaSpp*AzhWоkW 9C2(x*k8s=p*NXHRyxVkk ܙl4)L&΂:Du5(b3&:%vh-ey) ;a`w# 2y<#WpdD&oudڴ˱OQ?LMY;[a:?Tc=&cWK-f=msw3,X<{S t3T&Q%Q3@i3z7YnHw: 47 !b] dɣRFT mHcU͇4> )t viQ܉JlTL r4t`Ugx_(pTnd~5#R*7kKwݝ;i{Ft}މ97f'{tΜ?~Up!}]骊_ǕKUޒNy@I4+rRNSB AVḁXIڀg zM)3[V*~sM'1XQ Fº][9&)7Y>%.ୢڏ)7 OYǹcǕizOl| x#M̈9#@4Aß, EF؞{X$>H>deW-x L(DSTQEnB娶b7J+5eJ2Qm85~& [xv9(`KP%S9ݰ|c2X( |`{q VWK.3Bcy/$iP]˶P'~wZAG VL3 ɜWv{"ESLS ;H'2FSȑt8Vm"O&od 1]HAash94!5pPzǕ,JbVOp˴ceXPƯTCs= Z>v7H[ϡGyay:eF%C*tdLc Aʵ̮ou\3eXV=AŞ@?l}):󘷍==( k0L>`D3,mb)s՜0j΀ h- PXDћ\H,_ GIQwp>$IN/]|2 z}pA{xBdнt𪍴HՈ^FOWrq'yBNg3 t !wWˋaN"o>aݿcô+˳=5^m77융{ٙ[#I"(Ztήe\ } I%QO/_ڣ4;qF؟99R] u(>jce=hK:3@?:R U/h qĪ!$PwM#pBy@m TaF՟ :g][W_ L5h } Ŝ`:bZBROslrtAHVE.:#Ue}C$43Ծ= :ʘ~(@? y%5D$1xDth51֤s ɀ@;(gݷ'($)Ioo &8l'0]iCF#`qWsxy8Dya6xR=lpN 6P!yi]ԣ Մ$tr5qN% r.MVAZS xXAc/ifG/ޑثbiO fS1oNAE[Om^3gƼ#h{5 y"\ f<:LC![-14qJ "ֻfS:ZMYLԊmn@yam\d<Cu]h\i'=FNzcoZ@I)RQ%6/N>]?96=~ L5 HND@qA(PO퇥BJP 7fZ =ӆWhF w~L)86-=_ /DBҝX \̚%PrE9KhL gD0B!O K*Щg> %Ng!Fǭ#"SBy/j 6,+Ȳ.۠1xoxxpZ5^!)mr< J0o( p@'Bh wd+,LdlY=)VV5tў ܅_UfW Cq1̿;F =(BU QTQ^c sg*9T&ԯFRQRW6S4}/<#$chZ,Ơ(9V6Fl?9Ӣ`5 xoǫ}lSmF邧ű ,ERD/ [b2禛ItkS{A8O]*C9CH4S&P TH,6;84lV&2O%2@DZ8GrW  i>LbJ)Ng!0LyJ+kHef5oN`1 `ˠ ul!w-c`f VTbq3ix߾奫(~L6Ӳn\,mOˎm,hH=qŭ6b:=Z(9U\$;\h uS4XtHC@D48`Y|NV%6u:)6J"2BY;EQ.:݃Dx#:#^75gݾjžO@6]Ҥ &m‰d\cɸ,gyF4'MB #k'K}3̉\1{ Eg<9tz9 SjM=/VkeᦦmmyfŇv95+a5Ƶyyo/U{VmeBZ }X1!ʄ'O;. -NyEz)L[i~o&]lϹm!rs:/klY(1t=G8cɜ^.Fj,+FE<]c/_zYo1~bu_1 N]GT'mV̿Ȣl&ۆo-m-xwTՇ2 @b֓}}詎HvdP߭$%n]J`a-9AǍ8"]9>(m/ BBT эM?Zs/:Pi*tϡR!]qVi#)ҍJC?oH[ewԣ i:}bޟn_uʺK鏀rW_ځet/Irb,^Eї|A)">eN7ͮ=~KI j7Y Y -"Y,z1.yD>yƔ.0S %%IRdA鵄Yg%_6࿇y7YxuY{p砰}#)褄PJI 62_s3^+4pU{BsR7im8Ҫ@E n6i3|YM)%@OoH) |Nx:}`C\J⊢bU)$HT#1O0ĵJFm EurMӍmlqy]kZ%gcUWjUVkJRQVJiƶV(H8o6.^s7oN#eQZ@M$6AD ~3`,?Բf}S\@3-F(7hG 2erwpWfo톩רc}4>~q )`Zު9dG#&V ?RfGPztV]9ߓyp~z@򇢖u&u*-M&xZǁ=8^Ղ$!xr,G?b“u4tLѧ\Ӯ 8B ?RG7ȓpGy&x#=J'!@A|͵eb/)%ZVrؠځ!؆WG2p>5E#ҁϔA<\}r~#̹w2L< ʑb"/DASwlؖx3uf |U,Trĝ)|SWo0P>|#GVlyE}Fpz<8lע@czaDX`Lz@,/2|YIڻ:̼lvSXE$@c`~ʹEA-hS! +>8>,tDAovWg- .NP#õc󉆜ۊ=L &`$y3+ qL6?ŒK[]_gOwCoqpx*SU٩x / zAҜ&~fN#0цnl{3hX*=>j(8ğclF!YKជ^|Wi!,U`yCam{MQp1͢EEgMl œ=8'l̆Q\,F~L)@S̹>ÇguZGZ(Ը"9UY\i֓za~-W_nDrVKl0ABcc)W]D].)/)WI40BO[Ԍ&+1?%6#mcu+2Pi==$dR$M?_&#zx,4 |k`G\[/(fhVt0#pGT Ϥ#VdǬN9^!,iȚɮ)Y0z+X4XCTt "k4Q~HkqCW(2VJv]Nb,w" υ^CR= RBe6N;,4/LBb#jPyD2{~D3^"xNH5,j 1[sKݓdy08hHngɠ?^w^pDHāӷwlӞB!3%Hs"8W U]8q^GO&PxNxZ6߮Faꁝ5)v޲dSǃjWj#0%Yl9[hVod{_@i)Z4EZccQ/EQ@*KņPGީ䡾To zԱQmmERa?싞w7¹5GSx';CV< Ѥmb4 8ЋZޤD:  n|CQ!(ބ#I U zvE/at&Q? SlӠvEG'~jkRUjl \ \pq5ּWxP :86\nZfi ==v9$i)ײ\(3 nٞ8g;,gx[ܻ5W _ү6Dc_sxPO:TOZj5pdpdFq?yН+g 6PQթyhBMk U݃N5yJ԰澮alEƜ"-KaLY r -l-*W9,]I8L)\.2:[)57҂n;*Xp N3*Nq0(0y5%EWSb&p5%$#b&YtV岚e xo]s<ŬNз,ENq.8c&isJSҤ=ћ,cGd1:N_Z(sO̓(qs섛kUD,2fҤp<9+ݍVaehGS$yDPwJд= 0N;Kla | #&&Dx9͖xDm|ff)ޓGvYUD$J2=IDm*1yLעPj.xZkjWfnHE\ Gܳ8k&(wrm(V$Ak$\vԂ DGWqUAzRw웪=_(xHoP+eZ9 Jۖ㥯?L5?r%}.GACߠRh1/z@sS3`R3=y<BM{Y033s(`;oU;ow{^r]=,[;);`yJCq~wV  {Y }5"q3%'*9}ɫ|69Blޱս~4g6Ӕ-ᗫӳnPj~<^H On BY< ~}`Ѡ;QEpRr+nqhAo@Ϫ?hclo߅l+(IxD4 8;EW[׆r|pNma8&٭%/(֫'!z1Wo L>0=oE w$5: x-`kg,ӕ\AeYԸ64F~V9i{6ld))^6G#o^ 1JU)j*Wi5šF4EE#m}2969{+ZrP+i*e[Y,[,_ӣ1́DPV(*k+4슠Usi{ٽE6X,Y.S6h[,SvV醢bێGd\m( ݚ-H@T,oT2۠f0BN7 4jӛ:w?V͑o&Kͱ^b5~AW|ع;ԼkO1'pf E|vr4k|FѰ(A|y{GiF3ƲhO?'lryB8Vmm 1%1ߓ8iO: 31Oʐfr-hdymAk Z޶2mm[ڂ,h)AКBY 2לueܯ,8-緻ׁ!]EtwヸIPQܮ0-enL6ɿ/&?F9~XĨFm"ټ3xl<_WkJ#[튒Qv$k-Yk֔=k[{^J[gl~S)S =&u./ۃޙ ?HV2H^b o7 we|Mnh+6,}k{i)vC=su+嵧+i%hn/~snr P'BKlh-jyZ)ś\}죝exZ{btqq~0A0gu#~>˃wm: 'Q@bf2pK6R3 T q1T5Yh2 zM9Lt^`&}B)O/ܓ˲Lj dL-d@mٍ&nn4;[zOd4#ӫ-F"Y0O4}noN~ϲ#`  ̇gNEiiKV(Ӭ %- k?iPW~}LK2}HWJh$ӏߔHz8oJh$;+-^YgjF+l{SF3^\b0Md6wC0'AiF?,XxHvK G[% Jڒ'$'RZBZDi""2v5zN4O{T%l!g胉;5ds7 @UT9 ;J9%q5N۬MnnlMνbK_$P({-0e?c,1s;Y, zd9=.h^Edm:.\1FZEMmm*[n%$C jNԑ $vc!%SEwlxpf|{z ;Ϝ,$``ݐKӸo \\Xܛcf ρ%6vRmMeLaGj^0yZ:MQV>p WZl@)W3@6TSǚX2P*YLowvzDf>U6Zu=Jjf-'uhBpe |:YbO1I exW#ZH/"T-OP'H"V754L=Z TY^ʒ.(K,ie9/ק  M{g޻~̪ګQZ[SJR$iQQG}RĞo_1SkD^L2lT,ۈ!@Bc"ЗsISs:2Xzz]s` SPմb\+1쿖4_E;^cg3&F * ,6N[uАyfE5!7 xsm%L#ՈL +H$9z[.YlTW g؀Bֻ7o:iIJZRy*>|'5rkXAYI;aMͻҫwoZ P&u4^{q׭W^+Roq~_Q[F([\hx%`'ōc J¼w^^I^S ;ZoxWǯ#!M.H -U$R9V>*Ȏ-6."ڃ rXLhJP5@q/pƻK*˄X2Y x6N:u0hUu3i ?xx";PgRA41ǝnܭ1zdr/`,}Uq6^<y:}͆3nYU4oN)etRRf4V2E#C eY F}gMȔ?k(ųΩ< 菽/sAq@ 3YzL=G2;Mf8d5d GȆ䩄$dL (!`Y"itn}B]m¾2ݞ0ES/œ/EÀUŐ'-q޳(~}f[!;ڬ٬^Qxjш-$Hr{Cuj`7sO: Nisb2 #w7o1Gw䲲I ɫnwo^^ ˾{#We?6۴VLLJHd=Mhʞln>MhYtBCmL$)dlB'H!<E S P%أ*̂4fYP&o^lT7n@M=Rmm2=%b}qMUj#DYt=/ @`1:ؒ\&pAً)[M<|z#0w4σҭZ/' jEO]VfNSw˾njSŗ(KqZn;_/hsTF*Y"O'n#o'=D)ljU(J_[X-ZE #dC2$!clPE Y4o4-!`bRiLr[MFR]p&#}ז> Re£ytGGo _ ߴ zEPz}UyD ɓiCK&yhRBf%OmKȾ$ؘTAqtdNRWœ0=yXLR3w3vW"oX8d2ѯ 0ikR#ɱ_|x楌s]c4zZOIcPg5э}bR{ځTRu?ۄT3:YDϾ+t,˗d&Ë[ŴTC';)^S1@եp(O&!ۊ[@HN䆺`L?_ s5<$K(c9c`quÿ^q/n*!(b_=r$5ßZ8^K?xR|G[=ʧRe k{!Ka9pIK; ߀v_"q3(zV|sTT=Wcx@D.8\ )N!b˸s?Y6&RuQsrs9a6=چT,2V4?QhQيITWx;?w8/1g0zs=uU !dC>tXsfanbr~l ǃW{Ze jf|Mn phpߔtO p#UgpoT5k_k51Е֡h E]E%oUHB(Z’1ݒrpK=7pBD~wN\jKl8G_ mk6ҵ/I^ebW:ч|t P ZjZD-0`cد>Zw C T&L=W;Rȭ*}>/hhC&6Q &sV!Pj6ZД7o!xA(P{[=`yaL,,gyy(ѧ=2ñZOȝjϡ~{=^G)6졄v}mwg-qp*k"c(%ʓ60D//ѽ{[- Z)C?.ëO'3Uȍ#Cc Prtw`RLP`Ӭa{0:僩mzPjJ-wk+si2~Q i`U=пM! rhZ2sL/ `6% ^L(#DT~ P)؆~îȋ5i?Lr69ϿxǶ[MO4B.pٲgT@.^wѹNQ}`Q 1`laqTegd =ߡD1HXE;R&m"H MCW'=y2Q6 tal ݑ?3P.4s(9S6@X8# T&a9T@Z@Ɣj„@F#wcJ rg6NjBQXDA1\vȿF_vi%χb:>`/]|2 z}pA{xBdнt𪍴HՈ^FOWrq'yBNg=>Og@B..7"!pBP~='{mt Ӯ/zP`֐zʁ|v=~-܃֑$ts{pe`Yt:gWL@&6ϻu~KBN{>v\`yO"u? v;x!Z'ACw}a8i?< K{4f s:8'gC*aGm  Qz|Bgxס`R U/h qĪ!$PwM#pBy@m TaF՟ :g][W_,@uiFk(CX(Dcy#9 ǹ㷤8m Dj-rp p}ju7B"H3\C̃TBaWG5PMYKjH- #ƙI<\Dth5uIyP2 ЎJ,e$ %M -h4U G6bՑ#`Aܩ[e^ CTO. cHeLyTw}s ~S9\`Sc9A& )ʌ<,F#3oMkۣ/b7u?]G0a'҄][UAˋf511H&0`5Uf:X4Fuc9K m\v8ZߑAu&Xh抌! -ęJuc bDߘ"K` Gۿ@ Δ""=/H~D]D}ig!Yp%ٖ9,_ޭӫ~w^eH5Rz: ">BAF~29DB~2).r3fy^t{_^ *$M iE)fz^wPCP0!NYXc+6ar?P@\96UG0 TeUxp6A0DGTLA-014A_xq4TY&bH@E+'2b5S@3]{6n*Îpsp`Y>)\&@YơB,PUtxi7[вҷ(lb! $A"/2v,3$hasF`RI)U1-qs;=zP 238nC,yFh{ו&&J ^3mC@!hB쬃 %! Y4a7D@_a0`fJC`€oy f0*:`ʴ1~ejܭaWʃGax|!@\x3Sv;e3(4K^1fKKcI?6YU薔0 Bq%k$ -NHu6J[aMS~ǕGo})lz|9R 5R- %gG Pu1[OA91cUWX. J8"@]r@@n&xUa{qW'sfH. qxUk\|#I{jPePVʈr?k 0-]=>P}հ88; * 6Q0j@yG!ىE0H ga$i7 ?oj>q]%f!F)K Gb&X$F&eE(LXm`#VX݇` y<wsuUszHLv;cF*)x&#?nn-BKiSB( Uw !O$1r4sFE}fu@&SMt>`Rg3y0^hu') XP[É`f #$u` -l$~K;81)"K4Ń$a8DBr!A-KEBU Gn5T;z6( ""}ʷ J}֒UCOSBZ[Z22i eE#6+DTVPV!Cd ^LQ/XwlDw[ߖSPc-%U,z+ad*Iso5o֔*܄ԓUkZ$g-bIK=WҪ:+O=Xvk5RҜTrSΚsPkMzP)~רB1PYK/-R t$E"^8AtM]SB//Vzc27Y#b'xtNI@01cZ 70Fn3;3^)LD S_֌23$:Cvjz:Y՞kt,Oo!3g+5'R|eD8>0 9`"~kam 88>5U,&K .kmr"&Κݚa 5JA<@Fғx|D@'wn [ !w+2 b 3zzW\$AcL:JǠiG Y(1C[+C}kzKpXk\T܋b9CCt]R/F#Y1R+Ror\ԂK%Ba#OT~Lg[+͙ƼL \r]_jKKBr;odznm~ }qk37#AE\orvíB`"U> S I$`Oz?޻$ R$sta n]9}aX+03xFJ*?N+p_| d r}b5[YcX-d3lMNRA|c 2Kڒ \,3~)h bIsR>A׫;{)Z}wxL.e8B<>u^,uUL9,z*Y 8eN~<]p5x Xh2gv=" $ZWbHƔa0LjÙumzߢo˚o Yޭ?:=N9}( c`iFY(&ݘrHSBwJIwI9!OW>MK)!"̞o!{QD,g>I /r'qR-,?\rb!W;ZA'́>=d Wݳ!A#$6\K_(}IieOwC*}+ W$3CI*۬R( zAZ('DA 1G;RyXךWd*_b_vY #P% c㛑5ݭ/OYء7Ikďq\pbή-ӳ́c@/F)xt&pma>!Ywxd"9SD?czOC(Wn'oG_xVޏ,')1 3 Rb"eÁHDN&62gMM{Z]E] Xށ`DvA,PK[RT?A1ӠV'$k1UPpa$J"!aHFF }"p-O*c'`<ҕxp,o;,KA`MC ,l{L8DFr`q tAV07vdsDțEOϟ\42 b{hh~+w3Okfa;X'[n+luTS)OXOFɈ/$~S9'dsK?F~/?dlBE2 ͍oIw~d{kfy̖3j_;tڳsFj?ԛ5u{6'-9Nejt8fO{NEVNZf%3^?)kZ:m>͵2g-NzzʌZ'F;CO2 臟8uhCOiZ5g-N:KY6";IC3k>9oqi !@ H~J+ K3(Cd@?nCC= ~ykA塖X<u mPOBh˃MgtC<4ޢ5 ӳ}J~'%) ĬPͶ3Nكio}^E-ncIQ zk~2WȌr5B,9 i; kSXIEqV i'.)*">Y5j!IukKuPIHD:7;< y9˝GG"uob+w ēXWȸDFً`bCG"upz#܆'K\~<"!k)ב?y 1_F}bRyęG(ߏ?ROK$U* bȶSK]E?ް )W~/`_U-@oJnޘXލ"](~b,E-/pg`.X/"x2#@WRHQ\*͟.A\.?|]LA>g)[3 16֬KM-@"rų0{^dc_[?}!rmN֫~RZZDR^%'cgx1w@ޫh&ԍE#ʿkw39Q@F":sǦ`+5)9QWT_ HiYF\8pH2? KdH5 [Ss2P;F?#5vJ4̣LWdJ5\ 7zGd5$B^i_K"%XHF헕C4mg ҙ:ռ% )v}ƙk| ŒZYa|)+-^CQ/rEvO·ZI~)5 7l& Z=Ufa ]cLTGqMe1 Ё{(D7jY+%GJV@Q lhFzmt}<8sBSBa m<5(kU,SU-o%ÝuDsBB>Ihe:XsYv*Yr9':#PRTe;eWӂyͅFȑB۸,fګdiJi]%$@RWzN$V&{_`]TdIh$.yw*?֑!r˞C–xku>x,}՟([V0'#2g6d@CBT0" W_9)S9 (֫r\ǰɆ+*:ZGNg=X+fo"e=` .)f+St{lB*)VGumtѧG6&ʖv!oxq*_;iU:hc+vM>f}T=ne|d7s|Ǭ:{c)Wur5Lw._GZ\FZF#9讘8 *#Kd0M=JiRM23:Hz`ifs4ũtQʓr(Jok"IG)Vyd]?db2Dt(%J5ZJS 룔yRZrѬ/OF<\7⤋ RTk#`>+k&c3>2㑲8fbHj4>a+75=p(x(M #c0Du4hkC 3˸XŚӻ~=7QRRV^^EDHy+!격g3SQU|qqW=5)-(ܺE?Ÿ\7$6G22ue &Xʔ)KEvf"IgrÓoqCs!%"I:өi0u`[WyA,obժ}=V'Gkϊg>_{7Tf~[Dcu>zz#OrrW0K*lfH6WY8Cbmu跮eپȓŴvsoٍ. Y:CT+^ʇǵ(W̫vy(B9x;d Aē:-<^~2?WEU]ב1pT?6uҩKtGtԝB[I8XtǞKwdJ햢R-(쒉 ,ШbZ-6(LM֟"Ga`uY”7R]"|CKKg bP_I&B-ETE ^[_~e"Geu<6p;a8%KG89p׏T&I4Ud݊7-5L5ҫg\W 61:DkΨ$i8P;NA٫S lˣӓ uRhA2v˥Ȓ)dZNc)>;)m;sŅV̑f|$@HPjt/RG^kxצ"g}/EM+l /éܗ&W ?  E%3 !ͽ9e)TD 5( UIGG.zu/\5|*k\\uUT0`A&xԐڸ[!oW}!R`Y<,*A,swfIˈ*D?]ZJrr53(Lk/,ĊeEyNAªf^Yb),A )bdQPA Ղd\ZG*Oiu'l_}`]ND"- lERA(/ =e5xf}R>Vh!\;sQ #[LӃ+X헍P@s;N C;]@= !cuq#C~C'`{Vt~ (׎evv`!{h55 c+hH@$u*0wWO{Xn!mvUpkb_hF lmtgR\4(*T@G#$bX]g{/k=kܿէ9ڶ;5R/S=d#)>4?%D#)*F};93.Oc{M"ր:K*!`LUy 3oL-ǾU8/*C ǁgXv1Ԑ7qվh±y2[Ǽei@Mbr?'sv~zv~Իqpzwry=EyDol)م}1ր1$w@8[i:`(܂Sȏ&e%T6QG09HH~tB̲E݁ -Kksv'a]|n <̷-# (d3 ߙ&g И 0عnf`5 PϝxqݓãFeqz<><"QJ>Aߺ:B!tq=>&{~h! yT[@+JO{`zW6aɻs( L1]$9XyLqz//8qhY :<:>SE○8~GJˋS}qu|yw~8> 赠e;@H>`2x#9ENzNrCSzzrDϏ.pT!J@Idz@] PŘj]g=[W˘k"N-o7&VXOBe{eߵFc4N.,}7a70<`y!$kNTn%yg4֏ 1xwFU^WGa@t70NBD1io26=Nj>79Ʒa$LI{?u/.;;c滫clv~uv /~=wD-8/^쀄蟡ׯa<$qJ ziOf}x [ H5I9R~ ma@ͷxh8h5a4[<Ѐ %A Ŋo2W$!%Z-< LXI5 ã@FŴ}J̝mn; un`=yYJ7 goS< aBc$ $3G#t-cyedN?8@p@*t @pk@@.(f^&эxI]ŝbULm1ao=A_oN!" B=zjGy=d@?Qͭ_/^lrx1UƜ[ )ߌQKd6 H^,50Jm'e'L1.pHԀdė#7Űߌq">yԉۍm0 2}&]҉2d?"h "C<>IR7l fudd ~6EJ<9M~rY'" K  yPT۰9rTu֙u`˪蔡މSܝ[n86띡FQ+tJaYvؙ.2[cqEya},f찎0^6bxW2>B\v QY 3; s/%;ZيNCg|oH3SY4CħV]?[%+B%I)Yf_so4 p+a}WJ r$Ti܃R'+c':QuU!bLEd 쩁+{,Vo7W>ځ_!;bOۓޑ::t)p$D^)$d^):: UBO.Y2!N@DeI'J " Ų{%%U`(Zu^ \XʫNU(%U&:_O⨓9Rg餬,wO| K/Y8yWndwF2y+?t[gVo:Xh䟗Yldy䤭&]Ў8Rk)c,щ;S&lOX4Ð{+ɝ#e-t66?||H#Λį+3g.#뉾,-D΢bFDU26`S7H O)/zN.fˠi|'қ@58dA{9qBsWMA[`i78iNye)'ieRWm$Z5gJ>~jgDBp1?iOTcSdO Ϗ+oyw Cx@"-{U#a5`O?+Z'ϳHlaL"*e^6*gh*o VM9.,Mt SjhdɴD,$E"elrx]粵LaˍR)R60ᜏ"Z i6TfH_Rq(>~E߈nTyק~4tK{&b|˔7_ME~jK\hK7l%y,lDN('I+bn!٤bDk2,$= tG2!(C ج#g/AiFk HӐQ)\+kROgҥzCF lEts(~WHu~)Ԅh_0.D Qvn;ڲVҭ> J07ooxޟIlz4LL5C1))Bis(O2q[H?s"2Fktʹ52Ӫ<5kfb*"uSk%ϗI8A9K%P_.5ȕzc2&IZx̧,8N>yXZA|`y VO+`\sQ C?CLl̤p #,RHIǫ$SUDcJ6*uBN 0=ٞdVN fͬ0K3RN[k&[Z.L_ v$0 kid$Өձ X,;~ռ+ UũEwLELŴV0V<Wǿy7ժq\U~g0*v 3t3%PuWuk#l6N])a3AFl$M26d%+n3$kTOy c:jIePeaBfP S]lQl1y<>j)\h;sڶ&؋,~D)pl1_3H/) ˄熳΍9[8U,Z/OrG21g#Jz1-ӞskhsKKYT014kR^"XM)$5h ?Uh RZn6]#Fb2)5mFb[@7ӷLCq_WA~!lY%'[ųdACxURT) eS bD(DU3k1$ ri4Aqv`-89 ?%?LJ@3#PxN_3'5ޡ1pECI;9O!~u!4_`_A 엊akHeX5+lǢc)/ WٔHzcj_8?q8bt.nr#u$t4b%7r+ȽdblMn byӞ٤C޽{%nЮ`v2j0?*P$ ):W^srp^gr2hDo8.e,=!)p+B" :Iߥ\/h(@h&\y+[_%sYJ[کisF4Qe룾_15S߯zTly5[RTO$͠$Y(׹yYtnzr{`Zv$IvYzq㑓xal~6 vw)wWםVnsk;+q3ܿdrUQv۾~rJ~!<'/o<:Ȝ 'x:?q8 r[1VEvH=|6V4(01%ޞ0:([b@#GhzKA:i%|q YMrn>6&l>] rN%#6q:sLǂ˜YЯtV2l'ya }GGU-rԮW2ljDhgm5\4 \ .jKM>v_=;LۉKRwG'3v$y'5K[ IV1ZQII&_x;%j`dv R`'Ě¡`wjJO͈hC Gu3RwubS1:ȶGiԉmNlë^EM!H*{@;%瓩Tz1ez f6r}f7eឌά\IC0 cdBTj6V)g(ß-' ]+'[BU3z=ep4mUJ9O 9BUY1rܾR ʆ+C ]PpjHhI:룶VL[2U.Ġ3PCYӝvĤWLd}7hY+Ĕˮ_Q Vz3)(8sdt$O=%H*0W=1pBfW]]3vŃXR' _DkF/Z=48.lRU( ՆMԅMQ *6"9ڰ ,"wPv/M'Ǜ1K?@AEuL(^GЈ>4҈Ke_' +{dBI2FFwJݝ}Fn~Nsc9b0R?gIxhfѭ,E^ uS\V[8]HssױeQl0lUtgg;^\64nťN5-~ѿi"@~=0N*c{Ą"ms>;FhH1A8Czz^ljj\$$Yelt#njeL˜2eH -8_JYHJIݩ^в O4Аu-MEzs+圚kK\ʠhVf,HG y`.d7xW_xHxg0c|Oa.1(F$CwԛȲ擜`nzRN. _-`xl5a0)lc6MYk]Ӱ[^Ö:&5ixϘ3dZedY/Ez/mZ5UQw3A<7ay+9F RGQ$EעfUPun9{ q˥31iy|Tk #]^ݩ/HW~CDI48ioOK//pWXG!a փ}擨]{Âh yYE85I72Gas #PVNLW$ДKO<&$kzjNSˁwtw^x 26P]2&SW ~ttC1+3=jﶷy4G<ѠUrIJV5,?eDi)dMAxS_ .ǽ.p9 v¥ ]eT2tZ2A nI֕Rxw9冉aj1)Ī5(K,OLZȫ^4]).%LKjt3gu]2Z RftI.frOr]bì]EE(# ~vexDp=<-$LBKŽaqz\ O^x4?ɭLH`wuVW8]8+&^I.\R*~!|//` n )^yy$LjRgMгaEw Q nFQLciӚ6tG9MdKV/ʼV45*C˲Kg}mq">VT)81O %((yS.cGqClyuzd /HNҕq\(Jh!{ P֊d#2&  <ge;ӫOs8UT[/_cXo3+CS=w0_4V0i<7h ɯC50񆾄F9k[s797% F-9 ;1kKk%,KCf QEZE?)F[ԀbF_]c3hd=7p\Ds8d|lnsHxN4г|_Vh4XUblqَe4  Rl3w|lܿnT֑3D9$"^:+b4ʡOo >7~)[wA5fw]g͟ Mpjh˶:(})Ϭ>Lj, ~kSk&(NT rN36,~ v AZLrqtvaVˈ+Rɗ>:# I# d/yk O+KW7/%RPU"&%p3J]+Tbj{זoNMHNqAkZ&AOr0=?:@x: Rnu“&ȅCskhm˻}˸Mc3Z'6 014g370,pcWT;)&f̀i.6E;:\u9dQAm =5"{cܦ~ٴhHfb|XoQa^{4Z֌Jmt@hܙ=4@i@ GAN&~pqFMp. "<ӻ>3`\q ̟b0=L ɺ`n=;.!{`=A;pq=94'4.AM/s%h >&}уCضDW'5:ƒ?_Z%'G'2rkwG'8B ,q<&ʘ /_N<5b aY,v;<:`SE○9~Gj% #ˋS~qu|Szw~8> Ի赠e{. Ѓ #]t3FNzNCSzzEڟ](K0'= p!X΁KtČwAg]トl&ө mSpfL̀-ɂG{yww%42 C&EIjSĕI$@'1`FVN%-Zd"Z198ip;I"ю&4aE#U9l^OG{F?Nzaie*9g{)yV%LWH:ۜK] Ⱥc"h$V_gjq+iÐDrJ$p~ce|w ]?.(<ƠCIB8Ad<##{@,"\)01 I/ Ÿ?M3<{7 ̤x !IXQJʼx G>ct!B=GTE02Nxﮎ 2~uv/~=waX>Il<6+6{12,pAh~SҨ% +73Jcq_:^sy4=MOAS4=MOAS4>h_AN<]`wƹ?8xvt;`)O!BNcą?`?B x2?=9' ǏOSq?:I`)QH rh7<):'W#Y *_G)c;r3}A1|1DtߏBs[b?`qיۧeͿ.̥m̪Odd@f]hO[zT)bI1e VVJ#v76#k j3"9T dyZdj!Cb[@;}@u9umG3 qZIExBF>1[7tj&.CͱyG ]?8o',B6hZU:3/ esĆi6e7P"CN4ȉXb `]ZR$)|Lּ R1,ӱAz6 .hq ke!@ť G&L@q8J:6ݳno=J@+ h'9 Ro$'PRf*-#yXb0)XMPc(Eo9mДȭ mԒd2E[o0\0o-@N,يLSI1BČ[[[7|c\7 :ژS/A`c 4G"dIo9Cy&~ucʬy@@5vg: or6:;+!> `aPU#0[Ԛ,G/Z)oV'%;}k|/qg0zz{_@;*FRƩ ؉З^'1㫦%x]#b¨8WzUcqe?c}( }:2Z}BI6U2>idW9d2{*{jlZm)p!ODRf)RgXNN*U9>qR2tрFZfdF"Z1?|qF2lI? h-cՖ~sODE[ThN {ilDžH!TZJ% yy)\j+IQlLNediӁ;/]Om/]{Om{/4 KN/1vc鏱'-us%]&].]&=.=Ns?v?w_ww__:haiweiwc(rS)J䪜lqUJ9+'kD'ߥe7[^[ jr3(#{Iт~%/gdb F,AB$2n7Nj^> 7wM@q7}j|jhO .,,cbRqڣ&st y˾񅻩GAȳ?tOAto?I&t$*./9iBFΘ'WћcG{">NN^Zh9ǧ$Ě3rCđ+l3xqFn460{h9H5 ꯔC^7ftyD߲ͮ;Y Ҟ-9I8"Knc3&A&.'J|{Zip[s%vKpC5&J1b@@|PF`gwo@ďjWW|U@y \s~h*"PNKsv oݺu=t6)Ry+o{?u!Ann̙`}r.:I9B%B.!!P{?xI%[ B<3k(%߯b)w2)1QEO+v}nx5d\!hϭDIUK !@闂t]h<#Z37+'x׌r͹+aKv>$1J8W3O5J>–9^R^;::\Gng}Hk㍱}wq!TƧ O_~`|JHZtl4$Y7o"0WiAxQ#UL)0< Hwgh|iL[3כvkg[%FP;l0v^vBgNi_gԴ'1dB◻~RMH&-ne˗'#*^|_̬] f2d֏%ƖfsļHAܡ/<)/T-`f_"쪅4t b3"Lǡm|qy}zlB֍,gw3; y&rg.a\ךL`s eFR맑͊4If6|&/9|UxPTdboilW4N#jl?sM}W0[90DŔq2qCr=<}<1TNں(fmViaN{1nu/mfh|3ٌ){?l`a3{=5Bjo˧f ħӟ.şۤK-F̜ Fu%sFOWe[(E:h;wdj$:$|Ì$_1G:L.DA S!&B 8Ʋ*Oeq0 TJb8}WMIZ9M)e. w+߉uf 71z$]E'lhz#<9{M6Ѭ76+$(3,cۼ>qپ]aiߘ-&]ËP$? s%#YsI-.~uߠt$ڊp}1n'xAcdFKzПӎ~2kzA@Ʃx6q 'RxٽJ%F80-=𠃴}Pri ѓԱ5Hi'vDYY? #oȃ<#4YCdy,²FbH`:_ea燻bN@Crz a:+G#;S"y9tΐf<"M‹Uل&4w| 5QOf3K6TS;,Њ' :;D+t]O(-Ia!^TeTE4fFp9bKd6%Y04K,ّziy4ח'qs'sq?jHޕ<,- c,*.ֳ r$ZK,Ah-T[Ei$Z2K@xeg^%' &% i^rvJj oװp#)#Iĩ)Y.gP$f. IEE}I> =U&R8)dem,G 3ԭHr:YJpfPg?LJYcD8w9IXIJ„ȬYNV餲ƒ g/9k3xNTYMwl: %bEDu:0R+&Qy,MjX^sBؿ<:$PaɁGxe|5]|ӗdk84“B!>b.HE5/#6-x/Mg')xT'Ǘp @qZ$(]ih`D[t8A[^lr +G ,#=}$f uK܁]ʫUxD5 &K3?YO`tK`=wZZX^͸eb*D͋g˱}rɊ-ڨb :P5$k&$Reua=7Ka厷= (q߿3;~Im2< C~NB﷍J5Bk(hddK7C 1sߘY0r tv K[` bcwYa29x]m_ܫΏ 3,<3ҭHiaR؞E Z Dml߅9}S|sN&<(ՑM>Sf&BpU t8J|ޛm+ +j*%#Rl>bˉڲ$gaiymgI7-c_q,`03ˀMXK#%0 ԧ0ȀwohD% RsR$չeJNEZ(tg3nt'um I2hlix3#69~3SQϷRڃ-O4tmRo8n۶PAgEnM;d;|Xy&mF.61LiTR4[sWI[>6߱'}ߌ'"؎nD{dвu+yTk"RS㽥{ >ަh,3nBj4{Ӫ c\ڒÔ"9#$κ.LC0wqƻC z%oJMg^Ibz#r!KZJyjCw\4wĞ')SgحE)fW;I}(sݹMGԧ $zNF/,?酟:h;9G;K8elj*;y!C|-M(|kbZ^%BL;]Ǩ|~c:1*5Am7&ҘH )zʹ#ʨ5Z[1N`9&ً tdb$\0pΧc| OA$` ӯ-"UE7&Zd [M =F|y!Dݛ}DPiuXFDjT 2j+监1:rP!eQ6,g ZmJڦݸ5qTVLp%:SIe:pC" yĜ8?7ƌF[X:c!& |?T.+0{@@&sP|)Gbfp=MHv?[L8s$P7dj$9sw- <ؼL+$Y!_Z~ 㵵B@ iVL+\oiYo%=L+s~_UZJ+5ݯB6V'gL+BZ8ͭwMx~si$^9IjboF%( i{(7A{(-;Mdӷ=xMnmS77Q*}!7w(!=''͘(sJM[4*V49|BY(O/z\BL6D/Ɂv)q[~P ~dCҞKړb\rҞMoHڳMt%Bඐ '3Au#I}V'369Fu܋s+$ɲِ7ݧ>7eL'"[Riۆl.mSI}ow'*=O}e7+٤>i_S^%Q%xSN wLGJZS^'1 hHo'a"".S.O#٥^';Ƭ*[Ns&"o;aL6YL\t{'c5a<'لeI]˜̳ c"a 771ƾ17.\eѠ_{E.֬ғal=D&Ɍ&^.ƾf R+BzJt}~*4 h^RP}Es>йfdFe-u5e݃ V/ )%u,cY XZ:ױ5 aX(45 i`,鯈H{=g]b5hdas.蚠Ǻ~\R?.Wԏ5݉fD?=#GU[=zDQ|_#FD5"kDߒylH̩ݙ.Xe {|/{G+{^%߫^ _ >:y`A^"2y z<ԫA^#DAA05L ђ`jS# 05FA05L `jL`Z";aW<S{%;Ggzl[KkSR&k[h?~֮-WOt6Nzb8lk/vX_@` NW6U3^ٹp=٘MyֳЊfzC$d~Ed^=Q|z~Z{Q,9JNm2s 4Z-̝(s X 5@JBBluǀ[5k˯p]WW͡מs$q}2xO0#7rVHh0/hCg:;%Hte/XV؂S 3[z!v7englm\ D\v4&v;G$WQQ|H,`^psQDڠgńVw UɈRWT8SĝxG iu|Pj#yP{ 秵mA,bxixgOq策%Q.٭ e(#{4|LvTczV+]7%Zo+hV3'e$Q!&xT[#[ӂ}=j{o\9V[rrIۃ`$k9@rgA hPzzՉ 6>O]b !q]9F?e/Nj=sz&F_q{NCb%: {Jz$#Edumt];ڀj}Fa ji1 -8Q"fZlnIA7r5dwPFk`\Y hAx?/vl~,X_,gHY:FQ/c&~dƼTQs=gg; JkS3~34 <&LOA\dyīnjkMM6yY3Mb%-x zlrkO sVQb̲5 , ҍTA8\P[R66U z-^KYMY^6X`$~l`e?a)#RLRK.&[ѓ)4e䍩Ń2UQlN[F;RLo^]mÍͬT-XV|{ycX4Н{kلd+\6DuwVkAV>E3%QͰlF+q_q#~dz%iMrGǽ/]ׂڮ[2'cqίÃe4rL+x;jH9AWR _);"#`xj3fYû`T[<^؉\7u|&Dy(w?C1Fνݠg8T[ C_D؋I X<;Wde+Z; ɁN>DqA]U7z7;w (zVe?ٿڗ'MuI++W4TެY\ۚ;Kr FS)LMWJ2m_=`˄P*D|BrfkYśTav&}_#XeQW}= lAjjŲ&uĶf fқBl SkʽhJa/2kJ(5Vה[i2ASnM6hmt%MUꯦ)9n]S1}Ւ8ɩ @:fȲɟd%Y~A݄N6M2+2KWR6P{@m-[0+~,Ym~6˝lJ˻bnPC91J d /c#kD\+^{jp=5[!u(qKO/{/ƈ^ͬA vc\':Tmmb%qwM7bl|CB!](BoM"e #D8R ~%v$m'Z͗q# >I  QttE{w0Xm,Fk[/&BkS=:NY O O'y.ZV\EG_!// 5d %JK(.ZU/UЄIնPusv]TdRjԝ5*Vfls 6(\IɅ6&s!ÎnVQ&ێdmBOc;2mOc;2m6"LYc=PwIWxlA,sg:tz}]hpM,iکl#FyfX}҄uȌİa]DGvn:6*T9 OB,l&h&z3hư2ctdۄ )=w9di

#b:8aWs1uYzR/ؠjѬ 3GoR-*duX$0U\-j2#Wh $u.G (~rPkv.C ƽ12(עyy"S='7lҳ#M0.涫ϗZn]w擝mlwchҷw۵MK6e\;1c )+#vz/!<Q#i$ z=fNe\LAW5f( Xh/ XF4pC.fӉkQ_f>8ޑwca>Zoض (F%'`hId@&Tbq")\z)>|dgVߙOf֥٢7U<]lŠv̳F<>|=%!K/FYơ)Wv}e΋ c\BP rꖨd>ҬMrX:Wzڵ JԚYx/!9Zdlxr͑6=9_{V&sP_ Sm`INT'ǖ@?≳ֽkY$)ASqjmml+{Y`"ځjg͗Ӻ@)]_9+l =°Uc&Bin[,>ENu)tuH Z5zV\ydy1fGVYM2 .ˤT6$A[5,a-O A=T?2q<4Y {w_lK7䞸^oaЌ,سpHMd7M_Z9D+cWqFg'7 ҀA:e&&fd7VjzυͶ(!^ 0v..rE%:# מ}#fևv@L1#L @ۚ*eʶ.M}e[n얞՞E5%5V?]ߗtȓewyŵb8g^9.cw1"hFt^bSģ7P3lOAЙCm~-\HL8qbxC2zb<ԡ3!44OJrf}XVC׆w;AčQnQ,]3+%_UA\,%ơ8&qxNa!3MoeJJ5 : lH <89TwF-% 8Jq p \G%qVVQaE?Վqѵ&S/dU oz+;%6=n@ޱT8S_~%A}z/_&Vn=;\/$X[^|>Y,wl@*Ex#7rd/,=G !Cf6E:/ʱMnB6/se!*x׊"nF'vŕ#{}Nqf6 ȢZW+tixUݗ/viuebd^-(&Fdxé{Q5x-x^$C^c1㭤BZ A]"͞)H0s> 7Gj͈o"eUXQdEK< $QXFˑ],E.LUF$qy~C_Ra*\o@'6@M$na |f[itcN_#@Lqа{9\Xݞ;I-5@'l&(MQ^RwݳX}%:&$bY;(>w8L>eTQB²gۋPQqtazUv ~$'ؗTn+믨u;O[W%Dvt) .Rd*ҕ9~2 ?@@R](/u^ E ~h3FibuGEBl}v*) aʮO}AB4/Z@X#A(<YesS`Lx0.d;'&lw%l(JhkN u:coLQ+hf4떑^?b6fPjR :M40E!yxЛAj4˞ ZM%H,b%gc3RE%. :[ӊ BLArO@@WWn0^z`D7|Jņw])}(iv :<N=62RKGEc%8XҶT -l[jD9sۄY((?3N)_{>A(|"$d8-/qkLgZ6 /{ i]H1)%Y I^IǓk.knpbg4PRM@4UdO";R6@G2F#,a74C|!y3$5oc :'a*2$K 4gT0hôe\ƥ!KD4R4c&< {dRuI&q~y%CX h&7j'=Lk)E/hXWU 5kuJrJrIH. ۓiC˞Md纠Ve>/iHמXbZd'B"!m"kMr4- (h6rѦ^zD\ZzɥKo7|&K(8+{(@=lO~VU7ػ&?s;ؗڋ6PE DKRW$JqW#'wNu{>-JߔiHSS6 de P5 ^Vxn.iF!\UFrlm,1ܞ4R!X A]$ қ0Tꆏ.2q$ 0,Ko 7U#y8z^% mKfO/InaPho0jgÒN-x%~\K 4A-_iʃ;eX3e=;r&VKS&;]/]/VhV3ӏZӘT^Ivk<5CPPSAJAOI(d+ ",r_xp-9ըU&OT.zlrSa' g1x>V]~!ŕ\Xbi]Àm֩ZK[njYEZ-UoS$^:_cOR)XW)Q4Q&*eF*Tʭ^F[Dg~Y~A-mEvC?{ȇnoT;ͭAg mSFHAAwb#0^B.U='T雑76MFMmȀȷMf+׎{c+:w"yn^s#{ѷb ^u82k{\oQerhHM#Bx M#֤Шߴ3P vG4 (n%mjͬbJ#ݨv̳F<$rҧLJFДY[sܐ}106݆GKKf]*H~>p+x1 4 k0硶"_`:3u01Vc94DU۽h:qɅ2,a:}ZIkH$zCklV3B鐘{5YrH, ]GhO ^6! \υӝ - z_vB # gR|H 5ݯd0p9ȦZϵ\Hi g̃QVI-AY Ÿ;WC0.+zܻh!V|0+f7+#4[YN{0 ?XuoeXk;Xh^`뇕@ c+2Dz̑vzpԚh z94m9+0qK3\P< (&tİ x 8ٌ;7ޙNYs&;\"=4S .^b<ַnL˓ %K3diS,~pSԇED۶=&zThuƗC[Bji h=/{Z Mb7qm `zٽ0dvC[I5<$ aS-DdoQͳhϴN 1f>tdL@KaQ%<|5 9sE"oA d;' t$ OiV#pg>(]cC\:퉱I07E |DW.qWQ_ 3ɰ,H̞ZLi 6]Ȣ~ՎϮvpm:Cb&&BHoKekNg$2``P iMMo%Lf03fl;v;'E]G,wܩ5]9ކzlBWwßTxW!toRHn׸F|s{f^ '?+Ṉ}XI{9{ϯt=.:9) lߜ /7P_:.b< HcsfUr)O= d1d,L n2s~%{]VR,/DC1>+mM]xš:!㏌'0;Jc@L28й/|3J9jDjj; ||x7l5ѣ ښOFN^*X7AfGCF顱_μe  #5C mCcJ%FxݟH,B]!gܽ(O0j~I s{kߐ|_q#yW\jj?`<eheշ xu U$D*L-tOiOf\^5ŋҎQ4tyجët2#jZ@ bkϾ8yN`N̓=Վohdow𢡾9=Io{| \C{|gvq!q:ᆬ ߛ/6Ml~A4w;#>&ACqniJLpxn94 R:knku<Y?E .ld8Q,QsNkRD5rfZ\0.mYZݫ 7cz-yAh];+8=7 C>A A$̚x7Ad M壄8no8fftBY]?o6!`p6pti}"c g.f}[o6[zmO:iy}6O[>Q-x nO4:ЂnxUG`Zy׫9ovog,P;l7?4PBg՚ mBD8R?i_ %f 95Q~hg6z'֘ /EǮ0:c_=v5@3`fq@O)ƿϙ9!}9@qt>=юO;zF @! Pqÿ"vPj575Zӡ))=ufEY&i5(P"HL`h5NK77>&Z%ŪlԑxܛF oÌKǸ{zܠmnGv{Ռ]kӃ.㸗ICf f~L.W*wh jw(pɕ#095tCug]gd|22m[АqXT=Db hZeF#Qݭ簣6Y\^Z[ pT9.f,w4w|#$Nf# gpoGfѣGFdLޑGk#nJ(=ƻX%rSf\r"3yzHIB`) x뻓'p(,.&|M8*7V+ٰ\ӳ܌k)r}2ѻ ˵̍xi]L&Mp227fLh;_Ϟ?} ya:?8|gX,>RT]-T_q0̨ FnmI߻Zskt6;]22a>DχlPPl7?qFkMFs[<{] t &&΄/>1dh9deebVʡ5])O=xb~r'@xl7wp_#j{tc˄B\bPɈ@+»L(ՓJ3==w%gOt|/_C7Sۜ,g@%;:,J7ov66D̚ 96hséS 1/4"v  7`8H H0Zkbiz|Dk,qr'*wZǶ|||82ڝ.93yY:IN*~a4g/ ;2wle ]V~T=+}&R=`I&7?〃@ ޟg9A0[7,pn I5Vi7D;n%=144?# Pm|Xw=SI0phRйC kHnpiD?4;MĬ~xv<;=v>!M͓3eY~c"+0Z*h9Q$7Z-fh̓S~Mh~ybc56reUwyf)`KϽE'ʵhVmvA&~9;-:FI%Ⴖtx7E8Kml@l6m@NIdk`|8D h0S 4 ~P#IWբu NFKN& Ҍi1 Mt>JO X|l^<]!4X'c~#Sx4l=>x;O ݂ ]iVtwmܚ]G~gkajFӇ{\< UMg[t5YЙ0m~t+`P |n2Z?F;E= C?oCMm{6zlx2.DYsnvn6iLm/ /ǚdp=[RmSx %ȋɄEt? |ٍ=VJqP[d*n]*CD_ܮwnC/M3™ߔhȕrj2D+bV.I,"rBؾ%ě,fFҌ/(T6Bt()q0DOgQ0q7N@k0͹䎤{#8lE"{l *C2?Ҵ()ٹW=7^rGDō{Ex)/'/Wd*ux5{-xU@Ebq^L,/55=P>5AnD־-;a 'pX? T•f}t+]`3Hk\iF8I)AOSdZd:DMt={U` f"YAҏ(Cn"sS09򷟄+c`7C{a']Yc=ɘɞ9_lzCK_A].`דYۅ(b "twt~C6iKME2%C|&H]S|׀w~+[2 Աeu,Chxϖ# !@PiA@P6l` kX%Qr%i-''9 >N&ӿ8^:S5;&E N[%8oa&9 q"0MW@ݓf? * F#A ~MG$#I)d6@،C7bPlk Oi?bW-!]hhkZS"tOya^YUMO@>YH nc/K: e*J0Zq1R$̃zZ,Bbh` QYjs1s{(Ă UǞ]bWPjd4U5%,_5xC]!<!b('DEktL"2wB-QN`IJ8DFYZ%UBxG WHý Uk(1*iUW!ԇ(e &J ٫t` Ժ֫PI` !Y{VEzUj9Pu7I趙컖+v"θژdCQ߂C27܃@ff+f 4[_gN0 q d'==p,j(0O '~^5٥7ܟ8œgpvS{+KrYx|Ad^JЩK e=D B. IV} ^A$REO QV'ZmXK EY 2k U<݂OHj$~(dLc0hЊѨ lNbjMYlV=" -VMzDM<'.ɩ@[ ͷSk޻/kvBxмWԼjN[* 5Q%vlTd5%H)Aӂ4R4҂,)Fx%mAx5mǫ2試=8ݴ +iA㵴cEꎿ(ʋҔS ӌN[6"XIłtX#8ٗ2x"J"j= lfmV3!VJ`3`%FY&2!VJ`+iD lE/2AԌaWt"<,_UF(QCDyCYވ,_R/E(D BU^,ĿUO5~5H֔"a*_,ZP(tȺ+m~LF5R05%eRtJ V JSCُJL?J1XUmTPZ VF%Rj1rBUXٔdrlB,G uh/,qEdlh挿Ls9YdiLp ~KR7>աrQ9Y"@XM&!F0i[Ce2 B%y]"nzDr==='cꆧ̓PfG(3denv(khb);5P,eGѕ5]Y=;(+]+kbeYfgtu FWW`t5;kP [֥uegtm FV`t(VV@1ak+b FHb4!#A(,MHz U z.mD,epo%lkNXv18XK5S8LcFT>4"rYqv0+r,T3+riXiFsURgFRͬȥ]UK巊3Y[YyqFyRͬe\6?U"*̈\*T_t8L^T3+rYmk6TT&"ra?T5jԻ:הA#>U!AII4-Y]?^lr@`k_P M(mR04L&{w}Ms K|x/1Ko"rAz!_,zJJGo>2ǝ"Wl+u&ih#Mdo+@{ q+)3rj4ښ.H{Ţ+~l=֯bcC٘s֒Ԇcb\g2xn |6/zn,[UF"~zD\~b$bw{9@bQ}G}m+7. ֲۜ;88j7.^`ؘzwҠ hK, Y:'R.TSbRx_HznlkV@}%{Ϟ) FLNӋv(נ`J$ A4"J!$BW5NKD".>{<$>tƋ%jD1ȕ8>"wwwQz]}g֏4j*]u}ZX4 cU2A88=:RaqmX|wN *%lL?1\jghk5$xAF)L -5;=-4͝DBxfxS-k'H^<\=7lgFU6H;ϧ]rgZ.lM/ڢWɌv1=g7 96f fYƿ^x4X+ CWkBˡW.5Pv<ǷSa<; mm|ˤiӜlo$?i[}^s /搘⽆,GO F̳~Lz0zi[=8muT4r{~8<Ǭt>;bH'v3v!.7P%ƨo 'QЮޕ#Òz|#Bu(Ļ M2<1$+8z>#c tluۄ. ;Z{~;%c+& Uf)R7 zCjo%=F#(i\w pcBZ ",%Pm< ԏf2CXQmm9_X}{b [C*=>\=3PQt`(}4"m;Xz ]+o M$pBR풫\ N43ԉocg l!|A'^|<6D 6^S1L YyT)` ib!(C$]*hupR7qCs݄NfsrpA1ىx1f5{bo0Po7-S[ODr=*\o4$+xAZ3˒^fa9#`x2OٳI\ڍw+PNu;[h2( y.BTLsFohBrC#X'g ~Qx5=4XD&'Y|Pb~%f!BOgbns2ϕ /tT=j/%vA?ƚT=ڛN#-4tf7%şq,C8, /  CU]GCv\t}ąV9aL#oEv>\ DH< hr*d2`f2{J9BSV/S=Hh|m"}9RD9i#?0Ξ;c|U?go\U} 5|{rpva(L n[\q@\--aGK}Ua0j#X$y~AKD~!5'}$t FWP{M'Z@|E;W?Y;d.5%7Ccp}OA8O6Ѓ =4&7ZJgs;?öeIcMӠf͔G˜>IP $,u?~w!r&-ƿi̗Y UN%*fP}"f#o;dmv;V, Qy꾧 ,Dy!:)B뒩_$k:1'N/O{\;ck 3afhNL{aKD'8OmP6%p G5uO?bznIĴLX2};ޕr+s '>:t.ٳ5]9[ جWr]\f`LU h-ߋWEvd42'<\` +J%sjsdn4 8M&sƚNo1*h5s;AlAXGu,0&ku(wnm}v  Z#먖>ݝbl %ub[~hB5+\>^ N_Wk ^l.4t8#Ԝ$:ϝn3%|Lnp7ŦAqJfwc`$[گ't#o% 'Z.՗DD١5[ <='sLIBT[|qQD :$İzGˤJb I&U1lQ0A#b>1qwO $ vw}yd+a K{ls}xB,F Md'/܎Sk^XmNj̠x= k #[8j|RZ  )9_|wp:&BL.ۋ&9@ ym[$C2?6$˼=c^Ng qZbhgPsmBWM:)dmx cT uhF Lf~葓WJ(>?'BV?޿#IW1>_%vcAغJI. h5urU{g43w]]]]]]]]?cqTo/Qf.燿Zohݹ$~\uqJ/|޿p L79,4[ ؉o<su (Xf q gX{`knKɵQvr'wUl>|L]0<-ʠci*bU ɭ'V2_sM#SUKC6RcJ!o&Xɭ'" V48H*tO gK9ueHLyc+-_uL`xRwj8EM!yf: l ʆ59>}CFD4E[Rm޵Bt;<ȅN|VOج9ţ_e 3M4/q0@>F'_8B=;Ez-B1QMt}_]=nLcdnqfհFl1<  4& i|fh< c0Cր\vc/WdxZ_{6A AY2"U$scfmJmeH 88 {- t";!A2#ѣ[th2ax= |xL?XX̼۪Kȣs'w++6ښB4~\2L[Duaj_DWu:$x" ANA[)u.8ڭ_z#Hk;ϙlOĖ7MHDP}' P>y6V an} %-nW z'Shupۿm;KY&D݃ j*UBXh߱*^f:狮H.L0+N3N85ݽP~fUSGdT3qc9ݥ{{fX9;mrs((?#ha],ZW7lratGc0ptsja}A9۠ؑaL~itq^A" m >2GlL$l++a:6 ǘ$[2[(-֨6X%#ςf:ؗ/o# /!{5np *@.:M1U1Q7I]Go4ͼIExzU\qz*d΂S46*9X9Ҩĩ2BpQOĹ/AL'v]:gPa4 ypHiG-v(A<5eZqhT~4LO+pZ#[|~g(GbEfϽia 9yP&ߊ }Qhmp;55R gIm$K4*'N;Rūiv~ϕ)moc1V-9AbãVWAVԪuyO/b\9݉BFC301RYP>@BrK &Qj|I$(nv^=&}̱2曹"aǕǎ4j>YCD@?C8zn~aӽ%v N~ GF<%\ /(iMq|CҀ|>K?Er oNi^+JA4Ԋ~$cCbAd82|vo)^ót)g6a44imMGѠfqRY݃~fOڅs,lRsP3 `£c2O35;D&:XDr)YFR󊽀x#`u g?9 _n!#o7]obt 箋MIqV!v-x$.4^ꉖ`E? x%ӗ1,- 0ڰAqMFo^^ Q$&T,QPM-d)j Ztc5=C\/Ox:c]3qg#qboS LsA"RLquVjj.OO!k+*tB7jC|47HhQy#7r)u/H+.E3o,K_l.!Wdl4Y^ RTmIy:Μٚ8J+nIux2ϒk{NKm H> > ['cL Cĩ~Z= / t\?ן:r\%$؁Av?hp@6d >S0:EWj: EvJUpiؚXq"C Mև!l@IȖ~K-B`6"uW/v,Guy[={9!̍̈[S9rDyu(;~s%wz䓿NBHԣxfn'[J7ۮ4ie3?,E{P=4L3gip]YcFx=fBGQ$X$,;[m AfՓÎLۋ..Dud1R%I$"}{/_o1ts^{|s&'LpzkoYᆆ{Oiڐ`>^3v H4G 5krGAQ Rki ԃ ͭ }W Kϳu+I( gfkcoԤ!i<H'ϓ6=v;{99 =πmt{{- ${<#<C(heqn#:<a\4ڝ>* ч69!nۚ۝qqJi3UJ:|J<aV+Y;=ԢJ";{xhww&c3zL2/BK==H GĻfES%>ҍ!!Mӽ18}FZ@-W"Pb6:sR1qꖮH^\ԍoP^+o)T709.\ oȞ~6jܻšb}4B-ZzzO~dfQq[Brh`c?@DzL3.D iRO蘐sQ JdV|^vcTqPȒdQX5%g3 W&$Jc'4#Ř\Ep2O/5<?=Y|@'4/+=RL/ܷ 1G= O$Pt޿@} fXוK *& MTTj=,">G(VzH`: y¤IbTz>{0f9'opš5r֪8X)Fk 25Ͽ My&85D.{{3=G\9U1]T,x(Yw_ϙxO޷;3jÏOwHj4ԒXX #%#j.^Ӗ-3en#,:A  wVsښ64 dG϶J<ϼ40~C`krj?Y%jN5U 3WSH!CX՝ bragT2;7.*i ;|s#[L%E cg G,Pd/nA}r9MoQ3iFNES]Z##rCB J.fqSK2UX)\Y)ҧpZ- p8-@U>!C`m;K~<@|^|2<176 (ZrU;/uÞ&Rdz+r~f&X?/h`8]^#ktA]ϰ^1*bcPPWqh°d2^ M 0iFМ@%'Fmv!nPHTx4QŨSǢ8ALڑxtƴnn&D`PM'Da/!Z$cmt}/Тj9آ|(.GpV}:{FܶI>`|IGXP܅aDQ@, ~vxI2 (WcO,0JdģݺTqVa 3 Lvh'q@ԗLI:ϯf;4 ֐'XZ:O?f.\ƫ 4L#W(m,TH\`1SAbcJ7y@z:58fZBmM]giiqz`+,i!k}ULoNj b>he_p)`}jr ߞŢrDxD?]H5rhi/[ &mlQ[iA#!-p$HE5rV45T]>!nga6G0vߵOD #bO0_3Ãg.>׏SCh&խVRS l%j5HD4M%|W妄{CQsfC^aGn7-Mk- `=&UlW Ii*^onoWI$5C8. ،0!HxC'EVŤ֕x^Jlվf V|”Ӧhe}h5=7KE(AMrD˯*EDY_W88՛ZzVa!荒@@/sį<ǟ@ί9_pJBXE g 23ąP}0w%x.ޔ/I^]hh|c8K^GUn0_#d:h4dru$k@-p #QChB&+tYjWWֲ7*rYŮUAtȆE3*g9DYZcgkῐ^Kssi*l9|7I9Qk96L&30 _\˪]&5aV xaf-O7f  ?j(Avj{oﻖKlWҹZ<߼w?4߾o !Pshl(6'@SCZULvDg}xNv,O4NgɔЯB!8\ Ux@YȩhJXO]DH/ cgU=HGWC](|-% L249=f&/< 1F-c)C5Tfk7%@e晽ڒ^x(nrxSl-xu'Zh3]4\O(FON-T0d#6h4RË29h?"Gd$搷65߮XF0op4ܱ15h( [ڝ5D[g9S@y!07; < .Ț~ 2Tg"Ze< SÜ#ހd7PMPeJmX6@]x<}s]zG3 Q/k\aTT"9DXm6JFt0>A;@Y RoB90]<䨭&.psC[IR )&IgDo?"ǖp%,2Lr5`*Tmt??&dOހ)iᮥVӴ?Dd8!ep 7Y( ȞSMtVN> 7' $ ] L =.q{l2|rcj-X$}2G[;>7h Y5`{)iܜ ffk5qgl?SSq=QEw Tՙ  iޒ[eqȑC~N!^ ň5Y7.݌sΣjF51W`ٯ4/}кp۹ІIIYyjfzQg5iߐ[Ha22ѫ^~/'JIMmPV˓#o| < f`D$";&'͞sx}š-C|b=tH6Q>4!G p w`<OyyRxPx#Ñ|d:I2wOp4'AJ#AOp<0Sw`4\artHBt0˳ (9K PB)F|=U97#@B55iۿrp\:Ұ2bÇOAdd iᅦzG1ʿo<u<#v*ˌǟzM7]  H6)=ɕ/YOEݑ^lduU~QlGUbH eJrwdӕ,q?3uY1D )%硨2%;WU2U4M, iHk(d${vs[ld ȨOMgOgqׄ߫hXu1u*F ݉aAM5kJA6'X3F^h7(B@7j?ln5j0/˜>ظrДm?^P fpp7hPțP+M$#?'Nbuh4JH7FInD&VCtg H\C ]æ ~s + 6z$Hny@|0J=xn4&utLrqŒ\Ivy8N>z_~g@^x NM2ĊU*ຠ}aF. kH2;4\߶g:F$-F;48'޸mQߏF$q١P=xW&C;eWǘ)4wYF8x S\p(IU/Jݢ1S|Af|b"9q@Q@0(pK.s(dN)FD7"$|aE(v<Ξuz28cEYW9c WGG|Cr'rm?c:,nLO&| uy7$"(;ͨ"k̀8,0&ȹ&Wxɏ)/We_ -q4<-xG 22^*FY(ނ] "t,ZZ'%-@lh\1ϓ{Q{YLVE U>v&X,m!{ݾ{]8{iێ^J&;!}4I9gb ɍȕy(>b^~QAq3^gX>jOﴺ˂zkA|if;Uc9|oW-=gy%>*y_aQ [UD;X~IIPc$BPmdq* T>lS|3sp3'IZ70]Bm# )9* >~@&I>^w*VS-ljw \lx!Fʟ&XN*9i>alfA J.I$0{a/#y-"F> J6靔fXƩNx@m 2yU¼m$яsG 6}*P_ާ*ߧ0o~ly^[HДJtRM`j:\By.WbT>8&sL6Wtx^mz8.ߥp@q5???HڊЛWY|:um6 LS7,)ee֘ #0ixՋr )^ ,N+0bc\iR|ah:*RՑ/磄 ?xtlv#x\eZ `Wر~cDOQy4 Xvϊ2L%vV" [> DoCv_"-|V!$iI=eOin8"DB͆q+uoZhXԔyem˂.j ~@C\gҲDoLZ'/ā¢Q!TkkzmP׎ 3 vZ->|W;mM!9LS6fW6/)=)K4pDp.(&H돖פݮM(!5Og,UqD!}UW > I[Qc,˚9AX=NDR{$atx=:Xx"LnA-9~8n0(U=O^%ɥn @X߫Z ~pSHs-1tCGv'( y /NtaTp`/\C0pq x,>JZ)ͨXO$WgA%E833z@B.Zdv9Mn]9&X-TV,a-t䀲2dRta>.<I0VO恷ms9Y<1s6h*CnGU|14\s eɕv&E.$5[P]MvSn1~st) 4#lހ,ygXN97K Fޖ1ÒԧJWBb)ƨʬEX"F9 T5ϋ8M}Q׍ G`m˸B@YAxP%3vƫKҰkF1eye}ݲ CʃI5}8~ec3j\n5>/wr`~Ӂڈ,RXwi[7UraH21D)eYOD!sgeO7YʡzeQRvVBIfW~oYo(2j)4qpOEY'hIeufle)-eyv೙E>N5ܕ4;" ~xlBKYZ$Ш"-͟@-7ذ(-d6P,2;GEd;QrTRe$3kx,TK8Chÿ[meE|PKDG_V줅/@1g7c[ye[y.i!ڥ͉ 0iZڱ|}W*JƛָKguݜվ-|1 =T7લPYP˭,(hrmw/B=jA|p]Eb X̨o}+zԷ>?Gj~۸O2rئF"O('U4p,k^rq}$b>ˆa 5.Ʈ&]cWEsu*@Bbkp'\S]׳f0373Ĝu4GMu%եUnx #ȂaT~H(*6̘[_ Y?K#[)@]]o!/Z45S@?ޡ86-ne̕9S.j#ؖ@;3&yc/ ~ EA^vR8L|dPBe\v RoW,ZgL_ o"0{¬ި9:sئŌ̈́R"gk7=AnWBK>=/Ɲ?vޘM2۟XȤBVA6).Aao%PKzra` P&< Sz4Lɕ$)€D5u^%])miFw=9Tkrҡ̇#<^P/ool;!"p q뗽I/nI1*r?Q%&  (B-J>[5Oʛs80<])2+s||(+b}Lk`AC2Ap+q#Pu{ 55J`|)Ko9}]`1xO4PU"$n6y7 vvMҠb84dm1!hϢӜLF8vBn~e82~7 'M1m~U8mfĞl}]Bm}^zFᒐgpӢDxD ׸-X s2*Ӏ6 cxa3ꖜKx5 'd؀臂a7Χٱ9ߊע+WYҐ=8GUؓ"Į鲜 p5S[L-j@H3ë$K0y-YnZ%10$cB3,).+D*<)5Y+";`&vijt˪"6JNpU l@}͆6Aq;#*BiaN~B8):q?/,-i-"! s|} [PbLS&úDcmK3I\KBJA$)@l1L]h4;!KY\z,WB7/ u} ]0d 0v0:@fҪr!hȾLM|" N 5 PFRX 9C^ma8JPH ( R2 5s!2|Nc6J9IdD::s %6"U~|AL"0 BO ikk^D+{uq>!Қ gi7~%7s]9\$ņwq_976;{v:xwXN?Fǥud|\달Ե3̃i9Tχ'SL2˘:=C=I70hDDNވiUstƣsh2&VӘvZ1FuXjݛ ɰj}ɔ]|eMps𼉣y,>8:Ao,"_xGTg}EE0X)c2-lܝ[(H<=~,kipDRSWM|FOmLEfrj({>+jڜ&]~T_q?u3 (HuvrƕR3W\*PK#ab&{ޒ m-LBHi *C 41p ^YQ(ZuOmvmk-4k%?T*P;Ԑdե N>|,26¤!d6 M -wڎe2y<e̩5^>˧&ewSG`YTrL\gҰ²,,6H."H^ &©Z7kv^jKsx,;=jn5\6ԑmyf& cȪge2e@l RlKX|x.]"xs^4c-X=yn3p!_Ib LBL|둭d)1 qZHt88eg,HC|̖y\߰iiBR*\&$XvϵvcGJ̖!mCY `)v־ Ge9V\ZmJ6y#:x [*|($Dْ]|,Ngrnoװ3@ci_ӈU}R-CPHS4NwPNjӈr-`PtppzX;-Fڴ??b6h0v}| W4reC"h@CBل Jcr䟒˻#)]7ĖCB߈Nk{RյU]4( ?{PHCZxr-k~)e_$+2/DpX X*culGelug/4CGl(@h-x|c ԟǏWo,ÕJʽT2kم[I@ڠ }* 2$*m+:aKvH{H~gncךӢ՗]i3OSH(+Mow%'6r6JTsϬ?yIvXAo*۠,=xQǮe CO-$!pt)O_>S=~f Q9uߕ 4.Z,O> ";M_gxg*[%ƶWyU$(),=4Q 3Œ,4.Z@V bh=V|l w &Ff4ws(j/ahkYAkY0\H8} xЋK S}Ted#/(JVRZ ަ,RWZN[/} tbh-l^b#<$Vh:t (9acq6U/BsFsJcYlw~|C*δ':jWVU߯$0ϠVMȁ6Dq? DӠ'uק}HHץG0VH1ٛ>l;0 F-XOT޶2b:#USr<ۑ1Ggu)$Vf?b pZqopdCx>| +)m/wCZ`ƘFU/!FrSӬ*k$8Ƭ.x}lZ1(E`cRP4&?bh;,lC :X2@Z|L}e1.8Ȟɦ40+!@bbQjmJ;NE\;۲lЫ!{yuQR熓|{6[2 D" Rt=m0ld0tED ע!kGQn$FƓrIQՀ}c\ .)\oڳ0glBWk~۱IoYg;\ps煼f=}t.AGoNh:&}rAUE"^!aatGg"Q89ThQZ/Z7`>jV )_r.Pq"]dmyq] I%wJO/.d;0Kkiъf|+vDsk@o1YHRB 1nJkDd֓5|!Y:ؕ: b #$30`QjE,73Ŝm.xN|m-hxKd2/GPvmqSx ͞L[8W"PhRO ȗB]QߘX[UPFgQeG 2y!NT k߆Na |gsWhں9yjfs]- uW=*|;S$;xMӁOM̸{ږ W/kJkJ.-X.dv9Mn{냂2i* W最 =S?KcRv22fVRK ͞\0Gxlr93l=җ9 _d$e(ig1:9zv7\-[˂XfRv rtl,Zsm5ʄ`d&;Ot5V}OH-U *N.!YcWsWH0m;\E>Wqvȧ/\PV6'EC9؂Ak nɷG?ՃS7)2$ s95جdQ2h/ 9+$"#`. [>ͫH+#+>nˈ0lNaӵL N~;n,\:ÂznF>XZYFË1FϫjiCTL! `#zȎXUucxDHD&Nh7L2 ,nBGWPۯ G8ysiJtW`||ʜkg͏ˆUƈd/V&U'J5˓Oz1/!~dU46}|Vw&VxG܎xmy ts߶0RzPR^4%?/jO(h _H }Rݽ 0%[#K6BrN!e\+mDRBx$o%oG#;!["%SlQA*/zH^!G;|~!ADP"߾0r*r^Ng匴R0αU"Ɔ+!}tAQ@aM-D!^1|G ߆]~dmm2?B6>)>t`'g4PaTdCĕYbLgB~Q1@Z&fm[8%Yzf\z%t,fo? 6O߱ ,TXsQPf&%gEpӂsqvOZ{mk4Omey!=?mX] Kƴ|D3 ?r|=im6*y/4(tK~QFIKb^EړI)ddB.>2ŷDc ^l V_vkw7{!o" &5CmN/^Chۦè!zVWzSvnsn;&'.M~a#@mfr>D o`A*/}$f!W`$^yt(64ئAΞxG^Wޔ;Z,+E00\N+oHX G`g:3]%qxJ- hN߭p{-sGŠ@oY(W;ן ,C( a ѿAmrf֊>:Z -|'(ň-|$lp=&a8&WД>-'?y?QDȹaE9Csͷ5&d 9>)iBhtkA#B;&,˖Gkg@(MQwL̜Hetit:UXM"2Sμg:'X DrP%C VPYK MEupn/fC#*|/%ŻL\jG0~GK^GͭW$2."$3Mh nW4B:쓟H@M(z"ΗGE}=h &%rW#>ɾ}8NY 9 5# "ʥ*MTj%eM\35ƪݔMv{'RMY/SuM5@W}&-Tm]SaAyb̲<@jA S }05,Md  te4z"폱xG*yx'͂$sph4G(*!eD g}Bܱd(d/ dOdvv,߉Y*- A @lp̠߫wTobrl>ų`3xnK*d=`7; e`BV&!OK:F̄ϖVD.$Sѕl wD85884]J׸͐7em5J9n\h26 hI k^ȃ_ u|ZGf(&dٷi,k|:Fi 6(F:kh ?q% gfJf{Lt%6y7h<^7u!_;|; s}SfI;̔SQQ(NP*!@чˤj:\2 ayTA($͂HiCVjv%zmUԊC,<&ՂrW}EKnn5,(VCl5oYU6QsnhkUuxqr.:2asc$Hs`E)ЧK#|1;Durty.38w'fI!^Oj9棭dɨX,p<ʾ:+ Qf+` gЪ^W[lg$L 9`t[9[!&Vb& ރ݂p*-k>Q!Ccz[a/ࣆ}뢖d}d// _K2:Q{"K5)/x2f:< E ' p6ke~{k#*{OitR5ViW{Ƚ[(&Pjx4eD䉮2[:LAu9:wye4_g`ϗB6 *_*U`R^+i}nG{֤K{Wb{>f-J}sڂE? <_.%~xhԸ_xu^$׼yӿ҂PKqà%)W≇G~PXlȊ7A6‹D%jߙ%ޗ*.*ldVظ×;]mT؏Y}QukA@@ ^^6~Ǥ<?[i~ۼ™{p!N8dM{>g{ANwv?<a3xG7{1b5tBYqޟa@I;0r6w+JI(<e*o<@3/YVf@!i&vbKW+@gtU.xm+H|4 Sf۽h4 %і:A#rcÙǡ’`lhC>6F:˻|q!+YFiq6lAPPc$t )w oI1\ ߛ1n!59A!U0E*V+ČXE>m,0w5@8pvd?0Kt&EQ"j2,7@z`LaUlNO5~x*|gώG8!BQ߄=M]$ܜͰXᔴӜgQNgdwi4ʔnyӲHޤkYԛ`\!GJ̙}y HH9И|FM5CrJE*ԌJ2TQ&Ts. TE߶e˨A.AD?pB{@KRM=]*5+\MHi]\(ڿVt"x/=#W%_.t[Qz(y.+;kI,za9HEZ^H#$ k,J&'v}k;]`\`n *,qjl d*vZq؁NJ˒n7mJ7[sRU2IL 1=Q$s/n QųT᪶ ׎{&̂(H(az8x+HI4%n`` qcVe6sAzc:*R3\⌔P?íePb?kI%OURwm i7ɣ{mWK*bC?WqFI㎛,_ ,&vJGw=j-aK[A|{x-~=<C˕+- uO5p\ Z87?|urg/%q߮%dý)V}~3Pw\J+Y,,K-Q";x J i`+v7:w˭nn_E6,c|뿤_EbV5 <[Of~{,wN~V^<aC}{@pͷeP˹[rPNaְEG^FXY޺C!sf ݴڇ*jR=l;݆[ߐѧh+uZKtV0՞">45ʳߪtW=Zʐ$Sk{y}(CC6A,'!+=lbdꍰ1OT -p; N>rv× UBF~q2&7%l>:\4k #j#n#.~k4lB9qg5v~7L0 ﻧ2b{[qLեx:Q\m_g 7bs𧿡N~$,ӣlUVj*]D5>y˔şsd'혜[`b,o*jSؒ|7]KV禕|n⣴:U4 %۱~yx ;Vu.NI0(NJO: O~kN~[vY`KmB=D.Jw_?*wyUSoMeav?,UX޳u- V\䑲$ŸG&)pe]kvdv+]V#hs5-SifIܗ0tMYƱӭZ=v;3.U}XOVxYNx7 fZlXR(9_}jWjE_JقRHKh8jO]λy*/{Q=}8t_h9VúxRLuʾ~}]kV(ƹP巊־P<eŒf%6+J7..u2@Q`Q `ܫ_"HK: '2uժlHj7Y\L0b`ff)J`}/b{ئ爥\l΅yio T @uL&^xE MEL[ K[qy[XU XI2p'$mqT6aŲu`,xy%?ًh*`e6MRN%nLk $G Ƶ۽VyXHm.gY*CJFǓQ9:-L~TKems)G|g 8k7;aSS/[L9?vKδVQ6G},Kh~kɬY˂l08yyg{(tA.L=Z=TЅ"Ѿ 6YU odO1ըPNcD4o8Njc%+JycMA<~ZUaLȊwQ;aPa6wڃzj0' li-5t8 ]b2<Q[|ʹEZg[qWpg[uiM88vvz9{(hk[evz~ DJIfg["AAAh+f<5n=Q" {v|ع^YO.3Q '}c̙Yx5^*͉erX5*z?c-a3?xu-0a՞|pFTn;cһ\g¤jrD٭8dE /:a↎u3w5 !jVgl63']ģ|)|g{6gOB"I jVu{1Jd`MHjy/'l{ ʹIo)ē?۠(d?^OSJ uϭ:k A_?Q'Lvct>yguGAGVNg1w˶SIPw`m.ح;6Ҏ]" :>> }/11H__x}AnƼGL Iɞ-TGR2! 5)/r6?yBɟ_[X}cK,H@J3r= CJxDq= kĴ.m[#PW8,@INq_ꉔIjwW OH056Bm,vW4U i@c{R}VIfv"NK\ Ɩk-a=nT7|f0xp3uߗ]W 7?}E-_ ןkd (*r{H&v^ސX3?Ys< bay Cu"B4L8RMǙ0t~&dW~aǪG-m+vޟ}Hali)P ,GV_5giB/<[fq8l'1O$ K1eޢV#M_^N:Q# &/nH}|&HV4uxk2 ur'[{5_0uJ1|s)Jnhx5ruvzl֎?R0Ѐу3@7גX2 D*3\A"BqK`~˰Nr^f 䋰 I ?%zfX>I%-M=98%Gï>L"Y\ zZM{d h(( p>y›#4´'P 5:va,i,@{t0dĵ-4,f1̼(;1lqi{"Psb\ݮ@.)) T:h&Awk{qOt>BAAhyU7X@O/ (­: j&,\0𭛅kZ3df5(hKeu] ;xD"C'])ѩST)׬g:XdG&m~g~=R?v"7=&t>y#fO, i&Il;!iY}(0ŋgH`)7:B-4zI#88&o3Lq!ݳ izH&V tiIO. @[*k7Q%<\TcV70VKܙ^XMv6sshlvzC1: 7ܮ7J>LZ5Xm|IC"B\΄,݃V=2_O2rD KCBXT͚NnO)2U]%>(Bmc!#4|.Hr0bm){}ٔ]2w$u] @W.J~ [^ n'ʲ~GAorZS`@Y .9[.xά%3|4}9.IOrO.mN21ӊ2_sth +%9wFْe|>ؐ48%WOo:z&3t[v8.)GD!=8ul{Y{.Q5dFUUg9Lu7~2G?enjX Wﻂ>aD,Ciqi,\iG ,Ѕuk_P׵%`8O/A!#A8?mٺ965S3dRؗuˡ DFLFF07ڞ8}'ڨ?b1}ޟt>Aܱ]]_w/0N@*Y{ZЮܧ9^elH6.s':i/1\s j: ~*aՑ04M.y(N`m="> eb3^0 xyskd7.}& 9WH€F& i(>hA}kH r2o&J< FwhưuP⥠1ZM[1/Ƅ$eRr~;#[0x*(t\ ]RofDA`>I4v WaHs3jƟ  )ɿulmwo0C^O{?2.m'f 9.ݻQ-buPP}% (A;w<|9ܒd=;1QTZnl{ {0a)#Zo Ʃ;dkZ{VZx͋'/^*FP?=g/;֢+ӵlaLskq r}Pbf oC{?SqњL~֠nLčęZfE tYI_HT~ʾASM >eq1s< x^W=x C @@&5{Q󬐔z>'J5DIد6:vKvk!z~?iH4K<$0NP}f xlÈi~b[F?2(|ۏ~ #%ąww7;}рzOZWE_Q6IG3 ExP?[ E QKn} q|9zͽ+)Pa@*g4 ]rd[.n]fUX3ޥ.H=@3hb;FjMMjꡛmhfc5o?OvBhH.1բkc54TVbB9J?DZ;׺w֊B|7Uѹ'-r2 ֗`h(CR/,})¨*s+6{dL^\N-iƭ_Ro ] AO0 \`pJ5o?-UlU+m 'sHl֒4t7yu}^mA\Xc2aTs̃-xeQNu{vņ=ցV]ya`ǘ6@莝2ܫ(u5Àkb_Y.H`%切~8'X|ꭏ#w`ul 3I޺ g.ȵgxۭa5hZaёŘ+rf!+W6RNJN hsFp,3/\v0Z\[LFAt i~U7 Eϻn 9BVLuxB7u+z`,⇦{!/ x9X.F& &$.mw9|#CgJz<\êd i \>.~Đv5_ٰ?^Ï-|2#_@GVXy5&Xu^5kNAi{'z ijuH!'ޠFCƅZcڃ5]æ05>O:m(7Is{I‘?hF(YD6 @GG /AqSN\iǭ~#t\CMAV#vv+D v胔:4MpX- f`A}$v!>'& wIRrL r8n!$1ZQ #ybc VX85t# CX궎:V=TQaH;^ F`TG@Nšo E£72IpZ?l3-rBySt AX9өbX(fsnjAa@lb>;~_gZJ搠\!qb{DA %@ d dbZIщw^Hw:+ 0 ֠`yr1BC.gg[2IMQ$9% # `z02|+O’DRF`xT!75fmX܀{ Q#c t-0pBݩB3 ;EѴQ iurC[]>(q6>JG_<ɿ׍ahHַ.=ͮR S,pRY@d< ߇'A?Fi UTL:"A2BLeTjgu ׾Id_^ظvo|*jq , [3umL Q[y.>bz,k ~3»[wu@EPڹ.sי2>~FlE.4AHJQ<ߟ|϶U5GS~4MGS~4MGSuS8NOV p+F WO-gH>*"H>*"H^>ֈGyi+ۦs(x% @FJr P2A$:ؙ=K04N ԮX\YOu(ݶ3{xU%8MלZcU~ `pOZ-[Kcѳ^aQU2$v7i ؄i/V12z>-yv/F3HB""V2U#JTR5dwnsKζ3IJKsX BkӺ^ENE>"()ÒP X^fAɄ FX4Xwuy<:WP-a؋[)p>_4S+u0ɸxC 㜶]>$p)Y:K*L}@ SA'6taOƴAQ]YM5NnilO71ĺ0>kT T|7B^ B͗h͌,RFѡBY3ZLu‹8U[0|) ۮb(=ʄ4yB Ȓ87`*#JTǸ@ v+&QA(H9AQ '/τt HQd2sbrr f9(҈X\02r̉卬S4 q/dY`k k%+@ZTI3hzP3qc}AUہXWnE'~ߤ'&ܽUC=oIH/@&A8 6u@'5R79TXӋ~ܬ^h8uiڬ`"}TW&tYҐKJ5%=?Gf3XD`Bj9a\ZzA{AT߯[~ Ø axJH3i,[,*b )j=M }_y׶ >bwQy:- ,u2 ~lד׶*!MCR+Hdu ~Et*Y0F!"6^G5n^c3ksĨr8e`m]Aǻ/rkvU ZaOrQ kwJϞ b6ܑva%7c|`RpU P!f*\K+i% ?A~3F@q xD r8ƶǍF]Y*n-ZJ*K94o 3ys4*(Ʋ)[k8"9 H "(TPfS(*#9!3'o'&]wcr66HWzӣL E71%\prԠԮla;R;RJN1ke@)|gE\ZNB0MgDV[D f/Ň p~ M! nPԼ)my `瘒LԼ>`٩ 9ӐaMER !iJ&AY{US~ak3 m+iLLBeyJ<4 }]ޭAG2[%N? F1~hpY=Iqa')Qg!*{T|*< &|؂'BHҳP!ق{c Y,O{e*0wҁ ‘pvuUvy`215˷}NgRV{>*PSε扥d/_9Q/dP/u:p m=#O{XĝFuwRŹfYOwhE> sFm6= f M) SFmHir:Ӥ6%iJ!ڨܒ"w,Hc]0JuEX:ދs׼0Jӫ+ 1zveJ:4f?5Kp_qǏ8-`2%-sG^ ГXOx$.i^4.gݝN6FeTKd$SJϮz]tKj|2Z7(J?GJIQAKGJiVd.(,' P&E긣t'Ԯ22^iTYwIM "Kݹjf Tj QќvN T|2^m ^"7gVA12^ÇW@OfQ_`Θ}6Z|Iz>k| YMw:|_Dt5[h&Xꗳ1%Xu5^ I:OǬW ,].sdr5]w܋NZMO({4y哃/D;cDwW#*=:0fwuzSS>ԇa ~b4 Oh>^?V N,<*͏ Uj[pj>Ek >E봻EktzݣUVsZ)tỊU LP@eBk ņWS&2iޫD,MNpi5>A7U֫sh0|]MR/t., \JN{~bHX'\0@1N9^z\r}fc0h5< WD{#drMX8N[alN{l>; 9BTu>m!W ErᶗagqAhq-5=_~HOn6>W{9Pkӣ\Y&|-^]eFkjy9( :$Oh~v{|>wZH,/ShhXMzrCUWʔ4֞Q-{F$H"$ x5g`c3\P]/Bc1{.6Arziu etlw*P:{A⨨Nv z/@@gl9clyA^#c҆THvؐM4Z}Gb,A[54>5Gdgq%- 委9q)&<fW,W yOOM:P f)$cV^&dbOz.aWSDK^,WET7A{- PFǴ"ÏV.21l8Jri {cs=L+x.Ho=2~Et|k:)kA{0Nq@_ֱz다tI'xPщ4N 9%¯0;pip5(jmht~t #Xp'54z~$ljt>7ʦ- ߂JF֫`0{FgD[Ƌqp'"9sx%yD?}{ LKr_]]D Db͖ST<YͰQJMs~߮Tٛj~}S)ex٭~XoƲۼ6p7J,l-Q}eV+!} v.LFS<(,+0M_`pecq7p4_%a\eE DLzٺ([QvS.%pʁVM(+ʁa;vbܶsێa'0e* vr[Xޅsލ],u$7űI|@/ Po\W; p^ٴW`{^iW@ ťR~¯h=$0Fy=Vm %b1u18,y^IJ.G8˜1Og%[Sw9HG,u_ ~:~W՟=ɶdЙQ(y~{^SJYnVܵxS>+U/Y҅6鷏O drBV}*l:H'}lgN(E[rLwt n"7٤goXGkmjmg"/ZM5V]WUkSWk3֖í, <ժek+_: 0ֵٖ7xcGNdjmeNa^'KCH'C}5}] 7jǠ{3堘A 8?J[GSɘ8yUeu& - oނ>5:a656A@/(k0OF 'aik Q:}j{yf X+a|n 2AtY5ʋݔٍMY)O]怞Ҥܰriž>Iq(j+CZZTyG_ċE~{X:>=+G䆀ug|Ű?JI˔E(5(HMZ)W^?YB=&5Z\9Ɯcv:w\ujQڨ+k:_ܾ WR/1PilU.ρ d.kBl5U ` &} - w[,Cd ְl נt2©!B!:S ױFkԱFklbM);>n儖Y p0UGG>ÏA{`pD+ 3h whN <b&X ӂҤ^a5FA >Xƽ̣}![8`6S9TsP)90 w>O#y]5?Ctiy>]ct/6cZҙYУ6Y& qVP'_ @VQ1joݤ_DW5Q-HHjV5JY iT{L\ kKڱP{8[ +*sO^]Kꑭ穪R+ԬGje9u6KQe+Q+uhgj.Gkkj&w6l9 R$DDA7/V+k'XPb3+ i%s^CO\teb:Z=z.t_ЁAtcБAWtgСAtkбAF[(o*:;Ã: j5PmPA׵hi,ؚ/.+,*TtT\I 8Qc(%FkFC% 0aE_6Ț=c괚^|Se^η{K޺9뾩꾩[׭筻V筼8oukyqow;wqW;qw⼳nw8oY_|;9iRe΢c?昦J8Y9 idr1z&s[g1qp&fr1e&# f1q[&{c'e"EY^!W+EtObDB= +lܢB\$_WDb}Hb]Q!.`دk! NblQa'+l~/%6(5co0T*ZOf+Zͤ5~YI$qژdCS9sYa} DO=YbbnW(/PN,b9a @&c)Nz.Y^dyiD?>ZүIx0^]h;_rO_Ik|FÃ2|3C(oPCȔ̠!dbVFC oA+Ȓ[l&)E C)w2;cWjT DH+sJEDt&Oj8~ v; /)USϣVˆVMF]8jJ5-fEh H >|R5 M7RN3 we50g6dzǶ77KL08XDBxWzњ.2wDl*I; c"6% zIvN0-s|S d=/ ;I rw|+oAY 27-r;wǷv|;7۹={ΞqyAn{oswm5qo<-("` M 6"RJziYlSn Bԋ&"` 6U` !UF6U FePS0v4[@&JEDP%c\N巵巓ʃҔG!|][X~S[~3D|@@kJ[v">Z㻝8;Z|vi+X^?;V۪б]Nl]SjԵ5)5656kliJ [*c+ZSֶֆv̷S|GN V;[[)5|WoX],X3(F υZ?T@Jba\4w21xƏٳ+%)Nf{@im{X}JurҀph<ֻ"Y" "Ǧg~ FGؿP2/\P)VRF})#e%8)DOwg];]7(r2P8(b}7y7U|0[+ V8;X[⼸u^Zz{.N;Pq{*_]ﰺl; Uŭ;;;+o; ۬{>"JlB^Գ"(t-ԲJ ͍jJ\\P.ϓ]uk p;V`#5s0C+\9Y\:m"rY;XB+_fQaUgA鯑EˣF|"KoU=E[i rŴH͢\1=5R(rEWbjfArigLUQ iE+G#5 "K쉬\\ZfcX~(ȧOyZM);%u'~㘽O s@EJIĜMcNfrs ^{ }Yz3 RR:9hu-MVEgN47sxX?:j)!V2R^Perrz 9bɭ5z&w M֪jYҼi\j[wksܭUX~7CP}ߍPn:\Aj"jt{9@jUG}cї`ʵ6I; ux$Vk0F c ]7LrwWY6YMQP j=i@sb}$5٭ec"~edx9()9x~ѽ't( cP~T/\\0/YwvouX(v3vĞ-oPr aVwYVshxfsh4r9ya`^vwBwxy K,ׅA?}93V[vnO,ƯZ/"O ;- )Lx8Ksv+%*$XqјlXD 43έҵ43JՋ틙Fxb#ӳy [ncآħ#`!ݙ`@_mmmN3ab-M괠דF. 4ȗ C5Pa+jaz Μqz=wev{-㤇 ~zԴa,\˒ΠCYQ WϿύoxTNd'*/b <[YַD1)r5 zCu҂@ERUY߷vҚ!ύL d_4E b29& •iOLj(6> WIULQvxt[/g#0~֐~O% 7L+>(9ox-˗ \385hCrU@ė$98.ufٺ8oEl6: ҢaqB'ƾ}clca)-gexܼr f R+ɰ} D@0iQX0S7Z`Α.\B*Kaj77a+N\ Ftd'lm9k̺~h_Y4?5FA qߙOS|1/@x}}HaZ}|E1y-]rïI3Ɯ0=ư0YΜo:^HEsj8V'$5 E~3q,q ٛ GXQZK ɡoa%=ADԞ,& )L|",g3kdyÅbt)T y7xH=* f#Kz4}a60:-,@5+g9!1 c{]\aa jz4D]{%Jr:鷚 4Ii5_@ o6r8l~`AE2JXr p\aҲvUc.%Vt&]UzV7AcĒN%=@M8ixçv\x\Q+ IZBUkn%XʽWT OVS旊kYSm @`M6[F Ă"Z4J+kO ]l ,ʔgK{28RYO. &sð=|.nJsP9`aP>Ep(Kh{^{5kC58@\iUBZyyock4(1B*m T!S"d9,j#'a"=Xj"G&#T8kG 0F%* F?Wq e"OhUVf͓ CXe*4Z^$8 B=PT MƌHdؽD.rm!pӠdk a0;ap Xp{13lLcTɬ0fW08a<5%")5 ==h7\kSʅ8!N8BчZlBQTo$$[e$2ďթ5IryrAM "F(sĻ69 g7/U`&VYm4$gpzr[r,:Xr!ɻ? iCTYT!N/'yP|a3>7?6샥3w; APk{:ɜ f:[24\IY&2ڢX\T6OqΝ&w쉽 6<@_嚟AZvc8zg.a+=@/P[JJ-ロr!t%l[1+Ǒ;!9m=4ݭ " {'.#(b4HoZf PmHA`Z\YH{^`uc6۝~/=9ͩ=f(hΐ>q<K>"_̏tp~E@&sj2''iI$L(L#m4}; rUs_DmNjA05ѥ5P.8gZ*69ڴ8Eus@ue;,;56M Ϝ3lV@E)d/Gs&DΜu 8 Ɯ{h90k1Jr0bo6 `{cL6=;٥; c4ak6' EGY3',wAey`1nTI{ܢ=9qFoNxU=#=l[p!pST /t'\H'{$]lJIX֧pOO&l8 U2EuE* ȋ@˄0˙ N<6CAcQ3ǀb/,ՙrEbohSn#Zix;(YR lj O.PZ^ REZ/c}̣sBIKш@`c~Y)mq-/.n+4(ȸ[B5Mk;)3\Mb㤿v{#B V#W do}2]Oc[% z8=\܄~V*3\-/] ̕7ą%@'&YS:RE67Zї4wULصS=s=s}aY)5m.)#:d?h~1[fO&f̝m]Ϝɂjў} c >-QHs@([gM@Eԡ $^v CbS\ p0y8H CPmtS>GY1D2 cB쀧t#rSm0L(C,%XG)T  *Q1#XCIEP qCZ1:df/J.*l3AΨBZysD>q'hMTsE^uD`Rhzib1=9'|=}UÙ =ڪS|ZM̱tͦq~D/g s3EAن%N?ҥx͢V_wlʬs翇ҧȜanɭS[HFKw!ۜ#r1: l3Mu/; #N 6LS\BG7b`Bmד^$_Qkn'q89|4Nz'?&eEӐBL9`L ;j78n `5A~^TbCXxgL ^CJ2 N䙐ͤ<ӔMW]n<=C &"],G"~-3<iJf%X1AfL.h[nI:tfwu#GRTw#1g؄9xs:_bZ6+oa^XJC/~ev;1k@~iʌm&)eEJJJZF<6_GhݥN!3O&K˩p o#7'5,,|m ZDN}@cWS2I9 IٳsF.ɞ"d5Bhu1x(ͷ;Dr6kфe6 җxaǕ1Ŏ8f1X_6Kh-XᲠ瘑ZV'hՐ #nal 8jQ`n%/Hő w{a}ᒐwάk~c|ĝn |^ <͑X6³Xx2Sn5zS2یmsxiuIǛ_+%|圠:W[ ?{F$_ѓ}ެ! 6$!@d273Oc7q{6WRKjuf6ZRT*JR7Q;NlS3 `£c4RNjLg}筣/Iv40 /R4⃔=x#`u eo ;_n!#oԶLf71v MIq*v5x4^`E,ߦ0H.ƛ2ɁqjɡAQhahs/NK(аͯ=u K aٜQ|%>adз9"' O v5}KMV`kbŃ۳w 1֭ mj+ڀ2zJ$-:\h )C8|h[NG>fazxș;ɯX5 -nnt"=ݧVv8㷝O?~' QQ<5 ɬ'T-}mGF/KyCc=Vud4&HG4n1EoFJaGQ$,}Y6[pk?ԓգ ً..Hyd1%ϙ "}_탷mF:\z9>:s#&8;>4npB{W-ېZ`>^Sl jSeϭ_+w$&Q?p 4 ` Z}5>G>{*ҳf% w;yrAlm4 I:6iuENny^4VhɧA`x8 d=1@;pX_ /11}HG%pU("jHCr@X9!ՈٔHGZCIFh8A>u'],xX7oM*^SfFw=g$ejUM2XA.)7Q}6zw⅃bڢefm}ER'qpliqБgMB^ϭz6bjN"km`Z/Rġ2ٔ-5&_WU!hX͕3^Ψiv. <7P@sbr,}T_-Z[78eЄ&{r ?~n`&%q#!=mQJ}hWt) V`(D82Uidۂ--qڒF%Iax\[a:x}ĶHDl4W,ET28>k b--:Wx(sxv/L p1ėa4 p8] }#kx 6pbZNww4]ngYx:`G.d#6&9qdTlҋ׉c?:xYݏZ;7rҜ z?V͌? #fa5.5{87O:>Wrh5zlQ>MGpVu8:e+6:mA>`|wj, $D.giLҕŸ%NH1V%^háݺTr`8R?Q`E㈼,AHA~]P%Aovm/)iU1p`Q *Y4Txi4>b4T!uY>9=:C `Fit,"4a/o$Ţg7 !sgGaM_BB?~4p<$$PP^s|#d/ %eCn}8uxZA.l` .LR,ׅ$ sq?HXT\J#*F ##419S@1H]00)atO|S瑾HE4|'ZO2d:q^MQOn/V{qs$x0v Z !r^j+tou.G_³N vG %`x}sl kctT 6Rv@|XGl0CZbI3t^ 7 ATx-~cy4OWx'pFA5Ah^x Tt1Z$qc2|G$)d6*5rJe'Ce[LxS@Yy' )-M>]f-y͏ާ_7Z̶;פJgloDe~$4ЫŞ̻iE{2҇_4" ,PH`|tLkrrm8R:dM?uM7R_Y:k F IT޽GJM@xF*\ ^LhRgf[y-94 iQkKj} ܒ+4 K`g8VN֡ M9oIC<2#rfPɦX FPcWMEŹ^`1X~>IB߆F$ Μ{agmة)}hnԃ_WH.0|oJ [my P  ac)@8uPy[`Ҳ~ÁC nIBm`Fo~6F4=R|MmN$ {Le?3AXx8<5j7Hl?jrUZ6D3t.p0A l]P'~e8zJ'jaU,S4*pk& &ٕ x /E&el+$Jtuĉojk5U Iu`7E z3oQvttL:g qxQh&pأDbͬ/_FF`h %]}|]BXeu뿑1|L,z&@&Yp/Q⑘?+Eb+1

~T/f"7cgTѨ K1TjxEr~9;˧q1;[!< mm(Sw8OFٻ;7~'4:@DW-+_)˼GTf)OodrS6k<_S%:/Vb5X/Vb5?WgٜAщK=3͍N0@7;r6(TF.7Ps^7ȁMF̉؀ G/aJ1[R%wF?¤Nk;|vA\yԈ(FU(UQT+UqT.M:b8ADPOK%z=}DO_/ӗK%z=}j3Gk >QqN'1"&LmKBy5Jcljq՗dqY#X-FkT>Fք$ךcz$wN>}>8?[ZWsU ӡN~9<wn0"WW7C\ 0=ϐ X ZT^0Swxax^8 nٕiǣ]p~:~ @w=f`.t"vҺ\ r6 `ŕoa*;D7 =p]mCnHCo"\cMݵv: LJG'gGWifeBeTKiY.|/إ$1<%?m%?~:?ݫX麟yKKl6h &E#Eu/̞@zs3TϳQ kfhAKq 0j͞0Z 556,Ӈ!'hwB vQB~t;~OLjqf"pn1+M1[w ζ%B. +DVk{1Ѱ* fB0QD"͵*[  mCeAgN-PGW;ZG< ?^740B1Us7C'"=Y^O]h>hC Ȝ l(l%u ls7 h͋{n4WbLW14%v  c^B¡gOO?W [6G=]AMf޼IViX?^T{\lJo!M& edɮ67}ǢYyl TĪ`tyVUַڸ PcOg d,ʝiFjEģ^֬ ሕk0kh~̖T\h̘}h#H!#>MKrc9޸!_7 o^k͍.I߅ n(a`dok0FBK7$WzLsņa`C:(>fK1yY& Tl+goGͰw':(GjGLYfA+JW`mU' "Aea2"%.a)&E]x?X8>:P's1^aJ8Nq|$#@z7 p}lm(EbMk ZNxV4TVzs鱠nKq>)?GlȮ)DD''K)^ 9*>Ul dx].KbK~5͂LQ0 8 kPZLC061hl; c@u 3.ne/W\Fyl4c`(4gí{8+ըdiM%`V5刘IygJ^ys_ ю2ʆCMkr?>$$^ 8J%tMMz963OAhVLXk2l߰8DKt.'$lX?57-)+qɏ2,%?lN ыmt? X-|\6>QP15|eO)aa!z'JADr Aa%%E)^j+ CY(^Wgρ裾Q%# =P ^DCb!dA#6ÀY񇭫~C5H3c4{ڧ6: 7Oj]3Ѽ$qD+*G!ĂRWV M]>UTJ(XUbH/o gޑ4u7WWwV|}Ojq!YQy`/DY[(!h)DWƭ{"{<$d;$d1rь֛RaMʃ2ov){)\g5!'5°_Ż"LBaЯ{Qd _//YW~ sXh lH2+<Z\Lh5KpK[F /v`Ri@!b]VjTPÅ| GEz%!p. _Bt+E .K#"0KFaUUu0zFm47RDӒ\r>'*$2c zijِ4NOGWo-EYJU4[l52͂_K;.!<.R{$яd΢ul`p `Y9X a*lcX:mEL.# IL(&U@U% TBk-P'X: M齵Vy!3njWqsP+,>B8#N^tL{ҢqYvJC|x ݱ7IEwjܯ9,D%r2 sd֐QKin ,~Rώ6plؙB<957$ʔx͜ !q=;ݠ]՞.$ n$ –L˟>Rɹ÷wAI#Wc[La'vPPC 8׺v׺7^\A6ARG3~#L^ltCBtȤG+}r _05R DD='ľ7vR 2(O]nnW)a2 ɝ408)PX|nWy.ՕEFŠ\`iMxﳩEW`3"m~]3wgq\ Bb5 5a, "}kӄ1:h/hȏ]Es{wU:M tOzaxC9t߳t>7qKsz 9p~p'bw1n;-ڻ TtONy~gCYQ>A=@`{ao{K {K)gBLR1+W@4/!-Bšc*z{`<?(Gri6;QWL|,) ϝSH19z)?[iWf+GL?xq$VL'- iT^SUMĦ,n,5 IL#4s\ht>6lLѴV!cUx/1⌓pf$7=Ŭ3¢8c'ĭgvb-Dãj9_$r`L [ѷ+jryklۖ%REa!Mig4y1w]ވ./O`Npp½Q/a"m`w]4F2߀UE]k:e'g>:NpIc>A W1c`!A[9[LۇJ}ap/~۫?є\Wu7CWu۬wgn-:3I]XK{=q"/_a:N138/ّ৏OٯgG6~ |ܑpI388iI|O'ǣG·ǖ#xbڄ+ d,sPa)#ϧN>'G=_uk # Lc{5.q>#.*|<88?r~9>.PA??`\BhÊ/#UXaH. )D փHH !&ڬ: : Ee7&$m⽀ʌE2TVw% i>hV ^C{w!#Ii;*q0`z8{qy: PoU{C0$s%n+ܤJG?bFH!͕V#ϰB#h1VfMqA%6KcIK к+xX|28>~1 ~'O'p&eLI-ꧫͺu8/ZSX6{,:-QloL'`0dj #"&ҟFQC[OKXs,iEDm@ EE<77OI 4M#²Q/tIV@ [wVb]-~#՗G~bJ֩96QB両s5(3^;)0)}p3|wt:J́/?8!gބx]UP qn1MIh' !*X\`=ʒn33 ds4}9<|@·vs[%hCT4P@:$ ?̓z<VݥosxtKt'C,a #r ,6uߖ-2ҫ]ڏQ?h D&U9*oؤEWW L*AR*9>4TDϨ%Dfv(x:7IX Yg-c{!QUBa>zӈpE./A1Fr휻2n" & #hqdbB~!@$H0[L‰nFqK&E#] x,B`,[e*8v]C(aȝ1׽do/&|X-< e3Yaj*-e8l]*GR.MMZЍ/u7wv[E&zθr)̠A[$n^Ŋ+'jE~(k($$h&Wq␭ ?Kh6.U#X1#He#s?v?,NMnIl7F7~h5V1"[%| >|[2K}aUAG!t,/V7zfCnl4 EN8RH,:#V:Q5QQix0&>HY3ӱtLߞtiA9(ڥMh#Dk|WH0OPԫ`#V22(*%ĴEVV-P­&/$T[qFZ=s\".3[mITA{Ph/c]J Rr#>'YFYN{o$ rBj@M`v6WJ6&MI[yM6(ͣ`&TGg4%3b2T41oBvHvdylRkuy0|C q9ki <B_dADJl(ysK٠/)GH1<1vɊ. 4/rn`?!S_W\TtEܫAэ?={=Ǫ_ύ\y_;O3,[cd%U3SGP?4Yg.OΏs>@7 V p)G_e iU'֟k[V]֮kgہ~vfhY6΍K tKܠ)vrZ qĈaY ReKSæysx\ ibcSM9Ilz@UsM]hrXؓ#=,(GJ bMH忽J߾m,Wb@gtY=ު/V\ZL諒gȆ֜UO/ 9ɸH'%nvWJB gcuNi$|EDEĤœICcmo'i}-TpuH8/YM`*TC#抰+"iVmB%$gHOf]Fs8zC2op~J^9Xaz)ULiOgÛuBbUyGJ\qXe#X.b-Ye:bRG,D)aĊ-?N޲/flE:ʓg ꀡ9. `itjz;MP9z~WZaC^<$̍A 4%۬ꘘr7gu\;A]߬y-P9Nkx^Vzl IۉX|g{6 e >A]'MX X&ڼfEE3>o1HDzm S tX92(ItBU0P & \?FC+U03S>)(%屐p M֤q%8HBD"}^8/Ȓ I Ɯn`ǥ3} DX0W/bt#_er>7%X86ԙ? 'aܔ`zT @b"B$wtIiQLD0}RɛB.y,M3aC,F|$i 8AWUq` `ǤVU3Q Nr1q:bLm"I䡵 T.>W<tX2c&`C$3CS\=M8|2/Gz@DU[ٹaM5~Lsd1կhUͤ'%j7 75\ck^iq69hdM:IV*R?L 2;=z*W5>e4g/By~匄E(/ڧ_1UHX˟(pr63[wMdβ +T bZZwXwҒ7n\C~ +[Hs,M#v_!iBqL* 0Xҵ""aCES %Ttx*1G,_EcUCIez,,GV)X+PJT!Eqs]L&KGԂDqI##7KDȁp.`@ͻQR`NBL؞7W~pH$b)" IȍMC6Sm:rҢMbtƎ2,a-W9A HU&pf`o W)m3"ηR6=DɏNc}v ! J~0S>7nK$D'd_пdULW|j! Lf[ǏPૌϼ }P]UzS\ͯ[o8^PH؏̅S- WUR@(Nm%hr&V&~ Sܱ hx_a!tR*e(!+eT\kfHg΅K;_3\ QnjFSRq='Em!Q͜ta?z[&!U$Nn`IRw:Vl$u>Ǝ}v|c,F۽zQ9_\/XرqG7w> ұ?ސVвiQ׊T6MħD\Q8"G^'^h!VlfLHMg cP,jGl+ (AMeȡYkk;׳x~t` fߎI: MxcE6H-;gRB_imUk&\t;XTkf*{-[[XN;N@+6v =&e׊/2CS#kX_@ķrG-;% }hWIMD^(z~5oo UaTZCTYmXLcӖMkQV$TlЗɘ\(Em#T^TjIbU^E[$>G!閚L_IW)u5ۚ I=I-9MY-J a?8s-Q hE ;D||fi%XqX5!}!ma/kd}L~eӒw%c'̑Ě`j#\ +$++kRHCQ B%yj1%yPrBu3[Y~&T6mc$$zz?uMo;>rMf'3'+~ZW4 t+ _e%k UOq)^PYBkrAzyw;r|>Mm [''5výf“fC2HG ظc[LD$U+ 7 vIϘ/ߙJ]h!?KumNI0Pw~vo&EJR.AjubJcs];D:-en8N8˾.Z5ƌD 3"uф&YJaT+hywȌmT ?pb6. uo4 EZ8M:I@\H!L++t]VCf?[h^긺돋V'>Z ^RX^Aw;]L>? c%6HY_S72rV6#vEI'9_ ;6v š{<#wcmͼ kc!zK@^@9g{b= ZAN?ַ6+B:|q{/='9\ b,lF.c-,N_&y[6p3 Pemu6p臀1&#, D9|qa% '87?^w!hf҄ OI9B( ~ސf2)ghWXw<݁OOBCdzKw/f L<țgG;X usY/J;F> V4X0dg mJε6KCϬS56!(OuGeM mtaC[H-Q.j&/NTd"U3S* +!/ӆM'Z&+U(J`J]5^]"&L5rUjv)yQ:u{s/}Vլu @sK9IH}®݅5kww3ݬW7,3޶gsHOh}fC q&h͐kCCZ2VHT,"vMqTCK 7u-+o-0'bL[Ӻ@b+#T7XJhD{)iKYAn)bkcJ,{dm!c#DGVG{'[|^!a3*tꃿBVU EE#+XpH˻}Qi a].(!+z*NZ:!Y,"S.'hمRk={}G"ʊ.£|!~H`8|l+5YЀ Q/ݡODI~~R<}O\u_1,y6RQՁQÀu+ERZ=Gؼѵ<(AȹM26[i{6(ݿ<䖷Ny[ݭw[$7'KKiYҐ*,$$˜$PU*BʔUN3V&^gja]6ρ9:AZ*幷VφYr6?sӏ,ajuG_ϭtT3EDL#?TRǴ3$Iyw-y$R1"klsmÛK]9/y|Ȃ9иjcKf0T-h4&DCZa?|m6S|pKD7X^OS^^r]Yn?^Ġ%k<ڛ|ђeRdJ_dPGڤyՉJ!L-Qf^O]8TjJ滩zRfJDk/{+= њRT.b*t󹣲"oqq:ӗPeKC^ڥ}V?y N2`*Z1Z\cc4a\O墷sΏkq?e47 UUw|,h鞨AϿc5+ljݎK;|*WJ-3ٍ}~,_ǰrV5,<("sfz+ D~xBK`_Amg|i-fsA;7-C%.|/LJ<+;ڲU|?/ha??0zF7]#u Niz}ܸQxI֮AuMlozr^ňf^s٣s\b';~gxJmwu7 ? ŧ.А8|0*;.2fCH Jt3 m_v)SVE,Y[y5`{0 ` mm8 3 Is?cSnSE12"NyDz캤i5S #KD -.,r"'г˧aN,7bs^Kmf hm Yw[x,FI8&YKjX[cdR.Ơ> e&;=fap.G)Ng!lt7ŗ>z7g%*U?of|IZD'0! #AN)TIS05Cq>5Qٍn .=F}%܇kKƤÚ)/xмp#U|t DB*I2}|m 9[w=uO;]lGN`1\ u Oc{8 zDp1;{8ғx: 2Ihu[oę>`r' HiBv%yqS!~?E stߘ)nc=K*{ߕbtqRB"d Zta$a4 ©1y,#&|76ۛixqws3P>h5g7'`6#a 1$|fhmdznw=8E{c[j_AyFU[xF'$FtZ6ny*-E+{zpK nrGRmSs 7#nuʇЛ.hh2X6;"#Od|p3:$"i zxiJ~zuݦķa|pdŽ `1##yJnp U_Jlx,*?{+3)(RrL;<=h ޲7Yu=lꞱ;#0}3Փ烱7bO]ڋ\o>KqNTC׃y~p;pD~=uFfKcd ƙOh[M\;;T.\w`(2!C͙iE- 㬡3nCOYp6cڽQhҺ]ƻUJ~u4ݗa58}-^ESr`;|t{9 CJ>,(H> 6 0( B':gZL71E,/5 0"YaNQY=L7~ \j U_K ރL3siPCcp4wOa/1?~A '0S3+}[! EZ@"Ls48) ?H>os{?yF@ĸȭ2r~ϕ#ވB,5{أw+7MB[w D9h1MCC$$cR0X65Y='ҩF`EKqz* %f$:CZA?Ͱo< U̔I D2L L,&hGpd)㨀A8jUEk U7oYO1(7,.é7 jH3VJVeL622"- :Σ RLiFU􈟘_&evgvv#2aJ *4J5,:Ula.$\P}ڗ ibz;o .*jNs#Kk! gҴwo(70Qq4YM+:Sb(wEWh14/ ҰN}t]0B2ז.TKo948[П{ "9:2gJ9"Y P`갺J.`E (j[|Ud"RX?2l=#NBfmh{P[o;>:gn{}uzݖ#nD|s?xҎܚ!-wUv4μ۩bl}[?6w^mo _5&E4&hq[^&T7$|/$sIE h-j4w +t8.ʘ5! viH2fcސE ԗ;iWgEh"tԸM <$ٯ B7(L_0o5%lg(pL#k;p:" $ݐy2Q4!;o R.ϺgO] 4H~IHg%']6~#\ CM>$9Vur,ʑ2 M:{y5 {] 2sY9T6$YيӔ]ظiO6]NӺi` 7`qx{W$W64-:O5H^a4; ˕&gL0aM3tlb.N'WqW3b?g(CRs* [Jk|`'Vz秝G;Oκglx1j!~|sK4aШǺws;iH’vEv^'v:D.uQPpf K8)Lr׸0Fq"_-H :?楔IԁeUqFFd:Ypf*} z6Ƒ6j0%DxԨk^ZDu2AYHf}ǸDr2D-]>hŀ&td[A=7` ̬MD$/GcMHz; 58,Ik{C4;ֶ0~|xv{3:oD:=r bS].)~_3[ND+)gПBȏH' &5G#`%@Cfz G]O뀴t%WB;U+?k%G1aFy2Nra`)VtV*L483ޠƀo w΍_]1t}On\PNYSmQX?cN 8M 휿90)Sl<$b{_>'Y8tb+V(ǀpm1,hO|0SsRzPL[|-m~Bz/nɂ'|rv@sd&~ oRgL C\.Th4IgIQ!>==I8 5eOԛR &x4~n;[M1v2'p , cqJti"hk‘xd~ "9`&NS"l8K8);(uN2 ZdB>ۭM+l,VInT2ҊbRG퇿Rwc鰛fߕ[]Q?/@9J,bOBj]~@6s ;Z Me@0k)A fG Z(GUhLʌy n~#1 `, y("4uꜝj#BbXw>q?`A%\/0XbFPȻbac0п`Jvaq$6awwI:+l3@ב%e"Ċh;l6_{ +i(MQL@Qw[>!vV!8^xLH~ f^0q|CXo w`?̡@KuA}Q]adӹ#,>A;$s q]9v ^`ȅ3eD:5Kjj#м&gLk-G~ 0HZtsg{{I/o>Gyf| =w..M ģ q+A&U_+|ddNUbvB7"&lb$ӷh&ڌKvhy{_]풒,tbZԡ\-EX aem6[Um =,2a%9^ )셾wˡrxn#9=T&$S\bؗ~BR0u¾ZsGb_ Ԁ|OwFA{I0\rrY-h+.Yյ)ׁ`w(*Qo&a2EA$N)&JX0TqqVp)(H-MB4"]C9 !J+"29xWƿ.iUcXU[Ѕo7W>m޽?W,O{@90"%^k i@/wik:!҉p`ۓ͞Xa\Ha0S@s; skJ|nIžknm|cw`Dmѭ52f!ZdItrr}ڮ9o۷m ?†aͬ^dҾ )dhLC|#wjQPM-2O']=3'MHAC3FQ<ߖhU%x2cj$8&{ cM3ncZNv@*6١a*XW] DhL/)-&puwyr3=ZYʒž50j{3grC*#e{@LK~E 27UbPՠ*G%^d\/ ݊t$K"~^l!!0wTHca;y=9֊"ՆBDS'zb~yDi$_N?JQ4GI4j?^>}vO}AeF_}X&~_ H{Wj=\}2}4F$x, _)˕2U5_O6R- s>p. "Yܔ_T4- rN'Y,Iʦǒ,J$mJbF]xl6f Jbq*8P5d4o`Kí5ח@'\3,A>3Ơ큢zJ|_i|_ ^txb"c"qJ'A~NK  W W1PEeBB}>@E{P^:\#FYidߥ4H+#c2-QFZi23f%TLI ONgLMJ*k+շ7@$0)bo{VDK+k+Dx $5iUlވ]h.,$[Yݰ8NFU[zF &W`fh/ pۗ@|s,ijoksPmҖ UJ0 /αNQzYs[ ہWXlVFb*+b+7wpژx2;]`CL'$kƼ$_#GeRPC\.97c+y\^Ѐx4.ZsLѭ_ @5!?vOκQW ȦE{EN:{|8>9;VY(i7%NFW OB^-PȜ+F9{덃+C}2ʼÓA]_HiňQF.J?;:= aK#,J3Tcw=s?e0tuHzj`,\aJb]{sAWO1t1:X +`셰&zM0a5Zހ,BrmDNk2j;~}LDL+ 7xp}~:7uL O<9`^$ԆhQJ齃%P\+1i;[?oogA%|IrǪIª|JJR|KKXG:R֑ķu佭%-y*93Q-T=3BU:U 40TUGT4ETb3c#y&UiNzVopN]aD [? fFE-ak7T7 \-]ĺYjpCJ^v-vRy*,F/FWZUWͪZyURbhAjdxDIfb:'LJcpϛd:Z'n+ٖsB >Jm J]w~""3S3Ga^b}~ -s.EPd&3onPhlۿSoMW8"Gdx\_$&:&:'؄\N?*BdB3Z1n@&8Ub_ǙB P?X˜8aRL' wQho,7&q(dNp &Ⱦ٣*֧p7BiV2>X܅ -qw@7t8 6{0J!.}S`ӺK_2_1F|4}J: H' px~V̓Mt;ȇp`e ɶs=u-6W[[(t Rŷ1WK-LKL\td u[TB4O_H9mxsN3mT{>4:W`.Z\Zvh'vh@z; nja |"s;nlR|sVh&UdU,[&D RBAnTAh(0tP&)(*)(&) j K&)rU -W&)J I !D:G Dx9m6e)MVcF)-`aD9 +t/bR+it~'|0S?){30U<ڂ vrLi4[ljQK\9shЃYQl' k9o# j)3i%aYANgZ޳n&vEr*KpZ|$7-Z[X1ώVq8G!*:@ܤ8,F(R)p\(6p,c<8J5Qs؎4=x1 ed]?ΙbKuL6$2{%bQXu{X&Ĭ]:G^( <}wY5XXr+ka<.q䌅6b33C+|5[iӴ1̚_'gBXxxf_?D<sm,Ys?K\!/9Sbsn;m+\E^Vj4s 5k\k?c?7fU˲v< ll7{vU#4V+h5 rHF?BR0*KㅨR]\Q"}^Mnj D3s?᫗ `AeRIQc?я)`ǯqHms!+V ua_ 8++wN[Ha{,$Alq9 w*`DStw.1JaV ɂ1.P*W<[͜=2-oTPEӏ-Wz&XCI> 3 o,ŕ+f$ưJ؊}Ibi o$ObZx'? *L{O]7yQxh.$!03Bm#;%ƢUlAS0N;'gGϝ^?|.M<87}ȏXf i&.Kld:F`" }]?)H&U'"8<a\\ֱK^mtY00xJbjc$Cc~^Iґ4lW W~tה(%giY-ɗ>քϑ%Lf2it ve헣 "q2f@yTs0PۀOgÒ:?6cBu;0GtZ{p<~ n<+s~?qa'+V0OX¯cԱ!%N1QSLbgҤmO3f2K\ !/ĨxmLMQ .H:8RLj冖` za LeM?un/-y|lfKD~Bl)AYsQ8isl֘7 0]I1~hڲxreü^ Ma[=q]+M(;)u^)|O5S /Cr0pff}͸ fFXim^Mzǽ#sukҼ324hN8Oeٮy[|2Nhs'iD%pEoJEyG[D mDXqi(j,@DN=-ҥ }"Y; /NO0 4'0vB!CCiz+7T/ ^.czm֯Qs1serCh%k!d.PV@눆BXqq%-81Jr|aiBz a'I -Be/h7pHs-#&lGBaj#Q" 3G *%ל^D <ҠXpd@kJŎ~ny >ꨃ*x.΂ ?d7$FhexQjBK,KP٬я5|Yo)Q0qXܔHGvqHe*K쬼1 i[KHՋz{iq]T=7]SU?&cA~5MuN6ʧV"6x SD.8']cLG}{[oϪ<$^5D<:b?mF$j,jP~LJ#hfDee )o~v?XP(nZq0TE? 䆈y1as' {!@(ŹW uZfkjU5mUcwEp&a\Hy:&ϓ'h6?9ԉ8Q#,EyC2IB;Rekŗ=Ç\ˋ 2ylU=qUYpUqS%eb^iUtsO&2n'xG:` t3q#&yɲv%1'p {C8CWڅ|UMi)#6Cځ{h&S~i+Vo+2oSh5fh"l%Y'42sBZ9* d↑V1=PjU.|&9+,:j'ͼ?ʞ=jv&˦76AieS4[oWzۋ@rOsZb Ļoo 6=k/B3_LuZ9Qr69/{̮Dڕ($.#$()IR9KrC$ R g{9`KЪut2eo[o |PgEJOrF,ȓT1;]^McJ |2 [-u'gd;P^?Ęqb0uWb8vt%-%_' R0DO@lmaF3r&e:B13ԊP@{UjR:_M/tq *9"9Y0Ӕʄ<~.#,|.ˡ^p 7AÏܥ&Ee [ **SPPiO~Tu{COr2TI}b\Mq9oCGhb q*gg B Q_#Бah;,&.BzZ+3'ǠLTqxeF tɕ _k;CGc`=c (w'A/wo}UEW;)`EiDt4N̝◌*"-J&m-cJ˼+J+~{-*|JtFZI5ԅKKi)VF>eZBL1/e g(\~TP!BL]AJckAxm %6 S4jl*$OPY[-7@$0Otu+'ZZY[Vvrp(yIӖD8 ?va|=|^믚Z*{.ڠNPIʷ숗Sp>;_]WyOx)r Vh!vQu;X =7]Nwv]wzW7;- W K4Oc)>_Y< 3}n7zMˡ `^"m?@Hͼ0-/FчoӜ=ms\('{"5.]C݃X60㴀;;@ހwb`,waEb䲰2=-GTR@ϴ+X1@~|J7}2:pn41x#89jsu#ՃpyJS?mJCWK.&׆( /1Ԓ*t|h# &cD@GΈ:kf3~3uT]}̹Zu`.a>N Ti|jEͥR²(>HN,W"'8S$:ص!I&\z#)D.Bl@WTQPjB$Qd5b#*(pRѪRItQև.atBK%卮JzNbisu5?jkV}k?J.4(s}vg,a*x>,ƜFk*[Sm'XtV'l=(<1]m'CXz>4xD|VKӸ1Szf`6G&?N}zASor0Ern. ۩,ekX@(d=$㷸o4/\B;ȦY2IB]d(%SGZ5Ry_UΈ&on$;fzsScA4PllsXy>C/n`P)wq3oYi(aфɋ>l5qC?5w]E=C^3FhCpj* Q8hh[ cDHm09$^:%I`R\c3S 35x.XZΫdz WLAݯ8 eolSUzcqH&VT7:ijT${vL7b dte$t0X'?'bIGUXpJk$0gHf%g+&"&wH`P›r1댵N@m1f4;ANM$c$C'i@|Nl%*]>?gbfg>7 s*(sb 3+NGw{E8>gN{"Z&Fj,&v*V6cd=jŔ0i?Mu' 2x/ZK4 zfBHV|d0Qea7{Φ}a5IpnJ:NLZ{MH΢ni_u_m@/ K[/IF=+{>zz: Q⭟ɪmJgXǢ%QX3KDKz;Բꧠ/`GH @-HLajWRInF:N`%鶳Di)T9-YR3~0#ο .[?^;bMp`? ap $Հ.FT ٩F$8ǣm8>صn0."Xuce5n9-W ?0%;~ mܹ~dT"?X F "`;j^Og5d:Yt @p7xcg:,fd .6Ơ!kt E8 Xf֝ᥧZ*q9F>ljAީV$328`GzCS/VJ'`6ؘy9TMy~3z- e~(A|'@'o>h:GsO#-1g9wDVAU`!߭ie`:q [kd`zsbJo.Gtб 8,u6ޢh)?xPyv5S])L|+ 1 +1:DR ]3(絣{l5=ɫiv~l:\VΏAjXHl(Zlmb?Ͽ D.c1,cT@,_`!ޘ3Ÿ0Q+Q9P H4L=m-I~+{ZMf:Ay ݝepK!gUKaw&Yh5E>aeJ[C{ӐIj$$,L]*+3@*ៀѽYt v!Nn zk1k'WYb/#^5:/e,znHfqbStLl."54Eny28x;vBz頑"g$Jl3wE39"HX,ChSH|ȓ6-'i{Ca\hw*!WGO\<z8]:Wh8 L'`M'<?őcE5ɆaWOI Λ$F]M:I}QpI3~,ǎJҪpޛM4g\ޥ4QF0!¡-#4RG%%&|$Եb 0OX4؅Gכ7CB4,^jL6P!hGT4DvRoȯԂ&IY99gSU= s~ڞD/6wqދ 5,S+.MLҼ]ڧ kk~rOa /k<ĻSjg dsCoX:.h9 q:Qt 8{v;9v677-wTaXLίiuh&[y3 92iєĖ:Hx ,k>帴rd&lךݗFiQ%4كϾ{a5S?Ni5sX" C(?>pp7h&qdOT'>G邸Q~'r(o<w.EK΄N;lƒ3.Nпxns_t=7h+ |̈p^ݏf A?r<7ƑcPl%3 vtƾs`D]`3DWli7aM #iN&T1%MGhVJL{Ӣt lXkR,J+O;ɝkHahRF$mjyL Y)Z#Q?ѼLFD_U+ ub,9ΐn0r'ӹp@  dH*Jd IU(m,⡓_P/-esBd8 mֺe~gg&\fg<;"]\#1e)мo3%fʘg tKBfУܧ j,UEQ?KW,nx.=^xTL/I7S$NU}|T ( %Q mH(HW`˜BA,b6KU2* k<Èi[rɾ )--YyBP-xƏ[6{K%#>c3zw%Abc ZYb<>b1XIC`'dq|Df7cL6[mn0_c7U:*>=Fl pj! /}̤<* k! 2^S$Z{ΉCeseL|WblGc^?歊'%l'/ꖹ[c'f^RtiSo?_6a&̟b{.-x'亥1lR]cO.4 Hϙ߯>ES c7/u H0_;9[1Lfwv7G2Y7F"zLޞA[2UczD(pcWj=]+5ueXZ馭%X{˯jL9>(8<%S^)/^ORBXloG:$>e_aФɗ oMɏ؈ɏ?id13ҩCM#n?NQH/[ђ>$A@3a, $9R⍃aWnv9')0waR E 6$_toBrAK-AbLj6԰mWp}ԙx 1f_!So}*S򹤪MSɜ#/}uMTTgt2J .7 %F#_1 "gAr7$[l'WM)]4M*'5/Ȑ&m׻Ӿ rr1|矔 VNnMp=^j/֧-˺f~&ؤepS|Oqo(<7"M5 90>_5 s1x'h7$JOkp_"VB!!ڤCݪ'x^{T׿>Nܓ?]䒀a?)SjX\Q;K彽OI zdȾ&͛a@YC^9gjKyVVM\zLnItD6$r)i IZyՊ%CՖ=;ᙳ9" 'd?AwDбɡ 4@?3~N检osUOB5Ǡo-niaRՠԅx5n+vu8wpM&x\So{'kvńa㦛˹ܠA M;%'khip, >5q%nJg9L@5AK ~0&/kޤ6eb;tl#4ċ5qAͨxvߑ4NkKf9$,gK0V2Zzƨn?^rVg5av7$Sϵ<$_h6uczঘe)4U yϖ Kx] 2dSgXo_e7Q*nig)GT|'`89,a H4%}1W#v+ ȱ CyQbA8^lul2^э *EnО"t]2ԷQv6gL^h$[P$'w_t/[@ vِԾ`jz:;hyAz:!uƵT̩AҒ)a'&5J:ly*Ѩqxو;[2(\N9 TX LA{~i@5xT ݵ/ELM!13dĬ$8c;8MHX/rޱ[F(zv]r1L~V]WI *&C0=T08}xʠdb(xf9(̖gE΢=ݹzV+]l^tg6Vᒀc*/S] bsק~OCTjցf0eWY49IE#*.'fM߈eA.%F١̻sF?!1[1V7͐\$g[ܔ LH CXL\(VfX 8y i"fj4fu"5Q̦JyWuI2\ h) ,QiVZƘi/kd_E]n+3a:8*7b.4L!+JyJâM(` 郶5_`#&K"޶˅%I.(kW+O.+,^:>Vߓ:UqQ=5E '=}\~%3H>`g0 M!Қi*zL|mUʗ [v9й\Ő~\ŬN+C&"˲rēA?Kdc+)9@8&?hXS; wwm/(xMRIBd#"lF/ t~qm'[i:uQ (n7!Ӈ<">(>MF"5oN(ITZx‘ȹaNM`1y:@+~W /)sU~ Þ=@Ds e.I%+k~I1` y\Fof##\"Ajh焋K_H$H"._+g* =aFna~8?')w\)o<B=N_7g, ëb(yn~3.\ٮ>Sܩy9`pu6&慢4/v(=^Bo a"4 4yl!i ~yfUnZ8ۜ(uj_\8Ei=*OM RyB^T~O$UI4$` KrS~y׿~vsswNS88(`Iu'!R63Iƫ`O"Xl1.#~ L? gOF.$X>L:CQػ\ j-%d1&X0ӳӳ^9?9~;ub< .}\ˁUJ18 @5d)DIb4h:a~1%Bf1S'q|"gf;[dg8gyЄ3T&lE ϯ} zpPfvsZZm:\dgD4ZP`^8IBz #,Z{,FosB9`KL)Ͻ~wptz9*~cPz7B`|8vqMlqGws=Kt~:>{| {=tIHy;s 8ë9 6UoX۵-4N8rz Qk,z"M0hL{K ql0e.^Ѥ@nʢ%F +V\W"=u:3ɠ="y wǕoj^8Vk2ٻ~X̷r-m@Tmb3;.CKS.[1hy% =X ֿžM!`V k2 +؅Kk˰Ӱ۰.{ָo9M[A ɸ+amK_Sޱ㿉8 f}^|@KNfˇaԈfE' tCutCf]_~믛ͦ_J\,BCoӔ7 `k<ׅ-L8/$,݈ :D2Q'# * zWt&Q$4؍&{u @3`넬[^wnˊr`!51Fc&o6GiN|`pnCؔȀ qq;`{aJ/B!/גkEQ5Vo-P|oOpԕ5>]wǟ1;~3E;>ퟻO!ol8=L'pGĂ7X""0ȇ邛0Y =w4z1sZɎ.vY\uLt{;kO2&-̖Ca1h8{ru.~I 5.7oX8XzX0_ǿ0b=[lh}}Qـ<^nw>Zv-Ap|غHz?ԭtcήp/ &(&a\VvyPv'onGȊD9;u'}zti5-jQL*< ExF;&AP((|W#c?"XS_ 'WMӑߚ=' &FͬS`% 8W)tk;o,B(IxK 0ΨHX>| H,e?RG2x?>_ql }V g,71o Lz^d7~0AImD%<-i -Y]Z#?SOr¹0qDl~,*Gk^=oVJ2{œKT'TOc)^izjx d 3 H(9D,-6lg(o&zM wmibu *&Co]* g]@t*E9vAq{(Ef?-^Y%xG-sG{h~b/Vhm}ڛ,gz#!ػ@xZA0m%$$A5>ᑄhϪ;ٸeB\̦ qENįEksw<"l#IS@ }, y̜yğҾ-,&YR78iDhl}RԠ]ۻJyKBll^ ^βh5a6/n ):>]j>vVv[ZffͧUy i1uvQ4E}h W `R`m4|+@Q@ɗ1NڬNza<{oK[Nhu'rmn?p 5 zqV6rJDG) ,K+ʟ .G^um|yi-O A٫tٷRG'&7=WVi ,rő&a4…HTVK˜Ԡ(`ƵJU}dREk}S=٨hToB3-h@K62񄽩2U@`A߯uh.G2*SMBaG٣4x4Ey#7G5m,7 Oӫ(f;K'41e>U-l?l?O^.9i?z/Ð,!ÐaH0$? C!oeH?x"iFɵH"skAf1jx;-rRLbnq'.ʼ;u2Hd7Feu:㊸1ܚ;Jb;+ح&9O(EM^ύ_wW^ePv nT8P㖛w=cX0 C ].$9X4?P_reQmo pRjW񓂳87UU Lf`d`TT-JL7(*+t7x 'v񲥪Vk_:]50"}ܹݳ,~o_k~J e('aDLiGQသJԑXHVxi>r!~ o8 ~Uj +t9H_ª{t)D.W`5D|z-5̺ѐϤpZO5-iXZn,-,Jsvo DtDFUVJ#F}^GGڨ#7JBRl /$/IsoX*XmN0q^M8([5?$qs `}u'J AF\iΜq %NRc+ ~M4ab`}oZx[fl446I+׍B:Qz4LE-XH|<"&ȅx#Ehǣeg%Ze)U*Iv*f̑im>SM>%5,Z7xyA"W穚_.n8EGU]PF$!ґ7>X d_ݯqp;/NT=yN9SČ]()9UF9jrH=uewL d'#.#i\)zمDAZGUb\4Ώ>@"Wn Gɿ~)uy4U&icyv5(r[lMMpW=28D׾ 6Sa,UrFv~oPZH'uefhTTFkˮ3P5 \%Ft\7[2_K`<MIШ߫$ugU=a Q Qm;BUߍ)*31H4CtP XkW=/Z4ɀa['d9#~*ީj@*ϒFg,^=*aUwoY7wK 6kᔙemO(`8YɣmM0mq9wLJx보[;>.FZ""gf]pLs~M8ǚMf.0G*#>| m7ļf9Ѻ#&kYsA@=@Y0C24P 5k|__E73Iuwi4>m)࿨f9[w4uYen9n6v5ߤghFIgoEp9S{l܎a |]PdN9?*K{@C6agu ^x87Bc#PkL9Ar9;؝es袙L?1[-^1 X9awiv}DXٱ 7jftk3-}&]d>GUΫgp!0D!,hG?'5PS!1tS B~4wID3Fo컈VftOyk4$Z^8 dxjFt%/LNJtz!8"5 dOYYtUNHI Ws%^6{g5V#O)elIo)`0Xi7AR%4}ii8 3IT48k<D<3Voڲc-UT־w?o>@z+bH2f몊d?LM2 M#B8 G0³DN1_`my噘4*z9[  NWܫo!_NY|ǎʼQLĎ~$:o,f͚l4G8"19vpFy^،~s?(lD˙,(5tlZesY73Zlj0*@#q}EΓAp+%bȣ.&ruҁ}+C%h-ĪiƬ \П0EO V2*ҟ̨H?4Ӟqpͧ DŽrnaת%23 ̝֦1NaJeL M;z.nGwk*:;HzVOꞟ)gy͸ gQPD9b_nhh,΁~NkJsV}}}pơ8gE}?T[3OMk} Nq"&jk[8ZJי!xw`'${ 4./ Um?NVLd>s]ؼ@RH0UTUbTt#jl:Gy }4lN':h#/f+MI>_0Re"% n@Qu׮ XBhm žJM SST7+!9 B}hh@ژ^gBZ$4ćDT$I E i˶ƾ =CbJ z4 d}kC[@WӉBw6Y/6rRģN j"찶R"F^eD:]?Vн :s o]HY O-rJz? kp7?ӴOpYr /=Mc efv>mVԛ0sZ+ nץq܍,uma/|h"QIuaH;뷔W' .xfz-yՌHe>(WdLFJ j?+NXMj,3?B`Ȁ)r8JU?C>0S ϶Je*s3ykqd4_nڀbsӜu.y?%Ɇ'n?xy $ݎ[8[E.`65{6  5e."ף+/N0_\j%h[IIF!%+ ?1!Ij5@JLK + :ꖨ{ڄJɇY+h H*B{8e[]`{} Vy).B B hÆ Q5oLRJ8JCҌOu  ӚoJ{(Y| o6(AӌӵƯQsj:޲D*(ȭ hsh5j o[N{T{W$Z˴g;8x3Zvnuz0Hl7Y߀O0n*D le` Fɺl|w`s[X8xd3`Kh+k6; Fq/n/oxizA(#.Eswja~]|b'BA4ƍA;># I#4[#V| KІ#[ YL%}y !1 \wP-fU;?n|,E㣋h?;~{tzq|p=Jz~:~GP @ 0Uwۃp9̻y2._ˏdI`4N<⅗gO zk#&DQO4@G*I@Ⱦ1:=3ED<+JH/l0 xN sgJZMD0NJ v7M&c1[yM cjr5O߂N]}DoG瀁} !0v,~~y|q?٧w ̷ X=goN; |y4;>G(  <98' +X6?CN9:ӷ5'1D>F*ЩO.9SN;?@7 ؋Π`'4 {w|q 02,/O3V֘ X7XyljG30n00q~B=xI0OBޝ}N>(B, "L:'*tdZa^c$SPC 2^@2sċ>LszāL 3 #|z;eGYʦfv0v4?[p*-¶k׷va]Z`Χ  ]1p׀]"t+~BjW•{"9iaԾCXQ>vh5ܚ s~&5.0?>R z!^cqpWM΁*U n6н8i9H2F1E{IUqw䶏Jb%. YQKYgC !S7~A97AW/KZO4eMn9±wv,'[,2M4MeM_?PyowpE9kk$‡.FYނ1}ff8-S~o]?-?oiֽ-*ҫ0+z+{J7?m\3&lpdS;0lʆ7ӱc W旀7-Y?C2Yƫ;oJ֝T|C$ P;&A{MU¨@%^+G|w 87~v;{4 B>$DFqMHQݠ<k65f2ٝOLtyOuvOdR)W"}l^^v8->y= v]vWR'| RLfwFsKl,Z6pg׉xtd3v!0ڼաmw١o^\eK^^)6gq3FQ AI(ȸ*+4DZ'ŽL ?NI)}/3Mς6E^Y,B܈}.f5c>>lϚk~89)QD%!˳L.E+ ǰW*[ʧLã,Q'K)hrЪtVFI&JG;dT&FEwY 20,},2ٗ)q*WӿJ~CH y~F :~铠f}%:plCw墣I6DWCOV/}o/;})$5j/^~l4vfY߉eo9k$뮣eJE˥4 .X8iGNa, wTtslvwy~EYLK.ъi%+bZJE+A HZ9*$ Swu- ?~/s i)_]9qh \s.\Jі1e ^T_Qz  91 J ɥ$ .'XHtUUٺ4J6M؀Nb2XjaCf5ٺfo۴WSed٤/3ֲgܗECMa,-tGMrϻύKccJeb:?_8ػ h|AwvnVay\AįKb_:,޼MdF,"b ngltod "— k#{e^O2)&.>h>v,f#a6dd;3dժ q%>k}>?>^Ύpmַv)h ~<>%zͶkzyc=|wV~PE?Şq<.q=rMڦI3߸^|qF* . L8+cb5aj'1FDGͮSS#$jdfvw;n@@F3+_K_ƹ{#}#aň$r Z e ahČ'$zn QSF0CN2]*p+"Z#=Ӱ>Ah<)[ް;OmK W_UH*Ez /ѵibSB&y"eܓ}T43*T7$#"ϫ\oftX룯Mpm,^B6 {4q0Đr8z"'%)vʉ7F{3^jc0ǡwx }U/kɑTJk ;90pdžDT>[uyqU~t tHg,N%38}o֟Loh TR9QtB ?GCuav*/bB#y4S lDNvZk|X;zO K˾EC}2ZeED*ȪW\/GyUz@r`D1X|ߋ3Alj?lLb0s&& `>, Lsq R@L=<Z {'$|y$qz#u&R(RQC?fѓCbd_6z%eha=-( + `)eQ)YpWSP-Cd^Xd^Z+xEĪ膕k%^ʢfH ĒTL+32q.DRVK02qek4]ɐI>.^ӱ;<΍Ms׿29i~h,VpbJl:V-pߊZɀMzӣ'I-Z(mΪ⸶U{508wE-I^'ԉ )wBjZ19{ў@ ӹ<qE}GG-PѶq+?:/…\֊5eI)G 3 ZVUT_cWԫdWɫW*CU}fb }c>F=jtS!%_C(OF_&|LL342QDUDfiUpsFא>FwJ#L;B$M{PR\;d$m7)Y.kl+6Z*+e޻ӾZMs_eN\נnP d=/SϛvNKrp=b4f qeɑ`aPfotnf2'թEDĉO!UXBZ}'tfK~NSnEЩ!HJ6_pxAYz Ylkt94 KA8ȸ¥+,ԍ-$<`DJiT! tڷQpЇw"Rk0jN܏rkZ CרTeZV_52 ڍK5JNl, ;o٥kٓ hd V5|! [sL<9 KƔ3dLy KF7dT3'L|BTa!~{o7wZrt+}㍛`lz7o[s/1eĜ ,.p 6pU%Œ.t%],b&l6I&g*J?YhۣTeek#zvJ+Rt^4ɮ=iO޲'?'oۓ_ؓw/3U͌z62*Ȩi#62*Ȩm#u5nF}݌u3fͨQfF}^yYĭƓ}︾7ԻKzo{SozN6oBzI/czDF`b .%$6آsJb2/(!C 1SnLK/R7%JݘR(ucJ]ԍ)uR7%JݘR(ucJ]ԍ)m͘&QlSbSN\-!Pi};u0*SWʇᮢb:{/SxʗU˝Q1^1WiXZ5Z5kWY2o%l{}oCvz}YDŽq!(P(WF8;mMF|l0;nW%ܲV\"eqmYqmU<ۑbة\.Jl)6KĖb$dNR׳0,U/U\M.da1iTnjXxڕ ~>psmq8ozk|y뇠A4nYfZJ 3rÙ=(' .ֽ֦iu94f8G3ȓX~$y\9\!_Cly>6o-9yyensgohσNsm9 J:a/Cx tJq@26G3 TO+3WZM]YSw%5u-UEllv} uHm߁>e|gi*%z7JOEehŋDMS =y5UU~HyQVvL$ZyvQػW:9g . ?Ŭ_xZ(;b_R rʑI$<؍tUs27Գܖm,p!kR}m#tCsTXܑMdNh^έk9|;ؘ@E|u[QAbsso#vci/R hlK}Iz)a'zzl閺h/juU.q[o-TG{J* SL(ׁTd4sh$#N sz 1]['a<.jHzFSKm{HiƤd4g쾬=cEm+-Ic!TȳK=$)1d4tVDER4mI2GHiUn ^d8/$̑Tb{IAw*b'j=B> j|P|7ғ7Mn.3NFC9?l=#SVs:Nn8ZG&ٲDO(J|%Îo&r0ǝDtfbM0bq_>QT h]4Ŋ_ ` aEWt787!>|XR<]m¿<%+D\RLVƕh9r$7[%ʒeiBt4`C;B;' r@P! ŢwTbb&{LZl^Kk;w>[q o#Bwb|j3'Ga5Sv;s<6scv"9D4s0^ӴCVy$b9gTox+&4/ Y,2*vPHʩ[üظ{[ "Ryh,ė_t-+Aoӟ_,V0M[#*BgǠh}<]РLZ0bG;'zêͼƋ`dJ}>J> F,| !1:`wEaoO_+ ~{uP_(ۯd- ky׿7|CQGB#F *iW'Ao[݁ ſ+X?ӣ2o쳡n7BCLz}MRh? )P%fv8çOYㅜ.؏e-"݉Dr dB5%sSJ=kIOD!FZ+lm1,@9R* uHRF'pej雹58ŭDĬMipQo|AEƹZ_j}Z*^K뱂2Y7*|R¹հT@ LBo(jB[ aٛmx+gІW? 闳C&A+waWP ${޸}En`l! Mnn*( Aʂ.:>/+ၯ ;Fh2ja4" XՍFpgyca6oP}]85{I $ Î"X} }UG}fS{烳ZbzZddȥ/}H_ؼʃ~H^xWsEeWb15bOdRY.`R9E%FU_6̦niă7mH-oEc;dVhD7,JbVf*% Yvtt?SkDBZumu%7#̌ =Li(EQ`l0od_c䝑u;ri  &WLX֞ FJ$bB0@JE53 "qY\-z]Qi m~qGJ ~6wnQ4PwI,R*Mb8ʅ|nRmcMGbe]8t0uRF$H,Òm#"qK׏ K+Q9 XCFKVۂk@[+Lُ 6kʁ#o8y|N"64 9 =TeM-8c s%:҃,5>Y&k SְdY(Q(Q(UZ[^KKMEqq9_E-Uk2|5lMvىh'z,l''7^(Q(UZ49|ƭ]0ܕ<ɐUMDF,o?#uYDŽ?!TNV/b\}31p%gT ;U׽[3cAnބ&.kG@"vHP~s8D%Ro\:M8> sqR`G@LXtʢI&Y>0Xe~/z9P6X;|7az) "ȇ+$\a4 Üj?pY#A8Jדr eK k-䦛nU_!NNhwxo&RK13c mT֩1 e򯐋6vw?3*_78CQ/mw.O & GRqY#2rnr&8ɺ9D 4 #Te=;FrjT JhY6.N"vKH3Sl;v3[Pt%'`n}f<m1d>C!Zw=} N^}OQRVU !^b}IK/O sY6>Ve|EBSHer`<\HK{ҙ 9,_H $fmO.^nF6ћm>c}r S8=-k6ڎiׯ3_t/9s/zX}(]JQ0*T1 wqD4*{!pNc"bIɂ<e] Zݻw}|U֌&ҩ[6k@K5͹לG5XXs8[s\3ԶtB/\\Z.FEKקEbhե,ss-5r1b}!w8G=83+~&DM x7bhkwxtwѾi\Deō]qT[Y&'q7ZMߺƭp:l;q2 *kSKʙE4qs-;A(]E@gy9B,RQHV>punzj!{#F.7ZAh+|tNh+zI|X ߝ3b?(qIYF.IKb1sQYbV{SOx{6?ƽZH$M)hǖNw:KI-E|Ng|IDoI~ #chsLjDjJuwkr. BښFhCwʴaYjD-ND0n+LlG4i?" *46 bUX̾M05VdjL۲ H˜3uB[[, s, ƛ:lP'S՚h 1LlS;t! ^cC <,^BcĀ~`c23|8 oڃΗvgp9r QuErKEA-@ޙaE2 ms2C;W,i#nȑ1U=RL;SL '?+_-p,=,dh5E8ʛ&y#7G*_6C=?HM:U{iNEN$R4hKmbFPF׃^3F amWA۾kw'[a|){H|69{qދGxoX/W}m ڣi2ǯqb@A~M@k &O@䙭bVDSe'78JMYpěIk={ G9^_Ύ\zË%Es QJ``*\; o} tNf0`Uh=ܘ$4Kٳ v[?&Zw7:5G։3{$ ;[' Z mcJˀkltjy>5"8]s?vG̍8Dav Pz}p'σn2/a2^ CxB=ڟz (v{`T۟ ]]C45z#Nﷇdp?p`:y }6B{@:0O{yoC$`t rZAT@5'`.xON0tިh=!.;]G <8>q.KWut;|ʰvE3RʃGKv^p>g apnC@!R/]o:Tؠ=-~>}rCKz^wyrĺ!"/)H2T š;J\.@IcuV6@ujϺ`X i&b,9Q./lSzlrtgAHVE.;#MNBhPïKhShBmxQQ,RncQ'xaԒ{5b!4ITCC.$BTe"`2Ot؂Mù].qo SNꈑ;0y-FĀ/Lpxz)esat xXw}@+,,ws7y D d=AQhp͢o?un /6#W2Qi')̽Nk9>Pd]^Bf>qK*,UL܎XlSM@]ZRZc)%8Sfl4BD[S^dM:]0m#g.9|A_/= t./1MqzKQ'6;QhiNe[&`icTή\` Ru0BnήZ'IyE1;C|9<7B8^klҍnn&Kͱ ^͹ =vonyok'77AD%aMaQ`R%pt*g qp@T1+`kZ`Oi>&DYA.@&/h,05}.8 }Ȇ4B<`A:u` l27hvp(#9ϫQ3C՗]4 qKcK \;n \ Ubu)$DQ a& C("b͂?W&9 ()(+Qo f$~`Ic1VuzQ`drs|19&YkJ۹ )@Jž.]/|L@A^8dKuJP sshaQ:җVt-UH)4 cFc) UO-a'C^$«|""*0qpilr5 5fQ832}&TًϼfDT\T*A90h1*$(^d~GEnOʒ8!'h8,9![:vۂTO@nڶlO"R;kώTO@B_scS1 *o@PƒٹY]Bce0I+$`aq ӴM<"8gM9+S_[U(< [7([4K<ZuULqRUrfv%'YT<@G~XǤfr!O~Nfo,Rr2D+J::#ԉX0\ærWNJKY!*aN hVu6Xv5&ͧwQ(b8-ӷXٴ=]'iC=\sG)ЕMr( {xݷ*0ޥ>]Z%A]]\u[ OnԹ߷\>\&mY:Ksr*7Ӊsk=q`)K[MV\ߵ$-o0-K%g"+ m r-Q*6}e2Q~Z.sBNdCT0Ҳ~C'~%Bv ERR=':9e 02z;6pKo[v-(6:IJoA:63~1M"|[yHUKCy@JXNɆY_ d^Y('/9bRkC }4l_gz VHftr`|#ѕ|߉&g\c] Q'# G|Y̬f[Z9/6ڗ{˙/ gs?Zܡ򞾄dE,۶XKBXm!(ni/%qso+OL>#Q,SĘq͏w-Z9>l֘$ZMI7>z"d5I6& (]}g#9rDjM#%(d#LYӒ(re@uJtIJHG\ȕ3o@*( y'P$u.Wr KrC=OC:!ZOAˡe*5~in+4YJ0D>lX]V<\D,iy#2ȇYLtg<=RӿD~g1.C#' 'a sh2 հ9>soW,M~ Fo\ȷj;1~ <66TdyUx9ڄpI&!qYant Yw֓7wHV$*4H+˟wB=$7QHR<u7cH0wT%^Re ljoeGv:*:(wsv ]$GRԋAKuQ rDz*R͸uuN>J ]`?3]azm&\rF+(䀽oZSBh4|[=kNIQy 4dt@bՒnK`@$`W^EO(xI҈DK s aߑGh#v7#EXz'dobMt&í|lZ9Q{͓>$ ıdȊ \^\e?PK+_ GK銊Vz_wkDB68BYy؂Agp/[ѕ[Hw:k|iXy@X%L9L53w9{dld ˟ w@=9uJR+XcB\r4u&aFG3|pj! +)KHI.Br⺧/>N0rEVǯG.hJHS$EcM:f9_.%t^@4saeo]$q!k\4CFi7ŮSXSLN<<>MX/t$VӉ!˝ \xP9. .F"Ƚ:!׸_$kg%fqV+s9^ |^ 3q|̄wO_YYK*rZ a 4cA< loG'ceF0\-PCFٗ@:0Rܔי'BGD ]@FtfSđ`& ~ ?2XV A#kM5󊠪!%?AU_W2#l) vJ#2)뙞KŔ(B뿀'bMjht |SW*KlW\FU o=ȿMQY "+ !PAnܗ{߰7~k98C^H{5vڣº2Ѭ29*7tT4wsSԽ@q~'Є?/ݛD[We")۶[GDbw6Zz) s{ p'oe;?wj$(}Ѡ;_Ԙ9r1IF % @3AC‚Y.A)Cte6Rw%Ț31KFvA=) u\̌j{S~@6tuݽNМ1P&=Sn U1f0Uu l)մrs]8ޕ any:mvX~"6;$զeD.j"fzcOI[ӂc]8ΰԯx/ϣWc:3D",1B23lWj)vkcHUrY,dYAU` 9 ZleA~Ջ.hYd2q{dȏœL _>a55y都]i$8ضXډ4(`agzkJ#8x'QK:͙F}V쑈KDeEdBXl9UbÜ ZiӉlvΖgg ) c+fA,͹>wsRsNFjsiZ%F\i٦UmjSl6jcgW)0??|Rs^羅Y?_ ERs,?zW<s?8iV3Ʋ' -dki.a>$ !3 /ts×o^7VoGorcN61<ō1Q53qws OqcLvDkLS5gLԜ3qs OqcxkMۼ&n)D/M!$R)S &8@urpț{3T޲q7دsډ.u~mxmUbֶy]iov&}ooۆWkټ[ܺWoY-NWl Ǥ)xklcDpa77pR膁_*b=)R"@Ѥ  ffs8Ll[.f %ĩ㟳@9KABU%巍/(Ra.)$BU]"ueK"%LHNL&B@(ɕ2hƍe.2toɊ2Y&4L.;|eBp /ShUuѼ݁h:aNzWcf*λф[ѕD;єIe'T:ܽHjv6{$,(ͮq]QLW@R'(SXa=1[Bc!#rJ?У劤ͿX,$.Y5HA)Lܡ+%vz~;W-])їazvN݇q+`,H|)61hIf.rao۽:fobD܅ٱ7RyB(~'h"5U .=L- J)t/S~Vԉ\Lc创T qKy}¬Tۗj8OreXx(A"rkI@W83l!oӕnu}Wv %L\vyaWGD_BD*\nDu~Yϯ ߅ O;**§iY?޵VqfP< ҩ NBJ ܔpBUǖ9v$-zS7qXQ\(&ڶYHL#K깇:bndHɮN,(#+[6i&/A){Ls9Z~GK <̚%VhP#qds@H}ПWF7׽ [qNERŷ:KӔ]Ho<o::85= H[?oi SC|b'EPHKv҅ 'zJOt,_5`I"`TUiR%--~d*S/3TO&J 5U'PsytzED. dD -ǭs+y%9t*T蔻b ۗ\˦ he+E u%:6ȗah3:︬  v ۃ%ϓs ㈮aA+x5` @)AejgQSqTn\tY#1%`A 0}B"}Axi}Y #+є י]TʣjJ3U _T\qt-nugO8_ =r|d*GU<x%+Wє S뭪x6: <!Q!k;U+H+Xe{%(N}tVj7Tm=efU[{*O+sJ{-rZ)_DD ZɨVoze'L0O[y]U|Ӭ= x=<;r)`mՊq]x"긿6aVTED"tp}iSЕGR(D$$q^mK"%+%ODPҦVIYݦ9)v!uHҴ*)}%Ed|HI*)([ [or[=yTGbm̮* MVS1ѕKR*MfNT1Ѷ/8N,>Y8;2=;H,9YS쎽3dʲUUlH|N~ +P扁l:x T$dEP! -"BzAvUlTKGWQgoSeAR#7 ?" * b!? vd}oS":"KL`ybxx ՠ5-BߐO&yjtHz3TT|[xXg Md DԢX|_zU.Ӏ(<8 ]#<nRXɃ+_%_?.KK枂9SÝ}w &- JDc5+fC^`6xY+2x"WgMuq(V2AAs4(t!oС {Ī6W vc`%D_%n!MMAhU 0;v_OVU4i5JտxS*" Rup@  ^ 5#_@m-ŝɖM `d, +`)[xZ2&:w$vh-ey);a`WQ}_+2y:ʑk^Q[],Ws9u3] 7c 0Bg ^w,$rjP6~3۪Ziʽ97{/Kej2U⯹H;Pd!4҈f&duY%k*KǪ.q4o' aQ1~JbҢL KhT 4t@Ugx_(pnd~5#R,7kKwܝ;q{Ft~ 17f'{t*q ֮xUENNů*oIZ$.EjGN )! *DR$m+yY- 3~& u]T[IoyL,#M92§"w*hr].|r=vx\l_Ε^[uI7+#RFIdT D 4 š>BQ-ll=($ؙ||U]l,fB0']*hMv-IV-c7o5'qJ7mRv^/CVNtfB7BY#ۋ{_u˓_Ay-BAxOj )(`4pXy7'Ut.@ =x,aZcYFr$Uȓ ^3&Z8 c%P8y@ğb' A.y^<.a2^ CxFXz{{yo3<Ç<%ޏA9: H9Nﷇdp?p`:y }6B{|v=~m܃$Ls{pi@Qu:׌&26/`O>:eF?@?NI` 98 :r>o}rCKzt F9b]GE$@wL* HG%.1:j?:g][_ L5h } Ŝ`9ty=S\#Yc Rl`{ScjhP0 >&{/®"f9\r `!ߡaԒ{5b!<&ƚ4 `o ft}{2ObÖ{uG7<4s1rwe0C|fXJ@ Ȇ12S4VY=PNE" L-#Ya D d=AQ42;O~t^uOjj0Kh9Ml r׽Fg*̖Ƽ#x wxA.Rj}CLM{tsmG78yv}~ P})K&bc &j14 zjam[dCu]H/RòF zcoZI)RR-&.fiDH',5Y~\*d:K?+A2(X'z WhF wS*~|1M)86mڞ4KHu'mHH!X2g/M ϰ,X'yoXQҪ$V09 g> G!#SB{/j6Lkɲ.1xoxxp(,p(OCx%'HeMeěCQjCؿ9PjH{ 㞲nh ybd,90\VY8::ٲy6}zRj=& 1_Cq 1̯arGIU+hREzIV8SЬ2aX@N(To)d5͸giH=+-Rc`]HKhMztys=7W<@]Z?~+} [~' G~@ YUV>MaaV~Lc G] "4kig-4)m;_oP.W;&m邧ɱ Yq=O08mɜn$ѵ<{i|VBCJ!j6$R]jTE:by)70[Ma?ӏqFW>H&e9 ^4tDS|FK~⹨j*&Ɣ?e9N#xC8x\뜡u$Z)qH:U0A`Dp CECS&2yӆ,e>퉪 \'&q4e䘯?OhM>!buiʷ =U[}Y:<.0^!9(իP I\ @DL4?NjntILU)EtA9l E(CE'-i6=jrh->U-G;~#I$3pKTX7[`*&`T) (k" rP#?`70f= i;>55Vis`n6~@ Wv~H {C ; 밡" J'Gp0H6p XwbBIX_єk)әf$ =S^IHmf5Sd94>x{M[Go`qTjiJ|JK+/ca徇}X]c h1Vo+6c\ws&%s {̤YF|WA K`*3Lqi<-;!ĕP/niF1)]$qw B#hSC2"%#\LeHMJLuӒ@wLxTz5 \M+D1AMR=&u&sy]GI^r66g$?} WHf0'N)a&+S9'Nޭ7Z/&=Dx8M[oLȞ\V5Ia'~iu.hi҂a6@f2Dyxd |x{vvv]#4?$%yā5>MR( JPz1ђlY>w易9کq-TjqyGcJ,6Dz_pT4gaN+dx-/y-(:,@ra :\mÕ%ٺ|Ũ׸k{lk ]:O+&y]Q)ۼ֜$JY4f ,6|ka5l-#?}`>$@}f=gQч_b^!Ja"%QE UkyȩI7tpޏ6k WM?Zs/:T~C@2GRx[{/>@VYiFBe:=1ɌsO |/Zhx:qe݅Gl+Gn 2W}=1٢kM悠^LO'xawz[ޣ[L[[JZP[h>g)TZg-eɋ/Ƹp Cx0γcV:dZA+ T$K#tKIc"7f!W\R|Cs 0skg]VyunB뎤p';C)+%aF*Tې|Yx^0V I7 +ߤ(HV8c3̻|Yd0Wu1jNUxyCJop9kkRVT*V*^J$*%H9j QCTm$A I[.^Iqt}*.|X-kMLWF`Jc}Xjc}\j[i0-e';C-wV|4pBB{z E1c?"^HZ'5]|'oB_~g?!f؞+ccus$A uOr@7>Gq]d$#k><<~v`;[bT`M1N!idΟ1%~Hm>0KL+st]=B9@Z.FbD0!Ʃ%z_Ng JG[sufS~Uɡ?@`۪eH' .ko!4O$D"TK ZǛq37I 41pb}<`0jrSP{(|J:ޫ.i[&+O7~pn:~ژև?3ri(5vzky_ʎ(Z-j+'.̎ݡ5s&;<#s'#E#+|$u*m%^zX-Dz -CZN46\ }x 䎞A!\>hhkjcfx6N$քMC\h8-?OǧқZ=S@nO -g[r>n *>}ѧ#G>ŚN%s%tj# qt5E#ϔ@<\}r ~#;FB^mCy1KY"8p;tlvK:3>+9^>S+aP>|+Ѭ6/~AxkVx1=0DY`@LzB,/ 2|Y$]2/=U`(<04qrnRP g|`WE<@]q`'< z8<3SesQ{X|ğc،i?#4o/c KEߣb0xɣ=wC 2 AyHK*#? ~ yTB5Iv DT)#eQGR,jƳhvqPőU`c6b4c/x`ͅE?~nZUV ^#gwp??zfWe_ {7Bi^|-ĎS$tx[ \v-"a[B2|Tc S%E͸lcЂr3ja5Ɯ`>˓%Qݣuϸ9VmKqQZӭwxZ@q|R?HH sдNi+w/[V͔ l_8B<^GVƩR4XӔi̅Zp Z| "w BrȎgV=LL{F=)gT__kˤ3)8+4&$~΃_9. 'nLmNc#jXS8vP r'`L s8b"-Se)0KZAN^e*K2`>Iv9eXfY_ut+Rs#-Hp1#]+$y#vI*.Se)0L^MIՔ \i$qIF5I0efC'[:1Z+Ey"ӕP\lEg%j}woe w=ZEf"♖>=v?=.L/ExtP숢|d F(>^vQ!󺨦*{ m}m*ELU2F6Nϴ/>nSN]^Rg\*uo]x|L> EAfkYuE\cޢ Rp!.Od0&9l_uT<@/,e{ǬJF( Wpa謆 SPۦO یqVede&f-18(Vq3̂H. RWG}#8&#)J)= }\I'$tS;r'mķŨ'&gL}LeNj.5㊾er.rs$3I[&=,&>8MDd'"Iq*B{|PfTFac'\[=BbDk1| -LG`^7Y&+teWnr55F R#?b=ϴGb=k62l`z[ohWυ{@5дFaM#BҢ6}6969{+ZrP+i*e[Y,[nQ׋r`#> %Á]k5x =[DkCŒU2ElCej3PV,x1( ([sBR&{ó>9|T FhfwaTRmz[N?2NJ@9Md9]R/h] ;7?v^FϯN95%7WPd_ 4·/ *kX{ޣ8rM1F=^ŝ Cݲ]ǔ/}1."5}NlȜ` g_< e=lW,BCYkmZ[&eQ^[.*৞%&BmySjzjM\^\e?3uC~Sm); dЃno(((7V2ml3YZ"A'R[\WOWJO1m_g_O)S@<Z,8g2G5G9yX户lDϿ'xO뻞ahWO:~6Q<8xئp $h& Uh#5P>Gi ~ Muސ`!7d1cDG Y 2,2=,{DBV-&Ӏ̖=h_ Hmك&ƀܖ=hw Hn3Mt-}e7LFEa;bi.p>!e#G@<XqϜҖޭЦY~MJB- ûk?iPW~}LK"2}?HWJ$ӏߖ0Hf8oK$;+-Cl782,ka}md{YpeYl&;܅„j!O$`9G #-mHHHK'KYʈ(߈fՈj9iZxHB>]6IhɜUmv)q_ïtfmr7wsr5C ]"=m)m~>MCxV6fA<7, 8bڼ 2m:N\2FZ%Cm. *[n%c$C%:QG&p؍݅Y=b'}]04? ըyYZP__ +]GM,'4R]%5)mdXUVhd~ `45 cСq$}:10NmI۾o,+?7qox:=+7E%MZGӑC}>U J埂lyLO@^1mPn371chc. e-RHCb,RHC-q&r"݂7ɼd༷ eݘkX9$.Ԁ540k]<VLDl,cbc63QߜllR BԀeLê,!A&:=M.k7ޘԡE_.>#OMY'4. @h6NNNZ߾%y'oI8կsHz=Z!N[7ooߟHoZ߶W8-m9~֛w'7OC,}^Xd"PDy-'.>|H~$q/)W+WWn{u]sTׯS~q||tz8|sWYz1eݻG#(7Z'sr(L4G9lBx ,AvU=;$;`M{8;y׀u|V;EODCܛ2>|\d?u]&"}3w8Vn(%˱"1 ܯdX?W/ДtZF.j[c2x7k>^ƧK*˄X2PY x5N:u0hUu3i ?y8M\.3p?јfq \ѭ=fYSO QXo*ƛ9xZgo߳l82ඕt>,O.۔p/4 R9yjU eYn t>3M8 i瑔?KUb5OC:i.h.Tp9yܜd9i4%$!Ft$)d?B6$O'4$!clPE Y)ӹEL u+ t{"\5OY6O^66IK0Oj"wukxϪzuGlffmIOM@?͝JncV=n6[f`J#QV@3+o߷߾Feei ɫnoOND¶J¿mM8oOg6m# mށD9);ٜ>'4 ,P3ɶF I6:R,OEB'dtB;E Yfܮmr0.Ųrvj#ukKr^'4'"_WLh/;ΩJe?B)K6OΠe>$ɲ/? J BlrTe8CŔ-Ո gz&^_>jZ;/AVŗ)N"ѧ.VfNSw۞4ߴXTѩKTKq]-7ׯ9D# A,w5Lj D?(څ@i]Z.Ŧo.U!lG! d",JȪyӠi McےG]X,IuJFĊ}ߖ? Je£wgytGGg ߼ ߶ zESq>T_5E]}j$dDTВIB YSrD/ 6f'>;}G\, U|$tO+͌㕈6.0Lp/?z.0RƉez/)Პ|'"yO@CxT/y܃>锢0kR#ɱ_|x楌s]c8|ZIc`G5э}bT{UaTu?U3:YDϾ+t,d&Ë;ŴTC';)^S0@եx(O&!ۊ@HN䆺`L?_ s=<$?!~5rH5lTB QnGɍ IjLXs'fanbt>i6KK=MŲwF+@&w84USo 'q-RQG*3i?[5x*G-ZM 5tu(#"ڮ’,q$!q~`G^fB-awDn9o9so ܀!?F\nibwCc gkOzFr8:tóLsY'k!bкTӲ'lY}}<0*u@rcuDҰyZ SeZ^:%ruDu& d.):CO6&gxY+NVΫW" Iu N=L?"%T)>mղ}HU{1>uHC 1k)Ɣ!jp*k"CI\kPѫ+te=9ﶇVv- )Ī_0SLr}h7T\D2X4+84tcX>&"{62) BښFhC ,1(2m!l ]s?vGs"DPezm`I0xsuh੢~P,g&ᢅ߰kt*4=l4^t`8v>?w`t rZAT@5'`.h'~2럡}ި'WX#Ćw24lj,A>^u;`ioj)bkn0NH)B~ /a{x}> ./zحCQ;@CO_0"ކuA{6[D|冮zyrĺ!"/)H2T š;J\.@IcuV6@ujϺ`X i 'b;G0s< w8k Dj-rp p}oju7B"+\C̃T FaWG5MYKjH- W#I<\th5uIy2@ЎJ,e$@%m--4۹uG7樦b#w`́ܩ[e^ N<꩞]68' F H.m3IMEEz \+_""=\@p' J4X- 0XܿT}Zg Y]7k$$juE|:cE7"C| mrVbR\Vt:T?@h@U"Š,$eC.S '6;7!aB(4=*VmBIHPd'p̱p)|OL[V5'CTxD2e&? /;1 yCF) H2ZD[ACU묖6lYÆuGy5ic_|ՙ: p [ MA;4$pHy}o KNΤN]۸ ;=<SÁ}RL>=C] CNalBB/6 dQXb!$@"/0v,3I4%.Ѝ"FI(XU-q9=Q>(sN2+7 !ZJ,R$w JD9&1 3 Al刺20+3f=Pe}ځp"Zo`Ԁ8K, $ !DkA$l%"`zC aD75mwACaF 䲣r|dRVTIE=i0 (5Й T|݂( ""{ゃ:>JCm-Zu>\b5.,O{;/7| "izbcAc(1&C(#g%HZjn"D+PldeiY h *bVՐ f) )^VxhYj#܇B#l`9G+fBHY̌S"s.YJP_5dYY)8J|yRT Ti)~*4JhIe֍"iJ*2>_G&JSH c㞵hx+b {e)|- SQO[$2DJϼYQN*u 'VzHJ2SHK=\x-T%֖z1bRJ*sv8n 4wf֪"߬([*B zj@R@ U2ŕO\S;7xGKAniMV0$'ƺ m4a{`Mfjz~JIUhb Ê)zL\df!n Ƚ0-.iOAM{[VZIxS%iO%4uf,P/HБf@51faM74>??CvJuB hX݄>;ϣ>bw6]n m ^A/^NU<_$S7v }⊣ X :@`@K >Zڸ% Z~Dh `P}q&1V*: LrV>@T‹@X.w"i4ba$W* %_) 9CR@pk׭dqLk[+@C`&!HAD\Cf]NxBů¸w/Yu$4Վ]ήw` r Lʜ> 4!`W wwɁkw@B92Lޝ-VK4 cQߜ L_KI@=d;BCFOf#sHz&F17ֹ:xߩpPJ,>y! p\ Y"24 N,'rZ K(4UK3M20SpCpYrP֢Je)Q4hyI횢L t׿NSMx,oyD)pH# .UZ**0EI%s$$J+U[=/C"[ S>I.2'aR- _JvE 8)GzpVY\Dڐ輕 35ONxP]* sk+gy+*C$s>Fm\7P!`5v9N.߱/=ȸ$pO5%\*f֌̣ j <h' $J#g!鵢0^O<_U|a_BvQt@aAvHfhL|w;K={=(v[ַMT~[tyhPs?pu;޷1wbrIDG|6ԎMx0}=+C7cjNgИ66,Lzv {ay43C/)U$`$2F!)u Dg a@=xYЍ9r|M0|ؾC7!k޿I)8E;c3{ eT4=-uf6iTC|>1~כhbcumfdNOo-;&'unWkn2BE7 ))'ENtիj(HT;f`vp"72c:0.ub/D[ X,EYEg;r814Mp pLwS“醸=w,W1\=a0,A߃7 FoBϗD(^B^ݒElM3ǁl_| ($#>EwL_e9)9ϤUxX35ȹcsCSz}t=C y|9Ο|/_/g ͑Uf,ױacF%\#s 6I86BFԻcMILXc^8d܉;; SR+"cVHߥg(9D7a>]կu'7= @=! y^0e0!'I0uN(TAq\ TCJ2>~1r$Q$hX~Rnhu,@-瑪$C`yHaX9bKEsUuOyM?9''>Ox3O9qrO>Η D~W/?䃟|\yd2֒[ߒbX!0_kؼn5@pFfծPKlIyh7cb;exG-N17Lwc 6UNncJ^; E2SRENBTku+P寻TіJEN¢oefѷ+: E/gȲ>Cّthg.}~kkRK@# +ȓCb8ub0ux Vbp׏J bx ;ox tӆHs4ڡgBUcT$JJX_vS& ʱsl ;Ca;& k{] Z3ȶ]`[.9^ Ud&9X@9es, bZ& ԨqX"Q (#tK!ocuQ<ΒJ&Yy'H6z%Q.I<ɚ`7>RMgT68LJ5U$Uw0EٖjNTy~sWM/&RU77+McӻQ:7>~6JO?$@;E;qj@~T=UâF6Ĥs67wO \}عL5nHh 1yɇ,9x{xxN'NIpPjlH<͙ל TEҜUk).H]>XcbߣeP.1#r.T .NJ-qӓ֌]H- Ɵ*F~gDjϦFĚ1Raq(P 5_߈M%H\5m5vM% E|(/0dʛ cw0]XζŸ^)E&@rP̈́iIV.,iW^ MKXYs&fc6adqeQ x>R p3&n ޭ|⁩dRV+wQǠw/c[:ֺd7l,n7y[4~YmUlE!?VtTc*ioeM2!7U*h 3C[F\ZxBv:1dapbN}0ej,es!E۶eSr"P5GsńyGEj *ҫ0ml80fp=@В  DΔC(}- $mN#HWIa\@uZ:9mNht"9X)6uG@UV*\Eiy¶F BiīmĕU2ye}FTT8|cwV?c0h{"9@1cHLeY72ѬnΧXq"T_je@,oFX1M`lAY SxR,`p'Tt踁>iW$rAv@,ŪAXx kNOh˸4 HfA{7{dD?rn'Z263eYCkUfU=<۰*@^L [{zk8}39Y`rTO*ZƇ'#+;X_MF9c8gmI# Fh9xg~ʪH,%09S V]VɦZ,Z2 D]sN=ꞝ^,8GSb-=].GN0lTujcOGI!mߙ96*g%sQș uTQ׃4=%Y@<9)Iijz_ oNutV@"}a})3,t+!SDʇ~fO&{O4 N+V e#|^UcYȤ_xdWU|pp.~UNP}QAs+nf+WWeHņkg[`2Pb"co3V)ށ^߂;AIGdD gÓ=ſ]1H =F`̪A;!#): ?= `p鈍[;}yO{b= 9aM|X :=v跊L'Df6߭9_ N}Byjm4ցО7T Eh%IQP0I|B!KLk^9ƨwCG5fsl{8%^2׈CM=ڧԮ:/ qrW:A=߁ÿ~|<4>޹E^վ^tÇ@<֎;'_;_N;`;8?~WZ_Nho/ɶ=6:IWOPE==Fx>^IP #I1(YmtN8]]_vPA Ko:Й d 9EN;O;๡)}u=F* %g$P9P (GйI|l] cjuWğuo]!ckFowlÈ81'8ĢiESk5vЀ:2LC';'tĿrE Ň:˜ü9~(@Vy ^ki,I1E ѡL-9  `vi>pl;6[ )8hn nu1[L%0SO ]@qQ c&,<5&}c̆Yv;` Fv@Vo>(jC\=[{FZGhrᯛ0@,k@G@ZŴ1]vjOwA ƈhLun`=iy Yo[_ n;<}H5bAc'T*]xH9ah'+*#|p}rBw 8Ln5aׁfF!v1`LM(&w8aio\A_ko2!>vO! " 8Bf~3ff;0x8^P/^lsx>eΜ P)0uݿissz'Dd5Z#UG+8[+G8u9gb ˟alV~!3wwCi2j5~>4]O^|ji|X`b\50y](.Bbju A؇,0Dwg|Vz3S_rUXXb !l kXm4)J$gdSAHɬ=Gw֭2l4Jc#h.ME9,hȓ6"C yPsmWh;=/-;eqGd1+ -> "PzQ+,77 f3vb3!|J${QAK ճau$Q7&lc vؙdfPq;Ťo6N$vHeUuQDԊFA63l{ z5ҝD\[)ɌB={B& #hc͔m I48q+,/FmPI p|\/PA::NIa+#(h ф_J8 LGq. @߲!#$[ViKD#sUp⽡AaDV-3jd h#Ӓ="ζ06#q#_F0S_;{_+s: -?G`;'N->e/mO`envIog.3"#*B!ϴ߽{W׾yf 1#o{Ov3}`pvɶ/ci ,w^tv޹h_]Y_arM=.# O[yy!<5o0~뼽:, Y}/۟B\y˷@^kW=BμL e"x9/1$ĘwՏH5`i}+FYMEw wv5O_'[7_N 'h9"^)勤dZ&qPk/7LBsVvaEːJ jG}._|f3s2=d$>9<}Mp,}CtI'` W%]HJZokc4t>+y-yj$@OB" $A66h`Ubp,)'HSƆxP"f.zGAhwahѾfjtwGS1(5͢N vj {ϋ6kE|cEbͪMM|zWp *Źh &;,[A?}g1$a pH9g/K-]Bv+h%?~u4CܕE!D˻&oճ%->]$VKE[Z&AYk:~|AI "v>΄,MUhgXtl@ъJ_ɼ,WY5{MJ rMOjvGV<ɶct\o SxyrXp_a"Za2yyg,k-I& 0â${bQFɽ2{H&ZҴVKbyE)ϗjoe2JP \$ZV~(!}NJCe]K{҃bⒹwF:}ת BCxS5PȾkzjsvoZyZ vژ%4mś^Aj ߘjbG* ~tbߔdI2|}E|3{Kɞ#YlcXsk+]d;MpGryly#u3wcLt k'=`yn;{Owַڨ~NcuzB}C{ܺ'A:- )O#R#s]%`s|^H/MBㆸjhl½w Q?k{?\džV)P < fz~ls=@r񦲟vwpܿ@;gn3mZF?h6>^ko5Vs}=(Rc{dGXXw[5` ~Ak'րȠw3zSXp{d} 7܃wv@y;jR  gK|Vg UYU:QBS/zAMQʚVY$?Oeq,!2='.ۖ)b>`]RNppw"_4aVoht0EsC1o_k4\hxo/x4g{qKbZ?=V/[ô2MT8ThbL3G"WO%L dQD+F YxbDRh-etX!(;vz4"bge/r9TROEF\pyP@N/VdC+ʶA,~sLEg 6eiü9x3I2IoD p8H6K/"G$˷@&þ&;MwJmF XB >j.Iċ-5ļP7 ` ܙVl|)2YtC~ l䒽Ql7X Or)5):4@vblBlA{59 f.HXs'ܑ{4`O?+Z++Qo`t/ksHcؤr, fP_gVDf" Ab\#lwOp`H Esرtec%#|:Υ2/sHޥ1|J$O+ا% , HPa~ID$ }-BSE{|&}<έ&Kx0)ƗLD{}se[$`$D ^\Fޟ>[-q ['-'S4E|Hn,R1[ ՜uVG&Mj @<\lBё Wj;#˓R)V,%1w̨%6)w sHIf+#CqBR kKG/(T3"/;LʲR>Jo=?&EEtS]+r N'J+0Log6>6}ffoU!d|RxXHVjbY k) eU\X 5[Zu ϗ19.av1rK?\*+c %FeLؓOsYQ|cie$K(/e2Jg).c }ZⲃRii -<Ťs<~ "q!L^KjDIƫG2]N)˘QRKSFdJaZP-d&ʘ.CYj+ke)ΔӇ '=bfnL*/'L_'4?Z#M`*l֋BZ 15Q\U qb!&yBI1#u2Vܒ'b~.2ViIB,6Y1*Yo)>#ͰvG5xpv(fS&בǽ>W].cNx',eKnw Zr%/.8e /+(Xz=V|S'[ʛgKެ,߭{.O@֧2[K1 !Ɋ6-k1lbkiϥ<}= g{42{oyUfoI*.a/ @ɉjNU]JW\E\Ť^_\˂߬UjNBVR?”\SU-PyWJ)W&U<>>xg?!xCX-#Fͽ Ό[CfP efC(yQro*=s ]]RJ#[*gBMV(a-5,$TJbrPn~-5M-+Ӑ`pꕐ_[NVaIɄVB`,YPNd){S S@!Ӟ: Γ0Ȕ2فȪ07bF 7!dsO\{F]#47E~ίd=M˛ gؗT& W"a-zaV(, $:XB夬ϤBRNnS($Hx`%8[ea;dH%8]! 0W-mܒVزhYb[ eތhq7ܹDFJ2_6""RK)Gkn( AM8DW֭]Pv7xL6 aBoJ|ەB]jtd>Gds9"Za"7bk/y~W8)\=h ˾$1X(CEB&Xd7}Ɉ /G\2/99eeoddw^ŗThUp;{ 9dTs=r(`<S5^Wwd4G~8%DW8QN0/AQ%7n*_w%oᒗ7nfO`Oquvywlq,{?dbD?oY_AB2}t!k{?}pcٺ6ү6A @!4T]Oe225ʈR) o%TFn1k6~Y*+@,+7e妈TJ+ rCY [ Gm ٸ`5?c_/{Ͼ` x O`T/R]TfQ0e-}, yxYِ, yXY ! i9;Y4l~uU^ΊWm逝3} ^xfxJhDh8GHf}tQ6Bs}[0RI[/td|ȪO5vHi(whvJ]IЙ᲌?9ɜȴ4`'v“XSV8>3@F=wc͑wՊT]r~씬>mo#6* )YmxUի`ɳ6F n5ɴ8\UVKy-KWuRҕݦKG{"Ɏ=5'ñeB&2\Pi@l-P HQpR~LBdMe5I|J5,C ;GhzGyW%rz^H"(:]<? wI^ 9e8-(GMa|T<Y [_ӴrE^6) =ˇjǘ[4:R?JgLw:(ܑpVfǮ'ډn%kH~-閞z=)\P^s DT$O=%N`?u^uyv6g0RsW܈% E0fdO +N^ TEMAJ,5o2CQLJ ^" 9ʨ <$w.]_ťȟVHY\J ݠ$P:&,^7˗ ?z,8?WgNK9Twi 4[ V!~Fj}/rC9|Ǧr}!uYi$wґ7VTݺv b *1LdKs@\_ulu?x&t"]r9?zڗW5A!fqiPMb?_iDZ(?N^R8OʯspkD"M}6s{Fj Jɜ1a8B{`NVlU39dh僣%F׵~lzz) {B 1cKASڰVH0JCʅ+_ f-+oi㖤VԄ}K,*>X /&;eM){`*lX_ԕ-i"ʎu);)_&~sԃӪ ACY . 4Yf92|-s\ғ"\jу_4WE^݄ʤ?<YUY95 4S,% (4˒lSϘ wEaz4x* /( m|pˡj#2~˫v{0]$h`{(oq biddO' p%AXK )@ a` 1h=:0;*>e'{ZY<=*^(o^q(-BzYv&y崓rtⳇdOWRڋM.In+x--VKXZLJ𽷻 {&@搕rEMp8?|bH0$.0 u~{]e`9B|#V+~@i)<'1MOb~,e(\2"uwsS'1.23(8qʙ7HjHuck]btDI01I`UJ 8%j'"*PJJrSUpj?T DUrL*qSP%gtSQQNJ2\LUYM^U#t!OO,>)0ـ\Oc<Q`At|| &{d ?=@ 鉄tVHpNu9J4(μ:YH(ߊԾ7ݩ>~>LÏ9*=XNvjS@cɁM?d X/V>/%r>Ϗ/4@r%-jjȳIMbbdřÒlAm0#nH0:Ai뻋hWG# :T|(}sߗA}|2O 4g}mq">UR# s4I6HqcXnX2[y_jV_'OCJd(]1s%@;Y,bgm,2Z692|,S&ܐ12!vF%ۙ}< x Km[qM{#reec3gÎ>AhhzӜԵZO~__hu5<ЗP) GP-qOkkdÇuO8kYL"zWGӴmk;u){i//ۜB/S; t ו: msh6[Ljx 0ģئ}ܨt {2ID5EtVňkSy؎MYy ͞|Lق Ytv׶Py$'ƐlZP0|ԸAŒෆ\mrz& ic vwqlF uzڄ`f.OO9e+YEXD>]^w~u}Fz; @a3m31|bwf ̑ lol8wkhm;i,6?tj{6o @mER 414:4]a:-xZ䲾lPMj/2-Lp+l`=?ǐ{vk_N:˫pzF11R8Q0ڍ;1}j="!7½i@P`Ӭa(/nE ؂iˑ={p̛v[-q OxQSږ2.n8ư uvuߧkjlk1䆉1qŃ1udže!}0:ɸ~yv~oẎx(AGn^6=$ ֠|]Ks!hvBNpͩ:8;v7wNY4P5@r Ʈo7M MzhWǙh0ߡy[QMq e}û3)> [k5AРSs[1U$ޝ]bPl$D9z 8"f㲐t^B9 ht`#?H%~7sL` fb{}z O]^jgX%C\] ;R`_t:w.s~ѹWm$9 _^wڿtOWShkǝ.XtXBί/.;ֽD*Th*l/ѶV:IoOPE6==nYPG'.}rBH}qxn k*ThA;SL ;tL]Ad]/Ba,MT~.?`W~c_uw3`E8"R>.;s%^ GH`{`O&30uO 1= ҎMjgGWHd履zw1Wc6)p,fP( k?C]25Ck5[{-v9L8WDqS5 'P: #I6H&U6pj"=hұq@i' -J1Ot w<7`kx8\t ԆQu@xR4 56]/F&(Ot/@35ȿ>HB;O7IRU ""9"%? G2;Y=I%ʟS X'*AELqx14n1^1N3MӐ%zA:VScc#oDsTwߟ^:Áyj5F[RQG(+27Akf'|y„޻,G&?Z{N0`A$6} NN&lR͕&EIVp oBH (%pk;ЗWOIӤi4iz4=M&MOO `}gw.qw$ι;:x=\އNZBWNb(.'瓑?AܟawvzO:]8~|q<8fO3ӌi4xqlԌ_R[fk4=pd!uc> {1C䝈~ҁg=-CwcmO=tO@#)65(vZV`9.|41K@!Y'hMо9L0XOum?\,P V蝿@9>/l1*cbK`snַUvn7sctS62V> vgu3?VQXR 's w 27Fq_Y7 Єt0!!9tL P6e`Q˙kSN)X%MFlM6D:8ܚudžc:0t4RC&npi\KB1{ %Qzlhz]ƞop ;ZC؅80L֝"BZeހԦuyoH.X_q+e /a|4g ;y=CM(ē[_\ϻ'#\rbk違8W}{Ns%<ފv$$TD؛S) uy|suʔ˽eypCcX p).?,Z. -PWqԙV[~$ zCL+K-%%)|*]Ý58MqmggGoӿN*f4c pҡAF2$ො Pʼ|NڡdWH]W jtDž޼'dy{zvA>X# Q@ ]d_!-GuQ$~vUEf"G[|bIWȧ\oxVay@lJғأp]KdΔS7\dE' x/׷95ME@ 㜻p.J<(%ʞp>֛i7-Ϝ#jrP <ؓ ù&lB醷ġp~6"uWz9cUL +V5xfUC|]%ɂcESJ@ Khh/m]Bԙ*97 9'N"9f)D 9g*'JSrk@!F$Ɏ5Rr?ń @bUM42)%Sa6)?RKCɧ^Fa`cG>r Z V/ Z'T>}TDW-޼H d& pEq= 1n48ૅ-nlClUceP5Coq^pb:Bgܸ5?Ы VJņˀl_ zeUzE|_YܖT$|o/զ#įGq'9 %oyꖏ@:S2 ~9=&neC-?r4Jt #8 ޜ$@8Oi#fP>x^޼d鯽ӳUC,Qs:=U;a1>qzv1]4;'l7^Ձo1iA=^u[_hY3uM?vd" -_12r=7M '|o~.AwIfL^?T)|?iE9$RΝ w !:ڡϻnA^F@8xvyжࡍpޙ: ccXՋhA pD0ă$#d$Ċ'7#rJ*hs1ވ{DoӭG 4͹$b|V)&ܳsO@Ȝ| C6` &‚Y)yms$ MKF@6:y_r[L1 %43"Գf)JrWO&UI*[ [ D\f&vGҭ;馤?W ɚb("vf6F{Ӹy| 2??`dp/{.%S?%WxK2Bcw` vIcp3&R!;*@6KfryDMo޲; ͋%>I &tg|B"zMpL6Hu؂<`+WǴZD81v|!6 \0FhoOnBnaƏfj/L1qVBmX\Gx `vIёsQOs0jSKX./P{Fh5gov}=8+ XuZ!Q5I{P[n2SBX0}=YTb$Վ{0"7?''~)N;k>x;9w&3NUSAcAGZMu}&!x}{9)A)/ ~cj;XţB=^h{/[5#|5f/^3A[ҡNGw?:CZ$a+/OFd>_Y UV++NHk;2{9^}O/9[L0H844:%S{:ݣB-g/ϮIIIlS z@llXoaى9$_ >B6LBfލ wsN;5q:jCg>Qw;Dkà'NeyR >jd޾~@̏*S<5TijڭO=r :H\0Az 89:/!Ǿ޻3޸-{6.Ӹ'ñ v"S9'K 0 ~ /R7)gď[ (0Ȳ—8F̛ܐ[~TO?Vo4Fs*#(D\v-LFU o1t4ZzV߷W4u9ҧtwU*bxM?/Oz{E MIٕr-/ qf\Ա;qI03 򎸄aZ*qUvARO+**k!b51[i ,gRu1ܑA`Pf|'9-G7G{?P SGx3Yt4 'P-ła"{_NP2YGwiJyo$vI,?]^2(@)H!/*r`Rk,ʕ z8M|_@7.xa5ht&zbX%|Ecocw;9GZFCt?A`w$ xݍqWFK1&?io3(5ˬ}Nk!D@Gũ26; jÈ ,8( |HћV̡ae[VxAO!8ROV?W#f݄2AYEĆ52FCn{2{?ܷ[vٮh T~ "`csnsX<:Z唳byd4.k[P:dkRC,-,;X&3-i|l.q34=6O$se|`V &rJ` W`|5u*K`*IcjH'l?\sMAVӏ,+";T;/^_I톦Bd Rݲ5xZ8)0 k@#XXD ϵ3ԍr2YJxfT%{?YcNbp)xs4壼q'#"f9uZ ZP:?FtuɆGY}fi#-͊ד[p?EGjVSRFK 샌O3*a]Kw?,%_ = y#c'$  J"Ym=&8kIGvu+ C9' |G4R:+7HƾV4?% tTj7 ր$DIiڂ'fYrP؝-ё(,uXZ8bkaŴ Slo$GN"ta䬔[\.[ 7 k.˫+B5/ơ>39!^{^M%9D2yf5^ AGzH]pEt=1RtңzfcxCmpo:[h긓=v"-G zhIxj`ЅzBffc]۶:"Ɏ8%ѩn[s9=ai#(6og MS'YMc`0 f sD(ڗe&Xo̅M tzj:")?B5[ O#Lqn&ң!ZRH4,Իi[(sDH 0OrL񪥅Á7,-3Vi& o4=ۥMlr|vkɂLl634 //xNl> +9 @ֵyc;,?Zn;N5Ȓ26vm7!G>.\fi"OWJ'or'82zI`'#f3'0Wt&B|y:4DScdW!H'm ,!6UիH jjf׫-`fCg Gg "'!>. 3gR&#'ԕ#sR|,"aL-Em_岮ϿT}%.  B 6HY4g&<^%l$+קwV6 q> $mD~H=_w,$vIq P$Ɛ\/$pYCjr&PbT#->*ɺapх=2Ƃ@47f>@H7B >1sWYW0z;SW  '|u8mV?xV-ŏg$ gH3` =Sj{ ߕbVs>Hw9wEN2 (vG>HC dOWHGmLw?*cKΞcmSic{DH& U[GZVWp=S"iۥU+)!ȔZ P/#le"B \Lm>I<d;'o[|Af %TvPoW??~4loOzYw\;#n/#_8DAЗ%ϥ ͫqfά\q v$Cߖ Cʧ-? ˍzT&Kh6&-C%Sh{ ` bp<&p\4]%yb|c&G)V h3dcx?R{~8 qu #H%N= ˵< ߬}0c]̄/ +&'z1Kcsw (?A pc$񰾲JJ>t+Ay^:O Br޻\4uxOvS蓱g8^BT'eHl}m+sݥKWԷ HiSf[UCsl ;xA]֪Ncшg)9$lBhDϩ:ꥳZ(qsYAʪn#y6R Zp6c.dCy>6mϢehi=uGesFIf츔ibOB}i$k|ix=ZZ!iXoi֝ɧVg:J'VHVIcSinO+OͥI'm L+_CZ!K+p6[#?j&#O+ 9L2{~2"AI֯H =D>%r)MFԿMnǦDywMrro|KO''z%3;Xu7A.=6Xuɷ^5' ɵ6_]B\6y$C/K/'mߤ=yh-iϗKړ!`.=iϦ肈$`y2zЙ'/܏|Zu8VHb8uIϭ'OTJl{JI}r噇'& 'yIzjI}B!oJ|rI}±oJ?~I}%W'@gclO3 Gg7B cֳb c0h+5Ri$QXDDŽ1ʔ' sNo/H.?r˜O7aLȢŌŧxrY[^ = =MVcKZa-Xk#}cɢC"W?syj^|5daDA90$~~"NEjH~%.ָS{dN&fW5^6oY4uP7ǖjK5c2gډy셫zľX?\KMLׅE2_87 i}`Bug/;+s܈@.ݢ!)di¢_]sj1,Ds֞Lƅ\na-si'3&V _]֝lM,\n?j( 1ux@} r}4\JQZۨmoEOfPdA` M82`'E2mM|PVp7ؘ8WFGsE`NE=qbgAECKS{B = ʡMUS04{L{m#Ǻ A_.Y7J)q(()⎋{\^{>[gK! ūX78*[siS<ј۾)eX0 Kmqok}<; ךA4ӂõ;+c5SrF刼8bs.텻yc^P(60έٖӒɭyjookq\`?Drs !JhXH!J.ErDI-' Ԇ=6A١pqbٽa#ʸcx~4KzG;9tEy'jȳYLb3 ( / &h3F~6}uܦQkNQ*xs ph4\†C`-MpZ/`F 8.Ţ`|!e5LqaLZl kFnthI6ɺ>6^Wsp;@0phq?cDl,$Z`W2WklkxI jeWa[\N3^Kb8ݤ:< ,qJ!>x&md5yGXDB0DBCrKF`, 9|Eh|Wj| iUt^GAheC4 zGs⿉ta= o3YFlLcϨ(t`Ywʥ%%Fl{;5dtK:)j(.Wx3֣~/x0|\ԠGib/h"?QTgHeO> U`!ʂ.ƽ}i^VBjy^!}!>0% Od#fPh!+  2ɓc5%C"R*{$d*'$Q/ŝm2ʪ_* Lh| )ZbS 83W@ߣLO\~]Qb"Jl 7Ih SaB*# Oj#ž~~:Q~:W TR<(c#&Ѽ@KZD->ƛŐR|,Qh/ B#` z?5+09@6*#gnê${{5ve tmb]va&K+εM`q. |W֝H&kF>g:V+{FJqOo=\O9;VN8ovHNm|Kn/@?1(Ȝ Yhq"՗ŀ!\R^UTv 6E9Z-SLj/ ͏ȚX 7Au 0ڄ,'jaJ΀<(^4 #G1A慂1e2!Ss^4-L=Z,0W+.ǔ!DE\S0? ;բ#Q@Yh ElK4ȹ\fzE"COTFSwE+P5X ʾY@(K|#2Ep]a A3Kxi8>rurV@پZ&` /ÄyPq^ ;J䪻oap 'gA T xៗ/g wg> Xo6`J-p=]|އ[4J/DRc4ŬJH:m?A=/(]ע&fB<2.<~P] R0GDM7!T9ո$~va/8xXf M@V;̀8M(&O3{M |&?#T|x|?E/N/Z(ei{亜ZT,VÓuFX-Œ+1KPU^ˀ pz`Hz{>9Ka7pK;?Ӕ,"L,@r1̧` f7<?2]EJzbUB 'ù4p4$lJ(F] IV-I0% Ew4 B$#O R*ƭpWs;2'00pf kK2űm87zMbp;"imt'7> fC.kKRU;#!/tE/yJfN\gG8 EM}K$A w8`yM߭  ˆ+W [w\:|;| B{rG:{GJ EF%)}Q"|pysIO)ߺ Pʜ<[(2C@-fA#d780tlN ȝ-|R0Vnu N? 9s_K'+3wwx)50(]7 ɁTl5dcL /ݎ1h#[j}u zTc kRJLz 'm/'TۏlasW{Sm9xC;yk%DW+t7uY2Y;ݡw{P&hGJΐ`R5OF75"hb PgE!pg~JHU]Qij{m\XK e*pmSILbF{xvK%6TlMY!Q!AEJqKjP@3,ihI9nAT?;>Ir$1 |tl4m]'̛KJ~Q7[y>0mx}.swqEUͭ)#*ԄYgPmX F‹`,r'qwfͬ=3N&j6شa,WqjMG-w准 cV\:rט-+@ls0>*q>8p ^íC52h#rQ << DbŸ;RdhX:œ31#q=RܹcpxB`cP* SFgkN5KP4+o|][A)ƵRf71%@%v*a);ٹq(U0q1GJnd$d1/aK;l¨/ag6 r0Ϙprɘri\ʆASJQ^0(`8pBb"tȸQY#u= .?P( 81W[zڜcX "cװ&6)dkx SX~5wˆ\!w̓Z~zoRλfYO tMM&,HZ ћu&DkyO8Zxw^1.3 [`-ݰ&6ϻϋ7+ㆻdexT{ߊl*24y+?k sDdb}3oZ2˩֒Ě>s,c :]ma::[N̫0Jֲfr|\Ol&ZɹpfG|E{Bwi_ #a @X@lqx|`"?!+|QO" bL$F5fa/A3Ot-ھ5_oo4;gZQ@qM4÷: zjg}]ocl۵^_'I|(ΛIxKzNNZPBz^wcPk 0* P\Aa/FlZM:;s`i|ڍު5VKnBrV78=$T:gD8+Nsڇ05isq ^U{xɄ0;Ešp:qbbh:{z$6k4zI``)cKF];Cj xmm8B} 5!mTְ5i@$|VW'lĈTG?k5thۥ.P{N ttx zѮ`b?-|FRNavˮĊl&x>rSkAm(pHwNw;Ze\*k."Sl^!C'ؕ0 5wV CarN\ 7dM^xB|$L1tHj MMx|HUTAs.C R}]I=B]= )d|w-J(]ZP v&| 'UXi^-;z]SU@Hzԍ:>@G`V~ f'Y#_r.KA<tct\jHw[>1 hى(EQ0rWJriU,j)j8dބ˯Kb1_^19lRAZ& #Q]~:@ ;Y\rY'; tXA 2i"$!E`Ń4_ UvP2JX!6 ^03U72˅} a`EꋹQmm` 氐uۨf_ 6/nGNd1"⥡'9S``՚-T2ނnRcd?1Tv- YyHYMr^>عu)MX~s ?Ǟ>9Ғ D!f!4((}qAN䄚˗#?EoBX%u>pdBbz7l7e;vI:4kE|>Rm|zZ >:߾;lVÖJ+j8#k)> vĊ3O*^̌ڰۆ.Ch!ee+]X<2 ^}2@N֒:,rO??nQ#=%&_Ecj4Ƥ4{e:=l-{VktJƛN٬ֻߡsg`Yr9wvw'鎳>{Fx]ey?1"ui[#6Ly=aoӊ[܆$E&a#{iLw߸`h!ٸb"*Y).nK̝{njM/:KA\H TYX*n^*~cȿCz>CoSuLAcC0ʅ[B\*?/T91rz/ܴap.N[C.ڵh4=כjH?|# rnv"([flMEZkGDZ@RI{7|EѦOѬ!>|.K"H`UDf|nCnMGul0iϒ՜rL-@˃`C]jkpLD}Hf.3gl]a t>JJc3h'a|c4Gz58"U-<䉆LY^K;(_;L`RxW^uղG\.*q_~4}"Z ƫþ5K%u](+pۤ*÷}@0&Vm{*At[9 qR7`Bz4ah48 ׯk| F+DR :$ ~ unN++j0[pajT5Mmb:@Zs;5zk~7wvOY> JZK[|FvXLfR2o]}5xlhY|̜9^nXΚHnEءVwB NU[T4{]XbN5F"( ۤÿ*/nҾֲ(t5a Lji?Bp ¼Ƶeb^ZO6m0h~CL{^+œ_5ϳf7Ksqe-y _|u3}(́o',\̘y7ub μ'># c@<5l2ķ^|[]?s{q[UuixY^&{K|'7C?Y_@^-Q0J|ÇH!ԅ8HIM9y81ÙkSoFYM2 yU%/tP7Qw!Zsu0۵<9/n 3pq4Y> ĊE9iGęopM4+gf7t/`dⷲayQD"/,嫦aMLAXm`ȎV<x" 1CłznR{wjuˇ[*WUUVS_U? sZ,WV~V@ujr)~pZS0N9ubSg07ԩ}'ynq0^Ow ,J} 4UvUg'TPDPmF!y=(t4IL,֞h x 76WR ?{GF% ( ^Vr#1 )_I2/@`9J)tI #y؉0ޫ-QsuKJ[ y =A.A%PunW*S}{uY}u_|fJ:\:oA&}2&Yty}n>vդ0őOn׭V$bVxJ{^zA) ߃ V9 8T9j|ުpX2pr]5ǁonG~q<%{;\&e%rny8\mU ggzHLy ѭЂ#-} 3c6J?oi 'I͙FA `v7[`XIJ>fjKf|J)9lk2nӒ?xC55vrm7/3fhZabvs3e/̪jz6RY&<P`*D%r2BߣDW)EQ+@ jR KRg[\c֒vF~a^*A F=4RB5VT#[T2D^k%PWhY h **p{2[ g􄴳`.C>dV#%߳*I>!^ƋnN]nVT.0@e%ty65%xDU|+'(~=_BW .VY%J&t_ЁAtcБAWtgСAtkбAF+@G]tvQujP۠v(W KGIJa`0zK t^>5.n˅0lK4KOǔ ` Ú$e5@|jݾax9;G/YVm۾*Eھ*em[dmmA烬8mYF{u(լ8WV3jV:|Ãhۃm|_Gq~]J[mZ~M+-uiiQ6Ӧ6ڴ*RA@*ǷSMlmTmrg2Ă<&nKe61qR%"5 $eA5d =EJV.eܼATıhP*EX7 8& "=ıh8 3Z  ">0ЈG$jP;6a~N7jI64;C=<`Wk7;6P]lP!.2($ǒxԈa4'^^57oIx3_]P[qODoOs]?Ue^L"P^*ACHŠI߃@ނV&aRp&*EiP^"pO) HÔ9z;~),"˵9EDx[Z>R#v2/rQl)VJ: Z9Z)4Gqg[3+.֔E散 !&| T7Ip!`(s`%]l%$6I B -$B`s6QVs!Q6Q Xe00aAI16LHAs!(: ֯*WRG!~EY[OY/X|@@c+?ſħOU _9=Ts,UJ9J|^ ݕ{~BE5rNhQQ$S؋oq +`o官B9qTXU*&jœ*:L@ (s P=cҹ_/`RU};~=q>Yҽw; rH{w|BW 96m-]aC#,erBHMAFϧDl8/Iۊ1R m.4Q>j~_r(B(VXy5PˏPˏA>xD1(by x` ^&DWS*Vסbݥݥr0чkLA~(ߣGG?ѯ0ѯ&kِJHT&dE=-BC9- o$Y1~](y2ļy281硖2Cˋ\5jL:m&r٠w0/rvP˼ecCuˤ9˧ZE.ծ\&5͋5@WJsw7ۄ#xS7w!- 1zoڬ(˧& >̹B h+ ]<5<|XktY.:]Ve9-Ks*aXUCux0CPe<*x=᡽^;O僇ޝH.ÉS'b6AcY_n̅mF9>%ep\9i`pQ T" #*TA8kMrر\ K#gab/r2CZl:)6Fۈ+ߗ hH-} -, J}KK%nv}.=cLum1g-6YrZ3 xf AٳFnjB)"~>z`-RrZbAˡJ7k'MQMD]C <[_s u:`u}0F# ; ]ftM~rͲY9 E*'fĤ*Drhڽe.P^A`"˗Sǔ.EL~@HTi~`䕂yBWu#N- <;k#/O%J[v }+ƬqzTSS fuQJ6 [ӝf}m0XL̹i`.퉥 HN!q_~mή`ǿFE].p?vb4u| ,i@Tqo {JL3ZN7;h--vڅi4 oXKmbZ:9P`4S|K( ;ycCs TMl|vi'S+mF IrԵa,% AY?t KH]CkN`na{Ю_7z35;h683{ĬV|7j`;917Ch?bND3쟬{|[liZѲd~Bhx(h#C`O Z"y}}CQlt[ްOtaM_<yi-eD1Vc̟Sdj*#9hKފ?Hk<7F0,7ӂ _ mh4\,ܘa1h#8lP;Շ z<Ú8jF/k9^cC#0~ސJ:n⢔@D|m+@/_*p-gpi"`2S@ė$< 3WIῊXZG{iZh0Op c8-լž7=va0Aj mX Nib(C$]ƞh:Gvr mqT߆y'^B'olIOH N}Yw#krZY뀝is`j0ج7c!@|Oa}ge >|]k@`MW0o1B̫D؊cE c¾X--@9+ʾ@=jKZwKkҾh'7k-Ԙ&7| 0lװ_]Eep׃G꾮}qPԉGh{Q~4[E5C<Ыt!4hέQ"  b f&qg^JɎދj m̏R㌛E=6ʗD!_u:5,u^nϰ( ^dz 7}IMyҮz:TnY0#z1:Sh@h⯄y-U὇Vƃkjx!5 `4(0 ?>.?O#s k#r! _q T_i T&sG,ǹ J.0g{;w;j 5xPPsqH3z 6j/PϹF+E`ZTgD7wsU[8Af@Zob@6f3y懶~D{\רy/ئ/@i-̟30뚩+:tg*|e0zW|`9+PL:6.] 'HFGDNP(%}"$ՠkK*={_ZOL`|oɇymhr0eٝDG/uh]ۉD5@4.,K@U.8^%=P4xҗV7*;Hx50bՑm!,wӠdcšnaOQ $,S?= 8b!r-}_4k- UR_ǏӳX5! `pFaS/PG!D$}q:iE *+Q 6"!q #d_֧$ڃf#5D X#m͙J$adY5X.Hi!^?rkY*Xr>;c&N5ARyd pX5c>gAix_[y>rZl.AmLr?ߟoOO~ czM- nIÕ5a"s-=ͩR3_I=ށL>HEn ;{WILqhtA (9HIR)ؽ%nЕpx`c#jۡb*!c99k"1=4|x!L ܻT`R%WjҙbqXvQDz qk̹}iN=4# !.yFC<%"ǁ C| u6M׆;(&2AF=ݾnz$Y}RjжkwmGs_H߭OjAbi9k.F6|})/@9Bq/ѦŅ͛4d;nvXm}fȲSǜP\` J!;<ڜ3.\v~^7f@`_/gnјs[ŹwS~ !:mbX@ܚbpl0F :f}ґT+0c` v<,>=WEO!H:kr%9aMyNp9:e_BC:@>N.7LNފ!bN&5Ւ#;rO/MXMȈօ JhAaE^x*_*,Y*b(a"* FxTg=1{N~0 . Gs|o=sFsƻy)T.Sȣ<= ^r8k>){(:<UuyA(#f_څw[ Y:&Kb(8)y9<РƤgKrtjuc8/h`~IءqKQ Av-`"vp,.VWW[4(ȸ[B5Miv)3LwnZ˂"L|$ALEtҘaV@=^X ]XKl0F ݚq ԰⎔zfo r{ b8-Gn@m ~F)c ^~T W+a` [cE*b\ #\uJdɵ(KM&TpxT QZw#uGax TIu\flO1Ln`D[TbCt ch D l_MaHw[D+D;1c3eZQK~W3/ EɕD yN. ZʿWǤJ1'+ 5C=w9^UtcbM\;v 4Qs27tT ҄E 3!&4Ns?iMٮqa\!pR ˒~U>9٩$T[ 6.ݯom Z/mAQ<']9aqk!v оw,TՈp *2ع`f ֖GYeׁG"^Q8SvXyPt*DEk=TYp}Tw>_W|2U Bfa!Z\CZkʰr}!\*Xkn +Ģ!G"hwTkAttwz!c *CRǔnCe(tfJ\`T;Ϭhss)º ~c<;g` hc$sgGېCp\yﬖ;$&$7 }s+CgI`q (voS` ꛟ\ _ns4,tcր_w]نB@ /G@]F70_)JeѱqQ5@iӥf先bY: /;l P͙_9y=zX2atjk˂ԠYAS)m)#GQ;,YVuՙ@7R2dr+%{. h 6@ U]yڔr '\HmP`}iv94jC(%Fc4UG@6'^㟴C5tuͨ$>cڜj,쫸_ǁ}ۤH; ¯*u )Y~fΔsrN>Oq;%?{?o\.L{)-kN:ُw5\VŃoۓq.z] rdI~mNsټy 7pdP5 )''ŹTdF@m`g =<$6e5"p,fiA {(+O&Sx,1WpGknD>|ꇉm>ތrjc)y!{MRT"Ju$9ʭc$#4/>B"-1ɡԇ!f]- @ w<^o YU@c^9Ք+Z+k<`/$-U3E?tF6KH0FR4 |&'_`OlnUBtHV>J 'K]}׍vm& [Ѓ_ҥâMzMU^3:\#s tNEN-z_`lWTjXC-7"5:ބyRmb^|MѦ hxmrK^/0_:ucM WoIU*~؞ޘv,^-y\BH0./;) ˲ D!!9c%YX^ W=@z5<TFnM@@ikjQJ`: ` xnɴ1)^֚ C1"&_9Cp,;~x.Ɇ>-/ѱ.qP>FǙh/` |QB+ij(9b#T{iՊ>ť]C?TCQT^3]C~׼?r '5*x<{#FGF]h]Xu`ߤ,9/&W*e\UW;-v?OR\FE6b`Ac aTZld0$j_;k׌ؓe,Ck =T90fajٖ#1ȶcu8sbS%+6tGo,zy3pfGn{-,q\smL+3N㩶LVPr&H|:-ע*B ޗhZqSʲd rڱCb볝rW+r~D:KX,6#g*/?PU&5 ". G2-ݎX)3s4}28# ;5|ms,^J6Ԣy[wf\.!5lM._ś}cGB-SpFgƮ!o Ξb:٬KkxrP꾹苨|0]+&{os@Y ®n}Qvi4`+_^;ud&fq;7Ldji𸝢Vb2E-|zM9Z[Hzo&X8عu {fRSkqe=){v8ABxO>\X,#|_}[zsK,+FU^REWx7K_=G1y9r1ivYBi'| =ÊTj>aGDH g3.) xWN+P!Gƿ+xAM y̺e\ +kXxHr,gi'v銵"EI?7;t502.]F@zg8>M@ b3Nolёzĩmuk !D#E!6}dDWRni=&zH!4#F {-z`((P5)y[^j/ @Z _ٛ*i{zr,.4\/1H,k@Y0pCc#q懲0T<'eRm9%H |zȫ$7U j߯\:XK+5 bľIN)H2Jۧ$S"DCoq7O^`/'1<_,5Y^ƌDo"ypJ:ufk^ebp?jC`L06&MSŰuUrU,FM}Dr;,F L5^ե(al1x% ]A(ذ@?9[{1 KL#vrLsD$ cC}~#'ѤPdlqlUO cRBUNoq_$H!)DbIRVh'h(l4{AGY´f2Dȩ;IX53wa:'XQ1鱒} yVvA#\.!Vr%?~CpWԎT5g5F 5&Ȗ_2Z~wiƳwGvpL,lj 5 f;`,\?#͙Y^¢ًNd'pn)E !. =NS)IޜDj(bBvķɁ ;f[ ;D 6T[!5/}tt Q2s[L#%÷g&9v 8eJOx^+[ YUUgo'$߃ ɳ@JaR]IBg@Or.z?eSa{K -2pED~9퇧5Ÿ,I[baa(CD6Hλ&4}\]:awSF( [2u&M˞R)yP:(ɈXܳbmn٦Mou u2,A r3Gtfy1d0)nokCc(KцҍC+ҽq8;dNٱm^tCpr3Tu}!olCGHe3.9/'22ŇAc{rD WuN8ޡF  "vd[5vBeni T[a4=}0%|C5׭fvS󠖔dQ;]d=}қ;ؔIBрrO5i䰃K5Vqէ5" URaI7x^gI;G~ LU#׃oAxjPFN=L /KY@&GjVߊo* J j8lS/I_Mv;>"ہTnOr3tVMtT3Mo&xEp`:A¸HL( yv n,͝%zp]seg9UIVڭ5{֜#q4k <2 ]v#snۘq B ߗ\kY\{usڣt|;[JZD M{0Q +sY(iN{y6?Yb4+5N?5P$!g#,3!Psޣp$Q\nZ!};-.=7&Ŋ5Q}qc#Wj=HT3@g3pNQLSʯ=/ ]E-@1W҅aWVؒk…)Q{#_B" ΍H Z:12F8Azp}l 1萍۫k^Z+Gː7nX$]qq37r9wNu } E#zaU}==H/?Yא^CЄH+| [lOl׍dC|z P( 5F LEG";Pꢃqn.'潵q<fW XC&mLM'˓9zž\k𚧭{"V·++a9ouIG|[T툳A\b 3oaWq1BX*҉s}V2|Ւ${t`pVQ§G+<Q@tڋ0ڼ]jjݠNcGYf2SA&*w{27*wy9R'x`NhS`<f<+f M>]j-Fl6x?=Xh46ޙm:P#>5{/!zb`~$4[s%'Y/Qv QpbHRb gIL02`w&ٴ擕c"Aʨx <[;",@qx/yX7OT xФ rZ ȕŕLY;"ˀ`jb&<MKe>l]6oOO[1wUNzD}֙H xckƸZxOFǫ \9:]b4"%ji/.H52iuAKRecVq^q+zI@_R'= \}@!FeKl'@ݖĖFh4WJHHu9KƱ^M;)J%Np,n O@AFcD=#sDag|<( %R[:UVB]l%Nfm&2@:PtI\nG75 0lH* v, :F4RrgAdI6J>O[ipzsc}q8=,0GuoǦt>>-d]w,&KīqbkCʼnJq_{4ta.Mg]uC;+EADG aսTY*X6'N&"."(L2P _sįH_}-.CK?`N)KWdz֐}cWN3x$mxF->F?^sЂ?ͦ8\ +oX %Em$dRv|R(d݂`p~V㲾ڒ⒵¦ \ְ`uU0b*].aJ YX+bL%wJˤUa1:ItdyKaK#UɱG9&0lMx8!l ~Ü#;xcLQ`f r)41iAENϫ` u"y}d{ǰp3IV&N(s9 ir`^hyh¡ k,Z8C1 $IA ~ꆜ&$;-sï"6pgQFjfL9<5ᒭ,/){+}iHqeRCjagJvS {'E=E?ly.@#u08}ow; /r>4TyoM-}s'̆@EmeSGq)\¤86TV'3C@D8Rn.*|zb9|- 3Uf B>k̢'\еφy䦋 JM:5C k,昽ڐ^xȃn ! hkyOFϟop6SE5z, !jtNC"&9 b\&pM"?#*B9 FiveZNLS;69FTp[x`&= B悸sޟmb3!2ΑSÜ_L#^j``)Z72Bvޓ=f0WVx$Ӏs+;S/ 1k{=FNq2}#LtqJS]і<{W#$8E;nrS&")ًpۅӕ.0(I~p[aC)Y­ɮ]bZ4P`ZHJ{dA776~t+=a-V+`H 3 r.ZUn;1z3 =%nQԲym›5^z%'9KZX<nvKApDt(I0R\4K~,'֘I};QKdqt|2!w 7}၇=cdilr8V92g 'j` Ch (pYPdisXđ`da9ܕo  ޱvCk2[ϚKJ+`qIm. )вĞ1{)剸[tc.UL m%)w?l`ȑC(#܁ܭКHIq7s۠uRۤ1z@ ] RK @xa {e׊XC2mq阥@p,ĄABzk}d9<;[&8)!`Gz)MN) T>mEo HOxZ7|[~ILJ^<{ .hy՘=ۑʃtS; QT蓗 ,GWP%uo˗  $oӕD/?1 7čʳ{*it'Ig뗫ɬ8awi".Ś[Ae η!*iϟ}h`S1Zʿ=x*͌Ƕ<2Jo 7۞ lS2K/8YOEݑvLd1U(?7xC6;_} cHr;$Y['a8+~}GEș_d{x )E>e_,k_WQ|+"ׯF$MI⓻_`jsS(cP+iG"Y$E?Яc|9`.bS!7/kj |gM)( b> 8q:g3ި2!Qns\8QIDđ#4b4P< Mh; *ԇ EB(Q49\|H<#_vUfF$A< !i ǁ ޟН2s A?\s +ZlLzި$ cHxzJh\͝;("qq!>9b+ Ef`4͓FEԤ5IF.b I.KR0է&+)jPǠ1O⍾BBZ`X3U-~w땏FPL "&JF2>ȴ26\c /EdiE! a&Òk4BK.Fe#'HdTWa !+&F}"#j6N,ɔ1CҙhԌ"Y ɿM!af BƖlߏ`%$%kig0 .o<-hMx)!jP,1?RFbOb,B8&0868 @>yvWHS:l~ޒ"/fd"^.܀kFƅZgbF&l131c`; i@>n3U# ) İP]KP FkӫcH 0\{[,c88[p68D҄EnQh@=q"=&q@0]QH ~>:ٞd0A|Odzhzr1e{E^)~:\lVZK٭\>R$ }X]3h20uc<%edPYp*lN]+7E]qRL}D1/XoUc&8X0UXSݒS~s?:0E-<])]6]qt@3,h<9 nd"ay]'U蠡Ⱥ"vMCb4iL\v^-Alh\n ˖];Q-;y-\VEU.~X }!;-;--wZX;YۖNF&!],IѾ%N-GpCqu,s;u9ja|~;vD 6:L[%vΫ.Q3.2.1;g8]BWeL  ќH,%A[%Ҿ7'ӾV~tq^;JѾ%Q]v^{VH|Pz866-k!}GN`{!3~'a7@DZħ*wHңõ5%絵! ys~'~ >Ō‡a_6am Nn#{C3$aZnfEZ݁LcR2pAmos"LpVX}}(N`yvQʟh@"4 mHBmH 6N.a-R?##!#n)R!$hE_Eop A˹Hep{R@u+%:G f)P@|J{p/f0^ H\w_AN8[\yHԓm4 BB6?c_2W>sؒ$e |z Ǘ # >d}:&^nF/x S!m`Z^X\NnNBkwRp+ٺ ӇFw@5H6WW$?6)dI)W越EfV@Lb0ɛzq*f9[#ꉄ㪍.$ TΛ?wzCK^}dވUnE Dwllt'kKg.\ [sP "=;yX^m:8(% 8jχBV^zh+=7a@D4iQv:[a4ircžz҅v;xrU\ `e4!d ޤ)&*di4B.H;C9wq)l. rB#7h;vX)QVT3֡~Q!t7Cd7!; IX)/YiR yU&S|%P$Lj jtXT9e˂.*n@A1k>ҲD{B UZP'BOTCq< R6WYl4I]6X 4x*mAztN`"K6'-VGR(*ಎt`&P鏆[oCЧ4,H* 3THv檆g?!i+$3+q@jG.Ɠ,FKN!a~ fLF7ip-\)>%6%Fr5OU/,.)ap^Q~}}$74 . 1` /fVKX!>T:QN$-qΔTYkԒhI«A[@ hu$3rwGFY^M]10K+U}b!R V)}[ں.j]K7"Q𬞘TBdxgaz319W\|$!"Bse{;!t $-eimM M@p[w2v3Ux*yJ >bg@~Vqa=\N97XBH 8jNˡZy!”~͢OM*A].Z$ZDqp'J=^qx^$i8|i*9l0ߥRsv`@ḌHff l-G|fѨґY C(Iv}s8I~<o+fk~HӉйgV]"Nz]|*2Lĸ/tq }Z VҢbgG ФDTZyHԗF8tXXBK]˅$#©04 0lQL1>*rX%]J<0{^J5Q޲HoZ),&ɠ]8W2)vzYܴ[6Ҁ]~5,*t8@sK<\Y\ûDžDVg&'SdK0JOW؛c4 *R CV5!Yd;GEt}~֝(n[*2N%*9z2o\-o$ݱFd6sJXGC19U.EZ @XRlnA!U2>V<70._M3P!@r4w, {q$U˪v ˭#TN.>ѳ6^WJנ63=<Ѳ%dG,\!&ͩ xK3Vwedi\\V.\Tcts:Vy[u>oքN@rp^qUn(}É\U\PPJ奭 Yv~X l]]4s8_cylv<6iF큤>\gkvɄcKy 8Dsb/bh.YA?e°,cWŒ^bQ/vZ_ʉK ѰEY핷?`/L5f.YY Yk5 ofwVԭܰ.YQ vgBhCmywtǥi(߸IRLk[ ŴأO ](읗fǧ[@%}*5w5ď7 I$Pjy\i ^54|dX /\ݒ}s3t6:)hF3`u8[F1[;\pŲJ 9d'TKΌ鲒 pCZ-@w濺HpHYc,-giI 1+#'$ +@ nXOp,Qz۪!zk_clHM|tO/Ĉe'e lW}|m8lr-*v8De0l /Λ4ee8#&G"5w/CT[! yRh`8r4X*͊v6$K2XfaxDR`FJǖ%+ZsaA3@:oAFZ=tי΅*/z.7^gl7ݦ,Ƚ0 SКܶ1a{O#_&&2 t߸%/0Is#:`p|4tF;ѳWk 5!PfW- Ahtw2Q!>q>G?ɝ gɉo_M6T ϲ؏GD*rJT_U2QEl\ɎdymBS6ê8) tr n؉;)kkFN,Mܮvmń$~-?svV[MI&X] Oȥ!QmJ݇y_פ}4$ӝ_ؕ^9hmsl2<upiWʩ&s>NnU>u5M¾ U. ,M)M, 6?y$A_ &[:+9v_Zs>4:~|#'@=: 4kB~]B h۪k=ya=O!_L \BT}f) M_vpwVџw$Ð| =ܡu_A5k9QP;s8GTuT;R 5x`u\E5J ؜ ]4+h?JJ!#hE$m>a>P$j'b#'oy[t <-p|2{I}Ŗ(02^A׳ɳcuײ`§駻%{^Ng]UZF1Y>)*r cDun1tm;tY ǖ?SǺ̜;cZmJUİ^ 7=N:["-oX㤾6*gŠ\Dmk-7i|+r&@>$6Q*KQr,'2tLdf4}PPZZ * PYvwz(A+7"SCBnW^,E7ԍ6Tr2uN뜒ԅH|f[)+ykn\vAb8Q]pcJ@߃ZZ ^A0MRt$6%M ɂb_N$YQ{YCX"Mb鵡A|j8S&˶a3bQ9%qvI 6Y[K?#JhyV o؜c7 R` 4 J=9YPٕöp`W; U Np`Ǫ -YIVϹmVss {F ~hTA %e)EOihT-|=|j,DD oSoY +&bSݚ-f eȃ; QX%n J#tLl-#ٳ ϥCvjo5'yL>2 D a<SZ0=JX(5cuXEK V. (# EOٗպ HCrYPcJ5fE+MԎ!"%aKb;H$v'OՒ4"'5Gڄ;x}\Բ]*n6F+[d$}-yNx-{)KB f#pNȫH(^SMM+uJnz(v$D-+E ܝ©ȹnEN^iMs#}:28 Pf_j~pz~lbڣϬG&0ЭlzGÊGהT%,=št)$.9R4j|:K'8@۷[ԑR/#QEY%0Jy, 뀢QC=ŘIu ЈέCMg roD ־Ü.a6h1ofQ~,F3i(zI׆Ӧ)2GJ4 bY +Hf `CTS0 Si#*V=Nh|VA6䇛3mN6h6LO嘟p+y{i0L#hTy-5/j K*My\⥏ՌUgaN-As\$R*n2{?r;#\Ei` PrIv˲YClSA[S{; 7EA] Ek"#Vp۴8yiӋ) m)&D|f4%{ \uP4<ƭҠ+D';0d5$3$ ^{_C@4GdZ٬ /5kekiHZy[g&ۉʀ L3pZj(;߿;fA&-lXiےg KW.LU($iӳ`T#ǂL^ Br4~7á#ahA{N mUC[wKkCKf]1nں^ZZ2^jPV;'KH3 S:n&6n⌻;жlж4+ XZ">LɥC⏥iA?8/ Rw˪2l, ?9Y4z4P7 45VhPEĚH.Vi_&Z,-q y घ&2~څ+̻{Cݣangq;e|ХPn^?mZ`"UTXHC\L'3H=# A?](AdC2CDž± %\T;K,pGdws_wp0L3 Y "Tl$Wܑ ,T[)zm-|+X{tdrGt"syw&gH&,Qa}Wg?^F(8r|z),\Fq\sײRj^T4À_G{;x҂:"BHv 򼉪MM1&'ġ8G ҔpfnVHA_"%٢D|Cb 5 f}0s8hJE+#+O^8ò0̉U"kM29$- MHa;wW%CP Qg}6PqM\mK&-O chC&ˍ!cW]8M! MX q NŬi%;4 x,"h1ft7m' 4Gsf[}ԡ¥cN2 dT_2)(-Z]Ǒ9;oऻC^v5k+1ZlKZF>d2Q~bim*SU?)Q R_*cқ%/yI^y('oВ L ˽,sq,E_kZ-^RdĄƹ?-Ȃܩ5ŗn2mp=dVՖm^.LXtA¨*舁 9MnF3if ~AA 2_u=W+{MZ:CO ]L@sO8#fz^WݔZVʕ"hA>c`-z#Gpe3$f0F4k֚`-FeKT9LYm\}EnS_W: ꖆMmhW9OVZƽGi2J _ň&J~L`mr%MO:1 Ü ʴMdjWʼglGd.aSb\D粻&@;@c-S+ Mбf(AYb̲L KA>iAZrueoC=O۱p3mi9mɝsc\aKeGf8"8WHťs vz/6oڴ4ɍheCS\(p 'ru cqP vUa/JTWlAib"KJA 2,lW߳kh^Ľ;EkF7+uB^gEer K-,u{=΅UWbQꤲzTUW 8hz 8(~Y;|VՀt=XUD^WALbL|ʋ$bld½vޑ{P^M)&ɟ`H8"KQ̡_d!6rU ]jEqTSlN#;\.нU:c\GדqxA< ƐN= /ĒI4[7K`lЊpl!+Y+=P'_/8YZkgXGg xB:P0?΢$>N/fĞ$Xq=E6ЗF wN/Σ*cw`zͷaz.\5;eId&M؎Bq:u = ^:W 7PxJéhz>dɨH27xo ~WO, B9r<%3v9.=re RԖȃl9oY&,hchUy6:1ePUMP4![Z c@c3лLPYXo$>rX: cvIg_<O`&H*]֙ 4xWeO7IW.(Alo?k6HU3X }Lrˆ4=E⎶{-i~$ƺK? svBť40KQ!{# \nIG{]利A\:Ip@k#1~0$? <_*$yxhԸ_x4^4SY?(7$a耒#ã?(lȋo ;}gxW!ԋR0 CawJ6[w QIzfwWhzU=Z}8/1Mrƹ͕ϡѩ;OgG{ϳ0g{xsS.{;Y|o]9ca|}$rt} ъy/k%zuBYCO@SfԡlVߖ\x%LZnWu#|GWhFsC-f2t$igLZ\va 4 U:HvxUl~įd1MHv/N!#.E%Alǃ9Ŏ3Ǿ`)F5|7Ziq6LWp6K(1_7-A^Ru [Ycuy|*{ *7_ҸqF8XK|(E`q)c2g$5:բ*]y5) \-kCSǹS NRyfr.2񐄠6dp, }ԯÞ.XnVfDKlf HdhD(e,ySH4̻Z@ ;sso9>.os)a1j.IHE*LԔl~j2EK_M2fyBfwK*߭y,ВT۴A5JuePHZڍW ؅U#V1݌<2Gs%l 6ꦠr%#[ q@V ^.fP;p2F4$) ~~~ěF8/܄It:^ H+߽_1tŇw{+[Sqy}L_Al4BD|Xđ|d2& 4a<8BLÈ˯Kh ;!Brm~p[|FMpR l!Κ-ߙ7\AmQҍ\GFI-(.CO'х4bͷ-w_s sImO#Xba`sPfIx̙ǚ{[פH2 SN2Ѳ(bf EKeE+Q4W(CYñFMF{nlqᥗH'I0F7 $B Y4{(أOcA@bqF&CՎx&z\Xj!J2Sk1I|)D:LIz酟ȼ-b3D4΋?4)E7;qWsF}fd,4m/ꔧ%y1I#K\͌lS8=}w-JFE@FBS@TJВ]Wn8H-wS!Qr"7ymF-n fV>17H $۳3fk2v,KpeY7d˟R(ao8ȖkRaVb~mߤ|`}>{ɵ T.FvEgTbni5sA Qe};FcF@qkEf*&BƆ}iUNl.,T0K7 NOqZ[ \|kOى.or$B+HvΩ*=;G9:we~ҽ*4o Ef,ը6T$o2I9Q$NRpm ݄(s2<<#F7y{ϟoq蝅`` -lp//'zGԮCA:0mʭ!H ֻ f0&aMځ mJu tx'W/_}jݝU"cBෞ83]CZY :9Xui.p ԡWG6>al~ G%2KIq7x@0-7RqXM\z0Yd!$tk<*V+ IP*,$| Y2komI5V!gP-~Ch4 dsoY殩D#< b=^ z v8% q.Jݙc] ;4]i+8w>ݭFanjgV `%H\ ZgC8FnjArIxTPo^?zkߏ=x֙c<n t섈%DR2;b](CZ*诞a%NN'7n9^9yfwr5 m1 2.^Q[n_w~`Y̬FxN.fφSn*ܼx>6 auwߖA-SlWęrV r]2z^̐QS 2hY-0tv{CLN[FZ U BEA#=Er)&r8Gg[i/W+<(T5Ze!Igaח.)7Q&l"qYt C0ERyQ쌰(ZLeqsL|+@&4o _ irFgQzG7%n>:T5#}(j-#.w ;4 rD5>$꩚gߦ:~õ߳oE&ơY~sKQIkGq 恷#&O#<wG2't3td)JS)n3,=LNlRtR7'-sNl-GjtfM\[Q즍eK4X\MqXw~[g:]=G{A-fs?%!^mP2tK"9nťFW4U#0Y\IG0$ k_#"-TjGeyφ#p⢈׿$.1 orIA(3@f;X""45Yq +zGfXO@QrM)4,[}׮TuwJ ` .%KiY7,4@Om y*ڑ#]8d/HF dڡ]W<;f9u*ȳ<+]t:y2ܸX~o8j>ݺ1#e%&%J8\,V)E,`~#E·X2hq"]%WʄxV%] C-f )Ll.*8ܛI pBR&S,geF ymoTkAuB*uM6UM+!~?VKK[t'yӱ40LhlO ,+4(= ,2g v^ħOk"R:` XI\ST;R $ A@՘ d0a}vBjr9RJT 4rbe.(Щ6]S.Y6-܃h $N?r|j꥜ɔ)hw0t$yBYn33=7+dY®/'̚ŪkP`DMfn+w-Gu_[1{ծb Uy%fmЂIdjpEnDiG.aʇfbӇh V yIGi|돂1#R2Bt?5-)l;+ ݁vpe8襗P3" (B=D }bo2E8nIA/ZLpb YGuS&ia3GS&56*0|&GBCc<"3ի~/9zۦM}Z>ć^\]\aJ$=Z.㴔ΕH:[ro ]v䛿Sb.M>HR1ژǞŲX%p\8gao}lGznd;$VNI2O焠AaڔpR5@ { ?Y5W6z5ڬ;ƮXz(!9בIU8x9tr#Q|WQTu/-UfCuNnLlݐnRz,EQW "!y?$xt6cN 7~(0 uTnPѵL(W4$q EGcm[bHicD2f!`:K˚8;,CC8 _@Vd(i=-˃.bpnfsq 3}V W>GPa[Zt B<`>'') ˲Hu`׏Ex~zpD)MAŖgKw>`5 F!{M$l呅ہ4vrk@,j GMM#cM1P'_ }mz"_g9٪W,*M,C`iZaL|f`2乤%ny[}^\ yYhSѬ.xA03@~kI,Eh~I=*3\E*<;kVy{\рa|d`F>EIZ6,#LXp<#@=*Ȳ,2tgf3t> qdt _Q( e_ Ե5<~djBC"1ZMCqx{:z4w\^ pz5}'A꥗9{(J^=Aʄ =?Noq˄w׿@8 JzGnUPf7]rFݢl 0ȖēI]Oix g ޒ8R[*{ϟo$ί+iNMd+Mʝ6HVYޑ!evdl;2 ^UEѢ[1Mjt>qCGˀ,4$7[FV)u{<>/6 #.N-7c:Ԫ-Q=$܏4oAN7~Se: y 1pI)ʣa&Vԕ=İfFWk*k7Y#\L^wՔmgpO#kbLq]* V]zvU'bgZ5_^,yW|;6$2prpXw_N rd K,=g+5k!!@-Nf$(VuSPs!#fEWlQhFDK l[d~_r 5y,u%\a6XdxIrjU$ek zL{bu d1s/4I AϽqG8nK_!$]BFiP4l|Џ;iI ¬eA4<[6Os=6`9( Ǿh1ag*4DC4 oVebplhWzwahZe-gˬE+*8BA("AGvFt!HO#ĞIzh2/TBYgw4N ($E0|hW h/`Q-sRnS*5CWemޤ AGs It8 >`WX'AطX /vp$Bٸ-ζu֏f%ӥ\?Ų%, p*9twCdͽ_5WP`U6m7{ ;FN))D%lu|S3~hOʪ4mos;G{9u 82":G- &lo`g=dZ園P-HҳvqYIrd=1U48^U% pJ YxA6~2G옹њ^ }W#eՅ!9*OY.bu^h>d_kK^"y[[x?r\L͐xþ6bqDFLF { =}Gha$bi|ޟX<_p6wMs KD8*Y؞.xWSU0 Չ26D'01K &R`jC㰨hH3HPuĞz4<4p^" c k mEyvLpJPlr;/I0CFYY4{$TM!pⵆe0ӡKLchwΰ?Z?IǐbBt5RMl7QDqClUZԯc$ѬE;=.]æőH gǧ@āp%NlRwC~G4B8DLS%=e\GQ}wp, $?ooݦ،Zoo{G*DD(T}l5"5"GIxNofFJip͜hU.) h{ ֽns-(;Gg vuA2iqT`Y~99OŸ]SRK8^ ۬6N雇!6BHB*fSMyQx>H#6{S9ØYG 9sJݠmשNQd)Gl4]K\\A 8ZB X"#6$;9i;@%:1ޡITKp0XX{NO_5+ B&Jg?IkOGCI^TtD\l3oF\F9} ~ mGl]$Z$^4NBGZg|ּg^*Z zX&;WаCKjg^> GW)m 1 O;^WvE$;yUO~Hۀa 6.఻blh/)7Na xlP} 3L!3.Zv7`0I]"|g%L 7>-h@e;Y(%@A`tPt`X"]} y|O^o%o]{si)j(1XmbkQӅq„xµ(G9IYLFE*@bvC#/{f[Έ㡑 WlXӲz$C@`d A*;&KnS=-V /{++]^_iv˴c ^Fuٺf(Nw7R{+hDfoV \}oD$MjjжJ43Y b} ;kc e>_ꤕ*%dRD)V.]2`bMhщ,nN6N7~I< JczޒVJkl澪<2Z82xW[#ē*n~ , Cnm2fv N zSN+V9*UkxhzmbiCQ¦O;hbђ4TO {dIz7,&n@$Ǐoق4)0^)M7-O G,- 4[q7Edv$kԠpyg  ᅝw{3o{G;m6\\_ч~^H#⽄uL.9Z:9!{4v;8Dxc-Rh{'Q8p:c~҄@@ &YpȴA">G [#>֡A 9 Hip+jq?c-r'3x?>NAo{4u%|!  ! 0J8ՖNNk+F%yzY/C0 Ù\(huXUDo=G p#p k$GQ 'qY^ 0RCaiqB`g*h-ph!B/Fd+4JThxII<>H"hJzùAJhsM6lfz_a~==0“aw1:<~H5'hТWuyioء'1F{އn:@H'Aq $$aTIgO<4ESawHouB~ow!J@,ZGo;}J _ AƹHwxJe;ҡEysZդdE<z# &w#-uzs-bf Ao(C'=.~ATww$ӻpp܅j!;<`-T|؁H?N?׀Qam{T#0R q@ T1u T,@Q ƣGyA1|a[6ꯋ)ySW ( c WO9ojenB>W?z{uok}sck 14~lau2I" 'X!KESJ>N )RՏd"mnomnyag/A/fhHlzdI`!q,N.$m֋Mr`,..ţW^Oh3MI8qe.nhO$DI„&s hgD  fxYwHRbs55Pۄql!rx0)(Q?p'V`#wV5nXeEoVJAE?]qxhRg рeg6Hw6ȓ/k`VMv-=+tXJ[SFh#Wm6^XdnY*4Jr.i/cA'ßq;~ #5Sx gu< 4ʋH>Z|@@5Ò]Wh@h Ew7Ar ^N^_g z!hH>!gHEvao?[CӬ}'t`n 70Bp־d4t02Z1&}TO4 Q\Ƨ7ȇl#'@HBF|H.Ē3%8S|YH`|Zʅ9 kvX{':m=ϛVupYj^WQ|tZʢ$yu/fX1a|35Xޠ8@Dc pxl#r+G+X ,IԤ6- &!Py\$9%8+əfx$e;kv6;,:9Lp1#0ϘUQ| "нOsOU~RZ]* QJr6FVAБ" $|N HjsS A5\ >P oJK_6in1A|` N< ('Z%pMVr(-D޷bex-hB2|9/$t^V:)De+<|bN@= %,/Y48CsO [4;gKX&[*]> .z8ʇ7ą8}LEEq> \fmU_n tA7#j&Zm0@lZ8cy3N29B 1=坡u+<0dͣT*WEpT>% t0S93*cTS AR-!j')`C>v̌d[%`Kh4F3*T=)1XE.ox#Fx}$ȹ8xՌG X"5![ Ydu'F&ʦo:b"E)(+{cI3p؀.o1 3XUce*[p N9^`WbL6!8"'LWn:(nĊJ:T$k+;^A)J),+`9v<CQjR (NȝܢmNۦ kP2p +!RP"cn*X^8ů"D! 81 #TDoGa,<сأ"pG%9@ wK{|gSTx 1;|AF<س?v&\O+b79ti4pV `8PY{XX)OAҢM tA O͈S5 *$pF{7MѷхP9<8_ cG* t3 Mf oaVG ΂$Pl;$Kp.Mp`CvX&6F5k_I,$m rI}A @x {z<ČE&}#֕3]8K??(S+ot/"`c[dcܮC?Ncآ ] Tœ:3ɜ8,lN킻]%!'\E49mUlnc] YEɖ~>*@IZaNrQ kwJOpb;S_{'nP^zC:;w,7P,HL+q[AIayi务?qhw3/<>gη1|zƒ3U-  ](z0r<:èj70JSL_[QIIIqzSJr& n8#-=@b,B!S"X+(&D| HGLH̼0ә7oSCHNcqm7mH#eXV zda[ֵ%[6DymQ;`*#20g»԰a\UB딎^2}ل(8δ~;`Hs@'NTH~aQbI_Q&EYi̽GL| W;\m,5(4|ɿ +4N?IF ut(EB#KK‰Aȸ~ _&=4 ,E D]e[ 5gmiիWexq!ɸK y@3 ߖ$kYvk5Q4N^[>w@vҚ$)T@K`aו͆ D}+LíeJ"C 7=2x#J4+1pݷhO\luΆ#sCsh<]S6ơ J0R筰ƽ'qf Z,A +o: ݓHA{|l:chWbdp=gӛLQ'}&Rr^g $rRb}vϫ$}a')^'*FөTxMkyCo~g [ qJO"B}o<S , zPn3-}_8Rz ȼ0b O[ʾyRVzc64TL64kK͵`τ_9ꆲ|Q/dP/u:4#m=#N{p,+<b~)@IO$Oh> sFe65 f M*wS FmaFrӄ8Ht 848E!Ar+ ăfc06x ۣ@[c UJmv5׵Caґ7Be 9VUW": G/ (H=!ən ] X agJ4p?MQ=(x,ilq(6~Cxs neɇ!~4G~ݲ S6TYAwY7oR;9nbU#}ӓѯr ll0֎;DH(Dma̻2a?[nO"ETu5ٰh6X J lޑ*wGLWCk [&$InY50YiHW*gFŏ|IV(jAo}oe F9.e0 0[a9ZmxDzx.C YQ78ٝ%_m+;~Eha-*_=HA2'~HHeQ]ez+qy]xGӸD+w*6&|2(Z+|K2ʊ N8풤E]PcK! {Ƣ81I*E4+ԣ2Zu$*z%]PYO*H< MqG9\'ad{QNgSc%1|ve]VT)HS30gx /ziN'돨 T2&yfm6ML"g{:U9ꝶ[2z|ЋFQ_a̘{>^?Nzz@gIyW.n`,X|BA :ؙb{]ߩ$·S ұvC1Vŋz-/_t-;4wVLrP~hOۼm Ga[K|&KL9]5zM7aT4,cw>' Y#X^'x`(wc+£zlPg6[/\#aX}oPN[F=)Ze:f 51 6) 3B+ %WQ&6)DW,ENpi>@7Ush0\>P%C:&wI/Kgxk?E" iO:CP+Y(3/F/Kߗ%(OuΣh3At  ODDȨ&j|ڝ#6=U(h FgFR5׬ʄKzn?=\;&0 g+Z V^\+2keU镲2uxwT !|' 鐈!* 0 Zsc1[8KP~ c\m W@TeG^wT)5hND9̑ctQso✯/ dX}3 kUZ@!-h|>/dH0{k$Ni|fםr’iXA 110Xrvftnӯwowp?CIY,kyg5j+eJ6vI'v5Mr5TDUcp'5xVd~`6|xdvQđJf{Vz]":lmeZivS֌{a͓Ӧu@#z DNfO`+mvbS!;f=.& W}؆:fLYφaׇu5襱 zNiۦfcu"gcZEң _U0zfgHYƋut6 "s{؛O럴<ַzgp*64d~vn -(mgۤ*/q^P_z}K ji_,ŕbC𹈫A4ZbJ)gCeG. $U1/UoOb;$+?fBB/t/p;L` sc _1|D+1(ߵͯ_女:xV|| /Eus$p 4`\;Ǥ %쭜$1+,933Ǎ`'sނ(Z8>_BmQM۱К ̴8A.WN1n-p P/ǚ({4*hờ>%@2ZhV>lZm %UEM1l*ufNçiŽ+ݒ PϺ-#Oܯ?LU 'ot!vs4F7o,3]T,PVO|v;(0#J$ \0)@/%jVD ZÜ AK3Pѣ D&=f6ѥPS},]xrƅob_#ήd{J5 ԇ6@VߟYp-(׳w3/3_eߓ,^72KgoHȼ,.AU3Ú9:́ߓg7̡}->8 섉 8[E%8!sJ 9!~tC(`щJs!.VQHC̕ Y$1=C+ T _&?^_ >`yn G×l$hx@/CwbAb x;kקM$7@ r(|=CU3eq߈݌N_UGFE| ^U+{}R=,{}z{ul6Xo0 ħJ*eY=Ǿ#2j%oT/d΃ sQwnq6 WxG ,b lmdV byznv=^jl-GY^|Fn#\>nqρL B8,7Q~q҃:8IlA}P pA?(0 ҃T9(  Ht>Z,@&󐸁)87ʋ[*LgB/ \N~Kڝ8ߒ4ֶQ- ':zԱ;R^jAɓ⭭JQ8G%{'Pà߸?({m)?"cF9rY fey& GE)af}5,L@(n`=ჭҽR%]nl=c.y .I_mc^(Ee+̔ڏ/ `&<#}:^ȨEۿxWլZuUzV]U݌Z{* 0iV-_{Yj0ldaPlK,Wa!mjp?_0|]Q%K#H%C5}}UZw!fxKpA>C0U8j<鞱CL1,өĵQPJ8f-o1 ï^ zG XѠݷ́ t9|| G$|20O{L^;,O> DkaYDdGBLXE(]VbeV,JJ)sHZiZ1Qx œPVVe"_Uۣҹy9^ 7,s1g5-UBHX Q !(J!J:N 3n \7O1fĸXz7İ΍vw`ƾWkս}ةmrz% &n]fR@r&޻| :݅/+w2TKְh ְp JN R ATEPuUGPul5X5XckB F,%i3,#@J)hjlx=91LFޛbVbfhGٻG4t/nP qf ,MiAa^55 |޳4"NfCY9ʃm3C5u>ۓ ͠xYmF1Gm;DW|s51ݳ1y1Ǹ-Y8\3M!}Aheb$T9JɵdiF]JtUc0F1eQ56lURjZC)h)ƵGMZT[Ўo"̟ +F)QI{@ X]Rl=OUe,vX5zB]f=FT\]nWƑX1v&2?CzU)YgCP18uHBM^t#xr% \Zy!4=uNz纨HrXw;*?_H9@s鬠 0Ġ 2̠; 4Ԡ[ 6\i}UtuAwGiPABn T\#@[W Gg)݌&buU1bM/+O\cF,y,Y<-53*)) ڒN`?YCcFj{9;G/y6u9뾪&꾪[O֭筻^罼8Ւuky&$΍876rF^O⼟dݽu_'q~]͚42)ʹ̩uJ*sɜ04U2)͊ipJ O3:O3Y5;O/3X0N28), B#d]LjAz^T+y$бiPWD}б.0:&*$ZбsP!1:sڠ^^THyEm{ÑT{:2?[fsIk%r䶣F1Ȇr0ݣ@ N{8DN)P unH'Sjdr_#CݎBa2KaTSVˆVգ. swj7[?bMYlQ9cƒwF>zDצ[RLsOe־3|zǮgO\aW|a:n I]~UVݻ O߱xa괁?w&but;>mJ*U,~ $L˜ _UY r77 ^8 kyA^^Z6rwX6rc{4ΞqyA{swu5~3po<-(b`Q@s`S%] l4ޏ-6M` !U M|1h*dDH1M1fY$ B4+6M" RQdɘT驶|CY+KQw ue=-> TkJ744zmhw_Ͼ6{Jk%>C'Vw嚟RV)5{JRV)5KGCU#FZ1o5Rj(j?^+J;7Y +-r9P)EEbL(>$s_jί/p/a8{[W_)Թ߄Jw?Һ"\Y" <ƦD~!FWEW2+LP)QRDSG4k_5S8V*ӈR7i2BQ=PlGU0l"-b8{X(({ W+b(6@8/݃6Fnc t8bc*_]X].z@Gq(mb5zkk:k,䛐, U ,/FeF5t%0N@%6ƽ]_]6k p:V`c5s0lC+\9Y\:m!rY:XB+_fQ1aegA鯱Eˣl"Ko-Eۘi rŴX͢\1=5V(rEWbjfAri1cLeQ iE+Gc5 "Kl\RUZVsTv8ǏyZM) %UyjJĀIځO_u$tݦ #3{Aw}b])(E8~))w>TJmwsZx7=x37Ux!=cVK_XzW@m^Q%+̹B G}& ܿ_{4Ymlr&j͗ksݯM867aX CMx~?oCP}ߏx ޏv7nNCn"x'fD5 yWF1(1Cq vm/]{ )`.zOQ{\ ڔ Ph_:cRhùsC!zs珯`;_-zvcW;jN)#̎2sX]M^TC!TvPLlD]lQN@#yx0a|PacMlkm!}+%meIFPj=i@91i@Dzהd^b|Mα"~y60f k$YfS 782=~,Mh,֤n-M#"J4F'Џ-K|rsy[meR;̟WunWܧuA>OZ2^uXh- Բ\rԁOydxZ}s >`|/1)XT<ҵ -cOkOtK HK*K#m⌧k;, T XJ*dq$`'SvPM7hV%LV/sm1;Je3.q c,^.Br:ktf[Juܝ(e08)^UUEki0LTB-k0ʃy 6넧Lٚg 5Z3]E6߇"%M鉲R]}$:F+ShecW`\_궷^Ϡs` 7GmEC 6\| Ҝ2ZB)9-wvIkl8#؅6;LcD>ɚֹ*w8AD31'cv,ORXF2%^RJ 4wڑM{aΦ4`S F ';Zt\ΰ `Uwh{ލ/ws'SH:r"Lb="['.(ߒ jеp {e2[حO [`طݼrKr0gٝTC/-j~}v*%Ox;fד0n'ԘiR;[q ځ4-+ K Pd{OHOzuRl#ݞ58¶,ݰ8m!T6g% .. ?t{b!aa wpW "ge`]OcTɮfW0 8?5iS]ѸJrb!$ea$PPi]DBx!؜ZTw,TM5B#hDRkBi#xZ.Ȃj!?ó~7GP9VIL,@Dވ]g k69NG2BB<0^6m<( ðY[:\a#3;+܃6&絻Y f:L3 i; dδEНDeshi͝U dEk7|ܭY&Y? : (8HIP)ؽyzR 7=k%z9s4V^wH-GVRBDS7O$K ik+@! i}2 )61 աu^q½gv!«9#2֑9iK$>Qr1|"ÑɆ)#dΏ"ouzqVOO'.e"! #ݑ[x7E3bnk'T3'< r+r|lA7b%8oV*1iqbbb8/~_WȲ3 Dǜ;f9^\v0 <9\ܻůQ\7as|_ zc/|wU g5֙wΆ^Z&CҀu }F1Iؾ7i1'XNX @4]5;jfa{(tL6t`ytb= {|GY;=wLNQSVz0SC3[6*<?ʡj__bBwpAtwe;TJ&{&6=i.귰$ E- m.daG^*_&,fYσU ^*:4q5,.^&W,jxq|*ś(m/-̷f \SC{>XQrHEO \Yfst60!?|-9þ"g{*nlءgb,U]NZBEAp#8YR '-!O.PZ^ R/EJ+c}Ѣ̼ Bɧ:j NxEuwpחwoh [B5OMi7q4Ёz-/_<[10zA>d&zC J.Wpv,IDόgjyway0?<(vAENs$jA7ʠ3Qr7r"[<@NVRjN< ^JB)g+lYOE]9c*OV3JN#[Ƭ/ (>MWEx@3Yy[.uͦeJsa+C>\ڞ2/?^ ^eպs;v/\9h2䆧YHfMoo0-63~Y $,6 +ɮs9"z*!Q*c,ԞO~vGw?SXI(v4 Tt!;\AP*yڞ*6|hv* ,fef^< 'k:٨nd n[=WY(+Q3wؽE}_f?1bBNKissw,B 4&pHXhh-{0N|sAv>ޥQW#XV;e[??l#ȼy 2 g hZ* NC%1?dT6Ceqgu㋻MZe̗.\U &|HUhcVݩbG~kW+O6+ڪ:s|\QR,Sn roÃ!PXHš"Q#ﰪBLaR422t@.<"l9Z)rN];5Yotj'yk^ץZܛo/]o}b@ApdPt́''TdF@m`g 8$.E˵!"M peaAKw(*&Cx0V]p8b!݈}Խj&fS3!BFۏR" $]-(]0S4tu)zGfܗr8g鋀 xsӫV^^%̽_I!4j\f2%w'T^uOO> '^`O|fh#?⑮6xUd]}l=Z9m?R,A6J;M?,zHkaSd׌;3Lc7,h1(ęy\o<^/ .2x`t.4]\`S靮h{:Hmu"M4Q|Us 'YO3:;%qO~k+r43$u4=M-C;M]eE1-.0%ο61J[~ql7Ax@ &1[劊#i >߁mËYpyq>_lh/;Isj\=ڥ}G6(oo< 02XzMrEf]0c¼dYx0D>&3f46ے .%`Sڙ WoEUw/ҳ>{ch{xMt;J[qWo nz-Ņ{+DYǂ(9;,0?@#K'a+UD3s@aԙ_$tv&b?s {Uϻx :[-0A16:>KSS"=uO N+ê .I3|߰~߰>5m6ߥKEFrv[3BtVzo6лM'4֟'hvcQKQݍfc溱s8A6k20X Ctv1zG7 k4G\m wEtC6ɤm% nće r3雯"*ix_eEd:ugx^ZN TD-ge xkh2nc6aR"g>"챫LigŎe3Hż#j:oLicQ:Ӓ𨆶ņ[7H)H={kt[zŽ euܠnx-.V֐#v1G{Gv=R_EmPR*Pe"}gC!n BV{ WqN&|ǥN⚈Wؼi. oZ%,ߛS6ZnF5Jc1dZE#k\$"=qzEr'"{̹gwx!uCDGAiDlB0HĈ= Mb6g;e;V86QکtoCcQxy@=WUEeٜNwyf~?F?(;M}FD l9}6ImmbO͓y-(}3䥢ܒOufVr71|1IP L9dEAKGVX,[wNkhds.. A"+x峤t5 |(怂gCj]Q&wSєiW|'lXK2qj9FgL*jq󬓒NQϨ2%M|JfN`EGn ȆjSv8ĻswnS3gy=)w~i쩈 !hd &`x clޱQb} "9`Z4jpKǍ1%8f1 __6K(w)"eA1#OЪ G<Bٜy ݷ>G /Hő.{a3rIB;7>oO&L PJK:c͖ia&G<[mf~e#71ዓV^r!gp6מj4'.tQ,6~L)8Ս5fXWkTY9%Iւyjj+X^0b;W3w%,"$˺aB82mSHW"~Ŭ p{&BHD7qh;Q D\l,"mcR\#H%[1 M.D <3K1P&[ ST4)y\aj/dbjs"ZfQPp?֏T(XD~0K 9 Ac D$; c] }Q FBjFIتX<<;Ql9 ju*bufJ: .Y|a(A(OQvJqMbt:c7vu^2=?ws"-w$w’Wp<La yjY)ZUd˯sYvbY[ނ&|zO^@aet++}0|uEY͝0`j'1mC@ݲaNE-XfWcTeJR8fzv(t1si5 {ǣgQԺPZ!/|ttVd 4 Q2s57HcA0Գ'>CGkC0Zb_lo5 hI]f ~OI{:[}ä&fyY"d\ w^,˦Î%{.`5v S:Yؚã)D! 3~xZQ!HJ6Voh} &Zh*4 +=>M0F7 m.qvHn+#UfzK貧ܫu2Bkv0L<Ģȗ:m,C\e|L^4F̾ɧApx[#Qm(ݘ0A7ngh6r^XFczg`woM1 EPʨԸ# uF5 LU-qaN̤P^V٨ia??3pmYwC&4ҝb7opZ9RڂٹV90ypl4rVC2H7ɢrqFcy)׮Jמ &oSCEO#`0(Ľvӈrp= TKa"o= `O$ѼC5m;zfvp t38E^t=77wo)]#<"j>a5KV8hTHlV*6ɿIGI`>儊&-+Т\!Ѥ(t[`f}KI-*\h|^ '[AYaһ:z q}u=oG,ExR~Qsm6KLKZ!lUGx~ck+mmjAKr=p9 rdM*xkL}9+ YpEײʝ19G4h.0SxClz zܐT[gҙ:Oɨr0o8a}v፲to sr&zhP}%KΘr+sM1S3CXtI>*γSB!b nSS8KM `/&k؟ AB LWPMJ1J0nTo]ppFiH@gf7˷1\%YX{-{B6kJZ9Zt`1Q3Jk㙽*4<_oL/Ke̳iM#_Jerx6_e i6 xcIF@Dw.#ى"3C;ZG7v[\`oL2aĚ;ov+>9e{1b6OƯ(heI Cks axؕmwip6%΂9Ð-DQ0_G" 5Mƻzr;l0B~ E=Vf4)ݰ7|s(|K/LG^\g }{iE&<0͗![}p,a"%@v$ 6CiPDW5l `PbFXAƅNw2o,IfhWuDC$hV.W`' ӭv,e#3b%;MB+) krE88xmv. pl U@;EA|.1 JfKm W1*F!x%t,Yآ{]:VZ$Va!Luw #n=<3iZ~kA7x^xUSt-EMƇxE_Q|,'u$U/)yt8a{7PDm%03ϟM!@4k- Rky"74#5ͣ6;I7j^"foCW-\Ok E[![k#_RգX 割Ӧ=Cں+cANq}TʆM,5bq/N$d7 mfITNރ.B-ݰ/(dB,1jRɝ}66Y3R"5!!+!J6\rWF :)4 <8K-@qx WOU xd qѵ("kdZ;"Oygj4Qrkqitý_c0 >Blu0CS`" $z95Ypc9:CU[U٨gG꜖g]`;L=]wj ߟw4wU]b>L21ęi.DJůK^82:9CF#@xD)4Yl|PjUk-0v\(Lg rE{>+tS{YQNZ"YN@ï(5xdJ7.(g2)b[l=ƴb#8]S#?]WCƁ.1)a<#q[^@68&:/n$>jWFvGyB&kd~Z(o(AM_@ߖ/KnDu*/C|3T'kE(?C߸}yIoeu/6羂 djdCDpgvJI.k*~R`0[NHm{#Ch^?ɲWóLjmy6ܲlD].mumlt,gu E,tPGg8DNW"@<`Ds.fS c]2x0">Q<33fؾ1Yz[O <xް`c pG`,PSإ*ZY' GA31zxpN%'KNB1-Ww7*,B !v 3-ТHQ%MxnvDo0OiZjCl: V521<cxD$[ܛ tP#|n30 O_JwАf;ha ҷ`uME5YF>jL3u8<;ftIώ>CsP}xZ?h6i)>彴(: zaU)ؕacv& fgGc$GgLcJLTIuՃ4` *DAcFTC"GA>Rc7GLdnavr.Do;eˤBtMmj"p8^ ]+8RJ`N1 :$K^LQmRJ,f)O6]]blZ6|h(rPKM#IER ҏ֪j4V0{ ?_^2*.ҪZDkД6YMp";poVSl%Bma7,x6d@9@(3f])wwD--%oNѓ4kٶ(iőpYt]8pʸț<_mt4%AKI` [`,؀Ph ı#7s:Z`; v;߉K+ Qژ^j@IzxS!(Q 'Q~T$oV]E\LRYނm G_JJ&lq).P&XwhnW䔃r'r6og=A.\g-lSN2dm"݂1ZzslD3^U@ڕnScn팣-e[E2~UyX_L*&hܼ}$&@H0ߖcӥB/ʙǁ3kfF.72 n8=ؿyv${HYD!+AA,o*! iϟc>JX,ۃi>[|ׁVU/8*2B;:|޼1r!>e+"$}gվOtdMC!kڈ1(DQ]bdHψKwsoG, қG}ًkØZgR$.v wJ][hU:_<&qZёy3OeCy: e;:=fOiHywq;+*̙;˲QGcʥ?+?)\-o5 ZwaȄMzZ\O/6䀹~u{4|`@bj+g㛟{*#qeO&ӻW)p(nx b[x-vW\m9iZ-Rp-IAbWv'x9 ~~ Nb<E7&sy(cb!(bHpK.+Ip0%HˍګZ@WtFDQVb],l c0ht'7;D&dhOe`+ k& IPBS;'Ҏt0t4|4 C=#k bdw~}ɭ~;&*ҹ̅WiNk誛 =4ؘ7i%!ƺ,z: l64½ȍ^nS|}")Ka 009Z/Y3P PK:nlp=Ml X48"U/Iݬ2P|`Y6K fTDD(v7RiRJm$Fj"D Wj\.Bzz<|/,Y<W6 cJUr0dvZ򹷲.F͂u0"y$9-x!DP 43lܔ*¯koteG7Ø՛sWK_b;co; G@be9\$0teyH6YJfZzkXaQx6ܠs0 HgY'Wk$J,a[z j pՒy2%Tt_Ҕ#78 Ҡ EuxNBQ>@YfI̢X7t0i f6r$+zϓ'$Lpxǘ7ưdnwMq{.3*}[Rd6ZRTU*JRa㎰RECjsG2ЌKf$Ȣ {i5^d'JiYmW UA.]P@9uc y?^#*OWςmm,^[%V4'<<hۻ5Xw:f$t:wtʟӘ..ǫytP)ؼBSգ';ز;ymDwq *@5mb4ɳgN;nUYEǼ ӐN 6CrQ4fC8C>naDq԰tN L29U1|x9K^TGD8gEOq) SHoZG#̛dpNH~=C.s^,:t$HO%h`J,.epK-Rm`8 ~ P/~g+^{vs9s5e< e! z՛lO#74ӉduJv/CԄASEn_4sa=~~/zGo2賟0?C.GSZ><1o ?לQNo念"N)Ӫ hNOAAڡzh@ׯODXs;ov;zGb)R%\H2 P/ɢ  y tx'dYbx0I qTgiIj982Ո(es>۲=og xjN9,r/F#Nt%8N$!5Z@!!Lb+^n; Uߟ\SW Z# >@D PB_?^T bBk V7(7bo*ul;]c#{ %Htic#g $?Jr?_ Fs|592a'{9)$tHtG?޴*ꉄ]J.5_ӷDG_Fj2oW[0CWglJ{`!4U+x U4!uJBvF PcB+`szk$yEE,bƠc1__|t&{?Ss.U@7>ʕɆ6~aKJ;uJ/wQ%CRj,1C/u%eǏr5llioypob$ϸ}+F ŝ l@{d}7?rwFŸ|)Jiߙ3333hu)`cR' c8>fp|,2I,'#d$ŶUo8r?V VB[! +.1[y܎3yg QeD!bݥ*U53qg8ȚHse>`>|>Wvޞ*kZ*&>ц;zy|y=;mW?hR/ WP6,fieShC4D7^J?TIB"Ta:L_R`˅S-PɚZ g,ytiƦVS(ԙ\2[3#Gݡov>"kʎw5襮eJj[W/vyW^~˽W;/_B/^wZ;[˗;{/{{/~ګ^mvvv_^T>Ӄh:?~zpث_l篴?r@ZEPkVj~52s ;IwwVioN}w O/v@w_dt+sŎղ7Ž׷ꈆO?pfogNUBh{w%bvvx~zbNū]4΋WZ]$ ˝KH=|^ˊ) gve#v;\6$\awcRػB{WWH_TCFF( IF(hLijW44yPx2Ž ? __GIKҠyè=yB3 }>)i!Zкi5/Nt?|>57RRq9Zx>Y2 hh~}}gsQ&qX1iDNv KE!Z2s8U DC[$wEv)@!H IFjֶRQ)9~w=RCvƞb) iugcCG:9>t}vMu{uoӝdurs/[Wm/<g'h}2cCeVZ"Opۓ_N;12Z^> eM/⃦dc#/oID1`` tXPtr@  %^cQGO4|ϔ(Ǧ-u=ޜH]JwR1ȆX@i6&<t! H$wґϰD'ho7'm@*C?`j܆W?1|TSb0Uq]B?NGG_@;g)^%{ '2UdJ48|q4S?hVFrT*8J8uc|»nUfm7ۮwyvsqgq7㮑z6ws|qgu7n{g O/vj{{W//kӋZV|6b^F߂8BO"umvç-$,a6h8@ Cd"miΊmǦlwq~m'H?ܶf.m">1^-Pblv>⣡x:7X̜_5{Gr(aJ_Q{ G>y*ly?T+OijZtA _f%.O z `ɀ^ 7ˈpÿX0h d@@\7 2TR%k꿔j+j.z]+4EEԮi-CZk`%uexؠG9츍rgeoʟ^1ꟈzHH# ;0XO$nGjgk&j>s?v[^4QFwݛoV'9ҳUmBym 1i7qG5(ޔ8UdN^);K'(i{Qo,dO~:ݬ&8P`>Ih}Ҍ(7ܣh=ҍ(?#H4CN}}Ԅa?ea7 d4'ǝG>j9ȟr/,NALVUie?; '|~&RLLL_CTT>Ӿ Wr~ w.Aϥs\n2W?rE[4CA5UA,FY.\fѹasC2H/2|D; ƷHXI|[ ׯٝY'*&7Y**0g!̳ 9$>f-x<׃`KҺR,й\ v+nJX3Q-ۦx֙u,v +1φa &]SEyܷ\9!V lC'FlrTE$ '3΃YI{zB67nPx~o߫o). xGxxst)jN.I  8x?99l?ݏ7Fg1( dM膮a) e6i!dn欥u/m/GBt4&x| zWFO;A҄%8tM5],5m ['\w.9+fM^qhoBOcG۱-!kC5|;ɡQAR!tsX Q_NJy΂".Xp!APn T$=4T:>VBk0a=UҺeAU F#7k`D iYTڎBUZ&BO\ q(J\UlgјeueiomJP`wKJQcxb DIa2*'-V?S҄tI5jf~SDu OX@Ӱx"Ur ϚR GԒp,Ϭr"t0zNR;,r4ߌV1Zsgw`dOh>LbT;X+׳ͮ]Gi}:)r3f+Q~kk ;OIn?6>d~Dsz,eaU`uijI@tI E9\*Lp(ے_N)-XJN Vm--#;2r)њFU.9fEb%Z^U 딱ҺЅ] բKtv.H8N7 ?OˊA<.tB\gwa8sEZ|HŷA&!He@H}ýQ Fzn$-eim]Ah\ݟTՄ8xCuwms3 ?+pθ @Lp-; ,j] w-ڪ^GIJքJ{>PX0A:'J=^qxY$i(01:au4uڱ# ~XJ\GcMʈdPhZab@n8⧯}t_J/Tu4k *'I\Orad܀:`(L}\/5Y:eKC_8,? E_O&btqBɘCT̖:g95q5J7VwY]4k8_culv:6iF텤9Ѻ햓 E,X5y5hm/XЫq1vXҫbp1vXԫݢr Hh4segV{EQS0Wq3Ĭ ,h0zu!%i|K!\p?{<dAQ0 $hljf4_ƍEozfV ԥ| u~'9V{|q) 6ݛ9s]Ԝ+5<i5 pɮ1i&.w蒪|y$߬5,x]\.D5JoalMO`MXI]daToԜbRi_ D>b=ZFVCgR80ߥЗp‰b:ˆ?ou& H@x/5?!.YkL=:gj}|mx_en[mIB" {lZ]MbF\n/(5Ii =,bHPwp%0Dy{l!u;=qm)q)TνVt}tOI?ȳhkaCCx89u*b>^& Dr/hS٪I{V섬3rɾ6_ۓ.AVPj&5v}NEtL#04Wª'%vhsrW9~&[((ߞm`>8FVjҔ0׵F=C16Q}N4l$c cwxl6+ĉv{_7p\KR_ĭ dNNbZ)*Tb>.sYif>4,AI\($@ ~ӧK]n**mG%Ռ-9f17 `hѨf61\e3e3W0UXViҐ$c?Xz)ՙ9]V2"prh@Ot.6>\ix#! &o%IYZt:F, b[*V8 ыRj4uBȔEpm`E zoZU _p^Q B^'[e6 ",;1"{!xuwEَohԥt! ?n;TZwKQŴIl, i!WyLaQx1J3%W [ٮV;!>Mo {-Ԛ= s|ﻊ? |Ll~>ۙdU8%./Dj Z_4inz$g]nl!6I!A #!Gҭo huCJ5I} 24ϩͦC(0ɒ )VzXgf.9$$ҏcO := İ!Nv} eh;ͷ6{P-V7'Mflg3ʋ7l A]5Ѵv6[?w5`* *ubz _)|utCὑ;W}ăQ&ItiC Nh<>VPu)>#?lp OѢ*|إyE-LyD" _ _{?T! .Jw8O+>=qE槉,OWo[f:G 7ֳg^sFEՊAKYpĒ)&% 2=cd= Wqv8L_Eʙр ) ecI8*8kVWa&cVwo`g݆jM#[ ;2Mڞ""ˬ_KRxކoy,W-38:劝h Bi\BY4#R`0o{6{EFӪ7ȃxK8AsaYzy_Ow곻t1 v`}{PsASNFS$La|j<# ȣL"7i9%g_U2QM=421lwRڄl]q&!r4H ʥw6=c`'͒zfDۍ^nLį'̧UV1jGI=.(vl /J]J_9h ٞey<SNk~4VN5ur(宧X O♠Iؗ*ԥaÆe] U7$諂} 0AsӄU2f.ƒ=ki16pTYԝ`SqdfU9r1:YlKyȕ-u*ؓhi]*-uJ kvRBЉ k+j)U9vmo-V_y;B}7Rqp7svyZ"=p5J!Z ׌q{$H,_ Y/0?6Q:ͧW^پP {wX`(21m}{U9A XP%0htFىp"ΰA3wǥk܉e'/",`%+YI4~!K~wwq~d`ZFFtVH&wo~p1$Ð-zS3ϛܸ̫xu!ax*MLNQ=2Gu;CZRXx4W%AUlzbW)X-x+ (wv4 r+ (C+O, Hg &U0eM OKso2wH)36{Z}7425;}v溞H3;`sh]9qiYzJ@,+r#jS {W/.wCd1(TȨ,L,噶]9P9KM%ZkGLz]" N!8 wfF$'4rTyɖRl r/x,G> <;INӜ3IV{'(j|6 }4ۓwJ@\]y˻VoϦPa27W4vUlF%~Skz5Vp|,F~){Aɮ^/Bt쳮*g,yA{Yͪ.\@˗5^۬5?.% 8 qX8M簔zS68UV&_䋊%L\I #9V!cYldLJmJe,KN 96OHQ_y٥w OHG8?B `]ѵCR6 SHѿ-ĈCle5@ ]eE4"0ơM{&CGJڶOE bsцVYyXSs} B PY1l/oӣN32֧$@&"8JYy3($oGL9u D](ay< DKc\K&2;>q - PYvz)Q+>4"SCB~w^,E7ԃ6Ur2uN뜒ԅm̶PW6>06ܸP&9L^rDG†URJT`?q@C4Jѕ"K@ž44H.<DYy5C|kR&˶3bQ9%2 D a<&Z1Y{2P@3U:%1[V$$Zw/ߎ̿sC>e_Wb0+ βt&؆:sHWTJn0+Zҿvt)y ^iG% }wEGi q!H38'U$/롦 %MSH;x|ږ"ˁ©ȹEN{BTF#@w}rm=ri~^Dfo(9q+YnC'{,΋CRH::\rcet1;v"S8o$>'y lk{oCYTe$JU<F)3[w&vt . :IR(|uiPe{/$3$Y x2{h(R[ _,K}eHz f7Ze@EހelO7jѫb~x=kfD`K^q2C_:1+^($i0dG  2y%LWT kҌ߄5abgs/Q:WG;֎V̤}1~:WG;֎V̤btTvԎ NW)ξXBI[p[wom ۓ+,}ۦ,ɥC⟥iC?ҫ8o p˪2l4 ?_3i_L:8BÐ3,JX)C{6c "~3ukCUV:pWdƯ=5\n|-pCoNG ,:43T7_Eu7GQ,z|e|CLM@K?׳Ξutkq]Uw/Kr10"Zf2C{n5jE.e5 c:d4,&2WUp^R 2ߵsDb (9INxvɢ-I}UH0*f"\B2%p=}|ycpu_d[*E-.z?iYD.{߽A .#9Xmre-+HyF6N08#&B(6OhχNx$շY 'U=e8J|\ViO,-q y घ&2:=kC.A7lleD܎ot)+f7fu|̾Sh?kwyR?dF 6;K2!.ĕa15!Щ5 ZBQ3rg> kD>_!Z]DMfa`xܫU@?ԥ•cN2 dT hd/~xqdb'滶?8m:mWee"-NX՘@ѱYyo2ĭSvb]+T-SyLv)K-U{TvIKb^Ei dl6>b3wbj?ս-^qsj)2b]_dCՆKz[u;JtJkj6pv  wj.6p\UA1lia@~kk#|ATղLcz>H!o`!Pk:+=Sx-'U.a'g+=_Wݔ[Z,΋M9HT>ίZ8Ь[qR=-0es/v2s5g20$K- V_ >Y12kCRlP~Ȍ*-|#V#v(+a6ȅ/ 4>8RBS(7:þHWBWs=E ^4z!kA!Dm \WDU].Si!F KMY]mVwl6ѧpTaN:~ߩ2$vHӹ4ʮBϞ%x7IQ|f,E k!;H'НްVӜ"~Q:ՍA@n(4Ѭ@:zh)P |}Tvޭ;W<y ,)k5>f3.qCGY9atDVL-I3̊QݔML~#lJz\Nh&srl6W]Yxfe: %(KYI4de8738B+l|PO3Xəٶ1S2+ 3\rmb}L˗?UmPZICS\(p 'rs6 \q@X(+qF*JXAi\W -(-Tl`-J*R:? 2,W߳kh^}8Ek:F7+uA dVޅr K=,r jW*#TA/ׁ◵Ώ`]8,\xakGPe1] xi1vb½v .'| [R2O9,*?R"H,y|ƕC6U B"7` .u"QԊ @ugPX+Dp޺b]1G]DGIx&M,xxg϶w )yN,G-sScW O_b SDjvfgA퇦~v74HpԎeޒuDW: dxH3Y DSU0j:Oh 8xFҠVى=D\@$Iw%*40!iOHF EJB\}\+8yƿHD+u!QtKdU8 IZ]` !x1 P.!zz՛$LP d9p7 qI;:-hPe吧%O#SwFRדNcT/;"ZiZ],с%_rfH/7eA1їTNmd[^U4eVH=&%m|[|y.>2F rYlhrv)z>IPchyioTB}7{S2< y9K[z`TvۅyqD?H 1VQp[-"IiY5gEdS9xVS& &mJ9n"[>gZc@=3)e"7 x~xɲ~ML%RɣQcL=rnߦOkWa|;NbOt"g/4N6L_Fu8 < !?̷a:.\5;eIb&-؎Bq:u = ^:Wk@(IcV4D dTkG>Y$5*^ +SVnjEy|XplZ*'ץWRʛyTx*wϷVFgz! j>i 2 $DѥB.-*88tt9.9?,79C,ܞdMzoɲIkZ00||tWJvx2!Ec['ӫ}t/7\,TT K̨0fO.qaEr.g8MT3Eaui 4xW%G4kW!^Z!MhI=ص@^}Lr}a?%UO`yރt0CceƟ:92xq#󥨐瑅E Y.l/UH^uڇYeLʿvz@&y?2jZ+(~9:dQaeJ#NfUL ? AGJR"$"/񲷯8XwFqG Lt{}'%8>^HvcEwÍ{]j@!Cz+΃l} }Az0'>8|}q?5!߇%c\".?XW};+CXo~$y+˽:fv=ك?Z|֧:>- nMQ[|[rH:@[ 0mjy]EM]KY$eʏ$izwLZ\va tM6HxUl a2~l &q@QuI4[hJc/0d9j*7giy7~-ATn^EZmh9Dmbį5 rrGs80z u@^8"nH nJb1xtJug(N~TJ`դ84p7@zMa4LVO9xJɹ`Ύ$ [cU~$upR6#bCRVsIg:%kG؟F#Bi70,fΪEirLؙG$̑qxO ɥ,TsYH*oTtBM VoT-CUcB&0(s\`K)_ 7/L7r B_"ߓZjr1UL IK vjƱqL"83k76uKP9Eɑt%xKQ )1،?%<{-{HC,$y1BCl;l{:Ni"rJ1}&:'(%G$&و? M84dRF\~'v\2 /0EH-nB76Njaz߰ӑF/JcM YzCkRHIi KIta}B-c~һ9 ᥂$ O#Xba`sPfIx̙Ěw[>ϤH2 SN*ж(bn E[eE+QVē(Ai‘Fm1^!m<'d& .o*9,#d5o $mEs8oTi>Ԭw2+A(E^vQqLFg(N "aݎ+/x <Ѐ$S.-$a/s53/^](U MMTQ)AK]yD#媶MDvʉp!*Uhiq7;ƨ;s!H4̄^H5ss;}V%8s2֬p/e)K݉Ḭ7YhٵM] d?|`{>)EvGgTbnVgw o`ń2˹]13Jid]uIf߆*&\ƶ}$& ؊1\-9Yx) an#[MP*O(VyFW/ډ뤜YlX"O޴ymrփ4_Q2h7d?ȏͰmP$,ғl~0+|n;Ř)F&3究:4 Y)2Wíg]ȦA+Z_ύv1݈'v;Lz;z"`efz}zjcGz\ s-ncYl⦞⍅ D~(f_R3aF[ӎV#^hD(Q/6ftQfF;DhJ-[篂h#8qJV);SpmI-D-h^'5H{&wZ Yڤ  Ĝ I(HDKMҰ&08 RlyI8 bn |5Ux[dK*ASo?&aXprQm#fW=Bis-qνXʌ\i_JzQ`#fQh>A#yAd1jqrٕRjQcTV$ -Ba8 Rt.خnjJeCe?Dtp.BheIdh,ռ\ ~Ъ\%bi:j| BT %yټk_ŗ M?0ӅXOwq1#q-[/*^HpɎ79Ub4y}q9'S&?u2 [F 8't,l`T]aDڙBX$D1_,9n!Z\~/p8 k=w rYzNh3ӊɮL~spRwE(3\[hnC"{2<<#F7zg϶whzE0OBVI7x:NEM3#j D>@Hcz]i6b@6: OstҿO-wV8JU z>vUzEhe!G3((;Dְ/Sc`2ץ І>uP ` &xd8*їYJhihv*Utn#.J)& !\cIVR$,$VB b 5,fyȬɗXLrSLZ"9·2~-iު]@9Fxz۽5@VA!qJA] $3 [vh0q=}z-ֈ{|-]֫?~oGPxf}ZĕuxcX[Z|D8]1-?nx%>ćcO=1>uN=MB e]: NBDg"^)u;n#w-Wϰg'ysܼVqwR|6☦ah-R;Kv,zf.Fx?M.^ A]Yn)ܼx=6 a0uwߖA-SlWĝrV :^lW1.aipnc K9Aw~SB&!nBno?(H] ղZQȂ\(h~fOd*Ɂ?9l/ݪƐ$UkpZ9m(cM6Ax,!"l)Ҽ(vFX{MU }-&Ҫ8`s&5 IR]̆AE˄4v([MI7N'tj[#H?Ee{{\Mz'폭PxC3@P(LY"^ƉzS| pÏ"{v4 ?_3KzQIk9Gq 恷J0`zn|%47Y# sZӜ[i‹?WͼXɫ\K@ܗ?Deߢm=~7; w\=4QiBT/&V7'?C߫@3s~t-w߯VKâ6LtO=l_~O$U iĉz w"+; _JB]NyuA 6LGNx|HP`FlG~򩠣8a0x 19HI{ܞA:<`2T=]GfuS ~ y8Ntx~‹߼ *b6`Q2yAzz!B( nHR1ǞŲwX#pn]v0l 8X I=lf$VAëq2O焠Aa ڕpR3@ { ?YU6z5ڬq ]ر>,tQBr #FBOGqr`?%rl8 FC^5[ G Pֽ@VFrJVv 18 88@":X"E#7ADBx~*IXe d  $Q2uxAE3_RH> D^5nu ɠ槀..яݱTf luN < @QOEHB%; ~yE έ,.9R޻x\|Hq֊b yY<,bKnBGrf&Ea]6 L8s׏0tR5A҇6ͣaAސ08NfYhYj+[KY<hnuFǬbBYa$|d7^ݲT }f19ָRx ksM8 \eAѓgS^տ!? ^Kb.DXNP~=W"(.ρy߽agDU^33QI A9i#_12Dh( GIK@OsB 4Yů~&yZ*k;&=xl4qZO21quc4E2 .`{? `3q**hE㻬Kt9c=9. Ӣu{κ^D3)r#ttɈ4IT53IMfƅY(ktzZ}oAAPH`ٮTXB_[樕0ݦt!ZMU 2ښIYďf{-2%p@֓[}6;B篰NՃ0IoY~I8!ζ-6juSħK1q` } meKX2T.r326{?k^ɪ۬ołZr~YV:<aDTpQKSDTV/ݓwVͣ^k9n9qo$lȈH|p E '9up=~F hsJB͆\(HҷFqYqpd=1U4$^U% pJLiN$#d2.>cfk.|x&+@]&|Wh+?emy!ο Z<.5p`2>̟ûcjj,[^6#rLed qwMvX =혯@?`+a2@6 kP@ `Xो "B`n|,glRPK|):AmDX?Jc]%B-IMy!qXT+Ҍ 4`_1J{/ @D "<[u 8YQ(]8CΝ‹q0/Q5AhHȩKEnB̊7V!(N/ W%dҿLd}<o߆GaW|I:po*bN_dk cGIGqGh]iѸ*8DI G"mPĞ03A:K}*a' 0Muvrs _ qi^=8m qOG_ߥ،Zo:=""j>@{MDa:vlϢ$O&wX3 Q8BfNv~r4 cb=\48M(;GgFM }rlrT`[~5LżPRK8^ m4Xmm{26+76z(v _s! @PU6SG xp(yzx <BQƄ@h-:Jp MY%SlGzjoAq>N/&b փOׁ?fKJm p!?ץZ7o i b& ~t8ﰑ P:FI&e""nñ gWi:K^drsş~vZޠ~Nq j=3.az3|{~ɰWLJ!$u?|o7pvzz\aia IB+p4ںީo5K}wM*.h)GM&qvYiU:$YM8"N워|2!LHTsYLHH!xaL'D:Q8k/cpv-į{<@G7'F֝^5|rk=T[ON.ꢟkOsmAC Amsxrۖ(I)eTQ T) G ڦJ1!qi!)Պ!01H9x4 fD~BcnX4O/0ѾH<"zvz?kPC+j-6(=pر8w@OOQx>'$ oHɭ,ՍxDJ9=w{Hs"|O(k _xBE0 Y͠,Jg89/Kur|d|haG|E[R7y ~{SM] [pIiw]*Vv˟QƯmEfoB[{8v`.._VÓ^巺'ho~2-r\4#˚qw1OwM2u0lhJ2CI< u0l{n`24.+.mĮfe=D]g1 'h]kOl"qs|K_|`% Ēlz4Fb {7^fk}|@𬏉Mi$NuZlN|D+33竦vmg0 oC(Ev{slɣ M^A{9-{͊-86m 1'^["U"oLA"BHE{@{-&ffwi ŒH4+Nj{t[mP!fh&RdN wy x-»{zON 8"o!sڦ7?A mϞ=lHN~] 4ɪ_ꨰR׀ @XU*&/;S'f12iBӄ1tfuH2q4_B[[:p?)';m[."y߶U#Ӄ O3Yo;>?ZWlpߟ :Tc4,6=,ɚL><2!h6;w\;Hp2ݮ;ٵy+Y?y ?. M8<]<{V<&t9H,O!P0e!N\L\5?#[}C+\{/IC3F\o܋ߧxdv>z>!ɝIH Vf O0?6.-  /"'m^)z%ѯhE\wyJ~!Xk$`O;vO}LP'{: .{J+"5ygCO<6!>ˆ7:$$  D溯TDL  "6}kH0"цIؠy{gBfH8][-x`/Yzu4i1rtT! D:T18!RF+<qh7}48q{\D}m6R?_6f 5ĈOǾ?|`Ke>H0"xG{,:pQ3Yh*"pM7#w<܃ncdlUSi}y*IɲMG:@0x!&Ex;ENGf 5y~ @Iyd$'rϧ"L8ǩp$36Bit|DP*gn6vspREO3'8bLx=Fkmp,@!j Ip!d9t`[$OlfWoEG^{u,b@lXt`I0YwI!ɚteٍ`b_}scqqYGSCERxgYYkAHM7rQE΢`a5WSM_JRj 7G"E4s!8!+S3W{SpWN.(w{s:2W{S0[)˂A{q̏ھ2{r `^]w\`=n qW i;AXiA:g|BJ}7 萩f $-10U˹ś-ɦd47ON'a[6dD`0Fa qrF)^Dht7@(hQ;X}/_' $I>Gzp`q^2w^t+r4&@0}2a"R?ftˆ6٭s4Y N=ȮF8ERf_ GE[0{]\peuыLVVXukkwZѰ*|ONU`F5{;`HHq ԚX.8!v~nӝ~d.mRk.t`l^b*e%m<weAxenLqxc b(%ͱ<>|cD^/wQ8{T`F$mg8h5{/wD ON=I,dIkYY8HhiFx  H!xy"O2O J+b8?ÓS,q3]DNb6%PT-L/A=->I6J:O5z>*#.h]e9'eLjAa ]\A+X|#]W[px {Zش\mHwґeIvbGMQ6wtrdȖ5I'Uwht$ڝX"BP( ub}~||1(4|ð k.;u<;瘉|w|_G1 @Gr|5MYgMAo>Z Yf9N*}qSr$13F2WX5j6e͖ ݃CNܟoMFBvñ&5R޿{qMOۋ+܄2eu"M>B|f> 4u.45NB]3cz\h oZvړ t1W;S_uB YZ9w5Ჯy}n[i#[tNZMtYUtcw@gL(O̲l|67g#dl'JKA3弧]!Z^ Awx~tOPJqB鯅6 8ld x¾;8If~O\UόhPDK݌(T$p}

b0f>J,źu+Z6, 9{ƝT\]jJ+z'!|0Ӯ^p y嬯ӪHgʬQ ŠfÎRη6*Y`9 ;}iW~ƚa>S%FU !M,lg$*8~UZ"7;dN fXGfx::W:u&NJqiNL)bC]=mC(qB~@Oe=4> j5?"y?*A^xuX@ eFt=\˶]edC%g!gR#Of=C( 9\[GV1Y $w$6.&sBet%k7Q1+臨 [GbNɋ ϣ4 3dk!П xls}; puQ@u98{頖Lfzىw?p";f7qRSbg"{aRJy1(-às+c{*e gxw7S .[(Lo Ƥ =2(R¨ZQx[ǰ{-jSe 쇷f.Xohݹ< ĥkҕ^%7!hw9AWCnrH/ 9Xhiw3൷'Q TNTq3]b큭.%Z/G٦O4Ul>|L]0<>C[`A%.TrCG*[N~1>2*eq)F>lE $JgΕB޸M*[ODhp8(9?\9UP_L\)CaXWw)/yl2G6Wc@6ّ>.*m_@Rhty9{rPEޫL&I:,7S~BB(LBN![mˀMfC`tQCR1%r+E9C-Y`L!J`>Y<b eQ:|YևV%u˾ +1,ԝBQEh$4}eur0(lޑ!#9MіmwYHxg9s x17T`>yDk4TggHtXor`S(BLxu2Ъ $ZZ,hn, za4nIzU!!cR})tAtr9Usٍ}4g΅0j2+H+s9QVnY=@i i|y!r%!_rNxeɓ[th2a2?. |xL?X_[_ȼ۪Kȣs'w7+}fULX_ E\Cfx E@tU C'Tm﷕2s 9 eOq5+t A39J٥>[4MO ]Cumj"Zu]UI.G%q2ݕkyڢ޲oi@APJQV꯰ww'㢇YLK|+e|UoM{[Wt[ъG`8r7qSϓ {E{?}n݈/Ɇ@1hk4={9!@0[\LH !Ls+`(.jAH G]P4-d:A9̊I3U'zEHng*Ėo95y<pbo>' P>y/_T an} %-nW z'Shp?mjP%,{6!C/wv w բ+\rxQJe&`Yx'^(?ܩ#2jq[[mٙnxY:lwhc6y&CAyMiR\h֪aSe)w9Lh &S0oyN-/Џs,7Sn$B _S:"a' bKؔfzu'Ø 3mI#<}pd{T;'wmêa4dLsl;K_cG1S$r߆hIy4/>x'`d"V$l\Yqpȵň'x8&/Fh/`{qK6iv߿{C\Po5z c}Zad#O@f:nޒh88 [46M/&Rc4I0#@4۔WH0v2N d|_:0+DП޽! {BV՟c,[dhfz!Wg% mJ D!#D4&"ѫُIc4bm/ $p?)1u&u$v M <^mq1EdAb'7|lc 8HLiUHOn#D(@>d$!S)q`>$ߒ BIo/_kqY T]?pԷJ72MYYLqGB7'?@!LG!flCk ,TdvMr8lu25:N<(IH,zip_ȵD&ɿ¼eDu;`.ed[DU,+PMw<OG,cS s\B{\“CxdW?xR-I7 ?mXRK; 9PGgNU(LܩB(`.a(/.Dg%J4DdRjj:(rf՞L.4{5w9!~lsKq;AkQxIh]rԽ;@}u{y-PbaYg6kɕ4W4wB1LSZ7Sz6mpMJYn_o_o_o_o3|~.꺁Tܗ,  gy?";Or]/CZ^zJ#dgdl%г=#(f`Wdsz$TB&2GL&kGXn}M6 %l)Oʪͤ?F^Zw&~] QsϬnOpo3 8sCaNhA&Wwg=Kk 6y=ݣj6W3ťk*hCUǴ/ܶErl 򊭷|{*]118GC_ Ļ\_r쵎5=v5D ϊ6QRKS!c"wث!xus[lPyi*~<~Rs \srs*玞6ڛRxߞ͍W3dNqJhhA-rѱmies|DF̋T[˞K4wxM⡢cJV4*qP\q.A`P,n;.V3(YᨢN:+X,s{pOԔʾ:K&2;f<mzR>b#*]>r9|$!qt Nӧ2] /QM>o^r_l<'g /(ex&Wkء%Ԡ8c@jYĹXڥQd2M>FF" 9PGbEfϽia 9yP&ߊ }Qh;ס5R gWIm$K4*'Ӱ{FW<7 u+SۆbnD>?Uy448#LЋ}rO/c/\9݉BFC301RYzP>@B`rK &Qj/|I$}(nv^=&}̱2"aǕǎ4j>YCD@?C8zn>~qý%v N~ GF<%S8li@>`Bş9XZ3ZjlPN6b@_:zؐX _o6_5<+Or)nDCkLӻtt j_)E~=b1eM]>"V+E;5&<:{!C );Z㼳(Ad2ÎED/Wxe(U 8.?vN[ycpEඵ%21&,qc &FppW 1qRO+Y.aXlQAZu4yy-DSSD5C5s`b}7Ju(kYYԚ _XtƼ7:gF>ߦ@DOK@x\1> 2 C-W:*tB7jC|47HhQy#IO:$S"Zw͓Ve%1lz@3+٘![P:)ZgSҙ3[!Qpz-Z:A\&IrMSYغy8mMAS5gr‚Waga}pIQXaOsnO yQc _qcEQS|>atje.. Ӱ5^{E?DVf+ڀ/*MH[tl )fEסu^kӑY^v9 7YK{s"Cc̈S9rDyu(۟^s%v'o)睄9G4lyn'[H7ێ4ie3>,E姇T :!2 :LY\E`֘7^ #YQ8 r&|Gn7lzrؑIr{ŅȢ&9OZG*UĚI"r`@.c.8l7O;]gmrgGav74<ػJkՆԾ2S7`@8eϭ_;dj 8p^CH LOx~\\ OQgZYz^YIB]g 'O=6[}C& I#8DZ=Ѹ(ȝuLD)h){.iȇ<ڷiG$`FPfpK `i f2埉!; ~ZP=%l7>m!٘@k}lrA)ٽdQ1Se*49ʧ46aŻesk.C-z,PdG9ྉv}GAn2f1W:$&Ӄ`pD|h dc9@Q;<0dIy7fh_ JJLSqP=c[J2&5nRU֊˟M5ʔtÔk-JQ&`å~U7Fm_{W8B#@ް惔S`·Q{^yKFlu+'Hڏ (D0*6 4LT43B_!@ރ7᜸;_/k:DDŽS0 cP"#}Ҏ#B\ ԤZ,˟,;g''^ٚR(AМO&Dcru$ʃCo9$0EJ~cqz;W{õsLMؐ؄+bfO4@TB6fSf ^m"dL~갊#jݬbCʿ{6x ~r>:>}^Rs~|6?;#n^FS VPKJ`ic%h ,~zIF ]0)-[f~'Y-uGgN[B,6G̵UM~_·4q4Fv^bb=U`ߡFqh?naXV2 FS9i#L4&PIDhR[gpT>6&9qb1d>Tı(@&~xv?&jPADY5~گo1 T QG>j.5{X'Ed5i}(ʡUa9N9Ƴ2ɧo0 0l9.`^giʕ62 3i7ph.U\#8>6Nm0&^4hdsH'B Kn,if4Ihmσ+iuyqpq0Qy ,u\}V// O1ku4L#jur6A~ee* VY[CN4qg(*s)&~pZF(Q\ 90,7&Lҧdzd >W' 9ɜ^p=~AK<-=r͹d3y|2.b_Ƴ, L&O׸J,'Rkf do;J;{*!PnҮuhcpd2Krfg̬lɠl.dWq]Ģ:K6M7٠(x?,͇LΝu-J} E fAsc#h`?[sx-HKa֯_~ovkwՐۇ'O+,6_ et`" 4 Kq6Gi@D]p>&,j#PqyяAꂁqx[⸈eD8 ,飞hq$SMyuW=x,w[uzH n85X aنX5\%1xֹuZ<3{;{i >=Hױ*!lHxYG|0CZ$h:H (:JAc? /1:j_cE\C:d!6S͓6H'r>*McFX^ ʶPͼݼfBv!.'.͏Ӌ{{m 1=5m1FH'j룠FCO;w:=eʎ2:_4# bydu798GҁW,Asmu&%ɐkp]xy eFtAn?a88"*g?]_.y <ɩJPFd MS|O?% !+"6\2W^2Be]#|?>_b[Xٻ;ֆ)4HĒCE+AEE&_0L6.˄Ź?`1\~PKv!j@R#Z +hU>y@z:5-p [ic 5uiuÓQgm)ѥ·K߻V11u:a,׏sh ~)Pj%:l!f]`VATJ]P§~eXnJxו5w*pmVH;vm]~B$ֲ.cRŶFMϫtMWPHvc}mJ$z'uofA;r>>a-]:,&K]W[ͥB+}"G]0)ZY_4GFFN JP/2QW a"Ze+?՛ZzVa!@9~_{ϑ%ǧ%^[^F9* a~d/O\ 3C\HK }WMIyBJY6ָ|\i^AՑpKX"*F,2Y 4_jWTTTQ*v JL%ܦpE6,0V)x?!J;[ Z?I٫{wX;G!Fĥ &[-Fq4X&J4L ¸L"{Ä:=踃>ำƲXPwsZ\J$MaZP)v1^U+|$z=`>ׂcx]jO(SsZWq9V|x-Ze%|nt"F m(}dim u,7D Z XTCRld!!{98;|})~eRC1hA׍ ɇFьa ucdv:g|8X/A_Hwh~wL-rxNCoТm [$LiU1UC&J]>J8%S&Bb % E6YV!";d!"=+aq?5[v!U$Ikp{ J'T.j}~XL& 3eE wΖŔԡ*C[z5u 2q~^ma;8Nt j[ n ք6(L+FS2:h4ѳN .LC=ȯu Ar>eL. . <??ǽ`FY<]F5 r ;6Z%a|Kfh6` (/8䋋>fgAGDYsOA]LDkcaja} Lɚ-Y!ԣ Zg0Gnx4@wv*s AK C늅q@gh)&Ga;0S?h(Kuz[ НpL&}8t1E79jkKz<8{>#;PVTCpIQ%?\>0t  3\ Unn@1V6_73Rv$ '8 LS<~kN/.j往!ٓ7?1ep eYXցPhY߼ 6s͆F/}Re/}@d7Ra42ׂh:cn+5UKsZ;O'-ܵZW@vWs \*r( &1$?\ &ًxJt4#.0ʉgDDr1 R@ɂW3\%~M1tsOVnL% 7$Oh|x-l/%dڌ^lt*ZwlS!15Y[Tx01QKXI1ߐV-Ipm]GN9,()䞃=KQ12Zޥtyt6Rͨ& ,~eqZwN`k+Wڰ=))k3/T LX/*`&tr)LF&z5p۷o/‹)pIDRRS?d+Hm2b)Op,14?dɉsN|< ZXeOl;fg8䐁̂'8}@bO a8LdR x9[gi}1Z\!|[ϔO*guXHftW=9=ЁpWNt~ ř-#u+ .6| DF P XH;GI ~a[XUYf{@b/شکF߬xE"'tI[+Nx: ;&~P³n,d7^h ut! &O! c+ O0RJ?ׂQ(uc5PZ'ٟO~3Mw -|Hς(Eh^7m}娠L8gnC)Sttdx ]e4 :vWsBENN4|QxVuJ=o˕}VPIz|c]jXt.h]e8X]Whϭ-Ƥ"o*0˟"!F[2R͍ %?:4G!-QJ~Bw>mW{C( 3',o7rP\ 0)V7O.b[Qo2ٵǹgP* qX++}2 ܅\uchz׭Ir}v2n R!q8FYF;<$^k?S?4|L?E5J_"gE 8j5ţsrcj UD5zk?հq^{< W`3iˍx_)[Fod7>F9t@}Vh6è߇BE(C:`IЗ+vW4,s/䳛6 ͣaЫ H^2 |9{Fٟ>x7W"7?š_nG|Gt>Ƥ"+tߖj; l0Og:nXI3|dARxި}N@gAŒ cMbw@v3JOH^@ix~4ԁBLM(AIȦ2 6$Ƅqi](-{P$$Pބtg HUx@M?~0J SKx=otb #ŤIBگcv$F&yXre^Xk[ ߏ4AL#J\MI K`E$z; C`Ø5j ~_){BB4{!M#n),Õ$&ُ|?B #'oK̚ /iIX5FFg/"Ѐr=x>Ucx aD >~?Rfvi ;{<2M=x^9XEX3t-r.8\i@nZKY>NfᅟJ,P\E*RMnqMrvM99aA$^J˄X#=Fǟ>_"IL7ϰ?~j7lJMnV*nK 4` ݬeu\<`Y* >*.k5Kbc%h7ѥ4\Ȯݑn2P%A3ˎDh,*EN}vWj\r0W*V r\ނ:.~/cDAD) ;,'TWPDXKQ5 h+OJx8=@R);$fͪxg<̕$7"^1ϓ{Q{YLVE U>v&X,m!{ݾ{]8{iێ^J&;!}4I9~AMez~,G}8(u/::u +̂{{Nx߲nGZP/#vΰskF#[5i@nA.a23p)qˋQ]}{qfz:Pzk_ cy=Tiώ8k솧"ZG]Lli wNzt׃&IyRvȎv'lz,dxKf%{޼dzrKf1_vzq w*x8P{9fz(x$2:2j2|Z*%%=f{gEt#o̠r 4%H%fێMy,{=es9f'/.u;s(H^] ]bc:$ o®ExsdH[A{ I師SZ? $͋\ ѰY3||z”`1O<(cZ&l}l{Ϯyqs{^ $^a+L JeaP ~Swt8' {y᜹pw"[K:.=ԛ^O7T9ܩ?A|2Q՗c`> b2)⹝Xjar|v{ AHByr3V\VՂlYI@֖ ,hy (tZcr|ؒl@+3Z >b9h?nJɉv(J#f XPEHxu,i| xmHil6i Id+fKaBZtsfɠoJ%c,װ_'sY-BD caljQ@X=M|"$>J|#sp˧ jxW߃ WPF UJńr4U5$CZ֘hakDt"@B`&TNm~406 ޲ K?}l$z$ɟ.L~l${ /@^HwBu\#pUL@wu,RT/' OY8@^|z|2&a|UȻUM N#;*5[?3*;TzmQ;1DIpp]K #xk0d/A5d'wY|:um6 LS7,)eeV %XZJ1v~JUmt0fؘlYNpdY< T,5]zq1LK:G| h.n9;%XwGi.qc=Fl>&`=G>+00lBG~~,^ ^4|RYd4IҒMeϯ?PH NhtGRZhXԔeA_5}?Z.)gҲDLZ'/ā۫!TkkzmP׎u3 vZ->ԆW;ݭ-M!9LS6fW6/)J4pDp.(&HOWݮM(.5ϳg,UqD!ΪRI1e͜r,t(ڀ<4I|h6\N1r[PK}N2>7F|bɐ*h2놷d::ߣ=|T. SNmO/kkkd]!# M5 FX< `Knhc'K*K8޾!T8Qt%-ZʔfTUj,'ВWg˃  ʏ=r!'irq0Kb+La-8EN2-,;9 ,r] t6cRx) 'y-tH\ &ipnx ZrD#*Ҙwً v ^Ʌ2d$IF {m)"eWӪݻ`UҕG@0G 3zc]?nnF|ӭ=^̗Տ˨ArYFT.ҾhU"MZj#j8& 66^m.F"cSp6B戁ʞnGCEˢ~Wୄp5̠?B޲HVQ *!eR*iHbដ(6O-]2h/Iw1'`m؁fd8@sW<]`,."X"+ $.eas#St0.؅Fi8]nߔh_Fi C?@6g;2-:'#△*%)^LI*'߫6F12ϗ,6MĔ8."!tќп.E.9)A>`-tPrRf'-Dx}8ݽ!'ZŽyҜk<7B91!&;+]K;VKExWYEG7'co˭"_ k~ M8/l@?%uy({,Vu4wRyiw/B=bj(>.cDZ鱼e9췍IFc@RSC^idñee/bho8>1eð5.Ʈ&.ƮFukV^Z\{b]5s7, & 9n ގǨۀ,`\gը.scA CDɦVaUܸ'j^i_ROyB6hɓ[hk jG\Lx`ܶY1WƢL @Z91yg}a]@. R@6|Cy$GZ*$+ .AjuϢ5VՀ&R:k9 ,ꝚxC;Wm QL(e rVUyOc00]=& zy8|k瀷pg, )9Gǭn%wݒbT~JLju (B-J>[5Oʛs80<])l;>>ڰ>@&5~kyB!@Q 8 앸(=`N{%GѐS0|G>ir uZcFwiXn ).*U߲׍~=0Crn.Im !&LH6I,:dx[h'VmıT Q 9ii!h3#dlj ҋ`bj` . ~ w<-H7JNPh yc p:|K6 YW\ūQ8e&4F? |滝x-9 /yu/ كs?sESh7:r&N;0n2 EXB^KHL גKZ L2F,ĉ0 eTH'Ӹ/Q2 tEdl.3MnYPF ֔ ::ިk 1baY(m3Oh?Eg>EEV6%B$dz^b0zۅ߲!w J ~#~ >P>a X>xib=v!k BZHzo}Dc0eH-Ɯ)yvXz=kbބ˕PK(Atv_{W 1/}LLC!a(G\cj*'S_Ą2} o1v$--GAW[mX9C1~/LabbvcEhL(SǘMR`%β=\8sHuM0+aϑvIhW$e"ÅCC]qn;h;"xb3l"Uy67 dyVmFDZ۝8lխdk4k75u- `jRКV[Hak6Oi#_&6oQ t%/q&V:4N[~rVviH>xas]`}& Pgs]ښZFkЃhE{Ob(21FOȟ,g,/6i 5.Βu򋺞5ay?aig47.hg__df20ZDS}L1(/c $i^!p?%:y#J3V}Y/d\X*Nce@kǐfzM̚b)њ7x aC,))VX]V yGXO}ptXD0Ϣڋv 4%@#`+jڜ&]~T_q?^gg\L"WJT_qTB/ #yKV7&e܊3 #NPb;#_7q{ rUg,ݮͼvmŀ&~-D8&YjlⱺТ!PI/E_&C4$ӝ̦a\ڢ)}A.y3̬~E2si͇SCz|jg2;b)#0,*D&he3uipa+,6HbYE}Yo&HbjP\8}v-`B$'.2 1!bwG"00B||")qWݚْ?osR7xp]!a)f.fTTNa,ZֱBwHlCVfKDeb a Ge9V\ǻZmJ6y#:yt *|($DŒ]|,Ngrnm=[ؙz4^⯷ӈ>)Lp!( B)WwTdǻS(T'5ic0(q`?;jv}$op˨56瓾Uz1-:Ʈ2U!Fl0T hA(Ai00|LS`yw3z>rHZCiU _}oZ꼺E7x9GwuuHS^ XZ+ƴղ/^ X ϱT؎؎I[Ggg/4Z&TQѥ2P>] |~< Wdx+ (vSujVȬeVdn%nHj2rLʐh{-JJ"+/,-`)~ݏ+#R26/Ѝ[]4dwf"=W]kNW_nw4.?GO (#u WnFYi|}+.>!T*tV~{u~faD~#TN zSeы:v-S~|mIFE/.{=}LHr"N\+ GUJ0N״OS2d{и8j4?#.4Eo/ T.K-PHP#RY{hZf%Y(h\wo õ2Q; G#ozy VAM\^͡7. X2}SF[ u_˂gB:KϹO=OwKhxt 2EgMUFz19b=dh!Mm"{@7+F換"^=-%6r+PCbM簐xɍ68_9 XhfD$ќR,6>߲@_dO|C_̀ː{ (JKmJ;NE\;۲lϥWC 'Bl6d&Dy aꩀd 똝~}޿΢eX- x#_Qdo'9xМ/gQ5J- ie#y+*%ZW ^3=:_/}u#1؇7z۶(vD5[ Ss#\:{FFDe@PE5?kcjA{3g63MqP1|E˹ C,YB'k{,΋RH:.S4jcwDbty9/,[{2\"QzYsk(ş'S)P4?4_.:ّɅsktZ~a$rñ]j/e:dU9v{'^<ƀe}2 e8 r"7ygc7=/O!j7.TUaw't++z}K&of{;"h2ug>=nLiXe+8v~a[5+p`g-Ezxr,C8oޒKNˎ,6}M*oJ,2" VݰKǻyUied֍|f0"cԾa>ۧݳAtOϚS7I}.aAF7>X󃺛%xm&rNn<-t i1ld8;j%[nx :nuaq7elХP pc @"ޗT8q]| cH=W҆ BD*GoLX[CFq?L.M"%.o d8YÄ/Pۯ 8ysiZ#:+0 n+2',S0b1")ًլ`Չo4˓Oz1/!~dU46}|Q7&VxG܎xmy Wts߶0RzPR^4%*jO(LM/ Ђ>%NGS&?lFGJ^70[HcGȼȺr[TADWH/dGH&+ȷ?9X9/^ rFZ)L}Xz}qH]F8grT0PbC}S,%!CW6xr7/[m`M[>X1Gh٢'%ׇ8F0 cȀ2KLi6L/4*fHČ:-_t5Sد_kƕm񍦛@da4~!O|<ب`?cFAQ*pi4FiFAaT *W4z i qbvǧsjɇ׮9i?C z~'۰2AFl闬if,Y'0zNq$mY2ߔi^ R_jTļ$eq/<'֋>)ddB.>2ǷDc l޲vk6!" &5CmN/^Chۦè.ZVWzSvnsn;&'.M[~a#@mdr>D `A*/}$f!W`$^yt(5ئAΞxG^Wޔ;Z,+E00\N+oHX G`g:3]%qQ<%4֊\8[˖9Lyo\aEC,_֝O`I!X0- ѿAmrf֊>:Z -|'(ň-|$lp=&a8&dfzChH& 瓟(Tװ"!嚿w2 Z!4ؠBql IeKܵ3 oφvԻmzv{w{iN 2:T+)^DfʙL[Dɐƀ2EöU4嬥U䦢:8ZQ6><=KIny#S,-90=QwcKLSc1yU;/M,kxlN3g!:7P ^󻣢ȾSnye9G+r[[d_>f\ 鬄`NRE&*2&%ƪݔMv{'RMY/SuM5@W}&-Tm]3aAyb̲<@iAZMe->S}f2XMhKsٖ<9+]T&w Y j%Eq/MloEOB2Ia;E]R|Gd3C3C3ڕ XqK YpSrT-&²R+ɖmlمR#[֥BWg) |)Y.er٥X港?xivSDBT}kV{aP[2>yTKWzFQ*Zyqd%$PV{^3s ïh,Fڳ"L=<}~ kkL> ~ydBseᕷ)9D$@nB0[RC9‰o*9^ \ItLj5)B8kaɭQor )!22zeTVw_[\7j='2FI=ǭ+uM泄5ѯcp:fr#xE324AUl>4DZyQ4h8dzxz3H%bOY_3=%:_j'dM<>H .?kgoS}ov"ir`{j:* [Ń>(0<{^M6K!,]^0*$WYI mȊRmՎd^o0"D8SZP.ʢ:/{f]MBRZMmMB[4w V}4R'CZ'N2C_s,}bVbd)g|VԞ2u W|#jLtCZ~nN K+{FdР F3[8"oiE3)Lw;UiXB 0: {+,jIW@𵾄(zY0S^rd6~uyX~N+l f) Ie:7ʮvcTZUOi4Aa jֳzvTF@5"_}(#Z;j >̔TY3 ˬaלGL^FuV|)*d#:hR&Ej5[?vk/?;jZ9O= ӿ<5kWZ쇝/V1Prtt+cS/2G ͛gH4r_  (IlO<>zhbEV W^$*Q,LTiPaC'=hL~׍s%w0WЬ寛 @xbyݏ$tC Ӎ wv16^g ?eq:Ĕٶ b$R'h[qLñx838XX2 wdžHgy7O 겲eTg݆j1due1F rrT@QcfXC.gY8#7dCeߊyȇ-]4x<nfΤ" wWD^Ms?E(X!ʃmfOe"3`gxC"Bt 7'e3,V8%4'yƸ.Y=]2[,;Z9H9s>6)6GYsTn_CE_Z>ʄJ`QK_ѷm2j@`j}vK*5ߝE,ВTStAWJM gS(Ro@n,+vg+f:+Βxh:ʭ(=<`_ve~Al0ؘ^"{-/$SqtXI5ACfhGo| W4&v,n4Ş}> jFc%{Oy鶏ދtoeqZ;ΜT!o{Ih tN"4QK#aA^DgI؏븏 u2)P;.Ľ͵E+ U|&IoMH+acjo%3ZL +1UH X Cۯ2ڂ9y}># -zl)ݗ8 O Iw doq?$Ih y[;_+"4Ru!Y^\|{8?&-Z9[r$nm'sxoY>踋'A "K m J3Sk>٥$8 q fWAyBԋT@Ѹ !͒)ùhfn[ihΌLK=rib$ <̈ƿ({7N(宬d`Ttj42VDvԦ QN9Nk:D-nhz͍1ma`~Q.$ IM`'z%6Y8f+d_DpҎ(vS7b:k=Raۆb~oJoxH}4-J葽YrEՃJV,0ۆS=83ل2ǻVevҲd[ Jֆ*&\ƺ{iULl.=Q$s/n QųTaMgtkrrڴ w,M;CִYuփ?h07,RG)F +y6]'AaQJۆz2SDwS0s poSҫSdܯ.m0t37`eݦ^wiqR聾zijh{]5M޶Ik4z$ ^42OJ5TZ ?fo)^,t jaHqҦG+%6Ŕ0.0ڮe%R hhlBP/Ql፦P K[jy@2i5EU=/gΤi.G5.|U-1z=AdѰQ`}*c!>a8x+HI4%o`` {WqSVe6sAzc:*R3ڸ);a駏 7z˳/eNvllS )z+GfQ ҫd>#ZZKX%~yy繹B!1Eڻ1*+s\g[[<>a8f3ooq{ʆ' 7[heItd,}c"PqJCf3g`PA/̕(۶YSeqVZVqA[]ztݲ+Z .U<1Oaf2oni$[q9ǂWxuv2 5U+e&d*+>1WX+7 QW̋e/|ޤBz02s}yTRM| x{X;vbJ=,CE禒#@4iM"D!:*`4ne0JqpyBHB7j&`&ݽv<>]֝LcH 6EqG?e E%(/a#8ywhẇoŤ[!SѰhy!<#&̐Q *iĕzzdC NKV&8.B8z-Bd`ݞ4=r8GI\-m T%gud"I\Z#U_V;⧨L c-+͢1٢,ÖͱO򺙊в7E*K -w>"ф$v=hlt2] ;C6}?2fH;27(6yוEgO|T"O3̝#4l #uW͛ކpfC#Ş$4_ %]2olo1 7@E[;|4`+sl妸QW0=Q0$iKF^6%mnOg8@艾5ѱan&M+6i1Tʝiy;A~ cG'㓋BqJ¼ +uoYo.XQWc/zƂzQ"aHBN#ex*OoO/EYii)׿C\}@^H$)̬jɉ`Ԅ*jSfҗ`:4A:s̒j֜];KL"̖j9&3*C^%O"Xɲ-Iΰӳj#IkĂioJav])E܎_(I(dzIMA]ɚ4)yWaO"g49ceC:/-In)@J4|nm<|dYU%qŦ?UJЕGj̞>U3`%yli9j]Btn=7`7b UTxFcV Yq-(x^t,xW0L,0| Rh/>Q-,@2g n̻ȧT10ßޟ~pAwX X)b'O!y$q"t7p‹O  ?p =ԑuX΃h9Z@'}#j:i WHk Blv;Φ CQ` #Al sMDٜ-}%R˖lkKdD iԵXH,r g,cJ@}OY%qY9KÖ@!eEQӝ9l*aL96»%V`Cg[8g bD OuBAQ'UC!#^ nlՊnḰ7>gY5C%%G&6 ])&U"&n`ǡaD] /ۂp b3*-akdax=Mnll"&:XbEGiYW !$xvHJDsO7~(0 wTLnP1a&PP^+_}6u۠ $i5#Q ) ܝJdfD%x SJlò͍$% [A XY]50>ztX>HbQec-MR<;6#;)R˲HuPC?ܟIHmQZL-E-eNm_#vW4+5  Ѣ6nWmV]mv ԥ/eYojBm|?ݤ3MQ+9_ ~q^gUn >BS[ev $f\毱s.i{^\`&^BƳ&Au]Pl.M'Nk.Gʙށ!1 @X&$RRKIS*z,4?V&}t  '? :83bz 1$:Zo`; N!{|+*)JvWxA6E<$@puFO֏sU3l88Wg\U$!x=%@rZor/ADdN}uA@!k1,$ǃۼ-޻~n,8eѹ?1[sSOȂi_u@bqBD&*N#XDHk0 ̭s\|::>A2@)q/⧓OTQ-WK! CA|6ht--4*8mlwǣ`rmH!v α壳 \sXCPhqRд|^/D]Qqs&uJn6('<8܇myDG@u7sG}[g){H^dϿr@q0' BlRY47šQr3NYd)9G?ZHPlݿl:nPJ&xibEZ~&KaMD\]]cӠ^==ڳ=j5^C@y? oMk{_?+c<߹b176Ft~;=>98Y_|]`# *_c˓ʟ}iP<": _0F0fJ!XnGҳ1~Gb]|v@?tǟ/NQү |IشҭGbÈX缡C3ݠZuC!uZYzyICZ|6{A@k>צl((p!Q 9]":*ya /-px K'76A#>%%cw N@o}@(NF ɫS3zk{ݷ;{;ۛA{k{g/hl7"Gdmo5{ͭͽ۽Vknmof'.N!;%oͷېV{Ʈؖ/qVgn)jRBA36@6M%ޝ}191n7yTYإ&VIwa8y AzY2}6+F*Q&{p9~|YNPʃ1 8T,A?ʳuR %_Ae 0[^-"xMɯRʁޢЭ!+F\?>L? LOdh`ȵbs9R8'o MFLO>ͧzǵ12>0[x $LgQ|iO-$êT|띜JH x9$;{ĂKx[1tǒpXO'Mw4K3.}жt~#g1/~N.~=sw.l7Hsqt_y~~ӧl푎Fb鵰V1bhH6kVIT^]2l>ȎL/!4"1#rI4.Gu;L0 `jh)=xryf*(dt@у֗/z1D+>3=v k\\H*jH gQߓKmYfm8װ řdt7? ҒǨ'pWO+ (+-/yGq^}5K y`( 4a)fM}llPEF|'?Y8ӧdιbp ?X1M<>Q$q|$MJKUy\(NE7jNl׌]O$!6tכh,O{gġN4I-i.A1#nF;Npݧ# l0O}Q('&dT)s:Nॡ^8Y~5RY̝Zދ=g([4%?a=8"PtރڛZ {zMV@GrAEֿ Y)zy"KJmBkхKpwl`Ш6@@1pNfc1&TbR%o=1~)|nzmnZh,#ԅPHE4]J(>W3ȎK+ޘt^:YO=$]%ԟ ԯXmIh#UK&њe_z`:iD˼IB˥tmڹ$Yv8{ W ʁHpóUIPM2s:E1-C|5mj6>U>n_W kJ7yROI^*On[g&0ʓX ~oh{־zSZ8)Ua{4JO:{^f.#rtHGbD@~9 `y q= #>:Rg&x|BP=bael ـȾ-;PRk,*KC} 8'*nRA- VA8Equz\k\k\i[{[K;ȃ3EL[RRY!g='*~7݊J,cq8CaS6 yi LD8Хvi+vJ [*aMPi:Uo|gwc'?hoNd!tm0gkܔw+0 V"^uI"nlkw](%> Ds~y+CaC핢>,/{1}6h5ʂ-%h,QzdQkDQ 9XpÆXO:-y3VT- [F>؀,*4@?f8]4@p_MJ]pku,P*u*C Q (ҩ FkT Ș;Wut8\wjàr\pP7id 7ar EMp toF\qY0;|5U02\`qw4#~jnK T{e>T2UɯIya[+F]0WuSO>|]rqJKEB`uRK7'78TD+] MKX_d8d N^ͲM|ͰI\qCb{l_D,i M6(K<&N?8ֹt4>e>^2 ^u5^h{y7>%aw4a_zKG2 ^ϲ>}7 :qmLWƕ1ʛhR*fj 51SXUpZCETh0L -FZK+qv+ahy:XLhy*oi ̨ϴ<^{m)%1}cc6oa$GomʹBIq 71`(vDSmC<@zwNC|]ƢL,X2JL.cwcw*ac2vZw1WUg^Omekz=IGSB^Eyzh^>vl:È֏ 'zȪP }1jă`X'J4c`#"tUJc_ ^q><8Vg:Ȟ: B'ot)1lxq4ZHoiQ7 [-d%#-(A)7Q [UP&+26>XL:y|u5u7i1nTLK׸֭K/By"Z$"u,9 BCN-^DmHafENuNgNˆBh^3J0nˠi䠆hCWND Ƀ)!i71">GWQGjΔ=6aWLTCD>84.9C;a"Ug%AR_OAjᗣ Oz*d0g3teAi{n*#"};#cB$zDr =!tLb1?~{rwq]Au?]cjJC1GA!G(J .9RXiKJuܘtֱO]!v`9 sjR0O}*pR 'NYDƵtJНI _jpT+eIϡrh$%،G A" f>Op T#Fe/#iwO$b;8wz[2 B<ɗOa, ~Y|+ oVV=iBX0J8M0 v41vo*6=6y. b]֩T/q*v^5,=%H!'A'a$0 NYC E5ZCTw(FŨ1)CťzRť~R &=4^!X3o!qY*it^)Gp"@&$DC~>h Sk p4 upq0n>M;U)3mJ=i& f@ _\LY(6AP$⭆!><*So&rTuEDP׬PSG'gN0UOpb|A_YF$H2/ӌi_hQZqgqQ>F&PT#3W$׋w|ñx|yuïΖx6#h1F TsNw5WJs=i;9"ܧo͟TŽ]k~_k~_'i>'FtR>FsMg޻ӟ=/JF۫5jn9rTˈ9qzPHx4L cSQ|¨w_VUMt'.N{ӂ4K)TjzB ’qEf!fŒQEz2A.o]gKppC?Cv龧$bXDpR0sx[۷qGC+PB _Su&@68NH~.^9s軞 `N<\e.H.O0(<`[TA+i*2O cvKy\Nk/vn N\wKqQbcErfB2m%^zj3EYH ~w@ߏ1U xG+f Ou O tyJqyU0OZs  <,: !73-!Fz9 F+zI +X:JŊ ?+`ч,,<{w)mbi2qm36B?Yع9U@EPpUFS|ܿ,474@KUūV>\%w1.g| 8{;fBɐQ6Ը+Q@eglee`$},4i(a;s^/QƗ(K%e|2D_/QƗ(s2iAuFGGvzEǸʎA!(9)C/9*ؤ C*Zq+VH*YQTxekQL3cqSUvD3f AM~1ND:^vv K%| y<_B/!ϗK%7y*3ꢞ14e> ,T4 8h Aɡи+& XooKUa",UG h'>j@\zԊ((Q+q.(;b8A@PMK%z=}DO_/ӗK%z=}UgVIM@R~DUB&1"6LVm5kByjcljZqUdqY+X-Fk5դ>Fֆ$׊cf$ǕៜΎ>\|::>..߭rZσ'rܿl %' 4{ +~8XYW9*I?g;>"WWF1OǠ?O'Sp6E.ZFAO>G!{0q*uL/N0u9Fb a; o&Gk?l./< A0_?]8+8\С_ .y!O'` uD4Gu?N1jP]61`QFv@hri`t#Dqmq7m8@4]__LJ$wr!W~5V :&8 tx zͧk9~~4u&QnM2!p̐VD븏.hcc4O7㓳Whis(e*JuTKiQn^|@qz fҖrʏDLV6`cKO(VVlfʃ4}9}cz;~NFqf0"n1+m1[  v֮B. +BVk{hX̧B0UD"k7*Z , cCUAgV-/j< ZV5 H,>/C# 4Q.Ȍ୚sudpˈb M~S3.`:8 2#afp0C##[ Fmc&MyB u/#abq*$,:L{;*xF$& ] >@@hm!,$^CMf_ǫlUj\~m/C 7:Ip"4rY#cl{I{W| $al%:7 } 5c :F.l^^dHeyTT>bl؏WOchu R/U1G톭6Z ZVi-G -AՁ\ FvX= {zc U9y yÀ@݂l(o'JQ E_u @u"k"$O#jkBv73x:YFgO]o}>I6sX Vo4 C=ղBZ WN r8Ui*p> h PG2Yphܙe"t`tkp8?}Fuw8bZ#jp'%R9S4o_m`-DQuG~Em,Sڡ~fcµ%ٻ5` ,]xh>QQ5[I?0.RG!5 >%X-+oGNruP$.\Di^KW[RɯFhtT L$?jZiI|*L-u+`u4&tB~t.xL~R\":$9L&i"GHa7ho1+77>PN&-x p³$%MӼQ tWib ZdC~M&*m$50<]J Bh|/~/~/Q|^@*K^2.w9b^t:O U. 9ᯊ ʨp; J&?K'ƑS7N>/צ2x#/46 `N%a*֨܊Ev-eh5"fKmRizq}V=c!c̖\Tѧ $;GᲲטL֬nHog6UFf )(Ry`_E5\$cLdB{xLȖ;y~ےh+sڂ\J&*; ڇӆ' J?&ӻZ/hb_HADr FaꙒ%e-^j+ CY()X\ՙjr`k}NJ%@LeT>_NqA HC0'uu?yyiJP9<,KQ}zq ʼn#V!8J9%純'T>6TjvqU,ˢUf̓h:ZI0A_{{}w}o '.P AˊS;}!ڊ\Et Bt!RQb+Eޮ3bm]L~pLM?3.1)mvqǚ4{oe? (RRjBNa<"lBkaЯ{Ye-_/P)H7{},+-"*(8N()zv<,JӕZMgR0-Ftk#bW$0DP(Bjo3%AtG$i<7޹!t CnE7":**aDn0Еjw*׈i3}+i4-)?ɤ02!Xb妩&bC2ĥN``-cEYNxG2ދ9vEǯݵ7Ej;DƷ{2:^60xs Tn:%PVShC\7/EPu )+Z tU(RKU$kwV#}؊=ϡD`MM7 }(/t 8#d'FIiU`gk/4dCc%SBhb-|2ܜrΎF99$JIu8c/{o^*'Ips`: fG|6=OS#ح8%̓~vQڣVtwrBn1BfsO]8X Ѯ WhzGk qƏR7v%Trn7-!`]sP5Ecjl)QaEK5 u_z\oj=!hyed 돒F ))ǀt@/ygƇH6y^QpdܡH./vj"`*Ϟb_ᘝ m7[Xz9#7:Q'! ܊2cզ?rފUX[M @c: c+EQ6.\3woF"@}`~D0 }ӄ\Dhw4/ȏ]Esw3U:u-tzasho!g!>7q5sz 9[Ux.#@&mgDC@Eԭ;8S`̊2z0hJ Ji$=S|c@-LA6t@-T86ԭ5dػ6tL5?-.-%`q(!`Cff `FpI媖1kv}zD>_=2BS?^ cQ)XsRR~!2ҭ8Or+VnjHOZ6UEԦ(n(݊uHl=03+l.&S |6N&XZ8f+FL78$lOpk ¢8$L'ȴىSJ7z` 1 2PG#ى5^W3^$g׶hޗ,VeQ҄FH|u H HsbC$Fv_]̓94L`].5S)89kS0]dhw]}#PoUiX4XJ6}.p\$p B`0!7@p9ж@ymĻ #; uvxx! O6p9vc^ ?buc^ <krnt[ڨ=W=Nw q:up)jwg[B\Uu>ז}s.b*%ػѻʏؽs.izGg?ȏ:;;pr{;!ؒ>19]r\ЂBʏ zG?z_~<u2lq\,a5*F>"Ȕ[[*%}aȘaAG!tVF7xfCn47U Ø!' @pU)`FRHH!LTETaTA^09D;v:6ۓ!^Ir}:\(qwt ꢐz%bȎm%#\TBl9izleMָ׸Dr⥤jt+!H:x]` Td N{-7.UTo2:HY2B&ދp6'YVwYb'h]u Ѧ0[[;ͷk` rb-P"c"hwVrSz0D!FxfJ `FrRHHAh dta%+mJh͖Q۬֔>lrB0>A5t.=B_d^D*tu1$bxiFti6+ڑ4JA%1#108c͟B"Y$@0ENc2u'd꫊ΑN9nxt7w*0t_ucUoF\y[9O3[#M33G0? }Qc.OΏs6@7 p)Gǃ_eW eE WmIoDHmUoݮjgfYW7 BCMS@ \>iRm-Fu^!s\ͪ{̮gȆ֌Uݰ꺍O+d\D$I0JY=)l;NI"1-$vqu||R3)ah,^D5my(bL жy$Bs1U4W]XOӖ(!$9+Cz2I.㈓*tSIh_Hd5'9>sxnz)(/Mòur%ձjxD.!lE$DLB >V6lSq;%uaJݒ-WrVYt摯=yd*$AtIN3T3i$nʹ6H'ILn"$JA]"h{Y,Y^x{L:-~w 9Z:átV#/6P:1">/ ;S@Fc*4 J*YXb]Op>ALy܊F>sb$,dyvEc%&s֌EC'fPɕELaOqА,&k3G1Yy!ndDQ[M30Jb8uѡeeOJ}XsPUB*`֋6<^$MɉދlK,.{yˋݵV.tVG/ T^ڵ<'+}9~"}:Ehyh2܆=b*?2ʰ'L&櫷 KtmW[\m 7aK)A{M]IᤳPe{@;З%,1LE ~iA']ϧc FAÒ>}xvzLp%jffֹ]>9U>RNҚ4U:|`L$7CoDђ,ɐbx k+ v\;pOԊu s:"n@ߩJ-8q#=@'.q֯9g[%q,\?\1r[z*W9>e2gCy~錄8y(+S/̘24O 9[1;&nojg @ +t srVߵ?R mo%o܂Vķ8Y~ JL#|˛$08[#ٺi*0T4[}jEC+X{LE00Nr18<4l ::>a9D-w!5? E T`I^? !Mܗc'MLp%j-ӒZmZ]$&kwܗ0%$f铄R$_4#B|Ȭ'Q>o` yMzG zj6+?YaJwU+y Ɇo6ۻ;iOFv[P*xK9̰pkCI6k޷"`@kTJ %d%,K,NNuVdp\8wifakպ\V`B*nf7\qlCTk;#'}(GTof0$w?w$>:Nl$u>Ѝ}Fn|cF۽QG_,a_sq{c0 o+}/J˩:g[A>ơeiӤm`Ojp`yf1z=کЂw_z1~ 5<l>QVdQUZbMDh }T?ep0`aUK|ْ"-(ŃV:~ikP2AK.XRȿh M(o`˚}qHM.,odl; % 9}XWqKXNb(:ډn9noUaTYCԼYcXmkSN$RlЗ͙](Dm#NԍjAb5E]-E ,s&:WUrE]$q.FCNKfaSVƣtR'Hڏ"ܖ} `->Zz M)<)5)BeXt:ƫ`V0>у{4,$x|D]t"*ӝMxz'q蹧)9+iLĽZWzrYyUS\\e("V܉fBc<ϡHỴW OVT|XI}c~-maeGӇJQ\u h5*1[cơidLʖy.O1ܓݒ-~Æzt6#%KVY#$Hȴ4ú9NͣiG9&.e=d>2ӈHpl\r]M~"NN*p!VQ®<8P0>3 w)ؒåO]NI5`/9'ٶ$ˍ{O74,Jx Zw RSb=#N 錔;sJ;,Dp3ƔDS"Uц1Q&9 aT+XywȎmP?pcVw1 `Z8Mœ$p@Hɯ q3|퐹[ [?kk P(텎뇷(aujc?ѡuIܠKB+/;ߟ,>p 6H[?@0dUnb>K0TL.O`vkgR:!f`4iou ax€`s|Fˌd t ';-!>?86߾.ÉI1,l5V.ck-,N_%7y[ٴpֳZ#PUЮo7cp臀1&#4-1D|qa% 'Q<6?`;nG]ve@}蠟$Mhp_F!A V9nސegdVQf/DX4ށ7RCoF+a0`A`<="GPkbP8WƱ ,&`Eމ-]hvڎ]SKٖb!jOY9d>bc[*ZT3fVvvA6[uj6nTJF*741nyRX^ ЈҠr; ,=r(Kky[b kt53Ѱ:]K ^þڢWTWTq+^,_HqdbޢYTV$/;6lVJB$pr0TyEfU\~ u,b PS"[WŝFӗ7g/gJs,5g _# nvWD^z UsϚ>v^s$z۞5!9̙ >8%!rx.x/菓vxX|+\+Î =Jtzɷ ut-AG]?ԃrW%Ozc %Y(1-HۑV}ݴ|N=h* LhuA,O-!Ŷzc0#mǬ}p!.U*QlՕZ{/0WmJj%ܰj מs T?+ZaOpf Eֿ `V`ڙj)Q|AZe-}>R#_n&܊PGX!(GaR`8It'f[80[v"iG }bi~:&:mt>^pa~z`a~>sz{7bxKx!1J9,\kW5҂i֙)+%,ڛPb8)~VK.>EL}L-PR|ͷgχxpő (e(g${bM=;4EBKw9FgdN?@Pv)tK_:8W cޖrGTu`0`Jy6|ԺYotyl9e2n;u>)(yөJ$n>->m,LX&#laY/޷P6'-֫'nDtat9\)r z^ėmѴg]6ݼOSbKrvߊ`ě\-tw*U \G|GpІ4J;+AҶaq?x,&wq8,?r+@ۭLWC2,XnvatCCđ簶~Q#I"i=6h7vW[ʵ8t䑲1& #HW-Isdc2ZE<065ŦÆVk|48p,ǚ/D0x Q./JY5+71{z՛Yc\JgkT&Y֩ܚR.kFvd#wĩ3,9$'Sb2v)8/ym*dX2h”ܕ[:uDkr-RXT\FDӯPe擭Oef)r֗ˡ^ e!E1}0>i JeJƣ Ktd5m4*hXIOw ΏJ ?i7) ɷɕ89&i:J%CYH= 7@-77(ݩ^7+;|gc]W?ʹ7fE'gw=F42cr|J NXzafULLOL-S. ߂1Fzqn_ en: ewUB_z?ا+& OᢑQ-/!1R". xEJ,Jny!Ѫd-5G48Xp}͡6 ;R;y1d B&&,z߂qA@ "H*ҒЏ/3޵5XdXPCCzts=:Юyt 1Y5XMPh pZY*ByBR"}9g^#IUVm%m:PCtӡ8zM9N[ʩM}0 [3Ba PIɖΘp8;KYgFB{5*y0[H5z XI&}?}=o`>e[lbq9J>!ؗNfhajͺyIcb8]Σ.5 _YW-d.-U,e2(80]R">E9Ɨb3BP6KP0z73tqqo7v8C [(o!rh&' ]@, !CE=7 Y ĩÆ,Qh ?Y;@Yw0@8h nO8g ?ݕ਴.H)ebg:1Eй kߎ]C@xۊ_񊢛_NCI ׳sw& ti^BuؔԥywyrCX!?e 3e6n3<>سEa= we73%Xg(fPwC j^pze4{dDPe7cK4FK1N߃k44mǝ|}bJlBsTrn]=K|ȴ̢az=ĸDvbηӆZwt5vl```wugu`=;;j I 5PPG@IcIJ 5YK H[bda)P'?,e})h|iMCi'%<*H(JQ r\E=ɰ.$K yT4PĈk/^\YgN0c;ݮut: &8>ԁ; ]ƖunX.AϮkfpgss<ͣA䢻1{ц&-ۃgs<뽡;y# v8 ^a^wfK1pa}qy i? |燣 qt{,lWyxӖ"E>;?ࡄ9=/r}S&sE2J"1fv:v S4 X Kg3$eN< 榌%Rc4Owίd~fnPwv b yDstI 6̵|KRLJ2Vsm}}zkI B'47L`%F7ܕˣ#>ˤ=&dh.f>DIa|rх}ؽ_O탃<'P$1Nrk6۽_zK^clcs~s[y\h%FoW{|G p&IHV„h=rΧS? 8lsA&cxHQr+yAզ(Twb,Ku׎].wx`*x/{+aIk2M&B 02Ա2}n IӒgZLXAU6ď/uuܲ5:l]10%J"[ 3YY j<ˀΌ4[mGKڠPƮXC>/vX֔74zaͶ[MnFUx̽DXALiFlDgn)Tր?Fɠ`g_`D}].G*p'3x]p \&)tΜMxlQN+AfYt}&E8?F`u`FjYb[|Mt QXE?L؊{Jإq49hv|\(D:H/[O:9~t[Eۋ)}s? EҮZ{v4w99ۘ՝`e76iیNKr+$zpb.G5_1]sE @@2e&V;c^9 .8ߒH R*?/C It${&6vdHկ¦ϐBOQ'?86_y`>s/-R9 x0b$ِм_AgםO ൴EcWG$i' RQ2F&D eOKD㎋c-n}6LTr6YH3n_&|N6w_[;AX :]u~k;=~KKȲ7QG _Z.ASbe<չԐR2+u v/uQt8HD.uQPrd K8(6V(7lH2*D_$ P*ɼ@O ֲ 85'Ό*~7B \Z{/t=2sa/hBըF=hXOϴ:9VyG9mKq_&8 1SLLG% ,SJNz?3nއ ~yA$'>*CAs $qׂb+w:h&:獼AC"VYsĴqQAEK!|X/n>Non6/Ӈgw?g|}o6&Q˱KO4*$pk,r'Zui;,d8ݐ.;d~k}tHkhw!xvH+.q{NܕҟGWcaF{yrN j8-xF[3+H2/v FB,:7h1೉s >nd>vȧg`(|B;o |jfFƩ 5 s"Ž!zgNAL)VFcs' x,ȉhC]0TWn IYzҗ0vvLԯ#i* (!Ins7 2K3V7V+U_柛UymSy-[.>oz;0W+kd\ğ^()&Jx)`=#Cq;t>c㨀a3Pxs#( i?`sգu~{ &t ވB9xWtrMmvV*-DK ۱Q>Ͻ}ƾ3\{?`0^ѭΟ~| 8U'), ˞"|.Nz^ |^d" tշ>y=t0c6֣r:i1DlP?Gߝw->t΋~kMֿ_|XS<6+֢b-7=;˚R|otsո"dS"98΄Y {lmU-O6xb$Gwn3Hɫ&537UQoH1/r]E@kOe2ɇXw[\QNOGd$gE LeYL*+"j,U6;꼧pS\zqРԦа (ӟHbŋot-J'=@;y0̄|0Xn蒪4U/Xt̔EP*1Y<Z_7.Wh;u {A;3^Qd^dr][Oj>ړL-,CXDyH˨t^J"k2;;ByLחz3fNURM?pսq.ĺWjpUp ,b>!hV%2[^[x43[Ӱ\zJc4=EZ-"DG.~E 4O]"PA7HWK$*B;J"B%Q^x!JyU C I8FzS;tQׯGq}Nr`E|H-Bg)")ܗMZZ{U`m߭_Kۮ_" oEk϶i_; evOK#_Ҿx* Ժ,Re/j%8|?Zߚtה0>"?)sSɱrHS8G))n_*Ujk i.k/JC@/8f֕[ |:TƛRJ_")sW3L^'ZOl-,C 5I=<<<<,LMR S rҶbXʈ>+hr-땵HE*$VPա! gR80{J,pDa58ujWoqw_%ڳ-7v]xÍFU:`MtqM@`j8SdK|ca1cT[[d7}U=Q>nA6™:ƪ'%u)z%#2JaJ`2rꨌ›ko4X*˄kd(KQ#ҺwI-242(x(SA#~RI232fVEH~Bi"OH;U 7!T&*JX5ۆ|j =I4|hJO-+7Bļ(܅]ۅד:|+k=Ȼn+yܴ`D.ȏPpMmc JMEJ=̔zxNq~p`_vys{ۂWx; pr[ .VKcic?'TkIt@aDvo]jH\knF^ػ i]TsmH@ !>tn_Oϻq7faTKw[a%g%POc+ V˪3Z}WYQ2 9W\ݍI{ՔɘN;uNFzs>i?tf!ADqS1{gG0c;|jiUeD]qpz|;'*6;`{'z`nƒ|f83+_Y׺uXtuwnD' LBkЕEA(J]Ǘasú Yf+px@Sob$JTzX!6xVQ%؜o+`(?5`^TUiCV?*ILl-MmmueE}p׎WyncYMȱڷumo{[K[vRddZ)z,EѥH["36S"j sYGꈍwTKHs ğ%Fn6V㛐= nfƍZrpz$ƿ %J77Y n Y"kY#).7VUat"Lon0k4MjU[Yr^O`8MK8;;2nz!J7coԁ7<=9ñ;h;SuA mz .ݒJޝǏ#^ayH3S3\GaAġBrǙ~\E4FAK׶<6\_"U qq51` Ѩq ,7}'l2nFgH>U%( O`@[3#ȷ 6'{=(V JX#'u÷o,:WP]8*CLw\Bir}V]qol|3Qm"kłodH@n0AP!h^ MP0LP& ([2PM@3 "њ$@j4IЮ0P$!@r@$oHH4їyfͩ ڲԿ%k+ٱK0ڰkrW^%ە,7+-~.U#-bG5~< prz݂ ǝ8Li4[6wѯw=;DY:(*:MP󦗯 z\c @ tLt-\U 3Dq(Spf{8EeJԴq'uN&"L=d'YOzЅi+ruvgs_el`$.9F4+c~h& kYކ%aW9JDgJ{'ҴP_=wsK"RK'=Aq#i NݴL;myNJ-Nu.dB%P7)O:bCNl71ڴ]&IQNEQΦ:tEvOnfJQ#cB/bN*SpX:j/KHK([ %Ӈ.K C:ze,mz9_?ЕZAeKH%Sъd@ڡӉQ48e'gBXSddx1~ˋ7M8Utt)AYz }V۷4V^|ZkWcMgF8)e6,ks*z_^ ,y㯶KrC$բˠSR2Wb&*w/sFyz6c^tQf 3ԅM=<3\ kq}Uf1[³ r^/lje?*nZv>ςB'4'c-%p>[v钏!}Ѳ֗] _IȬ}H&4-&n3/z0;~RYBclc5K%۹}$pE& HӨBm΅ĕˀՖ v=4eRR5_ǝHѳw#L[$_Ѐ0+QI\W>L˛4u2IQCϕE/bP@R <34#3ϘךFB$j?dǻ``ݓ~w~>ˢ=sÙT ]ZnrV4g2{DYt`"WlSS.? c2tYw'`$D,Td=%쌺/Y)ºw{{WSi-HJ0zWT|FZ@6G,C@ȉ MʔQuv;=?9”s"nM./omWğyGpƥ¿^PMTa͊h>Ù;A\(Y5-{L@Ϛ],`BZ,FužM/2ҍHwJ!4N6եPz՟5J-JAV+ΦbeΩ8 )3 !l(H0v`g?хvйȜYrƒ~}oQd>5.\ϰI}Rsĩx/LArS>ɂ gY&|Ղ ZT Ue~EQ%fem}iqZl6kXpxzJO tCowsP8Y$|Hsp]ٙI< mXnkvzYZ7ukJCN s"y[1WOe˽';6KrѦ˄yMJZ" qi(,E@DI(2XE4w.yAڞ=E@gG@{`k~ Md ܶ7!uϐamQz;a1 e/oC-dtj_'3) j;ffFlDx*1\%7"(J&+RI7X<2FS. |-Yzu3Cm4N~W.J|N4x%g95Uj0߽JR^ڣ)g-;5LfɶlnOJr^MIΗ5ƲqrXnNA)q;;Eu\NQ׾Sz 2\OA~)pOossáEd|w1|䛷gU}$qkuMEhi4=¶d'l]LEm~}[?GN/pQx!S6`=7xӰ~&g'!qư'q+ }K%*yn{B6-l-֊khk5Zښ𵧴53*("tDآ?Ϻe$@/J5 T9d:/#_^ JyQ|e[_^Q<8g^P\psQ)iɹC&oy͟LU_\c,%t3CQh^]EX $bhzrNv^UZB_RokoH Oȑ_r@/pމ> ,^BA]b#ZIkˍ9Fh칈٭-fwkZ=gj{YX_~}A [z_(;[NskZ,„@< EMAkfk\,"] x^B ?_H/SŽlbk_1khY MO-NzA&IěU"sH@J%To蝰2,~|+K0A^TB0ea2YSM@tLWi$d"pdt`#O7[Qx&nj=?? s%ɊcW(j3))Pyk6#RLOmN%8MWe$B|y0x6S>˟ysUW/~1m2ʀ*.R&-7E ,BK"r W@.oHE0/SF 䓰@{| 䤾rUE#If4ɓ@/,3JC7#?x2򃺦Q0 Fn\\_!e-k;<a!sx&'A)asA`FsM'1ϟ++Z>ʒ;꼷u[։pE g?;^WvWbė|-Eٯ\kAh.U5QƮԣzRҡ}i$S5r6{'cs~֟Xqj[*72wáȃfsUb|<;rLqJK"}\RA0*Dqګ[8r-n2">0 z.W~wzB Or8}$q.q^M#!|2 ;w NgP^?HQ/rpuW֘r8va4_/L3`i) uQT/..`7ڈy4n9,uo< re%̊(`j2:]# Q92["HaG4eaB .#-#=.ˡ^?rw S, _t ba "uVevЦ UJzg\ߡ5<:0*J+] RD{ZJ7|;n`6RD1H=so#ztR?~OSdK|c|hiX| gUV$2Mj|so.wnA6xA'1V]8)NK. Q sWW PGe\@e}>@z%P^&\#FYEKjiQG}ˤF GLjgQ7Tl"M! ]"@Eo#Ą܍-":dBƖR2!T+M۲HO hd^΃F+=1J+" C75 O`ڲV7^h -h:uCe:WXmel)MY$$;|fK>o}/zszO"܁&{ݓCsܽ8tt>`CgCۆx>t=۞cOi;>E-% khwșg;ÙmbAآ\)~v|&]Jr*`Er`jUJ`~ BNNRbJ\t]AЊsM^G@GGu6`UbkeSյEkW3% uS@i?=/ΥJ*prٯc8qaq4I?Y3Ab]W/ARHKSP]TQ&+5!R.QʤˆqT QB.e}貮N.[z"eIwRZګhQR۷80F}/.&̒W021S`h_tŲumj̖>`>mThj1vyy0~^B\jYV@j;K\+a7zW`RX),VML7.;&]maK8^jXӚcbD"4ے+g&ѩ[$lr?}ػ8>n- wav?->5¦wsII,g O Jh|H8o4/\AOfY2qB]dSĒ2-% E_7&oa+qxGhVx9e #R}679M~G]ISK/9S-_[[,iF޼w'n ;ѦA 7 -'pqźsw5v7Hof9KP$@ '5, CL7yݹmBXX|ރ^Cj95w0S!lX&x:anQ9Âu[tZX 9vJ \IJq4g@;Cp"̑V5Ee|2aTik ŷrPH8(!Olt߿1/Ml{~/ϻM^%ܳu{ݓ~)q#@q;ͮfS' mܐyS1/nU֢_#و KpvL/Q[D)1!^1~i>Anhl QsgIk`) ~J&jdߗ޻^\R Ҟ:0Z䕅Mf-M1Zs<ʐI+L k3Iv?kْC`ס mq?ؒwR'_,j"pePf.Fºe l$ߧ&bbط(_::%E`R#SN\=Mk<-kC㒆|Zb~]S+,mQLbb;;:+ÍI)I źLcKt0e$o:| 'w͝muѾIG7pk0:G G3@3Iz+c qѡtv]1:Qg?N/Ϛs;A3݂O6&0;ę+ta\EHb #`Q w,7L _[s U -0ƹs wC@wy!V{IYê{w0C̅>8O~Y lxW=@DsE4q%NiR">QǾӮiޡGk͂GauuN4b4+Rvλ~0AIL)%˔5xQ&^*aAxr|Ʌ1nKwbN FzJ_ksdf]=wGr -,T=EREU!+ @TxڴHw֖}Ha5q۔le|)6!L!9bltHE5)gPԡI9^!EIO0츀ie%sv3>q!]=Eh(ƬrBMU!kUtfY1X|Ql_M/Px(8k @Q?6d3gg4uMaf,똴$JyveXp?5!$unx,E?W Ex{UVlI[zќh{#;fM# Zwp1(E#͙)@ -r*B)}9B[K W9:yhi;w8Wn 'SQ=UD;Fx_8fbz-;q:*Ŝc؊Ǩdp l?Z.8q;7tҢ $2|au؋3Apsx fR8%ՀF~p+k*ײ\gpTxʲF-|R>C SуEdwђ)*S1;eUl(+V0Wi(Ű4`;fFl:w+-vpo_r6\xݗpӄHo}RTwrj?bA7Ђ58Ĝ{1H?Q~Ym~Еnj5K{aNx -,a:v>{-7W"؟!c:2 iei54h[?5)[V;Of& <,d` XEhVomoa?_R9ڰͅ+I 110xnspi9兖E#yIK-%ӏz%mH|5LI$_"yQpʡ5XeF[C?{PF gpnp”# K8 ƅO@^+݄L`~!KvW++{ s?1.ܗ@>nbuT).25jiO,<[;ܠQ(ٞѾ,;c,DORUFukFI=)sW#$hvTX]XC-F^83!O^hM,Uz) ؊U H#p;^fl̒tJj$]sCY }ϰ m3#ld5KbJG ImVA]a@eJPym ot=Sڎb@I2VR[My'⳴kC evY ^˘D f7Wo>i7vP{iY;`?Z#0z9hKͰIZsaC! 5${XBwW#D)BIzvмICI;2 5tnC,n[D ۗ0ĥWV !f_KKѐ@ b7 !!`戼&%q "(s- Qd?7K5G)9z\dAՍQff(cM ;Yᱦ9#Ð~6W@|DJi\lsRں֜=,`^l&|mg2yg1xdՕɎMg$J\JRyr4$-pK޻1C+آ :3ohk(W|'oXh`|nWBGXGڍx 汱# L7x!mH>I䡿(q+O'f;Ec6˅Dúdôӄ}bMuJXM;I|mιpIKT;:fTZuo"aں4ѝYzDJ?GzJA z%B@ MR+ wޛ<==^փkCxͫ`mMP0t4c*jh?Lܷ$D'8$< /''6[x:IE(Ab 9E0g07rbbM5ƙ` j23ϺpVQ(Je`h6/~-255۪O.*e0l'm  >]wbEIߌQ| czy5YD= AR)(JKL_Әd?ϗڇ07)XLq…o*d ȩ. $ NAcwzbmomm\Q%.wa3j֡{_h7Ff6 46TIy$<iUԼkڸ,ՓYPUsQ\(}-f)kcz̈́O֩f/0b ؽsbs'<uGiB8 -z納';uN{'jZlf ug}}n/ 삨8c(=8wg [ε5w{u۴97q%4".g/V?֚gr ؇9zX<7Fv± embįY Nx3Ʈ- B;;3FWl(4 Dת:Ʋ 2wi1%JM3,JĕӮ6IEaIfmbyJ z#6? L6{ׁ36x+;'9XuIYPEof;x= 9I[FEm+ Wh dM5]LReR -RQ)zW51+k!N! DD[V)k7mste=m}?nm~j[u^po .dJl/~05z|iq&=$(#~! gy#I$/2PD%4 ڗVJβZ^ Oɛ@5i9]6U{ng0]U7mK;ƣmڜH!^|̮@̱)FzU>zUCi0/yseVԢ޷؁ǂ3=dTEj Z'wG%(A)Q(>:cjCLaEbn퐜ĹRQ i_\)oPC -(>KUp|u* ɍ;Ar-ʾ9RZ*Ģ (Hloq?قy셙c=Ed)u%rA1~4yVm3rJͽPd% T )LAV?ғ#,~jU%B0{col.4DacTC)pg7̐YZ#(kc+JH׽S2[ 6 Vv>AS2m ZrU2t\U||<]ϯ[p~)X* "=AQK<͜*홎'T~ iz3"c.&cfOɼ8H}L{TP@B*ޚKvlfWH7HRޒ߷>h gK2}C'vSؕ8RӇ(MPENJ%~EA':Įt'e_ w=ͅH'KF M"| OGlDG4Eg2RdGfP7߶N.H:֣m}*zJj5˨G[J?Womv9]؄nBQd6}f* ΄Qw%Du4ՂlsOU/I%ox9]^c$2b bXVw{ٟ?nh9tEkqP3re,YpK_%?v)֝y(*g-fW&2cs*-%wfe5,ƜZ0JTNVz>#"Os?נŕl7AYJ`2-ׯY—O)6gC9Yѕk) uG Gz{CśfF/+:Kea43 XZ$ŗ>=<6 1Gn0.39j`!}a~ gsq]p% &}T19gAm |0FתČ'TߒTʐPc,p %_ AM 6QbuxI@ʈ@XJҥJTJ *2zQ&`L$7.F-~{# MRɏ|\Dx#PQ~>Fx%s#7Xb0$0FaRJBQ͍sZ{ Oz1F)*duIB̳8 IXKIXXUoC%E6 ^>qLTzo-p4O.>̕  ]9x''PTLWD 尭ٽoR'f']~x#ab){h-CwR^ k[X B6ҋ_S{2šmP 3(Y4 r~f#rcC, 2a ۆjJ,aIͮɭ2]/6 cpxt_jXD1/65]F]Z<7t#7@hUgRYv`xYynNkNB W&,%-,h2ι9(ęS q:NM!i&) Q#.͐;rn8׋WıdI5sY 46=fT)m4˜l+i]d$n`# ȥ !~< w٠xv[:$DuRwu1Ouihteb*D /%)X* D D.I{^o+9-VW]rrv{碫6PH8~{YO}ή/%lZ2ua8qFgdTn*w NR܀H\-9])ވ+ZuaB0W"UɏoV CO@?&^5.'?\wH)+7 ˝'w5_gH; w'f~~dז'䞐z? U^4nEY/AWYԘR?o)KOk'` _5 Y|aP,mJڡiSf<o Ưb >$ʚetDX6T⎄ yU?IGn 6o%pg} ,()^񙘩A2:L;+kiRzҶIՑnHh3ZY'ږ 3[,-f"ws ˜9K>O*@wD1td9F`pƇ ٟ=]ڷ*'saudJ1ױKfPAf‚v5 3pr"G{pL&xOȢm]35NS8cBˠ&ӹڠvuKAҗ2/Y>Ahԏ>{#U'8_C'mFw&PQDTa 3MDkޠNsQ>wy2VBB)S w$ ظcC+J٥#OtzQ`*JIVzBF] QwL-p.gi}TUay H8uqbt y2W\Qr&Gi4ĩ'`BpULP!WE΀̅>[JP;ӦiTh`(VC$ɀL6eGYm?TEZĠH+CFJ ۑWLK0qa2;b+YP_pIDOo3]m&˱,!.jK s)Sa KܷQԤ5)p=,re5εճZd+}fSH#9RP LՕR9{V_>+]r U/2jAY] Q8˟%'#tQ#UZ&v/6J=zʊ%"3)%H$H IDd-+u,.X'0`;*ڰ1RKQoB'gs ck+f|Pڝ: 9m W +8r[L .Ufx 8y gw[CyVЙ-&/T$ R (UʫN3L7WZKHd~3eq._T+q]E 4?-|\BxՕl(^uX=8zCbWH*1 ȡ-r~ι1"Ke)2X]וw}7hHߓ{K*[T6-Oj9*NXQ=}\}&sH=1seb!iʜv"؉ 5q!Pls䫉UB7Gw-n@8`sf !(U }\74X*a+Rno*T֧2bTjFūYGU{jIr6R3+x鲪5zPKA2XڝmZ *PkbǏrx|rUϾK6&!Qhe>GBXY(q>c_3c[d3Mc!! ePTVZ27]*`i9øP=oGB;Ú.S (+d9`C/~+,`UUae~sDYVBrT"YKŀa0sy\z FFx 4EBVs-WůՕ+:e=X_L骓ˣ~~;^%*֩챘&u@E{5Yx9炶(C%0c/ s^f[1y= N<+FtGL}k5iB215Ojg?R~kO"@S&%0π:J֠D3O$.!/Oj񛸛!56g: =OGI2}O4U :!_T瞒I,$d{rKYT;}d_nfkuw"|)ݰ0ĸfVoa{]j'|/]1Zm5cc&Cw 0WX=9m8R6 n0{aAܸ@|'Jc>jQcMӳ^9M98=y;u$b1W.@읇UJV1  @5%Dn7+G{5fZuR4:9+wv?ˍmuDO4ܢ8n?C0xwxpp 䑳P$5e7'(`W9D8C/p f`=$ ؖ#u}Kۨ:(~6s'aO!*ƻ➒]wN{'oL9\?tIw#>nĖ@x{0X3JqD`V˾~qÜzfç<GG]^tAMջ@(`:v.ѪL!5q;>;A_:wrH5L9هND9:{a/;\@" h?|?ZL%'wБTcOu9s ciʄGúp9#B1γ w= 4aSFE/ r9Gi #) >_ ,;?=N/Hz4w7Dˇ.0twdvЁqDtwO`NԺ R=$b}@ ċN &92d(L螃4;.ʴh1iNhdv O&5e U ς}bfps7kaun|zm5Nǿ4Z^8EeȸH( z] ܵVJHsb- X7VF7oEhL#8M|4޴jYGc:JzDa>|$/2uoެo ϯoG?Z+[XR kοRmV,.>nOr $U: ֱ\EpQ`!(MUuƨ0?rjE7WC =pݳMgZsqs[ܸFq$ED#) L'&?|0.+36ZY6 ߛ27q.`([DcH8^ v) rc+_ȃX\!ֿ ...Me<:\:|ú"! :xuN"vrkqzܚjwk"V\Elsme z#_p{+n1,w˯$ k; [tflj<:mz"봃Jc6P򎚜ܜmnA,:}Iвփ֣LQ+sgWaw-]~M{'C{q2!Z%Zd怿z) vt<t ?֛M?^2lE*:l4M/ s<Ƴm{mAˍ_T :u*Ph`F`gOgE@ @S3ҫtPB̀mRζ:V !51f07 NlxWpvCTȀxpyر;{0ˆ+Fnk񱢬맖Z|oNqU'W6|67N>cv+g~Hwr;;;#t9.q)ܴ>8XNȃ`7tYjc1<4⌖k$NZБid/'6Į'V 48RH^qz2Pfw0e6R󧑺Ά;;&ǩks"Jv$uX=@d:5N:3дJHRI]sRe͆NaF $uxEsql60F5[9|rv dx>xy ӝ3rg| KC=ӽ%mHG=ʵǾٸiҺM"%j(z M[]%D̝myFJj̟ϢAOE"Rh{jX !mћ'%|gn&j&x*oֱ`4}x6j|Pi=bY})NRDaf,`E_?Gyr[E)c[|phn}÷vvbtz9{W,]ֿKY7l2u(Cs4L2J.eFT㚠D|[k ̝aI^twq"ڈīSZwdpgZ>8Z1zN0l$YfMiTRܥU8&׫ߙdaoY1 2ko :>]j1*Ͼc@sgi[jl~M42x9(|4ч %OǍo h i)S[ (O`iї/QYA'?1UJC[lhm'4e"SH-oǣ==Jz̟.%lܤ٣?)pMKBv%P;Q[`;Uj8G& ͭn2%B`Iѱf?1uKpljP41w_"֢ܳؿjZ{v3D#6ŷx)ߴ$>DooY.iOXI&-KQA`Nװʌr pXl = ,@h1 )L(ߎ~##DT6LEۥe`-ww3}K64a^{+rK?~-[oϿ/I?OOau0%]G3v)d2o7G#͑H~s$9ɯʑ|ϾP]G+%W>}J%w^ٞ2PohZ7@xSP@㡍P+%d/jMш;ZH4~em=~w/)DRi$r47(J!g&1@MMtRsSAFSJv'<7|c?Z֎Mk'%CvhHܴ:tWK5 [ ]/]b-Hn%{6,y+Й3ʑR'q|q;GӣKKiITme:۷ @: BP*++mf{`;<"WSd7Ks@ZhSUdvAf/LuKn3dTqQKxc_xb/[fţM+ Lõ3C.Gݻ{ⷙcLj2_Tb$aDLiGQ=cͣKوDbȔ;l9h0^WnmHWsҀ=Qtnǜ2TR;Q/9 3? <|\ee^;E浨.m~@"fH4fF_& %Uhvfd.t,A:7EC~} ? =PmBI2?B+RQVh< xڡ9e 6uzOEUZpՄLULL*"`hrK$'.)edoM"oxf0H+E#' 7ɑbFhnaj2%$g&ӕ#KB `qBD7M[cNLҮrE| g/S@0%!ASܒ~~?J7_M,Q7쿴ҺO8'j%QHf|,O 49әlXe?c*75/aU=N^ [~EF z>A9FDfh=i(ti--]ˍ Eqˎ8˰asﻦR׽aaUůUEƪQ7ن6t '~~`o"d|%,+GBFBr P2A( Rp"` v=w2-bI(n\2/'>z) #4Mgq L%ƎSs+~M,aebzhZzZXj|yFe,U=)(gQ b[/Ĩoj D8(I|D`,%j[uY1unLMkb"G))|0C `6j64CQ;L_4: fT-b]eJgiQ&ZKdfڂ 3K6Oξi/_=B|wVQYB\FA5)fmtYv;|GQ-MltY,ucP‚^d8u5jo)S_ΡosS{il¼܉&a |]P dN5?*K1@C6agOAX$hXD`B~R̴WjX2-SmN:I#l"oHx~~NmQQ; z-h`"=y%l{,]SY᏾y}sLJw?slpkm.>зՄ+VI.p{&aqC )baN6LaaF>8'kp. 7͍]agoH<0@Si9N{\͊&<ҢFSƀe#{H= 0f*?!DtHZ[~J-D%3uN0Uk] X@cǺ Y~^ ^x87Fe+@kjslSv;Ϝ4E7s "{vcֲ۸b;1r_)aG;rLD~gƩ}&@%_-(M'6CH\fn#l֦Vpl|.PN S|)7O9CںoNjDi5lOTʆW={scO}IɎyNk;SfdK.L!10-8EA_QDS?z@x&#YQ5B̎!dQȼxE,пkLE>oLߤ`'UQq+b6OC$A%$9q5F6qQD➬WKUѠWO #~,>-@Y4#sjp&v4zg15 6otp@96pFx^،~s7(lD˙-(i:wU6cՇ݌5 Db$,ybXx_tk؟,򨋉.Dʾi4ݶ|dU8cVh [OdX!i m L4d VOx$8?c֓rn{Qת%27 ̝֦2NaJeL)^C;iߧ5Ο0*c^eq ߾}K=+ 'eOq 'Y͸  gQP&T9b_nh h,΁vN{JsV}}}pơ8gE>?nU[3OM} Ձ5#M 'pFOo3Cɪ; &lSlW-8Y1ua HUC¼W-ZRUQэ<MP;#蠍Ɵ4v'qD̀V F#` A_*_Cc SRUcl$(kN͸YXRGo =oiu&MJH|Ȉ ^HDkQMa$P zlk9$\BMO^gW_5d/94~F|Zxȉk@-;mj9*pxNOw5& F*N} $$gF9ŊY#JT? knqǟ8`2*^<P5|3"-"u7Eadήq~ָ.=aPpRC&v‡-<`EU'VidʞqCyuTPviҙ._)ޟ#גW͈3ծ^DR$cf2ZTRfTkoQ ªWepeA('Q,klotmM/S[R\S&M :*vǞ3Wy;Z|j'jIE!7&/` c{8stx Ion-?۬"fxd{)= s@Eozu72^#r XmԆhQ$%hUykXPmw%[L%tKD=mBלY+p H%Ux@şUѥ FLʿKH8ӪM* RtߍhlS9g_&՞kXۻ}'Kߒ 1&eMrKvszž* m:Gx!x"ڪ5s]A3跛v=, RGN{F}SҋFcxLXm-̿G d0~RS!vZA'RĘF6@jCϜAѨU=ދ?IesL-L{go[ .-W>n߻ :Љ?)a-%Sj P`lKӞSmaL͒ͨN&lҿի[oǣGi2&䞭1?0ʈK0Tu|ak3h.w|SM7DB*gc#o X .kc5SL]7aLqt&Fh8]j+?6۰pf1+&(aq%/_OOK9r,."1Z(Ip]%.,nP}SD]aЛj#ʼOH1C%v1پ, ɉGVX k' <5f P4JH }3F<+rH? 0 x;pgFZMEPNJMv;O@b1Y{ucj|'5OރO~>c_NߓrSONk<=<}FU _;= nA/b_>`*%|sj(!~_/N~9;n::gGgX 0*O )F!ÿ!hjGтxH|,s|q*Vc[_pB= X|xz ^K@_p 9k؇lрbypq΄Ѕ? ;MtzǶʎzx?:@S9gy!$Zq"i > Wh҇/3(U~HgDŸ>BN}T+,[H~<>xx2~ܠA b(^hztp/T'Tsr+%@b.)P>Ts$?05 .Be5?‘/t[vjj5sc%09е+ 1KfOIjYpO2gBB-:rJ[00[savs$'G-A/WK},F"8P4P$}Y{ݭAtu'.N%ajTs(\tGT3@yt (YZ>@Y'uxRS=F&PrFZ u\i}ϣA}H*j!QS04m.$qz7cHNIt’ wh5}xDfSekQ>-@̼6jnR)x˃Ob*.OfbcTEȽÕD0Ł.`OHwB8C]?O&_IRQ!&c8Ss k`vFȇ1H?c/0G&eɩe (Coz ƉpC zeث7xFsAܽyI;4>0ʂ^ -xO{flnUgeO7~ۉ4ޖ?`RMWpOU ޲Isr/Hf0O 'jf-1FE] >pxe~f%ۇ Z;,q,L8eU@I"m\80ԅ]|bЭaK4}e 7t5C hsIS?PjE'}t֚AU%gT+ϗ5O h hr;RdLv32xfDSoFs^i,4&4tt+pyO%I1xiS%d::/mTi4E+͕Nl& [M+lO%iŽjMBՠݒ`_nD`=4;K.2W="1pr`'ۣ݊ p }Qp[C|ƽ59>5 ,بAcţl&An#K_dX,ҬefbbfOVUa{̿DClM@d iq<>O' AG*0\"O/d+B*iw\Fx_5J-,EI_|Ԓ,'(}~Ac5xfSQ9T%\ejf8,n!@oYLwkjF,iU\ ï!LNu:'w/X!&K7RCeXYŨ11!Web{j{"ӥJ)LK} d]z#ߓ?o裑ד۩/[r7o+ g)1F {ϙj97Jpg ڬlmoAo(frؽ"BuxCJKмڗS~ rF1%-LB!7e5G44X٘&&,neZi5Lr5Lic.Xi|)e틍̂&TL,mbH6#Jr12*`Y$?dY &ҹhSrva*SeKٔ)(Z)66)Mjh3D8bL|1ʄ(=aT& FŨeq2ˤLmeҦ2,?in% ?aɪ}%ppbI6XdWOV/e=ٗmٍ>22^nj6mx?kwb+03G9s0sY{Z$$(hYc) ar)­ y?^,e#ZcMGh1ݚ[]i>.|^'{ 62iޅ1ZQN(Z"wt\Oy@_D!:3ĕH^HD b<^ђ㗙5XM[bЉDGl8嚾ds)E[Ɣ3dm:zգnPYaPj(\JIڞnrWU˰mhAw:tӄN&f+צP27{5;xߦ=kE.5hٱ=3,j i?7k]<6ۇ/]z*}hcᕷ'_@EK j wWz %@ "~$_ae*4bi_p;gs|#eTXezH1rI{$ f#f6 5!#O!ѨU^C!C1j;;N}qUo8rVa/8-ۮ5m(MF/^[3B {{|=}6i&o'g! q4NW9y-^ y3xO$TO+wӡ7+W^q6zvT#wl^F5}3/O;lQSUVJhCOQ<î'" hч٭Ogܞx'ϷkδI8)e6qܩOA' rZ'pVs{.[z]! Qg[$/{>4,q ۅM"L#fX@E"EH$ɉ9ecHc+IADXUC=j%q9M}:Yג2xQ cbɂk_ο]Dv: 0ra>lQd ph mt%<'Txm4{˱m=tZoe:@ö{,2 A`jzϞiu<(@KVU")Z+YJ2d)pᙯeC ibʵ AbHC&ơ6!sH`cXu>dv}FMPCG  Y@td靸Ct)U6.c {D&@s΋4 /M2px0?vKH:"1@fM:̵: L<5@C;pW2[EjԨOJT.QS0cb$dfv(;gWsG#c#ŐWDr"ZP˓~x=FI13Ƹ-*DI+uc^|:)to0k˴^FkPb _LӖ\l?{/4x]oh]Uh3 _ѵYb3ق'x"eܑ~hTDϙd+dQ3ɬ.^7F5cfw>yh<)gG6:cs+<8cE7KbӏL'PkoCi5GS<.C)V~vڟyEn +)YֺMKG縌%oAp4]SolYx2˙7gֻ8RxvcL<{Q/=ߟX'ӓ#5 1ecj,}L= :NWQ 6WO0gӃ:dGū&uFB0h}SS#C1nՎ<{![^ܟ &wBwF1)y3o!tkl퀊*Vm^ LW̶~β|#.ڰر*" hdts7sOdA\(Ȫ{HYYzf.gG6p[h,3~4,~`&EPS#̝kv ttll2mif;sڭRFƽE+L611Zd0<ӂ PȡV Bʙ0SBzT|TA@f@{?EȫuzVvws:cP+sNGGяӃi>l Jte t,k@pVL,G<3IsYqh: Ȁ)29 3_/$##Gcu&\^TwNe wJQk怋J˘7k9O\8ku0W)2$U&wF鑻D}Itjl;eJ Iَ=il[(h0h-%%ohk%2>B}*ؓ8'A~bJ3cΖZ}H^3ߺ/<Òs=-4E5RQbU *6Ș{LOy 0EީWlֵ25]i_UV̫wM7m -̝Ao]WdI0z^^4"15y4& qiɑ APfo nf'5EDĉOEX@Z2D%LQQ*.k79"PK$O/G ,#Ynkt;*W71 /w(j|# X0[;,xZ‰F-Q7LEi@&-HŨ>}~n[ӲH̼FJyc|iYcTr>ȇ7$j7T+0h֬ }8ܵjgBs&Ah]΄Vg:Z L89΄Cq&R3aŠ +5י`pw;`w~{5j[akotd׫o/m%<s60k60ss70{7@KX¥۬-w.t%],bIK6d]:?K4I4 ο?\?k?<8FQFYpiDNhN=ٵ'7-{ {==yǞ*9Yhg#62hk#62h^7_3fh^7nF{݌mfEj<뻺zo{C&7{[P_KC;> J1lhRBcE 1c &h6^RBgcbD(!%LS0u5ZnK1.aƘcnK1.aƘc$L1M´0\bSSNL`(uʾU-2rL+l7p[@ޣ" ^f|/rk4̳7 kVU͸UVilZ ;PpO1\ 4J蕃Nt:įexo:5U%` ;,,VfYX-+VX°َNRQBKX1%!S R2 P)*R P)r1RjF~jڵ~1ts˶8{twDF!DYM:~VW~mÉ=(G .6֧iu94gsCw#eI,?Ry\\#]CҜly=6ڷ}kAڷ!i89\/`TL@<(n즫Vɨ>"iט "N !,@6r9YRtRHi%eYSfM-t">#px fZ7LVjHqVKAU8nK)U&G+zI(<[j *LFΎ2}k%_7QjI2VE5?;c@ԚŊ}쏻 4g2l:hc?3@~έklv--J֯<]]HWW{q]L]}9:P@"ek+K M=A{3#ԗg+E6XWBuѼCd&0ÄrH 1MF3\4oRxrj+NńELՑrq]WڗҌQ|Yc拆[+-Kc>T~g-9J[H BSB$i"pjI2:GHun6Ҍ|r0ieʕYpt ':vBوg̵N-**"RT(߽_zܢ\z_íN26l5+!ѳu`Ƙ}x["cX'v!+Ō?nb￶g_~9=?|[,'zR]-3Zp,*L܉:l2,/}Cv Iy:gkKD;-k"Od[aGt,:G l2 l 1lR!Cla}Z UIH7k! j[N?cbH*e^3p)O ӋiUiX_,? =R .XјXN@l!B c[TOI 6F: .ƨ)f TR )ǩ|}S]SvGkSuEШg.4Ə9/sKdcmY%B)m@Z`RAW+僕brzYb*\ULzv K`u!TxvvjDuo?jZ2lT}sOB ~9U/qD^r_]Oφ0?G/}dhD^Q7<]DSJx?z Y w5/LȲc ?QmcQcc/$晢 q k_O'ksk 4U%LB*{HLuPآQ0eà̀ :b AsNi>} }hUW}nP{ZbzZddȹ/}H[ؼʃ~+G.+0-sD|U&hx׹2 V.%3{T"TeV;lV6M{7&d\.;wmicEje6tyŢ,emRQ rtûʟ WiՕ8ufܼ:SyMh2A }{U:0""-u+u̜3n]8A.2;h^\ Kżñzo1!L_嚋I]cHU0Fcy.v!'ZsY F> C4Q 8s@fQtd j7bZV-OQ!-SwW31ܠH7reoB{".Dލʛ"zHP~zbG%b~`7LVghx&P9;@ Ta&W؍hE&-DL >|'aU^:sLJPCi;镬nA>\!UT+(Iȯ wQȾ%I_/ \/^hk)"7l":: Qu'uBśx6B\U4B6 AJ6Y٠A+KDe_!ۭ2v9]_48AWBQ/Pc%h۩kcTTV?$Zu{IM8=O'ZQ9LU.=f$H DZkq7 PnX| w;yB|^^<wˮ'b .\ \O!8&L1ɧ}}/v[ bG8QëQ;,ZJ* `z%6mޕԿ:ve C.N.'=4d6 J-{_P/\ M'#̦ˁFp#-k';ڎʫd=+=u!hûFKrMƧ~70X zL3 *C/0nl{G?di[ n׽A.٨ĭ2ʀTYӭCRzăÛ<>tߑņæKǻ6ysFXr8lS_ӭxƊstf+\i] [^@fLq'esF7 W OԻy19_AJ*:u]j\lYsM0?myxrF0ؑ>EQ\Y>i1O$/FI:oݖ['kn 1请 `guvfe]>{Sx]-T>} ' 2oĶ_DBƀu<%PGQ>Ixjϳr _tVd1>60SMGEk+tgznӲ7(כi6o9oMdq(|Sr` 4\Qiq4U\<2̒A@YVtlb QdƂw0ȿ0 =<[6BK,$}pҢΚ[ؖn,{Ʀq/v|箦?PUK`UKTKD,׌vp>i0[?.wgC"[A]wg_rJӵLo$.)*)KI6=(Ϣ<EtYg~J>>MollD2|/"qz"i?4hѴhTc+րIΎDgWi Gqtߓz<|Y:M@il06rnҬjN4>KG,q~dIOea;9ǻ·`XkHnb~{h{ T!pw |?2;7uQ70VkNtg +ҿ2Kcc !DE 7k5gT RmkG}>>MifFZzddx$8Je*s&L<96_arbzxZ,]ԛZ`Ucu5?9]y߼m8od6^UV7.W;gG$}8K0cOz#:a]e.@Gmo/A}8WdZ۩X{:jT Z@ޫwc=D{w>HQq5?y D-bԿ~hgmQ 8,0Qw҇#:C"W}c`Yu@ t6}кƽ0e~Gܙ9,},!%xx0>>iCVOW`Yӻ MsZ>V+W]H{­#(|h5l>^8w[0%!:$ yU~esuh:*o56f_R` )A>U聱-aw,}#qcKK5Mc0 K_f[u]XW5x] 0DH{ZDI5@xz(8фSJKs@a; {~齶f`Ezm8yQ"FTZ}zfϫƁ]wl)juU/QCE>!g'bN9L8 m>.KJWn~vӛ//PXҧF+Judy>dy]z&Aj [4YdZlU| !мWh0;sB P^Ȓd7x]Cl-9;{-8|i?{~e~ ZM_3Dm[ R! (Zqxs)O m@ޚ{`wײ-f9dlFfz0\ou{'ڧ' [umMf8vڻӳ^gl$W`?JqMMwR4_Hve1U>0nHV1U^>C˝ LϞh74zz{ډt:mxULQ"DF' pt|ݏΎ}CmgEM0 q6x3#V9HIV{(UN7Q\$]L.xLj3":n`wОlY,fIW(d6b!?)WLe0c)drFcyӂHD*-rE]>R#WIY"N&(ŐX)nUzN-Fs{>}G?Egx$Q9>>9;E&tz;lu D']xFXQw:@ Ƚhoe}ӓ>O,t0'“o"#vLCt# st`:݃v>8Pww BۨE=7Ow??ek4GN( } hI$AT7Exsu?8Fp8P5%8' ^t|EwE`۟R<~>C@atp%w66uz?|އ"m]b6G(:|? Mc 97v+?&ha/ a(qe>#Y r@>ȭs_Jya qRɛoP>:аAv^E7N7Vr{0`{FR"-񨉂3^W'$ýܭ+g+%YI<chmcvC9&*i!O:4P#D:4Ny'n; ַ .̣h/Gx̛MX6KaR1Rca3/zLqC|yfiS  3ezp>D]\S{@ V)d]f5+"D{)tH-A}`Оf>P>~2}GHiu`Maֿ^I/ 6&j)T+SN,F?ZGn =:f6]:C5k2K~:|rF@;ѩ0r_+}]au=2&9;%!hS5Qy7G eoq.jD=a&5@ḌbFI]QvdA^"ԇ((o\0,MaLb".@YFƻ PR$3- U  ؝ Qh]Q Ց6H$ĿE,JJ[:+Ĩ5N@"̇SBZ"W)mL2oWh7!C:oA83e2a}uNKrz7Jdۗ%=(x}9 G%clFo~g9zp|]-I:-3:uP֡|qV}5AǦ +H+8<wqs?6;>:8Gktx:q<8NO'Ӊ:q,qhHJﰻ )<8ưiƗ7b})zmAqGw"QJ";)OGw]'BAFbMaнx` dV߬'a2\,? {փ;Gc;XᲃRPEG3 ?h'':vONV؁>98``hD ǽ_b}WGjn_AFx<ԁ~dzbGhgw*G(?9MЅJ73*Jܴ46ݠE5o'Ԑ ]w>D<@tN8|+Z;QmlvpGF 2p,nҰNs֋ԟ:[/n=$7?=0͊J70!څPl4 8Y>n~M).` ֤~Kòkbl\n8'oƍ.V։?MpEDbƼ ."K65hoe֍1>PJne mzPQT#^.3Xz&=}7+؋#X; E-N^<ʞQÒW:o|o8MmV$E<|8A(>%G}L,c)S0F9/@#nz>Tvw0ZpH$-@V}Ng;zPﶽS ³K:b T9PwZ.^on!*`Vm" &z0?8 A u9tGk}?2k&8B!~/# OY{F Sk`)<.il,9h?Iv9$NJHguh4G#igKXOsʫH.jYj~9t?Q /+~[PY|O?CP>X?Us3ޚГCtQv.N%{Sr9ߕbߡFVWj7 [|Q3Nw09v hujכ6A-&JL?Heٸ N϶O]ɀ&nqGdͻvlRnך:]7% Svq}v~?W 鷧^Ry~E٪ѾѩrEgPHK {E2|P$`OT/$W@fpAq(gss (铓\=dV^VJ>7Nks+|2\IufsЫi|E??ɔ+ |~]~: MRK6Z7 #9ze~y#'\fk[*mr}@ B/CGksLZ}97g,&L1o3Ihj2} G7-4Ҷe[Ba-[hfCPj ?ܮc-Ak{o fSZt /]Rs %\'N#/M~)A:8@|t@/+H4aik cw4;/ꏛo烚)XiURyB?7ޱsNTZk5[L nun16 }Su^"*.ĜB`Ԍjb1ܬ9n91LHs]\n;m׾J *nUvV3(uOAQ!Mֈ8ӽW B٩ņZpC?e]>=v{_>Z79}ݍi|%^♬#/`߬Of\^(&!ܩ?d^f3=Bɋqׅ_B> INI6y>?O:ӝ\Tv~\=dQe3ZrGߕGH}Zzx½"}C|K_$n`5^t 5UmhK <fEW ɥ\;Zo|,դWSWS;wWl_zM|#R-~7cG~5cGn'FYVBi m{6!OS;&Fm5n@1j j jҀqj`[~5n#rdR{ʻw)S޽{Oy=ϻ'Syq T#laQT˫0@b h$|u!vxBÓaQ>g O焧s9tNx:'< ps"=TB[@?irAėITe^0Cq' ӥم]~.VCɸ?=]^H@e9"~4eޡjsX':W) $=+9MpJkLK2ˉ}(AOnIq0 =A2IX˙Ⓒ4Io+$O/,d+0{mb V=˼HAI\P=<ቍ*J4Ih .7dUxߐS;PS5?[Tw{=J4Y9ĵ8,qlFj K)rK˭$H\'Ny"j;pPbI4ɨtܹHgl X:%`j& tK zPU$+eAPvy s1Q"t4viF' SsD2)T[@] H\O$|[EÃ'Ի >}s*8  u]`43-5 0Ġ@;^)$%R(դ䍾 1lu1R1H/$h0ߧ%zvQpWdKhؤT)ez3 6-0d2+=iB"@QAo6P󡘡3^A΁$I5V7g4ytbuݧ/=QGhWE)áq8n|8|.x9B=\N'&偢UjE-AX _Gb8ֈ\xOD[2 g4LlHry] vu9tZn\}o=+hH$js^N̕ďټIJ߾课-^6Ry(' /}K؎t&([y$POnem?:/Ӓ~ krr^u>۠w4}WPB?M.q+BDP܎G(i1 ~IsO ׈N~ȭžk#j\+%f9J H62ߩ@砰6:XWWt JdQ# XU:~KnDk$D*e` Q}9(1~VVltW7oVu(IR⊵aԘX}q7 )Zu9|zqxM Nscg=ӧH2PQ;>_?cɁ(`%lD!7!Tl⤊M;Ԥv[Ft28>?%dSR;29a|P?')L0DG ]V@% »$j& 8a@A"WG[k f=iQ?HG8k%7μ4 >UAKM&ϟ.AUdXƍGYt81sʄ:4_$Id++t0 jzf>7Oa\~;v2L2c PGQ m)&+DE=&X,?o«I2H+ѬA5Z:;߼}q? 'xYzvSVOg8[Pڟ6pX̚]r:qpR A|Gg0p%E'=Y2%ia;hу<t5鹵g*`bI H * wm 0۝]$54ٹMrAg)PVNKgtGyўNPl[*]Ϛ) Az*b.c9ǬLjAEd;shCv(5OEdAC2Cy %"E &䌨3A}rO6c\"52!ekDYՍ9Li_TXW S-xE.z)]NIV/qȾ1_jE+e(,Ȏ c6 i\1wgyyϿ6J e8HqQx h`RRKv ;oPf8$}ϒ:075C ĚaLwTtJfk&&r~{+e!8kQmnx)5h<l+XK) K^4pè ݣPFvXF[0Zf)MvDz%..r.)x4ƒxt< ќt Jӻ>J Gb`=k"`㹓OOH/@̲͹.#>+`FihCqg#2+a{fZ'cςMhdApM'aǡѱ@ ̀(G:v3+RE[ݚxs'k׋t0$ceWi.y$7/ (0zp@(~2XQ.7ªͮVy S|0KTT(Vb(0DZܿf%A'{ݔfD{Qm hAI.}zְ$U7rH|enUub%\)3e`A2NnuSdK#>/0-<|ITt*F#z"|.9P3&ad%ZTŞ,)})z|})[䒟>@DDl; q ʛ/t>D*f 총UxR8q8jK4_65bŹ$yoOt"R%L4UL`"s ͳqB {KT 5[:d0]AӰkֵm+$%}6VfIi-؝}oWVW!W8J_8@fe,;R/Zl߱FлT5>ƿ |Qս6S}JHE:P2N MnH2߾ķx66gm/0kyYDa:v|쫓MuNJ:0`%i?e?GW mc߲G6Y dŦ>YydUN' &#-x6xVy'>^Dsc6j+Xa`F%塥[Ls(q6-F% :{RN% m,zHMrHk,J|WGm/]$V'P#(G)i2F `0cWžNծmɂŽ rX)OKgS>%|(5]zcs΅Qh+w ~}]*ugՂ>*'hx:%ql/5Uq^di#WW啥klBnt Ϧ:wmut-efru!iW&t6adkxLw/JHuE ":BQŞ•5.HvJ~?M)a|愁]}V8|$S,ucװ,:ٴG&&kDh: Z{$~G<6s^&$/ l,hg"8-N+&dcPq*߭Y;Ui4e'w6 8A6Ffej-EE(1NNBLFu\X衍۹o(NDdF ȧmɦtQZ.sUI U=Ă"(s{p@fL(ĘR2-~`M35)\bkȊ9`fdL_5lvX|+*e)jsk EH1:W ڦ ."` eVgTQ0}T3wO&RJY\Vت#; j.$ j>8k1/sBߥ&4dnHCX{/2P'lq'NI21c.Ymq$:DԩsVG g̬=L+]EH1ۖU%ԣ!x.c\꺡l#,ڴ l풓CP\tpoƍDZ. bĕ⹧scBxD S)j22x+*}ɭLfmꉶTYe Q;yN*>ρa&⺛'"c`kG'g?e@\]81F%76OSz6EH 7~pv.EOvPiU01O8GgG䓤.-DnB8rf_녇. GטF /3eK*vхە\yZsǁ˰^ߚNX`u(B.q еpɡs&,dLIѿS=D#:Ybi#2%^ !Մ!xQIק3Ph5~p$S.0@3 mwiHLFxyD;LDx wXs mAp /k:epQXO,%kiIce WChG2a>@%"92O'Rzk%)sSbouu6)Hqfba*>V.DM3! ?UëP5dI؍u}S̮R>Xy`Q 2]nxx(W1"^H4^|kNx]aNŐ*[OLGhN/]O jAAvߚ( N=6Sa;οכ N¾E[tFt-X^-}{8J0g"3L.A /H/p+ {zAGe238S8#䶉=͍˜X$QB 8GX&}V k)]YcQ6Xo qqI>k|G+6nl|`Jroccd,TPJD ]ti}s/U 2ucu/_wv iXt\xs ?QyY3bDk,4";W @0@jY ᯔOSg7/)#aeAe\0PI\iJgvBoUc]ݬU֜P\-ʚT$wK0|XJ2Ft37y6"^^NxN)ޕ'\V"PU OT#x+MdS򎎺AK$s3ԕ-:M:;0̪ x~%d1J:8ej5g-VtU#1S0 ;NMu<ũ޼a\|`7uoQ煭hf!EXd;ܾfg$sD\Ɇk]`<\3H %<'cabߊ;I_$NSEMfk9x;8$.ZT%#m 3'H {b`epf6dz9c 4peq=2^gH+G2b5mxoۀj8{jl7f3 VH%+𗽓9gRMg)6֕mŗ-VAW-&q.y;KRu:g&2n2`D簣I߼=|͚;%(QJq֦'!u}ɴj##HhN!/&&Q64膠.N.qrO#PAvaŢ8/;ujAndg1onq /TÑoRbLi6[5smmiQ黭zUi}\Ks%(S dV.[BT|!hDepVYKUWVm>wLm*@NM5y|K"D`+1MWwOjfft6'`i 3=T-P-[zK\e[0grM򯫲 /V G RULU(/9#ѝ-I&h~'ch ׄ'qOצi=W'mJ̊nVhT VV&ZhQU[-Uݲ^$h7iw_%$'Н8K]'meAgNUx%] |+nj֞08}mA7 }ITH6)e- S֒/lłڏ֝u//s@НR_|xd5XX%`:ZEפ82,&;FR`7G;(268Y+tnMM+pNXԙ|ZUq[6 |Oj˶5^QzD;ߚQ/kuyJck#DڝsPjLrz]F䤎Qģ*I7y)-UMO5Z |ߥ@46(w_C@kk)Kqbrt*7 9QDyUV$.JPʖ&\G;WP ~yjlllcn1%v6ZNtxgvb-[Ck21 { Eѐfw]mԱ.EL+>خ_E{*7#KTzTš$$*JN-rmņAާ`'ďhNSϥ;TXΚ6:Ey >*4xKh',H{ i` )E¡ T4y4 5@"%sQV +5 XsF"#3羨eQ/nPw]EN vı81jF\kgGfJg%TorɢW a18` N5|z& 2α{3Gl5ץL/Pq>窳jéZ:٣<9 92Ӕw;ՙJ_ѹ<yOJQO. IVE5q6ErKJ>/ے&Pia|M[i'(vrgiI!rfRoͺ s E{wY{6Nq@ʹU]1ɮ&hQ0_&\,ğ[-{1-5JzEg ] {(u,ȗZԺ R. 9)11r}!;-fj+$Rܸ=TjML]yILګ`9l+&-yPyY1&70gSHg"X}A]lay*}x)|3$xR^g<,7V*76\9m&r) ʫ#xeȪ<25j2R؍mT$($xz:k$C\&EC9 ۑvK^oX2+x6N*/~.cukȷ'&*1u"~;oaBw[M Q{_[Di斦AHPQ.ȏ» a @%$Y /ZuDXJm{ͤdռɾ_9dzK –E:t#bd{$.ƥ%v`˕殮PhaÀIC,=n+7A9uƅ)Љ*5? 9-7B`j>L^KTgNwj3٘1m9KA]Rney0a9Jİrm!_5@jY{OG'zʦtx-3N ;I]kYX8uX%D!ZN"Y|Fq/'CKG8*- jpLw݄z8p7G(ӡ6VLJwS r&qtp^S7 ~ Zj?Nn~Pj09&7s*H6hA=qK뉯J[}U} 1 ͯ([I>Jw?XNђG7,BݡHdAl;/ KqyRBԖA1:uO~l7FՎ:hʅ=qnZc {ݔUKda ФH*5I˞^(w5̙D;3wR4*_eқL9@•ƴK=fsl|> erJ!%.+7=o|=݈i\6QnZum豎8#9HN瞖xiYQ;kMSN3mV(@ tt> Ge5K~^mfvbbѸ:܏oȮ|YmLNee LǝN38X52s\0B >df4Fq`zR#ϡF `"Sm5qt}96?CM9nGӳ`r:gLFeRjeWaHd"e'a\[[zrĈ[^jh{W btFYoB_}g>~afBʨB=@K jYmJ,!Q!ptH8 `tS\7y*`~v{RXvj4Sw{L\ckep_㋔=ڀT ?.|bV*R?ʡYu vOdxRe`UzSf2<ɜ&Yl |3^-\"(pCA.P#4]h9/01 ]'?vK81"ޅv\0S(Z>f?3c00fEa泏8D*o؏ٕ^9]h<|#=_E F1[.Z{mB ^[JoFb= 4y}& g & ZGCW=~U..\4U@gm:ةv}mtk&[d#,*/܏ݫnUW?|\J^=Tzx]AM{HzX[uz.n-CBI=ݣ\Դn :.Z~%ߪ㢥긨)hX!]'.%(";,BE:ˁZA՗B{Rg9)]ud|o- %:e!n ċ:B:;Ft_zPz4888A痟 pk`҈Ч,V}/O@};J=.Y@0#}C;{jXŻ&ܴcq~OߚK}+҇C&w'~I 蹑z@eL0^d"v;هQ7p>=qxx `q~"EdO 9"$BX)F0 LH\FRxPyۦ9,

Y'5j6S u XE1)"STBlv|GI#sU 8I6L]U5Mjv "-1e7Tj8Z YUa4 CGd@Fh``CQyQCR@suKJEUE :dV+rLٷuUBA111 ݘ]YZ^) .`UK8 ʼn+(g8"/*xKMҝR ǚInS`q$";#ZD= V5e1T~ΰ.} n'Y HjRnR1TH׶@S>h61>KIH&ţkGջn.NuɓJr}TiJ5pz]Min'эRUmLdfȨi:3+k ZåZq6(܊a9F")=R|F1])JMjcnb 4 {gV.]JT )9Ͷ@f1Ӹ[01XMEj N[2Zt*܌Xri2co4 G Q!0F؇ Z*ӒR"HShk3dR'k(bƶ?{VMqkdz+E CH3Lh5|kJȽ<3~-`;!v] G65x 7Ճթ7?`ߠ&'n{үHuRfnTD:Pq$T~Ԍ!<M–2BXR}V$  Pkp̌.~\\S]e(ݎDbuv Ձ.ͺ.]Ʒ<`}A`W:Td*SVLѱk.Y*K]3ӡSkW\U}uEݕ н 눔5+)XJ.)Yoʩ, n1C&\Rd7r]*G <.mFB%NttՅS*¹`9IaIE#M$Em).Ray<T$YOj)_ZF";)G:ʧ'Ҍ/d+z[m>uovܧHQw2tocN\Q!1W*" uF/UR t#2!@׀PֵAA@C Iȼ&T _u>UzJ9 H-B@TEZNFM.3k&ȤI@Zr>@`k) d(X2Ng xv;QU?]h Qhq9 8e$,|/ /# \+ BaEe2U-̷wT *򙣎`> ԾJ*~sɟe@2>QNZBE5ҥqAd֪|SIke ٯ^NlVD(,LfAN#tp(zLngߧ:OF`+P;V Sm7=ųn%L[?S't zu(0A]K}*$MC|>NCxԁ;`R^x3lǨ ~E^ $/%,TW]:w6E|U'ni^kh%/K7 ~/P<%'86?`7= hzC{ K'Ӝ`>;t}\I&Zg_q嘐\7#SyAw( CO7L'.ֆ*k+.`Ѻx:rg9qҊD/;N;2A:_:Kk MOfhD\Q)L+vTQ5bJ@eƊJqP6&N$ ʪ5|̙- nLͺXr C.пTQooD~'E~^S <'(-(u"dXC)]ڜ'#*G'Oq >xݝ^Ar3Mѧs5%6-}1Np›0CDē:p- ܘ-]O-pƄW8 W; v7nOD2JܧFUz>&'8`G=t<6ijQD+q9D`AxuCI>ZeEJ=q<^xsɟiRw{p<6,tmr F tD6*T1U" x"M3yV:5.γHCL3:BX:/@%'UOJbaRGG_ҶiQ@kdn).2t[3&ɲ7Ջ\]v]h`7ڑ1[4& L'jG[E}@H|.)EyG1 O"JGL_9,X&d稼 -j#-kWY͔c"a7N29ehxCY]ojr@/@0Hloﱂ@Bsy,s,-}`![4mB=ut{J"$ }]= L5=fb4.!(WB$p!iaN,bb~)@j{tN} ֵ-| AF@o8HJ b6!:9~# sx<)-k0ff~hwz_ϔ!E_#_O~~7H[g`vy3-I&vzd@ZC꿲2NPnbfn047Hކ2׳ th(0œAdI79fA^f_ek#X*]^=%2MlF{Mwt\V'YX_ X&IH&Hf>\5\{Wr>V&7ч*j#YrLMst23N8ؼkO_6p/?^9Jd\(U.oPCф Ў'-yUؽ6j3OPӱ) 8OAۋ4,atPC>P/񣾹hhh\.Z3|ϑ2]vz7Mn̏ꦻ-gg uw>|Ss\a]EHP.`C\}5_jZXAjra--ﲞ S,( "TھpA74V8[7MfǠIڼc,1H&vU9bƊ̀ͦ-4(Pߺq)-PWb:wT S r*6َGhy5n!v0JJ\`PEUR8;'x uu0KF8^bIuGNܦ%_ /_a=B;E֞WqJmeBk9ݮZuw@ݮAuǃ 5UGZ PBrM]#p)694ހ:*59S y[lo. $mHtjaWo>9{cud=`p^!rjsE"OY &zgD2칆0PF$ X@Lg}Q8 }4Q+/x tQ/i7UeZr9Gu2"P5ˑX+:G*I6igiTggjQzmʬEK'jTvW)$=K􎿡nGJo莿r4|Q ^. CiM .q+Mzu6c0Ãm;EaMN=XF)KhNW;ofT~<iV'_lҜ>m$͹_:k% mv9+r|ά>o@|]ЁUվ|G#_}]a+@5Y|"T_4atjⅯo/jⅿn/j|r2pTl՜5;K9\\?p\K7ϚK՜PFIS#_їIAKʜ'ȨW}^/u_[Nm5XӰ a<^[amxS,؅]y+о~}9 I&{&KV4NXhTd_-DI4}Ue.7Ɓ:_PÚ;S&=Y7L䠲RUQqPd1T&\J_MjS+1C/AE1Kv8(90IS9SC.p H(!0C5BAZ *ҡs:t 2ـ|1m XU9O3cu>Dl)zRMXqbpz ò8\EV%m8fm`1>z]']i;/)+:}L=Y-:k$^ \B! _rBB;X*/5**=kpNjH> !$`sc&V% 5rN64;T'KNJA\ʀaYw!ز$Sy o^G,P-:NX%-jxw6`!0eE^bj(@pgFcɑ;VPZ 8ek=N/:5\>)b hmT'+/K5v^dv䟃ñlRfpLUC )韉y-b4~F߫P 3tE罴B_#/$.dW]K {m՝LU3tcA{v1Nv(?G׫8ch&>vIQ빴>Q%B6*/5ch[ hZRs]{z|t|u5_r2ݖp. q:PY mxgM8ߟF>_ԀHn[l B /.Z SU95'K`$g-l[B ZB|m,ġydY{LEϯgs[pgBSL9@YC֎1 eüzZ`jω!h> -#$' Aėwpǘ$C=$]]3'WD#f"Vc@g43M[` Vy3*eLPA2hJQ3j(|! V3=5"^g v !wb *䗊dlqCQR7#!Ax@HCP8"흒gKfo6;%N٠ a<+NeQÈ&__%?q*m"dT0;,?VLwe}Y pC[>RH+դIx“?13 -J=Јm)xjLQ fw4˪W\HT 2]DΗ$d0Nm*wN!@ q?!zN',LSٶޑ(Fn6b$9 EB Ű{e7 A3$q*WEX=!mMnʮ:4,~$C1Tr+DIonZ׳AR"xvxm_0Wwr""i3\ m.0)ŨƉ8/QG#K ]SBøċh#0Om$ D0GӹKFHHvEi %HL4BUL:ʩ2ԟEb&0x(`_m \&(p71*03C 3M,]Sg1"a'!Sk }q='(U\sU EܣXߙqJ%0dF(0[1_DUa^qxfI(o54L}o(/v1d G!^@Fp{2G'rxurކ<-S ,C U@ |!Z6 ֦xJ}-a,$)]ãn0貅qF._28-HŅy@{Y+cA:fYɑW8IcA"LNm`I~\J)!R3 `l8? *l8@>a XҤN߮NPQJn ?O<p |hدmxj{Mw 'dM[R AQ833)I#:zCe)@ T!y㈲ #0Na/)Xϟ|EM=,ɕJ Q b,gX23/ /[5Ba#-!UfJcd$uԕfapwc_]y}CT&U/L;$#r!c{7xq2g-6p\r0ff_7eAAx"2Т/=+mr^LͶgswz::K xo$ѝS ]7L#{]ЗP'޿H1@.Di. g7:`] *L-|-E0˒A.^~bR{Ybil³gֻQ#z3F[gʕ^G{m^B~Be./'Aiu}: |pJudq fo:q42?[ggH0gM8->oAZћX-yv&ʤpܟg~逎U&/59le`rz!Oi,CQa)ҥVO3j(AX$!jDm$ˋ\OG@z%`84kkļ1%hvM"aYݵ[\O%$?1|0M>NihX6GGsK2@Faֆƙ%ڈ8G {VQbREu)y1ct㍧m6Z^MjB P'&DCl-1hCS 2(gI8ʹ\fS<uOQw̆gb2eYX>-Ey ɬ?c11s$khreX1҂QQՖkY`p4* B=KxuWP'~YqB,_fqKoO2L1=Co%ac1?ja>EJH2'ۈxfHQa.]Ȕ8}`q%r0ůo~C=:SGE:h( VA\.2auNB`oN=4B)"m}2ƘT5!HY_WG]vLV˸Tl6o2ŋ]?6+a\Fso >d5O}|Gqԯ~GacYcv[)>&*tF+Jëg%.dE&<,``,$CfRqjhFW`rw`~h$~/7qw=P>P ʅZr>}!Qe<8$'ЪoU=FD{U$kPWXa9ڏFtMi8_8z@"zc=Ebd4ru bbA7sRGs/?c/(dp4LH .vO0*`k2b?*mM S$CglRxjypVogPBP`k+n( ~&SU=IҜ^hZYrl h^X.gmX$7U2n1-o|D/vUIcZ nC1 ȩ/_s@K %'z <\Y▩xi+Liδ]2JtQ*oeEt+]҃s׻ dK^Yv4DO} R,{?OKu(}"Z * Xs&8U G%ǟ *S rp74<%54|&ce♴aFΈ[P0?&jxV122s^-M%.$Pfddހur$#U?hRcS_LZXb.%#LJS2G >1B1NӋ@rCH9Y9%NL9H$D}`~ByPK4R 50lvа1S2h #\p940ruƑoҟrCCbٟ})Z$Hj1qWF1i.|d DBz^ iZPU߅{I? lW.giF3Bda;/Z(&q,;Du2h1FLcJxnM ^rX|(p[( lvDD" Tߥ"a_#_)'QdB*1(熄TSnzd3gh0 r!F1:zsvu Qwtعy sC.q!#wJL22_gX}]Gh](YJ$X;޳d'*$-h~_q`m49 xYɘkW-xp1Io舭8:R, ;K#YM$}P (-% 4^q8W:B }J8UeKl졬vfRrPvjd۫6l.SqTv=`ؙfڲۀh6i@ VudWPw&|߮>=3g}?6Ȩ$3F;q|]+xuھbcY# zWK)%<΄Y=܌Pq,s?J|JDe:jq&m.妓e)guqlf)d}o/S&Y{g^c8\5bˆ*\4v#T'Sfr;y=HzSa%x._h _r M)K_ZpFZah8c,ɬ(/Xβ5t?D<ȁ7DE@3AIoq/-`mdj9Sò\2ќZ8'$e5(\J@Ţ E&VG~|`VVY_Y .J0a/,ý"[r4 Dt98ۍE[tp)/)K0s30O8xS,8;GL3:\A?ϐ@&Sd5Z",4Í,ZxoXb";}7|_fA5/ߏ9hziTz|si'ς~ .~9Xw;9.ϻ_Q6f ynǂw4I oj}Կ 唸av璚C(3I5 @) 2Q1$KǃL_.3\0mq@o:(K _b3rD%m [+8~X\(co\P\Z`ط9AwrS.W.2R6(c-b +}9:aAQ@JILBGH8qm\2ax.A]qNYmJKfx?NqL{u4'J{e>D B`JS閬t)䯃ǯTՍ ?0rFolxQAq*^K $BPiX\H<)7ruc!lQ y$ A6Ĉ1TG/R. щ 5GСReaqG-}& I>* 4ICDAhi>Q#K ݀ޢJ"6J?b&.JV Yh.-@[Ns%Ct5c@|#IP5rZwj\C+$[CUyaɵX j۷ 9RIq`b<͆Zaf-8T? uAuO) uM#*5BR/fR^&*oqz 2 H'#Fr&HP=-4jLS&+ ÂR#(h3@1#ko|vG߰Қ!\"fHUfK8sXyJNKl[כjxLHW20*."B'J є ^Md MBL؂_͵]6 ( &'s{ن깨?A@l3Q5 7%5IZrfTѭrd1a$XL̲pvH{gh "*d]h\/;^7?oFuUEMVem2oeB"x%n*x?D>75Lcbp:E Ώ6ep }9Ϝm2ʷLNyuW&-}ФHuENNEU pHhuh4TYݢjʜ"vPQkǰbSmU|K1B4e(9))J׍RŀQEF!'i(hj1wt'iA}ciΎbIm2Ԫ6B(0wwә9Wk\4qkBWi6f>bIWCs$yHe[ ?Aج5r/k|Y/䒅ciޟ"rb᷷Bdf 9uF,̸p 0Om=#vZ$]s>LDD e/T `l&r:ml]E7m 2-'29$Elj^ iUN\Qx&TPVNۭ}C搡IVιI@ |#YFO3U&oc)9H`S^v jܐo}/6υ?/FiPBf{3c:_H51 hؤR{ Q! E7Mv?.u޵);Z|CU&挡B$\sE όi>0&O;3$[?9 ^ :B$rMpk0G8؝!R_ p2D-k-_ !k3?ҥMtap; q?待Ϳd=sw\:83Ⓜg!$6~+=gGP;[*ݽ`D&u/s39vddf7zZ%~?,1iU@95-Dޮ ۴/nqlajJ>Ne |q:M~a{ C) sL 8i'q< pApr2\Fk)pT"Vhaj KtR`f]f@ZiE LbNi?|F%- Lpʷ Sv~^C M꾄:p$ _^PHwѝ$"g ;rga=êмp^2hJX/,I[K?lLdVC0t_VJ 0@hCG?TBi$߹ &`'h&4PkjyF^+~`^s].`#:?# -]3ڇP7?-+W!ǭBwJiB|_$%jS096sh|&ivkVD1HE+{ºXX{|!Ғf+71ŻZ#맋rKLEb4+1 =+.f t, UtiJ NU,l؃-essY6g|G)1)r-inMqk V~N R?jdMĺrB^f@\{ <"-󕨠M,43"ŘΔHJGuG,\@YG'b]Ơ)- ĭECvfXeV5 fkGLv|&9}}$|W4\NQPgE/A~O‡.GG埽ceXd,366f`,PŢ`XU=_Ap#ڸxWk+$KH Gh.C'm4rQR <͞/`Kq5paA4vi0b5F׿*+0%FX5fCU|Sx-vg2WIAdʄ%3A*A4at:s'n Bj'>Vv a鐂=O͆w&bpȂ0@B1t::/Y5 ~0ePvF񎁱j|YНe?4SEacu%7:W\&V?]?4hS- fh0QsN0)TQj&Кp[ƧZ,+gk4IKGQ: RAnJC z=@hK웵Y-PȫgTm<3zFN+{g *qY{,*N_AHHNΜS 4NZ4iTω1$ũ6i1"p_B>#aCbPb,joB`i4&+fjŇA?<[ sߔTļ ̢JrQc窹nʌBB)Vs7/K^qҮT6 ڝ7|6#^ ]O( or[l>"$@ H]0ˑ{Կ1c?- s#֘ɽYjTETI"&r<,YY`bE8 s5!"%sN#)%*Rʹ/M\K=XvkqdlJ$Ql4,5ulHȗOv{g"]fH}ӈ"#RDЏ=j8(?p/W g>O!K,eĩƘ7ur{5!{ΐ5y3o([. "`Л#8J)~q)T8,gTNJoA]@fX–>{P .r%L%CV;gj\~RevfַA?BܲL΄F=W\3:X‘޴%3&7c7 -Wwm:/d ?|E`_YZYHEtO)_1իE%t'5Wh&P@ՇQH՝iMx`6)J0Yn/0ц2rL7Pׄv`Z QJƙFƅfŠA[` Y-Hv w` ?kV{Zp;V+n+mȊk|!0ۋ[!ýx[GZ菄. qLZ^s%I7\tQ@$_t?LX'Ӷ|!U4+JA!8Rl~4qLJ<5M>j$~u_dO᳄.| ? xCSD(VSYrت?Kۘ=~&+%n=U>BZ,\:x>o|t>8ŔPkY&xT~A/~0%C #zpdw{oCmQ}8IU69O O{0QHc8ۤ!G+%C %qnfE#kAE T$ p:~5V2aQ8EςjYN]y ƟX,`rjQ[djO- G~'V VVLP0`-p{X2 Q]}G-5A4 Ѕ[0bUyA1,ʫ'@[dbR+k kXo~1qxt6}qjlaJnPd Dj)5`+P2Bff0-p`1Y );P4b .3a< B.lQ7 3,nYt(fߟbbItdX۲RDnp5F2T{‹t-Qκ.(PT?1WߨPo\Z: SD7t}|:Mu Bk^%dWavP:FCsvܡ|eHw.\KVB0b8 L唍P@9>>ʔ`x* Ft|,V=Q9U5Ԥ*i9?I\5 %U0 B]?:)pFXHD?^"<*|C"^ݓvw4 bri*2zFh0L)f,*H5 ڠdizͦRMl??VJO(Ѻ~p (3!I Vf20 Ѐ׀Vb?#(ڕ8 ƆKew?D' ֈ =-QS -lkSpR k`ۓ1x3¤>j` $Bq):3x$L-2~^sp36_YiP.5kA(׊5 .eWB+Y^y˼;.lLֲ&mSE9r,kZLޕ ,zl`9Dmp/^BrVɈu8T ΒBJ)(ou0'RV C> ȦƓ0pAFK:ASaU q ?y}xDcZƢ)/a oס4|j4|Ew2$q Hͪ&&t!9('A0BLfR$ f]ܶ*q~ܒDj&ʁB}A`(ѵ囮Qﻟ'xP>?`lЇu`5++Vl}}v)e8N!fy64оvrVqɺkqnuJ'Yv @xR7 Itz@9 O7'C*xFq1VXxz SX}C]h:>-]bYF xf(Xv ^8obNbq1N h"0HؽUqavHn30ʠ}}&l,Jy n) 8-4!#WIutuV3jECix@z#.j>ypjZ1C@eŶϪnh]=}e6CW;#ƣ4nhؤ+VAluXR~U6X'b ^lp]o<,,Nt'k~rt FYudz,TYs֩1)2V>lLJ̀C$ij'7>yG߬΂t =fru1&X-9 eN g@-;4,W?p)~yC唌[I0e`0r`Ӆ;9Z}p/8j_u{IхVz'n^|=NL祅ӪՑTYe^,.Om JPFM6D0}sX)> I>v1Sܖ1orO9zYN.ĀP}C05Y)Q=AFԾnTkww {͍BfkKo]›pN;.THXіE)SEwX"=D c,_ս常:t[n/ˢ:<ĝUPX/hY02EnA}gYڜ>>vܗվ9i3u'orUXM{ n8+i|E&Ml#8/prE `W3`vzuPeW *T 6Ͷrnu,TS3H<#P91v. Sd**N3~ɷJ*=zaT6LѡL+0s8Ra\4sd1*VX>4YL%{ow2YvtB<{$S.Ua\Sq=.kj?h:ȉaZ܄kGm,L{iÕ@=<awګg#RvڐIëi2֊ v’4]%p"xhbCx{!ɾD}X6lFk&8F930-Y %Q!縈Yv${_M&3Y u]՗81\4MAF2]kTS|T264RCɬVxIV:b9.}!cTs2[Uüef9N*'Tw[c$#c x9I0(lYHʬ^7u:r t6g}q*Ӊ {))Ub+ _YP@eOfxo)+{e%J!ox)[/t.{Jbf$G$*yU:BOCXJ :GC=bhTY3F\ٻWֳ (J8>%FVÁP8j\܂3ɯFX@?2+e@ eHfA4po_bab}y9o“ 8`O 86vFRʥ"w*.ob(jN֦"^%'ꆵz'KG[fJfP:yٴ3 CeĶpТ+{4hu,!_bxi],/'T]SSq:"~%[g 2މ[? q݂`Hz(c@&nٳ~Rv=c塰R>,bDb_IKR_i&`~6MU".8'S͔А͒Z<Ĥ֖( QK 3'? mb$`X⮆uK'nYi3_Gaa{7{2e}?-6K3Rej!t+_z1JZf_K=W*@3=/ ]ts}:"si bYVρ=r,.vf zWi0%\IxF&U@O1J()e-뉺2n&#/@VQ=_VP7ۇc$HASOd+pN`!7*;juKWJvҶTh93<-b2(J`+8CgL9P Ԭg{ֲ'׳[X`^VsiXmAUn\8S~ORvĪCd׽2<4؝SLMS|/JnʏӰ!/&x`qW ˂א~ [Q3Uh ,Dz8rY0WTؘ& ҫ M-UYCU_ RqO.[G4eUW.X T0";?Pi 1jfb В]aУ7NE$-'1#GBHgC+2ߌqb9g)]g%Z@zW~`0O4,Ȏ 8?6:7uSpmz 0:7"V ĝ73 {R3 k R0!B=.z>{eS#7&B#xV͍ZY6X~UE9>|MB߇;E;f1snݷظ;^taL|q=;wgޏ{Do>j>Eo{!{z_t p!\pτLјH$n})1~wknpc/~J! = !4^O.znpq=>v_/TDgB 9T7I xxz= -SL `!2m58KAezӑ66 S]y~ڊV1Kk⋱Y{D99~;_ b~CINJt>R#$|d?1,7&B:"K(/0eϧ(.*`ȞGd6D`!I{m3rNӗB%vd-P׌dH90$8^8Řth] $^)cƌ$?^r#z/z_΃3XE}8nh;vc$£? yw|^??`~~ٻ;]o,ytA9 ˳ӓXE;(QNi,ݟ5wtzM~?;?&tϽ6};=`?;0HŚPD%N`xQ^3Т%9=y:o{0T'[LX= *G-qK G`4*@|&&?8<9ٻ! ҒY_y>AR`tj%RG-y͡:!~B CWb&8x)`:S3 y V/wzWsϏhz?ϟW a`J4*Ŭoxz?5Y;~;y:  l/^l))k[l[ֶ3&FrѶSNaxɘd۷ږ4mǶqScQ`CuKm1ObWBThv "tgQJ>UkL/BA%[P2{ëplܟmHn@1<ײ /B@GPcϞZ2&0Rm*ra|=bx`NE֍  r~6X3-YoRgh-ii F n>T!#G,D^ HEi`yG&~ ntƘ % fV˃j* 5N9BjOOXzXj4ADXDh ܘ>%LRɸ5 (DQ4ȡN0iq_s_e`0/^')ڋ S10Mf32(Z_>"|gY:h~Q%@K%C.> `>{K$w1z E}'Z){Kno/LgC7f{t6I!WV9%gbX뀃ɭLd(d6x s)U6&Pr@Y"dC6h菒& AΎbʠ.GR^Th+!g\[nhDb;qe.] t-(sЁ#mLϟ<wl [afomD_#~t _4ѽF(I 7*k ֡,*?''Ԋ vk]tI5Ytذvt8.X7ay"mv۔l!=f `"GY?J+<B:$V$KH =V^czIӜDFЖaie)tHXLBlW`&4u)s,CBD*9\EKgY B=4r*ƲpS'Fr>E2Ez ҵ04F8p/BU? :h2ceI|ӓO>CO%m3Hb/ҝ„Ynʩwc<_78p}1w?]^, `YH,g.8 n﯇HmQ̼]Oo־8Z3^3x\r,I)>!G CeJ_w O㚰m;Ůf%Zgׂ|KZ(X)Q^A"͊E<a\8X&`FG7=Ry ftHH/Ogj>yҡ큌K]? e2G- D_Klt1dŜs5Kh|MnRy͜.I_/R;0|ś?5k5[ݭ5vP-w4Ri BS=K> qgôHn:fJKKΤiu[<`nQ"=Ac0OD?߬~ =h,AzPK h w.e`i Eߟuݷ f$A Z[55t~ش˺Fw79޵0j~30W%[OO/Wiq$Qyo|?h&iA IXWOfvu;0LƗP@9Bw7dz0!rUzE}$a6 6Nۗ} } ?(g˧>̿B~nPp9baXB D@LRj*b"^JdƝ sJ;U MbP^;"&U'LSu1Ol;B0M#d,!"234`^"Q( D*_Hd|-F8DtLAk 5W1fsq*#XyU5L5l/Dvh:㎧Am Q`MC>kg5f^/]w]:d6`&|H?+9. Hgp鈼 F*h:)#?[ѐF5šFiȰ~!\A20[djTL (lL}1e{$4 N9Vn?M)_ѱ4ɣ4JS #j({,<)UimxGf/zti)F:$'^Q -jŽ(djBKatB,$ U-1d]Enn_EgpѶטQU@ϨA(nTC`IYWIv2kbßdD~]-٧`(xbR]%ɘtdb*u)b~rUdB e7 rw-/TCDqI V€R00My H7a.TW*P v82>/bjwH('!>nT6ʶb"ADg:\Dܷn((6Tڅ; JcRˇȼcT sS[H2УwaE%ۗ!$ i]1- Rv]8-B™3Hu93&]=\B(FydIej,HGb@hXesc~41޹Pn'^W~_&d= jQUeaLmdpM .pCb(h'DGb?c8Z]!*"X d-G`DȗJ8"@ycd*cxg7n))&!2sTb#0CVZ^.?'*JxRƅ<E!tLZ$vCՙx*bY $i ŁA2ڋ[Vb&r4q6vh)̴؅X&izjS۝rªd,'0R `LIbQ@_nH1ҰM` L0/ %hKQ#wRRPȷӄ>qj+<}{0˒hCMIs֏ak_*|#m6l].p[%5뭬yHߟֶGc3b(ȣu^q(DϽ׌ CM^ݻ(A^6r@Dxλs$gWX vXa}z 4t\7 .k",~pȢ~p|!Kz":I/)ڗI2 ~$|#Z~eBE!F@k!#e"fk)79C1cpAfŠ2ʬ&xIbO5X1EfG ĕבV!Jb+h2{@凡XrӫF8퇫 IR&]MixVWCPNMEk<W .b`Jw ly ާ~-Q FU`!Ļ/2J">P+dZ [G}E;B~)UR2e}t3pS 9`bad'K,`Dgz$H(? eI->VJh !GLCQ%`|X+h06b|zJD3^F aS[4 >ۄ|3M>C1O0 "G`QYA{T3Dbi1癮OXGzd.0fJffI Nu W!"PW^ 8^vBɀ<` atn2 ! 泷a<> BN,ʒy:+ N!f vB3j$A}2iⶐ!5>nId80G Y 34D c–F F:o;J{QH}zjn]B7Xv`E%a:IPXKSߴp8 ܴB[SL2 &K'g-BrϫSEU)f)znxKq%W-@0t"LؙMfa/a6Z5ou숆_{r/LWenK󬛬GR`܅K 5~r3yʛW h7PFBj?@UjAYU pfNx 0a*@Lg#<7oDDi;v-]9׷^֌\o6lV | 6i[%r]-n Z jCq+JUy4*3nx{nĝCgӳng{o#L/c]_x{@-wv{GzQlsy)ozhEGcwrLVZCvEpo?W_BfUmZ2ci\=˦(ıhy Dl!x3h; ͗!(CQ Xc6- ]_o:JY2OmUfq #ߋO,mJM8}L;HѾPmL e wAp4o;XMZ D 4z`VX t^PNl5M.>{p }nP 攉e!ء bP ,1aOI%/g$i%芲4PFƛ:Qء Ћh;N.հu2ٹ[С 2]H큙~i|ITB2jFK`t(RjC`Afu UPIqUpC`P>`lVM(p5.VkEP˪,R/yՊEEw(-W$c5 PqbqhZChCD47Ovk*qBEd"L㝻FJh)4աlʅ4eBf0<܈P/}jt($E,VP {Y P}oPJWx8(eVz`.ҫWw0ANWjeI¨oP!TFiv(eEWE[ݡ \vʠeu4SՋЬ,OS PPlN{S:;' P&dY |='f,@|<r#Vm2`V 4bwږh9#F.^ L9|k9V6ycD,@($`HTv%M>O>NeޓJU 8<G:lLyH,)1dr4%oQ/T,m&'4:TsR OSf"r Jn޴9nJ+|SdInO?hT|6"7f$L dR;<}=wTRm1{Er.,v nk*w`z)x +4_I2GBT9˜jc4FҴw\ki;CUeΘs~oTeZhdJJ*'ҏٍB1eElh75Rj.i e>wWGo*m|E:[Cc|CSehD?g#ζ)ca-YűK)Jܖͣ4S|v>fP HX@% 4}M^-,RcdKj)n/siaF¤\4klGW~Cv &`v{r]Wi/ZSܧRroz;H,}* mJ_ٶR5,_P}̉/y:AQ[))r%fF8_{W^aW"N1urown!j4ʶp)Ak`@ ~ktkwUo0ab\脕c>#-CZ}/hnkceBdV5S伋w[XQ:{rA~deٞjwxnr>70c -#SQ`4? {1W%2mbVmIj)NNꙫ>%_)[L<9|=y!w ɓO?:tL^t`􌪘>ǣzFUmJjuAB _Z-~Ȍ}' ؕW=0y2ӽX7vMLzAs *w8f^fecg^8Η ˢe㫺6@A p.tʫfy팹t z`t=;2zۋJAW9?(i")̴لUcpb  c'!8RTߗB,/فwJ Il |  jN#R#ƶqHIvf[[z5`ӵA7 tӻTi9I-4#'©&C^sA[[~N9MR𫀱׊ pN=+g's@7`b6Xb E###YgE /Č &ɨN(޳|ő7!#i`se $ЭBϗQ; fG80A˗ K~L]`H%^bd 5 qs-,R9D5Vsf'MDاȿE^kLU"mro{7sDPWܖQM',Ĝͅylb-䲠 Fzo4n.B!u?l NF(]84(4`C\{~(fzCE XhivVi02 H)Y\aeD:dlPx#w5Ɲظ֝Z9([1hpp(\8|u%ܶc0BNAJ\c/Ha2W֊\vV(/]t N#63GH602PZ=?WXAUWW-^d:B;U'ڭW ȃ)uEI a1oۃc9 >M|Kʸ|l'Gx0I<`n0qϓg3iY_{G}5Aߣ.i V), n˫S>1Zjkbw`WW+>yv#6Bdt [mG} Po¨4 ڰcyō/IJ(;f3ŸS7sA/O˹O ^P~*dЖjsi {x%0&B{/_E4؅ps -*!:gO~@|XKr3弼HI*yrh $^6*v۸w7kj?p7d_( e~Eb#\LHv60 g5C7 [$PV*KX%Ri)V;b5+oۃTDe: %GLXЦ `ɤ@fQ/j 粚[Y8.cRIaPe3[2z5c#ֳULf<dž ޷@! ]fK1 *1OwsghQ>;<P[at6ZҀN|Op;7DuL6aZ7N9R X=JA<4׵R,CT-F|}ß5qJQplzlA_{'Yǣ3#:|=~;}!$"G"b&$aubǒm+m w^+u I&|((HZJ/sf6yOߑ;fy;ݳ_vA1ZļѼ~AlPJs;e3ڠ*S|+'JUli}^d(!< ]FTJʰ\(] 9-;*HJd -"jdA19/eQ;M Y]6WWwjP'׆"cAjx5J.aj^"{4=R>qX38k~)YfD:4_il炏#ubҨ}ʞ;v0u4D`#Y33f'@^w}JWs?%az5MFڈz;W0Cj>c9s -[>JP JOt4!(FHQ*ng)F!p>ݧ$ n 쟵(2e@T%/Me1(+(MYS]a7! Tv=YIAބgPD#Zd{kp;Y!,{72恜Cԓ^<@]o[D(XV_=8)$xe> 4s$b?ƘzA@zbr_^<6rݷ?ӎu`DI{ҌJ"RLᒌX(i^ΪKs')ٽhՈVV *RXZb&Rc:]N^1^]I?q`=:a _9Wyu&4.fi1JC9(lpQu[Zrft+(ǐ=r:s ہZ | W=beACPvD꺜]WKs/Fd3o+28'p*t Xꉺ8CCH"wƮ=PCk9v {P'm.MP6DEC_- Z@;:9V5; )q0 `[wk@`I0_bFQ/SxvP7,9e[EmZVъ:˲oZZT Q گ\2%4, <aA uBuO7l+P%: Dt.?S~NCU B}}tS?hA_@Xv?>WɒyBUH \B9 ^%Sy- 4h!8!Gm\aD%Cŋ#@¹ϽC@k_ ځRE Kj>1/™[u v!Mv |Id[j{Cp'+8M|lԒض o'߰]x5=b5xd?ג0g%ȩC5~]SնlK'W D.FGv\/_: z#vz=V7Aя֬g4S$9FٱIэryBF1@qKQ6]lkBRQESOjcVUmtfQ 2Ks#7nTfyoS,Pc^R;f~J`5fI в);!z#qP=JCYMPFྪmm Z]b*uR' tD$xb %mSڰLcWA: 5ru@i*y8ՠ1_|ѯGQk|EZ~+IކU*ͫ©=>UwGSj*ĝQ@`3B,n}*18u;`61u7R-tO $MwoX 8}Ǹq5z5B )];3 S⓯wY\w׹s]瞹#pвvd4CpݛwN,àqAy/O6LdMs iגI6B/1-ϛJBV')"۱"|d@v^IꝌ1ǜDbᶣ /C3O5YK0hRnIcjS (l:6̾^FfzfxsΊiS'2wԻRMޖU '7zfkqɎwN QMY2$C$&E||y95e!u3x6*t\Kir8u;}f2o}l,}o,fw `Sq&[^{ņ̳eh<$@X! b)%)=}Lހ';G,l֝(h\QdxrYNZԋ|bZS#F[I{[4(Re~1o0V,83@_Ȳ=?,gQѳ1{gOz@MSYipɉ\]7Ly0(,B Ǝ a5J8O)]6ɫWwSBWàe=9~Ϣ/KzOS x+?+9(@ֿ ~g0=NFI?Io6?LzE;]{?N%^bF [ApW"=|IzZGPH\m\oV7 nϐ*?>EOqMcǗ+[~'mʺ)%_k{^>I~?ݯ$xc %VORTl:o 醨9-Nz R Z#83 K$\ׅٔ>I܌pl~VuV3 Y;ѥIZH31Na&*}gUpѨgA=-7zC>RTVL)~#9TDde-T*rp|,+]ؼ- 4Op'݁vǀˢvٖdo4|& V0p1KOu#!' C|;TٍNlKeE&AM䇧;"S"'?-~I LlK-dKnHXeRDnY]kkVI yz)f%oi4qʴ FYN*xdl2131wՊ1tȢJ}tKP e[Kœ6qF)5OjV Ƨ -$6Toj g^μ -v2>-UXO;khf߂_|*YG1.w9VyhJY2TwZ@þ ;+.-j+|="kɭAC;x6?0]r9{{s|"u186ej+ U4m͌22e6~č1<>7Vܤ`.KL/*˹;oQ~ I(U J=%V1*ECF}f~Rmrp2Co@4 CK=rpMu+u}JPum@3/3QWʫQԂd+;zh N τ,)Y_/ R[5j !}~ 7,5 |jl6'{cs2$Ut @@,39M[]x7w158= 'r YNɘe3;X_> (/o!w|LN8b3x 4P?!ץ"Ibbnкz0-rrM8/b7 :USḭMXFl'@ QM`ʠCA+'֢$0!zf^9ɎTW@[rΙi8%{OC9rN ü"$^rI 9X+gu%qvl(/sJ)7 xch3v[ Єl+vZ/sXkxv?m\8֌D==tѾ^\䫉&as:qh.GMs4뽽¡FR@tpSRpQ`f?vW:t EAYPcCdL۱Z>e|5ev^.V?cm?˧\F@ @GpOkԾgLc~ ܕ-{ar,M+ćp#Gt=[oq20m098ZC0Ѐ(5+n1dA4# ٭b-|GnХ@EFIl(B9'mp?/^4_fG^yQ@Hؠr8?@-p3˶ged?vlؽ^P;?Xp\efj?gy ~尫(܊fYITkgp`s%<\&?xJ"k_ԳrhWA@f[I"5\2"UQx#8'n!m/tClгi7c)Xr[Ax򐕧0~ &hįIT_,WW[`f\dgxZBd؎TmD$3x>yjho߯=XRN<갷zݙ E/~+vJʅ+Ulp&OnA0rS/E59PfIGĵ+h)j5W޾1XZ%br-.oIEx "1 עq xJ%J?ҺB .8[ 5w?<=/*\\(,+N %?+/rǚuXJ:ĺ80ޟmu>ڲJ'5UޞY٠hIȿkŒBa[݅Ul("i:}4Ydž#Ტ|ib]B5ϛ8shF4:1}k-#.^wTӛM:ٛ6ؓܰ}X ry9.vPGY/;5ݤj^ 0ncIZWS7dwF,d=ax[Sm/Kԇ}0SL\u4gkw=^.K*վ%_=cs]f2ϧ4͜/`O7Էo< wr?6>y&}Rj2y,,N`b=Ltz3ybc a9V3m jPہIv_ׯ р h ո) 6V$;I-RѵQDVOlO'TYcŭXoלIOGz.]WÖS33ge..0d\snJ4*OY+QH?<7%Z++N$#Ubb'ɵ툅 + ? 2 ~;>(n˩澊WӐr_ƧT6_}~k|9+9|}ت=â#pCq`Ġ618 6dzw! @bWJ^MI=J@zF{Y=|7)2i=C2w%v\@Ő7O1+EqkuWJd` ';5ᢟOW|r@vD&3 Ε&x ǧbVB!Gj vQ" pxX;F!s߇Ը}c0XWW%%$> TAz"%s&'!juc FVs0`goZ A1u=$gHrXІQՋ~ OA o <$ lT(1ry_:_'NY>='Zܦ't0 n_Fw8w{^}ES]Fl {mл DA}+`6&{/{ })4BZ.T?ꃱ_̗\Ae/%ԙ:)))˝e8IcXdor%%}8F]ƣ Ex8Ayʊ0$kաu'CHX ޴[ ф`Mh쯣*@S(w6s$C ʚɎ]yLnd0ϑɎޞǜț%=+ܦ>p"/fX -%>%3W~L#>nS{F(@"ѮN৒MҲe⿹!t(m:-in[Ujtf2N7{gT#Te/.p^DKl1(8X ɪTC>J;MIt,}5H)dvd+(cޯ5Nbc`V,FIWBZݥD4FKˋdj!iZKƌe*;lPHOs̝60+ajki*xri[|+o(Ձ.+)Ћ~r?@GBU?%aJTW6GRYNJPAI)"h/{7$f18hUQJTITrһ.#?ݜ,ӽq4z*_Ioɡa,1'AMTϻSNhZwK>a @}geQPg /]6w I0UdʐJ ]o@GW$t؛T*&LC3[Q3H`sV*rT+9&OMuzU3d6"Szz._ƓmX@rQ8Ơo/x!l"|֛.LNn'Y/}J.)9T?Lғ0v =y&jJe L2Icq싽ϓtgRtw*Ab/{V^DE,ge6Dn䐺~"CϘ.!rS{ocB{ S{]yƉS+SP'=[)yxαq&J*~kVfHLJ 'źЯmai2 k/T<>@yܛŜke)Mw7Jx';߯)#դvlۈaRWZ<7;,.:;j;|+k3031`Al]^m>e (o7NrvZ?A Aӟ'O##״@od>>"d&r2؂ݨ "7eHnWS4XX ۫}=ѩEJ'q"C+-B+ڨ&v&|y~&B&}]Gn2f[)Yм<.:\5uU/ ÊRnn$mqT_v5M(Yo[{)+cKL`CoFDZssvk7/`L_$ս )47 _!ayq XiQ< =vUZ9X᩸op*|J/qҪ5z#ґ3!6lfjpwp?\ަ|d=D'FxF299 ZX!}J/ UK3cCX0D3U&R7 .U|aٲ5FQFs(JZ/N ߱2Eޜۢ1mYL'];j)݋n]D8@zP&ɔm^9#j@'p\@} P&rAGfWX9ʷ ZquQwy۠}Lg'7Ꮆ]&,0P՘~ 6v&1/w]޿?>ֱRd~ QbCsǁ8U#1]Szeڬo \q$ .J@"@Iю͇pe_&l)+eQ ŤO\xFw-Stglmqi/^^ђƽ4Mc~l_g%U¿bY ¬:ЪxuX0*HE_hh慶"Jֲt-o`.>esN$F&%W$A2]^mY1-hWy$>| A3 //pE|+ 3 &p ݺײZVewy]PZ;˺ve*1VwE#c)alF*\7l 87T!GօyN MB+FuZi%y)< 㢦pnA[n^6cd.xlҞ1sC gi_cƠ)獃hb߸i}#~O,20cI1XƤ3x=ߔywM x8(C:,>bޅLԭ/ZwF I>unsf#sM GM !_e= slRw 0\CGQd4.[E#'޺w[&΍S0Օq0 Ը\N^8nO;ExAo R b}w@[dNhRNE8i]\=A@73Kj|]ki+..q,py߄\sbc^q._"X݉v+<ۨ21d?w9+,Zs{~- Iu.QXMSj)Ωȣ0ނK"4+E̼;嵃']5ɘ3nYT6D-C/=_$Y`02"D|G41L`;u F=yhMAHʉζ[V an?=\yJ M zAƔ*Qv'9 !TOާgO%>C<{nN(jd͙H }q(dAE-*- D wԍ[2=P,$p{!."h#tYT#Y᎞)%K2~`r{w]BLaU|c`E w"miz wK_#OUrHָHk;·H pgq@6L#g#eiKu# .@t&^f`= Ok.QKdsG=AM/h[}A^[ʁ>~\@Zwj\14[!vnf}jؤmW)tT%m$WvdH&)HfI1Vj)DcG ;B([SE) ! GkM?@ Un !ҸaK!w<T̂nw\L^x1h|$L8p,K' M_PW bvc|0.DxU2“#y(u\d1RS42 :0dYSr\s^vҗi~3'ŧqQLBpIY]}NR:N2)5z&f-R[; w_ƚηuB[M6m!IZprOψuB[BXp`!$ڄ|(y 1\ d~/chEd@92_zUk00x󵖑SNjiQ@S`QZBX.'Ϭ۞&a&0(pA&:#nޜd-˩j D5krLV$ʋj~=aPEe\ctP(z|U,isz!QL(6EK1XE}=/1GRU|ЂiA?oTC lĊ6Ñ v "Ls(^72۟LJOGTͅI>;}z+af "xߧ"p(2Fb0V7? `4Cgp2_pmKx.kKب[0%և o&) a qXt EKs35Ue\puޒ¨)֦փfu6;vCr]ZL"eOΗG涹&׫,ZF.+zbn ])y@tzJh:b!yNvDޏ:pI=50_m (Kjf{T "+3N./L@V1 S d5)<N4ӏI#ɡ zi'SȲ6Y%%p[`fbMյk=TAy27BE&cu#5V94D܄qwW¬)d0b@^vTGՉRTDž|8ZȃylP%XrZi.[4Fvd bf`xd8jM,*>!b:-Cla'YȖo'YO&gv;u%er*eι 'R.ʦ]᱐1Y+bm=YuY"sfNne=+Q>~͊[cA|e!n-|WPj4@N!oR 8NE'&\h"j$ْ֥X}D.D. tU2JU{Y 'kQ 'xJ5ò9XcƉA("SxUUW._q0LDppڔ &t9)R&&,5Hi] J:˿bf9쿳0pir)9o|6QF}(;z}Pt|pCZNkxWNNʨxFEge٫=7X}MuIe#* ʶwGOϞ<2>f 0#'|lQq9`48GQ5؀ ǜ# mJ4K:؟Eo4^ =̎o#D:=D/0AxIJ/_wjm`x7/79aMX-[J`BAPAggmx>߽+1e'~Jvƈ2%nX\\l~z8IX9b[42mb'>jhh%k3%MtvDCN EkHSDjWIʛR,6B^I-:HǎPhW7n "Sש-.tdy n]%'~HMqAh2B,rXr*(;RE(ǚ~׺@+Cj:=('iijڱz,$Rzfl!W>gsW ^2r&?NmڼG {*Bm$7|GnM(\ (B/87zT`a 7ybM#|ǝ}o1@zjck$F1RU̯!9GʯԒ;>YVԣ"ћ2|TY78;?@pkk A/\ݛq{~wo/jۉpzTE.._A0fɤ&%ui[(-*QQX*f]&4l0_߶QUnlĮh?1[lsBaϞZF)ff_6c skTW.M& IMʶ 9HaΒ9݇sr#*xGz)2YUD#Q5Gj̧̄ vzT&D)E]{QujIrQ@Ec JPtLU3 + cb~:/\hRF%I\o&Mۇ12 a%'^o,}\`K!*1 H隉YSȁd3 @?!K h1b+W0SͷbA? !<S̰ǁ]Xd伨 g/RHm$|1E]ff 1b }wF*V[bsf^ }E!5]9r3h]A0eۄgCRFj*Ɓd֓%vC,ߣh3O9Vr9PEJ,`G0:c3ƎE]]hezO&!AI݉l13opy!0U/ q$zo5 A>`@PimZah #z 8#'NȌ>mSG^^^-/9Ӗdxpk 8"PVO-~\FVJ/XI3v(N 73 Q JBRoY qJ!4u˻u1"\zbKwR 5 +*]IES>j8gX<̠.WWf )% ]']$yU]$'{tK&?ffmx3W"~oNyt?R0 O$OņE}w4P%s&uU >$LNcR׈e~y)+RU{}Lom?8XlU TB{!xNRLI PX.Vߘ=iQsf.t^(ڲRCE{c~}/sئP7-B"hŤFn?\.@ߕ]Fwĭlɫ2L%,x[, mrn$rꑬLH/ cYQz]4acFGNi$:ږ] " qb5#W|=(]@z0QQ)EaU/-7lѬ XC݆p M4oʬggōY1v}ݤ_Yrߒs^ڲ`%Uʄ8s9Q&m4hx:'دchPf&ځL r :3JMe[E/J9q<8I*,OfϜ7F`AT7[4*헆G 5V͍7I+qh@lpHHwX1<@(򻃟OSg{_6-|Yə؊va#N-1],[jWfo mnvGvŹ"g{֪ ҏ^wۦ~jz\dn l@vN ^;w}@Dx#>:wm{ٿRx$C. !7gz#/DJ62UϨXu٠morI͆b8+)s?s? ~kd^a|4L*3%rt|b5 ˣ0jkJ(>y0XF o8"#6ymay/ cM^\`۫r.l?` .躊BwEPQaH[]]>:l"K;9 ~$h6 GnJRUv4/&PGP9ܬ,hLr1E"zUy60`/-ϬATbsMbaJHZJr]Uj+uAi/E}n veՔaϡu$ξ6;ަf&Ϋ'Pi=."CԉG(,Ro$!8՜YFo/l# Tsyxaw'#'_Y7l嗪K]F}j s>; {x!dp&M y$ddFP|i "ca(RMtdhG5@+z"Z~tLlH!gBLhS&dčtQ itJpe'CT~r"Bd0CJ($`0rA289 Zo\8o4h B01FX۳?KgEw>61Ws൙Vuq(t4,nY7-N>si7K$g !uwc\]P$uX\n=_n!v𫴧;EPK&I[ZQ@ ~ymHwGjPkg^6hB<cJ@Dڙs3~{ee#<`- u~t@?]  MM y;,/C|T襗t~3@jRqwUuM"z4vy~}q7M`C億)yVɅ2 S !WGQgB51ՎL|&*("9V11`ȓI0fQe9d I)6w-C-u;cbBZՃ*u(x2'ym=K)F9z4.Đ1겦@(nJ^;=FYFl l ,ucsTH>ǻ;w5t*"LV+P w3!\zKHW4zsn5F.eP`bTMz,l"ҧ4]OW1$ *ɒMZ>VEmo?q2[(r* 7DZ|D`wVA*Q_7n O*fT!z80XA @m'gOJ`2Axm> Q>WPϏ9``go+EJFXL|WIuq&Q %H{QwWhFa$9 f \t[ mq hC"xΉu2SuƎl_H0bpn'Pͳ6l ,v :pֲ!=R/4^ Si< k-e-Z/\`lv :z/⪬_­qIBzZ$2XmlSw抬)_Ժ9;\ލxbExyw$Y򼃙 L/!6TʕV+omBA@FQ5 .beVv̖sa[4 i}^YnhRNB_p`|›d8p.. (tr gCk 9%Kch-3hcmC\+V0g4(6BtDp.'9L )E9$UeAҟKC!T@1qU{QQf>ßad}bWԘoN]F'lr5q!sY3&N (qbR(WyCDqҀGYՄ4TZ,,'sg=uԀ7ur'YxgH(`Y=~ x+vМw9jIrUA_,,Q ؾS!b)9@@$KA(8F>1Xhyؠ·#Pc?ɰ7ڌu#ٙֆoϮjp˧BT%#;CBg-cq#OnK\qTuvVзq1''[;7C:? 0гX͝[4Ot09̾m$gp=OE~.G)kV'Ow$4K߈JfGG V[mLT @f-zUcA8u(MyAvUw4n-2] bwn.S4/L{i^=ѠԌ X&H|fD#M/t`9n1?f'h5Tx"L`b@u11hفf}+|I-w}zQb~u ߹EPByvjGS.P{ JFy{WkBK3m=O) 6H,EL}5d#,E2&:l- GPn]jͦv5R4ZBx|,T>#q{"rZp^lmTȏ[{%%C+v;\H>G'h-H&{! B;:fF_iYBM ݗ+nk臂rj 6IPf(\HA$gmULr8Nf;!K{',gM'Z%9J%"v=BT1Hn5;`ɶM+G:z}<;;{ٻ柶yHZ﬐lmw8gϏ_?d3O\HmܧHz0n&XDMRb?6£ku xton険]SPLiu.h G>55/4cGօ6Y&DʱwA%! hYUzc/;Y!~#d aDr %t8HcCa6%-H}YIM6^a >\2& T3%@AOlVZ"m: : CwRJ X6 qռ^˶Htzt-MFSÎo~Ir1o0+p0*Ih56H|<tDo/~<#%<◣k3L(x#BIӒ4I (/G=3=~-KJ8P*!>-8qCwoW4H_Qi%W؆cYLzJnvKZ뚄Ȣ9DXseVB1e(6gf5N/51A]<`̒%fr>siT*DNٛ҉fF\ RS[dĄn厰d9U^RcSvgH@AIX_O1\ .l&@(VǏxD5IuCvb)Mj|GoICu紿O?ʀnF/y'xqq_ E}jX+yJ\g Yr,7S#$EP]X(2uuh:`YfP>'{ BE;lT۶5r[~6f/:p?;9~:'O?y +VVVtziG|*?ZKBmW^eui+DL'UHȱy0PzSiptWS(rHjx;>I:zo #R= ($Gb Bᚩz䡯+~uT'u%ԣTpRwuaRs՛}tY&#ml5Rh&&e|j-a밀3$*Sͅ|fuMfRuH.5 _lf<HOkm;s }>D<\Q5.wݑ+P:DZrWnިͮ.uYBeа&PcDwLƂl"o㢱PԎNloϖ_\K}H;og_E}6lZ.$Gbx~h+__|s lfлlN@FJ.@!޷aZp]II%SArͰh{h ?5;,49 TI袛ec~:wW\ո\Etn߈缃n@D oHj>s)q J}&p,\ptXH^xʛV,Ud9o{ǩ'h6fWxg:^_`hrЎWMO >TǍAhS3F7eܧGvindp[c} Yo_~؉,1D-ݰhTMlv/ jR9kRCGmy{ 䐆~+)03Q!u/D BĽq/D GlMd e黣קG޼3 dv$hwbcNp>(njs<^Iw͗@cd zdȘ.N'?ǧūbKbb` T!q m S-pz#tp(fD3S* :y;ﰜ *{B\G1ҿ]>LR="^_Vp>糋ɏ<zƟ*^eĸU4~}z}2.-/ f3KM Q|r:^y#[5 XHbnPӟ|fok~m~cOOk>k} }kFcŸ^U8]8*S'jU/0bKfoT=BA=%;>ϘRQu,qV7[JTIB $΂%Cymbפ8VCO9yllvD{؇Ju=nGp, [ UTyLƚ!9-}ui 5[ޫrNυG y; k(+(9xLGޕCb1Ev{Oi5(ĶWoM # ߘ6~fqȝxK#^'ܴŅa(_浞7}G 1@5) LjLg`m $[@3y @\)]6h2.0%)6+b.\9 Kk!ƆLbh3T)sbjǫ@B/c["`¥{$+ ˅L5nަxծlXC#vWLب^b!mŁ\;*KXM ,@ Dn[B m-79$zzviSP e7g3C#[8n, @DEaOu a(fn.aܙFt r'ΣhčEcv+B7DžTh dÕR#;_PXʳF7?n%W4Vz0W>r)g;ѫZ>(c=5AE)A$' ɥ0?xڻ o,U1}>N3~R-HrLZ^?]!k]O؉γ/39[c F1_@ymCb24=O^4]Uђ[SR13 u[8/ ⨤GbL:Kϸv58qB1h50p)T4 jͥ-V1IUՀ e͵^)wizaۙ{GH|$d 0PR܁pȷ8{ 71Y91'w#Pã ,7BB#+J$q\.WUћ0mb-ĚRY7Qr?T5h0T׾ru4*TTNx FŽKk7)6k~ۜ*m %MI꒶qqȜʰiG`XvM![;䳤ٴl+Pt6* )6,G?ě󿭕cjH$I`D:̣I\J$ʦzj:ᨼ 'eX8=6 8}`>=)7p$Zp,G۵0|rQ| drtւུ~aT2xx57}Sbrϝ钔H,P@7ΒH J(#3<(Ba7$J-3:򉘢q?|FAqb@\f2[Gb7 -80+zOН{Z2tA)D>f'S_"ϑSMޗ4'N$Y1=&i Ss|>;=2xfxb ץG+A/!׿,O="C#~ύ|M ei}\/{F ŽR)iѿ,uI޹:O5[2ޱK/ӕbW;%z2] k;Jr2=$M|g*R G^Qeۋu~Z4kpmȻP0;`p`eA1԰ @^AWS 7S- ̙sR@k˞7CK$"6" XmWXm׆'ё BZ~]Qu- n&vSNy7_oN D۽9iiq1 xiE\֚}yFGcy[\*~:&8AX3)`Ijq YXoG'+sxAai9{M}`ffn2b-OfS:?4SB'.wO~ΓNYܹ0=^~W$ 9)IUIKn`d 0' nqpHc% T5hgqO`9'2hCy{AԽ&] $kbZAv\T-j+۟#ی X4/KʍFa/9Q'HB ۂ_ xyN8jGt#GނRV{]/Nsȁ'*HUR|lH^`rYNtќ+mWZwizI7PXNօ0 "Abi Hpr)WrRP_n R,"EB)6͈'"VHTF4*1nBݓv,S]1ШNtui5Zv} X 5q2_z!VÜtA>&Q6YbJK89g^i{v]ӽU\tag *ad%^dʽVC1ACpejƜ)` e_.|Kb#qNΒ@|)Tݓ l(TK $aC´'ԆYsAF-nݤJi7 Gy Pxmhv$Hjn#c08 ;ihu0t"tɶ+4@Zb@ݼZΎp,Bm~?" @tOɎD5YuJm߅1֞Jw:LꕻZɐ惧=Q3{Pf%W2ZP tv6~w3VDWc)y="*"/ F\=m@Hr)2}P8sg/ ׃@O1RhC<Ȁ9i\Fr[z-Zk $MK ^Bߡ0q:f 4YC-J(S#4d/[[. %*^&' AƧÓմ'a{ )KtzfoǷW1cG#flJgН􎫗 5ͭC;BYhH )veaSfHu#0DTPQ}X=rU+eoK352?ǯO?nj$ Cӎ:b4߀U $єbܩ]S_:r}ڲ?,РnȚÎ K %C5(}ȵMI~\;m3a1GV(ĻY:℺_gDo/YSlS٣o^seT}lkm7}nk B'n9J.l\|^%[yPLsG]h7t(j3*>r5E9~/Üş?ӛ,^CUNacqFx@yd{9&G)Ц^R:A:Ծ+OkИp5fEQdy__|G苈kv )pBeL Eh> xV%p`h4de~5giNkyzȢk2 0O6lXcM9!tsVUe+.RYh4}&x 6`me+wofeXKJD2g?5^qX%,@p3Wt=_`2 ƛӡ!VG4zT9T&٭3W4~ }a].Ǟ`Xj/D"0br0Xϵ29zmfh ±>~7JFc#(CmS"1 u"}YYQ[ѽ bI*XjbcddR% 0fdaV_5sws@sq 6I\e=kTQ *NW W3O|2t yY͚ƙUBHu1֍07 <+{w%XWx~?N+°(ъ"טOrj_\ P8BhXJ !X$5 e7bWuURuFϨ4fL< l,^è2zn/9/?.0QRZUPGfltΏ(ZIǗpHAMCHGt=Qo'ui3>9ĺV:ĆIRvxc@?L8o"q,h=z]XF8#h(U*A mY֯m6w3Z,LKz0tmP]#6|j[ qf`mFđjWC"s{$Z<qOP4bRc 2(a$pH=:䃵C+$`k<2.'IbVe͊6ή{u_]SX_rOA` a5!r뱚ip%u@Y{!de񠒊+&_BͤeuNȡ=mQlЉhg@#M1ɋdR Qd\R"Wrs@m&q,#nem nL U>Qa@ph )Q%N$˝Q=a ئ]I^pC*5`٭ rj )N T ┋DsA+~LPHHK5mJ,y[l!jk DvLfmA!y1$_$fU ) !锊jP[*\ˋ0bxUm<񲽲fO,uG{$B5S Tilm=~7q^֚zԯnXHo7T5Nu$]1bҜu*>)^G5~ 5K^=qj^)<ަT渴w \w\[Y̯1Nx0c2 Kxnvf P[pRe3a%llYҖ2r>X4h>u-SU*6ܲծyPkc @MtOBg`0+̕OdeG K^DXu?f=M>TU\Dd\*ĨEyt12&*CqOUo +ȯ^e; 'Z xI x4z8Cxư+Z s=@ vX8mxs0:P`1;OieWO|#Uac(fbG&̈́:.lM۠8,Qʶ$c<2o?]BD>gR (1Cuw1Hz!ΐ q`1Bv1(Ճ23$b )v J2QUԡ^W:aZ`>qm}jԈgi~tl*MWjl[tgY~(FA՞Syߛ3}dhrL J!h9zh;&u9EnLʡj-T p"^fhJV˷3\Igˌ1Pry4/ANĩ2eD+0\lg *TEnnϟӏdeWB}Sd ,>fiJSs *3{/dVj!'maFu֊j.K7Ahu_xZ/?J<7d!d}仮D]LtL Y*;ƣ٤V")#a܏7B #; Imɱ;! )w~[5[aSTNvtЛb ۥs^Ңl"[PV b#ίTB,p0C7P9 -d}[4֗i9d|-mDg|ަzTɂXޙ0Yc t0va35m\#i[ 1ٝӬ-(f ah'3]ӳ] 1 n;Cd3ӈ|`x82)+s8ok&6,۞=JOb gd6O6bA\ಃQΰ*!wf3\_p=6or$B~$vOP~+zeOVl۠3 ~j;r @M19)Jd! xb1dv.".[FI b<~%g/qBü_+k僻c%hʾjEQ\ EsQ04ʗ7!{J`wfZ~Bғ}B/Rt,a܀Mȋ|UIo̱ԌA( zZ#AК,h{{}}z!LlZY}R7Ghb;@oTp^V#!ĐБGз_q6ݵEEpk1‡AN杂R0sn2%Q:Zf)7fo\r}5O1٘1})(FZu ;J-uGQ<+Xni ZF>2e~[Ca_*r%{ފ(="ۘ[I+#r&#DL6KD]Eb`e|`TSow)`(.B'{:NGw;hQe2t8p˳鴑DYHn|oGBnHE福#>hC' ®2׫p<~YX bNO޽}w/^DtBrYD ܹٟԱ? Hd7Y9CW_1C8OsK66T9-Es€ɶ=uhmx44fПEMv0ف^U5 K?q# |vwz_`eŒ۠IPO1Ux+ixL6#zQ?UpVrx&p{^IqX| 9X ˣ+@"wp V0T~:-Yt k^k& -[mVyTO|'bS 6"XۉS5@o0~BH.*ՠ,fsV!/)BL_sj̾#ꫤ:E'k`aä Ct_anR*"ɐ !di9AN~֓S o0p V']LxPޑB^%崨H?!,yzÙqBDg$}G?QÙKR4ɇ#[!6Wؿe KWTr2BNϷs>mzllJVP$B"x>Y{ #cRO˛uZ9gbvyNx 0HL0N7~k8RN[#H(B13PG*-+ @oh$2atul d40rA [7b/0d8ϵ/z85k?T@b?wr G6֞îrgμ(2':\K3RE@UsȷNX{#HCڶQ@*ZzJH̡AKh޾3a%5w`#llbT!;t0nJ֊pPp4"UʰT~͍ay_j޹]$ o XBi#<^QJ]W|L!6U"{}F'2QK~+pE0T=ڥќY YK~%-}y GFοn*I"yd=Bo 9^`-njA dMf%h }0Sec1{PWo|Z+W7?00_o\fȉućm @2& zim2'oqٱsO),0v*ܕrwt/ى$+|vJ2C˻v8tQS=[VO3 7v"r BzvDc 3_ORkCnd]0/p5,iArgCHD6@fMU"hSKTCu#(7f!# M S!vNHBXΑViu`UXEN(&ZÈ48>7&2dйu͈ZɇIq;iV^,G56n))=vDmK9v DqX7xRXP`8t(&/5`0 ~/ẹSƥؔ>3gp2d\ML=4V+Jږmؖ}V6 (kԷ(Nf@RYvB F`ND+I?ƶ* w6 UŇF^ ,tD 0nҙ>Β ԩ%yre!IBL@:/ P/{ @h36RQ$@ ez2&Xh2FL(tD4r{9 H(PM^-]? ;|f*#x$ [jʄ &(ce؇20,^DDw <ʺx p36d AaTR$TdULj+c{f|XfБ|f@؜%R!= m F z@ȅv9i푡9CNq Yh&z:6$0)o L ! m 6 ~;I^ "aLİ 9MSs12v?_ƋޑotcN$,3m(w@<H(50T[,݂ńC4gphc'"ﷰA1Dof$B#"E'thGr>n-}Z ' F`ЩwTڬv ,"c'( 3돡py7wHaR// CۥGdrF|2,nTYl8⹘ (/E+BPAy~C_^//OIq2X``PJ#@ӁȃWubWwt.OG/޾;zdTF:P %Uab-_E&5DAz'X$ YV 'R 4 @ .$_@ѹ#փky(EYު(D7ya6n$rl$n.#gK5j 28[!=/, D&vi]D]eOHzV!_bdONT Q~{Hh (`R(t?y&<1%;lya%s$UtG^h'yzʒۋ2ӏ9kώz=嶣X +TIXjTodϻok1ّŠ;e;h^]iK;`.k9ߟD|u &-' ~I n2'f-7Lx=vvc` IJb w|y 7Y8TAE=Jj k'H?^0`RJE)ChfQYv]s_SDSqXcP=],gDH`A{-KвE!UP=lP =&ؕ,,?bhwLy?';g{;;toG#HޙEw͟?c D*^ MU=6VyL MܒcNP#z9~rDXߐNᰐ˙*ҺGRbS4[\`vf4O4' $ԿL;;=P+K2uwzl5i?WqzAehEBBZ``z KX:-+3Tuq͊ȱEgs[lͣ(ܧ >C}I6zU I=v9ٔ @S1&r MaQa*?I&X>\%H}]`3%/E.@()E3YyTfJbJ2.  =bbW7-b |[KM㏊,l <*q:WE:<u*(([d[й)kSrѐR( }N3뛋\: X6ioN>  90`D h' 1POU\Le`kc%̌F83^Sz0ΒpE?dh0%{D#0J Po:ڌLbǣ0c$YR$!WŞ*H!]wڥ7V&9 (U½ĩF/N+ SՖlT.Ʌ`u밡'R^ L7 mt_7Y| ɬ6b N"Qqڌ)J3\ |Cwm+ GzDƈ//?a RՅ~Ò=Daw1~dL5"r|'\5S ;#9D]i ]O"  gf8oX?^*}Q8T:'>q!RqUXG'ެ q|TH`,Zn>#4DZG%O0fs4di]OԻ04EmYd %eqVULT1bQBǛ ,!j=NH_kNB0ڱn9αSrXn {a50ᐊZj@>ȿd^I]M: MZ*׬fc0h#ICص܉/BuU)`HtĖ0MÑKnYx@Rs GO\ *J)ٱTĤwo O&)Vů^[9=rިʆJ%UPeYD7mΕdA*$>2/ Vjh9wԒ<)&γL,-\M?L6!&:b—i*RbӲ_D#>)+A2Ab4Gs ϧ 7wK!YSA˼ 5J*Y8-?БNQ"- BV %\͋yzg[CJj)&xxgC<t҉dE#ECu]C`,>ؕ2dHҠ0z3`"+Gm.|bb5\RpHmXUqM] ǀ8qu,{mP<6,CǶ&(ZFm2vWcvҷQ}%mrEvq6aϢN`Y䱹w z6}*vzhEy($e}:V\k}N=mv?Y ?EV`s;8mz 5\d,ʙ7-YB1l̜+2zqprAe!("BCx׾9^oǢ]]4Rz0J+7-.J94x,f*if _"ն*.C`+<$!F0ci]LZ dS}eMcHFFigMc5gW[whִޜ**&D# MIҒA 2+hH'ۍp ѐ찕v౭`~z͍G+2UQ :ckm?ILIS, ^΁fNAFʊQ=NDH5tEsBD*I3+e:5jy!9WkcA{/zC0fBpX vxm 4 H7Oŭ,/2~'=|P+Yi*b.X5ddFi9 $TaiEB%҉Js^0Bko-AnSAMZYjixA@ksj*s4w*p@'XyntVCԤa] t癘zsؐyOxOl"Af>kxXտ1Jr]' @SP^.3mǃBQ7N?Oh>m=GIx= gl0Jo~b>o=M͓o^Gp?3xVk{|SW5jvfms>g/x;^7' !*<-$EYЮa|gAEA((0$Yy7[XV(ztY?1:BZuXZLOMc}9͢C0f"b~'G K~]0_<5=~mOMky,zvqU{U{Ĺ bl/s8ʢw?E(#/3x#7OBxN ߑP .9'j%BHz,wCu1՝s%zɑKyvFt[j{ No2-W/y:UjG)N)t_ǯ cEW剾KFY,5`M^h%ұJH%OzɓEQ;զ߶^M{bݝi5tڈ[mѨlZy}wSߋm=爻y& lsB>l=|NG8WėG 'Wy/F\g 4'=9 [Vutw/̏028<7FYU˧Ro4V_Moz i q=+ևIֹuݛsTbuD=hnۺ۶mn/R-b_n-rŭ9 ٭ ;UKʺ[ֹy{a _fSAs \6Ba2:Fwco~Dlͅh7f`5]C0l+(nyqg{իeU1/ BAT'\{`LқKӥJ`KZiJ3ApK" SG^@Yp:E9\p \8 9t ٺKߤPӣ)2NuuoQe|T3ީ#sYE%s~3#SOR rU%eb:gg,maZfbLjus@Ȃ$`aܵH?IJ >r^66 uOW% Qe'U狥Jizze` })8xE]  O}p,7thB/WsnwNqU]OUw g 'Q!ЕQKU/'\ٽ&p?O^0Bmh%G^a|X1iXZ(V&3HBu^ҧ\Ѥ@n-vݤ‚9hCRⷕ3²!zR'|l_`Q!/IO?RKKʊ.{F lT|. ;p'lLd,$󦜥A4)`5c ͽ?;os lsf~H@:8+\ ߄CІXcCkV(ښ5=Wr)8 AO"0ڑ'?SpOv^cuK.HiH!4ʠEs&ux9X!5L+B/T@ވҩ0waKj8Vuzhx̮ҒajV9JQWۀJS|#NW9]d٫HGm4x[J=հN+p .Z +F ("ÓUs ' }slсہ&\BN_ iQ)-٢jİd]K> )1LI&Qqu2+>2,Vη_W8CDUU,s.V2+?G-A?GxJ .ia'6:kQ텧GgE8>p #(,&Yqz7(F`8~NǏ.]rY[dJ:ih^^K Fjg jBsD!Ŏ%Z#%D>%O&wd`渵9nm_Qfx eyh™m& 3c[Ɇ01Dc `0D!l=xreOh\0W4q[wo0D !1uD Zh,VGWzWhlfA9} Xyư}H( ^7ji TT[!b;Fl%W!FpvFiT3{pVv$%('|7\MUܰ:$htگ4]omٮꆨs_lSD))ҍ.LPcdl##eZC9К Oom3݌..yQ0Jm$L׃qzu:W:.$)7i>JUKྫྷ,"EE^з869q7Z,/)Ob0'r"e @w0j%l00m&8s1f[T qr]ñ"f(*#3NImr2h7B T1t6ox-Kr/<8"R9C55 PVh dg=MB%(hlF6p;-֜pߌ0 ZMi;`f( tUuCfFW|Ăl`nd XRR\HppBT\cLFΪ-~Ә J@9$)Q}# 4z~)*5 C_*jYP*rrY,OC!! 477Z9ZN"DYڣd!V.2b)`zp[H9$RSs0MNgtRU8?\οzM^emB1,HR3eʋ]{E\e3:35Q%|:+\'{p=\etBj{M m{ь6BD7f)(Uxy 68IPBH~rcRRqIsF )|جVk/Oiрl5=뱛<)ŐdI5ؖGB+?? s"la A k0J0\ r=j=Z0:ժLb`#-Wk^kz =*kkTYiEmUuqhR=M0ve$G R h _U(~):I'6!TJmWLwGΛYnhX`P4U4E&z׵?:n,v:&<dɩ9>{~ U_u[j|IiF`V#k9o2FխE%^96n_=RaKu[.=4l"t1]HC#e!uK*Ҝҵ;.B~ʔ~?oC° 9❫PFK}Twm=E]ΜYN)@ CTqHз`f͡Z>%F{)_~%uP832k@ T/ΐJjŒYa`R\ƊVuG多e4` X9PV2D~N`%mnfyT},O99(d vQY^eV_L_ߝ|&ɓ'<~,/օKQd/xoks&^,yK#v$ӫolVu""0&1r?0Kr+@< b 1N#a.و N2|(|bA :_|{05/MvhQGL9"Ug 6q"~x~?LFJKUC=?PD E%GA6a(:N$!};@ F~@Sb$TWOH};5v8 48S0s;S4NN"ޡ!8Rقtp2 ^>{HKEa~,ְqЎz.-JXѬ9YqT+iY]?LACrJApAwl(݋w _L2Gi E%qJK<@:hh1f1FnMVd O Z&< dˁ?WS Ԩ <"( 6tL0j E**USŠ  !*&z kХ^FS?8rf/H4?hzngx({򢇛X&7l(wR XA;4/ˁGh @&wl ,_|׬&oyQ8A|bPbeXڷШOA' 뜿%Ld~se'Y 'U8c+l^4qJb鰧eFNN͓|?/!`lGmMOb|+ t#wBF ? k6ahguca <bH$YQ0DE5E摭MВ";QU&NrȩrkbPQXaOT+_FbQ`(^Bh2?8?eQo ,s/ -͇s5*.,_:Tio0P׈m9D (֒=z$@)=h>GGc" YG j#o)Plr^e/rPy:χK? _[5n+1:Yӎgg8-pIFL-R{eNXMLG1{nS;sZ.j3+r/Cݫc dOٓ1yFY&X t66YLlF6i7 'yA /5VL 4Ok1iBG{iEx~Mmt64vO7=xvP߯Ҥr?8)o:;( oQ7ҏG%[7&_?k1a4 X+=$6<>T/MݑBRٞz$i3K/n #5G'=Kbm|F9^[QM<#LIzmE F5 ɻ-gž.^1?Ͱ7`(Weaax5 %+؋946{1HuԢ]);QXVQj vdժlr53Y7e}@C3md 3(uA\z$hԢxߑJ{,hBZ٬/_=+U`n]1@JA:s[lU;K3,`ʗÏ^2uUԸ/}[%&-;5|eZT·K5{#4v A|\He:ɧ Osւl0B+P>1lQ@9(o(RLscE ɞ5GO2"Wi D2{6ݐ.{}j3:Mb~ 1'If#u֦kK #g&&rxi歄v( Fd%wI Ö['㠩VTO"mYO!BjPk=Tke5U`v9kz 5/4>64t5#H)Ax2xB6|k{4x'#Vb W0WT]촢 fpo^X-\cgUў>,&\5}O'#$G˾ :qfg`j~/3X;Ũ$^1rT|#!%"CPA!'5Ӽ|ޒW#f#Q!; 8 c2IIqIUJȗx>֑+zê.T:8W?°*G(Ӕ+o{1x##m~kthn'j?y?d2Sb-w4ߜ xjbaIVÐм"*|xyTY{0_gZva~H@CLG2!l|25kf6X'i&oͣUH]')"TG 2GvXP5SR/DND;lo /tMMHML9Dóֻ6MYܾ"BvGp `FBkQp Êf{vYtL|?ǯ_Mlù^4Y(Lu{nȕGcX@C[BF <&b| o0}00,KUw(8UTmE  E>*R쳛YiIEf0 7otj瓑yM Wcq /}xR̻H0C H%BdL)l-jRf֙}/Ϟ.wwrY=Bؿ&ux>w$hPޘkvRh{osCuuX^ؙwR|25 ]&w&^h KA`e1|X4>ltW>LI%'#c֓ݍƸާƐv_ώ#|*DiazZ^O#Q@ØpNb>8 xIXPИ$jvv`t)eгI|h&t3M _, DW͚>b6qRqC mХp=J ׌v8ZPhj=&i`(ܭ@UC PS6nl X#:W@bdXrX8TBҦ((uK'#Gd;=B>t@g@>.$KIttGGO ALU$;L|d,X,oVWt'jÜoY^eʚpuQzmd|K֍6{0V%ؽ"9V"]c.PW`,@T|:]s8m]/ϫ{CIN't@MJ JwSԹ}O}#lݵۼA0nuh/e-Kn oBo#tF_1󳧛׼eI" -2$R/oZD!Y{yi!X`vikMZӶִ5X"{+}Y2Wn XQm>̗+UB36e\RzO8і#1ئ8}*0 9m5a c%,eS|.j\=c3S:A_ č +sj'M"AXnDgsp![n W.~fG{CdoO}7&^s?@ozMCZ{:p/Ρ5b8e楟,D7nnj -xno6pUNט[]x xK ަlp}G 6x{"Ϻ\xn;u!\1~=4@ #lEo<Oٻ,6gg^RpOuY[N$5֐} j"`C-:,~%uEqH-pr tcFXʲ<|"UfdinxuQ_T20,%0,JBt :{jynbyM⠹L`Oθ/Ve FYZKD``/ϑQ?q|M&tB"./r{fw<%G:D3 TM.-Vl:8ˢ)Zq.2XV!4BLܙ4n Ky2z#Z^3?Qٵc+DUR\]nʞda|<}~8yjl,ӊɤ^1WZ`˵vIMOjz|S-P[t^3(8cio#Piץ.!ϹH:0"0N;W#2d>cr.;r|TJZ.W6+ N%,0)0ˁ + /窀ۣGz0=.|b BP`ﲮq|_Wףm/VpFFH|gc Q=A^n=2hPmm2[&s6 _nĸ}k{nݱ|k 9fѸeN8X}ۉ7[|D6( I36h+a7C F%Yx4z]T $nC&賊Ň-9> GE֟)s*'pCS*g=twxJIj,I(tL Ra6hdJ#m s\Fyω(uAM1Zěh,Xj4@,+SuV mnSvLLsdLUDU" &mL;'99&O $FYy*ZZhLgnoE e!CJ V~꼛n@(bv]_i',zQL0! .J4!,T^\-,C%?NYI@'xr$$BawfpsOT#<,;$z#N@#f"!E jnΞ`:]p@[-Hg॒"hVw,K \t\Y䊿SZ;3&O$fg pԑIi q)I~_8R64"Ͳ~oX-;@zl?ѷp(ɭib^T3 ( {?|~GCE ƗN+IQ42v]+Sp~bQ˚XN%rg/bĉD7E 쌎FZ^Fqb|favbf7lW_/2}X MX,%R3fo0 P֩n Pd&ƎRq`t^9ӇB68h[3+Y,(0"=H*T'BES6yN8ϛAҴ+em ., Έ"۝\R@U`Ch ytF |:ź Y{&@2n? Fchby3$TC=#̚dc"UP ldL54u4lv] F7$Y߿2L}h=rlei j\0Pjq^X4ҏ)Gj)''ל0H}sqi'?Qr!|H #9_tl> 9^.U!:G93c3$@'08pa}|2No8bD}#+J1Ϣ: 27O'1 bӼ z&c f[Wm(E8b-QiV4M69Y|y"nE]t[*PTG%2dBدB`oTV1Ah%!Af@ zUʲo&2'+3"Ͻ$m!ϊI Nh`V kZ8UMW6@,Z6'x;J|fE0o\^#42&i2pr,,3s$cP14s /JH uO )E`{YVϊ}_F,xsV+Aj|o 2o֌ύ7+ehZTS#\b p(35*1(5UgA1*hs,R-oXq7~>E21[.磾<AГW, 00n q7;yl σ ʶ*+UGa-XCs4SPCRؤ6ʼn {mk@}ZN:^ "`NA*prY Z#4y$ KSZp(FO^+Oވ",gQWSNp]Gt|nQQgȌq$T}#' uRmKa`j .7I@ Cxn˱qc" Bv6 ؆Ml& 2}˜ xl;ZqsROqd ji-#zл@¬}$F&Rx }:R@A&^eElW+蕯)z꾍`r"XJB Rbs]}qUo첦z3g΄h˒ hM{4cQsBc|4<`\#Aɐkv Nk R,H6\ȦJĖIڄ5s}}gi|SGڠaP Ox5md6jYEVYX[EW vayӼȭMK{9*e16$Tڪ8yF bgT)V+#kLr$ #58}pGFo#ֶkۈm"+ۈ 1̺Ŭ?}藗g'_{w|t˷o>O@n7m'KK[ޞ{qS ?,?-2~d#c,RŖwk?$Jyj-$z6P3 RW)H"UTlfx<noVdk1DZўQ^(,"ްrrk^S`b(r6ʏ#bCqa|$e7C|5 ࢕ƥ((UR݋-4"{bzR/KO^eosG0ͪ<5}j{)Y2tW.ĖPRZ5S03?ǽ؎?&B q#)XR,Tudī@[]r7$3p`sU ԓ[{z_L$Ȏz ֡4A;G`9ؠ^8 EFT|w* rN_wϖXMgTG~ %fK[}aڛ1;-"[ 09>~X?'^8@ Ψ{ۅ 3aJhG*BO ^X" /N9QE%܉|ۏ;Yl"dENgT/VʉxaAˣ5uY_M^ν -"b( sᒖ/K;6~.CXG)9x%T5PUkOCt(45.ߝh`T:Mr%ʝ 7$dElb!Yvln2`<=*uJmcrnZ&o Ga+ mg QoPK6/-wYoN[Nm`CӱtFCwm#T3J?#Rd)PN uٝg @ b=F8Wcɪl}Twa;Hf"W\}2ގ BWO;ՆaIw=ܝv/YªW`H J7J4j2Ub7 7POҔ jG0Xj,jQD6]ͧ)aj삢  dͷHJ3LsC7y햳LK AEu%?y9l/Τ+,7-F'P&bC9miV5LjRR5rN\:ˊP>"LwUJ^ s M85 WVcY{$4sxwCdz#GBxw{Y[^C|=2{IK!-fWe1;><8;>\-bW7>o~|'$lt&2.:)҃> la3wߜx ݨ,K1ʝ@iY\K2=.Ss K7n)DOj@򎘤CJG*/~ ? bfqf kurD@,m_@~{y ⲸDݽܴbj1 hy% 9CosB 3Uo)43!i{H`~kLʇھ1\6ǨNi~Tc+ ~k>2Y9 d:%D\ e4˖ɜs>oml^0 #;+-T&A.J.XnͦΠǓ{j{>_ C@kfżtu c CNͥSo"gm>S_c?nӣ6'#??=r‘`OwbT&Gph+O{i}VZv[$tlV?|ȷ HEYх/Z⎹smafרnݸG35 -L If_351, x!#[Lٖ=ם86o!9 ]#;?:ó[>NAkyNKKmڥ3 \Yy1( 5/ 4||jNF HşYfyXcZRDKPJ5k^b\2r*'.MeJ vŨ?W3ulmf#@ 8% &sɥ)ck75z .]nW357z7Y,_6;6_$v+ jFSHl!jJqs Ot5=&)1rOX'QL|PD/Yr[ݞMOO̼ݿ̑1' N.a_ftWeۉ<]~v +*甔9#8 ZS(ϕ~9Q 0 ]hxd` k ?@'1cKa+ }[zFW&U;dn|/޻.\ ElS2ȖԎnIJ]8$)E,WH'Oyn' ( E'o'-e+B"&7>(na!#%+(!_-cںEmcݻyMg`#u*ΰگP7LLUxXl*~ l9$J't0O'zaQYFxھ>?mV96qFCn*yӰ [' ԓ( H lIlyEY2Ey( *;k$Hǩ!R+ FVBgPd U$]^IR现&pG*H9e@RIm3Ӑj(#4UkxwEtBݱ%oG'e.(L[wǼ#jS)γky:ɧ?<)= +0HdRx2<ìD8eodfC+UN)f8 y |tAY̍0PɽUROXnvwJT 9՘ɬwAzm奮:I| 3>3&g.]Hj1P\lrZOn>Nnl. +F-en,Jdl3#212 ! U qID2Qmgejև<@K̪"V\VsjXI鎡[GaoqKޔmM P1M<4yYG?$[TI2h17L_~Z?XOgwbh)`I:&Kc*iGHY.UԦI/4ޢDi3i85Eϩ"Νi(괓leRZf_s6zyIJ`M~ՖӴ! Y`[H($@fk-E~̟(ۦXlIn]p!h:CzxzϧfpC, ^s9pŹm7%B/Wl^?y] ִDX*(@D`JdgL&Hܼ0իD{G?˓q@)TL j($%,e9|{m3KNGH%";B_m߽@ݧވ@C'o_{cE[Ӟz`-oʻY0j6/p5POM0x.^n/7FT܈1xQq#*.կFTܛ` %!AqJ֚kRRa;;<k]Ov(_;kx^(.މxg_nuZsm|f!|/0F}`ӳE> 1H3}ȼ,[}y2ynVU^g,±WpEn2$,,qi}EڌEixdueőz@j ҎO/y0$=Ah? 5aEUn-:Ves )m(C\~]co뼪%?ReAyQJhA/~Vg?!V Jrǟɧ|^TmK' b:#P{(2Bڜ=թ ᅦ ܴ'w>4-#4_Uw*9bny$F 3O6 h WH+{g;xEwuww p|)RDNяo(%"*Uh\{@3wUQU؅Ĝ i$t_^xj\r[&Â\weft hTZ(2^F|Lb0}g H_̲+vII#~I;K(/3;|OI8\mՍtH>&uDѲɬZ@Ap< KK־[IFO9ݷNOrxpbW{*+ruM9[涞=N{ztjLq߉ lYiO(+2r])IB t;CfI\cw(&4`+2}_(Wi9"_(986ΧR7;gHO$;nxd IT&II+T!H"ru[.F`dVR.X+@C^bnօS}H=*o9T&CE1.JR:-l$K|0#,xZh)Qf=&1Bo"Ppe*1.;O mK0a+uNv2шDF|;oH\dΥ[&==s}cz(E<7'Cmdm"D!ͣ:,f3!I3gmlU4\llf ' nEԳ[5m%Z:61!̦~嶡 {bZ{{ѻWo}jANLW'L:o6x %W5Hm* ` KY^ū=*ߵ)EsJJs\Ugm% Ri3;vn býĊ 2pD4=55VkɥP겘GT7J[C,z~} E!ʥJ^T@ s或Ljue.G `Ҫ?:%hJpI~n<8vxK8ϵv0:eG3M^4 t%{sleGpnv Xw$|Ei,z38% "K?E.W,jϝE."(%S{H%UEX*.L壠43g/%ɏFфt$L:,xn~bU0GŷNZNL)b)ΊnY>F/v Yz Oc]OqZ*u١RLs'>fbՙkʫB~5OTO4z1k YS?շy3GUJˢkyF/ѱٳpo!Bjyg`vO݌SetGQxʯ"Z8k9%0obۛ2S5A#yoz,|Ѷ-q_.z_l:9>vAdϝO9P!ޘm\׶϶Ze""6w)RԹ@A TR}l޹՜0lq˛t^&{MLBqtR-784y|L8 r[5_HK9 4Mϋ&{ b^xatkByLཅṡU*"q|lֲpcr.&o?IduSl5Ll"]DV~](PbAZ՜p ׯζh%KQ;qUk׵KC}5 ۉb"(&?H_6%> ʜ+֪ /0 NZIr 7eQTYWfØrOXQe'WR_D_ pBIZXUsQpoV+N^r2SY]fބFsVsi4RVN8< vL}%Cx%xJViȕO 8 wHn1 $\HQ7旖pMP@]Q^O3t}S&ίBI^3>@ n_; _Z2C^e@1ϕ]ـ7!KjW1Z0| #'rn,[Ui<xdE&9J؁0[KlBIo4`kCl%:Mנ8-U`v"FQPc<YFNITzI?F.|_4_{}+=OvL2zU0UO%oڻmَ gԘΒ[>ݸ*kJdQ&+ȚNSK|wx,0%5 sNvO.⯮ͯW~~?%f=<˳}<{N L2Aٳ==kit6y5I/ᘌ$SlOk ѺFt6d1rsDtwFC^dUWI?dIfve ҄c Pb>_x1m@Fכt!17euBER?ŞRUӪ2b%R \x eCVzijvK6'Gl'.RFaXஃt?^8dXY1Q j'7JGhP|210CZD)7m:i3l!1\pcӆ2;`6e,HޯgۑhEh4kя`+ںzs329o*1vM@Eiߞ"wV02z-"mC] >{P_~V*\3AZM 9`rn!A[teip j:p,OR|7h4|º$S*>j`'}%ըtw?Irbc9QSGUA'zꌋk=&bsZCiBCŚ)ڬm* ,Pυ$<2t@/9FTi:R ;:m 򷰆h!{Rn5mq_?܂܂ HT*Ӈ` 96/pnT$!B1nԈ/ݡQZd^ Mӂ`x) .:bFho nZCɕj"775d{*e߮Yה pU̡֒s(bfd3G?]{?shqP4 ԇZZh-޳8pEm^GsUm._f7?G9ь-FwL>VvRwƝh(mnA'"v9#h^\Zi\eR\0S@?Þgh6ћ8/yvx^13񘣄H.5σSiM箈)(I?hM:@Ъ6x}P(' LMGkP> rp)k~.3t+ZH5 Xl\s*\ϒ!p/쳪w2xkYRt>AYH:2TAkhj".3/Apy~< m0ۏ/x̧ `Ԩ/xx?6틅:!Slo:ǰUuK-\ Wӟ-6942'u>/;[\f2՝MfUc}r -?(mVR_E1~ UfiǧO]|.ϺFGy}1&@vaэu C9~u5LM`h+wlCh)]LW%dIA˾5t&疵NÇ8i+򔣝/.i ĝs7H@++*8OGQʝC)SI~8` MQͅEirqARrMҏ4iPI@ے-;\Aq{ъiL^1Kx&seB7'6ҺgĻ)k-}`sT*ZXW5m lwѫl|sӵ0ݨvUѭ{=8 #c@t}EE:$NI_wn 'a~Sl2]cg9(-9w)`RG[1@\˟` ji}[qQ%d~ϮhwyUooq-[صDo?iLwoNfKtN?vw]νpRĶ|K`BN wZ$еf[MYo!j`vAjjI~Է.Y2xSfWYDP`7"jeFcJ~_W \( ;b,NFwoYY(nM͍.ߒDa HW^D.kd֎tH_X#ބwQJ!Ca< PPQ1Pun"ߡ[ϵb%Ӡ!L R.U@F1wXL2DȒ$xU-k>@_\u[_PzCPߓ3~6܄gʦkG>7I 1B@A׹\p]w]!j3(FBf];Q>0`(V6&ǦAҫhz~Sv6U@MT Yէô^q;B7wåD&b].[8ᷝӰ4W ,ChOL!k@O |OPn0{.`dL>toX7ϐ~|N ggkY;s1p>ƪ3RCT ׭ӱ|0E3vq+nԂR0⸸B|PH}iNvPdFZ]ZFۥJ*T7wE$i75IMAv`Hʹ 9L^`F1^ (V0wYŔpUg`-Sj)ԖeCI{?jrvhr YEzr5)jXYW ]l3Xz yŪڔ5ʔw?Îwfa[3{a=?)?ǮgȮl2eU+z׿8]#: ,p*jQ7 BQDB4ݛ,@#zO.fZˆyH$sIt/Ȱ 6,cTt"}8J9bs{q@\^hF`j\qg ~p$iљdR\Dům(W E9n?BDMzE9pn 5]_MBxd+V=7Q:L0 i6H86Ο9dϣvw>4&2PI?PqIDx9XTYvOX/vx9Dt 423*R~2\RH䄱:{3);=41 k8Nao h93)*7hVUYm6A3 zmjlywL쨩-> άj{r$:?>V*Hܽ|aۧ?|moO6GKD\ݡO j}✰ 39<Ӊd-jukHoQ~SN|+Kq,0v˥o"ccvuE+G Bn\8 ^*DW<]GVєv<_fKנЀF!j43,Y@>GPx mq>%Aӕ0iNh7JBH"Eï* e p1w?zgrb8EqxJGae0x%RatUzGC i],ɱ'w" EvJ)mD;|LCr;uԋͺ>ޢQ>FꭐvA宻AU7=@qJu\|nú$A8Zuފǫ"ձ>o=qCx{~N F#B^E e}̦?{bFMXw@8Q$2WK&oj.GOܓ}t3M'IepIU!0iY"|Hf(ۅ=of?cj˗^uzcF୧&x#91F&Ȑfjo%L外z!ҪOn?u@+ՅauUҹyӷ}XrI4],yVI ɨ@3<'x)ͧ;8У+Mk:xvHL{k4ђ0`0e8\E$rhQza|vH ![G}bflZfEvOI&9#w3(8Ũp쳎ۑ8uzǼ+C#`TN+HB!1d/WhYێzuMf X­F >׽>sI6\Ë)(kvce:cB&Խw߿ph (1CA`>*N6؃_G0+N8/mr [׋:1 &^겐_&p$h4hǯ`k _XGUഩע=Q,fhH4(),`YQsN\M vܝR6c-rIĔNG/fl$k=pOACc%:^'p8:8r0#1U7 ҫu(`n"Ԍț21TFgg&s2jSnGr,[F#+<zz.9 H<ɠ:}zфQnGOqjbօ@HOCک/Florք@V&[9V1)xgYuGNفg`쥱 nC乿>Qס \o+5p5*`5o(%9\O6eH)+e6"Fy)%PbԀ{N;:"ԙn;4հb F)Ff:" QW.‡H[O;;bV G͉&7'FSeJzm&V4V\ŗZHN7gGwt# "Zje1q!B@\^$y#M+i:bw ׀/׃ r ȵBm}1U.2f`,1 QOlᇨ@ż _qc7!\^^e»&_vIh $n.B9,tT\i̱umٔ! ]AU=?N "g#/`C3)|=K3 +EBDC|!s EDwU-z"]^ފz$HIGs !^ɂa3FX5cgO%2eo-q b:$Ol"}*(]!9!!>N٤״`p /'"IVv7g,vȨ15"&\xZ]E(]٧f54+,FYx>*./oDDڞɕLw&ʿvj$j$K $*-޵8l7$"ӾVVSWWd@?C;yҪRJ$PmMYqM DL/W1%!kQ_U  %j9Ika>[O͌Qo0@+Fkq|9vȾK'ouZ㾭[X] XħٷL$~L7oO֨u+ѷ}ߥɯC`,f,+,rR,d`c+̤}I{^f˜m!Fsi1#z KaG #*^ֳߡ+>PAD[ƦK'W:Cb}@W.[UV6K.<:m .}y?C;랁}ٚ.@amK5H}Lcr!a"Keu|kqELUR\قIvsyNR ^M=@"RyGæ5*|"^MW%\mG|c;$(vFxU IasMkvAr6UmDί^(+3 jdl (]Y P[IDK4 /͠uF̢̉feVeFEA(?:lIK* vsF/][F.̀w,Y(DYY^n45Y ;;un![O/C駣 ʏuțHix0;3mHwaS=nR֡+eu7E182E4JvtOz2m~"Db T V4i&~~8gs_ ss'Gf~"g`Dt^/9D󴪊awSy|)6V5-H{^iICӔSD->KYz7er7.Gf+ĞFIA[|D@cT+Zfbnqi5čdq#?v~mu#߭R\G< ,LJlECa[*tyx if{RR bsnP7#+m`v~~kpJKgI Pm^eMy)`2"\Vf*c~tpnDXꗠ~XֶXp\pzS="^YO!ovtjEJG]7*vC;Q7p> *>H$ه9K魕kS/RWC/Y;rHvCd gEkY>,1ͳF: jmꜸ%ޥ?;R>kQX:Fd*]ZlRG,~6j1>;`M`v?ZYY`[I?U^;0S4&.`,N/XjT.^΅\$ۏYnY7ȾmC(dmb 7M"2WfnT0O|1]TZ) 1)F(G[uY#1Uw07f'y_eK/g#`,]n}[U֥N~qUDdzrk3}P^,A .G-֠U-eKqgћ0Lt_V憭ㆵG͉q7bApn^Tgi~~bq,.IspiY85(_gj ޿[FHS=.d2YFBo}!\5 ^EINoonU[~t{deYu~AMTףo4@ń b [[* NZTschVlp- ("{dX4W byϫ&DYR}]o `O X *k@Yβs𵝆sкhаau6E}ٸ H0T[M c\L/0(veP^ *A?χL,g1VZɜANw8r"1J!w2ʬKZHddo;y7 8(9{QfjOxb$Y"g~)q6rBQؤo.w[A9ԷZ&4=)IKNjfFݍ :%#=aM?.XP'C7?suD 5'reItfo 3d *( v5 ~0]|ݼj]"{H^]w^1bṳ|54DNԓ*> j2V-Pl.9D@y/W*>Y,WA2 q$ q?' %Ip~aч9xER<.12ȧ8eÐ ,s96{cGYԃSp97Cϳa-^:Ct YS8̱4zIYWعcqrPUe.rUՔ;:o{Rc4- =o6Y,fNGtepƩv:K SiT3HJ-B{ @C0 b.} f@uFȏ)3k ϛv_ʹ[n.s8 M8r!/h_>0=j{~>1jTk;h gDcSg9 0쒴I`_b>?*wʉfפ5,QA+F 5]Pɭa-&b_ Vv]Ĥo)2|wH1<}D {릫C&-$8^ 8oe0rxKu^'p7r>ʶa FRy2)&Y&0 < q#nIfɃ3<q w"=4RM}ٝmLo~N"dq,X41"vj{nBCrzҫH AW~dwwM7v>Db7IܤIڍ;~nA OBxd 〯-_`i/* 2B%5nd!'Sg@&5-$QuOB>) JuhFe|\'[&A8d)$y\T+ʔ07 +OAo9#MYC,eWϋصn'fT-􇭿 N`×/^=-k=|Zo;|ieU-GW,{cGmdz=ei ߩ9۝G NUu8vG K`iKҔl v|sA4IxKҚ>|4m9Aנ \$ցdlo,l>vbNtI"7FQ()qEVIKj톲Rb^#""Ձ?TPk9ΩmCdY/+KWG/-]Hx|st֚u1QMqvsvxҨqF P\}gvy#Ȟ7R3["H3[$Sf)OI`BiQr.c<kN ]TD_aYNwcmbyYY\Iٌ٠4r<|rg{y (VI$mF_"Mv! Ph0;>%/|[WR|»O>ڮH:䟅T3BcKj 8n!!(pk!fx86%xAz#'7 T@kSCIL!(ˋF ]fd͇-'i5A؀9UTfIP5ӳq&< ?湹fh*l咆?2ό--43l5'o!m]ׇ.K Kj IFL1 œ*(SQ&pl" 8_`Vdo:r=4v鎅tp* q )细+02s.UdwfpC7 M8uݥ-QɻSIv PE)'0,-ZYUwIӝs G x\!8̮b^e̠"t<^5yf9fZqz5,1S`ɮ@O k7*#P@f%{[Pflhy~1/3=bkd308KaFJpq6kR(W2d* --];T- ފ L,B={:k(-bSÀ8\W<[ĎH`͊ ggWe487vS3cyXCVf<?J:[aZ{oqvqIA.zg+'d5(VЁФ*Qf)=]m=}Q6*F* X,a"(^Q]-]ژCS}+קZ7ҖRBFۨttNW^.݅(fE)k6r!lѤ2p5.٪yv|ռz]MX5$rDa_:HTP:~WgR6'PiR Hh[ qA*7ѯfᢑFjG$`3ژV#.\Z[Su6Z)֦6Z3f   I՞&|4lg\]ۍ7z.%n7z?ͶQti%8!dF݂ 4 Zcp v]?,x869s>.vz@s6XGN< 7f zhtDh);0P Mep4nL$Np,J$ EV1y@xyFaħ0-0b1 Q y#4{d&Bw|w.4*M…ty\4u~<2!*sEFLf$ʩui,%mۼ7Iֳ}VrG9J)_wY%,FBʭBX#tm Y隱yKç`i ˃W;n岶ўҦf[ٶ`?\Շo[9;̢}I C./m0@=iaIS:8\0TG*IWz؅`Q2phq+i?g[bEXGNʉR pZR^pg:^~8Y "ْܳ¶=}w斷#ޫ8Y7_>nbqVBh@|Jv ޯ,@;w"7u1 qjdRbяUvy$LrACcsYg<)JX31BnxN/8vy16 WE[a .LvS24UvE,*Vb#\8H}"F4aOo{KOa~<; 2QT o",NnYMnֽ;ͧcCbIiQcxQXoo0>H1CH&#+C֭=A- ]jV"U2;gM!yHvBnfSfЗSW]ERkk iC='6솶O߉e/)FP*s}\3Z[f@8r:,%$Ir w3ڄj*8ڄξ.H<']8EÊkr M#1=4;豪p4Xt$LyZLrΝ=R=Fs,t:(lz -~i^/lc:>&܎c#ꥋQ ލ0C]UpCu(e `r=Q7mW*Bz 3MV,M)ɥQ㪘׭&d;/Ra -)I6,0Cp2M:LEoUaoɐՉlvRLΊqijc - $3^@B`7T! *Deߧ>7كXWU9'ޱEIi4@rEBN.ID_\t7ur:&LםFa1~7'g7l%Bz1;=yHK yr3#9KP*)ݓ#o&n/(EڈICLZd= PtUZz 9^ %HOGt>Qڿ%r!å6bZ?1Ij#݈i1}MsjDV[Zjw,AIkK۩`.Hk_IduoSR>ZikhFDۈhv洯Kj>ĭ&YzJT+ߥhnZ$A>2 x$2xh F*|q#C(ƀRQ /r0H!R1T f$ƙ{ODbE΀88wu Lו+0bn]r\fem $U^/S E*;؁_>E&U'r <P(*E>at{ICs4M}a^ Qzj5Pf> <^m4+9l|DҐHxuƁ'#w@42N;ЁAp(ѺѡkgXǤyY1Оyx-ijکd]ecaP$Y£8G_3C_+?w"+沔v eyo_f5]{ !_{<4 %B]l0|M(<ɉ%}Xڒ.4Ԯ%)Κ833f4,ٸA`q8[f lb҇ a!m)msU`by(Odz|0_}=+ihrm*NULcü8EG%*p)$0[,H0D/w[{w^PA?2dct@29] xXiaRzk_v*oڝq+z[חu&cp #ϸBePXi%銢|+. C@=q<ρVtʓńe2~p%bkgv2灐Ζ50L,P0>v&+vU.7 tGkJ'Y_(䯒 {8ăJ\GQKrJ+,h@S['w31#٧ O0?ׇ[^]lUmvdPt6/jΨc88g:ܼo+eћjuX:[/2yF5/Ԟμ;>c_ H̝ +F3r> a Hz bx؂͑[)|,jg$gFX`$H_ؑ6Rr~qF7IGrDNwiHLR!lz(Wo>8#z5ieVWn:G%5ʆ@F\{8wxDֿ CN&sp&;$C:jӧhzdwI-D%UDoiU9Kt3AAhm9[q1JRe 3#k,=CkAΕV V&[KD Ѕm.ձq)[- E68 zIv¶ AD m4jDxYͭ?f.4-Ռ$#AZ εLNz"&O9>ĿBP`Y{`%9΁[G@Xp/I-~9CXQ {ޱ%{3{k]xJ\j㨝sNZ֦,b7.'G#z{rf?}Nwo:NOGW[KccJzH诊-cOhh|Fs(FxGQtL w(`{bGcq0tMqFS/|S!%lֆ'Z2CHWEYKI }={v)24綫WmTlvkGWk= u3<Ԣ؛q9J:6:+ LYI5bm_vC Ơ: 'sa]R]P(Qb'1{ FHzsA KD6hForV#6)kO;;cayˑċc7E 1Ch#} @=hgBS|w" TfoCF~(h$9)M2׶~XI3SJw"@݂TCt#h:EJ,y~8&;BPDՀ*=%,V5sL 8ΉҰ>'ё%ge:Ck{*%ҿL9:$R[?ꑋ!b$^3!r߀m7B##y)d@D& CGѬ6]QUnD284#F6i`Z+!AG=Z7 \ѻł;ơ.lxްH#@}tOeƁs|5X0!4w_4 {v&Z]%[Ϟ|a[a[mlu މ! FU#D)dQKwj>!:ˬ _6⊂fQ6ᰧW "6?{ܘB0n`-NB @ʿmr. , t (+30z-"HMq &XH]IYb; <,fq\;lEww ³%lz[΄2fT4z-]ڍ岥:^ReJݥ46})7sTrp?P_.#GgHMH:l7o'#g69?CP+:Wp fA?&UsHz.4~( ~*^$5PŞOI!02/OL E]MtrD[\9Yڭ Z2/뾵*?B2Ձr|B0^EG{eK?|gW !Y5}/H%&A,J |D㎯~#>vf1V8?AI*ѐD>l1l9&o|(oT]5ìK͉O4ߏI:, %/Ј+'?}'74Bn)؏ޔ_g'j4wI7E@ܐR_O>\|v/2-C =f:B0T i::| 4,G(*^@vHӃs-d͡ҵbBzb) Iv9͋}(wh9z7m#sv{2 OIR2Lp ˊ+bkK泭m_+nh sx<'&i/TXMڄ*sO-yJË=tVvxRZYmև[ޛv7n# +xsfnݙdcucwr_ -6o$Q!)/YT I$P(jC$V)d9[_u^~!\JE :1bC;>x>جxD0$v]%9b._fdqH.;Pъ&Roj+p9A{Mdz,Y1=>~T-lK7le&.*|`\1t^/Ӂ1JLt@@ș!EN NZlh[Wh vhsKZ TdRdG~)GY&bI_4ZGʊU_].S䧞2]UTrX QI7[]snshtVW%BՕ&EZh4`7c2qpb)t-i}GA>-AKkɣ Mɜt>NY+t+SoeQxv?[i2 JfS2@@ ` s*d|l+l@3cBI(ۅ߿(sp5F`# lHc/ܫؾM0I1Uh 2y_hӠ腒q48Bȫsn u`7Y\ X q,Qm +NA+&m/?K1] x .e/z=e `- 3SFJP3ٶؠXdp[KaܧG4"AcivNkc/Z[sg*ϕWTh〈.R՘_'/ @]ַZ6_Se[{ter6eAl# 61Yz#ڭׅ&@(ݖXJ!|*r${@YV^S86'C׷E & Y?jhndĝ8bJAm(07n-ݶl0aFfiϐl8:-U+xa_V->ȡ(әLhVdh0W螨 z)sS墚a_;7tdﳗ ;x d?__nOh>?\:x<LnoSc _;Lf-펰7[oZ eźRdƲ}^t-Ԇ0?P쁢 GJz?~ɍcKle BtoE7 sY%b`CNuDO;}a=ppQ_rGagzL9Lkΐd^?^|pwO/d쓂ё;l QEf}1ZM:\&t\cADcy&PY64Z6rǾε%`XcT;ϣ[8H-\|`';1FJK^h0On?{/Y`'PqgSY5 ϟ/֝q ss%.v,Of^6dI1̌8țFdttr`:V\?S&(xI%:lWlJMx۳iP.쌪/tݏX)dg|z T? O&(N@*!(kKڶb(ja/ =]H8XA dQX,˦RAK\v]JCrYy љax̒ BQLJa43 /z@_/#Ld$t9{.\]i#7y-Q#iSr á%3wĈEaّlx1N9"4"oHnYp[痀+?х!DU - hilEbx$9ZgIT? $DxM$s(cʁh 4u8X`Xp<=q#*+~WI1eL)}@03"zXƧO'['7ߐ9)w`;0AСQ}a]ybD7L7`ޡL8v651Sÿ=R|O'jݺMXd/愐cyyL]>Zx  Cʀ 6A0t@$Ex"`\A~ﰝQ;Hog #͊V&C|m("%FtfNd/1XxN pq*L𖩩ͨ #DEv >47a;k0dʱcA': S# q,>ct*$6:jC!L|'9:=K͖2mhBYD1\9V:`:%I22 vax8~_&: =S0NA: gQP\?,ـ;lcy!QSXs3a"&z:Do ݹI1e_+ G}qt'ъ;!VftZ:Icv;г N׊4v ix>Dl5oPe?`Õu7˰p!3 |+%s3R]ֳl7*W/v> nb2 Aɠq$e. r_;_F@C\tZtc]eY5(7#ǘQ\(tƓ\F¡$!!Z:wd]q%;A2!jaZwo7Ŗ y_Ž,|[Mo߳;1)'fI%w?|2};%7)*u."$],@ztaG(d ze1VkwE~S+{]1ɉv j1ID %==ǂ=Q41&W8qSrǎ& J{2AIPzwzֹGm,(pmS QINMVFD1%)C|ꆖӨ(g!Luȕ2 XO:6+R<޶@qHΤEţI,|Bq`s>~C8OuMAw,eݛlf82([%d]yar>jRXOT hbHe2seh೺B*\MJAbM_|&'y1A#C1v+VMax-Voy6B{UVFm+Meġ%+JپτxiLa53P&Vc l+֭l44uҖ򌨷-1ɉ29<΋R(Xea9 u+Q9LkL$vOc$RG#eHD%Sٱ%J)52A9. GښE9 QLM<%1U.P&+_>&l܈v9([;uFe+VzdޘZ]0^Sn;!K(%x Ol z\^]UO~u"<Ⱝ쑥7留.-oӜf"LMY"d;pA|q{GIO0Cq³*9}F9CL%1M&[DX/s 0SwvG,Q"cW_ՑNx)+2"5>;] 6Cn01o@aJxC.;8A]*p,Lq-E`dJKT Yjw/U^0;Ove]Jވ9`qkgBW17buUrId9Áe>yohg+6s}~m].O6ͯ1}CCjoŁ664GJ̬S> _f7gǸcF)ӦFQ/{2D#Q%z~9HpB GFg,)4Əl#'L>̓ϔOtỞOpg| iF?nH͟Aɻ/ha oZM'[-A5K?[hxTȆѤ4\޽o8j;Xe3?Dc:y`K)DPFE@^O$pFGc_%<h.31Rxhn"e f.k.y b<-@Ψ:)’Z<#LL{HUsb`㘙RLEk-TT??q,{4~D`jÅ)/pܪ,xl/6`BXۿ_Hǐ>7*$}u]zXE#)oObom,B~Ѻ\E<Ήy,]]ch#BQSL׌mDUg0 X d PGyu|3Li:h:.z6=v'fw? WʠqzND4}'$[xEn { zlW0T2 E6cqKLGQ>/|>^yW5ynpjYҸ݁+HBҿ"ȑ9L$b 0 /ERg;>–sgёx,wIYɑy,p&0'->,H7*AHQFK‚re?eh\ S;ksciPk~^4#x;-Q 2E1/SGʲ޺|RigZT,uidn2Ī+!^5<)|U S|֌ -ڨ,PPՕ6]w?Y#@gqn=ma{=:?M,9n.ݵ:냂f KK)Ɵ.QToF Uqc1h]3:/`P[{¯ $%ˡx `u=UamT}L,kZ~]Vw0KdYxԩBG6o|v]MO"[[N;6OQ]@{q7D\U5DY[8^*%'nM%3> Ή=5.KwіB@.DVAK)Ħ1q l%"ws}Ŗ2 p \xc4zcכo`JaƈFk(jbx ɞZ&:4Ru+]SsYGҁhJЬK]gs;ү~3f` .xEUt1fo@.zFp׆| P/h'E{ux=n}8|r\)ے53"'x!fSVX@ifsLD "߶.>/z;:6[Uz.Ir$AΪh rN~*&C` #'cjQe,mřE{M[ +rF׹oZVQ "tUi&=RP`A P_{o//l >?N>.OWGJbx{aoڿܺl^u> egӋ Xӿ TmÊ]~>j |(ݨԭGt)L9@utu~}~&;E'e@!flOUkLo%>5躗.\n}ם(ueQxhmǧ4T:*KZ ٍp-[TwTwsQ_䴀eD){@W(]yS+&;9ϱO.Cl!T4MoryLB zJvv%V./UHv79P7 oTyl0Oi:0B?c3P)k<5SkU"<>dPD 9OGEpgI08y~S3)5xإ ,׌o*oF@K~уBcy̧@d cjz{<Uu2g u~?yLGJɾU&9CD(ޤC? ȳ&ӊ\n]MB^F5iW$>d_H2@VIYRC)YE~_r{Å?$jU&DŽԮ dDfV M&8$CW)Y҂Lk}MgVݻݭNuc}SESQίG-::{y6^Ynaj=|Go2tF!˱^9#]o%`:50&t,$y ^X6 g^G c"L7QR>w_IgKlҁ^Eq &ՙK 6]fOt2fIяx; wR,"Kw޹nW:Wgٿi:ı>n!_}j᛫K>#.VcS4xzVZ.1 ށO:ܾ:}Ҿu,:nI?w‹ݮvnT<6WxVZĦ7Ӌ65>;f2۝6DnCCAnZ,ND8Z?m]}GNM6$gPо:~ KPGO/%1f6#wZPk :DŸ>C!lV`=FZO[gӡ9 ?C:@vE^P $&BX.dsBRi(`vdFIW.}E=4?H+J.d&os`mؾܶۍ~~t@8n.t BAEjW)”V*n 51_ya5FZ.nHGt4x†KՁ:@#I$6%/i[FF!Us{jȬꍵߟZ`Z2lb' v#x"K@YiyI\՛:. ބ_::9bCÝ[42y5u=~ m޲Zcx;IIJ`]v넛p?]\*RZT Q;zY*^|V& obTkr Veo'T[%ץ~NTKزfo1wDs\RMnx(GW#Z֍o=5ʿWQYϪRd?ȔbJ(>%z]V-@!HMUKTv50,zum̑K-C:SzV@{J/!3]6D)3=dk§xr D2\s^P݈fP@-zVi-/S 0QOáJ~]_wzMD06%GRv0tu㟑 DdHPtBT*(j&欖1 +P(IJtfdSSىjIQ.`=jKSezRSU^u9$jIZ%UW3T2Y騞 aFm"4N$4d|štM>MM.#4/E"]d%7VJ,VWᢱ >?>;k]w7Xmkn 8鼏G\, ;uzX[tFs㏴}G@{݀?#hR/ z~}*_A_e5vkُ.[&rUW_ @H,l)gdzu!mqz\[Y18x)XD&/'T] Sk b]:?۝+a=c`ك/O^kL̤? p׃8%>|^w?wm0XǠl=;_}*B(;0& 0Gp4thH`-Ё)A8bL|'3sGWxTCf۾Bzi@`|?6W@^}t=mw%:F–&k6@z.փQ+F h[t " 0yjSVXݡ Hk eFtտ@-tj, eVݧ_lXI&a sʨ4C;bd`[?Ϡ'ɯOT2+6pMTV8gن ی?yv1u;/ & >Xqsg߻ǔp(#j A+a^˳D8L9GD_f/Q6T J"e%eEʚL!dܔ=G,ɜ[&W2*,#Esc%a-殴>{UPq-W[9WAj):'PyJo}osP8 G3֙PIo}_9YtBQZePIo}B3Y9$4#a̘jaFe)|͡Q@ӳefYF]9/WWw4e'ϴ5@ kwڃ{B,5gTON)9ӭGΉ!1Wܶ+ , ʴ3=5c7(e87bf iBzI!>2Y5ƞu톁2<fצuIEuY}T/-M VkSIS"N:x]Yq!D<夁` [cw64'.'!%4N1VR,2{XvFtI41RӤ[.1{[+^b Hlrf04j+2S0S|hnvd6~0hLuǙ*% @8"[ 8m i\TQ76GJ"ρ9tiEî<(߬FX33́3 :α] 7;u `&:n9B?+ًu;MtI O`ul3v*ᾼeڅΊ0@5[>jwOt=iT\^ Ons/ ~AM vʵԔjw̝Z^ɔß@y`&.t& QBVIݢ b u9iv3drēfZF-yKb Y^F1!mlh%n wtZY^Sd:K38?YK6Jpqɫ`ꕽ,pE &}LҗNeKT!=37s~'l]:7"Qo5Q5g#5FiMVPVON>LQhӛ+h1ysIc\\Ӈ|9$<β~Ү/|F[Y't8!:ʖxE7x^H M%]Cql9#GY]+v xel-@27u^vZav-Ys=s p&>ץgə{s{wL sKkSI|JK7f,!˂f<) N'6C;mnh pYWbcg-^QcK'SmpLI|fhu ԟ )fg-F"mp4Sl6Z"dnn,M"d:1Wij*ʞpĄLewQ(%ύ~V%Fޯ&/_@M=bȭo!=>5څzG9К/gtSck>Wى6 ݵs ղ? '$ēUk e›j"l}3E8Q h- oRRRl4aP)EfZJj8SQmLxjeFU3+G,>m|P&zUgŰq/b܋ǵj֗5;֕pyNy eaNkRoSfǷ7\@V&NsŰj/skRoT*;|UM-N.T3Te UvAfYLIPYT5qZ0T8->e0R}ӑI23*`'EyD~Fȏ>K- ӗ&EzSczF|6 ?-&ݪqFuc^dlXspjIzmjnIWE$ryW5aJ$l^1l21(ӜRH쳢jclKC!\ҰTA$,scOLKeY*iLR"qH"4o)a[ӗxӼLiNO_*/$"QK~6RYD:"6uP!y*ן $cF(`?Y=;_暪MP"Nm2B /Lr*>\BzrħcѺwzWaE8 wZ,,M@ `軁kL|@޷x]3#7 S#CDh39Wܯyu^zA-y`YgLp`.)N,>AQT2s~V{~Zed+]nzta_-MǜXKAyX K99.z^FkĬik =ʁp!Pc̯p]v`쀡AJ>o?q.fyAlh#Htj J Ag J1H32eWƙ-<`ۻ&~k^9VcϺFjސY>rყ^@Ft (@G=-R{Y" db(x7`;"EfK : $c20ƻdߴ/+3}l̊ qӘRŸSls _k#ֳb|(7&-sJ>vC'3>d4bZcA:s $Xvٙcwt~zqx); iajܢBK)NE!}xխ6*`ȹ#Z{dͥ^JXάY&ynN9S:Y1|1 coLB`MV{J.`*6> J )Zj̑ q%o,8w)\|&{2_^Dk^Fm()Fe&6feJ5Ή rH^"+6U$eTB` XQ rd0XE[lL4Wd$±%l8X`qȕNf\ ҀQ_AO=LG27;L~ id)j_qSWve 2jhZ]yS0ӞPBc?1 ~ʍq |Ez; 3T]Yl&M658}g3G=ѸaRͻqqr7ܝsgb@5GVy#7Tf]Ėu0;;7:qƓw8[r;Q7WѴ,Ȏ2ʤ$R2&Ik`j)FO%zcǷ"B/@gfM+>`29G!2lFY]6oru\by022WUeY+@4$ S+^{xy׉ىײlqs%z1]5ݦ|,Ok%Sl H[-5Outx:vׇ|;A0vz}'o>g#t>}&B _|"iʽUi{{t 66Jk^OB^)(3tgj@1󒡝:?ȶgVs+ֹl}l~j}iCNo{UFn4Am塍dq3u3E8_ gOmmfL1|] u 1_;EC97 Eq Mo۾\8;V_<}0(IEZm6v'. Ǘˏ'iؖ4<"5򠩲r '/#70FN02bqWaqMKd*vGZ?']Svսw ,Xn0wZ&Sݶ]0[!c$s#n@ب{B{֝3[O,wX1[kw({=r?ئ?|ˇf(9\79[up:-×qx4mgQDlk=j[&hlHL3'757q?&AK@sph(GWЫ#Qo6;鲔*8&By1- Wwy!oۂB[ Ȁn3{:$9~QׅVpzrߣD$;wj&BJE >dc jI&qQ+{Yn(GLe>: e<5vp[Kz e>'\T H"|I{^86rYb[٭LP*0.TTf ztΨdž+'7{(<0s{;F~!*C c卫\I .LR៵=֖u@,I )þ7%i'!O)cܐdԈ{OLѦ9w 3В[Hf"8t-/PJG.1hS,x&a',kÌ(k+th+ˬ6z1/Fu&ŶOo't4bQVs5v1p %-|HSS)kLٌf9*4?ޓO7wlԟ{n0 幅HG wMcS vGo%b_LL0*lH`( 痨R-e)# Ǘ!:h5f܂J>@d͠]6AC-@ '/*6;^C!\#.MFUi^y{Lz2 8L6igVv}1TL^; Ic0,w8 (Myf@#ULj?bS$`2Ic\} |/9[b^B3?M[Ԃ˺˺˺}1Ft:LjYk/K/K/K/K/Ş狈ffr_V_V_V_}1i~K.%~YI~YI~YI~/VBl-#W\E֎!vFGgɈ3fFV8.`١0%i̍r~GgGHiϠ};R7}5 (ACgO˨,MRjM)o9ȗ3T/:-_c=j_vC؛..lE=A\\] `>ƻ8AL<q}wqfxhI$..;A(:pv)WJIEu RN06{)z=9,W{Ny,tlIcV@ܚ2_ص>B5cҿRs1_(>N)?x ,՞w ¥P9v9Kej3<xΦk7έmy^/oxKݨ+]Ϸh,-=s\]8μ#gA̻Ͻwe :ŽK[byx :.T /2Ų8\^tNspUx (.^YbJg2$ssVX<;/.ᅏQb+x~aX<;/I* S?0njԆ`rgɗ;#MJ''ǔ#6/ +KtֆGTBDŽ#n $ *^}gk-MmyQ_Vuxyչ<^ֻ G=ř0 ur2 N-[KW:),,RFkYN((9N?vyI9P? e1գ4*k.E xrm3XGdѽ[tp(@( C9%SKF$`&߿ww61@?mRU Tu`xS my8ѺNLpyI |lbd-ȳ3\ҥ&],O|29y)&E`2Uc E`- nLtHh`3bf8!+$e2 YҼ7 eE@wn&Z;8 C-hI:7);JSѫ19ܤ}TQFCmV𒞑`gl\j9R2M0_܃ +S"<4}5a.ZYӇ[}4h2kyU77^-4KIu7tяc[ r$1ef9U+no~!{b ˗ypISx&DLiHi3bO8R \>RmHv S*""zG5҄v2"Fe̜9ճ? tF+`ŲE0i%Eђ"%4q {D8U*rv柨+<+Z[zlQeW$q64((B/:0ً%^;N,M}MzP/mo K"'4 ίxAr $1eE3Se'gV"EO g.A>?#BP񋔢v,ź 5 ?t(pTJHk㙋F$A/=jVV,]Rm)BE{-"-Rr4eKvBiUv"QeEje$ \5kK%R[:| `b[{Ϩ*INzފH.}* خbL VDR `LeK` bvk5#+"^*z9 ηnkBe 奇 U <׽Gr;(:W,!8NAB}DCJO\ 46 5<F ogyƚ<DzX߳O٨Reo,ǥTMvUy#Fsps LN@[! '@pG! #/?8Bj=6i6G0JUy Qώg̰gLR~{~g7 h,CGSo n^6<œ9 sχ[ $\eb2u{W*nlvƟ !UH?/"s-ovr!U%eɟ0MiHD.++M:zFFo>ɷIr>M} $la4M2UඊH4H|/-R!;cgZV!Efcݑ?'< x9vop2B&A<2;{j.5g$E}tuڠ$rY KRcg!I%#L)(^%'n6$qU~LFBdBϔ3ϚRNEKZ#VhB4%^Kvkc?_{gx( .% Kl 5I-ɲ{=g,d{rWpMk8}\u9~]r 9wYZjfmWmjQqwQVI1*eV?g)+tb|][M)ёE  uCiI>q:/?6fG6%q߲h&xoZymTBt”RkYlYn,+Ôzx ݻ:Jwfږ.g3W9Un.~>S"ȃRa-ʘ[JfBe5{]X !7rTeؙ{^WL¡HG{@s`el7F+ki q oY+Wobɬ62!ZZ&Dw>Z_|Ә6,JO9یa>Е]&rW3S(%D$g<CUT[+ZNpsye9xvpq xee-!1t%R* [QRaeIse$q=\R<ٳ8{.^p0$̎.g¸ilp+4z^L󸧠\rY+1vsr٧5^Z,s]#\D.8 ,"0Jg\HY VW|fAy&% 1.b-*ct4DŮ[#ɖ } :v]cLCgO89x1@vf Bo0<? q C{wGt, sB8 w-Hv[nHYAKal5_i8v2ȵgA lɧ2> M vUأr,v<IX Ε,5ldlwնu8*$6AJr~ܚQo^*1?Mv.furZ? It\kZ3s9(::t hYhh7L?3ƨ"tO;G[ (i4vvO־, J]\`ëIsm4ON jii6vΏGݓóUOƒED}X˫#|HHD@1~^^~l]u?}-QP߾~wm^^Y.v{o󽭣o:! OBp;S%䀃rGlԍ9 [O-ʪ܁s䍟|P?䣵h(ۇ!GX>OڇW6b#8~,wj~><hZMhrF  2 'bg9г#n爙Huy` φ !x76tL0zAocn-H:F#I@xuI5sL 37G\jJkb$%UY! Q`9e >GTBRUmjwQ0+`nIdOF:_1iEx` *Ӳ"4cоëZֿ=eva8Vt Y_]ydc§1-0?vtA̺D3Ic0vz=p#F8 =tp`ՙx90 ݷHcoX1Z^Zp7`S-&ZmzX{j1 ǚ~Q0Q2>4csk18{sFwq<YY[6C?fC?C?C?#!hePB?ZP㏨L;8ĸCSwւПB:=eB:z*7,{/ӫ\[N%P[o_"#`9L܀$3`A eݷixz#O˟(xz{>%۾ \(yO{ <xçw{Ff=w] Qn۳oQ1g L`$eewHqqf@nP2e` eJ&/(즗meCHSp|2mggtϠo -`G*( V{eq|Iv2ّOèK~X\/@ }|_ݾ/` b}}5}JeI sLË6Tx-JZn%E:x[u մ8 ʵcre568Rݧ A%2f[ݏuϺ?/;W|s:=kg/iMcc}{{{vnPQ(7p$@?nX&p1`XɷB`7"H7J)@⍴?twM > !LT}~L%b__oX(UU+ e6x!ۆ Y"Hys9T9(\kg=XCwg`X1߽wX{n' pc}i{s+t췜8|=cB4~tv\Աݝ#X?SGKFڇfڇݴo>Ma?AڇwLt]|Ht]|Ht]|Ht]|Ht]|Ht]|Ht]|Ht]|Ht]|Ht]`Zϛi=ofZϛi=ofZϛi=MnJϙ1aNhrR^ܴ3Ά[^}juڝ.CqS/N/nvmx;_YՁ٥/R+ׅn't=H_nW^cۍiub{RbG+`= V-gc~&%S) j"xommںsI#Y*/<Z! 3~ME7OWP_uT)A]~vۀ77f} Q.UvZS/ӐdIXup[}ZeNlFL[򦵞sbdͼ)Ru[P2L7QLz$˦FY6Mw !_CVMN [@#juٹe;B@ӡ%HEvo2LG%5\%I4ۓΈ:YlyvX2*o9 JI\U0'v6c՚7nf6%yI<99U?'csr>''qsrR>gS-9}N㟳?gS-9?ΦZr>M?9jffffffEBL,ٟR%X>8ifl-U~T:36-MزTyc3ˌk ț)e yx/Si(&_yv\w;ewen SU7T/TN۝bUbUw Uw U3 W ὆jXUC_u߀~1 lMŸA1 UU5A1>xgPw+a.[O)>e›#LNsd 2S&h9ud*GN)8eB#szo2aS9{x59O[:sW)[)1p^al=m`lzty# ٍ&-ƾђe0(:Mʪk4W5 p/8eHc/~6c=f{Uchfj$ JF zݏF 10Εogg;n>jXnVgֺZ9J NLExmب ϮZ?iwb)Z+RZ09 Vt4v)Eb̂MfHǭ-yxtu/q+͑vH?Ĵ5 Qh4vs[r xK|\志{r^>+<8o5QS gPwX!2њXŒIŦ^k4?AY"p5ROH@kCIG=6Iѧ?P=r-j,QNјbJ<wqt~:9 &;,`l;`ޕG(+n ^|W1rW@$VVƥqQ*q4_sG4AKS3B\/y"K\vBv'vlP-AWCmmhSLԈYlG7(SpnuQlb++*OyلfUR)BQY%#꬏ctRLnQ|Q,,Ke+e%+4cՖM*"Wl_^)\)VY"TmI*rf񥣒ȕj5"Wdf-wUEЬ4,V_+\V,re)Wn,\Y Qn,\(ZbiYJ9e+k[6e+2Ԗ"Wh_.\V$rfyEeqK:ݣë_a~5Ϫ+$(v:mƞqĴN2Uհ?HXIÇdl Q7`pm~Aqdfst3:}kևn2- 84yo+yn' Ikg=ewV+6P}* +"BcZ|SŃZܫbc'd؜F)LdiMdiLdiN=*Ӝ}Uا94Os*iVaTӬ>SO N>Ugw*'( )s8/I@_@EURM.g;[u}gѕ! *8(n}K8ȍ-.QaJq09:iod Z#<qgKT|RFۄK|L@OOzh_# ?mkzeGT^ٌx\FoW`wz~%?\N{:\uF}_  xK\͝Fcg$ B$!aod 6|%?ؒ]ڻ)~l sw)Ԉ&:Me@Xm M cX-urM2"<.JF/'F0SV5Kwm5le>;iG xd&5/@='؂ $`Er0v#Ҳvlp=  G\IYNP!_pBǬZJ" zm`2t#P]_u|d6f}/j3pl.U/?xn{ /^-2;,E <7A uFR;"~'5vhس ;= >dsFl}V)Ls| ӣ1a0iڢ.p&Fv@:Z˾% CeVN@Ԋ2JW& (,;/t>봏=@}/;كo?X};I3c7P,+Xݑ1lvyB0@0O'@Hu=q '߲μyDt[73[ Im7{ ㇥;tCO :ޝ\E/R#׀9Ag 66#ua{v}+"ڢ7aF2!1טzNhބoߢӀ؍$_`:_bn,5\б9d|ۖ#v kwE0^ 5k8){ ._<+(2mhy'=H 𽨛.|8NMmhlm$٦o6jGM'@ogR]a`5p8h&#n&*7 if -": %ue6MpJz!nfu6Y`TdM!ds(*@ .dw!6iX줱t* CR4^h[ B[VM& BoDHo8r݀E 0Z^R;VDSV押aĭvw*wdҎٴ;D@~ s0m@T =ڈzիFc.Lf߽؋x 8L,q()XV1" fʯݑ?H!y殙瞼4*7ۘ bY ä= ߙqNx5"{}^) Y$џuߴuu&=;S} yI6?=3 xNBKԓZ7 \uJ"J(r8A[5r7 -Pb%-̙F (\ob8h7`co.Fih%$!UQzV̝fp7:j~OZWJ'+ J WVaؓB{;p1þrEUR AIKaeID @Np|˗1aF\qdSYF{I{ /`"1ma8 @٣[46Bs770y1LǥLȆEF X21+º>gqsIn6mA 8YdWMxpmHlY+ΝNql}DIܦ(5@ S$E93ӱI(ԍB [o8+;L~qBI7^$D#K_߶% `tT2Nx& +^h ` 1MEh:qa:d k`i/F>vm4Z%~_bl -C|IWu0#B0U1Pn|V ި ^˺BQtN+!rJ4id ~k˱b;">Q~`Y ~tl]⥒.~E9bDM|UՎ"ַoS U+ {]&| ` jFZ,NltZUbaJ>(v4'Y$,!&.,jm]˅yu.dlغU+WGGGJ#{b`#9|i_&~_I\ǣx&<~AEe%=@^Kz+kӗ6x4 jcFX'cџOT({3WNf6d'Sf0WF*TZupܛE8~ jCeyⰊfI[Je睠eIbA2Fx-1"NaP,;3R,8lX=~UwU,Rf_kxeA"3ˠg Uc0?^ֳ˺Eիӫ'X]T@ [|$`xcLHޱHGr Ec0쉏|y[TVгbԨx5AA$05BC,su|M.B-Hؾ0חƀ+d:FJPj=HɊR-Eǀt(Zmf{Hah%R; C?baY]' B;ETRŚHjt7uy&w@4_F(PGsԄ_Ayk4<ռ[CIóRMjy[)"oq͋u8-I Pа'ߨV7k\Gc+yہ+noeqεq"t++m)>r ͚Im@Z\ILPFLۇ]&r١{5g^bv8uk5M}zutvŎdFr?Hze e,VM+hTiK7[c-wq+ ԥW8w( KULchsw\cTg~h.l {D7mۘ\e͛>^ᕽ\0V-iHj5nb' S3{r>%6>k"- ˜lo}6FWꦁ7>Vg w =XXM9R-r;p=o- gkj7N QPWc eɾ~=;\88=9:>\ ."úPo+g1qIUh?c] uF-~t6)=IJbH{a#,mח]9PXk˲ '#҉%w`_1Vgd.Н˗̹{LRH:넰rcc'rCVDF3ch#.ɯ˹rz4><` +? _h_kp(ggsx})O//?_Cuy>2Ãp h\˳r|sˆ~kl)8#ad*4ela@a><>? o| c0.8@{ԮB'tѿ >l]B㓣3a_$0ڠy.?h7y0}ĉD} @WgBq>K0 z`O_>_- |Ѕ1t&sA{:[d'Shx|D?_" Kd@$xH 3ė}zIgc*uDWi,qz!iZA~ \I-i)P?g@AwSnW>=>PpP|h=ѯ\#DSGsLьPv՞*烯2ߒ6Pk*3^ǯ3: f J- %U;2]'N4~p r?aZ" K!8G _q9bNM˷*0f5rI9'A=#c#nu /j&y2r|vp9&w+v+\ l^}T>%(O|)u9f_hEt9YPaٰdPF]tx_a ~=Mw۷lR:^t7O$06vj$b֪  ȕ⠀p=Z>xdaA(pjyh[Êa oi} $3Fk4Wd^QSTR+?FW|irIFR/H|bZ f V[qp7x{(xWqr, Ux öz&*K/\"‚B+1JJFbE+[x^%W0" CrU(J HvoԈ31=6}[m<+ڭ7F8V>Ud4V5y QJ2%o ֏KGImRJ9 Rfml98dXsF*U,0:\uadsFS8ǜBVfU@A} d5@BԹ K!QbN)OW *Xb$;UA?f ,={pU5PM-]gI{c]ML*{Zv;lQh2ƺ$7E+ ȳ(JÀG=Z;"7phDEr_Da2֩D]a\D]ȜWhV|V4vگfUc*[j6K-R?LW`jҎ|k:r.,|XZQO'fe,B֮(PfxOL_l7K6½3/у,<ªJ/sy~4g[Y.JGH& /d2z֡+J1%IƧ_9Opt2Fo%4LOI*wR)51ur&"إ8t /(ERլ\7j%ӛvnsDZH 9tż{5FZx3OP.\6\wۏoc%M:-$) 饵'' 0`fms -BoiFckly%BC e=8'| ȣ fHf?<|D' @׺ qrчICu8crxӿJ: %+wّG:!zӗ":&}CyI%8oKf {|$흙1q =^N=\\q4ĉO" +$AS:i4>qhO K&Dc}ئ}t`z5Tyn\Ҝp;P<$hP opd?n϶~o9W~}oO.c03ÓdڇwTl,bzUK3q]v#'d4Y ]xF - )~`=ge !IC~׆.^VӺ&fDcwDt4??\iM`C3&?5D]KG|>Q_t7C~aA%x1˩p3Chxg Ы>4%J@g'X(,b)Ow,,]x/_Jf.v,wZ.;(("ўH\&3=u2*D~#Cw1b0:z=z* '(d|A BZ>`:9"I3I=G J3R mō|bmMP"G@{h,PB!ۛ$(h'%|󰕏 q)JKS4f~E8q‎ ,gf`Jm"ia-1aB8C'psqhhS$Zlc)|>bURz$_x8 cсhz .%X00"PQb"NC7T MY;رj8a-V/I#k1ܼ7qh<?x[˘ R)(ٶybùpy<̤H1΄߼კyr;e=5s‚TZ[Ivbud)bұ}.=nVŹao vQ 7{5E[ ? 4ӻ}wh;zX; xj @ڪ= Q! AgBѤLx5j}RZI-JOR2־DTbv ZJFZ׽!WH")4Xtc6|,kR >}= 3'r3֯΀rWrkaGK vI}ABJܪP_{($:dC )SO05 31M6`Esp$=?20O0ܿ2aiNXO~^ 4q-C]!މPDWXEWV?%VX`tjܗtr%}tei#Η\+ =5/ B>^&pyIWi=r앹B3/p!+)Qf <ss{wÒ)0ut--9I@,'Ep4`!vѸOFr9z9@4 1g}I60:T9F2O!(wHCo$~kOv\2 !7i0k+`Fk#TKlD+-QHŸ esХ _SA$ؠ}N )F2f [q+8a&Kp0 փ\eY82Ӽd.ɗekD$*`Ʉ׃m*3NUr*mNV+E+ڧDSh{oRGjD"<JB结 q()Ì5ArI?(e^>Y(prfIxI-N'4Z~v>}sPF*1lR2RMXfD3n (6DeSGX֗ģ>-ϕ3"*Lv,%Bɯ e^swR b~.Sh[+SeWIIRfQbB?Km^k4M4ʑ#^@U]=3(g}hZ^v`Ŷ}4cѾEa ?H/cD_t;~w+=v#Z[dl&Hk\yspyEZVWݜg[6 ɑuv£s/F(9JoڣM٩U09;l?WשyGL;],S][u%.9[}hXXb%q-%!ɓdEITU g iJ~["[UWy;3 9^Y9^r*I;IVs[2{9,[I7yP&(AY5ITe%X߬.[ѬHV=I+7I4oV4s<ꑴlj4wI/y/sXdP^:udA]Vjϋ/FʼnUcU:ͷ_VKo+P=܋/PEӼhZф{jhZMMLc-[N&iW<Ч/v+vs/[&X_ݔ{@׷vkU)[ׁy;е@ײjž&FeXnTܨ}*bϴ }ì~YWLVd_RE|XV n+Ty;𵪃+Te;Ux!/vJUaPAMrm&YlC_ uż;}=fk1鵘ciEScFcƵ=k`]vԬ|3hid{4 ˦a-@Λ(U iŹgj)(jbR'2 ]sNa'Qъi?æx~GΘ4eNl.7qAoo:c*alZ9i.͎ Fu#G WRCdiCuJհA2/+ }r!=ו=epQw.xH`Dp#+HY1Evu=XTM:JdzGfsiG҈?-n jB3|,e8%*ĔA.rC" iܓmiWr*<@c H/|KNJPN/cAMA%S%~5{[NrgZus0Jtj0[i+my(~%J/\JBͼe=jW6qJ)@R:SJKkĶ( eգhweeB[ T?貪CL2ь+͡ǰ$\{9c`홝~r#@QF4q=%7:^tUvÉ}_NR&pv::uZP Z {oR Cg_1&e&Ŀdr2/ H"p̶ z9nXM`ݰúau"IVO*mx'<`Sx;8C 4r8o0$t=fÅ;\>#ZX+$ .NO E ?(Ȓ {`_| 44cК3*&D fCYvDx5I'Zs:d%g2☌,ḋ &L& a2g:Y:d?PP\?{oUMl_p2cBnb3x{oeU9*i:S7S/cկWg7#{eOIx%ʼH?]}4!Nܬ#; r0a=Wo.Gζױi/V;iZ-n}~&0H;?9;:=9M |iw2U{ 9 !RW kY_ÙDӔ}>7ؕAkE:׫P$bQ=vRّp>lSu}w?^"2b4u#[&K5+Lty/nMW}ȏX'ÉycLXQ;ӧP¹ Rc#W9G{Y{E&B$px԰eN}M6r?)z_n}5AUL/\q 0s< Կܚ_FGky,>_a0ikx~o(X m|I?"wK*g`4ᘷۖ)jtM]//pʹq{YԻT CrBj$F֫T$Cl nBkN1KU`%ު,h k9OG8okG>FKscefd=՗󃫿 (_O^>}\}yt/ߢ9m.端g-s 8tt[{+z wReS&'kGeI7[([75C*-gJH $l(BQ4{r:,8)})GUy4mϣ 7h DkM#Z[Zӈv@44hӫѦ \/컭8&P}iu|~>(͢za_78YPfHÊ(oJD^#6lXJT,eH# -Y4Yge: bYNsqWn]Qb6؅aHԶƠF k9,iYXLN<8u$IAJ޶YoU_K'(5TiDHcƒr'T bOMF=HJ0ɀc¾-Bo 02DLb9ĥNvӮ-aL[z^L[zu&}fӘ6scڬ1=mܘV1mM󴛛 y];Mcz 1=]??Ɲ/U~xkǶ7m1R!igAƶf6[i؞JlO[mmV=m؞Vi}"x3o P& dy) ]zn@Ѳef˄<1B5& b,+Hr-Ύ'M e:,gWt=k4'7Vt7ٛϏ2aXaP 6{!, IspoV4sɾ=%/od*|APzg_,T5/gU:W|˝G!^\:BFsdq8̛!5e \˽D94^v ' rK[ǣb|8}91h_3Ц ^T(|](? ]KڞM4K/QŭBi>>#k4I|`?],*ܣ2wzʿX+\?fSn~W ƴG+s7ݦMdojѝ^tԔ)P5!4e.uBcmd icmwd1͛2*O zbz,O^K~oȯk\Rko MF3uh2uK+Y9ThyQM3PN C4a Ď^PV|عDn T(Me#S4P0BE>4 ӧ!h] X{$VJK/d:̵lc}0 K^ dȄn 23ꨒs PUWFjQ^J:6\JeF:2=_[VC΂f1 =I=󇘹+v 9a-{^)+J֢ /jXV_]ǔqϧyw!pR?Sh)\ԏnG"iD0x9bxޏ`DW]\cpvJg&Y*%MDjhL NG8p[AioڧYue[d`9w# CӕKyPϯhb]VA7w;<(>dh)4wB=m7anz?چF$~&5 P4 5 p:C:xE>s (ϖ)MkTZ;`5GZhؒk P*_'RI]ZJcC::u u38*w>8t$; +/+-K"\(=0~_.ik2Sq rK .᫲$4¢j:H'Ndat27uOu "/C+h$f0\do~c'gġ[숻c71eY[*j-g`ߑ𭔬fI#o_wvCp4I;b `4#@#2ԏ{8f줶}qOھ maM];W2.PsZ-i03.QNSWamG|qfU9mQ^%1ï9~d?U7^yo^>w0 J}G |@"$A@RiB}}n^ z.  YLۆXٽgx ΋0@ׯ_wݗ+}GLw^Gb*խ=Ã]>j.$a޼}yFy]yce+ -~Lp[X7Q^wa/SߪIo]%*#9~M\$.EeL+dcCr,BKC+LFXg2z= S|IvKr[y{AW!u_\\Dw fsߛ _kސS[WA} 4c={MŒߪ@/ݟH|s"ޜw~g=z'Fꋃmv>ҥYo_Mrp'ER(XpƣFECFJL68Ncl Ȓ?K*)k<^Vs/ĹTPō~J\ϒ{ϱ[H[ܣI6ՑTA:$GHePTAZ%AD˹RRT Zi&լY gII&rAe*\j0@ τEF~|Ϛ"HAG.=0ә~~><nK;/mE?"]DbLb 4™+{[ziyJꌴyrތ@&1 џ0Ob^wU]m;WHSlB[Q{Z9HӔF)^&$ 7u84&Ԥ+~ -;P0t!E[@aRtEWBslysIvီ o^|)R}Jm8xǣ>iz7GBqE!pQu>1}\$ hA$UP6IV:u͓QTA*(G]vss1-mk/TZssڈ}Q^_'/;`/e6418NV\r7NN֘ej~O,s/kf#'^`_!є|NIFO(,bӏڷ'VI#HePTAZ%͚EP/ *&Ś0אE]=Xl1j۵ ;Q¤>;z7V`7o Yo_6u}65M'65"(<6$6D"B2"9رa,b&×94[,!*+]$PY`rH*PTrZH7Y%V_Sk'x5~>*|])%J#e릠-jIC|duE @#ZXH3$xwp2>!-)Jk4V/tosTu1W-."]cihhR`]Es˔!sH|lȟ#HS{xuonis7hN`m] O_Ηx֤AX|af4#Ag6Xk_49Z?F&KehZnZJ˯镖x `6YYVAw`D}/T cygt򴸹DZmXM!Ӱd4$_G|22`u/+[7픕.@8>G_t ̐Ql&jLJa$jv!Ү*J.]vw$EN"EK.4.za5I vgX^ i~ey&k7>5 Hܷ[ܥiNS~DtYLb$:d~֯gda+XY w-uGkLaV+o32/'/G@(l>gl[Stbo@p(;~o~i5,@,`S! /  SW`O%4ւ6?TⷌA\ fCdI\/컭_ 뉏# ؠDk@Ӆ9O"=Hj1}3^p꘽nnqK \Pr6U~yznY`Q8?ߎ~ĩ>fN.-w jL<,d]yS^nD,R=/K"^Җ1J0?o 5 >L((tmC_6l"O|}- ^6҈ ( Vi8_Șe.]q}4AZ"du˯ONg_N]IG  kdzc]z=~+| `ي3 A䫣//?ŏz"C0)*CI@||Bu2&;#TB-T~[Xne&R</g-Lo GW M=#Se[8vQpk*5t1Ӯu>/阾PCG qk:6BW:O)O kj/%' 'iI mTXs5X:t-NE@$Bm[fb/XO',v6-o>m};Xw5tM8X({I'mXS&) %J Ge5ucLJ1qmg8ijG~~ݣv R/훌oI}wM`[;Օu}5$+f)-iǰ^9h92`n-48H \"!"?(J P2\Dc"&15:'O$ޠ9:L@G;ۘ\e͛>WNv|x&z(BݾǽGA8U>ÿ'[Yx1>³FF^p>#ruԫ 8@f`a[ӄg,be'R.ٚڍcp#u41}zvxpK6GLJyA@1tD!Dk 46 @<ʁU U&SѦN̖2c] uF-~t6)=IJbH>wЋ6K4Я9Pdᢍr\Yw ~j|AMښ} Ha̅3KN̰2 璏%.ʡp[ 1 gp9F!ȕ /V> +? _h_kp(ggsx})O//?_Cuy>Zag4B9>NXhP?'[ L:_'=1Lg1]D~?;dyP ]||B7;ɦ%89>9B0 DQ/Npd3<DDEx P?<>q>I_|J8%S_FL='//Oa3@ .[ϧq.4Ǐs/03|w@ "H'?<8 K# `GEOIɀIxg//Tꈮym}6u頯fԆ|N\Gw9AAO(=zg=EwӃ LߋNQ;ƅ"fk F#9h+~h9t5 ٮSwUe|B[C=AjM˼a4= _st J- %U;0 |Y蹲'y`?Ҩ ϰsegF]4/”q`"RhCo(,s\g6RDwPߧ$wOs7mHPѤi H`qFfS{F~d;Iv?}>ݿ}|d+FkZ>kGN̎ugdC Tu^yJbAPMAne@g3<#o/{38S[cN2ʅ+!&*װGJb&c|1]Lg} nrh {A7 -}ٿGvw<[pinO?v tMnD?:e O&Z0 3ڀƢҜҢ8\" {KC}NI_OU#׀8\ܠ^k#{Dh%7dUԀnag۵f q 9#+ʇt-pg 4;qQ@ ЯG. El5AִdJ5 6!906mSéz0a]m5ޥOqÅ 8١pOak])n6(bɖ ~vJ6UZa$5I&?C0WDTH ]C$6.hr? s (EGs> 4˲b '#m v;kȰ1fhb`q2iŌ XQ[ mPKrI6CwμVy!t)n}KXJRI~Q4;XN)  `!ʑN so*l.N8W\*$A(A4U6uC's@VCՔ/ Kۧutyr@#ܾh`74djfoƄs !9|?XhR VܦPfY0U7^M%9gtV|}]>e2|r5umV8mH=?ݗtSEMJj_F2j j5.eqE/+$wI0UA l_16,e\zVLW|~L uY<]s2#W,gwuҗJ`G¾1,tGf4Ԕy.D8˻\/P\s>UE5G?u` JAH<*г5q;.bb2MuXA 30kt ҄ aL7ϵ? wO9vh>|KhNd~CIe5+_ }^]ߖs Um+"E$blQcGy97}&4x,-e^Y(EEs[ͼM1/$!<؆ܒq?Ok$1efͼ QhB A+$ J%9A(th<L ұ}D=W|wjljsi;8A>%8Trrx'o \2k(\'ֶB8I ttr0-l6_XAPb̘΂BoQϘK"CKh>zQ'=E'EBGJi%rx?ѫhth"YB#KؙcY ,qă-;y'{=ꊚ_PPWVd0 ijXlUO,(j)]Άaa\@4wżd-0áB$:],F= zg9 F8ثPU}ƪWnjM~EE/5%I%gr2Hh9m{U~tj^אKu4;cgWU.#Ձ@?*0EYaG9Gxl&X.LEDM-JJ;B]v-L~}Uw'egW}o׉ 'eYjȍh8^T{FQTLV5O_Z/2:JQ\Zs @/= HuIY$9.7db~6,7I͸ ho}Q>>@1蚵 M/)>O<$ A9cD-ތhNqS]Z 4|9%:D -62,s-$@*HmX2HRA8[c6`-;noqYJ?N[e/*hX Xy-Yp'XKHǁ1D~'95h3eln+ _J!:^bRJ?v'?|LežeN*h?);8\n5N\#$ײBRX۴R(,Sľ|*d>+xXzju |FrJ@z: 5Ez"hg$4Ԟg]i\cqF YK=Q: W IxFJC}%%mq4le<^dQ+l DI&gL[9r= Vx^xV1ŁRR!wᇄ3Z0mN>+X"W>\Sz{rw3͜Y-%] 2)e[r6]kI0kƖY4ue.E$+ZcUX::̀Ĕ#c4TrOVy˦UumW.\)-Gnrݚeb &Wvfi7Ă" y%GV+XsX#gf%G._Y f-q1ǿ1v&Ltk:7ʳZ\1RٶɌYZSV6Z讑H[6ثZjU- k(|>Ir٤1uJYm \kQih-QfcZQfq"mFBW5Cx #.O.OOC=k:K7)HXBJ[33TϖZ3U (pD>#&εe^e(13eSngUV0h3#0k,I$K ^Tii"Ĭzo=㵑)cxĄ耉y^}Sfĥw[2_v,@u._4\R V4s3ޱz#ٍv4lcaZ<64ỌZh--C<ʰ xȘ1 w0s62S5Bhxp8F} 8WlerE{QS``.tR Ds6AIFV8%< RqJ.00>KcԆwNZC1ͼ2bZ{&t0>"  fCaNpvD_V&pz~-#*%ž&|i`n @Kt)v8&[]J1ppb/f1:N>=?crT"Udt=mq8-r撸S1b_C΢*s=Ͱ2 9oJ.+N QTJ"$P Cw8\dSl( R&!()B#M\ROdee)m%6u@ } .jMr4ϧuS6b@pCNVC/_ώOOL$4p; OS7Kc0.,-}Ƶzץ字 ǐӲ7f3p[b8KVeb-\코w^%W>RI!A`jز1W!YRC1A.Lt ^KF{%YVsoy<8,mKF}&+_"Űb;$߁C]f2 :&1epĒh@ÀLY!+͡Ww,?'$֤8. %݉?R #_x0 1\e qS=?J+w##'D+V-AbUY!U֛^[$T&'e9+?/>ὲw:GH~ʍf/ύo:ra@-ފG냃02Mp军ѕCGL LܱG5.1v#aY : ;K7ttRgwBh(Mc፫(#t)'!H!scLlbx[Z*:mٶ,`yiX/ƞm(:N/l>@Z\$ J}=ɮ¬(4:/GzcPbFtY@9cvG5AXs5x"8>0z 1}K:WO;k 9 {>g`-@z} ,D\s~{%%;9h G:L4{}4-] K<I {v لb<=7կ]~m\G$|<<:1XgPH!"cBpfZ6kA)S`2kG5@8r @H PBxWe)őY|חݝT>ҕޜ}3,lLt[F:L"8XxH甜KWeG H7zj_?W͏dO> k@.@7ؒQDi>Pbb A`@"3Dlݤ?̞Iқ\tb \vـƺkP0n\JBm[_}2[?]1Ay|2J-]TJOƒ; =|jрlm ږcG=2.tPCM 0% 5e-_%>fΌ>Ϝ`rE/|Bb/7WuX Af}8FL)0P[RզRYDܘ2©j= : [.eNߙ5Ê6F?]FUX "PZ 555f)-dAZd<-ڵ\SI6BpV Q0.%ox% Ћ띍FدnX0!8UbYsBw,'|J3X^cbQK77[c}džM(EoG: tiښb̗@%'&qbu0 stՠ.Ə=꜠ m<T?T!ް]}:?lm?lm?lm?n[Vh7&~~~~~05_aO{[[[>?M7B?lg?lg?lg?3]L7`W.o:򴻚z](W<o<Ϻ̍_sܛfbĤצ%"Ku`^lU?@͛4aYǭ,eƣgLzhfQxJ8Uq }`lNكf:dcD;G2/ʖ*29Ȓ㐶 jI{Z&δ-ぽ w7-EI2/>o(*CFOq&NgNVen>OqMN4I[MGxO= "VH y |_IO1MY {Jq[oc3fJO܏̚8~Ovr|JPfc1*N^.2medDk) :tV)2b5kν കKh{! BsgseGM ZSڞm.͝™Gӷ&75perKo'pyI&ؐMqyB5=orL&ֱ{[b1=oj&ݶxgu78STmH)Ex$_ODll~|xp 4+`bMei1۷+AL<8ܰnB[e\͞zxh8'H~>gX%B24#K8+K]Fz@(YYciVR^VNιepq|_{f RȵY;bA]98Ύ*:MRā`6H%[C9 ~쟝윟}:Λ1&ɺ\)7 owds]cXHzuE1:d0ny4nRVAuWB-M٫TFNQp^ KvK!`m)(_mo%na;5c~2@S -\kС(mfi&l=\b{W:ިg z_Lal\NQI8z&̱k/smbz \r[cTcmm,LW4Aw4ZwKS㲠PruR&]54LS.o! 9*v o`zu4:`jW{]tdj%^d9f^}bz opMei˹>s>'Ҡ k<=>" E{N~X} >{*mlYXR~ޤKkY.'zzm"9FuCCYkrwHtrd)K#-u .X΍ η]>ͨ^ib3 eQrO\+}|TY,.:LckE4js9Zpմm;E/ݞeɉ>%11>6HQD[>P <6v*A?QL~nw\)\W.,#~k !A G`㐵vEoW C 8agu'1(a,jF&T7_$U*!8ʢ0߫2_EH6!і7̍'RVœoZϜ|I,o0@ok晖YWW^Zބԥ֝Zٮos1@~>n.eV`d_诟r'{ ٞ <+L|zMnaҝA|,-3· 9s>+ʸ+i~H,jYsg|4a.iQgL-qI| Ϣ=yĹwE>mB\-)Pm*ˣ\[ WH dߔXT|7/׵HNY]Vd~[nwbK)$rj[+m iB!la,-lCii+ Q\~.ӳ C .)9\,L]HYQ`h#,+IZ.W, ]n_VE% 0Hc)Ԫux!@l'ȠW*|&鴥rm &Kf"{#xx2%2:ѱMPv|מӚD9O)PiE}Ff'Q\ yK3EJJWE~XIͮeekf,i0('gZm$k%βe9٫Le#9,mmg麙L, ,J6&v2(QF{kލdyæ,V#ad' d55p[֚fa/072W8Eגe]ѓVq-b5/F7V-tn{حKaj\c|wlsҕ;Q쩇WK⮼<ai.Jp qLci ӏJ/vkiifgb8[pMh>beQ}%p[wG9(Ax"T3>]R09%N (NVi2F5%NGvC^`)ΒuYZ0k,@3( kuV6,VI|_8٨ʔr0,bMg\oFXfWޔߠl[ ʮbi|pH~QH7X6Ft#6Җ0 Nyӻ%A1v=lc% Qf8+ ?ۿ-J?=N \7qʎ{燱#<啹ZH{8+fVeiADw=2ڮ4R#䞶0 | p@Gm.2UefZorxj zbVc-bmvb D!]*qb5Fկ7U7YUf-Xd5fZY$uH:|meUEG SΊIA'8XwG10[ ]͌4Ĭ+gM넄5 |DvtN F:qzXbZIفfGTd A@ چeZt1)3!Śp5z?7mh hC{ib\ 5rt 4p ̵$2u.6*%Ri$RbjCkI%jQoڑwԲgĬ昧""KPjNAl9[jfLIJ6SvJBSͼ;0$'>Lm=$S'Hfi gyHfn3tf,[3I6MBJU3(wY.m e열iJRrRVlCi--nK^Ɖ{s Ov@†LP)g=zY?a&wd%0k@6DBp%"{㱍.!F A2f}GPw@6ww17FJ%:StWRcjϐo(t֣ },15ueO.ITvLH-Pl MF%@0? ȰOp" )2+Hh$ѯ<\8Dޟ9'l;>)V8}ȂѮ(PFbi+^ŏA)oNŜgC c۶)XۮȊM'GuTٟZ,nKI1滿3H"6~il a03 k=LMֶ="_j3m=ڹc  [w.WHhWcP]Wp[c$3Z6F֐BI8v@Ɛiןym8YW'{_uRʕ=i+zzrlo~%O;@b dhgn혤a#n`5S?@gwޞrCϻ(Rh#y(&n3:KOXH4\vɃ',4=آ+$cjܰX ߛ$}T0x<|x_doH6 Rx QBKTX,=vePNx\zG`F'sii(CM'%5h5Q>=4_j]Qծ\qNIRDB$=ZA?_L3w1~T=iP]8t?BNp M/MqdxذaW} u>P: 6kP2Z'oQ H9k4œG-4w9 g6Jm7js`ɻU 2*CFzY&݋tƷW!':2SPiƼ1G/J17?ӝ98,ܪ ?E(+ |[~x- a'EQҝ!lnJ޲8R8 R)eX/3<ka" 87w ͘b<օKb/F x`o2oOAi CKn*\b#XJFHv)x@aH)H2Q4XV-m+lR͒v-Y laK B1EH,(B- ݷ4lJD gN9e[4iF=tk0Q T#`.4`Ԝȇ 3gсGiD$JɚkH:H2/63dc/TQĔG{b/e GJ<,|pw[bK%뚑֌ByU,8믧v keU-/7Œ{Bq9%)It@Ƚn9G^pBnxS{)BzFAV7DHwp0*8=& &|ܹކo$SZ^rzW2dѬD~4 JxZ-"e썅i  0f=·5Kse"D8'vW(Z0\4९Xt[kRG TI(Si`CnKj*$_edJE!]rl[BI,+gQIx%-UWL&|:2O|dc@ō{GTsR&Ƹ;"O JcN;(ºwTHUspNUSfWz|H>!y<#H2/lܛ؞mt\c"AFg%YgggguWO O%G^e`K)VÂrPe;v.A@.R`ņb+#v!W ǜ27Ee)9%K d <־3׭ΝJo9 92- N%Rn""#lOТDb`VKzU힘o( C9M5ZKɚt1:6Z|#KU/ʰtg _,XyxVo h[ rR VJ¢8Jrņ#]pP1soY+VQlBv*až$Čkz -nZZtcUwBXQ?lN sf!6gf1lf*2t%7wpz(EfAUf_-Ygܺ܃ĜJZ6v,X?/MirGh"D"[>9ŪX\vdAb,D|Q9ڨO+(i|X!olX( rpšk$ʬs( [I6\x1~q=:bFuܡӏ* :gYAuPʹ|qq =my(EZj %1{GյE)ƷܰZGdZDsӾ0OYX0dRM%_B[vW"xjw3aǹzYow͊3r{]>vL@pjU^׋f(R5QY 0$%"H-SsV;Ӛn%w۱utЭ?8W+ќn3֤L-GsEh>9[*)=l]V^͡}{["@|PQz,>PL|(}[zF]1.st^,E'@|臵jК3Oo, R%7g ~% :xw\ qQ׸n8Lb&1Pc|Ԧj _v;~s ;л%@7ǡ,l!2܆7>7/D4Lج{sLJ-k&ΑB*m( ̰|f7bb݁v0e)/ŜqSrBʑ|}"'gAL3-T_sG sG6-ϟ0G h@@Qľ k{5ڽߌ廾qq<~ӽ] %~ruB0ykW>|ƱOWw{{޽͸8a(>M P{et0ߧ>|o F8t ]&//=6_ޛ&ҁ?=owh܅qH@m (Aml z0q8]g fK) L1κW=D7ps}޾ Q;]xp#%SPMsJOI? ~翯x~~ Fܾ_t( 84jcg= s$lОa :oϻo;=Zy QX:8+!a^ItH%P]ƅQŘ:oE6޺(0U5&aۜZ.<ݧ'#'\ ;|t8m5/Fytxd.N` 33( y`ܚ}LxԄtx`>8?{"!<~lZA&v`z.B:Ԛ,GO[(=e=l'z|6Q`fu`H&l,Ud @YK^ 3i?HŒZy!NM} ){>`1W $2)8y*z3o0 ni&X\.PiF0`_ +Wi]庰aopsGҹk]|F5FCdqIs?x6]&ػ^ML=l;AZ=6Ke :v ^XEg_gxфܳ|\,}'!0X?䌄ʐ~ FEj0ձv3f=Jv8JX w\I7?_HM O%Quf}nx^t-X0C 2AM)TF,@p4Y9$0¶¢l<1 3厾hy :{F _AčWUZo:ڤ:h+@xOX* :Ǚj5Cn~p^_b+C~ !}]KzU$ bsZXygA~wZ U WPY/N dgbd,hP\bj, i1Y^R *B/s)Ğn-25D˻[q7x|+S$^/ 5}%7}HĞߜD?ÍpՕY~\tyvb wcGJ (˒ )R Z) "UXedSH5׹TZ̥mPo}iR#h!ixCbp' ^HShSw>kԽqWfMς(G? twcA`S - ҤX‘>>:髒Rj#(\.X%*r\Zw1fߢ%f.UsT`>w "7T*wI"EhO9l(.%펺)~՚u7p62JVnX7i.Bh*TVU^yjԹU~rjZ-lFmʣlJBYBQVJ?S㾡H}pViҠ'- >Hj+%KXBUn@ ӯQ]mPxB`xhZ >2"4Td`1ϒLXhåOYA+b|KN9AWښ/.46L؃_xc]ߋxۻ;exmS^WW >*f ==W`A@GN.4Eg`7QRW= 9L)R$a>9&+Fn\銣E`qZ07DJ8 r+%S#g,e@dGVNI8H Gc _O@VJAvHnZ g55m,=l\\EVw`-=:M`m)r$D*m* ~:+!.0@4YgȺwy)wyAWs-J;L FbD͏AؚbYbij1S+_3 k>elS\|E;ݞ6u;ZHa2OB#v6ۨ 4+kgSr BTWD ~X2v ̍(-KfNg}|X>%B~(Րn!0-pʣI k!FɠIY~Ō_|e|_m[vV!%t[yqO\DM7\j>cPxh"u7I3*ƲlV >Z<껭tx)<[M,ɾjɀ9۠oJ$MJ6|]>C+UcaI,<Dxҿdx&!=yWe!6=3ӦgkJ$d$ h7  hjkp'\çHZڨX;|fg+'dZeՊ};dw 2X%4KԖT8}n a:J$?U'iPi{cj.IVV{1w `I+S |kƵa >qkY Pd4I[wwJK¥SU]s"}_Rf:_)8  qp`Z%$0ʹ;YPtAj%m`P&d'#Ĕ9wi#g*i?%qPH4ۦ /7߆lK}9l55WxN]:;gj t%7KYV9F8{L:_MڈWKS|F陽O! 7S{I'Z=2 (>9^j`NN(S|VZq%dv)I/A|Z$߉PQ(Rdksg>uXVܣt=|~[OGh1E Ik☍iCL E15R Θ#ێmGJ[S'vW0^=Z&(>~zLI#~aoCSg`u_ʋa#I8esتƏgfK M%T#M2t'bF-@ ͛~pq|5J r:͌y6~2/f ,reE7ՕQS(/jP*U4 4_G\U* "viJO1T4O 3s噁:ZeI2$-dT4+b4k1-&LFbі@7\+d 9`tQpAdEcyϕ21 ' EqIed$/뤻UŸ$JؔΧLF)["6fUW ` d`M {T)>G' =$R/r|M H6|&$$Ո?p3fF`ڂJ?AxS6ަ&Oҏ%6bwyO县י8Y)utX<~ nUFj"*Y]_jT5[U.V~մZlV18V:bECҲ¢e- *+V#BŔ h cʸj\4 cjZ~'`ZSFYjK&K'eWX&)ޣ622N!ې@[N!=~O"4c6L;&7 ǔ1I95V$cK'L"oXl*p#|\:>pTqꌶA35Ga۠bkqǭFh\g1 ;סOx~iwi{|:(DKdjBd>2ր ECQq՟[cia6G+cbwٴx^nO:Z𳢨9F]is^Nu_ z+U/W}*Ž:?9k'XSs6211 {Cq[KϏs6—D/h̞e8j.`Ix khsaj;hhB4ͪd!UIAEH*GGU+@*$tKb (yb ɳyZl_K&O-UV";ZUih VQQ(N "HhDJl!!{R졦|!ME$E b$z>Bs1"R_F!2Tt.6kz]fD'J J iX$(=ExՅ"rF"28FF(#DjM)k1{/a'aٰNNf@a# ڀBqIjhAE>xP9MF-Hz,D~RKן K}ؒ-)u=눰kyg2lzB-@(M,CC@{'`c4'm6KpeVO.R|z/w d*$T˘f+ZRC3hp; RݾmVڤgTK=ᐤr@a@ȉvr!$&^%q(7 (UV9>pj4 ~o Ҹ_oפ_Ҟ'ZӘ7=%ŰKքXD A ,(8_ޟ_ y`NΞ3l(vT"w|Qi FULBX X3_]v{ogDu؊`@5}JthO؉z=qE0K2_AvH^ThcgG 2pؚ͙%-eQ`ɒb>.Jھ|?oAwq!毆-{]c15&#Di Bz5^M{B [H.nN 8ņ,PwNɈ5/$G:?B@Ê-A9I<bI^,݄0(pFgԼu7ĽăřD@NI(SRlo2pIGȨ c̰| o3ÒYkYc#k̒Yc#kY#kYkt8Sk:ws_I-%Dk#.m_K_Kvafe-3LևfxSKdPb-$[ l>Q"lI? lM æTs#mkԏ¿Y={%S2Rm%k5ϲTͳ,a"]ơ;n=fJ Ӆ|оs5LJ!ӋwۗEop^{P_cF\đ=]T8}'8'v;fPpǁkJx?ky%Yp!و`5xjԔ/&" Cj+>UwRkCLJ- a@#  .s2 y9 |sgH&ůJsZ6?YU6 T SJ݀bJ),NJ-_7Xo2+jA݄jj܀jՂv@ |/}Q؞QU2kӢ[\$֚\5wM=Χxq7 1uWl,}%W'FA6cY3h/'tĘ˅46փK9֌{gp7yfHY1M#: Qnγ緻|< Ko< 0rYY{K;en+{v);9Єv~Gy:sYծ̐N6'߳F64 ..׸MOxzq3;3ֹ7_`u*z_|1Y-I/5F̪ /#qJ9߀#x^>{0n5X/!^~7iśz[I2!+nVhAj?PUM~  UZZިk8+hG͉ AX,z%xfP"ܬ-:BhRYeD{ AWqV-!mIr/T' ]{وD,wTf-}#*ދʕ!Z,\a^IZv?4jWYy}_1-^N&u"m9~?[X9,V8euMXP`9F_=02Lz}gSTLVPKq{1Y{ M>Yh,ݛ,ܣ(H@->J!~78wX >QxWA `WA 2~$݇1§Os)LsI>U[ g#ɯ:" aYj@y:i|s}~5OȧKFΌ >ysG_MX3 ԋM;t2K]ȇ#'R6K]_LG2}VDAi|`Vp|WiֹM3(#% ϮD32/bOҎG!^"-/75Uayg9cign|վK9;/;S'RV΋_z ?0v^v~#ؾ#D%$<&Я+O懹=2O=30R@^L, W )-+=d&|S4mm=Tڵ&w?,-/K[9ވKUrՆkyVꊭ( xhᇥƠ+BZf})qb;VPLHK6!x@X~Z?6}b`z,\P;\=.}dO'OZZF0hktot42gB n[|glxPEm? ^/{":bW\Yx; k6o'x`af3Ae߬w 7\e k: 67Yd(]5[b8ExBr>l0|D䋑A(nTX;ao-b[DF7Y{F3eKj_MZgϞL֋kqaǵqxTZZ%Օ|qvO,g/D;<ܝqOmϘQt|ob圌Tlˉ5 Tӫ96c ;Uy4cm]a܏ 360o%x(|v>m0}=[ԗ͆sv }MzmKp]+3Vo!)1uTN`F+_ҖMsY(B#EYei3s2&ZLw]IJzry)ވ!:$ν#|  fxy 388u27ձ-h:[EM%W?t-k/Bxzv鵢i_^ &jLCa~=K Ht)NTǘqo~vU=5c7׌yf䤋0&I}Zjn&B!5|N/'k7Y??_3I$ޗ82ij0ec(q %s~ru!JQXKQ "؏~UnÆ;:K=#i  a_' zxI {7I6t&|+I]]h2(3>>!Ni> %qbi" Iy}|"iɣRǕUZSŊ$wĢNHM8WRIUU3b.uQ:rjN(7}q$AE820m) 2ړqt0Db |x07 C`uomPjρk~4&k Q(1a_!'nlwM!S+NtF9 ]<x/8Ime )1~R]5 ~5lWV8a, N] IѲ#NadNlHD$vvt8hiCgLJ~\: `E*ߒ6?Sלye!X/c^B{K}~ﯣ@Y*Ͼ> qf~M356Nnͷfޮ{[pwVCj"qђkg&ZQvfSX5:A>GSxI0jV.*A>0Wf,Eg@~w߭y.teHȅ˛s!oiҜ183˳e' iE io2FTcڱ83~:~zuӬ-">Ԛ]zdp5%a˧$a ~@j'st5#t.$l]wH>˰[tخ.f!4st6c"&QMUwTK*P`8b?n6d/mcH |!'>_rj#J'P/ôT.S)AkXN HClJ>4r?ܤW6ri΍K2cBgG9"$#"%FUdT 'ER\~衄N7N7R%I:ɽa Y-8ZrR-m,;JQZ!LZ!_!NBB&1Ы+1nݒԘQdSZ=k9 *8Η&~ڭznZ|M %>^XݷTCC f4ʭF[tx E3 ~{H0TȞ=8ٳ4ѷQ9͵$,+n)ޢuu<ȇ3n|<<mV" 8D 9I\U9iK( $aıV݁9 *V0/nQҟCS1C п 4#.794g殥;LgʥXUXZj{zK]b}Oآ#K޼h#jV⇀mT[R"Vn}NGQ%2=lF/˻730X9^8QȗWT3}gnuw?w5 }@@ZGlp-KX 'ڵ#VXf "PMI$?o')_~O2j>sn?VN{$Hr I1wFQdMC5bߌr %[8"<0%i5GixT'LNZچSO+.ڮ p!U"k@"(u*vcEo}EMã-KLߗ { 8GZ儼Ρ)NdO А88-L艟Dy ~K&>ޟmRf/JfrRR#6w{ ߑr77h憊!:qshZct _˟4ڎcPC L`8F d\]o;DXAg>ca臢V?q}c9 Xy*~b 6LOwm~Ʋq6hf+-$"M!ir9GwmKRtZA`?#*RPbئ!:Icy|makѲ5n7e9^VHl-z'ec,$K\XH~;>  L̖ y@?d$HJvG0QNjnѵK :HbKE^ܿj*4ڽߌ+X}y{Ks?DioykW3>|OW{{{޽͸8Oa,>M ˺9{}6unGc݇ D gA'lޟwɯvMWv nE.̏c.oۗo8=$PqچV"*ǃu7?9%n u"''8^]}2f—/Qt G\c;ۛe8%28M]-R+ds_WEw4U{D_B{wJbT t{A.$PyQ` uؠ$HL\5޵a`&]"$5v}FZC HU٨#M`lm|*biM1|Ai>|t8m5/Fytxd.Np"SkGFPPw 0i'bKǬ0ZQ˨;lb Њ"#e:sp"ӐMk T=eH"ɚ hg囌Dֳ3`J^ >:6jy֒TsmJQSy{KBڰ;[M ʺcS[ ۫!v4rFUoq㗞 C a%76LI]5$"` $mVl7t|oލxz5)Fq^v/ 1khDql L\/{F謱.],޵ ҵo`i?E[η2GҺ@"m7-)bbHHMrIh\1!D3#00wv}~!M F/'C{ ?u`~:9s0ߡWbS-cd<~DϊjFbLR-iyh; D>(a-f| hpw·azg aqsTa6gWs,|\TDi-Wd;p3q ߭kNܧq@SsιeT' 0;,|f x"/t sAYDt/-Sa@v#9][] Ì$@`Ϩ?@S4G{|? ī~p] L4[Ld4X4,)NBL.b'\pt$\z`cPjOE$-(0;ő7-[&i0o&[xd:bSLu u步»]e: FejTsЈ( Kj ,FVqiiףMR9.Oa)쎠<7H[.(cLeVZȰd9"0bi h%=s33t<<2Y _-4f8 ib sA2]b1ױO"[$tSѻ ^BNC/x| f܋Il'&ӺSseOͱc:s#,0ϨS *{!zzR p)޵^NE.O03nctJ  Y׽4ĥeC1_={)$*BW'[F,c6ZdEwx&dӬqt;GyY颔IT2>*_[1q\$lE$RQ)2YXm0n'{~26WF%K}>f]0FycTL`2V , .`  N\%^gqzv[rg-瞿ό[ؘ.yyǿ5 hqWĈs62%2lRm}4VP'D }c䪮h:_8SJ!,ƍJf.axcV8=:2mkz(8JP)8 2[608 S"`An}\6X)BE$#%h:OhRh46vʬFs$BbVt"[LB<9 ~,)gLUjA`F!+\Ԃ-}V`^,$ <``(Jan֨}Gc5odǵ>nPnJ!luOWQB7Skqzvvv(\gN:he6?;up38?_3>#${;kl4s^({2g'WQAgHa#Sd1:fSܝ>vu 'JY|goC+xl=i΂8j.?Z !ԉc|$dhFBX kEIP#WGg3if=dVYg:6 m(m2Y<>A's:d/dӣl1o÷qI[>i(#Ss=a)`۩=Qh,/E)>M"[~slp}^NMߣ0^4j?%V_L 0ABf[GiVx!#0ϮSǶL=4.Cho!4ੲMcE[OAb, a-'еZ3>Y\V0P2n\E5I.exd+SH!-l_嫘2- "G.t 5v/s_˻zd̞ \s'&$"tҒe6[Tsm0P0-ΕaA@$Hcp +) %p673|F2KSx:I6u _[!GP͠MTnXtB|#=H9ÈxTNц/9)UPQ% !_Oq0KR{ eS @_I?YdTlէ79|%jkPEH ME:KEOY]`DMkMwXXu&& ZSz?:Ѿ 6򶦵ג:>PS33,ƺ¶f6FV#mofŽ:p~_ӟY$*d0Ω9c{1 JND+[Uy W.wV/3?ꈎ*k z ʊm}jӷwY6V+ew4m"T3 iNkO-,2Gϊl):%qG "LEiщ5U}SC!n~`̄dq\&L<7 T b B:yvA:l}xBGc]0KGXi ŃRL!ϏM60v u?@iw5օ 3lczs]G hvN*C͉ϳk\s1k)`D:^|舠%c"~L`_L&l!@B|G; C=Jds[i HHp@v)>k=FHvm/%!P\sjӖF}RjKըZM:Z __Iz].6C(y+e1 ,e[0Zs{9]Tw8aՒw$К~MqSCRxrDrYCXs2o#>br|Y7s:(=^ZWZYQhY a&}_oZ 5a:18<|>—{f!P>f>jB. RIl9x2+i7$ _UъD753)Ql6pM_JIŔjF*ްּy=*9t8AeUCG]xȽp.rE}v /1CjyR)3r"$ *>RcPi i5S' r> 3Vu+ |Wg4;wnVV첂0kJ؂<;E Yep.)0ƱB 1q1+ 4kAtaO O)kt >c?LfYA{k8ƣX{:Yk୹W?N3ՠM:{WHKNs0#U8,% kŠ$}V y;X$YdB$o {ٸ(@TR龨hY蔙@Ղ1b. ȫx`9~ \gT-c&)gJِx c a#*||$Du OGI!X _yx 0}X^g bE E^,2yȞv 3W*1_HoCREhtpd[`e=P>(JղWOZtQKuE"U,T_7ϯQ؅3Q-hgN'|9N#H*|r\* |ԟ_K ̘H"B< ^14ع |X5JX= =c xc^')h@9Դ+yB`AvUGcj5jZ)f'zio~-/dvqq#Q&\n|З1,69*nQ[ѽ`hz˗1uLO,MkBXɓ76\N-u ^Em~v|#KoN10Zᰝމn twk){mMSx1*c:lѱW cԟ1EBN3w5Q68k!]sCh/?QACKRCv?  NdH/t BGu*' 8-H^<Җ}R][q-unsX lo0/3]㻷,]u CՎb kxK]F2J7kդ#N5jAMD@ +Ieyڒ[e B/Aglme?Y6Y[BsSi ӻݩ1d3s@,F`i7FChl 2+rvcz^d\8PM+^MU%)@reX%j)xʘh(vUF11̽ĜtKY~H=<M\)d02#j Yj4M\MOد"er |g=uo}ڜi#Q:d’KZauuu,Nȫ쑢G|9,rz_GQ+FIscd.M|l`6b8nwOq=lSWhB!>eojgE/% h=GTKݘ+|X ^(a| ,,VI;8^p1G (8hP {+x-Wy4j8 e`6=_e8k/QoRʤoSБyz<,f72qW%YRKSY8MHZ^UvW0n]X#?{/URaM@ozPD0I`46NO%^d&ꟿ%ɆfK(<봂'|HHi4s7aa$TkQ8=P!q.=e;J`:t3`Q|9nTb2ɞn  Xx({5iz<# V;W?xhlD㌖]BS7Z_щKPHW&IK\18gB-$=x߄^jcKΞc}cFo EJa ;Ǝt 5 z@+6pTSS5QNz@ESL:E6(wh3@ye>cy\GڮFm/y/}颳BbAJfԗLԤ w>g\{?0_^q+Yvo_W=/o'qJ>>$PO r4JڶK/|% OC7L^)}E/'Y׳uAE.z㜮䰼J.lilZ_B־eXp@no1}+6.9h|J;u = .xmHZUk7P*WZy^IӻZakX ^_*yë OD=Y~)k' '@˾.H6UVjmkږ\yik% Y'öضslsRܓeWE-i%=yO=:VnE/V24Ke'M7o߶(c$U,V\J9hK<Zt>וWZ{ыzD/.qs<},|K;w27q2Iv62w<<+z0m-yj+F<ֺ{SR򗺺<ݷUIvti/2Y`إEX)`e+{;(SX} ER4р v]s,6%$NXzܼM$d>afɢEc%ȟ2D0tnl 5}2+hWxJW|*Wn:f&3#]ݗal^ǂõˈ^yd+y232Y Ɏy).@<_c*@.{wOׯz<}Zr mV :ZXqr,iJ,1l8KFs˛;,?dwF5{eyTױ6> Lhnu۬$Y;T:c9Pߡ Lݮ[>Cv lȈOݪR*2$ lHͪ8_p踃4,RoU`\)K"ΨT-=ݡz!vd;$nR:Vݠ,Z_KVKdw|RwNIϧzߝ &N&Cl[̳Vak+/;VU_- >;[ꮮjUU{'~dW&s TMuߦ0.) ) ) ° (M׵|)1mnnnn7\7uY7uY7uY7uY˺H5V3$Uͮ$+KLfLIq,5BɫW p++c օ nj*D}H ֵȰ`&>S '@*<+ʅZ5Yf UD%[Uˌ`}X >E})/⾘w.)_QOH}CC<уy= .ghe=u\6=ﱾ̻k[3?`/ kk} lS3}Ɉ:j{{=.:KjN+WelVjhTNrw1ChkNN:(tދSX"Vɢ{*(?CU *X ?NN`K/^`vo5#WDJ}̢6k~ȢӬ Z&뼩 kk*ј%C=MGÀ~XgLJo8NTFOBcD34RU=~@iֵ>Rs˿`P*"~b}y_e-oQYT9Vt]PÐ~ p֭ NKTCZςx3Ω0(@)5"1w?UweIDD~ ;ib]$ ++2X DT}T\~aL0ͫ k> JՒg͕7RFRͯCg <c׀Gzw5yk5C)᱇Lz-nP'ɛH\|[䔂/J 0ԣee]h!ʉ.,jzw `1dav #f;~4n&A/Y۶R|-뵵_ Ui%~&.{/z\ 4mZ?/[,BΧGOHZTZ)aJ+b-Tf5oK2 P96p׋)*Kw|znln↲Lm,(Mgњ}OT#DOIFeo\ GQ*7 ۔W֩9[5iuW~*r, uLSUΤ17_i~}TJZK` Vǽ AOo`s^ 1>a@sGN'"VX'51Kn6YQP {Z [FMxS+ެ,w3K#Ef[L:|gK{ḋ#W#/Y0' N<M3}{耊Cg{u=J{T;U?QHjlgm` }fFZ}-)7y5RwwF>nacAFǨL/۠U9nE lj0T^|[VC|GUtm ˈ8N׎u<;o֪J1 Ih*uYi7j !py*)0ƶj Ff*̪?hZVN)0jN%y~֪2VPQaLUi- 'T4yM>WJ Zkә.Gz$u G01*P/QNdtVGONm$Z 99aiZ X9kGJSce /a 's Cy^=̀ݎk8"O.9V> Bc:b#,ES:iZQq]@*LWGvЁjT?k Zy /X}q0*J<\jqZ&HUA]lԑ6záSak\RZ("_YGB` Ž;c_?"M <;2Ǟ@H*MrwBB-vŖ pFY~E; CX*%+תnb hpٖ?NH$ KQ&,bX_<*[wѨ ֒w´=$j8C߮eK +'xʞ C/\J-v4jhA'מ7(ag0$u5(GT-&5eru3 EBK۟u0ORܶf^3.ΨjGglqt68:G;:vtpt>`QG`y7stV$8:rt~  Q -W4DHLh8kFQ0 8{+ M^^w .+1T~OLhasOG5Yxt_p~aM0;U)\x=`rIfu}\0{=;OօGesDg$3 Z`]{(X:1V\O`6y(Pw)?\E+Fa144IŀhNs@h!%V(2vS  E=\Rm ثӧxLDͣp7M+@S6"dԡq*Rl 3\6uq*aX> |4$ ςѳ&irbfEٜԇΊHy&=d^eӼʋϫ á<:,auזHuL);>m$WOh1F YM#B Хm{k(P]07) YLbOKY!K!KfeN0 Q9#-O]t<!p|qQae𸍲f. ߒᡬ{?稲h!W1t@q<pbh\އ!%cg^xp|+ҶV(yʗYT *Wj)1BAq0$}X[6+WZڵ71.Ts?BEhx֯ED3p(z'+?^$$B1j11,ij4L%qE樆sdc7S؄h%˞ ;*}%.~wHy.WW,TfxtmOH!yINsh,O,uk H7;d>&g}iҊw%pړ{rQJ,+Me ǣnOIIڜx?aC}O"X;CezXȈ\AclE D(ڍk, 1mk'Z!r}W."|IP'X9E LFm3FY[hߘKy4FI.!{.Cu_ލ)3SI@;GQͣJsƴfO23ύ;-Tp2S5,Ɩ`ǰ3StgjSRkyh§sI@ Y m-$G?ܿ>e<%' `y"M&Aj I$Hm6 R +9GPX ΘDoR:R7a:'')Ҽԝ V ,uAa\R[0^Sr3ﭜK&k<x" f?di'9 cg"N•ȇ5q)jlcI>>Bh&`!0ӂ`,?R+?"7M<&wUruM5/I9̎ O - B ݎbVtA.!M@ɗLq(zA|Bq/Oś[ K`Q$k2HV#! ]Gyh4ip asUtZ̾I| P˭F ȩ%J+Bذ|^;+ڳ;VE$;gπOg;}<gqEB8ڻ{yr\PO"g8(Jrh´tobԄfeB#P[IJkj>6Ekw]lWN9+"wW+V#w,0L}oD'uCA7E?-I]lqL Vɶjqf^U+z\RҪˡw"̵z/P>N'd|WXM 0LOv(9;9ംI`::vJsQ?W32۷Vc 0=jia&*m ;} OmNoQ.^0G.J]r]h`7.LYڴ{v~8l < zhj$]~.~˄Oc}? كIM@cEX{2ĀsVKדr 1Fw#埄ٺ#LtG& 1H< GtFF%mfK1'5p3$w 5X9\u iT1'&J%c5 d1x#6Hf<:yҙIJj!I@yH}O8(B\Il7khLbNq6̟̚;,msyM6ᗝϞT:nԫ43s@r'h#VG J{DaXiuNEZЪS!-.{U2X!*ݻ@#U` 8 =gN#J~޶W|]o )ɛrwmwW̓lF4fAkgP_Vȱ?$^QNa[H\t#tQZWh DDf kfKE/uO:e82W߭ (ɢ}4[eW%f#wª;ikjKlC5K~i2e?NR@Gen1N 5n0~0}N܎JPyRՓ3n{p9oW6뙶Tu~Q=1@|u>X|MgՖ RQUb`?Xbzje.+.kDR`(͂_Тy$i4Q3~ HecM}4<0~z mriWFC9~;~oڋo.];w|guRۊ>o=sđR|aXyNjHq"D"+U y;" zwW-<{ 绿|G!_P%zg̫%4*1Z B1Via%eX22)eY4^A'Qkmk_jmx&7,.r@vGLsJqVmm (.W5,QVryQ7 ßlZ/SѕVL[ 3q  plumxZCQH5p& 3$YQUP>1ItW^,|͓s~:keknٸez_:]gOS#{@)4AzOZ-Vj! O*Z֮ @ε}z,T:ߖ٫:JI϶깿kaw9f%vv0y05톡ؙj,cmԪOvIO_< ޟ) o?"ay,>zPF*x rEu>(,{ر/iA,}]f.|6 TljS2Ρs"_ +jbR4O\O+G=EcT^*u `&1:!]oeoߎtO@eUetxD-gP-0V̹>y] Ŝ4\IQyhGd0t>SLüyGEbgߒ !s.4,+"ܳLjgR~s k\ٔO)/J--@4= 8kG&UFCW%MCwCK`Q lP[ MUcZniiB;>BxXdDh0jEa)j1 cNT*Բnm\,|wǚ: p69MTO4T<-Gˍ {n__[Z@Q2*>PpFp2`o˘7~Je;Ü . F*?m>lB}뾉tƾuV=z>~o[#>b/Hcę9a~]^sD'.oҺ":d}K.GU`v0b9DqԏS6lERPlٚpܡl? eӣY{3Kٞ7j@G'f.kVʌdm523 NfѬK {dM # K-7eNDCig,# I)cƠ$r@Sͬ8/L Ly t:bs~72q^sG[ݽ^}Xx)܁Q` CeB% D]4tp,U b!e N[esT bgSADͧC5 c"aրkZA,+ȼ b!)\2X!֛dkXA,$Pkk\A,BjMT|SAlŤTT76666Ğ@MZTTTT b b b b b6eLMMUTh>زu*-)| bbߦBQ b QRAl-Ģ߲أGm:gG ^UyHNj^K=،MU[mS Qd<"],|c bcD*-cc|dNƓ f:lY,,l6x֔׷Xs}Zʆ k/{k{**6җ{ bi'XAvǃiqO6qo`s^ 1>a@D;;ȋXtkb9jA?xprOe &; n KTXtjKA՟FYXirWO<6vltF˅k=Lc߻8<+Iz-x+V]^;[nV,QٵkgċIA'E0P9pUX *:.SkKwN^aƯtLA+`~񕕲(Pɻ.'xv' NNg:֡=wSxU#MS|yT$bVq<pbh\އ+!,H,(=mm V Vv{LhdO+_gSh(Ѧ1l >=66q`sC҇Y,'yfĵ71ɤx \&3c^.V 8Oqr2vƄDH6#8=XbXghgu0(wlLfJM#yڮdSaGAHՎkx=}*Emhs'xqֆUgVmDyS!Zإ"iX2UwA>ƚ[yR#^YK6(a05a0o]ZټBY8݁}+651I<ϥfͳfڮ45NjFV+ȢAKL߻q{Nc CR#-fc8?CԲ|0.ɭVEBÚPПܮ=]gi7j ,N&VCZ=VZmVzެUYgmѽuQkW/ >Xu\>Uut(!~Vֶj- cBJ mY8)N5hlVl8Z _1lJ HPE0a.*cNUb $:_0?6>ŸlII:rrX'vA4+MPGJSce /a 's Cy^=̀ݎk8"O.9V> Bc:b@X‹zt<;g-E  ,Dj ?„{wDl،FC}Ϩu zvA 훵&iTP $&BXT@ F0-}DZ ÔT68#7:> =B hrmOHi_YGB` Ž;c?"M (t jRAoU0iZ0^-P$+arRT,YVp^xEH8m)ct?Rz&Ħ%M|QHUzYx N;:|TrQYtžߩ;)q5R2ۥ Uhk3XaIBե+6d-v4 X5 <=/yMo%P:vaHj Q[0LO.4b7)o{t{ LF=Xdp_j`b;v/ -7C.0w Nׯΰ;r2|tD l@^{'&CN+` 0k0; W>""t8:!jlcI΂+No&\bi }1àg x/N3xUL@032Q j\ a)tXMt5@ZŻ%(4a]B@CLǡ#c+&_x6bE/&f K(Cc`E>Lv>u qaI#6'3h%&:*Nufl6߁W,דPt6C0/sWp1W ẈV>aIDs~h\ [- ty.ϩc NdV옍}T9W2(U 1!ĻF| D ZpUcְݬqr0]bNq6̟̚;*ޗ6[IOe' +8ffrqN%Yh\$_ J{v^VZi_4Nu :ΞWz%3.0B s[Y߹ 7qhK[- x =SNJ~IBܶRrл)\m[zw%$3}߽^_5GbPMَE-1ϱ?DX]{^-9!$*I6Euv#iA*2lJhf& g(9~zXoCSY- y ٱe3~,.&Wi϶G=twZL˕?XdVӾ-Yl.q*If[=9}ZӇ]/U9@+͍i W>VɢQ?1sB|Ϳ~XD8Ԗ 2Hϰ] y[_QIL{dXd sHnpK3 1Z8! /f6jFݿA csri7~0e!H$ Q(!WW,Np4~, H (MFPPЎ&ك`[:ꡓ[Wv0ܗ0~@ 6z >`8Xm q!j!riʀ|,b'DT̈́J`wͶ8ôBRy! xD6O~3뺶~l´7^f6|}m`b*w+P,HP'J|q9ivy fg1}=ˏ6[|lY J̛f|̲ҝUVIƟm3xa( &팺=I Vmm؍g[G;mEc-5Wx]bՖWrYm9c$ڲz;}QmyE.=9x-(Z6*oYv.hKk:ba(ekc#H=`KqP\Œ*YL3:=i ⋮Cw'c+buꈄ[]remrXOvI!.yq=㧖) z|BF* &rA>(,뉘)JZku Dm 3~*CMD@V29;r7h:5)Fw)cQgW3 */f^{ 0EHH[72oG'ֲoOmc8봸4ͷH8Ypiar0?GL5.:G'EKDeU;5` 8F,*S08/J- h07:*VIv[o-Jpg4CwCMo6{JO d͜:Ml⮂g#M/QXz:5%Y]$lsCeN'"ayWC[34%eAU7xtF<N^e?q]ELҝaN`Z66Qʑo/)Qc{عNf6N8bI7L"P9h,(RTLĿT)s>D_P:c:Nv=? _S w$HuO 10ﯠE7i]%b;<u?%:gR(nxƑm՟2W -[.;ԃmG42,sz4+u{y|=a!)92xmR oC m'ta!vɴ3lVj"oI)}$R,:K)vfVR@s~*֋s1C9sk8-^?jTqQƛ q;eBaD]4r-5NN{Xzݺ$.ɰc[_m=K0Ch sR8ac6\k |[e6X8n b#L@mlj?=[up2mJ732[{VVnYl6KxQP~1xX565K<,, 3x=w1xK`h/`0n?RX5G\)-cst PN 3 %3e_. Rs*e_o y)il̋"Du/GUjY5e&WS,c^W߱q<^s/Ղ.daDa.k_d{g!zzhobM[/C3 ֝&aA: WO$4wJ}؋?>:GٚQQ?U*:T|:tx+ @\g8`[XktP V3#O@ ȟL!5:y9@mk[v??l: <\C˝`͙7[zN0&rl S/w^ @Oos'IIA#/~.'6"g|=͘VnfRGn`91D P dEI|y.''6!OW;F8 'څr:W޶ &s?l`qi0B٣w-8=(0-ԸuEs.ݶB3mr/xﻣHMq -ډͶA&li3h6ﴻ!qч6_[AG8Ck ƅw,ps[;}|=qpUw/}ۿ'1 w>^F !ȧ݅#Mn~?Zջ3[z ح8d2^7Â_kGFZܱ(;ެ>NH]Q?iG,~}zv&-^ij|*YYi `UNNjZ̄W}Z#'ٟcp7B֥h% /Ia6zf[dRΫZکZdOkݱ.Kں4.Rp',F5hR#E4HybR0v{2pJXAY,R`K C:M,vxhb% lŦGJ7R4P"iZ*yN`y`1Yh|$a1,sO{8=K "%T+ #k /\oT\Ç)Cs(UL,RF(;MD9?ѥi}_VZqB}%*qq:,N&A'(|'(G|+M׌$kazOc'e8YV ;ō0,YcS˴cS{y'ؙQ0 b 4J;""P`t`MMx?puбGx4tdHW@02C8vATtٲJU: N޳g\Q %`"+=٬ST;tWfC>t呅)e1eO=;3(ejr~~r{|t5~b'^KVEz;(h ۝?!H#u<Pq8}׿EG \L8|k@]i-‹"DPBCL_:Xc'l[ ]G:U6g)/ci,QQ7k?yJJ5nn] 0ýDRՂ4xjIT?TYv&0C0qDe,{ '} \1&JbYuyЗ B,;з nG?I03a$PФ4,Wm5Ͻ AQ8"K9j*豖Fcx\kUΛs%TJo # o+fN1Mɿl eG&6SDD$rkA"^RR)™F(}#]),Qe9Ao-u"tʋ- sy4s9˙#L\ڛ52,٧z{)jEKoJz0 $W,?^ (aW^_iwMcZXV5;{콟)3BDMkT$i$9(/_jϟː4%d\_2 ח\p}9r"%C +q}9R<$Le23@ắ u?^ hfH;Z; g@Vi^zg12a}Y 6fѿVPܼt>aYNp٦Ӄ75vHqYbo] K{ cgTס ޅzS-~*C}(0vk.2ꐜ>EMB E2(UF =V2L8AJ Yfo6fQk8&J~({vjƬ}EX$0N+Ɩh󧬒}FxI+9rD M|5x=ʇ?^AǞL|r:27tˆ mo(JO2`m"p3}bx.yh܉8 <%QCۃW׆J<1w?~bCQ0H0aH\O`kHFIHQ)%pҿ4vBHNFAX>>?29Hap}zu#SczydDrBFXzB#o hpO!Z1p6~r8bȷ`ܽHzOAz#V,豞 1`5+x2(Ĩ8\4jv*jEbnPikdEY~tS?V=L:{6)Rh`,I :󏼞t2N4Z< D݀%!Kod5H';/<,oB"ąc`p 卄7I ־>|LIG3)g B:'Zq̱Z3Yf<}(0M4rHl,J_Тdv$8щU5)<9tVJIӀ=f򄲜PG֯Ym_4c 2͊<J$(QRFl ]}fZnVvd }QȔ2gt}d~v7HJi:6kY$M=#Z9=s~9'JeV\G1Hg籯)q9K \0P1i\Hg4#+KCd,jr4)#\2I荀V(\ I{UFa ,# WB_V#щaZUZH""AL\1 ;lkC'hgNjuJ8ނ_gZ_R4rkOH+ì1n|;&R\?V&!2äDZ)s@TڸTq* QQ6eFLdċ~ ҙ5a"qLDI?|)cyT*iYJSJ#I(kDk> )'z[o/vg6ڜf6"f覣[as9Z38t00ˢ 碒6[&GHQbH(49 764j-@|tk<D̆06pcdL6bg"Y:F-d<ͨ9 5E.7$kFWt̕rs:[^^T!ݼbŜNEIOlZ2r)`suO*neIR :elYl"_@M/ 0ݡ%ݼdծ^ݡL7 vQw;?_#$q vT.~k6С],_$gck빬^`>;TWW7~'~ }Vh{X7eJ  NP!_xm Xw[_zX>#]2աhY D}^O'8][Dx"W ?:6{SG*֭^[CP#h.9 9Wbx?"mÚ=El0.糐mx`wE ]ǽ `ʘPOY/c:#Hy?Z9@x3*Vw\j4!c!- EB1-dG\BƲ',\9 In!,8X?kGδs4 73>,9H&@ QL,Es!`F22lvi N]+Hx-+eIbYUR[ F1zm і*R;ޥ)R7NMy2;OӦ(2)V>}GgGvHAo ك3ݐl⎾۸ꗣ9mUE{!ZHN\TM9Cd߂nT|CX!PtYbQw=qdHG|sd 5YOWԚfh|zӹx"/գ :jAl^OqF+ X^%o$axX{*|&U9>30y,i !!&*Kȹգ}'GReAC|ktqnjvڳfB=2Ԏ&h_a FSO;6qsR?4RkJ'7wH7/-hyΜ-z2yN΋jwApx&ת6hMPRmsB;G0B<l%q%,8뤂I:.ID:Dqp9QS涉DV&9r&S3C^C|=F7nϵ[7Uǯу3ؙ\0S'}g#oPDlb*ӅDXX*o[=߽__ByuFO{1]ڧ/3Ėnv#v$1rx.CM>92`Vy<뀓a߻9,;jŇos)eK:XKKb)>bV=RXOq/e{K+_ŽLq/:ŗWS,^S\*ӦjS|*>ŗ)S|LUL˥Le|)SX*.e_lEu/|m/S_|m/S+Rr?'J7c=w=~S[Hx"]Ce8fx 7eB,)a' c{3As8ĖŻ kx^(W;8Cy\mV`06`׸+q;/h x<1,ޗ@ <`lb.~ FFj4XDDPGmM²Af^v^t.mw8]RsbL0N~-:qG]|!+#gĚ#a};ٝ!?3{oB2d TeW#Lx]a=\ƴ|å(OtxR/N0 nt9eTaa\v*z$mʈ>=o}W[Q4-M^o7:JC~#!Nճaw{Xڪ8v`ē%V/򷮿oҹrG+Jy^NW_2@-NݺΨM3^WԝNXFcUjt`xO^¶9Œ[,ggPNsV@.p; ܬaػ@M'l[Z+hf~]ff9SQkmXjR<[G;FkKhje*HSbW6 KgQ>l @(RSS-XZ*լ~6[)nXӹJ>^X8i^/[%="$|f MDf5a% l| eXnl]e]"-4I6l֟-s"Md C=O]ljkT%TkÈ_uwJ +@Э,zd \[t}Em˹DrS6]|(&vy {u1ĆWo*Y>D8g8t)q`@k,zUb)9~_MLm]XH6^r*>^E"(CXD$S,i0<閸ھqr`vSm(9A{/"aNs_ RggTWXNbMrT/6LBP>-ϫr4ZlxIX`1o>HL͵ F eh֒X弚@mӝ}fd1XQjhugc޴'3ҲR\1՘gJQ"";M*ʂ M ;T|%,NꗣqwG\;ǥ&?̢f 0Aafѳykxpc?mQ*\|LXYnY?T*i)]J%S拜fR̚ Xp:a90H].r 6yq@966@!,Ѣ0{8)dfᤞ@!/&1{95cgFv:MA7/v-#z)JdϷߞ(r/CC("W 콢O2̛yP .H&@|+E)` ]i}J>&0뙐j!%[W->~k.f6aEa`#Z.iPމ MXF%/NyQ5k Y=a0`q߀n!|?F?Nõt0O;! } S0k]C*wCh$u<콿F H4iڣ?!J<٣?3_m]2ӥy E~ne¤vߙp:dW0{V^;[Rh0O@G{D] VijW( ¿a/r5pE( #Q:u*'U󪍋ӐoXW5 uēNxH Cꆉ Ɉ_ !n|dw "H] xt:t>J,}_9\4Qn/9jbn=Kxafnxn/M2o svޮ؂28\@R`.2q0& X  d+rTq?nz }=ЁؙKDZ[ }:*Z3/pO"(y]pI!Rv$_.[mkxW7q䍨D8*Z gi_UHSHE9D]n Qn6^ ;E{+c:yG@ &6[>^D^Zc0%M@7!^L^Jx##>|e 3!KN(\( +kݵfwOQ>?Gw`x,4e۞SM'2i`г`]`v9 n{ԟs o=#wËzpv&[bL9bxŽ2nq-!V"9\Ȱ ,k2zz=G`7r;WC*h-йh.NӺ\4mS@X氯6ϰyAxk05qXt f7d onn}.(L^Ut> &xK#.go[xG`aE1ڋ^ hh#gxo-ac0阛ƈ2N[&⏍Xb(E!$Ґ Z(a^2BNwcI!Q}*S 0Tb_L)Jz2$%Sv "$ gݭA}vQ;k֎PN('7(díc ~`|6F>3Z2C-{kg{t8 6a굿V2l^d(^7 V#G{wk('g,rG*-i EԌz~In)ӲX&`s tکoJWr~#d<‡kQqP`Nc8-c. 9BHQৣJ+~ЙЍqzuN*/snݑ=vǨ=sm<>89t:gYb+cɹl@R$f;i.γ;$AA(Khǽ]ÏS䯚_ֿ,W<>6/Gg59ܾ%&XΈo ?;mס]v͘8V6ZLoZu|ڮm*LQ?e+quޭӳC '˨ j=:ך1tl̶"\dY.ɽŒ~tج zi#7?L*1d] C8+8l.a yM#4 N⨮ir .DQ\!b,M^Y_٘PY3c6+զ[`eYfl-?z9VH/_XEa"v#)rE.А8\g6e^#Y{ϔdbSW#"4rG99x%sV<"(M_:Mz'iGV Tu"P5\ hXYNHBLFSojrMrHN-ȇOcvuۍύj3nv)j*bd!|:;'|(D2,YZ]3ر[]ב鐈X>$1:#b ^JL coN(% ~n830Kcui 1}~H>\L xdHD ls/B ,E~S !TFpG@ tmN飾`7I{진Dގ'TkQ~&`su!XB0rļ_, \t`K"x6zoNzKaΎmL8##*~Tm?f𧴡觪0(h]δ XhmB\KG{|&Di.d E\zR`Y.fuKD%$Y\hfY7;QB̈́!œvb@4iĞ?Fe8,!? a];GJ*_x+:ڠx)P-% ndO'WVqZNNgAeFb>֗1y!0__d4َW#paF:\S=GP&4OU\#MujfURNf7t#7e o&a иg~F[vD)L`'By?N1EtB »\T,?ĴTi 2DO~qɘI;JAtsS!іvw.fnsNfmd}^+h/&lsQ/4^+cz9 qf}b`ezºgm'ӆaģTzH{e;ؒpO_}xe쁴:צwW楎,(c7yQ(ٻ`i"#DB}{[c~<5/2ݮG0s O- 6 S;@n.&ևT,D=vYVzQSCIKީϧj뿡75(s;ܿn5@uc'{v;{R@ev9Jy2fFjӆ˒#0&}1`ZEHttdy5+aP>.ʘwuW?ކ>nUGV X5Cct>00z '?A["G. s xURBF45!JP!rj8 )dF0fff)K<X}_a>LݡZGZn\c%]Ĝ~O3B(ʧh5 6\唎ksӭ|Zָ(-X;_}ݘ95T ؾfZ#߸kmq#'pl}sfiuZREbRWYHZlPHɷ/49eA* ?ѡ>t-:G[[XR(̤e/q5HǤv qi*5ymq^{y0D~iӏGBwjXD⅗)ɑ.xFzۿЈ`zSyS ԲХZ~qnR!hXID;,֣GlLr+">2bksIi{;ݣz}cf&S{zJEi`Fv;GE Xx{,GߠtҰYJX gPRdV*nU9F,ܑ~?%0f pXWHe "4|#qK:]^^D4:F}UD~; 4dh4Ώ6qV~6,EQ&SL ϖ:l`HJa Hm D676e/:KxgA`aCh-o',O@vvV?vv?!V[H|tޯgPO?6jզ~RV̱$U;DD!m{bDh5AeGPlt+Pؤ@CAȄY"r^B:kks6oBLn] AF!w4A"ɷ!2/) R^J4'DF7jQD!I#?<]"]H"!vQ:a\WUp:[xY"1cQQO@7T~ʰߺ<H9 Qp|Fn nyBo;3],SDZ&s+J0 ~V6a>EI,eMB5R2J؁-WӦgvs^= ok-Z)pruɫ\ H_#rRgàww9Bו#/gt\( d1C3lPz&-WJ$b|>>+/YT?{Rb0ĦPI/ Šg8N!9FTme"O^<'9ӘxO5 hdFU8 `d,:c:*ݪIY\A#?TFXl"6rd(m)uXRâ1 & n/Л얗1hX2oMʸ6YA&c c6t`Y: ωTl( ?}dgCwAXX %O^!تr QΑ(f#}Kx XLVY-*V <~D)p7{UŜD՚7}!7sDm1a|lcE DgJf}q!u3ZU98vE5O*zp8:A(mXO5\_;18 hזyg䓶h {bJ LL>t,Em՘T,??6Z>`=8d ^b[G i߲fd὎_]EKZ*'ݗ >ڇLd',; M Ol[^dJ|s_Hsr#;kX26='zqQi2o'#-cxDl[>Gxd0@uc ¥P* 5[eoW$G o8R$2!> me667*I ũzvZF' !'z,}2 EpJýaۆ-jcҤS,1bV;(b0yyIQkV{tB(E6> 3&*`uU9[ MըNYG{Ks~|+4FegtU'_Q p gA\@>QiH*g0„Ԣ >&K^@Qkt5ljODHWΌ(ØS}lްԒsh 7Gk4BNAE˚n]Ai5C;q;] mGکO] WI[Qdo z%y1sUʲNP%ja]᪥ϼC!ѦгkLo>j$^ǎ=w1Ɏ+nNn#_t칞jݟR/ڍI4]ܻ`D}j:;"~\0MyhxRdll ,{qM\Y׌C:;ޖĦ^lUڊO@{4 K(M5ta.Z k^ ӲѧJF^R<,3Nv gGt,}m LצA0]x,aԁ=%g|O88i$@jrޠRt=}Tџ t}Gj7p8¹!R.kL3kN;ۚ9=}HnM`v4fCaF )y.昴ɇrBxyp5 88B[lNܤYF)SC%:5\_vpHwd:SkfBĢxӠ@%l3"o'W囶B[r{YKE V6k6 9/i1p727N~`̈́0-&52cn<O4$;^dwwcQ)I N[ Y0Κkt8 nR]rf(k~EJk!{55V=k$t@!{c1ڤ[bnutG&}TUu_{)~ڮ}B%K9䷔l\&[~m*ibUP9,!k Y *3V/ʬ)dnCLb4?t"sxֿr,#p˖`˝[yՋԨ5О p.O鵬V01Yx7q,%>*6(>MVzN촍^߱-`Ď^ӧbU[GƑ7(۷.N[GGvqe u ŭа:}&13ϥ}4ynVf|ǣf)"w!=Q8ٽ.[;;G/ Ѷ* nc6v Ӌ;u"Ѧ2(+ ޒrK?gq]yY:!T))7bk5ؓV]{d¯?(Oi *!ÑD?zr`zLL$tg-^1j$ŨGPx?t.ㅰ\;KmN9XRL bNs`!m5z[cDŽ),,{ ,gb.Ɲ9Uy/z*-XfdJ& |( /2*kp4SI79I*a@3iƴLOPߋ4x_Y9nVe_u;t(4MPFe$o*o6]NoXYq~1$~,)kDTbע)P3y H b`cA*U=:jTiHX#P݋M#>ru?=T"}$TS|mA+u( 6U0*Q7tфLxIGNŢЄP Bδ@LszMݔf!:KddIZsV켔w (Le頀G]=ҏn]OXj{ЋV.54E ANOΧqIe >>M@x1˙5] '.^o8XTQ=OvE&\Qrg|Ҟ #1cT.Ԧ&H&EZjTtRUcݦԬY޶+5}@xɵYҌ7C^wYd?FieEE%?peM|#.0ueU`05ߡb|CFnS;b5CiFGiUO鸭@Y"ح/0/ JFa(Йj`l1L!1,BXe1%(: h¡1Qbb;Kv Y,ޤji^ dѢܔbxI/hz׸'iLvY&ZfN0SusJ c3x4M[EL%@l !'A%artq:]nm`qD a˾׵H͋LJ#}'4fA,DS)f g^^0{Pu>XZ_:Oqx>t : $W\Jto#R +uޏ̈́,kǕl K=uQN쀨OnٟbfŸw!OMix m(6f 6 4LW?6a׀֛n\L> (WAx'[NcdĸPMr{;iMޔJUA}HmW݂䆢*vuC}Y~n>+~"tPm_+M Eo ,"Mi 0;}X4b[ޚ|B1eAm*&L)a&pEX>lUU͹Z5~` Mٺ7Z̚ ui|bu 7|ܨ {1=]nSJq5pCDtY.9k ;g!)+_XCcF˹yF=. HelO52xl'04ԘI?7LaMe-~c3=;4{SunBve]~~cJ7.f_J(tݞC.zua 9|Xv-tx yfF;9,C:Ea: 9fE*G}'M?LYˁPMʞ d( ,3Xf:L6Yџf,ccHh6PwEC F1YgPk{M_E4˝MjaDO:RP ݘ'= 8b t"=퍌[^0Û621ys SwGv2/fvk'`_+ CȦkcYdX)|\ ?{j]Z87؂Z) ;6=`v<@'9c, Mdy $l6/.>ڇW6ki"aF a!`Paڻn,"m|Xxcr/!gI:5=4ºkB^pڙ8. B]/vYb\Ét 1`>A.ّ٘묆@\Q%y`f؅O52 lA2o,эXl (q&hӋsdwh[D~”u2`*pd g KRd\|I' r_ #J|*Oթ[ezAYcvBA+}l4K#W\dr),ޝ4]>\cʩ0#UGjeYds[kMN3]8Glo[|"s%҂&Jd9M|"G3 j_dj7A@ Z)s,ަ ʽcuod-(әyH#V:PU$ܱ6kBЪYEhPs2>*TyKʛ ^i%pz#W i$eu9c&3{$:VI^d,9[6:F(6جTe.ds)}X XP`8;].'3=amj]Yc(i8!{!a`2DUǠFڟO& v<duƛDzNr'-I2Uw XZK$em7 0Q<j%C1;=3q|v c7{A3 ]kB`rxeÛ"@?(Zt^$DTBjc`Cefl-q t5U htx^X#gl,CՖk>١°[rdA`…(N}̈́eg^ *AAɺЬ v)SQۣh~ ṗ&?ҕ;$)`vZL&fE:*϶4 ~ l$J{c_I.M:8$A,9_dD!.N^NC9MkP.hWsxǭ}?hbjcӘ23LtƏXγv:?I.#sDH88~ K\U G6S?;}AHq(섕OSFIAHOĕđbKJsHO2GlN/ŬIߛw*: r{گrp>0^[}\MhY= ʏjUzÂy{@ƀd*A]5B#'Uϡ *gxV!wBIwBIbm#1,j]Tr.,b \ b84!]rI?J{(*x) Y#rb^91a?# # # W w\IAa3ܭT6$ # XeIěͳzۿ̯> ؞8vB(>aet Bl0w<,RV\[ a\km<8;E;ғc?QdIlx6Bat~M!Jv S_}OH,NsYn1VwT|)׊/qxx^[vO?!y]PA *?7Ά& `PP"M܇&zM z,Hv(aǙ/ cE;3zyW֤  C5 1?o Ug)~@%G#.܉,/J2B.xp }\!yebtDa!_L D.ZbuZ!‹_$x>Ra1]B"S}1Q#eP͔SrNP+bX=Zڸ,)dEMrndۿd!A4ܖx^QmO'сuԽMKNOT3\\g%Q؋G\چ0WUJ4'B`ZX|?bK4NX +,E",8=7q&U95yXjP J9̫]O-%̊>ߟyu!;$E%2?,L2/D (T?×| |PT&s1>EhձLgR" Ͷ^1.;FhUϿ:JO>xarK5/ BX8(0(j{_~rc^BHE|VZjnBymU2"&|;Wtqܽp}Y(-_.@C ˁ+d>]gnVǟPa KGg| LNRXmXm`b< *}(Oˈ:<^9`ө1>śVkE&0tiYx +CN'+"/~]&跰*(r5`; CfS5( a:|F(DQ{N;P'R#>A8p*cNB`exL"R,$$ a2#f<1 )rB}l4"ֿY܍Qe<#HG|(Ȁoj=S/kO1&j!  Ӹ&Q7>dPqJBw|RNU,haSK%Zxb2n I#8jzԲCc6\d,uj%ėݍᄨwhkRy*/e!Ӯl@ SrH"wEĐymyF0mFiq;IԤK&T|a#uu2<ݽ.`# ؀|9l4ĖI높 xWl)k9ΌTףE$1=(ۍr[g(db*ϔøPkX ?5)"Fs2?s^s\|á$lJX0Qp Q`X;eYMJ2G`)h 01%6yڡ=D9V WG$Ke 0Ek׽~E638C-!qVBvpb&Ö!GM|0F^ڬdrv6n2_) ̛^pBlI0CƝD@چ=3d:` ɽǩG44=TC@x3l.bev=b&El>@Z i!9 'ot^E*:Uq Ɣ,"@>8(7hgcZsp&92~fQ+fy^"Ť۲EV7EIŘMwjW-cj@IdXƘQ(K:vaզ1&"t=B+X%-I13ּc{eȘ cN -W@u9cRCN*ˁo 0 cڂ@ &$vhtG딗QC̀֍k b8ظZUe~7цZojuڥI'>ca808{g$M50b H!ę'H& δKOFo8P蝢\f@uXkmas~R ] Z?R\O`&6履\ j<-V6>2{5ٴ崾v?'3iRq ˴VvkM$ 4o6F&SWMeIp,(O~#d\a~(e[3Y,jwoؑa_v1"C dEܺ$n]Yu~o%Z&洽.}<_>]7({fޛ&b}ҽMaYYsl-sl-sf!w8gQx\=̹ܵ*ߑbtֵW+c28t.2"= V4s+K3< L38=:=(ή^P̅[ c@4,ZY})vz9O\3h]{xVg!ON%U!eH*"V&{m_iʾN*H$_MZWqS%@TCN#a\)\]=jT?.p$CvzggmPCX8«_ajFfac݂ =:ZVW+"9aqS;XrGD5+ ȱub¯T&Yn"Vkw;IC8'v';]L\ٙmr1O0񻛄n3'h<=8 #B4S MMW.7J#G&b%q"=IaQy5X~y9e$m dD[o}nw5}˱ww5+7ڥ-9Jc`m~,K|'mKeB[ ܎+[VJi236:,1<꟫ڣ *呻E{\nƦ ,E0JLa3B&R)>0eD.D+P)y e*&Hh_>fN O=9λژ$stxe ξXJBl8-0obvOp S,GbC[9[@x&hI.+q/7cq ӄ"/uΏh3a*VquE636Ӻ<Ё@#t?AHt7%Ж'{7МŒ5 ܩ1v<Cp̔)A5'@ X\"#?F n2.&l(]D\?}. eOޫGGDZtc0@&nn3uhbе>Ҕ,wDOŨi$Wp᭸өqJJwI_q·}Ja` ,ieE[@.G^LpN0w F=5WUPS50͇$LЬGH1`=(Q]![?#d~<(0bivþzⲁnLyEC2EY ^?~뵮ޮ}ޒ˩t2$(H.Ԧ Ml7m `c@Ki1weA$FKd/W?~l?G/dSCJCpP>is ;7_#0$8%=QXspt ؏Q=SW:-~\k{dl@8H1Hrj]5ұ0,4(=j4\A-$ۥ=+SJ15n<(1EYV&<>Ή0|>ғbʮVֽa&8ܽZLQ)2Vqc_Ul802oR!*OEc7g(|G1j)%V1 S襮j[fEpc/vQVgLŪԙ]GQ6KEg_ K ${U1䩪սV=>i*Z]t0ʒ1~!<&cHiJʅа"Lb6w9{6Dgb\H26ڞr,s/kQJXƙY]ym+1-n 40xfA,P$W#ՠUSa0JsBc`SK F0TL#M4}Q̴Ĝ&Mчp]8*xdœN#@OU2GrUU o(b Ϟ )]K'C"9s WRFubZƙ R80,;P&WBS\b0Pn2]wx 0]ս`J;#r,bZε0Εu,T猌Kh1 脑)|JN&b]Nޤ%i 4LH$ݸ>KV` 6a'dwmq^ªG8 PvG`6¦FؖRmx[Vi`Le@kaM6DhrɎn:vU4SB{2>F㥜aTV^2ewr疋7$bȲ;F *? @QZ,hHC)aԴ]2BN7Su>;SkxlD+0  LNKY؄8'E0f2R2 X2lHKB|HĹxJ_)sKuĦ9@ODU5JxҞD9Q* R tB1KŸMm9΂H(F*Ew \`u2jv2fIc }":sv FqU? (XɅE؇޲#KZ憸/Jh`@ա&xq uH*߿B!thC=cW.)Gu:Tjb$`)1{Ib/Ȅܧx89&)t߼և9XK69eogK-5`roT]@>dy)̅n33ke dǖ_:,(?Yc@M¬TEbm}R~^dÊjkM֟?-D֟!?7YydBd"dY @DsAΤcp.a8p~@o9W "bTNytq{ ]陷iPAEPS*x*Gz4p`hGPlq7~٠ և&o y~6[9C00^BZnlOY[;8kc,]Pޕ*6=I_z8cE#=8cU_]=VX0j{gQ(2+_ч+ϟM=Hy~D y(S@)T8"/>L׺wS`7+~&o -L0k*@c%Bn[eom͢fQP3,|uB"E(>at."\D^-w$iƞ־iz U}r<=A 6mҤl?)U/~ۭh`.S/S}y]__+L2p0 Y6\չL(*Hߊ$䛢2~E>tGN/3 Ņl<:j@0I;`F@?~Τ³HD$})pA}Cŷ˻)*)v]6ښwOJc(>͢ߤZ$cjoҀ]:"(ö̧v7ZmxJ/l{ mBȀA+Đ ap e"( aS aS` Ӌ Sؿŏ)i3R҆/v=[HIt1#%GJ&ndlFJF'fd| Z E-AQ|慥(Ti.@Ud "{2΅,瞌\XtOZ.ĺ'-Vm'YiP j`@!wĆ#V/p34' ūK9 Z#80z: e7HIZP *zAM˫& |Л);0ɺ3?b'O9U{F~M'W EĸFF Y_+-dfdjY4_L_ۗ7H;}QE|cV}{eg'p3 Z%v-^\jtkwXN*}ࡻx@y)DkQ(Mt8nH*!δ \Al]\=.o*o*ovreg3gn)Ёnտ10cv2M^(R`lE[N2\yU9웝-ny C38;[Q.D\)U{04F|JCemno0o+"O7{o0~y{ كaV 3⳹ bmooUvv]@bnwݒyR.* 㼹(:%Vt)0ۥ7v]ރ=ͻ0@bhHrF=Ehz^=:\c."OlIǧZDhXo7+k8 xÒ,ZXQ{^/vq]{2xX'mldojߵ(JTbq\<+Vd"SX:voz#P:f]1J?#Ib$@=b@aߋEJY2LJm-d[ QtG5K͙M&}}c*VNoJWQcs_>Іsb*_GQ k|P9b.Mqo벭bX8T'Z Wi٘ R݇{)Lb%/5i1u=6RzZvCj/_4JMɹP^(~ aJk^,016wgMڢO~r,OGBܻ5u>HPsDߕ_4""T$Y{/*BQS/"^(z/MzJx휿 hd ('1f?EJ.SnzV~*Q"T$0ދp{J/żtK`dD#d@O#QPJ/hDelHmmFƶ36یoS57C܌q3vQnf@7##݌u32`7#=xo`ol+{?NI&N H_)wX0No`_yiiClL7;HpFc%*%> kUx[ԉi 3hXzLOmj+'(a{c6t`Xsvkmbs1o,K̉|pkh%؈gt@r~h@ f <^ɻEx *` ]^"@f(YNmu/߹G: ,,,|?mm %jgj35 *RS.%ASMMߦf9>~cCޗ1HT3@bu[ZCc"皇DbݍC2Ū/zcQ_]PPZgd ,%kf |pf h60gtjbb(ZkB6[`;1HE0#-gt];HR?gw0ʳk>^{fiCfڽ,xeKYʳɡzx_I]Rz, "25kp@`Ӷ`,ҕ=%D)ʡ7Ÿڗ=cؚ1|=PXSLrnх?ڍ[T_';NPoK%g 2S`;sppn/U'} +qwD@G,ʸ ix7`;yk( I_˪[7RR*!%p:wcJ-Gfc'hpx^uu%:(8}4ԷGZd`P6D-\ߖflX6 _%|6"%ZS`tN7XĘ~5D&p>s25]Vu>4>G 4Y|݉{[sposͼUUpLԥ*j<3;ARҝؼbqxsF8N]V]@^O?7:.#~UZ"Yi/Fy1أ-6+] Q9}P8ƥɁ/ctxr|Llx=bso?gYQ{f=,4ٚ*9)yʩ^K+MM4ڷ(zH7e~ Z99VZ7vP3t+Ehg0h@`[2ZGڈiVξCHZܰgx{.7D`VJ|k YGRtqo}/09ˎoɸi5| Qt_!I* .!e2 ڊPIM41P a6hE7_>tyA@M~o/ɵZ.ǝ7J*p DZB-J4t9gXL {㽲RvO ص B 30kU3 l5aQ2?J&`bIJC))IOfx/w)X_q[*fC6Je{b8_~BV_K=?i߁_/ Pc|vzk.f ev]ۯ~l`.sB@'M,Vj#`+,CbXR6Y Ÿ<ƈa Ѻ׏oSPl: 7_7x(g1\>I|de{Į3.ĝGϖ;M¬Xu`\QE8Q7Öx1`unm+#To5|ga0jpEڏ[BMj1,%J=z4)E"+u:\G_:]YNGLJ.u}]<_R#ujԭV+U; ZjoHU{k6;n0u@J#_X|̣g/G#ZiGL5̈́/Za+^V}fF~5%&vv?x^}jgU jp(U`{ %/̧ Wi>\>a ;/rswB{]&?^|q{@vbaa4v"y9ۉvQ> /g_ܮcI]SI7vq*+U$ڣڒ]k>P,sAv%Y5&m#mQ VH8+4[͖/TV(],zt^,ZR[>Y$l>KG"2lV"!nm,_dvW"+zt=^ZrH~%{]Rl⵼|ɦD[I>+_d[9z>&x=Vt[iz%鎷|X z+^\o~:kyiBpo\b2)UU,'R*<pc#ՏYI~NQjx昃٘Wg8a{({y9MIn| nAϳ'Iu;\gߧ;Oݍ\D,@η*=8^*#!JHA:C_q^EzMd>Ez?FCFNIXKL5u\.4 [Ɖ, |]\y:Ua@Ez2ʅ–ze"gli{`0Yu\O<)~ 842H'\sT Ԣ4{w⤔=}BʞddD̕[D+PO\@>f uQKQ+ uJJSR8)5 yޯkUۅGVR r/Af$TA$J=aIf>fIfܮ$=H2A֕$?I H2v%VK2cvx [I{pd]I{d$TWl%ɞ$G,$[$Ⱥd&pa=I$J=qIĒ [IK2+Ivo dJ$Ӑdd+9bI1Ex{8+)bO[= og_[{Z+)bO[=Og?[{b^+)bOBvlgfXɱEI;2/IKK2J$H2 YacO\ʱ[v,{aBY 1YUVB 1jXEbjKN%LvH-qX ?&lsFE|"OP霬 !aڒ95Zy-*;9u }Qnh+`FQquObaiӭ9kk _=<_,r$6#B$ g.<!i,BdI'1&K pL|B2.cR|&VQ)/fKGP1 Hl\eؠďA8ޮcnxc ?|] H5MVyH퇐9q\1LGqѥ~m,_+VCe3 ril^/?h W a|W~cy#9r 8;+1~e_.ό?|Dd/¾8?PsreDZ}a>3R9+C.z:wԛ2cO&h)+HCs.zʺ9c]qzº+XCV.zº9_]qz+?Ӱ,X{ X9ufsiW>? ̊/~៦fWc_/~៦fW>ae+F?>ghqV}s'aYqϬάr?s1 o_,gWo ҄ozL(Ͼx>^1+ώOۢ>gCEd~ŵ\[&̶Oo?;J~||^$jHyl{eHYʐ${!/)8k_蟪5S>!+cx}2|YJggtt:;gr]Y싱uM{֖X$?W;&x9\Gɻ,|raxYqy,+4*U_/JJÓ?yZ?'J>`qg.mJsRӬWLsVLq2eωgOŠbKYme+~ȴ&V9lO_zLo׏zPU??kȜ7~j; ߿XzzSW/W&qu>5wPNg0Dcךsl<5F&Rdl~>}sZ`JXcڕNׯQɞ^nku%֥&5Y峣/Ga[D-oe54knj]^]EYنu8jTi]6N[OZlTNQq#V1gIuFѐZ63 ~w~t'z?jE\!q924xC_;aVXfQt> mlO\-咅oJ{ReT,iGT'9BKfڜ:0JYfZ;taS+f;5RFeph7ܫ)` k fm .#pٰ$\6 lTUYVTxJ-+`HH:1&B +$Ew BHOrB>E^'ϡKϨ 1R4uЁܢh<=-Qƌ@8ǜm١7m $ +_ ,G|ywK/#_™_#,zBY[ 5\R?HexU'{y)|8Y)3q ϐ6&@L8h s TϏ6LP,#;&GeQ12]jvծawQvڳ޵VrZ񀉉-E.WޗVM3[n vϓnywj%턟'tK%?Oͱ ;IG5ϓpsՔKy?9ҽ]rvծʷVݕG ڕkzW5׮D&sUbczrRRij,z3)փX܇EB=iX܇g]FE Y&c ǘkml2wfxdd[jIelx֚ꮮ{UWwi(i1INȜM6FMBIexH<{r<ћbF2k4ћ2kY0ˬY7F7̼uU4VB~IM4jDEP-E&rVjYT_vKM4٭js̓E8$)`%1S-E$\skjɭ+pYd2 7,2 Y0,YSeo!~oW\fk)N+=orgE;eޯ$ɝ5a&wڄaI9;kQMƒs&we2EYR|Ϟ#SeX `O%DNx&',{4ejb#|LS`!fs#NȰ&1q s` s`jOIx xT *a*x0ۙd83)V3(hUB$H ALiQ PmNxZujfn3s?/n1.&0Yh zMm `ؒx@p(ar-J֦)G_Tm:FGᐔE ]eEoxu#g@qMb:#ݚl>8.-J7(*4'V)L)x!4JD @&l}6;qS,#{xP3}c]"JLiFYeM9[S|3!Ix9LlIa*@WE8B,fRϏb!|3:8Le۔TNeX.ҳV*R73{`!xtq1cuK6y~k &NW'M,b`Tzpvߥ?ⴣ.!y9n;;=sWxK͔għС(uIUDbx5JN:2f.D"g\l`dGl0xd<,d$G\͔%9J,ih[dXNY3pyzTRT;+SeԫWYKXe$c5SZʚwe-{d J G ߼$(3 Q$Ùd^8Q2e4d\=͸͸͸͸Zf3GWWWsWl3RѶ#î?]YT :?eVǁ9gg"~mJ Kyy^ʛoq)DGd l56ݛBH>Bwx1"$!|L$'!xTT-4#yY,HoC%Q.dj.ldp@BEa 򣂳7TI=3 Dcj_HrE!I]8CFw#"P +3oL`y Mh\ RtEb$IqueG"<^qY>rY\K',EV'J}x b^6F1G2a.4&'6_Z+ֆsxxx+{#o :ɳ Ao,rMybJ=ELs]}MR'+u/^t O;5lG^/jεIcvO;_؆R`9}7WхAĭn6i9K5mMmh_:9n7kνCCxW} 1ku>z@]M{#|M1_];ۚVi[@Z89;=9wZ' ~p:l;va`ʠ^9_?yS)ԃ*L'N-`ڝYoh6n կM |:HW~I;0 v$WOc?~michG[5 p?0ukc`e{%Ft`{f{}޼Bjs\: v4];7`>: u^KC#|̱SՌ^/xړվ׆mnYQ zr{u8h`c,KMWse%&oN%COQdwW}UzSs2ӍOD֕mkŨ8M%5szl6,yݚM}(Ggg-0ϗ[P4*]l.Vmmm܆SnսVob>AL~=;7m'[Om4CÝ _!Y4Dnj3&4;??Ho͚$,m~TgRri݊t^ӗ:3g~禂) ;#‹GdRdL~T⦤xoH&:M[NyB:bᨾ` (d Jq%PA彿)ZX&ʕ|$~V2))[ Gw7a&[mHZ'EV*CYK{ LS c2RJߜ:GQ ;;l( 6ξOdYǘJmyH֦[~iQ{9•@sUn 3#("Jc<6m¡@_-1%Z 螼Ry;@PZBKq+ >/@9uiBSol|bA3Lwc3+n/UBWw1Ԯ@5wsq>ό2I__4`ؤGU !"PXLEMe?} &204LN߈3th#ّBG4 开 ,2}ު7.rWAZǭN.ѤgEl[}gAo1P >S_Ī=|U1?g1Uu>9QS"0l[HI㔻6".Myik=є&)ϵ]1ǎ~gW#,G [~w2UŊ)?l.R@hpU$/`E@ΕuMYF^j)+6~rcXgH_vÄQ`TlV5 yyՋ|)k䃽swե19sQeyTq,Vlj{S)}c_ ͡J[̕N;S`͏ݨ)`2ZcVSMm%8vߤ Ÿ)0Z mfkQ#~OF}Z.s>X`yHGF*pE D~_2 `>+4d_mmt@2ܧ|5B u:wvOeygޚFY=ݠfGOD t;}c4ENE:3m/+85M޽18G=mgWٕk= e7S_HUG-ڥ+]JEw?MwUBRv+]vݛ9֎0׎#+vD(q#@%Uv2O*.N‚V+hi|hMjauZe$}Βr$̲jZXEk{Oh((pY݉;C~[dxo8v45oPe<[;Eуo1;CQ32:A,#<5M{VZUθR: 1v<Og PftB6w:n^6a:STz~3ᅇ)tt\ +MVD)1'օS(@Dgۻ73ۜ !SX;%oR)rdkVy?*I yi<͒J[QAvyxjBS7Lp3SH@<CMUÙR5._aҙ1VMOiVe[B~S]%y$dHώffKV8x*2 )2gIU*N:şN+[mj:SʟO}Y2{ZfO]NNΎzT?h7̾N4.sOM|[|?p(r闦h{ zw.E~Vȵ.pno_ix ҥF&^Mտ.s7J(OtrSR3TՂ;S K%CWUTW)Zp4jw}ю#.˳ RG+,|ղqP^=T4Vk6jk '뙫ֲ 3**uWje [39,z`駘Œ_p3dA*3YxhUւgVe=یVP(ZeFkz &n'(wQ]O)tqY*A!.Wi `=Çyz"RW2+=P4uv,^?dL>0'5Ɵd&%r59ў)HKXD]~ɳrGPwP]< qId1j^O@e$Et?Go,<ȳr:<.aB1c 'l?Dnǥk+XO@McEt0AW,k!jʳr-f0?\>Zђ?[Y\,)Jo I-}ؽbǹ} qA_/jd}v8V hyAWCܢE0Y&~^ NdƇT|SpOMy M!醼=Qi@x~bco7vko_3rGff& cBYR?m~}9kZS]㺓ꬣi6P[7Hߙ<㡥u~6t<q;޽Y[o82%2MMOkԻ&pU&n(ѫd%Ef%I}[$W@l5G`#uK m qp͂ǐ3Ӆ2QC}f0BŧU8khd^ A_:b}!=.Y{I1ש~{sw>hCG V M p']^VF-8'ͪuA}_ T'!2sl<@K?wBr`t=GGĹݫªGA޵M>9c^vAF!xz2 5>{獍Kytߢ\Ofnɥ9ߣ4Wf <}ewsiuР[03wYHҷHDWCR˜9#f:ވQ}]=%48Ҋ{dUUudp3 ^GrinGٸTxьbfz&[t3~\ nʡUoM $_ʲDɣ'KDo3b3&ْr0d&gT3]N^O-/O d C ꍓ}Iy\x'neM/5~HO/kxӠq0*.)G@9h5ZNA/a4mX"<0+Q~e'B,_tFGn?QX}m丩T4Еa9@vwi65ブ3} qEI$x8v,EYCŹk}}<_!u0ܟM yA :ƽ9*H>,\ܾN:M[xbtBJS Ӵ z'!<&uEER7@X>592kkh.*pDoL`:eEP?/~^ Ndؽ6,qLW0`R]yJwb#}VMq_T0^~L֫W^BL)m+v] =}fM9nb-V&J5͢DÊ۫tWq12ّaMXf ?s9XxV 5 lz3sCUYpc?y}nb7` l+Y1Msu'&;#3h =VIG\誼:riFy 3?DC|9`F$ dT|`Hs2-u4PQ} S rW}܎oqeCB_y@lvph[or?\ژew!\C.X2PEaP12I; >-D]jތ9PTtHL2 -Pg PH>J{:WILM")03϶OB Y{p#,Wcl cI^YmSxqeSli^|+tcʵ;nk֗f9߽7;g<.ڵlΧ;=xYsbAc s=hARsI(¯#W'y> DM%."uGw}!8΄$hw-D"_9s% 4qR|ő^x >$["nكEǷ 4̳ 1 Lwv&@R4ĈQ n1;tXVNYA< ǍfKkƣv U7zL97~̋L!|xڌ@I,ETfnr@nhXkt1fiQY֝TVB֪t^: O%3N1Z]RRhQ/6`t!nj\ʰr @a0xdXt`2OJ <\}( GOCƴwNe~[,Ӎpվ ?l'݅Iq 8!j5pW\6XLm[b^G`N85tk<>J^Ex@t4e٦hOiJ)+_BݹoLb".Yc>n4R5oUœaw6|,%ִ4nUAmt\E ٩&"< u=GA \ +u:B1XrC<)>cHs7yͽ[dKnr^HV9~(Z:,l:sAJxͼT%"INC)apnļیyuF{YR$$FU[C|;1,V AZSs'̛ƣΚO]xaVȥ=Y[ +sdIb84ՒF^0}ŝ7&3McAyu@$A @ ~6i;4fY1]Z ̯RSL?>6mgi({sF"9f ~g~ʜLjT)-L3ŝUcUvґq 58  c"_ u z.+WF-㍝!(kGki?ε6IicB~yOlYmd`iNE߸Gk^yeZp/~n]>TCSY3/q#EV|k]L!  N%yө@~w/d񩮷[_so+ͷC~Hs+g%=!JG ſٷX|Ey/]]!)߯&E=`. 3BlewkSB;O{EmD1&쌽O4li4f-r_З0(D" 줵>i4.xpo΍;a?= a<|B'jht&A \2*\ʀ?-i꬐$ѻd&܆tlSXje;;쵌;Z@iG?A.SA߆]lZ[#6CL2 vwqk|^: 8&{D:+1wb(κa]u!LF5!a]U8x+,LdЙ HhM^Xk`'ڕC1c1o on2-{3M!  =Rȯ9J(bvAmHU}Sb5:LѦ}zsR)˶UsEHii+t[y-F߫h?ZKupQVuX=${R "F;_WkC ?Ԣ:?#}pLj9ãV w"'9UFK*Zړd(-4ptOjj?зӷ&fXHGHb'B}T[X}[q}yjj #E醶[Bp qI[lݝ?vTt6 }V`]@!K%;Ԓqbu8Ql#SMq]gX-枥\u>rlb6 ͨOo'rχht : XW\%aFS9ʛDq{U%S˨ٟ$SkRb!ngzi[+Hӡ dAƇLMUبoә3$|˶Z>x܉⚽#[W :[8uͮe4eWGq3` ޖԵƕK+y]Ɵ`f@$54Ҳ,eI_ǭq` D<;g0t\0# Udt$"%R,Qb驖FŔD O !\V$_`},O0Ʊ”tr P~u5fu I5*.HLB)Z4Hn:6(M19*i!܆E)i^b^[ps?aG`\vX`rw=Z6ѹrY^uGdzSD(oz7W5 0'Z>c.(1faܰP HAJy/;Aj!~S c푮xհG=v#{8D}:;9?K( gGS1kfQ|`=tÒ8Rп^٩Y7r{`A';^{^Ɉ2<xޜsmn!nKVVn>uN*d8ksccި9h;zCT\ran|5l#Eu㎪Ƌ/edb`V=4XÚF"8 W%C' +GVZVdtNfHXDCm8V3.Ƶj-ztƙړ ȤWqFWzf{}/ʿ3knޛ +;qݰzRXdr]ef@P3)`t*apZIXP 8xkōT EvhƲWږM7ލUbW%w/;@i#2Kki߃ pkr#$8x>FkmVBJ}ӽD L(C0t!.@+Svg7j?OTENрVZ@UXOҁ)LpZڽO 3` i0Ӄ|byXc7z%xP!S;B(nC2[I%˱}O)|Pr"/Iϖ8~W}SOǎ1VU+}2GN,W",tcHdHc`FWx) <@^%f#)m0x*F/Xs|9Է*> \hӘO[_umsmMloM&{h戝Mbc8BKpV=ǰ7Kh_r`㵖?^Ԏ[uxe%z58>Ms¿fspbwQhW+3pH'x8vSY=RY-eąQ V2O.)Æ(x]c8r|Ο5;~9qͅ)! #ΛӳVS?M 89>h7;,V!mLLCO J$v3}P>hgXoҹó P̀dg?>b|^l.DcD_>|nn9tR|pßUF| Zc@;::?Ș1%۟q*Oq8WA"i?o5A>epy5~ ui~w'0 }~)i'myY:~ ,Hj ܄ !u_>`3F[VZwN'PY"/A''tsdO 2y8CMWCa~= ʠ?T.FGgon]s%00 ߫LZxٻ89;SjW;u>h0IFCVVVWSH(ϑ)]}dQ7\G$XYY YYɋ|*cZGrZOZƞT79;Y?9C93fq))p* *r+\,,q--w.K ѽ,ʿ,Lbrn*ɜ, hʮ'߿z ئ7 ~m^O?2g}J˯I}J/M7Y눴%{?nkK^[LKp{Z:XM/Y.LDs#8Uרwͳ}U{XC{P%R~lAjk~>6?>W:OV^y^* T\lmlnn>\[ 2E+?olqzI-`&=?aw-V1;m{׈;Z  :u,G6LCicEw.:јUDNۯwoe~0jbE}d8ݿ`"{c }a|Uf?>KXt-#tqSwSx89<v:Ёxjz⠎CE{n^>o<֊(워ʗp"\Lz~9|W[  U߃ 'v#atjwH6a:D}<2AٓSsN^i-A;G^ȯ[lBЙ'K?r`Ll(N&QrL\zt|U :2;*MO~=!vWX0ΈBj"L(Փ299q!3oAI;mvij8l'}HYCɭsE]/:j  RSSi J#@Ax-07Uˬr[ ~9ҚDemN0݊6^D͹gkߢ3A-u>z@]M{#SG^7馦;]Lu7Crvzr/AV]cX,2RƸd+[.e8)GunN5~Dկٶ/}5ǟH\#KI24jB S{ %ՒgdOi뇟N`FGz S' )ږQFAzDC 4n6#"ً@M+Em)p1SA;-#:q!Kc a_F(3OiyP!VMsk*&&5yMttN.C t%9"ܚ/mw&X 0ৢ/1h1@<r5dhuc) ) Rɗ^o[1)S L}_GgἩ5gXJd">,0.g1Ja)9K״2ۖ!Hj̑XAc˚2Qר#Y6_ڗVQx>iߵN50(7}<g5XT9\<>ѿϨ4Zԟ"%Na븉HU;tY~-qTk.B1//q? <}6dviޙlu==ۋ=hT8jbw#!siXITq8+ʅR~tgicG̐Yxx1I htc؏ TP `+^Aۀ"iA\h8lUQq+´N\d 50 `ڻK:/X!?dx(G!qVPe=P*ӞYzagx7˽&6U(#q{Av>B6⋇ᏞOGX 4!C&FפEW+ې$ͽoxTȮB8i<^fj\}>iw@~mv3//weÓbSV[ ޷}T˶;wX.ɪ xXWJ(-1[I$:K7z=}@hȥ;?X5 GBFv7 \ܨɓ,``0z|xB ؈?#Gb]ԃF͉s`gl)y$^TLcfz) x 3#ƒCw4Ǐ'h QY2/y1$YޕŇel*h2 a36!ffX#2, Z$Y A˺9 +؀ai@ހBļ)_|9i޶R4^4ΚTC*|P I)$EH(’;?f'> ɸh6o9sEbΓA8Bّbr#)8(0ip _O \0'Q6Sʏ8zŧGTzxZ5DO*T2?)mZ{ Le54Tc4-(|u3AKT扗 j/;؟s$~BeZST4F| <7RLC*$ᥱqa|1Pć3aŻ:+ tojC(5]~A-Owyȏڛ\ZLH]%ʚ*hH7Wte8@1B%%c|5 \%q`},kj6&W'pW1BHgy%r"|gEʗ8`e ܪj ʓf,U;WB&!]V<} /Sߌ .Or7:,,gERP=@eQ'NJG &+P #"%Yv#t7e_Ud?t@KXoT^T(tdOvC)pʁcG U[Dl<(H?P͌g4%Y #Q "ًf"8ACQEE~mI-D9ӭj_>m-H&:@aaϥ) ,xh3&NPp~2£\;w6c*y(Febc#<ۙLr䶆a|)Gό@Vy&Aγ0Qם;/캳 #TL ^h.aUxASI{T14g!VN|f744\ꅊr{&ksY ѢzU{hBeE(wFq ]_mQ& Hxn{itSFx`mMӟfoNcU|bVKem53u}iw𹉥:V݉.h4x)Fvzw*ImPϰތ/w| =3n߉|g#~h{wR|&ZdM0[kkn|yɌ(%?"7`ve ?}(݊D$wbB`'O w$'DEs }"cLb:*1o'o$R۟")f;i.ދa͠3XL~$X]fH>CrTO}Ը̆$!Zxes${\@ XV(#ۇ&V\LWMvLCj鷳xnA|*{S~6 ;]fF}-62HC KHE%3$ËU{R7 p| a$EfFJD6!V{{{PPF])sca4!,zT#xC4{fWid/&Wt&û1놳Ѱps2khތ  #{G7 SG!&nX>:>6寴>v2ya,IfOFnc~5GOmL?|?J Nؙ&<AOFzQP $JZ~H;]?S"/ h _iJw+I P bHM5>'XY%R&ei \@9t 00R_̻^7`%a(ęD4a,>SJ]2O;4GkL Bऍa#lBjۡ+yvgi϶1n6n~ Gqe:p5BI8Kr{'VT]_E8֍^/\>?1uaV~Xy*\J:!ږ+JKB|>;@n}:g8)rթ$@eRlشYZQq[Qs5:V#(Ť &'u*9=i>0U).%r`i]!nNH>"E/;gC)k  Z̗bwz`x5l3 tڋW p&.=%P <gy|~mK_sY$k\ GS5''ۼou l>xlRǬ*3Ca93MˠZ ۰| q7?m.fWAM\4fd/jգz%UiKqyFdOn4͑OxMQ(ʭ1o.L;q2p0<.1uC7. Ӛ?Cn#ݣËѼ{w]ND:hr/ XUF䢂˪;y2{ ^ CCX?up!FjhWϨg OC'kiLGɰO J2R^ U(oexx*mBl7`XʂbxDI)]c@+rF(|WC5OOX:4ZW{9OO5ĝi53́iaG3ibKM@ČojԩT:38a**^pm\߭ kp'A:EY#Ld6E!0Vlh&r QtJXT#](Zg15D!s(2: 1Y:Z eܚ+D_e>(0k7š #<\m3HYl(;a@"7XLeZqpؗiũ'#LLU8uT  4+ېhqٓ) Ea٤T^wL ;v D+ڸjvgqqwVwWW L$U?`2ZCC=Ґ.Ί4fAțC^=b+FG{=L'$NHqKn2smZVCr w B(PL3n:'ͯi' Aѝ!RB3<ˤ?Sw 43"'IcZkB˨*kHxK|8i/ h:-Se 4=91ү:LBf1}d [V͇ 5Bh$S!\IL^9L1=2æwFIb|oo#.O'uo@vo|]?uiIu)$K/$tDZv^$7 i.CU֢v'x 6 Wr݊L/DLA'e=h'`xLJ1] m|g #wɠ^6ifø_M:ט5,L ǰ?Ł?6A%7ԛit=Nz6>Z}nY  c ™.B5Bxavd$7Zμ5*-ZtaK;5y7wvweJ<.{04z8% mx#+tuQDgtJV\pYHc0xS܀:`1v[T^8gDp=XROpѿ5` 0Aū] mxR< aVzF񚶾2r@5m5{\¾gt|ֵ1VGg츠p5fbVUo}b/ւul,NZ9x ѡdIEJ}&SiXC('DplgÎP 5ʋ5vO$Fd#ɍlZ hbJ|Ч}Mx?zl  WN2*XV5Rr#J]L>ZxzBF(x2pYgחKLӨ%X<.TJH++ee7_[J4i]3TG~0B b"ʉYU]IAW>yc?}Ok.A'͌\k: ʽ"FRd{jWe.SQkGv_ˑ4l5z! ]WZ| J-2`"ޞ㢃+utٙAX?]`>0v`ݠU)q6Zß˵59vl}KtNBn8ݐмwlCA`)&0 -̃`XǍt]t'[NDuP}>ګl87?$wגf>-0ł6e>P'ZF[Fw/63;*+KWm;> vݣ*8o%ʌ#~)8ÆH"52ҐJ^bU*D?/"Id YAH֕S&!?2{*leEywVRxUj2] '<BH-bFD!"Y27A$rhG!vM=+vi"/'7O5т۳wx(xxC&}Kx:o U"j1/!°PTvkϤRlJYz3O%*rg/3kЃQeIҀ'͏矨owRtV!fX4z$1wr j]̈́2`E0+^47,V|gyhD_i WypLTۦ3-Kֻ9&,>gE. *? GL yrR"hT.kwq4@:q9-H - 99<sdYftLfk>p,3_?_G Y~3]݊m|_~E>h?7|"F^<`*< ;Vp&/ 6Ph;~)ýT.;eTMhѕpD0UO'g-F ([zPq!CT<F>+%̃C_ꧧ1%|T2{!/(/'DU-K))b)—<==Mo|I-Q G99/JK|Z`\uO>Sylcf,z[XE_w 4)zp⏧q":Ri*)f1LցyV ZTR~Hu6wT^Sv#Aަ\D;SoSHl{B% g" ~\Q/z؜v*^5J$]b6T*r<4,BPJ}fW,R,^,u܉Y"n_HUBd-c<)nQXGM#ۢ/BRmG5g>P:\xoC1e/= ~gkpx7fquhKpkK⶙ ǐM np4p}\I6omY _;t/JPXtX &X:Du8dtU]Fݔ\]%[s4Pc҉ef%kC#5p.Ө`7!՗[)G Iz9%Ƒ$;j{Ifr^9:mp؋c]_jM S;\t^}pQCÈs}#=svDO{{|QOV-ty)7d aI0 a$^Q吸xmʀiQzОaݶM\空6{5~Fmװ?~u1c0vz# mk}; ۚv0xEmʁvŹ45>;fi-$LSЧjbEݘ7 /PT,tJ8 P9mUM`.RŻOVE zRzNpFXÈ]9Rs:&dEƫ4'Q>YvB :# 4Z?O<3kWG<ںdǟTRɥ:I$GV.0msO󟴵5,۪5cWע bC}$!{ OO ݃ilY P:o2#6CK> -xmSq-Hk|DQOs:v B2nIgD6<҆ wqF1qH<64q;$3ū~@"0: VG%n>S]cj&y|u.3/ŖI{t7~-s~~y.\'ϖ[ i΋aSLmԞ@?rQ0_ -u )+.}6YؒP|s_τLzcNɖ#X8H(xm en:NY+o^j\uz);WH8bTJU jq}cF觖qp47e*WqT7itlE5o(6 7!W ^C9@V+w'wSd00M~|Jzw]cS^p0,]>@DTf@`|f'픗^OҰTHQ%mbi&6A3e-)9xET.pn@Z:._ںf -STC%n_c-PK}mV-*y _ Eo2|@z;} 7WQ^TjWer,vS'| ڊv0 =36|rn@>!55rmX]쉼5"_άH-S8%a RRf:?"n#-V^F VNN!Q[Ro[Re%&zN *2+?b HJ^Luwֻj&ɁDI ~BkTk?l*g0-b"0hP>5o/|d ގ%ч W}\%:H.ɞ)iWx N *$aPDϒGmqmB! 0:0a StXn霎*ohk}mBt6=f, 6 C`p xp@xt~g7t6D;|*CO<2 ([QwY@yNsD!Xb~wjJD !U7vr槌/"dG.Ɨ/uVqWiKp LE^M9&WEʼn!M\-O)N1ǎyxD!:!qV۰(5bIh񐠚fN130OE/*d KTfxӀM$;2&> { /#G&mVՏ4NTxI~X?,α`W?k|WVSɯzm%hr=g>0n.z Y;&k 6yzZU"|$3/Үz!AbK33 ˹e\aR`lãMrhmPW(" @0kM bdz5sl`28Z`ͧ< 4~71$3rssC*/CG*evozjdZ}jLES*X~CpGr*uU *]_QVwy>@]mUߥPαؾn*Nwsk5@xUxj:z8˱X\$GQq-<)^]2Wm}?,kfL[{1>|w]n2-y@Ʈ_5O]z6|A P"C/y#ZZY2 !?@O80FxS4**%3o$+&ȋ4 LDFa@<<nLE@r72vX|i]V~z[Ziz5GcA!ӗa\mo2\!qT ǧ.jB+{޲=/F;z%`Fh$v<-:vʞOe* 7k\:w:2x4ZI<-D7|pC3zЕ5 Ya=0 MfUB27ncS_DWJW8d7)jG6V"`Dp|>ΞSI쬕? UCiSҴD$LXZI'#-Begj\xYД$ V4#DzxV*ul9Oq}}>PX0euWF>]pP[2 MmV^\cTzЍޒZx1py5&O5H.ϳiZNb:(o6L/(C7ٜÊkY. P^#nlMZlytErJ‚#ŜH_BIX IOeL 6ʜS+VpV᧟* ȵ Gf}{~eWϧ=*D鳚J͐j@a~lI@tE^*O/z*x@OB%X,G}bQ|d 4:Q#7nb@t(Ps()QXkvc1wOyexE܈X.BcJwf D"tSjݕE`jD@BN:ܵ&Xd7cvr-Ve=3O}xQz33cmt < c;R-;¸)0!0O9re2 i5/-L*(Ch!M,aV ]Ro. S˹ k>Ώ67>W^4(0@;q[TqNqqiȁעG\L㶑@$Q Iqxc5|GG jk)懾|)N?^x'Cm+8z{k_%>[(30*j*%]W67E;L&j :"l8{[4pfXj,:|'2CFSD+>`? (qE?[t'.Rh!pVݝ稈6Lg#rf[;) DF{HPT2p.i"aD(S瑶jr;Zg _n5aTmï}V+|, yᬫyV"^E // !YHCsBΕT%dPrtaLvzVՁzSX~k7=-XMuveQy@[:xAlbT"IQf̓TV@Ubǩ;3txC({~Tػ=AXY×>\qn7xG7ױׄD99hu6qW~{W6&_ϨjS^2ݫi)NF;Eybf;Lcg*Ʃ8yJj\Cwm4#gh1WZN^s427j(/wUոtsz*dͣ5c8:gLBܭ$Ypa#ܥ D# 2F#i@:^kY$rbzdWo}~ĊqݹL`"FsB| <3l}_/\Ry/neB:SJTgD=+Y-zb)^& hس 9cT(w޵;۵r&r ? d>b3 ~։KWΰ&L0Mlte-G_$nܵˍ0J=Z",orKk*e* $H5X$3xǷX0v 0YO!+| PF/aS+q89~a:} 4oRZ,al@x;;B%4 ꃎ~A_GJf'AYWhǡOZr'B B0[lf^z^<#F]6;N JwBž4n'lZMB}ҭGs`zJ2*Ta,5~jh*e9@[tkb~\5A1OLĉ jm"ޯ>|݉=t{[Ohy)z|K8MO)#}mΰ +]&%9jXL{<G\ wʞҀn9" \QbS Odh4 "etFo(4MXh s Ҭ%Ѝbԧ z#3#~ܨ G@0lo4T_f`ϐ߫ X՘uVJp'c;3ze3ݓnG (j5TXhd3y DĜ/H1E)rh]+ŋ RL2A̎bjj@y cVȠ[,tt)[˘9!X,K=ۘX7ք o6D"լ!4¶hoXz"0EB"X~ %n[ +rH, pDb男:QHIX}7uaIr.`KES QJ.NHl9CΘX>n.`92NNp Cd0OЀ52.'ي H-qyxf7Nqc:c0$f$M(qxp$su,>V𴺣$4K#{x9ԅ&^%{yCKMWDC$< DYvzɊ)=xQHT=]f7}XFSV>! {9tFW#4o*K!::냤F ũZ{rx[_v*N:^iz"d!4yA5-HHE7ܭak`̯x”}-if{1,E]fQ;;DnUV& RߙG?F:_G 7EY6wL Ÿ5vm ظXL& d z¶k aj2ȩ=mQYt)Vp%'j?Z_hĄu:0iÈՌ,8j viMru`B>^Y|sx4'4lj_!֍^|z : ar> 9y6*e (fʫ89,ѼFK:uwf3.osV'l,IAv0!O",BXGX9l&cuŹ>.Z$˳ݜA{?evPGiu%F>[⇍FNU}ZJu3F!7|wUb /D3csN'^tt?E=c‹Nܑ(}QݩnK۵vMsX*W `(]]9?6wd Q ;63.|iH}Zޡ#6{ei Qlvc7/ٹKWP ".92\C%+EÃl-Oڋ.Any= )(zmVi&5f-6cLxAv^7|bD!ELr2ӠVX(iCpqc2^L2s^}wVsSVl@~1$~oO o_7ď!QbӤ ÛT1XhZtWRwƀa|‹ =0g&,?0b(<$ia0<SJߠ߯tcphB޿x󄇻PMqϡ~*iVJK< ş;j䌍sPkku6i_sɕ0y'1&i wr(h"lPg[Z kj}\^+H#֧azmTmNEE7HA>_uE/Ko{0 DQjta;ǸmH0]% _+6ѣlk ;Bd5 kuhxtD >Gk2@kTX أ)f|g6i&1@k8NUJPZCC}%V:Z<0LiI@GWJm3 gMP{.ya?@Ɣ-59Gp{3`z1An(Yaf<^<p{aƕ9se)EgXGp JOid ZwKFtu=MuZѴ$Wf]t%8f=Mzf U×uVJduzlaݝ_O;u HnqM"~@s ]~ n`mjj| 5=^h- 1­GΑ?ptJFMрI_Ibwr$EԵu}a9^dc$7ZE<Х 2<~I$mFf48U}|aaXJ6zh3qPg?3(o2ذ'VbO{èl:N*;~td;;GqbNL=,t"/,5j=(ZGl{"nrl&!帀["WsG%/txNȋI<.u]4Q0k9Zwj f,0̓.ŵ/9nY{%Vj yB-4cjiLռԸ}X1V?F55%WKqWuv:@wAl%*2^+tu/0pt|,`-= /"ht~/5sJ;%/8^|kO)Yh@66QG}$U$Gu3mwpp3)D=N6G: oEnej m_~Ep5x)^$ZUB,,TJM"@ ,V%ÉVe L@O}tF`U*ΓNZFw߭&&.ǫTFV qQ".}Ryb:2 ]tio%*y;˱90sWUm{L@r4N3 (y78kÄzgAZk|^8/33_YdդǑޅ:r)їS8}z*L*0ѿҥ}M eH{y}F3uV>|eVK×tۼ0v+O!+2a; ;?o2- {:,RK2B!r)'PP}oK]UDd!E3db+5z2Lh$G!s;A`(m6kW(PpkRycdy]i ljb"Ђ<[HoWk{FSؔbR!߲.xS .0$5b{-nj=]>0V:J3"(Zm3Eh1&Fd&~Bg 򅚆Aoa] Z`D V#tzeMfSO`ArWq҆"C!i4MqXbon/⣐o=(S+]BF1L9hYpb¬-@Auadtd:#cbڋR l ]OcYQ"F'=_NX~QSN|O,cЫ^8NO-&# fe'K[6a&N(eΝ̚[c\6IoÇj;F#AIo&Җi3,T/J 0]h/PkB8 tWDLWAQY)4pxa= d)L" оT"y5gx뵚@6?+^‚og#5b/#b JL_@@x 9sC3k$.k j~ߪ}b5.Wgep@ gzZmǾsdHn͐ %AfJ`|O.W#"w\rPiRhY!J̆]tb;qg0H?W̓\@\t^XV1sXB@v@} )^fJ/H)!; kZ(-LlKt5kn'K݌Kb2c|1(|<|&sp@GK9L|,̀l\E4c$CՒP3mY"L8Az~=#:AKO䕘>Ţ(l`Fg`g5QS[īi EUT5N"1qjX(|@Je@q-vX3 `%o\7ّw U8[rZ!%bwLq3s4(hb$S!?MNN{:GLA}B6x:f@b+3 s42&,`d 6&z템Trq|p1;K堟| Rs+u/#A]"̋tR o-"|AR Nb>'u^;Pw~y[Pit>Yw  e^v1'X-BjrZ{ډ7bpPcz_,!7!R!7/KR_(7oj4 >LqG_Y?hn?> YR>cx"PA;xBT\I2BB~1VvVN52T;;. tG ?d B+ con&~&"\ &0pʍcs22>5@ `0#>@.hrk1r1ޒks:J-ڱFDHAg:%s|?Lz5ti7Ez>g;7pcO `DzLҫʱ?"an~TNңҧFGЃƸCtSmrʱFC >E|s1KR[:y#LMvrcF%Nu2K]J;\>I׸**r*/%m1:=%TyGHq~{Bm\aW, .""<₵+kP8or456.jIQ ڕ 6\Zw!L0kR :߫{ IlbںDx1{=C8ѴWnvlR/tyH4a=/<vO.=|4];[nfq0-lݗy\E v%>:Z%g(,tGI-0{-ltOgXHڊ}PkvvץrK̾| ,V_au=~xm7Uuj*֣e=?;`{zU V%'^ ,7IŎǗ`J;q59qn}Ss<(u#ʬ@+?NJdMzDE-mFٵ=9m{ =hftn )0%e*, ' j>ˉ>PElKAtlg/Ht Ğ~bBWrTm]Rf]6O60@rt# lZ(<$hEmqjotFI`g!ܐ~9)JT؊_s9PHIx$z\Z$-M(JR\rEƛT J.Ӑ0=Qܳ- H*|F'3:PeU$M`h *2߾nͧ] .PʣKf=@v*gvM#*0G,$ԦCwZoy%YYqbXi/SO_ cUtN%ȉ=t8>:E-҇iktđK?z $Uhra_DzC}}uph̐9`45&18hZM`R _Tw$4Q.祈7/S!P2^nvqQUExJA,!}5Y.MBb~o:iDyƣ+:K3cw[Mo*@R,XΉZ7Iٕ!ll M<tY^8Ryb0Y҃148b(77,Oh4=+}ڡ^T6PL=J-uSǎX%$m\OCXLݤٻ\`1E5HZL/kVDb$߻89($PT?eREwmnj (yaR&ċn z=]캤ٕNU2ԡfdqL.ˀֵF*:994֛GGHg,jX^jda({ ..yzZ PRi &sj+i8bjyTw"5xrRxڝ岲3aεaVte0=䩇ֳ'䀖kȠk|EKnLgl/\,hPp:}L(+5 `/Ej;MLA߶Px:,F0}a¤ڼ/}*V_\f E[J@~Y}n"L8L=ٹI2ϱhK42okQGYg#yX 3ݼFyNgaN*04(L nD+bo^ R|{۵zB-VJ #Uq IK6i7w:Z咿|zȚES05dUS{Nh6_6R D)mHQuiYQevfX;o&7R{w M*wc#wͰsw)ݽMjꮛ fKnٳsk(o.f3iwPF'bSP̶ͪ屺3J*U2V6س?)VUY+Њtk9g-^L}s?0xw[J-WKϧ&ΪKέQ{:Z-]o'RdŸ zBP65vL)yoW;jtgk-K786/y ɔZR?V3dž__!yOX,Ҿh +:qϖ{8*ll" xӞXw l&?%-|P2üw&ͨmhp]vi>㖿yYjta0]vk5<B7j[Cv@"2B S2 :#lAp_+&+q3a3#{*JOňX}eb:..3SppRO&l G?r)=5Y$0󣻩'89`;"j=[FP9d3c _xM\Xʀx|O@xa\<1q~84׾Dp›X\z@.G˚(Y>ICTzXHTǞp!n [stAWFܦPHEtna8O M{c, Nlw9A i M;#23#C{1pr] #h9uͧ_.G9hwH Z>pi0x'E)>=HjTD2Mz jw^Y{`¤{z@ZVdB Oz~ F J' C>iR&l3 }1P&O&# Co7@($TupHR2 UGI| ?9*|l: zPƈ %9m@J7zMpX- f~[ >+F i {&ФR2L9bq8BI03mc[1c|wgVX8gt|! Iyj^#Zqy )V FcTKNAl(P)x%G`9S*Z @CW"D OBx:-g8S)ˢeΩ0Cq GuͩR ֏#ÚTk#ȃ {'Ӄ-8ގɱ b]dw+xkJC!9α kSEL`u Z=HTiolo F@t\p:K1V2l1KD3 ({bwl9k9;G1:CQhӽɛV @=%3`맰8{yZre6ЪhA$'fZZ&`YUFatJϟ<>8v`SQxHna+|ya:r8h@VknϒKshFxww2>%0Pvfc_6~J`Md9(f>hvaD\s\ڥvZ,v.RXjKb],٥v y8uN1enh½*y7tq/1~ka= `z]⥖w4~#nT9ht2,aGԀ7O{vpֵ܊{2x4v <yƷY3zMgK+Vq@O;ĻE[ܾAQ+!Z2%kMjhS:!I 70M74,2Ly{?I:wXuoCz a0-ܛ@o:_Ftqmi=@_ʯ?6<(@) !x?n>C;[>z$ڬBXGZd{U:_f%{1'|$* X黠 TA={FkIe^;9D(<4$Fd1Q A 2OZAȟ#R#0DbeP1(sLA@ko@ L.ܮ+ c3Tc(۵͝m0pIK`}7.رeqF;[}X~O&>29 ~E+jT[0e9._S\@CLPs Eo DSTE' |Tk YA$w۵r3 Plip3IQP)dGP]-?r8 GiJ eìt";Qi!"TB>Rڳxu[j`(#}䟪D:{:nڲPRQZhPxa:2&ޗB-h,k_aKMnEb暹>*`dW|qy5++H>:(R_U$%SQ@'C/1VT; 3nV,f..9>K/ uu9IXUm#Jsk o>nFdܤө ?mLv`x 5v9sGLߥgNPndHIl='Wz1KvcM=܂b1fa¢2'6>>4/$Bx4_b"pz4nnJ']ɏ4c1" MFecSkGE-?B1RMU$ "b?Aڌ/<X^腗}tlz`X7 ,51ZSYR" \f!҇h}'@` s{ܿ_),G<+k27`?hSWP}  c{02p=2fXYZSI[po[Y )B3OUJ F᣻ KeѨz( y4-Yd__ݩwjFG߮I;sP% (޳?fp<4̡ $ gf֫ к,t`\)9a~%M0X ĵWu5)B-J(]=t_fW++{10dJINݻA] æG!`~`W>,LX-J $@lҔc&|nq'+a]ӱ ~I‷wE ǁn@y4LS-s^}:KYp)ad|ˀ`ԉ:C֦:C5<_=GųMd FLv1Kcg{CTɆͿqhM1lȮQhMke;X 89ډ]%Ԣ`5r9MMG):P֚S uM ӓֵ0>)֦*qb+Suߎ\6˛_Kލ:_5B,=.أ4;Y1_څ' # ]aa+6ezkG-%)Mhчܾ *%gD60Փ2d t C$ H "r Ef(E) L34&6޼L<⪛en&H#eXV 1^CÖ JR>ymQ: 0{+@\y@ʋo; Kb#-| F_2+gmFf0h S OC'_:!0)1H^Q"=ʢYi̽GLPn6(+ɿ +u"~.5FGg /- '!z EûvЌ J ؖ,%]v:[lrO6?v^~Q_%$.5/*@b`MER !iJ&^߶UQ.J/[-_X`m[qM;1a +iGlHyi@,:7_ZW__>]2[.r7D"? %nz$LCWb ݷhO$X6Ve($pJ(qHў6+O&@RYEu=E*߷fV޴H$+NڕkY&߉DיD݃NbyƸIKyWt4QID7FieXl_ޝ«V#JA-g1Ee2_`>Wᕟӵ0Z1YHkL1é~G=aulYs-#{3EUu]?$aM)݋p@X7Xp ㋂-tQo9!!,O9xxGa4o8.$Y Y |R"(lz &M)tSp hmHa>RnIqIb,$g oܾe3D$xLbO(Xah ۊ*mv߅ELR 7r0(Z]|/) r {B%g<:܃X ɽ{ք3i^cec=YR-`kO5)t:Cxد*1>%VU*+1n+TS `uN]T!t;=`LcG M-Xzzm߈det,xd``᩶kdd8cQ, (|G&Sv :2'td iOFfu%NLTM8v_S GR91R/~K1FfFS IFYc6!oB< -5jodmMyoO[ M]>({8OvCXL-9^\'1K,5(u1jխ3ҝ$.M70'5ט]WjMikkzǻ7hVkC邼gۛ`8{fTg56c4:/רHr Ji"BT4VRc`۩Cdβ>G"EuEJr̀r%6%d© A1v('#Ky` nSl@c il5QqqMUVfܨ0&F.Rܜ-G;`QWn0(R-_e'~H$-ǐW//]zJ"ߺ%)%T tW(2^{տ[4%! 2L--X Cj-X)cAW ^/y8tõ 02q6FўL| FcŨ_ %ø_?,"~-qG^ I9^י?KrɆ=`ER0X) -+&8 NuBx+A'72(VDh&GeZ}ŇJiVd/(( ("vQ:P#XjOl4sj]SJPS8]f jTɿ j3RqD|~fwHE!61:.,D􍷭cxQ8̍A1Eכ7o6rgϞ0cL?P;4`Έsq*nC|˄[ ~1 CiaxhMmn$'%ұv}"W}drsi;N9Ĭ 5¯k:YӃ7x;"u +=xK[/nLbt䚲ROgM}'Màt8Y@ bGb`n862{ʝZ<QxUo%TwնkfedqeD.֊y\L)" ,QHpMjSSB:{%B)sx8\ͻs&}zu faHϿԻ¤kj ׋E3丽O!ӗO|a1h/Rrl s(8C&#d^W q|cq;c| v81dQK嬺\Z7%dpc/(2m[tk{|n'H#v?kTI%|-I2EklY9(vIdp2u}=?n+iY8C_Na5e"sVU^i+Ӡ)B`$I O! 0f31w),1ǘa,~@Ap D`Zl OZ ~nNn9*j))=`ЎDsЙE#bF?h6BZUEہaCߴo^Bx#oV{M@Lбh)KVJcDH z0o|ٕ³5KK<'c&Pf)5xGH{R%M}}w[tKۋ-Ս=Asi pآm\^qÃV48rzv{'ƻF{W\"ozmA5-x:>>85NZ'[Ip4NBqqnȾ, =.-F'v߆:F׈YbLXGOoaw zƱE'q˦{yDlمXAE _k[`uQqcG@v=AQwzԦd!~$̫ xUvCb=ltڥnI[HQ\ Ԓ&/q9@Z=dcc0J$`pmT e˃(s^4[|GY%W)g}m'-$u1-նNA_W 3!d :YUo]E;^*tix<6n0WAhj<k^Uᇧx)ȷ;c{G~.fEO1)́I ?lgn=KN>gMq!"kJXY{F(R vΛ8>Ym~M\۱cК˴8B.vf6n ZD*ꎰgcMLAp=$7Vq ğ2Z>lom %ɋ>t`xx3 qVX)LrxiR ܷb_Ephh7^{l"2y0<3.sך`e=ן&s: lTN } +P/%fGB0goI3P:@H))WyBq͏NtgqlSg\Xl)GA5JRUuކ9:=s oOHB]x--vb\ybm; 2;ūr /*X\^J,k⸾TЩ&|ȾT8?ď-N&;a"HV>{-j ΢K\;Ri K(+ޕ` ~)[]4<+YlHX E; W#:cj_I>`yY 7QGL^ %Y1XC,_/\ٸ4y/XŚ.p]$kMXWr7SP/*nE~b ت0~5}o+ew+SUԔXv .B)˾de_}#q7Pjӈd2Af_,< 's޼$E :Qe%5^6/\v㰓*/[MQ㻓]n v94p)p)/IǗ2?q핟s5wlX'&z^3PaTFfS=,g RAZ3HzX\SrqڦC&/cנZar~_ˑI YEr6鳠M&K68SUS l%b:+4Ch_b&=|"u֮nB- zTUKPkGNtyUMNRvu&akk7-o&K/0KPZ:>|ć?0qNN 3}~YZj41?P┃ CbPJGG3vȘ8qUez<((\2Y +Fu8~nx *( `q:޳v1h58{<9Z'p"f95THڣQVS|ATV )GjiR!_4!KPVڇVi^!er|Q/*AB‡?r(+pAn(0唁ՠoOA02e^(bU!9PGSZyFq27h/\[`^1ƬKǾ~ r4h;#X&gֳg[/au=nP' 0Z>SilT.yρ d.kBk;7UW9{v.{ ~2 b*b*_E8UTEHUUCP5(!a5Q5QXcj0mf)u 힜4|2BKx8Le ^Z=&#o[v`V:9gQJ߷x/dL`j_4L nt-B|\pS Lrh>kmX60sh $(9 0 w>M##z]5 Cte~H:eg1lbqV҅5hYӈGk L%8 HFzQ [hU6s (01Zˠp $tr4P ommUQ~*EdcWӠQזcn0O%R UR;0R4֗#[KSU[3@#Ub+Ԭj')tKAc+Ҷ+m3oT]VTu/:]EJYeT98H*!&x/QjeJu JChќ9;aV4E*UcnWaT]Ke 60`m 62`3 64`Sm 66hssEltfmx0 f7Hp6'ti()YL70J#k6PSJ\ bF,u,Y4-5z*ii6K:YSA跎[Agl"^Ύ{Kںẻ) }n-\vvʺ;awS ׭NqMnj7-_ 2-/wuw ˴c& ~δĩuB'U,:'qœЩ87NH't$r D>l'Y2k"wPLdʂ'lg7'.ѵj ͑ ws>j4Jz=#->lTsc%>eSrhqlqolܩ3ZT--v-v-Xd`3Z(q1C%VX*8C9s~(eJ:c%Viv& +B>J {jQ_ Ud8 |gy;+)zNz}JaoRO(ye +݅Jd^-=a~]S,2BTMAF0h޹HkVGP,΋k xX|ט&8נ*T,5&h>:((b=h=h=D1y͵w3<ʒo)y*y^q#ᴡtǍrJ`]gAJ{]6k8a+0牖L)Њ"Wh$ZDHMVDLE+%ZEDMX4WEH+&ZEDwMjWEHo-E[4V|\bjeQRhY;D1 5Ѳ rFi˜"rfl/\!4Ѳ(rEbheAtĝȊȥPծnLRh(CJfFI,,e[^e҆1`v߳-*)c0g[aSŔfdir0@0Jo.rqx!_&zJJFPė9-zmӛ*zHj4zխiI$WLMVfhU\G≽AuBGuyBg.V鲺VT7>s*T9ZUX UVz)6F۔+4װM[( ~"dfC_7V.ɪafyv1mn7>0>PhcRhé{O!yS| o`7]rvc 5g+#k57ZXQt9PI^zhR.sNa5u KJ[˳9ui#86>0&O*0,y sCXbRfXlU= 앫F@br Տ)p9̷֣Q^@` ?W )1 |gY{F@!LAY)(V_"y`^:MS/ ix_7Lo|@Ɂ(Ʊ3ݭCe%*W޷: |:4d;SXޭAwTX;)j q;ä 5&R-6HV\ uQqװߠ",渟D;1x?K:!f*Ƙ;Li'[(T/5t7ɐVm |>)g~[%bm?l~xSL0q,mf6Z уi㯃F) JÎ|y1yF/_NFzH\O\ө;tp%] Up)! { mmӡ+`9ǖ"F¿3 01́{cul q>!0l=:=XK+R*֘Ճ9@e5p@ΡTAvgu 4i*~\jep'Cp%]MH"BS?ͯ-޹8 WH }%V&5ZzkvSaN|%MvRY ,g|3%ֳ3\P{I걮}PԅIh{Vy4{/@58B\U@ZVYql#w8 fP;t!l*eKL)l3(3نyz@A:#T8Gl0&%J!$Nosɼο{S^Et?g8=%6߬h}Mu<_^t SRM0ozF)4x!tY" TSƃkjD_HDM%cn51 Wz Co!>9! j%>aKP9^ J-P}[`v}CtG4AaC%"M)(m Ԟ3i+^Zkr"$kvlX?᤮ l]N\ƎTʢxxIHTJx<'|_z Ӵ,S9̽a*ĪbGㄮ+N!̲8.?qϿ@bdұq);qG.<8"uB-X,W-P{GpZMoy.xel,;^P B6+k^4sƞ'Y`N ?1IЀsӢrC<&%Xl8yQ(*UF8FhO+};hñQ+Qqٶ]Blr3 J8>\~OX-I0j|e::ݼM9-_4km9U|̥NOgZ5. pjO6hENI&ܕFfU@ EdH4^%05^S~M(Oy"m4$OopyP95I-,BLޘmw kA}TYd!yN˦;6C]K 4@՚`fggg3S;o% ݴ4Ά 09Fwѳ[8gFKK›6o- W)l!vaed薃0 g(+%A`bnM Gz9wv"Qי߆ZN;i{Z`OBDSsh?1^H,EE&z TFWt'x$0V6Yzzޛ:3ozG.?m B>ا/%D'N>1ާ^)G6l"mN;6e>q) `9UHh/pl(uGn]Y.vKR͜2ȝ/8:ፇ5X͇{sqVixŅ͛,db޽}}Fu>5M| +CUesE[eWuch7s_hY ۖ;zԺ=[vHz90&ɔ{'&-oXOÉ@<m>jm%~{`<郝e!^T`Iwݥ;9qFLXS,#l٬,W_x)Fy Wޮ[+lRS-~xWαIkQ|L)jI]hu& y|f9 7 TARֹ)2WmԷax _.6eQϚhVñg%1m7{~5OZ g,W*(X9JEo \gZm"~*$-9Fa@U43Šעob,z?1.k'n"Zt|C,Ė Sx21 Q2ٖݟ7??2v(Pg۵.ޟqYZPMndgýk])s5/.LJ]aNg.zfAȿd.:gg= ]n+w?nm7R-/way0_lqyx"'ǁ)tQyt5J[w}ܽ3Vfx9.S_cx|-;,r/M])*oV3JO#ÇƬN (>]60^*j%+$$BZRImĈ#W]?4s5 +UTpVU4]݇|JWC%gV|MmOXs&#<(Aqs1!5džDzۀMmgH{[H|bmm,Ĺ99l.NNk 0~E /0(Q vYh@Vk9C%6|&U3Y6U)Գ}_k ) lvOVgm\ـk~`{,P&Wf=kww#4!}Fr'O^rjȠԀC@²vB~ʞu&ΚZKOa:}=Bߡx㎜1}:!_yޝ80>ty7>^vjbP97..["*`ـ9eЗoG ZJpiZ gm 0&~+-ŻzJzųnݞ6m v;:D>i]7,x₝6|^{gj]Q0jx_sSu;S-w|K^PW#X``Q9څ84 ;_1s@ptî5b,TRCFEk5Tf&8\~Rw>{\W|2U 44aP ^erc!\*X+nGCDhp#sbН; ^YF!ߑ!הuefQm]dV~2Z`Bs}=whϻs8 bتHfHeT5 #g>'Σ\wH EA()n2}qK!ڳ^nзfA:X M֟n<ͩ&ӽ|׬K,ys|dovƒT`B0^B߇mIf_nDWAEh9Ư%F: #Juxp=bD"MɖoͻF$IvA#1t9s-[,p2qlȼ}Myb [6 eљ46a. 5} 6A&Zw.$L1ƞI]9Yv&#,]=4Ƃ§|tfg]4cԀdN [[1_6a?GIR"'cDgbmK 88 -)g,-&@-ӧ,ӧG`Pe~?<5|x>T;JVqjȯrYxf[[Sg.e2E3V R UYՈl)%" j)ĔeNx(6L?Ժfnȭ61|^\nXsnٜD1T߾ʻhkЫ*+Q+]2}-+,WE}}˒`uE}PHwW%?T_Bl[دw{f_VG=2N~E[c&vq~߸;"n(#D;ps=]M&Nʜw\?Jѕ?YPhN9nCyj@A(:@m\ ÛBw*2E r53_`:VWQpcaAgsQT LX`uBͯ}̳j&y3pKqg+rvHG)T > 1^k/ @bVBIE.4C2Ղ?>0Fy&n$[Qo1%,}Paw ykx0>'hUMIr֯mXn2NVِc̬~s}lb k\gM|c=z =Ӓ2 DܗSAGH:/v6 oW/nh/7xEkjߥsGֳߖre`Pdae|zEe]&Էn]5ۜf0_ΝXw> WoAUw{~;؞1==YFKz- $h8ރ6`QG> ™( ~ ,oϑ Q&kwz QaCL)uV } v <7t1Ɨ)QugaC,6ׇSit{$}[^> cWzA}b=0%3QĉgQjsP%AKTGaՊ&4=%_/KL~a_U rB>_ Aǣ7Rh$~eE0E zO&DdDq4@n[UU9fc9,mi+C l]B>]vn"ZMlf&ɪz٭_A}ٹd),!-.X,Z`s`M=VYE_2c٨kR zۂŒJ7 +ڛׂLzy8:PfONd[ G`52PlvU^Ul77 ~sC\XpW~ArKY 7&rSޥv&sfV2U]&ֺt^.#aێ. ӉĞE"F%V#+WlEl+B `2!o s/}w"4#YOCVw2@=huy˭sG=ˆZ(.~50ϯhկ|&eojRk İjKR?dDDDDDUXX7`:tVY&(B0]o u]vm=IJo}^m]ؿIARTw>gȁ9bŘn莗6|aܟa4vKa6&#~Қu披 9v.028v2Td4Ma[}UV% KZ>h3M&-ޗ2?MsQYIpaYfy}uMv$ 2u@t=5!I!QdlRX;<aYKttT~eZf̚zԡG5/1ݺIX@鍖FfϱEo&(Ǩh mgw6jF]T:۬7*Ӣ J* l.>XWG% '1\ō7ӧ<.uvTԸLc'OtvAMu&sIۮa/y-(3e>O=v71{|?1IP L2"ݢ}*ߙwNkhdscwx@9-龳^,0=r,&?F99ْzaOĻ*a;f4e0/n:4"ɌQQѾltI ^vvVȔnV1[̭=%F}ֱ۵FO@6UqĩMG}`]yS8 tu.cfNcdD F#30}X?}WƖX |%&8;=> E';m{c\JcʄYByb.Tj>ICDH"g L odFߐ#?e#Zn9 yw޳lGKV_0'(@k,mھ6frĻ.dV |̜!6X2C8_5^+Gr)n3MIfu?{Ü)%䜨,wb}b==~$ZO0TM Bf;ӾվN/YvzGt1 d>x#˴@ b_)z_l˗1B-&οSNC!:޸bc{㬃MJq!mmit1RO+17+̻*Dᨂ2bJ:(Y[қ7̅bJ(F:'&Z;|eoB^o&,5"C.ŗ';_pMv8qoCBH.ʛ26<%2Zkɾ=ބJ竵zm 䦠WHO܅9#px ?sFS"D'Ke)1"Y!8K%E1c[E)7v2$:u_es?j}:po|!Aact  }0uEYO(`b'l@YaA Eu/mQ)IќD e_n(t sE:gvyк 6P[!5h>B^ vF j(Nvmkjrǂaww`Sa(Jur>;>; *ҳ% w;yvA'lm< I^k-qf:zq1"wy6/;>xnag-8"?wck Lc8-h7[:n$2m GQw]bB,^mN.,tephvD6M1iv1"UtrmKnwC( [2wGŏ=AZWܳg~̅5`&6Eթ`*ck4fJ1dlM>= [ĻZhC!Q޸Qz2hb<G KYx(RFƝb[6Q8gfO t4H[ %>JFu1ȿ='nivo#ϋ+Xr|W z4⨥m=#nC#Q1[V h?ʡ`UtU0m6İsסּo>?\Cq`cbP9Y&.*Yô#a#b\ ֙I5/X?A-{K Y/,M |)e_O&;) 8[7OKyp]뿟>tY\V#B\ ϟ= EWწfPQo^9'pЇC > K!؉1%BnՑ (a_PqE'˂k#Cרk$ԣۅ5C<|K^N6dbQ\xsӥGIW-az)<]`t<כPy[s֝,[wTPgQ!."8Xo(Ԋ¾\QX5T%GO+4R6R>ijvӈ [6CV=N? I4euK.tj]Ԓ6S3/:Yx3,#M v(TN=*Rէ25"[oz?|고YЎΧy<c0C*uӺ "zV2p2۔d_xKI!9 3O^I*sJ( 7XBE(?:.3}REQ% '͞d,4tAVMtjT ?ModXEpq@nnE)`#ycqB_.Ne<|Y=#+JRo sIEXX +DF3=*jq.^S-3d]3_,:wEswF'O[U0%`n`vXkyL6g-wO[(] aZ>hKCe)7]*\=+טѺ -ylALsgT4g. Tl |rh!bx>2{54OiDold>쩧pP#&%)v-T4t =R]B'U! Mf~U:d۪mAV"qW }r֥q!n++{HWo!ЏX7s \~ŒQc57g%iĸQPa~? "[ABmӢ|U3ˉ3XQ#k򸍏v)_1/g; ԭ; 2 /Y?[x޿vY# af)zlz zܓT[wܝN@ɨ|2Q^=rAD7rl1J/ƔM'A5:o+,]5s'X89(¦KUqeR [N E0]tJga\$q?<;`g7yfJ.0]K-)m#0*iJw'ui9=}=Qh:3,AG 0%Wwf7\nvYVwc]&;gyԬe*hxx]t1n0>ߖhU"!w+,3!Pc>p Q_HE/vvboX>ouN@X:Bkd9ޟ&)g:q1Zv7OG6z}4ȦϗQ"uː7nX$·|ܠݫ5`*{N[JŪQ`yKH02o ӅGX\g yqiz iE&05KA^7%C1Ȗ$a^x) LK#=̈(u8sѝ8#}$lyIOԞ8D&Amy⌚G=]tYmc . ^y֪Z9HYX+19ouY;'{k wo^\bsu5ԬaU_q1BXJYw7wX$I4+% ,9CXF( XYc%n|gQC!]:-[ rrm<R2`'ٴge^ڊeF4<_^?ZDept_h]@!s)8,gl-ͼ24 $] Qҵ撻Fȧ0\^%ȽZ^n]yRp&ɜ$tEJ\h.TDdi $h&" _`GgPca2J}l F, eN0r|ӀL6rj t9iڪ}WT~n2He.ҝ npvɸ n\s O%H6)v1"n\(3HoT`t[|f;5[< eyaƜAj{bYr)4qAaAc7 KUHN`fcuv 턟P"9 Ŵ c`޸ض`"Wبڱah9E#0/i"s=^ݰ$^ etZ>qi,[ f&>D@.+}9@ wva0xX}5&̀ .(vvӤ_gq=tt< -٭_h)>ZT6 jQ @ R=Űr0u8յ*O4w?!n+fP\|1dÎo5<$DLD?JNn思GH/15l[yUrfqtjB*{s( ӆ}3j'<i>t*TEBq'1>O4y|^t)>,<3v PeW>B1pSI)=M. X0KE]JB )r"Bǖtw)CXQ7]r1c3s++PLP+Fʅ"wZjI-89h\>*+faON߭L/.i妀1ؓ1`LS(1T#]U1ۉ֚mIuEV/ojʽYQiפҞg0~g _vY* юu ЁQ2g*RZZF|$ѓy٠Uˎ9dϪ˛Őȱg;7 F sє]`*'ϟ:1cC@ɂdG3sxc$#7 sZbg; ea?A˛$%8ImB/ lgIvdS!(QU'q~T$o^]\LR YނOih#E)=m}@1P.o/%~R+rn&e jJ51`,CKͣO4/SYߐqn浲A kD 2I zP CϠW#yF~Ls/8ƒ1x/ b[ nH( B/&P iŽsW)9 A9[<|=Ԃ5v rAyS<s{%G9G=?wÞٰ7LJzN{7s[MRz9g 7a|~)n팣m[E2~UyX_L*&hܼ}*&AH0ߖӥF/ʙB5f,bfF ފ1[2nF_ni~${HID+>E^A,o*! i?(av(G:Ъ#WEh$BYdS Y?÷#+ȚDCָވ1(D.1r$ƋKBSx', 'TJ<07(7;ݹQWgo*wUu?z632O镢 jjMp_>w᏷0>ٶu^%_(mmOS\z6l咞O3CLmbK'L7SHBP[8'7X [gXRZMi祃T=ʘX b9y4b% ``A0xƨWrW5$ ,0&g{_IĻE/e%1\w{/?,$0[S83urA`Q<CcD5!MQi0%Y M@1.$ )-AnS"^)Oc{gfGW& E)dWK 5إ$=v%zkcNbRL\3ES-2Ʊ Aql`h7ڵPY?W0/s!tEDXBr3Xl%zS64d Jtyڝ'b\P;Kd%iX! Liz4#1V17?_Nɡ ~}=w8M7 &{G]]u3u5kD2=4P7G:]N&̧͇=4ܸgƸd6q'?|j5S ʓտ`q pcgHHo.W.P92iLp07u eaz PL[ѦyrL0""B3vgʢRj30q_>6>5!brV.ޏ&M=xO^زxV;5l.RƔP]Uv2n'ek?|/챙Jj,H\3b"yTq Y7l&9aLI|f3b|rS-ҕcB Fd3KC}Y]pD:VT[%Zt+OhxfWCx3 ;b$m=r fh S-3b!M\Ȍѿe1*}* M|[HN3ot2homg7R2loI¦2Pz :37ړ38h/{lZёNO^sP#~^ȚP##)ۛ}Uk&GLV{ g fȻX v yd7re{jݻf`tS.&׫2?#fv6.Aj5bkU1ڕ`t1FJR7ϋeghyq^74d3LK6 3 -WD"[u=eotNZz]d {Y0ɠJ`tE)?_MB#~ F 372J2|C4LndYD71f4{֜wY紣tFvF5ndhod˘k#]i*"߹KFB2r|zZ16cpQ}]{d5_L= WEQHhO9H=zZOHIp0~py@k1Ef1~|eWW"| !ܿ _aʏ  :eD8)E›'^X=3);R/W-`e'OY^ɷjsѮmo[7۰`:NP Yoh (⤇yqpje<&Y Hi24AvQ u^qyCDcP}眎@Ol E1 8E袔ƸwՃɇ @Ub/+>`(ok} ?l{~3QH#0U ÐtXw| $J" 3 ^TzKA9pTz7*{Ll$5H$? MInW_7W;@Vd$zV<5NixS9mJzIz*TK=A+f_#o MGނ.P+eEh+7 *T@XR,aU-TVHݥ@=-2N^tzfa2z[0_ClJ\ U9uP1LJ1X2;0g *NnՠTR%=Ig妤x.Z(5/:GK?Sn_U ͶVt8þkU}c9.ƾNbPNqe A@:Our&dUɛ9ɘDdN~D%⤝1+al[9#t?J NV BYKŝ@YpLu;]f;^`TGgݝrwp{_=:?>T{ݽquY qk9&qxp8TK% :%MJ9{TkҔG@vU5NN""^R=>;ۭMa@]q堲>O%UҒR՝*0GruzX9{rr4à LAuX>W`8ǻ0J"&彽pBG{Ճ݃Q+I6 MmZIN[XGrjr!-JX!]嘤9*ս!}t\|˩S a;yb}ۊ:$a샢ZR>(f:0UjqƧ&^@2 GIAٙiY''U>$gTM!5 M3*8>hɔ-N8ܶ4Jn+=TJpK=ŭJrK=ͭ<Jt+=խ\ғJvtRs\9>߭U}WZ[E48D>F_':H6imtc||Dh ?1vmptlF7+ S3͓%nH#n_y:: u*UL(GjyZBbvYkZnc1j$7%P>XU7Y[?mmgT7(JPQTGk/?_Zԟ GA/5Ɉx,Gq I? ʥz`/A Dg/g:bO%Eg$@$)h*6{UJ۴V^@ ;alΎ# [xu0fjK'8nRooXG?'<ҿM ZMOO+Seboj"1G/s/ogӺ.y?.l@n:HŻV#|g fdٷ"x=s/MU O[@q9P”VH_#>KL1޳pң=KL5ֳP#=S 4 ]"$;,mTNIi,jV"Rw.AW[#!rt`> B?xԷ0[VPI?IXPR@n=CHT>f}a_E;>Rh[,&KC ?㐿}ˀiH4VTPDihDhgDgfBf%=iIT"P8 ImC3߄s3x Ο=Zjq=q0Th+^7yݹ (;*Yh_r4fQC q~ggVum/k?qs~.duaĻ|3x4%ǰ&Kd`eѤ7SI)fTQj'1 1,6m C[3# (3v7ȵXk/n3[XT!MTkƶ @kPR,R] G܍IbbL~'7l#ȚB'΍7 +wqS:mѬԳxn$3kc e0MdHXO E"@jY]AhMW ?E, yC6jw#1 ;pƸ#N)nx2Ŵ+h[tp,rS;u G[?XԚ62w[zsz,/8}"T !a#qZj56sBGlF'6RP>m+@r~3)5:agӭ*ުaGJ}m3t([VoQddxM,m`z Ӗ'TAlJ.J|ݪ#ˬ zTt8iـŔIՔ Y,Ů]Ezv2ipyMUcޒtodFt V"P8%<@(sddy\y445E`UJ(\?VmWZL2w&UH??A@!Q\ u_ rx:K:odp|*OԻ(et72~{\"Hl}$KYnS_?XEZOo7%1ZoC`\EQZ#.+Ȱ-5aIdoL7dGq޲*c$)v pI*gh27᧎7M/|Ib?k4ϩALa:BM :X|ZUZP!xȦB7<%nJŏ 0MOXT-Л8چ)?~ɊS 6oՒ"'PItɗ:MP:)>hSna>J45(L⦬-i4ђ5~.MiCLp#KC4%&dA\J+%Mů,>)+u~ԭoni4C\k^td9939!A1Ȫ.&E\Fc=cs3m_csl_}dClI{lU%C yWN:Wє7cL̟ /5GD"_{0\Ec& nzQkHUS!W O/٫~'abL5 f&e>&Cd3 xg\FWQ,xa]gW]Yłosa EDIVaEBOmS?| Եl m$ߊ[h|ԪY޸ϯZ[n6˘EMrâ @ڌ

 =x}bپ< +|1D;.'ݯW)B-7..[~~Y3ǛR@-c9I\< @VxSzITl'? G;m]{b1;߷yyў{j IJE"2n4>}XΧҫ/,--jotC%^q1&[% ~y7yVC$9;3۾zXdllJi1k+%B]ӷtr4hDL8S ֊[@m(&wI $E$}_!EidpNݳHR}4TE$ǵ6`[ǼN݄YxCWTś7#i넘Itj1'k;zR jŪVr`Քc 26Dž'mKA (_uyEcNdPh򆖟d%S²2| j-8ZlMU7jr.UmtZw=r` GbN–H(SQlM|m\X/# Қ-&h.~8̄-#ܸSfr&~ H!mzƿ3H Ң Bpxh+u rşQ~#T6k{!ס0tLe4F9$I2Nus²s_u֭8mAN"tCKޝVmo%UA m sGa0,n L1-ӼDE X@Fƈpi2bENXe6eq5XV=Գ]^Ŋ;- J0=~"8igШ9enj} kbnOETAh9 1Ƒ2X)e"%\ݪϕ[EXF5ۏ?ӑpXSf{ďmO~?iw:J4Q vM"jP\_WզȰ{ ,i魆K@Ff[5MxV17|XgSM_R!7ɦ`O9B'J U9|!4Jx6 -ŵ2<[Dԇl}';Baߒ89r;]QI?7$qG>s7#iՆ7}L̚8g2*ISΚ _7 I.Ob&7Ұt}\TAC ZQ$9y4^}s}Cc+?b?Mm_?cO'cdo!!;.e#z|$s0?mYwluI_)T4ۏKK,jI*7 ^H%nr&"0 `,Y=\/.6M'[ -[3_ea^R 5ON)$ et=H,Z{ڱ^!fKDeb&î}k&*sX]rƖkIu,-Nc0(%i>- #$`R o EЗ $Ő+ovh92y4N !Ҕ+uSdS(d'5cVP(qpxm]N,J[-#GLҀ?_[žh0v| VrfCG2`EPYeZF};$`6MCWVѠM޿rEr-JM,Mc/e̋6jE敗(&72J[R۲pxZeVF 6@ZFk>\|c0 /lx`YvjV\^\pBTTxO, H' ﷥6=:qK'%nW1K 8nab=Í #R26/ҋ[q]4dwz"{mkN/ܬJi\uZ P,Wڌu?o..!T*tV~.\DډS+Mzk{Աg%Gp 817ӗT$i,ijsTyo0YA ߃Q䣙H R ܊T*<1xcYEipyP  DHx+f92a۰Dbt!optm/سh1}e.{0f8=Thۀʲq}9tMN: [KIkoڈL'I}m 䞕rOLOYtQ Tɷ"nB{$sHk5,KDWLkɴ65kԤ^VsP{5(^+5Ynǩ˶UI() h&".շn|P@ δ#:j/-8˾_HZ%e-JL? nh@) -N@NAdIH؟3= !X"Mp^{Sp@`KFy`e$錸WgN!O`7#!jH3^-oB/^Bekm8sop6!*e<> +i٩mp)>B+dSӬ*޶$8ڬ.x!}1E` B9gK (L^h;ocm:X-2BZ}LuU1.8d=I;i~eF0CVBEQZ#nWa3,3T̖߲S5 \{zy;!*|{&[2 $CyLaɀnd 똟~}ݿΣYx-_ϘL)zӁDOWպ Hs )e9+tnp)Z"Rt!ӋDKb:xTYFD`HpP'MW0nfF-R1!2Ya"+b!ի՛̖;h1왮 1o]:"\4< sB^EB➸5KokmPmڢہG[,dK2:#KtZR%RFMwp V@;EjwzǰUo֐ ntkvY2|CɹCU,'ï)܆N^Xѥt:\qcmt;8:%Nf<aYu&,HT^"1z5 (W8;PgV:{#3{ai0ISiȔX#p!Z'G?hae Ս)v 8mzJ]vtǂLf7*Dž5߄̰39hڽZZ""@5S@k^H3m TvN9vLÔݯ; ߼;$vmv94ky,#LY/Kɇ$~^8,J/Sao4(HTVʜ^O(sh pӐ3Ь0*RU-{͞W՛\wNaS+##Ϲxaco/w1eh_ʂ g:5 m7P,ut2C#2OZNA$ݾGwUYm,EE+ Qɐ;kh8g -ЋqWl/t5,Ea*e[ _ KɅo**&Y9OrzMJhAce/0YeW:z7f)2s nW|jz$x&|Hs_8-BQ  S^7J2& {%Ǝ?6̞t!vnrlb g؟@sjнB:!.+v.54N1*KLn6N/U*H)3`d ̭ ~yf\z!( Fi[w|oُSV *\ 4J\VA#gESܾDۮw4~VOUlWBRgZTvE+b^WEs;<'A`{/Yix ϻ^%l1-a^LXqbo wjC%s[w9vն#킛)CCh舁!㛞 Qg;96H57:+ȕ=Sx-ʡ'u.iΊ󛞸/YJAn*\fKE0B9^"a5GBdQ}qt:B#Qnp엧(95|Zٛ!' Z.zmP6(hq4' 2%9R7gpv=U=էqN&+)^FfʙwL[,DɑF4EͶ$ )LEvp4n/C2|_RwL\M5.72Y !YO+ |Ijl RGprGIJ ctڧ8KՆh%"|^Ⱦ^4Iod߬#>?'&zޘq6+ œ"O4y3g֌vS5: \2IE*\khQ ta>^cf%<.'ƬHdm8ȑ9Bkn|Շ|PO^wq,)mm9.ۚ'pڋxAB@ 32CT=ǏWg4"yp꭬a).0\CwIܝς|^@I(k*pEF* _ʸHPZDZ׵BUpeuP,+rɰt\I~oqB&ӑ%ZwN^Y|AF>/(mz%,sf]v$V]},} =#^=O1i|;ׁz^.=(KϠ\^w:5UgK8ꗉ-y+%WzR 2仨5N{^ $r#6~'ܕRUKH gx+ 4z;hq\1YQ֠H9 g}ē`).wO -'Lٖ) #`ʆٹ7qFىx@7-N ӱ#Aydѕ 2G{Ne$_*J { KCCB82O9`HuMH0<BQ )[hL/Xw,x_nY/"Q٪1c~eiY2 !:sur՛عyNav+z f/3`vu,)P娕r(Ryg}+:F O Q| w$qqbX$<#:q͐7@rxPVj#?GyK[vߋ+KRQ'B̗g9 |)YIWb@KX*Ca6cziow L,gGbK؋gf(XHgj *͋5]sAiacֵz+E`+[>)-H2l*g5Y*Ts*lh25,l -~c3{9d[Gf(<$}x'Ȳ MѹFhCmǼNQ0hfѧGJkҋ04I2$XQ=g_j0OS8>>pL@x'A]~೵̷U.5;e~L%u-A ox~OЪku<-_ZZ^$F./Tl%Bm)5'I}xp7 Vb :x0a0tP>f+.je̝Wo ?*G K̨g0%8GE|$MXH*{֙un4x3JS@5q.(F<mFtghJ#yX P>!c?$_4Anzw2[:LNu9:vyhD|d_-dU IZfI>lÓnӘy&|N Yž۹ii_iޯF\?7j-owN۸o;mw;t7]뻝$7˭g^w=;yLjqŌ꿴+tt\*EMQǑ[-&x%̺Zd}#ɣ4a.[EKL6CE`lS8>IKZڢXyp@x{U\ObUO'QV04#]ff0bF}hK j g?pi?kn", Ye7èYZmi5\[rrXÔ;[nzٿw8nM@n0ܐUEJV'0P<ˆ3#8Z~?)*"&y+cmr`p{$SL.X[sv<C [c]~4u flJpIHv:%/GKQ78-2U)zμH 9s>7϶(I@ y٩rTn_BE_Z.„L`.QRDmS6nnı*M+D'"1sPJ1u)Vxn,9ڿ؍Fp^5.‰Ķ<#96C4qO>cKSP'0=xcd&?nkV"'T-Im6`~c6Vjot`n2RE mn=#hMF[<z<.r|d=K׳8 ᙂ${"prf͒Xdk83Y~z_Ix@=E8ó Q1-fńa ^3YJQ+i1{, K#SF{+v8 8Ǔ$NO $bY4{,(dDl>Wq-RD}Э yX%\ ^Lb:d1GqQ$«9"6`8/(f8mM?td5ngF&LKt4o1! <̈ƿ,{7ӞY%A@wBSj *#hũ+Nq\Ֆ$Tةrù~ Q@+,1V̍>҃D"g&R,ɟ1^.YHfW'? \Q%&gK ߈Ţ&mkRaVbW~mRo޸`WC@sV"Kΐ+TᥰQnp۱ ;s8p lB2NY]0;Jd ql6뛯 UNLm~egRv1I֌zQ,,Hr/ǻ./0Yؠ UK(֔}nϤpAuRYnZ,M;Cִ)hmj!.ɬCV2:R7"(3ltCDE*fnҲvyd,L9;d<ԎZg#l vZ"~U>t 4iCw vݮ onz'Q;LzO ӍDO3ܽJ[&?K;Yٱ3ئRЋb⭀GK.tj>#į~9n.1崷cT/pI8Kk[<1aP8 Rw.oou}C`BW": ;+uY(c̕#jN˖&C ̗DUa 1e^;_WܶKm՞?, ٧K*x.zjFgx3/'R$A#tJU\\ڟZl*~U9TTTQNYZhuˆ\U=Ci96F_9/V<9n)Z֗0Oðpۨ^XRw;M5aK)lfKoa$vn2Ing^$Pf')>(8 DH&3wOhz(X$!J+@ qd2MKgippG01S b" ,k2˜]">:i3# >_ ;3t(Ϟ>ٖRe~7m,:~ׁdF/0s,]\`zmsz,Lt8Qr~g{}dV!)7:4J7sEXxgr+& ,J_g%]Bm=KUVK̊$ն4i<ʴt\19߶AD{_Q3ŽuSr4[ѽ& @>b˝C?[qF4 w_,"M쳕CGjolhqhr͞KWQMx~ZUuyc~ӛN wώK {Lef/q6W]mV:sLu{VQ°%sWgݬ#և26窥trSV[+5]q(I:CqL۰7쭶j_%6sY099\#\~6nUur@&׿ 2 jr`@4Tz0ڰUG^UG4tIs{fX?uQ5nB.od)H]2Բ^VȃqV+=e|kr8G砵_VfKGߘ̦ŵl##"gk߆cƚd#[ɶdž 9 mzߓ 2nlq9jjk1o}Us]MWFmuWEt8vȞP.^[F;xvIW vۢ`&QƑ Z_S?LV,3p~vLүj_iܞA:ya(NkY*".)Wf}S ̆h H/66HG^"} lH, Ez~‹bo2M8iC/^Lp^wقL4SORpR&նt+1ܐ‘`k'2so'(=6&?` m@$qЗ6MMbό唖R\kKÚIZ٩RuS*Mhl5Pt_<~w7߾%s-v[ﳕd/"sxPUdqh?$C=C +IU'l(3nj 85. 2mnpKN]yY袸^G&AW~z:SÃJ0ť'01.؂6AEHLXe5)qx01qr drfTuHD>,;Ql=cu0GPtt-QCIePAE72_)7l }MG0u1-H:iGf-`Sqcw,#: '\3<%'@lːl b-JvGA-pfuv,ٳ&.UCX+O^(Rep[Z.ɧ`>m|>8槍!JidW?i~p#v~(@ސ0B$Nҝ"h?nuSXGXDe=t&/^a 5`6GُK7FCUW4e:kV]#^ݲٳ ~§n5Pdd-Ek}^ksM82_ya'fj}?hNpJPM$l4?$C*_OUrTgQ\{!y߼_x}QmX~ڭA۬)߅K%#tLľ(iyJ)3*#rWN^k?&=jlN2 .)Q(? ~Q76H0 &S w^܃,F8NC/a0.>^Iz$= jNyF)jw7B\'RLtOOt 2AE&P^- `VGgL-J@iclEMuEh?99ʸ~q7-丒OS"F䥈W  [ny D/ygP(óY}xTK l5'nzH9~ߡ?:7tp^$|_Lln(%1<:;enWmn(6 @!k/B9<6|$1YhS=u_˵~3ڋ qEqSt7(!ԈW6S"¡n8mLwt OI8gb K2\6=ixo LUGl_|x-Г'{A[%wmrgonj39pg@5p&!fҳ7 33?nm{y{`d{"M'Oӏ[Q|nVz! d$<||c6:sc]{8#i~qq?r9FM3~K/0 a?kdzhBh˗/7^cW.h)+;|I0l@~s<"&!= {d '4#_(rgU`bg f2}?3J :L$> QOD2Cv;?G:8h^fC_1)f  ~F'GIvr9P{zUeTh񭷳06kZ%0I@9蝼괤C)c(IeTV>\:Ï;]OΰG!Ui!30@:b& Isif w">D0R4Et]q2zhbЀq30ڊOJ?mw&s0IHLӳh.h>I֫!kCjUr+Wa}ogJ=X#+=h_w(>{pp;e0#.b@ '>B]'U6{Gn&Q״.%|7ovaWX`§~kjӻ{5տ]qoH_x&i054[B]%9]0p?anN _Ӓ,'X9yo>j`:ld@q܆`wtr>jWu/f=.-XFLK7@kB'z|2x^k{6~|v~c;Ujk۲ύλKI8$ r)ȠEU Sdm#?y<4x@e6IGF;6$ sL-:~_wOB J55AB`o:s˺;&) <y&T ?0#+ؑ!E?: MX-nwf:KSB0ЫPe)WJG;GGhK3TtIMCfWj}|4⎟* @H~ 0޵Ow 4{:,>ɥ+#rIǰ'3ޅ7)M*gw*'{yM>0h^`;/h$iVlvP$>W` 1:6zMדy}$+>.'cIlYFahհx;"7hs4(Qu!F>NH[Mܮia7EuN{0Cty'#4.pJ}뺌+N\N6  [ X:*jI.tBUr/=J+f^>r1͝K û!4!P̞qeIc9*|I) T f˖>)IR1)`O}CO t*אbD d A5|ﷺ'G.wƢZ 翐DT&\NctVH7 /tl=1/;pk"`ĵU;y,q{xόľ[_5|lt:/E%Lb'ƾ?|\bVg`Ԏy ##خju\' ehƆy$d'0.u#'5#P.C8 02; y ;=+x/&چFFvŜd'LSm7\#(Ln3W@1y-8rqwĻ\`fYA@Eqd]pF`ZDi9_vjTZEQKF {S!#N2L/"`/Xu| ( $xd>2Zm|gNqXŕwz-.@5h1%$C`)8"90챉'򄺓th9h[MtLumM7.7,(hACHșI1u]J;mkK7ktf7ƍ=x$Wav:<@loaoMa} n].EQ\B2}U  <_ma%ܚ*j6rss":udRl$y$ {T1t)bIEDiG M,gj~U2HKD'P{r ;9 ;ك5#Lɧ4D5aNa( P0 o0 8@F:MFv˪Ѻj*xmˣvL7Tq1Ĥ @ɦ: 9'u6-mNhދvlS2+W8eo.®h#onp*ݳLM' 4&D {ƞf $,7:f9-4[ՂM3w,ζX%FMf|r\N BC?/1aŸ,2M $T'XE6@}z?I)b9'ILvdޥ*rS9h1F:=1(1pbg J)pEMub}ޓqgdi23' kJ\v ߜ3v%4¿^o0I.:EEig̓hqȤ9N|E!@O&:)gʧ UZ{ `=Ꮶ ?K S8D}rO"<:X':tyt.^0B#Hbk'&G,4\=pfQ -]@*ցLݟoNn1]smIMZITB۬qNOً'l 'dAPB Zhar^U,fB$DtZuQȇ2IrE͢70>谍J~k!jFgX f\4";;4 sWZY Ó~k *fTeՍ1 :7!<=5}n$ .X>B,Eb+SjPO9iW@yFO/֠;\e_w{ Xn(ZhR_ʀFr ;ᾃ(E)1q.ϯ7?)HP %] լ6ITzzx@>3p?qv?{?Ga6 f' ;<j40͈F臬nm}x}wey0W~w7l1;ȉ }4gcnِN`M΀v[no{g\-@?H0*p1(Gb0XUP) PQZ ϯ2_su#S? ]؀z. -uW9a%#" F48H\(Uw'D^lVC CR(yp{4fg2paS(1&| >¯Ȯ#!--Hk>mhߌT7>$n N-?ˮC>;u!Qү=Ԛ9җC,9ʊs up 4~!p4/DZ%Yۡ(cxМW\^&(3,ˏK"xLm%QDž+5J`m3;ߐ+I2U& %L#$B`(Dna[)3.8?1GuS&Yh RsRO[\Kh4&).HGTzh| ZxW&U=0t O.yҏ'a4:}rD?Il68ܺ[Oɻ|ޣ/чGϽLVbdϳC)gu|:q sLSmb"E>&,.;0-9%`?8hx~ kW/%OwA8 ?}{cO0V/HvVq?gg+) mB #DhbdDġa~) zaK($53av,${;I`yt1DՓ&g7+#hnwpW|&"-"ՅΏǽ cW/ >UؚjkmHsM 0&4C^8j 2֠@XȗN,LFwOfkL?#4yfHؖ1sAO} Jȶv*XWĭo<#nƘev*3_)d5{L~wARvyIx&U2xcVv&@:9,k2q.+CX!Q \|?{w/'y\DC}~PRZ [X`4[tS` t*IF pQu2w27.q'Msҟ_ / W'C+CP*:V *_s3l$e7T%PΤ4ӔMu7ܴ >aWN/eEEEE߈;RϜT1A2#9 @6:VM9cb\%|}4ub$ֺk3g)j BNRCFGCid,3BpQOĺ9/F\?n]lyΠ|zcQ.mt ebWqya2YEfYj7 "e#wFV1Ol>1qY< XCpIm`/EZVgRYOG>/O71 2?Ǝpj2 g8 H5d ,Ҩ`>%:-<; G)&s@դ 0V$}OИӐW 1Z(fSF!jz:9c?40QM$GTT[}xBO+46N:v~޶˓mmbnkhw{~qHȊZ'.l}J, FO^yH&AnE !J501,#,B0 9)$<6J.pӟ"I$gc,^vh`l;} Eqiw !eLî++g r$Vc2;R˪y!a@~DC::n!Lc_ ;e#"ޏ{ay,D~/ҭ7O,4m -}h|䈶>AM̃6X, TO^7O51k ی'ݥ? Ӱ04 kFᢒh$=JK)u"ZWGcVe%1ԪlG3K٘1[l(%mRΧg9|[ҵ:D= w[2);dnvc꣦7\ ^y+w~鑤(0XޫyQcn )^:='NQnFK-V`cŃ֫ך sme޶:LW251?$e +dIHV &yGYcu:rQ ]CN?Hy]]<`{u$c2DǔQ^]0|58.!~%wd1+@톩ߜF1P N,dnLb6b#g5oxiؙf"w|DF lCf"4ȋfHX4{n n7|z`\_dqq qkPR!IYFD~5&Gf7Ɂ NQv/4rֲ}#ymoPBq<"$sX{fGQCSa*vv7C`ُ\,=O$2:%}ϮIrSAH'Q. rݟsl23v 9ۀ鑏xG7v'f-B0n (D5˂zEppN"j?0M؎nM|c+߇F: dc}ۆs^%e3.OZ 4mmU?i \{J(#KY7{jKe"Mh`j r2syU2?zz 7OP>YX6<ݨcr_)ũՓ*ƛ\@8鵇uޣYxzM)N;TtUE:gn|畆YJ:eᵊB{]+ cRNn#/˽+iJ|GsAJ)zT=[ZϜޏAG3bDìxZ ?*`bL'(:Pinڥ?A䟭o=qs?7I1ca(DDnJPYrYؤ*ղd&&B4Ɏ' /u,e7?1J/tTi~cE" *"#3>HM r ɯzpN86`~Xt> K{i@.`IdYxx/踌6e'ߧI M Dyޘ.,)ksܢbaw.)Ŋ:G .o~x&Њ?ش^߄%9ф)I<y}1*P<}֯C`0)B"ɡ18Y.H'ҾFaa^W.6+/1Ϊ46\-b)][x[CUX&=&%$o(uL :>sj)OlpMZ݄vSfl G)yG2^UZ0+\uCNid^ےӲO Euc>f IL,EUҐ<1w:s,KWTE=/uLg;dzKAzUsb4= LƘȚ^obPSR} ;e8 2-?;@Z$s$"6.Ҍ3F'"}6$0HH1hB* P A_?<'2qbTX0֊'w^kFkf-@p dVRZpDj$i!XCFsA.]r>*3ө x6#xm% vI'jM0v,ͣJ/\YHz ܮ$vڧp:5k\#6U0*Q0hdcL8C K^I4^3'rlW i+4`Qj dYěN>b4ձPCmWY4BA&xcItܔѩʼ2!{"v(.)7&r^5fa)?'ȕ19'*{Dl\x'_6O*.>U֠w8/ E _0M`yh$<]&`O$[z QVy8ȿvvK(^CDB&vf0EJ\M'>Ҵ3qt2rq}eQ![|*?^̒,U,38iķ!pp%G灛s'AK!՗P$skx Rn8~jڨCx /WCnA-VX [XA[ uv`")(',lFiB8.k8`?q<xꢂq:]KJ F^7}"'_2dpN]SO'v}R4yqaAkC|CR5\%I6 u;AGQ9&ᶷWFBs)^kC:hxk^)7 8+ġ$}n܀t:F[ݧHY^QM\?5AX^xSit1i$s3ĠSAbK7Y=iҍʔ~"\Q)ayuR2`PD.,K`ڟ$Ϊ ?.wM*#.h .h>]$>mv3Ku#:&-$ЖBI!7. ==wwC 6Yہ=FeK$@6$4͌FhcaڙþR/s,Fu!\'YvzԈoNQ0 b\6t g?'ᨭJtpwZjkv lAjk [xzp3{=ķ:^7 3nMr3&@UЫr|$v | PΦ8|WQuiE͂>;,e* yKmdQz&ͮlYP..iRƶo#ipq\%Dm= `zS[ian`.xGtNd\' \xUÁ #t9m8F7X*j@$j_\F]oE*WɉEsLo)\{o.%pr8&恃{N~SP -]}:}Ud6RdZC ]9╒gksio]01*ZG^#a ]ܰ"*F Yqhx1?@ո䩸d-b.5*X]J6AAWa"(?|X$ca8E~VC$֊;S wF:ѯeRԪ0Dsߤ{:E8ѥq*DأQAf\Y66HaMna2Ooy`aJt1訿FXpsrTSJⴠ"Ui:]OG>׼#]%j&N(s9 ir`^X$CaךaY;p&A!DIcrA>Q 9M2Jv Z_E#2M+m ΢z)9j8"7<MJsxj%[Y4#_cF5! &Rˤ4Π9D߮kc)@G팢"@7cޯK3HO?۝%H~\7ջ?YS?|jfCɑEmeSGq)\¤86TV'3C@D8@+M*X)4i(!θtÚ!nmbDbĀT4g%,'g w .",H06` VO>Rn.*|{b9|- 3Uf 1 pA>].*(5mb< aJ$țcjC{~ǃn ! jh[?1wBk)L%*D](Ԫ~\8dC_4RRYLs\i:|E-<#4C< U k0[#gӷ AN0#i1hλ/ɗC:~{> XC dOO兺x\AKD#BBD Ap@w?dO#'8>Y:f 8.hKzm5B}:QSt&]h"sv8{x;`%)2 NA`K",{(e4IurwT|;ٵkP̃Pkځ*TI)b cq9hc}}k}V͉qtߚKrW?q(..-U7PS5A- [w^3ެ)RhSNs:~0{܃ 8Fp;&Q`&RnV%ok̤>w%ۊኸhz>t4 !ڕw7}၇cdilr8V92g 7j`L Ch (pYPdi Xđ`da)ܕo  ޱvCk4Y˚KJ+`qIm.k)j=ccSb!hq?*]M]ۙR-8 zKR|b#x@%/B>$!+i}BmԯKfL: .tRMk&.Xvz5/TpsBkF#%s' 0&7hZjw޽X S-C&>VϒȔWw, cg^Q ;A3Msmd>:Ζ|b=CYK15_^v^t() /_!kt{:ųpoq UM"Ҙqy#ԕ>4ɧPw$n''/A :YJ(c߯9M סJ14ޗ/*@Hr3ק+{ى^3a6b n,D5ٕg;gIT Sҝ$_GLݑQkFlIB/8߆"LR=QɂM}Gh){`'t^Umyd`kA:n='< ܧd&^p#+jCb xQině#(6ToV^>âExMi2JVVI+i`~?~PxoVVsz:n:G_}|ү i"P 5j'vlp32tD d|lgá:@:<@wViD"E)r&ts۠Dwt<9%}4uX܂\찟CQ vw87~4Q&")?ts M* f q"(H4DzZ1x5iY5ԟj^jO3dnJyZswbfd:P}:oKa ofvo|3Y!p.Ž.|~?t結Z]Vriy%mp?g8hD⾗,z#W‹3󣪟C4#|vG7OԿp3IBV׌#. L| @tY54@85SMk"s@W~8D_`2RG %2[; *ַLc)T0R\qG~H5ӕeGg34Âj FF+.G5{\Oj,b']R=Cb4iL\v^Mz봳ogӖ -Cbq /{_:hYCh(\ek;)}{ys9s5x2.C:.7Y@Zot9ө.rvSq!yD?d\7V_No.|v\vW ;,o0~eCGX\5jA#҅6'S_ 9忶rv/i)ִjB[P6hsF+.'VًXz~8>!o*9^"/IpV%YTawkNܐ~4&dbB7I Hr%P3

En;[ _5JMQibjN-([/ ?^Tb5Bk wV(駢j䁵ӬøJ.H=$:7籑3gn%-g#B> `qf+t["3N ),xJžz"Ĝ.$ )m6{y#V5E${ݱQMS"`x7,n.m ^ aCC4vayppQK0@qոR ?d3"~w' A"]Wzn@@u Kh(JMx9ki(bV}9[w8RhX; VIB`M19q'KM[EV6.B~rIq71KO ^FP%._n0wh=]&&C9ȅS!}|a<[_08'apgArD,\]O#7Cit&^0zj jtXT:ҲeA C7k` ҲDB UZP'B۫!8^T)+6ӻ̤Lu= "VԆʫ`w{[1xF.Ӥ0ȒI AY% #m@TWCoE^з4,H* 3THv檆g?!#$3+}qAm@jF.ƣ,FKaSszfLF.c|dLjkzu(^9Y#\L8!S!=%1wf[1!т&5sA `EnXH0KXѾ>T:QN$-GpΔTYk%'ЂWgLM9hM*n X/T "DuJhneuheuH]K7,Q؏TBǤhxgaz19W'6p}~t@8Tkz. 9k2 ,H4Wk6Ѻ5AoI6oѿ9 LTMT)=s' ; pBb74`pe톽po:͢uPQ(r[l|9q¨TaE&j s#m6\_GRic]*?Ƙ ˈdP`Rc/Qqir*=W=8u]ePq<ɮO/yϓqk2/lJt*tA/.'}^|\#2Lĸ/tqs˽ĭby5d?i y]w%', E%4\`VUtq)|f^WQ#+3ȐȐ,2#¢s:>gN 7-L'MAv0mJ$|:s}쥑/YlMĤ8Σ!ԘќP_"\ @Xs-*܂Bzwd3@Cyoa}ο,8gCiY<:G~IU9bC>ɗ[MUG\}gm l I b,nB BD˖6]!L{Y5Ҕ0ֵFNaꡘ1Z`wQiިUs&?I 6 =;6 uR6K%O= vbRvImE4I?}Tbǁ>p]1:}ԩhZ?hz{IԀ1҅ψ ۦ~ "5ݐixoŕv<, }pI]?Gu\M7no :'>z\Q[}Fp p췺5wjѮA rE+s'"E0)I_8KN|mi q󤸸]KvU^d~x=`tאּ F7ዽϽ,k/MR- 3d^!K*8$h^ED0Y~EFTrF)gFUy+rwJ&a ECgyFAǏȣL"wi9%g*("vZ\ɎdymBS6ê8>R$\Yݮ1fN Y]3Pugav-F$k%|:iig)U ZđdRյ\"ن4}ڙg{MZهNC2iEzY)]s;.^fc^,rZrIO[UG@,w=jxϼg&a_P eg&OA5l96OXxݽƦ_ kEF 6uyGb\Eq SEF_rC.oEGe"2/oH CBphno݇<3ߟ۵YeJZ~l{'swzoſ^n #Z\ɀFXG-efkFc>]$q7T;& 4JHX-T#&wJLgK_g%sUkNgUFot>S< 4kBc`t%45cpeRE> 3/ds QVGy4KfWOodnrkwgYzG2 )1Wo+%d^\- Uikt)|9raa8$.%CVK25B`)]tFmmUZEw`wIY[ܢUz~H" TE1 91IyHvpݐ]b ,LR8rO L"hqr^u5SpZ 0]\>6+2oۻ5(V2+2+r+$@@DU@:cp]UWu5%Hٖ0BebU&荑Ukmv\+nĕi ejwfu==%gV챍]9qizJ@L r=jSnv_\Ά<^&}PR^YXև]9P9KM%jkGLĺ]O# 9N!8 /fz$'4rTyP&ɚRl r.x,[> <;Iv;3c$+Ľx >}rMÌ|>sIݻ|p%}HNV;GNՓ-| ­][~c )%t={ښ<+8v>oZ #_9\C5td!ASYWVQL>fU'huDD PcdmVKP{ZIm8P,CEɦsKZ)CH*x \\\"x "WRHNEXRb;P˵1CcNgSRԡ+o!4.* :h0ܛ'Gh8U kʂz| )?4H|+P 09 8 }t\"Up8:y_aHIvh69Al.Z0b[8+O2s*bAh;*Uz5tGx^;=4+#oHi b䞕rMHOqtN[S7r/<9H$ٵɈRYc9ID8˵d s0`j^Pa egث,C!><5$dwb_t#NѮlCE(/'X)I]*Il|e#oō.379ȡ@ gr#: +rW {PKY+ ~9)P;TW $YPIC@$"j#kH1K19^4^ ħ3uAklvq:#USr7lǛџ j3H=^׍{&e"D1-=RX(5cuXEK+x\QoGD!P/u1Rm ) R+̊VoCDJ^Ö.vZhIB_O%iENT &ڹkkNq967ŦmRvM024Xa"%oɵ;u"[h3MA\*"\4\sB^EB➺njZYok-Pr4D#!G7nY)l(TNEu,u J%nR)FOwps*Cm*ʩG(ʡ=zdoݚ{U [MLeͿx`'d حunɧʊrOd<ߋ=4rCI4*dJΨ פ k *θ礯PjWCֆ̤}1~jWCֆ̤b4Լ6Ԇ N)>YBqpwov5mК ە Y,-}[TZR! ǴDU ;eUx\I6Wi)Y4z4P7 45VhPEĚVH>cw`REp*\B2)p=}}|xcpq/v\-hY}xޢ=otL!Q/"}GݥӈAl&a]i>Ț$ or ;xe)Ɓ| f3ĄaHx ={~?89I3Kt=zXrqPa#n=_[}6s1J /8b:pz\a'˪9v<"nǷ5-A L *+i\t`@rrqU!2 %`^!DF=[,y+?4\( RN$ 'xD8EpG} w 8 O.BEkArn) ‚O%woxݚlV(Ig_v6|mj \Vϖ'p1G&ˍ!cW]8E! MX q NŬi%;4 x."h1ft7m' 4[ s^~Fԡ…cN2 dT_2)(-ZN:+<#?8:i^=o쪡 PĠ5etC)c q]F.k@m27*S^ R7K*U^񒘗D,eh9}ywtpaYd6X{gۦW{G+EKrpt=x1qnb/3 wjjE%`\O]y~%s:Ue[r  w.p\A1v640 viUx,Y3kERliPȈ*-#f~#v(3aȁ 4>8RB[(8xHWBGsśo5Eu4z!kA!Dm-\DEY.Si!F&[Vk:VPmɂ8@' I7j;Ed&t.OBB i48J] [BY /$98 k_Rwoț`Ʒh7)m"v 5N-5ܮ\QiYft'Ku^K@(x=gˣ"Ͼߴn=X_q#Z<YSVq{o׳8IK̡0: LDzǩmfn&~T[~{K&?6%fEt.k4 t9a:ͮ,U{')wv,L[Xcl[pWبRd6U1Rq܂>^KM6m(MEr$ZY1\CuI\Xv\f,A市]vAEo؋Ҹ.*[PZB*R:jB- ەqlѺur͊E2Y+FpvYo\R˪{<4K]>b+(wuuRYs*xAūQ{| 8(~Y;|Հt=XVD^WA8Xw:4I UNxG`Bz57dsT$!yt}X&F3~.֫DnO[]jWD *t^RM9̎ rCd9">R'pg݌a(B" 8A$^0!׉%hfx~`"arx,Qb:@v?n' so|~70HpԎeuDWڈ 4\sɬkga"QM{Yy* 5%4Md K#iP-DR]ל" !ԻCb_ FHQBQ:RVIԳ/Ә;z'N$nqX,jG!'a֫b D1D:3ur7Qy6kx/j Av+ }FE*C)<-yφPtD0=w} QTSԼbvE)Ftl=Cz)Cw>0pj%<̥!;B؉YnT)iJn=P tNǗb@KSGP¼UN{EK~{X,gG'f; BdܪHkI$GX3}8)̋#.Bu%"fnOJˢ%9+,$Ƴ,7c6.)$ ]v0$h+ m!"2B[Mn"V,\SA-ru)NIM?gdzUee\ALrFeLV{]- .;kVVyeKG,Y@Kbñȣcp23l|dHbCMdYE_Y<::S]`h)|GXuN<|%QzƷD $Ik)q}՟~zx"!y A|[ 2ȅ]SfLf҄h('S'o ð3{Z .}`0Z[A “$ %'&jdu߀EMi,QO;t?uѪes<(-_xdlm$ L#4yA" ̷A<9EO Gyu4,W#aPt>&3L>9(j :W@Gx(ɵBEČڧcqU,ٕi}ur~O#+b?Q#tYgºku"*{r8vAx5`{YFug?'LXw3=ayNt^fp|)*dO6ydqB M8)Rpi=v=cRS=3 th ^Ӓ&f?l}^@G0!S$+Of?[N(rqVtjҌ:݊ے+@diU*nOjȱ}N5Ȣ%LZ&D qƩ21dإ($-x0!DZqfX2L4[f7z? f7C"-κ j>Dub׆9HK'~7*c,6w-fa!/Н<-3"b\C.jKS a8IG靔@ѩT ϫIqio.oPh<:?͞r u3syfΎ$ [cQ~$upR6#b]Rfs4IG:%kGدF#Bi7-fL몕Ei& rLؙ{$̑qxO ɥ,TsH*TtDM fT-CUcB&0(}\`K)_ 7OL7r B[:"ߓZjr>U IK vjɱqL7#83sO6uSP9Iɑt9xKQ (1؎/]$Rvd 5BC\J'nSg\o]ܶ^p&uxӧ^M['yDַ+><[4uRE'4c RGgө!tNćAɇKHLFCM#ƣpai.ɤx <Ѐ$S.-$a7,s53/^K(U MNTQ)AKv]D#媶MD.vʉ`!juhhnq7;ƨs H= o=3a+&.xfϢg&Qƚ5[N6E,e+1I&13l#!i5!vv,oG`6#Kd]r{EX)Gqw5}n]88X9`1!̲ophRZ\h!nٻ1n/q{Z9$[0E1# O\EY}7,m`uPÚ2_\;vp3պU8i)N7~Z'{=s&AH!Al@&`d3]vYd,L1 &9OC4X]N *n3]B6uZfN{ ]ӍXzbaɔXa% ^fTާ{ۨ4vzDxy02[m겸eYz*d~J͏mC[9p}aWƣDژFuFm<6*(Z@36_8?r>eP ve*RZ+мNj]?w9*MPJA4I#U-z1AdQ}*b!>L`q6p] |5Ux5k2%K c;tԏI*R=j,GHX{( e%=޸K#Y 4LM/qz,^rC$7V,F_^9.ҟK: cv*4#E-l'AjnӊzkTl1_!: 8CtK+K @cg7UjCsӊI#QY>T0K?|˟* \SVמ3]KQ$> W}5SU{.v.0Ns"hun]gxP+ȠZR5bP9CQwkwaydŲXFLJ"T]~~nWXQn=J\.~41<mfTPھ7'刯w[Di28I&U68'ã1ll$zw C,<fI " 82MFI|ppDCܦ4{L`2 cvFҦTxA|9 Lq8*w|js͝U"cBෞ83]CZY :9Xui.p ԡWG־ƒ Je_`Z<-Ji`7rG gSG1Rg[$,$B b #LfyȬɿ&G7hZ熘n˟ADrNDg'{2wM'i7NYqo)qiN`$qߝ9XؚإCn:ܕ~/xjX"ZF67VvZ|SRP+Au{cX;[nZ|D8.]1-?nx)ŇcO=>>uv=Ei%.;!r=̺XP gX͹[Wn^ݻ\)H>CqLðWsucם?F=3:I<ųa~8l E%7//aB>;@pݷeP˅qճ+zmy^"z>W%,{ !bN='o*_Ƞu>d 4M( 19nEk1\TpZ+ YKlAMN\hRh%5d$_Zc]_V槨Di Ɲfс L_aKG3ڣnbd8k1Kϝ3-Ib-g4*Z&mDUjLhגYme;TEQkQGu٤esm{$LQ"HMq nDi&5.y )}s;j s(}>9Wcǖic"7m&ESrܦ}m.Yi?tN:{\~JBA1R:oex923'"(DkDSOK-ÈOeO'3Ê"R^qhǀa$̬`>8k_ul*,賸e LgIeYE5[`c&™Y-`f6QW"2xr g9sR$3?;b=El{ĂE 7а~o]RλS ^(up)^MSϺA`,zj US)K]qZ9beC{CHlW;g/Ynzxnɳ<+]t:~pi^׃% bɠRljt\*MZEt1؏U .1t0po&5\J7` ݾ/eb;1urJ ]dp(0ז9@/T("Yr+jѴl#?Ѵr-kyXQ i4GDeqPqy˞P]3;ӧZ5{P $t)B*H䁉~x d d0a:'^!igP*9NOS2^47]S.Y6-܃h!H6Iڇ}ԲK9)?gpŒ mFTdͼrh޴e V2k2>I^m<ǜ=1] YO;lrkwHC5rVGG68N^0:*kctA.d6f\&)1߁rzl?<c!T/Wڃ?_gr䤈͚Y2\*!]g8L2D8 ӦؕM!q4PIYtѢ+):@7D饻dvc,YhYLsbf9EgjS^p_*&zQ| L'Yp{MIW[å҄_M.*?'Ď NOk;no]K)>ɇދ]aVLtO<ݎ.יH҈L1=DV; JzB'6E^ &CopeN<>;P`D&7WWx|]ftsgN-@VG_;W3l.[ zd&:]b 5/J2>ymatn_fmٻwst: S>t4> |G#&Z 4HG]ǵ$Uxʔ ԬO,7c wZYYɟ_>u^AA0X"/C qhʤztTVHhh GBdz&QGo[UB~(%Wg{j%Ğnfs -qZJJ$G-9֌.;@_nh1&Y$ g-cObH3]v0l ط[ I?=1od;$VNQ2O焠AaڔpR5@ { ?Y՗6z5,;ƮXz(!9בIU8x9tr[#Q|WQTu/-UfCuNnLl]nRz,EQW "!y?$xt6cN 7~(0 uTLnPѵL(W4$q E yQ: ƈDeLCtNQsXJ*: |CR '[U@(֢dN/1Xj{<ޚ#)ZQ,_}uB2/kEli)PHn锜(,#Ձ?W~L.D'Ӆ#Ji7M7ϖ>o :'@ƛ Z!{$m摅ہUUkMDzu1š bA05y)gQ:oH}uSLh +,uBYsNz-J.#X*+VC2y.i;^N_ 6ׄ 8u^Z=y4k8՞~PBayM?$ 4?$J#AIuŵ=.ڨ0G:Dg<<>2%-=9%P ?,~&Y^*k=&=xl48m+Je;싁"簼i0ڨP.I4*Q0LO0yWMr  (w^z5J<fϡ{ qSw/LSLxwQzY\z_;wꘅ0NK*g-AЎclI<^ o`M.uƁ7 p-I!(%9w- 8u~MLsԤh"C']S4v\j B#CF!wf73 ^UEJbvԌ|ㆎ>7X iIn5;!L)Rry| ,^l2:G\Z 09o6uU[zI52r?Ӽ9dMw2l {*%+X9t~SWSH]X3PYabRZӵ֮l;g{YEBY]0e? ]ojW|"vVXe]WbqϷcC"C'!~[? HA9܃p2VhrI/A iUW0 -0`92b [tEffD+̀aۋͶAf^e-7Pcz6Fqb~L]W;iU^ (BwcN-,`-Aoq{ON' uE'ί< 4(@isoѠN[ F7JמЀ{:NZRƂ0+|w 関5SoԽ:>qtw-&,C UhF>3qj "\]>ъ~㳬s49c=ڕ^/q]cK2{ ΤP÷HD\;#K.Rhb$=OӃs4ajd3=4[t BR7v&B f(2G-6 j_1tePMʜp$~4%{-)D,LX:uI}ˊbWK1hN-,ot~<">])c}k@\,+ ]rHrCqq>F ܫ\s VeSf} jkdYB]R&^G<5ᧈFKSYܘ>t=Sg>8=tvCBS$lȈH| E '=vq=~F hsJBɖ O;N룛C"wtHZgyGÑ(T#H֣xiT(*=s2'%ٜ$#d2.cFk.|p&+@]"|>Wh+?emy!lkx_1~-& { 2‹9?ûc$ Y8+h(~!/Ą4;ب77QDaMlUZԯc$ѬE;=.]æőH gǧ@āp%NlRw~+!SRO{ΞჁ2.}?nu@ RlFdC""G{IDavtO$wX3 Q8DfNvvr4 cb=\޴8U(;Gg V] A*YjtqDqmXim{7+7)v OsBR6m~wQy0BQƄ@h-:Jp 5MY%Sl+GzjA֟qNdz!b փFS& iq'"m?ץw޽Xzr;"`>̞?_e^N^otф#IGh՞!^ xl ok>:XV 1^b*M˗Z_u:Z-M)ƶ<|mEwH]xZ;[~ILJ!!o'AHnd= #SI+ H hf<&O׮d/#Ð TP&o+B $W'@H࿍i6QכF@܌@ow&svȒ3_rwOLəTtVP6u+^evhiv(t(zeʭd4񔽞Ko=CT:[>oH'k$}ӽEm^=jkm mSSSSu)`.c.R' c8>fp|,2I,'#d$vj\!5- ,B.[fmYc,|SݙSYƧ ʳOgXˆRC ԒB-~?~[|Oz&Y<`m RW^EU׽D:|/|JyN}jzֿ{'>E"_1)Wy-+wQ,-4"v9m蔆Tk5Лoo..TˋK:"Tat©x{ϦR.6#=΀JL֌򆗖g8 h# ]g6}6v(i!jвlT»667u _Ug8MeR(@ oadLPo L'a}ti!r(D Rfp[Gx*<ּx/ B ڣWm1+ `8#q C ]ghޭ|1$Dd| (&-HVaV *o>{CSq)!dcO_ba*9w޾#Ny,{ʳ{bt[ gɕytO>h`:~\Cܿ 4b #>w{ķ罺8g'q_ގ&͗urs'kWsW#4H~n4}21蓏Z P\ K3;pUW\#2%QFGNfx>$f!:1"8};Jµ'LL)ۃ'ǂ&;U8=8bCV$E =FEnϔxMX]"BBuE }<=V< PiG7!J$(|%8ɇb\xz`E`EEl{|#4Ÿ >uK y)4M+=D`&Z>2C*pMϧï/^5qy“~LA=M1A_2s-dH;O7VخiojWYg`n/^{:rYgdr/垞ͽ{FFrYgv/^ivrXC}-K6V?ѹQ'k5MfSہ#vapeE9Z) ;O8v8݁W{VaK{V= %gT6ΚUԖJ{=y"Kj,h$z~G}Bk`ЃWv@@\5 3TR%k꿔J+j.z]+4EEԮi)CZo(%5exrcq%%xGo2ҵ wV1OD=X$ԟ+V)$XHշl$\\>uޞM^Eİ]ՉCۥtotk՟Pg)د?:}@ meZMt/W%NU7S[ VCJgynKGU<(!9>zg#{yFw ߆^mlN .V޽>O){=fƻUa]J;wIoR6x٩ _$"1r=;KzB_ZTz {;g>R&TɳL8S{%}w@߃\w=w@׃|W4==t4 =;RiT*)P}dG{"Az$wGUs:r¯,NA #N#|&A}GҀRjjcC5Ht 9Ⱦ‘ Tp\Ifr\eԑ1ڶ h4˃i`2JY.]Ȣs"E|Ď';|#<Њ-!GRHefgfOrU&'Yoz>e̲fY Ywry?a|CBoL u;NrT-ʰӦyu9K(mOS{t a&XIwU+$޻5r+ɓ6`dpz$ Y:a*ZRKaOݪJRUFa z=9ENlPÐ'ݚŏp1uX͹A|K`\vxqE+9Ay8 pIayu,;b Gyt^jqatnpj Rr"$봰͕/^Q6OO,*4dA Пl8#1!", :T~ԃY ư AhL;`ZC |7tXkN@GLb䱕4! !5!poBE1  hF Ԃd4ldV+[&) (R6{>8!yDo#f,1EA3>71>ͤ`]{-}H 3\Ø9 \7"a$G1i0#rF@0J@+6 r$VW1yW3=:u$lJ*ϙ> $]΢[r'ɍG7A\~CfMꞜ9|88OΕZ:rRm]w^ ?ڂ|s+雳H+DP@4qDWe=nrZ_5:*u6}[ٷ7x1ʔ/&Ly<,|$@'[6} V, V]EaͻI˻x8L&7<.%BV`N?9F6-Xj6 hD0~,6׋!l'xOUdkˤŕw3[yOa>%.ȳ:)G>\trJEѣբ)bL:%ߋMRi{!#`!Wh0F'LqCb'e&~ʰIR(q(U 8-H(i-AlPl'X(z8&YQ"qqҭsZd(<>2m u5^hʚ==ڛL%aHKqNrb{ؔiޟXǠM*!v8yG>fzjy "׋ v2 O/ں&]FtvBKS1"Kw kac2;TTw13Tgja^'{)%ԋtQQk@ZNy[0I12h6s2| `>Դ  l1v@Bt|A:]Uʱ|D\ j O8HsvjSotbS:ȘByӥr@nr/Jl IJo2fĪJ Y6`u횦uHTo ߷ld.̏huKD8׭K˜*2l˧l$uj#s,KX8m;!m.MMO-1Fym@:}FyX 'Ka$!h^ nCjCWپxTzك)iBi7 BG(Ϙp3̱Μ-J֪LClcxi2\ @F%ARߎQu߀jᗃ ৓#!vd4ǧ'ǧpeBi{Qn5Dv%2cBlrv -mBHƠ4Sm1=lm׏Zo*` mfpWowsKk,9w5Fƕgڍg ϬGm0x`e] yk{^< ? Iq Z[m4Rڋ]wAfv6ޕ+^[c8crυ{Z;O]@;p8=XH@?  ò7U+GM8r)hKa.kݘtw?:+n:iR8IuB~ͧw `'S,jOB,ΒE CQ/SxEޕ2$#l\ƄGt7VfPf#wV!HQR]P0yWI=iߒvR $w;( C0;`{ Ns'9J3N#GpSAlŽd} p-'Scr\uN4صrae(r+ oO:$kb;Q/E;/+Q`! ,vOz؂ωZ6Hf6=R<p▝r{ufOȔ,ґ;VC&$SnfH:Mk ]Ix(Eʌ*z6QwY*G_1!XG\ EE X)[6m(jGiY!p\E|XEXfa~%BJ ckQsf86ZFm\"BP 귋w;;bӱz>>|[k~޾I=M=,SeZՒAb<iU/>}o(x*uşgk~gk~4Z~>$rNR)xhtz){wA)84ot{[GMziHWiǑSm2ᢒh;Zդ7I}8>9O ʭWt) ?LuJ!T=D+⒙8M-AwG aqFŚQEz"a.n][`&4&eqB$T^N}e)vɶoȆ60p!J|P 3ЋFtCn(@}NW I,%2Z,@Pkn=VS(Pc{Cf#p8Y^p:\(RMfwU_4R|Er-Ά[N)} GDTd4J #LEgp yT6TXe (XATS.W9xA<@Q &.Ǖ4nuZh!cϫ2Z]mL>17 KRe%VrY FbUxEUK򱃄>+Go~W'2Mm:gfDd^.#v(6Fz.dfeY?jo+i|of15ǭf Q}K\5g}8{ ԏY8B͘Q7Vݕ3a_QCrR,&Ky-5i(a;&=gY,s9e|2>gYƧeL‚r23iud e;?9)c9+4n#I&UZ44I4i,'S=i&Pw.S7Uug4555g7eu8t*|#1s9|Ny>L,iJ hDI4Sz[7 Ұ6_Ң2*M$G d5=EjQw`NIԟ+MӨ=];c_NTY'=}Ξ>gOs9{=}Ξ>gO镣 gR3ԿPo9YUk#5tVF֛6m5kB+Pyjb[hyY+.-Gk5,i]FFE nD53+?:}|8xpx]\[INN3yȿl'M4+99p|y"9` ѝMI 0Əu40NT8p6!\8:T^4 Sab?hzR ,?h] ƨ"<{ߣ 'w qAL1J& a8",qahdDwhp 14Ǖ_ 9)yCO'h `#\ ~zKMDz-.X}\LFR R@j) nQ9$Y'Go{2hK﷣SGw[=BTyx\( O灷i4W (˸J#"g#rtV;pm ?;.2mnG?!c}LqD>$V}3Њx @|lnFityr|xtzq1-4­LQDINQ>u1uD;P/r'i]r1Vr7TLV6WeO8WVlWw`AMG)}9}x}r׏8GS n4 {8ղb B PRԫAVb8~E@pp4(GRwn7:n SNW#=(sи3( @ KBcw1Th ,].)I !&p sֻ6ػz'!)09Ω0uWd<H^0^G9qvY_zrcE).겚U"9x˜LQ|7s徐bݕbZX7LlTRGjxyu/QR/F""^*7b*.t#E9%QMQ.Uzȉ~S $ Ǜg~&`-y+LOZhd3KHƑSB7NZ:.O2 x,T6'v1YO; pP:RzUKiZrjF Z{~eiKkDzjo'^c̖<skISLHYkfk6,oljc,cp,896zȿ[7|(q 11M#[&OmSr8KM>A'Rr,'N/6VKk O Lw|My J3$-K3-xATcY4d=YB& 8W}l=Yu_A0bI ZF4x1O!_> ATNzP.G$> V'T%ȊT:ꗮv9RV=9j2āR7ՆJUOB*kP. pB)A@@d>TtVzTkV!^ 8jKր62 ]P.M 7idp#;t8Z,1.W^Z`M#QQصȎ#NᆣS2pX[wA54mfo0PF ēBz]^o4&:!k0 T$ qѳK'5?,TƦD>jŶWkM{iSS#z= ȡ;N%- RX,G ĆI҇5Q %c(iSjj-5`5ؘ:xmDSQ3=S4B37BFYH*9gnoEl8Nۀlb\6CFU3gO\˶:?-N^H ,QrF&ϲJɭM!cE%VL2drܾlO 3R_.4EFlV'wec;@$&3wV"Dr:/sY KSX;)w,y=^,seFkgʹ^1z9fs qZXZJyL21J%=-nŬhN혊H(fWJ>mn5\%d[wtb]y,Uet¥#4%薳LwM 8AIX.#ܺ#5 SʒY [UjEW awk<-5MQH-E0Y.6de6dEB 9ڒ+f%2f}6ޒ\LI6YD)6xb(Ho! $5LRl#99hVoꋳϢ.:{ڊYL-(iӻ !twt&PS6~X$ ҖL#>R_ CQS>ܣ T_g_g8\9ŕ&A%($Sq#LЏ.Eg&H6y^q1\82c@x"& Z*#ΞQf_ᘟ non!͎9b=p<P\|Vmf+#7D4a݂MdIW`sl9g (}d~Ć4 s4!7yL~;|*{V bY &TMFDg,:_7"V%Dެwɰօ4论>JB .|:ł{( 9?οhvW2H %#dcV^UTC ߦ-(UUխ2m 6LZ-ђ0ʠ1+~߶>QKf>8x#g+2a>€fKIO d[q4˭xXbrgG$4qҒtF)&DZU~_4įMm+̯Mok_[ǩ,߆s+˷ Q8djcdgu*tb1-%GFz;3% !,ř4a-; fz<$HuS$ƍ$+2F͇y47ٵ.+)+U-pE41*Zńevo"-B$.0QKFv_]EWQ|q0*xvouSA8+ ?—?+;Čn:?PtU+c)t<,-6}.an->L nM.A ց`B[wED[w}W."oD B˟,m>{9W&t?$&t(v݇]@6kMF׆`q6W=Aw qD?:utgujѻ-eۭwAۖ}A yr(b#N`T(/-1,nnso $!҈䫡׻J`LxXͧJهnk[~sNrTI@ $7@M;4 T  4+v|R[eWov;pj{{#5\ ˞w<n|^O4q/>8N @{{}g}HDr6I&?&m&?cX)g3"8 󉇘A;9w>y^y~p|x]~qyy{ WޏaHK/oNN^twzSpP:v7(xz?{_bb2Rr~vz\xǧSu z+6t)FnyQǓ# ҁ4YO4bڡןЫL~ lq%Q^sCDRنкb8K"GVg5qXH~ 6mLX '*}Poƻ 9KM\ 4G{7^"=ǑKގVzMZ OJbWW A"5?DRdD&T9U-hu )#i"Sɓ/)4< NJӓS?wu8;#٧Nϖ{26K*O> F|Mdd-bQ0F[v.b\&Ӑ07F+aYD^YA![[M m H)Q j`Uٌ<5qwRʠi&Geh3eŬ,B/<Q Rvnh& &[Vf,ôi;o}X`~MPaaw=2];g Kx CCnz^\x8৓#EJoʼq&zxDjwFu,BB/svadnBOG/WHR l`?S 5Xͦv "NMÅ,Eov<:doɷOg/aA渋i^l~,Q\|oG 媱M/.%&//.t"UlF@8YMV]x}MI3A)JQPr }jOiR%4!EPMp0+7c5/sda^4oK WFALgǃtB/ۻ,'.QϙacM[x3R{䩅-LB`Bne MҦ-%{ 'SozD[I, o17EkfxՓ p$2cW+l<o Yv*8QQt0/Fs."ti>JnU!*ΫYv Hcmp{fO.&8"qӲ2_`/RP̓1/qV:CHޱ)Mnrsu4rXVkMu oQ<boRZlPdҠPκQJ9Z߰p?4$)[IW؁u\)kFN80!G|̰_1>H2bӋu\[aej`So6辯᭑am%jdʸq.ak(kkUtZmL9ڝN{_34=(mF2܈4*1rd3W++ ㄡ}$l\&QH^X k}.J9w :uDtsm(Y$cʈm6'3+i$ӥ .Lm^ݧi P&*,.iÒZA7o+A=$Or,kmJDlZ_/җ_[_Łif:S[.Ny7F;v JoZ QM69)Ko2%(I&EE{RJwhVOJ<[W_g$%+nlR4]8߆$B?EkmxRk1.m7IBrPh%\"Ū2mqAc.*<7[\u'ԓQ> aN:K -#vnz(DE2<)[~>Tɯr){t%;,9u;!uDZvMTXJ9KsfM:|`$7C/ hAdj E;S80jApn\-@78Q2y/vv7WKir & P_z1b!B*NY*w}f=R (A6G#M:ì(aYaXG)V雄E]*aX*,HVˆY\IZ8A]$ja`GݪW(B Rzc@(hzptJr1&]m,S؃ p[CDw < 8OL_1PK&Qxϰ-\&E>Uc"}DXaUƥU}l,>DWBS { AIMf*G6~#}K)1g (%13}BvsVS&ctaĵJ\(uz"*+:`,ɶn)[+ ?cb]B+x}?H%`z18WUa+( I7|o{6)B % ViS\!"Ns^>iqi綡\6ק*:4PVB|?RrGxNT!S 2 ஸ*<LuFBkʌn9(3u#X!Vq2 7=BgpH.~ X7,I 's0:]ld؝Qfgd#DHa\]6GÞRfYK8m7"x˓ ca'k02EH 1!Kp&Xir!3ba>E>z+&Bdfx"I"1t@-I1dfc,-[.XDL̕LA8! kV%[N L,ѣV"2=zG=|tMykKӃaHĊ4!J,L7tS&a᫬$TD|lnw~4?o܄j#n)9/ǣoRD* Ύ+.>c9<AkQ Vf{ 2 |Gʁe#,YaR]znG{k3 ]%IAWq#G(Fnr꽘DPGq}w U=t֟O(hwAmԲiKo`OFD^2۩Bv_C}ɼ?PHg1(smBܫYiZfkn֢QH,s&:3W$ VyW6ŒCΒKS6&|2͐E-(M>L̔eC씺)Ce|:p^>gYN2'#-_ȚX 0y'07M9oh@\Kگ*%R^i5qQPUFSs+LV;z|9-= jaGa O -(|^ c;.þ8QsI dd,I2NN]#w~:K|{&zǁNMKNy zSW5E:ͅbz 0X)Np>.:|E-XΨLhQbJt I?mQ^Q]A?, r$LoR' 0Y\2Fݤ֖E "rjbbkhbZ8?FL(aw$C+`?>h8͗v~w)I Uh@hˮ .WQ`9!!֪zfPUZaME2}!;G RHMQ.A\O`cG`!mjv]ys&L;S-%O1\k45PK`(;ݳ5nCuf%Y*D{)iā%3_ 8ÖϓN=rg01ͱlsy* у5U^9_=+Ts=RncFmy_Os򷔼y թk±j%3WezW/jWBY\ *芙 cP\}$ $Zub4ZnDrHX݅RzT2$i OdM=;,ESKw9BhL?_ c6V_y_9--WŏNsQׁQÀM3EJQa#lZPar1v|RPSrO5|Z]3}(F(CXzv:)SzE&Sݮ iKbz[|^ JS˲`)b=Ui>ݒr*M}+or^˳wg;t*^D #9 ؐ&H2Jm8<p;p8\> l9U*au/v+U؃3E"#? 0 I<wŌx' z "67_Ԕ@(GnG-<`7FMܯ6Peypab&ZM_Kkd:|!@^zeQt8o^qӛ̒ULTmXWlݦJW2OVzwd^3KmRe:ѹ3L9d'Sd2,v) K|CI<7UZO LLqb*܍[:yDkJMRU\\ק3GPOf)t֗ˡ^ eaI1}0?y J ktd3u4&hHwKΏjI?i7O) ٷo?q\&slM(DKe Jx%u?7(ݩ6;.tE_}e]ה<7E/NlduT+'9YR[ WeޱleaF)o^:2-ks\9mמz kPMǥ gX+ӪR)ɯm+~rOWL;ZXU3-Gs޻&N'=4؋-Kny!^dg-uR?v4^\Al!Gjso"I*ymעӏ=uIG kR'Qlj*$2&#i B.N%$^\%T2Ew]*P.9k?'wH >׵aPh;b@%AZ)ޒ~Ze֘j41Pd3<3"0.+}30Ctw9i/ă>͇Gvc>+Aҩo)v)m ` I -ܗ $2 (D۲J?R;2R~:m-.%A@{D4j#ܟ1s2EN~4l;Aj%Xx=:0J +n`7 [ߌ}7Nq `6GǀHEBp3 ~ -LWiؠ)1@QDDVǩ,óO=fX~>󠹾6oXUJY_,زAE(FY |?'g~? DISo"x :>:|9L7/Bݴ}T-!a]z,=I9?;=O.N0.)roֻRWRt:_jI+WI-ss=@SwƏnoVWJ*ԝ6I5bs9u~;hTPmD*XCt-3ΫҳIZ~S#IOֱm3NVGt-,MotZirk[$q O&UFBgl9hc40Sk[nUQ"kD-E]/_ boݘ<Ɋބ{3pU^_=@98J.HZ%$ /#B;ĻJt;=pt"Vafriwrp󧣟O%q4xчx-s(G d `ys] JDGvDhLT)딉 &|O>t6%^QdzˣwO+bNJOl?}<cVvY'0A4N(vp|r@\JB,$xגw/wR0%!4yg ǣgyޕRt`j%(0H(~;!_֕ ya"Lpnf~&f䅥Ëb4`aifiK(~NQ;iMJn ^C{&R_Pvbh-wp~ &]t5xn#Vr }9tc4?e'tLnolp>GC}$ Y9ݎ7$G U84M?at:ǃ`2 a,tߏ/!;LR|>/GO.~7 )o\7=p_ 'AMCly3*xؓ"įG?G9\s^Mha!FҁQ3a}|ar3]r/ rlJ0H:hH3&Ocg؟ QK$1'GV6?7 Ȫ"Y|,&8cl$OIHWX%6}4RhӍVMAk '}N?=?8=@eĮ fx#0὏োw!VOG={|W[8ju0|06W\t ~ VvHEy@y2֙WO;u\?;/*bNN@~=Dݷ o@}3{"~bOw΍^|jn:j$4^b)cGleoJg"!8Ѭ_C_'L  *7wype KxLԤd[`dcmI(fvZ,9K5|Iρ [MGtv>F1UyctXWcǢ2`\Vpq;_/_s(߬䓊" ! ʆdao~* ~óww*gf^7'|-чy>bDaߣ$({;;X!ZssBɯ䗼3ny8.MIT\>7f}::NXbxA_2((S=+J0!ד֯i}L#8 р.SGp`h<^\x..=<;pc@`VKw-͌|?xƇ?xr~4Y?w q,J3#sW du/fi+a8؂d(b Ӵ f˝LP>%w+\JSc@8)#!>@AYBc !(2$Gp'NG0w3÷eh.'3e2)e2z)zʔbR;لAnSXZqƎmZp WM5eZӹC;&&UF3GH, 8+bJ mxYECRG7-[%c~ sRRib̦qfUaW TIÔv!(pA (,[F7kVkƋ94%SS -xuCy4.@ QDž%ADYd11o7V;SD;RhiŤn׿2Q߸e&{عvL:OÉEfM9,,JG))"] @p0I'lQBj] -p0"尌1|lE.{F؅qq6v~~]Sjb\K@(K+`G=-Zu8Y \2d1F4sKQ0v{@֭|Kzvꮔzr{51^85JAF< r3bo@cg > Naߓh'oG'#3я^?T݉#+Zɼ+'\%cw ObHt.``(kG,x%+dX:2/B#^MF%)ˍotPN]`$&gr*ȭP½*qh+x.N/N˃N'rwAHp pB>]| & K`. pG֩ .I2=5 liG WDw\@svKYpf C$0 C~5ּ'|OOLoy ב^> u8IF鳼~,GavǻȽ D ht>#ܪ//?ۭ*ߨ%4\)4Auj՚6cѦݫ޴Ľ\e{%[ ^Pu^P=F ^,X _,-Џ.qʲMOLΕ}oq rrc.pTWlKm1_"O&Ύc4O<%q:PvCҵQ fH6/Iΰz2lr;ZSy=S"pm|ރ˳LJ9jes7k~2a,w)MЕR tߏw@VS{4LjMtu.~naCv-7"Bd8WdeѽG*%VĻ T>Ş:P #%{Bn{AaamQc5M:![dIxzxSÞ:!aRH!aݐ0SHs7$\sgNx=7]%#A0u-n0#'vJ麟?GG%98w/}]~Z í(L9<9c[IeM72VwE&3w8`G=BVd=CcM>|[UhhbowU8"^\.6هl|U UUP#E.Kah=*^bLTv~rZeHQ K5MJ¹\JHxO~&SM U0EB$SRAÀ?^h &x[ [(=@y0XB#B ҃ tI2yx./j63eQ;t'wCIkOnxyO3? <һ ?Z0Y1yNk\gnp E&7kWsb9[G[*#MBG#\! 탺{)E(e*ŅyŋL .3,R*y.?p5QźGrxUtGm{ctSPJҵ[-:+[,?,y5F71ZN_d)l-Sj$gSEΪ}U5fAbwbݟ4*؝X+$r'?7yYc z<CXb@su: g!&9ܗU\+%p9_$$.+IF$/WkĨQVk՗eKgWmU)^ܫtO%kH0 5+ͶEQ>'kuzP0Zq9էp)I"YTY_D*9щd-Gqd&}EA줋#OnofNR=Oqg5;ؽ؋#,-LxCGkg]S\Ub}.e*$865`J$e-iLBDI5qٟpUYRebR+h.K.JH#FI|܃ܚ#';Պ*5RGt YF5+X,D\$fUSؕh.]y3絓}<ӧ $-)@syMQ8} J۔l䫱)'nS_4ZL{*BPGPӒͨI3 kb=L\E)48#2]fF4Zr$kG$$hMt@crN<. t#vO^qYëTyzc8Rx/ALa8=#G䕝)!‰N@ qpEʎ_O 'OA Fh[Oz R0wF0nJDZ=8gLN<.~\vȻ'bfvU鑶K0>|<>9:N;iNΎe{7{%ۉb`NO~'axy|z&?hS$qL(sE7 ?q[RuGQx=n=\~ "&3lNQWk:+OA]*nKOؤm)搦н/@*PQYgF*YxohU/ޝ=N^t-&OVn ʬoA \}^j{_aănv(v.+g#sYȜ%lF)W=3j/ CV@ENŕSiFvF33]˾q b x:sfÓӟ=-Y-,-"A„A-bĠza 1bn0aQoHaII!o0D+BުaR$@BÄ@-`@cA#"UDJd3^NuY/|)=pb GYP`yL.x)K鮄y,[(]ҫF0FE*~N7-hm>$aJgmE__]ɑnsP?qu[m|cidOWH~l6oyI#鉿vcK$  lXԮ-@c9fT Ud#l/WZf F[p6E'=Sh-*Y0FJ~r[ aqO!\kX!G]wZxV72!{6c|ڂ.M3ȵǝEH| %L68<o?(خ̳ a״ԹΥN4P3_zb5@ np|<[r$iZ.~b%Nv @ܤ:*3F\$"XsƒY&vN#MN):$tΔT+aB/#N.Sroε:ZkoKڥs೗];vXY ^?ЕZEe+p9SBSgڡЉ~4eْs!{`A+K$uIZ1``/sH(mkqό.% t&^ t.ĮL+ wdv9w*`Ď4S;t!| : ""Hr@{o5a2HidXJxq=p:4HEX fdߔc)i 7֓.9-9:z7'G7EQ`Mx%!fF;%&Uz2)eR,`֭Nx0`pw< $砙D>\@IFaʌUq M>Wq4A,2k{7]VcmUxDT~TQ4Q&UHÇ`6LZ|̷=>+ڶ"A O[]LBL~hlwEN4 Vg Bm lnFz_G\JC}+rPsjSru#oGl5LcRLKȶ.[^9%Q͉bඁ*MeXn!WL6SU9#L?'\?bBGv=WcӴ~]QU!sХIvs笠/X_ iJPfG SR q)FA/fh+p5U1p8ӕߙI+l.7~]F>ͿINؖ$t?auUNfW]ǔΔ3ʬ/9ALbԪv'Lçd+|޿ln0ihм2N䧴w}^N[b IN/xs͓T =oAg80N y.5@n)ױ?P ʌ_w,U ՗yeJiMUe*z)#V2r77v^hꩡ_Ky>[]4p0ӭWQ V䬇,^ n茐!W\<Xݹ K-$t%3 >04!q/ SM?)5 !͵4q ^j#ZE{;<uQƂ lH~jP0'6 Py6VB *UTob$Ŧĉ+{~Zw,>>0yF5@/k2w@ظ8.h]ӝ^nC"H&uA'vOdاtWTV1*{A۽{I)Gθ0~-Z䑅kUzo7L_ol=W.0Kgzm?)O|owN *riA.| Ui XI$ ,$%jGt5Gyx䮩u4Z'KEOmOX+*.D#RLYوIDCJVɞG /<cx=$5R\d|/Q-Ɩت;\*c;ʍmQlq:oo+V-[mֆ#4K8ʜQU%OMjBY8ZPTˑdJM(W%U–ׄpu`g1) e (K -{Rb>-!E*Ej=J1[Oe?s9$N[p2?E_S8XO,f/D&3au.ٽ8:2ZNjkGqσ :Td*ӊEIq1f3Q'jd<(r$)j.u_7_+!>o|EDd/8X;΢ءlpV8_[*iɱCz贪T"?9v2Y09ts]ըI_]IvIz: kUeuIf{u j)#6u'^ἑ'4qp &Ӵ~[7 97 h–n"bܭ#xH \G9]O n + ?[Zx̖^8׊\ kj.쮖htZ v(9;ט>@E >@8E z #Xڟ95,%dm4[] wMԎ4N-({ m qN"s<Ӏ42R4+xq}`JHndrgg>6u5] <'}zSJ,mWon&lhe⥚؞ ǓL!ak|c1*Aj7)sS`2g1HKd]%!#xH1=PyyJ= Mr/]FOy ~ š=@\—Mo2  [Ӂ% U3rvxs懧pt"5H`X, ,E~JZLcYU^tU$u߇ RW^D-m_&(P֦P5-Q-9B_"az"eke= +|P0CܾЛsrcFh7mz^'=<,~6TUr>’Z?]%fGdN!='(x}BpsqH] r࿗ ]QW,ۖ{ g6G2FcAY*#R*ˌ)~h"@c,f<8U8t_Ub1i)⹳!y̓^^/ԴAb"<޴fВ\mm: %Ǿ `Sğ [=erT9<(}UAa8z<Gu Ѧ'+R]_ٲ|nt5莻W=VwR wA>rLQ_0D< ǣ3L/u{N{| .t<@0ypܵg'&s0Eq1*n:"0.Sۼ} ӋS`:|=>IӿK«Ю&QxNI)nu0QB%7SY8SUǎXKYIx -U!Ny@dr`F!a9St8w!PgF ^Akq&aHɅ:ܠ9G"G52c>MYG_~ ׎AyÏBUzw0,Ƀ)VשA<-({OMd2/qx5`MR9)m kq 4ծݾ{GT{51l":ѴƠ=‘@h$WxtS*QwvE"( z* 85[{4}^mgR}nzɿM8+(S9`u/RpF쥾 Q97zP9{oΉ ?A{P^.\}L&.,s'> s'>s'~Ԡ6{mȚ\"@o'ߝ-:dΖ` 2L)L#huHiT}gJ8im5ZEgqMT0m0f2{Mg 6vazu ӫh:yk|+kfvȎҝL>]=x)rVn!N>]|<8<.:o;^DyJ!͉.=]V9nxbisRu-k~ZM Y(u\oЬ|<|͞ac.UM~b}Յ1[C^Eݼǚe9t<-u{zYʵ=.*jNĐ28XbX5sU]O8j ƺT0kKˍf_H3{{|s98i;x|xb coCZ#ljF9tzv, CFS%4u|zLvPdUEY-K~8mBqJg_J/pn.:vw wvtԑ>}G{[Q#+?t[fX' ˜~SA3 QHfpKF9 q7yWx6Bp-7 ! .qNߕ%۟;v3S{2~ hFy(}G-xMAwEAwjBXg&8 Q(0a~t>]41{cΏ?vN:4#NѸv%5 i' 5ؐyw?u)[U*Hpz;aLlf|w Wh2ݥ>jx~^ga_3lmg 6%]Rfѹ1қ_pZ daѴeq:ƿZ1}ذy׺^&EMCW(h3jIS|aDfNear7Bt$:ֹ$ߧ&R13V2 Lkbea~&{ΧuI˫{t}!T?0PfOX6aY|B';j: +m9ݍk6*I 庌fCa1{ :#Gy=ɚGR\ TNn{lT"j*1v{F_ t%\ s*W$Mm-E&wH7\:7ߨ$-:EOF~{ހ/V٩܄>8M&c=& -4 /gӠ.X{‰ބ>K5 D+i[9 yՉgWI4Ow`3M{|0ulwmed4GAmh2^,,U3EVEY!+,@,}iE1lXz n>'_JZfGm]X:3hEˠZu##=Hv2AG/ԙbiEiiRqJKjT:5]=y(ϑyk-*Bq箐;yb68oe J} 4/KSIF=O=dԥ:%tu(m'vkg;Ūv!Z J! ~VbX݂iU30yŷ-=m>vX..E h970\趠)LѧQp):ۋ WGv"YӉx{Ŷq}G0QH!:e3ll. Zh]_{pX>*5k0ET,4qo =%G#F\Jʚ8<>MmM}%,ݰ6ޘx -0 |8%-y64Jvh4a #S=6Ml:mD cR]9q0_AQNc@zSNςA<c8pM 4K[#ӵf.haG{MPݯ":4^UaWEg[/[LzVAuDHAN;ĀTQ(OJgC`r= o;si?rA3c=$]ZbZqYm['5D%rH[Zwlv(BăI`ORC6 j^u4hMWjvqj/B&k_*Ē}_{"aO0W1/b tb sOXApY10C}VA?$- ɞΖ$N_J˞fSkD݉⯀s Z]3))J˜}PDy׏pnŒ+ K}8S ƅ`_' Ud-BK}p;C/ikrWbT=Wǹq\K܃N(ӷW)@Rfq2 1l3]tj8c?=v&w"~{@cLq>cPRxzgYt@ẊD`i^9elMG:ljtix2ӋܑaȾRɽ|;P-ޭ82#)l]kY2f/}7S;"D~={;OEI!`#塠#!h?pPi!<}ZNڗ/__'B𤬜oo$ | K|77B r9`n;h;XK(-&炭(󖹐f}'rgM[Yf 3Yk)~Xp)W%';Y[#%"N ZN6d9͋I4}I x3l/CM?DlW]2{?_&T}Ծ1NŃ৆. EVaV3 g.6Nё?-/NfU 7V:93)vl N3+dfB&j̏G* .|HkS˴We4kǗŅ0c0ն7L$6c"l!&30{}_4h1]561>SrcnxF(8s`i7wLws.~ĥ`A'Du?`E`/(o3[]s_|4x+ M+"\[HοCpwFfV'F9܀Zl ~}C`Զ;;C.ك r%2*{bC:V+4><a+U|/|yDaވXQj\WmY#m}_+mV']/LpO!3^(b؛om\i1z#%㏦{I^̅x#~!_vGR ^@PQm"M!}nyTˊdJޜZAܘ&i3tYZ6DNmit'xl]$Mq{?Kf*P=KW,q7 e.}/<L7S*ST6BjBm C < s'Ĥbzq@ZU$lybVi:$$`D1Uo%*2uZibc$@J67xƫmh AY`=#qK_.u͸q˹g,s1=IKUbs'rz;2k'MWr"15AسUA]2\mDYfwvoLznt(-}AqdUSv*͵®•\WiyXZ覭%X{ٗ_1QAiGzIJ;RxiTJX4>#/0ihRK/M}9bC4;k ZtG~n?N.hakW֭Gh> 䙰l*%G*% M_gE:flSJIFT Ũ" 6sYRˉ&h វ&%_Ղ<1S^$r! XC?ݹO](Z|6⢒w:3jZdUK?v)=;;VQF!obH8kYG,NV3sR{Y*{g[Xa22tpxb,6L;S!xiRWoӾ)q"|Z#(Q<X^hJqwjd vTf /)f6ͦ =xk- uࣁ8ué^DseX6VZҟ*ޔ|1&!q͗ȵ$Wu7ҫ/6 T͵=:W;@#SEJ y^X:07( 1 uY PQ2XO>@ Lzf-3h܌ xdf.P4TsFx,)42SЀ(qmz;f1#NxO+^mK殳35u p۲&EFzϑ,d=;e=Ď!#:0CuFyYS U{Kʝ 1ԁXk;i9%]^: [R3,CvcG&c#QV?|-b\ jSz#GGXŠb=hefYΙ!Xy^=] k8x:%4]GF^W^AyD2qZɞcP%. ~MV 탟c'k1|zy1D4#r+* GǘހSe殌cҮ}YH7^Gcj7t f^#9);j갺?uUlT>6,JRb`C u zR kw+v+[HI[fx^q0vLMZ/ yAPcQ7TK t-9[?&4 ,nFDhK>OSN9,/h@# _˳Run.rS8y E~7E!5Cs'C=~UGɁU[`$Ak[qRUv}"v+/yjU vg8#5'1{*/l (^^?QcާvςJ)\Ŧie/wuGTTgYXvN<}ffl/%)(9:M5OS`|~ 05s)fE< :^%~z=k“ Q~ş8SZd/u'Ę:{1[uRu$Ŗ;K@B@ҝ 'ttC+9c>ysHguԼtJXhYcb2v)w_!ҩM0^PqwGWXiյmɵ Pܢ`>W51;]淄SvJFͦ˼LW n]BB({gހ^!g/C3T|[G!b‡O[8xӒ Q8:7ā}C{WSaȰm-Vx ?Lmb0b1bFf$Sa_,Bm$J1,-Ea:SjO3!wnȯJDDje*۾.2+5%8?&eVF.[Ԩݕ.exY-,?gm|LRxݕhw/\iX  mb-0#&瘊z*X!up@'(k ( elr6+Lk٩ a5pw3wm}K6!h1VT!|i!?JZ@xh1$ۤV,^䞿4`>}C9<;}wDD#Ip.boB<Ȳ?Hx3*{1W>|pݜVfl¸;3.b?tOCAÈYNmmhG#Rb{jrq燋 Ç vvss|vz?霣4AvubK"p Ώ>*EuOqtq~ ̷GoN; Lq_ T ^\G/ 4OO[a*~{|qxrp ,889?„?8+tj["еŽOwQ;89O'KLG]C|zDZʉxt=>?:$0SNȭA /pۆ!;?N.{.ZмsAIŸ~8#C;GD?9~t :Qp ??@(K`#d GJ\i#Pf`AT6H-A~ V>ńͤp 3sa}[?_g[[qvA 9_kT$i!"Q ] WV+s'$[fF(G;6ɨE\Y#eg>eppM'd4Vme/ۛk[hgWG߱tz$*, {οgRXI >Ov $]ZΆX"0uM 9uj(˰rj@eЄGbZ `oq!\#;,"` A$G.>XEճglamoU1Yd/\,5rKڀ( )#0 .eZ z,zLlJ`" YڃgsH5[5 ؅K*aaa a]aP, z,ĺLmB#;Zu ىe-E!M5؊5YisEbylc*bG/ {`X׿`j_- [?tvܗB-فDld5ܒ:':ӣ]7ؽ(Iq0 SCqNO ϶76_4ߵ^.qȢ ofiʗ+0!m_ j<7|N<<>>菉By`^^x?Ylԥ$~cc:k' PYL0L0|?~ctDdZE-sǣ Y/:PDi$q? icwj4N4Nx)8%:iuN$:E%32onICEZ4US@)S>qK*3U2g.QBB1=[lg+c3y|2$70U>M;51 vE T0^g]@l4ˀw԰0QL@x|HE=x"gG3C^֘sߖN^P>ox;/`g'ALЫ!ܯ (^Z9`8I|2m(gÆag\rL\.B7j"۲܌{|"lG.@X&Yf629Դ*HKtoÊG)FK֏zt"42mjjqbWi=4q^M׫]p%-;_PoCx1bQ-/T|"hBORjiOk\?)C;M SgECYԗF=L- &n?h4|K@iH+ڂ- FyIS/_KEcY@8*e1J[hOHM"3Hm`7X.dR6џ Ko pEBr%QU'QG'8/Ue=J$? ='ܴKIӰS#9ynQt? f2:ͮTG+Zv76l]jԴEKh1}<0'΄ LzV2P$.8{]*6ΎwD8 xʍ]R;&i4#g ۼ{9%H8D¨ rV^/jfhFJb7z+؍ !/u!W6f?n d; MN3ɸe;AIvodL~4n0v^ܐ2^MȕưxK^[)^ɷg7w2PqJoZjr p=ُSv23̴0\Ψ6G4\:ޘ16bK-5di$iv71"w~^{>_c pJBy?%ǽ!VHnO)@B^pn%i"[B]Z'ꂭde^WVbqD}Cku zLEU\ZrUK*Z۪"hl= X WMYb_`VъFIX/RnŬAV-U q0j[So֒s:LG -Y4CKFcNH+宫PLg -5n>c'_I 45سGl 7t *҆AK ]x[LfSr,#45oqWSX+ }#/7_Y:"*!%=PY6'ipiƓK.Vܢ+αD8Y@u@iTۖbBkU4i-4}@ι+ jK- $$sE߹PadQ,6Go<؂^M8(`=X)WkALJ)ur ~!O&Bx4c9!ߔ6H+:;I,^O}+P7zlZx[fbpt Mu^z)(wQa [@:%4XDSPoGd`,jXMYrhc.U/܌32]7-u DSQ#Wc_!>ae\5ަe~K!qʎm GHf$!҉Àdl,d_K81\8/wnC5ZnSΔc~03j$!zMxQڽlG[Bp2~+b&hKHt{/u7W ~-&Si7x6<֥rU9ߚݷiLgY$%OH2̏f]|Θh.`􀊥xBuv w=6,x VL8O@~Q#K,xv~Ƽ$'!KAnNSe։`֠͝hn+o:xyF/€18mk4&5_ɯ0YМY JK< M3\5}UN VRCIv6~i|1`!T #.gp~gJGfhQhN'6l{;e3|>S^Hw &A[3߬J`y|We1r!PFPiso3 ]G'gýW7d|bLs޼ۂܯ2τM1\O߄~W ki4NG /-orZll[߷wφj[&gfKmc:7/wgQn>΢8vR_|h/@?L caos>|jtD@Is1Z_g A|$A4M|"Fg7;:uitp5X`Y<>:N$[5 tWc6&рwF`-l2.h-ު4sO߀ͶQef$5-_D<xfszΐiSS fk IQ[AaI?L o7b|x'2Q0` OW2[hiKHh lj@͠ 2h'v5ħ,0WXbW*dm{ Pt|hrÐ4)0^8 ˳ZaKq {tN++Yg q 14ԋ6uu˯צC L6`Fn8NEgɱbĩzQmv?;tmn܍ʓ3p|<9.uK-&ddLsz}'᥾ڄAk?~ 1@3L3< 5wҹ7fzwB sgXiLIxXXW8Tzk_Y(OZȃnQX?1fbIw_qAT#Ԟ?mq &u3o9,xx7Ac'PkkIL 9qE 6.[xM_igQO0b X9DXى ˛J525v}IH+[3;p7\F!+L(vݞV*$ߐEtRm"K"q66_"fnQtхWp#^̵1eykG'' éYʱ \÷xTQs(pB,=0LYdGd8TQs֑KI;`82Lhoc};\IHxVLGe.,lMvّ?Isq f1*#TTt|'E|f@Gv>>2}Ōo9$S>ɐD˂@F@ފn\D7SqaPwˌȞT*'"b-p57ZBhOCm߰Rȏ|)b0Xi7AR'44 B1饟Lo| ~Ͳ-*%Ō**C ~&| cJ2Re  @3M74YӰP6Z29mZ|䡖objp3Pр>Yu G/$zx$c}N&C/= CP+YH{c6 U 6ÓOs^YE #ӝy{ΊѡD%#'4H@A*Pˉ-`ۂLZw[d,64gޗL ϙFpp.q몌qS5$'1QoPȪFw߿ޑqOJԊKYן`NbHQ}~բ I B aqsh9e$O>1F6V-v%85Pz!^#׍i&)ƉʌlE6l5Qq&U](byR+`O;r\8k ;@紑q)?]CC2jlKZ' LsAg7r کI3Sb o +LK(%EQ26p#0kH5v"C 2UM$"gviG)c1pdC*^c,c;? 핈MJNEݝN"}!ĀߑAp$9i5.FVRDnC` z<й=}ܸ+̛j8~ѡv$M(0&^T-/ScaS@cl{,1ʕ$f nV)Br9G{Gcz4x$$QST|r۬n~?m}z>H!@t / |_OȽoK3m,5-#%JV6hmvvo7T*"&5a1,TJ.|?xi$nSg_ē-m_-)G?12HH]MU=+Juu,^Z.ݰg) [| : ;vcꤘҬ3U]R[|PR3;J/˟DZ$cg2FTQgVR[-Do+*aCE;Yj"gB7 >/Tf3ymӌs&Keau-:v6ضr"Z}E3RlMʞu{3G'Quҩz-si󌴼j$ѽ7)՞Sb?!0~tgHo?X6G̯xи6!Y*VR vwIw x_LHZ|P-^~ioCLdzKLZ8tG=C[Qk|霵[,y› WMV.VVS_z47BKirbdˤزE1r2Aw?&TY^נt5B{1Qi"Ԥ/fS̹Ҏ; !yk/:@ LRDKac<(顧KN M e;7sO^RϜG&`Gq#2y1”[z2t5MKb_ڇͲ6Zy%9aO +3ɵ^hB=/ұDZHQ!S{`}VdzZ%q1³xt_%OFg] LH!Efwn#|wxi=2?P/iyu<Mrt8`;nGui5B$0?ʃG6q;;ΎdK#%9,Ǘ!1}aS(}xT#Ix8:/RTi3vxIg+A<^N6j8*3C?%,@D2a NPe. }kM8M:`0|B7z4yKMtaL3wX\ g.w=Tނs6@rVgo)n/p'`0~2>;m27쩑sPb`V##`9C)a#luuAXNI_s"&J [;}9R@%]vu;%bŭCA-D ,i{S]H{{!*h.O0X^Z1C-xk`=qel #[8" OkS5_29*qPZ?I В=K/<0Խ󳟔AԲNY•.KpBVUZ"2 ?GڟӰwDh^z16fSV^&Mh'.XԀ B \72E4t@98?O޲{sĎOkO6ˣqpo'_7{"'-#Nbd~5_u[_mKq zw^ ^4"h &>. j?WwD&IKٮKg~I‹ vhK_2(Qh\05'' EvΟ?i pZRp%~ 9Uc._QaTv-4Qu1:n'](\&FZ ud +VESd3]nn\n%t[K$_YtO2,rQ+;>& %m&'S:A]{A"jjהͩ5XU^[YcADq󓘒xN<0G174-_MP׿1wd6u>`- ]Z/uܟ0Iz &.M,a iA)Oktŏ駃Cxε-X_tSqIHIS7LN9W(dhO,J>og;Z'lt)}Q1Bِ}E?:GК7>b6m _IZ ƪ1 NSYS"q`d#IsDH7vׁkb6=ijё4':ѱGvi,3)+bh3e|ţJ;+6NG)uwtܪ4ݹ uA$2B8bܻ<'T2} > 1:%J2L[Hr+1[x V*X9:K&z;1ޯO!bJgAdS8PI]V(54yDl1qOܦws\s+z  >V9ġ@GxFƩ->lw,6Y2J\A812 qiSܧ9G}8U-44d=RJ1H ^%#ʙZ2.2%,H.Û|Ʉn匿ܛ ~D6S`MGơ as~ S@LmJJ.ч> *7, ziVs\(4Iu-r;s3+(kH~a}c_0f) LAj`0 D(8Bb zaq'[k/WwJi& w%CD  ={{K[V/HIgޘ>7,<.>iCGfn+| >|d[O=`!Ic8z,HAn!^̧J&9rGnT UeO@/p=Rrf6<ʥ [DI: յTGY6c|LvF-S!!UѫNQiw9\ӘMe'T6電SLXZ,t.ZNteճsjF%n  HMuEc5phH^Yٜz֖Ky1ytKؖZqR-R`ޭ5-LokLn_|攟Eaљ3[$f^ :$)qk2`VtNGG=ǩ8|p2} Wnyд>J5&WV8>_n= uh-)y ה.нҢ̶K%=ͽ3ʾ;$SSHgXA)/(x欋|X7s> /?u_T[qOZIU_Eavc}X+Q/V lT>?f!16 F^p!-!})RҀ^G;f0^Vq(bfѬOe| l|8UwSjl\ #ݹXE Rh_HPX޼qEe~(%JX:V21dP(N0QG1O.q|E哂 /`^Isz1q46"ډ5;q Yþ~ ^k7 c%^:dnM_c;qpT 7f>q Kc(iFGL'be,>4(PbEx4Hƹ`,s (Xf7}(KO)(cGDc+:1ls ƓS-Fmɡ&P7*HY|2Ŝkvϊ=̷Լ?/v/fCv p!R4/_3 TDyuY9i)Nr$~i#h8▮W߃@:w.oXg@R&HD5v>0[ncC[ Vy^,߾x?Sh[H. Gz yNqڔ }7#S=}%EJ3׉t*;-E]'܊i<<͆[~0ҁ+[ kKRagXJ-,aJue╹+E yaA> y$c2'ßD@J"7}*I^MJ^njRpm`qkuqo4'b^tӕ[,@C)q A帡Fg]?kǵ0B+,vإq=ˌ)Y&jYE͌T₥b׽ W.V -ki1 5mH;南X ߆teBs'9t^߯λ⼸ ^rccVm䅓3?t[mS2r१y>Z p!yVyhӶ 2+_^xE":"EE`p,L)&]Qd[XsH^H@AӤ33?xo.npňw46J\A<wtEEwlRQ8)UC?ԸKaW2>bpC)pw'L( C"p7JDUV­H BdK>bCY@$S)J 2-C̩j5kYF+?H%8 l^ܪGxՕ>A XO>(? Gj.-.u#QxپnM{mQ??ڝ{D& $gYR"8[![5 _6bMcyYj؉{c`E{ƭV'Y1p&6Yу$=.9FvL>hvCJ4ة}$ 947>4m-Cmoz!7J0gt8G|{:݄lg&M3 0,lG 1h<&w /;0fa`܋iܱ`*<Ż@AS].!G#XWtnCD]H Stt )ŁDKǙ$_ø1?gI 5 ArʶxAe^Dj%rDzHcj,;lxNs3 rt8kDU4x]˶`fȝ81iuytʃ- }1⌡@` aϼ#uK"uDCq2C` F }"12:\u߳st{ ڦdx\QaZQ ~[Ρ-v6#_-+8# Ծu9zp'SYL>2hvL`fe+B>{vP߈PqqPNwactnCzߓd}G\EtR;6\iX之kρ6 PtWfdT!gE5`( ڒ#Hus{mt0lPMx%e>Aw`қvY`"NR\IO` G[0is|J p2tk9ibpo74w1kX{QԚ;ny2!CKtJs.(11YUFS;Ll)($8,w>}Cz) <CuX5/ұ(Ao<~^x*DlQ^e00sͧ4Oe&Syj_ϛ`a=!T.kdۈ7 p /Gݬf'bыqz5D݁&Wjfk6,RHD.N)dxQBNDe[ϒ1='܎"P۴!bΫ#1ߵK|ۘQFm0_N%.mGa3ӣW5 Bgk(;DA{4Tu:տP¿iqv@Q* ɱsҞ!_J5K#f^ u1LE?<Y\ ͈"Q:ʦ|u7g|){ ]8ҊxóxVn<.۽QOO^֥Ixzp2W L0· %q/k8ri6k}PdҾ6$= d1 OS#dp2\5>,݅=qOq~ et{PSiU(*$q{J(g݇M:ț*/h(,ۥz#3 \G{fq.qb7E1U%ՋߟgEPRSuLhJw!yfl:`'Lwr>4 $pSWZS+Eoݹ&ؔJurw<7EGяX~'hk'xX8tr`~8rqȆY5#11O~a_J+HﵨNno,87V/ƎWm{ے;)z\_ seNox%)\fGVG/ٴ̇;T:BvΓ  5.yc׆qǓԸE"|W{SP$]!m  MŌ8eCT@W 9tSHT47Mo*.C }h_r Xi˺K(` /mqʍ6+a%*]4=P5 IN_=̴p,*n aBu==2'O %c-rAPTs0_PbyՉlmD_egP;{;(?6;;0(cju_ْ1fW{ yZyu%dE;rM::*L95暬GFMLˑ| ֎~Al6譴5Lw<.و7Ug* oIDP72v&뼮9p'} I.n*ٲs*c>Ä%n,iAgΦ]v%$1&GKO Zni8E(uECʏBy7M%ڦ ۅ|gp*5Nλp@l1[E; ejŦVU(O/ZG~5nm#YA5PWyrUY[MHZ0i-\ڮ n6ۜh[Ĭ۫t)/<ƷA$Z.:ϲmL6%K? }VM!Am:C@iђERFP-ʥAW}HSɞ}Y ldW+.lBD7vG&TW橉Uhv[uT:;ϯV{7_șY5uRFd'D@:eUIUx0 *"S\B.4 f;DU)^xr9fA! ~=jM9kM ^wA^m'Cᰦ^ʼn}V~+xxSNV"xŸ)!yp{ɞGr.zv>x>Yɏď&'k( n?Jog϶x2l}U+(փՠ({*; J@,nXa<?x %X>:p2g*m?w ܵ׻\{Ҟw'emj9 e#ov6avd0 lmk8]kxnIFm&߸Z/r 0l$ExU fv"G$t4).:C67xa )) Zi9)ZUZz@p!;TIAuű8U%n7ix]x{60 lʎD's>-':kCISTIʗ}oI:II`0 @`kk}dw>׾<9=m>6oN{'ã'uchhZ[L9}m͙8|\m25TW{߷,|:҇Ԟ \jz0ޅ{$'=հ>M5$Fp +![rLfnc\xCT>ֺoұ9GoĶ-' 3 B sBfeS*U2LDžֶl6yƼh)a "H0Tt>1>ou72,nm(ϓzt,eh̀UsB1,T JvgFXSO+'U{`Ԇ$TesOFW 3d`#+w ĆDP/C7F)OY#{4NwQҹEe+;]ވT@_ڔWrsڽ8R+)e"`v-nCOrpKd' }bjSIw3k8І\ʀ\JP0/_NU!T6L $i<kDc9gqC!o*#|< #MN =4KhTMڋ!im]} g= GG τ L"ݫӫ;@d~{Nm 93 1lx۷|H: 4 M{gk#́"%+' P<0:N8?c$&<=٤HFn wo^Q4&<<=VȆto{Bfop/,g2y >"(cQ.4=H٧\y|VzC}x=u5lu&bm>̈́X'{.PsU݈*,(ZB \W.  G̶;yM=FwG&7 pp"iNoj$爬?_4IiBmb|ec?.maRGj%`OmZ$cMrƜ#&UO%n=2Ւ<-ϯ%@Y{?\>*e%+n1_b_ 8#/߿ EEOpQM6`lFR].NFW 1uTX@ :c*ܣ0jsf&,H] Q4qiPB`2]!>ݧl$PgEu8J Hea#KB!T|h+,"..2X",ASB{\W1A'.  jt*q+,Bb.[#i[sW*#ԇT-MKL΅-Mag{"R׉9ٜ"S&} oЋȟUCNGWfLi>E)Kv#}O2> P.y¾6gz ^a=6jRx;E0Ӌ"+jWkM׊/^G[MVժ_!Dlk"$!]+b5q׎3MU%Mmq=$yҜp\͇Vp uXq+]Rp"^O}L+K #R:~L]$C`xIdayUd|dB⼲`jWqH-9b yaHBEUN#r/QV%D60&д!60L- ^-t8auNFx.X ,̩lҔL485#(8?{'+«($WM3Nwlp9FLUw<'BZBKx92aLY?U0__34_T DAwgײ;\*}:g9ǡs׷&òFVP6Z?B^AލA wv?ߴusb_$^m)oZVu⽓I{cs`̆@r 7> oAM5 wsB,Z܎}, ؆ig|;f63o!'.iyԕ}n+{ $#i6tp׆f& pymHÿV-}Nm8` ×h5v}4dO5C-MvPY˵2=P5 Tq@ Cw Z'8hU2 A9}I;[֟8>h`ʤu 34$m@5' x\;prtwhHFȻ!l~c@(>;rf0w[-XDƺ=$ v̥\iPlu&hŐXEutX ?;ii^BAż젤w?I}.պyy]4u}&"͏W]޻s6?_>P)9mj4?3@관?.iw'xMpF8F_80J M4/h=99oasqFG0O08-Dj0C `"c#8us~ӯQf\/n$08 :rݼs{޼ $.;]'t><8>qK׭0}:O} Nrqڼh~BJfs;]9PvZ5hmbg=s &s7*lОQl}:oj]冮Wu zurĺoE_Q`RY@:& P pJ3$r6H -:45TL4{@wsBMT0cH>OÆ:"'{g{7{Dkru^WkJh(Dp!ަUhBmxQQĜ`~h0sЍ0ʞPHӺ2aV18ϝ_慙4=lpN@6!@~DxX|@+,,wsj'D T=%AQ^bd>%.w&v'=0Cgjȵ tkՁǏ4^3>Pd]~B} \{XE̦LTڽ#:4]2ꃨyk*<#\ uJM{c!"6;Y(u?_34ˏ'fg9|A_< N.1?çں W+l ̢B+$g0M&`icԩ^xB# XDW6p-wv8}b|BxAL?%DWnJ~x[cp(^\V6ET#/x9W{:9bm\Uop lNq&t1rHt1^5^4hCB' }yI{^F{0Tt<0d\`N#`+gbXwzEi4}F̡~cOYNڭV~G*E_o!$BGUF{ok@@d"u"b1X:HA1'9oN<$S~*kHa'){95*.8sZ븻ڽf D[LWت>$_ZK|%ԢH`+lߺˁò6OGwٰ-Sڽx7)b:@Ggk?Ѳ@3@86 Lw!–$9껒/KE @) q@@@SEp% o=\`V /D#|cZet~LG.쯉 |o׳VmF$F=>=JsL`9`$y3<3ts:s7|!njMgg!} WT^D8B!äL5/:( !afL:;.Kq,seq2=J#} )I@$i`MB;eY #U R1cr4l3La=Дwc@rS/=]^"lٲz$(FK )A }In5 \+B^DaI :f8R_9Bj@\⩕9dH 6K$h>@*9H4[3j)`k+jp32T/PQsQIrO armxyAUݏ .ft*xX(^"I~A"GГIes;%"+գ3${<搇߂E!;{r?")B~Ņ:9e=2z;pKocɭz zKH$E4+%_D,!iLV@-~ҰtQ" X\M(lCDq_ J2,/9`݆@?\iy"~:X#I\4oͳ$6ѥ4Nt=9cE-Dٟ.7\*dYBbd$/h0'xV>.%w[j_grϿ4V$b*@%$[,bުŢXⷲoJbiઅHJoJb _U}FOc9?_h~Ych-5mL&y]&I"l5YdwO|#GfIr%m)FRyĥ\hY),!ly-Q,e^Lʙ ( y-P$u^(ȝ KrCW=OCg^8G v)!r֯C5y>\[,Y ?<鶯.;׻w/j&,N UcG 3P so;Vx:nƉzg,BF<哊l0^)~cs NTc@o$M7807 :SЉjq!1Y N7_HŲ )o{D2C=҇ _H-ם hy 6q,{,f6ѿCWney27#˞@2C T4u0:MuQŦ J @e:w@!p(p1לO[J\1X!c%&@DRpԋAKuQ rD e=xRzuyNj=J ]`? ]azm&\ŌHWQȂZSBh4|[-NIQypOi2: 1͒nGb@k$_ZC+x[;aѓ ^1Cx!k,겤݋$kY0މ9ٛXdݩp Fq>Q6lo9Q{͓>cI$/c/s#%vruqݼiw.ZXf82_:OWt#svoX  :يA2}y=XSez~Н/aa8Ι n)IfʖMp۹ě|7 31.CK\wTZb] qǟnC4;9X>Xh=DV ؠ 8܂$6HN<4)FNŦi$hIG6g ʥDuڊh8H3VO2I]|ab==::9?#gѤEEn5s:qIfҊ"(LG}2O*rZ i r51UPdP67䘽"`[[Qf!ie5deMHF6;uSО&ewrl8rL}Ρ?vkUZ,A#kM5n!%ᅨAݜW2#l)҈hwz/TU$)E 0D\.ImSv[sf" 80ҍz,|."a3\VjSغ񂯛}Dƅa6oN@?I9@jyPiGC#/^ B^nϾ?>~?/N[7fuU&] LAeaV WQ3\%*ϝ?@}yuC۽ jj5Ium?s5x$ ʐtWͦ1Y2jV#~v_Fćei>do y(1[7%]{>` >M Cj2škzD`{Ts.'oP{=ơbtJ0kƐL =-0S1w:~.)X.C! -NgwI 2#6"4 ؔiJLw%qU+İh˱d=ă"xXCMI[n?tN0q/V෦9tDҰ&pfX|}-qu  N8JKw,XohX TOn5r+w@)w gCΜ Du~{ S`+n^lŬBW'ufk@LDP6Y3{ :tK197QlI;\uXK)e @<1k[IJ, s$7 `1bQdIN ;lxF7khW 4Lq?'GBAK(;ˁP&=Cn 2FIߍ30UHfWЊ hdhig2p.k0!X-pVEP?j1=&='oN At;ÂS6M:wp;Mn"41XY^ `_(EGp}2+f0=2Ê=q& JW(g[pAXAb8c-r߶@uv]}\o^^݀zYPe> ݀tVsR::~7ߪ]}n55ڵhoզ(>7>>A6[e O"ߨT~=cyS23W ~ţj1I33jV_5@GpǵG>ĚmbOImD "dzfSn}N~E}M14Chܭps OqiLTDuL\S\u3Y>7Dcf&3qs OqixnM_&o)._ >0CHR(&8]98ށ҉[:~J#v:i ?iV xlĤUz^?0w6|kW*~=%?-?8.;oMTma6y}3B7 `!VlӞ]$F{u ҡ}}u`=Ćb^z ⦆8us:gI$ԆEʴ(] %DMHS[DRL$sI7#)DRmPkJa\&.qcFMͻuL.aELZ.>|eBoF8)tѼ[hLjV*'~ 8SD皟LFK*))7[8q¾VJs (dRկ'Ͳ02܍0%t3 "J*vo}ODJ7%~W5ӻO-p*j(*$F>(ƺucroP\]/JZM:oPRUW W[2Y_Ȯgݿ>=l킻Xrg\#Xo,Ϲ\~+Gy aRV>%wC6| KS p&Ԡx/}7ónٕ w=,|Br#Bx {fna}m5JnpxB^&1U3$n$³ĺI񻮵kj`*H+<9hI6&raպ>o5o.w;7}:Fulnrfd#AX.B_SP:Y]~ vH#呮FՆW@A_̄7IՋ:;g1+3Ŏ-Fܔ t'{8-tzP^n$6Ww:'q% ~AEFunv#s{K@+(ʼnf9"z".;F)]q/Jb#!C^w)tj)fVâwQ߈8S4 t괂i!h.KۿPԾc3Wo 5PLmKL#P "M@tCJv5J=@QUWa?KNKjP'SQJ]>*tArd̜6diGdT.Ҍ|o,b.mn2Ra)KV +2]f"9KӔuHo</;:85=H$MPjhCGnR/e5AXF9~"Ts$îzԤ#_?=JVbxU*")K|%@C%^UwO%&k|WV#A \.PWl@k1g>oYF9S(6ưI ZTtsVaYï-Fry=qea~+jǸhLvy%N3NA8-foӛ:Kc$\Er }\7"d'iռ[T oM /JJY^yK^#?** Ğ J,gva+B;M浕j Kou!LL ,}IʬhuoțE9=k)z מ3d={rd  Vجe#t ,FAȷ/>MD7g lS+6_+ٹ"_ehIpR48*;:8'禹'㈞aA+x=d@iAe'kgA'ĩҹFF~Kڇ3.!:rԡ礧J},ɲEF6W1)Q+43|1+ym~g *~HK}%(Zί}to"۰K֫Eϵ\ȟ{QEl={}1f)-=U &9%cʔVډfJ SoDL Z(٨Ú3,=eJ/yޚm(&Y{&J%x=&ȇF>RnOEg"!H1V$"%/}/?AIF*I۩ DFag![RPDJcDJRfr"AIݡ&GbII߳! `s$P]Ȭ+d~6LjLmRTh&3'01V/8N6Y|2 qdz֐6mdOfwܵٝ$S,;Y&%ϩOtS#c |1P^6+*r8"7=eTHE@TuW aoʚjTmT ޼9Tɟ#r2nX1Q ;})?N i琩 &08a9ʯBUh'FT7䘽"`W]M;]h +p@pٗD?.S@  ,q 0  zKԝ> rjFh2n. &ѫMs9v۾g[ؖ:?xݱ1Jˡ,42sOݎnZ Lm }]VndfLn,hl0xN A=ão%ΤA N!$8|\VJ$bKbi_7Uiq[ CeXl?%1tviH\ KhlO%^qj?ff}~âTQ>{et̍b9\p~] S8n/h/ߩt6K3js:ge O0&q Zuj98+%y((:&\<SB"*aXIYW zM%Zf|9'PA, 󪻬91}c=.>v]ඡ܏)OYDZ\[85=vඹ$+#JFIdTHBh!C9} EFtSecutbmA HVuuS%d$g5S%%9adŰ8c֍fj|˘e.z,q~^jO=XJ< p%~( !nX3>V`@*h~b{q VK.3@}uQ^5}w;G 00Vc x BD`k>i"X@a4(uwFݾu0@|#@@ D 'øZ0/A.:+g6Z+{}>5-3,:U4>{w՛|\wwHey8dF%e y#ۚrDֳQn^ƲF!*{ԗn$gTR|C ss T?]'Oy7鰐6ͭLt)*rSTM[=E >9e;#y=m>iIGL³{锌t:t`̀#EHДnPQ٦.diM^m6m>"pĚ> i.iy\>m7 2􊐦a?Du4^_\^h9/;[jc ȂP|#}TALT3{P9U8B0hae Oڨk55Mn:{\0uX<>p  70$Q/"ȏ뛫vۼqruy>m]vsQTbhT@^G.2 AxA@C *L9(i04z&= ?ʤu c@d :>T'?M|]k~J)gcAƯQ3@`;lSƺ=$`Ԁ h- ܐXEћXHLu'Ҽt[7ru<>mӤ %O7(Kp'O7CV 7V^5i~ޝv}B! OiSBUiwI9No7;dpֿp`:yܼi^?ۗh9Χy o{0:|jޜrZBPDFp0E l2ʧ_̸l_@?NI` 9kw/qtyybI\wO |yp}ĉD= ['`iuBPOy!'n rwnϻ8 r~աjм{ PLo4leyS,7tW@Ы[#~(B(-08nM PŘi՟,mڳح[/fxz6f<\CH)t.K^=5 R: p}, 0loS*4ډ7 :3~h@? ì) T:.$1xth51֤2@6C3ۧyJ! +R˖G<iL硉70+9u< "˼0&x{ tl- C,9Ei<У DP$L8qN@r.Ma@SBxXVRfGnޑثfiO-Zf7k@ӆ@h0Ѵq7mtIԻJ^ BRo4[?BihSkv{fk4(0)̳slouҨA.:?Λ`J%'SkF }AtMDFV R,ZgKӗ/?|?-(^5dBx㏤!jc0اfO{, =! 6mNՁ+{uf1 -4 !4t@9vݩKøYKnG~䪛l;_k"R#]rvqdep](˦`R">4mk=^Xt31 JH5ÚN|{ 9a62t4J409#u9 WL`rHt9IT AM 56ϰ H0"fN+'/x"fYE8$sV |t\zKPYa]Lj#Df{xmۼsUNs{hD;p6QO 9¯[`I"-w$<֕TNEf sh$Ll6T'&|L1COS n1RFWJsyA /-TxDZEV0:c.?O׷NZg{Pld5]g6W2_g5?!sټ!6?l(a7Caf(N#G= M#GoB3y&:sQm [pS?a>ZsSHCs3Hh@h7A F-`tp$562uJ lʝ w"C:͸?wIN{2>DEnW///qƸp&K1۽&fս71r(9`8HTO!}+N3;.5&]aM|^kLg?`?7@ =Ķ!?dpסG=:ψQߣ7M^ hRt-"֠07P}#8Q::Ƃ o> g?#VP@'=n bUx[%G}v?   ^z[A|99p8p|;#Q@}!\r? Ǘ;ȷ{փ_C$b~\`w\+}\@ Hq?.M*q+x\ǭ!Ap=4۴|%&XH Nz)[$j5XSW KwYG~wgwx)c-ŋZJK ~>*{^Co1SsSt9VHE -Hɑ~N^z6Y<7ֆFs&Y7>e]h]Ku% .\LNaOOYm')9i^p9-Q 7`9Eꥅ3*XG{zf)fzV/EK/뵟@A4jd k^2 0<ktuqSX /q"^z?:.$6~uU˚=Vɣ c5(nElT+nd}/Xn/Cmp= |}ۢ.>$lS卢(6d#}$]_>+Z$ap_32cԝC4>y({!ݖR7//G`мMD֮w2L@f_ tB v5Zd廹] :_#ІزMض:|4P!5:(RX P=>`ۏhf7\42B 8BUOZ7FnvEӺޕhi.iU(!׻Dˋ6q)z~߃^P}A?oBp Q !MJh9KYH\]%Neֻ[:gAd3i#iHs0TUb5 jLT^PyYMyœ:Kwoh $H_ĈXfz]urz t#0$7գz'N ,ts$45 &b0i4zLz 1{[:u/{B?E[ʑUt(˂i]g)Iz*No/.~!9)2ph0ҕ[㱙Dd/i^\^z)d}P-QP !'|!ӣ>ڭ*U0EG $,y {ROI޻FJsbknJJb_!bc!Vbg!bk!ƘkC1;C8 a5m+U(W g)ӌWHTlsl"pǰ IVk7d TJ֒[gݫ^u:^_ ngD|&oxÜ}_c}_U}}}s=|Fo#o|0a^7.Wy(Q^}Q^y>z&g7g)UL]ZT!35^]P5ԫ Q*tA'S[.d*ULҟ)T3%t_P͔ *yA2S /Ϲ~aget!$YjY ͙LF^ü.wۥ$:(ya?&+I'CqK1^Iuq:IxNpxbc^7ym>wǫxRދǶ ؼN*b`S7啴%)`7@evKG ]/Cs}FrHQH%2㊕rmNr4OT~RHr ºٿ'_sDN=|H1'7$:8ga05/, K> 4,Y& CS2adXJM2QWy#0dHG"{HB HeA+ӤFR4,Y\O03iv0=CH= w14[CkdC'bsw~zP0=DI{L+Jb}iR|#kHl/ C)>J&×0GR|m?Hl/D7Ă iP04`HH{()=={H:H ASzHq2C)V)XJ8LCI:J TCRzH(E@= x#G\AxKH;^ cC ƠiPl,+ M:zm.[D74ES5sg<:' [Σ{Z(7 >{F/1d\"/Z!N"䯅 Y^ǫ0s-"o|! (΁aq_ 4з8Jq9PTJ_9P/AqF>hG1(Ń9d,g>,TG%}tPŃ9P<(bq}4>*ᣏG()fY|%<ȇTޓP.g핑otm)M#䓭.=Gægdk~9)yg "WH#= "+EK"/N"W9GzE.O)E.W. DXYu.i'[J~H;;fVErdrzs9"ǐ ĐG yPbF=h!i2vRX^7HYzUFϞ27;ޫ x㝣*=%h* <2A{',0}q™2DOJ NtZC"fcM }:پpwAIo ˻d-.~`Zx_p&:w WÏ 3-Y?\$a.x}d SpJhϜFDĈ?Xl \ĺR(UÑ&O_ڕOWY.Y^虭~gRG!EĢ7۟.{ 0)FzU na2PMtߪ&9kb_FWUC|ʭXUX7x"w=Zߴ'3GIUy+hQC_$Kw916`\@N(T/)dC\@ƪ1"/? >{^ mօs T [MW+gC K1;Ǖm$ Px,0')p"hE F x$x c5#4陯U] ~BaeFVIl$cZ'C؇"aTSQK#׫~ޅt81yyIpѾGkt>;}Μq; ewƌsbⵙ9hC%2'sBL wjPK)h8Dh?D?Qb@736¿JH^L 6^ZTχWd[ 旭mjLz=P-v"u"vYR% }'TRk @(oyi5xKjj;2gF?䨌G_:“ < B|4TR[h -0~%iq l/`B1Pb!rp=RHǼb%\*R*#RIX3Ly%vbG^>RhQu)<=˦-C'w-jd/ģgpۘbfc_#HNŠMߚakvTda4 <a_A K`*#Nq4i<\kBC'~蛯z0ݽf<»j0$4}0QQ-}@XKC&!R^1sgV0YHM*LMӒ@ 'hJ mXE"N?;&ȠT੯tAw %6742"|Bh۞dK`*aOl3)N8x7,rkHl0ktD ci3Isp#{*yR&=-TSFb|N Vuȇ¶y}EQ}AꏇgggU~.) - /V dX}u*ADM~%(=pJh)X,DeX=czo߃?UHG~=e>%n4W74Z,yU]ܵ) ‡'ȲPFJ^ ?հ lQ8[x(g/7N&3P/ 5šr四?T1܄7揷ʎʎ2x!ҧ ]@zy=Uj fzh@giuc~_xv];^>v9shfeF:&Gs @FN+51NOXJGy?tGO/7 s'{[=q+ˁ5}zQ_9 bz/{req u>%HוyNyNPP%NJ Sg4ƬtI4J TT7+#tKMc"?f!K.*\%̊!;o$y:BJPeaC%羔pe(;TI%[iG)T Q|9~vJ 7e{Yb8pGyAb垴R""[d0JSd0KȘJJ'ŋ0JCS@|bjՂERYVT*b/(_AA(yA"2UERNjZV -/8xGd{ M>_~ZӪ493Yю v}rcVnb3ƒ :́)k>r\I߈>rk*7&?ʁZY:k ~{+^B[V`Z䜺I.s`u954+~{i5#>C_೙䙭9lcʦ z*;NF^f6תUk*ОAZ{KF-%Ǥqp[͎~yGo92!><|ux8huսf9*l`~Ґ489 fLɃߴĜc3=iFVe(G(Hݺ88L0qyIviSLpUH;c}R~jd/Gl>QMWwi2c9DԀ~SIe_A(B4`zu >-\b*au\a0 'H6,OI?˂CU4myu Ԕn޻{^Gwjn㷮_PNa<{ɭ5h4^f[F6F?+ ~㎌ߝ^wh,>.pײȲ"vy}?>!]i?h1d"ʻwwi fuk]sn'4|7DR{U?ؐ {jX_S? Oʮ*g]wSۂjՌ>>w!4itJH@ XF Kl;<{zjK-nGv֮|5S\W=X0B8g 2#k{-0(fzFp1*+J9# w3܁) 1*WxE1B^ =bgq_za~}K3;JR&<ă3|?RkPG {,P%5b7r |56^< =w LiF_W'Qklxv Og |8u5yԊ5>ɓc_Qa@p\v|mFGsc;v.@ͼL I_6ɧ(}5SYUNW&qrR÷1DzՓs'~WI^&/ UG%P,%2%k~@~8ݸLDZ! 5Sta~&!~UR!=s-ҒzyRk9#, Ǩ!L"Γ(6rI7@ʸJ7(ޮB9 >H L0A[Ovv;2',wQ.7'ᆿ62;{poJpǶM9_Ͷ `^'N]mmЊSw8kt(⭃m\`=+@ݍ3c48-@(({;<ޚ_}%Ȇ/qnHAC$;fLQp@QrX ϔ}çZdF^2,s;-mml)Y0kX*,gyѳmTf`?Y+f6b4dg#.fj=^y<<,kQuB\c Ӆ*C6q']v v0&9l?rT_$YF?fb~>fK+a8+t!8v9H4w;Y}՜NxFAͲ "9Y56H]Aͥv X ETިSjV>3ڱS-~P|#X}}rrgԜYP3+&$'9'ς1bj9i>jLV3dDVq"*tRs>MPK0!(>֭ӌevոd$J2=Io0L`q9fY|VgU*b 7FEWb@zv&$ 'jEGʵ 6(s>Rq^8AA]R|?[;$폧'-t/4QsbɕGxQ^ ؾlһfh\gUGj+s59oՏVXyglSO//Gw;zԯ{kFvDmtӌ(`kn>V}/qp}ϗ/NLWBB}-;%$w^Ð)T1>?Zؓ)$f%,glژhX\%/[>gx)* w͟jO!|F"C#|{vv N*='_~A Ƚe@go&u7O_8m_djߧRàp+v*MVU۫,5U,_X_9+uv.z|ޝ_.OV:_-c߉!.*׫^uƣ#óй+~ G'?7o{ˈ̓aS~KQQWj #zG˱dӇW<6ͦ !1+HLrͦ5F R#?cߞjGƓG1 t )p}.ўGӯ?1L)jDt3Ŝ5E CUlac j`{GI{eaY\adj!Y,> CQ jިlP-콠]săג`ѳE4X)S-iqL)7ӕG|5ӕ"ɰZ(AP@)t P^*eI7ICN vyZv[5Bk jGe8K(xGάL($SJǩ.:'Z7t˃W0=~6S(^~]woR6_RYVYrԵ }m {ovf/oSO Rl3^i( t.B] <}wǩmK>~󡷜j7/Z\K5? M0[|vM/Nu ,-G=K7ExivcoX^D -'+pw=EpcW{Zo+WlTzcv"*>758`z)]K=qR:ШRF-QҵUqc҈Lx2<5N"' vʤAzY53 kLܓ4m+&(j MsBsll" О ̇IŔ杤zuNRMzn.`$iNR3"fyn"I7Ete%Ms> y2 hA#k 3޼'h$o4rod)`Bz,Gh([fj.3Y-?dhf %]&~ޕ{h6s. P՞j,'sv {z~gV1]νbyhk}ްBr[ֲ<;n'dOG2|MslIeNҜgWLaYrmYWٷygYŘp1Lܴ e]epkܭ-w'8L<tL y-el~Oե;Y<[ֻkVYdycݝȵ?Z}sfue34Q(&J<7y$7oL'hl܇l53,?^}QV57z< Y5Q ^y4ln.(B0ĒR.U٩m2s[oïuGΠ׮i `4NhJݲ@odYZڿ=_RNE=Y-JE[@ -5˫kP'5W$LF1CD^I%Pk]^L|,˫Nda+Ꙇ\C'VW6q7cU Y (+V[đ&/{1kD~L㟇 Snj,ND[X:Ob yv;P/d_~dny e/*?v'\~k\(]ީzMT sjK4~8#K[`J7߱1İačQXHEHCsO;tmWBg}3˒BĢBrJ luj]YA/iv/;Xuc} YJ痜?qo!5Ro" [Bu>"o_X,xG,(mj ~)pr޷S|NGt;n·hMZ%e)߂X 0/y 뭆)̃`]'qSۺNrX@МfvQPJdv) c`ٲ`%,dl7f$1ZK5Zv%UA, D@졘Us#nF:uhhox<p,V}t>J-i0uSI^~{cUtz>.֘fv?Ch!.Tq҆6VqbCRMAvO5VaS*i~-k|Ïh* ؏ ۑvȐܠC%dUiд̋$xQ7O-曌$jMFĊ{i8p9r/ߝfӽ|y.kqB^)T\||*O>52"Y2mhIB$K"MJȬdI9m ىO D/cVDiPҰyY*rZx: ! z뒉\6Qa@ʭJ2d}rhD<\N} %*ro&=xA)c >D䀏E,[]N]Σv4_4HAC#S ǟ&h QW^)$g|0^^/G GU?]FW SRm9ѝJnŜұOڈb%Ht4ߨ~޻|L u qaLfn_[69+se ~$F2ުp~1B >z?ùfp̉ R@^ ´\]ڴaOgD]Z'*cP:b9Q'6 ,^ᙣuT~pIC&9hbwP}Aqrg59h Tيg%!]^]\^{C0iw>w0֖7H6`xTc 7eC32rc*rxcվSew>(2 iKmL&:]:HܰX64Q~f\m!L|߱1L,`3S͚P"bS M++C;SpR9 X@?4vO@Hwn\\OC"}OW98I痫^3: W˫^u-xq=ac?\Ch7yBNzg}>g)]^_]^ z z<9$8"wE~\]uYo'M?u0ٙ[c0_:W'B~p{v D='~ ~sBNs?\>\y(Id~'G8 CNW.ߥ2* rk?!} {p}6^]|&gʸAŇ  {}`Kh/g_z`-=^\#XU"mZ96)@ w܁vd3t{IY5 Pd*Ppb,9./ |1ǃ>^ $=8LenvZSgS[Ssk;Ģ1*YA\h3䲃 *6hx(f*0=8SH9~Ӝc1"oLe 0CGǿԥN \U˥_GCi>Cp' %U4X'`Nϻ,YGi Ѯ(f\STizxx#Hr{a;mP&C;ѬL܌[CAȳ Ʀ ۊ,Xleo0?aB(4=Vm&~ 8 d:$. slj`|13@ij+n*^=LZabhӿ3[bLg0y (I0L )6MФ0Nvfxr7r [$ Gy6X҄u)f$$!f6 hb Nx7MRNHJcoR̒rRLhHuQ^ƿtg0#13! 0a73YG_UX0Eژ=Op256+ģ#7< LwhT0U5bc[9ڜ1ЪsĒsb,Re4(TEMF"J)99H2M Z[Kow 2n^8<3O76)PEVy4~7R0=(]2gjlAAqv8T= @"gԀ8, $7!D{C$J"D@@)OÈl7r (Pi0 >2Ux2wl @xrv[ԩ>wsmsrJjԢ̕\+N0r [tqvRR]!p^w!'ɭz4u9G~fu@sI&IΕs""$V00`2E[zy(;I& ~6"@o 'EA[GIJu` - oiśRd48R4l\(3uDCKٿ\+^(BMĎ!FHޟ_wLCm:Ve>݁3J\[w57L;5pv},({b8 ®5QN@PR^I#N#M 0lTy5zBYj:AaTx'͇°bS27YU LTMGҎ^Lex ,Iz<㥉%nsEob;`zsf4[קbf`6׿^hp&ZuyZ3\(>v;/v@\)D Lpƨbsڀ(5V D,(5f7B H:kb41#qIU/ \5CB@RתdqL{[Wj6dALC̽1 )x}2UCH`0]ݴ ޶FڡwLAU4fm'eMAI; 5{t@}3o޻"'6232\!E% h-tFfLxO"x*;Y B]H cFp]ߧVkkn XScgAF+ VhFzmNBs!&W7Kq>:@sTo:UҜ{:Hvu / 4S]ݭi/=:\y΢"T-KI=8U807X/;Wy 6W'WB>AС̴fǷHdn+^KR&) *c aM bkC_&*"0AR;:N9,Yd׍`&d*207K?S"SDA dd$BnL2p(*-t枖!-i_I,'^R-TF;/%""{܂U$< \Itގ Z'@ㄶebY> CM|X{m\w_(=>#:.G#b;!UvK2.Ǻ. xn ;@Qg;hIu4\P6Jc+BqȀsf3]-#n>W3}d=x{=X!$Kd0v j<Dm^]U|S)]\tq,l d`-Wմn*~?5Odğ:I}T<刟rU?'^xS~)?\ ~k%I`m|:Xn8|G^wq;Qmn7gtVm&ӾȖzP@,ҍ ;G14Cc)eē]yU9~AoCʮlU;ux!sA[[G;2lSлux]kV5z:A&|wfH sQg8@&0Aw I˾פN6~ƇـqaPMFlV%`dpgW wPMFdC6DGR^>`; PLb, xe?ś$1?A9ta/a{(179l' RqEyAj*ݶfnC)׋pns:sF%!+'`beࠇs_J998. {cHxtNL˘'^5P6mT:JRn *Xf@r'qO}S%xS[Alf#M<:I1' ۵q犺%|0_#N㞠Jv9Um8Yމ#D$8';&(4K[-wNAf e4P1N꠸¡B.L8b ,Pg1*n0*=2zAZh/ N)D)S RJRt`jV^@n^!n7L^V7.*?2tܲ96fEǫ5Ry{`wne }_AM6([UKV3 >fImg֠&Xd!-2Et*Lw:e&cVP0z^Q_E (Ny8xxrCZ+)Z"+|:}KGӶ߄q/N*3zk;O>bi]1:@ ѻWnCJJk7S4\rg.5u֚m6`I'R)KrRA}-=J` 7UY{9ٶ?G#-A'Z##y{ ,9exDžxD<V.PQjlH<\TgUk)< gWHd9THּcCHD5UI "4{>e=`.xdjVQrV=υ*z ɫVEʶݵ.}zt#szE1)ez<:kH%qm'MY5R[F;o*iJ8M>Jy2=UTƄj<^WY/~22)I1(q~t熉>pj- dUPʃ%Q2,#MAFW4-IYētk@1Nd/a4J"fXDlD^ةƌu/10JfװJG9_dnp(.JHuV`;fRv>=+3B0Ȥq6{`~$1Ld3*I" TN-& PT"K6;_,X_vLðsݣE7.[zR/h(9!ɨ$s)X(I.iY:,LfKOEO UA4C1hp&%u7 &R5^HTm cm?l/&K[&[[wX4YNX5)( GQ&$ӷ"@m;Б|H^U}Q:ۯ<*>\&uTv>騠|I@VC%2%Hzkg~05\eJMmYJ].&szvj8 }1X[mHSMADUN$ٓ CgKEsncPZmH%c%s:7T&q+>2A=% 98)Q2ZJ[SV,{UeHRqAؤ 27++]:5Dr:]O;eSYM?jA/ !? }$q o>❀vT/{92l71\`d`0Q *~72767ӤRPlcM4v(f[i0V&s^ \,S_v qR)]%/Gc&dG`#эzHl&0 C[ESH+ViVk#5充 (i|G=o2"Њ6 ?')Oy]Z3X#Snmd+ۙNkϙ$Si?%jDP#kD\ }êP&dW C7#/jnw4gH/O"Z-ƫs.-Uw4$>țOI~*$$x Ϻw= "hW+2MhaQ h,`;S6؇+-k0C,}ѰvՃ /ڭv?w g:JHG -[y/^Gje8AA^|Әг@鉪kc];b9°G2QoA9i(\7M~:/(VW5 @DQA!wA,Bo5)ŅGM[ hEFAӬ.o2fL@hHOĚTˤVc4٧Ɋ<:H_Z¾V~:󈷍7圉`SK04kC΃9XǔfN E?Rgj+4( -YڐY>G3\,/s;>O?>^!'_zπz\.zxH\wrq) 9]u>AC@Rwy}uy1|CǙz<9$8"wE~\]uYo'h9'AӇw}ҹ: 6;ݳkOh&76e| *AO.;W`y:W#J"~d yuEru`UKw}A○8|ZOo:t{\ qC<~N' pbc +R=y? 勣@E,Qsܴœ^p:ɞ]68'`F ǐ <8^3U Ƽyh7.qw| :Y3)Ѕ6Oΰ 6tjjh'vGg0Qkxa gt[ &9 ρ!jإ)ņ.bc.JYG*ocoZ@H RV%6J?ݠZBtO5f Āfk.{\˞Ga>ѭ+4:M~0`ף\f2=rg7,` x'z& yТc=\.1m g̖p]604?uqVb!fa|6IuR /q3)[Qr\q6V'?am!0?׋ЋO 嘩٨=#:S [[.b9 }huuN..Wnw^?]C&vH_l]h@yf./Ýs 0P-=:Ü @ahDrzRU xÜP왰tJ)sN('I5YE+ ZX@Hp3'l`2 KIΕXq HqIYYFS+AͰ)~T"'L1]Y+lJ]qey66t1qU m:77-:]+.pvTp9 lhSEG4L D42!%c:8Y?ƭ@҇m,kX FHN!}10<*rAND?u0ҥ}8N|9jFĘAdN`fE+tIhzV# #&878q a%HSĐ6PUHp8{餍|(k4?qDx mLƃ|´2;xLeh6IFf &X1gJ }FZoOOO/?ևЬxAS8#}dy_#kL@^.9`/)I>Z熴9e330\+DXS}j[bXtx` tf5=}y=s sDY6r|Q/6Ng~s}NaX"} GD<_6$źD"$bF _B@3U_wtWZ/OߵQM;)_ٚlvfhm+UAC s8NI0c~$~bo83օQmB I ,J-F(bX9ϲ.'7RTUu6:5 nMt3䭀4ilA-",~}`L~/xl"Vd #2duTyoz=,ޠ ZwLl9wcOjpA3 1VOh~E<BD2V[Jz_?K=8 ~?GғbئbMt@t:+oZOkз3AҾ {gwKՃAט2f6`>Do)t' sm: &p$ sa?$I3w. OBGKRfnLE;|W݌O@r aI,GM9eU0 W, {'?L^_=_PP m *3-{</޷[EgPEnolfo^[ ?<$?ß5z}=Aݡk>S4R=&n{2f=Z*(ZAaz*_?i B0lS9: Wk_3T&{Z#Hz_pnՀ)7#^3jmrC5(`08~@}aMmn|)Wމ>3J02H ?~ahJǸ= `pqm|-_#J4.Bņ+&2ͣIIIlo,xd/O|;&v6/^7M4 ݸFxP"Rla65`>x#zȕЌ3.6Zţ#~d7Ds\Hlotc~F6<9t nqK,GeR:a\~(}!ķP3j)œɯYv*E48 s*gr0vs\& yKIf2sb?4% ,vd#te$ oe(z4_wĖG 6(i|]o{5A2'uMXKۈݭͭc l=Wt[lxp65P feFWIqJPu׀`ވ2s!L7_aQZ-u؈ZDBQƇz غ6=Ax#s2]1?A֚9CCO`N6~+]|$.#9 Sed-̡r!)*[Wu毵qY ߭PGL z`C UXcٖO:]yX dYys7$r s;v$hlnNDV4RYZu}U㶼 0ű.XPJ;g82"[lײmT+Ƈi|Xl&NlbFf82cEf8DR*/:{iD;8ˮ`S{zDeSQfzKG7o \v-; 奾FK} B; 'h/h0)_;9X̯0K] ^ U[kuuG{hI@E~ʢֈ\u}|'孃G#;,ȒY2t8Yoyb60',\O~a kf2snxP`JЃfJC]ςՂ: sğ`7N4I8[SJAW*(OR_$$]ԔK)݌T:@Oa TC>iĝ M8u/bΚ/y;I2 eDl}-i煱lV1SjZ6[UlX,y"b^*-NawsxҴ^ȓ}BZQKzXs.' hy/\ڛ0< ȷ__(b/Z+\YS`,iUs.&3E ZmAE/Ʈ<Xr&N rҠ#\  E`UP"jiuW7oX/e-fxC:HL'>pg ,ȝi-kswV[S[,:aн)-yPNES]-" $],r2S'Օ-+U+PdaߞSh )|SKq᦬1힒3sꚹbJ^,NLiu1eEV"b))[K1e/NɾSy8[Yk [_|Zbڲ1¿6 =pkDžkbv|ÛW#'5Yz (_vY'4 )gz[Z[iNhՔ t^kI,~yƲfs1KFuˈV峳,-& 5M޷olܒsHicX6X6l*t5Mm%V]O9EA5͝yל^z<'2-dk~}[b- [#k9i67߹'gEjbm<}u-se9U!fיWeeZE&d\6#]4}fxĻt3sޝȒ"fYR[8+fm78NWz#fEL4:L=ѝAfkƎD7VHȯJzxcYqQJ8+^wR,?.'ZԶ|u =6夀!\׌xmws)3Q΄EV'Ϩ.:ܐO,Q]2jZܐS_P(dy0D>2MmjG?|sC7"͛;"#\n %tU %[ccCճ-zR8V?ܲyƐi2 kjSYvg ziEUF6]\!xg7-)9mc?&]k'^D繦) Xu6q()yiIDt.fGTm1ӑ;>{sߋL qזRU;]ډW`5K[Βt7Rg姧9lVq,,o歴p+!> Oۖ+l$]Nߌƒ} E f䓡yRA 4çZ,9K'/rũ:x?ωOFTstf3]V ;v!P2t}zz ~?s{uQ[* N qSb~ 1XrkؔC`x?;omu$_6E?e Q{*f.5Nmn+B J2dO R]Uͯ5#K{yH~$N}HTiS;9}YW5hںֹ c#7^z(jx[}H?i:w׸ܺ?v}Hrjj{tYү\ 2LvVy<552/7 x3p-mRL[|Vc#6{+&Y6Sȥ 7\! }(QG[Ra4[`;mq..l{-f,+}ɒ,Uԅ^_>Y鎅Gn<~]ѽso^E}]y/-5󥳓_F+ڡ~xfoM|M/CzrhzÕ&9{MI(79>mXћy0!>=԰õфߤ%y(<JR0Lfw,D/eQ CXŋڡhEcN4ShtgS`0̇?Y[J8騸.K7dukh|[ݸ&4a;;H6vGs7B-(mBȀbҟF~:P&zɢC`S(y5Gߌ<,omVܷ;`co؅Zxlފ89pr1?1+,c))_zue?8]\JԸm3wzvARֱmYϖ.hgجWzQ7~H71ݯ?_Z%x|BrJ ~#=!2'zDRQA4^| Sڭy,x.IWBbtކP jx7Hph4W?Y-n_Ηj,̄g'TBnrp.#vvJMvB/NjЛRIshN9H)<\劝+rHbNtr*BQp^V<^p4cU`-DNQSj8zqA{"hOY(!XX?&>1ge$d;/i,=$Wse:]s(P廳='3ACYԥw-ulF2le(nE q6ѷQw(z}DWbs=h֣-z4Kvgl0)) < @YKA!.-`arLf - nYQR?!QZP~itIn`ɷ*H ifwGr|r/Q=Y팛[1mR7IK#0d;xkφ|$ŏYņ䥆#yn~-lĻ];)D ",(- Cf͜`ef;}t 5!C2˥h > %}$ВLiWgX5T5h5??kȲ#Me2{f -E3 ၆IPv_J?Dܾtp m7,^Lcz fg˅6^`{g CT-CoQ.}R5X{!B):diˑUsHR#Ȍ{zC֖%48͢r0qf~ECcQ2&󶤇߅]/*>OX/GYoѝO XaC *X [CEvvp|]]fXI8D q4[2|-3L'Eb51|lǐx-w/ɪXuH"d,a'qQ.Gp(^fPu~ ZA3îfQ92oʻ| |ηO?t^v?+8Gʫ\_Z>ccA5&h%kKC,y CX@@Dv?H'ē<-H, $ϋ]doZq(-C:M=Rc$ EZiyQ>CZq.&$Д 5-dcjlOv)ǭPB4 r.+fb'> ]P$WAǥ7~qNp\[t9w9u2<3yHWfR]Foh*6srL܌I|P)1,קK& pJdN)ls1:AQ b@E:cel&ǝN=p=x1&@[ӗ<3$>.&$%FIl;9V٪IT^VAwkN=#o^6Fgo^Fnwt5«0H!wn7&YNˡ&ۍejϙeI F!irkiJjx*ģi_S?'!qD_CVBq ua )J>w97RYP:/!5)iAPP,gNٛ,Oh=`ލ`L]uAGWbD2t;ZچK63-oO.YN_(a! śPa<ij\R!^8UB{D /[ k 1kc3#_r LX6JQ{ˌ Kݹ.bD]L/U*GȻVqC~r, GJw,?;I_~-%%"t1~w{K9#fiGAXpPC6}Qp!QR'Lz=W;RɭC/!".(˥aBQ2WnU @mFg 61T' tj@[,=fx#~|i˴?"  {yAҠq> Gg`8:>PLHSb ^-NDw*qscjK Qw"y@P,g׼c(P[Z0Sۤj98~+Tx&!]'Gҫ:mB]~~1# rz\e8D dV_J]ڴqpgD]ZU@1aqXԉMlå ux@J5>I& C7(WWG+ lSDmI`X/=~w^Bp>wĢj8і7H6h[XnTcGBx,_- ;ToJSUd1V;U]R}f[ 2Q&?`30UW6 - }sˆvqDZ og*ȁQ3H`ԡaa;S͚0"FS ?M++t̝6;V?ƚos~ H:翓!\\OCЦOW9>/WgFso@zW`czV\wrqO- 9A;ϠS 黼@L!;vMG|yև"u:;lo&#?uٙ[c0_:W'R `Q1ډA{sO΁y!g'8r ߽>\y(MD~' G< e z]@ |[/- 3\@Wtzu?mcY 즩>cS|垞 lH?3/ڕVB`8 ζ:DN}wXX![*W# LjT~|87ACsb(Vhnt]%"Yg@' aQo5Nds$Ə}crufY"e{h=$?(s 3) -BɂG;Z.YRylZ.)OEfz2zg_Q&cP g+$@YH2`F+ C\)UЩunb HE~10!RGuTN"QF4EF!UϠ9l]^EvϛuA@XZ2֜ϼyK@҂:ڜKU >trFp*Ԯ k54 <{|A}h9@ W<ǃ&DD9, @U^httPL> = MEDf =xw1rx!N"i N鋨>ND}yMtyn 4.`jv0-N߹ Hh$ٞa}- ^Qc X'j)vˑVeRޢN;jI%cw/O6;S fnT+e#4(l$<ٰiϺQf#M˫'hz2'hz2'MAf_mw?;h&]2L8ZqRo^=`T䨣T9o֏VL Ы9Dڏf>|en5O>2shq oЎw 30.,P~cÀ=TJy@`Gz}7Tpgw0 Tpkju[=k$5r_{ɅI;[[t x1kQAJLLE92#ıI\a7RAq |i.YoS\|ufaw^] %jui@i쭕e3PaKH&4eu5q=-N!wY_ht2Uiך0-A WZt s;:jK<^h vdUmxG{mc;><zphTn[;r\2tƗQ01LQ)G-dQQ(8`dGUE,̃"wΫI/gJoߩ|I3 (i֒lPs-K@hV&EJlܻ/|h.hR)UjeqUc1 ܶCPbo3o8rE/*&eO2" UMH'\׷鈮36cFeՊ&6gѪ*<~5[|XX7"%ciSbCLˡ c̟/_p`E;Q 먉gi&ɏyz̟M|ȇ;qɇi5,9 ȳ_M[\cʅ` o &Ҕڦjq,(O3i2` [T Z*_kTI;w g 7 SEkj!Eu=%MܢHU7azӒjM%dLio^ힷH Z oL; |/1vz;ނ(\g1)́w1J }+LfU1kT+ʹ-4!S*L k. DNYojZ}Z|8~i_`[SԷO* %7vtR:Д>ϵm}dͭd#sUQ{ bt6&=<} O>۽{YgjMH0Nń†u7 LC),,džg.lBԙFtl6TxFr@M[(G|>*2\ͭT$NhTr;DѪ02ِ_ė?ŗ^6ē?OÂ!׎Tln>5XXS}V3jzyG{IN\n3!0 bD1jej#+P+8Ds0 g۰:{YVֵg ^H+ :.\ |LmKْ +m;Q+qZz /*Tsg9 }l`#eWۧYc;:+*oqedjVs.~h~}s1s@\т+RP8J|DJ @mW 6#%➥j~-Iv%+ɊK@c(kA[QOޒ'7 M#Qy<Ƚ 䅿  ?Z5f0 m'o6vm숿yJG_ v667''/osAgg+ 䅿  3*O O ;O^E|/)OE|o)E|)E|)"U*o*o*;ޓdzP({ 2 v˜ RR#f/f;[k*vJLćx;mz? Os7O5TJT)/,`SW~_IOC>q~޳>iп yOLR0=kZ¾  rM0-.1059$tٓ*,罂 ѾP[j3K/%7h2gvii7F 3 [c< <^%rEfxnh &YA:RY]:n/6,xJYqۄe)gexƈN`FFkbSD~ƙD]Hb z@/7ErwLqhJ\$pPnO'(X3G|p.y61J Pl^֞-؅7P&`j1mWJ{Dn+wknM](ѿOǴ.,ߥ:4e0Fh9ah$ ~vFԬ ~Esz; , B Ё%ŦOEuˏ#t =8+k9(\LFc/rMT@>;\ o^Żn:x2r#԰:~hڧ:v-"4$+|0CFѭo}Nr=|⇡GSG1"L sn! ܁P|ֻLLNGi7$9z[9zmu0Sa s!3x"٭ѫi%/Ft ֑8Ab8|&KS=k/rl n4H[EF|s02{oso]Jl׮2Q-EP\jLoL!!?gȊIa#Jpq BJynԄӾ_71O߭+aҕx5Ikw=8S ̣=Ymu]!U>JEdK>,.*Dbo@,ԮQ '@ʇ5U&VAD{sq?PL8s>Q3c`ݡI>Gy)1 M US\PaǧFύۊ6;*_e ޓTKu2^t.ceG &ГDiY'Ͽ8ǻr s//̟$8āsr喹{q#1NT6g[e(r}Meqrϕ"̕K!XxV"㜧Y7!̌.ٕOI'u e = 9FA n6hG$sbn,-a7DŐ_aĞ+}W*'bS9&Y 34љ IR0L܅yΌsc%!+1DfO.-RCʰ',(;R%k֣d &c9Ҹ 40?ϓ`v0|?7`(B{ .4ktuՅOW>]]tu!Bx§ Յ޾=;3j.dTj2C"́(<.#8؏n{\Sqwwz;@|OĚtK|lbP,)rЕ4%=H ŵ0 ke~`^ϣ>5PllsXBWL/uW- A)]S@8Iyilb:3f4Iy,+&7V~\ :d"\FN/ 9r)`&U+uupF8,~2!~ʩ 5V9 g "B?ܻ?S',ˏvkԫ`֖8iJft0*ٲcWU22}%J`/ Bj-mtx)#hx1kQ0JHklHF% @*Q["^-S:W023&\>Z{yߕ(;)օk EC`eԡaI^kP;v~ aI07j'BX<8j ]^QJ3l,*m[[?m󓓹͞SǮڭ-`{<!YZЁU0x]S z*N2(#, iC l5`UgJ&χF-[pBxKW NĺŎPɗGuZd)-ZBIOk;`mz=``)y'v/\u\d`:wM昖i1g6-`ft]m&r2#6qaI4d0bّקhOŁY Fdt~[=9OΔ)kq4ׯO4TfۤQ+@'h.ҁ2$E_'n̓п/qs &1\Jt+0O-Bk%Y[Q J@`J2W P(yܛէdf Rrcj8PJUuhA}uP;ZH3(@S'^*r'y(FC.e1Qb qXŷtbq; ̙ u5|_`[#J'Rx@13h9O1ЛCR[!;WN/?%֡+o05R>:`dr}JC(.rg..d%;ȯÔ)XE.SNx7+B`=Ke񔁱 l:+dqSkYܞU i5<a=r^"y>|#$I~CQC}_LIoKwh,7(|J יr9qs#>""}p w)^R^G?Rͧe&.u GO@R0..,H n+vֆ _x=A]k}j]pe~^fw5P5h _> 2S#>4hv9-~tFUpߪk`U|\'q&85g̢;SGB~ep: n + +tԶh؏"vGqݟ'9#x:+cM21 ڒj<I\[YT]4g+ |tlY(j&Sr+w5("3pY.ꗘ?m160qiP~111-Ӯ_1Ԅ~̋KV3@j17([4?ɲ3>9s) o*`e4 3`@ZG'*Fxa yƢJѫwE@h; yl ?PsKO qnoW s`JJy]/>?}skũ`LEK^G~D|67N:~}+Z~Dj\0r(kOzN +>u6;n#GRxV>9FW0m&5@cX%'Ҵb)O+@U^$e+Q `T7 KÏb]T.%to!Uc hqh-0!嗷uNS; >W~P|rx$4ea!ϙslNM|I%Ȳ4i,P_ݴBIӄ] >sgiObeKЏm-o5eXSq34}ş2n`ϭI(ф]^DY4{5ELT1a52幢óij΢?͛VErPTos w>*M"o$"i>X f ?+D*%~/cj2JL$MJZB%IMAz.WVliTE&b J,㑖y56,딴~{l'mO>W֥ao$"]'Sr?cC1* pf,]՝oTF- ,6k gVc 1zrYJ8s)1d0vj wsLq[i(5$z}xZZv#8ȃ)DHۘJxtcR m!n%2*)"6\Aj9nOwΧ0ףć̀~J+i?N|)Jl"̰D_hak[Ԅ2HVZd9`Xfs`,Z[-~/v[ ;?5Mxvs 6m>`M\wܲL;K[P#;٬(>w[x>ٵ)aJ +L>2oQROQk.PyL!&Y9,^sLhwZar}ɁxND2~k4ēZ">B1'~dID΋(K(ji]2=\lҏa62ORn3tJ@Wd38N @2KZ"jIPLf.qrk_`%;~vntDǯ38j^F8ܙ Kb~ H4*̫R-9}y$:-5t18Pfk`*A᭲gstÓ-QnTq1 v[ =>l= fCjFz!sF$ꞓt^9מ?dp:KioT;kǶߪMl!gp:2 +MJEP^M}G@E/k ,}0bnE+ sE9Ígta돍9^YCsNYXBl"H jjf۫-`jmXc{ 'G !'MgDDoZJl~s䤓4ʖS[XC{60743&[ 坟_U}).T  B 6aO,\n5)Wl VBcpfh)A!DT()ݏœv>+.V3]ER B=*qeFu1>COlA7O%. \BU'-5MBk^B7.[CL5nɹA%@$%;d/e6ȯU+ :R i6,7@ {cQxNI~-@4/Իl"Qr^>=D,IgŰ:'DH o4%uS{ml/9oln՝O+J" ̧0h{([ĕDֲK3*WRb)8iW#le"b \My6?a<];g/+XK|A f%4ԓ}ޫ_ڟoS6Ov*^ԋ!>kAw\4_<:)=gحvFTf?gȬ}séKĢ ;HgY#ts [yo:hDc5ϸS9dעlBhDs-ԝe,ԁ? DݙgDŎmԝb~ۨ;Qwi,i(#u~F7jΥ1v|&%>z`U;FujI8Ѻ4`Lekɴ:Sk9V t>.BS->؂R\j6!6yV,f!3\ ЎX#Ѱ/Gp2!4 %8 bTVO,v(γ)ZՂ ^ܕsKђ=$ovO%^(cBb?ә":n@`\D72}>PRJmllĹQeqB\'m8P16g"D?tv7Sa&\6ƔJ6fHٟțiL-ּ/VIDZ!u|YǑV(׃-VU~J+H>δB8-qͼixil\UZhB/$7WKG#d#M#MQ 믖8Lfn"ԴVer=4E&ZJD)7_,7QtSz衧ىɪλ`e2 -K2 -AοL>E(OH-'bs K_%9"$R~@򯛴gZ=%rI{rOڳ:=+ s.BF3Q+.gR"~I}X}<%,lSRǙ'%'yAzlI}b!o+J|tI}oJſ}>r?>.Jo6Fg,c¬ٙg| Ggb cvc|1_ڹ@si$1XDń14OG0&^0fY.~1o˜Em'Ys6cMw:| cVh$?}1 {#|1?EmaƘƘd8 n ".z@7 g}׺9AW0,KU䑑X؋"vu/ԒFdaDA9O$Q%fW߫|7C _2]4RmwE}\zȱk59c?oMfU;nZ|?B9qg \8^f})]O]ո2*[DowQ!PLu+q :^<644fwJ-Lq >)ǎ5S~\?B& y <_CX©zam h2{[Mݰw'D4*l*΁k6qy pꅲ;1Sٰ1u>w~>#) AG\o&wQ`P;(qHO= 4uWB12%]S&Rkδȝu?>ơc:c߃.)Pmqh*ma! J:R?sPE/틙7zc]w %=q4\!YBU]שFiw%RbUvw{>Z wD:@QP+;s=6Ñ;) Ayw,ڍ\ @֪ەTEr2ps㋭4rg&i^M^W|v(hr8njP-ߣnu98=ךM\§/! zV{ZN[+o<+exN ];p-4,CruQĪxI:&eoXֿ\5J]6Zk#&AE_uxw\.]6aew\PLZHP\X TǣsŻ`8R:11DDipg,{‴OKV^^.#g^DOZ@K To٭sPCߑc!*f҇RǢcQK  +o1F^K^ް_Z FIh1p'1^8TјXSѠ}ҝ0o*!Ǡejwȗ0F 8 ܢm#7$ͪ'f,JPV?J_z,zX,cܝXe u2qt}d#4m h`jzAGrZ{+6sb- 9=G SgeB$ŸTmV3XgCʒ.lbfz[sVqKgeմ21Q>뿹5%TTJh DAH'[T/@eLIw *sSb}F+d͐/1)6zcZ'VWެ9^xZ P7Co븁խ {{h 98tG&&'fS+A~yW_w*Oʴ8W0:MY9\Ni6Vn* $?uc5gS\,> %c fy'?)_XxJ6s[c #iTԠ1txg`XS.FD<;kAjud]LE^MZrS = 'x\3 Bx`;+'So]f!#0ؚ$uqߝ\awu(lA!Vn[@ޕ%`p:՛:3*f;򦘚r"љ˭/#BRe,v ]2 [؍oEΆx[B *6>wH +(usÔ2Qπg  M)VL~jZoU(Ό^bk@Xtc޸sNi_|9S&&vB`K('6L%,KU'8CS{40Z)qҀn7[+}az~(?#MUn Մf1!yv ?XHrR7@Dy[K'7&gO!y\};ZVB|R1"g9Ǔ-.){'vĂC#4@0 , ( L|ã wzRƙ k>.!"T:̷@/']0z%qM6OI>`QnRH?'&$ICܾ=U#th cN^VYhqlQYѴ1¾-E _|l:jxWjrT-wۥekoyOϟY_O݊"S|Vc螱0_=5葸VŨ4՘ zWyϜ}MMX8ӥr:KYAXONPbjE3ג)760o6as1{]x~1f~8dq$FS>;B1DDکps# g.:żrUdFS3ZQ_QŅYMY&/[ϗB!4r|،XH; E"1!0.0kcb֭2L_J eJe3 +!8( g,Se6uRxBQ.yQpLni0J t].̢9@A#bI\=S^N nj$ڵmX%:%vvI{ K_1t#6\o1]_ԛ)Uc'"վW}Vbg&♂eB^lUEEZy=F| ?=`OW$F^ijHZ$ao"oab1韇ze66;%_0Ĕ0g 2c .Y?0WjݽќDG|e4J O&,x bT*ZyX%N B4"ᦨRX|tY`9~bZGE}"1pҎ=/MO!+_fIC ȟ,&@b?DDhmQ)g}SIypoճC̅f}ف<͎מ)Q {/% ϭwww+;Q%ijYí ˂o曠|/ȭ2|Yhl9KrƹP$|t`XY4٩Ȓp8L[g7EAS_j 5Mx:*^+l+/yńtab%Qry0-h'' k_aWO|[x泅IBuN|1"EJ+2S WLpdXe:2΀^|uMc,Ȥ+#!XΆ]PHd|ax*)мn]܁3&ߟ0~'i 284>n$Ϻot^Л yGiۅW(u;wgOyj d=hFfq$bӨ&t!f5LKaq֙ ~o_ YLjw]?Xce#0S{ꪑ}##gt$=T!F+v؄|L׌IVU!sB 7biD [ҟa [1ZȓXt@4bQLX'ǰ04[f)?V3h,,Ӛǚg Aׄ'ZBl0=o0>g& '`w F9 H xB TtE[JY IM:Cɂ1rPXZa_*ohՂQNĞ39m[:,}w(U )(L=Lq|^(L\?tQqCpЉ(fA dhF? T/a,AC.@ˀ؉NPr:&Y>JM<_G#y:YEb=3@u*VU#Y D9!"qeG$FL,=1Nꡐ3Nw4 -1IƙtR4B zPlAq%c.ԝ+B oX !_7kS8(y )E4y\:B)}i&aHdzbZ'Qb\ib4Uxgz~VeZEmː&M$o1}#H7L}#H7׻7":u1;e ɔ϶bRrʖ, Ė:w7 pI1݀ x6cDJ\Z1.Y!4K{ VBD? s-OLp ˙ t v4n0@dC$$w;tx} {l: ] 1t_ugYzb(,>wGϼ̕Bg lOԉ3~{%\cګ<"#2M"5|M^(O%C k3np]Nu,smlߨ =&gkdžAfM0G=檕AR7E)S5~+Lf>LqJZ"9{7^oqpbz+㚳.(/,;OJ0{f;27(`1wqu@2+epuOfӒ4ݦ+3 YOI\zWGuH6;IX K6㒑X'u!qHkZ. YrT[K :O1w ?aBI4#Eost<~=4O'| ([%fZ/^7q厭f~h?4j]k6f̔VʕsM{ zzÄN=jpݒ`-"͛$oq W=]&ԐxIaf]BiHֵnc6^&u8jSWix;UʱVbc]߷9 'r"X@)HiOiIľOt`ߥɤa }ZhWB3Лu7KupSvuj<-B${R7"Pj X'ar'H ۤ{}tLL'Up:u@$1k#-.%)S;6lnv^lCӋwjVHќ/@MV/FCK *!Y@WSJ`OMN)S?x>B|lX Hls}h?FsyfeJcj&:lJg@GlW|=MI2QZu~jJL\s'eT5AOpx5nuOu5 5Mʰ-E暥}>Rll6U 膧C9E&[eNѧrEB59S˴$]Se3}$p" dSƇlng.1O9gx&=~d;X/ $1\w ( SgFdGEܝ2|Ԃv,X7%wC0ꖺh#<^),ɍg@8bB.Թֲ:9㒁8`# 8ԕ-J ?KnK 6 Js2l{+qelʹ߯O!߹68^MUVt5Xɴl,~LBi' {uSx`ng愢FHDFldPqI;Ë3, Ny[ MPR<%q=Wn~0D"EP``}+&_KII&N[faع|QQӕ (1.)ƃ`&4t]zd/R_0IFmTXAz'ω~üߓHWM8AG,,K0SPO.S ?m1}CcNʏ7D9g} 62G` bFc8bu6Уk>^TM/2?z$9oBbYgEKFgHmBr4cNּО7PؕcC?,`*"_eS_B \};Xݦq0 !q/UoS%,й KWeĄ4o, ;oڭvޭ?fjQ6' Ac㢃E 1,qpQ(`@S}݌c7+?dZX>.˩~'`Ŕy܈VUBD]>C0NN,tRNhSAo7c0o;П37Np'lSlNj{ޞxW#\lL(\yAg#Rlr¥0O!̕wݷnyh[G[ovVmd:>鶑M|zC6D_hj"0u;nMh)0I]Wv#@ ;;o:uFjt 0* ֫xnalz8=;i@0\&kh FvRm >„Wۇ @vHT;9gD8ZoON 6$F 99ahF Xg6j[^ab-v v*^ɀzH`SGs.AcV?޿v;-h DtKG֩u; (ޭbm` RHm:Fܫ_*#RIoe-*mU[Pо`KE0L΀O 1¢jV0h1 I!&!zmL2AO=$?::(P\WljRdUJ孲Uhպǟ̒BNd kŁ$v"LJ+!zWbIV\R+VS?2"#(b#a7qauP:ĦB%Mx|QHU3he4Uh*YtA53MXIvЀ0C= Ƞ>\|+i]rD%XؿkevՂ)ȻM^w}pnfŵ5ŽF4͑{+ 9G䢄>bذ.RB\RrUjeO{jQ-W[_]b{)+0󪘜Vd_\3ITUcfK/g/=B/v LL^OSjҾ{Kb;86,Zv㔤%{vƀ'+/k%v:SP%yUAs6 fXF*ŢN Z lۅ hZoݙJ̕ZisVaquԏMo7zOkOz0jNGav݀QEe\>)Guکayv:~*urd4whz8jX|qbzWK-h .*uzc1։,I0,u&) ]M#(Vcɦ**hG3`9m]!6!& fhbUr`V,jhc/1` f_40Zj>n7B>E77_›Zwu |/l5ߑ;k$4n9Sֆ.;FcWU'e/kyz m_9ikeMBXy`30Udwtk%(AT/\%ͫO'+$:GgvY+kӥ)IC8@֙ݮVj]fϟXE~2zDL;lMl+Zf^1)3 rloJ ^F:hxw:Q3|\b7òrԆ5rGxH. Bwϊ? TzV*nU|bȿCJƐP~CiVOCo#"Gsj7(_7獓C6=UZ[t0&șe=5+¥N f>i59Xz%JՔ:T QU핱x2y _A+2t2Ak&Nf&uaa LRVϻ@FHj3]MTz1kw,@>rz<8,7Ǥ+g2%VVF["ckVd@9gw.X?J:iWO@|/jV3lDx0ƒ5K]k5Npvbvqr߽Yּ孟/?vv:vk4K#uC`,Q{_{[mot߶CwqմUGUN]=߃Ulu[MtKjf=TmMǖiEY?9X3}֮VcO[!R$[nVObU`Hk*̓F a͹(kt,Į6~l%Ƅu>kVkXqg8=3寫';6%q ] RwU9F6i4S0kS<)7&QCBXmS<8=X?_> @a~:ԇ'U?1[Ze|RmM{# 2觬;I ;[\@vg]0 \'ؠkʫ2zϟW 7q5k<j;J=( P+ KLKki-akX((wiY뵮M1], `q5$ ˶07ە|j#7N8ʋj`\ 7;B'z6wMExG6sH8\1jWVx"D8,4YD3KIyAR-^{# RL1E1Bxb)CWOȆց51$Xc뼋[s6MiQ%p8b&M4ԡMEhڇ./%WR: ڼo,dz!P50PB`J~zW'z&Fۜn)۩t#9O62^` ɹT?j:z<Ϩjr|IhB%1:y9x6El{ِMv nmSV.³rYTChZΐ's?ܻ`^ 'a\yhZ2o_vKD\w>A980d(Wd?r P@LJȔ0Fv%3a.a&C@QTcEhԮƏG' ~X0gFS6_hn՛62^,AU&mSD+ iy곱=0:UO'E7ؙxg `Z-2[@znX"N&EIX$ OpyŌ@&szj]ggYIĥL$ б};rry- ٜ?R͂p3 0+]laRD?*K͈wtr}ŧgYv46'r~ZH`.` &=0eO3"=47Ke*'%DPT< <8Y2 '!DR@rR.w@(wGu-I/"pql$:Z?2V(}0}1ȡ+7'b'>hbvyyA2B5NMi7.^jFb{Dy;y<1¤a?av'35::Ի [m ފ`Π#9|olqYwH"1tQ>Y 5JLA`JI)F `R P'KVdmODzUleWRc2s͌jH1jj3Jguy vT@\qKh T,fmXLk6m1ԼJ_SK|ًkŗ=].$*̭('ydi3R[ S/=LڒW# LncDxX<|.a cC1aۮ"ٴϱ9z* ^"X١3;syR=}sX?:@Q )ģBLG@rڡ]堢s=1qȓt MNw z61'xWb>YԷqf$6.&szyJ~Ki|]vo&D߃9M 1q9?0C Ms84g5wÎgp1~J GfDO1Y1M d鍋K'^k"gBo\y:02x<݉ҋcЋbq~ frLVl[2K޷KQ#a}8.D22(Q}^BaTV#aXifVպ tVk2rv|L~ ԙ+^76<*.;;?1l3ݢ&sQ0C -c79mާڗ@ ,jCb[#_\TOUd^ـ<zt3e-N* B%1?tT Cer'w˴ʘo~sM-3y@V3DZrH ֒.'" h8#1dsBn@ =tw6Cv+CJl}e8٨t6ΛzTzQq,^Hu./L/j뢨@O&~?֡J.7ysϦ+$&$TKms+Ag)`E@&ӔEau?B1KiPN>go5mpdEk/SJwv;}ߤ?LA7sPa-1#K֏qm+? (<7@jj#@_?s˿'WǓ*d0@'3fl=;SDuBA΃L kJrٔML7gꏼ o;>~{;7)h0Ս59CL7¿G!.xj2Ƭ2XKsvF-:J2¼!uS׿q$ _1>p0 lbptFNog{zF#Ys1H+#RE,?7&Jl>T\?ːp\q"Z%Y @<9"xUݦkk6I } 7y&=As%Ӥ8cQ֪aSe(w~KN^4 w<Kz 7 !̄({1%lJ3cfgaLݶ{T>Q8B^d= ALIf{뢭xXx'`d"V$d\YqpWɵ5O=|q>L_\GDHQD&7{Cs%ls>~FG՟tx%/#hqY7qӏd4naT4Hdp%uA&4ǿ'dB0&&7 Wo/IIAzӷd1YWqزl 㒡 \..,)2OhExш&H{hd:6 Wkg?&A&҈a<$Q:C@3´Xm\|KzFxn js)"k~$ [OmlZa { MɭT<@^xd(A1;o?Xڄ !18GB-d2-s[qtm"ɱvDf7DhSpQ_bV򴋬LKďk!j5, m9au>Gc"rN=LՉ-Ȥ}cidֆV1or{ӱQFʴtt]m車𘖶e۶H d^^jYDZnS~s4Y@%g~\;WNmﵻ&Y&J*~i*7qLN;>{5np *@.:M1U1Q7I]Go4NIExzU\qz*dΜS46*9X9Ҩĩ2BpQOĹ/AL'v]:gPW|uZoɉ}tp5߷: V K`On|00C/xrc`tYND4Y҃2,Z[b 16)R GL"9CY4vĆ0鋼d1_υ81 ;|%7vH,pE=vUZ $ys4(9@uZ<228?g)zp9A!Ok[ϖ ^&T) cxwFKm4Z!TrSDM뗎;6d,DC*o^5<+Or)nDCkLӛtt j)E~=l1g M]>"VKE;5&<:{!C );Z㼳(Ad2ÎED/Wxe(U?/ 8Ή?vN[ycEඵ%21&,qs &FppW ib`W'B㥞h V$]2} âآNQ dEj_LL ՄقA 8*?B\rtڸg%zO{};n~l>NCm y.HD 4)wpJMI ?~=d^ss{Q[E][`Wmi 5#1j8od&FS. 唺axwVe%1lF@3+٘![P:)ZgSҙ3[!Qpz-Z:A\&YrMSYzyR<>j'O<O`IП&8O˼E?U'@p;0.BLgF(&spQ]lXG[o.9 Z.${K9$t6A=0jqe\tHVf>RD^~NL4hW 5DVHi!t~zA2E¢ѷܶ {aX=9$Bd9OZG*UĚI"rٷOĆh#]\wz9>:k&8;߷npCÃVmH 0]/)Z;y$x@] 5 PI0)] 4`T :}UgsJ:8y@ٰX*5iH6ǩ%EAx,MAGc?NsANfG~3}!|^KOɟek6 `Yn6.c^H5 EsA\b+Ȧ;/|c+kxJ.>* ч69!nۚ۝qqJi3UJ:|J<XaV+Y;=ԢJ";{xhww&c3zL2?zz wî*YY6n1 oR'5WjT\4wyOfRIۇTtUE:gn|g2%0ZyKҽaDž9Xwib~  G{QU,c %r=my^փK/^y{UZdzQq[Brh`c?@DzL3.D9 5=}%:&$Ŝa+'vYGME2Bsvr)땭 / ylAt9"WGrҫ' ,n''?9JtTj~'>KOCzDFe |ЕA8Ȗf0yL9 DZrIâ+I`^ cGhjKeڪAڋ&}eۖ|&}Gobh$ׅ`P:$s6Rs1s9E.G3s? |ohthBϓżn@[Idmzfri.a )BLQE"ɡ!80(i($ujpìIzBS ky,CZ>ʃC"%D8}0)EX5^AyʜZ yk78C]Mo0b3Fd<"B5iЇ[P9|kUS#R_]~ࣄ&HNv"=9U# DX hba#tp9Kfcd&D&ЧGlƶRPt2>V!D=vh"P_ WO15}bCRk8J`F=XeRڌMt\\@(ɈzaG0ȇ3պ,>Ƣ%+%/)IyIw6bZRK+Aadӣ{Dm bڲem}dER'q0`q(ijM!axB/F>ay17&Dot`R{MN'뷄Cߩӣ|JyjI2dռ3"S^6j^fE%bBhh,vABmfm$YhaQh/.T^ ^sv܉s}lŬFWzFNmS]X!#rC ,J:7Ż 8% ;Zb6 " rO wc~f ΊӘ=׫W-ɿqCɤs=kb!WM7Y"`B0_=8&'Xjr6&6ՠuw+赉5T9͇{WDLj%z/5Q@ 4;j Q/pJGC.'0R,P&j8ED /7~ݏ;teܚ z?4ֈ̈́?[阨(쵟`5@C=דNU2ZT>[ FשblJߓ/2801l90Cp4N`i}%b쉥]x8[*yU`h3^/G49$~5'w26ihz> 5 ƽX-hD=,Rgt8`5`8h ~rW_ iv?Ȑ t)\GJDJ.!QD8' ؟DdFؗ-jTEA3kTlc7Ւi3bDI !W6t/ob/YT]yˬsG#5sƁPb~`CxmCaϏMDqw '(h+ţ]NOy r4+?Ypk`\C>s柊݃ɐkp]xq(eqtA.`vyeyxV޾#*o)]Bx'ʁ!.S_eBU6ɡ jChHg銈 ښ9LPFil^ߏgpA`xVNa Ma'x-To漱nygQWC,|&&<.2t.:oJu 5}*)]ȶ!-EV*< _ fձD嚺4ϺI\ [X7λCKߛ<1?:a׏3K‘6*@iQ:J +S r!vNE!#7`o &ٵwMw1v*$BteEĉV$AeyޔLoFg%ސ md1u%^ַ\+}zG]0)ZY_4G{N׍B JP/2b򫄰Q-[2ו{%@Up?x$6:Pr1O9W+9>׿k /8G%wϼf q.A/5 P] ދ7% —Z NnWȅ? \ z P %HP1eɊQ`rvV뵾ڕ╵Ŧ \VuUPb*6].aJ)ZQVZ/;=4O^6sN$Hc]  &[-tqt mI2CfQ?EHQ*1 zq]OIqg%^Sɯ8 b VIz 8~p;H㕌P 2B:VrZ Zk3]4\O(Fώ:-T0/d#6hRل= 7$Gd<넜6M 5ݭG0o`8415h0( ;ڝ5Ü\wS@y!_\1;تuN1I:%*xAp8.a٠hj+Scۍ% (zKF{ZÎ5qD]_#ښ_kr&)N/.j往!/7?1p e Xց{hY߼6r͆F>^2Md}0f}@7/ha42W:cn+檪9Rgx-'Zz-/ 9h9M{~$^WE u1'[ 0;yGӮ(?{#&( -P z2I7MW+䁙 {7fCȘYU,DmY`Fh̼!*@H162ֵAʙqq5UO;oNt ӽ8_ב>x "#<_F,L3}$?U}([XUYZٟ>@+|Nɟo#:aF1B UyÊ;۔l0g2XI3o2QL)ybHHn:( >s ]ƻe@Q1^Ҟ(ʅ(!MHк82Fy*Oo#oWQH 5ҙ4Sc!>XشBLJG24b5:*.QÂњedi AB $\ Kɺ=i$W]Ȓ R5]GbҤ71Q;3dRT<,2vH Sz/,5}­+f˦Qf dlnDObY2vnOW*z"k1VaCӍA? 4$SPM@HH`D|'HShb&~Yr_z%86T+!W](Fg/"Ѐr=h6Uc{ aD >~?RfvP-3MF!gB^\6bX{F^Gc\r;e@v Ls&U (*ufLN!G]bEDIà.!LQjSB^QUT08{iɜǣdDfrNydr#f\Z)\UqXi@nZȵڏ,%O% m(H1M{<S%TPhx(l^S77Y2 \G&?&pb7cEݎc}%V]adKNRarkx\iS]|FNX-Ipn2a*xgOO@`E$ӦW np鄚<)b%UamYR8yWi :AYZx :"$7[|T&bk,pGpE#jwGȎ@e,;s:^Yq\}R U~A.[PVbl(~@H(kj`Ka)F-`eI 4([u %sLҳK=>cY{kǘݧH-˽S04yR`WpS/3c|/ˢɪ-A۷c|+c^7G/mKd'&)]a:<R<:GqP/_t;(u&;8,՗tYNnGZP/#vΰskF#[5i@nA.a2ZåA4//G/G v}0qkpI@U1.>ϫ}P)w$9;jY;m:RF/|[wæc 4N2xϓ@v;afe!Ǜ\2+ټ +u^6kEoOw[y8VAD˔7˄@X 1Ws_\R))18.Y|eS%Eyn;6Ies95zXk/.U魗;s(H^] ]bc:w?]Ⱥ=̑(vqW# *‡z{yo^V K e=ǯM-B[6x'UYȹޒ'i9lI8xj^nC>KNnXu֖ eYai:X1dB ep 6a$ـVJY l(lr6KU>yvבW}UȻUM D;*5[?{ v] .bqNw1i% clnz""|!ġGf`|jȺ#k+Bov4;tmnYRʬ0K&OabibՋr )'5W1V=Zbe4d)>e04Stu10!ȏ.8ۣǻidyt<7?vX)nTf#֣~䳢 Sɮ3Ö!t1ћG|Ŭl- Eȧ!e UH AZRwDx %PAbJۇ(=0#5e/o^`Y۲oFwtz#3iYIO& -蓗Z@a(h5E=kJ.skGƚBQC`>R֖Dmv)c3+k%J|"M8@G+n&^Чi\|3*8"j ngUA~BV$˲fNP9z( 1JlHjmzvd^7Q.1q_ӮU9P`\ kgQnBbq[ş:E@մj!X<LÛޟHOOYF (27.|(p)Ā1ni mQpL8,^C}j}%(V;`Z -It: N+,^d~ܳ:yIq 滌+DĘeX2h`̿$ ft cYFm(ULLV O('˼z5 Qm[/w#" ]XfMŗ@W>/q Xʢo g1a]":<u^3g:?Z̠VblE*((_Uf'}Z35rͳ~NѡgJ>WPVL3Ά7~GE~25d4%ҁA@!u9,reQ2/0%bͳ% '%]XBwP(Z^3seuѿ܁!j!ET+{RVs,]J0 @G{"[E1QK!͏{*2μn?wO@+wMʠe$--c7c#O-Oi. 9,*p,y޻0Y\EDVf:H\ F&`נ.؅Fi1?]nߔh_Fi C?@6g;2-:'#△*%)6 V`ѓ[U ~zoyK}yN bJ hNT_"\ UUT( =ޒ 7‡q_˽s m౜SM_, ~I9A>ȗMUGmE[)"<Ō>Y܌oA;扖mq/m޻4yZԇFhC4'&7dgüki*}(oZ*.+U}ts2Vj#Ű6|R݄C_[":\gA-ʵݽ Y|v^}$)\Ǝc3Q2Wi?m2>h Hʽcyj"ycb7lb! uLXٖG]ڤQF8u.XB-ra9׃q4lyh+IlSQ}Nk!KzT%ӌz r2?b\{Cy5s[섈-78Gǭ_Z'3K|Oǟ%Ũ(G,7|0 C+Z(lմ?+oBf|w\flmWPTWT EeL+0WF$9jj?DCN dSP/zs3H rcHqhګRE-KI{m׳1= N<$6i›t֠b8$dm1!hϢw8vBn6M[IP Y6@*63bO>.Pؾ(h )FᒐpǓDxD ׸-X 22Ӏ cxa3ꖜKx5 'd؀臂a7gٱ9ߊ׼+WYҐ=8Gs;wXIbWgtYéaF-@}A˝BH3ë$K0y-YnZ%10$cB3,).+D*<})5i+";`&vijt˪"6JNpY l@}6Aq;#*BiaN~B8-):Q//,i-"!w?s.|} [PbLS&úDcmlॉMrۙFj% i!WJAib Qsc .5䀐%f, +қP:쾂bAc_ a+·` C|py3V iUGԐU4dO& > 'dMsC DA(#brWg)IZ, ZK!ڰrq%($?c^) 9ǐPP>1$K2"Xce{Hp bD`V*?#pЮIE$ 7&fC|scwE42Hgx?}XlnA댎c56;aհѬQx<<|;kio(idl6:݈ܵjxoƗv<, }a?4ҡt=C HfAJ;(xfܼ@O3N[Ri2i&AE{;`;>*tV?deil@\L;(`=l>-a=ލjS9[{NHت>UcD&8׷ϖ"Keq:+tkY5RO#IA`kAQ"M;"<ޝB :N#U4ACw^GbP  l?|ҷ}(fygU*^] Zf" =e2( _ɽJ>3,ԲbFg 2wXb[I rh#:MKWVuѠ/'B"iku˵bL}F<e-rc /cձ ֩˷ШMe2P>] |~< Wdx+ (vSujVȬeVdn%nHj2rLʐh{-JJ"+,-`)Ï+#R26/>׍[]4dwf"=W]kNW_nw4.?GO (#+74U>XؐtZ*:+?Sͽ:?0?*'qraDoE) A?q$y/.{=}LHr"N\+ GUF0JWOW2d{и8j4?#.4Ejl T.K-PHP#RY{hZf%+h\w õ2Q; G#ozy VAM\̮iPlz7s,M^Գyײ`aMq9nɡ .A(Y/&G^P瑕- MYx>^fŨqSZ XFnyHtt/Qr3^m_0#r%9攪Dzx=Zy,7J,9֙'#U0J^P e<( g3d-u1IM%NaU0tNN E^"O:,XNU$\%.eBOJnR6,Q]K%i6FE,o)c}NN=1-MPp3vfYWNYHm#LǤrϪA'$ħ|wqL[QS7rL xDx qD.d-3Z$s4c`ݛ[@k6/0ۅļdAy ^ѐI 2{/?o]"Rl2Z焤h&>3?>ȡ@gZm++ΪW gPl@ 8iPBbкSоr YPICk£wHy+Ԙ쎗7'uh*o[^1)9ԉ[Ș#3+d 3W՟ WGkD8sշ 8R`o!Jm<>YVٕöv!El Ap-@`cLǪ #9ީiV`\{cVp ֭"1}#d(FYRvşUԚG, XD ?>߲@_dO|]̀ː{ 1(J5~}6CI"fffmYPgi퐽()sIq>W= -"pxD!kηz*,2qϴZ,Z.ټ,7yxEv7)rZYtHR:˞6\62GRukڐ ӣs(k҇^7#}ySu$͌(jxv1YoMxܔZK AdEJbԫ5?_꤃xسAb|:"\4\y!#Yq|5KolP۶E)& nH߲\xPݮȜY+8~62,7'*C@6J-]EV c9CѝlGÊ!KZet`9_Sd 8/K! tN)GmQ;8:%Fr_ geY۷d"U^Eѳgk(ş)P4?4_9.:ّɅsivZAa( 2XnFQˍ ω€ `OfU45N-no`=s)v GJ -XꉓUK Sk6p<t@&/ىq9}m|۰ 3N@5Цsi~ڸ6ռHH3} TvZm;a Iv񔝯qfچ W/kJkJ.-X.dz5In{냂2i* W最 =S/KcRv22fVRK͞\0xlr93l=З9 _d$e(ig1:9cv7\ [˂XfRv rtl,Zsm4ʄ`d&;Ot5V}OH-U : YcW]{`J:vb}O_>>o- _!lN 毝> 9yZ J!/b:pv0ouSeiuP3-c.p ;@ $}9KH8[be8Ai6DQ"Pzz#nmCƖx0dI{;>+v.5 "'2 g82 Y"%41nKW_iu3א+{ F:CO]l gO<#OztـJNoJʕ"A.}F'7k$#G3gu{X6  \E0OdjzChJ 瓟lOQ*rkX@\r7坌!' V.zm16hPh`qcC҄r(w %n9j6n6n@*N Ӂ7UbE7ŋL9\`5AJ i 8*S4l[ECg-$7Ѻ cٳ72rQߒ/Y C*{nu7~4"q!ijL6FSOpjGe Mif,7DFj@sq8*G;vH7Ws,)︵Oc`NKaaX Q.UTiRK/)nz5VlG}#>"lzBt>k\0j9Vc]$Rj}Rf1ȧ d>xDZbjsj.*,58bJ܂>.^K.iE[Ya).0\Kw)ڝ }f4 \Aѧʡoq5(#TT*Z+T WS W_ŚaḊBB&Q5Z^^32]|V .V%3BT `F_Ѯ*#Ie.*kO! !U)-3Xǁ./+`Qxy_y{@P &jW8yEܑ)q(KJ^r}P_ ZO}']W&܀M8VRRUaJgj ,5?o<8c\Q֠H|oAIr3ipMQR1)9<[ 4FX:HFv'eG4 0l,-ྍ 8"5Ó ͰyْAi.; m%뉮RȰy`04}ATa0k4KY  Q^A%rU(Y4NX)C4e1P.)PpO9-ː ;CL6i UZ(<-EϦ ]H1<)l+}@qfqfwqhF:+:q! nPeDSPXVj);¾͕-;@ x,wҺѷR 4%?C!/%+2E t|,6Z45:2:y/M8nqXH؜j/ q+2Q&4 aJt Ja0/lZsAea51[G%k830OIb$=+$+ó,7ǰʸL&ty`(p8W^yCD&T 3Iυ:!Xu)N'ɤV*6n_Y@&א"Q-WIeuվ%yc|"jsj_Rd>5,lЂּ;G©ʵ<PL> Ȅo YVȯd2:ӈ@mPhku ?F(50%KO =I}ʹ8G~Yn޲ܫl X$1hjP]tf1eP.ǶIh 4ROF cv@33]fpO >yC,r&=^G[oE.Q`Yh}uW@0&4/O;8t>NU뗽I|aiyEbH T#rxrfs'D$m4/{L GyjUZ+֠'=C> ^)' JE-Y^^֗Pet6T/Dj|_^rd:~uyX~+&t ) Ie:7ʮ^ǀש`>&ѵ ;LLlm=k,Ӯݹ3w<,P|MHr~-z',?=_ Ȧ/<.Z|TIZG{Κvk?<8;ڳ&_8O= ӿ<5kWZ쇝/V1Prtt+cS/2G ͛gH4r_  (IlO<>zhbEV W^$*Q,LTiPaC'k=hL~s%w0W:׬s@xbE83!&uüH@|s܇;,~pǹ`~'?lj}F?9ۇ?v~p<Q.v~h{q?4Гg=qŌڿ++DMQ[ |WrH:@(KuuTW}1Ѱ}AUȢJ6 I4݇ئ0[X :>v҇p.l_G$Ngi2E!de( {<p,>%=#C5YM Y2LfC|52֚Z#9HcxKJ ^uy!o ٯ)Pٷb^!fDbl-lK gA?M;%Y3)%W܏/ }cr`|?wz$SL.X=;2Av0G]蛎~4upsR6bSNsrGi;#ܥ(S L"YㆮeQoQp=)1gv5 s"}|2SBc=K77|=m+}sP3+UPGP 5_*mƗQS\0V(d:{BUj2V>B~kr`P]D^`sr쵼4O-Fqc$ Y&MOVн0ܶoAtuY`بݡydַ?25:[l:N"sǙ* Tyo< IĶ<$jp $l2Ӌ4 dp1N&a"7xjǥ7 h%4B7P8ݡ8ͺIi{ɕ3lZ퍣dJiaWd"z +whF[\29OrgdAXe\-%{=c4А$sB#)5sT ? j,E'-ތZ2) Ӹ'crb&BL~ Y10q4%Wg%(9+&$CQ~0Md1&7:Xe0"Ҹ?H0M9 5]^ ȷs|{8E+]["2xKCN5ĭd- t;:ICe.dgr[% &tvlʅD!( Y†㙛>u1L3kN6E,b71EY1#>#mh=!vnK덇'!H3D%{PT=Ma)?nj;܃?s8(M(sikUa:)-Ke`+)]lmbbTjKiܞVE$y0)jư^s8r4G) "? L6FR%>cg,\;03զU`iMe5?ѷ|X"uboDPΰg5Zx$m ڭeq(3hK4q<5:g;%:Ex 6i C7rwz 6i&=HMIM L#Qg2jp=>{&L(H{0G@*+4׀USl'T2T$qn*I9nK/ L)A/8Ms Fw߭mI?^4KcVIAd0LWލ'к qLu4i`dhO6〓6:&3rt旎^ߦ͗߿\_*G|Qm^̌ůPVh&a0sn xy={]9 <}Xr~gG},@ n.z.gU(LG}.ڷOOB]G̓J?ߚe%]B%4*^B}&SVK8$P&ki 9V-f:1OiChT,Tu.u6yP|s<|"؉0TsUgđ9>u3c.[ 74G{a+pOVLJXyhr>.B=+A'_cћN[X|D8.15lx#>ŇO=9>v^=Ki%eU; ^Bdo"A){q^#7-׼`%NF'?n0:mBKcۆeLܒz}K7b^̪FarqpitoBʋ9lH j9b` @"ci=5 \6\C4k[0C7ĜrN,uSPE\MmPvp7}Rס ᩵ Y g_Y)L#?>Py?wO硉20di-/r٬bÖ!-FO&CyDPZ̽3-I-f7| "Z%lw%ӫIrkpPKfvdPAmDy⢣/{FYC3@R('l#΋gTyba~^Lj fވ%o*av-( 0)df,弫<*qZjcC7C(lo;g /d<_WW5+fޯl.l X~Xm5sQ&HnYbh2~ 0d?ps@"Z'%Bmzp"S'_ʆvySn%M С厨t + FatsV\ݷR*GmzX*ŶN\(09@P Tg(LeŌW4`д _thZ {xyE7Yx'}i~r_HMҦW@kQ,ZWSo)᛽vجVic:!TH$p0@q`\m6 ,Kv(Rx>3"G/*s~qX~4!.M` $wͣ~xV&~N@3mUT|h_!N^m9?Ǟ=3] ScO7|C:]NT턅͝' s2qybKr2c,.I> .pOUK}G@hΆ%@zqHpYr_3,MBo' f/fƳ \owh^ܢ%b+z [1F78H&Zu~ ֙Ny<F(PTՉKч㿃Xh2ӵC3la2V<﫚5EB}z-xg/nI ywJ29 rmtiͱj?r$8u_st:b+h&}8p_A FA/`.E`4 KUH39lQo/`6h1P#m/-a/[[UL!..(E`a+xmI$ٶ9zbޡYd[EMvšuajv {qAV bP:!k@Sj 4pٗC @S_cª{q\q~ Nlkwv$mq%N;GJHvNgHz[  Wsw,.ZH>Md2bQLD%vKtA𭆼i1+ lakS kfvC*3Im맑;0p8vk~#G#`|t;R8q'ĽƮ=ufOpujFk^0P͖!s&A8q01h FPGB üE(H0>?q796k04OVRPS2/'Λ77\l-EߙlnT/|#(QE*ǑUVDby\)aZ:gKOިat)SPL܎УWI?HwQVB'іn$ڤ{f%%;!Gَ''()g`xS Z.rn4g ʂLBvz>1gϮ[t<(̹(slq테ˆ7!cp_ }=.zx]r/Lڟŵt'qƻ+-!Ϋ}z)L 5a,]h-j`ϯo-8;i_mDb~osG=JQ7텈$9 Ȫbto<Wz5;o,7 q:Yx;#z~ځv^fNe(.YFcIZĩFvV^Z])u=1ي@~F `#LM~Μ,=f)#9_%GR$S7ߙmsȸ ie4&V |iK2/ @zX *w35I%<^TSw˾ZA\MJ\PrhlC]0:Ү7ZR5Z65'@xmODH{G֠;G $ +5CBLO}eLqg<˪6́qlEWlQ_FH4&y{ɶ=Klo/܉]ndaϠ*6$8oKdMru t1 "ak8d"^T(M >I9vnȒ˩f y&E=BS*J9tzFs! fV+ >,,QK('t1PO22ZusSpikµ `B*2 hOY,tIt~ [ִjfN1 Hs>ُO͜,\ZƖ!*Ȍm1D8Py=K`NaQmp@2O:OSArX i. |G6q/bpAP|?N{CI 1AsIQ5L A7! ;PBPy>m{ѿq]N&R7 l /m*'.&’QQ^%,w R 7"vqDJ|r"4UZԯ I,8C>=ܥg1 Q (gՌ?A9'r2&k'ED;!z? TMM7UzjzNwX#:gW``HbԈqhtz:D Tn|I>q!4Jz2Cr9ޓdȝOIhAQePij)~Ɛrrxti→; p^4˯E.'0$[wf}(סhc Z]K'B̝/ﳇOgD 'СnL` LW C`a!H>)% jJjmF6W#<ȉzyRBt4|rk6sb'cJ n; s*hh[qF^TtaʿQOkgY4cCv Y/<ɡs.A'Ϸ %DH,!nr\EjDl^$5] 8HT.!+ɹTf⬳ob=pyS}OzzD0Og$0ϟ#- zOab hs/>itPO#|h[Cxy9XOTw(Ң@#$!VeI` h/%"Dۆ#tޥ6bP f~["%777?zPЀ~aS^WDI6G3 EP Dșeh7Ҍ4zJ ߖṷゥ˴z(IX 6k29bעV[Ʒd|[Ot\,/﨤sh ZN2, qHIY!'"A=]DLVB)m+AT4u^~3dF~ft5^WhX큽Q PtMMik7#ZX2OvBl(.1 U>c=T֫[ D+|he\Y+ ljVFn5v4:ÑmFiL/voy+͕%t_=Z8x9RGE En%L`Ea ΎN q%f;EʡD$ZJjZtd*f-ZC7#5sʘ (h{@br$ d)MLBD(p-j@q@MfZy#tS6ij8y* /]_.Aic`"uC 3YtFEǙ MH\{sG rA! hk--&l k[$cgC^:}b#kp:dQC8 F-|2 _tz@Z':6O[?ZCh 3X>;8?L=bGVB g?րCƅFk: ]æ0R:g Z=$;$unYx@УHE 8׀T9'.JSk~?jblz PSƈwF=  λAD8?=F ݕ#jzG&m"c2v.QuS`ghطpF;^ χV ZX85tނN `z{hnꁼ}*=iC+ :Cl (Y*R!<P N>Ӓ fg@ȝ "SLYTЕ9acfnapIJB Ł|n/X{xsɚzUAUF QFK J!bP"_hn6MVbxaAb\ΧeJ@ mۼHrJF+ `f0:~UgI*ʓ?$Q“@=EXAkyM9h2@j7 !HFC7[ ^kO*@C((PN5\9.R]8VNC?[J pF٭>pP4Za gnk/Xj}ρ`m 6*$ #_dO#H$CL*TZ%@] ax֤@~w\%*&g?OE!5>CWV  @V+waϊK [^L}0Ûs]e?c|X` BjE'AD*Ie/O47Sfj3Lo7Säue gCՅGC܊Qs}۳H~S$)o7E"MH^9JֈGei;>Igrۋ8[)L JQ־˩w@*:ʭN/)^V-J%T᧬~W1"!ct^WK:їXPtvu]grZ*څ9[yd{dSRn=/[ VMaFU3Ԝ3?dpk ;dQN< ncAqH;$'Z?AIk)ZO2%oMhS:!I 7P05,4㑁V#P;u6vXB}~: ;E݊g-ЛDg\8( _3tgry~`{ׯJRb@I!@mP=y~m6}!V{*h/}IS3݌ [HEIBD Q}|Z mb t#C  (zq.nÄÐ v¦.!R* > 0Fq.+:JAJ-x.e5ȶwM@G p >QFN,n#\7L?MEQ%Sa8$($hP2U(fkqo4ى*cQE| UW~ IZԡ.nI?cůA%;PE?u,$QjZ~=DiE2 c@KZșPeqÌXMMEhhjqN *\,//QzF^$t(B2klhJi쀬m=t1˙kN/拹.U "R=hUQm>oAOg7\1ە[$sLH\1Q黖"*L;I)1(_8[w=h).k.O4z,.\A|;!A!й\N-qi8sD ?:BnnjmJ .Cf]kWUM,fxi!Zĭ\6 .W9OlG ]+Fc "P<I$_s9[atl`HDl7dF]̳J>2U6}1/9ϊ ;4E# ,z`t#D\'mx'^^Q3ُ83x܏Bc躂)իESbɔ`|3f6Br]k,Zհȃ2Xm>qT<;% ҧHhD"uM(HT DmvٖYsT({>QTZhcZ=sT(uPb+1, 8{PJziЌMh`tXh΀E|7NqS^ɳ?fWR O@eI{(Qʐ85NXS+ס7;i]Rcg8t&jVhJ%ح;[ST&lNܻ0x*J7eE+AuYP%i:T,k G^GA%Sl[Jqv-CQfe_@đ7ۼ[^*kP:$p6kR+D2+hRemRcIیjfw/;Jdow~ `eqs=Rr4E23D;|G==Zf>6XC vv5H+ɀq f07qDyWUo&5]bpvaCx5Ӟv'~g 9p]Η j*.L:%&^FL GZJE$psRJlA+NRȏ<)a0XH7RΖE\ZNB0酓gLgy"@~W-Y$sak'3zSvv:[l6rW԰>s*;^m?%$!5//j@vC4$70&Ն4DըxqZ ڶ״<PUq>% y_Λ7k9O:x$ ]n~5k(6Aj񜯭@w8?-U,iHN];T'e?nQ۶`l_YUb3* a[rl]} u|gb+rJ3&cS[aD?`e͒ ݐx9q''"_ KijQ`Uegl9.0&KƁBE8EPT E,+\70uG SBf >2N? +b 'y™g=y&oî;I< Ucn&'^59` O&@TƄ l_-Hoy4@hX%8B5I 6t:M KP:\:#ûMz\G !!ԻK/+w0ʽE79$?dK #_b۠࿘{m/}[rsvk8Ě#f-:Ogс?ټ> !`c.&0'=6RPaSg~F*\.o;%|En7qra~9Yccn D?d?mW!z$QPKGjwGzmzT6[b>Y25׼*Kz'4?{}\?&E05z m)/t.y赱Xzs<;j~/(tHP_776<{8s01ۿqP0Bc1{.6Arzu e|~4*Pm:0sTRSfpѨ Й#/$ĽX^6ux~b>Y9m(Qj ߌoAk4D!ƢvGHyכ3?ʗh,L)As]k,=;xT:^q7?=tq? CX,kF {Rf]Z?ꉹ-]@{ZQأ:zGމ@2=j8ʮrmSc3+xGHo=[AErV|kZ53^gi> OÑujJ I O굺!C5f3. WWΰs؁:VʗYrLxG·;u=֓ӳ;8Fʬ=o s"p9^ rm~F?X8g)ǃ9!A&MND(5ml'Nb"Kg,RkMR`poƍ:#r) N'QLNv5렅ows S Ѻ6@ak~h) /h`xx3 v=V*k)P{mcO׿6S~s)%]g7}-BwHVp(w1BiRQN}+ KŸZGB`o BȤZI|s~KD&?6Pqޙ9!E~-=x cW5 bW`W9C,vrvg+oHA]xZ|xS-ZUQ naq 2 k랆Np`v#Mph_-N.;a"(V1{oz )\;Ji )(U`ISJ .QSHC+/,sHb 40~]TLpx_)1` EqYB%×nh+Q8Ǡ ΄m ŭM$X J;_PC$jNy7j7Ga*W5Q}Ug5OɿomewcVv~E|v_ie/wwwO5}]-3yk+*Cz<|,> 3.Ƃ oh*"q:eMQY(]\vGS((QVS]n v2pŸ=^ `Ue?|>XtIi?Hc qߖ+) Y 9~ck68KW&F/ ܒӗktCuh_dS_lJbk[P̿dWZMSfQmSZ;& w0$4UQTԯ~0-pna[&-={E)STć{E|ڄ[,# j rnh5߂ܛ,rb&`շAx;盌qЏcW%X]砠B-o1Ս~t~E zyُRA>k ^3oCx.ģM<)4 I^c-5F >X֣ͣd}6![`6S9TsP0ٙLphwL3#{]u?Ct~>]ctϷc盩3F wuCg8kY'FnBB#U%,c7&M4zFQ-a $trB5 OK4=fTnĵX=(*J'B4fdek&heqꪅ 5 G秧X pMJRGԭԊi,2zڙd Yg,R-GIꐄPH %.SB=%f-SBF<%,SB:%"N*8Dd$gB^V-+EtbDYYV eYl*+4ʊhY!Շ,&eT Y,+F:EҲVV)+`e/e(}8*ZGևNJa3y zoVQ+a;gܨ6&0TBp\V{\9 Gzi9*ai E$LBl,IO L풕MILACV~AJ(BO +'DƬBZ4G>3LT-2v@yBd HvP$}w y ZA)e5B)[hWBٸWȀ4+׸דR qDZS\QD$'a[c9JVNgȐdc2X=X?;5z:Xyq/>л5zwu*>Pqe[cvVGq(k5׫ 뢁{9"ZlBYԋ"(L-4J͍zJNYP./]wk p;˜'j`J݇*r+͙D+&~k"WNս"ʗ*re؄Gs]J鰺sEV_5WEծ\)U變mH05`Q 5u,~]{U{Gǘ}かm1g-6)Э?xF AyEOc~a7{Y4FTbL=bs9GꙠJPjWMuÎ,6b.kkmQv@#}x ƒFk]Wk6fY2k} JyYo2nILv%/#/̯]'D~h: /Se0;/WT:~SP"a ʟ W$ K}?[&ʸN$>;b+&81KeGqpgֻnjvMW,_a| &,>;,[Ss09/-.W-=h]B &+Fڙ_@p=Vb4?tPC oĻst7#͌Roj.ՈПln#[ݑ5F%>}꟏jt6h_m n#ƛ SwmC7Vׂ6Gά!<[QK( +sA0yfxpHI~=E2{#>c}~25mۋuv3(1Os\_;ᵽp"a ~ ?8<'ϩ|l rWv7juzPio>#lY @1/ӛEwn{Ov\3!g".ʷ"S%ř(v Qc5Ӵ S]!4X "6AsBPp>CYQ WϿOCoxhؽnl4 *?8ۡs.o&cdX&Z\TN2 K 1K=TdK~JIw<7A0),w/*)Sl h0\(:aq8h#9l:Fl F<ë88r9趜^8[>`h[C*N=>5\c_9:0n䢔@Dm @? Dܐ"$ < 3c˟Vv۵>EOiHض'RYΫ! 𚳹s{ V1*Q+>`bQX0g8Z`?w#;\ T8*Լ77a+2Ftd'lc9̽~ݺ5& b? T4FCʽ}e!-P(II\U MޜoH<ͧ]\^0H>ur ʹ :W>Bz堐bt'!rr>wn=\(fIBpwGJH^xm>vW NO B`KrCDƝyv7Yg X)IK"#B5j}'zM}/Q#l`[hZ.cڟ5o;r8 l~`AEuJXr p\aҲv`.+Vt]UfVAc:Ne3DM>kuxÇN \x\I+ )e-TFq dx o@]e^8aӅ5SMUﵷ9P-E7:g!Ģ"F4ZO bp ʴKo 28QY<ͯ-yHV9z_]̵De4&ڻ$l m/:)9dp.Cg8wc]2kHqUi9GiľM4qǙOHR+/l^車 j XfIe'9+|R.P+W%궹 _8zb 1/QD!_7:s{]`=%>߼}M59,*CԚ]ӼgfTPHy#9އ[XיdzD@ [*^Jk"hO3wmՖs_BmOjAnpu񵇲5X8Vn6%ڴ8EuA{e ,;s~mxج"R^6\]w5 haMƹ rVcb9bNk~iZi1@=4 l{bh? {<`紧 EGY3g,GUy`1ɜ1nI*pvzҞ8w䞑g@{|T-W^xܔC' Wkd7,R 0=7U.is1ۄ'nB.H0BӅAy|f9  ^:<45m.Q.W,fh:%|ۮ$l/ o=8(l3ΰsص(hPȣZ5i%P Г3< TUMv`:=vY$"=47 e*C.mLDE(nq IN[CH)O^յ4.PÍ^n?أ*/G f/Uv+9t-u Р@K n <6I~=|vޗDkz;􃫭va0FA(d&C *.Wpv Rgy^}q ^D{e;Dp?xl@%+sr)mSO#3<VQJqt` ?6v;4.mf`}}V#GwwYPSQ}:0_(_ CXJ~f]Zj6WbԞ6[)\0Ǝ`KPKVW+iwcUsGV+RjXx FNfK LncDxX5bCt ch @ E=UU*~EL:SnU<:g_S qEv ju(Ĉ#mR#O:ӥkSŝOVjV1Y·qn@@yƨ侀(BBɏ:bTܹLl҄{Pa S$/})//еK3d[! ay;em:;VWOa:}rwU /5wMqEbv!֏8oi0VX<{VZ#تZwvKFTNg@̜׋Mfk p32k 6W_ɻ/_1l3&KQ0C-f>?^~9FhNg2CT͈p&%5b`Y[*Pa֩8,+1A@dVA%y懎zܗ쓹uZW.\S:| a61֪379lys_dL4$Ց(j9jЭb/<]5uueH5<[P)O6ݖsD%^eTw`t1+)U^i0 0uQZ'7$JO@O`bO{^!1a% XVh[ ?KiˮzvXt6Vccz?k/*A~:wD5WYXnO)ZX>t̅% i~O) M tmdn/i(wuL$p0Rp*B[}_25eP TYX#"f$Ք|I#m[ő$=A0  ٫W/0hgn7*0m{A}Nyb Y6Oeٙ2$:7,;d  Z% O;mLc/c\X,7g?پ l4AyQ>g<.ca7R>ëq.#YPHt߄(rඎ6U/I88 -tQv.̿Bs^mlSHo'(CFSqXp*1Шo7}[u^mf][Qg!+uʐYmA 1d:jX)T=RXs$JEb VqG)3p)FVS&[^wEQV[B1gq+l>qƞi PcP=x^ַѯC>Zuću}-r=q}Q_߳OWYEIQW5_kCl]دgY}, Uݜ)s+7YSEx mɮ)#:T?xy5_MNʝuSO.jՙާ 4|[6%9P[Bs@([\NAEԡ $^v CQ\ qYm%!O zx3>GY1D2 cb숧t#rsm8L(<!", vHأh*g<"oN Gcd|#L((b/!j!^@y5蜢 K? jwyR"¶1C/jZ)Zl<`'M |3ˇ㒻 S*C:M*I©[5ߖxkO5z=+rigȏ>ike;%O7[ݱkΝKI3 72/0q'K,t"!crE1: l3͐u/o.w&f[HyT5_U˜!+E6i qFx$ ֯\͌߄p<1@8D#o9q0D~bmίJLVCO П9Nj6g߿|:[`zy2mfJF f̧)&6Ww!OX`F/7P"Loc˘!S :>+uX'E-@Uu_H0/:JnV,!펤ҦN!+'œ_`tŗf/{kQ}-A޾FOdoHb-@^ ˉMɓ3F++hjs sx ZH6F ,]x]ktO0f-6a2MWl:9mgY_ǔ̷(`\S衂)́7v'6X֨݌Qkh Sy=PmEbJ7م{͉kA&B_|1~Vm fpPlu뜪x+km=oO?u61|fC'mmy7r;C=V/c25M|;۽֩5Tͱ>y#uıirUYhzid$}V0?Fϖ0c?+@ PV:2Z>r/56N߹g <,qۼaş4iV۲&G[~3F| Oc*ív{Bq[9`\vL34Z'tQY-])$Dٿ3rG&%..IF7{}9(;`ڃsId2!=\e?Pn Gy:msH"~ p{&Fȼov#)DSK!6wgؤRFdДRO+1.^bpTxb*,(yK1Wޅ%"0]f:'/Ld=|ckJa翭1^L^چr)#`!73=pCm#qoATBH!Ɲ2%6g\RSsq[Ph{(Jj u- SnW-HO݅j3Si'  F)≻;3,+Ĉ )Y2Y^ƌdo.EdJ:sfkW\enp?j#X`L06g}H2غm ,(cf"wYۧ(ao' ]E(XB\}9 GKLQrcx#@_ު shP(\]k 8 [+Y'CczBE _4 H!iV"o1$e )+B4]5=Ơ2naZzK۫Dș).%K70LݨoWiY#Tzum);\px| V`O~..)=waj?{F$ ϧɜ7 q$~Lfgf4vۆp3UԒZݶ w-T*JR*jqϹ¶p6h`I"/~hO;LJ]gnrgGևNhxcJeRG@x|\ `c Uk`3$~L=8<yV(؁gZQz6֬$!2}'O.=uƾ!RHq0\&|[,Š+ox+/Q1[";~]&7f.Xഷ K4!Z`E~$A\v9ہL ljuM/7C : ;h2A*7mGOe3Wm~"Q rߩ3DPD(<< xwkh 2YA8aTq]I,!U[EgҦ<%D=w,`RIb)5vfr8N-9ɬ!/[p7;،.GD֡&CrQc{TVO95"[oz>JHЍ$h+r㚜q*uē}5V2381 g}:%3c!d&$#nlꎢRt4>zP?p-'tTbG \+fOl,4t)RMtlm1d6~갊CdSٺYqEɂ%++{&ؤ::>%m69>it{FRVV$XX *p#%Gjw.^8(-ZfvgX$-uG1vߟ6xڤ*1 O[:ڨlC.,Ϭ4 FZ\ fѮ5b-Ej-MR\A\cu%]5 \O1S]Ujf*{ LO8 _-&gGeoբuqS Ml'@{:/ d$`>fT4R_E=2]B'  Lf~U|nad٪`GKK\QI'wX.VrX!^}C`mR4;K?@ $1)jnϚnĸXKy`bnE@^*}<^ 6j/'lM\!NׂFޭ£ El:]! 2f[YV2"s $pЌ1LN*Eq.upHINa8U2bu' ㏾^n_oac(4'/9"p3#AO' j:FGX KAh͓NU2ZDʹ^[iUa9NE#N۟DO"]AG8: "0G!gg!Y'S*te1n6R UZiph.#>6Nm@gz8"/˟C>j_rzTfIbGtЛ]b `JZU`c\;yԂ,xM+*C// 1*UȳiF>WXZ(`[b q8;Ţ29W/vք<]oŋDl !&tdFrbm2>W'$$ 1p9~A<-<̱D3y|R.ٴ_My=,\*YКHє-D"CsvzK(NCXC{ v֡%J6I(pn!x8Ɉg6fփON?ģl.dGQ]<#:M2 n@(co|HQqDS!嗐Pďt_ n8(5?! r~-ߡ H kwdِ[N|/AV [o SuI\;DOl+clH ~FMjG #P~ R h8}y/$f`7 L2$hmNWvԓr^ǜ. ^,]gQ|D,*22ٴv j,Iȳ8 l~c:']6ԈdS`2, _ ;5Mp9icyjkj8']sNKc'm77)ҥ?gm]S#|餆11^?F^}%-^DK]8hk .Ck 'J@j}ÝI5th*֧`z &mPiTa>[A#!,`,HyUt*o= TZo8pZ-Y̨/ƈFG͉ag}< ?6ZUVBC hFr6HD0+:= į ^UD͜> ;e*Ysnm~D$RoA?ۤma_Vɜ 8qMm} $ںD`c3 }f-:JҮBgbsq3Q_L!5/ N{SLEqkt, 5+//Kn7"f/C|Eғ7 s7J<G|\:Cc|=F;>o9FzB2ttQ 3 {8ApAf8 ~u;.>)I^&2<4y*`ɤ_Gpέ <G(2Yix>@z/w)yd-z)y).UJh]%R:AEWb#(lX$bav5O)̓U kw}X;C.Fąs 4޲Q'x F`?! yAcj;k4q7'ɥR) *|p]^Vp#|-8ۅAj~BZrӒ#xMZdQZ8C1  yM2Hw[斧">`Q)yj0!L1<5!Vzw} FܽQK%޾T$?"! ݰ7hA Fn ЂaQ`{h0B:WC R;8vcI~Eszghƻ wn?=}hll(k$6Jª`WAtqȝ(ZhuMSrJ+MtLh(1<θdÚo]bD!.hJN瀝GH/ck BLʓdΫ}yx|-%tr*}4ߡߟ3f^ ;fK|HryQlךM8@8yFİL7wAbO?VkxڈU~HFF1zvtib !l*y r6L.5]y2z{uvs[d[F0o`8ıcc0kWk$HsZ : . >NM .4 e΄x8F: s>$jUdQ! ?4'`UH'/4Kg*8w ^*:"|XW,NF^`XF6f)| -`sI;]=79j)Op43C[JB )&IHo?xE-SL0Q`45)1lΜ<`EjX^h\h r@Kuؑ*{d䠵_m'SVPX+ 8\@5=ŵEZXځP7 Y? fC JrPH짟xͲT3tk 4A8crcM}u8^Sc'I뤉W-9U7Y? ǃq ׮+IGB" Ho tXH@r_1&BC@ɂ$G3\!f!\gcȕk ÂKuX?̠5jx 9A$F9qGlԓ *?@޼Ļ\LJTي$[oA ͏-8Z0zd!>GK{ @/bHĴPx{۴rznƤs#jF51`/_45/43Y ߓ"7\٠̈́RlҘn|N= QH.{ @` {ci;,Jl)t{&8@p,D@B禾N?Me#b;4צ_!5>'~ lSCϿqc3Ieg1п=I2Jr=$g䁚 &#5Av!QrmdZe2ӰUQ\(!|[ҧ+wF/˙  Q11{n $ۿs`r;R2bGH 3 I~|h`[1:h| < =uUFcWEh$7Y R'k}?n< {#!Ww#1~~6%t,H+7:i*<&q;݃fa_mCy|ewTiOLm""E⓭y<|jWϪO+\9xV]>c-|j 0dԦ|-}>.e0iߠh"Dqe8~? '+$ ZaC2"9ppZvJ2ۓ !44I4 I0,fmjd2?}E@>'o:E~{x@g#Q@ciCg:{8cb!(x+p&΋8)0!( Sur6ůjH8*Ę>ظ8rm?3>B yEFC4ބ"Xf $>P^N@*]*x^'$FMzFHnݴ% *zRJНN g@ pp C@uX`Sa~ oJ|D!ЀYP8S?@f@z=@\) ,'V׀iB3@Zez|@.RY$]a"(Om49ʹb4A}B riaT&q0E;Ƃ:Ď9V(6m#Ȍ"V\cO hHkFqC~70r!Htf2,)Wd\vCSHJhvO2'ŤIHH>όKR%!IL=h"!i=zh1 eӏ 5g09 ғhvH;qu7N|iyGg+"׆1MfCӉ?4DSX<M&N7N,39N ԣ^Cl#F7go̚ /iAX :FFօ:V@1Ѐr=h6Ol>4ء= aD >~?BfV3MF!fZ=x&(3e*4sXp 7t NHݼ6Q|F|yrL2""CxPdrQ( ~!Kܗf2DWj܉XOiQ2"{iˢY̸S::?p1d@:i1"/~L{(~*ik͈! ӴƓ1_/`]L515Dqr3%S+9?r bu4(c #|2[ *ַLb圅)Td0\4L.T|m+eȖk %.)L92:Sk5P?Xd`= V?r3tBLnVJnK AAar:@XZx 2<$dэ[|p uY /YWVvi;;2#ZU;EV2}8hfY N/,ӂSj{i$ڦ(쀜k) ].9`l ~?N/ 4w.:’T\-Ij(m@J}BG|ZA= HŸ ils@^fTG^EG{/U^n Y{3 ](xݵvzձ.*EВgG:kΧ$GrkSwJtׅ́&[IyBvȎV'l{w|6-dSf%}drMf3ѿvq {,x8uP{fz(x$2:2*2|Z*$%=f{{Et#o̠bYs!fӎMy,{5es9f?*0.w꒑齞6t.Fqv-_!0C "kM:/]t6`>d{z AhaL'^707.y~xA 16?6gH>kyq~^}x] қ@I0"0؂+yne^좐~ՀNwT0tşsg/ߟs.9gYG!bB>&ǓH .G:GgʊoJ5ap?Ap"V_ߜ_,F/_sY~+R9/ci?<Iw GA Nu`{Q$͵Wkk?zV8BgZ5 )(H;R/WR`d"̲ &n ?4>vQ [~px=.$O(0xQӷȋSs?$0#$4dg@4Mk|TRJt& Of` Ҫ;lew>( ^3Y 2FA'caGzvHH}8qeC bxgG? +H*EbBD9B؇hhcajU\k*!]l@\xa`_T M|p W $w ?}l$z$:ɟMyl${ AGIKxϰ&{GW/@w5Sd/@38 *G;9F dw>P'OL!xM} ->g!|+4y }UuqjZ\*B3SZ!WB33VQ3cZ?M+ Qo+hY4@?x!=@2՜IUg9u5\]ڪ֩QrU2%RĀ)I?.˥prJ|:, :`@bϸiTx[GR7p͖odqb㾳7*}kg3cg3cg3g33 ɣ?3 {&p`}v8>)ϓ}d3&c%M[m+ #H[Sj`*lƺ9.ƺG.l3ݙ3Yg ʳg9X`CIJ U8Sk~wPۭnGWWO>>Zl*?C5ë2$ Tker>NqjU)c!NN#(9sXA X1<UQfgT`'@' `fF3;~+>jIAl僐^QOg OdekB$8Hͷ\$\ݽ~?>s~v#b9.p5CץntgPSp_qp|4#^ oJ~=8Ph6B55cΑi@ }71:hW[8ɹ(ylѻϟRs6 \}OO%NڙwH29L傗`|qg{%Nr;B_Lmzv3P?xo*6OgohoVFCk_#HDn~Q~Og ~Ui~x@?I Jvfvfwfǟ!h/"\AK3Ln1̔6ܟxơ~QVͲfYP3,TPFBBG"υE 2:."p^Fo>4ͬ<~o~if:b!sN棎,nY33[[ f|u3#ԙ W:걐g}[*aM#,3 VLQ79z S09[ H`OrrŘ@ZFV<7PQȠ*"U<s&xKѴA7C&~}RI<4N|h: v1Zswdd? qR!Q=O]'8;*Yhw h<o}T_[[C25ڏhN/0/ ` /GNtaDp`3ʅ`RaFQ|88ӑ889LaF\|"-yUy8h`hmFP~9s(^MygY[ g*k,`3uhn2Rtn>ι &Y4 OnjY#>I8 m9n"m>tdŷQ&1q_Ѯ!Vra DSn@b~Z#*Ip@lZ{W$hP fG3;oSLSn# pҮ1ni`>T6A;FqzSZ ( e@ S }8aT0^vXny&Zfё.׉ _)q>k=Hr~q\kp6)’Q=39S_ATuk+*'IFJ'0ky@M0UۖV8g0йe]"N!6`9%2Ÿ-kPR}֮b o&S{dk%ҁf qЊa.ӫ@ͳ #%]plnvKǫ<n N ݬ+=*]&%28t#0%& && k͵*:_.AI)me8YwQ,eP=tro)^JsHeRHRX$̋MeFR8o(#-槫@8FM4 65+*QY!C[s C|ud{GEgd~ڝ(n[J2^b`JhH V =5^e.g7zf9-I5qGB>Q"\@*Xs*$́B*S2(!N7;a>_MQP!rF5?Y:CVp$UEPO_eNSC'oGqg]l+v\砘чSXiChhz{oޥ3ScqInv)=D3bZΥ+T͛8KgU݌UJ<wk~7 M8+,@?EPt/Xȩk/ȩ^,?,Uw^}$鹌{fȂֳ2.*#'2ئJ& ot Yg3 oe *.@ ^XSYUBV~x#`J_$H= 3/nG WB]o{z:97  3Zۣ ]Csd12 oї}FAA;EZCHs^*B Rֺgcz(x-Tۅ7j@5Ict :} 9\G1rqc8%TC/\׋2'' 1mvAGKFsPPغ(10$c\3,)&+D*<}!5i*"?:Tn!Ayhdʛ"6 " V7A o ňETjvh?Eg6eE?EZ6QDri 71p=B1 -TOٓ7ÍBl X;>x)bݡXv!k \Z"zo~G#0e\cde}qV֫Np@H3|b@NH(f:sW 1Z/} a;·`@]|py; aUGĐeO&  UzyŎRX`8r48*݊~ ãqEOۜ<~龝NNCD^Y?ƎKO?4Ʒ/"S~2Mq4Nΐz1,b PW^13@ړyGt-)Q$ H_Y(;4PeZ{ gy 6-X:_ 0|VR$0ht& ٍ$yza.yF\lh\.r~27־U,ƞ,O od'1؅\&!*>`GFtZ_o7:\"ZcP>($Gm%cYN|~V3@{)ނO^UAk)9<'҄+MRJ2])`|ph9 J *ؼw}$~Jj%#ش??𭢥|6w]1_iY!ՌFlp$:%D``Ν+XRˊ9sce,*Gڴyu-U NbNL됦*7>]˚+ʴl'nԌsOn :Se̎Ȍ8N]yt!wJ16ey@yt!x` 䟧OW,å/ ݔ2k%م[A@\y, 2+J-+:aI˒vH\Kso0q?cH&}f:qs f|Lu֎޳n&ңq }v9I_~i{ߙ6Ӹtl=80^T*/ ̋ېd J(2*?ͽ_s.}꡺~Wy +{Tedx݋%As)n-?&,VZN[/} t|H)IӜh^b#3h0< ƏXj!) }4Y˩J=X]EC4)"Pơ {* CG ڶCEQMsށV [xXSass B FE p3=q̨ӈ3$h}B2uM{V> -! > njcpV$ފ {Q*Gƒװ<-1S%2G;ֽq -sP{Qޣ@W|h4Diũ#Sk!ir=Z%Anl|ͲF̏2(řdDGҊU,TS6rT`c?a` %IlvJsuJ#L >NZ$^^{9CX"c; Zvk܌.a^<s@zOb(2PF Xޖiy.< ëR<ӝseܳ@蔙L  A4Ҋ|'ZJQV_?/ju ]yYBo s9H;o:Cel> Rjp=31m3pED Ӣ.GgװN$FērIȉjĸw1Y&oq).\wʵr#CV.] )_Jn~S'EFGŞm 8 *R9 /mKp;b-E `ܝ̩ELFTF#F@oC=h~s>BwFi5%(1q zYBG=št%<.RƱ0j:ƩK/I|:eޝ6ߡzS{2O@aP$ hX3sRt"" {4w3F[u౧K*F+[ԡ"cZX=#'A:eR׊Ӫ-ҙ(dOi21yZ=`VZK@+*9JQ(q@քH~ wD-*ji򫲼<.a#Ϸ7 P3=xXWb,g,}ӦԖ% ^IPXutOsx z|m; u2RTHc #z&f4^ %x*nw,7C$s_9YF`zqݥ<,aw/ϣ͌Vyo={|ɂ>FVaq0({2щGL&r>YWo]@{h—:R_X/Rg^6p/hdu0,oAuӻ{Fm|ȄX{=0% -s_:X uDuaJ}W= ϣ^ˎ?dB & k1*Ǥ/Q:WGΎWfzz%^<&ƀ%C4 ; 2":T 7qf'=/K!b7SϹ.Teawd;P+:=`ՕZ<̰ܼQW=) & ՎNj(yUV-Ș/L(ܐ%c(h tzYƞW† r.5ڭwGoL+[uJq?L.M"%Qo8@p=1_wϐۯ An8iU w ~j;lqVl/Xwjd@6OO e'y䗐~B0A(*n_zmA( ʃ巍3#On*Lk~[]W BZjPf^}Dg,*|CjoZ&UXS5fFBWQsv) pB\a@Mޏv+v )#h`KMTdz[SzH!{!3=w<)A|)NJqdϰ/$nuvܸK]8cr0آ&^0KFKmk~ }o|쪠w~/1hw`UeؒBZ4}H3eG t~F!Am"7T*R^B7 *T^D(E8}y l62*zb?X2@Àmg#|CTtxc9T$_0zrk:+=Wx#U.a'eg;=v/؀JFolתNq ^I̛5Ñ#1guIrLMw ܨ|"Rs_ r>T!d96(jPo- ="BrHgm Sl5zڬlCma $3:Tt$Qyދ#3sq-Hh1( Ѱl% e1si$EmhH]GcϞ%xܑIU| f-E g!aH7ЭneEBuN55*'=|D& OvH@E)QG_^Ig6Cd;_ v?X6I:-`3t9a5DTL-5~fl7E?=`='MY/vM9@}dm3бn(AY`̢D=@^AZMQ:B3Xq&u9m vN*'~0#YH#U1*o_l\uICi+;' q<õ4 K(pIƵUP z:T¸.*kPFX*B*R&?p+W2ڮEy]Q.%,5Y(|3hWSb餴xW嵧xH:,@G<6/=̳qum (^7n+<"jfKRyl*=R\_'ėQa>ya ؄]n.t,^Њ @MgPX+D x oYcqnxF}X#eva?'͠M4D}YDhi}# tb ij*(; l]auǀ6NL'h'n8~lw0Gj] xNPKHPv+YOt$&4GZ?&$VYJDjhHH`]IZA X'Hԃ8 ŬQiNei mz>@|@&*7ga< jszZB5* ր;C LAABQK{吥%#0S_'ǨJH- -.hOԒ`E/34ofO9eVe.-ٹR^|2,IAVr5_k2R$3)"/F&Gꣾ~U^yK~[$B-6GG'j gܪkI${X35:x̍#.8!4[(~y'e1IfUY O3̭1/)$23 ]08h+s E "2\]MN,|CA:OgdIᬉMwF[4H] R\dB:!FaRYmR\5j='"BI5ƭR G,`bu@KX O@ [l#jLt`h8VO͓naoEp0hPҙE<$oIE3)LwՋ;Ui9XgzQ̭W@O(:(#!z'"U<'Ӊ^t㰢EI8DiJcˮ~ǀש`>&ѵ LP!U+)hwR;,#)&j hJ,dRXǛ{}V~:|>^>' xPl^ 7KCbP>̍4gl܏a}?a}wv{=N}aG(v'ۻI8roCA=h׳7b g>bgꄢ/ }8 ^MQح+ +K6udWmhFsA-fblCYۦ8tbEۅRE{m6P?񴂓8 abl b'h Xn^EXuh>Du9 e>Fך9cK*j XZC[#WPPZ|\!qm%K:; ]\j t0%:([q5)h⛉[ a7*3ABڬ$aO } hL>tsSg#ֿSч>5%(ۭSU} Lr/۶h|nn $O'DGZjr1 UX, IJ¢-mL;="^}cM[P%1?ߏUK eʣײD,NQF &b_֧{5Harcێ1 8Mc>OcVıQ3Tt[Gxi8gh*7{qh tN—$M}r&a? n>eH3?H$ۣ6f 2gn,qfeQ͙p-$yf ,reZPضՀE_a,7"G_|@Un-%{=Ia%?np9̅?s8X8`6!qo̮U褴H!~d~PĘXw¸=-Ibc-Ţ9Rh'ûlO0Y UҒvkT6\1._Cd@t@G LI+ @kgE㔆N14gdKN [`PB/8xKQMP|e[jw)3x,)|KO٘L;zijZ E0 &IGsqYtp<3.gXyΎW0ZZSbP8aBQskknyil ƿ|^,:y %.Űa=?P*:Rw7M9a.o3ێ*0 %nL~sRK?L)A/w2=)#HJb0?\'88{,A[A$]! k&`*ܽn48أv jwb4>S @Y=Fwu4v=MX?M `1c5~76@##Ej93= Aþ^^yZ@:j/@LpT/uJ4?\/-J`7q+Q{ cRB#YR^jd ILV6'Loa3˒@lkj V%foPR~-Yޢ] CyzxZz׽%@NŻ!+8% , ,MљpC3^yJ[¸6ӽrX"ZF67VnZ,oWxfZuzcX[X|D8.15lx->ćZO=1>vn=Ci)ee;rnBDw"A!q#7-qEi(,ְy{FuMskfȂS :/dzj[a[6؜Mu(.*Cxj-eYwV{@r8OY/7˻<(zTjE!Ibg֗.r)<4Qh"Y @#h5ay5NI77(FJO:O~]לz2Uz};ES23 qV'Ck*s˷ao4'1O[qGʒN/9\$Ǖ5]#,^AG'i ;0 ,}{zM3/"ͬ"ݚ0c'i 3Vl*nmRƑهed.Nβo$gXŰs:j4 foJa}o[B{S J%iLJBzi8/̙94@_]λ yJσ{=}8dH9VCxR&L}~~}sV:s}å!o߭}Og:wyf7vd)E2@â3kzp~'E¶Xis"S#_ʆrxNM C%f, n.JZaX?pAw xlsR\l1y#; ge%Pm7S"Xr4oiZΎ{is|Җ/`fFhvo<)iY5i&-9߸73/Fů/6%b+nqpLnѱ&8tk =pG`bHm I PN*>'uN*,wί_a]' iX_6MFTcu~'Ei‰zFw"+ #; ?J50zA'2u&< Ex|H·[ٹ5lEpM[s@Yqzu_Th8c!Of26k!8Ql1pQ{}zZ8%ss5xϗtVA7z.xq ŽϪ&Oj˞ }ϖz-yGnI qw 21yeata1k?gkٺo3t:|)h&.}p OjO}C Ht |: {pX!R2LU+Or4%[ @O;++8aӇv>+O(E,BQM,?#)B&@^2 #^%L;R1 ,?gIňԨvI=gRLW0HS|afEzFv+Df*WVzL;tvJЊ. 3HC5@ɴڈBiFK]dsK5+arN,tjZZ̤W C*.@ŢX#pGܺ:gnpo|ulzbޮ H,9=,Wذӟ5 AALtY'DڕpR3@ 0{3t?YU;mY}}NvCQ2/kҲ[)IQVGEg*Lt|۫e;9Jb5AAL` kR5/ګ#QM9h(ׂ^lƫ[*7 ?g*].%oq/Jg_k‘ =u5kgW̔W/?i{7גXKfn'^dऺg7[Ӵ .jh*WM7io)eH{JFς$e$JZrzr^0JJT^N tj5/ti}49c$؏=*Q*(?1~P=BILpD#Z-*3l6a❞^0޻nB/Pc8${((u۞CrlNyms믤'(!(ϕ[R3oqiw%4nK/9q(£7:9K)jdxrU[|x`N:0P#ӧ;/}8:\1gZtN[?ͷ{ :<םbRAgAg;'thVZY])/cc 5".a5?%dЩ\-Y~Ӗ΍ͽ謹zJkPݦ}/gƫȪYsFܤC4"5@TV%VYFv|ޮ_k5k=L[Ȧ? a_B,ȷ;,8ɰIIU%U)-W;5_anѡ"bIDDE3 }"$?b1ςh Aɿz!l>@L}A|{`r1! ?KiSPK:T4:Iʁh+d_1F89Wwnm9E<8{~ԋ`)y5y/ Aq8%h.|,z}(4+ Ŷ3s%p?L }L3$jBAnBXs;}ex鷌LD9d8}GkQWd{~2b^8 I ʫlm- CQ 鰒^ aBA`$ ;M`ǕǕ2lZeb8;HT3 YtNXئ`֗ ݊> R";5xFU\#];mjr\!sR#ZaBB=-dFBMi$ FfIv~ 4o g.) զJ{/nyH9a<0V- <]2%1k6']fl[nlPlB+k^ *V|d`spY=}J?m寒BQ0Zٛu@*͝y!\lkzj) ٟr'bSjxTȴ6t4֚#./Q}`6G[5ӧ["kE`vOJ23`y{r5B t@_`Z |Qmk`d2yz`_x;]=o5v=S#*_cRgG?=l哆&` iKHFLU7%D0º +OXa.!ײ'|C.;QD]:8j1Ư{ӔG# :{A>(.|ܾ>պ;[fn/hS@F ^\:tO`ﴛu#knE~Vt9ɚֱe8j.YvrZOH^q꿃 d@vqot۵V`]M]K5l5}UkzZW,1'lgwY zcc!Nί;0K3m[PTV0d˛gjfuo[p>/sblw$ ~'yQwvҬ!P;^YGWMߍ6Ma0 N"( ޳o&,2VP6@i7ҒʲW^rYT|-."F!LR?3KcGlL,AR']1-|넮G 7{uJ(襠 _7 dmH&_)N0Y4\uHmr|̮0ٶo'> M* jhƪPp}F6<'L o&XebF;֡FTRLZxh)ԻvwL0;͠d6}y~WnQa\ueaI^b)xA{kQ0Q8.@^9yiWb֟w-8ij<Of %LJ0 z Dϕ5EHv4@khj8duި}Rj}l `qŏ2 @I~ v0>4/ ;:,ndŇZ`\f0 7|.UWtOExqLTy̌;Fy56N38,0YX26zsox:o(4Ecj!,$am0} ]Wʼn˩~ī.zB:]Ps$f>Bss/<+&,bf8/FlAcD3 g3F Ԍ FKd9[u耖%+&@hH.& }w0B%Ze!j1p}SUsx[~>A~e2m~pkVgHCO26a>@`Bl{Kr0$ "g_T)F#̮0 `ȼ #F mjǍ~}~ $.xBe~-\`igЁt :6N@*\H4aLO(n^%8Pc4pȾZkGTZAB4A }si,&U <@(::Yy =W50_qNE'=1qJA]lG#Xwr 0%:ef!HENxm$ G6׺M<$l<(&xA,&FU.@Y´\{eS'܂Ý]<Nx^ v,EP?'?,8i$=9-GѲëܦ(:WU6eٛ G؝x8_^0I1ux tyd:qZm*@!ţȅ-&p& S*2ԥP%ݑ  @PyEgn(6v(sprAϟNqps^o{[ (`/F$&C y&[uLqm1H2ZglЭuv<8u"bS_/5XPb2GB2a ]9@e5 @ qa>v4Q`<."5057k-³z՞e+|TM#;g]_zlM7wV؍Xo76R৿- foy31DecU /E )!+|~F sO]9Ih_|,?k-1jLμ˃r Fቼd ehp]{v[l]䉸p{iHQjD<ӫt9CXiıa:g|A6`萩$xf10\:#T8G}02W~/qxqWUEKq)}BٙCаq!&^L[|-.2Yb)>V`㗘ZDz5}e9]v4(0 ?> Cw,'GtET_iT`G,%fy~D ԿL†KD 'P@=A=2ΏZzVzAsɗfuS g3 э@dleìǪ,煂Qy5*d^0(H4׸4mV$7 #pL'dسy&8<: ̄B$E5&_dRߜӣ^Rl@߽sqк{k0(ra߽߫ bh9k} &e'YU&}SD+ iyFIZ <~\;m~^BzF`]ht;|պ}r hK~қIrX$MSO p yUK |sjkgg$U}R&bQ>wel ݜQR͂0(a-u5T/g qnjh柫 X|1Mz CM)d' 'hsNhKE|C7170gqnt1r8}L[YeCy$N!Y8`y~yQ!&QxV˹Gg6ŰXw 4 ԏ^]x*ZEi pӁy ;ՏO]d qݧȑc ɨ (Űf$x * 848UyG5Z@1%FU1Mwɽ_dUJnR 913Mau6G0u'5LN㒪B:!14WƆb"m&~e@DO_dīT9 v/A8[ãZU.SL# vl4Uk9C'FWǤZխ-!f=U\zXrSBB@9F_@-ABɏrTI }҄Y FCL(h"ymME$_!pX Kqhƿ`;Ɩ>n02plZ |jE73 ^%ΟE_fu^2 Ŀ ڏ<;c>N_*%֜.às,*c;*eXdx7WN._(L%X 救Az f.5:t{~Pyѽyyg +W5#.ٖFWrh{phoniNL`C@vv`-O~]ZCb퀭O]fSl`ک8t ;_)3@O/ptEXˠR`i*EEk5T.8|zJeAX4ta!Z\BZirX׮a#" F4(rVݍH_mF!*C)/ue٨t[LSlzYh˫sRDLl'' (Zb$xhs@Km20PS,[џm= >=KM~Ϧב*Ii|鞽k3#\fcfxKicyύKQ t/}Zї'YLxaynp*Bk,%fo(0}_zjʠ; d1[knC3nJ~m5?+I%:@?ȥAbTa%qыsN=羱0@'ߋglv&D  Bw{6@+%Ր\pdDq 86>RmBMx LuAcƽk:*n[] [ԅ+4K([S1Wr%86Y0YGG@[Хf(bEV*;m1*˘%,+#e(A /;;ۻs[u ŭwv2U9^u"Pbg2dr5I_h7l.VDG$?`Wm72= 9ۘ2A4+ eg7zDl8fNٜo;/WWӡWURWW@7V>YC9˵9f}QY.o7@ɂni* V?}8:; g9C9'ט&|w*YEwMYIɂx?hy?~^xx7Gl¼7pdPĹAONeKȌ:˱8@{Yg^WQ eR8Y4s')<昫.-ݏ}ym>ތrj,ŃҪ9{MREyZ%J)F">“:4Q)nŗnHC-hChthQOp!5-en*l3ΞcTRZQ%,_- SYugd.c @3*NSq3A8}ܪJG0j][T#ng9pt챫ZC/g sݢ-hmt)XIovǦ*?0k.s7Lg݋ZT_`İng_ŲbX_,3|1X7XmJfΧRTm `LP`$g: 4FTNc~~R:d-Eu7s6X XC_Ԋj7Q"*4g(I,kZaǯm,fGQ7 qራ 9vN168ݶTmK,ӖX>Ma[cu %Z-SunXY GhUkGi)jU g6GXVYܜu5 g9aC" 2) r۱sbv+rV:+X,6 ;pV.yM[tV \Vhc77恗܎X(I)f`u>WH¼hv Mk@vCȳQL9Ǿ(G,]2}cGF-pC̳HcbiY|1h le8cr<TE=+2;"*1 jQg/  GEcNSc\:NBٱq]f\gDNEL85v޲|Lv>sktO`GGlwvSj-'Nh2o"a`8]tO*\4s'$,Fn`~H` 6c-1;68{)deѸe җx/`+c[X4|rrZÕAwXZV'hՐ #aォXb ȤsHc^Xk8g5}'-ϖx|n dikYZc%G<[M~4m#71z9^l)gp6(46NmX7Y&\)<Ͻ n\iSlT$QN׀rp`==ߑzci1D:'upn9ɶ1 :D,'LX4y2.,n|z`_d qYT68U$,%}~[G-ʁh"]]pڬw;qZo6ahWZ>%W᜼rA /<Ms # hOo#~ZqDpn- pZoBQ$ri Gt\B*6X~$]04* F}vz}j7_ۙt)Y DTTY: zueO)wU0e9 k6Ml|_a5u}tfy1d 0)nj*Yx6nwro;٩'s <湒%f44FyQN;TlVe:gĢ; ӔtTk=U>.]ޮM#K ,=It;QۗU<;߻\`J]hΰbQBxs嗫BV's|SlZnRy:x,!o40c& Z&`m2=5#T9OߴS'g>;C\E@x8Y )ēiA(R,* S*'MTTV5n}_ w+fH ˔鋄I Tf^@A-%ɢ.]!ہԄ+nOr`D"5cnS x/_lx0xEpY6-;ou;#IY7~dG`t?~Q|cHT *= ]BU#"d#*-~Q)ҧtX- q[qX!Q}| yĦ(Blw#b".74$2%knݼ 㒖r*D~qFC%4~8O~'^2,yqqjC|!Ua]oɮwڭ^CܢrL#{6 Bs)NPzkPKašWN3#{B?U-I~Mx;.@t:F۞44L Fb=^^atp;C4A-2pd|NY]rͿIoHU9Jf!'NJCF܀2-&T{i7/Yzwv~K(FjaˏkGGMwfv0'fMb;3󣠡ކp,qeOe|e[nDX9IQpcHc gI02`ӏGٴE@^+Y0Kڄq"*'@bmݰ/(B*CmK%"t(trCy_8!_[ JefbqeC 4;sRpɒ$dעtoD5._1TgC[~BPsa1*}l¤F UN${WaĜmws7jngjvg}}MKOm.ҝSe٦*&N+5pAxWFUs't1hD9djW;/E; hd<%͟N: %&0֫ԪZHLuMdLW9}{ DiL]gS E6` ŕQ)^U,jaTlV>(* quo왖w5 J`&Ul+mm9݊Hpvwg{⸖ʼnN#2ޢM tC0;g1LLm|&ךo *L.M̺QkkE4Q aQre/38>G՛yzfa-}猒@79~(1r#ÕN:ݟWp LcT:+Ⱦݜ {qA sJ:v qg,% $W֚-vџo}E8̷gj5:ֹu@`#k#QCh,eR&+^ /j4W3yV4Y5lV@VQUVкVPbV [t+l˯2XNUej;S tw·y2j~_s O'H6v1"n\(^2dc7)[ YLU<D嚈,Bjy H6nC3oylɳ.xvs[ l L]Fto9}F;6DJ}ΛQ{+xP/_l PҚ~ 2Lg:MAǢ0g0HP&2ۦX@Ҏ9jx'P=X+ 1QKNRIcX$KR2}Yf/8.hK{ˤw^Rt&fj"p@\^a.4uL% *`A1q2 +^LaK)dVBFZkkkP,MPkʗڅ"T)R-8;;naO{Ko 9%0&{r+pJV;1z3 LBݲ.fak}+7kpiRMs>I~xÛݢJ^c n{g,р(% P۪f45fR5jYxTBv[s$\, Fn_{טy <@27L9q93H+S6!<,8@fsF{M1 s]LVnȼ% qo,G#hV4Ϋ%KI+`焴HmN/ lĞ1_iZltMyGE LRVgTHXlȪ.Iir} H/bxB}׺_SK׹t3B8ZiBeҼ">|DxPZ)f^NT*ZM&zP CϠW#}F~ȹgf>,+VZlK!>^(L@l8H1ՀZO v=z5fKDOLZڽnN]8h60<9D.p {쿣g6 do,j&֗]y<ϡY>4aqϔRtpϳ _Q&߯9OPB%)j|z, ѫroBGNJQust/ ۿp eM3NGF&\y x=^x ,R=}(a[_i'ﱬ!~s<38*Fo[מ ܧl'W^HwYOGV<2ՎG鋕F:Lw^_$Fجک΢7C"$J=b^?V~!~?kt^Nޯ~գGuX}L7a FO<$Oůcrᤀ F0^ ע1(㏬z3w !7^*,k">ոMpN߆Q ؀Yx:^iKuroJ:84%Vu_c/g9 0 @M:sPrão;$:;PaVv.j]˨q\=,3_s&}#IfsF%SRH-CAgJ֣ (T p3 |E0sŒ-F{V'J1JJqɅQb(zQʹ\o<=01(_vYg&Lx`ˠAqE9]zؗY3s~rni{T؟ςhd6F;:Qq ԍ+Cc`ǛŗI8/+Q[8_UV+j~]PcNفT0,Se๑'E/QHA< )|DƲ?Cn+X M'>vwLp@JaPӿ BpyMWo>@jKAA6/0g6 X)'|0P0xΨ} sD$,Ԯ&Lhk  .'NC@h`623VYJd6m(|i*px ڠ1x?_BI`RJ!*H|?Y ,Q4F/Co 6& o$!/%ĥϊpzRhL*r1\wXR? R, * .cU&>ˁbbGBEHMq c!4? $6MP__1j)-$!X! ֱOAF(&mIH&F.2Ʊ AKF%4КU45 WHlg*,0WlI%jS6p)Jd1g*#bxWoBP; dRT"tf̐tXX5CV H^bcҏ sks.&_%zohigP 隣>`^pX< :8LY re+i\i:t#J`d 44n L9/i59Tf^LLRb7`x 340mD2344KtiL[1fhqOqΆ(`Tff0,/fF(LZ *eıvِ!W.P9riX&8XiWlp^em#)zS8P04omJm/ޖcs3"Lx܉Pl8nՓۏ'-WL͐v7k?|K7+Y3"yԭx/L5 @fsbjiU/9ҕُQ3!k<&QF~оp4UXcf8fXsR _ "mW!Y|EK<.K#͞/;^#IH1l\Dr[wM^_3{#nwrZw,ZwrY}_樲}g}/B'ҿme`I۶|dB&_RSY-^AIgJ+Bqu,s˾/-wړ-KK6̂GGF96LClsw3.3|_~5K{gf)[eϧRb!S{@ n>hw kt-דՂY,Q]\W-2ߒyQHFO-M+3ݸ6-st)V{TvȎfϯt'~@63tʌds:OәN\u:JE^,;{t#]/=w\2 N8*8X# N|N.| Nj `󖦒=ѝ l#7Nnt,%HctN~>N=wYwYg'/^-uF-d,$w~gbc:& jA8ċ dvHAG I!2~Kl Qڣf 󬧳|\zsLA7- xfzUksP̚wY|:gٹd>NG$P 酼~eiX xSwd˗yp-\N&bHǕ̓g N4g=&)&w譾%_Krۉ^-MT̎p1ȒYI|Nko\֐lYNJ҅גiA~ϵy+6m6!χRwhsF+'ŜVB,Z?Z͓mol4,[x +aktgUHDYٓD!Xl%tnI6o8хDЂ5sMe9s.V*^";6"tE^."@0D)2s?d1Փɇװ @Ub?rW|Jzݫ?2JϮc&idj acο*,Sx/O0_(ZH\MU2d Y%)O^nP}VI ]Mj[l$l $:@wRj^SgN{7"n!/->a?$yúGj e# H9 @JP_i٘F1d@쳡gFn@@7t ܔ2Pf}zP+˱NjFbq6ƘŒò +L?&OMۇbZŀ9xS QҐ,i Hԭ({v^hb?P(L`2.&耉豬)w;m}S0Лt"I%eхSt׍lz ExCZ 1Uꔘ *)GdO94^Y 2º0]0r 0P;XY>u0YRѥ"āet&(EҌJ$!ʳAC7ʍ'r-֚Y| 0bJK XL]fl2teqWȥ]]r7^้fE0ƥO鵟tGjdXhx6 'd}rV'f0HBQ2 fkz/ 9cs $ZH (?F \ߣ&(0JB:O#=G 33.béP↖)Ġ3nM4pmyuV8[0Uq2,"u4ݍgU>jw0YN~X񚅗e~5 96b#Hp c^6.Ò9@Ǔx ztKؑ%o4tR6`>YHzR_=OFTׁ@1ʽ\ͪХgV]\B"u|urm@jBw3=fT*ʼGh)QA-3=+,K ^8 ~.ۍ C &+fmϖOS*jX%jJ(P:*TZl[Uj)+iHbg]l O-h̤ZZ#:q6rDp}͜[;̣4Ђɂ'" =Hl|Ħ,m8XEZO4n7cD`\WKF\VaOW[k bȰ]'↽e%UIR`'1J$E|Ie}馗G?nZ4 pq -ȶaQhUk-B-ʻOh%SnAŇ(#}&_}WDS0bO?Y2@jT-/rOC5:Be-hn~|OZpq6zxB1 H|OK gSRBFĄ|LvzXw.X^*%Me1yl#e&|> * %woa3 6b8%ͭTޘNeX?ڮd]1vocsȆֳ2^VFnN2j/$αu5umL8)orhnY>@\"[D,2a9.nMzS\*&g׮Q[9HhT >g{٫Lęj\^&o-Qf=5UoueȪ46d0+$H|jf<_MDoy͵OL@]<<[;D[Vvǵp=gެ͙E-rū} mF`.Y1B4&]sC.l$_yy$-ެ5lH\_<dJLN&:TSsK:4s}fR:avKQiW:"B_}'%;_-e? uLxٖϺIy pB<=9TˍӳVO9׽ihL-piD L P}A})9xTۘóX\Y1@?b\aQ1۳'Zس{줈LTNz߳nI9*zL{M1T]0`C3Z6)l{63GeOhv:-YR]3Q  əF`Vª$vrrW܏ |CxR]Bmyq]}iDSJwYYGzcʉ *MWoiauLėM( qvK|6Jvun w]ΖU,V^gdAgtPLЖ5xRnZrh.~Uz:Y0 %dTHgpJv<^g [TN74dM]K Vn53@+#&6^5ǜbVqz,&蓶Y{lf˄pI\~*߱-tyPRbLh pcdN%+V߸e٦+E*ЫanLЕac Yr}IVvբarm4=I|-J(ߣ:h|rCX/CJڛ..F.~CcN-#\*r&~Mkw@(=߲Lg )IZ ZOn~IPJ F+Ri [  sh0&y`u̥#_\$3Vqi_ҞR[ Jv}W끰׺a!Uh㵮I9?}4uW\=9ln^Q5Ѽ\kkY]K f$~mg#$&t_?xp8I_P;:6zqհWrkFׇg/e~,>oI Xg^hW VXVo#ԳnCޔJُM[ Lyn㶯ᕩ6:Fǵ E,S-3,yt hBI\bY 6Y`o'Z pQդw.vmVF@,w9%t?J. }gzih<l~7(Ŧ`˛G ME(9i"2Z{ڔ|=gc |᝷Q魆wYd6z/`ssdmfu`?Mc_?gO'ӰطN \B\|ȻG:enpT_o^ ɗnr뇆y&dM~ }K3_ma\Euk(/PHJˤSTw. VJ?-{&4yfEX_ib-=y.?_Wd>x[PfաiXq5@z-s@f$6XPXN \+:qIHKKo0wc앑B)|w-JeqK f\,3g]O~,`6hͿwi=]g (-u܈Ty{?[b^\|ƐIFeg{х-'q _k%(Kf%Oc\@++FIΞi,oIsTy/0IyO%@ v/y,G>Ȅ 2;K Noօ9g*['k0LP/SS8hb'YҸ߽/& ϤL ]c7oeٛ-6X~ m ][}cf Yf`Yɵu`[) /OY]}d^OCt*-磘,yAG^f7h)uیE Rc뤯nV7gEP$(@9ə.N>ZKABⲌ1*ŭ_6aZ0Sj<Ɓǔm xXn~b:w@导I zi]b) >KSDa4%,>4;?;yQDgwh,*X.puj/e /R;gKIJ9ReDw?(Iph14 'gᙞǺ6wc- ᦻ[y󌯂"x{B$NI}m=ꗘ%ݷA8_&ߊ {Q Qx#au< DKltLs9|EM-bͧTX/" D?eN^,l4$>5d>%b_t+.{0lK%^NJi]У-4_֏2*yfeƍ (0řUrD'3++j$Џ`&8e]- yvW4, ݜ44(F1x̆L7c4inւq.Mm)#3Q9%:pqM6Y?ūՏKW|8޾m\M?Bm7i&Bɽ)z:9m qvN?z%[v3)-].].ɫxT]+` &kAl >;YqSٕ攢`s`W x!r@0aTaX&YU@S%5mV3:V}AHA/Mޗ2=A@4s[J25] oa]>մ{"q!HT-JbK뭷ԥ ] z`D,!,BRzRT$,+FK,Hͳ4rsHN^QSDwԍ{U."yN`d@+Q@$yUNwAʖ5 .qۡwvAP/qR )Ȅ 2tE-SHkFV3mk9IKu"M`BP&Xp'}iDB~(D*VR0h3QJ|(%= C!T宝V7ɧ.{DIv^Lזna#o gܽݵ΂f$dI|jRj/KɇK3ӄ~ap$vD*2,𾎽94Kj CȆ :$+*d<V#"q3uEE]{ӹ5 qc$7ota!YywzIGLJK3C (,6$X*QhNrA/:7mSɜ(4u /vԻvQ\eTLQ[.gOwK@IEbvzk,:Ut|z`?W`R*ZLbv.!pt?>U{pq/\-UcrcėpJQ4.$}aDZKM tͮ$I omXmkdccCv*a]A#~>NG罡s?OE 7t=yU]aCe}PQn_gZbciC+BYQ 8ʗI G:+#:zveL<"1B$^'Z`!wjTd I̒Uo1 e_Pi\DQӅpzoiLV~hl7q"IW.WD!SFw\\ 'OY.Eǁv‚S }-o,i,TXkXtd 29Nšo(2e7߷IlTn\_mD~= 0.s۲Bj䕒W4ŷCeP+9xBu"ŤYܽ` &; X- 8p ia B Ź<W8`OLt~'R:(~gG (HlQ "ͪ |Cb jX˳x0ֳ8ܥ LX>NK|D}}Zj-\Vϖe C~k'C hѐ"Q44X%#@\㆏ AŤi%nFF&7K w&)ob-Ɯ]FMB7v^6Z7+B +1dT*d#KPpOHWx.Ӯ:g6@ C56Xՙ%-SLސʠAђJm[]VE .TzPB[͂ Ei/J<*'7LJpJE(=98[ڠG+E4Jrx|7rF!1!DE[)oA@_ɘNFimUm~a1 kr-;. .! 4 oڱ;6D^+ ;;&G".Uf~Eԉs@D4k=j(r1o&x;xZRR~SjhEt%\:/> ּ#w8W&.IvlB(h@ܻUvuqSV(VG0,S_W:󟖁A/$Y, _ 1YUڽ iAHJvZxG4*F0Q'GCw߲1 ǙMzbrM'ԕ UPTvbNFcL("zm6(dqAX2% oejjeMڦ>-l舦zM "f]y+S̖xe> !eH%! f+y(ؑX78c/)ŻaL\jE0[8ߡ!#%-[H+ЃQYEx "\W(4Ѭ| :%R]Cx^BIg_O/Is!Cd_q#:|?h^o$3.0 d0 W{YZ2γg*&vS416Kؔ=E.Y]E{=V*4CPĘEDwTF|>AH)T1:d,Fˣ|r9wy<J *fNqH/,@7pEq,KUټJCVV?4Ņr PE$_BθokjC*5* *|^RVAib$BUhuP?hd=4/bώڃ %E2I/Fp1R%jxD.`oUdX6A#eq. [E }wRQ'TڪۑSJ Wk4-հe&$ZEDD&ȐwNX e~"Ϯk뿐cZR n(Ь«#,Ѩ?()+յ4/˘wwNgOj:(}MdU9 ?QVk9h0td ј .[ԋA ,QG٭Pΰo:b"hJ:T i%N9eSz6u훢%iD>$g1ӗH;"jkj]2<(%3`$' /Y3RJI/%; jIfwf.5٥;$N|/R,JAń'$KI/DRYlhrv)z=HPc7؟-N-gG'nEHθ5(טHawvN2E+@RwdfnOJˢ9+l$k³,7c[mi /ڗHoL:rPdAM2wS! * վj2 Ȥ6 \2 1ɷIﵝn_I@j#W]&rйudsI:T3$ʫ}$OMZb@xGd(d؏=.bY_E8}tR]c,c9@ag +5k/#A؋((_xwt~7 [~k3 m`3ȅmS& fҀm$'So hK*>\:H=D;hmqrOT4=DD Yr\uWIuVwaxJE,a[톜\(ܩ-zK r>ޢ+L# X٠I x2z>pL! W>61( J %e$B.ǜ'e]9f̘$Y>;=dLzoIInp6M:o@В&4_whEQ'n(ɨnܫ%g.#d5nl)A`jgsIJ,zQh=9 ī wJtx:(%dBW  0d^O%VUte◘It"j\x!r$qVBޢ8GH*֙v`TDU(L}  W:=;_C)e9o@hWxn aAu?9;bü8|!)$O6yliB*pR~pp88GƤ+{g2G` 6\Ӓ&e?.O[b3i)H brHT3SKOefEL lPlSYӐ J"YdOOJ ż(}JHEmPA8'͒M+%dWt\}mV~X^˱.ŵ^R#a}:x,3W9<`Y~|q~ cc2S]"1.?ھՏΏCяwFIڏ.7v?<i׏gf܏i1ֳ3bsyuBVCN@SfdV?+J:@S 0qʢ%LZ$ҴL&or87: )P!AU:Њlj6~į h1@vߝNQF.%%1b돇3rgA!sLSkV#3w!zCf*4MW rm5K()_[ġ;UbG8)y79pW{"[>326m/꘧%yH#PfF?OG%cG@Z"St'ATYWn8x\wSC.vJh! his=5l!僑GH"ٙyw,f)e/S,$df߄L.Y2Dљԟ1t WY2jB" Hl,o܁`ڢEX%ʨrۃ jiQ\a;Z}j88sfBu;EFgLI+;dk(on|a,di4Ka^%Ib`ULa$hd2"Is&Y`uHº _\;gʱۺhAӴSɝ6h1$k=stLHAA 6Eu&"]f.븳kIb2|2[Lr^j#$2ׂmYRoHlgdML+fNj ޵턵[La'Sz0%Z3G} KGDcw&PiqG>mҾxb/?J Cj>-->fe+(#I/ j:6IFdޕ#36_ԣ ?&r>eX]؁ @}M%,f>C:aiB:M©jd5RGF&/`:RH\zBύl D !#8ko{e[jAUw19j#%T>s^5R[Xbp,d.a37@ h#&IuNGrj^,WvT7kiOϦhodklx [b376X7dL)kr/>qݥA&`Yzkm.PdݘEМ,MV(`~#*n|A`5x뇐ͶTYnSFb%;ƍ셡{Oxh/A|!$\A#tAUy9?":=U`qd\X~k=U1q^tOWƕ[¿S 2Y|8q3P!MJKE, ֑"*Xlnu$s ?RzX;I삻te4.apLͰHWԳ SE^?z8K,ze C:"alWl(좼x<>߂µ!--&O ۸"4z*@\2,ecUpfm7̐d?'TFk}]\EH7]6J7qQ k Wn ϟɳD!;;Y<RZAѩK. D>vOQ籅k ƕf@B`/DsAhM(]WfHUi sL|+ &4nbV~.Z)ld7ui6(ѯ+ZŶ#=Ce:j-;ueYq~dHEܡf $LY"^+?ROռzc ^xسfuq.G%o:Ֆivd;q|U /O#f`d%JS)n%7'k I3G`f\EKVw3Ke4/{fj`qZ4Jz}+;CcRqJ"A1QZoEx[VsÚ,gE=aE=ZIG0dCqyڟn8oGʊ?Nm9IVfV` Q#TU|۾Z= BfeͬVۚ3`ګϵ, mgf,73vt2mLƸ؂~*rg3sv885zd %Yߔ%{˯BJ)vB)H@!%Kh 2*Ywڃ 텮8-Gޱo3! ~ @/=!`lg;giW,0_[EWuVXg֯d6gLG֧w9fL78Ybh2>0*?ȶjwb|l8R$b7:NdUT&o,`!Pf ?ή.JĆKl/ڂ=/b[1qJb[QypLѷu:%!ɺW/aiI$?Ѵv{iKrV5Owlt~zTG?0rt-sz]aV]x΀nW,H. btg+; Jz)Td}vH"Ak ;F8(o!ot_CA-[gӴnuՄ0Wfeg5MƑW|Pgۣ(pν"&Ol 1:W^\AED*z\]5C[0,Z4XZMƪ56=,;nJw}(jYe< yA [KhyZ&QZө󦠓Xa0 /j/>7QЉy;cw:X DV*KF؞n$ƚ9 iVɟ_>w7ר VVrX"@q yH$Dk^ƋaޓEig\:Ҡک-1#z4eR lxp&GMc⣸3WAtgmZ#h, GAIZ$ٜK-s%RkKdD nT״XH,T1P5ľXv$kmlDZ2E?=,jz2MENvwF&ѵk<;ƹ eŎ|넸2 NHC{}_cjǪZ /V@RfFI&Pk5SDsw/v) CpͼΦQqp|:?wz\p=PpčA|G@Ρ{:jNy= b݅ e@KguO =_ FGjU svFâZQL-H'_ACPq肹z/l,b| s}8BrL_IF ~wPtHvZ]NRAd4[`tS:h5kDy7qZtS/>U"Љ8u !hY%P.f(M x+@b*9,*PRBPD"6.2[ }4]5l82IL2$ZeBBb1v \ $deDY.ڭv5+ޤ nsw Qp8@>wD07+~b[V/(D{6`eXӥ=)>*bZ{ T +26_TkQƪ,gyzr~Yt EN#:Bhx~ e4U΍i`7t>G 3/nuΈb$|hE&7 p=~F*D%;+ .}/ܡ$#~Ř=](`FcYzHdO^7}t[:a ?Ӎk9aHCXݧ &`+B Dh Z|gB,Ȅl mԂ8,nH[轃h~Ē3?iM\HE9eP^rZ(Kmv2LEͶEw[@:\\-) !w) {56}O5Hζip흢oО_OGVkMFo㣏w Íc7|q"-ŝxΑk ZsATw'\&G L&pW^P CK,KU*PKJsŷxv$q8fn >tGI;'zG0~;?9{Sr h_is ?t2>7l9;Οmvv'KcH68l;ac'j{Z*ǘQ*IѫKn"O>G$fD.?t7A] 1:}G fۃgW f{ݵ7=8ao}3!RHXYg(c׀ekIQ]BD;{5xN4i_r-rԏ%1Q =Nd׌O5~胚~~ˋI||b܇WHh jS4&r^O1kEԧC2?7;'%?%sΚq x}(h?H5*= Phj>РV8U5*r^OE;fٮk'lsؐU;LvhP0aZÔ~:SUeG{ f$AbxUT95z, o=DQ>y,uv˜w}:YT> 𹋮Dt | \,b@yܡK<}É&?'6l2=M{ۜ13V^yw39$;KbXe&="/^'VgɦuEvxqC}V-ҐiP ,vTP&2Ie4=Ir.S\L҂{w)ߒHFr3'9*~7=J,I$E lIz=iK^!/ؒ&(|7 tЂ]SR9D*CϖJeiCJ _vSv˻7M'Nzj _E5ޕZIJ$]~Ug \ V=1t`5+ݚBxqCBL%97Y]\ %lllo6W8Y^7pRϧkN[zk rAFh,iz,KԚzQTB -%JLyWDN 8A<"7G QkɊx 8_dM{MTE%~gT!!0Pu#2ZL_kGyhdM8$QUKF$IWW1y5hN٘ЮJ4hqQFړm6m@kc}f 5{m\Q7ifn1eA, Hs)qrˇNҾزާޞA?Н )01To|+8aJqfvw`B73kzOnB[ͦe "^7CWMۧ݀2/䵸6#"~x3yUGt2pbܣaNiw= B۬ni0.NZ>s%LV-o^K-oXK-[3-WmXٝӶxS%1͛yªY.Y˙S]i wW6R! p&D$^ S])'L \9MpR+8,vѕV wYD!QnTw0Ы;m1TYwl/.hZ,\4_45CMFii2%[Īh䡛 հM6R@[Ucq'?_KIj])O:)#dԋtQ^֫T+f36F@݀NƏI0SU~a }n:$?.~@a!؆t* 0by_ ^s8Vg6Ȟ UB'hMOMI#% ̣ulsu[ @=(I)o"U Y7& kK;/Nds%S_s==\Ek ,_ZB/~Ta!W#'T:B[E%Z1SV-[+Ũc!(b,0m:!D}z Z%ڇdzq5TO+|Q̪Т4bׂLvUвY/A u&_;zrgXv1_'8Z]FyJqWCnMC*]]M^:.yvDJDRstAk k~9G˰| fp4 qE~keD'z@bLGCHN1G $`P(ݱM@'S-79δJNr}AOaxly62_s'= N c:ݓ? ԅg_lx?q| xzc{5H|sHl5ܳ&4ܚެ`Ycr. f+:u^eN .kK` RnH Bv D~ L@q²-!Vv(ƊQ%c +FDP*,,6ճ.61͡X8|QQmEDgx(P%]uOOdz膄H%G3PI]awьHl %xJWZI#4%`07 7uY(ɄbjFAAmL[낆RLQ h={G!WvJf+&E??lP@N0ϫ0۫Vaˌb|A_YF$@2ӌiƟhQY뱘gTrQ>FF>4~"{>vv0.cwxs4HgR3w'FtRO,>Fsqs08}P7~]f9m! /v$GU;D_*Ô>c*msi`Y*Ir6Wgy^es.0]XpK:ZY q k_L&[!->n&rh!((ݽX;j>hBQǹXS8׋+Ϲu6XX̝]_( TD ԩ_Z]do8x@'B 埧SLpȝ b?\a5s臞 `I<\y.H/0Xz*,VT{5Sy* v& Ǟ<4g0 ^$O7 :.+M]/>0$?aXټaO7s>OaHsғaaӇaq&>;}DJܹPmui|O=]vMk6:vK~}n*޼SN%x"k "sˤɻ n=g|KD>r@PsRDDoֻ b-v$ֻ۹bcEJ~aȃ%fB2%Jt LeϖH#K$PQ٩?Tehٔ-=y" L[Q)=^zZr<)?^nj!Cϗk`wM@d Დ4Da%jNJrRq'J>ĄRex-`ч,<{ L}S Cӌ2Ik2,MإC 9Fj. M=!sz߬VX}o:ث1Qp*Շ[pɝ[WW 3c> XQt1%2w!SjIWb k },,;;'QD/5IM mQ{2>GQ(s9e|2>GO1(588aW(T@1# #eG%$6i°J]1VHVLXE2aIG1e&# 5*nq*&ҩU;oHC!s9|y>GOs9z=}j9Hj7=LTը.} J6ڪ@}ȫnN}X궫>Z\ֈ~EX,FkW!&L+حCn{͌GQS줷wF5/&.5qp6.&XǙՍH/| ޼QJpi0:դjx?|6}p3UDI ?~00D8<@.B`-"/\YyԇOi5᱄pMK&pS=XǏxp νq&~;a^͂ EK7.bW܉ ΟN.(iuD Őuqyh̳i?>6Bf-&Xzuh.}@ B%E40)#DRh DN!+6d0:HɠޞӳV@ln$I`x7A9z7q)8 EYUKSbX_FϽqV޼7ȇϟI7C7w?fnMh25:* <\6lSug}Gؿp0m0c^fK|?D>J==>:LOl6Y0VC#lfMMG{,B,5@zsv[=3 Ú(^/؍:ٳBf t!b тPupo;~ϦHpf"pn(L1[wv 6{==5![+k{hX zc!Q Zd ]ZHcA˨j3(8*iuB+MJq'ǁ͇I} ؝Arc4ЋƮF@hv)yP!l:18ED1&AM0Xs8 큭#@My"$i4Oh7bJW14Zl?N†ikG_pWaDbХph~(jBbaqb|R75V$dSKs9,Z@i_A 7T'Eh2 \m7Z'.Lӄ+iй'm[9kd U{1[p[\Ғ!bSQ5l8Yi^0QJ7bڬK5eur#:C!vX= {>{ &Kǜ2b@m:jQLTʛJ[P+ *C0]={ &&b4rf6!d7.O?kә'nq?M~=6V*l{VU65q8#?? ƿ9Yf# .;w3RW/o<:ukp8?cFuw8ԇ5G5?fOJsCEՑ}MeK^x`|B&pmtI`L]Xp##x & pJR11Q%0[s.rG!sb|*b=\9x $WE8MZڒ:WN~e7F@k@W@sU+ "ɘUc2"%.[M̢.1өf(80B;rJF x2+jZYa6 `fm:'kT:ޖFw-Uh5"+e2~zq}Dzjk^C[!Z=M咄ė"Hv2ee1yCɼieKnf b/Tƹα ET׿aE9DF5lC7$lX?57-ɥV⒟\jA.a tr%M^InB< :X-}.]8m\}$c|e7U*ƐaRF8N B):,)[o`~H% :3=Cuذ$葮 Z"/]#TN=TNȇ[WwkHsC{ X.W4{F0p̞`/I2;GiO%{JST>}ĺvqŲG\WNEtAwd o7olĝbOjq!سF }!ZM"!RTRQW >3b$yXq΂E8ɸYytC̀EPzZt <(|JK& %1+NE+à_d}R~w%u J0(IrDpbv{kfFI\߅ w xѭF^`P&VJ@1TbeY_K`2FGMA~2y]Bgi.e %͑TQA #Jac4ic0)yHX3}+Y4-)ɀ?)d0:IC"0+MziIO6zo(ߟ%*oXCa$6:~mo(9ѷd΂;^608sTl9X au*[0V3e&KW m&_*- i[֕H m? Cjdv fKQ1նvSpHW2QY .IG蘦p-f v|֭ZRN%ts^&9ܘ+B{KQhUHa ޤ<\s't]QPMc|QOo֕H@LG7O:" 闣8T%e .F1o}eӔ*p*sF|2-#=fC =Ch6Ub6B\XsfAf2-MhzV 2hr)fasEMVk49n;Ml 됥~R.*zѲV-ܕH2[v $y7lֹ,FSFl4i/sjl/KN+Py{W'gӊe ͺ[!w×ъO؝z-3GѝTͱV#3:52KHTb/Q.Ypo*je{g)S,~RN6plę´,P5 $RT҃R&~QȊT BjXHgs`kH-;CлY}Taݥ0BBv1˔+aHLrI9ݭ=PVQj,T#+NyT6Gk$)]d9VK4+b )Ѷr1Rhj|6ܒz.&r*+e^JO~"Dz.YvŻŊw-Jh<ӒN\%5imYzZ&Y^bzMv,kj8KwE`jK˷ 偖?]& =Uqdw#[Iwg5ʄ Oa]bLdZKsvb1ãjxraÿ Dqޔ@oW4y4 ٖZJEQ#`",/f.Kߛ%|Hj mý| ȋUeěBet8X+9Až}j%m,E ںb~k~߭ܧkUn"} p&3pn]/B mn>"ٝ"D)ԙ44;[!m>y9k /'7_c /\oS*}zY<֊M� \oq}Զ;pomq `f%vwZ*;\[ȷRϩ)4hU:TsBi؊t/xq] 6AK#6^ku* y,జ -Zwk29KУjf(q㸝*yQ2/{f.|V{k2|= i m0*^^MyKwOjj?3MqƋ 'ǁgb⁎^_W](#9]$cM]X*{u:Et _9N8LpAo>~9FOίAQs'^(%K0Mg;X88rzg's8 >S' }mB O2j??A#~8g#ءnRTFj_OQ7tG2VC-03K`go 6t)sBRl]Tx2t@hr;r57ݾ YzX?Rkeh `=hV wgQJ ~җmA{S#EPu&>ZX5A[-x ݅$l8# 8d\Y@ڴ&W‘MVBĿ'"\)aao52 *{ +t7`oL.#Y"]{ɓ-); 8 Zw #/3+G/8Gp$rrJI2OޠQtuq ^g2:Lxk,:1h4ڝ `<< nCK+71,q:1m5٧piV%h H)6"&*D`Myj6bإ>KPK94Bi,5ptρ3 k(zu 5I/jlsj}ڙPWiG]hN|wmB7r.vkv1&K%?'&p2p j/OƯ3N?N_}NYJoBNS}@EyCJiItpEJtf"R&u8%>LvUB(T Њi(g(%$gnonG6 V%RPN#xcJ8n!a,53~ytFk ݖ9^R<7Q D#r RAee%}aՌ11G\CXYi٫٫ m6œ6M t2VM"DVjeF_')A{{AYӱH:foBG@L@ 0RtkQtsCCUR/Fjٱy2r(j%#1 ۬q wDbⅠj(x>!Ȫ'+x]^ Ȗn@'=rR@|h'/eV) 6޳f@wt;0LO" +vu;$,sۍxo':*l|˃LBV+!7Uͭ{{cu;Gg0#bLi(@ ,̣e3)y(^i[Bkf8=a|54 /s0qU" q>S?J$biFp a6%-%dpcfd&3ԩV$;\` ~Dh/?|٭ghm`+&'?XsYS\i8O3,[#)M ~1Up6\Vb Roi9C-ʮ*wq׮vS.uԳ;0{]Oa·e8U@BMC@ XH9iRK Ԥm?+4:~)u<4gbSU¦|]Z2=`cM]T=&Vx.z5pĵ'Z:SH3D X_cC%5}'J@Rg%13 6=2o)MI?Ûi`]oX@AaR W?NшHT(A\T48(.=vJPW薈o#sљWMIttPH$Pͬ %s9Ymw} 4 Ŕ'YLjL1q8.6NDˡ~W>ĞMuwywcG|uNy-p/N5j k}ag9 b4ɴتleҲUi9f 5|lCd(t2h;x }w{I0Dc$E"\ lT >EψZD. ?="+Q,պ#*):5nYe?EeUG!PUjSVDJI Z)/["I:tJґx5dCѲᶷ+:WJu=iaŃ"]:FǪmyXVqzy2S7c rqm-a|JOJ4+ 5ܠ^j8W$!f zԥVǂ?skfGV I+e(oPѯHy\_}*)SUiVrLj+rm?{久O +vt 1aBk }&JpsKry|a˨"ʼn?Ru;&6$21m AmL. g_=i"0TX-~6IVT ;q^ŠCAɤfF ݱ@.juÒ\Oc< w!ϴC &igRV;t଍ .Dne[T Sߔ(}NC [ 13TH$sEC:"(+OzM4 zG <^?dE(vg/2WAFm>WQ$mz뻷}u=>mA奨۬'$ :ͻT jqjܞ:e_Z'mhCZَ*Qy頬 lBEO" TkT9R VYƠm}) EwBkؕ,̠AJgޑ@ (%1q.u ے^$`fN~4`Gy qn;J$2BE(ql4ZϾ$1xK rI.d,st%݋~ [dZX"F,1T-cjc,1,,ɴ8$/\:܈L+?hr;־[9*J",TXHT{=&lu]ߚ o|5oJ! R?əxϛ q.  e^:i&`W|! L[^Qkϼ }P]UfU`->8p ;gy!g }L?`.50v\WJTJ񇴶.  @i>KS $`%pʩI__'ȖZY!Kd i iGm<N=2)s@dS9*.{\0HG#!m\-s]M~' ba=<}U!飆Se)PPsQ[\%NƮx; /7 p,lo*,Rx Zw Rv.=]`C rkU`U36!LxL%V|Mf\ zPCWaZ[V!uJV*e(g`oV9ąNi(t].u'bpXNوlQgiB\ke[hJc# Z$V_qаﯪ6c\UHأvlmQ,yjW !A{^YJB$¹r0k4Ѣ0YFyU9*݋k;]"]wZ]*^TfNw3aoag_nJOK /T%=`ˏuiYgnk{Yo۳9d49!c8'E3rwHSciݡ?:&Go[=f:KyFXS ]utBM=!wPie4PRɉ^!lG>4uLh~t)P Ǻ)r$WQn ~a_ %Z7ےJnJj%ܰVj }ORDzfD+JQ S[D s ] .7Mta.ՠ{wֹ x ,M=3K802v,y#h 44Gk槩k46_+؀Ts;LnkFmv_N Zñhfg&{W/jpڛ_!, b¸)~RBGӝPU (%rg~D&+~A0S!aA9k١/b_C6ͯ$pv@ѥxӵ-Di~4hRmޖb)u*JeIlϯJfhG[4kɤ<(sA(x9SPSrO-<|Z>V&ml ޽dTL 8o |;mIZWoO@pat=\, ws:VMЪwKɖUNqu+7Zp`6R%8/ <8Qi{g!:6tȔ;p98\~9auq+UHTSE:"aTREyRN2`*Z1:ldm1?LnQ-Ǽ?z)Y;V6 e,$ G)nR'1PZ(QB|z4mٱAcNw+@. Qe~6-=8[oȂu4+8YO`뭆Ո2+2=gt,ZYG[K]ـ >G"#RO!ܾ*nt - NlLJ<+mY+~rOW0ZU-p,BoHws Nhz}~,)VR9Gh#F@oNiHS$! ADA g[5Gz7>27ӻ͍h+jBq~D/>iBe@VVO90@ZF6>ҹ5U PhhZX*8͍TZs4 HM,=@BF5t@v lN^aIB N[ʩM<>L0"pzk6m4)A8ic۹(7q؏D!`c (o:.Ⴊ6:Qlж)}?GxʎrI޶MCȤYk-uz:終K|Ad[6TG,Lo1 `3F 0.]R"\H`LWa<6kn$,uDejh)tI)L KSL`e0'g8{?54,vD>Rs@(mcf/yD Jq6S Lb@|pr0&& kKhE'-d5F/yWu7%#T*7n?%g62HuP LG R ( L5Js,7cS[>F@?ڦM8 2ץ}{|xuͥ𖌒oPYkAL[.|]/ix'T teH xF[G~zwtq4  $@j(ּO1)c: !58|)*݆1Æj8x6[a4B zS jҔAPd"GQa^ !ڧZ"N> <̐ |8t]Y7)0/atf6h@Q(~/{ƞҘ7A?Ujo ,::|ynFSԽꦜ&b- `\ۥ2u+uOggI|B/=qxvcJmŭL Cr♶=189L4}mhV5hoy XBۙj6#1wZ:㝖,ӺR^kYQL5({glq^+DxH⻪aJrUo15t]?]7tBnm(/9(xr`5o;`)fr\pT=".{ l4BÖo]YSa"xJԷ/ ߪm~WOO/>B9,hD}80~uAᇣS{wxyFgԇ0hF0ACC JGvG퀽LE)x)MH.ߐjЛ)vWmxK_b7~<;ߟ?-q>E㹿&>2#BiF Gdl %y0#!% ǻxza)@f`%ߨ) fhϣ=W )6ZffvWA𿩕,A*D13b9kѶʂzѴ{hNi: x>B7e 7qtM+ħX:u8(ӐMX$>|LɟU\(ʶ&z")`!ʃQF4|`_]^VV_sooo>XCcݎצ~ # *_cbƕ?uY=Y4x 91 3iK1p~/>}}cʟ |I4MwIǓڵTmY5*+EFħC}pJdBM:jtNEP<-A CM-k?ͬq7Iӧ xY8nqH (LJߖ6к?_/"m 1f~O>Eׇs!U_!XGHUL6~9:}%3)$QrM;zz[*en㧣c{vDiyra041H٧Ӟ1v >Dh13E HQ#r/N;:<~D5k8^".#EMoJoy fz7 ]2ł7x99NTOg=9=D&h\ƹ``mI( o|LVrj1,뀐o#]At8l!hd2vzBJɮNcƢ2 N`]]1<J9}c'z0hzGGG1oQa'm"BPc#sG}~m>8;}px'Ӎ}( FAL#%<Ɵh=<78Dew{ D bA?6Of7ERPp\Yv x@E6^Bx֬Uæ@`ʔ?V + '-͎`fpo>eqϔI DIjEɝ6r dO&aXX:~V;bZ:T*l,Z: kGD+x aS xaxȎIҲפphX(>6Q>7iBgI^ԤЇUt_&e;?fl[lFȪ!&M]&! B# `Hb=%=MUoof lj-t>CZbXrIT4fCyoUR|0I K7e'hD]m[ 3DPk!]B?I"!e`G}Fu꣫p#*'3фk3&Ζ:gA:l:pN/̢S#ci;mV (hAB.`_(B}H(,eT?pFBf7Y ~z4'˭磃Î'nl'$,hiG.eSV[m_oyy2~m-i&-YvMj d.ZT?`ԨA";w%k[m{3}eL`:^&X1@8(Bx~O 2 M$Vq e!~U$}p J;=?͍̀0o%l,N7e) H F R>G,ViCw -'0pJ H ٘ǀsn]vR=@?Ϗ~v,Z/t~cE5̵3WeV0y҂㘢d~5OҐiIA'xbEŎ܄@ʦ2 3ϔ d3됭%u ?QN͔LoecrR%0 %!/YD6r?k#GCX|v~{ 3I%jaɾ=u iD q49lQ*,.}ĉM(❬"tn6U -ٙSD =e"Tzt4_ n|3P~xV_OQ. $ GwcЙ p0B=>NWl85MnCv@u̠ "AU~ !Fu6#4U(*dnhA\S݂-;E}Cqb{j<ݦ6D78X佽/Qzb?%L'y7`oo8@ӧvDP ~ mDʃhVs>EI j׊||Q@T%f+ߩ'a7\)4-Ե/umѮݭ޵X޳ݒ=XqZ!L'Ej{ GjYl=ڬRkSd)Cɹ OZ]#.Gi21j[-!uK]RDa lo4~#fX`P2f)>NE5Do'akA_a939W!\}4ڊ~nJ*gMe@@`M}(2odzD84PK9̱A? F>77GSq:w]|@ 1 ܈;(A[z-p<|\fn0VA(A&1@"a; q\wh VQ,./u'*ou@IoS&549eOb6}rABk@s7 sgJx >7xz]}F#ޠ-l?pF0{Hgg?燇%~?w/﹗~ZLcዟЂVfNZVҽ3|Y0! a"@5MH-dJT 4̣~0Q-Qμ"xL۩-Jd0İ7S\_\6kp0{UP+*5|[#U,C°UwPbٛ^4éVgW=kA? %CÞ$PK$ҍJsah&2?]HM p4S0B SBAÂ$M,\h.&xE[&Hx`  3*=XT)@N낮f&/ʀ!PR%&Wu1<@ }ҿ ϭ+(NŸ( Wo7 rQ@"­}Q--&{ ^#.QAUv(!ȬJEiŋLj2fNTR?Up5Q.ĺWrpepFm{śAt^  R-s2[[Nm47Yz iFh:ujPOUp> inzSu㠪A7UHO ^QD:oo+- o1氊 yVt pG[]-^T: O(URZ/hz9,FS_%Ѩl{~w-!*vme`Le~Y0* MzhFi(b=-!~t,j7EJ}Ѥ}dkzt:` <ج6Bhi}&OyGø$8D)٩JZ N %p9M#1YIDZŎ8p6f6 Kꬢ1 ^DYZdpG$kgR1dgXoN* d RdRY #T\5໤ fx{YpY ["Q|8G!#?ܚ'F;*@WɏhVj@tϬv*K{d6aW¹8Tv@OJ"`Xšz&"Q H))g3L25{xQr21 MtBBR?y $fĤXlb=,8[fE148cceDU_ҕMNMhR-嵠HIvII,щ>; A, A>Zc0ր|K|^޲ցWZ;x#WauM}H3TL?9T^P0Wji[@ysX}ƈ g"4T SìV{iICcY밗z 3;hhkRaf }3Wl2_㻍xlcY+S5~ZYu(~bJ `e?!hN'{VH+-+J˒Dx> 8aiUˮވUձUh>I÷? Mvs` #XG1 >345}Lw9(nҕ.aZKu?.z'OKz տF c1z-K%VH%ӅỤ̌B:tszzp}͈< P1:h+8DځRI.!@M%8=f%gE\&֮D?ӿ蝝''gglr)$'}w u/Gdr" Y?S]]d]˨TaI(9t$2'Jhr?ax#>z]~]NV`^aFdTrrG'ь'wԈY4J#v ǣsށ "fGj`n!̻f8g7mY|4.~/BU8\·_GA $L#~ HVW\:ĻUx׼O a2bM412-a>Ư/$/eOX: +‰_2X'4TDJ-DΗb=]o%!,/iX?iBXOiW_iVoi>ViUu侭#moH|[GZޒېkəhYI3KWBg*h*AXz}vйh)*Z!sїMgVw }/;9;].-ԒCoZĆcN tLȩk! w]M4Y^^ˀC|x]v_M͝*$>ȐshЃ襢F(dۆ'aGև)RDgҊm'´B6gݴɩ@.Ɓ!'谖ִL]bE-;v{[oHhlR%IqQ& R"D_4ps_Vq6j$qm:>`4SGd]?Lq Ƚ8#_ɱ+*. Hgm%kxe2?k?*PGe p8 P(Ŕ3ʁ a i(evLL.0K]^(,܎[ޗ]/9SoXV/ZiW E(_ X]O 2\Gc9/]򑶄o} G%H@yߧX}9~DRďП"pZ;Z؅k2 ۩|ZWi5=)ԥY] BCSd!*n旣Oqk#j"c/h@(t A V7N7id(t2͕ \Eơ|@ 83|IÌdP7.xA 13/I[UvFB9jOnL0 0٩x"/f:0 IPb(Fh%OϏ#B\f׃1XIe B>-R]|kd$ 7iؗγJ&N0$~E=Qvƾwe!fOF;FAs^:40ܰa!xCe| !P1mteT} aTSI gbXxhY8Ƈe ˚%{gQ@t?U-S}抅x,!iwF'\C0CwPPn2ghXW5W`/( v2ń.n*3dA_hq ?b]3doۢ \.:8RAKMvjゖvE38CAdH6ʪFQ '-~|dvSuzرKq8fNXY9sQ~RXnip#A^h&5$t~[JMfJWMܐݣ&f>3\F gmOpI?4t-uxah$V|lEuF8( Er@n'.⹳i-Lyhٕ5io[YAED mu!U͐!mnUCMU,񀳳xàV%eFdzZm6~aQ]|@P84CU\\-;$ xT V2F'O$ا+*x>#W_~FFM݇Tx?+H/WnGUz{%2鹻 0:_~g.0em_mʚw|N }NRɭu5P#5_:=$Tb>KfSJ")@B][9|HOu𨙃GYO}MpӜjd/i0=E !$zb-lUD#R8-ـID"%{Rd#)k ֘oͪ<$v+D<&=j,.NWh#NlMfD٧2-bkx ;;( "XEEQэrD2A{' {&@(Ź d̖\1[v+h5Jڲˋ532(LC~L4'QMOPj~Re!T mu|ZE+Ҿ*"V 8X;μ!;_J8 *Ε=eJj8v(sFeSU?˘$]cxflv%ڕ^9=tt5]WeKy߻M0G$rHmqWp2 dÛߊZmMf* l.m{Nй=r5[G<&QWF6]O n V DU=A~rQGå]VQ'˵moW JqpGn/heNȳ/h3 jzũUccQ3{"Y̓m^~]/Դ@g1pGn.ި5Dd3Z Ej[ Ǟ)1i(Oa\HZ k*9 ' 'j9dn&j4Yh6@&7@:?T1OGӸ)9{z?C كM"[*AaoV}>sVBf779h8 C =:M' Ɠ:?>v IpfYZ Πv~Muݥ[,EǺqhE<֚ʲ=Q-O A\O?HԓH.KA{c$l/x:e'GG'N|  oFv8{8$~`4.h2WN*UԾ,‘.*#-%=;1VWrSCθMDDƥvO|uk7xb܇hىﴻj*Mfץ8El8y Uw)U>V1IY Ix9)-E7C:'CSn+ Q1OɡZq:k;(0Dw/ VR:ŢIX`~50S6d'rf9єʄ<~.#,þ/ˡ^0 ׄAGTL 6p =PQ{&%h]a0q}6J[^jʑ m} 1M xS9ÿzB QR^ipIX3 07cƳ"ʎA0kD^Stre)*2 S0hMXf/I xezZ^iu\$v4G<̾'Ӯu(W/)'TDF.̕Z&c-2PEed\2o߾1H- e540~Ua^fvG:CZ{g9Cc ] [h}a*%vFߍ%:R㱱$DAjJ,VxҲXsYrBW\ @x{VH+-+J. Ix֢^zi{ٻo]AࡢqH0?Bzյm#o5,eݠNى^imD/U-9~EZ!OO/>wN v}&Ɓ3^݉&ѩ/-<m moSE7OoPsC2 .%mwy w)H~NН&CRb:*6| wH޿G P{{O’5G=R ػ'@P8# PǗwnHY0) 6 6kate=vrnӻc#8 udxA,dϹ?}.WCWK.MjUg,Q!@_8$m.:l|`h-&OElsE"rssՌnw`hm}w.,˧m~Ժab> ˙ 1 v5q~K䫗 )ВHK-.UrFٔ ;H2QCupzUH%魬]–.Z*.uU g_6^WWS)/kjxo@U\ܞ0'ygXw 3/c#;Zyj/˕ycB]iPy5)[-[.+>u{Mv}[U~WU%wM0>СY53LjFwn-yRˎŗ=1Szf`A ]mG;;8Ҁ]>:8x-iI"ԴArK¶i8C~|M|s~)D6鞆N"GA4L5p%+(EO6oni;fUA&hqA[%K_n P6`e|2Om&Z ilP0,Wm,w3]$q?77Om^%?io-1 8-큱rHT}6-H)Άt̋|٭eMXB gW%xԺ5[oϨ7zc l[ ^<|V Ja ϖ*[:~&qOfGҐ0#/-,yrYG04di!Fkp0B|~ c%0A Fסmq:1Wa&\;T2w΅Ҥ[ c̝Xpc61y8^{ Xktda0~ힶ4KGПOۊr*LA쑾E::x`%HAg!Y .A9[E4j uBU,c`QUFZau^/ \*0ERVHIGhV[]IT/څ9I젧*Tw1p/T[MѴT+ieŋ=oC>^ch^U3%og=O:j#E*, xqqc^-fPԒb ELT)U#UARgRKb$5K*=lu4m2C;{[4=6f_( ƍB]2̒:N[IUYolWtuqW7 Bec*%ɨgfSDOFua2ꚼ:f,똴$ yvi2jT7CCЦuUj,ż=2EMYOFY߂hn{-{M־ٶw{-nU~;m"P9&7g&偮 W*D˖:pt/+<ԘE6O$-g'.4WA:7։kҘ"JaWL=bA\R)_] cFjeh׽i0@Zc;4r+aIDiyYĪ{|w r0-ө m+E6/Yvv(-0eOŜ#ؒ(EP5 %.sІ.:d?dXɋ~0q-&q!Q4xaпz*zJ"25|a:h{d~?q4'WH.[FF8ּq4FeGF"@%3L[0SqS*4kt~E" PwDVAszdS7鴱gmoF޴ߟo0҄U `]#Lw a:8+oҚw4S i@x3MA0RHHnhځ[BT4B%7a?"Z,yG9X(\$ &1r|5Y{@5Z7'T S] f)l\ 1 'yM7e {噞zmo\0x mPjH՞n ə="{$ *oAۀ-0tB{f}(8[+j % jr Ip#f)+%t3nSu SL wK!GUGjaڳ֌IX˄{ipDy?Hf8nۢI. K~852TW ;RD:v2^#ⓖ8J.ŮC9Cai%~_Q3a3c ag(޾6"R]OP4 Z?Ow<#/&L)}F<,b Ѣ,ŃiSaZo~ȃV'i{Mf|;Uy46RP e E<{ItS}-hJyEUҊC|b3^fqz 9εhܒV@%@vVXU×glE\/aQZF`jdf`0Ba A[gC%dn5<3i Wo7s3I9V~E[) Ot*P8Dh=xC$RШ>\~w^ B *%[ ܳf6Hl 0 gi&:K?)~Nfא->iSyU[@H[h/z[BI0G$ĮWʐ6_ h`P5˭іl7\#균B.l ,`qMފ'M+s%Ce$?υs\#)[ +,ݡog@t+3XiOWaF/?q0URaGm#t1{>Lǘ=76L"/GI^읣G"ձ9JrKAih7|ʶZ9f6(k(}~RyhZ4aV]G*LM<؈ M(FF֚\)t K嵢Y 2MsTOaS uږD:4DI o MC kau>! o]VVMQQ~,^jў`) CߟPV>"O0Z;Z%ʊ:Y&4MUk{:7bnf 2s.iٷd߁el[9{b 5n3(K행ZW }V;^06Cf,ۿ:f/meч|\*Yc[B7a8A"]0]6/CX*i4W[pr%VFh.L"v-Ӕ务Ӊ%|5>M\]u>!i1NEg*h*d$Ee)l$>4/N͍ UXrVl9f)jl)NB̼p(Jeb^T:? 8 ̒>.å'3ͮ|9nBZ!=?BC)X:̣7B9 o9\Ga뇼6D>nGQiMq0c3 N:'u8 %w/Zݝuǎ_ 섨S#ȶ(<8g6=Ftd#EJ! "Ġw9K4h`n9|[B!g7 Qdr#y2̫8e}<rngpFo?bAD@w;*j[ <%U&U12P0x9L ~2F^q67@)CӖo9l!;cL?ΥzƓ^bףA øGŵspFNy4e0A/L4H|Oa6P7tH* m0{r iN p6D_I5y8m k$!De&qqC%qS7%ݢ<?~e blGm:Uya$uYyk"e?2thcSϛq8sc,jXi۞=n]m$EYHX$Yo0x>޵ 5-4*ɀY_r⒙u=ZFKdddddd\R.V%{z@@v<HCgNP0|Vp_r\mDyfwvoLxnVn2hvr9;#7v /}a7Ǖ\WiZ Pn`/nH%:(M8|C.:V]wrR42%Xۑ5ȗb04{0 }W.MN>#j֩sj*+#m4L=8RX$DD+7J̀.F " _}( b8fVXSV±ZPӞ,a:pV+\)Hԟ.Ԇ𾳵&uh-F#.*yG;_E}FMIV4Yqk^bYgӺo( U罐QG,Ls=f eL"܁bቅsPaڑ oJ]ӧ}SrFPp_Au/2ŝlYNb&-ǯy/JMHy(Qʵwi 0w2( TUFWc h@I9 3*kY[miON71 vxB*f a8F cQ ƎG'O70V2asR}C@낫jc fth#]&w] 9Li%FfS[P(,kׅ1ֳ"do9+B؜pS a&X &x#{RDF PK)~\1#VU` B^E/gU3C`yyy zCV-1过 o6HDts{:V9̝SpvքKMRZKqUYË^=D5$}bz864-e(GjLPe,SVqLʕ/+&+ؠiL5wG^j#;;sXu҅DsRusquYlwU|+U>6LJRa`C F963|W7-Ⱥ ,ѭÏ!jc AELzElPzD\bhlY[|K]ȒimNI &}Z\ⰼ g:xAS9g,=LܖO闚[]Tt~ڏ-2[PlST%R]T.@ \ۊK)j4hXu8#CbnT耗®^~/rP~<\Sٷ>wLgWAN)ǒM6u+r_l_MGLf&3*LCHP~?ĂěQZNFdk+}6bQ"])N39M2tė횠gOZrUr'%'"w's5's&ζ+N WMo:-"=NN ؞0d| /N&7\:ɴ&+=;Y']_- ]xkC#ʭ0;tq=AΣ^~ `&?M%H#>)3jV,HΎ£+ ]R{'9 Q>DL%83Zd/ҬaSSGs$>V3fQJ Q b\LdbCtM7gtEe:?)oU9 !'Ul9dM>+Jm3/@vߑ4uK+ma҈g캽5*YXV2Hr1GgXi5-k[ MA 2eK:}n׎@a7YwW*|¦HH!l"5yހn Amٳ|?[]G!O8 ׋iII4:&ao Ӊ:Pi]^Mц!Gίr6@( O6'e Mqġ㑎d~Y&#Y,2"[B-fV6f"qOEt9mv=LSTfj$0c32"QL}Ѳ8IksQ"9և1yхbrNj͒>]Zz-(=<ʀbS<ǹa9tsƢ`bD#S(^:8˥dzr3‡ "S'0-AwQ>zޮNsb] lJu|hnW @z @)`ERĬbT}w"ѡ2Rnsgs)m]¹NN(*QgA@=w>x5ìH6G2] _dfh3ج㮒8t +a#Um?M_`*J6nj[IKNYP._%&/x!fВdJ%Z a"G#Ix;jD^9A@bܑ]49CHY0xf^EW( { EK]4ikK+@\V.NUZ`G? @j R,[MbL+-ŦCa@Ӥbx*x5Ǒ5go1ed6>9b{\.:ӘxF<(] elr6+Lk[Gd!:5tW3wm}'cHjxI(TȘ&TZrcpkltۦ> @[ӆedE1KBw,5;$ T/Jɀ#waL I*B)~6!W o1RU2axsq ;-+3zTKŀeнsEbhsZJ@st..ny ``L[q*w~9:͔R=Ύӷo2긅uLr**W׈ߞwp]8%xyGZ[) pE/sI$ 3fȬVjHKZgj.Vjwn[D_7, =3rGY{lt` 31 &+Ag`$!ې]_v%hyv]ө3CZ?,GZ|_%݁'i1$A+bv|˞ucz|tp&p'MiH<xihzpSK%bWt׋4cm8ꆣA8M,1!6.v)`CHvm dz+Àma#9jc׉ Dχg{/ٛCwtBPai-y8(X5tM9z;;;P S`X>M˫ Tl@(^Hvޱ=OS`Srrt * tx/:'8f 3Lx Sx3¡b8;}$" 'Whjz{"payVaw8n# {CiN12,*+oI54!A=+̠<Ԡo`;/FtdQD#, H=1?\|.I#o![<P.ˀe@$X,b*bȁ%ޏ$x?}ɂs )Id{K:"eyG~$.# XTJ/1NrU%EAM +]X'i1+.hJ6O|CTV_zGЎ^AϿQ zU՟eu3OQ_Z 5pfy5h`4f'Q][8V\nmݻ'U *lRzlanBщE:Ԙal7iC,%a4j ~w<%?]2jok^E ˷^eʩ)8 kHuf}Rt5^ F"H^ki@O:bP(Djw(OE@*f `wCoJ|d{&ߑm`tth 9WNit]5bۃ=do9,gp˵ZQ{hؾ,n/s7ׁ7(|h4m3oJߝYu2%HG'G{G(<.s)_[~ 0U0_ąA3)°(2~zD)gԽXgm_TAOWjMǛsY;Pvmmv .GGαw'>]fV3LyT@QhEt#'{r@uN_rׇc?dLПN2;ٱ&֩fe?y)Tw ha;7ĵK`%RiӂZ,[ܦœRٻZH 3kM{?xK%{YRa$o_wWtN|L$  ^_ Jr#jL1RaR ’U smLjYvS |E(z ETTK>q-[/\-5}j bn C8ϺhV 3@)20yHe58 U,D®]p%`'!ew^f1BnI kI8?f&b0V 4j#VxحY-'bPrxbVu":j1GaHm~LkV yŒ<5mXLòG*FI:jYּi]cfJ6e{ѳ؅ 7_|Y_r|AMx‹7OIጶ$oˆ-4 {)žUN;O?&Ϯ EQnctCwh C:q4Z z|JS/ڍipuqUfm+o#9!=h쮰3y]-S~^8"rlVcf7WK/v{'-+&X<~ }[^O* Vf hz5 Ŀl7{%¥))БEjQJ rf::MTG+Zu|6]mՋ@t4ݯřIKxC֥ L8^4<ɝU@`kQv nkI1lFxbh M5\~@KaF]4y+t[[ojl.T,-g 駨%d&rh᭷ҶwϿ7?n~rqڹ1<:'{\ 9_wA ].H~$ J|f QECG}F$wٟnqS,C)* h Ԍ&AV>)% uܦV^o=sd0Kjʌg%&u14MFt6) v2(l-yd 3B׽ 嚁ە: 594Y[pI('^Xb7hL.b==ɕưiKnjr M(؜$iiNgsfh|.gTl~l!Ro =v1RC +]oZ/=`Zi1An7/ukSV(lD&J5]R ƘGg+ RxT:eުWH-#YnH`i#"NZb&XCU+tzkkTv ᏰU)Z4ӢSBf~"CI=xɄ^8zX䅀H`_3-BYHt1IP#4Z:@E"Jûs+ 3&vY~EA z>A>FDkT(TiƗK*W]WcY0kqY| ӠjۆB՝֪LiԨw_݆ ur:crÍ+ rU$S-&$/D>r0:~⃟B lGTe^<؂Q/cp-H)!0!źy_'$1>$)݄֠ 4Mg;sŁ69gV/^Lm.JPwڄuka.H MʼQPY/˱G:e:;]TȂH:]"jW*܅S\\w3ޏs;cv0Zb5,Uژ{U 7GGR6Q ȫ`^<5C?p4 g.SLAW9R,h*Okx̴K(YI(]ZԡnQᨎe P_X(猧'1F|X,tOOdFT"ǖPI^0@cϭ`KZk?1S'HRa84"oYѼb P9Egw)vU"씆yApzS\BmSݮ:2ox<ʮ}؅d}o8(dHeFFފgn\@3vaR)ы8wm%eQNHY[jnC_mam +H/IQ: wthvivJLgҋ  <} j?YZZ`4v@ԛL-ցb 'ڳ>$&5O/@v3M?08fuYW}k2:sZ"i;,Zd1T'朱@E}04\V[ş$z\<Mwmg}N$yO%FwP4H|c!|, ;t?~{9<(f菏HwBG}U΋*sVK ey+qӜ*[2;"I'ʢKaрQw{ϢL ڟL# 5Fg_l7UQ.9wzRTպ^U8U?qE~qލ!j%[0!p8NjQ¿5n! KW{܂S6I#!om9-N7d?N^pw# QHum9-ZeiGJkƉU%lY/,hWu)ŊJL +u(8YcNkiMyx5[PT)Mx+[PWQ8M~PO S\@-S&H?Ts|d},h^2꒖/+\R/ ĒrjҌbŔXˀC |NcQT ,Fm`P&(Oɹd5&pP3?Z^ G!v~m_v$4WTd?UwD9}hlߑAp$9a5.FVRDnRxWٜ E|cS-< W;F/G͊+S6H(Gܴ177oFʟʟP;yMûmx yPg3ZT94 @R eҾ0_Qmii~eTb"371&@46~r`Ur(4W[`Zy iŁ@A@Ӓ `DpOSgNA7'HQŘVM^1cZZT:ݪkkH3N f[յckijH[[TD_[v9qgm'7V^e"K(Zn]8y1r潰褡Ba)Ȩ!lHf=)ELfފV9'hԽ҂E+Sy0L+ R]sr95L4Ѳ]d&Ȩj<Oy} m=>\m EOd[CߊR !5D)z϶/xcx׿@4a-x^w4hcѨ0;uXXHɊZ58|ΎOIp9 `&1,Vssu'F9Ey+J4? kzŽᲥpdgC%NA/ScEETo QUh^2Qp !EHQfU&[[HeuPPwYԙ5;ՌxtZe:Lƈպ/?bUjbF9FX~ cQ;,36@) bu"P{ )0=_Μ?#SvʡZay=Lnq0RY;.3jG.? DxYFƴ9TQ`qYm`[ IN%%H=&$h 6d N:Y5v۪XJq٘--yE셊GUճ j/~@ o8 PوIe{bDܾL:g >{e_k=p]ck/ 5 xJ현b1WSؑ^x&p2[9<@LW>*)J"˔K8xG]6SIGMR-!SPsfTQszVX00y”}7qot[p-0)|W{zw(|0sS6j,˒ɴ x;}\4 |jmF#t !5£dS>z%OZgŻ=AdEdFx)^hCZ 5.EjrDЫܱwdKM۪@Ӡԗ$ &Ej77ӛMZ ]Cb$C#dz@C|srvڐ!(rF>P89|>oǣ`6^qY)xO~%٩UTDalֵio@VGnU)!4:-a%_8r/uG.6Zt.8(rm]u-P:8(wC`} a; Q( 'a& q `,xt'qz̆$a_'r1 锾nDc>?9QVze_I:u ~ pxy+I-([=)4,2 D8zpD0f?o˝6[܏ȹD!c`xv} Y8D|"Qc!5x6k{M] m9)_3G C('e׾i@UAT,骰 1.(+nm r!␿Q8ȣSqMA/B|=6  Zy3Bu9M ~z3^vc4|c~)K9~Aw%9>h msu0|\<ݩK针ʾTo&kk 74ӨwZi^ 16z]VXk~SO:Mh'.D BFíx wh蚂|wvso;?z/8?cwFU2F| \ӷN>7(.:@h+ז`6rrvieSIr4stvwp~{O:g [w y{h)I JA2Tc.oyCZQRٲ P=4p2`2, Bx'^X\j"Odӛ0E+tǫYOx:aV=%ʌAZ|UVw )[O5SR উ2isj4=yi_-?=+vv6@~&w}:$3؟*otz|#a0JX`@Z~5:QJGsyRL85ѶHvzK(/!zŜrF^hLJ\W14Ҁ"p+u/gR\z5DOޜ `֝k[Ǣ̓qIPzЊ'jҔA +S<؆UeѴ=(yJ em;[Z%lggQ8)}ڢB-o GCi.=l~w Y@Ui2WZ`JKX17mSW]H(Ա Io&as"D7vs6ӞI%@RR+|xkr8 l) L6([s̫L;^euhJ]~GVMFפ; j zԉ#^{lD_Cǰ¿ /3R+.9YVAzh4w ù[ٕRAOm\V1[>h4!`7Fg[<%+Q  Ҝ82PO-CB̲tڛ^-JSt¼_j tkh6DT?\+ 8qoq7[xx]_[Z5CX>hǒ$z[\I _w"@'PIJ$zyV@rFI2SY`%{^M(QbG/f$ &<~Jl=w 3fgbD○.T[ma5u^o:g}9kGSqP#Z9k 92ۇ#ȍT`o>:drF/Oo)g{7fM2MI8n+JϦjmx[>]rpEMaӡ@,gP*0tp(8E#B̸)(: 0NdKvv( $ Vl5!I) 1<3/fx0n/@|UTi)2C,H.с7 D&=.jǛ ~D3MGڡsjsyv:K[fLNzW:"gT;`a ѵ%tua 2刍$}W KÄJa>]E 8Qo:5s; f⍻N[;N<܋Q eIunQ2cŭ\k@](8:y \JC쫖yj-fuL||Ft9}6ywʛWpdC9MukTO.WKeMXz]5ap lwEMc|-ԘŷS2ٖn38y [ZF(F _hQ H̃$4ޛbIKw4*ų7.4KO2&Br?eL~: Mgi\]u5 dIv"6O zۭ',J(Bg$hOPпs ^[*.2н mk7YdٻpdC}9El̜>f;\n3Q3 8D¡"+R0;]Stٛ \U!>#'9Z7y?FopYyK9%;!9 9tx_.އ=- I7 or=Vs{kPdV9`pTd6!SRɑ8uڟQy?dB{R6م>5[ R㫁8Hc+Sٶi2y$^5{UR$z@R5ڭF:RM.T UՄASV1!=W)("k[IO!1ca7ٔ H/Ŗ%ukd6_6أq_jƮۗ7v,W2rm/VBRKAZ5f_B9wQuEEn.є)23|m%.I'qBr&FӬq~g}_ß38ϡBxsQ誃&UcCq̬5MsK{SJФ̦ɭuMkb>{wcmwʌ*qɵo$cC[A^yԌfk>2/,x^kvp',|U,)h#,u d뫰t!qrZoM c!NHoJM5d,! eSVaѻh::W=օ4 ~=yb;0v(v{E!X9x c6ߏVQJi⢜>'H$ J5z`LGQ=>8I0rBfc G'bJ~Nö2⿰П6rZD<)x\{$`+гQ:ބh%ҁ zֵ x4|w bۉhQ_p+/i 9vh0)Yb_Գ!j%CD.£E2:Β\R P0w)D">%dR Mt#[G6hq|ݮ-ͫ oO4@]@LhsTx[Θ=˘C0Z6F;lŅI& n/CmoAO.gN3;Ґki,~nCi.g߂&:5Z4Re@1RfD%u l fk-u,l~ha5ej2+mY@@E&)s$ GzIDSDP4)_L=2Փ))BP s׏Uд&9\uK݊?{Zn0CTHvx_-o -\MK@˒cհ+ڕ={Jg>=܂$M}cA݇]|Fodˬ^k?O޾;y 8|E ՖHc0S U5ɘ6`qj:Po$_9ߧ XVMB)Ξu% | \hҜam8uT(0 |<jj8 ɗ)^JU-xzن s{wiw'o 3~l[ϟoR0rK]D Xc^*HDĻ[3>7 n-m-+X:`˚*cde3mazg_GCD_92j_cv!xox{أ_$uq˜>mw-xσ68uz@?(àԀ0EK|qznD^FC(3B+DԕWHg Q͖) O cӁ>}1Aesb'i>)s#uS FªMY՗pZBSOmM5'F3QmW)p۔uh|rLdINK<0FY[̾lJmCcHwt-Lw2Z{x9e Cfk:iwnȐ3)` s)~H?㤩(sN,*+ҬV +SURq Դ$3$Cd2RSVMZKAS~Nl {'Ȼ ; q/؊tmFwҴk _   KRNћn7֡dBբ!$ o{8F!T;ʡsp`Tp$ 55H*[ҙ^Am/% 'q8N(G݀t#&h]2Uy %`90 Fuc/$cc<("{69M_?A|S0Ŗ[\>^Z>ri6] *Ou9?;:gX^`PdƆ@Yg1.*"X] eWTJ^giDv'5WU 36j|/b?@b[Qzj\?[Xg\Rqk *ƨم=`@b{ô:+u“4x?TۂD5t fa~ggN}6{G8\2URT.0n{B-!JhU tOqvKM$NiCx0RTuE57)X3?[r8gއU:HքvPmcB.ΨmdUבNZv&~b1J{)9G̷)Qq#3̘FhIC:,bfI(DƇ ͮT| S]qo7nl ?~:ElsyInAXc5?s?|:r^Zk[z;Ww RvyJ/Hq1ӗT"ՠp .Q"?O-(USC D f G+[v,t}u3ڈDdUY  1y-bfq%B:wn' 0癋W>DP2-tqܵȔEJpZ[n<<ʚ0{FER>{֚㗟c<Ħtp]msMܒ,7䴸nAw:_sG-4k/<_Bk%>۴ì~w77yO_6>mIӧϛ{h+i=\|WGR*$sO=>y9xU`4;GEE>Ր.}<(s0~g2dﲹ7k E<:-VSr1%N3ֲbr¡+Ak) $WTe N O{*ч*%)Cdyiq,)a"\$DW5 EN>=ȴ5/i0:/:k(K%9P>)q@Ws v%ԵP`&h{?7C{k N %&K0(N1 _ku[ђс(yFYZyuv%bE=&`Mغժuj0WʆpA?h/L&X[L5 9o7UwG*$qJ#"N2#N= "4ٸkB,ac9O}7c5Ntg2vSXf #SǓ.fEeM SqJMn]6xn:rn6?;d*蹑T-*R].w `;xAPd0^z]oiQ.bKkQg*)jk+bX? ld LT H/O0-+}G>*N]T[^ u ԁ$g* q4Ql۪(]鳈mBt֊~1˚-Y(6Ti<~BdOqyY YeWN><z!~`~dڑ5 -8@?^:hN?u~{ߢC5kft>Ɇ[z״pRUU HM*.W!y Md+DK*W"+^3s#i"ome\YC7'&+}^d& ݑ:ҫf.-PB%#7Z[z@yuFYJM'OK"5{ۥČ>tsl=5t W5kzK[|}0c \^+yyFޥ{.4orI."8XN0=tEZͩlЕ:T=JC1fI> N2}+]Kkʤx[3Hk'I q P/@j tlna "^aܪ 2VÛ;ЁRI<*Hx:XST**9T佊XlQm3'ܱ Z}|y~X-s+TJFvR( -gc5ͲU2,\Ɯl xn[+7 Vdd6Nf/ akae^ F/Y(novQ_ȫ d'W d mfwC)'$2tPgq #DK-2 9zʐ16{4trxy8?:k%"ѹ)hב=DYH5_ ^3 uקDun=t[^>Ѫ+muS+ xax|xOzQ?9Mu9 uǝjFeU26T!X4K4S|m'~=Z~%BCf oo )rEIԒst:9t |>yCq3Ě9ѧnv-gQ OC§k٪kٔ [Bk[s=ۤa1MUR1(f pjX .,tÛ]q}G X@TVbX >5V^ߟW>*38MH`<3 hjf~XyP5%/ G 5%A5%!1V˱M`J$볬⽗tNwSEc+;bK{ #rzw_%,尒`4I0K9] 3.D!@D2ڶzCAZw qfwGڐ HWytڮfY&LXSyIFR(,6T"'< ji_KafGUCm3T{=Ґ@>mD˄53ܡ5,TҀ1z; .N/ސLwx:-1WyAf15|ٛ7%h84I(ͭmhkS̱>-+Q,@ПDI*R'&ahw.`>+3QyuVES| c`'+ِ1xY|H7 -o]x57BLd??UЗeRY71E3p3G sTr ț z0 0hb3Q}Sm p<pG%:+,N.DsU݈*C*(YBB_. N&+'fw|7)pt" Jf]Ȫ F0@'vReZ:y㷘hCb/4Q_&M1%b/lZ4gTMrp.䈩E W>i7@JY僬J.@& >b|iRGIHHXQ1!NY^[ؑoF2zb((& yq006"6)1%DXGn`ZX[ G:@wT)q7wRm0dԥ<N\S,(t!29B8C}fIzEm8ί# 9\\ K%] `t q#@ jҘTGJ%hrteF(.X&$d^ =Nydl_^VMKx\RNKHKi I+ѧhQX^u*(p!f"! EOޓ#DQ*g8VL3t>g)󑟵vT3>r.ұ6Ef=CFG5\"agG@kMߊڏG[MVc\cD lk.LBV#hg&48s9Ѽq uXqV%LfQOf]L]h>1.JzLᏣ µAco}qmX^Gt0 ;$.6a\."5F"s氉HJUc ޱ]JWP`za8 Z.",A@HW G:fc2|áό)ZcV4 6h&j|(4#RHɊ*r= ULjSĝٞ@#'O Pي;j -W Dk:sdE_d(:R!y|M&X|`P5kfDݝ1t\VqW_=+,8NTW'X`57莴7UǠ!Lec!~p>(Q:XN^y^{ßK0xo)oZVuicÛˁ!@~m8f~$5$߫6xٸDkq;mvfDpDvƷ^u|6{L lIZ%ׯO ;&!M 647Y Šj9v }Nm8gRPS {::<ǚsBT[(7r-L,4 Àgj Oz`Z?*_0 GkN !R*0BN&5]\:A3ѺuNAy.REFY} f"X#pГdjsr{ !#׶F?s#ͽ ˤw04dmX5{ t\;Hk;CW4e#@] `sj߃ UP#`cۧP1tglXGcĂH$`[ Rgy.Jsrk 行Oc^tm|2t7OzЇK}@@z^4?^\ xUg9 ~&g@q}k~<@g@RwyջA>('`><9$8""C|<@pfaCh֐Nu~`G0O08/BHjC `b`>ß|U*n{փ~ rtqtsuؐȮ#AqGq8P_$(v :-ڿE>eTsiKr*>7 @v8r~ѧ귫| {`P6 7-lОI?w>๡m=^\.^XQ Pm(4{/M P՘Y՟`"go]A|q@\3zC\t7'$YD1'si؄gHvVՈRk5WKN5Qqg#>UhB}xQ4Qo<?4. #RS 9/2?1kUJ 8 m"aHY$กs˻}AȒ&<Ց" A<;eQ)N"/;R`ȆllY 9̏O~tJ\%yN CBSDX )ff8_@q YKs~57tF>Ɣ\Xw\$ xu(gWxP ./!{.O@ԅ?8IM8J?/;6ETb/x9gX=m·CX;OC4g #rvE$|(!}fِLq j%_VAsR JX_ hA9h0Kid%Z>P ANF6 3GajMo>i=drCu^  /pyv'U27BH9b{zlk@@oe*uo2j XY#$@T7k)o85ap@=.IpصM q$sUqcM|ǃk9l,?@PS_ gSAcF:0˵!|>>fhC9QR(:M 8%#d O5 Y@uJqf&eEtd uĖ$9%5-Eo^4@4$Uj)duMT׀5SOwͶZ?F_WoYv_̥-{eyĝHK[}ifT"o%#|YTJׯskLByF1Y$9|˳'l;S6irT֒Q֕oCQr#1[މv2W' ͙7 { YNyP`p sRpV\}yֵS7:9HkP ~0teL+h_nb>MsueԢ۟3oD v)!߆if|3t[SӿTy t.P3Ǫ @`j`sh #Hհ9193oKFoצz yJ1.TlrF+KR1ᒌ5@𳲣L^k@a$exzjRaM:1rld/TZ;9`") Cıu]C@+_L-{؜ߪd:i&qt uR(M=lhWzdTmZWS8.ssSiKIh#+d$cRHe縐KE38//#NN o@Gq'BZP/ a.WS= `iFԔ)%j|,-'o>&g4*4(K{˟Ļp뇸LM@z QL]: 5gW?e7D7oE#W?.݂"#`q}T#bRd]ւQpYOoDjXnI; i: 짶5g˽b"s"WД b:ͽBD~̚ ֔fݪI*X(p`LxBx~v;]%5="w8zRK0S +z}GqIݔyx-KƲ;$xSl;5m!(.'*Um/ؑ2>q¸${0Z_.N+RfWpñR\|&ם{:( PQ74VL&7ڧ4_X.k^'k~ oqřN+M8 \N#HUl2ʄ)%\i{q9$t/JrK1~!Tӽ t(pG kb>=//d|WY-DcHAOݚf1IEHO3jы}O41ӔiF\b]6f ˥Du:h83V0O:XY di?XOONaO! 9ȷYp(DcI"6(sAE6݋ R_j=vj0\8+S϶ZZ) Uw{2/w 1sN{sJB*1UD< bo'ްFa:rYS@ 3ʮڭ 1FMl4<::Iƪi43"bp Je{3S͢*+n*0UP7WUAd0_ 6 چ(lYz+ 8MD\imӧx" $0ҽPz;5,ەW|.Q7Ӯz'u_7 ))W#kW#=9+^V}w*(yw&l ?'J8;e(Nۗv9hGs&phfpW-*󌏝?x@K{ѣ힋ccC5^K꺶>\  2"ml2;^$Scs~iO ?u:g?ã sG>E87laFǡso7\ESc[7 JX*>34 sS%2`M!@L0J@n>Fk SR F}YD3\U|pO qu"Awj+;m.% a04p17jTmomf¨S#BquFЇ2pg]/K?3jC zxA^A+&W{eu{W~7qI# [ 6-&ҝqQ1e{"LzNފҙwq%ě~y׼ 1hŽ%3⎞&oHwU݌~_]_EV=Hu@p#-㢇gH<+*L A˽,s>7ѹzy["LׁAicF((Vijڕf3H opŽj ͠bvmnWg|'8 0D/| pS>#HmBtsr #R'cq~v}~βr{={=v{AUJNIUt"C$|~FݧU}jC{Tc>xqvC7*\;cy7Xe0<Ͼ^)0+'Ψ?cR6jAGgk3k}pNܲ ۈff*/5}17o|c7/1:č Qݵ qwcqcBtv-DgBCܔ oB4 qcqcxkKټ%n!W0;T7e08 ü?W:Kvtar6:Ҽzφ%Y;{1hg۲ޯaoGַ> ݶ߯a:(nD׽Ju}~RϫmtdN<&}zN[U[w ącrd_̥ 5T5Ċړ"@V Ws8L 5W3W|5ŧ9K"%/R.Riw4k$.TFJ;eT2]#>:ʪ}WJcJ7L.ifYfjuzW-Y_~(b.S­}JݝL*f2_F9ˤwռށjzeO4z75{~ 4RES&u~5]JE<}:1eP3V s]RMsZƵ>@ޠ֞j@Ŝ^3ᰯ= i+@j!cUXJ]jD7W噺C__K%qw" SM)T@ /AUKWJ+]=80Ģ \i}ynޗa?ǯ' Hn )c->GT>'@Wi2\0c++Sjԟz L?y ݾ򅡏9 ?uSBRncg0kk~Ori#.< z9$xD,2et頻?j1whUkRz h%5s>,GE1^BE9dUUt܉2+Dui*1C.yNY>N-ͪg 0KSsfxb>kn-1iGlT/ҌGJq.dz/V׃) [u͟dh/B{S*'2߆gNOI'(U֏wt SC1 *l{B-G١ pLU_9*X˝-msQl<^Hl-4Tp1Js50޽TϢF%%Sǚ5 EubW2 .(dJ -Q$4V +E%L:>T<\-" YTVLEx$^ѓk< g=R -[,Jd'>Wb;*SLsֶ${īJi|{ bq+CѠ5X(PI5Gʑ3ݎ%l|# ѩfM{Xlt*9֣kи5۳V-jnLENi0NC 8goW[uǹH"KНgTnQ)5%p+]*]gz_ӬxyyVYe\S"Qg;;Զ? ۚni\=QK\ }K< 5$pkjZb̔a yb{٦dzm[eQhO7]_uCGG2+A y{ù=) A(/O\7=P]]/yԕZQ.#24դgF8}ʿE): v ߃%Sp#Fu vYPnРcYZQѩ8ptaa|KKXKs}B2{di{Y#[lEL M̮hʣZR35)onc.kpZβF54<߸E = |`h_ڃSHbO 7n8!gڏaIAp͇ <8o-5\!,Ɩb@;9pI=(lVP+oŎ5}lpqŔcAiO^=V{ vK`Lkoۃ0vĘR `%vf5^PQcQɪYyKؖ@|[C֦*:}Q(Ka_x@#mX~v#t)]y :TcK*%KMd m/uz܅ԥDG҆ag)_RRE=-^*%s7[֔=P Gcm̮&=4y=Sۺn*z;'318 ͔_#׳i>kNi3>NάjΆTsLÅ@ TfpRE &',*зH!}YS R>%hS`woZ }D>'2nE1W9;ѽ)Q>Ny琅 &z/BhFT7{EiIgJ4JK tjZ>Lzk?=e_z'O +v'ǩ+ aR +d/ӯwkkѯ柂ex3ӝ;2MZM52o4e#^&RTig<,M{b2xcN5Q ,EF+ }3 eJ:th`R7@á"&tDIċ5n!MIjGe$0;P^VusmھkIr-N0Y.sZz=N;)UKUdSqiޜv# [M`ElP4ҀcbQAcvv U#.Ԡ7D}<"OGqeę&cxt=cϮA,9y[ؖ:?xݱ1˕#_瞶V.Xƺ" Er {%rqny΂qgw޴^3D7ǖ{V ?!}P!yCZ>J h*W!QK:*QX_vT蔚hX\Od쇄2Se$eR.^1,5jaTF*BaMXek/0]Vб&\ Y3 ;u m{*xr/\,..|z𸵋xY3*;7z m+$y_weD)\#{B"I` sȩnl/<,hؙ~b W]W B)XpUxu‚B)SkzD[^^ 5^eB 2I8?N_j xJ< p%~( ȜnX6V`@f*ks˾g{qo!WK.3@#u+ԨUךcݽ;םP # @x{"^E 伥1Z "iZ'*jݵxDޘ 5V'0hJ Fp3 dhMJuѹ]9baѯ$Fn1L{.xFutyvG%4ӯ?"j>Y@1G- gd>J˘.25 CmhkᵧO!^ŲF {/ߐ DdhK,5gCf`P1WLF?y$̷ѷ`M/KYT–YΖiI+Kߐ[-J[P$7/V;Ha0<Pg)kłLu:tlx B"P3 R$xJG7Ul r<:$/!Cc[c)Ž 'J]iN^٠̮i CTGo45N|E .9osj c~IkLartx`l߀ 9wFd<0"j8i( \5~.Ϻ4GkBCF(  ~ &wqG{9mw@(1g *z( P :]p'Ov C> e݇WME/w3h~w?3|8Sr>5?3 ]^ ΀tp: aO qP:_.;f2l;SݜNu~`G0O)@(IwZW&/m'~ $u]?l\7{#6$ExkgG8 GN;voQO\qq 'Aw_)*443G !Mc{6Z$t熮zqzĺ{>bE$@L G'4.@VcfuWM෮ @}=rZ RROs\ijQjz]B K.tEB4;pćԿ M'EC%`r?4n| ԔB̏$A 9xu51פsMx {g-6B3;G"%e% 3r_Wݶ<Y҄D.Q8sܕ:^eQ)N"hّC6'`f LjIϴ~tJ",Q`< #`9ŐꀐpyFFP;H|%gHUVWQmV7' kܧ6$ՠ؛66K5Gb !!@4+6v?6b@ap "z]y4ɗy\Ԓ80 n=yha7o 9 !7hѪd5|K}0dܿ1CA`\A!eӇs0Ր ?V$Nj{rD]>uYx,& fJ =ӆWhN S~Lt kOWMta%HcǵyH>x2o.M1a9 ;8;1aE:M`h?4a"$}d 3hJiE-<F{%cYU< <RaKj'R>:D`\@aScЯY4 PBv# _u ձm-[nh`TǁIZXM:U70D"L rzV_'pBr"8x_[N #biU.hqC_4KLp- g$#WаS64.3u:xՃ úei<⋁H#+U-#]JhMzp1ݨ6? 3΃K$Gm"Ċ)N>]<L+N84۴8(2oja4tu~ta;dl.LuVҵ5WXq}Kՙïs3rX6^QLFBސ ZTOGN+TG:WZYjwJm$Gߠ^С'/3AMW8ٌ%Oǫc gzA8[ⷃ/3yD Z k V=uαZy_83ݩZ'֜`  f4g3j!ꆁhǪj1*tQt{ɑF5xl;:d1L<6o r3wZǴ!,Tp|. J$ނBmAgp$OC ?t3D+%~BG)pCfag>~jp"8T10tSN\Xӆl}퉺 R'q4e_1޿'A|taV*{&Y;`7]8?< gcxM'O#Se(OK26 5pF8=ԍKbfNPg؏.gw ^|o 1_DrfK/e):?hypC;b!|ͳBrTqW1Ffd!MzƐU{{{+Z_ɟ˥4 a=hfcv/yx_!ctTo3X 0Æ G p~@ 8Pc}r"$kw/ L\sEVJtjX* TTSi'2 Uj8fZQZsUC#س|R:qRUd*M <{XL(ıB[]G~YXB8s%(L%~o*Jp䱴2UgKӪZsR} Vfn1mmm3՞*-.4> !Z,y:))( AT̘ı.5p">Tit&SJb2[G6c]%n< ?0 Vt99 UTGW4[3x@5dIs*?&PԁFQjWEG(?Sb KZACV˲0-!Qǘh삖:-XndJTwO&yq>"gggW~6mY8MAXc?Y1d~,Ա&dATe qg=ѯj'>_Ie2..۽G͑=!݂YÏt>&B$z#cȞUv1a+xJPqiT7ZҨ枱QMU\[y(1n%*&ܘ[888"+4EB0zuKWD-~wҪׯWO7 YtV?-ؤ9w2D!;UI0Y- E#'-'+>th}bVkܕZiP.<{a'VH͢i|OmtgFe"n2TEf 6ٶBo(^Q|޲PDV ـwYa :P:(IQYNrn]PMXX)"ѣEX 2#نx}m1E~%M;Avt~+#Vy`@JcvA<"c)DZ[jDD 1Ξf <]N]Y!}ܖ0.Eڧckq->+.*pG{N6V`-:>/ZQG#\;R!?YL+a6&%ХIJbA땘,rYE>$M15Q2v]meN)]9*&d_jHVz:%%9TRlR %%,Fˢ{g,Iop e Ψ Ψ N%S@E%YP2>ZedJڇ"*R,(@%A8y!)e6l)܎hJX._ɲr}*.bHhhͪDfjR>,] ׻ep2#l+eF 6oKws[ f,0qbEaD67b+SO-h\tNM‰P%~ !n1lCFwc' ;]<w½q+>k*ҞBAw7tLH%>Ƌ m7|v>ӧg؞+Y`cu9bP"Qzc 'OB?峗/m Hl#'!i PU8b |=izĄA wi=?= A4Ʃf%z_NG *'x$흙>u<^jW8/Gl>WMWwy z6b05Adrt J N0<:FgoTL48>1LDEG(==Z% ^UhWѵ%=%ʓ_~޸5įQk{TC퟿iGC4Sb:Ǿ;dG#&F?Rwc^fGКzt]9ߓ!켨}?#c[o݀I?+/3/VK6#G}㯳" DVhBq}"a'c{djj$?W:#ښgi]4_MQשH4aC W??9 /n1?>=:VWDBiUYT|vqHPOc5dƮ%Ji4ǂYX"2x׏U5/*Hiv䉘9qg-~]߰x_xVĻfO-1cFBsغmx/"5-[S0DTVs6m"O?0)s-n<(p Ul۴y`ImGtFS~CC,Ӯkx 0r;>}KAZw LqBϜ>N!}*\gMQ2{F*zW{" ]gAlb5׌ OK)>U͓X9Xp!Fjđ z _>=nTAͲAfv5(%k>)I]2tͷGWzۢ(^g"n۞8+KN3Q-qܚG795'^aOg4Ix[lrA"j_kǒ93~,\6 3 uZ"դ$9%=qJTSRN"߳KIn9&eo0 a&,m9Fx.4OA|T *2;Gg{)5wҒawpD^9RoW8)O|z \@)i/pKp.餦9lR 5fX/yKQVuuwK&yҕ2\R$ηI}Rwo$w=Zef*Ṟ>;~?;^'_ \9 <ؓe$u>=Y~ 풚pSUI4\XMea˸tslRis_\o+ܦz ϸ4{ֽp9+r,%`QiMD.BMviq"?<,M%5-(ǂ:Is nw|ws o/+¥(,G|{zQX $\3)ކm'$Ff&vӱ8kQŶiDηM ZWFs#4TJ%N? }\i'NI;Ihǎ[Н67Lϖ(ŃfзyAv;.i4 r|ܤ=ɘ@T::xZ]ܓ(Qs줛keX$3a9p`>ؤ bWMK$7$C¤ 3[Cݪ˅LW6j<*}oLt+N*d:l/hJArϞpL6Pv; #* >(w>V+p֎^* I.)>}֟$Ƿ}[wgs hky]G,2xc[vJDS2]|~ke `ؽL:߻/STv&TDzQ!/E\ |P^>'(m;6j0[^@M%w QHSkzj?pOr 8i-ɍe@*G~=$NSg0P'T;y]H'%7W'1h, ŸYGuvlzróM;W_"Nf򎼬3dqv4  X|pO\ahC؛ }s<楐TȞrSXщf;vx -r\e=OC]sR+iˉ**eW/,=\ӣ1́BPR(L]k5d"{Hֆ%eȔ :V)9ˍtC[mܣD26nR"m$o3;fpB.7 DHKu;'w7}9v/w9* 9Qhß:*J3:vMD|~ix9GC@#}kڰ(A삇 ׎=ǑCcR6j0ӆÔS GֶQ=y"i{V!y>ʌFhuVhueFfF;f2-3h[v-p ު#PS(AQ_Tbi6*xW,OFـ%9˳pY9Yg{uW7p`k`[Ju|~}tawLٺc7u/흙`K9JrGBw oteL,ܴor#[8d[k|HGsko3S[>SgQ]_]SA"FQ:1^1EƸN cS[ QgdYFb^&8i'|4?$MUx᷊lf*(Oգr/G!0@Y.@b`0@Y. @ QLEFQejD4W+iTu#M֮izhvHӣkijtw#.hdt˳Ѭ vV@2 `S,lz .1Y $ $̩8,cjmq4`k˞P"7KB& /HD|Ǵ)7ƛHr$qz Hr#a$yz Hr3uWCcM~̽^( !qj;uɟm"i~N&$x1|LsXDŽ:j$ץ8X8ŸFZ0b)W16 t EQ2\ͷq} )в$*e䳜DY%fi(O'Il&7|s7YЌsJ`,7lIN>h?cVCcY I^JX2,˵ZζՑ u}#+|6ƯZ9g⪨ 6*xX;=hq5Yy!Չ2 a&ԑ{–IxgWgWbחz XPrJ#7bY#՜Fn^arVnPcF[) lj q_aByc}]Ė<+hB W<)zd⚦jȑB}ꄧ ;@Y}##6CcQ.+띒wJF+uj+ݎ\ѻ۴K˩|u=l,yEoʻ1r xqR/]%4pk_9<UFBdl,.gVLrg6N:3Y߂l l\™IB܁:\R.D!E'ߌO&{TkC[xH4jOϪуyVM7zBzɋ/_*gUPR^7ZL~ob=Nxk\'߬!OIج!Urܨ=Y򼡼~ˆd^|Y_<ӎ Ny3 A@NzXpk{mw zNd*׋_")꼂u#<"2,>} 8+(gNNA*^LY;yIʼnv|"}}/ڱ"ő?vB"<;b7v%"Խ~x~Z;~AxQRB;E_<"F^ {K=j{0@P\?oeUު "9v>]R]NEeJ+t9#=24[VLdJPN@pOpC%EJ.)TV𞬆UIJ&Mɲj2mi6NS$wG \- '+U=zfsY]ڪqhwJʷCnwl6,2UΊm5N>Ym%OXhpc*hE[7 eymQթ&G%ؔ?ϔUb-@> y.i.5h9yܜg׳tY%4DFu%?">H't$gPGx+'sKU˸jW$WD)k~)mx)m.3m<`E*lWo6uPV G/++'GT= k6R8!Yܺlԗ'%49J Xfҳg/_%MSʛKw'N,gH_۾~lRKEVm>o=+YI۾jDqҌ6@bf}B &e'4DLQ"&pҝ:ϓQ"E|Q?ڇYa]/3 d\͍͂PUUZyBVP~lܗ^~ZrCu>麯D?b)F RlsT8#Ŕ-gv&Y_>iT%{FσJ//LZ$'\m[yo/u} >)ք`n~@x!.t6vC2MIuO7waS.yqhrÏǷx* I#JđDICQ"%UZ"%dDQW/-d _8RK O^ӝ*Z+|(Z|x- {:Z/)1uw154MY15Vq"E*mI"ޤH!]Jĭ)9o>.yqWxFv$K Rf'J QN_.8[  W<X lsbo=%\5o1T^YhH/*%'RRCcMXJ|{$;=91kϽqfjzlĠ(ՄTk9Fm apRS_)p&<~]c>%S^h[&Iv /cu<.G*dUy<&G#c0!y^B#U19k"nG; IE?״q=學G?*V%J{1 Ŗ zoo/JQq0 ʞպj7\:\2, :!!Wm8$)Xp c>'&8֣e}n/g>hh>OSAL-5Ʉ׵搑fX*fl2(@ょ?u/U(-!/qZޠ380`ђoÐIE.P#|fihk#5^ 6 F |S5<Ӵh:>jTɟL3߲ͯkT9i׾V*r+#@%vIB"Iʣ8 CjI[&#vKyɅO/\CI$ w#3}ocC|Q?|9ȭSLQSv㱡:aa* 9ݝ6֧:ܙfFnt{AQ[UӴ\AMfF3d8Z*;szEȦ[OJ0tQ&@1E*L?ocTy{S}hۺj 7>"0rؑJVogmm85PcJ$Lks6v?6T+g4~\FG ~ n okO'o"6 vv˅X4+!8~=sIc4Hi eEyaO xMj{1B7`;ı<{ )`LO-L`. Q\kx::?[ĵ|vÀgj`6l' dZ?qApz8 Tjt.{N{h]t:<EcH>@B@; ^v?8(-: Ik[ӐdtA4VL;r4a-SqPX[@'q,G59AĻ!lվпq:LG aBXǔnÄ@E#uN rk.8NBY!GA0}tWP:A{ vEݟ /}rCv`}6>P :]p'Ov C> e݇WME/w3h~w?3|8Sr>i~<@g@RwyջA>('`><9$8""C|<@^˰!tOkFi:ov`sq#HȧfB V;+OÍ6h'~ 鞡Π'xf/`Ć@v<ǁ"A9^[in-)+0N_S9_u>.>eU]&vȽ>a0=$ kQelHR ]/h0 u:}Ċ*/(Hm3T@ N|i\ꨯdmԟo]A|q@\3zC\:w9 fx's?ÃG^V֫֨7Ek0 =TD 8 0Vj=/{{۶7?랕%%bnMGD{;/Y]G(o)QŗgIHP$q6I`0`0 5*B|xP|#`8~(& ^ki5,I1kNGlF81"@ɀ@Pңd((I8)~h148ztƏ,mo:FWG>3ͳA5<_: SaP=s!'F (ǘBMM|>YdW&!:T 4qNKct$5A = ;;>ӚObw=|rz޾ l"]80;"k ]{M 0C8f$M!XAM3]@FcD7?УȥN+$Q1a6:}s!bD:$O`SƃH$+u%KkC;]+( y}N9`(a랮}Ɨw숆wa>0nljZNՋo&cϹAP׾}҉2 tY(L]a,/:/8/Y˳ I@dBZ|ijaǮ\:^]@(4дV&Q @2mk5@f1||17@ ߓ2CMeIЄ!,`0 z9牓bgf S'<)#I $hT I DyAMM4ݳ=ziH 67<̲$<>ŧXXH@hN&HE.NsY3M&ROfh xfT;4anӮ2>np1}?01Pw<{gjB\oǸ3a̦tE!/ t7&T COmNdvuitO@ +/a"b?NJ=&n<`V|o7)у1LcADb#R]H;T$c@K Lx2&"Ҡ!$V]Л 4HLiyL0-k ugñL>&3\Rp> Jy0 ( !!Wgtᗈb#P9t*h68HI(+!ۑ-Ӕ9ޜ1\oӭ;lIU(|-P\!IDFI+i=O\y '5N[)_*7%x!f$ %{7ͥA "&4ۅ$ )9Do9J76ؼEZx<;*U7KN*oPnE ̊()`YOT`C5>v8;*(5 < '#qyZDy#[I yf{yMsC>#dD4P쨱p "3URQ"@L9 hM2t>ʂ=eTB( ~;gFV#_N7M[YSVPWn?t,xGHhŰ-8EF2U%MfvQ 1u&3F /4ԓ%eă!~|DX1⋷@̨ X 2%#%?}lەA)Yٓ'3 `af,(OJEz͂g-gogެ('̄3up+=$g%|eU.zSkN=Ř_1)%I9;7OYqjxQ 3BkU^oVzƭ a@~JR=_5 |) Tqrsvt=?`qӁהέ?Q(RP[ u%j* "IIGiCM؞4X5rDRKݴ޶FڱuLAU. S@gd8dPԷ.>09p^HQ(#ǞQ)׻ va,S2]٠4k <>iglWAclyiPo(:W_ژ; _Iq%GC>/d71.A7 2YB1zө$AWk;Ax)0Juit7]ST|W ܛvʱ"!a0ib$sӅJ+]@E2dd$BirӴTaq eHq˂!jڧ9)X=Ef$L%^AYcKɮ'H6Vn* KHbWy /3K%aNSYyMwe,o%W8r(Ѐd·5Ѩ+J_19d.G=ݥ;!NKB%,1y4_ cDs,7V+^QY竊/=luQK.NV(2,ȎTi ugve~6/tJßV8]1#< \鎩-@݃\5c1Lf x&㘚9E`-4 GBr?]CĽ*~hXMuGKg t.0  L,<@HJcQHaz4v7 atk0x_p L! s(pv:No̞xYd, mib}fݯM-1߮O &+;mt]٢:DropEIb-Hj9dIFC+ 2j#yG#`ȍ ǘ Kd і;&zE.,KQGvVَN h=?d!. @Fxld`G#(#8w.>Ws#>{CX!$Kd jE% ףЯWDd;ESqb8%!x_A j !:)IOYNz3iVo10F#Lrbd.zh4@] 딅qza"@w8O4IPg=6Pkϔ^]0EϐB|_dg_W=ȫC\Mk&Xi#s<<wN$Șwb,J1ibx~wy~m+}&M7h:D,PO{BL?AIb/L m營?gpi =8G;/$]_*X'YXUDJƩC5z<~= ӥ"WR˟$0INPCdKJ '7Yku^КA-#rɡLe@R 3Qֈ2Bp.ϥg 0E41]2!nF@+"T׍\P'E[* U%x"\FG! AmOmghpKo3A +rIiOEPyj<# gR "RUK)ȶTt⥪s;-j\y2闪}?]) `oBnޘލoչQz &4E-)ډ VX|d5* &UUS}uHeIasv<{gjwrag&Ȇ!Zk1Ԏ;NlS?;?~reOޫzE-}̓(pb҄#c}cg1AdTtCrBr7Y&[L@U]F";cDHO06Bp|& hXgENSFL}4W*́EAㄞ3+*4(K 2jrRހ "G΅}(rFAʒ`.w[Pihv?hO;3{ yy[Ep:̝]=\þGF̗ͣ/N#Uhʖ ܋`~1V6 b7m60L'3Nʏઐ#b/u,*d&c Q0z _E 8N4`IIe+es:awtJ:? RTe;Eiμ\-d (BZk,M)dzp݈Ca:V+5O7by3ŠaljTcknrU!UdҸ9`˛=n^hV!y*98˛SVͧyX%&fvlCsjhcXhѝ[ep@Y.zyGbun+&gS]rZ0KH{?zwo ܄2i~oHC1 5=}طBiIy939UA'Vw@EAS{j .!IPv[N!g*x`~bqu(VBd`Ϝ._sߟ}F\ A6]<ڻ/# Kw=i P ׺6mt$l.Zˏ21llޅUbzn0;1Ϛ| R 2><y\RnE58O(P9;nNYex4@E͉;3MTVEbq-R8ǶJ6b Q@ vAւ5~+`;7vilG4,0WPEހ.HzlTL(9 @!DuE3--I=LDV(02n^~-i"d%U<]lⰌN?!CXh L&iIt*3Mȸ4HoZkc42Wwct^#}6xvg4\EY &`噄J6{~vcضWM5A\ƶ^t>Qr8 Q)ש?Bjk'~g8Ъ(2ʪEA ghprl#vӏRE]f+Dfٷ$}/dV9՝"[x pOӭLU{+=>?kVPVl(O"H80oZE ,G&{Uꇏe#~_Ue`YW9A#dG ̭L%^]ٗ) "E nѺy@#k\)X-YJ\L 8>#cKL<ҍ0W0/9$i-=1|;vt#т gGu1Gӯ{HȢw&~#6n-CoMO={e`45Ac}#Ch(`$s*B3!{ULf?䫧#~w~}6x;}M @56oj#XvB{S,$ $E!@?ү'yW ض.1cOxx1"_ޭoլѲᰖx!kI9A.Uw)I Dx _#B FX+6,aCX@ #ǻ:gl 7NŒbfmOWG=0ows.ݭݽӭo5M^wi_]Є ͓S,~mvI#~9ꝶEG^t0v۷VS^@#8lDbviNffC Fz co (IMmπOGy) d`ՈçftL(\Јz+9LgHD^   46)/WSnv&HLsk)`hhh ؔ$bDE! K)98wO^#AB / _F):A $ D)}8, pk5(ih ˜"ʻM!3);yKԆ׫*u#|jQk}Z_Gw`m0PSqtׅT;Okc]&&馅c@K`^'t@D!-D .v0my1 f|/2/ԝ)xrȚIΌtĀ*墳h"s}…N-˾/Ѵ%gP\טA1 罛ڝ@5 Yz?5w q})[KheB$[n>\Q{IlB  I9LӌdO4SFh6LHήLAd'tIe!؆x{tzM]hMVkArXtMcک=ݙ 3tp#22u_bzɶ_[x{8Op+܁ck l>LRCCP( q $i 4Dh/ &ã8Ko푿-4֥mF"9* ctKР`L0{"^5aqJGZ4COKiIyg[Boّd/K ]΁)d/؝Bvz/ޕ9JN#Z?ŝQ듿pqPg۶ }ʧv02}7$㷳KI{OiԐ'''uwlӈ<}dG;kA_l2XΫPrE%&D n>i`$eɑ nj Wө^XcθCQQwB\o-w| ջZƭ1^q3q!)LDL 2r^&b X2CBpWZDZbhݓDz]~Ͼp}?y:ž5wGuN8Fcω7J(_%0& ֚01eOC$(χX{a˜;%+ZTh`$V;[tp0󝙍\1$#0!h߀csKZ4=#P*$ERЊx_ ; LSXɫhɳP7.'5~aX d/7 E7~,fI9QGbl56ƃ2!0sq; @C3=?4˄_T3C W? DƟAIomvj^[[ofZYkf/*[c.ڬkVmOlӻS(-T/E{O0a! WwCw{,d+JيVC/\g@3]Y4MkVX]=[%Kb%I)Zd_o^q)CXX˗ b`SqLd+ZvVEv8PDb{ZYZ]7ߏi᭄ t_fk~lsʑl+;FnI0ך' y& 0y& К7zz p)ւ,dR#q<,H2W8(e$+H+#Ti%Mky-1P|)>Ŗ<%9EOSg}$7_W'9D7`,o|spO 綳tl}I<֪p[(^<4k~6ԮѢ 9/5nd(KS!P*!5 i.{ƃO7a?B *10O<޲8\]A:/Sw^ә6a-6~}նߍkO:\۵z<0" P $-Ɏ<e)k/ ,O+Ag:VpO''T׼Y5w) 脳%g>_'*C@jǪihsTS(lj!zk~@(}eM G~+,N}ğ'eSm˔V10ڮq)wP8M;wt074:Faވ"9t!cwQ5lG.4I{SY ~}A39W2j%Rd owYgR vM]%{=81تo\#Sj3R'ui؄ jtsd7\6H=N#i9`~WHǵVVdeA*E^*(47FI9Y6,-&̠VKάE$!2ŀFx1QKmR 搒V G>Fy5H !a-6[^"PfD(^v,;e>'K}B)A߼z!|Mgw䪩 )NQPO2V`<1̱l}m..CLD𰐬+dŲR˪ kba c%;/cr\D5DktI̦L#O{}l]RNVY˖2$7[J^K]!p^N_V*լƻ5幊Id=^Y7Ԩ \e }f+)&^3,[fw񅯔`SSU#LyRĮzmqeMd9\F&L$wˍ͔AiSfV˜vlQf2323El|qiVÕS\-AI*l䎬C>¾="8ϞddR(sdU^sl-u2G~UɯU}^h,#E#1t\4w䠴LRF%H4?Ի5ǬdÜӏH=qŤzA'bF& i`\&۟5[<-MBthQ-x4n5gxwf LݲCE5s&B)3bE+G<*s|Sy+L%5V ? RqR9mB k`!R+lrk6GnҠoYPBr KJ&/g dɂZw$w KHRϾA~`%npA&DV%'է3 um%|r;4d=y(S~%y__8_ľ2_h^/֯~6a kIG kBam 8-'e}&v:'w'$G$IG(ôV/ٺ%/CY'Fz^ V.%5t<_lilHĖ}EbuT-vG!%ĥ,,_$2R29E%ZhN p68Zs@I2o \ *ESdo+E|S$wgޮ5R+%#>_WTK=WE\+>,B_F#x%ԁA'-asw$v #s(HȤ /+^%'c5웠LrמL:rr&BKo %"(뙐C{w7UJŮSJAVe SJBc%N& d$<⋿GK[/: _-Α+sI Wcԩe<{ -9\5[bΎ]EgIY3[W _pZ$4OӼli^,KM'j#i3eR䀓7''ogG}j]צĨk_jC[{Z+q5n.-EB~RTG-r>k#hPZ(PFN8dm/Ж!k9+Y4!-g'+F"ͯjvycYQ"-@q> oT  QIb,#Fr|@׼@hz A*ibq Yurn>"t>ՠ3N6 :3\g-7ʜh67ln$yfscGKU nln|r7C05l-v9 y-ҹ=^NjuDq1(u=k_&e־+/o `,DYԒ-ie/N9qLKvR9`'<5e34ћ]&Yj4} =WHՅ/WImNjjjk6BmߪڀՆWU f>R{B/'*}:c8ǕP.M{>Tw*$rOR_WYnp>睯q0T/ncq~6+͝.Y:7f6 B[ԮA,AT3liH뫾-2τNK.3۾9#QdΘ0U!=P'{_eg*\Hbljhc?Tx6FxAQ~ {B 1cKASڰVH0`8Po?9LW 2 5'`\_Z>9SbA9&%kIC,{ B X"` Z%rɞdO.WG)J~]h E^i9!8ӕby[ʅ;yK%k@j+oR'|.<} 79d\lQ&@*6|ިpr4p#L=K3/;G?~wӀ'7,Q#dX*1htOz3;$W˲o \֭%1p)R'|9w*8ur"3yH0,TG{?U,6ILSVAi>Y2i*apr,R $0*aLPEgοVSLE@T%gT7UrF7:$T]_EPE<Hgbn H<7pv <s0ΞOd/L6=Ϊ ?٩R"2rUřW0E[Ӗw;է_=cCօa쩝2Ph>XGr N3uՃr2OH&"<ۆ(\q+"Nϋ{FP64'uV_WZm@~A w%B /^]!^bu9gX6;h2jVϛ'7x |@9%URuc$eС+aUDT0q10"u|i@ .q6M9ẖ={7ȵM4<ц6TKZ}:ҹ$Yݳ;z;Ӈ⣣>A4mN]@8CF6PzċԎu%fNe[\,l?2L6(=>s>OtnT:=D$"^:+b5Olca:k[C(2A|cHk mAH@-{>N|jb^[C{ FJ{E #qh6^{\h 1;3Ȅz76{5;S׶4~vvai}:=̀Sw6"XWK0N_H n-LrYB6&5Cq_uL6Z^\`Ht=?뵯{uoohi=Yt)xZ(Ӂ ם>^s^ (Vi0LJAЌvlȞ=:ZvKۆvtNU󖽹ھ30`6m a"eL=BSs`L]a`zLk8F2<; ,xCpǀ?4``kP>ꮥ߻͐W4;!'8{zhTn]\_\v;fNǝnc ĩ9Ef!P\k h@SCq&31Z.heTo@YjǀF cʷeDAM4@q:d`i<`( gwozc#}ȺT8=`Q|<)p,34݁e>P06=Rxd@.š"z7^njߴk0+u}ܽkB_KDC G N4ߝ+hA\\vUioW7o >Zv9E>J'wqsyq~5uRBPa}56Mztqڅ"//g9$ݳ&e{utڧA.4/ڗLH"::B:֑1$Р*9랝;dh'3v{tsھ 4eKPaE]ar;} Cy9πՎ#B8 |J O({}}u _ЯnNK'矴+"N_6@tEDtyoGvP:|8~蜁O9H_v]8'4Y%@a/%HS#lDFH}J\ ?.@c{iA<:x5OMjGHdzw1Wc6)p,fP( k?C]25Ck5[{-vչL8WDqS5 'P: #I6H&U6pj"=hұq@Y' -J1Ot w<7`kx8\t ԆQu@xR4 56]/F&(Ot/@35ȿ>HB;O7IRU ""9"%? G2\Џ, ),L"KwIS iH=zNd179nnD@T:G@ׅe.y s3c=ŦE}W=@ S0̀V7%` ($ i " `rg7=X* _`h2w-Fe !^_L})~V5Ͳwn{lnj2Ffʧl1n=*J S qd1!WFH2 V7&#cf3!`9bT5$5Yc2&A?ut9smj)8$Iy>q #hڽ[FVH[Ӣp!}hLFfCcczm." ki\h#CaOW7^&JQπ -SMdGkaݺ^THK[ڴ. )+B|:Np@rL#⒏Cc`lvg4gqcȲ)xr[vE7wK[l:='JVvwy |x[ю${s*eC.о#C`7 yh kзu.凖E VJ8:S½޷~ˏ!pcu\o cerd#3O%k&0ݢ 7h|vsg⤓Jo4tAFQ -?C$2o3߄ӡv(R)/|*}m3F'qw C|ꞝ_rO.%>ňw@/PC×F_zQG8@]UQէ^|Θx7ƊճvM6UyU  Yp/-ca;Zv_jfϤ% *6hG5w;0ZL}_uoEXS6)AVQS)s fi#\^O3`>eppV9wF@P0 I.M6(xg*eЎ @6_!4)cxȾ P54w= ͉+MGK)2U4D Z=C7cipP1ƚWdPX,(k,}= APZ%,O)P$Q>DD0gk{l 6q=th&V;hiob8F! + d_ں3T*rn}!r>OOȝErRrT>NbT֎iś/CHj~ Ī id/RJ1lR~@+ԓϩ'Àǎ|pb=(H ʵ4/ Z'T>}TDW-޼H d& pEq= 1n48ૅ-nlClUceP5Coq^pb:Bgܸ5?Ы VJņˀl_ zeUzE|_YܖT$|o/G90ykxX4?0Hv\8fgҞ3ɟ8<c]gPs%A~\o,!q 8#|TR'$wG)_K=ܵj! /Qէzy="^^pYyDkK+έvb(PОem]gK%,h%:T7='X$)Bqb?T*[~POV~?+?`?T*LWCVS}CrzO*?!)'}+!nѿiTiӿiTiпUD+ЍL~ߧ+g?Tп*DPb?+UE8*%O08|XbXVsaßrE?իUUan)AEٍ.qHMt^,Gfcwiw;m/Rr(zR:0Z>>׵(7O;F(5*-?b3ݳݩ瘀he[6A$҂l)|3n _5VScgImAB3Ǿu ;!xfȞWOxN'ݜf a]Hs;&Nrho< z@!uEň(Qr\ AN2x (8[9!w%c=N;c< L7_ί;o.DP8as:3vCuzD0' <SڈY|<:2'W97}K}KԜ|qNdO_~sE͎ ۍWpuqgZn=OgNcK- |fIǎL>{zx!^1FCf"i񤷝O TO7QOH=_pnZK GC˹Bm\z2N{"]~^`˙׷xpGQ8sfi9מD^ C7@{vv3OaAAX4 #%Ϝ=s.bii(r9`FZB<J}K) $fFztL|٣;YPR ]*9[壱Cd+ȘHuPt=ݔWݿ!YS Uڎf(p#cW4OAy%>?`υ)F!kK[>?=?|>?|ibxBp5y&"FoT>Ʌ}Nsc]ץ7Eѣ8\oUM<};1&٣V#8ǧd51/~󱃛bI 7YF(c~{l0.5i>b$}@ 6dRscQLN? {vg7sTy1']d>T[X n Ն1,uRu<=q[s%Vx:"o0" ƨi۽6mu@S%_IX3&U:eP1&xfhtmrx'q95 W0׽N{{hu̼͐ONrZ5E`>QY%!+TS㇐gAZ'v~ Kd4  5j&%߯IgCDP> 񪉎sIaID0WsS))UZ,D闂t\  7;Nv:D-(P+̤^wP[n*SBX 0=*\ TGj=c;mᇓ]in`['?d }*Hz,H E_1??^%EE>bbJE@ |6oLmg˵xw1}8XHZ@+mu˷fx:Ht~C:I(|3Eґ:dD򕵯\eu:ⴁ+w_sX3CCCӟ3u= /-p^,쪁4t Ħ>E!Ɔ5C!Ͻ_ߑ/d$dx>=ݜ^pکkQO?iĸ!Z=>pH>(opF08FiV#C=rPGf~I7W01JPC(n~7ߵUA⦞q һ1oQy 9޽9ƍha߳q>-VHH޷Z=I(]riI(xp"zrFcz,,>|S`̼ )G3,H5 \Kc%i[{FcT:7ߡ9n}.#B ?&e)5fQ2S[NGhX(UxRR>chŠ~d!ww#fЁJ'i*~ȣؼ1ܱG#tnNbwԕkێo0z4ʩF~`wŸwxEl^1>}%9&an˿¤yVn@N̸0Li ˄=[H2ɶLKCAvo(C` 3o,]$Yɬ%`{Ɔ%)kTX!.j0 Yr0OqX0xB"umMِ$/oS?E%Yc#[S w?y|-!񧎨 @(/ӥG[G?ae0槲.uEw'OG_;n ݄I4msJH->޽ƷY~H%[~6[^}[Fh4/y²0ZT7UoO7b=46^^n,ޏ6 /#yYkIHNv RS#3^Ov!mWsgImXe F:Ԛ* V[u`:2[S]28y$lnG B"aze-Q Y23,װ?9/#- ZÑXeʚ2"&9ζT?(/QU$uLɭQנR0;)f1g_a.?s9dl`Ҩ111-Ӯn\2T~ċKF1@j7( 7h^WɲӔ |a9s)WF o*`蜜4 !d.H#t9F8 yƢRѫwE 4b_ҼqTesYDh*}d[,uDWJjVgr#^KN-c*xiQŋ/Ա垈֖Iٸ҈"2?W)?tH+O@D@4sq#aZ"DKK(AO.SG9iU#N<*JTI硔&eR Ѓ4!?aWYTŃ>!Ƣ,kCn';Tn򊝤vZ((}"|6NӔ1䱍؜>:&KfiX|))&zɜ?%- c7YܖmlNhҹƁ}`+˨YN(ф]^Y{5ELD1f52m\Rx5_dG&U 8[(79L"nĢX!-n WUR}R7#j*JL$LJZB%ILAz*VWhidE&b -㡖yհ64~;l{mO>+[0q7GJ \'Sr7cCшF* åMsf%,]՝oT % [bcYl*uO=ԛb 娳pPb?Jة@1o |7VpҒ0$J55ִ08.<`m8Q5&b6Ҽx1)Xt4C3a#V WlN,<S|pUo.˹꡸]S}ߘgGQn&7 5'Ɉ[1Tvi vs'yVq gC,] >]?KMSUf͝_by<x2r\9tc"6Oay%2w}* uҚ)'&NⵗtM_ I$`f^%!%T A4#KR'r^)FXzDQKR1zf~ Th4uK鬆Luz|Y94H4Y bf(f @8P/H=n?^YC tzz:"٣i?B5[ zH#Lqn-ҥZZA\TQYUόUyڜ><=LRyZژ](q361caY@ѳ5v|ɖ(7*踘gݖ,Hτ[ϼŘ5^9OCveqy^XyI/+e|m{8YBV%ioT;cƶȋMda`,"4 +MJI5^N}G@F/m 4,u0"ne+ sE` !Oɽ&#s("0DTU?z .K=nN롷fEmN'pB}T@3k*aӉ͑NJ'7h9Q~)U%KmHX}C8e~e\UB9`Q \`J f"pJU&ے 18`E3 Q!D( ݏœ$v>-.V1]E B=*GQFu1>AOl^5OV%. \@Y'-5ؚ|cjn\]$P5Ƙj$9hY%anJweYC~uZUgX$fH1aieR[ؙ%9vBрow,xGҙ A== bL<(Ցw>f&F9$ ms|9S}sn>mmT)e_?A޹GmC70%Җ]\PQ\LoH aS/ChIzg+ICpcw윾̯a/9-SS/X#Za1es_~aC/j/RڼܒW kc/3@t™ebebL2mwR>mbܨKe`ϳBWs񋆃}kSӄpZ:(ϰ7W-ȷtl^t`XhAn%5F:j|7B,ךBdÜv#=Hl$`,3N'Ȟ)(P[ح_z>qLR7ڭ.]_U#A,3N)DH{H_Ξ2 <ZDe DjKGeϵXxƝ!e@#|δPwWPG»wu7D]SۨQwbH]H"~_F݌oHͤ1x|&>z`u둻Z5sJ_8%`BQ6]NJ%lu@s6w|3<\*. |Fl[3Qh7#y{'Ѯq2b>L\ l7X@.j"XZ [.O7 :s%&_, |?\ \>dg B4 58s}#&{pvR<8侱 ]۟>鷘sٜR[*ٶ>e;gnc1EPx#\dZ!$ ie%FZ8^V(zZ!VBL+ KVHVA c]in+PHI'- wL+BZwK+p֚[cy m¦#O+!9Lr{~0"AKoH aELRd\tXo#ԽKR?BRePh`CJt@20$D=>8H-O$mMI}.O4m]I}g]ge&QHU]B?Y0|&B'0f5g.WN ݻ@ߨIo'a"3& U,\?a˽>XKt˜d{#a̪\| cC?܄1N/l.9ǃ㱇0&tƬіIswNz cF0k$)rc0F70Fgfㅏ522`Dž co4YtHKy;XƮ%ZH^,((D7"bY/JBW.)vKR-}?9=1tSׇoe;xz.|{5LcX<~\?|& -9HC/FcTǰ@\{2c tonwX"֕y{$2O_rbf@ة&B8`7*@$SaD2*{9AT)) |DΛ1ƈV}kἺ~1 "0 :A<:@r}xZn86{QYB 匂K7?]-l@E0 u5xRb%WklN_]{@ͱ?==s"BG܎ rnP@ n2qĠ`hp2IT^ifyd9\8 YTS{ZPK=({![YOm4SIoWd%`(lcĒRIk@Kw|~(lxW>sc~\e1#51X6'֯p@F/CY gtd`?%R= r2;H/ڪ<s(ƽ̘CmAo)'G'Ŧc\.ӛϿ /-Г۽SbZFjJPM-]e@!:-:وZĸr1#]B= %oV9WإZT=^U.?.\;XJñXT*E[A %loZ FIh1pdžP?@slHm:aJ5mေC<`-a.7>06ZL #ȁW 8A6HnR^HB>sY1;톶(ԵOQ9Ƹxg)ԗ0;Hmޘsg ,aN] ߌ?v>^Ƿ@:nl@X~[㱍{c«`Rb\T¶`B! ;§3^8%.ʮܙpL6[ĺthπH0Ȼ:m!Wnv;@=%`mMp:5[5( =q昚ʰ="Q˭( sYE{. M_LFhg#x[A 7U&ico63 68?aօ SNDSke%(0^ ƧX-dS`xխAqf[¢o9#T˱?7ӱ/[NVJ\<+a?b\Dh%M M^\o9̌ɆWn84YϗW9,W3 d%`i"ɦH>o >Z0>{ QOQ !0?e9Dw#7A,9Bthl}MoA&  <J?p#)%ž_|CDo'k- I(4?4B2wIlMSRXԭRg'1x9qr#{hA-ZØxQ*{\Tm4a_T"T&ݯe>RmmJn-*niǩ.:?ݚY_O #$Ɠ|c螲0[@\_UjL+ru擱I0ti0yuGY^XOȸPۇbjE3:5E%>YoL!k6`sz$b3٨1f?d$VF3؇$wb‰S/lty Ȍ'gn/4FmTţ nf5e'?JB(EbBa]ap`AF_{3hʔ'VBpPjOXqҒ=y}n5 EɺE%1&>i֢^`ڌ\ʸp'@P3 :2*a9Y5јBCRUShgpAW3enĆ-<&}2" z3Rz :Dz=cncEOSt9{5u o#!GoYf#IŎ0t,n{*uW“'$?_!x@ {l2QMN8HM΃=;\Xiv`{_~v~z"iR,Y D5 , Y)xY|}5V ^V+0[sNJ\?qn0' 70/{Xifޣ0G$É҈?* >M)5;6O:ſY칼K  @V~4*{ƋFg{8WLH&Vb%WJ Ci " Lڟ9ɶ\{]G;rn>L[7 Lrˆ)-L(ɪջ*t%@iJ-!X͆]FP ~i*k FmH@|cjCxwq Ҙyp1鐤1`P<|8 ӕ;`1WԧW'ia.{:nXcCQgY x=Ffq$cӨt!5L (2㰫Í3AVkqUz<ÈyFuy>#)|Ԓ=\tXٸǘ#: z`$``Y7/!H(/)FAD߫ [(ߌBFh< cºQ}'Fb) Ԯ: f&ɵ3#3@n8yZ MIm"E3 ڛ5&QOJOۙKlmQ1ѝ0gt]Z2bq<0`($Ok 0<3acxUM !O/<bY!YJs"[,1_:dCu'֕;Ӆ$~$i"y\4bl`c%2}p?&' I*r(I6le #ֈ'_}:*7fG9"kU(6r͝ђi5˯q I(I:w K4nYI n>#6fTjx |8X>-lҙ^2H1`>U(T3EL LеEQ q;hX^=ZA'pH05 h|t1a0sg}Ώl{e kN Jov5t-w'x%#ZufhJQOclES+Ȉ7Pp.e7 jp!4&VU"ֹvY Z)ddh+a ^?ZTdQb8`m0}qG yC8)CfJ_Xq&Ǜ+,􈞗"KA Sb^ Ea@\juI c1jJ9C%35Zb+fy~&-rsݸ;q#Xr(*ujݜuJRqt}*KAR5|r.D +`U,o,1d7B9?[$ g mNYT5XxO)ݰ$R 凌KuD̒K= :NJO^ !s3 cbxC]ݖmܼ3 !j2HU)FWQ뛽S(cZ g\خ|#AE8.;1Za6pƺ:(CEMX@M0ރ"jb ~4/d! "/N`(:ɗB 8 @N.7PrgJօ_ԶڟKB@q&ęn +7w9;K+gXx6^+!=b}c}"scܲ-t.غK-C XhhA%wt;gf_~;qoZAccE 1,qp/`@SC݌cgᴜ7wGk?fX>6˩~+`ŤyFMBD]>E0``,tRNhsAo7b0o; џ37{w+lSlNj{ޞ6xW#\L(\:sG, = B~q`. e~kfQk0itqfCi~h`զhS-YуW5f^uzٯjF,8no]ZgJyk05FPQMQ ;4cԛY Epڬ9S}\"Z0zA/J7} }y]szH"M QuΈ p"#5 8o78uPam# 813cx/,2[ `u@[*!,r&DD9, #tNwum$V|c>w}x_S^7G;80I#GwT;f+9G䢘>bK<2n݅Pa*ZhV+]Z m fm*(IG*Ye8k`em4"2qHqXz4휙P96PcbGȯ[FoBT'KBYs1l]'z7{nـO{jS)<Զ, x@ם~lT{Nλ +z8#k) v$3O:^Zs ]Т# Ag?73s;s?N*Dd-I "ǿ|rk-D7 g3|0zjHBGiKhz˛ahQ9jӘؓ X ]5<&3]ϗ[msWss#'vz6?@-x_oj⨨B׋\o񃳋Swh_,>5)mHƦjWPh1IP'sٝK76 S]rsE+ߋ ̰`RdW<:gNzR˚FR~Zh5}{;/F x:,~m4D G]MkI+mԎoNH%W9k{n+.iwnu?=2_պ]MGiIX:IY3=y֭>HC85@oHJ@v;oF]kEB)Df4`jL6{Mmb@Zc:zv{cu`]w;i,D︳li׵ֻڇCIHWoTOӆVfM_z5`ۘ]4ocugu  UubۨRۍ6 ūfxY&obS(J悱d4y?SEѝJI)~,̃$sW!6 if|["J,SЁЎX,:N24V7-iP}xcn>`M[Lm0h~M'ojl7~xRo>L)'ڦWs<8?zT l}+/.Bf%B1vmx =8;[N>ǯ@0D;mu_pS@ӏ1zd꙾m{#k 1)DžVU Ljmtv6_?OM3™chшVV5mb VBV/I+"7mf&L.T|( *^ #?> (m~wq \FPvI( vٌ`Yu0\( J<&bAyrjVeNf\|7\iV=~fq 22++f끂N%s`#{M%sh-N&;a"^LCb?$C-Y+RzO*i#l>:RiN?$EJ3 ɓ7wEHbgv^g.|!sa )'UB%އo (& xOUUcge>?U`V`3,7Pj-d4iex.CV>*9>X0\-JCwIXJ>J}^v?,%^Vsewqr,wIw㰟}w?\>n9p2pzY9ǁ/nRq0`~?c=ϰ Ē,Z,\+*J"*"*6\UQU5vNdRHhRZ"fYϲʑyFHLy Ȅ5NػG4t'n ItBăK1 ^4+oY%a1h>=^ n< 9AIZgsfSs(up(Y+t>OH#F8Qj ѥ$C2}f=.yBgck32i1}B4*1"p#7k2j9fҿ;Nt#0Fq2Y ##R\.WP~*Ede4\ Q1r%-i\ao"̟J7B:ߑU5jښkYj,r!Mj#N!#w%VrŸn=L ehh0aEcH:GCBn"OWG,(pi商4В9}~ œr2ׅE*URLPT]ͥ :0 n :2ʠ3 :4ҠSn :6ڨss&蠫;NZ 5unU*90Usi,eLA74"bME/+Or!'q ԱdUT~hq؋[7yYgIxJ/sL˜Z42g)͟ sJS%snҬȜ429x=O388eOY32O3y-N2",Jv^!>ݓQTN^+%A "ZT!uyIbbQ!B; Nbl^  XQ!KIl+\3eA" c_JXr#^xIIOj4~ v; KQ,)QN)׏>Z%Z9ue3fM+.ִ.+Gc@"Lx'U$@tM.T`W-H :̚.mŽ<$5_/ɫJ^hMz;R"6Gk6uga,WWDiS!`ѭ$A 2'ȧ AV 2Cr/wvJ^ sr//-sw|?oscܳg?9^^A9,wǟ&%%\`(ȹT.4ޏYlS-AT[Yl䋀]OR%`ئJ%fY$T,ATi4LH*gKAqUO(Ok')VCB|5NR=->{Е$⿗D|kw?q|$FW~/gecvO\ZRԨjkTSjhk$bvUL^J?X`mc? 琉5Rjh i;wYa )=j9P)틅EÇrpL*<$wؚ?Ù^ҹe7[ﴏɽ"m[+JuxVph<ֻ"Y" <Ǧ#2E#L'9;<8X&.T4>uL*IrtZ T=ne(Q|Z^EXNVF.buyw@;ˣswGqo޻@0{Q (.ϋ{wŽxq޿@0SqT_˯.wX]WX]; }<{w@qo_FF?[~ae 4!VbAkVMװlhnPg[sJTba(yUVGcKyfT}h"Ԝ\\:m"rY;,rK|"Gx4WE.=Dn95RsY_[Uȭs4V}$ri",S#5Enb9 5RsIrigLU-Fj.ܲkrhE#{"+"CuV^W_3 yZM)9%ugnxJ+r@E=$Tb`yO Iݦ1'39{Aw}r,ȅ8~i)P}b6Z&Wj+#uih8V7@V\H~ԦE\!5ٻ\vYaZ@xDhrnMݚ[JYms&Viz&+4oyܽ[0PenmA UBUxz7CջPuލPn,ݠmt ]ĨƏi{v1mPl71>TlLn9k)ԾCW;K-L;\ ؅Xi\ҡFBL=bVm*'.*IC^ 4)w^5E1} CiqhHxa| TacQ#Vܵˌ.xcWP.mͲ8d(N(d\d7 ~NLH/#,<̯iږbB~jxo <^nPAY1( W$4KD; ~C,pf=vؙ.nPr aFwńYyFotxfubЮiso8wN5zDŵOb;0؞~>u^O ⿰#gl="2 UA!Io~iM?Š?p= Vb4wq6x ,i@T1»st3!͌RoT;~)EZF]7(i5އyLpno `ն 7h)^0&mtcfY?QK( +u@{ TB٩;LoWfs0:kJo6͹gr9nKJ/-Ҝ[x 5l4vǍ.,SujTmik6T5F{~N1(x<{x3Yلl4c/R |j-0U+Y1hWo/r344-7T,J%pehs>CYQ WϿw=oxTV%*/|M_-d1p[Ր^H:ziNa"f*%9bsC3M}Q(aNc@ FraFaIl`~ҀgX G-t3ݖ˅54s/RqD59SM.JiDv ^ ㏨ \H4KO`* K`ufΜvފXZOlAB4N }clCa),Exܺr fR+Yy D@0iPX0s?Z`볻Α>rT 8*Լ77a:+<Ftd'bʻp7 fseo0[6kmSǍ935Asl0 [>0>rQLp vܰk,1'x}L!,k LĀSwi6^C@9Pnp(I ymBtL\*JnhBf|CV'g:F'Ar[EIO@Pl6*/|BpCy>q ө=}B1KCRB|$ ڦ[z[[#D$?##00ں-(`.$&alGyxFȖ56Qӻ':󒺗(qۨд&]Vx{l7z8t-Xf *WT2Œa 1b` udm2 KQ[<U8t*_jYś6k-³&]OH(j*S7n +g]_xs*+BƩ.EWަ@4ޤv;0n B,(ELcE c\,ta`e_RbAG*U훹=i]P*ӫ̟WfVE~lo:ՁMɾ2y2pRxk_"8u?ZW3 Q WZV3uF=H|@JynBtH23^ -l?IXH(syZ9nP*sq񵉣&W#@tY뿮sgϋV SMXW CXe*T7 ] u]dy'tߠtշiHO7[CeXP%6 t!yC&N5*BHEk7~SML~A (v9|KIR)عvz+BWQ\)=LW~^k*$5O7$ iɃc+@ i}r/ .6n աyR;m>H/!=5sFrv3Zx4Oq-x`7z?;gOx9p>!އ^)#6E@1% wޡ6YZ|>q) i1HhǷLxû\^F*9/bJ5 z ۛ[`ZAقo(ż"Ν%fMW .c{h_mZl~fe'֯Mns3PxQ Krû yݘmq|f3XL6 {>Hr0b֭C܁u}€1E\[bp_7v9 s0v`m yG3f1XwfcӰ'8M{r<<#}l٨[p)N9/t'\H'{Vo%]lJIX۰pOO&l8 U2EuE* ȋ@˄0XP&Rֹ.Pn5a8swGu\ѳOMm19xz1P sfOͷ^UAJB%/?np\HW*I?6z?-%zrzg:UuN{-z(H͂wY?thSn#Zix?(YR lj $\n/PZ^ REZ/c9)YE#BIKY@`c:"vpq.?nsР@K n 46I~=\xNk|5)γNa0O]\MtMtNNz,o0\nɅ&=3ŭ#"Kd〹<G Q80Ř.DCb5cЍ=g1Jx\C-!XK{-Tlen4i+f؁ vwAo=92aj@RYe2US*Z 8D4lnVŤfS@0%Fn˫sC|yy *8{_u!NWf`XbP}qFaxUdNz{~l]bC1~m"6~y@'CO5>1 Q?"Ύgv긖=:g_ 1v j-uΊ#mR-O^YmSŞNZhdsɚvY v< e %?nֳQhOmv`h&D߽ m 1qݴ9ۦ;C U 8$,K`5ԣm\kI]kI:,:_\[!v;o9?({du^+rJ/ڶ~͆dk~y{lS }3.o?cЋbqqz!r aS }6u`ɠ9w>nt[Pk!=LI:yȠDyN QY7u*lWdD49o}H~ę{9m0R`t Jߝݧx [O\ @K=E?uAhwowC%з|B>rdFL銦`-JP P샾*2nqea>0ѪJkU yZqٜDY! gy$Z7*te{s7Mz:d;2$տOy)VUfA/AQIj㼭6@<<-`yy Rg ya|x ƀ.ZKd8KСpغuFQ wʋ aѹ V2'y¢1u K/5ۉ.={Ӭ+\far<MU(*轥M*Jbޟev](ȧe}5sݗs}a<(qY\D[t`P8]V̝YU/jwԼq a$1jkR(vNe1Ȍ:˱8@[<yHʖk=E L6 ±TyQV Lc`8f)݈}T[5 [!9$\R<"(% #!ġ)V(~0J(|HZׯ74rKg lkl_c;(;՛yz].\ 3N_C3ks%"KO&hHYh}ep$6!)K (шg9lUO;bxm(2Xӏ !&ϔ^G`UuG]' 'ӖnYkT{{bb׏E>M> 3\]Lz,&4~콸6ɆjĖ ]qP>Fc1Q(ij(9 ޷+ WHn/1rl _OO2n2M2LbkzyOoӓSRϓ2߂Bې r9 ɛ>i;2uA,(/I,LFw^NfkLDZV+˶AH@ zP@ƟkpUTĽ@}4u;yyz(bfp0"ˁwgGk+[vCih5b&%ofoz˲mpEJ)77777x) _/_/_Xm7JלRT239v;&ۓto87Ot+8d-u7s6Z#Ŀ*׍‹e՘o& 49i²XiV<C1;;<98=z wOWf1Wm LiKV,]prX;Fr'#h8/qptdNbVm&tr mkGֵ5ga6CXRYau<0n'H{{!RI!UY% HYRżPOD5+ҚҶvF4o+£[RYn"Y6~ykd^0JOLQӗg<,]/:CzɁDuoo7ԑ_G ψ6RRrCDcs1WCp F= KmϙqͫBT;gޤ qxAN[/'h NqJhhA ѱmi-H>B}4ub$Vr;LO95- e:mK UrrSe"༞u 2D-^b,S! M$ȋ?@tk9@ZɐgE?}8Y^BIG,vX"yQ40 ,{8tH<>Ni lE8J!9P %")3|RtƜJ(Rxb >{($D 6NЏM ~U|`S-I'⺬%iψTqj꿆gّrewp[ 1zLJ'q]w !kZn?Of6''p>yƗ!."r# /4HfAlQݣC-BMbg?l#N"9CY4z ĆPy/+c q,bz\_1KhoXአ;H-f5jHA#<7Qb2RydDp.p/k2B$-tL K[w>w}ok}fX1 /#zlX, T߾^ór<3pLAu$c^wɦ#hPL),'Y 3,B;=|$anTO  )f'lv3ygQdR!\EQ| Ub.Xwo,?b@ 1m{[ ?bDMXڣM]lɅbS\zOI=QS7X?x6>N y.D ԾIwpJNH ?}fҹSkW.vS0+7ăO4 Mrƚ8j8odFF4. 唸pL-w>,KKbpU! L??7Ī~l:>gPy =va= 4[S8 Zm"O'L#'kr`wQݷbq :V<>{!ѺQwMLM@IȦzK$-\l ΊC8|i4[NG.fa|:]x)nI[ (;eFtґ˫+Ga%Oѕ;!YrPTߟF1P N4?nag1|#ȋOub#$Ӡ3D:K*FldŽ$ȋf!OX4{6kpoG$Y\\,Gi`T%J_3AD&?:x}s H1O'Ckmrg޻nh`JeRG@0N~ހ 0ű]*5rGAiw7Ҁ`Tw QG<'Pd1ɟgOnp]B`a^W6+/1̪4'4 R6R:>仪3[:!(,RBg LwكHҍ$iɯ'rᙜqq*sē}p}\3ȞN.HLB2<=~Vj(*qJG/ᰇ$Uz|뫣Z1$O %W@͞Xe+'1R{D3tUv Odf.J<,Yw^y/xI-bvo;#nVF VPKcib%h,nzbxᤘl-sf8 N8X`w;x֤)1O%{;,ه<,v8eЅ&sq t?~`&%q#!wSo[hDBnHY=jC)‘,n-LG G?he ׬-iV)kU}JW!04ipZ ᝄ%?^+ViHeRܘY%ZktU;+uC/<*~ȴM׫8\L dY*umz{C@]+A&q eEtr=# .TUaYN9ƲC_DO!]I & 0G!0{n`uQ V%P,=qFafWvm8Kμi8 zFnYxC0/$yKaG56 nA(c,p4R9wv<vRH%$qp776.7|!|QڎP|᚝?Y5޻SGP–`ԭA65C#E¢v Q)P!DW5Џ8B|;Aꂁqӧ]8."}"6nXO48d&Acu᜺܏?ۭ:fu=$pIbaלQԆ0lC\5\%q >9>?tYcvz9AH|.!ozk[}b&rg&>?8j%HAgE@'l@ށT:}J5~ݣU{%tZh( YbD_.+N4BeY#8<_\b[X[چ*4HĒ}ț|Y;˄d5wuѥ]&,F!b.Ib#HjD*)JwFyކ~pngx .:״8;#]?x{vxxd{;ULoVjh 4b2VeRnV59A#JD>$e/xetKawmoz &͇ ޑj2 $<*X{mlO*.!j7g6G0Ny 0#`6'R?S\|< wzG 0Z\ ' -Kj&2@a:cWtz_.7Žҍ9}v6T$ ;۸҃7IvmbA;dI6J>5]@#$q U$Jֳ7e :U޶v 4/[WBJ|Wj%pBr+_`hG`h %C}|UBeu￑9\J4gzKO*"(Lh(٘+9<_re駮 9Aո C%ܥ胣]W⛒1ɭZJ4zZ`.QdFXwsR\J)%MLqZPSxZNGw $\ e,U@ƪ! ˿xy]Z3 1K MRM2Iv[斗"1dQZ#13H%0')SiAM(]GS>7 >_30 _\KK.R3 A+r Nߞw3z !XG?j(v`p'v s;4T~gM-yg'@kТina|;Pp*H]y9! oh^ݕ& V$b&~JlX3C欄lnE1&ylTj=@5F'k.ahϚ13Qulv;|,j| ]lOI41^3)(g7Ն2Ѓ#tK| NU5#\Zh3]\OIR+Fώ]pd;ē &HHM.1erthE1y:!om0JxH,#7uv2ܱ!5H( ;ҝ6É bsӠc BꂨH`]LHk sc00o@&XeLX&@= }s]zG2 g}^P/k]!zDpa]10ޛldXFf)>vqJS]ޖtr'#$<*ޞ 8E 79)KF,8{v`*IX!8DIT.("plL]²A)YSje5ٵu5("KF{ZŎ4#TX_q}}í5:󤏏ߖk宀!ٓ3`\QT].n-ʪPh0ECP敷so4riRNs6E@[X<Ad7Ra42׼Sh8%qWʭ5YKqZ3O{]kɵ@Ud4-Ɓ?CH~v]AMZ/<at4-.0SʉcO͑:>RcNHfHϹK4 bu1Z!0,XXM?L&^vNEj3z~gTUۚ36f A)@ޢ»ZLJT ZoI =Xz0z!>AK}@/bHC_)(;5tK7cYPYK5+V3-K!+Gx۹КHIQV5h=aT4ߠ[Ha42ҫ^z_LsOt %[9"G E'Y  Ȃ#&m:qn6I.2OL;tҏ)rJAMfpt1 u1 m -EF&nXx[<7YU[,4&io8JW-䁚 }&7j턣}%8A<@i2>i}CPB)dzY鈻P}M̨ɞ|9s)r=g7LĹX!<$S$6D%`a"sG v/^ǃ<x#-D }9>%''k|?‹v< /ʟ#J QVI_| 1[n͓I'a8~P_{x 唢 W%:d@jiLğ$>\y8`#ܳjev`#C@F}o?? n^s:lbS!o _;7?2)Pp͚RP |*p8sb%$%1h2!Qnc\دQIXđ#4bP<h4;7 s*ԇF΄"Xn (L.P[8nҝB c:B'#b 0FHFVD맺C"t \ N~s +j 6fު$c4qRh\ϝ'(2rq!>:b "TH3P\Iuˀ"bҿ$#P T6$A Lk? 3%6B h̓x_!wG!-0ĤJbz#6/ dZ Eh`tƁ`v /=Ԟ,BӸ'08: @>'HSc&~^2/fd"ޠ.TA# ]̳VD1Ѐr#l1/l14Ƙ=w{nӀ|~T0$0$']33C!zf/A.'hQp#wHL!U.@9ri@vt N^Ec&#dEDIà-"oVj|V:Yd0ډ8{6iɜdzhfrqdѺ"z\Z)L8l 4@7-FlvGwϢԿpSIBlE\$٘= xn2y4i8w6)VE"J8)0&FlȏWlf,ᷬ17XUo* Sl aR܏.TbmrWʔ gW/ %O.)t5ٓSk4P?Xd`= dS? np4&m;OrX~I%@`EAAܫ4` ٬euL< `Yꘅ-~TFbkج,+'a,抆v,d?\v$Ȣ uke7{e$Dp=R UvA.[PV$]s8X e2PQ1X\^> 1ױxkjjVFܞ{rWY,n>.~v9ya nM ]'3!yǹqs{^ $H_%"ZN}#-xh"[C4wHr-Yi HBr1(3 6P}!9ނ=`{`X| _擜9H$l௣$L*)@rheEIjiee08 휟I>͙m{㇕88XOC-I=Yhxjn3د$ m@ Ca gkzNHH{sgO䵌oZߟ^Ami`r?@D_w^z_(F .60v{gsI?~"X'&y;^ɟ>6??AI?s$$$?Jr?_ Fs|l9)%ֱH4ya6D*V 󶑼G>Ε`cHѯH?18)O^|z|yNohɫOg*ym*wGP+5ۤ?} v3\YbqNw1iCCl!j EvA2CѐUGWF^d9( vԕ0M] 4Y*MRŎ p,N5WqcF\iHCLvTR֑-!?$8t/-O%ˡK\ ܠW~cDOQ94[Xv# vZ=u (" qgNJ} Q0 \pYz!uAD* ._zFL؈EM˛Xڶ,蛢x4t gLZmґaB ?Ph4J5*msM5Jcz9ԕys]^֡@AOp>R D=zIa3+vk=)K4pD:pnC^4,>)Kj 5tHvꪆ ?!i+$˰fVP9zPz.ZS%6%Jr=Ouϯ<.r_8Zve;mᏉm2?;W 0B]/.9g{9^ά,iCD`]}00qy,>JZvE+SQeQOWgAk:a3q!k,J10 >S1XMUg锹5d2R6@f Qw78]S1*A<-tJ\Mwa8 tۑ~_IȺHcEW@8(D=Fz?UဲimCy# #7;?G* ?jT#(Dz IPX$1"k<Nhe>p0*U';,xE^pdctdžhtcOS`lGӂ@ KfZK԰Gq,1(#ղPӵÓl$q8I2oy2^@u0UV˚cnx$f7Usˬ:t8yuClrU}=eq[lu (-2kpVyMעhYSu~l +A/@a؊+ }Uu}VufXyٔou5EdJ({\C38UK<*'[CGQ"-d Y2_"g]f*]"]--{9)i4*EBѲZ^p.ed. RDCjq`V(_b ThGRԨڗ1D K/8 s~k|jasN_L8(J^9SW\=t[gn2 dx3_V?X>tzWz^QQHrIW7hH/yv~0!rmc]u/IFR;040iQ1YӍ(rȞcYP⮆tUT-mŠRZ-TTdn?wGj&e^1#qS6s¯v೙E>{N4ܕ4{EY"+#Sd fQEZԧ͟@[hYkUij`DeeiPۜE|z0蜌߳v:ΖJ"/3Z%U>GOfWmd奞/Yl9 I-q#!TќP.EZ@UUj]*$܅Bo 7‡q䞾_˼s m౜SM_, ~I9A>ȗMUGgm};ĶRj'-DŴ>YܴoA;扖mq/m޻4yZ4FhC4'&7dgCݵ4cT7v*>9|[n5|> =d7લPrYȭ,(hnrcw/wB=A|dх˘q,f4.?=[fʟ# gm\VF6'Iwl]#G Ӻ-ɄcMee7`D4DG{0A7UѤZbhM]ַrZHhTs 咫 3zvU~ f&T3`悘5пɂfZIx[S<5u_bYPL .%Zńuqc^ӼӥYj-Cpɣ[h j5G\Lxc`jmnSܬ͘+bQs\. 5# vgLƤ_hrkEA^vR87L|dPBeV\v Rkoazz7YI=daVԜr~l|zBIkuIr?KaK/>/Ɲ gֱ`ϸI:&lˣ.mR\(#p/j39׽y0w4P, Sx4JaT+:ВA6ƉIFw59Tr'̇G?pz%0ٞ=ž3`Ef8tO4=uKQQ*0i]0 C+Z(lդ?+nBf||o\fl貣WWW2g# 3^ ۞ۡݖSs>2 'jԃ78,7,U`Ҕ׵F=C1St6Q&&?I : }csx|>+ĉ3n⸕P 7nh srWCfZ֧.6.J/ч@xI4I\4oHR} o?(i V u|dXv^quKΥSyUf2t@lCAi}el3lŌoū~f 6+Uڽ4d?}!"]wufOL0,vadzmW\B)^ `$Xr Ƈkb%-~Wz:#weg℘a H1Y5+Ri8Ro[UDvmetS#[V>Qr-i 7+BXh v9 -,fw_w"J& aK\qUv`+4^A1oHOםo!゗"6mٖ+^ ҫ'y0Sxb3%.n/v|&RoV@꠵*w|2 `| 4ħϚtdU8#!G"5O/xBT{"W Bc:[HMbHЂHj +WBb3Zd)l@LNr Y҄9ut&Y!J C̅3$[$3VqiHB6*"1\Hљ]vH;^Q=hH+;}N~*30W\XWhl A]m$ Xi#stRRoKIhM6&3ݐjxoƕv<, }xI]98wöᬦ7wݾ>xa?[Ƕ5^h)ъ<&Q!8?IMYxY%7Os]9' YRV~Ӵ ,O^e5Yc:;.Mnϟ{E]Qk?ZR-  ^L1K*8u{&H{4o"py?#%:9#3R}iN/dh94 ϢډvuZ̒"0X)m2-ݝ[QVøHۈ?=}*ji+]υ¯fm}cղTtQ vUP<ƿ=YQR7ɢSsHizuxX ǗFD*ӮR ^bk˅xK&7e7܊3 spidu+c`'&ެQ(ZuOcv-&$k%|4*PĐdե V=~3&ä!<"ŦZ˝lx3̬~ P9GaT9YǷbXrt?u%Mܾ U. .,˂Mc!#$M 9iUCpNGXmI~t Ύ{']͠.߫4z[N crif4Φ MFC64HSrY"- $^M)!rF76,?^ljfK*?1X}NvZ7bR89j?έdJK?8  x2M_33fd N_6kjXW Nwݍ+@coʼn|R AJiYȱzub `H`w81y:axħ7=%W?8NE8V]`p.BN]fV_l :00k!M_qt1O$ % -z[3[Un^R ss - C4}4"r 2{`;9.tĭ$lIR61Y( ٙbvP̝xf2n"ՊKx7\Mf9oV>? D­cP>(h$m!cYrno?kؙx$^ID]KDK&x!( B WuTdǻSd'5jģjU9]$kh`𖑣Z&mO'|b6;ʮ2U!ՊZrlp&_4A`;`;٧ϙ`y{3r>g4,7*G4ymU nbo/k-k*j_ee/e̋6jEK̍]VǶTƶ,HZ.=>{WxB&4yME({mo4a [I@SӰb5@z- p+ (wCOTSx[xE'liYRiV9γ4 O7nGJg˸ۯ۬z7huT7yDz+.y?6EB2ˑ ]-cƂߔY%L=mM>+;뾖OtϹO=OJ]7^쳦*-g,yAq=dUh.um"{eu@7+FKI'Ԟdcu(!Eɦs%^r䄍%Ne+W( 5aZJr)eq1)%}BXn<smCOHQW,Bzi]@) zh0<'Gh8ux kʅapvz ).w-āz6xkƲ҄ vW.v@.s@ }rZ—Up8:\_aHIvh1ݠe.0f8 Orr*lpAhaun}N:[KIҁ7mD,qR_ۂ*gˠDW]8:geȩN$xD,y D.d-Z2 s0`m^Pۅ DdثAy ^I2{b/>ho]"R3Z焤h$g.37>ȡ@gRe++βW gШ@ 8)PBbPSP $YPICk#wHqKԘ[/6. 'uh2o^q:#USr7<ǛGg)$Ff?b/!x(Zqjn0:hCx.|+i)m/wCJ`ƈه #YީIVUo]_ymVp {F ~hTA2%y);ih-|=(>P"#HT[⊃Pk3z`H AAzOf3T̖߲S- l< W%xn8!kU3@L  A0҆IՓ-e 똝~}RgҬwI겄^sۑwtH#ԧj]fu!9H,{`b`JE+C7T!"%aKb;H$v'O43"'5Gڄg>nZqSбv'/\O}_on a yߡoQQ:8nI2$ sh2h/9+$"ó].|W&RFlWa&q@0ZFyC|óΑ gÓ>KgP/5UXr~PYGzq.mlEǐ+`N`"qκP¼?j=v:۠-c.r;.yワ XJ$[-vra H2\ 46DQ~rxaYd1{Ҙ7~ZhgZIO:CK !V rV[ۺèښߓWrSZUvp܄5H wq5A 1ia@,i-l*,<ܱf/=|pk:+=Sx-'m.i'g'=vYJNojʕ"hA,}F'+Hh GdfJb7a- hV߭p}-0es+zK_L$W75MmhrT"{ɷ (iB b%|$0l]p>&?(ս!trgO'(9 kpf[NFcF+Bzm06(hq7 QeJ#ݵ3 oφvTm:vRmɌ8pA'IodwbE;ŋL8\` BB i48JSl[ICif-$7Ѹ Cӿ72rߢ/i C*}76Լ"q>jjT6#=D&O~{- D\,;:Q{_^Є'/8YVѯ"ai 6Xh+IvĞ$X1=E:_Z'hm8pAx-A\~2V凥BrcER3vtdԩyaxҩN>,YV0Z($Wi'lȒRծd^oPBx8 4\Pcʢf4NN=3=].e޿aYzČ 3I#g|Ԟ2iu ̦W|-jLctC~wO KK}FɠA5Bn*gVxr+H2D=)tՇ;UiB 0(: }&+sg + {G(񵺄(#!zwT*ltVXǗ{}Wu\Q+ ps}֚u& xPl^ /K?CbR|>̋4?glޏ}?a}wvg=I}ag(N';I 8roCOA=iqֳיZ:KBN@I30r6w+oKI<eӮ*o#yt=f$le hI4}-MD/gDbܚC.s2'pN;)^S)*½W<\ 69Qy0M~;= )Mg&,̜q [)uG{`IY)a))9:σ$;#S L YeoÙw)!cv5 s$}\2SBcr=K7;\=m+]rPS+UPE 4_*mƗQUͳ\0Vxid<}BUj2F.Bnkr`hbK[1݉x(^Az|]XFTnEɡ丬5֖:ѣY>`'LxZVHC< k(J&v]w^Mo]ܶ^p&uXSm5É<#9Dl2h0܄cKSP'0=9q<MEH-R0>⃶ 䧻'06B#rxXqvB*bos+A5|_%r$,}[-wofq  Iw {u+GFgU*qSX돢56}ٝ9H ,0QfySVרRZ VISPXXҸ=I`5a(pdiR$|AwF v\mP*J [>'\v`:)'gMpwQAӴSIM5h~Z'o=: <`%ԑ!A.:JMI:IPXl~0+,kEƢ!;v|: i8`))2WNMV037 `&bnӍX[zbaɔXen$" ^fWMpߧoۨ56zDx(lz-UEw7_,T raHvzcWDbJh}F%4z mUQ+f윿 fiH'?Ƣ81J() 4/vmZTErzV(t6r~D¯%F/'3> 61Q~Cet,ć10[^΃a>z]YYY*k?&fxJhc3vB㧏 7=Ci-,qֽXʎ]m+( p*YT*ZLH*,F_^9n.Я%fH{;Fe~KY" l 5p7i~~5V*k /!2 8GQZheIdhQ~*\9li:| LTv*%/s%o|m+mzן* iUwXŚ·Ԩ8h-&^zNb/$IG錪sqYt: ˡ K}:yJuU iot|yN,UeHvd򛝓r^8Pf')݆(8s`%ћ̼׷hz(X$!h++d`d2Kfi`5h=xLy4i`dyl:8Mr0NұWrw/ܗJQRx,Yp֯Ό`ůPVh&b0n 9y=&{]: }h騽֧́/ܙx_f)) |7rh~ה*o Wԃ1dr[ OMB\G̓J=e%YB%*^BuI%fyKֶ4i9kI%OVRwM' i7ɢ{MWK,bC?[qJA w_,MѕC>9J[¼ӽjX"Z#í6VvZ\oOx|jJкQk/{=։c;{!/KGLef/!OSh9&WRZbaXzla玂ѹěWg^GehMK/X͸[n̼VvwPl6☶aj-f_% 6Q9"\|vޛNPtr&ǿ |[[LO s\1 崞h ;r]a35t Mu3dCԔsz ٴڇ,R=L;݄]ӿSEeGYVȂ\:+h~jOd?Q9V݊^UZrYeHF٩5uxe<~>M&Hki|id`i>z;# uCEEjj,3wķ$IjB%h&mtWqtqP2%M^p;O֢l*$^*G%f`+S6RST3'6qk\-d՜$;ix(^ь ?MqbKݴ-YcF6sҢToS>60oYYw~wPk6(FJG: OmkN_v1%mp6uB}]fH %s/a{<x/Y4 5&D@mFtbRq;6< ;?]K)wNmŞ\iX|CB[gݎ.י=O$U iĉF fw4LㅃR5^i(r ?cABP{ަVD<>W:oC2Mkي  bų&@3mh!pνB&O!d|܆]i %Cp֣"c3vB)8%>>/ZrgL5+cfCMc+i~߫(jvK^Ds`%B]vBj.9v"L#[k}N0[AG3`'cr~QB{$ ȣ4GtښRwL{:_U}/r6%[ H;++8awmo*}+h/(E,CġQ z@!vA"U/Ɍ7 8# s1ñw~-Fud F~,)zч!ΤMZoiՊxv+Df*W^r.jЇІ6 3I|5@ډ$BeR\dkKš0ye'H{?m-f;!lbb{H=]v37l x>Y I;4aa@b`qh?$C=B8'-IU'D :pR7@ 0{3?Yl4ʼjY+N]ܱ<,tQ\r #FBOGq`%rb :LFC^U[ GuPڽ@VF|JN̆8M~erfTuHD>,;'aŽ{cu0G%PttU$Q2sPBRC*354V: dFDe [K˚8;,C; q@?ԓ * kQh'-˃.Zrف-5έgoMCV W>G=PZa[Z .m0H¶l>Rp*0 D) AM7˖޵} +9+B`IGWfd+8]KlhLB=wi#bzfQPK܁hF?2/_Lv:~ZM{8I2t(el[e_lԕ<~dzF#21MCsx{w6z4w܄^ pz m'AWkg9y8J[AL ;I4ہ0 «Bt}%3jŠihG1E$0fmjE Ɓ7p'Y1%ï&X9IZp4!Z'x]iqyFA=7 ,"cۅޙo*mFNUTR3[ <~`1 $C22H1X_@+lHyS=CR+'ƅL0[MT{N B \R4hCn7u][~ `hU/Śc5#C57kZN^{8.͚dF`c]r,w6SUؗҴF 77_묍˞~z88 Y,Ύ_{oᯧ9F2 %3gk5k?!A-Mf$(4nǪ-dC`}h>EFx" -6xE'>7)^pF hsJb}-;Nc>D!=8uYsj83ڝ3J*=AUeϜK9G,#dU<]dxˎsw#| ˆ9;*Z\iG Ѕso]_R׵%`H/A!#A8>aǏ[}`l)˹gPX"#{&#Qv[Mm muz _=۝+dl8'wlb t^:q%bأ҅v5>Mk,\ZƖ!"@7NsnV 07[ g V SɀeAAvHߊ9ͲB wF6 i(>hb oI 22o&J< zghxh}hx!(occ 1!:IDy:edko|CE IDž%Eh4_ $Xat\{\Mc"9P$,$pN$ֱMW|0l~rM!:.9` q1;GV6zD00$1;_"͓fG-/10FI^ί=߹XN&$o@4r`6dNMk Ʃ346YE'7zeQ=e@}{I37n-}c-\ɾ},A8/W[Olh0`\/Ej;Mּ@`Bͫ(fX+k6iY NG \ 6!M$=3l}*ԓw)2OL)mIAP_4t?[z3dF~fT5_yo +{# oߛ0!ԷnB3[[gH"vBhH.1U>c54TV[ H+|ie\Y+ hjVFgf*;dXвV4&ߺ[֞OF͜Uל[#dAO 7nE&0}KP0 M{ZHg]?3읤W[P"y{l}\4וbRp=df-JCsz?GH +b>1 Q~IR9 5f!&@h- Z3+ap}Sgλ$Vxi@rvvޅrh4mvG3cP~^^-ʻwۯʎ9k5j6 >Ts̃-xPNWt͆i F Ls/xG|o9a`ǘ@莽2ܫ(lܑ3À#g8sko1KqpRO0{ 5G:`n6A@w@l(&u|b Z\qF;^7a9h7ΰYoIbV9w0L)˙OJNqhwEpa_ȹuܨ@o{3o'8]Z-5n0HXxE=v.BZ88b1u4%$ 7!qǘ81 g -* Hi]"埚ÏrgchA?jbO}f>=I4"%f9&كI ͨvOAisX'qGƑja @RaL-(٨$`\h*mFsa`װ) -2ԧfjBO~aM"MFQsh՛@ ̚ŋ7  =:8Y$| s Hh2H0hGPcև0Fqs)^RU4 oa03a >bo8]1Bl`{f;jAh S.V RL>և0!mHx:0KP|X @㧏&tc kDc'f=TRaH=V F`TK@NdP7 a":@&8NK'mF!w +,O1zQA7:s tNM-(PM@fhlo7f\1 ƐX"qDA %@ d dbZIщw^HovT7Q`xaAbL&5>&A$6XG(+ oWAZ\}]10*|(c *ʓ>$Q—=EXfkyMh2@j7 !HC7] ^k*@+([_N%f9#\m:1`~P'ܥ㌲꽦1U:Yn4 C3GvG}9> +0ŢnsY(rt@Y<>xw50J]bY*n7 ޚPgμ#WgmʽHэVnP( R}cZ4~hD1Pqo#1V4YEXk O]u0`ڬCڔNaR+oB9(̶ߪ@{+L yH :ʿlD;,:@UnMe,3.lkjn9ۼ37_ʯ_1إ"(@) }@I!րlP=yvmV}!#WŅ(5&t=&0nu"q$x0'M>%@Gv{#V.*C(pz[[$XkXo`BNQ `i мY8LJ¸:99Z l1 .{]1E 11[N-lԿ!2o77+E\E)Aeд(,͝mPФ5"#_lڱA9ΖD6A1;s@LE)`Baaȅqܦ!Rپ* EL YV8A2BAR-x%d5hlﶫt8bl%T!EE:BխoxcjxBQ)J )'8pdIPH@ޘd8P62J(w#P D*ݹ* @BUqK{TES|͞,7\#PI>Կ^e-4Nuzؠf5/1Sk +*Rˋ &(' ¤uf=Q!.5U%Cj' A~6a{buދ< ;% RHhH"uL(HT DmvٖY}X˛S#Ylbii]AP An"gf%%cXJa4t7S=X9(Ќ谜 8uy]':5T00cŽZ8~/K͇GRĩaDZR_ݿe\]!qN.H'%C}@?SA'6 iq㌶T<;i cw']ɠ&x H75^›Wb'Z3)~P-l!+{"N,!ř2a5sC xGЖ&OzYGtlŏ{ǯ"(AY<1|/HhtP.~IėB€#? R8BIFgB:{$(e2si {⢛j-,_l@J#40`d9cm:[LdYD0@@ZTI 8fP3qc}AUہXWvOZJ?z6<C;/IH`nfLsq9B̋phaz[`ی *E,e?nN/}4m6Y | ~TU&tYiȥaxĞфLx7B-G<+grE]yz@i3 Pkes!2 ? @ i&{9]eTV!Uds=̯<+;2f5Ѩz~dlM2] ~l+&ïB"oW%yD}dzոyh941̡ĉ4zŽ P]fv'@?_ O,<#H|XT1֙LX!BU)ףH~a|_yxr*=(ۈf81w ;PM[!^# K욅G)$,8t _{d0|;%›x$ԘϡRHXGl=d6.R~| ΪOjqQYh~wݔNTbo: VP8vg7G3 $>`(hʓxE_l9wqiELEd(ZZgE@ 5X8UO+H`0.f:QepƁk:5` {g74 ('ص0ª &`^R-SmGۉ#tސÿ TUϿj*@X &.U`zyPxJb{dhxOkV3YOG| Oc;oL4okũs;2Pc+VIN1a1C3{#l X%aqrO@u\+l=LK9V1vRv 7@݅ւ2\:o25k9wđh4x>?d)O;^p+w|A:qfݲSzmY:p6fP~ ؞]N6߇Du㱳 %_5*kc޴?'Zn9öiaf;n0Dmax#1 T!e<&ĘN-s_ aG0I{_2^5mQk __f , -XE3>˛$|OlQaxuQ׮0K即2Dˣ+nF+z肸X̖QL=[ UG=0.k#Fn:Xt*PM U6mqgWV uO2HyyIH9jc}vϫ0%3lAa2!~Q\a4DO8>$4(‹P%sjpkZ=lOlc $NEHo!5قGc Y, ֣2&; ̜Gtp.{ ndLqF|&-et&hﳡb <\+_9hXZIFJn ;k{z$zԁ[iy +v== "+-Ԙ^^h6 _dD|Etೊ0gfaӣ(1\0hJh/6oCJ5ә&Ab\H6 C [Qj%4;9 E+%+b[Y!]]eMef=wōcd+keRkP\=!ən C Q ,n3C_{8-nnv,~Mhs5gnemᩛ!w~ݱ S.RYAwYWJ}]ɸ/kg;_`w Д [ SF\goLp- 7'UTU%٠h6X *5G ߑ"wG&LDS'7#N:v '%o&;ydJE ]?%UJW+FuT{<{O:tc5)oZj/æe36]]>*{>Qg`d5.k̑s QWn]/XAFW,5(D%αAmfo_ӄxs2Qr١QxudWlJµh[{j6u.;=oۿOk]i~Nq)[imuQIh+&( ]RhIMSGVˆAWq=/RbvOg,f9A@a2Jp+đ.eW汋<)6c E(kAlj2&qFK3{uF:#`*e_@$JZ!]\tJ"+9KR%T \+f0sskÍX;زd9~zF0sLI7o b$pf ̈́{ vWr6$CQ-w@nYBVm(n8bqmmM&7Mo~j6\1mzA35I*~|y#Rq^c˟ÏuI4:с5cӣ:RϞ> ÆetxF0Opdcv-m`MNdl,<*U*;pjՕ}" W5ZYF9Yuz]@LKb-S@e* $R\S(62ԔPN^%@f h'KsywݤWZu_n 0ozWxwoP-Au , q%?gi?9iҢ,\qFLHؓͫ'Va 8-1 8A~ >;سK9BTuq]A^-]^jǭ!,*::m[rk{|]G!x$ȑQىGj6[GjmzC> ]eFkjY9( :,Oh~vl>Lv$M0 g+ZV^\+kmU啶2%ugxvT !b' R{@Đ_BoHJ@0:VqnȻ(~Mj Ud|4PU2K ht,k~7]`{ifSY6(߸^̋lBXPhj ~W&4_o ikx1NDcf<yu&\0NWQ 櫦mCCqO6~uɊHB`~4y?Se;.Kc-%+iKO&N;n%W^ӚI "B "NEd\-YIS'3IƼBWb> }l]96̄^ :d_x HgFcg[od0FWƹ=b]jl-8xT <ם3Xc'P^Op0c.b ۝ s[$1 ,9X03CCG0DɜwM(;g Qض0&~t,f+b8>-G<&Zܴ8F.jYj3¡! @/ǚ({4>2hۭ?)d :}X7>"@Jɋ14D#0J83'L§ѪEdN4PfJo8Fh `ayx:4~YgֹſE#ZY n=Q`NBA81)@/jVD ZÜ)!frgi @HWdxTDE؄ByKga8Cv<6)_,aFX]?* &X IOO8XG krjVevf\Mfm۬; 2;+rZfqݬ5wrfyuX3uWA9;J̑U9T|0`xwg%]bH4gߥяIkl>:һRiN%EJ3 ɓ~w%e3ILP z݂.WR DxDxPś(#Z4-*!v3}tyIf&,̖ST|;|Ofw(L8 Jex\b߫6~V`Vv+;۩*ekX}!>J],U}eߕK!} v.LF[<(,+00sg`›8%a\PxZvY`K"&l(ng8aVrqV1n8$r~8|q |=銓\&zyVF`.:X;Vf `T9XAZ Up)+&dfŹQ^\ߢUar=C4zXSb1{7y^0e]8,&=3>[[w9HG<M0GCto=ɶdЙQ(yvŁהfp=wxS> Kt!0=5}| .G&'duާ¦lүf3/G{bdآ,9uY0 3PGڗ0٤goXGktjz[ΪUժfΨp' C2Oc*YtWMa- ÚZf[:ިeƮ, ɪ,>|]NN 5}}U 7*&fK堘A 4AO:l13.q˴Z?Of{f{yf X)lnn :n 2AtQ5ʊ;R(.E+=+Iɘ sxT^*<ʅEɸ(br%|ϋѢ&!`AAo1O@02E^(bE! 9RGSRFv2WhϝwkLLeS߸us9kܛ^| oŒݪ+Vy,T_;k ~ *CK-&vUeB@b&ȶ]s~~UVon7-݁5 a*%+Xe+XWNURAUTEPUUEPUl5X5XcklC F,n])-`Vjrdx=91LF?b"f`{#Bzm(υ3ô4iKs-aMƠjQpSQ Lrh>kXx`6S9TsPqhw>OH#F8Qj ѕ$Ccv(l"{UL>_OZ\%;[Ǚ% =jSH meGg իB|-YZF-ǪпUw}]G\4F,džMБ@)\.+(?"2.ӨP֖c0ĒQUR;2RF5֗#[SU[3B#u- T PW.Y::m?9Uu Qe+Q+uhgj.C90*QN"%lr*I> ^nN_ xVN@gW@KiA'd ćU(a>BWS'T]ͥ :0 n :2ʠ3 :4ҠSn :6ڨssm ttAguxPA j7HVqvLWKGg)݌(dD@Ś_V*Kr!'q ԱdUThqvCIud5f Ikrpƍjc M ei8=<`f fW(.e 09 i '=8v3K4'A^={Y~AL Bҏư+GDĬBZ$E>73:<-÷3d*H 5L B, Kd4, K 5L)Z˂4 lXd@f;\Q)9")\QDD'a[2RɔY'ȐhC2Œb"|hUQW9;`5>P^q,VvU9aƒF>zFǦ-Rw)¹2K o6gdzǮm/FW|a2n1Iͅ$y$*y5]dHT_?wruEt[6 zIY $L˜ ߖY r;7iȝq+yAVM˝x-ok2=; v 2;rt=2"S#$y6*؈K*"`+MI< DHzIh*T*#`W6U F0R% vw"J؝IdBTT[dz"DyX-_K*KSUmjbmm;Z|v+_I,'Z">5-Z2|wWn">0mtwkg7iyWV:k5mZr `kJRQM\cGN VU1;)i`UӶQKkC;浔1bNJ -_;-Vqv. ##B-* }hP.nIEM3ٍő嬺NFsDim{XCJunثCymp4Q],c"&79;"8|%.T4>Ͳtޔtԍ̳Pb(VGmyea9YE:Q>(nP^ŝz@TVG+k:/<w]{@T=uR{R[cu]}w0лk (<ŝ5P\}}n~~5\{χTVDRXMȋzVJVBXI66]òQB c/(Qyo㮺r8[a#5s0C[Li#~5˧ϪU[i\PaN-o %\;i6b7O%J4[tw+&?:xfulЮis8Ov5FXŭOb>hsKte ߰1U zEdi$aˤ$Ѹg_"/渞+1{?QC ost;%͌Ror&ߛ:3E[CߩMJ|9=ҝ elv`{s 4w7L6fX-~x`<5ExQV+ƅ+0ۛx%9^-S@ٙ7NoWf{dZ.&h[-SӖ;.p?fiҷV+ۿ6^$,!q:l7F>,SuTm T4>ț\`VPgz1;r&`;x=1WCh^bOD3_{k+wtehZ2o _.,J9 !| ;H)hR:Vo'*|-߾p?[cYD1)25 zCuҜ@ERU6o%3C#?iBg ds˜Z0 0 7;AX #F4ԏgϰ*6qxt[OZ?ckH ǧksvWL6(9ox-ߣ*p%gpj"Ѡ=e]ǧ/I3:qt3#MVFղ~0?Oi  زƞRXΊ> 𚱹}c1V6*ްن " &2DgO;]\.!%ʻ05MM-J91ىn ù~84fvj8Gt.x :~kL/)L\܂ݝ]5i6ژS>5& b7ՙ{i'+hN  ;e\?JRC>|`[P;>׹ߐxɝMũ`<FQ}}=*/|F!ex<ȅ?9p%] U1p)!{ȑ^`;=m$k-u"zŸqgsZko%(`-'$&al/>(wK#Ou^4.Gfo6hZ.c@ o&r8l~`AEñJ`X2 p\aҲvS1.X9d]6Y} $l*ཥͨnt88%JQsի7xY.}0W }BDQ@HU]t-\8B›#PWYb5NuذtaenX}.*~|\y5?~l˅#]<wEWT?_izUn|Z|E*UG׉VE~iYoՁ/Mɾ2{6p`aP>Gp(%~dҭ *!/"ZE:H㟎3XOѪ7*z_c6ۍ^/GP0V 503(0>07K~KX2Y}%(~4 V"IOTdԴ_Š)0 ?ޯ0OCw}g\_g궷ɞ!~Ro y=68l<(l@hJ\wQ+ @|7;tsU[8Af@Fo@6f3CEc#H+TJɼn\;|]z ӴWt sT%Ɏ^ mW3X޲K?FV'0[_@N&.u"Lb="_'.(ߒ jеp { d`' &0طݼrs4F3fTi5jUdcvBQu/.7W3"abk50bm!,wӠdc?aNp'¨~`]lDo3r]2]LkԸ{D0$D .sԬwF&<⧔ cq1 i/C'q؄HH|e$5IvYrAM "F(sĿ= g7/U`&ւYm4$gpuC(5Tv@Ub@K.7$yYx=yڤP%U@Unz:J0l֧zC4@՚|bng{6jc|o_Pqm2'V[`^ޒ+)klDL[ ]{`49*S8gNK߈6w. Wj|BPn ;]ML~A (9|KIR)ع>y#BWRߎSiQQI(G Qh޴>` pP:"KH[wf_ԝsv3Zx4gHq-x`D^\.Oay040e~ۆ(2A'4P}ӪziIĥL(L#]߶};rry, ۘx1*, 7s֞\-Rl>z3M Mf@'6.0<-عmY#N/Mns3PxQ Kqûsyݘmq|5_}w g1Jr0bou`cL}7٥C3w{c`:a&.t#Q`L{(qwH> `<\= {| #i;'G;( C=p6g!О-~"7I//BwptwV5v:L?2>=e.&$TMȘՅ Zh0#//s,gbBd>Eڰ"* F< puxTg= {㸉N~߲ &  w[Oc3Ja.ju4[&3+ yJq}" \Xf}x7?$zr=A0@Uv$f E 顸Y.뷑vl;%:"HEk-DɒZ8Nl!q'?rw{rwTҘlz(Bz[͓N` ,ػ)+[侔[d 6+b-@-(Tx$p`<{_q8̯tӛ_nj<[$a?}\MtMt,o0\ܙ&B"+d〹<g Q80Ø.DCb5cЍs0hcܭ=^ h`e. wi` R)fsejW̰@zFI Wi9rdtwǘ瞉2x)-UbUvC7+bR)#\Jd5X C|yy *8{_ޫu!NWnXb֐cQ~d" 7pLl _f-zP] |.a dH?Y훰Hv~y,_Sy OBAԏ{z>3٪٣ 0~E(0(jQ mw9ЀrPYLO 8&=Y:9U[xW0j/5pte'F}OEJ~ldzv`l&DOP8E~ڜr}˻C %Q6=Il٩$TZ.so!vwxbG=GW^ ֭cɆd}2?d3`)߹07,ZǠg%Ř@E!<tB_M]X2hjv~3j-'p]1N^%2(QBbTvVxv14GGU ]톌!ωO8skok 830+ւGKÛ7ona(!zx߲3ķ9~w?%Y*;Uq=!oulX1` m$ޖGye~ #o,()}tUPt**yp}7~}NekAX4B ZcB^;u\6s":Y-Ǜ[Mq洀X /M:3Yî Ig+*3FWr$qQҫ N<Xz%EԾ;`$/''}y]Vɵ7Nl=C =[[.WHLEI()/*FVbϒZ^/eXzO`Ӡ>fC* ˍ;SJfx! eI_^#čV% ξ=S5":wk! O_{2(x$őCh3jJy6H E{rfЁkޫau؈{3Lprqlɽ >R'C]reY~Lvm6/ 1_{2¼!GJT($nhocӈK 9Kgdm1jx,ollW$G` Pf~uwBfyٷP: _xy-W~٬k;ErEL2\2Ƚ~7tgCub5b  kD Hª>׷rN~C_c&w7a~߸BD[Wtr4ڼ-ɋ~u';{WydA~jN}Ѽq ?– @Ib(P;Pu( cqGY1x2 cBKFοȧڪaǛQNMqC,Ń !bR0B :Q1FCIEP ~C~.nH w2#bK9 xs3ih9JXx?B4e'*"T@o:"KH0FH44|&'`O|np#㑮>hw;K}l4v}&ύKЃKEؔY ץȞa9'"/0vK,sBO3k#r1: l2Mu/'sFf[HyT5I!+Ei qx$ o\ m ^CJ2V53!IY)%目XYn|=|1O,'"~[$`}2X`M@2s(E5-a$!iN ѬatOi?ٯO;XcYKQݍĜcfu#byjm7/na^̽/XJC紸mv2;v{5 [\M q~Ŀ2;jdJYR{7AòցeZwixpQt;eH,LƓ;bjGQ5X#mfⴆlIT7{j*BB&MfrDz3Hvy1=}:ITK"ڴLMq6vk~%<]"Ý4H)H?{k̅D :&}} s {}p9=7͡:jzhJ/u X&bKm9ĺ>-A֨sc*wQ`}kbqc9 A1Pdń.=ѠP`e,q :V<2OO4 =DD݅X-lq_$ H!)V"o1$e)+B4ʔ]6=ڠmI=42qeߠ[coi` ϲQ(32$,\lƦu7VzX젓_c$8UYHD!Y@L"]]n6Axz790iglah>J>΂z$ _xf)w,=3챏P.4ltPz*LnR-8鳚P0Kf"I ɳ :%}O5s0ɎZo!3Odb'9rGßæ͎O9=p?r[d@{a  ; [sx4%\(aAҾt }`&wk8I%y& &X?V f<"qUEfvΚc1gDzqc%ѹ݅=N#mmQЛ41 {JO)ϝN1IF$暕hsp3XR?p â9w뜙$J1dv0).]k(K# _{NqɜfJF4O!+s'oF.{W8dB|W[˃T&хG-&ZjV-d8u. H 2($*IP0}9|ng""M\' _W6b0qPɋ/K+u,\Y2z!<8(e451e4c97';v`^/b<?+oäq"E$ƣrtEɟgF=Y""y\ڬ =ثlҤmI8!۪K_*wK@f)!鋄I>$̼n%G0 zd'94KooxbӆFDDդy6jD!QJՈfct;iq3%y%~osl 0yf(WߎhwAjPFN]L n/˥ @&GWRtn&9+Y1z{WGMaO*:*v`䲹ۓ%x "cnS o67ś7S"8q}8 {7 ctQd>|0pBONl3w=ՇUE5awIX&, 񢤘I2Sֱ"is[98;EOyvBlHBL9a^? n/u!lfoU.Vm n'ВJR$8Xp8n$Yk0<&lkpY Xlu2M#kM`ZR$2(7_*]=+kL>$C<Ѣk; n.f6;'f* 70<: G|!gHh P, KE+~efUMe4<EWӵ5`9Fk+u_" 2b[YV2ɆWq $pЌ5LN*9 /\p_iƣ8Jq2d6=׋c?|=Y;7r֞=c 77dЛ}t?I|sY%LFC`!-X?*3)g_hn)]Kt0LK"}xqCXI HW8m#PxvFӥ<5cƥ~B=T$Ҩ$ 1Ɍlp>~E<-=ṯDSyrR)?YCl ׸J,4'R5 R= PxnuXc ?[I3nl:i㓣}8/8.bR#%l7Xfi9z:h#VH%$n95A NJCHBbXv/ߢ H kwdِ;}/AV [X|~)v8U4,.#Et ^bjG!#b  (C>no"җI387 ۉL2H@eWՓr؎9] \XV Z"!z^j+tu.G^ NZ%`x}{|װT^Q5 JJYr&>Ά8%֤"K 0y!Hu ׂWv%qEwxgd^cf2:i_# h ) cbc |9aiH.IӈSx#M! \:uW v۰'A"@~2B|2`.7כ]T7 ϗ6Z.$Q9}¿.5;  !ֈz2I}*`oP.ubDo.+u/szKDخ~>0=kDZ7w5h ,xKYo ˅L>gt0˽hR/,E!d.8IjW.5"`p%ػ <nNMIpÃvzYښNGqߜ a/Lil}laAxmg11u:aL73ЄgÁO/ϥnjɑk],MW'J@r}Ýi5h+'%Oگ=A+$xAU6<P  a.)@8uP{[WAe) @ %= =sc1@Ac8gN$ {Le?sAYx8<5Hl?zj%<CXi(GgN>+馸{]Q3fA`Ҁ[[obM+5{[_LIutuƉok U0Iu`2=Éh+}tLw[Ⱥnz:& 8\8'RI`>0Ŵ)/½VF`h #}}rCCXuu翑1|'͉S0IO" ox$ t(U{40<{wt_rehg^E|qlc q.E5$Gؗ.)I^&6V0KD;0_Ed:ţH8yB(?,FH(+eGDžBV<,x^ /yjWTܲT܁T1v FL%ܤEgX$baFXws\Jj)MpXPC*شwȮ'^Yk. xUҒ,eۍ-B`ւ6‘E%܆iRW750oNGDV;E2QB2< JcxjB,o{8K}I~eBCaoJ֍6Fьa uchzpvCϒ~ CK'wZx(~rh6P\ װi>-(8>U ;Q4/RrJ+M4K4M g\Ha.1"x1c*ڣ9`RK$Sjټ*E_9_ _A%ޟ3У6PowbWo>$뢊R(sDH MC&NW=#/\1zDHa];y9rca[gю'PB>;oWVHx T'?q.䰣6K21m$~ڴrznƤs#jF31`/45/4^e6~OJse6֋J8Ic F=#͛7)HqBS3H+cVdId6, d/&8͵u=!h-C{&a}p# j8=0}<?=< a<}MQx==?Yd &%Ϟ<ÄC_NqTcPxo|=ʃS8 QTx&/A:ɳ >Qg4/Cchx{_N.Tt|[ҧ+wB/뙟 Q19FMw[Ht/Ig8vn".ņpWAg ޷!*iOB>JXm?>x:TFcWEYha'7^Λׁ =)YɥN}5zwd!Yx(@,dFHCyψ@cK #lz;N&0]Y!Y^bR_*HXw\9ZM6C6}s`i20,|ή=Hf3Fÿx'˘tUZ6MϑzGv+^&/M..8K.jl5i=IG_qk5R\z.k,uG sGm3~{Q?V);äu2Õ1D3[ᬾq|F3h8+3h:`'o??CFҎ&u1\(B1|hCҡXΘX A6btzgCh2%Q{XG g~U@Q%D%đ# hnEht6ktO0kz`)Pd#@y$tnix$ n4=4BrozfVI)Aw@$'L ~(렱ʔ^$xCqq'Sd\\)p"$ H vN1SG#,$]5 /e8NH_4) 1kL;>YALaC"4sCFC6?;uBsr@G? &A/ߙ-90?Ɵfd*_nhd^ءau  (wnc`鑎gQ8I0c3 7n/\"r#t=`! ?l:i ;{ jy7*S#ߑ6䦘A 8"i@[4@^frZ"ЈoCHI8`P d$F+(\2jm_c#s •CZxE(;"zxdѬvf\ /r)Ur2v~Lk8 ?4(mlX6ȅ'b۸CH,TX8vvkghem;{t0$Ey!夰<)'qPk/j_;(&;$k-MVctvwt`a/sDW3c{x͈qx˸P h)<1/+#) <\JD"qrc{G^wܬ^Zy ;sw^GhYf1ZC9 Nu&x]l:xuf}Н [ޝߵm <ˬdOsם^\*lu=9al7kqpAuE(o&j {*:|ThJzD:v^.T G{=:s:s̎_[{Ybaѱo\%`"y9{=+wwm\~}d+[8C=n/aDװt^ l29U1|% a]L;^704M ]'} #?lluOo9-^7nx] қ@I1"0؂+yneQ~/%̶U0tsg/?s.9gYG! D!Qz3`:ۇʊoJ5apRAa8LѲU!$ZαͿwkE.P5l-[ )tV0z}{r~,F>8+oA?4??&<4 M$ó\rwFŸ|)JiZ)ԄԌ:h0qsW)b1;w8>NI$cdgc2VbW9BڂuUa0Eua%0E8ua* 0>UP| =+U(1DP38t~4i`.3 sJmlJܪ Ni4_Kϟ46B;k׋z|Up-Ey-oYFx2Bu m蒆Tw,h Pח*SB/!N5~6+ sNE- \H}{\#*:a -px"LWalj5FJ5/tIk ~P;xPN^ZvQIc͍[fs^lx|%|b+~u`X\on576_zzjx|x<~j>u9&믚[#K#"h,OǠy^TiZ/Zh ,Ȇ~'zjkFss % [h/ve>0-qS{shd a6_77//7B/kq?|ūbFM4 󗈵FM$ 拍 H3~Ŕvȼ]1 2w=7WX]nB?|k||sI 4Ո3Nx>j :&4B&9 DZf+N MRéers~9 An Bo\_ΣiP޼ ؇~R_ =|EHԾr,-h]m4§5/Pl6eqx9V)s1JlZx,6Gc4p0u9/pؘ C"7ȅHQRmyK=m{ @P |g3 e2 6 HVaV**%ކ!S9R<(H6O9 R,S/a랽WȨS>K\I#чN}s}y@r3o4! YO<IkpM /ŭ xړ/'oɛ?`ԇ!" ̳A4M L74^{$dQ4 ^Y&,(dn$ Yx9W ?6~Ъ(dJ 8|8 ]+#U9*r>N?vخ7/n[Ykan7n&wsYker7宙VFwsYgv7nivwsXC(F=JTd;/ŊY M`-:"VTճԒ2TR`VЫFs g%xGoۯ]O b{OD=X$?WsX`#5r5puc{A2e}8⳿ϽNux [Tmy6=]oT7{M'3sx7uT<6 B ?xr=ȏ ?XC=00Pv?JM߬Q:SNwx7CH'O_*~rG+Sg4OM ?< T;5@;5;5Gw O.%H`&MfJAOrw0*UsX~5/$M3stpuvlJqYR@ `ZIkU-G:$@ \=YJ*|IFJGOraɺ5uPT϶98/ ̚yKC8 XN o 1~[]8E;<UY3՘7:ߛ^IfK+PX:lĕPS9U9GO 96eR>gJ*ڕZF_G7c%OM`WogSG݃'hn+\C{\H:~k!q U7IYs4h*v++)|f^(́Օ2k02ķYG|sd[tNGwlݩ▵))6 tVp*';SsK=_tl绶MĤ8Σ!TќPKmENKOU 6lnC!.{ Px;@g/y c9gǻgwцܭ5Iot#.:|Tu[zf\YNsB砘чSXi'y<wKsgZ{/!;-5+L͛%aEG7crܜGnm$ W 臒޷pmʮ x՝T^˟eׇX>΋f1=X~X}+z,>_G4qY8h|6UZwrXR^:^ @X#kΏF̿aXł^bI/U]EmjX*& ϮUQ3S03W3Ĝ k4CLq\ uV~եU.=( >EbÌ˸1Oՠ3駝/(\g U~'?Qey{S@>` \nu+ޢrY -Fa[91Ϝ7&-0ι =R@6w/ p^0I/k-b/h Ai~g(<sELG&Q[rW{gg+"cCmcGG]v_CZkmWO'`A":K+q=u{1rh?F#F-((=(\fy_aLhZ($@) ~ @p?u([ K WrXZ(̛2F. L,c:Ng,fr7^g`B,W'\!{Hvn*e|Vksd\Ed= ӹ@hHNI3k anV%10cB0,)+D*<5,x";?:To!Eyhdʋ"m`M oF] _p^Q BYׄ2N+~l|W}|o8lQDr,p=C1 -Tw7dÍBbX>x)jݡv!A!-J]=N1ehLℭfƷ˖PjRHt6_0h p&`2;۟ۉdSxL<Io|@h}2!}" ow -- !J%($?c^R" U[N 硡4|Lc4B9N2Xeezpt'~<{aGB'6$?]߷zHم['nݫȨ['C:mlq\s3\o4z酽ևvJ8ƒV$L_X1k8"ܵݐixgɗv?/ |`04ҡꖵ^C:OBA1 >F׺8kGA@hנ6 {b(R1~q>AQϯ'5z F^|h %sMq8+>ţqE槍,ug~dW:~iКe}8q8 9C0`)@.#c@g'A:.!Z+2"7H93 Qv,GPe2M2NcdHrGfvMLPj[ P_I]^'2_ۭ ϛ8ǒ}ѱzc!Ɛ{h"Z؋v 4đE@#8#HY%eW&m.Y߲+GJ/\:xK#_7qϯ>4+ E\,LܮͲvmŐ~-D8O&!:c rdSյ$ zN>|#6 !$EzYbwslFq?ǼPY8G~9$bXzL?j. }YB]6lX RXlH(74G1MSzPRud˳{*,;=16j4^,R6^^d-fe2ʹ9p1:YlK.=:YQ2,:Y$ށR𦝔P9t"tVCFp6l[Èmh#Լ-5܊VZ $XƳ_6SU5o7#1"q;RW /inl_,r&7ʰlg[_o%5/hᓊ*A79OS<iu׆u+ןK'wik^rؓI]0$s!בUnu~9,%Q=^ngY@4X+wPNM=ϛܸ̋֒<͜8mYHXRӤS8sӃӱBwH\K,!eBY8:[S5w9lڣ.a"ĖsIy-){VWH$\krL"<&7p}[f.dX<_?[ęx佔_o'/j`y4J8ΔBpg !x4VJ ؼ}4~Jj)#٬??𭢥b1wT\\iY!ՌF=PH4 OBQuJۉ;WO3>?b!i!XxU|iꚪ.ŀ>ޝ(י$סMUz7ήe -;yfdEeN,Ph}ʘۑ8дN[}xpJ16U y@~t!xd ǏW,Õ/JTA2[ٕ[I@\ ~* 1+*M:aJ˚vH\Kso2q?H.ݽfqs L-,Sݼ7DzgI}9mqXzJ@q, r#ҵT_ې+d J(2*<˽<У<*qraDkUݖIA8o[It<)/ɮ{<}H՗䛙5V@ a)_!E[wq|cC =/<=Sq:mBWyBE*P/gG= {ɃjO[޵ sA \~b%. _2^[yt0lVHpAsSݒ]^^GUF׽qAq>] 4&m""s6+FďH/DcR9tpps\/9ecqSoa _T/aFJJ)ӱ1)${@ \/9x<[o6{_٥qpLΣh8?B `]L+Slz"/o#{7Ӕ&"avj2BKn:4P'+ )h6׈EZ-`o)c}VNE=1-sR1lWwǵ3N#2TDvmtP%[B@|w1 ix+r&@Y>G$.QK^x/@KcXK62G[=q -sPYvw(A+7"SCBnw^4ԋ5U2M9%ir=Z%Aml|`qgz'9L2Zyp,~ y (> ~@)z\RHIօGb1HOj`:į+uAol[nq8#UCr\ۑ1u$Vj_b/!p/(ZrZ,`K̓u6 Є(9|dSGW2SےӁ_w1)8cT݄@SqOMxػcM4hX1(ccR(P3%}_تZ ;|j#wEz"SoY /%n^-f eȃ{ 1J MJ3 Mmd} MυyuwQR|{32@yFb:d@KaԁQ2$f(p# Ehٗ;1RAJGS:lCy+*ZWt^S;:m/}#1؇;f=Nq*ciu^8* ZޝߡTz,g<(_'SP>/̜T9޶z<猑V`{~uxVljfA Z3x\ŢPzs %(K kWJk `C4S0 S"*U=hw|VAwv[㎝h;n^s3M~UVԗg|% xVq#Jr&Qj\LsK*-y\⥟լU46WУC4~8HTeGoNWѢ@jw\a(7sQ6 b(;TqE=uĠd1ئ0mbɕ]~}C\d9]^ wVt0/-yz1%þ@_J+ G+33[v>{[,XzHRB #n kn,(T'kF"CMg+pPRg^ E,m0_'1**4<K?Z7jѧbG505{2!näJܗhCB]QR_ͅ,fYt^#+*ÅiFoÚG° 31+wԸwц3yWLwц3i㮘t75画 »vs/dggt}m6pmohM&旒`!os۔Jx\J<$Y6$&7BA8*|$+t4Nl40,4uVPEĞVH<ȹu*x45F^_- M{vĆ/ٕ`"P_h7Z4jQuwe k2e E-S|n_M[wߊB>!#^?(xޏ*lhPBM|%=״iY)``49W֬y,6|qýPBEsX؎nE;fQG';{.b(V:ٮ.q[5+⃀ v<nQ)jqA'Ҳ `]~z6!w4\H`˂79YX)J!/t_mHa'˪> ;[ow[ 5f;Ȼw,U "N")⬹h+,1ƞW† .woaT{Klpѐ{dq8l!_?8quZC6+8ܖR',cYPb1bR{&}rWd.O>$t *[aT\w3&}$>ҍsxGmVN/i]sߺ0RZՒ^TUc@EŞ:0 BhATivBHz5򽎚K-S?l].gHS󚁩n%nG!{viU/ "`W[Hh^L6k;'ADP߾3rJb\:3,K+IqNd^ 6]u7ǖ49JHbѐ~oJh!Dz?3] AxDF7kfM̽chE5<)2Wp#чC iw;aK2!ĕa15A_x-3yZҿ6ukD>_ !Z]ۼDMeaEװLHg xp")jj7|hC^/E&@LxwlȽZQ6-Fu'Ž5Ʀƺ;cɹ  ; wp\UA=1vla@}kg#|AT5txc=L_0zr̵W:+{uF:CO ]l@kO<#Vz^Wݔ[ZUʕ"A^I0 HܘL5IgU_6I V pz\ 'ȱAS.rؠB\WDU[.[i^FoT5=m6adAjuؠ7j{Ed&yt.OAB4!d,VEh^ Kӿ;2"U#_YKo-%YHk.R thnnP DSK(+7ohp~d!rz(7P lyTvޭ;Ws,)k5i83Cs z`NeZE&2Ԕ2'Fݔ 1>$lzDt>k4\0n!k/ O,cPeD=@^AZMQ:B3OYqp3maymc\a2' !U#[`zmRvŢ.Rn( ]z+zV5Y*| jWSbQzTUWxh:P,@՗G<Ư<̳pte (/^~jWq9EܒXTKH*!M8\WG0ܥnAZ_ Ku4:[X1樏h||oAir=ipMBQ)ZpjElyUaҔ[!,Ro%7(FF!/%M2F rQlhrt)9Hi(WuqP`wI*^`!bsttb1)xƭ@lƜD+j"^[<Qɲ~f1Z%J[PSVɱ1qr3pJb2 Sأ4(G{ZgpF.U<  .?ؙiPh@RgI #PN]e5qLx`х0VO{~ioEp0h0ҙE<oE3)LՋ;UiٮX<:G1à}Lv+f|TszQ­EQk*#!v"U,T/:qXQ좇KIv4̦0KTyaݵ:*{SG&_?HSܯ3Y /FPLrsa-<%@b.yt{?Ccg_:9{3x󥨠lâ,L8(Rpi9Ã=kPc=+ = h QӚ%f5|^@0AkWF^+_Je@xU+1G@,r _J (I _I&=dE&__UD;;J+ "<^8du׷@t:n~mT+j|co\\6$p^K x\qfsk} y콍!9/1Z|uN:zGߡ{Xs^Ī}$xxk Ƀ\]l}>wa-zFl|#vN({eЇ"0PդuY݊ໂ+@diSGv6/yL-f>Dђhf*f*?H>m;iqM+V*<Сh*ARƫbEO+8( Sd۽h4%^8Ac9{L? K䞃ltwZ]dv*@E bmI(16A]Ru Ww2f82G ,<7Ҽ qDxXkx(EY`ZPpav+E?0ktE%UjRQ⛋[ a=0rAB]<\dأ! A}'X߄= ]$ܜDpHjV(Lv;5JaY4KRW,Ms0f#%f>ڼ$aO}JXL>tsSg#Pч> 5%([P U} ̢r/۶h|n_nJ $'DGZjr1UXL IK vjq̴"x3k6MKP9Eɓt9xKQ]p0ؚ~NyZHC$:$y1BC$2|&'Cuп(cێM&WgzǏRGXoT;xi8gh*7 '@C 1?^K '$;<9bbIA%%1grx45m~Z{Id@"=eJX1~A@bd-: ԇJCf.,h%9NdL3u72Ny1,bcDH$QL)EW_Iqg9228m/ꌇ%q1IX摅`FF\4Eы*\vBwE% ٫rZJ ZrJяڑ- %vʉ\b!juhnqG[*nnQoswGiC"q| ^I s37}%832ΨL8zpvYEwb>,b3\##k5 vnCï]n-%{P=Na%o?npk8 ܅p8X9`1!qopj tRZ tVIU_=7T11f254n"GtX$` p(pdiT$ e"[L&BT% 5eN\;8:)g pvQAôSINiih8W@,ZGJ9 +y1]'@&`R0ݺØ)F!3籱94]Uppm 7sw]AleM?bm=H I L=gY5~m#ɂ(HϣQ]eKPm'8(:%xci6D󒚟3چq†G+%Df1%>%24ڸ'mTQ+flƃQL?"99u{vmC*ڒZZ;мN!a.9MPyF 3Yڤ5 ߪĜY%mle|%D߄*iX42li<m jn2%K 5ձw& W)58"i&,|as#2oɈ8Sj?H[V=eUG5H/h$jiU/br+Ԭ?mƨII<Φ5y|-3qYb5N* /!: :Cl%AA3W|͛*PqjCz4gKN {|`Ɨfs%7 9m+M?Ui%.68= fdk:nzZ /2N'anf:T؉N 'z:o[1TLhVT90!Shqkg nyib ŲXFt&]%.??.+\?̋a)R"{RwRw7M9a.o3ۊwd7M&9)G|Sm᥁ iG[h_ n|*GI}jdГCZYQ`t-z,L溴xQo2pg}SR$ OΓTV~3mW '8,WJ1<5Xq}3O*uKͺD`[ Y2l3LI &_bM6^eebU.?| Fl-ܵ ߜ'{kZd[]b2SH?s,5K9fȕq/jX"ZF67VnZoWPxf}ZĕuzcP[Z|D8.]0-n%>cO=1ޯun=Mi c t܄%DR2w;(C~T0^3Jܝw)n]3CqlӰh{[Ǿ,]d130syհu-)/^aCؽ{@ߖA-SlWěrV:x6o.bsu]\ܺC2!sfLZOCVq 2=l3݆ӿUEOe\(~fOh@i+fEeV+1$#I٪5e\~6M!kiif;`i{2FOU -}&Ң8w$% IBZ}̆AE˄FIv9Mn J6|xrkɣYceTEQQv{ui}W"rh ԝ"s40U_<%q ~O~xg?y<J_=4w=a, ?PHe~$,#leVj,' Kx-\ɪ=&>hS9F#|q6Dρ-wŲynZ-,>FQeM\¸s'[vx>hڽ) H)Cǿ!o V\&z6QQ?XXIO0!{_#<X*m̭G$~({6<~߈?V\䑲'qȗIR̚.ؑ HpMpA'M}͞S!;̓c3kHfLV|{$1;3k&U}DOV,x :L@QpM5L~kWyoJzB)$Ñ^ Kf WBJ>^*i~d}=[R}#9U;fysYG6iK!ˏ־Fy3;<3RxYbh2x`T-%)E @â {~'ElzDFV Ie&"K1Ut.w 0t4PP̒nCtn6<[*vù qhȤz 4oVHhj pnLjIJwhW>?4Q\[ܞaH{z1 vh)+8oɳf|%Ln $5ݟ;3!l8P9}H.;ϙߜ$6k2=SEvC 0c6yhsBdYfuB䀠] '5@)׸@+@_}lϪ\G_qlƎaࠋ⒣Nx X&-+pc`D\ w8 %5Slh`h͙kR!e)vrD$wf]QΰA@1i\!PG%#gB J HH D[ u ɠ秀-.1c)ؚ0wxJNlUHV%7K<"V;biX\j0 SgfQ`c"}Zd$wd&Q,WF^JxFa'6^xmLA0.bH'9lq G5v84T*hN{ Mhp\Fq>At೓( a`5w S ՘x0tOA~* nx3.K}O < DVMB؏Np!3z,Aж clI<] `?-b|k6I4) RW*{OopsהiN d+uʝƶOS Rn,zSq =:U/nfN=|?.$4zxpZXOu߅ߎ bh Fٕ56ǟI%PP8\1\F4#䊮[S|hGHX/R+4:2Pcz6$ӌ؆8wQc} 9qr\e o GaeA󼓶T(օOzi+Zz4Xd\%Y<f T~|BG0̒85RW_[9`=X9]X:Ewβ^D7)r+tt0͈6钋QT5d90 5rPq297[ B2#vB f("G-. j_ _Mʚpa2!!B!S M.Xd=NO'b#Xx+ N3|X vew4{60{ 6|:M8~Yme+I{zDHV|ٶ .I.Nnc`0 `p?u7۶8T[S^@kD<=VUArA|.ga9N[:76j*]Ku~~;FVRS0G*DsRfh/ʪb4뵖׎~kfi <8 p<#K9V|E'66)ɞ QZ՜r_}ESfPH ʳr"YQ瑵3#+HP@RUy@ҟWr5'E4t =@Z >0Vv !# C*ڟ\6Cʼ/ta?A4ϯhy\[ˈlR`Կ6bȱ nY6C-} L%Έyo&&)PR5 pf*!N}_o-#2xk~J+?X ?1/$[URreI6~-^ CQ 鰒]8BN`$v+3+eش8J'"YP3d~ 8aIc"ׯY_6}2%TMuEwjsU\#];mjr\]ׯ/F䵈I{[>ro&10NI.f8 /=I* !%)м20HWR(;!~}tlITX~]u(Z/ZkL~eؼ/( > @ϪBjϧNf60Zܧ^*)$ YG B^܈nvL0SQd0Z aJж\OJ֦1] fH~fKl߾}t#?ٳG?,,o;׊.f잔dسg@=px е}YiEpjGSA Ӄ|>M^?{6݌ճVh9u9⠢ 5&u}|vSkSCz~ٰ7LʔIh|ۨ-N#~p{fxZZ__ﺝv'"W g$ȟL/Wb~z("qda /5d?Oľ_G2z`,$Ae\~zu9H=2я-r!?EQdܛ<1o;ݔ Gvk|yu9}]4Q@odۨY;hU 8&ywjQPRq2ɲ"eaxSicX냐޴9JN{D d!tV9> & w>D0RA<m elދAfM8+VbPzp~iD9QPLI< /,QyZPiܙogz߽U4ï{;=}='/6yMIwug':KUuzhT6>'p+aXt $q{SRy^FWJbHu鴏zi_eY+/px`bqmfGmXLNVe %S'KIFWL :mAc: `%RAG/U6H&_N0Y4\uS<]am>~{9nhVAOP먈쬁U,o7>pm"CMg2O S7[ dkV8dGxbwuQ?S/E֯k57ZE 0#DfP+Zi oF:NQ|$v ”_ F=@v@|b(k](EE /vyKDhgϻF,.vfs%LJ0 z Dϕ5yHv4@J2ph9{RcS+~J;WضS~9>aq$cW,>zp6I?`.w*g{*sc༦ `f1טK18XVl0$f>[`/g،*eν^G,|Sc`q m< .j?w8.RϵWԚm-cƽxdN6,F#80x1b B˝&K <!4Z~Ǹ`$J-0/^GhY2o b[Dib:yF9?DlZDv \a_d@V%O_E$ z͏{N1`j u 25U7GPLmyRdn=CSWPJW hV2!ÈFaqh<> pFKB'_//PY_u %3tfRa DŽD:6N@*\H4aLO($n^%8Pc4pȾZkGFZ- Ҡiy |si,&U <@(:Yy -W5844h8O{&c^6L$*-G4(`~K4Bzӝxm΋ItmuxIl5SLMPYM#\`Y´\ʸ2Vn΀.wpN5C΂2$'Ŷu'5 (20`6UUeYAf|Cv'h>1LRLc,*zL#R˴-^(x4Td$|JEC;RB$<(* %Fcpl2' 0YUjVbDb!09~-.)!j+|~F sO\9Ih_|,?k-1jLμ˃r F h{24{q,=c<ncOv0 6JP gzUf1V]2yRD(PM(Js *CJ>XZ#+ܕFB iȬ>yt(x]5<#A>iH 8*s %oJv8zYon*$YBzN/kgMkz`ژS3.pUkr򁙝9APSOGGT?oYL̆^1tj'8^ݒ(kl [\[iϫ{3T6ǸACf iF^^x3bOT*O yN4@wP827Gx@t~柤O\ʤB:YL4:Jާ#,ᗏŋ!* /&N\G([PMlb".WxxgZ\s Ûg-`eGI9Y|r()7Ϝ.xw dgqr ~0f' F=Wmʯ=qtUaYF|MTRx/ 9[G ^80A.2]Ƴ—fto^=A% bY+v>,`go~N܅ybpw}vj9.ǭg~vV=GwwY$6?Úu" ;H0 * 848UyG5Z@1%FU1Mɽ_dUJ27ZҜզ0:#{:ؓWs&qI|&atĬvI_~,S>*}EtaP2VV>;ȁZ25^ }҄Y F]LiCCuM=WѤA ߁xÿqGBoc9$Cc9χX&µO0J5't0(gٵ-Ӄ@ S$K^P#yHbiKX([7^TEAY();]ѵ2XچJa}dQZ g?;ޯ+c~zfV! ]@V=VګVn*kXkmsz gy$z.v*Uw#c.ѥ}wʐCK[у^n b㼝Z/3+m:z)E4aDxrma@WKd}ur MFQ we}q!ڳ^2ӹaAاgUzݏ:2iRZ?vg/XnF)9m,qc)BZb#Bciu|驙((lGH)ْyרC.w~$.KĨQ=EK?sN=羱0@1{IEtP~6;A|ÆHŘ^3Ъ Iv5$5\"2r܂y<~0 aăTGۨ OAn0Fy&nD QbKY&1C/wrt*a}>y-&G s|Fjр88Л0Xm^Lȧh2<Nbof,ǿ`dy<}: o‘wcJyO ~=;{c[{ x -y\rxw=nz#etdMXa̒(=&,1@2D#P͂n9 zLdkprQ:bzCL(u'іƘ^Ȭ5YO/lVa{KT*_0{/^2?dÓl?[^1 sS |q<'X%p8ZĉgQjsP,W&*aۦiH] O^}~cϰ_`v/{{ 07<O+TxFJį0hXu^oF1"#~Szrg%82&lgNwWw/X|l0[cgg/w?urn*=;2Lbk* sːB ,9`Li4p8mk2jF@XW$VTJA]Wфd" 慱.#cゞ >mkp^%bSPCr~\f15puN_*d \-e'v=TK$oʚpxWۻƻԥEgN^P~qxP.WCE!~{w('z\dCKf?(%VpiՕtХx'b.+ den\N5~<<,Rh}:Pwn'ou,bfaI~5ʖհ4ϯh5r&e29tNCbX3Rrr"r"r"r"_"~w//Xm'9JQu?KxeFrs8B~רwjOiP'hNcO|a+rr \`ZQ&JD,%"?4|M: 9f1\q5 )f&Uۖm)er'ܻ 6l˵oкᲾQeN+6hjM(>-E><_*˛nk&a`"<"qVXA&GfrDz%$ b^-vwc+Қ6w+hBVG7K_nMdY@Ko#3yt1[z5\[Ax/-!G޹9R6;:jhJ/un'b n FIw{LWq 1Kmϙ+q--kX}i.)g81ou@wY#t3VBsF[tj Ѧ֪42`1;1p}kK"0Ys;h j⡢JV4*qV 'bQ˧AXnt;v^luӎ|zcU.Jge&uue2iβjD 3G4yd+?Gt(I)f`u>W鐄yѺVjX;) "a, 1ob|e>1IPL2"ݣ>Y|i le8cr<TE Ɗ1F_x峢s*&}25mx?.32 qʎM$2CTjT]ΤSS͎k-Kq;wގˑٮ§bn (1߮6z VS! Ļ&%p>9gW!IE˘f`d" `Bh1cl8{Dr2IJhdƆpK{0ƕ1-81 ߮\%'vH\ʠ;H-7jH/yqԎa]l,@uX iyd/֚7f$YMIxxӭ0aOQ,,m9+}V7|wk]BɬL6X, TNgzʳ!m `di:l4lѱGioXMRyΑ{rG.??ҦϩH2̭;b-H6:?δ8alop4r}W-.' =D;F݅FJF& 惤 d/{Jd-zRP6";uWf,L[q{9}' xKw{ss!͍fܧꙭxs<%wdžߥŤ5@(^ jp\~+u&x`(">=ߑz14e":AdCe"GQgœP&,vnG>О$^G9Nf澗A3f1WYIPO㮝hCÐ{to(n=l1˕ %1{"(etje*m?}&}h3o^h)T>jqirvm_RgN۽ھ,bq(@5悔Sh7Q+{^8͠IFu- H@P01*& 26Pinإȿx@_o>pȿ\tnAĤ30BT"⋲CelGh,A֙I,Y?^(e41T=?c9MvW8:ApHW?~!!?eyYن_exbH_xK"2>d -ʯzpN8a J?,?> KAxHm@-`IR[u%`6t\FMXw}Dq"FM8rخHhKePϪƭ rne t[a=8}0)!ޡʎ-3ЩuSKhpc3O;Yz3|}G0Ma(:Kդy.jLA֨8)Fvk 5/'1Kߛy%\"Ov&`\f(Wx\ւa5('Yyݧ$%$xzrlw̜Gj;gdLo kII,M MJA%4e,.0`Ql]Q;)3fM1~_%aVDzϢt$ o$2\ _î35SMŷգAz)וr d!ZU?օA :߀m< },W"gHeoբQ<'L6[zN5o2Q2ijAESVGBKU]jRcYޔ-{`[h l?ШS:,іƅ8,PUG>AއW_{ [ O@pd "tei8<<^#LuAP6]謊rt*($(6N?I>`ATP ¸H( <;`g7:KxV%\X,/l#0*iJ G#ui9=}kp(4 i"˟b!5/9*\d4lw'j tq0yEM0T4Ǽ^^⍢!M*U4M#+Urx7r2m~[g7rwj΁De 1L d-y8`isY :u¹~ͼH׸Ŗ,X LBVhz*!Ptoܬhc_X~nCpf=gQt죗Glt1IPVL- \XAp%Q&bE|yW;nT(%){N{]F冓o! 1w—Ҭ__~ a9b?E5% kaM0xaV`n +kHRv R5z 1#ԐGFXqNy6 Qꢁq́G}8s-q\FeDX -ᓞh=Y]\85kv Uc!r>ߐ+9o:Nk(*D;Wk d>ǻF]o u*/F!Ix9caK>,SՒ$t`Jacy}I(^ǫ"+ng7Sn,c2>ĠSAbK7ZvtD3۬;=95kҐ)FH'fGACsw,2o튲B2և_R7"w cy*t(dwr{ѥc ӏSCjkVfp̀fV\U g -Mj&*t6%Wt~L32*7%ޫʉZ8}v<6Tdv8҃7IL޻Ƃ;I `'w[lN"|'%?%Fqp~ Dhc|N ]fҝ3~1LLm|&ך *L.M̺QkkE/i/(:Y_fb3q|7Z%=]n%s*1t#Õ{'+o[^GcT:+Ⱦۜ {qA sE΄٥r1ɕi7m0ٰZMWG:lv~pbm$xesVdr0ZcjGlV<./حuĬ,V_e6,0B!Ԧ>v4ﺝKd 8\7Nl t)bcDܸ1Qd0Ĩcen-L,|*S@*O7L?ABY,9+.|$MSZ͇RR Vt z=S>h^on$ 劓PNK: 0vc˃M\akk,ZI0ü\-JH!nX4IAo[YN'4C Y5Q*1<Osx"["aFd4Bwo3|>Eg`/{ԐnD R0Ϋo7hyn lg_fJO)vv3_gG?ǥRyxjM-֭h)-j?6 ZQ ĆBT0*% CDa^' V<73(!g\*a*.  9˜欄ߩ%0&'*U#]({l N3tOs4Y=[8q7ߏY0c6-v]Pژyܔ cjC{Q%ntzT`v~WkBkcmWXI!V{ R(d_,Tt\&M Fu?'Oûpc1om0-$k0fhހm4Q,j =7D[%WPy.])7;lch iE^?t3rcQjQ|P&2ۦx, fiLX?5c`X+ 1QKNRI}X$"GLdicVL{Ў#PB>o;h \&KD^a.4uL% *`N1q2 0[St|PJ4jP2b֚:`"v=G-bG4c ,-ή[k[B}pI+wɞ{ RF9OtuZVj'FkI[,lMz{fM.^Iy'i/~adRa4pK4@Gɜ1ЕY8MgͳZv,<*!9lMaOik̼ {@GtI8}n & ƔMO& @ϹC{M1rs]LVnȬ% 7ǣwUމ~A+l奤sBZ6k}Plsbؘ/~4-6xGE LRVgTHXlȪ.IirxPS>c{B1Pf!>SPk֯\Hg!CAg-մjb[?xi^{\>~] YLk3U ZOX'*``&Mt8AF.{Ӎ :"p M%5cYHb[ nŌHD ʆd ԂZ|'m9SA5["|b=Ԃ5wsrAE< 觧!"uf4=ao$~ g$V,4l+̷̀-䁛0f7n팣}Ȕ[UR o陻Fʙ q+kfFMΙӽ,nN./hRp;R52bCH %60KX6 ;p?=uȴѹu,irhe|3H77*0ϟB߸n]Jwwj8SEE'ldVÜP+*-o6 ؋:PQRFH.7RӰDъRAb,/Ƃ?{6q'rT8w\QN:?e)֌X޾߭5[}c$k@5 'M |Ꮏwa?j8C|BՆl0_LGal;RN4g`!2aQnw@.D$,Ԯ&Lhk  .'NC@hD~0XڙP +,%G2 vk4^}8q< qm /!$0vPwTJw>D,`~~ Pbͅſ,IJr"q" 1%n:g\3(#V+D}4Aelg9PLL(b\H2H )Na "DV'ԗ& k+f]-d8w~;$:ɩŤ1)E86! Hqhp~Zu0 }#0kQ AĦK~R zvT+0e'HTMp >-&~\h%$Ja3c0ªO@S~H[kw1O'&\@u2N35g8-Ur-n3ObAEDާ!x#?hVj3|QUfzr'BK~ISOn?fW,^V+1E룪7C %1۟]x_^͂ĵnS~ ug*i(g6!'7E*YV$ACd"YwžP{PBeUK-)(҃Ŀ/x '{0Ado'Ke>P1X\]}ylccYXQEKX9}2Gs%?@uGYfx<̕$o2D|{ ΐ]\ҿeɪ2C{; ,m!;-;-w:XwҶ-;)|~ITV rPzҙP\t Ŝvz ŝd :rM6Qu v u9⻙{jwIQ[k ׀]33]OeϧRb!{'G ~|~`[|'ӽVYU\Z֝Eeڿ%-y9{3Zv[Vgq%8]lZBS$y,͞_;96Njlw~tfa=;/ ٝn,tlYvd~GL^z8]ӽenq,TpY(NWL= L:-;|32|ZJJ&zDw2[~'+.FV;8A! euN;&Id|dٳq'k{'elv%V`s|.% A8ؘ1»Zo YF^v99fHgL")zRq[,`.~v9yaܠqO<zUksP̚w:9gٹf>NW&P i@^>_ ,!4]KY4bBycJ,^s>d8g!,\N&bHǕ fǓ N4g=&)&wh%_dKrۉG&w*fy d,$Ƿ%, Z-+XQ{Z1-hyڣ (glL[8f|)yF9g|Ri/ҪOO~.G1 ?b8|@a-GhD+#pd'qcǿK|'*f uhG\fck ð:&7d81+ )H(pie4SQ=A+4 Hy&^0zYGRZhtDX֔˂)k n`C M:]]^s829voRKn(ܱ}5 f8mꙭyoG֑ށO(a~|OSbbG6')֔h ov&Pz'ՀaYj)M^]Ր'$M sfU`S>PԆvi@Yt9b/5d<}? 0St׍lz y!f -W*uJLk~ކwv[#C'4֬ a]._Cr 0P;XY>u0YRѤ"āetGWUkI hC̛g NÙn;NZ5׳vݙ`6V)V3 ֙6hm)eKѵ0n ้fE0ƥǟҰtGjt 64.mNcAYQ6`l 'G!ȀpѮ14Px3)B7x p`uddy\yTou5EbJ(yƮY8ȝm%JkdH 9q(XEryNΒN{)i/c UFKK1- <]ˬ.9ٗA-N@`^d^BZsk)jOf̡R<3Jҁh5]S[t#ktJ|tgCNC+*/˭cax뺑/+@N|ۀH N ]gz̨UyДDCח?~0!b{w ̗Aj &+̸ --l9TTϱyTٟ ÙZ8ɅB?=.%2?_k#) {['<܀`Hw fy֛hkji2j a dos##ܢ 2?]Qܰ8ISF[h/SX?̕6F1/ylO9 )-q\GBd}F "z)u(H x֡B-(wL^'@[0S›چ~ɒڈVjy^}JD^NS#TNҾ 6/^VA1g7m BD˷$mѻyZl1ō,%hAL7dKuҌURQr޴Y| \f1[:_vkn@pQpPraٽ`#;{ra#("Yt2f367.-{ln][~zv[IFm@R[QC^jdqMy8Ds9r}]$b1˄*U4MMp9vhԛ]Fo4 Q.4$\]Y-g>/3 f &o-Qe=5wU2dU_|3d0+_$H|jfܭ_Mxoy͵OLDecœ<<[:D[mP9Ÿb }LYkqfm4`<m8cς7&]sC. Ru@pKa#k *$~(jK^8ۼ4?w]ΖU,V]\ɂNyv*|i#AYSrUp3 }%-ju1RnZrh.~Uz:Y0 %dTHgpJv<^g [TN74dMMK Vn53@+#&6^5ǜbVqz,&g?8#*j > <ě Uc[^Ę7 ɜJXW@cq+#6N#&UMWJTz%WG4)@l1L)/TŃ]oXI3 Ei{Toѹ@ː0<ZwʖZU 3du9HSxB҈a}b orGg )IZ ZOm3ݦ#A)1dw2H)lPLl~+0:4TT̩ͦ(I_G3Rl]r(HXDZ}a:H{Jeoe$W:Zm[ wZF#u F:Χz,l8Fcsj,hZuXZjTU5&k8S&<0@5dʕv_,LHQu_h_;7><}(wfHb:w֜E_DwAlE,)jʢFeJnÛ 0sLK >QRV~Q4(,;nXg݆.С9.E7z<KZ/&sʃhQ8202nOSJ*e a}%?rFV<$]b,T:LBIjzLxuT~ndX>ds} L?4j?m|,b)hf( ϣSxDuZL2%]~>j85_H8yȣ6~#_ew:JtQ vr-ך}熧=7XVfN5ã&s1o2J8b)YWrLX\l}+[]~gX+j9$N0`fB4Zܬ;_ŵHtH,NBV;܍WσGNܨzl_ϘJ0o32M8: 9QU9AC YQ$h|Fx<xŧ;wץ>sn4}=ELݢKF`B";.d3 q!cwW| u$ਾ޼/ !M -|f¸@uk(/PHJˤSTu.uV?l,(cQt=X؃ۍa`=VWwaڔ:mzqUJD6 UP1I2 !o"Kea2ǐ+|7U;34ޜK6<|QW s iƕ:vp])+2RT'5|`5\Ek`s8>o.K4RVdhI~=K}j9;ή1_Bf+BjղG"B tʂ1;SxG.XeČQdر J~%_}mږe't9^(Z$"MZ{t=\q̖y&[y)ʁ{ȅVǶTƶLJZ.hh-axr,}1ax&}`Į"oe[y ֌VA \7kL2CG[g%a뺯=R:/OY]}dק.A(Jy/&K^P瑗 ZJqh5xHZAjY}l5Qcj_dcu(!9eɧsXKz)K\6_9LܒrJm8>X< ­bOLQ7A/ K,ߧi<(F3dºcؒ900EԀ0Gy˪J3\]BuY@4Twl _4[cS.UG%i~,ZL70egǺ6w8ZTsPY1RWM[y󌯂"x{B$NI}m=/1!>KoŌpL5u"ԣAG2+^x, DKltLs9|EM-rOE~>b ,l4$>5d>KV\bD{-Tx9):uAH\X|[?ʨb|=re7>(gVl8_K@?jZT^ nhR[@2,iYqРz3d+՘O+Ow>vHQ Ɲ7 HxUx fd9Dm ~կKW|/8yU .v2:'dv%-;]r9vA/($3% cL>zO'=5˪K9bN|"o]#~h򾬂gP2LCh+ob:X '`-c.~.~C%}t7{56+!/Cb(m^Wa12P̖߲̍R- xzu9.RqV= O"a<F#0YoT@2Jy?>T x-_OzӁFOWպ(ʧ,e/Y:mЙCD#Ego]@DI^#.v:hIB_OK\L{0hNjtRvwv. "BW7ԥiEGŞi RK!pNgXq]/5So`KoeL4nerfE%:J%u9FKwp ։ʐ@;I&;˰=m&h?EЭlZkŐGҁ"mmyq8]JIKql.j%F{Dbpu5 Qvrm@VzH<9Rx7E #QC=5&A'_Za;ǥq5Gau䰧+*Z+-toE1\Z=%$Q2RkEuՔ*қ 8x΂y<ł|]1^a2ܗ)* `\DœPf,;ZAE:v 鋃JZjUV֗c~f40pMf:T, Al/eb<x}.7%+my\RU'7l]`-Ah 7i8$Jsk]9kd*R4; a}WK*{,%x3;MbzjwgArIbg8XeU^pysDQ_2>J ki#͌VͤF漷.`_s#IY E#8Ի. ʁcx'37o?]@Dzz]_zQ:+zgf-jgyy\7pkj@(W~-pCC;3v&(Y0:<3T+FV8[eN<e|C-ͫgA&Oۧg˳b.vY7 F.wsPʷV&l/|gjYMʶ0\16K»2*Y9Oj^2%IlGx6dіU}i|鞽kK WQ\e+XV{vdo9v6$!`?l1W!l&~?n%˘d[ꮪ&+\Ǜjg[$]Ounfr籒rT$Id:F1,czƙW A(]({̨xKer[l y#'F½֙_E.2y}Fw \M\ 4\֠ 4 }_ՖX [72+ÚlVn(㣳CEY'Wt2eW߷I!(߸r|,ȓ[8 غ4mˢF*lUp' ,Wr/:^!)*]S5Vy&$J(fFF&wK hZJJŘӵ( YkX'^f}~EVhSae<ƔUn&NT_29(M\8gGHVx.Y#7v}:(0T?hU QK^2:Aϔ JT\@9Ml|im .RxHfхJo*StQ$(EGth1x:DN|d\zc;-Pۧ"%9x;pz!6!DO32!B FNO_ɘNFimUm6~a1҄5D9 m\E`AK @7m gj;~֣g*\s{Eԉ\!.'[C> 8x4leh+kHIMѵrs4 DI Ñ#2id&[/ܭ!8)[0eby @~bW1 r|r$0t6p5JMO84 nX9'l')g+TA@[S[Ŋo9%5n4F!kCAa-6. "t/i!&YVkYVRmT :A$}ߪ:oc3%8*`RgS(5Qm%Y I)r{4e;Ϟx7IRf| ;4dd%t tw2hv4H/|@Sэ-uJ=5/6X}ҭT3kx9`lq\䧯[!fm,)Ō+?1s(40sB(*5^)4k}bm7E~T1=$?6%gEt6k4t9a:?[mEx)B=t e(;hHe4;4#*nYQ-Գ];? irURl7NpH/,@7̰Eq,K1*_RlZϲP$#'ql5TG8ɗV7kjC*5jST(LkP9؃BVIZ+JAj 53+-4/b٣k5-#K͆E2I/Fp1Rg Kxh}>ΕִWb1줴y5W,|, lŭmuB`1t bH[-(`CuX "F&JaH evh!x2z>pL7! Wџ}lj"(5 DYr< hl=<=]K G ћfI!NO*[r{b<,OU ZD&# |uuC.:q@^}>8:ΖϽZ^r2> FpBMיܸhpTb:Ov0]1n:x91:c2[+˺YUqK(w2l/|'^"TLi K̤}8W5~n/]xW98GtK*֙:k:Q9Oн! ^#Uw;@<5n,W7VFJ'`͊H_v럈Pl4i ؀HtC^E7 ĊD)n?Z$VJ1JtQ+4qzUF)뱯mںrsZ|ma @X"Gl.| ]Fy<]Ί㏭Kj٥)lˌ8/#1./-dҚcs0R/'1j/Oo~,y#ˣͯ3H3e7s)se7ZlXr-μ:hK+yTaҮI3sV?ptvY2j*nwj"m/-g2t%yz6y㩙d.VH< 6*ՁZ{UA#~`Eqmѡ$$ -xX Xű8 |4% Б;YbGuCP1ARt{y@RT(0 #~z-H- ;'Hא q)7.lֳguԴz+q`~_qoEӣ*8{_9N p-@\jD4wP'qa[Ї.B"78g=o]r6I-6 3b<`Εo}N]Bъ6X/.lĢ`[juzPvqGOЍ, 3BB!i]4N0fR{}BGM oХq p 4uM^<Ҡh{AQ\rn1f yՓ?SvWܢd`4T *]ۆq# ;vKm괸Df)ojO,T G4DimSZ9QYhDkIhsB3Z-c^g֒xUGqƝmc$.#AIQ хxD]R rbIm6 b~(t:OTS?qU !kB4L_@u0gBeG0q7ˬ,UԫQ?&e(9JٷI=ǾEPbK[(-zc{WR q-IRAt#HnP-l[\F.3kOgST觴ěI#/aP p--Ye7&˚%>; wޜzJLkil5ji:DA=(QQ9p Ǜ춥:|ӟ2[)i|[O CN_C$\A#tAUy9?":]@p(eL`M-+?Rwռڌ6t[W$)l'I}zS|Ttro:U4Oc8 o*;|34`+sl䦸QW0=Q0diMF^6%mvOg$8o}#>8ke%27L ,6NRM \@31}/㣳㔄ysbԡߊ0 U9Ɵ,jE$m%Ð1zN#e>{*ToQgcdY"? ) >8/#eAm9:IN*3Zq"s6X"5!#j><̶T8Y &YEY*Ӛ3`ڋ1D'b̬e23 [IdQc>Yc}c9V9?t4zd Η)%{˯B;J)vB)HZG!%Kh 2*Yɻ {JC{+N 3m8OH9V~CxnBeUtYfeVh:oMf{dqIw(}yGmFt%&)Rl (HVy*V =dK"[,^h;We"RIȂ!C%3v{qvu)4P"(`&6\J7G`Q zlmԼTJmézT( zɅ MJIFm̴$M.ɹ1M߱rPzS(1}a\ o*LVq+?zu%I 5ȟ\*YxM"9 r]P˂6%7^)O%̰w³G٭Ҳ Bv1 ?y0v=뫕]Ġ/ǟ{*~\:]m.&Le~">:8?Q줆N>ҵtק=quޑoohugHtgeo8Lݦي8.›R5^ x_R(p\-NF`+%v< >;kc(GuV8-[]V؈\aеoŬ1JfUMW|PGQ3 , ԲZ`!Z].b 5 26 yA`7YjD#Gj}Og^̻gbчp•Ǥ }V&Ab7Nq͟j R3Bt 7k]10ß{?킃o;oPA,,zE~$σ!ND;_#^ C.:_3?FGXKjg^4IAF8zȤZNAi;#ŭ ]uzI÷mj?9J.0J{)@@hDRW"lɶf$LVI/Ou]4y"ǐ~2;]*>}µs-сmL`wŐaۀDWg͡ƏX5}m2؋bGuBAQ'UC!#^ molVeog}WvlA_ؤ1t8NW,Xmubīn ZQTw/-@gmfu C_88DvMuHiĊve]pN,IT b &%nP`lXܠL8WJ WaFEmF3rHhcF&.`K9itB{*%YZt@>)N) ?Գ JjI^r/ :O1EZjGW4ݚ-TW c3IU_9"My@QGtNd'EnYp ɵD~zhRME.Omvǃ3Ā滕Z (nE]֪e[rr5IAC@yVn5]6Gn؊&(t=ԁ8f}تWSTtZ2Bjb3C.9// KE.)yroJI VǭO,02$-]=;/ '`r?..fe^OzMzdc(ejl#: ȋ] kB~\{/iT@SwC= ;N7~pF(/Qϔ'ݓ F])Bڽ=\ޏoX4IKs@`t&] "0Kg4,A=Ŕ؂t`L4t %]0uCo%獼2JxIW-Pr.k,IAPNhuNܳyAokr AXh3Yo*mFΏ5QnR373xŀLIR8u"+3Y> Y'GU",T#bhʠ3OoRƄ7r);p ](b8@vD07+b[Vyct~Dk2jdycmcVt)<Վ ڀ׈p1 ˩B =)M&+'mT(*Y7G"|>wr,BSaDTh ϣЗ47駐GCʹ1w;㋓AB"?ƙH|hE&;!{|+*)JWxARmxH,Y;?,֑-CU3l.8Wg\UĻ&ӻx=&H1S5>" p>4u7xHt34ج4]5XaCi%q6-< D8[#X$'2֩MZnp7"{ Tw'{Ξፁ2-G'Iii\ǣˇI/_z'*D(X+%E!D,w5eFZ#o͜xR:5%o5N W+ђ0BmVZ{䣶NimFņ.t@0P (.^_>ww:Ⱦyd-_7K=9^HY i9iSF`MoS+Zeax6"AuuTIC)mY78_IRy^\nrf_gpNi/C7|2C=gT59]8?}M|h]ӏ|NoxnnwAxm_brLAug7BD]^KIXG1{ 3ivŬv>gbx@d${*Yܙhn&lvdӍ90 ;Ni(  ʓAo@H[-#Tb-Znr3^P{z>Zd>CHXN~y~~%JΤ cXJj+KA;leF[B[-Bosr+If 8LɔKo/{҇2@rvp~k }Kz6н^o7zMU2(p jN]ڔf띪M lzuqrq@??dQG߃CJU_cRhG$6 VVYZxaDs! nuM!Օ Bzy|ICZ4lNAtP QBA4NڹDx uT2I7B+^Z A0-4Mb K^%K&?sg-ͻh zyO^7͍7ﷷ4vZλ7wzf|~v[9"Gdmml7Z;ov޴vv޼i65;[;oo߷x N{7fM#i m9|:o"/N[6@yȖdzۍf;@ov`C7676ܗ%fKj&%6ZLvVxhm5mAۍPd;ϸ޿{~ |~z [d- 55v;Zo6wo!!-oTS.F+#˶.kn#WX!]mnoyfg~f{y-NM(j`LF9`MJs8[23'FF 2ǁ# Ԅ8~xG8F^@Pi^m͊$ u xg6A)"7Qg^K@`ŷ9؟87k%_hmESCVx20 w[f`y`";8n&&MFr WA Ln\d o[g{ԚWxbzЀd$4 k3 m&dry + H0 |pa~& $m+7~vG'RjCΞ) üP~ w/?NXrWk`r_wVt4Z,1/}9g_>t_`<|p{xt{. +:-wn<̰N{#(Ou~vn&is d&y~~~qzvNZX`ɯZ _ kv3*v6@CBm8)‚#;\ 4&1#rIt#u;hoy/*Zn\; 47ބnE3^$^J"cqgPǮ}kIRB^25x4k4 FIFwc?~F%8ɇbx ?XM@>Xoy >@ST>'b*@@Zi)LtfH7N1kEdSG]7dϟ9q `E7 QD('KTz)>H5s`Ji@Zi*Q1OtT$*=hjIv6uYlSOɷp?%^F!SROɹot?%~ZiaSw?% (o;;wo7(jMOiDO A$&n?piY4N,Dci?$+m=f$SS4O;G_nW/)H[ *?)|՟{HJ? 9;_oO&َT}'Dk6y~`ADwѓy,KbϓPk)^qʁȚpËUIPN2s:E-C|5md5R *JtCY Z>>{tI/S8{$pRr?mUƶv:O)[fƛUb$>/.rڇyx@ lA/~{X%Ir=d[QByVHEk#@}Mԓg6px:3|JۖxxylP$Z|n𱦽ǩ[{n챮kZzih|v:8?*7{Q8)S<{Ǽ CG;w G_SO9go,OAt#N#'A}7GRR]h]h]mC`++HfSDm`ц m gR\c&W)uơ>QqfiH4*(t*IU$9W)jR\%i[{[K;ȃZ2ED[rRY!g='*~7݊JfI$Y {Iz>iK!gؒ%(|7 t:ӂ]R9D*CJensu(wR:QU_B OU/'N~Han:pS8i$8Y}쬐`00X+磋_xɌ&q@ƪ16u[SPH[JփS՜TZ]\  q\)]׼r:~(^s#FYpԱl`?WjLDE+sz`XÆXO:-y3VT- Fml@e|o?z8oh6tMJpfWIꀩ?̫TU RܢJ*2UP"cn]SS5š]fԸi[-jPuYBƵ]CQ\ݛlE\cņ}5/ ^+ۋ!< +YlnYK[ҟR*p~`TlB&?(滹D0q&$*I-8}PƆF,*%K3]A9q"ı#rs>u>7b\Gکy*MߔDկ)?_TwK"nc;>O@ |ne9Z6lj qBӽѷA:fcBYy֨1DTP7f= n׾JI[:x&ո<ߐ[5}t/yr穠s%MZ~!XK^w^x5ɽ~k:O߬^!䕠]ZB谄0Tn.ˈV{{# HqimT=ZQ>n#ٷ&肺3y4q(?bFK9|{>tǖ]!UW |AM$u..)-R&E]#QJ`tt t0sM x!ZGC7⛉ϫY ŶBuDŽCoIa0,!:zۡԧK ǂW]W;f|GMO0FSþ+@5p6eja} %T^:F+$ ڵ1Q^kWƔ *_KVuHݪ*t` TjE Rs0-ji-Ig` u `i}uk`Z} X s֒ojZ77f8:3jLY+t[` )8j:=@ȣe"Zk%"u,9] BCN)R^fziڐl7Bisl)έ,$&`WA:&f5D%o[@MԮ=b"ڭ|#hut)q^ q4ݚ&l.'U!"]]M^ 1쨳 t@sk~;'Oݳ^gy= 2IwN<3,[m/Jۭ1m!zlrv ="9ۄ@HƠ4Qm1{ݘX\>UGiJg!@.û-Ҕxr[6>R[$ڢtdSH:yTBO cǮ ;{6%@b_=b_ub¨*L5h5lkq,%dtUAtي}Ź| P-'SF T$I[2W,{F1څ+u`FpcDϣܣ7./#CAFfқtuaé7RS 9=@]w ~FA|<|pt:_C/VV <\0>[c e=ͬ*f74ئzئyy^e3k:OJ2jU9r)7$`!;H`"?l| 8cha^ ;rc1S"( MM@Ln}sh&E&+hCd:JT^t^)GpY!MPxE~" C7ZԚut"u8Lڸhfp͈ĆPwt4BSspG^G _\LY(6AP$uAC)|xT_- b8k!oh+&|z_?ۨKN0ϫp?M,3i~%g*+#M2:hrN\)xht:q~2p{8Ni*#፶^Dll]F̉ lGϕap1sKK :>3Z7Iӂ?'˙@,];^[%\Ϸs}QuMʝ!β.5I):vKdO?>7eo.O rxD.I=wq[wyn@/:AeKE^*Z3E;'H^wKqQs-CNJ>" `n+) 05S5? }Xz~ N1 /HsLܓn'ieJ4y x ?!UU61NBǙ# =֜J=N| Fb ?#B/$XYyVy:g$Mۈ2] <:ЙhB.ԣ2/Mj9M=Њŧf[ ǭb Q}ܹ@Oxu0h|<#>-)C]!sz_2 t%Fٙ[`ٯ d&9"zAMjJh✻(s9e|2>GQ(s9bZXcvITL>@PqD|y>GOs9z,:st $'=NT(d>FՄi!5ay5jckɩ5Z\F J`},.&1&L Jr]pV1^32C{pWp6rax6:4to]g@zɧ`sS)JkʊT V9O8tppMEtnG1 [0 I@N",uz*/;?08#?r7w'A\nu"dd@6<3+x OtgSthuD Ű`P'~038|l ;wq`ՠ@mcu2myƈq-w珣5d~N{3ɷ@VSugGؿp07c^fҖzODtV6_acK=LiG++l6vxUMG)=g!f Oμ)z s0` =pE_/Ѝ1YWըj2Hi8zpp~`.gm\n1bE-;}{lwϼ=@]NO m!g[+k{hX Z}!DEZ s- .C-k5APUgYla W qh ǁՇq} Н@rc4F@hz){#[5uCub28pܷb M~S=.`w:82%ap0C##[ Fm6c&MyB u/rgcbq*$:L{;* 5^B¡gO[?P*d#ɷPxjJYj¦ꪹ-XWc_A7T' edoO]%5^q擄ftt#-H֔u2D}ٰ-2.ɐk6A}vY4 noExڌs/ҍX6*Vi-G -AՁ\ Y`t)ӘB04W -hn:DlV/B( WtPD)p(a4ȩ`L$ָљ'na?~ZVjxj2=*[o Ɵ>,ƝYFGg_n GgިG09IAcMUz9D QT9pQ0?\`J{F4޼m\;]PH^{/-A{HETZb0sb?zf`s%A^(d: +r<[ Iq5U)E t,nA)F@:k@W@s;|G2dKڒQuE̢.:w&0 O旱Is㜒I^G 7șa7hcWnn}'<'UV['E3* IduӼ>RR\LO"koFbxY^RR/B{!{h{hBO[R1^zv_ U-C[_8Q{ J&;kCHO #.oyyj*Ef`5s35Ix}.0kTRnFv-Uh5"+mRexqy,{jo^eC[!ڦ-Im% Ee^c6YӺ&ɜٴ0%7ˠXK+qs{orp1 ] [F6,R+qOje. :&D/IB"<~zA#Z\pڐDAI$^T!ǁ~h8N BHJ%KZ<)ՐW ·ԳPR= 3QǨ Kj!_NA5H椛 0`Vaꮿ!q9CD"ͻ^glNL4/I Q)T>ͦ򱵡RTk5'gW9G7NExFw$~76v|Q} (@ ^+y0 75 +pu; [R+5ib_+RRjBNja"LB*0׃//PY='RATA% ^@LooI|<_iq1w!ŝW9`t*Ѯ-r0H+%* Q2ԬCMZ%0p%ÔsC*JI ? )xi\KC =w+:e %ՑTQA #Jac4ie0L=wk$4xpI!b땦i4M·K]Bڎ?y_ηLɷg iě2P.oN6+:~m(TK!6W.Gߓ;I)ޟ+:dT]a;e` h6R:`t@mHfE9jZC֕Jh]SPHf@yoFa+)65'ҕLTCeK'/:xirQ8g;sCSf>sCT ]iK;%Tts^69ݚ+B{sQhHaި<\s'lvچ`WnI9G99I|͍s{D^1$#g]j! Ѝ9֮8eG(Qg*;f6!!s7~M0YQ&N"`Rd]!ߕJ΍~K@q8xMb {TAR *qu.v׺?[O#]+8Q6A?{y4ug op;3>DzMҍD‘6Dwm/|],  ?{C]7hePnbW Q2 ɽap2Ԯ8)s5[VGZۉ kr݂}6&x.Ye#l;c~w~$Z^ ca(ڋNbpcu&_5H#!X8B5$u*F!t? 7qKsz9[Kz"@&mEC@Eԭ;8S`̊ =E1@{[I@[8# 2gqYyt`6t@~rPqب*R7[/אa3+ 'g k!%䧐X7$g zTM:( H@8n'_cwqh@UI /{nqIe wpX7 ×7`_Iv`PQ!l:lZlv>?(\Yɿg8p1rp2Fh;+#=`HNXf(B; i^ߺtp_a:1|pq=ٹ8?rNϺ|:8翝>8u+?Xb~x eL_cwO~Y|K9~8:?9ǽǖc<vɡ6I允u?OGg罏'РnRGj_>|OGgݾ;O.pm!Y ;/_NqKaSr>Ee\;.HL;\\K?!Wh*0|_@̋D]A~$ti~}V |!}M05bQ U'kh⣅ZMjkh.d$7mgS8\Gm=N'sg[kR:d#m%VBȿG`"\)aao5< * +tf`4ʌ .#i]ヱ/) 8 Zw #/S+Y{' =8OHԓeLN -ꧫͺur^< '2&mK,1 fVI 7m&af6V_ 'ʼniMOYJ%lj H)V $**CEm*lF;vϜJi:GFh3eE,_8sLM4H%JzMҋvM̹ >Lcn zAbǍqz.ڦ>ätȴNNaM ^v8=uqBWzuMP q0MIӨFm,)!(qa C GN+SH֨} ~h?S 5P19U'EP{p!)KjMrǃ3LC`ۧ37_81b /@6W5TC`@@ːrj,c/ݥoO~bGm}{l:UXe= ȡu+P'!ϔR$/E#YT[ROy2dNNU.:6C*hr*wo|Zکx#qEB$a ЋIL~]81 iP` di,0]7S7Cap;((7~j@&:Qp($XȁwD)fKVbIw^Ž4ۚFM`ș4I +4mڞ51(߄gttFzpBo@'MR'BG2 n4Z`\(W. jIY6E?F3΃_gϽFM8} ڤj4woSԑȣv;çI P51bon:)Vp=m\PLS%OR0Y>&V:԰FϛuH"MqC` 6Z^3Yo~Fu2aG]t+q N*v=59QQì)j;hvl+7ꣴ(tk F 5. 8 %PP7uj9\?^dZ^+(F:BKH%ń]qYd*Dq9ISC( 7夊 W6N ~Q(k($cww+jLDVҟ:p+e6{ '? dn7i#1-Y^ɦzU|GvQ \/G:adJsm}W^ッTl9T1f c}!gᶆ⚽Λ͆^giOr_ nG Y(K$aMԂzŨ4&G;f:6R4dk F.D6Jv;qw uQH V1DdǴC W)!՜ 4|Yu5 Ѧ0o߭mȉ$l|˃LBI[yM6(ͣ`t&J/g4_sf('eT40o"vL#;,d{e6+P8$Od< RKLpHcs}"DG# (.>G jJH% '@1@NI "ܱ_:bL}A+͑v5n?[:ޛ 0t0t'oXsxQvxY8O3[c%M3G0?4yQm.Ώs1@7 Vt9RSF5:ʾ&/Q6-X?h׭DNd@mUML,+r *[A1wi h(R < I@,6h95J< 7q-,& WM9ijH@J<=w6] Gl%$8!T bSH)Xrq'E4B+%a1:{'Ĵ^d" MLEĔœICcmo'iEm*8oI$ϹYMb*4CMPEsE"iVmB%$gHOf"98!TU $'~OX@mx=sZ/e^)si0:YW-W4T"4^%K*qrU#&# qr+L8+;%uaJݒ-[rVYtzR :0TIfF$HpYwu564K#O8$Ac]"Zk{9Yճ|MybҝPjk~YJϾ03U d49i;ROt/!!8h~_kp&o<mlO$"=پ) e:izݙ~Ǣ9KfGc1cQ.gq j/]EtLdvd1Y`k?j%ytL&$R_DjZVsgŹTZ!^nYHO8k P+z\m+ET:xR:9m"& z%"sw]W{+I+r{ţ Ru=m-kxNV0#r ?W t?=7A;{w>CʬǏҬ>vJ)Ĺ|VvN^u'"nj6I妖pԑQ> bN:K Zb=z^zH]"Ip//ǁ~:% ~NȻyw78>E9Cjqp"ˎh$r"R_snR8~5nFs3H$PU(Pc EѨ id1Zw~v|HpeJffԹ=~J`Ey,%Ѕ4UBA*(ln?hAB2$l@=v ;.!8QchA~"@ĵTxQ&Ύĺ&n`m:)' '=O)rSvdc٣I͠ϛG@ "$-w@%6$K/:F*&%6KJ $7࿤0C#+IFg~Sb=6#C.z"$i@Ӈ)Ø$DJȃtp!" :b/S3&*a62b1ŅZ"oB)z 1Ɔe6dce#Ώ~Z(싆?.˖σF*9>D ޾j`ITE"ݫب|‰2m] qخEWYY@NURқu2pkݲTq̫2R@*? ^ydP|L)!e$%deyX+H2/$zJ&n{kJswԓAvv4>x0UO U#SCXAy\-O˪)vi떧!6c*ƨ|LPu?PћiZ)U-<'Y`GjU0͸+.Jٶ*-*3Yf̠AJgj  ]{ظI]0Ae¾KoH mXM}8U><]m^0NJlT+3O3\$03vgߑI1GR#ˈą1vĢ(qn4^i̾$9xK rI.d,ӋLdzX"N,1T cZc,1,,8^YR.XEnFbavەNA4kV%g,  io;x|oMzi|pl7>1#rDtCWۋ~|>Kv66nwA<&`2_7h1@ǻ_~3ӐUe)W[||F:Z}o5fPd$}=F*X&az-EׅOuiH>Q52o uڈT6[U @tE`&ƒAZ, )z*S{> ɿVfJbR:E GxA"bt!AƟчPEΛ{o_p5#@ԙͳ#7Q|fv  k6}!$ye=R.r%qӐԛj/T45aY ?H  26VqtS~:%͈}}vHlV%?:,߄+HL sl`~INx}="֩N33ⷙdu |񙷡ԮzWY7}-/Az/lY̥S# n+URB(Om-֨zk)X|wXUd(VN4%de.qN+'H\spGw\dlu:Ž-mk8 Yĸb '4mÐ:+,ؑ*}Hqƍ}:Fn|cFǽQG_~(@z[h50{| ]s6%x LO;mcײpic(eƻD\(XCO-0/1/'3@94ZJjW\P9OXfU-I3.hEԙ!`P'T_]Ֆ a!E66<Ўлν0߄jӛԎKԎiö>5[[iL$MCF[W̄ˀ F֬VA-lKΚea}pKՅ r]&!LY'4|%mx=ێFCh`SRZvgNwQպOt_sx+l]ObLhSXoH uPKMj\_6euMG{5sST+Zyhkuҝ9[S|+s.V8zWV#Qv'I%0G)QF$GOn˽3S=ܿ䙲p(㝒q>F_Xlx>$Ffi掴B٨nJ`q?(3|ЁVyܯ*%z94k>26rҙ9'E9\Wb#O7Lܞ>-w|6Sͬȇ+`8r΁9~p>p{H[Ng Xq4.T} =kK\DOeqgfz\bS)N!^7 m%EB }}PREdw"mrC{0ߤs_d~&\k>Sm ]zOvG}cᠪ#l4Y5yh$Sk؍^Q떴82](oD_2%)r[0ےpɥI俤/-eյ-|B@B5q]8@r2WM娜T`q&sL#E8q׶968I;-: n5/COel|Zؒͯk;V*)ix mWT)a<HSy;`w)q.@!Hc\-Z5L}~1%yhr6嗍o2KNJ.ٱ *aU=GF{|J}-Aak4IF)eZoY9׊)j?0ev^\]?FɣWuYܠ%asvv&qF8'fR mxϟS32bMgFjIMKK_ykiDدNc`~#.vnf\X76*{3EЃTAzk+B:|x9p*&!X$#xi=&Т]K$^ýڪU܆cu 6)IGϦLґ*i~i@^g~UjI.D .\+(M- )lWk:XңΡ ,b ᨩQqӥCe0c}:M @v)PsA^d'=yn/x7=kzMsϑ殛Z 7U=>ؓT7ޙv=ъ3>sj)[ UA`nX`t3ҢzAXMSa#]Z< 57ݳMnCq:x zdp KHtpgVI3T/Ly6}c!/C,2͑lsy*i2}foWu >`|?<ۙQW-onp,+yݙ Gk0O*tB"c qj`ZsHd (e?$^0/H>`M;;E\Gw'b+I~Av)>n _Z'-+Tؠx ` FY"E#-ZG~ѵdQar v\)(ҩLd^>Hx v6I=^c2b*&jzE{~o :mIZOo7zR zY?~7->UUSp՗ȈPeXЃc/LHgrRdJA63Fhr6QX.z7cf~O\2cowPb)E8(ZhQBi9Fc~ǜBO\~Mlzca_{r2VsRW eVfzX0͗{(fu|>efNB} "Tܹz{8.81*e>] ~2^~lhaWµQ0=#-h:R͍?IxI־!CvKEsD Ґ8HBijAξ*-yk7}efӻ͖P5h+jBs~D/}~Ãv=m{)'HX jMw5(K Ohk#Ql '9 JnԪQ%y:PC::&v'dIBMNGʩM<>L0"pyk6)A8ic?w7 Qgq؏D!ܞ`k (g7pAUvA(h[–?WοxʮrIގPmCȤYk-M$f終+@d[6tGnNyDmϢ4wk<&>ll7UQ %#Kv$Y\X2Y7,DN1g-Ü\n\LJxKt#;Bа(KƄH%Z)jL$oPJJgfHη Lo}-cab1]Nt ѡON}V;Bb~]S2p`k;Z'h~ A u[ܩҦak"R~Cfllu}F0l`&y]8 266}{rtu-Y%+ߡֆ,чC{/ 7]N=}~N0qCiP5 ʕ!-r2"?H=,īhp"!` $@j(׽Oh14)c& !58|)j݆1p@>7F oh7 ПqE!M)5A`9xj:h<;B~T0^sP,j;wA 3zSr>'F9G?/{G+<^Y;M¢b4Zu[oa%@Ї>hg7*=E!e*Jٽ~m8nBwAkCgSD:~+wq~tcR}x =?-}dN20/Mӊ _OKj!,aFBJ8Zw-J%J~6?.YVDF ß0B|w;k6; i|yl%3%mS%C)ςWte(H>S:d,Y_倮:Em&,tSCgd>q*Cpe^E=A]@\AШBa+~b_[]_?jA66VA<';9O'!:Nл^ p`pcsz7,nzh}~?M_cƝ?mY;y4x=1 3K1p/}/?}}c; Y'4 O8Lonh͓TY$7],2$>]/>@P'3хKtS1R؈e@zF@ Gz;obih $҅Z'Aa  9z6ALA$1Ȑ4&Hq0!\@<9ķAyfB:c*`Stc@ ~0IƯge&~$ C`zG>uǀ>8g*enӧm36UL6U@܁ 8 |l(\O}&H`>+4-d5 `Ç$J¿~k\̧zGh{'хG1߬䣊"N0E F8 D!߷Al#/F;nSD^6b u,]aN٣Ӄ?_y8Ot=pPvwv@"fx*_/'_b=yM]q>1p8 ͬ???Cg x@HF |k>{'ŧx m&Zzn*ȩ7XkL%>zN<_?8UX\ eJ{ZO\p;{ާIͦ1dh uG)KlMd,-zq񞋋WT~nk݊Kqy*X %V$80\4h%4l%_1Sc hqeo[%)`hmLb%LbdP?,L,&h&xh7 rD2K:2*TܼefA\<`Y8;%F \`jsDvMV&EGḆ2<%$MG8O*̢&9&~~ɧUvn#a#`6M2R ,d2M0HY&߱9cp.7pQ &@TR)|(HD祉ڴ-C\*i I FqXsǚHZF̮qw/HZ ڱ5yt|ֻ x6&Ǔ\N_{Tj&KF=+ZsYW2w\$ap{_Pk"ARq8"vw@:V%WRB[{+7뤏FȆKS:QCi4XI@Z+bW҈;@_|Ɲ7 1HgczϹuK_qxqAC`x[s+2h`Q:N>m 5,x5N]]EDMEwQV1bUAßHG"VʃBJokr[lIKc}BVeKw_#52SmRgNRerPGK4(M>Yzj@dAə' ?{8#D?l2q H=ڻ]o-#2.Fzwe^J=!N!:qDgG, &09 Yd$,btK B+cJSX<6wҽT:Wͮ"_GɯX/aZDף&HnP⛁SXT%@hvz#\/LwA|M'><y#t!#o x# y7a3Zb6u52F6i9P;.Ё݂-CsCqwjR}0>h[=7  &ta˷>6AFv>`vK,ciR1włd/x尅~{x=dRoSb)Cɹ OY=#FVNsD4Q JŎ˹ K=Ra 4~#fX`P2f)>NE5D'ȋaoA_a2V\!\}2ڊ~n**WMmB@VW}&O1*o:d:KD\RH`)a ؠO-怳a8`Glz.?lmf^D2J@_p8OفW9 xUZH7Wz/YQy۝?Qfnp E&ׅGWb9[NG[*!MBG"\!냪z)X)!ȬJEiśLz2vNU~jx=u8 -7|k,ZeiW< <۷hl-JCɫҌ4M1Ku"K!kyՠR$9k- ? }0tV㠪A7UHOW ^QD:Ɍoo+M 9Bz-;%pG4[[+^T: O(UR/h~9,FKQٌ{~j?j2l.Uwo]*{U=\}4}4Fސ_:5"ٹhҿ_U2 ϩ^ݪn3Tlj#\=f-%! MK :1HR6=dQ/IUj;.lқ6'/쮞2Tzqjfi!E`KíQ5KŐUc}z"lTi ȤFjF fx{YpUJ[2Q|8G!㜣܍ܚ'F;*@Weȏ2hV1O@/qةͬN*K{lvaW¹>]M}(3K:S?9tމI9"2ra0{o)UTF-^*c/FTq*KCEzp 35̚ql]w, 3'ih#k>C ڇ}0srƹfM6+ 2 XrVFk^N]W#=΃tV6뙯\|X!}sLNJOs  5#$_#CeDK"oR\C\KEWq?4{3ͣ+D-LЭ@ !>:;8ON/_ ɣ\ts4E\}VPY(de%^F +B_/` 9WZݍp6EN;V[o?}ĈaF}fDK%|XpsnhE"m`~<>9~`,^:p| k(:]̽`+ quC0Mwx ~? b'L`bk@*>~ȵ!Rˤ}JHf/hgHHtLH榾T R/\Uj(JUTHљc/ҧwtOaeE}+|' *KZ;VOZVSZUWZU[ZU_ZdUco(}[G: Q5$.Zqf,ZyR2YJ8Zxʦ-vb.6y$ԣ*=BS>׿' .4" {$NI|3^C`Z&!O TYUĽ:v!Pfٳ0"xjVհv6@*~bCt!ygG}ރT[1u Nxñw|vdu^'amy׋ WRsGqt<Eg8EU 褞^A}fB yvp>[Zx扷Wi`}ﹾ`Ht45A3A@ ,.y7 8H,,SY,ŀѠKq5ˍq<2lisL1g9م)74+^K?cLq3LGK;^ 褃' G#)'q};rT`Cr)VeƋ9Y31~O 4N{0P+E~l\ǠK tLȩk!w[,n/eDCbx]v?Mݝ*$>ȒK9B4)AOGQl' xo+j)3iža[pA.g޳n:R ntHoZ&׃豢pʏB$Tt 6@Rܤ8*F RpRlby.c<8B5QkT 0dcNȮkRͅ ESZU$qP}Je2?kPWk 8pAQ)gI-|5ZEnvQəV%]`/uwyybLs'ھl\ ~t-cOuO_k?imcYy"MkApYC4y͍P&{3{mW,kǜ>]U -ͺ ҼvA^.D%:+uLFFDC^}zi0#O}^Mj @3 0,1ic2{EX˜Yz;F|+lASШOt?=[274`Y[m%K3U  86eYOzq2+{YYwA4U\xI0A;9jw:Tַ OCЖnWZVǓS׃^3-4.:o !xߥe54ΣRF'ޮ^`p%Ug[}8'Cc՟'ѱG& t[Z - -=u 7P[kg$I'?6ɽ"#@"4e4ϡ $16xoG^jS)d>Y.Hjݔ-=׷!E}48R0zʺoGDV@>YVs1݀Og˖yo\ߺGP# DfB9}do# a\|`pB  @@]ܱc ਹ򔌒`'Q[,:nƕ-nAoDXC YFr[>A1%YG*ɮ]MWu<҉hg(,S*_QT6MKjlCyخQqX)U;Ni?>u)qX‚8^ ՕL凡-嶆mW1bJ&ߤ'lVZPn2S^5 rCGM%c~ 3\V׌`mO;>t\mdiA64O4VNاҴ9-՞4yZ*\L>I?=7t::^&Z/I5D3DQN "pi2PIxlCs SGƿI x~h鬷|RvB!EChږ( Y/iPOl,0|8 G]kvA-a[L.y<,>0U adEQmՠKLJi dToTrU\,-#"9czU/]f MkWMFμ_XygP};MgXi.{=[(Wfa-rHϘR±Ґ ,Q,"?g%Uru#wƱKQs({EҲM9,jAݚyA;JO,uWjZ)pΧ *E ֜0 R!GӳBR?<Tw+"CΆИ-xYkŷdvVԮD8w&Q,GIIT.!\G>R +{5 hѪ/dyV~a1 ^QwH髆8n@K#2XeYsMdO5=`Tiʿ*±j1i(♳i,}/TuѮdqVj: y7pG.٨p5Dd7t@6w@2}CĘ?r)k4ЮogAN) rRقd@o,|{ФIH*Fh׵2g߄h bk>!A m"[*Aq_qM@{[}{H=Ыctrho8g(Kǣ u"߹0ys{4>Ο.p(%(X7N(zZ3BsGYv& 0zrɅt2hod\M/C?өpq﷽?Yd81 ; Uǣ/ʸsU/t9pKBHbŹkNՕ3^qхq_zH:wtvy|~<_LßhىioԑU +8El8y  Uw%U>V9{Q+s2SZC:nG)è'@Pm85Νx B+LUr$,Iu0\ *9"qXְ GRG~ee`}C6(_j{)xĆ**SP0ä-8 >r*TI}b]OQ9oxi u' R_O 8X,NUoa;,&zaap3]#E+;'`MTʎ@ڏk O+;|#oz  1{l%> r_ڶ>w܅ߋ$_j2x#-(%өP: gĿPPzi**#J/ k#*8饡"LƙfM8O.;}44ΑRa cþgg99C S[mB05;Fߍ-:ccK)m*ybJ `m ]ğh y4?18WhşimZi$I[4s|K_0x{7Q⍢8KҺNߎ0X4LŇo᳒r}W @?`VI{aO($i[a{CsQ4y#Bt]g 6=̖J]-TWVW.֜'_f ,'SC+Oxsd9<>k} kHzڐhOD~z#)D~؂*Q%gDC ܰӈ'Q9DY ?:=T>e=!lFWz,Da]dﺺJ{YuU+ŷ}k-O6k >90'߲eX ڇ1ۈMeG;QkXbպZy lZ&a%y5)5-MtK-=cO].~GUt@aՄo6afڨ}hqVHkFjY~+g&YbR}AgwpGwQkIOr¶O»$hǙX(Zx?wηTPϻ&0iB]d,D;|~Sŭ+M[aZ+yѬ:/tn""vs=;$T r?#yx񨕐_zLJ.3Z'̗<r7 F4#1-EBYia0:.f~.[Ƌc@T,zCrWWWU(MN8<vtԻ7^0/C8nx]ur<}_DPm rpӰ& $78 )ڤ]z "$x >-jq2u `M0xс uq*J8 -Ɗŕ/+x:GL ©&M,\ŴAlR0,,w3Y]I ~ Z?nmz..PJc跏GǧGgHXC(3ή2 QAJj!Ѧ85/>n_9o؆%p~9QWlZ\ Mg+s1K`oxL>+ %Lom䳥ֶ,8Bśхu^/ \_*~0MSV(IGhV[=IT/օ=I*T0,T;OtT+Z0meų}oS>>ch鵞U7%Yo=qN:Z#E), xyyk>-fPϡ4b ELT)U#UA\RgRaJc$5K*X:w|u6!]{ld>6fٯNG샂oS!kݱUaL$G}U]piPI2ԳѓU]6oNwm]::6m#nmޝi&b\o11m[;AYxdV8 R!<+r5nS{4^϶ڍmhXv25C-3BW+reKVNPE+>ԘG'O''cI ƵUɍu"XM3TY) 򩚇Hjo_J4vE7-5Y#C!%bq&6v MT {RR!eMlFTu܇'.{Gŝ?4sugFL\׹Tڗ8rsZp9( d ֘l }ĸZ8!-Xb~Z FUUDmFM< ^'nl楘s[a?x>~bąavO,L``=AtIf<8mHh``8,A%:^o>%DN HFwH~i:ȼzmHAn8.+Eg-#Xhse8d#ď9-{)JZh~3]\#<4QhSo2zp&6V]l,8`0 țY0? ,MHy^ txֽǞQHvE 4}}HԢZ!!W ޅiKfa?"ZlyG9śˑd4t2fRgڐeކj\qA ҫ85`V&IjϗSa"FR>Ip"oѵ Dy/<ӧkVۇ.,^C]rZxo̓4xYH`3X.@)6!g7)pdا8PQ}:10y0l9h(/,~$O@ ̞Ȗ4OeH|M5L1' /H\FTi?̊X˄{ipFy?H8nۢI! K~82P RD:v2^+'-q!0\=Qu_x)-\g5w\A/^52J=K4KWǪA<QmEƻ&tL&DrG^LiR$D{FgY;#,Ee]X*ӜH>OU 'Ff:Uy466PIU E<{I [}-iKyCUҊC|bsr^fqz 5ɵhܒN@%@NXU×mdm!7Ye$tyGغ%U*30K4J~^񢭳#\ޤv$™$l=_1p;>_ƴk+o73m~EE 'j?"&th<F,4Ȗ/>JcpÖ"Cg֬f\I}Pp:&!z8N> FIĻ '.M =8cn8 ]th.¹]/~5;>#ѓ_`' rpb6;):aIn(YrA"l'ia3^-Vc<:5$A˙P0䯎lh<y.l%h;7ӟ[`ZpffWR XvebHh4PI#F\Va)% `9[k' ?R*˼Yطϡ. GC2A DD= ڱQQ H9"4PTƧa(0=d3KϊJ!0D\ژt}aKYkM.3]' gXĔgLpnY6Tʘg tZF !7]3Q)+6wai%1&"0S)~cxx~rrt;ơx-/$1zc/FQٖanrJ})Zӈl/@psF#$t(eeb}rŧUZV ~A/Ԣq}`bn+a -RS0n^mw/z2;.\,nMv:vඬJ(gӻ0Cn5Ft&L{IKzG 'y#]KR) 2^рQFU94 c'Y-/ Uv  4b:itA!Ъ[8 ʝNdevYc\ r܏W>j}4+|ŘբHb1'Ep*+QVI,w@T@ hRR ,sk$hq%W ?J;>,GVYGO'W܄Y'sK~/ºGJA{wbVr$lmloxf6~/-(\3(f&KDw, X9b4:9X\5'gN[DJ i^C* }f2"}j{=QC#0 T8d`(&1 Y !lֿ jp ?t"ȧ$8 8F;K9soJ&ĻEyps#&^@ Վf—Uya$u䛊2E.>~dAXF?mOLٯb{.#fnb}{<^ܴU-#岖{l20@_3W9xH} c#7.x%ۡk%^F'o ޙzWxLFP>C/Hj1KAD*a,y\RWnv9%0 ~ Ez=Pؒ~U JhsMNj6.Pl%q%:<ɢ9f/q;nvO4fR0[mOf(ΨR\%_vq֝(Q*;,]# 'd@4,ӪwfOӑã :0JpS$ҧ)1"R|*#pH/*w4^_mPQq"&pf6#4m)~M7vPPs|<@OQܽm7 Xum.$wF1" M$FEzu,7uq/Yr[ Їߝ@  昅x!0=jC}`| jj%8.M/\B .#46`c*P_x׈]Dx `;{.Rs4 W4*lvLHWt@]EXd ,a9*>% >7"BX Ɗxf:V QވKIgV0<<[31>lc ]K:7Ƕ`헄ȵ#wFo4R2Yqȳmn[shp"% I]a{]`o#ą1^?X$!I"@nevx}74p齡Z4 q;Gә F\'%P~M1~24Ĕpm~7a x:! 6cwu FzIF0uXܢP,d^{Āl0 'fUA ׫~kdB u* XIeZâ_ [eR3r6G`CZD! y)ة.~/ y*As5ͪgEPp$PJ\09a\4M.#nw0U%,82!>ir8Cm9 ~CM _N >7~c"bq$YR\ H𿠯BK R|؍UR0)_hn8J|.s&t@1u["v9C/͑N~#?W ohkh&&ʋws] =/o,PLOcGIf\"նh{dڵ^ւi|OZ躂!uő@D.oCPmD5 OK`Tt$`G$J#hȒ-N2Op) 45G 5#(_ќgU׉[L{L}OsS.o^olm[8E~ G#u3:9KQgjbN)+A"LNJ*%9UgР5Ì@ vY ])Y6h g'1SvjԧsvzJ>Ti+s5e~oݺ۸w X!e)'m,Ɏ%o"'$&-ɉy?KN]4Fwd;3J,BP(rQd0$g28TP.py̽Hv#G,HĔr7*%[^0!%Jqa<͙m{!L H?hV$},KxR-\CI)G*]hr\Bۛi˟*3x`=&Lw<S) gz2-F¿JύkVq[WtW$Z>jk}\xмhW_q;$s䇐,1sfłŠܑ:^*ookr<55u47H0hkjE몦G%dˇ%f)@xR]:Ck:C5O흼q$LNƪOBȊ!)׼m1JwApK>=!h}K>ext/0o)\qvpSlrL(9٢6; TXP싰Y*>]Q=r{##ό3UK:}nǍ@a?YW:|¦HH!\"T5kyހ"Ac|?;0`BeE!lpBQbщiI녫qo"CuδutҸwq9Aن:iU ̃?Д-&3;GzeLgb|n)]5˽f?f1޲yL$(?ͮi**s~L1&b bFE$)/Z!7'5src6J9/2s<&?"PLxYV\K:kUp}{|87,0rwuXt5,^hdKtLON}wat4\dea0e}=9΃*ue]OUx4'uć rH{bq"-1ho>U߭Ƨh(fn)>E\G/3gI@=?2af@$Q%}1/2hxy lVRq\qGKeryHޱMyYGG.;gd54Sӌ/+d nX4]'FaطUj 4y5;h2gҮg>W*mԁ2U@߆yb܍CY&qVݛ.fYf">bE,ƙvdκs3W(,q4p``ct;|K&r-x{p )hީ 0ƌ*Ұנ{Ω5 jyI)_!+ cc+xW?3˩cg)VCRQ0ʌ1JI{y 2/7RیlJ́LU}]'Wk5΁Qy8ѝP}+YݕI,mBD0j-o7(4SJ]d\l[\[|^8X'zdji LE ;昱V+Ƀ1]r)kjQwq" FR"۟TR ST29hE8aG{qNP&8:1dCΐ g凇,MX<3/"ЉM1fBmRFLڱt(q 롕K?S>`XэBZC}T,9֐w>eKy)kQ4.$A)^qo[LƆ9-d#FGyPNpǙEsϊe 2Ğ Q@.!ĠpM `!T_Fj-dc @S5Ę)BpI:@dڨ%!1&I-MG|ѿP \;cPEV;o(tGRSq$izYPIy t1]#h T6f J1 Pxc2* ÎpCcnYI7h|e\*(, +խWlDK@Zg 4G9V/ڿWn/ƽ=m"cw3T'oZ}훌:n!m=<> ݆ 7⽣gS9\5 sޒVJ'h\Fғͩ 3HxTV '5oH[gj7.Vjԑnkwd0_7, 3rGY{Ult`, 31 = V:Y2BH"!Ak5lKј9;ӄ šc8 X6K ObbI84W,łS=Js8pp^OҺpP pAluw Z'lydvܡj<=MC>Vzhُ1*7f?6=%l!On|q,6 91~x(a=<0 ޜ9=f_} 7, Z-L)&%~L~ \Ƭ!&J5&m6IՈ'w= ~w{xJ"=>'8Ó3$֏upxӃ5ݿA Rdؘ}q򶥪=lO=:l"N^ShK/:8}q-7oOߜ4 }B3x$pP jFs!y{z{as?<ާóC@ё*}c0W؀ m P 8c{ӽ@)T脩/[8x{ FƽM&)< ~q(O/p8V514o3`Ӄ=j`>e8 w_!&# t| H?m8:9#=;A.$ x:Ew=";#F^:8uOtzOϰ_%hڄfQ D&BP6^BÔt"$6 W'/b#Cl` [1 X݃%tŀĴpK1ca={./uѬ7rF`sZd"4- ()Dl()eZ2C%`t߄n2aFl4EMaS^>b9;=$"'WjZs"payֱaw8nC {AiO12,j:+H54!A=+̠eM3OⰫj8 is DX! *ٱewTt&N뚸k?_)`UKqmǚ ًWFScFok߬-%l󦌇Ħvph,Qt`>;ۢhUߍZpȲ][Vmrl5Ms>KF/w' .Qn$m2u^'hBYI(6m]!Ӆ@QZx0ػ7p@ M;l(ڶ eO A:Bh}ȃ ЩJJd2b`do9,`EK',ဉk鵢9wа{kY_n~oNPpj>_gޔ;ioc <>me^!=KC΂ݟvP,vy\RS*~ 1e_NąAS%°(2Aw6dG{rہ|?/2cA7ghI92yș04x0{&8=s*C~=}T&:Yk<1o[25C<|:gv׀ۧޮ_dEvȳz:q:|8+qi)#j(9 )v3eO>ZȂkX0r A򧕺L:Ifqޙ}BBf';2:ݬg՟7#0λAZzl'Rsfv,D*#;aZ(%v۴Y@R*{wxL ^Af={iro@-4^Ұ/Hrx>{wN6d>Ƽ`wa7܈e5ɜ7$S/U؏+ ,yKZP;{/w\l*U!]d+G(KU7}[Wp*~Y n3ੲSXcRO Qn 0eX5_P@BؓU[edgǙ M_dg*a]PLhSB5ye,͑83- 3ПTVYEO⿦aqr[kRuN{I'XqD`WtvL`ud ε^8I1n+;hk+\ j1m/6/%mIZߖ [i@qR.=N3O?6Ϟ~h{R|C7t.RhF=_v: OQ[JGsBz>0]ag};,[ۏCFq˹]eښ)lϻ_)N/ڍ^TWs􂚨bU|p&G+sslZx=9Z\[c{A' o/ Xt.M^NsUpeFa)5(v^ RQY묣릲V[wQ-@Sg*'-cVGǣq  8X2D ŝu@` k=•WbF$Fx1b M7\~@KaF}4 y#tӜ[ojؐl.T-g 駬%d&h᝷ʶ?<5>9E\lvxp=C/,#HA|$AA|$AAC Îw!=Poy]q&T7tP* 7F*Vq`+ݔr`˪mnSTҊO5TcΑ9H8@v䲢ͨ,pNg\l-LgJbWf+3LBWYwi}߭$6x 3BWFrra[אַ]tFJKm#QUEPINZ,u:EHep&%ɀ% ]zpSӃPdOVC0LKf:3ߜ3SCs5e` xc^_豋ɖjzX|z(rmO`bE@_ s]OEIlӭV(jD1&Jɘ]R ֘g# RxT:ebET{JfV]Bqڈ~cvu3VyPJ-D*13:h#,r](y.uPRm!]%/9 -BW;,&`(ƓSxt Q_晈z})pư3ca"G; L̪zuH+I[`") {F- lrRI2*Qjέ0xXd98gXE4WN{Ul9E`sRi- |TIk,+^AUzU i嵏R4RBQS. r[o)e{FCo@JE 1,֭uȃ:!A!0N&i<3 >ϰAuq[Eo0:povQ<&[] WSL,'waHD%uzSE,8)_AB:ᕊ ,|$=݌Y&)K6_Uё^缔M>sr2*?Eg' Ny ~Q췔K&+۶0h0%q8bIH:^A-(؉#kURhwO9Y1'3*$PjmVD2]/LdCFZɶߊ\T1ZA-x/kABGHn3`ݞ2}AK;hi$uL7LF`pfQy׮ {9+,3jQ&ZI,pN_]3w3cA;PnG3vOƏ7!~[تllDO{k- l<17CMC vpq=.``ri ʙuyjqp5tx:fA5ڋyp<> gIqr#h87ެ*`EZy'@5ˑC sh4A+)ΌѷJD릧ֺu^5jBwk }7}4Skuh^=c_jb}h_|7oPK_0%9zh_ܤX`sQp28}K3v-)Lǣ862/Cu)^bo8B4<}FoIR!VA xGëW)BdJD Z\~9^%t tDlt&AamUp1 \3ЕPS8!|G7dIovE$!4 !G[wϪAΞomnVB6 qEUj`b4|4%텊ΐy㕩^w2=ck@Ѳˡx ԇD 'd$/fjXij#2ApN ӖȈFZt ,u@"(pu)߮|Q efTŎu Mm& &Β "QZa[Ovf&JOHd'S =g'!6~C2ƶx=Vv~%2~bRV&s-zf2aB6 8L1Ɩ j5;\[sz>]̍YSPˁu7Q5<f%P Ŭ8R.-Fp]o2snf >~,XtGOdFT2ÖPIN8@cϭ` h?1S'(Ra843DvrQ߲y-1rtJDJ) n[D#ݭ:~_OxxvuO_\=MuO]}3[7~~0=$4PB:9lTJ@&?i&|vx(vׯᆜuN5m^LZ`+~(wC\pĖzGsr eS_IֿE9|+"Y`hN.Z!G2M3*v84h÷l8b+C]r#4\N7'Q4َ=jf3ٍIˣ>:HƺVuY&d35]Ie]t2@r<Nwڇ1g2*dn#C o37_>08/gQi#[ZʢT9:qpRF|7ƸV2Q^J9F?YF uw (Ҳ8-Τa&7xA7#@}1rdKʍ|i,>xt17l[n5O(aו~*U9Uv&e0oDOEvAE=Aܷ? 33).q}庚E5蒓 y/EU={^E}#WgxQV\9N<3y"q%H:kTҰtu[@c&i>s$cN+iٍ yx5[PR<%.6k5C]M84}zn^*eo!2Ao<5h%[HdAbp7DVĝ"0%Eb I,)'*^L%pcIaF@i,~#b yQd(Z@r"Y#4B̏W‚Qȼ{Qy}|;o6iDjpY+Mf UD9}hdRAp$9a.FRDRxF}sv9(F1;&Zx3_P;5g^VpGR9=q]slG.|cUܔVdUdWk&s:vrh0*@#II|EAQ%}'DdnrLfci7_0cQ,h{w ,>d'3 ҟ +͕'xO89mUv "y?F:uaiԕZS?-L߬S9:Dj 'YqG=ʭA]sXP3KzˣPG[OXw_?98=|MI=]">bѩЃ6pJ|&帎}6E5YZ9Dӭ~*N2q"W߷ؽ^]8v1| ́5AE4ujo_8ZzF߶sCnP(NI./U'/[ξsVX P({#%4jȣ'hҧtYOJhD72A#/&,u`Eʔ`z%6S(z%8Rgh>8dTH5y_LmR'ܼSX\ oGc:jBiICdD.j%Z&dmoٌ਄*)zϖ/xmx?D@4Q-΍;x[rްP;XXHɉmƆ^;8|ΎOqx1a1,Fss LV9My+J6? ,faǏt282~NA /ScEETo QUOh^2PO9VKCf j EoX_(4_A=.˙ǃ#xʎ;shc4yVX^`6M0 =8`F-u okӼȘ6G*g]V[!X5*VAS vwApw+)H'FQ4p 3h&%l evpk%cC}.詥#uto XιsTU(UI+,aRI[YCCajռXxak(&|KU۾ه6Zu祦9aO4 r33mxoj^TQ!t*BWXzA@ *2Ï "!yFb}ՃrHtF\#o05s V>q NJu#2P<8^WLAvXÞ[6䟇YyZ;fl-649ڛa&Irth4O7{{APCWf~6يHeŠ2ZnҀv ~s'v\{FW҇ZcCs/c' 1WcfOL&?'k;غw*8Uj %Z+yUZ| 2ީgxib8ZReOؓ(^ CjV-].̀FR_ j,VM76Z*)t5isI  $2'BuQ\'X+!<1}4r7:y$/@9X?GtؾR*J2+Sv4T߀/~nu 4:-a%_xr/B}G.6+jFt.8(sm]UZ$up|G&aٷo z;|Dh=OaƽkX1"*l$֟I8Jbx(}s锾mDc>;9QfzϏԼe_I:u/'%&"#W[PzN$hX.w&j?eA'h@a@n:/)B&_Bc˜t֏g۳88n>l ߁h c'e4( SPYTL ' tӉc .{`;FO?Cii+ cd❱]ȈąO0cX1ɆV1y#t[T'OEJ;ktO2c.rxDA1w@JkB䵝41F-CU6mN'e='zn޳܎uDcOծOԟ$4|SͻO rICXد&7b`ߞ1wJivNZwQ4ږ #m)g4ƔuuK*, 5( w99?L1sH (}z{,xTH_!}؂5hѓ% o^t-[ESj/-K4*d>ۋaH5j |+L4o^ ^:8\x.,ҴM_UnkWVlMoDZ!-TcS 1$DHnׁ.Dm=ēӿJ :/4Θpe%=Rma+*zWv+ʶ_ Gԭ؍(ѝ%v% @ԉ͙/ƽ+J%ca_+.9YQA z`5w˹Y,(_ЧBB^.OeUgحiz PH0}3 lڨ[JP iN(VoVW0!!扂t QIҨ~(;0K~NQEOb>U ASY+cEU -f ӽm׵5u\3T荌1y,ٌ{1Xŕ% x'TϮ}*q +$Cg?((m/I:? UGT|W%8}tbMp`밟9Q'Lݙ$)2>-UVAfo̓zl|-ǛY 0ޫ]3i%xo.YtN)k$)_5W :Dvnc~Vvkbl<}=;SkB\ke}p>gHZG @UNXƌory6a'$K (abX,t&ǵ H8I(-QʜWflZ*PV1X5LwzWH &|ڹݯYzLaAFS lkJRe+%$rs*'cOr\\Ygv(}u1Y J >&SJ7Nh3DmʳF2 Feq!O7sjva4!I) 9<3ϧx!0n{ >f4XS!.с7ID&=.ǛJ+2zgf坛CA{#섹uڗ"ᠬhM"JNVfxo- %'cX98@~}2Om^)>uxag'`DwcC}gys l(#/Gc=A#jwx;q K+& /nLiZsz{^&m'/aTFדª!A@o@g'޶dK25_Qx(qOgXzʄ4ǺI-crӲmhR=K=:芮^ KrgиQn:eyUVF:#A{x=S:Rq&eUo{mT^.V"ށ#ˑ-~gc6!r$<Q;f*2V]]e,Y_Eow0uOi 2F'GHeH\53ᖸV'#~v\! tBXC隢\f3R*-p zSc7SnBꛃQ#Knqg}1Ґz8:9yC0&9cE?X< ~Ӏ$1ٟJQ+*BF% ',\R6E> [ J㫁8 Vγ-(eH:kun˞Ij;hGJJj6骻' ;0Xh%Meٳu+."šaО0 v UQk lhH^lYPr߬o[Fvokn뾘.j=Zm{ZpSr/#Wny/$hjZu[av[%훓8Qt_ܛ07[YfEePx'!J/i2mo5NÏ "Sqh 9To, )+iuǘDjP{<|fh\P .4l3ask}Ӛޘgn۝28YZ7١ w/X<5@jF,GݖkA ВIƼ_UKJ* 4yC#*,]zpClDhoқRS U=4F{KٔU|6N3kRP>uf_&v(v;E!X;xJg˶ߏ΢J-8/@3Qr̞ I/$cH*b邱EPRJP:̞9 wgHeXm t\a5K} 2hUKoFh\H"U-u3LNԱ״ cJ` K7U_ɁLSH&ݩ"F]2NmRP/{dRRDuHs>U0&9\uK݊i0Q{Zn0CTHcx_-o -\MK@˒cհ+ڕ={Jg.=r܂M}cA݇d\|Fooʬ_?߾Zgy  <|E +*OHTc0S5U5ɘ6`qmuRKE#|[[:ti *qD;۠P۳DOCS3lxz%MOO[9{;2egA8?ҁiץ?Ӓ1Khߥa> f)ӜjVE3@3]9[mV{M`hqWIC1 ((=ٮKcF~9}}[r 2$'o 377(P{j p"I,gy1 N/H$S"ݭ8G dxk[ 鱃9زJA76wYd[!ƐaW̼w/>J<=9 |]y2O~G 4sM6NdQ:mLaQBʇ\j@nxȥnv8S~=7JPQ=?̨9Q1uU/0+2YaBTre~|CSL 2Orlfq52̋9Tӓ2MzJ驄-#aΦ_ĬKW-d!cyH)6f6'0mbeS0%+k)rh|rLdINK<0FY[̞:T1x'1fugS29 Mxhl;|v$ێ шA XxHsj8$ڂ& =\NDnmZNMBݑr3Sl]}ڻ+_#]8^v/=qjǢ`}$3:b[lƄ{;.|5d9>lJmKcHwttZyx9e KfQ:i⟢vȐ3)` s),HqhQXU'6I^h_I4d$E[>][2mĚW#0_ѳTt%ߍu n -[-MS7y =yG7ZdjG54ttT .DA0t^[U_:K4>TszR |YQpV'Vb!0&G:LeYJ?h6 SҫZ^~=L2M<ȃ Θz$6_L%1ISuʅ8ctV?$ǜr #MrSqLH)N4Mfd08v͇e;z$U U3D7D7(0 w%^UJde5:e6AlcYs =RjqRlUXm$LpwboDŽ/0_P'nȼJ3O"1l,I4&/\o"G)nr__`6w&[\s; i;R|LYlWPZlI8|RM*:-Cm[!_47Iyn|2~&RcC4n["C=$C2ڿ xKFjWq5\@#R%]_xSu@72+4nrź)a=4BBЀ|ɴC C4OoGE_L,ӱ6ɨ~Yݯ1^#MC2}Tk.ap阨`x9MT;!V(gjI97|̶#6C~\: <CUs ԿeQ;قpviG' iUl$QSy[3C9*^BHpcn*:xc 75alFoG]f'fS׫MT-*f3Jb ^-a1ddɇ؉BA5 *dtOlˑZeWاQnujf[*.c$qC#혤 (#⯫MTMZ׳QA)´ N I0M URz/;ɂ/ZAyV(<%5H9hOΐocF,ej6őe.u`5`?g}XՕb*B iKk JQ~˝y6{@QQ?1itJKUCj`ŭQ^ U&AZScN9C/٫E̬2I^@Өd:+  @/ )mG])[<HM1hM9kN;[Ƕ}VIj06EKp F]䝹@djigz0Fm}lplq7U#5>G-Ԧ+XAɠ^=g۞ <֥GKo VVѯPo 6kXLjL&+"EE$ s J+#L`y"m[BZn+p dW3LYXY $W(q}z7@Qmy -,3.Msu`J 8n Ժm6)&ζPxL[l}RKDY.R"B^ F?'(c.܁nk/޽:ݗ;rN \dA ob sDlZvPbzd~%(9iCʃ볂F MPU>P@ߢ+sOnVo%s[xFp< yKan".j)g6f[([[\s&ñmOdbB;6XI ;nྲྀ|i(:maRUE~ס1x'\J3 ɪC> mMe`L:N;Z͎ܦ~O8Fv9QI./2xwV5%#*`x(`&O^7EIM9,baI(HƇͮT| 'Sy6nl ;z6ElqyI㇝!j,y Alx\:Yml9;yen uz{68:;^#1QWKZ$s6`yn3g/s=ny#55 C٧NR,6OZ85YoS+F̖I"z<{^|-WpoF{nTfw=ag/L&'$Ͱ6VYtmll"wosYnoʯ^r$3w=SRl };7!>U_p8;CEE>US.`4ks03~_~wܛ5`"wNKQW\LktagКj yBǥ=ƦsY/Jptn%颹yblFk9PY9lrMub#nKX >.U yB|DQ8(2mˁ2`k2!˃VpGGRzԡbJP& ;~ u8wכ⻵Nq57[-mw`*P~^o54^AqBAZ׎Dit̃5 JΫc-+a )nLVPScㄹlVTI@{nt.gT/(Ϧf)78=ҝܚuiӂLۘ6%LYbL)=_iMF*"B[;{F6|:>> fn$EJ4to ª?؎+xx@(@>-^no|m4vYA67~/Ɗ9VX` H `]BB~xٜhYl45>MKqѿP@L8Lu6fc3'v d,bЅ0_ >貢DK)s7dĨ)&tOh*8s^V-{bVUal9^ ؕq`F0SecZ#_;G> ͟?9n}>Գ&ojIlA( '5Q z}sSUt^Bӻ!= (<U9* F.̜b*H+HT.9˫&y}kؤGcg@\{"u?XKy̥e 8b;[^QVz ¦jO%N&'%EV܊}Ra=6anO5U0VsMoikR\BVs3իt%1/^йuoo4IycLO,]yVs*[te~U2P{ABZokiC~Io3)zҮ@å"􆫨 5d2J6VW;q;1EXbW1nUWw+uԞR?W8JogedF@<*RT]b^Gml1gOg-ܵx:y%7 X6>W94yfs)o 5Lbaq(]OJ:P-nWH"1Mk"3l# J<Ԕ;Tv m)+N9}yhAQqݙJy}1tjYTfTFY{zW' e=KAMf(ְֺSTR2/RzS=rfd0BnD)7HI,J:5vW͖X L-"{7&~Ʌ:NSy8`@})Mvb6J `ElrP\T-+YY/#E\ny?mdnшXLf79sgY) !/XWt%* GRb6AOY-"|^e`K)P45mYO@!{Eػw3 Bԍl* ݪ9*TדtcdGҒP uoՐ|?[ק \ydδw5xrHY^]cu+r0.i˷)pn.C沦Z۬ͳ/ঀsXh9SޗNQv+E~ sy.ݹ¿>{116g{ t̊O~#v<0#~aʛmlqwbl<8_U+SiAA1zzxdvڋy"[IFc'wp[dXP'~7~Xgizx^I{s>FvR0 -gk5Ͳu2,\֜l xN 7[+7 Vdd:nOfϑ `kQe^ ,o[(nov,PW $44N۰ V(ONI8e"2!@V8fm1׳Tq/-@Tމ !                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     8 ` l  Y!" #$ %& '(-)*+, -.2/0123456l78 9:;<=> ?@ ABCDEFYGHIJ`KL-MN%OPlQRSTUVWX4YZ[\ ]^_` %ab%cd -efghijkl mnopqrHstuv@wxyzY{| }~Y0  -Y-% Y T*l*` !l "TT-T#$- %%&H'H(Y)Y*Y-+H,-./0  1234`5%6789H  :;  <=>?@  THYYAY !"d#$Y%&'(B*)*+,-.l/01234Cl56789:;<D=>?@ ABEFGCDH%EFIJKLHGHMYIJN KL MNOPOPQRSTUVWXYlQRSTZUVWXYZ[*[\\]^_`abcdeT]^%_`abfcdg2efgh%ijhklmnopijkqrlst uvmnwx%yz%{|o}~4lYHlpqlrstuvwxyz-{|}~%*2dlYY2**-****Yl4*****%`   %  (4   !l"#T$%-&'() *+,-./01 2345d67 89-:; <= >?@A BCTDEYFGNHIJKLM NO2PQRS%TUVW XY%Z[ \]^_`abcHdelfg-hijk lm Tnopq rstuvw-xy%z{ |}2~2Y-   NlH   Y!"#$%&%'Y()%Y *+, YN-.T /012Y3456-H7 89N     :;HYY<= > !? "#$% &'() *+@,-./01A2234567BCD89EFG :;<=>?H@AIJKLMHBCNOPQRDEFGSHITJKULMNOPQVWXYRSTUZVWYXY[\]^_Z[`H\]aH^_bc `a bcd defgehifghi jklmjkno pqrsYtuYvwxyz{ |}~lmnop2q%rstuvwxyz{HH|}~Y    2%     `@```  8  l   %%  (!" #$%&'( )*+, -./0 *12%34h56l789:;< =>?@ABCDEFGHIJKLlMNOP-QRSTHUVWXYZ-[\]^_`abcdef gh-ijkl-mnop qrstTuvTwxTyz{|}~l !"#$%&'(0)-*+Y,Y- ./01T23456l 789:Y;<=>Y?@ABCDEFHGHIJKLMNOPQ%RSTUV4%44W XYZ[\]^_` a bcd-e%f ghi jkllmnop*qrH*stuvwdxyz%d{|}~*2%-H      *ld !"# $%&'`() *+,-Y./`01 23 4567+89-:;<= >?@A`BCDEFG HIJKLMNO`PQ`RS-TUVW XYZ[\]^_ `abcdefghijk lmTnopq rs(tuvw(xyz{|}~2 HY@   l !" #$%%&% '(N)0T0*+, YY-./01T23Y 4%56%789:;- <%=>?@ABCDE%FGHI JKLMNOPQRH  SH  TU% V WXYZ[\] Y^ !_ "#`abc $%&'Y()d*+efghijklmnopqr ,--./0123sH45tuvwY67xl89yz:;{|}~<=Y>?@ABCDEYFGHIJKLMHNOPQRS@TU@VW                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                %  ( Y 8 8 !"#$H%&l'(`)*+,%-.%/0%12345678 9:;< =>-?@ABCDEFGHYIJ4KLYMNOPQRST-UVWXYZ[\ ]^ _` abcdefghijklmn8op-qrTstuvwxyz {| }~*4l%`l HH  *H!--H"#$H% 2ll @%&'(%%)*2+l2 ,T -./ 0123456789:;H<-  d=  l  - >?@AB TY !"l#$CDEFGHIJKLMNOP2%&QRl'(ST)*+,-.UVW/01234XYZ[\Y56]^H78_`T9:a;<bc-=>de ?@ABfghCDEFGHiIJjk KLlmnopMNOPYQR-STHUV WXqXYZT[\ ]^%_`%ab cdefrstgh ijuvwklxy`mnz{`op|}~`qr-stuvwxyzl{|}~Y     HY*   ``YYHH T  -HYYl  HYH       -*       H  !" #$%& '( )* +, -./01234*56*78H9:;<=>?@ABCDEFlGHIJKLlMNOPQRSTUVWXYZ[\]^_`ab*cdHefgh-ijklmnopqr     lstTuv !"#wxyz$%&'*{|()*+,-.}~/0123456789:;<=>?@A*% 8Y`T  YY(%N    H HH l            NNN H- !"#$%&'()*+ ,- ./ 0123456789:;l<=l>? @ABC DE FGHIlJK LMNOPQ RS-TU`VWYXYYZ[Y\]Y^_ `abcde fg hijk lmNno pqrstuvwxy z{|}~ ! N"-#$%&'``(l)*+l,-./T   4N0 123 Y 4H567H89:; <=> ? @A BCDE FG-HIJKLMNOPQRS TUVWXlYZ[\] ^_`abT  c  delfl !g "# $%hi&'j()*+k,-./H01l23mnopq45r67stuvwxyz{|}-89~:;<=>?@ABC-DE-FG-HIJKLMNOPQRSTUVWXYZ[\]^_l`abcdefghijk lm nopqrstulvwlxy z{ |} ~H-  @ l`d          d!"#$%&'@+ 88`%l Y@(%     %84  !" #$ %&'( )*+, -. /0l123456 789:;<=>%?@AB\CD EFGH IJKLMN0OPTQRSTUVWX2YZ[\%]^_` ab  cd ef%ghYijkl mnYop qrlstluvwxyzl{|}~ ,@ %`    - H!"#$H % & 'l()*+,  --.%/Y0 123454%67`0 89TT:; <= >?@  A  BY  %   CDEFGHIJ KLM NHOHPHQRSTUVWXYZ` [!"Y#$\%&]-'()*^_+,`X-.a/0%12b34cdY56 78efghi-9:jklmn ;<opq =>?@YABCD EFGHrsIJtuv-KLwxy MNOPzYQR{YST|}~lUV*WX*YZ*[\]^`_`hab-cdef%gh ij kl mn-op-qrstuv wx-yz{|%}~Hl``H<*Y* %d H`Y-Y dY%@N+ N8  -l l l %%    H     88  `Y !*"#@$%-&'() *+%,-%./H012345l67 89:; <=>?*@ABCDEFGHI-JK@LMNOHPQRSTU*VW`XY*Z[Y\]-^_Y`abc de fg hijk lm!"#$no%&' pqrs(tuvw)xyDz{|}*\~Y +8 ,-  `8` .`/%`0H12345678 9: ;<l=>?@ AB`C@**D%YE*YFGHIJKL  M N 0lTOHPQRST UVWX`YZ[*0 -  -  \]^_`%`-abcde@f !g "#$%hijklmn &'o()l*+,-pq./r0123stT45T67*89H:;uvwxyz{|}`<=~>?0@ABCDE@FGHIJKLM`NO`PQHRSTUVWXYZ[H\]`^_``a bcdefghi*jk*lmHnopqYrstu`vwxyHz{*|}~T`H*%TH*H                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             %\ `   `  (  !"#$%%&l'(()*+,(-.%/012*3456789:;<=>?@ABYCD*EF-GHIJKLMNOPQRST8UVTWXTYZ%[\ ]^%_`@abcdlef(gh8ij%klmn op qrHst uv Hwxyz%{|l}~ %X(-Y- ll - `@ !"-#$%&H'Y%% ()*+,X-./HTl*Y0123-- 4  5Y  6789:% ;<H=>?@ AHBCDEFGHIJKLHM !"#$%&-'()*N+,O--.P/012l34QRST56UVW78X 9:;<Y=> ?@AB CDEFGHlIJlKLMNOPQR*STYZ[\]UVWX^_`aYZbcdefghijklm[\n]^opqr_`sHabcdtuefghvwxyz{|ijlklmn}~opqrst uvwxYyz{|*}~* `@ %`**-ll-` 8 %*HT-l-*  lY- ``8 l    T % % !'"#$%&'() *+-,-X./ 01 23Y456789 :;<= >?@ABC DE FGHIJKLM-NO-PQRS TU VWHXYZ[4\]^_ `albcldefghi jk lmnoXpqHrstuvwxyz{|} ~*   4l- Y !"H# $%- &  '( )%-*+@% , HllY% -.H/012-3 4567Y-89Y:4% 44%     N;+<=>%? @  A%HBY !C%"# $%&'D()EFGHIJKL *+MNOP,-QH./RS0123-45H67TUVWX89:;Y<=>?-@ABC*DEYFGHIZJKLM%NOPQ[RSTU%VWXYZ[\]%^_\ `a]^_`abcdef+bcg dehijkHfglhimnopqrstuvwxyzYjklm{no|}~2pqdrsHtu-vw*xyz{|}~YYH%YY Y**2d2--d Y-Y HY@  l l l`Y-%    X  @ d0* H!"#$%&Y'(l)*++,+-.-/0 12-34  56789:-;<-=>Y?@YABCDEF GHIJ0KLMNlOP QRSTUVYWXYZ[\]^(_`abcd efgh ij klmnopqr*stHuv !8wx"`yz {|#}~$ @%&'()*+*%,-./012345+l6*789: `%;<`*=>?@ABCD EF`GHIHJK LMNOPQRX STTUVWXYZ[\]^_`abcdefghijklm nHopqrstuvwxyz{|}~  (2Y` -N 0l l-   d    YD4 !"#$%&' ()*+,-./ 01`23\45`6789:;l<= >?+@A BCDEFGHIHJKHLM NO PQRS TU !2VWYXYZ[\]"#l^_$ `a% bc de&fg hiHjk'(lmno)*+,-./08pq1rstu%vwxyz{`|}d~23456789:;<N= >?@AB CDE F     GHIJKLMNOPQ RST-XXUVWXYZ[ -\]`%H^_`Yab cdefTg`hijkl mnopqTr`Hs tuvw xyz{|}T~`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        !    "      " !     ! "     !"   " !   !   "   !  "    "!     !  "     !" !    "   !"      "!     "!  !    " !     " ! "     " !    "  !        !"     "!      "!    !"     !"       "  !   " ! !    "   !  "!    "   ! "  !  "      !"      ! "      ! "    "  !!    "       !"     !"!  "     !  "      !"  !    "  !   "  !   " !    "      "!     "  ! "  !       !  " "   !     !"   "   !  "!    "   !   !   "    ! " !   "    "!   ! "    !  "      !"  !"       " !    !"    " ! ! "     !  "    !   "    " !  !   "   !"    !     "       !" !   "   !   "     " !     "!  "    !     !"!     "  !  "!   "  !  "     !"      ! " !      " "  !  ! "     "      !!      " !     "  !   "    !  "   !  "  !   "      ! "     ! "   !   "   !"    ! "      !  "       !"   !"     !  "   !   "   !"      ! "    "!     !" !   "   !    "   !"      !"      ! "  !   " !  "      " !     !  "    "! !"       !  "    !  "     ! "!    "    !"    !"      " !  !  "      "  !    !"       ! " !  "    !  "    !   " !    "  !    " "  !    ! "!     " !   "  !  " !  "   " !   !     " ! "      "   !!  " "   !   "   !       " !!    "      ! "    ! " !   "     ! "     !"     !"  "!         !"   !"        "!   !  "    " !       !"   ! "     !  "     !"       !"   !"    ! "    "!  ! "      "   !    !" "  !      !"    !"  ! "      ! "     !"  !    "  ! "    ! "      "   !  !    "  " !    ! "   !    "    !   "   !  "   !  "   !  "   !    "     !"   ! "      !"  "  !      " !      " !  !   "   !  "  !  "    "  !   "     !   ! "  !     "   " !   "!      "  ! " !      "!    " !     "  ! !    "  !   "   " !      !   "  !   "   " !   ! "    "!     "!    " !  !"        !  "!     "   ! "       "!   !  "   "  !  !"        !"      !"     !"      !"   !"        !"  "!         "!   "  !   ! "    !"  !"      " !     "!      " !  "  !      "!    ! "   ! "     "!    "  !   "   !  ! "     ! " !   "  "  !   "   !  ! "    !   " !     " "  !   !     " ! "   !     "   "!   !  "   !   "   ! "     !"      " !!     "!      "  !  "     "!    ! "       !"  !"      "  ! "   !     !"  !"          !"   !  "      " !  !"    !   "   !"    ! "        !"" !      "!      "  !   ! "     ! "  "     !   "!   !  "  ! "        ! "!    "  !     "   !"      " !!  "     "!   !  "      " !    !" !   "   !  "    !"     !     " !  "    !    "! "   !     "    !"     !  "   !   "    " !                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          **  h l `lX %!"#$8%&@'()*+, -./012l34(56789:;<=>?@ABCDEFhGH-IJKLMNOPQRSTUVYWX-YZ[\]^_`abcd8efghijklmnopqr st uv-wx-yz @{|}~ Y- %-H%H l l%      H%`%`-lX   H -YY             !" #$%&'( )* +,-. !/01234 56"# 78 9:;<$=>%Y?@ ABYCD&EF'(HGHYIJKL)*+,-./MN01234OP567QR8YST9UV:;<=>? WX@A%YZ[\]^BCY_`abD cdE efF ghijHkl mnop qrHstGHIJuvKL wxMNO yz {|P}~ QRSTU  YVWXY  Z[\%]^_`abcd efghi- jklmnoHlpqrstuvwxyz{|}~  -% %  `` YX --Y%%     Y @ l`l !"#$H%&-'(-)* +,-. /0 12 34Y56-789:;< =>?@ ABlCD EFGH@IJ KL MN-OP`QR`ST UVHWX YZ[\Y]^     _`ab cd efghijkl mn !-op"#$%qr st uv&'()*wx+,-./0123Yyz456789{|:;<=>~*8  %` 8l8Y`l -H*%Y- hl`(  %%%*Y       - %H%%  !"#$%l&'()*+%,-%./ 01 234567 89:;<=>?@ABCTDEFGHI JKLMNO4PQ-RSTUVW XYZ[\] ^_`aHbcHde!" fghi jk#$-lm%nopqHrs&'()4tuvw xyz{|}~Y*+, -./012345Y678-9:;  H <=>? @ AY BCDEHFGH``I J KT-L MNO @PHlYY QRST  U  VWXYZ[\]^_`albc !"#*$%&'()defgh *+ijkl,-./ 01234567 89:;<=>? @Am BCnDEopFGHIqrstuvJKwxLMy NOz4PQRSTU{VW XY Z[|}\]~^_`aHbcYdeTfgHhijkllmnopqHrstu%vwHxyz{|}~*% % d```TTTT-% H      -H%Yd% !"#$%&'()*+,-./0H123456789:;<=>?@(    ` H``` T!" #$%&*'()*+,-.`/0 1234 568789:;<=>?@AB CD EF GH IJKLMN OP QRSTXUVTWXYZD[\]^Y_`ab cdlefghTij klmnTop qrst*uvwxyz`{|}~**   @  !*"#$%&'( )*<+x,-.  /01Y%  l 2345 6789:;  <=l%%>?@%A%B  C% DEFG H   I     JKLMNY OPQ-R ST!"#$%&U'(V)*W+,X--./0Y12YZ 34Y56789:[\]^_` ;< =>a?@bABcCDdEFelGHIJfKLg MNOPhQRijklTSTmn UVWXoYZpqr [\ ]^-_`stabcdefu gh%ijv klwxyzmnop{|}~qrst uv@wx yz{|l}~%---- l`( 8 N%4,    Yl X Hl -         TY< Y ! "#$% &'%() *+,-./0123456789:;<=>?@ABCDElFGHI !HJK"LM#NO%PQRS$TU%&VWXY'-Z[2\]-^_(`abc de fghi)*+jk,lmnoYpq%rs-tu vwxy%z{|} ~./0T1`XT23T4T5 6789:;<=2->?@ABC%DHEFGHIJ44ll KLMNOPQXR- STUVWXYZ[\]^_`YdYabcdefghijHkl-mnopqrYs%@%%%tuvl    l  wxyz{|}~HH YHl !Y"#%$%&'-()*+,- ./Y01 2345 6789-:;+<=>?-@A BCDEFGHIJKLMNOPQ-RSdTUVW,XYlZ[ \]-^_`aYbcde%fghijk'lmHnopq+rstuHvwHxy2z{Y|}~Y +YY-H H  Y                                                                                                                                      ! ! !     !   !  !  !     !   !   ! !    !      !    !    !  !   !   !!     !  ! !  !   !   !  !  ! !  !  !        ! !    !     !        !    !    !            !            !   !  ! !    !      !  !   !  !  ! ! ! !  !     !   !     !                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       !  !  !   ! #  !  ! #  ! !  !   !  !   #   !#  ! #   !  !  #  ! !   !  !    !     ! # ! !    !   #  !!    !      !    !  !" # #  ! # !   !   !   !    !"#   !"#  #  !   !  !  !  " #!  " #!   ! #  ! #  !  !    !  !   " #!   # !  "  #! #" #"   "! #   " #! "#"  !    !  !  !  !!  !     !  !    ! "#    !" #                                                                                                                                                                             !!     !           !   !                  !                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             l`(!N  ' !N8*%%!N !"X#$%%&'()*0+, -.Y/012N34 56Y789:N;<SN=>?@ AB CD EFGH@IJlKL*MN*OPNQR-STHUVWX!NYZ [\]^-_`!Nab NcdNef`gh Nij Nkl%mnxopqr stuvYwxyz{|l}~  N!NNN+SN+NLSNOO<SNYNX  - !"#Y<- -$%&!N'O%(!-ONNO)O*+,SN-./MO01!N23TN45O6789:;L<Y=> ?-TNY@  N N    MO ABSNOCDE FG+HIJNKLNMNOPQNRSTUN O!"!N#$VWXYZ[\%&]'(^%)*_N+,`aN-./0bN12N34cd56N78SN9:;<=>?@NABCD@EFSNGHlIJlKLlMNlOPefghiMOQRjklmnopqST%UVrNWXstuvwxyzYZ[\N]^{|}~O_`abOcdNefOghijNklmnYopHqrYstSNuvNwxlyzN{|l}~NSN HOMOOSNONNNSNNONNNNSN+ONTNNNONNSNNNNNNNNOMOOSNONNOMOONOOON  N   MONONMOHN O!"N#$O%&O'()*  MO+, MO-.  N/01234Y56H78`:;8<=!N>?(@AXBC*DEFGSNHIJKLMSNNO%PQRSNTUVWNXYSNZ[N\]<^_-`abcNdefghi4jklmnoOpq rs tuOvwOxy!Nz{N|}SN~ O  - l SN0MO lN N SN N!NX  l*  *@NMOSNNNO !"#$%&'(  )*+,%-.*/*Q01-NSNO+ 2H  34N  5O6789:;<=>L?@ABCDETNFG- !Y"#-$%&'HIJKSN()L-*+,-./0123MO45SN67SN89:;l<=SN>?MN@AONBCPQRSDETFGUHIVdJKWXLMY!NOZ[\YPQRS]^TUVW_`aSNXYZ[\]-^_4`a4bcNdeNfg%hiNjk@lmnoblpqcrsdSNtuNvwxyeNz{O|}fgMO~hijkdlmNnopqrstuvwxyzSN{|}Y~44 *%lNNN OSNSNHO-2 l@%*YNOO NNN-*   O N  MO  N-MOMONMOOOY2 !Y"#$%&'()**+,-l./N01Y23MO45l67N89H:;!<=>?Y@ABCYDE FG namespace fort { typedef cutlass::half_t half_t; } #define __FLT_MAX__ 3.40282346638528859811704183484516925e+38F constexpr double HLF_MAX = 6.550400E+04; template static __inline__ __device__ __host__ T_ELEM cuGetTypeMax(); template <> __inline__ __device__ __host__ float cuGetTypeMax() { return __FLT_MAX__; } template <> __inline__ __device__ __host__ fort::half_t cuGetTypeMax() { return fort::half_t((double)HLF_MAX); } template <> __inline__ __device__ __host__ int8_t cuGetTypeMax() { return INT8_MAX; } typedef enum { /// Max pooling. POOLING_MAX = 0, /// Average pooling. Includes padded region. POOLING_AVERAGE_COUNT_INCLUDE_PADDING = 1, /// Average pooling. Excludes padded region. POOLING_AVERAGE_COUNT_EXCLUDE_PADDING = 2, /// Max Average Blend pooling. Includes padded region. POOLING_MAX_AVERAGE_BLEND_COUNT_INCLUDE_PADDING = 3, /// Max Average Blend pooling. Excludes padded region. POOLING_MAX_AVERAGE_BLEND_COUNT_EXCLUDE_PADDING = 4, /// Unknown pooling type. POOLING_UNKNOWN = 5, } poolingMode_t; constexpr int32_t MAX_POOLING_DIM = 5; constexpr int32_t POOLING_MAX_THREADS_PER_CTA = 256; constexpr int32_t POOLING_DIM_MAX = 8; template __inline__ __host__ __device__ bool is_max_pooled(T_MATH const x_val, T_MATH const max_value, const bool max_padded = false) { if (NAN_OPT == CUDNN_NOT_PROPAGATE_NAN) { // x_val is maximum if one of the following is true: // 1. max_padded is true (the current max is invalid) // 2. max_value is NaN // 3. x_val > max_value return max_padded || cuIsNan(max_value) || (x_val > max_value); } else if (NAN_OPT == CUDNN_PROPAGATE_NAN) { // x_val is maximum if #1 is true or #2 & #3 are true. // 1. max_padded is true (the current max is invalid) // 2. max_value isn't NaN // 3. One of following occurs: // 3a. x_val is NaN // 3b. x_val > max_value return max_padded || (!cuIsNan(max_value) && (cuIsNan(x_val) || x_val > max_value)); } return false; } struct TensorDesc { // W : 0, H : 1, D : 2, C : 3, N : 4 int32_t dim[MAX_POOLING_DIM]; int32_t stride[MAX_POOLING_DIM]; }; struct PoolingFwParams { poolingMode_t pooling_mode; TensorDesc xDesc; void const* xData; TensorDesc yDesc; void* yData; #if 0 ::xmma::Numeric_variant alpha; ::xmma::Numeric_variant beta; ::xmma::Numeric_variant blend_factor; #endif int32_t total_yH_yW_winW; int32_t windowDimA[POOLING_DIM_MAX]; int32_t paddingA[POOLING_DIM_MAX]; int32_t strideA[POOLING_DIM_MAX]; cudnn::reduced_divisor window_width_bounded_divisor; cudnn::reduced_divisor output_divisor; void* valpha; void* vbeta; }; enum PoolingType { Max, Average, Blend }; template struct pooling_func { }; template struct pooling_func { __device__ __forceinline__ pooling_func() { maxval = cuGet(-1) * cuGet(cuGetTypeMax()); } __device__ __forceinline__ void forward_accum(T_MATH const& in) { if (PROPAGATE_NAN == false) { maxval = cuMax(maxval, in); } else { if (!cuIsNan(in) && !cuIsNan(maxval)) { maxval = cuMax(maxval, in); } else { maxval = cuNan(); } } } __device__ __forceinline__ void forward_accum(pooling_func const& in) { forward_accum(in.maxval); } __device__ __forceinline__ T_MATH forward_val(const int32_t &poolsize, T_MATH const blend_factor) { return maxval; } T_MATH maxval; }; template struct pooling_func { __device__ __forceinline__ pooling_func() { sumval = cuGet(0); } // forward accumulation of element value {in} into sum __device__ __forceinline__ void forward_accum(T_MATH const& in) { sumval = cuAdd(sumval, in); } __device__ __forceinline__ void forward_accum(pooling_func const& in) { forward_accum(in.sumval); } // compute forward value by dividing accumulated sum by pool size __device__ __forceinline__ T_MATH forward_val(int32_t const& poolsize, T_MATH const blend_factor) { T_MATH out; if (USE_FAST_DIV) { // cuDiv uses _fdividef, which is accurate up to 1 ULP. out = cuDiv(sumval, (T_MATH)poolsize); } else { // use proper divide for extra accuracy. needed when the output is expected to be rounded to integer and can // introduce error when the quotient is 0.5 away from two integers. out = sumval / cuGet(poolsize); } return out; } T_MATH sumval; }; template struct pooling_func { __device__ __forceinline__ pooling_func() { sumval = cuGet(0); maxval = cuGet(-1) * cuGet(cuGetTypeMax()); } // forward accumulation of element value {in} into sum __device__ __forceinline__ void forward_accum(const T_MATH &in) { sumval = cuAdd(sumval, in); if (PROPAGATE_NAN == false) { maxval = cuMax(maxval, in); } else { if (!cuIsNan(in) && !cuIsNan(maxval)) { maxval = cuMax(maxval, in); } else { maxval = cuNan(); } } } __device__ __forceinline__ void forward_accum(const pooling_func &in) { sumval = cuAdd(sumval, in.sumval); if (PROPAGATE_NAN == false) { maxval = cuMax(maxval, in.maxval); } else { if (!cuIsNan(in.maxval) && !cuIsNan(maxval)) { maxval = cuMax(maxval, in.maxval); } else { maxval = cuNan(); } } } // compute forward value by dividing accumulated sum by pool size __device__ __forceinline__ T_MATH forward_val(const int &poolsize, T_MATH const blend_factor) { T_MATH avgval; if (USE_FAST_DIV) { // cuDiv uses _fdividef, which is accurate up to 1 ULP. avgval = cuDiv(sumval, (T_MATH)poolsize); } else { // use proper divide for extra accuracy. needed when the output is expected to be rounded to integer and can // introduce error when the quotient is 0.5 away from two integers. avgval = sumval / cuGet(poolsize); } return avgval * blend_factor + maxval - maxval * blend_factor; } T_MATH sumval, maxval; }; extern __shared__ float arr_sh[]; template static __device__ void pooling_fw_4d_kernel_vectorizedC(PoolingFwParams const &arguments) { // using T_ACCESS = typename AccessType::value; using T_ACCESS = cutlass::AlignedArray; poolingMode_t const pooling_mode = arguments.pooling_mode; TensorDesc const &xDesc = arguments.xDesc; TensorDesc const &yDesc = arguments.yDesc; T_ELEM const *xData = static_cast(arguments.xData); T_ELEM *yData = static_cast(arguments.yData); #if 0 T_MATH const alpha = static_cast(arguments.alpha); T_MATH const beta = static_cast(arguments.beta); T_MATH const blend_factor = static_cast(arguments.blend_factor); #endif int32_t const total_yH_yW_winW = arguments.total_yH_yW_winW; cudnn::reduced_divisor const &window_width_bounded_divisor = arguments.window_width_bounded_divisor; cudnn::reduced_divisor const &output_divisor = arguments.output_divisor; // const bool beta_is_zero = cuEqual(beta, cuGet(0)); // Linearized form of [y_h, y_w, window_w]; each thread works on a specific index in this. const int32_t yH_yW_winW_i = blockIdx.x * blockDim.x + threadIdx.x; // Every thread works on C_ALIGNMENT; starting at c_i_base. const int32_t c_i_base = (blockIdx.y * blockDim.y + threadIdx.y) * C_ALIGNMENT; // Current batch size const int32_t n_i = blockIdx.z * blockDim.z + threadIdx.z; // All threads write out reduced values (along window height) into shared memory T_POOLING *vals = (T_POOLING *)arr_sh; // Base index to start writing to shared memory const int32_t shared_write_base = (threadIdx.z * blockDim.y + threadIdx.y) * blockDim.x + threadIdx.x; // Stride per feature map when accessing shared memory (thread count of block) const int32_t shared_stride_per_map = blockDim.x * blockDim.y * blockDim.z; // Check within batch size, feature map size and height/width/window_width. const bool in_bounds = (n_i < xDesc.dim[4]) && (c_i_base < xDesc.dim[3]) && (yH_yW_winW_i < total_yH_yW_winW); // Current index along window_width int32_t window_wi_base; // Store pooling results per feature map T_POOLING feature_map_accums[C_ALIGNMENT]; // Count used in denominator for CUDNN_POOLING_AVERAGE_* int32_t count = 0; // Store current index along y height/width int32_t y_hi, y_wi; // Accumulation along window height if (in_bounds) { // De-linearize yH_yW_winW_i into [y_hi, y_wi, window_wi] { int32_t yH_yW_i; window_width_bounded_divisor.divmod(yH_yW_winW_i, yH_yW_i, window_wi_base); output_divisor.divmod(yH_yW_i, y_hi, y_wi); } // Compute start/end of windows int32_t x_h_start = y_hi * arguments.strideA[0] - arguments.paddingA[0]; // int32_t x_h_end = imin(int32_t(x_h_start + arguments.windowDimA[0]), int32_t x_h_end = __NV_STD_MIN(int32_t(x_h_start + arguments.windowDimA[0]), int32_t(xDesc.dim[1] + arguments.paddingA[1])); int32_t x_w_start = y_wi * arguments.strideA[1] - arguments.paddingA[2]; // int32_t x_w_end = imin(int32_t(x_w_start + arguments.windowDimA[1]), int32_t x_w_end = __NV_STD_MIN(int32_t(x_w_start + arguments.windowDimA[1]), int32_t(xDesc.dim[0] + arguments.paddingA[3])); // Bound window regions to image dimensions // int32_t x_h_start_bounded = imax(x_h_start, 0); int32_t x_h_start_bounded = __NV_STD_MAX(x_h_start, 0); // int32_t x_h_end_bounded = imin(x_h_end, int32_t(xDesc.dim[1])); int32_t x_h_end_bounded = __NV_STD_MIN(x_h_end, int32_t(xDesc.dim[1])); // int32_t x_w_start_bounded = imax(x_w_start, 0); int32_t x_w_start_bounded = __NV_STD_MAX(x_w_start, 0); // int32_t x_w_end_bounded = imin(x_w_end, int32_t(xDesc.dim[0])); int32_t x_w_end_bounded = __NV_STD_MIN(x_w_end, int32_t(xDesc.dim[0])); // Compute "count" (used when accumulating along window width) if (pooling_mode == POOLING_AVERAGE_COUNT_INCLUDE_PADDING || pooling_mode == POOLING_MAX_AVERAGE_BLEND_COUNT_INCLUDE_PADDING) { count = (x_h_end - x_h_start) * (x_w_end - x_w_start); } else if (pooling_mode == POOLING_AVERAGE_COUNT_EXCLUDE_PADDING || pooling_mode == POOLING_MAX_AVERAGE_BLEND_COUNT_EXCLUDE_PADDING) { count = (x_h_end_bounded - x_h_start_bounded) * (x_w_end_bounded - x_w_start_bounded); } // Loop across window width where each thread works on linear elements (strided when above thread // count) Example: Thread 3 works on window_wi of (3, 3 + blockDim.x, 3 + 2*blockDim.x, ...) #pragma unroll 1 for (int32_t window_wi = window_wi_base; window_wi < arguments.windowDimA[1]; window_wi += blockDim.x) { // Compute current location along x width int32_t x_wi = x_w_start + window_wi; // Check within bounds image bounds; note that negative padding means all 3 checks are // necessary if ((x_wi >= 0) && (x_wi < xDesc.dim[0]) && (x_wi < xDesc.dim[0] + arguments.paddingA[3])) { int32_t ni_ci_off = xDesc.stride[4] * n_i + c_i_base * xDesc.stride[3]; for (int32_t x_hi = x_h_start_bounded; x_hi < x_h_end_bounded; x_hi++) { // Current offset based on current [n, c, h, w] index int32_t ni_ci_hi_wi_off = ni_ci_off + x_hi * xDesc.stride[1] + x_wi * xDesc.stride[0]; // Store all new values to accumulate with T_ELEM new_val[C_ALIGNMENT]; T_ACCESS *val_ptr = reinterpret_cast(new_val); // Store feature maps // ::xmma::ldg(*val_ptr, &xData[ni_ci_hi_wi_off]); cutlass::arch::global_load(*val_ptr, &xData[ni_ci_hi_wi_off], true); // Forward accumulate all feature maps per thread for (int32_t c_i_off = 0; c_i_off < C_ALIGNMENT; ++c_i_off) { feature_map_accums[c_i_off].forward_accum(cuGet(new_val[c_i_off])); } } } // Inform compiler that this for loop is only run once if (!GENERIC_WINDOW_WIDTH) { break; } } // Write out accumulated results of all feature maps to shared memory #pragma unroll for (int32_t c_i_off = 0; c_i_off < C_ALIGNMENT; ++c_i_off) { vals[shared_write_base + c_i_off * shared_stride_per_map] = feature_map_accums[c_i_off]; } } __syncthreads(); // Accumulation along window width (only one thread per window does this) if (in_bounds && (window_wi_base == 0)) { // Avoid div 0 to generate NAN. // count = imax(count, 1); count = __NV_STD_MAX(count, 1); // Loop along window width // - window_wi of 0 is already accumulated from window_height accumulation loop for (int32_t window_wi = 1; window_wi < (!GENERIC_WINDOW_WIDTH ? arguments.windowDimA[1] : window_width_bounded_divisor.get()); ++window_wi) { // Accumulate along all feature maps #pragma unroll for (int32_t c_i_off = 0; c_i_off < C_ALIGNMENT; ++c_i_off) { T_POOLING new_val = vals[shared_write_base + window_wi + c_i_off * shared_stride_per_map]; feature_map_accums[c_i_off].forward_accum(new_val); } } // Offset to feature map 0 for current [n, c, h, w] index int32_t ni_ci_hi_wi_off = n_i * yDesc.stride[4] + c_i_base * yDesc.stride[3] + y_hi * yDesc.stride[1] + y_wi * yDesc.stride[0]; // Data pointer offset for current [n, c, h, w] index T_ELEM *yCur = yData + ni_ci_hi_wi_off; T_ELEM result[C_ALIGNMENT]; T_ACCESS *result_ptr = reinterpret_cast(result); // Loop for all feature maps #if 0 if (beta_is_zero) { #endif #pragma unroll for (int32_t c_i_off = 0; c_i_off < C_ALIGNMENT; ++c_i_off) { T_MATH accum = // cuGet( feature_map_accums[c_i_off].forward_val( count, blend_factor ) ); cuGet( feature_map_accums[c_i_off].forward_val( count, 0.0f ) ); // result[c_i_off] = cuGet(cuMul( alpha, accum )); result[c_i_off] = cuGet( accum ); } #if 0 } else { ::xmma::ldg(*result_ptr, yCur); #pragma unroll for (int32_t c_i_off = 0; c_i_off < C_ALIGNMENT; ++c_i_off) { T_MATH accum = cuGet(feature_map_accums[c_i_off].forward_val(count, blend_factor)); result[c_i_off] = cuGet( scale_result(accum, alpha, &result[c_i_off], beta)); } } #endif // Store feature maps // ::xmma::stg(yCur, *result_ptr); cutlass::arch::global_store(*result_ptr, yCur, true); } } if (gid == 0) {{ reg_dealloc<24>(); const uint32_t local_wid = wid % 4; uint32_t tile_id; if (local_wid == 0) {{ uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_stats_tma = smem_bar_do_tma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_stats_mma = smem_bar_do_mma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); uint32_t buffer_id_qo = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_qo = 0; uint32_t cnt_kv = 0; if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); sts_32(smem_tile_id_{p_id}, &tile_id); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); named_barrier_arrive(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); // Persistent loop over output tiles #pragma unroll 1 while (tile_id < num_tiles_{p_id}) {{{tile_extract_code} const int head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; const int head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; {left_bound_code}{shift_right_bound_code} int numerator = kv_row_coord; {qo_loop_bound_code} {softmax_stats_ldg_decls}{softmax_sum_ldg_decls}{ldgsts_K_decl}{ldgsts_V_decl}{ldgsts_Q_decl}{ldgsts_dO_decl} uint32_t local_smem_k = smem_k_{p_id} + buffer_id_kv * SMEM_K_{p_id}; uint32_t local_smem_v = smem_v_{p_id} + buffer_id_kv * SMEM_V_{p_id}; uint32_t local_smem_bar_tma_kv = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_kv = smem_bar_k_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 1 : 0; if (qo_loop_left_bound < qo_loop_right_bound) {{ cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_kv, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_mma_kv, smem_bar_phase_kv); }} smem_bar_set_transaction_count(local_smem_bar_tma_kv, SMEM_K_{p_id} + SMEM_V_{p_id}, elect_one);{ldgsts_K_code} {ldgsts_V_code} }} #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int qo_col_coord = qo_loop * TILE_N_{p_id}; uint32_t local_smem_q = smem_q_{p_id} + buffer_id_qo * SMEM_Q_{p_id}; uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_qo * 8; uint32_t local_smem_do = smem_do_{p_id} + buffer_id_qo * SMEM_O_{p_id}; uint32_t local_smem_bar_tma_do = smem_bar_do_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_do = smem_bar_do_mma + buffer_id_qo * 8; uint32_t local_smem_stats = smem_stats_{p_id} + buffer_id_qo * SMEM_STATS_{p_id}; uint32_t local_smem_bar_tma_stats = smem_bar_stats_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_stats = smem_bar_stats_mma + buffer_id_qo * 8; uint32_t smem_bar_phase_qo = cnt_qo < BUFFERS_Q_{p_id} ? 1 : 0; cnt_qo = cnt_qo < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_qo + 1) : 0; buffer_id_qo = buffer_id_qo < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_qo + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_stats, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_mma_stats, smem_bar_phase_qo); }} named_barrier_wait(SOFTMAX_STATS_BARRIER_{p_id}, 32); r32 reg_{softmax_stats_guid_0}_1[TILE_N_{p_id} / THREADS_PER_WARP_{r_id}]; r32 reg_{softmax_stats_guid_1}_1[TILE_N_{p_id} / THREADS_PER_WARP_{r_id}]; #pragma unroll for (int i = 0; i < (TILE_N_{p_id} / THREADS_PER_WARP_{r_id}); ++i) {{{softmax_stats_ldg_code}{softmax_sum_ldg_code} sts_32(local_smem_stats + (tiw + i * THREADS_PER_WARP_{r_id}) * BYTES_PER_ACC_{p_id}, ®_{softmax_stats_guid_0}_1[i]); sts_32(local_smem_stats + (tiw + i * THREADS_PER_WARP_{r_id} + TILE_N_{p_id}) * BYTES_PER_ACC_{p_id}, ®_{softmax_stats_guid_1}_1[i]); }} fence_view_async_shared(); named_barrier_wait(SOFTMAX_STATS_BARRIER_{p_id}, 32); if (elect_one) {{ smem_bar_arrive(local_smem_bar_tma_stats); }} if (!smem_bar_peek(local_smem_bar_mma_q, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_mma_q, smem_bar_phase_qo); }} smem_bar_set_transaction_count(local_smem_bar_tma_q, SMEM_Q_{p_id}, elect_one);{ldgsts_Q_code} if (!smem_bar_peek(local_smem_bar_mma_do, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_mma_do, smem_bar_phase_qo); }} smem_bar_set_transaction_count(local_smem_bar_tma_do, SMEM_O_{p_id}, elect_one);{ldgsts_dO_code} }} if (tiw == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ sts_32(smem_tile_id_{p_id}, &tile_id); }} named_barrier_arrive(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); }} named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); }} else if (local_wid == 1) {{{tmastg_warp_code} tmastg_wait(); }} reg_dealloc<24>(); }} else {{ reg_alloc<240>(); const uint32_t local_wid = wid % 4; const uint32_t local_gid = gid % 2; uint32_t tile_id; float amax_dp_{p_id} = 0.0f; float amax_dv_{p_id} = 0.0f; float amax_dk_{p_id} = 0.0f; uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_tma = smem_bar_do_tma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_stats_tma = smem_bar_do_tma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_do_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_dq_mma = smem_bar_do_mma + 8 * BUFFERS_O_{p_id}; uint32_t smem_bar_stats_mma = smem_bar_do_mma + 8 * (BUFFERS_O_{p_id} + BUFFERS_DQ_{p_id}); {smem_bar_dk_dv_decl} uint32_t buffer_id_qo = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_qo = 0; uint32_t cnt_kv = 0; Gmma_descriptor gmma_desc_k(create_gmma_desc_bmm1_a_{p_id}()); Gmma_descriptor gmma_desc_v(create_gmma_desc_bmm1_a_{p_id}()); Gmma_descriptor gmma_desc_bmm1_q(create_gmma_desc_bmm1_b_{p_id}()); Gmma_descriptor gmma_desc_bmm1_do(create_gmma_desc_bmm1_b_{p_id}()); Gmma_descriptor gmma_desc_bmm2_q(create_gmma_desc_bmm2_b_{p_id}()); Gmma_descriptor gmma_desc_bmm2_do(create_gmma_desc_bmm2_b_{p_id}()); Gmma_descriptor gmma_desc_k_tr(create_gmma_desc_bmm3_b_{p_id}()); Gmma_descriptor gmma_desc_dp(create_gmma_desc_bmm3_a_{p_id}()); gmma_desc_k.set_smem(smem_k_{p_id} + local_gid * TILE_M_{p_id} * 128); gmma_desc_v.set_smem(smem_v_{p_id} + local_gid * TILE_M_{p_id} * 128); gmma_desc_bmm1_q.set_smem(smem_q_{p_id}); gmma_desc_bmm1_do.set_smem(smem_do_{p_id}); gmma_desc_bmm2_q.set_smem(smem_q_tr_{p_id}); gmma_desc_bmm2_do.set_smem(smem_do_tr_{p_id}); gmma_desc_k_tr.set_smem(smem_k_tr_{p_id}); gmma_desc_dp.set_smem(smem_dp_{p_id}); {smem_dq_dp_decl} named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); // Persistent loop over output tiles #pragma unroll 1 while (tile_id < num_tiles_{p_id}) {{{tile_extract_code} kv_row_coord += local_gid * TILE_M_{p_id}; {left_bound_code}{shift_right_bound_code} int numerator = kv_row_coord - local_gid * TILE_M_{p_id}; {qo_loop_bound_code} const int causal_mask_col = qo_loop_left_bound * TILE_N_{p_id} + (tiw % 4) * 2; const int causal_mask_row = kv_row_coord + local_wid * 16 + (tiw / 4);{mma_loop_decls} {deq_scale_bmm_q_k_decl}{deq_scale_bmm_do_v_decl}{scale_s_do_dv_decl}{scale_dp_q_dk_decl} {sts_or_stg_dP_decl} uint32_t local_smem_k = smem_k_{p_id} + buffer_id_kv * SMEM_K_{p_id}; uint32_t local_smem_v = smem_v_{p_id} + buffer_id_kv * SMEM_V_{p_id}; uint32_t local_smem_bar_tma_kv = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_kv = smem_bar_k_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 0 : 1; if (qo_loop_left_bound < qo_loop_right_bound) {{ cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; if (!smem_bar_peek(local_smem_bar_tma_kv, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_tma_kv, smem_bar_phase_kv); }} }} {transpose_for_fp8_decl} ifence(); r32 reg_{matmul_1_guid}_1[REGS_M_{matmul_1_guid}][REGS_N_{matmul_1_guid} / 2][4]; r32 reg_{matmul_3_guid}_1[REGS_M_{matmul_3_guid}][REGS_N_{matmul_3_guid} / 2][4]; r32 reg_{p_id}_0[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; // Stores the dv memset(®_{p_id}_0[0][0][0], 0, sizeof(reg_{p_id}_0)); r32 reg_{p_id}_1[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; // Stores the dk memset(®_{p_id}_1[0][0][0], 0, sizeof(reg_{p_id}_1)); #pragma unroll 1 for (int qo_loop = qo_loop_left_bound; qo_loop < qo_loop_right_bound; qo_loop++) {{ const int p_col_coord = qo_loop * TILE_N_{p_id}; const int causal_mask_col = p_col_coord + (tiw % 4) * 2; const int causal_mask_row = kv_row_coord + local_wid * 16 + (tiw / 4); uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_qo * 8; uint32_t local_smem_bar_tma_do = smem_bar_do_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_do = smem_bar_do_mma + buffer_id_qo * 8; uint32_t local_smem_stats = smem_stats_{p_id} + buffer_id_qo * SMEM_STATS_{p_id}; uint32_t local_smem_bar_tma_stats = smem_bar_stats_tma + buffer_id_qo * 8; uint32_t local_smem_bar_mma_stats = smem_bar_stats_mma + buffer_id_qo * 8; uint32_t smem_bar_phase_qo = cnt_qo < BUFFERS_Q_{p_id} ? 0 : 1; cnt_qo = cnt_qo < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_qo + 1) : 0; buffer_id_qo = buffer_id_qo < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_qo + 1) : 0; memset(®_{matmul_1_guid}_0[0][0][0], 0, sizeof(reg_{matmul_1_guid}_0)); if (!smem_bar_peek(local_smem_bar_tma_q, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_tma_q, smem_bar_phase_qo); }} {matmul_1_code} gmma_desc_bmm1_q.increment_smem_buffer(); if (!smem_bar_peek(local_smem_bar_tma_do, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_tma_do, smem_bar_phase_qo); }} if (!smem_bar_peek(local_smem_bar_tma_stats, smem_bar_phase_qo)) {{ smem_bar_wait(local_smem_bar_tma_stats, smem_bar_phase_qo); }} warpgroup_wait<0>(); #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < 8; i+=4) {{ r32 tmp[2]; lds_64(tmp, local_smem_stats + (tiw % 4) * 2 * BYTES_PER_ACC_{p_id} + (i * 2 + n * 16) * BYTES_PER_ACC_{p_id}); reg_{softmax_stats_guid_0}_0[n][i+0] = tmp[0]; reg_{softmax_stats_guid_0}_0[n][i+1] = tmp[1]; reg_{softmax_stats_guid_0}_0[n][i+2] = tmp[0]; reg_{softmax_stats_guid_0}_0[n][i+3] = tmp[1]; }} }}{rng_code}{mask_code}{deq_scale_bmm_q_k_code}{pointwise_chain_0_code} memset(®_{matmul_3_guid}_0[0][0][0], 0, sizeof(reg_{matmul_3_guid}_0)); {matmul_2_code} gmma_desc_bmm1_do.increment_smem_buffer(); #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < 8; i+=4) {{ r32 tmp[2]; lds_64(tmp, local_smem_stats + (tiw % 4) * 2 * BYTES_PER_ACC_{p_id} + (i * 2 + n * 16 + TILE_N_{p_id}) * BYTES_PER_ACC_{p_id}); reg_{softmax_stats_guid_1}_0[n][i+0] = tmp[0]; reg_{softmax_stats_guid_1}_0[n][i+1] = tmp[1]; reg_{softmax_stats_guid_1}_0[n][i+2] = tmp[0]; reg_{softmax_stats_guid_1}_0[n][i+3] = tmp[1]; }} }} warpgroup_wait<0>();{deq_scale_do_v_code}{pointwise_chain_1_code}{bmm_scale_code} // Amax for dP #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_N_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; i+=2) {{ amax_dp_{p_id} = fmha::max3Pos_(amax_dp_{p_id}, fabsf(reinterpret_cast(reg_{matmul_3_guid}_0[m][n][i+0])), fabsf(reinterpret_cast(reg_{matmul_3_guid}_0[m][n][i+1]))); }} }} }} {q_scale_s_code} // Convert S into bf16/fp16/fp8 for the second gemm{down_convert_s_code}{q_scale_dp_code} ifence(); // Performance hint for better SASS{down_convert_dp_fp8_code}{smem_dp_fp8_decl} warpgroup_arrive(); #pragma unroll for (int k = 0; k < TILE_N_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ if (k == TILE_N_{p_id} / GMMA_TILE_K_{p_id} - 1 && m == REGS_M_{p_id} - 1) {{ BMM_DV_GMMA_ISB(reg_{matmul_1_guid}_1[m][k], gmma_desc_bmm2_do.desc, reinterpret_cast(reg_{p_id}_0[m])); }} else {{ BMM_DV_GMMA(reg_{matmul_1_guid}_1[m][k], gmma_desc_bmm2_do.desc, reinterpret_cast(reg_{p_id}_0[m])); }} }} int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm2_do.desc); tmp_desc_do.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; }} {{ int2 &tmp_desc_do = reinterpret_cast(gmma_desc_bmm2_do.desc); tmp_desc_do.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * (TILE_N_{p_id} / GMMA_TILE_K_{p_id}); }} gmma_desc_bmm2_do.increment_smem_buffer();{cast_data_for_dq_matmul_code} warpgroup_arrive(); #pragma unroll for (int k = 0; k < TILE_N_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ if (k == TILE_N_{p_id} / GMMA_TILE_K_{p_id} - 1 && m == REGS_M_{p_id} - 1) {{ BMM_DK_GMMA_ISB(reg_{matmul_3_guid}_1[m][k], gmma_desc_bmm2_q.desc, reinterpret_cast(reg_{p_id}_1[m])); }} else {{ BMM_DK_GMMA(reg_{matmul_3_guid}_1[m][k], gmma_desc_bmm2_q.desc, reinterpret_cast(reg_{p_id}_1[m])); }} }} int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm2_q.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; }} {{ int2 &tmp_desc_q = reinterpret_cast(gmma_desc_bmm2_q.desc); tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * (TILE_N_{p_id} / GMMA_TILE_K_{p_id}); }} gmma_desc_bmm2_q.increment_smem_buffer(); warpgroup_wait<0>(); named_barrier_wait(TMASTG_DV_DONE_{p_id}, 2 * THREADS_PER_GROUP_{r_id});{matmul_3_code} }} if (qo_loop_left_bound < qo_loop_right_bound) {{ gmma_desc_k.increment_smem_buffer(); gmma_desc_v.increment_smem_buffer(); gmma_desc_k_tr.increment_smem_buffer(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_kv); }} }} {epilogue_code} named_barrier_wait(TILE_ID_SYNC_3_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); tile_id = __shfl_sync(0xffffffff, tile_id, 0); }} {amax_stg_dp_code}{amax_stg_dv_code}{amax_stg_dk_code} reg_alloc<240>(); }} if (gid == 0) {{ reg_dealloc<40>(); const uint32_t local_wid = wid % 4; uint32_t tile_id; if (true /* all warps participate SMEM transpose */) {{ uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_v_tr_tma = smem_bar_v_tma + 8 * BUFFERS_V_{p_id}; uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_v_tr_mma = smem_bar_v_mma + 8 * BUFFERS_V_{p_id}; uint32_t buffer_id_q = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_q = 0; uint32_t cnt_kv = 0; if (tiw == 0 && local_wid == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); sts_32(smem_tile_id_{p_id}, &tile_id); }} fence_view_async_shared(); if (tiw == 0 && local_wid == 0) {{ smem_bar_arrive(smem_bar_tile_id_tma_{p_id}); }} // Propagate to all warps in the same warpgroup named_barrier_wait(TMA_SYNC_BARRIER_{p_id}, 128); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); // Persistent loop over output tiles #pragma unroll 1 while (tile_id < num_tiles_{p_id}) {{ uint32_t batch_coord_{p_id}, head_coord_{p_id}, q_row_coord, rows_temp; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q;{tile_extract_code} q_row_coord *= TILE_M_{p_id} * 2; const int head_coord_k_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_k; const int head_coord_v_{p_id} = head_coord_{p_id} / attnDesc.q_heads_per_v; {left_bound_code}{shift_right_bound_code} {kv_loop_bound_code} {ldgsts_Q_decl}{ldgsts_K_decl}{ldgsts_V_decl} uint32_t local_smem_q = smem_q_{p_id} + buffer_id_q * SMEM_Q_{p_id}; uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_q * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_q * 8; uint32_t smem_bar_phase_q = cnt_q < BUFFERS_Q_{p_id} ? 1 : 0; cnt_q = cnt_q < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_q + 1) : 0; buffer_id_q = buffer_id_q < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_q + 1) : 0; if (kv_loop_right_bound > 0) {{ if (!smem_bar_peek(local_smem_bar_mma_q, smem_bar_phase_q)) {{ smem_bar_wait(local_smem_bar_mma_q, smem_bar_phase_q); }} smem_bar_set_transaction_count(local_smem_bar_tma_q, SMEM_Q_{p_id}, elect_one && local_wid == 0); if (local_wid == 0) {{ const uint32_t row_coord = q_row_coord;{ldgsts_Q_code} }} }} #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop++) {{ const int p_col_coord = kv_loop * TILE_N_{p_id}; uint32_t local_smem_k = smem_k_{p_id} + buffer_id_kv * SMEM_K_{p_id}; uint32_t local_smem_bar_tma_k = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_k = smem_bar_k_mma + buffer_id_kv * 8; uint32_t local_smem_v = smem_v_{p_id} + buffer_id_kv * SMEM_V_{p_id}; uint32_t local_smem_bar_tma_v = smem_bar_v_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_v = smem_bar_v_mma + buffer_id_kv * 8; uint32_t local_smem_v_tr = smem_v_tr_{p_id} + buffer_id_kv * SMEM_V_{p_id}; uint32_t local_smem_bar_tma_v_tr = smem_bar_v_tr_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_v_tr = smem_bar_v_tr_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 1 : 0; cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; if (!smem_bar_peek(local_smem_bar_mma_k, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_mma_k, smem_bar_phase_kv); }} smem_bar_set_transaction_count(local_smem_bar_tma_k, SMEM_K_{p_id}, elect_one && local_wid == 0); if (local_wid == 0) {{{ldgsts_K_code} }} smem_bar_set_transaction_count(local_smem_bar_tma_v, SMEM_V_{p_id}, elect_one && local_wid == 0); if (local_wid == 0) {{{ldgsts_V_code} }} if (!smem_bar_peek(local_smem_bar_tma_v, smem_bar_phase_kv ^ 1)) {{ smem_bar_wait(local_smem_bar_tma_v, smem_bar_phase_kv ^ 1); }} if (!smem_bar_peek(local_smem_bar_mma_v_tr, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_mma_v_tr, smem_bar_phase_kv); }} #pragma unroll for (int n = 0; n < TILE_N_{p_id}; n+=128) {{ #pragma unroll for (int k = 0; k < TILE_K_{p_id}; k+=128) {{ fmha::Transposer::transpose_<2 /* UNROLL_N */>( threadIdx.x % THREADS_PER_GROUP_{r_id}, local_smem_v + k * TILE_N_{p_id} + n * 128, local_smem_v_tr + k * 128 + n * TILE_K_{p_id}); }} }} fence_view_async_shared(); // Note: commits outstanding STSMs for V-transpose named_barrier_wait(TMA_SYNC_BARRIER_{p_id}, 128); if (elect_one && local_wid == 0) {{ smem_bar_arrive(local_smem_bar_tma_v_tr); }} }} if (tiw == 0 && local_wid == 0) {{ tile_id = atomicAdd(tile_id_counter, 1); }} named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); if (tiw == 0 && local_wid == 0) {{ sts_32(smem_tile_id_{p_id}, &tile_id); }} fence_view_async_shared(); if (tiw == 0 && local_wid == 0) {{ smem_bar_arrive(smem_bar_tile_id_tma_{p_id}); }} named_barrier_wait(TMA_SYNC_BARRIER_{p_id}, 128); if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); }} named_barrier_wait(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); }} reg_dealloc<40>(); }} else {{ reg_alloc<232>(); const uint32_t local_wid = wid % 4; const uint32_t local_gid = gid % 2; uint32_t tile_id; static constexpr float ln2 = 0.6931471805599453094f; float amax_s_{p_id} = 0.f; float amax_o_{p_id} = 0.f; uint32_t smem_bar_q_tma = smem_bar_qkv_tma_{p_id}; uint32_t smem_bar_k_tma = smem_bar_q_tma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_tma = smem_bar_k_tma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_v_tr_tma = smem_bar_v_tma + 8 * BUFFERS_V_{p_id}; uint32_t smem_bar_q_mma = smem_bar_qkv_mma_{p_id}; uint32_t smem_bar_k_mma = smem_bar_q_mma + 8 * BUFFERS_Q_{p_id}; uint32_t smem_bar_v_mma = smem_bar_k_mma + 8 * BUFFERS_K_{p_id}; uint32_t smem_bar_v_tr_mma = smem_bar_v_mma + 8 * BUFFERS_V_{p_id}; uint32_t buffer_id_q = 0; uint32_t buffer_id_kv = 0; uint32_t cnt_q = 0; uint32_t cnt_kv = 0; uint32_t smem_bar_phase_tile_id = 0; Gmma_descriptor gmma_desc_q(create_gmma_desc_q_{p_id}()); Gmma_descriptor gmma_desc_k(create_gmma_desc_k_{p_id}()); Gmma_descriptor gmma_desc_v(create_gmma_desc_v_{p_id}()); gmma_desc_q.set_smem(smem_q_{p_id} + local_gid * TILE_M_{p_id} * 128); gmma_desc_k.set_smem(smem_k_{p_id}); gmma_desc_v.set_smem(smem_v_tr_{p_id}); if (!smem_bar_peek(smem_bar_tile_id_tma_{p_id}, smem_bar_phase_tile_id)) {{ smem_bar_wait(smem_bar_tile_id_tma_{p_id}, smem_bar_phase_tile_id); }} smem_bar_phase_tile_id ^= 1; if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} tile_id = __shfl_sync(0xffffffff, tile_id, 0); named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); // Persistent loop over output tiles #pragma unroll 1 while (tile_id < num_tiles_{p_id}) {{ uint32_t batch_coord_{p_id}, head_coord_{p_id}, q_row_coord, rows_temp; int actual_seqlen_kv_{p_id} = attnDesc.s_kv, actual_seqlen_q_{p_id} = attnDesc.s_q;{tile_extract_code} q_row_coord = q_row_coord * TILE_M_{p_id} * 2;{left_bound_code}{shift_right_bound_code} {kv_loop_bound_code} q_row_coord += local_gid * TILE_M_{p_id}; const int causal_mask_col = (tiw % 4) * 2; const int causal_mask_row = q_row_coord + local_wid * 16 + (tiw / 4); {mma_loop_decls} uint32_t local_smem_bar_tma_q = smem_bar_q_tma + buffer_id_q * 8; uint32_t local_smem_bar_mma_q = smem_bar_q_mma + buffer_id_q * 8; uint32_t smem_bar_phase_q = cnt_q < BUFFERS_Q_{p_id} ? 0 : 1; cnt_q = cnt_q < (2 * BUFFERS_Q_{p_id} - 1) ? (cnt_q + 1) : 0; buffer_id_q = buffer_id_q < ( BUFFERS_Q_{p_id} - 1) ? (buffer_id_q + 1) : 0; if (kv_loop_right_bound > 0) {{ if (!smem_bar_peek(local_smem_bar_tma_q, smem_bar_phase_q)) {{ smem_bar_wait(local_smem_bar_tma_q, smem_bar_phase_q); }} }} r32 reg_{p_id}_0[REGS_M_{p_id}][REGS_O_{p_id}][WARP_REGS_{p_id}]; memset(®_{p_id}_0[0][0][0], 0, sizeof(reg_{p_id}_0)); #pragma unroll 1 for (int kv_loop = kv_loop_left_bound; kv_loop < kv_loop_right_bound; kv_loop++) {{ static constexpr int kMulPipeCount = REGS_M_{p_id} * REGS_N_{p_id} * WARP_REGS_{p_id}; static constexpr int kSubtractPipeCount = {kSubtractPipeCount}; static constexpr int kConvertPipeCount = {kConvertPipeCount}; static constexpr int kAddPipeCount = {kAddPipeCount}; static constexpr int oBlockSize = {oBlockSize}; const int p_col_coord = kv_loop * TILE_N_{p_id}; const int causal_mask_col = p_col_coord + (tiw % 4) * 2; const int causal_mask_row = q_row_coord + local_wid * 16 + (tiw / 4); uint32_t local_smem_bar_tma_k = smem_bar_k_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_k = smem_bar_k_mma + buffer_id_kv * 8; uint32_t local_smem_bar_tma_v = smem_bar_v_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_v = smem_bar_v_mma + buffer_id_kv * 8; uint32_t local_smem_bar_tma_v_tr = smem_bar_v_tr_tma + buffer_id_kv * 8; uint32_t local_smem_bar_mma_v_tr = smem_bar_v_tr_mma + buffer_id_kv * 8; uint32_t smem_bar_phase_kv = cnt_kv < BUFFERS_K_{p_id} ? 0 : 1; cnt_kv = cnt_kv < (2 * BUFFERS_K_{p_id} - 1) ? (cnt_kv + 1) : 0; buffer_id_kv = buffer_id_kv < ( BUFFERS_K_{p_id} - 1) ? (buffer_id_kv + 1) : 0; memset(®_{matmul_1_guid}_0[0][0][0], 0, sizeof(reg_{matmul_1_guid}_0)); if (!smem_bar_peek(local_smem_bar_tma_k, smem_bar_phase_kv)) {{ smem_bar_wait(local_smem_bar_tma_k, smem_bar_phase_kv); }} static constexpr int XMMA_STEPS_{guid} = MMA_STEPS_K_{matmul_1_guid} / 2; warpgroup_arrive(); #pragma unroll for (int k = 0; k < XMMA_STEPS_{guid}; ++k) {{ if (k == XMMA_STEPS_{guid} - 1) {{ BMM_S_GMMA_ISB(gmma_desc_q.desc, gmma_desc_k.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} else {{ BMM_S_GMMA(gmma_desc_q.desc, gmma_desc_k.desc, reinterpret_cast(reg_{matmul_1_guid}_0[0])); }} int2 &tmp_desc_q = reinterpret_cast(gmma_desc_q.desc); tmp_desc_q.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == (XMMA_STEPS_{guid} - 1) % 4) {{ tmp_desc_q.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * ((XMMA_STEPS_{guid} - 1) % 4 + 1); tmp_desc_q.x += ((128*TILE_M_{p_id}*2) >> 4); }} int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == (XMMA_STEPS_{guid} - 1) % 4) {{ tmp_desc_k.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * ((XMMA_STEPS_{guid} - 1) % 4 + 1); tmp_desc_k.x += ((128*TILE_N_{p_id}) >> 4); }} }} {{ int2 &tmp_desc_q = reinterpret_cast(gmma_desc_q.desc); tmp_desc_q.x -= ((128 * TILE_M_{p_id} * 2) >> 4) * FORT_MAX(1, (XMMA_STEPS_{guid} / 4)); int2 &tmp_desc_k = reinterpret_cast(gmma_desc_k.desc); tmp_desc_k.x -= ((128 * TILE_N_{p_id}) >> 4) * FORT_MAX(1, (XMMA_STEPS_{guid} / 4)); }} gmma_desc_k.increment_smem_buffer(); warpgroup_wait<0>(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_k); }} uint32_t wait_v_done = smem_bar_peek(local_smem_bar_tma_v_tr, smem_bar_phase_kv);{rng_code}{mask_code} {pointwise_and_softmax_ops_code} if (!wait_v_done) {{ smem_bar_wait(local_smem_bar_tma_v_tr, smem_bar_phase_kv); }} warpgroup_arrive(); #pragma unroll for (int k = 0; k < TILE_N_{p_id} / GMMA_TILE_K_{p_id}; ++k) {{ if (k == (TILE_N_{p_id} / GMMA_TILE_K_{p_id}) - 1) {{ BMM_O_GMMA_ISB(reg_{softmax_guid}_0_fp8[0][k], gmma_desc_v.desc, reinterpret_cast(reg_{p_id}_0[0])); }} else {{ BMM_O_GMMA(reg_{softmax_guid}_0_fp8[0][k], gmma_desc_v.desc, reinterpret_cast(reg_{p_id}_0[0])); }} int2 &tmp_desc_v = reinterpret_cast(gmma_desc_v.desc); tmp_desc_v.x += BYTES_PER_GMMA_K_NO_4LSB_{p_id}; if ((k % 4) == 3) {{ tmp_desc_v.x -= BYTES_PER_GMMA_K_NO_4LSB_{p_id} * 4; tmp_desc_v.x += ((128*TILE_K_{p_id}) >> 4); }} }} {{ int2 &tmp_desc_v = reinterpret_cast(gmma_desc_v.desc); tmp_desc_v.x -= ((128*TILE_K_{p_id}) >> 4) * ((TILE_N_{p_id} / GMMA_TILE_K_{p_id}) / 4); }} gmma_desc_v.increment_smem_buffer(); warpgroup_wait<0>(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_v_tr); }} #pragma unroll for (int i = REGS_M_{softmax_guid} * REGS_N_{softmax_guid} * WARP_REGS_{softmax_guid} - kAddPipeCount; i < REGS_M_{softmax_guid} * REGS_N_{softmax_guid} * WARP_REGS_{softmax_guid}; i++) {{ int m = i / (REGS_N_{softmax_guid} * WARP_REGS_{softmax_guid}); int ii = i % WARP_REGS_{softmax_guid}; int row_indx = m * 2 + (ii / 4); reinterpret_cast(reg_{softmax_guid}_4[row_indx]) += reinterpret_cast(flattened_s_reordered[i]); }} // Update acc_sum of flash attention #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{softmax_guid}; ++m) {{ float p_sum = reinterpret_cast(reg_{softmax_guid}_4[m]) * inv_s_scale_{softmax_guid}; float acc_sum = reinterpret_cast(reg_{softmax_guid}_3[m]); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(alpha_{softmax_guid}[m]) * acc_sum + p_sum; }} }} if (kv_loop_right_bound > 0) {{ gmma_desc_q.increment_smem_buffer(); if (local_wid == 0 && elect_one) {{ smem_bar_arrive(local_smem_bar_mma_q); }} }} #pragma unroll for (int m = 0; m < ROWS_PER_THREAD_{softmax_guid}; ++m) {{ r32 tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{softmax_guid}_3[m], 1); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(reg_{softmax_guid}_3[m]) + reinterpret_cast(tmp_0); tmp_0 = __shfl_xor_sync(uint32_t(-1), reg_{softmax_guid}_3[m], 2); reinterpret_cast(reg_{softmax_guid}_3[m]) = reinterpret_cast(reg_{softmax_guid}_3[m]) + reinterpret_cast(tmp_0); float sum = reinterpret_cast(reg_{softmax_guid}_3[m]); {pad_softmax_sum_code} reinterpret_cast(reg_{softmax_guid}_5[m]) = (sum == 0.f) ? 0.f : reinterpret_cast(reg_{softmax_guid}_1[m]) * ln2 + __logf(sum); beta_{softmax_guid}[m] = (sum == 0.f) ? 0.f : 1.f / sum;{amax_reduce_s_code} }} float s_v_scale_{guid} = reinterpret_cast(reg_{scale_s_guid}_0[0]) * reinterpret_cast(reg_{scale_v_guid}_0[0]); float o_scale_{guid} = reinterpret_cast(reg_{scale_o_guid}_0[0]); float s_v_o_scale_{guid} = s_v_scale_{guid} * o_scale_{guid}; #pragma unroll for (int m = 0; m < REGS_M_{p_id}; ++m) {{ #pragma unroll for (int n = 0; n < REGS_O_{p_id}; ++n) {{ #pragma unroll for (int i = 0; i < WARP_REGS_{p_id}; ++i) {{ int row_indx = m * 2 + (i / 2) % 2; float scaled_beta_{guid} = beta_{softmax_guid}[row_indx] * s_v_o_scale_{guid}; reinterpret_cast(reg_{p_id}_0[m][n][i]) *= scaled_beta_{guid};{amax_reduce_o_code} }} }} }}{stg_stats_code} {rng_sync_code}{stg_o_code} tmastg_arrive(); tmastg_wait(); if (!smem_bar_peek(smem_bar_tile_id_tma_{p_id}, smem_bar_phase_tile_id)) {{ smem_bar_wait(smem_bar_tile_id_tma_{p_id}, smem_bar_phase_tile_id); }} smem_bar_phase_tile_id ^= 1; if (tiw == 0) {{ lds_32(&tile_id, smem_tile_id_{p_id}); }} named_barrier_arrive(TILE_ID_SYNC_2_BARRIER_{p_id}, THREADS_ON_TILE_BARRIER_{p_id}); tile_id = __shfl_sync(0xffffffff, tile_id, 0); if (tile_id >= num_tiles_{p_id}) {{ float o_scale_{guid} = reinterpret_cast(reg_{scale_o_guid}_0[0]); amax_o_{p_id} /= o_scale_{guid}; }} }} {amax_stg_s_code}{amax_stg_o_code} reg_alloc<232>(); }}@l "=7>qLӼ|n N4jVb\1=<r<,=;LW<0<@C=0=RU GV=I,?<5ͼaf=V=50L9=fXp E=͔P\KZL =VlHc=<<sf<=Θ<< º &Q/<谼 =\𼘑'=6M-"=>+>=)?dZ;<0ˁZ;w7Q3c;I9X:<=.%=9[?=lt<<~={ᠼc0=K:<‰<.4/gb<S=M;D=`v8>7<:>ܼɼ=}y<<'%:=J=;N=Ev!=rc@r:ɻmaAyͺo =TH7==C<ž a=#=ZӼBLDRe' we>8bҕLҍ:4O=Mɼ2˼Hֱ=Ҷ<==l>}bѼ|jJ¼S~ն$>}=)ſ|=Pl -\>:u<vȊ ;c7<y=d.w= < PLW<.\==ɼ܀=Rj Gc=< <7 6bм|+!<>=AqջF:UfhJP|b=<<żR%=}輺v= = ߼U2=3@-x-@B[=2F=#2`CkC=wv %` =Z,=^9ѽT=<6-lVQT5NU3=Zw=9s;k<>;t.<"~U΋]==#;v;0Zr<=<Ec=La)?R=+=j=H)<A=ܞ/ =Ƽ4 ;<>= ޼+3~E<}=%i@c$"MݽSjv=wy1HO;hR=LSf+=(;vE=~:,QRiHW=N/S=-c=^^=hP <<\@=sWqVTq$4=@y2cj=H+z="7=i?Κ4=@;<|=H <2#=b<&,-%ḣ=sg=v=:=<ϼ üzn#gv<<(0d1<ݟR=3;u =cn;LzG+tT5%t<&/blj_$=C弽X%qR<ҎyUwO=;jg:r XJ=͵<2'-<m{< & mO<:=)=<üb=}ӼK><|H;v8f=Mz Q>Ӯȼ ZJ{8<1'=8 =;؁C=:lO=' =>t͕\=eF;M=CegU9b)=6=uf==%I=L=v.4_=b,;b#<@+g=M=ؐ;K=)W+wN=ISx=U=U*=tP}3R)l|A==C&d;ż(^>^=\qn^ =8+P=/6%|"=Et=+ԼW2 ]="\,"=IC=^R]=Fr[Q"<.R =P2=%P9=U={<&N4{=F1=;`)6萼b:gv=}9h<gJU<j=5ʼ܀<~%=%Ŝc=˸ӛ=>бev=9 =G=k<<_="</=)w;l@"<#tC =<,h=E=AFLrK=PL>4̽! `;dt=m=}=bv >=._(2I( b;G>A<|Ԍ<"= = װӝe=bG7=;=>CSB%>t;8%=^<[`=M=)KZ&>jl==cs1=aYs =;zB=?0<з=L>f:v+Ot$/=C>=NQ9<fpX>=,ռ8 Vi<!d}-w'::0=M<==`7;I=D=!f2=&$a?-=&t¾;=_ = +wD=ۮG===Ò=_#=H:}=˃<>:9eһ2%=-`$ӝ!LFFMVü!=iu4.\=5ۧ+")=`tE<-׽ W2=FDUQ a2?:U<|?)>dp=ݽ9LP=*K./tg?=d2 <8?L=d3򑆽=$+t <%Y <<CQc=n;e ;i&+:Yb&< Q$ = ;vCd$=3[;UM Ԝll;\<->M9g&ἷ;Y1G=)EcE5237(Z= =sim&g88;E <̼ >: ]Qڼ/<'#=d0=G=ʌ=a;Pc[=uJ2B\ݾۼVN=\V=#Y<6 x>P{=J+?Xnh9ɗn/Z= + !=PU4= "T,F=4S<\={K;0':]'+Yvp=Xx<j=:=G<*p9=ιe"w23OnMk:f;~f=ryp< _%Y=*m m8<C:=WL(HK;X8d>:=g%ʼѽ=l\%<ɡG=;=$=;n<́<'=UTB%= l,=)]3KD\<=;J<8hԛ>x<7윔<' =j$=;s=A_m@TM==Kͺ$=O<PHJZbB=»&==.(jH̢<8 뼸"gj= cC<۶VVtwH1{[XpT>Tp^!>e+/=O_a9=E=q>f-= y=E<_*Ӟ:q=S=G =3;I=O> y}r+%;L]_"8U쐛=x=C |:<+=B*\/)>=- 4 |r<<*Z}r< ʺ0=[e==[V<=x!(';hl<6"~2> i>޼(=>qĽLaByݼ</=N6=;ǥ0y(TȺ~#=+;b <#{>Z=b<2J=O>-k==X90>dݼd]==lȺC%= ==2=8λR=i8=S>zf~7=<׈P<~p5wbv =<=P>2CXVϾ =o&>\=*=#*;q(ߠ<>yּ1>,= +x/M:=du +=e=O 9Լ݄==&U=6=,P< FMֻ)="= A>Bˠ=\a=YC;n<`1eL=8=dA<=TH:Z=η;v&ܬ㼃5/='=߈%=3FvR=2Z#7dh9=C<=`=<&f= =[=㧼:=V=D }=Sv:=vM5< ჼkp'򺼉=NVݼ$r;@\=Z/LSxԽg1>)-'=ȼpֹz[=&;I ޒk>i?9߼]O!;=e;z2^=;zN= T;ݻm<'Ξjx=՛֝XT Cj=Rʚq`a<݄05CY.,̼HXj=n|<[ʼdj=ժ;3 P>hl(=uD ,hZӽmnK;/i-%<Qvj=Ro =ʗ<1nD=;-=<^='A<{<ʄ9=Y0Zrnlμ9-,"Y[e=̱Z<'=6Q=\޼=AƤi;*ga9=OxSAKX7? =r݀=,޼|7={A=찼H =nFE $<􆽼{e4=E!=~/PK<=/&=R="=F/=Z|$=8/`1KjQ=m-=O;& "\<ㄽ_ia=BH=0@p= <+<6|t@m<$hw=XB=Lr$=0,=Habc=YH=J ==:X4<pK5=Hb=,< ݼڼȸ ;fo tdj$=[=X5#a<:K֜ƍ,=1E@vt=VY#v]a:t=&&<2 /=p!=(=#-= pΕ L== v=XS}rb=g-e=a%lȗUr=)TX=ǻ;EZFv,=<׊=I=*<(>hع`h[='ڼs==G=/) >G2Ӽ=}޼b;~Ü\}<ǟ=9 |,efyѕEI%D> S<c=>VZ^W4z<ҼlĠH#>?EUs.EP=a<=Lh=\K=3J[="R< (p;reS8N'<ꂽ7"=:q=I =K=:n=B3=J<,wpY=0J=Sp4U=w=b(=C \a.=,4LJ>[=̽8<nLD<<& F{'rCф==8W=h=J6==ϓu = n=~'=.l;<4S<<ͽ<0s<<.<)<'">! |=L=|TXa ; yVH=G`(=^=ώS9=t"AvK~;a=*;X?a=6=0]0oh,;!@< ==[=P9μ$b`- I`4 +^o=!=6yfUx]C#8;}d<A=\_I1n< ׮; {=0*=4< 95=b=E(<[/yGۼG<,=wEC32a<{m=+YN:r7`=iD3B R=Q`{ e=J;B0K=>pѻPD2 =W2Rv =Xx﫼<@Z0BcLd0ؼt<,w<S=`J^ gF=ޠ<XT:)PLk=bC'`|=Dv<=,LI=P2P4=A$=h@- 8_;$(N=_m=f=~z=n=8A<Dfz>k=z.<-8l=g:<#Ny<{0g=HO =YoLG8¼ 2ُ<=6DM]=ù^WY߂G|H:=h==լ]<7i=a6=E?#,=,`K=r2H=R<ZXwI(ʹ=IsЦ>e&= =bbD =z#W=Eb] ż'==0n=dS?RnTu =_t@saNO_/\={3=sE=FFN9Y=imY v <[(?PT=B;uK<;2Y߁;nx8cte2Ԑ=q =ͼ.{<,8+y5=\=ػ<>(?R+\N+)w<<1*̒J5 a$ZO=/::`^=[H<\f=f<*F=|< >C<>u==;(1|=/@=T\.Mٗ?Ͻ 4Dh=Z2Ww(=r<;YL=H_D= aG;TO=;@ȍnh<^+SuIg=Y.E}Dqý+e;h :_U= \=c_eU==%(+=E#,a=U^Y\vY& 9":kK<й()n?G<k;U<^У<…=XсR0<\&<&jV̞<:I<ʌ&nt<7=Wtk9{r-qb<]jA EY<0=#ټ>I'm]=fR=rco)?}~.BeI=s,Yů=='d=:nn% =X" 8L<+%=^;9=K)=n==B޼?=(n=}v3=[1==7Ͼ~wC=:vqmC6=a =8R@YU< '@=o=?+͓TzV=̼҅aC=HGv=)ѣ^=um-FAA=:D J=|<<=̽Z<NNy?LEz;&FZ,=NLh{<#;h& 3=L '>$9VȖړ=CfZ؏=i3湽)2=nO=`*Vʡ=^sǺ<2;>%<W=2`n=%z6<л`[PyElx=xj=Knp {<*;T μt].8=hO@:"=ȋ%<>C8=LJ<r=5zYZ=䟵ߜ=4;y;@Ž< ݬLF;Q&ȭeu:Ի_Q eG[ܼ'<<ե3=D|bxЧzV =<<<˻v>p,a;!?==nn4ts,3<ϹpLtOf=lx7\=2=L\=`-O= U=ͻv7N=@<|3<3 tPB\F=<:,0y ;;H=zX=GǼi=:S{Jewƿ <\mFЍj;6]TӔ31=>D H <7> }Q< =&a%:UeIA:0({c &Z= `[=ܼ|k"W>$TA =@I=@6S=c=X=%>3=?= /8=c==O9<%ӄIP=5]X=5<;O=)(zI>o.=BjH6@h;N XdkUvtq_vcr=ݾ`ʼZQA,vKs=)!M(> ]=20:=Ǜ<>Ya%䀽p=Rq<- =b;6'0Ƈs= vwH;"=D/j/<4\=̃=+<=BCTب<@ػ~=@5ȉ.T= O^Z?=&v<=; =r%=5<2vk@E@<[=X#=-=@Ӽ˼ v;f[H;c<r=5;lq=2C<&t=E<Ur9-=_=2<QIV<7:͙=5 ܺ<ITʼ¯=; =<>=gϨ+x=#.96h<=*sO=԰> BT4/d=d==b;Yhm4<1ᅚ<66Z=dּ=<==l뼚7H!= ǡ=C-j >;$]n^<J<>%=a-=ǽ;B:n>t6պxOg9艽=Ku_C=K}6=ͼP= 6tq(=<|L^$=T<&=ksݼ4^=i;\uüZhU:t<~e=9 =[X絼tG(ҼϦ;(^ '<s9=ܼ=8u="H=U<SX=:2ӼA=SbJq`< :=[<-=s<<<޼,'gY= 0=t<ؼ=7y=2l= ):;Z=l)=0Ѝ0|B=@Z=Can;O'-Q=<@6[=U<:<=g3 }=`<(<զo3Ϲkg5<(|Ǽ<c:=p*aBx(ͼ =VYL=r ¼"sdDn_==Y=`H9<*ѹ C|<^i=7;?0L<#h=U oS̼x =ذH<`js;^*=|=o='1:<=諨)TI=Ma3WP~W< `=Z<f:g<7F">E = >뮂1i$qT=q;U< W='=H}6>/x="kt=:`=0FN=n2="9!lB=6ķzvz=`nhj,zᐾ:8zN9]ӼihÀ;:È>>K =1U=+~Ʋ(A (b#D=y 5|E=IE&b:|K=&=KT2W=Ah%@j]y<6d=Q(S9W<'=RND=A9<>x= R༊=CQ$qP7=y*#>e=B̼,sY>\,ڏ=3KW==@;& =;QWkA24=#=򟻏=|< 2>e*<< <`<:/uܕ=qd ߹b=Yl`Ak5>-Yr&=<=V =J=@N@';ǻ =T']ij=<=bt}H;(uB<.W=Q=0L==P=q=}-=.@>RU_.}<E=D@a=j` >E=,Em@U Am<^ݜw#:<;k;9hIR VK'>V% ==e-ijה<_=bD=h=A c=D%>>zz"='=h4KrAn>+X<4miǼ,l=3=!p=$44XX=JQ)s9\&vt <`,ϲ=-aM ~X\|>jU=fһA0=/ f5=/=z>T$<d 6< :;=[=RܼHżO=f:I-X<,=7kM0 =N<):"> |W:j>]q>X7yP=p-/=κ~=$90=K GA<Ϝ=@=9S<%=1.<*<'d=Y鸺㼚g=,~=7UIDpX^S8=,<8 =)=r&Cs1=1==媴;/Dh<8=$< 6|`=bG m= m=f\.X^$6= `=#=lKevxql<x:;T r<90= X̌= =< &Iސ=|d[?C7kԚ<%ۼ0W@ O=:Z|.=rw>r<ƛ [<Ȏ<2 R==x@= d=\L<9'<ڼwjItrK<=¦< >>m87=ܵ =pc<60dQ<߻q5=޻<^=ݽ.".FŽ -<:<:޴= Mb=8QU_ȼSܺ$ k=TҼ@چ=蜍<+< B=Oͼb<8<*;R<|-=@_)IH<}C[@,=*Ly(=zȼ00ixǹQ=9ʡ;NLY=8 =D<ԓ<; E,'R= :8=_q)=Xt=./O<P=m<<:oLhk*:P<@j (yм?nV!zQJ= 3*u5=$zL=`8.F',<]f'b ½=ѽS=޻R풻&9=ҙA{8C=kUCsĻY\Q2!\=gl<!<ο \=d7%: =#_<2<<=Ȟٖ35V=pS==rϽx/j=̑MYh=etpѽHT)O: ;S=ǵ=</ =ɂ""<>#jN0v<{L< ܿϼB=xV5½,ؠd>FC;K-<ӸqS4=|WkM=~?_=P8<7WN(≽Ԧb=h4P=5 =) Wl3]C=s>g#1>#=Eu=t>]4"~;aҼ:FsEB^<԰=Z2=2B`E 1?=g*;d=R ܘ*٧=ؼ*zX=M ̻+/@Jr=YbbO%_M<; >TB9G=>Zٰ0$7>Ώ޻#={\=z>78Gs=.WP=<Ѽ2<ͳi';]a<1>$<<P߆8KFW=}W;g ֽFuV@/]<׻Mҥh!=&<7RLl=>N$6<VV= 5A<¤9=ν + L( =HQ=?*;XA)Y=Et4lL'h,vn˻1kC: B%=a=x3nX=;I=2>=z?=U=EN|?=lx<5 =z`=P<< QI=; P'w:|4=6rft=iԼtR=_t;r򎼛,<6p;==U>"bXvH=N<9=_=pG==C@b"X++腼q=`WR<8&<*Y`=p1Ԍ=X5a]<ҫ=n=B`==W=ف>(="h;3Ƚ`=L.a>u=z=pl;L<С+=:? !M >iF=:,Wu=vlҞ=~>P =Ѻ8M= >Z4L˾}<&≽fj;z,@}=T8ֻ<:<TTT:X=MV<>=ȼL=O$B2~l&=WҌ:]Y=e<]_KŅ=l(G~C= W8~6^L#$K=KTɉ:=wV<2<0-=be=F;S&r=\[b.0"*D=|:w@0%<(|Z=0ON<4! m6[>O{k5OAN0h[DvF=`v==AX=ꆼ*>R=A5t)%6k>==ѧ[9=tnA Y)=b.ڃ<7= >q=Itq0wZ=ǒ=&8.<q];f誼<=Fnf={CE*$!= &;{£) Fñ"Luf:L<;P1L=V! =<9zk<j<3ګuz<(0;le ==ļpp{л͓<$t={<9 )`';Ϝx!<@X!`8<˼@ړVW{<ʼ_ 󂼪^Х%Z<2H-u=Nc0J=Y|= =;"DcP<-q<(FMߨ=YDb=;/zq =h<r<HYhSH~ ru`8Bv5+=9u<)BW3Hق`Z;hx0<@ H< |=}~w・)=E)_c W=P<0@[/=g1(/lg<<=BOe=K;NqX Q߇=;HҼHkr=3k=߽\>I`غ! l6=H5 @=r =Q<:qV=qQYY.=ny=7; \(OƼ=;[$.R=e~DL:=,<\YfC pXn=K$>%F=͠άf= y<{pX<<;P<ɼRr=E=j>@\=n`./f8WE<*==V,e(6kbA+==t365Ь|`<ﹼ/*OX<fݼ{tTגe'@h 2=IS=#E~g L=C{| >B;鲽}9=q,*lt=mżU<ξzц=Ur[<W==PW;9==%=`>ռ.Uζ<+'f=,s=?Iqߓ=h=6~.;oQ$"8<<KB=2b=z< w} =vid<+ ۚc6H= *6vi=LT6= <<e>W)<܋D=ʽ "3]v:=$s>=;S1f=EF;=e:?=J?6v>]= =W-=ޑV=<>G=t$=!={ҕ4 =ԇ=܉5=u_ż `'`뵼)<3`N==2?T=g)=j=`>M>- =#t[<;9'TLE>pށ=Fm> (-;G+لC`eB){^=`W5=0=q,=>F2=J<( =]s1gs<<3mR%%=Ѥ< S=L=$྅c{x0x\Ͽ@z=9ƻ^2}kX#==eLx'91=< D=͐i= =t$=U(^aԽJ<ןj-JMM;Y<%=8=:;:V'<|g<0 Z^V;?✾u < 7/;5/o~*=VV:%3=3}=HHfGC2<$p==-<ɽ-<'Ğ, SUe;$.>#=}phJ-'H_ <=S;D~)=<,:|V=͇ݜ<=;rE=x c==K=8= >C{\<ʽ=΂4р<B*UNͻe=PD=hs1=U:ȴPs<+%>p:'7}f<.KE<6>,Z?L=w6=Z0X> s>b;齴Ի-f>=> QW= N<μH R=j!>"YHZlI ܾSǢX=u;5;g>s=2 =`'s>>:==OemL/>dr/<sZ#\=gH{ָ(k>n* kV5IIx==]ڽJz>N =Nn=nguQxZ=<70 <쓜<8 DM"=CT,9o=ϋ3Yq; ~w=_4s2AoEZͼ<=+ H<<^4<`<4<<#=4Dػ +=j; u8= =_VAn<'巽0/=ϜCOCf'oe7&"=70ZaK<=V ep5l{<\4&Pcg==t&<=$LcfݺLQq~%`OOR;}5=(m=G!v=@$P5=(<^YQA;f#<<'O׼6"W=(2 T=Dz6mM&h5 >9j_u "pq}=βP-˻Y.V=6 q$aM=;b=LgceeN3=p=13>!-;?Ř;&2y< 4=]ཊֽ],!;-a(mDgßսtZT˽3aIC$<!=u34"9aH-{4iM=>|6 K \jq =HHJw;eF=1m=f=[=o\=1=,<"X<}Eҏr>h8ŽP=iÿxN佅;\!t̽o+>WŽU =2*Bͽ{3=<=<= Ǚp>Cū=&û)g=e<ɴɇ = 9>R3b_OJh/=:;2=%E=HcW =hĻ!kCR=0I =G9@s`1n.@;1ʽ/m<px =K"?4<_#>'~񽞾5;=@L:<=d=};=DC==$0=4=w:0_=dqL1=Ra\4pּ =g(B=Ի`[L$r=T-=FRD=`3_ NNLs==le=R &$=r?)(^+B=AѼk<;vcĝЀXa= ` <8< ==c=Co=bv=5A<$ Es=$-6;:ނk}~i=7=dT<~=? 4=2Ѽɸ^#/&n-e9hF=H2Á$ RqN<ݜ`<ā&=殬<(=fŤ=(,{@G<:ښS=+b=ƣ3as2ҽ3/窤fsDZ=7=vg=٣=Ʋb&wf(񼰳p6=h{S=A+̬=Gڼj1Dm>قg)|D~^TYȼٻDn=\Z< =E%uP;.>=v(:9`sϼ4{e2n;Hk =%N=lZu;J½|sT:I= k{[xnGΟ^}<ϵ]C&=ŖOJ% =;3!>"ֽz1>Iz>'nCv=> On<>===aX=LU)=<4I>ttUoC>>Sc'4m9lt:22럽N̽=<@>>&-q=b>ҽ!=x>x 꼸t=&r&5"k=A@imI λ,>=߂t f=,+u=^=i=ख़&^P'-Fx=J}=T( ϸd*Ima/c=>2>910=X<r<ׯ< j<Gt =omp=Tk=q=I=w;{= =sc=˄< m=ȺO: ;=<698 =ؼ=u=s=ѥ]n<:N1q=jV=^=싽*dZ<9޼^]Vp-{=L?=KjЋ8<# ռr$N-ˀL+=:=7>? G)gjs==:`X<7#*Q$^;L'ca]Ȇ5 =(p<ݹM>@F:WzlΡ$[;Bi=Pm"O[b+#'FXe=h-.= O+={Ebrڜ{=T< CF<'R<"=c<㒌@= a#=Q7+Bɽ:)g T9;f=%Eks7 813;Pǔ=Ev=ͼ.;`c<<!gF< =-ؽx=;0=*[?&B@pAXj : zׁ.=q -`rX&Z%> <ħH@`t0m 0= {=;*;l<ѿE]D-=(8Q<+=B,{$z+=f<⓼gQ7=B=f<;HR.1Ǻ(=\нh(̼'8`ẏ=UN)W׼<;<;<5WuS,bg|=7=cL]=rkS<=N=/#=逿1'I= <йі}\<}<,bNܼ4[=Z&=x`¨^No(w{0i!q2v= 8<݆;6ɼUwUh= P=<ӽ/;-=Š?&<;ty;E` 5kayKܻ!n.@`S`;,=%ֺwO=&A`1=Ei0>qu߻0=S =$au=Ɏfzj>=U1=V/P8=Jg3:jG;@;G/=?wF@niF~w+6)oa""x;W@=_v&x#=ݰ=׸T3 =EH: = V=9I=<_>!7<׍DmSl=_=P=YI<|m1=zȽ=$6q>.> ة}m`ׅń1t;0ه<Ҕ%K=Z=~`R=Ǽ,VDA֨ݼw8=kԃ=<*78pF=2'>3.(=^v?ӑ8<;!J{I=050=| >xUiXgA;q8={n<3=>N> Wc*:=xƅ2f}bS=Ք>4=h w[=o`7<b|>2Ʉ<=1+;!UlR9>t=WY =nwAP/< Yؒ<y*>=ꃻVb=eTb>\<3 ;<<_QZt<< =%<)$nl<:R]f=4m<==j;>Qc(Iwp=bwB=D >> g"/9=Id4<MmNe=xC;K=fR24S<Mt#<4ݺ-R6E@B<㶡8l=uۖ> =qAh7ao=ޚ!;EU<孒9P2ټ YV㡽22{x>L%=P(=L1<qtQ<^삽0F3q=>&<;W=\%̻\<==@uێ:A >"V=RP=H%ʻ[6g%>T=lHl%<9Y=!e"2~O#; >(А?!Gqo;VK g4{; =gDd= =>< g{};r(W= .=c=τ;P01G<4Nc<ե<@ֶ<@Xwz :7|ּ^)=w=x)=l =T;,=!=F\B y8X/>-=$:p ;5ͽ'\1i:nXdNLF=׽活j<0N`d\W2.ޖg<5W;qɽ<@=.a=zXUa-8x+b=xV=<\߼= /z\7.;T;edM1ݬ ;2w<$;ȸ->]J=B̸;ٽHΈ7F ;idvMie=GYV*9Vm!'1>'w$<"۫s|i c=Fk#g>2*>0=gT:>+y>tj= PD:li>t@=L <>R&<- n=u>I>rwXS>tNVQ< =ovjQp@<`a-n=;sW=;_F:B;_=v͕~<=r=,;w8=*Kb!>Bo=cC;v_<匼Kt>4-D菱<s q>KXؼu%^R=a;h[7 Pz=ߕ;({===ѿ<&<ܽ< f?*nP=O<=;M=:L<=e9J=T[:0>;-l6nW',S< !_AQ @=<3P;P7?<_.T= 7j<ĭ<> ^cc#=q==`<(\=Ck=o<^ 3t =hY ٹ<841KXH+=P<"0^q<8=3=F%м8Z*Q<{@kRfFN=CAI+W{B;}y饁<MN=wX'Xn.PE=H=i=˾/ 2=<3'G=h=⠽)YQ=+$f)=L=KD=ے$p<ԁ݊:׾<v>5&q=G[6 ;{غ`Ã,!Ӽõ9(W+G<<>=h;$V>Ź< /<).P#Gz<Ҽ <2=\=Ij<È=5cYf==`[<gJ3F<=+=p;$?O=B,΂<12=F@=XA~@|:X =1s΅x=$8brR=pK= a==RR<8<< S=`RKt<= K!=;k!=s<=SnCB5= =|d=:)a `<E#ʤ<=)=B .I4;<#(W= u=x";-<#=:=vN=ϬQ<(<`X/ݑ=wd3=&a+?a<7R=UY- =f"=:>Z="f]=zvj=881"=gk\R<1U';lQʊT =g=_a_Sm;.<7S(jT\ 'gxU;̋d1;8*=m*=Ppgr0}5W=,aVΩB0)i>}3d޻$~&ɪVW_8V;1=<1=!6ӻ=7%wF=r<`=ԢܼY {T{W>>=Ȼ|{=ػt2וp ) ':<=@; )<-v=H=BA$<jfԼ,=l'(HP=1<0O|[<@P#^0=.Q7<0 nv']=>5g=#m{*s|D=h(+< ,~<<|A@=^f=;uX\k< #=~(pS /(.8弻込(9>?<*<4$=f=Dv(Fż䲼Xh */H>D*6^=(<\m=YXʻ =K/@= $=NH =@]n<;)J'觛^:vxyH=sւ#{ҩ?뱻fW> Wޥ,=cϫ<;1燼DjG]=%==a:r$ <$rUJs=d!tW=N2s>}={13yA<\a=# >Bw,8=: %=>=1=ֿYMJ=!k;">=v|.= zxD9z4A7= CQaT=L$sCoJR=*RXS$=;(Ec=_X c=7\X,ȼtGW=FUrF=&tZm>=<`፻vt=<8 ==H$z=䨗S=𜦻= =}p.UwPpO9ہ4/0>=vy#=5_<`#D{=m=VW,<˛<`<ݢS1G=< dhG] V= ECѸ <X90=7)b+c=8 Qϛ=WyGuI{=#|2=ƁQ]iS=F&TN^=4o<1@n;0>J8F=9 >I+=kr{>tm=nY>(+@~W= \=kϼ̛b>@6<~=Rs /<;O̼=ao>:MʎJ=Xy ><1V=Z;4L=Lw=tr<0z'TP!<`c}}ƿ6=^<*<\ =Y5"Z<]鞦:;9L;I{y3T<9x"2SB"wS=~o=t<ΉE PvAmT;W<ڴM[5O=½:=<< 쐽ݸgՊ3."R;돼rU=A~+HP=pw u|B漦R*Ny=LQ(|XݹZF=&=N;r\헼=-韽k6RKW;Z瓑<EǼ]< *>;d9?ӻW%f;!@>>$徍^߾:\0=RO[LOap8Q<_=<_<ۼ<?48"Z`=u\Ka=aIP<==tk =5=9t +=|Ǽ8ս g%+|<?*<>+=JZ<=<;=1=KxE=R<<36,~_=8=^RYp/ =<ѧs=s \D+l= 2Ž- m$<%$>%/U5=Ӥ@>==N=>\=_i<=Z=$ri袽=JǼɜ Oii=iW< =d 22=eZo9༔ I<6_솼ݽs[=MN:@;C<=jb=YM:T>"=/<H]Y<@;pXnvgǽy`9"a]4_eMX<:1]̅ҽ/RAr=H<6J;?/ ="~F9ܼJ= 3>:=O%9t𲣼W='=tY=r=b I=r2<ɼkH!=^Z;VU׼" =q<땺m4;b ب;J>==tLT4cFeb=U꼓^/e+)pr+CX:}y<`Z==} =<S8=8.rA=8.dU=轚a >Xt8!tc == y|O&=H4J'a=^Ulf$2.ד@ȊZZvWR\R q_= OVeR\Fšü+=/=J Ǽ|3B^=݌H=bBmgFMQU #'E*F==L=ƃm=bQ^=<*dG=5MHg=k|O_K?Pf=_PɼiWƽ(<RgrݼrC<ĵ~-=0Xwb211^^0"#OP.UЗ=Qr=&<" Z~S=nCFNR%ê;SfK=mh=0o}ص'Ĭ= fz;;B-l=d';ȼaɜm)=[8#=2c@S_ܡ$ ~ёÅvY[ =}uV5Dp;6<Լ2=<*SƱ{WCpWZڽ\= b= 2}ƿЈd=@ȷ=|j<<;,;%<

м> A_<2?C=o(Z,=o]½:|l=cAcоH<=Cˉ?V=^=P<9I#=1CԾ=F!+8L=4m<~.>=@T5=_m=Hֽ;<ٱ;mwrQ=䍾O'=CmܼY<ɃC1<Ү<^ڣ7#G[=K(6=U%κ<cu$`OJaSęC*=~f=%`v*~ݽڶ=='fۀc)=폽t׽.:ZOz@b]f< -PN9=P=ˌ< 3Q\ y=;~!?ZC0 ;̩(=:=W-,C'4Ⱥ6=(=&B=_+B\s 傽g 'kdk~=OCB,Ce<8b@=]ϽD av?;?==By=cxq>8O"_dXN\҇/=Q=!|=%0P; {=K;<:˵=< XCu7-۽s=KbkS p<8jnEj8<+=CC;3f;¼!=>le;`e==Ѳ<(婼W+ws=N= =I;>g^-=[$s1=&d=9 : ž;W8¼?=1sr=C+;XYW2E/ʻM<H=܋U=r>x[<<7=@n%l,e=t;= ]mN,4WJi5<_D@x<-=h<"2ں/kL<ͩE< 8; _(Q@K=5̼h0\,y;YDg=x=6G"=2C =&:=;;N=F;<`-=֗t*NɎ=f#!L.0٤<k)=;U< =6E*мv?=;#'=xQH==f >M[Q%=b=q=(B>w3=fXΡJݢ'n~J==9_x==CĿ 60ƙ@)=<=z$j4SLl q9=$ {=ж[=*=];f?U“؁>$㍽{[r>I9<<,_=C<96̻naR^=*e d=BMH/>:=0=s=> 1<{< a=n󵾽a,>vl>Pft:iһ1H=Xs:UL<; =K=SSƽaK'3> k8=|05xHE=t:4 tʼ>ʰ|OZ9=_>ՇA:ϼ.<Ê,>;ir"6'=ʄV=Uֈm̛ ]=O> QL><c==7wμN=C=HnNijRCT3<ʶ=`z=O=/<>b >Q,>)4==x=qˬL<޼yj  n}=ڋ5%*<=7뼸 "&9=xu=~N<%==FH=HЉ=< K=+x;hD1(;3xc;tN0dL, Վ ^=QD=tk\=^G<{") 6=6<t=@0+-hTdH<=:xI%]=4=#'i8qPK߼%=@$g= ^;*^=p5 u="<|<;nܠ&KwV}="=d L%[y2=˽=O^=xm6乼ho=_發eWY.W+MK=̧= *[8|H#º?)qҼaR<S強ɽ\]HQ;J}Pqeы=¼<z>wi<==(*A\`=;8=?= =X<ń[<>.Y廑=>P*=T@< J<=@i=4ߙVl[r=7="L}x=: Vrk.=w4=30~Vg3v1<)=Q=P#=!==-<L<>"=eg<"6?*Ӽ+V==pm=f=L"X8RdQ<9hg(>\k7%P%> 3<c{e=+Y >A(="=`|=;rҼ <܎ׁjؼ켅)=.o%=F3=(u@=qC½`_=L<+&gH&=T;Kc<+Gj-Z/Iu<, <=!.W =Y‰AĻo;>ӽ`;6I<=C=tX=OI Rgr<œr<ܓ?{S=2 =1#^z~U6b==SIp{=Z=v.(_=yQ%=KoC=Su9B=H}; _ӽdžq <=T2<#+=q!AQ_޻H jƻ9rph;0 =u,d̥Ln)}=mV=Z=Zf.;KxqO-v<;Vo=md'0=';)DVC5_<&E;B HC-o>{,=<šn_y/:ڌez=¸zH=uOB_S4fEO㼊ϽB0ef=N%o<+ּv<\<< `;UAtxLM̛&ٻ2.¼C;; 0u=-=yy-mSW=𿺼p (ͼNP<#D]<m^񼗹=μRy;"keV_{=<3"L=6='=<׻T=+=#N~n;6[=ˑw (<Lu={*6wGZn>(ӝA=`Hڼ:@Z;6=`!ǽ(;{/O=𧵽thxϛʻۛVK.=t&p`:u2<_@g<|; === ]=Th@п6=`=2]T<}<\}r=2;dMS=b>}<_Rr^=V`=p<"=2r=-L&r ,f!X=i 7LQ:eӼ؂W=L<=DmH<={=i$B=sQ=F`6;烼DZ~[;i0r^=sټ|=J<_$ԖH9Hݯ</=7=;?==sXTT[~E=b_=8-=˞~q=k1;P<%< ԡ۠9y;$π=i4=t=Qx0=?;idínV/&= :<$=esw=2 8=3 D<.<ɽIVdIK<3=+<{6B: 3<̽+!=>aP!(=d,u̼x<-n< =J=3Il&i=8ң%>\G=ռ<&':>kI?ALO=={Pʾ < v;N ݼP9),<4= 0NU=> =[V=)n=ü潉6>trI=8+g9#b=S:>|4j< Efҿ<,<σf+#^:S(R;Q64N<#:=S=;s$.=< rE<<{;[;m<!P(=~<& ;I V=vp6H<+BʼΒ9 =8=г<R^v$>+i?6=$<>y=rwL^(="=tM=m/=輠Hu=b;Q=s|<~t4L<=c|N =ޯ =&=wIb>Ǒ=p$7>p{n0v=0M=G&<|TD=ӷ V*#CZ=T$9JS=}y>gS_μPl= wXHY/=C9G z<;g;V=KHr=y= r!&=;쬏=V5=b->k۽aüJ6='h>\&=%56XQ7>>}3=&~=]hY$=5]|=UdrZ<=H-&fA5m@>V0[PM}=N=sX[/0 8'P=HC7ڻ/Bۨ؍.B&=x{=̽ 6=X8=*=f =6b<ҞVi=2{!='Y==+=#K==Q]=N>V`o=]Dص:vϡmS=Yd<5;zНjQ(='ަ;/3< 9ç##=ͼ;C>[.yi= <==¹}<),q[Rs=<}=#=+<<,-<{Xtr!=<*K:|ّ&=l̑<9jֽ= ռh)8Q= <==ݢ=CռۼT<=S һw<澽6L=<%N=;Qt2hJ E!FA:ͻL輺=̬<;1"pu[Ef<5-:- ^=du=<[4<,H=)l=+v<7@]Qv>B4FS<2>AO= Eh<Ѝ<=CGټtӼj"<׬<,nn>G,>L.m=9v<c7<$Ae=4~&K0}$rA=\M=h{*wI=aM䵕^=j_QU=;:_=/#мE[[p6:PHnr<hq3p<0=M=q:s]YH&=_⼤9^= =b^1=Du;Z/Gt_SH޼ȕЦu*VXĽߍ=/<|$nU=<<"buE=)T==ϓ=Ϥ=]ͽ%S =.aӳ*b< D=樴ė=+5< 8:=X߼Z=Q=$dQ;ɖ|{lU?S;ǭٹ=L<kF<=j;(XtP=׉[ N>=)%W4xٺWD=:ϽGk Ҳ~=a2qp=>)@n<ٽ5{T˯<<>_s,=S״=\WD=1{н[5<hIP/<;=H:Y= >ռX~$9;JK.== S=8 nC;.P>W,Xxϐ=گ`=0--;M=2m=Y"Z\/=%=,g V:QV=Xʹ&: K_>Yw=.UL=5xO=L==غ<< gJ(tQwX2= G|:S==)n&=,hP=o`h=P`<h^<}'_=s=<5;ՁR1l@=mCS0?I{>KhHx>Iަl>E8`IBI+;;x<u> E=)=#qC8=J'߹"Լ < `w H=";<\<=uAy*JRD=R=9d<h&;<~>Y@=V- f=i=(C'۫<`E"½Ew==#~M[#=RI:=}˒=m!>[=@=aD>[$w=7==x="#3>=~f= .;E<)z hHX;u4=,E :n,E;*NB=@р;t=ϝᴩƭN=iP=/h5λQ<>Pl=>B@=I3 y2l>$=f=|:)_<3j<^x=~V] =+>r=X&<)<5u0yWw=]Ҽ8?8]./:<(ٻ(AƼÇ=k쿾}˟=k;xG<ą? > =wAɅ88=Em(H=>:Hu>wQ=^T;NZY 8<ꐽ?8l;J[=`۸W7<5~'G]|+c.0g=Z =$=!gP%>๼'A==E'_&=$ <=`X=býV<=e=BB=Ѳ+܂Al s>|S^聽8f=mm=#=?TڽY函=A;hcX.>ncF=kܣg=1\J ̶ <= =*~= v>ڜ< hW/7OZڒpr =K=Q@=A=#缘=ѽ"\19O@.}тAQ<10@=yrݼT7k z= z<6=bt$bK`*ErϏK=7>6> $ ^ gҋS~<-3a==%='ކ=W^jZ޾=>Y!H#Fl&5WT; ʡsYu*y<=Gd>2d=>u=A[뼜F=>/;=#}!:joJ>9S=y=5c<,#n1Es=$)=l*]v"ZWU _>:==νT,7ռq:TC=DM%r˽F0~==&.>G+_m&JtNqO=5$(>=i륜ހZ;8E=V?,a9B,*M½%/ϻ0;=J=-λj;5G<&"c"=w$Aq=cE =%m>vjTѾŽ G=՝;䒀.G=L<Qfe-m_Z_<*m=Z 7<ܲ=GWw=꒼ `=$Qk;^ >48ǩ=zgl=?t7=TV=AJֽn=HBT=w <܀]| 0In=,\᷁= O-= aO <.,<#|=ɽ洽4R %իd0=R<=~<oz[){=9;<*׼}ĻB vۼo:O.=If< i=k¼=ٴG=ɚ=#ڼ]&ĦWuj_ﱽ<=r \=v0=>ս\E<+d4]>Y6E(=/z ~ӽEv< ,aL="_R#=YǷPaY<ɭ1N?5$!g=0^%<` 7=ֶ ;ܹ򆙽m|kKw=)n=53Dh;; =Eƽq{$=1 <qx=Cx=?Ȉ==ViT>i=uJbq܍= opd`==ڍ=<) Q<* m78G/<&7d;CL=f>(j=w=/=*:;弒v<.?W:mniGeѺ 0>"G=Mw{)R<=doE=o-( *~9=>9=35X=\r=Zو'+[.+;X$=7"+=9=ҽx2>>f+=p;aZ=<db.*3H<Ͻ<\C<O=&ׂ]>e==36:=|R<| ='==,Vn;==ٗXe?<=12=;H=3Vw%PI?4 FGºLr=a?='_f5o!<"潲{=eq=2٪'=G#=)2J~?R;I@Ӽ<< 'ye<=A\^=<ݕ=<=yms bZ}1< }v=JԼ#Ye´T`ͼ׺=+TQ&:6Xڼ|=vH`{ƼoKc.bЊ;?=1@ nͼ7Eם b>W3g2?!ͽ_<6ie]#Ԋ=oA=;T$Mxq+h<𨼽9RaZZ:]<= /U=½ۼӈ=H`=qb<< s=ٱA) <'=뫲=esëۢ<==ڒ= =<=K >"=jM/LCN8U|9H=P=H :˼>}* 0ý?7===s#"<ět-=bUn -=~K>=ǣ%{O=RĹS P="juRýe.<< 1==Vh2=#V=x'̽/{<ټrUQh=1B=\=7H+½ykQ=Pv=p;=!=pJZFL<[׼H2ҭ۽۪g.%=Z0m;RU=h]Kٽ@;k%8#FPͼD<%(=\= >)=%ndoTڂR=3e4S==Y侣=OiygT<70JV Q=H0'qYc;==L='v􈽫G.u=e<+=?gzO=V\]ؽڽ=d[6a<w$Ž=p<ߥ=FAĽb0Tg=$ X/=rty<1~x=7_F=6UY=Z<=Gw=80z݋=j+a=0=MKr9Z=*^?<+q$k<@=M~ż cq<1^yi=0݇-Hk)#WW2\'VN<>R&{=hVα&P<?T,̽:=uB=ѷC;L2;=*e<Mmq:=XD=&=Kh0=|盽1{(oTzdLz$=֭=;<0ѻ[$<w=A|=0{QZ8er=~3= 2#=f)ilv~9Zx 3;=2h苍=,%օ=1A܄;|;:y=L{ZK¼'g;M >[<2=V'9솓=6]'=߽{>=uJ! pT^=zBSHe6<pD=Gc=;mG=2ʩ9; 国`==aM<Ƒ[H'= k"`=ܼyD~ܞS;3W>+<#)=aK=OQ=a5vq<]J<ɻ4;t#7PRD&˽ =v=⽼3^ɩC<:;*=2U <:Rbc{ ^c~(&mҊ=;*&==><+'=MǂaMO=\<>;?9v_t=A25=IYWܽOl$Fpp_57QڹqW=<b=LEO=lfw20=I Ľd<;YS3E=' $=!=<6p"<O(=H?$=1Ӓ u=f=Xj<}0='&qNm5=W<=Ӓ7=/=\ԽY=ZV%=M<}b=@o=K)=P f4Ŗ=<7r;P<=:@;=?D42\=]%̍= .k=J@`ڊcS1VO75 *OE"\:"K1<L5|=v < =w+X2=hS~=Ną`:\)Y&=N; &=!vO=̩=m%=U엽 <+<&YpT9=5D$=ՎI=SX<(=C*29 2prSE9gV=FÉA=<]ȉ>ڙ=U=U8\;<9=Ԇ<2i=Cqʉ=0׼k~=R̼wGkR=(=% =[h5z?v=E =[>xO=_B;]>(=4\U=[5-;F(1#h=51h3ADp=rD[=; +Lmp,T=ؽ0f.<|փ,T=-(=U;> >:0?Jt7>a=p< 9T==&<&~)Vo;nU=G>Ԑl0>F;=F>|TA=rk 8I>(x4|w=[J!=phތj4u!#X$>żj >گ@>;5>}_<:h='Pbn.5=5+`*tn:ɼ<;:^P>(>N/k;KX@wb<1=A>Ͼ A<:S>˟Uv=._>j=:CS>zS=_93x=(8=B<0 غ\==VV>z};Z)Ve񽴩Ƽ?/=i$6Ǩ=]"$?O=]r=LG=]Zf|]>!|===Užyqڻ-,=A biD<~=(@gS!O>-$==lo m= /,0>Y2P>L鼳kB t=b<.Ľ=)YA>q*>pc)=I߽">J{=\8>,=yz6:>r ><ѽu=5: \_Բg$;x>P,=sy=Q =cP`>! Y0,ThXf<4|Ρ+8>L^=)sA}W]=~kc=9mf<y;KP6!ѳ<S=YiH:T(W==μEh>>=Qg=, ӽ:>TEx݄==2<=oT^=!<>d{z5EuG:<W Oe{=1H=dW=d܂P= v= b6>: >fW^w;hD<B<"R=?p(>G(U>kLͻ@c7>c7<{,-_ԽZ==gۆ==[Ѩ@=*=DٍHF2)>٫.x>(J=עP <'=}J>nI; $(>-= w&=u==9=z8f]/+%>q< =^½Sxf<}>L=Nh?=ef?>}j>etCj$k=I=)c=[=C<7`aEJQ%V>-ɼݝ)=<*T=R5A=s0={=AC&H"?=DR-==A#;-}L}u=^,='=yKb><_S;X;y7w<&To< }z==Y =SY <6;dܼ8==w=jZO=h;?BF*>(=UMXM==Kܜ=?n cy=+=w=c]#"'12=+apvռ$\=7bSj.<9;=U===s3dV=G6= L%!Ypѻd3=ケ=N9A(bU=ht ==ݽo"Tj=qƽ$9=KL?5=2K-ǽ81Ђ=g {y<=Ю=Q _ D9;|=Ȣ.8=d<,I=E;,$<;Y= k=]4y<`:GJz/ys=ZBSv:ɼla< E<<r䴽ui7w=7>=S=+^Q;GeS6tyS>3F;p>|~¼F=nI<7,Qfbk=ܭ `X;/+=L^֏'::YÉaX7"dT2ȽV;β <=iz=[Hzs -l= 5 y|0X>;]"=>!:hL,۝Fռ|(S <[<2=JXj=,b#=n*=H=Oӽ\=_ y=<\XSؼ<}=|=&ǽL=<`͇Z=?`|=g;=Q" =o*.b:]F>A>A=_j;ٽ[=W/=^=ݼ>K&>=W3+'h=3<Sx>M|i~=s=יA+t.HMC=äy=|5{>==SJ4ۛ<Gc"=6J5=j /V={7U1>=kU' =b=<^];u͇=ȕ߽<<-yf=}gz=ؔ=jtTIw l"^$7X<ɋ Pm\ώ|=l0ؼ<|&==4=e#x=r={1^]^<2 j5Ϛl_q7wt$= =)5^02:=0=a< b+|\^<z==m-<=<ױl=@= k)<"|~l=5=x$)=AsL=U=<8wa[< 9YV=V=꒽4P,=|Ӽ v=aU=ΘX=4R7=9<ܹ<t 2og>۪=2>ƷH>A=k&s@7iC' >1=a Rks# j=1>DȽ>=%=^=½3c$QּsҘ=k<џ+#+=Fnq<%.=K=T>/=a} y=1{=r,[<.ʼd>b1>*=TI<2.;=/T:5=TC)Ƽ ><e둏=V:#-:=N1a>À=>,$r=w=8<ȼz<0ig=*ݻ=v=K4.D=== n=+=L+0QzxVn=@iػ\7`t͢=P~=;->=BQ־=>f w=hE= yҽ짽O6@[d=<=k=R:U<`1k5" =rhܽ¼zypaͽ̽QN=1٦$+=o<:x=5\]=zݰ=i޽py=Q)A >?i<岲<e=xq&=YR=={>9 > 6=?K"17==f-=.<=,<00~xce=SpW<1<4s=/4*>td= a =?=Bn޼}!= ;e`=W =K= A6[^[4=|l]>Jzm=~6&O!<(hL=7GܼLd=U<{Kk-g=ߦU=Oh=S= =bq=Vf<фȻ =fy= ѽڼYe=BoC xz0?>\Zʌ7(=Ҷ=wݹ^=؎< պQ<|7fRq=,GͽfA ,\=lac=i=H9iusmW=<ݡu1 <>/I[?A==xo=9b ׹F<CxLe =  zlA=-=H-ݙk>;H&lV}F9=h߽Ҏ<@I~aMyz=e㒱 ֽԼ,ݽKvX=="=<&j彀ܣ=Ѕ=Q=Q$_I`<r5 ϽS[:GBhj.-=?!u=* <eL=}<\f<}=Zd=p//=ME[=e+h=TvQ׈zDym3(=< >k=>f=xWjQ9ɽ=`mɳQ<آ˾??&=*ʁV㏽Ib PM߰8;ңQT>ZKG>Rᙽ޽j(=`#=p("ζoς =QMl=] >d/ʼ' :, {2>6=)'=KY#Sƭ,jђ=7=<\=S&=i;>6[Z={=M]2>,p;vP>=`= <.<=\Ό=_9^ ;"#;򇯼g=^ <#]eV==HẤW=/RQ;7K1i'Ϟ=ac=fr >o=۽7=O4|=fk?s{y==l;J`=* HJ=PzZ<=a1m^n|>-8F>@I=~m!"<=nZ=& =Lr<+=:=[%aI=V8vR=+U =  @սuVv<b QݥhS=˝6<=XXlfu=]>V2FE=H)=2FC=U-)ST<=O =2P==C!~nBfeyC[;%;9tHA?,=1T>q4OӔ.?=<~ =E;<S ~/HufxMC:=dK>-=n:>=Ħ n=p=<ټOy( =Y l=)n%q==2=Aݼ_(ό==cXn+=\ٻtׁʾn!B<%_P S& k^=Kۤ-=DQغ9==6=yq۾/t)?],娺=my]wtU=]=q7<[<얽 z=zpJV+=S팽׎<}=(= ھ *Ck=yv=j=OB<;=q= V=Zӽhs1=Mb.=J:\=8Ax;;Ż= 2=ؼ;M<˄9="v=(;Y,F<<0=,6e9r<4v=󛽥<߼ɳ!!~_m<õổO%=9==ה S=?fȨJ;5Bр V=9h=(=CN/V=Tk3Ӽ]<;tO=r<(c)Y潣ݽ=b%w\>=!;\1i"|RbYz0)E=~ԤG!}<ݵ07p0=ԼG-V=WN < w׻<;qSV<ہ  ג=9=<<K=(<1=`H"Ls=0 Xfۤt5=u<ճބϼ {?m՘U?11IGI=i&=9Uƌ==⁼;Vjr@=h+=~=3nܞ=<먆=8Er=.<ܓnf~(<<=^7=92(oH =qx=-R=;!;$5-=k=Q@<lL&ѻ})=F":yl<=\=~Lm1=V`ؼd4;;='[=lh=Z(f<j[ Ro<1ԽS:9ٽ,z-=f=J뼼M~=\FfSJ=(1=|=aVz[IWL=9ik;=:t|=4ǻb<|=^}=f*8nj(<=H=6.;ԍP=t<[J W=Ľ(後<:ܛσ=ĻmM=aa5Y>!½#6/OI==:=<Ǎ=i z+=̖=$JӼV:i)^bx0=5!?Dah=]WTU{"YM=,<=ǥ@bߚ96=Wz:Cg.=Q=.%BսPhw0ƋN̽Ԡcơ=~м]/Xq<X=41=r->Z;^< <"#. Nh;#'=]'吽d">fC_=K<T;AM̦XԮ=yï ˬ [Ž&=e;!=ʒ =~2aF9=򙼾; L%a>F׭==Xa>CR=Z?&릐<.=>*=c= f>g^|=T!>==dwe=޲guQ?=U=QVa=:5=v=L)=E@_1=LԽ2>eMR!38h8>=Ol:⼽YUkFc6=Hf<-*kI(=F:=__u6u=䐼<\<=rvJ7Xĩ=wf=EOd =y<|>XOqa}=UE[c=)<ʽ=:zxw=$-=C=UdϽf=~=]=ok4b=o.=y=

E$O:c}#O#kуMHubWB*Ĕ -AUg" 1z"MH)|zsaJ,X_s $Hv0".\(3(oTЦG-Ҡ?Ic09ɳ<p0&H:`ST{pYQ,9I.%&NqXPC*XwH'^ik1.xUҒ,UۍmB`ւ&‘E%?nkA2<4!wMSk$f F@4d*! IһdO0ZB L/."y i膽A+b^7vS ['E3yяf}K%~v j{/[o?8C˟6}hvCEcc@q-\&8PV sC@D:@k+TXidBCDد@qƅ$,~#wDtyLE{Tvrp?7G B1 L 9!=q4 1:CܘXKX ?TahMWsV "I7HXu͉;bhFlLUDG%5 R5fgR2:pV$z R J^:czIC$필ۦߐK;u3&p T3~Լ"Ҝd6~OJse6֋J98Ic :F=#͛7)pIBR?`+m]2GAQ Fwv:n4qΖ|b=F \~.`g`x|zNyRxMQx==?Yd &%ϟ=DŽC&( MPdoܛ~דjʃSߨ9 Rk ,Ot` B9I۪>] 7zY鈻3j'vޜ@r;{q:;\F-#U+q.6| B=^ Q XHGG6 Ƨ ~SXUidjp_ǓjPGq8V*pRg=y@׫v>ΐ̘ڔŵ~ߥ&tM(lB4gÏc4AYyDA1}H\<ǕNkvXI&w{2!&p:4!\E ZMBR^Wg7 MOoc|1`/l"o _;:мtl2RggL,`:cdyg0%@1dJy@ΦU GbWG43y`G$# h#h]ӛP+L$Cʋ H+_vO$ĈqI\-{W$PBOJ DLq\~+Yl*L/ UI?$7 gahc} h](2 Z} #"TH#P|H5@1^Ҟ(…XB*D L?!'6B &SȠ_!r\.-01NhyX^1 Ŧ b☸~$SQXq,`^iW2y^_Y. .L%%w4BK.{hz^Iͮ㉺_#4QqbId;$)'>V#$M^-m!!^l4@&pDzN:igQ Ɖ>-Lx%!w: XD0ILpZc:1Ɨb 2i]$:٩|x& z#kmb&~Yr_z96T+AG\uȺCCs(&Pg#͆p͇F;4ظ޸t6GLUz C(L+Or7r:S#ߑf䦘A8iB@7@f2"ЈB6OIfPDd(voR. 6/d9L!Z-<";"M=~p#1 S>G3{]oxj,'t r߽=_nf7Ni͓*R m}v)57( 1L4XHkQk@`5Dg,qx/.k1K?MpGpDCj{GЊ@,+CdeZpJb/-Ԙ?X۔es-Cp<M9e>b4. \UXEsX>)] ҒHɠ}!0Sh Ȓ^+($Q[3b!}ˌ˲hekgrPbio qKvR2alIsBIa}y(=bX,]A1}?}NמX/V7ɴ#6;C˄zkB|nfl;CUc{1l{oW{ͻ=g>BRc&9ر{Y]D1 *@5b9$˲X^P'OL!xMZ|ZG]C-y Vh6L5Ti B\Uf*Bz PK+Rgf$$ on5f*VwPV@ތW4'/:8hLh2:#D-ĸHfҿw3,r|x+k@[՝:6^nJDRj0C/5%3s@ִ\OقEA ^?횊BqXv-8pL}C9;[ }bwFow~fL~fLfBL`pfFZ6:yur&q7 לp|9EBy1Oudi˲~pi "8~V W X!ׅXׅu{&;s{ \gG犅V7RAyU5"RR_PimȅzwӃWۗzN;E?*떢7Q,# l 9By]0 -px&<4j :k^55?lwAbܛA񦡜4lZՋכ/ַ֫^z+V|c9^ߪol|Vj}uEDB o~pت_g篌4?p@RERkm2Vj|5첔s ͣ͗-DWh_lmm7_c:xۖgņtikuDWhN?fkcz}j!M>'j :$4B&1"-3&Ej>6V0!Te5t$M.HjM>tj =lo,B5ءXLhAokּѡ |6Njv7R){1L^MYl2Fhav}}pؘ C"7ȅ"HQRmyK=mg@DQ |g3 eNêTTJ> #bR C6ʞ) Eq^' ` ]+#t`4qSB?L$q uAəsz ÊI2ޟ<C5>>i339 ]+#UgT* }ʌJf4s$vx|O<ܶ-n;;Mp<r<<t;;\vt3󽱆V} ~Qkc݊!?Os4IJM8n6tx9h&JGvg7YPP툚~~?95Ol3w>sh\5Pt6ZP{0}1R@,Nůmg5VV9ĨQܔ a&7*; **ϪAZͅ Vuw0֬|SkW 0F h(t2#W:.ƂA^u ܍<§2رPQ!SHuRy/9{ef<'fQ,j%O zήac,}&k_-0wV^;}"}fW!Ͻ' +IpڑoI{~}dO DGr]ki71G=(ޔUxN^n)'Kt&;igQK=i?}zXMql8jkr;q;Kv/ⅾ/lE3Lk w&{g~R&T7m tQ xtg&g&gF 6 = 0;`Mc=0C@uxITF)5arFO;j|:< ߬B)"־pG>j9ȟOA, ? ?7 '~R?C**a_D+<`à ;< gRb&7)m?Ce!ͲfX쩠҅хE  6d.t\D@%%)"=b}$-~!hٛY'y*&/Y)*0t3,CĝGٯYܲgf33ĭ; &/@gF3#ؙxu*c!DT^GYfԙm3?I36O`JZ$n\ ?}?ci]YRt܈C]F!Wp y8ko-!DfzK)H_-ޅ<H.Lf^8wH¯"A4ġEv/䰪Լo1( vЕ000 @Rʬ0i]48̧\Z_y;h@| w8'5}\-^v+ &KqLiC59֎NMWC6}Gh{cxD&D7Iz0aI ṄX4z`z̫JE{uɫ~@E11Idr踨Ђ6Y7<PUX`qzm\_7Z!֡@ AF D-I c1*/)W')PUei:@?[_e-ЗiS*T9Bj iꪁ ?>$2gNPPz' $NR{8adp3h!߁Z곓QC80IMDVS?nxwLW^{tP>d)4f+ Q~mm 43Us U-y8Sb@DZdz5In9fAl%E5)c[e'.Jѹ0;nH{3Lgѐ7Lr?eŎj:$u48q< ϊӑyFi̚H}EZɅ2[;M{i$)i]]AhLÛMP`JB켡Oi^[3OP37.l )'SHƸ9OPKraJݢuNijMh+L./tLѲ.3Q xak_qhՏ{9FGlNF^'6|8y(W qB0q٤KjvGV*V#N};QS-I<d'I)¬z5uPTm[Z}nxK nBYt^8t8Y؀唠:f0AP,k3J:*d8@3G<]:.YB\KY8I: PBo7770׬0Js`De Zn!́ m֑!_=kweo)xI r)]")X3d{܆9H^cC?߷n &q fDZ\ls,2R}*`udqg mXjVM9B>~ɗ9MG({gm vIsbFN7c[Y5ezf4L!&ڥ͈ ^LvVh=;vRQ4oZ,. +YT}t32V)-6|ޭ ݀d7*PCѽ`! ;{WyQ,2vif# Z~˸\d4>Hc*yj\^9p,)/|h? @0_"kΏD̾aXF^cWF^cWF^5js-Y^ u½rMb]5K?3soY0A0A3d$Q/ԫ,xaM]gW] Y9Q |(}#Q*6̨[_ ZsY?SN@]gO[qmZ/ ̛yc`Zܶw.cx1岢]AZ#8c}[ %bCD$vEׅCح1v| P'F~luq4+pkKx;AG&^!xfo%J&=J 0|) =bPw0xywh!:j0ƭvV."RtW2'$&#RiI&g ^S"֣U`R`@8NތMJ6Z5iڊs;0<[)㕿=>nG WB]o{z:97  3Zۣ ]Csd12 oї}FAA;EZCHs^*B Rֺgcz(x-Tۅ7j@5Ict :} 9\G1rqc8%TC/\׋2'' 1mvAGKFsPPغ(W)YvY_j5{ _>p`9JYj=ܕo ~K`yƳ!XP_;oҖ!*W$W> DJR7A cK GBG[[?ǟ1~/abb4ayh( (SMPa VzYgYBg9$ٺ"ҏgO$'zk@A.8m5޶N5FF98 o*f,lt ;ͪ,`FR#7~Dm/=7 F|i8M +Nj٫ōq9n4Dj+r!P)ڴThW {b(R'1~q>F(^^߸wMi 1󠸸=<*_9o?ly!>Kr7ʘ&?g&g#-}pƙ#՗*˧&UesSE`WrH\e°,mŢ`GE 9iUCpV-7%[S66`AQkåREfQMMxfZӫd2TdQ/ [dQrY"-uH M;) rBhuk⽇+j)E, gniVZ҇?PF8[j5GmgY%-sAGOx1BAW-c6kVps1)qt'xdVQͧOã}1;ș`(òM>;z 9WyA  ]Bv#p6 .U3{0vk0GSVj)z [&is췸G'N.pE1A c | l^Lnpp]|,N no?Zؙx佔_o'/*`Ei•&v])%B0I >8x4V%Alώ>Ut?`_Tl@ŸOVj>;ʮjFH#wZ6lq8d ӃPTAv00|FN}=wԲbFg 2XGl$-ˠoʑ/6-y^]KE?ǻ::JOײ2e?7jF湧H̅Se̎Ȍ8N]yt!wJ16ey@yt!x` 䟧OW,å/ ݔ2k%م[A@\y, 2+J-+:aI˒vH\Kso0q?cH&}f:qs f|Lu֎޳n&ңq }v9I_~i{ߙ6Ӹtl=80^T*/ ̋ېd J(2*?ͽ_s.}꡺~Wy +{Tedx݋%As)n-?&,VZN[/} t|H)IӜh^b#3h0< ƏXj!) }4Y˩J=X]EC4)"Pơ {* CG ڶCEQMsށV [xXSass B FE p3=q̨ӈ3$h}B2uM{V> -! > njcpV$ފ {Q*Gƒװ<-1S%2G;ֽq -sP{Qޣ@W|h4Diũ#Sk!ir=Z%Anl|ͲF̏2(řdDGҊU,TS6rT`c?a` %IlvJsuJ#L >NZ$^^{9CX"c;|~_Th fsۑwtH#4j}ft#8H({JgbPg E+]7T "aKb{H$'KTՀq=cɳLWrS\j.k7.F:+]d RZܮN8x=Ģq.9H38/U$+復sm ^zۖ(vD j[ ;%Ss%:{w ;:Gy!6RU;g{[|7`:jK>)_Qb.CW܅n{̏CK:x:\pcaQ;u"Sy8_$Fu;*˴5޽;mC)2 eF)2HLf:=DhE&%iLJi=gcO0UWpCE3ǐz}G`=NtЯ U[,*3Q(8Ddbz b{xVTH3r0.Q,]㠁vgd epo{؉[U*WWey}y'\2ÊGoo 9ҡg e{XX>MI-K&L  9)UwFw뾹9e: ]-dG(LiJNU\QO$1(Yn ")LIr-.a!.r?.p↻K:x.-Yz1!þB_J+. " G+6[izk}H$y!>MaP̍eL|$2$ ]@{h—:R_X/Rg^6p/hdu0,oAuӻ{Fm|ȄX{=0% -s_:X uDuaJ}W= ϣ^ˎ?dB & k1*Ǥ/Q:WGΎWfzz%^<&ƀ%C4 ; 2":T 7qf'=/K!b7SϹ.Teawd;P+:=`ՕZ<̰ܼQW=) & ՎNj(yUV-Ș/L(ܐ%c(h tz3^!5_7-h*, )dS!߫98fhwyq I kvzL]4n%&\2-yAD {=$㽐l vO]H)NJqdϰ/$nuvܸK]8cr0آ&^0KFK7>vUyh{]2zlI!c>ɣSf7:]׿ жozʛE*o\[/tڛjo][/xA ^C}t>i|xq Qt68ҘzPyCۭEJrx| x1abo3r jE%`mڌZ\N-y%{:٥Muwqqq6 j>62*zb?X2@Àmg#|CTtxc9T$_0zrk:+=Wx#U.a'eg;=v/؀JFolתNq ^I̛5Ñ#1guIrLMw ܨ|"Rs_ r>T!d96(jPo- ="BrHgm Sl5zڬlCma $3:Tt$Qyދ#3sq-Hh1( Ѱl% e1si$EmhH]GcϞ%xܑIU| f-E g!aH7ЭneEBuN55*'=|D& OvH@E)QG_^Ig6Cd;_ v?X6I:-`3t9a5DTL-5~fl7E?=`='MY/vM9@}dm3бn(AY`̢D=@^AZMQ:B3Xq&u9m vN*~0#YH#U1*o_l\uICi+;' q<õ4 K(pIƵUP z:T¸.*kPFX*B*R&?p+W2ڮEy]Q.%,5Y(|3hWSb餴xW嵧xH:,@G<6/=̳qum (^7n+<"jfKRyl*=R\_'ėQa>ya ؄]n.t,^Њ @MgPX+D x oYcqnxF}X#eva?'͠M4D}YDhq}# tb ij*(; l]auomNOn8~lw0Gj] xNPKHPv+YOt$&4GZ?&$VYJDjhHH`]IZA X'Hԃ8 ŬQiNei mz>@|@&*7ga< jszZB5* ր;C LAABQK{吥%#0S_'ǨJH- -.hOԒ`E/34ofO9eVe.-ٹR^|2,IAVr5_k2R$3)"/F&Gꣾ~U^yK~[$B-6GG'j gܪkI${X35:x̍#.8!4[(~y'e1IfUY O3̭1/)$23 ]08h+s E "2\]MN,|CA:OgdIᬉMwF[4H] R\dB:!FaRYmR\5j='"BI5ƭR G,`bu@KX O@ [l#jLt`h8VO͓naoEp0hPҙE<$oIE3)LwՋ;Ui9XgzQ̭W@O(:(#!z'"U<'Ӊ^t㰢EI8DiJcˮ~ǀש`>&ѵ LP!U+)hwR;,#)&j h5Jcڂy? <_Z?<6j<,o< R C~kܬ_izD(8qȀxC&[̳"`@}UFDFqW %Dx^r)M=oKt܎Z+?V~ >X`rysZZz}<x(6]/syͥ1{OF6ǰ>x{S>;Y`C=}`~>~ݏ$rtC Ӊ g33uBQq>aJ&CzV\x%L: ~cj 4#9] D3SL6SD,MmS?Ik^" T}BS =6^e(ŸxZIΆ01EݏCGQu4[pDcs(D9*φHgz7,ATEf7K",κ T4"ֺ2#ḱ1%p5Jc,~!s-ssC+O(`zy([>GDŸ6%ם.e 5h:IJQI~4|-CXS nydr2>ds, }ož.XnNj,;$e7GyxS\t=0[,;Z933fg|nmV0G'm>4&uPnߩCEߩZ>ʄL`QR9Gm[4>M oTMb B_"ߣ-H5OT`p}$ vta}Ɩ6c{?t/>1-،MsZ}n[ꈟG*|Х 2kY"iZ G#HbHJMMCs;^ `\ضO6N3ӧAX!qDԷ?~2U6;;h{:Ni"bǙJ 1}xey8I%8#bADI؏'ah!ο';.ǽE2-%t]ZPO;+acWro%SLvJ!K1V Z KRڂ1q}>CB-ؖ»/fr, x䈵~J =3xhd$CoOk4)ȔS'ct&D ~ Q1Q7q4EGEE QWLIԇͣ8`sM nttk`zqFar2@r.ˋo/%qG-Zk1 $fm'3oTi>踋wXn@F2savFU(L`BFd2eSip;^1R/ElhIG4M&oܤ荰3 X N%q1IX摅`FF\4yыݞvC!wE% իrZJ ZpJяڑ. %vʰ\wl+CT6&w̏>ҁD"( Y/† 㙛>bDgls&=E,e'1IY61'\##k5 vn.K.Pߵ["G Dge*pRX"9jN>s$M(s)kUa:)-Re_g*_=7T>1f250nO"Gdؘ$` p(fpdiT$ >'"ۮLfBT% e+N\;03冕a)$Me5?s F EHސ 'a%˦$Q$(,RJ6{0妵[בq(3hx<5:GPFc Bsn].6!`=3~`EVV#ֆXA2e8NmXgH<nFdDAڋv-eCUŻؠj⃅ DN~m[jv>hk~ ?%0.0ʪhhQFY}*1|()vX $dž@}U%S @Y=Fwu4v=MX?M `1c5~76@##Ej93= Aþ^^yZ@:js ` w&xd8*ޗ:%E`R% r=م\)`!uK,J/5J2$b+ &Οa3˒@lkj V%foPR~)Yޢ] CyzxZz׽%@NŻ!+8% , ,MљpC3^yJ[¸6ӽrX"ZF67VnZ,oWxfZuzcX[X|D8.15lx->ćZO=1>vn=Ci)ee;rnBDw"A!q#7-W4{t! bN9'no꼐E}"nAmPvbsRס ᩵,tKg_YN "޸*^0bB{s >}-%|U0mL"=ޕI^O:10H9kY[iKmZ/cY*B)RFۓVŀ9:MG~Kfmaܣd65H.NtGӃqKgF?'kax0bIșVco"HKQ3/f&sqesyѣ<;1b馚.\,%`aߚmёv^J|"fMR%ѭ6v\tQڻkrӕۄu|}F?N`!OB\1~Y3KK$& |6Ӛ w9+r)w&G 5;%U>x>$tv՗H03wIhvo<)iY5i&-9߸73/Fů/6%b+nqpLnѱ&8tk =pG`bHm I PX=T}<uN*, wί_a]' iX_6MFTcu~'Ei‰zFw"+ #; ?J50zA'2u&< Ex|H·[ٹ5lEpM[s@Yqzu_Th8c!Of 26km 6{=8M8/Yme+I{zDHmr4=w|669`0 QYEoʗ_RsmrYK!X:62x|VsC O=[Ou^"5֝%v ml^rXkڧcL?wN t\ :>= VLOb;v8`p<ݑ7ԂYuD*U).'f}K '5 y `Oo=ON[?$ؐ&""A(|@)b7&b fE=kxߋ =yD6|˝j}?^LzG .OT۩aO#:,q~+ 3n;}ް F(o{q%圖ʽQ']k#avCPe1fIeO6~'(ili-P oݤl+ƣ| ܢ7c0O(%a?bγmvV Q#Z!{Qnŋ۞՞lnm娫1]Jy^5}mn dEC]w,v_w|5d7^ԹYдXWY 0f>3Try.y{^ A+}m KF"/sլ]1SNkZ Af^Kb.zxSz%C"2jo$0竷7ӧi5\^] oҦ(Rː6荚&⷟IH`U*.z^~G$c?V@D` ,B}%Er9BI-DLy\x3N .4N];qc\ 43sXYx\;AAЪ+SL*̗z pD?ݺAs0Ǯj1aY\꫻S숇I VbulWy1#.=^EOEkRd*#HҠNFt! K.'!jXyzpPL わJ([iw{߯3( IkZ0WbF,sF&LbZV?2 eDfo ^swU /EОLAjV:SD^=|-ف7Fg۶׵z}+OWb }feKX y t*W9t'2qҹ)s?:k^Ś9T/ӾW3RVUsmdU,9#nR!QKSѿx*inwn6:ik8>6^mtڍ-dSw>EF# 19Nnc6nS=yF hUsJb}m;NWC!tt(ΊdG^DTMWP@RUyfAҟWp5'E4t =@Z 1k?^v Fݫ}vUŵ\ey>~ѿw/`_е-`,oA!#I^0WݾwKͲ`n)˿gPdB,țpFTn;x[RG;^],vWD0$k#s@ ~ķ%W.&tpgR=|1y jB꘦[#Wǩ\9 puyc p}SXT3%H=S'@ @Z mӬ*;'aPP &0cΞ! %UcdnȾ%4:%=ha_.&{7 T@c0%)мҏlRM)Rf_rrbxta■; p\[4˯$]2%1k6']flYnlPlBkk^ +|d`spY=}J?m寒BQG@h:JH 5N.u.kzZU?F}s\im2hxoG3s]f_fg@ϟ?9g^-- NtȋII=;J0{c; F 曽l;N 3{:I'v]=ﴛ%儃 fהyOx?cD2g=ao)Թ]8Y?Ls9[(F t&p)%x! ԏY}-S_/w^cЎ+FQ8 3' ;a>m幁Y`3Y |"' M8l&iKHFLU7%D0º +MXa.!ײ'|C. ;QD]w߹:8j1Ư{ӔG# :{A>-|>0nYɶ҃2@1C9= ł4?jْ>FZ'wf+?޲4qLHq0FQ+2f0sˆ"@L_+f 1{3cγ%읞;X䈯iUJ|;gܝoa׉*h&1m9ӺScw4_[- fGC]+k-e[]6H?Kǽl𲆧{vmvzKр~ "M+dVd8j.YqrpOu꾃 d@qq0lNso\]I5촇CVzF(YbN@ܳk~;1:1,OϴmFC灋SIXX-gD^6\^\}=:7 c:gsCءwBʳ\[] a!D@Q2g<#MTyYepd=d% , @ҒʲW^rYT|-."E!LR?3KcGlL@R'm1-|kG ovk߃PKA,bTao;dF+=f_)1YY:Pw6yx&ۖ>}wO縡)Z=A&2[ Xu*~v[6v''hdTY3uӿ%CVW*"j#'4Uoe;i;{9tJi )?ɀ%- l+س밸-SqE03 7|u. UWrOExqLTy̌;F956e; *CV胿v?·8!х}(*^ޥm~qkVgL}O26a>@EoFl;Kr0$ #f_)&̮0 `ȼ #F24[ßV43\[-daz]d[(N" fRa DŽDD D@kb' .M$0 pSh7vy,1gF<(_#WFj6: Ңiy >9vq:clwcX,@w6lr=BUWm1cx ÆyǴxP[@EQp(LFg9gYyǁ@(2UqunYƗ[͝UG!vR kY?m\|y[ foy31Decu /^H甐^e>XO]9i_|,ZcS 0;.ʁ'Bۓ'v `<յ/<q6d Ӑn`xWsӈctx8b!3m}U!S#=9H)[ёca<4+0/nM[\Re:*R}6z/1M0 n,j6jss"iP`6~|\>%D}9XNhN+ŋ>ҰL^G,qI 54!NP{zepu: ;Au '_ƛ:ֹ*O!(ìD71  Fm'>3kTJɼat7 hq=iڬ/IF5S 'N;z'N(ypLםo[;#+{m1F'9ɤcR?GN^&8-q Xt ٗr1ނ>p7(~{]M^Y#]պr`oO.xmv7Tq2¢Ɣ]/LxXZR+ Y#}f*Q PRkBi%xF.&}Ґ?.`*hX~RX:Xj)ɻ~ y |URIdxa8l mPicAts;{ )ng#7A!l t?e-i;ŵEѝ92oI[0 {y!^AOݓ/ `<\c!H:k>щ3>8a3$̖ C9tRaM ß1nFc f.'5Re ͏Z>Z4"̚E- .вF^Hs,fbB$"x6JmX禈BA QЅ$Xصpgx?踍N~uk.jGc,Xf T\=~UE;, s</{\'^][OK u1@Oդ`5PU]7 tz>3"=2n-gtЕ6!OEbg")`H5@zY-I/"p>Y*q(١& m Ǿ<آo;8CG{iΓgA ߑxÿ7qG.jHVj'̱L[>N_*%֬.às,*c[*e^B\q8=|\3o`LV b1WF%ϛCtZ(T<VjQK۫C '!睟7@4\x[]ux£Uۗ/kz]ZQ0zx9Q{n~q >^w<zS8Z,? v1VM*V6||Ff^FL닮 AeG Pp*2qga>І hsA ibB^uV6 +pGbw˩BXu7 }1,Ӆ޷^VRHy)V+3Fࠗb8f; ^6OFX^l"]]EX2dc<9NPE#ccg#:\nhyĄQfD2v,l <1l:l [/5iͯUL?{nf&G~rDxKjcyύKP t/}Zї4'YLxay^U6XKnߌQ az:tLAwbGH)huyZu_] e HL7/ &=,phvoS`{cL7x_Vutڵ߰uN]˜Nӯ,wek*J_B&&ho ԞӌWLJ_gG&@eyzBzer eX]>hc`wg{g{7wnNu\>N*ګ\j!WP*W& s<q  KD#JNA 92Au4 eg7zDl8fNٜo;/WWӡWURWW@7V>YC9˵9f}QY.o7@ɂni* V?}8:; g9C9'ט&|w*It)#:T?h}5['L;o|/IB_y{-/(hxG6P؟̨CH0 乗uv([ p0yX&c!K :)f<O`ඨWD?Km4LlfSS܇ `)V٣h*g,"*QO1СHq+C<Ԃ_>0V}.nD QaKY&61C/^XF5-ehUeQ0zl`RhFi 1=|&^`/(;jRZQf}c8Y:mf=m ߡY-hmt)XIovǦ*?0k.F s7#tNEN-/0 ,7p@W#rI6efLϜնGI:}=t y j?31Ub"+\m<=tqy-b2ع3QnYqp`6<Ix|F=`6z~To_d7p4/@y<}|Y$ߏY @>{:5Fjр8Y'q7aXm^LȧdhBg{oE,ǿ|EyΟM܄X3Rc^Bg70 xAӲ%"K/]/`\^wJژe,"CCo#J42m;/e"6gW 1&8ό^`0|:]1<40Efɂo||a sCLF,T`^'C2Fǧt1y`I'k 'EAճ`;km&\xa,.펄С.!+߱_/3]~^@os 'TxFJď0hbXu Yoߔ,9Y ̣ :yU-v?6MR\FZDpWoօ+g\ cOLIʚjk\v2dCKovz'&XaCVۨ1h y=P ]EbaE8΅̈kA&_z; a^2ۊ:ƃ74>`6~UnUl'w?І|9xZfcj|+` 37pgD䷔ݗDR-)w5.0L,: rXKăLu= $J"릿WEr"id!$J6$dRjՊ-=(vtsEJW p1wW)-den\N7><,RhCχ:PwKVruYbYp*N;6kHɕKV<׼e|5;;iG/}9[aH鿊e"bX- gb~1X7oY +9JQ%1AfL.mZ#nSI:I;~kwRvi\h1`EY|1V S+14ӜD$I,kZaǯ],fGQp{OWe~WLiVJ>mua[ncu %:SuXY'`ďJGV7 aYeyssmv& J>鷏{j)B CFS9ܱvx rsê -阨f"ʴ,MqY6w+hBnjt&dW.S~c|+so {oa9ju5ޑBuluQC|gDTz+7dMv;1s5 pK5*Oc`»`Akd//Q,rP5꾗8xW$;"*1 jQg' 'EcNSc\yrƾTKҊ633R{s&Uxlv8|ؘLv>skO`GGn5PjK,OlE0(ɩ]tO*]4s'{)"HYbal~o!:ǘ[";68{)leѸe җx/t`+c[X4|jZ%"q9n"OѪ!G<Y8wgc(2oH#^"{a9*"!j[v-vx'&{P\\qM<0-Ab ,ׯS[LZk !Z0o| q2æOjxvy, +$`%C퇧5Eq AVqv{'0탡l\UQ۰c ΈRk;v:%kʰ*+gAo.q]tCp-?~!!?cyYن_fxH_xK"2^|*;4:̖#f(ϮsC0R(T$(#%Jmqh/踌sEvDuޘ<]XQc1Bkk\bvau.& ÊG}y.C_f w(XşMiK8㱄dNCh0YBԌP<}OC` aR q"E'CUx13G}7 eH0ϫP3WO14eGh jm}q3,[6CVXd=~O_$L$w2c`f:>jO-4uy{ Ŧ ((Kդ}jLQq0Sڭ16H׼x_> Yҍ,iGy1c0C*qfV2p]*L '"\PJdvH}eWMF`A01U69+Y1zzdۿʼ(AM8<$g % RNX36ҙrA g8x]͚|LEIV[%/7/;5wt֒XX H'vѺ/JiʖY\2/EK|oP ]8(3fM1{~_%aNDzϢt8o80 _î35S]ŷѣAz)וr dWxU?ͥ &[th },W."gHeoѢQ>'L6[zO7(I0Gok{[У\Х*t[5a)±ɬnJv0ylۂ\"}*%ҸU>$T1!04s^ }~RQf_Cɚ[s7¸~(Q_:\+:)wBt^՜#j1"Y-Lk 8ܢkY< vY#J4XIbH3xnI?AM2'S1p| |_ {4jD፲Z+ F믝֌-'Dj<uVy?Qm8>kh15xlP>M#:+1 Fz OiO .i:pT[G7ٟ ]%`"bC&=ouԜ"FKj:M1;࣏!FZum: 9<_g i>-+=Ƙ߄DexEJNRͳ,B;Z7v[\ 0*7&rN`5f~rFM\霱s QYG"G@ f3pN_QK6>Uڠw ^ _ǜx-@1W~+A4E-$gaʷBpvv"+QXCʿY;/t[%*I|QiZ$#Nz׃ұQ6ESb{bzA&XAp%Q&K!sASԗPPȶq)Qf DšLu ?N'S^+ =dpY 5xNՆ0|Cš\%)x]+v~v-q2ю8{;?4(Y%`8A{C> :.Qk^ev@:qxҳoEnZ$v\V!,u!hi^Q4m?5Š;j/h6BԿA-2pd|NY]rͿIoHU9*"VT'!xn@mYW<R[Bh0 ܥenh{#56;I7j^&-Y뉙QPoCo9y82_Oe|exI݈R7s˓VQ'=Ő2]ęb gI<02`'ٴEw@^'Y0Kڄq"*'@bmݰ/(TB:CmK %E<] Qҵ䒇ٱB AT(3t@hw+Jo $+^ҽ!yop"S,kGX &p~R_Z\:P,d[&5b`rJ&ٻ "Vo& #[U['a=kZj8~l _Aw]w.U1џuRC[oѸW`)ůKaY8j1{rNFJ0$SPGt޵d ~0B#uLjTFp?OI7ڝ`zRE˲^`0SA SٜBѹ gqeTnJFZ}v4U* ;q}m~D${]=I`w[lN|ޥ8%af 0Y[ia 63qt[[]<&τZ3R3AE`C崩Y[4ݟfc0,GA%0M|EBeu@T9lLlz&QfYXpY$31#MT?_Y'{'+O[^1* a~dnNظ C\KK %Їn΄Krwkk&[ov_-0h\WGtn-%j4Y%U W_j4W3yV4Y5lV@VQUVкVPbV [t+l˯*XϡUej;S wއy2j~_s O'H6Tv1"n\(^1d{Sz3-N?) e',ހbLul,,ܜRT&&4 t_T+:>hNOn 劓PNKƖ7׶Y5(`!EI0['tB޺aI FrZ>iLj4X.aWALBV ቀxT#&ي`O& /13 fy/RӍ !Î64`>{5z v|^E3`秔|8/a򳣟shy><-M-o6h)^Z~l(&'A RaZUJvx:ՕV8 #ƣbl6ĭCB/D eNEsVlvUTzrJyW5\N1tsU4&z 4۷08q7ߏƬjQC1CRjtmbk aJ,ĕejC{Q#ntcF`r>݆՚x6I&*DՇ `R+Fϻ)\lEuvTpx.KM&u? g;LC1o7Jh ]Fto9}L&;GJ}ΛQ{+xP/ǔ_ PҚ~ 2LgڟAǢ0gHP&2ۦX@Ҏ{;j91OJCcܣ,^.4tGU/N;I9$a}d`-5vsOIF6f)>c P-e [FH4.CJ%tۙ%#q9{ ]h8J.Ub8 +^LaK),+ԀYjcdaנXր/ E9j%~L{lAwwvٵk {{}~kP#\mc'kGQSK:-b7$ԭkeM:{fM6^Iygi/O:x[Tk4` m%d{Jb[JXMgZfU9jMG΃k̼{ {Gi ,SN>n & ƜMO. f\ޣfC\s3oB ǀ*D?¡̶jxR sBZ64CP"934e"Jm)dއHG" eAЍ Ԃ:|gm9SE5[|b=ԁpP m`~y?>;Y{H]~ {g6 douBgBJAϢ_(2eW+;shOqw&ng2'@W{b9T0A#PB+9 ob!fn@9/n~Lӑ$kAA,o*! iOb=J,)y,x@*ό'Ѣ%BcGH>)ɕݟEVӑOLd-#@J{#[/Bbh lVTgQӛGϿ!bsyďIyC?դG=6SSѣ:!FpѥzNbש|BpR[Vh.kуBYtwQځGt 'QN;ȴsQ:XF(aie|3H77*0ϟBJo J~k)Y"tXPjxSVÜP+*-o6 ؋:PQRְH.7RӰDыRA,/΂?{6a҇s \5 r5+R'þ,Ϛ/7psvoL;z nyAg6F;:фu Ԏ+FCc`Ǜ5-gO/bpj SD5f5ԿըM}@|w_C2OWȓb0EuN뼑/FLHCy7Y'EG,[,Gvx%p$苎b%T@0ֻ] oRrw7Rpq QA B|և~NN9bobFI߁" j7W>_.g(Tmx)(b>3pȻb a`!2fQvw@.D$ekWD}ڶC{F`6™-qAߛd%.V& >@ É̦m۝o;9WvG4 #׋F,X0d 'I+%R d#`6'S %V1\_ܛ͒?,(>+rIlK=7[0]0bE<,"~@gYH3Tl(L|Ĥ; (ƅ$!3D Bki|]Ix=mR1,bJZY}*pư}SZPL ۑLN\dZcƱ %4Кٕ4e?rkt-*!(tTXJa4;XNJrldQbGʟ#bpWo|P; dRT"tf̐XX5cVH^b cҏ sks.f^%zohigP >`^pX< :8LY re'@q*4 y:݄R6B2frbd;&tnꗴWWe4 X ^s)օylD2344KtLyH[ 1fhqϭq >v?J\a 0!O%o 5 `q-pc6aSϕ TlGZ0 uP \iŤnu)(>E]ʭ^%7*"*L>aǛi52 i6EoQ9 K}`w@nE(6w~O7dzpʖ+qesQput}TfXZk?|&JT,H\-YE|o(6a %[q$:w-AUը.6ǫ%2$-y;{9t3Z[Vgq%XĺՁXI-RY!;qro4-,)3<μJnuUºV'QkUgO%[iKÝrduS2 V8%T:Y)QJr $rᗠ`.!+oFm>yKSIDV \Ft'k9XA! UF:֎IYJ앬q+o^V޻WK"bPC2*U;?3wO1 scfw @,㶊HATG *p7C:Oe/I1 5Fi)γ-'Uf ZieH3/p7{ڍz蜃}dּ*8{N'H*,C0Az!/_hYCi(k;TY:':C^,\ ׼ɸqez3HjS=U qM;V_ߒ/rIoV&w*fyd,$^>ogʵ7X.kjaaE|kIĴJnoo?_?o&S Գh%*_螸F}u.u pRFe OA]@ܮNMYDď TfЍcLz&JۼDyB n.6TəsRAy%c( qY-bD})XSX=|x $PP%v~#q˧.Lߝ{ຓk,ntö2QH#0U Èt}l}P/ ~b5B E7Xn_~[cJ-LY7Β$s#ן_A&|n$O@Y6/'^<o/2e+C/>Rx/O0_(ZH\MU2d Y%)G^mP}VI ]Mj[l$l $:@wRj^Sgp:7"n!/->a?$yúGj # H9 @JP_i٘F1d@쳡gFn@@7t ܔ2PfCzPMWcR, Œò +L?&OͲŴZq9 : h'n9A?%zyt'C`aN~/%ZT3kю(4el]a!G >MvȎ=cbV>SgӐ,yHm({v^`c?PIǎ7;@RZhDXՔ;˂jv`C M:}]sX29voRKn(<}5- fҘ6ּM(udwJmy?U /P~bG$0g ,tJ*QAmHj 6 DM`<ԜߣZjĻ6Ä.LRmL牝^7j.bܳQЛ%\b)1 e{{VU\mlr?`xxfM0Hw 9?(@jVʒcX%UJѾ.T8,>$]EșYQU6ļYy9h`:f@ٱDZ0ugN[XT&XJZg2ce+@.Eh쒻M% o"? +͟k?鎐< 6vAP+)S86:ЀA|=eFziQ.j2!__l-YP)Krnr*Fn,<{6 i5HBk3}~e^#4Ŕ(?jyφllSrF>^c36Bngn')[5r,nw%da|*N6-T*JHi4q1pϊ.6'o fR-hiciY">nxJvfVlQg ghdA jDž~z\$Ke6FR,m0Yh"-֧k[܁ě1ZoElfūQZ#.+sȰ-5aydO.kw@q޲*c%)^Lm%W@O2W t#_ǟZ7-sSZ㸎ƌDERd[˰(H xQD ') ? >+ }\PM᧟, ]xiI~9ڧN!_Z*t hn|OZpq6zxB1 H|OK gSRBFĄ|LvzXw.X^*%Mf1yl#e&|> * %{oQf<,lĪ *Ryc=!6bPv]m$ʹ ~fG62rsQ{!pkd!s^vɄ*ps%Hm/hЛjVѤ75حQorv5j}+Y u'1ruboy={U72XS̀ b ݛQRΧiQXt-Q]4VC= \ ngͧO" tVjYByb?vM2"bPk/Sh=4SvQP"#kDA8 le>̣&S5k?'05mz֭ϛR)5ix ac<)˸kxeMΰq-Ywt&fDŽM7 uo~3dX2 ,\ׯؙE쾔!^og7jAm)Ą/Eiƕ:v])+2R 5|P㹊p( Yf}H,Ѱ*hEKF P3i￧|il[fuG3\UlEH-wz6(Vu7mv @N,_~SˈQdcI HV@+іD~iZThPeBErKi^kϛ+δ2Od+2=E9pP@ט*mu%TouO+^l MYEGG7WXKGGWޖT8YuhV\ ^\Y- `! T'VSd[mN\ҪĿOEu% Rc+#R2(-Nilw|u=>W9gEWnLi,zRnQ^*oK̋ݐϗ2TبJi3{"BIvi5g/Y0{RzN?{o6& O@@[쏁ɽ)ts$@9gbK8@g9S[%]$] a_t (~0O^S$9y1? ǧ(G< ? \X|4 <;IV;Ӭ3K VHx'(|d)}:4لJ@-wԏՓ-*nxŖ$0]BEӧɳcn_Kac\9xlz,/Q/{^l ҝOd H{qh61ec!,4?.! 82'S@ qM籓NTl [Të̾2J5-LK\A #9456&Ķ3Tedl̰1ӹ-O,~i.U@t]h0MC(U@%1 ʄz>Tāwr~a7Օ&&.P$.:!}|R`/&qT&ع ^cHIvh1B5Mh1?ΝXu93w@ېawm')T=+O(!>I۱_s ɷ"nBĭُ%۵وRY5,c9JD4˵dҍ?`@ټr.T z=c{dMH"Ґyؙkqˆvek*rruAL'zF3ߺ?ܴ2Pr q&7Z9h,* =zZ ^=Q%Hlʂʒ&dAO' $[<2$y}Z09d62tFlW07,ǛџNjsH^_Bϥ^".QA˫xT]+` &kAl >;YqSٕ攡`s`W x.r@0aDTaS*k6נeXN&KAQq -P(Ʈ0.j:܃E=iLĸqUqA[҆.QLx0|"!By=}_PeVxLqfKoiΑyV^nɫE^XWtFN:%WtpGetq;t"S98O$WWQprePǏV/QXE{Y0Iy$:ƀңz6DLJ-26za9yZΚ#gaL(tU1ZP߀YTZ=J%A Rk]seÔJ@9FJ8"? #Yu+*URMLLpHK8iyjtX&?y7vB&;Fh4&*嘟p+y,8\`ș%;GШm5/jǹJJ yL\RK n(\#lGas$R*n2ۮw's*#uL(dG8L͜޸I زAIscOF]Ⱦ-r~d8} nG`]vg:p)xgP~Zfѽ^?]DX$; kK7఑38Ck۠4+ *,|R! 4ue'=,+t4 /`N&Z!3,Jx)J9HHLH`:@ͯdB0ɍFk*ozqDV޽ٸ#&|aWʂ ӥl]%q-kQ[c"<9/8H%MFJ%/?7ޞu컨T^m,!ʼnO0 룊c04a\ЋM|!}{jT2, )ێ`.!`8yn9J,j',u@Ba)݄Ԗx7lZ o V#%]75(i@Įw|+J&Laa}-U*<pGfW_ς<0JK#ܵ,bPaD:y$M)`PbxԨ PX1iwC0Yc; X- xpha B Ĺ<W8`O׌u~2:(~gG (HlQ "ͪ |Cb j8˳x0s8ܥ LX>Npn[j-\Vϖ`chA@~k'C htѐ"Q44X%#@\㆏ )AŴi%nFF&7K+v&)ׯb-ƜFMB?^6Z7+ķB +1dT*d#KPO{HWx.tc;;]u8CZEmj~m3!jKZF>2Q!Amh#/-h۵pH"n5 ]VۅJ /HyAҋ^xTNOzo Q{/s8qpC l~j.l(駽7 &5(j?.Ȅ UM%~[7Jt2Jkjv v?MXCoupaXttia@|c#|@TL~>Cn_{ PkWD8 q9qDD)oV"p fYHU!%7eVDZZʥ"h A>`=z#Gpe™gMAAuVM(N-Fe T9LYmX}E߲L}~_Zdix2jF~dgVMj>Pj -*iU1qD/ C}cB[7›0ѭ!={mzOiActQT9ԋ]<6*C樶sS\.R2?>U1Rqܜ>ֽ×?7l4neCS\(p QN% 0v\L$I0uOUJj1M"C"oޥ;i`->>9BPhI @h$GtTFȾ,c#8ٞ?Z@-. V(L4FYYБW#4⃎y.@wuM߼XLAZ`Ζ`:nڀ~wC A[UҡJI+u!+K:FгI#i'yQ@Q\Sܼb񌺢̀^fH7z7_KvM*\jKwH^dfYJ>>[|OIH^2e(9RQ{60/ձ oxCc}[ *[ώN]ۋqk"Q&k$1Җi Ry͋#V|!Xu%"fnOJˢ9+l$k³,7c[mi /ڗHoL:rPdAM2wʻ8B@BU(ҫ}dTR ji z鄘ۤSIpƋMNh4 +D.]G9diwe\V{]-\ j='""I5ǭʖ$@i@+R^ÑȓcJpSlzdHb @'ɿ\,kkfNb 2V } w,(,|%qrDwX"NJh%q6~7^@>]0_M0 0Ȗzͷa.\5;eZI`& ؎LB~:u ?tnSkC.o!$ +NEC$@Đ%ZUG{e^you~WOTD|`΢_v/8{nnu+F)NmI<[]OW^),`2I61( %e$B.rlISr.?-73fI!NO*[r{j<[0(|2W7 hIa./ktQ|Kʪyw2,[>jy٢H84r3[Jh\w^:ڇOv0]1:x11ʇAA1ЕaEì骤%;`>GɮU*]%f>?7AĮ\#ƅuRyw=;_C)e;o@hWxn aAu?9;¼8|!)O6yliB M8)RhޠxGƤ+{g2G` .\Ӓ&e?.O[pb3i)H brHU3SKOefEL lPlSYӐ J"]dOOJ ż(}ҧJHE]PAx'͒M+%dWt\}mV~X^˱.ŵ^R#a}:x,3W9<`Y~|q~ cc2S]"1.?ھՏΏCяwFIڏ.7v?<i׏gf܏i1ֳ3bsl:hKO'yTaҩI3s:w+oKx%LZnWuC|GWɌr@Y$^bӽ?D:fⒶSxBxTUƫf^GZ( umeRxY -x8#DZqfT24;f5z?!f7Vi"Zk)_BOڲRh֒SVivUr nrүBCr<,ƥy>@t:.eL5M,$R}N{Q+x^MJO|Wz3y $F83z$Sbg&&ʜZ [*uCz`EY%2\~NiIшQĖgEvH 3;7s$a6# RsH*]2PSYELf_W9op@t3w( UV<OhA8<U!fp]K 9]V1݈<2Fk%j|5ꆠb%Z%tK7v0F*kE,ăf!R?1oa0`^ܶOMx˗-?#yDַ?Ά<[4uRE'4a QM': '0 %Gh&1&7m04R~Ex&|DH-rw!؄n! /b0]bکrxz{rQ4(5 YCKyR()Fe:.CO'E4TͷAJ^r  w:;:rj$|K@򍁕rA%%1Wwimq6~Z˯Il@b=u0i qeQ0-ʊ ~z!| R܉±"eo8$wa;#7Hao1Ģp[ V;: t#Kn gPp/0J bA &5̡{1A͠lХq 045M^<nhP.-"a7TBj;-A&n9/R+- Z+KWiB+ NkU&MpAd ;VmDz/ h,BwieA vZz۽ >ڍZ idu=QQ=p [߅ėlrӟ2 -.=5n^tg%HI? W}5]PU^{.Zo\Θuy:[ڃJ_DҞ" 1V+_3-o@Z_-9  OsaX>ʰ=Խ殺2oVzNamfTPRZd7'ew[e&Q]F>:'÷GCgI nq.@Hd6Iv/ =wngd`q @H!Qv=g "ۮA}w`aoK5a]:ܕWA e,VH~{z-M݆VoKTuǺXu{cV˽+',eXMq'zg nCXT/-֑"*Xlmu:QFxh)_ dNnbrZ3 xE=`o1:}Umb+lP9,"?? E%(/a">;p B"e 6dWęb^OKFÖżl ΗB]Ӭm= h0tvC Nѥht-j^KrS|nO ف?9蕚NU^rQgH&٨5uXe,~:-&Hki\i fr>[J4Fkuy_T,;g[$5q=tѲ Ma#,LNA79=[Ь**QkI%7'k i-xK0F3|p.Ǣ#c+ڻiSYe;7 ,.NR}Xos|[gOaw;[JV|/0m)[^Xڪ?ț{> WLg\)N0KbUP: !|Kf/"ֻa5EH c{-0O[;N d0f={{\irRJh8<9\ xF'qɦ-?8R؏ݿfd7ܲK5*姠=@ p0jEč6e*ݦ^gz4/ڗȲC_O~+5UYҌ%B6Oܞc.hySv_WTc.5_\ݰK 0aё:. ©A:ǘ\(lH$tLK+f59C_+)NoX{[w;ك UѲ JsRV1n7vezW'{}2VScj w-걸[.xoB-8!W6Hdk = վY9 Nd2tbDȟNY"p+%#lO3fcM ~g´SOϟzu0$ר VVrX"G@Q yH1$Dk^Ɍȿ'bcpq#FlKjA&ד>pєIfAݚt 6ŭi09o;?@ ڀ$J.0J$=] \*h)+u\X3^&$u맺Be4u%ŲY%p_qmÖ@UXd;ˢ's1 Td~pwhd^O!6`MgG8 " ēow@PTfIiWScsvm5V6zʬ5٬̳"eKubtt]!I,}:HҼShG|$EnYƏT58s E*uv@"?}tD) omS$ZrM!Ž&QֲĢ۾UUk7LDzu9{56Y]󬠯=jZ6ݩ|? MQ ɯ7YwNz-JN#4UfWZRLbfesIK x ksM8]gmCɓ[VLS!Y .Eof$y>N|I}P".èÁvYQGͰ!e`EE_IzϷX3BQ'!}p ~d[_|,Ft1(bԓ6Q eO4Z 8Hֆp̂ΦQqh|:?\=PpO@r=ށaϡ{zjNy= ݅ e@Kg&5ir&ȿb:eA0)~I팆E1(4[NVLUn{_s? f1^8N /~$ڜ˘P"\$u MdVWT;6Hf;7,d[+DT}CTUm5ryѥr1Or2M# ⸆}%ĖuT`nWx'A'8x ]y_LQl z&K{3|T_#Ŵ27$,o2(WeOQmB7_TkQƪ,ۼo|CR=^9?wz,w:"hRE4{G7Dާ 㠃wF#@M,b4y{q'Ga rNIT#z'DҳNXǓzaiq2JR9HUi,N$#d".cfZkf:iTIvF\]rx>/@ p<=.V¬kK^oER՟y ?cԿ YPxWp!PxB,NȟPC^?(5Lt_^ X@?6$6,@4P@~0n¼t0AlX_K>Li jW5en9*:^iAtZ?fɾ x'& x[~8K|3F"&=Q{ &)G|q q[m1º*2ۊm7.W:sy0ɿHw$k&ЦY8[G"R!`0!VŮFE(ˡIE]"&Dsqh{Ah18phO'߅]y;u~}N6:.0{(.]lVWoc"̰E;$<.]æo&$r3@',ɿufk?L~-d Tw'=g@сwwvC3@[ v#^Ͻ#"~}˚{ID"~|8\Lg 썂16sȼ rIa Z>R{x \[GuIAe"mMI- ZoJkL>(w oFF>t@0Gд (ِdhS<1"rD( _0a&lW,Ja!Xo{H,={Vw} )ERw:܇-D0Ƶed0 ^PkO-N3!eBbdBm@PHfAze$-xAm> "Y%1g aho}onj#67ֻwoon7Zۛ[[o[~j ^ANP͟?4loO^Kuy0i5yB!R3ֿ@6u%zGǧpO[6[P&!P?ބz ַަy:y k=yJ*hC:نff{~jm ?cO-w-&PZBֻ&nnoo|nVL/\v+6VFm3\Un3VX]-Oz6~}v{zvk~lN-j(`LF{ᚴ0 osN[@d=Q@vi Mwtcu eɼSY mBD`ac xA賘-" w7Qg^K@`ŷtwxL̻^\h#%ZV%Gu oN#m ̟An f&v[04,4 @.B$ܶ#ޖ <[k_A꾂r4(D;=0;! ͻڛWPBY8'qEa[6I?T'YUo[)7JH x9$;{Ă\%AOc)%g=z8 gnM7Kӭ.kbY;9iog'A\WtZ]>l1;?=_휝}s7mvv'نKcH?l{ac'h{Z*ǘQ!*IѫKnbOԏ  (<MÏ\~_o@ b Btn/*Vn]y 4Mw`3^,^H"bqgx]l],FuM rHo?HҌyNk^Z$Nv8@~PM@>緼~ y)}xA)䁦 ?РV8En,K)fM}yPCF|> iOAɜfp ?&C(dJ4Ÿ>f44NUy\d/ͧQ遛F3Nl׵x9hȪdt;0(w AF *dt<0*y@AFMdt=*{}on@~fk{~]E~z"t'?"蛻0ݏBlM7^͟]nx4u,pJgx88gu4uҕLm=fS4O;G:ys]zb{JӹޕBbv(ywT)GmJ!"PAU==QI+yPQ_jo}WY)D} $ mEY3p/4-a42 2L<3H,%AKJT[/57O}_+zZM7/MRZPJBm(2mq%W ΫV+ޔvv>YO(=$$ԟԮX'ߒlGm&j<}bσ} Lbzrn_|}I %wDI xU.ئk=Jm]g/pʙv_ 1,Sٞ~s/dӺ\O"k|VTqC}V-YP ,vTP&2Me,=ir.3\fLӂ{w)ߒHFr|̊MN(*}HX!, %d}- xЃ^`Kֺ~RG4ЅB v+NJ =[*aM*)w2:QU_BOU/盛2?d07B8V$|a xW.huk$ +" :[M"Pilkw]‹Ab&Y)AJ( 0ddcc#{㶹R׼|z_xr;킃h?-?CԘIZ W(* `L gMuZfT+ [Fl@=*iH,nN :aJV'J.Zr!*u @TBUӉkT F3wtQL cqh5V$5QV'Fq'STMpGP!q5P@&kmטq #i!0 H ?k77Zk;{i_鳔J]8χ-= 6ˊm07~~)("?/A\%qE =*) iIK(N_%Q%>-%JLyWDNܷ 8A<"7G QkɊh xdM{MTE%~gT!!0Pu#2ZL_FyhdM8覬$QUGF$IWW1y3h`ЮhZUgfʻ(. AXG2@mH'"S)/:7]1Cauf9hpQ%tδ ؔNk A?PSÂl2"= 1#DMBΉ$~L?%Jw,a-ЃT E3텻}v_Scj2y6<[} ˕g2Sm^q6`mȻkp{<M_X5hSkf!ť4 D)/ x'WH.xq^V32:B"a+J_Hj[YLr'_,A f: \3غr+uS3d,l$wQ*?IxGkdͮ*TH~`K1d01-< 82)XKa{ tgӨ۷?9 d&/(l)D(dկgÃ0.cw;k?~meghJFٻ;?AQ2´@$Z|Ws<QV/>}o(x1VZ4gk~gk~k|N ĥY|NMGCJP )o.BVssxC^NW2bI v?W>c*msA3Uz]?8 %]Ja`v0V@־$,8MCZ|L BPQ{"w||ѩ代wLo]/֟^` 3vY8|SA3,"R~i)vR޾I< u~zGǧ Qz.Pʗ Xlzљ9; žσjw=x\^a.TYn5S3j TO?XLA&=xi#aIn u3]V  =`1H0iàyໟ8 n0x:<ͩ'jgj L }wos=߁E۬(z>»l)u:l=sTy<%J:TD@/2zⶦ& -= ^tSAgE^*Z3U;'ۑZn[)" `,=?@Ge  SygS.,2mAGxyDdk} x ?_~!UU61NB񛇙Nz9 F+zI Ɲ*P:JŖ ~D^E;Hȳ'80Me3 uO-9d֦e"YuKGC:sWBU]zCeYZluWcx+GQ(s9e|2>GbQL VkqTq®2#C_Q1c)G"S*G+J*]Il҄a&b.V(fFe/X+bTLwUUG4SkTݔWT`?LS۫wކ"}y>s9z=}>GOs9z=VstőT 7=LTը.} J6ڪ@}ȫnN}X궫>Z\ֈ~EX,FkW!&L+حCn{qehSdo j"7Z}Xkyl4]!7ߛ^yfsASxVI+~`3Hl_`W'+Mb\F ]G,$A!r"k: ԟz20Axb$?}֙`"8L{߃$I;aĿ1r!h ,W!~|= g;>\&_\:A2t .p1GIc)/ECcH ,𱁈r7Oo10ҫCsE-(":"$.d8Iy>dŦ?SQ ӡk|jm[cMbQ=f 6gQasҔ8_ׯ_swwwa2!͛?8 |08F@]qz=8&4T}sdncAdxf:7~謷|=MA-Pl$ئH哃zrrD( _0a&C䣽dڏtjo^Ζj#xj(q ـ,׾JIQ(uÃEųȓ`ξ9wkgdTkcqR'7{@hrLa.4Z`88@C5Z.g\nLfS$8N3ZhxXهtZlBzzjC.. +FVfѰ*WB0 )"k7͵*(Z ƂQfPqT겅V^D8샓-x(w#MB/; ڥ@p@ajG$dpo1§z\]Є895J0R ٔǜ!MFvz_q/tC6THD0mK*HL>@@hPlXiXf/_MUj?T{\ˇl(iWPI0c1WۍV)˭+4ab% :7q@$k"G.t\^VdHeyTT>ur d4 on`t(^BHkDuSmV@:h9D_աBȐ\]`___ ;nÞnʂ1 3apY h[+l7(V-񊂲'zODqD 6O#͵!ux:Y̟]o}>ɯv3ESt:?Ԟ*AE5-&gQw6@19ld`zF%:j\/=Q8ax { }58rٓEƜ)#Vȁ2˥ڏI/y8~m[6w$0.F,cxW ^8%ZăΈƊ-PƓ(.rG!sb|*b=\9x $WE&IT%E t,nA):Ju׀v];VAE1,e.EhKG]ך E]xMpP;> xLvEtHs猦M&vMϳS K0@Aɯn?\(E Ig@'<)QaHU]?>oV!BtWYһAsȆYTx$/c`7U&"*(4NQ;HSvM8K-.&qM2%`p]F x閃AFZ)lP60ĬP 5YXF}GGMA~2y]Bgi.e ͑TQA #ΐc4Yc0)HY3}+Y4-)ɀ?)d0:B"0+MziIOl| :2U$?KUR%ޔp9im6tqq Qq)N!rR.Oߒ;xٴoR`u+թnXZ͌ ,]-PҶ~Q.*fmZW"* 5P;QvJ=/aD` VZV8d|* ]8!3MKE[, M, [)NvAKM/!:Mz=1W EU-ח(q9xJ姥O![>ܛ %)(dRTMRTMS+)Ukn6s3. i!:"d Qd}#>iJm[9#>zKHk=fCwI^dqFtAPYi- «-kjxlFbm %q<8LsY>4z"i _*2,^VNTOϥ< uB-p5+/ݣd F4l=jN/I^BR{rٷA,q9O#U4CR|Y@]จ3mYYͩ!QkRT2Ɠ˩R)*|{S؍ w9X%d[Eлf>0HKw+=[2@i`8o/,\fnRFNwTj%&-  AwS/շMQIF|2Yn0MBJtmbhLdZ+o[RdTgN&J~Hڻl>qVɭ"8>!}&7 vtqv kz48M n܊C}< Ft;⺻c3r):zzwqrNU9I1k?JT&H&~=RIoD5bj)TQajU_:\s=7PG0W2IGɢ`m$7hr h3N"9yǓ‘Dwm/|S!DLb_)2hn.38txS'Xܭ8)sڴď*R$V'8H|t6Qɿ;,M'k!P\?&WAouMOA|WDsB~!*Ipz(ᘮ ֐iox:yF&"c!g!QΛd%=d|@T#Lj.b@&mECi;QvH;P`̊0 =$4amSHCJ3G1+,,C ww &;UEƼr {l]9i_X$n]ZJfFA(gi֪%\DaEX~0f(GLx#+wØ|T VD\[܊w#[ܒIh<ӒN\%5imYzX&Y^bzMv,kj8KwE`jK˷ 偖dM>z'?-=Sqdw#[Iw[eB|.N1 & 29;1`J ~ \$Q5F<9_rI"8ޔ@voW4y4 ٕZʰEGq#0}A3|$%|Hj ÿ| 8H Ueě gI\ܱWts}&]JXKu S O!תp^Ng淝 ^Dַ ;&ۊdw'|PgL?lGL; ." &pht&p{h2%z'*, j-vpgA'FxXYV ז}s:Ib*yKyR,YlEK}/^\0M(nmiP$҈ 䫡ZݮC 8,aRg]2Â[&g z\ ]+7i"؝zȹj |Q!w=gҁKg1@7pfkWoN;0lhQ!l:lZlrw]d\{Vqr9C=op1yzڏؽׁ?"._ knz5Ͻ#hSdo=-9{i@rс6i$E#~흞` KQE9=>:Oӽ?!m.pm!D6 ׾f7xҥ0 IKGVuQ`o~IdA].o?\ UGCTa!5ɲXHap݆BGX+(hH˶ dm򽀙"dV{MPt?hV ^C{w!#IiNyw5w8AG\lKv8 ZaޤJxV^J(On'@Bn]:A Z2`HA^`lK N ]JѠs>z}̓7hpT]t9.qݯ\Q, Ny`n,7 v'#2OC¬FʍEmLd_MA 7R|J&)5¿۟ F̸ 1ʅ1ZŞޞJ O]4m!t$KTJٯM jSG hIx෷ w:p)OPp3{nqnKJ44r > , mmZX[Љ4Ň`{˫q-ya-3]ߎ5|Fef8uҫӥl}o4]f(-ṫ3. t)>YT *8v]rgT4*hg*ζtEilz^dYEFeԛlʑ佣[8qw.nB۱X֛ͭ8"i6xU̕z5bNF%^vszlgk\\k"1BPK5z@3ф#eHCaR`a^',H6aNdzhRkMq0a6!ac<LraH¢t%]1o|qpDx0hFr8 32k T+U;\`)L}0S_~p9WL75ѼD7)&'?XsYS\i8O3,[C)M{ ~1Up6\Vb RoiٗC-ʮ*wڟk]Եn]+l3̻ޮ]0 Dòil* BBMC@ XH9iۥSӜ9@MUUuj!s[5yt9PXEמxkL#atD(coZߞXs˵(9]̠wŨzkY4t+e?r`U7lLY\~-A!&IrϤ0JQf=l>I"0M9K+icT6nDbRa$XdƇhӢ\17W+VREcEU0m1 B '.1UOa*都TWR?#.YIV~/ٰayuLi{N'뺃uBcy5J\i8E#Y,b#Qe&b2,qQd✊)aC]["~_Eg^'%s C"). `F6:C5&p@Td6G8,Sd13IḄr8r.Y^{^7:I_ݍ8ZP;_6kx^ךTs"hi[U,8+ˤe)cw)oxk8ӄsA31P+jZq-lQ(dytyc&c/DkĢ!S#3hхlq,&J{ 1Qx : `2Ai.uQ[M J9k1*thQhvK#m@:{-<"\TrfEޔ<)X~_i4_U ,|דd`7OSLe) Ͽ}"~xznwފo]ɶݪm/WU?lK7i/# aNȥY=dnW.J.`&Vܔ-`[?6(tB (EɒhBggݳC+S033>))屔p Mq%RAuG1aHw]]qLs%C<kc^^a7oҙ+? Th@G俿oSX8 M;4"z<}W!"0EnPӊlps0{T r(<-B p TiQLD0}i7))\*%X(FR.FW.**z- MFQUE(IҮ7Sҋ1Ir'{P->0qzOL`s =ZdFSb IބTi5"bkk5 n2*Uce#~Z(샆_.ˆZU=rK6|÷}>pI:W/Q5|ĉ2M $خEWEY'd,;e)*3J?JUQU*|$X3ej%K[%VCW$zJ:-n{kJsuTדF?;;N?jV<*oЅӑ!ht蠊Ew/7Te)2EYb,[ƒXbpXX!p$/\:܈L+?&h|;nKG%Y*,Gs$HQA*e{=&lu]5 o|H4xX&>i}6y{MSFUܪUk.j31b[iޑ[oa;iWi;]|]%c'cLŤt# 4;8:*8D{hYCp;Ez{7߿^jG۾*3G=gG. A" k6}%$ye=R.r%qÐj/Ɣ45naY  ]X8L:)I $͈}uVIlV%>:,߄+7H`&g>o6K`$B'D/d}vT_m(80n>zE3>2AwVUq߷|ÁIo慜)&18`jd-r^*b+;8ҎU} *P@2hJAQBVƖ i\knH.lb>Npb0jŪǤ1Xq-#{k0$vy;rTy^ƸIAܻvcpGv!fs ?{ 4eYo6*[N9<[:]أkY84{l)eFS"Zb맻-0TՌWRrF-%+Uɜ',fU-I .YhFԙ!,}`-NL !;ǩ_ Xa!I66<4nьл̼0]zӛ[fjGԎ$jG4aN+򆴈|+ARB_ޔ?up0`a3U~J7]f=J j`YZwt4( +K.XR(i (o愑X g۱S2h Kj<[LB SH^D5wa󩴇iFA1lNyw{\I˦L4.T5sfnjEb^+wum-X9B:3gkj3C%~N\JGj$9*$ d:ec<(u(m9`vFyvKdLYN8NN*_J~eSL,{2BBZTU88iJ1%i*N #ʞ`n%Z kiY| va3,zV TƄմ:y*OcSNicvяua6bveq4iV8O"bWVm Kڰ%b6lx1["Xܗ5{mM#Z*UersY/FzK\TFV:3D(\ P馞i݃>ePڦ`uyQc Z9Q:8'.c~/Q}idf23!ց+Z;(ѳz̙8LSԛfzjeo^u*S:{ CeIH_qTԼFŝaО67Lݏd5wxb5ȯ; RUFRu JUj:nI "qɌL-]b'%?- ?HhMNH"RMKw6JbZ8MtFJyv茧kI@tk E@p~hWJW׋nadur땟.Լ:,ұxx> clYjh,EA8!˗Ԍ̇ƪX}{Y_}Û[#Q'R?XؿonoMŒk Z`r/}ssb݌hdk ~Џo~#"~ ː1 !&"iM+ 1-'7ymksT]Eokؼeg0ƄbDbE-ZD)A|pKD_ŵ+U|3mK WNxJ„$}U9 f2٪3mB}B* d [ݹ7G*Ы2&^:$WQ%o8hfQ0 XͮC I\/I_`XF>8+ZN mDN\αIgm}|>s0 OJOЌ=t4cV@o;6jL ?`6[z_dΝBJEڿ S3]S*9)-rՇe˥D,3_6i3u![ke[7єls -G@^\&Vc# īo8W[u n{u 6)HGϦL*OmU^2D=h`ë8[Ղ:]\8WBQf &3Z&+S(*tPN;onk+T@X>kz {) pu!wnn{Y#yq clHI ; B?:&Go[=fnFvDgaMGL]袭m Z,tSZ8lSb]=cZ9~[Ǵ^!lG5?}t9ՠiGl`BG矢u vU4_vz҇_ %ZVWk{0W4JaR@V0 SR;RX0L ^m-]CyRՠ{wֹ ! !GWP`k`4Y 0K:=?Apnckk*l{mܗ!@Hѹ8~s4`n~>ך竺z0>Rٟjnmͨ+iv7sp,+yٙ +5lڛ bh?B&B!>vB!VXD)q;!?{=O ]ZYwuxDAl=> K=ku[y[Hy[֩+a%i|~UrC>rݢy]K&vA# BcΙ;xjnA6¤aR0}w61zE6o |;mIZWoO@pat=\, +h:[e^6V=[Orʖ]?Xx vޝ]d^4{Z8*s,Ydžr.[l_Y_!&Z|[RG,1%+bnHugHB4I֬>ϱw+[r+'99cq-Is`Z K=0&ZҜCѠ5k\^s/De08^q8қ>̒NT>mXl&J7ɲO֔zOd^3! :mRE:Q3l9d'SfefS.kA}*yoؙ2Mƍtn|sܧz&RSj¤>=*'27m7NٶC܏d8]Uj( ٍmzЏy#))uT.S S*fhMцw9EӬooUoq\slMpJ,%<вC5W pjn91߅+G=¾HlnEx# Ѭd=nV#>ʬѱXoeaBo/wQd3k}6kK=pDs1^p68]q>3*e>] ~2^~lhaW±a0 =#h2P?IxI־!CVKy䈦AY1(KMdӽBg`"S~4) J ޚ#=tvk%EFJPKo`{buns#vS!)tn gUn>ZkV NhksUP@qsv& UJru #: ;&v'$&y-ԦMA&d85C  i?1B \iQ'X/骇mrAUtA(6h[”ß~#og?aRs@( ے!R+1$mI͖_5&'(eJ$HΧ Ho},#ab`6]Vt2 ѢOVk4G[|X>-Ro)v)8 A@zLr_`?jWIH |g#}MPov^":Zb(0v8@ 7Uoq! ;smm-=[2JAeZ޷^0{oz}v0'qCiP5 ҕ!-r>"?7H=,Ys&DCGIP {QcPSFuCkQfTH c j(x6lEao  Q{Ao dQqy&M(5A`9xo<;c(Ik^<ѻnny~ץ,]]7CtF]ڒ(I+7x ]7t818c yǍ【brZ#i/on/LZO>Bno*/9(xo5o;`r)fr]+F9<T $B&4TtAdM D*%/ 7UY`J;ŧ#(YH޼_7_'$?}8>GoݣK,fY;Nz_P b4u[Hm BbzPOw70*=?8B|e*Jٵᙾ֦oBwAkCD+R{~?xI)HW94M3Z(~>8>9 cS.ϧ0 )h8޶ K_2(F=L)lp3DYIz00 Z2L3SJ(v;C0 缠PLECC_421N C$DҴV"ỵK u9z{z0đ/DyãO%xCާxaoa'hQ/'wFkRF_ǎ0gi1ތ'nC *_#ƕ?uY;Y4x91 3iK1pݟΏ~/>}cʟ |I4I}ITmY1*#E-G`S'jѹ .覄5c܁ނ_3:壆.T  Ӏ4W %haѳ d¸67%Mݘ>MkQ0!}.D?~[[?Bwy2Ę `>F%#}n U_!@PUL6~9>}-3)$Qr[zz~p[*ns/! d )Poemg d+S {vEiyV0[iz3BCp阙HBĽkΨ܋ѿZ^b/"ަse ~%`fBNnxګ!߭^XzW"3{{pᨛ*+KU8,ٻ- GY%\Bߏ;ip:Bڿ z_&A A#`Qp'$$>h,.#k|?sq?:(R>8$ S@!jl;~O4P bهg~>87dO5ez#) >aDG>tv~<Ga|1Ë WA~?|ƿ;'Л T:<0y8Wfzt蟝|#b4^0ϴw:%  g]u3w9Y:3av͋`wt=|=;pA bKMe[5F+/?TH eHw0_quLȷGy|:Y؛a.HI`,15m*s4{&^R1)wK^JS!T()6">냁A]Bx֬UQ 0e+ EWfG03÷e2 Gh3e.E#k~erg>lD0œGkI#_`NصUJ [7 b)Öѻ) 2}ذL06Q>7iBgI^ԤЇUO/yuԲe;?bl[lFȪ!N̦T. OЉfwu!I,2XnIOS[YCZ 5~<ϐ&V.隊~8lkPޛm0LR#,d<x)10G; F [`>[w/ XWntX> g>RpmseG 6)nFݒEzYhh!ޤmpn_HEFjo_!|d}vmoc i M+;4s ='.JР4H B(?/BU5vCvy_%m$I!B(N 3`kk_? [m ?>KMDJv?E n^y_)H#4!;oUުx~t#;:HfF$zX cCoK`DqɱKcQD)Fz {5置O޹,jxEg"I4zi7m޼qZ"-l#*vg8 vEBxeHHr^㌖z\vgsu ㌖?*ĝbrq>&10 ҢWig u_"tN(6ׯ-ـCXA'{v~ѹ4/F-[2gJ^ u}Q?G8-,.WdAzZ:\@RGP@IAXf#8e6 /A`'ؔM)֓yI=[ҭ*Md`i+xAzxkj՛Wmb-%*Q6ur#Jj2zxT ZnEIcHgt/٠sjL-:31I8jƚc.37 YJIw3u"vt PK}H-B@:!UVlwL _4z-XϜmD'/Ňϱ'gWAƇNZ ڱ5<:>힓v}cڱF@f6Bi!Rᒧe%-$ފ1?!VexwrvLng{K1)JC]. Ӵ4igϫNy$k0|n!A/םPT߳QoKwzb:"` tSi8@xJtpLk# ;^dIF"9@-4&"lxo$pNJXyNkȄ|[NhZD2ҊARG_)IDtNg~Ǔ#={UnCp'-8)n ܯ)YT6=UTUX?ZcؑH4Ztd@8ۙlfUBO8Siv3%*[1~'T L3H eI &Eiܤ!GGǰ!Q,~>;?z=~U$0nOE@sf#CkaG!3;[jT opbx7/MU*BmvG:rO>`Lj @oʏ>°ը*B׏G;a(p {ķ_} l0B=>N֨Y:R&<z0($zlHP_BQ#cdӻ_ %EB --xѢ+_7 v +kmj$yL`eLow^L`3o }78_4}OB1ط+\Lt/A%A3seewLdrV^Th~^ d{m2?AqZXM#OIC I %0 C≰?è@'F9hj#N#A ]{6Dv =7"e%ݣWxe&*%D $ۛK.쓭|4U35py / Kغ V:$C) k^u҉iв'1h>uB݀P5  Cs3%D 4#Hɫ6.> gVU"G A,K°UwPbٛ\4éVgW=kA? %CÞ$PK$ҍJsah&2?9zpra -Lm  4(rQmQ"1Lh`V~*JMypXt63yQ Mv^7*1u0$7M8H6 ioգ; 3^(E΋ 5FbPB&xQDCXFURIQBYYA i7P+f̜R~,pjx]u8 -7k,ZehW< D] 6N* d RdRY #T\5VR n\3F=c}֬[,ԇqjQ⣋R8(񏻑[Sssh'RY4Q]`Jm=aj򺴽fv%Ce yd_j)NEK \g")O@X2^ܜ2~6s)W7%' D'($wBr8)kFL&Vòa3eF͍\CS3 +#:ݕlrjDjY/EvOMJbNp'IfH>{R,PD`awVQծZݱ<ʓ=+K*܌z:F+;&`UvMC`*8-345}Lw9(nґ.aZKu>|?;:o/}C`{΃tV6뙷\,}X!}stNR'3 15Cv$_#CeDS"o}\C\KFq4{fEZsq[Ctt_Ex7M.KrwNPrp~z|JA&g)\1eK%/I2C@"s¯4M0/-杜w,1sjѯ?~߅ĈAFufDM%/~>d4c:5iͫ҈]qxѹyPCfgt3чS5o0\]AJ|^3AWݏDVv2KƋP0Wa91H` {_}E@ /9!8LClFc#Q,#m*:JN2!R&XMR-U*(}BC*IL|/ݵ_[ZrJ-ɂU&UfyUnUcU&YXG:R֑ķu佭%- ˹T9t*tnha*ia(H1Yhu^ a~nyW [RuGqt==\ygXEQ h\B}fMU/.g(H_pm߽op8&2zZŐhn^"cRgPXT?}[vxiBz;WA u$R@xUpͩ\bhP}mEra'Ϫ (uZmxBj>ANf!k},}WVYX f֏8f:^2Z@+ ?6 |<ʹ_Aѯ]IMI o7KpA <?LKy!+sܫX(ٻcp ;ڢ[(MҮ0`(7fU{/!$W3{}4>p\VF9EK48SE=3FCsj rҩ$vC;vC{Lww\B)r}]volz3xKE;E|ud ([ E[/L"F(m&(r ~KE+Qo0D)o0rU*P0 T9 94Zu)rl(BR/% RR,(+r,%W^JzdW`\>~.-s{EoS?)k| 0xMw wR3^?06zEO5S %rQPiCew̛^/2c4R`ˌ30=2gc|AܟJ:ӼULB-9Yq">F,Aj@N] pXNxyx/&qu ڙf|EJ4uw(#C,;$)?KE(PnՓ}]YPKI+ӂ r*?=wnX$1Op{`Der=X+ٱ*6|+DBE`*M,2 '&pضʍ#)^5'kKSN:$\=g+\@]I\eAJE^QXuyh@8k(Y ۇ.!lf{ ^ΩQ8H#3J1 8B@ _NRѠ˴]2LL.0K]^(,܎[ޗ]/9S3m,+O\D~+h55Ƀm̨?e;%FhfY{gSK>Җpcl{ރp^d޾}їM$EIKH ឵I &cʧ%xEQѓBڝؕ#$p=4Eo:F=[ QG>@_xA¬@A B\tgh[M}2-oTP&Ee+1\Eơ|@ 83|IÌdP7.xA 13/I[UvFB9j_nL0 0ݣ٩=x"/v:Ȳ$vF(mxEhǎqa!.Ldփj$g84Hu)ْ!(ܼ vV$P5,nQG)Re ˚%{gQ@t?U-S}抅x,!2k| yn0qU9cH?w?:v=sƊf%|}Qs򐌒`Q[L:nƑPFsxS%(xҜ!Hn'Hp9Fl~ z_jDWU-  T5}FQV%K69iI-wh6۵:*NSԥb.a?{ԢnV29NKXY9Gs=3?0;ba&zD7!{4s ̔WMܐfQxɘafzج f,Fp#Z^M>?8?+2A6wt3 4Xixڴ9 [=Q%)A4U8I98Kw | ^0|i"&uuI^Rkg>6Ɖ:L#@D"m@n'.⹳i-Lyhٓ5iw[YAED mu;!U͐!mm (i-QO-87 G]kF-=Ol-vsQE)TOmTA ǭqoᲜ(@s%1YCfsc%Z`۵dp] s(^fnQpOe2N:y2OǯrC¢"9<7S\ eGȒWv/H`Ջz{qq]T=5YKT 1!?SD'c OKl8x\C쳐cP㍻X &fl{uY Ze j[6Zml3ekO۔5%<9s*ȖvZSFVޅ*Hm/jcVO*=K-t+ tm!?fe1?k%TK${X+ !W)^J?"8Ӣ G8/RǵJv9bxaQFǣn{ Hq⿲'Q-Ғ*`f;lZ26Uņ8ioX'RGu&+Ju;5\+J Մ2|U/njjBߗuP+-VP06*;_5mC0[`D-kݼNZW\zB*~ޖJ|.e$ x^ _Jp)2pIbJ15à嗱Fv7K.Mvndokd9}Rn Ni848~cq>}= > x ͹G.<'5#c8*O%] O:G#p#:K=I^xzifZ?/sE^A! t:+5-jTn O8τ@ m{H5g 0T|gGoYk!ɟ <rTw+"MΆИ-xYkŷ?3RK3jWfo (룤$r2{#^\I R #~4Xhup\K߮=%@/DdUÀR68N@ o#2XfYcMdO5=`Ti*±j 1i(♽i,}6/UuѮd~VjZ y̳@#W\KoTX" -"-ch4a@.y -5x,q}YY8?+hh qU&$k aiΞh bklhmnzFȖ湡Js;??8?q{mni7ciojCF*䋡2\jK"] .RP22Xrڳcu%7Eq>[DDt`\j-냇T_Gg>DN|݅WSE.V)oB4.Mi;Ӳ`r("O0 @R45&3}0c`{Q+s"SZC:nG)è'@P85x B+LUb$,Iu0\ *"Yְ4G>RGee`}Mx~N5ڹ< bÉW )(Xi{aRu}|S9e1 R]ѷ'`Cq?<3+xnެP'Ev WZy5{R5 cXB+'ccj2 XEkWvB=T~8_Yx <, A>Zc0րzK|^޶ցWZ[x#W"ɫ]M}%IŴcJ%K  sX TQ7Wji۷oq*RKCEjp =5ꨁlU;40{ a/dv7kl!Z_ @wcI)6xl, %6F?R> /#TZVk.KnV ~!(bQpЊieZi%r$IZt`^G7. P(LU^Oz_ ˶ʚK2nPj'X 1=qs ]+k|P |pcs6En&jGӃG;a{y?|WNtV&/-< PE7ME>#&9$?P'AN2 zÀʟߥ8i{yRq\ jOzTXtap5n A#s.F@ D>R̀;g"xpwkzV=Q<82/+7fb̲WIBJ1#8j'7YJ9rs0+I\Z ] ,hHZ4W DI~tR)K]򁡹(?!:rZvazfa.ˋUkW3쓺)wjIܹT.j5R> L$|.g*6$-^*@K#/!ʻTQfSjB$_7"$gDZTQNW!D>tYW[Zgh$U6 QlXW'ٽR^@]Jn@UZ}O&s nWA02|ߩh'j]^,:Z+WaBXd?"@3<ﱺ)nRg\e)>uY}[U+ܪC, ,e:4&t| ˴6FC[ZZRKuܞ)=3ՠNCMӟw?݃G_л LJG^KZ}5E>=%aG[4MD!n|M|s~-D6鞆N"GA4L5p%j*EW6oniFD>8pn""vs =:P r>#qx騕/CrK~yh9웃G#{%H !BP@a$1rM0Lza߿'Ann|8PH_Q: ei\+ؾͯ<ޒ%o#~J.`7qG=`Ow!yxAŠuƳrf^DPi rpӰ& 5y݄m mj#$hy>)jz8{3ºGa0N:a dV2y&,ΌsXJw=̃x2f=a:}uwaddx|wZAFM%5h|`^HaA>U-}aL7k@C#=а% ^ks$*-yPy|Pm>ERB hBۦ/M% {`zVݔdw>ypFh!9ZUX:)4d׼*Zh͠ZE%CC%z " SFN89|ΤB@ Ij ?T=u4mrC{ldW%JgrBq㪐5تT&YX\i#ɾ*M.8 s7?PllOſ$xɨ.LF]yX,EbDa64 1.F=mZ;A$Ȭ^rha7e>72Ȓָ Nk{=&}k7עa\ E6r\4ޜ世*h\-[r6L[{\iCy$y"h?|r86^h\\1X'դ1CE y5WF⢥#kDyȲUsc@,\=Ž ~x@*]=!U/9sq pôx^,Q.ؓ,ĵ/`8\ad`,Ɔw2 HkL6>b\Nru%,ȐE {~Ze:U@m7Fu< Z'nl⩘s[f{>}f;#H {- X/ֽa~tIf8mH`X| Jzaлz*zJ"2u|a:ȼzm2oAn8+Eg-#Xhueާ8UF"@%3L[0FqS*4kd~E" P'DLgk9Odқcm>oޤכOq^lןciB[0=GS=vԪahd'<^L:|Ѓ-L-oip Q;Pýwm\(dҩ˜G}nSqlD,_#++'}_ c*?ﱪvH"0O=֖IlP_F_*9ĀU)6'=u"xvdj:Icvm4mLr@Ra?7;^At8xadVUEl !UD2:bg:tPDa{۱E0`v U8hԃ' =%5Xhj-B+cF+ PEW² mWY B]-Poëih.FKSHT[&wpo,t9,xOեEw%:U+^&p߬>%JP=#D u8dZ'Xug3;I#P7j`吭V3]؝[ڛ HEKkbopo2Qk}śˑd8At2fRZeކz\|qB1ҫ8`&Ij͕ܮ0@qbI j8JtCZW隷aK@CrJxߛiS1g\(RmmB?NR}"a2W\c@E[6`)=`ς!gqE<[yDCM. `lIy-]ķT]y@;p!GժgEӌIla,eB[K{ipDy/Hf8nӢI[lpj  PJ"j!S8!>i\9KnqVsǭ}PqaiK}/!#Y;FdINzpje<{;b頑:EHgsE39"$Zԁx0yx9Ty$]upbt`F˷CYGcayi#q_PʳN4јO )jѯȔ|n(bBq˪Fa?B qF"Xli|3 4h:l)2,AgzmƑdG 'AL6t!_)~fא->iSyMĵ*, &*֐-xBI08[߯<[ 4!m $[-n,I \#굠B.l ,`qMފ'M+s%Ce$?υs\#)[ +,ߡVpfr0Vq=]e$}oJM@x@LTqo\֘= Hc̞7= Y1h%x (]'C€^O`'Q=kMcdɘZ, )MY.4H6GxCW'e8nҨKnq7v6(̤j/ʱRiF*3W O»Gem2 S0J@jf(YFȘIh*E OX I~!ӃZYQ 룢X"` ) b h (^T+'{]reE~Zڄ&ѴTϿ1HJLA4C5]d2˰Ι ]ӲyF2LVM0F8lCYTZ&Bj]1vb0[!,ZyH5kEO .NUHr`lfɎm 6>pD$oald^Tb=h&K= EY))BCKڗ+y0>M\[uj^NEg**d$Ue)NSokssqE܅{z[iJ7#376Rزfg9?-=H+fntrd&ٕ5/ݗ"BhY+$h5K4y4| !&2uAܻkH4vdO7Qpa nñ( xgwo8>K΀Nj:q4lƒp&8MnB`GJwL9R/ [ B } ī)M#9,sae[je_86z)bX0$`,9cAl"I~g錨GV ^5.B5Iӡ~r;V{U_BZS3]Jt?wn޽UBV6!ͮ<ʖ;\ChF&86,R r·JO@?*˼Y[x7Ash}.g93zOf~#iQoO Cvl uTԶxNK )Mb! d&U`.r" treҽ8m0nR 6-FwBwƘ~bK'׽@WGx#1^{ 7>쮇Y6%dʘe tZ !7]3QSWm(.Jb M) ,EatW6|a磒çi Mdgx.;3g|}7m<3ٿV-/$pv'`KRUTa UA!XonMQ~dYM#WQp$F#'<ټO5@}Ok웼C *8Xa͸/X^(yëҫL^;m*YOWfgm\*l^,rm傫| 4M&]1=5I>z)+bĻ2*I(/0e{ mSt4 Vj̝{JP  4}nwFEoD[1mw:r"yn@`=i`'rKU!]1*/[xz+sQbc2E~2E5 m8_Tq&9 QStmH1LP,R┞"yW:B^En>jh9WYY'v'뮒 Gwaq[Y/"WGc+eBP)xˍmj Րo2 XDrn0ĪºF%Ӧ@z% 9yDV7c,ҟ6!,uxF2GΠF @Vx j /C̤PNG~r=wkB2yQ.csJwP|jَ_!s4$J^"xk}OjRs=i!H^jc_idd2y iRo2TBn?NjlǕuQ6<އ y&l3J@JI0*"F]3` 1UB1j ޯ9w`̱r@Vȧ5 E5` N)C] 4& iRyGLlt6(k+ ua@XJod=.\77 zVͮh!/@Hږ=Akܖ6=|vt)lb@Lt]c$GqJ&Sq]긯*\b qi)S]e@6 !~kRrD:hdؘ`ay j8h]Hcl*BP;C:$r VDxK $a&Y &x"TR{ez#ҥv>.OXP*?m(uu-yϖʀ7j``x9Gr}!UaF(<)6Mp#RY{<_d.b *RT$0 #[y !%$baV~0MBDJwd 썍Hz*KZfи~ y3!(*9r FuT24$Lȇm=Z|?؉o`iPζ$nYSʢ0E`WzAb&~)tn](F>b C^Eq(3S`y!y 3*=A!8/!|ӛ#u KrIPdt]i ~u*rPR71-뚤2FGpUs3CGIp{9?Nq?`^";K \* 1hc!)k]Ǥ]Ioҿ zn;F0=R\d皣V"`auKK==*e W%+*R!ܰ(IN0ׁIs}Vl!-ͱu5Cy%0X{!j9(eJ`񈡙%g+D3K<1ȵʓ 51443ǡ b>q/ P|~:ǼKٯ> `S9GCӿվ[ ƙ`׭Lgd4*\#)n@%ҮB,HؔrodI6^5(17%ܕxZ3ی CQtE.aQFU\'1'e'7&w'k5s݉f4c-.=C^N ̹=qrUE_23Z+!.ssZyM^zv^2}Z"PnmۡK;{t74|!1$Głܑ>*zJ DDd`jU]SmF=-VHܬ(a[fsJXRMtBzȌDE"F$3<>PĚs*.m fS#%;2]Zz-(=<ʠRS\0uΘw5,^hdZPGt'͡h>6S0~ ̖;ʬiCNsr]lRJuzdW Pz$DCRl|7E« ӷ\ݹ.m]NN,*Qg! =?5#W$97*Z|wWm"$3Fw?? >+9.VVg]kι~Hy+.zPUG}EU/3Y≯Lv_nRa_wV w8=T@)0PDPa(SXUU9EBf:|\dܹ^Jo7)[]Y-̦GJ )GyIٳ6]gGs>*]4f* ÍQe$ (xN^1*#4Q+j8WbhFqrXڣLZGe=MG0F s̠z$r-M804 9c}^Rv:tdU#w--T^IϹB܊O%1Cy5u̪ %sߒfp@> 6c=31f)p<̈́!fjhVv'oo껠B3:֠Kh)s,kfe2/ܕ Rb: GQoyۅcjPqݕEowu^yx-zAZ0#`E ml58V :8|"zH.e4X[u9e1 VȌ'uTQ%xs[,q42)}4&(3H;1wfb7凇L:3"ȉ &+Ta|%s"]ڿom  ˥?xP>P Z!}R,9Vuޥl)DzMQBXr<ފe:[2f=F< XҜxF>( elr7+05ࣙ#E~jcSa|о"SH&Xa8JdL9^$:#{ Md =MshP\6e̬(;Sꎐ#OM(IDeG&Ier9]nl g8!ZӘTx1HPV ӎbE9촰 <.AF&I{`իi6 ͥ[k-ҀkUqN{3yǷU:.:DfJN>:ۋy:n:szLIڀ kƇ' 1]4 s.(:RD@4 S"tͅH3HxdU 4P+ZgjVjwa{KV=g s#dE17X1 _~Oҟ@sa3`"Aݔ;"5LڇDg1띱{|ץ+рVQQ|l 8est1&7D0_aΞ7TkX!'3&DهV!|39js-%ډ<ǘF?EwpO9~DCϓ2D]cɳ>ƷC D QJuŷDW_keui3u cż”@B-3Ƽ>wxeh3*㙘@k|ݜVSJpä?)Pa̯ftESE(;(M1sjDS^brOMu{Gӷ .;@^uz. ~1~һ@iAvu'|..AD`هN=K[r :ÓDHCCz@"е/gitְ7)΃h.@}89Px4f—}StzǹJ;ϏA3`!8$r< 4H=/]ܶaJo.޳.QC؃ "D |w @$vЁ:=~{y{| :QP tq\%pF01J2\ LE %Z.BRo1puLZ":2@+`u߮``,&l&+_ ubۭ-8;!kha2IuxHE^!5jeZ2C|K (fp䶶[[۬=>q&g)M<:@C>I$6+Q&jϭ?oono Moҏ^pz, *,L=ӡRf,⤦f}a.rgy, wǘz&RdeON [V 1D=Kg<-J#-^\#9$"` I.>Xg30H<P|Km.nۀm@Xlb*fRe˱c .e R=A {6pqpIfvᣱe peYUC,4c!.D\F,5C,3q!;q)bUKQHlō%YYsEby SQ~l }{pzgnx1w׿`j_-S憭_:.\Io!9P6ۑ5:ݠҚ @[bTAhyz|xج؟fV$U+wg{Ϧ_ΩҝqpMD7q,0r@߿M?=2+slzEfiʗ+Xxސ5Ǥ.g<߇=,8 "Hlk_̇lpPܿ8>8`A?}\VҭzO!>^>|7g_/_dzO==|Sm䷧[w|9W~< G\bpȓ@JBkm8ՓK3w>Di&.$1 Iwf4N4NĮ(,AsnXD#,.CI%xw~K:1^c̙Ѓ3JH(/{ 翌 xeWL{4)4fq>PJpO8BuF 8cgRdbS*Dəߧhx5m ެ-N?"\8j}o㈝rL ߛKP >oiC8. qAqy/f{VE-Ǹ)E9\ӟfMPw"~[uag>$}ti*PWỉ&!-bҿ/-AeVNӮ3CYPi盍6# iHkڂ{a03H|i?0F t6ǙV)o¾4_ @SwܶL( ޿X.5dR6٧?RQ .Z($WrMTUp=IOK/4V=????????~:;@_.G]GO X<O!dH>O!dH>(C-0]Ut|[gdri͢ch1 D4.)џT4mFڑo*|~47F$)4"y5&7 Fe qST 0]3Tܔ^g29^ce4h o]M[ӝmӷ[?ﭰ]*^M0h8CO[:lltfI [@ .S=I,c D0ы\9ikL;D4J2Bf@yC:hIH6 -h؊` [oSx59ƣl~lRo #vؒZ7$0-$o̻kp Z9K^54(SQ?pB"tC~)zzccKs+MR|:Ul5$-5ݘ)NZCxk|cPK eO`E:ϖN,jDTm3 oxɋ 1%UiwvgRsJo< -(/fLfK6.z5agFA"fw[Q]w[;`4>&F= )Z( 8"Ĝ5AeZ?B}fKD%[aCsD+p"2"גZ:UVAgTS^.FcM ml7e $|*SnQŬI֘-Uagg[So֒H9MfHB-SB[?J*TC>WYl*4&4-gk0 4>F{x?޺nA%Uڐ8PUxY:r!~ DŽk6e,2?j +toO=: "U2^]qʯhHIcChaFdv54U8 UKJZds,+&`-ι>i/ us5"4#zo<+%j-LH)enTCğl Bh_&s#򤜾nsSIfoep0 &h T5$X_Z޻֯X.?CF&iQH qS(wQa V0| !^SY9CkҀ?ï(P0'yoz>z'7]FY3"Uc~m5Hf42A`4}g$k V2SIw6~_?t!X|UBp48 ܜ 68 -vM0p9o2d`o/.p{Z-_ʺ^]^&ܳx:f 1:=$> &&4&݅qb|+у+Tj I0E&LK4T:Y wӐՖǘ_Uo̅M]O߄{h|B=S|k79m׃륗ߡ߁%[5g[&wfAKm-<ܬܟ _754vKv>$|?ԗ%w@säM0T[jWPMc8LcrU%č" GͲp<\ϒb {cqm $xsxU!k3g쿘9qG\!зώ4!{#}e2'?OI>{i6anMP@'SL3##OB t.FÜqƏxCtsK Vsq(:p"Okx@NY8!-ȝnQw1H?t3>=0f7߈%6D$=P3[Ŗ;QzJ2Pzğ;4& ys(X/w@ ^OzT >l[v"sle^1AOŕa4*Vv*|AR nEfnw$UVx{4TCV#!l_A@_/B7sF,+"O$ӻ'&.Qeak\iÍy1ךהխ%4 `VP78犨G,F5X92{ GSHֿFYz U(TSS֑KIV`(2Lh_c;ng#Vׇ[1u0XÏ$5]dGvLٍ̾*#Tw~N*1R͘e!Wd}NoڝsiYp2pW˗ f/L^J 7UfT d_YYT*GR1v{XPW8m +(K-f uv(2QeXJ` Ι<c` ijٖjk\|8bFWorXu*,[mxw;5$.5/.=L { gb?04>a Tcn1(.M/CâeLLBMa '@ŠYu@{/OVT!$bvѧ${?4`Ql@%C^潹Hxx̆*2Cw|C4+?b<>݉/[UU_")G{9H#ϬV1dl ɀo I'ʼKB۳hਇ=ϼL$;LR# =fb]U1nCrR#&Fjpn? )Q+.f j_9y"qa|~Ӣ@I B b9GyN$ӧτh^մN?xrJ[9E}[L9<B7S62Ӵ3y"*[͋([9ClL$U]*byR+`G8k?i#mR~`>+z z?UZSZb6fiU$&O S| YPN@طFCŋK6@zsL&wI6˚K8ŸQL,if4\VPSٯelF^ij" Fe2o4te&:f,AI Dzlz;9̫>o>7F^8>/j^̛+5ӯpjXgqԬ8Fz$.Gܴ1ށw6I("iW!*]wjWtC-Je[#ߚBijC|  /g&ΆYȽoKSml8n_VN2H|F PY;.&5.j:ٜFƲ9UQ` \ j%ᯂNK K y| P-^9;>̺OĐ- T֑|Ct-!?!;SWs /,8iP=cj9V] Sw]_SɵT+33w7[@r6XYF+߼$D 2\ۼ){&!d"| 97N汕ׄSHEfpd-,H̳z.e-V;J؀^1/l)3̩5U^7yZ &4Z^<_Wɰ ;|AwQ-瑸4/Xk'|,.z^s 9:x1M?n}I#y!BxksF(q,y$H_n{%u7z(9`@$(ag'/PEjy֞#͸ h/,ZGFtD{'g'gVu>,")&n Q >$+4bfdM=V"{67<]eTm\$sϒa4IYg PG|=/uX8x7/ 7hq^΋$ fEz9Q>r^(D:(JĀvWEѨ'>a/`6G\L(&hb9?읝 o,|c,΀xpLQ)#&Q9Nbst$EFF$E\'e42y}MbQыvb_r{Z}w6uquV_z-6@>wW+?t|(g xvNW+x{ Iagy ON)Ͷ[xf=8އ?G~6Slrk29,)4b6x8L].߼yäF)hfd>j7sr ݏ[^) VBw/z~,nsQwtp5nq:,$IKkG~`b>[=f?;&i6aY~WΆ H~`2ʀ@?{3Z^HSxzm5Pr??8P;@!O<0'"qvLCv;ggc =B:0a &#ww 9ZXB{ TFpOMq=BI}A $aL7Exsw >8Fp8P5%8{ ~`|E/D`w:R<~9@g@90="E`>5 zH?` "JArCv7u{+?!a/  (qe1#Y!<;uK \H45' a-ObԀ'\75v_G{[ζVk ^o76`tN HZ |nuX9#~`^&x6˜[V;Z3fj'{*PjfpnB>cj2(0 =SI,*_m"lAE>6v8>Păcl_ꈑsy˄4bwaf9.)pˆ Ȇљ2=StmqCYLJ!SJ5#lK B[ZBCvX N8_qST;vav{ݽ>xJI<(B\P2# ?xh7qs*PJRePMbfͨ;Rs'NBϝ!( !kxl3DA u5^lTQV%(xJʔd&Na3q! m*!N@ZDBk_Oɢ$Y0y phXe6#X1Ga'P=8ZTǨїYG1Ga/`=8zї[/7G_l7p-"2qqїGGc@hRf6df/"G_jFŎU ʟ ?;9|z.֘TRt<|pv9<g6hc58?xߴa i?pxԟ?q='? Hg:O흧Ӊtx:q<8NO'ı¡!wki_Mhf|}5(fїߖ[t?gzt1q'e9i0aJ1Bh>h_̳ OSpuq$3B+:`Oz}{\9UX}NpA]hףw o`<FkBNO׭Ё98``Veш@Z?]-fw:>LݨOt:A`Y|q g'? 9+ ય/AEƔ`M!gTޗii&ӧmA Լ jSC.Zstp|!ɝpjOFw&<ᎌ%)ՁWd~vMo1qGVTێn}7Ӭﯭe9.`)&N`_~[ 5)bFX%[W[Uq|i3DlwqM9|\C@`:똽p1oB}tf@KdVDc26up Ttǰ(nc{IK1Ɍ6{kf5$۩sa8\/y+^Ӥ/`qr#5cb!(շI?oop԰5l wc@,l=ܜn:"/+i %p\i~ho!_rW{4&= doL/,v89v*8gWt Ŏv \.j޶?EJL 3ojXXlE u9tGk}'?2k;B!(#yOY{Fڅ5K_4R6geݕmkk+(lo=:¥Oճ"=?v`o.LME?v$c&Bz]Tb"Up{lrbgQfoGCvOBՐƎPsRBh4G#*,ςKWXOsH.jY5~jEQYPY|U%~BP>X ?Us35ГVCtQ&Yryh\^]9/FhduvȬ\=u,݂qiiKF \ow6x`mSW2[*e۵&âNM Yхc98;@b_ם wE^Jy.֍Nx+:∌EXJؓ.❵F QM#\EC\|ܟΕ-lGv>9ܣMz#6moΡ.ÕTh6>^W$\&(3𥟲<$ghZъx]O.[7  􏥖mOC+q seA3_0׊e9c9acĴg'LwosQ6,xl/4!UPj ? ڈ ;@0e솱وnW7ykTjniTx3jv_G*: ї;5$0ӵP~{__n߮] j`զo1 c5p5|ސrjpJWqcCΰ7Un:حHp-x>$FAͨ!MZ+m둋T[87`iRex[o$)x]jۥ[<=YWMFv|x7Y#vc?N^)e7׋ 5pC?˺/&Wsv???].&79}ۋi|%^,ƞ06ɐre}M}YbsT!W{i6/>^YNsJap4|x_-soOwZZ ŒR#gF5Fp %k@5܈jъ;RxWj(,j"~E9HaѾR NǦ2=,O|t%R>, 9,C9[+L/Soi\R^*6 t?Zdf~V̋d?6-XI2/WS;gc;)]1]դ[zWży6ȯ}}ȯ}ߍؕ_U4A >}=o9J菦gC;GS;gCػGSػgI#?A6ߖ_MȯwwW|P_W;q]ՔFV%V)W_+xⷕxjg_ㆢ͛MvMvګ{m鳅^Ma_'E>B0,pEzAwVk{琠i7i5O1utxs}*w17nn]_'5Fm - XUDzw?F,!#r,$Cf[8; A}5c Yh`  d }Y>^0c~{̨RN^q96ğ(G2}R)S޽{Oy={ʻw)|=Qu@o=ǁPRD*†FR-cu FT<:bC𢃟X/F6'£|`~s9tNx:'< O焧s}vB蠏*'?Dm /V} $/x!sпU٠fÿ\Itiva_ʄՐI2Lu_q?W6PYxzMw(;`ljJo>Iϊ~I`11wRӒGrb2Jb"o;Rp E@pLrf"&Mjc[ʪ# 2 x1t+U^$.q<ቍ*J4ih .C7dUxߒS;TS3ߩ[T_8+AQO"d3Wk8]J[^n%F:)pQ N,%FMJ˝[tF ASf@wB `qUǜABM_%p 0İ@;^)$%RVZ (yQNIS2ҳ_&LG;SݏaK J"uT@Є%CӇ>/ѳ&XB&E<@2tM)ӛaUgʹ9Lfq:.itHOh,z a 5 'w$IsҽY8;F>>A|၂akkϵw WnhGЫ7<5r~CzørMgNf\wdQd`r޿!FHx`aҫ9Q;ss"더z>$Q 6ؓ>3%ɾ3Qjo徣|?VO8s6l--ۘ-/Q2}+6-]_Ԝ'#O~TO#O#O#O#O#O#O#O#'G? Z'I~ү'I~ү߷~]qcv6V!jH`B~ܟ?A>k's; #XYA?;Nb,]>[RGyFGi鏿y%`WR5BuE y흧pt8|:>Oçpxk(p8cH7>>S<whOqʓ@*5 p@b8ֈ\xϑD[*g4LlHry(:]@I:+j=+gChHϖ$bCǼ+ign{˾~]@Mh@?yI5-~j;ә,Sl 8Ғ@ ?~#tX_-6/>vC>'۠w4}9PP|?Kp+|DP܎G(i IsՏU[=( }~YOpsw!B,MRy$E(_A;yu$9RQF`qKć7q}#j\k%vJ H6*ܫA砰6:XWWt JdQ' XU:AKnDk,"CK0PI~8>hg~ʘO bn 38}+K4ArW׏%:wr /c Qȍvy8[8cFUAKM&a~ ?]Ȱ֛ nGY81s ʄ:4_$If+ú+t0 jTZAAlByJ0ܛSa{3^3Wb5d0x1$p$Ҷ%/MvB\9~)Ƙjm1+$qQV 2 X[4P!{u(5OEdA7} e(' c(43eaq&ʄnn `Y"L[eIW7Ρgfr9rl+rKr^:L+k}AawUV`fjfH)FjQ LtRX8( i BgI1*1`Nn1&e9h)(;c*U>afo:m3؏57[ٰnIT(_O/Cf788°oޣ)Oy􆠲WPcIK dw;IA]MP%gSI$'%*cU9ƴ@&Šꨩ[00($㑕 U ;NU YH2iyJ ZטgtFԱ9u-B )->zKfT#}<%EIuB8A*駐0}9@`PDzjt*_u}`ܻĹϺu9ףo88F߉>ukfv0Â9c25s0]9-`:rHRq{?& iU%Zh\[q& IR)FsΗ8)chs ͙$q>qȾ1_jEke(,Ȏc6-i\1ymsp:!%ٛ.JIEH/%&LAI- =OPhDSĚQLwTtFf9k&&r]8Va`6`h7I>Ak DN@Rh,GNr=pAױQ /cL/ {|>e*DTw >Hh1H% ܠ^@]BoJ:%YH*X9*Ds2(z%L:\oɘ8Xf8sU9B_, K'Q ZA74䎮p-ܳI9()1^8 NILx,Kۜ12 L#T8ӈ[ 7C4j7>s~lhB%k #lB8 ;}})<4 <άJJc)nu u :a^/W}]}gE]H nEQ8*`*:=Pted3!\nU˛]y 04'dU9PiJPX/ЇԪ(`/b7i>/ jLXasz=N-1omT(-r=R=Ej^nQZј%0Ҍo o/r)nsV݌m:])/yv"?q{.5\;EÓfgqNvoه>͒X |eJQ@ M=A%m&!4ׁ3mA'yBd:1* bYCZ|јXuDzLkQz'1–V{;q~kqYaxh:K~*|*=ަmXGTr0~fO1]<Mw?'AbNj#3z'уTiobe0Q[4a`"qV#Za6뇶X6K)W /1V1 6(v`A(D^W=TNfV7qj?B)*tu2XDãxF. qєilSVƖs mcb4HOt0-c_ cꌸIg)YU'KJ5A |.G:__t'99Q2;ێB;!;'f"Ѵvʆ%;mgJc< )G5%R/?Rφ\a<ܷE:A]JFP"RŃL4UA+rE~O҇#Lg4WKCU5җ@jd0=AӰֵ댭m+$%}6Ii-؝}o!W8J_8@fm,I)‹fX#X-4> )|Qս6S}JHWE:T2N pMnI2߾wd>1gmO.1kyYD~:v|McE$g芢@t !s[*j ;{W2ITӥTnXO8*ȫC.[0 V{'GW!Uh&:!=شJVrYՁӉH*reUM+"91T0NVegai#-Me|@8RF% :{RN% m,zHM7rHk,J|6ٗ. }ţRq4Q#0v{S\V Ⲵ:Ix}f:Bl2 {*4x16Uoqck[c0C2r秥)HAY>]fk{o+w.[{}w:M3EjCEz<8AЪ8 \,Uuzumi7%]]xi@5kKY\_pի M\[)C¨EPhipeɎ8tr2:ߏ9GgJ9aqW߾(02)T:)z5,˹N6屉ɾQ1;6H>/DjKRZāE!5%mLP$в~E}$5l,*nWbVw&s2: p36Q}@a(~ڎ` =TaM^)0XV+RTtQ!$$ d<ڄ  $JtINKVhd|&DlFeNuaaU'5T 2f-6ZgDCe1LfPʪcvJɴI:0M,Os!+|J6}[=jY?Mk>ivX|+*U)]jS6/tM\UD5=LX=PG9ls*{Q=H ʳFy% C!\!c-{QC؛!vkʅqV%8$(IzQBD ŊYFk;ۭm+;m=R{8 @C2LO Mc(Yʧ,(Y3ϢΒ'!S]<}GM)<_,d-_QQs=Xe!7׻Ѷ؏-% Сރ ;K#2/]j`*pJSPO憄`{*%@MF&obb^et/ɬmP=іJ9!J"]@|7(=_k%iT c+H+^nr, )B&$Ytҳsz>O j⟖AAv( =k)w?3}%#xZ+ZW({pK0{ſvؓ)^B 'V&6vo wLmGFvgFTUPOkȊ֕׻'A!XZ=LU.TCkZtK^,p+\n~T)XQuU{8b7!Dccп,UŴѵHPrUۑ9c9Y0r5͏cX=w?^$ڔ2 x}&o ɬMfVMU9Phk rEN^g +ZuRm-ev9jKynuYBLroKׅ<3bV䙛HG6h'5ļ&PG c`1Q iQovGK2:%1U7Ӛ hzOaz cÀUPXXEI3uV=tQiㅔ4yG *%V慪NAQ/ (ޢ3}ha 66Hڹ$Bdsuѥ/1M^MBPH\J C֜|7zH Rq_TɲVnU?uzZ}n"gbV]>5kAp2M4v&y|Í6nѝ|`4k|) 6GIQϔƯ'pj`HӴ\_QohRC$PM>!$J.sxsG a<{{tS?qK1.Int%MaڼޭM%C hu N;-\i5_,M^*4Ww[(ؑ;As,FU eƮ-m1 Cf*?7VGZI |}gY{8pwUYb{dCM~C9'B=89 :{1L:"8ZT ܂ MktSQq=-g`#fᙷ $}xxd"d@bk3mjU@mL+>tU4L l9K:5z_%{/Rc>W>XIO T H{F^"_ V%d;.w:~wѶV U!7'0F4F?yseS*8бG"x0/ IWP{U0,ǙmŒ"*/+ulϱVe'?ii ' , $W-!87O)0>g>xy>+D.áRyuq Y5gVfS^R TVr򀝦Kimϳ}M$Ua)$O~~rAnS9d7w|?p񲸢r=+.E_c\׋;ر;8W^}KTcWURtgq~v;*s+vG6wѰJ F+v}i u}ezi}έqB?bǻN-.!J?"[Vdž_2^۵^VߨZ;^"?f+K(80tbj/9A%iA[vGh0ڻVM9W-8>S8 p"{O+=<˶M7_e(׶(^" SrAs"]Eh<vlҵt6vB)+#i~tTzacMq¥EʣcˏFߩS:6GtL %A ^(}h8Yj$+K vDhZkul9 Tät1;;{SY|{__|{+ުoɠ㝦h$zlAغJMJOC+0EBAΩ|5u|jR;pf!t~UvNUEϬgU Ck8z~c֯=kӸ({&? ݎdKHh3_0 fuuҤ(E]KcܫX/^S "Bm:]uJK$H 'EVsW׳~0*}Bbz#{ʀuj@8Ӣbͷ0=y")E(vm.v S ^0YsprIn)\GJ:t+G&EnpW)8߻/Ì]KS堒3YWF˚  FUHFY*7Qp6'8whK/xef2&m=^%RUL{LǠG=^P{z]DO[;55-(1N#WMhlLrCq3]+u׮[ nTqƦvkbqb]؋FI*Wq.)q ^iG莱%ñ7iiC$_?MO@k2Q7?'}|{:kZ3)7Y*)~*"[)|kZ?))uZTiG+L+;D.gOACw!*;MQ@[Fi斦AHXS.ȏ» a6 A% $Y /Ԡ:" ,%DVGmgͤeռɾ_9d zoWݯ-It!$3.Fi\LJK+e1`]]}󩡒Bo~ i&Q`(\^ DYxZ#h\r SUj24rgZm7Ԫ0y3v, 39ީIƌmYE*.r(m`ch T.PVR$kս 6ϳ!1N`MiZ&gn1v;hYX8uZ%!H"FFG,UFq&CKG8* jpLC% p85pG(ӑ6Q{&%)u\r8 tzxCZ?HmJa[={Nn~Tj09& 6X6h^=qSJ[}U} 1 ͯ([i>N?XВG7,BݡHdAl;/ KyRBԖA1:u|/XOoKu$ {\)ݴ ǛǦr!tSWq/ˆ2ITR47=S'j3vg*L'hTˤ?q+gۏisy}&9CJ\V_=5/%{'_EVDN䲅֦iճ:ʎ< 9{Zj gEF787QG!k,TБC\/ZzEYzDRfl[s?ֿ!6FW#_Fjct*,V`:t0sfƹĊa3DPXJ`0' G5ivG ˆ[+5 }HAaOL&w)<[=Qj:G[js:㝶~9;,gC>zd\&/9țP6zD*Rv(>ƵuT'G嬆澗~ Fh~gk,|V?#A7ef-)*ԻZbu:Vq+eZ l'Y<:Hg7d[@0H}U6nC˳@$jG4e`uzuSf2>ɜ%l |3^rl|v[: B DF旨MxnnxTzyGPK;Nb RpՀ)~f`*f??3Sl%` 1*f{fET >F4kXa?fWz{wcCx;qT]ݰlCȻe Ҫq.%Ĭ&Mn%֣9?A#q o3Y8p{10bL>#~^WEUWM]0JrѨv54+u[@-`\AVj 5=yFu^Z5#Ю:@aÛ05X!z]AVn0E;{Q( szh梦=4Z!.Z~-oheUI!.j c<Hc#IlD/En<ƀQj):e8BU{C_Ո^5>҅^GVwkUm W#/CwV+!Ft-^zp8MNB_<Qp~C_zF>e^Z^N@};Z_W,TT@ڑ>!x =j]o\vVTQnڱ8fW~OߘH}T#%Vmj ӛ4Zܝ&7!#'FZMT4ɕ fkLn7{u?9?=NoA]{ e[,yfɲZI9{m"GBIiVZ1"O,(o:a\9O}n=>@SЕ'<7:NڕH`&(gN`g-I(Fp`0!p$.#J)<<]SP~PUf%COj1mϟ(f2'1rQ{.c:}L#P w1A~V'lU+,$0uUM4]Hq5D cNopصTAbi*2[ xLK [aY EE"떮"OAtW:l9o몄cbb81VnV].pRVTQ<@q$2Ea-5JwJ0Ckg'Kyth~!iP񮊡jK uk̺$ JI$WŒ"]^DOqKtDhRV!]IB7YU<)~Ȑz7-beߩN8yR ]*!TN]K\;D]:Qꑣ :MPgfeYA#TkQ+f6[A Ø\$G/(KMEv"|4 vc'xтA[Hmxͨʢk/ R](%,TW]:aem3L43NҢ7J/K7 ~/P<%'86?d%i{TnaN\+N NQϦjeaJqTkwqW uc߽c*JPs&GY{ڊK-dΊNdѦx:vg9qҚD/;N;i funo@%y'@3֒["LnQ)L+vTQ5bZkOeƊJqP6&N$ ں5|̙ nL6ͦXr C.пTQooD2؉lTKh O?&"( bEZE&rfˋuj]\dCNEFfF;tu_CJO%¤:gJ=ġǥmӢR\<1e660&ɲ7|Ջ\]v:4nB5o#chB.OrG[GHB RR@de-38Xg+Ek~dqaηLjŶ2:t\\|][F~6SݢN|;QH攡 e}ZpTZ%i ++]P}$426Ҙ|xE )kdnSWytJ?>BҠ^H_HK_4HJ96*@R:Q'z͹(J -D"y \)Fy2"!fRw)SB֠%O!h> PIAY&w10'ӒlYs67c{98?} )r_N?uzuG:z -&to9Jb4ԫ 'GJX 8MCzڻ-%ΕAY?*N 6_ӑ qr%LAx%X;`#dz|~uWdd84E3KKޭq)[dc5|uc9ț$! Mh70y`\5\{Wr>e@y]˨j@?\k0 bR !q9C;1'.4Q+{U~A'jJ *D_3oz.9+PkW;lˍU9Hʈ@Y Z)9UIJ1zjEeq^Jյᘛ5k*&;tyMH֩.SwQRVHɏ>/t>cS{3Zt.I*MNlNNM`›Z\&`Z8aˇ4[H#KSOHq+@FEEӲq TÀnBF ;7VNjY0n0%,t τO쌜A̝,!o8*q^*C.e(bB&޼XZ\auKZ=ll_GB"`ʚ5(wgF}Oȑ;VRtWLWϤGm'z6t( ;lxR008*gb1͆y-b5[}?ء3tE+iE%y˥r-kF^fi\ɞ>.%:PSfBǕ2>쵦ZX ;&Bŀo:ٱ`.?:M^C3)$K ̥ /YM.yt@ E]ѽĘ\04ԥE`\H F0z|ڻat[J ùz4'Be)s8}Ve6vse70(hMz6>>5'W9b83as5>(gӺQ>8[LvWOmڠp &&L&qyJ6ɀ9t㔒IPr/N%EfDqV GX/f%EI{ QtEh d*3zhH1 V3KZK3 æ.cy}R)]O+[b$P=yM$$$(Ƴ`GU~ 'ܼ4WvjJ!lQdjZtpaB_|ɥF0 W[c BJβ*1_m;TVUuބ5Ɯ׆|H'd"|k?13V? _=I^m<5ivBSgi߮$)¤ZQh:_Νx9:LvaB`6G4s8M*;Pa*QDo+"8^b[E~pZ%Y]AJ(b^<°{*Ao ^ұɐPۼ[o:* t5ݝmUSBPq\yXQ jQz<{kq<;(^ ext7ʭ$"R=)c8F7a$N.t./@wMAU /jvG}o I;zD9:xG5i܌?*86vAp:rUs2  Jx{Q+lj J"{SҌ)ur;&'Yu -yvYwa?U[5;XGFGKRa= ҫ+|gc'*q4M]ɪHI,a@/ƪFTs/f^@*L(roQkBJK :VHfŽJӌs5Bid:maO: 0GW;P cI ]DrksXڥgRD (]~ӽ e[ٺ,628-ŹAm.c3cBTA&fYQG89Iֱ0$Զq}\?WX w=81;D.w`QMlXXag2lQ t95)c'xyzE$c08g]:'ĂpKvㅘ_SzY#%8 RvJ0TymkK&&H^!5јD?Nz+MW9c+߈3CQ8{[جR| i6|ȭJ E6dz'Pi҃2m7J;fSlL*pl%#{FeX-<\na|dig>%@ee.j] s:ӳtW#VujRqJ17nH_=E|Mj@Hd-Z>Cin}E@V BW(q}'K`$g-:`:-Q;jc$U%U'% %/s̝4)vDK%$KWj{67.Rp"F夾]CW{x H"0xRRA90B;Xz3ŲMnV̱=DYkD oܒ| 27:;ga8cFJY*ùu-f8Pջ|ٿ>53$I4Rۮm\ވ#*}E4I8b&QI\CNEmE]+N>9`MdBxXlˉ{#ZIBCZ 1Hh6Fq>;qyᵘ=]5^Pr/pBaa1@ULIpr|[hJ~I.Y\F%Yow <xcN'>U֚8{$6po:&|U|BKH*Yupr]{~~_*{8R]~!Ta@ GLX{ K楖s@{+9Bh?2,v$%$TiL05l3Lnnk?øx12ߡդui>2(†}ѵY[У!&3v4)BW%WA$"K޶F" */uya/tTZ׻~xz=K&x-O8W)܅(mbdZ,v~|q_噩cy:u+OL|/KlYÓRZ?Wx6 z7jpXxf(p lXw|+\O22^Q<1.OeX kΙ;<2μC'Vf~coKuLv첷!)⌴)'-VK9z} ECdQΕ"#@q6,ұe&44ҾmS-OPTXt@DӎJ "+I@QI/+"#'б^ 8ͻlGa/1oL 5]G(zHXlD.Χlo>wK kbhn X(Јx:ڰ8T'8Baj5TsTLʟ6<Œxen4=VjCFX_g(*K2^7[px MfqT$HvG.mF9S5j#l1jtMA,vw5fHْ%+Nn 83,AH Sq oZYFLU#0-`GQğ0-E!M5>C+xË@^܉J0ĝ<=qm-Jʼn^5V8DG; Z\'B| _>H0R̽OUN;;58WNW5+ \0ȚLxXYJn1=ť}Րw՝ьEŭWV; \sR:ˤS%i0p_q`:B`J֜ N6#"Z`M,0oюw\3J!>uIT},4`dyJN#G܀a:$7QnQ-&0ec,o&:6|'Ԩ*ϖXg{‚j UesW1{NpU1!v^-n (颳aKMbRg"QP̽ l n n-ۖ\n;e8u;! \M] ]3?ck(kQ9S08?^HWp"oեsμm<'*ۈ[˨CaTj,%j\*S6OP)IU68Eu֢0_WU{bEPj,x?Q5*[6zjXUڔ/CUYv\Sg]TEu)bV_zj4uVrvRATҩRU'>\Ω K9^ʄܡ~יG) o_mV.]dEڪE2ƚʐ]9hJ-j,XdkFPA87 uA٪tO[v!4!vWQwo[rE!X4j҆[oaA>A)N'  DN78~2mN<]*\d0p'@p\>DJ^~ːVCYޮC' 20U'5-3TΤrRTѧ̬`5Lx备ڍ :zmA qAFI]n&;qV3SIpALz(| լ>oJ\9sD_ )"_Fw(aٶDm#%F,Ou$$I͵mHuKk%/g@evyY\PӦdOu0y$C*T}_p&pB){t(ut2"p؋д/LgҮfjA^9#nA9`Qd@|jLezxRv6Ժ8&,˓@5$G6!8#IFǦb\JTɇ'+a\,E{6l U:M/rAA@g#ad8q3R^x3I8f e:qD-eBLKy2FԸ?a|A꫃L\y.߷?r\Ш[VP˭i[GRvҞKn' m Gf Zz bHNŤ)62( iyXNza6j5inBZV}%շ첽Bg\!>#I %i/ ".ro^q *1Ct)Y'c44iߔ4!? )̷au2mn'8JtJ$°̀xL])v80p\J&]NrnHHe 9冠~Kf>1#Fj()wr`7gW}}ǏN08+8<6r$#s0QeyT=fޅE!+DEu=+>|o2B~DC ^gWqu^ t0Y(,Fn؊I4!08Աg ٞvH^%n"Yﻅk$m@ia/_#/9CҎeƹZEVZ-[dngwe p k7VTۻc&^d4pilGް{4 lD˶IW%Z %&3znT~?,1އؙ(SQwI>3 i3ΗM_ٵb]OXϖ>5B=w%PͣLX5΂<<IlԞ>Kt^g|iRm:YhY}VfAև&,0bсa~xH2ߟ"&&a1-X nd%ծׂӵc'~{s#_w_Hpnk?]a}3qѸFOOȧ>y(X=>=8~e_^|W[\3_rJ2PwA!%_ߊP(_a/.}< w%+~9 "iƄtA?D,] .ֱa7.|(.-E0j۞;)\+tz*؈أ4ȷJmasrփjX2GiPj5PhR4Q0N\[ ̆"`!KP7xg\PV%.jY0)ޏS}MD`|/CP7مhAL_h!ݒu2}SeSq腪C:>fWQ͘ `9c4/S*(NK`\!dQ?) IZd1FZ΋x4 q#^u!ϙb3k 42*ej%a6:1!:T,,UB:[78JCc(GE:Ic(-͓U;Ҽ OtP;]1IwnN(r/n=&l2 /[jPI /u/@lRH}Ϟ2mBӺ;TX!A$ z ;IRPݾE`yB$$x õZ7qT4)} #y6+f S) u%b!'V|Cz.]F/Zյ8uOc#9k hxTIw,De(]݂au 5)%aA14RJ@Ĺ 5 8t#eoXiM@Kΐ~&G Au3*P<`b6/MYAQ%$V7̫{@UG\hʅGئ?0P&[ kol/ZbI9սlC\TY?AM@n3Q5 % IZrfTѭr1Q$XL̲pvH5̳ύX"^s\xY;ͩ M9U5Yî3^%)eI "ʄD` RKhzU~b^})F3oju()M&]4lr288dLEuW}ФHuENNEU pIhuh4TYݢj˜"NzE(fl (cX1L^D[U.ߑE F,KG`JzNu tRu㷔r1`TsE-a <Z@}㴠>'7BB\@ȲA"r8LhpEu>PƦ e FgbIm*ԩ6B(0wwәًvk\4WqkBėY6f>bIWCsӃ4EHe[K?Al4r/k|Y/prÉ4Z&XY>D9ܝ3O2_y1 gywVO<VaY qm>܏A)Q!W] FcBPsN,{)I\,uE0.]jWUG-*K=8]XQOn[Ӆ(ISғ3Ja]DJWWSˌ£x-a 7![kd&>E }ê#|8X9EWy䭃x:V>i4*6aBn7e6 .iY` SMH6ל_JhW%$C!g?4uES~ N"r3?lМgX=Ws 8ZKB%iyt5~`重$Jg C%% i]SI ;i6"HCʨI=,4!VN omk}"o6ZhBC/[#Y鵼Z% !<7%R 6?!$Bҵ1}}3!قbqq|*{f.~LBY/=hBÌ.Vgb?aGfeA7aY`\ǹ`ϭYH*-m+-qS+_>B~(,wTT'vL&El] 'hчXO⢻8NhB[HGϢKRiNg鄶[T%†=_6>eZgYTCH"wjy>O $oXB7 / h0yB\WK$l" LE4]j[p-smbu쪖Y$zО/eS_XRiطy_ړpfnp&Ϛ^0<\]l?{]Ǫ Xgml,ͪ!pXE]~Zq}WWH:\ʷO$hTբSIy0Q_VjLC|Miq?`j>/}XuW@a*n=vK]kd}??֫ZAgo9[\%%n_xh)v@pb9U̝7j~gd{D>R[M;4IM! }  ӽ';H\Vt(uȔ#MؙJAX~w UR}$T. r䱋'1>F1Z^ Nš녯)(Ÿ&U VKl_FR?ࡷEr#eR'{ *N *'bˇ#1FH vMYܨA: ũ3$CB`s}g}ҺLB(n<'qq6ueiCX?{V`ܫfu0vdU'JdGik g 4b0fg\Hd>Asa@Ӽ 6[#'SZI+}$4,J-ou0Tm ]f߷hS-fh0QsN0)RQi'%p[ƧF,kgk5IˢfGS: !j7W[N!I v4,Ötx{(U@l}v<3zFFζ+L[g 2.pyw,jN_AHHNΜS 4NZ,jDe4ve8/f^[ǰ1(Cx`O[!0Q>?+%W|lX/'0(⧔g~cDtRՕw$vYaAI.bb\ .I>PQB(%jVei+Net5O;` YlOxI~o/yҫ~9/ Ms Gdh^)f9r9f,q'waxNt327K J>q *BD#0OeVV,ȪPJbRB.FB(A]cf~855G>s9|L h!xAc!D@^@"zp!Y tBOPm^JF'bkf]ѬIHnf<(6`?>nLt"h] ˾Fc9?ˬfK.[gYzѯ3cDrĭʧVȑU+|^Gnǵj=ϒ;HZo d;3`~dBSZ~\ `& v_ӧ^)/ |_lc/yb4}ڃBd& 9Z)L Y|ƅmĮQCuPL46* RXX#E^Dx -\q@$\>G5Ve}HU~22MrIs nA|ԲL]ymid ,<f! Q]m^D-5A4 х[0bUyA1ʫ'@[dbRKk ~A7?8<D :ǾzXĸo{~^6rh 0 (2ц]zPk=܌jUm)l33{Y,)2t0K6y(΂t *:WsOb|^e1x1ͥ f:SCCETmU)kRby# H?EAXzg](+NoT·KŌohJN&B9Ue +b߼NIu;RF .P#_1v&sQJeʸk=#:d> +MpYֺqjR4s}[Qw6Y=_} D k35\Fu 5 \*-O'7Vf%AJyHZV|k|~R4W &A;z<]kG4( (gK'=^o~hB;ѫ{2UvAY.7SE\[)ŌEDtaP&OZҘBVɔeZ%Z%{&2aL`>*u]硸zBwpGQ%Jc*ݵ-\`3`jXNJ:u l{ o6Gp9AC(.78_diDF-Yn搔X+"5 m%y- F%THpŶ^987t{BVڅIUZ֤mH?G.epMɻ4aGX , kQBHЩc\jYrYP 4uZ* dG4xf.h ^`sws!d~=w9oBxLX3%:FYOmXȐN$i|bMYĤ0.:蔽@L,+6R%܏[R@ݖHD9G 38 |5?}ӚoJeLہM] |?seѨd*ٟѠ.}\X"qT7l2փǩB9ļ |_XÆF ^Q*.Yw%.mN3ˮ4^u8v`o\!ྕ_}(g&DQ9DJ]*8iYt5#nǸ; pP9e*h˵X1ԕ-clP3؂e([x a.yo]m3!h$\|1[I*!gs(Bˌ@ Jq_O'f7>́O)6 ٰeƊP1I2rTAN7^aa;3fX?)73y/Qlz?FW-]fCz,nE o_aq+ ql5fE/演ylUMIc@?)ycW8pj[pYINt(4oj Ngy+J~ҫc:7ZOWBVc/'i[=uۨ'`A̩os9`H"S)wTq,CeNW2 {dNVS"O#XÛ0Cf3fjHq5_wNHΝQ@XaLg_2Bfi%>'\T݀CsMoPR:f 6"'Yyr%`tf#,2!c\gyWMX@j2I,H!Nb)B&- Lh[+ Knt,Sࡉ ɭB}бl4Õ:]=g Lqrf aZ$J:Bqma 8-Kg:\2M:1/Iqb8;h(8%YkT3|T264RCɬRxI^9b9.})cTs1[Uüef9N*'Tw[c$#c x9(H0(lYHʬ^u:r &g}q*ӱ {)Ub+ _YP@eOfGx(+{m% ox)'[Ot.{JbfD#EZ0XFl1 -'HC +fP8a JLKSby?SuM LTl-Ab2Y3CrvȞ2wKow:w%tLJ}J{"Pf6yn%~r.Lꎻ .]Ljck9HB 2sӛV-BiˈŸ(jXt1O?6C֘8:fwW,P{܂k0#;F\r@򥗣EOiSi}ZJRcorЉ E7ק!k2Vw"x[K\j 72b[`֠wUIxx+P^ժghdkRJTRJRѾ(f:Hlkoyޮ>us}8OdI:T1K.w}8FkQX-zt4 -m-mKƚ=c^.&ҨT*} Stvȕ@yc-k%}r=+%{Ke5:;Tfȅ*:?j,gK+u*iF:TM^P٩CsxN9+ q8"rkT~ yao=QUP^VT #_&T\] ,;<%3~CT >:VOR>3CWǎEW!SdemZ#X Ω|Bر$/^$)˃~ [Q1Uh ,'8rY0Tؘ&5 [ m-uYCZZURsOZG4UU.X T0";?Pi 1jfb Б]acI [ !)Nb.F0^B!ΆVdCrʏS-R&qn3L϶>y,8aoWAzx vB*h$˽qp Sy 7BP$Χ oT{hFp1m*$ Z˴ALd"c,IALLG\tϺ`X$|wbX)cM^| 1h?"1}[bG|HG|8I91 dg# EsJIrA@?`Ox(,qћ`@lózo| m9?n?D!}s H88~&~`sb|kVb{^d ;8=9>e?`TStx{&zK'@?<9M~==="tG{] "{ow/`@˛=T eP HT 8v'O{oş<Zק#OX 8~`TMƝ-Q,aGp c y G=-q {o`4*ٱ@|*&?88>ٻ8wD]-X@LNob@@@#oL} d(#t / S9P LA R?q+znr}!̠ #a:BxbwORp. ;H}=OO9WCћ9V:S!] w}"iXGBϿ~}48럜mQ Ca䑩菠1= tWsX1韺ֶ*zlQ_N ]YTqovE^&oHqͧd݄+}Vն7FrѶWMAxɘd5V4m϶qSc Q`C+uKm1obWBThvM "tgU J>Uk ]EmƐ 4ע+L,z? Tow܎cHнԾ>yG}ycޡ/ luG=fھӹjDxNEg4oy(nAN:dQ[D(z*E4z=IÂG fh~{l:l< #s?+qxP\ ZL}U<bZr෌]yehO߼~B)2C݈r h!QcK'* A$.yyUjE mcQn׃3(~?677NNNNNNNNNN~Wo'T !Iݓ}1ƪ#U*Cs|I|ٽ^lݛpqx;]-`q)Ra{.s }qS%TT=A7'*hGǃWgW|9[nWh+f}|2xՓVnl27D*x{C̓hk%@J8x5 ?gOßBB(puAEh>L/BA%[P2{ëpl2eMHn@ɄVkهWAp!C(1@GfTFLy6K΃,MTiݨG5B&5`jy֒Q;hc:Ff5S$h!dDȝ80vC>~iF4I$\46LpKǓT,qHǶ&c}M$DT/=Uc\ڹ޿y/1e/f3Ӊ-IaiK[עd}t-˴{GAg>Mhp|t3- #+ii~ քOqmN p %$o.zz9xR|#Gǧ+g65F"U:A(GKvqnZj1vDh98 j|mmT? /TT4ښPaEpL4Oќҍsc4 '.kfu!<QMT#d .V+TtuaUZ`oi8ROp!iMpG4Պ1O4)eJƭQ@) a%tH؅I08I/zfh/j^4Ly4 ,xʠhTfik5uzG V- 9#hzr3$>{K$w1~Y+2POCSߞ bφn6(6:΢d: WV5KĨع &^\W1@&E&KW HXLᬲy42C,`pà3Lzfbc'2Jer+&Gzr!a`1B]71TR]iE(Z`=9^xǽ~Hffy٠?J(9;6Pu$E0^ 8WຊpC%uR3F{|hA]unwgfzXNXkLغ 3;k#6hCa5"ANJP]d LeT99QVnN]KtκoЕcúTlc ߄}݋IoSj`^3h4r (!$. QP'N/!6LX{}fm/'!s-`IS6:خOdMp{1i*BcXÇ2ZU>r(|/q?kTe3;?|ALRe/AJka^YpR_~dut8<˒'φ )|LK;;f̟9OJ*,fq1:]GiTb?dowNOGJf9wYau{5}Bb-mb2]~6{2}*7'@\4hϳ=?`B,MgN 7?P*/3[Vx$ׄvl}[znVZ).Auv-ȗ55-ЬXsEzMMlkI͍.wftt}zc%EdfHhbx&I/Oo'Ӛ'H]* Rkrd_@/~&LCfU̙>QOgڴN/5Y;+M.ſgɟSӽV#(U\cQr(֫p"4UJ۳nQ<}g*ߡҦsiiZ֪i%l>[;-sP?<5UG_oV?4 c=k(bqĆ!WU`\= w/gA.À]Aj,@9'jx2xiuǯbϯ!A+Wirki* lfaK$5NoNwO/Yq$Qyor?h&iA IXW)Onvu;t'0\ƗP@9Cw7df0#rUzE$ta> 6Nӛ=o×67wL6qtӇ7] .f#" NHh(1RWBJ%R"3 ENpy[PکJheI3 gJYxPNU0Me<5 <5u泔nlӀyDSkLL R1*α%FBG K143fb_ 18S0!JMȫ-aDivd'7;AM .P`MC}߉kgSdf/^/w']zt6`&|Hܕ otT3 tD^#4VWj-HG xhlP4d ~_ǐy.ȠFy -25*&HiEgȒ0~%"&M`;O<AJawsP nؠ*r onId>g!$PPnm w!,Ǥ+y$NeIG 8KCIҲRcb[qZ݅3%({TGsPO_ԓ,b(E^VnJ0!8Cwq4c*h(<|Ŧ;/I{ɅUXO`2q8(<\7bQ09;H0/ %hKQ#wRRPʷӆއqz+=}{0!h#MIs֏ak_*|-m6lȇBXnKk,[YO?m{? fQGDQ5{[A8ޛ7QyD!zo@’]=bQ3Cwka! 8kq޼s/߻0yE'2CDvu^R2/`m"AI`I_G*] ` ]h, CF E6RnBsbmcnAUY-M7ķ,jf̎2N$n" BX'UdwCUFEw#WpWA:.LZ\;ukF!2;hָ]5/;b⵴3(~7f0EZ[J]J;w_dEˡV-H*˰ wpJ _+͡UDqOډ*g@r(ЏXȉO0*OADIRHIQ0 G(B)4.Z}1@]fjK VNbl>:EЕf9b#Lݦh56#| 83gD b|ba>F2VSG$U(.eY+g)1 r6O3]*s\`RMk•ͪt# 0ꔏ%BDr.1p0“yaJ#rsd9y̙g=ƀN]:0!}0nF8t"@o6`Je@n'A_nIQ$\w}|X|h2A쯊rJ7uzI& _\Q08J=Nr*]\.w#IbL5o. oQJ\UӒ;=~rB`tb$ םny2D_E8 Ӛ/챲/ʹ]@"p|lִ0/ v˚`)jxyܽ9|m~^Tw'l'hpV\xNF$v>883Z,GH;-m݋Uݬ JIm8Kynj="uwY^&(Q\|O3 qڋfu0F׹al6g03zyPyq<>t Y{Llݢh2IAx 60-dHpCL8,F *,E„eNn^Ru_([M<!X*FQGG lN T(.֒@7 $H!7"%:i ɩRYܣT@?UJ?Ezޯ{1RsɚUV 1vz$Gsغy͛cݻb=;%pÞƋƿҕiR<&1w.RBM^\^0&U3C,ڍf TЮ w#aPV]#ܩ^ijx~vphkQَF+W-$49W5#_k8-Ղ몯MV\9}?hW_h~ȳF zCq+*y4*=s7{k臧f%% x~]ޯ6s ." d.K +)oo>v7h$hZޣ[pOem{Pܡ4z t,QuF;:fjB=` m٢}DB[tc=eCvvla2(T&EvңC$ G tC4,:ѹ*>9;z"r*d[[w鞝Ϛ@:TA 3¯0q/ U?ڃ%*TФ*XPYnTCaR}\Р9@G;4&z"ۀUw[v\Om;]gkEP˪,R yՊEEw-W$k5 ZPsbqhZKhC D4OvR1:@;4me;w; ;F[hC AiT >4\w *aE8Y:T5҃#PI0YR[١\Co1pCķi^vB j!^QvZYAH^)];^:T1R/ ~mf$CTRZ١zV 9lu24pª:TQjINU/w\I 4:P=ZA}u. V}6+Z +0PkFn6]~y`8n6n6_RRT/zѱ/2[}9gޞp"|-V.{vgݯ`p-Bg&}'1G 9Ԫ#Sb?x}z|5woG㣃7,i,,?Ghb? w^_Jߌj<0s hq,!ŨOOGb=aG{t32ȯ.)eAXrFe\uSaũl#x`MӰ(V4 6f~Hγ,R6ro!¸yDpX*@ ;o"mpBX{Dٗ9ƻ1i~ jOE"<pˁ@AR<:b">\F፸u=]cd>׈dzHvh"Ƴ)9dQF^b*/&R=#_˩C2hw_^Qs 0!K[ƞp"&Y'{y+XrnJ_`8iHnr[|2ҵx$.Zdll#lH+::tt އpӸQrjR̬==M$؅i5kHmZ{[uYWrW|hb+3qV’i/X0}oR #>Ь,OS PPlN[S:;' PdoY |=f<@|<r#Vm:b@hĘ-2#FM.^ *L9|k9V6ycD,A{/$`HTu%M>O'2V\CH%bdQx#L[&г"$d`zŔ29䂷I&~:.@n}  FdybĤocLpʹ~D6:- ͦ 4ǔtx':ǎ &oDL˜/LzJ,"Y5YiMI)Ūl&;z6Z3.;ZԊa >1=RX$boa6vKv&w Ćdg|{ԨG]6,|K)u8c?J-GR$Zp[@@Ep/)HtlZcB9C%C=oI>/+d|z) 1EH'2_$O4TIjX<7;.>O|Jbhu 4]u,Q}ZbjѮ@m8 9i /&u@2-ڃ5(O}#b)t~u :3 0hW:28VQCrcV߸l4qfir^p^lxH@TE_}?ܑvٛgXi'6hzf@a} lzpl Ap6kQ NEa,G[`gOC*<(E_=q`-xA. []E (MF[lg M@Mf1?޴9n+K<NDR%i-]5.GS$%sJ) 0$QLdHJY5}=wr!%K.:pv[kp':'4rz[.2uiGO2%W5Sl߇"ok6rJ' 1~mS=Wc`M%z&WN$S>nH*+84$md;$UE###Y'E /Č &ɨaٯ(_q 9}H"8rs!!OU2 jYAڠ'&hP g{ G*#ɭ0OGW0,ka" !ԭ 4;i$ h>%F..Zc⵼i | ca#o~d^s[JD5-p76sT416Z\Nz˂3`z\-ѸՃ8N+MGdFOv|Ӏ sy-t*! ).'ؾ`Yb/Y(##dqp]g鐱՟RCWwbZw>k8ln~mlMJ\rEL3ێ  :ǣΧԇ5xDbV|庴CDA|˼NpaIg?>BⴁS#J9ɝ*jo>*'\KSuݺinxtD!y53ȿU=*!,<{spl`0G/QVT`IO\&2)l&.2 X׽_T~E=o᣾͠Q4J]U1ob5}1^[0ʫhi<]ȳك@!]hV쁠A*=1 6llX^.xwy% >T evǬpb03[sfN_ 4򔱜2O.)@ m 6FݰwWQHm,Ŀ7y]G#]7P:b?D? C>Z)MUGJTd/-aANuh3.{j׿n_|oz/1fGXp HPW*6uY͛dkx\op/X3SʀEMj- ]r/J*p鞖iS#VH[0jVR7C|aY1xdzk#hz-..a kZw(X05Anc/N^hNdSN@GJI`BrWK?W=cv l)o(5**&n4Z?zA秹3V=~sH4b2V S)|4'Yԋr:s9UY8.cRIaPy=2z5c#V UDf< 5@! ]fK1 *1OwsghQ>;<P[at6JҀN|Op;7DuL6aZ7N9R X=gJA<4WR,CT-|}ß5qJQplzlA_{'Yǣ3#:|=~;}!$"G"b&$aub\%EO=J)y L%c?k%dMx_ Pȑ`40_J(mP *#w:6`wH˻cwvGcyy8!:+[.6&gA瑩jL (}RVyE`[Nt&{EZ/4RU':Flȩ%@n]w,K`1)*Чɻc SJLj9q#l$k{ Xȿk@Juīs^MeS}6bFk"̸JXz؜ƹd`x%(a%K'vt4!(FHQ*ng )F!p>ݧ$ n 쟵(2e@T%/Me1(*(MYc]a‹TYH)=YQAބgPD#d{kp;Y!,{72恜Cԓ^<@Ů -":hٛsBȭ訕/)P W4| ϰf\#Y>P1!XlPˋgD8gڱ:iO@]$Y0)\E; 6Yui;=:a\BP KZdCjlQi"Kkў7K '1dNXWNe>]l|! +¾˹rsZLP~ \Taݖָs])o!$cNv xV_BG3G>Dm(dهF$uX[PE>OK:/dpHCa1Ut=K(6r5#^, T9X`fN@u#QjOUG[+,w Cgd C9Y>(x>88veafo`L"DNũ&wf/Q8/7鷱g:&tOb5{7Ttl˖J/\{b> )jV\ G"L8e<4ק U8.Ge~6{<;3fr󫶝5{~;.kܷ/^#S&9^ EQxdӿ@(qɗi3=7t$#n]0gܺ8KǖBQj&aNRjV ]lբDGF5Y! `(Rp]#m}hXX#toг]y~1 ?y[|A!v8SPdPOY5$7 n۽j!>7hJ S`XVyAΔKoUSL N~/%rP{x?y7Z<4zF-i:mvR ۅW؃O/VCx-w CV:T3_5Um̶truA@A$Mk6== ~AE=4zY]A׊Н :܎~f?ѫDwA$kb{뽎n҇:Ƌ>7u=dכ,BLy6E{ySjl՚(tA=)Z~YLxZ2&% J"ª.l%{)I0)gI&ӄM+_@j`u n"0|g |5ʩR Ϡj^?]@32Q + VGr3qYOT30>@1k`V?tqޛյrzsx̺m-ۤlӛDM*]ByBMdlYQѤFDV<tJ-u˘IyVxo( }.5K!(H[W9AzFU)?GT(DzL'(ȍ =톪l1t pjY a'̀/] ,-+û#Xzg9W գ!ޗW rAFhZ>db۞ޒaCUT]mwyL)6rw J4H'#F( 2͹bjj1_|ѯGQkxEZ|W¾p7 lU|/7h6}ʒxJ6?|}IL߄'졹 KwK^Aޘ{i i3Rw~._#H$ܘbK›t7. #Z?uwW?]_S/[_#A>3_1%>)]wꮻ]w:w+4&$ho_pb "Su|puPh|eq'e"kQH5 GNrYzoqy^Pry"+X^wA6d쥤xMsIJ+n;ѩBn? 1#HTshu ,Á&<|?:cCOyd桇닷VK8ޕz6llW}/,&86uM( Dʓi}s]eHHLfm|lAI[ٲΫtIDI:6sir8u;}f2X wh:[c4O*&uuݿccwl쎍ݱy6o^}pjTM5t&&Av/A4Qf[.*p[ Ҿa!CFk567.0.5$6B/4QXж5 ^cɈ &׹V&DU>]#Bpo'2-!KBiU^FmT ;C 3+u\XRjUGhYX>$[^{ņ̳yhyI Db6ŬS ?7 KRz2 ;ȽOvXج[Qиb-xݴKSlhR6wޗʵj4l3da>\T)oЕW"oeߓ )8/_s޽;>4;4##ڪy>6i7E +^6'c" }I,r˓_k$gCܟy+'r)wKN¼6LfςAAGf5vd(TyL&M>}~p<%iP0> Z֣'/$Zzy}H{_!)\n"BE/v\1#pi yoa+>hCRTf(W+W۪={h3ƏCg>hXG_z~|o겪K`%hRwO+ ^EĘiBգU,l`9H!*A갚C}`€oA-(ua6e/!%7A%|3\>~)YU #.9uAǸetiRoi&L̳Sx6E_= |\4YP 5Uow{_S_HQĮ=4YlYq JJo WzfW nO;.}pYp|.ޒmfOJFb.1u驎yD2d$yHROb烊6)v9i5}IF33yxl3U/{2s9ےٱDζ_Bff*Uv\-E4[ wu5V}..1m(4AJِg`VFLKh xZ-T&RtFF6b ]qdXp\l:?U-O% DBlpa}9 AleiB)B ՛4ĮWA3l=n*ϡemU2F5ofɦڣٷsJNtLj]NURVw?V Q *v;-]ayZEk˯- _O37Zrk,^9LWAΞmyIFm l'J}+.~x@B)rUb3M0{/'j3 >̩f١pd %7)=蟆On?tU#zE=js^!`W?gnK{'+ٖwIJ䙺''}:}L)l?DŽ0e{/Ų# ;xӤ\MM(F:FNx QmWni(0>e~~qcR4 C#qaʬx KY>.` G`O2BN*݈?v_ʶPO5gů=amV4혎ٞH?o2WU8Li><ٱmOi/SCdSUIz۰x|^@=AJ`Lv>4ӋnV( ?W$ˉ*EQ_ t\J=%V1*ECF}f~Rmr5d`h3 >z2fC~ZD9VC׵UOͤxDV8_*FmDkS 6[ʣ): 6<2 f ܏$жsSCUl֨-Tx胆>yrAo?'X4J k(XA#lףO0dH Y#Xu ZAXX7mgs172 ãoock$qj7z0AN.!1f5`}I*YFY!OVcr¹"&o>ǩlɛ@Sr]*t.&3 ٲ-'لKƍ|S?u(ۄUlD]/q ? ~>5|3^ 1 :m="].rb zIgvihEHu(- eg=S9-MR;+B%ĀΑ+kζ_ڼ98ezN)o mnImҌ?g: jkc^u϶?,9gBcH˕,4e[/<4W9375#2$nk݀`+RtdI~ ytQ>ͦzo/qAfoE>)Xku9S/,s2&y67W?ץ!?g,m-yN/{$os ﬦ}aUC}fghoQy[[=i'E&R8`00k~*fEIN3~'6`c5Fޠe eo% K_YileH"5]QM4idM,ℒ*k5>X63H tRS0Rz #xf],Z]C:g!oT M$L%n|m/qD*4_Zv8%>_5OmG,d0Xaeg1mW KAau]\Nݬ 6e\t0>?/b?rr{?ҏU{EG~d|y/fD!ӻ I22W:K2?@Q?3ϜܻM滹MݥIX%swݎ (2"1f`Y`r(x9n^Q^ d8\cSnȎdJs 8.kXwj#PQ? :$B'k!ړb12}H۷9pzqURB"JYiOSsDps?<89@|Ն!(X37?:]XFoL$brXVxEAӯ1JxH*بQ!bB{NuN|޷=6{$&櫏$ksM4R6 ~ -otWYt?5_}ӈMaMzA<(o2deo /:T@XZ˅i :._+QNAYEW̺ZهzZ}0ٜ+쥢:XY|JrJ r'{٫J$%^FZaw͒uj#BQWĆTmA+E^̰<;J|43Jf<.pG}fPD]O%0Ie"sCP^1tZ4ܶ(H~2N7{gT#TeϽ.p^DKl1(0X ɦߴTC>J;MIt,}5H)dvlP7_Q{kjf, 5 X,1ؓKh8ޗ2&BҴ$3֋Tvؒ8l͑b/洙;mԮ K߆iN୔L[yE pYYLiԇ^8:Q, S{3sȝM4|5=f5mDE(]зBOz7aReg=%96΄^Ie*lz`V?2t|~"[{ J/6B+ Ϝ7ɽinQi&otw?~I&fsܻqF %<7袳Ñço7 #?vO9ѫe[`'z.'Uɞ4yD=1Qh̓G$WN&[С"=[0  j_dit*hR ez`6Ɉ x o~@oK @]/4Q8 74Dž/3U]M3c}XCj͍8n7SYnb-񕱈{%?[z!\TAqltܷd S;EFuiJ?e-BcHXj^i5'~ZO1H`T7AUi>8i|tfD35kͻIz.oS>II"٫#<#UvqeqDKN UK3cCX0D3U&R7 .U|aټ5DQFs(Jo/N ߱2E.R MQ,ƣz5lh1U.cHqyW y΢W*9m"ܛ؇Ej tR15E^S9Y (BZ f{<)/>{cGtsܟsp9_Woq[]vE: 8fT;^^UՔZib\a䜰Q G֖5tzTI%qHrjgXf󎛃TsOH@hR,8?e}ݺp "Lr/)ۼrF(Հ,kO฀"" $<^L䂎 .v,5roj.Eսme0%,mQ#v &,jC 0+RP)Dg̛כ|1џ<|Czc#!{w|ȹcfņHq&FbyY2g=K ~Y.\q$ .J@"@Q ͇py_&l)KeQܻ)?QZ- l5W'*C=^9+B;z!ۍ{hD[ 4ؾ 9c]5U:8M3[yGvwvuA D3klѩW*ީ''CsfB~I@/ZΧݵ9W '"ĵg8w)%=ߝlwgC&كl]*,_6"V!4v7n1;}J-%9yT&[7cf蓛bv~4\9ӆ&ѵסcEw'{^$ FXZ#of< lcG=w8  S91ٖc y4L甫:Ai/l) ܞi @H rd4:,Q|숬/g{`ɒLܹ]G8->1g;t`4%Hvv*5..a`z!RT{BčGP(9)<9I=r˜REjF0XD]F,+Jpy!m`'}k3A`]Xm "LJeRpৢ-]-}(y;w/^8C;|R|(D *Ta{ж0;t4vM01k1,0$uݨ&r m4S"۴9$k$W=M<# Yl )ceš^b6K#چ\k"K7+28<.r]Ԑӎ)!RBկZ` |JES. rRK*`zr62v8yj=7 0XA-;P0Ҹ]x}5>KƬ1G[(/Aj˦?c:Q<א%0X3L 㼅o0 &o2Ս;,.g-fq߼(, X-Ĵd۲~ tȎla"7ZLoGSzEG2D^:yj${Ko*颁fox k3V6 'q֓٧]v]IgYM9JCkq2[\Yӵ˄]`E)@eݴ)px,dLf֣ +X[bg]\ȭgeS!2 2tYq u#␯B`@W*Y :_N%SH/$v>#59y5-|p, x 龯u"c;rмK+!C"],dn^ dȉ3M3RdlN9Xqb50($C"fٕ[;i.XNRxDbGEJx dF)KDY+fva; ^P !טӤKH,qly)>W,4 29Q`45i%/vun{Yipy>g.F '_>c,5l4ٷW #rZ;0rrheF3*8!,^zRLkK*QP Pͷ޾=zuző>6SU懲<9=`kSԥ :4g-yE"ɁXR[F^wA`M=1ɭm'ldtz bh# MK59 neH>fhmo\MTjYl$.$#x%$3;z b@N# >ˣ'F9')aOP&$Vn-D`qsmv:' bmрVJb`7!atd=t_<ϔ6i9u.!qL] ^&)oKX-qw; *L4b)%eiI J⌻K%wthyF3 ;B\U 6D螏]*: s$M[.0Zw{#5y{@\ M>ЫaY󱪠 Jy<kID:P][nCWth{PHvԴcXHJ jbl!W>'3W ^2r&?NmڼG {*BM$7|Gn"^\n}U|8E/87zT`a 7ybI$VKWmZ_MJlce]p ~V%ph? Kܻ6&fK4w 6m>54vz[kvN.xsZ$ۃe>&)jN S>v[c2H 0h*'2ä`6z&pXj|>b H=_8;ZXhR=5[Q  |p5<}W cSeAtm0'f5cH*o'6zDu1T7߉ ઩/C`>xԝJTK#忕ϫ$/#:y⸶/)`/P?b%̭Ժls$]}b7 y\pi yj9+%1Lw0Cc(qM 3_/G|sDX sYANDd궐w]5sW QU JtأV0]0^/;JSK'ZB5@7sQod͊_߽8œC|"?_ E>'Aw:IK']Ynm 0EpHg)wtOР D@}q=?W̽>84F TbSqjʼ)ü͡mj?9A]W{"~d3$:<~ϞZ)ff_6c skTWM& TISe[[ӆT0gœÍۏ iiQ9_{fI#DT 欦D#tď{5 Oy!0LRj0bjԩ9Y4ʶ4+  "^蘼 fV@6ȇ4Uu,_Pk[vK85LÉȷkcd&JOpvY2h#BTc j595'(Tb~B$%H5Db0W` 4Xoł(fABx<)a)BY1EX6'%_^/Hr,gb6~&~1mcM()`@PimZah #z 8#'NȌ>mSG^^^xڗsiczWr<5{KYzܧ?cXkJ/XI3v(N 73 Q JBRoI UqJ!Uûu1"\zr*ŒA#hkV굋UH2| Q b72ZP__:B3tU'txwHUUvWpX-D#R8K6>D_ \GL:љ#HCv(><vށ@̙A)0u;I_#Z-KYi}CEWu1abVEsþRR j"R"B9Jq3%3@ɗkcHX'e5F]̍~5{uBזd<*H8pG[\]GbzSCXk ,.}SẬ+[vIbr5'neVN^՗a,9GdebonpȩG2!kN n]--@% xacFGNi :rmK֮8b{@+Ox. m^稔*×H6hV nJVwBUFp^eֳ3~`baք}]_7WW|,mI2;|m(hjt>I' =Ź %Ty_# @t&a C_9svssz\&ò^-"%8$ q~cx '3gyjKdN@TϠG-BKãOKcz$84 DWD$;Hٞ`cE'f3U/e>Ll\ `͘.- 3767ݣ;\k=kՄDygW3ör"& 7ѿ S w;L'Zڝ;> "zڷXaE(̫ O^' ־k#6Ȉt^[9um|!%bXf4W`$檜 :OB6D( MzGb1֌aոyBOߍ8$,鑸FӱʺYpU%w,BkcQJ2@P8%QI,K?XYw.O.w&O*E "/g!G]z&DW᭪ORrRMDui'/CQF!MIʴ*J*ҝ\^\ '\Uo@}lfn̊$h&Z[d|m =VBb7TR5^#,J{~ pkh.X+ lŕ#&u567;6q]u^9^T\yT>oq1tSԆ W:4#:6c@_Xȥ:ÅR{/Q|F2WJz݀w꒷N`8 P &-@6rɵ%"IM̳:T\PR 1 5$\zD%YPE\ |E.NIXOH"ԡGI:Vk1V@4V/zCݣ%KcTӬ'Y"2>e(1 39= C7fBI`BdC cB2!JHL/FWV"n!D5'(b/$Lv 3 8d FOKn|DrzBJ[wq70Lr\'EcaJ{S, -;i$`<Wt5pvf˫y&D#<y DY537W^!"^# PG;7>``www/oE6dWDd4}*71<\0 VQ^JQ5:*0fIiNCVU5 t@99/Ɔ+ 7S:2 e())lΧCb V\:G@T;2X@JsĀ!O&oEJؒ.$cܵ9Pԅػʣ iWWZ?#X"B8P%3;.KHLCƸˊB"亓75' {A9jEXnR8;xjllgg.%FĐSr},ȨĽ3 6xk;MӲkwyۖv)rzE\ ˩%C {+0:깄, &~BU릡 R6U W5pU wgyeaU<@BB{T LN8)u#.z$ik(kԀm6a䙥_{li=Gx3y`箱NE)j *"$YxF QuviV&0Bܞ='Ys`R&FDg&"}*AlohkJU8tIwR, ;ڤcm.O-cմS\n_eehwSA[n F}qno"EpN"hO@T6}B|d&W棽s } e A# !@-u`HI|i*.$i2 (l`$yBBǨb%;Vc!c:܂$u"&sbT;~]8 TD .]N#lln 3W/T!BZ.gg6;hEqUVt/V$u `-,Mζt)G^tdsEV/jOn.}J^nF i}^WYns)P'NL{8vL0MqUj8PBVuhDw]ZSf}9bօ3!CO5R\ǒ% 1!lv0g4(6BxDp.'9 )E9$UeAҟKC!T@1isQQf>ßad}bWԘoN]F'lr5q!sY3&N5(qbT(WyCDqRGYՄ4TZ]Bk#`񹳞Urj@kM]$ݔtZ^3oS, W x9rԒXh-A ؾS!b)9A@$KA(8F>1Xhyؠ·#P6C?ʰׅڌLk÷gWفK8S!Fo!!}Fpߖ1Xv/9[W?U"M\ngDqv\]? s={KID7#FR{ N;AD~ȸvJj?HBÝHoVptbjhbC1EPSjxl8ǣe)dWi\x@V_`"E0 v'/Y vb;ifz'Iw4ﱰ͐fl2A6#hdF;\X=q0AR*SN2kzE12bb@m;ѲVZnE",vuv$?4: lP{ JFy{kBK3m=O) 6H,EL}5d#,E2&:l- GPn\jͦvR4ZBx|(T>#=q{"rZp^lmTȏ[ђq[jnS$bvxwC#E4W&RMfK W7܃x5CATFp ܇Ys[$sl3sE.zJ$gmULr8Nf;"K{+,gM'Z%9J%YE;}G:birFF}D?i} ;zuk:;9}{6ms/j>W~:zu<;;{g柶yH Z蘿lmo8gώ_?d3O\HMܧHz0n&XDMRb6£kq xtQ~mKL Q.)l(?&Jy4`v4g#Z/4cօ6Y&DʱwA%! .iYUzc/;Y!~#d aDr 9t8Hc}a6%-H}YIM&^a >\2& 4-Tg2J*؀ D蛮{uUu "+lA⺫TzΛ"ѵ4= L! ;K̈-0~|φF$F L 9ZԂ^A`\=$HߎU0FIazOIR@,x>i=7 OlYRŁR=Ha|]Ҙ" }i9DK χ^<P1B5 EsɱL54!:b-Pl:(j^JkbBy$%K;M'lLxm QuwTHv-҉fF\ RS[dĄn厰d9U^RcSvH@AIX_O0\ .dZ[ I EG'{BE;lT۶5r[~6f/:pޞ~ѣnպSͅ|f:&3ZB)Dw2$ QO6o3qHOkm;s }>D<\Q5.w݁+P:DZsWnިͮ.4Lʠa.LԌ\EEci5__-Ͽwξ*m mz`iJl M,dEx~hK_o?TlbлlN@FJϭPC\L[԰?n-M8^-&Bsd{ ӐKL #|cZ+kDun-T\ubdv^:BJJo4S:p6%vLvg#%Cc=l]TRG"ާ+I#~*`Lq3l;!ÏK)MUd/YXb35Z(N0w h לW'v (Me7ߌ}iRG׉e^<ieRNOCXwjzlCloD'X `3  Mn#dÇՇBhS3F7eܧfindpkc} Yo_~؉,1D-ݰh4^@}ΥX1{7sU*.! 0WS`8 fB*N";!N">8dʄ͕ӷG'gǯN޾~g< 0 I/%KEϜX|P)0x%Ó/5@w)"b];)촳 75b\? ߚ>y?>>O3w&(y/Y׼{sOFUqdoO,K$t(3I2wofgų}٣_ H _?LZ_>9|"_[_qp#?OZ':g?%*!Tp(#:AUۻpTk1bKfU=BA=%;>ϘRQu,qVƋ Nn$NBReg[kRN o!k9hճC/V؊MMʪa V(:64T-kиbOPkIݏsYOuMH750aƤ2hy'~Q- ImTcgfѴDMΣXႧ;-ޝ>ylhvD{؇Ju=nGp,_dǸqʴG-{xxdw~,~ŚUqKHZ?xğȾ""߀>\j5%:ÁD QcGufQ_vF"z|bjoyF(eUdĞE_ycGuքV%Q#CQ 'f0ZwTM Č)^Ia]Uv3[̖qk8@#~|&yIM^o8I%7?0 }N8'Gh!<3@U 9wwUʕ Tf!4?,F2W]8q1wyb);r2j6RV3 iÛJ\Z3sܻ&^|\#sY7*04 1mm~I#v aF<şfk&z!UdX餛%?|O/*~” ) g:+g F 7v1S,BtB?#{2u/@6jn@4 VQ2j|u# ]3n{/>]'(|>x0dT\c=\hDk.'|HA e~.l|czz}y#w n{pV|oz\MVW_6NPۧԘ3MԲ1QJ!+ Bp:ie"|lNͼls ڠFbd+K&SlRp/B]<3>Tp)g;kD}PRjR‡6TG=,p'qko3.`̞N3q0iK:u`!%BN@!<=B:c5 p`uf?$-C|:x8=DrB'wzl{ؐy1G%="SdQ5xƵì%>9 Ơ^֌&C`9PaҰחX9Ĝ'UUvG< e͵^)wimv`|p<$"?0Y ( 8m#/N@y*g~LVNL?Th 䬄PR*IKUUq#}X }vMs 4k?u#u4*TTNx FŽKk7)6k~ۜ*m -MI꒶qqȜʰiGvoCv'IiXW:mY7USl~GY6ȁ ~[+f5ͫ!O;h8x$aM CZ3&rY*M(M鄣j,~8ac$$:΂tyǵXlOkKay[| drtւུ7èdj|弡;{L@b"̼qDQFY432/vLbn1ή#)B*߯t o9hE\j2V>nv#[9p'`t MԐؓmmУleֽ>p3v iXncԀOM}( ] 㱟Sqwn g FNG`S%7 IH0Ex |8Yym9XuzB})U 8'~'rXuΉ 9ZfPޞe?dwm3u"srȠ˼'I&n47ܲᐔZ`e`uzQR۶~QRn4 TTߌ:@zUh=9uPy J[!U՞gOn|U<> ޑbrYN\ 9Y{WڮizH7|_,,' Bދk 1[|j$8l9+9IL)/pXLZQ)m"! ڀPd +rE$*#!nBͣovw,S]1ИNtui5Zv} X 5q2_z!VÜ tA>&A6u<$qQ#'sάj( !.{@,MP{1Z  ÝS(P`IP&ϷHsJuKm`#E1 ]2P U8^>6U͚ |RM/AoMvM$v͠x$IW Lߞp 뮈׶mG&26࿓VJ-Bl@}%_K݀EG)ّ&N0aXNIr{v^6r|W1h(DɕBG|f3j2b+"f}nἎSRSڗu#h. $D>( ɹ5Ix߀d4)\FrYz-Zk $MK ^Bߡ0q:f 74YC-J(S-4d/[[ԅcIoIJƧÓմ'a{ )KtzwfǷW!c#flHgН|q#Őήhp#a%ì~lYXY&y]: 2S(Ϩj`C9K(xzSeoC352>4gǯO?+$ Cӎ:b4߀U3$єbܩmS_:r}ڲ?,РnȚÎ K %C5(}ڦ$LR#`vZ,|qB]ׯ3PN)ׯ̹^K}t>wصG!'nV9<PNk s@F{/7B6?8E%ߚkf+TxIZj\bvʚej=i1Hxe]I17ظ;.JEq ;~#?' K?P~7`Gg:^)ymD ]E$&U/r}߶?_핡bKq !VS"򰚕nPԌgT|5E~/`vwwO~t{U9 O9ZxPy}d{9:/9Ц^R:A:]5q[W#0נ1_ҳkU3»^+@?dy=S䋈kv)p*ʘzI4۳a\.m3ލ (/l4 m8OYtM?|=o__IAMM qQ<ߴ'轢hOD×^UArq2JA}DG(^?z*ô<?=Mvv?>|{K| ᏑPbvbHbr,z }cfh3Ee7ܱ:~7JFc#(_#mSUff fum[7dtznt}|0ì`R ֆY)٨c YhD]X}؀$vCnK(ňXR̫g]ygl>l:n.8)=U(:\cYge7_>eӊ0, ab5#Zp?'7M(7y.hkV9B4[]T.%j^  ߝYX@UT9>x3 wfJ< l,m? }qſ7fBV.f`؁Iϱx.:`:.>򺠃k50g 2HqXm,'I͌Pxu]Aמ_fz8p2Ѽ)۴5?y}}xDOQi ۊ#  dSa7Ÿl&wf;3w'E^@_ĸP0R3Ƹh2@Dxu#akk~^ a4rͭIjAb)YXfв'ڤx9ݐN@(Cڈ"Yq|EQ[NUӆvуV;B9T/{o6%~@D~%JEגn D$Hɚ/ϖy2EbŽrٗկu6=hvѲٮM[@Ӕp+"p?9ʉSghbDCFA%6$aeP1(tAլ>Ys֥"A=0׬/d:#LԆkSRQm#"1_3 E T_َ=/!0Qd cd֤@Vi욁x$~O8@5m9Mf;?k%_‘"5a!WY*Z\Gs1ͽZSjr$!Ju=2e(AıP uvjc]Ģ=T+MfZJrA<hQ3-iеAuII>mQ04͛GҪ#S~_ G.Nh(Dġ?ECI~Ȥ:HF 9\~Wȸ&qI+XNVU6+|8%Y~uMakDV|q>vׄ[5jҕo\fㅐŃJ*ꯘDh~nCk7Ӗ:sЖC# :M#FGME'V7*'/]OH$Vq^+K8wJ_YɧR%ı!]')t52)"WT11t@DO|[8Q,wF7`6ʚw%yM !P!d.B.8-3H&S94S.zt? 3@!˯"-8X)9Co5l~lHk-k1iCۂ7B%bctI>Iګ ~SB)|1ȷ!0SU.u:a8xe{eq@Y뎴0OIj[ zo.[$95>ߨtTn ɋ/_l`IUS5h!AxaiP'#&iPgQuZ AjXx7\ř̓mJeK{uǵt`@˗3&Nl.fg<.Uv<'VaNUGdᖋ9ǢA\ (hRQ!MvZ[ TjxO_^`|j%{.;m=]2ª4h $$&۸R u&F(-z QYRȘH`=S~c t>`#zE=I2!Jj5'%)vW`؎S\[Ch&a~0cpe%#>qPbk*_C9VBĸ/z߿{/G_\Em;4eTD ܹٟԱ? Hd7Y9GW_C8OsK66T9-Es€ɶo=uhmx44fПEMv0 P`@b*ןݸ @;C;/0owbIamP$c:}OrC&R,ʟ*Xkk9<`ҽHG@R$b/#_Hh ܂ _DcwKֹ%]šW(pڮ7jv۵cF//T,øM.VvT ߆P9˽J5(ٜUHK2Wfm\lΩA$*N9q*;-Y-0wBWX$Jmr:=xYZs1g{U $%f:p&S-%wd-ЀWj E9+*?LK^pfd5F㿒. [K$m0:s4_a-.vQQS 9;=LǷy*YAIS 9]{ZX9a3֑b3-nBx]I6Fw%Pbn T.[ WH.9d\`GԇYQ6ZP{łnIl<*al"BkaPbPE Aln9Ҧ"䈾Ω['_>e-w56SD-cCcI8v%T@ ~(lC/ p%⮙@eRnZxϑyފz%8ۏW& ϸ(kGl類ٺֲr}jf+.q* }>CMӡMI$jO?̓ۨC@`Ms\cg@T'FX tn'@MQ E{|6rL-ri JֲF !)RkދȹoL͏8DINP_k=QsBpWrO!s2=pzo0:XYKXIJ szo])wG@Ƈhԩ(3ᱼ+ۘk`}HH1%޳ua=y,s@}c"ހ`L 牯`P-AZ0:s ;.4-,=V]rV{$$|&O{t8\MdmjT%Q64M5G[9R1~c2`X?ui{,ݏPm\X5%[T bڨŨx>XKZnqΎrhB*Cv Dڎ}~F lujT[#v} }_ ܝoGvRcHLj57,al֎K( brR *̬ c8{Ӑܞ [8l\M 3s&> 'SNuoL΁C391i基؎ec+p-F}4_iKT e*ntH$t~krpqS }O0!*X,rž%iE"8%5;vQ=g_WBɮȂh5`43 -dGf R *"=)Vа9a`?ͬfx`+8?\ PhG%aɁqB60@[yR:X6)9=R ;<,^^AeQR !NB>_? xk) in3 į9IIrv{+T&;,FvNYh^ivX2)2oy'R.q{EB{nƈd9pUj+˃S?^M J0dXAU`(oF1ث2]Qe @tؿW/_O\'X'X\:C䖔 &Z?9J+81VnGCG+7i ǁ/y,(  w($:EN1w!f4YR ڸ aQ'{umh!!! ׅ*V{Wqw@5,I17%MO7m]ڷݟ;c@{8()\!bʫHXB,w^7sY%*,G9%ZK_9{REf^ zUP,ItZ*wCbQ{cgiA*2NOsP6b Cض(h 6 (7K_)Y)%X`[uUY%g0E X qrJ86S$s񜖻vH*Zct=1n<{F:Ŷ7/޼{7ΒN(jB і>>otӣmqe:~HJ`3* &۪OO;xRv k?C[4KFO^?U#^&)#W\G@W} Naxty 5BI :iPOIj⎂"8U<]VHG77l:[Lg|20yX%Ah` \G§rP|:J^?" !wgTQPD@!̢ XCߨZ{I粕r-܁mFi >+I?ƶ* w6 UŇF^ ,tD 0nҙ>Β ԩ%yre!IBL@:/ P/{ O@h36RQ$@ ez2&Xh2FL)tD4r{9 H(PM^-]? ;|f*#x$ s[jʄ-&8ce820,^DDgw <ʺx p36d AaTR$TdULj+c{f|XfБ|f@Ĝ%R!= m F z@ȅv9i푡9CNq yh.z:6$0)o L ! m 6 ~7M^ŧ "aLİ1 9MSs12v?_ƋޑotcN$,3m(w@<H(50T[,݂ńC4gph'"A1Dof$B#"E˧thGr>n-}Z ' F`ЩwTڬv ,"c'( 3돡0J;$D0ap4@cL!vOm?* p6K^ GB<"hE(JQb2(P>o˫W?~qqW/Hq2D``PJ#@ӁȃWubWwt.O/N.^{,+8z100t:J[ ҿBLN/k:N KH '6Oh]RIsGP:PuUUQzoeZ m$HލF\eI-\G8dϖjgp8#Cz^X ).L쌉ӺRʞVB;ˇŚ{VV}UI~0-PQaMx,>bKPIQڗ+HN=oķ~QOs%÷ezJsמ{mG4V>7vɹ0=<Ȟw/߰b#JAwʿƵ..Ӗ] b!/KC?=78rL-' ~I n2'f#7Lx=c` IJb w|y 7YTAE=Jj k'H^0`QJE)ChfQYv]s_S%DSqXcP=],gDH7=09PoEs%̡) .1O zYz|WPO!@$P ЧUk}IP3ԕOg5Jm 7B{?B-Eyz*h"YBIj|R  C5`l'9Ih-jf^h,극dq6N%hC'aO\q[L &$`A{-KвE!UP=lP)=&ؕ,,_bhw~^I F?!78?q-!@Ur%zllAB% Ɯ G& r䄰!a!YM%KG3G;#U.u/0ńVij+0.hhN\IAI@wzVd"(j~5czAehEBBZ`dz++X:-ږS+3Tuq͊ȱEgs[lͣ(ܧ >C}i6~UN I=v9ٔ @S1&r MaQa*?I&X>\Knއ f/E.@g()E3Yy TfJbF2.  =bbW7-b |_KM㏊,l <*qE:<u*(([d[й)kSrѐR( }N3뛋\: X6ioN>  90`D h'K1P7 OU\\e`kc%̌F83Pf0ΒpE?dh0%{D#0J Po:ڌLb0c$YR$!WŞ*H!]wڥ7V&9 (U½ĩ%F/Nk SՖlQ_Ǽ}],t(h_i} 2:ԅc wI} ZT{cWBMPg)^h6 כ\>݃d Qr '|ƨ8kVEca.y>ڡ X#_="c׎1NU|L)]B?A#%|:~g ?1(c:jAo=aBO \GqiO #Ĕ}iU$*kL›ө,M+3ښVeJlK8*LL_aꞏAj0Tɻ?2u9S\)kv炌".Q''=706L~R umDB@j}dyb g) |9*'^u91^0gS6'řYal5<;.&0v89 d~/8 5N+ʂJ^|¶F,1猪U| @eHl4(JUIbd.KF) E$mK,W) pds/5f⪘ֈN raW6Q!]Z6W'3;i:?$ tQTBҊMNB_J s W Jܘf@Q`D/rdEm*QW+`b++@+aI{VGRUą;KUVaholcrKK_x"$S!5B$ 0h1dL@kgז;g}^ԓ+ߙ6لZRp-?j5Ug>8;$Hp[q͆9JdkSY`<>p Ӊ(g8XbgU uİcsG. 2wveyղ> -bb}{Yj;M1:'f.%[CSq}yEw@#l` :I+1n8u.Og 2y{s2V v$6ly[:"ط pK3F`=m?9%OOPzf+ t32_UL xJ0ebl`? ZvtF 7*GlPw `0.AẃTNTF>3NjScT'VaFtG6L$J1˖ '.~CA/$q%8]/WBC913A`\( d|W.c6[ [%%G0%V,p[VY++"p1r*#]x=>tetѰ+B,Kp*h$l+n|׎x?b0sTI 7끏=]+QoXvN8[9# 92Nbl1$/c=m GBD74J?k->_߾8CFň/PyT 4@&z]op>$-ĺ$*t*1m  [i z{yͽ ѯ7۾>yTo"S_9)<ֆS_-Ĕ4a9ʒU?hdZDT[TCW4W a(Km?^^3#Vs1&gq1a;: 8)հnH߶@ЙHjTrt?1}ҷ\H8@PAuo8$#_0z$L TQ!MOWOk.NW^[~k)r۞؝ jmUXVN  E_ۭT/VO9ϽSZ?sĥ&}X '^h>k;Ć{{bS0 2YK7\ú!Wc$x>:!%0lr兊 ori{b'I'xzBSo$ [㴪?UY,fͣg?_{ҫ^.O}܊y^}_}곦Wn!ӬaΧ&Fz<?j HI/̛΅Jcp翖j ~fhװ~ Am~Y |rY?}{rf_۬kz-,X+xz |,q:Ylxǧ'޽Ojѡw q\g1t?lѓ%.ůR?鶧jgԿ'sYE%s~3O0$gPwfGJuS7_sW?504X>0N#m`m#  GpJ >˦X!{ڈ0y>:n\ >}/bB*M[˗ zMζbv,fqt4>^0<uPɤC:~ݢʞu8KuhNBzc>[; 4\~9B57+y h D+9 cŊyHkB<0 X7=AGʆK,>&hTd[&,G3Is.Ѳ0Gޥ  +g؅e)C %uOz|WKT˿e5ZDjiIY1eψZٞ5!3rg.m ̂$xޔ=?8cfsgmtnu,P# H煖RK?p8y(+y~h{ꟓS[JA!G!rISF[;R|g*v+~ n)̓)fsWt vDC/kB4iEhHQ:ՓP3? cP ê.\ Q^UZr!Lm*BI;}~pP zG)>T1U_E4ztFӉ'9)S {]" jK۰ "Rm4) R78-`zG6!l;l~kp_'^+&l>&6H9 lx cC?f\ 2MbW,YsE9u_Cc\kLĩfƢjupiyfG.ӧёU*n ۇ!@4<< uYYYY^ BHxHEe{/:X3`ĦKYr1b g7`L5`mGRarFȇpf[-[SJ2]$4W0+܇ɉ}?b3iEsui@IrPpDNor۳Wu f.~X˒zևKAg' [hLHj%Ari8Ò%4t-2eO0Bx:TglgR?'՝swP3rS PРds\Bh8oshnmqwky _K- ̚j(K3Rڥj0#~~,dℹ-zݑ"y5Y:5 V 1p Tձ ߿GeIţY@^fbzUK;kp(D9٭]>uAhwW)#C_b|ˋg޽MɓO?JV%(wBr& ɊlaS#SiBZdG!lr~9j D>51AGCIFmBCEj 0\XQAW?ZW/wM5K Hj'~PCޭ %}^^pKf-] 5(be9 S5)VɡUc@rp _MҫeQW;Hgqk%-~{-F'k, %_.\ڝ7iˆ5Y uIs(&to3ssjgNEufe;us{uL)q6{r7f1*kdqk*WaF&hf4&"]$/H]r^ajViCi:#<[h&-tϐsoΊֵ6ftoc]T'4M~6!y>Vd놞<뇒|M]/KWJi~07.}y-6*۝I0'YQ9~\aW E;"-ɏ*nQ0#fRPT&aNcAq^ Z `=?dұ Yf "Xq @B8*'oY~^|C gx"T Xe\ܮnPvy:o0NֽeV6'`2Q\xFWaPG2'?x3/JxhPx `445WiqN _9-?s-hR^=i|(N~;(O bQ9i}Zp hʧ-: >@( E inZ3!4ٳi@t52 tD4 g B;6&,Psd`aof9^gm0bbNanr)`Zh&`AVbp׏ 2ley2mE+ p !u!Km-&6( KʼXVSfkaGs׌`_#H3cKCg\;Ҋ䈧C.p+Dao; ["w0py@Jb]R6{ʌm;l?q1no{:4P %9Z]umЉ3;S$|ٟLܱ(F='aF`0 )/g&_" 9S03z ݩ,T4Ñ P|gI¸`M׌SLRBś0Xp\yVuV(ՠ U<.ߖFVDXӐC׍ee Q۷=e\(ɠwOAk}Jޙ|s+=%Z CjB~@mQ5vfNڦ| k9Іq" 9d3-^ɄƗQ˜s#,xRxbQF e>7RV!uhP)Q=;b1BdO-K kxp9貳(^\9?S`X )g֔Hqxz7"[dPOHjWǛbf͹"C A (_OF]=ɷbx$KUZ+;iܚX^\3؎& YJh5nV FgI;:kJ2)@@9}Ŷ61`˲i,)iB#w3kҼz 6ˉ _q]K`NcYzF ~}fqzک{tjPh=*L}9cAPngЩؠ)(%eL0]ΤCA Eμ~C`VV&)m~Ra4Pntѓ1;`7!^yr,̩ekO`;[^1kʧݦ)DUh2BHh- BatXQl<i˶|86k&{n s`l5p hxKH(Da1 >%Ǯܥ2J,HpƚF "NK1-DQ[rѬCӵd¡as5+^"Ip+8vPnGil _H/h v/>|AE e8G%/QBL؃څ-͖Y;DC& Lz_FV" pwG!c 65 CZ,:PsYM JElVQK)#vՅQlN t>s'9pWYNz݋MZh1Xu9u%ٝKZ[ lMQCh[v( Tb$+YMRBܫYA|UrQo*湨mTuP1HE5zٲ۪Km+$3Z/k]5`k5j*9"uWrͻY!qK>:tj`'޿7oͺ3~mgIZgK%MVj:v?k4۩Y+!Cr vY3I=UI;)sKK D hSk |ma< q퉐weR Cm |c}wO>")| @Ջ W4xM܋3W Z~FVC+Z2|SvBN\ M6!B~ ć@~xe*7r(S7`_cS@ }vs:/-# FtN ۸Xb:4`Y>j|sb34/X]ځy)fU]޵1EmD cTʬ:Su=1N. UGפ.g$1mynP {bnn;ˋ;LR# `kXeouZƼ$(@YS`̇ECM9p% 0ŔTr22fm=*qhk_}j iO8~ T51PP 5ea_B[Mφ٨Џ;r3q4/Fl N)$mR$(y2}^lG㶖WgVhDždi#A6H)ʀdi~^Ymu- LY.JrɺqZrzF꟝?>?Z&Jksl7JPŕhpY\kYաy1xo~0;iXaA fϜvִ5mgMY>5-Bw2%}ȝ|X%4c[fm90=mZ|wb0 (c/V64fX*QQ,bTMwaUKQ 2 jH'nLh_3;]nR r%8<-t{\-r rS6=%w'K]iH \K@c";VáV ̼RR4ƠӀzXbۭ-XYW.0޲s+sqT>t{]5ooZYWʸ)t/hocKߝI zf2j՜W :K}k+%;˲+%Hn:U06\C+!eEnx₇08bP=jpVΚ&ޒB.TslO lقuQNTp>J8]p][cĠko(K"l?1w>QyDEd J.khgjlljJ8gn/ mh!1-2bm FF F^F5&8wxuS9Tv:+f1~Щu@{hrnF(u 87.t|]i)n8m@6Aδw; ߁o gp,rti =]`q M6ЄI= %cݺau1dϖt0 0ϑ`P%D/^EzZa3.Kl\>wg9;~{ /.Q}n_:K|gXCn.ԪM0aԶ@td rݖƥ":L'?/|ҍ Q2Pk£2}e`TYJ` f YِAtvjynbyM⠹L`O͹/Ve YZKD``/,Q?q|M&tJ"%./r{fw<%G:D3 TM.-Vl:8ˢ)Zq.3XV!4BLܙ4n Ky2z#Z^3?Qٵc+DUR\Sn湴ʞfa|< }~yjl"Ӛɤ^1WZ`˵vEMOzz|7S-P[t^ (8cio#PiHԐ܀W$ fpvy'H21FU9 *z%wQ-W+ɥ`UGwIԆd p˗sU@Q#wUv v1I[B!si0KwY8s~+ Ѷ+c#UV>1ިbceYkH<+N5* 8ffg4v6:_u# )^%P٣|y'̗IXub$5. rYQbՂUƂEe4v6MfgyG [b\Cξ=X3|e3r[h2 A'T>ě->"\ d@X| vդO?Ȏ@ZPqfVLapBUtUr.ŚzuajYÖF2ό9JlrX)F賞C{HX$5@zirj$R{0Z`4A16|9YeA5B+cQs"JEP;pS03Gxu6smFpe rm2s.00 2kLH*#> @$BC1D-ss~8:x$'<ĨPv742OEB ܍{,W2dHi1CʏVw-E̮K =-Ŝ"`b@/)&D!aE&Deh :+ɚOSZØႄD? nwj$c^u=e@\oĉh0Zf TReW.+k\wJsg&ܤ!ĬCZn!:: 6M!:enخ_f@*^X`EKf`2 5շA&8Sm>\ r1 /W'lI6fQ)(W\-0YQ`( !Dz&T^9BeO $l|2p|7i VPh]dY()3 E(;x)h #$r3ƍ8uuv+0+L:se$( B~&2`'Ij4LWi{G5|D "94NksihLA1oHR1^e(6_+z`,a5ո"`⼰XixR4R ON"7`|O~\"d=B#8+F˧ |r]xGB<urgn5HFN`q'OЅ eqqĈFV@bHEu6dH nOc4>ĦyY.M ̶ȿQjp[h05#fmbsD܊`ɻ(TJdɚ _!ިbZB@=2n119'8/l\`gY舩Z6'x;J|fE0o\^#42Ȧi2pr,,3s$cP14s /JH uO )E`{fYV΋C_F,xsV+Aj|o 2o֌ύ7+ehZTS#0}k8eqx 3 \l<9 j7,8!cۘ^eŸ,Of=`/Cn9 "B 7ANG/[A&¹JՁb+mu o%P`*Ԑ6}u"H^8mvShWSPE}J8ܤ\rV5My^*BҔ\:Q*<7:"26kH8'2qTx#3.1#tu#xÄ8{9N VY 3t)82 qW_.`A&hAuЍ}95nLA&va]W6SFS/rs}V nN "S^AmU6{RzhY50CDԿhDjOACܼo_G Rh>«].ze-EtUw,_O "uCq[uIJlcz9j-ܕ]ִV/zܙ0mY=Þ0if4jNho'xu"(|mԮ)yMA=%؆+T2;If,oD[ *2Pv[\\EV"vU* cjbt`2s9b7m)zp/G嵠,&4dJ[';5HA 6 ݸzEqdԞIzݹa$oHJ].bmXZZX`eE"\!yo^8:ً_|_{eֶ Jw8m?[]6CL 68;3-,΢ !㗋K6[3.8"_liq]J"׭Q{PޒHg"*u." |Z7Q@Y@[fFdz9 ˳F J;bAd0Tc IPgO/A2O hNfJlfG~د]23*aIj ;ӊytaU!C-X9:dPOIˈօ'>:<G-6Ge:6UIHyXLWa62P]rb=o|KsU/l5H3(;ČL"?26  5-[PU7S ockՌJv}(<" +,u9ټ &2,gjx02in,6YxG[V}c>T].Z)l\R%ՃpaB#')%Z6wDӬS3^ާ{2%8KwBl %y333y܋(c~ x! 17%ŢIUhJV^*D!)ܒ~4ݓ :"=Dvk~m Y-@P>udm`(/2$Smt2p{m>ĥ?m(1[;5 cԎo1E%W9م 89Y(8~JmvF].ٿtF>tWzhEC?RzfP%~NJėՂ]e8-~q͉-/(h/~?guR"RI0:RlX9+'bkIrpQgNe=|5y9*Ķ~~LE[܊욂,΅KZھnҮ aahX3YPCWXBf}<kԸ"~wS61I2(ww&?ܒydٱ ˀ]h,we(ʹSj1`nI.FBXrXEA,پ$pd:(;Qvų {\IONJ ݝYDP(H@9-&ew*_1,V*Dϊ\UvC$oQݕ8 ^rx_sٜSx;~TK]Mr?FZTb=O~'rwڽd ^-J"M.(qߞ*_T䂪*GTJyC&ި n@9@o򎘤cJG*/~ ? bfqf kurD@,m_@~7,n+Qwo77ZZ^6/"s1_}!֞mN(u͌C9Eb:$ qoo CPۗ1)jplo-;[S6_;6GSR0U?ܷRDhkB!f2YpM^m fSadg%*$E_+-:_i|7(Ƌɴ^7;Кe(]D}XÐSs)ԛyph"Ƙ}{ϧ'[@OO܃p$5:ӓg׆Q$b5?Fn4xZ& GO''_"en2z$_`ѨVtlc\[?5[7L (C SCLMq> ^ ;18CFc~ug?MksfcyxBW>cxNŖq?dkZFRD3O:3>7sl6ouq>*\Y}؆2r%rFfC^b9;_?,E쎇wP5'UKtgOKfV!kWyxw%벘 B)"^ȧQ+)d.*ory'->d!d7뛢evmK{[-u [ߍTt=36_B` }"g*e»b;P .ྟ$&{]/Q:J D/|@<,F*=:6c p~z*yݰ ZIv}$Άr6Ȥk`,E:=ՆWEە5P ԐkǕIh#+!3h_%*,fo|չ#D@'KPE$>f;s? ٛ؊01i\2J^5w_TF'[vڡn̥Áe7ީ/)F٭<?ehi~\ JKjBi2)\]PD28e>c{~şb,ٶ^6L bEa13mc톗2V5>`HBA`^-coMͺPhDYWd9ƎJz{  > %pv1<@bx~m'{I}1XGY+6 円1tnL>!Oc*e!espC_4)$H/#x$. NÀSXN ^tMNdO#>3%xÜ(Zx_4,Xg*7  TG4 H"T$00;!;ʅ) ٧^K̟(ۦ,@$QZ7n8S!whgW2wjLJ-w_Q4*N #7Wm  ._M}SȂQ Csq".*wNTwr\݈Nj|P@Ј㻸"}?Z}qKJ|:hf\'r}``% KS[X{Ux/qξ,ܼ۴ڄ!͒C.^a  }ՏA_>2eޟS=*ɫ2.{ewkGedhbWX$(]W ֻ8*Z#A+lLI.&]9̺Kކؠc\?~HNЄ25/N X ^|Y-!Z}U%wL1=qzUrɕ0_OQ_6ْ1q|I5 G㱽"P$PpU{z$y2+PA[$<< NTΞA{@BjsW&fG/жZ}hZ*ao#4_Uw*9bny$F 3O6 h WH+{g̻xEwuwwLh|)RNяo(%"*Uh\{f*q#[C'G Gs(}u g[Z@smY rݕRѡ)9SxhP{"DVa0A*(2: eWHG _;O#P0./b'i@vd>RQ &s}M xF>'jq;' (,#/JXWoK$=u:_><=鋽_UV2Em!;Vsm=}*jğvLq߉ lYio](+2r])IB tCf?H\cw(&yUt0]>[O |hVdpC+P9{ +2rD>Y ^Q1Gs) qc~O矤nv ♞8I7 0l 9MRyFOrQL~JVoOa{='H;6*.D\ V%(H"X ?t[0"d!é["ǀ)fUbS$ٶYS6@\_(S 5y%_WԚUNsW9!WZ-rbލqzU|ځ(!޶,`\a~/)^Ef<'3kLu11Jڐ\946 yZfMz:XVq:܈NF(FC/PaB@ v<ÚSd Zno+MkD.p#_N nR# Czhzq4gQrNn \h#+ Al>(u)5 GԼ`:[2Ch]t1oMqo)Hڭ6mμӔ[Y3`P n@v'XKӐ k%'сNEz=+ 0Kf9p\LI#P 4P#mS)B hR[2NV/"W#;F|6uԀNȗˋZr H$f@٫U)k,(wPTqqq'/*#=mGрV4i=ʑDK)2 y5 (r+CM(>Bx~+&wzł~b+b;Kj7lgwq2wZX;087ԎG#=," Eрiic{QJsmQ6C[2Fcnz[LAJ]SL4"Q$_[`9#96 2t⽧vo@bhۃ'XdMH觎 !I3gmU2\llf ' 'nEԳ[5%Z:61!̦~嶡 {bZޟzW_}wb:yeA'^p.>GJo#W 5^npGNXڕW/^$8UMQ(URT檢= h/de靑Ⱦd@%Էy3*#*eQUݵ<#hXkij=GSbVk1GFW-9%0/bۛ2S5Gx[m[n>_)z_l:5n[J!2'\xTa̎vk;g[B_ )\heTR}h޹՜y`lq˛t^&{sLLBqr-b3o)VW=RC4ͬ4bkS o.g b^xat{ByL BЪP[^ G\6kq1x[wޟ%)eUSq7."+S[UtPb94X (+^v:ۢSS,N៘5~^V])Xۣy_4I@1A*/aUXV%W_pJT0T>8/2s {Š(;Χ Z%P]UGɐ, +UZ5 f2P[!*3eMho(jFk%;plCHY91x ,PŻ3N m@d.iJC|b43/~7ɭA3D "Ri *gY?t ^^az`d8k,~βIWԍ$$E2Zh娱%A 7~jRjpW--z _FFMǭҎww_FPXS]Iˍ1ހ&Ds솬2q詓4no!]oiǠddnqQ1մmgpH s1|[#I:lL6P©56K!Qݘ6\<~L4VH3Cgy;9n*85ݠ`89yg+ 5,#_;R ƣ(湒wbG=0.dImT8>×0r,̲Yu,9y##,@QĘSb MzǤ'[b/yliYV{$j~5Jӑ`@nKAg"J̧A%|2[\yc:bT+i$K6 dm gXΒ>ݰ*kJdQ&+ȚNSK|wt,0%5 sN]m?6mǃwYb%Skkyčc~_j5ODz.D鷞_>$+94qcQ#ƫ'%/!C>v iݫcehy6ݤvDz ɜ'/3{U("G;'z~ R9w=i"xj"$;,JL+d[{\M660*?,K3ǎ$ @BV46{g=ڽ|-!yNgW ";ydmBB.2YĦGGf0ĈM`eh)LN_ V]`o&/h^ij\j#!nYH9cFlF&vތqhh2bp It ʬU7܀|EiњjTL{P RuHoKbi~3tG>wdGKcT`M]IUHUKXl,nRt> ^F8+#YhB'h38qѦArJgLv^ U0j5? δ2&8̜ESEaGs: eN|]9%IQ`.8nzk$W8zp.5=,BK+%K3\,)L{NBy|zJ5e/ۑ0fY5VPTk_{xduH-x}4)ytq,N"MV lHLDE5M6A"ӝA!ݷTiS?,9N 6H[@C䞨KOHw+sCb8qNWȗYSZ$li!!tRGfN~Ikɧt!  8B5!6R|)cHTC gc𢡊j' \D+ GԷǣ,UR8ZLA9HT swO mTi$]Mx2.ehd:HSh6PG`ns? 2,Jɬ(5Γ%4?__CB>rlZ_!L7mau2fBb&G,-s'椧 }d vj:e.{LٯgۑhE4 Gm]@\5ѝxi7;P{N[&<@Ei߾EJr\v~&) t !Ht 3 B"Wiͥ0$0:( n>Lf-Xv L(p%NKĘD0-FVЙ;dyG%R!#}WRM|xx$''/ я:V53.#X[bJM3(4 ;TڦRob5\XLA.KJ=SHaDU؛ 0F#հ="* kx6n1b_*3bڭ4#=[[JeWxP]dC1ߍ4FHP[>5b$"x_eJV Doͮ8m( '^~43 ~U4|m_{UsgDh˻Gp;ÐzxP0|~G}s 6z5Ϯ3>9JZC<FtℲ֤D jb`z t3|L> w J gBITsk0j;^u9zgaU[2, %W} 8FAZ#ESwX8 2vD?Pl?O?1鏥fm~A#gt m_,0Ŧhs.]U8kjؽ>ؚğulqd; bgWu5Z<c? mV͇R#"Da{,m~5yɓAg.Yuw9~ "D"P-]Xt8m iSx_]l K|#E=Xjh+{lA-0s~1.?g Y߳jڽi^GEvmz<8}l]˹NʜֻYOu H B_K> | `5;0^fןDVS;HH練c2jW"ڀj&siT_Po(Xp@&`&{c#tʼ4/~BDoju1$ k@J辖 #wX#v3@&LvJU 9 a,sݗ+`N^:w)2bz!@$ X,wOū÷n]c2r|@q A|O]zV OC#Q(/?>|nI 1B@A׹\p]ɸ.x^5DčlPU`#n!.ʝsV%̨96ʾ,pc~~Aҫhz~?F}ªv{^?MT Yէô^qF]!SxcCpi½XVa+NDm'4>MS|1n5'j's(7W=fl0Q 2L>toX]7~|n 秃vmk|U)<fZ [U=c`59.gvܲ5`qq  )C,jȂITI6J*T7"´yJp g;1M\& łWqs%WxeE }jebEhm1%#J ,{QV-Eڲl(iUm@[M h7XoBP򡦑hUu6<|WMYL9x?xgK[#,xkv/G7`'< ~L@yYՊ9NWSNorɂ.<ʵKssa-#lPMxs%V Rh$@p^4S| %X wD:$MN< b2AKE'җ#V{>'Հի͸ڈ V>OQA{HwlIkTV&"|_S_.2/lSo4Y5+ׄa te~̂7 Xъc ajpaLyDǡtp"!}=寰!JeJCM'lƓ"_~ƪ~sO-![UQ̖YZB8%'=c؛ VM}晔,`Xuި {7w-@L,mϞWDHPFAĮߠrh QI^@Pck{,cQdG-M% oIN @wfE5U3Cܖ$ѩey0j,j^50w#~`(#._ۗA)W-Ewks%lv~ߖǶHf:VGyI d*f/yTQ8w s`W\J&0F!WW߫ I'ORA'L:^25.yᦷ7j Xl1Fѭ! K Eo j#Χd#h8-1S-҄p/kJ2\2Ņ~ ?orb8Cqawp`upK-5Î>.rv10V˼XcL*18; Dҕ/RPdUrw*vCmsu}{F}Bک7F1 ʡAU7=@qJu\|$A:Zuފ׫} KR[tշV VQBGT6 .ǯ޽M~eƆ84`kԏ wCX* uI"zjeٸR30'O~62 TƳӢĀ6~1$_v/+>4pqٿ) CIDVG6ksQ/hւ|KV,m0FY󱹡Nl`6aJ]Lr.v/Ts~6{Ck.{6TI6\`iY;5""ivm0KNe°xmX] >E6cT˴U%%&8u44Si4sśМ85˾2YU1d9d w)D~r|Ōj79kqH0d oͰDUӝv9{죛i:ɇH*PHJ| y&N2C2s@.x3S[H lOGjgo=5~-a?#U,dT RVAkӷ;O:Ε|0 Y\[D\ҳ; c8!K^r}RB2*L9 mޝo})N2 b?ƅh,]'ki$Mdg  D3Wog)s^i1Aټ4V| pnSLM)$gDaf8}q}R"עn/WuŇBu@sȀԩ}I($LE -kuX>Ddl&nՠ6jpf`/ɰ8Wo>d#ʵxt$eiL04AgLȄއ{ʄt|mt3EX " =ӣw]N$q^::A*aubROALcM_&p$h4hǯp{ #*pkљD 3UY$OY䬨Y'w CX;NMJtŽ$bJ'̣Bmb6ZK `|R §Eii8lENl`^9\Qf Tr`Uivz\պ an"֌ț)wym-e bTQM-djȧ,r/#XjFV4yb=>az.9 HȠ:CzфQnGOqjbօ@@OCک/Florք@V&[9V1)xgYugNفg`쥡 !^:t!3WDRQyPq'Y"hZz!3 Ǜ)e&\蝶~3oJpI1bGG$:Ӎ|V vU^lbkL*#!9u(|qt!fpԜhY)xsbĘY>Y'ޡj-l[Ncu_|t*~;qAhpI7.o)RI1֋˱_!e!UKžg1mV#vˈm|~ r=|o)A0\l*4vIX("S h r7*r~M._?qU|W-WW.w{W!> XQq>c>׷s-7{v_[6%FBpAqy#ȷ ,Xf k' e r~&jϒI" ESs %_m^yUZUzͥZ{0LGgcŁY]G=$ϐiP~w9vk'(7Mʛ -ћm={t=7*"ۙ^?Z9D;+Q"K[ny_B]gqƭ6߻aD pwn8}aI[Ko$Jz\_2UJa\0|vإB 2ystL:+_qB oGU$0i/oXP˶d&9$"/J  #$_YG/6_ IF]2=yu(j |[TXX] X턧ٷ L$~L7oO֠u+ѷ}ߥɯC`,f,+,rR,d`c+̤}I{^f˜6R|JI%䰣#*^ֳߡ+>PAD[ƦK'W:Cb}@W.[U:l,]xt'XU\F. Ї)G8"5W]<gږ4H}Lc0Bg>罸"&M*I)elIsyNR ^M=8@"RuWæ5*|"^MW%\m# ]e!)xirӞwS3֘;H浸 c_F e=&M)@e =eX? J":]xi&3gNde6+*C/6* AAM.Em^R)fS;5|b5^wacjE!ʂ*?u+r4_٩s+?y4i2~>?٠X5#J[:&t6 F+eQv'|,n\#S$K^D`/_LaG'%'@E+@`7Lfh89:'~=?w~DgRqKBPC0O戻$EʣK1Xd""z% MS00S[|KY=~lr{evE 0B Mؒc%6Z2pۇmoOn&7ke֮n%w:e`aB(?Ub+*z Bf'#ÜX1;4DȊD|_336,2&`<R08hqYC7Fd ԯAmFzDBÑB. ~=nT*G/T7:wnzұ>XZXj0[DbL`T"v)Rkm%PJPj%kxG>T.ý B|y p]dqlXz-1+ڇzL,ùQ΁C:'ɰwio&aώ/Z?d;"Ji}WVq)8K_ͼ@O8Ys=PU; [,0-_z*/czksKyG0'_ Z,5*vDB.lo,d߶!}6;B 7M"2WfmT0O|1dv*TX##ȿ,㑘;`i||~.ح*RU$*"2H;b n`/ܠL#WkKӪ%Ղ(- ;S2uu`X{Ԝw#tk<.1Kj?E@X+lUs {p~,qqw.7i` i0 ȆH*{@Yβs]sоhаa=Nrbt,_Q̭Y4u,N/ff‡Jɢ㢬 ">,^󶳀렍 =0,1ZgA볛`#PE`:C4z}ӟi+Y]Vsü&W2ۛnJ $og1I?JLEZcO b<6-J-N-ނc-gy9:ܷOMQ_6آ`0+j9LE2QG-M!OǸ^`:?Q eP^ *A?χL,g1VZɜANϜ:r"1EP%Իe%Es-$2E2EYbMC? ٧=(3`'|uKDS7HGlzFnV9!(l7qݻy-x_Yʠap[- TD%]jfFݍ :%#=zVe%шUlXFl ؅ϊb|TB[I2>:, 30 yK02c`ZT=!7iC ^ J4Шӫ+ K{'ZCS j#Wfd[M%9&|$*$9-̥pL7Z,P}[^)/-*{ݮsNkA6FXc=P7~_Tqj *P+` ~+/!P83Im/Bﰍܟ4ޘEw)qpFCv(K9l@5Hf(rcn~ M7%kNēh˒f 5U0"YtBtVW} {wIEB̵cISn cdy*^=Tv1j,VaONhF5>t3MSP"a9~/.J1Nc|sM֫.IƩv 2 TC` M~bmMj~Bnh@Bd3; ׻:fRL\"'UIP4Wa{6pF&Q+P*EދƕD"UmdFLBf'7DH0ئ;' $U_=]9 >"/>,`6#wCOH';1t04:fQ4?מ5',qR`$;\}ޘ1Q:せ!{ٰ/ĉ)X ܱFmvCި럪2^ҪjJ7=1qKmBAG?;c~[{Cn ]Xeq-}ΓSg1a RR}1EhQ`_` J z1lAKmƒzF}NF#̞̔ӗrn[˾/Z`\\Oi ަOktY/k=ˡOL P컓ut!+M+fl`Q5yvUfjm8⣦IcpL4f=uP .IN%Y(E_9Qp운435hQt]p[)9ZLľ8_!8n#TvBP;E ;/do?~tuѤe~GV#G4;0_ +qr~ 9z#].l[pi4:)o)zb`@(,ȳP7#떴oo!y2x>rTsv>!.NfJY"o2S\"N&FNF&4*-֓^E2d -ѯ7~dOwMv>Dp~1nQݤ@Ɲ hkql?xhd)b6Y,u'y7mɸ?]pwt|mYPh[i9 UE^{xezGkw-N++Iܢ>yTv"7/Z.~Xt/!Ŋ>ijHKr?].ظ9~7ss$oJX!O6ѧWITUqFyLt @ 8G-$d%Cn- /Ǧo#HRb yfjhM"~q!锉6eydQQjVJ6ʁ|rX Ha]Ee&5lP8=gR2}4@Wa+4H[L@3͟- }K9~ d<_tlg '\Up,TA2k`3Gi`"%|C9lإ;*t~6T%|/fiP`d\&ഌ7 M8uU[]T䨝#żE"ž]9nx?Uys.pass܀4ѺLuO;os*/GS W񳌛T1Ӌ:PެA4lUky2?N/T`DòS< d?v2 t`^Ih|o ʌ m8/eơ'4S CttfL#C|0`xRXѹe, @r;ܜڵպ 72@ CZZN)vZ1`D y |\MMhx2*5;{6>,kG瘚%Tz2h%YVRliis? NH%蝭դXABҫ4GI9G@N%Ym2\*O$+a:3: ļX(BMbu2!DFF@ж EtJ`gd ǴӉ0̢м?Jp"Jך 9{ꢍ!(Wq$x$֌,N3?"`8^9â:>̠HN) fLf5F-r%UC*TG+>=]m=yQ6*F* X?D@Zp)0W1ѧ67O'--K inmTϠm;Վ^)Z{nwӂW͊Rפm(BآIek^K]0d浢څaTvEaMJ@TVF}QK"QTB ZX9*eOҴ<6Hٶ@"9*7ѯfᢑFjI""5G1gܘA[Su6Z)֦6Z3fAZb $hjO@>iXx6+F.vozģtE=Kq7zF=Οf[(:NĴJ2#c$H$8<=֘""/]׏ >mMoҚ !$q-Aͧ'^4[131ZgyNpF }Sy8Z &ckln8%"\xc᜼~b <0 Miˁ1-0b1 Q y#4{d&Bw|w.6*> 7`ٹi ydCT$$I S 4YJvxo ]8GJ)xo ʁQРr$ 3xF^Ё1!+$=]3w,t;| >mdwyVQ^.ki!mZ`vm Y}и,ǟd} 0vvN"&0uvn Pc{gko>KJ#,2 ƛJzc}lD]B^AnEjd`4`WgmP=Z<4!fG5]{7vU96r as3%Q<.rm+L[FU -⯐BLUj.1Kaӥh}ťmri:qULvN)g$yCBt8RLm&K"*0dDj[%˰ێ5s(zY踔9syN We_ ~޾;#3Q-_YY쌳O//<`u9=_F6;)o&gŸgs4T喍@C a<0#ީ4B^۳2TʾO}+na/r(O|b$i$.l#]ܓt-$YLqrC v=a/ ]\w=|Z=ߐݰQhLK|w5@jAboʓmVXzUIy6Ѧt{Ai-FLzb҂O%둤ȶ0Cע#~n0GL"< Dz}B>ʦ( (i.i̜HRFLۈi_ 4FdvDzZj 沍Ikn+DfY0%5Lx)՘ m}ۈh mIX͇$^Oj#"}c"Ӄ-X$hyGd[fO-Hv"N"rP*  R-(T Uq&s|٢u]Ϯ88wus Lו+0`n]r\fem $U^/S E*;؁_> E&U'r x*H"tCw t{ICsL}a^ Qzn| )y\5y ´E`H"3$e*w}}9wYZqZֹeGZ/FZUZMp oxM>UKFleܻ7lcI񋅱 XiE?KІee4nx C2#*T7L'vC1laV)29^CNm:!ӛ,9V\箘N/7..nxFw^>^m4+9l|.DҐHxuƅ'#8 iP Cl3N;2Qu)C3?ϰ"I]21 }%,ˬ&y(0SH)X 支%29q1gűb8x L"kI&̌Zg ]x}l E08l\-3H4҇+a!m)msUxQxJ.+ZV5ݰ+_XPBJlڜ혐7†}K,]g@B:J'6gi[c@!W'My+'Tx˰$5]4ʦ+9uҢa:4hYIK=08ݒUm~ow]Y55m4\5۫nCV.\]?lZeؘM$UUԯBp/MiDpӇM{*6$2p 9~o[ ?RÏvMgJsCDÛ 5jn8MH埊ǸLK2=~1_}=+ihrmsUΝ$Ɔyk/pdJ]VTI`XRaą8^Ι5p:ddɓ\#p,vVR1z!ɿ3Z*TVʧVM/3 LCnGrKKE*I7N]^Kk--ʾrEѕ+ۋ e6Kxbp)ω1EB[.mLα [W)%SqHQ"SCA'yM’5 (5$f[~ _El+ƍl$lKũq+.NܐH0XEGenό?LҺ.y}nHi,Sa+uv` f`jpNft0cHIݦ:R8<̴epυλJIy7q1ƣhDop1܋8S|cJqrRZ7fm"`@*0g]H ˆJ$b=le99ժ|S`c`lʜ窩 jWCV["_4 ʢofo߼{?j¼{$Y=}J@sei`l,?0𙡚0'9Pҳa`r̨nL8KacJrBM>HhqPǕKD!'A@!%ޒWl9e6 bOpje1 n$FDcPK*gfr2g&jvGq8 fgt(/}B68qmt"T~9ܝ?`T+.uM LX3XZ-\jb yhrv"DRf#(}^FHt"-[ BunT^r%!wݴ̰p C2R'퉠T/F^gs-0lN!0#6Z.wGii7pV$B'2R#|I]fiHД[KOFHKs*(q]@Uc|$Vv (0V"6ntMPp/<,PMءNy/`MNkK-J Ow=2NV=)7a2V@F qH W8WmunX{ofnw=Qå[jXRUW9Kb4| q1K6Fs%+A8/$g 0["12G@h}蜢)vT`*FUlDdCk.9y:Naz Z-fsU-`(A̛¬52)2Bt88ō{ʋ1Kæa7>M3IXbY :O ǃ?yߜג&ߗ1} K8B/˶|;mwб %P޽ڶ|V/b ڗ=g*P "w8$[KFh/s# )X75a.!4\%8/ F]w aV)dA0p5+0}ۦzĶ' 7{&P3%3kyjE>E2I /r Ժ1m}z-obʃJj⛪aڳ͢ 6ф쮈E ؅89)x)}2(`_l=Ig`j9+ &I@*YK&oꏚvdo^/T BS @8\, cylU7i൬4?O I!"B$D@xQ{M lX!#{^l}VF/B<]6ؼ܋Tx_~Wd{jܒPvXțޝ$$jXg ƇJ4YY\#JwuÙL)yFgKm0L,P0y~c;o*b~ſ磁g/dWy=SC%n(j%9`wHd H%Kn;/ʙaxOq'Kέzs/n  Շd'Xx|(x:_5gTP:1LF3yOnމ췕wszq|Sd5$MT7eZ&pkXry7ʽN8 D`plXL8V-m\3-| 1ދo c 4gn貃`<6e0?)#@S#5~aGHQߜ&E9M?"SH08f9sQ|pEi9u/@kt^(iqY2b)9Q6r$H24ܛQ>E#cxOjh!*Q.HU!Ҫr q+7ξ Bc-hZUڠT$?}vN;l?J;7@`֟8@< Ai:W^)8XK-%Cc j!♳S h[,lp['~hD]xͭ?fgjFn'd ZZ&t7{ V>ĿBP`Y{`%9 GݷMmG@Xp/I-d?F~!exwmɞ xZ7q8j(Sai1-+f@hWoONAܗ#4G ;=]m=}s\k?@'/)-+-!*> #<1Zjz!mF- )0 ܡDbW;KM앧=$4-_|).D]Ȑ6ikm!yQ֒50)tN6 E沀f܆*zזAyyNfA,e]Qk:c-g |\Rź )SVR͢X[ŗt'Qc.).(C(Em1TK=Qr#$ȅ%k"x47h I+Ћ/ޏVyt 0uMę8Ő ˳ܐX ^c)@MG%B)|4(gv&ԫ<'|72XȻ,t>sH{HOv%ӛd42i]֯7 ?I^s|UN!Ⱥ[0jhxXH%/dB16`HcV^e'6٪uIfbDQiX HԒ2Zӡ=W_ei-1by/Jb;ylѼw2 ly" hV[Ǟ[*"(L*?-'Q4xf 23r1 ǐ Gs TJz.at>#mzv8 /uh~wN|6Ҿ8{4@{`-oJ0M:1F/ @@'ݣVdWg? ڰ ڰ6:NwBoGF:Q vyO2$9eo j8ճ;bAC>tS-PtLWeIHIH6WEpže^NŶ|C[wf?#\b!oˆݱ w*Zѹʇc K9Gl77s h@aSI"* JRyybR( Mo#uJn]в|\MT+^}PtY֫hli,z>YC9BtZ2o/+I4p|,+DH &W~Hհ58 :O] 80LwC)Q-K w^<8Zn0`Ji>ShRzĮਃ徽9Z TѲ#:8Qǜ9lz|6cPD"'7;*-shgUNaHm(L@:d6lS͌{6p2c_Ay⻑ u؀߽?}׽ׯN?6~=:z`9bPN-MWT;Yol+;dG)a;9|{?}~تSfϤW?=|{OG^=I(6<1CFgzzzf__%R1#I)݊lXS$Pby`SYW͟a 5{&o\,FUP(r^As# 7xZzl<؏q{D,$=>4ю&i1}U7b<\582$ F1UJ e13LIgS| ͯdyxÁ/ j*<ۍtQFV{af3/tD݁N3}NO4$ " :.3#t^|} ifcp]PUv851 f7H6j|AF,{:;wPӹ(G/p쎅%n s0蘼!LF;AI$r5a5gy?LSˠj,y7Y|C|jTʨG:xHHul@t62Ϸ MfYԜX1D3~LaY `##pއF@<1rK~:H7P[6hyJ!"!sCSK|^dZX1z0fua8" _FZ/tu`S+vј'Q2H'ZR eɚCK%bBzb) M8͋}(wC;3n:`":w DeTJkt0UW"- 6GS,϶Il$mAzPicjy>) ,?.v[Ǔ2̲o1bȠu:?qlY}TC~Fx$ Bo8+eqKȥbQ asu=+ʍGn\e_[-ЂɻUpQxVjvT4b'OofJ( L ŜX9um{7XZ=zz2]8i/UFtF;_5،A\ʬ B MOb1h 2`@7)bVb(fW?2uR Čٗ;$R% ggPA`VhY] #vKn6n9|0+'yN==m %`H0;dcc;tc}ХDyK՟0d-cdlxQ_'CWS:?p74@zussmw ҹ5TH(;Qm(ɀqj6HrҒJ4Y`ʯR譈,maX<, l&_BI{/0jFΦWyYLD7R;ja43s;%Vi*JR= Q4~ЁXHb.xfR* ǻl |NOI+rb$&c2![Hɥ$ mf(⮩ublXkgޭZѨqIk\N;l;V s@sܿ@0(5hw}Lw@w M,YrtS _qVǹ' Ua eqxN@NU8$!ꧩ5Nzl]Ljל]3?`}ڽ' ,'E.# iYyېK'W#I6OWւEuQ^\ʋ0͎CpcAV5cK_+lg>1: o?޺K?K\8A9(| j.5ڞۋū˻y;q=ص_ɶ>ښ=w__{]dٳ/;:?~675`ُO7>V>Ed&FxQ:6˷vͽRa+1d*e P.E>Dۏzo aPI7XlIY(D@Amy=,7QњK-ۧ73 gb?I$S3QYwYoi | lFܚ[x:W‹qqBI`ِ/T)!^-.6b@w7:<8yt;A0  nM 97\.p;+Dmp(кéя/.: THvٗϹ⸮ C DiOlfuRp%܀}"?; (P(߭IrC!S7!8$d"dKt?LU*ȖB]CMȽ$F(_լL(w#,YOVZ*hrxO9huD# #M!w?9=qFiu ]XR D G-]v&@Xo2@-LҥF ≕Pm@wh 22.T_hC#>- !8Ɩg* #eԻԞ!FL#5S>O^ }ҷAFzFESqw@Z<`E 0x?v7}wt~!BCZ Qc xBf`AZ1?Ra(VTR7b2 fбFH,=~cP.@)~kWi_0@dZ*GveeW>dV' 8 A.ߊSM@F$݃$% ߫7~ NeT9bPfNZ^R9Z &8=iݙ$0YV۪9-KeV:Ilu %4?1e{X yQeϼcN?Ï/"g}e₀P%eYU jR2H[O1a))+`ME y43e~EV |~pc|mɢ+09ʖd%ى=Ghj"Ld"! 7$,﷿ l$"]]]{W7DŽB{vB xꅅ,Ao&Ђ=R]e(ȺրNFBYՙ]X(/y3]rL3&>d lr .>tO!b_8'#ӽnc Iܿe !B&9u湼-iϾ; /FȻ˥C ]dUB*&=qun yXŀߒQbn8oox6ZC ?XiHr@G>7 (mPQ?Zom _BUzϖw!Ϧy4m$%Qs1+쌐OTgsɅp£%1QCE:B1^6eM8`I3[;F] E#lA3O8@!P ĐH0l Ŷl `_gKkXL3nT c\cH X.&Li}=Ʋx1@a2"F'`ξsJ7!|COy[%Ő9~-O[BYcqpyGpo( Ύd{ yUO|4@rې B] . !bUH" -@s(c˳KtWɱQXKUA, ~D2dA[T o;:Nڝ` ~ ^bأɰ7(vuԏמM&+ZOT1omLTa>>NH]Bl;A-8M0Jw0tB(:>W30XzxA ˍGXwDAL8t6 9SQ{?ǡn\M!}g"n2/䄐cyrHx0Vf rYAOIp:k#L^_ +E㹂xAb_Fy$L#U?? Owoތpcen2e;2)SagF %P<J/)A|/P  sDD/!{A L9|7Z}܋ؤq~PF*QL`0aG}AYDѦQ-y1wDuky<=J:RVŁ/jRQqWsMpO$GAV=xN>$ٸ`no&)RHQ>w6g2mIԻT 2|JZx |!.4p;t(%N8C,즨cl:߾yp,8LEyh00oz/^Zf@sk)@`t x-gbgbS7}gaV_b#XOynw MGy7(%șRˈRbG6ؐK4[4}& MDfsɈmhp#p(HyaT|O!2O*Gӡ(f#0pZ2.K -B%ܽ5聝N2Vk=L~̹é]L\FAb/}(*Q[)u(.[PiژJW"c~|(d#[1j+Җv59g0cV!nJҿ57c*ZdKk %dm+DS({)=_=b43R=FO6"O{-r3Qh+2RA]_ 5?K7!%PL즠[KuqR3@Xs~{9zdRŊLX;!l"/D۟/TcVG chHe1&Ke ziJ zafJ@bC(TIF71Hϡb$AfD)]֑=Mp/}ml!iΪ V33K6-jE%Ő -EQL}]%,"3U#.}Hm 1L*+r%Q[ b4U9 Tru jP"rrZ-e)+ePɦ5I:&/˅D鈖CJ[,4Y!Hנg䀒/ GƆA5 A,Տ^yKb]a\w0&ڊ+iD.ebK]u9r%vptDTHG o-mԩ'k? &JaqV:g j Ie"<&ogJ o);עL{0;Cʺ~m_)!l;DK$\Qbo<6=f 3?G`0CVyގ͈R&y"ՏrhitE#˿uTEpmjSjw6ȡyRX7 9ҫGwŔN0 S\pKY#UL׃)Dzj]| s< .tq]gWb pܚP,MQ偛dXc>XcjL^~&|b^wgYuyvxIGo~)kBR*ѿ ѿo'AJ#W?;rBꃨs+K.*Οϒ'ĕϫgnj ߐ/\Q&EgAE Q҂rUUhU)F!r!2D̟ܲC}g3|l8-*=8Xa v҈>mX֫ЊA6  *QitnРǪ+Ƀ!-Nl"m}}'&fGCհ0 5Rj=TNXPSg`#Wʽ*m Q !(z5j n, fll>gA!btԗI)i,؎oS%q:A9S_B,[Y T# =MR{Z2ClGtOmTvךN\]3F'‰h'jмKS Ws'2`n3KVga ~.xFet1C1~HW0;pBmI>2ȮX%5bFt01-وUQP/ !*a !$L(\d7'>c Ҿ@(=Z;W>s(Mn99!Zw]u~l[?t{.C^Kgoz'q%H]WDL33\dNN;16@3db\e"m?hطֺO KJF J߬d"LUiSٓJ,h k<'ék7|?N>z/O{#GG81?n]\(FF36ElҿLmÚ]~:O[4fdl(̣tR&2hA@gzu=tvmu|G':OCJ`H6 I/UƳ5Sg-Vp%5躗Ya}$*5mm9Pi*4(!if7m7sjAe"Ke*/O% cHq}.s'SVՎGl.Ԩ CoqYBB?b8(*XJx]\Şd C^*QQ",C&Q ؓa% 1K .g- Mr&S/IFF3A]n ,9 ПD~g&/%r/uȱdIT,cw`2A([GZ8k7 Y@a&rvv )g SÌѰ9WΒQ:{fp=tLa5OQү)mwYrAv1 Q ɐ99ӊ^R딼G]dl@LXD1QC3y&ņlA-:2d7pWC+Qc֪vmʮ[uV*] WY*_D'JrLKJ2m`:G?:3_n7덗q^ǥn]wG-{n:y6^Ynci9p\G:>}sb1^sl q󇮷fϒE0TJqãjxmt(𣻮O;q}'l;Ѡ}0y޿YoD2x^=ƃ/./.ۭ.χ9:?{>nuۇ' >vњ:aIZ$׼sϊ_\t/C0o\BZem 8d\ m@h ]-_Ѝ/,kD3#lNd(i EA߻/Ȥ3%x1 ug0e梄^xS&L=s2vt#$tRnCsm߷ƴ jӝvc{xv>`lt[y}&}C~l%JC #VcK xz߭`\bBq>iw6Saǭ<)PB.>]^wZx[hwFs:|s؁G8)Of>8iC//pg[qstrma\>^sz("-؉'2:ƒO[G'cY%t38sRcn̄gat>T8~\c# } V@2<:-V?2~x휷d`᧓.N 7gQSͻD!D31"up:}ϩ5xh_;8.8'ŀL 1¢u 8=&]׼ʵ}'M6Hr`AGീw0ZtI'sxhiF@9n6l @CfWiŒ{Ujtc w 0#Ðk4wQ. 7d{GGt<|āK݁:@#6I$6%/iGNF!UsgYon7dU|Ҩק Tϡ[S=$~Yw (3/-/?zSěKì]?ܣ'sݾ>iǗw^yϴGx?)#N"Q \nz bNj]EjW j>mgQ9jex]X{y0+ii64Cc;ciܗ93maqw~?~/FYwTU;b/3pwb|=elӠ}#kͬ(yhJ(s "bUYjT[B@0*7srPW5 ޔ5l2eYgr> nC̯*ힱCN"|BTוH UhZM |E+lfG["2JPt6WUĩYKr$*7 ) Y5)@4(_BT C̦D A+rH*V ;<(Wrޣ0Uf)U\UY@Vzyx=OV:5S z~f4hR-BSƙM)CW$T)ؔt9kM(dk+,|ˍ5V }l5Ǿ+}gZnaAiimrIlxX17kĠo-iF}gԂ[wFigoooMGK-T[}>Z;DwYu;=||KWn kH|u3Bp)q eSkk*hd wlJ% utY1qj]Gνqk?M|zū00=] Ôxx=}L0auo0?Dվ!%pRrk^l0zs'VRޛ`ldF+A3S л4vn'oD1fb=qGNv_6x#g|g'|x:jc Loi= }g{lM!KK_&7U0:kgXiYK]os;FcU`ڵ5({  G`T걠zB,mkCӨ2_No%㯨Wdlk$s~,jg٦ ?v|7zr o@m,7#ZּYX+% 8jx55A+aD0LDT%_Q4TR*eujUʘN!d(dz{Yk9!t[,dTXE p"`g`-h}f;^`/Z0\RUb#,^4D%SէN~_> 2Ω=#֟U(4vThKU:SU .EqKPe䨸L4ɣ/Vik4ӊF}6L$^m,^(-2A95JݱI/Zps = XeeT aĕryyǓ_tL>3&([q΢#!4 -&eSHϢޣIԽa.L ?ە , ʬ{joVP&2!P^pBn^H$ 5j;+{'ltjsƊdq0Ny==8cw\3q3@[VHn ЮWctm 0E xpNe˗M^:Xϫ5 dBlR.lwЂ nO .E0F> v8 E.6t ُU$Jd5Ds2*M"Ւ _l+ K, }h qAm7"̕ņ`'X㲀;&zDnP%FdM48ϔe2B:Vr*mp9=&.3:IÅ9嫡a c~5o}9W4r*=TSu1~)k 簄g4>β3$r{ Mp Wuj!p mok10``Ǡ#ѾHH}cV[>n(Bbw?i iz.H1wh=}d!4gXhDi8[^˚~<]J`毥|"Vo:"b9a•&T^\fcݩWd. w/t-)ܘ1YOCJ pS"xj "T5ɱʦ7iI9)iy PY-*|>ЪyG:=^4\Z{V`өg;fHX#|zhU+~i4X")[P+DFɰFЪV!(UtUhW!ٍ"WR"GBHȔ#D=9{CW/c`frdyx{/}=}QVCkS՟pv?ǺlwuJB@|Ū%R*D`CI1O%"rF(>UY)<.mnՒIIZ7ǤR+sO0UqdgQeTxз*ַU<%d²j!/&%b;vp^*W9xbQT}]r2HR尾.yJx>|ѹo XBs\|lV[ [7\DVGsHeksaU_ִ4p+UzRZ*Y搩JS XJ%EUB2TjUN٩rjiduZ~"J#oTC`.&.Gʨ_故!;T 1ȕiɧMzS3)=r|#47A D/ M!(a2"A.<_e (!4VU}dO35GcѸ㖏-cG8T sY̭M@(jrw耘6_w0qXso4+Ƶ댘 r$`&rXKE LءN, *(Y'gqlVo,H7ISw"a<aހMU)ɻӋvLIZ_NGNcff--T䲗'n7pP[.w ,1ko=q<[׺n8=k$;JHgŁsB@yoT\_u^{I82>>HJ )ZjΑ q%OW*TvBz&}1_@k^fmY]bp-#Ғ8x[M++V&)!YY贩:!)ǦoԬaz ;Ǔ $\ q+yĈ)T&>>KN"*]fGSys;P Y:6v/K:LO 2=#MG*Y\Y\o_r9Now(a 5Ku6ߜkqKY1l5~np tcgl!5q(NCy?Vlܪ-ryuk^i3H=Βq*͜(+tF2[ `"OZC KK1{*יXE DZTKoRky!Y 2Ny2j渂=:1Et lm[Iq.(M9[C#~d{k^ƽN:wCˍoٛ5۔0t ?_ ?v!RT/.[GqWy7v`.z !|8D䅩_K-<&iڽRiCs|67 kk_M} )(3t=kf@l!eI3OXi9Ъ=lu?oj p}mޱoR:qz.L#玁0) |6LFPh7j_? F530M'b@`67iҌzCL\77Å"vt•Cy+ X ڛNb³dtCw/o\}7Ng)+##Y,('H*J1A^EU9N2-~s險Q>I4~]St׽  lWC <a0=ڋ&W1mp[>c( s~luJnGqa p`\=co:!ol\ Csퟘcٖs0F>ç-|5Cqw̱A?,>1``l#йhD)@r`Ueط.0nje?qOlQMt C'Ja .sd) H i1qj=Bd 4j$Yɓ,w՞[=&A[7@BkmvådFUz$Ldr+]VR%G`"@h_}{B[7| hێ,-`*vd@D(ϝ؝5~UvpyzߧDvup:ݭ-A#- ţ}x gL3Y'lYcWHܞYn7Xc(KL0>e>X)U<=vw8-Jf U܏qf-5H6to[/͏0S.:dQ 9E F^@vD(V7W*}}w\,}\kglԉ&Lݾ73H1@LѢtiz}=*HPR0\I5!ojʙo5CaaҒIsw:MxqF0[6)`:=h01! &f$ߠ~ZDgQC2G )Se cc@7F1?L 5'`MclNxa(RAB?DKnOܺӍ'Կ`2`<}tRֽF,ctn B>^и xJac)=U͓K#q=Gҡ{\^g{I.c졉2"@{!9a WED`52q$6| ~rO.x~.섯LtHa hR=e!' Ǘ|Qzo4 )M8\=[AøCBơ ./gCF]i]y ;,vO6eg v]XTM^Y I =KS޽RH !T5AX|0e+1}<'=0SO)ǝ%-8dtܮr ^ӖӖӖӖ?2_[/n'~j߂[怟vvv.b%w#܄_FgɈ/g CJqOS)xN`n+>Xc@_Q]lQeq'3] Pjmlolc69Xl~* fbYV-9V\,nWmdZՔ-\Ví`jB4YO"[*yՌV%:U[tډ-Əv5GB"2KTzXXS=1eK2AG%I"C"#VĮr$8DcbЙd"Qr)N-e +D( Y91nWh:2rAKEi-Eт"ԝq -sL8($^5?сWy80˶8(HY3,,Vz8455_"p VDOWoT{Fs0 JcOeS ݔ(Uǵgv"ūeO*v/\sGKP㗩Ee/(HI|6q:ͲR6%M V?^ 5f w+hN頋Ny,gCUġR i!s?u~6ջ6=rCA!o? P4yBTĴ@NJv㞥g}Q3wFeԮ+'OKLJ 0o Ǹ7ߠџ!aMK@ƦQGzOQ\dB2L qg8->ehv X."h*DcT7@5@_OT= !q8:&Q/zOtvmuRӞoS 2] ]Jo{_ gߤJ(qy-b=yޟ8=ycc>;x552krI Ttu0 ̣Nr*TtݺvJWA%xV%A8w.GGΩ뙐ʨҺ.FfG |*cՕyiJD;Fʸo>I0J>HT1-Ӈй1]Xfղ8tekf,'iQVWpy 56~KI9XEVUI8+{l)O ^87?-]thj&iP3K_D9i"Q>(05W$-aMjԗJz. eJ@y:v'Xg t~_},D*T=oڒJuQX5hR^@ fY`ؕ -Z+\֜,>N,} Ǿd,Hmd䶧YM=O[Ce#k`}V{ZSoN+{hB[rk)Squԩv?viݦ_YWq,|l._TUfDT eR k"':N{ B!3nTRjcӸm&IdD-aRFVWXTV̤/Ŗ/͈NוV:滤:hgctfmyr>k4KʩGW3wYPJqWrkS)rT詪ڨ/_Wӱ*,)F&꺜1 ;qwY8h6<]Ӏ``t!n*$kYr*Xr2m̢BVVg]VW>FVe6g\mJ^]REZ.c9)T̪ _~v" dqGvsYmz&EE*E,5HMpsuE%/up~\ |c-Y t-2Z:6$.bQKIz%g~II\I*+K$?5iK]$qKBh5{/`ɟ%=9 l^aܮkmqP)>yd(KH8&UÇ^8B[ p(ٿ`<..g]kt+Goܾ}NTe9FS++\;ъ[1rĺDXE 7L:01}oAbtZRA&+f>Qn B&(sҞtqv dx.׮3RkZ׽=zz5Sr:z *:h|Gd9-:"Dv*9*R,Y{ (O~1)OLwRUkN/>t Yh?N=?shtO;GϭKlƷA l߁w흴;^Aч`tr Pu|liهc !xaA's"@{ P`ϽVq[ŋonWzbg\.p۾O?󽍣ύiľr1ł!ţ3uE=z5B h,\y8Â>}k .Sg'|>5Z"݁nxo^F;{}:vrPM"~|- GaG L<-c_=ɣ ZC4jM.p}>4///q=b|g>iv[FŊ98}c*w f~1j#XZaM7࣬y5<G[l <fv1w[ $r 6Ѧc96B||pGYTDt@S>i]ROnB  7}-1r⪐Xԇew|M-*T5M.s zQsށl4Ts 7+=8,B!dFsSf?v/?~권k|Mų;ZC@ |ހ.mdCX6lj1{ 0t@_Wg@zD3i79'A0q9gݙpFWHcvLl6l&7|UW4l _4UJnz/aCm0ArЯS 6)-ìIAhF sB-Ssw#=C-S:gP톡韊$۟<̟T0O*3…?:POV*3/S."1obQLs)ڢ w}_oX^ߵY@੐! #m_M%Ak菿6#`l4Գ;۳děXx:B 7 g YR퍂6͂ j_׫:zU)~]k[{ ߞ跏-E}|/!.ly Z= <x_5CJjw52@|[bD^njD+&`aM-RGd\P6~r`?Lhm)mvy6{|> g/}>~X~N:RG`p~ Dҷyy'*}2pyD]ҰoBm2 r]w9]q{Clw9]u|C0rwI*Q$11S /ڔTP4/i^ 1Mn5U`s3j5đWlW 镉I 6~䗴˜-fl9T ?9w4o-];" θ砗@?̟L&4_1ܘF"AG^Gk >mu_^|[t.Ծ1|*Hs9q44J 3v(a }btBۿk ej+D<#Q Ţ=u=SzP֣L뱫뱛cO^V$hc/m:Ӱ׍:i=<<[WO2Ɉ/ɚ4>qΟWa/GvDǫL~!{HZO{aW!aCӉaqXewqx:ώ۝Yg}Ӆ' nBMj:kQo>ቁ~4tB6N`# En~n&iku uݭ]m*coWN  :]H.@ R6QۆBrO#߾!"Tν1Fqos;f 2Q=M$Fq~wE`JBBa;Q ukԇ!5U#M@A>4]uA>>x:Wך7a]Y25S*|ʔ7C[Of()S eR!ƧL3$jp2$9u O\[k|JXӍmE> }&Zc_Rzh DZoպC^Cz籗>Oj?>~q@oziLZ\kSIqCHr!>=Fxx%qzQ+ڏ yx3mAip\t@Yyv^9hv>kz x@J&GH&]gkP"3|[%qSm3".8uO~xFka8}4? 04v3 + DKbL㿗1{2 ^>e,8040e W _h~2k M,D‡MD2D5-RTՓ[F zF*k2LVt *LSpHN颟^\ e?m=SG 1R)]2v"cRu\Sni:imqOph6/%ڑ]ϾQυ޷.[=>>)mG362MS#-x.lfG6Vʦux74}<ðwί}{UU4mrt~vL E%b<9?o`!~-c3jtbtDG6C?bT`}PG.P|]e ,b8TPIb KR`fiEf_IyE^"5+2'_{'vthP-@WMhKTU7YlXE7hSpnyQt|Uj˫OYՄ uR BA[%Puu2}:)J()‘|a,[E+#= "k6)\jx{(rHϢYF"k:*\igQL#]e˵* oE[7 "Wl-Y+ ,\QQlY\kȦhI;ÛE+,\QZlY<+rYr2+Œ,\et$zѕe8p[:nDa~->O; 8 (v:}79( `څJ +0Z4OK9;F`6+k0 ɟfN:-⩣\sIG`@c%:ik _GD5kjMZ1٫\p^y8[XR7ӈ/Kx0ӈ{%FlCC̈YFlLCLCLCL(#>͙ħYF|3O4gfi$>2;4ˈL[F|vgݨ!b%=З%P1*IUotE-;ӵ́7ssQ~4KbS~Feƨ0%8Q6D3L F8G~&S6]W,S9f2BZP*ǔ ďY[g/5R>*,7#16gF{l@c  Mvƛ{#_#a8^K{[9cw:t{FEco3¾o=wπpqYo4'iR aG'Sqt#DKvigdppsn2!p z86eI׎6 Q.`R$=ɀ)<aKܜ4M*Lx-5v5إ g5lg>;iGKx!ۄ`lA%H"96͘\M}KÁԄxp ^;@01F`e(gWc MGq!5oP;b¦@Vo\MDjGƾj=ua,~8"saM3t1ʓ}b #kwL.j> ЛX} >褵sFt{)dLi{I]Řf{hx nQ>;@ ~a^ɡ2#cBZ{bjXGpg~]tt0]:#cOS+N{MR&z.jQ|=} .O6~n}iy4 pZm7LA" Q_Qlڶõ=C1h"Cf|g{wAgڿI"@xPj ʜ3\ 0ϸIpDzH߭lj.bXl@ɄLnTv 3vB;w\x7|r| ]E|{`cѕp/ӱGfo[ĮY5!x͜TDqaÃ\)r$`HqSqLpN26AnR{.M i&C!e|tq<`xE>q,qmjl9P~AD×J`My4W8"l<`C=ӕFA2Bs;ǿ3;`zscoߐr-,=2؇Pftd'6ZVhvHKQ+B1G<-v7bN{v1 2$C0p,lebmb2 .tƄ?,qHQ' lt%c>am #nW{ UC`'uDW}e4vV'?96{ s>Q5=k46g> `sâw4nZ^n#cP0W~eMBB)u q#[ mn|-:[c!A~$r3omx+/[j {A?*nyf2Ar^Ph,8#Y%6a&맦_{)'T4u7n1*aܟiw[=αHB$y\`<>9!;T?8[AUcR_.0F^' Ox +~Bm{<3!d$ ܀uI-mJ(zC۾= 6mP=f%=̙N (ob8?0`co6Dih%%%UQxF(V0:~2QK0<= g.F,8IB[@0D^s"1u C k:?<F<%=Y}8%PgWA"jFH)jCJc8S[ᯏǽe`c|#9!P steL̺rpm\Ҕ:hPR(AU|>\8mLXQ["(7,/A"|]g0\$泍 ǸWeJ[s|ĝU.Au9)0\߳(ш Df:u%yXۅ,~߱:nw]ԇU-b4'U,aL& ;b_F9zhA8F D@s&ЦfK.}O|;as MRrk8MR~)67@qkf0V2) p?)#d)UVAs=ԅUeMcדiN#Uc)1UEK~\baB!- B` )(o ց~aG+C\wd؞,0ZC25?K 䆥l˜'" 5-nNB8Bs%m0-1LUFid8ύ08/\Ed:pw'i$Y50qe <Ab,`E(Dp )y%[C r:ȴb 󢍨7:REƼh1jt9/P3#)wK4DV9B\(,2y[c(.D B<~,Cq\ź"k5=4\.(&̴J]U8S4[[QƷ)=G.JUE}y0p j!Y;JM7!UrзW2q>JĈux~6_Id7oGϫxډtN'q9Ѯ#g}tO>ZJ$nS| IO؟M(uPž˻g}F*Rd_(jsJ zx+$W_{fP*;Sk=[YX\ zOt9.WJ`Ӡphe,q>cH{DI7J`ܱ'3σhSY5Aw&S>7dSka#4#ynwr;,~&1h,H`9 } Hc`sZQPbQm]ӆl6vgJ3LV}z'w_-/Gٽ:¶gWUCwrv)Gc ?P@^=.4 [^c@iػ8>=NO=|::x yR[ Lolz=? d{s8 .82~6hӣs" (qGp8PoJpvA`1L>T\t)G_>!Gg]<ǃU9= 趠V] ~܅#Gc6(OG$N{}P/ ^!h:E+Bꟑ&~I|J sė#hZI1:?4u4DL 9mr4|~B9G_+y[QebPC>E7y "!+Btxhaޓ\@5JفVTeRY߆C=bjMrʺCױ6pzLGl}~N%Ḥj`w3Gϕw=HM0,xyce3όh^j)pDmadz ̟lrWWĥ`S2auMbG4ix\6),,zfgߥ^JJ* v#!Jƻ t S4rͻ҃儮[~!rdwz',b7#7\G{T܅G-#%UC{\^UYN#V˨/xc;f,z{|(y냑Ki8:>?۵GVZ (IF~ƕ4g#f~iO^*?tZ?~PfVZλK#,UGX/፶׊>ºľgxv;{IVG4p\|>3 88V2"9rtk4>9U>%("~{~ƣ.(^w- ;J N>"RH5W䚧gn D>|<6;b/}'Ќ0e6rjuz1kY :⨀Hwmz}7yQrh3 '1'lh ^Q&ϨȼzgY?Wev)D|bZ/uTEn.o`ONW,˂TP{/~4ߕ}BJ9[% '@P8>vR,UrGGzbj:V%vPEN 1^Zn+C) >ܝM&NF<̔"`~0+حn-8oJ2靮5~ J2oVϑVFKgIΛmq5^S|gv*mnOLq9l}ҎlHDPHD5HP" Թ K!QbV)OW2 _(|?C @YW@6ݾt%ivph>)ԨǮr-|9zswcsI07ކOAga,^zG~/ F\ğ+(W/#U-2K[d90-FY[(<{=&#$Kx"ϭ /uй 0J o Fd<|M@-!31uШĠFEdőو=-K( !|p'~opCWJV"ُڦŻ*[a5}#%-O& ,",sc,jAlUI%cجEdzJ;,'6Bb6½s/,*$"tIH7>R+&;x9I/lOx (q7a8|JR㎙bT3𜜉"Y|]="jւ^5%=+ o7݂&~j!9$#C?f?^l%yFoy].޽>-v߶@ KV Т4T|O3nsП+fhJ| ߿W^^b#_Ϟɳ}cBl`X fq\(>'`+DP1o>G?2=b"m^W]6L#'v֑>x07˪~RppC J9ړrH9(zyߑ"&m|dF%IoY.)Ъr㑔wf%JR{sr ѐ'+__4 L x9=TB^`xtc;>%iK6`5wݨ9U`;PTIIC&;xs?m~ߞ|_+?7k?̏?` N>i6ivb!ehd9_bwsPj|rfb^3;3>gWGs7}Y7:aڻE$+笔.$ivwmho kjM)+H "{ޙt,H|R'"{c`ĿaύO|>W_)69F<*ǀfGC;c^%Br(Q:XiS8$ a.p_JF.-w}Z&\{*(#іH.rCz }1(w89Uzb)i%48]iXhe 4=a! G2 BOH[.#*y fC`UrȴI3yϦbnXh&nt'-֔_% ,ADR">#./FσR[c`?{8B1 ET QIL= /NQ9"T`AǙx|%[,1a@8B' 984!-v!XO}#CP<.j.#Yb2`^gAsj{ƻ$y'}Nx&cCjqّh<\F&7x. jt{R ieF $Y"1(S"B*O<فlzcgh@=ǧF;ֿ-5ss'D %>v(0 %y`j`2Š,]'߁>*ǁM1oo'=y<Ux|DLW nS.c+ۃ KndQ&mR=007sO qh ̒) vك쌤ڒM"ŬCH+"#fWkap}_{^[ 7foOi>};c;z{v@ʼS{O[S>LmٌW}`tH 3S&VL;w5L*̕bԼնB["(;%LJ!? `OVr c7lVF29sGX6F:#b.2=%K._;L3qBP'$[az Z3c:+P)liM ̎nr>LB\_* zRZk0%p:n8@zਙ4'O(@=x9{($:duu)SO0xϚ4{LCN¢\m>̢y9q8NҞL)̤ӥ8wn}$L7@c'' }8÷[WW"3Q>&tE6Z:Hz|Kݺ~4+ cHoAA(wͥi /~SdG-׭(8CDο)g!yѳ';uR*5;UZNe:mJ|[#Se f3 y`?|,9(-ʞ۸/ym)~k2$;hɝ* _ՒcΒc][x1݂4~_fAi%JGFy˹CaxvH/VqȱUf V_4~%@O\:' cX:;WS7qHwђ2 Ēxbܧb6~+ѻ\N^M4 gmI60B1t$qVGO.(㻠wH]:b?_̂~ȍn ormdjQ\Wɂ-)OWE;Pqr/@ ILHq@_c`eP4u Ș$lO#o㼇{kj^*yS,S[DV)%YDVHX\,zZV)bB.Tm]r(du R6}SUQ5 ١Z$(#Zx+`; 2̠Io KX1z<*Jf٢$ə%^Lnql; #i+2?cT(bؤbJ˘l]-Cňf\ %~LP,ns' ʦrDz$~7C2u6Jr<ȷטe^swR b~.U1۷ LyJ$}D4j1Apjdfq⾱d02lrӑ}Zz*FMޮ3s=>v8C#-q/z"3{ChEI}y"L !-=5wñ+9v#Z[`l&ƭHky}tе,9yoNH}0\g'AlM# ~Dk7e_ s:hQ4,Nq }][u%з-+0Macu׎xĵ"$O, Oªb{`n9֘,dμŜUY69`cvlE3X8*,o T.Kjk,N(*K YUY|&}k4o<3i &ix&gҲLofڿ`MIzɤ7AjK&uYU[Ut1*zXn|rg.PeӼlZӄKrٴl0Ⱪ"A7_:>"AZ6_z2@o2XR㜀t_;q?ЗBjՆ>b+1΃yߤyXJzInQJLƹ)XJ ƹT8+kc]vج|39i{/cGH7̜4.ma$r^76HGNJhL:{FA UK"#kX28i5,ߴ݅nzPm5SZ'd6v$ec>M`B(^Z# ǰDV2Ao(R! {1JnX8xq.T?5/b+$cBɩ<8~įgo )z\FV@nG.\OA%%y,!ۺ2ϢY m=^ee*+d͡aIkY9O8LKb5ϙy7>G*a᱄94LK(/ ~Kg8W3ɵ3aѻ+sHڝٙf4O\nd2&ѳ'GξR|9:>?diUPj.5d{~Oʻ<8,`W19Fib{wLNK&'C$ uE0ۂeauê놵W|Y= B͞ixN\ǟ۩N+I(ʿ+x`HMأNtx  Tr:t< Q<ҬesD',C~\$K' xiEEJT@ ]An'G39bkOP,6lA!O!YiIaQAfXr2Yd@SȀ"2!1> (cΗ,'2Am6jԿlRz NfLȹCEo鿽÷S9*i8C7CcկϬHyN9t[S([>?o4{ db5)W'']a-m onV7[ r0a=W.yw+klw[???J=ޞ4sX7]>?6̻zpt#o.Bzjw~#W/!>#x!]j d-1 c8pazp|~1vGȠ haѲA⟔,WJ*]J5/KdBo[&.0=f Vx~ D7q9ʮ2;ƋkUАywIyDs81<kjGvpFa/4G=:,^RZB&y`xg԰EL}M6r?)z_̮_*&H}gǹL_nM/ýv˼|]ϗ^+HZ!-$uTRBL i^7/rW({HVExM2!AbSl˼e%R}JT9Y"Me y])wT]*4+VixT\UGmXkyx? խ -͕S?VvqV,3_}8='_>~}<mќ_6 Y?i8cBLGwTCU*;2>/];(K*F1jfW l9?۝`/g.\ZHFőL1K|)K|_`Q|MkhmF#2Z+Z݌fV72hgmF;53\hs\/컝<PH}a& _oC^_/ Kfez4>kto(tHa(?)~M[ QXbi6*`,sFjOmA2/:ks֩Κu썻6pk-. k@iAe+o ja#C,KpVb*Ͼ|=:]i)T*;*)x=J+~$I3R;iDHcF2' KgmPJ0ɀc¾+~׹=S47W$b!.ԖJ.gڵiKiK/ӤrڬffN%r>pB9 yvALYT-KbV :);̺.??ƴKc7ݺݭzsO{]C$?y;NuU-}TͩCANm{5u:G6m*cZ"YrqJ>'adeOBк|_7:m<.umSڠXumm979aMC % -钾YСL̤Kr8[YFJ'z (ŠDyQ+)J( v t'N/Ppll@'/P`ll@'/Ȇ]sⰳ{RZA\K7,af9L( Tr\,uJ:6ɡRх^׸A5,A3k~fLgbELj\G -CoN^bWJʣԥ ՃyLm> ؀-j`~~6z6p$?I-́  {/>i-Gp~9gP<:~M -K" [U,%1ͅ㐓[*f*z!}U^eH C/?/X4]ΛݻЦźr-#=-ov x`Jc-S(R5wBmm=apny7مB$~&5P4t 5 x:Cl@?:xE@ tڝ 9(3ϖ!MkTZ1-&J/!>,PX:w~Fc 5erbrh9ם?1#oN(&;7l 5Z p5F. 'MEZ^/q5Rs +vB-HMݳ1Z׎L2Yc]9"HrLpc-e9<$WO_D1'ԋE2/?pf2s x He/<hR9?ܧyE@b@.vEW5Z`B娥LQN޴[u;~Y-l/BE%.n@e2Һq5ml%fSeL%i/뜼ZEyI4Ga>E0t>kc'Ga]:]̧8|i- Њ52Z8|#ktZmx*_蘁r(;䮢g똞MLooz`|^wx{=k/Xic[\tVE(B ×/޼zḱ VfK fڦ%]k):޼T_o^y@ yhW߼z/^y\4(}V0En)J670p oNhoQb[Akᯗ_υTiczP+W{އA3^=~L 0]_: -D)XY٣ϳp9"e_d[=*՛=.\T'F \#x] FP8JGy5*AezHE1hG97"k*ƻkoMU57PCڥp{ygl4_ʂM4^Է18:SZKIQrŷNp}U 1B ј9Is%8Rie[rř#R_:Jkm|P;N =peX>H-{イ/;/WqM0KiZ=Sg0$UE*᧚UVrJX:'Q%PR4J[|C*(A+U(VIjKIdQ-[$f-F}sv|809bOO^gx=|uFj*?9ʃM AJ$K 5MQj%Ku_btFlB@YUIOz%g`>BR"9ؑ3vciiE/9l3З<1C[SUvV!9&WDD%;U<;ZbE.+Y&}HJˉbD3ٱ욕Q %VΝsyZKvH4TBZʕ8IǓO_BewF4f爇p 7,?9ޝ;$Py,WYK9tI@mVyiZO4BO6y"i 6JF(cF +Z9yo'Z^hCW^]gܑf-,cJ_FSh>}@`C^%5OuocTu1W-."]cik \ݫR`-Eks˔!sH|ȟ#ӫmCS[x}78.__ΗI]1xJ))-}KGFY)l^\Рea(rXQ:s&Dev |Ҳv1;ջt7 ZB?1?GO!kbQHԈ4*N$BSK#T\| 2vN[#Hڽ {]r'TP8}bUdȴSh2{6kb͖ٯ,xƇft{AI~W|T9ͩrӋh687@G֯da+XY w-uGϘx6qu[/;wo9^ӯ/iH> {)ʎo N7 4qo JnՆZo=f-p,P((.vCNqYKE5oL<-d [yՓ^nH,9쒈dXFfgfM_rh?~m8Yr!>}7{P!M*Qq!SӠe_IeE?8v..tƵPLvʼn[>/g֮#o52Wc]4{P34a 9L\|zur~ŠOQCOD0x9rR1>N9LP uvPWu/4rrȘPrtptД3"`w1FL 5iPC{Gtqk:6B+mxi^ꌧ ''o5%gNE$p52\ Vx "0| P떫 ৓?]:8 $!nk5궃\sXP0]0bXm&map,=YI#+O4x4\ƵqM7Rn wFq-(v׀yvpyԠ&>}1o =quktG`H6LA2/ z Z(LQ;HH ##&#<@?!u5&oq x|\!31S-PD&G;ۘ\͛}>W?>\D/4RA][]3_t?d"RGxh(ݝSc[nz!1;{F@+jwQ 3[ӄg+Xt/R;4E\ 5DGJh03cy{ K'e#}"c /H1(hÚa&O#ƚr`{~IT XCݽu Jy0:2ҦFM(U/\Q p4O-G6\[<)clfl8#sȼ3K>-haeG+To(Vnl Kl-2+(L >3ˣG+ /9%|.闟Aÿrxhy}9tww/}8d/zGz_|M&?*=X+}8@^=.4B x\)v/Pz_/GG}6wq|zԃz{;6 tt#"fB}csg E&럠~cIQNz}4ѹψfu?8ƣ8p7%8_Ǡy?&R*.uǣ/GS~ ˋ3}quzerzvAwumA# s @ 9GlPIw?>u)}y =B*gIhߥm, BC8څVaLO m.+}}%Q56Ԡ8sA*1"@?{ Wxr>i}9Pvώ/ 0}/ZG 0.$V)b*$:B<V]<fRvUٽ~yķ!PυXZ2MG9 =.]r`RKqI}~>t>tD8[Xh,07&׏ݰt3` ؂[[hq\)*2rA617i4pTѭbڃP5^ za2L6xdsN碭\8\" {K[P#UTUyEk`i.nPεpBsK"oUN3k6+sGB9Vt-p/4JϏH(iL\U"6D" kZzO^Y@p^/ pX=aMwSpa+"Nxi(!<*` Xe#s9E[22%:.F%g߾RڣV$0}WHTH]!N6.hrR׋zff9qQ9pe99RbМZT 6Fߌ+X#X:}5M16ߺE.qHЦ>8U>`#o9wd:3e?x^Jt{ \>%~,%]U$ y a\_ԐSER96U6uK' 8-*|]˜cJUQs5 la\i LM*ڬQݘa'4^eqzhWbX޶n70 cĒRЉ@ Kg+.X ^{cAV"Oˈ0[k{btݯ&Z(i?|m)A҃䨅 _g?.[)LvI)> X<@z$m )TgJp)nS(wnLMWvwaMU 5[[YU[$LͧU(8H4׵ XmvwWFpCmI7%Qx$&՜m$_?zL~k\^"=VąI!!!H0UA mw 4bmXʸKZ1_y~1)++qBc;w4Bb9ㄶ$W-\,BwdjJCMօ(gyKE 뽷ҧ[߽,Ac<ȣ-[}wo"V/:[ DYea 0ý̕Nt~P 5АV$)6ohfVz bӝ_\ Rأaq # ovIGJWzIWGo˹  oP4q A+d??~7a1aB7>nz(#n/k:nqN6IVmBVۖ;$zTGIOG(.ЎQ:RQYG(&żrcƅwWD~%j0@ݢFl67MjNAsFWXL|c[3u` ]}mxs+q| w>= (-,In?ѓ1=ND% ꫗;՟#"cwդ;q]V> 6i[+'}(e|Z$aXzbU |JrJ@z7:#cEz "hgS^j=ͪD;9^hG c䳒{t|/A6lJ 'Yd&GK̦$xVjޓL=$J r3/[qb\ iOJiJeduq UwD ,s\[gR}b3s6aw~$XXH ЦP#s gOYp/TOzJa $OHFud|NnT؈v_(npԔ9 (B{ٹq!ꦹMAxVEJjRBJɘ-0K`%1PuI'eL*pXd9K_}D^vEQ |A)\9XHyhi.+B߷ZĚJ96+w"ZI$0oYI5}&^ፃ0֕(\+f+=kq`VY$¶ɌihtIk=讖H[:l*^ ꏶ5I 4ƶZ?Z ʴFJ]Vժ7uAfPgDD\/{gi`4{X2f*0n8SJ<[jCpg:U:F.LkSpW.|3c\6w !sdv5s2qzGa"X8ے,-xSўkSIxZd2+7l>M'Ό 3&` E71aF\rxqzea s*\VUk>ohwHsN.Y xPP<;&Zp--C<Š`eX9f?ydAp*351P3)\ D pFbYgaj;8$P`dCV] ) !E0Z(F_eq\͗\ 6Uu)5BN`Ǩ53C'{[cy q`9 )KPU AUa3͡4Nt6vD_V$pzq-a&Gx«0J&dyӧtA@KdT;3${a.n;>UQ!`toޑNŜ,6o'Uo'OQ AIzR~8-%q_]Fhm>”423:,t{Sd4}tYqU(JU%B,04'8ȥK>G:ZCT!EM[%EH|b乢I=.!%-.+ڞfsOuŹL&'4KժS6bPpKN3g_.\ n~[bO[bhq`yl̍xo)ٛʤ1Bp$x]+KKjq{޵hqy1d;؊^~ XhpVǛ=Ebf饗ɥI:eY,YQw^%W>RIaiCiA,"LAՃiI p0MH) y%9b)Foy<sհO"^=!k u(S +hN9dGFYBHx%1>21c ;}9/ˎ3KHWҝCsx?bU0! FIr<(q\ >o>"#B5O- u`(DC*1Z/ve9+_ Ώ?r HzTn4{ya|ӱ!#x/ Jϡ?'YhYS|ن64{Ħ!.'щ][hȅ뷘3"П2MpElJ##&{(أS͢Kѿ1n(1 2 Ġ䬆Nc,\M2ձ@Q޸1BR tgm$)  Z\l;wGBZ*:mٶ,pyI\:/+spehSv $H+A A |)ōNԷ"P2AEaLc`R'_9{5O.F`pڈ.g}8#,kFY,!#wK(X4/$:ɾ!6O+a PM`|G{i/ ա)\ oъ,)Vg= ]hz@HV7PF sGX+y [C)$U -3Q%?gd#&3'*PJ.[v^>o6FA&[#:;L"w}CIH'$ڭCM< s^E8KD7ˡ)MHϢ_VE}Si F4ϦyD3 l+W"pc7 i0웕L{> Ԏ:;7,P'ާ@/mg{y.^"5_{<YBԨhAK^"i¿feYqyYȹ{;ή=R3ra)ڬ}wo頮XxgGN ƩVlGJ%[C~=/ο λE,tVxhUX9yE:5A?UpL0 H:ϛҀ>Z9 VA:+A+UNPVm.jREb 3F[za s嫍d,xp {w e2jt( `~]wɐFob`[Au\qw)HU44 [U/2Mte%cpJG4U7lD@9aas}q>5nn (Yxp\ix'eA.J%:]74L SyJ%pmC\Lwڝ^|Alr8G,W+g7S(ݲ\ܸAsp@mϼk=zBٞկs`E^4YQBgWjZ"caH\q|.Z7_[h.Ұw9ě+4z}N[#;D1#KYz i)[ urn֋Ox`Fz:ےws[|Q.b3 eh#2,ؓw*B_[UƊhr&5«n%D.,vp}_=Ǜ>%11>6KQH[mW1,6(A?P ~lw\+\W,,h ! 9+(ee[k!c(5'h\9Qbx,Rl\+;U&P9BpEEK߫/"}!і77ZrD)Kƃ; a4̂V{iycRS[ubj f f2 1Py7lVŲOKբ;3]dO;y'(,;߼ސ[w!ϱBӒ:8lYR]L;?CfQ~φ=ۘ]y1/MtIbZ[EyyĹwI>mL\%)͊Pm+_.咭7k$l4MSf֗մ$ߖh_rqJ,J[Cj5P1R涡BܴԴsj([Y a@Yt̡b.grXfcEU}F$q^=zLpbT7`Ǟv33驨01#@:朑cU915b^)'}e[҇/ 5 Gn^m!>tO2L_W"'{?b * %$6#.W)(ҾG!2")4$W~4G^RPQTp76JI)9XޙubQ e|o6m]!,xΚ񞈢EIDfc$yLJh>DLsHck777Q"-nP +[#xt25aVek.͆JfRѓrpf!J/F96TNӂM0fɌ=voooX&Dfg=:6άosZPY2W 9ckT5QOQ1c@lTgXBiq7෕ddt oX`PFdZm%bGtlVz=#]aIm:ȦlGXl%t`UQD{V5V+aMGtKo՘=%';q@#4j@uc-mM\Yzs.u\ę B\Cۃ'v /Frik:9pku{@Vm wumnXr3q7 ͞jIܕ!6@N#() qL졁ci1?*ڭ1L7 v~ '4m_1a(RNқ(A0:?-rNI1`s::RT&)(@EEOi2F5%L=!V(=>uY)a k X@=(> + ?Id?JS- e9x!7Uu*A L0Sr.w>ϲNo,Oۢ~U3r5= Z]^"ru'Xy'W#jAe^5ub`}X\Pv*mEDR#DunR>tCͶk 7^b= FoVHfX5@}ff%(9n܀[76"; Jߡٖ9dAQ5OŗGO v odJ섐L -@k Ө,NjtClwD1o9F91,pK]$ER3⦊JCz-p v'\U `~T'C2ri($afqb1'/p˺Zc|;_dtX h/n{p9,3,ڵdA1HFt2scZ˶kQ1.zY&yZ>l(:50Qܸ4qGf"f;/i£6@D5@_mfߕ>f029]J p^GmD5M~\X0~J&v)Hj"JXm >-ٳ-u{0j?Xb6ZT 0d)Aٮ,D^p|EF#ctԆiwʛ- řLϕ6zj_?-J'=GNފMܻd0vs'2Wsi`!oo*K#LJ#>Ba[c7N=eBlQ Vc$(d9%8.F6-Cd-zS_Co^QK̤>L$kcQB$`$ph#)YceG`,i7G10[ ]͌4Ĭ+gK &0P'!7w`F,w 9a*7҈V. jw$bO̴!212fa"km0J1)3!5jlEVs݆^G D5WKDtx3] 9KrIsQb\"UF".%[*g)!Y:4 K,QFiGjjQ֞q6;YI$"KPjNIl8, L"{*Sne0="Xu+rC%>a$JhuHɞ * 9R *JyHbTTSb L\ɰI`'m"٥P~IÑIkUKJN˵i4)ؖi#-nKV[K=Ûf@̆LP*aZoc6n2ȏl98F}  O"v8"{㱍S(!F A2f}GšBG6iww17FˎHW*]j㛅yKECoaAUx,ؘr $*;NXq$bYPO`Z;2J~x"' "`#Up `Z.䀗]Dj?Gr2܀Р/AB)O_Ϻ#*^\īFļ{ĄDѦIIoJ`O+{tL1M3|SvɉiԽ[reYT -`5cB g6IVXNع,VHW&PX'r&f٤ 輸q%[#W)S9[|}ƍ%(@fH3OŎ'O&m0qvE9PƑ>N9tr^җ'gݠn:zb#4tZM݆Iم*aV#rfS\S!,8:}=xJ~0Bi6j( +X i.4ǁr Jsgpu5gx ~64uٱdI(n@F_z71%\|]YL!_E, 4FP`\o`bw)EdLlnLghK؎\JRU( CD|='[V+:H]x (, 11]Y@364SM\hoD7˕Oyd_cD E!lFkF䌔$(xi.nP`EGU"X-TxseK`lPS+taJb@J|b& 54mKpsa DMd)C`zڍj4 wqc&.ft5)Ik(A VAvl-}z4xԺ }G1 TEet~zBjW7VⅴHnbhɿ@rajgjYȿ+!چz[HrQnjFQ[9ʠ 3Vnw@Ww>#vB١# jOh|'-H'qW.CrRp޻m++X=R#+6id?#>۱s,{uuuZ,VRL ~jl a03 >"ov8jϞtKuG.yPQe<^?[yd8vLl6ۻ)w{ø zOJB10 ɆA `y/륨C%*,WE ;r('tm Q<.#0#a944F8%5h5U~yhB<ղRm] : | ЛhXd`~1OqdR&Bu -n;(4 |/ Æ k܄0EeMQ`HE'0cP12"Bhpģ2m~w/./7BHZC{,2|"=͜2dMB"iA}?gyݽ>}]O_]mߠYloRlY;m`}oַG_=z t].ߥ_ ]_xڠ^_¦xJ_M25;_P|8AS<|B9N|fSp/v6朼kEϩ>+y]2PLԫU&7i#^7ǚM@ lv7@(ƞ܎u^aYZe>J@)EY 9>;WpLG<)2csX a՚CJ"0u?~6'tx8 @fc?H3)u>#XgsgݳwNή1}MϳsX0l؛ ýo#'`'x켖c[M(f8A$. 0v1 %AZɳQ_v)GaH)H2{D!%i\x~[~B\״I17KQX?P5l-5lZ,H1`jM$4MK Lk!RgSFKfdسLv@ S?:"X2889>y<#H^b6e{3œCxgi}g/ԭo^[7GJZ[>3<ߗ yWח]McE\*۱t'tjn+6y^ M@>fiR_4+@yb|\;w+%C Ͽ]v/jM,9e(8Kh&|YGF^2-ɚh-J$fa^)ot`V)!lO^6X|cFI(mI$>˿$|wGS(㗰;⯏JGxQ_>;}c9teنǚzh(GBj]h':DHJt^H̼EeX!D J=V{n-*BHii9}BK,zĢh%/aur$6 h*a˦]"C,LJZrpgWϓJ8Xifz 9vv\ӍBa5bIe9𭸂kx.P簮R]m8GPPMh3jbZ}ݧT3-=7?e\yů*AEO[JZ%(`vx wޑaumQ- 7}눬U<±An< /ŚG+j*Z|iYy,kvanW+tAk|dE% b,&L.ժPy!kU8`PIJ@EZj -;՚nvۑZh4rjŚӭ~FNd>^#qѱM'qc<}2n"URx ʬ]V^͡~UWv-@?*Tp.o Ϥ[ҭcЩ<]:S[TDYthkFrmzAA͈bnsόrqG̷ΟUKWrQ؁+'yD*x|{HoFy΢oնS mj{L+TvZ݊Wz To"3fxsG<JgHd//_,+]Dz]G@t5^_{GUݳm\W_ٿ o6>k=ǜp>gSP pz2Ѯ$w߭00xKzi\p[#!L.S[ƣ[b[&6j?A iM a ';| O?=kag;qfQ5ώ^t..o[ח9{i_,E@燵j磞3g:fx[G,aϿG+9XXOwѨ|.*Ž ufAlNK_!cp: |!Wgm 9@r>;>Uޜ f"LJ'pPlcef͜{>ĭ8SyvR:  ΦQ^ϙ/#֢;pƳ#{?b _v[H9=z/o8],4i^o<|;/S k$BoS)2PG>ݎ k/u]ǺB=] %6~r}Bpv\_w  1ۻjw`݁q,˛k޻ssv})~C!ZogoKнziή q>ٵ#S BCߎ/l8]m"o:'gh|㐀/Wo9-$@ jb`w_O~qqvqz8%)"A[`9? Q;]4GDK'۳ ?!2(:swǿ 'o_w.Xxws~j_vp7v_cg=6 sNHؠ=Ahr~K47t`A#1Ί"/iH$Y@:$C (ƅQŘ:տ,luQjajM¶9q\*~kyKoO`GOvu*J˿G׉{ѵ`h0eRX<hs}Q9H a–yRpaHeH|Z_rG_dzD~ǚ|9MLd8yRˏ+.?/߮\[οr}l~IIr( "HeARJ, X` o^_voxĉy/nMktp'{>n{=Ye͍o~^ڀXnJWWV2GaffNzBY VU\ >2"*2ZRxuhgIAՁLiHS4cÕO9A+b|EKN9Azrm͚VMFv7g0=y"f0dE1~;ezcR^W >*f rr6*\hl5,5;bon"vW 9L)R$a>9&+jCftvLQX"i0 LIo~_oX "{Y?)ޑ3CB22#b'p$H@vx#dDE kh ;Ȁ8B:{UksSՃb eVlpnΝռ֌g\h&[.5 K(<ys#YQ7nn/"r-%2ٗp=5?#ymd#s\fz/.AJ8F='caa$M "D2FqMIe=]9 @C*WF g*AЬNYBsQ(M-':IJ˟Ĥ'I4ߋDGK*]/jp,1J%g\3Pˍ_+ n6/g'K#ϑx&&R&ZT | bBhT!(  JgI` UvPLAQӋZ* qO ND9wiUI8(r$DmSmCI}9l5]xN]:;[j t%Ԍ‹YV9F8{l:?<9"ra_"WGhN8ڀ,G~zLI#~aoES'_D/i7FGb2L#UG33WFewn壙Q<4Pvn5_\/_0EbC\}@/a3%G"فzlǑUn4RPE2xj_ؾЛ*7B\Gg<0^VDqY]E _0BA%g 5 4ףnU@ .I )&[ZI9rfNq<5P'U,;IdFkCKNBHqh´+$gЂ D=g  =W2h<0P7!$z{PV㒬*aS2RxnZU* $ثd` {T)>G'71=$R+9>pU$bOhDF] 1E=OV&ۻMַI.8:uPgFkQQ::3_#uZTgqkZ?Yaj9h:6)t~X>m/>oUEhVMGIR4+ ̭8K>=.ONWN֧N )9ZQ˦"v{ѲEMNgrGO$wO;>,5B^ Zū_QTz-zY藸5g;}{K>VE&lB?1+Q(!ΑN NY$r-g3Dhm=g)&MimLAy$7{)a (#~v9 e?X]e'RS6:6dzj^ƞ1_5rjLj<3>1@+X8PdE8ZäCs-әy.>BHBLD~-'ߨ<5ǯExRe-ң^f`EEEI4Z!2D8VУ ̇qT6&?əc E$BeU]d"u^D'J Jl4,0Շ"B#]b%Qj#|Pa}J 5즔6f'aٰӫNԀ¶Ge)8B01P}rk-HzDo? ޱj_7dFԔ:nuDXq39qP|Yx5<,'hi'ḽmd#w D2Qe [zP1}@ |>muf+m3إFphQ0MF VCdĀφhLH-: `=H/ؒe8OQ^Q+dphw [^ռA-bc#A-WCsKğá]+c6CoOk9ݭaG< >o4F,1MN{+4F6Ÿ60.5u|zKa,R_ ieQMEp`hLo/0^P00z:f1"G%r~^FbjF´YR&1bMW{>]"c{TH+LrtUkjUSAZ\e4ʱn15M2=h|bRi`h"hB)"=ĕ4Z.`hZ"vf鎧Uy)iH1e1*-(U7G$oby0DLdAX\v,X5g5c u5KMR%92^mf` s .NQAZNk~=:ԏ0>(cߗ з;=`RL~q"iw'W=qm@CaMl:gOމndE>e}a]6cZr̴s}uv4QozPo5=l cv"^݆vi! =/R DvSۧh`/*GZkPQ8|ls{ԑ?8/̵eQ`#|]}/FLb^Ł{ MV,7<R Dz5G% \BpqtbWdE99%kk=ӯZHrX%1wR$l hʠgy7 #d~@H$36Zͺ{9E3+*Y6 8TUP^ln( !C])-8bp?^%椾tѾ"5𷳋5{C=CWJn_ﯯ౜[w70M$9ڿ C{|ƄA,5ͻ7qo&ăřD@N%)67)$OWdTNWJ1W>gzwLd .c]>k .5YoJf9֌Y3We 8{[Kc\BVҪXa+`VֲP1Lh}Ьok }G ɰĤ:yld !#[bO?zh}LB)H[uW>7G}d{kW*RdͳXYyS?`Qk#8tSuGLl2ݑ7ƴ=0srY{xP_7cFLđ=]TL9}'8׎c3\H3(L8XǮk[Jx?x%Yp!i`5xjԔ/$c DV|PC4׆F-x[sLȲB6.SҫSrQ&=́^tOs<1޽=|̭L{|O?x|Oh|*e{ŠfWw<0SBg&K2|*e{Ȋ{ctrytXNF'l67졋d [T*T^:za{hR;aԅ-nΆB$9D8&3p6^]{H>GhX@/HG+Y gѱRwbVd|B>i_ rf yۣjȒ/Ƴ- HFC'4%|8`z!eiy/'jMfת}YТ7yo!{žɝJ mxv%ɇ~!{Et4W> v~cK`X?sr? L:%1az9cIgn| -)͉"Uo)cE`7;x%:n?=xLʡ_W*>Q,>Y&" }w`b#qpU΃>nVt*d ez<6=L+ %<ظH38*6r纕\ n-J-^c$=h]@´*!VZ4@/Lqf;Wh'Zll5#fFMZ]E|.3nj((1Gڡ(O?Fҡh́(4p *Ci<-K>rxZa0@ނknX(W.I./PfcI;%AH|/'uEGѥ,n^]V orBWl M蘌Kr3Jj7E8r끕hiS%%skrNoYz[غə 퍨TŗZmRn5ڪjBWY{>,4XH57Hةˁ\q͘x'Y#lSڇ)6XKz22$E+X[s[=؟T{;z7u\`q_@g~ˎ"N=hb/Fie6[t ̵z{`@gĿY@nxd.>tmoP޻gpK xBr>l0|D苕A(nTX;f-b[DFWጛ= #kLlYCiWYM&EI5θtm <*y,ނʃV[&uz/,M^v!xә;aMe0;iОoF6%FumɕUE}s[:QN'Js#\ƕ/IKΦ,mdɑٙoYV p LwSaBz|Ըވ :g$ͼ#|  fxY13l 88M2E7Ձ-h:;yM%?ZNןBxvg'7F}yi} V0e+b XZ,_@"T%KqM <| ܴ.==9\j'fV1όt37x?gbցZ~~'~> P8G?Q>s&Ļq%燴OwW-ƺ40L2̦SW\<׾(W;XZq߷~<[QmX޼װBo<Hq|o^8^\/Bލk҅C_+:>ȸ.v7shiэ||t484k(<>Jj>dZͣ* bymŢNӚH&+*J Y}:~lҚSPj/<ւX$4ٖ0!/=AK-r؅ PYKC.8ouF5a%0uoyCCC)Bx*;0(CWOfvM%2 :qtjijbjUER}% &4ʙ x1fĖe& ڳ!Z-ABp l`Lֆnȹxl4%[_2bDgt9He|)aI߈Ƌ/|AFIg&+ 'z$2quyrjpXXAu5|$E 84R7&JQ8O -vvmCg?t!tf%LJ6?Ԝym=>_E X tn}O?覊@Y*9 qf~C3 6Nf͗3Wo۽5?Uѐ6Hy\n>/r:nyEl q| .'䨕IJнQFKI HCGG565K|4Emo|GMBqxZVB.\w) eFȌa,˖.:;0Ѹߤ6ư;筃fm#L)k>%[mSV,oE?1E7#tLICM3 +k?rjmR,]4%#򺥙c1䠥jBZjO?,oyK-qk׶)&{iCbqkHm B}2j#J'P/ T.S)AO d,СQ: %ޟn++94ps#RLdQ#m1ȀHɲQh䗌 csrQX+Ca}DaOž7dTdLyN 0;G0pytMM$SQo)#FX"AH!é޸}SEkhCk[ʟAqs k* H`v/։Ʋ%Վ ':'=Ŗ\֭4Rؿ #܄#ݫ#X0 [] -W9cLRV>[{~zzR.W _=wq3hQ\4)$.Y]!0I+'>q2W2_|_1i}E7+%nq7 _yQ^*gMf-@RgL2(Fߦ*_0Z8cZc[6oIUjHv7W\SmDRHӧ=MG={l])0(vIzbidx$~/^FהbAɊ,+gB{(I1\P,9~xR1aF' 6 ' q_"wfŤbȮx 2.F u./Z>Oa~bإ^]A/I.R 1J֦)Ǐ=VĵI'̣؂2GA2tYC)L+d4VWȸ [!2Vp_]!{b,VapY!|ioJE1ʿ3›vm%IJ:uzu{%F֭kSMu̶#_ca]^gSVM<ϭݸ Psꅕh+} O5 :`M#je<@ "PTAI:`YAmGh#\:3GֹExM5[63Ɋ|Ht[6Na`h%~(F#%ba֛prloEWTC^&qob;ugK2 3+tѾ";P{C65-D,kw TE:һhz ^M{AEŬ{jZa a4v,@D0sJ=IJ~{?Hk%|VPud31rztx;o (ؠEZq`hh{?qL.¾a``s˚:A$& ׿I!h$NM!@TĿӊזּ+loh1:.Pyb)f=eYN<)RIk0-cjEEs Y^nIk WB0͈5kLZ]!~Vq(֪^II AI=Øo//827_)|sryѹn|mfht./q{p@` ̄KWT-{vqѾzț _M{cXw_*~d$ |vqr~:| #&**" ?zt+OP?`_[p1Z`z֡Ŭ]IoRW.cP͝h0~3Qbj sq(]`N0K:YCi7B, -gtv6G0'!D*:h޿G;w8uN]G <8Xw1A @Z3]ce(* 0[p^ѵ؋&=3a` 2kh^X|в r.MۖG[p]&6/F썂7>qwz4)TZG;Cu =_[2ln` {Q6i󳋘H9Go|sCE|pbe?߻jZ{Ccʝ\u<[l?8}-qqy T/snfCXAg>a燢V=`-:Soq0=}<|pl{u4q>Za,g!c `Eo=XdbCYܐ4`#rq}v|.K1j0Sr#60Uۤk7>Gf P˾sZY|t  LL y@c$d3g7"3sP+!Ñurst+ph Bή\_Uh_n]ZXWgװ:(׿+ G:~;vf;7g?]n]0}~s 4e l::8 wZhBp3hKpߞuNΏπ̏c._@dh[06;kor 4K..NQ'rrkӳ ăh`uwvrs~|2f—?+3" ;߷O@3`gW~ o Yz|ݹ蝛kD ~CԻ{:D~mBW1:0/g NzyC:8/ pIc0m6(`!(W@w00,be}JZ C JT٨#m`lFT™S:c•/}uN *ஃ5m}5;&a,,]5 l{`GC; ,=/],|0*5 _&zF:Ⴏr3 0t9 c6un&sIt#dzHsg2`ƨQ48 l!|^\2 yu0zp>7Fã-b0# $<ijj2PDC>ez`((4S^Aw a*-&2,\@e G&Q| 1} I8:-.w {(1ڇڧ"|oHQ{ƝCC4طt-<21ȩHڛF u»]Ce: FEbsЈ( lK ,FVqiUR9,Oa l<7H;.(cMmeVZȰd9"0bi h+&={33<|os)Zhpt05JEݱ+d껸#IAk/_.>lC Mu%trz9gK0^LJ'ld8֝(0Q;|38Bcj6 <; 3EM)U 8 Tyn ]`^g(4 ӳvcKTZVF|' p^A0˥uKnK7QQOض=k ^Y zJ Oqk*ju&p/ә ~pFd[܃?ml^i fCoD >[JZE,7+\g0XEƐ-f{SVC$\h ByPAp2"8FK> 5 p IUN8EKq񘍇V2y}ORf,sYhW&mtae|.f؀g\s/T0ew5 R#u4.JDf|%X,Ra' OY.5dM,qJ~X:rP#+#uY0thcuMkYfb C[_-6B\VYY!H~տ~N΋Yv TzD|T: =jG]΅e5}uL\Օ&_&G{.=V-P)t1-zD$# w(8Fhj=YiI뒧XoFY5|K/.$0 &I:ʤ#kfN,%iZl%GA;Ma(˒mRdD-P44k`&F(QVmV(eFd.<̂O0ʗVD-I [D**3A& UQXd{׳Ǹ l4<|1gǕ$Q_/.fc0F607/eg@$X<-6[ 0;]sYW|peb:Vճs~csXx43Dط09 guaT *SwbcPekn7/KM u͛2+Mj/L1{ϗT$)lݍl*3ل- BF[ 6%[e'W)_h.U/vDb)QA,:bђЈMl @:1ƭ]iWm Jz\ZTe-<.7)GZo9r~ֶd=8%'35-.FKu)TXR K- 桠23/f*VaV؋Ab9ƪ,ʸ5GӰdg<2BE#[QBN92VЎ۝ngk~3&37UxM~|NUXϘ| @??G9<3ci! 'V.Eo{ HuYp03.$j/5԰r qk }+kX5^EN1]R^X:%(^:H-JX QCDP` òРp?\EQOSh3P=k( A  ]uVJM`J #:Fq̵NrAG"Q*i +>E(SǒrDkc% ֭Vk \\Ga<Jb"KHHRy_ xRb8hlԯ3[հ'g6-!pa%#(-ŚY]دt08g,e?w) ; gg'ICkށ(]۩_>?=ݗnS}nsQ^R__ֽ_/f5jܺׯZu#+d0Y4RXȤ #<;!BG|l3^+oyqh{[O-<'8''/3uPC>!Q/ Hȟ2}s> tf=gj32y~fc֞ z?cCJR߉ω<=Hr8| Y睟uXB,0)81b0,t7v2S])4P_Wvhs|{s^Nܣܰ^j?<#VnL9 lVABaKHiVz!#0oS#g2!0[3TЀ6&ƊH﷞݀9Ā`@Q%㨿6Bj1cD3Z@H$r$}ხlN!凴T}QW#H޷P0Ё`<|odFյ1/Ϝ;41'l.koIQ7_c2\Fl D_36[- ~MR3lgX(B&οX8'DoCZ'PuH"z *XʼnL)T^]̺cDs"tPVշ.Q[\J"IBS~7Dگo6,I=dukۛv?ś ڱML\gvm pd|oˁ vkK|Womhu8yӠ33,¶3tvȑ7բ^8o,t sbOY^bgý9ʖ`YK$# ɝU:* }k:Z`.".a[߮hmVMJM Ul)&b2kY3l:e٘"ST(fS2wN+2˔JuVX3\X? UR{Gʷ <no3C@1(Z4{5 #:0}>1F"O4F^&W"kzBCD@ %/Yٍ-#aVXl~j{6C(-e1 ,e[0Fs{1Ww8qْw80nMqUCRx2Dr'YCNYs2o5SGt9-}o\kI nJh|qOJ4mbY0ieqٳl1GLt#_LJlnW:`b:9l?H MCTW%la.fU6ZXyH9c+nvjy1m++ UTɧf 4Š,cl3>Q١pܒ>* \|ѯtQ z.!.?ܳ A|W[]߈9a:18<1|~n_ z9#1lK%=@ ɬ4}T`20$ š~VEKnfRl8Ǔ)Ռްּy]OOwl:Du$roŜf|a rKAf5{Lб?$l^ǁT D2. GBZy1}w"W—#6l~?T)vr8)ugpUϝlZ-xubUN}|}svkwк{LY%zX)=h92f'!a8ngtIORg%)E\r4D!fO<;R} TOD!ꀖ5I}l7 ;?rba9.tO'uv/%9\Zl~m \-066_˿yLBT x d^ m+)'OA^ R b&Ø`<a]~`w)f;{u}pm6/BF{{qVhY=4YkelbDU$._l\X,VTR|tv]mخ9%gvp'8tYdFּ2=Do-R Lzm;نy \b ͘kN6 }bg~!u&6G2[JE Ǻbơ>jhYR6q-R&bssSd"xU=o+w$Ed]ZotW[/6jWs׫HjU "qH(^ƌ]PcGBRy_7q_ԃd# kZw6OT,0oa%CTR9Sv})E .8 \ )@bW}+{щ6@8XM;٢;|?j"Ts}~uwTLBck -c/rWrW_* ᩽QnTs6ъ뫹/ m~'R i-Ӝ ,J6&-7uD?{r{$"ެP=ZAL~8]` \gގlOM`ovOZ%-)e(qkQ%9KLe4Y E4ʣ,Nlx|m.A$> 9CW)TXn 8:kև!y5v-jokשMRz3{] Li̧2̯Ni/9ǻЅM:#>@Oj~y#`?Si^S8 {=wNo0v_Jk뫛k\Z 1/Qշ6{m609 m..:g'8G9p ? -ow—(=zDRPsB|GX`b"MKh ^GWBT!Yp([`A%҃fxA} >'-敇PMx^2K?8Zv];—īf:"ٛ|q{+ns"AmR1sS C'jzikF:S1;㛯G:#XHH8*O*ձlXEcY,9{촷N~0E&ai?fBĈb U ^"g^a.Zމna4clG}S0X)᱔ k]*xxwUx/Mm!ې.W2h.YPHz$.\ܖUs-#'oi%glgR={Թ?8_f N`h<]-{!VA(JpRj7?%sAor6xJAJT4Ni" ;q\a0ZJwxUz-( h6By,b8BC$hO"1ӽ2NȗQU$m~DVL6T*5Mnb1&ln}\9~{{.-EPCm7ɶZI>ݸťd5:VKɮPJRՒⱔc)Yy'> /~-~{,Z՜dU*/ǒN°Pca°a+ [@)?g_M|t_>}X5X.c]ǺQXcjfT^cKV*`15VKhe5#Jc"/_]72`-t{JgkXU"*5XW_UM5X+\x5X+ <)kUWp`UnF=`]kBs_//i&Wh=9080x0_ {\ghR}}OdX߳V\s+x{{j.îO3N_~q[Dk[{Q_߳ Ssu{̨k}O)2"OVM}OdgLj J׳LJMF4;b ggyM&'JnGߋ(I>?}{L[ ˛E;0jpC; &AW{:᯦uAY)ĄN@.5WDJf-,2fmM Tښcm ֔1EW }jOgÀA?.q4c>-#E/f<2y5*Ru=ꆚFmY󵊝U@"4FUD~ ?GRe8iCW/3aaX>j^HI FgH!qW l[=ILU &*$mgu _J):yW?K峦D#s~cKSin1  Q֯;r\>ybn`{WSYw+He4Ka3HPr1Uo$V~EǨBd3ᚆ[e&"Mް&_6ErLU״-Ƅm)z;RN|"qcޢ&*71gXkK_'`/MkS,_,>a =gۛv?~˿Kku֯o]ʧ !ʵtd|m#U.{tT"ӇTw+}m{Uu|RxլBqiݮ%NNj6.fhPc|X:tn63#u[Ml:-Mln&.C2XncǺ'z8ukjw匯~ fݺGOjc\:92y%nWǔ=E5,]z>S^{ T}U[~Gނ+v{oyF(,xؕt3g T*GYBuⰶy8 _Sm,d_Z;.[z~_\rkK׶uԮ]dM m[[WVޖm@WܶޭY3G*H-25[kI\_ co%ѤxJdL8VaJ=:Ls7isFF}k{6w ز%;q\#KSYRuqmsC*)wf ^dݶ&`0 Bg?y܇gD\a?"7%{ӃDyarrQxOjW?Sosac?upXqSETP^U1<{} iP$)}|v{ %n 4ǕߩW0g\UAcc4lo0DP/Uuϝ秎' ͞.79,}|ZtPmÈ$dsBxy[,( 'FMH+YͰ^LkRXњw3sjyݹCc5\\m{d9&ľ&ԝ@]ޚX&/֌˜iG-gvzi}],ƎH{ vKu[{q$xKF~JLDEJK<ͩNpuqniK Ys\Xۀ[>~ \ŝ76mˤ7k(<~޾Jbtb1;*{hbǁ_QU]޶߶}{i\U;I2EIV↽oO ǽ4j![Sފ+cEIC8F!aPԞQE&Ulkr^Q5eL1-Cq(tK[צKŅѿ/s0zaB9aQԭu?P.RwZu+ dݸޗ ln$|^:bɲckW&! aȳʊƌu)&aZ-ա͒[s_Gz C; т$pP Vwg>F 1d4Å YEqc_؞ycNP40іӒIi%\sU~ÊC\Hn\z% H4@|y&8֭9^8w ƒO8R4hP ;415N9>|fP~ɮX>,oH3I䶶9v\|!7)2Aћ/^Z,ĹWSf|2.$???lrh3A~65ϾZlQkNQ*V8ԋp4+.aǡQ0 &\8b{og0Xk rebQ0e9{N ™~[_GW:-X 1C9wT ZGk%L?ڟm3{RCŞб;x, |3IMڤ/r c{,v\+/aq ^0:H<>AIt&-N5 >Pvk¥5:qԟb}0װlda6 @W#TB0DB@Qy^tԐx Kā5 |j~Íi9&"am}s_^4 zGZ +pn{2fIgpYFlL(taYOKJԼ /@F\,gLS IQDvko0 ֣.0B #/?JkGQa76HeOU`UXc eeA.>q'J1bWH%0ÈGkIÓ:YHk5ڣfHliJ!r 8y tt[g(2 ʉ$xKqg +WJ; BiOɖ )ZbS3+T@9p^e1(d:nGp"7G0%& !`F: X{7wD7ZKp@UJx J/ whx%֖ 1@ f1& psT~ïY^|O 7̭i^hNenjڨ̎ݹ ;;r95p{CvL.v5 >/P,Y+1,&y]x^ZwޝA֌|GN 8Z/mg?zDW/YO(,9}BzcZ!ҷStH,fcs/:% '\ؑR_ TPMA.!Z 9?ϟkOB072l.*}qzBW:2mGɾxA|.5%ZP\ҟ̤,K|grQ>2abPf Iy'c))6/LS[j]Đ|G`r)Ek""å`>Q>Wf߼﨤'6QEgŸ(?0 aKWE9슽 IrnE:ْSP(9-iUr*w># =3[\[–9`;GԳdlInۙ9F0q6dBhrxe|]^^x VyZ$%04R8E3<< H%3߭h|ohk༴M]pc '/kRQᔜ3 tAU;B`G-;J:PwNvu1Y&ݖ%}ؓT[`$BJ*Vg5Vl qP#k?b`zkTd >JT0h GvL<ÒMfp~jSKa1Q|ޡGVx~ Sʟ 9RY唓` 81nɈ;ĖZ_oAjJaAVKhz=ɠR}Bjy)[!04r@8cAMsMNwh^>t؉4Z#{3D+1<+g@9v9`Kp1o5v*՘gw[Li`@UnrOSÿ+Z+SµM%1 7؝/PPû5uDc+Q!_Q!Aœ(Ԡ$]̈́rd Yвs©M4%~q }}%HʣiNU<ɻ5pCG;N ֿ7R? o["^}nN*VSᔍkkB.3'8j6FcaE0|p9fgn}cN=حc.g+Mt<+1}ri->5-\*ogyxB }K_ƲHx[m7XT!7*G2U1\zdY)F8s šܣng*Ppur ËS*B HW5|8ׄlWҍE>Xp"rEYޕ9G&^ER `Mm -#A~ SXakdB%vmV:gfEL:OEЌT[5s譆@y N.=;o #×6pʝYi96e`epOqq13N෤32Э2/<1oJ+>Qb"Lg}>?n1;9:X'%pA0+sqX{-ajg1?f0@w?[@h-Erz=a߱5_0k8.бs7zOF"P0[c_%0"-1rs1GԓC&LrGݢps '$/L= E?po:'ZYӁ\7[x ?eGnhuo׃V?)0Ɩ>(V?ꎆ`֏Zm[lJ:qrrhǭaA4z>Qh 0 >P8p8V114=5[}A$0+c4Y? BC}8 p␎SF} X4 ~À{ lĈTG?iNthۥ.P;"bmE^] `::J<\ 8`b?-|FRNa6gcRE6HlVt_B WL_iq_jnU+uYT&_e zOq-^ 7IJUpՊS<^+arZVi2&l/!F>egbDXP&&WHT@sخB]}ߣ.[KžC.q 2.-X^ge"oըRi.I['k|\ ~><07El@ ;iO-v Q[0 M.{ k8wGSc.k#6`| Az#NLQu|QB\GlRD\. r=*ztu)+i!?Hx"PMj͞AZ6purMGUTuP*נUK,We@r=tˇ+%6U/ץ_>H\YTܴ%Z̤Ij 6Q2?pk!x6.Hj?k E3ՑRrwS*Ъs%lش~딤%+LJ`.q Sx$"=Bk#oYϦq`v2M@5CeGgڭwڝɠqU~zu q_9ّ~H0˒(][]Rq#N3'+Ű(]k^\o+ W_b&/clFAFv` K@MzH/\ CTꢝX:J E4C }bE`4@3`&9>lu(4#fchXj#Scpz#ssP8 $7,GЈ%V$xrj2/S3خ#GugY#tX1 G\`a5TEV;RřZKQ'fF}=.Ch1eq䳕zx/&̟nn ϴ~r!%.ݻ zE0*bL1@SBҰ0x`n!вZS5^*nj-7PIax]-spgq׻6VW{vYf$ƽmvkH]ؖwQƞ=o[XizPTe|kuNV?>n[*kƸI;X[J8?){iN1HWIaH_|C|D6{LE%r@o3B0ͱFF;AbXAE=@3V~PiCf/)ڴ:rUYX:LQ~~ygXc4}lf.=da8<kkL4@dێͯ`ڼi0.t:5>BZdhH>~䦅ڱQT8Q9+֚#CӜ6~Bh*FhN"GYp EP?E b{*B dp M{bxn=YbtRZ=F}0gUG͢)ms{n! NWxM)^Qi:1̸޴҃;,¬c >nis6!o,wFvԗOQ(rd`+ u5 ~+z 4u >%6'j)͊x?^nل'SBl,zboR0K"eO\ sI{k~G rYL5HyxE|v[`# r#;gv>9Ł>2h~2 s-ZL'^/Q[?1]]$kxP?]/(/gaNȎum9*􂐰i؝4o2f F%}Τt,~̪fU7V?FSA Œ(VrDebK tkeRo^$Q'2VU:nNN^a0"/ҾV >Ja hDI ~w=Ԙ)L&:^~kA aV,<\F5@„EY2,fBGhצQP JS[ nfd@baTɠ05QT3I# /v$!9jL(r/bq`\fygM}B41zyvGw =NfU,3~`c̦IT> B32@||v11xA )mw/4Z JSe'+J*<3"7JPLG'ggH7~+qX]2嚡2eyAaGu;!Mc߬#ۡ |)F([.;,k30f>d=gIi2kQ+a26=`+CqXL=5lU2 i ?h"Q۪&ޓ"ֻ* wyhM_liFE dZ&Cr %]2jD_ k!EpsT ޲!Ax˹ |_*q "kӬT..x_"`e%yf]^!< rPp ynzK͏t4(Hj~F -Кr[`6Xd^D1Bl9e} ftfPķqVKIǰ[ׯuzW.3uhtI.~dƌqdj*Y dQM1>B$IAN/B{Sk3rqfJFwДt8 {_:AA $ Bb "xx?Anky=3!\xgyOPhy\їBW\*1)RxL A=ݽ6֫iJhҬ[Ve{Řb?)ƩL!j2v+|Dؑ;O>!U[YK!C> ~\rpOŵ֐Av3p(֒.aQ\q^W=׽l\k< l; Ksdix) FH%(8y.Ο;z0j4DK0RYۍ,XP\=#0Dd 3K+怈̏v;f؅8 {/ 4uT tUa`CT_-V)QZiJ9 CÕM-0ـ#HIH)=?PG3 i_+0aH-9p˙2# S^s/ľIhnsq.rԺعf +{qW0SL߸VeXs ڂV1 Q`40q)&0uVIP5FO#ݨ7=TFC^|JΑ+ @ cz$X )B(zMg3K)}'Ff$U cH}0A T "(^UZC=h /4 !%nDcA ]'+Ƽ @Yn3l)W!~K49V'O`CO%}ӱMnLC -X?)Q)PNNBE,ԱQ#֝Xz,B.*#{v]}jz7t 4r˾)dI/|ʃd_GsӛٳK_ -B/ )f`/:eL*g?4z#J6e'y9acm62AyG ژ"־DY7<<TDF*Ru;QyzSP*3p )HڴyʬCx47ir9Hr$a:Q޽fg 4PmY]Q -!pdOp繃z<foŇE&B(J?= + Ƹ߫>AaIob/DrTAaRj3B)+*&yɪ.Y$\@,ND?tjIJ(>PZ[_|ȐFiORTFY ?L< ӢodE"JX1qcYtJ+pF~\Ѻn >y{9 X-mԎٵ\۳'Kec`ɒ%p=%ƻYB= iŋCͱ_ ma~uQNAj{z| >*]3ጃ*G‰V~HTbwLl9ph 4dk Qۯ~!ciΜ$אhJC0ᷪ>= b:ZE%E]D7dV7FطAU.^I*Tw <2^ҽD<% f2^>>b&EoZlS2qdF;l/,+jdk\yc!֒Cf *qX]!f qWbgqw-C܍*u+yj_cC<4:f1skAr/3R˵ er/2"Gk3/ gq-CO1]Gŵl c[Gŵl c[Gŵl c[q-[A!4ɪ@yYzIGTD8cVIbA,Sxű-LcIǛOx5&pNlZlV>^Yt=rѩDnq,#,g NM1]P;N #aT&;aT좘Q Hr6 W cEHJ *嘛] ,51lpܱٖg?זMnm Vŗj ӿEVTz0*" avv {n37ada9EYYA9+5R 1=")J,z}8‚ip01T.Ro Fݎ=Rb_{Yا(6xƑ}wư?ч_:%QN Qa;maOoX:靆nndDotueOQxHGf}my[_?.||p/W>L PKonl`Hk6vL346~bw5.q!LqStkj<ю1̌`,Ӈak9|Cs  (d + _wu;&~y!2-\``L qfچ02s"tu '_Kby3)N.b T;NjLrV Ǘ&7\&J,p="JrĉStMC^_ ^P&DIMɄ ^ϜΩ==Icfd5B;T⥈a(I1X}Xo~GK4",K=7Ʉ8,o;5g AQᙀ Tt[v&âa{|ohR |Ÿkw{#pWH$ @ W' kxpc?;*V}]=H't",w?4bo8(iMj5˗`i-˹1 yX; ; érAr4[M1 5*SI1$ /NjY T -H`јH ѯ-jfcWrx>t|ѻ<қDi#hG{'Q#." \?2,y0h2\ 'U$Y&UZTLev)Ir0kCj#KXlU}ܲyoK_6aUr$y-j>Eiy+ 4Ic1һ8D-S% #T0%Fs|4٠abl1`XR\>&ݰ||G'e&2^:1&K=bmv@nO{Q^F(SLn]ՇhHAZBwhJ],xB+5¢:9:8mz5`@intsʼkzz:q=O WŝnOg:c,(o0e=Z>T;H ~/ p2<vܥSS>/wC-xE=2}Ξ-kjsmOfr` j-441$x3F*tx@c 02nlFƴH}L{vp;{_3t=;*q@xI>|IHy3ð}#L'{E tMpK }.ܽ2IYY$@2x5.JJGUGIX9,9%\rRQl<ޯ ,>neQ"e:{PAD2⶧M%Ȕ_I1@kw&[o0s<9wqoqz`;$J41U@Q(PͅT?$kGs.ږRs1ģ0{_'[Sd֕렺VtimY<\mS@@h氯Ŗ)la7sos1qX*1}H #rP9!~-)s2#4r#xa"XKϦLgJ`+iNue|&.h9i@DXlهSV hSբ"Vgo͵h?rOEE D±G%T5Q=BAA4p}svc=,.:^FQ'U)1NIׇOY-s&?ݘ*AE`u 똝Z4R3NFQDXZ82p@@E3&+3 { (9I0Ǟe UĊlo5%/N%v_x%ϒ4J.58FHny:⛛4j5~4Oar{qSRqJP NcC,lN>#JFM{s۱|m{.S{M)SoH͖Ebqt54)/X"lsGl)x%u\#Jޞ|ܫ[rư42+BE~}1tصөQ?m܏)^/1$iME >q7C!l|bhCH[G<wQDmiBrDErԶoPCVA7&5 5 >ǜ5񕍢b{ i\A;}~"j.ޙX;/, =>Gw5LPvR tl&\w)a}{nibnZ ~o:0hx6ѕ8":nLNwM>чzg>+@};6$CJxϚ.tL6Ycք ۱W9[>Jɠ= [>JzaeNVeu lFxL$eŝų~y s@ȣo^QS$=;T/0Å5igr4{EZa}'lj3f)>BɌkpcJqUL 8f Qmp,|Β03׀n/YoWw˲ :C;tsvk 53*x8W?1S0 hEoTgh:&LA蒏h@[% (r<9@kK Pi.8E<ٗ?q`-2?'!+r$Bok >Q:LM^hpcvף fD>̀.h#wRj7TNF R cl R{1n_g6 iSaOix X3O5QS.FHow?pr9`^"6j R540>sbXO\@5,*ھ!mXצ4duag`ʶD ,6z{T8-]jzmx}"*a_| ,Y`_sPU )^ '…4Z_&J+)汫c~8Q,;[I<۔o;sCVhM (wj0Z$n~{E6""Z+116Y6YZAc-ueWE56g7P3Ap:\yF>>Xwֱ'W _>L[}0ht9#(ND/{,?Z$ưWL&w>5_a%ƝEgF5ko4Re5QxCEp$D,-goKpiFջf%?~F>XM @C&b${YԹ=`V8JeHVie޼KPj(XU APWYTBN6BhC!Kn{(^NƮrp/&HAAڢßwwomK=s6%~6Vx_@h-$2ϣ#6QcF&P.@U>b$^M]dHX'2;W Md=L}$D]@_Gub-(3Adv $"+/B DW1B"`a"&еQ5c tAntT?cb*τ,JC 1q/f7{v%:e`y\W=.ctw?numiJg"RMZ3Rd9p(eP3g^ CF{%DƛE+ zA){2 sv1ጌh j&Vxj)6,?E?WO>AQrSx0j#Ȭ4ϊyRy|iJEšh޴"(X*E ěJhnE7;>QBCJ'ܽMiBӕfGF6uЇ$-] (d W!挂FFBV )k*ͯLh>{ZAW$J8 SmT:Yy E۵#7[E짫q8aFZfP?G+Lh<§f4,X»yӏр˻khx7,s^y.&Ӎ/uѷI)LVOl!Ћ?Ba8+D2]4U^VTiVUc(D&K;MT,|"sκ-yJ3:xI#ꮧ*+w5ឿ.ʈ]qx7;7F(Qʓ{oN72=7X 1Mqj!iҁjFЭ̆AX+ӫ4Mp 7>QJƪqsb8Q>( '? A"EG sxURFF`t!jP!rf8_)F0 -G.KV<ߚc_a>BáZV0.ŒM JbN{z;;EZְETu}mmcA+Ŷ=+K V=0q"ݣn`i(\^qy#ڕ獜|l+̵n|QNW{uey&{B: MFxJ3Lf4l4Ѡ Ao_uGcmJ0V$"nnnc\ f9jj#U2Ii~6+;<(TnrA'4?y0DΫn9 ϴ["I^"G^+%ꁲَc&0x]r'箳Vi9h[Tcڵ 6Q^Q ֣[)bHBR׶Crw7. 8?`_cl0sGTxbMd5w<^R:`ϴ@F qzMJUV?K K|J깜;ajR_-cIJ2{FQ6QxڃL`8äLU1qUT)p,B#7|߼ģ10 mvtYE~; 4djHǸM<|U_Ɠ}" p<} 5X,'tA) `<̎+HHowwo_E~la6Onu?cqd^z`|릜d>:IQod%>JIhGqӅ%c_;.M*,; &)"v)PPаeilZwႻڼ_Y˷` !IgS2+/do7lDF67嗴1 I--yIH*R+;1$ljzvSۍttB";@SiDy\JlTu3P@vw@^&)SQQ@Tap]W8Rt$8[eA08x°,7R\$k_kpwq'2f( ul`^c`NvsY= wCɵXMfGFQ}ruɫX{v2i<[dUҜB\OlTVprmi#/g~EQfRcf8 , $ZUjY8;U_!YԌZ=91#ۦNꤗ~sg@¿a+#y.y¾ g/S`CyRQ=keīgq h+[QU#Z9ᇾ^o3^r< fY54b~.buQƇޥjYjȻ'M_N7-/ac0ѱSn-ʼXE8&c s, dY: ȜTrR7щtA$ cdoI Rhuɫ [:œWAs19bzbl/)*kԇ]ŧHȟ.R 8ꨤqvꘓ؇_bAH{@(* > (z\%"#S (]OaCw/.Aj!?RىBzJ( k+Ak)8 h׶ugӾ[ |qbJL1t,Gm՘T,V'lD:!V{ PLUZ\4{搓E9}uq,iq`ƈr_iNqFIV%d)C|.C/3mPп ''h[ob[_k!3LP^޳ʀQn,10cJwur Tl@ O@0TqP¼fpzOYeþ>'a&=$P% ڼmƝӂ%PO1ی: ϿBCi;ZvGgYuq q._)c$tw!ÈRK:`cL@EU vjܑ#QA1sz̺a=5'c-2^p8C!]fx1xY[ J+rL÷~K>C| kG:w6&y+M򏗠Z3W3Ue P Z0üUK#y.C]g.L1ْ3ܤ~9Kֱ+]^̬ d LBPw'_7 \O5g "_Zw"d1>y5-vUE`|RdllN&,{quZ/v6 FXOoOdbSM/rm'k ZhJSvA.L¥#B+a?`ZE8T(Xg.`) tj=w/|m0l|=4ޚ&Z̙:qg vD|!Txo`W xi<9H4s?U*'a:dLH&}e>o/w_Uo-tܜą+#yR׃+WYCG@ze 9k&+V ^K1p7!nk qj&RlmbF 8.昴Jjpq&.|f/8 [0B#1t 5\j_7!_~)toY aUߙUA8"@EBبP97x> aJ@ 9mrAbӨcfnd2N~팠0zpVsH`)/@3R>÷§hN\lD|h=%KF0BwMdC¾\KJ0?DB[Z?1uxYDZC-P) s66tP,P;v˧jZlp9XN~.CZaLaOݍVg7k U5u%VC֮Ջt=2z: XNR8,hLr|fۉk"wy_%3J]kq< (SP?ոSYNQ*KOʩ慦 ߓaչQg0}܉CS3v wǹ=kt;M zxGx_I~VT ?P C$fp.c&- ;t 6eS#.&r'{/h6z=шqgDB}Ó}"PDs)9 컪඗3߼l#_x KL}8%D658x[TnIY`8'F#:5JM[kp/,NyKcR )/'Yai2 ؛tŨAdo$0;P/`;9XS0 <ߚX}?3 ޢ̷ВuvօcYzG7Uyr_0#W6aCI)UVY)jxYR #L]$kgvڟ)& Ul{'nU>47b,H9[AL0wڢt4ȁZA wۼ>/PAz]Ƿ'X#& 9ᖶ)B.~_OjJ1AS5Uʝ M*`>EJ-8`4=^S+ ݩXq`P N5wa{4;.R p?F{,;/GG"/e= иsY(QWƱ^zJU6؃ATŢFt9n)"Ї{j >3^L*0jL$Qtļ2.$w%^o]ԛ#djsG8YprUǝB4ՐTqwRK_㧔kK,8|:VtrUjsݧ?qؕ 1{WAcuaH7wqLJ x` O+˘!鋂5{?peC#.0-|eU:B0v*/7C@A/r>R|ho[ VQ?x8J*hMekr\q$ˈ:/h;:SM1C=3;ZoM9+TRfl;LՇ~h4 |^Lo|e fN[h{Bi Af+tna'02<``9?jwY 8u_ Zi4VUR(TXX9^+sdWLA(:40B4t`^8egͱ.3)pƞ 1ZxI=Iس( ۃ qI7L:7L4LW | a׀՗j9&4+\E=K3|edh'"X1.3Vl YKw2}&`~W][Fa9X$7CbMq[ϼw߇2+-1x%pKFi1|QpE+M;"=̦`/a⃔~j˕dc,3w7 X2$9UaG+5:(ܠWf" T9GVY3Uj~ECyлX]+/>A`nTYr.u{)fDQ%u"Fn7Kl]xKY4 nYyʊ8W9Kk*VhИ$2syƋP'yZ~Agz\Bns"YC:*XlZeKNh0P;DR ǹRF - ?pP.f{Oۼt-Lmckz޶DAcАγ/CvVBVm4}ZV]ktp dZnaphFN^ ?O}ѩsz*V[Zݧ4ִ4TKc4dnKxt|i-ihPs32U$h.?l^U*(Q#]_B)6˿f90-EJ^w01ZQ_NQQCIv$ KLҏ `W͌߁O@DA9w88&EǸFu k F=9!X^lVJٌX6_X7(7D|hl5߳KӃ{+l˳:oa'2r(!`KzA ݖaYf $`V O"0ST wIϼ߈Թc M#G{^[1i%*ʞi&, .Kֹ||*|w܅v{~?JH߇}_cGG2Ӓ|ggAuC=!jJx;1[q eˣ߾Ac,8Q@2E-$308W"&P nu*I2~-0vǿ 2IyX'`QsŚj= %a!QOeNyrۅ9Ey8Sh}_o8+KL1/lOIj29{*4_gc&yd?89U(ظ\Jх̨Z'AtoAk01l^5#o mcUtuUIΚ*;LG9K6P5#g T% 6п g}baerq .^ii<-`G"yZ$"Ym<---tj\i"N&d%BаeW,̨̮5WH[rTr `)Nb6.8]uf{ΒMeq9}+Y H4%E6<2 B,yZW(.,vpm$Y{~&\: .!IKkL&h-@cy%OUuԒ-vTU[WWW~y†z.KBc=[R(Hdk78wd!rɷ*XfB/|=>`n>Ѝ3zރ|>vC|#d̰g`H }6j2fG)?/϶3|2MDϲ~<ȪW}Ef)幑%rZXi](vG;=;=D˿OXF=+꓃!PL^eXd/`ycީg8z. EZFA)Wzz}/'tAtl{^:Vb6jGVC={Jظ9PY:RS=5AdG w>:0ǽ!9[h:^{sW4oz/(/Kj)!39c<#pp D%AgVֵF7K@h)Sހzo羃n=r=(<#;UXN D \#^#Q W|rcufbyCvl ݈hA FYP9M&jtC^Kp.H/Л/8h#`pJ߱Pm(~v`䲄3 5? 7;~ &V׿#G" κ(N#z#<9* :>bi3 2@9ͽ?|+Pa; $Bn\¦v̏t}3f r j8hND e*ėIƧX?˲^]* v8S=ɀċs S~1QJgg,r9SX󓡖VK2/]dkZ&p.^0u";p^x"tN]]êL@u7\x̘|πb1öBp N݉^~B{m44#A9R" _c!0F|  qh>\r$4hiL^/&L7K\&&Yh4 iB3Xy<@Cs#/|0Yd ^8W/`,ssʨrΗ C2<o {M<&V&DZHA>@ 5 2%y!kS%T4 Wg7m|sQ^Z& 'YOI>uQ&A{^o S=#>{bS`|5:Q:O)&eMY|ebOA]0l>a% QpiscaUX-1f2p&c\!iL?tS#zϙP "Dzȹ\wc~~@hՋr_ DXSg%$  *gSۻcfn-5 ;Uunja w{8HuCڝ ZaTR>I\=Ĩ̤Rs-KF+maegc7TO7'[nԶ~=GNѮ?X87 "+F+Ȗ9Fsmym˛"3.^v26@ڒq/Fn^G/ $FMfRKgoQo:̵#RVt k?>&_{ت i22'#S>EJ˜8ף%mqH {CByv̸}tiwY%mrz5RG΂ډ2'4ۑ쏹#E_sT*;b.".h,)b?&>յ750dXMw>"Z%` I`p@vxܱx4?9D_?r&&>x7'N79ldN}p! a)65EAo n[blx,3slɲ Ew;p4T3!#V&qcq/|HlY̦2{ WkMv9 /P&HLCX&c1b"NHtYwKsr F7b ?w{l#N&cd$KOjz) )1H+,#>]YH ztB9D]*93)[\H#-2"${ow@p}(·j,E:1k:_hxEFDWs_; Z {Ã=؜؇G\ca=#fah{&kkfww=Nlc\ȖMH3:PgҢeE.@AkcUˏ#LSߴT1 éC=Y\2>wz]J(^Lny%j5`} !7 YT*6ϒ>]oRICx/+L5 Fu=$01IN!lN7xMHFd)VdYy:9ŭpQsǼfG,Ɏ$w:y~i"q.\Px2f%fy&aKaW;O-LaH+B z if7'7lcw ,ҟB)&$jkg;&um`|܌=q7SX^h V ~t24_jJX7@U`W&xh>wzkJCh<FLz=)$r ++@TEfrDxfD_1?g5v988DR9yXaWIpwHsBߨ_ۚ"vۖ;JSki//({f-k@tpW5|~*:h_EuymzS?-n| HR.0\ j2nRR%᜻9]w.q$( x|rt47cj=}#5>]wB#{䄬趄hT]oԄ5ksS#nn)ht7{!eO*?ƶm9 j>:?a?!:]wS`#KU6u3K`J~ͩ@~rw7'1)3Q8}ZJB?|&ʦ`pU{6 ;"^!5s>.zWXIɺia6@s|z8 {Oaq2 P8q>Y2CDM\JL™3WChNab(paGPsB% h%jҜ5l5HK;MOs:<3Oe-ָV]tt*fMe_{WɠŢk#)[U3vnBt!Dħ@bU\R*[ ] pn4P4YKi8ǔ n!pB),laSl=L$ԛa4q;Ŷp[NL K\UN0H[rï%mCm X,8Ƙc*$8H=DiSVMJl~16OGٴ Vpp<v^tRJ%cε[$pEڨ+aXB/uWg7+ 7?h7k84KmwhW@6v9Y|"&9u;qW,yYcqW.D4/Hk!u)|8^6SBC2Lb򌆚,0ٷCC ,ˊVm@=US5wdžn3B]YMSzg"&M@dH:G鈫R<*`W G*1xa(y:8hZ# [s,Gyr vJ3iBw;O;j@>Ygeo$3J:œ!k^1kEDWHapԲ*ih,Z7+xDUx&f,}cdę_NJǛF̿(hDR2gTj0#(٢.u4qUb.)tĹb$W,4xSr jZ^hUw-?D1Y@{|wձBO0opEd(X'R*( B7$.iWX(.ez%~wxcn{E+Ѧ*GX.|l뇂e/bb_x6XB6BpH70Pӄdn ɻ^64tt:/v@ VFUt @.åzւ@ہ8|zFĖJckX mi0e@kL{s \qk;o*%l )GПWQDDx)x66 $q/Yp$;S/Z8LvAg1&#=Q%v <$Zl^Bv@lFy,;rK3Lt$$wR=_g a.tS<2cx~b0?aPdM'xv98͵ٺ8^{E⧎{9E80ZGy%hr9Ǧ"}>.6@R= sXvvEqlT-O4nє޼ Bn޺/Bm%u}a5^ΚV;zKuȺYW!_Y].Cd=5%d B>"b:m#m ܢP~1j+p{@sk+Cb>SP̈́[[!3$*-a$D˹]rno˙.3+VPDqwR+9Onu{ 栊]QiP؁඗tw%I-P̠h=ԟɜyζM5-94Z:1P m,,9zY8`+c8(T%[6?+VFM;ƧFc}oAו/B0,8nlW_vR fc=愝N[Sv8y-v>pF2 B>JU54X`-.Qmed}"9A2l᛭,N.[8J@ڢpU RYS0@mǖnŌ Vudӳpj=(Y"mYNV$a>+)ľ"V,CBt,.v[A-3ҽ4TۢZQMd-!p4:ˑZw;t'xxc:^*q-,VҴXc#00g]Q:ILZ4;{W: 1'2P{' IVKn߂$GE5z;cA~B*O`iy+/ +,R90a[B[ #kċvhyY³j"@"hHd@P,,̊٫^ Eʴ$] -q_TdD-v2_A?wd:ԷU&>Է\WQc΃-K -]x28D+|Fyb#mu#x<\o';-IoD "}HT؅ң ևR![`\ HAoy;>)UxDCd}r0P`vxxd|~AX:X3rX4 $@;5/HVl&,)KֲFcKKzɉ $Cr w޹ǷPLx9wE~:**N+! hShߪ1 /Dz| :ZQUeJ'Q?kF0$/h4s4?U*J. £Htl>kb *ϩxF;o8 ! 3@Dq Kw~?g{8)ztڃm aDy!FG_ X肺XLɇŁo eF֠!2maY-JHK@N&/ST0G%v(O'8)lT$-s{[ZdR/}U!+aaЯL෠T~=Oޒ5;#Wڴ?[à`K~,ڒȎߞJH  :pKv>;װ4б&h6rrل[0jLSZe{MPu8&K^x~ [r^ T5L"łU19r~X ѳZJϠʙR|4ȗ!Oհ"Vį $AϒdUUzR~=ه{GIQj10xƍp4t-5ncFDdv"]ɳ7y"B]dW,@ M^u"E"Ϧ `;&k#k3 GHhɦE7!9>7ѐGNk"B6J"ߤ+֩{:f0iVLWl]&f#% Lrc2>{AS[թ({{NOMYε**٧pxjJ`?x.=An90W-|g:_#/!m!g_xe+ܱ=rOkoneP|a;E}<ĊOz\ʗ tۡT*SK#Tںر'>v'u.+XX')lJCTX ~KXǺh g) s8++ʶ-eΘDcVLlqDxMhyVP&S]xsuXd K^۶D-H]10uݱ;~rwXCt~Ce6a_lN؄mr˦yYGa;dDps8Q`c㈽؇_NCRڮp ,v ʿ^ 糙DlƫnOHzT?_&hdR|H$Tq]Į6B[<{|22U QMز(Ldz&ӔV^$(Ǝ#CY.ÙzȂ82u*%-?M`? @}ss^[zU`@&\@9/r 0(PR?9I6`%͢1f-H\|$6*_ g)=VΤޜ:5hqiĦG'6;TT֍x4w{z4b҈c.z5\ GM|=rBy QAQ xA=ѳU2Ⓑ5,JVн|!g𸽈W^n$ @_72.k/~R&-tX\787ux7D;t2Iƍp:s{{j`ɍ[`Ck+o>w%Ԃ\ttaX-G^v}vǫEl1ϐA0;*"V*Y],-@dT㫨,B `]0W獩 }zz5ƿG$.q!FѽeJ>iZjCuQ[{^ARq"p"XA]aVEAsxNCq#NNG??5Fɛs8tsv`rQAMܳ%. X_ۅ/c%`MzWoIנ^їQBE ku,Ҩ,TZ/coU_5zSb_ ZݼRִJ??g (Ѹ= ܙ*(ZL.ocw;UK&g[,Mq:nug;q,vt3ͧs7rpm fK5vTl* .AEa{-"'.wi98HPN]0MBp_"2B1uoxpk&bR(C%;َEp6M2'~R?oş(DM_^r{a͵ףD_| ̃[LfPd2;jArݷ⏷q"=^Xʴ$m_O޿0wEMjQM& +Br-_Ñ3qSՇeHX ʑ;Gd1e? AQ@14Z[I51%j\3HN~ywybGY\v`)iNWనbGG'*)kpcp^E_cPr:VC벅A*_aE>z4^j2cYVx-d"3Rz4N}Խj«~IͷX,+~%d@|J? QkA59<͜VhGHQĴr*-aagH<.K],Nُ)~ P *Z}.[S%!hKaSm1 _絓yȧXL D\K;*:*<")@@Z7K IMEk֜ie]\6xOɡdIEJݏGXk&!u* 8AvzذJYGjٓ?Hʍddhr^C++Q\ɃԢΉ?#śQ%,fHxBw3ČX ZH X^Z-<UiW%{L}j艕Dwd2<泌)52B$Yj1] T슘Q0/ReQ5HuN[}Zt[)$:\kg15;a8><Ջ=޾mnLNg6 dȴ*XN3b# S23وM#6^lDEnZqAh$iƒޛ4Br yKIU(8g3+~);lSGSlu#͒4amzb3XH8^lhf. ` #Wv "E5a,whLy,9?'x -93[@=#MT1 G, rT*9>,gK - rxvϵ 3?aIok2nϙgp|%ϷpL$GW%(`{@W7W֟ t?dx3|اQcTÞ\;8aPҙ0S'Bꤥ(}Lyؖ匚n)[W> XFWu`K4b-oW TS}FX* ˗`ȃ{tT8_If qAY|8>|jHI#R,Rʣfq#puүj8X;\nC= eǠfkvz7Vqy NT疖no8$ ,ry)U^smޠGށYGc{)Rk4V¸t rYS献jH5 gqlj^e8&co0V Cx]pّ#h[?=ZIC[Fc)l/jr\_/JO9埇_{ ^zk?hE`w=rly_a Ў>ٮXB/k X;ȷX/=UY/=Jxvwۻc̆4fآ@E$T͸9,^<5DZKvHO l{=3aYK}%lWGVle.G̵eGcy]nt[K-brZ/u;Z,g:ZpqV[R/;w_ rE_P+Hj_j HJ~w4,Wz P2{Rx[~q5YTi~XFΠ)a4 Xn4 k {<żF]tAp>`qOEƒf?s#}Lwe3ԋӜr>u4?VNQpLZI}@(G<? ?mZ;.yX:ћRq \ wG#s#0Ettx~`yӸ b Ck 6aDA5lPL cbbau T?-uv[|#awKY2&?w]W,%1>לmf{JĖ?0"$nr^TD\N-wUqOiKp JNzK:"$}Dz^8Tkd T #;,xOK x\6Le=SgUkE1 ThͶ b,Q0HZ1bVc.^I-m2!0>c#pjFbj0uY>cT"D~1oL x;H_5ho/OrWaMTQ̱;7rsy:v:w&i7BGXlxQ Fmζ؀X%A8#DŽ{ܰbgC0~uӪF,d@ātqcgss`ޥ9X;է t~WK$۷Օ [8>IGNUtOo` ~#,<,|=/#Ǡ]2PV_ȱo[dpJc+QzYo2F"MΨ6h>6PR䷺0"lRfaϩMe%J)M`]2kAY[8 C;ڲX`udS<͛mLZ30%*+l%0Zj-B r`8M ˏA/Ì9:_ApsVAT-x \#2K0٦oŠYjt%O`ՙC+wOMj>ˌ>g1{SNO5c55X3a!ih~9*ق~0اom|/eO I0 a;`ɔɖWA6Jir#fiE1,XFTN@8{V>؝^w J);]q>M;t?%%^ 8=3QAIbϪ`JUW?D'D Uŷ')tF]Ao;0=k:Np˧ %=rYGp0:w3{ryt]ovYAUΦW(*"-_9 kAWrVʼn|r`[!@.#xUe+g^-K>Wli޹'=\Ɓ b =&{+u[ٚͩ-rPe^.Vi; '%ʼz`0 `-qq0 67% SS4ON9S _ΧJ :߻rC,/JhutGiYt,%7J@L,llMmg˄74CLͬW  a1']w2}7=q}hQS lT_^C:I%R+՗87.ڜKXP$ţeg%Eݞ-!1*PϹ89UGRjHV]ʱW<;ET}gV玦/q{>LW9a%W>wIʠPCk(_MůZ?bN(jϾj ^ _uJɟ/R/MCuz=[XJ4T3ڳEb2t5T[j5[vkȷ0=D" n׳+ ;q!+, .,J2orsA?]\8ӦY)6UeYA~8M 'vIM9w/EXA*f~4EQ\ѣWv%(h@eFe;{}Y rEWa'pИ_(<%. Rҥ|x@߬Zfv؎ }fU|d [:|=mdHDa~w>GݝG%{DhGsj /E8TqcתqܑL$B;:@V7\~pINt9 6n]˺xL[]pak7g/W+3 Ǥ ;I ˜ddeCV6dFu`JلNOC̅H) &&)$LzqWA) - bu›/ʣՍ/:I *l('gM%QRmr52*g)qn"@# lt&ulc" =KJ_I?T짟Pvqnkpt{9)эq7U-Yz.U|5FڕbvK0FpF#a}nspaR,b6bSai~l7/_3DAXd8IN bXW4H'kOܤx$%qX_|_!FwN(*- &;m`/M* Hh :L(rlRшU_-PJ?/Zr;w{', ,q[c;hwCv*&=|;W%iYBqt#;U~Mb7`!x[P(N,ғLr )4*UCDk zAZMnkJs̤o w!2L9QiS*ȄqB|qΜ2^וbVe+OD LeA25~$K~-A5>^4,? ܺ]:"/  !FǛ*@}c޿>ߤR ~~?*e4g[8jRiclInQo$FG*=GTT (c:"`gt.yL( )2eJzQ{g؟rr93_R/GXd0JVaL#g) J=eFXp&˓8 XP9ٯ+V7bW74~Y_4^_t/+KkyEЫ^xla޷;{{sqe ~i*{vހ?geV5LJ9cF9dYhzN9&bOr)+݄ _>= H;eWe-4p_n7 &mQj M#[{)ƚJ/)d=D 9oRx|MorGn + "x%݈+ګ7).)Ϲs;'uȇnTr }zydd{uE|}`h)BHI0K."Om_)+j;S3 >Է?a_nYμgU-}Vz8n^tG3H4:/*%Ə֍dEѩb^W.}❎f3}r]Oj}Mj PZ8^ZNb7 ddԙb$CiGX%o(?7Ms^-D[q >h'g27w5'?- FTA1>OСyGqt%/Pⵇ?z$@lK%F}1/ ]wp%2З ۱oG9=tG<0W2`,tB,DO[h[,OX05A]A$FlFS`v֚ShS4J;2iB`+3z&cQnd9R+& {¨)}4!3Hv0Y3'O;|?Fn?VfR?uf4.{aSX KX '{a'bƟ'nM,a9 ʵ:ۤ> \gS,AY8)%Hl3]Pu0 1hc tQ?J >! /yԦ'믖bZ[F31MԠh$#l/1@G쮧= tLEXRӬYh۴,-UUPȵ&ʬS+w 8Vz(nUFA4]Jn*d7ơ!$L#;k!Ԭ԰sk8kc::euͲe}+-T/ SMY^Ȫ$%w,f (rNNR,T(N Y@oXԘ줁 4"=Wq*^a%G+۸5weg.Ú}%ajk5_dTCRYp-֪$\v6S˱z* 7w-Y4gc:OˣGmuZbn丗m{[֓ Cs㡒2*3,b]6-+sk͑FLΕ(@*9E䘱~M'F3j]jǿ|/xmYȯ0ݬ(k+ ֑ـjxc;_Lks+S.P,8h!沝νIMYY6UچYVnPp 8hX[FМ;a͜ƍ; `bdP(4T.lYZŸtA=;vF j[:kKR3`;~ xmщ |T]RQpe> =d%0m?s˸R(8/8TͶNHALOg.s9 |Ŋᯕ`/ʢd&y ؙ>irjj(n*? R=ӺLسT)*9fܨ}ƍϳ@tpMmtOtmͩqh&zQ8Q͋qWt7mD/ 'y^"Dw5ыDґdr`G uz6XwAm2!ec!E:q]#%ڸ֓܀G#(^;Zwx kxggMnZmkCW,B4?&I?eX7ĴW$ނX⧟Dr9N$annmJ{.Si 11/F~f^r^trPn ^8#gZ|O^ -쟻 |w5w?.j_[~ɨ9qTzR5ThmT#/fT"٫ o\M%/(ǙZi L@U~o2o}n7i9s^"FoV8]߆['ۿxʊBvN![?㵷R+L~]=OE1ˋ)`&: ٔ ǻzvfol?2fbF HI4@֣|JJo:&t| Yn䄗zMMi*VID%~,P~+Y\I!HO=m&V bĘ<5G^/䣠2YmV:Oc{"Ɉ L/MUL)MR[q~/红L-̘Dis5; = jU"G*f-a;Haae&!^ż!Uv';ؑ;E3 yd6USkƫ*g%KP+thai5,`J\lq KJ*#{]~iMV3۵wbv8G t1AnܨYyf<~i;q7%̾kһud 0!YyW̕9L#I/aZp [)tTn{YFkAl^̺\.]KkgYBa6[ z좧#XϜ'g_7|Au7n̲}I[ BXVcei>MV_! 9.Eƪ Y췩]^KOm6 nd4F~L} Jܺ[=\'e< W4~OpsIFu^A|A7Cޯ}H3Ra J -zxܥ 6xK$2q.Q$tI+ҜǧNZ*8o炉 #ぶk9N≥"V﷋Q'J=;~̝Y)򨍈&a\n<Ē1*^ZYH6T1s5X EN8`FqS/D.@v*rVr$IatVE:T yxL&םbl6f<<ͳ.8l:Y뷝:*Џ Nűj8ӛ|ӱ-6S+b+z_-E~EZꭖڃ/u;BwCJr]]EJvhn:gX8d[<42X~ap *viV0ne~dqܲb)ŷ]bfD1FD-|wut֑3 y-Rs=N5k״JS//8r1^gDҋP( ID@,Lԕm\W#LstoGU%&v '=z;p9^5 (,A8+2Tx;zix{; MoԊ#Iʱ32Q(n};|Z@vg626m"VZC0<@';Á.Wvm4h5M<:o++/栯.K5aBYkKZ_B;SyRD٧ڬZ4۞}k1~OjX+BKgTʓjn)~?ԝ]] ZuZME(۷[XIUV{CR0=U˓ ]%dTFPjD,NT,/N}:zp[ȴlh0ݝLQ'ɱfW#r_d b'U2h h2ydf,iYۼg\G[nW9Dn׵ְΦ2 -˳&{,1^oO]vk!f;58t%a1ؓWn$fh'"TakX-]![4(Zn$Y?'n }yc&IFWabrBM78.ze@U *W.^iΩN2ѻ1&ez-2AHyHF[|,E緶 7zQw4{W#qy r<v~|F`y-CYגued#g:v=qnyhgl6B=e)#u\w˶w|9aI.CN+F =`W~wԞ&;#l,f\%و2gS u9Q]yPmgGzWW4SCCI5WgZ㞪Uicn47jIAj|[̯eUtU)Jj<k eio&_h_kBD5"c/SAokϋ`يVĢb"\@Ut$xa߹'7$r;`jܯeVCl/F/}j\-%O+Ut:n3X$C%r{?#'!; $AeCsJ)qRҗ7%>(&mĥeV@*{T *vi`SAJ$IzHs۹paN?'wȟN[֯" n\2n@} ԝGx8i;i߄Hy ":`hZ2DR/ӽ. ιzd +K,u~3zHyʿήM, (+֠@;^7.svA_-: FxݸjH)BRR3m^Y#H:tA 9EK}'yaA^k,J~ >0E;CBFEG/gM 4S۸k̓i^gmr10dq>[14eSl0 y)B}L8lOvRQ\Gon<9;*.&O[̼`~KN魯NE'] EE[{A-| Zs+u/AS KFirW@*O˼{ xh\W4n2biѺ>n* 'T|[ ж~Ѻ3lNv|{BX7{l@P<aX?kIh[_h\~HAR)"=ƭ/<(>,|~U|cTTRq){.aE2x3þd"L-I|M]_k:A瞆L{ߗUI/ZSПm} UeXR $q&`s]kLYh@@}nv֥?vSẃQ00ns&޿i| ^Ӝl0`x8XgƺtSUcKhA 8FhEuv /{Z: v&rF@Cܼ&a(]S>Jm(U+m@MƤ}Y6?  \lG]qgzobMoc)?72hz4y 3'eiDL<-I+ЄMŭ,zTuauV{*Ez[V[{7e6RAr:m̑n⊠& LG@*m]g/8gU>z)X@2zOs7S^m;fF~Cq&\ 8qurJ 3J=eǒ @&YGk-PvMn?k Xj-GuTñQsϧfޢ)~~j%8Csg>Gm;g[ɉcGC0;e'Myp Z^ *~J>M2z|XSoS%!}Gop &$-Ԗ+ JTJoGQn6}Lqլ*DM["UU28.iwgW^\kߧh5~BI.#4^K)bLRU =-$"L;:%]r9ms+.)mog@&;mHOSK`0 3` #Ǔ#!!K0S փ2~͔$>zGd4ioTEa$)1+?"[&qzkiVQV 7شYlLgOT\8mR*TQ"^>2xZ g=B_kuhkLLdenZaI6h3A:OƩq'2=u~+"=6$_"@Ƞ;f5.j Lie60g7Y&و:VCfXM_+;[X?@Iky_E'>77ǃss@H52PVɋ,̖|s(Yp^S( ޿] S 4NޘrO))\#GZ^x̡?1 }8u j?q gᘚ^?_x9kҷ^ jbuFȷ`fZԮgLI@R74Yhjڧ0nMo\{ky֝cvlӯk;rkQ&,vr}}W|toE6~؀{rgsǽ"NAS؂)9-_t_T|xI݃} ;k}YԦ`'/& ! XMݴ»` `ՈWI!-Iuk"Y^m<h{g\xx3ORwψ;V84Jݡ_eT4ܞZPqmN Ag*מ[fx<O8KVK_Mv{{z /bdLQ~|"avի:]TDrbœ ic6|fðպ&Xdc.l_~ #.5I2hPY{Zbfa^Mk$n< TkKUjJdB` F|VT%^1@o)I\&̤\@ncq5 u w酕il˂_4z0 xtM{/+۵oR3ճѴvb-ɈV[1Q/gH.ZZ={-DkR\Kq&ۖuu%A)f qYlfM0gm,ȢiwGL,ɱmrcuo.Ck1/0z׎|Zg1&U >6!TsVl7(fLÄ:}[4`3My3ͤ̒U}XPy*|*BVٺ7௝M7&whB<2sƐkgn#wgHG#&d3<:ڟ>HIRp q;'Fs0h~j+Dm̃9BZ\88LfhhEB5a'x5u[a}Z GQ׊R ύ:>yx)~)ul,`$J5쎮ɭ7Ǯ&",[5kqV&O!ͅ sQSϙ/%gN11uvq\͠FyT }sGn>Om )5&<ȵX8I_ٕիW%;^҆Ks15)x>Yv-ĔJ^7I #o{/ŰU4hkO=U4SEKO hO~rE{΃= }0wn0fH3f}U PA#`x<6V`+ЍU"-!<І`,j)n%w 5/)+K"+ 0fX\M_}JuVQL(>H) s)s2B̥L_yϽ?ء/_oOe|e$n3@OO#c%t EY[Lf)'PkHElQ;[3nW>o"kJ~-,OGQ_Eb6Y) UudIMp !*B*yr-j$ >\j ϟw?7~d@'%c8/-. /M|_Ԫ)] rkk;J0r}ZEqS:4C]`.-Vz uϢ0 c7BLDA#CPA$FKԌČ%j j9(9c)Σ)Ë)g)Ή)Χ)Ë)⩉)zJVS;Pyf,N*`z8O&6y U"chXIVR=桕d$UkH .%6ߡ3ntmwo?̞KoAoȲxl q{%ڙ'ZZA1Pxs~ltn30vP4x۔7 ÌX_q%F1=ެmV“\Z# Y+WȨ:>R/ O)S}A kJu J[ս=~% A؎~?jGZhC?-sHnY@$1҂"84ڋݐUtmkbYRo\^Ń)^]|H:M2bX0Sp,l_}I;}pDsIBDGBýZivtx!ϸ#,1hA/2Y>o'3Qݍ_O=Z _Wv*݃^yZ7ʍ~V߫5AuwomOd| vvjm^U+Fy_ݫ{+?l(.Z>%^9 rY>E:fXaP@4pԢOnopθ\TZuwҀgkȃJRww^ޫE \ً绹SN6kO\`4TF H+}xqi4 tjZ5ݽjcU5xnFzʻ.EЕjV+:S+uen.W+E%F4|MzwޫVJ~7@0*b cGi}:s`\6d?N{Ns`QC{7gS[  )*O XQ{.QE%|PL2Iqh XEL̢h.Kײdty JKGQ K6wV}MbcN d:W/'*֪i0D"<.`quѵ1׊=(tչWRkit.4sAW)򽩩 wg}@.PUP!;wDoC'08$Tfoߏ0wU{SœimM7skO ²Ań[ao~0p#.@,"@,\obp`y >4>PG3:g$"Fq-&#Ouq˕ض NQ@z4x (@t ҀOHF,HjbF q@z{G#&- J˶ALNNo;1ۉn'ڽHvT܉pGŝHwb;厺;~vt'ӝhWw"}݉vv'۝݉wmrpWWwU==ثte`3S;t1 GF[~Ӄn`;Fǁ]u:c);]s7p)/%%2輥h~9~[ {RvvŨĉ 0`^u)5ڝY7`4Eݖ 5#hppa1#lgX }NjjR3PS͛ {@D4ԓ{@bWU*f#>(GiT!_`_Š_GAV~YPa§Ih̿S$`YH6@ ih;%Ix.g -Ms g`1bL :pfH,zIXRք0;ȚVfz |_]4kֱl_x-*_vAutTY"7'Hߓ·fg4{DE>$e|E$;{wtR 2B|/P%:w7k&gL͜k|IRJ͕)u.q:iK>iS3|uӕ>ehҘDOmn \Ǿ7Xb-\d r:Ⴍ(" V:f q{ӀjxC)diI(Wf"lj( D jEY ܐ…[vvvoSa\K)U|Tָ zX?0-$ r.$ j:EXUSݬԩ p]Xl%IE88_ojMfoSX,2? bu)H^Y#Jt: 9vWtw?*cYYU(Ujw6y'5Kqxױ >/4^&&֔p k7? G+o B5h~-#9ʯ^+ddA ]"_${ssI` ē}\[T~u@D+D`;bܳ{|~ {,=Y_/ ݟ29z p孽 Cp= }.\ 84$մЭ:XJt,lKCsnw@Zt`8Jt1r,z:r7cQjIk[)R@ߑN)iaq6ǝ>X7%שM(K}>x`[*$|@RM L(5I[HO2:w3aA7vwSY.kO"+Gp'Nt3!lRɦߑD)xOrqś.A 5ˣ?:=d: O uCOn(=YJDOőF>}Gt"߁-2ak᡿{ $Z<溚- R ߑ,zxIZf2g3S̠z=ь{ˠ'z@HOCb*9UzUb=Tŭ`J[&MV/:-\nv0uDY:it97P7j/@̢߽:d 94c[>&nvKV@"i1YRKdlJBKvplD7*/#jyz]1".A|j0]# xD.ZX:}skh" 04p+$4y*iI?kprAE^4;x&PŒ,t^%H[N1lxY+"?xÕZYւ'5 y5o : {Cɢׯ@(CqP2q,\ěH;h؏LC\{LWnۛo$RvqmSD@ Ւ¥g;Um!omھcp잴gZY`1g`^'E 6<@ADJ~2rUh+ 3r܉  3z$ 9h՝JzwMibIC5 i^-d́0/s%![M0*}:Q*՝jzD `}zQ!ճx3j\ ,޶hC$3` ן8U;j]J]guu> 5>aI\ȥd sR&fx \JSf`g,cnSX2Uà+o9/y7ءhP))H>w8f|/uk9r6#Ů԰k] #~|m^`yO6xvɗ$@]IDzÐ;@p!oEB\4P jjQ#}R}"hyl{6Cԩ,EhrE^ܖ` c ReCͰBx-`UK39E={ ggXK3,5t=4 D BVn&<ʬgų* Y=Ʈ\{jt(*q _-X umeB ky]YKC|&k^pIv뻇W' .NwtFOXoH}Z@b<>j( \,K.O]l\퍫q7޸W{jo\yn zxwbpD͞ƐCrcHn ɍ!1$7gH]>vkأ4[ Oҩ[ I@&7 pfSZvdL(l) aA#/~~2=$\D^Vu!8$ג F6a2 Pkt %j)N# Jg+dpk EUH[*c8^RHF%8 6MIL.Exw,8o;JZgT4&C`0^[J={%LIc{XL'/0Է0~2Ldisw}*νJ =~1`NqX.fgI`# D+ JbQfQ ":n'x>>4/d'b@iZϔŕ/&u"skP:{gu*-X֯.Mf&Ju#itYS&?2[0(A ZMRMh @T1{Ēg3:=tw @beᢍhG?pcxU95Bx;v#W zvxySFY )oɉK8IDȫva/ MJWIX)*d?a7k-"cU~ ԱX,XP RrZheZ#1s$uP`]"IGR=($1]TrTgg40rXN0GyrU^ɳ؆ F|R gaeE~ёJ85LKX =V`sC!.bYvH04Y2 3px 4b 2֚0a<4Ԟ0ĺ/i?mCQ$;j/CJ|%S5 ^B]3Ymu0e̶k*`2.EP!"ݮ>;`x.F(#{) *IDƨ@z7vK&>=SIJ|4#72GRpXWA3g6.SRN#N<5*O7&95ev\=!ΰ ϣE> `a{R!Q֢M h?6 kF NP2#mAUـHSH~_}CCʐeaʞMqvOAC%3Ejp"x'LlslYt\ OC'0O~ ϑ~#U@fED(|J^3k.,' A1 hZ2vP1M6*SԎ4[M' Zw9Zg ~"MY~-N@GtB/^0f7܉wb*ƚ+oNǻEGZ~T̿SCʣb]sm/4]cLEZ靯;da7d;nΙ);GUuũ h'-Uک+^I^j05Ȩ#smz3s| qpj ҹc|=G]+ rXmB!mKY6$Pjf\?8,4wOC9i ."?--=GŖQS ENՌno}hLqc\7=OL@}\ݠ6eUsApYr6Msg9講X?[ Xb$9@Vdb]-/Kg|I!dOuioStO49h]Ηb$._8,-JErXYV "FWkWK*_:Н+ O)DC 5d#)|gY\Z!xŒdS&óvP"}U-Q% sak3zuPXm@ίhacn{{"<SĔd,f d=L45_ UY o]*~d|XVR(|=xh,4߼Y3V_AyQpģq87C$}(\Gʰz2T |i-X|6 #x8vbFMf+r]!&!(+ڋVPу*rY$m ?D#߿VV߱),~{$XYwKd$6 4I_<12g5rPc}z,MVȻ6ә*$2'-(}+i3r ag[j̾<$w:ӳ0[b9iJ9^#(tK0vf$u=xYs?YMٙ 6SÉsc4~gDPSb}@ f"4,<4 VRBb#f``Jl&Aa@G3!~^ћ|{4G3Inv0ʾ"dTI;;?Đ1B,(>v"p#*@^ b"_S,dB6"&T ^zR)hţ':LYO=m߮LX:|jMf[a߼Q`ժMdž)?Yɹp<ZHFl;i AiewZO@G^kà/FuEwjKŦ4м;> 9DMM߉)pA `r/7K)b.Bb <9K[p!,[J,iv|&MH.f}$m(xκJŷ^aNee0ӵÍGo F)$LJ^n#-l ќɴ /1]L_q<`n1[_;令ܖX777]kaSS Xyi[xm9DBiZX)wZA(,{H-PW!]>Ip_J1c:5kǞ2BB"0a]x `ܹ/7\GʍG%V5_҉ @iFP+ol!eƆ!eJCfr X{¼p(V`T$MUS' X8xYHW(fŏx~I4Hr՜ha~FV@;(&7V0卫4ς2⅖mjE um}N.JuG{2xx˘\CxTƞ7Kx%C D1nD1C`?w[wv.K\>*( IR~H^EU;mz#qq:8q~A=jtá|aD' '+<$:0EY'dFx+E'df1(QLBr j?lTrědEg"L?B Ȁ0(4?F1*BϪFIm*ԝhƩn JEwWH{V s"[_ޢC7Rِx1Kn{ 6934xVr;wn xE׻wﶟ^"a%挙իWZ^i%ج;:t_gjbi}A_-$ɐ51cO՝2MH|8t(nhYryyz68NwZ3^9p6g=E.ZHƚ?GI!>'fwށkW&R[pAĨeD;<j j^^quNq:u;Ւ£,zQR7FkUsH([j7[[-F~HR "@ @UHN^d " N hi>@3ɫp:/`~ 7_ 7zxse-,ge鴏 O ;C@$ ?f/K)3崚á>Is4n g UDG#dh# Q00S@/Nf⊏Q]T(&|ы")pK3I }N]_B~ dBgGJv7Re+}Ҵ{k 4ܜ^h;ȤR~J 1N<DŽ BeA%вx_`~h3 %X0JIA;PT{0܋+dESfKb,./ˁ!{4\f=S0Ҩ> d~7OpxwQQ"NstQy"H8nm4ͭwN挓[aͳqH#xUR 9%>+mvuCe.𯙬> 폇üD ~|l~]',"ݻ=x2k 󠇳_ov[_Tl0A[ dz&bɪ&!~+Yt[8n@&[?{ċi%rX7䥇;.+m-5+K@AÝڒE/D~Pq"B"]TA5I/SCe-d *͘HL*k6'ak˄K3.g-O%ra7{]D)>Ar3"_Ln0o3\ܒl&>6Pqܩ0[A $_,aFX]S>c/77j{X^;C &6L-oľb8Ƴ*v_ߣE퍏?}[ +rom\D4&T>ZZh x2ճf4oaۉDa*((l\߫{ :)l+;W6(l7(`v{~GzEz\ +p׈x6AdyXٯ$[$ J+yS`tXs*&``k [g43P0JXFo= FC# /F~g4g9% a?<0&q:੓+N2KQXʏr(rQ>!EG9(MG9FQCVG9QTRN}z@&Csl(3Ȭ0{H! ğSb1B#q[{aCm.1o G>;2݇'[Su9HG"~]ߟ7߾rSP4=RŌd2=@t͛( (nd1y 75k&fT70_׽bKv!6hOOƷ2b2b}"nrt^4V ;;;E0>\#@ &(A[쾨ݫ}.2f% f bki²]KEXFG  J.1 A\P-ELSd@2TFQRelFv23h/s-Le`{sO\9ƜSuoui/˝;ǝy;0b_W˕ruy<4aioI V<!e- k7 ¿ۅ{o D VG_A<DTALDUETUR)"*bU,QU,Q5,Qs5iy3,e4R@_Reiz=;TGР3=bzmH% & ÂIeYgs7*lr/_? m8 %AIJ fejKff|NlN ,iӒa{Ħ=Ctmy ~6M _{1mJwzA6YO"3$7#} @1*UJu%E-J_)ebxlX -L\.WP 1NSz)\ Ks13{(u0ScI+D cO-uW0ՐjbY*KJ<粰AYwy EɪTd|~YˀBW+8JWmf#Ygb.%>*ݞVc%mlXsJ C4_dOWAŊ@ U\P[uCPR$ڭJm5qKBjL6+ؾ`- 61`# 63`C- 65`c673ZJ`6;hÃ9 f56ݠJÕ[hu+YB3%ԺY^4 U*yRxRX 5d}If9RQALZ2Ț؏zPQo`l#Z^9Rvl5Zl-Zl=Js=+Jl%kh{YۈJs#Zo#sQjd(YiޯGֳ~Vy>|PNds2R9T蜌sNJ8'"u*DSu Ns"yN2Uω9T:'E$)LT̲*y@#fg=Nլ:/P˪Y&S@% D'@T _ RC8"='ج~f]gU~,ʼn=+p]l }o8 R'vKѰ V a;1gHiL(б <0s O=YbBv}+ (I,#NFBx*IO=%ˊ'A^5އ>, ^<˃_b W>5[g,,ɉ g şAt^Kѩk) e-T B. MS*} VA@K U6ҰpOՍ) h>:,k鈴0SEȃ0-i jZΓ١RFJѴr?*ulTe##JQfFY͊C e%+̼ge#sYLe#3GO# e=+c|??.-0o>ͩ$h8 \"DM'@$ZIOD[D'@$9xDLHԀ&jA mQ E9 %h46NHԊ"ڃL5cN %|# _SJzPWbco(iPoWo#F_W~(9( ݕs~BD#rN(QU&)KKԕTVΊ %'@UCYG#e7|_I~UuezB \'Ձ% -d%8r!чJn_, &<$}3~u~s9y7bo=!+/c\o2\XGTpGc3I#LP1BvP'PSG4/]V']E%4Il$X{$wt]_$VAbe bX_C;nэ\l;C]+Kt&ih,#Gvo@{`UG/bb%%j mQr˄h3P"*%!PeqUQ㪬Qe,֙u>J$[:wW:T?u$:D U'Cud8#CPu>NPq2T]Gj:2T{ dJ4ܕ7+Uʉ )lyy r1EޱcSzwۭԞh$'G9=~G%= /ZS"ШJEgwq bH|>2_[8h{Ip5 9Y,Yx2F \`ed[_iB ~' ^jrY{僟gE1:ĵq䶘6\Xw$Эzxz QًLWza7wTz !H_HA(s9ʱуJ5+}'q+QChµ6Ev@{8]@ aeߵK.xW 6nYVa@$N(d\̈́d7 I##% . ~@#\̯=X[B}1%'^UM /Se0;EO/ :~#Xba˷C+K6 uNjBs. vi,^f]h)L gֵ o|8D4-K;L2#z}ϙ[,o'A7;#}mt{7;{(-z-v\rۅX4/oYKzmb..cutsqX+Ż4aF6omv 7of6^IW { ?™&׋SnD7=L005 cZ_/HL?oiצwm,MH#5t?'gr${Ykmf -?q?.1Ƌlvtm{m`ȜK͊!U d1gjJk{rMȰP]!6 vr=/CӠLN9HE<4`}ãJ;h@B Iblx極|%8c+jJ^JY!eҌEREv%o%l@"(;⿀ mdA7\@/ܚ qQ(xKذy>:' d1GՂ܌Gnׅ95'amǧkc+%-\$90oA@+44hCRĶ呫\ N< v5g&΍00h7ٚ!KV&i{zM>1i ɒYjNR T*S!(̐w(g6W6zC7av3$qn-/$u ʼ1|D%9)?ʅV5<B5Kl)4 y,K{@-& i"c"%cṁCՌIKh2# dG%Jhݑ'ܵ;^"/'zZ[F?k>#9 oO6J$l ~aAC2JAo`(%mEp(tz3UAP-Ⱦq $t*]'!ZFHa)d+\0 (5>Cq g.&оUn?'.taal~*>?&`͎4 I>7[:[ @d5VT>}lw. "V&X3Ra4ulI䢓v d404 3MɞcGp#SKB־x@tK4cGj!BsJj6&3ƚ6> a| CAELQ&j*̞rBN DzXdU-ZьE$zj0Qʗ( "!ٺ:tnqu^"E44$|kyP1F 1eb:uj|n ,Zj3P"^߇"K, g'Br Zt\ ?۞?ykdN'y^ 3|̩&\46MqN-M|3{lxJ-?[[܍`gkդIr|GH0ٖgRsK!F˧¥Q(G|.@%Xӝᐱv [n}W $׻ OTdEx\5/ Y*^--@'ظICy|#|qg/Ҝ۳?nP Ȃ-x`ßF>'DOay8i7~ۆ*(&2AGtP{hIIĴLBm4}h;޵r+L>m͜jA45ɵ-P]T3/wp}Zج89[SV/1imNx\` %!;x < Dv"{rd59EYv]cȞ-v~<n" @ $lubخYM8dboD c1ޅ BF 5Z_%( LT\tf' 4A9Tu>Si(hd7j0\Ţ:\qe1F6zoqo³ɥ [O3J.h=lwtXTH#y$ q7G> ){,3- R Dt>vȳ0"=ezOj1XSmbgZd^̖D(899PJڋA>:\iu{ctS%0Cq˗HSg\e8j`7AB@FXB<ʞX5g5@#[k=i,m!I2Nd|ԛ?˼53I u&w0] %s<02*`Ɉ=:9%𗬾l2UwOA3Z-N`2#!jBN^ (`'BZClcXijOte|M8QB;c1v^/7ޛׯv˻v x3nO1l5*3q0lC /f eno~Jlg,7C4Մx&URP[)P9O8̪;9nB0 cp!%"IDƇHzKj}N7&pB%7hC(@tXG, kr~OzD4E]Rm>\t:<șF|T/٨^ų_e 3*'8@z'߳(B=:|p>q M4}sV['G}HcdqL~7 n;wd/8_ߐP72 stpKg8 #PCԀw96t_\ VA2"ccĦԔT;Kpq"Z),DteA<&g4ճgwh+#e1tĜAriVN۪SȽS'wRI{xefW[3c2XFRVJÐ7Ԥ-fO#B`upDúSpεk[cV=; ȉ(46 A3K٥>[4MO Cu]QZ_D_OWH_]Xy?Bbo]/-4WEݿfI߰G~JVc?׃wv, rdwRNޣQ|ɭޏNʭ-+J:Uw]g#e:mymEk[U}?[R7"%<(M)u0 8d9܁!cNЄ]Tm=iXѸ 0* &BxL!VАnHng*Ėoo15?'3vC>%w PQFc+ ֗q@GP2XQH҅~HM-R vV?@M?m|PoP%,{"C^plzZ5*}́A4mZx/ 3Ƣ3\rgXQJ%`YIx3N8Ձ=Q~jUS'2q[Zuɑ.l/KG&u}u!d:xv_ݑM{j]X\{Cs\P_=t̆bh ?hXy-/#HqY7qk46 /&B7qpuNlc_`h6̧ M 90;՛?zehOv="@[-q\\.._(e A!:C`@#Hİo Wkg/"'RA4$P:A C bJ_r57x1Fqŷxlc #8ciUOn#/)B.8&C80c__ %/@5 \*`߾}QF*A ^Bx2"LYYpGB}}M!B .R_8䷬/^1 -x,z#FbOF]R}OȮ Y%rכՓg'+q4 NKYvUys*sh pn,!Wvk~N}'d/RiJfv^L>Sx`æ q?ǍǍǍǍ/#s_X]79%%e#9mr8&4ÏX$;~auAnc/ &lκ^/ubqjy6g!<ǃ O_b1 =<}~=dvh:98p@3ߨM}G IIAsQw84lMKpd]Jب}5d`bH@*-Ʒh @&! \J]45F#0^<rN+VXM}ws"Cc'Ox9"v} ]Ang-o5弓&a q45 7T-s ̶)UZ̆Kyp O4p: :7֘7\ cB( a$ M \aGE‹xZ;(U$Lo@..84O[d[nhxڪ~#e4Em8o@OHqː5  h9=3; ] 4ؠTZttOM>{*ҳf% ]b~N SX5KVƩ&jEAh$MAFcEsANG>~V>ג@GS@5[Uc0-7u.#pP5 EsA\l+ȦOg5<#YDZS>pWrNmN8;$kʰ*3g|I:|^K6a{3z`\jPYơȎ:>^,M2M=I L^4VhɧAX= [*g=`1ڀQ=<0$J&<SWO4Ts%%q=a;J2&1BYֲӟMTʐtÔë5JQ*E.A_o8߻Z?+qȄF.]惔Ao6z rz#JɟR L¡9zm &Cgv&{M8'7 F=/1!(5 jyڍrRih@!J.JYnT,ӟlf)W&Bc43!:h6zVȂ|7yB_Ҹ@Hwr3xLQ!^NdC$}pr W=;'YqØ\R0hmҀeY%j?vƽ~0<-: nyHE IdǍ sf,pކ-Ά@`JQE UD.~9OtbqL/GxLupM'*o0Bu噫>g1؜ʡ*8X)Dvk 2UO1 : qlL` l_!jGDy٧Y<ÐAf\ <>=bw40 !YUGe% Pjw}+j;P0ru%n"pBQ)S BMZq>3P.*<䬼ݻ`rT?>9m֩:?V[񝑖UE7EaO]ѻL/ i2Q ,::f(g[jՃBʥU~]qZPYUpZ|Ŭ bCPPQHknYhڿbGH3aЌ:LNCk"8 Xܢ$q4:LF݈J}( Ȅ-v/"b@ȁGY6w;,n!ͅ 6 PNFDa/>j(bnɴ%C`XH^l<mA>`|Aw0 &"bn_cgiOAҕE62 i``.9Gp}fn 2 TvΨC=_Baj_rzdIcwF~wv:~< T?NNjδP,|y`ѰPב;kZKJ. cGŔa!Y$=0hNa4_>#f[="b8 .'ïh29`XVI[3^hºUri2=e?yU%"{bB|ͬ![mG-tB6ߍy[,&4/i˙G fON>qV6a pҹDK'umۛ0nAq_{2>>nVkd* ,r9bR{MH P tlG^@KgC>:,  0[~)҄vOlhFtV#2CF)PU/ QgJVs}Sg>O2i('Zo*T>q^MUOm'Z{ysR4xTN VQ!|>Y&+!9S:?vƽ<f! {|훵~ 3쁎a`†W /ΚM}tQ(EK䤿I E!Hu ׂ7vDqEox1 =`Y{%,x ͝B $3|I!ݢL%xE-**2vπ`5wu٤-E[d.dbg5`0s]as+QSxV#VmjMI: O[朖gm+3Oakj~YLoNj riiE] ,A퀪\mPX$"0)h9GߛҺ; jQ4%G`Ysb6(TpԦAWGjPHu)&"*XET_M7 BpKzs5jcT` ]1 D591ܙ*Yx8,5ZoTil?|UZ:F3t?TA l(S2L7%ދʍ}Xv6T ;lm~D8V \Ǥm`O9]C#q޻riv\9Z) &Dc3\G>3\ONmH׵f3Rgbcy3QYL!.4f|&&kf}Ѩ#ܯ6[n "U%!_U˘U L,{& zSMO,,D(H̟ t(1<1&_pJ@XEB̟k(>u;goJʃ$UNw]+WɅ?E(Jªbsq(هdwM' %VGidΪ|-%teT9=&/8 1*vbE1[CRΪtmb,fJԀ9֛gjK {A!ntX)<\ m^&UXhFf . C-ȯE ATr6fL..2F:&9ĭtxޭQ_FPom0ر5 ;ڜU@[w@x._]06;s< ".Ȝ, 2Tf"RU4 C\^f l"@>F>j vܬMN9O@Ӄ/Y?/=@ /ꭏˈLdR"x%Cн8oHq?Qwc\.L;4: R(S'@Le.ʨ5}ga}!1\(!E}[LOg~2.d,$T:SO;@2V?̎doy)ZXņOAg ` i (ar?~<uVEOE=h&.v$J kc /B6ЀX* rCy#czvr7GdefA^bZŇ=sN-p׮̕ўU!>UC}Xd<K6+U ݌Xfv˟S8A0_cCy|K;L1l{h|q1E⓭y4.E}4' B_ X9xQ,_/V^*Y)U5R^7?N))F(+؊3AXyF!1z3E+Lkv [w{*p:? i03H(% (I0 R?=x%Z|Nɔ,v3e 1p-*F m#w>{11XhipΝR4(B@N(bgvy5 [kKa)F-`%I 4([5 sLْ#WVТ-hf7|lA<)+ѿfKe>KQjga>[⠿ѿו1~h%dGgT¦zL=i(>b^~VAq3ٱbb6[ݠjtppVk6O-av 9b ;W}f8}e\}Lc01/v+) G{/͞c{iwىokor"\:Kddl$/wga. m- Ⱥe=̑ȶvpW#mMA0EAUּٞ4$a=@8L7^70j0M3M%B?}6D>KYq~8˽z^$^` ,>܊eV~/ŀNwt0t9wtLD6!($7$\9щF>n7++Zto++-҄! ⧆SzםÿP-߬|\~w?ꊔb~r1Ip>o[ D`9X' eR&7OxuWFoV+;dZɍf`-ɎDN*|z!<~e]?& `RJXH#JPaEHxM7!/LYr6YB uMCv1L pӚRgsALj(`7tew>qzNد,& 2FA' #rx gY DoW:|ݠw~#(a8TG&X)+'H$9(B3|Q 4D [%" U/V,|7r s|X)xV r.I$0{a/#y Es|5;2rfj%Ʃ^x@3 EB@ws*Vn|WܟBr~:3\ĜՏ[[?t-UŹh9Hj.LUX$"ʯ@h0Ԙ (HV@LT4'/:8Ld2c$C= <9S2&Bojezav hYڣzţ RɔHJ$TIc\ 5+t gQ:,&?LdBqXJF.-p򾫟M}C9.I1.I);Qemcmۄ@[b6,cI:*Yq͉11|S d'#d8YgLJ/|!mAŢa'aKKօX <];se`Pe֐e`M*&JyRq' >6GV3)># ̕Lh6\ -)^+[ES!)}榞H_!b1/ϯSYvPH7^ w@d)JsY1~#2K#Zцinu/rP‹d!; pӰyЖr~.qa /$܈ giC3MQHZ"Y3zPL~PvPa(EM-ǤV~vc}UTl޼}f򡲱z+zuhZ_(U*_omV6noJ뷕W3iNA1y[)l$8l+O2S`l-U%QkR3Ax\Y78 nʕ[7+[&o ]nn-.G/76c:xPgvsPNInMZ -lޖ*77F5Rr87o߼~^&^|S*olVlQo!Sk!0)ml.mP"J[7[J\|,bjKrrxunKCb[J^AήqLn%o(W6^onlߐސUl2jB`2?TObq"dRl 2_154M X(iZ{P[@ PCM>< H_ݻh3vχ|,Bj-PaXLlokjɱ(JtCa$;<0]FMgpQ(&){1;ӽp- dцL7 N 0$K\h с% ܖ'' 1%TX-Y$2a &b / .$.mkav,@CW U$?MIm/)s۷g"iaIҞ!iQ;5E}n+:zr Uzsfl땐nll3;dރjg`NS?k'_N}LQH|1 yfՠ3ć٠A"/z/!m=Fg Xw^U 44W0fXI_9@3ر93(bpR XS)h X@i>&`P$wʓXȱ$'hX/A~X1]@bߊ*!ٟC5!RH?CH01]*8孉Uax^p~GVoϾ;œ*ڌU> ?905kе6R}F=YRMSQߌnT./o(SHm26Ho4 7SHq:ɍ,7Hs:эL7SHu#=ٍl7rOw#5kdon*o6^*5zYnl%i}x_:?m/F nI m-pnx lwm&h,>+3Gp_;D?~s88Jϵ[*&j3> 5W(ԪPڠrqxehL);(xàP@I/xQ,wuD.kKp3w-jn} RMM{vPz 4r8F4>o^Ij䨾/O_iv CjSg񏢢'A쓲jm\O!$*ja_"\.Pw Z4-fjFu?I7޷h4K`qWA$FI.\$ѹHasB" #D2hgNʼnط>O*o>fI$Y wR- xf<3Y`+u'- 3I3#ԙ Wz*x3Y*uivBB)~ dx?Nka묚vSKH.C\@}q˷}m\ r~SF^RT%$#0΃Y۴=a_BZ Zi7u^ϥr׋w! Y?sv!^.: p@qh D:9uOΊ$> .6rf$.eVYDnSu/v\/Aק;q>V&۪ێaeYirM0tC55N|Z=Gx485xh4Gq&,KkMNs};ɣ~Q\V" 6;:~:`X\Ot|*e3 $uHA˄CM pde>F 1*  &bC*@oDE""2-hZ@aCs? V7U> ӻġ͕ D ZrpՊv[{ۚCsٙl0Dm_ULRtA6Ajt*-`'%(gK*WShNR\5gc²̙Tj B8I@j54}tܿ{b@,9ɘ!t0*T{H+ף\7ǣ+s>P>d!4fcb}i ]``!, C0%й$cX%Y؋r!T8;k#/>JfN3{\cu"-ilyЖ%EVfb='r5Wvљ`$V/*kKZd괱-¼Jй] YbuC؛x: D8ZV䁷sMhzECubVÇ܎̳3xIאY+PBmgnBbX=F[?u i]]РAhTÛܟPh+OY^[3τP\p޸. @L! (v8\z]&hDS;vKdRkB[ e{_(W,Z_8!ۺsڝ NK+4^"kVkљ#:cu<YUA81ZI%{8,BRgF7c9b1ҮY{Bum]IU}ҴI-LkPSE](\H|iͼЅf].]!Nġ:`5%h}3eWHώ( g}j,[RU-YIfK砰lE*((ESԊ#CMM/Z PFj*iFR+'[CG"$IHik0N+[dKKAKal,QP=ːxfX\腻BͤI4`h< 'Ph|O-az(MjnqI竹;9ZUNU Cɡx!@B|pcf R֣&'wV ДD zEC۪ ٜDtXAV.mWUramµ#HMX+z #=)ˇj9DI- %aj@J ۽%K B(%!-e̹p&uIexZkR-%2:&q3VDpqܒռ[;LS 4ueH$<}_ q UOh ₝i-M@$?FM4 65/ʍ1^@~o#, mN"C>82,:#tCq2() 6IA+'?(:FQ?2˗$6C˦i{N bJ hUŹȶ"%ȧy.lB=-pS(||MO(z[u`MO0Nц<4^Ւ,G>=t"RB'eo>E煻-ԕ2=i& PhÙX5i4ђ5M[$T!ڹM Qk?,:v%$ixOX̢nZi\nm< <%op]Kx՝T^˟yχ}>.g1qf,o}z,o},i?m^=( ck*8^ބxqz3lVjE+Y@*F}uo4L_dJ,?I޶Sȗ垍FD#Oq {q4V:TjarVvYH7Vt#?gh +Csrh-J]3)h Q{b(2zȟa3Aub7t:c(yjB"(.V|,q֋:9fyճ}:= ADe: 7_ i|/2S~<N1$Ix0 @^u 2ƀ oOHOE.!&koDFވi@3BB1I4*q|a6h&}58Ј}n#V5kͰ v +ȔѿHjUQKKG9Eq&hBsqd ,4R*y[ظ;Jaz(!.6lϟaLp@RRWm|CWnz]&"x39}DCݼboȏG>9Հ!1M:)^9,{vD ǟqT%g)5RSP'x]]L,d[ҽ1-Vȿ)-+CtxodKc&nfz"fE!k?K[n7vcE~͠D8wGfZj*lq~.ܧIC4ٱF{O;2z+0h;,EUBӝ+\'F4.|ujlZ:X|L?r. }Y:7llu,H,ط8G6MQ(Uz曒-26`6^rPClR~#̥^TxAB1N4LNJtN{/Nw@^f`9l#ԏ[VCTFp77[և?p4bβsr%%q^LEa иk9e_3f] KܘĔı1St|R틴pw 6,7|ٚ4Ŝ,Cc7>n_"R4gCckϟOEעEٓ^,:c#OrB.cwwH`ZF|RH2uX?8Ͻ$1!99;(tf2ϻԸGukIfNv_HXRӤSnVov8k)s/KDdb n {ee9EOwcڔ8x,V %Agl~ݮn`?|ҶѢ#` DVH=#quj6lq2 UHNɿnO-+fRHZB'hU ?޴yumU nrONL:71]5WlYf>Isgd^xsc ?Tc;2c;&8S2^ IGGO[@y|%0< [N@yfX2Ks3R7$B@ļL{k?] [ZEg_YZ~3pn'/R'ӸW?y+=og-TXп[7p3{Ic7b%. to<}COz[on狚%3[&%̧{9^Խ^쓪*OZ19b>$ghMUmD Pic%l7IP{Ջmf { N2B%KXL􅷴c}%fD. 1ƒx1%${@K]c^Rkbbn~B:o_ØȥQpRcp4c OXjִ C}z !ƒwLAxn~Xc9Ei rvW*v@ . @F e}rÖUp8a:EB_(Avصh6ސiκ0jx3OsrjCœyCq}>L"u4t"Roۈ1kBسePm i ]g>jvx+j&@e;eֈXV\HZ3fdIŃuojۼbf:=`;= 4xxFC||j(<͋۾v0bud^^BIib&ӣU4+Bފ,T/A *8ӌVh=~ yK+P)-? a` %%6=>&FAq_'- ZV{CX!M"dkTxY.!z-XOԵmyepFܪ"Pny#cN H#L8^}f= ECvd|bZxr'9cd6Xgߩbļݒ58CNc; "L@Z0xp,! l:p[ƈ7;*.h/%R.K~O]Sƫ! vӫq|[HU2_ (0v4/e'(a(Yhh%١;yi Q~uh0ہ_.(+q <0ߓ1}yޮ{JLB=P\uy`BnCDKd??ף;iwVVm,EGO*Qmc1c&Vl53|QJ冂%ӡAMNUy\U:$;N|K>"Pт$x<`ю]}z~&*sn׏|< y l:/*.tػ#E#:8n^(2 s9شdQh/ 9lm{TNDFDq]v n^DZYٺ:D鏧32 e;'\\a߳%C DE$62o ymA,fUlE<:\(Ao859Z X*c8geX, 2_!4Z^6D(wڨ8˨lx˔eXܪ+EpBD?J[B}a% ?NoG Z qv@F4\DCw ~n\lsVt/XoHJboUkXudjښKOZ>/!~`UT6)~C{ct3nW6\ϕ<'Wx]sߺ0\ZPdRU519od'{!RxhA޽ 0%Ym"iBr)!/•:)gjqlj#q.5ɷ(Ã[=$_L]>k; sEPdTc{ i,FZםt_f-lhbiXإ,#hR9*(ˢ^Q0!+"cSFfl 6C,}-Cmʕ<7TS\ʅtjo].D<'9Qϋ{^>N^+A4(d6JPx۵ELKrxrvTmLTxw^ȽZt ȷMQ$ZXWWzSXw <^Ap`eRT ؃P2@C@ܿimD:rmȧCrA}rZ'1r  QoC6IQm쉆iI66RG+൚q AN}B&7K$,#G1.gu4& 4֊8Zh1Lyk#_{EC ,^9,C( [6 C僠de+}C5O X5dZ#O&Z|I`ـ'0M'p4 *m'/ +15 pz%_uy'cA1HB ^[ ){XTa\>];B&-GMYEoVl7[7R:T(v^P׼RtS2l DrP%A VP3VFjh^LFXuKٳ72Es~Q,d5L~*W H_RΙxcg nOm4B:M(7P2 (픻[!oMLYSp{njx2͡3JsaUSD9WQJ-=Ǒ}fɨl7y?=1$al$y]EN iP^QVfW>`*s T j%Ҵc$>&|*[5: ?{RX}.%)#EТmwqHF{:+:~!snJP}#El/(,3l~Vaʖ]!{eiMrh[)|uɖ%ERQlhjt)uT4:yd/U8fq XHb/t q2P&4 ja Tm6K}GV]rBeb56뛽G%s8#0O b$=*HVg=XyC̼,Lz6ߊؓ&l2 ΀`DMiVϟ@ ŀЪyvm-Z^3ш^л-B| ^d1„{nA^\Y1a Y>ˢ\I ^ /ʺ֧Pcet4T.vt*S5Eј\f5Jc҂E? <&ԨkIZ2'ͫ&GD$|_j< <652-fi&Hz_"1LﻈC>)̱!Ҝ[/%C؎ZÎ:|>^ G tX@t}'Σlzq^l}q>9h~ gcɝKx?:E\~4?mh}F?#ԏ9?wO~t< IO.v~lq?0؃g=[<;S'g4 +xMQ[ |Wp:@q/K5udWmc1Q}A5TT~4Mmz#;iˋ`/.4UڐU"$ l0 cSd`!J.5F3ϡphK>^#݄[>X(n^eX R2VIMB@Bޒp5XZBsԿ+#wCH(`lkf":?f![ 'Z+NV"=bxaO˽qOi2 *dPZ!k%.h K3IL󱭄w_X0<.4$9ܥc۶)4R84mwYv%$'eiD-Ie$H $ݍncK`0 3fD+;~edk.ۋu[>HˤH< S.=?õ d[̊ ^WPdYJBΊhzcgQ2k;",A'V֗jY@2iﺥК=_NV l8ͺ\Տi\U]b%d-'tL,?BeuG00[NϽ0ܭz]EYYyʗ:1ÊvqFNc?ý,O2ci'vl)UJ:aD x*ET*\L*.-3h%rsZb֒iohY_Dw,4 yra8 w3]ߞ#.+~ 7J*Z$6 ;ku]~(l9l:huXA_r hWknە6zןUJ߰k եBlDwǯxZk\8ɕDⓨGڸ ,: ?ϋK,h:7Ra?[0Q@ueMU2 2++6-c"ڞaX\"Yn%Z:Wpa)ý?ErJu,~7Ӵ\^m;J'XɮL~}pRY= 8A[΍<|'G2:)N0s}ԙc9G"Q[>`4`$Y?ml=acS b" ;gf~®PAڜϋ.#<.igϟm/UGcI!^ʌ`ů0 \ θ37* 0Y`AKG~]% &pE_)m!FnS"NR+HX哅/\bI?ߪe%[Bm3KU &0+@^򷦥IIiNTC$~ÒJmJM1eRxݫs_ d[Ľ0L3UH@IZ}"m 9z`Q+}o+H^o9X}D}yW~\^]!iO}o/u>_.2`*#dg9ӧѧ9~^2ԧzHҕ,fd8KwxQ_ib[wR6:w[+ 3T(l&2&ެw%0/l"z1W5 Ӱ1¬΃T!l>-fpͷˠV +ٛ崞 5lݑ׵nbk f؆XSetW˷Mk}"nCnP6_RנRk,+A;+(~՞*>(49sZ/wr,{Uj*C2̮/NW^D ZOs6tt"–#F+ډ@נ"mj 3wHԄ v~vAD˄ԙn0EN6w{÷%M^v*Z9>E^ftJVC PI(FbM%'qUͷOzNߤ'Y&lBпsJ%x%5QBQ&MB:nߜ $^"1fz,LQ"XKͬ f_`a|56y)s{ RarS5&3-'vO%X䦖|b(:)6aކ3wYZVةomP0Z~`%.dEfK<)lK/HV!I%M C+^hS]2 `&[n/b[ ^2kr~'LY|L[`o _gz;WȲD/̚%e_'mp~.3>{eYقmf3{f /wg`aߪlё:&s? ZŠK@вIjqV=.EQ:.k* <;UΘv菼9X:?ڇe܉;Q!nu&3ԟ!nȥ\䈥ΚE. {LdW~I8PS(_@t;‹}V:\{J~& wSsfgɚiEfhϖ[(3\_Պ_T"`v~0k="3S 'ι7+ g,#}J/K-0%3= +q=G F_i(voݠxr^<>*o:x&UAFģ9 Az;=sL.&qN}[_4l{|ʹI}Of2}}/%/dO.}knPJ}8%ٖY }vgL\S|SW O?4{eղPkvֳOŮH -q(%ƪ}iyQrƑ /ѩ'VP,sn71%H?;v8`yݹ#o2$o]*S&=UHr6W0^=x@ɟ?^:+I!--*E"CEQR"ĮLD&^ywaZ.;wd1#З~$ $@\H=2Sg`]a 8@Uwd} F(_0X{N1@ ]h)+ uڲgf^vfL*jk fXl;پDv%o{G" [oF^_O;4#e[ENv/ġv*=/TDlj+Wj@􄓺!j(rR&'.V_5 Wػ|Jg.ª༎n2+]0[ ѮIUr3H_ڇUQW !n"$,081df+TdɓefQAE52D~ ɞ@ty`uCcMZнˉ5qt#{,%* 5M/ d[d+ )Q2U=_tNOΎ%-Rq~r,xb9UAX#N?P,(x7|^RT?n.X'JIfggR6a}aڽ(NvmO՞W=˶2U+@"j^4OMsG'jB#Y񢈦[_ ~;YΚuUvYTZ6wn5Pe--w ^W暰d .>GO+Ծq] wZ0}[7WXKn'R=ϓHDpR]QU kw5܆죽z3h!͚~+I!> icQ3DEPLܞ0_<"y^/ c?=Zl$G%J'!V6()7O`Qq.m; ʢIcl0tI{;ʻOtkB/q v(uۜC r|Nyf Zw?܁ }~&J5tM\ iAf@~;X:z Л%3n%Pz˜#$&`.t ߺM"ϙ{?%3?FD.wjnK~Id2.2EO|ʎYڭs%| ˆ>{*MD.b<p| /@K26)S7ޥ6̟cP|,X[ /4!VțpFn;[TG9_U,vVDɧa2H8'1s}_@} &dt0R=}E *B^MyNSoLx"9D]X$6i'\f<s jI?հH|,\8HK_m>NF/4 63A Ή(&8Ո H”1=G i)^+b tw22+ű-?ԼwGaLJQ^'N-_Tdk޲CE,Iǵ%Eh[iռj&HagI̸2TMc"]-P$A' ɿUlS a)DUSUO{.>2.mf 9!Ԉu!t-"f0(AE4cb1ܑdõ9%8%QTM l-ԽOn9H9qa<○w>RTZ~\$پ}K- )^ y&?rsshnrsN ɟ+@Su6Nn6_Z3|OM)$ ~٬D FQ܈\%vLVQ))Gl4YaIж]N=wΥJֺ1F{8x 2%j_~sE EPX|ݖ~vv:yEw$Ù%\;!l t?zo{ǡN݉"vt}*I'O&v]>鴛&4䄃 fהy|1"uKc}{F~싑ٴ7LʌIh\wjpvz\4 ܃~o>H8(|G,ܾJS_/ͷ^W`WpOWv#ð}*r}f)"da(,4ddqb_y#9=D0I^j` e2.]7sJA]wG&JNGoD?a^!3=Aax0~E?<1o0_zGRoȮv0ߛ>]6QWM.[gw i֬KzS5wӒRWapYM"eؿݩJg7%dj%H'"kt>GD,gI‡c"S?VR6Ά@v'_ 0;\nUɷRm 1C9= Ԁ?l9c1FJ#w(?ei+=hOw~~7B)7Ftb ‰Oia"{)MiuIYKɔهKsuJ5vm -ꨧ˾n9ӺScw))z[- $eF}kj®[h;0l8wKGআ'{vmvz͟h7~ xLK\ʚΑ8l.iq|p`:qlHҠI8m8F07 .gEdjav!҂jt+QάTn keX6ӳ[w Z3s RTٖo|ā5%rIl;e_v zN^mó>y0&w\u&e Uuեx8[!4Ӣk'P o&V,"tV=d% 4 +24=j%*R\y))*^[8dd*hix;W~^섒^ :dE ~S9G֦;i4bh" sըu'ͮ$^tɶӎ}dwgxIZ}ZGM|x!a;Ve]n=lHE NxmqpOLk$lw[<(O!xA,&F%* ĬDa:}.we܂Ӎ.j: "Ȁp/? M뷎[?AhO@{çNQum, 7p:@\^H!u|( xd>p:M饇B 'cy?q [fȏctS*2ԥP%ݒ `/}E>7|c;NsprA?+#04ƻvz %P@ *\LHL9 y,a-nh剺AN&3]uh~F|{ҍK'"6 *,"=b \Wإt]:.۬Otn{K.#И K1RY~p^_*D/!ueݲ./s[˝Ug!Nc5͟>s~sBoMJca4B,mD҈AGed~sJH/rdp3͕΅\ssw w"(b<½ ngx|Gx3]ǃ<cv1 &Q Nύ*!!40NܠD\{~7`TS!S/"-HS_!Gs§xhV2yNMfGBq'\adZ5 /lЩ0ʙ ?":4W bWkҰ7'Sas)iLL[EW2*V}nm=_bk%ܚyԕmDtӤHy`U}f=pFps^1;R8\+M;\Eb 1#zs. Pt|<>(l@q #s.[cl0dvcN5;3sUBP N|/lح,y`T~ q|J)]/Buek\d6$3x# J2J( sxct ~׽&#ɤcR0#' /іxuS,^Qz@^ vW Vm},EU(1}}\FQ|w7-2҇|:&F+O D#]zlHh|m5<-TAK}Ґ?-`*h8R*Xrɻ~_Aq =zn~0_T)YB /m6( ²f.o=3;{ AP'GT?($'fl t?7J;Aw2pN;hȌ~#xA[n$O\dB:^:=tGn]Y./#us9ï6g.ƨT't&N]([PͤX4z 6/NwP>ؿ~bw1n 8,›RȎ9-[ucAOڃUI%f`n9~2ҙw7CـuÀL@obp[;P w4 Y]9'e?{`G`lpBoN>AƑk}ɑǙac]y.6<9ٲUOC#TY\:0d6 ǶJ-5?lWr{Q6a YRԊ"A -/ lEUbL@DSf QY(h5 ].Au] +Z5h]VptG[ N[M YUt@@'g}*Heo}^6'tSDT _TP$q9H hR )g=%h^KcҋQ2vB%V*-ԙ/en9S Dqj5ѿ"NثgqQ:@] FY,(`. Z*{PiTɓcg| klUKPNr3`JbSJH1`(S(aY?ٻKU?nu1Ą)~T^2ho! a)x]α{nlzGn#jp}]p?`vj/FX^^l"]^FX2p0[pEkñvޡZ.PIBb(JBANCXbl4niD{4 ]th}r: K-nF@s+E|8O߶I{.s\R:X޵3Rļ'F/H+i~ mIcK .uCPd`.!{}3~L1‘3P>5<{#bF"8Mɖ4lmA3\t f1FX]-77d*PiyA}ʏhuyZy/ɮ'&-Ki0rɍw'}:Z=4ƁӍ;9l9U6.ۗԥ',3(_SWrq/+zI{ |_Z7P l9P[c9P؟̨CH0{ KP\.jaq,-< }bdcyOwuV(~pJ( vHC-chSh'hPϤp!do*l3΁eTRZQ%,?1- UYгuWd䮈c*L@1+NS3A8y̪N`gΎ.r³tͦ{E+g AAyGFOiR\YIkaSfw1L#o'w"OFHv@#rإ1z l2͘u/ mHyT5m^Ȋy4woJ޷:{=4؆wʎcfc5jSL|嗀u}q<;/Ez@L&t::-+r7`6\LEҏ'a$<2@I0=M{*y)8gpAy<}|YR #,?,t{2@;ԢqNlB`4aaXm^,MO>8 aWfX ؏"$?ĹfxǼz W GNsXkwYǥ@gϟt6fY!K~f,1@)Cz#qf1pu΃?+d=\~#x>sĩ'jMy֗t0l6aUא{ X; 8S"fWEr"Yd&$*mH1vI%0Պ5(JN\W* >4[3w!k!sg/}peiV/" .6PV*ZnW+ze9pry]CJl KF_NfRi*M]/^ۇ%-İjfFFFF#p֯_XM79JQK8eFrv3Btn}jbtlORiۯ7F[׿6oRvnBh1`GY|1V S+1_4˜D$'=-0kQw{Dph\\m QwewSնrmy؊ %nćc r"hxZ_Uex2 /?gV׀aYey}s:òmkn=9!aS5" 2I<*9kw)w,^Aڰ*Rnwz::2-).Mk҈:MExTK[H ^tmd.zKO:1G9GEt=W> gai %ÿf{"mPRKU!ctډ!Xuu[PyU\?{Rs榸rB>w`ޤ ? ~{[{0'pAqJhhA52q9TZLfWĊd'[^&78=adΚSTAEn:uCUJJUz"%(zMubbrW+rYo#~h,k%-J OTJ :JLiv6;LlīV}XQQE3ou>zyV8.J2 f!nD F#30cİYFX?}WHM,F^<J"9cY4~CuoC% ʘ8V1 ?l%7vH\᪠[H%S4*HA/ӭv0')@5V>m4[.VrDZl3+ވ[,| 7O(S1mƁ7Ѿiz:nw٦cѰf0d9'1p~w~Ϛb;~NETanTM{@ IhyQ—ɬ;= "By܋1@r}5G@oր@~'X=Hn/_f&.m8Bt) .L2pCC8oCRBH%JO@kVrj.K(݂\w7{-Wk+ (LA?ܐ_q5#p8}#IRc唅sB-*)U!D;Zֻ݅VJ&: d/Kd-l 1eE(ס._keБY^2rA|L#57J:ƫeFܳґWeG?[rԒλ BvDmNo [da̤Ub4EOOͷdvfHgI\yhH@ͶY! e~FN8ӄEGvi۸ov-&)EEM8O[]Q)IeDnMr HW0ޠw44&&8'-m!`JeRGHK?!kgzޠ ]Dqm_3;dkLBo#8p˽' M= Sx=_jfy% <wAK߳7Lj'ip{mtǙ%RIŔ<}l:wvEx﹀ӀۑODG3v#-q8"5G["B1\-K_;~(%61nMbca(ۇF:$qUEkIOKssg)Ž f\DDiLҔ.{)}^y~}]'#xxfi {MS?oŢ=kh̤Uhä`xDmpd=9P1;Fn_{W8TB ՏfT фˣVl3h=B5A녕ح0p/ H ۏ*(hCu r6P iaڕ?G䟭o9qȿX t¼cbR̈, HX:rZ@1K.iṲZ,ʟY-g^ښ2U=e9Mvx3:Ep->~{F,/+;RL/? oIdd‡ye4&>N券ʯzq|.)~8*bxI%Rmqh\/s벓DyDuޘf]XQPc1˗E )\L z+,\_~-P&?9MiKXB`Ba1u!u*[wTP//ro;5G]O^1)b30PStd<-zΓ`a.U<NcZ[_` )pA'IFb*F.ϴG_?vzEYGNkjf ]A5:=U@5GT'NU8ZLԺ5ʇt|`UgSI!ѿbHOsSr'QA5 &񈣀@ ,J/\O=l#ǰ+iN'ui53][=Qhys,I ԰drԸfr5y-.nG(i+4x#1Ƿ^Rixؙ} 1Xg o 4|Iȡo~e& x;cN2qyviN :{#⒈-Q0ɘ#t50HTJ՜*==i`6_ .ܓWe51"^ P,İ޵G.FٸC4Ȗʏػ*EkmH7lPe⭿x4r9w4ZR} Ez#ӠroCXAb_fڨG#V/`\}𧨆>9u" SuY\=D*$,lNiP|DW5AT?2 GƹO;?-q\EeD -铞q$M"zrYng1c!˒gfpũ[u6VR"p,qNi p Ze{;{3htQKLpmu p( r' ys"TKAӁ"\ 0*>kygWT铦Q@tWEn"TMk)c Hu5?G,*e6R*79*J + @6YW?IM!@4w%Rky˼(fGjaӫ67q7j^&b;J'GBC~ K*%p-h>Yv:ʇ] _/.t5:,rvt_~S@b9,ճ.eřw`w?cȹ >B`R#V *䒽0*bˀl6 jr- 9tZY5 ;^e*ezk_Pj:ɞk9xg1)c[lvV@׻;ۻǵ$ v,&@x66%̧f%Uwo[]"&]g[Z+|"ݡBrT- +5~1/_~ZYY*[^3Tj"(ߑ t(W 9M& =1c fR⼗I FA[ qGj0lu[E5U;Wc ة %n5NKtCNcj~Ag'H~ѢnԊZ$_ B(JӪR+;<' vW3*/qF<ōGq 3.$ٰ[CBB ӜlvUkx{rJyW5n_gh *=&[\8y GCcV5n5cSj( bk4aJ,2{& InrcFrn~kB++B\TXOI#Ru-R(d_5r\&M~șpcZo՛mhހM0PX* ;֝7D[wWPy!\)7;4ŧA.d5yeZ˕?Ea.Ə'n@Y7TMHe ut3`=:wr1.P=LY?-^.5tGU/8$a}a+5rOIFf)~lh(Ou!G[1g;?j!Lz )Exnm&E;v+ITC T.WDR0Eu +>J f X U /hɮî@ 6+B~h(rPK5ؑrM 9͊kĿt֌P \mc'kGQ3G:+b5C%ԭk&Ο^;{fE6IyfY/}nQeo;,р(% Pʧ۲f[c4zRO[kٵHU4-ƞ;>&?ܾr0&97\9q93H+s <,8@v5=/q{l Qbr}f-Xwca8@[;10h^fNȊfciMOF4dQUwKk*3*p,7dz{z.GQS<m{D1P"~Ru+jZn&gQYI5X*lWw^C座^,UV~KJfת&*00V& zP ȠW#~F~]LsO=f@$[#nw"ґHBp,bil8{;,{NiQ͖2ru`u6!'T0;0V,5>O;kNw@*+[qLYu&{we#]A02KۀJ,Ewa=J8,U0!~[ZUyf<*rA7o 7/+fxX"L9zahn oj5j|[ߩ?>=;WO`Ȓ* ~UT &|*7~#`!foyM-{ekz1/ܴ>}qA݁ h7$1|vŮυ7)z)8 8QAɞ B|և~ NN9bobFI߁" j7>[.C6dd198QYRN|0Q3x֨=^ QF}1ɦsݔ"Ǻ)EPѼ<pf5;DF<&y` Űn9(a8Ii@ySxehw~N0qh&h %KȽXvePTFw_Z lI0E/hCn 6:o$!+%ĥne@b<=y4s furF\Ls(%Vԏ떇4CfnD(&&il@1.$ $0"^)O3oW&W̺ZI 53OOuRPNbR>y;Kn2Ʊ AKNhWw4t+t-*!HrdXRa4;X/IIr ldɑbGҟG_vJɖKR%˰Czaa׌[g M(z})N?b$,A̵nx7AГx}&@I;qu7mi̇; C`J>/(Ս!9 c@J4{ E^N7 FHJCLlGuZJwjMUȿ+4$X5\u=|b\̋VDdzhHnl1Sc[ >v?Ka 0!O%k 7{ jx6X[N>W.P9iLpSWLpe^Usc3s)z8P0܇ofMRJm+Vc#si7"L܊PlxnS8gጙ#WU֢dL͐Ni "og~Tg,L ;ԩY+b#yTp/&{aLIvgbvsS\ ҕ cB6p͂~ayŖo~u;N <7BbU܅9\0$q 7FUZܣ*7e 8aQ.ܠs0MHygi񗟯@h"ɛg՟>|zr{oj~V;Ė`p+Ǧa b')[2Y!;q|o7- ,|~ْifO3@v+/uJagL>S;^8S23࿝u'WXF p*c1dFaL_/r-t@;&_=}IMu}`05r^r=#7_ɿ$f 6K#~$ߵI{~/4?sS֕ H覎UjE ,^!Ji9ꡄC}V6x#AP}O|R&a|/Udw  N#Н?7*;Ln9C@-ŹJGEK_cÖ}DI^zkƒ]~Rı@aJ)Ӑ19xU Ϧ5 KX@A-arhUORL/Gi?(b 3j jj341YL"fr"5MŲZq1 %Ǣ9, [NNVFa%Z w0{x?^'ި,-f֢}dӌ]Tu]|Л{bŬ|- yϦ!c UΨDQJ o6v6&h)7[m}]l!I%zdrxY}R+=Px`j[D!mk[jJzV@JcrW8sGގB1#E?Ԇ/_/Hg,6YIaD H5~+۵;t'To]}8]ccxQNSkgXPBzHR$T\MvoWIhW^*% SHM~j#1ÍT7S AcܚSO!>̷ ;,tHUu }3(Es,<#Dy0yVvU#͜Б i8KqB1+1 돗aYM| jt+ؑ%tRn`$>YHdz,[PżmcG I\ =̪_]"Na6`F}5eչ+(NbY y^SXg&r2 <\鿔m܈9վr_#4*QAj%<g{q$Q~WJlGqnUl_zgf.#ѱeQKJN<~Qx EIN5ӱDUP( ^jnn6RrӍhlZq$xVtvcSV9r,M[$j"=/åQDoZ),i1hOIY'EvHdeI)哥uLӦ-Hⴥ) ԥ9ѷu&a 'hf\"M ~zZJl|f,7( QfX"n7;7)ZL,6X#k0I PD1i1$9M yrbXXtfWlݩ↹)4RLiK+'Ưt>Fr߯N4%M }j4i L*N"#3*ׅض"3JGe RlfA![*Gf Px Zˢ3 }jD,gLxza` o؋ZtW-= UZ'|/*OP9xKD"ڴ>{ٹ¾R'%xic8Ӵi -߃ 2-]b%m64cyfJTGFh%xhfo@ɮ Eei*zU&J*V+%Q"E5F73*oIs5ѳ H\e:IDmPt.dU4r;#??.JȢ;.cQ]+>{T'f#gn\tndHc 9ZȋlN9h,c)W@ch./ %'eD̞2QXƂJԕp>ue,*k\ uJcxa]4I?2}g(s!zпOfZIt[6^[QXpÚʧ/VƣAxPz#eDIV1QFeX$[ik*ꘝ@]eWYqoZ' ̙C10 unӹY3WE͸r٫ U3`Y1L4&}]pB;@lf'_zA \1K'k b/d`f]8 Ո7YIdUԜr>mzFI\} S %!_Bɗ~"_};9;O;C g?:t&|I{L-j+RbÃ"TR-8^4o5Ph%IhG2}oM wkyP2qbx]MAk< ʇ1V1'd {!Q1۳Jس{)ӳGW7?"*(7\( %'ljR+!k{S|SV,36TyW/jR]g. G28(2&p4C}%lxRn:8'wCN]0`8CO{ gtepG1 4%9uѯSz(-{nTUs&? l$cF zcwxtKEḔ0 %\ dNbZEAiG]fsPwSXh>}iE$tgq"~Qh"J&~p;&x 4]N>2*) 3J`[ۘ"uQ'Mo,;_vgK/fz^g.C"W;\!;hdq$(7:էj&UN:CL##͔ (*a8,:-iA Ӎ1b~Wzf.MH@+b%?á5N"g ;]H'Epml`]j lUǭ@>=<"2,TERRN6C4 d,HJ .(Of8Z&̑z3 ,bPf$^9=g'. ɶWdD@%gBx>Yo4GC|mʈAj/#(nY4ɰImڶ^&%?K=u2:S q1?MN!h>I#`YE0 w;~'ŴH݈omlpRKٗ[o^v.!Zϒ&0@iS$BaHyyHT-g~|2J%R9H7N+)9S}IQ dAi cİLv\%K M TBXiʵ#\[ݮ13wpxӌ$ILvoň$~?}L>-\<4 2W0lX, 6= 6?y$A  #G>OxP(?bϿ*'=GT5TЎw};:{,GKJLvM]x^ʑUM(@j*! 6r%$UGr8*R/nC;B+݇j3Yi -U߷;B7Rqp7sz[I]-V4@#,fPHƽzQS4}*DwEM!Nx @ѭ9iOEqvtX`fϖ΃uXs>/9$0hF{81E:a/CΧ=׮v+۟Kē4Z18{:)¢sZ`BDGEFhU[!髛,=KoHJ &-z]3}A]A.O_," WI Td`#z;; ĥxjIR:񀳆Pl911*FUV^jI=ގ-&fo1F//sKUDŽ2zI1I2 !ف`͐]b ,Lfp ?oԙD伔!^uuQpZ (2CQpDhN\{JI%x=0LRV'UCAP6s'קGW.#+h?JJ.#EbJ .Wφz[D7z/ 䰝xhu'{:,o?eaکć2D!ɉ/7 ںy+xG_k$2ZXn\\˒UEZf!Fya-c߇c[nƶFZ-|z!wBUX2<Pt=Z 4بy.gRoen6M̃[A@\z, 1 Ju;tBGJmߑf7/-a:X7F2Wq/ 9W&Waީ峳LzZ6KˋwEe)2VxZM_ yMڠR!33]9KP'c K~2I!nKt7Xt I)G_R$9y1? Ǘ0I2ksqcѴ'\Ix(<>S~޺43MBܫK?!E;_y٥wWwKΣpkbnNWJ&l+ sH?F ח?4QH<ޕI]DCr>;/*r cD;7k)i[,OHy ZcSǺ̜;cYmDJY°^6#NO:["FZ񘎓䞕rMHOv7]8:Eȩ-'|Iwm:TXN.-r-d#Lh>X{%\X,B {Pޣ W\7"!ڕ}8ucDu1x9:ufԅm̶)+ky57)LT C1ɍV(.m8˱_XoAV&r7 4LS6@6AyeIHؗIEG֐b2XcjZj5 ħ3u6Y 8)9O$F^Bϥ^"nQF˻xT]/` &C >=YrWٕꔡ`w`!]t p`NLjoe!P0YIVM6^HA/Mޗ2=B.(Qu\>t[jLD8 jz[-uk~aE(U/ ߁EH_+JL7S-%Tgς=+OC/wՎ(A'n3@t.A% id1ɀ"B VʧU:MF)[T%$ZУʑoG'C>e_Wb0+ A gS !d 5fE+({jGgװ V$ZqœrYșD;w Á6u^]`sSlj.m7 5bBV%1ԉoqec4?wKpьrqΉxŋ{i@MoS%ڎ(ݣEȲr*zdn(1JunT='`S0(l/UQN5?e=?GUg#{# 6~#5%2*|d1?/K.p׎ʸbvt"S98O$?g6[гSnY~H5Pzw2'(6)@ŒCɲ3WtS[S{;t7EI E Sev;-`Y"b {\J->X 2Nk"j&{!vy}B$y)~c4(]}eydzF|d$s#?шE <"$8 _BҮ ,ecg&ۉ m8Zj(;߿;f@&jvs10#Zz\ziQ2EՎ)jW/(iO 7dG LgTF kj)&θ/*DU!ڱ"XHU i5ګBcETvV% j ю(wﴺN>u_[ ͼ-q3 ZAseJe.%,pL I4/مqCAjpYWfzDA8%Fz5CBgYJX)JY5]H,L]Hp< }OͯdB0ɍF[*ozp,&;d +eDPh5nfjQ[c"mrpБpO Ko?wك=_B.~YBvaGE([ijJrA/JLնdYRC]CZbor]Q C*FfQ;.ws@IYbvp[Hmg_?];eT.XKXz: W[u+#mlzj ~{ߪ4-CghbiDKM tݮ$M orh2kdccG 3gs$aHd wqu}_^]\]]Y wt=yU]Be8j}\>g1J /8|>p}cʿ\VǧWp;"*nu:UK娈IXKVbe<<8\DRӅ~SźY&V~hP84HuC"DY!?Oa0|>8 'O.BEAznS7%6xցfPf1bV{[m Er|qq^ѹ,D;It *KaTX_v&?H~K#7wgNmϜK}Z]S RPn^yı t*C'-(*S5V:y@٦&&'D_#ppf4]QX3>; DZEtgrN@BN%$p8/gXH2rb(߾3vJ]:i1,I+IaF_)6ԭZte83.GI-ZDY&B4a҇;ww#%CP a}6PqVgk8Pbb|H_F )qH]Ck2⊈?]kTLQBfddr- kD_!Z]o6,[ -xI?A@QPae<Ɣ*7SY՗LadJK4cǑyyuvqӱy~|C/^vw}Ӻ/0êԒN|2e£r!i$v-.RxH"[BD*[^ҭfA R^%ʣˣ$r%-|b> k[D$'g|(& LkQ2' r'T5ŗmdkqr{{+,-/۽L(r!¨*Hׅ?@À}c#|BTLm43}Ѐd Pkn:+=Sx-' /f'dg3=/C\YCJnL@f˥"hA>e`-z#Gpe2$&0F4kVMN*6Q>a`,R_W:A/$YoQ@UW5 C#AP}eVMRlA(Q G-#f~#v(3vȁovLoiE3¡Q>l|{" BN-5:63Gp]D&O彖z&ΗE}=i'DuxdOY}eHof܌dVgNs 0'QEMdnW6ӗ?6l4I).cl :k~vuP*iFm*ްi*[PZ*IkPZ)hTO9Z][x%=!͋7Gh:zMzN \hT.a O `_l`:WbIPvxuv=8~1<;, t[,Dv/݂8D_w:4WIĈ`Ʉ{JN'!kPĸRRW9L*?RqE$ Q̡_狼!g.*QԊx @u/e!TlN#;\.мe:cɏ\GaxA< Nx &:dMOO^R6L>~6ALtx@ˡxӥ[JxW N2Ӱ#AyKO:+mF~6\sɬkca"QM{TR0Vk2Oh8xFҠZى>>9 $@I3.JfR`@r4O(JGJ m=<=N$R;YHլB/d(ˋ4:~5L:Surm7q|<g^ۢ%T٭3ƛ:U[SY^1=mH$O{<%8>F5I#ƵƵybuE)Frlxɞ!=ܔn|/8P$UK7PaR]x@؉yfT)hJn-PtNǗb@KSGP¼UN{y!8iTXzBdܦHkY$GX3^^)wܼ8hHUY{8].kJ_,Z暳"Jl<<jOKx!.Oa^t䲃AM]*FvPjrm5E!TZXWru(;`|*1xA;vr(>ducL6*Cg*oIpI֩X3 '+[>̧-Iz f ^)rLɑe"35x4 <ΖMu6'xNb 2xV y4>B#w,Gm}xJb m%Pqm gїzNK8oD]8 < AB~k5V㇥BLrai!)4a;Z:2 [lH0l{^ŦւbC.o!$ S'|ȒQmUG{ed^zou~WOTD|njE}Xplzݐ#W@)Nm=ZOW^-`R=:;OOIS3)F VӒ&aZpj>/gc#g҇ƍƆLR4NfEL_wPlSi# r"]Ϥ Ϯݏa]g^f<ƹxYżkkڪ5a^gk?_b^; X(g35-zvFB9[N(JyUtjL:`NnEm NY2vQ7'yt5g>6dђx{-MDbilS8='Mzٍ^Ə#̀Ui@AjʗPS$,A^Ry 7=UbG|X uR)#dF?"$~|B?bWQfNь\AnRҍ\G:FwHM[D=}DqgH 42Ǿ޽(o"tv8rjoG|&|e`KPfId̅Ś{[kR$9hhYE]\YAL~ Y10^2ߢhQ0͓0Coy_7/!o>?{[4GI0G_HNw&d+ أl_p_f5ļh-Mԇ] yp#K7sauFUD(L?QLZ̧(1@D2z)2/Fp."$`ŔɫQ+ x z咼Ř%J(W3#VM^gS㮸E8P ޫD502`ӕN)Wn 8$ tSF宦zYaD $)FFiA"d~̌iRaM\FΟg.qƚ5[N:M,e+1i<3Lbp 2j"! Hk;̿C7#_]QHYjWt^AV (.p0հl8+XMPfٷSk4ơZ9- !n6IQ"P̘hKa6G$11I*Z344U$|Nw 6]_0 W*Q(+nŵcIq\r{#hvJ<&2d$[U2:eo~/U&t J6sY?<^kLc1fl 2qX]N on;\B65ZvN{U0Ƭ=݁eJs1pOxk/իFwSXӽmT;=x l6TuYQ2A,Mm D(5R=p=mi[+6+kh|NhcFee/Y.O}S%V1Cw4!U{^ &UҏX\xW}2E&P#MP})b.=La0tKi#eg0p[dkAUw2[ZbP[(ue%-YI +/qz4^rC$7[#~αsYG,~FK,~ y-l'̠ݼ%MXbCƀ f ]ZYi; Uo-V>Jhh\5ji:j|JTT%2b.wmq?-%|ˏ303z э7 G$\A#tNUy9߹<:3*uJՏD$[5"*8-0I:de,[hfM+Lr3HΫ/=dZ3ԓͽ]SB9Fxzӽ%@b󃸋!q *Iw&TvhѮ]iKh$w66xD#Lma:M}KB]ƀh 4?gƲ;cm8&neql)ƆL&ǞzDm\ujuҢ zma׎QWHgvG e(]K9 I-&+7U]>(O>CsLݰWsu]߻0:ϓygOŦBQˋnsO-.\wm2a11,pEi(fT7lQ̋hB X̐8'TNh}C\EHbr݊6rb hT iKWlAMǥr̓KU\$~}6kv}Y"κ2di-;͢),–ͱG3ڣnCpb"U%K˝3-Hb-7|CHm5:fqEdOϮ~8kA׬2Ž *3PkIGuٴqf6Pf3qdĚZxGz>KG=Ih_.xTZQBy퀧gn8~J #leFn[0/ukMk\"*SvdӜ$hKQF3&|r.Ddž-)v&"7mf&EStܦ*6n,s/cr!as?%a +u"L<9u@UDTdnk=C׈XQᓥnKem=*4Xx؟V$EM[' efU+d%+B,^#(mՉpOu 2N)6ZU5[`cfN™Y-`f6QV)2xb g9s3y;=<9b#KΗ){BN)p;}l6{I7M=]ŚT "9beC:_xCHlW;g/EXn'i_ZEwdVXfXݓ &CM־FYӭ;3RU,14-5"eZ,X4?.Go`zDJVHe&" GJ[N^]r p .[ n_2g9KV19# gG }KZǗSf"Yr!,r4->V@^`BرeM77K3} \n2UqR:aĢ'T"u0gAp%\ M0MJ"=ޞI觭G F[{W\nrRJ 4rbe.\jm:1Z| 4{ٵeJ&U~AOA[ApPjYȕ6*ަ^gz4oڗȲ]_-5UYP&/7\c.hqUv_WT5[Z]K2Paё :KLaS/ %u21YTI{)>GT1"W‡ ӕEJGJw'i9qIjrRf<M>*!q8kKi@<ؕ H@u'TS,P7yJݠ&^"Nx2Y9+-$4'Z_wy4v=髓^V5@ܗ?GMAz|o{\فcS0&$RiT/&V'Ď]]_!wo]K)~9/~F7 77dē޽:IՂ,L@= @}tCE/,t¯ )e^0z;.uQ!ot_Cխ&lu- &L raAS׾Yc|Pgۣ(pν&Oall? mCu?wʒuh֣bcТs{wN9媜6P=w\u5]yMru5c\J3_ZZԺZd!:++jQem@ zetf- 7/6G. . :MÏkP@VH{9dF.g?h2Sʜ llO]Bk@n`z[O'p7X X` E^x~"/D'Dؽ7 (F^$H ?QOcBGQ]TxF=gMTo6H3HUaxP#1 ~/9fm$hAZ P2uq}V"If6r)tDrqْcxK$siEҐ~2T (/]*Gk, [moV`՟X5=Î"'gCc#QrXџ>A/̗ow@PTfIՀ4pD\@'劍2Ḱ7Kl}Ƴi;= _ؤBOq`%rhbvFE3#^5[`G Pֽ Vp80chrk }e ftbL?̋ 'Qţ{D`#(:>MJ$Q2qAEpBrCyB$~ EcF-$i1"Ql0Sicw*!: |CR g[ (֒di%_t331CZjÕgnuVsW>GPa[w BPW_ }{hx"_g9٪W,* ,C`iZQL|f`2M幤%x},&AСɽY+]&)Ao`EnneL'_?"(no/:tÆxn\}.B𞇴`A`"}ǣ 'I@OEYWƿSH:zZMz8d(ejn/:j#E2 `4FQ~Nxp}y8 mpz 3ov;J<mϡ{ qSwOxwgLkLxs/-i|)?_:a!f7~IE1(z[NWu"Ł7 p-I! JxKŋ9w- 85~[Ls%t4!4tZo]j^ \#Cvdl;۩Fmؤ[1]&5c:l咁,dNq N-#+)w{?,^l;D\][]`rTmPD$k~6t7i^ȰnCKJ9W 32P' X]X3pYaHbRʹZ(ӵVWTSƳ=իYZs:֢"7;MmO.JK`!UW^ue?FDNNC_{?WIR3hE[Nwj4>CBZ<~M>K wZU"BfC~FG b΄yF:]Rh&D˹ 4.e2R/kم4g,t%\a<ʛW1Zef,`-Aoq{?X?$w.*>d>s/:Jf DL/^x!Gm}n7Fh= JE&}TY/7RksGw,nDewg&NAk'Zo|u 8áz wa@L_-2j{VgV(e[$"dnKnQĞIzd2.TYgwzj-( !+ |4R0'9]VS)WEmޤ AGS It8 䭾vB0+~ LfطX []9/ ǐ?=vDٶڱQo46E|SiGmk \,+s]rHrC7_p7q>F ܫRs vVeSf}+jkdy)9#M4/YnfOʹ1;:OOzgawx i ,x$aGFD7# m6x;MdIQ)U) %;+<;9_n!=e:%cY*zgҸ*qsUzUOdsz'Y2xHN{ˎ魙0^C4suaHhqX.bǼ6t|[17][M78dr`|}>d\L͐dþ›bqBD&*{ =}Gqlb"by|֟Xi<_!lnX" {A`uKD8*[Ğ栖/xWSn]0ҠՉ2^J#]%BmӛQ`jC㰨h2 @T!xI '%ڶn)RpʳPlw@̝L(ICY0Ah,\M!p@#" eE]&Ds?G7p:/OfC 1! l797 Qa]lU׮:c,ѬE;=.]æH gǧuH@s’[6Y? +~7C8DLS%=eZO/Ar?za3"mE;wBDB/mYs/I(" RlM4J›xG{4(e3g; {0TK B>w8M8;Gg N }|lrR`Y~;~[SRK8^ v:6J[m󊵍n d`u wj^!"!ِxh; d>J#/{ɞb0& @kinqlDN™A0ʑjA֟qN|FS& iq.{W5i./_lUA^{A</6YwIi?ф#홍Ъ=y@ju @y??d3߷c]xs4r<ێ/F9F[VoD݌xڻc fY)4w&R7KϞӫ SiTȿ:B=fbl#{1y}+{Y4U8 e2"@r q29k i@HfCzk$yAm{=&e%1g Q/1hoS%RyNqX\9ʒn;ji)zPhP.fKY){=׿j_{҇2 rS ~J*Ftonx{p~d?p{;pw-Fo)kZZ`֢u\ $@<29BeEɄc ,NUDAf9%dL$?6zHhhG -K@[ј. <[Z&wnZ!xCB{`2SGq<͒Hh6UɰA]S>|{V{{ƔVM+ j>tzͿtߣlǤ$6 tQGRӈ缡S-Bo_ܨ7t2D鈟^=J 6]H8q.+^CLڌʆg8!vJ~l7l Ѱjjf?-!-ap@ΫHKB "% Xѕx|zv3wjzwx5W{;?^v­W6ח%jGjGK\coo ?fkgoc~zj6_#6 ?wZH;Wo{W7; Woh h.҄&kiykFíVZMY[hVZl,fFITL_atmRĻ#"W{W7ůQwj!Q##dd1ѿ608#s091 5>T!إC(ȿ nG!1(˒ا"mB"؃]g>cy2YCԠe6wmpmo@ #=~ƳĿ!UtnF=0u]s(L $&V ('-HVaV *o>ǧRCvƞb) ¼V~ succk_:s[ ɭyt?8áꘗ^^>>||z.WtY߆1aGg{c$_}e4i$lf;S?//P'kt퓎FkacbW0%1aD%wM ԇ#;.y>$!bEp( `jh) HNLv T)2:{P4՛R,fNmo'kؙrZ S OO8rѻ^ǖQߠ %gT Z&5 >ƇcHR9/1A{ ̴ҥEE[0hh+Qrm \h8fbु)ZT2Jֺ)<zZ1zXuXEC=-e@. $Xg , j,ӇQRLֿZ@v^^ ]񦤫 AȲW" *t'@V0v_O&jGg&j}d܏#/x(MaӺIBۥtotkէEpW?~?4#^ Jn:z/%Z4յ(nݴ^.VyWQB>oz3{%$K_hImUvpѽl̟Rr.}̌7/ 8|]J;sIoR6x٩ _$"1r=;KzB [QZyVNՅ1;g>R&TɳT86DޓLsO=6D֓lSO4-=44 =;?*7{ӨTS{'' \"CCH#HD{,~Us+t ?嘅8y8уҏ>x@IJ)vvwǏ! *o`c 9Ⱦ‘ Tp\Kr\eԑd|Dŭg!ͳX쨠LM4A7Yznds/-/z#d|tķ$R4̬I$My< b!k4=BOezslI[ߦe(|7 t:ׂSR9D*CϖJeiCJ _6շ<|gd7S2oNd!+0N7PVF``/ǣ/dNEcC܄w]$Җ F L ~Eŕ 0jvmsd '+^-GChzZ 8RcJIRB <a؀8#di!˛)_RSliO{pFT40 }p?Ѱ D38an;{t7 j( PCTzw@Tւ*ȵ z̝:]Ȓa,jm8r\ءe/q~#KKKW ax^QiG%yU!M:n髄265dѧxV)Y:) ȉ#B=&Ny8|b. rm=<jǩU^Ue|Q.U H7 p݈LqqFtk`<+I牢'?O3ۂ:1AT3%-հU-:P)H|c+]a<]kKFDOC^v'ArT ܔʮ%xWo U[\jCt7 E^J/͙aB^ ڭ%(@%TGP%M2TFڣ6E4ť@Qn}dF^Ʒ n>h㑕?#ͥ|?= }a>d֞AHN__*ޗNc0eE f"~\5R nLd?Z{mZj6ofm>7~]0d@@Ej+)질Éd?p?‰vqJFKE\`B9ߋE*L@wC>=xMCT_pIO^6 2ą2YRs@L, C*iM(K<&%Y!Vqqҭs hH}|et,xU{k'I\؈,Nbԗv%PuáL7Ay/ecBTJ(Sʋ*P^/@ ]1M{b TpH*|~w #8;iyN,.Z޼RZް 7Z^gZepm%9iWqX+1^6D!QnTw0Ыٮh8&;\/.i Z4\t^4uC]F2%kЩhep]Jإh #5 ]-៯dTPA7'2GE(/^U]Ny]0~F}fАfʇڧ![XǃG3k&d# H'XUMKgg}~5x@,t=G .NL39bSb:9HL_pq^V3,r&vuWVW W^f9 \FԻr+u3d,lam@}n4{p(kԃ&*T>why7501-<$2.hKa.($SW~tS@]4#QRz#`|S, 8&۞ aν soM%/s|zvlu)Ћܥ)ݯ޿W@Zsb%kc[ \ְXx)4VR){5Ki)_ ,w%XqEzEtYtYh>d2?~?L+ wlWn V\:״v/xWzW|W~?- ֳXwFJܹo_gBu].5 ):5KDO?67eo)O N<5eRF]E?GE7vc\(RMzsU_,۸%8YDr[K6o:VtԔE'/㓗e|2>yO^'/㓗bY<_jcviTLBP?R^WRR|& T%bYJɒ|i\qZSj_fzڣ__3r j{5Nely!#|ry><\O.'|ry <)4U;>t,,F,ꝠYAS*veoɒvmY[4gIQ e8G5hV EjQT3U(͢WQ4jij`9qO'{=}>yOO'{],;rtɞT VU5 i9ѥ0-%tV&,1uEW] N]/ֈkyk/)ue>Z㰸UkMd߭*^~\{ѱy&0@N8|K2z/_*c\iMwuYIx>%|2_/A~8nCTgxy`!_oyQ;nQ(<0,[ EbC4q0&ʀcZΧ:!fϷ|#e$ h D{ncQWGꂴٟ2R˴$ ƣBn tٗ GdKm$CVty||x:9읝zjjGtΛqJ7 Y'8ggcU8 4 뗦ʱ|;z[㱭 @/_ a&#|lӃ8^$ vT8:6cafdn;?O/g_HH+ )R-gff-V0C狳ӳ_^^>ǃ-F0( qlX&&Eѣ}ǘ=yrNs4Oݍ17C=udE汱 .@P^7gSM\DcOolb?lfFFjFw!]u~Ӛ5^zQ8ax {l54sْEƌ)ܷ6o-:pQ4?r.0 ҿi4A'wqmntI`L]M'("tDYD 4Wz_ 6M'pi3@; XS+)yc՝d'n4Kt˼j$Δ_ٌ"(Š!P)+ ٹ]ׁ~GG2dK^[M̼.<1?NާhLf?:WTr?Y\;$9tsF& &٥i&^AG{V^qچXtY OOjs[[Փ f(Hr|^/dHw+?M6koF2KB}/v 9*xܾ'S]efEq.Vϓ%`NE)eV<L`6Wc2QpavFx]g2KZ^il v4l+7S,KFH+\dВXUV=bz[&UF޳M)y{ͽRvlQ6m~$i$.#+ql5ɚ64MȦQ,%^Ų]Z)sc .1&2m#ndƝaiK.dv2r۠+i\r,$ fa0&@%K7_fJ0Y_%|fAA 9RRtqH5!,\ՙjp`k}0x%G2ـo}|t 8R9A9̉?l_=-y]<4yPN4+Ҽ8,־lq 楉#upbJh/9R*æqCj*;*Y<_tpdz[?h<';`_M= Q}Y!qSMM79d%PQ' E״|_Z<.aNihʧ4v*mi4eyAAG{02W Z n(*A1xf!oc6ECq4 KH}QpLflfZ8s@j['!-䴁*9fnol(NUq~ǘcdӔ=p*s&+1"-aZfȶ6? #d֜YЃ : M* .&54,)cnɶ%c&{Nd|[y«-1m،$JhK j}Laeۡ4KIF|oRN?fRvCy+#m<M/)XLrw"3o3z_F&:}o^HB. !U̻eόhM xRb2 J˹ِQKi ,~Rώ6plةja<857$ʔx͜nA9G9^9(!kw4rd [EB;vu v kz48M슳C}Qzi8EGi]Sq11ԉevz}toNUs'&9Pb~J&&Hß>|RIGQtTxM;b=*,QPC KNOͬ#_+8Qb G^S=ޙqu! / $ GF{)& ýFjag0ṧڄWeA 鶶7b;1DDAo(*>+Nʌo~kEJunþ` ?&c-Ny|ġˬX/LE0 h4wW+)9Ҡ$2a,ZIܱwtkZIKc`!@[9ۇJO0VEzs?xۏU 7Pw=1P1 ܛCN o9y2fbxvwk,V;eL`HZXU'b}e:9~ pM~UwڟMXk;Z*)mܣ#ޞJ7ZR #voI5W($HV˗ on2[o5(xxavī[CLhZNͶJɇn+m;B~u29 УjNECvuvGd\5W|ٻuҁ Ǖ5qoa݀[F߀~)|Cwځa\uᚏ)IGwn>Ђc?|gυחU[xg2M21`"tc-as@k :3hG?|9Wyrtq?翝nCWޏk_zuN>~:j#9xYaC;J+v3x65{@p4mA t8B\&ʱL?DEVSTK" #˦#]SrhЦTeY+ ({.Z v$o8Vb]-~#u-Cj;{ u~FڍA!T86!az{9xCہc 3LJ,KSh1 kwiW:ι?w;?u9!+ :vCP qo0MIӨwFm,(!H0} 9 tmcX 4y$4 ě䀋W:A= ֱK$=gaoN%N;C]L ꑱq:!Bry釼.P?pw"*Wa7l"K\a"Nvb ĝ!jk7"bdBկwrXi6p6@-w)(fth*hϮ<)hr!7f^97fh4ؓF9(ß\ǰ<9s:Ѩk/&Yb~Ύ۔v:򨲍8ag~"9 ӹv'YZIB :帉U k(ya>:Pp;/0xyM~xm\c;/e۱Q=v{]ti+]uw9lkw.v38Qa)a7ڛgdXӥ~x> nAUpԻ(0 eakL4hg*ζxEib?THslZH[I#{Gp&f%n"9v,6sISA[$7ŤtЊxRPֺQH9HȎQweY4.[A&ȀCm\):aD 12/ f ixY8{JM:FQ d k෼%[}aU1>GXCX[ m6œ썍&M5{_ȉ{y 5)`H,AF:Q5QʨB4r(&hu~/;f:6ItI_iIXj.m"%J;ݸC»CCMR]سcȠ׫nN!P@y@:HLkS#Xg Sid혫Y2;λ-GnlfKiY,IT:̣H: . l}u-ĺ `Pq$EnGyM6^}3:Jnta4JFH2Pf R0Q2ؼJ, 2r`  G,Px*$GYV*,G܏Q)H7 $RH1\aFc8cAB5"Y7uH8 &`b~O53ׯ$G醳F:ޛj膳no9qn8kk/O۵=ú5kOl[/CKƐf=SwY{r~ 4JIjަNe(G@9:4,F^HlRƢw톕hWD+Ic]oӮrga86NUt[ܠ!vzI-8bpNڬviK۩Q|Vb9Z&ZXc6&Mͥ&s;kt9wPXIW[I,\:SdpDljJ__}ܗr%tV\靔y׫F:gJя*}hYkRq,AgRFhO(x6F_$%Q46*71DbRa$tƇj\67UKVSEcEe0m6 Br'3ј'0^t*+GH,$s?z^ʼkLiO'몃u%r%MbM*bXE#X,b-Qe:bR,qQd☊SBBD8xN?O *FR$]ltjz;M.j=;]apYx/n1P<=鶅) "4V=LcX'f⋅1(pH {r%ˣc'`{qڵooO<&*2J &^ b47 o[-f37ډ(\ɽRKMN8B^fz7tN,>ޯ8ު>z+q聹nȽ ݤua~e9AWjndv fdN.]pJw/$.,q)RQ߾?U>RNž4UBA(&ltk7pNdHx ϙk+vo Ohk e0'fߩJUTJQZ+["IFp՛W$P4S%t6xE@C!ѓF?;;V?j6<)=BHtl蠆%T$j`0[ЏҊf`hV*1J͆b\% (Z:C=? EvT`IQ; fL+31&@ՆeI]֬Jt~QȚw $ k+Agh"%/J"4x<) "w{ԥϽ7-X[@xr^?dE(Դg/WBGM>[UzA&~=n*'FUbt<$a,VXթ_W.PS[:)*Y.NmM b2g9Z\,Fy(C@i+lDVJ³ҥ 7!*XrF=`RKs!޳Ep / qL$9&$CL0"K]]A ;xo|?fIUT+ P%پc,٨%%˵Wd Gpd`ͫAAqTA4z4G*RA6ۣ8]9u`?VV/Mx#ID2]"tM _EmKMz6F;ד[/\7 fdsw^Mpl4.$*SMؒ/KS¡}w6"eBYl{`y'%l,az!Eׅi 'x Hw^Umzo7M𯭆ۻcdl_a_LL67Bcp$Byi )$B9g|;+Mox̛Ucgz&ώ\l7 ?M8h$達  ȍ C6Sm8j*]~xuK f Kxp'( XaL+L7\wD}p'}mFy\'eAX4N%\!A39/ȼk\%:!~lJs)~ߦZWkg^>.*)[o87gq!cO?Mg.ԙj0v^WJ8Fՙ81[8b*Ŀ=!9tRIʠ(!+e˯s&s9EY;sd碵VZ\VoGPm;__T|<1 99!9BwCHbϽВG"uH{aڎ}BMIC;1 힏}(9_Q_9~tڟMJ˪:'C>]¡I7W̦Rvm+>%HY}(nD >}WKje f 09lE-%5eɜ',NfԪ-lpQ$Hc/ l.5YhFؙ!L`-NL u SſΛXa!I67nш߹?]f˙-=tjG#myKZ~(l=XK7[󇴶=,yOi3[=:Ŗ؎-ӂJ,xV J'zpIՆ2]ʛ7MlCM<ߜ@ tr{-FCh`"\n%# u$R`Oy# {jW)CW-Ubšպ46mi?d ʓPKIk\_&csuG{s39$ᵴh+y9R|)+s*F8z[6AAmO`KahSƣl2IpE (G}z t) ")9CCtZPV:cAY˰'#/meMC }XR]I߉&rD_Um$ka5<-Ϳb/o&5i(J8_A"!i9+ /sӐغ59яqa4|Z䖺M=ކ|]b'6,Sڰ)-d6y23DrOk9`O Q~?$^0I>5YPqQ/ݡODDȚ~ O#:W7>OWt >oU@I*JeH)ҟ_К\7oaAׂI-xP)ةuC2[z)[rfۊ`iu+;pCvy;9hfH{k%H;6}t8ϐ;98\|N><++Cq+UȂTSE:"aTRŤ3$Nyj !Y$POcVF~{-ǁrQGiGEp FMԯ6[2(Pi@+ExPab}%=ڝlڱ.ٺIoaʮ)՞2If$Et$y>uRrHO(X1ml6T*5 _Ta=ɱ3S]HgOL&U Nt]=*+2~*7l*7NC쏾X]Uj(ٵmzЏ~#))tT&SrU*zڨuфw9EoVӌo d[UU8.96&i8J~%}Q?&C y;5Zc~nj\WU\~uLvcn_}pvnEx#sWѬ d5nV->ʴޱXoenBo/uQd #m,}kK-C}*߹izp8\q>3*,JhV>m ^/hn??47zFXЛA0(ZQrrk BV݋xù䈦^ٗ3\@'S@,6;bO~ Ig18 O]8|ijA־D1޺`L'h*jBq~D/>Åv[묭r` @m}c?+&t \#TqBuBe9>i1rx, Wr+i{Ձ j [؝z[睶S720ސ XvvP &HIrLX,@8OCDB8=W~PO\dUmbݶ1XmC{~8aGlb~9vxBgGgdB\Gq=Qq )W|Gm^ TCI}U` 0mR"\H`Spsõcv]Ѥ,uDe*H"咂(Dž1x1T]r"ǘ˺aF,7Bq<^R3E H!w.oK@VbI֒-뿴kL4Pf3>3";&l"}Q SrI/D>ͯKنqvJž6DpB@| r_`?jWO |G#}CPo\'R*:Z`Q`vX@ ߷U)uvZGxKzw \KsSϮ$l:?#jA2dE^8@d #~8rqԻ{X Cf(^;_1{${{jnztaBA<^E%e0D, v j҄APd"Ƽh:h<;8=rx=sA!tuA\Yw)T|l.6:-av^R3|}^+i-QIf/pċxnʹn 6puYx.S{H?'YB/=pxnkknKmŭLCٍ,t=lfFqLnTA{ee5b᢮mgM܌H/(- B.@YJY-ˋ 74I eBgYq{-^T-7ZXʌ$ @tp ybxO#:DI[n,DIZ\co qVcpZ O!8 -X[fSa$MYD{j9wu{Kx,AT˗ySGɽ%kazD\P,4'ZBÒ/]Ya"jd%\2|]i=t_:]( s9+<;Ưnq:'$?u?P?oJ4 ~D+P;Nߐ Ӥ1`Ї3$zCGvGU)YxƯC7!|ACD+l~rz~p?W>A˙jQ#s!ifP0u~uH%0#!&uۆxza%@f%ߨ) nϣ=M*G3+ 쿩(A*@1ӥb11o[ p JeAh=4Q~#/ pbp>MA$Mq%_8:1*90GO4{O왎h4wtVDZ gL` 4hLHVCr4y=ֺ7r} w_l͝9e IYCٯvC4(w_Z G-}uqRҖh iXpħX-:EaȤ,tP#9|LUl`ʦ&z)b!LApGa=>on8kk/Q\9_pF<ݾst%ߟA 8y :wn_o9T1诱lln7דj{r}=a ׈q/~ݠx6x\~CI̿>c>LR16\Y{ ++,T2j Hv >p}.Dпu])myֿd_HE<bN0%#~n^тT}TbC W>Ͷ̤pHam0LnS{ YXaq]W󧯇G7 b:~C37O]ڋ\o6 $Z5 u#ҟݻQλ{EKoh-@]#xb <\qE:uw+V]B=vO̡oVQ~F#BPc}!/4}pzΙpx'Ӎ}j( FAq #%<w|>=ǝ_|A%8(;;H!3rDs+%tLf3AᡈGˡwg}{z 8 yY`WRl}McLA|6A+$3av`=}=蝞YFvA0ȭ[0r;l5A3+?NB0$eR01Yb=;Rxi/k*H `gcAk]BmNU ͢@`ʄ?V +n '-͎fpo Ur͔J DIl&&(;qe#,?Yuʰ0~V\RPy͛9qBa#9ѿ) "xذ)t[/0c_OhҪSph((òL!PYTB mP.cKlΏX&(g"D!NԦ.+OЉ CvdH+:蓺nHOcYi]5n8ϐ$i\5 \_sq/Yk]SޙmPoGQnt"(h<XVq0QO4]'"\mq ӯ!e`E}eGu+"*3҅j ; :g^:lܷpN'̼3dE Ǭr0X]śNhDA VfDaDBa.:W)vbZg\7kwCz=mw#ql4'm[CÃ#nG3܏#+fy~p=ճ̓Ʃw;Q[mvrge#ÛMsGӌw7n",T oR6H8/$sIDZ jo_!|bE pAE"$|V;&c9zPhP_A_!*52vg*H>C8nQlgFFk~D[M ?>'Q HܐdA|#2G,ViCw M'XT޺x=zv~sWE$H' -DD=IcD mCoIe㎓c>+Ǣ*SN+lE=i0F8u%|JΥQ+ZsmI)K[ظik׍.Fo'{i`4G -6l*% )M##uSzSZ&CPWsFjeJ`T3Z& T0aMܙ+6!'c˸) c}/)-a(|v L-.BDŽBh3251U*_:n~<==sCuKAn"7 hu\@O\ WAmwU g h*)S+xٯqN,S7 :6/rSʴ0@ROx 8u#g<o@83W4ތ/5LЫ6|gk\@P ٨Yj9{`Uȿ{$RsSMF f0&8K6S`NOL/cKʱ6M5 V;zܴ|\ oji鳁VH01%@` .~">(T`؟9D"JpIk`{C4;6Z^I;qڬH_:=r9v GT.NczjˉG z6,8_A=x>rPi|"Ab?ܠ'b8$v⮔t=|5^9/j(-pF[Q+ HU%V*:q%4llǀsnvGrru ,ZOt~mdž jm;sNO8-X8b_M WZ&d#V(m1-ƃH?a<,;'.)>n$vִ ɶ*۸=ӳ$Gf01a,UƤ<)U<uph2%#e?&DH,0|n F3L\wB!R}|D)Ak@Gvi5tD(\]5')iY)7%IGwH=Es {1v3T,4ܦE 4b tJ8);(qNkȄ|-+l4VInK)iE ௔"xzݓtMfp-o1 $:%KC ؤ'!UU>.0#l+v&R6·-LL JO@7*Pm' ͩ8y L~#6 XIQyt#3iY9;; b!|%fKu{jn&!R14aC0|0F8'6wӊҹؤ:+4٦gN8ԯ#Ke"؊h;7_{ n|P=n_;a r<p _}④̯ `z|lP1Ydq7A q~JbUŇ9Zl9[W hݕ/ L ! xpe Mix`>ئcDݺ#?18-`2̙pރO`AkL>  w**M ģzL0KEA>R_}>([=P$ oȁmRhx{1K/ʉ6eV=6oK]P)OK*4rP> >paz {hJME $‹;AsT,r52#'`go7&O/uJcK`gGg1,4sĚ,fX͐dk}7 K1,gʖ3˺oF[uZ嬼LhvZ\Mݏ'(. \ {D؟qWPps#p4{"N#^ 6\;Z[hs;  "ߣWxe&Ὃ*%@HVmޝ? [YPg8@_ ^ ◰uo'*&&E>^FIX^|NK=A;ʅ%=>˜i<(v@T fvzη`8ts/mumi>DS?G~xL}T9z FҋB"ЭH'5Q^wR^z鵅4z,C`hcEH+A {|F|`YlH3X^)Ѩ2*FQςhz iqwVxu[SGYW_j_5Wz5|/ޕʽO洯, A6ZcѴ޹W:ouU-:nB]H3TE'9Tg_RN\+[@ysV`0UG.88=rx=sO~>`,n~:ȍKJ݀Q5"ЏClc-Q, E׿wydB:7qL K?a9`Z8TkQJUԒc7ҹSWkޯoA|sǪª|S|&XE*RVķU佭$- y"93V-T=3BU:U 40TUGT4ETudŌw=6Jf$d̼K,l? fʍZrp``P`S_GJ7@Wܺk%Pdٳ0|"phVU3 U|u6nCFΎes7}%J<7ckEW<=9 /sy$^c+Ai˹{ >%_w77#OO~ߛGxrYՉ|kkլ/}>d6`oMv!LO C*%2.&dn'/?av!M{_6 hvKpJy!+cܫX(rsݣ Zt|ūV+C1[PBr1SZ2q^./ˊȌ2(}ɂ2ʰbڨuH`uF-`U._Xvhvhv+0]S3^٘e7uN>[*-[,[&Dr\D ABA.܆"I@Iޒ(ޞaR$BUCUHr\$ AB"y;GD:x1m6e~!MVcF!-`aD1 +T/bB+iq˴~.W0v~R7la #Wm>˔Fs 4_kf/Efr#@ 1{JWȌKZf4"{ :u"@Nn؅PdNjFp4Y urH:ǝpj4 ƫl|ȞiWDSwg @21sMz!T4݉ٷ|ؕa ѩb߉0, 3 c7"9~80|px%7-F[XQώV9[!*:kTInfI-`8X%@m R۶ҍ#)^5'mK 3U$ꩭd[2ۨ8X1싼P&pQ2 7w_];JCzM2VS9U{-t298F(bqʁ .Ӵ1̚ϷS!J:\a]XIe Bw}lHnV^;h*Aw\_+AnQ*Ral AS:]iU_:g/^3!4>.7*^Na<#YCKj;Of=2BO׏s/ &aVx< GglFhl`l_3: _W`],l:5!JI=%pi GSR'ߚY>RCgmL#]H,k? ˘%}gQ@l?6 C䆅x,>Zָi6ZwB'\C0Cw0=0n_X,9b __q܀<$ |8Dzؙ4Ia7H}Jz,b9#(jyu)wh::J)zR3D f0ilVdόď(?4eXfitB"D샼^1MaIl9KRNg Wu\cB}fNǔڞ@ij0R4N>9;MDiiޠ5-gl4lxzu^\-wx*xQt%uxah$6|ymZ8 EڔܴKa.ⱳY L8hٓ 5IoY[CED mU;!Uː!}4(3mHBKy2e7 iHoqcoo6lor3JW@:w.] ,4odxX1nRvSC%_3}"UՐJ_ٟ+gbc,,^ b ʋhC]\<# cv e2`s @'<0$!cī{2pqHs-#&OGtAb")"兙* ׬^ѨG Ԩ%k 4O5 v#1F-=K 6s39V$6*'xBq,#, J0:XoH@qJD/s k*56Q>""ܢefburj2ߎ_źdIEr>8_oҹʑ!^HR/ު"yOQT-B< -fvSl7/2 ?T'S+OKmRm,Yc_U2[U3W+-VPϊ0f6 wT2iL[WCtpJH%Z"K/RJRDRK)epeRb 61CcU1Fv׀K*MvVIodo+פ>}nrNi84Xzeʸr+Xr_e+Xze ޟgs3!I9k鈫hfA2 aױ@$ȓH1,QsdQ{p2'Q=D.jI]z*R/Aoq:',N෸(J(bTg~G N78= 48sPk[/T2]V3lFVViWkzEP["iNXϓO0O^*NTȀ"CQVLRI|)JeEӾ2"t֜V gV쐙F)9Yھ2$;VӪ2ΟTEN./ieSM]BVMf/jT :1.2UOI%vl&p #9b$צ-8ofTdEQn|٠ ZOJa dSoX2ؕ_ --mzrcy6.2|9K :*'ɼ?Ȟޠrv*uKAթO{.[*gXDZSCR8V:FQ 5KbY=Ciw 5m݌T;Ѻmk$eU7eT+Rz#DXT"(?p  E 9-!a썤;;B|MO IdG/4iSޭVLTy0eyU_Q49|cD18X% Cٻ p8  pob9w˕=VQv'õ:[AOJdKF _t(e?q{**#Sh"kM}V>N]U蟎1JӠi6/UUѮh~ a+M<Yt\ۛ\4JLB5Ym&H&HƱg4AJYN~hU|&ȅ4 RC{?为Y ǥWY- Yh\(U&hV54gB56)g4|7zPv=CdKP59w wj+=|ܥwj[r: ?]+  &he|G@yI=MZҏGOn/ug DxuaGS(m%9}}8_ShwVK|^m9Z4=ff$eYC D=9dC:thF2ΦSv{|xrx|vݦ'dּq<:랜3Z,ev]xUjCG4 nuc;-&!r^bd!c21P68)!34 O9#8%bSW@4t1㶄p4]dPvI(3#` C0VyEW$Urz#ePObk Cs) y2]JXy]A σr̡&q4OXsÖ@Ei "u}?*@:'|Su1 ް R]ѷ#rB <3+xnެP:'Evk/4W@?pj q 0c"ʌA0kc^]d|e)2*2 Q0hMA[DzJ|^i6ցW:FEW G9xQ-s EAVh!vO>'A=}|l?|guw5dڎwQl5$7d?u?H !q݁?5tdZYč?)9o MA BwׇIT |6IݿO P{{OҦk;di wV qZ@ /w!򑱠DYSL;;@t[ _ӳ/5F gzY1@|nV/I-}p+t;|8[m$.|z.K)!w5t3f`=i+]+% C&W( N'%)1d%.:L|`h- "DGFu`UϬY<]uu}ulg͸GXC]۝RZ~zxjΥB²|WH}N\XG"v9S$:ؕ!I\M٧n4' PaS0ӇLvY’װQ4xo;hR3_\vsMS3qBUd(D?_uE>Tuk@hR!vJhVG뎗MT^Į6G@곹Ix|r{Ϻn#"=:rӃ#%_ Cf H^ 3rRD%PX IF7?p|ͬ7gH+UdW #*+%9B;:@i…L?àO9vs{o8$" }np\ pxzH*>m5a]Q|fv 2$ PAM`!H=M? C?!vp]{3LMXVY~x ܂Vn$2 '3D?ء]p f5Id|<8ӎ~٢.&aX E;;Xgo'7һV/Q ~Z_Zn{ބUOn/ݳIs%Hhq\grHU}..H)Άϋ[9+ ήRDHrM*t텾5(9zg@ yoJA &L^Pm~$ke 9:x=N=4XX,ʁ Ƴuèb)ҠB&`onzFKa@TC+5(n5 >#tɻbGa.\3T2w̄HhALk2vbEvxiK$F{6gr٠i:{"x~W{ID[ʪwS |d B!XISMhꤩRmص2I xV[ok V&U=0oHP{G#%oH!-&--7MX.?ynn9wOgПӯ_q@"lv?`^=$ęO& 06 @ a,1ƈl0言cCM7?5{gu\!ݵw#2q @Ώ Mpy7y |8 jJ9gd/@uDHBN6=DZQφE\YЃ|㕍\Hx)eY0;@dni5(b0MqI4N{|ht{]v˵]kWAaN& |`Һ<87Ux麚h~$ ?%VR퍸#hKn c=$]zb1zH0ɬ6uop#$*9j38`Z 8G[YG' '.+9leF<ⓧcA5aY"K/ YBƂR|*E8bϙU^eH{Se3n$",wrIXeXRa?7)e/Q 1?h枨/7r\a,VA==$ώN$O_J˞jUkىsj };3SpVͤ XUU2^<;q$aCm;>*W@摽ZR/ KvY/?"z .8Q;!mI6cEdž]_occ'# )I<3b^$z KC8HK]Ŝ1mOZ A|*yt66Moh%6a;Sl!ZRKV,1J=^bSn/(Sy.i5.lbX@+<`vXX7 l#nBƒґM=F#ת alL0Ě+U/ږ7rTږ!@IRs ZkU}'WmצϞ}F ^˸Tx*qMy3B)O"~z8(Xpy[v`J !X2w蝂:X2$#An6JGó؟&l J ? +Oy^ǪiVD0sebٝVhd$ 귽Nyc\dV2XzyjW31l)>G4`BEv}҃'K",莕NM( R]F3^SI\da>_elycG:o7<]HF>Rs;jnʼn8ѸنIK#\2Kf/Lh Y ?yG3OAI!`#K/qaE탎?՗g_W~?3o[6xlT 4h+ @$[Lο!Bp-#3_zcd798=8v6vZ2Kdnڊ/fgg#/K7@)[[3GWU9PHS0 U+uek]ELf!+G&SxkdH%y"+$OoȝUɈaRQJ#UMiAp1[$ ?^)Sq/pnO%XdHC ibYs$@J_5^mzjh ՐYzwFhuv#9n0Īĺ?F"Kyofh(2 E^ +LEZmc:F|#[ @P=߃j [h8:lS+TS^pA>i|CPT >>_;lW:G6Wɴn]ʞs{?YQvuTEiMT7uʼSE'v2҇F:&MR.BB=xsO]!Πʬe=9lr f|!'/RԹ&ș{*X;u<'*{[.QֱY]#߼#rwM=㎷\*v0ljBk8R(MIF:i,EïQAi1]v՝})4^Jk.|nG:%>_iФ!4YҤd9h3ҥ~:a8|efPуW6Y T^)F/Wߨmv9t/lL/o +ƾ_u* ޘcwDu4͂|sOy/̷Ղ7)qd]fPjM.'~Д.Z 2h4o~=L|t4*yfѓk) u᥁uñSq溻JUgmvy#D ce{~.ے_ ma Dܘ#7P~t M@GM"#8"ݗ/6Vsv#įrn2@j<\-Qe4RlLnaa u9L%1*BN~ȁXˤ*2hz*SdU0YE8G+Q&^ow>̩s |S h,'C}„rVóux` #b'f=6uvA|"uX܂s g\N=a10e7S 3Tg,W9UN~+rgC,.2a VwuՌ2Y|ڪÒ~:[b3=-06 Q^([V%(Цu;r=ae Ȟr3v%W}&s,/`Wz] Pq-p KrI4][FZ^"WQ/!:s@bH_tmZ)qhY7w3>ӡ}Q8ϋOdI3sK xhGۘhc!)ך*I첢o<Msک;F03L [m}`<-Vn"xis纬a{btdeOT>7|2@@6WR;^l!=Gf[u%0XgW>j*|uAO`bq`j G]F;531ۨȓ 914h43u <+U]˴ϝzi<yk27_7޼j|"QlszGRT{T&B$\fʼnUY{EW^rjgаkFׂoQ+1_ ;8x,)?†8Bs, ;ٕSdMժ![_׾SS/8&RApRDٙo1ѳ$[lp m]R0m C+ Qz3Ru9qx,2r\qܹz->Vsc}·pEwi}U6c?[R⟢{꽌'~6R*ԚfZyMYzv]"Gy~(@gE[:k4mFڡK;CE]}e1&ʝp C|!`NH Ƃ]ܑH*{踕x<+)t{d(uSyyMwG0E!R oJLij)ʋ,*>Y$7$s*jy몦kK-7o ˜st܏|p,\W*?c{F1Cn#pw˚G@?ө>]󳀷Iתğ\BvdeDkNs^`+ wSոwiE<'7mIvmΔzƄ>njsA6TvDP ʙH"K0 ߌK-GY~-;(|f $kJ??bE)3SnCJ <7viʳFy:X` \U6WZu57DAr[|&bdzuJvnǮ@8`YsW|Φ.I!l!=kYgIjC>{a~Ŕ΀> /&!| MaHKJ/\GTl'ڿ) /ÐxZ9(8O&} Mwıǝ#Me}Y˹vg\>wt8oȶÚϵvڔ?[8YQM6J$9Sk ')1z1#+/f6\3|̠F7T\n͖!t!6 ,2Lqր+m%N.E"\AqסNr)`OFCؿon0:Ն!KS&Aʪ멲fԺ.tؤP>=.w)tO,`?'b]jfͷw'qm4:6ʰ;9[0kwM[F\ѣepT "$wd•lƎ\g-}/"$SFw??S 99+;.縣21ϬL73iE"4)5h(#u$G"Ҭ̵x9]BC8w5c SV9P s*3{.L*^IϹă1ٵsn&G?hbzS|`ҕ B(!gMY & 8<̶ͅ^ Vҙ-G/4H. P[A%^nt! .sh1׋}Y/jݕ:.xI-,2ʹB5+*^uҰx#8zCUaG:T͞&`E;X!_ ѯҥm+¯|xY||AC{ȼOߩRJ-,Q\PފfQĿ-⚠!ܕ]4?Cx%bL:3EL6!P+B7ť+q \Y.l/Uj3ŏz%cj>Vcb^w,.ZʋGe@GŨv!|jռɽ˶tͼ+G9y({0a]J1]J#kpɢ x(3^,Sm.1H(Sh9 ߪ+Wz(Ɣ:9;=qj;n:sz<&Y$m@9S5nuIh9eQR(~z0-|T$('tDA#_Ű /\;\X>% mt,YQ,75V! Wh12z\Dߋ,VWRFA[#RbdEp=5}{ÏypeG^>:>^}#XcBX4:U=i@{?)0^kC|>JI6{E( 0&tXivQ@U4~|nv:C>{pj fHߗ0>„|lv=4Tm HX#< 8Kۇ:QX>{8;nv@7;LX`O8A8yd ;]K ?xt[s"4^ϟ wlÔ>tQwmՠyAH]"O-PqovI1"u:}uztB;.&9lq$HLhuMLJ\?1i(?1xF!Gx`u_X,LJ WpY*G=*SQY[T+v&\[LKH3|bӉ`F#ި7m8n(",2ŽiײVc:R'Ħ}xE102X]G8_$m=9lIzL,U݌E44K@[iU;̵ֱ"hXz.RdUGN5+ oy5qAo: Π?T߼SCqH(GT H=)?\|.g+XCf9^Rla.`[DaH9^ v).\#Op9|DAC!-)W$~άup2|%8˸bYA\,>b ew(4-W$o1.hz6(?{ +Ŗ3w{zWm|?1 [WwܰMg}=`aTɂm-S*Sg )6 ~Vt.RT4؍O&z˘Z6(I'd{ڦޑm F ;Bl#ȃaoVťNtpc@^fK5(\} cx+|]`2_7G25>Mw?wzP!eeɏsF`xdZ%KKYf$>&v8ݼyad@|i;z16 <C ![Z`ddI %f5ݎLuR%kY;:O##<Z[[t_iawNDHY}ͭS`8Ol>AsH#w"I,b̠˥ rZ͇i0$R}H \eh5^c+ъ½h%#"G7݂(W^G.%;̟޲?w6"`B/gd-iCZm~~cS*7U&x EjV}ݹ+oRI}/\H}-5L-"T)b-󈶧Ƹ@^˜kF 5@"/;C?2;oo׷4 :LWǡg&/A"* g]@Tˀ{ԴP,@z/Erf?3oq[)yvG^8 pG>?R->)@т3@_Wi$Mq P 3aCcg\rB\˅8YlEd'egm {"l,Uҳ 7es)搖Ui1\ɇR +iDhA#]]PyK1y{;-zIYlHSu|zb}[4m t_k\?)1Yy1uva.&h04F2sgwm4ue^1nܟ@/8*e @rCoqBh.w0ym-}|6 =XֲﶲVez5EhMMlǵ4Shi0>D! L4akLjgUX59-nʫH1 4n8j5{4xh +LS'n|MSCwYb|20ɖ;) Ml؅EOOOOOOOOO$]sxrZu)=9CmHWɑ|r$'Gɑ|r$'GɑɏYB|d_>(ܟRwhZ/<<&bG>B"zY5m*JґosvfTw/HRiDl4/**@7FUbX(d_83Ba苛F7!-nSΔc13j$!w zj\ۘ,F| v Y H=[4lF+\B#%YT)H#Hm 7/`=ÈWS?j]Vy1lq9 JcJŇi1ΘMh.`th΁uLXYp  VL0O@ό~QKr,ظֹu\l!^{!tK6Aީ13}'OZ/ ̛;Aт]4-+rNmñVUj^ɯ0YМYo J+<̜jhb|2ص@ :QĨ &?n?~YA<MpT5(E`{kC@< Z:BMF OYI@QӤV(sop˼QTs|;9C?f_KP g/Bm}i[|q,scӨOA@"q֮;5Gl3iэ&Z"9 f *7}UL~s$nӬ_cS>m*!, οoaNInzq̑8 .#vOpۇHr^1eȊ`/; +ܞ.FZ:D;e]<=p>jjcm)A.c=hG7v}ܽΦ&t?Qlzor#@9a$0bE&L[|e]uutr60!c:~:~cݜ#h4Tqۘf675od_]Ko9 _Eq=S`^Xܼgȱ*]c@TYcԾ5-_"xfs⏺ΐS}:6Uo_|c&~1[TxbɗDC[ %ؖ|r5 BIȿ4M2h'vUħ>$0hf-_UvPt|j`[<0WSq]Iq-p'F;I:x;a1ޱnPW z9$ѱDkS i;γ,)VWk!_5ax=?C4sܡ='35}K}l&ddL*sF}"&9ROa@‹7baA 1xeFx`h\P}ncUE0h G<;0͍.eJ@0L(wf/'↣ w1`}j(3>= fw߉%`u"$=T3-Ŗ'Q C osh,1yPstE :kC1x?I$enQ8Ïi 6sK";qc^1LrewvU"DϛJ5r5rn݇Tk91ooGS@!8d5R`Gcjy@Z8g'F>Dq6yb7.ބQF׸҇\ܦ,-ytRpo1/qZ9ol<,Fsb l GSC$P돑DB ͩE)dH$̼be3L{цz+vs&c#+b %XCYۚԝ~dG$\%m;҆zG7FR@Um;yWzьHlv>Kx5әv;>~`DZ>8 d x˅t5&7%A Ǎ l+/Q ۄƕf_}J)?RFO:Q:M BKKñ \?0/zjpyx7XZZad1c7lgga_һy?$)55, {KĒ 34>b YUc6wc}u~ȧ>x~NLBUa'΁tfaש`$ɫGMnqEH%ЀMe_P2TK|m!X}*+I!%I4>>݉]_Iw^TM~'4P~AOف4/sU -[@2$keѥn]h_{ğEo2%L<$5sQ`}~[2MYɻQ!*џcO#;'>j%[ןab@+BGx(PR_ +Xz܂GyM8ӧτhYI;<߯q(iurx QLi&)ݥ%s<Ղ3Dc%,B3 Z+ڑYs֖K?m14[)Ӛn཈+qY/JUSߋ| dort*^ݴddPvy~|^$齤6㋚ 8ŸQL,hf4|10ȗEI_ª XFEro1/Oi=DE+^ā[-U*_YRϣ&P E_GT5܇§@clXb+5Y7HLMQܬS4.XZo^ oƌ:-i蓄I.q u&pNI+0³R59X[B(M"^g[x Pp| i;Yjc@:2]dUxNEGӳ$/=RZO5Љ'GomKp pNb֊/o5_iG\?I?f)\|c""u7UazV&gq+9p ۖEDQGbU&Sy~EmuTRviҙ._q57jO/˟rHe2f4@S랿R[5E+y aCEwԃ,5 6@ :/Tf3Eyt\5SYgc:ݰW漌g_ޢݡ:Rd-}M,wgO}븥KgZ eyY_#n/۳v)\,'8jG^l4-6z?E`V- dt.1蟂N ZV]2~ck5NQv갣TJ>tZS ]u `3\q@ Ps~"-:&N9K&KgHX6J$X„Cѻ>sR,HO+[]ԳkEH\V)s>Ŷ)zhNk?#i"_/@,!=kU B4Eh gcU0L1VwKd&! R/IWe*ضz#E)a/_?㷣'&uN'F%ȝ$hf7* Ļy8 xF Ղ:@xlM)y!?$4QpڥS!"^A@Cv`BowJ{ѷ3ke|FSٙ?K54#R_աM'L5kg:]yެ)86y7]&7 +ݬ`nHI#rxӆlx+A,DWV?XqUXt/l7FŔ5^ F0:cшQ<u~qkۇ֖Y%= 3IIYeeKʏ+U<'F05SI76`S< JfcDN:鎼븮pi1'&+]*stizOrݣaאSo«`xR ] 5 x:3m%&`GQG>,/'fMɉw5[DݐTE0@П'гx,"f8ESQBx0 Q*?zQ]݉[l*J7&^(N.hb Y=0EpT5}p>kzAu{tQ{ZI>ĿXjaNMx{ #N궀Mkw * V]hp֏84ͦ}p߆&N>ܫ-8{~ $hma\>6;{@Ƕ$?D8?huv?5p>t '}hqDF~qō/StzǹJ;[^с~DhA#R+!>b?5{#DQ҇?˫A^{DϟZ0ބ!t{D'$Pо(K`J2\Vq&_"$51߁i2;.5Ur X~4@\ak Ep g1|v:kYh@﫼,_gd2C?]*RZܭV%$BHd{rؒӒT9T9G#NjAǤ02R`V:. uc ǻ&-bW^o95 4 Nai UISbU)+c.Fc "}}c~qx' އ}lGA_ hvM0 L4glZ{ g A|{)y t@)y t@)@wt^/G}@':ZΛRxjokvۻ8nqr4@@KQk IL>jRmЪag ՍNb&<.&`]p0+W1T~)O?}E Or`+} z90Vu$†7NQZ}ͫw3Hr6qM/h kd7BaUI|*t+2|? F3Wx,N4>"B:<.,UVFqO@Bz 4;|_{owLT:0 RXjL^}gSu eLD#,A O[ d9.Ear"zA:aIO@z_KMB9X77"duK1l#V< Jc=w;>u.OG9 B3vMN=cNjYM}zxym浹Z0G9 8P66BJk1WP%ר槭h9FMD/5|`tuq(] 7` OL!l4Bظl$dcHTfBq뉀vW-hq;_p]6Eo#b5 gh`A@:>ARkA8Ħv]Dʲn 0mb;$r-MWó74?%48q4Noٰո-= u8D}YG59[r ?u$1& C1=<و<X(9CmE쫭TˤhL~4f|iմ6@*dͲfPRvSCɳʒ+$ r:t'߾O6®M0GrH TXhg8K^:l{ 6i b1QdpwRP`*2RD'rFq1M< T +r>|DBPY%LqR4OꏴV1{-j꙾Arp:%+(}!RhxX)^6Hkdx&mfL>U(dPrNIJɷ9,eA n! R[T˾4hiJbu"KKU)MbtpT< rTz*takd ccHMCȆ%=XL,HX}t[?=aqĮM+IBdxKD8?46M32 <]zHt"ETO.R=]6/RٗOMNGhle/dPM'SF4n %c\_/`jLjLUT2Xx,.-dW4u9B5DD[X0h[Vd#%/@s!X Ƌ8;&w Px\?VSὼDa8xGȫ!_;܏Ɣ_H+E %X" DAUo©A*r4` .fXn .˩K"TҨ 1H hVM+$ZUuS2?(82/z@7K@_UH^XUS~ۏ7eCjn?u\7 uha.43  /R& ME!qm4_%U[ B<(9 QVU"h 0я?w?: Y{NYwSξ5?6bfX"*%v(/,,zNjzJQ) -c~6k]cjjRKjn.a tw8H@?}>Ah c9f>D5>u}XA 2n)}΃oJ;P[tOަ 6 INkj}jX_+l4+ػԊ\\[o9Gn>@K{t#=`'1 1D ioiL8h$LF\mFI9,ǵ4aKsmc7k7we^!VY\OAu~B]s5q ͢Ko< ؓlm/!Dz*"u: W>DFi~I!z??ֈ_qe6|2Vʰ(39Na':mھO ^#UDP =V*icTM@UIf|56NKc&3 *asv $x_(tLKʞD.Wqr D6;o|A!'1f"6~R7#S@(0#!(̟֞#Sw2te*q 8g& 3Sehj#DMSZ_ܩ$J|0v+\ؙ &a')p5<;}2偋pT*VHjEBwզ7'+&h衫ZwajQ>'ºu ?}}2u'^sq*J?ɡȄ{#FyY?ii싀^nq^?΁x2 jsB@TEߜ d+œ( _e.X& )Ж4_9Ȼ>+mQ`C*#K V֝a0rpQx)>kTΏ&g$#+V~JTiKoƱEES%ҿfl)|n5z$+"9SZ?E)|KW^ؾkpie:baڡ^F޿*#*j+}衷# 7I?*+>oZU}LdB6@GFw>̽+\=coJ:f4g s?+)b+.V京?[TkZ}LJ2, e{?bB =TVt`I,}+5OTzCjMdE nQ$Xޘ[%29:J<:`-Ju)7sjOس22e̠6,jxuVh\>+d^w]M&G>rTfx,q@> we(?RטژJĞ_g~~n[yf[#fQe{64ٍ["T:J1(_R{ w}滱|wwҧ2D#8w\{E/Y8Ts}7T*?0~. \UU/)<6S6>YyRLK^M3YfI5 h7{JxscB|F1\?XY0¦`$~`q=7|ڟ( !X+7h p)2W})c>W<QHˉ zJVz3cEz;ID(ns#,ŹClZ,c@Q~y QP@ =D+a%s]`އaגN *-rWm@\<4}߼lZ嘮pr[6k?xt;:٩4k+Ss Xo,IqʱAir3i8~2L0<ר= aŽo<ҚX%i'~EF`Qg,1!ɗBGj;a]K0~)%#~ u)3_vHw&==՝oEUCjy>$2Ud[P94K$[d%#7ʪj'@{KU9T'qrZxQޡ Sc2HZwv*Y@=5-ɘD.:m–9뼄W#Y\4pyN=_*0/P~jGΑ)'{rVph=̘gҵȻl{T h(;x2UΓaی.us$S*8]v wH'@g1Ds_2#1 CƋ1tB;GPd)EhpjE)je,+|:P|C]{:M[VRAH y0gMVtT#4KOV0;>14n1F/)GDR&PrAJr}.cf*31Kw";FRpUuyk/OyҜj1A"f {,E ]✾2I፭*u'ݣ {('R LpCh?#<XSY$xK0$ǧ' aNdXOXN+C>ټT*Tg}Η\n1x(7 %&dքN`i]̬̜ ϵ,w{#r5! mDժa8^Bζh0lZ6Ӫ9sX/=1._(i.7Uϥ^+K<7s䞋w7};N i槆;_u$Khʌ#*q\uWNWw$XrْF92ZŊlc߯H``X2';%vy;#0ZWȽ~gVOedojLcY1ycfvud0ygʑid'ɔ060Yt!fQ'Xcjjw1w 26qy cdxl el:Q`V EPM:#KM6:q(U:K_)9օmm4*@LgPw8Ԍ,&E6[V2{,MitH@,-`2%-~qϒf`Tlqpp1,9EŋƏY$SvK}Xze, -w ̦sW"&s]қfM9)ޗŹ_V|!U`F/e0CSmBq?$GBC/!ָXr  g 1p ;,(TLWkdW*4 T-^Aw~ L`>U+ǢUA! VKh XA,i b VA 1)1OYCkXNT Nd>+~x *.3bM`LoZ}S,,Z_D75(* cyW^0M&Ph@"dYpnȰzF[JQ Nǘ hӛέr&Y:m%52OvF {[&v@GJ1@Y* c^ҐH(7*\Li<ic'``9n*՟-6D93͔#bW!ZbxZGԎ`긫=EcR"YX!a*ӷ6 1$ nP{JOHwmei;JZ0.FoO8"$W VT744QDiStMy6?m90j"g@}Kmn6NaeǺIEFC]_ ]x*eQve>?@)b$Q94+JK"h|gE5u=hxx9.ޡ F|6"#b#`(po>fǯq|H;%o `ۦY&sֈ +a(Z*?@JUU5̥ S+E.oL\% #$0y12\l6wlj.?>!go Pm/A#meܕpwRPiE[7JcykTjd)odH.(d01QB,R C'*DzN5ɨҿidnaFY yxCe-,3`=٪?:|([),H}Q.u#7(93 a^ѯuldgP>?{)2G)|Pɠ䜒 4osXʂ8B (}i"!j4XRRoJӸA:/ ultQ*=BO06/8Ztz38b1RBm{?֏nc=+i%ɥLVi<k/l;>$GprSXkl{&|MB}hĨ Y=?RVzU;baz&S0/EL+*>%*++cȞ?#aNZRl6@QnȲf<#Ī&#vRqg2cJftG޵rqzD^U@;wڭ^fC{uk75dqAS( P`Kp% UrigkLqDwqO}/'fM <(o4"% d]+$0{X<-LzS* P:Hȋne^ |x JHFa< T9T!H=$!(N)esLi Yu /`jvS&]E'$5q}HZ3lZڣ]л[hMn )-b0uX9\T,TEp޼yU*t /KEjW”{$>i}+@)Aoha9nu\˾l_1 #~rr}L9",~J"^q2 ו`980ny} zF1io짨{IV9 \-.ܶ.$ͫO}rz~ȂvڕGMjnOOš_/MqMFMe@tq&6g Z9jqiv|{/1WˆR_իΞ7CxmRUes|7P^3!J;@w½`w)nM|bpăo8'vyC[i"NOrtg2#)vp)5b!xtpzܼ>=WXiD KeӎY.v,@_BnCR卡S !tmFvSA u~' B(adkq-S y=T^Ĺ֮ZW k@ *\Dr@A$LI#uJ~PUYI;y50+؉7)Mʁ!BdΨo D\?EmGPEDW+)d?,vijmN60yx-sͬoE+\8ӑᆬ2t^F4m;1\Cˁx2u:2b}y$~3\ Q\"()- AH@[R}7"J4qIkŽu53@3uW ^.qZ/ MXY{,i%kbojd~@;"ډ:%ret{@ !!籠XgG`VWaExl$~P\EYqiS쉾H.LA;},Kr ih`JKB>+V|:l7/ͦ}r7H?)qJҼ_u^KzznjCe (fA A%uCw7T Wt6h>}F) :ՔoVsBZlJSbtn=rΌsw홴!RnqAq}؛ DJCϕYbk' xք<v%(CjЅiLM_ mP.UnHM7Sh zZ:v>  bG<ԯ+DckK6pwdwJ(  <>#AD܉Xw?A!+"x`7&:ݻ]EF2BѬ::*Q(!7A78,1l\/Մ _QڥYZx/n6kYZ(9,RO_ 5,4~ ey8P F-վ~BVCG\++W.iZFpY1!.Mրݐm^TR*!lY얤=~IkGvsѕ}I»b\%5[L%5,a%udu2ZAۧ-BllGg.`& ogx4Ax#q|pYs2E6aVQׄ94^\ ir]rer.Ƚ=Fg2naaw;Ryo44˙~B+ %2dYjă}Yq}e\|gx n?< UٲP={Y[~;'O^뙂bxq1rr r\v{E<5\q]Հ~Ϣ3_oV8kׇ$\,mwm"i-e$އX\w`<(Pz\;~ԧV_1( UfgwU%5;xs"ⶄ~J}MT!+HɎMz):rAl6dS:i p뤛Ͳ X;PkYUٓ2A+ŅC9BnL>[|aENJh ]Amu 64F bVrq"6[BXxoH,/ 4ְa j] N6igy͕8HeBU;bl. 0Ns}Yni3\3`p)2U0khI|<#Ӂݵn@bxb*A4x:d|qᱚ[iZUG֨cŖL LXlVX<)ʆmrzG$[_Z:;x^(;U :h'Nnn <;a6$wz44%*Pv|uƖ2}`_KEltJe;}[~?jUNm*OKSjDnN6y+n&^g d72+*M#:+u>姂B'tƣwh8y |9ޝz!7,ŧ.)0 &H͛ԮHxۦ3Bv칺iEWW%v7MzpQ£[U=Ǡf_ͩն6ejNgy1ۺ,gY\q`"x.ydNx14F#'JYlExPJ0ϥ"mՈ| S)[YZup m!vfQ1xk"xQVn] 1 Kx$Qvq,(=IJ%Kk u}Œo{/]+dK L+X!uXZeG\rWҙA%3RadXgs*"&%2>>L:?W vz3'ѥ7*X5&OsYpoM>.9 PrYA|+s{X[FJD oߣ\_/NWh5ήNNb1|Z>?@= EN%!WQ ϣ` FgZا8?ymh9 {mߟ#&@*@AF<.WY4pΫC'+{9;P29gn1)%`/67㱊x(HT/Sƽr,d+4zM8tyupvtr:8uո|i}>:B)W( 'gx>^4A0烿4.u8h\§f|J>:o֗cLXu8=Eu)@:/ h+N(up I[V 46'OO g E9G`  NOE0..8?RJmXtxz͘ p"ܸ8e$g'gP:>:z PGקkkLM^OXΧXW0ԜC XqHIa`*_\|> A$OW_4 t|u咸w}(C, "L$@C;(jD5>|lN_(7_\"^%`J2ZpF0-:!xK\5?xF!h0t!ᤁ7!=_uX9\T,Tu`p|U*4AC'"NT[v,LGr#!L۷bH Ӏ#_ߣjq~h^ƏH≳ȳєAWY%t, Uk8ܧ0ny} %Qaeڃj'{IV7"'pzXD#. `3qO|x >_+[Zэ> 'ꬬo)LR O|r傝 rl[;?L-v! [ª)?x?iqH "_t34"*ϰɬ-NcđX7(.Kr0 1<ͭ[v琘 [6R"* wm۞ϓ8-hBbCzbm:EZ|nZѤknߛ{>lD ln .^KnUC/;"8ZIp<C6kRnYދĎSv-87I~v{:ڸ0] ,tiDF4 izpBɪ}-fFVZWл\]ޓZ2Spk.vK]pټp^[8;>jy=uMvr+u-({lF`{מ(c0p*껻~mx0|PPTxϓVP:.Ū_ybkpVw0C(0u\oꉫk6XI1u4u2u\489\2hSD%8 ̌.TȍbX>fgyXor92&*Y>D?$y!Rh[|~*ces1Q(cr FmR1/*mgBpJZ9鑅9QdQAsͩ8"ey2ɥ}UܮtN_k T*{$/GkM55-$6;Yo* Jͅ)h8iy㏱4zxٟq9"p%y2FqJK(&]\{MZ2)$.hO:;XZ{BW2Uf~ZV/ UeosTkLՓ3oKsUw,u =Fr3!wSe  Rrm.)ϻw)]+>82 Ul8/b ៲RW^xPf۱8чѭGx^yg/w ?)H^ z;5r! Z7vlX?ki眳[" ’alܩF~qb oHsZ]{Tc4daI4E&5Ƥ@:f*b%8K0ԢZ[S ɔw̮+J=rԋP'L4w2ĝ{WPja҅N\Jqw<,)zEyQ|!}A:t "W+(3v/^]X!?j]}>" 2eB pAOV&ߤ.%I/a7`̷"i(p%bhRcSP8^aoq:XV2o,ͮv1]4fj@X֯hA Tzp X>o (_{֪ tCIdD҆xssҮ-]4^;(" t6^3\߃zz`7jog ?RBxA09iY)Jt'!ܑ Q#ԜRۡIAkOq_K_ƹ jlD"C4@y n0J4NWNZGYMuGJ吟^Yu>*1E4lUP{p t3aLyge ;@+ zLX+36#0 ?=j8ۈWތhG?u.D/b&rke4qu{mC;q G vTY_*-Q@+\"W:sy2?_VIC(5N/l0pņDd>Yuy?a`5fҢ9*'gzC#gЗ~=TY_溜d`f.Reel y߲@j`IpaH$PrpՌxqUI*yr@ys")*׃.c1 2,.POb o+1,d|OĚP/Z4D.$B %ZJr)GZJi7;,5-ݾhRKNTӕteEQXIsi,JI{e(((WQ25L2b1,H(H,DF;#gG"Z"+_LDqZ?]OV!Q3W``nEd yN'{}?۫5Slye>lY綶 :e#vyөe<:ruBjxkσ<@Y+:q]ӕ@ʐ櫆J֔V'ڕ27^5 <+BbcA JDVz,,3)ئM3[(FL&FEB̝`GCR\EM3h'o)?%\vYfO0EBI tAq U@v,=tEmDtú4mKeo.pϭq|<-[۷C߷&c+Pc귐mShO79nMeW5f,  0B*fz|< p(dDiTf\-(fťՊXS`"xc⥓b φ ).G^36󲓣 ;kBA]sACO73in1űl fv1()j.,\ˊyUn㸯VGK[#5523"FqU)rIL_3ACư-C3Cȅ<Zi:sbʫK91 KChT^D3=C[BW: hSSAC,m3@hs( t@sY݁B.?p qĸ AIݍʥP~ NFa=TM0ͳ oNˠaRhjQY%U-S _xA\q3`Pg) ;Ut0!`B=.\ X"`BR cJ &*-P0׆kUBzȽߞxW &ܛaiܒվ53Awl¿ÿWo{ 桌u0`~ 8X.n,\,bIKXŒ.aɚM6 ?WWMW_.gW/GSTeFlpɮ9fN_wɯ{7 IfB=: 5u$IP['NB}݄IP_7nB}݄ u&Mo-5y<,VIeV;gUл#]zw{kNu_]zߕ|ߣ=߄T@B B%4:uJt^QBH% 鼦NgBB7RnHK /R7%JݐR(uCJ] )uR7%JݐR(uCJ] )QZs؄ظW"J@;/[_S:2L+lWPRP-~GWE^+|/U3We*VVZ嬌F[ ^ ;cĸaJ+CÝ6&G]#jlUl03fΗ-w?pyqՌjYpqճg%vĘWE-F`> l1Fs, S(9Yw/ULM@i2Q Me] W71l#~Đ~{4cl^cȑ~$^㶟kehko1#e^IiHqY!̻o{rD nڠvVkmI׀,'S*/> ܔ>kОN:m)R:f/{ pZEN9\xi#< }µ㕽RSW]KM]CUME> yHm߆>NJR3:??wO$X]p] ) atӣ6,bt^fFىngn/O50*<4T(ߣ_Z`fz_8üv3b>Fl9J+38u`B}z_"[G!vlNY3YGƑef}Pi)Yfx]-kFL 0 @%˓N;B?=S@BqQ>u?Cչ{tD o.^ݚL|Jz#uTX/>3%@#Nb_yׇC|ZLi)Ge (_T8*G%bϋUy㪼qU޸|hUydUy㪼qU޸*O\'$+W卫U奦$煉 HeVZt- [%9EsG%H$]ɶ&.~/8ZO9ZkM'xyyjDs׃种yyqp/WWJ2nlms?uqBL?Ɓc O4߻\ASox7|%'Î?N$tzh:W @|IՏO`kߍxﳲ1yvV&w) ֳx! i =?j@E|lVQOn0aYo\?}TT2&]M¾<͒"i)Q&+bPʗSqZK ,I#>0}4r\rZ~0vZv&O2D@ hGJG6I-+t߫R]Ng\;B<{:Vʈ9#Ga)_x+UuؘZ T"%_f)4Ф.48sFT Wo0DHB o0JDWB3Kݎ"%d=k}LM;c_Z&ȇRp-#A ._^,0ھ78<>0烫O h5(0up"7,sؖ׿SqdJ|>J6slRKp >nv{0*w<=ao/>X- ~> *3G@94p1 94ګOM .$TcChd܎0RA)N$};^w-[X?`ztoϡ!&>u)v7~AG:|r^pu~,j `XSI$@*q.2Qp^ j}S4I49 pe9gdGC2ځ+)coj\WN"Z7꧱1G_9Y.j}+kZ PXVPNNRx>^~,Bx 0ҿi m /÷Xov޼m =4oh}quh&A+bIHqvNnalǁu1>7⸕ڋ@AoxCx*VkԵ1诠 =+nAvk8& ^LH??u,by9~öhzs Chnłwd Ț< PIX!s@=c5uz9p$!g"7=kbPښ>} |UG~fS{+jոIɐI_:C~Ɓd3,*LêljDyOdTE.`\9EF_%6Laћ4hD6vvޱl+8 BJQB $+ў6fwO*F$$\UVs0LyrP Z ٳy9 w}.4xor?O|#+}3G,q> fq+#dކc8)';d}τ a2zk*-1HHĢK&#VZjպQ<aGJ2r郺GփsbҎ(y$G4|M,X7-1۲ُ.Tn1uR(G$1Y9ZkkQ8+xZY Rg%ҹ-JءROKLVۜπmpeI@h5NzI$&G"$$'ґHgcKضg%ݢ'v@MTs=SNdH;nY/,ǸiaMN#u*;5֖Puj\z\/Wj5*MZQN6;TmӕTtS+.OTeMDZ,o?_#u 8a~gSpzLR9I=b3oh>kJ/Ӟ?tg2|ӻ>(ҍ\ɋSF] U~L$(38a8h7LFVLH'. a߷o˰OfOS>>J ?.(GH3ixq:i,ŬlhJOYNK_mgQ4 bf *⥣Ie2`<^ 3Hxm{Yg{]]?ZGc7,!>1E6Nm~pZ1$|c6 ix͇I ?W׌'Gw:"\ZƨZ,/8"j`Y8 nGc YSdy ?s12o]GUxX^5Hm伶F~2p9z`m?Sٗ"9dr:O-ѕ\/cD!,o;Čl1&)$'df{5\_`dTR C1]oRbRSfPֆ7Ez暣N)K+/ڪu:fyaܛ:յ\W >kdk8] a`pSBk-~kݒU'@h#)z%yy Dn2r) ]35!ĿwL%ك7;ӶV`4a 'X$H=;6BhTUl,ML>G jCfNcu"oO//^];P/w^IU$#b{'sSRєPRM#HhTri o(|JQiȤ{մp:ՒfeKCuGړf {MhSmHoe ޿FCzȢAP\pؐҡ,Ā/EGS\H×"8jHGbF1(7'[xC۶.;=nHLJaGa8mIW_:6s"pohW@=im۹< QtWc`jSGEA U4M]i)[5= F6xG<99FqL33So4t|*XBiW75M甙ZѺiRtѽvt۝N6i:jRq~0uNoۀp} ^qrnE3Ffe!קRw짅,x`9 f/)^6{'Ҁ@vƷN5{ύ;?hqFoxPcv<99؇|}!>.4"Pts%ÿNy~CÈcTG!9 cT5PWen7@FV4n:4.hVW:# c C]]V}uy=\t!L2MY  k4CR'ʋ:|b  J,܎a Hsn@OEzv_m L8;(#ޞ rG'&iXDŽfB.d;Ȟ`j$@f9S䟺7]bj]"tz}骇2>bGM'7=T%KON2/Z\:}xES֏W7w{{޽E:ÇPOy oA&w;|jN/8B?Oj >0!_t l5" {s ");] "?8~ā@];mpI6R[0N[O){"uӿ=`wsֻOwԠ9id #~܁&hΧ%xnzEZ@^ݢ.^XQ P.;&#PBh- P՘Z՟`g[_,$L&w4Ts{[J f@M9 Ų7R~V%l4U`@{[/s!o(x! sĻĿrM5 :B9~hX$]F(eM.7e\PH2ITìCi\ (GJ ڦ#D>HqI>C"/79w7R^v\AH& Ց"w A,[*Ɉ^mr ؆1 2ORdDzŚz8]!)9\`S#?)C`t!M!)",Ff8.h^3鳢OkSi$B@#˿T^Ǫ59>pd]^"McThE&TU<GΕmbK‹`3tUB9ce0Y4S)"҆OF :p-ә \ r"6C_~f.10'oSLuzag6æݝ꣧9UlEOöM12 3"\ʃu0T> >^poH/@%dWcUQkm2!TyYe0-t¿ VThO;@06 Md0 ZG`%*!H;l@@J^Aъ``7\ẁV&) `c٦n J)b+ -VM $cX0y9 b [f ]eyh=71auO-&\dz1:̆$^ a(VHve0G8ؼy( q s8ZhqSj{n+;Ieب&mlV&A# z` bǑ<|BeI&ks3u"ob!S1,$=WިIz?5 -7)W1ٽS;%}~lT佽f*_~h39<Ƚd1ߤnӑ޾ٗc25< !ĉ@GSޡ:FދTTt yIN5 $@Dr7k85~㱔@xҡ%2)1޷ kjR# XHo2Ǚ(҉'AKN= 92f3ukY \'iҋX}'P%"xĂ(>xq: yU? TU,~gf@d)҄'39P)c,"# YtTkP  U @@! *@ 5@ʣۯ1.`y5SOkw՜)kw/lD=^F~ӲvJ+-_ڔqrzi#e{AYU& &ЌcMnBbpp% * $,J(%EreɥDaLCCRd<%o-ŹT0;K (+h ~PǤ|6 z`s&dV R1z4f17uRjTzao<§ dg/ +0 aa;у X#/.Ɓ yZ,G)4;g`FR)ۣnZ^OL] R^ID j&$Z@pWF˂YT.RYg/!U2Uz MAbmxtAUOKP#?Qn,*Kg76QFOӶHNCu|v݊lp?ڷO#HWٜ7GOA_scUT߁PP ~F'Sx)[\i'-R ǘ]Q[]E-(<[7([4KLMiy4iZuUL>LLt%KYTy|` O*(IOq*C*TaYdlyE +ԦV\ꌜP'c`mJ ]9U(y'aP" 3N0AӪ² 7A~'|WZ֊sM'5cV> >^ܹ}2E;C '@ DOX,Gg r35f7*ǕV{3_NωVjTJ—kpJc5$]-"uEV)%L׭ykZ9 2A\bb7'&}g2Q,S؜qɏ7Z>_1NV:m&ESNVThxMW_g9Y95NC-su-~9tN%N_EZIQ4EJP0]|z# JDGey"3D v!_i&|1gt]SoAN~v{پ^]}ߘ1Rl^8żsf@,3]6G0T h=Ux>Oe3l'"\'F"7\J#Uӑ94:*5ЙQ1DXI';m2\q!u@wKɡ嚕`[$ gn!b;tYZ|-q3 ͙,sbh-S=3 F#jJdnr5>s7EI'.!tz.\w:SpNq,rdF_`\vdQ񇥛[b$L!h`^ZZ0#.mH?/{uRHV9Q_e?C"WИ B:QF^F s"fM\tdjQ*=X p`T+xDx Inv[]5= T=iz!Tss eߐhbeGRWn^%`G0^N4)"NMJvɉi`vqL'P>β_7Pb+_F }uquW\-e~7/Ŧ+zfhvt9=1B$"& xيd^u=h拹7$HUA66iиL&e&?$^ ]6&fh.$QO8ZDn r_H+QUr ǵWSl9 xGQ[#6Ǐ^rBv,s?x>xָ(/#[7"g0m^b4o1x׻8+"b7&\M! u<i KP,G\4"KchY<#~1 û0WdTntn{1NE=< %x!/ %i9C -3b#au0SI[Ei]7bbUw$e]x2T D!sn1$WrO+L[1ܵXPLlNԘhr2SqWa>VN4Yohhq\On5rb+w)wdB& L~z  c+~VtYoOLs'#i&B4w̑ibá .lD|DTln ếADgyRăAgme,ˢRpu q$Y hT$\l{Q R\Y>IWAPzNr{ZFAa‚I2ӣ]x-y):kdM B㨋eN}i ~;Ӿ \ԍ:QS?0jПħ?{@1SxCT{YE1`I/8c:wb>љLtu;}(sޛ۸!\ǭǾ/ogڤ,HvE\Ązo09yKzpLsg)ĕoYyXƠzsfwHeQ8EĿLuhFͿZ_EZ=P@pC.|CSO{\L@P ^:\=͑&k㠀ԑC c#f~xhz k$XlG5J2)$GaǶŽD1 ;k&+3n06[A6':}XG&. ӀQ cL$ &葇\~/~Rݢ싏V}llC7*՝|1 Gz Xe үWr~#jI53[P!#p6>Zh3u67$d mϐəTw9M;&z獍7٣7۰GʄlZꅸ12!Zz!nn!Ja!ʅ12Kߴ%ޯ77"/MՍ!LO4q\u0ov~w0DE8`aǎAcAC^Yoٰ$kk+m[5ކA?5tY{ŭRKTn+W׷ږLk`c&j5Q15 _:F.\ 0PgK^Cغ=H,,4 ڡ}} `9DQ15/]p. >Y%,|X2vq}u~QHB1j5PׯT*RL)ͨdFz|u2Uۮm,q_T3,xy)I/:Qe ZۛQ̖[f3OzmWͻ cͱJn&zt3ACMhצT7 Sg5Sn|jW:we sJ{6yL@aӼ3@V8ׂj-<j:vݽo}6OHKWvӻ .p(jj멡nHO`9+jA=}^^QM)Au}v3^c6Z795Y~ް_sV֢sv{Wͬ Xp6 5wi}5k|*ٯr|T6_a5h3.+l^sdcϻаb>UfM {*wuK\)m+9aqӇ0'^L(r챝>u)5fK⻤M&e(FdIyo>_tn . 'kD߷ ‚)#b' g[-GD(亩&v:Vr߻:{md9x'E (eR.}.ɩR}֏H= ul >bDLYx%sS3n8mR3wj6F)y`&rM uS'v>gI#kvOD\x>WN}r$$ͥLYGͣ!܁iݼz h95s]jfۣ7*\De~YLEƐ EkWOXMp KO3yM8HN*8ۖR@檔 MMZsݱsAvᗸqZwHւ{un[R8K_zxZR#F2[ZBwH!K ݱkk[kN;B&zfxt"@NFj;{utJ|Ha7SD%ӔMhoyJ^^D "&2zM&0P ԝӚXF=~4xg^p!(q `TsߝbX:ƣE BeN 㭧LiMV2)MVjd> .LWkОQB;ʲK+T&!S ׳G\.d-c28ۤC@RHZ@1RTHYy(۳^ 5Yb)dLK#Ĵܪ"*Ym`U.JdӜҖ}{XUi=G?xFnߎ3VZbBlBk"g9oKYF%SƱK wsVn]["kи6۲zL`,[#b6Eɼ)pLh-Nm:9^[4F Ud)u+^74m8ZvJ)[RiOiMuYyD+ vv>m'n6̵dY_| }K<5$pmjc;ϔȊF/W/i+^`M l9EC9F}JPfpfOG96n( _ B}|Pfo .|sDr纪(M;(yAr{y2n+p1bt_s ]k!(, rP?Y+:-:iN5lO p 6iD`C?'qxr zd8ݦO$=!_ሆUD{sgEγ)l>RL()ΐ_e{Fί}lo"۲K6kEϵ\{^Cn;{6}1v-=S%}ƔT ϔNa3+hgcZw[ SϰlL)y[jAJ`Lg5^\QwXU&Uv笱хb[kcFζ_YdQ&M=~ +2mC]~$B "DCbǵ*IE ^^hL%ih[+wt'n=w}&:7}>s*R`>L$ad[(wkR kdCYSlpB(R׭2lҤ~Lk uZ6MhG_lz6S۾gCgӦm֜Ӷ{c~g3m֝Y6:ϩ gJS<5P;/J%қ$\< SeF %|D*H;m"mNU A*U?#Ѩ%w+葍ܽcՐwP,<MCëۻP $Œ#}%j;όDR5*/2ӅF17dģXl_{)U .Ӏ<؇r]#r :A"G u˵ϊL{hq"$Dţl(`G*G@A$eo(}/qdZFi"n-fM˹{pv{پ^] @o|n:?ݱ1JˁYh瞶VU ,9ƺ,(r+Udl|xI m<طJzŊdgKbBJ6[VQ$YU &a+P3[Wm̠l`c&U+WڔQR@S2[)(F~@()51 I TH9{0kԔSAKJ?-UhAqŚj)֞a[зVС*Ĝ  um[*pr\.&|zŞ] ͍h ]SJ"WV@Bi\)R۪ C*6R6In!d,BiaFmx5U*źB oPy1{Ш6A7oS z^/CZAd>bn`:Ot/*~ e h~E>:bgH{5 HEUP hʺUљY D@s d ]JfNWyْ2!!AHqǠ*1TBN/94;(=Ecve9Ŝ|%1|wFeڱ3* e#T8e`WZFlȳOcaT1B,sbg<dLu2s:KXڨ5FO2 @RfYȞ2سМalJ ArX1٧ * 0׺F_5岦)-e7%-EL)ђ6#אmJZKQCo>_oN;_Nh;(R֧4 Vh(ӑD$a!ED}4Z~ͶqQ ȣ]Aޥ5lk1 |dR`_nȲt{m+tڕ$t]" CTK5U5ts%ÿNyN,;bA_|r>"GP잃-۩k`8C]v+@@2cda O[hk`54)uv.˺4G+BCF(  ~ &wuvnZ_YsymsC{JR3,h+((fR2e~H))wkPC~\ZnG0&;H~?JOAe+SMxbG=!߃ΙXP5P#`ahP s!rgyX,cBT385?R7I- ڐY>G1?Aߴ.O/Mwїz(.4|*AL֧^sPs]׹u𪅰֏W7w{{޽E:Çouasq#HȧV#ր;[OE|2ʆ_#¸^$E:\ VANtO`*2G4!h,5K)rweРA@ziӂXjr ؆1 2ORd62z8]!Da[D0ϩт bHS4@Hz <# #H>Rҝ;)*+騚&D9Vө7 ܧ 6$5+ɢyXwYFwoҫWb-7w$оdкwZAI(:'0nϱ!j4 H._ڃ80^Bǚhgh]~ݴElA[6 2Sf>~C! "WhÑT /1eSLL$!nzAjM[ eemrA= F!n}0޽~ܼ{\~~$e-cӟhIA^QdV"=d2WM7G 彦>tF ^d_狙s/Q>OCN؜ %G%L3QF, +z>m$5ŦqoZjwz'8>#@HpBnN+c/x""iE8F/C_6>K.%$4 (Z"x;ij1ݺuHq``+j`!?Dm8{aD ,U*rG*ţ]8}5<`XLuK &L,O ΁N}ZF7T,uF<߻A!/⭅;=tLIX(:t}k%f(o/Ii~7ӚmR|7oӚ9Lm6~(@Ijf#}Pr=La}dzLI}lO' -` orgS?9}SPC5S?9m >Zq4CLr>[Pn+7&8SgX6-&,Ukdj$7cpB`({ₜeEnUzB/H1#ƅ tgwADw.XE5LHRw0 =x[څ?omFu A!=ms@#l{D# 9zh{miC=>g'5SI:Xi RAa SH+;P?*t*(JVDqHGmA-2k+gh{=d4fKn=@( G QLnGvh8@?8ܖq}۞0zY|'5ʱGk<0[(51ʏ91T>Z1v~̡sXV1U>Vsx9Ǩ-Ou VN;$H5 FJ&A*ZUiV>zKMwX&o q^ž^UoZX[R` qI+i\ ݡ o‘fT[^"~_lLF9Yݻ(Ve ,LuȞit7{ ׬6I4BJTW0n3edD؊ʑȖ "45!)Ѡ@g )h y~ޡBыaýDRz)fFZ/YKNu uPDad L%aڸDQx$uKGiq,8B2ݏ:L%4=$H^'q4ދyOz/;e2ĉ46+z* _pS#X ׺*\ңc5(E {lVd+w =< %{6hT4J&{aGؽ 9zVMi n'> oq[4ŃQmQĦBrK˰y/8ErU} T14kfI*vTM^ԝ<ssLeb_ˍfuu74﫳?SF|߽z s =%u -滙] 0 e{߷c{mHClĦMlMhpJFP2Ad%#(C28s!+Yh5&뿼!;SG}$&Z`_!-- -$ےFMUS ?j-DA `ץ#_$cPw*q-]1+ "׬|1hČx9 U/VT@⡭gФ=t{2BWF8l[$1?1B 3Ks!!utV|iA_&? #r]%EFz HAuƍF3ЄOFP? g1~o.;fieaX*NA Obb,]=C< 2^WYwFrۋ_ dJ8G̛ͭ􄲳dJ/q1{B[!G'H-^.o/(u~Xẅ́ogjAo L9+侐C. 91Ɛ#C 93ΐCC. 95֐cC97KZ G\rv1tjHېv+W\5GXѨՅ=I!PTaIj-/)PЬ,i,Z_RU$qՠ9oz 7E"`QQƾooYѾr־ѾFi>Ja3ڷotY{(+GQGF(^Gi>Jaa־Q}>Ϊ'Ѿ'D{H3 bzA4,/AZTc fjWĢRMO\;I5 b6pA?U/jT% ꛪDSSU(e^Cs)jp ~ ڲ0MV+m!Y5F!SGYCKqZvA:D]VMYc!28;a0b qvH:ΊXAp5"gcn>uXG?` CsH/fHHO%2㊔2&ۜlӯ<ޖbu[_sHO=7Raq?HqR<[_R]9/ir4w}4,i.0#SRQxJMRqJTy"#pHGŽ"{ @˜^$lq {MJ'ձaHfFn6QG MX!"Z3Z#􀘣 ۟;KcOHYm^WRl7 h| n&59&,BdgX=y>Pl+L/9vb.]@EZ' t\NYC1Kp @ey$XnFoYAʙAYAd^AyyY'+fVyyG~uG, f~K,@b~]<\B Q~A-!>ţ%xT@t9/%}\@LJI<\$K1$?'Kxēx."xd#*mIq`JVʈ04Rڹ֟)5M#'SUlrM;xk~*yg ˬC=s)E -N+8z%.K*%.S, $._ꙗ,u]Luܝ:-s/K\^KC=7BKC=s)t$.[\K\93/qyck93/qYЂQQ2eKC=CĉjՃva}ϓzr#ɢiQWD;=k]Hvt簅D$WҥHIB~V6i)ғb9$?'ѯ)?"ݏxv*q_D򄜎6;LЙy`FTFE :4*1qCo@Qs m̴BHG蘋 (CP@lqDy\f,8,5YD,Br*,Cr:$!y9萼EtH^N":tEt`9:(CAX.#g ţ F+"&AJ$Trw9^15e$r.G9=9BX(\̦*{2cʝ*A䨸4\WqњQ5$<;<š,66d2W{>99]+[{CsbPȾ"Uu Q䟻 JбcD9v-6$l^&Љ{N0;όwZv=kHr%yG{&6 PUP G3V3dnqxvܸt387fspv<$ۼp[5'+SVDF'_օcY|ǻo êudOCy#[sDqA")%&m3č.`zsX#6jy Q{N}k &An {ZT-N?" 4ŴA#F#"7tT]ӐPsQ z&4 꾢kw T,ut9T<=` $21BEerf;ha_EWMC<X@BUhsjX{pz_':31*=gU4VQŃw28"PG+)UE:\ @${Ny>^d|:$!D.PWDϭ3L ^5-| Q߽Vф!=hh XtXjp0\ =)F4<"17ȿƦ8jC;Ll ԑs.wb{Uȁ}ͻ?H7G3i(>#)(M(y>{ =xXS eXӸw g#xELF(<.DH0ޅNR5wmI⍆c)DJS$;j qzJ19KGxW) ͝0/8&9ЋqAHf|ݛ,&;; sw"# vԉeYI*}n =W=Z"i;"/WzM\U ~r]^MMsԬ?RH\Aݸ}9:f]͌"|!vppA1(?xd@#XyQ A̘EjfKtWTfDO'\ 1w02eT .H&m&:5Ue4<>K-c -Qjt/'384rף&YsLHބEJl9s ITIEi8AX4U`?ɣi eIU7ƖɧǞHJ=r5[m}U/W'RxWX%d*NT6!iOR&.S"Q(1c1]2e8YXMԴ 2g%H, '! z@sHBpu c;B}G,lG5&W { 5 6'74R|#Jہ/f `"ASH S1-7V,,=n"X</7|.i iYv,Ea\|W1Q[0lΒ z$x<:;;J 5nM ^l5>[ ?#&8%dL/[,!2?,Mq~ * $#0Z7W=2Z,y ]8 ‡'dnT~%5eJ֤sZ x\V#;ܨ,gX ^nT3G/unTcGnPIãO !קώ/ (N&$u1z@Vɮ.R@pTpFVRs!fk#u8/RvSm3<}Y MG&T}ņ[/V֕+fK]ݡ_{p`1sKK׊;2,>hߖ+-7]ࠓ-:K< c%=M<{`< zd4 DzWa1(m`fK~R)WIi]>os#2TRnLwvD?GB1?B#ʏH J~upfy?Ckr:wJ Ν+'=㲻W}=/^E׸+}D9<}W,sD:a.--:<ϲt*/v+%lHC\"}(\>UYH#JfM xYζ[BM);uz)fx8,+ s2+9HPڂ =ʹB‡K7|Pz($r4"$Yΰ(f^)$ >rъs?Π ˃3(8_)'T2(P#G!rB=< $̧x-ZY+5"ZQh G * g=y QȂ2 cjQ%hȓte}*4bP-khMdDfN!l .xX!dz7D"bS-#uKn,/Ɠu7_9/ >Nk|aX9~":V`?sZ眚!]~qsu954+|{i(:5# ?3ՙ_3GT-?aSijPyX^:mUڔ;!=9'L[CJ| ?~U5#]w}youAbkl*463ђYA0:q*?aJ#&oZtppDZ#<:A ۪t)z!&D!`̰HV5&6Ǒz+{9gak ON]͟Ly5Td$TM G[GBԈ p1*F= Q\;Ga)xKY6\kïc০wTv]7 $>9|Jo.~ex?{ vK}5samh6R2SO>5ܑQc3lZV鬈=g>uO~_AeC`vTHA!ط -}RF G5%q;:u$$x-@xnB Q9C #qC95`fg)7 $pfq{kI_)ozn %{Iy" ?{_Lqd)TʘAȀݶ2l3$^~fx,ͬҵLEΘ]᫙)V; v2ݾ)X%bK1n:]N1.>r> >_zt%~\~gc DAr%"+\~}kmٌѳ!F@gFNpV 7 kҪDa{7H܂DV}}?8(o)Cp<ƯϪb 6̈́vKu2T}raU*E(%HBw_v7-ViMUl]wAՀ]άC ݹjAp H`K[(7yŦ]n1h2 Jo+'nPH 9%{Em; _@?}`hqԞ[{ 5kcr6xle!$;7F&qgo7@qnX  sԼ CЭ!,_)hk`{j$X P("| ׬{xkv/^ D=s&ɉKO5~IMzxe'u=-mml+x0{mX(-`yȉ!b}Z7go~-yʱ%𙀟QLYlO9=1=4Cԃ/Ր.K%m%s7S q{-$Ⱦ<J8xvOc+m]|o7,Ը!<ς]*O'򏕉0*-ݤBٖb\EY ݐ{W4$-kf]ӣFU8VSOR"N~\jĦozʊJ|j!?V_:훫}Cn_ -ll87C'>״=CyXޙ+1$rW'(_vhz=0µy^,R+)@ҽbN-||nz?(>wm^0qIK,j Kb*Axɫl{H,SkczRW9K՟`6 Vwb$y蚭.']rJj_f9͛URrZu-F-$ג w2e#эǏ7$B! B%]1TAcT-հɬ5\|fþxt$<#)&1I&y n-xs,Р~/$b6[#aN&,n8V޷ U/GeNr~*|rrLLkeyh`D; x 83gyQ @'?RQr+'Whe$g'5&:qn0EyB'+:/]MWD+ryEWq!g$)D]OTǞڀg32 Ou,XDgI!9Î(#/]a2"KjīN%5WcSkd56`Sԧzg>ͦP(TWq~6DhI?6;"tP8'Re,9eXHIlF"ENZ*"6v']\H vep8vR/4+q֋_xB> Q8.Fl}:(\BaStQaj쓴Ypd>NGqnfN"g&I$QÄu Ԋ;܇prPQ\;z PE7E'fg|EFn.7fv2s,qIk榑3&9̈́mo _n*>KdAa"B{|PF`'>[=a15"_BaK2cs7[Q\!_ 1 j'p"m?Vi{ߪQ#3&}"q "A*<4nKlQkO >e{@U?Z$f9g|̜ƄXV*L%[w{): wb. }s&]]#2H=;;PfjˏGK{s{ !uHq?v%7/ خ2PD+f*+[YGYc W\\:߬bߙb!.)d#t{NךNk0┅mch-<*?`>~pSw=d6:=P J@npX"{׵#N٫i E<Do r-]";kuλgÉr̽b@Iޑ#A֓|{֦{rOpjWeKJ·殯?*mUD {G_fxO>*zs~69ߛyݔ1Xm őL1ESp)Geytf>f4^F+e0ZY7VhkiF[kfhYvnβ7LuhhX-]2.sv1b2kS^${[d#֕?Բ+6;z㣑v"*C')Kc. Pdž_ԱG}ԱA90j{%QuljA_  A=_ Ռ<6u}5#I.xuuds8B`~؉KF〝dʀ/IF^Qe Ąan@2ߔ77̀26z(M|3 (sE2.,el`46<&9WNgFH9-i|lG09-}@e3Gd,?yjN@ЭIV|ߕ$Ϣ!a<f➤/;M#&tBd8$ KD|̇Ŋ)5HR^8~Wȭ%$-pޕ$5:C(-C|72, ^{W( ! 5KMhҧ^[)qFxI_KH:/ cB ,%|>}!N6.eÈ,#ʆp Q%CfG8Z>dh|n#M'B`3Ϥ@EIȦUXOg؛:'y`xyo>CS@91.|Y}=6 |{ ˑ$n2'A1!I|̱,$-1vERmydYBcȲD91p1L\UpYT +)xBLJ!Π&ŐgRp p8QKZǪ}VO8cq|v =-/?݉\`וœ?'{qXaqA%G8zcR!jU<ᇬ(әB.ܟnL B} =%*~ KU7vj,Mcdk0uuN{n;rE۬Ũ&9: )[6|MMZ`oOq%_xWvE^\/BE]@ ,5wנ3y 7=$LJ1CD^6y^%*KR/غ]<8FT,b-Ht󀞢zKxϮ{m$} Wj}OO;jY֎[Zr2ٙ9ZJ,P‹/w"QL&q)T=U*U_6q7eU Y (+V[đ/{ẕRk6?Ef\(XX#BI"Dh,3=s:2Xzz]~`{gR%PՌ\+1mOwab24`k<ek;;nFکi5}ae.K;=v=7xtث =F0.DnuUbǓzg`7˒BĢBbB 9 lAM Y Л,1hW||y}ne_?Ӳ#ecb %Eh xfn7ƑVHYQ*a 6{`zBx~bafWZ q̱,뽒{%JXˡDh-Z%e)X 0/y צּ̃a]IS^غ XאӜü泯vQPJdo' 0lY\cObc6N3Qݜl l\ B܀eLê "x`"p4kCo6qihoxy=kDK]8ѓyh Z8nyo9Q^Sޟ(3AտGYO :lt"$o4_=~Dy' 8K&m~N^{sW&d:=@#"rV8W" d&v REzU/%IcŤmM'u$d_zlOCW/_A> z!vwo_y }u_5Oϫo#%Gzy[\ WBlN8?hDi޿>y^;zkq[PI՛uHOL@p{Xרko8>R* "9V>*Ȏ-PT@/BGa^=#C"]`"!nCw|*nrhivjhzOf :Mɴa{9# Q`Ks,e/llFl86˓ c8(꯵AHYc$lcʾ9~}¼v_X/'ŚPjo{zAJTɚ.Tq9m&(*qdO5Wa!PZy-obÏo*U"#JĐDܠ(*iiشD̋Ĥ̦ miF]?X,I(Hq1|w7Oٻo;'ysoO Pr}Sw7)4`@"F$O -IĚII<)G-"1;S 5N_ϪHlRfn%Nڒ҆K4(/9[sЗ<1_JƙbP^~DV{|ȋ _xGq!W2:HR#ƉD_[|xʳ&ǦI *崞 }-Ǩ- NЍ})໧pOUMp5ytB'xA*,[7dg=:H4؅?TGTDm:yNj#cӫmC{ XNhCϱz>g_8@4`į[_joOA -,|AR\#B^+ 7 J/\S $7v]-@/Jzϯqz?LNES=}֜(3}3<ҌcW< [g[J'`y\R9tz4@u=\i15yXj6iyߩN";k~_/+znͫzTo^qëA^N#B 2%X6CM ' ybٶVx)p ȭ nh\t\4y6_ ?lQWʡI^_[ .a{ }ib|!ƄSaLH4$V@o=z1+.ےP!;LP`4\]uᖾ=mlh//v':JW\AóTlhlMq0>#nد!"`6"RSJLt[#J= Oл]6 2So5&듋@{ hc5r1 l,~ `g3a~2,CB*0ȁ9^m1~`w9~|&"aJێVzz&e&De]u:_ /u\^umNjݿZo BSSr9i}<΀ tۇF#?l!act(/](kcakNFi>ouaspz&a ZW!B~p}~ /pO>F;C9 B!gAAO.[W`y[W>#6$ExgG8 CNW6ߦ2* 9_? ݿ>xή.>euӀVȽ_?w`0WHx צ`lHR U/h0qĪׯ}!/hJڤX@>%pK څVa̴O&ڳحk_l@uiFkBñ9kX< zyx;n5DiE{m-o`( cnۚ"fa誧8elCo/ 5ޜEcB%a"w's7uL 8:tHk <FC`5_Zﶇ/Z?@\ZՐ.̽:Hzl~Ʀىf-} , ]w@ycT6ae3сT&,h(fM1=%H9yӜa1"o,u !ҁ G+̣Ƣ`BWUri.PX= 8w"TuT _>^wؾ0oh j;}E|0Uj$lRoK9B#Z0#e-96#}\p "&~#ぜL$_fVƦ-ͅ? л73yQhmT VsU@76)P!EVyS4`FGqf{gD{&VK 12YpYf#Qx~.w!5 pNf+{< #uPl_+CgTBsda@ l9ERχI=0`5餚 sV|cS?A ġZXɳbJY#_nԢ-v+iIB( eVʟԁaCO[ ir#)(f.SMtzq 0(`rE_Y8;I& ! lD44N8Io!"ם%Q=}Bd-l^?OhHG+E:pɅ2#^Gaz(tdi+:ꮺ"l_Aو(b) 1u9({٦oU4ӫXC62N]yQ!s/JzF8uA5R?_#FB$$*}E 9.ԊK)kWv2?FYqE*9@}D`&i2Wh7swJ#@NgZ+ݿS֑!(V;r9 N)肢ʆ无¬th3(2ig!dxÃaof ~/>=9vpFȔe,ÅܙbT0 W`d&$$RCi +p_l t dNyj64mmc[:sQ%N7 "|>ZKo"-\h.4f )DGkhN5TJ#wT)ޮxWBD˼3໔Ւ0/]+Y|-/~A%! $DW%m`H= n ƒ1FqR Fsl uYoz( WcQ竊/=lu]K]%'PpeX>%hSݩֲȳgCbǪ1^|?NaLWpE:㙺W#9w/)zt&awMr[؁mL{l29SDBgd>&ik{Q{UD3N3 ZU@$`s2x:Ѱa@<08(Fʨ &AB:Lױ fQVGJɿh)8C;Ks垱59q 7ECm:B7yٹ aSGdiit\߀[v:qaZwѦ7yr0=A p^\P5dNe$£Ѧ0_SwTXDҩPi5BRب܅e* 8P6[1#^4q4鶏K6ڇ7.J0ň9?׏cV3{b$'% ׶oWU*Y2΁-`pn8P Xj<SI.iFYj3Y0~DCN25<3}S::(ŭ)RL0r^K6WElxOvwsvu#"t7_\! [BT?AV'dTAq{\U}B.~8sQclP34j:u-GROr-n:ciqґfPG3V-i!xFr80 c!|pokjйh#H)85]?q@X>d-2X';d7lM3Oꤋ+faR,쓁-[4W\UӺN)O'<2$1S#~W!Gdslj }OpO6^%A-pp\?Ɗ~v&maT8g4i_lKAksz H 8hvj g~s[e#cȈ71xrކ] Zݪw>蠷!h{C悶*蝏::-pw=d&hݦw?蠷ѷ2ۭjGt3|waH 1Zʨ-(ƀ`toMQM*`dmWY|( d`W PIFlwNpdDnK[-wNIsu _QOZ꠸®B!L8b'cSbTaT {d5^TN IِV*Mlۮ Ivfeu0H}x)?hn8DUGiN͑0^̯L͗Σ- ݓ G wݔ-+̠]( b lA *M0y$5hΗa8H 3D] x=5\{MXf(e`, f\o+a`ЀxCs| WЊ^AghЯiV)ߊK#ր԰-7a eb]cJoM#c1VЁBO~hmR3|@Hiȋ=`-ZfԚ/Bwx'Ը)Kr\A}բ=J`cTeU4>ζ=HQWH7=VA>cjKrNyfRfT<'V.'PVjlH<\To㒔Uk)<L]>"yXkGU%0V]]KA_+}[G`\"@\wۊ-|~x;F_. ʃ13"g3Fcb7P?GN%;juӛ"K7\3qp ՜ 6=0oL{d9L0l݅l+|nGb<"Jl&LNrdI oLn Ȏ31{s+%U+\XWq#vׅndwL%۵65Z8:x+Wklnovd7l7Y[4 ۪BZ#~oF6LT᪠(\A Om+siM+k5oqMP[XV;Rt}X|#44uAQV)\1&b3z٥r6îpvY;IaG Ɇ5Dϑ4'c}a#7()$c'/˾!."j^{ T&*w.sE!ѝI۵BމtĊ'[T=!#rx=J'B+joQ #9;= Prc:3`oQD|xS!]P![5gG$df*ia}!]&yϧg;E$0=Uì\qs{>CbU*fGw{km 8ȦF2=xRI >&T*| hME3+ZrRCkxq1%Zry2SlH1(s~t皉 }Z4Fw 7V,a9T4eh 21*iMlNN8:%$]Jo*IU@+]#K;TDlDWSju/12JfװJG/2b7JnB%:R+b[hAYfX1YE[VxzYPrpSVͦ9X%AZFYE5j@\_hnk-uz "b(l]^E!jbeo+Ӊ]TeQOTե,zفΝ]4"cKmO:ThS6oL? G;%NX&=s9F^w@E s/IP {7Cx9n0#8C*u};V'{b},U'5|MPmP$j|l9pq:0kas &,Ρ5yߪSw/}_ O/fg{x譹, q*XsTO*Zʇ'#[;X_jM"&;n%A? P;W(-Ux5I/hüQ-'% oTDU@0PV@")}a}#⟀1o@VBO\t}., Q%ӷ"@mOBGZG*yUM# #cشr #Ȁ ۚtKm5$[aڲ/Sr.6XzX'u󀹎 9W"-„U  )YLce[I-9Cޓs -"^h$kQ%8C|(O5B߰* (¶@ySpyl5k=ɳg Љg|G?w_6-Uw4$9؛in)$$x4\Ϻw=Ϟ4g%0Mapv >ݠ@mS ZaqYocMbm P됓_)NJBztO-xe2 B Gfj3؝\st~ϩV٦kj ƛ昞m̔vxzOO5C%}Xoܡ/x8TN=Dz ICXoS׹}A`z NH"~j !J~}/zgNomE[ (SF! yф,BY]ޔmN;\5Dא 51Ҝ;pýAiI˫FiOhݓ%y^u>}.84w7圅`0L\K0t{lKΝ9XǔnME?RgBX@]%h-YڐYGqf̙.Yȿ<z'F/}rq2>>'+ACxhx}iӇUӇW-l>^\xuw=~#gMyU94t!uWȧ; ]#?l!act(/](kcakNsOy o{;6 Ժ: ä6;kOh&76e?Tn qNPYwAX֕ψ Iށ:yDr`UM뷩}~翮8m}i}BN-'ϭAv8/Ow4A>rނ˳"IΧN,7TЋk\WԿMB+kbP:W/-hZI1:j? j:`a~g245aFk3sC h"g8;n5DiE{mvо7]>7ćԾ2Xhc $+Jas vn Nkwŧt.f9 }qQzΐnsURaKmZvĀ *e,K/1 .,2taƠmm>9Ft_c\ [ՂkȆcvB\& u3Z^Ni 5P{\g?ia:@"d1=Vyȍn B@І1 Xbr3L^য় "/8DtgUJDWo@ hҵgwuyx+cusTѦ? jˌyh@ 0A~s B%Ɖ3\i'eIl5#}{,0fxo(7ѵ1|7;X.2M SpZaZbh}]ƾ$#rJW|p #k~!eER|P槎0Oq#|]{PO4 M]S}Giڡc <:f$x#Sy,ZO2>#o/?xNS4#?z<'i^c-΢KwKJRŹ!m0+\W4õ2LDT?ukNxk[1i*n-NMk4бgLo5o\`ax(+њh5ŚOp -?Պun̨5Sd q'hU""_DX"DDL6K8L4;rnS+/wW7ȧ|N`,%X"V)q.8&̅C`dF~XG%r)$+4г++TZ aZK?˺4PKgυIdxh-t@ Hd٢.G TrV*Z̗4+F2/1q=p@sC?zg$\i)htJ"enJ?5qVvkrF[ivkD܅hHXbx{+WLGwzH#iW *чF䁻Q|xm,+\%mg5fِ0t.5/?3S3"%)@YgAZ)<<ᖂ CmT`Ol,0v5N,%C)C:AHqҡV)YL(i&k=I1}IU, T̠)˼[+R@Ur_J^I0XkI0 Xe<953`!BD.!`BXxR!JJ^0?R9ES0! Pj2E+P5 &ǓpRR2NJv)}JBe"=!"~F2ԲBSH=#kWw}_Xgq࠵]BFpJngK ޕFY?or\?Ik&NS5x \n[+Y~cx. Y4zdHOa懪M7ľĪ` oq sZefԞ l U3/:CX]3,݇-7Z>aNMq|dRaNs 3YT6r}ǟY\T@!o,!jT4wMu;?KKb|j)^]%?XܿbY8=gs>_JN\G^hSPChs!#Te!X(U 6՞iZ&=/iA??Gr&ިcvprXGTA#;t `} "#ʲ?S$mO.~Å * VsQOl) C0VSdΨ ¬j`G?"ZD#L 5GS5])Ezb ÃAZMOuAyL(y) bb).<1Άڂw7,ei{WWJFii79? E(.bmsQ:o1\ 8bbU+}< E`'?G%${%GI9۠JdHȩ$Dpe"ó>M,6Ktr RU#?n|gJd'aS &JdYpک( hs( s*gr0ESgKIigILb?4# ,* ]9 FC=a:6z` =Z~dтC;{7JZ_v֢kd^ zLI} ;V7R6"cwxsdq>s7]}$$'Ā-y̿YYΫJs,@&f Q)Nא`ވ13!0ϼ-"ZR1\cq#6]a6u%mzVG6䞊y޴e3<6&xiWҥ|$Iܙ2W9Ȋ `V7_82][gNA"к͇xI}-'%cHwlT2f΋VAx$ҏhw?/<YzVzjwII'*gZ= 'KCswiWa.'`u"])^̟QJ"lA K_7m ;Y,>L6ʇm$&dQf, 7ʋGO#B( q''Aj/G^{lr*>Y.MN"eyR_#ЎB LJWN+D ,߂xeVZ]]E=i$c~ƢՈ䦅\Ӈuu|ëG#;Ǒ,l%-dRKp1(XO[[K0w96}S", /̹`g\IP @srAh`Nä76g(:ٍe3"|GRy+J)l6"t9e ʗ4I-*d5R bM^F* L#gBגAlhнȝ5؝w2|i&b-Ӕصf^f٦LRB2dL[I.yLts^3}W/x/*5> lY"LOi_7ʹ3-\ȶbWMjE^%rynW-*HJĬWa▶|?]n!Mi<'t1n=^ h8Qzh ^tk|馣վM\g)(5e,`|VR`:X6T`Lᖘ , µA``0Y  Ve+ |&zԂ`Lj>sǀeb:5#2dܙo;ZRW掻 ,y:aл)-}PꋈnES]-" $],rsS'Օ-+U+Qdѹ=s1`%FyAZ6&CXc\yzJ_l,ͫk3s+)}<1-+Ŕ7D IJl>/I&ؗI78Y& qQ,¿d)%M/bn6RgwJOA޼L[2+Yـe|nԕM9KVҺ: 9US6i|{i%t]˛͍B$+yZ &e[X7w8lֽٚ >߆u_uq5Mfi 6jiSlk_3Y+wf2,mƖk5('[c Jka/XkҦ+gb*92ńK2SK k[@0^Lg7TmggI10|dmo.Xg{V%Ҽ3kt&#^t-1g.%ѺVBetƋ|̝K!~X9r*-g6tcZQ055%&5:59e U2jKFLS&2SfJapD5wDƸeNJz VKv& 3 9@/Zs~!xe! dJL5nA5 )BA7Ҋܥm/B<nZRs*#UvA?._#h )46GEiJmk/y7~EO8oJsZz!1K#6#j}yELז2jNb^1m}1MCH9>0pONj-YUG'f x(P@_Ⱥ9%VJ!I+ Z9DO9gU+echĽ _ s"AʟE,l2Z;?)m+IWblը>TĬ6}/-9EWl$]Oߜƒ} f쓡yRA 4ǧz"9ZK'/ ':xԟD!W;ZЄաR^|n=J;ovHW:x $_?y4%B%!QM9$aWާoCt"i|+,kSuU-/h߹jg?q`K v\߬j~~G*#;B "R~pOT @dh_Fk?kroFnjJHF'%ɑP1uq%;!Dȩ&rOqzȓ~Y.rdawAnd,yxt\y9~oZOƣki*ڒT܎P6_6S4 Ϫ+z@=#6Hb2Dm)K=^PlmHŹV Ʋ-SSlK,KwQ?Cz |pxi6K=sE޼><|_[jˇO 8<3]L7CUpzzhrÕ&9{t,I(7Θ4o sMO0%>}԰ÕDd%}(<JZ0˗fw,D/uQKCޡhEcN4[h w]`67եd?YYJ8.ݖK?v QM* ip5ol4nDŷK cEJC %+PMNָ=sl{ܷK澽eۥr.-ejydy+A@%m.^'f9_n IMW/\R`-\m#䟹ֳkM?ܸW?vl=[cn^]!B-ewC GtAYM_¿' .& ^ `:sˏp+szy{fH͟I-ʒBcmxVWng#6v ,"i #5&m &L}mkNS=lmc (!78l#N~lhUlhl)7%Wr)͒rH}w>241]g:UrEb|Sw^8qUq.޷%zFdoısA|!Z͘TfR01?o'&1Ro:L͖z8[̙pfKH=6R'է-#%r^vTDӎjն#z-i@v6/:2Ml,[#@ؗzٻ+|3{r5^$ MUxᕊ|Ęt:c"ەQA>2:!7X'ONR7'R_'bnN">h5ry9!sNlҎ5aC/cd}̐l oґ͓!)CZnH}ɐl12.2doe?O]ܾqȄ̜¥E?+z [lqs9fƌ,z6TzNJGyH\htOTz?8 x%Y',Fޢq)F}CRU!9\h646mxn3]>C|rͺn6m[f5Y0gulllgf3gg9mҙ#Lxp^;^o\eG)6Yl9#W^6.&.|'!He'}I=>dm Ɋ@MrE){"KOg.n BegQ^N㥦sՃ?1e+Cwkv(z}D?^AџT[sء==^ΛA_mѣ\=d[NN[\ D,6f2)+m@tOآ>(%駛6.5,VPlB9o'ٝ:ܩ߶7ƾvͭG)z`@M|deMx;x+Ϛ|$9f:T"] ɶ2% .<<*͂aR3L@=3>UDFw#q!%\ZRv,)OezG#=[vV.7Tr})RVFێE%2 ]aPJ6M˾+*W>xʺlRz+/zDM8+/'KKy?]$H Gde*#gv$go9r X3XOIrK;άJXI;PQyi?;iV%*/Gc%ibWJs-*;BI ȳxY^l"fɓdIM/Cyު  {^HbRh-i/CyUBc9ŏYņ#yj~󭰪Ż]OzK US \ r4 M۾:5ucGA$Kn2޺óv? 9~.y\83ITHd5%ʪk_#a7??kȲ#Mu{֦)-3 ၆ZiPv_J?ēܾJ681:BC 2s}c$,?7ͮ?Xę n؞g9U[{.9@ V^{Pʡ4}1f-TIܛ2ke| Nk=>yi_tEX\+dHzP.D|QYʒ|=>(H tV{ll ,U^^aGƒ_ؒ*"Ƞ#ϸ ݼ촇0uް^5uf&BގA}ȐkIw`E=Y-JE;ǨɎc;uLn!{IVªFq#fAe,M(;uABU9_e2ktUO h;F͢So(Ȭa'\[(QzНCmo}|jl_HVp 3:6#@|ҋ'k9+h%S$SK  3\xÂh xQ"[xEiI",$|CVq.U[hʅÚIր1BX]ܸuJړPB4 rSVUy G_~].80j'qe ~_XixA[H|$"}~ O?@3vaՓ_'.ü)6q7'.Y)W)eNC'1+ 2&`^JuYN_UNT7ILr1rVAI$>]2ify\JܕQ%>UpU*S-Uɘ3T͛*[rT*EPE<H# t޷׏w 0{H4 Bz 4r2R`Tgǣ HFU9Tۿ[tc˚ӞqӠ8i/L״[S% Pܟ+[)^DzCHNbG#9Dl`SFJ2\NrPXE=v?Z%Q<"̓*᥽2a(Px(.꿵@\5pi@ .rpEETǜdBRHW|:u4LLSRc߭Lj/U<{Fv{o^6φo^ v{x5hë0H!wak7YL7CM|b/3= 4ۖRR} T8 G-̩5dɿH?'%qD_CVBqsmnZ%b{,v@L? (ڶ;&k 4}0Z:AWbD2[ZچG63-oO.YN_(Q! g6<x$(,@0T\BD /\X Ґk0$kc3C_rݠ\X6JQˌ Ѕ1tMC:}1l]?Y%yw|\MC_>_i9vcxi6$,ҊAN;t۝ Sݲ u8 !^yWa\kWa/>ա4N5rЛi Mba:DW[@PQHM4 ŭЖH@?@耠~d0$?>(2ʇ,T !//Iw/z`xiÓ*zH)ń4ׂ_0tcÝhUɏ}ֆA/^s"y@P`׼c(ްPON@ 6~3sr(YOix6T3tPuuXGc3;_mhï ඀ÿ,9hfa 5;ӊj'GQ_LWxyݴ/zgyXTP}qhQ N]Mtv$WflP F(Qo,MC^уHs4mK MZ^M`4DCvZB@4- Zzs;3ہvqDZ gȁ#H`ĥaa;2CbFSf@@Lס%N̝;;XV?G;$odj'W(|ÿhx~iӇUӇW-l>^\{F.)<%.ht9t$!}W; >½SrãC^:Ǯh_.ϻPUǺ6)/٧~Ͻ]ۄ|j]r~H6EkTh';r4HzCN 9z8r ۾>o]ؘ0% Aq(Oq8VO0T6Xvڽimj0)knAN[_Z[Askп 9S]; (>ham0OY iovPu>w?uz`ӡ-=^\S@:nE,AMhaRL 3JE  c3O&hZklxFbcs>׬{،P9Y;n5DiE{CvCK>cPXLHI̛kx(3 #Di*' ;F7 XE~1Qc0#Gw\mA"ю g #1ܥ$(;zPE-4cËv ċ0pP-`QCgԉ31E&w-lXT{8*mHf$ H8ES3lu+!>̡` "%qi{gXW1K (vGZ_6ZJfTʄ%vj[pe8//Y{ycy4=MOAS4=MOAS4U>h ]\ ]v&De3/\v;W,eu>i_+*r UvVLd|DRg/,'ß^7FX.8i")x8")x8,(4'wKKdzǖ.vs@S*2SyS޳D:v@ץ6}LDZAե z]-yzU!̋w{,xphn0Gg=6A6Ի&l+|n ^~zDpy#_JPX"Z%I `]F$>ʹ ) y0r|ro .*0 C5V\QG*ZPNfB# nUN'v=JB@]ޞ*]`vy<0 %"B@j`J)̑AXrWp.İʛL)۠Ȏ˸Q`o4F@UX|&>;2 ?;?q:|$ʲ%_$|Țqkgg駟֯{4:š2-A WZtC !AIڒ2wn+4B(l *pɄCf!j(1Xӳ7{FX')GMlUMDH&\3o`]g2m+ ˧EM.m\3ϢUUyjv5$y ) "nVEJ&ޯl';j#E?K_zv\83w&%ޯl';j|f7)"!cgG'&! _Tl$"N~5wrmN+,fCo(~K0A6uP b>eE~N['@Fj| Z+rOҩmx Yr\V/H2VTSB-zT-{ӚF-7-֤}VBFtПҵiy>+FԸ30ηr#3-ZAf=9.b ¼_To"ǞS_X^*im 0mYno[cw||Mk4S_>>i_b[SԷϢ֗*9Ӽ(n;!J@Z>^#[K5gymo1ւ%h_N>A /<>|9HPkEjLuJ&eXh*J`aOK1:\ 1|BmKْ +o;Q+qZ{ r^j"P>R6gceW:Ik;<+oqIhUs'~h%38xMM~~RyzL-UFI>}7se'{e7K?SE+.3ާgf].' :+\T7of%'+}ofOVeofe'Kf(?+OV|/)O|o)|)υ|)"UJo*o*ezP8} 2 v˜ RR#f/f;kU\ޘvu]j.[dnK!8BVXԧ/w{<鳸^}4r`}'ܞ(`ּ}/ ~A83 )aZ,\>d6`j43H(s UXi[R} f"ZJ8&0 ÿ󙿘w+L6Yna2,Wd3 r"+(SgSZ*G=նO)95eY &e(n Mg)tǍnq%֮acDMR@^<`g;g!˩1IĹK)msaC!>ă8D?Bk;Sc,XQ98;(]4@yY{~bOn,f@: SlSDދ&:u]Z[ ukBm:u~ v%BLL#^ٝan7ʠfM̿pA/yG%2z\h8$9'U:vI`M|+,FăԠ$!. 9eˡ8-~SEPg΄ HďVWAcݤZnOdF)sf5ko \r.&x#zޱ9a. `L ǮB7|n[nm7.%&5+Zα@ͳv x#c: jĹl>l#b&9ܡ;ơziu1Sa s!3x"٭ѫq)%CuϮ`b8|KS9i/rl n4HkEF|s02{ogL\J츗2Q-P\joL!!?!gDȊIa#Jpq BJyn؄Ӿ_w0߭ 4aҕx5qQrnq>{ʝ C|_UDߊ p9XLԮa'@ʇ5U&VaD[sq?PL(s>Qc3c`ݡIGY)1+M USPaGFύ6;Jd חdB]X˴@7IDM@r;yM95I|y{aC-IC)%IxO0bFqA;$cscmɼ 3Htc! * W\d CްQ9 f60́0WIQb48+e ]+?X<7bx]RHMd(1t0 {‚#aOQ9k+ N`2#;ѧ@2SX22nRFcxя \]W!Յ?.Wzp|RXj>FQyx_]qx݌ ScwܟX9s|J&t1[ʀxcbIOGq/XY-^FH QoX(C o$eedsRjN}bjr_wӚ`e:('iua1/͝:B^@{|F0V֌V,ɶ1oZeE$ z+V5V-egu b]9>!dŢeWlѨ\ŏ^&O8U$b|X*!P؜ї^D<ɽg|JणݔE\|"aRم׮ffm3:tdJSK- 1viR%#3Wz"$<j'.cD<YV1hTrT b]_ 2s 5jA%]Y/l]`m[~tyP),X)uhX!(;qpn=_##CXL7MM6UzBW`cPvbEW=sl.mL:vnn{6[0f޶,!YZС3x]_ O1ÏJ@UdP,, iC >ݵ ݉?b)i^ioﺼf\#`U--FS£XN=gu;C{$_>O HyR[l-O5+$U0XK^8XOW,6v2%W>*>fw[ΥKC7yLߤiq|a3fVxj4;cLvᎦˎ8D|..f`LK7ZO췕}N\exf -E65ʾR\k bGdƛ[Pdy KPHn._~!6K Xl8GXc):yBN]yv?q&pg[Prd'RG;,IRW),!)%/*UL ;q<+7`eZ]#0[NK\q%U)E|$kymCmTR?LY8ba %:"q{lެAJp[/P D{d)s#^sf@SiZ:Qgxa6).,HK~mJ˿&[1ھ^]l ̛r fג*R 35^OvmsgEmXeFzęh [u`Ϙ$dLXtULcg^ԑ_^ozk$# D:Z9#y-A\`Έ ~fXӿ8ς h)G&bT~fV4A1,u*ie@y %YdJf厺EDvN19Es>!c'/1cOMGt/53 TqbAȾF4OYNK84U}T /mY}}tA3r~De/;CbRF*o_?E/e^8*ò?)SB0(:=XV6 CفViT; >GVZTxiQW/q՞ΎIźʊ"*?W,w^z5h="8qwsTO#M; Ak[Hm4X>(ye %e04-iIӒ&PKDU,JRj/Xh! =H#~V^} {Hq_<ch,ڲFa(1| i9ul#6yyY4vʆnZDŽ >KgiOlecKȏl%-o5e[q34}E$2j`/'$h®l ,"JTQn4x5_,M"9[(Jr}ĝoĢBi~-W 6WU}J7FuHH f$6Jƒ]hl9~2ҨJ>M[ҷC-#j`?}mX)i\-w۞4%3}ko%I+ENvRl8ߐБhqc; jys|J}dKbf2jn־R-snzh pTl7{r; &fZB5qq2 4mAՎLdhnsdM_*I3T/0K?ʼEIID<FR.=\ C1HXz%2uN=* u™ ('&Nൗj:yWBKRPOj %9/#,=u)p=bJ~ i߶K ҁg:KazZ`\Ό/K87 "ZD,i%](#4C 0]2/[+36ANLG${=GfkU i)ÝH/WK!ˁJ# "˼ٱʟ˜'G?8B*XÙ?ƣ.f#` c܌?w+Xe9(UP쌼tx%ʍ :.fe% 3ֳbHR/dPD||Vs Y~"1;NUgI9Mg kul2<_0JR5yWSPKKq1\Cxw=);6D}cdWLSȀ zi5Iu36葽#kMg!|;ȵߔDI'uI-'ٯŷ fm `hLol:? S2] 5=l¾P Y0k&S_5V$RG ׹$OQU6`&t?{OXtI0$ \VP(5JQd]08ʾ;`A 3hdU9i`Ms%E}kح?297yqg쇝.ݵfj%~T3aP#Z*!چEHcao" /)ϱs|Wm]/>(gei;zzCb;yP #|,LƋq!^7қ&X%r۞$1(*Rڀ| &wBkM\iJ-U(#Z/ONJ%Zi֦/@Rk%YʿnҞUh#iKړ!`nyҞM%$`s2П$' ;%_u8VHb8uo^ϭg{f#v8Ϥ> Qn8}K yPR;$K}TR-[%Y}'Y}gwU2|I}4?맼cJq) Gg" cֳʷq˜gogSh)1诘0&Tr ct\4\z$ۋ7Ƭw0~1M1bx; cN>a&m1o0feoď1"aOQ1ƾÄ1&?-[MlB0,KUZL䑑Xȋ*vu/ԚF daDA90%QĊfW߫|7C _2]]v3q^n9N;3wk]h,o \''wVL75Lu|trj3)`ޅVL̿L+hko~y$]y FOm"Buu\8c@-`&[Wh0\k@s3w:sw0@!L& h'4X/&sk:rAa8㎏*!Pʞy&-)=zG\OQZkmvv-+brp 0&^E~SI&^(+x`s"`mw>bDQQ!ġEXYaQQұ~ag#9QuTL1 CDxm-Yp>>Dz*Si>WQղ()⎳-y{/ʟ}Ir$x1&.sǖ~i`3Z<|bNl2Wa A1ǽU<4w`@*Q1D#m*/ù+] c[-cr;C刼cg, p9Ǿ`]~c~wky[lۂ4-gt6ۢᜫ.k"3͙b% H4|H!JBr^DIG7 Ԇ>=60Aaqq`ɍa#ʸWp >RoHsH__l9dћzOr)g& mĔmfP6A F#3@~vw~1ߡT,ȱ8ԊY4 .aÿcE/s .1+!(Z\x0v,Cc;;!\I !c/, br~T:lu΁-_WYhN9 X ' oc{ҧ^QGs+nmklu1<)r:a%Ǚ3.f PFhm^ C[\kjᑥ,/\Zc)2G3^5ĴpXiex<,8}m8e)2!NXId*_\ '2b/| U;=;k,=9>0EF0q^(~ݍh槑 UN:oQړ2@#zؐx t@g?/w|!׮_ٯ7-J#W;*;( }`]hJ^3p#dp1azI'Ep΅X6pC ԠGYgbh ^h*{ D2F }D|a caA&>^X79FU"ji^.x}`Z+שG2_; G6hm;+By ^q,W*X EŐ(* ʉ$xKqg +I; S@}wbXT4 sW#R@u6 Fd9hpdȇlც5$YoP&i.YE)UPR~ь#&d&ڒ #z#G1" pqT=k3s,"p[,=ÉiMѝPSf%vwt{q3C.-vYFr˽Qxbw(\aԈN!4a "%D0 9V:[x*+ϞOtW[ԳU |9jn~fЛj٧V۪ :p "wwbDV"Zohc#0RτKJE``Si <0xݑ;mhSP@_ MrgIT hLuۢ0tPn^x0L&{̂ &? |2H<,(ai%G+@(fQ@vQ{*C)pf /ÈyPq ;I{hap R_ *n=Esyhry#Rw|{-yȾhSJla,+u}O.E~Fo!dJ|Q~biSL&!광thbo t% Gj±?drpB#C\gNH&ds*8םbg|Sɓ">h Q|@{h97 ?D~e kE-N/S.(ei-r]N - * k:#&Vsx0 %(Td&R2G"D,\S:/00ݮCC]Y3W}__2LS0.*2t:*3eĐ#( f;_.">!޺'61%$ O?q}4$l*ǙݰHmmE0tEhtXY!˭9+9ZE|,Vؑi(ϙ--a%Eb5n&,μrD0 ^Z! UBÓ󑤻:iUT:HƋ-a褄`FC4F[g9/X-{i$h,;(p] y,YP #rG &48d(D+1 !>1ʝ_"6O} O(ֻmEoaKWTHBJ֍nCE s݊t 5?¿޻[u`бe% w(Q`j%^ 9sl);+? ["^ [E|KpAW5ʝ,Ɯl̀Tpݲvƈ+ĶX<4ՄbJRPlk +k?&+'k^{P}B{CKY;s:$%8nj9t=>Uzu[Q/%)9"7p;g=eMd= ^[7L0|.gPîE!_~m,u^milW^pas e*i$&1>G s#poZxnQ!AEJ~[S뮀fL9 ?iXV-ki9n&AR>;I9E>:6qjcA'= F7&C? JW~37y(:qj7+7qD$ͭd)#V+RYgG H/v"w7x܉;pO#A'3 c#g1_n ,З@&c¹;Ps~.= .+sW|F$n8|L& + F$p.ΞЁjh _ 3|Rdh̙21# h)Zl]\ٶ g8!0쌶nO(X.5 cle9:zE.+ѠϖXcF&+,Tl_ؾ0<2W ?)핊V]֨L:O* R9tFb5o[WZx|wn6.3r[Mr'薮#F 热< A0Bsp517F -Ю2/k+}9W0FLDVx/or4<:z([r4d:X'%pA0Ӽ`T: qX?_t*\Q W;QrCb[QHΙ?apws-'9sb9} &s<㫭!@ ._0yppQf &G073o% ~cAQ} x:*V9ZuFpOzF #>Q^? W~wS?Ի,j}ջ^Mx,fƻz %s1 g5ڄ [.<ڲSJ6Mi4P}өXsF0knYi *ͦ(݀&ҩqz("m Qyʈ p"#%buFE^m `Zux PL:GIHb I:SXv<&QdtVEzoZQhx(̪ U*VͲ|8-/Av}&]RJH 0An Ð+ bu'=Xd"#aQvN6FEUHl 4EF!Ui)h;EhrFj|Tr?maiITXs(%E#NL!~R8@҂*:;>!w5|D:9bim+j54 c|Q9JX5\oxrD%X,eZlCQ}zҵ21u$Q96roznJoāI; x{q򨠛QyD.i#Vɢ?nDܔr3:䦔ȕȐozV& ?b m@:!} **&tM(*7Vf+frS˥%VX^nJ 3ɹiJ q=MU /lGӢ Žf>oR[.*/>u`2zw d8Z8(Jqz}<| 1]T憎!5ZBJXub`Kg( +EHC«3@Xgҩ%4_)M.woRCk&?hGMaBLɕ|杁a9b^CC?/S (} '*VQQc u\7U ҃7vkx?OdS1X#楡sةyе+*&Qmvw۱ؤA,(o :] 23"c' X+q__},qm^̌'HIxRhJE:Be0aa0P}bwj ';/=/zDD `:Q&I[6خ`k $x/"ڑ(ZQNQ#'KL0>tЍIy![7 u4X$V@T|YwV訤4<]׵.ibww4.Au&eNr|Ri ^pver|`;hu{äT,Vr"ȱIL Fz-ӘFUpnVF8C<} Pu1{J;!5ь?esZ;>,9Era#%/K-/kQc?'1xc(Xyl+Fa*C'O#ײ%|M7L7quq\iZhٵ,Ib۝ ǒڍV6>ViYkӣL?K/L۳RKR$ Vn[Gv} ִ^IƼ ʱՔ:W2Vgy1_A+"2SjtOL涸?"P[`I{洯/}LRVN{@FP]MTz1z4@>t<@9=\f3ߜ҆Rhl8ZYIoy"V(4n|mBNv%O4D{"_gE؈`gkJ'*>>i4qvU#vqr߽YּŽ{ܗ؀VzG5aoqe hd;!0਽tiEzo;J =$4+==߃Vj-tK7_Sрo*u!ToF{at*Gt?v{c-Vt8I*'֫wZfqgO\Y &l6z=Ui-E]`&v,1&'ݷIֵjBXO;{,]i|8ā9(n|e=˧ 3|-շ6~ h>0րblcN;,>iLX *NXnEXBNlUiޢxOV=iMs1E\v~!M.UyqQ'CZzOf>$0`4KKʼ+AC𹈫N 43~2GYVK)@MhG,L\I2f4V7-iP@Lg>/\sDp檜~<(H7fk;œ`H'ܙdG(ͳ]U'u= fkAp+/*vkc&ɚWD~n0#t:4eb {jN. ;f]IZdtZK*ՠ%K 1*Z(jUī^Ӈ'QJ?[Zeܬp&SVy8^)r1y*>s:_n\gF 0 hGJC~Ϥ#s ƠEJCE %Qlj%δ~O,`BSл$ӬjϦ8GPfeqR6 +'g}{a0.qg3ɧ5ӕgKT.}d3' LK.Ÿ谞-*J̶a0#ݍEPʣI0(ԛl<(Jl^< }ڣ45ًKOq3GuT` \:?LgeRlЬC,Ѳk./%WR:◒^Y4=@{xRmbJ~~W'zFۜIouv1qnyd>k .9y$>"/a@Ё@׃9~JvZ*^J3\o1m%k"Ƭsl޾W³bQTChZΈ'sO0/ޓj{LhZ®9fx.M(xw=xmZDH?r P@LJŢ:m6Oz05;g;pw"<v֍^{ H)HPNQaNkwC.^(K!,#Pmu+G:=yUqpDìha~ lsq[uRxmЁt& :GP vRDAY~sRqMjFGof:Cm7}xڪVF Ւ7To2QL0+sCR=!"Jgz.F8]c<|k ]^Yj ]Ѩ'C"?kEt`Xc_5[xypҞNtQ Fx{h8tMXf%uC v9=X";ҲvYo ĺl._Hс7^m[m%K*(LwJ];ƽ@"JUo-/\a~PXk w ֚ii ў9戓Ofup G,ìD71=7)տƇ R.ފIDy]zN(@i-XAı#^0|rpdUq7&EsŘg+={U3R/Ig:6N] uCp="_'%DÃx5. *n^\}kP-:zA[co,yܨva/ĞO&g[;&ՙ+؊JhYL^&B{|@ӷ쒠8WYC&bmvN[`ʮ,NۖR{94(2|HBȻ??aN7q'¨VlK sDl#DSG2R9go$ RgO%"f(!h1bLc$b, H78BчFlBQTo$>6U$5JvY2AMBz#9XיD@ *^JkKeФO==(zmYа&Xj![FW<$I%ɢ pzY9i$΂R-  j| XjM33o1 vF'T?/2O[Lk[`_(klt?L[ qתZ3T6.T7byI >Ȅ0F~)3a.a&҇(1"4DˎslWkѣ ys<=?3M׭VZO" '$ iEъHA`Zl"iOwq; `㇕Fʛ8So茽 l7CeSA} h]wO%bdR4 EN0-W@7O d:{4P۝]99IOR'.eB!,&  Cݑ{xז˫H]m9gEjA sZCBä3q8H6-Nl^]-@z[rb {,KW_x6'<ϰYsE[k:v1 ܀v8<q_-wOrbFLHQ;`q^K=㑖Nc ,[' TG yG3fN1]^wfc 9쵁B=we=ΈU8`ypgFBC:DC7NVL aN'5Rѿ6Mp&dLQB#4]dR[ 9` 2#xKcX禈BAcQ߆1qB4yPg17|a#&,Dn?(mM 1Psv Of]dGc¿uvDXKi%w[ Г) =ۤgR1DzhnҶU|'%DPT, ?]B,")j9K)+ ƤgCjtlڇ97 V⏔J-Lr_Jrʍ-9=:[lß9Nej$?\ t9,$a?;av'35><{ [m ފ)gΠ#9|olqy9EN|jnᜒ>S¤.MF <|`qǞ-553J9W_b2s͌jH1hj3J'uy vT@Tqi TӬIͦG7[5™sK|9ė]*ԭ0'ydi3[^z{:#%5Fb,ƈ z ]]Ɔb dSEegH=D:;rggI?7g"]H.bE=v j-uXGۤFtF &;C=w)/XNVg1m)M, ŜQxC)Ii/Cŀq4!>[ H^IS^`9kC3dT0!Cx6^~LqJS'phU |*mɊ|w`o7 o?x7⊜ ľrO!_;raeyZӋgcгbq~ f2LVt6[RK޷эKQ#Vi~D3+0r JV{PUP<{VZتZwvIFTN'@L" qAA]eãB_o\~ǰt D 4ûL|_eV~8Fh_}'TN+.fC8wulX~0k3V@[9VGYe~ #,()tUPt*b*ӛ,8|47>YU|ekjAX4B ZaB8M\67AVHDCYe-Ǜ[Mtgs?MzW:dں2ԿKy)VVfA@QIj㴥7@W<<M`yu Js~>s4H^BϞ.Z+d8iPrm1O^!1a% XVh[ ?Kiˮz<',:QW؟M/9yۨj#k\z3R'ޤEdeb^6߅;Z.fQ̙r7uW;5 0nYaObH>hK낲>Nɂxo4rbKZ-pT?(hx[6%9P[c9 lq;Q2`z9vHn=;-ױ8꘼m ±Tμ1f<O1\u!ȝ}OU0ǛQNMqkK`~=JHq(@y"u$9ʭb$#,aBE P ~C1dȵz—2g%zpgwiOXTJZY3D>~'hg0o;"%H0FH 24 |&`Olnp#?㑮>hϟ%ENfY:ntj>ޢ<%NɯRf&UuǦ*w~KA3 G7"/0p ,3I!O尓1: l2̀u/#9 #D TXz"4Fjр8?Y'&q3hMxg,6K/&Si2'5vx`i{<.f3|OwF;.}3Rc^97/w>1=Q :^["DhQ~]/` ޵6`Y>Kl™A\VxoXρ Q&k#wr0P`z]L(uV|ubzy2mfZxCOOlvyWw!3zqU*_0{/n2?K3b3߇.cnt|J8(A!^p_s8,Jm*}@Q s:xm&ܬxY\ՄҦN!y&.bTܡ+pUig7" .փi:Pwhlu}+cʁf5)ae_<3)4|3;9j[/w3aפbYX?,_"puk춄`LP`$g<4zm?ɤFgeNOMfSWIUxsE9Kbq%6 g-\I&3 c] 69h4(.j5XK8 [+oN =D{ w&$*n%])A(H@Y⍠9GyU1cm :7JKdv~-LC`K;Meɑ׫kKutk h%wz׺ޅ$ @_ BMǹff ]Z,&5o!qIF$暕hsp3P-*XRg>p_%âхw/љINct<ä`Dt=Ux6ng"o;ٮ's -湒%f44F7/(g JWTlTe:LĤ: ÔtɋW{ y>.]V1M# [^̶o_{W8, .&) f)ף ?)Z^y3h343Ai&Q\x˽@jBIrh~3t{);D| 3&w[ T]/蘘sFJC^|q@Y=%4e̥,Y]YwOON(e251T->a9'; `NV>CA\p-*ﰼlAGH+}{tKqBQ>hU<-券ʯzqAJ?, "v6^`Ir l/s'e'͒'GĻoi$獩݅53}^)j/&Hifb4gX.s\eG۾ax)T[5qK1Bene LK2%D79}0) $C5fS%ɢt=8ý@tz}*I6c~'ٓirJsOqH )3z2-&afUCޟ.ǿ.#?i0+;ԯ!hw P^*@gd D3 [Nj2=}$tqt`yye{tV޾C&J]Bl{GƁyW!H,fҡI*`d!tňb_rҨ67-i:LcIx4=7`{~֏cen5 hj YK *7伽egWXLN&p/˼AGBfci lo1Ȋ^Qj'Ѓx zCë\]?_j{~F؎ Fj{-};;<<2{?OWVjhkMo4r:Q*e/ lj'{ED+"BR.}Ha^ jS(v}lo1hp a^ۆ6\x ^WӅ yki{t1qC%]窠cp=`9^m"fػ+{JQqpL,WIC sp Px8j|+Stf!済JE!oci1Jޤٕw]x6%MضQit} E '67pWI(Csޔ\oZ/1HNAGSzBuo8b('^5lj9Xߕ{R 5 >=| FxxWٙc4ϘE O c)C56&u^k0%@,ڐ^zptăn ! Zh[?@1壵qmk"V)iXBjٰ .D_RReLӞ\#;o^#/G8>Yz} qJbі<{#$<ޝ G8{nrW^,")7pۥ䃩zaZ%)2 A`K~!,(e:Ourb*x??|dF1z3 =%nԲ5ym›5^4zE-El.ꃁ|܃߬}9 - \ 9!;q{l20[°`ƢhqJm8̡5od%eKg #d xbOJ,-6x"Jyjj&ˮj 9)T-8¾%)>l`ȑC|@*B9$!+iΎnהuIg!Cg-մfb[i_ A?֬~GJ2ε G D 1z@ ] R @` {cȇ,R.Z8t2$9@b"jf{c$9:.SŔ-ao#!gtg`x:?.aCQx##d ^`¡GWq4jJc?q'ԕ=4ɧ?Qwx''/Ay;YJ(c߯s*J14> $oۙJ]@v̟؁kFMY=Ht'Ig8vm".Ś"$oCT&Ӟ?ҕh`[ :ʿ=%?z*MǮEGpDv͒I͵3Wwu|t&S5(Qki bN |)AL`C"4kCa!n Ü\DlǍ|4:Ao?-90// /.iI&X :B\4.<{`M (761L_DЈcmq:S€jt} ړ5eDv! 3>Ըu2فc5gC$MzPDΓჶ4;g*c  $ Z"տBZMYEbld{w!BHaN"qv?mՓُm+bˢF^)~;l h7@'-F|vGϣԿp3IBV׌#.,L| @tY7"@,3Mk"k@Wr~8\`>UG #|2[; *ַLc)T0)G~H5+eʆ+ΗhMV$\:L9g$.4Y7XNu8?wC|"k.+gז5U6( x0Mn4'HkYoS9@5rD&X䖄f/ښ&6oqKΟF#Ъ'ޑ,2⧐kB3ÊYtzanZbԘ\ϟoc =q~W z0Ado<`O(k*]M@[$SЊ2v5IKvS EӉuLڳo% X{U#Ŕn[ރ<и=Hm+zwrZw,Z;9l],TB,w:}[w:r[t2w-LChXb|Nn,GpCqu,s;uڋ9ja}7vD 6:L%v.Q3b.2.1g8]BOe6CHhNQ$N`鎛דՂ]+/"1]\W-RoIsvYNu^p ܍+b M,}v{ ds,3>"zNw^;rYD&JlYtd~]=.w ^[ nV,'W>_OB''gN_N_E>>ؼBSգ';ز;ymDwq *@bvLgٳq'ok'CUDwQ齞C4uHUu?#qg=̐6()pW!I *Ѽ\#jX =%N<(L! ZiaH3^Brݣ3dx-87u βK;NW&PRh!Wۉy_@<旖_@<4--|\ rVeZ$u!ohSh ~o} 2OwU0=`ӷj_A'9C9 l3$;Y_GIF-uSxL;$Qښhuap))WzÉ(j⬰$,Ʒq~?тMh*4AA:zh@⇝.'#",GH!woĺD"SFK(N}IU qB9` |AN$2 Ic$bJjK4,B-&@D;zE/x S#tkaZ^X{I?~"X'&y鿿^ɟ>6??AI{$$$?Jr?_ Fs|l9)%c'ijiUl}#yS|+,gkĐb_=pbA,d57{Yl 2szkdXJD@CujŽ*?M/vm/TncqOe5&VIBK,frnc\"`;cx\ А,.q.4r^cG=Dl9G`\8J1:ĵzlBR0DvϜ8. Xp!^DiA}Pe/njn:E.JaW.ƪ6bQSz- a0! ]G@o#LHM: 9 \ViA }R q(J\SlgMјe6uekG(bu(|;T3QO4i9,&rdsnMq$e.H6Кjh~]қ;<Rdn\Ր'$mŖ`xfx7 H CExz3uhD",,už? 0ïfĨvV]7ŕ'8g}%\;`>jollwv[cjCGtGP `C^XsHP%E,}\*Lp(;C8gJ 5jɉԐ9hMVG233l;2hͣ*nriHVjB:Sں.j]K72QTBgtxazs|19W\|$!r"NB e{;!tTHZrhۆK@pGov3vsUx*yJ ?>bg@~Vqa3l @L!$q5OPmK⎼aJâ5ԧ&oj1~*cQ\# RAprW^I5 9FGlN'6|8TcZ( žD {zt %Ev5tzVq6ʠx]z{P EշH3йgVYD`U}=eq_lu (yufu8kQg:?Z`VlĕP:O?NP:3y.| 3u/&(!@r4Y<:GZV-rą}Z'/wP:xKF"ڴ>3¾R'-DŴ1YܴVA扖mq/m>4gyZ4Fhzv[eudsQ )wkh!׹Zr2XRnbhnY,ֈtш^& XM*tS .ƮE$w Ѱ5CY핷`oL5f.Y7Y Yk7 oewUԝ.sƣAEFɦV1aFeX$ׯ4{꘽@c'yYymZ/ ܛqc`j-nӻY3WE͹rWAjFaY1\4&B[sC.zl&_¹a_6*$^i5ρ .Aj:L ZtVrf7Y95?YCTڷmXO(i WQ'0Z,-n#-ˍ!{d9i/kط4%9u_Ṗ  o}WyN$؆a>;;$T5y߼Jڂ @ô8mn^>2,xnfnɹtQ8e&CF4Xr>s]ΖUg`A,W\!;Hnn*ڥ|UgtYʡ# ӿ@hzHFB$;l0>LJ$UtߕY tTHq8Z8J|PF)k[`o W^JpZiYyf#J& 'aM\qGUv`k4^A1.oO םo!낗6eXBhI"+&@l1Ιǫmm&f̏9 {#ԛ9h]ߟhLp&ÎX;f!m«rΉ#hȱHM}B F5uFRh`8r48*Êqˎz؇{ WyL|vuVr^Zs>4~}v#'@;:w4rgBp]B hǪk=ya3o!_N \BT}TGfy+$[7*dRbBǻ4%^%=dnnXC4}U!a(/STDOXȵc'DžᐸYY, Bʂ2>p !ms{05:)(`"–kIu,-*GᰐHUrL"$`8<ܾ}6dX2, \;;q&h9y/ekxE]KL0Q<&RוRQJ!*PbTx䢱XCS /5@d x&Dl],Fug@U*ZR+] ZDA=MР䱝0|ΝSZF TK-`99צΫmhPt~x{\k\6UUo]/[f&F\Ep\X `:2qi|} 16U y@yӘ Qy9̓ H=Ȼ8_h.$Ejօg*[%ƎIV{'(|. }j=Iݻ|p%}HNV{G^՗c[hP} m-cop{SϾ&<;υtz zz{euUi>d yd5As--?&"RVZ['{ lbHApBiA6V'@ qNM'ΡzɍS68U\\\"Լi+)a$T2AƤ 5*cQr2fx)rE?!Ew_y٥wBΣlb.ZZ)l()z}Ĉle5@1\B2\!TiXVMІ&s|#%mۥǢ||\t`eT5*Uz5tOy^;=4+#o-E$i޴NI}m UrʇA'$'|;]8:geȩN$dD,E \$Z"Z2F9|E[@k4/P/Bg꣼GKh$O =y݊S/F.R(9sJRzN3zM1_[sFMr(ÙTrDGveY*A (}a?q@C4Jѓ,iIq ɺ#Rli25&G֋ׁN]0,ۆ[FΈEUx fd/3 #d 3_b/!x/(Zrjn0&[hA\x.r+i)mvAXU!FS*ަ$8ڬ.Xn=±}#(JRvШZ P|jӡwEF"ꏩη,{^t 32A,Rz_Pie𵙙-e:{xzy9d!JjpBתgP\  KA0цI=ɀVBi-ϴϞbu- KbVW$$Z/ߎ̿sC>e_Wb0+ ;AJgSlC9+*Zט P;:/]t"ђ؅'zV #]l ړ;-1x ~U3i[D/{߼FMn#=Xmre\U^v k,2< `ǻxe)edƅ| fKĄIHx κGAo8Nv.a@BףTa ,ATR*_ː%!OWYDzP¼?j;u:۰-.riGyツ DJ$EZ-r H2^!46DQ u{{ Q9:r?nN)R߉X̦<"|[`~ Ft9P'\-d ) ‚ߟj[<[/? %V#&%75"BHv-yug>c?LN#.>)yD"o-ׯ~; DEKE/ 8U!nz8ӳ`$HܕFN)>V ^'p|e}i% QYE } }-te8s.G I,߷%"=>]O! A|D-;wݶn2Ρ?wuR?dN v;K2!ĕa1Y=!Щ5 ZBQ3`. kD^?!ڌ]6A2~R 1ƜdT*~FtD#gWxG&pt2~}𱫅v맶2@NjL[%mcL(߀e[;0:Nq$vm]2,xkҥZ*R6K"^󒨗Ž,O{#A@{/Y.#yx,&ǭl{״[D$'ݑۥ wkZPk/mfzrcc+.m_80a R~&#! 4 oq{67DViXO3)M>H8T+N| r~@7^KbI[ih yN*w֠r[+൞rA$zp$Lf$v|yƈfZl8)(ן{0[ugS Im1ljC#d85iK}d@N D5UZG4#v(;avȃ 4WE]G+b9%DR<羂d}k]Kq&ȱIF/B|{mp6(hㆨ }eJ#3 -VvvRRHtՆ:HeKy'QSD2 ,!DɐF4EͲ,fxiT$E}hH]CϞ%x7ܑIU| fm`˰~I[.R tx R1H&5_6H}T-k X_ ruTv!NC(y,)븳ˌi%|0PiaQUdm"SK-)nai5ZlGud򓊰)1e ѹܮ м&srb1ͮ,/&2ޥ4ev"߮k?cÃ$)$XŗKhԿPURm=4>k6MR7Et,N\5AX/CohbGc=Q]Sz՛,L-=--nk@o:`AVCF5L|bD+yFtl;C)CW90pj-;¼̥%[[!y2wRql%7(F~BXJZd&@(9R|"0_ձ^҅'x0щZo .eu@sL^9M.H 1VQ{8^5s ů}RZ-qYd!YW.dԿI>jOKB\B"0eCA6!U" s* }.,a5TmEZ: \M*XdqUee\AL(G9hi2t&- .;kVVʖ$iY@+bñȣcp23_2^ 3Mx9e.9љFoȣQcl=Rc97yt;pIb *o@INSdl~ً݆('"$}m-m5~X*f 7vNeI#PNݼe޲+L#Xg]$Xhe1mtbʠs&0 mi$!B.rlQIg0XXo$>rXxztW/Vb|td bȇAV0mtSuEუ$* UFfC3jOEyiaE_!z]iLӄ>I:S4]> g ֝uƾ4= _#\e?ߴ=iD≮{2[2LMu9Ӈ>?셊k?~`͗BeG-dUIz=ogݣaw\:Ip`@k̚#1a8$? <_.$yxlxXxA4ӼY?z($q耒#㣇?(,XE7^UJԾ7OU}^)TXfťy7%8ڬq?V;W֚u& xPb^ 7+CbR>̍4glޏa}?a}wv{=N}ag(v'ۻI8ro뇎COA=i׳7b Z:KˡEXaҫI30r6w+oKI<ʒ]-UDg.EKkl%izoLZa  ]>HxUl+/+r.~0AF=oK1rs=g Cùq}wV[Tv3*l@_AڔPc$~ݲ )w4wI1\[1n!kȭrۅ3W^P@PZ|^>ΈqkţKh8neL5O'LE9;4lm:IflF h?tK֎F#Bi70-f-ڪEirLؙg$̑qxO e,TsH*ͯTtFM vT-CUcB&0(s\`K)_ 7oL7r X&"ߓZj9U, IK vjʱqL#83{W6u[P9MɑtqAVFƗ ^ Ibh@8YcAEiǣ~FWěE8ϩ܆It:yki$o1tG{+۟Sqy}L_A|XBD|YƑDb2h0ބKSP'0=)q"ODH-R0>⃖ levl9<|8RRLN!K1󷹕 u딶D=}Dvg!42ǎ޽0 xvxrz?%bIrA%%1gk8 f?mˤH2 SN*-б(ba EGeE+QWij(@yN‰FmF{-v+'$͢ۄ Y^؆|{{u["Kΐ+T⤰E7 jmY ܅p8X9`1!roph RZ ISlmbb,ejlKiܞVE$1IưYs84K) n#ۮ LBR% -e3.\;sp3զUi)Met?msLAHސ a-/P$,RI6s[?"c1fhT;> j4 ]ng]ȦI+Z翝m1}FzbaɔX@=HD̪^/OQkR/q0 2WR5TXQEW7,T rf~KͯvrfcW֣DbJhcF%4z@4zYF}*Of!|))Y vc.VZ'мN]?W&lR,mŅoUK^bMfY'}lm%D_:XQM$\1|vWu_? &^T RK;QLPqr g$wnz[^>2ci%++):G+GfQh9@#ZZ 5~y}縸JuǢU9) i|GBcW2΃ |mXb(\i %AISV*PjCsӊI%QY>T0Kŷ\NOuZ \|kOٍozW4B;HvΩ*=;G ϋlZoٲT8&2VTqN萩l`T]aDڟCX,D1_,9U.ŰaQ=?Pe𻝦g [iR{`CEk&#eqk mmx'ã1ll$zӹK:y8I "Y82Χy|ppDh<<4`{`>cvFlҦTxA| Lq8*ωw:xw6Y%(il{NQEZ@Z:jw@LpT/h iqkJi`7qG g-& !\cIVod`kX,Tg&qK$Yƚ4ޠme[b].9?KI#O62wM'i7^V0Yq84':Iwg&('д{V0q=}W+D {|.C՟+ u O H\ ZX7|U/:qjg/%ql!tÃl)>R{a3Pw!J+y, v( K܉xdvzPƏܵT0_=JܝNnrrpZJKڈcZe\Kܾ,6Y)^. aqV(:yy~ma…-Z.,8&7 嬞 ;r]a35t Ku3dAsz,ZGCVq nBno?*H] Ҭ(dA\4?dH2@h*nEeF+1$#Ilך9e.?E&TMP44 dfy[4=>uSS{_,3wķ$IjBc%h&itWqt P2ѻO%]^;O֢lG_Dc&'E_,u ?_fa%C_;Ds:+9ƔR 儺HʢEO^iO)`+$^;_Mf_8 -iNL{Ui?qf[ʫ~2ܗ/:>Eߢc=ĸt[ ;p oC(m E P?X=T8+Ď-|ί_~wvbO4,?#-]sOnWO$U iĉF w"+; ?JzA'Eֽm/O.Q!߼| Vt>V75AV"5o,1JdMƁZg|gۣC{LB }F+&gϤW@nK =z0O;f qhʤfLtפHhiLBdz'Q:DvP>mh?ćY\_ܟaH{z1 ]i)+uY3&/u\|e4bu0=eN"wu°%2ś6+}ɳ;և.JHud(bU(N.DS<Ĉh_9Upn dK *]ak$dqWbplF!;~Q &7jc;Fݮ b H8I8't|Y,cρο<~MکLeLǀSpG" `#8aK#e߁Mӄ'as*Gp;auЀ xbO1ax9 vvqhzd| 2Ɠ6\Ř XnI2E$rp {-t"H鳵"@)/XEmX0m|>u~/D'}ׇwfio _l'~p~XA^0l4Nҭ<>~ͺmMo라ޚ.bCD5-{ktߦ-gM1p'$ vDՖs\gnpl>rDn8>) R8= k8 \eCѓWS^_Z 闽]sz?HEPR]Dqky:zϟ1Z 6_Dgy\",#.Xp<'@3*eY`ҝұ:2؃I'۸,$}P@S$`b7@Lg7j=:.y44*gQ0IgÑbt޿p?q˄O׿W Ptq+!":f̾mcPpØ"[O~E6#>q-8'^mBJ ߋ?8ģt'\/ph6J'"kSl<%=ۅ7,sf[piop+mFNuz3dʯZ <%3 Y$M_g2H(cdy!qؙ؈zfNr^:sTO:FN1[OTN -PB \,hC7ue-Ɉ14@ꪗ'@e&kM57kZU^{;=8V/fMk.XXuYnzgכ:U%)&.VY7Y6zqlHd4"9;> ~G$4khY'gΗj;CBaDDֺ݆ ]r1F+{&i㝣 SüP' e-hk:M]i棍e1 _0ݦt!PUk2ښKď{#2e@֓[}B篰N0IoY^1I8$ IGx0:6F ܫ\s .VRf}~+$╓gȲ)9#zK4|_̇"NGި{xv?ݣ~w' a ## 4" m5&v1|Ǚ{&)UN -;Wxہ$9y<$pGY8,O4y8Ębez8U,yxI.w}2IGt)Ns5>  > xc#h+?e my!\cx_~m6 { 2›!]ݸ?nq35- /: js*{' %c#!pWgLce!adSjt~lmsiLS ٧-% =\pB ZCpc/3Ҭ(.{!pKx̦&Q֠& c_ 9U)!&ĬxaE2tLR H==("ڸyK O~N3&Tyuz=CA=z_0!pt/gq;ͫI4'l+qK8 " 8dp׉M^x_hTW׳N}v{ qO';;w)6#Vě  u"rͽ%a0Db;hQ^,g;oRA(OFvqr4 c<b=\t8u(;GgNu UQc"vMx-aBuv<<78@ܒ?1mWIlKi: ޣ=By/h`r 1GqA7(pT6u"gpNTQuS9Jp>-'%[.-r(Jk_ h&]?ץ%9 i’={'O@E:$@"A}Lq\$!@DG0$l>I%&zAoZ*cuG}b4# J-$a*Ʊvϙ߿jcWA| 9Qh@FC|:yO''ѳgϼ~q-|Ux=b&2<azJ8=6P2%܏g4 .zAB6֧GFZř j[le=$}g#V{׈*!/AnkI.Е'3Чּg^*Z L(w쇎'*g^>YGyogݣa';^"z'~?mjb[mpD16pk ԝu0ղ{cX/ujUN)g"_ͯ( (XP%FAgt!ӭﱓi~G_Ҙ]zd* Vn(4Ŀ?b oÎkO7oɎ2}b)f'ٕu?kmbmCQ;flwLŢ%C>^5>aE-oXL݀(HP'#9 ifg|R9<|?O=6r@6 hTwLoIoHz9At$*/p# \[x 씻 h |xּo!/Um//_lon}iD|y !/: ބ03;>{;B{ n ]-.`j0xNG}`=&Cȿ6IQ(Yh>B(Y$|1uD3B\(3>D ߡ?))o^Gat SNΎN}`6Vo0]!>R?cXaogTtw$3wՈgG#wt2$<QQ#I@:&5q0= {oo{Hߣ'lANFBN0PGb"l0.[,KBv9V=r%s0':!,2^?$NB |n~77:a(h44 ^/D`,5?L+1r;/HW? ෵އ{}!ѳz%IhO& $lj8alۛ/<ȁZsvcTD;hK‰,{wCg6$ Kik+)H2${h/"1NYo  F@BS( }+}$Em6׽/ z>A''!;O'<}@d݌[ؤ ?|aH>sP//Ŀd)jq 5b_q< c*0ugegEBJ.y㙑_u1|i=$!vncp 83g6|$uKR_3?RT*JRD`"(LC?Y5uf(Z~P{Vf>x4;YpGX[\ڭv~j?l[퇭Vajz0`ز!HlEA|P$EA|P$S$A/lNk4ݤ[߭(j[ŸNlrƎS_՛-R)hO^}X6vD$upY o,)' v0&SCƖ9Es TT >*E5 YA Z/wuJ <;E#'le 7UJbNz olJg.7*!$q,  ӔFƆYZEvRd*!o[ %D%PYYGA%:PF?UIe-J$Ѡ-)tdL| 3oⷠqcaX¶\YAhh*QN6 UZ3F1=?pe&$MŞ zYO5_Rt4v@Tyqwqi}Rb)a&aUTw|@nOhj34` ?5&;d|`tB7b1!22}78A b'$)'9&)_-@c(Bʝ#z5NR=@g. v~蜯$BxҴ`"ϭ|˱`-X[#mnPcьukc* xFe*T=)Q\f cL. \DGsd}-n[ )j˒Ϝ75~c_''Wߗ)F>@w+v1/$UY_7ïT"Vfu ~}yt*YG!&^<n/q/ix{.j,٭{P0cS [:is28ek߂1:5`[wrt'5 APVb4O"vR,jXUzKݙjr;qs1[[)Q|W K3DbZ Q/K3O$(V¾+'Ly?:dcx?ƒ3<]wGSwlWTYGW&Kpf \:%9s@, 0`0#W .[0 |aAC77|vFƌ|ʟ%ea9l[Z|TK7Qfny&H>ż0$ݲ[zmO80O u/xCc b.?2q@em›'f 6la403slD?m{ =1rq݅ *g ײ#fbd'NN-ua6b=aSkb) 9l) `?R'?786Pa!}F("ɡ< ~K‡qx Fǟgu T^E͔%ZT_1I4!o 3ys4*(Ʋ)Xk"19!?#br${PA)MdxĄd> 1xv:4w<.v3&F2)."b ϟ%s ۲7.I|UG=0. Gre0g»԰a\]B 9^2}لh8δA{`9f s O'_: 0axlǗyz ]eQV0so_W7K Jf֟;?a%qKt)a0X'I7R_ZN B2陓 wq#@|-Y.ba&3z˶c-6bjؿ̜ΫWۯ<7Cqg ;%gHj!$M)d9lmמהFhl-|悶5-$)T@K`aו͆D]+AVಋ -C7=2|#J4+1tݷhO$X6;QkCsh<]S6%)fXΓ83 $E U)*D~VpXyb`3HvG"\tЮȨ(_{Ϧ7N|L<$$vR`}vϫ ͓ga(¦GQ bFpДbqw>mۆ[)1ML'xρLmlPć,b ɭ(m$lB GhƊl+5ۢ*kkÜ(ns$(ELwJ^ H=!ən ] q ,f;nx8<46؟DTw?ǡf9T7gC?rH JnXVY)wYVĠͬR7%dtSn+75c66kǛpD"$4e0 `̿/^&L~Ijnf#bAX;2]t#PPב*#xp>$7T8)qS5#;>&+trf^Te*_Fc~(ףUYZqXGMh9V{[Խ%tʩ AD+%f)X"uhAc 5 ^R_Ħ*Ƒib".>:ST娣x73 6q("]&x! ]}]F8i9~E(|(I1rS*?WdZ1vrislC[^rl5Kڨޒb91z&0GNҹ90JKW-Q@&?1acI~R¡ȅhQV/}n#;~Ehi-?*/( Tm?X$E(4.@2|?8Ӽ.tVQ-Ń#_zrEeeT'vIҩ.]%͐kn3FcQ$J"IQAKg4 +^IE ("uQ.׉X22^iY(?R/Nݿj.3i*5/ QU7iD}{jHE!513n{Al`v83?:XqnI9,c?z(+3~"=j5\,'VK˝<&X\ Vu;UeI:'VK\c)톮k]V͋l_^贛akFU~~yޞ R砭(<ǖ?G%>=atԣklW >Ȧ0*OMGo>' Y?aÑ^ }uN}4hP+cG[1ؠJmmPm^'°hޠhvhN{\u=@2L?y\I) T0R\S(12ԔPN^%@f huǀK{yI^(@ye ?_0ozҿp箿[, JX'\ɶA1^9<^zXr}fc8l F5G<5-:gѾ=ٺ`VяVېxȎ3=D%.APrE:l X,Q${MuF4@7i̭iDG' ""92j(_vPMrն 7§UT&iM5+2Rn-ׇӃN]I-դ*Z[UyLAc9BH`$It2$bJ̯gce!>=D = :q:z?k(lG^wh`4jt 0(?qd5?lۣ/VJR!תځbC7[j=^Ȳ‘; _[ qD3^J4^on KVEcDH :7~ĀJcq!OI:ؤ; %mpΪժ`*hF%Sޢ 4PՍ=*Q{k pئCZчAqãV5H;QopbjGiOzި-۩h@`y_%AȚQʚqb/q|Ұp:?@oH2I lNqJ7䟗`}5G#f=l5e54zw褟mjt>5['re]MZ†yկ 7:G0^m;s?p|E]Md!~Uuiե8h'?{0tKo!Ei`=4y?Se;ν kJVKW: R\y!A=01 tQH-(&jfr:Vx$bL@R'b ]m4( vCcu`&$RA\ ̹4|FRrn=n>;wPDK(ߵͯ^养Vx)(үaFʬ<}7ЀsS8,r_fc|7A&Þ̝ JH~l E6qob"sgCkbւ0X;Xa[Ÿ1"R;VC@@^5Q0$jiU·;)?N2Zh>l m %UEM1l*:3^'24`Gn$(G&i'{*D7F1 /7ol3[oӢPVOlv3(0#J$ V vf+"\-a`\Qts~ERl"3R(q9y~QG`Ȯf<9f79 bUFgW=cv q4HW8Xzdߕ׳ŷ3/3o_eQ,^fWp* :V,k)2voG)9{ 2O4`&l,K+# 4һR] 6X=4bI?\ɘeES!3HO[B0q#JϛL x _ h(78 +yiEZv. IĤey;8xZߝrvsm7ǸqrS/N/a/?8MnaN)Nrs~#z_zFehܹ_ ̦t/ U HRp?)]e>K9<$o` 6 KĚ b_ypX+)j=j%u$@ߟbA-xgO4o]rY>*9[B ~b:߹?h{m)#cF9rY fey& 4Kwi&e7_tTM_ mSoOǷrdrBV}*lH&}߭ 9ګcSY/A0S ־,PŖMzF|*u֮nF-kfժjճjmjmga!mOjYt׮, wumf,a!mvjp/_0|]}zBMw}2@V4> `34>Qq2fE@?x\`N'"Vҁ7k!xՈIZG(uQ @ ~5 }5?ؠڃOq"Vٲx"|<#D!^&".kFYuvSV %)sHZiZQGx`*/OBQ[iҪbJT9hJg>?EYs rC:s>Qޢ۟\%$aeʼPŚBrJ[ ؍dОSښ fu.cN?{ {9Ym] lW` fzV}QyQ݃ buJFגJ@f2t)|L v9YJd]s~y]onߗ݁w2TKְh ְp JN R ATEPuUGPul5X5XcklC F,%I#,#DJ)hjlx=>n }h C!ZMa?m>;qKt߆^Gx0S`iL &xbWִ[Xo,:hz^ n<8AIZgZ+fԁ%}v&<A鳁۬4b9Ubw. _kV3bg/cnbqZҙvݹaQBi,g8ĈI~c8j*%Ur[ߗ:U([IEcT˦jxm:V9(j RDVF@~ kQmI;j# aTXJJSBWרzdyjkheQêѳʅ451ڇ''_:pۥ2eԭI,Ĵ3u5jݞU5u6j9sS$DLE7/W+k'XXbW@3s^A'U3EE*RLXZQsYAtaЉA7teЙAwtiЩAtmԹ::꠳:<ӠVz @$}]JFIhƏHRQ-Mb@%_V*+f8YXyZj d4T6%i~ԳN9 WU q?z[w7Yw7gWDWռuɺuusI⼓Zn-odww7n^wn7Wyj/^^vuwM^^~~u5k˜o'42 MYtB'sœTɜ'4+2 ML?!^dbL>>!dbL>>MM.f R{;CB !S2%A;Ȓ;  Kdಋ@͂ 4 lXd@ek\q)"),("ФV|2FV+' 2$H(&XR,R5}-Z6ue3vC3+.ִ% 1&o哪YGtm|A.T8sTfϧz j|SڝpoXAW/ZMb3<}~J$jYmv|ڔt&Xr77ݜ aZd=7z^۹AOHM wrw|'oAY 27-wr7wwv|77={vΞqyA{swu5~3po<-(b`w M 6&RJzi]lS Bԋ&b` 6U`w !U6U ePW0v4[@&JEDP%cRN'Sc]m]Sy^k0k׍巵Mw+_3cWϮ]-]3|wOϞ6;Z3k-> C'Vw횟RcW[c\ZRԨkkSjlkklkhI [*c'ZvSնֆvwS|O^ V{;;)5|WX%ٝ,g? {ŢCht& ?uVxWWWS0^+㏿& P~k݅ZteC0Y]Ȭ72BDIA۽OaѬ}ѬNy[L#zJݤ< ((FQQG~];]ŝs`wjQ(ŝ;[|w0л nq*ށP{ewe@a6轝(ŝ P,Fa`~]|_a_g 4!呠V|AkUvCרlݨuVsfY yfTmhE+4gb5 "K6D.>Z"Wh,\=6f\:j,\15V(rytטvSr魪E(r\>U5DY+jE QLC,\.4f|j/\!4V(rEbhfAr颱3 K:[ljܮz5[YVP^L@` O? )cF Dr;R;P0e#&YiȾ0qEJüC5hV If"ԛoPr QVrwлaG YYtjKuC^Xݮ鰸vY^,>5'wA?s?ֹ7u-jAOL=e=7T@ė$'8zK יgA0ʊlt:ϭ/lEB4NLض'RZ 𚱹s{ V6*}D@0iQXؔ!c` ?`Α.\B*K`jވLdM(Q[Ȝznǖ{3лril ڍ.S93 ASla7[`!@f>0>rQLp vw taic0}L ,k LVĀsz7hC@vj4֠#=;"?UehBf|CV'o>EgA򩯓[EIO@Pb1*u R>Bz᠐DO\Ÿ| <\(fIBpwCJH^ym>vW 0}α{BDBOs1"<`\o-fX$9tqy.a jz4D]o%JrZnIi7_1o6r8l~hÂ`Jf`Y,80KiYY.Wt *t߫G1 A:lQ3;|l7:/6"Q"RU?.-Z8Bl lX27?W__J?Mh,֤n57-7 hѴ+1VX@?A/ʕ(MY)dp2^սYr<:kizba.&S S>噒i)e(pcĤ`QH>Ep(D?Zƞ֞2 P WZV3uFO;6v>Y AH<B?tȔH23]O-O]ƶlXɢ|zCHKTJi{<'|]z Ӵi/S9̽d*jdG㔎+vfYlz|v`_R~W 1}28u8#'W#uB-=Y A][WoY^ d͠ƌ}+Kw-טcfJ5jlmoOOTI;{Gzu80M3W8.R;feErS{ilsI_6X[WmQ۳?6]fe7,#Oۮ B8YnA;çK 9ÞF'@HX~X~bovٰmj\T,LyI} ȟOόiJ}\@D`]xZrb!$eA8PPėQ&-B69p74Y. )Bk2Gu, P ׄF\-IC~o0j[CeXX%1 ty#w7mrjTRdQxa8lۆyP~a?5?4tNT'fvvVAmL2?ߏO~^yK `ahw7& WRz̙մl\-|#Nڼ <@_eA -B]v=2a)a&ҧ8(#%I`"K9v읗ϕ҃XYg9FN;hFw祂p?>0^,Ae&Ն TGt&x0V:Q"<;wfv«9#2 h5yK$>Qr1|"/Q SG6E@9ő >7hٍ~??IVtk$86tGnX.rͩR͜0]:񥇲5H-/ Ynj縧ʼnͫ,db^=F9_&:g6ˡ䲃Iq9-wg ~⺱ ˥﯂荳zVd9Nc|iI@<r٤FhIe=zDCuSVmfvOd@G+rx'8KgrtߙlYFٲQYpx(F} Wm4;ktRS) (~ΰ)sѼ&L(jq]hs <"T2a1z. TA3zu/2Wiܷax+7{u\Ѳh ޛGm4 ]7Qz<>c46cAEZ\%+?\48O}jNaO]1@Kΰj3PM7f tr:гP1yz(fe*.c'n#Zix78YR ' $\n@(wGU-I/"dp>JhQf9HYBRl7b7<آ\+Ԟ.g4g}u=G77Y@QQ}0^/_5CXB~fM\65)1ruM\r-k;_^ ^◷j]Jսz4l O?JV`4j[—m0gr=ƒ7I]Yl(20+,]_>sD2T^CTc,ԙM~v'w?S\I(vl4Tt!;+ hI6:xV&^6NtQ(n=uVY(+a;wٽM}_f?nuńɓgN2h ,xPpvёSi=tX{tλr8JbA a;&)@k jԹ1&G~fL`/~sAϦn!EQ! cS }6`ɠ9w=l :_Pk!=Ln$/cyedP9BĨJV#[if[V +mrvwoh"xl₭p\6<_x&_|װtEZ}}_noad-Nw<7CTGp'9b.mm.G٦a'22l|D|/=™7M`A%i$懊f,no|qIekA؄4B ZcFB^;u6\69AV0!G"dsT+wI tC*CR)/ʻLqQzp趞#*6NjTȨo`t1҅Qb^0ZǰEQ@OFw(A 艳S_+$ dKBѸelYR+XbeXt6cB1ťgӠt28a" ˕[JԸ$!И)#0auݿ!9$\R bQ 4yBK3摷]}KF? #t(i("ܒ/!j^CyBk>A@\?m|jvR,sPa/wsz5ë <)DS&;L#rcu@+NgpgVf*<~OKX<ҵUզNjqtͦ}}@+ f KНJZnؔY5ӥؙc̀[S LɚRv@]FDZC1B6ef@׋ˌV'DsUWۂmËb88g/fhj›_$9t.lڦ}G6(oקo< 02Xh3P:1c5aa^P,X"n~p[3o-Ͷd1%`r {N+sPwP;X15Q&k-q\bx^` p~HQhep x!9 ) cت_U Pe"6u  Ϝ^`ϟs /O[[ctFQA_?4f_Ћ !S/H6vɭ(/7{#pt 0+S \0ra(npGxėKKz"ޤpx뭚,0Uta2qC!AbCp{wH'y\‚}~PRX\gC͎tie\ܕ c ;2x g岟N^p,u#å\rw9ĊUpY'Q5)0oh5τl&eobv9~ 9İn+Reg#~?v;a}ذ5m6_KXEFrvSBtvjwlOiݯߏ;~'eo99' /uc|qjE6+/F`WKh$9-.&#QZp z'OWfA7Tm3L)VRPp6H|Xֺ,7:B뒆%;SvXYLSoj&j=+X6FXY\ְt j=9!a]ME%dxȸU<8mw)v,Aذ,DltLT3~cZLZ4G7/6ܦAJ@ ޽c.vLhukwzCP:nG:!%^ X&9BpK5*OcKo2qy\!X~N6ڛx|V]^; ):3F[4j P&ֲo.dvA]g=]b$}w/=SdM ;,2:$`%H#gDR Fa(n;v.9i{q±*N˚}9J wT1|" bܙb΅k$a\A٦?7Zɐ{C>aҟ" 1obvʼc; O5j3r4,w.ح|gX7 枟*IWwEVxG_x峤t5YBAM ss@RZaW;+c=f4e0. 6E<#DEFEأS&UrqIIngUlj&>%sk aEGn5 sզqCDH gsNtXK3Pe^#]u#\fŒ<;w}5tL V7-39ڀl3+ Θ/], _7/ 9fxxuIǚFab”=sNX,wkf}b9#>$F0OmTO s!F|3;yQ›,;] "Br1z e#s;[m IFO}4~noD闘(&m8B4q66Ix:5T;qɥ(V"<3K]ҽDᰀ6bJeI+r!AX%V _ۚ*iVWZ}tnIZS!K]Py:nzxlD>N#\S{R&9ЦRrh r OyB|{V[eB)ە RSw&fAlcH542@Ҧ4~Fps\x,w,,_OO Y.[,fFTt"Ɓ *u/$T~ԨG`3@nS5YN Mf`f1hEQ35 ,0n۝E >se *7%Q`}|Ũ 2./1;ld -RI&'u1>Evߍ+cSձaXj]i}ludjbH@.ŷ!n]4-ZM;;褰,jou FU$cQȾvC1M NAo;&&8'-!haIeRGH wEpA .ٮP0J$Un7Lj+i{mtǙ%IŐq"l:?>]VnG>ОpG ~nM ' pXnv.\$2i Gt\ ib+9`R۽YL,tehZD6HZݏmX1iz1"Ut|n+nwQC&(u[2s[E=NulF7\{ͅ9b},|_oƢ=9uwh̤Jc4ن|z =%!цҍCM ½q8;dFIb27[ kYxv(RFb[6a8gjbǍQH:b*൒BzY&g Ko<Éj;gޕ,`Hwk z4%ὼ^Bk77Ak7eu) H ۏ2(C}Ldhiۙȿȿ9x׉ߕWv :&\a_ݘH+u-LY2(ُz!<<)d451e4Zg1Mv9s:Fp.su}SB;T~Ⲳ!_{dH/B Te4&^zqA6)~8*| 9%RnՉ$f_q6E'gA .K4jqc†1޼)jHifzbX1O.w9E嗋Z_e$^ 7O!xsf]yB+]M[OMem}(|Aoy(/ W?ϭ0Y(Ey\ڬ =ثlҤI$!UKA'E~H[ u鋀IT=فNcZ2EgpY ,hGK<\0C*q㦚 "V2p 3۔w1%],x$YŻﭗ\Гv7`u9:gdҚd\R!&V%51w.^-39e]+,tE3Vp(X0v}/XS]/X,6:IS͟I#4_;g| &_ê15Mɷѣ@t+! ]ⱚK+bQÜ:1hPpnTA ٢sm>Z40v=ڇ!eod95 &%)Z-'T4m^ &euت 3([&pY0K\z%In/mnw Uu>z 5ށˏX!z+{[!)&ڬm0تJGxAc{+6-W{:K ՘Y ^ڦ|=Shaf4`&ZXy373G@fXfr ohU-Ҍ3pAkRྂjNQ\S (^] ]7L@^:yYGݞN9QVj-5gp=?|s4 PG>`呥KZ wLyսC`!-$YY)oh'쒆;PB5 $q@6GpȳWhUy\Ii9YIfڵ;Ky( BY8fs 8%WVk,^Yx=v}YBI+G+XA|c5?9RLpꢋѼT6 >UTw8/ E< w+jp6%g`ȷ(ChHQ(HC ӹY;O4%J&I|e4$#NNz׃atF/{Vz8n2p]b D/.nC.NQ B/!HլլoCXBb/C~i|ս kvِ')V [m|){!RdGPNJ Da?qRH3"h=2/&.J]40.pԹuySgH6C'w2d:p\/<,OG۱TC/U<4Xn,q⍷պ4n}:l[T9툳Ӄa\bcZM54_ ?b&҉ba>koڑjIh:VkXApXsԇ01޲O>AjϤiAgPY{F;KTM+)b Hv6SA|F\G)4Xl|PjUk6m0v\i(Lg rE{>+tS{YQ ŽfBRa'n I+%xK|-~pSacZ0HwVݪWAUr\]5ش0 d8tw[]8&:/o$>zwWFvGyB&kd~((A _@ߗ/$QVDu*/C<})ғ5 w"NnH>PJc o}yqo?eu6箂 {dzwdC󎄸K;% $4Nv^mI+r99c{D:?HdP6Ednl0qSmf[ E76@6Q*vh](1& AYeb  Y=63?à0OF6Q;YtX;A&.rLLbx;*h YN`Mbk>C@Y,Njb ̮/~ӗ]$4q !Z}]vs n aFQa @q y5&̀:PVdhH@sP}pZ?h4h)>彴l(& R=İr0;yxk#TXi+C8W̠x9\ [UqxH#QS0-<v!edǀ%=D㙇ټ 97S._Gb2 zuTm[l8~/iUйylh;tVAicsH0M\ ^ma/=tB[6k%X*O?m7Ap9'<ޢUQrMڼKZZ1z=H`;̓ mRzcm:ky>ujB*eer( 'Ö}3;<i>< u҉֌BQ#D> }n (>,]3/C]ޖk#$IzMmj"pX\^`خ5yL) %0D?Xʅ~x[%/6aK)|AƔ'LɮîA1 6JBN4ؑ")GAk^ZW h-B}pI+ =l86ȹ}f6L+>V:lI^RBp,tcjL98W*|JX,Vz|ׁVUOYlŝo 7o\x(@OJ.Qdunud!YP(6bj Q{F4@H4`8< qe5x Vn_4ii%>y9 9@; C>`FOc' x ᛤOoc|)`.l"o _;wdrX A:CNwN$(LOk\#@>+ A"dX.n^Fhr lɓ:2'd$݄~i5'dJa Θ!IBX4kHZO6x4F2G9g?: hvzQK;qu7\iyG{+9"C(1kt;>ix &0"4sCa!nZ!ȇ99 գ^Cl &7o-90// /.iA&X kFژg7b&d631c`:҆8 3U3 ) x≏F(%M#ndiu[H 0\G,c86E 5lp S/hݢy23|F|EzLr!"Cxc_(eVk|p_16=Ǜ!]9dKpN"qv=]'O qKK}N+EΙQ/!Z Nyi?['Q_^kC&nGS^ j cŞib59R+? bu0)#[KjwG[ k[rJ)8 ?SؚJa튣ZaADp# S#= ?uF uG s ߝ;_n7Mcڶ$Y* lFg 8  Z[sx%пŇ Hm䂸%qeeO#uwVjhhVM~H&#xB3ÌY{a/-XƋd[1=X6ȅr ڸCHnaDq԰tN L29U1|x9K^TGD8gEOq) SHoZG#̛dp~Ss C]&NYvu:ٷ3HJі\Y\.Z[* qp"_tO@W:':*s殅kxC7ٞ>t֔|k_ )ǿ^_[}9sa=~~{Go2賟0?C.GZ<1o ?ޛ7Q=1Zo9^"U…$E,@0}׃wq5,!<D",:K & $n䣒Q3I}#pS xg[߽ +x *AbDT9Bćhha`+4E.P5L-_ )V0juor^~[!fƕI=d돍@H0waWBxOز&;gWB5,2x/#g"eܛ6RZ%sb_=pKɥk[hq[=|-Uři(9.XrjtUh Bj/@H0Ԙi A^z3^Qxa4ѫHǸHgҿ25gRYA Tx\lmڭ֩t]wrU=$[8RWRvx/Z֚+:f:-F?tb$P>֖9 h|6g]PCߨ/Q);S~;?v~&z?v&?!p&08ӣ":LuUca EBf>%d䘌ĶT>\!BժFUaEeJpօy{&;{ <+LAyVkT+VB}oWU \}{nUWtJJ_^RB}Hh[yOrq;mUkR/ WP2,fieShC4D7^JPIB"Ta:L_R`˅S-PɚZ g,ytiƦVS(ԙ\"[3#Gm?#k>¹a=hIK]1*m^ybk^zW/_lB;/^ϷwZۛ;[˗ۻ/껻/^jvj;;/j/__ Z6"u}u} nb+>E:/*-^kR3t8lt?rlww^lwvM^"~>yỎۚrRTjK^߬#BeŔv^˲Ցyc.eVn 1)|rNN{h:Qgd3J{>ц':#!f=,3? M*5et;ؑ[@6P+}K!itATo=U7'O>~fc0"?D Z|$܉u0\GVFt4f/*,(H+wz `FgwV0"0 I3$rK\( т%ܮ#ގ ϼ##Ð, M 1DMC5U{XJw~uT@CuȮ S,?Xg_=_˟Q|=y8$K{DHZ'O۝V]Su}d3 |e*?yM_uLl١=օtt>;0Htz^w6 e /xcC/oGID1`q0,h4)Po‰G°8bwPñ']>cgPcӀ oNZpMVpjv;Gdm,4y`PN$;HgX"p׌Oϓ?6~Xoy!M5nërH>hMHa1m*8ŮV@L#CI//ނ=qy5Ɠ* Gl2Gj>g84]+#U9*rfv Gn:]n>_f*mN<{;9vt 8ѳqN=;9>w8ɳu'N۝x\{vmwjVx^umŷih/e(-#d$R&l7=|?;\Kivc q0qhc762Yq0P툙nxpz [bn}~7G6GR1ct6۟Pg4}ћR@,fNmߎįbg7֨;Q”F#'E{oTvUV*V+AZ- VY_'R}0d@/G頗QeD_b,4Qc \P.כ={ Zt*Qn_J55Oâ["jWD3Ԓ2TR`VѣvFs 3yj Et7]O b{OD=X$?W X`#5ߵ5p};^4:QFw՛V'9ҳUoBy]1i7qG5(ޔ8UdN^*;K'(i{Qo,dO~t@CE߃8jkc#gyFw>m4- \޾v>OkĆ5_]wwss4er`ဗݚ`| g{8%Ar;B_Lmzi gg~R&Tɷ8<霙~SG%cH3ޣp=H7֣P4#= 4 };weR7+eTS>Ƈ#ހ*!|lp铨?-/J/<Ё),9@*͠'|'A/O҄RiikG{r W.p%H`&MfJAO\P}fyH<*(t"E,:9l.r\dq u;^2hg#oqKA 3+$_&^Ef,Y,CĽ,>B_gz3lIZr_:BipŭSKy&лRv۴8*`NEX{߯}6jRZ܀w4^gᾇ8H¯"'A2C ݾWßæSxkD^A܄nPfIAfZ\b֊r!D#kDZ8Gנqe4xQ &,9xhjeik>}l8C=wq1XA6kC|}*;ڎh YI'RLBE :LG7d|9 +; A0\*pBt=4APeo hB2P(LpX jtXT&vK}ST1c7]&eSi; 9t\ViA }*usU5FczYԕF*C/*E73&M0Db[UO.H Qֆ>a}IT2SHd/kjH}3RKM <ʉG|GpAf䴊њcH?e%>E3a5Znv:WN{pס\Lxv˟1^h]&`@!Vls*1,"r>T:QN%-9SZPe@K^U-2Z@[D23#\(7qwdB5ҫ8]s ̒J`P1X)k)c[u'աs@E"\؛Q΂1on +jy]ԹMbg@~Vqa#\N97ؙ³+[pw08Xպm"L[U> m8l{̱)}`up'J=^qxQ$i0|:8gOi.X#1k &eD2q4BTG@>Qճz (Iv}g#%ד\<7o+S`f7BYt^t8y'A)Db.b(gUt5-a%3إsPXrbJ(HESϪT#ÞME/:$VCI2gsֿ+\!˓! 2,rXhe~Y,eLiiIx6>T̻t2$6[xM -9jaP )"38`k0tB\ڑ5'P=sʃRAl:Ʒ8F^8(ݙQ:rT]n1n=6s@ƎWe>S82@vlzWz^Q1H)l4i+A5A(1plmN`B2,Y٬m./h##aB[i6`Yb[Ս(rȑcY޹P⡆ty:j[)t`.V\gNY'vhIգu⦭e) e9vE='hn+\# xpl}f,7p(ҘG[,NW_XIyc4 Fi C7@6g!_=[wjam˔qS:FѓyUr~n{#4% |߶i>ӀTE43Sjq)-i i^kM!PHeKQ9>>GƋse9~oD,Lx9ڰ&ZVN!_n75?BE- =h.ǾR'-Dxic8i+ރ-[^|tiXbRYKќ% dgâ4c)/%M⊰rӱJi9n.y&|wÄk 膒7mʮK8խT^˝eׇX>.f]1X~X]+z,._G4ݦqY<ͨ;Ur9Zr28uf1ϗ`F4\Aep zY<.nKzY .nzܵ[ZN\^ u½lruj=/j~ f*T3`悘2͐6FP<5 ou)d gG1,( &aMbŒ˸H ꗔ1!ѷ!'j/o;;sc`ܦ{6gs岢 -Ga.Y1\4&-. ]Ru@6w/5R8/Eqh Fi:Lqt9ox7VJN" z'?,e@#Jo;t/A_/] } ( ~1#8N'nBX$sbP U~ԃ߯s*[O;~y`iL-pcKx-IhS2}MkA,_+mu&?9F<|ڥ/B;og y9!Q1۳jȽ;cq])q)T'Ӿ5Y3pZe:e6/ Ar8?rŁPP/:3J&UNV iBB"ׅ+%`$D:d1i9KKbNLj]8!aXRLWpKŊC5{"p"C?42eE\%X[VU\ybD²PW3Vh57Cg6Uߛ@-3( aI\~PK]NF!GLY=iPL;]TB{%Ȯ [_\61W)y/NV ib|[ N3l i=xU a'`>1xP_lwM%CxU qdu9I|@h}Ҩ!}" ow$--M!J%($?N)i5'PP>6$K2XaazpDR`FJ?=5Kh_$t"ÆCm7uZ^FZ=tӷM*/z.7fl{͏,fyL_N,\ 18|XԿn47Jxp8$.thv[QհVӃtGVGj;k 5!Pp-_׌]GZ+b΄ݝL)qoOџ H{_`7.\1w8O+QV8m"sP'ov̂umAye:.nϞyY]RA48Z&?gRCL1(Uqh!Iмah(RΌ_HY(u4MTh_ 4ZHx;;6UCx,nقdImҶ@.~/_6 ~cɾhY|!<=-WDEM"X)m2)[~y^kc\iď׫$"-mυ·fm}_ZիRsד4$kv1A9MN9a[eLy{0"Cϲ"2Tf唜~NV dFi7 İMv%Kkvř K'(%f͈B?Kݘh1"_ (GԧUV1jGI=ίG(vl N/J]J_9h ٞey<SNkz4VN5ur(宧X O♠Iؗ*ԥaÆeU e7$˂} 0AsӄU2ߟ%S1`A'q䰅͇K2Eo#k9cL8́ɲ`_rC.oeGU22ȯoI C'B_݇_QKy..kd?kM~+}h39%i aQ x2fff N߶k#ѽEbwRt'd|Ȁ_$i>R wA~ 2,Yɱ\՚4*A7:NtH r?X8.]!xsN4}-j=ya#/!J \BT}#"D70[!٧YxV> CJ,sPN?os.2/[iV43i:EE~w0ג!K25B`)] FmU:'ĖjiGt^!pe1Ah9(h$m!ĒA`Yp yjgFRx%ܨR 9\+D*u:S;S 5`u\E 8U98:;>h,V~SF P1Yᅨx>[EKb>bʼ .WφZD/z/Ne;Qh>}'>,oeČ@e۱ėrHCh#?4j6ŀ>P\6U08V+* Lr",ʀ[6c[^ƶ04Ֆo},\{2,y<< Pv?<~Zz`x.@惷rg7M#[s2+r;$B@ļtk?^ SZ֔Dȱ4* w7NGor>nnqs L3-,Sü3gg9.<fm<'nޕz˒+76J%r7J6J"r_i{E89DkTXzn$ _-4Bp P`ֽlMrMOc~o+ Gal*_.eȶ ROS (<9Sq޺,1ޘdWyOgOi`/gK=I{OɅk-ly -p|3{Ic_ŖKl,2^гɷk狆e5k!%υO=T%^z ݲϺbyd5@s--_&"RX"sʭ7£;_y٥wOHG8?B `]ѵCT6 SHпY!jJ]eE4"0ơM{&CGJڶGEh@ylF̋6MwӣN32֧$@&"8JYy3($oGL9u D](ay< DKc\K&2;>q - PYvz)Q+>4"SCB~w^,E7ԃ6Ur2uN뜒ԅm̶^SW6>0ܸP=u p&/Z9p{nY*Aj)k%P*0|a!Jl~JsuJ%M ɂbN$YQ{CX"MV!`\ zepʈ ϜC8ތ&pQAbaGK?#JhV o8c7 R`M4!J?9YTٕöt`W;!ML Np`ĈonB)d9&YU6-xhcM̫1(c2BP(9g.K(B~ICj3oS[`p Z'"\i> Zvk‚.a^< Dz{_0$Cs332[rLu,Hsiݼڻ(s uЋ{&e"D1,=JX(ucv}XEK-*x\QoG9D!P/u1R7AJgS:lC9+*ZטtP;:m/]#ђ؅;#_L%U4'uO YeVt~x=>($Tw3\Fqy.cON}__ުX!\;.t:C :XnJ2$ u-ڄht2h/8liW&"ó\'N^D3q"_Ȇ 1a^FyBx>f?lݳINR}0^z[.XZ tǥ\_ldYǐ+N`"qZyw!UuolED܎ot)+^M47k,^|PG `L \@ u>Lr )>#hKMT[Tp]v{Hl!}!==l vW=A~)NJqdװ7$9yY$v"ܸK[8r0Ģ&^0KB+{yLrw=X25kÿm~hY 7e5@{ Qdސ͓!s7]8A!M MXq! Ӎ NŬi;%+hX%UDj%m7 4k36^3)wR Fc9(R3UP-d#SPڢt[+#?6߷i렍>vU7VV(bU `K ieʘG,Ce q[_jh۵rL2wTmBTRwKծmD$%Q/{Y>N~>89:B[0,^2NGlƽYLnuݫ"%9:~l}^-E&@LkXqF6N])uQ{M-dM'n8l۹0a R~`QTo7q6D^- 4v FN \:ҡzRUbZ{IypypkPMRyA$zHܘL5I:&'EsqSQ=a`,Ҟ?7_sf?->H0ޢni, U#֤y/wZ ̨§>bO1b_>&`\j B?(՝!4ErN/실Jy}+z8W^ؓQؠHB >68RH4qET2%oOͰdfufjm}Z YJ6#,Nhxd>0l DP%C 5VPK" Ep4N/CC:-d_Rwȇ`R`ɰTz>껚S$/*QR1H &56H}T-Z*@ADs(40s(*6>)aj;Y2jcOzMY/d.]}Nwj+ Ϭ,4CǺe12F, }Rh#ubxd>c.ޏiK̑mK ;?*;0%qx*F.[pԫ|Iiզ HD+?4Ņr k(.+Գ(RO/ع0vI2]ݝ̭9*xAūQ{b8(~Y;VՁr˹GƟ{;XdseˀW^ c/&k7r Ы%%â" )uDb5NدZ\?mp/wSu)ХVg+:A4&6AVCwXF<#:~ə!ܔND_PQ8lyUaҔ]X!y,Rql%7(F~BXJLeQr٥譣d(=Ca>c7 k=,NR a볣N!2nC$d5$#,m陚RyiU XEͺoX3P'eלI YMO3V|ZI. [ަbd ULPok&we+{yHN'$&ſJ3>l2*ݲI U&Y$5*^ +SnjEy|XplZ*'ץWRʛyTx*wϷVFgz! j>i 28'$DѥB.-*88tt9.9-79C,ܞ,eMzoɲIkZ00|4gO/ hQnK Q?zV~h§%c#d` z7=g!֐f aʼn,zRp?: ȫwVabtd bȇAV0j%;`_݋>፣$* UFFC3jOS0fO.qaEr.(MT3Eau>i ʁn ]Ph 0^xiBugq ܿcy1w1T=Gnx2Z Ju1Ӌ>?솊m?~`ΗBfӟG-dT"Z5;v?:;>0&_L;n$80G5\FMkcւy?/GL?<<6jXׅF-~/H><W<Ї=s"}kcXsrn}Xb<Ƶ)rŝ~u~CR?h~~?UIG@G?ci|=CZGl}:KˡEXaҭI3s6w+oKI OY8Lfԏtm2BSx];dp, }үÞ.XnVfDpHjV LdhD(e,iUH4ĻA ;sh9>.os)a1j.I.TtY)AjebLf. L6e˘A.A@B{@KRM>ՠ*5#\I!ii7^.`V92Vg5t-`n *Q(9`yoi ~q=>78e³ײYj1 L ɋQ >?poG[o(%m;)0C}׽RGXo KWyi8Oh*ө!tNħQɗKHLFCM#ƣpaiɤ3,b g92BvC*lSjB2ٯ0w)߷X޸qU{"3`^*SXۏ7 pY ܁p7prbBTNhx2ЮC: U oCc&Sc>_J>/rD'Id bGfy$/nؼۈ&sTS% e+~v:)gV:iȓ7mr(i`4W@ ZGz #`3t v:E&xp 4hC[;. w)ñRo@=]OD̬]OaO϶QmR/A02Gk궸 ?f)njo,T G43D3ښvr҆G#%Dz1%1%24~ mE|Tj:LSRJ1<؁ hKj!j9@:Aw6AU{^*ѝ&Mn֏X\TD%d FFZ&_Bul0adKi#w`W෬ɬ,UԧQL0*> G$̈́>#z[Z>{4۾@G+G^Y͢%Wl–p#]nqʚ#~`.BheIdh,ԼX ~Ъ\%bi:j| BTs%y<ksMŶ?0ӹXOw~1#q-[.*^HpɎ79Ub4y}q9'S&?u2 s[F 8'tm`T]aDڞ@X8D1_,9n._~q8 +=wsrYzNh3ӊ9ɮL~spRwE(3\[hnCo=ds`#Mg϶hz %!X+kd`d4"K&i^P qro $Ҁ1$Iuz~ HR `$,0ƥﴻbgӝU"cBෞ83]CZY :5Xui-p OGWƒ Je`ZnM4 n `#م\)d!$tk<*[ו$rXUBaqaw,O5RkxtqnVTK$gF&گ%T{a3Pw!mJXX/-Qp"8Jɬu k`z8;;ܜx浊ݽ˕34 ˸xE;Wgo9:}Y;md3s^0st9 Gx5lzrKh9Lۗ j`@"4zްE{^G/u KssfȄXP 2iY-0tv{C,NGFZ U BEAg6{ SMq&akܬVh%5d$_ZcS_ֺhDi Ɠf1 L_>aKG3ګnbdk1ȝ3Ibf6| *Z&mDUjL{KI׬*ŽGQkQGu٤uW"g3ʩ;EH(Qo<9q ~Ox$߳&QeNq.G%ѯ)dxl?rz;*IT}ax$LQ"HM fadar`ⱹ?028~oь _Vic"7mEhM \-OYﶎZAoaP2tk"9~e!hzČ΢HJ涇!b<yRyhKea0"]Y>Alp⢈׿$.9 r&IA(3k@f;X""45(Up) 顩g=[d}*+K=qZ9beC&_xCHlvhs^ ߹*{gyV蒍u}xrboQ^t2׌2n/?K@EfuPth/qHKNkjUT6o.~uhr˭p ۛK9ݤGplBR&,weF ymoTkEuB*u\MvM_M+!q/~1m!Y^ZڪǿțayFCj~zrXHMTgw\IG e`Xp ;k E&0MB"da{3 <1џy8!hmZwV)6,\F˓R:-LGKmMƁ F. yM{a{wYz)g2 {B\`zn|#47^! ~pZ;ӜSi?WͼX˫\K@ܗ?DEߢm=~7; w ~{h4!#M񧓿@X{\gpZJ7{_z嗆E mn,xRٞ.יH҈L5=DVw"4v1ܫmxu/ I(:_MyF&x4J[%Fl8Pk*l{ sﱐIS'BP0|$yzT$~ RTyjn(@NIi^e BНU:.:YyCq\Ӈƪ9aon9*݊t4> }E3&3i4HGnqe4IUG2e?5{+ Áp班7U8K"ffE,CġA z@!vA" /фW 8#s6áw~=F,tdNn)zӇ!δMT٪at MVT8J{A hE%> sCmDl2NK^%ך09e'H~;?M-3!yP|_,~5 >}­s-W+0'a׀T385JX5s])14LR_~uBA2NjVSapvW6'jFU@~;և.JH:ud(bU(NDC{ q(rȫf *ܺȖ@T:*RHNɊ.:'"S0hWWKhaQԕ> HO8 +#?,d?:*Y&/z&PP2'h^CՁ:[#XG LI~ )rAKIeV!xS dds kQh/{[~]rA,5ὋgoˇW a(>}H"(x$tJnRe?78\N W( u7ϖ>o[] @Za%Fq6@[TgUӵl'G]A&(z dM^ʢY@{t4Rl?f Ep~!owUO8'[uEJelm4 L/<pKp_kQ:/ (|O{-%(`9 g@\%5=}T`Vŧz ȧSI A9i#_12Dh( GIK@OsB 4Yů~&yZ*k;&=xl4qZO21qum 4E2 i0֨R.I4T*Q0Lg0yWMr  (w^z5J<iϡ{qSw Rt{[&|(b,.=@+ DVuBt]\H区E1(8aL-'?en[_8AN|$3 a8T=&o*iNMd+UʝڞK3ܲ^tOdHg,lzȶQ9=6Q̾1O~c3$-⸅$Ė)EJ]6Ϗŋ Bf 3 >&MءjKqTO:FAa lN6@J68*-]bޮ)%Qe66低N=+ 6!$!*ѦZ}x(_%Z{A=S9ØYG 9sJݠmCS 0S2`<"o=i4^Pj6hm5.Bl߾}|)??N8Xg6Xף+A|dfHڸ'wH7>v-hDtFp文l;OH<=߿Ji(>hZw9F56Ii?C@bo( ϡ_! {ɤBYV{g'ݾl!I?@ .$gq<6w껼|Kr{r|M*Wq4.ߒ8[YiU:$YM8"N컌|2!LHTsYLHH!xarUR&bZ{ BċyOP]cr "]uGpį{<@G7t'F\kYsƟZ]E?ӞThԫmAC AsxrӒ(I)eTQ T) ڦJ1냐޴jŐ>01H)x4& fD~BcnX4Kuh@l=ў χ67=#WZlPzp~m)4Q䁞D|FIޝYKR%[Y k?zDJ9kO{Hs`GpSn&^㵈/"f v3cΊ%{p݁tm5>K+P5&wULb4v96{lu%/uի[[U.GV I _>4[_vucMMI ڃ*~Dvz}tNbEvH_diɖY֌vym# _{G-SIt(Imq<.'EKav>¥<.DYx1_ӮO@OzӓStOl"f#R㩶.-nv~iX+KM-5zUѯ-={N_Dló.&7 &Q;}>gs#Zf_y>_5}1+޵>\N^ð6QoOcK[hڋѥ74+O%ІƜڒ"Euy{`:aB*{ Jlb2Jnf)p[,9YN3bk넮GoPWafB.E6xX ~w`آ{O'O# 2+F2wmrsėl7|uMr`A  +%{ ؐtUbZcaD4F&$MbCV8NЌI4-T{C S~fCV$3r2޲jdz0Ai#]zCKjy 7'HUM/GKf7S+`ڃ)עaj5R).@vN@vl@^9baVk|3Ű ހC8C+ٳzA6 A<r?bB/BHXi(\St9i[KE~Seɻj}إ4P?V@ #+ {KxHm\bK R1bn7~ջ<+\SA'AZskG +d+m1ɊMWTDZD2dH4np>i(5A&}=LNpjizrG/?!dGhpTkғ"1[c4tZOpg-)vuъ|܌%n5M׾aHCu-dnɧ^坽aRH2p$,qO2qbIz\v']dZ+xIc2Ti$tLRTNNh窉-D%DAT ^pZwmz'32%Ph6j!h)Y0"0h-<(4N'L}WmvEG6tX&ذ,#:`|E/k75C<%5 ʀ5\}scqqYESSARx?jϲ SIq' nb墢'͝yGVck_VQ)@uꂅٛģc JWѢoXU}Hǣ\gw^)g1)+' ^9k)ƭe ΁8 ? m?msUg]۸sґeIvb[EQ6' I9f-%qL9lR*ܻ4.kN,@P( Lͥ}~ h KطR 馟,FU>,07Hgxgw蛊 j f@bbO} /IC<S;He31rt/d #5՚AnW%ͼ>*u]gr{vUm`} ;z L:<@\?v>X@p6E%4Z3[JD!6AA[DܞN1N\?6 C Cw.9pQh/qɌLXRyp|' h.)!Ҩ 8oAϹ&kwC{F>͚- Lɦ4z32'8Jy ?Qe9+ [/B^R׋I5RM w(n|EUx/df1Z] i>PC#6Q_:*ʇ|1?NsO B aHzH/Uy(EЄ6E&0RHJ'(n?Κ櫒JEpvڴ|RY6Ԍ=r OMژb?y>?I2 4&6l^ޠ(k{L[dQ;P6pؑh7?OoŃCny y.$GWHM -]C7GahW Wd=i:ʴ&`G8mik?4>9mLJy!K CLFV? eF +6< Ay ?h2A_3^iA8&>;'T&@='q $(G&g'a埤OLH!F O|/uGf[.qN YjAhN^A+ؤjBD\2TYw ^_fЏe'xϜePXStى9GL3:ߠ:"ILU>hjO6Y9Uxh%8BR2X'Sx?'*gJ4(%nJQmT{sry>{~8o'N[/߾x}! A.A4AсtUiF|x~&Ϫ !Kss-#+x9:+ q$ io6bP[e3͒9GiInܹO5\}pzґ9(?!vՂ{ h|]0(.g}V=G?SfRMm@~)5xvBvUAVqi 9?L3\7*1Mh_i7~e;%Q˶ZWtAi4$sbW֘6:d:ǃ֑Լ139VK΀t‡`vL lA_G uD=$Tx &;罨`ZX*ORzdz$^mAZ@XBK /=BϤFԭ- f =C( 9\F1Y $w$6.&swCet%o֋QG1+腨 bNɋ\{QɅ2jCE?4gc=k{ߦƎ1h`y\;Tck3tr`|]:~u:$j@ 9W];N^1 $O՟y>DD}J)ŠN 1!X]7`ALq83l\3%u1ʠHYF QEJRaQվ%n='\NѺsy^rKĥ+JnBZ_޻W0l3^s .gko-IC'Q TvTq3]b큭.%Z/GٺOo׎Tl>|L]0gT|R5L!\f.:IѶ*4oR@>n<+XEלnC9;u.Q^MFzM _!DrbjKmeH 88 {- U{H(cOМWOܢKH@ qiPcFV]Bu[>Y_^3l uf"p:f,20HorPXE< ji;KmQ} )x QXcQ<.iz^隈W/ӡURW@Vލ[]ʵ"xUݦ6If>Q&? kr-lOE˴V *0]r:tnO 89@/Xܤ۝MNf&t|M؍00a,.aSC4S=bj$M$j~_q"iP] bJK޵:xM0 Z,}GkLUAu'' yT-[್reőv! <;_#׆CEs|FDHQ-D&_~ +rA ,~v+h ?zK^FH;Т ,oL7d4naT4Hdp%0vl_`x6̧ u50;՛b+T'6͎&j~V_ yӎ^ C3"d#O{HWqڝ3W˕Wi.)'0 o^nnlwI&pVBFj!hSLkUL,.#7 ^"\<=Z\_T=ɜh, m:UGUrrQ3EE=dZ rf:3bq7+r74V5e\'jdee&2;f<mzR>b#|rH B(@Oel$A^q MX{7/jyx6C3d2az+ZPyjP 1 , ,Шh<$CpZ#[|qw(UQBi"S^0ƜǼJ(QoEb>(4DֻϫЏM ~ӫ$Z^Yq%JF+Q4܃g١_sewX̭zONtビvh+ȊZ',OQ/I('28"ٝ!Di44#% eYD!4 blR8{L"9AY4v>Ć0鋼dsc q,bv\_1KoXአ{H#f5H!#<熩7ܫQbrRyddpg)`ؿ5}G gKyo/*1֨Rۧz#JB4Ԋ~8cCbAd82|^bdMXÓ>M.6au3)Rb`W'B㥞h V$]2} âآNQ h2zZ"5/&bjjBl oMInwN7Pע6 r1D<ɔyot lj9|M09H!Ɨ2Ł[Q3RD^~zT@"Ӡ3D:Ut f)|0RuEinbht-m=pfՓÎLۋ..Dx8U$L˾۷!@.c.8j['퓃69aNau;jCj^zO)0 R2VQM2gIK8 !STqn#:* &9!nۚ۝qqJi3UJ:|J<XjVH 0\&|[/SN*8 (dE (,NME2B}vz)땭 /)yl~t9"WGrҫ'U,n''?,9JtTj~'>KOCzDFe |Е![d~3_<ᜄ؀ `aѕ$0/#%Jm^?F^ƾ`2LmNK[#SW14hycuaN}En{[[E(9L)V9꧘9^AE믗ZG{7VWby|x4!ob~*ImWO U37m!$W f (6k @#"P.T,}÷VO95"uXoy>Jhҍ4i/'r㙜q\9I]!j@FD }٧Y2Ôӈ 3@߳U↑ۚJA{X4XISE0wߡşcjĆDGp&\3{Х*'52(xrm$#rRUv TfE|E JVݻw+&^IyIyiSjUM1XA-)0Qr:Q(t¤l-sGfQIL8X`|h5jmxִ)1 O%{<~Y}XyL7DI([Ԟ_Sk-Pw)7hn 1žRD r5WvSdݪQ7P` xr  ιOn19CHx>:{۟-5NoBe9SO5oQ3ijNESl !USj G)[%@*q,YY)ҧpZ- psZ)^}Cև>c Y!6w'x"zZe 7y(Ysscndm0P=rU;/uÞ/&Rdz!9A?sm3zUc|ėA4 A5]X}Ow(aܽ"d:[a?;j@Zf1TrZi"\ODINAX*M1q, ^m}D9(4&Oխ1ps3! j:&{'XҥqkS| U3C9tQ>*3)أx6#rY&T&aA5rM!G0 ,)X`_@{bFafW#;& ֥9μmpepJkJ+p?ܓW LӜJ689Ӝ)"V /ezics_ev *?"U,Ei·!no"EQcyfi>dr];hPK((bp7A ߚChAb_ ~S|K#T/ \'<:}uxZA-l` LJ,sԥsyIXҎ4fk_{cb!v⋳faoQ߳$j'鐳"6@+>Zh2MpF!5j/fi| Z:fa @rM!fؘkM5Ol#y2)W4ayuRB4`(fC vO poS!Zؑ|ZLF~4?R3O/~֯766kOڄ״ICTl! p='ww* Sh ,% 2}W ˃Lb3a6l@]]v sAw?c >IBQ?F VNђ0 ||6tj [ pYѶښ:'i\3SX ػEt铣k<*&N'5zqoMx9xٯXxU>5bшX?"x^tZ|x H  ic%@*8uP٫8T]>!nga6G0?4OE #bO0_3Ãg.>׏SChkխVRS l%Gj5HD4%|W妄{UQsfC^aGn7-Mk-j `=&Ul+$Jtĉ{66Џ$~gy^llF/J쑫)mng1YJZJl.}%ZK=,)MQ;%7wQj~ё/Jn72g/C|]eS oD& \6G{,1?i#{maz$YT}?q_u ,&xxDc 2|w̢gl;gbJE YlM:@8yfW [krO}F~WkBCmk#S2:h4ѳv.LC=ȯU ATr6aL. .<=?`FiR]ޖt]j΁ɤ'&M-4pIgϦd8J*`N1I:%*xA8.a٠hj3GF:kP̃E `ŗƍ" TIk⨿G7ȩ,f}}ï59~V =y?8.t,B5: 4 WwfνOWjR,U* \ZpJ xQRgMp|jiY8^Kc'i󴁻^ j+ZEN8kWdd£ {Of7FZ9q,ܜ3H3S0tAX (0Y0jF A n1ʍcƒdm8ܠeps,R QV]kؘ-~J5#6z"y &&j3iR8j%)7>6#%9sz)#$f[[PK׻t3A8F\eҼ "Q.> lmBv'%em慪A E դn~Cn= D.{@x1=5TJjjml)xMfL =)P0#&l9q7iÏGAk1-!`0P܁Yt>9yH]C9SG~鴗LJϟ=G‘GWd-P z:Iw_WLy߁C| p}3Av!U m dL,*P_,/CU#4fW  o[@W߸ Ԍ7:n^/8uje"ņ!4ķ* i}(ar?<u<v*ˌǟzM7]훭  H6)=ɕ/YE^lduU~1و;( 6vjQ7+/!kѵHoG8++p ~y|vx=6ZaQǏJx֩,M^!a)zAO~C ‘Y_ R^%3Z`6 n_1s6>oӉNBYH -30= m(aN 57^ ӎ2jNɉrP՝/JxO+XgS44mrpʳ*Iv`]kgPâ Řt[|@WDMt[%fS$pۿpKQGP(4%|CO'*atA%afE-F{'H1LJɓ }{E%Vb.wmqƂ|5< ,J=n©)w!W],:?u+?jFRni՚vح~c;D5D5?MC@rǟ;od8]rF駨3?^K\\4GxxNn AEyzhBo է 6U׫wy~! {>r#^[ۯ}Ձ-F|I7|A2|? |>+4[َaA!"!p$`drMnLعSMtg ƆD`7= >BGݜ=N@+P NɟЯ #h X:awB UnKe5]MՆKA6ƃX3D^Oiv>2QL) X¦@? @b%K̈́)%7:IJCsq[P8 R?@/_ {r. Q.,+D- EF4-PvEd8]P QBjD \?ơ 6R 'ʯ_!j!-Hg ܅)1 aNV(6mL,dFcMX‚њe4 !]B $\ K)5=i$W]vɒu R5 ~_#h1i҅똨ɧQ b)d\;$)V#"M{K6S?60!l'&p$zoigQ nlj9Nx¡ Xd0fEMpZc1Ɨb PM@HH`D`'$ p% I#[(0ab:~Yr_z%86T+&W\辰C#5Q$Pk[3pCjco~p6GL]z#c99(Dk 7{jr'ۈaCZf:>Lw2N5C9MzPT.PC2s1Ō ҽcr BYE!Ԧm16>'dzr/Bѵq<]'s5+GkƕEΘQ5!9 Myi?c:G4SIBk">nLO| uy78" ;ͨ"{L/0&ȹ&hWlfwWca8XpUpfX3ْDp0SPEM<)[ήIr>#',׿ 7QZ s0kdѰk50?Xd`Q=i8vϽP=_f7Ni͓*_RM}r)57 pbP ,2KB8G![e-fIl;;+UT;MFv|d9hfّ %^)5ṇ(\h)m 8Q1&?Q N/ 4o.:hRTB-ZNi(PAJ=Fy}3wpX/NI]M̨,^&E*W; ,Ŷnߎ܎{ mG/%>ZP=?#WCu:{:b]VcfV>9,/爝f>3\5qqaТ[ycżKح <\JD"qr`c^oܼ^ZEWw^r|GZ?Nj8`bKNx[wæc 4N2xϓ@v4aV}ӰO.l^izr^/QRd΢'^;|q-u㠂ˊCqz"peIewev.kTev^V`}n2)Д EEn;6Ies95zXk/.Bֱ_\%`#y9w=+wwmꐘ2+|ބȺ=̑(vqW# O6Iޛ @#9a <g)h7-tcx Q'MX;<#].^/,7zI*ѕV@e@2@#8E^/d /7 HpN5.9saD2. t\z7<'R9թ*svSq~D?d\3X/Go|dRs;N8w@(őfoCٲ-ADY򨍥A2Qkk/f1ڟ GN'`%ـVyg|i-rX;~~ka'$l<& `QF%.A‹:8,M+~>KiDA<6U4T6@ 4k2ɕl͈% !-XL3dP7|wٱqzkد,b"ۄ1H 0ģ0 T>lSQ@%9S5A~+(*%bBE9A؇d`οw+EBO5"n \lx!ju{r~*'B?pNOؿӆA%ɟ>6??]O&<6= ,Lc$;xp*xW&@Y:q'/n@L;MU;h'lpT@/P}O}2&a|UȻUM N#;*5[?3*;TzmQ;1DIpp]K #5R?ΊvbN] 3 2KJY@Uv.R/]/R|[`q:!6&۪KkS,&,E{C3q;KMWGc\ 蒎 eUikJK 4.>Kj5vHꪁ ?!#j~eY3' J$6 N}SR m29p2J2O0å(p)Ā1ni mYux$*:L) {$?p7E cIt: N+,^d^ܵa8LF^76|R. q Kf*KҰkF1,%'6ҮnYtmA>KbzR[PEݶr1"(0y ˬ r q%Y͔,&lsȯh,gL--kΏm$3sPX1"q杧f'}Zgj6gC%}֡f .%d~khJ8CrX<9ܼ}Ȗt#c ɒuT{,υjR22Gr@Q0)FP KĀk@ DZ21*Z02~Qŭh!9_-=tTr% z8T #q0˝,u|915HB7kڈjEڗ;MJp0@KmDBM5֝tZګUrե\Hv qz.`Q1YӍhrcY;xBIfC޲HΣ̅QKKCZ 8bd2}<[5)th}y"8nYJ vf^-lfQ@S 4weޅ?.%2}AR6W125Ix ]h#-͟@-7ذ(-dmYd w=kwlK/ 6I*'߫6F12ϗ,6MĔ8."!tќп.E.9)A>WZRx.wxKF/ܜ > PxL|u/&)(!rN53t6&٫ZVN#_65?BE-=h3˝J(ffltChhrKsgSRBxĄ~Xt-Xe/%Mk\;guݜվ-|1 =T7g/-Cٳ`)K{WEQ,p;ό孴~O-~ϑ%gm\VF.O2rئF"O('hKX&[,##^6 ѠͣI/kG^5js+U^ u\rMaxvW^Ϟ5s7, & 9n ގǨۀ,`\gը.scA `MbÌqOՠӾ?ԅl 0'yj,1,mq.cE͙rW;m s8cϜ7&\l%_j/IHk.D Bar,x;/lf]ݒsFdޕ 4P0fV.vvbη~ 6+Uֽ4du)"T̞.˙Wc8U8H4/a43d>&%M+$]d<ߵYa;@ 8 O'qOJdl7؆ɭ],cgݲ(U(uQ&(\ubD²Pڬf*N+~l͋>q7s +$lZKH݋1`_ec+CF4|}:V}Ħ{@L#BR5+%zuў$ͫ]4"ӵ'D@'oDp4Xժ9:M4O~Y]iLiR#AϺYS,e?\f7oA2lZe2s=%_j+Ԩ7q)%G9EDk,:hBQ]@Y4#elR`oexX;~opvegOe-m\j*j6I/(~p߶٭^/Qo&jHW 1*06I"8e3 3Q&ʻ+fsTB/ #yKV7&e܊3 #NPb;#_7q rUg,ݮͼvmE&~-D8w㐵Yjlq~)ܧEC4;F_: 2{M*0iH;N"ESB˝#\gfY<2̩5{4O M|(/xۗԥaÅ` meG e 9i"uCp}C&̷$o ˎEz{VyM˶-x:_ 0|6HM $yza/2Oo64Ky^4c-X=yn3p!`rG"00B||")qAǻ5%2/oXK4sᴻBR*\&$Xvϵfc'DžJ񇜛-)Bچ8*?S3]6LFU:=ލjS9[Z]H$l >LjMqԍ o+_,E t !WֳkN,zK>蓂h) Dr|wʜLxw %8x,W%Alqg ݡn5b|ҷ}[-fEgU*^] Zf" =e2( _ɽJ>#,ԲbFg 2wXb[I rh#: ߛ:A ^N݅rErT&֊1e6zE慗(.7rs,:2c@:uQ #6(@Rk?O>?Xdx+ (v3 8 9 p+ (wCRO Ȥ 6UI _yE P8E1s?ze$W=[}q f;|Lw\WLG 37`ki]i3OSH]㕛QV*fJOll:- >??0?*'qraDoE) A?q$qBd" S|c|z$9Lc '*~%skڧ)=h\X|  Djw@"Ugxg*[%ƖWyU$(),=4R 3Œ,4.Z@G#ozy VAM\^͡7. tX2}SF[ u_˂gB:KϹO=OwKhxt 2EgMUFz19b=dh!Mm"{@7+F換"^=-%6r+PCbM簐xɍ68_999̈\I9cYl" +rl y_A2#,x);*Z P|jݣwEGSoY /'{?/ feȃ=XX%~}6\;NE\;۲lϥWC 'Bl6d&Dy aꩀd 똝~}޿΢eX- x#_Qdo'9xМ/gQ5J- ie#y+*%ZW ^3=:_/}u#1؇7z۶(vD5[ s2GtJR?VKwtN-! cC"laϜ!{} 6!+Zet`9r:Ycq^FBApɝR4QG|D#I|I/ej߷DzK$F \D)3kZZ4(*ѩNdL&j=Y?]` " esi(Fy ω€ `OfU45N-na=s)w GJ -XꉓP@72,^(i[#f'*DžIFoZ'̰ 39hڼ^:Z"m"@5K@K^H3} Rtyb܇%$Svn~n`moh.h_I\uWɥC+7ۅ~L&Mbo}PP#MVʜP]aQczi _NP8 P,7Jj)r@zw6vc[v3BU&pW`O=mQVWdxa 'FyKv,:,3ar%mWP\-lme`BnW-S n[w/wUQm,EGQqȍ1c腸TnZĢ0+ +Cg`њnZ&TmJfDǪ)$ E;v/G'z!*sn׏|4 1x"|9/. ڻ%ߒHTOupk? MrEP"dTc0z3 i0aca"Ɔ+!}tAQ@a MD!^1ݰd #mo?2{춁6njl`GCf]n\WBiwr([0*r2!,1و3!ШU -RB3`dœmNb~CW7n4<`}G¥1ujf _rQ)\]$DlwNZ}ڨ7ɇ׮ 9i?C z~'۰2AFl闬if,Y'0zNq$mY2ߔi^ R_jTļ$eq/<'Ƌ)dxL.>2ǷDc l *XgYINZGNIs+ P+-0j 966v5/<͜Ƥ iA :dx|Ӗ_؈8uxYx/=| k:k=Wx#U.i''=σـJNojsE00\N+oHX G`g:3]%qFaʵM'?y?QDȹaE9Cs75)d 9>)iBhtkA#B;&,˖Gkg@( QwRҜHetR :HeEy/VtS̔3 "9(C!Gemh(YK MEupn/fC#l}y>{FX.O5#[r[#%kazHe/+|dc4vT_Xpd!fRCt|o$|gwGE}=h &&rW#>ɾ}̸Oi 9 5# "ʥ*MTj%e>]3KFU)QO&?^-j2>ǃ[컄g%ա0Ęey, 5>L)f1Z|ȧ d>xDZbі6-yr~ W8L@0KxQ+s ^xU/~6rSoep-jw> &PU z>U|ÿ(R \Q2BEkN\ UÕ6Ȧ/bͰp\En!E?X/SY.XQBE>h]z%3BT `F_Ѯ*#] 0 ~ydBseᕷ)9D$@nB0[RC9‰o*9^ \ItLj5)B8kaQor )!22zeTVw_[\7j='2FI=ǭ+uM泄5ѯcp:fr#xE324AUt64DZyQ4 hF('ӫxrO%bOiO3=%:_*'dM<(0<{^M6K&!,]^0*$WYI mȊRmՎd^o0"UD8SZP.ʢ:/{fUMBRZMmMB[4w I#tiO>fNN=3=S.e޿XzĬ 7RΤǫh뭨=e2< ,  N FԤ |.Gi5 j\ovJ{W-ɠA5"n+g!pr+D2D^ŋ,fRp<:-wPr]<a0t@?2L>WzYԒ̝5%Qk} 5QFgC;jGTQ<<'t/T=&'WL$OSʮu6o ]zۀWKZUOI4Aa *ֳjvQWF@5/+~S -zOt5xafU̙neAgk#T|&/Y:+{M^x\PU"5gA׭Iz_q`@j̚+-qh ^J(~9:dQayIb#^MJ г$@/@D_'=4Aa"+z9^$Y}hY"<]s+K=N_؏1\I+ ps}.4k 0!C.Oyټ3!&uüH@|s܇;,~pǹ`~'w:?~@ߡ8r^?ũ$x|g# ɣ<]~>t~i>'-z#u3vN(k2iVT#gs tQ0ꨮ"&c 4a.kEKkliMq`l'-tE t}@W]DYI01eGde( {<p,>%=#C5YMfUY!@Z kk]-BYuÁ1%͏j ޘcfXC.gY8#7dCeߊyȇ-]4x4OofΤ" wWD^Ms/F(X!ʃmfOe"3`gxC"Bt 7'e3,V8%4'yƸ.Y=]2[,3Z9H9s>6)6GYsTn_CE_Z>ʄJ`QK_ѷm2j@`j}vK*5ߝE,ВTStAWJM gS(Ro@n,+vg+f:+Βxh:ʭ(=<`_ve~A:l0X\"{-/$SqtuYI5AChG;h| :W4$v4n4ƞ}> *F6c%{Oy4ߋtoeqZ;ΜT!oϻqh tN"$QK#a~^DI؋'븇 u2)&P;.>͵E+*>d ]@t7$FdWϰ6i7)-]e*$vߡWmApz<>raq=Y BC] Bx_ 0R13V~+ek,9<x3.?k+ʤ(D;J]Zi;wUګ@ᓪ S՘DМV,MR(H`!};KBS8-ԋݿB/Tŵƌ<xh@tH~ j\`u szLƺ0X0աWGX_x23QʾLr2L gTV~ӹ+PwG<=Ko1<:5*yJJ҅jP+  &0,F}5Qie 1,AM_&4. Ϙ R͖ߟB7<goS Q:<V=Pb"]:2VB9D@.[IuQgZhrA'n[zx+)f0{uE׾Kp[Y4( .gφgg? JvQ^<pDpoт8kClW= \6FXEKaiV81a z.^B!LH7noē_t)EKZQH]4?ٓ%Bvr gi?*ղF+91$Il[y?:O_s`|q9n@a/o˰Ds`V^;UHU@J˭O⫁Hr41~g4|*Zd)ldNgM0$(tɧO?#ghV[#}(j-Gy]iRts+i1ugH5zkoPUv-ޮ'gμCo.xMYGJ扷C~Lt>PQ%"qg?‘olE#܌oiVI[#9u8_\-j mٕRRhBJt.U,z1wH>ߑgnV2l0*?H$gJXTh>CzRs&NdkU7bH:T0YNLQD8@ݽ-b&g'N;_?],ҞI/) h0,ZI7\U1ey\PyQ_ێFRg:,l|`d! kzDG4蜻Ͻ` *Scr!CՐTA<ɨ*ު U>H BO91}`EuE7&+ዸџsL%l|r䤄ŚEOa,Wb<{s]9p p.](e%7^*O)'⿙aw³Gв /fi:mv0몙"VU[;a(hDX[]˖b&~c%ran[׾%H T4Gj7WBMC!|E{.l;xDk, YwʒgŲ E;Wύϭ6k C74jZ<轚ЧOՌ{fn=voY*j]͝hzvv*+blemyI:gJ7L" x^өY`81 /r/>`7aFP< ;7i$"(9˞. fsE x^ 9>GTwdxE~3HC!aDBOy7{RX/{1b#. zbA'}L#&i Hph|lz9Of|ۣVZ0 Z(uq}"W"lNB%¾!PlkKdD nT7XH,r i';)2˲uЀC?WNNP'$s(E_~ѵlSG%@aC!Ž :+*h㶫}eպMӶl@]F&)z((R5 ڭKtަcM6[B_Z}u6[jwJerm% Uk@I _\@gMX \У䉣Yۻ@B; ?$~{-HqteRf_HEPV]͂^{`y9@ð?66.VB=Oi#O1eQg}e8IZvzv^Ne~DY2uf3tRic4 QJ.Qx.-!M!rG^cX: 7M`p19a, @e0ApPߦ;pf4a$F]Z?ǝRAd[`o:W4;M ,Fh1Q3X!)N4s o Ve-r1Euod+9]Wu8{L]mbcqA =|$N:PjeDuxU582I905 VJlJd)(AiKj|8gR&!J:=Ml5Y/rSOo7tfsw Mpvp֓)Z}1ǎ`f7N/plYZ}1/tԋU֎7fs%OrʕvTFnefHXL2(c}^mT(sJi7G x>wGN)0.ZD~rSM?<_zUƍiOLJO' [HEnpf b$IM "Fs0CV!U1-Ω{'di_U@bqBT$ wCXDh۫ x&yfsz1{ Oi1!NX_fKvY'9 ^4q402քQ.wU8F7)iQiB婁Sá jrAA c >j#tֺ,+;]CО;ν߉:d5 1M[!d ]&]< eu 7^ǃs?zp~7xygNйp('D*obN3Nk:PBKҬv5pcÎHDžkش4$q G<H9['6޸9`x78B8EKH=s o i9:y|<:|px$.@)hw>fDҊ"d~m% CAE0b<ǚ*t9(Rȵm]slĆJp߄+WQ|v9"|X,/gpFi0/72(=dk?fή ~ӏs(kkdu\ NΎVF9)5<:!|/إ$1<4bVS|tntNHGYp#͞xLވQF!LhRq"9OCLBWoP Z2!eB̄_ meA0-xA-25N! $'?`ڡ{ "lV,leI6hmL)ٲ(޵(%-%zGҧB^=q֦q>ßNѷk(ϧPVkMFoO'?C_/:=ƭFk[}p÷wG~E~cТ_)Гj}88?. LzO"YINOJpz̽I" s?;Kc"UBb{WHphGM' B[,fmYHc,j E: /$4_HD/2!߅&bݥ*\%B-^|D[|O-DZ?0i>|4XUɰc%9ؑWߠtwPt۲7M lzuqrv{WWvgG)Wj$юHl^ZV#YZxi$^缡SSݠ:MM!uJp!J!N5 +{6Blp(3 #<Jy^Z IP홁4MbK^%K&@j}D(B74ɫ-]xv;ۛw[;[Awcskk|"Gdn;滝NgYlnzzGώ!;%wݝwNw~ֶؖ/rZgi(iRBA3ֿ@u%|:ștllmw7v Oa!_mÆluֽfM=yO^uWػ]m';OYYokw׻۝uHP{l7`ֻȭzgsnoV>^܆]w-ހІ;흍Vg zNRLY[x׶d2b߶eMV +MRnonmllt[m{gJNՐqFي!MϜyZ*C,R $?yAzY2}6+F*4Q&{p>kׯ>)Jyp0D{h5hYGzJ*U\: _|K˅?sP"Z9[ wH 2uh1ܧf ษpX4Mcb Qf$p;BKx23tʋ̈́LwKko 麟yKKa0 wɸeN!ɲ=,[RA )CA'Y~R,H0/_9W߽CNz,{55lz_t^npޘ M۾ώϧ?}p~t/,9Jhq'{x >X9C,[^?H~Ghq^~4K y)&4D0E팽&Z>@:exT5=O@9lKF QDQ OQၦҀ/ J*n@Zjܣ,9HSQ]*^'1Zs{صo(;Pw@.(}<0v@偾J?=Pzzv@{*λw띝VF6;_iЉ!Ffon0O( Hzx5z fpr$188qu±:ΦJlE[ 9hw;E_Nd}QO-P`<8tUoJ!f1sj;diIZ-)9 8>E{nhm46oht$gT :ݝn 5+7 9Odx X) g@ҠM)-:i.ݸ-4j& 9h66x4SxfY):TZO_ %?d+j.z]kZE7+E4]R\PJ@e({]SưeK(>WsU/ّx+ vA}/܋dӞQ`)~% y;BjX_g~ fIB njC˥tm^_ ;=+qpr P* ɜܑwU!n_|m?w;x_{pBr?mUĶvڿ'Kn3*K_x}Hw|va`?Hz>E/s/֋WgIҺX/EЗm\By!WHEk#@~$Mԓg6px:3|&*'- BBB SZ!=I~PAmtm64 Mƒ>BGӨP?|oV ">£9CsOt ?Ŝ{Gx}$ (؅څ܅߆((=XzXZBGz0B6 h6Th)*, B#nm hBZXlHU$AW*=WIrjb-v=%EoAZ0EL[2RY"g=O5MvƿVT`HBX$A,$)>UiS/z lAZt_M]h.`zS}"{K2liCu :R/r-,_Lz 3I_F20'+\`tK0 V"/tAE cC\A­)SH[ăjN ]v. Y]]Uo6W 5')5G?X( <2Gy^,R,*Pka \,ð!>N ZL%Y !Ȏfl66 2 i>7RNՆ5=>p#)PCSIzd>ìR>ZW JBk*o[!RU`>:%]a,pjtڤƍ7Tr\7lQטxYd]k\5$15нIY5^dw\e^qd4-~fu۫抪K d}?TP-ijJLzDNܷ9:x\GZW2WbǕBaFD2{vߎ/$=ж5M8pReC'[+?}A }16ʳFq!wixev eJzߘ81r-'@vCjK' ^Ε@7%vTZ~Zt_E ǥZ׳[/Ƚ~kr%o C/JжWG!tPwa* pqY;`g;lހVa#3ц A-ۣwd1NǣT`~#9i.8UH@[lugWN__ڽk!wpv)2<în(%0m :f gAk|OnBfc*7^Q fbj-t@#yL~u ۚ_x҅?{SqUG:%9>؟/h' i},.&8[^{.PaDt5 U$B` 3Q٤Q4U"G*D9E &˒xO+m1``[!Dc!csvKHACS%ڱUWՎw!IQ. l P n|ʁ{)S c

ǻH<ܼ+=] j>=e`'8"x:hTyju% =’=)dI1 =SĻ_86:$=7=ּt>QR0y߽=<=\={<< =tϼ<_:~=VZiAה<S>fQޭ= e=k8A<<1Y= ߼FqD0A0nQ<}º;N<5Rvm4$+ 'H&ΕS>r;{v=Ў-ѵ=h=H7 =B=p&=t4F P=h@=,$=#$;}a<:c[ Gz<@Ҽ lNZؽS}7b,<]=m$=t =wI3*>i =*==n>[;,s=_Rw=x5LQ d= ==ir >Xr;|j[o;>սn.=S<;=F5<Vd=/Vnc<F<]c򜗽k C<Ͻޚ = -sRдqg]<溩=H(t;E=cQ<$5b]=᤽=3IXD+#%G==5Un=dB@u=DW=cP<4f=6lT>Y#=s|;+Ʈ{F=8Fm:ɘ=?5<ׄ=V?o< ˟n)ν 3=M6=zy=}݃=j<=Y1za}@<<(M^=xX?<*67=d=X<aUw=4W=AE=jCOZZ< [Qh>D=Ա=U*]oͱ=;=J%"=ҌƼ-À=fYک== [='=t:G==:ӖI=u=i=-==wS=Z U>3<Ə>=-Rλ#=R `ה_=: _">;TۼGBA)i<<.> :=uYj*ס=%f;_<ʇ:=+G=y;=_爽DU=h=<=GV\=黍<3~v=ԀE5r=t= v<.w!O=MxR4uU<%G7e'= <ֻ')== <6Vg<-"c;=S;EJʦ;=qV=⏽V;1D ![6<&˳< =yS# e;I!W=(7E= =M汻<[m<;U=BCQ;==<;IF9=(μ;FѼΙ-}jw<'}=v5=x>/=wR/>w4R=PVaS<ԅ=i$m=1Nsz>%#μ_}= Zn=YcCle=HaE>΍=O4=. |a==nc=-=t=@,л:Rˤ>p%;{=q8uB7=0=T4=b+ >de>[`=>ڼw=-= h{s=:=d[<>bU=?9kb<޻A'>³'dXR=}=zpܼsC=9ӧnEv<;=Ti2=Iq9g</k==&>#-S=ė=m= >R>_{>Ҽ̨<=Y :=Z/0[=`2P={>'.Қ= ›==NAF;==ʃ"\>==1=KԶ=Z" 遚=HCU/sf<#>g"==>"=]I>->= W$5tԖgs:abM-dE>o>F=/:ߦ=S<:5=%>dHB2=ׂ?>Q軁yDJ'>>$a$L>#܍=)/U޼7f,<;)/ X,=\V=6&=ľw=1=d(_$]%vĽg0FEBw=QD3=b)<|=<{7ة=?=:/_=_h]"Q><><>I= !>$dHaoe<%=!bx1ɸN;-tF=7 q/c=e*<ОvO:h >=Jվњ=Wo <=ڔu4J!>9&r绻D{= 侷8z=.~=z WԼ*< JD>ȽW>$=Nμ>C<%=>d<=_Egj3_>UۼY=-P|E(<6L @1V>Q>}N9a`d=Lk.~=O@̽½#<\>*!("drÓ<&>[ f^+X^ױqݼ$>2c?}_6` >uMBW=Uk=EFʼip!J޽ް,R<.=t- <9<q=Q;}r=$D='&R=L-=V>@Cy=Co,MeZ=7;Y^&>I<zAýMK$I=v==D[=1~<57=| C/u?{rl<:b l= =-y=)O=q:|*ҽ3hc<}>B? >Om:g=S$;=ǂ=W=^=z?o=e{>?D0|ɽm;Qʍ@#>>⠡?=aw>!>Ľq=4ν耘tk8=j !s+L%=@ =N1(> j=i =$s>^=tFb<[46>v12O1Wߑ=ٔG=Q]=<-=T==4/.0V]<=n7=[uB=ѕM===$Ye; k=";b-bp==>5ʔ=y>h|(g> Ty/>yU=O<\==:>=䣎?A=:u;)&8n>,+_<ć>ae'm={Ž_>Yo;M~=3W?D=Mf?oii5=x=?=C#i!c=z=Ι= _T=v;;Ge;߀=OE?lĕ]21}_pVO>n=H$e=T"=M$dZ)<"u=dq{Sc=jt܏e5NÏƼ=Z<ϳ:-⼤=я;#ﻰB׼ >i.<_3=q{b=.gEa===ԃ㼨F<kˬ =Z:x0=3y>Xګ=3_=yݼf^ 컿[N=]S:=C =!=ng=`l;===>=Zi\&=<wSP<7 ["<}=<=5@+=^<\3K=M<]nȼ;K2VX===z8=LP==N=$=L<)<0"1 ۍ T=*m=2'#9̈0=f]6=f=Eڼ==k^{t=U=6P*<7F=߫@[=3< e8={<.vq=`C!=c}=]1FyP`t =?<48p=ؚ=88>w#6(Rۻ`E=z2>.l=W!@=K=#E< < P3;b=7= +m9sO;a;FsX>X柼e>r="4#>=/Yhb1ռq/N4<>;B_@NuD{=-=>P <!0 =1l+zg aD:Ӽ=(KWzoLs] ><&1=ͼR>}p=:Ȩ=NC>J2>aQ Pc/ >G=P_= <*&NAà=ݡ>MNʌU=seCeD<3==$p=sn:$=CR><;< )L޽#=Y_'>/>θb= =#ڼT@m<=\<91TRᨾ(otԼ$>Ϣ.<;?> w-^ u&=&=i.>}\Nq'=dS =N'>]<-Y/H =.rӍ;Y<>=@=Asuha=ӄ>.<= j<̼|u[L=%=0=<>H G=/GD';a^4>f=Q'=z=,ΕNgB >~==$= ~w;`=ؿ`*) ky=<=ѫ=|l|_M F`½I!!;1Z2Lb #~Ϧ6 =71u==o.E wn.O/= A=5ƽ9:ۋ*ߊ==i6c="<ռ_l=%n=ŽQ=,T<:zH<8E N=ycwNB$ug<;M=]CGY,\ꆨGP)՘=݊J<}/'<슽XlU=|̔<PQ=8=;=ÍﳽZv====2s=3r%H=f=<~a=M rPV=BtXc;5j=[==/^=x<ʙG.= "ռhnռJ6ij= >8< =J==V<$9y<^U<\<=b`=夨`H=ϵ +F=A='.<=`yQ=7`M==NлcQ=شTXL=D=3t;pr=t=^ //=C='dY=P=$wYYײ:=4q&O= =w<6<r[g=Tr~쳼ږB)===K=aTB yj;.U2Đ<=;GX8S`~= ;u<=٪<@yI:,y"uQ<=>qA2/ :=:$od<¼:c=[; V=<r"ýY 5A =D<۽žC"1C==>׼S삽H5-l4V=߿潆 +=Vo<""+<h(-,x<*F =['ag/j=?*̀p蛽#D|oy4=iY1; !]&C9<\=z=Y-=VI=T=;?ŽH=BTv'e'=YKh=T3)Ogg4>HG=;dk>t>'υ=<>7J>b>zH=u7* $2k;=sb:ui"> v=02=o8=//>c-j*>!c^>F`3=Rr==0\.I>A=2b86Zld"f>4=odc>iV,=̿x=kCBN>`;O%tQ<>B;'(w>~ť+L=>Q-G漜v>fy>EƋ<8=CU>˽5̼v$=K#׼94Ee>P>+>t|@T˽}F!ĿO;n=&Wt><>>1瑽))1>, z۽:t}!#!>jU[ʩ<[L> JT5Oϡ>%н=MQ=ɼո=D x=jx\jT <7>xG_>P=&S~>Þܼ̼=>=2|>isԼY[bR1+; Ha=WZ!D/&>,|>3lE?=K>; kV=G/?ѳ|I>V=Y\<*8Q>K >PDo=X5.=y~ =A&=/5=v4<<٩{>:Tֶ1=8=<'<ۺx0;流>̮8'p=tr=۰=pH5ҼQ#=={E=[=kp=ᄽ==4f#Rȩs=Ť3=^xI⼓ {==<=m\$l'U~==}Ɂ]B=<&ʬ=="|iμ\=;1ݻ=m.: @D;:=.E=z=׬ڹ@.J=oԼh5b<-ˈ= %=qIm W<<=􄽺^bY==^s;=Y( >ҝ- =~]>r1>мG O>>(в;>!X=C".= =Yn1=,=S= ܔt=#7k<ơ<=*MN==FI=M >*; U<~=nC=w8=q)=-Yټu N6&)>¤&>I>&Q>ka=HͦՈm>f3=Ba;F͇!>G=Ś<ܳ=w8;jغ=Ir>ML==<‚='Wj=[=XiykuQNżv,*=V]c/"+]c㽷=U=τ>3w '=e"==Sq$;mཔU*(:y{=Sv-=H=Gc6(9=K=5F=Ցv=գ>so==һ+>7R$>:oXPlv=G/H4< >ata^=}9.11>p @=Z]= Ǖ=xaZ=fv7">HZ= >q.~=Ħ=x=n[T=2(r<=4=S>>=׹=N=ܼi%=3 > f=%<=Tͯ==x==,>`Ri߼0=bS=Q ];HC:=n>; _=J<>62>=Ѽ׿=:R]BrQ;Ic]=j;|0>du8{<0<"==ui==eG=I+Ə== >+웽3hl:Hb= <LD8N;h=xf=,GcuP9Q=wI0=<<> =6`= +=hRս6?8No=g-XTB<;}<b|=n9<ݽI;sM]=2IW=QG<{̼z=tP?8νT!D=F;U׼YTKF?==Ծ;(:=n<oRx=aѹGH 6=w=]V=<`=A< >=8;I'3>PPjȋ<Bў=K.==`FaX[偂< =Q01.=!-<= =e`9>=9Z7<:p<` =[=UaPȞ5qa=2(ҟwT]=I=A =BK=7 =>NwMk;ª1=YWEbך=zm!e}:vED`<0ۈ<#J;f#=º=pg?㣽G||&/=D}p!I=C:>FQ>YBrke=G'<'M8S=P yuP="u\LT=dQ;*';M=DT==\=$<r==s =<=͐Y5 =r!=/LMAb=}=̹=u=Ǟ= <*ʰ IA=H=r8=Չ=/D=M#;7M|Șd4=wnRwm'=k=;3];Ij=O`/3=񼔽2=,`>=_SɻgkoK4><< smgDBJ<)<9*=t<2ѽ4z=+] enl;e>cH7&=JTq;ip<<m<融 G2Utӯ9=Ad=۴=9⽿Ao>:A*<=̲==f={92 T^ݒ\w:nJ2=Jbde <-1^L=o|=V;Խ»Mf D<6=1c%NJϤً(<0xoR=m<_kH<Ѽ1佈G<.=Y >E:&[Bդ,٠=G;;«rq=H<9.%=R]q=W=+6;x"Iw T=4V]=j!=hմ=K;sּҰt=BPIxO<w۽_D=wOP?r =R=gr@>r;NNUodȌϼr=q{=p3kDd=M/d=z+ļz<]a=Tk=? ;'rɽō=Vi 0=pxd=J{¾ͳ̻δ(=&\ȽMe,]GF<=s=aK]=_c1ne=@ܽRZ;n"^䝽̟#=\;P]>ǢP=۽NV^Γ=&O]r^WiZcu;*==Y<=e =E<̽<5 =.0+<ˬ=XϷFolT=F{_=F!=Eϼ̼;C;w=i@(=٫ʊQF1<Ҩ=tPཉ)= !xp=ec|P=^a.>P:$=cB>ݩyͼ:G=sr?.΃˻g=Z<,"=dh=s a3NN= $T*޽п5{=>7,E U=e5üpHG묽=埅 .Mͼʽ <̕=ҍ?<ͻIŽw޾s=VC>3O=#;7ZG'оlC?$r=V幘 3[5=D>J=ٽTd{`8 ޼Z={2˽J#>/e㽵"j=jMFƽo趽6#Dн<>+E<'<:-J<ҷ<%d.=l?F/=Ȅ[=3CNo[^ ,=iȽ/;=cx\м_ GFq<M=/Ҋ=ļs?gȼZ:欻ߚ.ߟ(JEل6=&>H2(H=PH~B<[=L뽝g<=-܆6==̉=T'=`==&#XƼbjn& ܏;%gq¼ c>bg=W1= XM:'=g<-E=u(=<%iU =biq IfK>Z!Qj/L44<rv$~x9غL'=>:=>r>(J**1<5!1ҬcG]:Q=h=.%7ݼz\@=2+bQ4K=P`ިH=:cޫZ=-=HĽ[U>==7CݝY=4=;=o='ջ2V>c ;,? 6p߃ƾc=(c=ݺi>~;'Q-纼;1Rn[=٢y k.&<̳9=aAE;coh Uʾ\V<@=5z==x =+Pz/j䯳B2C=JD~ =1/cFx=Y>Qv3ힼ ~<l=ɖw^ >Zm2%<~=E<)*:⯾Q >/=:;>Tb=ʐ=FW[@棽6#=vl=rO&&e>TEE=k9mD6oYK~ .6=4\.w,qB_>? #s-?ȭgwa<ܣL%6ZS<)p>IF0A ]CW6=P=Yt=|rF=cD<[w?tZ=.=kG=5L>_@úE@> V<ⅿȬ޼X="}=I=TmB>q=e=ýSD=܀; !.>(=Kʎ>AOH=AS>3hĄEa=Ŷς"=J0uپ1=~=d>ֽ*n=kb<֚L#;ti0T~>Uڽme>p=}=k83]O;VU=$X=QƂ;J°=j<݂= }|==r<[=>R>À=9!>w=[K1a=H&|?6=~qü8=0<s<=>b=:[]z!=;P=!.^fļ^_f<"< <^9=GﱡkSn: 5S=?l|02O=S4<W; p=HY=A>:t=)&<]dh6.u0=: tc/Me煽f#f=hl=;RuDP < Ǭ@~B`]e=T);ݐv~\ =+ =罆ʅ<7b:k<ۼ(l;e("=<.h5U_Gqa@Q"=6=($of==]@K\f7Ž2Ya=ŝԡJ΍4=Ҳ=_!=S=Xi=Yp=;NG=ճi='ܐ=am;r=<̻P=;'@=%=vR=\Ƚ‰m0!= NҡR )=d}=xl=n=c+j:<Ǔ˽vk= nf3L=O=[y*j=<ᔑ=x5=9%="Xm=U#=:S=6˼'T=ռ>=<ܽye= =U=k& ?'EC"9:eBƼ@1=eżJO`l=b=m=1;oʽ=`k<ּ<8<[MϽJ;7=݈= Ǒ4=¶}=(=<;/ d =4D=HN[͑d l#Qe=vt"t=>2 =UsMn<>l=2=,!ܨd_R==CA=&=Ԛ=~0=nwfL E=ާ)C2r^71D֢=Aqܺ#ɂ=8#<%M= =VI=7~!/Ľvf=ˉ_<{<=FF2MU4)>=2P=ti=oӼ`1|=xO. ewV=W{<#LB@-n\HkTJQ/=s6M=;Zs<iv <3ؼ- =Q=:<6a=>=Jߴ=`h#={d=Oy;=y}}=>װrֈ<ښְ=t<4so=maU=\;=Ȅ}/_=LTPM=R<s==9B= e03S䤼>>⻟chHcG*f<1MX>= Kg=4<*X=d>==[ļuF7>3e=K={=,m:wػ>Y =<3=|l==v&<}<=7B=X{yQx=T=kr=~<!=iA¼LM<;3gDdOݽ%T 7=$`p=DůJaoMN@|_\G='=ҥüq?S1=&@>dr=0Bs:{x<p;=F"=v?߼~I 7=< ]D=Ի=8{< I]lrf=}n=z)=ᆱ=3\=gG)C9(oK=c* m٘w?=f=e,<]cʋZ!==t;=+\7/`=cɽ[x۽' (-k=N>=(=f]T҇Ǜ=wx=^K<6Hz~YB>;r=$/Y's¼Kؐq<˻7=:ZżW=<Ñ<Э=F=X4M:=3ZɊPz=`Z 4A>'X.=3=O$1_վ1td,=:8A@$1XQr?Ad_>?ƼK,)F=9epd$>O=6(7\x>f6;{}=j,95,‹ţ0مbFUm):|ҹ<4 v[_j{=?if<%jPT=I;}GL<:Dϗ8w;@6z1=X='<-7ѭ2] ۼX˒ɽ> ~;=]v*6>{=qM>۝J= =廌Ͻb= ̜>=hV=񼢌s$E=X`.%=krKv >C1Jȧ=IȼSu=nfV=;Zpր7-=c=o݇=ӼN_jN=\B^+;vT;Of@˽==-=ХC;{ټ`}=.)4==u;a>Bme=sgv*Q=A'/ؼݼ.׼ס=qC<;<#̽buV&<r -=~=== z<=C .t=L >Pg= }>=+=k<Ä"9`^=e fռ5ʟO}@=Q|t+AZ-kP<[!=n7)=D5=z=|:u=<si=Py,軥{ɽj܋==ѿ]R3LP=?,=H)%C#|9 _=N=ȴ=<*=U2Pcͻ=qƽ7ZQ5=k=lV i\ꓻxEj=M_=hT<Mw q=umY=$m<~'3ŽBF=܈F=vP6)0;fQ=Wp0J+ ;ok=r`ؼt\5 =zEL1d=O%=Dv{mB#<&=2Խ-,h<;C@? 1=ٗ<=j|a}}=Q$$OJ$,H<ۭ4=Z˽<<=V";V'e{e$5n=𻝠=+Q"N=l]=&M w=z=8zr<꼛}(;%<+.Y,_hnw9xk#4ؽ+]>Ց\!=RqN!kڽeӐX?=]Nj(퓻ܯ<_ý؜n =X=-:;2h<urg"=wQ@^|},zo' >A<ER|#=Tx= ƞ<;p^><^(_> =OS/3=eȾ}=w 9<͇1!=) =j<=0+Lջ|"=ʽqC Ik:HS衼bب;I0=ai<Z=Y3<6<3=!.7=4 >?Q=]۽x%,+=J=$O;#<]<c=v-<0;_%WƑ=5=,b=Ơ<8;8G<=nCLi=@ˢ=$cH=~;H=D;UX;z7I=@ٛ=[]Ƽ*&5x ?=I=0;=й:<ϦҌc=:=%&=&ּb=A =:%=M=x(=bN;i'=/T=5ǽV,=jռ6(D!gcI <>=Lނ j`^ T=QH&4= ;,м-<@3Еý9q:Dֺ|$= <$-<= dG=d/<Мv=ט=8-/ls(mnO'=VUYP;9Ѽ*()<j<>`d D=?>=:=Ɨ]Ca<=f===E=ȑS n0\=)*C(=fdb (< =+kw=)P(͒±)=v=F=s 6,=,wgBTD<}7T;,=jJzg=߂P<,f;?=q hN<r%ڨ)=]&C(=i=F&k\)=H=6޼ (=UXr=^-;,Ȅ=ļƕ<K歠=Z yCs~=IgOG޺b8}<ؼzQ? >s ϔ#мmӼ:YϽ&⾛-=O=rsǪ=GR<<=]#==5b=֕5~$ѻQt=N?=F=_==ͨ=٣ y=l=ಽ <(_clƨ=)=< &=7=cz=G=`z==t=@x1J\R!>I;d1)=75ʼ}ȌA=NO)ཌQ!)ؽaz>Yl56_̥̽=q/ 8=i=HVO4'ǽޛ<3=jqNBջG=.<>ZS=Ǥ=u4=օRnu=KWZ:?=p >~e屽7нSܯc=gl<2<$l⹗@;k1<s= olY5oT+=<,=[sŶ:|== gY|t=ڽ$b8G=Rcrq ;ֱ=~Y-ɷ\b=mb -=S]K= |ȼ\ =5=Rt=j(!aV =[]= d7j%V$a=U:VQ_¼W >0F?<̐;V=aq=Txho;%&=<H=oe=1+(# ";<+=jT<==mv=U̍P:f[='.W2T:BIvQ;[NC=cν<52=g=|=ͻ p(;睽x-=ZgA52=wNbB= :?X+P<$@|oziS=`<9?d<<5:<8mcj=9C*=%Ҽl:s٠S=׽W@ДL=5< $:g<]=ɭ44= D<]z'*<=S=S"D76{^^?= Fl꽔B= Ƚ#JH <]=Ԧ36;1-=F=Q$ =[]e=,%`2=v3V<1һna0>=L=>? G!>D=0y]k= E===!=H|=O]=';+3=pւy?8 6z<(F=7<;#=3=?Ź<D;Ձy]맺<=b=<4瓽n0=>g=9Puhܼ==)W=tw(+8;><,>^>F9˽<0`,d̼m(=O<ҫ$=𫚽y I=Ľ-=r=ne "p;sXu==酰'=X#==<= 5=E<=]Ƚ4^6l=ښ=_LH"`;)S$N=ʁB=@;7=dKڔd=łZ0g<1/R =WdQT=q~=|j=eVK磽 Η"=h;[@=F6ht=༧ͫy<9=l<S;#> Bج͇HnH'L^bvi?Ӽ+?8x7=BG< PAjDpL,B=눺)=7\A<=y+5~=u6볽ކA8,;M⺊Z<<:T=Xp==Al=/'=sKq<=o=RtA"ZPVy+x?^=*PJ=i=L=c=Av=v%c =gC=J)= <ѧ+ްsoѽ>=M5<6=bztSpP>t,K$NA>0ĉ8>g\>N[=m<[=fu>iSq> GɽOh낽>_P`a;*=YDxe5=ng &=zu; >]Iͽ$<夌Y=HE⃱>,Y=&=J=nN =x4ƾvcΕk=~eR->K=hGEz}X_Y9>Eo<{K>rнj9t><%l>^>L =Sm>d޷>MM  Ӿ*4O=Ш=&<8c#9<(SH=d=U q >dɹ;z^gɏ=(҅n"X[{$2=!vѾ= es='=U9wM;=E_|<#;V;|(>=f==o_w='= mG-W&-qf=.?X=js= q=.<&C@KZۂgk Pn=_'=2%=xa=p=޽TAfc3=1=`Iz=0V=X>E<;;<|w;R[=ch =D$=4|!Ub={O[=NÌo=)=<;d=k~=y,<"={I-%<=v=񙼈==9rݓ=9+p<0z=Jr=&<0rh=_=(<8)=s0<猽.78]$=Pݻb%%~/L=)@[rJ7|N,V<ۨ׼yHU=k=.V?˽PN==zEʢ=f=m=PƼ){%\=w.=n N=ɥ%.'"b=W==|`Uvo'=yw=ʪȺ=ZI=qü =[FGֿ;m¼d< Ǽ͉)&q<0=#^@A=yr`Xh>=y ={=<=5=K7<ѽ;*˾y=ͱb=؂L-w =ü_ּ64=ͼ,OϽ+нvYQs=܀?U=4=A1dKr$U홽Z=vױ=}/Z:~=F=)T=;%=kZ<'=;,G<)s¼io!H <~`PTR=oL==& =i==ovs=Ai <%t =TNh=mԼĎ!μ̒x>=#"νO=Hʓ< *=d|<=(j=C+9=y}8G@ZH/6<1fpit=f >;X<=Wf悽fvw=n߮O!2O.p<a<=ݮ >HU;<ڗh<=#;e73T%]ZQ>c?!T=%~#J5i J=<.=Bi۽XM >sԽZѲ>M<_r<,*Q<=D6c;@>|Y8<ı#[ݝ=ΐN=ս2<.6 m>!<=F2=`A@U==yd=`==ZB\*o;[<Qt~)߿?<ռ¨M>=2x#=L<@$؝,"{q=0k=^R=o9Y{P?7 }!<"<̞=*ֽ4==g0(>VV;=t+L>o=f|÷[>a|9>#ռd){=>e5x]=TD=e8<;H8K3wd: 0A>6< =@ >߆=N <=>Md:=sO_**&ؐ=bs==հV@V=𸿵T7V^\C"q=r=Nk?>Õ==]LIͼJ= St̲=A<ݕ%@V=ު= -b-뼯wrE=U>0VC=k +Y-<j*>Œ<.1x̺%[FӺ=ǻX=n=jH'W>!_R¼n:P=i>j<=K"=UGf- N]ᐽ62:b(=戺r4Ȼ$]ߏ5pȊfr=u= <˻6=9m=6= 鼌 =ku5=`;<=x=Fǻ8t=>݄q"==V6_=0+= >}S=;<#NED=`{Q=|ټab*+2er,ռr=0=k< >9N<$=`󻙈ݽO+GV=}pOtpeO?<-c#; t³S(Ou==t Љ/19:k=';99&;t=|H=@߱vM޽+[=Zb< Xv=$MSէ=$1C/Կq=|8=<8mϽF = s/a,>J| =m/= /*>=Y=ƕ= jl{== CڧaM ݲ==\= ]죽p>q=>N.t7{(oYk=j00&7$h|%>i[=@W>m7=YU=5C=_=>5<;SֵEq$ x=Ͱ<=E=rL"=e= o=@r= 1??ܼg;=K"ݺh=ϠN Ge!=];?>#7<`ǼsJ+ýfoh`k20b?p|> =޼f'AF.>:N ,;[w^$"=dm =s =KW=,|=zgf#=<=d@<+'x=<8?R,SaY5=I8|L< ci-KR=8=2H;i=Q<+=Ul=a3=J=O\+k=9:ߌ;X5={==͞ 0Ī:3pg<=6=]=/μl p<Q>?=R> ;8=`=DἽLS<~A <O>×5`#K>;2=پ >v*=b=(*ꭽ h:̐hwgq`='w<%gteAu=\m?O=wW@O>p=IG=Hľ]܊; d=:oї=߼M X=3;C<2.=pk>jUsý@^}y޻\3ϼz➼jtk< y=˙=tӃ8" 疽k7=k=!%p;=h=0!(CB0~ 'OS%b>=WϟHW=d'=(=PPZ=P&=z. ;,D===o̽wq >ǜ֔hƾ&Ae:RSzdgPf̠X^ⲿ!J(>}OR=~|`2>灬=0z0?౾";$<{-ť==Cǹ=|J=A|n~G4н(>n,s(3<pc=}L=VF<<>2=|^4s=W=eWk K=!=a\=:g>M>a>ሱ= =sFWe>=,<vy=y=r˳=I27I6_s=<=:A=g=R;r<̎8=G˽=EW=ß(Z 4>qݼ_c>S=||Y䄾 >ǟ->x|{ƽ>̽=hV>=ƒ, ==!s>Xӽ=e}!sv}vT]B<4" <=vn>~>I<"<.;=;>b+y=E> X='펼np= =[꨾=<2ݻzE|ӓ9<_=9>m^wN=9q=mt=q=뙽8}<}uɼްzC=Ӿd<<=ţy#D>p=K<}uJm0 =+7+o= u;;ؼ7=|#ʐ<퇿hd %I-=͇CSߏl/01=K=y=ԛ==>H"=1$1=^*^< lh=2<=ކDJ>E)=B$9?=/>/m=9.;r~G=Bj=ܚr)>㭘8&=]="G[E֥{뼧E\=N*=`M=ʂ=h=b揼=Fŷ=SQ=ډ=pj=s;/^=2=is<%㱼d< Dmc}DIuz3;C=` xtJyq1;R=rX<nd=8~X~=zUQ7] ;ȦP=ް3J̔P /=΢rӽ<=V=-=% 'x<=nl"l>1#ݽh<[db@[=M)<=L=[[ =e=MƂ:B=Q=i=K(=l;^r= ;-$=39=$@YzO_}0#sUuo =u=7಼-.=ӢnyK C=E=2NP3JK=.ϼR=Q=H:/=(ũ=7g6[=ە==gG̼ _<׼f<u]J- Zjb`鍂=6=<<]0r-C'=ղ;="GAh;Wƽ'ԝ=ؕ0=W(=<=zX-=J3T=a9=bꌽޓ=i=B|epM==;E_<-2u=j _g]=lR:PQe-G=M=DNQ(Z>?=Z><ȿv=z=H,<<\ϔk$x5=1=@=w$#̦=:>oBF#>,+=;hj+=ݖ@= <ܔD}XG\=3=fK`:uH ѽkD]=x=4ە=pN=KL<*?oth=ŠWGj= w=uxh#nQĹL>cT?BVr=a< {?jkb=c=xWNњ=q=>L}=\n>mi鵽=eJ;l=_&=d>#W=4>̈=,2}<󮽍S ڭ0==P=-Yذ;:;>@Ĵ_$=w=3y¹ɾ+x/X=q=kP4$>4Ԍ=,Լ\"O;f{ U<'=G= >N=jN,V˽uc$>]=ˏLGC&>(-JX@==$(=}V=oy+;ɜȦ˼j$5kЃ|=rt78D<=ᠽ(3%=J;>=jm=h׀w=e;~ؽkq== ͛-ͼ>j[<)gl{: ;m:=6-8n<žvL=g'<cwM>=ܽ3Z=Bv0=}dk><~F{== ҿ7 (=鮼͒=iT\=߽=>uP>}2=`=1=mvp /=U?D |~|׼=h>Kg<.mS 3=㻯<(壼q[5<9l= bc>0p=?żk S==ڼM eX=nK7;)y=<=3E'Jr;nkJ>=hm=T&>1>N<,-B\Pr=Ɯt=OD=FHR[==ߏ=¼u<9W=i`u@p!>z߉<Nؼ\C{!<ۂ<~=ɋ^_<7P=Z>}d>>:L+=;2}ȯ/-;6=& !j'\= ן+\:о7]<Ώo=f">L1">5>m*;8&=Ў==GԽ$|5d=M40D>S=+qʼ,>*=!<4iN;0>BT\=n2۹mH>=.n=sc=h zv"j>PS&>z=o$D=uu=}gT = & ½$ѡ=#Y6>f8 ׫="=ΞN=NO>Q :&=na=ؚ=@;O=@e]h(-+u:!_o=<<`?$=P=JOνPH=";/IYj=L<=䊽>a= @F< *#~=Aۼ 2V=5T"9g_|=r;=8F<4(Kkykټ=r깗I}=zUfh==<l=7x^E=ǽzd h;<*t\=K=dYz jp=N=F=8=p=\Z:TZFCs ` [V==:=2=ζuو^4=C= ^8#=x}Tud9y༸neNνL<ۼ<༾&;A\<8?t=9m+=Uf?=1+~=j;(<ٛYW<xM~<џ<[;N9='}5=k'/,=T;sC=<*<ޓ;zf^C?={[ -ӊ=T=pذ={";IX[=>"<׋=;=bzu=i;j=%$_X3=zBn*_üs=˽|ü[Nر<1mU4=A =3<#P=]=`I==<翣Ȥ< A;ЦZ3:^s=We==7Hcx>iL;I==캽$鲽C2<;h<D]L> <==XC=l}E=4#'?v =  ><ҧ>x=̒(:z56{d彼ȏ`=l3;p䊽@ϾvӽA0$ʽ`z ]Tޞ(=7=֒=[= Rhd8<J<=xS) 4>kSļu,*nV2>Jud;׼Uer׽L=kk;ǫA=ɓo==6sݖ=r=ͺ/=Q;\(ɮS= <-j*5d@׽~w,><== z=l=a=Uؼoȼ&G)<|=S<ʼzWw68!f3Tg,< 8J1Yy;K==A =2k= '4W; Y`V&}h>&)=s=iߖ0׼6q͵55?ir=d=,?cc$B8M;=$9<4I;=<S=@n+4==Da|4J|x3<좱=ġ=xy=9脽㡪6XrY<ͩ'=Z4=亜$@<穼4üǺq:<@p=<<<=D= =Dymm< <;;R;O<}=^ṃ<a&==Q=@g==⯼==>N:$=W<==%Y^;=$;=jë=IIR=⣼;=Q5=C:=ai=;iռ=UL3^=t:m=}= -7=lC ;e=u[o =ʁ<m<_*=:nq@<(gBsʽ$<=XμջC=@=7Bw=I潠G<Ni=L/bN=raoIB=䷽3 =z=(,=?=H<=%Z;s7<]Z<1=XUzw:3=Eþ;;_N=eT<`?H=Y9=ɽok]M<ݐ>_мw==9s=r==xXͅK='e=jD= =؞~7=l=+Y ==$=V)=a<:=἗r=l<ǽÖ h=4q;)- ƞd󀼚z0h2ýQPdD'=-F=0ʽr=a +=et_ሽ};=)<5D*=G+USc1=" =#(<}}=ufC䲽"q<߼U;)[՟º}ͽeIrj}.ܽĽ^5=%;}=? rFs/-=y|c& ѽT3<7g(5エyང[Ha=v<>_=z5Fڶm=!(=6= <;;|ph0==#X'[}3[S ݦd=ZWz =lRvƽ S'޽U==7=`Qlӥ<% 8=x{|1Ǽ<=ݗ=ij~9ZK\&g<8K+=ť<$d;=<u6j=<=&<7\=Hq;Hťڪ5=ä=rK6=Ƽqd[q= d=AiG=w箄4Z<#=(p=q඄ '̐=q^= W=M=>w;Bٶ= =uTm===<=s;*K=8=f<&=qm=U<= B~=+ :6 սʼ=b>g5=AE;=c=*Mi<)=,X"y=mN=1 >hv=*Ș<Z==ƞ=vUh=՟;Kia=W=1<@=ֶ֚=.X=<:=xpn>RR==>D=%c<]j? =rH<<=`:JE?@>0wJF=7v2=e=1 g==`%>ޖ}ڕ=~{==f= ;s=hM~l3==/3=ȷ=M=[ =<J=1O'U=\n<2XTkv=knV=QN,p=:=pgP'<:~=~=.b {,<%cX|:=<=Z*=%p?=>=|; [7 閄=N0ҝ w='<׵=2=I=˽=hzȽM;X/z 2+eшH=+D=ɏh*=sN7=u=(==R:F!2mc>iY=-ɹ<ы1= ۽ȀW=ԑ:n"a=*>7K=єٓ`3So=IR /=2u !Pּ0وI\=C<2"ZP =“ߍpFz> R=*bo 9Ģ ڭ=?= ʝt='QQ<u2YҢ֋w@=>νz=c =<t1=B0<><6B(5+>k&(= 'skT4<|=֑=̽[nB@<'%=ô+-+k=ןg=8y4=4@n9a,& w= /w3K]==R+ݼM<仱;=VԻdS#=0:l#<ԼC<[5=*ul=< ^;'^!4 =ee?R/ӺQ6Ŏ<*=?\dt8=1<b=lx=C=O=9Žy=Ҝ:dɥ=vkd<A:|=ka=P=itwS<ɎR!*=1ȽhDt<=MZN=ټﴽ9牽\< u|Jy7=q K=u`QJX.̽OE@=奼 /=#<={<*=r=_:v2<6@Я+<<0=ބe=XX㺘v#=&~9^v)ke<G<<]ٽe<)=|,ټj<-C=9J<]0=nV;$2==7IPpE=P0פ9<:뮄=$抽뻫@= Ŀ<*7ܢ<%]=1=ye ?z~=Bg==C#Ź3Û+H=Rʽ Ra=/ >5r=kR=P?|9<=3u=K= ,~lDK1=J1,=S}=y-锽9ٲM=1RˤP;I1\=:<$( >;mY=[-~=7=˥=l;rxAM A/=}k=Ӡ>r]><2& 9=C'3xGMR=6Xc ;C=Qd`$;>b=M<`;Td=DJ1l}=:>rྲྀ=ٌ*~SB;HԺ|=)N<؃ j= 5=]v>̀=jVfmB`[;!C=i=Y=A &g*FJ=ݴ=y$ܛ<_<~p r=sܚ='#3V)Ά=Vr4S/=;Ue=U=)w=}9){=IHbo#<6,!\盖O**== v]=/.=j==3%W$=)_=`ok=0<~f=_<=섮]6=cX=/=# =P = =G6=w :揽߆=JaGǻf=V=\|[=M;ޜ5H=ݤ͏u=Ѓ=^=|≠ٯ|<=e,A4:=|[<+> <=wd=Ɖ<\Z̳9o=(v=p =<͠;2F=BUm μɄy3sȼBXuݼHt=9-R=` ==E;RfCIIls4b.ŷ=B݆=mʕ=to]n=+O]%) ʽ۔=!=df8=]=%!;J<؅=+=m<p=J\<3[t=\r=74xAZ]=68=L< =P S=IH ip-OX%.==b6X?=#=𨚽-邼ҽfR*a"6==Hx= o8=,=zWD4=E=kF=6bcXIG2=bM@==/û5!ؿ/=E怢A=߰"Lջ<ꎞca<>o5Y(=S==- <ݼ<\U;eR=wy}xH;j9|="Y;===<=vp+=R\VnbYO=n=C.>濕=ƞ(=k1<|=nЫ<,R>=]=ʼn=O=-O=29a<.ںP~u|^n> <u=Ao:yT=Ӈ=66="O=Fna<μν}\>*=|L; =8&5=ȽE>o:~8*[=g2lV6<-RGD=08>ʽʦ=.=<|'J=p= :=8;=.=mda=7=qv<,K[=#OY=1Ob<'Ƚh\=E6e=%y|=6$=[I{g`级Z=~y>>= M=+=Џ=zܼ؂W=a3H)#U 7=国'y'=t=VV;vܡ9==Q=><ģHbصu=͎= ^ <=K< = o~<kN=GU=d;o >Y$HvXýu{= y<5:`$Ueh=U=D^݂ =C! =+=={?=W&=K"s;w)<0=DAߞ{=)3^2RҎ2=\==/l=RL?dpҼkKjx7=WvtU =Şr=dck=w\< @a=1?ZcJkּ<?:\uĉA7 XIAꖽ=j,= =׃Kvx7>CB#BX=vD5=w 3e=_h@=`=L#=>wꩽݼN!Ul +uf=)=\5ܼ1=xѽ&m\=w=0;\ @Rf'>WYb$?o=1yn=.Vs\A=k(چgh=e#Ɩ< ㉽[=F*IX%"BӽD<Ƹ=ׇEG.}t2=3м==>4˭*R(z+>Er=m)N=dj= jc<=/~=6xAπ=P's8=\=s=ps==Z =A=ҏ$*͘jB:` 0E*yD=c><*=<#:='06S=Õ(# >=-=J=T|V6 uv}=(Agb=vzi=;=2Q =S(푼dƽu)9u=ǽy<#=KD#<㖽P~===.BЮ=W=M9VԽCլx:͗d:zIKEby=If;]B{<ݽ=X:<1ZK =T=h%<<'+i=f\8=:;/ o=-CߺÙ=p-=ڻcͽ=M<]:%ȍ;I=r=<; ]ӽxNS=<:U.м`; t+=n=p=xA=8S#6l=a;e=<, <SM.<=OIbJ<鼰m=N<6;{rW1=*:<4=x]=+R=jkA,=&\rRq$=p{=<䬁=vw!]<@1==C=2qC<^; o=엽~ =< xҲ<]6ݼ=<=xC;h \=h %琽uaف=<];VM=Q<5= >o=j&b>0A>SXZ+=_J=`a==%Qe=i=@=6==Fm=Ǡ<= ,=qq;]+ڣѼCw;#cq=L)xtϽ鄋=!_6`< ǽ,=B=?]zH=<D˾7=Kؼ,!=$༓S=y==[=Yu=fv= 񁽻ن=*]֝s=lr=^=ݽtT=;H=H<̼;=>;vf={Z"i<땽-=G6Zxؼuz5yF0<&Ƽk#=36`=jj=-ۧ=D=$Eϑ.+V=`ؼh<4+$F=諽t = #=F<=p13=.p=G=F>=pOh<1<=ny=YȽ<<ºѼ=v.H=_W=Z Ko=kr=E$=Mf='@ch=8=I=x"=:ްpqk.%=j<@Қ= =y=w߲=zT]=?:]=Ic<Ӽs1= }Ef;Qޒ=@O= a3K=0X *L;#qYY =Я:`n=܆=X<ս`=I^;[<==ˍ<[Ly=uݼc]ꩽw ;:z={B]=V=w<;Ly{=܊= JlӽqUۡœ6=}^>E[=ҽb<<V@G$R+<d=aͮ3=a6a<;Қ6=jV=Ks<(z=s=_b=Ž::8={a=̎ l?#߼ּr.8ֽ=<|=!<Ɔ,<$|,"S=j޽7=z=Ŝ=<Ϝ=;` !<1Ӡ=*V<< [H=1\;TK<=\x3:fm=g={m 2fҼ7={(=Z̈ >xYG=5Z=@(=`s)Bg= =77ȡx"?#W=/Oh-< =\BB_=%c<< ==ʽ3Oh=<|W=9inVE|#V=%=G=!;ã=/=x=Dj==N=X==\=ۯ%=ɀ=|==7RV=jC=<ȴ7F|=[)yy=4=BZ9ļX@=AҼn4=J;kIg\%vGY7K̛a=hnJITq<<<&8=4Ci"G=߼Ȗƽ"!/=N=߻=Q6>-eܠUE@;+=E5=E!*< [<{=\RL7M'ԫ=+.=ͨۀ$;բ;pw=F{W<=< 5=."=΢D<&' <5E=.gSB=p_>񳮽EzhEEhW7ƻǓ0/=Nm=W=(`<]cIs޼Ļ=mp< љz*t>?Rp]"h=b!;=PӠ=rmA=o<6Q} =D+Jy6"E=jD@19==ga<'8:Ґ6>Fl=8aAKTt;pD Լ=FDia=$XNz<9~X= \=9=m=6_ǤD [ꪴ=C%z$=$=&=>H$=ʰ==sO<(-===a<)켊ۼt1ą>=AS=ό<#$=l=x=^| =7h=OE=)aҜ^@k=B =0=`=R=8 I=촽(=7:6<#NS"g{E=aSҬ= թV%29:<> =B :;\udd|꨽p/bA=i;9y^=U(==%=R<=)=BJ F2=l=f̽Ҳ(=t?G S|)==<ȳ!=\Uiۤ=m ߅8w<=/c-ʇW꼠XM9^P^<=:=vgQ<(eQ= ټ٬;꧱uhhcK'+=`I =-/=ؽ:ƽc%g!+􆶽c'=,J,"ɼ^=h|=d!a==Yqq;;=N6=8G(=w=⼐=K={(QT9$En=˦F=ּXp==8 h===<p3=뽅 ;~== *=dӼ6gR>ȼ=<*==fT=ǽ1$==~ľ-)9>Du㽊ja_/椽\=dS˘ ͸Έ֓P= <|\.?磽a#{=4T=͠=$=Ƽ>><*1gͽn*ྕ =ΐx7=vH:8,6.~#$>.mz=uP=E9*W>31)뼳<>F(5ZBUo=H=<5k}=D]l#eNO =$¿\fPӽf5TBGv3:?RCbaG@S<1=M;:<0="K=UU<֐~M=_[紸41l<)􀡽S5,L=îk=YB=E=rZ;=_׼~[$=̉cUB?<dyVH݁wn"=t?ĵ=<;QMH=R=^[`<vҎ=q@=%Z;ݕꓽ~Bd缶=y]<;]z:=8%V== W*$A^<%y= w 튖=FZ!Kcӭ?_5kYI=O}wνy҃ {v=6^=4=Ԑ=-'.`=ׄ=N"=L= P=;P=NZa=6=ێ-I<=߼R<=n2X=Ix=d`q=C= E=B%~8=a=i6 R<6>>`=qjvZͻcSB_=;=XL< 43=6=k=/20=ɗ??(g$N4=X=sJ==Ui<ꮻP/=5zQ=$=2"O=嫌%='u0S='=3;<JSn=2N=vN񶍺mN >SȹRwn(?2=ͼ=싅=g"=m=wQ=0==J¦<mELE9 p(6=UۘE\<ޔO<>K=/=z[GrR=lZӿ= S$^&#s=4=o%Ӱ9.=mXsx.=4E=@=`t&==A=_ž=$=5h/=MY=JvK.p 0o8FX<8=Ւ=n=e'YR|=!S[^󙽽B=N@e<$릷k$p\;F"w<~==a=ڷ=DF'B=[=  };HÝ&]Ęhz =؎-=Z=)=,6;2dF=$F= [9\[2T}X=ߤӺ`?Vg=<>V==Ǹ=_}{7< ӫ<]EQ QUn?=W[ =SCW<;&,Rg=*s=-)-6F<= A(/=,Uew0ǥ=@$=V½?„b=O%߼0c="==c=sۼw\V[=2=0<]ڃW,= 8=2OPڼ^ؼ$Bu=1=(k!<n:! [<5DD=L(=h˸P=1=3{4񮜻T9=rً|U@= u:3O=WS=$=sȦY?љ=o=Ӧ=jݜ= uWXk 4L=û=H6[A3=#$-ptC; aՆ<=ث=v`Wg<J= ,b=.= "rrGoL<-XISm 4a=#ԼK 伻Rm=YR̹_<;ջ=n=hU;g&⮽=ed=l[=]=[0闽ֽ1r=դ[KhNKX=귽o(C=uo.=>h۽?Z=mlT駾;;΀]=kN=n_U=ZTӂ<%݉="=Az=]! ,g`y=Rte BI#= d f=NբL̆ʼ͘=歼;a9_L9N<<@]=CW:=2j"$<7cD480{Գ2;ܴE=;;=OQ=$dA=5~S@=& HP㓽C=o2+{(Լ8TT=\ =Gi% 1~_J(ݡ=]W4WA<N=3=M^޻\ qBHOGs=<=sн0[>ל7>4>T^;=F< =ս {>SԆh}l_O:!>m3:<|={4q躽lmymX=wzmo=:Y=A(>R=JsL==s>6ң=x >Ra8WEɆS=.P#=ʔ*=FCO=T=Fb1> K=8ʽ=PSS d;_0AN>#m>k<|1u; GN2>="(A<2ǟ>5>It@j=qO%|=6c1ؐ(>i ׽a=y8>Q>v=Q=4<\7W&ea&Jv=''=yVK6(=r==)9)>* =NTmyE=;/W?=):aME;޲=K >s=80L@IS;GE3== H= )=;!F< s<S=+=r}==1N*U*Hp$==A=v=>=6U7=?#<y+;醙Fр=p;;'_F2=Gfu(UL =sQ=0M<0Y<^i=_iU8 rUK=x=K=_(a<ǰ=>$4<Ҽ=k=7De櫧Ls <=GvK=~z=v>!v=k|=c";i?%<\t2=^F=@=k=ؽ<|gMP1<,.ѧ=R$irZ=S;3wmo=7<`5=J_<<ƽ ?=PB~=;X`r=zCT=CdK;󾢽@a< =bf]!8q\ܑ2q'=;Z=="=ejyu=VK^&=x?=o5zfؑ=u4Y=ۻٝ<W&>t=ݎL<{1=e=&=h=e=d=zكu=y(k\<6=Bν V/Ͻm>=a.wު="O=.<<==8`z=E!><=g&st$=7v6,=#PIvH{;9%(=Z=Sg&\=4ɣ;> d>Ɨ<=*<S  >C'=GN $vh5!4=O'sǽêE>=<FۗQ=UKHp-<Ԫ=6lݽ02}>=¼A=3=Ɣ=m==^˼S=%Q= =9coW=-=VMX===hd>~q= 4Oğ c=V^pX<6\tE8> 4!F=EQ= X=^=^X=ߠuȎ5=h*=YӞ=a=웉= _H݈;(U=hXIzW=C=˶Qq=/iK=k T=7-=(y-=t=ea=+Ņ(<5==]{,B$i<Zv=f%߼_b1b"O;CXr01-"=(xÔqUeckԫ=6;NYUtV꼋\7=Y< <3<==ZC}|o;/=;+E=[I<˂ =AP=<ռG=e5Jz=ô;Iw=k=C8*=p=$X@Q==bo=F@=XQ5C==.C=l!;jS1<ؼ4=N;Z8|^==Z=W5<"ֻV=\^==|q;N.^=fa;i' iʕ=i=<=G[˰Z ǚ=wvį='=Ḯ5=~<íX= <|S=OTc=D;=O=^Y=y=IF`=kOe=D¼ۍ=Amk=mk={ =-<=$)=ܛŹS=n=alX5E<ڹ5 ;=n]ODŽ=t=rE_JIv:-ڪ[hlPb,o=Q=G==݁>ykM=F>y>˓=fy>lw8Q0?n=73'>= >I=/^8>|{>S=W=<==DV>F鏾 _銽Qf}wѼ=Иcї+r=mW=$Z(_4)>E=0=P$ff=Xr=De=8==`>~G<_?zm6\׾h=w-=$<1F>!=z7=#;=e=uZk7QL14 K!먼!|ܼ ؟=Hfɼ4-=v<==s<4!i=ȀwT:럽<6=C9Vބ->= !<.jTܽVPS=HK={o(e=>=SL%;qq=U=NY=`t==; ;f2/f=`>{s<rX+R=PP=؎o$x׽!r=b=b`;Ͻlzm>b1.>[f\=-="=q=/C>E=5uWT:dg<=;,.d>Mi'<9EWлw>2jJIesZ<%r<ӽ =:>sw>S>l ~uĽ{t=;=`>65E潛!z;i$ͼ64S6V>FCT!(=?0༧ >jN1=t0+괽;h >=(ٿWCse=pZ^ =pRT=wCR==s]N=O<=ٻ=ּRe<=fx==_=G3<ވK=|M=U*.=j$=to`=9"=3&j&==h= <=i=!l=5=<>`=X85^3Quk'=ļ!??7em̽}/3t<Ѻ=p=ܫ4܊="7='~<ݺ<" ?Q 39=|={D{?^ {klB=#ELi;Z<>Mb=Ld,=(frYzά!R =sH=z~ ϼf]OR=ᙽR-=Z\=A.=?3=EX=˘=c=I/*ޣD<";mRLi=Ľ=r03y=%=۽al>KF=葽m>$j= Km˼<觼kfڀ>٘x; "=8=_H= uɠ<&<'I:^=DNr$<=Td0=K!̼rJzɼF*m={Ͻ?#7=T<ϭ׻5ʶ=Ek<={<&'=`USk==gMf'̽sOk=p`=/=]/==3vk<Gv慽u7= =#<]<=@JT=Pv@I=CF=ջs< =⹽,f<|b=QR1;=u<=D%<,vvJKӽ̏<#<{ϽOl&,<|;= ;xMEp+c9r<민l8=ՓU=]">%|=<=cJ=l=Ե(=WK=ӷn1R/='׼gTؾ=X<9s=>㚽{'97ҽifl=NA:7w z=IՆ=6=s>kr=<#HջBXY/=K>B;;V7쮾Gc |޻~=;L;Rn>b=c>9=n=== @Y<3==h;==n>A=$)H=@ؤ$>Ɉ=[>'=>C,̱GHƻ==o"Z=.=n\<06#iS+<,&>m0 5;ǯ=r^M<=%>:B͢<=}<Ǿ>~ʼĐkP"|O=J=F Ƽ=8Hż~;`[<=pC>=ή =$'Bj}=D:G̼.|tKf🼡=o=MVΰ ]X/9ؼtiO=r[=~,=Ut= cD=<ی=4۔%f = =Gxu;~K=W~)< ]]ERm<僽L6d̡ca5k=S=?=}c΢=p%:;G==84E=\34j=.W==J#ļ4=ۍ k h! =>op=_t=3=]9=?\[dPu?%;xۖ,!=PɖF*=G=lMǼg>8I=Yji=lhݵͼ>=p=3Z= tw=2mm:ܔ=;dQ=o=mv4 =bӻn&; ]B =/Y;4<<,#I7=6ʽ#*P{7y<a=.=eV=Ah=j-߼d-<=0Ԯ=-Sp5(<[&=Q;&VO=`ʼ=:=D K-f|=!,==0;kn̑(=ɼk==jXwcǻP'Wye2c<غf5=< =;=S===6]l=r攼¼UM=}p==¸޼x#伸 [ = E>Q&,%< :=V}=OFGH=h0x8q<LwF2p^G6aj='K? =h8>p-?>>RG= ;@>j_6ߌ=qCH<^=Vh= >>+"cP>=ezXTZcVd<=ّS=\=遽Wb@> =:=I&)Ip=*< >j=jᣎd44"I<$땂77>"->">D=N+cewT(=1fr/K =;9=3<= <e"Z33x5<}C&?.r> J4<#Lܽ;.=kDžR;`l==y=>ݎ={ >' ,à9 >C>e`J= O! `<&?@; eLψ?=iQjٽ >&MZߩ=GXx}> =9#=1j\oܽmaީS+X<6=U=<,)-ɖ>Z/=@eP=trѣQ$=H*=ĵ<>/ =lQL#XRi׽===<4&< ޛsX=1}O|'[Ǫa=s2 <-9=bzl===bl==90l=(@Z,=Oj7=<"~=2=N"9Йk|=M&<@<=<=O<^c(===a~EL=1G=l=zL^|=9J{ ݄ 7=:8?=w<=e= ƧՊK͝E1ɃR51;$G q=Kw9 =F=h2*;=D;Tx¸Sm<hJY9 WqoM*V=qO;Zi=2Ⳅ\$ !>;#?>t@ڼԹ>=v9>-@ʞ'.o>$#{ Uܝ==ב%=|~ͽ===GԼeVfS=H =`<(es $ٰwjL=;>>@> VUcYz`Q[]`-¿=34뼢u%=Ő=G@ T=я;U.(;$=Z<ٮ=e6nf{T=Tv ={Rjv`q`= [v?t*S=4lo%ȓZ;+N<A==X== =Bt=\=XĪ;a=-=;ڇ=ۜ sY TQcbRh8޼I^ =t;,νەm= K=XV;ƚ/_={<½=˜=٥W<&dg]C ="_νS*=WPqBXBl=3=/5==wB$g믽I=V==?"u˓<,=n=;7< 7.Gю#=5~ް<ۂI7BȺ;=f؃94=c[v$=lW<`L=ݲ=;W9_ dk=b=`= '\]&;=t.=rw=S < k=, }hH= ,=ܥ;Zb=uC{=v̺hv=-9N=E-/V4Q:/徻2=4 =y& .=A= 5>s=cҨWY]C?w=Ot<pҍ==4?W=V-=8^≼6=? jg5_ʄ@)=#ɉjH= h>\;z<=N>:9M> ;=|=}&J=M=q>zo>"d7!x={=Uz >mj=- ==M:+3?8D>0#L<=I>~4=o ?[=j >OOϽ>54WF% +=[z=&<=h2q=Y{x;,R< e?9=?mH=7=E R3<<$<3T0,ɯB&>ߞ1_:=:@G H!8Ǿ-="= SN<<ݮ;Q=d^$4A=+ٰ=|~=X =.,:hܚ< u+jmb,<+[4œ&=lS0.4Q=<1=x%=̀FV<cyt^޼.(<+=tON\P==⎛,V̛齷j='а=&娼F+=@=OR=3<|Fr5==Cf<0^#Ԗ!$=wB@ڽA7=`]>\ѽ? ̻v@<C=;X%=syk=$UﻼY=XAV/XJ1=׽%ýT=J < I=\<Ncdt@T= 1~YQ=>=m؆7,=^<lJJ=w=U=;r,0=S=4^9h=vb<Ȳ=>,|=Nݗ<;R"g N =V`== ͑=ռ格"tTD9=e)%<=cڽl]=½=^Ғz)~:0ֱ<-=t﫽zC=<9=x̽sY=E !=)y=q44=DH|f&I\ƻ =3݊OS{=Ȳ鑟qP==k&0v24;V=ǍC2=[;fQ=3҂g;dU*ֽ!2D< <=5=ƽ< h*=V=<+=љ=fI= = _Yb]=c-<Xf!=f.=m@<<<"=8=}[[ŇN=RYg;"=b=\F<̭e=|g<'=uw͈=H弫l&~< ϼ?>]'; ? qg>R%P=S=6U 'ǟw掽]2߄Zf=VeV^=p>YK̽Z{y=^*@=]̅wȽB=$;nHt<ug==˒ؼy/aU=<@ף F3=* =q=MGGW==Τ->=4=_4:{=!0=Ϧ(w=J!*m=EYS=}`4b<>+,<.=S1=ȺZ6 === =F=@>>oo8=s4;ᩲ*<>Qy`0=<;27= =ʬ=q=n;=X3<]=7=r.V\5,BNM;h=,O <6Z#飯= c=Duz}=:5򽁓aĽRD'>O rv=(=<:S̽CXW<{YB';ב_=91J񮽥yἝ0=<V<#K 1/=@{=LJ=mSa;=;d훻=='+[=[=k!Z=p<ӆn =H>ؼ='sC=:G=Ty^" s @w&`C=$=i(=/;t<IGa=rI= = μļ|=)Ʈ=w=O<>W=8=Jğ=G|<::u=;HܼZ2T=t:=S.&= =~nyw==c=a,<,=ͽ ;c=C<1=jX=č=S{J=żHeKi)N^l<\J=[ٽ =H@py$==55DԠ==ek Eeּ&>=j{j߳e*U,E|o<*2`=txy=: =2<U.S&ĽWO=V.=l-P2o3 w_}y/bm@S9I(i04-ڻ.uglT<7":| vZ3;'<6=JtĽqc<k<U"C`=5-˼-Hgle=oڈucPkL<=|==[K;v=Ǥ62:Ց}?Y5=,B&_ :=v=+?=\[= L=hYuᢽd^<Y=韽$_5=. =A=) =̩;t΃V@<=P[==X= o={;:KIH]y=s8HͩAgY;ɝ=wD`DB<;O=ƻ:ϙj$Z=S=lnĽS:=k=SAm =hM}<I=˽ŊL(I=<]B=w=뎿VƤ=Csy8-a4siĽbm;X>5'=d N>y.=βs_c==< <=F=n<8K= tZj=H=`=!/U=S@e=/;BY&fx Ь=<,\=NO=<Ê<"2=ݼ8<.'$9ѯ=EJ<~:S$;GY=t{F=Od= C<|"jջ1O?0q=#=]B=W=<2ݐ -<ǧ服1bW+ -tx{צ=կnf f1>%<q=м(/<4.eʽ/>Y<$-!ZK=%F>1>U=:5=׽&[Zաj:46ڬȽi> M<G.=O=g ɼɼ|=Ŝ=΁=AloTU}_wmN= =$dQ=gS]8=|f-HɯZ=>PODxA=.E=]=5=a<+Mdk<9(=P(EZw=BG<!R_빱\ LX=˼ڽ >0u8J6=j\?5ý|G={"=y w;<{='<=s<(veC=7<3yr:'*Q=PȽ0!=qsjG`3<@ ս@;<#s= z=08>==_> Gz=*\}=wivS"p=ڰ :uD%Q=:!Vmgm'2=+׽g==CS;o=9X>/|P<<`RmC,=[i=5[V}==~c Α=i=ئ(n==T*=h<=*)<+.={=!;GM8=٫MF=6؉=+ae4 1[kY(<=V1cn,]I?Y[뎽2=뗽Ú=Pc#=x<Ȱy<2W)[?2=~Z=Qj=/änBb=y=atǼ:=k>==:;;sY=kvi<[U0xDV_u 0 =Ʌ$c= r=HM==;=n^x6<叽K=&uR >= tvE<;mB0<s4:wi,=UԮ=U0;R^C[=CWѼuDӒ=%=>="=.j=X=a7=ø9W'=E=s=*'ݶx=3= C=*<=ñ_=(,)Jv8=z3.G<=INh@͕*i=pN:=L4<Lj=f&2<% =W. n8*=F3 *O;&WП=u3'J=cBTb=Et=ɼ^r%eмwS==.< n=L*خ$$.={m.?=<^<5eP=sxҼ(Ucg;3c=yS=C];+6;i=L=(z2|S R=!8<ܩ<=ĦuC^-+;˦<.F=Hϑ'2$,>tPL<tO;h=~=g<*=AP=NL= LS=_;zq?Uj<=>=>ϸ:uB <3=gԽ*==!> Fʻi=˽s>>4<=AJׅޞ:Yt=s='>=zvür,%=[m=; DC;)G&=*0lt=''=fAh;W,>^;NHy?*o!<ɻ =Q=yr>F(D½Z>J6eN/u߽q<=7=;Kmvؽ1;9 QS4/=!}]x޼ W޲Z==m`^Y=DmLa(uN5ۂ̽9=E]);>?=Jҍ Kt;19,==`̼㚚x=+X<6<{K7;s=C);@|<WL=챽uv=5Nl<z F>A=|=E|&<`}ڲ{=3>][<Sq?'2\;RQSޗ>XǸ5G?Ω=]=*d\>>->5> '2νWU=Q 9&=Ί.Ly|۪~>Tvf+)r=,u˹/q=+%=Le=d䒽xa<9|:=x=Jm+=3 X=pp=@r=8x3<<IlyM=wbn=.<<[(=&樽<隼|=o# zK_rO=vV!K5u€D=K+Q=4Q=(m͗=x񽶝2>$>s7RXn>XS=q7߽ĽF >1>>/=Li/}/ۖ=B>5Q]<zcELy'S;C0=m^> :=rP#˽&*=ț}猏=$1>h늽d%湽2B= #1@p Aa :=ν!;uVۼEaScV %s%;d qLC=b}Ƚ]< =l=5[=_>X>,=eC|ؼ=2|ݗ<)==>EJc;==y(=UA< *>!?χD=j%=hǟr=5i=\w=Y>Zw^<\NW=λ)=n fj={ƅ>Q=dԼ<=o=_<.;= y=c=l<}>ub>@6$Z=PYDjZsp# DٽR/=@QtMheS>Oh<`P׽˱5#n =EC<F<>]=ъ&=;aq=C9I>Rrf=XL=q>==:'r< (=Sd=wڐ=|>D8;z3(==HE>El*L1?ȫ]m=<=QG/FR-X=7Sa7>,K&>8$V< ;=>%7b jwagUʼ="ȼo-o=f`Ľ펽孼T<t=h>3<5=-<^8w};K$1R@,N=)"\u<6v=R:= s?&"3 =!Q=G<'<_<%3޽,>5K<<`v<"l<r'ۍT<>%>>!= X;Ah ֽ ̺n<<oν<Pړ`ĥ=/&\Q=jp5+FGB7=GxҝJNq:u&Wbi?lvֽ<<{ݣ%=;^s:>IFYfː<6+Ǻ޻] -ڽ +:ElWATN= ;s=̬{_g^ia =Q=_Yvˊ9v\=;<5;m=S D;쓽) <- =< úN0<$9-i<@=Qe,PE<<սV ;h<[$=% ;ᳳ8<ûlI=qY=c=t"=@~ L`$뼿<^q=\¼g=@;<1V=p|T==<:u=S-N=9= `=4#=]\=s{iؒZxU=Q=+hK7=/T%<~=7&==:L@wIm<쨀}E:=W<"=1)c =k";LA=D, =Òn;z=`͆=mW=*=ϿѼ]Ȼ?T=WQ3=sITK4=<<.޽[<<$96({<u=5EҼ07{{ޭl?;=@k#==@f=0<~#=PGqB=Io0XUP=PFxýeHo,c<=;+D t; N(8P|w$e=5\;!e({Q=.kGeQ;м5>Y>=ѡ%^:= =gL]=369$R=,<d=|2K>/<7PV>@h^=ݽ7=<= >w=P=Wj 2eO=-a=фU̽&V xF y^pH;=ɓ=)b=/YNǼꧽD=(!>w"M=ibT,@=&R>ݑ}}o>$:@Slrpj>#COf=.@I>ض\[=:q<h=Y>Q?jZ=;iK`r>;=k{=[>սd>_?#r>;9B=z=_<?K\=\æa;=AA?v:=1g.?=ۺ83=/5sO еm ?R!»l߼7=|b\J%>lªF?hX;U;Y=̺;Bn<Ļw0C $2=X8/<9?ZW<8=XS}<+#P =2i= :v9P=iz\<=ᨩ=*njqB}?0N =ޜr#ټl8;X =tU:Y=KF:W;&=Wp=4>Z*=A=/=s&MG ½8 =G=ە|z<֐"9i;D3<ق=tKU=c=ɂ=D&a=(=WvN=셽R<hXQ<;=;mPen<k=Hͳy=k<x:<4;)[<,7<`L=6p=x<E =̓߷=r=<=31:37=<̽)k^hw=,=<`'=<=a~<=zr>iQžF=(@=š:i<4权1+H=$Y> Y=8E:>2zp P=BǼ]=-ν=ՠ=ɸY6-<@bC=r=zp<>?=T=+д3 {DPYb=^guȕ=y0E_H=6̟58=X FcR=X˄c=9<0(=gr,O_Xևn==s=_ U=ߕ]=4=%=:K-1=j=w =?|ҿU51˻Z;=;Ud*BG ,=j==#o=E=Jצ}<Iܣ蚽ѿ OɅ<`S=uጽĻ|U`Dk7=ղ< =^J eK2=h/=rrt󣽬5<k=Ʌ<̂<ћPNżMs=W}⼘];ڻLyK=u׼\=l=D=.Y<4@=̕=Soz *=W;LM=G=k=f=Цqqs $l~f=a\vcy;-rv=:͓Cꏼ v=`H\=;=f$?=#Őb=;=dU=:{0=oSOB!=F>oQ0/&=W刽w_MBX,=;w(]ýqǼB=:=I񼓗wh`!;D37K<>?l=8;b⼵<#θ:н/=C092:C/Z@:;<=w꙽e[<-k<($="==p_Ebh:%=PhT=vd=;IF*=py=k=z=;xR<ҩkKT<=y0Vkdb=^u/뎽==ζw<<<㓽믽9@jf >ݼ 2=Wd=ڠ<뭽R8ň=tiJz=ł=}C< yZٸ<kٽ-YRﹱ=lʼ@rt[==; j=yi=̄2=X.=OZ*=^A0= 'wdѽ=ڏ;Y=MR <:,Ľa<,4=r5<=L =b[ȍq;RE6 ԨԨ(PP$xx`HHPP`P ``@@h@h`h`h 8 @@6@XX&`` 0 +6s 4;;Q@;;;Wx=WQ0`G;( H;H;`(occ`0 dd`$__gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Z20traceback_iretf_implPKc13cudnnStatus_t_ZdlPvm_ZN5cudnn5graph13LibraryLoader11setInitFuncE20cudnnLibraryModule_tPF13cudnnStatus_tiE_Z20traceback_iretf_implPKc13cudnnStatus_tb_ZdlPvstrcmp_ZN5cudnn3cnn9PerfKnobs5resetEv_ZNK5cudnn3cnn15EngineInterface7executeERKNS_7backend11VariantPackEP11CUstream_st_ZN5cudnn3cnn9PerfKnobs14setChoicesFromERKS1__ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base_Z20traceback_iretf_implPKc13cudnnStatus_tbS0_z_ZN5cudnn5graph13LibraryLoader15setInstantiatorE20cudnnLibraryModule_tPF13cudnnStatus_tRNS_7backend6EngineEbE_ZN5cudnn5graph13LibraryLoader11setHeurFuncENS0_18HeurFunctionType_tEPF13cudnnStatus_tPNS_7backend16EngineHeuristicsEE_ZN5cudnn5graph13LibraryLoader19setHeurFallbackFuncEPF13cudnnStatus_t24cudnnBackendEngineName_tPNS_7backend16EngineHeuristicsEE_ZN5cudnn5graph13LibraryLoader10setKTMFuncENS_7backend10KTMBackendEPF13cudnnStatus_tRKNS2_12OperationSetERK15cudnnDevicePropRK8engcfg_tRNS2_13KTMPredictionEE_Znwm__gxx_personality_v0_Unwind_Resumememcpy_ZSt19__throw_logic_errorPKc_ZSt20__throw_length_errorPKcmemset_ZN5cudnn3cnn9PerfKnobsC1EiPKNS0_12PerfKnobInfoE_ZN5cudnn3cnn9PerfKnobs9setChoiceE22cudnnBackendKnobType_tistrlen_ZNKSt8__detail20_Prime_rehash_policy11_M_next_bktEm_ZNKSt8__detail20_Prime_rehash_policy14_M_need_rehashEmmm_ZSt17__throw_bad_allocv__cxa_begin_catch__cxa_rethrow__cxa_end_catchmemcmp_ZN5cudnn5graph13LibraryConfig4initEv_ZN5cudnn5graph13LibraryLoader13loadLibrariesEv_ZTVN5cudnn7backend12OperationSetE_ZNK5cudnn7backend12OperationSet9initGraphERNS_6fusion5GraphE_ZTVN5cudnn7backend11VariantPackEdummyBackendEnginesRuntimeCompiledSymbolfreedlclose_ZTVN5cudnn7backend6TensorE_ZSt15__once_callable__tls_get_addr_ZSt11__once_call__once_proxy_ZSt20__throw_system_errori_ZNSt8ios_base4InitC1Ev_ZNSt8ios_base4InitD1Ev__cxa_atexit__cxa_guard_acquire__cxa_guard_release__cxa_guard_abortregisterRuntimeCompiledmemmove_ZNK5cudnn3cnn15EngineInterface23create_kernel_cache_keyESt10shared_ptrIKNS_7backend12OperationSetEERK16engcfg_backend_t_ZTVN5cudnn7backend14KernelCacheKeyE_ZTVN5cudnn7backend29BlockScaleDequantizeOperationE_ZTVN5cudnn7backend27BlockScaleQuantizeOperationE_ZTVN5cudnn7backend27ContractBandMatrixOperationE_ZTVN5cudnn7backend25ExpandBandMatrixOperationE_ZTVN5cudnn7backend23PagedCacheLoadOperationE_ZTVN5cudnn7backend17GenStatsOperationE_ZTVN5cudnn7backend18PointwiseOperationE_ZN5cudnn6fusion12GeneralParam13create_structERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9__ZN5cudnn6fusion13RuntimeKernel9from_jsonERKN9rapidjson12GenericValueINS2_4UTF8IcEENS2_19MemoryPoolAllocatorINS2_12CrtAllocatorEEEEEii_ZN5cudnn5graph21setTensorNdDescriptorEP17cudnnTensorStruct14dualDataType_tiPKiS5_b_ZSt11_Hash_bytesPKvmm_ZN5cudnn7backend11VariantPack21allocateFromWorkspaceEmRPvmmalloc_ZNK5cudnn6fusion13RuntimeKernel7to_jsonERN9rapidjson12GenericValueINS2_4UTF8IcEENS2_19MemoryPoolAllocatorINS2_12CrtAllocatorEEEEERS8__ZTVN5cudnn7backend15MatmulOperationE_ZTVN5cudnn7backend16MatmulDescriptorE_ZTVN5cudnn7backend19PointwiseDescriptorE_ZTVN5cudnn7backend24BnFinalizeStatsOperationE_ZTVN5cudnn7backend21BnBwdWeightsOperationE_ZTVN5cudnn7backend25ResampleBackwardOperationE_ZTVN5cudnn7backend18ResampleDescriptorE_ZTVN5cudnn7backend20NormForwardOperationE_ZTVN5cudnn7backend21NormBackwardOperationE_ZTVN5cudnn7backend15SignalOperationE_ZTVN5cudnn7backend27ConvolutionForwardOperationE_ZTVN5cudnn7backend11ConvolutionE_ZTVN5cudnn7backend25ConvolutionDgradOperationE_ZTVN5cudnn7backend15ConcatOperationE_ZTVN5cudnn7backend12RngOperationE_ZTVN5cudnn7backend13RngDescriptorE_ZTVN5cudnn7backend25ConvolutionWgradOperationE_ZTVN5cudnn7backend24ResampleForwardOperationE_ZTVN5cudnn7backend18ReductionOperationE_ZTVN5cudnn7backend19ReductionDescriptorE_ZTVN5cudnn7backend16ReshapeOperationE_ZNK5cudnn7backend6Engine13getDevicePropEv_Z11getEnumNameN5cudnn7backend27OperationSetFinalizedMode_tE_ZN5cudnn3cnn15EngineInterfaceC2EPK15cudnnDeviceProp24cudnnBackendEngineName_tliPKNS0_12PerfKnobInfoE_ZTVN10__cxxabiv117__class_type_infoE_ZTVN10__cxxabiv120__si_class_type_infoE_ZTIN5cudnn3cnn15EngineInterfaceE__cxa_pure_virtual__pthread_key_createpthread_once_ZN5cudnn7backend11KernelCache14insert_kernelsESt10shared_ptrINS0_14KernelCacheKeyEEm_ZNK5cudnn7backend11KernelCache12find_kernelsERKSt10shared_ptrINS0_14KernelCacheKeyEEpthread_mutex_unlockpthread_mutex_lock_ZNK5cudnn6fusion5Graph14getSortedNodesEv_ZTIN5cudnn6fusion4NodeE__dynamic_cast__cxa_allocate_exception_ZTVSt8bad_cast_ZTISt8bad_cast_ZNSt8bad_castD1Ev__cxa_throw_ZTVSt9exception_ZNSt9exceptionD1Evvsnprintf_ZN5cudnn3ops22isForwardCompatEnabledEi_ZN5cudnn6fusion35decompress_byte_arr_n_append_to_strEPKhmmRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN5cudnn6fusion12GeneralParam15emit_struct_defERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb_ZNK5cudnn6fusion12GeneralParam18find_struct_memberERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN5cudnn6fusion12GeneralParam32generate_struct_buffer_recursiveEv_ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS__ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS__ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base_ZN5cudnn6fusion12GeneralParam20append_struct_memberEOS1__ZTIN5cudnn6fusion13PointwiseNodeE_ZTIN5cudnn6fusion13ReductionNodeE_ZNK5cudnn6fusion12GeneralParam5beginEv_ZNK5cudnn6fusion12GeneralParam3endEv_ZNK5cudnn6fusion12GeneralParam9copy_dataEv_ZNK5cudnn6fusion13RuntimeKernel15getNvrtcVersionEv_ZN5GPVarC1EPKcS1__ZN5cudnn6fusion13RuntimeKernel10getPtxDescERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN11nvrtcHelper4loadEv_ZN5cudnn6fusion12GeneralParam24create_workspace_pointerERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_i_ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base_ZN5cudnn6fusion12detect_g_dimEPKNS0_5GraphERb_ZN5cudnn6fusion5Graph10removeNodeEPNS0_4NodeE_ZN5cudnn6fusion12GeneralParam12create_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_l_ZN5cudnn6fusion12GeneralParam14create_pointerERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_l_ZNK5cudnn6fusion12GeneralParam18get_last_param_idxEv_ZNK5cudnn6fusion12GeneralParam13get_param_idxERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE__udivti3_ZN5cudnn6fusion12GeneralParam5beginEv_ZN5cudnn6fusion12GeneralParam3endEv_ZN8mb_tools11hasValidVSLERKSt5arrayIiLm24EE_Z23hasValidLoggingCallbackv_ZN5cudnn6fusion12GeneralParam29init_size_alignment_recursiveEvloginfo_dbg_ZNK5GPVar22IsFromExternalOverrideEvloglevel_dbg_Z11logFunctionPKcPcPii_Z11cudnnGetPidv_Z11cudnnGetTidvgettimeofdaystartingTimecudnnGetTimecudnnGetTimeDiffString_Z10logEnvironPKcPcPibuserDataCallbackFuncudnnSnprintf_ZN5cudnn3cnn9PerfKnobs9initKnobsEiPKNS0_12PerfKnobInfoE_ZTVN5cudnn7backend16EngineHeuristicsE_ZTVN5cudnn7backend14DevicePropertyE_ZN5cudnn7backend16EngineHeuristicsC1ESt10shared_ptrIKNS0_12OperationSetEES2_IKNS0_14DevicePropertyEE22cudnnBackendHeurMode_tm_ZTVN5cudnn6fusion4NodeE_ZSt25__throw_bad_function_callv_ZNK5cudnn6fusion12GeneralParam17get_struct_memberEi_ZTVN5cudnn7backend32fortNativeConvGemmKernelCacheKeyE_ZN5cudnn7backend32fortNativeConvGemmKernelCacheKey19set_bits_per_accessEiii_ZTIN5cudnn7backend15MatmulOperationE_ZN5cudnn6fusion20BlockScaleMatmulNode4initEPKNS_7backend25BlockScaleMatmulOperationE_ZN5cudnn6fusion10MatmulNode4initEPKNS_7backend15MatmulOperationE_ZN5cudnn7backend15MatmulOperation12set_internalE27cudnnBackendAttributeName_t27cudnnBackendAttributeType_tlPKv_ZNK5cudnn7backend15MatmulOperation12get_internalE27cudnnBackendAttributeName_t27cudnnBackendAttributeType_tlPlPv_ZN5cudnn7backend15MatmulOperation17finalize_internalEv_ZNK5cudnn6fusion4Node12equivalentToEPKS1__ZNK5cudnn6fusion4Node5printERSo_ZTIN5cudnn6fusion29NormFwdPwReducePatternMatcherE_ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_basefmaxffmax_ZN3fmt12cudnn_fmt_v76detail7vformatB5cxx11ENS0_17basic_string_viewIcEENS0_11format_argsE_ZTVNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE_ZTVNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEEE_ZTVSt15basic_streambufIcSt11char_traitsIcEE_ZNSt6localeD1Ev_ZTTNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE_ZTVSt9basic_iosIcSt11char_traitsIcEE_ZNSt8ios_baseD2Evceilf_Z20traceback_iretf_implPKc13cudnnStatus_tS0_z_ZN5cudnn7backend16EngineHeuristicsC1Ev_ZNSt8ios_baseC2Ev_ZNSt9basic_iosIcSt11char_traitsIcEE4initEPSt15basic_streambufIcS1_E_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev_ZTISo_ZSt20__throw_out_of_rangePKc_ZNSo3putEc_ZN5cuDNN12dnnHeuristic16global_simd_archE_ZN5cuDNN12dnnHeuristic12lin_act_sse2ILi8ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_sse2ILi128ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_sse2ILi128ELi1ELi0ELi1EEEvPfS2_PAT0__fS2_expm1f_ZN5cuDNN12dnnHeuristic11lin_act_avxILi8ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_avx2ILi8ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_avx2ILi128ELi1ELi0ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_avx2ILi128ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic11lin_act_avxILi128ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic11lin_act_avxILi128ELi1ELi0ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_sse2ILi9ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_sse2ILi128ELi256ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_sse2ILi256ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic11lin_act_avxILi9ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_avx2ILi9ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_avx2ILi128ELi256ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic12lin_act_avx2ILi256ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic11lin_act_avxILi256ELi128ELi1ELi1EEEvPfS2_PAT0__fS2__ZN5cuDNN12dnnHeuristic11lin_act_avxILi128ELi256ELi1ELi1EEEvPfS2_PAT0__fS2_log1pflog2log2fexp2f_ZNSt6localeC1Ev_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l_ZN5cudnn7backend16EngineHeuristics15addEngineConfigEiiPKibPNS0_13KTMPredictionE_ZNK5cudnn7backend16EngineHeuristics13getDevicePropEv_ZNK5cudnn7backend12OperationSet15getHeurFeaturesEPl_ZTISt15basic_streambufIcSt11char_traitsIcEE_ZNSt15basic_streambufIcSt11char_traitsIcEE5imbueERKSt6locale_ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPcl_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode_ZNSt15basic_streambufIcSt11char_traitsIcEE4syncEv_ZNSt15basic_streambufIcSt11char_traitsIcEE9showmanycEv_ZNSt15basic_streambufIcSt11char_traitsIcEE6xsgetnEPcl_ZNSt15basic_streambufIcSt11char_traitsIcEE9underflowEv_ZNSt15basic_streambufIcSt11char_traitsIcEE5uflowEv_ZNSt15basic_streambufIcSt11char_traitsIcEE9pbackfailEi_ZNSt15basic_streambufIcSt11char_traitsIcEE6xsputnEPKcl_ZNSolsEi_Z11getEnumName15cudnnDataType_t_ZNSt9basic_iosIcSt11char_traitsIcEE5clearESt12_Ios_Iostate_ZNSo9_M_insertIlEERSoT__Z17traceback_api_add15cudnnSeverity_t13cudnnStatus_tPKvz_ZTIN5cudnn6fusion15NormForwardNodeEsqrt_ZTIN5cudnn7backend14KernelCacheKeyE_ZNK5cudnn7backend14KernelCacheKey4hashEv_ZNK5cudnn7backend14KernelCacheKey7to_jsonERN9rapidjson12GenericValueINS2_4UTF8IcEENS2_19MemoryPoolAllocatorINS2_12CrtAllocatorEEEEERS8__ZN5cudnn7backend14KernelCacheKey9from_jsonERKN9rapidjson12GenericValueINS2_4UTF8IcEENS2_19MemoryPoolAllocatorINS2_12CrtAllocatorEEEEEii_ZSt7nothrow_ZnwmRKSt9nothrow_t_ZdlPvRKSt9nothrow_t_ZTIN5cudnn6fusion26LayerNormBwdPatternMatcherE_ZN5cudnn5graph23setActivationDescriptorEP21cudnnActivationStruct21cudnnActivationMode_t21cudnnNanPropagation_td_ZTVN5cudnn7backend12EngineConfigE_ZTVN5cudnn7backend6EngineE_ZN5cudnn7backend12EngineConfigC1ESt10shared_ptrIKNS0_12OperationSetEES2_IKNS0_14DevicePropertyEERK16engcfg_backend_ti_ZNK5cudnn7backend16EngineHeuristics24getDevicePropertyNonNullEv_ZN5cudnn7backend16EngineHeuristics15addEngineConfigERK16engcfg_backend_tb_ZN5cudnn5graph13LibraryConfig14cudnnLibConfigE_ZN5cudnn5graph23setTensorNdDescriptorExEP17cudnnTensorStruct19cudnnTensorFormat_t15cudnnDataType_tiPKi_ZSt24__throw_out_of_range_fmtPKczmemchr_ZNSo5flushEv_ZNKSt5ctypeIcE13_M_widen_initEv_ZSt16__throw_bad_castvlibcudnn_graph.so.9libdl.so.2_ZNSt13runtime_errorC1EPKc_ZNSt13runtime_errorD1Ev__cxa_free_exception__cxa_thread_atexitlog10powceilsqrtfstrstr_ZNSo9_M_insertIbEERSoT__ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE3strEv_ZNSo9_M_insertIdEERSoT__ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc_ZNSo9_M_insertImEERSoT__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6__ZdlPvSt11align_val_tgetenv_ZSt4cerrfprintfrealloc_ZnwmSt11align_val_t_ZSt4cout_ZNSt8__detail15_List_node_base9_M_unhookEv_ZNSt8__detail15_List_node_base7_M_hookEPS0_strncmplibz.so.1clock_gettimestrcpypthread_cond_signaldlerrorsysconfconnectpthread_creategnu_get_libc_versionpthread_getspecificpthread_rwlock_rdlockshmctlgeteuidpthread_rwlock_initsyscallsem_timedwaitmunmappthread_rwlock_timedwrlockpthread_condattr_setpsharedshm_openpthread_rwlockattr_setpsharedfchmodgetegidusleeppthread_condattr_initgetpidfscanfpthread_key_deletedlmopen__getdelimshmatpthread_mutexattr_destroysem_destroygetuidfeofremovesysinfopthread_rwlock_destroysem_waitstrtoulsem_postpthread_rwlock_unlockrmdirsocketreaddirfflushftruncaterealpathlseekmmappthread_detachstrtolpipeunamenanosleepcallocbindmkfifopthread_rwlock_timedrdlockpthread_cond_broadcastmadviseshmdtsetsockoptfseekshmgetsem_initferrorpthread_killsendmsgnftwdlopenpthread_rwlock_wrlockstrncpysetenvpthread_cond_initlistenpthread_rwlockattr_initfdopensscanfstrncatsem_trywaitfreaddlsymstrdupfopenftellfclosepthread_mutexattr_settypeopendirpthread_mutexattr_setpsharedpollshm_unlinkgetcwdfgetcgethostnamepthread_rwlockattr_destroypthread_rwlock_trywrlockpthread_rwlock_tryrdlockdlvsympthread_selfpthread_mutexattr_initlocaltime_rsocketpairfwrite__xstatpthread_mutex_destroypthread_cond_wait__errno_locationget_nprocs__fxstatpthread_mutex_trylockpthread_cond_destroyfilenopthread_mutex_initmprotectclosedirrecvmsgfcntlsched_yieldpthread_joinpthread_cond_timedwaitmkdirpthread_setspecificlibrt.so.1libpthread.so.0libstdc++.so.6libm.so.6libgcc_s.so.1libc.so.6ld-linux-x86-64.so.2libcudnn_engines_runtime_compiled.so.9GLIBC_2.3GLIBC_2.3.4GLIBC_2.2.5GCC_3.0GLIBC_2.27CXXABI_1.3.7GLIBCXX_3.4.20CXXABI_1.3.11CXXABI_1.3.9GLIBCXX_3.4.18GLIBCXX_3.4.9GLIBCXX_3.4.11CXXABI_1.3GLIBCXX_3.4.14GLIBCXX_3.4.21CXXABI_1.3.5GLIBCXX_3.4.15GLIBCXX_3.4GLIBC_2.3.3GLIBC_2.17GLIBC_2.14GLIBC_2.3.2XXXXXXX$ORIGIN:$ORIGIN/../../cublas/lib:$ORIGIN/../../nvrtc/libX5X734"?87 l3]46 4682676e4k1  -+1zJ 5-8J!9^!6 (*5 4]5Y6u "]8r"!#1  5 F">5M9473+o 2)9d5_(71]76E8jz48O 3o/s439A4_W,.6.&v%377 3U+6+7120 -M$7.W145(!,/&51#k6|,5)6~F:43b.77$Q8}|!8l>6134o,33* ,>H.: ^2^7c8bU$>1*<6878d %!3e+8606W5'0K'(]6%k85R7&p6Q63]0663Se&yw58'21 $48_ ]!8&,mf 65 K5.8'8546"d 46 3@7C !956)8?77;7*76l)7690'85M$k5+073  28"wr#$ .9E2:)`@35I431"">".4K +E!!#+6l1 475$~69%5p52e7(#1&S9K7 E7"x6(5# x 68 Y-, 5R*8 3\8_7/,'b-5-'e pd9c`ZESuGNU X,g4

L}zs2Onx6V(F|(JYy ػp363Yi{ !nJ1tϏ=xMnlu)͊I-a/f DmOSPIr-Ho{{JkI]"9jلE[w;;I05<*;ru?$F3%^a/h3?f)z  ft2 B+;;KQB ~+RsV7d+r}ꏙE02vҹ77|H;;=Iՠ?7A5Ou͆6?S|-[8OHlC18ZQ,],IwX_f7|nr<* '&*1~(ʋ0@sI8ΤV~ᒩƐ5glp'Ek ϚvL01aP?hrz^Eؽss'#Ma0%zR dK߰u|SBx㬍UgoS7!c:Fmb1[aItub#SSW3`@U(Ti ʠ߰|3%i׍We*0T =lx5aY C'=+DDhkDd6gg7= #l eϐ*QaZhRBVY)cAk =(Β_qqB{dɒ%x<\]Tծ-4fиZ -4kAs韂Y+ d?ƔZ o)Ze]jH3"̜OeaHA=  %mAl&[Jf=QMGkfKpA>˔EnߍO,ĸ&edj !ԯlCWsO Y?% eI$?;vdq~W=J DXrܰ'rn.nh^̻A|?14p/mogmsY\t}ώ-n&}qʏn:{ކ(,dЋm O_ӑ7`QOw'ևIX-Vv~uŽӴg_s(MЋ|SU,9fil$) k*k5S^J^5D m O٪q./`v (tRƟs;Q40p]7\NpXIj;SK>WJ+-ܑ[ s.^lw2VJ}2KaJr'Q+3ص2S]K+3ٌVg' m,S#~@S 94dY `xo %לq{ ɩyƒYEtK-$$>:P[H /XU~IċE8AVĒ{Me%VZm^ת#-)^AWњq~jy¬-g&cu0NU7efk oM>dX**Kî3 x$ ZoenUUZsJ*OVEk2:X&6T0M%2׶k[4Y LeR)Il1O "W C?; YA/Xr%3/ӂ}wݬ웷xf`ߵyG-Xvjg.Nw(OY)Ac҆K>:NJs|FTQ4qeXjygoIvECK i_,봰2ʀ>;+M-9CcO`rZ@ÏRexxn>:NtٙaN!w+;CCCCa/y>, KIZ=g}k}Ɉf$zY 1JuA_ [Nݝ?9;:m"pM ~dtaQ,r۷0O9@{Ld]xѺfkw{seHE"}΢LsE:Lz}2t>W.K(&QfR"O@o.lڮKU<"!GFyr7f,Y m]#D17-^&|&ih&pL< wj7e-6 o޶%S6 vN)ނ뽴v+"O8L.s[3_v \n׫ݭwTt~"q3{{ BCw͍cBv^wq]`VԌ󺅑N/nvP\zwfܚ,{a%pV\R5cELҿCօ\)-z FA A/&:ޅ7r;v*E[>pmTMV{mσS >Œbuϩ:s/8[m,4guƝyXTWv(aW NSRrSa~sƭz,-k3%uMA/N+fKpԮUNt+տ bo 5B|#{ec|6uroWN:~Wf:iox_. 3Kr\^a%8VuTHDx/J5cefܜ֗z뙇̰PPC^O.!ӔS'K=T5v]0;#2i"f|@[u7,ok/1h.Œ.&*p6橪j_t$Na,  d} 7Q9oN4PtI&>a}7vk !?y͓A dhYx?6N=\"SH-RXkh̴; KS͡yg70"K [bؾ;~T>{3t{&@\8 UÏz zJvTYCLsn1Dd& G{ 8w` s,1 @.;>lov+XR@kT}?BOSX VuxIeg{z.2~%sԍ`{cًc{I5X f]{I4%Ꟍ.2L[&.l%R${iJ㳝 {'#v~~qXiEݍ%oU8w% dlv&]3H;:nS9}L ӡf$ +LY Ǭ̤I]`'*={ Jh I4q{KB'C$ؼ&uQI> qBY'qG$Q>)J>f/ken"̻H>9.z+jf{ 4Q'ֽ*%n%{ 8۰Mm,(b*"Բ{Hb(:2Յ׿HPVכ~\]7<9hx}~EW' G2v8K]jW$e}*S)|߯_=UN9_/EE/S_=d:k`1ܵ  |YoAlq]#x]>z0q y1 2nĽ;sN݉wn| #7Y%C}vvn %;G?a] U.mB`\je8x/z/Z!";w=ng9nXŋ#p 7-GeBoNp8jD?cӺY$5-73K0(X4t OS=KMII}E.5j.&_o:%. 1sYpKYZAXωD1l37<'^u^/OTg, Yc]x\+:?&`1鷍u|H\Ž'^χɏv 5 vQ3Ks7-9w: gcS-mL{,@=4 \Τ;ݎ9Cԕq]X~+ѳa*۾#{vlޥw7$Syd&L4Gڇ u1JO:97jUfqe: ݝihP6S#F;u8/ a5;}rSX8\} qŃ8"QE[`ߔiruk}ݻy3TXow;#w7'\|:[i.k7JUb؊j % s,Ya.wgxNa !@ީ8 B}i%#ݰW7M7w8}F!{w{B}8hl{gsy9P lӣ% 4WnU9wkN#Aſ.Pu֙7ϕ4;WzrL"ؖ_|mok[J&Ox1NNHʚԄ<ƛxo"'C1Bׇri+Fl[1>ŋ|y}\A.Y❽bcf/΋g☮,$Xyaq_^u.qo困v6{{vȱ`<'RZԽġ*"c!݆7c޸)v=@ӘDWBN4^&-'s?M]tM=ws(w4^ju@9K_Ky՚Acb@3:z^@ ##a@ :A?Xg8~d0\<d3 daHA׾Ng쁍:ڽrLKZkkvgZfFZ<)2O~UdNޙwԛKМtFntV,C:H=7c??JfwyJ|t$$#7p)LeU 2q$6ƻWIUYZ\KX8Q0=,淛eZhL+W~DBs^7l} e{qecͱ˯}Љ:}kފ^AjgbtZ-4gXU`eV 4 { h 3|ܵĂy-~xF~[}Ɛ ?sP @6o|+Y|v󍱛Jn7`YTuҜmty2ף+G_oO|;[_Uf[[\k+$3}0姌O7|,[<yεlja!kG _7fׯK,{awtOYBg—w.Xop5Z(oGVh &𗛚-'{cU)nwfޅ5Wu1pd l9$LuPlb^O\,\ x \(u?rrKk1oK VrW4{v)\{ [q h#}\y((fF~ oߙqJŋO9>~)VTt"]4 uVYޮ%d5b<Ĉ%!|#$bF'~X>Ĉ}+g!H,C "7-ZMްE37W8|ag*c3WZ(t١h5fg3TcO,v^ZU5Ț?:/VP?g&l͞^e8[E˒yZz®ER/lX5RE9UƪSe::UƪSe:Ual 4f+qb8rOWު܌xgMZ]5GvU',Lf}淥JTj%tUZI> Yf,-z-nV9RN !OoD)ߍ![H܄sw ](yeoz^ l(^H/?GgD/\ong|WTY2ټ^bnͩWrs*c~a8ՆJR $ ˖7yhr:|%G۴5Ds]$_qbËLScέr`R//4&ä΋\xRcIىY~}+ M04ӱ߳pe˅dw \Ge֗:HeCDȕ?w'/V,/" o_I]\sL+ŧs~I_|強"mLoILL0f4f¿n1p ?ɖQ{9ؑןb?;xa#V7M1o-p6\!~C\0y7:yÐGůů% X:&4ȅ-2ό[yq3grSg[v/YaV~CҾZpV.?~_3}:2a޹C_D4NDc.?IT/NE򮽿ծ:}~\R=Zc8LNnW^#Ћ;T=T`p| ?>QP/[{v?MAȏ.H]F#Ng0D_}Ph!wt;8Hm㷌WBxv2H]+bʕ\qQ "/+ScaH{a</JzT#o6֗,/ X '8X!٥vPnSWmv|k!gh'(%6lx(svԧ m?~h|2}h~;W@X%U>[}ٵiou&>#Ǥ@q)1.b~ڎ=g'*aH:*L#qdX qzCdǥt?ƫ>C= xwy|Fϛ tsz'vW3&?IwpƾZ! (_N@S.Z?<!c.|7& geu;dy1q:霮.͛Fx9fuxVXyky*Exc[AOd;e"-L}㲱CcXA0H!1doaOLc3#WAEQKGu$}0GmqX@Ħ7;Q{[c6.K}oS_=-/S}bZ=FGu( USfn{U$\''^Hq"p '(8C?I\{& xS1zIsFz@@3;tuq'iy)\\t 7͍{ÍXnº<;ǿt\/Hl ?^x(ٻ^`ͰC5(ؠ,·yY5dKӻ񪖦ڬ5+&ff 81Rђ԰xMr%aq~hO H_%{$Qx4 ?y5ktA;V87i ksCN{VnH)p/5M{ a/287p| MYB^y"1UIk6@u4FegʩQ@:T9k9E Ts7*< z{7b=a ]23NTD1 lKi'Qػˏd$Uĥf<.u=2b37H\25oFM+uTtgi /fU^m"37B\J*%Wrih^+- VClƠw}Ŀ:-4tgU'KI _.s^< X P+2mrk7a!8XÔ{/Y?,N&Ao\?{UuwɊcLJxfj~ߊȭv!{*};#ہEvE8,}鿠eCm2+;j;;;c' /A9^b?b{VoFfoS D2: '+868ܼ79cb*rM(_=; dnyK`[R> 4Y[@m6Z,Ӱ 4Ky2fIoUJ\EAX\ R.Ry>rEJ2*K.U\,Ҥ]n, !4K9+"VYCФ p6f.e`(QK8\U2 rXK+9e =):呾Y RLXYM,r%'/ O> < r,(C-2Y-Jyxy` J¸/8Ŷ=H GQ/$Nz͇53Z֫ GDZk_l$"5|^ӑ qiv%hj94'* XA@f)0;8 ,6eot j sxc]{NsJ%@8&pIWq\÷<>ӻ " ~!ObB^';#b+XU Viԗ34ٟ92asBҀ/4FGZ@H9zѬQZO8r5s/3'#F|BL>UГM"ufհ'}BTEHU h:ytD4jYpb0ss=8[P׏l,ߦi4ۭ #J2$񉥦KX觘OpWXeH(?9] pK_ l~Pn[F?rba9xATU=iCY2ql :L] [NvL`o5,JP+ZgN9;m;[jᴃBv)ſaa&C4O&/kQJ!wxqLyCw=] S>I<*S;f ިl%fsӵV(*J[aj4&#1qsu?-,ګųsًH\Bˈ4PwÁs<XჂan0T>jڵԴ&1vPdz$nbW .~Vd7!5)',,[(EiRV\AĔb,XRV c)6J,ƻ֥͔NŦ2/_h\fR,\e@ճ,[[[f9Gm,5+itk|MoUv^wLPߡ49D{ TO>̯o3C5`d;j!>=9rD18("j&x ό goc;j0l6?ls0x2 :{MٛD'd!$TsˇFK؊h/~Ƛr$|) ׅEBrJ"}R>hA JEh~c3ݢ^fFE9|bѳ^ }G%8x ͹-ȧ|P+ \[-ZDyn,Ūa^O&z>N7Zmq_YcL&4AKO/}%}a#)3QK\{z>-dOJ:x^b+ qع?@}O2^vi߾[0.{5E% fAx`KGBŧHĻ+!=v`@-FY/xy P4;zg[x:#maGe>Y %ǡ;C͞;ߋnv#4駞#}gUK>NnP.pŞ>>U_𷸱^D{F"j >$,eL&9lEA|VPf*yE6BKLF+EbRH~@2 pu$2q:5yxFr;va MN6` >ZTzetkZr1mn2D[ t=UZ 4W&]ES:Z_qh㹨4]` Jz~niYvi w>2wKY  ^*9BejW<QO3 zg<سLх뜌Q K xXyK%~;> aӿ_u &RUCli]!9?< ͜đ~~J EP< $?)@~2 q{W?L֕D4|\tX#{q.}YDk\(~--Jŏ340n8qh)S9$gw+Us%¹0)Rw94bBg cCb{<)0]2by^J, >qnL;7Q@j $֡:}yt9׻V؟;7W:yLKibg|nM AO~b Pt} hݩg/'hڻƺl7֍{7Vݠ-{[[QgKlzGH6~n{uP: *v$s?2vMެlf}as%d&;& o Ydn- f;clg %9ۣ]ۂ@՗5mQ%j4om:^#|'Ck^6RE͢˩˙‰ sSpԫFfe+@[%S J$tOF.`8G *oCa [YgϞ10K*}>=!\x0vzi/"7Y^ٻk{7^cXwcA?OWzghafJjjͣ/ J~UTu?^zwk_/2jB[HG57f6r\KZG|ߚsm|kF9h9}[H?J2ܡt}7oxqr.>Fy`qVݡDisnѾ%w}Md\ǥRuXXxBfYETDjM~Kq^0NRŗk`ώ3)_44gO >- _w:G^+!1 ;)eII8k(T1+uu9q(j9jrA \>k 2GflO1-^K1ҔY(;GrC AQwD:u dB-2% &&`xxv߲ƫGV4(b=U%w~Kw0Y0 2`ƉGUfĜ?׭0%a4`TTGAdE n)H]$SZz.,*y4H%\Y$M>1曋NOxs (\o9f8:(u>uԔeEh~|&Z_kE/y¢qam2w9lѯs}F O(u [9kZgذwJnkY(:sfYF\e"FhJFNbwF;!y*)vRZ&H i,r_+r}mBPs]h|w{̋c* HxTڝL~P,"NnNJU8|>\״.7i}ONr-I ,p%MK>m׵h+|Z 4&ފ S.ۛ͵/]Cs֘F 7a d41P+UĈ &8!x\`1Pd'0f8ȗ5R/;M&Qyf-:{ k_O=_@crĊoȍCpw& 2эl`77z2~+ܻۢ J1X!*y%>fLekgA{!, dٚgtoϤwz`G0;gzΈ\Fag+h tSm:9!4 VG0MeG.f0o1(̙4{OCibEtteu.ȴwsU%Q2iȣͬpãThH`GQCY*5nZrf ]wtì!| ?4VTYƒD)+k+]KWy)Yګܮ]{m3iQƓ̓/'K&ymd62@k,"uH=-Qw~cYU͜g+OZTTJP%TQJP՚,ޖҏ5YFfTJ~3Gue~3GuU~3 Huu.6S0VUW󻘮]LW"J]&J EViMEfbҲb.f*.v1SKkaCxmf63@@3@3@3@Kv><͘<&σɓy0yLomUQ6#΃xP\ʕ\)/3@_f}Y U W}:*VǙw:^W0= ʯ@E r# JGA>.7tz4r#"JGE>o!nV[-6옵.:C~=_He-kQm|Kߏ9[=t+nւ1ݏ#~q|9xtC^7kf~H 'Q~`ςE2@vݡ'`h {~)qcM' #?%v{=<Δ4ho*+.貶~2uյcy˓'&m>f;7<363*DrC JFx2^n0YXu/2BZpΘ;a 4Ox'+v^gS7ID}Teǡ c]{ۀ3'WV>2U,f L?t<~ ̚`YGX W>/%Y5[ f=ˤwM RK6V0*hL慃,*`xQ)-2=R J|I׍WWG %1cƀ72GN*s:G (wvgZZϊQDW" >Uu1(‘m}z~|;Wݛ&T7֝'L\5Tg,s CcSӻ`ʅgr;qb[[ h\zY\ȵ!rlhHʫtT"FRLH '4 *~O1yqqO]0rSScw4[7<$vajbv6>byc#5S,sezleVv19|p/ɍ^BA ٹ?qc334>%;1/޻1Oa,SyR0&N Uaev;ǭ̬uzLx;G'a {r—&//ۣJxQk`Oyov{9v-uk/[f0:HAreȦ𑨔IA(r[SM-LKͮ\_}?TXYckU-Hл"$7$kHH5.Pe0c=% Qacv:>Uyc]|_,8=.ohz䴸sQrejNZhu{0nov?!>@)BD#pLDt9$") SzE(^#U5eu*2jj6pBa7v`g㐤}U/2[O]=']X5? }Att:20a,yJqjj|;?= D)J$ctQgz%+LKTn!ξśΦS{^b*qDaFWswR;\aSDaY'ƎI)o:\[#P\jI ȁŻ{ c%B磔R}5pSɅ^DOR֎+|ց77gbCڔω?v]?vp+؛o }@]w[sp>l#+ ,TbׅԮL2r fE D d'—ƺ սu]Kl9;ֱut>޷U5ـKv,}~n?~h|;)x #_F ]}8;xPQ^bm4r4BrH6fNS[Qr'"q{3SL\ykۑKs!,ǍyW ֢ĜC =OzVFj 7^/-7͕eھ6B A_DSS50TIG^+?r/@)bEBJS7X)|r?[åcX睴fsV̋OOf6#;=aSm?ɏe3nx2y8T{WI;*&$HOT2BNG`pȊZHt6[Z3DE W/sM Y@Vfib K |*$U4Nbb ƁtLW/d?3<Sҳm:MYo:̃".u£s261%ގ#X 7>L:*X9G+,x`\ u{pLDxܮA# l@skʏK^;$ q,?G@c`N{(pt!ޯ;PӤ3oO`am{A_>{&Iqu솚ӏo~P-к z㈎uꡲ=]U\GS "򭼈R!dm *ނ+8H?U5\$w-,U<}+`|/&L1ƹ5b @)@8U(%cq1zL8`IW&M@qɐuy q} ??{!a!@N%q?83~NA4|wkO>`,Rƀнй47pcS}6@AN1  aDW =sC HFE`RΚ\"B%>,V_dt挺ko}{:G.s73M"@v<>{ =syZp(I7=zӉ /Sd,&2 kx}W!j%?dCh9Нvt9""6x5.6 ;\9F8Hpƨ:k¸Q _`eU }xCoEŔi^> f#hS@ !Nc-+"&(1/e'@@2Н1? k4 o3,Ax.1j+™^,c1(!h N Ի >с\#g){'c1Xd!ϫK#TM(T /qX rTY4>/^4J(SKGM 聊NcnCq(l`hvy0/ _IJ*-S c ;"q <3.NAz83vq,QzgP C i8 h8BdxN%Ӕ:1\c~̀~tjbA-Z CIߋqr u̕3*{;RgKj^.5 d^swJ*#D#nO |yu!8oD3VrPA6΃G<@j:!nCh@49HRQZN( \hIJ@oi*ӆ1#ж(hl5n/ H#Y9/4%HFq-G@EgY֢<&3=Fc.<>D$A)j0'`0ָ;3z Js)4.;$5~.{>WoSOp.eb ccO@B1N=FRB q:u93Q OӪPHDfWH&& !8~,tϐsW23֭j@A%C5t  .ˣ{Nk.hނtq&Żw{HBj@mnIT8}*a(&5;0BO"RuLRW?F,'" /Tš TiHǕlVhV8O@<B$[P$Q7_!}Jg v+h'`(TChc~@ ӺKJa/uSQnG>rO!d!d!d!dCD݊ v2݂b7/-!vr݂ bߞ$2??o99ϣ_n`v{3n l%˿90} cL‘uh=\as5(߄Jv}h KlcAo$i"EMkbNKV#\-۶0ql5Iٵ5UD%QoAKw;T%HřDŽ_Isb6שP$t8 a)R`Q1 J~*Op'.ïCR%>目Sq EI<(N;|G m ^v-/]k,6j05mlTjTXᰚAnh9C=>.Ɔƛr0(g!' R؉*dILv%Gvމl+OLZ@ę7L&ˊlV G&4.cD]pF-U]z0jOsuí10k:jQ809 (C7Z49ohɂ e=~H+|LxcW$[-oq94 eS\.eYOFQˣj/\VOc4uHU${TLf會B!=N3 {ƈn$=MsF_o뷿wa=hm;ǝÔǓ&d(Mo#i`| ;x0zc<,63`05&qXQ~7QcWFy.Zx!).ӛ`_'1 1kH;t'Lw4FN:bhеs/$i0t0uGnOۘ6i$ï9{B=NSִK+JKKӸ#o Pv2d+tbIg}Д|a!i0:7AJR*7Oi, Ͻ@Ǒ=N$w­OkcȞhRU>1Kū -1'(E'2:J6#Q\GU5I|"rtNtxf?{o$~+0MZVtei(Hf3ْEryXR2o Ll@( p<]x}D KʚQ:$zHnK/Nڇae* M26`7{/w\mjv#U UN ЋS&WIbh(F?aV @Js..Km~WV{:jGn:do[+;& uA2tVE t&J?z7Pt+8"680zPчT*7*i|ܬ__^^\5*5Ph%UU-o'84'H3r`N_+TB5>`j&/Zb} BŔA.!@?_sIL^$tf3vA]葩䈴}C@N0[@xȖ !vQg*I}㜐NH/;;<֖ZS^vx+j.97͆yWM@Ai %_ns~~.Q&<)i;1[ߌgYVk-2X+Ӎuu~_5$6_.%/9W\ga)һX5%>}ץ2)ݠK<`x:DvȯEʜCԢc?:&&-V>a>G*f1k +Xw3͞؛9hs ꬯>o:vi= ] $X~& Q* (9󄇅tuvP(( I<ߨ#VV{^rBpO!lSz= ݼLꎊ ߼b9!ib`q5_ ^,AxVXeN.^``9fa(o0%.ys}8{)䉑'<{P|[8Lx'tpqLvk ^3F6.N>%R6f|`-e3qc66ସLֳu}t4Q͈BM)N%QH EґT1%HjGCS;QDNx OV;Aj +pڂ#q|֣Yr:Q ^=]z˷zv3l&|X , V`+"d !kYD545jl$:a1tc/l% C7B+nQ3bp [p)WB7ܒWB7w^#;(0EԆ6CWr&7RB%5H ɴ1hco+yYBLI_m RFII?r +$>a:*&e)jfYWRZfu3Hc8S$gIܰUW+r9an9CaqwM}zx ԱLL"Ce] T\LLv + ߚ#w_);b8-4tMl0ŘYh.D3Q/AhJ4Gwr&rbL0su]R[8"ZsM.Ԅ=Hx'9/Dvh>XM HXyNOz'Zш7ȋ:ȋ: EZ8Ĥ*5=Tf;%1d 1oh$$ba2Cy֖sO"GhFҁP_O-suoLi) ,q+_ܲ[pbd)0S8 c- Fiẽ?aBEP_|sqE GK]ISg2F_ݽϵ.d䡤X65Ecj*ˉDRs;b`WD|O(>1Ka/Ec>5R`ag^E^ŞP[/3֥2(+Qnՙ(bTer^2T;kaXrkh_1ɜm9Aq8pcsP8 m[ބ٘z'dL҇= ✛ʥz 4dab ]Q7KQ86*+no (2㫳*JFh%8a댖mYo\vaf쎕{3muz7fg[ih?L3ϰ>.Ÿ}#@M'o:or 1UBONwPj(54( 㨓m]*צEudwXS&uqk@m c|j'˸6HY)ƹϜ:l ˝z=kHs^.B!e\g]&x'?PhAyqvU~}@ %0|7RyM({wГ\B{p6BvcHնx ?1ߚ y[m!$܏]yqS  KZNxr οxHX d?'vPn͏w\~t-d㔊B+'(׏=Q(7ޘ<]z9%Ȅ-xME67X0+'{hi S1?Pv$q:YuJlo'gAC zvMq]7tJ.nMmN5| [UkVYD,RIȴ3Ս+WU!XOw:Xpz r#ɮs7L4gb!)p3kB?!1AX=i _ ]ݢ*ؚ;qT[N\Q'U w^Bi`wT+ɰ?lTS x8ko W8Z6Gxݗɚl\N[v}f<==5` nUYOːn&Ck<[Sٷ\w=D" E=J.pp0l:h5 >d䆖ַH&tc!A =#"-8ڰ'%-BKr8 n|H1>7NzPJ1rZWgll0 l떔Iz"BfS{:9H5 WfC/6Ck0bu|wFvc5{~voI}V~Rؐ]~Y7{IpTs8[yZZH{4#V Il -4EOЪOTcowMؖ0/; eP1, p7s2U5s*pDZwy̝(6Qgngo8,v<9T%xrWQvZȸE֩"YlhroJQ1h`UؕlY䠫8-V7MkpH.AQN̒Ɯ䓢~\o&r n9e+ʌnKABW 1܇6bS|FG&uFqgݜ"/8d59JۡkXCXaZ}zVv< f"B[D{Krq߷MgyY9BfѣQ?[;~ڸKFNt<L(ߦ@tF%(:Ƨ* Y@9ܠb=n[0luGX6zo]48&u;uBV{/s#=rRPӤs ] iѓ#?)=LV{Gf6oHk@cBxp ۷2E,䜟y 4x*Jy6>_Uʧ̑QQE*'E#! B1H fkds㈂zNO  l^&w7ja[>&r_p𽘯G{9T^kv(d yZ;W(+r}'2y0S6Mqcg Z8vutDӝ܈FGÛ4\ ŷ{lA8ǓL8}:^⤋1T/7ZLQd6Z栉C9ٝ!C2u : VC{0a#Rwzw-q_G,$ < q~0ehh<SeG-ܶESXж=E޸~fq| ċm:Ď6iGhXO(f~dsnWC!7H@(fy-堟;HEwKm'ء}!!Fes7z\t8W+:REz2^SB'r_CemfE`o0 x23;Ai RWPG.6C`7v ش剅j4@j9Vhݹ֩܂|!67F 㖸*ÐXv" E|IK&<@tgX;IT:+>Qbl ݗz]iA_H >p녨\Bԡk2% PajC O*ad<=JT V'PИJd*cd<=JT V'7^gD6zvgR!g^w]9! zwZ7OD޴'rN][jASQY!g%Aw b}xqpHTy!U LzbvץඉOMG+LH#BJ+4T^Jخ`_I}&x(oV5= 'gKo &*uZΪ&?;Զ0zA Զy./UH۝jVsdwgY!!aĽՏQ`бoV5#QkOs9d %(|d%aR@=H]b%^MnƱwS EĴrkC*|p$wP !yu,b=ccNo kkNă]xW}ᄺ 9?b' =-~FNCQ[ 5xhkyl zNw,R:ˬ4eXe&U.(+ʅXkԈH Q˔U{aj1cCX Bg^ߋY{_ݐEοWyiV9 )<䖩.,juMCUjEU͢PØ C0$)XKX]*q]*%<׷Kv/m;DZ)M̲ߏR~~bҏ<iG9tJq/uA GH8 Mq^.eR6xr`8&B%|3u'p('nkMTk-dnߒs"s46YyrqZ/{X$0eϞ朆?Ŏ k \H+zS dn3mh2+;&aE?pu;Imߺ4&KҊZ=#E3B'~|{ \msdӹz'ijY%OA̕?>˭o=H)\`|D;-[JKƲYؠ6:k7wHmke#mC!;5{D8DdSG0EZ+ NE"daoqMqoޤnjDjMIu߹7?aL$994,B sdҎo,Sp;A+Tw* ib(` z0ZU1(&?lfvwm\ݶoJAB+.K򜒉>'Zx&:.H̉ͳl>-s05B =x#E=Dg XC cQq4=ZH@Pbh c,J*BbM KI[A*+q+&ax@ʻ]=6¡wKut0U˷o~D*t<6iRDpZ CѺIUra[B0X0.ֈC!ro`P 8h{T` D(#DIhNg= xC&3|UU)' NNX *ᴾ N\u0_=Q4Np (Mq*T^  wbQ]ѓʆ&N>z$nD-ijz^=O„GotEiͦ{)R"zJo X!gr!4)s 1hErg48ԢzŝM;z";xbg r9W=+̮X1X*| r "~㍂|-҆߉e#=)'$J!JΉDU&9&>yj%ׇL|@ `$/uG\]*ɷ 4"ۉ UUz)K;CoD%8jOk 6lJw,0 xew8I>!Фnk9 &K {U=БZ٨*46ȽهqciX3"y k m ؇e™EUfKλӊ"HPO HIYy,R=@XEHQYd/,/>g7SR :y!bhF铊MT4l:a* ^h4KEæ[*M{dBn+3WῗRH%^t{Y:,,Qz!c(oLp/~~.!LԐ4AHdkkoa"b=1-C'lMS@1/ gUT)U^Q/87<YJx8 fzD'$OUdKq;ٺ;oH?&a-9Uޞ $=+wN3qh)PҴbG=ұaDN_=Q@+'` vs4is)qUXEU48Bxnk:3K1An*#++$Ne/##~Y_W3u1wZ"{94S%f)0EBKL6g4V,WKiSg,ae!DAtgZhpokCMq1(±C~T|1}MZ6ns^d4{dXӽdDY^K)\cEveC[iš,HNڱɍ Bv5 0p ptrKqo+90U:\ͅ5 -qt09]]P;fQ]I -iwܒ5P鈈Yrf\T@I< |K/D@ 1@@'5xZK b%XV"1⇉O8,4__?uiQ]\)C7蝕v%-{Լٱ{"fԐHpH}y46.NH b3 ʑr8?6úTեץR ]ߪwEI'k" F8\0]bZF{(>2y7/Ev !*.GL$$Zu%G?K`aB4ߖ$/u= 'Q]yA5/5Κ6D!1=<&gףͩ ɍyRB)uT诩N4ReYl,^;kOtե*'kYKw㏳l<10Ksu6TLŚ>|KSd1>Bg,_Mhkݺ-[âA~Cυ7@Uon߈'u|:xslgeRIgM}x/|[@wdqHsLS.pZ 'bh:L61o63f?XgR!xǢllg{vD1"a&q[$tT~')VOEx4p(c utۄ;B܂z*A'*A*Ap\'[Eʫ?̃z!<$ !!! q H9,ʙ|nvnEEा)0 \`:xI~^:$N\2Wb Cj4! qJ%3S?~WR5Qʼr!>J }a!?ɼt{,S5 Ɲ*RO(^ԉuw7h i@ Kc{`Ȍ{ uD}&;$M $}E5tLzk)EU1љ̼{n@+l(}pXb Ip+^L|ii̪ 'ENBIA_rkH yT{eHCǩɤGQѷ3%U!y:xd;5x5|ЌuSP'!G[MᨽoCFwTFz9~cr쌵MQq<ĝZzϓ~UIFe Lw9.P P0winˡ;śHa2_K[\K3-\1ʛ6YiT/jx|zzn>6`H8W߶d/9i[JvtF`yued1;8૽=j!H {(-ZV>ѨԛБi޸NaƎ :9]فzmCrU-UvA3L@~Uwrzw=ij,&moiJleӹp;O` w5fbwu4Nx"S/Av~ڑwoO(LB8,EYD apWFA"T67YpI];#ƟB:ccoBr4j>#2p-5G8` i~},_5dI16u^+1" 6ho ~\u&R2gl0!drtAh0TVP C,'aYZCr~cZNH6mGϷqf<sSL9^*YJaȊ% b[^Yz94(`TLh6Bs^!#;] AӜaJ!8#o\å]S/qL܈ǿN d]Ygy'OZw$\zm -ŔfO+1AH*d= c14$=0%bwr⥆4<tovn &ûF=]Ȣ.h!4y;Ei"R #!N"sT4ZMiv5j"׉֦0e LLTٺ,kfPaXgy3+4&CHHȇO-}T*X*'@E?[N :mxQlhUyL% kB,;4G`#%9lQ0yK5Чa^rY?kO5tuq}yV0|^%9_rےR`,-q%nq%ԩ&~G[c1@l/WucdFA nɹ8ڹ=$/@Ff %8F 8oh9w(zcTn2аu V'w.Psn S>c?Bt;xt>lÝ*܌wֈCiߕUR;>5+)3޽tQKH/.}8p֮8SŜםx:=:P 7Qq2D&Tx::9|A@7Mˏi [nzȡm<۴'9̈́K0|Wwc>_u\ zC2z:|ۥ9@?1/ԝ-.ma&|ir5ynGn fHCT[7}bhn8iՐ 7aGa(O(>q$L |T@YQG]KX;_D{oAeb.ʔy&Tęwjj5nPo25&̹uן4&m+g&AJ@x7 M|4aC;rB?W>7(oKVOoN+OGקSs8noݵvr<JC|v(ӢwuXǠ TvJ9UBN?s7Oq+B^3;yI-t~&sr~m.tXCwιʽ%wק#F\-8Oޜo׼vV4 Q= ĥ ZL;xj޳/޳FxՁӊ7pA1*:D]Mnw7N;\ǖ*S(f?2Nx le˛38o*<䣮?Hm1#ǦCYjFRp 6a[%bxwH?BS{ ڶh'-:lGN_|{6G]9'X`]u.UScykc"pZzRaG)]|m@gIxgAy1.U~ADТ|_q(K;a{hV$*͑ItdV,N99%.NN\'b$#OCг\Va85"jtVUF3z3aqS ˻@GACrOLqX-+ܮfڀ}kDuyyU9֙C>;$@~W6ώ-)_gz_'(0h?'!iUWzs!T6l1.v`N:ns=y'9?ݽIz(UD}|/"3z9OC32Z*UUKRDz!V{ 2dIDCYRk4Q>q b=)vhQ3]dLzM^醟3 Mۤ@fN|:n8`rjn+=AQ!5||HӢ&%|5'9Qs5'ӢjN$Os'Ou 0[yA2Ih$> noуoH7srSQ`.כ챴a0_ ~7"h5Ѕq#͎d=f/DAہDW%l5=w=`gו._@ۮU^ʪISt>+Dݩh %dâhq J_'ӢL1O m/~Drub /yRzZ-ˋ2ƖnRt-=D5F(+mhߌ=%x'7vL8So5cm-S}/a |=ڣMlc7\w˫ q|^V\Qe狳Ukָ~n\7:|C_kWz\\a \xU֨VyR]Vk`EUϫ (ָvGr^: ?g$ڨa/H\Փ+wZ-4J*q?D>TWM hir!NaЧ<_VN{P#h@t+q %9-?xr>&`6N _PoT׍ tqq(&oՓJ])<4(Ӷ.7zZkT/q0_2>S d\\pys_!))@&H`IR; Z,UXZZf"ct Ei$Տ|[;W:;!31e h hQRu<ֱuF*PD ^1EsOEyY|4i.Lsa(-\yǭG="z1}ek1piM:U8nB)n?:[FTGNeAur#cΝjʵ닪_}r~ ǪvL `/0>>"ƾ87z.jYS\Lߏ9yfal+%`5X ΀,0`20n!) XwR҃K]opXIU(Z*Ģ_E8A0;D3DC-9gqÛ\o4/˾wr0PW[ShG䤾ZG΋ ɜSx6|ތJW 1y*5ߗҢ;y"cuKVԛn޹TQTήnTAxQXRXN#*tHJ? /ȟF @ %o<-jgPɖ RPz@U[K~ui^)- AM}";K?fg9;c1YCzc߬CDC5YC@d&ڊKF4 X\s'{xZÛZeU',.j(S_/6 w~wq5B }6mA\5 dh|Z4mf>7Z"aԇCC>4^pJ+2c0 8?%K\A)P!0 #ز [.uLS;`8jVSy6^|g'j@Rk8G%*rhc fiM[RIF -v60y6%,WZ77xC"L5sXHeX[/c3\ $̄iaOoqd L|5W[ —A#H~>9=L1֖uC-eiCNbz'$;<=к U΋)٪>º%;)c94' a|!IzxCsF9C\!lI܉\j)y-sJ\&R2I7QFoKHo%t>_!spv݄|V.#< >rRаCl< VZ`C%/+~c:ר=2ߨPGfmJNi281&r"XtHRGXfpl*0="=VpR@Wo#/-Wmb$xa1879s{.)IduHyx %Q)@S勅4"lQx.f 26W fAσl L1sf髹H/e8O9Yu t)/LrޗG2,3N&Ȩ;J %ɒG&t,ɹ=ʸ]Ca7=E(V8$r٫F#@r(vJN/BU^u 6 s}DO 7bKхhdV(w(7zӻuL2htt.8}eSKMym^s6"A={awNX<6^ۍ*[{Kc7RS2ڏ!I9HjK]^HxqwdLY]|jVm6wNnwJJwjgR]x0o[A{O&0&ǿ8CPvQd һK 2iAS ԾPr,_f]{GK^ٓÊM6SzE"gh2U%pNQf("D;rK,~T v<,ܬ'#eHY4,CT 鶏"L#tTK7]$gowaww[gP(B=?JDA4ɢ6YdYB%HfF6a%HԆMd_ `d;,j5Oq핐rϽ>`^IYn;2ٞ*Dw *?S"D@.O;C,y?+a܏8ϸH€^Ag ^\_U~W9E2"/Xl6.C@R%Oɬo XoZ( >"ȚЦPd1;`2^$l^qL9NpYU'd ՔE mDoXԓ+!q+ XTKO [De2Y(ei~%m˱IDܑ`ёq˲eԂeYlՊ)^l90HitTm$x:MS9i]Yē}IT:X؉U()0EX,Vhd[jbԬ%г?j…r?jAZ]%bGbA";Hd Xvlz~A"NVmJҏhw,Z&$`.HP'r.)판Ȅd3G偪u4%yŶLi{hhrdHQ61,>=(A(u|5%3RJX`ў@ ְ5F]CAc־BɮM$:INN{aMPodj7Cw6wt5k:\St/ ?ΡlЩuLMns/ ߾=͇Y6m|6jNj+R&F 85^!8j\=nAQR x.)|@&4 zU9io'0Y/+'UR(_+DWP^y'[PafZ~CQm\7*)+WUO*rvQHWHL6??\׫WZruu}C] ؀)J&ȠhϯʀlTqKB@$ nVtVTTZWau,Pe--CtH1:"4GR>w׫Pܝ|vP?ۋA3l80Ph̏_Nw[PV4DY*@3z)Gc[AT_= X1H^ !@xO@}ޫccgvz^Cz9n#z'P⁈vjk=|˒0m5!y ɷo1_vnmC{h O6tO&zM|,n xcգMhu?ľ1#!:0t9ŋvdtεoIZj*7*5 t>B0pȑ+ {-ho??c` + އ:Pt?[r;@ې~5@(dny@M%ЍTƭđg67)͍!͍047E:7n7C8A×nk3zYڼWT6_Kʺm6twNad"vOh. ,zF?7˷{r͚f֖ikuwOY';igg67s\4[٬ifmYvl^9dz'Pv΢wlns|gvY2y3́Sӻ1;z ^Bw6:0ij]>C'Ѻ<8UY(nS2'>v}(aMŀyR?>Y{at # f`|dJp>`L(zZZAfPWW>Ut̮9RoOk4 ƥΆ9$odw~ƋN؋[ 7 _3 68+:Xo,<Q ƒrT5 @ϵ܃O݈AKwv@{J.ᕳFK9.﷎7;X4VZ݇?1QOk V@AbGnQՅƼ!kB%;2G3XzXRC8ψeYe+,#)JHp-̶e"EKHI,I,I-,Ғ\$$&!-Ub..EdFD%! Dm}F,"!edd27 iBRFʶe"EKHI,I,)XIBdidnV6G^XmLn1 S K?=RSkN8tmZϭθmmGƺA-@kYyrqZYw{c;hDŽnnvNÖO5r4)1;{* q 3V)w0Y%r~l0(h!--E߅-EТТ|Т異BG.vYnژUr sl@Z)ЖI'iHnh9j\4e!\K˿EOc,{-Q=Ght=0Þkbl#G!wj ćWN ψP+U{ '2;OvSXn'fn˔g"'tn*'%n )2kfS!~'b~N'D~&&~^`efs9'T)$MmmqALvek|\4ѵ~+\< Sg≛~Q4nN ǰL&Qׅ6Rr'h5[EH‚:Hw:J"r7Y5OȆw;OZGQMV{ܲ{{*gװouawή_(:s,COM& s=spߢ DUGm*'ye#0 7ƺэ#F7lc~+Of-ǀ{*oS `5E[0dk+hoLI֠c|ۍ+xļ6G,dYJ]ACE10N׎tDAafão"]6#KZjtr0&,##Ш 6A]AK\׵E8ZM[Tm?Ǣ{lG LһcvA\c=svWPH֎{~ƕi^AK$y#s$T9W&[d>=n`{G:3oBOfj6M6b^a|m ЊCZ}HN҉jkqƭYN ĝŕ T;?O,zO&9}:Pv' 8 nf숽r> aƶs:ξfQ? ocxtb(Ӊ֖ۗKiÆWq>3ɸ;u:;ÇїIxF\f,_|n69>"1-,?U1]/+pׄHCUU5 iN76;h*ԉgs{Ph@g wM4eN:FEg84rQFbܘbTLpWڡkYm-@i"QLkExL _-" Szw‰+< >u a"t#vNg)Z44$z#*l.P*a36V% nSYV?ƫ bfHH1hrE)z%TPLP6 ?ކR~.kIR:6xڒoCZ$4KcX&.Mr?h܏V~c'c8zѡ$3&;'IP*buh",3;ICRM)zkF}i>LJ[]&XN UWe<~y.cBʱv~3O*]M R\! Rm5#Nt_<^3& H+F[tFU,hmqDnbKGalYm[jQَ~-ZU%ȎUl.CcgϞU#)e8c߂u UK㼯ڏWo17~b'8f,!aYX\24Y!vV'_gܪ'X3xtCמVI1sfپ MA@tS=RQG zb ̡E{>5gFfcm W܏Fvnw/0m;Y FtIK>}/$;"{NgY;Ыu1HCtf |NjAf*Aޣk%# +󖤨K̻%EG%!}UaY@g+{իgCgݔ~I%g#tlܼkf~) [?8Pr %Lx*H 7>SJ(NGb&q11\ZQwDw[rsJ3rɚܲ1'h bޥ@G&CP /~uD C/,|wb2> w~)3BR)N!r끮bXbPZ)G o1 mc8ؼDٿ' >^;vڡCӎny9PuovVs86yNoj& S-mMT$e7KHΔ$&Eg3y$5[ȌM؜ ԌŠdM-ܞXlq.;&Lw7cׄ9Z^zy7O\ys@Ka`zxrK#WGͰ֞pބuJg,0ЖrV^4OuP#HmZGOL#HHmB1brv*x oC8JkmfۍѼEkZRF(Em%IwW~R(mvC!?ҟk~=tq%z?,fpp|#s =CVn b$TeQ`emaQb5oݍhƛ>]΁&- wzmi%2V[؈Xi26ia-fhKN WTl-gpCY2Od3COD"^6d}RL3'd3= +84b{S!{@vSǣ&lrʴ 2xG:͢|<\E=ː*%荷 b@#80d$FeGlq՝8SȁGGh"@y>7q%i[ XٹqG+3xDSg@/-sĞ?**gloPG'Bʣx#S%MHAtfґ67`7sF?ֱj)Vo[gB[N^\ ##Xo6bGni⥛}z֦}zױKX]*q]*%\$lRpn$ c;x% 6i?0kQӏӏR~BЗ|GI.?usQfS_CϪ1ϥL c3?$xt &zS*9'5l.MXJ;3 {I؋,%_"GZ6τ\?ݭLR*Y3$f10Y J ;|Ji']aW" XʴxW ~ - F7xY(8Uo ԧ87_=Atp9. yK0ȍJA< GOB!4 d4bD2VkѨ ?ۭ{h:eݽOeخƔF,_tՊzfRwwtE7-$xZrUҗZܷANNy^a QJ%Ļ(s%]Exx etҰSe X~QIDOH[o\.9ϯW؝W=4 z||iI?m !{xx9~G]F NQQp{M'9B GzSЎ*]zD=<;oqϓ?Iʃ1i =l>5sB|ND0|y|H&Gg\F@s} Zh'NvPb28,{Rh؈9QT)Մ1 |01~bxHAVc c9 SqTݨ 5/SG hJJ m>P"c4Tekh~`d[_G-2Xcc4bx[@,ߚ͞zWPwއJ#3GJCylV}e{>J $9&.HK(t==ӥ>oRc;#kdsN mXU/!2ɰev6l͙k::c\\3;{oƼ{dR%#x!!/E/E/ōňb݈f[M~00-3CWZBPi~Jp9flJU։D%@mXנs B:#5]]hED1]hWXè> AtUH#Ócuu4!B!4TQ-le -dyl+3aiVK 1D,*2CfzXaXxa +E< R[[5 K!76荹0u"""biC4uMN@$!>NHzl*;ԅQȍtK$3 s:Y`'iG˨8TPg K?pQK18QH;;ޤ3.XТ&]4EMQҒOlC,?S!NQ(M< kT2<4=E:~( ĒjPl@w֨\UʿUNIdh| ((.BrYX>=U?^\5e7bZafӹDP $&sT(0p]magB߇KAE#o%RHϔ q.(\%I:LsOjD>*@FPn*’rmۓ?O+;)Q\NDr8'Jz(\,Uj9s)}=I$pR:$!!,JpC d wnx'VZ6'tA4~b>~Vz.}(G}FI)D[*h=ϣDf8|.O/QZVm z>H)l*nV8ɽy}Ad;p,hzҁ`|0L)Ҫ *HJ$ Eۙʙ QT7a%I#9L0RfL3'] 82nE2G+)^nX&3U>>[t =M~,NrdD顴zҭb6n R rUpЄ9O'"Un7;3i j?$t$֢ S0 ~/QC=pԾ!|%fhb i>΀E^ $ ZjX> '^;_ HRXWd;ɲ$ m 3@}#/<'Ǡ*.ƈfF {v,)1xZ: c̈́O)$SmĮYWOoզ|eu'w8X:-KJEMUs#:?:O{?z:eGn<|Sag=OׇP`jF(B1. 2_Ѻ#3"9<x瓆J!$}e~̎slL!'e)*˔2%ewBw2B]eBB C!zX"}FP~RIR{[zqu.@uHvIi~ٻT,V`H^6S.)$vXyRX~d7+9Xyq Ę,3_ˢǽ<щ.&.5JP09A$cu>+88d׷,1/<p3 –AZf Y]k`:ZS/qqz|MZph^hZYֽz{3/aN~'~.'^w3?74 LhFM'™SEcTqM)0Km K18[=F\>{LdKW3UJp-n&#3EM; {Ѵ^6 ;MAMA,\^!MT1nǷ0aw޸?Eԋ_ފ\˝,>Q<%Z$ՖH#@[`?B]2q5nb!Tx%gtYv9hRRE34'},V?ص+l}/34Ki›hxhcOƽ)\qCR䃎Rs8Rk-:\yhWMb1* D Iɡ1~'k!g,Ia߃%) ${sGlorBouBB|@%TSM+^O1,X =л#=57zK,ȳ9oXv{+TB5CH;߮͠V -LKzn`G=֝;>FAIŐ?/|^ @d_* m Ew-Ăt-z{pv#jdw;$R޺N1T UX,հ< 8j\yz dH,8u_> -XE+0E[HPLHV@j\.#_Vl8(`spיtt \n [ F.LFʛj#+O 4 S7α  dwEKWmlހ9(+ǁ 8Ђ]AؓZOJTD6\.F;]>jl'P78u4n&ǂ?AEi5ץtzR}4&GlXXZ!$ӝfw!/)\1.9;&xշmm#oŏ7V:\L<-|mKm rfMkkċ\`_6h' 9ByЧ)m[Dn^9z:o`e\65++j mmX!|89՜nl>MܦKv<\N9qT2mzL2&.N[# ]HBoA7WԌNCFW7ft4+N:ya)'OݜV&0)'/芊 מ)ܙ69 ?gRIUہj am@>j / |+DZGoI}a2sSkǘ8r++϶S"즋#%ĎNBݵHŢG(nn=]Y,WTAq9 Zb17Jӈ.Qc9c [wW>p'ĈUuS7t} !pOi|y53&n av+9pp!vP5)9aE׾faP K@GYv~:{!O#D; A-/@vbBNQ>w/౯9*:^fP9 FVg2$8y_G%਄;W I5LR8(ϬKLQ mA<t`Y`ux3H51Xzƺ$̘U]:jJ0fAf"]!MAJQ؜ Ӏ^Q+h3MWhS1i꽉ey$ %q~8ѨcK#AӞ ZAq4Ӵ?3pPk6y^5]R>9YhΏK?nK${|RCyUI3sd8MSUU2]XTV7bހ9 PXP{8E!7rs1M\3rqZ 0x /osʥ #'<3Ds*Ҷ`x-L,@F}#$[=0zw?-µ謠w(x%OV\_i=vǼX^u xn͓r|u\'kkD|]&wNb!;׺%9m60DeMXl1D1  @s?έoCo@+n!tR\bg6ȂF^s Sa Sp pk79<ܹWyJ MT~߆l)dx]h4o&2|0$MÐ#jP(uIyڻG#O|&BKt+݌e!|2F?qpi}]n2>gef{+>od-q6q8[3ys3x \Δvfuj6t^x6E gY{`'B^cQ `v f %-&0+R.zjgGgۆ=e,h+YJb Ǯ#ƥ9cM snCq7Gȇ-=lC Zc;_CWP1uau RlݛݮaRdjAǰҶ!yk@aV{3՞-4`]7gQ:MG00=$uƧZ癱lȶaE?6Vgܶ67eN8??/77^=<4O.N+<#v#Qvoy-*\2?E( +ly.>{A6gs0pG ,l `ѡzk(ΘyJg'3 !O)"A;B'05\E"srG&L\#P?ŤpHR(C2DH(BRHTY*-=b ۔h˞ );I4p[!05B =x#E=DMXO c 1]bG@j!Ih[0B[H@-$ 1ONKz[+w:]A43{)V 2|Ħԁ9@)OD1(q2ˈ6lb Z~U<~V I2S殎RwcK{+lWsã>fO\ډD 'Aᦐu9oAe['=A]0 *. 12e`@jBb%X1CHXRu:G_g~g+Bs<9CxQ9=.F >uCQ:wAmHs#6Ud(hޢGfRF(b>?VK-~Jk(>u?54U w:y7]Q#^Jv ~u?nvU)׿Ҳ`wFO`Up=³`wFO,ṉl2C~$-:gZ'y9Ua2SdCAmюUdte֊tn]n\t[p#b4nJZu̅\{pDJFBK ^E{e&{q^=^@ٞћ(/N5zIËqZ;Ed5*_|۷豯:;*+Nwϥ Q6r9O3@_K^u~'=BdD.={h0iYAqeV]AEDؘ:杗'M"B8Q IQA ɑ˃xU/2LU@{Uj䃒*FGhL;툌L9H,kP=ХVRN*H4)M&dLC^4^i  Nc^0&4J?5{;'cS 4q壆ZG {%?벩40Gpԛtۨ܀~T9gz2 Emr5Z?3!Lb^&>-RҸ" ҡpJB&CX)4 ߱jO鑄KzGޭ}+D|k kK iDNť5|CIII4rh6̬2-pIR}g~ _k=0}^ub ?OBM+$_qM`bNAp=дDsέ$y y:\L]%s^N%[Wʩm@fE$"qNʖ|=vIw~Fwr㳩P>TEQ,jEuQW]&Tu͡9􏖤I8jVXʎP+Hs8.@+w4:FswBA站4 ®(~7v: ̑j!l9`6&b@Pu;/TH;(:L{*ϰZlG8ZhL5m06 ҳoφ4Wlr~wcJVϼV_z53ob|y;^cw޳wOw).!6埀lH]'\k;&K~Vܨ^Զ`t-=ì5fa)+mo#ץ a]2rS|rcw];pe'}kL'w¾h6\sN_W/.ǕSxY_qUA>_V\;Uu)ס\T~`s pU5:n'gקڧ< v gj5.`5rWN>*/6F eQ=>+_k@|BpxYz^9݂@[ 3LVYa|իI;A~Y9B;w?Dpou`mٜs*ת.Ssi^V./AlawcmOwk?Q#[;$U|Do[Lxt|huPg8Tݟ^ 8 }x(K8^*yXR=G([nzMG:U8cThxě-Q7Ka\BiT*4`iÁZCz6+VO H#_25;C'oC?Z gbN(d2pE'촮 x*i\ L5X7_&0x}-_%ek~Yo M.V|.. ak`) g˕y$5NEVl \ sy`)=' -䬎oQa`q*bӝHڑ8ǝ=pHʑí-F,a E ;CS'sԷ mv`[6J TX7g:}{sDծT~(P\\$[XoA|u aU [Ӡ'L=hϐr=Y!Z,RROPٻmz|[캢ǀ#Cb܊ \5?T>^\O86=U&bF8؁>BU0y Wz4Aڰ(L!S K^ޖvom%H(Б%."x`g*Q|A_>\\4z$v[ZB::Hzl=mgC/QfnHq=Z>lq}ȷ{yf]CJO{4؜q;7iAU S}?$]^ 5Cr:"7xHz5j,ӵ,LOSUqA>I9bSyoy`[@pGW=@hQҥˬrBs B ^IB'4Ҿ @I t8'=YC½m1|WZ0lЋ SFs$g5P.Y> ~cQ}j1]:ȟ\') @Wl |C J֔>zBУ5C1(a;U1ݱlo;Kyu>ynbzʟ7&97׍ }\F_y $N{EmMz8=l78G M:_Fϥ;{FE[8Q%FehC@/057KvOCݮ<r7G&9i4߸};EnA0`8I_T1n{ h&CQxe==vܥo97ƢCK05AZ5M3LFATL(;AO1h*?';ABgDGHMO!,hJ(qvr"™O^sxt͈e'P4_SU—zJl[nGl,dGWDvD(hz8ys 764ILerkm+9xR0V#kOHWU0<0y6Ҩ|Fhr<%yZ^zC x&QMLN+cX<^3ל~BG E=k6!:9p|#)9* Ct73jٲ{{w`N,d4ρٽC}y4dz.kŔ4e$ǖ/́8 @Y,m^|8'x0Μh]½Ucfc&k} h a.;74#'N&},<ʦP/?M TǑ”,Tr4Y4նsGyp +A6-Ph;Ԛ<3kk 7a^MuSbZMR덀:7LH`*!t,ťDB>~R֐""O)VF2#.-oGA3u+0M#\4Fnܸg,?&DxSNd蛔Oi?d:/bu.}Uڃ8C2A8pQ /WWU=1 KFTy:l{憽p0@7vǒ:O&倈ZfKs3&JG3ſԍխz:c-أ1Z#sĨ9.FtΓ2$ ξ;M9׷ݠ7+{r`>4C['.iW[l{n~2W>ը|4~dCL3m tKhxr:8- բV7hBVCzpAm"=2F#b33b+W \)&wn#! Ul KrGu-@ۂz?ػ5nG~nqY w]8^ܤ{\D"ISA#:W[d-82 r['q(b qBF5Jqj uvHw>"]6qAVh&E^-#qo(L"(Y"sEoql\޾. H0{; UԦ'Ũh"lf՝6i@8[;|zٝ~wލq76KC9)w18ۈ8F<m~eP Ů;G#NzEL.ʶ{hhʣ cS}hݣG;xkj!J#t[׈9Vr=aU0ICst[E<}۔e~Ƹ]9'邁9I|EYHTwm+^Z~3픗pGy;x:]Ku;v5`ӼmY:RJYNFpW}l$Opr3|{o#w j_ _A\EuN_̩KOy*N!^'f ͫǹ| pp<uR()#$SB AeTԧNr.MH')I壨uy֩VXp$O~5fv,݆ ݓ5nBGjͯeZCt 50CSP0p5:bF2);yc$fd*/6'_nf09lnR3L_wCp*v٫G}?#sȱ׵5^4ⶊms[V4`Scs3N2)c6{RjP8\5k R9;LyD=Ԟrk'ux'R}\Nrn}J>TdH~VB$;mX>m'׷P d>HErDhD >W8CTl]MwnYp@mm/ \n=w[~˼+3ch\~MΠkoln $įs4ʁ]zBƣ5!LSLo\9Ƥ's=猏B`䙅}I6Q f0X?b@0'ARztducS >ZD~kwarDcqn|`h޾UP9/=>^|EcF21mx Jҧ9;p4+SNGc&HzEC:1XEo1$ $BiHh,cw0W:6XA#i߻ӓ9tC7|[ wAYz ܻ`×Q8ojK6q'9D[HFf.ׂA6ֹ~סy'#oCvb_N;zf,d㶰Fh5; :|ZAf{;THoT*[ +D7dտGjSŭP ~2*ҳэjp7 &L68+jZ}ӻf=7ЀJq'kh6bWRl8nPH} /u8Ux8 6!ȘNBS7 Yk I젟(P(~籆xEo|0Xo@/L LↁP×dh\o~i_|Qxqf^|G壶C0/twBGh!y |$SAk2'J*eOG$U?:%; uߊ!B<}P-zbN^]ݽ$,B䓬M3&),hTeR woHy(X11w90$+A0Ȇ;y/ śV<];ghOzI @cO嚈Иҷ1|.@[(^(E;N I&dg hE MQ#X)Z -yE Q}},nEu}Q}%XTNB}-Eu}-.XTWJQ}},^jj.F!XTW(nT_,`Q]_z_E5}-jZ,vT}$ }K0Ef޻'6 (اRM-.b5mE ݮ8T aR.HhÎ5d)j0nv?yr.(D+ LȇK%Nn~0Ps"fՒ:y-'SKiӎ(υQq]$=h<&PwEk ambT`O\uiRG!_+PGU3Xv*'E!HsNo^$ptE1'h7cY<1Rp*ZXo)m4Y5!kD<`dA|D޾}P8Yn =Npw tAǥ%.$MT!&"LA[ʎhwLV@aXrXo 6Lw{32[;KcGl_*Zp(3=J+EQ-wdѢ[IBOY@ y9@'y42$f]Tmajxf&B 0!{o̢j੃7!'G:xzDсRJ9Qvm6@zuƣ퉽]o}A,"ݳ:zĚoˣr\WDM)[!ؕet+ѿ]$0 !0b0B`Fq=$R'Y:CB& S8Pe 3l=e ͳ!gP<Vѳ)Mbg!֥ )yY$;O1?mROD.>g6F3g2㼏8w -jbЖ"q)sI~3"lP ݟl}FZA!9Tc 3&644}4{0yfF9#g$zN_va&u MR53 CR@ +34.q!1췷-JhIl!//ѯ :3?K2\Ť50ʫj)9L=>v`>\C[GHfY%ȊX"I-X#+byx,xQh) ^̂ť%2lbDN4XcՏW* 8&TrlLg_ sOY0VCYAȳhyg$ = *ePQTjAe *|ǩLFL.Mӷ)+ uVԧ"Ot!e>MgUQ}N֧"OYEX:uVק씁}8E`>mguV٧"OBtz>MgU}YyQؙ {lس "eflm1c#նb,ױM׀2٭emfp-'3\gp*Za)uB'' ]C1-<mmo $0cP؄~ɓojDˋrzQ"ZzH0||Bl02h$< S qg&ހ}khwFu(mb#j/>6@~yu=cWOiNʵSxZk\U?\7.rj/ʵ?H˫JN.6Q=<@h\kT+YmXm԰͏h\Փ+wZ-J*Uj R\>;SPn?UXwZ4p,Oꗕ*~^!#&c\C!xINO0lB +jC ԯ?uB>]\R4+WUO*rvQxW Z+=kl~W)FG3}-CS[@&ϓ+ QI題@' ( KjOgOI^ zefZU2{Md=c(n%~$ߪ}~P Egg;C C`CsBgBsA3gAs@+ȀD57s39d|y=C?)TN %zC1ݻ=knzJpo:v˫u߿7;QUqCfGVk8ndqwj2fcO5T:CJN[6SjzWIx Q^بAqyUTGMd1Am=Ю mpr)|>?w\$*F/됾901GרG]/A { G9$]w[84Hv"&:'iمyL|f%^7F"ܚsJJ ħeféeaX#ciB/ ݽ-tl:[]Co\<=/`@bXRK@Q7oor Er J 2Jo]%Ѝ[WXCBlqfeЋEw-<Tʗ_+O]8$;;BF.n+ju86_TҤU[_6%Ycx$Rtޜ9MKp|#Ssܶm݂fQPi\Vn߬;} ,(brKNt-g0֠)^P{jwv9c* I ,*䎚-s8:d6c .9T@ 5Pc*5T@{|1;E̎7󤐌DfF"54IL;e h'ǧ>v|xe^!m֛oKl0 b'5M!Xi5a|L`WҀg"&he qX;JHcĎZ#LbFu|^)Mn:#j#~l 5 zB{JS[Ÿh'xV`7R=5&E(~߆{vjԩ/=% ߻dqM;E+V~Yك~8·e4 E("ZhkGzYLwȪ++Ʋ (ss_}O"&~_ӯa_:_y֢5}Ƅ--\79eHM bU68`W[ S4 &ϑ L <–~'he˪gܛLxğMNksA 7?UήcxF(4,'-?k"G佱#.q{ݽ®dKdWȈ*Vفx25yUA*ѝPԱmC +4&φk8M4eNYPG&O_`SH4N4b?HL\@l)Ь(4+0 ]1!@i"GD !~\4rmD* ].>N}dTQ)G)iieLil1*~mmd^HGnLCos3n[67eȍugw sc;kFr&!agqrC%Idua#vD/ ya7Ώ %0KWZE|bh_Z_]h]nh|RQ/HG@6Q-3s6N񨈧WaT$Sx%ZJ`#RQUZ;)ΧA{s# A %'9 cƦC]+ҍK/LHJ3Ld[PA2vhw1RlXxAFlN 9 SG*ge?8 zKN`"}k%_ ڿ\b?p?QJibOxZRJKi^Il>,?ކRq~ l-$) }mIRm7l!-;Mv sGV, ʈ&LFt#Gk%q?xES ,0kFb0ԤVX=Z`?ŔcT|`~DBxoM?ր`6LB,K˞Ee)͜Bk^aH P#Y`A2LS|$ЃCwT*SvѰũ۹ ?XN^ nlG k]6G+7hT-FAoM =t;?Hӯ&@qaX\{7ɍja:? a}F8I7eIS38N:[/Ppz3q =OvW"UJ,309y*fbCNvΛh1CMoϽVoeE@ wTfUeSHMaVgѰ.|^6m i#B5&s^kC$[3< 8j\y<衬.O NqrЂuPB ۹@Z$!- Յک!ut% 2eņm?]'輭g]kpڭAr+UȅHyXmdcS/~nn@o#A/uFfˢnܸ6fl^e`ݏHNBa%OjUOerrquyqUnT/j[;BKZoV{ +mä7c6ovd<%x'7vBdIo@M<-f]yb,H<ڣMlc7\U˫ q|^V\U?}ng:)NiqUpݸou( /*:"fU@h\kT+uÓjSRhyypp3, AF>V5l#4Z&F|E. V'gyt zoZ?3E>T[>gm lirANgЫ<_VN{P#+q %9-?r" 2`FN*S@CQm\7*)Esr[R? guz%4ʴqp]RtUk%vf+ Z2LAQ'_?WCQ-ԁ6N|QhH*Ϊ* @H_:TehzFQ;),f0#fSMw_!:vc6vgȵ&Ho>l^V3M4ˈ&wKЩ-ݮC7{ߛ/;7ĦC_ =%2<~Dޔ\;aI>6rPg+q%xF>;H8ިB#8B5*qc'Pc܌oog\E4{>ȣ}=؅Av&_1>-hWBy(TP/qA!3X)L3=h~hh=wX9M7P? |j`ݩA(~ h0ggZ2-P%|'l(w4k%osZa#Aq4iz̈13Oge =وC=mVov$\~D 2-ӖNML+BQX1-&9o&@prG%J>±ȑOCwaו]bQضu֜cߠ؁  :ef1xda4r1{; }]k/(;V'Cۨk"&{>o Dd=39eyq}فxMQ/EQA v/!)߶Cj]?F{>GJ&V;ӹT88y o ezR#F)c<湟P6&l5 T O%o 5 y @r:n6xF~>#o7 NQ0\'hQmlY {T"6z1 @Q@T({0;%RD bɽٹDE~c[C6Q&t3BPynYoؽT\yυ,S{;zn2 ag+LH_0)~ob{Ł+\YOvMC{M6"7k02MI#['g=`طޣPy_n\3@v1 N^W=bU&F\=C0{꣹JU6\l-F8eK: W2~i?IF30HZd~dr>tq|L(RTP-maIh'y qy"e~f'pƎG"t:!w) A1JH,msd:gvK 2z7w!t}NIs<m=2/Rg Ҵh0ؤ$vr/wyX~zȓY9A#vU #cPunNik~%#\5+kSU#~ͯ7=WNͫԁ5ʼn f=I´Za-ÅօSl>V m^ V6;2? lR\JjMAxk=t4T$KIڼ;fn֙fz%5ӵ}:\J*sQuƏYjkͯU/˧"uR%웼TWЏ+%N|.}lS JD+AR QJRf}/y7?w) p" ou`cdtT[搒ܭ=ǥD-tbIIvKx}ا:9$l]UʲubJpZk´jqrΊEWYd^m,Y֞Iഋ4u2\TFqy0YT,3*7 +irOSgB첲c4?J~7gw6WyI.avoX'ls]jXe7'6} 7x#MT{eKؼrƻp, z;y7uC`[~BNk7U;]][9W wtfs>bsX ?.~ ˁ_Br\2`V.$g>Ashe[翝gsH5n+1%,m6L6тB/Doo4y^sӁpThʭebG!f-^' DV>>2m>M̕"sX]WE,5I}XDJGj_U~o#ylʰ3]deي9ͳ̆,&wyS!v|/s 5:GJQ#77[OPm{Z˒.yلUZg]٥ dN٥sޫ.NL/4vK M/K,?eQup^m=!Z=5\PX74D(,\). *dǨZthF*ژ*UհTśxD QF}L@WDKY:eG`J[5 *WwP!5u7mKCTɜ) Zvҫ$6Gcf?Iޕ|k~ݗ # LE\dph5c^:IUjBj3xjlpy] WAJ#TJ-fR+RQ8H 6B VJJ]8}IˣeZ̛ɽ|3l&fbo&fbo&fb^?L2"sh]eeR_UIW)F%"xms$Le2AJ5&` 6gɎ u|DqcOC녱4/Px;xh8.Q(]8?'iLtŘMX mwt])mV*-.+4be $'DlC N<12ipIApG֕ӖI kTی3sl_ZM ZSUROi.ߺ`MвMکh唾lknn%J-,ŘfK_.xzbFOj2=q''~m[%8Ǯ/Xvq bm&\; yHm˅ɮ:ZC#L~yVm4Koh۝JNqŴoî ;+7Ԑ<IJ p==RspcC˃RM;z[5ӄln7 V@0h°5GOCcq73?ϏB΃qWE"'3,I","2:MF8*ߑ AnNHr'}C.ԿTʧZ<<:$x8Ш~|llVߣ BBˇnmh{"]2M~:ox3ij[ZY7i`FV#|C/;0R붢:'Kܶa17c~K3j1AWŹ /ZON!Cav<9#ĉˏ5Bh?ٗn˝k؄sNvhWԈ*ZBzEw*랦/Ajvx-+j+Z UWī ^uEڋ?[Df lVV!jlVV!jlVQ U3ƻ ^uEwx}ī^)Z UW+_eIQ])Z 1^v{,ߝ n 0Y7 +@.Sq\K\U؍q[QJV-˿d?UK'QW-TW-5KTuWRyђ0`^$3'a.,qD:&Z1Ӥ;rL$9K1o莥oi>P=أ 5JT}Ho7*5d~J8RPeh^0Mة(cO%*"Pޫ(ǖ ]=ĆvOGSxz`##";^kNLYkGڳxp0X x#o>c"z1 5HN/ӉE 7@X R{oHtR1]4T,4Cud\ 8bQ#r,|7P YkM0vntBCC=@܍Dq _8ص=Yx4&'עWx? : HT1D E@k[7; . 9ZX6KZmiuS8J9I!PP~R| $9*]SY=.#k9RC6撈+/ b:kqfyI~|q9O%\hϒ9򥰮ײ"suJ\:>ŷŷLS0efyj^Nh_\(ǥ%Fme,l.\Yvd/ {޳3OT$ML7.?CJJqRϜ!7ViS$9y\"aEoh`mgҋd(@+qf/ɍj2qq8 ?i vEp*EL.+ +ȡ)s: g):ф-B6%ŜT[IfCdAo~Bu=j(cq7k/N\JOdؓ …†_U~UuÈ*+\*uCɚ¿D p7F)07ƻ FF((p3hDFA#@[[[QI-"DVꭞ MrjSIr2R({@1^şe^uN:۝q;obeWP-o̠koʼn gu 7R{f ^T\l EI3.Ut*ET5C'laodž`ry9|FȱAU Z<\&o{׃qGo|F{捏ch9=Sr+= |3̇m!f'cy%AG!.GQ%N[V).W 8mYInqu`h V\6bdYrAY֟R,s.r"*<u\P4^r`('A֨-&&]"*MKbтD>\U3'T'qp:XaxzRR}o^!܄2w]TI:WƹwEA/^$6x(7:A/ҍAq+Daw#nt FXzHBn l$sNSP&sPpHX܊dO'YN/,N%^γ"l6|Ηsg>xdҝtӸwp΅+x~~ysbtw]tet.BG@&|X;{ tA: R#9$sjR3TvNw4?\egzxX)e&2J`;:u ͠*RMAD7B+As m=C#Ewjw3KSX e sR/sx/͟پپ˯|_*9d'ۍBX9t]A;wVgܴ $Y?>WHX,fXlx=}ztRF߈̬\kц1PEFƖgïl DOm)\Oׅ4#%[1 3h(H3%3`E0/TYMtpJ5[T+b*|%M˵lD 5K|^ -}xe,9.9PW{2Qeݿ_zjwG >a=`8Ju^,͔SQ5RkҍTYj:leo1ft*p^5wPH޿^okŢGXWzFkٿEu\{)ܯ q,R^4ZRxugǛ|utݥ?Xu&3I')ܰ8W T+ {#*yM-)6mwh9YdRq%(SŜo?$c.mcrڃlO;h=P&{<5j4BTKq[~mP QHm )Njbn'/?9x:? 敘7Xȯ췟\)s.)?eY6=詇EqDg')_zMGe`S;\e:-VxR'v順rgxB'HF"tԃzet?\;aiꭃ+z>!)? ,ťw@y MnaZ do/B7qU_5k5FfcW8+f ZNR|h φwX.!Ǵd59A֤tw!y\_L]m>Z=4$_5m522&fuZ}Ħ%*6E{bqSiyR; lq@c\nh<8HOɑaº)iTScPШ @e# }{0pJ ŁMePmizIk tSj@[V=C'iꥂ) ccDՎvpeUErBvj6n҄%h4h [ұT7qFrk. >UAwʫjNq%eKUr1sR'R}0Rٷg_Kq(q.>NR|&]VRL97'>*Yi$fbU0+{WͤLwҞurMHsrMHqrMHorMHgLf?GƖd;[di2HISHQ[mbTQ#+j˷J~m<4lmH0UꍅRxfe'&C&02u̳Ĩ@`3JJXO푬{hGQMHfJG+m[WidoGӉ9ӹh7xzN@1O>aK! TGuhܟc䵄"4g:;zlv۲̄xpv(l D˓`gUЮ*lT6cҶ:UfΠyM-6GZ[)WD\GHаZ\Cw>AX^C}r{ZۯF:2qvRDm6LLIbIdI&?.T%榤`J)ٶcyT@I`/Ƃ4A_^B d;L,+iJZ &)Kv^$֎͋؀58 CRF]ޠ4ƆJ[.MB@1+F;ϜH%UQn'Qu6+n&{ B,& [/iJ}s)/zFP0E:54p5b P[xdR% =U)Xm1b@|5"H&Yf9݇qaVxzy:Q_H,kVu6,$l luv("@ @ -d^~]L^^fԿfb?kzun?~$~JgcPc2Vf6x$ *IKe `Qu[P +@!4\5l@W+USbP &c˿HNW+C2+C P@2T*C T@%D T"P2+C @U(Z'bK#$TJt!5_I,z@zMzOnx/ysZ(sۥT Ƴit %tq,4Y*Rv%-*3ϝA0/ n!V4Z[jl,gZn[P073sBVN` c|-G*=яFHzLJk{5T̎g5_'<7(n nidF%Oat HcOHlgG8($@N͜NLε(jܟ{.q|MXCPq6lQTX;f27 W?_o:G1m¶K`fqQnb pیV5Y&dY2mNgۜUfݜ|Tlg5Sm+!4t+ 멯u%Vvp,YR 5?oq9†%reCRb(Y5YSʬʼSʼ3YWʬ%i>fNs=척/ek?i gwDN*ԯ584esf`;X*)8K]qoCcٍqϠg&~a|hpL^hpN߸w, '%tqrth);ogel5,T,/,Z ApV~)?)D5@R+˖Mj#ݎзkY;мFp.\pYsE0e & 1 ߹V7hnp]þ1՜u0Vtc~828&)Cdwo/O ]\q u*f4rW*2js`rvx|I$et o`6.j-~c рK(*퐔{iARqSJџ̆Jcj<\ %/OU|^ ^ @>!ZȢa&h*IpYB)г`gnT1wӟecʴkd`k|`=;@9!$ plؗUn`1nrflGQ#[T\TʖA.eO34|5f5LqZT9뮟:·67~Z]^lԛg)]ͬG^Bń;]y:H"SFqmYv`hX0s`?8oDt U??CHBl)@Ii ~Qb)#YyNꮛY|$͏='Xx[vaUÏ:"ȐBEr-\ 5xt4\5ιX+nx*gc4grNFzBh)GU)gAMSŃ9&uQ+~&xt@M&T#kQibowRTB.4jGB@̑ؕ.Γ6qf>q{:a΃}PfxҌ/m!Jz%MQ1*וF$ ڕQrX̠-UbuiTl5,/'|24O>iO-K4^6A͍2ѣiWnjlJ+ҫKfX7pÄV(c=]R{c.Mtj Cki ,&<#LGӋT=fw*LɯEצĹډ ] Ue rn7%?E1v2^Ot`R{/|VbcfY s9V"'i_~jsQmCDG8}`Im<ԥVѝp$Ygqi3EJ&,zGLavx졾M:GK ?'FQTE4y5li99#*ˡ"˜"OQc*2sݯk:ˀnppq}}˷Qs-^#L hp'N%ΫWدej'G4S#$h txq0Z5Y CwC~ߠHOoYo>MM *H!зwH:@*mrޯ"6&bO8Էط`|wפBeéG<k﷈Ɲ7*,[L;a{y+᚞йIG M_8V`Z 4vF 3/GEGZx]rUDv10EM>q>t'Ig?D -E1|w[jAK1bmE$wݪJaV[I\X,I)10uթzH1MYɀn6!ߙ> xE,!l B-!N{a@ېu}MEoބ% 2=:q]0 RlđH?IUjA8,24Ĉ.eΠf0;:B~:YY:u#בՉuD?ڍC x6czv`;ꒂF+v r5o^B훭edwȦ ˺}q{JQ5, WJMo 6XrC,{B5W%8ͭ/y1@y,+gX9?Is̍6줍3}m+s^m|m3q>]dnJ|ND.D>&$gZE.шO!zcnId-!$'$Ƕ$ρ=TĐKY2%ҼBM6c(Il~XVIթ%dF'X7K!vn͒Y27Kf,%E_˗fl( 9̒'K>s䈡x3mdz b0GKw/f(ޏch̭}ZPŻD+߳x7/>0->10M*FrRβGM~*QDJ]E.ދt;nCD ȚE8 i7vcąW*V0gS^Ԇ̹cNa6G0f -2c~N+2c4+2c=PؙydFYFfT۞edp|:gj7$s)H6Ɠx1-LUF葘u?Fb葘 Mj.uIb9B@Xķpx@ k;ӜS Sk5WwT&=P$.0%mя4Gd F=S=6 Uyrfmqc4>8jdx)T$"fsVY6N}`xzUS"!I}efJsIMy%l1 8comgRN"oEUE[e^7+"UHpI;"((Ih@H[Jt I?MB/G08?k^3UEg#be@ VzlE,[G4X} "VEEH:^IXVbr"V=uQ}.6:?k+}W~F@}8+Ws6\b}Vo`5(Q"Cp A^ nmBnCܮXp}IkݹDtABB Sp*1{ y wS!`V4H^>pG)bc(҉mOUD `;7t;oy0cŐԹJ0Dneo%_ E^, ԬB-6- qXs(GmoYߛm VPD/ v~Oƒw4nߝХ_.V騫.=R)( ,Ecpo rv"v2qP 'JdYnń-RAU+"p|taP<:x':C/ [ _lXxXid@8ƛN=@iPjI ӂ."'ۢZVMUBLfľ>[܇'MA&(#0D0,)/X{HG`p|^M0:n_,l@xޏ V%/l'zn:Z=r?K, }Mz`vp٤K]'*oKB2,@Wrn.+DDʉ"w _H{xn.(u8> ²o;8Ͱgn0c52#;y< 1hDz᠐Loŕާw}@"-QkMڄ=8 vcozĪ?f+{SU'Z6+#~Yo.8٥ ܎d&~d˽^b1Kjtfȧ&6+[mA'Kpl-J˷ xϖ-sutoɌ:vV4lK[|`V4tYxM3w~J? t18x8Ƶ6rot1UŊh/gh9*hN&^V@sU4Мt 4痌6r+6&>+Il⓹I~Q-⚳B*0 ~d5i9a&* rlqfuqڞA=uO69$|!G]D>YgogкM7m xl3M5ny1 EU.2eѶ ҄@1 !$&=ILc &N?]+2(m&yYFq=J o'#Qw$Cwdh] $zUphp[^|n mOnn.bHD>&Y0gr#GYQqcAd 9|ڂŬsh_YE"|~OPz &{%S9L,-By.t0R5~:) ~augr=2LJ!(:r4_'S!-5 ޥM+hzQ@*L[el`r!_vFz[Ds`.Q/dRHED> 7 $xTjf i`e&p9ȶŲeDi9 =ςڤ[T y\و6J#Q@g';b M(m)k\$;l3T h]q\T?ƧBl|^k%@+a7M|7*/e3Un/xnC'?S,r3DSɈO̅$+JCB|3&1\q,C&D*=~sR%% ʗoc/AyZph'wLP`{S!B<&7,Ƅ['` ~5 ?b+/_.JM+LEn${]'(Z6q8tU۩s?I-ND:(^`4?XIRHZ00r1 Xy \dע)]1C% )yڒ|PsÆM7p;j/R q/4/涋!SŦGH5_Abs4eJ'zu->(z\hsmЀ1wn~$O(/QrWl-gA/ѧHE%JAhP{H#p?m.-Zz j!iD- \_0).@(#aZ.[J9`nD7;0p=:DE! [E *:v40}Au丟t ?X6" s ߗŢʧd0٦N1^iA+oEƁ( A rM&N='-&j.%[$`J̀})Mѽ_=5SNnH qz!qB1aGְ %^89 G-o Q Tvcm 4-9 ˴>K[vDӟCe\>c_iX{gn72(q1U4~=| k#cߤ[~grRYd~yPDB"Y'a z' ؼVX)R8X ^yf,->&ǣ{?_$ywy#tF@F~\ׂjaNI(JƮ) ;xW;(Wre(Wr(WEJeTJTJDe(Wr(WrPn,ĖFIt 5_,zA|M[:†rT +Zsw68kzQd.%SȷaAc6YNB0e(+]EҮQvUD% ʆiip !`MU62JznefA e⺛HHylGJEL̦BpIρyB1ʡWZi16` ݳZ \v. ;v: v3Ο 2Hc;"l]L5oxK}*Z#>sw3p5T" *@5#Kl LdIq+M'w/w w*wz,w( f!K^߀EYܧdܥ.EW+X~^u &s&.AF=5%%GlO}h.dqa|q!&?c;mZqqs3J$um@h'L Ne1 Da.a]D^b8{7G6VH#Cj06q;_9_Kd.j)Ӥ}E㸆Q`XXeN3a%ذwKlVj'{\GWpd+czFf=?y0k|)w ŶA* U>s~"U#oZzOsK:E[kЃuFЋO>qns Scg;uZtnˀIΕz!{4d:_U\@'I!һ޽+EOeQ/7z:yIzF#>ݤ"lqk^#r6/Z/}7fv@pyZo|;?>8!z]N,jEä/[ }+ g\7)7EzGtgr긲D@sA2$sA2$sArI%BDN*4LbE26Melll .cOE"8C酀› ;xĽjg2geRnqI Al;Q\#8 3f@>#́AeV+x]\Inap5;J4q0/U ,jd҃:⑂I:\?aqe2kxK05XU])nYZ]( 2}Yo$laR_!j"5~喵|Tn/`*gu7%6Yخ7vhAͻ_ :rLuP AzH^l|k=gOp2M,5}u/BX a)i^.tXU)-oIΐ+@CT= &ͳ1?J_smԊ5<;e-8FD:(,႞_AO@^/lͩ˯d%؊b2Gz^ɉF)ZK?EtJSOSC@8M_ezӗ~:5:ݩofO!L_…jb<&i56,79j!FI;mYy\9dOMi^#in0RWs"hnʝ!y>h)/0lR3JUL Y=͚\ T&5D&D|"fCㅃ-cKa(^_G:ۂE/Q JGŒ #n#<!h<19F#`~yY]5{lvcl%ٵ?l0:,h|a/6(–XOyރVjJ&-'Hx-kC)էԦmsHpW+ejpg 463G~\'0c'/ >ujK _!7nc+Jӈx6BCI>:j(F!ZqPפ)Ah`*/'zzXF7fa:v$ܮc ʇ0,R`6堀Ėl=}0މ; 09J2r(%`WV]%E9 S{[jfT+y(7S#ttv̵{]h)ڔ>F]>VvP%(3:K%RSqX' ((e<si0el<[{ Љܲ(%l%*AA-B0~GZxة تf&)ɋmtP\,ZJ|0рݕ U 5Ckn1fL*$rA"$UxznJyw $ܧq| m77g?& {L{{͉^:=NF|n޾qeb]asdL~{󖈒H~{}up|x($NLű0/o.< s4z!/FiNpDs.c=zhncNz'NN8`3*PCpS6%y nk񣖧nU08ԩUvew[W=HdG AGs5%iwi9<)z=H)gv`\Rj.ܖZŒO)dד3QI«.>(g\"W]P5xGkP#"_'fh%?62.yݿs\MxKwn |_`rQw`@V-nZ)UbEԊqsH;rq#1h֕I_ o^Lװ=)w@*8-t0L("9la{uۮXsَF IOǧU@{gݘKWCt@ݕ̹"޹#r`Ir0ؚ|N>]ܦ/%>]p.x=(@άάf t}Y:C-LIv&1BPD;B}ؖx0zÏ]sD^-SDg R*"s'wy"YvDlADxf ra ۔;ADlPo1fFV!2$=e6@΀]zn9_M%U q-t=ZQܹ@i90_c0d L'Ƚd&'Ӊ lzzh-ɽf5UT/K1}al*FBS/J3Y!;}٭׫<=e޴.K#+ز:B/P!̿,h2GD@Cf, ŏm5vi/S|utCX\4ٖ|T IvtRƴ>b2aw. Y[ڂ.(o-ݢSйEmp}thp~!!AB`2Ma&g3>>`08yjPc?Q}4/\zm4z 3do50G5p}Ý95x# }0Ud+s{'m-*as[J֢Znk==G*ВNĘ -ӻ=\ҔL?2l5 f=j gGx$20y$_NLyi0w$z4/wr4Yj;yRi0/,f3M1-X-{K>UoIyg :nPɫJt+5%&Y:CtS(Ƈa(S)#֚_??Sq#i>n>ILIL##u5<]tmO6!ɚ\\|-LY iIG\PQއրwqi?Pw)T7f&Ҷ<%7۹]5If󺪟D]eX\`IY!*AmK.${V2צܸnwGw(˭eޝpEݤs~\v!G9^:f/v`'&~NihId))}6F#)o{g3'$&HgsV{JWxz}'<|83m@l9& t mƜrw2f% VϿUjuX8Q:T8 -3JBgz]2g  .$DH>Ӂ{4IL"=!V:O~J1Qf4m'zĕaf/ #G![4ɼqJ<}3B@\$5!p HJ8c:Vc:I)WU'pDާ_kr-m,ik4a41,IjeeSeɋfoo?a>a$4 s<5+ڒ<<Ѭ\ͯ>뵏#ϦYJs}&3)~{Qsodza/Uߋm󣤭Q/ŧ 9% uvO5^Q@t^vaDEA8@Jw L5m T|8W V$z]]4 9GӒCY.=Oۍ Xz`o#|;>x1hopNjLJ0Ǚtj~ԣ?(#qv4fZ&C38!4 6Nk獃F ?e/f {L m)cbcQv7%*+2ȨQVI%WճTz?#gz~];N E'\Q,o niZ ,,ѣ\|v?M|N}~wno RXiHZPƝ3ЅT-<fclĩ6/Ò>Vloez-津[]9y,O̿όy6o) h&1e)>8 Fnr'"h)t)eql^||Faz ^uC8$?dv8ףiBO%RX =[AJ-}A\49>\B9q -X't@F=x鴱 ĮaДߨaZô𶋄鳄Πݳ.8ޖסt:r;lnc= Vi|~:>6NvjzNzC ػ5ٝU{AYaФZjШ!fQ [٨z{&x _ξv-#r&0eJ&0L`V50*=ƄT8Jʅ Cʢʅ+«zU ]1G1@%H1!]Ղew&k%c ' ^Kɡ @`t:.Khղ4iQHt):Uю u,aLcЛckcY:ØV֢ ٢01=m\?ҡ|عryh44J<ҽ]ruLiLNxM3?&W̹"fL1*M(eȩ<]I{~Ǘq4П {O'yq -X_&{6t*hj>V< UKLfg烝Zh9KM~GWMsq?%?2a9iN1Lstś7)+oS54onMsi.7"Ss1aG''fLWFGfN}<f-^M!G- }Ʉ%/ |GRWˡ:*RSeE*:IϣS |bNҩYpy4<1O r FR)br:5]:%5tLHL'|wH`+]0PKAbR- rvuIiGMj'{<("DIb D W-:=綿t-B op0% yL~> [Pμs~x9Srÿj˷J1ČtsQ~^2 -vnAvzE6>B RU"M8v=`8IZ|2OR)өeI9մ,0p!=jO|3a (R$~"ަ|1v. Bh㿤E"=uw,@T`]1 a+Ј fE Q:N ,`,ODtܶ0,rn^=ኻ jꬭ5%fJAxrR]h>옭͋pL-FS5Vi-u>;- a(3y Kѹ:V LS› {at%=Z т-$M cE.ȶ GZyreCZX/yZVQǍC1EҨNm>yODiBf-;[-`CY<~4EY`u;dpHlg"Q1M}De[Cz 6mDwGGo]B#m7x~4]r1my}k|zhvkۼ/@iz-D/Y{|xr<YaK `^xC:j.0#r|;bͶq?!V2(0Fa [ HP{T۰24ګ67,%kч`RL1udX:v|< !:9ij#۞PQǹ-%w>ya.<-OKͯ$wҶwҶwҶDxqazWI/;Q#Kd.-bxE-FK5P)^/ۡxoTLbmÙI?f Nk{Lŵb,O\|TQ F`5~Cڻj\9tS*(f/PyUYye:` 8Ee~qAa& +_AH9D>pSrءi&2xKz}ٻtTBJLt 7~3Ե "MۦK}J߫R,'v ,Ƃ1g3v5mou]>iFcl*#[ RNRuR/5MϽ6' PϼK5 U[ \=#ĎFw IN,TЊo9ap * @Rq3e% tYHl˱$B跔m6^eUi9Iקz Q@@ý P#T9›/^#2 4f&&m5}Sf!4xp{Z5"d\ &|=*.JY<h_uBOeb4+0s4{eub  o⸺J"ReUKL)lY~eQ#Beѣr3bާϡ!cVһ$Gi=znap僒033;ɵ$k.z}rRbIz an]]a;G BS`:̯oIp踠/|z1ӊō9ӹx"ņ2RϝoG ;{9&Y\s9sRhVt+RCF丂^UR7ߋ v6yLCDv@dB_5x vg5M?؆-:,Q0ӔE<,ݳr13=DV?8A^aJY>yE2My'}Ѻ;kOY{Diwm:m^Ti vz2'z"6]ʈ/Ҥ8gt]vt4~3_z5wL?t,~S.Py!j T?ПV EEP,Sw[ϿrybK޴v. 6z=.>>\%4/\aqKz|X'd%JcsfgCJk%jEQu\;ꡈ ﱠ3ؿB-CrZW1Tx^0m}SȠN@%P>+-Zp39CCxzF S@t+|ea d?%ɅwVJԋw["c"*+@J: >KՉAsd2?>-$Jx6 L0R1a`|po#y,N,# Dk_1sdsJEz{%~ϻ}y#FTM%0Fc@F~\ ĨGS"If,/%RQy*re(Wre(Wr_T:T"P P*P w~*Dxʕ\U*[-QQjD= -%q#cK&@jS&biQtiJ,=zⅅQ^W <`)RҊtRj(]^P]iZ:ƄzԹ^&4~ "Jq nhyΕ߁Y: H@,m;@emUR lb<%`n3+I_p΢  7P\+n˽;߫qj^¶-\*R\Z-*f}d]_FrU!Wác `h+yCx't(PgҺ͉X``dɹZ#W:%qRL4}ɳ7MdPG]uֻQjA=m5I$DǒM;ZAEVC1c&)Vc f3 vˠQdςv<ǀ+*: tRcȶH52nr.y+/l~!#HWw+)E7[t)goܲBhPOK4ky]^^E"K7ƴN CFLD!$@.6y'44>RДvASEhASd ^AД?LДΨASMѪ0K@vicc H2l)HyNTf~'$[,9F >>(*,dE;<ʟ)bk/+YjTbkƴcu?3<ҌU20c7وHؘbf22D2װEG}A|q&,4?.ۃ< ,pxDan7+p8}zv7w{tN}mZK8ق0, ~ /Ad:V8*fla1eGL'FGxȎI[kV 22e^=n]J.AtӇIٷƧgU[0J!{F\}LӕiF3T'=C`]LJPrX1dNk 3eH~ŜGƭi51 j`t$M>PgczMSFd(t;<[l 2$0%;Ϝ?kl"`b?o>Exq1/!]&˻jZ%ʜ.tzv\F+[ӧcD&lr|WlrhzѦH7hʶԂ/I*bR+`5D)2L!:R0~f4(D?P?$ Yo9"!>2|LsS*jʐEQ[h:`p(& _ @iCc&޹,ޏÖ=z+"4uz@C. _ k-7|JCӄ@|AOC #umfz9!~ p޻.®#Gd*AlĊ?*qzĊwqWc"8v#Sp>KXʾs]9ɠ |Cbă8EznYe%CtN{4ГA= &Mޙ%F- -TV$ˌw}~""T|;~@,vdf%)uGnvsuJݼJ.J9S! 83Tך&hg1jWAsx\lE@82@q&g-i4yH}# oBGzv8hsHĽ& 7i߷ɺelȖ+4Gq՜29 Q}.GrTN6w~“{ '7=U\X1sI#K'rB{?h霱N7li3aCx1U.^=O;n9gvH@7]_{.HLoniJ Z5v'_ ?g ~=Ƭmz S%ݖfS5_X0>+ʮe([W)kE-eo<.:֧aK1CO~@u&M~Є΍;.6"G#>-FoDxL/}/opP}viK+֭spUdH^Rf]~̺GȬ>,Ft:0=ya}9`$go1I67M'T, d- R6rI0LS&7@L'OQ%qt؊DF/dA5#-iܯ @٣Ig­Gw%pmCgЀAgK6` ̧Ax?`RfͶ0);G#EL:L+f]$;p~:wĉߡ p = 1=@3a{uۮX(gĠ2l{нJs#泅WV;8;~f4̠`;oC:V пfMYO(*#oB{U ^T&M: pj'Q&c)YnO|>Ioi(jٶam<č0. P=zZ5cofoٌ#&JNJ(ϴ ^fdv_ERȃlp[ʶ`ʹ%N-U} -=&HL4@J\,|$.Hy05$8Aco(Um(*yC7|'=hzjOznqI%dtbY,6swNiCbC EӨI%Lnj[vGT8BY&,M&/L 1&+-2dyHEEfUJˎ-/ &!/@J\T&eCr4Ls4Lsqt:h.Bh.JA?W00΃176ˆ\(3΅\({BYn-̭DP2:W"L'Sױ@^ͥϧ&}lҧM̍On ͍1On ); cc,KK /rwn}t#͋/u ̥]els;33E옲#~jh \$%k%N^]l琋D ")uA4]{Q,tAM1 sD|r̳WyV{_L&q.}.}.? ~b?}.~L\~乷ɽ Q{DOmoډ\;k'rDr\k"3}dae0|խV7GVgbaro'Ƚ97G95'$ל䚓9:r\">6ڔM1MLr^Iv8ha+?;/}0cȂ2 7Ho܇:l=+3#+v!ڰ UYZz:愖411@0p`8o; ʮ\8/^s`krP;ڦq}g`+َ2ȷj&a8k(5 lhy&XxQ7QqJL$`;-Ӽ]UBܔ"ب):f5Cg6Ruru-@I>lԿ~ڧ=vcvp?/+pY0Ej:rn3Aρ8vtlaF fޠ u=Y)ׯѸ} miKWAAq[} 3kE68Tۣj ֐L.յ9Q.f|xckqNG߹F|0ȝJFi xD\ ]b*8{"]~ﴐuU>BOO4:xB.T՝2f\;Q+ച#^,~R70K=6[7G(EIh}8dر}hzoZ;|ȧ8:$%`GhIʄLAe!o0ejcLTAQ*0.P1ݝ"<$hKRP$aR{IX`!b+fenQP@YhVBڣocۂtXA}w`Ny`O/ i/i挲|iȍ܀h yTaQXPPr2 /kD&P(/t]RZ.*4*.ʸ 0 L>jc#Y䃄q+&*X+=^03t۸PY ٸP ߞ}F x;"d i zmxnP^/s;3D.ejM /ҹn N_yā!TϊNL ( ^p"scr,0v 8y`C ZG?TO.E*=J3et/'}m:OGΣq%$&{GaL<:fM5%aܹ;Om(8^LN깬깬tri=;t.r{Lg$ gZnbPYDZ,s$]x; -Ihyү`hy4Χ$8hyү]:<g3978GM6h"ġ4|v!H' ą +;q mwQ箼>0R@UjR{јkZMS{gF2G\o̩*꓏tK}uv=uk\Wv=׮\;Wh')Y%G<ԧGN4UhCy79?qVcZZLd>Z=tU> /$B ޖg[FiP*}+o;lxH+;֌e)akNDR{\7r%fzG ʑD ٔ=cİNh`QAQԣ=P 2$߀ iF viζEX,m\3D X׳j䴺_=F/;(q<+M-L|C,96SdN3'=q51P3gEQO ƈ)b3+wsqH<ֹl^P#^Avfǧ)g`Xع Hd!NqgXCT}{7jP.Xdž$ɾ,ݷK*?>왌sRF>)HOf%HJcֲ#{jloBm_WFKevtzQdSA1#Le},gG/)Au{{g2&f-Bgw $oHHIhai0^8!ZL oxw#]T_}^_@ph= %$ִ4+D^\=h|<<;N*- q(5|R cP˼2ŽfHLBg] w3Z# D MžFX᫆f _/ӞZ>>}N8VPX1Eqqh(ekT+L=l[g0S(VQxB# OZnG [$p; v)"m۞Np^,+L0B!dl Nk{z xq祉,w; 1ڭF%4Ѡm8J?Tj! hw}=4j_C ? ?RV *Y+c9DI1  3e+YVJ>XKV?%WB|(\UT}GV؞ O9eliz@*00.۰&a#&U uQ$RF'aՔ?qreO(;،e>P)?23q {isw `XĴO);uPV1 ٔFo0 uxi E6.M_h Ս@[Gk!3[L/{GW<7=n ܬP+!;wG@h$n>Gt"?33#ݙq @~jHO.vwH#$?B2a͕Ѳ8 Y,Emna/^tZHsV _^3n ptHb1 my@!wN8}؃ ¢bO%~˻4^8=tzElc5wvFΎ?z\*Nk/LJ3[߇ǯ|M?#_ONgg[xnV=ܯ~ݯ?9Qhz5rUOk@&O:SrJppQu :߫sreаNczJ@0iu}:,^ Z;_|$Gaװ<,Y /|9OA{Nh.$CW]vZ. Wڀoڨ_|El+@ʯBkOjƻv+k{+vwWJ#pjH[Z!f} 6Q%bGD~cG͛7uί"X >6@RNkxbmo#@FB FQ`HK+z.^;k|>av༸vz2y"ث} +p=AӱբnF()95 {˺8p'a§wV߅_ JaCJ*_6VKoRd}ga.Ϭ*_*+~/!:ţ. Vm F5PX[[emm_V]yk#0jKm' j#Z?^m}=D,+"p+F?5EL)pO<@m c>su(RNjoY>}a}@곓ЃZ4-lΐJDvk.D De_秿ѺjAJ}0Xp>)Yaf7ۤqz/o]*i^WtX uC.^s{K-fir>,&*8wiLahA15+hb ]jeu\AaR"0}} {p/].Q"?l儺,AT{,}m¢[ K>A75.GZkJOS]♜d jMWDXu O[P{Bڶӻřro(e^'Ş}*K7tyFhѨ|2,[>]a#j2 [L,GG79m1,XR4VNgRcl(#MjIy]]HۿK$dhzngpBD8R0Wh)> {N*񑮦0582Ԉ줨JVx ,Ш\wʐ__2pt|259)*癩ʄe||0pkON%NfylhgK移x_S,cf'bg8}h[9QCߎog~H l/l EZyJ;[˴TjžџM֫^Nqא ns! $d v~U(4S])d6I4:ɀXR^6J~Ja; fmvT=kKSfl8F.]dH3pRtޭHϫ0{{N vw;!M0n .\y <}퇹F[0#>cclH#->VQPc&̋"=x/s"7'j+cˆأ)ES=I?;""g0-ґ8Cc͎:9jO<"ol֗JW}9c^4iLG&5:n]}N'GiqrTv%,=h3;N^͖3:Hߺʔ?m)7 RŇ ϝjBTI⮱ʳƻ.7V#LECInx2Pj V 6y qVH}ۢO%=! B/ᴊ 3̇IIjtS+fo0]0`tK_j(*L:¯3c/)mEr!ZXPq; x>y4y7]3(6 {CC{,%;JɎص~nsP抭DRAl(ot]{j]Eۿ4zYaeX+Z,0C)ާA]}-<̭L7Dc1V8=d8(Xw\&&i `P.r a7S'~>SNk-oio[bom?JlK _^ Lޞ=Yє˼N>rE=n MK^|z[N^E >؃~cKvTz6exCOz}ȿy'i{x[Sel&pb󎠿?IT0TumD8r/,Aՠ.n#W>½vq]Bm\]@>h; ks#^e CV{ 2we Ղޒ[< ymr $-Na}~@.J,.*hb?<6m >د-^t"| #}Xu?mEˁ4Zo?u?qq݅5MfthˤŨB.@oB'f\5B}@JǏ@4IUe9l># ,5=4}Khd:a}WBi,mH34 Q5ݖ6oy%Bj}ä:W^S`lmXE5|yIz!= m[e(6ZES=ݶhc&'2p7靘2y,3y]WIA?P{uM*rOc[eu(?67FCM#=PE(OVZv: AkXb {t B@ |{Z-߷~ BU U *X=";"!U fJ 9wYG+*b-ލ44"GO9 svg0B agVw "+ ]|%)K8Yjd:[Ćk7IF%k?!Vl[cG69&-9ś\HnJ'NhCGHOfH[hK=O~ o[p1cޱ;C؉d{]]D [oXlJ$#]/J]ۤ"o Ȳ⨖g/TBT0U݈Z0` e0L<(`\hcNMĂa@817^Ow%:- wA1x؅mf/z\JR,];MiHcS1Җ9DgO}ZLw] W~s 0jշSr~B#/+#uksSqtOgL>yvxW8_ON{ w=ɩřiBqM:5d6 F8ڥmҎYF]N8q);Q0&ZgF\9翝,~+8Xp?cL AKv^ۭڂ$ .=a"fƾ>J3?RBu& )Ugx{w.? Gu!uLSC֡u `4aj y@LFi^m` QYACtӻO˞'1.ۤ#vXLA3nhKVt9A&3!vbƁNE<{Ֆ![pRy)0X$6]1wpn6aͰflհu&+HRupC:B) ޷v(g,*=N(,uʀn 7njpݸ-w͓+ !<,g@*8~mV?k 3< oި7COgI:h\0 5'6 1y,ۿPQfոT^VC :5[փփwzPcCW㳃׈JFq %Dsfe\IӾ3?𨊁mT95URaANK(h*gM(R#m <ӎϗ7:>C\Ev@ilR dK٬A ``sxцo07!ZM^Xֹo ^м1xqs3Ֆ0$s{VLz|G듛XωMhR?c:ԬȻP=  gXj3/!t 9"xM^!1W":Z!z!5j((=ْm6Pj#o,hd.kLLv"U} w`hғ%ZKd ,p)CRn7eTA]E$/CNyA!fJbt~Ƃk@g Q51]w6Mz m*ip>>HAͤˀT6tHji [TⰱEB 0%ӣ ژн6|T$ctdVh&Z#`}E蠨լq;jFgV2Lx˹œ+̹rp#3aZ,xϙ}:y#`= aN& V, Lir}P ZW6PTx" }BEgą7p2$}7ܱbrL\I0wQ$tcMሚU)A+s#S [#EطiG rٖ=QeizO:55֐ σoAšu&U0 c}+ c؜ ׊i0sǰ75׆zöDxgҿUJԊ6 M*鸻v&7uE{M4I|sJu2Gΐ8EIO/6؉<:/)~XzxD+!4tyjiV&>ی K}I<0?LWigO;&`pa[<8GQaϖ؅`FKSȍHrbU^QL/Rv{*&,0;2OE3GdŒWv4C(c"ZDp^'^o0tگZ,Kӑ9uK,]k^-XzDBy67/x%W3 O1X_+QbiB@JSaqp$}\ab)z4 5ڠ .**˺ /fHC (u ɞR֬}EAI" L屾F.Hf,Ymg͞3 BWmi/a=~֏Dd0F'Pܰo )kJ%jC BgHAn||bњQH̞nہƿP+qIYR> 4Wi[K@1Rr0k84m'j6Dyz"\知ωڎYɤ@h%% 0c[ߋ0(SDފÊȑL ;bHʹI=x`ť!<>K oJPla#ۨA0z>7K,ސ;= aH&6m i{8ly@dQr8I(1Gq^/``)iZ BȂDl=[Z54qߐmi S)L3(N7)%@wfN06 DL=֚,L[gyZN ,X8TܛUpN{&L!Y5gKg!\Wr ~E"%<5#jU 1GJ%Q"5Z~ \t`~ zVp/vZSUt-峪Z - -ie,Xݫ[y םK;O`pV'?~X^tu\-f"H { G9P2؎=ovkD^1/19& +OS-Ҙ ŚRx{Ic~vgL~;ޯ~ (HUmEZnJ) (ʣYY0Gb[VͿ!F#A^=$YjPRkna>^RK!D/Ǟ zvzXA1C_OH 1|ۅEoi8m'=tm?D'hD@|X4+}4ቋ XpvK ~?Rsh )/D]Pp&8dnCv+Dv[7x?K!: l %#?d$ ћkYVuOB.rz;TY>6p6׌?ڥlibePΗ1XF4+9UshV.Hh'H%trELJ*.E(.̉9ED-UKr3q {(IKӘCȱi`7A44!y1@ZAAgJF^@AIvF}az,682.ߢ<99K^h>@4>weiEV(1`)KTV-F,sI k66Nkƽ@~[EJ UԤW?i.`w^ xfE.rI=7Ȼo-WjRȎ*ȈNW@*7"}F*T&0#8Kte>~ᛢKa۠P!ꄏ*7VJ]J%KjW$\=Jv\Qb)zMzA`P$ NDh6_Bٰpбhޠm eA ")-.JA36J'*cx0R4UP(Z%"eLhjRXmnj8Z@o m4dW-P'Drs[q77~B RѢAih݆㗶 =` 4%$PSž"2U_%H((,b `-Ј h 7&_c7elUɉ0B@;ޘ ~EX*I]ߥہJ=:6 "}*?E}ww봅f.e·!wDK'KY-o # $*>'w Km}EeŲJ#ҏ᭛_Щq{[M!ԠƘSAHAj~hxkކd\.J8|)G7eʂş),81"f!Z&% mtȵ)N @zX !A 9O>^^Wdu _E˳A6+1_:RdCCPt%@e-Wq|fR"`%+Fgq@ow1u epAwjH[ HI9;삠Ixe,nl.k,MSC$cVOM9! Qg'›̥b: NG3"҂ 悼BEVI^3KdЙCC"amECCmt@CE[I=B,k6BI`)94B? L`&xxqa nݨnIۚ^swO$K+[iZz{(F*({_4d K=[[]SbWck%V}r;^ck-7qm0"T&ik3T&kTDL:fL4֐!3V/H[`3I\Gܳ@G㟡RW7-^|OJH9BP"]j/=(;Jb545n3֊Az~%lR,w”&mM C .1F4HE+QK)&aN d410ec{vN̫ϸE4tV\.i<ڱL8&84-_ /NiH{tJ.`'m>Re~2؋Pi\L>es-EwaHZB&A`LKij&OU.vf|ݜ1`..3~smヘz5`5͚fTăk ~&v_k7y䗒~S!=2]5q>)y co=4*/ῘqA({wX^})[Y".2G`oYc( JPim :Y3=Ii~+Ta]%ԼZ.̀.H]@`XSӎf89߂8QAŅ@XQL|,,*#&7o^m7 u@7F! i40f5ϞA?>(~AMxY;@;SbΠlQee: @,b@ˎڽ7oBv _CCI|z BޠtsK40@{YTF:qddH\ fvx3b3 eSni8^sW'sQI0! @!5/`BN%~e6c׵CA9"ot!%oղ7il-]VI(bdzs Lga7y =|HTt<*S xdדf֜3/] 1'A9scXkZ Z'(\1Ȩkaر/t+#qt|RFj9.z?Eoٍb?BͨmDNkͷHwUu oLI춅F-PMw1PPIT{ԡGn3f)W"/C~^lANwuzzT;jiQӍ>T8Lw#$IȮϕE@/\ PMD@02Wch8V?@w?V:?1d ory?~@?y{wnhW,ܧ 8Tµh/.c6Lf)̘fmZ½؂iG$ I P.yٽGmT;a펡vzƿmK.WRzuNfNwqeA73;GnjeӸȈ@Bqܺc:w FS)U/*ćVփ$8 6a 0:$̢ޚJ7%Lt0t!15c,PŃ" q/_N鵘 L}"M#M)(} zO0( Az$İ/b ˁ[_j$`sS^D]$06$ Xy~ۣ!BD"0"te@c yHobGJ`lBW^!7 {#Vv]`1 *%)k5'%e @vw5oxDNY!-w{@n'AQ6v~yN[#x{uUv'FMwyHcM u\JQȕ \8.Aw%GnCA!NUZ@hT{-C)J+riP) w2 Kz_EDv?q qd2:(LGVTj54qߐ]0F`K80 dk ;5)49@=R2[fF+ ua Я_OCtKX wOj]<qt4uqOp iN6\]+h,KTu +,R7 W^SQ _[DhLLOҋ|!BmqS=E 41Y~7:jp|B,tQmE[!ݢT$b޸96jY]> ? AS`lKk'}{sd]fLzb>Y hxjwߡtK X;g 52(M[ B}.Zi- JL [gWW-Z.HMܿc"b./ӏ"r,6" B7*uI9n+_fJl2`l qTP_Ҳz6ljkD{c+LKq;.rpbuŌ*2}s Yb M*\K{K2z) y@oH865CO\ƢzaG'Y,>4Dq)1Y"_bEb/8p-$HbƠgz(pݐtuw=G`tYxAToՄ7_͘ 6j+Jq,FֱQϮ3FOZG[ e?KwQk)D%@%J\\a BĴH?Jr2cQIaTruಢ,S~3e hx) bTwe1ʗ N0v,!'u]Y [\O :u!0 ʦpr%38:U6)ce&0*]h[͐f Re"Y@6Aq,0Ac)P{u rpd;_IyȸISq혆 836"dkm+i$3IL#& {&KEk`f41;]ͥy-=IsWoh)I*J:2Is,]֦⮲DM lD(Ql[,AC?6;j\Ky ד^]%Xt=h"eZidRp>^Ӛ^W DBC!b!doXީo_*MCkƺ;/€@}~fFM_e&:!Ĉt> cg ֒!f$bde Gu䅢*:Ge-h|v;:}KOM,Dk-x\zO5(vr^c xޝhwRIe?-6j^YkJл=q$UL!SGs`tSz1u7zNE,]TI%Ӎh*Ф w0`"Fϥd=iwŢ{$C BN[rX/1GQG)%D敺"Vro'jWm@+jT1[蓁3M*Sb? g4NG=_C2/ZTJ40Z/M^OnȭD0&;,[@遉<,x7E9,D;ezW3].D@^Rk1#HC/c@f;haŠf8P)XN2t [Ț0bde$hGX`:7"HU!lv zL|FEM' ؂pڂS/ D v5}OdPQ[ S W(7UT,ǶgZ[۵{!KhobtFlf\M[(,?L{& 3w 6^C_K7şSX`0#m NZp>B%O6`85C ԍ| ԧFTφx0tXb_[xRh8J,sJZ+^dvF5/'WOmZ-,iDKA`aME3" `9~(H5&GL!h%OPʁ`^kp5Av wzZ92? F}n:%JRu%MDސ1Dj&Ed}tz%owTvA0]bw Zw* CwӁ5c{g SY"Bs8V=lá`L7\қ~*fq4`QPcTA06? ʟgWp擖 z_wȆ[x߯nP sRI ²B4P,+ M`;6R_BSnG;dž֋} 0iǯ#I8vf/MmraЙk׃M໡) 0h-kuK톃7#hc17svmaiĩhv9wkߟ;;_@'6/)1FA$Iқ~> 23*[x6-l jӏhEnS.Ԛ JhPC'-Tl*άؓ?Lm^= Ѡ$A%i>Ԓ}: ΍KC Ő@{ NG63Ju E8%) dNJZ"LO~k|z%+-1 c6͍$5(VfU$Nߡ&&ђEK!Ff_/5޻f׼C:ZH/[ aDh$) ~`&E>ʰH "a]o<: b < E5yЛöepL~ |Tv̲Ƞ33s.piUpXG uDჩQ0xx̱!#\ v;-ieCwɨ'7lFFH?YOK#u^D͔̣V ,ՠYEfd (ٛb[1p!=~ܥY8hyiqi- 1`6'n88(b">-BK)Xs,0w-b S"v%pL3Ci]VᱤI-saѥQ4LUyzJ?F %dӜX!ҒIO:* hغ3|$7?'?~p 6r c6_&T(BTޭB3D+u{խjcݎE4jcsԷ۷O]Q;5m$8LS634jm{p+K9@ pBpo1] Z9+kg,bh45V5.+ ?& P;(Fn=Y+iߪ uPw" s]%-إDhIK )9탰QX@9!:eP=4;apҙDD E\<;X8n@ P٨ ;[-csTDbG>%xl1=R%:T>`NN6(TO@Bd6@LяrY47B:hZ]AsyMIQ ?fzC]yn*ƽϻQ6s:zQ~}RƨԣAJqȓxQu.%DW@J "ˋJ~mˑKi@KA %S@xCz/!:lѠppy77ϼ:0?­BaanxPn,b/3rviܨO>$rJo~9>ܯ>>~=?wϠkazrZ=;#ǧBy m+Zs R?>'9;?.vj9}?w?kaƧy[t|Jv)Й+LYkg{t%տ'g_v D>VW6ap9!m& t$W_Va`pΪ G{S[0*"׏gUxk{ճ-rx|F'YҶL6~zVsUWOOP`6P{.%7AD}SG 0`޹X$9Kχ5{UzΪEXB]h+8btᓌ%ajO}SϑWd9]gCm/~Ӯ?w #5YƜŘع-7{^M;T]W<φJR~]~Bk"0N 8!G0 QqVG5W*T(ؙl0ծmim㄰1,=׾o`6!{^t9,t!^̷z ozH52xՓUap?~ ~ ni)Yudl 9%"{~MF %|l0e2N v8v҂ǁQ߫j졋/ %" z}~P' DU=n{ 0ZC]ͺR"!Z3r$ {#AVV`9hm8@vج0&̠7vc?O)S2b{_ G +0^kWE ӿxUf}9nsE% >Tї b 9)kގG"=HaDr}Өi`q]5L|FB=}p+4_& ?Ӭڇ wn.2e9P秞sp]Ekzx4CԼPD ӝ#|c3r֭dLxlgٶCan\€Cz%N>gq?a'7caY7s=wA-mL #0 ?撏l=tr״< a2nb1q( 5Gb!)Mh]/k0FU:!gm *Ƹ66v&j#}`F UJ+9&[k}YUo?rrvd>ʽ]8Ok獃Ʒ獓^ m1BX(Z;k|~mTO?UkѨ-';\*eo8/2톣t+Fi~'"QYAlk|e~ FyCr~NBN?UNĿ~(qÏ|?ɺc j;skrL ]\EFKMn@*-@o%nefQ|f(/"3me33i2˷v^v.IRt]4N;:+ t4lc hư1ؑo (8zx^=;֨Tv8Iۭ6೰A=4x\ ̣1 s8E:Иrx#-eqƮN \ׅo4[o@Z. G2De$wMa.*;i.w;^$ݶtc|ƋAt榼(:Vk0bXI4@{C(GH'aIHS@*yS2Qq*>3MJo1P,qL.OOss@?@/) io4K  kz6¬3h-[}.)V)b0YZ%- B@xmgj`v OH&7^$bhɢSТnĄ`b !u׾07 Kࡥ7%~ ˹ "fP!8BY L9V#~8@uALlD;Bo!!ԓ!!$C80@vPFr n2:v 3L=xD0;䴺Z{/68+_̜M/@ <1JUXE1,R_H2$#T].U7:K4hNX_kw K~>0}N5XҸ>˽[ѳp2>/MY8Hԭ 0MBI"wRi>a: M*c45]wJU l[|ۨ=[D&UԌ1jbۄ>$TJmc<4SqHg][/wH?58Q-&!;-粋mA[~BИBSR2DCq.fdA@PK^ Jc *x 8a!: 4+YvKEu 5H-8-xsx 79~տ L5Uxㇺ탵{Ik|"/b 1BPO`DA"@ds3:J'[U}nAGKylm `=`]hV AaL8Es(^)4O\2ORʩ1OHi-2aPLSj$—^^5\Tа YѲ\ xK#byI-%F&!$&[L`܂\*2T@[7T8U8  " XͿ؄ 'my`(E+mD30 igss^/md\_ $(@x_~'(Rbc;w$@~ Q}-Lzns!-% ff x&.>g!QU0סti& ST7Y 8Ӛj)b8'.sn@9S*O?}0?]Mȸ70Y4.&nH;$@e_?9R3WbdXNאHfW VI|MaWlu^~oP)5~GGlJ/f7J= c3G !~[GI[5z=ʩU|vhHH,osdQ'Zb:;d}-uײBF"nȑ0F|,K-w26ҬNpwfbkWN%S y#f"o̍k  [H}QW_Nm픥;6'aŧ @Њ)CRgkYEsgg&tB#w<+m<6WbpJD{SS%U5yF>Sw .; 18!_H9=grοk)n LFx"Sjح$Xs OygEbmetVgzIΑiΑiΑiΑN#e!gSY%8L뻺;!#\;[c0;~V+~z|5֘ՊVXL 99 l\;΃r6=g4U3R3g''Lb$Lb$Lb$΀IL ӲBV+gU%<C@dnrT( S~7?sۜyyyNymb*0 -UϙgR61q^{lT`ȹ9\s5\639לsV9BЗs޻!}yuq玛ʼn£RKz1uB-aLpm(,P* L,.[SR] 4me<Τ WDΜnrMs3y<ȮiWԝDMPӔ@gcHf.2<5 k̍]ey*%F];ˉˉ1r <7 .G9(מ`Q%x03iES ZO<fo]zcubTYyU{Wj>Er/<54FYe\}2oO3Ψ d=()M~}NotN ̨tLtL`fyfaÀ07Uwݦ1p ) #ljp0"[h^'Sb6S@3/^0NDLRR0#\xr֘7FeTN2lx°1 A qCԢzeϨEcJ0:C.tFEykERn+0Y@ @x ??=9S_ob蘈nŅK ̯jR:ERTD] C\\p87|JivCY4S%wD'SIew}Q^Hᵛ3 bs E9 cxy`z &G~' R[^.UVjYmXXT0|wMLbԞ"%Ofhsj~c)pLW2]>iiL1c#' $%J*8٬tH:Q"B*rRT1Xkę;U˽tNqcbFPT}Yy,uެaFrcn6tqVHD [cϠ(aW8frby=IHDdz*ǃ֘O`姪Das:gP!˜N>9~Z c@#31} #iNB3։h~̞ =egkz.4ecT= /X,ҀӇ. eooV*ɹű,vm%v]]D:%$Iy? pHPDR$5<) 0x{n I S"^?>Hy6-qNbeMLmp{M]G)} ~k Fñl?Ɵþ̌9_scml+JSc0k֐2Zehi?ON8YPЅzaf7fw[ʶN=Jf! L g S}]f 7hj{}Go0r/*DT%m8q'JBOBI6y枛~ydJ;u\Jӎ5jwU,JP “o#mt(b5!/K\6٭o ww!4&R1$pT=e 7𫽫FiгYWFHvD"]V]2a6MwlcOtK Gn9rQHIJ,1Q@78W+sȕ'SkAh>є>վ   C{7 @7! X_3LP[q,Zek6pk6˘l)f/8$C 2$dH!Аsr t^l6wyz|Ϭ/4 Dhc+ng1dle y/`dfS>ȚJ|0H7?AaGY\P̭-1zxѮ|D*u8!x+AZ؀Ym8qYVf\2&zq%ʵQ}v2Zu'e.WY >A~]]p}%n/.gl⿶;gǟ;+xlZwu..|w3!e9k]Yӳ㙰E}<;?:%ao2v@'~<>7MN>5/;g'?6/٧\W-;=:<;oֿZOK/= țTˌc]} hUh^VIp]3?d^-E ?a9|)@W:gϝpqq*|պI}rsA#xγՙYӺ j[.^&O~*d˅U rqd /_~j/A?4A+7N:tvdzI ^@N]yKɊp&?K:t ^2Y[m޳ΠfWgfo;9Dz'4g&@̏rOO@sQ4GN6߀gHx4l &T7S˕W`a^x`kxU;mMm7Ƴ^v 1}>5:.\moÆ7|ªnzLKf6B1O43O\G1|b:yt-Y_i=`gqsM?``:Z~9t_4/O՜ⱝ,ʕ"ivYxօO)քcYfϸ`@ ҕ!aR!iy.g}UgH^*NT*P $@rhgH^U>);iif(s++o+9~Ps羭ou4}ʚ\2[wI{\e.o%-hr\qK.iE'݊t+Vtҭ\qK.iXJve"α M]tr&eDʈ).&VQ<꺈L"Bq74DZi5*ц+$H+V"ZU$Kf)I,$7IADޑB"BJQŻs]D)$RHH!`Ki"H3fʊfJI+ŹoD6i&L6R3es.*!-E @%)RʈV]D)$RHH!%h *idR,MDi&L h*dB4iL*9(E<&OSRDR"RJO!e#H)R"DJ)=K -.|| H# i5jt4Sv5#[i'NNE>.ӢߑUKXףFEW?Ї(.?/$8<*H/0U?!"9`'I#|>6X!e^Zb@T˪[m#ZY@,?Dc2SP}l kP4`l&XR氍Ɇ+ ČeRciy5 ˫SૃϼTI;6w TN8r턔Uœ|oNqI9dӟS^㎟^#\ɘir.g˄/:M498/ٙM.9/]Z‹z\ KUE(UH^UH^UH^=jW R5!H^5H^ڱY֬E\$ɚ%+:K\2WҭKZI.s-ݪUtk2ҭKZI.s-ݚby"<_ J sͺz$AiEP؎DuG/HGNABH$-~OMIYS&*h~YgImRun)yJՕ5t%Iw]=t%Iw]=t%I.s-ݺb L`f|%ź@!6$I @&L)̔Bת,fVS" AM5 jLj3}h'SjnH$IP&Aաf6H=3sM 6s4 hLh23~*uoC4 h$2LX4OT&BӆNp&M͔fFDh$Ip&f6X&M= uc2:M4 h 4S䯹^ 6$I@&M)ͤjzLZE'3tBhmH 7 n$.L j&E*7߆7 n$IpsuΊ2q3lYB3mHK6 l$2LhYI4g !M6 l،lfoSjƲ"$+B(hmH9 r$ș.LnYIf A!AN9 r 9uY@ZQ|#`5Q2od땘)/f|7=6klf2wǡMnz.ahfh8OL'=s,KڭNK| sn5T0o0ޏ&p4L;Ka%dl|>lڝe{|Ѽ<|GS/BZ m7a!^B`os(jբF8LkZy:X#^ ۼ xoǼdǸZ`[8r?֢y݀ W7鍙L;1d$-D&]Evx=ޥJgdweJ-G2x(6b=r6UeؐZeBt%%ڌh%!%mTyMK.ZJ6Rwb:_<{3mHa6a6Six/2Ge@fې@&L2 d 2STYxDa,Z]B6 m$2L iyfen&qyG*6߆6 m\m9L^`ӃzOb?3 I:0o_.%YB2 e&2 EG)";#8#ԑu APGR#%4!Q7ґ,- H zd]؎<+I?~ =XRvP)]VXxrPO+B Oޜq"p>ꐼ됼!G>eC}Ѡ|{рP$o@$o@$oxрPH~a=;`T/Q~|$8Op|p[t2ҭKZI.s-}wIuwy-}wIuwy-}wIumpK.iC'݆ t6tmpK]te>pK]҃T<iwFLn$~@z@://x$㑌G2x$㑌 iEeC}Ѡ|{рP$o@$o@$oxрPH~ $?A@^Pџd=jWt]ѧv=(.'-ծXg튌̮JYTUe_-d=TvѲG8ecEFeSˢ+3'i$HH l`Do`['<'@A +ccJg0d0d0d0´ C `[Yk0d0d0d0ªZW)$^Eej%^E"WQZPkH5TF!PkZPkH{{Z!a@+=T=$=T=u$:*s]+:*}suu$}T}QQǔ >*V Txx$@eny&T*VHZ `rL'qoVF IC G$ٮN7!0 >=Ç)>aO9Hs,#Yj2Ҝe9Hs]3<*|V\V'*2YdEgҊ&>F",DⳈ">,Ⳉ">,ⳈϊJ:oV<}Ngcd>oLDDlh-"ZhZDkEZig1Mƴh-47y$EZDkEZDkEjg%0`Z̠p]Mv51\4i$nHiEqZiEqZiigP+tym%M8-47k$EqZiEqZiEV,VbQ>ZlA\"-2ɄVބ&2F"DڂHQ[DmEQ[DmEV,VJVrjdP[ڢH#qG"Q[DmEQ[DmEQ[DmiN'#ѵ?-她"jbh$HH;"N8-ⴈ"N8-ⴈӊJϢZ*E^[dI%m%&NF"iEqZiEqZi Xt-C$-2Ʉ&2F"D-"j-"jXh-E~ZdPA-40"j-"j-"jKKm]! kI\d[m$&F"x-ⵈ"^x-ⵈ"^xXx8Xl"-ɚE#FfDⵈ"^x-ⵈ"^x-ⵈZՊe;⊴V6X-"Ȍ&3-47|$vD"z-"z-bҡb UfȨ&JLD<"z-"z-"zˢkfZƪ?]S(dL_[|m8dodt]b(glЛ|® 6C~7]oÆ7:<޿A26<bfp<v%sևf%>gۇM•x)w|FIF?y1 ֳj4'Vӽ:lu/(d\@dNo, QbcvSR5&4 dޡCu4K1>eE V| {c%YZb|y:Eǎ+ϑg-ɀ6RYqĪ<vhl߈"׌hd$@_#fSx~ޥIa;,lI_ЉpP2vj@XZʥZ4aNnVLo9Ap*xm-̢5O"ZCK_hUIBd=x2b"ZC-!h-;ZsGKhŽQx Ü[aF9Ik"EZ+wYT#0*ܼ$jN篵4$X쾂bHb'f쵬'Mg4eufdh:,tf,*gE" Iz-]+bCD=ĚG@FtsCK1-(! jiB(6! g`X(!dj0(! baB(6~! _؅(t!\cESáޖ -X!a a6*aQ¢E Mc9>;!Jx@6jSa"%DJԓ !Di*h4g%BtS)!RBH ƍH=|]|EB|vWc*t_ 8GHZ嘯] -UZqLT. k{d˸:Z"aiFNJf2>h$C#gGNr~&F9k4TD(9)YA ڼc׭v 3EkVTelJ A oVڗAkHk-\vpfdkB6+LB2 eLcp62 ` ܀f8q.8 p\7Ll.7Xͼ#lV8q.8 ppnqA]8t)E\>0XD@k΄bBdװ+B'uH*"Us!U*JÛe3H Y eMZRZ) 7FH+V"ޅ1yBQWeC}Ѡ|{рP$o@$o@$oxрPH~ $?A@^Pџd=jWt]ѧv=(.'-ծXg튌̮JYTUe_-d=TvѲG8ecEFeSˢ+8(YED-bB|I3v&6Ɖ: OPlVJaLaNaPaZK!S![!ciV *badafahaZ!!!Åi]@YH i@e!OPue!gPA!PBeZP|Br e+iB e1a@+qʐs(CޡLʐ(C yVuT:f=PZQHZ#2k%I$}T} $*sC+*}I3M $TPP?@?@?N- 欌E8=th]9Ao"vCi=LaS|z|4Vs,#YF՜e9Hs,4gᙺUج5إEf|!lf3i3EFgVG'1ZhE1Zb"F-bdبgMYd.\Hs,4:1:o$!r-""r-"ܲEVZ1j"O-2|EF'N"r"r-""r-"ܲJ3lg!3*٬tyKTt&.t&o.t&e"X3-xLZ+(!Yf%IX&aMššnriz$Ix`&7+EB`'u4 g{`$|Bs㛕`'N N;〝!EuN'g7:\S9J4.&_UheqRJh kꢂmY'<T+x=5_~&Q :м NGgզ  i"7Xf8g yXZqq\>4ZIxҟvf3p -P} E]Йlng+T@l4iK4e5,TV$ki%Vעz-酡w|k"Z^ZW$-^6$۔HLHDmhCv6n6 eC[ٴ;F6 mcbC6M m`C55y ]C[״;5o m[ZCО5e͵c-5" tGȀ]ې#Gh^^d8w%/^h( 4L zoo!8HpBp`*pЕ(XU U"U@U(N6LRTUU(B PSS%@1n%L'+`2B`1b#8w$@1u+gsA _R ćǹ'O_րk@g5hj@'59 c) tFtB::!3#BO2_f_ D&@d D&ƚ@O*{)ʹzxm'ޓmGNц:E[qx,D4#İ;_ﺧ=__ίωίWzy_s6I)heI""|%+I4i$fo$#V"Zh%zD+DJD+KW`@/$tsf)(5-mQT&LFl>g9oF>c޼vmLz6aM`ݘ <̆n'$s'}>1J̻̈́YoiD{KC2^wGUf8e΄f)שWWWϥ;z{jA8}-|[f̉oˮ[bȸzi[]c3852r< S ByN@[ g>H^54Ws8^IšH~z G'ѓ#Nŵ;irԤj#C.AE'1՗:yRyq;2Hב#WoJk_{9b6_c_=:^[€EZ=Zl[d06~+6ـ6Z ֢-O5o§&D-aQ-,] !躙mhBW zs!JkuCĿ& b7eUuA!g}s!8Kplp6v('516$N@,XbiW|9:a]޾ѡg@(">+ZD|:F",Dz =Q! ΨtFNtFzOgT8"4`,tYTY>v-ǓMF9f 3Ή&H#1 #ѢɢxUFTQeDUFTQeDO*}deD4|b6s. D4Ɇ'6F" ΈI#&4b҈I#&͛1iĤ7bbЈA#v;цĠHX4b<9F,hĢF,Z.XLh)45*qRhqihihD)O|VLy"h$HHdFjDFjޜP#B-Zd؝bdb#҈Gn&"La;h4i$fa$2rN#.4ONĥF\qiĥF\å)ti3<+ULBv3Ee:.d5+1vo36{l>a!7a?=܍]lv0@1w}:'ɣ+kO\mO.[v{urq_4/Oۏ֘TxU^q8ɒ8fCeDn57T楴L]|Ȉ{&t&oht܇}7(6r[G4?YV/{ı % \A쇖h@6;2}5U ൰2)&#sY:cȔ@֐@v2#7Ľi7ļ! nZ ntCrC"ߦۆ6ĵi6Ĵ! lZ ldCbC "5ĭ˜jL+`*TB8R7 Me*!UBT=R"UW9-^5mǪ zJ7B\ \9\cGİ!֍G;X߆ķj%JPk,mzl|0g"5,OvC*i<ٹwv? s۟}l|by) ֳd61/ 6 khheos(Usa#hZ ƵDt&I԰72sLdpO*.) W%B*I a8nDQm (1$IXP<#hFQaF"m&3Y~GQ=MрS-ŭbK G4VN km-Zh2m{ĢV94pd#˕"vYe$ED8\x$:pD "cC6$or!WrɪL>%@g3)oC9 r$ș2LE8=/琓fΐ ͢!E s!Ig3-khb}$Bscڐ'aO aOž=žxx*:x4#5! 6$I'O)AgN&>MIg! !N; vLv&:iΜBEkCZq's!Jh4%g21u$Bsڐ'O OŸ?ŸٌMhhA  | > 8}mgB3mHГ'AO=S L@ГPg ΢! Ź %J(4q3 Ig a!aP 8 A  >|p к.UezՍcz쎭+l  cWW?0kG,"O5A!͐[4d4dgĽwT\RgiW+6EjSumS:_f}Ҁ@|(+D^W̔MDR y*y*$ (kZzF&-R4Gey"(E!*,MEDJ#n$zm=Vnzxm~@ptBmPvNё(o{"DZiح-<Hf)Kti(O.⶛b &OH?~JP?ޤ0y .7ڊ2*P}#Diuݔ^́#*%2H3f"D)]v*f"TGZʓ im+'Ét(Q~WGesc$bڇC}H/C} WҀ Hހ Hހ Wr $?#r PG.+ԮG]vĿEkW]5=B)˞*e젲.Z,zl"{Ȩ"2,zjYtres&\A"DaW~-lml`k+z{,bael\l[2\\2]vaxal2k ,La2bb2cXU+*6mīUīU$**sU+*} I\5$*sM+*} I|yO+=T=$=L"h%J$ʼx$^Gek%^Gcx$ʼ>*>>*VAGeJJ@o27o7 =J@?@e>JI@+T$L$f:sHC4I&`?v%㹐X ,d2bgy^\\Ss5ƔM2ш].zP D[u%98V>*X/E▷_(jvϸv{䬾}xwC3#g;Sff+ͥU;s_DAg%_="/sՆ SIA֚G14遰={=N@h@SС3Бtt:m6=k5N@ h@ S!3t|+YYY]!@m2_f_82 $$LBo.5 \88\s$Y$ϖ L^2-2`Zl!τW26fHH Kb`T2df3ʘyў ( 8 %5b555``L2k %8b888`U{!#i%;b;;;````Z҃!փ!ڃ!ރiFC CCӒ RTf-´dClCtC|"lHaZR!V!Z!^i%GbGGG a!a"a#aZ `&]{J.bw)M՞]tJ.bwu <+ڥj~9"՜e9Hs,k5gi2Ҝe9.Y ?eȩՈa+E0ŴH#1{#GEqTQG#8*⨈" 8*IjZag9Z Ur7a7|/JwΡxs!nd'Vӽ:lu/9dpCp4b׆\Mo$~{. ' $YgP綼Qt'C 'VBȓ i |_Eg&݅ ˫ԨkoT PSiWpyn8$’بDB%X%OOR̢`8 oJCEY?UISl*yOsT=Ŧ7'M座TbSblrWwsW+uE1YN"}chpA\qYeE\qYee?!.kc,{әΔxqO+:*^$dj$t|>g3C3۽џؠ7D7 o&ӻ| o򣇻1; NFH43O\G1|b:yt?`V w]_lD=1"}qCyO/^KZ a~T3>''IWĔpdχByH zb"&5,z`pA ͞?Ki "ОL/>ȭ4άZٙ5mgDSE'ӔI5%Y0D{CC;DѦCm98D~CPm6D{ VCN٢]ڢUI#tB錬G2-NI$d@IΫST4K }I8w3| : F"tBdk:JɺkZ&'k-x-xxЅcuBpx)=t&&^JӃmP`Ewqw7!\5+R>W.=A^{liT5=#E@@r2*ϒ+&Voy,b^/hPj_-hN6Yu[s ڦzm!x!EIy>K.p 8{TpYq>xjs\#yr\#yr\$O+Jq3(uZ]bCƤ3[]VmҊ Ӵw!|X ^z[ )0* 4u 8?Ѕ΁ѕ<++ytFwKjQzB~R~QbXc;*RT1v#oA- c…)*&"Ld~% M04aab1ۀS:jUZ?/OSW6{LF Gs?^̑3g}хܺvcT?$vyد͜VeكD6QvE؂Pkl;ݫԽbD]" [[~V0ZWgmxT.#TƲt+7o? Fɀ)ijM!iVH#0!&* REס- >P_pwP* zCs^_:Ř*j%(QW_IÐd cz O?iYo >R'_k" ƨy= 3׆d;!o喼q b\2c[- Hm (A#GB\S%RE&RE@抏Hmw VwpL z['xO~ ޕ7t؛7t: = NyCixCGo E/caFe@X X,-Z KBY d)`T>"jJ#XAq-NV0|5 y7 y7 y#Հ@H$?{:c{4/dɑ%GYrdeƒSsipK.iC'݆ t6tmpK]te>pK]҃XqHhж@间GV!΅B *$Л YXrݳWOos ӱ(2W'0yx$(g?%zԮROzQ]lwO[]ѱvE]#쩲ʾZ*{epʢǖ+Nj*"#QˢEW-W,\H#1|&0#0'I i b1 q  LK00D00-EG*Ae   1LK00D00-]ABGR q  LK00D00-uwy{CCC R q lsuZ#!"!&iXSZJ!N!R!Viix>fJCCC R q LK3030D4040-?@?@?N-#^zW'q)Л{qӻ:sDSגUǴ::f1u,#YF4gY9Hs,#YviΜW.b ؜"sa%>0S4i$fo$#"h*zDSME4TDS)QZ{ADC s&vɮ4cדɈO.[v{urq_4/Oz5ƔM"z[6\ė"k"8.Y1GV#%S=Poq| A*CºhPl ./L* GI"3G{G8#݋??/"M2*ϒL6Ha^MzR HmMI. \?Y3\ĩ#E \r|ZɚdxB^KH ?Ⱥ惥7BQ+TJl4JvfM(T! >Z`j` L\^P ZD4:=mH3! R%6ǧWqB4-RFhC IB#q3aoӄ s> KOSo[ &L(;U̓8Lظe e@eB|9Y 8R KŠGAC(\K@Yv-t_f_1B#d1cDͅ-r2`f`l9d&$"+eA%-QUs!B *BV*V $ϣL]tgWƷ+x$NG4i$nH Kq{:Rq9q=W)JJt\ev$S`bsj ba2DdDLHv"h*ME4TDSM j83AڴKv}LF}r:o;ݫVyy15l2*8ص⼜q^C|vڱ>1+ Io,L%Bo!(LP0AaU<(q)d+#z˲s2p.d.@B!ͅ܍`}<}<rJRF$L2I$!$3& [ЕelVv$MID ˂KZ"B!diͥa* $OL]|G^Ʒ3/ɀ$N'љ4i$nH K ){:R)9)=r)KKNtev$AO@d+&H#1{#WE\qUUW#*⪈"DT)\d^[<{]Zu dQD (,[+SR+ٙf7MS!(Oj&邙fm&3ryvAhx!Yo(̒rKa[:N;6cÌ/ nd6І $΅ $AH!ʧ-<,# F_\&(LP0wTLmXf2y@eB9 82\ sŠFC\KhYvN;Sx_f_EB Y$dEDͅN-2`l`l ;d &$"SeA%-Vis!ӐLC2 4RT0PYXd.k>/[J瑗d@PK47k$K=r)KKtȥNtȥzO\{:2; Zwbn vlbDdNHv"*⪈WE\qUUWV6[5cyUT?*M%K<Ǟn9To}LPUʌ]O&#v>lڝe{|Ѽq{b53@IX"^q:ěF;Xʐ.?WSKW\ښ LGIQGU#+# ??ꅁ~%pds5o,F##E⁡}aL/ɚ DW@nß=I! go9 Ǻ 3v:jbfŠY&Ь}>nߔp.Ug-woЬo<}W+xVDDp4b"m8 suV R$iJBX!%d2cD1r;Fk`]X~+~-dF @a.[ si&22xw E۽ - Hm 1%Hؑ#aGO.{++/{ \2Yiڃ%"ohV6U`#cc`e``% JDQ,P/ʽ=Xif`m,C{h֡=XI!7ڃU`qGi_q[l,R*/"%sT%=X&=X)FI^ކ#rK~-.@xkڃ冋b~Ţ!"Hؑ#aǨ1`7vkL'w=X]3YizsW{ۿXjR6,-7[oZZπ7DaA`f؍Ԕ5mذ 0.YqTuscPp 4#͑*ctӶde-; 08 C^&㨅7oJ4YlnXK<"(Pl(tPvMA1t餥tmLl\VƉ}S` /7FpD!۔sBƢܒX WGq!8F`RЦ/'΅'N+,ypRMea)G{9=¥08¿ yC} !}(>$߇A!>$y5( Hހ Hހ Hy5(@H~<8(?%zԮROzQ]lwO[]ѱvE]#쩲ʾZ*{epʢǖ+Nj*"#QˢEW-W3a[F*{fI3(V!6 ]7 eMClCl"󐕱% Y وLk$2d%2d&2d'2Ȑ*Ge Y ًLk02d12d22d32ȪG@Gv# Y َLk<2d=2d>2d?2ɐɐ ɐ ɴF$CV$Cf$Cv$ Y l36Z#k!s!{i J,JLJlJVJJ_DŽ*s]+:*}I|y_+}T}$}T}1_$ʼx$@enh%@o 7Pz$~|**VHIDZ=b'wuC8!MDzU-ULbvUOb~aj2Ҝe9Hs4gi2Ҝe,6*UVXTDgL3#,487ppG[DnE[Dne?!rk3-jWFz8LaF^.ﭶӉ |At15ֆ$Nf2ӢI'~ .b"G 1\pe?!Kp&t&0e3ЙѾ(}v)"52os'rg^?̇1be3f)r=dz7+IV2<݄ʰ߃ J75>{cz7o̝u~:bW;4/[򂗸uʎ[~է+мjgN>[ ~qYFt_}>u>wZ)].uvҺ:b/>_J#6ς>o?_ Y;ϟۼq%mԧ)¼1..|AB%O-%Qt&|&$$C}҂/gWmJgW™/MϢ#xD޻;mI4#;{Ϛ:›:3OΟx1 $}?~S.7CK⒏.?O+ ?^"R?rYy޺{&Mo;n~| c:|c|J|a.ޟ@[ >۽2i|'OGDOt{][z4Άd޲^f׿5sc_+WGO*O-V?~1ᗭde{ɾW^wͳ.HНNe-9kX}g0Pw>bo+s(k&'0=Y? A|h'o`BCּac C`#ǹBEjc;{赵G-<$eJV KHvۺaNu Ds4 ȃ=`c|f8h{Ǫ ~_z,!As;5f_q%@ؒ}x8+k7 mbS@OvV?bT+/xShz[¥H8eȄ5_J쓳 hЏ\:`"|]2e8߆KB 5ؚ̥tڀ_]̷kz;W=F*Jk''Y]N_|:f}F֥֩8J]5J$hffuae3q٣8ʽH{nmoj ΍5zDEa۶jC8?N)f̿{f ~2c.$rH҅4A?~ZKпq[3Kb;ʋllc޼L"e'iaVd:ڽ=|oF\zcٴ'N,̨>e?{=1`W'@iL rqA4̂<<||Z6ؚ@^ L |aϼ]Dܚͺ3o:%&}Swm+{e?)|7gPIƓ`g`^~Z$ѥҦb"OMIyIo+mzdx³ъXv7RBZ]\7;bPVnN=3O|zG^_N" !KԖg@ d wwu>Ҁ~?zp@}=3vn߭;B9t>ggw?r3sByQٵ!e\2k f]uFG̓kkXS,\Lfa7|T&d/ iJ26XNGjGȝdu7\6W%Xу?؏AS,X6$C%Q&biS{~qu`%|wx:OcAuFCYLPK&-* &)߷ ;\>_NxQ4X3b~> K&ܴs)U,}E`.B;\dξsUk[` ϛki-ʀ$Y41vD><z_-YqnE]_w_.g hȉpę߂Y/L |n?_Z_~pP#?>Is񺎿ޜo&|Nה≸'N#}D+QGE]0Z }Z_$t'z|GO h[x7>a rv|fo剨%/$[gz2Pq? =tۊߑYa|R ׇ7$ Gԧ t?.+?G艝y['GolY/vZP[B&&<\6 |LW֫텯lsX 6%}) А&)'ivj42<=J9onw%{^|?450 ~ى"Q˦^WK?H)tʑHk &lc] +3HY!1?ZyLށÎN4 `` &;r\H{s"xpy[>L[@^=< :@1YpkZyN& m3vvc9nb4f]>wmC2n֒ʹ(kbEEเ=~t30F@ `wvv >rjo8X̍[UWg}g](B{wuaUNȂWyb0c[eh2Pn 9;a&FNK[MpI &P8pL,C?dRj=fH4:oan{|R['?+{2X|s]?mn[*g^SDaMLJWh3cVܶrBu6{32qu!ă~k HEC̅I #d~ ܾr/<}TF!7xM9Cħ\bI..dsSzhpU46-BꡌHc%'BhkQ~eق~DV_Ye;o9ܩ߬Rc[ou{ƒ9Tb3d,? ݣh޽VxuirхD݃;VV#v f:/pSunrg S(!W`=I)}QIsy|UXٜazU' ڍ4M xq"9SgW,j;aK5mYE^ , 6b`^K_A*!=bX]Xa%mq`bC RKw8;_ҋAyw/޿jukcOԉgn{l M FHhmBp;[NoapբQ\x  `\.L QޡQ 矾 Eu70[wo %x:hXA * [˗Sp߭8NZp2 tW*\tg LUq%ZG"2{\t5]N+4p5_: 1Cp?r]fLc%ZK#\HO[U|q}ڻG آ\* uO?\uhj0w|1dt (P4S1'=U# cO*,]K<6IO(_r ^4`?oPNfWk.c*0}yH62[*Qƫ'O=3g]3G#5+k2Soڞ+{r&i?[n2sCFۅ^[q'%~+Lm1Tf+"qmmr(w3*J~K~ ]/NkOg>~-^ rX}mܩ"8vU^pE'>S=xU٭FdoJEPC՗q; -4/|~"8}7{nl̫(ʾ k CbɎEt弦䃹< b 'Lr$'<:a;Zރrt+lwKII+!rw/QPE-hPԠ5kZq